From c3edc68e69779d9f6147a0a2de6c8c8498554fcf Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:22:27 +0100 Subject: [PATCH 001/155] bmw implement --- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 3 + opendbc_repo/opendbc/dbc/ocelot_controls.dbc | 113 +++++++++++ selfdrive/car/bmw/__init__.py | 0 selfdrive/car/bmw/bmwcan.py | 75 +++++++ selfdrive/car/bmw/carcontroller.py | 193 +++++++++++++++++++ selfdrive/car/bmw/carstate.py | 189 ++++++++++++++++++ selfdrive/car/bmw/fingerprints.py | 27 +++ selfdrive/car/bmw/interface.py | 172 +++++++++++++++++ selfdrive/car/bmw/radar_interface.py | 4 + selfdrive/car/bmw/tests/__init__.py | 0 selfdrive/car/bmw/tests/test_bmw.py | 37 ++++ selfdrive/car/bmw/values.py | 81 ++++++++ 12 files changed, 894 insertions(+) create mode 100644 opendbc_repo/opendbc/dbc/ocelot_controls.dbc create mode 100644 selfdrive/car/bmw/__init__.py create mode 100644 selfdrive/car/bmw/bmwcan.py create mode 100644 selfdrive/car/bmw/carcontroller.py create mode 100644 selfdrive/car/bmw/carstate.py create mode 100644 selfdrive/car/bmw/fingerprints.py create mode 100755 selfdrive/car/bmw/interface.py create mode 100644 selfdrive/car/bmw/radar_interface.py create mode 100644 selfdrive/car/bmw/tests/__init__.py create mode 100644 selfdrive/car/bmw/tests/test_bmw.py create mode 100644 selfdrive/car/bmw/values.py diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index 7ec95c0b19..b891250554 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -47,6 +47,9 @@ BO_ 170 AccPedal: 8 DME SG_ EngineSpeed : 32|16@1+ (0.25,0) [0|8000] "rpm" XXX SG_ Checksum_170 : 0|8@1- (1,0) [0|65535] "" XXX +BO_ 256 OpenpilotEngage: 8 XXX + SG_ OpenpilotEnabled : 0|8@1+ (1,0) [0|255] "" EON + BO_ 404 CruiseControl: 4 SZL SG_ plus1mph_request : 16|1@0+ (1,0) [0|1] "" XXX SG_ minus1mph_request : 18|1@0+ (1,0) [0|1] "" XXX diff --git a/opendbc_repo/opendbc/dbc/ocelot_controls.dbc b/opendbc_repo/opendbc/dbc/ocelot_controls.dbc new file mode 100644 index 0000000000..aec1abfde9 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ocelot_controls.dbc @@ -0,0 +1,113 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: EON PED IBST SSC +VAL_TABLE_ BRAKEMODE 3 "Reserved" 2 "Position Control" 1 "Relative Control" 0 "Disengadged" ; +VAL_TABLE_ STATUS 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; +VAL_TABLE_ YESNO 1 "Yes" 0 "No" ; + +BO_ 512 PEDAL_GAS_COMMAND: 6 EON + SG_ GAS_COMMAND : 8|16@1+ (1,0) [0|1] "" PED + SG_ GAS_COMMAND2 : 24|16@1+ (1,0) [0|1] "" PED + SG_ ENABLE : 47|1@1+ (1,0) [0|1] "" PED + SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" PED + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" PED + +BO_ 513 PEDAL_GAS_SENSOR: 6 PED + SG_ PED_GAS : 8|16@1+ (1,0) [0|1] "" EON + SG_ PED_GAS2 : 24|16@1+ (1,0) [0|1] "" EON + SG_ STATE : 44|4@1+ (1,0) [0|15] "" EON + SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON + +BO_ 526 OCELOT_BRAKE_COMMAND: 6 EON + SG_ BRAKE_POSITION_COMMAND : 32|12@1+ (0.015625,-5) [-5|47] "mm" IBST + SG_ BRAKE_RELATIVE_COMMAND : 16|16@1+ (0.0078125,-252) [-252|252] "" IBST + SG_ BRAKE_MODE : 12|2@1+ (1,0) [0|3] "" IBST + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" IBST + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" IBST + +BO_ 527 OCELOT_BRAKE_STATUS: 5 IBST + SG_ BRAKE_PEDAL_POSITION : 20|12@1+ (0.015625,-5) [-5|47] "mm" EON + SG_ BRAKE_APPLIED : 18|1@1+ (1,0) [0|1] "" EON + SG_ DRIVER_BRAKE_APPLIED : 17|1@1+ (1,0) [0|1] "" EON + SG_ BRAKE_OK : 16|1@1+ (1,0) [0|1] "" EON + SG_ STATUS : 12|4@1+ (1,0) [0|15] "" EON + SG_ EXT_STATUS1 : 32|4@1+ (1,0) [0|15] "" EON + SG_ EXT_STATUS2 : 36|4@1+ (1,0) [0|15] "" EON + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON + +BO_ 558 STEERING_COMMAND: 5 EON + SG_ STEER_TORQUE : 32|8@1- (0.125,0) [-16|15.875] "Nm" SSC + SG_ STEER_ANGLE : 16|16@1- (0.125,0) [-4096|4095.875] "deg" SSC + SG_ STEER_MODE : 12|2@1+ (1,0) [0|3] "" SSC + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" SSC + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" SSC + +BO_ 559 STEERING_STATUS: 8 SSC + SG_ STEERING_ANGLE : 40|16@1- (0.125,0) [-4096|4095.875] "deg" EON + SG_ STEERING_SPEED : 24|8@1- (0.015625,0) [-2|1.984375] "rev/s" EON + SG_ STEERING_TORQUE : 16|8@1- (0.125,0) [-16|15.875] "Nm" EON + SG_ CONTROL_STATUS : 12|4@1+ (1,0) [0|15] "" EON + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON + SG_ TEMPERATURE : 32|8@1+ (1,-60) [-60|195] "C" EON + SG_ DEBUG_STATES : 56|8@1+ (1,0) [0|255] "" EON + + + +CM_ SG_ 558 STEER_TORQUE "Steering torque request"; +CM_ SG_ 558 STEER_ANGLE "Steering relative angle request for internal close loop controller"; +CM_ SG_ 558 STEER_MODE "Control mode request. +Off - instant 0 torque +TorqueControl - use steer_torque, +AngleControl - use steer_angle as relative target and steer_torque as feedforward, +SoftOff - ramp torque down with constant rate, command Off after SoftOff to resume control"; +CM_ SG_ 558 COUNTER "Rolling counter"; +CM_ SG_ 558 CHECKSUM "8bit sum of all bytes and message id"; +CM_ SG_ 559 STEERING_ANGLE "Steering angle calculated from motor position sensor"; +CM_ SG_ 559 STEERING_SPEED "Steering speed calculated from motor position sensor"; +CM_ SG_ 559 STEERING_TORQUE "Motor torque calculated at the steering"; +CM_ SG_ 559 CONTROL_STATUS "Bitwise states: bit0 - sensored torque control is enabled, bit1 - sensor feedback enabled, bit2 - openloop soft off active, bit3 - internal closeloop mode enabled"; +CM_ SG_ 559 COUNTER "Rolling counter"; +CM_ SG_ 559 CHECKSUM "8bit sum of all bytes and message id"; +CM_ SG_ 559 TEMPERATURE "Motor PCB temperature"; +CM_ SG_ 559 DEBUG_STATES "Bitwise status. Refer to source"; +VAL_ 526 BRAKE_MODE 3 "Reserved" 2 "Position Control" 1 "Relative Control" 0 "Disengadged" ; +VAL_ 527 BRAKE_OK 1 "Yes" 0 "No" ; +VAL_ 527 STATUS 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; +VAL_ 558 STEER_MODE 0 "Off" 1 "TorqueControl" 2 "AngleControl" 3 "SoftOff" ; + diff --git a/selfdrive/car/bmw/__init__.py b/selfdrive/car/bmw/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/selfdrive/car/bmw/bmwcan.py b/selfdrive/car/bmw/bmwcan.py new file mode 100644 index 0000000000..03458e7ee5 --- /dev/null +++ b/selfdrive/car/bmw/bmwcan.py @@ -0,0 +1,75 @@ +from enum import Enum +from opendbc.can.packer import CANPacker +from openpilot.selfdrive.car.bmw.values import CanBus + +class SteeringModes(Enum): + Off = 0 + TorqueControl = 1 + AngleControl = 2 + SoftOff = 3 + +class CruiseStalk(Enum): + plus1 = "plus1" + plus5 = "plus5" + minus1 = "minus1" + minus5 = "minus5" + cancel = "cancel" + resume = "resume" + cancel_lever_up = "cancel_lever_up" + +# *** StepperServoCAN *** +def create_steer_command(frame: int, mode: SteeringModes, steer_tq: float = 0, steer_delta: float = 0): + """Creates a CAN message for the actuator STEERING_COMMAND""" + packer = CANPacker('ocelot_controls') + values = { + "COUNTER": frame % 16, + "STEER_MODE": mode.value, + "STEER_ANGLE": steer_delta, + "STEER_TORQUE": steer_tq, + } + msg = packer.make_can_msg("STEERING_COMMAND", 0, values) + addr = msg[0] + dat = msg[1] + values["CHECKSUM"] = calc_checksum_8bit(dat, addr) + + return packer.make_can_msg("STEERING_COMMAND", CanBus.SERVO_CAN, values) + + +def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 + checksum = msg_id + for byte in work_data: #checksum is stripped from the dat + checksum += byte #add up all the bytes + + checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes + checksum &= 0xFF #throw away anything in upper Byte + + checksum = (checksum & 0xF) + (checksum >> 4) #add first and second nibble + checksum &= 0xF #throw away anything in upper nibble + return checksum + +def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf + checksum = msg_id + for byte in work_data: #checksum is stripped from the data + checksum += byte #add up all the bytes + + checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes + checksum &= 0xFF #throw away anything in upper Byte + return checksum + +def calc_checksum_cruise(work_data: bytearray):# 0x194 this checksum is special - initialized with 0 + return calc_checksum_8bit(work_data, 0) + + +def create_accel_command(packer, action: CruiseStalk, bus: int, cnt): + values = { + "setMe_0xFC": 0xFC, + "requests_0xF": 0xF, + "Counter_0x194": cnt % 0xF # counts from 0 to 14 + } + values[action.value] = 1 + + dat = packer.make_can_msg("CruiseControlStalk", bus, values)[1] + values["Checksum_0x194"] = calc_checksum_cruise(dat) + + return packer.make_can_msg("CruiseControlStalk", bus, values) + diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py new file mode 100644 index 0000000000..77745af43b --- /dev/null +++ b/selfdrive/car/bmw/carcontroller.py @@ -0,0 +1,193 @@ +from cereal import car +from openpilot.selfdrive.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis +from openpilot.selfdrive.car.bmw import bmwcan +from openpilot.selfdrive.car.bmw.bmwcan import SteeringModes, CruiseStalk +from openpilot.selfdrive.car.bmw.values import CarControllerParams, CanBus, BmwFlags +from openpilot.selfdrive.car.interfaces import CarControllerBase +from opendbc.can.packer import CANPacker +from openpilot.selfdrive.car.conversions import Conversions as CV + +VisualAlert = car.CarControl.HUDControl.VisualAlert + +# DO NOT CHANGE: Cruise control step size +CC_STEP = 1 # cruise single click jump - always 1 - interpreted as km or miles depending on DSC or DME set units +CRUISE_STALK_IDLE_TICK_STOCK = 0.2 # stock cruise stalk CAN frequency when stalk is not pressed is 5Hz +CRUISE_STALK_HOLD_TICK_STOCK = 0.05 # stock cruise stalk CAN frequency when stalk is pressed is 20Hz + +CRUISE_STALK_SINGLE_TICK = CRUISE_STALK_IDLE_TICK_STOCK # we will send also at 5Hz in between stock messages to emulate single presses +CRUISE_STALK_HOLD_TICK = 0.01 # emulate held stalk, 100Hz makes stock messages be ignored + +CRUISE_SPEED_HYST_GAP = CC_STEP * 0.6 # between >0.5 and <1 to avoid cruise speed toggling. More than 0.5 to add some phase lead +ACCEL_HYST_GAP = 0.05 # m/s^2 + +ACCEL_HOLD_MEDIUM = 0.4 +DECEL_HOLD_MEDIUM = -0.6 +ACCEL_HOLD_STRONG = 1.2 +DECEL_HOLD_STRONG = -1.2 + +class CarController(CarControllerBase): + def __init__(self, dbc_name, CP): + super().__init__(dbc_name, CP) + self.flags = CP.flags + self.min_cruise_speed = CP.minEnableSpeed + self.cruise_units = None + + self.cruise_cancel = False # local cruise control cancel + self.cruise_enabled_prev = False + # redundant safety check with the board + self.apply_steer_last = 0 + self.last_cruise_rx_timestamp = 0 # stock cruise buttons + self.last_cruise_tx_timestamp = 0 # openpilot commands + self.tx_cruise_stalk_counter_last = 0 + self.rx_cruise_stalk_counter_last = -1 + self.cruise_speed_with_hyst = 0 + self.accel_with_hyst = 0 + self.accel_with_hyst_last = 0 + self.calc_desired_speed = 0 + + self.cruise_bus = CanBus.PT_CAN + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + self.cruise_bus = CanBus.F_CAN + + + self.packer = CANPacker(dbc_name) + + + def update(self, CC, CS, now_nanos): + + actuators = CC.actuators + can_sends = [] + + self.cruise_units = (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + + + # *** hysteresis - trend is your friend *** + # avoids cruise speed toggling and biases next request toward the direction of the previous one + self.cruise_speed_with_hyst = apply_hysteresis(CS.out.cruiseState.speed, self.cruise_speed_with_hyst, CRUISE_SPEED_HYST_GAP / self.cruise_units) + if not CS.out.cruiseState.enabled: + self.cruise_speed_with_hyst = CS.out.vEgoCluster + + # acceleration target hysteresis - avoids entering / leaving hold stalk emulation to frequently, etc + self.accel_with_hyst = apply_hysteresis(actuators.accel, self.accel_with_hyst, ACCEL_HYST_GAP) + + + # *** desired speed model *** + # detect filtered acceleration sign change and reset speed calc on change + accel_zero_cross = self.accel_with_hyst * self.accel_with_hyst_last < 0 + self.accel_with_hyst_last = self.accel_with_hyst + if accel_zero_cross or not CC.enabled or CS.out.gasPressed: + self.calc_desired_speed = CS.out.vEgoCluster + self.calc_desired_speed = self.calc_desired_speed + actuators.accel * DT_CTRL + speed_err_req = (self.calc_desired_speed - self.cruise_speed_with_hyst) * self.cruise_units + speed_err_act = self.calc_desired_speed - CS.out.vEgoCluster + + # detect incoming CruiseControlStalk message by observing counter change (message arrives at only 5Hz when nothing pressed) + if CS.cruise_stalk_counter != self.rx_cruise_stalk_counter_last: + self.tx_cruise_stalk_counter_last = CS.cruise_stalk_counter + # stock message was sent some time in between control samples: + self.last_cruise_rx_timestamp = now_nanos + self.rx_cruise_stalk_counter_last = CS.cruise_stalk_counter + + + + + + # *** send cruise control stalk message at different rates and manage counters *** + def cruise_cmd(cmd, hold=False): + time_since_cruise_sent = (now_nanos - self.last_cruise_tx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency + time_since_cruise_received = (now_nanos - self.last_cruise_rx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency + # send single cmd with an effective rate slower than held stalk rate + if not hold: + send = time_since_cruise_sent > CRUISE_STALK_SINGLE_TICK \ + and time_since_cruise_received > CRUISE_STALK_HOLD_TICK_STOCK/2 - DT_CTRL \ + and time_since_cruise_received < CRUISE_STALK_IDLE_TICK_STOCK/2 + DT_CTRL + else: + # use faster rate to emulate held stalk. Time first message such that subsequent one will nullify stock message: + send = hold and time_since_cruise_sent > CRUISE_STALK_HOLD_TICK + if send: + tx_cruise_stalk_counter = self.tx_cruise_stalk_counter_last + 1 + # avoid counter clash with a potential upcoming message from stock cruise + if tx_cruise_stalk_counter == CS.cruise_stalk_counter + 1: + # avoid clashing with upcoming stock message + # sometimes upcoming stock message is overshadowed by us, so also avoid clashing with one after that + tx_cruise_stalk_counter = tx_cruise_stalk_counter + 2 + tx_cruise_stalk_counter = tx_cruise_stalk_counter % 0xF + can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) + self.tx_cruise_stalk_counter_last = tx_cruise_stalk_counter + self.last_cruise_tx_timestamp = now_nanos + + # *** cruise control cancel signal *** + # CC.cruiseControl.cancel can't be used because it is always false because pcmCruise = False because we need OP speed tracker + # CC.enabled appears after cruiseState.enabled, so we need to check rising edge to prevent instantaneous cancel after cruise is enabled + # This is because CC.enabled comes from controld and CS.out.cruiseState.enabled is from card threads + if not CC.enabled and self.cruise_enabled_prev: + self.cruise_cancel = True + # if we need to go below cruise speed, request cancel and coast while steering turns off softly + if (CS.out.cruiseState.speedCluster - self.min_cruise_speed) < 0.1 and actuators.accel < -0.1 \ + and speed_err_act < -1 and CS.out.vEgoCluster - self.min_cruise_speed < 0.4: + self.cruise_cancel = True + # keep requesting cancel until the cruise is disabled + if not CS.out.cruiseState.enabled: + self.cruise_cancel = False + + cruise_stalk_human_pressing = CS.cruise_stalk_resume or CS.cruise_stalk_cancel or CS.cruise_stalk_speed != 0 + + if not cruise_stalk_human_pressing and CS.out.cruiseState.enabled: + if self.cruise_cancel: + cruise_cmd(CruiseStalk.cancel) + print("cancel") + elif CC.enabled: + if (self.accel_with_hyst > ACCEL_HOLD_STRONG or (self.accel_with_hyst > ACCEL_HOLD_MEDIUM and speed_err_act > 3.0)) \ + and not speed_err_req < -10*CV.KPH_TO_MS*self.cruise_units: + cruise_cmd(CruiseStalk.plus5, hold=True) # produces up to 1.2 m/s2 + elif (self.accel_with_hyst < DECEL_HOLD_STRONG or (self.accel_with_hyst < DECEL_HOLD_MEDIUM and speed_err_act < -3.0)) \ + and not speed_err_req > 10*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus5, hold=True) # produces down to -1.4 m/s2 + elif (self.accel_with_hyst > ACCEL_HOLD_MEDIUM or speed_err_act > 2.0) \ + and not speed_err_req < -5*CV.KPH_TO_MS*self.cruise_units: + cruise_cmd(CruiseStalk.plus1, hold=True) # produces up to 0.8 m/s2 + elif (self.accel_with_hyst < DECEL_HOLD_MEDIUM or speed_err_act < -2.0) \ + and not speed_err_req > 5*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus1, hold=True) # produces down to -0.8 m/s2 + elif speed_err_req > max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and (self.accel_with_hyst > 0.0 or CS.out.gasPressed): + cruise_cmd(CruiseStalk.plus1) + elif speed_err_req < -max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and self.accel_with_hyst < 0.0 and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus1) + + + + if self.flags & BmwFlags.STEPPER_SERVO_CAN: + steer_error = not CC.latActive and CC.enabled + if not steer_error: # don't send steer CAN tx if steering is unavailable + # *** apply steering torque *** + if CC.enabled: + new_steer = actuators.steer * CarControllerParams.STEER_MAX + # explicitly clip torque before sending on CAN + apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, + CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, + CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) + apply_steer = CS.out.steeringTorqueEps + else: + apply_steer = 0 + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) + self.apply_steer_last = apply_steer + + # debug + if CC.enabled and (self.frame % 10) == 0: #slow print + frame_number = self.frame + print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + + self.cruise_enabled_prev = CC.enabled + + new_actuators = actuators.as_builder() + new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX + new_actuators.steerOutputCan = self.apply_steer_last + + new_actuators.speed = self.calc_desired_speed + new_actuators.accel = speed_err_req + + self.frame += 1 + return new_actuators, can_sends diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py new file mode 100644 index 0000000000..433ee72bb5 --- /dev/null +++ b/selfdrive/car/bmw/carstate.py @@ -0,0 +1,189 @@ +from cereal import car +from opendbc.can.can_define import CANDefine +from opendbc.can.parser import CANParser +from openpilot.selfdrive.car.conversions import Conversions as CV +from openpilot.selfdrive.car.interfaces import CarStateBase +from openpilot.selfdrive.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint]['pt']) + self.shifter_values = can_define.dv["TransmissionDataDisplay"]['ShiftLeverPosition'] + self.steer_angle_delta = 0. + self.gas_kickdown = False + + self.cluster_min_speed = CruiseSettings.CLUSTER_OFFSET + + self.is_metric = None + self.cruise_stalk_speed = 0 + self.cruise_stalk_resume = False + self.cruise_stalk_cancel = False + self.cruise_stalk_cancel_up = False + self.cruise_stalk_cancel_dn = False + self.cruise_stalk_counter = 0 + self.prev_cruise_stalk_speed = 0 + self.prev_cruise_stalk_resume = self.cruise_stalk_resume + self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel + + self.right_blinker_pressed = False + self.left_blinker_pressed = False + self.other_buttons = False + self.prev_gas_pressed = False + self.dtc_mode = False + + def update(self, cp_PT, cp_F, cp_aux): + # set these prev states at the beginning because they are used outside the update() + self.prev_cruise_stalk_speed = self.cruise_stalk_speed + self.prev_cruise_stalk_resume = self.cruise_stalk_resume + self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel + + ret = car.CarState.new_message() + + ret.doorOpen = False # not any([cp.vl["SEATS_DOORS"]['DOOR_OPEN_FL'], cp.vl["SEATS_DOORS"]['DOOR_OPEN_FR'] + ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] + + ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 + ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 + ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] + # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop + ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 + self.gas_kickdown = cp_PT.vl['AccPedal']["KickDownPressed"] != 0 #BMW has kickdown button at the bottom of the pedal + + ret.wheelSpeeds = self.get_wheel_speeds( + cp_PT.vl["WheelSpeeds"]["Wheel_FL"], + cp_PT.vl["WheelSpeeds"]["Wheel_FR"], + cp_PT.vl["WheelSpeeds"]["Wheel_RL"], + cp_PT.vl["WheelSpeeds"]["Wheel_RR"], + ) + ret.vEgoRaw = cp_PT.vl['Speed']["VehicleSpeed"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.vEgoCluster = ret.vEgo + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS + ret.standstill = not cp_PT.vl['Speed']["MovingForward"] and not cp_PT.vl['Speed']["MovingReverse"] + ret.yawRate = cp_PT.vl['Speed']["YawRate"] * CV.DEG_TO_RAD + ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] + can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + blinker_on = cp_PT.vl["TurnSignals"]['TurnSignalActive'] != 0 and cp_PT.vl["TurnSignals"]['TurnSignalIdle'] == 0 + ret.leftBlinker = blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] !=0 # blinking + ret.rightBlinker = blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] !=0 # blinking + self.right_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] != 0 + self.left_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] != 0 + + self.dtc_mode = cp_PT.vl['StatusDSC_KCAN']['DTC_on'] != 0 # drifty traction control ;) + + # other buttons help determine driver is paying attention in case the face is not visible + self.other_buttons = \ + cp_PT.vl["SteeringButtons"]['Volume_DOWN'] !=0 or cp_PT.vl["SteeringButtons"]['Volume_UP'] !=0 or \ + cp_PT.vl["SteeringButtons"]['Previous_down'] !=0 or cp_PT.vl["SteeringButtons"]['Next_up'] !=0 or \ + cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or \ + self.prev_gas_pressed and not ret.gasPressed # treat gas pedal tap as a button - button events indicate driver engagement - useful if face not visible + + # E-series doesn't have torque sensor + # use Voice button or gas pedal to fake steeringPressed to confirm a lane change + ret.steeringPressed = cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or ret.gasPressed + if ret.steeringPressed and ret.leftBlinker: + ret.steeringTorque = 1 + elif ret.steeringPressed and ret.rightBlinker: + ret.steeringTorque = -1 + else: + ret.steeringTorque = 0 + + ret.espDisabled = cp_PT.vl['StatusDSC_KCAN']['DSC_full_off'] != 0 + ret.cruiseState.available = not ret.espDisabled #cruise not available when DSC fully off + ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch + + # Read openpilot engagement signal from CAN address 0x100 byte 0 + openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] + + cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] + if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC + ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 + # DCC implies that cruise control is done on F-CAN + # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages + cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] + elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 + + # Override enabled state with external engagement signal from 0x100 byte 0 + if openpilot_engage_signal != 0: + ret.cruiseState.enabled = True + + ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False + if cruise_control_stal_msg['plus1'] != 0: + self.cruise_stalk_speed = 1 + elif cruise_control_stal_msg['minus1'] != 0: + self.cruise_stalk_speed = -1 + elif cruise_control_stal_msg['plus5'] != 0: + self.cruise_stalk_speed = 5 + elif cruise_control_stal_msg['minus5'] != 0: + self.cruise_stalk_speed = -5 + else: + self.cruise_stalk_speed = 0 + self.cruise_stalk_resume = cruise_control_stal_msg['resume'] != 0 + self.cruise_stalk_cancel = cruise_control_stal_msg['cancel'] != 0 + self.cruise_stalk_cancel_up = cruise_control_stal_msg['cancel_lever_up'] != 0 + self.cruise_stalk_counter = cruise_control_stal_msg['Counter_0x194'] + self.cruise_stalk_cancel_dn = self.cruise_stalk_cancel and not self.cruise_stalk_cancel_up + + + ret.genericToggle = self.dtc_mode + + if self.CP.flags & BmwFlags.STEPPER_SERVO_CAN: + ret.steeringTorqueEps = cp_aux.vl['STEERING_STATUS']['STEERING_TORQUE'] + self.steer_angle_delta = cp_aux.vl['STEERING_STATUS']['STEERING_ANGLE'] + ret.steerFaultTemporary = int(cp_aux.vl['STEERING_STATUS']['CONTROL_STATUS']) & 0x4 != 0 + + self.prev_gas_pressed = ret.gasPressed + return ret + + @staticmethod + def get_can_parser(CP): #PT-CAN + messages = [ # message, frequency + ("EngineAndBrake", 100), + ("TransmissionDataDisplay", 5), + ("AccPedal", 100), + ("Speed", 50), + ("SteeringWheelAngle", 100), + ("TurnSignals", 0), + ("SteeringButtons", 0), + ("WheelSpeeds", 50), # 100 on F-CAN + ("CruiseControlStalk", 5), + ("StatusDSC_KCAN", 50), + ("Status_contact_handbrake", 0), + ("TerminalStatus", 10), + ("OpenpilotEngage", 10), + ] + + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages.append(("DynamicCruiseControlStatus", 5)) + if CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + messages.append(("CruiseControlStatus", 5)) + + return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.PT_CAN) # 0: PT-CAN + + @staticmethod # $540 vehicle option could use just PT_CAN, but $544 requires sending and receiving cruise commands on F-CAN. Use F-can. Works for both options + def get_F_can_parser(CP): + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages = [ # message, frequency + ("SteeringWheelAngle_DSC", 100), + ("CruiseControlStalk", 5), + ] + else: + messages = [] + + return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.F_CAN) + + @staticmethod + def get_actuator_can_parser(CP): + if CP.flags & BmwFlags.STEPPER_SERVO_CAN: + messages = [ # message, frequency + ("STEERING_STATUS", 100), + ] + else: + messages = [] + return CANParser('ocelot_controls', messages, CanBus.SERVO_CAN) diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py new file mode 100644 index 0000000000..b1d3a6cbfb --- /dev/null +++ b/selfdrive/car/bmw/fingerprints.py @@ -0,0 +1,27 @@ +from openpilot.selfdrive.car.bmw.values import CAR + +BMW_E8x_E9x_common_per_bus = { + "PT-CAN": { + 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, + 209: 8,212: 8, 266: 6, 304: 5, 309: 2, 373: 3, 404: 4, 408: 5, 414: 8, 416: 8, 418: 8, 422: 8, 436: 8, 437: 7, 438: 7, 464: 8, 466: 6, 470: 2, 481: 6, + 502: 2, 514: 2, 538: 3, 550: 5, 570: 4, 578: 5, 594: 2, 678: 2, 690: 8, 691: 5, 704: 3, 719: 2, 722: 3, 753: 3, 758: 2, 760: 8, 762: 5, 764: 7, 784: 7, + 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, + 1152: 8, 1170: 8, 1175: 8, 1176: 8, 1193: 8, 1246: 8, 1408: 8, 1426: 8, 1432: 8, 1449: 8, 1472: 8, 1494: 8, 1504: 8, 1506: 8, 1517: 8, 1522: 8, 1528: 8 + }, + "F-CAN": { + 403: 8, 320: 2, 133: 8, 216: 8, 227: 8, 357: 8, 128: 5, 201: 8, 205: 8, 206: 8, 209: 8, 212: 8, 304: 5, 404: 4, 470: 2, 678: 2, 884: 5, + }, + "STEPPER_SERVO_CAN": { + 559: 8 + } +} + +BMW_E8x_E9x_common = {k: v for d in BMW_E8x_E9x_common_per_bus.values() for k, v in d.items()} # flatten + +FINGERPRINTS = { + CAR.BMW_E82: [ + {**BMW_E8x_E9x_common, 899: 4}, + {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 + ] + # CAR.BMW_E90: [{**BMW_E8x_E9x_common, }], +} diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py new file mode 100755 index 0000000000..2c4eddd795 --- /dev/null +++ b/selfdrive/car/bmw/interface.py @@ -0,0 +1,172 @@ +#!/usr/bin/env python3 +from cereal import car +from openpilot.selfdrive.car import create_button_events +from openpilot.selfdrive.car.helpers import interp +from openpilot.selfdrive.car.conversions import Conversions as CV +from openpilot.selfdrive.car import get_safety_config +from openpilot.selfdrive.car.bmw.values import CanBus, BmwFlags, CarControllerParams +from openpilot.selfdrive.car.interfaces import CarInterfaceBase + +ButtonType = car.CarState.ButtonEvent.Type +EventName = car.CarEvent.EventName +TransmissionType = car.CarParams.TransmissionType +GearShifter = car.CarState.GearShifter + +# certain driver intervention can be distinguished from maximum estimated wheel turning force +def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): + # when steering released (or lost steps), what angle will it return to + # if we are above that angle, we can detect things + release_angle = steer_friction_torque / (max(v_ego, 1) ** 2 * centering_coeff) + + override = False + margin_value = 1 + if abs(steer_cmd) > release_angle: # for higher angles we steering will not move outward by itself with stepper on + if steer_cmd > 0: + override |= steer_act - steer_cmd > margin_value # driver overrode from right to more right + override |= steer_act < 0 # releaseAngle -3 # driver overrode from right to opposite direction + else: + override |= steer_act - steer_cmd < -margin_value # driver overrode from left to more left + override |= steer_act > 0 # -releaseAngle +3 # driver overrode from left to opposite direction + # else: + # override |= abs(steerAct) > releaseAngle + marginVal # driver overrode to an angle where steering will not go by itself + return override + + +class CarInterface(CarInterfaceBase): + def __init__(self, CP, CarController, CarState): + super().__init__(CP, CarController, CarState) + + self.cp_F = self.CS.get_F_can_parser(CP) + self.can_parsers.append(self.cp_F) + self.cp_aux = self.CS.get_actuator_can_parser(CP) + self.can_parsers.append(self.cp_aux) + + @staticmethod + # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 + def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + return hold_torque # todo add speed component + + @staticmethod + def get_steer_feedforward(desired_angle, v_ego): + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + return hold_torque # todo add speed component + + def get_steer_feedforward_function(self): + if self.CP.flags & BmwFlags.SERVOTRONIC: + return self.get_steer_feedforward_servotronic + else: + return self.get_steer_feedforward + + @staticmethod + def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): + if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status + ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value + + ret.openpilotLongitudinalControl = False + ret.radarUnavailable = True + ret.pcmCruise = False # openpilot handles engagement via cruise stalk + + ret.autoResumeSng = False + if 0x200 in fingerprint[CanBus.PT_CAN]: # Enigne controls speed and reports cruise control status + ret.flags |= BmwFlags.NORMAL_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests + elif 0x193 in fingerprint[CanBus.PT_CAN]: # either DSC or LDM reports cruise control status + if 0x0D5 not in fingerprint[CanBus.PT_CAN]: # DSC itself applies brakes + ret.flags |= BmwFlags.DYNAMIC_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests on F-CAN + else: # LDM sends brake commands + ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_ACC.value # openpilot will switch between OP and LDM + ret.autoResumeSng = True #! hopefully + else: # DSC/DME not sending cruise status and LDM not present - openpilot will be the only requester + ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_LDM.value + ret.autoResumeSng = True #! hopefully + + if 0xb8 in fingerprint[CanBus.PT_CAN] or 0xb5 in fingerprint[CanBus.PT_CAN]: # transmission: engine torque requests + ret.transmissionType = TransmissionType.automatic + else: + ret.transmissionType = TransmissionType.manual + + # Detect all wheel drive BMW E90 XI + if 0xbc in fingerprint[CanBus.PT_CAN]: # XI has a transfer case + ret.steerRatio = 18.5 # XI has slower steering rack + + if ret.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: # DCC imperial has higher threshold + ret.minEnableSpeed = 0. * CV.KPH_TO_MS # if self.CS.is_metric else 20. * CV.MPH_TO_MS + if ret.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + ret.minEnableSpeed = 0. * CV.KPH_TO_MS + + ret.carName = "bmw" + ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] + + ret.steerControlType = car.CarParams.SteerControlType.torque + ret.steerActuatorDelay = 0.4 + ret.steerLimitTimer = 0.4 + + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 0.23 #live parameters + ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters + ret.lateralTuning.torque.useSteeringAngle = False + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? + + ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [.1] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [0.] + + ret.centerToFront = ret.wheelbase * 0.44 + + ret.startAccel = 0.0 + print("Controller: " + ret.lateralTuning.which()) + + # has_servotronic = False + # for fw in car_fw: # todo check JBBF firmware for $216A + # if fw.ecu == "eps" and b"," in fw.fwVersion: + # has_servotronic = True + + return ret + + def _update(self, c): + # ******************* do can recv ******************* + ret = self.CS.update(self.cp, self.cp_F, self.cp_aux) + + # events + events = self.create_common_events(ret, pcm_enable=False) + + # *** cruise control units detection *** + # when cruise is enabled the car sets cruiseState.speed = vEgo, so we can detect the ratio + # with resume this wouldn't work, but op will not engage on first resume anyway + if self.CS.is_metric is None and c.enabled and ret.vEgo > 0: + # note, when is_metric is None, cruiseState.speed is already scaled by CV.MPH_TO_MS by default + speed_ratio = ret.cruiseState.speed / ret.vEgo # 1 if imperial, 1.6 if metric + if 0.8 < speed_ratio < 1.2: + self.CS.is_metric = False + elif 0.8 * CV.MPH_TO_KPH < speed_ratio < 1.2 * CV.MPH_TO_KPH: + self.CS.is_metric = True + else: + events.add(EventName.accFaulted) + + + ret.buttonEvents = [ + *create_button_events(self.CS.cruise_stalk_speed > 0, self.CS.prev_cruise_stalk_speed > 0, {1: ButtonType.accelCruise}), + *create_button_events(self.CS.cruise_stalk_speed < 0, self.CS.prev_cruise_stalk_speed < 0, {1: ButtonType.decelCruise}), + *create_button_events(self.CS.cruise_stalk_cancel, self.CS.prev_cruise_stalk_cancel, {1: ButtonType.cancel}), + *create_button_events(self.CS.other_buttons, not self.CS.other_buttons, {1: ButtonType.altButton1}), + *create_button_events(self.CS.cruise_stalk_resume, self.CS.prev_cruise_stalk_resume, { + 1: ButtonType.resumeCruise if not c.enabled else ButtonType.gapAdjustCruise}) # repurpose resume button to adjust driver personality when engaged + ] + + if ret.vEgoCluster < self.CP.minEnableSpeed: + events.add(EventName.belowEngageSpeed) + if c.actuators.accel > 0.2: + events.add(EventName.speedTooLow) # can't restart cruise anymore + + ret.events = events.to_msg() + + return ret diff --git a/selfdrive/car/bmw/radar_interface.py b/selfdrive/car/bmw/radar_interface.py new file mode 100644 index 0000000000..e654bd61fd --- /dev/null +++ b/selfdrive/car/bmw/radar_interface.py @@ -0,0 +1,4 @@ +from openpilot.selfdrive.car.interfaces import RadarInterfaceBase + +class RadarInterface(RadarInterfaceBase): + pass diff --git a/selfdrive/car/bmw/tests/__init__.py b/selfdrive/car/bmw/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/selfdrive/car/bmw/tests/test_bmw.py b/selfdrive/car/bmw/tests/test_bmw.py new file mode 100644 index 0000000000..dcbe8c239d --- /dev/null +++ b/selfdrive/car/bmw/tests/test_bmw.py @@ -0,0 +1,37 @@ +from parameterized import parameterized + +from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS + +N55_ENGINE_MSG = {899: 4} +N52_ENGINE_MSG = {899: 2} +CRUISE_STATUS_MSG = {0x200: 8} +DYNAMIC_CRUISE_STATUS_MSG = {0x193: 8} +STEPPER_MSG = {0x22F: 8} + + + + +class TestBMWFingerprint: + @parameterized.expand(FINGERPRINTS.items()) + def test_can_fingerprints(self, car_model, fingerprints): + assert len(fingerprints) > 0 + + assert all(len(finger) for finger in fingerprints) + + for car_config in ((STEPPER_MSG, N55_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), + (STEPPER_MSG, N52_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), + (N55_ENGINE_MSG, CRUISE_STATUS_MSG, DYNAMIC_CRUISE_STATUS_MSG), + ): + failed_fingers = {} + for i, finger in enumerate(fingerprints): + failed_addrs = [] + for msg in (car_config): + for addr, length in msg.items(): + found_length = finger.get(addr) + if found_length != length: + failed_addrs.append((addr, length, found_length)) + if failed_addrs: + failed_fingers[i] = failed_addrs + + if len(failed_fingers) == len(fingerprints): + raise AssertionError(f"All {len(fingerprints)} fingerprints failed: {failed_fingers}") diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py new file mode 100644 index 0000000000..06f765d664 --- /dev/null +++ b/selfdrive/car/bmw/values.py @@ -0,0 +1,81 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag +from cereal import car +from openpilot.selfdrive.car import Platforms, CarSpecs, PlatformConfig, dbc_dict, DbcDict, STD_CARGO_KG +from openpilot.selfdrive.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from openpilot.selfdrive.car.conversions import Conversions as CV + +# Steer torque limits +class CarControllerParams: #controls running @ 100hz + STEER_STEP = 1 # 100Hz + STEER_MAX = 12 # Nm + STEER_DELTA_UP = 10 / 100 # 10Nm/s + STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit + STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor + + # STEER_BACKLASH = 1 #deg + def __init__(self, CP): + pass + +class BmwFlags(IntFlag): + # Detected Flags + STEPPER_SERVO_CAN = 2 ** 0 + NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 + DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 + ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported + ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 + ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 + SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query + +class CruiseSettings: + CLUSTER_OFFSET = 2 # kph + +class CanBus: + PT_CAN = 0 + SERVO_CAN = 0 # required for steering + F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging + K_CAN = 0 # not used - only logging + + +class Footnote(Enum): + StepperServoCAN = CarFootnote( + "Requires StepperServoCAN", + Column.FSR_STEERING) + DCC = CarFootnote( + "Minimum speed with CC or DCC is 30 kph", + Column.FSR_LONGITUDINAL) + CC = CarFootnote( + "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", + Column.PACKAGE) + ACC = CarFootnote( + "ACC is required. Also LDM module to take over when OP is off.", + Column.AUTO_RESUME) + DIY = CarFootnote( + "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", + Column.HARDWARE) + +@dataclass +class BmwCarDocs(CarDocs): + package: str = "Cruise Control - VO540, VO544, VO541" + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) + + def init_make(self, CP: car.CarParams): + self.car_parts = CarParts.common([CarHarness.custom]) + +@dataclass +class BmwPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('bmw_e9x_e8x', None)) + + +class CAR(Platforms): + BMW_E82 = BmwPlatformConfig( + [BmwCarDocs("BMW E82 2004-13")], + CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + BMW_E90 = BmwPlatformConfig( + [BmwCarDocs("BMW E90 2005-11")], + CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + + +DBC = CAR.create_dbc_map() From 58d1270eaf1374cad55de03eae4a6d274759867e Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:27:31 +0100 Subject: [PATCH 002/155] force bmw --- BMW_INTEGRATION.md | 62 +++++++++++++++++++++++++ force_bmw.py | 21 +++++++++ opendbc_repo/opendbc/car/car_helpers.py | 12 ++++- selfdrive/car/bmw/fingerprints.py | 10 ++-- 4 files changed, 101 insertions(+), 4 deletions(-) create mode 100644 BMW_INTEGRATION.md create mode 100755 force_bmw.py diff --git a/BMW_INTEGRATION.md b/BMW_INTEGRATION.md new file mode 100644 index 0000000000..738044ab7a --- /dev/null +++ b/BMW_INTEGRATION.md @@ -0,0 +1,62 @@ +# BMW Integration - Force Car Recognition + +## Problem +Openpilot shows "dashcam mode for car unrecognized" because it cannot fingerprint the BMW. + +## Solution + +### Method 1: Force BMW Car Selection (Recommended) + +Run this on your device to force openpilot to recognize your car as BMW: + +```bash +cd /data/openpilot +python3 force_bmw.py +``` + +Then reboot the device. + +### Method 2: Set Parameter Manually + +If the script doesn't work, you can set the parameter manually: + +```bash +# For BMW E90: +python3 -c "from openpilot.common.params import Params; Params().put('CarSelected2', 'BMW_E90')" + +# For BMW E82: +python3 -c "from openpilot.common.params import Params; Params().put('CarSelected2', 'BMW_E82')" +``` + +Then reboot the device. + +### Method 3: Environment Variable + +Set the FINGERPRINT environment variable before starting openpilot: + +```bash +export FINGERPRINT="BMW_E90" # or BMW_E82 +``` + +## Verify + +After setting, verify it's working: + +```bash +python3 -c "from openpilot.common.params import Params; print(Params().get('CarSelected2'))" +``` + +## Changes Made + +1. **Added 0x100 CAN message**: Reads byte 0 from address 0x100 for openpilot engagement +2. **Updated fingerprints**: Added BMW E90 fingerprints including the new 0x100 message +3. **Updated carstate.py**: Reads OpenpilotEnabled signal and uses it to control engagement +4. **Added ocelot_controls.dbc**: DBC file for steering/brake control + +## Files Modified + +- `selfdrive/car/bmw/carstate.py` - Added 0x100 message handling +- `selfdrive/car/bmw/fingerprints.py` - Added BMW_E90 fingerprints with 0x100 +- `opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc` - Added OpenpilotEngage message definition +- `opendbc_repo/opendbc/dbc/ocelot_controls.dbc` - Added from BMW-E8x-E9x repo +- `force_bmw.py` - Helper script to force car selection diff --git a/force_bmw.py b/force_bmw.py new file mode 100755 index 0000000000..69d7bf1459 --- /dev/null +++ b/force_bmw.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +""" +Force openpilot to use BMW car interface. +Run this script on the device to force BMW E90 recognition. +""" + +import sys +import os + +# Add openpilot to path +sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) + +from openpilot.common.params import Params + +# Set the car to BMW E90 (or change to BMW_E82 if you have E82) +car_model = "BMW_E90" # Change to "BMW_E82" if needed + +print(f"Setting CarSelected2 parameter to: {car_model}") +Params().put("CarSelected2", car_model) +print("Done! Restart openpilot to apply changes.") +print("\nTo verify, run: python3 -c \"from openpilot.common.params import Params; print(Params().get('CarSelected2'))\"") diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index b3283d5c5a..32a171dd16 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -159,13 +159,20 @@ def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multip carlog.error({"event": "car doesn't match any fingerprints", "fingerprints": repr(fingerprints)}) candidate = "MOCK" + # Force BMW car selection if not already set selected_car = Params().get("CarSelected3") + if not selected_car: + # Default to BMW E90 on first boot + Params().put("CarSelected3", "BMW_E90") + selected_car = b"BMW_E90" + if selected_car: def find_car(name: str): from opendbc.car.hyundai.values import CAR as HYUNDAI from opendbc.car.gm.values import CAR as GM from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.mazda.values import CAR as MAZDA + from opendbc.car.bmw.values import CAR as BMW for platform in GM: for doc in platform.config.car_docs: if name == doc.name: @@ -182,8 +189,11 @@ def find_car(name: str): for doc in platform.config.car_docs: if name == doc.name: return platform + for platform in BMW: + if name == str(platform): + return platform return None - found_car = find_car(selected_car) + found_car = find_car(selected_car.decode() if isinstance(selected_car, bytes) else selected_car) if found_car is not None: candidate = found_car diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py index b1d3a6cbfb..740ad03979 100644 --- a/selfdrive/car/bmw/fingerprints.py +++ b/selfdrive/car/bmw/fingerprints.py @@ -2,7 +2,7 @@ BMW_E8x_E9x_common_per_bus = { "PT-CAN": { - 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, + 256: 8, 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, 209: 8,212: 8, 266: 6, 304: 5, 309: 2, 373: 3, 404: 4, 408: 5, 414: 8, 416: 8, 418: 8, 422: 8, 436: 8, 437: 7, 438: 7, 464: 8, 466: 6, 470: 2, 481: 6, 502: 2, 514: 2, 538: 3, 550: 5, 570: 4, 578: 5, 594: 2, 678: 2, 690: 8, 691: 5, 704: 3, 719: 2, 722: 3, 753: 3, 758: 2, 760: 8, 762: 5, 764: 7, 784: 7, 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, @@ -22,6 +22,10 @@ CAR.BMW_E82: [ {**BMW_E8x_E9x_common, 899: 4}, {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 - ] - # CAR.BMW_E90: [{**BMW_E8x_E9x_common, }], + ], + CAR.BMW_E90: [ + {**BMW_E8x_E9x_common, 899: 4}, + {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 + {**BMW_E8x_E9x_common}, # Minimal fingerprint for testing + ], } From b9196e6a7c8b233dee86364abf05071e5895359f Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:29:26 +0100 Subject: [PATCH 003/155] bmw for carhelper --- opendbc_repo/opendbc/car/car_helpers.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index 32a171dd16..32975a6f3d 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -172,7 +172,10 @@ def find_car(name: str): from opendbc.car.gm.values import CAR as GM from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.mazda.values import CAR as MAZDA - from opendbc.car.bmw.values import CAR as BMW + try: + from openpilot.selfdrive.car.bmw.values import CAR as BMW + except ImportError: + BMW = [] for platform in GM: for doc in platform.config.car_docs: if name == doc.name: From deec37887086ea74f327985d0e7a0b5e9f239b66 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:31:53 +0100 Subject: [PATCH 004/155] safety model --- opendbc_repo/opendbc/car/car.capnp | 3 ++- opendbc_repo/opendbc/car/car_helpers.py | 15 +++++++++++---- opendbc_repo/opendbc/car/values.py | 9 ++++++++- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/car.capnp b/opendbc_repo/opendbc/car/car.capnp index 7057c8c83d..f20cb6b770 100644 --- a/opendbc_repo/opendbc/car/car.capnp +++ b/opendbc_repo/opendbc/car/car.capnp @@ -244,7 +244,7 @@ struct CarState { pcmCruiseGap @63 :Int16; #0: can't read, 1,2,3,4: gap setting speedLimit @64 :Float32; speedLimitDistance @65 :Float32; - gearStep @66 :Int16; + gearStep @66 :Int16; tpms @67 : Tpms; useLaneLineSpeed @68 : Float32; leftLatDist @69 : Float32; # distance to left lane line @@ -712,6 +712,7 @@ struct CarParams { fcaGiorgio @32; rivian @33; volkswagenMeb @34; + bmw @35; } enum SteerControlType { diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index 32975a6f3d..1afdc35d62 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -20,10 +20,17 @@ def load_interfaces(brand_names): ret = {} for brand_name in brand_names: - path = f'opendbc.car.{brand_name}' - CarInterface = __import__(path + '.interface', fromlist=['CarInterface']).CarInterface - for model_name in brand_names[brand_name]: - ret[model_name] = CarInterface + # BMW is in selfdrive, not opendbc + if brand_name == 'bmw': + path = f'openpilot.selfdrive.car.{brand_name}' + else: + path = f'opendbc.car.{brand_name}' + try: + CarInterface = __import__(path + '.interface', fromlist=['CarInterface']).CarInterface + for model_name in brand_names[brand_name]: + ret[model_name] = CarInterface + except ImportError as e: + carlog.warning(f"Failed to load interface for {brand_name}: {e}") return ret diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py index cd7dbb95ce..4c94b38a54 100644 --- a/opendbc_repo/opendbc/car/values.py +++ b/opendbc_repo/opendbc/car/values.py @@ -14,7 +14,14 @@ from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN -Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN +# Import BMW from selfdrive since it's not in opendbc yet +try: + from openpilot.selfdrive.car.bmw.values import CAR as BMW + Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW +except ImportError: + BMW = type('CAR', (), {}) # Empty placeholder + Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN + BRANDS = get_args(Platform) PLATFORMS: dict[str, Platform] = {str(platform): platform for brand in BRANDS for platform in brand} From 6b7032a0a397f6abe6a0a476943aa5af8d460c05 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:38:44 +0100 Subject: [PATCH 005/155] torque model --- opendbc_repo/opendbc/car/torque_data/override.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/opendbc_repo/opendbc/car/torque_data/override.toml b/opendbc_repo/opendbc/car/torque_data/override.toml index 33868bca0e..a6269f8bb7 100644 --- a/opendbc_repo/opendbc/car/torque_data/override.toml +++ b/opendbc_repo/opendbc/car/torque_data/override.toml @@ -110,3 +110,6 @@ legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] "HYUNDAI_CASPER_EV"= [2.5, 2.5, 0.1] "HYUNDAI_IONIQ_5_N" = [3.17, 2.71, 0.097] "HYUNDAI_IONIQ_5_PE" = [1.75, 1.75, 0.15] + +# BMW +"BMW_E90" = [2.3, 1.5, 0.15] From b4efdc883ba709728fa4a1d68d6a76f497cf5888 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:40:49 +0100 Subject: [PATCH 006/155] remove fcan from fingerprint --- selfdrive/car/bmw/fingerprints.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py index 740ad03979..fbd4c90ced 100644 --- a/selfdrive/car/bmw/fingerprints.py +++ b/selfdrive/car/bmw/fingerprints.py @@ -8,9 +8,6 @@ 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, 1152: 8, 1170: 8, 1175: 8, 1176: 8, 1193: 8, 1246: 8, 1408: 8, 1426: 8, 1432: 8, 1449: 8, 1472: 8, 1494: 8, 1504: 8, 1506: 8, 1517: 8, 1522: 8, 1528: 8 }, - "F-CAN": { - 403: 8, 320: 2, 133: 8, 216: 8, 227: 8, 357: 8, 128: 5, 201: 8, 205: 8, 206: 8, 209: 8, 212: 8, 304: 5, 404: 4, 470: 2, 678: 2, 884: 5, - }, "STEPPER_SERVO_CAN": { 559: 8 } From 72ea9859105c1649e885aab1c0e00de2893a5203 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:41:15 +0100 Subject: [PATCH 007/155] bmw fingerprint import --- opendbc_repo/opendbc/car/fingerprints.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/opendbc_repo/opendbc/car/fingerprints.py b/opendbc_repo/opendbc/car/fingerprints.py index db140d1aed..a3d5227b25 100644 --- a/opendbc_repo/opendbc/car/fingerprints.py +++ b/opendbc_repo/opendbc/car/fingerprints.py @@ -15,6 +15,13 @@ FW_VERSIONS = get_interface_attr('FW_VERSIONS', combine_brands=True, ignore_none=True) _FINGERPRINTS = get_interface_attr('FINGERPRINTS', combine_brands=True, ignore_none=True) +# Add BMW fingerprints from selfdrive (not in opendbc yet) +try: + from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS as BMW_FINGERPRINTS + _FINGERPRINTS.update(BMW_FINGERPRINTS) +except ImportError: + pass + _DEBUG_ADDRESS = {1880: 8} # reserved for debug purposes From 88e7866bd58c7f659205c997eee3fbae0df6d9bb Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:43:45 +0100 Subject: [PATCH 008/155] interface add brand --- selfdrive/car/bmw/interface.py | 1 + 1 file changed, 1 insertion(+) diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 2c4eddd795..9abf0382f2 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -98,6 +98,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): if ret.flags & BmwFlags.NORMAL_CRUISE_CONTROL: ret.minEnableSpeed = 0. * CV.KPH_TO_MS + ret.brand = "bmw" ret.carName = "bmw" ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] From 13fe004d046417248f70ee17fde49b8733c71ddf Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:46:10 +0100 Subject: [PATCH 009/155] add bmw to ui --- common/params_keys.h | 1 + selfdrive/car/bmw/values.py | 5 +++++ selfdrive/ui/qt/offroad/settings.cc | 1 + system/manager/manager.py | 1 + 4 files changed, 8 insertions(+) diff --git a/common/params_keys.h b/common/params_keys.h index 2a274bc3d5..4f9f58b9c9 100644 --- a/common/params_keys.h +++ b/common/params_keys.h @@ -144,6 +144,7 @@ inline static std::unordered_map keys = { {"CarSelected3", {PERSISTENT, STRING}}, {"SupportedCars", {PERSISTENT, STRING}}, {"SupportedCars_gm", {PERSISTENT, STRING}}, + {"SupportedCars_bmw", {PERSISTENT, STRING}}, {"ShowDebugUI", {PERSISTENT, INT, "0"}}, {"ShowTpms", {PERSISTENT, INT, "1"}}, {"ShowDateTime", {PERSISTENT, INT, "1"}}, diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py index 06f765d664..75f3c53e2c 100644 --- a/selfdrive/car/bmw/values.py +++ b/selfdrive/car/bmw/values.py @@ -79,3 +79,8 @@ class CAR(Platforms): DBC = CAR.create_dbc_map() + + +if __name__ == '__main__': + for model in CAR: + print(f"BMW {model.value}") diff --git a/selfdrive/ui/qt/offroad/settings.cc b/selfdrive/ui/qt/offroad/settings.cc index 40d838657f..f5f59bd4aa 100644 --- a/selfdrive/ui/qt/offroad/settings.cc +++ b/selfdrive/ui/qt/offroad/settings.cc @@ -784,6 +784,7 @@ CarrotPanel::CarrotPanel(QWidget* parent) : QWidget(parent) { all_items.append(get_list((QString::fromStdString(Params().getParamPath()) + "/SupportedCars_gm").toStdString().c_str())); all_items.append(get_list((QString::fromStdString(Params().getParamPath()) + "/SupportedCars_toyota").toStdString().c_str())); all_items.append(get_list((QString::fromStdString(Params().getParamPath()) + "/SupportedCars_mazda").toStdString().c_str())); + all_items.append(get_list((QString::fromStdString(Params().getParamPath()) + "/SupportedCars_bmw").toStdString().c_str())); QMap car_groups; for (const QString& car : all_items) { diff --git a/system/manager/manager.py b/system/manager/manager.py index b4c6f0f225..af727af48a 100755 --- a/system/manager/manager.py +++ b/system/manager/manager.py @@ -200,6 +200,7 @@ def main() -> None: os.system(f"python ../../opendbc/car/gm/values.py > {Params().get_param_path()}/SupportedCars_gm") os.system(f"python ../../opendbc/car/toyota/values.py > {Params().get_param_path()}/SupportedCars_toyota") os.system(f"python ../../opendbc/car/mazda/values.py > {Params().get_param_path()}/SupportedCars_mazda") + os.system(f"python ../../selfdrive/car/bmw/values.py > {Params().get_param_path()}/SupportedCars_bmw") if os.getenv("PREPAREONLY") is not None: return From 20053a524a315f27c23b6188e4571e1825fbb7f9 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:49:01 +0100 Subject: [PATCH 010/155] fix --- selfdrive/car/bmw/values.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py index 75f3c53e2c..841abf05c7 100644 --- a/selfdrive/car/bmw/values.py +++ b/selfdrive/car/bmw/values.py @@ -82,5 +82,10 @@ class CAR(Platforms): if __name__ == '__main__': - for model in CAR: - print(f"BMW {model.value}") + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) From a88bfefea38cd9f0c0a17dc93d46222d13bc1672 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:51:40 +0100 Subject: [PATCH 011/155] huh --- generate_bmw_list.sh | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100755 generate_bmw_list.sh diff --git a/generate_bmw_list.sh b/generate_bmw_list.sh new file mode 100755 index 0000000000..0a4ac4f8cb --- /dev/null +++ b/generate_bmw_list.sh @@ -0,0 +1,9 @@ +#!/bin/bash +# Generate BMW car list for UI +# Run this script on the device to create the SupportedCars_bmw file + +cd /data/openpilot/system/manager +python3 ../../selfdrive/car/bmw/values.py > /data/params/d/SupportedCars_bmw + +echo "BMW car list generated at /data/params/d/SupportedCars_bmw" +cat /data/params/d/SupportedCars_bmw From f88f1c7cdfa2143f00357a5d27bbba43dc8bb089 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:53:21 +0100 Subject: [PATCH 012/155] fix --- selfdrive/car/bmw/values.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py index 841abf05c7..72d3e5b43b 100644 --- a/selfdrive/car/bmw/values.py +++ b/selfdrive/car/bmw/values.py @@ -1,9 +1,9 @@ from dataclasses import dataclass, field from enum import Enum, IntFlag from cereal import car -from openpilot.selfdrive.car import Platforms, CarSpecs, PlatformConfig, dbc_dict, DbcDict, STD_CARGO_KG -from openpilot.selfdrive.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from openpilot.selfdrive.car.conversions import Conversions as CV +from opendbc.car import Platforms, CarSpecs, PlatformConfig, dbc_dict, DbcDict, STD_CARGO_KG +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from opendbc.car.conversions import Conversions as CV # Steer torque limits class CarControllerParams: #controls running @ 100hz From d83e73f6e8ed55ba020b8b063286542b1b66acc2 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 22:58:05 +0100 Subject: [PATCH 013/155] maybe --- system/manager/manager.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/system/manager/manager.py b/system/manager/manager.py index af727af48a..2de1f02c18 100755 --- a/system/manager/manager.py +++ b/system/manager/manager.py @@ -49,6 +49,9 @@ def manager_init() -> None: if params.get_bool("RecordFrontLock"): params.put_bool("RecordFront", True) + # Force BMW car selection + params.put("CarSelected3", "BMW E90 2005-11") + # set unset params to their default value for k in params.all_keys(): default_value = params.get_default_value(k) From 7bc98b6ba7e3a3ae4214d3a13cf4837f0d59e0d4 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:00:43 +0100 Subject: [PATCH 014/155] fingerprint --- selfdrive/car/bmw/fingerprints.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py index fbd4c90ced..c5e34bc8a6 100644 --- a/selfdrive/car/bmw/fingerprints.py +++ b/selfdrive/car/bmw/fingerprints.py @@ -13,16 +13,23 @@ } } +# Minimal fingerprint with just 0x200 (512 decimal) for car recognition +BMW_MINIMAL_FINGERPRINT = { + 512: 8, # 0x200 - all bytes FF for recognition +} + BMW_E8x_E9x_common = {k: v for d in BMW_E8x_E9x_common_per_bus.values() for k, v in d.items()} # flatten FINGERPRINTS = { CAR.BMW_E82: [ + BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition {**BMW_E8x_E9x_common, 899: 4}, {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 ], CAR.BMW_E90: [ + BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition {**BMW_E8x_E9x_common, 899: 4}, {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 - {**BMW_E8x_E9x_common}, # Minimal fingerprint for testing + {**BMW_E8x_E9x_common}, # Full fingerprint for testing ], } From 7c8a8183f951ef138eb828eb0c344db2105c25ef Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:02:41 +0100 Subject: [PATCH 015/155] fix --- opendbc_repo/opendbc/car/car_helpers.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index 1afdc35d62..a846a743ea 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -200,8 +200,12 @@ def find_car(name: str): if name == doc.name: return platform for platform in BMW: + # Check both platform name and doc names if name == str(platform): return platform + for doc in platform.config.car_docs: + if name == doc.name: + return platform return None found_car = find_car(selected_car.decode() if isinstance(selected_car, bytes) else selected_car) if found_car is not None: From 67e1baa3c5901659744e33273a73904ca783576b Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:04:50 +0100 Subject: [PATCH 016/155] fix --- opendbc_repo/opendbc/car/values.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py index 4c94b38a54..aeeb746a5f 100644 --- a/opendbc_repo/opendbc/car/values.py +++ b/opendbc_repo/opendbc/car/values.py @@ -13,14 +13,15 @@ from opendbc.car.tesla.values import CAR as TESLA from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN +from openpilot.selfdrive.car.bmw.values import CAR as BMW + # Import BMW from selfdrive since it's not in opendbc yet try: - from openpilot.selfdrive.car.bmw.values import CAR as BMW Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW except ImportError: BMW = type('CAR', (), {}) # Empty placeholder - Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN + Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW BRANDS = get_args(Platform) From faacfe7f5da02334aa850eb4d1373f7a89561781 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:05:37 +0100 Subject: [PATCH 017/155] or like this --- opendbc_repo/opendbc/car/values.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py index aeeb746a5f..2c28ff6f22 100644 --- a/opendbc_repo/opendbc/car/values.py +++ b/opendbc_repo/opendbc/car/values.py @@ -13,7 +13,7 @@ from opendbc.car.tesla.values import CAR as TESLA from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN -from openpilot.selfdrive.car.bmw.values import CAR as BMW +from opendbc.car.bmw.values import CAR as BMW # Import BMW from selfdrive since it's not in opendbc yet From 19289d8be57c2f633c2e2c486a31c85c1d2fb382 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:07:40 +0100 Subject: [PATCH 018/155] fix --- selfdrive/car/bmw/values.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py index 72d3e5b43b..9ba58da8bb 100644 --- a/selfdrive/car/bmw/values.py +++ b/selfdrive/car/bmw/values.py @@ -1,7 +1,7 @@ from dataclasses import dataclass, field from enum import Enum, IntFlag from cereal import car -from opendbc.car import Platforms, CarSpecs, PlatformConfig, dbc_dict, DbcDict, STD_CARGO_KG +from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column from opendbc.car.conversions import Conversions as CV @@ -64,7 +64,7 @@ def init_make(self, CP: car.CarParams): @dataclass class BmwPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: dbc_dict('bmw_e9x_e8x', None)) + dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) class CAR(Platforms): From 5d09d96b668f5218b75cb9583834b05f1e197b4d Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:11:17 +0100 Subject: [PATCH 019/155] fix --- opendbc_repo/opendbc/car/values.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py index 2c28ff6f22..4c94b38a54 100644 --- a/opendbc_repo/opendbc/car/values.py +++ b/opendbc_repo/opendbc/car/values.py @@ -13,15 +13,14 @@ from opendbc.car.tesla.values import CAR as TESLA from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN -from opendbc.car.bmw.values import CAR as BMW - # Import BMW from selfdrive since it's not in opendbc yet try: + from openpilot.selfdrive.car.bmw.values import CAR as BMW Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW except ImportError: BMW = type('CAR', (), {}) # Empty placeholder - Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW + Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN BRANDS = get_args(Platform) From 0f6fb63f18929791cbfd7212e97e57a98cae3935 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:12:21 +0100 Subject: [PATCH 020/155] fix --- opendbc_repo/opendbc/car/bmw/__init__.py | 0 opendbc_repo/opendbc/car/bmw/values.py | 91 ++++++++++++++++++++++++ opendbc_repo/opendbc/car/values.py | 9 +-- 3 files changed, 93 insertions(+), 7 deletions(-) create mode 100644 opendbc_repo/opendbc/car/bmw/__init__.py create mode 100644 opendbc_repo/opendbc/car/bmw/values.py diff --git a/opendbc_repo/opendbc/car/bmw/__init__.py b/opendbc_repo/opendbc/car/bmw/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py new file mode 100644 index 0000000000..9ba58da8bb --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -0,0 +1,91 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag +from cereal import car +from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from opendbc.car.conversions import Conversions as CV + +# Steer torque limits +class CarControllerParams: #controls running @ 100hz + STEER_STEP = 1 # 100Hz + STEER_MAX = 12 # Nm + STEER_DELTA_UP = 10 / 100 # 10Nm/s + STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit + STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor + + # STEER_BACKLASH = 1 #deg + def __init__(self, CP): + pass + +class BmwFlags(IntFlag): + # Detected Flags + STEPPER_SERVO_CAN = 2 ** 0 + NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 + DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 + ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported + ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 + ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 + SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query + +class CruiseSettings: + CLUSTER_OFFSET = 2 # kph + +class CanBus: + PT_CAN = 0 + SERVO_CAN = 0 # required for steering + F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging + K_CAN = 0 # not used - only logging + + +class Footnote(Enum): + StepperServoCAN = CarFootnote( + "Requires StepperServoCAN", + Column.FSR_STEERING) + DCC = CarFootnote( + "Minimum speed with CC or DCC is 30 kph", + Column.FSR_LONGITUDINAL) + CC = CarFootnote( + "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", + Column.PACKAGE) + ACC = CarFootnote( + "ACC is required. Also LDM module to take over when OP is off.", + Column.AUTO_RESUME) + DIY = CarFootnote( + "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", + Column.HARDWARE) + +@dataclass +class BmwCarDocs(CarDocs): + package: str = "Cruise Control - VO540, VO544, VO541" + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) + + def init_make(self, CP: car.CarParams): + self.car_parts = CarParts.common([CarHarness.custom]) + +@dataclass +class BmwPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) + + +class CAR(Platforms): + BMW_E82 = BmwPlatformConfig( + [BmwCarDocs("BMW E82 2004-13")], + CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + BMW_E90 = BmwPlatformConfig( + [BmwCarDocs("BMW E90 2005-11")], + CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + + +DBC = CAR.create_dbc_map() + + +if __name__ == '__main__': + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py index 4c94b38a54..1f8ea031ed 100644 --- a/opendbc_repo/opendbc/car/values.py +++ b/opendbc_repo/opendbc/car/values.py @@ -13,14 +13,9 @@ from opendbc.car.tesla.values import CAR as TESLA from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN +from opendbc.car.bmw.values import CAR as BMW -# Import BMW from selfdrive since it's not in opendbc yet -try: - from openpilot.selfdrive.car.bmw.values import CAR as BMW - Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW -except ImportError: - BMW = type('CAR', (), {}) # Empty placeholder - Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN +Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW BRANDS = get_args(Platform) From 0c02726bde00723497be6340eb6ec220c71b276b Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:14:09 +0100 Subject: [PATCH 021/155] fix --- opendbc_repo/opendbc/car/bmw/values.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index 9ba58da8bb..d672e7e8c2 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -3,7 +3,7 @@ from cereal import car from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.conversions import Conversions as CV +from opendbc.car.common.conversions import Conversions as CV # Steer torque limits class CarControllerParams: #controls running @ 100hz From 76f5de387efee81b038a9a0720a737ed609fc2b7 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:17:12 +0100 Subject: [PATCH 022/155] fix --- opendbc_repo/.github/labeler.yaml | 76 - .../.github/workflows/auto_pr_review.yaml | 50 - opendbc_repo/.github/workflows/release.yml | 34 - opendbc_repo/.github/workflows/repo.yml | 28 - opendbc_repo/.github/workflows/stale.yml | 30 - .../workflows/test_models_trigger.yaml | 60 - opendbc_repo/.github/workflows/tests.yml | 105 - .../.github/workflows/update-cars-docs.yml | 25 - opendbc_repo/.gitignore | 36 - opendbc_repo/LICENSE | 7 - opendbc_repo/MANIFEST.in | 3 - opendbc_repo/README.md | 196 - opendbc_repo/RELEASES.md | 13 - opendbc_repo/SConscript | 7 - opendbc_repo/SConstruct | 64 - opendbc_repo/conftest.py | 5 - opendbc_repo/docs/CARS.md | 439 - opendbc_repo/examples/joystick.py | 113 - opendbc_repo/examples/kbhit.py | 59 - opendbc_repo/lefthook.yml | 28 - opendbc_repo/opendbc/__init__.py | 6 - opendbc_repo/opendbc/can/__init__.py | 8 - opendbc_repo/opendbc/can/dbc.py | 212 - opendbc_repo/opendbc/can/packer.py | 67 - opendbc_repo/opendbc/can/parser.py | 283 - opendbc_repo/opendbc/can/tests/.gitignore | 1 - opendbc_repo/opendbc/can/tests/__init__.py | 8 - opendbc_repo/opendbc/can/tests/benchmark.py | 45 - opendbc_repo/opendbc/can/tests/test.dbc | 27 - .../opendbc/can/tests/test_checksums.py | 555 - .../opendbc/can/tests/test_dbc_exceptions.py | 29 - .../opendbc/can/tests/test_dbc_parser.py | 21 - opendbc_repo/opendbc/can/tests/test_define.py | 26 - .../opendbc/can/tests/test_packer_parser.py | 367 - opendbc_repo/opendbc/car/CARS_template.md | 78 - opendbc_repo/opendbc/car/__init__.py | 391 - opendbc_repo/opendbc/car/bmw/__init__.py | 0 opendbc_repo/opendbc/car/bmw/values.py | 91 - opendbc_repo/opendbc/car/body/__init__.py | 0 opendbc_repo/opendbc/car/body/bodycan.py | 20 - .../opendbc/car/body/carcontroller.py | 82 - opendbc_repo/opendbc/car/body/carstate.py | 35 - opendbc_repo/opendbc/car/body/fingerprints.py | 28 - opendbc_repo/opendbc/car/body/interface.py | 30 - opendbc_repo/opendbc/car/body/values.py | 40 - opendbc_repo/opendbc/car/can_definitions.py | 15 - opendbc_repo/opendbc/car/car.capnp | 813 - opendbc_repo/opendbc/car/car_helpers.py | 234 - opendbc_repo/opendbc/car/carlog.py | 12 - opendbc_repo/opendbc/car/ccp.py | 373 - opendbc_repo/opendbc/car/chrysler/__init__.py | 0 .../opendbc/car/chrysler/carcontroller.py | 83 - opendbc_repo/opendbc/car/chrysler/carstate.py | 115 - .../opendbc/car/chrysler/chryslercan.py | 112 - .../opendbc/car/chrysler/fingerprints.py | 783 - .../opendbc/car/chrysler/interface.py | 80 - .../opendbc/car/chrysler/radar_interface.py | 83 - opendbc_repo/opendbc/car/chrysler/values.py | 159 - opendbc_repo/opendbc/car/common/__init__.py | 0 opendbc_repo/opendbc/car/common/basedir.py | 4 - .../opendbc/car/common/conversions.py | 19 - .../opendbc/car/common/filter_simple.py | 18 - opendbc_repo/opendbc/car/common/pid.py | 70 - .../opendbc/car/common/simple_kalman.py | 54 - opendbc_repo/opendbc/car/crc.py | 30 - .../opendbc/car/debug/format_fingerprints.py | 82 - opendbc_repo/opendbc/car/disable_ecu.py | 36 - opendbc_repo/opendbc/car/docs.py | 105 - opendbc_repo/opendbc/car/docs_definitions.py | 419 - opendbc_repo/opendbc/car/ecu_addrs.py | 55 - opendbc_repo/opendbc/car/extra_cars.py | 72 - opendbc_repo/opendbc/car/fingerprints.py | 362 - opendbc_repo/opendbc/car/ford/__init__.py | 0 .../opendbc/car/ford/carcontroller.py | 179 - opendbc_repo/opendbc/car/ford/carstate.py | 127 - opendbc_repo/opendbc/car/ford/fingerprints.py | 223 - opendbc_repo/opendbc/car/ford/fordcan.py | 342 - opendbc_repo/opendbc/car/ford/interface.py | 98 - .../opendbc/car/ford/radar_interface.py | 274 - .../opendbc/car/ford/tests/__init__.py | 0 .../car/ford/tests/print_platform_codes.py | 28 - .../opendbc/car/ford/tests/test_ford.py | 142 - opendbc_repo/opendbc/car/ford/values.py | 316 - .../opendbc/car/fw_query_definitions.py | 152 - opendbc_repo/opendbc/car/fw_versions.py | 327 - opendbc_repo/opendbc/car/gm/__init__.py | 0 opendbc_repo/opendbc/car/gm/carcontroller.py | 332 - opendbc_repo/opendbc/car/gm/carstate.py | 228 - opendbc_repo/opendbc/car/gm/fingerprints.py | 216 - opendbc_repo/opendbc/car/gm/gmcan.py | 239 - opendbc_repo/opendbc/car/gm/interface.py | 399 - .../opendbc/car/gm/radar_interface.py | 100 - opendbc_repo/opendbc/car/gm/tests/__init__.py | 0 opendbc_repo/opendbc/car/gm/tests/test_gm.py | 20 - opendbc_repo/opendbc/car/gm/values.py | 365 - opendbc_repo/opendbc/car/honda/__init__.py | 0 .../opendbc/car/honda/carcontroller.py | 266 - opendbc_repo/opendbc/car/honda/carstate.py | 231 - .../opendbc/car/honda/fingerprints.py | 929 -- opendbc_repo/opendbc/car/honda/hondacan.py | 229 - opendbc_repo/opendbc/car/honda/interface.py | 228 - .../opendbc/car/honda/radar_interface.py | 80 - .../opendbc/car/honda/tests/__init__.py | 0 .../opendbc/car/honda/tests/test_honda.py | 14 - opendbc_repo/opendbc/car/honda/values.py | 347 - opendbc_repo/opendbc/car/hyundai/__init__.py | 0 .../opendbc/car/hyundai/carcontroller.py | 638 - opendbc_repo/opendbc/car/hyundai/carstate.py | 694 - .../opendbc/car/hyundai/fingerprints.py | 1322 -- .../opendbc/car/hyundai/hyundaican.py | 383 - .../opendbc/car/hyundai/hyundaicanfd.py | 1113 -- opendbc_repo/opendbc/car/hyundai/interface.py | 284 - .../opendbc/car/hyundai/radar_interface.py | 247 - .../opendbc/car/hyundai/tests/__init__.py | 0 .../car/hyundai/tests/print_platform_codes.py | 21 - .../opendbc/car/hyundai/tests/test_hyundai.py | 247 - opendbc_repo/opendbc/car/hyundai/values.py | 1011 -- opendbc_repo/opendbc/car/include/c++.capnp | 26 - opendbc_repo/opendbc/car/interfaces.py | 762 - opendbc_repo/opendbc/car/isotp.py | 140 - .../opendbc/car/isotp_parallel_query.py | 170 - opendbc_repo/opendbc/car/mazda/__init__.py | 0 .../opendbc/car/mazda/carcontroller.py | 113 - opendbc_repo/opendbc/car/mazda/carstate.py | 152 - .../opendbc/car/mazda/fingerprints.py | 267 - opendbc_repo/opendbc/car/mazda/interface.py | 33 - opendbc_repo/opendbc/car/mazda/mazdacan.py | 130 - opendbc_repo/opendbc/car/mazda/values.py | 113 - opendbc_repo/opendbc/car/mock/__init__.py | 0 .../opendbc/car/mock/carcontroller.py | 6 - opendbc_repo/opendbc/car/mock/carstate.py | 7 - opendbc_repo/opendbc/car/mock/interface.py | 21 - opendbc_repo/opendbc/car/mock/values.py | 9 - opendbc_repo/opendbc/car/nissan/__init__.py | 0 .../opendbc/car/nissan/carcontroller.py | 75 - opendbc_repo/opendbc/car/nissan/carstate.py | 143 - .../opendbc/car/nissan/fingerprints.py | 123 - opendbc_repo/opendbc/car/nissan/interface.py | 29 - opendbc_repo/opendbc/car/nissan/nissancan.py | 154 - opendbc_repo/opendbc/car/nissan/values.py | 124 - opendbc_repo/opendbc/car/panda_runner.py | 57 - opendbc_repo/opendbc/car/rivian/__init__.py | 0 .../opendbc/car/rivian/carcontroller.py | 57 - opendbc_repo/opendbc/car/rivian/carstate.py | 103 - .../opendbc/car/rivian/fingerprints.py | 12 - opendbc_repo/opendbc/car/rivian/interface.py | 37 - .../opendbc/car/rivian/radar_interface.py | 71 - opendbc_repo/opendbc/car/rivian/riviancan.py | 100 - .../opendbc/car/rivian/tests/__init__.py | 0 .../opendbc/car/rivian/tests/test_rivian.py | 23 - opendbc_repo/opendbc/car/rivian/values.py | 138 - opendbc_repo/opendbc/car/secoc.py | 47 - opendbc_repo/opendbc/car/structs.py | 20 - opendbc_repo/opendbc/car/subaru/__init__.py | 0 .../opendbc/car/subaru/carcontroller.py | 143 - opendbc_repo/opendbc/car/subaru/carstate.py | 138 - .../opendbc/car/subaru/fingerprints.py | 572 - opendbc_repo/opendbc/car/subaru/interface.py | 104 - opendbc_repo/opendbc/car/subaru/subarucan.py | 332 - .../opendbc/car/subaru/tests/__init__.py | 0 .../opendbc/car/subaru/tests/test_subaru.py | 10 - opendbc_repo/opendbc/car/subaru/values.py | 282 - opendbc_repo/opendbc/car/tesla/__init__.py | 0 .../opendbc/car/tesla/carcontroller.py | 55 - opendbc_repo/opendbc/car/tesla/carstate.py | 101 - .../opendbc/car/tesla/fingerprints.py | 37 - opendbc_repo/opendbc/car/tesla/interface.py | 34 - opendbc_repo/opendbc/car/tesla/teslacan.py | 66 - opendbc_repo/opendbc/car/tesla/values.py | 111 - opendbc_repo/opendbc/car/tests/__init__.py | 0 opendbc_repo/opendbc/car/tests/routes.py | 319 - .../opendbc/car/tests/test_can_fingerprint.py | 55 - .../opendbc/car/tests/test_car_interfaces.py | 148 - opendbc_repo/opendbc/car/tests/test_docs.py | 77 - .../opendbc/car/tests/test_fw_fingerprint.py | 327 - .../opendbc/car/tests/test_lateral_limits.py | 96 - .../car/tests/test_platform_configs.py | 17 - opendbc_repo/opendbc/car/tests/test_routes.py | 11 - .../opendbc/car/tests/test_vehicle_model.py | 67 - .../torque_data/lat_models/ACURA_RDX_3G.json | 1 - .../torque_data/lat_models/AUDI_A3_MK3.json | 1 - .../torque_data/lat_models/AUDI_Q3_MK2.json | 1 - .../lat_models/BUICK_LACROSSE.json | 1 - .../lat_models/CHEVROLET_EQUINOX.json | 1 - .../lat_models/CHEVROLET_EQUINOX_CC.json | 1 - .../lat_models/CHEVROLET_SILVERADO.json | 1 - .../lat_models/CHEVROLET_SUBURBAN.json | 1 - .../lat_models/CHEVROLET_SUBURBAN_CC.json | 1 - .../lat_models/CHEVROLET_TRAILBLAZER.json | 1 - .../lat_models/CHEVROLET_VOLT.json | 1 - .../CHRYSLER_PACIFICA_2017_HYBRID.json | 1 - .../CHRYSLER_PACIFICA_2018_HYBRID.json | 1 - .../CHRYSLER_PACIFICA_2019_HYBRID.json | 1 - .../lat_models/CHRYSLER_PACIFICA_2020.json | 1 - .../torque_data/lat_models/GENESIS_G70.json | 1 - .../lat_models/GENESIS_GV60_EV_1ST_GEN.json | 1 - .../lat_models/GENESIS_GV70_1ST_GEN.json | 1 - .../torque_data/lat_models/GMC_ACADIA.json | 1 - .../torque_data/lat_models/HONDA_ACCORD.json | 1 - .../torque_data/lat_models/HONDA_CIVIC.json | 1 - .../lat_models/HONDA_CIVIC_2022.json | 1 - .../lat_models/HONDA_CIVIC_BOSCH.json | 1 - .../torque_data/lat_models/HONDA_CLARITY.json | 1 - .../torque_data/lat_models/HONDA_CRV_5G.json | 1 - .../lat_models/HONDA_CRV_HYBRID.json | 1 - .../car/torque_data/lat_models/HONDA_HRV.json | 1 - .../torque_data/lat_models/HONDA_INSIGHT.json | 1 - .../torque_data/lat_models/HONDA_ODYSSEY.json | 1 - .../torque_data/lat_models/HONDA_PILOT.json | 1 - .../lat_models/HONDA_RIDGELINE.json | 1 - .../lat_models/HYUNDAI_ELANTRA_2021.json | 1 - .../lat_models/HYUNDAI_ELANTRA_HEV_2021.json | 1 - .../lat_models/HYUNDAI_GENESIS.json | 1 - .../lat_models/HYUNDAI_IONIQ_5.json | 1 - .../lat_models/HYUNDAI_IONIQ_EV_LTD.json | 1 - .../lat_models/HYUNDAI_IONIQ_PHEV.json | 1 - .../lat_models/HYUNDAI_KONA_EV.json | 1 - .../lat_models/HYUNDAI_KONA_EV_2022.json | 1 - .../lat_models/HYUNDAI_KONA_HEV.json | 1 - .../lat_models/HYUNDAI_PALISADE.json | 1 - .../lat_models/HYUNDAI_SANTA_FE.json | 1 - .../lat_models/HYUNDAI_SANTA_FE_2022.json | 1 - .../lat_models/HYUNDAI_SANTA_FE_HEV_2022.json | 1 - .../HYUNDAI_SANTA_FE_PHEV_2022.json | 1 - .../lat_models/HYUNDAI_SONATA.json | 1 - .../lat_models/HYUNDAI_SONATA_HYBRID.json | 1 - .../lat_models/HYUNDAI_SONATA_LF.json | 1 - .../lat_models/HYUNDAI_TUCSON_4TH_GEN.json | 1 - .../lat_models/JEEP_GRAND_CHEROKEE.json | 1 - .../lat_models/JEEP_GRAND_CHEROKEE_2019.json | 1 - .../car/torque_data/lat_models/KIA_CEED.json | 1 - .../car/torque_data/lat_models/KIA_EV6.json | 1 - .../torque_data/lat_models/KIA_K5_2021.json | 1 - .../torque_data/lat_models/KIA_NIRO_EV.json | 1 - .../lat_models/KIA_NIRO_HEV_2021.json | 1 - .../lat_models/KIA_NIRO_HEV_2ND_GEN.json | 1 - .../lat_models/KIA_OPTIMA_G4_FL.json | 1 - .../torque_data/lat_models/KIA_SELTOS.json | 1 - .../torque_data/lat_models/KIA_SORENTO.json | 1 - .../lat_models/KIA_SORENTO_4TH_GEN.json | 1 - .../lat_models/KIA_SORENTO_HEV_4TH_GEN.json | 1 - .../lat_models/KIA_SPORTAGE_5TH_GEN.json | 1 - .../torque_data/lat_models/KIA_STINGER.json | 1 - .../lat_models/KIA_STINGER_2022.json | 1 - .../torque_data/lat_models/LEXUS_ES_TSS2.json | 1 - .../car/torque_data/lat_models/LEXUS_IS.json | 1 - .../car/torque_data/lat_models/LEXUS_NX.json | 1 - .../torque_data/lat_models/LEXUS_NX_TSS2.json | 1 - .../car/torque_data/lat_models/LEXUS_RX.json | 1 - .../torque_data/lat_models/LEXUS_RX_TSS2.json | 1 - .../car/torque_data/lat_models/MAZDA_3.json | 1 - .../lat_models/MAZDA_CX5_2022.json | 1 - .../lat_models/MAZDA_CX9 2021.json | 1 - .../car/torque_data/lat_models/MAZDA_CX9.json | 1 - .../lat_models/RAM_1500_5TH_GEN.json | 1 - .../lat_models/RAM_HD_5TH_GEN.json | 1 - .../lat_models/SKODA_KAROQ_MK1.json | 1 - .../lat_models/SKODA_KODIAQ_MK1.json | 1 - .../lat_models/SKODA_OCTAVIA_MK3.json | 1 - .../lat_models/SKODA_SUPERB_MK3.json | 1 - .../torque_data/lat_models/SUBARU_ASCENT.json | 1 - .../lat_models/SUBARU_FORESTER.json | 1 - .../lat_models/SUBARU_IMPREZA.json | 1 - .../lat_models/SUBARU_IMPREZA_2020.json | 1 - .../torque_data/lat_models/SUBARU_LEGACY.json | 1 - .../lat_models/SUBARU_LEGACY_PREGLOBAL.json | 1 - .../lat_models/SUBARU_OUTBACK.json | 1 - .../lat_models/SUBARU_OUTBACK_PREGLOBAL.json | 1 - .../torque_data/lat_models/TOYOTA_AVALON.json | 1 - .../lat_models/TOYOTA_AVALON_2019.json | 1 - .../lat_models/TOYOTA_AVALON_TSS2.json | 1 - .../torque_data/lat_models/TOYOTA_CAMRY.json | 1 - .../lat_models/TOYOTA_CAMRY_TSS2.json | 1 - .../torque_data/lat_models/TOYOTA_CHR.json | 1 - .../lat_models/TOYOTA_CHR_TSS2.json | 1 - .../lat_models/TOYOTA_COROLLA.json | 1 - .../lat_models/TOYOTA_COROLLA_TSS2.json | 120 - .../lat_models/TOYOTA_HIGHLANDER.json | 1 - .../lat_models/TOYOTA_HIGHLANDER_TSS2.json | 1 - .../torque_data/lat_models/TOYOTA_MIRAI.json | 1 - .../torque_data/lat_models/TOYOTA_PRIUS.json | 1 - ..._2017_b'8965B47070x00x00x00x00x00x00'.json | 1 - .../lat_models/TOYOTA_PRIUS_TSS2.json | 1 - .../lat_models/TOYOTA_PRIUS_V.json | 1 - .../torque_data/lat_models/TOYOTA_RAV4.json | 1 - .../torque_data/lat_models/TOYOTA_RAV4H.json | 1 - .../lat_models/TOYOTA_RAV4_TSS2.json | 1 - .../lat_models/TOYOTA_RAV4_TSS2_2022.json | 1 - .../torque_data/lat_models/TOYOTA_SIENNA.json | 1 - .../lat_models/VOLKSWAGEN_ARTEON_MK1.json | 1 - .../lat_models/VOLKSWAGEN_ATLAS_MK1.json | 1 - .../lat_models/VOLKSWAGEN_GOLF_MK7.json | 1 - .../lat_models/VOLKSWAGEN_JETTA_MK7.json | 1 - .../lat_models/VOLKSWAGEN_PASSAT_MK8.json | 1 - .../lat_models/VOLKSWAGEN_PASSAT_NMS.json | 1 - .../lat_models/VOLKSWAGEN_TIGUAN_MK2.json | 1 - .../car/torque_data/neural_ff_weights.json | 5 - .../opendbc/car/torque_data/override.toml | 115 - .../opendbc/car/torque_data/params.toml | 89 - .../opendbc/car/torque_data/substitute.toml | 100 - opendbc_repo/opendbc/car/toyota/__init__.py | 0 .../opendbc/car/toyota/carcontroller.py | 299 - opendbc_repo/opendbc/car/toyota/carstate.py | 204 - .../opendbc/car/toyota/fingerprints.py | 1803 --- opendbc_repo/opendbc/car/toyota/interface.py | 160 - .../opendbc/car/toyota/radar_interface.py | 93 - .../opendbc/car/toyota/tests/__init__.py | 0 .../car/toyota/tests/print_platform_codes.py | 31 - .../opendbc/car/toyota/tests/test_toyota.py | 167 - opendbc_repo/opendbc/car/toyota/toyotacan.py | 159 - opendbc_repo/opendbc/car/toyota/values.py | 632 - opendbc_repo/opendbc/car/uds.py | 941 -- opendbc_repo/opendbc/car/values.py | 22 - opendbc_repo/opendbc/car/vehicle_model.py | 230 - opendbc_repo/opendbc/car/vin.py | 75 - .../opendbc/car/volkswagen/__init__.py | 0 .../opendbc/car/volkswagen/carcontroller.py | 126 - .../opendbc/car/volkswagen/carstate.py | 280 - .../opendbc/car/volkswagen/fingerprints.py | 1247 -- .../opendbc/car/volkswagen/interface.py | 90 - opendbc_repo/opendbc/car/volkswagen/mqbcan.py | 258 - opendbc_repo/opendbc/car/volkswagen/pqcan.py | 105 - .../opendbc/car/volkswagen/tests/__init__.py | 0 .../car/volkswagen/tests/test_volkswagen.py | 60 - opendbc_repo/opendbc/car/volkswagen/values.py | 528 - opendbc_repo/opendbc/car/xcp.py | 258 - opendbc_repo/opendbc/dbc/ESR.dbc | 1080 -- opendbc_repo/opendbc/dbc/FORD_CADS.dbc | 3544 ----- opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc | 7289 --------- opendbc_repo/opendbc/dbc/README.md | 49 - opendbc_repo/opendbc/dbc/SConscript | 30 - opendbc_repo/opendbc/dbc/__init__.py | 0 .../opendbc/dbc/acura_ilx_2016_nidec.dbc | 185 - opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 916 -- .../opendbc/dbc/cadillac_ct6_chassis.dbc | 95 - .../opendbc/dbc/cadillac_ct6_object.dbc | 3470 ----- .../opendbc/dbc/cadillac_ct6_powertrain.dbc | 248 - opendbc_repo/opendbc/dbc/chrysler_cusw.dbc | 192 - ...er_pacifica_2017_hybrid_private_fusion.dbc | 230 - opendbc_repo/opendbc/dbc/comma_body.dbc | 89 - opendbc_repo/opendbc/dbc/fca_giorgio.dbc | 243 - .../opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc | 1070 -- .../opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc | 1487 -- .../opendbc/dbc/ford_fusion_2018_adas.dbc | 421 - .../opendbc/dbc/ford_fusion_2018_pt.dbc | 139 - .../opendbc/dbc/ford_lincoln_base_pt.dbc | 12717 ---------------- .../opendbc/dbc/generator/chrysler/.gitignore | 1 - .../generator/chrysler/_stellantis_common.dbc | 185 - .../chrysler/_stellantis_common_ram.py | 54 - .../chrysler_pacifica_2017_hybrid.dbc | 172 - .../generator/chrysler/chrysler_ram_dt.dbc | 57 - .../generator/chrysler/chrysler_ram_hd.dbc | 17 - .../dbc/generator/ford/FORD_CADS_64.sh | 2845 ---- .../opendbc/dbc/generator/generator.py | 64 - .../opendbc/dbc/generator/gm/_community.dbc | 15 - .../generator/gm/gm_global_a_powertrain.dbc | 353 - .../dbc/generator/honda/_bosch_2018.dbc | 232 - .../dbc/generator/honda/_bosch_adas_2018.dbc | 57 - .../dbc/generator/honda/_community.dbc | 15 - .../dbc/generator/honda/_honda_common.dbc | 163 - .../dbc/generator/honda/_nidec_common.dbc | 96 - .../generator/honda/_steering_sensors_a.dbc | 9 - .../generator/honda/_steering_sensors_b.dbc | 5 - .../generator/honda/acura_ilx_2016_can.dbc | 50 - .../generator/honda/acura_rdx_2018_can.dbc | 46 - .../generator/honda/acura_rdx_2020_can.dbc | 32 - .../generator/honda/honda_accord_2018_can.dbc | 55 - .../honda/honda_civic_ex_2022_can.dbc | 107 - .../honda_civic_hatchback_ex_2017_can.dbc | 37 - .../honda/honda_civic_touring_2016_can.dbc | 95 - .../honda/honda_clarity_hybrid_2018_can.dbc | 113 - .../honda/honda_crv_ex_2017_body.dbc | 10 - .../generator/honda/honda_crv_ex_2017_can.dbc | 40 - .../honda/honda_crv_executive_2016_can.dbc | 51 - .../honda/honda_crv_touring_2016_can.dbc | 49 - .../generator/honda/honda_fit_ex_2018_can.dbc | 59 - .../honda/honda_fit_hybrid_2018_can.dbc | 80 - .../honda/honda_insight_ex_2019_can.dbc | 19 - .../honda/honda_odyssey_exl_2018.dbc | 86 - ...odyssey_extreme_edition_2018_china_can.dbc | 74 - .../generator/honda/honda_pilot_2023_can.dbc | 92 - .../opendbc/dbc/generator/hyundai/.gitignore | 2 - .../dbc/generator/hyundai/_hyundai_common.dbc | 235 - .../dbc/generator/hyundai/hyundai_canfd.dbc | 1077 -- .../generator/hyundai/hyundai_canfd_radar.py | 95 - .../hyundai/hyundai_kia_mando_corner_radar.py | 170 - .../hyundai/hyundai_kia_mando_front_radar.py | 61 - .../hyundai/hyundai_palisade_2023.dbc | 865 -- .../dbc/generator/nissan/_nissan_common.dbc | 113 - .../dbc/generator/nissan/nissan_leaf_2018.dbc | 62 - .../generator/nissan/nissan_x_trail_2017.dbc | 69 - .../opendbc/dbc/generator/rivian/.gitignore | 1 - .../rivian/rivian_mando_front_radar.py | 59 - .../dbc/generator/subaru/_subaru_global.dbc | 302 - .../subaru/_subaru_preglobal_2015.dbc | 245 - .../generator/subaru/subaru_forester_2017.dbc | 18 - .../generator/subaru/subaru_global_2017.dbc | 65 - .../subaru/subaru_global_2020_hybrid.dbc | 18 - .../generator/subaru/subaru_outback_2015.dbc | 30 - .../generator/subaru/subaru_outback_2019.dbc | 30 - .../opendbc/dbc/generator/tesla/.gitignore | 1 - .../dbc/generator/tesla/_radar_common.py | 38 - .../dbc/generator/tesla/tesla_radar_bosch.py | 282 - .../tesla/tesla_radar_continental.py | 77 - .../dbc/generator/toyota/_community.dbc | 41 - .../dbc/generator/toyota/_toyota_2017.dbc | 548 - .../toyota/_toyota_adas_standard.dbc | 56 - .../dbc/generator/toyota/toyota_new_mc_pt.dbc | 22 - .../dbc/generator/toyota/toyota_nodsu_pt.dbc | 78 - .../dbc/generator/toyota/toyota_secoc_pt.dbc | 156 - .../dbc/generator/toyota/toyota_tnga_k_pt.dbc | 20 - .../opendbc/dbc/gm_global_a_chassis.dbc | 75 - .../gm_global_a_high_voltage_management.dbc | 196 - .../opendbc/dbc/gm_global_a_lowspeed.dbc | 118 - .../dbc/gm_global_a_lowspeed_1818125.dbc | 3993 ----- .../opendbc/dbc/gm_global_a_object.dbc | 724 - .../dbc/gm_global_a_powertrain_expansion.dbc | 56 - .../dbc/gm_global_a_powertrain_volt.dbc | 352 - opendbc_repo/opendbc/dbc/hongqi_hs5.dbc | 160 - .../opendbc/dbc/hyundai_2015_ccan.dbc | 1416 -- .../opendbc/dbc/hyundai_2015_mcan.dbc | 1564 -- opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc | 549 - .../opendbc/dbc/hyundai_kia_generic.dbc | 1703 --- .../opendbc/dbc/hyundai_santafe_2007.dbc | 118 - opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc | 153 - opendbc_repo/opendbc/dbc/mazda_2017.dbc | 791 - opendbc_repo/opendbc/dbc/mazda_3_2019.dbc | 408 - opendbc_repo/opendbc/dbc/mazda_radar.dbc | 73 - opendbc_repo/opendbc/dbc/mazda_rx8.dbc | 77 - .../opendbc/dbc/mercedes_benz_e350_2010.dbc | 176 - .../opendbc/dbc/nissan_xterra_2011.dbc | 96 - opendbc_repo/opendbc/dbc/ocelot_controls.dbc | 113 - opendbc_repo/opendbc/dbc/opel_omega_2001.dbc | 104 - .../opendbc/dbc/rivian_primary_actuator.dbc | 1019 -- opendbc_repo/opendbc/dbc/tesla_can.dbc | 901 -- .../opendbc/dbc/tesla_model3_party.dbc | 429 - .../opendbc/dbc/tesla_model3_vehicle.dbc | 339 - opendbc_repo/opendbc/dbc/tesla_powertrain.dbc | 179 - .../opendbc/dbc/toyota_2017_ref_pt.dbc | 1638 -- opendbc_repo/opendbc/dbc/toyota_adas.dbc | 276 - .../opendbc/dbc/toyota_iQ_2009_can.dbc | 196 - .../opendbc/dbc/toyota_prius_2010_pt.dbc | 203 - .../opendbc/dbc/toyota_radar_dsu_tssp.dbc | 194 - opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc | 285 - .../opendbc/dbc/volvo_v40_2017_pt.dbc | 363 - .../opendbc/dbc/volvo_v60_2015_pt.dbc | 298 - opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc | 1676 -- opendbc_repo/opendbc/dbc/vw_meb.dbc | 3408 ----- opendbc_repo/opendbc/dbc/vw_mqb.dbc | 1773 --- opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc | 1773 --- opendbc_repo/opendbc/dbc/vw_mqbevo.dbc | 1612 -- opendbc_repo/opendbc/dbc/vw_pq.dbc | 1676 -- opendbc_repo/opendbc/safety/__init__.py | 11 - opendbc_repo/opendbc/safety/board/can.h | 4 - .../opendbc/safety/board/can_declarations.h | 27 - .../opendbc/safety/board/drivers/can_common.h | 18 - .../board/drivers/can_common_declarations.h | 4 - opendbc_repo/opendbc/safety/board/fake_stm.h | 29 - opendbc_repo/opendbc/safety/board/faults.h | 25 - .../safety/board/faults_declarations.h | 18 - opendbc_repo/opendbc/safety/board/utils.h | 47 - opendbc_repo/opendbc/safety/main.c | 12 - opendbc_repo/opendbc/safety/safety.h | 851 -- .../opendbc/safety/safety/safety_body.h | 50 - .../opendbc/safety/safety/safety_chrysler.h | 304 - .../opendbc/safety/safety/safety_defaults.h | 76 - .../opendbc/safety/safety/safety_elm327.h | 42 - .../opendbc/safety/safety/safety_ford.h | 434 - .../opendbc/safety/safety/safety_gm.h | 383 - .../opendbc/safety/safety/safety_honda.h | 461 - .../opendbc/safety/safety/safety_hyundai.h | 522 - .../safety/safety/safety_hyundai_canfd.h | 627 - .../safety/safety/safety_hyundai_common.h | 148 - .../opendbc/safety/safety/safety_mazda.h | 131 - .../opendbc/safety/safety/safety_nissan.h | 164 - .../opendbc/safety/safety/safety_rivian.h | 162 - .../opendbc/safety/safety/safety_subaru.h | 293 - .../safety/safety/safety_subaru_preglobal.h | 129 - .../opendbc/safety/safety/safety_tesla.h | 214 - .../opendbc/safety/safety/safety_toyota.h | 414 - .../safety/safety/safety_volkswagen_common.h | 71 - .../safety/safety/safety_volkswagen_mqb.h | 248 - .../safety/safety/safety_volkswagen_pq.h | 259 - .../opendbc/safety/safety_declarations.h | 294 - opendbc_repo/opendbc/safety/tests/__init__.py | 0 opendbc_repo/opendbc/safety/tests/common.py | 993 -- .../opendbc/safety/tests/hyundai_common.py | 155 - .../opendbc/safety/tests/install_mull.sh | 11 - .../opendbc/safety/tests/libsafety/SConscript | 56 - .../safety/tests/libsafety/__init__.py | 0 .../safety/tests/libsafety/libsafety_py.py | 75 - .../opendbc/safety/tests/libsafety/safety.c | 13 - .../safety/tests/libsafety/safety_helpers.h | 183 - .../safety/tests/libsafety/safety_helpers.py | 102 - .../opendbc/safety/tests/misra/.gitignore | 5 - .../opendbc/safety/tests/misra/checkers.txt | 911 -- .../opendbc/safety/tests/misra/coverage_table | 156 - .../opendbc/safety/tests/misra/install.sh | 18 - .../safety/tests/misra/suppressions.txt | 21 - .../opendbc/safety/tests/misra/test_misra.sh | 86 - .../safety/tests/misra/test_mutation.py | 69 - opendbc_repo/opendbc/safety/tests/mutation.sh | 16 - .../safety/tests/safety_replay/__init__.py | 0 .../safety/tests/safety_replay/helpers.py | 98 - .../tests/safety_replay/replay_drive.py | 96 - opendbc_repo/opendbc/safety/tests/test.sh | 34 - .../opendbc/safety/tests/test_body.py | 70 - .../opendbc/safety/tests/test_chrysler.py | 125 - .../opendbc/safety/tests/test_defaults.py | 74 - .../opendbc/safety/tests/test_elm327.py | 49 - .../opendbc/safety/tests/test_ford.py | 514 - opendbc_repo/opendbc/safety/tests/test_gm.py | 228 - .../opendbc/safety/tests/test_honda.py | 573 - .../opendbc/safety/tests/test_hyundai.py | 273 - .../safety/tests/test_hyundai_canfd.py | 286 - .../opendbc/safety/tests/test_mazda.py | 86 - .../opendbc/safety/tests/test_nissan.py | 118 - .../opendbc/safety/tests/test_rivian.py | 109 - .../opendbc/safety/tests/test_subaru.py | 228 - .../safety/tests/test_subaru_preglobal.py | 70 - .../opendbc/safety/tests/test_tesla.py | 174 - .../opendbc/safety/tests/test_toyota.py | 356 - .../safety/tests/test_volkswagen_mqb.py | 223 - .../safety/tests/test_volkswagen_pq.py | 198 - opendbc_repo/pyproject.toml | 124 - opendbc_repo/setup.sh | 19 - opendbc_repo/site_scons/site_tools/cython.py | 72 - opendbc_repo/test.sh | 18 - selfdrive/car/bmw/__init__.py | 0 selfdrive/car/bmw/bmwcan.py | 75 - selfdrive/car/bmw/carcontroller.py | 193 - selfdrive/car/bmw/carstate.py | 189 - selfdrive/car/bmw/fingerprints.py | 35 - selfdrive/car/bmw/interface.py | 173 - selfdrive/car/bmw/radar_interface.py | 4 - selfdrive/car/bmw/tests/__init__.py | 0 selfdrive/car/bmw/tests/test_bmw.py | 37 - selfdrive/car/bmw/values.py | 91 - 538 files changed, 124456 deletions(-) delete mode 100644 opendbc_repo/.github/labeler.yaml delete mode 100644 opendbc_repo/.github/workflows/auto_pr_review.yaml delete mode 100644 opendbc_repo/.github/workflows/release.yml delete mode 100644 opendbc_repo/.github/workflows/repo.yml delete mode 100644 opendbc_repo/.github/workflows/stale.yml delete mode 100644 opendbc_repo/.github/workflows/test_models_trigger.yaml delete mode 100644 opendbc_repo/.github/workflows/tests.yml delete mode 100644 opendbc_repo/.github/workflows/update-cars-docs.yml delete mode 100644 opendbc_repo/.gitignore delete mode 100644 opendbc_repo/LICENSE delete mode 100644 opendbc_repo/MANIFEST.in delete mode 100644 opendbc_repo/README.md delete mode 100644 opendbc_repo/RELEASES.md delete mode 100644 opendbc_repo/SConscript delete mode 100644 opendbc_repo/SConstruct delete mode 100644 opendbc_repo/conftest.py delete mode 100644 opendbc_repo/docs/CARS.md delete mode 100755 opendbc_repo/examples/joystick.py delete mode 100755 opendbc_repo/examples/kbhit.py delete mode 100644 opendbc_repo/lefthook.yml delete mode 100644 opendbc_repo/opendbc/__init__.py delete mode 100644 opendbc_repo/opendbc/can/__init__.py delete mode 100644 opendbc_repo/opendbc/can/dbc.py delete mode 100644 opendbc_repo/opendbc/can/packer.py delete mode 100644 opendbc_repo/opendbc/can/parser.py delete mode 100644 opendbc_repo/opendbc/can/tests/.gitignore delete mode 100644 opendbc_repo/opendbc/can/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/can/tests/benchmark.py delete mode 100644 opendbc_repo/opendbc/can/tests/test.dbc delete mode 100644 opendbc_repo/opendbc/can/tests/test_checksums.py delete mode 100644 opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py delete mode 100644 opendbc_repo/opendbc/can/tests/test_dbc_parser.py delete mode 100644 opendbc_repo/opendbc/can/tests/test_define.py delete mode 100644 opendbc_repo/opendbc/can/tests/test_packer_parser.py delete mode 100644 opendbc_repo/opendbc/car/CARS_template.md delete mode 100644 opendbc_repo/opendbc/car/__init__.py delete mode 100644 opendbc_repo/opendbc/car/bmw/__init__.py delete mode 100644 opendbc_repo/opendbc/car/bmw/values.py delete mode 100644 opendbc_repo/opendbc/car/body/__init__.py delete mode 100644 opendbc_repo/opendbc/car/body/bodycan.py delete mode 100644 opendbc_repo/opendbc/car/body/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/body/carstate.py delete mode 100644 opendbc_repo/opendbc/car/body/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/body/interface.py delete mode 100644 opendbc_repo/opendbc/car/body/values.py delete mode 100644 opendbc_repo/opendbc/car/can_definitions.py delete mode 100644 opendbc_repo/opendbc/car/car.capnp delete mode 100644 opendbc_repo/opendbc/car/car_helpers.py delete mode 100644 opendbc_repo/opendbc/car/carlog.py delete mode 100644 opendbc_repo/opendbc/car/ccp.py delete mode 100644 opendbc_repo/opendbc/car/chrysler/__init__.py delete mode 100644 opendbc_repo/opendbc/car/chrysler/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/chrysler/carstate.py delete mode 100644 opendbc_repo/opendbc/car/chrysler/chryslercan.py delete mode 100644 opendbc_repo/opendbc/car/chrysler/fingerprints.py delete mode 100755 opendbc_repo/opendbc/car/chrysler/interface.py delete mode 100755 opendbc_repo/opendbc/car/chrysler/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/chrysler/values.py delete mode 100644 opendbc_repo/opendbc/car/common/__init__.py delete mode 100644 opendbc_repo/opendbc/car/common/basedir.py delete mode 100644 opendbc_repo/opendbc/car/common/conversions.py delete mode 100644 opendbc_repo/opendbc/car/common/filter_simple.py delete mode 100644 opendbc_repo/opendbc/car/common/pid.py delete mode 100644 opendbc_repo/opendbc/car/common/simple_kalman.py delete mode 100644 opendbc_repo/opendbc/car/crc.py delete mode 100644 opendbc_repo/opendbc/car/debug/format_fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/disable_ecu.py delete mode 100755 opendbc_repo/opendbc/car/docs.py delete mode 100644 opendbc_repo/opendbc/car/docs_definitions.py delete mode 100644 opendbc_repo/opendbc/car/ecu_addrs.py delete mode 100644 opendbc_repo/opendbc/car/extra_cars.py delete mode 100644 opendbc_repo/opendbc/car/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/ford/__init__.py delete mode 100644 opendbc_repo/opendbc/car/ford/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/ford/carstate.py delete mode 100644 opendbc_repo/opendbc/car/ford/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/ford/fordcan.py delete mode 100644 opendbc_repo/opendbc/car/ford/interface.py delete mode 100644 opendbc_repo/opendbc/car/ford/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/ford/tests/__init__.py delete mode 100755 opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py delete mode 100644 opendbc_repo/opendbc/car/ford/tests/test_ford.py delete mode 100644 opendbc_repo/opendbc/car/ford/values.py delete mode 100644 opendbc_repo/opendbc/car/fw_query_definitions.py delete mode 100644 opendbc_repo/opendbc/car/fw_versions.py delete mode 100644 opendbc_repo/opendbc/car/gm/__init__.py delete mode 100644 opendbc_repo/opendbc/car/gm/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/gm/carstate.py delete mode 100644 opendbc_repo/opendbc/car/gm/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/gm/gmcan.py delete mode 100644 opendbc_repo/opendbc/car/gm/interface.py delete mode 100755 opendbc_repo/opendbc/car/gm/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/gm/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/car/gm/tests/test_gm.py delete mode 100644 opendbc_repo/opendbc/car/gm/values.py delete mode 100644 opendbc_repo/opendbc/car/honda/__init__.py delete mode 100644 opendbc_repo/opendbc/car/honda/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/honda/carstate.py delete mode 100644 opendbc_repo/opendbc/car/honda/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/honda/hondacan.py delete mode 100755 opendbc_repo/opendbc/car/honda/interface.py delete mode 100755 opendbc_repo/opendbc/car/honda/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/honda/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/car/honda/tests/test_honda.py delete mode 100644 opendbc_repo/opendbc/car/honda/values.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/__init__.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/carstate.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/hyundaican.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/interface.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/tests/__init__.py delete mode 100755 opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py delete mode 100644 opendbc_repo/opendbc/car/hyundai/values.py delete mode 100644 opendbc_repo/opendbc/car/include/c++.capnp delete mode 100644 opendbc_repo/opendbc/car/interfaces.py delete mode 100644 opendbc_repo/opendbc/car/isotp.py delete mode 100644 opendbc_repo/opendbc/car/isotp_parallel_query.py delete mode 100644 opendbc_repo/opendbc/car/mazda/__init__.py delete mode 100644 opendbc_repo/opendbc/car/mazda/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/mazda/carstate.py delete mode 100644 opendbc_repo/opendbc/car/mazda/fingerprints.py delete mode 100755 opendbc_repo/opendbc/car/mazda/interface.py delete mode 100644 opendbc_repo/opendbc/car/mazda/mazdacan.py delete mode 100644 opendbc_repo/opendbc/car/mazda/values.py delete mode 100644 opendbc_repo/opendbc/car/mock/__init__.py delete mode 100644 opendbc_repo/opendbc/car/mock/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/mock/carstate.py delete mode 100755 opendbc_repo/opendbc/car/mock/interface.py delete mode 100644 opendbc_repo/opendbc/car/mock/values.py delete mode 100644 opendbc_repo/opendbc/car/nissan/__init__.py delete mode 100644 opendbc_repo/opendbc/car/nissan/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/nissan/carstate.py delete mode 100644 opendbc_repo/opendbc/car/nissan/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/nissan/interface.py delete mode 100644 opendbc_repo/opendbc/car/nissan/nissancan.py delete mode 100644 opendbc_repo/opendbc/car/nissan/values.py delete mode 100644 opendbc_repo/opendbc/car/panda_runner.py delete mode 100644 opendbc_repo/opendbc/car/rivian/__init__.py delete mode 100644 opendbc_repo/opendbc/car/rivian/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/rivian/carstate.py delete mode 100644 opendbc_repo/opendbc/car/rivian/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/rivian/interface.py delete mode 100644 opendbc_repo/opendbc/car/rivian/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/rivian/riviancan.py delete mode 100644 opendbc_repo/opendbc/car/rivian/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/car/rivian/tests/test_rivian.py delete mode 100644 opendbc_repo/opendbc/car/rivian/values.py delete mode 100644 opendbc_repo/opendbc/car/secoc.py delete mode 100644 opendbc_repo/opendbc/car/structs.py delete mode 100644 opendbc_repo/opendbc/car/subaru/__init__.py delete mode 100644 opendbc_repo/opendbc/car/subaru/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/subaru/carstate.py delete mode 100644 opendbc_repo/opendbc/car/subaru/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/subaru/interface.py delete mode 100644 opendbc_repo/opendbc/car/subaru/subarucan.py delete mode 100644 opendbc_repo/opendbc/car/subaru/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/car/subaru/tests/test_subaru.py delete mode 100644 opendbc_repo/opendbc/car/subaru/values.py delete mode 100644 opendbc_repo/opendbc/car/tesla/__init__.py delete mode 100644 opendbc_repo/opendbc/car/tesla/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/tesla/carstate.py delete mode 100644 opendbc_repo/opendbc/car/tesla/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/tesla/interface.py delete mode 100644 opendbc_repo/opendbc/car/tesla/teslacan.py delete mode 100644 opendbc_repo/opendbc/car/tesla/values.py delete mode 100644 opendbc_repo/opendbc/car/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/car/tests/routes.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_can_fingerprint.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_car_interfaces.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_docs.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py delete mode 100755 opendbc_repo/opendbc/car/tests/test_lateral_limits.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_platform_configs.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_routes.py delete mode 100644 opendbc_repo/opendbc/car/tests/test_vehicle_model.py delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json delete mode 100644 opendbc_repo/opendbc/car/torque_data/override.toml delete mode 100644 opendbc_repo/opendbc/car/torque_data/params.toml delete mode 100644 opendbc_repo/opendbc/car/torque_data/substitute.toml delete mode 100644 opendbc_repo/opendbc/car/toyota/__init__.py delete mode 100644 opendbc_repo/opendbc/car/toyota/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/toyota/carstate.py delete mode 100644 opendbc_repo/opendbc/car/toyota/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/toyota/interface.py delete mode 100755 opendbc_repo/opendbc/car/toyota/radar_interface.py delete mode 100644 opendbc_repo/opendbc/car/toyota/tests/__init__.py delete mode 100755 opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py delete mode 100644 opendbc_repo/opendbc/car/toyota/tests/test_toyota.py delete mode 100644 opendbc_repo/opendbc/car/toyota/toyotacan.py delete mode 100644 opendbc_repo/opendbc/car/toyota/values.py delete mode 100644 opendbc_repo/opendbc/car/uds.py delete mode 100644 opendbc_repo/opendbc/car/values.py delete mode 100755 opendbc_repo/opendbc/car/vehicle_model.py delete mode 100644 opendbc_repo/opendbc/car/vin.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/__init__.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/carcontroller.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/carstate.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/fingerprints.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/interface.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/mqbcan.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/pqcan.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py delete mode 100644 opendbc_repo/opendbc/car/volkswagen/values.py delete mode 100644 opendbc_repo/opendbc/car/xcp.py delete mode 100644 opendbc_repo/opendbc/dbc/ESR.dbc delete mode 100644 opendbc_repo/opendbc/dbc/FORD_CADS.dbc delete mode 100644 opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc delete mode 100644 opendbc_repo/opendbc/dbc/README.md delete mode 100644 opendbc_repo/opendbc/dbc/SConscript delete mode 100644 opendbc_repo/opendbc/dbc/__init__.py delete mode 100644 opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc delete mode 100644 opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc delete mode 100644 opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc delete mode 100644 opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc delete mode 100644 opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc delete mode 100644 opendbc_repo/opendbc/dbc/chrysler_cusw.dbc delete mode 100644 opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc delete mode 100644 opendbc_repo/opendbc/dbc/comma_body.dbc delete mode 100644 opendbc_repo/opendbc/dbc/fca_giorgio.dbc delete mode 100644 opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc delete mode 100644 opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc delete mode 100644 opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc delete mode 100644 opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore delete mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc delete mode 100755 opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py delete mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc delete mode 100755 opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh delete mode 100755 opendbc_repo/opendbc/dbc/generator/generator.py delete mode 100644 opendbc_repo/opendbc/dbc/generator/gm/_community.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_community.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore delete mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc delete mode 100755 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py delete mode 100755 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py delete mode 100755 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py delete mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/rivian/.gitignore delete mode 100755 opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/tesla/.gitignore delete mode 100755 opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py delete mode 100755 opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py delete mode 100755 opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_object.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc delete mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/hongqi_hs5.dbc delete mode 100644 opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc delete mode 100644 opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc delete mode 100644 opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc delete mode 100644 opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc delete mode 100644 opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc delete mode 100644 opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc delete mode 100644 opendbc_repo/opendbc/dbc/mazda_2017.dbc delete mode 100644 opendbc_repo/opendbc/dbc/mazda_3_2019.dbc delete mode 100644 opendbc_repo/opendbc/dbc/mazda_radar.dbc delete mode 100644 opendbc_repo/opendbc/dbc/mazda_rx8.dbc delete mode 100644 opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc delete mode 100644 opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc delete mode 100644 opendbc_repo/opendbc/dbc/ocelot_controls.dbc delete mode 100644 opendbc_repo/opendbc/dbc/opel_omega_2001.dbc delete mode 100644 opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc delete mode 100644 opendbc_repo/opendbc/dbc/tesla_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/tesla_model3_party.dbc delete mode 100644 opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc delete mode 100644 opendbc_repo/opendbc/dbc/tesla_powertrain.dbc delete mode 100644 opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/toyota_adas.dbc delete mode 100644 opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc delete mode 100644 opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc delete mode 100644 opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc delete mode 100644 opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc delete mode 100644 opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc delete mode 100644 opendbc_repo/opendbc/dbc/vw_meb.dbc delete mode 100644 opendbc_repo/opendbc/dbc/vw_mqb.dbc delete mode 100644 opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc delete mode 100644 opendbc_repo/opendbc/dbc/vw_mqbevo.dbc delete mode 100644 opendbc_repo/opendbc/dbc/vw_pq.dbc delete mode 100644 opendbc_repo/opendbc/safety/__init__.py delete mode 100644 opendbc_repo/opendbc/safety/board/can.h delete mode 100644 opendbc_repo/opendbc/safety/board/can_declarations.h delete mode 100644 opendbc_repo/opendbc/safety/board/drivers/can_common.h delete mode 100644 opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h delete mode 100644 opendbc_repo/opendbc/safety/board/fake_stm.h delete mode 100644 opendbc_repo/opendbc/safety/board/faults.h delete mode 100644 opendbc_repo/opendbc/safety/board/faults_declarations.h delete mode 100644 opendbc_repo/opendbc/safety/board/utils.h delete mode 100644 opendbc_repo/opendbc/safety/main.c delete mode 100644 opendbc_repo/opendbc/safety/safety.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_body.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_chrysler.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_defaults.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_elm327.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_ford.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_gm.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_honda.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_hyundai.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_mazda.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_nissan.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_rivian.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_subaru.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_tesla.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_toyota.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h delete mode 100644 opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h delete mode 100644 opendbc_repo/opendbc/safety/safety_declarations.h delete mode 100644 opendbc_repo/opendbc/safety/tests/__init__.py delete mode 100644 opendbc_repo/opendbc/safety/tests/common.py delete mode 100644 opendbc_repo/opendbc/safety/tests/hyundai_common.py delete mode 100755 opendbc_repo/opendbc/safety/tests/install_mull.sh delete mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/SConscript delete mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/__init__.py delete mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py delete mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/safety.c delete mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h delete mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py delete mode 100644 opendbc_repo/opendbc/safety/tests/misra/.gitignore delete mode 100644 opendbc_repo/opendbc/safety/tests/misra/checkers.txt delete mode 100644 opendbc_repo/opendbc/safety/tests/misra/coverage_table delete mode 100755 opendbc_repo/opendbc/safety/tests/misra/install.sh delete mode 100644 opendbc_repo/opendbc/safety/tests/misra/suppressions.txt delete mode 100755 opendbc_repo/opendbc/safety/tests/misra/test_misra.sh delete mode 100755 opendbc_repo/opendbc/safety/tests/misra/test_mutation.py delete mode 100755 opendbc_repo/opendbc/safety/tests/mutation.sh delete mode 100644 opendbc_repo/opendbc/safety/tests/safety_replay/__init__.py delete mode 100644 opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py delete mode 100755 opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test.sh delete mode 100755 opendbc_repo/opendbc/safety/tests/test_body.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_chrysler.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_defaults.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_elm327.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_ford.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_gm.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_honda.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_hyundai.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_mazda.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_nissan.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_rivian.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_subaru.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_tesla.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_toyota.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py delete mode 100755 opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py delete mode 100644 opendbc_repo/pyproject.toml delete mode 100755 opendbc_repo/setup.sh delete mode 100644 opendbc_repo/site_scons/site_tools/cython.py delete mode 100755 opendbc_repo/test.sh delete mode 100644 selfdrive/car/bmw/__init__.py delete mode 100644 selfdrive/car/bmw/bmwcan.py delete mode 100644 selfdrive/car/bmw/carcontroller.py delete mode 100644 selfdrive/car/bmw/carstate.py delete mode 100644 selfdrive/car/bmw/fingerprints.py delete mode 100755 selfdrive/car/bmw/interface.py delete mode 100644 selfdrive/car/bmw/radar_interface.py delete mode 100644 selfdrive/car/bmw/tests/__init__.py delete mode 100644 selfdrive/car/bmw/tests/test_bmw.py delete mode 100644 selfdrive/car/bmw/values.py diff --git a/opendbc_repo/.github/labeler.yaml b/opendbc_repo/.github/labeler.yaml deleted file mode 100644 index 520e2d12a5..0000000000 --- a/opendbc_repo/.github/labeler.yaml +++ /dev/null @@ -1,76 +0,0 @@ -CI / testing: - - changed-files: - - any-glob-to-any-file: '.github/**' - -car: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/**' - -car safety: - - changed-files: - - any-glob-to-any-file: 'opendbc/safety/**' - -can: - - changed-files: - - any-glob-to-any-file: 'opendbc/can/**' - -DBC signals: - - changed-files: - - any-glob-to-any-file: 'opendbc/dbc/**' - - -body: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/body/**' - -chrysler: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/chrysler/**' - -ford: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/ford/**' - -gm: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/gm/**' - -honda: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/honda/**' - -hyundai: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/hyundai/**' - -mazda: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/mazda/**' - -nissan: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/nissan/**' - -rivian: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/rivian/**' - -subaru: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/subaru/**' - -tesla: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/tesla/**' - -toyota: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/toyota/**' - -volkswagen: - - changed-files: - - any-glob-to-any-file: 'opendbc/car/volkswagen/**' - -fingerprint: - - changed-files: - - any-glob-to-all-files: 'opendbc/car/*/fingerprints.py' diff --git a/opendbc_repo/.github/workflows/auto_pr_review.yaml b/opendbc_repo/.github/workflows/auto_pr_review.yaml deleted file mode 100644 index ffe380a8b2..0000000000 --- a/opendbc_repo/.github/workflows/auto_pr_review.yaml +++ /dev/null @@ -1,50 +0,0 @@ -name: "PR review" -on: - pull_request_target: - types: [opened, reopened, synchronize, edited, edited] - -jobs: - labeler: - name: review - permissions: - contents: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - # Label PRs - - uses: actions/labeler@v5.0.0 - with: - dot: true - sync-labels: true - configuration-path: .github/labeler.yaml - - # Check PR target branch - - name: check branch - uses: Vankka/pr-target-branch-action@def32ec9d93514138d6ac0132ee62e120a72aed5 - if: github.repository == 'commaai/opendbc' - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - target: /^(?!master$).*/ - exclude: /commaai:.*/ - change-to: ${{ github.base_ref }} - already-exists-action: close_this - already-exists-comment: "Your PR should be made against the `master` branch" - - # Welcome comment - - name: "First timers PR" - uses: actions/first-interaction@v1 - if: github.event.pull_request.head.repo.full_name != 'commaai/opendbc' - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - pr-message: | - - Thanks for contributing to opendbc! In order for us to review your PR as quickly as possible, check the following: - * Convert your PR to a draft unless it's ready to review - * Read the [contributing docs](https://github.com/commaai/openpilot/blob/master/docs/CONTRIBUTING.md) - * Before marking as "ready for review", ensure: - * the goal is clearly stated in the description - * all the tests are passing - * include a route or your device' dongle ID if relevant diff --git a/opendbc_repo/.github/workflows/release.yml b/opendbc_repo/.github/workflows/release.yml deleted file mode 100644 index 5e9a3a706c..0000000000 --- a/opendbc_repo/.github/workflows/release.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Publish to PyPI -on: - release: - types: [published] - workflow_dispatch: - -jobs: - pypi-publish: - name: Upload release to PyPI - runs-on: ubuntu-latest - environment: - name: pypi - url: https://pypi.org/p/opendbc - permissions: - id-token: write # trusted publishing - steps: - - uses: actions/checkout@v4 - - - name: Build distribution - run: | - ./test.sh - source .venv/bin/activate - uv pip install build - python -m build - - - name: Publish to Test PyPI - if: github.event_name == 'workflow_dispatch' - uses: pypa/gh-action-pypi-publish@v1.12.4 - with: - repository-url: https://test.pypi.org/legacy/ - - - name: Publish to Production PyPI - if: github.event_name == 'release' - uses: pypa/gh-action-pypi-publish@v1.12.4 diff --git a/opendbc_repo/.github/workflows/repo.yml b/opendbc_repo/.github/workflows/repo.yml deleted file mode 100644 index 37ca09c923..0000000000 --- a/opendbc_repo/.github/workflows/repo.yml +++ /dev/null @@ -1,28 +0,0 @@ -name: repo - -on: - schedule: - - cron: "0 15 1 * *" - workflow_dispatch: - -jobs: - pre-commit-autoupdate: - name: pre-commit autoupdate - runs-on: ubuntu-latest - container: - image: ghcr.io/commaai/opendbc:latest - steps: - - uses: actions/checkout@v4 - - name: pre-commit autoupdate - run: | - git config --global --add safe.directory '*' - pre-commit autoupdate - - name: Create Pull Request - uses: peter-evans/create-pull-request@5b4a9f6a9e2af26e5f02351490b90d01eb8ec1e5 - with: - token: ${{ secrets.ACTIONS_CREATE_PR_PAT }} - commit-message: Update pre-commit hook versions - title: 'pre-commit: autoupdate hooks' - branch: pre-commit-updates - base: master - delete-branch: true diff --git a/opendbc_repo/.github/workflows/stale.yml b/opendbc_repo/.github/workflows/stale.yml deleted file mode 100644 index 34a7f7aed0..0000000000 --- a/opendbc_repo/.github/workflows/stale.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: stale -on: - schedule: - - cron: '30 1 * * *' - workflow_dispatch: - -env: - DAYS_BEFORE_PR_CLOSE: 7 - DAYS_BEFORE_PR_STALE: 60 - -jobs: - stale: - runs-on: ubuntu-latest - steps: - - uses: actions/stale@v9 - with: - exempt-all-milestones: true - - # pull request config - stale-pr-message: 'This PR has had no activity for ${{ env.DAYS_BEFORE_PR_STALE }} days. It will be automatically closed in ${{ env.DAYS_BEFORE_PR_CLOSE }} days if there is no activity.' - close-pr-message: 'This PR has been automatically closed due to inactivity. Feel free to re-open once activity resumes.' - stale-pr-label: stale - delete-branch: ${{ github.event.pull_request.head.repo.full_name == 'commaai/opendbc' }} # only delete branches on the main repo - exempt-draft-pr: true - exempt-pr-labels: "ignore stale" # if wip, don't mark as stale - days-before-pr-stale: ${{ env.DAYS_BEFORE_PR_STALE }} - days-before-pr-close: ${{ env.DAYS_BEFORE_PR_CLOSE }} - - # issue config - days-before-issue-stale: -1 # ignore issues for now diff --git a/opendbc_repo/.github/workflows/test_models_trigger.yaml b/opendbc_repo/.github/workflows/test_models_trigger.yaml deleted file mode 100644 index c93469a6f6..0000000000 --- a/opendbc_repo/.github/workflows/test_models_trigger.yaml +++ /dev/null @@ -1,60 +0,0 @@ -name: test models trigger - -on: - issue_comment: - types: [created, edited] - -jobs: - scan-comments: - runs-on: ubuntu-latest - if: ${{ github.event.issue.pull_request }} - steps: - - name: Check for trigger phrase - id: check_comment - uses: actions/github-script@v7 - with: - script: | - const triggerPhrase = "trigger-test-models"; - const comment = context.payload.comment.body; - const commenter = context.payload.comment.user.login; - - const { data: permissions } = await github.rest.repos.getCollaboratorPermissionLevel({ - owner: context.repo.owner, - repo: context.repo.repo, - username: commenter - }); - - const hasWriteAccess = permissions.permission === 'write' || permissions.permission === 'admin'; - - return (hasWriteAccess && comment.includes(triggerPhrase)); - result-encoding: json - - - name: Checkout openpilot - if: steps.check_comment.outputs.result == 'true' - uses: actions/checkout@v4 - with: - repository: 'commaai/openpilot' - submodules: 'true' - - - name: bump opendbc - if: steps.check_comment.outputs.result == 'true' - run: | - cd opendbc_repo - git fetch origin pull/${{ github.event.issue.number }}/head - git checkout FETCH_HEAD - cd .. - git add . - - - name: Create Pull Request - if: steps.check_comment.outputs.result == 'true' - uses: peter-evans/create-pull-request@9153d834b60caba6d51c9b9510b087acf9f33f83 - with: - author: Vehicle Researcher - token: ${{ secrets.ACTIONS_CREATE_PR_PAT }} - commit-message: test models - title: '[opendbc] test_models run from ${{ github.event.issue.number }}' - branch: test_models_${{ github.event.issue.number }} - base: master - delete-branch: true - body: 'Testing some opendbc changes from https://github.com/commaai/opendbc/pull/${{ github.event.issue.number }}' - labels: bot diff --git a/opendbc_repo/.github/workflows/tests.yml b/opendbc_repo/.github/workflows/tests.yml deleted file mode 100644 index be3c882887..0000000000 --- a/opendbc_repo/.github/workflows/tests.yml +++ /dev/null @@ -1,105 +0,0 @@ -name: tests - -on: - push: - branches: - - master - pull_request: - -jobs: - tests: - name: ./test.sh - runs-on: ${{ matrix.os }} - strategy: - fail-fast: false - matrix: - include: - - os: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-24.04' }} - - os: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-macos-8x14' || 'macos-latest' }} - steps: - - uses: commaai/timeout@v1 - - uses: actions/checkout@v4 - - run: ./test.sh - - safety_tests: - name: safety - runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} - strategy: - fail-fast: false - matrix: - flags: ['', '--ubsan'] - steps: - - uses: commaai/timeout@v1 - - uses: actions/checkout@v4 - - name: Run safety tests - run: ./opendbc/safety/tests/test.sh ${{ matrix.flags }} - - misra_linter: - name: MISRA C:2012 Linter - runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} - timeout-minutes: 20 - steps: - - name: Set up - run: sudo apt-get install -y --no-install-recommends gcc-arm-none-eabi libnewlib-arm-none-eabi - - uses: actions/checkout@v4 - - name: Restore cached cppcheck - uses: actions/cache@v4 - with: - path: opendbc/safety/tests/misra/cppcheck/ - key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} - restore-keys: | - cppcheck-cache-${{ runner.os }}-${{ github.ref }} - cppcheck-cache-${{ runner.os }}- - - name: Run MISRA C:2012 analysis - timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 1 || 2) }} - run: cd opendbc/safety/tests/misra && ./test_misra.sh - - name: Save cppcheck cache - uses: actions/cache@v4 - with: - path: opendbc/safety/tests/misra/cppcheck/ - key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} - - misra_mutation: - name: MISRA C:2012 Mutation - runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} - timeout-minutes: 20 - steps: - - name: Set up - run: sudo apt-get install -y --no-install-recommends gcc-arm-none-eabi libnewlib-arm-none-eabi - - uses: actions/checkout@v4 - - name: Restore cached cppcheck - uses: actions/cache@v4 - with: - path: opendbc/safety/tests/misra/cppcheck/ - key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} - restore-keys: | - cppcheck-cache-${{ runner.os }}-${{ github.ref }} - cppcheck-cache-${{ runner.os }}- - - name: MISRA mutation tests - timeout-minutes: 1 - run: | - source setup.sh - scons -j8 - cd opendbc/safety/tests/misra - ./install.sh # cppcheck - pytest -s -n8 --randomly-seed $RANDOM test_mutation.py - - name: Save cppcheck cache - uses: actions/cache@v4 - with: - path: opendbc/safety/tests/misra/cppcheck/ - key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} - - mutation: - name: Safety mutation tests - runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} - timeout-minutes: 20 - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 # need master to get diff - - name: Run mutation tests - timeout-minutes: 5 - run: | - source setup.sh - scons -j8 - GIT_REF=${{ github.event_name == 'push' && github.ref == 'refs/heads/master' && github.event.before || 'origin/master' }} cd opendbc/safety/tests && ./mutation.sh diff --git a/opendbc_repo/.github/workflows/update-cars-docs.yml b/opendbc_repo/.github/workflows/update-cars-docs.yml deleted file mode 100644 index bf72e5280f..0000000000 --- a/opendbc_repo/.github/workflows/update-cars-docs.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: Update CARS.md - -on: - schedule: - - cron: '0 8 * * *' # 12am PST (8am UTC) - workflow_dispatch: - -jobs: - update-cars: - runs-on: ubuntu-24.04 - permissions: - contents: write - steps: - - uses: actions/checkout@v4 - - name: Generate Car Docs - run: | - pip install -e . - scons -c && scons -j$(nproc) - python -m pip install jinja2==3.1.4 natsort==8.4.0 - python opendbc/car/docs.py - - uses: stefanzweifel/git-auto-commit-action@8621497c8c39c72f3e2a999a26b4ca1b5058a842 - with: - commit_message: 'docs: Scheduled auto-update CARS.md' - file_pattern: 'docs/CARS.md' - \ No newline at end of file diff --git a/opendbc_repo/.gitignore b/opendbc_repo/.gitignore deleted file mode 100644 index 53830d4fdb..0000000000 --- a/opendbc_repo/.gitignore +++ /dev/null @@ -1,36 +0,0 @@ -.cache/ -/build/ -.mypy_cache/ -*.pyc -*.os -*.o -*.so -*.a -*.tmp -*.dylib -.*.swp -.DS_Store -.sconsign.dblite -.hypothesis -*.egg-info/ -*.html -*.gcda -*.gcno -*.dump -uv.lock -/dist/ -.vscode/ -__pycache__/ - -opendbc/can/build/ -opendbc/can/obj/ -opendbc/can/packer_pyx.cpp -opendbc/can/parser_pyx.cpp -opendbc/can/packer_pyx.html -opendbc/can/parser_pyx.html -opendbc/dbc/*_generated.dbc - -cppcheck-addon-ctu-file-list -opendbc/safety/tests/coverage-out - -compile_commands.json diff --git a/opendbc_repo/LICENSE b/opendbc_repo/LICENSE deleted file mode 100644 index f1fd199c63..0000000000 --- a/opendbc_repo/LICENSE +++ /dev/null @@ -1,7 +0,0 @@ -Copyright (c) 2020, Comma.ai, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/opendbc_repo/MANIFEST.in b/opendbc_repo/MANIFEST.in deleted file mode 100644 index a8583dc97b..0000000000 --- a/opendbc_repo/MANIFEST.in +++ /dev/null @@ -1,3 +0,0 @@ -include opendbc/car/car.capnp -include opendbc/car/include/c++.capnp -recursive-include opendbc/safety *.h diff --git a/opendbc_repo/README.md b/opendbc_repo/README.md deleted file mode 100644 index 5ce4591c18..0000000000 --- a/opendbc_repo/README.md +++ /dev/null @@ -1,196 +0,0 @@ -
- -

opendbc

-

- opendbc is a Python API for your car. -
- Control the gas, brake, steering, and more. Read the speed, steering angle, and more. -

- -

- Docs - · - Contribute - · - Discord -

- -[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) -[![X Follow](https://img.shields.io/twitter/follow/comma_ai)](https://x.com/comma_ai) -[![Discord](https://img.shields.io/discord/469524606043160576)](https://discord.comma.ai) - -
- ---- - -Most cars since 2016 have electronically-actuatable steering, gas, and brakes thanks to [LKAS](https://en.wikipedia.org/wiki/Lane_departure_warning_system#Lane_keeping_and_next_technologies) and [ACC](https://en.wikipedia.org/wiki/Adaptive_cruise_control). -The goal of this project is to support controlling the steering, gas, and brakes on every single one of those cars. - -While the primary focus is on supporting ADAS interfaces for [openpilot](https://github.com/commaai/openpilot), we're also interested in reading and writing as many things as we can (EV charge status, lock/unlocking doors, etc) such that we can build the best vehicle management app ever. - ---- - -This README and the [supported cars list](docs/CARS.md) are all the docs for the opendbc project. -Everything you need to know to use, contribute, and extend opendbc are in these docs. - -## Quick start - -```bash -git clone https://github.com/commaai/opendbc.git -cd opendbc - -# you probably just want to use this. it's an all-in-one for dependency -# installation, compiling, linting, and tests. it's also what runs in CI -./test.sh - -# here are the individual commands it runs -pip3 install -e .[testing,docs] # install dependencies -scons -j8 # build with 8 cores -pytest . # run the tests -lefthook run lint # run the linter -``` - -[`examples/`](examples/) contains small example programs that can read state from the car and control the steering, gas, and brakes. -[`examples/joystick.py`](examples/joystick.py) allows you to control a car with a joystick. - -### Project Structure -* [`opendbc/dbc/`](opendbc/dbc/) is a repository of [DBC](https://en.wikipedia.org/wiki/CAN_bus#DBC) files -* [`opendbc/can/`](opendbc/can/) is a library for parsing and building CAN messages from DBC files -* [`opendbc/car/`](opendbc/car/) is a high-level library for interfacing with cars using Python -* [`opendbc/safety/`](opendbc/safety/) is the functional safety for all the cars supported by `opendbc/car/` - -## How to Port a Car - -This guide covers everything from adding support to a new car all the way to improving existing cars (e.g. adding longitudinal control or radar parsing). If similar cars to yours are already compatible, most of this work is likely already done for you. - -At its most basic, a car port will control the steering on a car. A "complete" car port will have all of: lateral control, longitudinal control, good tuning for both lateral and longitudinal, radar parsing (if equipped), fuzzy fingerprinting, and more. The new car support docs will clearly communicate each car's support level. - -### Connect to the Car - -The first step is to get connected to the car with a comma 3X and a car harness. -The car harness gets you connected to two different CAN buses and splits one of those buses to send our own actuation messages. - -If you're lucky, a harness compatible with your car will already be designed and sold on comma.ai/shop. -If you're not so lucky, start with a "developer harness" from comma.ai/shop and crimp on whatever connector you need. - -### Structure of a port - -Depending on the brand, most of this basic structure will already be in place. - -The entirety of a car port lives in `opendbc/car//`: -* `carstate.py`: parses out the relevant information from the CAN stream using the car's DBC file -* `carcontroller.py`: outputs CAN messages to control the car -* `can.py`: thin Python helpers around the DBC file to build CAN messages -* `fingerprints.py`: database of ECU firmware versions for identifying car models -* `interface.py`: high level class for interfacing with the car -* `radar_interface.py`: parses out the radar -* `values.py`: enumerates the brand's supported cars - -### Reverse Engineer CAN messages - -Start off by recording a route with lots of interesting events: enable LKAS and ACC, turn the steering wheel both extremes, etc. Then, load up that route in [cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana). - -### Tuning - -#### Longitudinal - -Use the [longitudinal maneuvers](https://github.com/commaai/openpilot/tree/master/tools/longitudinal_maneuvers) report to evaluate your car's longitudinal control and tune it. - -## Contributing - -All opendbc development is coordinated on GitHub and [Discord](https://discord.comma.ai). Check out the `#dev-opendbc-cars` channel and `Vehicle Specific` section. - -### Roadmap - -Short term -- [ ] `pip install opendbc` -- [ ] 100% type coverage -- [ ] 100% line coverage -- [ ] Make car ports easier: refactors, tools, tests, and docs -- [ ] Expose the state of all supported cars better: https://github.com/commaai/opendbc/issues/1144 - -Longer term -- [ ] Extend support to every car with LKAS + ACC interfaces -- [ ] Automatic lateral and longitudinal control/tuning evaluation -- [ ] Auto-tuning for [lateral](https://blog.comma.ai/090release/#torqued-an-auto-tuner-for-lateral-control) and longitudinal control -- [ ] [Automatic Emergency Braking](https://en.wikipedia.org/wiki/Automated_emergency_braking_system) - -Contributions towards anything here are welcome. - -## Safety Model - -When a [panda](https://comma.ai/shop/panda) powers up with [opendbc safety firmware](opendbc/safety), by default it's in `SAFETY_SILENT` mode. While in `SAFETY_SILENT` mode, the CAN buses are forced to be silent. In order to send messages, you have to select a safety mode. Some of safety modes (for example `SAFETY_ALLOUTPUT`) are disabled in release firmwares. In order to use them, compile and flash your own build. - -Safety modes optionally support `controls_allowed`, which allows or blocks a subset of messages based on a customizable state in the board. - -## Code Rigor - -The opendbc safety firmware is written for its use in conjunction with [openpilot](https://github.com/commaai/openpilot) and [panda](https://github.com/commaai/panda). The safety firmware, through its safety model, provides and enforces the -[openpilot safety](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md). Due to its critical function, it's important that the application code rigor within the `safety` folder is held to high standards. - -These are the [CI regression tests](https://github.com/commaai/opendbc/actions) we have in place: -* A generic static code analysis is performed by [cppcheck](https://github.com/danmar/cppcheck/). -* In addition, [cppcheck](https://github.com/danmar/cppcheck/) has a specific addon to check for [MISRA C:2012](https://misra.org.uk/) violations. See [current coverage](opendbc/safety/tests/misra/coverage_table). -* Compiler options are relatively strict: the flags `-Wall -Wextra -Wstrict-prototypes -Werror` are enforced. -* The [safety logic](opendbc/safety) is tested and verified by [unit tests](opendbc/safety/tests) for each supported car variant. - -The above tests are themselves tested by: -* a [mutation test](opendbc/safety/tests/misra/test_mutation.py) on the MISRA coverage -* 100% line coverage enforced on the safety unit tests - -In addition, we run the [ruff linter](https://github.com/astral-sh/ruff) and [mypy](https://mypy-lang.org/) on the car interface library. - -### Bounties - -Every car port is eligible for a bounty: -* $2000 - [Any car brand / platform port](https://github.com/orgs/commaai/projects/26/views/1?pane=issue&itemId=47913774) -* $250 - [Any car model port](https://github.com/orgs/commaai/projects/26/views/1?pane=issue&itemId=47913790) -* $300 - [Reverse Engineering a new Actuation Message](https://github.com/orgs/commaai/projects/26/views/1?pane=issue&itemId=73445563) - -In addition to the standard bounties, we also offer higher value bounties for more popular cars. See those at [comma.ai/bounties](comma.ai/bounties). - -## FAQ - -***How do I use this?*** A [comma 3X](https://comma.ai/shop/comma-3x) is custom-designed to be the best way to run and develop opendbc and openpilot. - -***Which cars are supported?*** See the [supported cars list](docs/CARS.md). - -***Can I add support for my car?*** Yes, most car support comes from the community. Read the guide [here](https://github.com/commaai/opendbc/blob/docs/README.md#how-to-port-a-car). - -***Which cars can be supported?*** Any car with LKAS and ACC. More info [here](https://github.com/commaai/openpilot/blob/master/docs/CARS.md#dont-see-your-car-here). - -***How does this work?*** In short, we designed hardware to replace your car's built-in lane keep and adaptive cruise features. See [this talk](https://www.youtube.com/watch?v=FL8CxUSfipM) for an in-depth explanation. - -***Is there a timeline or roadmap for adding car support?*** No, most car support comes from the community, with comma doing final safety and quality validation. The more complete the community car port is and the more popular the car is, the more likely we are to pick it up as the next one to validate. - -### Terms - -* **port**: refers to the integration and support of a specific car -* **lateral control**: aka steering control -* **longitudinal control**: aka gas/brakes control -* **fingerprinting**: automatic process for identifying the car -* **[LKAS](https://en.wikipedia.org/wiki/Lane_departure_warning_system)**: lane keeping assist -* **[ACC](https://en.wikipedia.org/wiki/Adaptive_cruise_control)**: adaptive cruise control -* **[harness](https://comma.ai/shop/car-harness)**: car-specific hardware to attach to the car and intercept the ADAS messages -* **[panda](https://github.com/commaai/panda)**: hardware used to get on a car's CAN bus -* **[ECU](https://en.wikipedia.org/wiki/Electronic_control_unit)**: computers or control modules inside the car -* **[CAN bus](https://en.wikipedia.org/wiki/CAN_bus)**: a bus that connects the ECUs in a car -* **[cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana#readme)**: our tool for reverse engineering CAN messages -* **[DBC file](https://en.wikipedia.org/wiki/CAN_bus#DBC)**: contains definitions for messages on a CAN bus -* **[openpilot](https://github.com/commaai/openpilot)**: an ADAS system for cars supported by opendbc -* **[comma](https://github.com/commaai)**: the company behind opendbc -* **[comma 3X](https://comma.ai/shop/comma-3x)**: the hardware used to run openpilot - -### More resources - -* [*How Do We Control The Car?*](https://www.youtube.com/watch?v=nNU6ipme878&pp=ygUoY29tbWEgY29uIDIwMjEgaG93IGRvIHdlIGNvbnRyb2wgdGhlIGNhcg%3D%3D) by [@robbederks](https://github.com/robbederks) from COMMA_CON 2021 -* [*How to Port a Car*](https://www.youtube.com/watch?v=XxPS5TpTUnI&t=142s&pp=ygUPamFzb24gY29tbWEgY29u) by [@jyoung8607](https://github.com/jyoung8607) from COMMA_CON 2023 -* [commaCarSegments](https://huggingface.co/datasets/commaai/commaCarSegments): a massive dataset of CAN data from 300 different car models -* [cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana#readme): our tool for reverse engineering CAN messages -* [can_print_changes.py](https://github.com/commaai/openpilot/blob/master/selfdrive/debug/can_print_changes.py): diff the whole CAN bus across two drives, such as one without any LKAS and one with LKAS -* [longitudinal maneuvers](https://github.com/commaai/openpilot/tree/master/tools/longitudinal_maneuvers): a tool for evaluating and tuning longitudinal control -* [opendbc data](https://commaai.github.io/opendbc-data/): a repository of longitudinal maneuver evaluations - -## Come work with us -- [comma.ai/jobs](https://comma.ai/jobs) - -comma is hiring engineers to work on opendbc and [openpilot](https://github.com/commaai/openpilot). We love hiring contributors. diff --git a/opendbc_repo/RELEASES.md b/opendbc_repo/RELEASES.md deleted file mode 100644 index 2eab19fe84..0000000000 --- a/opendbc_repo/RELEASES.md +++ /dev/null @@ -1,13 +0,0 @@ -Version 0.2.1 (2025-02-10) -======================== -* Fix missing files making car/ package not importable - -Version 0.2.0 (2025-02-10) -======================== -* Moved car/ directory from openpilot to opendbc. It comprises the APIs necessary to communicate with 275+ car models - * opendbc is moving towards being a complete self-contained car API package - * Soon all opendbc-related tests from openpilot will be migrated as well - -Version 0.1.0 (2024-08-01) -======================== -* Initial pre-release package with can/ and dbc/ directories diff --git a/opendbc_repo/SConscript b/opendbc_repo/SConscript deleted file mode 100644 index 86c47fb3fa..0000000000 --- a/opendbc_repo/SConscript +++ /dev/null @@ -1,7 +0,0 @@ -Import("env") - -SConscript(['opendbc/dbc/SConscript'], exports={'env': env}) - -# test files -if GetOption('extras'): - SConscript('opendbc/safety/tests/libsafety/SConscript') diff --git a/opendbc_repo/SConstruct b/opendbc_repo/SConstruct deleted file mode 100644 index c43351a6ae..0000000000 --- a/opendbc_repo/SConstruct +++ /dev/null @@ -1,64 +0,0 @@ -import os -import subprocess -import platform - -arch = subprocess.check_output(["uname", "-m"], encoding='utf8').rstrip() -if platform.system() == "Darwin": - arch = "Darwin" - -cpppath = [ - '#', - '/usr/lib/include', -] - -AddOption('--minimal', - action='store_false', - dest='extras', - default=True, - help='the minimum build. no tests, tools, etc.') - -AddOption('--asan', - action='store_true', - help='turn on ASAN') - -# safety options -AddOption('--ubsan', - action='store_true', - help='turn on UBSan') - -AddOption('--mutation', - action='store_true', - help='generate mutation-ready code') - -ccflags_asan = ["-fsanitize=address", "-fno-omit-frame-pointer"] if GetOption('asan') else [] -ldflags_asan = ["-fsanitize=address"] if GetOption('asan') else [] - -env = Environment( - ENV=os.environ, - CC='gcc', - CXX='g++', - CCFLAGS=[ - "-g", - "-fPIC", - "-O2", - "-Wunused", - "-Werror", - "-Wshadow", - "-Wno-vla-cxx-extension", - "-Wno-unknown-warning-option", # for compatibility across compiler versions - ] + ccflags_asan, - LDFLAGS=ldflags_asan, - LINKFLAGS=ldflags_asan, - CFLAGS="-std=gnu11", - CXXFLAGS=["-std=c++1z"], - CPPPATH=cpppath, - tools=["default", "compilation_db"] -) -if arch != "Darwin": - env.Append(CCFLAGS=["-fmax-errors=1", ]) - -env.CompilationDatabase('compile_commands.json') - -Export('env', 'arch') - -SConscript(['SConscript']) diff --git a/opendbc_repo/conftest.py b/opendbc_repo/conftest.py deleted file mode 100644 index 952972531b..0000000000 --- a/opendbc_repo/conftest.py +++ /dev/null @@ -1,5 +0,0 @@ -# pytest attempts to execute shell scripts while collecting -collect_ignore_glob = [ - "opendbc/safety/tests/misra/*.sh", - "opendbc/safety/tests/misra/cppcheck/", -] diff --git a/opendbc_repo/docs/CARS.md b/opendbc_repo/docs/CARS.md deleted file mode 100644 index aad2f2ceef..0000000000 --- a/opendbc_repo/docs/CARS.md +++ /dev/null @@ -1,439 +0,0 @@ - - -# Support Information for 365 Known Cars - -|Make|Model|Package|Support Level| -|---|---|---|:---:| -|Acura|ILX 2016-18|Technology Plus Package or AcuraWatch Plus|[Upstream](#upstream)| -|Acura|ILX 2019|All|[Upstream](#upstream)| -|Acura|Integra 2024|All|[Community](#community)| -|Acura|RDX 2016-18|AcuraWatch Plus or Advance Package|[Upstream](#upstream)| -|Acura|RDX 2019-21|All|[Upstream](#upstream)| -|Audi|A3 2014-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Audi|A3 Sportback e-tron 2017-18|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Audi|A4 2016-24|All|[Not compatible](#flexray)| -|Audi|A5 2016-24|All|[Not compatible](#flexray)| -|Audi|Q2 2018|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Audi|Q3 2019-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Audi|Q5 2017-24|All|[Not compatible](#flexray)| -|Audi|RS3 2018|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Audi|S3 2015-17|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Chevrolet|Bolt EUV 2022-23|Premier or Premier Redline Trim without Super Cruise Package|[Upstream](#upstream)| -|Chevrolet|Bolt EV 2022-23|2LT Trim with Adaptive Cruise Control Package|[Upstream](#upstream)| -|Chevrolet|Equinox 2019-22|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Chevrolet|Silverado 1500 2020-21|Safety Package II|[Upstream](#upstream)| -|Chevrolet|Trailblazer 2021-22|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Chrysler|Pacifica 2017-18|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Chrysler|Pacifica 2019-20|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Chrysler|Pacifica 2021-23|All|[Upstream](#upstream)| -|Chrysler|Pacifica Hybrid 2017-18|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Chrysler|Pacifica Hybrid 2019-25|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|comma|body|All|[Upstream](#upstream)| -|CUPRA|Ateca 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Dodge|Durango 2020-21|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Ford|Bronco Sport 2021-24|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Escape 2020-22|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Escape 2023-24|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Escape Hybrid 2020-22|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Escape Hybrid 2023-24|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Escape Plug-in Hybrid 2020-22|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Escape Plug-in Hybrid 2023-24|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Expedition 2022-24|Co-Pilot360 Assist 2.0|[Upstream](#upstream)| -|Ford|Explorer 2020-24|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|Explorer Hybrid 2020-24|Co-Pilot360 Assist+|[Upstream](#upstream)| -|Ford|F-150 2021-23|Co-Pilot360 Assist 2.0|[Upstream](#upstream)| -|Ford|F-150 Hybrid 2021-23|Co-Pilot360 Assist 2.0|[Upstream](#upstream)| -|Ford|Focus 2018|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| -|Ford|Focus Hybrid 2018|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| -|Ford|Kuga 2020-23|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| -|Ford|Kuga Hybrid 2020-23|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| -|Ford|Kuga Hybrid 2024|All|[Upstream](#upstream)| -|Ford|Kuga Plug-in Hybrid 2020-23|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| -|Ford|Kuga Plug-in Hybrid 2024|All|[Upstream](#upstream)| -|Ford|Maverick 2022|LARIAT Luxury|[Upstream](#upstream)| -|Ford|Maverick 2023-24|Co-Pilot360 Assist|[Upstream](#upstream)| -|Ford|Maverick Hybrid 2022|LARIAT Luxury|[Upstream](#upstream)| -|Ford|Maverick Hybrid 2023-24|Co-Pilot360 Assist|[Upstream](#upstream)| -|Ford|Mustang Mach-E 2021-24|All|[Upstream](#upstream)| -|Ford|Ranger 2024|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| -|Genesis|G70 2018|All|[Upstream](#upstream)| -|Genesis|G70 2019-21|All|[Upstream](#upstream)| -|Genesis|G70 2022-23|All|[Upstream](#upstream)| -|Genesis|G80 2017|All|[Upstream](#upstream)| -|Genesis|G80 2018-19|All|[Upstream](#upstream)| -|Genesis|G80 (2.5T Advanced Trim, with HDA II) 2024|Highway Driving Assist II|[Upstream](#upstream)| -|Genesis|G90 2017-20|All|[Upstream](#upstream)| -|Genesis|GV60 (Advanced Trim) 2023|All|[Upstream](#upstream)| -|Genesis|GV60 (Performance Trim) 2022-23|All|[Upstream](#upstream)| -|Genesis|GV70 (2.5T Trim, without HDA II) 2022-24|All|[Upstream](#upstream)| -|Genesis|GV70 (3.5T Trim, without HDA II) 2022-23|All|[Upstream](#upstream)| -|Genesis|GV70 Electrified (Australia Only) 2022|All|[Upstream](#upstream)| -|Genesis|GV70 Electrified (with HDA II) 2023-24|Highway Driving Assist II|[Upstream](#upstream)| -|Genesis|GV80 2023|All|[Upstream](#upstream)| -|GMC|Sierra 1500 2020-21|Driver Alert Package II|[Upstream](#upstream)| -|GMC|Yukon 2019-20|Adaptive Cruise Control (ACC) & LKAS|[Dashcam mode](#dashcam)| -|Honda|Accord 2018-22|All|[Upstream](#upstream)| -|Honda|Accord 2023-24|All|[Community](#community)| -|Honda|Accord Hybrid 2018-22|All|[Upstream](#upstream)| -|Honda|Civic 2016-18|Honda Sensing|[Upstream](#upstream)| -|Honda|Civic 2019-21|All|[Upstream](#upstream)| -|Honda|Civic 2022-24|All|[Upstream](#upstream)| -|Honda|Civic Hatchback 2017-21|Honda Sensing|[Upstream](#upstream)| -|Honda|Civic Hatchback 2022-24|All|[Upstream](#upstream)| -|Honda|Civic Hatchback Hybrid 2025|All|[Upstream](#upstream)| -|Honda|Civic Hatchback Hybrid (Europe only) 2023|All|[Upstream](#upstream)| -|Honda|Civic Hybrid 2025|All|[Upstream](#upstream)| -|Honda|Clarity 2018-21|All|[Community](#community)| -|Honda|CR-V 2015-16|Touring Trim|[Upstream](#upstream)| -|Honda|CR-V 2017-22|Honda Sensing|[Upstream](#upstream)| -|Honda|CR-V 2024|All|[Community](#community)| -|Honda|CR-V Hybrid 2017-22|Honda Sensing|[Upstream](#upstream)| -|Honda|CR-V Hybrid 2024|All|[Community](#community)| -|Honda|e 2020|All|[Upstream](#upstream)| -|Honda|Fit 2018-20|Honda Sensing|[Upstream](#upstream)| -|Honda|Freed 2020|Honda Sensing|[Upstream](#upstream)| -|Honda|HR-V 2019-22|Honda Sensing|[Upstream](#upstream)| -|Honda|HR-V 2023-25|All|[Upstream](#upstream)| -|Honda|Insight 2019-22|All|[Upstream](#upstream)| -|Honda|Inspire 2018|All|[Upstream](#upstream)| -|Honda|Odyssey 2018-20|Honda Sensing|[Upstream](#upstream)| -|Honda|Odyssey 2021-25|All|[Community](#community)| -|Honda|Passport 2019-25|All|[Upstream](#upstream)| -|Honda|Pilot 2016-22|Honda Sensing|[Upstream](#upstream)| -|Honda|Pilot 2023|All|[Dashcam mode](#dashcam)| -|Honda|Pilot 2023-24|All|[Community](#community)| -|Honda|Ridgeline 2017-25|Honda Sensing|[Upstream](#upstream)| -|Hyundai|Azera 2022|All|[Upstream](#upstream)| -|Hyundai|Azera Hybrid 2019|All|[Upstream](#upstream)| -|Hyundai|Azera Hybrid 2020|All|[Upstream](#upstream)| -|Hyundai|Custin 2023|All|[Upstream](#upstream)| -|Hyundai|Elantra 2017-18|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Elantra 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Elantra 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Elantra GT 2017-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Elantra Hybrid 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Genesis 2015-16|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|i30 2017-19|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Ioniq 5 (Southeast Asia and Europe only) 2022-24|All|[Upstream](#upstream)| -|Hyundai|Ioniq 5 (with HDA II) 2022-24|Highway Driving Assist II|[Upstream](#upstream)| -|Hyundai|Ioniq 5 (without HDA II) 2022-24|Highway Driving Assist|[Upstream](#upstream)| -|Hyundai|Ioniq 6 (with HDA II) 2023-24|Highway Driving Assist II|[Upstream](#upstream)| -|Hyundai|Ioniq Electric 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Ioniq Electric 2020|All|[Upstream](#upstream)| -|Hyundai|Ioniq Hybrid 2017-19|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Ioniq Hybrid 2020-22|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Ioniq Plug-in Hybrid 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Ioniq Plug-in Hybrid 2020-22|All|[Upstream](#upstream)| -|Hyundai|Kona 2020|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Kona 2022|Smart Cruise Control (SCC)|[Dashcam mode](#dashcam)| -|Hyundai|Kona Electric 2018-21|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Kona Electric 2022-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Kona Electric (with HDA II, Korea only) 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Kona Hybrid 2020|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Nexo 2021|All|[Upstream](#upstream)| -|Hyundai|Palisade 2020-22|All|[Upstream](#upstream)| -|Hyundai|Palisade 2023-24|HDA2|[Community](#community)| -|Hyundai|Santa Cruz 2022-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Santa Fe 2019-20|All|[Upstream](#upstream)| -|Hyundai|Santa Fe 2021-23|All|[Upstream](#upstream)| -|Hyundai|Santa Fe Hybrid 2022-23|All|[Upstream](#upstream)| -|Hyundai|Santa Fe Plug-in Hybrid 2022-23|All|[Upstream](#upstream)| -|Hyundai|Sonata 2018-19|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Sonata 2020-23|All|[Upstream](#upstream)| -|Hyundai|Sonata Hybrid 2020-23|All|[Upstream](#upstream)| -|Hyundai|Staria 2023|All|[Upstream](#upstream)| -|Hyundai|Tucson 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Tucson 2022|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Tucson 2023-24|All|[Upstream](#upstream)| -|Hyundai|Tucson Diesel 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Hyundai|Tucson Hybrid 2022-24|All|[Upstream](#upstream)| -|Hyundai|Tucson Plug-in Hybrid 2024|All|[Upstream](#upstream)| -|Hyundai|Veloster 2019-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Jeep|Grand Cherokee 2016-18|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Jeep|Grand Cherokee 2019-21|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Kia|Carnival 2022-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Carnival (China only) 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Ceed 2019-21|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|EV6 (Southeast Asia only) 2022-24|All|[Upstream](#upstream)| -|Kia|EV6 (with HDA II) 2022-24|Highway Driving Assist II|[Upstream](#upstream)| -|Kia|EV6 (without HDA II) 2022-24|Highway Driving Assist|[Upstream](#upstream)| -|Kia|Forte 2019-21|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Forte 2022-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|K5 2021-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|K5 Hybrid 2020-22|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|K8 Hybrid (with HDA II) 2023|Highway Driving Assist II|[Upstream](#upstream)| -|Kia|Niro EV 2019|All|[Upstream](#upstream)| -|Kia|Niro EV 2020|All|[Upstream](#upstream)| -|Kia|Niro EV 2021|All|[Upstream](#upstream)| -|Kia|Niro EV 2022|All|[Upstream](#upstream)| -|Kia|Niro EV (with HDA II) 2025|Highway Driving Assist II|[Upstream](#upstream)| -|Kia|Niro EV (without HDA II) 2023-25|All|[Upstream](#upstream)| -|Kia|Niro Hybrid 2018|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Niro Hybrid 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Niro Hybrid 2022|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Niro Hybrid 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Niro Plug-in Hybrid 2018-19|All|[Upstream](#upstream)| -|Kia|Niro Plug-in Hybrid 2020|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Niro Plug-in Hybrid 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Niro Plug-in Hybrid 2022|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Optima 2017|Advanced Smart Cruise Control|[Upstream](#upstream)| -|Kia|Optima 2019-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Optima Hybrid 2017|Advanced Smart Cruise Control|[Dashcam mode](#dashcam)| -|Kia|Optima Hybrid 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Seltos 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Sorento 2018|Advanced Smart Cruise Control & LKAS|[Upstream](#upstream)| -|Kia|Sorento 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Sorento 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Sorento Hybrid 2021-23|All|[Upstream](#upstream)| -|Kia|Sorento Plug-in Hybrid 2022-23|All|[Upstream](#upstream)| -|Kia|Sportage 2023-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Sportage Hybrid 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Stinger 2018-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| -|Kia|Stinger 2022-23|All|[Upstream](#upstream)| -|Kia|Telluride 2020-22|All|[Upstream](#upstream)| -|Kia|Telluride 2023-24|HDA2|[Community](#community)| -|Lexus|CT Hybrid 2017-18|Lexus Safety System+|[Upstream](#upstream)| -|Lexus|ES 2017-18|All|[Upstream](#upstream)| -|Lexus|ES 2019-25|All|[Upstream](#upstream)| -|Lexus|ES Hybrid 2017-18|All|[Upstream](#upstream)| -|Lexus|ES Hybrid 2019-25|All|[Upstream](#upstream)| -|Lexus|GS F 2016|All|[Upstream](#upstream)| -|Lexus|IS 2017-19|All|[Upstream](#upstream)| -|Lexus|IS 2022-24|All|[Upstream](#upstream)| -|Lexus|LC 2024-25|All|[Upstream](#upstream)| -|Lexus|NS 2022-25|Any|[Not compatible](#can-bus-security)| -|Lexus|NX 2018-19|All|[Upstream](#upstream)| -|Lexus|NX 2020-21|All|[Upstream](#upstream)| -|Lexus|NX Hybrid 2018-19|All|[Upstream](#upstream)| -|Lexus|NX Hybrid 2020-21|All|[Upstream](#upstream)| -|Lexus|RC 2018-20|All|[Upstream](#upstream)| -|Lexus|RC 2023|All|[Upstream](#upstream)| -|Lexus|RX 2016|Lexus Safety System+|[Upstream](#upstream)| -|Lexus|RX 2017-19|All|[Upstream](#upstream)| -|Lexus|RX 2020-22|All|[Upstream](#upstream)| -|Lexus|RX Hybrid 2016|Lexus Safety System+|[Upstream](#upstream)| -|Lexus|RX Hybrid 2017-19|All|[Upstream](#upstream)| -|Lexus|RX Hybrid 2020-22|All|[Upstream](#upstream)| -|Lexus|UX Hybrid 2019-24|All|[Upstream](#upstream)| -|Lincoln|Aviator 2020-24|Co-Pilot360 Plus|[Upstream](#upstream)| -|Lincoln|Aviator Plug-in Hybrid 2020-24|Co-Pilot360 Plus|[Upstream](#upstream)| -|MAN|eTGE 2020-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|MAN|TGE 2017-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Mazda|3 2017-18|All|[Dashcam mode](#dashcam)| -|Mazda|6 2017-20|All|[Dashcam mode](#dashcam)| -|Mazda|CX-5 2017-21|All|[Dashcam mode](#dashcam)| -|Mazda|CX-5 2022-25|All|[Upstream](#upstream)| -|Mazda|CX-9 2016-20|All|[Dashcam mode](#dashcam)| -|Mazda|CX-9 2021-23|All|[Upstream](#upstream)| -|Nissan|Altima 2019-20|ProPILOT Assist|[Upstream](#upstream)| -|Nissan|Leaf 2018-23|ProPILOT Assist|[Upstream](#upstream)| -|Nissan|Rogue 2018-20|ProPILOT Assist|[Upstream](#upstream)| -|Nissan|X-Trail 2017|ProPILOT Assist|[Upstream](#upstream)| -|Ram|1500 2019-24|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| -|Ram|2500 2020-24|Adaptive Cruise Control (ACC)|[Dashcam mode](#dashcam)| -|Ram|3500 2019-22|Adaptive Cruise Control (ACC)|[Dashcam mode](#dashcam)| -|Rivian|R1S 2022-24|All|[Upstream](#upstream)| -|Rivian|R1T 2022-24|All|[Upstream](#upstream)| -|SEAT|Alhambra 2018-20|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| -|SEAT|Ateca 2016-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|SEAT|Leon 2014-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Subaru|Ascent 2019-21|All|[Upstream](#upstream)| -|Subaru|Ascent 2023|All|[Dashcam mode](#dashcam)| -|Subaru|Crosstrek 2018-19|EyeSight Driver Assistance|[Upstream](#upstream)| -|Subaru|Crosstrek 2020-23|EyeSight Driver Assistance|[Upstream](#upstream)| -|Subaru|Crosstrek Hybrid 2020|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| -|Subaru|Forester 2017-18|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| -|Subaru|Forester 2019-21|All|[Upstream](#upstream)| -|Subaru|Forester 2022-24|All|[Dashcam mode](#dashcam)| -|Subaru|Forester Hybrid 2020|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| -|Subaru|Impreza 2017-19|EyeSight Driver Assistance|[Upstream](#upstream)| -|Subaru|Impreza 2020-22|EyeSight Driver Assistance|[Upstream](#upstream)| -|Subaru|Legacy 2015-18|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| -|Subaru|Legacy 2020-22|All|[Upstream](#upstream)| -|Subaru|Outback 2015-17|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| -|Subaru|Outback 2018-19|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| -|Subaru|Outback 2020-22|All|[Upstream](#upstream)| -|Subaru|Outback 2023|All|[Dashcam mode](#dashcam)| -|Subaru|Solterra 2023-25|Any|[Not compatible](#can-bus-security)| -|Subaru|XV 2018-19|EyeSight Driver Assistance|[Upstream](#upstream)| -|Subaru|XV 2020-21|EyeSight Driver Assistance|[Upstream](#upstream)| -|Škoda|Fabia 2022-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Kamiq 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Karoq 2019-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Kodiaq 2017-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Octavia 2015-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Octavia RS 2016|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Octavia Scout 2017-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Scala 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Škoda|Superb 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Tesla|Model 3 (with HW3) 2019-23|All|[Upstream](#upstream)| -|Tesla|Model 3 (with HW4) 2024-25|All|[Upstream](#upstream)| -|Tesla|Model X (with HW4) 2024|All|[Dashcam mode](#dashcam)| -|Tesla|Model Y (with HW3) 2020-23|All|[Upstream](#upstream)| -|Tesla|Model Y (with HW4) 2024|All|[Upstream](#upstream)| -|Toyota|Alphard 2019-20|All|[Upstream](#upstream)| -|Toyota|Alphard Hybrid 2021|All|[Upstream](#upstream)| -|Toyota|Avalon 2016|Toyota Safety Sense P|[Upstream](#upstream)| -|Toyota|Avalon 2017-18|All|[Upstream](#upstream)| -|Toyota|Avalon 2019-21|All|[Upstream](#upstream)| -|Toyota|Avalon 2022|All|[Upstream](#upstream)| -|Toyota|Avalon Hybrid 2019-21|All|[Upstream](#upstream)| -|Toyota|Avalon Hybrid 2022|All|[Upstream](#upstream)| -|Toyota|bZ4x 2023-25|Any|[Not compatible](#can-bus-security)| -|Toyota|C-HR 2017-20|All|[Upstream](#upstream)| -|Toyota|C-HR 2021|All|[Upstream](#upstream)| -|Toyota|C-HR Hybrid 2017-20|All|[Upstream](#upstream)| -|Toyota|C-HR Hybrid 2021-22|All|[Upstream](#upstream)| -|Toyota|Camry 2018-20|All|[Upstream](#upstream)| -|Toyota|Camry 2021-24|All|[Upstream](#upstream)| -|Toyota|Camry 2025|Any|[Not compatible](#can-bus-security)| -|Toyota|Camry Hybrid 2018-20|All|[Upstream](#upstream)| -|Toyota|Camry Hybrid 2021-24|All|[Upstream](#upstream)| -|Toyota|Corolla 2017-19|All|[Upstream](#upstream)| -|Toyota|Corolla 2020-22|All|[Upstream](#upstream)| -|Toyota|Corolla Cross 2022-25|Any|[Not compatible](#can-bus-security)| -|Toyota|Corolla Cross (Non-US only) 2020-23|All|[Upstream](#upstream)| -|Toyota|Corolla Cross Hybrid (Non-US only) 2020-22|All|[Upstream](#upstream)| -|Toyota|Corolla Hatchback 2019-22|All|[Upstream](#upstream)| -|Toyota|Corolla Hybrid 2020-22|All|[Upstream](#upstream)| -|Toyota|Corolla Hybrid (South America only) 2020-23|All|[Upstream](#upstream)| -|Toyota|Highlander 2017-19|All|[Upstream](#upstream)| -|Toyota|Highlander 2020-23|All|[Upstream](#upstream)| -|Toyota|Highlander 2025|Any|[Not compatible](#can-bus-security)| -|Toyota|Highlander Hybrid 2017-19|All|[Upstream](#upstream)| -|Toyota|Highlander Hybrid 2020-23|All|[Upstream](#upstream)| -|Toyota|Mirai 2021|All|[Upstream](#upstream)| -|Toyota|Prius 2016|Toyota Safety Sense P|[Upstream](#upstream)| -|Toyota|Prius 2017-20|All|[Upstream](#upstream)| -|Toyota|Prius 2021-22|All|[Upstream](#upstream)| -|Toyota|Prius Prime 2017-20|All|[Upstream](#upstream)| -|Toyota|Prius Prime 2021-22|All|[Upstream](#upstream)| -|Toyota|Prius v 2017|Toyota Safety Sense P|[Upstream](#upstream)| -|Toyota|RAV4 2016|Toyota Safety Sense P|[Upstream](#upstream)| -|Toyota|RAV4 2017-18|All|[Upstream](#upstream)| -|Toyota|RAV4 2019-21|All|[Upstream](#upstream)| -|Toyota|RAV4 2022|All|[Upstream](#upstream)| -|Toyota|RAV4 2023-25|All|[Upstream](#upstream)| -|Toyota|RAV4 Hybrid 2016|Toyota Safety Sense P|[Upstream](#upstream)| -|Toyota|RAV4 Hybrid 2017-18|All|[Upstream](#upstream)| -|Toyota|RAV4 Hybrid 2019-21|All|[Upstream](#upstream)| -|Toyota|RAV4 Hybrid 2022|All|[Upstream](#upstream)| -|Toyota|RAV4 Hybrid 2023-25|All|[Upstream](#upstream)| -|Toyota|RAV4 Prime 2021-23|All|[Community](#community)| -|Toyota|RAV4 Prime 2024-25|Any|[Not compatible](#can-bus-security)| -|Toyota|Sequoia 2023-25|Any|[Not compatible](#can-bus-security)| -|Toyota|Sienna 2018-20|All|[Upstream](#upstream)| -|Toyota|Sienna 2021-23|All|[Community](#community)| -|Toyota|Sienna 2024-25|Any|[Not compatible](#can-bus-security)| -|Toyota|Tundra 2022-25|Any|[Not compatible](#can-bus-security)| -|Toyota|Venza 2021-25|Any|[Not compatible](#can-bus-security)| -|Toyota|Yaris (Non-US only) 2023|All|[Community](#community)| -|Volkswagen|Arteon 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Arteon eHybrid 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Arteon R 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Arteon Shooting Brake 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Atlas 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Atlas Cross Sport 2020-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Caddy 2019|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| -|Volkswagen|Caddy Maxi 2019|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| -|Volkswagen|California 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Caravelle 2020|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|CC 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Crafter 2017-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|e-Crafter 2018-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|e-Golf 2014-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf Alltrack 2015-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf GTD 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf GTE 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf GTI 2015-21|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf R 2015-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Golf SportsVan 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Grand California 2019-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Jetta 2015-18|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| -|Volkswagen|Jetta 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Jetta GLI 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Passat 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Passat Alltrack 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Passat GTE 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Passat NMS 2017-22|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| -|Volkswagen|Polo 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Polo GTI 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Sharan 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| -|Volkswagen|T-Cross 2021|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|T-Roc 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Taos 2022-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Teramont 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Teramont Cross Sport 2021-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Teramont X 2021-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Tiguan 2018-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Tiguan eHybrid 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| -|Volkswagen|Touran 2016-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| - -# Types of Support - -**opendbc can support many more cars than it currently does.** There are a few reasons your car may not be supported. -If your car doesn't fit into any of the incompatibility criteria here, then there's a good chance it can be supported! -We're adding support for new cars all the time. **We don't have a roadmap for car support**, and in fact, most car -support comes from users like you! - -## Upstream - -A supported vehicle is one that just works when you install a comma device. All supported cars provide a better -experience than any stock system. Supported vehicles reference the US market unless otherwise specified. - -## Under Review - -A vehicle under review is one for which software support has been merged into upstream openpilot, but hasn't yet been -tested for drive quality and conformance with [comma safety guidelines](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md). -This is a normal part of the development and quality assurance process. This vehicle will not work when upstream -openpilot is installed, but custom forks may allow their use. - -## Custom - -Vehicles in this category are not considered plug-and-play. Software support is included in upstream openpilot, but -these vehicles might not have a harness in the comma store, or the physical install might be at an unusual or cumbersome -location, or they might need unusual configuration after install. - -## Dashcam - -Dashcam vehicles have software support in upstream openpilot, but will go into "dashcam mode" at startup and will not -engage. This may be due to known issues with driving safety or quality, or it may be a work in progress that isn't yet -ready for safety and quality review. - -## Community - -Although they're not upstream, the community has openpilot running on other makes and models. See the 'Community -Supported Models' section of each make [on our wiki](https://wiki.comma.ai/). - -Some notable works-in-progress: -* Honda - * 2024 Acura Integra, commaai/openpilot#32056 - * 2023-24 Honda Accord (CAN-FD), commaai/openpilot#32229 - * 2024 Honda CR-V (CAN-FD), commaai/openpilot#32806 - * 2024 Honda CR-V Hybrid (CAN-FD), commaai/openpilot#31527 - * Depends on commaai/opendbc#1100 - * 2021-25 Honda Odyssey, commaai/opendbc#1330 - * 2023-24 Honda Pilot (CAN-FD), commaai/openpilot#30324 - * Camera ACC stability improvements, commaai/openpilot#31022 - * Depends on commaai/panda#1814 - * Depends on commaai/opendbc#998 - * These are being reworked for full-time proxy through openpilot - * Manual transmission support (Civic, Integra) - * Depends on commaai/opendbc#1034 (merged) - * Car port support PR not yet filed - -## Incompatible - -### CAN Bus Security - -Vehicles with CAN security measures, such as AUTOSAR Secure Onboard Communication (SecOC) are not usable with openpilot -unless the owner can recover the message signing key and implement CAN message signing. Examples include certain newer -Toyota, and the GM Global B platform. - -### FlexRay - -All the cars that openpilot supports use a [CAN bus](https://en.wikipedia.org/wiki/CAN_bus) for communication between all the car's computers, however a -CAN bus isn't the only way that the computers in your car can communicate. Most, if not all, vehicles from the following -manufacturers use [FlexRay](https://en.wikipedia.org/wiki/FlexRay) instead of a CAN bus: **BMW, Mercedes, Audi, Land Rover, and some Volvo**. These cars -may one day be supported, but we have no immediate plans to support FlexRay. \ No newline at end of file diff --git a/opendbc_repo/examples/joystick.py b/opendbc_repo/examples/joystick.py deleted file mode 100755 index c34878f360..0000000000 --- a/opendbc_repo/examples/joystick.py +++ /dev/null @@ -1,113 +0,0 @@ -#!/usr/bin/env python3 -import time -import threading -import argparse -import numpy as np -from pprint import pprint -from inputs import get_gamepad - -from kbhit import KBHit - -from opendbc.car.structs import CarControl -from opendbc.car.panda_runner import PandaRunner - -class Keyboard: - def __init__(self): - self.kb = KBHit() - self.axis_increment = 0.05 # 5% of full actuation each key press - self.axes_map = {'w': 'gb', 's': 'gb', - 'a': 'steer', 'd': 'steer'} - self.axes_values = {'gb': 0., 'steer': 0.} - self.axes_order = ['gb', 'steer'] - self.cancel = False - - def update(self): - key = self.kb.getch().lower() - print(key) - self.cancel = False - if key == 'r': - self.axes_values = {ax: 0. for ax in self.axes_values} - elif key == 'c': - self.cancel = True - elif key in self.axes_map: - axis = self.axes_map[key] - incr = self.axis_increment if key in ['w', 'a'] else -self.axis_increment - self.axes_values[axis] = float(np.clip(self.axes_values[axis] + incr, -1, 1)) - else: - return False - return True - -class Joystick: - def __init__(self, gamepad=False): - # TODO: find a way to get this from API, perhaps "inputs" doesn't support it - if gamepad: - self.cancel_button = 'BTN_NORTH' # (BTN_NORTH=X, ABS_RZ=Right Trigger) - accel_axis = 'ABS_Y' - steer_axis = 'ABS_RX' - else: - self.cancel_button = 'BTN_TRIGGER' - accel_axis = 'ABS_Y' - steer_axis = 'ABS_RX' - self.min_axis_value = {accel_axis: 0., steer_axis: 0.} - self.max_axis_value = {accel_axis: 255., steer_axis: 255.} - self.axes_values = {accel_axis: 0., steer_axis: 0.} - self.axes_order = [accel_axis, steer_axis] - self.cancel = False - - def update(self): - joystick_event = get_gamepad()[0] - event = (joystick_event.code, joystick_event.state) - if event[0] == self.cancel_button: - if event[1] == 1: - self.cancel = True - elif event[1] == 0: # state 0 is falling edge - self.cancel = False - elif event[0] in self.axes_values: - self.max_axis_value[event[0]] = max(event[1], self.max_axis_value[event[0]]) - self.min_axis_value[event[0]] = min(event[1], self.min_axis_value[event[0]]) - - norm = -float(np.interp(event[1], [self.min_axis_value[event[0]], self.max_axis_value[event[0]]], [-1., 1.])) - self.axes_values[event[0]] = norm if abs(norm) > 0.05 else 0. # center can be noisy, deadzone of 5% - else: - return False - return True - -def joystick_thread(joystick): - while True: - joystick.update() - -def main(joystick): - threading.Thread(target=joystick_thread, args=(joystick,), daemon=True).start() - with PandaRunner() as p: - CC = CarControl(enabled=False) - while True: - CC.actuators.accel = float(4.0*np.clip(joystick.axes_values['gb'], -1, 1)) - CC.actuators.torque = float(np.clip(joystick.axes_values['steer'], -1, 1)) - pprint(CC) - - p.read() - p.write(CC) - - # 100Hz - time.sleep(0.01) - - -if __name__ == '__main__': - parser = argparse.ArgumentParser(description='Test the car interface with a joystick. Uses keyboard by default.', - formatter_class=argparse.ArgumentDefaultsHelpFormatter) - - parser.add_argument('--mode', choices=['keyboard', 'gamepad', 'joystick'], default='keyboard') - args = parser.parse_args() - - print() - joystick: Keyboard | Joystick - if args.mode == 'keyboard': - print('Gas/brake control: `W` and `S` keys') - print('Steering control: `A` and `D` keys') - print('Buttons') - print('- `R`: Resets axes') - print('- `C`: Cancel cruise control') - joystick = Keyboard() - else: - joystick = Joystick(gamepad=(args.mode == 'gamepad')) - main(joystick) diff --git a/opendbc_repo/examples/kbhit.py b/opendbc_repo/examples/kbhit.py deleted file mode 100755 index 35f67b4771..0000000000 --- a/opendbc_repo/examples/kbhit.py +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env python3 -import sys -import termios -import atexit -from select import select - -STDIN_FD = sys.stdin.fileno() - -class KBHit: - def __init__(self) -> None: - self.set_kbhit_terminal() - - def set_kbhit_terminal(self) -> None: - # Save the terminal settings - self.old_term = termios.tcgetattr(STDIN_FD) - self.new_term = self.old_term.copy() - - # New terminal setting unbuffered - self.new_term[3] &= ~(termios.ICANON | termios.ECHO) - termios.tcsetattr(STDIN_FD, termios.TCSAFLUSH, self.new_term) - - # Support normal-terminal reset at exit - atexit.register(self.set_normal_term) - - def set_normal_term(self) -> None: - termios.tcsetattr(STDIN_FD, termios.TCSAFLUSH, self.old_term) - - @staticmethod - def getch() -> str: - return sys.stdin.read(1) - - @staticmethod - def getarrow() -> int: - c = sys.stdin.read(3)[2] - vals = [65, 67, 66, 68] - return vals.index(ord(c)) - - @staticmethod - def kbhit(): - ''' Returns True if keyboard character was hit, False otherwise. - ''' - return select([sys.stdin], [], [], 0)[0] != [] - - -if __name__ == "__main__": - - kb = KBHit() - - print('Hit any key, or ESC to exit') - - while True: - - if kb.kbhit(): - c = kb.getch() - if c == '\x1b': # ESC - break - print(c) - - kb.set_normal_term() diff --git a/opendbc_repo/lefthook.yml b/opendbc_repo/lefthook.yml deleted file mode 100644 index 91d1378433..0000000000 --- a/opendbc_repo/lefthook.yml +++ /dev/null @@ -1,28 +0,0 @@ -output: - - meta # Print lefthook version - - summary # Print summary block (successful and failed steps) - - empty_summary # Print summary heading when there are no steps to run - - success # Print successful steps - - failure # Print failed steps printing - - execution # Print any execution logs - #- execution_out # Print execution output - #- execution_info # Print `EXECUTE > ...` logging - - skips # Print "skip" (i.e. no files matched) - -test: - parallel: true - commands: - # *** static analysis - ruff: - run: ruff check . - codespell: - run: codespell {files} -L tge,stdio -S *.dbc - files: git ls-tree -r HEAD --name-only - cpplint: - run: cpplint --exclude=opendbc/safety/tests/misra/cppcheck/ --exclude=opendbc/can/*_pyx.cpp --recursive --quiet --counting=detailed --linelength=240 --filter=-build,-legal,-readability,-runtime,-whitespace,+build/include_subdir,+build/forward_decl,+build/include_what_you_use,+build/deprecated,+whitespace/comma,+whitespace/line_length,+whitespace/empty_if_body,+whitespace/empty_loop_body,+whitespace/empty_conditional_body,+whitespace/forcolon,+whitespace/parens,+whitespace/semicolon,+whitespace/tab,+readability/braces opendbc/ - misra: - run: opendbc/safety/tests/misra/test_misra.sh - - # *** tests *** - pytest: - run: pytest -n8 diff --git a/opendbc_repo/opendbc/__init__.py b/opendbc_repo/opendbc/__init__.py deleted file mode 100644 index 9f4ee6588b..0000000000 --- a/opendbc_repo/opendbc/__init__.py +++ /dev/null @@ -1,6 +0,0 @@ -import os - -DBC_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'dbc') - -# -I include path for e.g. "#include " -INCLUDE_PATH = os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)), "../")) diff --git a/opendbc_repo/opendbc/can/__init__.py b/opendbc_repo/opendbc/can/__init__.py deleted file mode 100644 index d9979457e4..0000000000 --- a/opendbc_repo/opendbc/can/__init__.py +++ /dev/null @@ -1,8 +0,0 @@ -from opendbc.can.packer import CANPacker -from opendbc.can.parser import CANParser, CANDefine - -__all__ = [ - "CANDefine", - "CANParser", - "CANPacker", -] diff --git a/opendbc_repo/opendbc/can/dbc.py b/opendbc_repo/opendbc/can/dbc.py deleted file mode 100644 index f8a819801a..0000000000 --- a/opendbc_repo/opendbc/can/dbc.py +++ /dev/null @@ -1,212 +0,0 @@ -import re -import os -from dataclasses import dataclass -from collections.abc import Callable - -from opendbc import DBC_PATH - -# TODO: these should just be passed in along with the DBC file -from opendbc.car.honda.hondacan import honda_checksum -from opendbc.car.toyota.toyotacan import toyota_checksum -from opendbc.car.subaru.subarucan import subaru_checksum -from opendbc.car.chrysler.chryslercan import chrysler_checksum, fca_giorgio_checksum -from opendbc.car.hyundai.hyundaicanfd import hkg_can_fd_checksum -from opendbc.car.volkswagen.mqbcan import volkswagen_mqb_meb_checksum, xor_checksum -from opendbc.car.tesla.teslacan import tesla_checksum -from opendbc.car.body.bodycan import body_checksum - - - -class SignalType: - DEFAULT = 0 - COUNTER = 1 - HONDA_CHECKSUM = 2 - TOYOTA_CHECKSUM = 3 - BODY_CHECKSUM = 4 - VOLKSWAGEN_MQB_MEB_CHECKSUM = 5 - XOR_CHECKSUM = 6 - SUBARU_CHECKSUM = 7 - CHRYSLER_CHECKSUM = 8 - HKG_CAN_FD_CHECKSUM = 9 - FCA_GIORGIO_CHECKSUM = 10 - TESLA_CHECKSUM = 11 - - -@dataclass -class Signal: - name: str - start_bit: int - msb: int - lsb: int - size: int - is_signed: bool - factor: float - offset: float - is_little_endian: bool - type: int = SignalType.DEFAULT - calc_checksum: 'Callable[[int, Signal, bytearray], int] | None' = None - - - -@dataclass -class Msg: - name: str - address: int - size: int - sigs: dict[str, Signal] - - -@dataclass -class Val: - name: str - address: int - def_val: str - sigs: dict[str, Signal] | None = None - - -BO_RE = re.compile(r"^BO_ (\w+) (\w+) *: (\w+) (\w+)") -SG_RE = re.compile(r"^SG_ (\w+) : (\d+)\|(\d+)@(\d)([+-]) \(([0-9.+\-eE]+),([0-9.+\-eE]+)\) \[[0-9.+\-eE]+\|[0-9.+\-eE]+\] \".*\" .*") -SGM_RE = re.compile(r"^SG_ (\w+) (\w+) *: (\d+)\|(\d+)@(\d)([+-]) \(([0-9.+\-eE]+),([0-9.+\-eE]+)\) \[[0-9.+\-eE]+\|[0-9.+\-eE]+\] \".*\" .*") -VAL_RE = re.compile(r"^VAL_ (\w+) (\w+) (.*);") -VAL_SPLIT_RE = re.compile(r'["]+') - -@dataclass -class DBC: - name: str - msgs: dict[int, Msg] - addr_to_msg: dict[int, Msg] - name_to_msg: dict[str, Msg] - vals: list[Val] - - def __init__(self, name: str): - dbc_path = name - if not os.path.exists(dbc_path): - dbc_path = os.path.join(DBC_PATH, name + ".dbc") - - self._parse(dbc_path) - - def _parse(self, path: str): - self.name = os.path.basename(path).replace(".dbc", "") - with open(path) as f: - lines = f.readlines() - - checksum_state = get_checksum_state(self.name) - be_bits = [j + i * 8 for i in range(64) for j in range(7, -1, -1)] - self.msgs: dict[int, Msg] = {} - self.addr_to_msg: dict[int, Msg] = {} - self.name_to_msg: dict[str, Msg] = {} - self.vals: list[Val] = [] - address = 0 - signals_temp: dict[int, dict[str, Signal]] = {} - for line_num, line in enumerate(lines, 1): - line = line.strip() - if line.startswith("BO_ "): - m = BO_RE.match(line) - if not m: - continue - address = int(m.group(1), 0) - msg_name = m.group(2) - size = int(m.group(3), 0) - sigs = {} - self.msgs[address] = Msg(msg_name, address, size, sigs) - self.addr_to_msg[address] = self.msgs[address] - self.name_to_msg[msg_name] = self.msgs[address] - signals_temp[address] = sigs - elif line.startswith("SG_ "): - m = SG_RE.search(line) - offset = 0 - if not m: - m = SGM_RE.search(line) - if not m: - continue - offset = 1 - sig_name = m.group(1) - start_bit = int(m.group(2 + offset)) - size = int(m.group(3 + offset)) - is_little_endian = m.group(4 + offset) == "1" - is_signed = m.group(5 + offset) == "-" - factor = float(m.group(6 + offset)) - offset_val = float(m.group(7 + offset)) - - if is_little_endian: - lsb = start_bit - msb = start_bit + size - 1 - else: - idx = be_bits.index(start_bit) - lsb = be_bits[idx + size - 1] - msb = start_bit - - sig = Signal(sig_name, start_bit, msb, lsb, size, is_signed, factor, offset_val, is_little_endian) - set_signal_type(sig, checksum_state, self.name, line_num) - signals_temp[address][sig_name] = sig - elif line.startswith("VAL_ "): - m = VAL_RE.search(line) - if not m: - continue - val_addr = int(m.group(1), 0) - sgname = m.group(2) - defs = m.group(3) - words = [w.strip() for w in VAL_SPLIT_RE.split(defs) if w.strip()] - words = [w.upper().replace(" ", "_") for w in words] - val_def = " ".join(words).strip() - self.vals.append(Val(sgname, val_addr, val_def)) - for addr, sigs in signals_temp.items(): - self.msgs[addr].sigs = sigs - - -# ***** checksum functions ***** - -def tesla_setup_signal(sig: Signal, dbc_name: str, line_num: int) -> None: - if sig.name.endswith("Counter"): - sig.type = SignalType.COUNTER - elif sig.name.endswith("Checksum"): - sig.type = SignalType.TESLA_CHECKSUM - sig.calc_checksum = tesla_checksum - - -@dataclass -class ChecksumState: - checksum_size: int - counter_size: int - checksum_start_bit: int - counter_start_bit: int - little_endian: bool - checksum_type: int - calc_checksum: Callable[[int, Signal, bytearray], int] | None - setup_signal: Callable[[Signal, str, int], None] | None = None - - -def get_checksum_state(dbc_name: str) -> ChecksumState | None: - if dbc_name.startswith(("honda_", "acura_")): - return ChecksumState(4, 2, 3, 5, False, SignalType.HONDA_CHECKSUM, honda_checksum) - elif dbc_name.startswith(("toyota_", "lexus_")): - return ChecksumState(8, -1, 7, -1, False, SignalType.TOYOTA_CHECKSUM, toyota_checksum) - elif dbc_name.startswith("hyundai_canfd_generated"): - return ChecksumState(16, -1, 0, -1, True, SignalType.HKG_CAN_FD_CHECKSUM, hkg_can_fd_checksum) - elif dbc_name.startswith(("vw_mqb", "vw_mqbevo", "vw_meb")): - return ChecksumState(8, 4, 0, 0, True, SignalType.VOLKSWAGEN_MQB_MEB_CHECKSUM, volkswagen_mqb_meb_checksum) - elif dbc_name.startswith("vw_pq"): - return ChecksumState(8, 4, 0, -1, True, SignalType.XOR_CHECKSUM, xor_checksum) - elif dbc_name.startswith("subaru_global_"): - return ChecksumState(8, -1, 0, -1, True, SignalType.SUBARU_CHECKSUM, subaru_checksum) - elif dbc_name.startswith("chrysler_"): - return ChecksumState(8, -1, 7, -1, False, SignalType.CHRYSLER_CHECKSUM, chrysler_checksum) - elif dbc_name.startswith("fca_giorgio"): - return ChecksumState(8, -1, 7, -1, False, SignalType.FCA_GIORGIO_CHECKSUM, fca_giorgio_checksum) - elif dbc_name.startswith("comma_body"): - return ChecksumState(8, 4, 7, 3, False, SignalType.BODY_CHECKSUM, body_checksum) - elif dbc_name.startswith("tesla_model3_party"): - return ChecksumState(8, -1, 0, -1, True, SignalType.TESLA_CHECKSUM, tesla_checksum, tesla_setup_signal) - return None - - -def set_signal_type(sig: Signal, chk: ChecksumState | None, dbc_name: str, line_num: int) -> None: - sig.calc_checksum = None - if chk: - if chk.setup_signal: - chk.setup_signal(sig, dbc_name, line_num) - if sig.name == "CHECKSUM": - sig.type = chk.checksum_type - sig.calc_checksum = chk.calc_checksum - elif sig.name == "COUNTER": - sig.type = SignalType.COUNTER diff --git a/opendbc_repo/opendbc/can/packer.py b/opendbc_repo/opendbc/can/packer.py deleted file mode 100644 index 882dc0b669..0000000000 --- a/opendbc_repo/opendbc/can/packer.py +++ /dev/null @@ -1,67 +0,0 @@ -import math - -from opendbc.can.dbc import DBC, Signal, SignalType - - -class CANPacker: - def __init__(self, dbc_name: str): - self.dbc = DBC(dbc_name) - self.counters: dict[int, int] = {} - - def pack(self, address: int, values: dict[str, float]) -> bytearray: - msg = self.dbc.addr_to_msg.get(address) - if msg is None: - return bytearray() - dat = bytearray(msg.size) - counter_set = False - for name, value in values.items(): - sig = msg.sigs.get(name) - if sig is None: - continue - ival = int(math.floor((value - sig.offset) / sig.factor + 0.5)) - if ival < 0: - ival = (1 << sig.size) + ival - set_value(dat, sig, ival) - if sig.type == SignalType.COUNTER or sig.name == "COUNTER": - self.counters[address] = int(value) - counter_set = True - sig_counter = next((s for s in msg.sigs.values() if s.type == SignalType.COUNTER or s.name == "COUNTER"), None) - if sig_counter and not counter_set: - if address not in self.counters: - self.counters[address] = 0 - set_value(dat, sig_counter, self.counters[address]) - self.counters[address] = (self.counters[address] + 1) % (1 << sig_counter.size) - sig_checksum = next((s for s in msg.sigs.values() if s.type > SignalType.COUNTER), None) - if sig_checksum and sig_checksum.calc_checksum: - checksum = sig_checksum.calc_checksum(address, sig_checksum, dat) - set_value(dat, sig_checksum, checksum) - return dat - - def make_can_msg(self, name_or_addr, bus: int, values: dict[str, float]): - if isinstance(name_or_addr, int): - addr = name_or_addr - else: - msg = self.dbc.name_to_msg.get(name_or_addr) - if msg is None: - return 0, b'', bus - addr = msg.address - dat = self.pack(addr, values) - if len(dat) == 0: - return 0, b'', bus - return addr, bytes(dat), bus - - -def set_value(msg: bytearray, sig: Signal, ival: int) -> None: - i = sig.lsb // 8 - bits = sig.size - if sig.size < 64: - ival &= (1 << sig.size) - 1 - while 0 <= i < len(msg) and bits > 0: - shift = sig.lsb % 8 if (sig.lsb // 8) == i else 0 - size = min(bits, 8 - shift) - mask = ((1 << size) - 1) << shift - msg[i] &= ~mask - msg[i] |= (ival & ((1 << size) - 1)) << shift - bits -= size - ival >>= size - i = i + 1 if sig.is_little_endian else i - 1 diff --git a/opendbc_repo/opendbc/can/parser.py b/opendbc_repo/opendbc/can/parser.py deleted file mode 100644 index 1402c80b11..0000000000 --- a/opendbc_repo/opendbc/can/parser.py +++ /dev/null @@ -1,283 +0,0 @@ -import time -import math -import numbers -from collections import defaultdict, deque -from dataclasses import dataclass, field - -from opendbc.can.dbc import DBC, Signal - - -MAX_BAD_COUNTER = 5 -CAN_INVALID_CNT = 5 - - - -def get_raw_value(dat: bytes | bytearray, sig: Signal) -> int: - ret = 0 - i = sig.msb // 8 - bits = sig.size - while 0 <= i < len(dat) and bits > 0: - lsb = sig.lsb if (sig.lsb // 8) == i else i * 8 - msb = sig.msb if (sig.msb // 8) == i else (i + 1) * 8 - 1 - size = msb - lsb + 1 - d = (dat[i] >> (lsb - (i * 8))) & ((1 << size) - 1) - ret |= d << (bits - size) - bits -= size - i = i - 1 if sig.is_little_endian else i + 1 - return ret - - -@dataclass -class MessageState: - address: int - name: str - size: int - signals: list[Signal] - ignore_alive: bool = False - ignore_checksum: bool = False - ignore_counter: bool = False - frequency: float = 0.0 - timeout_threshold: float = 1e5 # default to 1Hz threshold - vals: list[float] = field(default_factory=list) - all_vals: list[list[float]] = field(default_factory=list) - timestamps: deque[int] = field(default_factory=deque) - counter: int = 0 - counter_fail: int = 0 - first_seen_nanos: int = 0 - - def parse(self, nanos: int, dat: bytes) -> bool: - tmp_vals: list[float] = [0.0] * len(self.signals) - checksum_failed = False - counter_failed = False - - if self.first_seen_nanos == 0: - self.first_seen_nanos = nanos - - for i, sig in enumerate(self.signals): - tmp = get_raw_value(dat, sig) - if sig.is_signed: - tmp -= ((tmp >> (sig.size - 1)) & 0x1) * (1 << sig.size) - - if not self.ignore_checksum and sig.calc_checksum is not None: - if sig.calc_checksum(self.address, sig, bytearray(dat)) != tmp: - checksum_failed = True - - if not self.ignore_counter and sig.type == 1: # COUNTER - if not self.update_counter(tmp, sig.size): - counter_failed = True - - tmp_vals[i] = tmp * sig.factor + sig.offset - - # must have good counter and checksum to update data - if checksum_failed or counter_failed: - return False - - if not self.vals: - self.vals = [0.0] * len(self.signals) - self.all_vals = [[] for _ in self.signals] - - for i, v in enumerate(tmp_vals): - self.vals[i] = v - self.all_vals[i].append(v) - - self.timestamps.append(nanos) - max_buffer = 500 - while len(self.timestamps) > max_buffer: - self.timestamps.popleft() - - if self.frequency < 1e-5 and len(self.timestamps) >= 3: - dt = (self.timestamps[-1] - self.timestamps[0]) * 1e-9 - if (dt > 1.0 or len(self.timestamps) >= max_buffer) and dt != 0: - self.frequency = min(len(self.timestamps) / dt, 100.0) - self.timeout_threshold = (1_000_000_000 / self.frequency) * 10 - return True - - def update_counter(self, cur_count: int, cnt_size: int) -> bool: - if ((self.counter + 1) & ((1 << cnt_size) - 1)) != cur_count: - self.counter_fail = min(self.counter_fail + 1, MAX_BAD_COUNTER) - elif self.counter_fail > 0: - self.counter_fail -= 1 - self.counter = cur_count - return self.counter_fail < MAX_BAD_COUNTER - - def valid(self, current_nanos: int, bus_timeout: bool) -> bool: - if self.ignore_alive: - return True - if not self.timestamps: - if self.first_seen_nanos != 0 and (current_nanos - self.first_seen_nanos) < 2e9: # 2초 유예 - return True - #print(f"Not Seen {self.name} on bus {self.address} has no timestamps yet, first seen at {self.first_seen_nanos} ns") - return False - if (current_nanos - self.timestamps[-1]) > self.timeout_threshold: - #print(f"Timeout {self.name} on bus {self.address} timed out: {current_nanos - self.timestamps[-1]} ns since last update") - return False - return True - - -class VLDict(dict): - def __init__(self, parser): - super().__init__() - self.parser = parser - - def __getitem__(self, key): - if key not in self: - self.parser._add_message(key) - return super().__getitem__(key) - -class CANParser: - def __init__(self, dbc_name: str, messages: list[tuple[str | int, int]], bus: int): - self.dbc_name: str = dbc_name - self.bus: int = bus - self.dbc: DBC = DBC(dbc_name) - - self.vl: dict[int | str, dict[str, float]] = VLDict(self) - self.vl_all: dict[int | str, dict[str, list[float]]] = {} - self.ts_nanos: dict[int | str, dict[str, int]] = {} - self.addresses: set[int] = set() - self.message_states: dict[int, MessageState] = {} - self.seen_addresses: set[int] = set() - self.controls_ready = False - - for name_or_addr, freq in messages: - if isinstance(name_or_addr, numbers.Number): - msg = self.dbc.addr_to_msg.get(int(name_or_addr)) - else: - msg = self.dbc.name_to_msg.get(name_or_addr) - if msg is None: - raise RuntimeError(f"could not find message {name_or_addr!r} in DBC {dbc_name}") - if msg.address in self.addresses: - raise RuntimeError("Duplicate Message Check: %d" % msg.address) - - self._add_message(name_or_addr, freq) - - self.can_valid: bool = False - self.bus_timeout: bool = False - self.can_invalid_cnt: int = CAN_INVALID_CNT - self.last_nonempty_nanos: int = 0 - - self.invalid_name = None - self.invalid_time_counter = 0 - self.invalid_print_counter = 0 - - def _add_message(self, name_or_addr: str | int, freq: int = None) -> None: - if isinstance(name_or_addr, numbers.Number): - msg = self.dbc.addr_to_msg.get(int(name_or_addr)) - else: - msg = self.dbc.name_to_msg.get(name_or_addr) - assert msg is not None - assert msg.address not in self.addresses - - self.addresses.add(msg.address) - signal_names = list(msg.sigs.keys()) - signals_dict = {s: 0.0 for s in signal_names} - dict.__setitem__(self.vl, msg.address, signals_dict) - dict.__setitem__(self.vl, msg.name, signals_dict) - self.vl_all[msg.address] = defaultdict(list) - self.vl_all[msg.name] = self.vl_all[msg.address] - self.ts_nanos[msg.address] = {s: 0 for s in signal_names} - self.ts_nanos[msg.name] = self.ts_nanos[msg.address] - - state = MessageState( - address=msg.address, - name=msg.name, - size=msg.size, - signals=list(msg.sigs.values()), - ignore_alive=freq is not None and math.isnan(freq), - ) - state.first_seen_nanos = time.monotonic_ns() # 등록시 즉시 타임스탬프 설정 - if freq is not None and freq > 0: - state.frequency = freq - state.timeout_threshold = (1_000_000_000 / freq) * 10 - else: - # if frequency not specified, assume 1Hz until we learn it - freq = 1 - state.timeout_threshold = (1_000_000_000 / freq) * 10 - - self.message_states[msg.address] = state - - def update_valid(self, nanos: int) -> None: - valid = True - counters_valid = True - for state in self.message_states.values(): - if state.counter_fail >= MAX_BAD_COUNTER: - counters_valid = False - if not state.valid(nanos, self.bus_timeout): - valid = False - self.invalid_time_counter += 1 - if self.controls_ready and self.invalid_name is None or state.name != self.invalid_name or self.invalid_time_counter > 100: - if self.invalid_print_counter < 100: - print(f"CAN_INVALID = {state.name}, bus = {self.bus}") - self.invalid_print_counter += 1 - self.invalid_name = state.name - self.invalid_time_counter = 0 - - self.can_invalid_cnt = 0 if valid else min(self.can_invalid_cnt + 1, CAN_INVALID_CNT) - self.can_valid = self.can_invalid_cnt < CAN_INVALID_CNT and counters_valid - - def update(self, strings, sendcan: bool = False): - if strings and not isinstance(strings[0], list | tuple): - strings = [strings] - - for addr in self.addresses: - for k in self.vl_all[addr]: - self.vl_all[addr][k].clear() - - updated_addrs: set[int] = set() - for entry in strings: - t = entry[0] - frames = entry[1] - bus_empty = True - for address, dat, src in frames: - if src != self.bus: - continue - if self.controls_ready: - self.seen_addresses.add(address) - bus_empty = False - state = self.message_states.get(address) - if state is None or len(dat) > 64: - continue - if state.parse(t, dat): - updated_addrs.add(address) - msgname = state.name - for i, sig in enumerate(state.signals): - val = state.vals[i] - self.vl[address][sig.name] = val - self.vl[msgname][sig.name] = val - self.vl_all[address][sig.name] = state.all_vals[i] - self.vl_all[msgname][sig.name] = state.all_vals[i] - self.ts_nanos[address][sig.name] = state.timestamps[-1] - self.ts_nanos[msgname][sig.name] = state.timestamps[-1] - - if not bus_empty: - self.last_nonempty_nanos = t - - ignore_alive = all(s.ignore_alive for s in self.message_states.values()) - bus_timeout_threshold = 500 * 1_000_000 - for st in self.message_states.values(): - if st.timeout_threshold > 0: - bus_timeout_threshold = min(bus_timeout_threshold, st.timeout_threshold) - self.bus_timeout = ((t - self.last_nonempty_nanos) > bus_timeout_threshold) and not ignore_alive - self.update_valid(t) - - return updated_addrs - - -class CANDefine: - def __init__(self, dbc_name: str): - dbc = DBC(dbc_name) - - dv = defaultdict(dict) - for val in dbc.vals: - sgname = val.name - address = val.address - msg = dbc.addr_to_msg.get(address) - if msg is None: - raise KeyError(address) - msgname = msg.name - parts = val.def_val.split() - values = [int(v) for v in parts[::2]] - defs = parts[1::2] - dv[address][sgname] = dict(zip(values, defs, strict=True)) - dv[msgname][sgname] = dv[address][sgname] - - self.dv = dict(dv) diff --git a/opendbc_repo/opendbc/can/tests/.gitignore b/opendbc_repo/opendbc/can/tests/.gitignore deleted file mode 100644 index 192fb0945e..0000000000 --- a/opendbc_repo/opendbc/can/tests/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.bz2 diff --git a/opendbc_repo/opendbc/can/tests/__init__.py b/opendbc_repo/opendbc/can/tests/__init__.py deleted file mode 100644 index 3bf02fdae0..0000000000 --- a/opendbc_repo/opendbc/can/tests/__init__.py +++ /dev/null @@ -1,8 +0,0 @@ -import glob -import os - -from opendbc import DBC_PATH - -ALL_DBCS = [os.path.basename(dbc).split('.')[0] for dbc in - glob.glob(f"{DBC_PATH}/*.dbc")] -TEST_DBC = os.path.abspath(os.path.join(os.path.dirname(__file__), "test.dbc")) diff --git a/opendbc_repo/opendbc/can/tests/benchmark.py b/opendbc_repo/opendbc/can/tests/benchmark.py deleted file mode 100644 index 54f2037864..0000000000 --- a/opendbc_repo/opendbc/can/tests/benchmark.py +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env python3 -import time -from opendbc.can import CANPacker, CANParser - - -def _benchmark(checks, n): - parser = CANParser('toyota_new_mc_pt_generated', checks, 0) - packer = CANPacker('toyota_new_mc_pt_generated') - - t1 = time.process_time_ns() - can_msgs = [] - for i in range(10000): - values = {"ACC_CONTROL": {"ACC_TYPE": 1, "ALLOW_LONG_PRESS": 3}} - msgs = [packer.make_can_msg(k, 0, v) for k, v in values.items()] - can_msgs.append([int(0.01 * i * 1e9), msgs]) - t2 = time.process_time_ns() - pack_dt = t2 - t1 - - ets = [] - for _ in range(25): - if n > 1: - strings = [] - for i in range(0, len(can_msgs), n): - strings.append(can_msgs[i:i + n]) - t1 = time.process_time_ns() - for m in strings: - parser.update(m) - t2 = time.process_time_ns() - else: - t1 = time.process_time_ns() - for m in can_msgs: - parser.update([m]) - t2 = time.process_time_ns() - - ets.append(t2 - t1) - - et = sum(ets) / len(ets) - avg_nanos = et / len(can_msgs) - print('[%d] %.1fms to pack, %.1fms to parse %s messages, avg: %dns' % (n, pack_dt/1e6, et/1e6, len(can_msgs), avg_nanos)) - -if __name__ == "__main__": - # python -m cProfile -s cumulative benchmark.py - _benchmark([('ACC_CONTROL', 10)], 1) - _benchmark([('ACC_CONTROL', 10)], 5) - _benchmark([('ACC_CONTROL', 10)], 10) diff --git a/opendbc_repo/opendbc/can/tests/test.dbc b/opendbc_repo/opendbc/can/tests/test.dbc deleted file mode 100644 index 05104fb068..0000000000 --- a/opendbc_repo/opendbc/can/tests/test.dbc +++ /dev/null @@ -1,27 +0,0 @@ -CM_ "This DBC is used for the CAN parser and packer tests."; - -BO_ 228 STEERING_CONTROL: 5 EON - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-4096|4096] "" EPS - SG_ STEER_DOWN_TO_ZERO : 38|1@0+ (1,0) [0|1] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS - -BO_ 316 Brake_Status: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|46@1+ (1,0) [0|1] "" XXX - SG_ ES_Brake : 58|1@1+ (1,0) [0|1] "" XXX - SG_ Signal2 : 59|3@1+ (1,0) [0|1] "" XXX - SG_ Brake : 62|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 245 CAN_FD_MESSAGE: 32 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|1] "" XXX - SG_ SIGNED : 22|16@0- (1,0) [0|1] "" XXX - SG_ 64_BIT_LE : 159|64@1+ (1,0) [0|1] "" XXX - SG_ 64_BIT_BE : 80|64@0+ (1,0) [0|1] "" XXX - -VAL_ 80 NON_EXISTENT_ADDR 0 "test"; diff --git a/opendbc_repo/opendbc/can/tests/test_checksums.py b/opendbc_repo/opendbc/can/tests/test_checksums.py deleted file mode 100644 index b06ab3262c..0000000000 --- a/opendbc_repo/opendbc/can/tests/test_checksums.py +++ /dev/null @@ -1,555 +0,0 @@ -import copy -from opendbc.can import CANPacker, CANParser - - -class TestCanChecksums: - - def verify_checksum(self, subtests, dbc_file: str, msg_name: str, msg_addr: int, test_messages: list[bytes], - checksum_field: str = 'CHECKSUM', counter_field = 'COUNTER'): - """ - Verify that opendbc calculates payload CRCs/checksums matching those received in known-good sample messages - Depends on all non-zero bits in the sample message having a corresponding DBC signal, add UNKNOWN signals if needed - """ - parser = CANParser(dbc_file, [(msg_name, 0)], 0) - packer = CANPacker(dbc_file) - - for data in test_messages: - expected_msg = (msg_addr, data, 0) - parser.update([0, [expected_msg]]) - expected = copy.deepcopy(parser.vl[msg_name]) - - modified = copy.deepcopy(expected) - modified.pop(checksum_field, None) - modified_msg = packer.make_can_msg(msg_name, 0, modified) - - parser.update([0, [modified_msg]]) - tested = parser.vl[msg_name] - with subtests.test(counter=expected[counter_field]): - assert tested[checksum_field] == expected[checksum_field] - - def verify_fca_giorgio_crc(self, subtests, msg_name: str, msg_addr: int, test_messages: list[bytes]): - """Test modified SAE J1850 CRCs, with special final XOR cases for EPS messages""" - assert len(test_messages) == 3 - self.verify_checksum(subtests, "fca_giorgio", msg_name, msg_addr, test_messages) - - def test_fca_giorgio_eps_1(self, subtests): - self.verify_fca_giorgio_crc(subtests, "EPS_1", 0xDE, [ - b'\x17\x51\x97\xcc\x00\xdf', - b'\x17\x51\x97\xc9\x01\xa3', - b'\x17\x51\x97\xcc\x02\xe5', - ]) - - def test_fca_giorgio_eps_2(self, subtests): - self.verify_fca_giorgio_crc(subtests, "EPS_2", 0x106, [ - b'\x7c\x43\x57\x60\x00\x00\xa1', - b'\x7c\x63\x58\xe0\x00\x01\xd5', - b'\x7c\x63\x58\xe0\x00\x02\xf2', - ]) - - def test_fca_giorgio_eps_3(self, subtests): - self.verify_fca_giorgio_crc(subtests, "EPS_3", 0x122, [ - b'\x7b\x30\x00\xf8', - b'\x7b\x10\x01\x90', - b'\x7b\xf0\x02\x6e', - ]) - - def test_fca_giorgio_abs_2(self, subtests): - self.verify_fca_giorgio_crc(subtests, "ABS_2", 0xFE, [ - b'\x7e\x38\x00\x7d\x10\x31\x80\x32', - b'\x7e\x38\x00\x7d\x10\x31\x81\x2f', - b'\x7e\x38\x00\x7d\x20\x31\x82\x20', - ]) - - def test_honda_checksum(self): - """Test checksums for Honda standard and extended CAN ids""" - # TODO: refactor to use self.verify_checksum() - dbc_file = "honda_accord_2018_can_generated" - msgs = [("LKAS_HUD", 0), ("LKAS_HUD_A", 0)] - parser = CANParser(dbc_file, msgs, 0) - packer = CANPacker(dbc_file) - - values = { - 'SET_ME_X41': 0x41, - 'STEERING_REQUIRED': 1, - 'SOLID_LANES': 1, - 'BEEP': 0, - } - - # known correct checksums according to the above values - checksum_std = [11, 10, 9, 8] - checksum_ext = [4, 3, 2, 1] - - for std, ext in zip(checksum_std, checksum_ext, strict=True): - msgs = [ - packer.make_can_msg("LKAS_HUD", 0, values), - packer.make_can_msg("LKAS_HUD_A", 0, values), - ] - parser.update([0, msgs]) - - assert parser.vl['LKAS_HUD']['CHECKSUM'] == std - assert parser.vl['LKAS_HUD_A']['CHECKSUM'] == ext - - def verify_volkswagen_mqb_crc(self, subtests, msg_name: str, msg_addr: int, test_messages: list[bytes], counter_field: str = 'COUNTER'): - """Test AUTOSAR E2E Profile 2 CRCs""" - assert len(test_messages) == 16 # All counter values must be tested - self.verify_checksum(subtests, "vw_mqb", msg_name, msg_addr, test_messages, counter_field=counter_field) - - def test_volkswagen_mqb_crc_lwi_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "LWI_01", 0x86, [ - b'\x6b\x00\xbd\x00\x00\x00\x00\x00', - b'\xee\x01\x0a\x00\x00\x00\x00\x00', - b'\xd8\x02\xa9\x00\x00\x00\x00\x00', - b'\x03\x03\xbe\xa2\x12\x00\x00\x00', - b'\x7b\x04\x31\x20\x03\x00\x00\x00', - b'\x8b\x05\xe2\x85\x09\x00\x00\x00', - b'\x63\x06\x13\x21\x00\x00\x00\x00', - b'\x66\x07\x05\x00\x00\x00\x00\x00', - b'\x49\x08\x0d\x00\x00\x00\x00\x00', - b'\x5f\x09\x7e\x60\x01\x00\x00\x00', - b'\xaf\x0a\x72\x20\x00\x00\x00\x00', - b'\x59\x0b\x1b\x00\x00\x00\x00\x00', - b'\xa8\x0c\x06\x00\x00\x00\x00\x00', - b'\xbc\x0d\x72\x20\x00\x00\x00\x00', - b'\xf9\x0e\x0f\x00\x00\x00\x00\x00', - b'\x60\x0f\x62\xc0\x00\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_airbag_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "Airbag_01", 0x40, [ - b'\xaf\x00\x00\x80\xc0\x00\x20\x3e', - b'\x54\x01\x00\x80\xc0\x00\x20\x1a', - b'\x54\x02\x00\x80\xc0\x00\x60\x00', - b'\x31\x03\x00\x80\xc0\x00\x60\xf2', - b'\xe0\x04\x00\x80\xc0\x00\x60\xcc', - b'\xb3\x05\x00\x80\xc0\x00\x40\xde', - b'\xa4\x06\x00\x80\xc0\x00\x40\x18', - b'\x94\x07\x00\x80\xc0\x00\x20\x38', - b'\x2d\x08\x00\x80\xc0\x00\x60\xae', - b'\xc2\x09\x00\x80\xc0\x00\x00\x1c', - b'\x1f\x0a\x00\x80\xc0\x00\x60\x2c', - b'\x7f\x0b\x00\x80\xc0\x00\x00\x00', - b'\x03\x0c\x00\x80\xc0\x00\x40\xd6', - b'\x56\x0d\x00\x80\xc0\x00\x20\x50', - b'\x4a\x0e\x00\x80\xc0\x00\x20\xf2', - b'\xe5\x0f\x00\x80\xc0\x00\x40\xf6', - ]) - - def test_volkswagen_mqb_crc_lh_eps_03(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "LH_EPS_03", 0x9F, [ - b'\x11\x30\x2e\x00\x05\x1c\x80\x30', - b'\x5b\x31\x8e\x03\x05\x53\x00\x30', - b'\xcb\x32\xd3\x06\x05\x73\x00\x30', - b'\xf2\x33\x28\x00\x05\x26\x00\x30', - b'\x0b\x34\x44\x00\x05\x5b\x80\x30', - b'\xed\x35\x80\x00\x03\x34\x00\x30', - b'\xf0\x36\x88\x00\x05\x3d\x80\x30', - b'\x9e\x37\x44\x03\x05\x41\x00\x30', - b'\x68\x38\x06\x01\x05\x18\x80\x30', - b'\x87\x39\x51\x00\x05\x11\x80\x30', - b'\x8c\x3a\x29\x00\x05\xac\x00\x30', - b'\x08\x3b\xbd\x00\x05\x8e\x00\x30', - b'\xd4\x3c\x19\x00\x05\x05\x80\x30', - b'\x29\x3d\x54\x00\x05\x5b\x00\x30', - b'\xa1\x3e\x49\x01\x03\x04\x80\x30', - b'\xe2\x3f\x05\x00\x05\x0a\x00\x30', - ]) - - def test_volkswagen_mqb_crc_getriebe_11(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "Getriebe_11", 0xAD, [ - b'\xf8\xe0\xbf\xff\x5f\x20\x20\x20', - b'\xb0\xe1\xbf\xff\xc6\x98\x21\x80', - b'\xd2\xe2\xbf\xff\x5f\x20\x20\x20', - b'\x00\xe3\xbf\xff\xaa\x20\x20\x10', - b'\xf1\xe4\xbf\xff\x5f\x20\x20\x20', - b'\xc4\xe5\xbf\xff\x5f\x20\x20\x20', - b'\xda\xe6\xbf\xff\x5f\x20\x20\x20', - b'\x85\xe7\xbf\xff\x5f\x20\x20\x20', - b'\x12\xe8\xbf\xff\x5f\x20\x20\x20', - b'\x45\xe9\xbf\xff\xaa\x20\x20\x10', - b'\x03\xea\xbf\xff\xcc\x20\x20\x10', - b'\xfc\xeb\xbf\xff\x5f\x20\x21\x20', - b'\xfe\xec\xbf\xff\xad\x20\x20\x10', - b'\xbd\xed\xbf\xff\xaa\x20\x20\x10', - b'\x67\xee\xbf\xff\xaa\x20\x20\x10', - b'\x36\xef\xbf\xff\xaa\x20\x20\x10', - ], counter_field="COUNTER_DISABLED") # see opendbc#1235 - - def test_volkswagen_mqb_crc_esp_21(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ESP_21", 0xFD, [ - b'\x66\xd0\x1f\x80\x45\x05\x00\x00', - b'\x87\xd1\x1f\x80\x52\x05\x00\x00', - b'\xcd\xd2\x1f\x80\x50\x06\x00\x00', - b'\xfd\xd3\x1f\x80\x35\x02\x00\x00', - b'\xfa\xd4\x1f\x80\x22\x05\x00\x00', - b'\xfd\xd5\x1f\x80\x84\x04\x00\x00', - b'\x2e\xd6\x1f\x80\xf0\x03\x00\x00', - b'\x9f\xd7\x1f\x80\x00\x00\x00\x00', - b'\x1e\xd8\x1f\x80\xb3\x03\x00\x00', - b'\x61\xd9\x1f\x80\x6d\x05\x00\x00', - b'\x44\xda\x1f\x80\x47\x02\x00\x00', - b'\x86\xdb\x1f\x80\x3a\x02\x00\x00', - b'\x39\xdc\x1f\x80\xcb\x01\x00\x00', - b'\x19\xdd\x1f\x80\x00\x00\x00\x00', - b'\x8c\xde\x1f\x80\xba\x04\x00\x00', - b'\xfb\xdf\x1f\x80\x46\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_esp_02(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ESP_02", 0x101, [ - b'\xf2\x00\x7e\xff\xa1\x2a\x40\x00', - b'\xd3\x01\x7d\x00\xa2\x0c\x02\x00', - b'\x03\x02\x7a\x06\xa2\x49\x42\x00', - b'\xfd\x03\x70\xfb\xa1\xde\x00\x00', - b'\x8e\x04\x7b\xf7\xa1\xd2\x01\x00', - b'\x0f\x05\x7d\xfd\xa1\x31\x40\x00', - b'\xb6\x06\x7d\x01\xa2\x0a\x40\x00', - b'\xe8\x07\x7e\xfd\xa1\x12\x40\x00', - b'\x74\x08\x7a\x01\xa2\x40\x01\x00', - b'\xe3\x09\x81\x00\xa2\xb5\x01\x00', - b'\xab\x0a\x74\x09\xa2\x9f\x42\x00', - b'\xf3\x0b\x80\x12\xa2\x94\x00\x00', - b'\x88\x0c\x7f\x07\xa2\x46\x00\x00', - b'\x6f\x0d\x7f\xff\xa1\x53\x40\x00', - b'\x38\x0e\x73\xd6\xa1\x6a\x40\x00', - b'\x49\x0f\x85\x12\xa2\xf6\x01\x00', - ]) - - def test_volkswagen_mqb_crc_esp_05(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ESP_05", 0x106, [ - b'\x90\x80\x64\x00\x00\x00\xe7\x10', - b'\xf4\x81\x64\x00\x00\x00\xe7\x10', - b'\x90\x82\x63\x00\x00\x00\xe8\x10', - b'\xa0\x83\x63\x00\x00\x00\xe6\x10', - b'\xe7\x84\x63\x00\x00\x00\xe8\x10', - b'\x2e\x85\x78\x04\x00\x00\xea\x30', - b'\x7b\x86\x63\x00\x00\x00\xe6\x10', - b'\x71\x87\x79\x04\x00\x00\xd0\x30', - b'\x50\x88\x79\x04\x00\x00\xea\x30', - b'\x81\x89\x64\x00\x00\x00\xe1\x10', - b'\x6a\x8a\x68\x00\x00\x04\xd0\x10', - b'\x17\x8b\x6a\x04\x00\x00\xe6\x10', - b'\xc7\x8c\x63\x00\x00\x00\xd1\x10', - b'\x53\x8d\x64\x04\x00\x00\xe2\x10', - b'\x24\x8e\x63\x00\x00\x00\xe7\x10', - b'\x3f\x8f\x82\x04\x00\x00\xe6\x30', - ]) - - def test_volkswagen_mqb_crc_esp_10(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ESP_10", 0x116, [ - b'\x2d\x00\xd5\x98\x9f\x26\x25\x0f', - b'\x24\x01\x60\x63\x2c\x5e\x3b\x0f', - b'\x08\x02\xb2\x2f\xee\x9a\x29\x0f', - b'\x7c\x03\x17\x07\x1d\xe5\x8c\x0f', - b'\xaa\x04\xd6\xe3\xeb\x98\xe8\x0f', - b'\x4e\x05\xbb\xd9\x65\x43\xca\x0f', - b'\x59\x06\x78\xbd\x25\xc6\xf2\xff', - b'\xaf\x07\x42\x85\x53\xbe\xbe\x0f', - b'\x2a\x08\xa6\xcd\x95\x8c\x12\x0f', - b'\xce\x09\x6e\x17\x6d\x1b\x2f\x0f', - b'\x60\x0a\xd3\xe6\x3a\x8d\xf0\x0f', - b'\xc5\x0b\xfc\x69\x57\x50\x21\x0f', - b'\x70\x0c\xde\xf3\x9d\xe9\x6b\xff', - b'\x62\x0d\xc4\x1a\xdb\x61\x7a\x0f', - b'\x76\x0e\x79\x69\xe3\x32\x67\x0f', - b'\x15\x0f\x51\x59\x56\x35\xb1\x0f', - ]) - - def test_volkswagen_mqb_crc_acc_10(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ACC_10", 0x117, [ - b'\x9b\x00\x00\x40\x68\x00\x00\xff', - b'\xff\x01\x00\x40\x68\x00\x00\xff', - b'\x53\x02\x00\x40\x68\x00\x00\xff', - b'\x37\x03\x00\x40\x68\x00\x00\xff', - b'\x24\x04\x00\x40\x68\x00\x00\xff', - b'\x40\x05\x00\x40\x68\x00\x00\xff', - b'\xec\x06\x00\x40\x68\x00\x00\xff', - b'\x88\x07\x00\x40\x68\x00\x00\xff', - b'\xca\x08\x00\x40\x68\x00\x00\xff', - b'\xae\x09\x00\x40\x68\x00\x00\xff', - b'\x02\x0a\x00\x40\x68\x00\x00\xff', - b'\x66\x0b\x00\x40\x68\x00\x00\xff', - b'\x75\x0c\x00\x40\x68\x00\x00\xff', - b'\x11\x0d\x00\x40\x68\x00\x00\xff', - b'\xbd\x0e\x00\x40\x68\x00\x00\xff', - b'\xd9\x0f\x00\x40\x68\x00\x00\xff', - ]) - - def test_volkswagen_mqb_crc_tsk_06(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "TSK_06", 0x120, [ - b'\xc1\x00\x00\x02\x00\x08\xff\x21', - b'\x34\x01\x00\x02\x00\x08\xff\x21', - b'\xcc\x02\x00\x02\x00\x08\xff\x21', - b'\x1e\x03\x00\x02\x00\x08\xff\x21', - b'\x48\x04\x00\x02\x00\x08\xff\x21', - b'\x4a\x05\x00\x02\x00\x08\xff\x21', - b'\xa5\x06\x00\x02\x00\x08\xff\x21', - b'\xa7\x07\x00\x02\x00\x08\xff\x21', - b'\xfe\x08\x00\x02\x00\x08\xff\x21', - b'\xa8\x09\x00\x02\x00\x08\xff\x21', - b'\x73\x0a\x00\x02\x00\x08\xff\x21', - b'\xdf\x0b\x00\x02\x00\x08\xff\x21', - b'\x05\x0c\x00\x02\x00\x08\xff\x21', - b'\xb5\x0d\x00\x02\x00\x08\xff\x21', - b'\xde\x0e\x00\x02\x00\x08\xff\x21', - b'\x0b\x0f\x00\x02\x00\x08\xff\x21', - ]) - - def test_volkswagen_mqb_crc_motor_20(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "Motor_20", 0x121, [ - b'\xb9\x00\x00\xc0\x39\x46\x7e\xfe', - b'\x85\x31\x20\x00\x1a\x46\x7e\xfe', - b'\xc7\x12\x00\x40\x1a\x46\x7e\xfe', - b'\x53\x93\x00\x00\x19\x46\x7e\xfe', - b'\xa4\x34\x00\x80\x1a\x46\x7e\xfe', - b'\x0e\x55\x20\x60\x18\x46\x7e\xfe', - b'\x3f\x06\x00\xc0\x37\x4c\x7e\xfe', - b'\x0c\x07\x00\x40\x39\x46\x7e\xfe', - b'\x2a\x08\x00\x00\x3a\x46\x7e\xfe', - b'\x7f\x49\x20\x80\x1a\x46\x7e\xfe', - b'\x2f\x0a\x00\xc0\x39\x46\x7e\xfe', - b'\x70\xbb\x00\x00\x17\x46\x7e\xfe', - b'\x06\x0c\x00\x00\x39\x46\x7e\xfe', - b'\x4b\x9d\x20\xe0\x16\x4c\x7e\xfe', - b'\x73\xfe\x00\x40\x16\x46\x7e\xfe', - b'\xaf\x0f\x20\x80\x39\x4c\x7e\xfe', - ]) - - def test_volkswagen_mqb_crc_acc_06(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ACC_06", 0x122, [ - b'\x14\x80\x00\xfe\x07\x00\x00\x18', - b'\x9f\x81\x00\xfe\x07\x00\x00\x18', - b'\x0a\x82\x00\xfe\x07\x00\x00\x28', - b'\x40\x83\x00\xfe\x07\x00\x00\x18', - b'\x2d\x84\x00\xfe\x07\x00\x00\x28', - b'\xdb\x85\x00\xfe\x07\x00\x00\x18', - b'\x4d\x86\x00\xfe\x07\x00\x00\x28', - b'\x35\x87\x00\xfe\x07\x00\x00\x18', - b'\x23\x88\x00\xfe\x07\x00\x00\x28', - b'\x4a\x89\x00\xfe\x07\x00\x00\x28', - b'\xe1\x8a\x00\xfe\x07\x00\x00\x28', - b'\x30\x8b\x00\xfe\x07\x00\x00\x28', - b'\x60\x8c\x00\xfe\x07\x00\x00\x28', - b'\x0d\x8d\x00\xfe\x07\x00\x00\x18', - b'\x8c\x8e\x00\xfe\x07\x00\x00\x18', - b'\x6f\x8f\x00\xfe\x07\x00\x00\x28', - ]) - - def test_volkswagen_mqb_crc_hca_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "HCA_01", 0x126, [ - b'\x00\x30\x0d\xc0\x05\xfe\x07\x00', - b'\x3e\x31\x54\xc0\x05\xfe\x07\x00', - b'\xa7\x32\xbb\x40\x05\xfe\x07\x00', - b'\x96\x33\x29\xc0\x05\xfe\x07\x00', - b'\x5f\x34\x00\x00\x03\xfe\x07\x00', - b'\x3b\x35\xae\x40\x05\xfe\x07\x00', - b'\xc7\x36\x7a\x40\x05\xfe\x07\x00', - b'\x6f\x37\x76\x40\x05\xfe\x07\x00', - b'\xb1\x38\x00\x00\x03\xfe\x07\x00', - b'\xd5\x39\x00\x00\x03\xfe\x07\x00', - b'\xba\x3a\x69\xc0\x05\xfe\x07\x00', - b'\x65\x3b\x10\x40\x05\xfe\x07\x00', - b'\x49\x3c\x72\xc0\x05\xfe\x07\x00', - b'\xc6\x3d\xdf\x40\x05\xfe\x07\x00', - b'\x1d\x3e\x2c\xc1\x05\xfe\x07\x00', - b'\x9b\x3f\x20\x40\x05\xfe\x07\x00', - ]) - - def test_volkswagen_mqb_crc_gra_acc_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "GRA_ACC_01", 0x12B, [ - b'\x86\x40\x80\x2a\x00\x00\x00\x00', - b'\xf4\x41\x80\x2a\x00\x00\x00\x00', - b'\x50\x42\x80\x2a\x00\x00\x00\x00', - b'\x08\x43\x80\x2a\x00\x00\x00\x00', - b'\x88\x44\x80\x2a\x00\x00\x00\x00', - b'\x2d\x45\x80\x2a\x00\x00\x00\x00', - b'\x34\x46\x80\x2a\x00\x00\x00\x00', - b'\x11\x47\x80\x2a\x00\x00\x00\x00', - b'\xc4\x48\x80\x2a\x00\x00\x00\x00', - b'\xcc\x49\x80\x2a\x00\x00\x00\x00', - b'\xdc\x4a\x80\x2a\x00\x00\x00\x00', - b'\x79\x4b\x80\x2a\x00\x00\x00\x00', - b'\x3c\x4c\x80\x2a\x00\x00\x00\x00', - b'\x68\x4d\x80\x2a\x00\x00\x00\x00', - b'\x27\x4e\x80\x2a\x00\x00\x00\x00', - b'\x0d\x4f\x80\x2a\x00\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_acc_07(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ACC_07", 0x12E, [ - b'\xac\xe0\x7f\x00\xfe\x00\xc0\xff', - b'\xa2\xe1\x7f\x00\xfe\x00\xc0\xff', - b'\x6b\xe2\x7f\x00\xfe\x00\xc0\xff', - b'\xf2\xe3\x7f\x00\xfe\x00\xc0\xff', - b'\xd5\xe4\x7f\x00\xfe\x00\xc0\xff', - b'\x35\xe5\x7f\x00\xfe\x00\xc0\xff', - b'\x7f\xe6\x7f\x00\xfe\x00\xc0\xff', - b'\x6c\xe7\x7f\x00\xfe\x00\xc0\xff', - b'\x05\xe8\x7f\x00\xfe\x00\xc0\xff', - b'\x79\xe9\x7f\x00\xfe\x00\xc0\xff', - b'\x25\xea\x7f\x00\xfe\x00\xc0\xff', - b'\xd1\xeb\x7f\x00\xfe\x00\xc0\xff', - b'\x72\xec\x7f\x00\xfe\x00\xc0\xff', - b'\x58\xed\x7f\x00\xfe\x00\xc0\xff', - b'\x82\xee\x7f\x00\xfe\x00\xc0\xff', - b'\x85\xef\x7f\x00\xfe\x00\xc0\xff', - ]) - - def test_volkswagen_mqb_crc_motor_ev_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "Motor_EV_01", 0x187, [ - b'\x70\x80\x15\x00\x00\x00\x00\xF0', - b'\x07\x81\x15\x00\x00\x00\x00\xF0', - b'\x7A\x82\x15\x00\x00\x00\x00\xF0', - b'\x26\x83\x15\x00\x00\x00\x00\xF0', - b'\xBE\x84\x15\x00\x00\x00\x00\xF0', - b'\x5A\x85\x15\x00\x00\x00\x00\xF0', - b'\xFC\x86\x15\x00\x00\x00\x00\xF0', - b'\x9E\x87\x15\x00\x00\x00\x00\xF0', - b'\xAF\x88\x15\x00\x00\x00\x00\xF0', - b'\x35\x89\x15\x00\x00\x00\x00\xF0', - b'\xC5\x8A\x15\x00\x00\x00\x00\xF0', - b'\x11\x8B\x15\x00\x00\x00\x00\xF0', - b'\xD0\x8C\x15\x00\x00\x00\x00\xF0', - b'\xE8\x8D\x15\x00\x00\x00\x00\xF0', - b'\xF5\x8E\x15\x00\x00\x00\x00\xF0', - b'\x00\x8F\x15\x00\x00\x00\x00\xF0', - ]) - - def test_volkswagen_mqb_crc_esp_33(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ESP_33", 0x1AB, [ - b'\x64\x00\x80\x02\x00\x00\x00\x00', - b'\x19\x01\x00\x00\x00\x00\x00\x00', - b'\xfc\x02\x00\x10\x01\x00\x00\x00', - b'\x8b\x03\x80\x02\x00\x00\x00\x00', - b'\xa4\x04\x00\x10\x01\x00\x00\x00', - b'\x97\x05\x00\x02\x00\x00\x01\x00', - b'\xd5\x06\x80\x02\x00\x00\x01\x00', - b'\xa0\x07\x80\x02\x00\x00\x01\x00', - b'\x89\x08\x00\x00\x00\x00\x00\x00', - b'\xe3\x09\x00\x00\x00\x00\x00\x00', - b'\x0e\x0a\x00\x00\x00\x00\x00\x00', - b'\x90\x0b\x00\x00\x00\x00\x00\x00', - b'\x32\x0c\x00\x10\x01\x00\x00\x00', - b'\x30\x0d\x00\x00\x00\x00\x00\x00', - b'\xc2\x0e\x00\x10\x01\x00\x00\x00', - b'\x68\x0f\x80\x02\x00\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_acc_02(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ACC_02", 0x30C, [ - b'\x82\xf0\x3f\x00\x40\x30\x00\x40', - b'\xe6\xf1\x3f\x00\x40\x30\x00\x40', - b'\x4a\xf2\x3f\x00\x40\x30\x00\x40', - b'\x2e\xf3\x3f\x00\x40\x30\x00\x40', - b'\x3d\xf4\x3f\x00\x40\x30\x00\x40', - b'\x59\xf5\x3f\x00\x40\x30\x00\x40', - b'\xf5\xf6\x3f\x00\x40\x30\x00\x40', - b'\x91\xf7\x3f\x00\x40\x30\x00\x40', - b'\xd3\xf8\x3f\x00\x40\x30\x00\x40', - b'\xb7\xf9\x3f\x00\x40\x30\x00\x40', - b'\x1b\xfa\x3f\x00\x40\x30\x00\x40', - b'\x7f\xfb\x3f\x00\x40\x30\x00\x40', - b'\x6c\xfc\x3f\x00\x40\x30\x00\x40', - b'\x08\xfd\x3f\x00\x40\x30\x00\x40', - b'\xa4\xfe\x3f\x00\x40\x30\x00\x40', - b'\xc0\xff\x3f\x00\x40\x30\x00\x40', - ]) - - def test_volkswagen_mqb_crc_swa_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "SWA_01", 0x30F, [ - b'\x10\x00\x10\x00\x00\x00\x00\x00', - b'\x74\x01\x10\x00\x00\x00\x00\x00', - b'\xD8\x02\x10\x00\x00\x00\x00\x00', - b'\xBC\x03\x10\x00\x00\x00\x00\x00', - b'\xAF\x04\x10\x00\x00\x00\x00\x00', - b'\xCB\x05\x10\x00\x00\x00\x00\x00', - b'\x67\x06\x10\x00\x00\x00\x00\x00', - b'\x03\x07\x10\x00\x00\x00\x00\x00', - b'\x41\x08\x10\x00\x00\x00\x00\x00', - b'\x25\x09\x10\x00\x00\x00\x00\x00', - b'\x89\x0A\x10\x00\x00\x00\x00\x00', - b'\xED\x0B\x10\x00\x00\x00\x00\x00', - b'\xFE\x0C\x10\x00\x00\x00\x00\x00', - b'\x9A\x0D\x10\x00\x00\x00\x00\x00', - b'\x36\x0E\x10\x00\x00\x00\x00\x00', - b'\x52\x0F\x10\x00\x00\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_acc_04(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ACC_04", 0x324, [ - b'\xba\x00\x00\x00\x00\x00\x00\x10', - b'\xde\x01\x00\x00\x00\x00\x00\x10', - b'\x72\x02\x00\x00\x00\x00\x00\x10', - b'\x16\x03\x00\x00\x00\x00\x00\x10', - b'\x05\x04\x00\x00\x00\x00\x00\x10', - b'\x44\x05\x00\x00\x00\x00\x00\x00', - b'\xe8\x06\x00\x00\x00\x00\x00\x00', - b'\xa9\x07\x00\x00\x00\x00\x00\x10', - b'\xeb\x08\x00\x00\x00\x00\x00\x10', - b'\x8f\x09\x00\x00\x00\x00\x00\x10', - b'\x06\x0a\x00\x00\x00\x00\x00\x00', - b'\x47\x0b\x00\x00\x00\x00\x00\x10', - b'\x71\x0c\x00\x00\x00\x00\x00\x00', - b'\x15\x0d\x00\x00\x00\x00\x00\x00', - b'\xb9\x0e\x00\x00\x00\x00\x00\x00', - b'\xdd\x0f\x00\x00\x00\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_klemmen_status_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "Klemmen_Status_01", 0x3C0, [ - b'\x74\x00\x03\x00', - b'\xc1\x01\x03\x00', - b'\x31\x02\x03\x00', - b'\x84\x03\x03\x00', - b'\xfe\x04\x03\x00', - b'\x4b\x05\x03\x00', - b'\xbb\x06\x03\x00', - b'\x0e\x07\x03\x00', - b'\x4f\x08\x03\x00', - b'\xfa\x09\x03\x00', - b'\x0a\x0a\x03\x00', - b'\xbf\x0b\x03\x00', - b'\xc5\x0c\x03\x00', - b'\x70\x0d\x03\x00', - b'\x80\x0e\x03\x00', - b'\x35\x0f\x03\x00', - ]) - - def test_volkswagen_mqb_crc_licht_anf_01(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "Licht_Anf_01", 0x3D5, [ - b'\xc8\x00\x00\x04\x00\x00\x00\x00', - b'\x9f\x01\x00\x04\x00\x00\x00\x00', - b'\x5e\x02\x00\x04\x00\x00\x00\x00', - b'\x52\x03\x00\x04\x00\x00\x00\x00', - b'\xf2\x04\x00\x04\x00\x00\x00\x00', - b'\x79\x05\x00\x04\x00\x00\x00\x00', - b'\xe6\x06\x00\x04\x00\x00\x00\x00', - b'\xfd\x07\x00\x04\x00\x00\x00\x00', - b'\xf8\x08\x00\x04\x00\x00\x00\x00', - b'\xc6\x09\x00\x04\x00\x00\x00\x00', - b'\xf5\x0a\x00\x04\x00\x00\x00\x00', - b'\x1a\x0b\x00\x04\x00\x00\x00\x00', - b'\x65\x0c\x00\x04\x00\x00\x00\x00', - b'\x41\x0d\x00\x04\x00\x00\x00\x00', - b'\x7f\x0e\x00\x04\x00\x00\x00\x00', - b'\x98\x0f\x00\x04\x00\x00\x00\x00', - ]) - - def test_volkswagen_mqb_crc_esp_20(self, subtests): - self.verify_volkswagen_mqb_crc(subtests, "ESP_20", 0x65D, [ - b'\x98\x30\x2b\x10\x00\x00\x22\x81', - b'\xc8\x31\x2b\x10\x00\x00\x22\x81', - b'\x9d\x32\x2b\x10\x00\x00\x22\x81', - b'\x1f\x33\x2b\x10\x00\x00\x22\x81', - b'\x6e\x34\x2b\x10\x00\x00\x22\x81', - b'\x61\x35\x2b\x10\x00\x00\x22\x81', - b'\x6f\x36\x2b\x10\x00\x00\x22\x81', - b'\xe5\x37\x2b\x10\x00\x00\x22\x81', - b'\xf8\x38\x2b\x10\x00\x00\x22\x81', - b'\xe1\x39\x2b\x10\x00\x00\x22\x81', - b'\xaa\x3a\x2b\x10\x00\x00\x22\x81', - b'\xe6\x3b\x2b\x10\x00\x00\x22\x81', - b'\xef\x3c\x2b\x10\x00\x00\x22\x81', - b'\xbb\x3d\x2b\x10\x00\x00\x22\x81', - b'\x9b\x3e\x2b\x10\x00\x00\x22\x81', - b'\x72\x3f\x2b\x10\x00\x00\x22\x81', - ]) diff --git a/opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py b/opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py deleted file mode 100644 index 858a643720..0000000000 --- a/opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py +++ /dev/null @@ -1,29 +0,0 @@ -import pytest - -from opendbc.can import CANDefine, CANPacker, CANParser -from opendbc.can.tests import TEST_DBC - - -class TestCanParserPackerExceptions: - def test_civic_exceptions(self): - dbc_file = "honda_civic_touring_2016_can_generated" - dbc_invalid = dbc_file + "abcdef" - msgs = [("STEERING_CONTROL", 50)] - with pytest.raises(FileNotFoundError): - CANParser(dbc_invalid, msgs, 0) - with pytest.raises(FileNotFoundError): - CANPacker(dbc_invalid) - with pytest.raises(FileNotFoundError): - CANDefine(dbc_invalid) - with pytest.raises(KeyError): - CANDefine(TEST_DBC) - - parser = CANParser(dbc_file, msgs, 0) - with pytest.raises(IndexError): - parser.update([b'']) - - # Everything is supposed to work below - CANParser(dbc_file, msgs, 0) - CANParser(dbc_file, [], 0) - CANPacker(dbc_file) - CANDefine(dbc_file) diff --git a/opendbc_repo/opendbc/can/tests/test_dbc_parser.py b/opendbc_repo/opendbc/can/tests/test_dbc_parser.py deleted file mode 100644 index 508b80b95e..0000000000 --- a/opendbc_repo/opendbc/can/tests/test_dbc_parser.py +++ /dev/null @@ -1,21 +0,0 @@ -from opendbc.can import CANParser -from opendbc.can.tests import ALL_DBCS - - -class TestDBCParser: - def test_enough_dbcs(self): - # sanity check that we're running on the real DBCs - assert len(ALL_DBCS) > 20 - - def test_parse_all_dbcs(self, subtests): - """ - Dynamic DBC parser checks: - - Checksum and counter length, start bit, endianness - - Duplicate message addresses and names - - Signal out of bounds - - All BO_, SG_, VAL_ lines for syntax errors - """ - - for dbc in ALL_DBCS: - with subtests.test(dbc=dbc): - CANParser(dbc, [], 0) diff --git a/opendbc_repo/opendbc/can/tests/test_define.py b/opendbc_repo/opendbc/can/tests/test_define.py deleted file mode 100644 index a61b18c9c5..0000000000 --- a/opendbc_repo/opendbc/can/tests/test_define.py +++ /dev/null @@ -1,26 +0,0 @@ -from opendbc.can import CANDefine -from opendbc.can.tests import ALL_DBCS - - -class TestCANDefine: - def test_civic(self): - - dbc_file = "honda_civic_touring_2016_can_generated" - defs = CANDefine(dbc_file) - - assert defs.dv[399] == defs.dv['STEER_STATUS'] - assert defs.dv[399] == {'STEER_STATUS': - {7: 'PERMANENT_FAULT', - 6: 'TMP_FAULT', - 5: 'FAULT_1', - 4: 'NO_TORQUE_ALERT_2', - 3: 'LOW_SPEED_LOCKOUT', - 2: 'NO_TORQUE_ALERT_1', - 0: 'NORMAL'} - } - - def test_all_dbcs(self, subtests): - # Asserts no exceptions on all DBCs - for dbc in ALL_DBCS: - with subtests.test(dbc=dbc): - CANDefine(dbc) diff --git a/opendbc_repo/opendbc/can/tests/test_packer_parser.py b/opendbc_repo/opendbc/can/tests/test_packer_parser.py deleted file mode 100644 index d7a7821963..0000000000 --- a/opendbc_repo/opendbc/can/tests/test_packer_parser.py +++ /dev/null @@ -1,367 +0,0 @@ -import pytest -import random - -from opendbc.can import CANPacker, CANParser -from opendbc.can.tests import TEST_DBC - -MAX_BAD_COUNTER = 5 - - -class TestCanParserPacker: - def test_packer(self): - packer = CANPacker(TEST_DBC) - - for b in range(6): - for i in range(256): - values = {"COUNTER": i} - addr, dat, bus = packer.make_can_msg("CAN_FD_MESSAGE", b, values) - assert addr == 245 - assert bus == b - assert dat[0] == i - - def test_packer_counter(self): - msgs = [("CAN_FD_MESSAGE", 0), ] - packer = CANPacker(TEST_DBC) - parser = CANParser(TEST_DBC, msgs, 0) - - # packer should increment the counter - for i in range(1000): - msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) - parser.update([0, [msg]]) - assert parser.vl["CAN_FD_MESSAGE"]["COUNTER"] == (i % 256) - - # setting COUNTER should override - for _ in range(100): - cnt = random.randint(0, 255) - msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, { - "COUNTER": cnt, - "SIGNED": 0 - }) - parser.update([0, [msg]]) - assert parser.vl["CAN_FD_MESSAGE"]["COUNTER"] == cnt - - # then, should resume counting from the override value - cnt = parser.vl["CAN_FD_MESSAGE"]["COUNTER"] - for i in range(100): - msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) - parser.update([0, [msg]]) - assert parser.vl["CAN_FD_MESSAGE"]["COUNTER"] == ((cnt + i) % 256) - - def test_parser_can_valid(self): - msgs = [("CAN_FD_MESSAGE", 10), ] - packer = CANPacker(TEST_DBC) - parser = CANParser(TEST_DBC, msgs, 0) - - # shouldn't be valid initially - assert not parser.can_valid - - # not valid until the message is seen - for _ in range(100): - parser.update([0, []]) - assert not parser.can_valid - - # valid once seen - for i in range(1, 100): - t = int(0.01 * i * 1e9) - msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) - parser.update([t, [msg]]) - assert parser.can_valid - - def test_parser_updated_list(self): - msgs = [("CAN_FD_MESSAGE", 10), ] - parser = CANParser(TEST_DBC, msgs, 0) - packer = CANPacker(TEST_DBC) - - msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) - ret = parser.update([0, [msg]]) - assert ret == {245} - - ret = parser.update([]) - assert len(ret) == 0 - - def test_parser_counter_can_valid(self): - """ - Tests number of allowed bad counters + ensures CAN stays invalid - while receiving invalid messages + that we can recover - """ - msgs = [ - ("STEERING_CONTROL", 0), - ] - packer = CANPacker("honda_civic_touring_2016_can_generated") - parser = CANParser("honda_civic_touring_2016_can_generated", msgs, 0) - - msg = packer.make_can_msg("STEERING_CONTROL", 0, {"COUNTER": 0}) - - # bad static counter, invalid once it's seen MAX_BAD_COUNTER messages - for idx in range(0x1000): - parser.update([0, [msg]]) - assert ((idx + 1) < MAX_BAD_COUNTER) == parser.can_valid - - # one to recover - msg = packer.make_can_msg("STEERING_CONTROL", 0, {"COUNTER": 1}) - parser.update([0, [msg]]) - assert parser.can_valid - - def test_parser_no_partial_update(self): - """ - Ensure that the CANParser doesn't partially update messages with invalid signals (COUNTER/CHECKSUM). - Previously, the signal update loop would only break once it got to one of these invalid signals, - after already updating most/all of the signals. - """ - msgs = [ - ("STEERING_CONTROL", 0), - ] - packer = CANPacker("honda_civic_touring_2016_can_generated") - parser = CANParser("honda_civic_touring_2016_can_generated", msgs, 0) - - def rx_steering_msg(values, bad_checksum=False): - msg = packer.make_can_msg("STEERING_CONTROL", 0, values) - if bad_checksum: - # add 1 to checksum - dat = bytearray(msg[1]) - dat[4] = (dat[4] & 0xF0) | ((dat[4] & 0x0F) + 1) - msg = (msg[0], bytes(dat), msg[2]) - - parser.update([0, [msg]]) - - rx_steering_msg({"STEER_TORQUE": 100}, bad_checksum=False) - assert parser.vl["STEERING_CONTROL"]["STEER_TORQUE"] == 100 - assert parser.vl_all["STEERING_CONTROL"]["STEER_TORQUE"] == [100] - - for _ in range(5): - rx_steering_msg({"STEER_TORQUE": 200}, bad_checksum=True) - assert parser.vl["STEERING_CONTROL"]["STEER_TORQUE"] == 100 - assert parser.vl_all["STEERING_CONTROL"]["STEER_TORQUE"] == [] - - # Even if CANParser doesn't update instantaneous vl, make sure it didn't add invalid values to vl_all - rx_steering_msg({"STEER_TORQUE": 300}, bad_checksum=False) - assert parser.vl["STEERING_CONTROL"]["STEER_TORQUE"] == 300 - assert parser.vl_all["STEERING_CONTROL"]["STEER_TORQUE"] == [300] - - def test_packer_parser(self): - msgs = [ - ("Brake_Status", 0), - ("CAN_FD_MESSAGE", 0), - ("STEERING_CONTROL", 0), - ] - packer = CANPacker(TEST_DBC) - parser = CANParser(TEST_DBC, msgs, 0) - - for steer in range(-256, 255): - for active in (1, 0): - values = { - "STEERING_CONTROL": { - "STEER_TORQUE": steer, - "STEER_TORQUE_REQUEST": active, - }, - "Brake_Status": { - "Signal1": 61042322657536.0, - }, - "CAN_FD_MESSAGE": { - "SIGNED": steer, - "64_BIT_LE": random.randint(0, 100), - "64_BIT_BE": random.randint(0, 100), - }, - } - - msgs = [packer.make_can_msg(k, 0, v) for k, v in values.items()] - parser.update([0, msgs]) - - for k, v in values.items(): - for key, val in v.items(): - assert parser.vl[k][key] == pytest.approx(val) - - # also check address - for sig in ("STEER_TORQUE", "STEER_TORQUE_REQUEST", "COUNTER", "CHECKSUM"): - assert parser.vl["STEERING_CONTROL"][sig] == parser.vl[228][sig] - - def test_scale_offset(self): - """Test that both scale and offset are correctly preserved""" - dbc_file = "honda_civic_touring_2016_can_generated" - msgs = [("VSA_STATUS", 50)] - parser = CANParser(dbc_file, msgs, 0) - packer = CANPacker(dbc_file) - - for brake in range(100): - values = {"USER_BRAKE": brake} - msgs = packer.make_can_msg("VSA_STATUS", 0, values) - parser.update([0, [msgs]]) - - assert parser.vl["VSA_STATUS"]["USER_BRAKE"] == pytest.approx(brake) - - def test_subaru(self): - # Subaru is little endian - - dbc_file = "subaru_global_2017_generated" - - msgs = [("ES_LKAS", 50)] - - parser = CANParser(dbc_file, msgs, 0) - packer = CANPacker(dbc_file) - - idx = 0 - for steer in range(-256, 255): - for active in [1, 0]: - values = { - "LKAS_Output": steer, - "LKAS_Request": active, - "SET_1": 1 - } - - msgs = packer.make_can_msg("ES_LKAS", 0, values) - parser.update([0, [msgs]]) - - assert parser.vl["ES_LKAS"]["LKAS_Output"] == pytest.approx(steer) - assert parser.vl["ES_LKAS"]["LKAS_Request"] == pytest.approx(active) - assert parser.vl["ES_LKAS"]["SET_1"] == pytest.approx(1) - assert parser.vl["ES_LKAS"]["COUNTER"] == pytest.approx(idx % 16) - idx += 1 - - def test_bus_timeout(self): - """Test CAN bus timeout detection""" - dbc_file = "honda_civic_touring_2016_can_generated" - - freq = 100 - msgs = [("VSA_STATUS", freq), ("STEER_MOTOR_TORQUE", freq/2)] - - parser = CANParser(dbc_file, msgs, 0) - packer = CANPacker(dbc_file) - - i = 0 - def send_msg(blank=False): - nonlocal i - i += 1 - t = i*((1 / freq) * 1e9) - - if blank: - msgs = [] - else: - msgs = [packer.make_can_msg("VSA_STATUS", 0, {}), ] - - parser.update([t, msgs]) - - # all good, no timeout - for _ in range(1000): - send_msg() - assert not parser.bus_timeout, str(_) - - # timeout after 10 blank msgs - for n in range(200): - send_msg(blank=True) - assert (n >= 10) == parser.bus_timeout - - # no timeout immediately after seen again - send_msg() - assert not parser.bus_timeout - - def test_updated(self): - """Test updated value dict""" - dbc_file = "honda_civic_touring_2016_can_generated" - msgs = [("VSA_STATUS", 50)] - parser = CANParser(dbc_file, msgs, 0) - packer = CANPacker(dbc_file) - - # Make sure nothing is updated - assert len(parser.vl_all["VSA_STATUS"]["USER_BRAKE"]) == 0 - - idx = 0 - for _ in range(10): - # Ensure CANParser holds the values of any duplicate messages over multiple frames - user_brake_vals = [random.randrange(100) for _ in range(random.randrange(5, 10))] - half_idx = len(user_brake_vals) // 2 - can_msgs = [[], []] - for frame, brake_vals in enumerate((user_brake_vals[:half_idx], user_brake_vals[half_idx:])): - for user_brake in brake_vals: - values = {"USER_BRAKE": user_brake} - can_msgs[frame].append(packer.make_can_msg("VSA_STATUS", 0, values)) - idx += 1 - - parser.update([[0, m] for m in can_msgs]) - vl_all = parser.vl_all["VSA_STATUS"]["USER_BRAKE"] - - assert vl_all == user_brake_vals - if len(user_brake_vals): - assert vl_all[-1] == parser.vl["VSA_STATUS"]["USER_BRAKE"] - - def test_timestamp_nanos(self): - """Test message timestamp dict""" - dbc_file = "honda_civic_touring_2016_can_generated" - - msgs = [ - ("VSA_STATUS", 50), - ("POWERTRAIN_DATA", 100), - ] - - parser = CANParser(dbc_file, msgs, 0) - packer = CANPacker(dbc_file) - - # Check the default timestamp is zero - for msg in ("VSA_STATUS", "POWERTRAIN_DATA"): - ts_nanos = parser.ts_nanos[msg].values() - assert set(ts_nanos) == {0} - - # Check: - # - timestamp is only updated for correct messages - # - timestamp is correct for multiple runs - # - timestamp is from the latest message if updating multiple strings - for _ in range(10): - can_strings = [] - log_mono_time = 0 - for i in range(10): - log_mono_time = int(0.01 * i * 1e+9) - can_msg = packer.make_can_msg("VSA_STATUS", 0, {}) - can_strings.append((log_mono_time, [can_msg])) - parser.update(can_strings) - - ts_nanos = parser.ts_nanos["VSA_STATUS"].values() - assert set(ts_nanos) == {log_mono_time} - ts_nanos = parser.ts_nanos["POWERTRAIN_DATA"].values() - assert set(ts_nanos) == {0} - - def test_nonexistent_messages(self): - # Ensure we don't allow messages not in the DBC - existing_messages = ("STEERING_CONTROL", 228, "CAN_FD_MESSAGE", 245) - - for msg in existing_messages: - CANParser(TEST_DBC, [(msg, 0)], 0) - with pytest.raises(RuntimeError): - new_msg = msg + "1" if isinstance(msg, str) else msg + 1 - CANParser(TEST_DBC, [(new_msg, 0)], 0) - - def test_track_all_signals(self): - parser = CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 0)], 0) - assert parser.vl["ACC_CONTROL"] == { - "ACCEL_CMD": 0, - "ALLOW_LONG_PRESS": 0, - "ACC_MALFUNCTION": 0, - "RADAR_DIRTY": 0, - "DISTANCE": 0, - "MINI_CAR": 0, - "ACC_TYPE": 0, - "CANCEL_REQ": 0, - "ACC_CUT_IN": 0, - "LEAD_VEHICLE_STOPPED": 0, - "PERMIT_BRAKING": 0, - "RELEASE_STANDSTILL": 0, - "ITS_CONNECT_LEAD": 0, - "ACCEL_CMD_ALT": 0, - "CHECKSUM": 0, - } - - def test_disallow_duplicate_messages(self): - CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 5)], 0) - - with pytest.raises(RuntimeError): - CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 5), ("ACC_CONTROL", 10)], 0) - - with pytest.raises(RuntimeError): - CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 10), ("ACC_CONTROL", 10)], 0) - - def test_allow_undefined_msgs(self): - # TODO: we should throw an exception for these, but we need good - # discovery tests in openpilot first - packer = CANPacker("toyota_nodsu_pt_generated") - - assert packer.make_can_msg("ACC_CONTROL", 0, {"UNKNOWN_SIGNAL": 0}) == (835, b'\x00\x00\x00\x00\x00\x00\x00N', 0) - assert packer.make_can_msg("UNKNOWN_MESSAGE", 0, {"UNKNOWN_SIGNAL": 0}) == (0, b'', 0) - assert packer.make_can_msg(0, 0, {"UNKNOWN_SIGNAL": 0}) == (0, b'', 0) diff --git a/opendbc_repo/opendbc/car/CARS_template.md b/opendbc_repo/opendbc/car/CARS_template.md deleted file mode 100644 index c08b191f84..0000000000 --- a/opendbc_repo/opendbc/car/CARS_template.md +++ /dev/null @@ -1,78 +0,0 @@ - - -# Support Information for {{all_car_docs | length}} Known Cars - -|{{ExtraCarsColumn | map(attribute='value') | join('|') | replace(hardware_col_name, wide_hardware_col_name)}}| -|---|---|---|{% for _ in range((ExtraCarsColumn | length) - 3) %}{{':---:|'}}{% endfor +%} -{% for car_docs in all_car_docs %} -|{% for column in ExtraCarsColumn %}{{car_docs.get_extra_cars_column(column)}}|{% endfor %} - -{% endfor %} - -# Types of Support - -**opendbc can support many more cars than it currently does.** There are a few reasons your car may not be supported. -If your car doesn't fit into any of the incompatibility criteria here, then there's a good chance it can be supported! -We're adding support for new cars all the time. **We don't have a roadmap for car support**, and in fact, most car -support comes from users like you! - -## Upstream - -A supported vehicle is one that just works when you install a comma device. All supported cars provide a better -experience than any stock system. Supported vehicles reference the US market unless otherwise specified. - -## Under Review - -A vehicle under review is one for which software support has been merged into upstream openpilot, but hasn't yet been -tested for drive quality and conformance with [comma safety guidelines](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md). -This is a normal part of the development and quality assurance process. This vehicle will not work when upstream -openpilot is installed, but custom forks may allow their use. - -## Custom - -Vehicles in this category are not considered plug-and-play. Software support is included in upstream openpilot, but -these vehicles might not have a harness in the comma store, or the physical install might be at an unusual or cumbersome -location, or they might need unusual configuration after install. - -## Dashcam - -Dashcam vehicles have software support in upstream openpilot, but will go into "dashcam mode" at startup and will not -engage. This may be due to known issues with driving safety or quality, or it may be a work in progress that isn't yet -ready for safety and quality review. - -## Community - -Although they're not upstream, the community has openpilot running on other makes and models. See the 'Community -Supported Models' section of each make [on our wiki](https://wiki.comma.ai/). - -Some notable works-in-progress: -* Honda - * 2024 Acura Integra, commaai/openpilot#32056 - * 2023-24 Honda Accord (CAN-FD), commaai/openpilot#32229 - * 2024 Honda CR-V (CAN-FD), commaai/openpilot#32806 - * 2024 Honda CR-V Hybrid (CAN-FD), commaai/openpilot#31527 - * Depends on commaai/opendbc#1100 - * 2021-25 Honda Odyssey, commaai/opendbc#1330 - * 2023-24 Honda Pilot (CAN-FD), commaai/openpilot#30324 - * Camera ACC stability improvements, commaai/openpilot#31022 - * Depends on commaai/panda#1814 - * Depends on commaai/opendbc#998 - * These are being reworked for full-time proxy through openpilot - * Manual transmission support (Civic, Integra) - * Depends on commaai/opendbc#1034 (merged) - * Car port support PR not yet filed - -## Incompatible - -### CAN Bus Security - -Vehicles with CAN security measures, such as AUTOSAR Secure Onboard Communication (SecOC) are not usable with openpilot -unless the owner can recover the message signing key and implement CAN message signing. Examples include certain newer -Toyota, and the GM Global B platform. - -### FlexRay - -All the cars that openpilot supports use a [CAN bus](https://en.wikipedia.org/wiki/CAN_bus) for communication between all the car's computers, however a -CAN bus isn't the only way that the computers in your car can communicate. Most, if not all, vehicles from the following -manufacturers use [FlexRay](https://en.wikipedia.org/wiki/FlexRay) instead of a CAN bus: **BMW, Mercedes, Audi, Land Rover, and some Volvo**. These cars -may one day be supported, but we have no immediate plans to support FlexRay. diff --git a/opendbc_repo/opendbc/car/__init__.py b/opendbc_repo/opendbc/car/__init__.py deleted file mode 100644 index 60359dfceb..0000000000 --- a/opendbc_repo/opendbc/car/__init__.py +++ /dev/null @@ -1,391 +0,0 @@ -# functions common among cars -import numpy as np -from dataclasses import dataclass, field -from enum import IntFlag, ReprEnum, StrEnum, EnumType, auto -from dataclasses import replace - -from opendbc.car import structs, uds -from opendbc.car.can_definitions import CanData -from opendbc.car.docs_definitions import CarDocs, ExtraCarDocs - -DT_CTRL = 0.01 # car state and control loop timestep (s) - -# kg of standard extra cargo to count for drive, gas, etc... -STD_CARGO_KG = 136. - -ACCELERATION_DUE_TO_GRAVITY = 9.81 # m/s^2 - -ButtonType = structs.CarState.ButtonEvent.Type - - -@dataclass -class AngleSteeringLimits: - STEER_ANGLE_MAX: float - ANGLE_RATE_LIMIT_UP: tuple[list[float], list[float]] - ANGLE_RATE_LIMIT_DOWN: tuple[list[float], list[float]] - - -def apply_hysteresis(val: float, val_steady: float, hyst_gap: float) -> float: - if val > val_steady + hyst_gap: - val_steady = val - hyst_gap - elif val < val_steady - hyst_gap: - val_steady = val + hyst_gap - return val_steady - - -def create_button_events(cur_btn: int, prev_btn: int, buttons_dict: dict[int, structs.CarState.ButtonEvent.Type], - unpressed_btn: int = 0) -> list[structs.CarState.ButtonEvent]: - events: list[structs.CarState.ButtonEvent] = [] - - if cur_btn == prev_btn: - return events - - # Add events for button presses, multiple when a button switches without going to unpressed - for pressed, btn in ((False, prev_btn), (True, cur_btn)): - if btn != unpressed_btn: - events.append(structs.CarState.ButtonEvent(pressed=pressed, - type=buttons_dict.get(btn, ButtonType.unknown))) - return events - - -def gen_empty_fingerprint(): - return {i: {} for i in range(8)} - - -# these params were derived for the Civic and used to calculate params for other cars -class VehicleDynamicsParams: - MASS = 1326. + STD_CARGO_KG - WHEELBASE = 2.70 - CENTER_TO_FRONT = WHEELBASE * 0.4 - CENTER_TO_REAR = WHEELBASE - CENTER_TO_FRONT - ROTATIONAL_INERTIA = 2500 - TIRE_STIFFNESS_FRONT = 192150 - TIRE_STIFFNESS_REAR = 202500 - - -# TODO: get actual value, for now starting with reasonable value for -# civic and scaling by mass and wheelbase -def scale_rot_inertia(mass, wheelbase): - return VehicleDynamicsParams.ROTATIONAL_INERTIA * mass * wheelbase ** 2 / (VehicleDynamicsParams.MASS * VehicleDynamicsParams.WHEELBASE ** 2) - - -# TODO: start from empirically derived lateral slip stiffness for the civic and scale by -# mass and CG position, so all cars will have approximately similar dyn behaviors -def scale_tire_stiffness(mass, wheelbase, center_to_front, tire_stiffness_factor): - center_to_rear = wheelbase - center_to_front - tire_stiffness_front = (VehicleDynamicsParams.TIRE_STIFFNESS_FRONT * tire_stiffness_factor) * mass / VehicleDynamicsParams.MASS * \ - (center_to_rear / wheelbase) / (VehicleDynamicsParams.CENTER_TO_REAR / VehicleDynamicsParams.WHEELBASE) - - tire_stiffness_rear = (VehicleDynamicsParams.TIRE_STIFFNESS_REAR * tire_stiffness_factor) * mass / VehicleDynamicsParams.MASS * \ - (center_to_front / wheelbase) / (VehicleDynamicsParams.CENTER_TO_FRONT / VehicleDynamicsParams.WHEELBASE) - - return tire_stiffness_front, tire_stiffness_rear - - -DbcDict = dict[StrEnum, str] - -class Bus(StrEnum): - pt = auto() - cam = auto() - radar = auto() - adas = auto() - alt = auto() - body = auto() - chassis = auto() - loopback = auto() - main = auto() - party = auto() - ap_party = auto() - - -def apply_driver_steer_torque_limits(apply_torque: int, apply_torque_last: int, driver_torque: float, LIMITS, steer_max: int = None): - # some safety modes utilize a dynamic max steer - if steer_max is None: - steer_max = LIMITS.STEER_MAX - - # limits due to driver torque - driver_max_torque = steer_max + (LIMITS.STEER_DRIVER_ALLOWANCE + driver_torque * LIMITS.STEER_DRIVER_FACTOR) * LIMITS.STEER_DRIVER_MULTIPLIER - driver_min_torque = -steer_max + (-LIMITS.STEER_DRIVER_ALLOWANCE + driver_torque * LIMITS.STEER_DRIVER_FACTOR) * LIMITS.STEER_DRIVER_MULTIPLIER - max_steer_allowed = max(min(steer_max, driver_max_torque), 0) - min_steer_allowed = min(max(-steer_max, driver_min_torque), 0) - apply_torque = np.clip(apply_torque, min_steer_allowed, max_steer_allowed) - - # slow rate if steer torque increases in magnitude - if apply_torque_last > 0: - apply_torque = np.clip(apply_torque, max(apply_torque_last - LIMITS.STEER_DELTA_DOWN, -LIMITS.STEER_DELTA_UP), - apply_torque_last + LIMITS.STEER_DELTA_UP) - else: - apply_torque = np.clip(apply_torque, apply_torque_last - LIMITS.STEER_DELTA_UP, - min(apply_torque_last + LIMITS.STEER_DELTA_DOWN, LIMITS.STEER_DELTA_UP)) - - return int(round(float(apply_torque))) - - -def apply_dist_to_meas_limits(val, val_last, val_meas, - STEER_DELTA_UP, STEER_DELTA_DOWN, - STEER_ERROR_MAX, STEER_MAX): - # limits due to comparison of commanded val VS measured val (torque/angle/curvature) - max_lim = min(max(val_meas + STEER_ERROR_MAX, STEER_ERROR_MAX), STEER_MAX) - min_lim = max(min(val_meas - STEER_ERROR_MAX, -STEER_ERROR_MAX), -STEER_MAX) - - val = np.clip(val, min_lim, max_lim) - - # slow rate if val increases in magnitude - if val_last > 0: - val = np.clip(val, - max(val_last - STEER_DELTA_DOWN, -STEER_DELTA_UP), - val_last + STEER_DELTA_UP) - else: - val = np.clip(val, - val_last - STEER_DELTA_UP, - min(val_last + STEER_DELTA_DOWN, STEER_DELTA_UP)) - - return float(val) - - -def apply_meas_steer_torque_limits(apply_torque, apply_torque_last, motor_torque, LIMITS): - return int(round(apply_dist_to_meas_limits(apply_torque, apply_torque_last, motor_torque, - LIMITS.STEER_DELTA_UP, LIMITS.STEER_DELTA_DOWN, - LIMITS.STEER_ERROR_MAX, LIMITS.STEER_MAX))) - - -def apply_std_steer_angle_limits(apply_angle: float, apply_angle_last: float, v_ego: float, steering_angle: float, - lat_active: bool, limits: AngleSteeringLimits) -> float: - # pick angle rate limits based on wind up/down - steer_up = apply_angle_last * apply_angle >= 0. and abs(apply_angle) > abs(apply_angle_last) - rate_limits = limits.ANGLE_RATE_LIMIT_UP if steer_up else limits.ANGLE_RATE_LIMIT_DOWN - - angle_rate_lim = np.interp(v_ego, rate_limits[0], rate_limits[1]) - new_apply_angle = np.clip(apply_angle, apply_angle_last - angle_rate_lim, apply_angle_last + angle_rate_lim) - - # angle is current steering wheel angle when inactive on all angle cars - if not lat_active: - new_apply_angle = steering_angle - - return float(np.clip(new_apply_angle, -limits.STEER_ANGLE_MAX, limits.STEER_ANGLE_MAX)) - - -def common_fault_avoidance(fault_condition: bool, request: bool, above_limit_frames: int, - max_above_limit_frames: int, max_mismatching_frames: int = 1): - """ - Several cars have the ability to work around their EPS limits by cutting the - request bit of their LKAS message after a certain number of frames above the limit. - """ - - # Count up to max_above_limit_frames, at which point we need to cut the request for above_limit_frames to avoid a fault - if request and fault_condition: - above_limit_frames += 1 - else: - above_limit_frames = 0 - - # Once we cut the request bit, count additionally to max_mismatching_frames before setting the request bit high again. - # Some brands do not respect our workaround without multiple messages on the bus, for example - if above_limit_frames > max_above_limit_frames: - request = False - - if above_limit_frames >= max_above_limit_frames + max_mismatching_frames: - above_limit_frames = 0 - - return above_limit_frames, request - - -def crc8_pedal(data): - crc = 0xFF # standard init value - poly = 0xD5 # standard crc8: x8+x7+x6+x4+x2+1 - size = len(data) - for i in range(size - 1, -1, -1): - crc ^= data[i] - for _ in range(8): - if ((crc & 0x80) != 0): - crc = ((crc << 1) ^ poly) & 0xFF - else: - crc <<= 1 - return crc - - -def create_gas_interceptor_command(packer, gas_amount, idx): - # Common gas pedal msg generator - enable = gas_amount > 0.001 - - values = { - "ENABLE": enable, - "COUNTER_PEDAL": idx & 0xF, - } - - if enable: - values["GAS_COMMAND"] = gas_amount * 255. - values["GAS_COMMAND2"] = gas_amount * 255. - - dat = packer.make_can_msg("GAS_COMMAND", 0, values)[1] - - checksum = crc8_pedal(dat[:-1]) - values["CHECKSUM_PEDAL"] = checksum - - return packer.make_can_msg("GAS_COMMAND", 0, values) - - -def apply_center_deadzone(error, deadzone): - if (error > - deadzone) and (error < deadzone): - error = 0. - return error - - -def rate_limit(new_value, last_value, dw_step, up_step): - return float(np.clip(new_value, last_value + dw_step, last_value + up_step)) - - -def get_friction(lateral_accel_error: float, lateral_accel_deadzone: float, friction_threshold: float, - torque_params: structs.CarParams.LateralTorqueTuning, friction_compensation: bool) -> float: - friction_interp = np.interp( - apply_center_deadzone(lateral_accel_error, lateral_accel_deadzone), - [-friction_threshold, friction_threshold], - [-torque_params.friction, torque_params.friction] - ) - friction = float(friction_interp) if friction_compensation else 0.0 - return friction - - -def make_tester_present_msg(addr, bus, subaddr=None, suppress_response=False): - dat = [0x02, uds.SERVICE_TYPE.TESTER_PRESENT] - if subaddr is not None: - dat.insert(0, subaddr) - dat.append(0x80 if suppress_response else 0x0) # sub-function - - dat.extend([0x0] * (8 - len(dat))) - return CanData(addr, bytes(dat), bus) - - -def get_safety_config(safety_model: structs.CarParams.SafetyModel, safety_param: int = None) -> structs.CarParams.SafetyConfig: - ret = structs.CarParams.SafetyConfig() - ret.safetyModel = safety_model - if safety_param is not None: - ret.safetyParam = safety_param - return ret - - -class CanBusBase: - offset: int - - def __init__(self, CP, fingerprint: dict[int, dict[int, int]] | None) -> None: - if CP is None: - assert fingerprint is not None - num = max([k for k, v in fingerprint.items() if len(v)], default=0) // 4 + 1 - else: - num = len(CP.safetyConfigs) - self.offset = 4 * (num - 1) - - -class CanSignalRateCalculator: - """ - Calculates the instantaneous rate of a CAN signal by using the counter - variable and the known frequency of the CAN message that contains it. - """ - def __init__(self, frequency): - self.frequency = frequency - self.previous_counter = 0 - self.previous_value = 0 - self.rate = 0 - - def update(self, current_value, current_counter): - if current_counter != self.previous_counter: - self.rate = (current_value - self.previous_value) * self.frequency - - self.previous_counter = current_counter - self.previous_value = current_value - - return self.rate - - -@dataclass(frozen=True, kw_only=True) -class CarSpecs: - mass: float # kg, curb weight - wheelbase: float # meters - steerRatio: float - centerToFrontRatio: float = 0.5 - minSteerSpeed: float = 0.0 # m/s - minEnableSpeed: float = -1.0 # m/s - tireStiffnessFactor: float = 1.0 - - def override(self, **kwargs): - return replace(self, **kwargs) - - -class Freezable: - _frozen: bool = False - - def freeze(self): - if not self._frozen: - self._frozen = True - - def __setattr__(self, *args, **kwargs): - if self._frozen: - raise Exception("cannot modify frozen object") - super().__setattr__(*args, **kwargs) - - -@dataclass(order=True) -class PlatformConfigBase(Freezable): - car_docs: list[CarDocs] | list[ExtraCarDocs] - specs: CarSpecs - - dbc_dict: DbcDict - - flags: int = 0 - - platform_str: str | None = None - - def __hash__(self) -> int: - return hash(self.platform_str) - - def override(self, **kwargs): - return replace(self, **kwargs) - - def init(self): - pass - - def __post_init__(self): - self.init() - - -@dataclass(order=True) -class PlatformConfig(PlatformConfigBase): - car_docs: list[CarDocs] - specs: CarSpecs - dbc_dict: DbcDict - - -@dataclass(order=True) -class ExtraPlatformConfig(PlatformConfigBase): - car_docs: list[ExtraCarDocs] - specs: CarSpecs = CarSpecs(mass=0., wheelbase=0., steerRatio=0.) - dbc_dict: DbcDict = field(default_factory=lambda: dict()) - - -class PlatformsType(EnumType): - def __new__(metacls, cls, bases, classdict, *, boundary=None, _simple=False, **kwds): - for key in classdict._member_names.keys(): - cfg: PlatformConfig = classdict[key] - cfg.platform_str = key - cfg.freeze() - return super().__new__(metacls, cls, bases, classdict, boundary=boundary, _simple=_simple, **kwds) - - -class Platforms(str, ReprEnum, metaclass=PlatformsType): - config: PlatformConfigBase - - def __new__(cls, platform_config: PlatformConfig): - member = str.__new__(cls, platform_config.platform_str) - member.config = platform_config - member._value_ = platform_config.platform_str - return member - - def __repr__(self): - return f"<{self.__class__.__name__}.{self.name}>" - - @classmethod - def create_dbc_map(cls) -> dict[str, DbcDict]: - return {p: p.config.dbc_dict for p in cls} - - @classmethod - def with_flags(cls, flags: IntFlag) -> set['Platforms']: - return {p for p in cls if p.config.flags & flags} diff --git a/opendbc_repo/opendbc/car/bmw/__init__.py b/opendbc_repo/opendbc/car/bmw/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py deleted file mode 100644 index d672e7e8c2..0000000000 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ /dev/null @@ -1,91 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag -from cereal import car -from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.common.conversions import Conversions as CV - -# Steer torque limits -class CarControllerParams: #controls running @ 100hz - STEER_STEP = 1 # 100Hz - STEER_MAX = 12 # Nm - STEER_DELTA_UP = 10 / 100 # 10Nm/s - STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit - STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor - - # STEER_BACKLASH = 1 #deg - def __init__(self, CP): - pass - -class BmwFlags(IntFlag): - # Detected Flags - STEPPER_SERVO_CAN = 2 ** 0 - NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 - DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 - ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported - ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 - ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 - SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query - -class CruiseSettings: - CLUSTER_OFFSET = 2 # kph - -class CanBus: - PT_CAN = 0 - SERVO_CAN = 0 # required for steering - F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging - K_CAN = 0 # not used - only logging - - -class Footnote(Enum): - StepperServoCAN = CarFootnote( - "Requires StepperServoCAN", - Column.FSR_STEERING) - DCC = CarFootnote( - "Minimum speed with CC or DCC is 30 kph", - Column.FSR_LONGITUDINAL) - CC = CarFootnote( - "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", - Column.PACKAGE) - ACC = CarFootnote( - "ACC is required. Also LDM module to take over when OP is off.", - Column.AUTO_RESUME) - DIY = CarFootnote( - "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", - Column.HARDWARE) - -@dataclass -class BmwCarDocs(CarDocs): - package: str = "Cruise Control - VO540, VO544, VO541" - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) - - def init_make(self, CP: car.CarParams): - self.car_parts = CarParts.common([CarHarness.custom]) - -@dataclass -class BmwPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) - - -class CAR(Platforms): - BMW_E82 = BmwPlatformConfig( - [BmwCarDocs("BMW E82 2004-13")], - CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) - ) - BMW_E90 = BmwPlatformConfig( - [BmwCarDocs("BMW E90 2005-11")], - CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) - ) - - -DBC = CAR.create_dbc_map() - - -if __name__ == '__main__': - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) diff --git a/opendbc_repo/opendbc/car/body/__init__.py b/opendbc_repo/opendbc/car/body/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/body/bodycan.py b/opendbc_repo/opendbc/car/body/bodycan.py deleted file mode 100644 index 201bfe718f..0000000000 --- a/opendbc_repo/opendbc/car/body/bodycan.py +++ /dev/null @@ -1,20 +0,0 @@ -def create_control(packer, torque_l, torque_r): - values = { - "TORQUE_L": torque_l, - "TORQUE_R": torque_r, - } - - return packer.make_can_msg("TORQUE_CMD", 0, values) - - -def body_checksum(address: int, sig, d: bytearray) -> int: - crc = 0xFF - poly = 0xD5 - for i in range(len(d) - 2, -1, -1): - crc ^= d[i] - for _ in range(8): - if crc & 0x80: - crc = ((crc << 1) ^ poly) & 0xFF - else: - crc = (crc << 1) & 0xFF - return crc diff --git a/opendbc_repo/opendbc/car/body/carcontroller.py b/opendbc_repo/opendbc/car/body/carcontroller.py deleted file mode 100644 index 3739af24f2..0000000000 --- a/opendbc_repo/opendbc/car/body/carcontroller.py +++ /dev/null @@ -1,82 +0,0 @@ -import numpy as np - -from opendbc.can import CANPacker -from opendbc.car import Bus, DT_CTRL -from opendbc.car.common.pid import PIDController -from opendbc.car.body import bodycan -from opendbc.car.body.values import SPEED_FROM_RPM -from opendbc.car.interfaces import CarControllerBase - -MAX_TORQUE = 500 -MAX_TORQUE_RATE = 50 -MAX_ANGLE_ERROR = np.radians(7) -MAX_POS_INTEGRATOR = 0.2 # meters -MAX_TURN_INTEGRATOR = 0.1 # meters - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.packer = CANPacker(dbc_names[Bus.main]) - - # PIDs - self.turn_pid = PIDController(110, k_i=11.5, rate=1 / DT_CTRL) - self.wheeled_speed_pid = PIDController(110, k_i=11.5, rate=1 / DT_CTRL) - - self.torque_r_filtered = 0. - self.torque_l_filtered = 0. - - @staticmethod - def deadband_filter(torque, deadband): - if torque > 0: - torque += deadband - else: - torque -= deadband - return torque - - def update(self, CC, CS, now_nanos): - - torque_l = 0 - torque_r = 0 - - if CC.enabled: - # Read these from the joystick - # TODO: this isn't acceleration, okay? - speed_desired = CC.actuators.accel / 5. - speed_diff_desired = -CC.actuators.torque / 2. - - speed_measured = SPEED_FROM_RPM * (CS.out.wheelSpeeds.fl + CS.out.wheelSpeeds.fr) / 2. - speed_error = speed_desired - speed_measured - - torque = self.wheeled_speed_pid.update(speed_error, freeze_integrator=False) - - speed_diff_measured = SPEED_FROM_RPM * (CS.out.wheelSpeeds.fl - CS.out.wheelSpeeds.fr) - turn_error = speed_diff_measured - speed_diff_desired - freeze_integrator = ((turn_error < 0 and self.turn_pid.error_integral <= -MAX_TURN_INTEGRATOR) or - (turn_error > 0 and self.turn_pid.error_integral >= MAX_TURN_INTEGRATOR)) - torque_diff = self.turn_pid.update(turn_error, freeze_integrator=freeze_integrator) - - # Combine 2 PIDs outputs - torque_r = torque + torque_diff - torque_l = torque - torque_diff - - # Torque rate limits - self.torque_r_filtered = np.clip(self.deadband_filter(torque_r, 10), - self.torque_r_filtered - MAX_TORQUE_RATE, - self.torque_r_filtered + MAX_TORQUE_RATE) - self.torque_l_filtered = np.clip(self.deadband_filter(torque_l, 10), - self.torque_l_filtered - MAX_TORQUE_RATE, - self.torque_l_filtered + MAX_TORQUE_RATE) - torque_r = int(np.clip(self.torque_r_filtered, -MAX_TORQUE, MAX_TORQUE)) - torque_l = int(np.clip(self.torque_l_filtered, -MAX_TORQUE, MAX_TORQUE)) - - can_sends = [] - can_sends.append(bodycan.create_control(self.packer, torque_l, torque_r)) - - new_actuators = CC.actuators.as_builder() - new_actuators.accel = torque_l - new_actuators.torque = torque_r - new_actuators.torqueOutputCan = torque_r - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/body/carstate.py b/opendbc_repo/opendbc/car/body/carstate.py deleted file mode 100644 index b346a3df01..0000000000 --- a/opendbc_repo/opendbc/car/body/carstate.py +++ /dev/null @@ -1,35 +0,0 @@ -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import CarStateBase -from opendbc.car.body.values import DBC - - -class CarState(CarStateBase): - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.main] - ret = structs.CarState() - - ret.wheelSpeeds.fl = cp.vl['MOTORS_DATA']['SPEED_L'] - ret.wheelSpeeds.fr = cp.vl['MOTORS_DATA']['SPEED_R'] - - ret.vEgoRaw = ((ret.wheelSpeeds.fl + ret.wheelSpeeds.fr) / 2.) * self.CP.wheelSpeedFactor - - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = False - - ret.steerFaultPermanent = any([cp.vl['VAR_VALUES']['MOTOR_ERR_L'], cp.vl['VAR_VALUES']['MOTOR_ERR_R'], - cp.vl['VAR_VALUES']['FAULT']]) - - ret.charging = cp.vl["BODY_DATA"]["CHARGER_CONNECTED"] == 1 - ret.fuelGauge = cp.vl["BODY_DATA"]["BATT_PERCENTAGE"] / 100 - - # irrelevant for non-car - ret.gearShifter = structs.CarState.GearShifter.drive - ret.cruiseState.enabled = True - ret.cruiseState.available = True - - return ret - - @staticmethod - def get_can_parsers(CP): - return {Bus.main: CANParser(DBC[CP.carFingerprint][Bus.main], [], 0)} diff --git a/opendbc_repo/opendbc/car/body/fingerprints.py b/opendbc_repo/opendbc/car/body/fingerprints.py deleted file mode 100644 index 5806112fb1..0000000000 --- a/opendbc_repo/opendbc/car/body/fingerprints.py +++ /dev/null @@ -1,28 +0,0 @@ -""" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.""" -from opendbc.car.structs import CarParams -from opendbc.car.body.values import CAR - -Ecu = CarParams.Ecu - -# debug ecu fw version is the git hash of the firmware - - -FINGERPRINTS = { - CAR.COMMA_BODY: [{ - 513: 8, 516: 8, 514: 3, 515: 4 - }], -} - -FW_VERSIONS = { - CAR.COMMA_BODY: { - (Ecu.engine, 0x720, None): [ - b'0.0.01', - b'0.3.00a', - b'02/27/2022', - ], - (Ecu.debug, 0x721, None): [ - b'166bd860', - b'dc780f85', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/body/interface.py b/opendbc_repo/opendbc/car/body/interface.py deleted file mode 100644 index 24e571ee95..0000000000 --- a/opendbc_repo/opendbc/car/body/interface.py +++ /dev/null @@ -1,30 +0,0 @@ -import math -from opendbc.car import get_safety_config, structs -from opendbc.car.body.carcontroller import CarController -from opendbc.car.body.carstate import CarState -from opendbc.car.body.values import SPEED_FROM_RPM -from opendbc.car.interfaces import CarInterfaceBase - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.notCar = True - ret.brand = "body" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.body)] - - ret.minSteerSpeed = -math.inf - ret.maxLateralAccel = math.inf # TODO: set to a reasonable value - ret.steerLimitTimer = 1.0 - ret.steerActuatorDelay = 0. - - ret.wheelSpeedFactor = SPEED_FROM_RPM - - ret.radarUnavailable = True - ret.openpilotLongitudinalControl = True - ret.steerControlType = structs.CarParams.SteerControlType.angle - - return ret diff --git a/opendbc_repo/opendbc/car/body/values.py b/opendbc_repo/opendbc/car/body/values.py deleted file mode 100644 index ca47e09f02..0000000000 --- a/opendbc_repo/opendbc/car/body/values.py +++ /dev/null @@ -1,40 +0,0 @@ -from opendbc.car import Bus, CarSpecs, PlatformConfig, Platforms -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarDocs -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries - -Ecu = CarParams.Ecu - -SPEED_FROM_RPM = 0.008587 - - -class CarControllerParams: - ANGLE_DELTA_BP = [0., 5., 15.] - ANGLE_DELTA_V = [5., .8, .15] # windup limit - ANGLE_DELTA_VU = [5., 3.5, 0.4] # unwind limit - LKAS_MAX_TORQUE = 1 # A value of 1 is easy to overpower - STEER_THRESHOLD = 1.0 - - def __init__(self, CP): - pass - - -class CAR(Platforms): - COMMA_BODY = PlatformConfig( - [CarDocs("comma body", package="All")], - CarSpecs(mass=9, wheelbase=0.406, steerRatio=0.5, centerToFrontRatio=0.44), - {Bus.main: 'comma_body'}, - ) - - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.UDS_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.UDS_VERSION_RESPONSE], - bus=0, - ), - ], -) - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/can_definitions.py b/opendbc_repo/opendbc/car/can_definitions.py deleted file mode 100644 index 2dba7f26a8..0000000000 --- a/opendbc_repo/opendbc/car/can_definitions.py +++ /dev/null @@ -1,15 +0,0 @@ -from collections.abc import Callable -from typing import NamedTuple, Protocol - - -class CanData(NamedTuple): - address: int - dat: bytes - src: int - - -CanSendCallable = Callable[[list[CanData]], None] - - -class CanRecvCallable(Protocol): - def __call__(self, wait_for_one: bool = False) -> list[list[CanData]]: ... diff --git a/opendbc_repo/opendbc/car/car.capnp b/opendbc_repo/opendbc/car/car.capnp deleted file mode 100644 index f20cb6b770..0000000000 --- a/opendbc_repo/opendbc/car/car.capnp +++ /dev/null @@ -1,813 +0,0 @@ -using Cxx = import "./include/c++.capnp"; -$Cxx.namespace("cereal"); - -@0x8e2af1e708af8b8d; - -# ******* events causing controls state machine transition ******* - -# IMPORTANT: This struct is to not be modified so old logs can be parsed -struct OnroadEventDEPRECATED @0x9b1657f34caf3ad3 { - name @0 :EventName; - - # event types - enable @1 :Bool; - noEntry @2 :Bool; - warning @3 :Bool; # alerts presented only when enabled or soft disabling - userDisable @4 :Bool; - softDisable @5 :Bool; - immediateDisable @6 :Bool; - preEnable @7 :Bool; - permanent @8 :Bool; # alerts presented regardless of openpilot state - overrideLateral @10 :Bool; - overrideLongitudinal @9 :Bool; - - enum EventName @0xbaa8c5d505f727de { - canError @0; - steerUnavailable @1; - wrongGear @4; - doorOpen @5; - seatbeltNotLatched @6; - espDisabled @7; - wrongCarMode @8; - steerTempUnavailable @9; - reverseGear @10; - buttonCancel @11; - buttonEnable @12; - pedalPressed @13; # exits active state - preEnableStandstill @73; # added during pre-enable state with brake - gasPressedOverride @108; # added when user is pressing gas with no disengage on gas - steerOverride @114; - cruiseDisabled @14; - speedTooLow @17; - outOfSpace @18; - overheat @19; - calibrationIncomplete @20; - calibrationInvalid @21; - calibrationRecalibrating @117; - controlsMismatch @22; - pcmEnable @23; - pcmDisable @24; - radarFault @26; - brakeHold @28; - parkBrake @29; - manualRestart @30; - joystickDebug @34; - longitudinalManeuver @124; - steerTempUnavailableSilent @35; - resumeRequired @36; - preDriverDistracted @37; - promptDriverDistracted @38; - driverDistracted @39; - preDriverUnresponsive @43; - promptDriverUnresponsive @44; - driverUnresponsive @45; - belowSteerSpeed @46; - lowBattery @48; - accFaulted @51; - sensorDataInvalid @52; - commIssue @53; - commIssueAvgFreq @109; - tooDistracted @54; - posenetInvalid @55; - preLaneChangeLeft @57; - preLaneChangeRight @58; - laneChange @59; - lowMemory @63; - stockAeb @64; - ldw @65; - carUnrecognized @66; - invalidLkasSetting @69; - speedTooHigh @70; - laneChangeBlocked @71; - relayMalfunction @72; - stockFcw @74; - startup @75; - startupNoCar @76; - startupNoControl @77; - startupNoSecOcKey @125; - startupMaster @78; - fcw @79; - steerSaturated @80; - belowEngageSpeed @84; - noGps @85; - wrongCruiseMode @87; - modeldLagging @89; - deviceFalling @90; - fanMalfunction @91; - cameraMalfunction @92; - cameraFrameRate @110; - processNotRunning @95; - dashcamMode @96; - selfdriveInitializing @98; - usbError @99; - cruiseMismatch @106; - canBusMissing @111; - selfdrivedLagging @112; - resumeBlocked @113; - steerTimeLimit @115; - vehicleSensorsInvalid @116; - locationdTemporaryError @103; - locationdPermanentError @118; - paramsdTemporaryError @50; - paramsdPermanentError @119; - actuatorsApiUnavailable @120; - espActive @121; - personalityChanged @122; - aeb @123; - - radarCanErrorDEPRECATED @15; - communityFeatureDisallowedDEPRECATED @62; - radarCommIssueDEPRECATED @67; - driverMonitorLowAccDEPRECATED @68; - gasUnavailableDEPRECATED @3; - dataNeededDEPRECATED @16; - modelCommIssueDEPRECATED @27; - ipasOverrideDEPRECATED @33; - geofenceDEPRECATED @40; - driverMonitorOnDEPRECATED @41; - driverMonitorOffDEPRECATED @42; - calibrationProgressDEPRECATED @47; - invalidGiraffeHondaDEPRECATED @49; - invalidGiraffeToyotaDEPRECATED @60; - internetConnectivityNeededDEPRECATED @61; - whitePandaUnsupportedDEPRECATED @81; - commIssueWarningDEPRECATED @83; - focusRecoverActiveDEPRECATED @86; - neosUpdateRequiredDEPRECATED @88; - modelLagWarningDEPRECATED @93; - startupOneplusDEPRECATED @82; - startupFuzzyFingerprintDEPRECATED @97; - noTargetDEPRECATED @25; - brakeUnavailableDEPRECATED @2; - plannerErrorDEPRECATED @32; - gpsMalfunctionDEPRECATED @94; - roadCameraErrorDEPRECATED @100; - driverCameraErrorDEPRECATED @101; - wideRoadCameraErrorDEPRECATED @102; - highCpuUsageDEPRECATED @105; - startupNoFwDEPRECATED @104; - lowSpeedLockoutDEPRECATED @31; - lkasDisabledDEPRECATED @107; - soundsUnavailableDEPRECATED @56; - } -} - -# ******* main car state @ 100hz ******* -# all speeds in m/s - -struct CarState { - # CAN health - canValid @26 :Bool; # invalid counter/checksums - canTimeout @40 :Bool; # CAN bus dropped out - canErrorCounter @48 :UInt32; - - # car speed - vEgo @1 :Float32; # best estimate of speed - aEgo @16 :Float32; # best estimate of aCAN cceleration - vEgoRaw @17 :Float32; # unfiltered speed from wheel speed sensors - vEgoCluster @44 :Float32; # best estimate of speed shown on car's instrument cluster, used for UI - - vCruise @53 :Float32; # actual set speed - vCruiseCluster @54 :Float32; # set speed to display in the UI - - yawRate @22 :Float32; # best estimate of yaw rate - standstill @18 :Bool; - wheelSpeeds @2 :WheelSpeeds; - - # gas pedal, 0.0-1.0 - gas @3 :Float32; # this is user pedal only - gasPressed @4 :Bool; # this is user pedal only - - engineRpm @46 :Float32; - - # brake pedal, 0.0-1.0 - brake @5 :Float32; # this is user pedal only - brakePressed @6 :Bool; # this is user pedal only - regenBraking @45 :Bool; # this is user pedal only - parkingBrake @39 :Bool; - brakeHoldActive @38 :Bool; - - # steering wheel - steeringAngleDeg @7 :Float32; - steeringAngleOffsetDeg @37 :Float32; # Offset betweens sensors in case there multiple - steeringRateDeg @15 :Float32; - steeringTorque @8 :Float32; # TODO: standardize units - steeringTorqueEps @27 :Float32; # TODO: standardize units - steeringPressed @9 :Bool; # if the user is using the steering wheel - steerFaultTemporary @35 :Bool; # temporary EPS fault - steerFaultPermanent @36 :Bool; # permanent EPS fault - invalidLkasSetting @55 :Bool; # stock LKAS is incorrectly configured (i.e. on or off) - stockAeb @30 :Bool; - stockFcw @31 :Bool; - espDisabled @32 :Bool; - accFaulted @42 :Bool; - carFaultedNonCritical @47 :Bool; # some ECU is faulted, but car remains controllable - espActive @51 :Bool; - vehicleSensorsInvalid @52 :Bool; # invalid steering angle readings, etc. - lowSpeedAlert @56 :Bool; # lost steering control due to a dynamic min steering speed - - # cruise state - cruiseState @10 :CruiseState; - - # gear - gearShifter @14 :GearShifter; - - # button presses - buttonEvents @11 :List(ButtonEvent); - buttonEnable @57 :Bool; # user is requesting enable, usually one frame. set if pcmCruise=False - leftBlinker @20 :Bool; - rightBlinker @21 :Bool; - genericToggle @23 :Bool; - - # lock info - doorOpen @24 :Bool; - seatbeltUnlatched @25 :Bool; - - # clutch (manual transmission only) - clutchPressed @28 :Bool; - - # blindspot sensors - leftBlindspot @33 :Bool; # Is there something blocking the left lane change - rightBlindspot @34 :Bool; # Is there something blocking the right lane change - - fuelGauge @41 :Float32; # battery or fuel tank level from 0.0 to 1.0 - charging @43 :Bool; - - # process meta - cumLagMs @50 :Float32; - - vCluRatio @58 :Float32; - logCarrot @59 :Text; - softHoldActive @60 :Int16; #0: not active, 1: active ready, 2: activated - activateCruise @61 :Int16; - latEnabled @62 :Bool; - pcmCruiseGap @63 :Int16; #0: can't read, 1,2,3,4: gap setting - speedLimit @64 :Float32; - speedLimitDistance @65 :Float32; - gearStep @66 :Int16; - tpms @67 : Tpms; - useLaneLineSpeed @68 : Float32; - leftLatDist @69 : Float32; # distance to left lane line - rightLatDist @70 : Float32; # distance to right lane line - leftLongDist @71 : Float32; # distance to left lane line in the direction of travel - rightLongDist @72 : Float32; # distance to right lane line in the direction of travel - carrotCruise @73 : Int16; - leftLaneLine @74 : Int16; # -1: no lane, 0: dashed, 1: solid, +10: white, +20: yellow, ex) 21: solid yellow - rightLaneLine @75 : Int16; # -1: no lane, 0: dashed, 1: solid, +10: white, +20: yellow, ex) 21: solid yellow - datetime @76 :UInt64; # timestamp in milliseconds since epoch - - struct Tpms { - fl @0 :Float32; - fr @1 :Float32; - rl @2 :Float32; - rr @3 :Float32; - } - - struct WheelSpeeds { - # optional wheel speeds - fl @0 :Float32; - fr @1 :Float32; - rl @2 :Float32; - rr @3 :Float32; - } - - struct CruiseState { - enabled @0 :Bool; - speed @1 :Float32; - speedCluster @6 :Float32; # Set speed as shown on instrument cluster - available @2 :Bool; - speedOffset @3 :Float32; - standstill @4 :Bool; - nonAdaptive @5 :Bool; - } - - enum GearShifter { - unknown @0; - park @1; - drive @2; - neutral @3; - reverse @4; - sport @5; - low @6; - brake @7; - eco @8; - manumatic @9; - } - - # send on change - struct ButtonEvent { - pressed @0 :Bool; - type @1 :Type; - - enum Type { - unknown @0; - leftBlinker @1; - rightBlinker @2; - accelCruise @3; - decelCruise @4; - cancel @5; - lkas @6; - altButton2 @7; - mainCruise @8; - setCruise @9; - resumeCruise @10; - gapAdjustCruise @11; - - lfaButton @12; - paddleLeft @13; - paddleRight @14; - } - } - - # deprecated - errorsDEPRECATED @0 :List(OnroadEventDEPRECATED.EventName); - brakeLights @19 :Bool; - steeringRateLimitedDEPRECATED @29 :Bool; - canMonoTimesDEPRECATED @12: List(UInt64); - canRcvTimeoutDEPRECATED @49 :Bool; - eventsDEPRECATED @13 :List(OnroadEventDEPRECATED); -} - -# ******* radar state @ 20hz ******* - -struct RadarData @0x888ad6581cf0aacb { - errors @3 :Error; - points @1 :List(RadarPoint); - - struct Error { - canError @0 :Bool; - radarFault @1 :Bool; - wrongConfig @2 :Bool; - radarUnavailableTemporary @3 :Bool; # radar data is temporarily unavailable due to conditions the car sets - } - - # similar to LiveTracks - # is one timestamp valid for all? I think so - struct RadarPoint { - trackId @0 :UInt64; # no trackId reuse - - # these 3 are the minimum required - dRel @1 :Float32; # m from the front bumper of the car - yRel @2 :Float32; # m - vRel @3 :Float32; # m/s - - # these are optional and valid if they are not NaN - aRel @4 :Float32; # m/s^2 - yvRel @5 :Float32; # m/s - - # some radars flag measurements VS estimates - measured @6 :Bool; - - vLead @7 :Float32; # m/s - aLead @8 :Float32; # m/s^2 - jLead @9 :Float32; # m/s^3 - } - - enum ErrorDEPRECATED { - canError @0; - fault @1; - wrongConfig @2; - } - - # deprecated - canMonoTimesDEPRECATED @2 :List(UInt64); - errorsDEPRECATED @0 :List(ErrorDEPRECATED); -} - -# ******* car controls @ 100hz ******* - -struct CarControl { - # must be true for any actuator commands to work - enabled @0 :Bool; - latActive @11: Bool; - longActive @12: Bool; - - # Final actuator commands - actuators @6 :Actuators; - - # Blinker controls - leftBlinker @15: Bool; - rightBlinker @16: Bool; - - orientationNED @13 :List(Float32); - angularVelocity @14 :List(Float32); - currentCurvature @17 :Float32; # From vehicle model - - cruiseControl @4 :CruiseControl; - hudControl @5 :HUDControl; - - struct Actuators { - # lateral commands, mutually exclusive - torque @2: Float32; # [0.0, 1.0] - steeringAngleDeg @3: Float32; - curvature @7: Float32; - - # longitudinal commands - accel @4: Float32; # m/s^2 - longControlState @5: LongControlState; - - # these are only for logging the actual values sent to the car over CAN - gas @0: Float32; # [0.0, 1.0] - brake @1: Float32; # [0.0, 1.0] - torqueOutputCan @8: Float32; # value sent over can to the car - speed @6: Float32; # m/s - - jerk @9: Float32; # m/s^3 - aTarget @10: Float32; # m/s^2 - - enum LongControlState @0xe40f3a917d908282{ - off @0; - pid @1; - stopping @2; - starting @3; - } - } - - struct CruiseControl { - cancel @0: Bool; - resume @1: Bool; - override @4: Bool; - speedOverrideDEPRECATED @2: Float32; - accelOverrideDEPRECATED @3: Float32; - } - - struct HUDControl { - speedVisible @0: Bool; - setSpeed @1: Float32; - lanesVisible @2: Bool; - leadVisible @3: Bool; - visualAlert @4: VisualAlert; - rightLaneVisible @6: Bool; - leftLaneVisible @7: Bool; - rightLaneDepart @8: Bool; - leftLaneDepart @9: Bool; - leadDistanceBars @10: Int8; # 1-3: 1 is closest, 3 is farthest. some ports may utilize 2-4 bars instead - - activeCarrot @11: Int16; - leadDistance @12: Float32; - leadRelSpeed @13: Float32; - leadDPath @14: Float32; - leadRadar @15: Int16; - modelDesire @16: Int16; - atcDistance @17: Float32; - - # not used with the dash, TODO: separate structs for dash UI and device UI - audibleAlert @5: AudibleAlert; - - enum VisualAlert { - # these are the choices from the Honda - # map as good as you can for your car - none @0; - fcw @1; - steerRequired @2; - brakePressed @3; - wrongGear @4; - seatbeltUnbuckled @5; - speedTooHigh @6; - ldw @7; - } - - enum AudibleAlert { - none @0; - - engage @1; - disengage @2; - refuse @3; - - warningSoft @4; - warningImmediate @5; - - prompt @6; - promptRepeat @7; - promptDistracted @8; - - longEngaged @10; - longDisengaged @11; - trafficSignGreen @12; - trafficSignChanged @13; - laneChange @14; - stopping @15; - autoHold @16; - engage2 @17; - disengage2 @18; - trafficError @19; - bsdWarning @20; - speedDown @21; - stopStop @22; - audioTurn @9; - reverseGear @23; - audio1 @24; - audio2 @25; - audio3 @26; - audio4 @27; - audio5 @28; - audio6 @29; - audio7 @30; - audio8 @31; - audio9 @32; - audio10 @33; - - nnff @34; - } - } - - gasDEPRECATED @1 :Float32; - brakeDEPRECATED @2 :Float32; - steeringTorqueDEPRECATED @3 :Float32; - activeDEPRECATED @7 :Bool; - rollDEPRECATED @8 :Float32; - pitchDEPRECATED @9 :Float32; - actuatorsOutputDEPRECATED @10 :Actuators; -} - -struct CarOutput { - # Any car specific rate limits or quirks applied by - # the CarController are reflected in actuatorsOutput - # and matches what is sent to the car - actuatorsOutput @0 :CarControl.Actuators; -} - -# ****** car param ****** - -struct CarParams { - brand @0 :Text; # Designates which group a platform falls under. Each folder in opendbc/car is assigned one brand string - carFingerprint @1 :Text; - fuzzyFingerprint @55 :Bool; - - notCar @66 :Bool; # flag for non-car robotics platforms - - pcmCruise @3 :Bool; # is openpilot's state tied to the PCM's cruise state? - enableDsu @5 :Bool; # driving support unit - enableBsm @56 :Bool; # blind spot monitoring - flags @64 :UInt32; # flags for car specific quirks - alphaLongitudinalAvailable @71 :Bool; - extFlags @78 :UInt32; # carrot ext car flags - - minEnableSpeed @7 :Float32; - minSteerSpeed @8 :Float32; - steerAtStandstill @77 :Bool; # is steering available at standstill? just check if it faults - safetyConfigs @62 :List(SafetyConfig); - alternativeExperience @65 :Int16; # panda flag for features like no disengage on gas - - # Car docs fields, not used for control - maxLateralAccel @68 :Float32; - autoResumeSng @69 :Bool; # describes whether car can resume from a stop automatically - - # things about the car in the manual - mass @17 :Float32; # [kg] curb weight: all fluids no cargo - wheelbase @18 :Float32; # [m] distance from rear axle to front axle - centerToFront @19 :Float32; # [m] distance from center of mass to front axle - steerRatio @20 :Float32; # [] ratio of steering wheel angle to front wheel angle - steerRatioRear @21 :Float32; # [] ratio of steering wheel angle to rear wheel angle (usually 0) - - # things we can derive - rotationalInertia @22 :Float32; # [kg*m2] body rotational inertia - tireStiffnessFactor @72 :Float32; # scaling factor used in calculating tireStiffness[Front,Rear] - tireStiffnessFront @23 :Float32; # [N/rad] front tire coeff of stiff - tireStiffnessRear @24 :Float32; # [N/rad] rear tire coeff of stiff - - longitudinalTuning @25 :LongitudinalPIDTuning; - lateralParams @48 :LateralParams; - lateralTuning :union { - pid @26 :LateralPIDTuning; - indiDEPRECATED @27 :LateralINDITuning; - lqrDEPRECATED @40 :LateralLQRTuning; - torque @67 :LateralTorqueTuning; - } - - steerLimitAlert @28 :Bool; - steerLimitTimer @47 :Float32; # time before steerLimitAlert is issued - - vEgoStopping @29 :Float32; # Speed at which the car goes into stopping state - vEgoStarting @59 :Float32; # Speed at which the car goes into starting state - steerControlType @34 :SteerControlType; - radarUnavailable @35 :Bool; # True when radar objects aren't visible on CAN or aren't parsed out - stopAccel @60 :Float32; # Required acceleration to keep vehicle stationary - stoppingDecelRate @52 :Float32; # m/s^2/s while trying to stop - startAccel @32 :Float32; # Required acceleration to get car moving - startingState @70 :Bool; # Does this car make use of special starting state - - steerActuatorDelay @36 :Float32; # Steering wheel actuator delay in seconds - longitudinalActuatorDelay @58 :Float32; # Gas/Brake actuator delay in seconds - openpilotLongitudinalControl @37 :Bool; # is openpilot doing the longitudinal control? - carVin @38 :Text; # VIN number queried during fingerprinting - dashcamOnly @41: Bool; - passive @73: Bool; # is openpilot in control? - transmissionType @43 :TransmissionType; - carFw @44 :List(CarFw); - - radarDelay @74 :Float32; - fingerprintSource @49: FingerprintSource; - networkLocation @50 :NetworkLocation; # Where Panda/C2 is integrated into the car's CAN network - - wheelSpeedFactor @63 :Float32; # Multiplier on wheels speeds to computer actual speeds - - secOcRequired @75 :Bool; # Car requires SecOC message authentication to operate - secOcKeyAvailable @76 :Bool; # Stored SecOC key loaded from params - - struct SafetyConfig { - safetyModel @0 :SafetyModel; - safetyParam @3 :UInt16; - safetyParamDEPRECATED @1 :Int16; - safetyParam2DEPRECATED @2 :UInt32; - } - - struct LateralParams { - torqueBP @0 :List(Int32); - torqueV @1 :List(Int32); - } - - struct LateralPIDTuning { - kpBP @0 :List(Float32); - kpV @1 :List(Float32); - kiBP @2 :List(Float32); - kiV @3 :List(Float32); - kf @4 :Float32; - } - - struct LateralTorqueTuning { - useSteeringAngle @0 :Bool; - kp @1 :Float32; - ki @2 :Float32; - friction @3 :Float32; - kf @4 :Float32; - steeringAngleDeadzoneDeg @5 :Float32; - latAccelFactor @6 :Float32; - latAccelOffset @7 :Float32; - } - - struct LongitudinalPIDTuning { - kpBP @0 :List(Float32); - kpV @1 :List(Float32); - kiBP @2 :List(Float32); - kiV @3 :List(Float32); - kf @6 :Float32; - deadzoneBPDEPRECATED @4 :List(Float32); - deadzoneVDEPRECATED @5 :List(Float32); - } - - struct LateralINDITuning { - outerLoopGainBP @4 :List(Float32); - outerLoopGainV @5 :List(Float32); - innerLoopGainBP @6 :List(Float32); - innerLoopGainV @7 :List(Float32); - timeConstantBP @8 :List(Float32); - timeConstantV @9 :List(Float32); - actuatorEffectivenessBP @10 :List(Float32); - actuatorEffectivenessV @11 :List(Float32); - - outerLoopGainDEPRECATED @0 :Float32; - innerLoopGainDEPRECATED @1 :Float32; - timeConstantDEPRECATED @2 :Float32; - actuatorEffectivenessDEPRECATED @3 :Float32; - } - - struct LateralLQRTuning { - scale @0 :Float32; - ki @1 :Float32; - dcGain @2 :Float32; - - # State space system - a @3 :List(Float32); - b @4 :List(Float32); - c @5 :List(Float32); - - k @6 :List(Float32); # LQR gain - l @7 :List(Float32); # Kalman gain - } - - enum SafetyModel { - silent @0; - hondaNidec @1; - toyota @2; - elm327 @3; - gm @4; - hondaBoschGiraffe @5; - ford @6; - cadillac @7; - hyundai @8; - chrysler @9; - tesla @10; - subaru @11; - gmPassive @12; - mazda @13; - nissan @14; - volkswagen @15; - toyotaIpas @16; - allOutput @17; - gmAscm @18; - noOutput @19; # like silent but without silent CAN TXs - hondaBosch @20; - volkswagenPq @21; - subaruPreglobal @22; # pre-Global platform - hyundaiLegacy @23; - hyundaiCommunity @24; - volkswagenMlb @25; - hongqi @26; - body @27; - hyundaiCanfd @28; - volkswagenMqbEvo @29; - chryslerCusw @30; - psa @31; - fcaGiorgio @32; - rivian @33; - volkswagenMeb @34; - bmw @35; - } - - enum SteerControlType { - torque @0; - angle @1; - - curvatureDEPRECATED @2; - } - - enum TransmissionType { - unknown @0; - automatic @1; # Traditional auto, including DSG - manual @2; # True "stick shift" only - direct @3; # Electric vehicle or other direct drive - cvt @4; - } - - struct CarFw { - ecu @0 :Ecu; - fwVersion @1 :Data; - address @2 :UInt32; - subAddress @3 :UInt8; - responseAddress @4 :UInt32; - request @5 :List(Data); - brand @6 :Text; - bus @7 :UInt8; - logging @8 :Bool; - obdMultiplexing @9 :Bool; - } - - enum Ecu { - eps @0; - abs @1; - fwdRadar @2; - fwdCamera @3; - engine @4; - unknown @5; - transmission @8; # Transmission Control Module - hybrid @18; # hybrid control unit, e.g. Chrysler's HCP, Honda's IMA Control Unit, Toyota's hybrid control computer - srs @9; # airbag - gateway @10; # can gateway - hud @11; # heads up display - combinationMeter @12; # instrument cluster - electricBrakeBooster @15; - shiftByWire @16; - adas @19; - cornerRadar @21; - hvac @20; - parkingAdas @7; # parking assist system ECU, e.g. Toyota's IPAS, Hyundai's RSPA, etc. - epb @22; # electronic parking brake - telematics @23; - body @24; # body control module - - # Toyota only - dsu @6; - - # Honda only - vsa @13; # Vehicle Stability Assist - programmedFuelInjection @14; - - debug @17; - } - - enum FingerprintSource { - can @0; - fw @1; - fixed @2; - } - - enum NetworkLocation { - fwdCamera @0; # Standard/default integration at LKAS camera - gateway @1; # Integration at vehicle's CAN gateway - } - - enableGasInterceptorDEPRECATED @2 :Bool; - enableCameraDEPRECATED @4 :Bool; - enableApgsDEPRECATED @6 :Bool; - steerRateCostDEPRECATED @33 :Float32; - isPandaBlackDEPRECATED @39 :Bool; - hasStockCameraDEPRECATED @57 :Bool; - safetyParamDEPRECATED @10 :Int16; - safetyModelDEPRECATED @9 :SafetyModel; - safetyModelPassiveDEPRECATED @42 :SafetyModel = silent; - minSpeedCanDEPRECATED @51 :Float32; - communityFeatureDEPRECATED @46: Bool; - startingAccelRateDEPRECATED @53 :Float32; - steerMaxBPDEPRECATED @11 :List(Float32); - steerMaxVDEPRECATED @12 :List(Float32); - gasMaxBPDEPRECATED @13 :List(Float32); - gasMaxVDEPRECATED @14 :List(Float32); - brakeMaxBPDEPRECATED @15 :List(Float32); - brakeMaxVDEPRECATED @16 :List(Float32); - directAccelControlDEPRECATED @30 :Bool; - maxSteeringAngleDegDEPRECATED @54 :Float32; - longitudinalActuatorDelayLowerBoundDEPRECATED @61 :Float32; - stoppingControlDEPRECATED @31 :Bool; # Does the car allow full control even at lows speeds when stopping - radarTimeStep @45: Float32; # time delta between radar updates, 20Hz is very standard -} diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py deleted file mode 100644 index a846a743ea..0000000000 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ /dev/null @@ -1,234 +0,0 @@ -import os -import time - -from opendbc.car import gen_empty_fingerprint -from opendbc.car.can_definitions import CanRecvCallable, CanSendCallable -from opendbc.car.carlog import carlog -from opendbc.car.structs import CarParams, CarParamsT -from opendbc.car.fingerprints import eliminate_incompatible_cars, all_legacy_fingerprint_cars -from opendbc.car.fw_versions import ObdCallback, get_fw_versions_ordered, get_present_ecus, match_fw_to_car -from opendbc.car.mock.values import CAR as MOCK -from opendbc.car.values import BRANDS -from opendbc.car.vin import get_vin, is_valid_vin, VIN_UNKNOWN - -from common.params import Params - - -FRAME_FINGERPRINT = 100 # 1s - - -def load_interfaces(brand_names): - ret = {} - for brand_name in brand_names: - # BMW is in selfdrive, not opendbc - if brand_name == 'bmw': - path = f'openpilot.selfdrive.car.{brand_name}' - else: - path = f'opendbc.car.{brand_name}' - try: - CarInterface = __import__(path + '.interface', fromlist=['CarInterface']).CarInterface - for model_name in brand_names[brand_name]: - ret[model_name] = CarInterface - except ImportError as e: - carlog.warning(f"Failed to load interface for {brand_name}: {e}") - return ret - - -def _get_interface_names() -> dict[str, list[str]]: - # returns a dict of brand name and its respective models - brand_names = {} - for brand in BRANDS: - brand_name = brand.__module__.split('.')[-2] - brand_names[brand_name] = [model.value for model in brand] - - return brand_names - - -# imports from directory opendbc/car// -interface_names = _get_interface_names() -interfaces = load_interfaces(interface_names) - - -def can_fingerprint(can_recv: CanRecvCallable) -> tuple[str | None, dict[int, dict]]: - finger = gen_empty_fingerprint() - candidate_cars = {i: all_legacy_fingerprint_cars() for i in [0, 1]} # attempt fingerprint on both bus 0 and 1 - frame = 0 - car_fingerprint = None - done = False - - while not done: - # can_recv(wait_for_one=True) may return zero or multiple packets, so we increment frame for each one we receive - can_packets = can_recv(wait_for_one=True) - for can_packet in can_packets: - for can in can_packet: - # The fingerprint dict is generated for all buses, this way the car interface - # can use it to detect a (valid) multipanda setup and initialize accordingly - if can.src < 128: - if can.src not in finger: - finger[can.src] = {} - finger[can.src][can.address] = len(can.dat) - - for b in candidate_cars: - # Ignore extended messages and VIN query response. - if can.src == b and can.address < 0x800 and can.address not in (0x7df, 0x7e0, 0x7e8): - candidate_cars[b] = eliminate_incompatible_cars(can, candidate_cars[b]) - - # if we only have one car choice and the time since we got our first - # message has elapsed, exit - for b in candidate_cars: - if len(candidate_cars[b]) == 1 and frame > FRAME_FINGERPRINT: - # fingerprint done - car_fingerprint = candidate_cars[b][0] - - # bail if no cars left or we've been waiting for more than 2s - failed = (all(len(cc) == 0 for cc in candidate_cars.values()) and frame > FRAME_FINGERPRINT) or frame > 200 - succeeded = car_fingerprint is not None - done = failed or succeeded - - frame += 1 - - return car_fingerprint, finger - - -# **** for use live only **** -def fingerprint(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, num_pandas: int, - cached_params: CarParamsT | None) -> tuple[str | None, dict, str, list[CarParams.CarFw], CarParams.FingerprintSource, bool]: - fixed_fingerprint = os.environ.get('FINGERPRINT', "") - skip_fw_query = os.environ.get('SKIP_FW_QUERY', False) - disable_fw_cache = os.environ.get('DISABLE_FW_CACHE', False) - ecu_rx_addrs = set() - - start_time = time.monotonic() - if not skip_fw_query: - if cached_params is not None and cached_params.brand != "mock" and len(cached_params.carFw) > 0 and \ - cached_params.carVin is not VIN_UNKNOWN and not disable_fw_cache: - carlog.warning("Using cached CarParams") - vin_rx_addr, vin_rx_bus, vin = -1, -1, cached_params.carVin - car_fw = list(cached_params.carFw) - cached = True - else: - carlog.warning("Getting VIN & FW versions") - # enable OBD multiplexing for VIN query - # NOTE: this takes ~0.1s and is relied on to allow sendcan subscriber to connect in time - set_obd_multiplexing(True) - # VIN query only reliably works through OBDII - vin_rx_addr, vin_rx_bus, vin = get_vin(can_recv, can_send, (0, 1)) - ecu_rx_addrs = get_present_ecus(can_recv, can_send, set_obd_multiplexing, num_pandas=num_pandas) - car_fw = get_fw_versions_ordered(can_recv, can_send, set_obd_multiplexing, vin, ecu_rx_addrs, num_pandas=num_pandas) - cached = False - - exact_fw_match, fw_candidates = match_fw_to_car(car_fw, vin) - else: - vin_rx_addr, vin_rx_bus, vin = -1, -1, VIN_UNKNOWN - exact_fw_match, fw_candidates, car_fw = True, set(), [] - cached = False - - if not is_valid_vin(vin): - carlog.error({"event": "Malformed VIN", "vin": vin}) - vin = VIN_UNKNOWN - carlog.warning("VIN %s", vin) - - # disable OBD multiplexing for CAN fingerprinting and potential ECU knockouts - set_obd_multiplexing(False) - - fw_query_time = time.monotonic() - start_time - - # CAN fingerprint - # drain CAN socket so we get the latest messages - can_recv() - car_fingerprint, finger = can_fingerprint(can_recv) - - exact_match = True - source = CarParams.FingerprintSource.can - - # If FW query returns exactly 1 candidate, use it - if len(fw_candidates) == 1: - car_fingerprint = list(fw_candidates)[0] - source = CarParams.FingerprintSource.fw - exact_match = exact_fw_match - - if fixed_fingerprint: - car_fingerprint = fixed_fingerprint - source = CarParams.FingerprintSource.fixed - - carlog.error({"event": "fingerprinted", "car_fingerprint": str(car_fingerprint), "source": source, "fuzzy": not exact_match, - "cached": cached, "fw_count": len(car_fw), "ecu_responses": list(ecu_rx_addrs), "vin_rx_addr": vin_rx_addr, - "vin_rx_bus": vin_rx_bus, "fingerprints": repr(finger), "fw_query_time": fw_query_time}) - - return car_fingerprint, finger, vin, car_fw, source, exact_match - - -def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, alpha_long_allowed: bool, - is_release: bool, num_pandas: int = 1, cached_params: CarParamsT | None = None): - candidate, fingerprints, vin, car_fw, source, exact_match = fingerprint(can_recv, can_send, set_obd_multiplexing, num_pandas, cached_params) - - if candidate is None: - carlog.error({"event": "car doesn't match any fingerprints", "fingerprints": repr(fingerprints)}) - candidate = "MOCK" - - # Force BMW car selection if not already set - selected_car = Params().get("CarSelected3") - if not selected_car: - # Default to BMW E90 on first boot - Params().put("CarSelected3", "BMW_E90") - selected_car = b"BMW_E90" - - if selected_car: - def find_car(name: str): - from opendbc.car.hyundai.values import CAR as HYUNDAI - from opendbc.car.gm.values import CAR as GM - from opendbc.car.toyota.values import CAR as TOYOTA - from opendbc.car.mazda.values import CAR as MAZDA - try: - from openpilot.selfdrive.car.bmw.values import CAR as BMW - except ImportError: - BMW = [] - for platform in GM: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in TOYOTA: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in HYUNDAI: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in MAZDA: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in BMW: - # Check both platform name and doc names - if name == str(platform): - return platform - for doc in platform.config.car_docs: - if name == doc.name: - return platform - return None - found_car = find_car(selected_car.decode() if isinstance(selected_car, bytes) else selected_car) - if found_car is not None: - candidate = found_car - - print(f"SelectedCar = {candidate}") - Params().put("CarName", str(candidate)) - - Params().put("FingerPrints", str(fingerprints)) - CarInterface = interfaces[candidate] - CP: CarParams = CarInterface.get_params(candidate, fingerprints, car_fw, alpha_long_allowed, is_release, docs=False) - CP.carVin = vin - CP.carFw = car_fw - CP.fingerprintSource = source - CP.fuzzyFingerprint = not exact_match - - print("Carrot GitBranch = {}, {}".format(Params().get("GitBranch"), Params().get("GitCommitDate"))) - - return interfaces[CP.carFingerprint](CP) - - -def get_demo_car_params(): - platform = MOCK.MOCK - CarInterface = interfaces[platform] - CP = CarInterface.get_non_essential_params(platform) - return CP diff --git a/opendbc_repo/opendbc/car/carlog.py b/opendbc_repo/opendbc/car/carlog.py deleted file mode 100644 index 5683d2a394..0000000000 --- a/opendbc_repo/opendbc/car/carlog.py +++ /dev/null @@ -1,12 +0,0 @@ -import os -import logging - -# set up logging -LOGPRINT = os.environ.get('LOGPRINT', 'INFO').upper() -carlog = logging.getLogger('carlog') -carlog.setLevel(LOGPRINT) -carlog.propagate = False - -handler = logging.StreamHandler() -handler.setFormatter(logging.Formatter('%(message)s')) -carlog.addHandler(handler) diff --git a/opendbc_repo/opendbc/car/ccp.py b/opendbc_repo/opendbc/car/ccp.py deleted file mode 100644 index 52ba484637..0000000000 --- a/opendbc_repo/opendbc/car/ccp.py +++ /dev/null @@ -1,373 +0,0 @@ -import sys -import time -import struct -from enum import IntEnum, Enum -from dataclasses import dataclass - -@dataclass -class ExchangeStationIdsReturn: - id_length: int - data_type: int - available: int - protected: int - -@dataclass -class GetDaqListSizeReturn: - list_size: int - first_pid: int - -@dataclass -class GetSessionStatusReturn: - status: int - info: int | None - -@dataclass -class DiagnosticServiceReturn: - length: int - type: int - -@dataclass -class ActionServiceReturn: - length: int - type: int - -class COMMAND_CODE(IntEnum): - CONNECT = 0x01 - SET_MTA = 0x02 - DNLOAD = 0x03 - UPLOAD = 0x04 - TEST = 0x05 - START_STOP = 0x06 - DISCONNECT = 0x07 - START_STOP_ALL = 0x08 - GET_ACTIVE_CAL_PAGE = 0x09 - SET_S_STATUS = 0x0C - GET_S_STATUS = 0x0D - BUILD_CHKSUM = 0x0E - SHORT_UP = 0x0F - CLEAR_MEMORY = 0x10 - SELECT_CAL_PAGE = 0x11 - GET_SEED = 0x12 - UNLOCK = 0x13 - GET_DAQ_SIZE = 0x14 - SET_DAQ_PTR = 0x15 - WRITE_DAQ = 0x16 - EXCHANGE_ID = 0x17 - PROGRAM = 0x18 - MOVE = 0x19 - GET_CCP_VERSION = 0x1B - DIAG_SERVICE = 0x20 - ACTION_SERVICE = 0x21 - PROGRAM_6 = 0x22 - DNLOAD_6 = 0x23 - -COMMAND_RETURN_CODES = { - 0x00: "acknowledge / no error", - 0x01: "DAQ processor overload", - 0x10: "command processor busy", - 0x11: "DAQ processor busy", - 0x12: "internal timeout", - 0x18: "key request", - 0x19: "session status request", - 0x20: "cold start request", - 0x21: "cal. data init. request", - 0x22: "DAQ list init. request", - 0x23: "code update request", - 0x30: "unknown command", - 0x31: "command syntax", - 0x32: "parameter(s) out of range", - 0x33: "access denied", - 0x34: "overload", - 0x35: "access locked", - 0x36: "resource/function not available", -} - -class BYTE_ORDER(Enum): - LITTLE_ENDIAN = '<' - BIG_ENDIAN = '>' - -class CommandTimeoutError(Exception): - pass - -class CommandCounterError(Exception): - pass - -class CommandResponseError(Exception): - def __init__(self, message, return_code): - super().__init__() - self.message = message - self.return_code = return_code - - def __str__(self): - return self.message - -class CcpClient: - def __init__(self, panda, tx_addr: int, rx_addr: int, bus: int=0, byte_order: BYTE_ORDER=BYTE_ORDER.BIG_ENDIAN, debug=False): - self.tx_addr = tx_addr - self.rx_addr = rx_addr - self.can_bus = bus - self.byte_order = byte_order - self.debug = debug - self._panda = panda - self._command_counter = -1 - - def _send_cro(self, cmd: int, dat: bytes = b"") -> None: - self._command_counter = (self._command_counter + 1) & 0xFF - tx_data = (bytes([cmd, self._command_counter]) + dat).ljust(8, b"\x00") - if self.debug: - print(f"CAN-TX: {hex(self.tx_addr)} - 0x{bytes.hex(tx_data)}") - assert len(tx_data) == 8, "data is not 8 bytes" - self._panda.can_clear(self.can_bus) - self._panda.can_clear(0xFFFF) - self._panda.can_send(self.tx_addr, tx_data, self.can_bus) - - def _recv_dto(self, timeout: float) -> bytes: - start_time = time.time() - while time.time() - start_time < timeout: - msgs = self._panda.can_recv() or [] - if len(msgs) >= 256: - print("CAN RX buffer overflow!!!", file=sys.stderr) - for rx_addr, rx_data_bytearray, rx_bus in msgs: - if rx_bus == self.can_bus and rx_addr == self.rx_addr: - rx_data = bytes(rx_data_bytearray) - if self.debug: - print(f"CAN-RX: {hex(rx_addr)} - 0x{bytes.hex(rx_data)}") - assert len(rx_data) == 8, f"message length not 8: {len(rx_data)}" - - pid = rx_data[0] - if pid == 0xFF or pid == 0xFE: - err = rx_data[1] - err_desc = COMMAND_RETURN_CODES.get(err, "unknown error") - ctr = rx_data[2] - dat = rx_data[3:] - - if pid == 0xFF and self._command_counter != ctr: - raise CommandCounterError(f"counter invalid: {ctr} != {self._command_counter}") - - if err >= 0x10 and err <= 0x12: - if self.debug: - print(f"CCP-WAIT: {hex(err)} - {err_desc}") - start_time = time.time() - continue - - if err >= 0x30: - raise CommandResponseError(f"{hex(err)} - {err_desc}", err) - else: - dat = rx_data[1:] - - return dat - time.sleep(0.001) - - raise CommandTimeoutError("timeout waiting for response") - - # commands - def connect(self, station_addr: int) -> None: - if station_addr > 65535: - raise ValueError("station address must be less than 65536") - # NOTE: station address is always little endian - self._send_cro(COMMAND_CODE.CONNECT, struct.pack(" ExchangeStationIdsReturn: - self._send_cro(COMMAND_CODE.EXCHANGE_ID, device_id_info) - resp = self._recv_dto(0.025) - return ExchangeStationIdsReturn(id_length=resp[0], data_type=resp[1], available=resp[2], protected=resp[3]) - - def get_seed(self, resource_mask: int) -> bytes: - if resource_mask > 255: - raise ValueError("resource mask must be less than 256") - self._send_cro(COMMAND_CODE.GET_SEED, bytes([resource_mask])) - resp = self._recv_dto(0.025) - # protected = resp[0] == 0 - seed = resp[1:] - return seed - - def unlock(self, key: bytes) -> int: - if len(key) > 6: - raise ValueError("max key size is 6 bytes") - self._send_cro(COMMAND_CODE.UNLOCK, key) - resp = self._recv_dto(0.025) - status = resp[0] - return status - - def set_memory_transfer_address(self, mta_num: int, addr_ext: int, addr: int) -> None: - if mta_num > 255: - raise ValueError("MTA number must be less than 256") - if addr_ext > 255: - raise ValueError("address extension must be less than 256") - self._send_cro(COMMAND_CODE.SET_MTA, bytes([mta_num, addr_ext]) + struct.pack(f"{self.byte_order.value}I", addr)) - self._recv_dto(0.025) - - def download(self, data: bytes) -> int: - if len(data) > 5: - raise ValueError("max data size is 5 bytes") - self._send_cro(COMMAND_CODE.DNLOAD, bytes([len(data)]) + data) - resp = self._recv_dto(0.025) - # mta_addr_ext = resp[0] - mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] - return mta_addr # type: ignore - - def download_6_bytes(self, data: bytes) -> int: - if len(data) != 6: - raise ValueError("data size must be 6 bytes") - self._send_cro(COMMAND_CODE.DNLOAD_6, data) - resp = self._recv_dto(0.025) - # mta_addr_ext = resp[0] - mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] - return mta_addr # type: ignore - - def upload(self, size: int) -> bytes: - if size > 5: - raise ValueError("size must be less than 6") - self._send_cro(COMMAND_CODE.UPLOAD, bytes([size])) - return self._recv_dto(0.025)[:size] - - def short_upload(self, size: int, addr_ext: int, addr: int) -> bytes: - if size > 5: - raise ValueError("size must be less than 6") - if addr_ext > 255: - raise ValueError("address extension must be less than 256") - self._send_cro(COMMAND_CODE.SHORT_UP, bytes([size, addr_ext]) + struct.pack(f"{self.byte_order.value}I", addr)) - return self._recv_dto(0.025)[:size] - - def select_calibration_page(self) -> None: - self._send_cro(COMMAND_CODE.SELECT_CAL_PAGE) - self._recv_dto(0.025) - - def get_daq_list_size(self, list_num: int, can_id: int = 0) -> GetDaqListSizeReturn: - if list_num > 255: - raise ValueError("list number must be less than 256") - self._send_cro(COMMAND_CODE.GET_DAQ_SIZE, bytes([list_num, 0]) + struct.pack(f"{self.byte_order.value}I", can_id)) - resp = self._recv_dto(0.025) - return GetDaqListSizeReturn(list_size=resp[0], first_pid=resp[1]) - - def set_daq_list_pointer(self, list_num: int, odt_num: int, element_num: int) -> None: - if list_num > 255: - raise ValueError("list number must be less than 256") - if odt_num > 255: - raise ValueError("ODT number must be less than 256") - if element_num > 255: - raise ValueError("element number must be less than 256") - self._send_cro(COMMAND_CODE.SET_DAQ_PTR, bytes([list_num, odt_num, element_num])) - self._recv_dto(0.025) - - def write_daq_list_entry(self, size: int, addr_ext: int, addr: int) -> None: - if size > 255: - raise ValueError("size must be less than 256") - if addr_ext > 255: - raise ValueError("address extension must be less than 256") - self._send_cro(COMMAND_CODE.WRITE_DAQ, bytes([size, addr_ext]) + struct.pack(f"{self.byte_order.value}I", addr)) - self._recv_dto(0.025) - - def start_stop_transmission(self, mode: int, list_num: int, odt_num: int, channel_num: int, rate_prescaler: int = 0) -> None: - if mode > 255: - raise ValueError("mode must be less than 256") - if list_num > 255: - raise ValueError("list number must be less than 256") - if odt_num > 255: - raise ValueError("ODT number must be less than 256") - if channel_num > 255: - raise ValueError("channel number must be less than 256") - if rate_prescaler > 65535: - raise ValueError("rate prescaler must be less than 65536") - self._send_cro(COMMAND_CODE.START_STOP, bytes([mode, list_num, odt_num, channel_num]) + struct.pack(f"{self.byte_order.value}H", rate_prescaler)) - self._recv_dto(0.025) - - def disconnect(self, station_addr: int, temporary: bool = False) -> None: - if station_addr > 65535: - raise ValueError("station address must be less than 65536") - # NOTE: station address is always little endian - self._send_cro(COMMAND_CODE.DISCONNECT, bytes([int(not temporary), 0x00]) + struct.pack(" None: - if status > 255: - raise ValueError("status must be less than 256") - self._send_cro(COMMAND_CODE.SET_S_STATUS, bytes([status])) - self._recv_dto(0.025) - - def get_session_status(self) -> GetSessionStatusReturn: - self._send_cro(COMMAND_CODE.GET_S_STATUS) - resp = self._recv_dto(0.025) - info = resp[2] if resp[1] else None - return GetSessionStatusReturn(status=resp[0], info=info) - - def build_checksum(self, size: int) -> bytes: - self._send_cro(COMMAND_CODE.BUILD_CHKSUM, struct.pack(f"{self.byte_order.value}I", size)) - resp = self._recv_dto(30.0) - chksum_size = resp[0] - assert chksum_size <= 4, "checksum more than 4 bytes" - chksum = resp[1:1+chksum_size] - return chksum - - def clear_memory(self, size: int) -> None: - self._send_cro(COMMAND_CODE.CLEAR_MEMORY, struct.pack(f"{self.byte_order.value}I", size)) - self._recv_dto(30.0) - - def program(self, size: int, data: bytes) -> int: - if size > 5: - raise ValueError("size must be less than 6") - if len(data) > 5: - raise ValueError("max data size is 5 bytes") - self._send_cro(COMMAND_CODE.PROGRAM, bytes([size]) + data) - resp = self._recv_dto(0.1) - # mta_addr_ext = resp[0] - mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] - return mta_addr # type: ignore - - def program_6_bytes(self, data: bytes) -> int: - if len(data) != 6: - raise ValueError("data size must be 6 bytes") - self._send_cro(COMMAND_CODE.PROGRAM_6, data) - resp = self._recv_dto(0.1) - # mta_addr_ext = resp[0] - mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] - return mta_addr # type: ignore - - def move_memory_block(self, size: int) -> None: - self._send_cro(COMMAND_CODE.MOVE, struct.pack(f"{self.byte_order.value}I", size)) - self._recv_dto(0.025) - - def diagnostic_service(self, service_num: int, data: bytes = b"") -> DiagnosticServiceReturn: - if service_num > 65535: - raise ValueError("service number must be less than 65536") - if len(data) > 4: - raise ValueError("max data size is 4 bytes") - self._send_cro(COMMAND_CODE.DIAG_SERVICE, struct.pack(f"{self.byte_order.value}H", service_num) + data) - resp = self._recv_dto(0.025) - return DiagnosticServiceReturn(length=resp[0], type=resp[1]) - - def action_service(self, service_num: int, data: bytes = b"") -> ActionServiceReturn: - if service_num > 65535: - raise ValueError("service number must be less than 65536") - if len(data) > 4: - raise ValueError("max data size is 4 bytes") - self._send_cro(COMMAND_CODE.ACTION_SERVICE, struct.pack(f"{self.byte_order.value}H", service_num) + data) - resp = self._recv_dto(0.025) - return ActionServiceReturn(length=resp[0], type=resp[1]) - - def test_availability(self, station_addr: int) -> None: - if station_addr > 65535: - raise ValueError("station address must be less than 65536") - # NOTE: station address is always little endian - self._send_cro(COMMAND_CODE.TEST, struct.pack(" None: - if mode > 255: - raise ValueError("mode must be less than 256") - self._send_cro(COMMAND_CODE.START_STOP_ALL, bytes([mode])) - self._recv_dto(0.025) - - def get_active_calibration_page(self): - self._send_cro(COMMAND_CODE.GET_ACTIVE_CAL_PAGE) - resp = self._recv_dto(0.025) - # cal_addr_ext = resp[0] - cal_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] - return cal_addr - - def get_version(self, desired_version: float = 2.1) -> float: - major, minor = map(int, str(desired_version).split(".")) - self._send_cro(COMMAND_CODE.GET_CCP_VERSION, bytes([major, minor])) - resp = self._recv_dto(0.025) - return float(f"{resp[0]}.{resp[1]}") diff --git a/opendbc_repo/opendbc/car/chrysler/__init__.py b/opendbc_repo/opendbc/car/chrysler/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/chrysler/carcontroller.py b/opendbc_repo/opendbc/car/chrysler/carcontroller.py deleted file mode 100644 index a11018fc71..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/carcontroller.py +++ /dev/null @@ -1,83 +0,0 @@ -from opendbc.can import CANPacker -from opendbc.car import Bus, DT_CTRL, apply_meas_steer_torque_limits -from opendbc.car.chrysler import chryslercan -from opendbc.car.chrysler.values import RAM_CARS, CarControllerParams, ChryslerFlags -from opendbc.car.interfaces import CarControllerBase - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.apply_torque_last = 0 - - self.hud_count = 0 - self.last_lkas_falling_edge = 0 - self.lkas_control_bit_prev = False - self.last_button_frame = 0 - - self.packer = CANPacker(dbc_names[Bus.pt]) - self.params = CarControllerParams(CP) - - def update(self, CC, CS, now_nanos): - can_sends = [] - - lkas_active = CC.latActive and self.lkas_control_bit_prev - - # cruise buttons - if (self.frame - self.last_button_frame) * DT_CTRL > 0.05: - das_bus = 2 if self.CP.carFingerprint in RAM_CARS else 0 - - # ACC cancellation - if CC.cruiseControl.cancel: - self.last_button_frame = self.frame - can_sends.append(chryslercan.create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, cancel=True)) - - # ACC resume from standstill - elif CC.cruiseControl.resume: - self.last_button_frame = self.frame - can_sends.append(chryslercan.create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, resume=True)) - - # HUD alerts - if self.frame % 25 == 0: - if CS.lkas_car_model != -1: - can_sends.append(chryslercan.create_lkas_hud(self.packer, self.CP, lkas_active, CC.hudControl.visualAlert, - self.hud_count, CS.lkas_car_model, CS.auto_high_beam)) - self.hud_count += 1 - - # steering - if self.frame % self.params.STEER_STEP == 0: - - # TODO: can we make this more sane? why is it different for all the cars? - lkas_control_bit = self.lkas_control_bit_prev - if CS.out.vEgo > self.CP.minSteerSpeed: - lkas_control_bit = True - elif self.CP.flags & ChryslerFlags.HIGHER_MIN_STEERING_SPEED: - if CS.out.vEgo < (self.CP.minSteerSpeed - 3.0): - lkas_control_bit = False - elif self.CP.carFingerprint in RAM_CARS: - if CS.out.vEgo < (self.CP.minSteerSpeed - 0.5): - lkas_control_bit = False - - # EPS faults if LKAS re-enables too quickly - lkas_control_bit = lkas_control_bit and (self.frame - self.last_lkas_falling_edge > 200) - - if not lkas_control_bit and self.lkas_control_bit_prev: - self.last_lkas_falling_edge = self.frame - self.lkas_control_bit_prev = lkas_control_bit - - # steer torque - new_torque = int(round(CC.actuators.torque * self.params.STEER_MAX)) - apply_torque = apply_meas_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorqueEps, self.params) - if not lkas_active or not lkas_control_bit: - apply_torque = 0 - self.apply_torque_last = apply_torque - - can_sends.append(chryslercan.create_lkas_command(self.packer, self.CP, int(apply_torque), lkas_control_bit)) - - self.frame += 1 - - new_actuators = CC.actuators.as_builder() - new_actuators.torque = self.apply_torque_last / self.params.STEER_MAX - new_actuators.torqueOutputCan = self.apply_torque_last - - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/chrysler/carstate.py b/opendbc_repo/opendbc/car/chrysler/carstate.py deleted file mode 100644 index 51a0822428..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/carstate.py +++ /dev/null @@ -1,115 +0,0 @@ -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, create_button_events, structs -from opendbc.car.chrysler.values import DBC, STEER_THRESHOLD, RAM_CARS -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarStateBase - -ButtonType = structs.CarState.ButtonEvent.Type - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - self.CP = CP - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - - self.auto_high_beam = 0 - self.button_counter = 0 - self.lkas_car_model = -1 - - if CP.carFingerprint in RAM_CARS: - self.shifter_values = can_define.dv["Transmission_Status"]["Gear_State"] - else: - self.shifter_values = can_define.dv["GEAR"]["PRNDL"] - - self.distance_button = 0 - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - - ret = structs.CarState() - - prev_distance_button = self.distance_button - self.distance_button = cp.vl["CRUISE_BUTTONS"]["ACC_Distance_Dec"] - - # lock info - ret.doorOpen = any([cp.vl["BCM_1"]["DOOR_OPEN_FL"], - cp.vl["BCM_1"]["DOOR_OPEN_FR"], - cp.vl["BCM_1"]["DOOR_OPEN_RL"], - cp.vl["BCM_1"]["DOOR_OPEN_RR"]]) - ret.seatbeltUnlatched = cp.vl["ORC_1"]["SEATBELT_DRIVER_UNLATCHED"] == 1 - - # brake pedal - ret.brake = 0 - ret.brakePressed = cp.vl["ESP_1"]['Brake_Pedal_State'] == 1 # Physical brake pedal switch - - # gas pedal - ret.gas = cp.vl["ECM_5"]["Accelerator_Position"] - ret.gasPressed = ret.gas > 1e-5 - - # car speed - if self.CP.carFingerprint in RAM_CARS: - ret.vEgoRaw = cp.vl["ESP_8"]["Vehicle_Speed"] * CV.KPH_TO_MS - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(cp.vl["Transmission_Status"]["Gear_State"], None)) - else: - ret.vEgoRaw = (cp.vl["SPEED_1"]["SPEED_LEFT"] + cp.vl["SPEED_1"]["SPEED_RIGHT"]) / 2. - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(cp.vl["GEAR"]["PRNDL"], None)) - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = not ret.vEgoRaw > 0.001 - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["ESP_6"]["WHEEL_SPEED_FL"], - cp.vl["ESP_6"]["WHEEL_SPEED_FR"], - cp.vl["ESP_6"]["WHEEL_SPEED_RL"], - cp.vl["ESP_6"]["WHEEL_SPEED_RR"], - unit=1, - ) - - # button presses - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_stalk(200, cp.vl["STEERING_LEVERS"]["TURN_SIGNALS"] == 1, - cp.vl["STEERING_LEVERS"]["TURN_SIGNALS"] == 2) - ret.genericToggle = cp.vl["STEERING_LEVERS"]["HIGH_BEAM_PRESSED"] == 1 - - # steering wheel - ret.steeringAngleDeg = cp.vl["STEERING"]["STEERING_ANGLE"] + cp.vl["STEERING"]["STEERING_ANGLE_HP"] - ret.steeringRateDeg = cp.vl["STEERING"]["STEERING_RATE"] - ret.steeringTorque = cp.vl["EPS_2"]["COLUMN_TORQUE"] - ret.steeringTorqueEps = cp.vl["EPS_2"]["EPS_TORQUE_MOTOR"] - ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD - - # cruise state - cp_cruise = cp_cam if self.CP.carFingerprint in RAM_CARS else cp - - ret.cruiseState.available = cp_cruise.vl["DAS_3"]["ACC_AVAILABLE"] == 1 - ret.cruiseState.enabled = cp_cruise.vl["DAS_3"]["ACC_ACTIVE"] == 1 - ret.cruiseState.speed = cp_cruise.vl["DAS_4"]["ACC_SET_SPEED_KPH"] * CV.KPH_TO_MS - ret.cruiseState.nonAdaptive = cp_cruise.vl["DAS_4"]["ACC_STATE"] in (1, 2) # 1 NormalCCOn and 2 NormalCCSet - ret.cruiseState.standstill = cp_cruise.vl["DAS_3"]["ACC_STANDSTILL"] == 1 - ret.accFaulted = cp_cruise.vl["DAS_3"]["ACC_FAULTED"] != 0 - - if self.CP.carFingerprint in RAM_CARS: - # Auto High Beam isn't Located in this message on chrysler or jeep currently located in 729 message - self.auto_high_beam = cp_cam.vl["DAS_6"]['AUTO_HIGH_BEAM_ON'] - ret.steerFaultTemporary = cp.vl["EPS_3"]["DASM_FAULT"] == 1 - else: - ret.steerFaultTemporary = cp.vl["EPS_2"]["LKAS_TEMPORARY_FAULT"] == 1 - ret.steerFaultPermanent = cp.vl["EPS_2"]["LKAS_STATE"] == 4 - - # blindspot sensors - if self.CP.enableBsm: - ret.leftBlindspot = cp.vl["BSM_1"]["LEFT_STATUS"] == 1 - ret.rightBlindspot = cp.vl["BSM_1"]["RIGHT_STATUS"] == 1 - - self.lkas_car_model = cp_cam.vl["DAS_6"]["CAR_MODEL"] - self.button_counter = cp.vl["CRUISE_BUTTONS"]["COUNTER"] - - ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) - - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - } diff --git a/opendbc_repo/opendbc/car/chrysler/chryslercan.py b/opendbc_repo/opendbc/car/chrysler/chryslercan.py deleted file mode 100644 index 76d05d6240..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/chryslercan.py +++ /dev/null @@ -1,112 +0,0 @@ -from opendbc.car import structs -from opendbc.car.crc import CRC8J1850 -from opendbc.car.chrysler.values import RAM_CARS - -GearShifter = structs.CarState.GearShifter -VisualAlert = structs.CarControl.HUDControl.VisualAlert - -def create_lkas_hud(packer, CP, lkas_active, hud_alert, hud_count, car_model, auto_high_beam): - # LKAS_HUD - Controls what lane-keeping icon is displayed - - # == Color == - # 0 hidden? - # 1 white - # 2 green - # 3 ldw - - # == Lines == - # 03 white Lines - # 04 grey lines - # 09 left lane close - # 0A right lane close - # 0B left Lane very close - # 0C right Lane very close - # 0D left cross cross - # 0E right lane cross - - # == Alerts == - # 7 Normal - # 6 lane departure place hands on wheel - - color = 2 if lkas_active else 1 - lines = 3 if lkas_active else 0 - alerts = 7 if lkas_active else 0 - - if hud_count < (1 * 4): # first 3 seconds, 4Hz - alerts = 1 - - if hud_alert in (VisualAlert.ldw, VisualAlert.steerRequired): - color = 4 - lines = 0 - alerts = 6 - - values = { - "LKAS_ICON_COLOR": color, - "CAR_MODEL": car_model, - "LKAS_LANE_LINES": lines, - "LKAS_ALERTS": alerts, - } - - if CP.carFingerprint in RAM_CARS: - values['AUTO_HIGH_BEAM_ON'] = auto_high_beam - - return packer.make_can_msg("DAS_6", 0, values) - - -def create_lkas_command(packer, CP, apply_torque, lkas_control_bit): - # LKAS_COMMAND Lane-keeping signal to turn the wheel - enabled_val = 2 if CP.carFingerprint in RAM_CARS else 1 - values = { - "STEERING_TORQUE": apply_torque, - "LKAS_CONTROL_BIT": enabled_val if lkas_control_bit else 0, - } - return packer.make_can_msg("LKAS_COMMAND", 0, values) - - -def create_cruise_buttons(packer, frame, bus, cancel=False, resume=False): - values = { - "ACC_Cancel": cancel, - "ACC_Resume": resume, - "COUNTER": frame % 0x10, - } - return packer.make_can_msg("CRUISE_BUTTONS", bus, values) - - -def chrysler_checksum(address: int, sig, d: bytearray) -> int: - checksum = 0xFF - for j in range(len(d) - 1): - curr = d[j] - shift = 0x80 - for _ in range(8): - bit_sum = curr & shift - temp_chk = checksum & 0x80 - if bit_sum: - bit_sum = 0x1C - if temp_chk: - bit_sum = 1 - checksum = (checksum << 1) & 0xFF - temp_chk = checksum | 1 - bit_sum ^= temp_chk - else: - if temp_chk: - bit_sum = 0x1D - checksum = (checksum << 1) & 0xFF - bit_sum ^= checksum - checksum = bit_sum & 0xFF - shift >>= 1 - return (~checksum) & 0xFF - - -def fca_giorgio_checksum(address: int, sig, d: bytearray) -> int: - crc = 0 - for i in range(len(d) - 1): - crc ^= d[i] - crc = CRC8J1850[crc] - if address == 0xDE: - return crc ^ 0x10 - elif address == 0x106: - return crc ^ 0xF6 - elif address == 0x122: - return crc ^ 0xF1 - else: - return crc ^ 0x0A diff --git a/opendbc_repo/opendbc/car/chrysler/fingerprints.py b/opendbc_repo/opendbc/car/chrysler/fingerprints.py deleted file mode 100644 index 7cd90dcb13..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/fingerprints.py +++ /dev/null @@ -1,783 +0,0 @@ -""" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.""" -from opendbc.car.structs import CarParams -from opendbc.car.chrysler.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.CHRYSLER_PACIFICA_2018: { - (Ecu.combinationMeter, 0x742, None): [ - b'68227902AF', - b'68227902AG', - b'68227902AH', - b'68227905AG', - b'68360252AC', - ], - (Ecu.srs, 0x744, None): [ - b'68211617AF', - b'68211617AG', - b'68358974AC', - b'68405937AA', - ], - (Ecu.abs, 0x747, None): [ - b'68222747AG', - b'68330876AA', - b'68330876AB', - b'68352227AA', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672758AA', - b'04672758AB', - b'68226356AF', - b'68226356AH', - b'68226356AI', - ], - (Ecu.eps, 0x75a, None): [ - b'68288891AE', - b'68378884AA', - b'68525338AA', - b'68525338AB', - ], - (Ecu.engine, 0x7e0, None): [ - b'68267018AO ', - b'68267020AJ ', - b'68303534AG ', - b'68303534AJ ', - b'68340762AD ', - b'68340764AD ', - b'68352652AE ', - b'68352654AE ', - b'68366851AH ', - b'68366853AE ', - b'68366853AG ', - b'68372861AF ', - ], - (Ecu.transmission, 0x7e1, None): [ - b'68277370AJ', - b'68277370AM', - b'68277372AD', - b'68277372AE', - b'68277372AN', - b'68277374AA', - b'68277374AB', - b'68277374AD', - b'68277374AN', - b'68367471AC', - b'68367471AD', - b'68380571AB', - ], - }, - CAR.CHRYSLER_PACIFICA_2020: { - (Ecu.combinationMeter, 0x742, None): [ - b'68405327AC', - b'68436233AB', - b'68436233AC', - b'68436234AB', - b'68436250AE', - b'68529067AA', - b'68594993AB', - b'68594994AB', - ], - (Ecu.srs, 0x744, None): [ - b'68405565AB', - b'68405565AC', - b'68444299AC', - b'68480707AC', - b'68480708AC', - b'68526663AB', - ], - (Ecu.abs, 0x747, None): [ - b'68397394AA', - b'68433480AB', - b'68453575AF', - b'68577676AA', - b'68593395AA', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672758AA', - b'04672758AB', - b'68417813AF', - b'68540436AA', - b'68540436AB', - b'68540436AC', - b'68540436AD', - b'68598670AB', - b'68598670AC', - ], - (Ecu.eps, 0x75a, None): [ - b'68416742AA', - b'68460393AA', - b'68460393AB', - b'68494461AB', - b'68494461AC', - b'68524936AA', - b'68524936AB', - b'68525338AB', - b'68594337AB', - b'68594340AB', - ], - (Ecu.engine, 0x7e0, None): [ - b'68413871AD ', - b'68413871AE ', - b'68413871AH ', - b'68413871AI ', - b'68413871AJ ', - b'68413873AH ', - b'68413873AI ', - b'68443120AE ', - b'68443123AC ', - b'68443125AC ', - b'68496647AI ', - b'68496647AJ ', - b'68496650AH ', - b'68496650AI ', - b'68496650AL ', - b'68496652AH ', - b'68526752AD ', - b'68526752AE ', - b'68526754AD ', - b'68526754AE ', - b'68536264AE ', - b'68700304AB ', - b'68700306AB ', - ], - (Ecu.transmission, 0x7e1, None): [ - b'68414271AC', - b'68414271AD', - b'68414275AC', - b'68414275AD', - b'68443154AB', - b'68443154AC', - b'68443155AC', - b'68443158AB', - b'68501050AD', - b'68501051AD', - b'68501055AD', - b'68527221AB', - b'68527223AB', - b'68586231AD', - b'68586233AD', - ], - }, - CAR.CHRYSLER_PACIFICA_2018_HYBRID: { - (Ecu.combinationMeter, 0x742, None): [ - b'68239262AH', - b'68239262AI', - b'68239262AJ', - b'68239263AH', - b'68239263AJ', - b'68358439AE', - b'68358439AG', - ], - (Ecu.srs, 0x744, None): [ - b'68238840AH', - b'68358990AC', - b'68405939AA', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672758AA', - b'68226356AI', - ], - (Ecu.eps, 0x75a, None): [ - b'68288309AC', - b'68288309AD', - b'68525339AA', - ], - (Ecu.engine, 0x7e0, None): [ - b'68277480AV ', - b'68277480AX ', - b'68277480AZ ', - b'68366580AI ', - b'68366580AK ', - b'68366580AM ', - ], - (Ecu.hybrid, 0x7e2, None): [ - b'05190175BF', - b'05190175BH', - b'05190226AI', - b'05190226AK', - b'05190226AM', - ], - }, - CAR.CHRYSLER_PACIFICA_2019_HYBRID: { - (Ecu.combinationMeter, 0x742, None): [ - b'68405292AC', - b'68434956AC', - b'68434956AD', - b'68434960AE', - b'68434960AF', - b'68529064AB', - b'68594990AB', - b'68594990AD', - b'68594990AE', - b'68594991AB', - ], - (Ecu.srs, 0x744, None): [ - b'68405567AB', - b'68405567AC', - b'68453076AD', - b'68480710AC', - b'68526665AB', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672758AB', - b'68417813AF', - b'68540436AA', - b'68540436AB', - b'68540436AC', - b'68540436AD', - b'68598670AB', - b'68598670AC', - b'68645752AA', - ], - (Ecu.eps, 0x75a, None): [ - b'68416741AA', - b'68460392AA', - b'68525339AA', - b'68525339AB', - b'68594341AB', - b'68594341AC', - ], - (Ecu.engine, 0x7e0, None): [ - b'05190392AB ', - b'68416680AD ', - b'68416680AE ', - b'68416680AF ', - b'68416680AG ', - b'68444228AC ', - b'68444228AD ', - b'68444228AE ', - b'68444228AF ', - b'68499122AD ', - b'68499122AE ', - b'68499122AF ', - b'68526772AD ', - b'68526772AH ', - b'68599493AC ', - b'68657433AA ', - b'68700317AC ', - ], - (Ecu.hybrid, 0x7e2, None): [ - b'05185116AF', - b'05185116AJ', - b'05185116AK', - b'05185116AL', - b'05190240AP', - b'05190240AQ', - b'05190240AR', - b'05190265AG', - b'05190265AH', - b'05190289AE', - b'68540977AH', - b'68540977AK', - b'68540977AL', - b'68597647AE', - b'68597647AF', - b'68632416AB', - b'68632416AC', - b'68676877AB', - ], - }, - CAR.JEEP_GRAND_CHEROKEE: { - (Ecu.combinationMeter, 0x742, None): [ - b'68243549AG', - b'68302211AC', - b'68302212AD', - b'68302214AC', - b'68302223AC', - b'68302246AC', - b'68331511AC', - b'68331574AC', - b'68331687AC', - b'68331690AC', - b'68340272AD', - ], - (Ecu.srs, 0x744, None): [ - b'68309533AA', - b'68316742AB', - b'68355363AB', - ], - (Ecu.abs, 0x747, None): [ - b'68252642AG', - b'68306178AD', - b'68336275AB', - b'68336276AB', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672627AB', - b'68251506AF', - b'68332015AB', - ], - (Ecu.eps, 0x75a, None): [ - b'68276201AG', - b'68321644AB', - b'68321644AC', - b'68321646AC', - b'68321648AC', - b'68321650AC', - ], - (Ecu.engine, 0x7e0, None): [ - b'05035920AE ', - b'68252272AG ', - b'68284455AI ', - b'68284456AI ', - b'68284456AJ ', - b'68284477AF ', - b'68325564AH ', - b'68325564AI ', - b'68325565AH ', - b'68325565AI ', - b'68325565AJ ', - b'68325618AD ', - ], - (Ecu.transmission, 0x7e1, None): [ - b'05035517AH', - b'68253222AF', - b'68311218AC', - b'68311218AD', - b'68311223AF', - b'68311223AG', - b'68361911AE', - b'68361911AF', - b'68361911AH', - b'68361914AE', - b'68361916AD', - ], - }, - CAR.JEEP_GRAND_CHEROKEE_2019: { - (Ecu.combinationMeter, 0x742, None): [ - b'68402703AB', - b'68402704AB', - b'68402707AB', - b'68402708AB', - b'68402714AB', - b'68402971AD', - b'68454144AD', - b'68454145AB', - b'68454152AB', - b'68454156AB', - b'68516650AB', - b'68516651AB', - b'68516669AB', - b'68516671AB', - b'68516683AB', - ], - (Ecu.srs, 0x744, None): [ - b'68355363AB', - b'68355364AB', - ], - (Ecu.abs, 0x747, None): [ - b'68408639AC', - b'68408639AD', - b'68499978AB', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672788AA', - b'68456722AC', - ], - (Ecu.eps, 0x75a, None): [ - b'68417279AA', - b'68417280AA', - b'68417281AA', - b'68453431AA', - b'68453433AA', - b'68453435AA', - b'68499171AA', - b'68499171AB', - b'68501183AA', - b'68501186AA', - ], - (Ecu.engine, 0x7e0, None): [ - b'05035674AB ', - b'68412635AE ', - b'68412635AG ', - b'68412660AD ', - b'68412660AF ', - b'68422860AB', - b'68449435AE ', - b'68496223AA ', - b'68504959AD ', - b'68504959AE ', - b'68504960AD ', - b'68504993AC ', - ], - (Ecu.transmission, 0x7e1, None): [ - b'05035707AA', - b'68419672AC', - b'68419678AB', - b'68423905AB', - b'68449258AC', - b'68495807AA', - b'68495807AB', - b'68503641AC', - b'68503644AC', - b'68503664AC', - ], - }, - CAR.RAM_1500_5TH_GEN: { - (Ecu.combinationMeter, 0x742, None): [ - b'68294051AG', - b'68294051AI', - b'68294052AG', - b'68294052AH', - b'68294059AI', - b'68294063AG', - b'68294063AH', - b'68294063AI', - b'68434846AC', - b'68434847AC', - b'68434849AC', - b'68434850AC', - b'68434855AC', - b'68434856AC', - b'68434858AC', - b'68434859AC', - b'68434860AC', - b'68453471AD', - b'68453483AC', - b'68453483AD', - b'68453487AD', - b'68453491AC', - b'68453491AD', - b'68453499AD', - b'68453502AC', - b'68453503AC', - b'68453503AD', - b'68453505AC', - b'68453505AD', - b'68453511AC', - b'68453513AC', - b'68453513AD', - b'68453514AD', - b'68505633AB', - b'68510277AG', - b'68510277AH', - b'68510280AG', - b'68510280AH', - b'68510282AG', - b'68510282AH', - b'68510283AG', - b'68527346AE', - b'68527361AD', - b'68527375AD', - b'68527381AD', - b'68527381AE', - b'68527382AE', - b'68527383AD', - b'68527383AE', - b'68527387AE', - b'68527397AD', - b'68527403AC', - b'68527403AD', - b'68527404AD', - b'68546047AF', - b'68631938AA', - b'68631939AA', - b'68631940AA', - b'68631940AB', - b'68631941AB', - b'68631942AA', - b'68631943AB', - ], - (Ecu.srs, 0x744, None): [ - b'68428609AB', - b'68441329AA', - b'68441329AB', - b'68473844AB', - b'68490898AA', - b'68500728AA', - b'68615033AA', - b'68615034AA', - ], - (Ecu.abs, 0x747, None): [ - b'68292406AG', - b'68292406AH', - b'68432418AB', - b'68432418AC', - b'68432418AD', - b'68436004AD', - b'68436004AE', - b'68438454AC', - b'68438454AD', - b'68438456AE', - b'68438456AF', - b'68535469AB', - b'68535470AC', - b'68548900AB', - b'68548900AC', - b'68586307AB', - b'68586307AC', - b'68728724AA', - b'68728727AA', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672892AB', - b'04672932AB', - b'04672932AC', - b'22DTRHD_AA', - b'68320950AH', - b'68320950AI', - b'68320950AJ', - b'68320950AL', - b'68320950AM', - b'68454268AB', - b'68454268AC', - b'68475160AE', - b'68475160AF', - b'68475160AG', - ], - (Ecu.eps, 0x75a, None): [ - b'21590101AA', - b'21590101AB', - b'22490101AB', - b'68273275AF', - b'68273275AG', - b'68273275AH', - b'68312176AE', - b'68312176AF', - b'68312176AG', - b'68440789AC', - b'68466110AA', - b'68466110AB', - b'68466113AA', - b'68466116AA', - b'68469901AA', - b'68469904AA', - b'68469907AA', - b'68522583AA', - b'68522583AB', - b'68522584AA', - b'68522585AB', - b'68552788AA', - b'68552789AA', - b'68552790AA', - b'68552791AB', - b'68552794AA', - b'68552794AD', - b'68585106AB', - b'68585107AB', - b'68585108AB', - b'68585109AB', - b'68585112AB', - ], - (Ecu.engine, 0x7e0, None): [ - b'05035699AG ', - b'05035841AC ', - b'05035841AD ', - b'05036026AB ', - b'05036030AC ', - b'05036065AE ', - b'05036066AE ', - b'05036067AE ', - b'05036193AA ', - b'05149368AA ', - b'05149374AA ', - b'05149591AD ', - b'05149591AE ', - b'05149592AE ', - b'05149599AE ', - b'05149600AD ', - b'05149600AE ', - b'05149605AE ', - b'05149846AA ', - b'05149848AA ', - b'05149848AC ', - b'05190341AD', - b'05190346AD', - b'68378695AI ', - b'68378695AJ ', - b'68378695AK ', - b'68378696AJ ', - b'68378696AK ', - b'68378701AI ', - b'68378702AI ', - b'68378710AL ', - b'68378742AI ', - b'68378742AK ', - b'68378743AI ', - b'68378743AM ', - b'68378748AL ', - b'68378758AM ', - b'68378759AM ', - b'68448163AJ', - b'68448163AK', - b'68448163AL', - b'68448165AG', - b'68448165AK', - b'68455111AC ', - b'68455119AC ', - b'68455137AC ', - b'68455142AC ', - b'68455142AE ', - b'68455145AC ', - b'68455145AE ', - b'68455146AC ', - b'68460927AA ', - b'68467909AB ', - b'68467909AC ', - b'68467915AC ', - b'68467916AC ', - b'68467936AC ', - b'68500630AD', - b'68500630AE', - b'68500630AF', - b'68500631AE', - b'68502719AC ', - b'68502722AC ', - b'68502733AC ', - b'68502734AF ', - b'68502737AF ', - b'68502740AF ', - b'68502741AF ', - b'68502742AC ', - b'68502742AF ', - b'68539650AD', - b'68539650AF', - b'68539651AD', - b'68586101AA ', - b'68586102AA ', - b'68586105AB ', - b'68629917AC ', - b'68629919AC ', - b'68629919AD ', - b'68629922AC ', - b'68629925AC ', - b'68629926AC ', - ], - (Ecu.transmission, 0x7e1, None): [ - b'05035706AD', - b'05035842AB', - b'05036069AA', - b'05036181AA', - b'05149536AC', - b'05149537AC', - b'05149543AC', - b'68360078AL', - b'68360080AL', - b'68360080AM', - b'68360081AM', - b'68360081AN', - b'68360085AH', - b'68360085AJ', - b'68360085AK', - b'68360085AL', - b'68360085AO', - b'68360086AH', - b'68360086AK', - b'68360086AN', - b'68384328AD', - b'68384332AD', - b'68445531AC', - b'68445532AB', - b'68445533AB', - b'68445536AB', - b'68445537AB', - b'68466081AB', - b'68466086AB', - b'68466087AB', - b'68484466AC', - b'68484467AC', - b'68484471AC', - b'68502994AC', - b'68502994AD', - b'68502996AD', - b'68520867AE', - b'68520867AF', - b'68520870AC', - b'68520871AC', - b'68528325AE', - b'68540431AB', - b'68540433AB', - b'68551676AA', - b'68629935AB', - b'68629936AC', - ], - }, - CAR.RAM_HD_5TH_GEN: { - (Ecu.combinationMeter, 0x742, None): [ - b'68361606AH', - b'68437735AC', - b'68492693AD', - b'68525485AB', - b'68525487AB', - b'68525498AB', - b'68528791AF', - b'68628474AB', - ], - (Ecu.srs, 0x744, None): [ - b'68399794AC', - b'68428503AA', - b'68428505AA', - b'68428507AA', - ], - (Ecu.abs, 0x747, None): [ - b'68334977AH', - b'68455481AC', - b'68504022AA', - b'68504022AB', - b'68504022AC', - b'68530686AB', - b'68530686AC', - b'68544596AC', - b'68641704AA', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'04672895AB', - b'04672934AB', - b'56029827AG', - b'56029827AH', - b'68462657AE', - b'68484694AD', - b'68484694AE', - b'68615489AB', - ], - (Ecu.eps, 0x761, None): [ - b'68421036AC', - b'68507906AB', - b'68534023AC', - ], - (Ecu.engine, 0x7e0, None): [ - b'52370131AF', - b'52370231AF', - b'52370231AG', - b'52370491AA', - b'52370931CT', - b'52401032AE', - b'52421132AF', - b'52421332AF', - b'68527616AD ', - b'M2370131MB', - b'M2421132MB', - ], - }, - CAR.DODGE_DURANGO: { - (Ecu.combinationMeter, 0x742, None): [ - b'68454261AD', - b'68471535AE', - ], - (Ecu.srs, 0x744, None): [ - b'68355362AB', - b'68492238AD', - ], - (Ecu.abs, 0x747, None): [ - b'68408639AD', - b'68499978AB', - ], - (Ecu.fwdRadar, 0x753, None): [ - b'68440581AE', - b'68456722AC', - ], - (Ecu.eps, 0x75a, None): [ - b'68453435AA', - b'68498477AA', - ], - (Ecu.engine, 0x7e0, None): [ - b'05035786AE ', - b'68449476AE ', - ], - (Ecu.transmission, 0x7e1, None): [ - b'05035826AC', - b'68449265AC', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/chrysler/interface.py b/opendbc_repo/opendbc/car/chrysler/interface.py deleted file mode 100755 index 23ece3befd..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/interface.py +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.car import get_safety_config, structs -from opendbc.car.chrysler.carcontroller import CarController -from opendbc.car.chrysler.carstate import CarState -from opendbc.car.chrysler.radar_interface import RadarInterface -from opendbc.car.chrysler.values import CAR, RAM_HD, RAM_DT, RAM_CARS, ChryslerFlags, ChryslerSafetyFlags -from opendbc.car.interfaces import CarInterfaceBase - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "chrysler" - ret.dashcamOnly = candidate in RAM_HD - - # radar parsing needs some work, see https://github.com/commaai/openpilot/issues/26842 - ret.radarUnavailable = True # Bus.radar not in DBC[candidate][Bus.radar] - ret.steerActuatorDelay = 0.1 - ret.steerLimitTimer = 0.4 - - # safety config - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.chrysler)] - if candidate in RAM_HD: - ret.safetyConfigs[0].safetyParam |= ChryslerSafetyFlags.RAM_HD.value - elif candidate in RAM_DT: - ret.safetyConfigs[0].safetyParam |= ChryslerSafetyFlags.RAM_DT.value - - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - if candidate not in RAM_CARS: - # Newer FW versions standard on the following platforms, or flashed by a dealer onto older platforms have a higher minimum steering speed. - new_eps_platform = candidate in (CAR.CHRYSLER_PACIFICA_2019_HYBRID, CAR.CHRYSLER_PACIFICA_2020, CAR.JEEP_GRAND_CHEROKEE_2019, CAR.DODGE_DURANGO) - new_eps_firmware = any(fw.ecu == 'eps' and fw.fwVersion[:4] >= b"6841" for fw in car_fw) - if new_eps_platform or new_eps_firmware: - ret.flags |= ChryslerFlags.HIGHER_MIN_STEERING_SPEED.value - - # Chrysler - if candidate in (CAR.CHRYSLER_PACIFICA_2018, CAR.CHRYSLER_PACIFICA_2018_HYBRID, CAR.CHRYSLER_PACIFICA_2019_HYBRID, - CAR.CHRYSLER_PACIFICA_2020, CAR.DODGE_DURANGO): - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kpBP, ret.lateralTuning.pid.kiBP = [[9., 20.], [9., 20.]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.15, 0.30], [0.03, 0.05]] - ret.lateralTuning.pid.kf = 0.00006 - - # Jeep - elif candidate in (CAR.JEEP_GRAND_CHEROKEE, CAR.JEEP_GRAND_CHEROKEE_2019): - ret.steerActuatorDelay = 0.2 - - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kpBP, ret.lateralTuning.pid.kiBP = [[9., 20.], [9., 20.]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.15, 0.30], [0.03, 0.05]] - ret.lateralTuning.pid.kf = 0.00006 - - # Ram - elif candidate == CAR.RAM_1500_5TH_GEN: - ret.steerActuatorDelay = 0.2 - ret.wheelbase = 3.88 - # Older EPS FW allow steer to zero - if any(fw.ecu == 'eps' and b"68" < fw.fwVersion[:4] <= b"6831" for fw in car_fw): - ret.minSteerSpeed = 0. - - elif candidate == CAR.RAM_HD_5TH_GEN: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning, 1.0, False) - - else: - raise ValueError(f"Unsupported car: {candidate}") - - if ret.flags & ChryslerFlags.HIGHER_MIN_STEERING_SPEED: - # TODO: allow these cars to steer down to 13 m/s if already engaged. - # TODO: Durango 2020 may be able to steer to zero once above 38 kph - ret.minSteerSpeed = 17.5 # m/s 17 on the way up, 13 on the way down once engaged. - - ret.centerToFront = ret.wheelbase * 0.44 - ret.enableBsm = 720 in fingerprint[0] - - return ret diff --git a/opendbc_repo/opendbc/car/chrysler/radar_interface.py b/opendbc_repo/opendbc/car/chrysler/radar_interface.py deleted file mode 100755 index 02fc52a5ba..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/radar_interface.py +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import RadarInterfaceBase -from opendbc.car.chrysler.values import DBC - -RADAR_MSGS_C = list(range(0x2c2, 0x2d4+2, 2)) # c_ messages 706,...,724 -RADAR_MSGS_D = list(range(0x2a2, 0x2b4+2, 2)) # d_ messages -LAST_MSG = max(RADAR_MSGS_C + RADAR_MSGS_D) -NUMBER_MSGS = len(RADAR_MSGS_C) + len(RADAR_MSGS_D) - -def _create_radar_can_parser(car_fingerprint): - if Bus.radar not in DBC[car_fingerprint]: - return None - - msg_n = len(RADAR_MSGS_C) - # list of [(signal name, message name or number), (...)] - # [('RADAR_STATE', 1024), - # ('LONG_DIST', 1072), - # ('LONG_DIST', 1073), - # ('LONG_DIST', 1074), - # ('LONG_DIST', 1075), - - messages = list(zip(RADAR_MSGS_C + - RADAR_MSGS_D, - [20] * msg_n + # 20Hz (0.05s) - [20] * msg_n, strict=True)) # 20Hz (0.05s) - - return CANParser(DBC[car_fingerprint][Bus.radar], messages, 1) - -def _address_to_track(address): - if address in RADAR_MSGS_C: - return (address - RADAR_MSGS_C[0]) // 2 - if address in RADAR_MSGS_D: - return (address - RADAR_MSGS_D[0]) // 2 - raise ValueError("radar received unexpected address %d" % address) - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - self.rcp = _create_radar_can_parser(CP.carFingerprint) - self.updated_messages = set() - self.trigger_msg = LAST_MSG - - def update(self, can_strings): - if self.rcp is None or self.CP.radarUnavailable: - return super().update(None) - - vls = self.rcp.update(can_strings) - self.updated_messages.update(vls) - - if self.trigger_msg not in self.updated_messages: - return None - - ret = structs.RadarData() - if not self.rcp.can_valid: - ret.errors.canError = True - - for ii in self.updated_messages: # ii should be the message ID as a number - cpt = self.rcp.vl[ii] - trackId = _address_to_track(ii) - - if trackId not in self.pts: - self.pts[trackId] = structs.RadarData.RadarPoint() - self.pts[trackId].trackId = trackId - self.pts[trackId].aRel = float('nan') - self.pts[trackId].yvRel = 0 #float('nan') - self.pts[trackId].measured = True - - if 'LONG_DIST' in cpt: # c_* message - self.pts[trackId].dRel = cpt['LONG_DIST'] # from front of car - # our lat_dist is positive to the right in car's frame. - # TODO what does yRel want? - self.pts[trackId].yRel = cpt['LAT_DIST'] # in car frame's y axis, left is positive - else: # d_* message - self.pts[trackId].vRel = cpt['REL_SPEED'] - self.pts[trackId].vLead = self.pts[trackId].vRel + self.v_ego - - # We want a list, not a dictionary. Filter out LONG_DIST==0 because that means it's not valid. - ret.points = [x for x in self.pts.values() if x.dRel != 0] - - self.updated_messages.clear() - return ret diff --git a/opendbc_repo/opendbc/car/chrysler/values.py b/opendbc_repo/opendbc/car/chrysler/values.py deleted file mode 100644 index a729d68ebe..0000000000 --- a/opendbc_repo/opendbc/car/chrysler/values.py +++ /dev/null @@ -1,159 +0,0 @@ -from enum import IntFlag -from dataclasses import dataclass, field - -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, p16 - -Ecu = CarParams.Ecu - - -class ChryslerSafetyFlags(IntFlag): - RAM_DT = 1 - RAM_HD = 2 - - -class ChryslerFlags(IntFlag): - # Detected flags - HIGHER_MIN_STEERING_SPEED = 1 - -@dataclass -class ChryslerCarDocs(CarDocs): - package: str = "Adaptive Cruise Control (ACC)" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.fca])) - - -@dataclass -class ChryslerPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: { - Bus.pt: 'chrysler_pacifica_2017_hybrid_generated', - Bus.radar: 'chrysler_pacifica_2017_hybrid_private_fusion', - }) - - -@dataclass(frozen=True) -class ChryslerCarSpecs(CarSpecs): - minSteerSpeed: float = 3.8 # m/s - - -class CAR(Platforms): - # Chrysler - CHRYSLER_PACIFICA_2018_HYBRID = ChryslerPlatformConfig( - [ChryslerCarDocs("Chrysler Pacifica Hybrid 2017-18")], - ChryslerCarSpecs(mass=2242., wheelbase=3.089, steerRatio=16.2), - ) - CHRYSLER_PACIFICA_2019_HYBRID = ChryslerPlatformConfig( - [ChryslerCarDocs("Chrysler Pacifica Hybrid 2019-25")], - CHRYSLER_PACIFICA_2018_HYBRID.specs, - ) - CHRYSLER_PACIFICA_2018 = ChryslerPlatformConfig( - [ChryslerCarDocs("Chrysler Pacifica 2017-18")], - CHRYSLER_PACIFICA_2018_HYBRID.specs, - ) - CHRYSLER_PACIFICA_2020 = ChryslerPlatformConfig( - [ - ChryslerCarDocs("Chrysler Pacifica 2019-20"), - ChryslerCarDocs("Chrysler Pacifica 2021-23", package="All"), - ], - CHRYSLER_PACIFICA_2018_HYBRID.specs, - ) - - # Dodge - DODGE_DURANGO = ChryslerPlatformConfig( - [ChryslerCarDocs("Dodge Durango 2020-21")], - CHRYSLER_PACIFICA_2018_HYBRID.specs, - ) - - # Jeep - JEEP_GRAND_CHEROKEE = ChryslerPlatformConfig( # includes 2017 Trailhawk - [ChryslerCarDocs("Jeep Grand Cherokee 2016-18", video="https://www.youtube.com/watch?v=eLR9o2JkuRk")], - ChryslerCarSpecs(mass=1778., wheelbase=2.71, steerRatio=16.7), - ) - - JEEP_GRAND_CHEROKEE_2019 = ChryslerPlatformConfig( # includes 2020 Trailhawk - [ChryslerCarDocs("Jeep Grand Cherokee 2019-21", video="https://www.youtube.com/watch?v=jBe4lWnRSu4")], - JEEP_GRAND_CHEROKEE.specs, - ) - - # Ram - RAM_1500_5TH_GEN = ChryslerPlatformConfig( - [ChryslerCarDocs("Ram 1500 2019-24", car_parts=CarParts.common([CarHarness.ram]))], - ChryslerCarSpecs(mass=2493., wheelbase=3.88, steerRatio=16.3, minSteerSpeed=14.5), - {Bus.pt: 'chrysler_ram_dt_generated'}, - ) - RAM_HD_5TH_GEN = ChryslerPlatformConfig( - [ - ChryslerCarDocs("Ram 2500 2020-24", car_parts=CarParts.common([CarHarness.ram])), - ChryslerCarDocs("Ram 3500 2019-22", car_parts=CarParts.common([CarHarness.ram])), - ], - ChryslerCarSpecs(mass=3405., wheelbase=3.785, steerRatio=15.61, minSteerSpeed=16.), - {Bus.pt: 'chrysler_ram_hd_generated'}, - ) - - -class CarControllerParams: - def __init__(self, CP): - self.STEER_STEP = 2 # 50 Hz - self.STEER_ERROR_MAX = 80 - if CP.carFingerprint in RAM_HD: - self.STEER_DELTA_UP = 14 - self.STEER_DELTA_DOWN = 14 - self.STEER_MAX = 361 # higher than this faults the EPS - elif CP.carFingerprint in RAM_DT: - self.STEER_DELTA_UP = 6 - self.STEER_DELTA_DOWN = 6 - self.STEER_MAX = 261 # EPS allows more, up to 350? - else: - self.STEER_DELTA_UP = 3 - self.STEER_DELTA_DOWN = 3 - self.STEER_MAX = 261 # higher than this faults the EPS - - -STEER_THRESHOLD = 120 - -RAM_DT = {CAR.RAM_1500_5TH_GEN, } -RAM_HD = {CAR.RAM_HD_5TH_GEN, } -RAM_CARS = RAM_DT | RAM_HD - - -CHRYSLER_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(0xf132) -CHRYSLER_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(0xf132) - -CHRYSLER_SOFTWARE_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_NUMBER) -CHRYSLER_SOFTWARE_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_NUMBER) - -CHRYSLER_RX_OFFSET = -0x280 - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - Request( - [CHRYSLER_VERSION_REQUEST], - [CHRYSLER_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.srs, Ecu.fwdRadar, Ecu.combinationMeter], - rx_offset=CHRYSLER_RX_OFFSET, - bus=0, - ), - Request( - [CHRYSLER_VERSION_REQUEST], - [CHRYSLER_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.hybrid, Ecu.engine, Ecu.transmission], - bus=0, - ), - Request( - [CHRYSLER_SOFTWARE_VERSION_REQUEST], - [CHRYSLER_SOFTWARE_VERSION_RESPONSE], - whitelist_ecus=[Ecu.engine, Ecu.transmission], - bus=0, - ), - ], - extra_ecus=[ - (Ecu.abs, 0x7e4, None), # alt address for abs on hybrids, NOTE: not on all hybrid platforms - ], -) - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/common/__init__.py b/opendbc_repo/opendbc/car/common/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/common/basedir.py b/opendbc_repo/opendbc/car/common/basedir.py deleted file mode 100644 index 6b4811e53c..0000000000 --- a/opendbc_repo/opendbc/car/common/basedir.py +++ /dev/null @@ -1,4 +0,0 @@ -import os - - -BASEDIR = os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)), "../")) diff --git a/opendbc_repo/opendbc/car/common/conversions.py b/opendbc_repo/opendbc/car/common/conversions.py deleted file mode 100644 index b02b33c625..0000000000 --- a/opendbc_repo/opendbc/car/common/conversions.py +++ /dev/null @@ -1,19 +0,0 @@ -import numpy as np - -class Conversions: - # Speed - MPH_TO_KPH = 1.609344 - KPH_TO_MPH = 1. / MPH_TO_KPH - MS_TO_KPH = 3.6 - KPH_TO_MS = 1. / MS_TO_KPH - MS_TO_MPH = MS_TO_KPH * KPH_TO_MPH - MPH_TO_MS = MPH_TO_KPH * KPH_TO_MS - MS_TO_KNOTS = 1.9438 - KNOTS_TO_MS = 1. / MS_TO_KNOTS - - # Angle - DEG_TO_RAD = np.pi / 180. - RAD_TO_DEG = 1. / DEG_TO_RAD - - # Mass - LB_TO_KG = 0.453592 diff --git a/opendbc_repo/opendbc/car/common/filter_simple.py b/opendbc_repo/opendbc/car/common/filter_simple.py deleted file mode 100644 index 0ec7a51562..0000000000 --- a/opendbc_repo/opendbc/car/common/filter_simple.py +++ /dev/null @@ -1,18 +0,0 @@ -class FirstOrderFilter: - # first order filter - def __init__(self, x0, rc, dt, initialized=True): - self.x = x0 - self.dt = dt - self.update_alpha(rc) - self.initialized = initialized - - def update_alpha(self, rc): - self.alpha = self.dt / (rc + self.dt) - - def update(self, x): - if self.initialized: - self.x = (1. - self.alpha) * self.x + self.alpha * x - else: - self.initialized = True - self.x = x - return self.x diff --git a/opendbc_repo/opendbc/car/common/pid.py b/opendbc_repo/opendbc/car/common/pid.py deleted file mode 100644 index f2ab935f45..0000000000 --- a/opendbc_repo/opendbc/car/common/pid.py +++ /dev/null @@ -1,70 +0,0 @@ -import numpy as np -from numbers import Number - -class PIDController: - def __init__(self, k_p, k_i, k_f=0., k_d=0., pos_limit=1e308, neg_limit=-1e308, rate=100): - self._k_p = k_p - self._k_i = k_i - self._k_d = k_d - self.k_f = k_f # feedforward gain - if isinstance(self._k_p, Number): - self._k_p = [[0], [self._k_p]] - if isinstance(self._k_i, Number): - self._k_i = [[0], [self._k_i]] - if isinstance(self._k_d, Number): - self._k_d = [[0], [self._k_d]] - - self.pos_limit = pos_limit - self.neg_limit = neg_limit - - self.i_unwind_rate = 0.3 / rate - self.i_rate = 1.0 / rate - self.speed = 0.0 - - self.reset() - - @property - def k_p(self): - return np.interp(self.speed, self._k_p[0], self._k_p[1]) - - @property - def k_i(self): - return np.interp(self.speed, self._k_i[0], self._k_i[1]) - - @property - def k_d(self): - return np.interp(self.speed, self._k_d[0], self._k_d[1]) - - @property - def error_integral(self): - return self.i/self.k_i - - def reset(self): - self.p = 0.0 - self.i = 0.0 - self.d = 0.0 - self.f = 0.0 - self.control = 0 - - def update(self, error, error_rate=0.0, speed=0.0, override=False, feedforward=0., freeze_integrator=False): - self.speed = speed - - self.p = float(error) * self.k_p - self.f = feedforward * self.k_f - self.d = error_rate * self.k_d - - if override: - self.i -= self.i_unwind_rate * float(np.sign(self.i)) - else: - if not freeze_integrator: - self.i = self.i + error * self.k_i * self.i_rate - - # Clip i to prevent exceeding control limits - control_no_i = self.p + self.d + self.f - control_no_i = np.clip(control_no_i, self.neg_limit, self.pos_limit) - self.i = np.clip(self.i, self.neg_limit - control_no_i, self.pos_limit - control_no_i) - - control = self.p + self.i + self.d + self.f - - self.control = np.clip(control, self.neg_limit, self.pos_limit) - return self.control diff --git a/opendbc_repo/opendbc/car/common/simple_kalman.py b/opendbc_repo/opendbc/car/common/simple_kalman.py deleted file mode 100644 index 194b27204b..0000000000 --- a/opendbc_repo/opendbc/car/common/simple_kalman.py +++ /dev/null @@ -1,54 +0,0 @@ -import numpy as np - - -def get_kalman_gain(dt, A, C, Q, R, iterations=100): - P = np.zeros_like(Q) - for _ in range(iterations): - P = A.dot(P).dot(A.T) + dt * Q - S = C.dot(P).dot(C.T) + R - K = P.dot(C.T).dot(np.linalg.inv(S)) - P = (np.eye(len(P)) - K.dot(C)).dot(P) - return K - - -class KF1D: - # this EKF assumes constant covariance matrix, so calculations are much simpler - # the Kalman gain also needs to be precomputed using the control module - - def __init__(self, x0, A, C, K): - self.x0_0 = x0[0][0] - self.x1_0 = x0[1][0] - self.A0_0 = A[0][0] - self.A0_1 = A[0][1] - self.A1_0 = A[1][0] - self.A1_1 = A[1][1] - self.C0_0 = C[0] - self.C0_1 = C[1] - self.K0_0 = K[0][0] - self.K1_0 = K[1][0] - - self.A_K_0 = self.A0_0 - self.K0_0 * self.C0_0 - self.A_K_1 = self.A0_1 - self.K0_0 * self.C0_1 - self.A_K_2 = self.A1_0 - self.K1_0 * self.C0_0 - self.A_K_3 = self.A1_1 - self.K1_0 * self.C0_1 - - # K matrix needs to be pre-computed as follow: - # import control - # (x, l, K) = control.dare(np.transpose(self.A), np.transpose(self.C), Q, R) - # self.K = np.transpose(K) - - def update(self, meas): - #self.x = np.dot(self.A_K, self.x) + np.dot(self.K, meas) - x0_0 = self.A_K_0 * self.x0_0 + self.A_K_1 * self.x1_0 + self.K0_0 * meas - x1_0 = self.A_K_2 * self.x0_0 + self.A_K_3 * self.x1_0 + self.K1_0 * meas - self.x0_0 = x0_0 - self.x1_0 = x1_0 - return [self.x0_0, self.x1_0] - - @property - def x(self): - return [[self.x0_0], [self.x1_0]] - - def set_x(self, x): - self.x0_0 = x[0][0] - self.x1_0 = x[1][0] diff --git a/opendbc_repo/opendbc/car/crc.py b/opendbc_repo/opendbc/car/crc.py deleted file mode 100644 index 2518286d8f..0000000000 --- a/opendbc_repo/opendbc/car/crc.py +++ /dev/null @@ -1,30 +0,0 @@ - -def _gen_crc8_table(poly: int) -> list[int]: - table = [] - for i in range(256): - crc = i - for _ in range(8): - if crc & 0x80: - crc = ((crc << 1) ^ poly) & 0xFF - else: - crc = (crc << 1) & 0xFF - table.append(crc) - return table - - -def _gen_crc16_table(poly: int) -> list[int]: - table = [] - for i in range(256): - crc = i << 8 - for _ in range(8): - if crc & 0x8000: - crc = ((crc << 1) ^ poly) & 0xFFFF - else: - crc = (crc << 1) & 0xFFFF - table.append(crc) - return table - - -CRC8H2F = _gen_crc8_table(0x2F) -CRC8J1850 = _gen_crc8_table(0x1D) -CRC16_XMODEM = _gen_crc16_table(0x1021) diff --git a/opendbc_repo/opendbc/car/debug/format_fingerprints.py b/opendbc_repo/opendbc/car/debug/format_fingerprints.py deleted file mode 100644 index 43b59bf2e0..0000000000 --- a/opendbc_repo/opendbc/car/debug/format_fingerprints.py +++ /dev/null @@ -1,82 +0,0 @@ -#!/usr/bin/env python3 -import jinja2 -import os - -from opendbc.car.common.basedir import BASEDIR -from opendbc.car.interfaces import get_interface_attr -from opendbc.car.structs import CarParams - -Ecu = CarParams.Ecu - -CARS = get_interface_attr('CAR') -FW_VERSIONS = get_interface_attr('FW_VERSIONS') -FINGERPRINTS = get_interface_attr('FINGERPRINTS') -ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()} - -FINGERPRINTS_PY_TEMPLATE = jinja2.Template(""" -{%- if FINGERPRINTS[brand] and brand != 'body' %} -# ruff: noqa: E501 -{% endif %} -\"\"\" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.\"\"\" -{% if FW_VERSIONS[brand] %} -from opendbc.car.structs import CarParams -{% endif %} -from opendbc.car.{{brand}}.values import CAR -{% if FW_VERSIONS[brand] %} - -Ecu = CarParams.Ecu -{% endif %} -{% if comments +%} -{{ comments | join() }} -{% endif %} -{% if FINGERPRINTS[brand] %} - -FINGERPRINTS = { -{% for car, fingerprints in FINGERPRINTS[brand].items() %} - CAR.{{car.name}}: [{ -{% for fingerprint in fingerprints %} -{% if not loop.first %} - {{ "{" }} -{% endif %} - {% for key, value in fingerprint.items() %}{{key}}: {{value}}{% if not loop.last %}, {% endif %}{% endfor %} - - }{% if loop.last %}]{% endif %}, -{% endfor %} -{% endfor %} -} -{% endif %} - -FW_VERSIONS{% if not FW_VERSIONS[brand] %}: dict[str, dict[tuple, list[bytes]]]{% endif %} = { -{% for car, _ in FW_VERSIONS[brand].items() %} - CAR.{{car.name}}: { -{% for key, fw_versions in FW_VERSIONS[brand][car].items() %} - (Ecu.{{ECU_NAME[key[0]]}}, 0x{{"%0x" | format(key[1] | int)}}, \ -{% if key[2] %}0x{{"%0x" | format(key[2] | int)}}{% else %}{{key[2]}}{% endif %}): [ - {% for fw_version in (fw_versions + extra_fw_versions.get(car, {}).get(key, [])) | unique | sort %} - {{fw_version}}, - {% endfor %} - ], -{% endfor %} - }, -{% endfor %} -} - -""", trim_blocks=True) - - -def format_brand_fw_versions(brand, extra_fw_versions: None | dict[str, dict[tuple, list[bytes]]] = None): - extra_fw_versions = extra_fw_versions or {} - - fingerprints_file = os.path.join(BASEDIR, f"{brand}/fingerprints.py") - with open(fingerprints_file) as f: - comments = [line for line in f.readlines() if line.startswith("#") and "noqa" not in line] - - with open(fingerprints_file, "w") as f: - f.write(FINGERPRINTS_PY_TEMPLATE.render(brand=brand, comments=comments, ECU_NAME=ECU_NAME, - FINGERPRINTS=FINGERPRINTS, FW_VERSIONS=FW_VERSIONS, - extra_fw_versions=extra_fw_versions)) - - -if __name__ == "__main__": - for brand in FW_VERSIONS.keys(): - format_brand_fw_versions(brand) diff --git a/opendbc_repo/opendbc/car/disable_ecu.py b/opendbc_repo/opendbc/car/disable_ecu.py deleted file mode 100644 index 797b40649f..0000000000 --- a/opendbc_repo/opendbc/car/disable_ecu.py +++ /dev/null @@ -1,36 +0,0 @@ -from opendbc.car.carlog import carlog -from opendbc.car.isotp_parallel_query import IsoTpParallelQuery - -EXT_DIAG_REQUEST = b'\x10\x03' -EXT_DIAG_RESPONSE = b'\x50\x03' - -COM_CONT_RESPONSE = b'' - - -def disable_ecu(can_recv, can_send, bus=0, addr=0x7d0, sub_addr=None, com_cont_req=b'\x28\x83\x01', timeout=0.1, retry=10): - """Silence an ECU by disabling sending and receiving messages using UDS 0x28. - The ECU will stay silent as long as openpilot keeps sending Tester Present. - - This is used to disable the radar in some cars. Openpilot will emulate the radar. - WARNING: THIS DISABLES AEB!""" - carlog.warning(f"ecu disable {hex(addr), sub_addr} ...") - - for i in range(retry): - try: - query = IsoTpParallelQuery(can_send, can_recv, bus, [(addr, sub_addr)], [EXT_DIAG_REQUEST], [EXT_DIAG_RESPONSE]) - - for _, _ in query.get_data(timeout).items(): - carlog.warning("communication control disable tx/rx ...") - - query = IsoTpParallelQuery(can_send, can_recv, bus, [(addr, sub_addr)], [com_cont_req], [COM_CONT_RESPONSE]) - query.get_data(0) - - carlog.warning("ecu disabled") - return True - - except Exception: - carlog.exception("ecu disable exception") - - carlog.error(f"ecu disable retry ({i + 1}) ...") - carlog.error("ecu disable failed") - return False diff --git a/opendbc_repo/opendbc/car/docs.py b/opendbc_repo/opendbc/car/docs.py deleted file mode 100755 index 901b889d50..0000000000 --- a/opendbc_repo/opendbc/car/docs.py +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/env python3 -import argparse -import os -from typing import get_args - -from collections import defaultdict -import jinja2 -from enum import Enum -from natsort import natsorted - -from opendbc.car.common.basedir import BASEDIR -from opendbc.car import gen_empty_fingerprint -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import BaseCarHarness, CarDocs, Device, ExtraCarDocs, Column, ExtraCarsColumn, CommonFootnote, PartType, SupportType -from opendbc.car.car_helpers import interfaces -from opendbc.car.interfaces import get_interface_attr -from opendbc.car.values import Platform -from opendbc.car.mock.values import CAR as MOCK -from opendbc.car.extra_cars import CAR as EXTRA - - -EXTRA_CARS_MD_OUT = os.path.join(BASEDIR, "../", "../", "docs", "CARS.md") -EXTRA_CARS_MD_TEMPLATE = os.path.join(BASEDIR, "CARS_template.md") - -# TODO: merge these platforms into normal car ports with SupportType flag -ExtraPlatform = Platform | EXTRA -EXTRA_BRANDS = get_args(ExtraPlatform) -EXTRA_PLATFORMS: dict[str, ExtraPlatform] = {str(platform): platform for brand in EXTRA_BRANDS for platform in brand} - - -def get_params_for_docs(platform) -> CarParams: - cp_platform = platform if platform in interfaces else MOCK.MOCK - CP: CarParams = interfaces[cp_platform].get_params(cp_platform, fingerprint=gen_empty_fingerprint(), - car_fw=[CarParams.CarFw(ecu=CarParams.Ecu.unknown)], - alpha_long=True, is_release=False, docs=True) - return CP - - -def get_all_footnotes() -> dict[Enum, int]: - all_footnotes = list(CommonFootnote) - for footnotes in get_interface_attr("Footnote", ignore_none=True).values(): - all_footnotes.extend(footnotes) - return {fn: idx + 1 for idx, fn in enumerate(all_footnotes)} - - -def build_sorted_car_docs_list(platforms, footnotes=None): - collected_car_docs: list[CarDocs | ExtraCarDocs] = [] - for platform in platforms.values(): - car_docs = platform.config.car_docs - CP = get_params_for_docs(platform) - - if not len(car_docs): - continue - - # A platform can include multiple car models - for _car_docs in car_docs: - if not hasattr(_car_docs, "row"): - _car_docs.init_make(CP) - _car_docs.init(CP, footnotes) - collected_car_docs.append(_car_docs) - - # Sort cars by make and model + year - sorted_cars = natsorted(collected_car_docs, key=lambda car: car.name.lower()) - return sorted_cars - - -# CAUTION: This function is imported by shop.comma.ai and comma.ai/vehicles, test changes carefully -def get_all_car_docs() -> list[CarDocs]: - collected_footnotes = get_all_footnotes() - sorted_list: list[CarDocs] = build_sorted_car_docs_list(EXTRA_PLATFORMS, footnotes=collected_footnotes) - return sorted_list - - -def group_by_make(all_car_docs: list[CarDocs]) -> dict[str, list[CarDocs]]: - sorted_car_docs = defaultdict(list) - for car_docs in all_car_docs: - sorted_car_docs[car_docs.make].append(car_docs) - return dict(sorted_car_docs) - - -# CAUTION: This function is imported by shop.comma.ai and comma.ai/vehicles, test changes carefully -def generate_cars_md(all_car_docs: list[CarDocs], template_fn: str, **kwargs) -> str: - with open(template_fn) as f: - template = jinja2.Template(f.read(), trim_blocks=True, lstrip_blocks=True) - - footnotes = [fn.value.text for fn in get_all_footnotes()] - cars_md: str = template.render(all_car_docs=all_car_docs, PartType=PartType, - group_by_make=group_by_make, footnotes=footnotes, - Device=Device, Column=Column, ExtraCarsColumn=ExtraCarsColumn, - BaseCarHarness=BaseCarHarness, SupportType=SupportType, - **kwargs) - return cars_md - - -if __name__ == "__main__": - parser = argparse.ArgumentParser(description="Auto generates supportability info docs for all known cars", - formatter_class=argparse.ArgumentDefaultsHelpFormatter) - - parser.add_argument("--template", default=EXTRA_CARS_MD_TEMPLATE, help="Override default template filename") - parser.add_argument("--out", default=EXTRA_CARS_MD_OUT, help="Override default generated filename") - args = parser.parse_args() - - with open(args.out, 'w') as f: - f.write(generate_cars_md(get_all_car_docs(), args.template)) - print(f"Generated and written to {args.out}") diff --git a/opendbc_repo/opendbc/car/docs_definitions.py b/opendbc_repo/opendbc/car/docs_definitions.py deleted file mode 100644 index 04a7155822..0000000000 --- a/opendbc_repo/opendbc/car/docs_definitions.py +++ /dev/null @@ -1,419 +0,0 @@ -import re -from collections import namedtuple -import copy -from dataclasses import dataclass, field -from enum import Enum - -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.structs import CarParams - -GOOD_TORQUE_THRESHOLD = 1.0 # m/s^2 -MODEL_YEARS_RE = r"(?<= )((\d{4}-\d{2})|(\d{4}))(,|$)" - - -class Column(Enum): - MAKE = "Make" - MODEL = "Model" - PACKAGE = "Supported Package" - LONGITUDINAL = "ACC" - FSR_LONGITUDINAL = "No ACC accel below" - FSR_STEERING = "No ALC below" - STEERING_TORQUE = "Steering Torque" - AUTO_RESUME = "Resume from stop" - HARDWARE = "Hardware Needed" - VIDEO = "Video" - SETUP_VIDEO = "Setup Video" - - -class ExtraCarsColumn(Enum): - MAKE = "Make" - MODEL = "Model" - PACKAGE = "Package" - SUPPORT = "Support Level" - - -class SupportType(Enum): - UPSTREAM = "Upstream" # Actively maintained by comma, plug-and-play in release versions of openpilot - REVIEW = "Under review" # Dashcam, but planned for official support after safety validation - DASHCAM = "Dashcam mode" # Dashcam, but may be drivable in a community fork - COMMUNITY = "Community" # Not upstream, but available in a custom community fork, not validated by comma - CUSTOM = "Custom" # Upstream, but don't have a harness available or need an unusual custom install - INCOMPATIBLE = "Not compatible" # Known fundamental incompatibility such as Flexray or hydraulic power steering - - -class Star(Enum): - FULL = "full" - HALF = "half" - EMPTY = "empty" - - -# A part + its comprised parts -@dataclass -class BasePart: - name: str - parts: list[Enum] = field(default_factory=list) - - def all_parts(self): - # Recursively get all parts - _parts = 'parts' - parts = [] - parts.extend(getattr(self, _parts)) - for part in getattr(self, _parts): - parts.extend(part.value.all_parts()) - - return parts - - -class EnumBase(Enum): - @property - def part_type(self): - return PartType(self.__class__) - - -class Mount(EnumBase): - mount = BasePart("mount") - angled_mount_8_degrees = BasePart("angled mount (8 degrees)") - - -class Cable(EnumBase): - long_obdc_cable = BasePart("long OBD-C cable (9.5 ft)") - usb_a_2_a_cable = BasePart("USB A-A cable") - usbc_otg_cable = BasePart("USB C OTG cable") - usbc_coupler = BasePart("USB-C coupler") - obd_c_cable_1_5ft = BasePart("OBD-C cable (1.5 ft)") - right_angle_obd_c_cable_1_5ft = BasePart("right angle OBD-C cable (1.5 ft)") - - -class Accessory(EnumBase): - harness_box = BasePart("harness box") - comma_power = BasePart("comma power v3") - - -class Tool(EnumBase): - socket_8mm_deep = BasePart("Socket Wrench 8mm or 5/16\" (deep)") - pry_tool = BasePart("Pry Tool") - - -@dataclass -class BaseCarHarness(BasePart): - parts: list[Enum] = field(default_factory=lambda: [Accessory.harness_box, Accessory.comma_power]) - has_connector: bool = True # without are hidden on the harness connector page - - -class CarHarness(EnumBase): - nidec = BaseCarHarness("Honda Nidec connector") - bosch_a = BaseCarHarness("Honda Bosch A connector") - bosch_b = BaseCarHarness("Honda Bosch B connector") - bosch_c = BaseCarHarness("Honda Bosch C connector") - toyota_a = BaseCarHarness("Toyota A connector") - toyota_b = BaseCarHarness("Toyota B connector") - subaru_a = BaseCarHarness("Subaru A connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) - subaru_b = BaseCarHarness("Subaru B connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) - subaru_c = BaseCarHarness("Subaru C connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) - subaru_d = BaseCarHarness("Subaru D connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) - fca = BaseCarHarness("FCA connector") - ram = BaseCarHarness("Ram connector") - vw_a = BaseCarHarness("VW A connector") - vw_j533 = BaseCarHarness("VW J533 connector", parts=[Accessory.harness_box, Cable.long_obdc_cable, Cable.usbc_coupler]) - hyundai_a = BaseCarHarness("Hyundai A connector") - hyundai_b = BaseCarHarness("Hyundai B connector") - hyundai_c = BaseCarHarness("Hyundai C connector") - hyundai_d = BaseCarHarness("Hyundai D connector") - hyundai_e = BaseCarHarness("Hyundai E connector") - hyundai_f = BaseCarHarness("Hyundai F connector") - hyundai_g = BaseCarHarness("Hyundai G connector") - hyundai_h = BaseCarHarness("Hyundai H connector") - hyundai_i = BaseCarHarness("Hyundai I connector") - hyundai_j = BaseCarHarness("Hyundai J connector") - hyundai_k = BaseCarHarness("Hyundai K connector") - hyundai_l = BaseCarHarness("Hyundai L connector") - hyundai_m = BaseCarHarness("Hyundai M connector") - hyundai_n = BaseCarHarness("Hyundai N connector") - hyundai_o = BaseCarHarness("Hyundai O connector") - hyundai_p = BaseCarHarness("Hyundai P connector") - hyundai_q = BaseCarHarness("Hyundai Q connector") - hyundai_r = BaseCarHarness("Hyundai R connector") - custom = BaseCarHarness("Developer connector") - obd_ii = BaseCarHarness("OBD-II connector", parts=[Cable.long_obdc_cable, Cable.usbc_coupler], has_connector=False) - gm = BaseCarHarness("GM connector", parts=[Accessory.harness_box]) - gmsdgm = BaseCarHarness("GM SDGM connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - nissan_a = BaseCarHarness("Nissan A connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - nissan_b = BaseCarHarness("Nissan B connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - mazda = BaseCarHarness("Mazda connector") - ford_q3 = BaseCarHarness("Ford Q3 connector") - ford_q4 = BaseCarHarness("Ford Q4 connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - rivian = BaseCarHarness("Rivian A connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - tesla_a = BaseCarHarness("Tesla A connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - tesla_b = BaseCarHarness("Tesla B connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) - - -class Device(EnumBase): - threex = BasePart("comma 3X", parts=[Mount.mount, Cable.right_angle_obd_c_cable_1_5ft]) - # variant of comma 3X with angled mounts - threex_angled_mount = BasePart("comma 3X", parts=[Mount.angled_mount_8_degrees, Cable.right_angle_obd_c_cable_1_5ft]) - red_panda = BasePart("red panda") - - -class Kit(EnumBase): - red_panda_kit = BasePart("CAN FD panda kit", parts=[Device.red_panda, Accessory.harness_box, - Cable.usb_a_2_a_cable, Cable.usbc_otg_cable, Cable.obd_c_cable_1_5ft]) - - -class PartType(Enum): - accessory = Accessory - cable = Cable - connector = CarHarness - device = Device - kit = Kit - mount = Mount - tool = Tool - - -DEFAULT_CAR_PARTS: list[EnumBase] = [Device.threex] - - -@dataclass -class CarParts: - parts: list[EnumBase] = field(default_factory=list) - - def __call__(self): - return copy.deepcopy(self) - - @classmethod - def common(cls, add: list[EnumBase] = None, remove: list[EnumBase] = None): - p = [part for part in (add or []) + DEFAULT_CAR_PARTS if part not in (remove or [])] - return cls(p) - - def all_parts(self): - parts = [] - for part in self.parts: - parts.extend(part.value.all_parts()) - return self.parts + parts - - -CarFootnote = namedtuple("CarFootnote", ["text", "column", "docs_only", "setup_note"], defaults=(False, False)) - - -class CommonFootnote(Enum): - EXP_LONG_AVAIL = CarFootnote( - "openpilot Longitudinal Control (Alpha) is available behind a toggle; " + - "the toggle is only available in non-release branches such as `devel` or `nightly-dev`.", - Column.LONGITUDINAL, docs_only=True) - EXP_LONG_DSU = CarFootnote( - "By default, this car will use the stock Adaptive Cruise Control (ACC) for longitudinal control. " + - "If the Driver Support Unit (DSU) is disconnected, openpilot ACC will replace " + - "stock ACC. NOTE: disconnecting the DSU disables Automatic Emergency Braking (AEB).", - Column.LONGITUDINAL) - - -def get_footnotes(footnotes: list[Enum], column: Column) -> list[Enum]: - # Returns applicable footnotes given current column - return [fn for fn in footnotes if fn.value.column == column] - - -# TODO: store years as a list -def get_year_list(years): - years_list = [] - if len(years) == 0: - return years_list - - for year in years.split(','): - year = year.strip() - if len(year) == 4: - years_list.append(str(year)) - elif "-" in year and len(year) == 7: - start, end = year.split("-") - years_list.extend(map(str, range(int(start), int(f"20{end}") + 1))) - else: - raise Exception(f"Malformed year string: {years}") - return years_list - - -def split_name(name: str) -> tuple[str, str, str]: - make, model = name.split(" ", 1) - years = "" - match = re.search(MODEL_YEARS_RE, model) - if match is not None: - years = model[match.start():] - model = model[:match.start() - 1] - return make, model, years - - -@dataclass -class CarDocs: - # make + model + model years - name: str - - # the simplest description of the requirements for the US market - package: str - - video: str | None = None - setup_video: str | None = None - footnotes: list[Enum] = field(default_factory=list) - min_steer_speed: float | None = None - min_enable_speed: float | None = None - auto_resume: bool | None = None - - # all the parts needed for the supported car - car_parts: CarParts = field(default_factory=CarParts) - - merged: bool = True - support_type: SupportType = SupportType.UPSTREAM - support_link: str | None = "#upstream" - - def __post_init__(self): - self.make, self.model, self.years = split_name(self.name) - self.year_list = get_year_list(self.years) - - def init(self, CP: CarParams, all_footnotes=None): - self.brand = CP.brand - self.car_fingerprint = CP.carFingerprint - - if self.merged and CP.dashcamOnly: - if self.support_type != SupportType.REVIEW: - self.support_type = SupportType.DASHCAM - self.support_link = "#dashcam" - else: - self.support_link = "#under-review" - - # longitudinal column - op_long = "Stock" - if CP.alphaLongitudinalAvailable or CP.enableDsu: - op_long = "openpilot available" - if CP.enableDsu: - self.footnotes.append(CommonFootnote.EXP_LONG_DSU) - else: - self.footnotes.append(CommonFootnote.EXP_LONG_AVAIL) - elif CP.openpilotLongitudinalControl and not CP.enableDsu: - op_long = "openpilot" - - # min steer & enable speed columns - # TODO: set all the min steer speeds in carParams and remove this - if self.min_steer_speed is not None: - assert CP.minSteerSpeed < 0.5, f"{CP.carFingerprint}: Minimum steer speed set in both CarDocs and CarParams" - else: - self.min_steer_speed = CP.minSteerSpeed - - # TODO: set all the min enable speeds in carParams correctly and remove this - if self.min_enable_speed is None: - self.min_enable_speed = CP.minEnableSpeed - - if self.auto_resume is None: - self.auto_resume = CP.autoResumeSng and self.min_enable_speed <= 0 - - # hardware column - hardware_col = "None" - if self.car_parts.parts: - buy_link = f'Buy Here' - - tools_docs = [part for part in self.car_parts.all_parts() if isinstance(part, Tool)] - parts_docs = [part for part in self.car_parts.all_parts() if not isinstance(part, Tool)] - - def display_func(parts): - return '
'.join([f"- {parts.count(part)} {part.value.name}" for part in sorted(set(parts), key=lambda part: str(part.value.name))]) - - hardware_col = f'
Parts{display_func(parts_docs)}
{buy_link}
' - if len(tools_docs): - hardware_col += f'
Tools{display_func(tools_docs)}
' - - self.row: dict[Enum, str | Star] = { - Column.MAKE: self.make, - Column.MODEL: self.model, - Column.PACKAGE: self.package, - Column.LONGITUDINAL: op_long, - Column.FSR_LONGITUDINAL: f"{max(self.min_enable_speed * CV.MS_TO_MPH, 0):.0f} mph", - Column.FSR_STEERING: f"{max(self.min_steer_speed * CV.MS_TO_MPH, 0):.0f} mph", - Column.STEERING_TORQUE: Star.EMPTY, - Column.AUTO_RESUME: Star.FULL if self.auto_resume else Star.EMPTY, - Column.HARDWARE: hardware_col, - Column.VIDEO: self.video or "", # replaced with an image and link from template in get_column - Column.SETUP_VIDEO: self.setup_video or "", # replaced with an image and link from template in get_column - } - - if self.support_link is not None: - support_info = f"[{self.support_type.value}]({self.support_link})" - else: - support_info = self.support_type.value - - self.extra_cars_row: dict[Enum, str] = { - ExtraCarsColumn.MAKE: self.make, - ExtraCarsColumn.MODEL: self.model, - ExtraCarsColumn.PACKAGE: self.package, - ExtraCarsColumn.SUPPORT: support_info, - } - - # Set steering torque star from max lateral acceleration - assert CP.maxLateralAccel > 0.1 - if CP.maxLateralAccel >= GOOD_TORQUE_THRESHOLD: - self.row[Column.STEERING_TORQUE] = Star.FULL - - self.all_footnotes = all_footnotes - self.detail_sentence = self.get_detail_sentence(CP) - - return self - - def init_make(self, CP: CarParams): - """CarDocs subclasses can add make-specific logic for harness selection, footnotes, etc.""" - - def get_detail_sentence(self, CP): - if not CP.notCar: - sentence_builder = "openpilot upgrades your {car_model} with automated lane centering{alc} and adaptive cruise control{acc}." - - if self.min_steer_speed > self.min_enable_speed: - alc = f" above {self.min_steer_speed * CV.MS_TO_MPH:.0f} mph," if self.min_steer_speed > 0 else " at all speeds," - else: - alc = "" - - # Exception for cars which do not auto-resume yet - acc = "" - if self.min_enable_speed > 0: - acc = f" while driving above {self.min_enable_speed * CV.MS_TO_MPH:.0f} mph" - elif self.auto_resume: - acc = " that automatically resumes from a stop" - - if self.row[Column.STEERING_TORQUE] != Star.FULL: - sentence_builder += " This car may not be able to take tight turns on its own." - - # experimental mode - exp_link = "Experimental mode" - if CP.openpilotLongitudinalControl and not CP.alphaLongitudinalAvailable: - sentence_builder += f" Traffic light and stop sign handling is also available in {exp_link}." - - return sentence_builder.format(car_model=f"{self.make} {self.model}", alc=alc, acc=acc) - - else: - if CP.carFingerprint == "COMMA_BODY": - return "The body is a robotics dev kit that can run openpilot. Learn more." - else: - raise Exception(f"This notCar does not have a detail sentence: {CP.carFingerprint}") - - def get_column(self, column: Column, star_icon: str, video_icon: str, footnote_tag: str) -> str: - item: str | Star = self.row[column] - if isinstance(item, Star): - item = star_icon.format(item.value) - elif column == Column.MODEL and len(self.years): - item += f" {self.years}" - elif column in (Column.VIDEO, Column.SETUP_VIDEO) and len(item) > 0: - item = video_icon.format(item) - - footnotes = get_footnotes(self.footnotes, column) - if len(footnotes): - sups = sorted([self.all_footnotes[fn] for fn in footnotes]) - item += footnote_tag.format(f'{",".join(map(str, sups))}') - - return item - - def get_extra_cars_column(self, column: ExtraCarsColumn) -> str: - item: str = self.extra_cars_row[column] - if column == ExtraCarsColumn.MODEL and len(self.years): - item += f" {self.years}" - - return item - - -@dataclass -class ExtraCarDocs(CarDocs): - package: str = "Any" - merged: bool = False - support_type: SupportType = SupportType.INCOMPATIBLE - support_link: str | None = "#incompatible" diff --git a/opendbc_repo/opendbc/car/ecu_addrs.py b/opendbc_repo/opendbc/car/ecu_addrs.py deleted file mode 100644 index 82141fca3e..0000000000 --- a/opendbc_repo/opendbc/car/ecu_addrs.py +++ /dev/null @@ -1,55 +0,0 @@ -import time - -from opendbc.car import make_tester_present_msg, uds -from opendbc.car.can_definitions import CanData, CanRecvCallable, CanSendCallable -from opendbc.car.carlog import carlog -from opendbc.car.fw_query_definitions import EcuAddrBusType - - -def _is_tester_present_response(msg: CanData, subaddr: int = None) -> bool: - # ISO-TP messages are always padded to 8 bytes - # tester present response is always a single frame - dat_offset = 1 if subaddr is not None else 0 - if len(msg.dat) == 8 and 1 <= msg.dat[dat_offset] <= 7: - # success response - if msg.dat[dat_offset + 1] == (uds.SERVICE_TYPE.TESTER_PRESENT + 0x40): - return True - # error response - if msg.dat[dat_offset + 1] == 0x7F and msg.dat[dat_offset + 2] == uds.SERVICE_TYPE.TESTER_PRESENT: - return True - return False - - -def get_all_ecu_addrs(can_recv: CanRecvCallable, can_send: CanSendCallable, bus: int, timeout: float = 1) -> set[EcuAddrBusType]: - addr_list = [0x700 + i for i in range(256)] + [0x18da00f1 + (i << 8) for i in range(256)] - queries: set[EcuAddrBusType] = {(addr, None, bus) for addr in addr_list} - responses = queries - return get_ecu_addrs(can_recv, can_send, queries, responses, timeout=timeout) - - -def get_ecu_addrs(can_recv: CanRecvCallable, can_send: CanSendCallable, queries: set[EcuAddrBusType], - responses: set[EcuAddrBusType], timeout: float = 1) -> set[EcuAddrBusType]: - ecu_responses: set[EcuAddrBusType] = set() # set((addr, subaddr, bus),) - try: - msgs = [make_tester_present_msg(addr, bus, subaddr) for addr, subaddr, bus in queries] - - can_recv() - can_send(msgs) - start_time = time.monotonic() - while time.monotonic() - start_time < timeout: - can_packets = can_recv(wait_for_one=True) - for packet in can_packets: - for msg in packet: - if not len(msg.dat): - carlog.warning("ECU addr scan: skipping empty remote frame") - continue - - subaddr = None if (msg.address, None, msg.src) in responses else msg.dat[0] - if (msg.address, subaddr, msg.src) in responses and _is_tester_present_response(msg, subaddr): - carlog.debug(f"CAN-RX: {hex(msg.address)} - 0x{bytes.hex(msg.dat)}") - if (msg.address, subaddr, msg.src) in ecu_responses: - carlog.debug(f"Duplicate ECU address: {hex(msg.address)}") - ecu_responses.add((msg.address, subaddr, msg.src)) - except Exception: - carlog.exception("ECU addr scan exception") - return ecu_responses diff --git a/opendbc_repo/opendbc/car/extra_cars.py b/opendbc_repo/opendbc/car/extra_cars.py deleted file mode 100644 index da20140a6c..0000000000 --- a/opendbc_repo/opendbc/car/extra_cars.py +++ /dev/null @@ -1,72 +0,0 @@ -from dataclasses import dataclass - -from opendbc.car import structs, Platforms, ExtraPlatformConfig -from opendbc.car.docs_definitions import ExtraCarDocs, SupportType - - -@dataclass -class CommunityCarDocs(ExtraCarDocs): - def init_make(self, CP: structs.CarParams): - self.support_type = SupportType.COMMUNITY - self.support_link = "#community" - - -@dataclass -class ToyotaSecurityCarDocs(ExtraCarDocs): - def init_make(self, CP: structs.CarParams): - self.support_type = SupportType.INCOMPATIBLE - self.support_link = "#can-bus-security" - - -@dataclass -class FlexRayCarDocs(ExtraCarDocs): - def init_make(self, CP: structs.CarParams): - self.support_type = SupportType.INCOMPATIBLE - self.support_link = "#flexray" - - -class CAR(Platforms): - config: ExtraPlatformConfig - - EXTRA_HONDA = ExtraPlatformConfig( - [ - CommunityCarDocs("Acura Integra 2024", "All"), - CommunityCarDocs("Honda Accord 2023-24", "All"), - CommunityCarDocs("Honda Clarity 2018-21", "All"), - CommunityCarDocs("Honda CR-V 2024", "All"), - CommunityCarDocs("Honda CR-V Hybrid 2024", "All"), - CommunityCarDocs("Honda Odyssey 2021-25", "All"), - CommunityCarDocs("Honda Pilot 2023-24", "All"), - ], - ) - - EXTRA_HYUNDAI = ExtraPlatformConfig( - [ - CommunityCarDocs("Hyundai Palisade 2023-24", package="HDA2"), - CommunityCarDocs("Kia Telluride 2023-24", package="HDA2"), - ], - ) - - EXTRA_TOYOTA = ExtraPlatformConfig( - [ - ToyotaSecurityCarDocs("Subaru Solterra 2023-25"), - ToyotaSecurityCarDocs("Lexus NS 2022-25"), - ToyotaSecurityCarDocs("Toyota bZ4x 2023-25"), - ToyotaSecurityCarDocs("Toyota Camry 2025"), - ToyotaSecurityCarDocs("Toyota Corolla Cross 2022-25"), - ToyotaSecurityCarDocs("Toyota Highlander 2025"), - ToyotaSecurityCarDocs("Toyota RAV4 Prime 2024-25"), - ToyotaSecurityCarDocs("Toyota Sequoia 2023-25"), - ToyotaSecurityCarDocs("Toyota Sienna 2024-25"), - ToyotaSecurityCarDocs("Toyota Tundra 2022-25"), - ToyotaSecurityCarDocs("Toyota Venza 2021-25"), - ], - ) - - EXTRA_VOLKSWAGEN = ExtraPlatformConfig( - [ - FlexRayCarDocs("Audi A4 2016-24", package="All"), - FlexRayCarDocs("Audi A5 2016-24", package="All"), - FlexRayCarDocs("Audi Q5 2017-24", package="All"), - ], - ) diff --git a/opendbc_repo/opendbc/car/fingerprints.py b/opendbc_repo/opendbc/car/fingerprints.py deleted file mode 100644 index a3d5227b25..0000000000 --- a/opendbc_repo/opendbc/car/fingerprints.py +++ /dev/null @@ -1,362 +0,0 @@ -from opendbc.car.interfaces import get_interface_attr -from opendbc.car.body.values import CAR as BODY -from opendbc.car.chrysler.values import CAR as CHRYSLER -from opendbc.car.ford.values import CAR as FORD -from opendbc.car.gm.values import CAR as GM -from opendbc.car.honda.values import CAR as HONDA -from opendbc.car.hyundai.values import CAR as HYUNDAI -from opendbc.car.mazda.values import CAR as MAZDA -from opendbc.car.mock.values import CAR as MOCK -from opendbc.car.nissan.values import CAR as NISSAN -from opendbc.car.subaru.values import CAR as SUBARU -from opendbc.car.toyota.values import CAR as TOYOTA -from opendbc.car.volkswagen.values import CAR as VW - -FW_VERSIONS = get_interface_attr('FW_VERSIONS', combine_brands=True, ignore_none=True) -_FINGERPRINTS = get_interface_attr('FINGERPRINTS', combine_brands=True, ignore_none=True) - -# Add BMW fingerprints from selfdrive (not in opendbc yet) -try: - from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS as BMW_FINGERPRINTS - _FINGERPRINTS.update(BMW_FINGERPRINTS) -except ImportError: - pass - -_DEBUG_ADDRESS = {1880: 8} # reserved for debug purposes - - -def is_valid_for_fingerprint(msg, car_fingerprint: dict[int, int]): - adr = msg.address - # ignore addresses that are more than 11 bits - return (adr in car_fingerprint and car_fingerprint[adr] == len(msg.dat)) or adr >= 0x800 - - -def eliminate_incompatible_cars(msg, candidate_cars): - """Removes cars that could not have sent msg. - - Inputs: - msg: A cereal/log CanData message from the car. - candidate_cars: A list of cars to consider. - - Returns: - A list containing the subset of candidate_cars that could have sent msg. - """ - compatible_cars = [] - - for car_name in candidate_cars: - car_fingerprints = _FINGERPRINTS[car_name] - - for fingerprint in car_fingerprints: - # add alien debug address - if is_valid_for_fingerprint(msg, fingerprint | _DEBUG_ADDRESS): - compatible_cars.append(car_name) - break - - return compatible_cars - - -def all_legacy_fingerprint_cars(): - """Returns a list of all known car strings, FPv1 only.""" - return list(_FINGERPRINTS.keys()) - - -# A dict that maps old platform strings to their latest representations -MIGRATION = { - "ACURA ILX 2016 ACURAWATCH PLUS": HONDA.ACURA_ILX, - "ACURA RDX 2018 ACURAWATCH PLUS": HONDA.ACURA_RDX, - "ACURA RDX 2020 TECH": HONDA.ACURA_RDX_3G, - "AUDI A3": VW.AUDI_A3_MK3, - "HONDA ACCORD 2018 HYBRID TOURING": HONDA.HONDA_ACCORD, - "HONDA ACCORD 1.5T 2018": HONDA.HONDA_ACCORD, - "HONDA ACCORD 2018 LX 1.5T": HONDA.HONDA_ACCORD, - "HONDA ACCORD 2018 SPORT 2T": HONDA.HONDA_ACCORD, - "HONDA ACCORD 2T 2018": HONDA.HONDA_ACCORD, - "HONDA ACCORD HYBRID 2018": HONDA.HONDA_ACCORD, - "HONDA CIVIC 2016 TOURING": HONDA.HONDA_CIVIC, - "HONDA CIVIC HATCHBACK 2017 SEDAN/COUPE 2019": HONDA.HONDA_CIVIC_BOSCH, - "HONDA CIVIC SEDAN 1.6 DIESEL": HONDA.HONDA_CIVIC_BOSCH_DIESEL, - "HONDA CR-V 2016 EXECUTIVE": HONDA.HONDA_CRV_EU, - "HONDA CR-V 2016 TOURING": HONDA.HONDA_CRV, - "HONDA CR-V 2017 EX": HONDA.HONDA_CRV_5G, - "HONDA CR-V 2019 HYBRID": HONDA.HONDA_CRV_HYBRID, - "HONDA FIT 2018 EX": HONDA.HONDA_FIT, - "HONDA HRV 2019 TOURING": HONDA.HONDA_HRV, - "HONDA INSIGHT 2019 TOURING": HONDA.HONDA_INSIGHT, - "HONDA ODYSSEY 2018 EX-L": HONDA.HONDA_ODYSSEY, - "HONDA ODYSSEY 2019 EXCLUSIVE CHN": HONDA.HONDA_ODYSSEY_CHN, - "HONDA PILOT 2017 TOURING": HONDA.HONDA_PILOT, - "HONDA PILOT 2019 ELITE": HONDA.HONDA_PILOT, - "HONDA PILOT 2019": HONDA.HONDA_PILOT, - "HONDA PASSPORT 2021": HONDA.HONDA_PILOT, - "HONDA RIDGELINE 2017 BLACK EDITION": HONDA.HONDA_RIDGELINE, - "HYUNDAI ELANTRA LIMITED ULTIMATE 2017": HYUNDAI.HYUNDAI_ELANTRA, - "HYUNDAI SANTA FE LIMITED 2019": HYUNDAI.HYUNDAI_SANTA_FE, - "HYUNDAI TUCSON DIESEL 2019": HYUNDAI.HYUNDAI_TUCSON, - "KIA OPTIMA 2016": HYUNDAI.KIA_OPTIMA_G4, - "KIA OPTIMA 2019": HYUNDAI.KIA_OPTIMA_G4_FL, - "KIA OPTIMA SX 2019 & 2016": HYUNDAI.KIA_OPTIMA_G4_FL, - "LEXUS CT 200H 2018": TOYOTA.LEXUS_CTH, - "LEXUS ES 300H 2018": TOYOTA.LEXUS_ES, - "LEXUS ES 300H 2019": TOYOTA.LEXUS_ES_TSS2, - "LEXUS IS300 2018": TOYOTA.LEXUS_IS, - "LEXUS NX300 2018": TOYOTA.LEXUS_NX, - "LEXUS NX300H 2018": TOYOTA.LEXUS_NX, - "LEXUS RX 350 2016": TOYOTA.LEXUS_RX, - "LEXUS RX350 2020": TOYOTA.LEXUS_RX_TSS2, - "LEXUS RX450 HYBRID 2020": TOYOTA.LEXUS_RX_TSS2, - "TOYOTA SIENNA XLE 2018": TOYOTA.TOYOTA_SIENNA, - "TOYOTA C-HR HYBRID 2018": TOYOTA.TOYOTA_CHR, - "TOYOTA COROLLA HYBRID TSS2 2019": TOYOTA.TOYOTA_COROLLA_TSS2, - "TOYOTA RAV4 HYBRID 2019": TOYOTA.TOYOTA_RAV4_TSS2, - "LEXUS ES HYBRID 2019": TOYOTA.LEXUS_ES_TSS2, - "LEXUS NX HYBRID 2018": TOYOTA.LEXUS_NX, - "LEXUS NX HYBRID 2020": TOYOTA.LEXUS_NX_TSS2, - "LEXUS RX HYBRID 2020": TOYOTA.LEXUS_RX_TSS2, - "TOYOTA ALPHARD HYBRID 2021": TOYOTA.TOYOTA_ALPHARD_TSS2, - "TOYOTA AVALON HYBRID 2019": TOYOTA.TOYOTA_AVALON_2019, - "TOYOTA AVALON HYBRID 2022": TOYOTA.TOYOTA_AVALON_TSS2, - "TOYOTA CAMRY HYBRID 2018": TOYOTA.TOYOTA_CAMRY, - "TOYOTA CAMRY HYBRID 2021": TOYOTA.TOYOTA_CAMRY_TSS2, - "TOYOTA C-HR HYBRID 2022": TOYOTA.TOYOTA_CHR_TSS2, - "TOYOTA HIGHLANDER HYBRID 2020": TOYOTA.TOYOTA_HIGHLANDER_TSS2, - "TOYOTA RAV4 HYBRID 2022": TOYOTA.TOYOTA_RAV4_TSS2_2022, - "TOYOTA RAV4 HYBRID 2023": TOYOTA.TOYOTA_RAV4_TSS2_2023, - "TOYOTA HIGHLANDER HYBRID 2018": TOYOTA.TOYOTA_HIGHLANDER, - "LEXUS ES HYBRID 2018": TOYOTA.LEXUS_ES, - "LEXUS RX HYBRID 2017": TOYOTA.LEXUS_RX, - "HYUNDAI TUCSON HYBRID 4TH GEN": HYUNDAI.HYUNDAI_TUCSON_4TH_GEN, - "KIA SPORTAGE HYBRID 5TH GEN": HYUNDAI.KIA_SPORTAGE_5TH_GEN, - "KIA SORENTO PLUG-IN HYBRID 4TH GEN": HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, - "CADILLAC ESCALADE ESV PLATINUM 2019": GM.CADILLAC_ESCALADE_ESV_2019, - - # Removal of platform_str, see https://github.com/commaai/openpilot/pull/31868/ - "COMMA BODY": BODY.COMMA_BODY, - "CHRYSLER PACIFICA HYBRID 2017": CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID, - "CHRYSLER_PACIFICA_2017_HYBRID": CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID, - "CHRYSLER PACIFICA HYBRID 2018": CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID, - "CHRYSLER PACIFICA HYBRID 2019": CHRYSLER.CHRYSLER_PACIFICA_2019_HYBRID, - "CHRYSLER PACIFICA 2018": CHRYSLER.CHRYSLER_PACIFICA_2018, - "CHRYSLER PACIFICA 2020": CHRYSLER.CHRYSLER_PACIFICA_2020, - "DODGE DURANGO 2021": CHRYSLER.DODGE_DURANGO, - "JEEP GRAND CHEROKEE V6 2018": CHRYSLER.JEEP_GRAND_CHEROKEE, - "JEEP GRAND CHEROKEE 2019": CHRYSLER.JEEP_GRAND_CHEROKEE_2019, - "RAM 1500 5TH GEN": CHRYSLER.RAM_1500_5TH_GEN, - "RAM HD 5TH GEN": CHRYSLER.RAM_HD_5TH_GEN, - "FORD BRONCO SPORT 1ST GEN": FORD.FORD_BRONCO_SPORT_MK1, - "FORD ESCAPE 4TH GEN": FORD.FORD_ESCAPE_MK4, - "FORD EXPLORER 6TH GEN": FORD.FORD_EXPLORER_MK6, - "FORD F-150 14TH GEN": FORD.FORD_F_150_MK14, - "FORD F-150 LIGHTNING 1ST GEN": FORD.FORD_F_150_LIGHTNING_MK1, - "FORD FOCUS 4TH GEN": FORD.FORD_FOCUS_MK4, - "FORD MAVERICK 1ST GEN": FORD.FORD_MAVERICK_MK1, - "FORD MUSTANG MACH-E 1ST GEN": FORD.FORD_MUSTANG_MACH_E_MK1, - "HOLDEN ASTRA RS-V BK 2017": GM.HOLDEN_ASTRA, - "CHEVROLET VOLT PREMIER 2017": GM.CHEVROLET_VOLT, - "CADILLAC ATS Premium Performance 2018": GM.CADILLAC_ATS, - "CHEVROLET MALIBU PREMIER 2017": GM.CHEVROLET_MALIBU, - "GMC ACADIA DENALI 2018": GM.GMC_ACADIA, - "BUICK LACROSSE 2017": GM.BUICK_LACROSSE, - "BUICK REGAL ESSENCE 2018": GM.BUICK_REGAL, - "CADILLAC ESCALADE 2017": GM.CADILLAC_ESCALADE, - "CADILLAC ESCALADE ESV 2016": GM.CADILLAC_ESCALADE_ESV, - "CADILLAC ESCALADE ESV 2019": GM.CADILLAC_ESCALADE_ESV_2019, - "CHEVROLET BOLT EUV 2022": GM.CHEVROLET_BOLT_EUV, - "CHEVROLET SILVERADO 1500 2020": GM.CHEVROLET_SILVERADO, - "CHEVROLET EQUINOX 2019": GM.CHEVROLET_EQUINOX, - "CHEVROLET TRAILBLAZER 2021": GM.CHEVROLET_TRAILBLAZER, - "HONDA ACCORD 2018": HONDA.HONDA_ACCORD, - "HONDA CIVIC (BOSCH) 2019": HONDA.HONDA_CIVIC_BOSCH, - "HONDA CIVIC SEDAN 1.6 DIESEL 2019": HONDA.HONDA_CIVIC_BOSCH_DIESEL, - "HONDA CIVIC 2022": HONDA.HONDA_CIVIC_2022, - "HONDA CR-V 2017": HONDA.HONDA_CRV_5G, - "HONDA CR-V HYBRID 2019": HONDA.HONDA_CRV_HYBRID, - "HONDA HR-V 2023": HONDA.HONDA_HRV_3G, - "ACURA RDX 2020": HONDA.ACURA_RDX_3G, - "HONDA INSIGHT 2019": HONDA.HONDA_INSIGHT, - "HONDA E 2020": HONDA.HONDA_E, - "ACURA ILX 2016": HONDA.ACURA_ILX, - "HONDA CR-V 2016": HONDA.HONDA_CRV, - "HONDA CR-V EU 2016": HONDA.HONDA_CRV_EU, - "HONDA FIT 2018": HONDA.HONDA_FIT, - "HONDA FREED 2020": HONDA.HONDA_FREED, - "HONDA HRV 2019": HONDA.HONDA_HRV, - "HONDA ODYSSEY 2018": HONDA.HONDA_ODYSSEY, - "HONDA ODYSSEY CHN 2019": HONDA.HONDA_ODYSSEY_CHN, - "ACURA RDX 2018": HONDA.ACURA_RDX, - "HONDA PILOT 2017": HONDA.HONDA_PILOT, - "HONDA RIDGELINE 2017": HONDA.HONDA_RIDGELINE, - "HONDA CIVIC 2016": HONDA.HONDA_CIVIC, - "HYUNDAI AZERA 7TH GEN": HYUNDAI.HYUNDAI_AZERA_7TH_GEN, - "HYUNDAI AZERA 6TH GEN": HYUNDAI.HYUNDAI_AZERA_6TH_GEN, - "HYUNDAI AZERA HYBRID 6TH GEN": HYUNDAI.HYUNDAI_AZERA_HEV_6TH_GEN, - "HYUNDAI ELANTRA 2017": HYUNDAI.HYUNDAI_ELANTRA, - "HYUNDAI I30 N LINE 2019 & GT 2018 DCT": HYUNDAI.HYUNDAI_ELANTRA_GT_I30, - "HYUNDAI ELANTRA 2021": HYUNDAI.HYUNDAI_ELANTRA_2021, - "HYUNDAI ELANTRA HYBRID 2021": HYUNDAI.HYUNDAI_ELANTRA_HEV_2021, - "HYUNDAI GENESIS 2015-2016": HYUNDAI.HYUNDAI_GENESIS, - "HYUNDAI IONIQ HYBRID 2017-2019": HYUNDAI.HYUNDAI_IONIQ, - "HYUNDAI IONIQ HYBRID 2020-2022": HYUNDAI.HYUNDAI_IONIQ_HEV_2022, - "HYUNDAI IONIQ ELECTRIC LIMITED 2019": HYUNDAI.HYUNDAI_IONIQ_EV_LTD, - "HYUNDAI IONIQ ELECTRIC 2020": HYUNDAI.HYUNDAI_IONIQ_EV_2020, - "HYUNDAI IONIQ PLUG-IN HYBRID 2019": HYUNDAI.HYUNDAI_IONIQ_PHEV_2019, - "HYUNDAI IONIQ PHEV 2020": HYUNDAI.HYUNDAI_IONIQ_PHEV, - "HYUNDAI KONA 2020": HYUNDAI.HYUNDAI_KONA, - "HYUNDAI KONA ELECTRIC 2019": HYUNDAI.HYUNDAI_KONA_EV, - "HYUNDAI KONA ELECTRIC 2022": HYUNDAI.HYUNDAI_KONA_EV_2022, - "HYUNDAI KONA ELECTRIC 2ND GEN": HYUNDAI.HYUNDAI_KONA_EV_2ND_GEN, - "HYUNDAI KONA HYBRID 2020": HYUNDAI.HYUNDAI_KONA_HEV, - "HYUNDAI KONA HYBRID 2ND GEN": HYUNDAI.HYUNDAI_KONA_HEV_2ND_GEN, - "HYUNDAI SANTA FE 2019": HYUNDAI.HYUNDAI_SANTA_FE, - "HYUNDAI SANTA FE 2022": HYUNDAI.HYUNDAI_SANTA_FE_2022, - "HYUNDAI SANTA FE HYBRID 2022": HYUNDAI.HYUNDAI_SANTA_FE_HEV_2022, - "HYUNDAI SANTA FE PlUG-IN HYBRID 2022": HYUNDAI.HYUNDAI_SANTA_FE_PHEV_2022, - "HYUNDAI SONATA 2020": HYUNDAI.HYUNDAI_SONATA, - "HYUNDAI SONATA 2019": HYUNDAI.HYUNDAI_SONATA_LF, - "HYUNDAI STARIA 4TH GEN": HYUNDAI.HYUNDAI_STARIA_4TH_GEN, - "HYUNDAI TUCSON 2019": HYUNDAI.HYUNDAI_TUCSON, - "HYUNDAI PALISADE 2020": HYUNDAI.HYUNDAI_PALISADE, - "HYUNDAI VELOSTER 2019": HYUNDAI.HYUNDAI_VELOSTER, - "HYUNDAI SONATA HYBRID 2021": HYUNDAI.HYUNDAI_SONATA_HYBRID, - "HYUNDAI SONATA 2024": HYUNDAI.HYUNDAI_SONATA_2024, - "HYUNDAI IONIQ 5 2022": HYUNDAI.HYUNDAI_IONIQ_5, - "HYUNDAI IONIQ 5 PE (NE1)": HYUNDAI.HYUNDAI_IONIQ_5_PE, - "HYUNDAI IONIQ 6 2023": HYUNDAI.HYUNDAI_IONIQ_6, - "HYUNDAI IONIQ 9 2025": HYUNDAI.HYUNDAI_IONIQ_9, - "HYUNDAI TUCSON 4TH GEN": HYUNDAI.HYUNDAI_TUCSON_4TH_GEN, - "HYUNDAI SANTA CRUZ 1ST GEN": HYUNDAI.HYUNDAI_SANTA_CRUZ_1ST_GEN, - "HYUNDAI CUSTIN 1ST GEN": HYUNDAI.HYUNDAI_CUSTIN_1ST_GEN, - "HYUNDAI CASPER (AX1)": HYUNDAI.HYUNDAI_CASPER, - "HYUNDAI SANTAFE (MX5)": HYUNDAI.HYUNDAI_SANTAFE_MX5, - "HYUNDAI SANTAFE HYBRID (MX5)": HYUNDAI.HYUNDAI_SANTAFE_MX5_HEV, - "HYUNDAI PORTER II EV 2024": HYUNDAI.HYUNDAI_PORTER_II_EV, - "HYUNDAI NEXO 1ST GEN": HYUNDAI.HYUNDAI_NEXO_1ST_GEN, - "KIA FORTE E 2018 & GT 2021": HYUNDAI.KIA_FORTE, - "KIA K5 2021": HYUNDAI.KIA_K5_2021, - "KIA K5 HYBRID 2020": HYUNDAI.KIA_K5_HEV_2020, - "KIA K5 2024 (DL3)": HYUNDAI.KIA_K5_DL3_24, - "KIA K5 HYBRID 2024 (DL3)": HYUNDAI.KIA_K5_DL3_24_HEV, - "KIA K8 HYBRID 1ST GEN": HYUNDAI.KIA_K8_HEV_1ST_GEN, - "KIA NIRO EV 2020": HYUNDAI.KIA_NIRO_EV, - "KIA NIRO EV 2ND GEN": HYUNDAI.KIA_NIRO_EV_2ND_GEN, - "KIA NIRO HYBRID 2019": HYUNDAI.KIA_NIRO_PHEV, - "KIA NIRO PLUG-IN HYBRID 2022": HYUNDAI.KIA_NIRO_PHEV_2022, - "KIA NIRO HYBRID 2021": HYUNDAI.KIA_NIRO_HEV_2021, - "KIA NIRO HYBRID 2ND GEN": HYUNDAI.KIA_NIRO_HEV_2ND_GEN, - "KIA OPTIMA 4TH GEN": HYUNDAI.KIA_OPTIMA_G4, - "KIA OPTIMA 4TH GEN FACELIFT": HYUNDAI.KIA_OPTIMA_G4_FL, - "KIA OPTIMA HYBRID 2017 & SPORTS 2019": HYUNDAI.KIA_OPTIMA_H, - "KIA OPTIMA HYBRID 4TH GEN FACELIFT": HYUNDAI.KIA_OPTIMA_H_G4_FL, - "KIA SELTOS 2021": HYUNDAI.KIA_SELTOS, - "KIA SPORTAGE 5TH GEN": HYUNDAI.KIA_SPORTAGE_5TH_GEN, - "KIA SORENTO GT LINE 2018": HYUNDAI.KIA_SORENTO, - "KIA SORENTO 4TH GEN": HYUNDAI.KIA_SORENTO_4TH_GEN, - "KIA SORENTO HYBRID 4TH GEN": HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, - "KIA STINGER GT2 2018": HYUNDAI.KIA_STINGER, - "KIA STINGER 2022": HYUNDAI.KIA_STINGER_2022, - "KIA CEED INTRO ED 2019": HYUNDAI.KIA_CEED, - "KIA EV6 2022": HYUNDAI.KIA_EV6, - "KIA EV6 PE (CV1)": HYUNDAI.KIA_EV6_PE, - "KIA CARNIVAL 4TH GEN": HYUNDAI.KIA_CARNIVAL_4TH_GEN, - "KIA EV9 (MV)": HYUNDAI.KIA_EV9, - "KIA EV3 (SV1)": HYUNDAI.KIA_EV3, - "GENESIS GV60 ELECTRIC 1ST GEN": HYUNDAI.GENESIS_GV60_EV_1ST_GEN, - "GENESIS G70 2018": HYUNDAI.GENESIS_G70, - "GENESIS G70 2020": HYUNDAI.GENESIS_G70_2020, - "GENESIS GV70 1ST GEN": HYUNDAI.GENESIS_GV70_1ST_GEN, - "GENESIS G80 2017": HYUNDAI.GENESIS_G80, - "GENESIS G90 2017": HYUNDAI.GENESIS_G90, - "GENESIS GV80 2023": HYUNDAI.GENESIS_GV80, - "MAZDA CX-5": MAZDA.MAZDA_CX5, - "MAZDA CX-9": MAZDA.MAZDA_CX9, - "MAZDA 3": MAZDA.MAZDA_3, - "MAZDA 6": MAZDA.MAZDA_6, - "MAZDA CX-9 2021": MAZDA.MAZDA_CX9_2021, - "MAZDA CX-5 2022": MAZDA.MAZDA_CX5_2022, - "NISSAN X-TRAIL 2017": NISSAN.NISSAN_XTRAIL, - "NISSAN LEAF 2018": NISSAN.NISSAN_LEAF, - "NISSAN LEAF 2018 Instrument Cluster": NISSAN.NISSAN_LEAF_IC, - "NISSAN ROGUE 2019": NISSAN.NISSAN_ROGUE, - "NISSAN ALTIMA 2020": NISSAN.NISSAN_ALTIMA, - "SUBARU ASCENT LIMITED 2019": SUBARU.SUBARU_ASCENT, - "SUBARU OUTBACK 6TH GEN": SUBARU.SUBARU_OUTBACK, - "SUBARU LEGACY 7TH GEN": SUBARU.SUBARU_LEGACY, - "SUBARU IMPREZA LIMITED 2019": SUBARU.SUBARU_IMPREZA, - "SUBARU IMPREZA SPORT 2020": SUBARU.SUBARU_IMPREZA_2020, - "SUBARU CROSSTREK HYBRID 2020": SUBARU.SUBARU_CROSSTREK_HYBRID, - "SUBARU FORESTER 2019": SUBARU.SUBARU_FORESTER, - "SUBARU FORESTER HYBRID 2020": SUBARU.SUBARU_FORESTER_HYBRID, - "SUBARU FORESTER 2017 - 2018": SUBARU.SUBARU_FORESTER_PREGLOBAL, - "SUBARU LEGACY 2015 - 2018": SUBARU.SUBARU_LEGACY_PREGLOBAL, - "SUBARU OUTBACK 2015 - 2017": SUBARU.SUBARU_OUTBACK_PREGLOBAL, - "SUBARU OUTBACK 2018 - 2019": SUBARU.SUBARU_OUTBACK_PREGLOBAL_2018, - "SUBARU FORESTER 2022": SUBARU.SUBARU_FORESTER_2022, - "SUBARU OUTBACK 7TH GEN": SUBARU.SUBARU_OUTBACK_2023, - "SUBARU ASCENT 2023": SUBARU.SUBARU_ASCENT_2023, - "TOYOTA ALPHARD 2020": TOYOTA.TOYOTA_ALPHARD_TSS2, - "TOYOTA AVALON 2016": TOYOTA.TOYOTA_AVALON, - "TOYOTA AVALON 2019": TOYOTA.TOYOTA_AVALON_2019, - "TOYOTA AVALON 2022": TOYOTA.TOYOTA_AVALON_TSS2, - "TOYOTA CAMRY 2018": TOYOTA.TOYOTA_CAMRY, - "TOYOTA CAMRY 2021": TOYOTA.TOYOTA_CAMRY_TSS2, - "TOYOTA C-HR 2018": TOYOTA.TOYOTA_CHR, - "TOYOTA C-HR 2021": TOYOTA.TOYOTA_CHR_TSS2, - "TOYOTA COROLLA 2017": TOYOTA.TOYOTA_COROLLA, - "TOYOTA COROLLA TSS2 2019": TOYOTA.TOYOTA_COROLLA_TSS2, - "TOYOTA HIGHLANDER 2017": TOYOTA.TOYOTA_HIGHLANDER, - "TOYOTA HIGHLANDER 2020": TOYOTA.TOYOTA_HIGHLANDER_TSS2, - "TOYOTA PRIUS 2017": TOYOTA.TOYOTA_PRIUS, - "TOYOTA PRIUS v 2017": TOYOTA.TOYOTA_PRIUS_V, - "TOYOTA PRIUS TSS2 2021": TOYOTA.TOYOTA_PRIUS_TSS2, - "TOYOTA RAV4 2017": TOYOTA.TOYOTA_RAV4, - "TOYOTA RAV4 HYBRID 2017": TOYOTA.TOYOTA_RAV4H, - "TOYOTA RAV4 2019": TOYOTA.TOYOTA_RAV4_TSS2, - "TOYOTA RAV4 2022": TOYOTA.TOYOTA_RAV4_TSS2_2022, - "TOYOTA RAV4 2023": TOYOTA.TOYOTA_RAV4_TSS2_2023, - "TOYOTA MIRAI 2021": TOYOTA.TOYOTA_MIRAI, - "TOYOTA SIENNA 2018": TOYOTA.TOYOTA_SIENNA, - "LEXUS CT HYBRID 2018": TOYOTA.LEXUS_CTH, - "LEXUS ES 2018": TOYOTA.LEXUS_ES, - "LEXUS ES 2019": TOYOTA.LEXUS_ES_TSS2, - "LEXUS IS 2018": TOYOTA.LEXUS_IS, - "LEXUS IS 2023": TOYOTA.LEXUS_IS_TSS2, - "LEXUS NX 2018": TOYOTA.LEXUS_NX, - "LEXUS NX 2020": TOYOTA.LEXUS_NX_TSS2, - "LEXUS LC 2024": TOYOTA.LEXUS_LC_TSS2, - "LEXUS RC 2020": TOYOTA.LEXUS_RC, - "LEXUS RX 2016": TOYOTA.LEXUS_RX, - "LEXUS RX 2020": TOYOTA.LEXUS_RX_TSS2, - "LEXUS GS F 2016": TOYOTA.LEXUS_GS_F, - "VOLKSWAGEN ARTEON 1ST GEN": VW.VOLKSWAGEN_ARTEON_MK1, - "VOLKSWAGEN ATLAS 1ST GEN": VW.VOLKSWAGEN_ATLAS_MK1, - "VOLKSWAGEN CADDY 3RD GEN": VW.VOLKSWAGEN_CADDY_MK3, - "VOLKSWAGEN CRAFTER 2ND GEN": VW.VOLKSWAGEN_CRAFTER_MK2, - "VOLKSWAGEN GOLF 7TH GEN": VW.VOLKSWAGEN_GOLF_MK7, - "VOLKSWAGEN JETTA 6TH GEN": VW.VOLKSWAGEN_JETTA_MK6, - "VOLKSWAGEN JETTA 7TH GEN": VW.VOLKSWAGEN_JETTA_MK7, - "VOLKSWAGEN PASSAT 8TH GEN": VW.VOLKSWAGEN_PASSAT_MK8, - "VOLKSWAGEN PASSAT NMS": VW.VOLKSWAGEN_PASSAT_NMS, - "VOLKSWAGEN POLO 6TH GEN": VW.VOLKSWAGEN_POLO_MK6, - "VOLKSWAGEN SHARAN 2ND GEN": VW.VOLKSWAGEN_SHARAN_MK2, - "VOLKSWAGEN TAOS 1ST GEN": VW.VOLKSWAGEN_TAOS_MK1, - "VOLKSWAGEN T-CROSS 1ST GEN": VW.VOLKSWAGEN_TCROSS_MK1, - "VOLKSWAGEN TIGUAN 2ND GEN": VW.VOLKSWAGEN_TIGUAN_MK2, - "VOLKSWAGEN TOURAN 2ND GEN": VW.VOLKSWAGEN_TOURAN_MK2, - "VOLKSWAGEN TRANSPORTER T6.1": VW.VOLKSWAGEN_TRANSPORTER_T61, - "VOLKSWAGEN T-ROC 1ST GEN": VW.VOLKSWAGEN_TROC_MK1, - "AUDI A3 3RD GEN": VW.AUDI_A3_MK3, - "AUDI Q2 1ST GEN": VW.AUDI_Q2_MK1, - "AUDI Q3 2ND GEN": VW.AUDI_Q3_MK2, - "SEAT ATECA 1ST GEN": VW.SEAT_ATECA_MK1, - "SEAT LEON 3RD GEN": VW.SEAT_ATECA_MK1, - "SEAT_LEON_MK3": VW.SEAT_ATECA_MK1, - "SKODA FABIA 4TH GEN": VW.SKODA_FABIA_MK4, - "SKODA KAMIQ 1ST GEN": VW.SKODA_KAMIQ_MK1, - "SKODA KAROQ 1ST GEN": VW.SKODA_KAROQ_MK1, - "SKODA KODIAQ 1ST GEN": VW.SKODA_KODIAQ_MK1, - "SKODA OCTAVIA 3RD GEN": VW.SKODA_OCTAVIA_MK3, - "SKODA SCALA 1ST GEN": VW.SKODA_KAMIQ_MK1, - "SKODA_SCALA_MK1": VW.SKODA_KAMIQ_MK1, - "SKODA SUPERB 3RD GEN": VW.SKODA_SUPERB_MK3, - - "mock": MOCK.MOCK, -} diff --git a/opendbc_repo/opendbc/car/ford/__init__.py b/opendbc_repo/opendbc/car/ford/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/ford/carcontroller.py b/opendbc_repo/opendbc/car/ford/carcontroller.py deleted file mode 100644 index 1f5644cbe0..0000000000 --- a/opendbc_repo/opendbc/car/ford/carcontroller.py +++ /dev/null @@ -1,179 +0,0 @@ -import math -import numpy as np -from opendbc.can.packer import CANPacker -from opendbc.car import ACCELERATION_DUE_TO_GRAVITY, Bus, DT_CTRL, apply_std_steer_angle_limits, structs -from opendbc.car.ford import fordcan -from opendbc.car.ford.values import CarControllerParams, FordFlags -from opendbc.car.interfaces import CarControllerBase, V_CRUISE_MAX - -LongCtrlState = structs.CarControl.Actuators.LongControlState -VisualAlert = structs.CarControl.HUDControl.VisualAlert - -# ISO 11270 -ISO_LATERAL_ACCEL = 3.0 # m/s^2 # TODO: import from test lateral limits file? - -# Limit to average banked road since safety doesn't have the roll -EARTH_G = 9.81 -AVERAGE_ROAD_ROLL = 0.06 # ~3.4 degrees, 6% superelevation -MAX_LATERAL_ACCEL = ISO_LATERAL_ACCEL - (EARTH_G * AVERAGE_ROAD_ROLL) # ~2.4 m/s^2 - - -def apply_ford_curvature_limits(apply_curvature, apply_curvature_last, current_curvature, v_ego_raw, steering_angle, lat_active, CP): - # No blending at low speed due to lack of torque wind-up and inaccurate current curvature - if v_ego_raw > 9: - apply_curvature = np.clip(apply_curvature, current_curvature - CarControllerParams.CURVATURE_ERROR, - current_curvature + CarControllerParams.CURVATURE_ERROR) - - # Curvature rate limit after driver torque limit - apply_curvature = apply_std_steer_angle_limits(apply_curvature, apply_curvature_last, v_ego_raw, steering_angle, lat_active, CarControllerParams.ANGLE_LIMITS) - - # Ford Q4/CAN FD has more torque available compared to Q3/CAN so we limit it based on lateral acceleration. - # Safety is not aware of the road roll so we subtract a conservative amount at all times - if CP.flags & FordFlags.CANFD: - # Limit curvature to conservative max lateral acceleration - curvature_accel_limit = MAX_LATERAL_ACCEL / (max(v_ego_raw, 1) ** 2) - apply_curvature = float(np.clip(apply_curvature, -curvature_accel_limit, curvature_accel_limit)) - - return apply_curvature - - -def apply_creep_compensation(accel: float, v_ego: float) -> float: - creep_accel = np.interp(v_ego, [1., 3.], [0.6, 0.]) - creep_accel = np.interp(accel, [0., 0.2], [creep_accel, 0.]) - accel -= creep_accel - return float(accel) - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.packer = CANPacker(dbc_names[Bus.pt]) - self.CAN = fordcan.CanBus(CP) - - self.apply_curvature_last = 0 - self.accel = 0.0 - self.gas = 0.0 - self.brake_request = False - self.main_on_last = False - self.lkas_enabled_last = False - self.steer_alert_last = False - self.lead_distance_bars_last = None - self.distance_bar_frame = 0 - - def update(self, CC, CS, now_nanos): - can_sends = [] - - actuators = CC.actuators - hud_control = CC.hudControl - - main_on = CS.out.cruiseState.available - steer_alert = hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw) - fcw_alert = hud_control.visualAlert == VisualAlert.fcw - - ### acc buttons ### - if CC.cruiseControl.cancel: - can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.camera, CS.buttons_stock_values, cancel=True)) - can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.main, CS.buttons_stock_values, cancel=True)) - elif CC.cruiseControl.resume and (self.frame % CarControllerParams.BUTTONS_STEP) == 0: - can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.camera, CS.buttons_stock_values, resume=True)) - can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.main, CS.buttons_stock_values, resume=True)) - # if stock lane centering isn't off, send a button press to toggle it off - # the stock system checks for steering pressed, and eventually disengages cruise control - elif CS.acc_tja_status_stock_values["Tja_D_Stat"] != 0 and (self.frame % CarControllerParams.ACC_UI_STEP) == 0: - can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.camera, CS.buttons_stock_values, tja_toggle=True)) - - ### lateral control ### - # send steer msg at 20Hz - if (self.frame % CarControllerParams.STEER_STEP) == 0: - # apply rate limits, curvature error limit, and clip to signal range - current_curvature = -CS.out.yawRate / max(CS.out.vEgoRaw, 0.1) - self.apply_curvature_last = apply_ford_curvature_limits(actuators.curvature, self.apply_curvature_last, current_curvature, - CS.out.vEgoRaw, 0., CC.latActive, self.CP) - - if self.CP.flags & FordFlags.CANFD: - # TODO: extended mode - # Ford uses four individual signals to dictate how to drive to the car. Curvature alone (limited to 0.02m/s^2) - # can actuate the steering for a large portion of any lateral movements. However, in order to get further control on - # steer actuation, the other three signals are necessary. Ford controls vehicles differently than most other makes. - # A detailed explanation on ford control can be found here: - # https://www.f150gen14.com/forum/threads/introducing-bluepilot-a-ford-specific-fork-for-comma3x-openpilot.24241/#post-457706 - mode = 1 if CC.latActive else 0 - counter = (self.frame // CarControllerParams.STEER_STEP) % 0x10 - can_sends.append(fordcan.create_lat_ctl2_msg(self.packer, self.CAN, mode, 0., 0., -self.apply_curvature_last, 0., counter)) - else: - can_sends.append(fordcan.create_lat_ctl_msg(self.packer, self.CAN, CC.latActive, 0., 0., -self.apply_curvature_last, 0.)) - - # send lka msg at 33Hz - if (self.frame % CarControllerParams.LKA_STEP) == 0: - can_sends.append(fordcan.create_lka_msg(self.packer, self.CAN)) - - ### longitudinal control ### - # send acc msg at 50Hz - if self.CP.openpilotLongitudinalControl and (self.frame % CarControllerParams.ACC_CONTROL_STEP) == 0: - accel = actuators.accel - gas = accel - - if CC.longActive: - # Compensate for engine creep at low speed. - # Either the ABS does not account for engine creep, or the correction is very slow - # TODO: verify this applies to EV/hybrid - accel = apply_creep_compensation(accel, CS.out.vEgo) - - # The stock system has been seen rate limiting the brake accel to 5 m/s^3, - # however even 3.5 m/s^3 causes some overshoot with a step response. - accel = max(accel, self.accel - (3.5 * CarControllerParams.ACC_CONTROL_STEP * DT_CTRL)) - - accel = float(np.clip(accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) - gas = float(np.clip(gas, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) - - # Both gas and accel are in m/s^2, accel is used solely for braking - if not CC.longActive or gas < CarControllerParams.MIN_GAS: - gas = CarControllerParams.INACTIVE_GAS - - # PCM applies pitch compensation to gas/accel, but we need to compensate for the brake/pre-charge bits - accel_due_to_pitch = 0.0 - if len(CC.orientationNED) == 3: - accel_due_to_pitch = math.sin(CC.orientationNED[1]) * ACCELERATION_DUE_TO_GRAVITY - - accel_pitch_compensated = accel + accel_due_to_pitch - if accel_pitch_compensated > 0.3 or not CC.longActive: - self.brake_request = False - elif accel_pitch_compensated < 0.0: - self.brake_request = True - - stopping = CC.actuators.longControlState == LongCtrlState.stopping - # TODO: look into using the actuators packet to send the desired speed - can_sends.append(fordcan.create_acc_msg(self.packer, self.CAN, CC.longActive, gas, accel, stopping, self.brake_request, v_ego_kph=V_CRUISE_MAX)) - - self.accel = accel - self.gas = gas - - ### ui ### - send_ui = (self.main_on_last != main_on) or (self.lkas_enabled_last != CC.latActive) or (self.steer_alert_last != steer_alert) - # send lkas ui msg at 1Hz or if ui state changes - if (self.frame % CarControllerParams.LKAS_UI_STEP) == 0 or send_ui: - can_sends.append(fordcan.create_lkas_ui_msg(self.packer, self.CAN, main_on, CC.latActive, steer_alert, hud_control, CS.lkas_status_stock_values)) - - # send acc ui msg at 5Hz or if ui state changes - if hud_control.leadDistanceBars != self.lead_distance_bars_last: - send_ui = True - self.distance_bar_frame = self.frame - - if (self.frame % CarControllerParams.ACC_UI_STEP) == 0 or send_ui: - show_distance_bars = self.frame - self.distance_bar_frame < 400 - can_sends.append(fordcan.create_acc_ui_msg(self.packer, self.CAN, self.CP, main_on, CC.latActive, - fcw_alert, CS.out.cruiseState.standstill, show_distance_bars, - hud_control, CS.acc_tja_status_stock_values)) - - self.main_on_last = main_on - self.lkas_enabled_last = CC.latActive - self.steer_alert_last = steer_alert - self.lead_distance_bars_last = hud_control.leadDistanceBars - - new_actuators = actuators.as_builder() - new_actuators.curvature = self.apply_curvature_last - new_actuators.accel = self.accel - new_actuators.gas = self.gas - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/ford/carstate.py b/opendbc_repo/opendbc/car/ford/carstate.py deleted file mode 100644 index b40ec3ebf7..0000000000 --- a/opendbc_repo/opendbc/car/ford/carstate.py +++ /dev/null @@ -1,127 +0,0 @@ -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, create_button_events, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.ford.fordcan import CanBus -from opendbc.car.ford.values import DBC, CarControllerParams, FordFlags -from opendbc.car.interfaces import CarStateBase - -ButtonType = structs.CarState.ButtonEvent.Type -GearShifter = structs.CarState.GearShifter -TransmissionType = structs.CarParams.TransmissionType - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - if CP.transmissionType == TransmissionType.automatic: - self.shifter_values = can_define.dv["PowertrainData_10"]["TrnRng_D_Rq"] - - self.distance_button = 0 - self.lc_button = 0 - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - - ret = structs.CarState() - - # Occasionally on startup, the ABS module recalibrates the steering pinion offset, so we need to block engagement - # The vehicle usually recovers out of this state within a minute of normal driving - ret.vehicleSensorsInvalid = cp.vl["SteeringPinion_Data"]["StePinCompAnEst_D_Qf"] != 3 - - # car speed - ret.vEgoRaw = cp.vl["BrakeSysFeatures"]["Veh_V_ActlBrk"] * CV.KPH_TO_MS - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.yawRate = cp.vl["Yaw_Data_FD1"]["VehYaw_W_Actl"] - ret.standstill = cp.vl["DesiredTorqBrk"]["VehStop_D_Stat"] == 1 - - # gas pedal - ret.gas = cp.vl["EngVehicleSpThrottle"]["ApedPos_Pc_ActlArb"] / 100. - ret.gasPressed = ret.gas > 1e-6 - - # brake pedal - ret.brake = cp.vl["BrakeSnData_4"]["BrkTot_Tq_Actl"] / 32756. # torque in Nm - ret.brakePressed = cp.vl["EngBrakeData"]["BpedDrvAppl_D_Actl"] == 2 - ret.parkingBrake = cp.vl["DesiredTorqBrk"]["PrkBrkStatus"] in (1, 2) - - # steering wheel - ret.steeringAngleDeg = cp.vl["SteeringPinion_Data"]["StePinComp_An_Est"] - ret.steeringTorque = cp.vl["EPAS_INFO"]["SteeringColumnTorque"] - ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > CarControllerParams.STEER_DRIVER_ALLOWANCE, 5) - ret.steerFaultTemporary = cp.vl["EPAS_INFO"]["EPAS_Failure"] == 1 - ret.steerFaultPermanent = cp.vl["EPAS_INFO"]["EPAS_Failure"] in (2, 3) - ret.espDisabled = cp.vl["Cluster_Info1_FD1"]["DrvSlipCtlMde_D_Rq"] != 0 # 0 is default mode - - if self.CP.flags & FordFlags.CANFD: - # this signal is always 0 on non-CAN FD cars - ret.steerFaultTemporary |= cp.vl["Lane_Assist_Data3_FD1"]["LatCtlSte_D_Stat"] not in (1, 2, 3) - - # cruise state - is_metric = cp.vl["INSTRUMENT_PANEL"]["METRIC_UNITS"] == 1 if not self.CP.flags & FordFlags.CANFD else False - ret.cruiseState.speed = cp.vl["EngBrakeData"]["Veh_V_DsplyCcSet"] * (CV.KPH_TO_MS if is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp.vl["EngBrakeData"]["CcStat_D_Actl"] in (4, 5) - ret.cruiseState.available = cp.vl["EngBrakeData"]["CcStat_D_Actl"] in (3, 4, 5) - 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: - gear = self.shifter_values.get(cp.vl["PowertrainData_10"]["TrnRng_D_Rq"]) - ret.gearShifter = self.parse_gear_shifter(gear) - elif self.CP.transmissionType == TransmissionType.manual: - ret.clutchPressed = cp.vl["Engine_Clutch_Data"]["CluPdlPos_Pc_Meas"] > 0 - if bool(cp.vl["BCM_Lamp_Stat_FD1"]["RvrseLghtOn_B_Stat"]): - ret.gearShifter = GearShifter.reverse - else: - ret.gearShifter = GearShifter.drive - - ret.engineRpm = cp.vl["EngVehicleSpThrottle"]["EngAout_N_Actl"] - - # safety - ret.stockFcw = bool(cp_cam.vl["ACCDATA_3"]["FcwVisblWarn_B_Rq"]) - ret.stockAeb = bool(cp_cam.vl["ACCDATA_2"]["CmbbBrkDecel_B_Rq"]) - - # button presses - ret.leftBlinker = cp.vl["Steering_Data_FD1"]["TurnLghtSwtch_D_Stat"] == 1 - ret.rightBlinker = cp.vl["Steering_Data_FD1"]["TurnLghtSwtch_D_Stat"] == 2 - # 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"], - cp.vl["BodyInfo_3_FD1"]["DrStatRl_B_Actl"], cp.vl["BodyInfo_3_FD1"]["DrStatRr_B_Actl"]]) - ret.seatbeltUnlatched = cp.vl["RCMStatusMessage2_FD1"]["FirstRowBuckleDriver"] == 2 - - # blindspot sensors - if self.CP.enableBsm: - cp_bsm = cp_cam if self.CP.flags & FordFlags.CANFD else cp - ret.leftBlindspot = cp_bsm.vl["Side_Detect_L_Stat"]["SodDetctLeft_D_Stat"] != 0 - ret.rightBlindspot = cp_bsm.vl["Side_Detect_R_Stat"]["SodDetctRight_D_Stat"] != 0 - - # Stock steering buttons so that we can passthru blinkers etc. - self.buttons_stock_values = cp.vl["Steering_Data_FD1"] - # Stock values from IPMA so that we can retain some stock functionality - 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}), - *create_button_events(self.lc_button, prev_lc_button, {1: ButtonType.lkas}), - ] - - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).main), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).camera), - } diff --git a/opendbc_repo/opendbc/car/ford/fingerprints.py b/opendbc_repo/opendbc/car/ford/fingerprints.py deleted file mode 100644 index 6b3e33701f..0000000000 --- a/opendbc_repo/opendbc/car/ford/fingerprints.py +++ /dev/null @@ -1,223 +0,0 @@ -""" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.""" -from opendbc.car.structs import CarParams -from opendbc.car.ford.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.FORD_BRONCO_SPORT_MK1: { - (Ecu.eps, 0x730, None): [ - b'LX6C-14D003-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'LX6C-2D053-RD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-2D053-RE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-2D053-RF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'M1PT-14F397-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'M1PT-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_ESCAPE_MK4: { - (Ecu.eps, 0x730, None): [ - b'LX6C-14D003-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-14D003-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'LX6C-2D053-NS\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-2D053-NT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-2D053-NY\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-2D053-SA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LX6C-2D053-SD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'LJ6T-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LJ6T-14F397-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LV4T-14F397-GG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_ESCAPE_MK4_5: { - (Ecu.eps, 0x730, None): [ - b'PZ11-14D003-EA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'PZ1C-2D053-EJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'PJ6T-14H102-ABL\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_EXPLORER_MK6: { - (Ecu.eps, 0x730, None): [ - b'L1MC-14D003-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'M1MC-14D003-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'M1MC-14D003-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'P1MC-14D003-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'L1MC-2D053-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-2D053-BB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-2D053-BF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-2D053-BJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'L1MC-2D053-KB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'LB5T-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LB5T-14F397-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LB5T-14F397-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LC5T-14F397-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LC5T-14F397-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_EXPEDITION_MK4: { - (Ecu.eps, 0x730, None): [ - b'NL14-14D003-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'RL14-2D053-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'ML3T-14H102-ABT\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_F_150_MK14: { - (Ecu.eps, 0x730, None): [ - b'ML3V-14D003-BC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'ML3V-14D003-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'NL34-2D053-CA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PL34-2D053-CA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PL34-2D053-CC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PL3V-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PL3V-2D053-BB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'ML3T-14D049-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'ML3T-14H102-ABR\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'ML3T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'ML3T-14H102-ABT\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PJ6T-14H102-ABJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PJ6T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RJ6T-14H102-ACJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RJ6T-14H102-BBC\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_F_150_LIGHTNING_MK1: { - (Ecu.abs, 0x760, None): [ - b'PL38-2D053-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RL38-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'ML3T-14H102-ABT\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RJ6T-14H102-ACJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RJ6T-14H102-BBC\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x730, None): [ - b'RL38-14D003-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_MUSTANG_MACH_E_MK1: { - (Ecu.eps, 0x730, None): [ - b'LJ9C-14D003-AM\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LJ9C-14D003-CC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LJ9C-14D003-FA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LJ9C-14D003-GA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LJ9C-14D003-HA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'LK9C-2D053-CK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'LK9C-2D053-CN\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'ML3T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RJ6T-14H102-BAE\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_FOCUS_MK4: { - (Ecu.eps, 0x730, None): [ - b'JX6C-14D003-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'JX61-2D053-CJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'JX7T-14D049-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'JX7T-14F397-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_MAVERICK_MK1: { - (Ecu.eps, 0x730, None): [ - b'NZ6C-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'NZ6C-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'NZ6C-2D053-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'NZ6C-2D053-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'NZ6C-2D053-AG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PZ6C-2D053-ED\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PZ6C-2D053-EE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PZ6C-2D053-EF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'NZ6T-14D049-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'NZ6T-14F397-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.FORD_RANGER_MK2: { - (Ecu.eps, 0x730, None): [ - b'NB3C-14D003-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'NL14-14D003-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RB3C-14D003-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'PB3C-2D053-ZD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PB3C-2D053-ZG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PB3C-2D053-ZJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'PJ6T-14H102-ABJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'RJ6T-14H102-BBB\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/ford/fordcan.py b/opendbc_repo/opendbc/car/ford/fordcan.py deleted file mode 100644 index 2ac68c4427..0000000000 --- a/opendbc_repo/opendbc/car/ford/fordcan.py +++ /dev/null @@ -1,342 +0,0 @@ -from opendbc.car import CanBusBase, structs - -HUDControl = structs.CarControl.HUDControl - - -class CanBus(CanBusBase): - def __init__(self, CP=None, fingerprint=None) -> None: - super().__init__(CP, fingerprint) - - @property - def main(self) -> int: - return self.offset - - @property - def radar(self) -> int: - return self.offset + 1 - - @property - def camera(self) -> int: - return self.offset + 2 - - -def calculate_lat_ctl2_checksum(mode: int, counter: int, dat: bytearray) -> int: - curvature = (dat[2] << 3) | ((dat[3]) >> 5) - curvature_rate = (dat[6] << 3) | ((dat[7]) >> 5) - path_angle = ((dat[3] & 0x1F) << 6) | ((dat[4]) >> 2) - path_offset = ((dat[4] & 0x3) << 8) | dat[5] - - checksum = mode + counter - for sig_val in (curvature, curvature_rate, path_angle, path_offset): - checksum += sig_val + (sig_val >> 8) - - return 0xFF - (checksum & 0xFF) - - -def create_lka_msg(packer, CAN: CanBus): - """ - Creates an empty CAN message for the Ford LKA Command. - - This command can apply "Lane Keeping Aid" maneuvers, which are subject to the PSCM lockout. - - Frequency is 33Hz. - """ - - return packer.make_can_msg("Lane_Assist_Data1", CAN.main, {}) - - -def create_lat_ctl_msg(packer, CAN: CanBus, lat_active: bool, path_offset: float, path_angle: float, curvature: float, - curvature_rate: float): - """ - Creates a CAN message for the Ford TJA/LCA Command. - - This command can apply "Lane Centering" maneuvers: continuous lane centering for traffic jam assist and highway - driving. It is not subject to the PSCM lockout. - - Ford lane centering command uses a third order polynomial to describe the road centerline. The polynomial is defined - by the following coefficients: - c0: lateral offset between the vehicle and the centerline (positive is right) - c1: heading angle between the vehicle and the centerline (positive is right) - c2: curvature of the centerline (positive is left) - c3: rate of change of curvature of the centerline - As the PSCM combines this information with other sensor data, such as the vehicle's yaw rate and speed, the steering - angle cannot be easily controlled. - - The PSCM should be configured to accept TJA/LCA commands before these commands will be processed. This can be done - using tools such as Forscan. - - Frequency is 20Hz. - """ - - values = { - "LatCtlRng_L_Max": 0, # Unknown [0|126] meter - "HandsOffCnfm_B_Rq": 0, # Unknown: 0=Inactive, 1=Active [0|1] - "LatCtl_D_Rq": 1 if lat_active else 0, # Mode: 0=None, 1=ContinuousPathFollowing, 2=InterventionLeft, - # 3=InterventionRight, 4-7=NotUsed [0|7] - "LatCtlRampType_D_Rq": 0, # Ramp speed: 0=Slow, 1=Medium, 2=Fast, 3=Immediate [0|3] - # Makes no difference with curvature control - "LatCtlPrecision_D_Rq": 1, # Precision: 0=Comfortable, 1=Precise, 2/3=NotUsed [0|3] - # The stock system always uses comfortable - "LatCtlPathOffst_L_Actl": path_offset, # Path offset [-5.12|5.11] meter - "LatCtlPath_An_Actl": path_angle, # Path angle [-0.5|0.5235] radians - "LatCtlCurv_NoRate_Actl": curvature_rate, # Curvature rate [-0.001024|0.00102375] 1/meter^2 - "LatCtlCurv_No_Actl": curvature, # Curvature [-0.02|0.02094] 1/meter - } - return packer.make_can_msg("LateralMotionControl", CAN.main, values) - - -def create_lat_ctl2_msg(packer, CAN: CanBus, mode: int, path_offset: float, path_angle: float, curvature: float, - curvature_rate: float, counter: int): - """ - Create a CAN message for the new Ford Lane Centering command. - - This message is used on the CAN FD platform and replaces the old LateralMotionControl message. It is similar but has - additional signals for a counter and checksum. - - Frequency is 20Hz. - """ - - values = { - "LatCtl_D2_Rq": mode, # Mode: 0=None, 1=PathFollowingLimitedMode, 2=PathFollowingExtendedMode, - # 3=SafeRampOut, 4-7=NotUsed [0|7] - "LatCtlRampType_D_Rq": 0, # 0=Slow, 1=Medium, 2=Fast, 3=Immediate [0|3] - "LatCtlPrecision_D_Rq": 1, # 0=Comfortable, 1=Precise, 2/3=NotUsed [0|3] - "LatCtlPathOffst_L_Actl": path_offset, # [-5.12|5.11] meter - "LatCtlPath_An_Actl": path_angle, # [-0.5|0.5235] radians - "LatCtlCurv_No_Actl": curvature, # [-0.02|0.02094] 1/meter - "LatCtlCrv_NoRate2_Actl": curvature_rate, # [-0.001024|0.001023] 1/meter^2 - "HandsOffCnfm_B_Rq": 0, # 0=Inactive, 1=Active [0|1] - "LatCtlPath_No_Cnt": counter, # [0|15] - "LatCtlPath_No_Cs": 0, # [0|255] - } - - # calculate checksum - dat = packer.make_can_msg("LateralMotionControl2", 0, values)[1] - values["LatCtlPath_No_Cs"] = calculate_lat_ctl2_checksum(mode, counter, dat) - - return packer.make_can_msg("LateralMotionControl2", CAN.main, values) - - -def create_acc_msg(packer, CAN: CanBus, long_active: bool, gas: float, accel: float, stopping: bool, brake_request, v_ego_kph: float): - """ - Creates a CAN message for the Ford ACC Command. - - This command can be used to enable ACC, to set the ACC gas/brake/decel values - and to disable ACC. - - Frequency is 50Hz. - """ - values = { - "AccBrkTot_A_Rq": accel, # Brake total accel request: [-20|11.9449] m/s^2 - "Cmbb_B_Enbl": 1 if long_active else 0, # Enabled: 0=No, 1=Yes - "AccPrpl_A_Rq": gas, # Acceleration request: [-5|5.23] m/s^2 - # No observed acceleration seen from this signal alone. During stock system operation, it appears to - # be the raw acceleration request (AccPrpl_A_Rq when positive, AccBrkTot_A_Rq when negative) - "AccPrpl_A_Pred": -5.0, # Acceleration request: [-5|5.23] m/s^2 - "AccResumEnbl_B_Rq": 1 if long_active else 0, - # No observed acceleration seen from this signal alone - "AccVeh_V_Trg": v_ego_kph, # Target speed: [0|255] km/h - # TODO: we may be able to improve braking response by utilizing pre-charging better - # When setting these two bits without AccBrkTot_A_Rq, an initial jerk is observed and car may be able to brake temporarily with AccPrpl_A_Rq - "AccBrkPrchg_B_Rq": 1 if brake_request else 0, # Pre-charge brake request: 0=No, 1=Yes - "AccBrkDecel_B_Rq": 1 if brake_request else 0, # Deceleration request: 0=Inactive, 1=Active - "AccStopStat_B_Rq": 1 if stopping else 0, - } - return packer.make_can_msg("ACCDATA", CAN.main, values) - - -def create_acc_ui_msg(packer, CAN: CanBus, CP, main_on: bool, enabled: bool, fcw_alert: bool, standstill: bool, - show_distance_bars: bool, hud_control, stock_values: dict): - """ - Creates a CAN message for the Ford IPC adaptive cruise, forward collision warning and traffic jam - assist status. - - Stock functionality is maintained by passing through unmodified signals. - - Frequency is 5Hz. - """ - - # Tja_D_Stat - if enabled: - if hud_control.leftLaneDepart: - status = 3 # ActiveInterventionLeft - elif hud_control.rightLaneDepart: - status = 4 # ActiveInterventionRight - else: - status = 2 # Active - elif main_on: - if hud_control.leftLaneDepart: - status = 5 # ActiveWarningLeft - elif hud_control.rightLaneDepart: - status = 6 # ActiveWarningRight - else: - status = 1 # Standby - else: - status = 0 # Off - - values = {s: stock_values[s] for s in [ - "HaDsply_No_Cs", - "HaDsply_No_Cnt", - "AccStopStat_D_Dsply", # ACC stopped status message - "AccTrgDist2_D_Dsply", # ACC target distance - "AccStopRes_B_Dsply", - "TjaWarn_D_Rq", # TJA warning - "TjaMsgTxt_D_Dsply", # TJA text - "IaccLamp_D_Rq", # iACC status icon - "AccMsgTxt_D2_Rq", # ACC text - "FcwDeny_B_Dsply", # FCW disabled - "FcwMemStat_B_Actl", # FCW enabled setting - "AccTGap_B_Dsply", # ACC time gap display setting - "CadsAlignIncplt_B_Actl", - "AccFllwMde_B_Dsply", # ACC follow mode display setting - "CadsRadrBlck_B_Actl", - "CmbbPostEvnt_B_Dsply", # AEB event status - "AccStopMde_B_Dsply", # ACC stop mode display setting - "FcwMemSens_D_Actl", # FCW sensitivity setting - "FcwMsgTxt_D_Rq", # FCW text - "AccWarn_D_Dsply", # ACC warning - "FcwVisblWarn_B_Rq", # FCW visible alert - "FcwAudioWarn_B_Rq", # FCW audio alert - "AccTGap_D_Dsply", # ACC time gap - "AccMemEnbl_B_RqDrv", # ACC adaptive/normal setting - "FdaMem_B_Stat", # FDA enabled setting - ]} - - values.update({ - "Tja_D_Stat": status, # TJA status - }) - - if CP.openpilotLongitudinalControl: - values.update({ - "AccStopStat_D_Dsply": 2 if standstill else 0, # Stopping status text - "AccMsgTxt_D2_Rq": 0, # ACC text - "AccTGap_B_Dsply": 1 if show_distance_bars else 0, # Show time gap control UI - "AccFllwMde_B_Dsply": 1 if hud_control.leadVisible else 0, # Lead indicator - "AccStopMde_B_Dsply": 1 if standstill else 0, - "AccWarn_D_Dsply": 0, # ACC warning - "AccTGap_D_Dsply": hud_control.leadDistanceBars, # Time gap - }) - - # Forwards FCW alert from IPMA - if fcw_alert: - values["FcwVisblWarn_B_Rq"] = 1 # FCW visible alert - - return packer.make_can_msg("ACCDATA_3", CAN.main, values) - - -def create_lkas_ui_msg(packer, CAN: CanBus, main_on: bool, enabled: bool, steer_alert: bool, hud_control, - stock_values: dict): - """ - Creates a CAN message for the Ford IPC IPMA/LKAS status. - - Show the LKAS status with the "driver assist" lines in the IPC. - - Stock functionality is maintained by passing through unmodified signals. - - Frequency is 1Hz. - """ - - # LaActvStats_D_Dsply - # R Intvn Warn Supprs Avail No - # L - # Intvn 24 19 14 9 4 - # Warn 23 18 13 8 3 - # Supprs 22 17 12 7 2 - # Avail 21 16 11 6 1 - # No 20 15 10 5 0 - # - # TODO: test suppress state - if enabled: - lines = 0 # NoLeft_NoRight - if hud_control.leftLaneDepart: - lines += 4 - elif hud_control.leftLaneVisible: - lines += 1 - if hud_control.rightLaneDepart: - lines += 20 - elif hud_control.rightLaneVisible: - lines += 5 - elif main_on: - lines = 0 - else: - if hud_control.leftLaneDepart: - lines = 3 # WarnLeft_NoRight - elif hud_control.rightLaneDepart: - lines = 15 # NoLeft_WarnRight - else: - lines = 30 # LA_Off - - hands_on_wheel_dsply = 1 if steer_alert else 0 - - values = {s: stock_values[s] for s in [ - "FeatConfigIpmaActl", - "FeatNoIpmaActl", - "PersIndexIpma_D_Actl", - "AhbcRampingV_D_Rq", # AHB ramping - "LaDenyStats_B_Dsply", # LKAS error - "CamraDefog_B_Req", # Windshield heater? - "CamraStats_D_Dsply", # Camera status - "DasAlrtLvl_D_Dsply", # DAS alert level - "DasStats_D_Dsply", # DAS status - "DasWarn_D_Dsply", # DAS warning - "AhbHiBeam_D_Rq", # AHB status - "Passthru_63", - "Passthru_48", - ]} - - values.update({ - "LaActvStats_D_Dsply": lines, # LKAS status (lines) [0|31] - "LaHandsOff_D_Dsply": hands_on_wheel_dsply, # 0=HandsOn, 1=Level1 (w/o chime), 2=Level2 (w/ chime), 3=Suppressed - }) - return packer.make_can_msg("IPMA_Data", CAN.main, values) - - -def create_button_msg(packer, bus: int, stock_values: dict, cancel=False, resume=False, tja_toggle=False): - """ - Creates a CAN message for the Ford SCCM buttons/switches. - - Includes cruise control buttons, turn lights and more. - - Frequency is 10Hz. - """ - - values = {s: stock_values[s] for s in [ - "HeadLghtHiFlash_D_Stat", # SCCM Passthrough the remaining buttons - "TurnLghtSwtch_D_Stat", # SCCM Turn signal switch - "WiprFront_D_Stat", - "LghtAmb_D_Sns", - "AccButtnGapDecPress", - "AccButtnGapIncPress", - "AslButtnOnOffCnclPress", - "AslButtnOnOffPress", - "LaSwtchPos_D_Stat", - "CcAslButtnCnclResPress", - "CcAslButtnDeny_B_Actl", - "CcAslButtnIndxDecPress", - "CcAslButtnIndxIncPress", - "CcAslButtnOffCnclPress", - "CcAslButtnOnOffCncl", - "CcAslButtnOnPress", - "CcAslButtnResDecPress", - "CcAslButtnResIncPress", - "CcAslButtnSetDecPress", - "CcAslButtnSetIncPress", - "CcAslButtnSetPress", - "CcButtnOffPress", - "CcButtnOnOffCnclPress", - "CcButtnOnOffPress", - "CcButtnOnPress", - "HeadLghtHiFlash_D_Actl", - "HeadLghtHiOn_B_StatAhb", - "AhbStat_B_Dsply", - "AccButtnGapTogglePress", - "WiprFrontSwtch_D_Stat", - "HeadLghtHiCtrl_D_RqAhb", - ]} - - values.update({ - "CcAslButtnCnclPress": 1 if cancel else 0, # CC cancel button - "CcAsllButtnResPress": 1 if resume else 0, # CC resume button - "TjaButtnOnOffPress": 1 if tja_toggle else 0, # LCA/TJA toggle button - }) - return packer.make_can_msg("Steering_Data_FD1", bus, values) diff --git a/opendbc_repo/opendbc/car/ford/interface.py b/opendbc_repo/opendbc/car/ford/interface.py deleted file mode 100644 index 97685df58c..0000000000 --- a/opendbc_repo/opendbc/car/ford/interface.py +++ /dev/null @@ -1,98 +0,0 @@ -import numpy as np -from opendbc.car import Bus, get_safety_config, structs -from opendbc.car.carlog import carlog -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.ford.carcontroller import CarController -from opendbc.car.ford.carstate import CarState -from opendbc.car.ford.fordcan import CanBus -from opendbc.car.ford.radar_interface import RadarInterface -from opendbc.car.ford.values import CarControllerParams, DBC, Ecu, FordFlags, RADAR, FordSafetyFlags -from opendbc.car.interfaces import CarInterfaceBase - -TransmissionType = structs.CarParams.TransmissionType - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def get_pid_accel_limits(CP, current_speed, cruise_speed): - # PCM doesn't allow acceleration near cruise_speed, - # so limit limits of pid to prevent windup - ACCEL_MAX_VALS = [CarControllerParams.ACCEL_MAX, 0.2] - ACCEL_MAX_BP = [cruise_speed - 2., cruise_speed - .4] - return CarControllerParams.ACCEL_MIN, np.interp(current_speed, ACCEL_MAX_BP, ACCEL_MAX_VALS) - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "ford" - - ret.radarUnavailable = Bus.radar not in DBC[candidate] - ret.steerControlType = structs.CarParams.SteerControlType.angle - ret.steerActuatorDelay = 0.2 - ret.steerLimitTimer = 1.0 - ret.steerAtStandstill = True - - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [0.5] - - if not ret.radarUnavailable and DBC[candidate][Bus.radar] == RADAR.DELPHI_MRR: - # average of 33.3 Hz radar timestep / 4 scan modes = 60 ms - # MRR_Header_Timestamps->CAN_DET_TIME_SINCE_MEAS reports 61.3 ms - ret.radarDelay = 0.06 - - CAN = CanBus(fingerprint=fingerprint) - cfgs = [get_safety_config(structs.CarParams.SafetyModel.ford)] - if CAN.main >= 4: - cfgs.insert(0, get_safety_config(structs.CarParams.SafetyModel.noOutput)) - ret.safetyConfigs = cfgs - - ret.alphaLongitudinalAvailable = ret.radarUnavailable - if alpha_long or not ret.radarUnavailable: - ret.safetyConfigs[-1].safetyParam |= FordSafetyFlags.LONG_CONTROL.value - ret.openpilotLongitudinalControl = True - - if ret.flags & FordFlags.CANFD: - ret.safetyConfigs[-1].safetyParam |= FordSafetyFlags.CANFD.value - - # TRON (SecOC) platforms are not supported - # LateralMotionControl2, ACCDATA are 16 bytes on these platforms - if len(fingerprint[CAN.camera]): - if fingerprint[CAN.camera].get(0x3d6) != 8 or fingerprint[CAN.camera].get(0x186) != 8: - carlog.error('dashcamOnly: SecOC is unsupported') - ret.dashcamOnly = True - else: - # Lock out if the car does not have needed lateral and longitudinal control APIs. - # Note that we also check CAN for adaptive cruise, but no known signal for LCA exists - pscm_config = next((fw for fw in car_fw if fw.ecu == Ecu.eps and b'\x22\xDE\x01' in fw.request), None) - if pscm_config: - if len(pscm_config.fwVersion) != 24: - carlog.error('dashcamOnly: Invalid EPS FW version') - ret.dashcamOnly = True - else: - config_tja = pscm_config.fwVersion[7] # Traffic Jam Assist - config_lca = pscm_config.fwVersion[8] # Lane Centering Assist - if config_tja != 0xFF or config_lca != 0xFF: - carlog.error('dashcamOnly: Car lacks required lateral control APIs') - ret.dashcamOnly = True - - # Auto Transmission: 0x732 ECU or Gear_Shift_by_Wire_FD1 - found_ecus = [fw.ecu for fw in car_fw] - if Ecu.shiftByWire in found_ecus or 0x5A in fingerprint[CAN.main] or docs: - ret.transmissionType = TransmissionType.automatic - else: - ret.transmissionType = TransmissionType.manual - ret.minEnableSpeed = 20.0 * CV.MPH_TO_MS - - # BSM: Side_Detect_L_Stat, Side_Detect_R_Stat - # TODO: detect bsm in car_fw? - ret.enableBsm = 0x3A6 in fingerprint[CAN.main] and 0x3A7 in fingerprint[CAN.main] - - # LCA can steer down to zero - ret.minSteerSpeed = 0. - - ret.autoResumeSng = ret.minEnableSpeed == -1. - ret.centerToFront = ret.wheelbase * 0.44 - return ret diff --git a/opendbc_repo/opendbc/car/ford/radar_interface.py b/opendbc_repo/opendbc/car/ford/radar_interface.py deleted file mode 100644 index 7bb44a2230..0000000000 --- a/opendbc_repo/opendbc/car/ford/radar_interface.py +++ /dev/null @@ -1,274 +0,0 @@ -import numpy as np -from typing import cast -from collections import defaultdict -from math import cos, sin -from dataclasses import dataclass -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.ford.fordcan import CanBus -from opendbc.car.ford.values import DBC, RADAR -from opendbc.car.interfaces import RadarInterfaceBase - -DELPHI_ESR_RADAR_MSGS = list(range(0x500, 0x540)) - -DELPHI_MRR_RADAR_START_ADDR = 0x120 -DELPHI_MRR_RADAR_HEADER_ADDR = 0x174 # MRR_Header_SensorCoverage -DELPHI_MRR_RADAR_MSG_COUNT = 64 - -DELPHI_MRR_RADAR_RANGE_COVERAGE = {0: 42, 1: 164, 2: 45, 3: 175} # scan index to detection range (m) -DELPHI_MRR_MIN_LONG_RANGE_DIST = 30 # meters -DELPHI_MRR_CLUSTER_THRESHOLD = 5 # meters, lateral distance and relative velocity are weighted - - -@dataclass -class Cluster: - dRel: float = 0.0 - yRel: float = 0.0 - vRel: float = 0.0 - trackId: int = 0 - - -def cluster_points(pts_l: list[list[float]], pts2_l: list[list[float]], max_dist: float) -> list[int]: - """ - Clusters a collection of points based on another collection of points. This is useful for correlating clusters through time. - Points in pts2 not close enough to any point in pts are assigned -1. - Args: - pts_l: List of points to base the new clusters on - pts2_l: List of points to cluster using pts - max_dist: Max distance from cluster center to candidate point - - Returns: - List of cluster indices for pts2 that correspond to pts - """ - - if not len(pts2_l): - return [] - - if not len(pts_l): - return [-1] * len(pts2_l) - - max_dist_sq = max_dist ** 2 - pts = np.array(pts_l) - pts2 = np.array(pts2_l) - - # Compute squared norms - pts_norm_sq = np.sum(pts ** 2, axis=1) - pts2_norm_sq = np.sum(pts2 ** 2, axis=1) - - # Compute squared Euclidean distances using the identity - # dist_sq[i, j] = ||pts2[i]||^2 + ||pts[j]||^2 - 2 * pts2[i] . pts[j] - dist_sq = pts2_norm_sq[:, np.newaxis] + pts_norm_sq[np.newaxis, :] - 2 * np.dot(pts2, pts.T) - dist_sq = np.maximum(dist_sq, 0.0) - - # Find the closest cluster for each point and assign its index - closest_clusters = np.argmin(dist_sq, axis=1) - closest_dist_sq = dist_sq[np.arange(len(pts2)), closest_clusters] - cluster_idxs = np.where(closest_dist_sq < max_dist_sq, closest_clusters, -1) - - return cast(list[int], cluster_idxs.tolist()) - - -def _create_delphi_esr_radar_can_parser(CP) -> CANParser: - msg_n = len(DELPHI_ESR_RADAR_MSGS) - messages = list(zip(DELPHI_ESR_RADAR_MSGS, [20] * msg_n, strict=True)) - - return CANParser(RADAR.DELPHI_ESR, messages, CanBus(CP).radar) - - -def _create_delphi_mrr_radar_can_parser(CP) -> CANParser: - messages = [ - ("MRR_Header_InformationDetections", 33), - ("MRR_Header_SensorCoverage", 33), - ] - - for i in range(1, DELPHI_MRR_RADAR_MSG_COUNT + 1): - msg = f"MRR_Detection_{i:03d}" - messages += [(msg, 33)] - - return CANParser(RADAR.DELPHI_MRR, messages, CanBus(CP).radar) - - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - - self.points: list[list[float]] = [] - self.clusters: list[Cluster] = [] - - self.updated_messages = set() - self.track_id = 0 - self.radar = DBC[CP.carFingerprint].get(Bus.radar) - self.scan_index_invalid_cnt = 0 - self.radar_unavailable_cnt = 0 - self.prev_headerScanIndex = 0 - if CP.radarUnavailable: - self.rcp = None - elif self.radar == RADAR.DELPHI_ESR: - self.rcp = _create_delphi_esr_radar_can_parser(CP) - self.trigger_msg = DELPHI_ESR_RADAR_MSGS[-1] - self.valid_cnt = {key: 0 for key in DELPHI_ESR_RADAR_MSGS} - elif self.radar == RADAR.DELPHI_MRR: - self.rcp = _create_delphi_mrr_radar_can_parser(CP) - self.trigger_msg = DELPHI_MRR_RADAR_HEADER_ADDR - else: - raise ValueError(f"Unsupported radar: {self.radar}") - - def update(self, can_strings): - if self.rcp is None: - return super().update(None) - - vls = self.rcp.update(can_strings) - self.updated_messages.update(vls) - - if self.trigger_msg not in self.updated_messages: - return None - self.updated_messages.clear() - - ret = structs.RadarData() - if not self.rcp.can_valid: - ret.errors.canError = True - - if self.radar == RADAR.DELPHI_ESR: - self._update_delphi_esr() - elif self.radar == RADAR.DELPHI_MRR: - _update = self._update_delphi_mrr(ret) - if not _update: - return None - - ret.points = list(self.pts.values()) - return ret - - def _update_delphi_esr(self): - for ii in sorted(self.updated_messages): - cpt = self.rcp.vl[ii] - - if cpt['X_Rel'] > 0.00001: - self.valid_cnt[ii] = 0 # reset counter - - if cpt['X_Rel'] > 0.00001: - self.valid_cnt[ii] += 1 - else: - self.valid_cnt[ii] = max(self.valid_cnt[ii] - 1, 0) - #print ii, self.valid_cnt[ii], cpt['VALID'], cpt['X_Rel'], cpt['Angle'] - - # radar point only valid if there have been enough valid measurements - if self.valid_cnt[ii] > 0: - if ii not in self.pts: - self.pts[ii] = structs.RadarData.RadarPoint() - self.pts[ii].trackId = self.track_id - self.track_id += 1 - self.pts[ii].dRel = cpt['X_Rel'] # from front of car - self.pts[ii].yRel = cpt['X_Rel'] * cpt['Angle'] * CV.DEG_TO_RAD # in car frame's y axis, left is positive - self.pts[ii].vRel = cpt['V_Rel'] - self.pts[ii].vLead = self.pts[ii].vRel + self.v_ego - self.pts[ii].aRel = float('nan') - self.pts[ii].yvRel = 0# float('nan') - self.pts[ii].measured = True - else: - if ii in self.pts: - del self.pts[ii] - - def _update_delphi_mrr(self, ret: structs.RadarData): - headerScanIndex = int(self.rcp.vl["MRR_Header_InformationDetections"]['CAN_SCAN_INDEX']) & 0b11 - - # In reverse, the radar continually sends the last messages. Mark this as invalid - if (self.prev_headerScanIndex + 1) % 4 != headerScanIndex: - self.radar_unavailable_cnt += 1 - else: - self.radar_unavailable_cnt = 0 - self.prev_headerScanIndex = headerScanIndex - - if self.radar_unavailable_cnt >= 5: - self.pts.clear() - self.points.clear() - self.clusters.clear() - ret.errors.radarUnavailableTemporary = True - return True - - # Use points with Doppler coverage of +-60 m/s, reduces similar points - if headerScanIndex not in (2, 3): - return False - - if DELPHI_MRR_RADAR_RANGE_COVERAGE[headerScanIndex] != int(self.rcp.vl["MRR_Header_SensorCoverage"]["CAN_RANGE_COVERAGE"]): - self.scan_index_invalid_cnt += 1 - else: - self.scan_index_invalid_cnt = 0 - - # Rarely MRR_Header_InformationDetections can fail to send a message. The scan index is skipped in this case - if self.scan_index_invalid_cnt >= 5: - ret.errors.wrongConfig = True - - for ii in range(1, DELPHI_MRR_RADAR_MSG_COUNT + 1): - msg = self.rcp.vl[f"MRR_Detection_{ii:03d}"] - - # SCAN_INDEX rotates through 0..3 on each message for different measurement modes - # Indexes 0 and 2 have a max range of ~40m, 1 and 3 are ~170m (MRR_Header_SensorCoverage->CAN_RANGE_COVERAGE) - # Indexes 0 and 1 have a Doppler coverage of +-71 m/s, 2 and 3 have +-60 m/s - scanIndex = msg[f"CAN_SCAN_INDEX_2LSB_{ii:02d}"] - - # Throw out old measurements. Very unlikely to happen, but is proper behavior - if scanIndex != headerScanIndex: - continue - - valid = bool(msg[f"CAN_DET_VALID_LEVEL_{ii:02d}"]) - - # Long range measurement mode is more sensitive and can detect the road surface - dist = msg[f"CAN_DET_RANGE_{ii:02d}"] # m [0|255.984] - if scanIndex in (1, 3) and dist < DELPHI_MRR_MIN_LONG_RANGE_DIST: - valid = False - - if valid: - azimuth = msg[f"CAN_DET_AZIMUTH_{ii:02d}"] # rad [-3.1416|3.13964] - distRate = msg[f"CAN_DET_RANGE_RATE_{ii:02d}"] # m/s [-128|127.984] - dRel = cos(azimuth) * dist # m from front of car - yRel = -sin(azimuth) * dist # in car frame's y axis, left is positive - - self.points.append([dRel, yRel * 2, distRate * 2]) - - # Cluster and publish using stored points once we've cycled through all 4 scan modes - if headerScanIndex != 3: - return False - - # Cluster points from this cycle against the centroids from the previous cycle - prev_keys = [[p.dRel, p.yRel * 2, p.vRel * 2] for p in self.clusters] - labels = cluster_points(prev_keys, self.points, DELPHI_MRR_CLUSTER_THRESHOLD) - - points_by_track_id = defaultdict(list) - for idx, label in enumerate(labels): - if label != -1: - points_by_track_id[self.clusters[label].trackId].append(self.points[idx]) - else: - points_by_track_id[self.track_id].append(self.points[idx]) - self.track_id += 1 - - self.clusters = [] - for idx, (track_id, pts) in enumerate(points_by_track_id.items()): - dRel = [p[0] for p in pts] - min_dRel = min(dRel) - dRel = sum(dRel) / len(dRel) - - yRel = [p[1] for p in pts] - yRel = sum(yRel) / len(yRel) / 2 - - vRel = [p[2] for p in pts] - vRel = sum(vRel) / len(vRel) / 2 - - # FIXME: creating capnp RadarPoint and accessing attributes are both expensive, so we store a dataclass and reuse the RadarPoint - self.clusters.append(Cluster(dRel=dRel, yRel=yRel, vRel=vRel, trackId=track_id)) - - if idx not in self.pts: - self.pts[idx] = structs.RadarData.RadarPoint(measured=True, aRel=float('nan'), yvRel=0) - - self.pts[idx].dRel = min_dRel - self.pts[idx].yRel = yRel - self.pts[idx].vRel = vRel - self.pts[idx].vLead = vRel + self.v_ego - self.pts[idx].trackId = track_id - - for idx in range(len(points_by_track_id), len(self.pts)): - del self.pts[idx] - - self.points = [] - - return True diff --git a/opendbc_repo/opendbc/car/ford/tests/__init__.py b/opendbc_repo/opendbc/car/ford/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py b/opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py deleted file mode 100755 index dfb93c06fd..0000000000 --- a/opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env python3 -from collections import defaultdict - -from opendbc.car.structs import CarParams -from opendbc.car.ford.values import get_platform_codes -from opendbc.car.ford.fingerprints import FW_VERSIONS - -Ecu = CarParams.Ecu - -if __name__ == "__main__": - cars_for_code: defaultdict = defaultdict(lambda: defaultdict(set)) - - for car_model, ecus in FW_VERSIONS.items(): - print(car_model) - for ecu in sorted(ecus): - platform_codes = get_platform_codes(ecus[ecu]) - for code in platform_codes: - cars_for_code[ecu][code].add(car_model) - - print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') - print(f' Codes: {sorted(platform_codes)}') - print() - - print('\nCar models vs. platform codes:') - for ecu, codes in cars_for_code.items(): - print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') - for code, cars in codes.items(): - print(f' {code!r}: {sorted(map(str, cars))}') diff --git a/opendbc_repo/opendbc/car/ford/tests/test_ford.py b/opendbc_repo/opendbc/car/ford/tests/test_ford.py deleted file mode 100644 index 5e3cc420b4..0000000000 --- a/opendbc_repo/opendbc/car/ford/tests/test_ford.py +++ /dev/null @@ -1,142 +0,0 @@ -import random -from collections.abc import Iterable - -from hypothesis import settings, given, strategies as st -from parameterized import parameterized - -from opendbc.car.structs import CarParams -from opendbc.car.fw_versions import build_fw_dict -from opendbc.car.ford.values import CAR, FW_QUERY_CONFIG, FW_PATTERN, get_platform_codes -from opendbc.car.ford.fingerprints import FW_VERSIONS - -Ecu = CarParams.Ecu - - -ECU_ADDRESSES = { - Ecu.eps: 0x730, # Power Steering Control Module (PSCM) - Ecu.abs: 0x760, # Anti-Lock Brake System (ABS) - Ecu.fwdRadar: 0x764, # Cruise Control Module (CCM) - Ecu.fwdCamera: 0x706, # Image Processing Module A (IPMA) - Ecu.engine: 0x7E0, # Powertrain Control Module (PCM) - Ecu.shiftByWire: 0x732, # Gear Shift Module (GSM) - Ecu.debug: 0x7D0, # Accessory Protocol Interface Module (APIM) -} - - -ECU_PART_NUMBER = { - Ecu.eps: [ - b"14D003", - ], - Ecu.abs: [ - b"2D053", - ], - Ecu.fwdRadar: [ - b"14D049", - ], - Ecu.fwdCamera: [ - b"14F397", # Ford Q3 - b"14H102", # Ford Q4 - ], -} - - -class TestFordFW: - def test_fw_query_config(self): - for (ecu, addr, subaddr) in FW_QUERY_CONFIG.extra_ecus: - assert ecu in ECU_ADDRESSES, "Unknown ECU" - assert addr == ECU_ADDRESSES[ecu], "ECU address mismatch" - assert subaddr is None, "Unexpected ECU subaddress" - - @parameterized.expand(FW_VERSIONS.items()) - def test_fw_versions(self, car_model: str, fw_versions: dict[tuple[int, int, int | None], Iterable[bytes]]): - for (ecu, addr, subaddr), fws in fw_versions.items(): - assert ecu in ECU_PART_NUMBER, "Unexpected ECU" - assert addr == ECU_ADDRESSES[ecu], "ECU address mismatch" - assert subaddr is None, "Unexpected ECU subaddress" - - for fw in fws: - assert len(fw) == 24, "Expected ECU response to be 24 bytes" - - match = FW_PATTERN.match(fw) - assert match is not None, f"Unable to parse FW: {fw!r}" - if match: - part_number = match.group("part_number") - assert part_number in ECU_PART_NUMBER[ecu], f"Unexpected part number for {fw!r}" - - codes = get_platform_codes([fw]) - assert 1 == len(codes), f"Unable to parse FW: {fw!r}" - - @settings(max_examples=100) - @given(data=st.data()) - def test_platform_codes_fuzzy_fw(self, data): - """Ensure function doesn't raise an exception""" - fw_strategy = st.lists(st.binary()) - fws = data.draw(fw_strategy) - get_platform_codes(fws) - - def test_platform_codes_spot_check(self): - # Asserts basic platform code parsing behavior for a few cases - results = get_platform_codes([ - b"JX6A-14C204-BPL\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"NZ6T-14F397-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"PJ6T-14H102-ABJ\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"LB5A-14C204-EAC\x00\x00\x00\x00\x00\x00\x00\x00\x00", - ]) - assert results == {(b"X6A", b"J"), (b"Z6T", b"N"), (b"J6T", b"P"), (b"B5A", b"L")} - - def test_fuzzy_match(self): - for platform, fw_by_addr in FW_VERSIONS.items(): - # Ensure there's no overlaps in platform codes - for _ in range(20): - car_fw = [] - for ecu, fw_versions in fw_by_addr.items(): - ecu_name, addr, sub_addr = ecu - fw = random.choice(fw_versions) - car_fw.append(CarParams.CarFw(ecu=ecu_name, fwVersion=fw, address=addr, - subAddress=0 if sub_addr is None else sub_addr)) - - CP = CarParams(carFw=car_fw) - matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, FW_VERSIONS) - assert matches == {platform} - - def test_match_fw_fuzzy(self): - offline_fw = { - (Ecu.eps, 0x730, None): [ - b"L1MC-14D003-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"L1MC-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - ], - (Ecu.abs, 0x760, None): [ - b"L1MC-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"L1MC-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - ], - (Ecu.fwdRadar, 0x764, None): [ - b"LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"LB5T-14D049-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - ], - # We consider all model year hints for ECU, even with different platform codes - (Ecu.fwdCamera, 0x706, None): [ - b"LB5T-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - b"NC5T-14F397-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - ], - } - expected_fingerprint = CAR.FORD_EXPLORER_MK6 - - # ensure that we fuzzy match on all non-exact FW with changed revisions - live_fw = { - (0x730, None): {b"L1MC-14D003-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, - (0x760, None): {b"L1MC-2D053-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, - (0x764, None): {b"LB5T-14D049-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, - (0x706, None): {b"LB5T-14F397-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, - } - candidates = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fw, '', {expected_fingerprint: offline_fw}) - assert candidates == {expected_fingerprint} - - # model year hint in between the range should match - live_fw[(0x706, None)] = {b"MB5T-14F397-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"} - candidates = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fw, '', {expected_fingerprint: offline_fw,}) - assert candidates == {expected_fingerprint} - - # unseen model year hint should not match - live_fw[(0x760, None)] = {b"M1MC-2D053-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"} - candidates = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fw, '', {expected_fingerprint: offline_fw}) - assert len(candidates) == 0, "Should not match new model year hint" diff --git a/opendbc_repo/opendbc/car/ford/values.py b/opendbc_repo/opendbc/car/ford/values.py deleted file mode 100644 index 796fbecd50..0000000000 --- a/opendbc_repo/opendbc/car/ford/values.py +++ /dev/null @@ -1,316 +0,0 @@ -import copy -import re -from dataclasses import dataclass, field, replace -from enum import Enum, IntFlag - -from opendbc.car import AngleSteeringLimits, Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column, \ - Device -from opendbc.car.fw_query_definitions import FwQueryConfig, LiveFwVersions, OfflineFwVersions, Request, StdQueries, p16 - -Ecu = CarParams.Ecu - - -class CarControllerParams: - STEER_STEP = 5 # LateralMotionControl, 20Hz - LKA_STEP = 3 # Lane_Assist_Data1, 33Hz - ACC_CONTROL_STEP = 2 # ACCDATA, 50Hz - LKAS_UI_STEP = 100 # IPMA_Data, 1Hz - ACC_UI_STEP = 20 # ACCDATA_3, 5Hz - BUTTONS_STEP = 5 # Steering_Data_FD1, 10Hz, but send twice as fast - - STEER_DRIVER_ALLOWANCE = 1.0 # Driver intervention threshold, Nm - - ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( - 0.02, # Max curvature for steering command, m^-1 - # Curvature rate limits - # Max curvature is limited by the EPS to an equivalent of ~2.0 m/s^2 at all speeds, - # however max curvature rate linearly decreases as speed increases: - # ~0.009 m^-1/sec at 7 m/s, ~0.002 m^-1/sec at 35 m/s - # Limit to ~2 m/s^3 up, ~3.3 m/s^3 down at 75 mph and match EPS limit at low speed - ([5, 25], [0.00045, 0.0001]), - ([5, 25], [0.00045, 0.00015]) - ) - CURVATURE_ERROR = 0.002 # ~6 degrees at 10 m/s, ~10 degrees at 35 m/s - - ACCEL_MAX = 2.0 # m/s^2 max acceleration - ACCEL_MIN = -3.5 # m/s^2 max deceleration - MIN_GAS = -0.5 - INACTIVE_GAS = -5.0 - - def __init__(self, CP): - pass - - -class FordSafetyFlags(IntFlag): - LONG_CONTROL = 1 - CANFD = 2 - - -class FordFlags(IntFlag): - # Static flags - CANFD = 1 - - -class RADAR: - DELPHI_ESR = 'ford_fusion_2018_adas' - DELPHI_MRR = 'FORD_CADS' - - -class Footnote(Enum): - FOCUS = CarFootnote( - "Refers only to the Focus Mk4 (C519) available in Europe/China/Taiwan/Australasia, not the Focus Mk3 (C346) in " + - "North and South America/Southeast Asia.", - Column.MODEL, - ) - - -@dataclass -class FordCarDocs(CarDocs): - package: str = "Co-Pilot360 Assist+" - hybrid: bool = False - plug_in_hybrid: bool = False - - def init_make(self, CP: CarParams): - harness = CarHarness.ford_q4 if CP.flags & FordFlags.CANFD else CarHarness.ford_q3 - if CP.carFingerprint in (CAR.FORD_BRONCO_SPORT_MK1, CAR.FORD_MAVERICK_MK1, CAR.FORD_F_150_MK14, CAR.FORD_F_150_LIGHTNING_MK1): - self.car_parts = CarParts([Device.threex_angled_mount, harness]) - else: - self.car_parts = CarParts([Device.threex, harness]) - - if harness == CarHarness.ford_q4: - self.setup_video = "https://www.youtube.com/watch?v=uUGkH6C_EQU" - - if CP.carFingerprint in (CAR.FORD_F_150_MK14, CAR.FORD_F_150_LIGHTNING_MK1, CAR.FORD_EXPEDITION_MK4): - self.setup_video = "https://www.youtube.com/watch?v=MewJc9LYp9M" - -@dataclass -class FordPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: { - Bus.pt: 'ford_lincoln_base_pt', - Bus.radar: RADAR.DELPHI_MRR, - }) - - def init(self): - for car_docs in list(self.car_docs): - if car_docs.hybrid: - name = f"{car_docs.make} {car_docs.model} Hybrid {car_docs.years}" - self.car_docs.append(replace(copy.deepcopy(car_docs), name=name)) - if car_docs.plug_in_hybrid: - name = f"{car_docs.make} {car_docs.model} Plug-in Hybrid {car_docs.years}" - self.car_docs.append(replace(copy.deepcopy(car_docs), name=name)) - - -@dataclass -class FordCANFDPlatformConfig(FordPlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: { - Bus.pt: 'ford_lincoln_base_pt', - }) - - def init(self): - super().init() - self.flags |= FordFlags.CANFD - -@dataclass -class FordF150LightningPlatform(FordCANFDPlatformConfig): - def init(self): - super().init() - - # Don't show in docs until this issue is resolved. See https://github.com/commaai/openpilot/issues/30302 - self.car_docs = [] - - -class CAR(Platforms): - FORD_BRONCO_SPORT_MK1 = FordPlatformConfig( - [FordCarDocs("Ford Bronco Sport 2021-24")], - CarSpecs(mass=1625, wheelbase=2.67, steerRatio=17.7), - ) - FORD_ESCAPE_MK4 = FordPlatformConfig( - [ - FordCarDocs("Ford Escape 2020-22", hybrid=True, plug_in_hybrid=True), - FordCarDocs("Ford Kuga 2020-23", "Adaptive Cruise Control with Lane Centering", hybrid=True, plug_in_hybrid=True), - ], - CarSpecs(mass=1750, wheelbase=2.71, steerRatio=16.7), - ) - FORD_ESCAPE_MK4_5 = FordCANFDPlatformConfig( - [ - FordCarDocs("Ford Escape 2023-24", hybrid=True, plug_in_hybrid=True, setup_video="https://www.youtube.com/watch?v=M6uXf4b2SHM"), - FordCarDocs("Ford Kuga Hybrid 2024", "All"), - FordCarDocs("Ford Kuga Plug-in Hybrid 2024", "All"), - ], - CarSpecs(mass=1750, wheelbase=2.71, steerRatio=16.7), - ) - FORD_EXPLORER_MK6 = FordPlatformConfig( - [ - FordCarDocs("Ford Explorer 2020-24", hybrid=True), # Hybrid: Limited and Platinum only - FordCarDocs("Lincoln Aviator 2020-24", "Co-Pilot360 Plus", plug_in_hybrid=True), # Hybrid: Grand Touring only - ], - CarSpecs(mass=2050, wheelbase=3.025, steerRatio=16.8), - ) - FORD_EXPEDITION_MK4 = FordCANFDPlatformConfig( - [FordCarDocs("Ford Expedition 2022-24", "Co-Pilot360 Assist 2.0", hybrid=False)], - CarSpecs(mass=2000, wheelbase=3.69, steerRatio=17.0), - ) - FORD_F_150_MK14 = FordCANFDPlatformConfig( - [FordCarDocs("Ford F-150 2021-23", "Co-Pilot360 Assist 2.0", hybrid=True)], - CarSpecs(mass=2000, wheelbase=3.69, steerRatio=17.0), - ) - FORD_F_150_LIGHTNING_MK1 = FordF150LightningPlatform( - [FordCarDocs("Ford F-150 Lightning 2022-23", "Co-Pilot360 Assist 2.0")], - CarSpecs(mass=2948, wheelbase=3.70, steerRatio=16.9), - ) - FORD_FOCUS_MK4 = FordPlatformConfig( - [FordCarDocs("Ford Focus 2018", "Adaptive Cruise Control with Lane Centering", footnotes=[Footnote.FOCUS], hybrid=True)], # mHEV only - CarSpecs(mass=1350, wheelbase=2.7, steerRatio=15.0), - ) - FORD_MAVERICK_MK1 = FordPlatformConfig( - [ - FordCarDocs("Ford Maverick 2022", "LARIAT Luxury", hybrid=True), - FordCarDocs("Ford Maverick 2023-24", "Co-Pilot360 Assist", hybrid=True), - ], - CarSpecs(mass=1650, wheelbase=3.076, steerRatio=17.0), - ) - FORD_MUSTANG_MACH_E_MK1 = FordCANFDPlatformConfig( - [FordCarDocs("Ford Mustang Mach-E 2021-24", "All", setup_video="https://www.youtube.com/watch?v=AR4_eTF3b_A")], - CarSpecs(mass=2200, wheelbase=2.984, steerRatio=17.0), # TODO: check steer ratio - ) - FORD_RANGER_MK2 = FordCANFDPlatformConfig( - [FordCarDocs("Ford Ranger 2024", "Adaptive Cruise Control with Lane Centering", setup_video="https://www.youtube.com/watch?v=2oJlXCKYOy0")], - CarSpecs(mass=2000, wheelbase=3.27, steerRatio=17.0), - ) - - -# FW response contains a combined software and part number -# A-Z except no I, O or W -# e.g. NZ6A-14C204-AAA -# 1222-333333-444 -# 1 = Model year hint (approximates model year/generation) -# 2 = Platform hint -# 3 = Part number -# 4 = Software version -FW_ALPHABET = b'A-HJ-NP-VX-Z' -FW_PATTERN = re.compile(b'^(?P[' + FW_ALPHABET + b'])' + - b'(?P[0-9' + FW_ALPHABET + b']{3})-' + - b'(?P[0-9' + FW_ALPHABET + b']{5,6})-' + - b'(?P[' + FW_ALPHABET + b']{2,})\x00*$') - - -def get_platform_codes(fw_versions: list[bytes] | set[bytes]) -> set[tuple[bytes, bytes]]: - codes = set() - for fw in fw_versions: - match = FW_PATTERN.match(fw) - if match is not None: - codes.add((match.group('platform_hint'), match.group('model_year_hint'))) - - return codes - - -def match_fw_to_car_fuzzy(live_fw_versions: LiveFwVersions, vin: str, offline_fw_versions: OfflineFwVersions) -> set[str]: - candidates: set[str] = set() - - for candidate, fws in offline_fw_versions.items(): - # Keep track of ECUs which pass all checks (platform hint, within model year hint range) - valid_found_ecus = set() - valid_expected_ecus = {ecu[1:] for ecu in fws if ecu[0] in PLATFORM_CODE_ECUS} - for ecu, expected_versions in fws.items(): - addr = ecu[1:] - # Only check ECUs expected to have platform codes - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - # Expected platform codes & model year hints - codes = get_platform_codes(expected_versions) - expected_platform_codes = {code for code, _ in codes} - expected_model_year_hints = {model_year_hint for _, model_year_hint in codes} - - # Found platform codes & model year hints - codes = get_platform_codes(live_fw_versions.get(addr, set())) - found_platform_codes = {code for code, _ in codes} - found_model_year_hints = {model_year_hint for _, model_year_hint in codes} - - # Check platform code matches for any found versions - if not any(found_platform_code in expected_platform_codes for found_platform_code in found_platform_codes): - break - - # Check any model year hint within range in the database. Note that some models have more than one - # platform code per ECU which we don't consider as separate ranges - if not any(min(expected_model_year_hints) <= found_model_year_hint <= max(expected_model_year_hints) for - found_model_year_hint in found_model_year_hints): - break - - valid_found_ecus.add(addr) - - # If all live ECUs pass all checks for candidate, add it as a match - if valid_expected_ecus.issubset(valid_found_ecus): - candidates.add(candidate) - - return candidates - - -# All of these ECUs must be present and are expected to have platform codes we can match -PLATFORM_CODE_ECUS = (Ecu.abs, Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps) - -DATA_IDENTIFIER_FORD_ASBUILT = 0xDE00 - -ASBUILT_BLOCKS: list[tuple[int, list]] = [ - (1, [Ecu.debug, Ecu.fwdCamera, Ecu.eps]), - (2, [Ecu.abs, Ecu.debug, Ecu.eps]), - (3, [Ecu.abs, Ecu.debug, Ecu.eps]), - (4, [Ecu.debug, Ecu.fwdCamera]), - (5, [Ecu.debug]), - (6, [Ecu.debug]), - (7, [Ecu.debug]), - (8, [Ecu.debug]), - (9, [Ecu.debug]), - (16, [Ecu.debug, Ecu.fwdCamera]), - (18, [Ecu.fwdCamera]), - (20, [Ecu.fwdCamera]), - (21, [Ecu.fwdCamera]), -] - - -def ford_asbuilt_block_request(block_id: int): - return bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + p16(DATA_IDENTIFIER_FORD_ASBUILT + block_id - 1) - - -def ford_asbuilt_block_response(block_id: int): - return bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + p16(DATA_IDENTIFIER_FORD_ASBUILT + block_id - 1) - - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - # CAN and CAN FD queries are combined. - # FIXME: For CAN FD, ECUs respond with frames larger than 8 bytes on the powertrain bus - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.debug, Ecu.engine, Ecu.eps, Ecu.fwdCamera, Ecu.fwdRadar, Ecu.shiftByWire], - logging=True, - ), - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.debug, Ecu.engine, Ecu.eps, Ecu.fwdCamera, Ecu.fwdRadar, Ecu.shiftByWire], - bus=0, - auxiliary=True, - ), - *[Request( - [StdQueries.TESTER_PRESENT_REQUEST, ford_asbuilt_block_request(block_id)], - [StdQueries.TESTER_PRESENT_RESPONSE, ford_asbuilt_block_response(block_id)], - whitelist_ecus=ecus, - bus=0, - logging=True, - ) for block_id, ecus in ASBUILT_BLOCKS], - ], - extra_ecus=[ - (Ecu.engine, 0x7e0, None), # Powertrain Control Module - # Note: We are unlikely to get a response from behind the gateway - (Ecu.shiftByWire, 0x732, None), # Gear Shift Module - (Ecu.debug, 0x7d0, None), # Accessory Protocol Interface Module - ], - # Custom fuzzy fingerprinting function using platform and model year hints - match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, -) - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/fw_query_definitions.py b/opendbc_repo/opendbc/car/fw_query_definitions.py deleted file mode 100644 index 5c48fed6a1..0000000000 --- a/opendbc_repo/opendbc/car/fw_query_definitions.py +++ /dev/null @@ -1,152 +0,0 @@ -import copy -from dataclasses import dataclass, field -import struct -from collections.abc import Callable - -from opendbc.car import uds -from opendbc.car.structs import CarParams - -Ecu = CarParams.Ecu - -AddrType = tuple[int, int | None] -EcuAddrBusType = tuple[int, int | None, int] -EcuAddrSubAddr = tuple[Ecu, int, int | None] - -LiveFwVersions = dict[AddrType, set[bytes]] -OfflineFwVersions = dict[str, dict[EcuAddrSubAddr, list[bytes]]] - -# A global list of addresses we will only ever consider for VIN responses -# engine, hybrid controller, Ford abs, Hyundai CAN FD cluster, 29-bit engine, PGM-FI -# TODO: move these to each brand's FW query config -STANDARD_VIN_ADDRS = [0x7e0, 0x7e2, 0x760, 0x7c6, 0x18da10f1, 0x18da0ef1] - -ESSENTIAL_ECUS = [Ecu.engine, Ecu.eps, Ecu.abs, Ecu.fwdRadar, Ecu.fwdCamera, Ecu.vsa] -ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()} - - -def p16(val): - return struct.pack("!H", val) - - -class StdQueries: - # FW queries - TESTER_PRESENT_REQUEST = bytes([uds.SERVICE_TYPE.TESTER_PRESENT, 0x0]) - TESTER_PRESENT_RESPONSE = bytes([uds.SERVICE_TYPE.TESTER_PRESENT + 0x40, 0x0]) - - SHORT_TESTER_PRESENT_REQUEST = bytes([uds.SERVICE_TYPE.TESTER_PRESENT]) - SHORT_TESTER_PRESENT_RESPONSE = bytes([uds.SERVICE_TYPE.TESTER_PRESENT + 0x40]) - - DEFAULT_DIAGNOSTIC_REQUEST = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, - uds.SESSION_TYPE.DEFAULT]) - DEFAULT_DIAGNOSTIC_RESPONSE = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, - uds.SESSION_TYPE.DEFAULT, 0x0, 0x32, 0x1, 0xf4]) - - EXTENDED_DIAGNOSTIC_REQUEST = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, - uds.SESSION_TYPE.EXTENDED_DIAGNOSTIC]) - EXTENDED_DIAGNOSTIC_RESPONSE = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, - uds.SESSION_TYPE.EXTENDED_DIAGNOSTIC, 0x0, 0x32, 0x1, 0xf4]) - - MANUFACTURER_SOFTWARE_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_SOFTWARE_NUMBER) - MANUFACTURER_SOFTWARE_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_SOFTWARE_NUMBER) - - SUPPLIER_SOFTWARE_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_VERSION_NUMBER) - SUPPLIER_SOFTWARE_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_VERSION_NUMBER) - - MANUFACTURER_ECU_HARDWARE_NUMBER_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_HARDWARE_NUMBER) - MANUFACTURER_ECU_HARDWARE_NUMBER_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_HARDWARE_NUMBER) - - UDS_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_SOFTWARE_IDENTIFICATION) - UDS_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_SOFTWARE_IDENTIFICATION) - - OBD_VERSION_REQUEST = b'\x09\x04' - OBD_VERSION_RESPONSE = b'\x49\x04' - - # VIN queries - OBD_VIN_REQUEST = b'\x09\x02' - OBD_VIN_RESPONSE = b'\x49\x02\x01' - - UDS_VIN_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + p16(uds.DATA_IDENTIFIER_TYPE.VIN) - UDS_VIN_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + p16(uds.DATA_IDENTIFIER_TYPE.VIN) - - GM_VIN_REQUEST = b'\x1a\x90' - GM_VIN_RESPONSE = b'\x5a\x90' - - KWP_VIN_REQUEST = b'\x21\x81' - KWP_VIN_RESPONSE = b'\x61\x81' - - -@dataclass -class Request: - request: list[bytes] - response: list[bytes] - whitelist_ecus: list[Ecu] = field(default_factory=list) - rx_offset: int = 0x8 - bus: int = 1 - # Whether this query should be run on the first auxiliary panda (CAN FD cars for example) - auxiliary: bool = False - # FW responses from these queries will not be used for fingerprinting - logging: bool = False - # pandad toggles OBD multiplexing on/off as needed - obd_multiplexing: bool = True - - -@dataclass -class FwQueryConfig: - requests: list[Request] - # TODO: make this automatic and remove hardcoded lists, or do fingerprinting with ecus - # Overrides and removes from essential ecus for specific models and ecus (exact matching) - non_essential_ecus: dict[Ecu, list[str]] = field(default_factory=dict) - # Ecus added for data collection, not to be fingerprinted on - extra_ecus: list[tuple[Ecu, int, int | None]] = field(default_factory=list) - # Function a brand can implement to provide better fuzzy matching. Takes in FW versions and VIN, - # returns set of candidates. Only will match if one candidate is returned - match_fw_to_car_fuzzy: Callable[[LiveFwVersions, str, OfflineFwVersions], set[str]] | None = None - - def __post_init__(self): - # Asserts that a request exists if extra ecus are used - if len(self.extra_ecus): - assert len(self.requests), "Must define a request with extra ecus" - - # All extra ecus should be used in a request - for ecu, _, _ in self.extra_ecus: - assert (any(ecu in request.whitelist_ecus for request in self.requests) or - any(not request.whitelist_ecus for request in self.requests)), f"Ecu.{ECU_NAME[ecu]} not in any request" - - # These ECUs are already not in ESSENTIAL_ECUS which the fingerprint functions give a pass if missing - unnecessary_non_essential_ecus = set(self.non_essential_ecus) - set(ESSENTIAL_ECUS) - assert unnecessary_non_essential_ecus == set(), ("Declaring non-essential ECUs non-essential is not required: " + - f"{', '.join([f'Ecu.{ECU_NAME[ecu]}' for ecu in unnecessary_non_essential_ecus])}") - - # Asserts equal length request and response lists - for request_obj in self.requests: - assert len(request_obj.request) == len(request_obj.response), ("Request and response lengths do not match: " + - f"{request_obj.request} vs. {request_obj.response}") - - # No request on the OBD port (bus 1, multiplexed) should be run on an aux panda - assert not (request_obj.auxiliary and request_obj.bus == 1 and request_obj.obd_multiplexing), ("OBD multiplexed request should not " + - f"be marked auxiliary: {request_obj}") - - # Add aux requests (second panda) for all requests that are marked as auxiliary - for i in range(len(self.requests)): - if self.requests[i].auxiliary: - new_request = copy.deepcopy(self.requests[i]) - new_request.bus += 4 - self.requests.append(new_request) - - def get_all_ecus(self, offline_fw_versions: OfflineFwVersions, - include_extra_ecus: bool = True) -> set[EcuAddrSubAddr]: - # Add ecus in database + extra ecus - brand_ecus = {ecu for ecus in offline_fw_versions.values() for ecu in ecus} - - if include_extra_ecus: - brand_ecus |= set(self.extra_ecus) - - return brand_ecus diff --git a/opendbc_repo/opendbc/car/fw_versions.py b/opendbc_repo/opendbc/car/fw_versions.py deleted file mode 100644 index 09d83b5276..0000000000 --- a/opendbc_repo/opendbc/car/fw_versions.py +++ /dev/null @@ -1,327 +0,0 @@ -from collections import defaultdict -from collections.abc import Callable, Iterator -from typing import Protocol, TypeVar - -from tqdm import tqdm - -from opendbc.car import uds -from opendbc.car.can_definitions import CanRecvCallable, CanSendCallable -from opendbc.car.carlog import carlog -from opendbc.car.structs import CarParams -from opendbc.car.ecu_addrs import get_ecu_addrs -from opendbc.car.fingerprints import FW_VERSIONS -from opendbc.car.fw_query_definitions import ESSENTIAL_ECUS, AddrType, EcuAddrBusType, FwQueryConfig, LiveFwVersions, OfflineFwVersions -from opendbc.car.interfaces import get_interface_attr -from opendbc.car.isotp_parallel_query import IsoTpParallelQuery - -Ecu = CarParams.Ecu -FUZZY_EXCLUDE_ECUS = [Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps, Ecu.debug] - -FW_QUERY_CONFIGS: dict[str, FwQueryConfig] = get_interface_attr('FW_QUERY_CONFIG', ignore_none=True) -VERSIONS = get_interface_attr('FW_VERSIONS', ignore_none=True) - -MODEL_TO_BRAND = {c: b for b, e in VERSIONS.items() for c in e} -REQUESTS = [(brand, config, r) for brand, config in FW_QUERY_CONFIGS.items() for r in config.requests] - -T = TypeVar('T') -ObdCallback = Callable[[bool], None] - - -def chunks(l: list[T], n: int = 128) -> Iterator[list[T]]: - for i in range(0, len(l), n): - yield l[i:i + n] - - -def is_brand(brand: str, filter_brand: str | None) -> bool: - """Returns if brand matches filter_brand or no brand filter is specified""" - return filter_brand is None or brand == filter_brand - - -def build_fw_dict(fw_versions: list[CarParams.CarFw], filter_brand: str = None) -> dict[AddrType, set[bytes]]: - fw_versions_dict: defaultdict[AddrType, set[bytes]] = defaultdict(set) - for fw in fw_versions: - if is_brand(fw.brand, filter_brand) and not fw.logging: - sub_addr = fw.subAddress if fw.subAddress != 0 else None - fw_versions_dict[(fw.address, sub_addr)].add(fw.fwVersion) - return dict(fw_versions_dict) - - -class MatchFwToCar(Protocol): - def __call__(self, live_fw_versions: LiveFwVersions, match_brand: str = None, log: bool = True) -> set[str]: - ... - - -def match_fw_to_car_fuzzy(live_fw_versions: LiveFwVersions, match_brand: str = None, log: bool = True, exclude: str = None) -> set[str]: - """Do a fuzzy FW match. This function will return a match, and the number of firmware version - that were matched uniquely to that specific car. If multiple ECUs uniquely match to different cars - the match is rejected.""" - - # Build lookup table from (addr, sub_addr, fw) to list of candidate cars - all_fw_versions = defaultdict(list) - for candidate, fw_by_addr in FW_VERSIONS.items(): - if not is_brand(MODEL_TO_BRAND[candidate], match_brand): - continue - - if candidate == exclude: - continue - - for addr, fws in fw_by_addr.items(): - # These ECUs are known to be shared between models (EPS only between hybrid/ICE version) - # Getting this exactly right isn't crucial, but excluding camera and radar makes it almost - # impossible to get 3 matching versions, even if two models with shared parts are released at the same - # time and only one is in our database. - if addr[0] in FUZZY_EXCLUDE_ECUS: - continue - for f in fws: - all_fw_versions[(addr[1], addr[2], f)].append(candidate) - - matched_ecus = set() - match: str | None = None - for addr, versions in live_fw_versions.items(): - ecu_key = (addr[0], addr[1]) - for version in versions: - # All cars that have this FW response on the specified address - candidates = all_fw_versions[(*ecu_key, version)] - - if len(candidates) == 1: - matched_ecus.add(ecu_key) - if match is None: - match = candidates[0] - # We uniquely matched two different cars. No fuzzy match possible - elif match != candidates[0]: - return set() - - # Note that it is possible to match to a candidate without all its ECUs being present - # if there are enough matches. FIXME: parameterize this or require all ECUs to exist like exact matching - if match and len(matched_ecus) >= 2: - if log: - carlog.error(f"Fingerprinted {match} using fuzzy match. {len(matched_ecus)} matching ECUs") - return {match} - else: - return set() - - -def match_fw_to_car_exact(live_fw_versions: LiveFwVersions, match_brand: str = None, log: bool = True, extra_fw_versions: dict = None) -> set[str]: - """Do an exact FW match. Returns all cars that match the given - FW versions for a list of "essential" ECUs. If an ECU is not considered - essential the FW version can be missing to get a fingerprint, but if it's present it - needs to match the database.""" - if extra_fw_versions is None: - extra_fw_versions = {} - - invalid = set() - candidates = {c: f for c, f in FW_VERSIONS.items() if - is_brand(MODEL_TO_BRAND[c], match_brand)} - - for candidate, fws in candidates.items(): - config = FW_QUERY_CONFIGS[MODEL_TO_BRAND[candidate]] - for ecu, expected_versions in fws.items(): - expected_versions = expected_versions + extra_fw_versions.get(candidate, {}).get(ecu, []) - ecu_type = ecu[0] - addr = ecu[1:] - - found_versions = live_fw_versions.get(addr, set()) - if not len(found_versions): - # Some models can sometimes miss an ecu, or show on two different addresses - # FIXME: this logic can be improved to be more specific, should require one of the two addresses - if candidate in config.non_essential_ecus.get(ecu_type, []): - continue - - # Ignore non essential ecus - if ecu_type not in ESSENTIAL_ECUS: - continue - - # Virtual debug ecu doesn't need to match the database - if ecu_type == Ecu.debug: - continue - - if not any(found_version in expected_versions for found_version in found_versions): - invalid.add(candidate) - break - - return set(candidates.keys()) - invalid - - -def match_fw_to_car(fw_versions: list[CarParams.CarFw], vin: str, allow_exact: bool = True, - allow_fuzzy: bool = True, log: bool = True) -> tuple[bool, set[str]]: - # Try exact matching first - exact_matches: list[tuple[bool, MatchFwToCar]] = [] - if allow_exact: - exact_matches = [(True, match_fw_to_car_exact)] - if allow_fuzzy: - exact_matches.append((False, match_fw_to_car_fuzzy)) - - for exact_match, match_func in exact_matches: - # For each brand, attempt to fingerprint using all FW returned from its queries - matches: set[str] = set() - for brand in VERSIONS.keys(): - fw_versions_dict = build_fw_dict(fw_versions, filter_brand=brand) - matches |= match_func(fw_versions_dict, match_brand=brand, log=log) - - # If specified and no matches so far, fall back to brand's fuzzy fingerprinting function - config = FW_QUERY_CONFIGS[brand] - if not exact_match and not len(matches) and config.match_fw_to_car_fuzzy is not None: - matches |= config.match_fw_to_car_fuzzy(fw_versions_dict, vin, VERSIONS[brand]) - - if len(matches): - return exact_match, matches - - return True, set() - - -def get_present_ecus(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, num_pandas: int = 1) -> set[EcuAddrBusType]: - # queries are split by OBD multiplexing mode - queries: dict[bool, list[list[EcuAddrBusType]]] = {True: [], False: []} - parallel_queries: dict[bool, list[EcuAddrBusType]] = {True: [], False: []} - responses: set[EcuAddrBusType] = set() - - for brand, config, r in REQUESTS: - # Skip query if no panda available - if r.bus > num_pandas * 4 - 1: - continue - - for ecu_type, addr, sub_addr in config.get_all_ecus(VERSIONS[brand]): - # Only query ecus in whitelist if whitelist is not empty - if len(r.whitelist_ecus) == 0 or ecu_type in r.whitelist_ecus: - a = (addr, sub_addr, r.bus) - # Build set of queries - if sub_addr is None: - if a not in parallel_queries[r.obd_multiplexing]: - parallel_queries[r.obd_multiplexing].append(a) - else: # subaddresses must be queried one by one - if [a] not in queries[r.obd_multiplexing]: - queries[r.obd_multiplexing].append([a]) - - # Build set of expected responses to filter - response_addr = uds.get_rx_addr_for_tx_addr(addr, r.rx_offset) - responses.add((response_addr, sub_addr, r.bus)) - - for obd_multiplexing in queries: - queries[obd_multiplexing].insert(0, parallel_queries[obd_multiplexing]) - - ecu_responses = set() - for obd_multiplexing in queries: - set_obd_multiplexing(obd_multiplexing) - for query in queries[obd_multiplexing]: - ecu_responses.update(get_ecu_addrs(can_recv, can_send, set(query), responses, timeout=0.1)) - return ecu_responses - - -def get_brand_ecu_matches(ecu_rx_addrs: set[EcuAddrBusType]) -> dict[str, list[bool]]: - """Returns dictionary of brands and matches with ECUs in their FW versions""" - - brand_rx_addrs = {brand: set() for brand in FW_QUERY_CONFIGS} - brand_matches = {brand: [] for brand, _, _ in REQUESTS} - - # Since we can't know what request an ecu responded to, add matches for all possible rx offsets - for brand, config, r in REQUESTS: - for ecu in config.get_all_ecus(VERSIONS[brand]): - if len(r.whitelist_ecus) == 0 or ecu[0] in r.whitelist_ecus: - brand_rx_addrs[brand].add((uds.get_rx_addr_for_tx_addr(ecu[1], r.rx_offset), ecu[2])) - - for brand, addrs in brand_rx_addrs.items(): - for addr in addrs: - # TODO: check bus from request as well - brand_matches[brand].append(addr in [addr[:2] for addr in ecu_rx_addrs]) - - return brand_matches - - -def get_fw_versions_ordered(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, vin: str, - ecu_rx_addrs: set[EcuAddrBusType], timeout: float = 0.1, num_pandas: int = 1, progress: bool = False) -> list[CarParams.CarFw]: - """Queries for FW versions ordering brands by likelihood, breaks when exact match is found""" - - all_car_fw = [] - brand_matches = get_brand_ecu_matches(ecu_rx_addrs) - - # Sort brands by number of matching ECUs first, then percentage of matching ECUs in the database - # This allows brands with only one ECU to be queried first (e.g. Tesla) - for brand in sorted(brand_matches, key=lambda b: (brand_matches[b].count(True), brand_matches[b].count(True) / len(brand_matches[b])), reverse=True): - # Skip this brand if there are no matching present ECUs - if True not in brand_matches[brand]: - continue - - car_fw = get_fw_versions(can_recv, can_send, set_obd_multiplexing, query_brand=brand, timeout=timeout, num_pandas=num_pandas, progress=progress) - all_car_fw.extend(car_fw) - - # If there is a match using this brand's FW alone, finish querying early - _, matches = match_fw_to_car(car_fw, vin, log=False) - if len(matches) == 1: - break - - return all_car_fw - - -def get_fw_versions(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, query_brand: str = None, - extra: OfflineFwVersions = None, timeout: float = 0.1, num_pandas: int = 1, progress: bool = False) -> list[CarParams.CarFw]: - versions = VERSIONS.copy() - - if query_brand is not None: - versions = {query_brand: versions[query_brand]} - - if extra is not None: - versions.update(extra) - - # Extract ECU addresses to query from fingerprints - # ECUs using a subaddress need be queried one by one, the rest can be done in parallel - addrs = [] - parallel_addrs = [] - ecu_types = {} - - for brand, brand_versions in versions.items(): - config = FW_QUERY_CONFIGS[brand] - for ecu_type, addr, sub_addr in config.get_all_ecus(brand_versions): - a = (brand, addr, sub_addr) - if a not in ecu_types: - ecu_types[a] = ecu_type - - if sub_addr is None: - if a not in parallel_addrs: - parallel_addrs.append(a) - else: - if [a] not in addrs: - addrs.append([a]) - - addrs.insert(0, parallel_addrs) - - # Get versions and build capnp list to put into CarParams - car_fw = [] - requests = [(brand, config, r) for brand, config, r in REQUESTS if is_brand(brand, query_brand)] - for addr_group in tqdm(addrs, disable=not progress): # split by subaddr, if any - for addr_chunk in chunks(addr_group): - for brand, config, r in requests: - # Skip query if no panda available - if r.bus > num_pandas * 4 - 1: - continue - - # Toggle OBD multiplexing for each request - if r.bus % 4 == 1: - set_obd_multiplexing(r.obd_multiplexing) - - try: - query_addrs = [(a, s) for (b, a, s) in addr_chunk if b in (brand, 'any') and - (len(r.whitelist_ecus) == 0 or ecu_types[(b, a, s)] in r.whitelist_ecus)] - - if query_addrs: - query = IsoTpParallelQuery(can_send, can_recv, r.bus, query_addrs, r.request, r.response, r.rx_offset) - for (tx_addr, sub_addr), version in query.get_data(timeout).items(): - f = CarParams.CarFw() - - f.ecu = ecu_types.get((brand, tx_addr, sub_addr), Ecu.unknown) - f.fwVersion = version - f.address = tx_addr - f.responseAddress = uds.get_rx_addr_for_tx_addr(tx_addr, r.rx_offset) - f.request = r.request - f.brand = brand - f.bus = r.bus - f.logging = r.logging or (f.ecu, tx_addr, sub_addr) in config.extra_ecus - f.obdMultiplexing = r.obd_multiplexing - - if sub_addr is not None: - f.subAddress = sub_addr - - car_fw.append(f) - except Exception: - carlog.exception("FW query exception") - - return car_fw diff --git a/opendbc_repo/opendbc/car/gm/__init__.py b/opendbc_repo/opendbc/car/gm/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/gm/carcontroller.py b/opendbc_repo/opendbc/car/gm/carcontroller.py deleted file mode 100644 index 627b339a49..0000000000 --- a/opendbc_repo/opendbc/car/gm/carcontroller.py +++ /dev/null @@ -1,332 +0,0 @@ -from openpilot.common.params import Params -from openpilot.common.filter_simple import FirstOrderFilter - -import numpy as np -from opendbc.can.packer import CANPacker -from opendbc.car import Bus, DT_CTRL, apply_driver_steer_torque_limits, structs, create_gas_interceptor_command -from opendbc.car.gm import gmcan -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.gm.values import DBC, CanBus, CarControllerParams, CruiseButtons, GMFlags, CC_ONLY_CAR, EV_CAR, AccState, CC_REGEN_PADDLE_CAR, CAR -from opendbc.car.interfaces import CarControllerBase -from openpilot.selfdrive.controls.lib.drive_helpers import apply_deadzone -from opendbc.car.vehicle_model import ACCELERATION_DUE_TO_GRAVITY -from openpilot.selfdrive.car.cruise import VCruiseCarrot - -VisualAlert = structs.CarControl.HUDControl.VisualAlert -NetworkLocation = structs.CarParams.NetworkLocation -LongCtrlState = structs.CarControl.Actuators.LongControlState - -# Camera cancels up to 0.1s after brake is pressed, ECM allows 0.5s -CAMERA_CANCEL_DELAY_FRAMES = 10 -# Enforce a minimum interval between steering messages to avoid a fault -MIN_STEER_MSG_INTERVAL_MS = 15 - -# constants for pitch compensation -PITCH_DEADZONE = 0.01 # [radians] 0.01 ? 1% grade -BRAKE_PITCH_FACTOR_BP = [5., 10.] # [m/s] smoothly revert to planned accel at low speeds -BRAKE_PITCH_FACTOR_V = [0., 1.] # [unitless in [0,1]]; don't touch - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.start_time = 0. - self.apply_torque_last = 0 - self.apply_gas = 0 - self.apply_brake = 0 - self.apply_speed = 0 # kans: button spam - self.frame = 0 - self.last_steer_frame = 0 - self.last_button_frame = 0 - self.cancel_counter = 0 - self.pedal_steady = 0. - - self.lka_steering_cmd_counter = 0 - self.lka_icon_status_last = (False, False) - - self.params = CarControllerParams(self.CP) - self.params_ = Params() # kans: button spam - - self.packer_pt = CANPacker(DBC[self.CP.carFingerprint][Bus.pt]) - self.packer_obj = CANPacker(DBC[self.CP.carFingerprint][Bus.radar]) - self.packer_ch = CANPacker(DBC[self.CP.carFingerprint][Bus.chassis]) - - self.long_pitch = False - self.use_ev_tables = False - - self.pitch = FirstOrderFilter(0., 0.09 * 4, DT_CTRL * 4) # runs at 25 Hz - self.accel_g = 0.0 - # GM: AutoResume - self.activateCruise_after_brake = False - self.v_cruise_carrot = VCruiseCarrot(self.CP) - - @staticmethod - def calc_pedal_command(accel: float, long_active: bool, car_velocity) -> tuple[float, bool]: - if not long_active: return 0., False - press_regen_paddle = False - - if accel < -0.3: #-0.15: - press_regen_paddle = True - pedal_gas = 0 - else: - # pedaloffset = 0.24 - pedaloffset = np.interp(car_velocity, [0., 3, 6, 30], [0.08, 0.175, 0.240, 0.240]) - pedal_gas = np.clip((pedaloffset + accel * 0.6), 0.0, 1.0) - - ####for safety. - pedal_gas_max = np.interp(car_velocity, [0.0, 5, 30], [0.21, 0.3175, 0.3525]) - pedal_gas = np.clip(pedal_gas, 0.0, pedal_gas_max) - ####for safety. end. - - return pedal_gas, press_regen_paddle - - def update(self, CC, CS, now_nanos): - - if self.frame % 50 == 0: - params = Params() - steerMax = params.get_int("CustomSteerMax") - steerDeltaUp = params.get_int("CustomSteerDeltaUp") - steerDeltaDown = params.get_int("CustomSteerDeltaDown") - if steerMax > 0: - self.params.STEER_MAX = steerMax - if steerDeltaUp > 0: - self.params.STEER_DELTA_UP = steerDeltaUp - if steerDeltaDown > 0: - self.params.STEER_DELTA_DOWN = steerDeltaDown - self.long_pitch = Params().get_bool("LongPitch") - self.use_ev_tables = Params().get_bool("EVTable") - - actuators = CC.actuators - accel = brake_accel = actuators.accel - hud_control = CC.hudControl - hud_alert = hud_control.visualAlert - hud_v_cruise = hud_control.setSpeed - if hud_v_cruise > 70: - hud_v_cruise = 0 - - - # Send CAN commands. - can_sends = [] - - # Steering (Active: 50Hz, inactive: 10Hz) - steer_step = self.params.STEER_STEP if CC.latActive else self.params.INACTIVE_STEER_STEP - - if self.CP.networkLocation == NetworkLocation.fwdCamera: - # Also send at 50Hz: - # - on startup, first few msgs are blocked - # - until we're in sync with camera so counters align when relay closes, preventing a fault. - # openpilot can subtly drift, so this is activated throughout a drive to stay synced - out_of_sync = self.lka_steering_cmd_counter % 4 != (CS.cam_lka_steering_cmd_counter + 1) % 4 - if CS.loopback_lka_steering_cmd_ts_nanos == 0 or out_of_sync: - steer_step = self.params.STEER_STEP - - self.lka_steering_cmd_counter += 1 if CS.loopback_lka_steering_cmd_updated else 0 - - # Avoid GM EPS faults when transmitting messages too close together: skip this transmit if we - # received the ASCMLKASteeringCmd loopback confirmation too recently - last_lka_steer_msg_ms = (now_nanos - CS.loopback_lka_steering_cmd_ts_nanos) * 1e-6 - if (self.frame - self.last_steer_frame) >= steer_step and last_lka_steer_msg_ms > MIN_STEER_MSG_INTERVAL_MS: - # Initialize ASCMLKASteeringCmd counter using the camera until we get a msg on the bus - if CS.loopback_lka_steering_cmd_ts_nanos == 0: - self.lka_steering_cmd_counter = CS.pt_lka_steering_cmd_counter + 1 - - if CC.latActive: - new_torque = int(round(actuators.torque * self.params.STEER_MAX)) - apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.params) - else: - apply_torque = 0 - - self.last_steer_frame = self.frame - self.apply_torque_last = apply_torque - idx = self.lka_steering_cmd_counter % 4 - can_sends.append(gmcan.create_steering_control(self.packer_pt, CanBus.POWERTRAIN, apply_torque, idx, CC.latActive)) - - if self.CP.openpilotLongitudinalControl: - - if self.CP.carFingerprint in (CAR.CHEVROLET_VOLT): - button_counter = (CS.buttons_counter + 1) % 4 - # Auto Cruise - if CS.out.activateCruise and not CS.out.cruiseState.enabled: - self.activateCruise_after_brake = False # 오토크루즈가 되기 위해 브레이크 신호는 OFF여야 함. - if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: # 25Hz(40ms 버튼주기) - self.last_button_frame = self.frame - can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, button_counter, CruiseButtons.DECEL_SET)) - - # GM: AutoResume - elif actuators.longControlState == LongCtrlState.starting: - if CS.out.cruiseState.enabled and not self.activateCruise_after_brake: #브레이크신호 한번만 보내기 위한 조건. - idx = (self.frame // 4) % 4 - brake_force = -0.5 #롱컨캔슬을 위한 브레이크값(0.0 이하) - apply_brake = self.brake_input(brake_force) - # 브레이크신호 전송(롱컨 꺼짐) - can_sends.append(gmcan.create_brake_command(self.packer_ch, CanBus.CHASSIS, apply_brake, idx)) - Params().put_bool_nonblocking("ActivateCruiseAfterBrake", True) # cruise.py에 브레이크 ON신호 전달 - self.activateCruise_after_brake = True # 브레이크신호는 한번만 보내고 초기화 - else: - auto_cruise_control = self.v_cruise_carrot.autoCruiseControl - if (CS.out.activateCruise or auto_cruise_control > 0) and \ - not CS.out.cruiseState.enabled: - if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: - self.last_button_frame = self.frame - can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, (CS.buttons_counter + 1) % 4, CruiseButtons.DECEL_SET)) - - # Gas/regen, brakes, and UI commands - all at 25Hz - if self.frame % 4 == 0: - # GM: softHold - stopping = actuators.longControlState == LongCtrlState.stopping or CS.out.softHoldActive > 0 - - # Pitch compensated acceleration; - # TODO: include future pitch (sm['modelDataV2'].orientation.y) to account for long actuator delay - if self.long_pitch and len(CC.orientationNED) > 1: - self.pitch.update(CC.orientationNED[1]) - self.accel_g = ACCELERATION_DUE_TO_GRAVITY * apply_deadzone(self.pitch.x, PITCH_DEADZONE) # driving uphill is positive pitch - accel += self.accel_g - brake_accel = actuators.accel + self.accel_g * np.interp(CS.out.vEgo, BRAKE_PITCH_FACTOR_BP, BRAKE_PITCH_FACTOR_V) - - at_full_stop = CC.longActive and CS.out.standstill - near_stop = CC.longActive and (abs(CS.out.vEgo) < self.params.NEAR_STOP_BRAKE_PHASE) - interceptor_gas_cmd = 0 - press_regen_paddle = False - if not CC.longActive: - # ASCM sends max regen when not enabled - self.apply_gas = self.params.INACTIVE_REGEN - self.apply_brake = 0 - elif near_stop and stopping and not CC.cruiseControl.resume: - self.apply_gas = self.params.INACTIVE_REGEN - self.apply_brake = int(min(-100 * self.CP.stopAccel, self.params.MAX_BRAKE)) - press_regen_paddle = False - else: - # Normal operation - if self.CP.carFingerprint in EV_CAR and self.use_ev_tables: - self.params.update_ev_gas_brake_threshold(CS.out.vEgo) - self.apply_gas = int(round(np.interp(accel if self.long_pitch else actuators.accel, self.params.EV_GAS_LOOKUP_BP, self.params.GAS_LOOKUP_V))) - self.apply_brake = int(round(np.interp(brake_accel if self.long_pitch else actuators.accel, self.params.EV_BRAKE_LOOKUP_BP, self.params.BRAKE_LOOKUP_V))) - else: - self.apply_gas = int(round(np.interp(accel if self.long_pitch else actuators.accel, self.params.GAS_LOOKUP_BP, self.params.GAS_LOOKUP_V))) - self.apply_brake = int(round(np.interp(brake_accel if self.long_pitch else actuators.accel, self.params.BRAKE_LOOKUP_BP, self.params.BRAKE_LOOKUP_V))) - # Don't allow any gas above inactive regen while stopping - # FIXME: brakes aren't applied immediately when enabling at a stop - if stopping: - self.apply_gas = self.params.INACTIVE_REGEN - if self.CP.carFingerprint in CC_ONLY_CAR: - # gas interceptor only used for full long control on cars without ACC - interceptor_gas_cmd, press_regen_paddle = self.calc_pedal_command(actuators.accel, CC.longActive, CS.out.vEgo) - - if self.CP.enableGasInterceptorDEPRECATED and self.apply_gas > self.params.INACTIVE_REGEN and CS.out.cruiseState.standstill: - # "Tap" the accelerator pedal to re-engage ACC - interceptor_gas_cmd = self.params.SNG_INTERCEPTOR_GAS - self.apply_brake = 0 - press_regen_paddle = False - self.apply_gas = self.params.INACTIVE_REGEN - - idx = (self.frame // 4) % 4 - - if self.CP.flags & GMFlags.CC_LONG.value: - if CC.longActive and CS.out.vEgo > self.CP.minEnableSpeed: - # Using extend instead of append since the message is only sent intermittently - can_sends.extend(gmcan.create_gm_cc_spam_command(self.packer_pt, self, CS, actuators)) - if self.CP.enableGasInterceptorDEPRECATED: - can_sends.append(create_gas_interceptor_command(self.packer_pt, interceptor_gas_cmd, idx)) - if self.CP.carFingerprint in CC_REGEN_PADDLE_CAR and press_regen_paddle: - can_sends.append(gmcan.create_regen_paddle_command(self.packer_pt, CanBus.POWERTRAIN)) - if self.CP.carFingerprint not in CC_ONLY_CAR: - at_full_stop = CC.longActive and CS.out.standstill - near_stop = CC.longActive and (abs(CS.out.vEgo) < self.params.NEAR_STOP_BRAKE_PHASE) - friction_brake_bus = CanBus.CHASSIS - # GM Camera exceptions - # TODO: can we always check the longControlState? - if self.CP.networkLocation == NetworkLocation.fwdCamera and self.CP.carFingerprint not in CC_ONLY_CAR: - at_full_stop = at_full_stop and stopping - friction_brake_bus = CanBus.POWERTRAIN - - - if self.CP.autoResumeSng: - resume = actuators.longControlState != LongCtrlState.starting or CC.cruiseControl.resume - at_full_stop = at_full_stop and not resume - - if CC.cruiseControl.resume and CS.pcm_acc_status == AccState.STANDSTILL: - acc_engaged = False - else: - acc_engaged = CC.enabled - - if actuators.longControlState in [LongCtrlState.stopping, LongCtrlState.starting]: - if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: - self.last_button_frame = self.frame - can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, (CS.buttons_counter + 1) % 4, CruiseButtons.RES_ACCEL)) - # GasRegenCmdActive needs to be 1 to avoid cruise faults. It describes the ACC state, not actuation - can_sends.append(gmcan.create_gas_regen_command(self.packer_pt, CanBus.POWERTRAIN, self.apply_gas, idx, acc_engaged, at_full_stop)) - can_sends.append(gmcan.create_friction_brake_command(self.packer_ch, friction_brake_bus, self.apply_brake, - idx, CC.enabled, near_stop, at_full_stop, self.CP)) - - # Send dashboard UI commands (ACC status) - send_fcw = hud_alert == VisualAlert.fcw - can_sends.append(gmcan.create_acc_dashboard_command(self.packer_pt, CanBus.POWERTRAIN, CC.enabled, - hud_v_cruise * CV.MS_TO_KPH, hud_control, send_fcw)) - else: - # to keep accel steady for logs when not sending gas - accel += self.accel_g - - # Radar needs to know current speed and yaw rate (50hz), - # and that ADAS is alive (10hz) - if not self.CP.radarUnavailable: - tt = self.frame * DT_CTRL - time_and_headlights_step = 10 - if self.frame % time_and_headlights_step == 0: - idx = (self.frame // time_and_headlights_step) % 4 - can_sends.append(gmcan.create_adas_time_status(CanBus.OBSTACLE, int((tt - self.start_time) * 60), idx)) - can_sends.append(gmcan.create_adas_headlights_status(self.packer_obj, CanBus.OBSTACLE)) - - speed_and_accelerometer_step = 2 - if self.frame % speed_and_accelerometer_step == 0: - idx = (self.frame // speed_and_accelerometer_step) % 4 - can_sends.append(gmcan.create_adas_steering_status(CanBus.OBSTACLE, idx)) - can_sends.append(gmcan.create_adas_accelerometer_speed_status(CanBus.OBSTACLE, abs(CS.out.vEgo), idx)) - - if self.CP.networkLocation == NetworkLocation.gateway and self.frame % self.params.ADAS_KEEPALIVE_STEP == 0: - can_sends += gmcan.create_adas_keepalive(CanBus.POWERTRAIN) - - # TODO: integrate this with the code block below? - if ( - (self.CP.flags & GMFlags.PEDAL_LONG.value) # Always cancel stock CC when using pedal interceptor - or (self.CP.flags & GMFlags.CC_LONG.value and not CC.enabled) # Cancel stock CC if OP is not active - ) and CS.out.cruiseState.enabled: - if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: - self.last_button_frame = self.frame - can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, (CS.buttons_counter + 1) % 4, CruiseButtons.CANCEL)) - - else: - # While car is braking, cancel button causes ECM to enter a soft disable state with a fault status. - # A delayed cancellation allows camera to cancel and avoids a fault when user depresses brake quickly - self.cancel_counter = self.cancel_counter + 1 if CC.cruiseControl.cancel else 0 - - # Stock longitudinal, integrated at camera - if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: - if self.cancel_counter > CAMERA_CANCEL_DELAY_FRAMES: - self.last_button_frame = self.frame - can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.CAMERA, (CS.buttons_counter + 1) % 4, CruiseButtons.CANCEL)) - - if self.CP.networkLocation == NetworkLocation.fwdCamera: - # Silence "Take Steering" alert sent by camera, forward PSCMStatus with HandsOffSWlDetectionStatus=1 - if self.frame % 10 == 0: - can_sends.append(gmcan.create_pscm_status(self.packer_pt, CanBus.CAMERA, CS.pscm_status)) - - new_actuators = actuators.as_builder() - new_actuators.accel = accel - new_actuators.torque = self.apply_torque_last / self.params.STEER_MAX - new_actuators.torqueOutputCan = self.apply_torque_last - new_actuators.gas = self.apply_gas - new_actuators.brake = self.apply_brake - new_actuators.speed = self.apply_speed # kans: button spam - - self.frame += 1 - return new_actuators, can_sends - - # GM: AutoResume - def brake_input(self, brake_force): - MAX_BRAKE = 400 - ZERO_GAS = 0.0 - - if brake_force > 0.0: - raise ValueError("brake_force는 0.0이하라야 됨.") - - scaled_brake = max(0, min(MAX_BRAKE, int(brake_force * -100))) # -를 +로 변환 - return -scaled_brake diff --git a/opendbc_repo/opendbc/car/gm/carstate.py b/opendbc_repo/opendbc/car/gm/carstate.py deleted file mode 100644 index 5dd7c5147f..0000000000 --- a/opendbc_repo/opendbc/car/gm/carstate.py +++ /dev/null @@ -1,228 +0,0 @@ -import copy -from opendbc.can import CANDefine, CANParser -from cereal import car -from openpilot.common.params import Params #kans -import numpy as np -from opendbc.car import Bus, create_button_events, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarStateBase -from opendbc.car.gm.values import DBC, AccState, CruiseButtons, STEER_THRESHOLD, CAR, DBC, CanBus, GMFlags, CC_ONLY_CAR, CAMERA_ACC_CAR - -ButtonType = structs.CarState.ButtonEvent.Type -TransmissionType = structs.CarParams.TransmissionType -NetworkLocation = structs.CarParams.NetworkLocation -GearShifter = structs.CarState.GearShifter -STANDSTILL_THRESHOLD = 10 * 0.0311 * CV.KPH_TO_MS - -BUTTONS_DICT = {CruiseButtons.RES_ACCEL: ButtonType.accelCruise, CruiseButtons.DECEL_SET: ButtonType.decelCruise, - CruiseButtons.MAIN: ButtonType.mainCruise, CruiseButtons.CANCEL: ButtonType.cancel, - CruiseButtons.GAP_DIST: ButtonType.gapAdjustCruise} - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - self.shifter_values = can_define.dv["ECMPRDNL2"]["PRNDL2"] - self.cluster_speed_hyst_gap = CV.KPH_TO_MS / 2. - self.cluster_min_speed = CV.KPH_TO_MS / 2. - - self.loopback_lka_steering_cmd_updated = False - self.loopback_lka_steering_cmd_ts_nanos = 0 - self.pt_lka_steering_cmd_counter = 0 - self.cam_lka_steering_cmd_counter = 0 - self.is_metric = False - - self.buttons_counter = 0 - self.single_pedal_mode = False - self.pedal_steady = 0. - self.cruise_buttons = 0 - # GAP_DIST - self.distance_button = 0 - - # cruiseMain default(test from nd0706-vision) - self.cruiseMain_on = True if Params().get_int("AutoEngage") == 2 else False - - def update_button_enable(self, buttonEvents: list[structs.CarState.ButtonEvent]): - if not self.CP.pcmCruise: - for b in buttonEvents: - # The ECM allows enabling on falling edge of set, but only rising edge of resume - if (b.type == ButtonType.accelCruise and b.pressed) or \ - (b.type == ButtonType.decelCruise and not b.pressed): - return True - return False - - def update(self, can_parsers) -> structs.CarState: - pt_cp = can_parsers[Bus.pt] - cam_cp = can_parsers[Bus.cam] - loopback_cp = can_parsers[Bus.loopback] - - ret = structs.CarState() - - prev_cruise_buttons = self.cruise_buttons - prev_distance_button = self.distance_button - self.cruise_buttons = pt_cp.vl["ASCMSteeringButton"]["ACCButtons"] - self.distance_button = pt_cp.vl["ASCMSteeringButton"]["DistanceButton"] - self.buttons_counter = pt_cp.vl["ASCMSteeringButton"]["RollingCounter"] - - self.pscm_status = copy.copy(pt_cp.vl["PSCMStatus"]) - # GAP_DIST - if self.cruise_buttons in [CruiseButtons.UNPRESS, CruiseButtons.INIT] and self.distance_button: - self.cruise_buttons = CruiseButtons.GAP_DIST - - if self.CP.enableBsm: - ret.leftBlindspot = pt_cp.vl["BCMBlindSpotMonitor"]["LeftBSM"] == 1 - ret.rightBlindspot = pt_cp.vl["BCMBlindSpotMonitor"]["RightBSM"] == 1 - - # Variables used for avoiding LKAS faults - self.loopback_lka_steering_cmd_updated = len(loopback_cp.vl_all["ASCMLKASteeringCmd"]["RollingCounter"]) > 0 - if self.loopback_lka_steering_cmd_updated: - self.loopback_lka_steering_cmd_ts_nanos = loopback_cp.ts_nanos["ASCMLKASteeringCmd"]["RollingCounter"] - if self.CP.networkLocation == NetworkLocation.fwdCamera and not self.CP.flags & GMFlags.NO_CAMERA.value: - self.pt_lka_steering_cmd_counter = pt_cp.vl["ASCMLKASteeringCmd"]["RollingCounter"] - self.cam_lka_steering_cmd_counter = cam_cp.vl["ASCMLKASteeringCmd"]["RollingCounter"] - - # This is to avoid a fault where you engage while still moving backwards after shifting to D. - # An Equinox has been seen with an unsupported status (3), so only check if either wheel is in reverse (2) - left_whl_sign = -1 if pt_cp.vl["EBCMWheelSpdRear"]["RLWheelDir"] == 2 else 1 - right_whl_sign = -1 if pt_cp.vl["EBCMWheelSpdRear"]["RRWheelDir"] == 2 else 1 - ret.wheelSpeeds = self.get_wheel_speeds( - left_whl_sign * pt_cp.vl["EBCMWheelSpdFront"]["FLWheelSpd"], - right_whl_sign * pt_cp.vl["EBCMWheelSpdFront"]["FRWheelSpd"], - left_whl_sign * pt_cp.vl["EBCMWheelSpdRear"]["RLWheelSpd"], - right_whl_sign * pt_cp.vl["EBCMWheelSpdRear"]["RRWheelSpd"], - ) - ret.vEgoRaw = float(np.mean([ret.wheelSpeeds.fl, ret.wheelSpeeds.fr, ret.wheelSpeeds.rl, ret.wheelSpeeds.rr])) - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - # sample rear wheel speeds, standstill=True if ECM allows engagement with brake - ret.standstill = abs(ret.wheelSpeeds.rl) <= STANDSTILL_THRESHOLD and abs(ret.wheelSpeeds.rr) <= STANDSTILL_THRESHOLD - - if pt_cp.vl["ECMPRDNL2"]["ManualMode"] == 1: - ret.gearShifter = self.parse_gear_shifter("T") - else: - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(pt_cp.vl["ECMPRDNL2"]["PRNDL2"], None)) - - if self.CP.flags & GMFlags.NO_ACCELERATOR_POS_MSG.value: - ret.brake = pt_cp.vl["EBCMBrakePedalPosition"]["BrakePedalPosition"] / 0xd0 - else: - ret.brake = pt_cp.vl["ECMAcceleratorPos"]["BrakePedalPos"] - if self.CP.networkLocation == NetworkLocation.fwdCamera: - ret.brakePressed = pt_cp.vl["ECMEngineStatus"]["BrakePressed"] != 0 - else: - # Some Volt 2016-17 have loose brake pedal push rod retainers which causes the ECM to believe - # that the brake is being intermittently pressed without user interaction. - # To avoid a cruise fault we need to use a conservative brake position threshold - # https://static.nhtsa.gov/odi/tsbs/2017/MC-10137629-9999.pdf - ret.brakePressed = ret.brake >= 10 - - # Regen braking is braking - if self.CP.transmissionType == TransmissionType.direct: - ret.regenBraking = pt_cp.vl["EBCMRegenPaddle"]["RegenPaddle"] != 0 - self.single_pedal_mode = ret.gearShifter == GearShifter.low or pt_cp.vl["EVDriveMode"]["SinglePedalModeActive"] == 1 - - if self.CP.enableGasInterceptorDEPRECATED: - ret.gas = (pt_cp.vl["GAS_SENSOR"]["INTERCEPTOR_GAS"] + pt_cp.vl["GAS_SENSOR"]["INTERCEPTOR_GAS2"]) / 2. - threshold = 20 if self.CP.carFingerprint in CAMERA_ACC_CAR else 4 - ret.gasPressed = ret.gas > threshold - else: - ret.gas = pt_cp.vl["AcceleratorPedal2"]["AcceleratorPedal2"] / 254. - ret.gasPressed = ret.gas > 1e-5 - - ret.steeringAngleDeg = pt_cp.vl["PSCMSteeringAngle"]["SteeringWheelAngle"] - ret.steeringRateDeg = pt_cp.vl["PSCMSteeringAngle"]["SteeringWheelRate"] - ret.steeringTorque = pt_cp.vl["PSCMStatus"]["LKADriverAppldTrq"] - ret.steeringTorqueEps = pt_cp.vl["PSCMStatus"]["LKATorqueDelivered"] - ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD - - # 0 inactive, 1 active, 2 temporarily limited, 3 failed - self.lkas_status = pt_cp.vl["PSCMStatus"]["LKATorqueDeliveredStatus"] - ret.steerFaultTemporary = self.lkas_status == 2 - ret.steerFaultPermanent = self.lkas_status == 3 - - # 1 - open, 0 - closed - ret.doorOpen = (pt_cp.vl["BCMDoorBeltStatus"]["FrontLeftDoor"] == 1 or - pt_cp.vl["BCMDoorBeltStatus"]["FrontRightDoor"] == 1 or - pt_cp.vl["BCMDoorBeltStatus"]["RearLeftDoor"] == 1 or - pt_cp.vl["BCMDoorBeltStatus"]["RearRightDoor"] == 1) - - # 1 - latched - ret.seatbeltUnlatched = pt_cp.vl["BCMDoorBeltStatus"]["LeftSeatBelt"] == 0 - ret.leftBlinker = pt_cp.vl["BCMTurnSignals"]["TurnSignals"] == 1 - ret.rightBlinker = pt_cp.vl["BCMTurnSignals"]["TurnSignals"] == 2 - - ret.parkingBrake = pt_cp.vl["BCMGeneralPlatformStatus"]["ParkBrakeSwActive"] == 1 - - ret.cruiseState.available = pt_cp.vl["ECMEngineStatus"]["CruiseMainOn"] != 0 - self.cruiseMain_on = ret.cruiseState.available - ret.espDisabled = pt_cp.vl["ESPStatus"]["TractionControlOn"] != 1 - ret.accFaulted = (pt_cp.vl["AcceleratorPedal2"]["CruiseState"] == AccState.FAULTED or - pt_cp.vl["EBCMFrictionBrakeStatus"]["FrictionBrakeUnavailable"] == 1) - - ret.cruiseState.enabled = pt_cp.vl["AcceleratorPedal2"]["CruiseState"] != AccState.OFF - ret.cruiseState.standstill = pt_cp.vl["AcceleratorPedal2"]["CruiseState"] == AccState.STANDSTILL - # kans: avoid to accFault - if self.CP.carFingerprint not in CAR.CHEVROLET_VOLT: - ret.cruiseState.standstill = False - if self.CP.networkLocation == NetworkLocation.fwdCamera and not self.CP.flags & GMFlags.NO_CAMERA.value: - if self.CP.carFingerprint not in CC_ONLY_CAR: - ret.cruiseState.speed = cam_cp.vl["ASCMActiveCruiseControlStatus"]["ACCSpeedSetpoint"] * CV.KPH_TO_MS - ret.stockAeb = False - # openpilot controls nonAdaptive when not pcmCruise - if self.CP.pcmCruise and self.CP.carFingerprint not in CC_ONLY_CAR: - ret.cruiseState.nonAdaptive = cam_cp.vl["ASCMActiveCruiseControlStatus"]["ACCCruiseState"] not in (2, 3) - if self.CP.carFingerprint in CC_ONLY_CAR: - ret.accFaulted = False - ret.cruiseState.speed = pt_cp.vl["ECMCruiseControl"]["CruiseSetSpeed"] * CV.KPH_TO_MS - ret.cruiseState.enabled = pt_cp.vl["ECMCruiseControl"]["CruiseActive"] != 0 - prev_lkas_enabled = self.lkas_enabled - self.lkas_enabled = pt_cp.vl["ASCMSteeringButton"]["LKAButton"] - - self.pcm_acc_status = pt_cp.vl["AcceleratorPedal2"]["CruiseState"] - if self.CP.carFingerprint in (CAR.CHEVROLET_TRAX, CAR.CHEVROLET_TRAILBLAZER, CAR.CHEVROLET_TRAILBLAZER_CC): - ret.vCluRatio = 0.96 - elif self.CP.flags & GMFlags.SPEED_RELATED_MSG.value: - # kans: use cluster speed & vCluRatio(longitudialPlanner) - self.is_metric = Params().get_bool("IsMetric") - speed_conv = CV.MPH_TO_MS if self.is_metric else CV.KPH_TO_MS - cluSpeed = pt_cp.vl["SPEED_RELATED"]["ClusterSpeed"] - ret.vEgoCluster = cluSpeed * speed_conv - vEgoClu, aEgoClu = self.update_clu_speed_kf(ret.vEgoCluster) - if self.CP.carFingerprint in CAR.CHEVROLET_VOLT: - ret.vCluRatio = 1.0 #(ret.vEgo / vEgoClu) if (vEgoClu > 3. and ret.vEgo > 3.) else 1.0 - else: - ret.vCluRatio = 0.96 - - # Don't add event if transitioning from INIT, unless it's to an actual button - if self.cruise_buttons != CruiseButtons.UNPRESS or prev_cruise_buttons != CruiseButtons.INIT: - ret.buttonEvents = [ - *create_button_events(self.cruise_buttons, prev_cruise_buttons, BUTTONS_DICT, - unpressed_btn=CruiseButtons.UNPRESS), - *create_button_events(self.distance_button, prev_distance_button, - {1: ButtonType.gapAdjustCruise}), - *create_button_events(self.lkas_enabled, prev_lkas_enabled, - {1: ButtonType.lkas}) - ] - - return ret - - @staticmethod - def get_can_parsers(CP): - pt_messages = [] - if CP.networkLocation == NetworkLocation.fwdCamera: - pt_messages += [ - ("ASCMLKASteeringCmd", float('nan')), - ] - if CP.transmissionType == TransmissionType.direct: - pt_messages += [ - ("EBCMRegenPaddle", 50), - ("EVDriveMode", float('nan')), - ] - loopback_messages = [ - ("ASCMLKASteeringCmd", float('nan')), - ] - - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], pt_messages, 0), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - Bus.loopback: CANParser(DBC[CP.carFingerprint][Bus.pt], loopback_messages, 128), - } - diff --git a/opendbc_repo/opendbc/car/gm/fingerprints.py b/opendbc_repo/opendbc/car/gm/fingerprints.py deleted file mode 100644 index ae10f80e76..0000000000 --- a/opendbc_repo/opendbc/car/gm/fingerprints.py +++ /dev/null @@ -1,216 +0,0 @@ -# ruff: noqa: E501 -from opendbc.car.gm.values import CAR - -# Trailblazer also matches as a SILVERADO, TODO: split with fw versions -# FIXME: There are Equinox users with different message lengths, specifically 304 and 320 - - -FINGERPRINTS = { - CAR.CADILLAC_CT6_ACC: [{ - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 4, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 460: 5, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 723: 2, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 977: 8, 979: 7, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 1, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 7, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 4, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1919: 7, 1920: 8, 1924: 8, 1927: 8, 1928: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2004: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 - }], - CAR.HOLDEN_ASTRA: [{ - 190: 8, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 8, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 401: 8, 413: 8, 417: 8, 419: 8, 422: 1, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 8, 455: 7, 456: 8, 458: 5, 479: 8, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 8, 501: 8, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 647: 5, 707: 8, 715: 8, 723: 8, 753: 5, 761: 7, 806: 1, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1009: 8, 1011: 6, 1017: 8, 1019: 3, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 8, 1280: 4, 1300: 8, 1328: 4, 1417: 8, 1906: 7, 1907: 7, 1908: 7, 1912: 7, 1919: 7 - }], - CAR.CHEVROLET_VOLT: [{ - 170: 8, 171: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 289: 8, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 577: 8, 647: 3, 707: 8, 711: 6, 715: 8, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 961: 8, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1928: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 - }, - { - 170: 8, 171: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 577: 8, 578: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 715: 8, 717: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1516: 8, 1601: 8, 1618: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1930: 7, 2016: 8, 2018: 8, 2020: 8, 2024: 8, 2028: 8 - }, - { - 170: 8, 171: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 199: 4, 201: 6, 209: 7, 211: 2, 241: 6, 288: 5, 289: 1, 290: 1, 298: 2, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 368: 8, 381: 2, 384: 8, 386: 5, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 3, 508: 8, 512: 3, 528: 4, 530: 8, 532: 6, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 761: 7, 810: 8, 821: 4, 823: 7, 832: 8, 840: 5, 842: 5, 844: 8, 853: 8, 866: 4, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7 - }, - # Volt Premier 2017 w/ flashed firmware, cam harness + pedal - { - 189: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 386: 8, 388: 8, 451: 8, 452: 8, 453: 6, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 497: 8, 500: 6, 501: 8, 513: 6, 528: 4, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 566: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1922: 7 - }, - # jfkoz - { - 170: 8, 171: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1930: 7, 2017: 8, 2020: 8, 2025: 8, 2028: 8 - }], - CAR.BUICK_LACROSSE: [{ - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 510: 8, 528: 5, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 5, 707: 8, 753: 5, 761: 7, 801: 8, 804: 3, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 872: 1, 882: 8, 890: 1, 892: 2, 893: 1, 894: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1904: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1914: 7, 1916: 7, 1918: 7, 1919: 7, 1937: 8, 1953: 8, 1968: 8, 2001: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 - }], - CAR.CHEVROLET_VOLT_CC: [ - # FIXME: Need a message to distinguish flashed from non-flashed - # Volt Premier w/o acc 2016 - # { - # 170: 8, 171: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 199: 4, 201: 6, 209: 7, 211: 2, 241: 6, 288: 5, 289: 1, 290: 1, 298: 2, 304: 8, 308: 4, 309: 8, 311: 8, 313: 8, 320: 8, 328: 1, 352: 5, 368: 8, 381: 6, 384: 8, 386: 5, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 3, 508: 8, 512: 3, 528: 4, 530: 8, 532: 6, 537: 4, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 8, 563: 5, 564: 5, 565: 8, 566: 5, 567: 3, 568: 1, 577: 8, 578: 8, 594: 8, 647: 3, 707: 8, 711: 6, 717: 5, 761: 7, 800: 6, 810: 8, 821: 4, 823: 7, 832: 8, 840: 5, 842: 6, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1602: 8, 1618: 8, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1928: 7, 1930: 7, 2016: 8, 2017: 8, 2018: 8, 2019: 8, 2020: 8, 2024: 8, 2025: 8, 2028: 8 - # }, - # { - # 201: 8, 493: 8, 495: 4, 193: 8, 197: 8, 209: 7, 171: 8, 456: 8, 199: 4, 489: 8, 211: 2, 499: 3, 390: 7, 532: 6, 568: 1, 761: 7, 381: 6, 485: 8, 189: 7, 479: 3, 711: 6, 501: 8, 241: 6, 717: 5, 869: 4, 389: 2, 454: 8, 170: 8, 190: 6, 497: 8, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 500: 6, 508: 8, 528: 4, 647: 3, 1105: 6, 1005: 6, 481: 7, 844: 8, 866: 4, 564: 5, 969: 8, 388: 8, 352: 5, 562: 8, 961: 8, 386: 8, 707: 8, 977: 8, 979: 7, 298: 8, 840: 5, 842: 5, 988: 6, 1001: 8, 560: 8, 546: 7, 558: 8, 309: 8, 995: 7, 311: 8, 566: 5, 567:3, 989: 8, 384: 4, 800: 6, 1033: 7, 1034: 7, 313: 8, 554: 3, 810: 8, 1017: 8, 1019: 2, 1020: 8, 1217: 8, 1223: 3, 1233: 8, 1227: 4, 1417: 8, 1009: 8, 1221: 5, 1275: 3, 1225: 7, 289: 8, 550: 8, 1273: 3, 1928: 7, 1187: 4, 1265: 8, 1927: 7, 1267: 1, 1906: 7, 288: 5, 304: 1, 328: 1, 1912: 7, 320: 3, 1910: 7, 563: 5, 1249: 8, 1930: 7, 1257: 6, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 565: 5, 1280: 4, 1907: 7 - # }, - # # Volt Premier w/o ACC 2018 + Pedal - # { - # 189: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 451: 8, 452: 8, 453: 6, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 497: 8, 500: 6, 501: 8, 513: 6, 528: 4, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 566: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1922: 7, 1930: 7 - # } - ], - CAR.BUICK_REGAL: [{ - 190: 8, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 8, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 8, 419: 8, 422: 4, 426: 8, 431: 8, 442: 8, 451: 8, 452: 8, 453: 8, 455: 7, 456: 8, 463: 3, 479: 8, 481: 7, 485: 8, 487: 8, 489: 8, 495: 8, 497: 8, 499: 3, 500: 8, 501: 8, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 578: 8, 579: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 882: 8, 884: 8, 890: 1, 892: 2, 893: 2, 894: 1, 961: 8, 967: 8, 969: 8, 977: 8, 979: 8, 985: 8, 1001: 8, 1005: 6, 1009: 8, 1011: 8, 1013: 3, 1017: 8, 1020: 8, 1024: 8, 1025: 8, 1026: 8, 1027: 8, 1028: 8, 1029: 8, 1030: 8, 1031: 8, 1032: 2, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 8, 1225: 7, 1233: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 8, 1263: 8, 1265: 8, 1267: 8, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1601: 8, 1602: 8, 1603: 7, 1611: 8, 1618: 8, 1906: 8, 1907: 7, 1912: 7, 1914: 7, 1916: 7, 1919: 7, 1930: 7, 2016: 8, 2018: 8, 2019: 8, 2024: 8, 2026: 8 - }], - CAR.CADILLAC_ATS: [{ - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 368: 3, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 462: 4, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 491: 2, 493: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 528: 5, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 719: 5, 723: 2, 753: 5, 761: 7, 801: 8, 804: 3, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 882: 8, 890: 1, 892: 2, 893: 2, 894: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1241: 3, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1904: 7, 1906: 7, 1907: 7, 1912: 7, 1916: 7, 1917: 7, 1918: 7, 1919: 7, 1920: 7, 1930: 7, 2016: 8, 2024: 8 - }], - CAR.CHEVROLET_MALIBU: [{ - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1930: 7, 2016: 8, 2024: 8 - }], - CAR.GMC_ACADIA: [{ - 190: 6, 192: 5, 193: 8, 197: 8, 199: 4, 201: 6, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 7, 368: 8, 381: 8, 384: 8, 386: 8, 388: 8, 393: 8, 398: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 458: 8, 460: 4, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 512: 3, 530: 8, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 568: 2, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 801: 8, 803: 8, 804: 3, 805: 8, 832: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1003: 5, 1005: 6, 1009: 8, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1918: 7, 1919: 7, 1920: 7, 1930: 7 - }, - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 313: 8, 320: 3, 322: 7, 328: 1, 338: 6, 340: 6, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1919: 7, 1920: 7, 1930: 7, 2016: 8, 2024: 8 - }], - CAR.CADILLAC_ESCALADE: [{ - 170: 8, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 4, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 460: 5, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 719: 5, 761: 7, 801: 8, 804: 3, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1917: 7, 1918: 7, 1919: 7, 1920: 7, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 2001: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 - }], - CAR.CADILLAC_ESCALADE_ESV: [{ - 309: 1, 848: 8, 849: 8, 850: 8, 851: 8, 852: 8, 853: 8, 854: 3, 1056: 6, 1057: 8, 1058: 8, 1059: 8, 1060: 8, 1061: 8, 1062: 8, 1063: 8, 1064: 8, 1065: 8, 1066: 8, 1067: 8, 1068: 8, 1120: 8, 1121: 8, 1122: 8, 1123: 8, 1124: 8, 1125: 8, 1126: 8, 1127: 8, 1128: 8, 1129: 8, 1130: 8, 1131: 8, 1132: 8, 1133: 8, 1134: 8, 1135: 8, 1136: 8, 1137: 8, 1138: 8, 1139: 8, 1140: 8, 1141: 8, 1142: 8, 1143: 8, 1146: 8, 1147: 8, 1148: 8, 1149: 8, 1150: 8, 1151: 8, 1216: 8, 1217: 8, 1218: 8, 1219: 8, 1220: 8, 1221: 8, 1222: 8, 1223: 8, 1224: 8, 1225: 8, 1226: 8, 1232: 8, 1233: 8, 1234: 8, 1235: 8, 1236: 8, 1237: 8, 1238: 8, 1239: 8, 1240: 8, 1241: 8, 1242: 8, 1787: 8, 1788: 8 - }], - CAR.CADILLAC_ESCALADE_ESV_2019: [{ - 715: 8, 840: 5, 717: 5, 869: 4, 880: 6, 289: 8, 454: 8, 842: 5, 460: 5, 463: 3, 801: 8, 170: 8, 190: 6, 241: 6, 201: 8, 417: 7, 211: 2, 419: 1, 398: 8, 426: 7, 487: 8, 442: 8, 451: 8, 452: 8, 453: 6, 479: 3, 311: 8, 500: 6, 647: 6, 193: 8, 707: 8, 197: 8, 209: 7, 199: 4, 455: 7, 313: 8, 481: 7, 485: 8, 489: 8, 249: 8, 393: 7, 407: 7, 413: 8, 422: 4, 431: 8, 501: 8, 499: 3, 810: 8, 508: 8, 381: 8, 462: 4, 532: 6, 562: 8, 386: 8, 761: 7, 573: 1, 554: 3, 719: 5, 560: 8, 1279: 4, 388: 8, 288: 5, 1005: 6, 497: 8, 844: 8, 961: 8, 967: 4, 977: 8, 979: 8, 985: 5, 1001: 8, 1017: 8, 1019: 2, 1020: 8, 1217: 8, 510: 8, 866: 4, 304: 1, 969: 8, 384: 4, 1033: 7, 1009: 8, 1034: 7, 1296: 4, 1930: 7, 1105: 5, 1013: 5, 1225: 7, 1919: 7, 320: 3, 534: 2, 352: 5, 298: 8, 1223: 2, 1233: 8, 608: 8, 1265: 8, 609: 6, 1267: 1, 1417: 8, 610: 6, 1906: 7, 611: 6, 612: 8, 613: 8, 208: 8, 564: 5, 309: 8, 1221: 5, 1280: 4, 1249: 8, 1907: 7, 1257: 6, 1300: 8, 1920: 7, 563: 5, 1322: 6, 1323: 4, 1328: 4, 1917: 7, 328: 1, 1912: 7, 1914: 7, 804: 3, 1918: 7 - }], - CAR.CHEVROLET_BOLT_EUV: [{ - 189: 7, 190: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 3, 241: 6, 257: 8, 288: 5, 289: 8, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 451: 8, 452: 8, 453: 6, 458: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 528: 5, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 566: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 869: 4, 880: 6, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1280: 4, 1296: 4, 1300: 8, 1611: 8, 1930: 7 - }], - CAR.CHEVROLET_BOLT_CC: [ - # Bolt Premier w/o ACC 2017 - { - 170: 8, 188: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 201: 6, 209: 7, 211: 2, 241: 6, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 311: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 5, 353: 3, 368: 8, 381: 6, 384: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 512: 3, 514: 2, 516: 4, 519: 2, 521: 3, 528: 5, 530: 8, 532: 7, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 8, 566: 6, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 832: 8, 840: 6, 842: 6, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 - }, - # Bolt Premier no ACC 2018 + Pedal - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 6, 567: 5, 568: 1, 573: 1, 577: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1616: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7, 2020: 8, 2023: 8, 2028: 8, 2031: 8 - }, - # Bolt Premier no ACC 2019 + Pedal - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 512: 6, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1268: 2, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2024: 8 - }, - # Bolt Premier no ACC 2020 - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1268: 2, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2024: 8 - }, - # Bolt Premier no ACC 2020 2 - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 368: 3, 381: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7 - }, - # Bolt Premier no ACC 2020 w pedal - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 368: 3, 381: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 512: 6, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7 - }, - # Bolt EV Premier 2017 - { - 170: 8, 188: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 201: 6, 209: 7, 211: 2, 241: 6, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 311: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 5, 353: 3, 368: 8, 381: 6, 384: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 512: 3, 514: 2, 516: 4, 519: 2, 521: 3, 528: 5, 530: 8, 532: 7, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 8, 566: 6, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 832: 8, 840: 6, 842: 6, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 - }, - # Bolt EV Premier 2017 w Pedal - { # pylint: disable=duplicate-key - 170: 8, 188: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 201: 6, 209: 7, 211: 2, 241: 6, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 311: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 5, 353: 3, 368: 8, 381: 6, 384: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 512: 3, 512: 6, 513: 6, 514: 2, 516: 4, 519: 2, 521: 3, 528: 5, 530: 8, 532: 7, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 8, 566: 6, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 832: 8, 840: 6, 842: 6, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 # pylint: disable=duplicate-key # noqa: F601 - }, - # Bolt EV Premier 2017 2 w Pedal - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 6, 567: 5, 568: 1, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7 - }, - # Bolt EV Premier no ACC 2023 - { - 170: 8, 188: 8, 189: 7, 190: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 3, 241: 6, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 308: 4, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 398: 8, 407: 7, 417: 8, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 8, 567: 5, 568: 2, 569: 3, 573: 1, 577: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 711: 6, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 880: 6, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1010: 8, 1013: 6, 1015: 1, 1017: 8, 1019: 2, 1020: 8, 1037: 5, 1105: 5, 1187: 5, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1601: 8, 1616: 8, 1618: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7, 1930: 7, 2016: 8, 2020: 8, 2023: 8, 2024: 8, 2028: 8, 2031: 8 - }, - # Bolt EV Premier no ACC 2021 - { - 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 257: 8, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 578: 8, 579: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1346: 8, 1347: 8, 1513: 8, 1516: 8, 1601: 8, 1616: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7, 2016: 8, 2017: 8, 2018: 8, 2020: 8, 2023: 8, 2024: 8, 2028: 8, 2031: 8 - }, - # shermy99's Bolt EV Premier no ACC 2023 - { - 170: 8, 188: 8, 189: 7, 190: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 3, 241: 6, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 308: 4, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 398: 8, 407: 7, 417: 8, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 513:6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 8, 567: 5, 568: 2, 569: 3, 573: 1, 577: 8, 579: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 711: 6, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 880: 6, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1010: 8, 1013: 6, 1015: 1, 1017: 8, 1019: 2, 1020: 8, 1037: 5, 1105: 5, 1187: 5, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1347: 8, 1513: 8, 1516: 8, 1601: 8, 1609: 8, 1613: 8, 1616: 8, 1618: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1913: 7, 1920: 8, 1922: 7, 1924: 8, 1927: 7, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2017: 8, 2018: 8, 2020: 8, 2023: 8, 2025: 8, 2028: 8, 2031: 8 - }], - CAR.CHEVROLET_SILVERADO: [{ - 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 528: 5, 532: 6, 534: 2, 560: 8, 562: 8, 563: 5, 565: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 761: 7, 789: 5, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1611: 8, 1930: 7 - }], - CAR.CHEVROLET_EQUINOX: [{ - 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1611: 8, 1930: 7 - }, - { - 190: 6, 201: 8, 211: 2, 717: 5, 241: 6, 451: 8, 298: 8, 452: 8, 453: 6, 479: 3, 485: 8, 249: 8, 500: 6, 587: 8, 1611: 8, 289: 8, 481: 7, 193: 8, 197: 8, 209: 7, 455: 7, 489: 8, 309: 8, 413: 8, 501: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 311: 8, 510: 8, 528: 5, 532: 6, 715: 8, 560: 8, 562: 8, 707: 8, 789: 5, 869: 4, 880: 6, 761: 7, 840: 5, 842: 5, 844: 8, 313: 8, 381: 8, 386: 8, 810: 8, 322: 7, 384: 4, 800: 6, 1033: 7, 1034: 7, 1296: 4, 753: 5, 388: 8, 288: 5, 497: 8, 463: 3, 304: 3, 977: 8, 1001: 8, 1280: 4, 320: 4, 352: 5, 563: 5, 565: 5, 1221: 5, 1011: 6, 1017: 8, 1020: 8, 1249: 8, 1300: 8, 328: 1, 1217: 8, 1233: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1930: 7, 1271: 8 - }], - CAR.CHEVROLET_EQUINOX_CC: [ - # lem's 2020 Equinox, LKAS no ACC - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 401: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 444: 7, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1273: 3, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1601: 8, 1611: 8, 1618: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 7, 1930: 7 - }], - # Trailblazer also matches as a Silverado, so comment out to avoid conflicts. - # TODO: split with FW versions - # CAR.TRAILBLAZER: [ - # { - # 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 587: 8, 707: 8, 715: 8, 717: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1609: 8, 1611: 8, 1613: 8, 1649: 8, 1792: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 2001: 8, 2017: 8, 2018: 8, 2020: 8 - # }], - CAR.CHEVROLET_SUBURBAN: [ - # Chevy Suburban Premier 2019 w Stock ACC no camera - { - 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8 - }, - # Chevy Suburban Premier 2019 w Stock ACC (72 ver) - { - 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1355: 8 - }, - # Chevy Suburban Premier 2019 w Stock ACC (70 ver) - { - 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8 - }], - CAR.CHEVROLET_SUBURBAN_CC: [ - # Slav's 2018 Suburban, LKAS no ACC - { - 170: 8, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 493: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 562: 8, 563: 5, 564: 5, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 7 - }], - CAR.GMC_YUKON_CC: [ - # greeninja's 2017 Yukon - { - 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 497: 8, 500: 6, 501: 8, 510: 8, 532: 6, 562: 8, 563: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8 - }], - CAR.CADILLAC_CT6_CC: [ - # badgers4life's 2017 CT6 - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 4, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 460: 5, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 723: 2, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 977: 8, 979: 7, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 1, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 7, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 4, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1919: 7, 1920: 8, 1924: 8, 1927: 8, 1928: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2004: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 - }], - CAR.CHEVROLET_TRAILBLAZER_CC: [ - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 723: 4, 730: 4, 761: 7, 800: 6, 840: 5, 842: 5, 844: 8, 869: 4, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 6, 1017: 8, 1020: 8, 1037: 5, 1105: 5, 1187: 5, 1195: 3, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1276: 2, 1277: 7, 1278: 4, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7 - }], - CAR.CHEVROLET_MALIBU_CC: [ - # Verylukyguy's Malibu - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 328: 1, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 409: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 730: 4, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 6, 1017: 8, 1020: 8, 1037: 5, 1105: 5, 1187: 6, 1189: 1, 1195: 3, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7 - }], - CAR.CADILLAC_XT5_CC: [ - # TRain's 2017 XT5 - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 510: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 647: 3, 707: 8, 717: 5, 723: 2, 753: 5, 761: 7, 800: 6, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1904: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1914: 7, 1919: 7, 1920: 7 - }], - CAR.CADILLAC_XT4: [ - # Cadillac XT4 w/ ACC 2023 - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 719: 5, 761: 7, 806: 1, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 880: 6, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 5, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1037: 5, 1105: 5, 1187: 5, 1195: 3, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1276: 2, 1277: 7, 1278: 4, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1417: 8, 1512: 8, 1517: 8, 1601: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 8, 1924: 8, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2016: 8, 2017: 8, 2018: 8, 2020: 8, 2021: 8, 2024: 8, 2026: 8 - }], - CAR.CHEVROLET_VOLT_2019: [ - { - 170: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 331: 3, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 573: 1, 577: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 715: 8, 717: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1268: 2, 1273: 3, 1275: 3, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1345: 8, 1417: 8, 1512: 8, 1513: 8, 1516: 8, 1517: 8, 1601: 8, 1609: 8, 1611: 8, 1618: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1871: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1920: 8, 1922: 7, 1927: 7, 1930: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1988: 8, 1990: 8, 2000: 8, 2001: 8, 2004: 8, 2017: 8, 2018: 8, 2020: 8, 2021: 8, 2023: 8, 2025: 8, 2028: 8, 2031: 8 - }], - CAR.CHEVROLET_TRAVERSE: [ - # Chevy Traverse w/ ACC 2023 - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 573: 1, 577: 8, 578: 8, 579: 8, 587: 8, 603: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 723: 4, 730: 4, 753: 5, 761: 7, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 5, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 5, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1346: 8, 1347: 8, 1355: 8, 1362: 8, 1417: 8, 1512: 8, 1514: 8, 1601: 8, 1602: 8, 1603: 7, 1609: 8, 1611: 8, 1613: 8, 1618: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1871: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 7, 1927: 8, 1930: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1988: 8, 1990: 8, 2000: 8, 2001: 8, 2004: 8, 2016: 8, 2017: 8, 2018: 8, 2019: 8, 2020: 8, 2024: 8, 2026: 8 - }], - CAR.BUICK_BABYENCLAVE: [ - # Buick Baby Enclave w/ ACC 2020-23 - { - 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 394: 7, 398: 8, 401: 8, 405: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 450: 4, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 456: 8, 457: 6, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 723: 4, 730: 4, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 872: 1, 880: 6, 882: 8, 890: 1, 892: 2, 893: 2, 894: 1, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1037: 5, 1105: 5, 1187: 5, 1195: 3, 1201: 3, 1217: 8, 1218: 3, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1276: 2, 1277: 7, 1278: 4, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1417: 8, 1512: 8, 1514: 8, 1517: 8, 1601: 8, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1914: 7, 1916: 7, 1919: 7, 1927: 7, 1930: 7, 2018: 8, 2020: 8, 2021: 8, 2028: 8 - }], - CAR.CHEVROLET_TRAX: [ - { - 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1930: 7 - }], - CAR.GMC_YUKON: [{ - 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1355: 8, 1611: 8 - }], -} - -FW_VERSIONS: dict[str, dict[tuple, list[bytes]]] = { -} diff --git a/opendbc_repo/opendbc/car/gm/gmcan.py b/opendbc_repo/opendbc/car/gm/gmcan.py deleted file mode 100644 index 53f67fb485..0000000000 --- a/opendbc_repo/opendbc/car/gm/gmcan.py +++ /dev/null @@ -1,239 +0,0 @@ -from opendbc.car import DT_CTRL -from opendbc.car.can_definitions import CanData -from opendbc.car.gm.values import CAR, CruiseButtons, CanBus -from opendbc.car.common.conversions import Conversions as CV - -# GM: AutoResume: brake signal to CAN -def create_brake_command(packer, bus, apply_brake, idx): - mode = 0xA if apply_brake > 0 else 0x1 - brake = (0x1000 - apply_brake) & 0xFFF - checksum = (0x10000 - (mode << 12) - brake - idx) & 0xFFFF - - values = { - "RollingCounter": idx, - "FrictionBrakeMode": mode, - "FrictionBrakeChecksum": checksum, - "FrictionBrakeCmd": -apply_brake - } - - return packer.make_can_msg("EBCMFrictionBrakeCmd", bus, values) - -def create_buttons(packer, bus, idx, button): - values = { - "ACCButtons": button, - "RollingCounter": idx, - "ACCAlwaysOne": 1, - "DistanceButton": 0, - } - - checksum = 240 + int(values["ACCAlwaysOne"] * 0xf) - checksum += values["RollingCounter"] * (0x4ef if values["ACCAlwaysOne"] != 0 else 0x3f0) - checksum -= int(values["ACCButtons"] - 1) << 4 # not correct if value is 0 - checksum -= 2 * values["DistanceButton"] - - values["SteeringButtonChecksum"] = checksum - return packer.make_can_msg("ASCMSteeringButton", bus, values) - - -def create_pscm_status(packer, bus, pscm_status): - values = {s: pscm_status[s] for s in [ - "HandsOffSWDetectionMode", - "HandsOffSWlDetectionStatus", - "LKATorqueDeliveredStatus", - "LKADriverAppldTrq", - "LKATorqueDelivered", - "LKATotalTorqueDelivered", - "RollingCounter", - "PSCMStatusChecksum", - ]} - checksum_mod = int(1 - values["HandsOffSWlDetectionStatus"]) << 5 - values["HandsOffSWlDetectionStatus"] = 1 - values["PSCMStatusChecksum"] += checksum_mod - return packer.make_can_msg("PSCMStatus", bus, values) - - -def create_steering_control(packer, bus, apply_torque, idx, lkas_active): - values = { - "LKASteeringCmdActive": lkas_active, - "LKASteeringCmd": apply_torque, - "RollingCounter": idx, - "LKASteeringCmdChecksum": 0x1000 - (lkas_active << 11) - (apply_torque & 0x7ff) - idx - } - - return packer.make_can_msg("ASCMLKASteeringCmd", bus, values) - - -def create_adas_keepalive(bus): - dat = b"\x00\x00\x00\x00\x00\x00\x00" - return [CanData(0x409, dat, bus), CanData(0x40a, dat, bus)] - - -def create_gas_regen_command(packer, bus, throttle, idx, enabled, at_full_stop): - values = { - "GasRegenCmdActive": enabled, - "RollingCounter": idx, - "GasRegenCmd": throttle, - "GasRegenFullStopActive": at_full_stop, - "GasRegenAccType": 1, - } - - dat = packer.make_can_msg("ASCMGasRegenCmd", bus, values)[1] - values["GasRegenChecksum"] = ((1 - enabled) << 24) | \ - (((0xff - dat[1]) & 0xff) << 16) | \ - (((0xff - dat[2]) & 0xff) << 8) | \ - ((0x100 - dat[3] - idx) & 0xff) - - return packer.make_can_msg("ASCMGasRegenCmd", bus, values) - - -def create_friction_brake_command(packer, bus, apply_brake, idx, enabled, near_stop, at_full_stop, CP): - mode = 0x1 - - # TODO: Understand this better. Volts and ICE Camera ACC cars are 0x1 when enabled with no brake - if enabled and CP.carFingerprint in (CAR.CHEVROLET_BOLT_EUV,): - mode = 0x9 - - if apply_brake > 0: - mode = 0xa - if at_full_stop: - mode = 0xd - - # TODO: this is to have GM bringing the car to complete stop, - # but currently it conflicts with OP controls, so turned off. Not set by all cars - #elif near_stop: - # mode = 0xb - - apply_brake = max(0, min(0xFFF, apply_brake)) - brake = (0x1000 - apply_brake) & 0xfff - checksum = (0x10000 - (mode << 12) - brake - idx) & 0xffff - - values = { - "RollingCounter": idx, - "FrictionBrakeMode": mode, - "FrictionBrakeChecksum": checksum, - "FrictionBrakeCmd": (0x1000 - apply_brake) & 0xfff, - } - - return packer.make_can_msg("EBCMFrictionBrakeCmd", bus, values) - - -def create_acc_dashboard_command(packer, bus, enabled, target_speed_kph, hud_control, fcw): - target_speed = min(target_speed_kph, 255) - - values = { - "ACCAlwaysOne": 1, - "ACCResumeButton": 0, - "ACCSpeedSetpoint": target_speed, - "ACCGapLevel": hud_control.leadDistanceBars * enabled, # 3 "far", 0 "inactive" - "ACCCmdActive": enabled, - "ACCAlwaysOne2": 1, - "ACCLeadCar": hud_control.leadVisible, - "FCWAlert": 0x3 if fcw else 0 - } - - return packer.make_can_msg("ASCMActiveCruiseControlStatus", bus, values) - - -def create_adas_time_status(bus, tt, idx): - dat = [(tt >> 20) & 0xff, (tt >> 12) & 0xff, (tt >> 4) & 0xff, - ((tt & 0xf) << 4) + (idx << 2)] - chksum = 0x1000 - dat[0] - dat[1] - dat[2] - dat[3] - chksum = chksum & 0xfff - dat += [0x40 + (chksum >> 8), chksum & 0xff, 0x12] - return CanData(0xa1, bytes(dat), bus) - - -def create_adas_steering_status(bus, idx): - dat = [idx << 6, 0xf0, 0x20, 0, 0, 0] - chksum = 0x60 + sum(dat) - dat += [chksum >> 8, chksum & 0xff] - return CanData(0x306, bytes(dat), bus) - - -def create_adas_accelerometer_speed_status(bus, speed_ms, idx): - spd = int(speed_ms * 16) & 0xfff - accel = 0 & 0xfff - # 0 if in park/neutral, 0x10 if in reverse, 0x08 for D/L - #stick = 0x08 - near_range_cutoff = 0x27 - near_range_mode = 1 if spd <= near_range_cutoff else 0 - far_range_mode = 1 - near_range_mode - dat = [0x08, spd >> 4, ((spd & 0xf) << 4) | (accel >> 8), accel & 0xff, 0] - chksum = 0x62 + far_range_mode + (idx << 2) + dat[0] + dat[1] + dat[2] + dat[3] + dat[4] - dat += [(idx << 5) + (far_range_mode << 4) + (near_range_mode << 3) + (chksum >> 8), chksum & 0xff] - return CanData(0x308, bytes(dat), bus) - - -def create_adas_headlights_status(packer, bus): - values = { - "Always42": 0x42, - "Always4": 0x4, - } - return packer.make_can_msg("ASCMHeadlight", bus, values) - - -def create_lka_icon_command(bus, active, critical, steer): - if active and steer == 1: - if critical: - dat = b"\x50\xc0\x14" - else: - dat = b"\x50\x40\x18" - elif active: - if critical: - dat = b"\x40\xc0\x14" - else: - dat = b"\x40\x40\x18" - else: - dat = b"\x00\x00\x00" - return CanData(0x104c006c, dat, bus) - -def create_regen_paddle_command(packer, bus): - values = { - "RegenPaddle": 0x20, #이 값은 패들의 강도일 가능성이 있음. - } - return packer.make_can_msg("EBCMRegenPaddle", bus, values) - -def create_gm_cc_spam_command(packer, controller, CS, actuators): - if controller.params_.get_bool("IsMetric"): - _CV = CV.MS_TO_KPH - RATE_UP_MAX = 0.04 - RATE_DOWN_MAX = 0.04 - else: - _CV = CV.MS_TO_MPH - RATE_UP_MAX = 0.2 - RATE_DOWN_MAX = 0.2 - - accel = actuators.accel * _CV # m/s/s to mph/s - speedSetPoint = int(round(CS.out.cruiseState.speed * _CV)) - - cruiseBtn = CruiseButtons.INIT - if speedSetPoint == CS.CP.minEnableSpeed and accel < -1: - cruiseBtn = CruiseButtons.CANCEL - controller.apply_speed = 0 - rate = 0.04 - elif accel < 0: - cruiseBtn = CruiseButtons.DECEL_SET - if speedSetPoint > (CS.out.vEgo * _CV) + 3.0: # If accel is changing directions, bring set speed to current speed as fast as possible - rate = RATE_DOWN_MAX - else: - rate = max(-1 / accel, RATE_DOWN_MAX) - controller.apply_speed = speedSetPoint - 1 - elif accel > 0: - cruiseBtn = CruiseButtons.RES_ACCEL - if speedSetPoint < (CS.out.vEgo * _CV) - 3.0: - rate = RATE_UP_MAX - else: - rate = max(1 / accel, RATE_UP_MAX) - controller.apply_speed = speedSetPoint + 1 - else: - controller.apply_speed = speedSetPoint - rate = float('inf') - - # Check rlogs closely - our message shouldn't show up on the pt bus for us - # Or bus 2, since we're forwarding... but I think it does - if (cruiseBtn != CruiseButtons.INIT) and ((controller.frame - controller.last_button_frame) * DT_CTRL > rate): - controller.last_button_frame = controller.frame - idx = (CS.buttons_counter + 1) % 4 # Need to predict the next idx for '22-23 EUV - return [create_buttons(packer, CanBus.POWERTRAIN, idx, cruiseBtn)] - else: - return [] diff --git a/opendbc_repo/opendbc/car/gm/interface.py b/opendbc_repo/opendbc/car/gm/interface.py deleted file mode 100644 index 367a04367a..0000000000 --- a/opendbc_repo/opendbc/car/gm/interface.py +++ /dev/null @@ -1,399 +0,0 @@ -#!/usr/bin/env python3 -import json -import os -from cereal import car -from math import fabs, exp -from openpilot.common.params import Params -from opendbc.car import get_safety_config, get_friction, structs -from opendbc.car.common.basedir import BASEDIR -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.gm.carcontroller import CarController -from opendbc.car.gm.carstate import CarState -from opendbc.car.gm.radar_interface import RadarInterface, RADAR_HEADER_MSG -from opendbc.car.gm.values import CAR, CarControllerParams, EV_CAR, CAMERA_ACC_CAR, CanBus, GMFlags, CC_ONLY_CAR, SDGM_CAR, CruiseButtons, GMSafetyFlags, ALT_ACCS -from opendbc.car.interfaces import CarInterfaceBase, TorqueFromLateralAccelCallbackType, FRICTION_THRESHOLD, LatControlInputs, NanoFFModel - -#ButtonType = structs.CarState.ButtonEvent.Type 이 두 줄도 사용되지 않습니다. -#GearShifter = structs.CarState.GearShifter -TransmissionType = structs.CarParams.TransmissionType -NetworkLocation = structs.CarParams.NetworkLocation - -CAM_MSG = 0x320 # AEBCmd - # TODO: Is this always linked to camera presence? -ACCELERATOR_POS_MSG = 0xbe - -NON_LINEAR_TORQUE_PARAMS = { - CAR.CHEVROLET_BOLT_EUV: [2.6531724862969748, 1.0, 0.1919764879840985, 0.009054123646805178], - # CAR.CHEVROLET_BOLT_CC: [2.6531724862969748, 1.0, 0.1919764879840985, 0.009054123646805178], - CAR.CHEVROLET_BOLT_CC: [1.8, 1.1, 0.3, -0.045], - CAR.GMC_ACADIA: [4.78003305, 1.0, 0.3122, 0.05591772], - CAR.CHEVROLET_SILVERADO: [3.29974374, 1.0, 0.25571356, 0.0465122] -} - -NEURAL_PARAMS_PATH = os.path.join(BASEDIR, 'torque_data/neural_ff_weights.json') - -PEDAL_MSG = 0x201 - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def get_pid_accel_limits(CP, current_speed, cruise_speed): - return CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX - - # Determined by iteratively plotting and minimizing error for f(angle, speed) = steer. - @staticmethod - def get_steer_feedforward_volt(desired_angle, v_ego): - desired_angle *= 0.02904609 - sigmoid = desired_angle / (1 + fabs(desired_angle)) - return 0.10006696 * sigmoid * (v_ego + 3.12485927) - - def get_steer_feedforward_function(self): - if self.CP.carFingerprint in (CAR.CHEVROLET_VOLT, CAR.CHEVROLET_VOLT_CC): - return self.get_steer_feedforward_volt - else: - return CarInterfaceBase.get_steer_feedforward_default - - def torque_from_lateral_accel_siglin(self, latcontrol_inputs: LatControlInputs, torque_params: structs.CarParams.LateralTorqueTuning, - lateral_accel_error: float, lateral_accel_deadzone: float, friction_compensation: bool, gravity_adjusted: bool) -> float: - friction = get_friction(lateral_accel_error, lateral_accel_deadzone, FRICTION_THRESHOLD, torque_params, friction_compensation) - - def sig(val): - # https://timvieira.github.io/blog/post/2014/02/11/exp-normalize-trick - if val >= 0: - return 1 / (1 + exp(-val)) - 0.5 - else: - z = exp(val) - return z / (1 + z) - 0.5 - - # The "lat_accel vs torque" relationship is assumed to be the sum of "sigmoid + linear" curves - # An important thing to consider is that the slope at 0 should be > 0 (ideally >1) - # This has big effect on the stability about 0 (noise when going straight) - # ToDo: To generalize to other GMs, explore tanh function as the nonlinear - non_linear_torque_params = NON_LINEAR_TORQUE_PARAMS.get(self.CP.carFingerprint) - assert non_linear_torque_params, "The params are not defined" - a, b, c, _ = non_linear_torque_params - steer_torque = (sig(latcontrol_inputs.lateral_acceleration * a) * b) + (latcontrol_inputs.lateral_acceleration * c) - return float(steer_torque) + friction - - def torque_from_lateral_accel_neural(self, latcontrol_inputs: LatControlInputs, torque_params: structs.CarParams.LateralTorqueTuning, - lateral_accel_error: float, lateral_accel_deadzone: float, friction_compensation: bool, gravity_adjusted: bool) -> float: - friction = get_friction(lateral_accel_error, lateral_accel_deadzone, FRICTION_THRESHOLD, torque_params, friction_compensation) - inputs = list(latcontrol_inputs) - if gravity_adjusted: - inputs[0] += inputs[1] - return float(self.neural_ff_model.predict(inputs)) + friction - - def torque_from_lateral_accel(self) -> TorqueFromLateralAccelCallbackType: - with open(NEURAL_PARAMS_PATH) as f: - neural_ff_cars = json.load(f).keys() - if self.CP.carFingerprint in neural_ff_cars: - self.neural_ff_model = NanoFFModel(NEURAL_PARAMS_PATH, self.CP.carFingerprint) - return self.torque_from_lateral_accel_neural - elif self.CP.carFingerprint in NON_LINEAR_TORQUE_PARAMS: - return self.torque_from_lateral_accel_siglin - else: - return self.torque_from_lateral_accel_linear - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "gm" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.gm)] - ret.autoResumeSng = False - ret.enableBsm = 0x142 in fingerprint[CanBus.POWERTRAIN] or 0x142 in fingerprint[CanBus.CAMERA] - ret.startAccel = 1.0 - ret.radarTimeStep = 0.067 - ret.alternativeExperience = 0 - - useEVTables = Params().get_bool("EVTable") - - if PEDAL_MSG in fingerprint[0]: - ret.enableGasInterceptorDEPRECATED = True - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.GAS_INTERCEPTOR.value - - if candidate in EV_CAR: - ret.transmissionType = TransmissionType.direct - else: - ret.transmissionType = TransmissionType.automatic - - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kiBP = [0.] - - if candidate in (CAMERA_ACC_CAR | SDGM_CAR): - ret.alphaLongitudinalAvailable = candidate not in SDGM_CAR - ret.networkLocation = NetworkLocation.fwdCamera - ret.radarUnavailable = True # no radar - ret.pcmCruise = True - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM.value - ret.minEnableSpeed = -1 * CV.KPH_TO_MS - ret.minSteerSpeed = 10 * CV.KPH_TO_MS - - # Tuning for experimental long - ret.longitudinalTuning.kiV = [1.7] - ret.stoppingDecelRate = 2.0 # reach brake quickly after enabling - ret.vEgoStopping = 0.5 - ret.vEgoStarting = 0.4 - ret.stopAccel = -0.4 - ret.startingState = True - ret.startAccel = 1.0 - - if alpha_long: - ret.pcmCruise = False - ret.openpilotLongitudinalControl = True - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM_LONG.value - - if candidate in ALT_ACCS: - ret.alphaLongitudinalAvailable = False - ret.openpilotLongitudinalControl = False - ret.minEnableSpeed = -1. # engage speed is decided by PCM - - else: # ASCM, OBD-II harness - ret.openpilotLongitudinalControl = True - ret.networkLocation = NetworkLocation.gateway - ret.radarUnavailable = False # kans - ret.pcmCruise = False # stock non-adaptive cruise control is kept off - # supports stop and go, but initial engage must (conservatively) be above 18mph - ret.minEnableSpeed = -1 * CV.MPH_TO_MS - ret.minSteerSpeed = (6.7 if useEVTables else 7) * CV.MPH_TO_MS - - # Tuning - ret.longitudinalTuning.kpV = [1.0] - ret.longitudinalTuning.kiV = [0.3] - - if ret.enableGasInterceptorDEPRECATED: - # Need to set ASCM long limits when using pedal interceptor, instead of camera ACC long limits - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_ASCM_LONG.value - - # These cars have been put into dashcam only due to both a lack of users and test coverage. - # These cars likely still work fine. Once a user confirms each car works and a test route is - # added to opendbc/car/tests/routes.py, we can remove it from this list. - # ret.dashcamOnly = candidate in {CAR.CADILLAC_ATS, CAR.HOLDEN_ASTRA, CAR.CHEVROLET_MALIBU, CAR.BUICK_REGAL} or \ - # (ret.networkLocation == NetworkLocation.gateway and ret.radarUnavailable) - - # Start with a baseline tuning for all GM vehicles. Override tuning as needed in each model section below. - ret.steerActuatorDelay = 0.28 # Default delay, not measured yet - - ret.steerLimitTimer = 0.4 - ret.longitudinalActuatorDelay = Params().get_float("LongActuatorDelay")*0.01 # 0.5 # large delay to initially start braking - - if candidate == CAR.CHEVROLET_VOLT: - ret.steerActuatorDelay = 0.45 if useEVTables else 0.3 - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [1.0] - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [.35] - ret.longitudinalTuning.kf = 1.0 - ret.stoppingDecelRate = 0.2 # brake_travel/s while trying to stop - ret.vEgoStopping = 0.25 - ret.vEgoStarting = 0.15 - ret.stopAccel = -0.5 - ret.startingState = True - ret.startAccel = 1.9 - - # softer long tune for ev table - if useEVTables: - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [1.0] - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [.35] - ret.longitudinalTuning.kf = 1.0 - ret.stoppingDecelRate = 1.0 # brake_travel/s while trying to stop - ret.stopAccel = -0.5 - ret.startAccel = 0.6 - - useTorque = Params().get_bool("LateralTorqueCustom") - if useTorque: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - else: - ret.lateralTuning.pid.kpBP = [0., 40.] - ret.lateralTuning.pid.kpV = [0., 0.17] - ret.lateralTuning.pid.kiBP = [0.] - ret.lateralTuning.pid.kiV = [0.] - ret.lateralTuning.pid.kf = 1. - - elif candidate == CAR.CADILLAC_CT6_ACC: - ret.steerActuatorDelay = 0.3 - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [1.0] - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [.3] - ret.longitudinalTuning.kf = 1.0 - ret.stoppingDecelRate = 0.2 # brake_travel/s while trying to stop - ret.stopAccel = -0.5 - ret.startingState = True - ret.startAccel = 1.5 - - useTorque = Params().get_bool("LateralTorqueCustom") - if useTorque: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - else: - ret.lateralTuning.pid.kpBP = [0., 40.] - ret.lateralTuning.pid.kpV = [0., 0.17] - ret.lateralTuning.pid.kiBP = [0.] - ret.lateralTuning.pid.kiV = [0.] - ret.lateralTuning.pid.kf = 1. - - elif candidate == CAR.GMC_ACADIA: - ret.minEnableSpeed = -1. # engage speed is decided by pcm - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate in (CAR.CHEVROLET_MALIBU, CAR.CHEVROLET_MALIBU_CC): - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.BUICK_LACROSSE: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CADILLAC_ESCALADE: - ret.minEnableSpeed = -1. # engage speed is decided by pcm - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate in (CAR.CADILLAC_ESCALADE_ESV, CAR.CADILLAC_ESCALADE_ESV_2019): - ret.minEnableSpeed = -1. # engage speed is decided by pcm - - if candidate == CAR.CADILLAC_ESCALADE_ESV: - ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[10., 41.0], [10., 41.0]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.13, 0.24], [0.01, 0.02]] - ret.lateralTuning.pid.kf = 0.000045 - else: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate in (CAR.CHEVROLET_BOLT_EUV, CAR.CHEVROLET_BOLT_CC): - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - if ret.enableGasInterceptorDEPRECATED: - # ACC Bolts use pedal for full longitudinal control, not just sng - ret.flags |= GMFlags.PEDAL_LONG.value - - elif candidate == CAR.CHEVROLET_SILVERADO: - # On the Bolt, the ECM and camera independently check that you are either above 5 kph or at a stop - # with foot on brake to allow engagement, but this platform only has that check in the camera. - # TODO: check if this is split by EV/ICE with more platforms in the future - if ret.openpilotLongitudinalControl: - ret.minEnableSpeed = -1. - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate in (CAR.CHEVROLET_EQUINOX, CAR.CHEVROLET_EQUINOX_CC): - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate in (CAR.CHEVROLET_TRAILBLAZER, CAR.CHEVROLET_TRAILBLAZER_CC): - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate in (CAR.CHEVROLET_SUBURBAN, CAR.CHEVROLET_SUBURBAN_CC): - ret.steerActuatorDelay = 0.075 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.GMC_YUKON_CC: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CADILLAC_XT4: - ret.steerActuatorDelay = 0.2 - ret.minEnableSpeed = -1. # engage speed is decided by pcm - ret.minSteerSpeed = 30 * CV.MPH_TO_MS - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - elif candidate == CAR.CHEVROLET_VOLT_2019: - ret.steerActuatorDelay = 0.2 - ret.minEnableSpeed = -1. # engage speed is decided by pcm - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CADILLAC_XT5_CC: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CHEVROLET_TRAVERSE: - ret.steerActuatorDelay = 0.2 - ret.minEnableSpeed = -1. # engage speed is decided by pcm - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.BUICK_BABYENCLAVE: - ret.steerActuatorDelay = 0.2 - ret.minEnableSpeed = -1. # engage speed is decided by pcm - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CADILLAC_CT6_CC: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CHEVROLET_MALIBU_CC: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.CHEVROLET_TRAX: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.stoppingDecelRate = 0.3 - ret.minEnableSpeed = -1. - ret.stopAccel = -0.5 - ret.startingState = True - ret.startAccel = 1.0 - elif candidate == CAR.CHEVROLET_TRAVERSE: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - elif candidate == CAR.GMC_YUKON: - ret.steerActuatorDelay = 0.5 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.dashcamOnly = True # Needs steerRatio, tireStiffness, and lat accel factor tuning - - if ret.enableGasInterceptorDEPRECATED: - ret.networkLocation = NetworkLocation.fwdCamera - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM.value - ret.minEnableSpeed = -1 - ret.pcmCruise = False - ret.openpilotLongitudinalControl = True - ret.autoResumeSng = True - - if candidate in CC_ONLY_CAR: - ret.flags |= GMFlags.PEDAL_LONG.value - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.PEDAL_LONG.value - # Note: Low speed, stop and go not tested. Should be fairly smooth on highway - ret.longitudinalTuning.kpBP = [0., 3., 6., 35.] - ret.longitudinalTuning.kpV = [0.08, 0.175, 0.225, 0.33] - ret.longitudinalTuning.kiBP = [0., 35.0] - ret.longitudinalTuning.kiV = [0.07, 0.07] - ret.longitudinalTuning.kf = 0.25 - ret.stoppingDecelRate = 0.8 - else: # Pedal used for SNG, ACC for longitudinal control otherwise - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM_LONG.value - ret.startingState = True - ret.vEgoStopping = 0.25 - ret.vEgoStarting = 0.25 - - elif candidate in CC_ONLY_CAR: - ret.flags |= GMFlags.CC_LONG.value - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.CC_LONG.value - if alpha_long: - ret.openpilotLongitudinalControl = True - ret.flags |= GMFlags.CC_LONG.value - ret.radarUnavailable = True - ret.alphaLongitudinalAvailable = True - ret.minEnableSpeed = 24 * CV.MPH_TO_MS - ret.pcmCruise = True - - ret.stoppingDecelRate = 11.18 # == 25 mph/s (.04 rate) - - ret.longitudinalTuning.kiBP = [10.7, 10.8, 28.] - ret.longitudinalTuning.kiV = [0., 20., 20.] # set lower end to 0 since we can't drive below that speed - - if candidate in CC_ONLY_CAR: - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.NO_ACC.value - - # Exception for flashed cars, or cars whose camera was removed - if (ret.networkLocation == NetworkLocation.fwdCamera or candidate in CC_ONLY_CAR) and CAM_MSG not in fingerprint[ - CanBus.CAMERA] and not candidate in SDGM_CAR: - ret.flags |= GMFlags.NO_CAMERA.value - ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.NO_CAMERA.value - - if ACCELERATOR_POS_MSG not in fingerprint[CanBus.POWERTRAIN]: - ret.flags |= GMFlags.NO_ACCELERATOR_POS_MSG.value - - if 608 in fingerprint[CanBus.POWERTRAIN]: - ret.flags |= GMFlags.SPEED_RELATED_MSG.value - - - return ret diff --git a/opendbc_repo/opendbc/car/gm/radar_interface.py b/opendbc_repo/opendbc/car/gm/radar_interface.py deleted file mode 100755 index 4583d6aa67..0000000000 --- a/opendbc_repo/opendbc/car/gm/radar_interface.py +++ /dev/null @@ -1,100 +0,0 @@ -#!/usr/bin/env python3 -import math -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.gm.values import DBC, CanBus -from opendbc.car.interfaces import RadarInterfaceBase - -RADAR_HEADER_MSG = 1120 -SLOT_1_MSG = RADAR_HEADER_MSG + 1 -NUM_SLOTS = 20 - -# Actually it's 0x47f, but can parser only reports -# messages that are present in DBC -LAST_RADAR_MSG = RADAR_HEADER_MSG + NUM_SLOTS - - -def create_radar_can_parser(car_fingerprint): - # C1A-ARS3-A by Continental - radar_targets = list(range(SLOT_1_MSG, SLOT_1_MSG + NUM_SLOTS)) - signals = list(zip(['FLRRNumValidTargets', - 'FLRRSnsrBlckd', 'FLRRYawRtPlsblityFlt', - 'FLRRHWFltPrsntInt', 'FLRRAntTngFltPrsnt', - 'FLRRAlgnFltPrsnt', 'FLRRSnstvFltPrsntInt'] + - ['TrkRange'] * NUM_SLOTS + ['TrkRangeRate'] * NUM_SLOTS + - ['TrkRangeAccel'] * NUM_SLOTS + ['TrkAzimuth'] * NUM_SLOTS + - ['TrkWidth'] * NUM_SLOTS + ['TrkObjectID'] * NUM_SLOTS, - [RADAR_HEADER_MSG] * 7 + radar_targets * 6, strict=True)) - - messages = list({(s[1], 14) for s in signals}) - - return CANParser(DBC[car_fingerprint][Bus.radar], messages, CanBus.OBSTACLE) - - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - - self.rcp = None if CP.radarUnavailable else create_radar_can_parser(CP.carFingerprint) - - self.trigger_msg = LAST_RADAR_MSG - self.updated_messages = set() - - def update(self, can_strings): - if self.rcp is None: - return super().update(None) - - vls = self.rcp.update(can_strings) - self.updated_messages.update(vls) - - if self.trigger_msg not in self.updated_messages: - return None - - ret = structs.RadarData() - header = self.rcp.vl[RADAR_HEADER_MSG] - fault = header['FLRRSnsrBlckd'] or header['FLRRSnstvFltPrsntInt'] or \ - header['FLRRYawRtPlsblityFlt'] or header['FLRRHWFltPrsntInt'] or \ - header['FLRRAntTngFltPrsnt'] or header['FLRRAlgnFltPrsnt'] - if not self.rcp.can_valid: - ret.errors.canError = True - if fault: - ret.errors.radarFault = True - - currentTargets = set() - num_targets = header['FLRRNumValidTargets'] - - # Not all radar messages describe targets, - # no need to monitor all of the self.rcp.msgs_upd - for ii in self.updated_messages: - if ii == RADAR_HEADER_MSG: - continue - - if num_targets == 0: - break - - cpt = self.rcp.vl[ii] - # Zero distance means it's an empty target slot - if cpt['TrkRange'] > 0.0: - targetId = cpt['TrkObjectID'] - currentTargets.add(targetId) - if targetId not in self.pts: - self.pts[targetId] = structs.RadarData.RadarPoint() - self.pts[targetId].trackId = targetId - distance = cpt['TrkRange'] - self.pts[targetId].dRel = distance # from front of car - # From driver's pov, left is positive - self.pts[targetId].yRel = math.sin(cpt['TrkAzimuth'] * CV.DEG_TO_RAD) * distance - self.pts[targetId].vRel = cpt['TrkRangeRate'] - self.pts[targetId].vLead = self.pts[targetId].vRel + self.v_ego - self.pts[targetId].aRel = float('nan') - self.pts[targetId].yvRel = 0# float('nan') - self.pts[targetId].measured = True - - for oldTarget in list(self.pts.keys()): - if oldTarget not in currentTargets: - del self.pts[oldTarget] - - ret.points = list(self.pts.values()) - self.updated_messages.clear() - return ret diff --git a/opendbc_repo/opendbc/car/gm/tests/__init__.py b/opendbc_repo/opendbc/car/gm/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/gm/tests/test_gm.py b/opendbc_repo/opendbc/car/gm/tests/test_gm.py deleted file mode 100644 index c14b9bd243..0000000000 --- a/opendbc_repo/opendbc/car/gm/tests/test_gm.py +++ /dev/null @@ -1,20 +0,0 @@ -from parameterized import parameterized - -from opendbc.car.gm.fingerprints import FINGERPRINTS -from opendbc.car.gm.values import CAMERA_ACC_CAR, GM_RX_OFFSET - -CAMERA_DIAGNOSTIC_ADDRESS = 0x24b - - -class TestGMFingerprint: - @parameterized.expand(FINGERPRINTS.items()) - def test_can_fingerprints(self, car_model, fingerprints): - assert len(fingerprints) > 0 - - assert all(len(finger) for finger in fingerprints) - - # The camera can sometimes be communicating on startup - if car_model in CAMERA_ACC_CAR: - for finger in fingerprints: - for required_addr in (CAMERA_DIAGNOSTIC_ADDRESS, CAMERA_DIAGNOSTIC_ADDRESS + GM_RX_OFFSET): - assert finger.get(required_addr) == 8, required_addr diff --git a/opendbc_repo/opendbc/car/gm/values.py b/opendbc_repo/opendbc/car/gm/values.py deleted file mode 100644 index dfdbf11aaa..0000000000 --- a/opendbc_repo/opendbc/car/gm/values.py +++ /dev/null @@ -1,365 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag - -import numpy as np -from opendbc.car import Bus, PlatformConfig, DbcDict, Platforms, CarSpecs -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries - -Ecu = CarParams.Ecu - - -class CarControllerParams: - STEER_MAX = 300 # GM limit is 3Nm. Used by carcontroller to generate LKA output - STEER_STEP = 4 # Active control frames per command (~33hz) - INACTIVE_STEER_STEP = 10 # Inactive control frames per command (10hz) - STEER_DELTA_UP = 5 # Delta rates require review due to observed EPS weakness - STEER_DELTA_DOWN = 7 - STEER_DRIVER_ALLOWANCE = 65 - STEER_DRIVER_MULTIPLIER = 4 - STEER_DRIVER_FACTOR = 100 - NEAR_STOP_BRAKE_PHASE = 0.4 - SNG_INTERCEPTOR_GAS = 18. / 255. - SNG_TIME = 30 # frames until the above is reached - - # Heartbeat for dash "Service Adaptive Cruise" and "Service Front Camera" - ADAS_KEEPALIVE_STEP = 100 - CAMERA_KEEPALIVE_STEP = 100 - - # Allow small margin below -3.5 m/s^2 from ISO 15622:2018 since we - # perform the closed loop control, and might need some - # to apply some more braking if we're on a downhill slope. - # Our controller should still keep the 2 second average above - # -3.5 m/s^2 as per planner limits - ACCEL_MAX = 2. # m/s^2 - ACCEL_MIN = -4. # m/s^2 - - def __init__(self, CP): - # Gas/brake lookups - self.ZERO_GAS = 0.0 # Coasting - self.MAX_BRAKE = 400 # ~ -4.0 m/s^2 with regen - - if CP.carFingerprint in (CAMERA_ACC_CAR | SDGM_CAR) and CP.carFingerprint not in CC_ONLY_CAR: - self.MAX_GAS = 1346.0 - self.MAX_ACC_REGEN = -540.0 - self.INACTIVE_REGEN = -500.0 - # Camera ACC vehicles have no regen while enabled. - # Camera transitions to MAX_ACC_REGEN from ZERO_GAS and uses friction brakes instantly - max_regen_acceleration = 0. - - else: - self.MAX_GAS = 1018.0 # Safety limit, not ACC max. Stock ACC >2042 from standstill. - self.MAX_ACC_REGEN = -650.0 # Max ACC regen is slightly less than max paddle regen - self.INACTIVE_REGEN = -650.0 - # ICE has much less engine braking force compared to regen in EVs, - # lower threshold removes some braking deadzone - max_regen_acceleration = -1. if CP.carFingerprint in EV_CAR else -0.1 - - self.GAS_LOOKUP_BP = [max_regen_acceleration, 0., self.ACCEL_MAX] - self.GAS_LOOKUP_V = [self.MAX_ACC_REGEN, self.ZERO_GAS, self.MAX_GAS] - - self.BRAKE_LOOKUP_BP = [self.ACCEL_MIN, max_regen_acceleration] - self.BRAKE_LOOKUP_V = [self.MAX_BRAKE, 0.] - - # determined by letting Volt regen to a stop in L gear from 89mph, - # and by letting off gas and allowing car to creep, for determining - # the positive threshold values at very low speed - EV_GAS_BRAKE_THRESHOLD_BP = [1.29, 1.52, 1.55, 1.6, 1.7, 1.8, 2.0, 2.2, 2.5, 5.52, 9.6, 20.5, 23.5, 35.0] # [m/s] - EV_GAS_BRAKE_THRESHOLD_V = [0.0, -0.14, -0.16, -0.18, -0.215, -0.255, -0.32, -0.41, -0.5, -0.72, -0.905, -1.14, -1.16, -1.175] # [m/s^s] - - def update_ev_gas_brake_threshold(self, v_ego): - gas_brake_threshold = np.interp(v_ego, self.EV_GAS_BRAKE_THRESHOLD_BP, self.EV_GAS_BRAKE_THRESHOLD_V) - self.EV_GAS_LOOKUP_BP = [gas_brake_threshold, max(0., gas_brake_threshold), self.ACCEL_MAX] - self.EV_BRAKE_LOOKUP_BP = [self.ACCEL_MIN, gas_brake_threshold] - - -class GMSafetyFlags(IntFlag): - HW_CAM = 1 - HW_CAM_LONG = 2 - CC_LONG = 4 - NO_CAMERA = 8 - HW_ASCM_LONG = 16 - NO_ACC = 32 - PEDAL_LONG = 64 # TODO: This can be inferred - GAS_INTERCEPTOR = 128 - EV = 256 - -@dataclass -class GMCarDocs(CarDocs): - package: str = "Adaptive Cruise Control (ACC)" - - def init_make(self, CP: CarParams): - if CP.networkLocation == CarParams.NetworkLocation.fwdCamera: - self.car_parts = CarParts.common([CarHarness.gm]) - else: - self.car_parts = CarParts.common([CarHarness.obd_ii]) - - -@dataclass(frozen=True, kw_only=True) -class GMCarSpecs(CarSpecs): - tireStiffnessFactor: float = 0.444 # not optimized yet - - -@dataclass -class GMPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: { - Bus.pt: 'gm_global_a_powertrain_volt', - Bus.radar: 'gm_global_a_object', - Bus.chassis: 'gm_global_a_chassis', - }) - - -@dataclass -class GMASCMPlatformConfig(GMPlatformConfig): - def init(self): - # ASCM is supported, but due to a janky install and hardware configuration, we are not showing in the car docs - #self.car_docs = [] - pass - - - -class CAR(Platforms): - HOLDEN_ASTRA = GMASCMPlatformConfig( - [GMCarDocs("Holden Astra 2017")], - GMCarSpecs(mass=1363, wheelbase=2.662, steerRatio=15.7, centerToFrontRatio=0.4), - ) - CHEVROLET_VOLT = GMASCMPlatformConfig( - [GMCarDocs("Chevrolet Volt 2017-18", min_enable_speed=0, video="https://youtu.be/QeMCN_4TFfQ")], - GMCarSpecs(mass=1607, wheelbase=2.69, steerRatio=17.7, centerToFrontRatio=0.55, tireStiffnessFactor=0.469, minEnableSpeed=-1), - ) - CADILLAC_ATS = GMASCMPlatformConfig( - [GMCarDocs("Cadillac ATS Premium Performance 2018")], - GMCarSpecs(mass=1601, wheelbase=2.78, steerRatio=15.3), - ) - CHEVROLET_MALIBU = GMASCMPlatformConfig( - [GMCarDocs("Chevrolet Malibu Premier 2017")], - GMCarSpecs(mass=1496, wheelbase=2.83, steerRatio=15.8, centerToFrontRatio=0.4), - ) - GMC_ACADIA = GMASCMPlatformConfig( - [GMCarDocs("GMC Acadia 2018", video="https://www.youtube.com/watch?v=0ZN6DdsBUZo")], - GMCarSpecs(mass=1975, wheelbase=2.86, steerRatio=14.4, centerToFrontRatio=0.4), - ) - BUICK_LACROSSE = GMASCMPlatformConfig( - [GMCarDocs("Buick LaCrosse 2017-19", "Driver Confidence Package 2")], - GMCarSpecs(mass=1712, wheelbase=2.91, steerRatio=15.8, centerToFrontRatio=0.4), - ) - BUICK_REGAL = GMASCMPlatformConfig( - [GMCarDocs("Buick Regal Essence 2018")], - GMCarSpecs(mass=1714, wheelbase=2.83, steerRatio=14.4, centerToFrontRatio=0.4), - ) - CADILLAC_ESCALADE = GMASCMPlatformConfig( - [GMCarDocs("Cadillac Escalade 2017", "Driver Assist Package")], - GMCarSpecs(mass=2564, wheelbase=2.95, steerRatio=17.3), - ) - CADILLAC_ESCALADE_ESV = GMASCMPlatformConfig( - [GMCarDocs("Cadillac Escalade ESV 2016", "Adaptive Cruise Control (ACC) & LKAS")], - GMCarSpecs(mass=2739, wheelbase=3.302, steerRatio=17.3, tireStiffnessFactor=1.0), - ) - CADILLAC_ESCALADE_ESV_2019 = GMASCMPlatformConfig( - [GMCarDocs("Cadillac Escalade ESV 2019", "Adaptive Cruise Control (ACC) & LKAS")], - CADILLAC_ESCALADE_ESV.specs, - ) - CHEVROLET_BOLT_EUV = GMPlatformConfig( - [ - GMCarDocs("Chevrolet Bolt EUV 2022-23", "Premier or Premier Redline Trim without Super Cruise Package", video="https://youtu.be/xvwzGMUA210"), - GMCarDocs("Chevrolet Bolt EV 2022-23", "2LT Trim with Adaptive Cruise Control Package"), - ], - GMCarSpecs(mass=1669, wheelbase=2.63779, steerRatio=16.8, centerToFrontRatio=0.4, tireStiffnessFactor=1.0), - ) - CHEVROLET_SILVERADO = GMPlatformConfig( - [ - GMCarDocs("Chevrolet Silverado 1500 2020-21", "Safety Package II"), - GMCarDocs("GMC Sierra 1500 2020-21", "Driver Alert Package II", video="https://youtu.be/5HbNoBLzRwE"), - ], - GMCarSpecs(mass=2450, wheelbase=3.75, steerRatio=16.3, tireStiffnessFactor=1.0), - ) - CHEVROLET_EQUINOX = GMPlatformConfig( - [GMCarDocs("Chevrolet Equinox 2019-22")], - GMCarSpecs(mass=1588, wheelbase=2.72, steerRatio=14.4, centerToFrontRatio=0.4), - ) - CHEVROLET_TRAILBLAZER = GMPlatformConfig( - [GMCarDocs("Chevrolet Trailblazer 2021-22")], - GMCarSpecs(mass=1345, wheelbase=2.64, steerRatio=16.8, centerToFrontRatio=0.4, tireStiffnessFactor=1.0), - ) - CADILLAC_XT4 = GMPlatformConfig( - [GMCarDocs("Cadillac XT4 2023", "Driver Assist Package")], - CarSpecs(mass=1660, wheelbase=2.78, steerRatio=14.4, centerToFrontRatio=0.4), - ) - CHEVROLET_VOLT_2019 = GMPlatformConfig( - [GMCarDocs("Chevrolet Volt 2019", "Adaptive Cruise Control (ACC) & LKAS")], - GMCarSpecs(mass=1607, wheelbase=2.69, steerRatio=15.7, centerToFrontRatio=0.45), - ) - CHEVROLET_TRAVERSE = GMPlatformConfig( - [GMCarDocs("Chevrolet Traverse 2022-23", "RS, Premier, or High Country Trim")], - CarSpecs(mass=1955, wheelbase=3.07, steerRatio=17.9, centerToFrontRatio=0.4), - ) - # Separate car def is required when there is no ASCM - # (for now) unless there is a way to detect it when it has been unplugged... - CHEVROLET_VOLT_CC = GMPlatformConfig( - [GMCarDocs("Chevrolet Volt LT 2017-18")], - CHEVROLET_VOLT.specs, - ) - CHEVROLET_BOLT_CC = GMPlatformConfig( - [ - GMCarDocs("Chevrolet Bolt EUV 2022-23 - No-ACC"), - GMCarDocs("Chevrolet Bolt EV 2017-23 - No-ACC"), - ], - CHEVROLET_BOLT_EUV.specs, - ) - CHEVROLET_EQUINOX_CC = GMPlatformConfig( - [GMCarDocs("Chevrolet Equinox NO ACC 2019-22")], - CHEVROLET_EQUINOX.specs, - ) - CHEVROLET_SUBURBAN = GMPlatformConfig( - [GMCarDocs("Chevrolet Suburban Premier 2016-20")], - CarSpecs(mass=2731, wheelbase=3.302, steerRatio=17.3, centerToFrontRatio=0.49), - ) - CHEVROLET_SUBURBAN_CC = GMPlatformConfig( - [GMCarDocs("Chevrolet Suburban 2016-20")], - CHEVROLET_SUBURBAN.specs, - ) - GMC_YUKON_CC = GMPlatformConfig( - [GMCarDocs("GMC Yukon No ACC")], - CarSpecs(mass=2541, wheelbase=2.95, steerRatio=16.3, centerToFrontRatio=0.4), - ) - CADILLAC_CT6_CC = GMPlatformConfig( - [GMCarDocs("Cadillac CT6 No ACC")], - CarSpecs(mass=2358, wheelbase=3.11, steerRatio=17.7, centerToFrontRatio=0.4), - ) - CHEVROLET_TRAILBLAZER_CC = GMPlatformConfig( - [GMCarDocs("Chevrolet Trailblazer NO ACC 2021-22")], - CHEVROLET_TRAILBLAZER.specs, - ) - CHEVROLET_MALIBU_CC = GMPlatformConfig( - [GMCarDocs("Chevrolet Malibu No ACC")], - CarSpecs(mass=1450, wheelbase=2.8, steerRatio=15.8, centerToFrontRatio=0.4), - ) - CADILLAC_XT5_CC = GMPlatformConfig( - [GMCarDocs("Cadillac XT5 No ACC")], - CarSpecs(mass=1810, wheelbase=2.86, steerRatio=16.34, centerToFrontRatio=0.5), - ) - BUICK_BABYENCLAVE = GMPlatformConfig( - [GMCarDocs("Buick Baby Enclave 2020-23", "Driver Assist Package")], - CarSpecs(mass=2050, wheelbase=2.86, steerRatio=16.0, centerToFrontRatio=0.5), - ) - CHEVROLET_TRAX = GMPlatformConfig( - [GMCarDocs("Chevrolet TRAX 2024")], - CarSpecs(mass=1365, wheelbase=2.7, steerRatio=16.1, centerToFrontRatio=0.7), - ) - CADILLAC_CT6_ACC = GMPlatformConfig( - [GMCarDocs("CT6-2019 Advanced ACC", "Adaptive Cruise Control (ACC)")], - GMCarSpecs(mass=1736, wheelbase=3.11, steerRatio=17.7, centerToFrontRatio=0.4), - ) - GMC_YUKON = GMPlatformConfig( - [GMCarDocs("GMC Yukon 2019-20", "Adaptive Cruise Control (ACC) & LKAS")], - GMCarSpecs(mass=2490, wheelbase=2.94, steerRatio=17.3, centerToFrontRatio=0.5, tireStiffnessFactor=1.0), - ) - - -class CruiseButtons: - INIT = 0 - UNPRESS = 1 - RES_ACCEL = 2 - DECEL_SET = 3 - MAIN = 5 - CANCEL = 6 - GAP_DIST = 7 - -class AccState: - OFF = 0 - ACTIVE = 1 - STANDBY = 2 - FAULTED = 3 - STANDSTILL = 4 - -class CanBus: - POWERTRAIN = 0 - OBSTACLE = 1 - CAMERA = 2 - CHASSIS = 2 - LOOPBACK = 128 - DROPPED = 192 - -class GMFlags(IntFlag): - PEDAL_LONG = 1 - CC_LONG = 2 - NO_CAMERA = 4 - NO_ACCELERATOR_POS_MSG = 8 - SPEED_RELATED_MSG = 16 - - -# In a Data Module, an identifier is a string used to recognize an object, -# either by itself or together with the identifiers of parent objects. -# Each returns a 4 byte hex representation of the decimal part number. `b"\x02\x8c\xf0'"` -> 42790951 -GM_BOOT_SOFTWARE_PART_NUMER_REQUEST = b'\x1a\xc0' # likely does not contain anything useful -GM_SOFTWARE_MODULE_1_REQUEST = b'\x1a\xc1' -GM_SOFTWARE_MODULE_2_REQUEST = b'\x1a\xc2' -GM_SOFTWARE_MODULE_3_REQUEST = b'\x1a\xc3' - -# Part number of XML data file that is used to configure ECU -GM_XML_DATA_FILE_PART_NUMBER = b'\x1a\x9c' -GM_XML_CONFIG_COMPAT_ID = b'\x1a\x9b' # used to know if XML file is compatible with the ECU software/hardware - -# This DID is for identifying the part number that reflects the mix of hardware, -# software, and calibrations in the ECU when it first arrives at the vehicle assembly plant. -# If there's an Alpha Code, it's associated with this part number and stored in the DID $DB. -GM_END_MODEL_PART_NUMBER_REQUEST = b'\x1a\xcb' -GM_END_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST = b'\x1a\xdb' -GM_BASE_MODEL_PART_NUMBER_REQUEST = b'\x1a\xcc' -GM_BASE_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST = b'\x1a\xdc' -GM_FW_RESPONSE = b'\x5a' - -GM_FW_REQUESTS = [ - GM_BOOT_SOFTWARE_PART_NUMER_REQUEST, - GM_SOFTWARE_MODULE_1_REQUEST, - GM_SOFTWARE_MODULE_2_REQUEST, - GM_SOFTWARE_MODULE_3_REQUEST, - GM_XML_DATA_FILE_PART_NUMBER, - GM_XML_CONFIG_COMPAT_ID, - GM_END_MODEL_PART_NUMBER_REQUEST, - GM_END_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST, - GM_BASE_MODEL_PART_NUMBER_REQUEST, - GM_BASE_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST, -] - -GM_RX_OFFSET = 0x400 - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[request for req in GM_FW_REQUESTS for request in [ - Request( - [StdQueries.SHORT_TESTER_PRESENT_REQUEST, req], - [StdQueries.SHORT_TESTER_PRESENT_RESPONSE, GM_FW_RESPONSE + bytes([req[-1]])], - rx_offset=GM_RX_OFFSET, - bus=0, - logging=True, - ), - ]], - extra_ecus=[(Ecu.fwdCamera, 0x24b, None)], -) - -EV_CAR = {CAR.CHEVROLET_VOLT, CAR.CHEVROLET_VOLT_2019, CAR.CHEVROLET_BOLT_EUV, CAR.CHEVROLET_VOLT_CC, CAR.CHEVROLET_BOLT_CC} -CC_ONLY_CAR = {CAR.CHEVROLET_VOLT_CC, CAR.CHEVROLET_BOLT_CC, CAR.CHEVROLET_EQUINOX_CC, CAR.CHEVROLET_SUBURBAN_CC, CAR.GMC_YUKON_CC, CAR.CADILLAC_CT6_CC, CAR.CHEVROLET_TRAILBLAZER_CC, CAR.CADILLAC_XT5_CC, CAR.CHEVROLET_MALIBU_CC} -CC_REGEN_PADDLE_CAR = {CAR.CHEVROLET_BOLT_CC} -# We're integrated at the Safety Data Gateway Module on these cars -SDGM_CAR = {CAR.CADILLAC_XT4, CAR.CHEVROLET_TRAVERSE, CAR.BUICK_BABYENCLAVE, CAR.CHEVROLET_VOLT_2019} - -# We're integrated at the camera with VOACC on these cars (instead of ASCM w/ OBD-II harness) -CAMERA_ACC_CAR = {CAR.CHEVROLET_BOLT_EUV, CAR.CHEVROLET_SILVERADO, CAR.CHEVROLET_EQUINOX, CAR.CHEVROLET_TRAILBLAZER, CAR.CHEVROLET_TRAX} -CAMERA_ACC_CAR.update({CAR.CHEVROLET_VOLT_CC, CAR.CHEVROLET_BOLT_CC, CAR.CHEVROLET_EQUINOX_CC, CAR.GMC_YUKON_CC, CAR.CADILLAC_CT6_CC, CAR.CHEVROLET_TRAILBLAZER_CC, CAR.CADILLAC_XT5_CC, CAR.CHEVROLET_MALIBU_CC}) -# CAMERA_ACC_CAR.update(CC_ONLY_CAR) -# Alt ASCMActiveCruiseControlStatus -ALT_ACCS = {CAR.GMC_YUKON} - -STEER_THRESHOLD = 1.0 - -DBC = CAR.create_dbc_map() - -if __name__ == "__main__": - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) diff --git a/opendbc_repo/opendbc/car/honda/__init__.py b/opendbc_repo/opendbc/car/honda/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/honda/carcontroller.py b/opendbc_repo/opendbc/car/honda/carcontroller.py deleted file mode 100644 index f0f32dcb24..0000000000 --- a/opendbc_repo/opendbc/car/honda/carcontroller.py +++ /dev/null @@ -1,266 +0,0 @@ -import numpy as np -from collections import namedtuple - -from opendbc.can import CANPacker -from opendbc.car import Bus, DT_CTRL, rate_limit, make_tester_present_msg, structs -from opendbc.car.honda import hondacan -from opendbc.car.honda.values import CruiseButtons, VISUAL_HUD, HONDA_BOSCH, HONDA_BOSCH_RADARLESS, HONDA_NIDEC_ALT_PCM_ACCEL, CarControllerParams -from opendbc.car.interfaces import CarControllerBase - -from openpilot.common.params import Params - - -VisualAlert = structs.CarControl.HUDControl.VisualAlert -LongCtrlState = structs.CarControl.Actuators.LongControlState - - -def compute_gb_honda_bosch(accel, speed): - # TODO returns 0s, is unused - return 0.0, 0.0 - - -def compute_gb_honda_nidec(accel, speed): - creep_brake = 0.0 - creep_speed = 2.3 - creep_brake_value = 0.15 - if speed < creep_speed: - creep_brake = (creep_speed - speed) / creep_speed * creep_brake_value - gb = float(accel) / 4.8 - creep_brake - return np.clip(gb, 0.0, 1.0), np.clip(-gb, 0.0, 1.0) - - -def compute_gas_brake(accel, speed, fingerprint): - if fingerprint in HONDA_BOSCH: - return compute_gb_honda_bosch(accel, speed) - else: - return compute_gb_honda_nidec(accel, speed) - - -# TODO not clear this does anything useful -def actuator_hysteresis(brake, braking, brake_steady, v_ego, car_fingerprint): - # hyst params - brake_hyst_on = 0.02 # to activate brakes exceed this value - brake_hyst_off = 0.005 # to deactivate brakes below this value - brake_hyst_gap = 0.01 # don't change brake command for small oscillations within this value - - # *** hysteresis logic to avoid brake blinking. go above 0.1 to trigger - if (brake < brake_hyst_on and not braking) or brake < brake_hyst_off: - brake = 0. - braking = brake > 0. - - # for small brake oscillations within brake_hyst_gap, don't change the brake command - if brake == 0.: - brake_steady = 0. - elif brake > brake_steady + brake_hyst_gap: - brake_steady = brake - brake_hyst_gap - elif brake < brake_steady - brake_hyst_gap: - brake_steady = brake + brake_hyst_gap - brake = brake_steady - - return brake, braking, brake_steady - - -def brake_pump_hysteresis(apply_brake, apply_brake_last, last_pump_ts, ts): - pump_on = False - - # reset pump timer if: - # - there is an increment in brake request - # - we are applying steady state brakes and we haven't been running the pump - # for more than 20s (to prevent pressure bleeding) - if apply_brake > apply_brake_last or (ts - last_pump_ts > 20. and apply_brake > 0): - last_pump_ts = ts - - # once the pump is on, run it for at least 0.2s - if ts - last_pump_ts < 0.2 and apply_brake > 0: - pump_on = True - - return pump_on, last_pump_ts - - -def process_hud_alert(hud_alert): - # initialize to no alert - fcw_display = 0 - steer_required = 0 - acc_alert = 0 - - # priority is: FCW, steer required, all others - if hud_alert == VisualAlert.fcw: - fcw_display = VISUAL_HUD[hud_alert.raw] - elif hud_alert in (VisualAlert.steerRequired, VisualAlert.ldw): - steer_required = VISUAL_HUD[hud_alert.raw] - else: - acc_alert = VISUAL_HUD[hud_alert.raw] - - return fcw_display, steer_required, acc_alert - - -HUDData = namedtuple("HUDData", - ["pcm_accel", "v_cruise", "lead_visible", - "lanes_visible", "fcw", "acc_alert", "steer_required", "lead_distance_bars"]) - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.packer = CANPacker(dbc_names[Bus.pt]) - self.params = CarControllerParams(CP) - self.CAN = hondacan.CanBus(CP) - - self.braking = False - self.brake_steady = 0. - self.brake_last = 0. - self.apply_brake_last = 0 - self.last_pump_ts = 0. - self.stopping_counter = 0 - - self.accel = 0.0 - self.speed = 0.0 - self.gas = 0.0 - self.brake = 0.0 - self.last_torque = 0.0 - - def update(self, CC, CS, now_nanos): - - if self.frame % 50 == 0: - params = Params() - steerMax = params.get_int("CustomSteerMax") - steerDeltaUp = params.get_int("CustomSteerDeltaUp") - steerDeltaDown = params.get_int("CustomSteerDeltaDown") - if steerMax > 0: - self.params.STEER_MAX = steerMax - self.params.STEER_LOOKUP_BP = [0, steerMax] - self.params.STEER_LOOKUP_V = [0, steerMax] - if steerDeltaUp > 0: - self.params.STEER_DELTA_UP = steerDeltaUp - if steerDeltaDown > 0: - self.params.STEER_DELTA_DOWN = steerDeltaDown - - actuators = CC.actuators - hud_control = CC.hudControl - conversion = hondacan.get_cruise_speed_conversion(self.CP.carFingerprint, CS.is_metric) - hud_v_cruise = hud_control.setSpeed / conversion if hud_control.speedVisible else 255 - pcm_cancel_cmd = CC.cruiseControl.cancel - - if CC.longActive: - accel = actuators.accel - gas, brake = compute_gas_brake(actuators.accel, CS.out.vEgo, self.CP.carFingerprint) - else: - accel = 0.0 - gas, brake = 0.0, 0.0 - - # *** rate limit steer *** - limited_torque = rate_limit(actuators.torque, self.last_torque, -self.params.STEER_DELTA_DOWN * DT_CTRL, - self.params.STEER_DELTA_UP * DT_CTRL) - self.last_torque = limited_torque - - # *** apply brake hysteresis *** - pre_limit_brake, self.braking, self.brake_steady = actuator_hysteresis(brake, self.braking, self.brake_steady, - CS.out.vEgo, self.CP.carFingerprint) - - # *** rate limit after the enable check *** - self.brake_last = rate_limit(pre_limit_brake, self.brake_last, -2., DT_CTRL) - - # vehicle hud display, wait for one update from 10Hz 0x304 msg - fcw_display, steer_required, acc_alert = process_hud_alert(hud_control.visualAlert) - - # **** process the car messages **** - - # steer torque is converted back to CAN reference (positive when steering right) - apply_torque = int(np.interp(-limited_torque * self.params.STEER_MAX, - self.params.STEER_LOOKUP_BP, self.params.STEER_LOOKUP_V)) - - # Send CAN commands - can_sends = [] - - # tester present - w/ no response (keeps radar disabled) - if self.CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and self.CP.openpilotLongitudinalControl: - if self.frame % 10 == 0: - can_sends.append(make_tester_present_msg(0x18DAB0F1, 1, suppress_response=True)) - - # Send steering command. - can_sends.append(hondacan.create_steering_control(self.packer, self.CAN, apply_torque, CC.latActive)) - - # wind brake from air resistance decel at high speed - wind_brake = np.interp(CS.out.vEgo, [0.0, 2.3, 35.0], [0.001, 0.002, 0.15]) - # all of this is only relevant for HONDA NIDEC - max_accel = np.interp(CS.out.vEgo, self.params.NIDEC_MAX_ACCEL_BP, self.params.NIDEC_MAX_ACCEL_V) - # TODO this 1.44 is just to maintain previous behavior - pcm_speed_BP = [-wind_brake, - -wind_brake * (3 / 4), - 0.0, - 0.5] - # The Honda ODYSSEY seems to have different PCM_ACCEL - # msgs, is it other cars too? - if not CC.longActive: - pcm_speed = 0.0 - pcm_accel = int(0.0) - elif self.CP.carFingerprint in HONDA_NIDEC_ALT_PCM_ACCEL: - pcm_speed_V = [0.0, - np.clip(CS.out.vEgo - 3.0, 0.0, 100.0), - np.clip(CS.out.vEgo + 0.0, 0.0, 100.0), - np.clip(CS.out.vEgo + 5.0, 0.0, 100.0)] - pcm_speed = float(np.interp(gas - brake, pcm_speed_BP, pcm_speed_V)) - pcm_accel = int(1.0 * self.params.NIDEC_GAS_MAX) - else: - pcm_speed_V = [0.0, - np.clip(CS.out.vEgo - 2.0, 0.0, 100.0), - np.clip(CS.out.vEgo + 2.0, 0.0, 100.0), - np.clip(CS.out.vEgo + 5.0, 0.0, 100.0)] - pcm_speed = float(np.interp(gas - brake, pcm_speed_BP, pcm_speed_V)) - pcm_accel = int(np.clip((accel / 1.44) / max_accel, 0.0, 1.0) * self.params.NIDEC_GAS_MAX) - - if not self.CP.openpilotLongitudinalControl: - if self.frame % 2 == 0 and self.CP.carFingerprint not in HONDA_BOSCH_RADARLESS: # radarless cars don't have supplemental message - can_sends.append(hondacan.create_bosch_supplemental_1(self.packer, self.CAN)) - # If using stock ACC, spam cancel command to kill gas when OP disengages. - if pcm_cancel_cmd: - can_sends.append(hondacan.spam_buttons_command(self.packer, self.CAN, CruiseButtons.CANCEL, self.CP.carFingerprint)) - elif CC.cruiseControl.resume: - can_sends.append(hondacan.spam_buttons_command(self.packer, self.CAN, CruiseButtons.RES_ACCEL, self.CP.carFingerprint)) - - else: - # Send gas and brake commands. - if self.frame % 2 == 0: - ts = self.frame * DT_CTRL - - if self.CP.carFingerprint in HONDA_BOSCH: - self.accel = float(np.clip(accel, self.params.BOSCH_ACCEL_MIN, self.params.BOSCH_ACCEL_MAX)) - self.gas = float(np.interp(accel, self.params.BOSCH_GAS_LOOKUP_BP, self.params.BOSCH_GAS_LOOKUP_V)) - - stopping = actuators.longControlState == LongCtrlState.stopping - self.stopping_counter = self.stopping_counter + 1 if stopping else 0 - can_sends.extend(hondacan.create_acc_commands(self.packer, self.CAN, CC.enabled, CC.longActive, self.accel, self.gas, - self.stopping_counter, self.CP.carFingerprint)) - else: - apply_brake = np.clip(self.brake_last - wind_brake, 0.0, 1.0) - apply_brake = int(np.clip(apply_brake * self.params.NIDEC_BRAKE_MAX, 0, self.params.NIDEC_BRAKE_MAX - 1)) - pump_on, self.last_pump_ts = brake_pump_hysteresis(apply_brake, self.apply_brake_last, self.last_pump_ts, ts) - - pcm_override = True - can_sends.append(hondacan.create_brake_command(self.packer, self.CAN, apply_brake, pump_on, - pcm_override, pcm_cancel_cmd, fcw_display, - self.CP.carFingerprint, CS.stock_brake)) - self.apply_brake_last = apply_brake - self.brake = apply_brake / self.params.NIDEC_BRAKE_MAX - - # Send dashboard UI commands. - # On Nidec, this controls longitudinal positive acceleration - if self.frame % 10 == 0: - hud = HUDData(int(pcm_accel), int(round(hud_v_cruise)), hud_control.leadVisible, - hud_control.lanesVisible, fcw_display, acc_alert, steer_required, hud_control.leadDistanceBars) - can_sends.extend(hondacan.create_ui_commands(self.packer, self.CAN, self.CP, CC.enabled, pcm_speed, hud, CS.is_metric, CS.acc_hud, CS.lkas_hud)) - - if self.CP.openpilotLongitudinalControl and self.CP.carFingerprint not in HONDA_BOSCH: - self.speed = pcm_speed - self.gas = pcm_accel / self.params.NIDEC_GAS_MAX - - new_actuators = actuators.as_builder() - new_actuators.speed = self.speed - new_actuators.accel = self.accel - new_actuators.gas = self.gas - new_actuators.brake = self.brake - new_actuators.torque = self.last_torque - new_actuators.torqueOutputCan = apply_torque - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/honda/carstate.py b/opendbc_repo/opendbc/car/honda/carstate.py deleted file mode 100644 index f2b34fef46..0000000000 --- a/opendbc_repo/opendbc/car/honda/carstate.py +++ /dev/null @@ -1,231 +0,0 @@ -import numpy as np -from collections import defaultdict - -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, create_button_events, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.honda.hondacan import CanBus, get_cruise_speed_conversion -from opendbc.car.honda.values import CAR, DBC, STEER_THRESHOLD, HONDA_BOSCH, \ - HONDA_NIDEC_ALT_SCM_MESSAGES, HONDA_BOSCH_RADARLESS, \ - HondaFlags, CruiseButtons, CruiseSettings, GearShifter -from opendbc.car.interfaces import CarStateBase - -TransmissionType = structs.CarParams.TransmissionType -ButtonType = structs.CarState.ButtonEvent.Type - -BUTTONS_DICT = {CruiseButtons.RES_ACCEL: ButtonType.accelCruise, CruiseButtons.DECEL_SET: ButtonType.decelCruise, - CruiseButtons.MAIN: ButtonType.mainCruise, CruiseButtons.CANCEL: ButtonType.cancel} -SETTINGS_BUTTONS_DICT = {CruiseSettings.DISTANCE: ButtonType.gapAdjustCruise, CruiseSettings.LKAS: ButtonType.lkas} - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - self.gearbox_msg = "GEARBOX" - if CP.carFingerprint == CAR.HONDA_ACCORD and CP.transmissionType == TransmissionType.cvt: - self.gearbox_msg = "GEARBOX_15T" - elif CP.carFingerprint == CAR.HONDA_CIVIC_2022 and CP.transmissionType == TransmissionType.cvt: - self.gearbox_msg = "GEARBOX_ALT" - elif CP.transmissionType == TransmissionType.manual: - self.gearbox_msg = "GEARBOX_ALT_2" - - self.main_on_sig_msg = "SCM_FEEDBACK" - if CP.carFingerprint in HONDA_NIDEC_ALT_SCM_MESSAGES: - self.main_on_sig_msg = "SCM_BUTTONS" - - if CP.transmissionType != TransmissionType.manual: - self.shifter_values = can_define.dv[self.gearbox_msg]["GEAR_SHIFTER"] - self.steer_status_values = defaultdict(lambda: "UNKNOWN", can_define.dv["STEER_STATUS"]["STEER_STATUS"]) - - self.brake_switch_prev = False - self.brake_switch_active = False - self.cruise_setting = 0 - self.v_cruise_pcm_prev = 0 - - # When available we use cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] to populate vEgoCluster - # However, on cars without a digital speedometer this is not always present (HRV, FIT, CRV 2016, ILX and RDX) - self.dash_speed_seen = False - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - if self.CP.enableBsm: - cp_body = can_parsers[Bus.body] - - ret = structs.CarState() - - # car params - v_weight_v = [0., 1.] # don't trust smooth speed at low values to avoid premature zero snapping - v_weight_bp = [1., 6.] # smooth blending, below ~0.6m/s the smooth speed snaps to zero - - # update prevs, update must run once per loop - prev_cruise_buttons = self.cruise_buttons - prev_cruise_setting = self.cruise_setting - self.cruise_setting = cp.vl["SCM_BUTTONS"]["CRUISE_SETTING"] - self.cruise_buttons = cp.vl["SCM_BUTTONS"]["CRUISE_BUTTONS"] - - # used for car hud message - self.is_metric = not cp.vl["CAR_SPEED"]["IMPERIAL_UNIT"] - - # ******************* parse out can ******************* - # STANDSTILL->WHEELS_MOVING bit can be noisy around zero, so use XMISSION_SPEED - # panda checks if the signal is non-zero - ret.standstill = cp.vl["ENGINE_DATA"]["XMISSION_SPEED"] < 1e-5 - # TODO: find a common signal across all cars - if self.CP.carFingerprint in (CAR.HONDA_ACCORD, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CIVIC_BOSCH_DIESEL, CAR.HONDA_CRV_HYBRID, CAR.HONDA_INSIGHT, - CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.HONDA_CIVIC_2022, CAR.HONDA_HRV_3G): - ret.doorOpen = bool(cp.vl["SCM_FEEDBACK"]["DRIVERS_DOOR_OPEN"]) - elif self.CP.carFingerprint in (CAR.HONDA_ODYSSEY_CHN, CAR.HONDA_FREED, CAR.HONDA_HRV): - ret.doorOpen = bool(cp.vl["SCM_BUTTONS"]["DRIVERS_DOOR_OPEN"]) - else: - ret.doorOpen = any([cp.vl["DOORS_STATUS"]["DOOR_OPEN_FL"], cp.vl["DOORS_STATUS"]["DOOR_OPEN_FR"], - cp.vl["DOORS_STATUS"]["DOOR_OPEN_RL"], cp.vl["DOORS_STATUS"]["DOOR_OPEN_RR"]]) - ret.seatbeltUnlatched = bool(cp.vl["SEATBELT_STATUS"]["SEATBELT_DRIVER_LAMP"] or not cp.vl["SEATBELT_STATUS"]["SEATBELT_DRIVER_LATCHED"]) - - steer_status = self.steer_status_values[cp.vl["STEER_STATUS"]["STEER_STATUS"]] - ret.steerFaultPermanent = steer_status not in ("NORMAL", "NO_TORQUE_ALERT_1", "NO_TORQUE_ALERT_2", "LOW_SPEED_LOCKOUT", "TMP_FAULT") - # LOW_SPEED_LOCKOUT is not worth a warning - # NO_TORQUE_ALERT_2 can be caused by bump or steering nudge from driver - ret.steerFaultTemporary = steer_status not in ("NORMAL", "LOW_SPEED_LOCKOUT", "NO_TORQUE_ALERT_2") - - if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS: - ret.accFaulted = bool(cp.vl["CRUISE_FAULT_STATUS"]["CRUISE_FAULT"]) - else: - # On some cars, these two signals are always 1, this flag is masking a bug in release - # FIXME: find and set the ACC faulted signals on more platforms - if self.CP.openpilotLongitudinalControl: - ret.accFaulted = bool(cp.vl["STANDSTILL"]["BRAKE_ERROR_1"] or cp.vl["STANDSTILL"]["BRAKE_ERROR_2"]) - - # Log non-critical stock ACC/LKAS faults if Nidec (camera) - if self.CP.carFingerprint not in HONDA_BOSCH: - ret.carFaultedNonCritical = bool(cp_cam.vl["ACC_HUD"]["ACC_PROBLEM"] or cp_cam.vl["LKAS_HUD"]["LKAS_PROBLEM"]) - - ret.espDisabled = cp.vl["VSA_STATUS"]["ESP_DISABLED"] != 0 - - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FL"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FR"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RL"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RR"], - ) - v_wheel = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4.0 - - # blend in transmission speed at low speed, since it has more low speed accuracy - v_weight = float(np.interp(v_wheel, v_weight_bp, v_weight_v)) - ret.vEgoRaw = (1. - v_weight) * cp.vl["ENGINE_DATA"]["XMISSION_SPEED"] * CV.KPH_TO_MS * self.CP.wheelSpeedFactor + v_weight * v_wheel - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - - self.dash_speed_seen = self.dash_speed_seen or cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] > 1e-3 - if self.dash_speed_seen: - conversion = CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS - ret.vEgoCluster = cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] * conversion - - ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEER_ANGLE"] - ret.steeringRateDeg = cp.vl["STEERING_SENSORS"]["STEER_ANGLE_RATE"] - - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_stalk( - 250, cp.vl["SCM_FEEDBACK"]["LEFT_BLINKER"], cp.vl["SCM_FEEDBACK"]["RIGHT_BLINKER"]) - ret.brakeHoldActive = cp.vl["VSA_STATUS"]["BRAKE_HOLD_ACTIVE"] == 1 - - # TODO: set for all cars - if self.CP.carFingerprint in (HONDA_BOSCH | {CAR.HONDA_CIVIC, CAR.HONDA_ODYSSEY, CAR.HONDA_ODYSSEY_CHN}): - ret.parkingBrake = cp.vl["EPB_STATUS"]["EPB_STATE"] != 0 - - if self.CP.transmissionType == TransmissionType.manual: - ret.clutchPressed = cp.vl["GEARBOX_ALT_2"]["GEAR_MT"] == 0 - if cp.vl["GEARBOX_ALT_2"]["GEAR_MT"] == 14: - ret.gearShifter = GearShifter.reverse - else: - ret.gearShifter = GearShifter.drive - else: - gear = int(cp.vl[self.gearbox_msg]["GEAR_SHIFTER"]) - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear, None)) - - ret.gas = cp.vl["POWERTRAIN_DATA"]["PEDAL_GAS"] - ret.gasPressed = ret.gas > 1e-5 - - ret.steeringTorque = cp.vl["STEER_STATUS"]["STEER_TORQUE_SENSOR"] - ret.steeringTorqueEps = cp.vl["STEER_MOTOR_TORQUE"]["MOTOR_TORQUE"] - ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD.get(self.CP.carFingerprint, 1200) - - if self.CP.carFingerprint in HONDA_BOSCH: - # The PCM always manages its own cruise control state, but doesn't publish it - if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS: - ret.cruiseState.nonAdaptive = cp_cam.vl["ACC_HUD"]["CRUISE_CONTROL_LABEL"] != 0 - - if not self.CP.openpilotLongitudinalControl: - # ACC_HUD is on camera bus on radarless cars - acc_hud = cp_cam.vl["ACC_HUD"] if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS else cp.vl["ACC_HUD"] - ret.cruiseState.nonAdaptive = acc_hud["CRUISE_CONTROL_LABEL"] != 0 - ret.cruiseState.standstill = acc_hud["CRUISE_SPEED"] == 252. - - conversion = get_cruise_speed_conversion(self.CP.carFingerprint, self.is_metric) - # On set, cruise set speed pulses between 254~255 and the set speed prev is set to avoid this. - ret.cruiseState.speed = self.v_cruise_pcm_prev if acc_hud["CRUISE_SPEED"] > 160.0 else acc_hud["CRUISE_SPEED"] * conversion - self.v_cruise_pcm_prev = ret.cruiseState.speed - else: - ret.cruiseState.speed = cp.vl["CRUISE"]["CRUISE_SPEED_PCM"] * CV.KPH_TO_MS - - if self.CP.flags & HondaFlags.BOSCH_ALT_BRAKE: - ret.brakePressed = cp.vl["BRAKE_MODULE"]["BRAKE_PRESSED"] != 0 - else: - # brake switch has shown some single time step noise, so only considered when - # switch is on for at least 2 consecutive CAN samples - # brake switch rises earlier than brake pressed but is never 1 when in park - brake_switch_vals = cp.vl_all["POWERTRAIN_DATA"]["BRAKE_SWITCH"] - if len(brake_switch_vals): - brake_switch = cp.vl["POWERTRAIN_DATA"]["BRAKE_SWITCH"] != 0 - if len(brake_switch_vals) > 1: - self.brake_switch_prev = brake_switch_vals[-2] != 0 - self.brake_switch_active = brake_switch and self.brake_switch_prev - self.brake_switch_prev = brake_switch - ret.brakePressed = (cp.vl["POWERTRAIN_DATA"]["BRAKE_PRESSED"] != 0) or self.brake_switch_active - - ret.brake = cp.vl["VSA_STATUS"]["USER_BRAKE"] - ret.cruiseState.enabled = cp.vl["POWERTRAIN_DATA"]["ACC_STATUS"] != 0 - ret.cruiseState.available = bool(cp.vl[self.main_on_sig_msg]["MAIN_ON"]) - - # Gets rid of Pedal Grinding noise when brake is pressed at slow speeds for some models - if self.CP.carFingerprint in (CAR.HONDA_PILOT, CAR.HONDA_RIDGELINE): - if ret.brake > 0.1: - ret.brakePressed = True - - if self.CP.carFingerprint in HONDA_BOSCH: - # TODO: find the radarless AEB_STATUS bit and make sure ACCEL_COMMAND is correct to enable AEB alerts - if self.CP.carFingerprint not in HONDA_BOSCH_RADARLESS: - ret.stockAeb = (not self.CP.openpilotLongitudinalControl) and bool(cp.vl["ACC_CONTROL"]["AEB_STATUS"] and cp.vl["ACC_CONTROL"]["ACCEL_COMMAND"] < -1e-5) - else: - ret.stockAeb = bool(cp_cam.vl["BRAKE_COMMAND"]["AEB_REQ_1"] and cp_cam.vl["BRAKE_COMMAND"]["COMPUTER_BRAKE"] > 1e-5) - - self.acc_hud = False - self.lkas_hud = False - if self.CP.carFingerprint not in HONDA_BOSCH: - ret.stockFcw = cp_cam.vl["BRAKE_COMMAND"]["FCW"] != 0 - self.acc_hud = cp_cam.vl["ACC_HUD"] - self.stock_brake = cp_cam.vl["BRAKE_COMMAND"] - if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS: - self.lkas_hud = cp_cam.vl["LKAS_HUD"] - - if self.CP.enableBsm: - # BSM messages are on B-CAN, requires a panda forwarding B-CAN messages to CAN 0 - # more info here: https://github.com/commaai/openpilot/pull/1867 - ret.leftBlindspot = cp_body.vl["BSM_STATUS_LEFT"]["BSM_ALERT"] == 1 - ret.rightBlindspot = cp_body.vl["BSM_STATUS_RIGHT"]["BSM_ALERT"] == 1 - - ret.buttonEvents = [ - *create_button_events(self.cruise_buttons, prev_cruise_buttons, BUTTONS_DICT), - *create_button_events(self.cruise_setting, prev_cruise_setting, SETTINGS_BUTTONS_DICT), - ] - - return ret - - def get_can_parsers(self, CP): - parsers = { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).pt), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).camera), - } - if CP.enableBsm: - parsers[Bus.body] = CANParser(DBC[CP.carFingerprint][Bus.body], [], CanBus(CP).radar) - - return parsers diff --git a/opendbc_repo/opendbc/car/honda/fingerprints.py b/opendbc_repo/opendbc/car/honda/fingerprints.py deleted file mode 100644 index 565fd4d2b1..0000000000 --- a/opendbc_repo/opendbc/car/honda/fingerprints.py +++ /dev/null @@ -1,929 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.honda.values import CAR - -Ecu = CarParams.Ecu - -# Modified FW can be identified by the second dash being replaced by a comma -# For example: `b'39990-TVA,A150\x00\x00'` -# -# TODO: vsa is "essential" for fpv2 but doesn't appear on some CAR.FREED models - - -FW_VERSIONS = { - CAR.HONDA_ACCORD: { - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TVC-A910\x00\x00', - b'54008-TWA-A910\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-6A7-A220\x00\x00', - b'28101-6A7-A230\x00\x00', - b'28101-6A7-A320\x00\x00', - b'28101-6A7-A330\x00\x00', - b'28101-6A7-A410\x00\x00', - b'28101-6A7-A510\x00\x00', - b'28101-6A7-A610\x00\x00', - b'28101-6A7-A710\x00\x00', - b'28101-6A9-H140\x00\x00', - b'28101-6A9-H420\x00\x00', - b'28102-6B8-A560\x00\x00', - b'28102-6B8-A570\x00\x00', - b'28102-6B8-A700\x00\x00', - b'28102-6B8-A800\x00\x00', - b'28102-6B8-C560\x00\x00', - b'28102-6B8-C570\x00\x00', - b'28102-6B8-M520\x00\x00', - b'28102-6B8-R700\x00\x00', - ], - (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ - b'46114-TVA-A050\x00\x00', - b'46114-TVA-A060\x00\x00', - b'46114-TVA-A080\x00\x00', - b'46114-TVA-A120\x00\x00', - b'46114-TVA-A320\x00\x00', - b'46114-TVA-A410\x00\x00', - b'46114-TVE-H550\x00\x00', - b'46114-TVE-H560\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TVA-B040\x00\x00', - b'57114-TVA-B050\x00\x00', - b'57114-TVA-B060\x00\x00', - b'57114-TVA-B530\x00\x00', - b'57114-TVA-C040\x00\x00', - b'57114-TVA-C050\x00\x00', - b'57114-TVA-C060\x00\x00', - b'57114-TVA-C530\x00\x00', - b'57114-TVA-E520\x00\x00', - b'57114-TVE-H250\x00\x00', - b'57114-TWA-A040\x00\x00', - b'57114-TWA-A050\x00\x00', - b'57114-TWA-A530\x00\x00', - b'57114-TWA-B520\x00\x00', - b'57114-TWA-C510\x00\x00', - b'57114-TWB-H030\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TBX-H120\x00\x00', - b'39990-TVA,A150\x00\x00', - b'39990-TVA-A140\x00\x00', - b'39990-TVA-A150\x00\x00', - b'39990-TVA-A160\x00\x00', - b'39990-TVA-A340\x00\x00', - b'39990-TVA-X030\x00\x00', - b'39990-TVA-X040\x00\x00', - b'39990-TVE-H130\x00\x00', - b'39990-TWB-H120\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TBX-H230\x00\x00', - b'77959-TVA-A460\x00\x00', - b'77959-TVA-F330\x00\x00', - b'77959-TVA-H230\x00\x00', - b'77959-TVA-L420\x00\x00', - b'77959-TVA-X330\x00\x00', - b'77959-TWA-A440\x00\x00', - b'77959-TWA-L420\x00\x00', - b'77959-TWB-H220\x00\x00', - ], - (Ecu.hud, 0x18da61f1, None): [ - b'78209-TVA-A010\x00\x00', - b'78209-TVA-A110\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TBX-H140\x00\x00', - b'36802-TVA-A150\x00\x00', - b'36802-TVA-A160\x00\x00', - b'36802-TVA-A170\x00\x00', - b'36802-TVA-A180\x00\x00', - b'36802-TVA-A330\x00\x00', - b'36802-TVC-A330\x00\x00', - b'36802-TVE-H070\x00\x00', - b'36802-TWA-A070\x00\x00', - b'36802-TWA-A080\x00\x00', - b'36802-TWA-A210\x00\x00', - b'36802-TWA-A330\x00\x00', - b'36802-TWB-H060\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TBX-H130\x00\x00', - b'36161-TVA-A060\x00\x00', - b'36161-TVA-A330\x00\x00', - b'36161-TVC-A330\x00\x00', - b'36161-TVE-H050\x00\x00', - b'36161-TWA-A070\x00\x00', - b'36161-TWA-A330\x00\x00', - b'36161-TWB-H040\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TVA-A010\x00\x00', - b'38897-TVA-A020\x00\x00', - b'38897-TVA-A230\x00\x00', - b'38897-TVA-A240\x00\x00', - b'38897-TWA-A120\x00\x00', - b'38897-TWD-J020\x00\x00', - ], - }, - CAR.HONDA_CIVIC: { - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-5CG-A040\x00\x00', - b'28101-5CG-A050\x00\x00', - b'28101-5CG-A070\x00\x00', - b'28101-5CG-A080\x00\x00', - b'28101-5CG-A320\x00\x00', - b'28101-5CG-A810\x00\x00', - b'28101-5CG-A820\x00\x00', - b'28101-5DJ-A040\x00\x00', - b'28101-5DJ-A060\x00\x00', - b'28101-5DJ-A510\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TBA-A540\x00\x00', - b'57114-TBA-A550\x00\x00', - b'57114-TBA-A560\x00\x00', - b'57114-TBA-A570\x00\x00', - b'57114-TEA-Q220\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TBA,A030\x00\x00', - b'39990-TBA-A030\x00\x00', - b'39990-TBG-A030\x00\x00', - b'39990-TEA-T020\x00\x00', - b'39990-TEG-A010\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TBA-A030\x00\x00', - b'77959-TBA-A040\x00\x00', - b'77959-TBG-A020\x00\x00', - b'77959-TBG-A030\x00\x00', - b'77959-TEA-Q820\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-TBA-A020\x00\x00', - b'36161-TBA-A030\x00\x00', - b'36161-TBA-A040\x00\x00', - b'36161-TBC-A020\x00\x00', - b'36161-TBC-A030\x00\x00', - b'36161-TED-Q320\x00\x00', - b'36161-TEG-A010\x00\x00', - b'36161-TEG-A020\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TBA-A010\x00\x00', - b'38897-TBA-A020\x00\x00', - ], - }, - CAR.HONDA_CIVIC_BOSCH: { - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-5CG-A920\x00\x00', - b'28101-5CG-AB10\x00\x00', - b'28101-5CG-C110\x00\x00', - b'28101-5CG-C220\x00\x00', - b'28101-5CG-C320\x00\x00', - b'28101-5CG-G020\x00\x00', - b'28101-5CG-L020\x00\x00', - b'28101-5CK-A130\x00\x00', - b'28101-5CK-A140\x00\x00', - b'28101-5CK-A150\x00\x00', - b'28101-5CK-C130\x00\x00', - b'28101-5CK-C140\x00\x00', - b'28101-5CK-C150\x00\x00', - b'28101-5CK-G210\x00\x00', - b'28101-5CK-J710\x00\x00', - b'28101-5CK-Q610\x00\x00', - b'28101-5DJ-A610\x00\x00', - b'28101-5DJ-A710\x00\x00', - b'28101-5DV-E330\x00\x00', - b'28101-5DV-E610\x00\x00', - b'28101-5DV-E820\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TBG-A330\x00\x00', - b'57114-TBG-A340\x00\x00', - b'57114-TBG-A350\x00\x00', - b'57114-TGG-A340\x00\x00', - b'57114-TGG-C320\x00\x00', - b'57114-TGG-G320\x00\x00', - b'57114-TGG-L320\x00\x00', - b'57114-TGG-L330\x00\x00', - b'57114-TGH-L130\x00\x00', - b'57114-TGK-T320\x00\x00', - b'57114-TGL-G330\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TBA-C020\x00\x00', - b'39990-TBA-C120\x00\x00', - b'39990-TEA-T820\x00\x00', - b'39990-TEZ-T020\x00\x00', - b'39990-TGG,A020\x00\x00', - b'39990-TGG,A120\x00\x00', - b'39990-TGG-A020\x00\x00', - b'39990-TGG-A120\x00\x00', - b'39990-TGG-J510\x00\x00', - b'39990-TGH-J530\x00\x00', - b'39990-TGL-E130\x00\x00', - b'39990-TGN-E120\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TBA-A060\x00\x00', - b'77959-TBG-A050\x00\x00', - b'77959-TEA-G020\x00\x00', - b'77959-TGG-A020\x00\x00', - b'77959-TGG-A030\x00\x00', - b'77959-TGG-E010\x00\x00', - b'77959-TGG-G010\x00\x00', - b'77959-TGG-G110\x00\x00', - b'77959-TGG-J320\x00\x00', - b'77959-TGG-Z820\x00\x00', - b'77959-TGH-J110\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TBA-A150\x00\x00', - b'36802-TBA-A160\x00\x00', - b'36802-TFJ-G060\x00\x00', - b'36802-TGG-A050\x00\x00', - b'36802-TGG-A060\x00\x00', - b'36802-TGG-A070\x00\x00', - b'36802-TGG-A130\x00\x00', - b'36802-TGG-G040\x00\x00', - b'36802-TGG-G130\x00\x00', - b'36802-TGH-A140\x00\x00', - b'36802-TGK-Q120\x00\x00', - b'36802-TGL-G040\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TBA-A130\x00\x00', - b'36161-TBA-A140\x00\x00', - b'36161-TFJ-G070\x00\x00', - b'36161-TGG-A060\x00\x00', - b'36161-TGG-A080\x00\x00', - b'36161-TGG-A120\x00\x00', - b'36161-TGG-G050\x00\x00', - b'36161-TGG-G070\x00\x00', - b'36161-TGG-G130\x00\x00', - b'36161-TGG-G140\x00\x00', - b'36161-TGH-A140\x00\x00', - b'36161-TGK-Q120\x00\x00', - b'36161-TGL-G050\x00\x00', - b'36161-TGL-G070\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TBA-A020\x00\x00', - b'38897-TBA-A110\x00\x00', - b'38897-TGH-A010\x00\x00', - ], - (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ - b'39494-TGL-G030\x00\x00', - ], - }, - CAR.HONDA_CIVIC_BOSCH_DIESEL: { - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-59Y-G220\x00\x00', - b'28101-59Y-G620\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TGN-E320\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TFK-G020\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TFK-G210\x00\x00', - b'77959-TGN-G220\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TFK-G130\x00\x00', - b'36802-TGN-G130\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TGN-E010\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TFK-G130\x00\x00', - b'36161-TGN-G130\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TBA-A020\x00\x00', - ], - }, - CAR.HONDA_CRV: { - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-T1W-A230\x00\x00', - b'57114-T1W-A240\x00\x00', - b'57114-TFF-A940\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T0A-A230\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T1W-A830\x00\x00', - b'36161-T1W-C830\x00\x00', - b'36161-T1X-A830\x00\x00', - ], - }, - CAR.HONDA_CRV_5G: { - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-5RG-A020\x00\x00', - b'28101-5RG-A030\x00\x00', - b'28101-5RG-A040\x00\x00', - b'28101-5RG-A120\x00\x00', - b'28101-5RG-A220\x00\x00', - b'28101-5RH-A020\x00\x00', - b'28101-5RH-A030\x00\x00', - b'28101-5RH-A040\x00\x00', - b'28101-5RH-A120\x00\x00', - b'28101-5RH-A220\x00\x00', - b'28101-5RL-Q010\x00\x00', - b'28101-5RM-F010\x00\x00', - b'28101-5RM-K010\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TLA-A040\x00\x00', - b'57114-TLA-A050\x00\x00', - b'57114-TLA-A060\x00\x00', - b'57114-TLB-A830\x00\x00', - b'57114-TMC-Z040\x00\x00', - b'57114-TMC-Z050\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TLA,A040\x00\x00', - b'39990-TLA-A040\x00\x00', - b'39990-TLA-A110\x00\x00', - b'39990-TLA-A220\x00\x00', - b'39990-TME-T030\x00\x00', - b'39990-TME-T120\x00\x00', - b'39990-TMT-T010\x00\x00', - ], - (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ - b'46114-TLA-A040\x00\x00', - b'46114-TLA-A050\x00\x00', - b'46114-TLA-A930\x00\x00', - b'46114-TMC-U020\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TLA-A010\x00\x00', - b'38897-TLA-A110\x00\x00', - b'38897-TNY-G010\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TLA-A040\x00\x00', - b'36802-TLA-A050\x00\x00', - b'36802-TLA-A060\x00\x00', - b'36802-TLA-A070\x00\x00', - b'36802-TMC-Q040\x00\x00', - b'36802-TMC-Q070\x00\x00', - b'36802-TNY-A030\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TLA-A060\x00\x00', - b'36161-TLA-A070\x00\x00', - b'36161-TLA-A080\x00\x00', - b'36161-TMC-Q020\x00\x00', - b'36161-TMC-Q030\x00\x00', - b'36161-TMC-Q040\x00\x00', - b'36161-TNY-A020\x00\x00', - b'36161-TNY-A030\x00\x00', - b'36161-TNY-A040\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TLA-A240\x00\x00', - b'77959-TLA-A250\x00\x00', - b'77959-TLA-A320\x00\x00', - b'77959-TLA-A410\x00\x00', - b'77959-TLA-A420\x00\x00', - b'77959-TLA-Q040\x00\x00', - b'77959-TLA-Z040\x00\x00', - b'77959-TMM-F040\x00\x00', - ], - }, - CAR.HONDA_CRV_EU: { - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-T1V-G920\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T1V-G520\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-T1V-G010\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-5LH-E120\x00\x00', - b'28103-5LH-E100\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T1G-G940\x00\x00', - ], - }, - CAR.HONDA_CRV_HYBRID: { - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TMB-H030\x00\x00', - b'57114-TPA-G020\x00\x00', - b'57114-TPG-A020\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TMA-H020\x00\x00', - b'39990-TPA-G030\x00\x00', - b'39990-TPG-A020\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TMA-H110\x00\x00', - b'38897-TPG-A110\x00\x00', - b'38897-TPG-A210\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TMB-H510\x00\x00', - b'54008-TMB-H610\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TMB-H040\x00\x00', - b'36161-TPA-E050\x00\x00', - b'36161-TPA-E070\x00\x00', - b'36161-TPG-A030\x00\x00', - b'36161-TPG-A040\x00\x00', - b'36161-TPG-A050\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TMB-H040\x00\x00', - b'36802-TPA-E040\x00\x00', - b'36802-TPG-A020\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TLA-C320\x00\x00', - b'77959-TLA-C410\x00\x00', - b'77959-TLA-C420\x00\x00', - b'77959-TLA-G220\x00\x00', - b'77959-TLA-H240\x00\x00', - ], - }, - CAR.HONDA_FIT: { - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-T5R-L020\x00\x00', - b'57114-T5R-L220\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-T5R-C020\x00\x00', - b'39990-T5R-C030\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-T5A-J010\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T5R-A040\x00\x00', - b'36161-T5R-A240\x00\x00', - b'36161-T5R-A520\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T5R-A230\x00\x00', - ], - }, - CAR.HONDA_FREED: { - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TDK-J010\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TDK-J050\x00\x00', - b'39990-TDK-N020\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TDK-J120\x00\x00', - b'57114-TDK-J330\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-TDK-J070\x00\x00', - b'36161-TDK-J080\x00\x00', - b'36161-TDK-J530\x00\x00', - ], - }, - CAR.HONDA_ODYSSEY: { - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-THR-A010\x00\x00', - b'38897-THR-A020\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-THR-A020\x00\x00', - b'39990-THR-A030\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-THR-A010\x00\x00', - b'77959-THR-A110\x00\x00', - b'77959-THR-X010\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-THR-A020\x00\x00', - b'36161-THR-A030\x00\x00', - b'36161-THR-A110\x00\x00', - b'36161-THR-A720\x00\x00', - b'36161-THR-A730\x00\x00', - b'36161-THR-A810\x00\x00', - b'36161-THR-A910\x00\x00', - b'36161-THR-C010\x00\x00', - b'36161-THR-D110\x00\x00', - b'36161-THR-K020\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-5NZ-A110\x00\x00', - b'28101-5NZ-A310\x00\x00', - b'28101-5NZ-C310\x00\x00', - b'28102-5MX-A001\x00\x00', - b'28102-5MX-A600\x00\x00', - b'28102-5MX-A610\x00\x00', - b'28102-5MX-A700\x00\x00', - b'28102-5MX-A710\x00\x00', - b'28102-5MX-A900\x00\x00', - b'28102-5MX-A910\x00\x00', - b'28102-5MX-C001\x00\x00', - b'28102-5MX-C610\x00\x00', - b'28102-5MX-C910\x00\x00', - b'28102-5MX-D001\x00\x00', - b'28102-5MX-D710\x00\x00', - b'28102-5MX-K610\x00\x00', - b'28103-5NZ-A100\x00\x00', - b'28103-5NZ-A300\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-THR-A040\x00\x00', - b'57114-THR-A110\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-THR-A020\x00\x00', - ], - }, - CAR.HONDA_ODYSSEY_CHN: { - (Ecu.eps, 0x18da30f1, None): [ - b'39990-T6D-H220\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-T6A-J010\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T6A-P040\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T6A-P110\x00\x00', - ], - }, - CAR.HONDA_PILOT: { - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TG7-A520\x00\x00', - b'54008-TG7-A530\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-5EY-A040\x00\x00', - b'28101-5EY-A050\x00\x00', - b'28101-5EY-A100\x00\x00', - b'28101-5EY-A330\x00\x00', - b'28101-5EY-A430\x00\x00', - b'28101-5EY-A500\x00\x00', - b'28101-5EZ-A050\x00\x00', - b'28101-5EZ-A060\x00\x00', - b'28101-5EZ-A100\x00\x00', - b'28101-5EZ-A210\x00\x00', - b'28101-5EZ-A330\x00\x00', - b'28101-5EZ-A430\x00\x00', - b'28101-5EZ-A500\x00\x00', - b'28101-5EZ-A600\x00\x00', - b'28101-5EZ-A700\x00\x00', - b'28103-5EY-A110\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TG7-A030\x00\x00', - b'38897-TG7-A040\x00\x00', - b'38897-TG7-A110\x00\x00', - b'38897-TG7-A210\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TG7-A030\x00\x00', - b'39990-TG7-A040\x00\x00', - b'39990-TG7-A060\x00\x00', - b'39990-TG7-A070\x00\x00', - b'39990-TGS-A230\x00\x00', - b'39990-TGS-A320\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-TG7-A310\x00\x00', - b'36161-TG7-A520\x00\x00', - b'36161-TG7-A630\x00\x00', - b'36161-TG7-A720\x00\x00', - b'36161-TG7-A820\x00\x00', - b'36161-TG7-A930\x00\x00', - b'36161-TG7-C520\x00\x00', - b'36161-TG7-D520\x00\x00', - b'36161-TG7-D630\x00\x00', - b'36161-TG7-Y630\x00\x00', - b'36161-TG8-A410\x00\x00', - b'36161-TG8-A520\x00\x00', - b'36161-TG8-A630\x00\x00', - b'36161-TG8-A720\x00\x00', - b'36161-TG8-A830\x00\x00', - b'36161-TGS-A030\x00\x00', - b'36161-TGS-A130\x00\x00', - b'36161-TGS-A220\x00\x00', - b'36161-TGS-A320\x00\x00', - b'36161-TGT-A030\x00\x00', - b'36161-TGT-A130\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TG7-A020\x00\x00', - b'77959-TG7-A110\x00\x00', - b'77959-TG7-A210\x00\x00', - b'77959-TG7-Y210\x00\x00', - b'77959-TGS-A010\x00\x00', - b'77959-TGS-A110\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TG7-A130\x00\x00', - b'57114-TG7-A140\x00\x00', - b'57114-TG7-A230\x00\x00', - b'57114-TG7-A240\x00\x00', - b'57114-TG7-A630\x00\x00', - b'57114-TG7-A730\x00\x00', - b'57114-TG8-A140\x00\x00', - b'57114-TG8-A230\x00\x00', - b'57114-TG8-A240\x00\x00', - b'57114-TG8-A630\x00\x00', - b'57114-TG8-A730\x00\x00', - b'57114-TGS-A530\x00\x00', - b'57114-TGT-A530\x00\x00', - ], - }, - CAR.ACURA_RDX: { - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TX4-A220\x00\x00', - b'57114-TX5-A220\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-TX4-A030\x00\x00', - b'36161-TX5-A030\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TX4-B010\x00\x00', - b'77959-TX4-C010\x00\x00', - b'77959-TX4-C020\x00\x00', - ], - }, - CAR.ACURA_RDX_3G: { - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TJB-A030\x00\x00', - b'57114-TJB-A040\x00\x00', - b'57114-TJB-A120\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TJB-A040\x00\x00', - b'36802-TJB-A050\x00\x00', - b'36802-TJB-A540\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TJB-A040\x00\x00', - b'36161-TJB-A530\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TJB-A520\x00\x00', - b'54008-TJB-A530\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28102-5YK-A610\x00\x00', - b'28102-5YK-A620\x00\x00', - b'28102-5YK-A630\x00\x00', - b'28102-5YK-A700\x00\x00', - b'28102-5YK-A711\x00\x00', - b'28102-5YK-A800\x00\x00', - b'28102-5YL-A620\x00\x00', - b'28102-5YL-A700\x00\x00', - b'28102-5YL-A711\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TJB-A040\x00\x00', - b'77959-TJB-A120\x00\x00', - b'77959-TJB-A210\x00\x00', - ], - (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ - b'46114-TJB-A040\x00\x00', - b'46114-TJB-A050\x00\x00', - b'46114-TJB-A060\x00\x00', - b'46114-TJB-A120\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TJB-A040\x00\x00', - b'38897-TJB-A110\x00\x00', - b'38897-TJB-A120\x00\x00', - b'38897-TJB-A220\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TJB-A030\x00\x00', - b'39990-TJB-A040\x00\x00', - b'39990-TJB-A070\x00\x00', - b'39990-TJB-A130\x00\x00', - ], - }, - CAR.HONDA_RIDGELINE: { - (Ecu.eps, 0x18da30f1, None): [ - b'39990-T6Z-A020\x00\x00', - b'39990-T6Z-A030\x00\x00', - b'39990-T6Z-A050\x00\x00', - b'39990-T6Z-A110\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T6Z-A020\x00\x00', - b'36161-T6Z-A310\x00\x00', - b'36161-T6Z-A420\x00\x00', - b'36161-T6Z-A520\x00\x00', - b'36161-T6Z-A620\x00\x00', - b'36161-T6Z-A720\x00\x00', - b'36161-TJZ-A120\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-T6Z-A010\x00\x00', - b'38897-T6Z-A110\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T6Z-A020\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-T6Z-A120\x00\x00', - b'57114-T6Z-A130\x00\x00', - b'57114-T6Z-A520\x00\x00', - b'57114-T6Z-A610\x00\x00', - b'57114-TJZ-A520\x00\x00', - ], - }, - CAR.HONDA_INSIGHT: { - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TXM-A040\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TXM-A070\x00\x00', - b'36802-TXM-A080\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TXM-A050\x00\x00', - b'36161-TXM-A060\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TXM-A230\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TXM-A030\x00\x00', - b'57114-TXM-A040\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TWA-A910\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TXM-A020\x00\x00', - ], - }, - CAR.HONDA_HRV: { - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-T7A-A010\x00\x00', - b'38897-T7A-A110\x00\x00', - ], - (Ecu.eps, 0x18da30f1, None): [ - b'39990-THX-A020\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T7A-A040\x00\x00', - b'36161-T7A-A140\x00\x00', - b'36161-T7A-A240\x00\x00', - b'36161-T7A-C440\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T7A-A230\x00\x00', - ], - }, - CAR.HONDA_HRV_3G: { - (Ecu.eps, 0x18da30f1, None): [ - b'39990-3M0-G110\x00\x00', - b'39990-3W0-A030\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-3M0-M110\x00\x00', - b'38897-3W1-A010\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-3M0-K840\x00\x00', - b'77959-3V0-A820\x00\x00', - b'77959-3V0-A910\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'8S102-3M6-P030\x00\x00', - b'8S102-3W0-A060\x00\x00', - b'8S102-3W0-AB10\x00\x00', - b'8S102-3W0-AB20\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-3M6-M010\x00\x00', - b'57114-3W0-A040\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-6EH-A010\x00\x00', - b'28101-6EH-A110\x00\x00', - b'28101-6JC-M310\x00\x00', - ], - (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ - b'46114-3W0-A020\x00\x00', - b'46114-3W0-A050\x00\x00', - ], - }, - CAR.ACURA_ILX: { - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TX6-A010\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-TV9-A140\x00\x00', - b'36161-TX6-A030\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TX6-A230\x00\x00', - b'77959-TX6-C210\x00\x00', - ], - }, - CAR.HONDA_E: { - (Ecu.eps, 0x18da30f1, None): [ - b'39990-TYF-N030\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-TYF-E140\x00\x00', - ], - (Ecu.shiftByWire, 0x18da0bf1, None): [ - b'54008-TYF-E010\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-TYF-G430\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36802-TYF-E030\x00\x00', - ], - (Ecu.fwdCamera, 0x18dab5f1, None): [ - b'36161-TYF-E020\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-TYF-E030\x00\x00', - ], - }, - CAR.HONDA_CIVIC_2022: { - (Ecu.eps, 0x18da30f1, None): [ - b'39990-T24-T120\x00\x00', - b'39990-T38-A040\x00\x00', - b'39990-T39-A130\x00\x00', - b'39990-T43-J020\x00\x00', - b'39990-T60-J030\x00\x00', - b'39990-T56-A040\x00\x00', - b'39990-T50-J030\x00\x00', - ], - (Ecu.gateway, 0x18daeff1, None): [ - b'38897-T20-A020\x00\x00', - b'38897-T20-A210\x00\x00', - b'38897-T20-A310\x00\x00', - b'38897-T20-A510\x00\x00', - b'38897-T21-A010\x00\x00', - b'38897-T22-A110\x00\x00', - b'38897-T24-Z120\x00\x00', - b'38897-T60-A110\x00\x00', - b'38897-T61-A320\x00\x00', - b'38897-T50-E310\x00\x00', - ], - (Ecu.srs, 0x18da53f1, None): [ - b'77959-T20-A970\x00\x00', - b'77959-T20-A980\x00\x00', - b'77959-T20-M820\x00\x00', - b'77959-T39-A910\x00\x00', - b'77959-T47-A940\x00\x00', - b'77959-T47-A950\x00\x00', - b'77959-T60-A920\x00\x00', - b'77959-T61-A920\x00\x00', - b'77959-T50-G930\x00\x00', - b'77959-T65-A920\x00\x00', - ], - (Ecu.fwdRadar, 0x18dab0f1, None): [ - b'36161-T20-A060\x00\x00', - b'36161-T20-A070\x00\x00', - b'36161-T20-A080\x00\x00', - b'36161-T24-T070\x00\x00', - b'36161-T38-A060\x00\x00', - b'36161-T47-A050\x00\x00', - b'36161-T47-A070\x00\x00', - b'8S102-T20-AA10\x00\x00', - b'8S102-T47-AA10\x00\x00', - b'8S102-T60-AA10\x00\x00', - b'8S102-T56-A060\x00\x00', - b'8S102-T50-EA10\x00\x00', - b'8S102-T64-A040\x00\x00', - ], - (Ecu.vsa, 0x18da28f1, None): [ - b'57114-T20-AB40\x00\x00', - b'57114-T24-TB30\x00\x00', - b'57114-T38-AA20\x00\x00', - b'57114-T43-JB30\x00\x00', - b'57114-T60-AA20\x00\x00', - b'57114-T61-AJ30\x00\x00', - b'57114-T50-JC20\x00\x00', - ], - (Ecu.transmission, 0x18da1ef1, None): [ - b'28101-65D-A020\x00\x00', - b'28101-65D-A120\x00\x00', - b'28101-65H-A020\x00\x00', - b'28101-65H-A120\x00\x00', - b'28101-65J-N010\x00\x00', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/honda/hondacan.py b/opendbc_repo/opendbc/car/honda/hondacan.py deleted file mode 100644 index fbfa37827f..0000000000 --- a/opendbc_repo/opendbc/car/honda/hondacan.py +++ /dev/null @@ -1,229 +0,0 @@ -from opendbc.car import CanBusBase -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.honda.values import HondaFlags, HONDA_BOSCH, HONDA_BOSCH_RADARLESS, CAR, CarControllerParams - -# CAN bus layout with relay -# 0 = ACC-CAN - radar side -# 1 = F-CAN B - powertrain -# 2 = ACC-CAN - camera side -# 3 = F-CAN A - OBDII port - - -class CanBus(CanBusBase): - def __init__(self, CP=None, fingerprint=None) -> None: - # use fingerprint if specified - super().__init__(CP if fingerprint is None else None, fingerprint) - - if CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS): - self._pt, self._radar = self.offset + 1, self.offset - # normally steering commands are sent to radar, which forwards them to powertrain bus - # when radar is disabled, steering commands are sent directly to powertrain bus - self._lkas = self._pt if CP.openpilotLongitudinalControl else self._radar - else: - self._pt, self._radar, self._lkas = self.offset, self.offset + 1, self.offset - - @property - def pt(self) -> int: - return self._pt - - @property - def radar(self) -> int: - return self._radar - - @property - def camera(self) -> int: - return self.offset + 2 - - @property - def lkas(self) -> int: - return self._lkas - - # B-CAN is forwarded to ACC-CAN radar side (CAN 0 on fake ethernet port) - @property - def body(self) -> int: - return self.offset - - -def get_cruise_speed_conversion(car_fingerprint: str, is_metric: bool) -> float: - # on certain cars, CRUISE_SPEED changes to imperial with car's unit setting - return CV.MPH_TO_MS if car_fingerprint in HONDA_BOSCH_RADARLESS and not is_metric else CV.KPH_TO_MS - - -def create_brake_command(packer, CAN, apply_brake, pump_on, pcm_override, pcm_cancel_cmd, fcw, car_fingerprint, stock_brake): - # TODO: do we loose pressure if we keep pump off for long? - brakelights = apply_brake > 0 - brake_rq = apply_brake > 0 - pcm_fault_cmd = False - - values = { - "COMPUTER_BRAKE": apply_brake, - "BRAKE_PUMP_REQUEST": pump_on, - "CRUISE_OVERRIDE": pcm_override, - "CRUISE_FAULT_CMD": pcm_fault_cmd, - "CRUISE_CANCEL_CMD": pcm_cancel_cmd, - "COMPUTER_BRAKE_REQUEST": brake_rq, - "SET_ME_1": 1, - "BRAKE_LIGHTS": brakelights, - "CHIME": stock_brake["CHIME"] if fcw else 0, # send the chime for stock fcw - "FCW": fcw << 1, # TODO: Why are there two bits for fcw? - "AEB_REQ_1": 0, - "AEB_REQ_2": 0, - "AEB_STATUS": 0, - } - return packer.make_can_msg("BRAKE_COMMAND", CAN.pt, values) - - -def create_acc_commands(packer, CAN, enabled, active, accel, gas, stopping_counter, car_fingerprint): - commands = [] - min_gas_accel = CarControllerParams.BOSCH_GAS_LOOKUP_BP[0] - - control_on = 5 if enabled else 0 - gas_command = gas if active and accel > min_gas_accel else -30000 - accel_command = accel if active else 0 - braking = 1 if active and accel < min_gas_accel else 0 - standstill = 1 if active and stopping_counter > 0 else 0 - standstill_release = 1 if active and stopping_counter == 0 else 0 - - # common ACC_CONTROL values - acc_control_values = { - 'ACCEL_COMMAND': accel_command, - 'STANDSTILL': standstill, - } - - if car_fingerprint in HONDA_BOSCH_RADARLESS: - acc_control_values.update({ - "CONTROL_ON": enabled, - "IDLESTOP_ALLOW": stopping_counter > 200, # allow idle stop after 4 seconds (50 Hz) - }) - else: - acc_control_values.update({ - # setting CONTROL_ON causes car to set POWERTRAIN_DATA->ACC_STATUS = 1 - "CONTROL_ON": control_on, - "GAS_COMMAND": gas_command, # used for gas - "BRAKE_LIGHTS": braking, - "BRAKE_REQUEST": braking, - "STANDSTILL_RELEASE": standstill_release, - }) - acc_control_on_values = { - "SET_TO_3": 0x03, - "CONTROL_ON": enabled, - "SET_TO_FF": 0xff, - "SET_TO_75": 0x75, - "SET_TO_30": 0x30, - } - commands.append(packer.make_can_msg("ACC_CONTROL_ON", CAN.pt, acc_control_on_values)) - - commands.append(packer.make_can_msg("ACC_CONTROL", CAN.pt, acc_control_values)) - return commands - - -def create_steering_control(packer, CAN, apply_torque, lkas_active): - values = { - "STEER_TORQUE": apply_torque if lkas_active else 0, - "STEER_TORQUE_REQUEST": lkas_active, - } - return packer.make_can_msg("STEERING_CONTROL", CAN.lkas, values) - - -def create_bosch_supplemental_1(packer, CAN): - # non-active params - values = { - "SET_ME_X04": 0x04, - "SET_ME_X80": 0x80, - "SET_ME_X10": 0x10, - } - return packer.make_can_msg("BOSCH_SUPPLEMENTAL_1", CAN.lkas, values) - - -def create_ui_commands(packer, CAN, CP, enabled, pcm_speed, hud, is_metric, acc_hud, lkas_hud): - commands = [] - radar_disabled = CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and CP.openpilotLongitudinalControl - - if CP.openpilotLongitudinalControl: - acc_hud_values = { - 'CRUISE_SPEED': hud.v_cruise, - 'ENABLE_MINI_CAR': 1 if enabled else 0, - # only moves the lead car without ACC_ON - 'HUD_DISTANCE': hud.lead_distance_bars, # wraps to 0 at 4 bars - 'IMPERIAL_UNIT': int(not is_metric), - 'HUD_LEAD': 2 if enabled and hud.lead_visible else 1 if enabled else 0, - 'SET_ME_X01_2': 1, - } - - if CP.carFingerprint in HONDA_BOSCH: - acc_hud_values['ACC_ON'] = int(enabled) - acc_hud_values['FCM_OFF'] = 1 - acc_hud_values['FCM_OFF_2'] = 1 - else: - # Shows the distance bars, TODO: stock camera shows updates temporarily while disabled - acc_hud_values['ACC_ON'] = int(enabled) - acc_hud_values['PCM_SPEED'] = pcm_speed * CV.MS_TO_KPH - acc_hud_values['PCM_GAS'] = hud.pcm_accel - acc_hud_values['SET_ME_X01'] = 1 - acc_hud_values['FCM_OFF'] = acc_hud['FCM_OFF'] - acc_hud_values['FCM_OFF_2'] = acc_hud['FCM_OFF_2'] - acc_hud_values['FCM_PROBLEM'] = acc_hud['FCM_PROBLEM'] - acc_hud_values['ICONS'] = acc_hud['ICONS'] - commands.append(packer.make_can_msg("ACC_HUD", CAN.pt, acc_hud_values)) - - lkas_hud_values = { - 'SET_ME_X41': 0x41, - 'STEERING_REQUIRED': hud.steer_required, - 'SOLID_LANES': hud.lanes_visible, - 'BEEP': 0, - } - - if CP.carFingerprint in HONDA_BOSCH_RADARLESS: - lkas_hud_values['LANE_LINES'] = 3 - lkas_hud_values['DASHED_LANES'] = hud.lanes_visible - # car likely needs to see LKAS_PROBLEM fall within a specific time frame, so forward from camera - lkas_hud_values['LKAS_PROBLEM'] = lkas_hud['LKAS_PROBLEM'] - - if not (CP.flags & HondaFlags.BOSCH_EXT_HUD): - lkas_hud_values['SET_ME_X48'] = 0x48 - - if CP.flags & HondaFlags.BOSCH_EXT_HUD and not CP.openpilotLongitudinalControl: - commands.append(packer.make_can_msg('LKAS_HUD_A', CAN.lkas, lkas_hud_values)) - commands.append(packer.make_can_msg('LKAS_HUD_B', CAN.lkas, lkas_hud_values)) - else: - commands.append(packer.make_can_msg('LKAS_HUD', CAN.lkas, lkas_hud_values)) - - if radar_disabled: - radar_hud_values = { - 'CMBS_OFF': 0x01, - 'SET_TO_1': 0x01, - } - commands.append(packer.make_can_msg('RADAR_HUD', CAN.pt, radar_hud_values)) - - if CP.carFingerprint == CAR.HONDA_CIVIC_BOSCH: - commands.append(packer.make_can_msg("LEGACY_BRAKE_COMMAND", CAN.pt, {})) - - return commands - - -def spam_buttons_command(packer, CAN, button_val, car_fingerprint): - values = { - 'CRUISE_BUTTONS': button_val, - 'CRUISE_SETTING': 0, - } - # send buttons to camera on radarless cars - bus = CAN.camera if car_fingerprint in HONDA_BOSCH_RADARLESS else CAN.pt - return packer.make_can_msg("SCM_BUTTONS", bus, values) - - -def honda_checksum(address: int, sig, d: bytearray) -> int: - s = 0 - extended = address > 0x7FF - addr = address - while addr: - s += addr & 0xF - addr >>= 4 - for i in range(len(d)): - x = d[i] - if i == len(d) - 1: - x >>= 4 - s += (x & 0xF) + (x >> 4) - s = 8 - s - if extended: - s += 3 - return s & 0xF diff --git a/opendbc_repo/opendbc/car/honda/interface.py b/opendbc_repo/opendbc/car/honda/interface.py deleted file mode 100755 index f7560b5e44..0000000000 --- a/opendbc_repo/opendbc/car/honda/interface.py +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env python3 -import numpy as np -from opendbc.car import get_safety_config, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.disable_ecu import disable_ecu -from opendbc.car.honda.hondacan import CanBus -from opendbc.car.honda.values import CarControllerParams, HondaFlags, CAR, HONDA_BOSCH, \ - HONDA_NIDEC_ALT_SCM_MESSAGES, HONDA_BOSCH_RADARLESS, HondaSafetyFlags -from opendbc.car.honda.carcontroller import CarController -from opendbc.car.honda.carstate import CarState -from opendbc.car.honda.radar_interface import RadarInterface -from opendbc.car.interfaces import CarInterfaceBase - -TransmissionType = structs.CarParams.TransmissionType - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def get_pid_accel_limits(CP, current_speed, cruise_speed): - if CP.carFingerprint in HONDA_BOSCH: - return CarControllerParams.BOSCH_ACCEL_MIN, CarControllerParams.BOSCH_ACCEL_MAX - else: - # NIDECs don't allow acceleration near cruise_speed, - # so limit limits of pid to prevent windup - ACCEL_MAX_VALS = [CarControllerParams.NIDEC_ACCEL_MAX, 0.2] - ACCEL_MAX_BP = [cruise_speed - 2., cruise_speed - .2] - return CarControllerParams.NIDEC_ACCEL_MIN, np.interp(current_speed, ACCEL_MAX_BP, ACCEL_MAX_VALS) - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "honda" - - CAN = CanBus(ret, fingerprint) - - if candidate in HONDA_BOSCH: - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hondaBosch)] - ret.radarUnavailable = True - # Disable the radar and let openpilot control longitudinal - # WARNING: THIS DISABLES AEB! - # If Bosch radarless, this blocks ACC messages from the camera - ret.alphaLongitudinalAvailable = True - ret.openpilotLongitudinalControl = alpha_long - ret.pcmCruise = not ret.openpilotLongitudinalControl - else: - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hondaNidec)] - ret.openpilotLongitudinalControl = True - - ret.pcmCruise = True - - if candidate == CAR.HONDA_CRV_5G: - ret.enableBsm = 0x12f8bfa7 in fingerprint[CAN.radar] - - # Detect Bosch cars with new HUD msgs - if any(0x33DA in f for f in fingerprint.values()): - ret.flags |= HondaFlags.BOSCH_EXT_HUD.value - - # Accord ICE 1.5T CVT has different gearbox message - if candidate == CAR.HONDA_ACCORD and 0x191 in fingerprint[CAN.pt]: - ret.transmissionType = TransmissionType.cvt - # Civic Type R is missing 0x191 and 0x1A3 - elif candidate == CAR.HONDA_CIVIC_2022 and all(msg not in fingerprint[CAN.pt] for msg in (0x191, 0x1A3)): - ret.transmissionType = TransmissionType.manual - # New Civics dont have 0x191, but do have 0x1A3 - elif candidate == CAR.HONDA_CIVIC_2022 and 0x1A3 in fingerprint[CAN.pt]: - ret.transmissionType = TransmissionType.cvt - - # Certain Hondas have an extra steering sensor at the bottom of the steering rack, - # which improves controls quality as it removes the steering column torsion from feedback. - # Tire stiffness factor fictitiously lower if it includes the steering column torsion effect. - # For modeling details, see p.198-200 in "The Science of Vehicle Dynamics (2014), M. Guiggiani" - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0], [0]] - ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0.], [0.]] - ret.lateralTuning.pid.kf = 0.00006 # conservative feed-forward - - if candidate in HONDA_BOSCH: - ret.longitudinalActuatorDelay = 0.5 # s - if candidate in HONDA_BOSCH_RADARLESS: - ret.stopAccel = CarControllerParams.BOSCH_ACCEL_MIN # stock uses -4.0 m/s^2 once stopped but limited by safety model - else: - # default longitudinal tuning for all hondas - ret.longitudinalTuning.kiBP = [0., 5., 35.] - ret.longitudinalTuning.kiV = [1.2, 0.8, 0.5] - - eps_modified = False - for fw in car_fw: - if fw.ecu == "eps" and b"," in fw.fwVersion: - eps_modified = True - - if candidate == CAR.HONDA_CIVIC: - if eps_modified: - # stock request input values: 0x0000, 0x00DE, 0x014D, 0x01EF, 0x0290, 0x0377, 0x0454, 0x0610, 0x06EE - # stock request output values: 0x0000, 0x0917, 0x0DC5, 0x1017, 0x119F, 0x140B, 0x1680, 0x1680, 0x1680 - # modified request output values: 0x0000, 0x0917, 0x0DC5, 0x1017, 0x119F, 0x140B, 0x1680, 0x2880, 0x3180 - # stock filter output values: 0x009F, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108 - # modified filter output values: 0x009F, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0400, 0x0480 - # note: max request allowed is 4096, but request is capped at 3840 in firmware, so modifications result in 2x max - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560, 8000], [0, 2560, 3840]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.3], [0.1]] - else: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560], [0, 2560]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[1.1], [0.33]] - - elif candidate in (CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CIVIC_BOSCH_DIESEL, CAR.HONDA_CIVIC_2022): - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] - - elif candidate == CAR.HONDA_ACCORD: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - - if eps_modified: - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.3], [0.09]] - else: - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] - - elif candidate == CAR.ACURA_ILX: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 3840], [0, 3840]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] - - elif candidate in (CAR.HONDA_CRV, CAR.HONDA_CRV_EU): - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 1000], [0, 1000]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] - ret.wheelSpeedFactor = 1.025 - - elif candidate == CAR.HONDA_CRV_5G: - if eps_modified: - # stock request input values: 0x0000, 0x00DB, 0x01BB, 0x0296, 0x0377, 0x0454, 0x0532, 0x0610, 0x067F - # stock request output values: 0x0000, 0x0500, 0x0A15, 0x0E6D, 0x1100, 0x1200, 0x129A, 0x134D, 0x1400 - # modified request output values: 0x0000, 0x0500, 0x0A15, 0x0E6D, 0x1100, 0x1200, 0x1ACD, 0x239A, 0x2800 - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560, 10000], [0, 2560, 3840]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.21], [0.07]] - else: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 3840], [0, 3840]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.64], [0.192]] - ret.wheelSpeedFactor = 1.025 - - elif candidate == CAR.HONDA_CRV_HYBRID: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] - ret.wheelSpeedFactor = 1.025 - - elif candidate == CAR.HONDA_FIT: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2], [0.05]] - - elif candidate == CAR.HONDA_FREED: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2], [0.05]] - - elif candidate in (CAR.HONDA_HRV, CAR.HONDA_HRV_3G): - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] - if candidate == CAR.HONDA_HRV: - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.16], [0.025]] - ret.wheelSpeedFactor = 1.025 - else: - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] # TODO: can probably use some tuning - - elif candidate == CAR.ACURA_RDX: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 1000], [0, 1000]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] - - elif candidate == CAR.ACURA_RDX_3G: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 3840], [0, 3840]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2], [0.06]] - - elif candidate in (CAR.HONDA_ODYSSEY, CAR.HONDA_ODYSSEY_CHN): - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.28], [0.08]] - if candidate == CAR.HONDA_ODYSSEY_CHN: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 32767], [0, 32767]] # TODO: determine if there is a dead zone at the top end - else: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - - elif candidate == CAR.HONDA_PILOT: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.38], [0.11]] - - elif candidate == CAR.HONDA_RIDGELINE: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.38], [0.11]] - - elif candidate == CAR.HONDA_INSIGHT: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] - - elif candidate == CAR.HONDA_E: - ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] # TODO: can probably use some tuning - - else: - raise ValueError(f"unsupported car {candidate}") - - # These cars use alternate user brake msg (0x1BE) - # TODO: Only detect feature for Accord/Accord Hybrid, not all Bosch DBCs have BRAKE_MODULE - if 0x1BE in fingerprint[CAN.pt] and candidate in (CAR.HONDA_ACCORD, CAR.HONDA_HRV_3G): - ret.flags |= HondaFlags.BOSCH_ALT_BRAKE.value - - if ret.flags & HondaFlags.BOSCH_ALT_BRAKE: - ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.ALT_BRAKE.value - - # These cars use alternate SCM messages (SCM_FEEDBACK AND SCM_BUTTON) - if candidate in HONDA_NIDEC_ALT_SCM_MESSAGES: - ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.NIDEC_ALT.value - - if ret.openpilotLongitudinalControl and candidate in HONDA_BOSCH: - ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.BOSCH_LONG.value - - if candidate in HONDA_BOSCH_RADARLESS: - ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.RADARLESS.value - - # min speed to enable ACC. if car can do stop and go, then set enabling speed - # to a negative value, so it won't matter. Otherwise, add 0.5 mph margin to not - # conflict with PCM acc - ret.autoResumeSng = candidate in (HONDA_BOSCH | {CAR.HONDA_CIVIC}) - ret.minEnableSpeed = -1. if ret.autoResumeSng else 25.51 * CV.MPH_TO_MS - - ret.steerActuatorDelay = 0.1 - ret.steerLimitTimer = 0.8 - ret.radarDelay = 0.1 - - return ret - - @staticmethod - def init(CP, can_recv, can_send): - if CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and CP.openpilotLongitudinalControl: - disable_ecu(can_recv, can_send, bus=CanBus(CP).pt, addr=0x18DAB0F1, com_cont_req=b'\x28\x83\x03') diff --git a/opendbc_repo/opendbc/car/honda/radar_interface.py b/opendbc_repo/opendbc/car/honda/radar_interface.py deleted file mode 100755 index a4ef42e7ca..0000000000 --- a/opendbc_repo/opendbc/car/honda/radar_interface.py +++ /dev/null @@ -1,80 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import RadarInterfaceBase -from opendbc.car.honda.values import DBC - - -def _create_nidec_can_parser(car_fingerprint): - radar_messages = [0x400] + list(range(0x430, 0x43A)) + list(range(0x440, 0x446)) - messages = [(m, 20) for m in radar_messages] - return CANParser(DBC[car_fingerprint][Bus.radar], messages, 1) - - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - self.track_id = 0 - self.radar_fault = False - self.radar_wrong_config = False - self.radar_off_can = CP.radarUnavailable - - # Nidec - if self.radar_off_can: - self.rcp = None - else: - self.rcp = _create_nidec_can_parser(CP.carFingerprint) - self.trigger_msg = 0x445 - self.updated_messages = set() - - def update(self, can_strings): - # in Bosch radar and we are only steering for now, so sleep 0.05s to keep - # radard at 20Hz and return no points - if self.radar_off_can: - return super().update(None) - - vls = self.rcp.update(can_strings) - self.updated_messages.update(vls) - - if self.trigger_msg not in self.updated_messages: - return None - - rr = self._update(self.updated_messages) - self.updated_messages.clear() - return rr - - def _update(self, updated_messages): - ret = structs.RadarData() - - for ii in sorted(updated_messages): - cpt = self.rcp.vl[ii] - if ii == 0x400: - # check for radar faults - self.radar_fault = cpt['RADAR_STATE'] != 0x79 - self.radar_wrong_config = cpt['RADAR_STATE'] == 0x69 - elif cpt['LONG_DIST'] < 255: - if ii not in self.pts or cpt['NEW_TRACK']: - self.pts[ii] = structs.RadarData.RadarPoint() - self.pts[ii].trackId = self.track_id - self.track_id += 1 - self.pts[ii].dRel = cpt['LONG_DIST'] # from front of car - self.pts[ii].yRel = -cpt['LAT_DIST'] # in car frame's y axis, left is positive - self.pts[ii].vRel = cpt['REL_SPEED'] - self.pts[ii].vLead = self.pts[ii].vRel + self.v_ego - self.pts[ii].aRel = float('nan') - self.pts[ii].yvRel = 0# float('nan') - self.pts[ii].measured = True - else: - if ii in self.pts: - del self.pts[ii] - - if not self.rcp.can_valid: - ret.errors.canError = True - if self.radar_fault: - ret.errors.radarFault = True - if self.radar_wrong_config: - ret.errors.wrongConfig = True - - ret.points = list(self.pts.values()) - - return ret diff --git a/opendbc_repo/opendbc/car/honda/tests/__init__.py b/opendbc_repo/opendbc/car/honda/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/honda/tests/test_honda.py b/opendbc_repo/opendbc/car/honda/tests/test_honda.py deleted file mode 100644 index 946f496d10..0000000000 --- a/opendbc_repo/opendbc/car/honda/tests/test_honda.py +++ /dev/null @@ -1,14 +0,0 @@ -import re - -from opendbc.car.honda.fingerprints import FW_VERSIONS - -HONDA_FW_VERSION_RE = br"[A-Z0-9]{5}-[A-Z0-9]{3}(-|,)[A-Z0-9]{4}(\x00){2}$" - - -class TestHondaFingerprint: - def test_fw_version_format(self): - # Asserts all FW versions follow an expected format - for fw_by_ecu in FW_VERSIONS.values(): - for fws in fw_by_ecu.values(): - for fw in fws: - assert re.match(HONDA_FW_VERSION_RE, fw) is not None, fw diff --git a/opendbc_repo/opendbc/car/honda/values.py b/opendbc_repo/opendbc/car/honda/values.py deleted file mode 100644 index 0e4b5f01db..0000000000 --- a/opendbc_repo/opendbc/car/honda/values.py +++ /dev/null @@ -1,347 +0,0 @@ -from dataclasses import dataclass -from enum import Enum, IntFlag - -from opendbc.car import Bus, CarSpecs, PlatformConfig, Platforms, structs, uds -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries, p16 - -Ecu = structs.CarParams.Ecu -VisualAlert = structs.CarControl.HUDControl.VisualAlert -GearShifter = structs.CarState.GearShifter - -class CarControllerParams: - # Allow small margin below -3.5 m/s^2 from ISO 15622:2018 since we - # perform the closed loop control, and might need some - # to apply some more braking if we're on a downhill slope. - # Our controller should still keep the 2 second average above - # -3.5 m/s^2 as per planner limits - NIDEC_ACCEL_MIN = -4.0 # m/s^2 - NIDEC_ACCEL_MAX = 1.6 # m/s^2, lower than 2.0 m/s^2 for tuning reasons - - NIDEC_ACCEL_LOOKUP_BP = [-1., 0., .6] - NIDEC_ACCEL_LOOKUP_V = [-4.8, 0., 2.0] - - NIDEC_MAX_ACCEL_V = [0.5, 2.4, 1.4, 0.6] - NIDEC_MAX_ACCEL_BP = [0.0, 4.0, 10., 20.] - - NIDEC_GAS_MAX = 198 # 0xc6 - NIDEC_BRAKE_MAX = 1024 // 4 - - BOSCH_ACCEL_MIN = -3.5 # m/s^2 - BOSCH_ACCEL_MAX = 2.0 # m/s^2 - - BOSCH_GAS_LOOKUP_BP = [-0.2, 2.0] # 2m/s^2 - BOSCH_GAS_LOOKUP_V = [0, 1600] - - STEER_STEP = 1 # 100 Hz - STEER_DELTA_UP = 3 # min/max in 0.33s for all Honda - STEER_DELTA_DOWN = 3 - - def __init__(self, CP): - self.STEER_MAX = CP.lateralParams.torqueBP[-1] - # mirror of list (assuming first item is zero) for interp of signed request values - assert(CP.lateralParams.torqueBP[0] == 0) - assert(CP.lateralParams.torqueBP[0] == 0) - self.STEER_LOOKUP_BP = [v * -1 for v in CP.lateralParams.torqueBP][1:][::-1] + list(CP.lateralParams.torqueBP) - self.STEER_LOOKUP_V = [v * -1 for v in CP.lateralParams.torqueV][1:][::-1] + list(CP.lateralParams.torqueV) - - -class HondaSafetyFlags(IntFlag): - ALT_BRAKE = 1 - BOSCH_LONG = 2 - NIDEC_ALT = 4 - RADARLESS = 8 - - -class HondaFlags(IntFlag): - # Detected flags - # Bosch models with alternate set of LKAS_HUD messages - BOSCH_EXT_HUD = 1 - BOSCH_ALT_BRAKE = 2 - - # Static flags - BOSCH = 4 - BOSCH_RADARLESS = 8 - - NIDEC = 16 - NIDEC_ALT_PCM_ACCEL = 32 - NIDEC_ALT_SCM_MESSAGES = 64 - - -# Car button codes -class CruiseButtons: - RES_ACCEL = 4 - DECEL_SET = 3 - CANCEL = 2 - MAIN = 1 - - -class CruiseSettings: - DISTANCE = 3 - LKAS = 1 - - -# See dbc files for info on values -VISUAL_HUD = { - VisualAlert.none: 0, - VisualAlert.fcw: 1, - VisualAlert.steerRequired: 1, - VisualAlert.ldw: 1, - VisualAlert.brakePressed: 10, - VisualAlert.wrongGear: 6, - VisualAlert.seatbeltUnbuckled: 5, - VisualAlert.speedTooHigh: 8 -} - - -@dataclass -class HondaCarDocs(CarDocs): - package: str = "Honda Sensing" - - def init_make(self, CP: structs.CarParams): - if CP.flags & HondaFlags.BOSCH: - self.car_parts = CarParts.common([CarHarness.bosch_b]) if CP.flags & HondaFlags.BOSCH_RADARLESS else CarParts.common([CarHarness.bosch_a]) - else: - self.car_parts = CarParts.common([CarHarness.nidec]) - - -class Footnote(Enum): - CIVIC_DIESEL = CarFootnote( - "2019 Honda Civic 1.6L Diesel Sedan does not have ALC below 12mph.", - Column.FSR_STEERING) - - -class HondaBoschPlatformConfig(PlatformConfig): - def init(self): - self.flags |= HondaFlags.BOSCH - - -class HondaNidecPlatformConfig(PlatformConfig): - def init(self): - self.flags |= HondaFlags.NIDEC - - -def radar_dbc_dict(pt_dict): - return {Bus.pt: pt_dict, Bus.radar: 'acura_ilx_2016_nidec'} - - -class CAR(Platforms): - # Bosch Cars - HONDA_ACCORD = HondaBoschPlatformConfig( - [ - HondaCarDocs("Honda Accord 2018-22", "All", video="https://www.youtube.com/watch?v=mrUwlj3Mi58", min_steer_speed=3. * CV.MPH_TO_MS), - HondaCarDocs("Honda Inspire 2018", "All", min_steer_speed=3. * CV.MPH_TO_MS), - HondaCarDocs("Honda Accord Hybrid 2018-22", "All", min_steer_speed=3. * CV.MPH_TO_MS), - ], - # steerRatio: 11.82 is spec end-to-end - CarSpecs(mass=3279 * CV.LB_TO_KG, wheelbase=2.83, steerRatio=16.33, centerToFrontRatio=0.39, tireStiffnessFactor=0.8467), - {Bus.pt: 'honda_accord_2018_can_generated'}, - ) - HONDA_CIVIC_BOSCH = HondaBoschPlatformConfig( - [ - HondaCarDocs("Honda Civic 2019-21", "All", video="https://www.youtube.com/watch?v=4Iz1Mz5LGF8", - footnotes=[Footnote.CIVIC_DIESEL], min_steer_speed=2. * CV.MPH_TO_MS), - HondaCarDocs("Honda Civic Hatchback 2017-21", min_steer_speed=12. * CV.MPH_TO_MS), - ], - CarSpecs(mass=1326, wheelbase=2.7, steerRatio=15.38, centerToFrontRatio=0.4), # steerRatio: 10.93 is end-to-end spec - {Bus.pt: 'honda_civic_hatchback_ex_2017_can_generated'}, - ) - HONDA_CIVIC_BOSCH_DIESEL = HondaBoschPlatformConfig( - [], # don't show in docs - HONDA_CIVIC_BOSCH.specs, - {Bus.pt: 'honda_accord_2018_can_generated'}, - ) - HONDA_CIVIC_2022 = HondaBoschPlatformConfig( - [ - HondaCarDocs("Honda Civic 2022-24", "All", video="https://youtu.be/ytiOT5lcp6Q"), - HondaCarDocs("Honda Civic Hatchback 2022-24", "All", video="https://youtu.be/ytiOT5lcp6Q"), - HondaCarDocs("Honda Civic Hatchback Hybrid 2023 (Europe only)", "All"), - # TODO: Confirm 2024 - HondaCarDocs("Honda Civic Hatchback Hybrid 2025", "All"), - ], - HONDA_CIVIC_BOSCH.specs, - {Bus.pt: 'honda_civic_ex_2022_can_generated'}, - flags=HondaFlags.BOSCH_RADARLESS, - ) - HONDA_CRV_5G = HondaBoschPlatformConfig( - [HondaCarDocs("Honda CR-V 2017-22", min_steer_speed=12. * CV.MPH_TO_MS)], - # steerRatio: 12.3 is spec end-to-end - CarSpecs(mass=3410 * CV.LB_TO_KG, wheelbase=2.66, steerRatio=16.0, centerToFrontRatio=0.41, tireStiffnessFactor=0.677), - {Bus.pt: 'honda_crv_ex_2017_can_generated', Bus.body: 'honda_crv_ex_2017_body_generated'}, - flags=HondaFlags.BOSCH_ALT_BRAKE, - ) - HONDA_CRV_HYBRID = HondaBoschPlatformConfig( - [HondaCarDocs("Honda CR-V Hybrid 2017-22", min_steer_speed=12. * CV.MPH_TO_MS)], - # mass: mean of 4 models in kg, steerRatio: 12.3 is spec end-to-end - CarSpecs(mass=1667, wheelbase=2.66, steerRatio=16, centerToFrontRatio=0.41, tireStiffnessFactor=0.677), - {Bus.pt: 'honda_accord_2018_can_generated'}, - ) - HONDA_HRV_3G = HondaBoschPlatformConfig( - [HondaCarDocs("Honda HR-V 2023", "All")], - CarSpecs(mass=3125 * CV.LB_TO_KG, wheelbase=2.61, steerRatio=15.2, centerToFrontRatio=0.41, tireStiffnessFactor=0.5), - {Bus.pt: 'honda_civic_ex_2022_can_generated'}, - flags=HondaFlags.BOSCH_RADARLESS, - ) - ACURA_RDX_3G = HondaBoschPlatformConfig( - [HondaCarDocs("Acura RDX 2019-21", "All", min_steer_speed=3. * CV.MPH_TO_MS)], - CarSpecs(mass=4068 * CV.LB_TO_KG, wheelbase=2.75, steerRatio=11.95, centerToFrontRatio=0.41, tireStiffnessFactor=0.677), # as spec - {Bus.pt: 'acura_rdx_2020_can_generated'}, - flags=HondaFlags.BOSCH_ALT_BRAKE, - ) - HONDA_INSIGHT = HondaBoschPlatformConfig( - [HondaCarDocs("Honda Insight 2019-22", "All", min_steer_speed=3. * CV.MPH_TO_MS)], - CarSpecs(mass=2987 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=15.0, centerToFrontRatio=0.39, tireStiffnessFactor=0.82), # as spec - {Bus.pt: 'honda_insight_ex_2019_can_generated'}, - ) - HONDA_E = HondaBoschPlatformConfig( - [HondaCarDocs("Honda e 2020", "All", min_steer_speed=3. * CV.MPH_TO_MS)], - CarSpecs(mass=3338.8 * CV.LB_TO_KG, wheelbase=2.5, centerToFrontRatio=0.5, steerRatio=16.71, tireStiffnessFactor=0.82), - {Bus.pt: 'acura_rdx_2020_can_generated'}, - ) - - # Nidec Cars - ACURA_ILX = HondaNidecPlatformConfig( - [HondaCarDocs("Acura ILX 2016-19", "AcuraWatch Plus", min_steer_speed=25. * CV.MPH_TO_MS)], - CarSpecs(mass=3095 * CV.LB_TO_KG, wheelbase=2.67, steerRatio=18.61, centerToFrontRatio=0.37, tireStiffnessFactor=0.72), # 15.3 is spec end-to-end - radar_dbc_dict('acura_ilx_2016_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_CRV = HondaNidecPlatformConfig( - [HondaCarDocs("Honda CR-V 2015-16", "Touring Trim", min_steer_speed=12. * CV.MPH_TO_MS)], - CarSpecs(mass=3572 * CV.LB_TO_KG, wheelbase=2.62, steerRatio=16.89, centerToFrontRatio=0.41, tireStiffnessFactor=0.444), # as spec - radar_dbc_dict('honda_crv_touring_2016_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_CRV_EU = HondaNidecPlatformConfig( - [], # Euro version of CRV Touring, don't show in docs - HONDA_CRV.specs, - radar_dbc_dict('honda_crv_executive_2016_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_FIT = HondaNidecPlatformConfig( - [HondaCarDocs("Honda Fit 2018-20", min_steer_speed=12. * CV.MPH_TO_MS)], - CarSpecs(mass=2644 * CV.LB_TO_KG, wheelbase=2.53, steerRatio=13.06, centerToFrontRatio=0.39, tireStiffnessFactor=0.75), - radar_dbc_dict('honda_fit_ex_2018_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_FREED = HondaNidecPlatformConfig( - [HondaCarDocs("Honda Freed 2020", min_steer_speed=12. * CV.MPH_TO_MS)], - CarSpecs(mass=3086. * CV.LB_TO_KG, wheelbase=2.74, steerRatio=13.06, centerToFrontRatio=0.39, tireStiffnessFactor=0.75), # mostly copied from FIT - radar_dbc_dict('honda_fit_ex_2018_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_HRV = HondaNidecPlatformConfig( - [HondaCarDocs("Honda HR-V 2019-22", min_steer_speed=12. * CV.MPH_TO_MS)], - HONDA_HRV_3G.specs, - radar_dbc_dict('honda_fit_ex_2018_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_ODYSSEY = HondaNidecPlatformConfig( - [HondaCarDocs("Honda Odyssey 2018-20")], - CarSpecs(mass=1900, wheelbase=3.0, steerRatio=14.35, centerToFrontRatio=0.41, tireStiffnessFactor=0.82), - radar_dbc_dict('honda_odyssey_exl_2018_generated'), - flags=HondaFlags.NIDEC_ALT_PCM_ACCEL, - ) - HONDA_ODYSSEY_CHN = HondaNidecPlatformConfig( - [], # Chinese version of Odyssey, don't show in docs - HONDA_ODYSSEY.specs, - radar_dbc_dict('honda_odyssey_extreme_edition_2018_china_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - ACURA_RDX = HondaNidecPlatformConfig( - [HondaCarDocs("Acura RDX 2016-18", "AcuraWatch Plus", min_steer_speed=12. * CV.MPH_TO_MS)], - CarSpecs(mass=3925 * CV.LB_TO_KG, wheelbase=2.68, steerRatio=15.0, centerToFrontRatio=0.38, tireStiffnessFactor=0.444), # as spec - radar_dbc_dict('acura_rdx_2018_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_PILOT = HondaNidecPlatformConfig( - [ - HondaCarDocs("Honda Pilot 2016-22", min_steer_speed=12. * CV.MPH_TO_MS), - HondaCarDocs("Honda Passport 2019-25", "All", min_steer_speed=12. * CV.MPH_TO_MS), - ], - CarSpecs(mass=4278 * CV.LB_TO_KG, wheelbase=2.86, centerToFrontRatio=0.428, steerRatio=16.0, tireStiffnessFactor=0.444), # as spec - radar_dbc_dict('acura_ilx_2016_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_RIDGELINE = HondaNidecPlatformConfig( - [HondaCarDocs("Honda Ridgeline 2017-25", min_steer_speed=12. * CV.MPH_TO_MS)], - CarSpecs(mass=4515 * CV.LB_TO_KG, wheelbase=3.18, centerToFrontRatio=0.41, steerRatio=15.59, tireStiffnessFactor=0.444), # as spec - radar_dbc_dict('acura_ilx_2016_can_generated'), - flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, - ) - HONDA_CIVIC = HondaNidecPlatformConfig( - [HondaCarDocs("Honda Civic 2016-18", min_steer_speed=12. * CV.MPH_TO_MS, video="https://youtu.be/-IkImTe1NYE")], - CarSpecs(mass=1326, wheelbase=2.70, centerToFrontRatio=0.4, steerRatio=15.38), # 10.93 is end-to-end spec - radar_dbc_dict('honda_civic_touring_2016_can_generated'), - ) - - -HONDA_ALT_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(0xF112) -HONDA_ALT_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(0xF112) - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - # Currently used to fingerprint - Request( - [StdQueries.UDS_VERSION_REQUEST], - [StdQueries.UDS_VERSION_RESPONSE], - bus=1, - ), - - # Data collection requests: - # Log manufacturer-specific identifier for current ECUs - Request( - [HONDA_ALT_VERSION_REQUEST], - [HONDA_ALT_VERSION_RESPONSE], - bus=1, - logging=True, - ), - # Nidec PT bus - Request( - [StdQueries.UDS_VERSION_REQUEST], - [StdQueries.UDS_VERSION_RESPONSE], - bus=0, - ), - # Bosch PT bus - Request( - [StdQueries.UDS_VERSION_REQUEST], - [StdQueries.UDS_VERSION_RESPONSE], - bus=1, - obd_multiplexing=False, - ), - ], - # We lose these ECUs without the comma power on these cars. - # Note that we still attempt to match with them when they are present - # This is or'd with (ALL_ECUS - ESSENTIAL_ECUS) from fw_versions.py - non_essential_ecus={ - Ecu.eps: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC_2022, CAR.HONDA_E, CAR.HONDA_HRV_3G], - Ecu.vsa: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CIVIC_2022, CAR.HONDA_CRV_5G, CAR.HONDA_CRV_HYBRID, - CAR.HONDA_E, CAR.HONDA_HRV_3G, CAR.HONDA_INSIGHT], - }, - extra_ecus=[ - (Ecu.combinationMeter, 0x18da60f1, None), - (Ecu.programmedFuelInjection, 0x18da10f1, None), - # The only other ECU on PT bus accessible by camera on radarless Civic - # This is likely a manufacturer-specific sub-address implementation: the camera responds to this and 0x18dab0f1 - # Unclear what the part number refers to: 8S103 is 'Camera Set Mono', while 36160 is 'Camera Monocular - Honda' - # TODO: add query back, camera does not support querying both in parallel and 0x18dab0f1 often fails to respond - # (Ecu.unknown, 0x18DAB3F1, None), - ], -) - -STEER_THRESHOLD = { - # default is 1200, overrides go here - CAR.ACURA_RDX: 400, - CAR.HONDA_CRV_EU: 400, -} - -HONDA_NIDEC_ALT_PCM_ACCEL = CAR.with_flags(HondaFlags.NIDEC_ALT_PCM_ACCEL) -HONDA_NIDEC_ALT_SCM_MESSAGES = CAR.with_flags(HondaFlags.NIDEC_ALT_SCM_MESSAGES) -HONDA_BOSCH = CAR.with_flags(HondaFlags.BOSCH) -HONDA_BOSCH_RADARLESS = CAR.with_flags(HondaFlags.BOSCH_RADARLESS) - - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/hyundai/__init__.py b/opendbc_repo/opendbc/car/hyundai/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/hyundai/carcontroller.py b/opendbc_repo/opendbc/car/hyundai/carcontroller.py deleted file mode 100644 index 777feb65fa..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/carcontroller.py +++ /dev/null @@ -1,638 +0,0 @@ -import numpy as np -from opendbc.can import CANPacker -from opendbc.car import Bus, DT_CTRL, apply_driver_steer_torque_limits, common_fault_avoidance, make_tester_present_msg, structs, apply_std_steer_angle_limits -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.hyundai import hyundaicanfd, hyundaican -from opendbc.car.hyundai.carstate import CarState -from opendbc.car.hyundai.hyundaicanfd import CanBus -from opendbc.car.hyundai.values import HyundaiFlags, Buttons, CarControllerParams, CAR, CAN_GEARS, HyundaiExtFlags -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.vehicle_model import VehicleModel - -VisualAlert = structs.CarControl.HUDControl.VisualAlert -LongCtrlState = structs.CarControl.Actuators.LongControlState - - -from openpilot.common.params import Params - -# EPS faults if you apply torque while the steering angle is above 90 degrees for more than 1 second -# All slightly below EPS thresholds to avoid fault -MAX_ANGLE = 85 -MAX_ANGLE_FRAMES = 89 -MAX_ANGLE_CONSECUTIVE_FRAMES = 2 - -vibrate_intervals = [ - (0.0, 0.5), - (1.0, 1.5), - #(2.5, 3.0), - #(3.5, 4.0), - (5.0, 5.5), - (6.0, 6.5), - (7.5, 8.0), -] - -def process_hud_alert(enabled, fingerprint, hud_control): - sys_warning = (hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw)) - - # initialize to no line visible - # TODO: this is not accurate for all cars - sys_state = 1 - if hud_control.leftLaneVisible and hud_control.rightLaneVisible or sys_warning: # HUD alert only display when LKAS status is active - sys_state = 3 if enabled or sys_warning else 4 - elif hud_control.leftLaneVisible: - sys_state = 5 - elif hud_control.rightLaneVisible: - sys_state = 6 - - # initialize to no warnings - left_lane_warning = 0 - right_lane_warning = 0 - if hud_control.leftLaneDepart: - left_lane_warning = 1 if fingerprint in (CAR.GENESIS_G90, CAR.GENESIS_G80) else 2 - if hud_control.rightLaneDepart: - right_lane_warning = 1 if fingerprint in (CAR.GENESIS_G90, CAR.GENESIS_G80) else 2 - - return sys_warning, sys_state, left_lane_warning, right_lane_warning - -def rate_limit(x, x_last, lo, hi): - return float(np.clip(x, x_last + lo, x_last + hi)) - -def apply_steer_angle_limits_physics(desired_sw_deg: float, - last_sw_deg: float, - v_ego: float, - steering_sw_deg: float, - lat_active: bool, - wheelbase_m: float, - steer_ratio: float, - steer_sw_max_deg: float) -> float: - max_lat_accel = 5.0 # m/s^2 - max_lat_jerk = 4.0 # m/s^3 - max_sw_rate_deg_per_tick = 2.0 # ★ EPS 보호용 상한 - - v = max(float(v_ego), 1.0) - - target_sw = float(np.clip(desired_sw_deg, -steer_sw_max_deg, steer_sw_max_deg)) - - target_rw = target_sw / steer_ratio - last_rw = float(last_sw_deg) / steer_ratio - - # --- accel limit --- - rw_max_rad = np.arctan((max_lat_accel * wheelbase_m) / (v * v)) - rw_max = float(np.degrees(rw_max_rad)) - - # --- jerk -> rate limit --- - sec2 = 1.2 - max_drw_dt = (max_lat_jerk * wheelbase_m) / (v * v * sec2) # rad/s - max_drw_per_tick = max_drw_dt * DT_CTRL # rad/tick - max_drw_per_tick_deg = float(np.degrees(max_drw_per_tick)) - - max_drw_per_tick_deg = min( - max_drw_per_tick_deg, - max_sw_rate_deg_per_tick / steer_ratio - ) - err = abs(target_sw - last_sw_deg) - if err > 20.0: - max_drw_per_tick_deg *= 0.5 - - # --- rate limit --- - cmd_rw = rate_limit(target_rw, last_rw, -max_drw_per_tick_deg, max_drw_per_tick_deg) - - # --- accel clip --- - cmd_rw = float(np.clip(cmd_rw, -rw_max, rw_max)) - - if not lat_active: - cmd_rw = float(steering_sw_deg) / steer_ratio - - cmd_sw = cmd_rw * steer_ratio - return float(np.clip(cmd_sw, -steer_sw_max_deg, steer_sw_max_deg)) - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.CAN = CanBus(CP) - self.params = CarControllerParams(CP) - self.packer = CANPacker(dbc_names[Bus.pt]) - self.angle_limit_counter = 0 - - self.accel_last = 0 - self.apply_torque_last = 0 - self.car_fingerprint = CP.carFingerprint - self.last_button_frame = 0 - - self.hyundai_jerk = HyundaiJerk() - self.speedCameraHapticEndFrame = 0 - self.hapticFeedbackWhenSpeedCamera = 0 - self.max_angle_frames = MAX_ANGLE_FRAMES - self.blinking_signal = False # 1Hz - self.blinking_frame = int(1.0 / DT_CTRL) - self.soft_hold_mode = 2 - - self.activateCruise = 0 - self.button_wait = 12 - self.cruise_buttons_msg_values = None - self.cruise_buttons_msg_cnt = 0 - self.button_spamming_count = 0 - self.prev_clu_speed = 0 - self.button_spam1 = 8 - self.button_spam2 = 30 - self.button_spam3 = 1 - - self.apply_angle_last = 0 - self.lkas_max_torque = 0 - self.angle_max_torque = 250 - - self.canfd_debug = 0 - self.MainMode_ACC_trigger = 0 - self.LFA_trigger = 0 - - self.activeCarrot = 0 - self.camera_scc_params = Params().get_int("HyundaiCameraSCC") - self.is_ldws_car = Params().get_bool("IsLdwsCar") - self.enable_corner_radar = 0 - - self.steerDeltaUpOrg = self.steerDeltaUp = self.steerDeltaUpLC = self.params.STEER_DELTA_UP - self.steerDeltaDownOrg = self.steerDeltaDown = self.steerDeltaDownLC = self.params.STEER_DELTA_DOWN - - def update(self, CC, CS, now_nanos): - - if self.frame % 50 == 0: - params = Params() - self.max_angle_frames = params.get_int("MaxAngleFrames") - steerMax = params.get_int("CustomSteerMax") - steerDeltaUp = params.get_int("CustomSteerDeltaUp") - steerDeltaDown = params.get_int("CustomSteerDeltaDown") - steerDeltaUpLC = params.get_int("CustomSteerDeltaUpLC") - steerDeltaDownLC = params.get_int("CustomSteerDeltaDownLC") - if steerMax > 0: - self.params.STEER_MAX = steerMax - if steerDeltaUp > 0: - self.steerDeltaUp = steerDeltaUp - #self.params.ANGLE_TORQUE_UP_RATE = steerDeltaUp - else: - self.steerDeltaUp = self.steerDeltaUpOrg - if steerDeltaDown > 0: - self.steerDeltaDown = steerDeltaDown - #self.params.ANGLE_TORQUE_DOWN_RATE = steerDeltaDown - else: - self.steerDeltaDown = self.steerDeltaDownOrg - - if steerDeltaUpLC > 0: - self.steerDeltaUpLC = steerDeltaUpLC - else: - self.steerDeltaUpLC = self.steerDeltaUp - if steerDeltaDownLC > 0: - self.steerDeltaDownLC = steerDeltaDownLC - else: - self.steerDeltaDownLC = self.steerDeltaDown - - self.soft_hold_mode = 1 if params.get_int("AutoCruiseControl") > 1 else 2 - self.hapticFeedbackWhenSpeedCamera = int(params.get_int("HapticFeedbackWhenSpeedCamera")) - - self.button_spam1 = params.get_int("CruiseButtonTest1") - self.button_spam2 = params.get_int("CruiseButtonTest2") - self.button_spam3 = params.get_int("CruiseButtonTest3") - self.speed_from_pcm = params.get_int("SpeedFromPCM") - - self.canfd_debug = params.get_int("CanfdDebug") - self.camera_scc_params = params.get_int("HyundaiCameraSCC") - self.enable_corner_radar = params.get_int("EnableCornerRadar") - - actuators = CC.actuators - hud_control = CC.hudControl - - if hud_control.modelDesire in [3,4]: - self.params.STEER_DELTA_UP = self.steerDeltaUpLC - self.params.STEER_DELTA_DOWN = self.steerDeltaDownLC - else: - self.params.STEER_DELTA_UP = self.steerDeltaUp - self.params.STEER_DELTA_DOWN = self.steerDeltaDown - - angle_control = self.CP.flags & HyundaiFlags.ANGLE_CONTROL - - # steering torque - new_torque = int(round(actuators.torque * self.params.STEER_MAX)) - apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.params) - - # >90 degree steering fault prevention - self.angle_limit_counter, apply_steer_req = common_fault_avoidance(abs(CS.out.steeringAngleDeg) >= MAX_ANGLE, CC.latActive, - self.angle_limit_counter, self.max_angle_frames, - MAX_ANGLE_CONSECUTIVE_FRAMES) - - #apply_angle = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgoRaw, - # CS.out.steeringAngleDeg, CC.latActive, self.params.ANGLE_LIMITS) - - apply_angle = apply_steer_angle_limits_physics( - actuators.steeringAngleDeg, - self.apply_angle_last, - CS.out.vEgoRaw, - CS.out.steeringAngleDeg, - CC.latActive, - self.CP.wheelbase, - self.CP.steerRatio, - self.params.ANGLE_LIMITS.STEER_ANGLE_MAX - ) - - - if angle_control: - apply_steer_req = CC.latActive - - if CS.out.steeringPressed: - #self.apply_angle_last = CS.out.steeringAngleDeg - self.lkas_max_torque = max(self.lkas_max_torque - 20, 25) - else: - target_torque = self.angle_max_torque - - max_steering_tq = self.params.STEER_DRIVER_ALLOWANCE * 0.7 - rate_ratio = max(20, max_steering_tq - abs(CS.out.steeringTorque)) / max_steering_tq - rate_up = self.params.ANGLE_TORQUE_UP_RATE * rate_ratio - rate_down = self.params.ANGLE_TORQUE_DOWN_RATE * rate_ratio - - if self.lkas_max_torque > target_torque: - self.lkas_max_torque = max(self.lkas_max_torque - rate_down, target_torque) - else: - self.lkas_max_torque = min(self.lkas_max_torque + rate_up, target_torque) - - - if not CC.latActive: - apply_torque = 0 - self.lkas_max_torque = 0 - - self.apply_angle_last = apply_angle - - # Hold torque with induced temporary fault when cutting the actuation bit - torque_fault = CC.latActive and not apply_steer_req - - self.apply_torque_last = apply_torque - - # accel + longitudinal - accel = float(np.clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) - stopping = actuators.longControlState == LongCtrlState.stopping - set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - - # HUD messages - sys_warning, sys_state, left_lane_warning, right_lane_warning = process_hud_alert(CC.enabled, self.car_fingerprint, - hud_control) - - active_speed_decel = hud_control.activeCarrot == 3 and self.activeCarrot != 3 # 3: Speed Decel - self.activeCarrot = hud_control.activeCarrot - if active_speed_decel and self.speedCameraHapticEndFrame < 0: # 과속카메라 감속시작 - self.speedCameraHapticEndFrame = self.frame + (8.0 / DT_CTRL) #8초간 켜줌. - elif not active_speed_decel: - self.speedCameraHapticEndFrame = -1 - - if 0 <= self.speedCameraHapticEndFrame - self.frame < int(8.0 / DT_CTRL) and self.hapticFeedbackWhenSpeedCamera > 0: - t = (self.frame - (self.speedCameraHapticEndFrame - int(8.0 / DT_CTRL))) * DT_CTRL - - for start, end in vibrate_intervals: - if start <= t < end: - left_lane_warning = right_lane_warning = self.hapticFeedbackWhenSpeedCamera - break - - if self.frame >= self.speedCameraHapticEndFrame: - self.speedCameraHapticEndFrame = -1 - - if self.frame % self.blinking_frame == 0: - self.blinking_signal = True - elif self.frame % self.blinking_frame == self.blinking_frame / 2: - self.blinking_signal = False - - - - can_sends = [] - - # *** common hyundai stuff *** - - # tester present - w/ no response (keeps relevant ECU disabled) - if self.frame % 100 == 0 and not (self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC) and self.CP.openpilotLongitudinalControl: - # for longitudinal control, either radar or ADAS driving ECU - addr, bus = 0x7d0, self.CAN.ECAN if self.CP.flags & HyundaiFlags.CANFD else 0 - if self.CP.flags & HyundaiFlags.CANFD_HDA2.value: - addr, bus = 0x730, self.CAN.ECAN - can_sends.append(make_tester_present_msg(addr, bus, suppress_response=True)) - - # for blinkers - if self.CP.flags & HyundaiFlags.ENABLE_BLINKERS: - can_sends.append(make_tester_present_msg(0x7b1, self.CAN.ECAN, suppress_response=True)) - - camera_scc = self.CP.flags & HyundaiFlags.CAMERA_SCC - # CAN-FD platforms - if self.CP.flags & HyundaiFlags.CANFD: - hda2 = self.CP.flags & HyundaiFlags.CANFD_HDA2 - hda2_long = hda2 and self.CP.openpilotLongitudinalControl - - # steering control - if camera_scc: - can_sends.extend(hyundaicanfd.create_steering_messages_camera_scc(self.frame, self.packer, self.CP, self.CAN, CC, apply_steer_req, apply_torque, CS, apply_angle, self.lkas_max_torque, angle_control)) - else: - can_sends.extend(hyundaicanfd.create_steering_messages(self.packer, self.CP, self.CAN, CC.enabled, apply_steer_req, apply_torque, apply_angle, self.lkas_max_torque, angle_control)) - - # prevent LFA from activating on HDA2 by sending "no lane lines detected" to ADAS ECU - if self.frame % 5 == 0 and hda2 and not camera_scc: - can_sends.extend(hyundaicanfd.create_suppress_lfa(self.packer, self.CAN, CS)) - - # LFA and HDA icons - if self.frame % 5 == 0 and camera_scc: - can_sends.extend(hyundaicanfd.create_lfahda_cluster(self.packer, CS, self.CAN, CC.longActive, CC.latActive)) - - # blinkers - if hda2 and self.CP.flags & HyundaiFlags.ENABLE_BLINKERS: - can_sends.extend(hyundaicanfd.create_spas_messages(self.packer, self.CAN, self.frame, CC.leftBlinker, CC.rightBlinker)) - - if self.camera_scc_params in [2, 3]: - self.canfd_toggle_adas(CC, CS) - if self.CP.openpilotLongitudinalControl: - self.hyundai_jerk.make_jerk(self.CP, CS, accel, actuators, hud_control) - self.hyundai_jerk.check_carrot_cruise(CC, CS, hud_control, stopping, accel, actuators.aTarget) - - if True: #not camera_scc: - can_sends.extend(hyundaicanfd.create_ccnc_messages(self.CP, self.packer, self.CAN, self.frame, CC, CS, hud_control, apply_angle, left_lane_warning, right_lane_warning, self.enable_corner_radar)) - if hda2: - can_sends.extend(hyundaicanfd.create_adrv_messages(self.CP, self.packer, self.CAN, self.frame)) - else: - can_sends.extend(hyundaicanfd.create_fca_warning_light(self.CP, self.packer, self.CAN, self.frame)) - if self.frame % 2 == 0: - if self.CP.flags & HyundaiFlags.CAMERA_SCC.value: - can_sends.append(hyundaicanfd.create_acc_control_scc2(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override, - set_speed_in_units, hud_control, self.hyundai_jerk, CS)) - can_sends.extend(hyundaicanfd.create_tcs_messages(self.packer, self.CAN, CS)) # for sorento SCC radar... - else: - can_sends.append(hyundaicanfd.create_acc_control(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override, - set_speed_in_units, hud_control, self.hyundai_jerk.jerk_u, self.hyundai_jerk.jerk_l, CS)) - self.accel_last = accel - else: - # button presses - if self.camera_scc_params == 3: # camera scc but stock long - send_button = self.make_spam_button(CC, CS) - can_sends.extend(hyundaicanfd.forward_button_message(self.packer, self.CAN, self.frame, CS, send_button, self.MainMode_ACC_trigger, self.LFA_trigger)) - else: - can_sends.extend(self.create_button_messages(CC, CS, use_clu11=False)) - - else: - can_sends.append(hyundaican.create_lkas11(self.packer, self.frame, self.CP, apply_torque, apply_steer_req, - torque_fault, CS.lkas11, sys_warning, sys_state, CC.enabled, - hud_control.leftLaneVisible, hud_control.rightLaneVisible, - left_lane_warning, right_lane_warning, self.is_ldws_car)) - - if not self.CP.openpilotLongitudinalControl: - can_sends.extend(self.create_button_messages(CC, CS, use_clu11=True)) - if self.CP.carFingerprint in CAN_GEARS["send_mdps12"]: # send mdps12 to LKAS to prevent LKAS error - can_sends.append(hyundaican.create_mdps12(self.packer, self.frame, CS.mdps12)) - - casper_opt = self.CP.carFingerprint in (CAR.HYUNDAI_CASPER_EV) - if self.frame % 2 == 0 and self.CP.openpilotLongitudinalControl: - self.hyundai_jerk.make_jerk(self.CP, CS, accel, actuators, hud_control) - self.hyundai_jerk.check_carrot_cruise(CC, CS, hud_control, stopping, accel, actuators.aTarget) - #jerk = 3.0 if actuators.longControlState == LongCtrlState.pid else 1.0 - use_fca = self.CP.flags & HyundaiFlags.USE_FCA.value - if camera_scc: - - can_sends.extend(hyundaican.create_acc_commands_scc(self.packer, CC.enabled, accel, self.hyundai_jerk, int(self.frame / 2), - hud_control, set_speed_in_units, stopping, - CC.cruiseControl.override, casper_opt, CS, self.soft_hold_mode)) - else: - can_sends.extend(hyundaican.create_acc_commands(self.packer, CC.enabled, accel, self.hyundai_jerk, int(self.frame / 2), - hud_control, set_speed_in_units, stopping, - CC.cruiseControl.override, use_fca, self.CP, CS, self.soft_hold_mode)) - - - # 20 Hz LFA MFA message - if self.frame % 5 == 0 and self.CP.flags & HyundaiFlags.SEND_LFA.value: - can_sends.append(hyundaican.create_lfahda_mfc(self.packer, CC, self.blinking_signal)) - - # 5 Hz ACC options - if self.frame % 20 == 0 and self.CP.openpilotLongitudinalControl: - if camera_scc: - if CS.scc13 is not None: - if casper_opt: - #can_sends.append(hyundaican.create_acc_opt_copy(CS, self.packer)) - pass - pass - else: - can_sends.extend(hyundaican.create_acc_opt(self.packer, self.CP)) - - # 2 Hz front radar options - if self.frame % 50 == 0 and self.CP.openpilotLongitudinalControl and not camera_scc: - can_sends.append(hyundaican.create_frt_radar_opt(self.packer)) - - new_actuators = actuators.as_builder() - new_actuators.torque = apply_torque / self.params.STEER_MAX - new_actuators.torqueOutputCan = apply_torque - new_actuators.steeringAngleDeg = float(apply_angle) - new_actuators.accel = accel - - self.frame += 1 - return new_actuators, can_sends - - - def create_button_messages(self, CC: structs.CarControl, CS: CarState, use_clu11: bool): - can_sends = [] - if CS.out.brakePressed or CS.out.brakeHoldActive: - return can_sends - if use_clu11: - if CC.cruiseControl.cancel: - can_sends.append(hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.CANCEL, self.CP)) - elif False: #CC.cruiseControl.resume: - # send resume at a max freq of 10Hz - if (self.frame - self.last_button_frame) * DT_CTRL > 0.1: - # send 25 messages at a time to increases the likelihood of resume being accepted - can_sends.extend([hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.RES_ACCEL, self.CP)] * 25) - if (self.frame - self.last_button_frame) * DT_CTRL >= 0.15: - self.last_button_frame = self.frame - - if self.last_button_frame != self.frame: - send_button = self.make_spam_button(CC, CS) - if send_button > 0: - can_sends.append(hyundaican.create_clu11_button(self.packer, self.frame, CS.clu11, send_button, self.CP)) - - else: - - # carrot.. 왜 alt_cruise_button는 값이 리스트일까?, 그리고 왜? 빈데이터가 들어오는것일까? - if CS.cruise_buttons_msg is not None and self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: - try: - cruise_buttons_msg_values = {key: value[0] for key, value in CS.cruise_buttons_msg.items()} - except: # IndexError: - #print("IndexError....") - cruise_buttons_msg_values = None - self.cruise_buttons_msg_cnt += 1 - if cruise_buttons_msg_values is not None: - self.cruise_buttons_msg_values = cruise_buttons_msg_values - self.cruise_buttons_msg_cnt = 0 - - if (self.frame - self.last_button_frame) * DT_CTRL > 0.25: - # cruise cancel - if CC.cruiseControl.cancel: - if (self.frame - self.last_button_frame) * DT_CTRL > 0.1: - print("cruiseControl.cancel222222") - if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: - #can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) - if self.cruise_buttons_msg_values is not None: - can_sends.append(hyundaicanfd.alt_cruise_buttons(self.packer, self.CP, self.CAN, Buttons.CANCEL, self.cruise_buttons_msg_values, self.cruise_buttons_msg_cnt)) - - else: - for _ in range(20): - can_sends.append(hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL)) - self.last_button_frame = self.frame - - # cruise standstill resume - elif False: #CC.cruiseControl.resume: - if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: - # TODO: resume for alt button cars - pass - else: - for _ in range(20): - can_sends.append(hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.RES_ACCEL)) - self.last_button_frame = self.frame - - ## button 스패밍을 안했을때... - if self.last_button_frame != self.frame: - dat = self.canfd_speed_control_pcm(CC, CS, self.cruise_buttons_msg_values) - if dat is not None: - for _ in range(self.button_spam3): - can_sends.append(dat) - self.cruise_buttons_msg_cnt += 1 - - return can_sends - - def canfd_toggle_adas(self, CC, CS): - trigger_min = -200 - trigger_start = 6 - self.MainMode_ACC_trigger = max(trigger_min, self.MainMode_ACC_trigger - 1) - self.LFA_trigger = max(trigger_min, self.LFA_trigger - 1) - if self.MainMode_ACC_trigger == trigger_min and self.LFA_trigger == trigger_min: - if CC.enabled and not CS.MainMode_ACC and CS.out.vEgo > 3.: - self.MainMode_ACC_trigger = trigger_start - elif CC.latActive and CS.LFA_ICON == 0: - self.LFA_trigger = trigger_start - - def canfd_speed_control_pcm(self, CC, CS, cruise_buttons_msg_values): - - alt_buttons = True if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS else False - - if alt_buttons and cruise_buttons_msg_values is None: - return None - - send_button = self.make_spam_button(CC, CS) - if send_button > 0: - if alt_buttons: - return hyundaicanfd.alt_cruise_buttons(self.packer, self.CP, self.CAN, send_button, cruise_buttons_msg_values, self.cruise_buttons_msg_cnt) - else: - return hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, send_button) - - return None - - - def make_spam_button(self, CC, CS): - hud_control = CC.hudControl - set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - target = int(set_speed_in_units+0.5) - current = int(CS.out.cruiseState.speed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + 0.5) - v_ego_kph = CS.out.vEgo * CV.MS_TO_KPH - - send_button = 0 - activate_cruise = False - - if CC.enabled: - if not CS.out.cruiseState.enabled: - if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0: - send_button = Buttons.RES_ACCEL - self.activateCruise = 1 - activate_cruise = True - elif CC.cruiseControl.resume: - send_button = Buttons.RES_ACCEL - elif target < current and current>= 31 and self.speed_from_pcm != 1: - send_button = Buttons.SET_DECEL - elif target > current and current < 160 and self.speed_from_pcm != 1: - send_button = Buttons.RES_ACCEL - elif CS.out.activateCruise: #CC.cruiseControl.activate: - if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0: - self.activateCruise = 1 - send_button = Buttons.RES_ACCEL - activate_cruise = True - - if CS.out.brakePressed or CS.out.gasPressed: - self.activateCruise = 0 - - if send_button == 0: - self.button_spamming_count = 0 - self.prev_clu_speed = current - return 0 - - speed_diff = self.prev_clu_speed - current - spamming_max = self.button_spam1 - if CS.cruise_buttons[-1] != Buttons.NONE: - self.last_button_frame = self.frame - self.button_wait = self.button_spam2 - self.button_spamming_count = 0 - elif abs(self.button_spamming_count) >= spamming_max or abs(speed_diff) > 0: - self.last_button_frame = self.frame - self.button_wait = self.button_spam2 if abs(self.button_spamming_count) >= spamming_max else 7 - self.button_spamming_count = 0 - - self.prev_clu_speed = current - send_button_allowed = (self.frame - self.last_button_frame) > self.button_wait - #CC.debugTextCC = "{} speed_diff={:.1f},{:.0f}/{:.0f}, button={}, button_wait={}, count={}".format( - # send_button_allowed, speed_diff, target, current, send_button, self.button_wait, self.button_spamming_count) - - if send_button_allowed or activate_cruise or (CC.cruiseControl.resume and self.frame % 2 == 0): - self.button_spamming_count = self.button_spamming_count + 1 if send_button == Buttons.RES_ACCEL else self.button_spamming_count - 1 - return send_button - else: - self.button_spamming_count = 0 - return 0 - -from openpilot.common.filter_simple import MyMovingAverage -class HyundaiJerk: - def __init__(self): - self.params = Params() - self.jerk = 0.0 - self.jerk_u = self.jerk_l = 0.0 - self.cb_upper = self.cb_lower = 0.0 - self.jerk_u_min = 0.5 - self.carrot_cruise = 1 - self.carrot_cruise_accel = 0.0 - - def check_carrot_cruise(self, CC, CS, hud_control, stopping, accel, a_target): - carrot_cruise_decel = self.params.get_float("CarrotCruiseDecel") - carrot_cruise_atc_decel = self.params.get_float("CarrotCruiseAtcDecel") - if carrot_cruise_atc_decel >= 0 and 0 < hud_control.atcDistance < 500: - carrot_cruise_decel = max(carrot_cruise_decel, carrot_cruise_atc_decel) - self.carrot_cruise = 0 - if CS.out.carrotCruise > 0 and not CC.cruiseControl.override: - if CS.softHoldActive == 0 and not stopping: - if CS.out.vEgo > 10/3.6: - if carrot_cruise_decel < 0: - if (a_target > -0.1 or accel > -0.1): - self.carrot_cruise = 1 - self.carrot_cruise_accel = 0.0 - else: - self.carrot_cruise = 2 - carrot_cruise = min(accel, -carrot_cruise_decel * 0.01) - self.carrot_cruise_accel = max(carrot_cruise, self.carrot_cruise_accel - 1.0 * DT_CTRL) # 점진적으로 줄임. - if self.carrot_cruise == 0: - self.carrot_cruise_accel = CS.out.aEgo - - def make_jerk(self, CP, CS, accel, actuators, hud_control): - if actuators.longControlState == LongCtrlState.stopping: - self.jerk = self.jerk_u_min / 2 - CS.out.aEgo - else: - jerk = actuators.jerk if actuators.longControlState == LongCtrlState.pid else 0.0 - #a_error = actuators.aTarget - CS.out.aEgo - self.jerk = jerk# + a_error - - jerk_max_l = 5.0 - jerk_max_u = jerk_max_l - if actuators.longControlState == LongCtrlState.off: - self.jerk_u = jerk_max_u - self.jerk_l = jerk_max_l - self.cb_upper = self.cb_lower = 0.0 - else: - if CP.flags & HyundaiFlags.CANFD: - self.jerk_u = min(max(self.jerk_u_min, self.jerk * 2.0), jerk_max_u) - self.jerk_l = min(max(1.0, -self.jerk * 4.0), jerk_max_l) - self.cb_upper = self.cb_lower = 0.0 - else: - self.jerk_u = min(max(self.jerk_u_min, self.jerk * 2.0), jerk_max_u) - self.jerk_l = min(max(1.0, -self.jerk * 2.0), jerk_max_l) - self.cb_upper = np.clip(0.9 + accel * 0.2, 0, 1.2) - self.cb_lower = np.clip(0.8 + accel * 0.2, 0, 1.2) - diff --git a/opendbc_repo/opendbc/car/hyundai/carstate.py b/opendbc_repo/opendbc/car/hyundai/carstate.py deleted file mode 100644 index 7785201e53..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/carstate.py +++ /dev/null @@ -1,694 +0,0 @@ -from collections import deque -import copy -import math -import numpy as np -import ast - -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, create_button_events, structs, DT_CTRL -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.hyundai.hyundaicanfd import CanBus -from opendbc.car.hyundai.values import HyundaiFlags, CAR, DBC, Buttons, CarControllerParams, CAMERA_SCC_CAR, HyundaiExtFlags -from opendbc.car.interfaces import CarStateBase - -from openpilot.common.params import Params - -from datetime import datetime -from zoneinfo import ZoneInfo - - -ButtonType = structs.CarState.ButtonEvent.Type - -PREV_BUTTON_SAMPLES = 8 -CLUSTER_SAMPLE_RATE = 20 # frames -STANDSTILL_THRESHOLD = 12 * 0.03125 * CV.KPH_TO_MS - -BUTTONS_DICT = {Buttons.RES_ACCEL: ButtonType.accelCruise, Buttons.SET_DECEL: ButtonType.decelCruise, - Buttons.GAP_DIST: ButtonType.gapAdjustCruise, Buttons.CANCEL: ButtonType.cancel, Buttons.LFA_BUTTON: ButtonType.lfaButton} - -GearShifter = structs.CarState.GearShifter - - -NUMERIC_TO_TZ = { - 840: "America/New_York", # 미국 (US) → 동부 시간대 - 124: "America/Toronto", # 캐나다 (CA) → 동부 시간대 - 250: "Europe/Paris", # 프랑스 (FR) - 276: "Europe/Berlin", # 독일 (DE) - 826: "Europe/London", # 영국 (GB) - 392: "Asia/Tokyo", # 일본 (JP) - 156: "Asia/Shanghai", # 중국 (CN) - 410: "Asia/Seoul", # 한국 (KR) - 36: "Australia/Sydney", # 호주 (AU) - 356: "Asia/Kolkata", # 인도 (IN) -} - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - - self.cruise_buttons: deque = deque([Buttons.NONE] * PREV_BUTTON_SAMPLES, maxlen=PREV_BUTTON_SAMPLES) - self.main_buttons: deque = deque([Buttons.NONE] * PREV_BUTTON_SAMPLES, maxlen=PREV_BUTTON_SAMPLES) - - self.gear_msg_canfd = "GEAR" if CP.extFlags & HyundaiExtFlags.CANFD_GEARS_69 else \ - "ACCELERATOR" if CP.flags & HyundaiFlags.EV else \ - "GEAR_ALT" if CP.flags & HyundaiFlags.CANFD_ALT_GEARS else \ - "GEAR_ALT_2" if CP.flags & HyundaiFlags.CANFD_ALT_GEARS_2 else \ - "GEAR_SHIFTER" - if CP.flags & HyundaiFlags.CANFD: - self.shifter_values = can_define.dv[self.gear_msg_canfd]["GEAR"] - elif CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV): - self.shifter_values = can_define.dv["ELECT_GEAR"]["Elect_Gear_Shifter"] - elif self.CP.flags & HyundaiFlags.CLUSTER_GEARS: - self.shifter_values = can_define.dv["CLU15"]["CF_Clu_Gear"] - elif self.CP.flags & HyundaiFlags.TCU_GEARS: - self.shifter_values = can_define.dv["TCU12"]["CUR_GR"] - elif CP.flags & HyundaiFlags.FCEV: - self.shifter_values = can_define.dv["EMS20"]["HYDROGEN_GEAR_SHIFTER"] - else: - self.shifter_values = can_define.dv["LVR12"]["CF_Lvr_Gear"] - - self.accelerator_msg_canfd = "ACCELERATOR" if CP.flags & HyundaiFlags.EV else \ - "ACCELERATOR_ALT" if CP.flags & HyundaiFlags.HYBRID else \ - "ACCELERATOR_BRAKE_ALT" - self.cruise_btns_msg_canfd = "CRUISE_BUTTONS_ALT" if CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS else \ - "CRUISE_BUTTONS" - self.is_metric = False - self.buttons_counter = 0 - - self.cruise_info = {} - self.lfa_info = {} - self.lfa_alt_info = {} - self.lfahda_cluster_info = None - self.adrv_info_161 = None - self.adrv_info_200 = None - self.adrv_info_1ea = None - self.adrv_info_160 = None - self.adrv_info_162 = None - self.hda_info_4a3 = None - self.new_msg_4b4 = None - self.tcs_info_373 = None - self.mdps_info = {} - self.steer_touch_info = {} - - self.cruise_buttons_msg = None - self.msg_0x362 = None - self.msg_0x2a4 = None - - # On some cars, CLU15->CF_Clu_VehicleSpeed can oscillate faster than the dash updates. Sample at 5 Hz - self.cluster_speed = 0 - self.cluster_speed_counter = CLUSTER_SAMPLE_RATE - - self.params = CarControllerParams(CP) - - self.main_enabled = True if Params().get_int("AutoEngage") == 2 else False - self.gear_shifter = GearShifter.drive # Gear_init for Nexo ?? unknown 21.02.23.LSW - - self.totalDistance = 0.0 - self.speedLimitDistance = 0 - self.pcmCruiseGap = 0 - - self.cruise_buttons_alt = True if self.CP.carFingerprint in (CAR.HYUNDAI_CASPER, CAR.HYUNDAI_CASPER_EV) else False - self.MainMode_ACC = False - self.ACCMode = 0 - self.LFA_ICON = 0 - self.paddle_button_prev = 0 - - self.lf_distance = 0 - self.rf_distance = 0 - self.lr_distance = 0 - self.rr_distance = 0 - #self.lf_lateral = 0 - #self.rf_lateral = 0 - - fingerprints_str = Params().get("FingerPrints") - fingerprints = ast.literal_eval(fingerprints_str) - #print("fingerprints =", fingerprints) - ecu_disabled = False - if self.CP.openpilotLongitudinalControl and not (self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC): - ecu_disabled = True - - if ecu_disabled: - self.SCC11 = self.SCC12 = self.SCC13 = self.SCC14 = self.FCA11 = False - else: - bus_cruise = 2 if self.CP.flags & HyundaiFlags.CAMERA_SCC else 0 - self.SCC11 = True if 1056 in fingerprints[bus_cruise] else False - self.SCC12 = True if 1057 in fingerprints[bus_cruise] else False - self.SCC13 = True if 1290 in fingerprints[bus_cruise] else False - self.SCC14 = True if 905 in fingerprints[bus_cruise] else False - self.FCA11 = False - self.FCA11_bus = Bus.cam - - self.HAS_LFA_BUTTON = True if 913 in fingerprints[0] else False - self.CRUISE_BUTTON_ALT = True if 1007 in fingerprints[0] else False - - cam_bus = CanBus(CP).CAM - pt_bus = CanBus(CP).ECAN - alt_bus = CanBus(CP).ACAN - self.CCNC_0x161 = True if 0x161 in fingerprints[cam_bus] else False - self.CCNC_0x162 = True if 0x162 in fingerprints[cam_bus] else False - self.ADRV_0x200 = True if 0x200 in fingerprints[cam_bus] else False - self.ADRV_0x1ea = True if 0x1ea in fingerprints[cam_bus] else False - self.ADRV_0x160 = True if 0x160 in fingerprints[cam_bus] else False - self.LFAHDA_CLUSTER = True if 480 in fingerprints[cam_bus] else False - self.HDA_INFO_4A3 = True if 0x4a3 in fingerprints[pt_bus] else False - self.NEW_MSG_4B4 = True if 0x4b4 in fingerprints[pt_bus] else False - self.GEAR = True if 69 in fingerprints[pt_bus] else False - self.GEAR_ALT = True if 64 in fingerprints[pt_bus] else False - self.CAM_0x362 = True if 0x362 in fingerprints[alt_bus] else False - self.CAM_0x2a4 = True if 0x2a4 in fingerprints[alt_bus] else False - self.STEER_TOUCH_2AF = True if 0x2af in fingerprints[pt_bus] else False - self.TPMS = True if 0x3a0 in fingerprints[pt_bus] else False - self.LOCAL_TIME = True if 1264 in fingerprints[pt_bus] else False - - self.cp_bsm = None - self.time_zone = "UTC" - - self.controls_ready_count = 0 - - def update(self, can_parsers) -> structs.CarState: - - if self.controls_ready_count <= 200: - if Params().get_bool("ControlsReady"): - self.controls_ready_count += 1 - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - cp_alt = can_parsers[Bus.alt] if Bus.alt in can_parsers else None - if self.controls_ready_count == 50: - cp.controls_ready = cp_cam.controls_ready = True - if cp_alt is not None: - cp_alt.controls_ready = True - elif self.controls_ready_count == 100: - print("cp_cam.seen_addresses =", cp_cam.seen_addresses) - print("cp.seen_addresses =", cp.seen_addresses) - if 909 in cp_cam.seen_addresses: - self.FCA11 = True - self.FCA11_bus = Bus.cam - elif 909 in cp.seen_addresses: - self.FCA11 = True - self.FCA11_bus = Bus.pt - if cp_alt is not None: - print("cp_alt.seen_addresses =", cp_alt.seen_addresses) - - if self.CP.flags & HyundaiFlags.CANFD: - return self.update_canfd(can_parsers) - - ret = structs.CarState() - cp_cruise = cp_cam if self.CP.flags & HyundaiFlags.CAMERA_SCC else cp - self.is_metric = cp.vl["CLU11"]["CF_Clu_SPEED_UNIT"] == 0 - speed_conv = CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS - - ret.doorOpen = any([cp.vl["CGW1"]["CF_Gway_DrvDrSw"], cp.vl["CGW1"]["CF_Gway_AstDrSw"], - cp.vl["CGW2"]["CF_Gway_RLDrSw"], cp.vl["CGW2"]["CF_Gway_RRDrSw"]]) - - ret.seatbeltUnlatched = cp.vl["CGW1"]["CF_Gway_DrvSeatBeltSw"] == 0 - - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["WHL_SPD11"]["WHL_SPD_FL"], - cp.vl["WHL_SPD11"]["WHL_SPD_FR"], - cp.vl["WHL_SPD11"]["WHL_SPD_RL"], - cp.vl["WHL_SPD11"]["WHL_SPD_RR"], - ) - ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = ret.wheelSpeeds.fl <= STANDSTILL_THRESHOLD and ret.wheelSpeeds.rr <= STANDSTILL_THRESHOLD - - self.cluster_speed_counter += 1 - if self.cluster_speed_counter > CLUSTER_SAMPLE_RATE: - self.cluster_speed = cp.vl["CLU15"]["CF_Clu_VehicleSpeed"] - self.cluster_speed_counter = 0 - - # Mimic how dash converts to imperial. - # Sorento is the only platform where CF_Clu_VehicleSpeed is already imperial when not is_metric - # TODO: CGW_USM1->CF_Gway_DrLockSoundRValue may describe this - if not self.is_metric and self.CP.carFingerprint not in (CAR.KIA_SORENTO,): - self.cluster_speed = math.floor(self.cluster_speed * CV.KPH_TO_MPH + CV.KPH_TO_MPH) - - #ret.vEgoCluster = self.cluster_speed * speed_conv - - ret.steeringAngleDeg = cp.vl["SAS11"]["SAS_Angle"] - ret.steeringRateDeg = cp.vl["SAS11"]["SAS_Speed"] - ret.yawRate = cp.vl["ESP12"]["YAW_RATE"] - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp( - 50, cp.vl["CGW1"]["CF_Gway_TurnSigLh"], cp.vl["CGW1"]["CF_Gway_TurnSigRh"]) - ret.steeringTorque = cp.vl["MDPS12"]["CR_Mdps_StrColTq"] - ret.steeringTorqueEps = cp.vl["MDPS12"]["CR_Mdps_OutTq"] - ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > self.params.STEER_THRESHOLD, 5) - ret.steerFaultTemporary = cp.vl["MDPS12"]["CF_Mdps_ToiUnavail"] != 0 or cp.vl["MDPS12"]["CF_Mdps_ToiFlt"] != 0 - - # cruise state - if self.CP.openpilotLongitudinalControl: - # These are not used for engage/disengage since openpilot keeps track of state using the buttons - ret.cruiseState.available = self.main_enabled #cp.vl["TCS13"]["ACCEnable"] == 0 - ret.cruiseState.enabled = cp.vl["TCS13"]["ACC_REQ"] == 1 - ret.cruiseState.standstill = False - ret.cruiseState.nonAdaptive = False - elif not self.CP.flags & HyundaiFlags.CC_ONLY_CAR: - self.main_enabled = ret.cruiseState.available = cp_cruise.vl["SCC11"]["MainMode_ACC"] == 1 - ret.cruiseState.enabled = cp_cruise.vl["SCC12"]["ACCMode"] != 0 - ret.cruiseState.standstill = cp_cruise.vl["SCC11"]["SCCInfoDisplay"] == 4. - ret.cruiseState.nonAdaptive = cp_cruise.vl["SCC11"]["SCCInfoDisplay"] == 2. # Shows 'Cruise Control' on dash - ret.cruiseState.speed = cp_cruise.vl["SCC11"]["VSetDis"] * speed_conv - - ret.pcmCruiseGap = cp_cruise.vl["SCC11"]["TauGapSet"] - - # TODO: Find brake pressure - ret.brake = 0 - if not self.CP.flags & HyundaiFlags.CC_ONLY_CAR: - ret.brakePressed = cp.vl["TCS13"]["DriverOverride"] == 2 # 2 includes regen braking by user on HEV/EV - ret.brakeHoldActive = cp.vl["TCS15"]["AVH_LAMP"] == 2 # 0 OFF, 1 ERROR, 2 ACTIVE, 3 READY - ret.parkingBrake = cp.vl["TCS13"]["PBRAKE_ACT"] == 1 - ret.espDisabled = cp.vl["TCS11"]["TCS_PAS"] == 1 - ret.espActive = cp.vl["TCS11"]["ABS_ACT"] == 1 - ret.accFaulted = cp.vl["TCS13"]["ACCEnable"] != 0 # 0 ACC CONTROL ENABLED, 1-3 ACC CONTROL DISABLED - ret.brakeLights = bool(cp.vl["TCS13"]["BrakeLight"] or ret.brakePressed) - - if self.CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV | HyundaiFlags.FCEV): - if self.CP.flags & HyundaiFlags.FCEV: - ret.gas = cp.vl["FCEV_ACCELERATOR"]["ACCELERATOR_PEDAL"] / 254. - elif self.CP.flags & HyundaiFlags.HYBRID: - ret.gas = cp.vl["E_EMS11"]["CR_Vcu_AccPedDep_Pos"] / 254. - else: - ret.gas = cp.vl["E_EMS11"]["Accel_Pedal_Pos"] / 254. - ret.gasPressed = ret.gas > 0 - else: - ret.gas = cp.vl["EMS12"]["PV_AV_CAN"] / 100. - ret.gasPressed = bool(cp.vl["EMS16"]["CF_Ems_AclAct"]) - - # Gear Selection via Cluster - For those Kia/Hyundai which are not fully discovered, we can use the Cluster Indicator for Gear Selection, - # as this seems to be standard over all cars, but is not the preferred method. - if self.CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV): - gear = cp.vl["ELECT_GEAR"]["Elect_Gear_Shifter"] - ret.gearStep = cp.vl["ELECT_GEAR"]["Elect_Gear_Step"] - elif self.CP.flags & HyundaiFlags.FCEV: - gear = cp.vl["EMS20"]["HYDROGEN_GEAR_SHIFTER"] - elif self.CP.flags & HyundaiFlags.CLUSTER_GEARS: - gear = cp.vl["CLU15"]["CF_Clu_Gear"] - elif self.CP.flags & HyundaiFlags.TCU_GEARS: - gear = cp.vl["TCU12"]["CUR_GR"] - else: - gear = cp.vl["LVR12"]["CF_Lvr_Gear"] - ret.gearStep = cp.vl["LVR11"]["CF_Lvr_GearInf"] - - if not self.CP.carFingerprint in (CAR.HYUNDAI_NEXO): - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear)) - else: - gear = cp.vl["ELECT_GEAR"]["Elect_Gear_Shifter"] - gear_disp = cp.vl["ELECT_GEAR"] - - gear_shifter = GearShifter.unknown - - if gear == 1546: # Thank you for Neokii # fix PolorBear 22.06.05 - gear_shifter = GearShifter.drive - elif gear == 2314: - gear_shifter = GearShifter.neutral - elif gear == 2569: - gear_shifter = GearShifter.park - elif gear == 2566: - gear_shifter = GearShifter.reverse - - if gear_shifter != GearShifter.unknown and self.gear_shifter != gear_shifter: - self.gear_shifter = gear_shifter - - ret.gearShifter = self.gear_shifter - - if not self.CP.flags & HyundaiFlags.CC_ONLY_CAR and (not self.CP.openpilotLongitudinalControl or self.CP.flags & HyundaiFlags.CAMERA_SCC): - aeb_src = "FCA11" if self.CP.flags & HyundaiFlags.USE_FCA.value else "SCC12" - aeb_sig = "FCA_CmdAct" if self.CP.flags & HyundaiFlags.USE_FCA.value else "AEB_CmdAct" - aeb_warning = cp_cruise.vl[aeb_src]["CF_VSM_Warn"] != 0 - scc_warning = cp_cruise.vl["SCC12"]["TakeOverReq"] == 1 # sometimes only SCC system shows an FCW - aeb_braking = cp_cruise.vl[aeb_src]["CF_VSM_DecCmdAct"] != 0 or cp_cruise.vl[aeb_src][aeb_sig] != 0 - ret.stockFcw = (aeb_warning or scc_warning) and not aeb_braking - ret.stockAeb = aeb_warning and aeb_braking - - if self.CP.enableBsm: - ret.leftBlindspot = cp.vl["LCA11"]["CF_Lca_IndLeft"] != 0 - ret.rightBlindspot = cp.vl["LCA11"]["CF_Lca_IndRight"] != 0 - - # save the entire LKAS11 and CLU11 - self.lkas11 = copy.copy(cp_cam.vl["LKAS11"]) - self.clu11 = copy.copy(cp.vl["CLU11"]) - self.steer_state = cp.vl["MDPS12"]["CF_Mdps_ToiActive"] # 0 NOT ACTIVE, 1 ACTIVE - prev_cruise_buttons = self.cruise_buttons[-1] - #self.cruise_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"]) - #carrot {{ - #if self.CRUISE_BUTTON_ALT and cp.vl["CRUISE_BUTTON_ALT"]["SET_ME_1"] == 1: - # self.cruise_buttons_alt = True - - cruise_button = [Buttons.NONE] - if self.cruise_buttons_alt: - lfa_button = cp.vl["CRUISE_BUTTON_LFA"]["CruiseSwLfa"] - cruise_button = [Buttons.LFA_BUTTON] if lfa_button > 0 else [cp.vl["CRUISE_BUTTON_ALT"]["CruiseSwState"]] - elif self.HAS_LFA_BUTTON and cp.vl["BCM_PO_11"]["LFA_Pressed"] == 1: # for K5 - cruise_button = [Buttons.LFA_BUTTON] - else: - cruise_button = cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"] - self.cruise_buttons.extend(cruise_button) - # }} carrot - prev_main_buttons = self.main_buttons[-1] - #self.cruise_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"]) - if self.cruise_buttons_alt: - self.main_buttons.extend(cp.vl_all["CRUISE_BUTTON_ALT"]["CruiseSwMain"]) - else: - self.main_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwMain"]) - self.mdps12 = copy.copy(cp.vl["MDPS12"]) - - ret.buttonEvents = [*create_button_events(self.cruise_buttons[-1], prev_cruise_buttons, BUTTONS_DICT), - *create_button_events(self.main_buttons[-1], prev_main_buttons, {1: ButtonType.mainCruise})] - - - if not self.CP.flags & HyundaiFlags.CC_ONLY_CAR: - tpms_unit = cp.vl["TPMS11"]["UNIT"] * 0.725 if int(cp.vl["TPMS11"]["UNIT"]) > 0 else 1. - ret.tpms.fl = tpms_unit * cp.vl["TPMS11"]["PRESSURE_FL"] - ret.tpms.fr = tpms_unit * cp.vl["TPMS11"]["PRESSURE_FR"] - ret.tpms.rl = tpms_unit * cp.vl["TPMS11"]["PRESSURE_RL"] - ret.tpms.rr = tpms_unit * cp.vl["TPMS11"]["PRESSURE_RR"] - - self.scc11 = cp_cruise.vl["SCC11"] if self.SCC11 else None - self.scc12 = cp_cruise.vl["SCC12"] if self.SCC12 else None - self.scc13 = cp_cruise.vl["SCC13"] if self.SCC13 else None - self.scc14 = cp_cruise.vl["SCC14"] if self.SCC14 else None - self.fca11 = can_parsers[self.FCA11_bus].vl["FCA11"] if self.FCA11 else None - cluSpeed = cp.vl["CLU11"]["CF_Clu_Vanz"] - decimal = cp.vl["CLU11"]["CF_Clu_VanzDecimal"] - if 0. < decimal < 0.5: - cluSpeed += decimal - - ret.vEgoCluster = cluSpeed * speed_conv - vEgoClu, aEgoClu = self.update_clu_speed_kf(ret.vEgoCluster) - ret.vCluRatio = (ret.vEgo / vEgoClu) if (vEgoClu > 3. and ret.vEgo > 3.) else 1.0 - - if self.CP.extFlags & HyundaiExtFlags.NAVI_CLUSTER.value: - speedLimit = cp.vl["Navi_HU"]["SpeedLim_Nav_Clu"] - speedLimitCam = cp.vl["Navi_HU"]["SpeedLim_Nav_Cam"] - ret.speedLimit = speedLimit if speedLimit < 255 and speedLimitCam == 1 else 0 - speed_limit_cam = speedLimitCam == 1 - else: - ret.speedLimit = 0 - ret.speedLimitDistance = 0 - speed_limit_cam = False - - self.update_speed_limit(ret, speed_limit_cam) - - if prev_main_buttons == 0 and self.main_buttons[-1] != 0: - self.main_enabled = not self.main_enabled - - return ret - - def update_speed_limit(self, ret, speed_limit_cam): - self.totalDistance += ret.vEgo * DT_CTRL - if ret.speedLimit > 0 and not ret.gasPressed and speed_limit_cam: - if self.speedLimitDistance <= self.totalDistance: - self.speedLimitDistance = self.totalDistance + ret.speedLimit * 6 - self.speedLimitDistance = max(self.totalDistance + 1, self.speedLimitDistance) - else: - self.speedLimitDistance = self.totalDistance - ret.speedLimitDistance = self.speedLimitDistance - self.totalDistance - - def update_canfd(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - cp_alt = can_parsers[Bus.alt] if Bus.alt in can_parsers else None - - ret = structs.CarState() - - self.is_metric = cp.vl["CRUISE_BUTTONS_ALT"]["DISTANCE_UNIT"] != 1 - speed_factor = CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS - - if self.CP.flags & (HyundaiFlags.EV | HyundaiFlags.HYBRID): - offset = 255. if self.CP.flags & HyundaiFlags.EV else 1023. - ret.gas = cp.vl[self.accelerator_msg_canfd]["ACCELERATOR_PEDAL"] / offset - ret.gasPressed = ret.gas > 1e-5 - else: - ret.gasPressed = bool(cp.vl[self.accelerator_msg_canfd]["ACCELERATOR_PEDAL_PRESSED"]) - - ret.brakePressed = cp.vl["TCS"]["DriverBraking"] == 1 - #print(cp.vl["TCS"], cp.vl_all["TCS"]["DriverBraking"][-10:]) - - ret.doorOpen = cp.vl["DOORS_SEATBELTS"]["DRIVER_DOOR"] == 1 - ret.seatbeltUnlatched = cp.vl["DOORS_SEATBELTS"]["DRIVER_SEATBELT"] == 0 - - gear = cp.vl[self.gear_msg_canfd]["GEAR"] - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear)) - - if self.TPMS: - tpms_unit = cp.vl["TPMS"]["UNIT"] * 0.725 if int(cp.vl["TPMS"]["UNIT"]) > 0 else 1. - ret.tpms.fl = tpms_unit * cp.vl["TPMS"]["PRESSURE_FL"] - ret.tpms.fr = tpms_unit * cp.vl["TPMS"]["PRESSURE_FR"] - ret.tpms.rl = tpms_unit * cp.vl["TPMS"]["PRESSURE_RL"] - ret.tpms.rr = tpms_unit * cp.vl["TPMS"]["PRESSURE_RR"] - - # TODO: figure out positions - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_1"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_2"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_3"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_4"], - ) - ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = ret.wheelSpeeds.fl <= STANDSTILL_THRESHOLD and ret.wheelSpeeds.rr <= STANDSTILL_THRESHOLD - - ret.brakeLights = ret.brakePressed or cp.vl["TCS"]["BrakeLight"] == 1 - - ret.steeringRateDeg = cp.vl["STEERING_SENSORS"]["STEERING_RATE"] - - # steering angle deg값이 이상함. mdps값이 더 신뢰가 가는듯.. torque steering 차량도 확인해야함. - #ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEERING_ANGLE"] * -1 - if self.CP.flags & HyundaiFlags.ANGLE_CONTROL: - ret.steeringAngleDeg = cp.vl["MDPS"]["STEERING_ANGLE_2"] * -1 - else: - ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEERING_ANGLE"] * -1 - - 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) - ret.steerFaultTemporary = cp.vl["MDPS"]["LKA_FAULT"] != 0 or cp.vl["MDPS"]["LFA2_FAULT"] != 0 - #ret.steerFaultTemporary = False - - self.mdps_info = copy.copy(cp.vl["MDPS"]) - if self.STEER_TOUCH_2AF: - self.steer_touch_info = cp.vl["STEER_TOUCH_2AF"] - - blinkers_info = cp.vl["BLINKERS"] - left_blinker_lamp = blinkers_info["LEFT_LAMP"] or blinkers_info["LEFT_LAMP_ALT"] - right_blinker_lamp = blinkers_info["RIGHT_LAMP"] or blinkers_info["RIGHT_LAMP_ALT"] - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, left_blinker_lamp, right_blinker_lamp) - - if self.CP.enableBsm: - if self.cp_bsm is None: - if 442 in cp.seen_addresses: - self.cp_bsm = cp - print("######## BSM in ECAN") - elif 442 in cp_cam.seen_addresses: - self.cp_bsm = cp_cam - print("######## BSM in CAM") - else: - bsm_info = self.cp_bsm.vl["BLINDSPOTS_REAR_CORNERS"] - ret.leftBlindspot = (bsm_info["FL_INDICATOR"] + bsm_info["INDICATOR_LEFT_TWO"] + bsm_info["INDICATOR_LEFT_FOUR"]) > 0 - ret.rightBlindspot = (bsm_info["FR_INDICATOR"] + bsm_info["INDICATOR_RIGHT_TWO"] + bsm_info["INDICATOR_RIGHT_FOUR"]) > 0 - - # cruise state - if cp.vl[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"] in [Buttons.RES_ACCEL, Buttons.SET_DECEL] and self.CP.openpilotLongitudinalControl: - self.main_enabled = True - # CAN FD cars enable on main button press, set available if no TCS faults preventing engagement - ret.cruiseState.available = self.main_enabled #cp.vl["TCS"]["ACCEnable"] == 0 - if self.CP.flags & HyundaiFlags.CAMERA_SCC.value: - 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 - ret.cruiseState.standstill = False - if self.MainMode_ACC: - self.main_enabled = True - else: - cp_cruise_info = cp_cam if self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC else cp - ret.cruiseState.enabled = cp_cruise_info.vl["SCC_CONTROL"]["ACCMode"] in (1, 2) - if cp_cruise_info.vl["SCC_CONTROL"]["MainMode_ACC"] == 1: # carrot - ret.cruiseState.available = self.main_enabled = True - ret.pcmCruiseGap = int(np.clip(cp_cruise_info.vl["SCC_CONTROL"]["DISTANCE_SETTING"], 1, 4)) - ret.cruiseState.standstill = cp_cruise_info.vl["SCC_CONTROL"]["InfoDisplay"] >= 4 - ret.cruiseState.speed = cp_cruise_info.vl["SCC_CONTROL"]["VSetDis"] * speed_factor - self.cruise_info = copy.copy(cp_cruise_info.vl["SCC_CONTROL"]) - ret.brakeHoldActive = cp.vl["ESP_STATUS"]["AUTO_HOLD"] == 1 and cp_cruise_info.vl["SCC_CONTROL"]["ACCMode"] not in (1, 2) - - speed_limit_cam = False - if self.CP.flags & HyundaiFlags.CAMERA_SCC.value: - self.cruise_info = copy.copy(cp_cam.vl["SCC_CONTROL"]) - self.lfa_info = copy.copy(cp_cam.vl["LFA"]) - if self.CP.flags & HyundaiFlags.ANGLE_CONTROL.value: - self.lfa_alt_info = copy.copy(cp_cam.vl["LFA_ALT"]) - - if self.LFAHDA_CLUSTER: - self.lfahda_cluster_info = cp_cam.vl["LFAHDA_CLUSTER"] - - corner = False - self.adrv_info_161 = cp_cam.vl["ADRV_0x161"] if self.CCNC_0x161 else None - self.adrv_info_162 = cp_cam.vl["CCNC_0x162"] if self.CCNC_0x162 else None - if self.adrv_info_161 is not None: - ret.leftLongDist = self.lf_distance = self.adrv_info_162["LF_DETECT_DISTANCE"] - ret.rightLongDist = self.rf_distance = self.adrv_info_162["RF_DETECT_DISTANCE"] - self.lr_distance = self.adrv_info_162["LR_DETECT_DISTANCE"] - self.rr_distance = self.adrv_info_162["RR_DETECT_DISTANCE"] - ret.leftLatDist = self.adrv_info_162["LF_DETECT_LATERAL"] - ret.rightLatDist = self.adrv_info_162["RF_DETECT_LATERAL"] - corner = True - self.adrv_info_200 = cp_cam.vl["ADRV_0x200"] if self.ADRV_0x200 else None - self.adrv_info_1ea = cp_cam.vl["ADRV_0x1ea"] if self.ADRV_0x1ea else None - if self.adrv_info_1ea is not None: - if not corner: - ret.leftLongDist = self.adrv_info_1ea["LF_DETECT_DISTANCE"] - ret.rightLongDist = self.adrv_info_1ea["RF_DETECT_DISTANCE"] - self.lr_distance = self.adrv_info_1ea["LR_DETECT_DISTANCE"] - self.rr_distance = self.adrv_info_1ea["RR_DETECT_DISTANCE"] - ret.leftLatDist = self.adrv_info_1ea["LF_DETECT_LATERAL"] - ret.rightLatDist = self.adrv_info_1ea["RF_DETECT_LATERAL"] - corner = True - if corner: - left_block = True if 0 < ret.leftLongDist < 7.0 or 0 < self.lr_distance < 7.0 else False - right_block = True if 0 < ret.rightLongDist < 7.0 or 0 < self.rr_distance < 7.0 else False - if left_block: - ret.leftBlindspot = True - if right_block: - ret.rightBlindspot = True - - self.adrv_info_160 = cp_cam.vl["ADRV_0x160"] if self.ADRV_0x160 else None - - self.hda_info_4a3 = cp.vl["HDA_INFO_4A3"] if self.HDA_INFO_4A3 else None - if self.hda_info_4a3 is not None: - speedLimit = self.hda_info_4a3["SPEED_LIMIT"] - if not self.is_metric: - speedLimit *= CV.MPH_TO_KPH - ret.speedLimit = speedLimit if speedLimit < 255 else 0 - if int(self.hda_info_4a3["MapSource"]) == 2: - speed_limit_cam = True - - if self.time_zone == "UTC": - country_code = int(self.hda_info_4a3["CountryCode"]) - self.time_zone = ZoneInfo(NUMERIC_TO_TZ.get(country_code, "UTC")) - - self.new_msg_4b4 = cp.vl["NEW_MSG_4B4"] if self.NEW_MSG_4B4 else None - self.tcs_info_373 = cp.vl["TCS"] - - ret.gearStep = cp.vl["GEAR"]["GEAR_STEP"] if self.GEAR else 0 - if 1 <= ret.gearStep <= 8 and ret.gearShifter == GearShifter.unknown: - ret.gearShifter = GearShifter.drive - ret.gearStep = cp.vl["GEAR_ALT"]["GEAR_STEP"] if self.GEAR_ALT else ret.gearStep - - if cp_alt and self.CP.flags & HyundaiFlags.CAMERA_SCC: - lane_info = None - lane_info = cp_alt.vl["CAM_0x362"] if self.CAM_0x362 else None - lane_info = cp_alt.vl["CAM_0x2a4"] if self.CAM_0x2a4 else lane_info - - if lane_info is not None: - left_lane_prob = lane_info["LEFT_LANE_PROB"] - right_lane_prob = lane_info["RIGHT_LANE_PROB"] - left_lane_type = lane_info["LEFT_LANE_TYPE"] # 0: dashed, 1: solid, 2: undecided, 3: road edge, 4: DLM Inner Solid, 5: DLM InnerDashed, 6:DLM Inner Undecided, 7: Botts Dots, 8: Barrier - right_lane_type = lane_info["RIGHT_LANE_TYPE"] - left_lane_color = lane_info["LEFT_LANE_COLOR"] - right_lane_color = lane_info["RIGHT_LANE_COLOR"] - left_lane_info = left_lane_color * 10 + left_lane_type - right_lane_info = right_lane_color * 10 + right_lane_type - ret.leftLaneLine = left_lane_info - ret.rightLaneLine = right_lane_info - - # Manual Speed Limit Assist is a feature that replaces non-adaptive cruise control on EV CAN FD platforms. - # It limits the vehicle speed, overridable by pressing the accelerator past a certain point. - # The car will brake, but does not respect positive acceleration commands in this mode - # TODO: find this message on ICE & HYBRID cars + cruise control signals (if exists) - if self.CP.flags & HyundaiFlags.EV: - ret.cruiseState.nonAdaptive = cp.vl["MANUAL_SPEED_LIMIT_ASSIST"]["MSLA_ENABLED"] == 1 - - if self.LOCAL_TIME and self.time_zone != "UTC": - lt = cp.vl["LOCAL_TIME"] - y, m, d, H, M, S = int(lt["YEAR"]) + 2000, int(lt["MONTH"]), int(lt["DATE"]), int(lt["HOURS"]), int(lt["MINUTES"]), int(lt["SECONDS"]) - try: - dt_local = datetime(y, m, d, H, M, S, tzinfo=self.time_zone) - ret.datetime = int(dt_local.timestamp() * 1000) - except: - #print(f"Error parsing local time: {y}-{m}-{d} {H}:{M}:{S} in {self.time_zone}") - pass - - prev_cruise_buttons = self.cruise_buttons[-1] - #self.cruise_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]) - #carrot {{ - - if cp.vl[self.cruise_btns_msg_canfd]["LFA_BTN"]: - cruise_button = [Buttons.LFA_BUTTON] - else: - cruise_button = cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"] - - self.cruise_buttons.extend(cruise_button) - # }} carrot - - - if self.cruise_btns_msg_canfd in cp.vl: - self.cruise_buttons_msg = copy.copy(cp.vl[self.cruise_btns_msg_canfd]) - """ - if self.cruise_btns_msg_canfd in cp.vl: #carrot - if not cp.vl[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]: - pass - #print("empty cruise btns...") - else: - self.cruise_buttons_msg = copy.copy(cp.vl[self.cruise_btns_msg_canfd]) - """ - prev_main_buttons = self.main_buttons[-1] - #self.cruise_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]) - self.main_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["ADAPTIVE_CRUISE_MAIN_BTN"]) - if self.main_buttons[-1] != prev_main_buttons and not self.main_buttons[-1]: # and self.CP.openpilotLongitudinalControl: #carrot - self.main_enabled = not self.main_enabled - print("main_enabled = {}".format(self.main_enabled)) - self.buttons_counter = cp.vl[self.cruise_btns_msg_canfd]["COUNTER"] - ret.accFaulted = cp.vl["TCS"]["ACCEnable"] != 0 # 0 ACC CONTROL ENABLED, 1-3 ACC CONTROL DISABLED - - if not (self.CP.flags & HyundaiFlags.CAMERA_SCC): - if self.msg_0x362 is not None or 0x362 in cp_cam.seen_addresses: - self.msg_0x362 = cp_cam.vl["CAM_0x362"] - elif self.msg_0x2a4 is not None or 0x2a4 in cp_cam.seen_addresses: - self.msg_0x2a4 = cp_cam.vl["CAM_0x2a4"] - - speed_conv = CV.KPH_TO_MS # if self.is_metric else CV.MPH_TO_MS - cluSpeed = cp.vl["CRUISE_BUTTONS_ALT"]["CLU_SPEED"] - ret.vEgoCluster = cluSpeed * speed_conv # MPH단위에서도 KPH로 나오는듯.. - vEgoClu, aEgoClu = self.update_clu_speed_kf(ret.vEgoCluster) - ret.vCluRatio = (ret.vEgo / vEgoClu) if (vEgoClu > 3. and ret.vEgo > 3.) else 1.0 - - self.update_speed_limit(ret, speed_limit_cam) - - paddle_button = self.paddle_button_prev - if self.cruise_btns_msg_canfd == "CRUISE_BUTTONS": - paddle_button = 1 if cp.vl["CRUISE_BUTTONS"]["LEFT_PADDLE"] == 1 else 2 if cp.vl["CRUISE_BUTTONS"]["RIGHT_PADDLE"] == 1 else 0 - elif self.gear_msg_canfd == "GEAR": - paddle_button = 1 if cp.vl["GEAR"]["LEFT_PADDLE"] == 1 else 2 if cp.vl["GEAR"]["RIGHT_PADDLE"] == 1 else 0 - - ret.buttonEvents = [*create_button_events(self.cruise_buttons[-1], prev_cruise_buttons, BUTTONS_DICT), - *create_button_events(paddle_button, self.paddle_button_prev, {1: ButtonType.paddleLeft, 2: ButtonType.paddleRight}), - *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): - msgs = [] - if not (CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS): - # TODO: this can be removed once we add dynamic support to vl_all - 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), - Bus.alt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).ACAN), - } - - def get_can_parsers(self, CP): - if CP.flags & HyundaiFlags.CANFD: - return self.get_can_parsers_canfd(CP) - - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - } diff --git a/opendbc_repo/opendbc/car/hyundai/fingerprints.py b/opendbc_repo/opendbc/car/hyundai/fingerprints.py deleted file mode 100644 index 14bc3b3195..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/fingerprints.py +++ /dev/null @@ -1,1322 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.hyundai.values import CAR - -Ecu = CarParams.Ecu - -# The existence of SCC or RDR in the fwdRadar FW usually determines the radar's function, -# i.e. if it sends the SCC messages or if another ECU like the camera or ADAS Driving ECU does - - -FW_VERSIONS = { - CAR.HYUNDAI_AZERA_7TH_GEN: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00GN7_ RDR ----- 1.00 1.03 99110-N1000 ', - b'\xf1\x8b #\x11\x15', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00GN7 MFC AT KOR LHD 1.00 1.03 99211-N1000 230322', - b'\xf1\x8b #\x11\x16', - ], - }, - CAR.HYUNDAI_AZERA_6TH_GEN: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00IG__ SCC F-CU- 1.00 1.00 99110-G8100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00IG MDPS C 1.00 1.02 56310G8510\x00 4IGSC103', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00IG MFC AT MES LHD 1.00 1.04 99211-G8100 200511', - ], - }, - CAR.HYUNDAI_AZERA_HEV_6TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00IGH MFC AT KOR LHD 1.00 1.00 99211-G8000 180903', - b'\xf1\x00IGH MFC AT KOR LHD 1.00 1.01 99211-G8000 181109', - b'\xf1\x00IGH MFC AT KOR LHD 1.00 1.02 99211-G8100 191029', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00IG MDPS C 1.00 1.00 56310M9600\x00 4IHSC100', - b'\xf1\x00IG MDPS C 1.00 1.01 56310M9350\x00 4IH8C101', - b'\xf1\x00IG MDPS C 1.00 1.02 56310M9350\x00 4IH8C102', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00IGhe SCC FHCUP 1.00 1.00 99110-M9100 ', - b'\xf1\x00IGhe SCC FHCUP 1.00 1.01 99110-M9000 ', - b'\xf1\x00IGhe SCC FHCUP 1.00 1.02 99110-M9000 ', - ], - }, - CAR.HYUNDAI_GENESIS: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DH LKAS 1.1 -150210', - b'\xf1\x00DH LKAS 1.4 -140110', - b'\xf1\x00DH LKAS 1.5 -140425', - ], - }, - CAR.HYUNDAI_IONIQ: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 ', - b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00AE MDPS C 1.00 1.03 56310/G2300 4AEHC103', - b'\xf1\x00AE MDPS C 1.00 1.05 56310/G2501 4AEHC105', - b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2301 4AEHC107', - b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2501 4AEHC107', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AEH MFC AT EUR LHD 1.00 1.00 95740-G2400 180222', - b'\xf1\x00AEH MFC AT EUR LHD 1.00 1.00 95740-G7200 160418', - b'\xf1\x00AEH MFC AT USA LHD 1.00 1.00 95740-G2400 180222', - ], - }, - CAR.HYUNDAI_IONIQ_PHEV_2019: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 ', - b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2501 4AEHC107', - b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2551 4AEHC107', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AEP MFC AT AUS RHD 1.00 1.00 95740-G2400 180222', - b'\xf1\x00AEP MFC AT USA LHD 1.00 1.00 95740-G2400 180222', - ], - }, - CAR.HYUNDAI_IONIQ_PHEV: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AEhe SCC F-CUP 1.00 1.00 99110-G2200 ', - b'\xf1\x00AEhe SCC F-CUP 1.00 1.00 99110-G2600 ', - b'\xf1\x00AEhe SCC F-CUP 1.00 1.02 99110-G2100 ', - b'\xf1\x00AEhe SCC FHCUP 1.00 1.00 99110-G2600 ', - b'\xf1\x00AEhe SCC FHCUP 1.00 1.02 99110-G2100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2210 4APHC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2310 4APHC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2510 4APHC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2560 4APHC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310G2510\x00 4APHC101', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AEP MFC AT EUR LHD 1.00 1.01 95740-G2600 190819', - b'\xf1\x00AEP MFC AT EUR RHD 1.00 1.01 95740-G2600 190819', - b'\xf1\x00AEP MFC AT USA LHD 1.00 1.00 95740-G2700 201027', - b'\xf1\x00AEP MFC AT USA LHD 1.00 1.01 95740-G2600 190819', - ], - }, - CAR.HYUNDAI_IONIQ_EV_2020: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AEev SCC F-CUP 1.00 1.00 99110-G7200 ', - b'\xf1\x00AEev SCC F-CUP 1.00 1.00 99110-G7500 ', - b'\xf1\x00AEev SCC F-CUP 1.00 1.01 99110-G7000 ', - b'\xf1\x00AEev SCC F-CUP 1.00 1.01 99110-G7100 ', - b'\xf1\x00AEev SCC FHCUP 1.00 1.01 99110-G7100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G7310 4APEC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G7510 4APEC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G7560 4APEC101', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2600 190730', - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2700 201027', - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.01 95740-G2600 190819', - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.03 95740-G2500 190516', - b'\xf1\x00AEE MFC AT EUR RHD 1.00 1.01 95740-G2600 190819', - b'\xf1\x00AEE MFC AT USA LHD 1.00 1.01 95740-G2600 190819', - ], - }, - CAR.HYUNDAI_IONIQ_EV_LTD: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AEev SCC F-CUP 1.00 1.00 96400-G7000 ', - b'\xf1\x00AEev SCC F-CUP 1.00 1.00 96400-G7100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00AE MDPS C 1.00 1.02 56310G7300\x00 4AEEC102', - b'\xf1\x00AE MDPS C 1.00 1.03 56310/G7300 4AEEC103', - b'\xf1\x00AE MDPS C 1.00 1.03 56310G7300\x00 4AEEC103', - b'\xf1\x00AE MDPS C 1.00 1.04 56310/G7301 4AEEC104', - b'\xf1\x00AE MDPS C 1.00 1.04 56310/G7501 4AEEC104', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2300 170703', - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2400 180222', - b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G7200 160418', - b'\xf1\x00AEE MFC AT USA LHD 1.00 1.00 95740-G2400 180222', - ], - }, - CAR.HYUNDAI_IONIQ_HEV_2022: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AEhe SCC F-CUP 1.00 1.00 99110-G2600 ', - b'\xf1\x00AEhe SCC FHCUP 1.00 1.00 99110-G2600 ', - b'\xf1\x00AEhe SCC FHCUP 1.00 1.02 99110-G2100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2510 4APHC101', - b'\xf1\x00AE MDPS C 1.00 1.01 56310G2510\x00 4APHC101', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AEH MFC AT USA LHD 1.00 1.00 95740-G2700 201027', - b'\xf1\x00AEH MFC AT USA LHD 1.00 1.01 95740-G2600 190819', - ], - }, - CAR.HYUNDAI_SONATA: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DN8_ SCC F-CU- 1.00 1.00 99110-L0000 ', - b'\xf1\x00DN8_ SCC F-CUP 1.00 1.00 99110-L0000 ', - b'\xf1\x00DN8_ SCC F-CUP 1.00 1.02 99110-L1000 ', - b'\xf1\x00DN8_ SCC FHCUP 1.00 1.00 99110-L0000 ', - b'\xf1\x00DN8_ SCC FHCUP 1.00 1.01 99110-L1000 ', - b'\xf1\x00DN8_ SCC FHCUP 1.00 1.02 99110-L1000 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00DN ESC \x01 102\x19\x04\x13 58910-L1300', - b'\xf1\x00DN ESC \x03 100 \x08\x01 58910-L0300', - b'\xf1\x00DN ESC \x06 104\x19\x08\x01 58910-L0100', - b'\xf1\x00DN ESC \x06 106 \x07\x01 58910-L0100', - b'\xf1\x00DN ESC \x06 107 \x07\x03 58910-L1300', - b'\xf1\x00DN ESC \x06 107"\x08\x07 58910-L0100', - b'\xf1\x00DN ESC \x07 104\x19\x08\x01 58910-L0100', - b'\xf1\x00DN ESC \x07 106 \x07\x01 58910-L0100', - b'\xf1\x00DN ESC \x07 107"\x08\x07 58910-L0100', - b'\xf1\x00DN ESC \x08 103\x19\x06\x01 58910-L1300', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DN8 MDPS C 1,00 1,01 56310L0010\x00 4DNAC101', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0010 4DNAC101', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0200 4DNAC101', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0200 4DNAC102', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0210 4DNAC101', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0210 4DNAC102', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0010\x00 4DNAC101', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0200\x00 4DNAC102', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0210\x00 4DNAC101', - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0210\x00 4DNAC102', - b'\xf1\x00DN8 MDPS C 1.00 1.03 56310-L1010 4DNDC103', - b'\xf1\x00DN8 MDPS C 1.00 1.03 56310-L1030 4DNDC103', - b'\xf1\x00DN8 MDPS R 1.00 1.00 57700-L0000 4DNAP100', - b'\xf1\x00DN8 MDPS R 1.00 1.00 57700-L0000 4DNAP101', - b'\xf1\x00DN8 MDPS R 1.00 1.02 57700-L1000 4DNDP105', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DN8 MFC AT KOR LHD 1.00 1.02 99211-L1000 190422', - b'\xf1\x00DN8 MFC AT KOR LHD 1.00 1.04 99211-L1000 191016', - b'\xf1\x00DN8 MFC AT RUS LHD 1.00 1.03 99211-L1000 190705', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.00 99211-L0000 190716', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.01 99211-L0000 191016', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.03 99211-L0000 210603', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.05 99211-L1000 201109', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.06 99211-L1000 210325', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.07 99211-L1000 211223', - ], - }, - CAR.HYUNDAI_SONATA_LF: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00LF__ SCC F-CUP 1.00 1.00 96401-C2200 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00LF ESC \t 11 \x17\x01\x13 58920-C2610', - b'\xf1\x00LF ESC \x0c 11 \x17\x01\x13 58920-C2610', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00LFF LKAS AT USA LHD 1.00 1.01 95740-C1000 E51', - b'\xf1\x00LFF LKAS AT USA LHD 1.01 1.02 95740-C1000 E52', - ], - }, - CAR.HYUNDAI_SONATA_2024: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DN8_ RDR ----- 1.00 1.00 99110-L1800 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DN8 MFC AT KOR LHD 1.00 1.01 99211-L1800 230512', - b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.01 99211-L1800 230512', - ], - }, - CAR.HYUNDAI_TUCSON: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00TL__ FCA F-CUP 1.00 1.01 99110-D3500 ', - b'\xf1\x00TL__ FCA F-CUP 1.00 1.02 99110-D3510 ', - b'\xf1\x00TL__ FCA FHCUP 1.00 1.02 99110-D3500 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00TL MFC AT KOR LHD 1.00 1.02 95895-D3800 180719', - b'\xf1\x00TL MFC AT KOR LHD 1.00 1.06 95895-D3800 190107', - b'\xf1\x00TL MFC AT USA LHD 1.00 1.06 95895-D3800 190107', - ], - }, - CAR.HYUNDAI_SANTA_FE: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00TM__ SCC F-CUP 1.00 1.00 99110-S1210 ', - b'\xf1\x00TM__ SCC F-CUP 1.00 1.01 99110-S2000 ', - b'\xf1\x00TM__ SCC F-CUP 1.00 1.02 99110-S2000 ', - b'\xf1\x00TM__ SCC F-CUP 1.00 1.03 99110-S2000 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00TM ESC \x02 100\x18\x030 58910-S2600', - b'\xf1\x00TM ESC \x02 102\x18\x07\x01 58910-S2600', - b'\xf1\x00TM ESC \x02 103\x18\x11\x05 58910-S2500', - b'\xf1\x00TM ESC \x02 103\x18\x11\x07 58910-S2600', - b'\xf1\x00TM ESC \x02 104\x19\x07\x07 58910-S2600', - b'\xf1\x00TM ESC \x03 103\x18\x11\x07 58910-S2600', - b'\xf1\x00TM ESC \x0c 103\x18\x11\x08 58910-S2650', - b'\xf1\x00TM ESC \r 100\x18\x031 58910-S2650', - b'\xf1\x00TM ESC \r 103\x18\x11\x08 58910-S2650', - b'\xf1\x00TM ESC \r 104\x19\x07\x08 58910-S2650', - b'\xf1\x00TM ESC \r 105\x19\x05# 58910-S1500', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00TM MDPS C 1.00 1.00 56340-S2000 8409', - b'\xf1\x00TM MDPS C 1.00 1.00 56340-S2000 8A12', - b'\xf1\x00TM MDPS C 1.00 1.01 56340-S2000 9129', - b'\xf1\x00TM MDPS R 1.00 1.02 57700-S1100 4TMDP102', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00TM MFC AT EUR LHD 1.00 1.01 99211-S1010 181207', - b'\xf1\x00TM MFC AT USA LHD 1.00 1.00 99211-S2000 180409', - ], - }, - CAR.HYUNDAI_SANTA_FE_2022: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00TM__ SCC F-CUP 1.00 1.00 99110-S1500 ', - b'\xf1\x00TM__ SCC F-CUP 1.00 1.01 99110-S1500 ', - b'\xf1\x00TM__ SCC FHCUP 1.00 1.00 99110-S1500 ', - b'\xf1\x00TM__ SCC FHCUP 1.00 1.01 99110-S1500 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00TM ESC \x01 102!\x04\x03 58910-S2DA0', - b'\xf1\x00TM ESC \x01 104"\x10\x07 58910-S2DA0', - b'\xf1\x00TM ESC \x02 101 \x08\x04 58910-S2GA0', - b'\xf1\x00TM ESC \x02 103"\x07\x08 58910-S2GA0', - b'\xf1\x00TM ESC \x03 101 \x08\x02 58910-S2DA0', - b'\xf1\x00TM ESC \x03 102!\x04\x03 58910-S2DA0', - b'\xf1\x00TM ESC \x03 103"\x07\x06 58910-S2DA0', - b'\xf1\x00TM ESC \x04 101 \x08\x04 58910-S2GA0', - b'\xf1\x00TM ESC \x04 102!\x04\x05 58910-S2GA0', - b'\xf1\x00TM ESC \x04 103"\x07\x08 58910-S2GA0', - b'\xf1\x00TM ESC \x1e 102 \x08\x08 58910-S1DA0', - b'\xf1\x00TM ESC 103!\x030 58910-S1MA0', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00TM MDPS C 1.00 1.01 56310-S1AB0 4TSDC101', - b'\xf1\x00TM MDPS C 1.00 1.01 56310-S1EB0 4TSDC101', - b'\xf1\x00TM MDPS C 1.00 1.02 56370-S2AA0 0B19', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00TM MFC AT EUR LHD 1.00 1.03 99211-S1500 210224', - b'\xf1\x00TM MFC AT MES LHD 1.00 1.05 99211-S1500 220126', - b'\xf1\x00TMA MFC AT MEX LHD 1.00 1.01 99211-S2500 210205', - b'\xf1\x00TMA MFC AT USA LHD 1.00 1.00 99211-S2500 200720', - b'\xf1\x00TMA MFC AT USA LHD 1.00 1.01 99211-S2500 210205', - b'\xf1\x00TMA MFC AT USA LHD 1.00 1.03 99211-S2500 220414', - ], - }, - CAR.HYUNDAI_SANTA_FE_HEV_2022: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00TMhe SCC FHCUP 1.00 1.00 99110-CL500 ', - b'\xf1\x00TMhe SCC FHCUP 1.00 1.01 99110-CL500 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLAC0 4TSHC102', - b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLEC0 4TSHC102', - b'\xf1\x00TM MDPS C 1.00 1.02 56310-GA000 4TSHA100', - b'\xf1\x00TM MDPS C 1.00 1.02 56310GA000\x00 4TSHA100', - b'\xf1\x00TM MDPS R 1.00 1.05 57700-CL000 4TSHP105', - b'\xf1\x00TM MDPS R 1.00 1.06 57700-CL000 4TSHP106', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00TMA MFC AT USA LHD 1.00 1.03 99211-S2500 220414', - b'\xf1\x00TMH MFC AT EUR LHD 1.00 1.06 99211-S1500 220727', - b'\xf1\x00TMH MFC AT KOR LHD 1.00 1.06 99211-S1500 220727', - b'\xf1\x00TMH MFC AT USA LHD 1.00 1.03 99211-S1500 210224', - b'\xf1\x00TMH MFC AT USA LHD 1.00 1.05 99211-S1500 220126', - b'\xf1\x00TMH MFC AT USA LHD 1.00 1.06 99211-S1500 220727', - ], - }, - CAR.HYUNDAI_SANTA_FE_PHEV_2022: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00TMhe SCC F-CUP 1.00 1.00 99110-CL500 ', - b'\xf1\x00TMhe SCC FHCUP 1.00 1.00 99110-CL500 ', - b'\xf1\x00TMhe SCC FHCUP 1.00 1.01 99110-CL500 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLAC0 4TSHC102', - b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLEC0 4TSHC102', - b'\xf1\x00TM MDPS C 1.00 1.02 56310CLEC0\x00 4TSHC102', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00TMP MFC AT USA LHD 1.00 1.03 99211-S1500 210224', - b'\xf1\x00TMP MFC AT USA LHD 1.00 1.05 99211-S1500 220126', - b'\xf1\x00TMP MFC AT USA LHD 1.00 1.06 99211-S1500 220727', - ], - }, - CAR.HYUNDAI_CUSTIN_1ST_GEN: { - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00KU ESC \x01 101!\x02\x03 58910-O3200', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00KU__ SCC F-CUP 1.00 1.01 99110-O3000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00KU MDPS C 1.00 1.01 56310/O3100 4KUCC101', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00KU2 MFC AT CHN LHD 1.00 1.02 99211-O3000 220923', - ], - }, - CAR.KIA_STINGER: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CK__ SCC F_CUP 1.00 1.01 96400-J5000 ', - b'\xf1\x00CK__ SCC F_CUP 1.00 1.01 96400-J5100 ', - b'\xf1\x00CK__ SCC F_CUP 1.00 1.02 96400-J5100 ', - b'\xf1\x00CK__ SCC F_CUP 1.00 1.03 96400-J5100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00CK MDPS R 1.00 1.04 57700-J5200 4C2CL104', - b'\xf1\x00CK MDPS R 1.00 1.04 57700-J5220 4C2VL104', - b'\xf1\x00CK MDPS R 1.00 1.04 57700-J5420 4C4VL104', - b'\xf1\x00CK MDPS R 1.00 1.06 57700-J5220 4C2VL106', - b'\xf1\x00CK MDPS R 1.00 1.06 57700-J5420 4C4VL106', - b'\xf1\x00CK MDPS R 1.00 1.07 57700-J5220 4C2VL107', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CK MFC AT EUR LHD 1.00 1.03 95740-J5000 170822', - b'\xf1\x00CK MFC AT USA LHD 1.00 1.03 95740-J5000 170822', - b'\xf1\x00CK MFC AT USA LHD 1.00 1.04 95740-J5000 180504', - ], - }, - CAR.KIA_STINGER_2022: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CK__ SCC F-CUP 1.00 1.00 99110-J5500 ', - b'\xf1\x00CK__ SCC FHCUP 1.00 1.00 99110-J5500 ', - b'\xf1\x00CK__ SCC FHCUP 1.00 1.00 99110-J5600 ', - b'\xf1\x00CK__ SCC FHCUP 1.00 1.01 99110-J5100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5300 4C2CL503', - b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5320 4C2VL503', - b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5380 4C2VR503', - b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5520 4C4VL503', - b'\xf1\x00CK MDPS R 1.00 5.04 57700-J5520 4C4VL504', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CK MFC AT AUS RHD 1.00 1.00 99211-J5500 210622', - b'\xf1\x00CK MFC AT KOR LHD 1.00 1.00 99211-J5500 210622', - b'\xf1\x00CK MFC AT USA LHD 1.00 1.00 99211-J5500 210622', - b'\xf1\x00CK MFC AT USA LHD 1.00 1.03 99211-J5000 201209', - ], - }, - CAR.HYUNDAI_PALISADE: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00LX2 SCC FHCUP 1.00 1.04 99110-S8100 ', - b'\xf1\x00LX2_ SCC F-CU- 1.00 1.05 99110-S8100 ', - b'\xf1\x00LX2_ SCC F-CUP 1.00 1.00 99110-S8110 ', - b'\xf1\x00LX2_ SCC F-CUP 1.00 1.04 99110-S8100 ', - b'\xf1\x00LX2_ SCC F-CUP 1.00 1.05 99110-S8100 ', - b'\xf1\x00LX2_ SCC FHCU- 1.00 1.05 99110-S8100 ', - b'\xf1\x00LX2_ SCC FHCUP 1.00 1.00 99110-S8110 ', - b'\xf1\x00LX2_ SCC FHCUP 1.00 1.03 99110-S8100 ', - b'\xf1\x00LX2_ SCC FHCUP 1.00 1.04 99110-S8100 ', - b'\xf1\x00LX2_ SCC FHCUP 1.00 1.05 99110-S8100 ', - b'\xf1\x00ON__ FCA FHCU- 1.00 1.00 99110-S9110 ', - b'\xf1\x00ON__ FCA FHCUP 1.00 1.00 99110-S9110 ', - b'\xf1\x00ON__ FCA FHCUP 1.00 1.01 99110-S9110 ', - b'\xf1\x00ON__ FCA FHCUP 1.00 1.02 99110-S9100 ', - b'\xf1\x00ON__ FCA FHCUP 1.00 1.03 99110-S9100 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00LX ESC \x01 103\x19\t\x10 58910-S8360', - b'\xf1\x00LX ESC \x01 1031\t\x10 58910-S8360', - b'\xf1\x00LX ESC \x01 104 \x10\x15 58910-S8350', - b'\xf1\x00LX ESC \x01 104 \x10\x16 58910-S8360', - b'\xf1\x00LX ESC \x0b 101\x19\x03\x17 58910-S8330', - b'\xf1\x00LX ESC \x0b 101\x19\x03 58910-S8360', - b'\xf1\x00LX ESC \x0b 102\x19\x05\x07 58910-S8330', - b'\xf1\x00LX ESC \x0b 103\x19\t\x07 58910-S8330', - b'\xf1\x00LX ESC \x0b 103\x19\t\t 58910-S8350', - b'\xf1\x00LX ESC \x0b 103\x19\t\x10 58910-S8360', - b'\xf1\x00LX ESC \x0b 104 \x10\x13 58910-S8330', - b'\xf1\x00LX ESC \x0b 104 \x10\x16 58910-S8360', - b'\xf1\x00ON ESC \x01 101\x19\t\x08 58910-S9360', - b'\xf1\x00ON ESC \x0b 100\x18\x12\x18 58910-S9360', - b'\xf1\x00ON ESC \x0b 101\x19\t\x05 58910-S9320', - b'\xf1\x00ON ESC \x0b 101\x19\t\x08 58910-S9360', - b'\xf1\x00ON ESC \x0b 103$\x04\x08 58910-S9360', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00LX2 MDPS C 1,00 1,03 56310-S8020 4LXDC103', - b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-S8000 4LXDC103', - b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-S8020 4LXDC103', - b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-XX000 4LXDC103', - b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8000 4LXDC104', - b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8020 4LXDC104', - b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8420 4LXDC104', - b'\xf1\x00LX2 MDPS R 1.00 1.02 56370-S8300 9318', - b'\xf1\x00ON MDPS C 1.00 1.00 56340-S9000 8B13', - b'\xf1\x00ON MDPS C 1.00 1.01 56340-S9000 9201', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00LX2 MFC AT KOR LHD 1.00 1.08 99211-S8100 200903', - b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.00 99211-S8110 210226', - b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.03 99211-S8100 190125', - b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.05 99211-S8100 190909', - b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.07 99211-S8100 200422', - b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.08 99211-S8100 200903', - b'\xf1\x00ON MFC AT USA LHD 1.00 1.01 99211-S9100 181105', - b'\xf1\x00ON MFC AT USA LHD 1.00 1.03 99211-S9100 200720', - b'\xf1\x00ON MFC AT USA LHD 1.00 1.04 99211-S9100 211227', - ], - }, - CAR.HYUNDAI_VELOSTER: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JS__ SCC H-CUP 1.00 1.02 95650-J3200 ', - b'\xf1\x00JS__ SCC HNCUP 1.00 1.02 95650-J3100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00JSL MDPS C 1.00 1.03 56340-J3000 8308', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JS LKAS AT KOR LHD 1.00 1.03 95740-J3000 K33', - b'\xf1\x00JS LKAS AT USA LHD 1.00 1.02 95740-J3000 K32', - ], - }, - CAR.GENESIS_G70: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00IK__ SCC F-CUP 1.00 1.01 96400-G9100 ', - b'\xf1\x00IK__ SCC F-CUP 1.00 1.02 96400-G9100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00IK MDPS R 1.00 1.06 57700-G9420 4I4VL106', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00IK MFC AT USA LHD 1.00 1.01 95740-G9000 170920', - ], - }, - CAR.GENESIS_G70_2020: { - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00IK MDPS R 1.00 1.06 57700-G9220 4I2VL106', - b'\xf1\x00IK MDPS R 1.00 1.07 57700-G9220 4I2VL107', - b'\xf1\x00IK MDPS R 1.00 1.07 57700-G9420 4I4VL107', - b'\xf1\x00IK MDPS R 1.00 1.08 57700-G9200 4I2CL108', - b'\xf1\x00IK MDPS R 1.00 1.08 57700-G9420 4I4VL108', - b'\xf1\x00IK MDPS R 1.00 5.09 57700-G9520 4I4VL509', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00IK__ SCC F-CUP 1.00 1.01 96400-G9100 ', - b'\xf1\x00IK__ SCC F-CUP 1.00 1.02 96400-G9100 ', - b'\xf1\x00IK__ SCC F-CUP 1.00 1.02 96400-G9100 \xf1\xa01.02', - b'\xf1\x00IK__ SCC FHCUP 1.00 1.00 99110-G9300 ', - b'\xf1\x00IK__ SCC FHCUP 1.00 1.02 96400-G9000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00IK MFC AT KOR LHD 1.00 1.01 95740-G9000 170920', - b'\xf1\x00IK MFC AT USA LHD 1.00 1.01 95740-G9000 170920', - b'\xf1\x00IK MFC AT USA LHD 1.00 1.04 99211-G9000 220401', - ], - }, - CAR.GENESIS_G80: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DH__ SCC F-CU- 1.00 1.01 96400-B1110 ', - b'\xf1\x00DH__ SCC F-CUP 1.00 1.01 96400-B1120 ', - b'\xf1\x00DH__ SCC F-CUP 1.00 1.02 96400-B1120 ', - b'\xf1\x00DH__ SCC FHCUP 1.00 1.01 96400-B1110 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DH LKAS AT EUR LHD 1.01 1.01 95895-B1500 161014', - b'\xf1\x00DH LKAS AT KOR LHD 1.01 1.01 95895-B1500 161014', - b'\xf1\x00DH LKAS AT KOR LHD 1.01 1.02 95895-B1500 170810', - b'\xf1\x00DH LKAS AT USA LHD 1.01 1.01 95895-B1500 161014', - b'\xf1\x00DH LKAS AT USA LHD 1.01 1.02 95895-B1500 170810', - b'\xf1\x00DH LKAS AT USA LHD 1.01 1.03 95895-B1500 180713', - b'\xf1\x00DH LKAS AT USA LHD 1.01 1.04 95895-B1500 181213', - ], - }, - CAR.GENESIS_G80_2ND_GEN_FL: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00RG3_ SCC ----- 1.00 1.02 99110-T1120 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00RG3 MFC AT USA LHD 1.00 1.01 99211-T1200 230607', - ], - }, - CAR.GENESIS_G90: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00HI__ SCC F-CUP 1.00 1.01 96400-D2100 ', - b'\xf1\x00HI__ SCC FHCUP 1.00 1.02 99110-D2100 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00HI LKAS AT USA LHD 1.00 1.00 95895-D2020 160302', - b'\xf1\x00HI LKAS AT USA LHD 1.00 1.00 95895-D2030 170208', - b'\xf1\x00HI LKAS AT USA LHD 1.00 1.01 95895-D2030 170811', - b'\xf1\x00HI MFC AT USA LHD 1.00 1.03 99211-D2000 190831', - ], - }, - CAR.HYUNDAI_KONA: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00OS__ SCC F-CUP 1.00 1.00 95655-J9200 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00OS MDPS C 1.00 1.05 56310J9030\x00 4OSDC105', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00OS9 LKAS AT USA LHD 1.00 1.00 95740-J9300 g21', - ], - }, - CAR.KIA_CEED: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CD__ SCC F-CUP 1.00 1.00 99110-J7500 ', - b'\xf1\x00CD__ SCC F-CUP 1.00 1.02 99110-J7000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00CD MDPS C 1.00 1.06 56310-XX000 4CDEC106', - b'\xf1\x00CDT MDPS C 1.00 1.00 56310-XX000 4CDTC100', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CD LKAS AT EUR LHD 1.00 1.01 99211-J7000 B40', - b'\xf1\x00CDT LKAS AT EUR LHD 1.00 1.01 99211-J7210 521', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00CD ESC \x03 102\x18\x08\x05 58920-J7350', - b'\xf1\x00CD ESC \x0b 101 \x10\x03 58910-J7AC0', - ], - }, - CAR.KIA_FORTE: { - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00BD MDPS C 1.00 1.02 56310-XX000 4BD2C102', - b'\xf1\x00BD MDPS C 1.00 1.08 56310/M6300 4BDDC108', - b'\xf1\x00BD MDPS C 1.00 1.08 56310M6300\x00 4BDDC108', - b'\xf1\x00BDm MDPS C A.01 1.01 56310M7800\x00 4BPMC101', - b'\xf1\x00BDm MDPS C A.01 1.03 56310M7800\x00 4BPMC103', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00BD LKAS AT USA LHD 1.00 1.04 95740-M6000 J33', - b'\xf1\x00BDP LKAS AT USA LHD 1.00 1.05 99211-M6500 744', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00BDPE_SCC FHCUPC 1.00 1.04 99110-M6500\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'\xf1\x00BD__ SCC H-CUP 1.00 1.02 99110-M6000 ', - ], - }, - CAR.KIA_K5_2021: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DL3_ SCC F-CUP 1.00 1.03 99110-L2100 ', - b'\xf1\x00DL3_ SCC FHCUP 1.00 1.03 99110-L2000 ', - b'\xf1\x00DL3_ SCC FHCUP 1.00 1.03 99110-L2100 ', - b'\xf1\x00DL3_ SCC FHCUP 1.00 1.04 99110-L2100 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DL3 MDPS C 1.00 1.01 56310-L3110 4DLAC101', - b'\xf1\x00DL3 MDPS C 1.00 1.01 56310-L3220 4DLAC101', - b'\xf1\x00DL3 MDPS C 1.00 1.01 56310L3220\x00 4DLAC101', - b'\xf1\x00DL3 MDPS C 1.00 1.02 56310-L2220 4DLDC102', - b'\xf1\x00DL3 MDPS C 1.00 1.02 56310L3220\x00 4DLAC102', - b'\xf1\x00DL3 MDPS R 1.00 1.02 57700-L3000 4DLAP102', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DL3 MFC AT KOR LHD 1.00 1.04 99210-L2000 210527', - b'\xf1\x00DL3 MFC AT USA LHD 1.00 1.03 99210-L3000 200915', - b'\xf1\x00DL3 MFC AT USA LHD 1.00 1.04 99210-L3000 210208', - b'\xf1\x00DL3 MFC AT USA LHD 1.00 1.05 99210-L3000 211222', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00DL ESC \x01 104 \x07\x12 58910-L2200', - b'\xf1\x00DL ESC \x03 100 \x08\x02 58910-L3600', - b'\xf1\x00DL ESC \x06 101 \x04\x02 58910-L3200', - b'\xf1\x00DL ESC \x06 102 \x07\x02 58910-L3200', - b'\xf1\x00DL ESC \x06 103"\x08\x06 58910-L3200', - b'\xf1\x00DL ESC \t 100 \x06\x02 58910-L3800', - b'\xf1\x00DL ESC \t 101 \x07\x02 58910-L3800', - b'\xf1\x00DL ESC \t 102"\x08\x10 58910-L3800', - ], - }, - CAR.KIA_K5_HEV_2020: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DLhe SCC FHCUP 1.00 1.02 99110-L7000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DL3 MDPS C 1.00 1.02 56310-L7000 4DLHC102', - b'\xf1\x00DL3 MDPS C 1.00 1.02 56310-L7220 4DLHC102', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.01 99210-L2000 191022', - b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.02 99210-L2000 200309', - b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.04 99210-L2000 210527', - ], - }, - CAR.KIA_K5_DL3_24_HEV: { # (DL3) - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.02 99210-L2500 230911' - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DL3_ RDR ----- 1.00 1.01 99110-L2500 ', - ], - }, - CAR.HYUNDAI_KONA_EV: { - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00OS IEB \x01 212 \x11\x13 58520-K4000', - b'\xf1\x00OS IEB \x02 210 \x02\x14 58520-K4000', - b'\xf1\x00OS IEB \x02 212 \x11\x13 58520-K4000', - b'\xf1\x00OS IEB \x03 210 \x02\x14 58520-K4000', - b'\xf1\x00OS IEB \x03 211 \x04\x02 58520-K4000', - b'\xf1\x00OS IEB \x03 212 \x11\x13 58520-K4000', - b'\xf1\x00OS IEB \x04 212 \x11\x13 58520-K4000', - b'\xf1\x00OS IEB \r 105\x18\t\x18 58520-K4000', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00OE2 LKAS AT EUR LHD 1.00 1.00 95740-K4200 200', - b'\xf1\x00OSE LKAS AT AUS RHD 1.00 1.00 95740-K4300 W50', - b'\xf1\x00OSE LKAS AT EUR LHD 1.00 1.00 95740-K4100 W40', - b'\xf1\x00OSE LKAS AT EUR RHD 1.00 1.00 95740-K4100 W40', - b'\xf1\x00OSE LKAS AT KOR LHD 1.00 1.00 95740-K4100 W40', - b'\xf1\x00OSE LKAS AT KOR LHD 1.00 1.00 95740-K4300 W50', - b'\xf1\x00OSE LKAS AT USA LHD 1.00 1.00 95740-K4100 W40', - b'\xf1\x00OSE LKAS AT USA LHD 1.00 1.00 95740-K4300 W50', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00OS MDPS C 1.00 1.03 56310/K4550 4OEDC103', - b'\xf1\x00OS MDPS C 1.00 1.04 56310-XX000 4OEDC104', - b'\xf1\x00OS MDPS C 1.00 1.04 56310/K4550 4OEDC104', - b'\xf1\x00OS MDPS C 1.00 1.04 56310K4000\x00 4OEDC104', - b'\xf1\x00OS MDPS C 1.00 1.04 56310K4050\x00 4OEDC104', - b'\xf1\x00OS MDPS C 1.00 1.05 56310K4000\x00 4OEDC105', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00OSev SCC F-CUP 1.00 1.00 99110-K4000 ', - b'\xf1\x00OSev SCC F-CUP 1.00 1.00 99110-K4100 ', - b'\xf1\x00OSev SCC F-CUP 1.00 1.01 99110-K4000 ', - b'\xf1\x00OSev SCC FNCUP 1.00 1.01 99110-K4000 ', - ], - }, - CAR.HYUNDAI_KONA_EV_2022: { - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00OS IEB \x02 102"\x05\x16 58520-K4010', - b'\xf1\x00OS IEB \x03 101 \x11\x13 58520-K4010', - b'\xf1\x00OS IEB \x03 102"\x05\x16 58520-K4010', - b'\xf1\x00OS IEB \r 102"\x05\x16 58520-K4010', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00OSP LKA AT AUS RHD 1.00 1.04 99211-J9200 904', - b'\xf1\x00OSP LKA AT CND LHD 1.00 1.02 99211-J9110 802', - b'\xf1\x00OSP LKA AT EUR LHD 1.00 1.04 99211-J9200 904', - b'\xf1\x00OSP LKA AT EUR RHD 1.00 1.02 99211-J9110 802', - b'\xf1\x00OSP LKA AT EUR RHD 1.00 1.04 99211-J9200 904', - b'\xf1\x00OSP LKA AT USA LHD 1.00 1.04 99211-J9200 904', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00OSP MDPS C 1.00 1.02 56310-K4271 4OEPC102', - b'\xf1\x00OSP MDPS C 1.00 1.02 56310/K4271 4OEPC102', - b'\xf1\x00OSP MDPS C 1.00 1.02 56310/K4970 4OEPC102', - b'\xf1\x00OSP MDPS C 1.00 1.02 56310K4260\x00 4OEPC102', - b'\xf1\x00OSP MDPS C 1.00 1.02 56310K4261\x00 4OEPC102', - b'\xf1\x00OSP MDPS C 1.00 1.02 56310K4971\x00 4OEPC102', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00YB__ FCA ----- 1.00 1.01 99110-K4500 \x00\x00\x00', - ], - }, - CAR.HYUNDAI_KONA_EV_2ND_GEN: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00SXev RDR ----- 1.00 1.00 99110-BF000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00SX2EMFC AT KOR LHD 1.00 1.00 99211-BF000 230410', - ], - }, - CAR.HYUNDAI_KONA_HEV_2ND_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00SX2HMFC AT EUR RHD 1.00 1.04 99211-BE000 231010', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00SX2_ RDR ----- 1.00 1.02 99110-BE500 ', - ], - }, - CAR.KIA_NIRO_EV: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4000 ', - b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4100 ', - b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4500 ', - b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4600 ', - b'\xf1\x00DEev SCC F-CUP 1.00 1.02 96400-Q4000 ', - b'\xf1\x00DEev SCC F-CUP 1.00 1.02 96400-Q4100 ', - b'\xf1\x00DEev SCC F-CUP 1.00 1.03 96400-Q4100 ', - b'\xf1\x00DEev SCC FHCUP 1.00 1.00 99110-Q4600 ', - b'\xf1\x00DEev SCC FHCUP 1.00 1.03 96400-Q4000 ', - b'\xf1\x00DEev SCC FNCUP 1.00 1.00 99110-Q4600 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DE MDPS C 1.00 1.04 56310Q4100\x00 4DEEC104', - b'\xf1\x00DE MDPS C 1.00 1.05 56310Q4000\x00 4DEEC105', - b'\xf1\x00DE MDPS C 1.00 1.05 56310Q4100\x00 4DEEC105', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DEE MFC AT EUR LHD 1.00 1.00 99211-Q4000 191211', - b'\xf1\x00DEE MFC AT EUR LHD 1.00 1.00 99211-Q4100 200706', - b'\xf1\x00DEE MFC AT EUR LHD 1.00 1.03 95740-Q4000 180821', - b'\xf1\x00DEE MFC AT KOR LHD 1.00 1.02 95740-Q4000 180705', - b'\xf1\x00DEE MFC AT KOR LHD 1.00 1.03 95740-Q4000 180821', - b'\xf1\x00DEE MFC AT USA LHD 1.00 1.00 99211-Q4000 191211', - b'\xf1\x00DEE MFC AT USA LHD 1.00 1.01 99211-Q4500 210428', - b'\xf1\x00DEE MFC AT USA LHD 1.00 1.02 99211-Q4100 201218', - b'\xf1\x00DEE MFC AT USA LHD 1.00 1.03 95740-Q4000 180821', - ], - }, - CAR.KIA_NIRO_EV_2ND_GEN: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00SG2_ RDR ----- 1.00 1.01 99110-AT000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00SG2EMFC AT EUR LHD 1.01 1.09 99211-AT000 220801', - b'\xf1\x00SG2EMFC AT USA LHD 1.01 1.09 99211-AT000 220801', - ], - }, - CAR.KIA_NIRO_PHEV: { - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DE MDPS C 1.00 1.01 56310G5520\x00 4DEPC101', - b'\xf1\x00DE MDPS C 1.00 1.09 56310G5301\x00 4DEHC109', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DEH MFC AT USA LHD 1.00 1.00 95740-G5010 170117', - b'\xf1\x00DEP MFC AT USA LHD 1.00 1.00 95740-G5010 170117', - b'\xf1\x00DEP MFC AT USA LHD 1.00 1.01 95740-G5010 170424', - b'\xf1\x00DEP MFC AT USA LHD 1.00 1.05 99211-G5000 190826', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DEhe SCC F-CUP 1.00 1.02 99110-G5100 ', - b'\xf1\x00DEhe SCC FHCUP 1.00 1.02 99110-G5100 ', - b'\xf1\x00DEhe SCC H-CUP 1.01 1.02 96400-G5100 ', - ], - }, - CAR.KIA_NIRO_PHEV_2022: { - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DE MDPS C 1.00 1.01 56310G5520\x00 4DEPC101', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DEP MFC AT USA LHD 1.00 1.00 99211-G5500 210428', - b'\xf1\x00DEP MFC AT USA LHD 1.00 1.06 99211-G5000 201028', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DEhe SCC F-CUP 1.00 1.00 99110-G5600 ', - b'\xf1\x00DEhe SCC FHCUP 1.00 1.00 99110-G5600 ', - ], - }, - CAR.KIA_NIRO_HEV_2021: { - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DE MDPS C 1.00 1.01 56310G5520\x00 4DEPC101', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DEH MFC AT KOR LHD 1.00 1.04 99211-G5000 190516', - b'\xf1\x00DEH MFC AT USA LHD 1.00 1.00 99211-G5500 210428', - b'\xf1\x00DEH MFC AT USA LHD 1.00 1.06 99211-G5000 201028', - b'\xf1\x00DEH MFC AT USA LHD 1.00 1.07 99211-G5000 201221', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DEhe SCC FHCUP 1.00 1.00 99110-G5600 ', - b'\xf1\x00DEhe SCC FHCUP 1.00 1.01 99110-G5000 ', - ], - }, - CAR.KIA_SELTOS: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00SP2_ SCC FHCUP 1.01 1.05 99110-Q5100 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00SP ESC \x07 101\x19\t\x05 58910-Q5450', - b'\xf1\x00SP ESC \t 101\x19\t\x05 58910-Q5450', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00SP2 MDPS C 1.00 1.04 56300Q5200 ', - b'\xf1\x00SP2 MDPS C 1.01 1.05 56300Q5200 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00SP2 MFC AT USA LHD 1.00 1.04 99210-Q5000 191114', - b'\xf1\x00SP2 MFC AT USA LHD 1.00 1.05 99210-Q5000 201012', - ], - }, - CAR.KIA_OPTIMA_G4: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JF__ SCC F-CUP 1.00 1.00 96400-D4100 ', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00JF ESC \t 17 \x16\x06# 58920-D4180', - b'\xf1\x00JF ESC \x0f 16 \x16\x06\x17 58920-D5080', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JFWGN LDWS AT USA LHD 1.00 1.02 95895-D4100 G21', - b'\xf1\x00JFWGN LKAS AT EUR LHD 1.00 1.01 95895-D4100 G20', - ], - }, - CAR.KIA_OPTIMA_G4_FL: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JF__ SCC F-CUP 1.00 1.00 96400-D4110 ', - ], - (Ecu.abs, 0x7d1, None): [ - b"\xf1\x00JF ESC \t 11 \x18\x03' 58920-D5260", - b'\xf1\x00JF ESC \x0b 11 \x18\x030 58920-D5180', - b'\xf1\x00JF ESC \x0c 11 \x18\x030 58920-D5180', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JFA LKAS AT USA LHD 1.00 1.00 95895-D5001 h32', - b'\xf1\x00JFA LKAS AT USA LHD 1.00 1.00 95895-D5100 h32', - ], - }, - CAR.KIA_OPTIMA_H: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JFhe SCC FNCUP 1.00 1.00 96400-A8000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JFP LKAS AT EUR LHD 1.00 1.03 95895-A8100 160711', - ], - }, - CAR.KIA_OPTIMA_H_G4_FL: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JFhe SCC FHCUP 1.00 1.01 99110-A8500 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JFH MFC AT KOR LHD 1.00 1.01 95895-A8200 180323', - ], - }, - CAR.HYUNDAI_ELANTRA: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00AD LKAS AT USA LHD 1.01 1.01 95895-F2000 251', - b'\xf1\x00ADP LKAS AT USA LHD 1.00 1.03 99211-F2000 X31', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00AD ESC \x11 11 \x18\x05\x06 58910-F2840', - b'\xf1\x00AD ESC \x11 12 \x15\t\t 58920-F2810', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00AD__ SCC H-CUP 1.00 1.00 99110-F2100 ', - b'\xf1\x00AD__ SCC H-CUP 1.00 1.01 96400-F2100 ', - ], - }, - CAR.HYUNDAI_ELANTRA_GT_I30: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00PD LKAS AT KOR LHD 1.00 1.02 95740-G3000 A51', - b'\xf1\x00PD LKAS AT USA LHD 1.00 1.02 95740-G3000 A51', - b'\xf1\x00PD LKAS AT USA LHD 1.01 1.01 95740-G3100 A54', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00PD MDPS C 1.00 1.00 56310G3300\x00 4PDDC100', - b'\xf1\x00PD MDPS C 1.00 1.03 56310/G3300 4PDDC103', - b'\xf1\x00PD MDPS C 1.00 1.04 56310/G3300 4PDDC104', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00PD ESC \t 104\x18\t\x03 58920-G3350', - b'\xf1\x00PD ESC \x0b 103\x17\x110 58920-G3350', - b'\xf1\x00PD ESC \x0b 104\x18\t\x03 58920-G3350', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00PD__ SCC F-CUP 1.00 1.00 96400-G3300 ', - b'\xf1\x00PD__ SCC F-CUP 1.01 1.00 96400-G3100 ', - b'\xf1\x00PD__ SCC FNCUP 1.01 1.00 96400-G3000 ', - ], - }, - CAR.HYUNDAI_ELANTRA_2021: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CN7_ SCC F-CUP 1.00 1.01 99110-AA000 ', - b'\xf1\x00CN7_ SCC FHCUP 1.00 1.01 99110-AA000 ', - b'\xf1\x00CN7_ SCC FNCUP 1.00 1.01 99110-AA000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00CN7 MDPS C 1.00 1.06 56310/AA050 4CNDC106', - b'\xf1\x00CN7 MDPS C 1.00 1.06 56310/AA070 4CNDC106', - b'\xf1\x00CN7 MDPS C 1.00 1.06 56310AA050\x00 4CNDC106', - b'\xf1\x00CN7 MDPS C 1.00 1.07 56310AA050\x00 4CNDC107', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.00 99210-AB000 200819', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.01 99210-AB000 210205', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.02 99210-AB000 220111', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.03 99210-AA000 200819', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.03 99210-AB000 220426', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.06 99210-AA000 220111', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.07 99210-AA000 220426', - b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.08 99210-AA000 220728', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00CN ESC \t 101 \x10\x03 58910-AB800', - b'\xf1\x00CN ESC \t 104 \x08\x03 58910-AA800', - b'\xf1\x00CN ESC \t 105 \x10\x03 58910-AA800', - ], - }, - CAR.HYUNDAI_ELANTRA_HEV_2021: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.03 99210-AA000 200819', - b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.05 99210-AA000 210930', - b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.07 99210-AA000 220426', - b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.08 99210-AA000 220728', - b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.09 99210-AA000 221108', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CNhe SCC FHCUP 1.00 1.01 99110-BY000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00CN7 MDPS C 1.00 1.02 56310/BY050 4CNHC102', - b'\xf1\x00CN7 MDPS C 1.00 1.03 56310/BY050 4CNHC103', - b'\xf1\x00CN7 MDPS C 1.00 1.03 56310BY050\x00 4CNHC103', - b'\xf1\x00CN7 MDPS C 1.00 1.03 56310BY0500 4CNHC103', - b'\xf1\x00CN7 MDPS C 1.00 1.04 56310BY050\x00 4CNHC104', - ], - }, - CAR.HYUNDAI_KONA_HEV: { - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00OS IEB \x01 104 \x11 58520-CM000', - b'\xf1\x00OS IEB \x03 104 \x11 58520-CM000', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00OShe SCC F-CUP 1.00 1.01 99110-CM000 ', - b'\xf1\x00OShe SCC FNCUP 1.00 1.01 99110-CM000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00OS MDPS C 1.00 1.00 56310CM020\x00 4OHDC100', - b'\xf1\x00OS MDPS C 1.00 1.00 56310CM030\x00 4OHDC100', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00OSH LKAS AT EUR LHD 1.00 1.01 95740-CM000 l31', - b'\xf1\x00OSH LKAS AT KOR LHD 1.00 1.01 95740-CM000 l31', - ], - }, - CAR.HYUNDAI_SONATA_HYBRID: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00DNhe SCC F-CUP 1.00 1.02 99110-L5000 ', - b'\xf1\x00DNhe SCC FHCUP 1.00 1.00 99110-L5000 ', - b'\xf1\x00DNhe SCC FHCUP 1.00 1.02 99110-L5000 ', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L5000 4DNHC101', - b'\xf1\x00DN8 MDPS C 1.00 1.02 56310-L5450 4DNHC102', - b'\xf1\x00DN8 MDPS C 1.00 1.02 56310-L5500 4DNHC102', - b'\xf1\x00DN8 MDPS C 1.00 1.03 56310-L5450 4DNHC103', - b'\xf1\x00DN8 MDPS C 1.00 1.03 56310L5450\x00 4DNHC104', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00DN8HMFC AT KOR LHD 1.00 1.03 99211-L1000 190705', - b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.04 99211-L1000 191016', - b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.05 99211-L1000 201109', - b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.06 99211-L1000 210325', - b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.07 99211-L1000 211223', - ], - }, - CAR.KIA_SORENTO: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00UMP LKAS AT KOR LHD 1.00 1.00 95740-C5550 S30', - b'\xf1\x00UMP LKAS AT USA LHD 1.00 1.00 95740-C6550 d00', - b'\xf1\x00UMP LKAS AT USA LHD 1.01 1.01 95740-C6550 d01', - ], - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00UM ESC \x02 12 \x18\x05\x05 58910-C6300', - b'\xf1\x00UM ESC \x0c 12 \x18\x05\x06 58910-C6330', - b'\xf1\x00UM ESC \x13 12 \x17\x07\x05 58910-C5320', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00UM__ SCC F-CUP 1.00 1.00 96400-C5500 ', - b'\xf1\x00UM__ SCC F-CUP 1.00 1.00 96400-C6500 ', - ], - }, - CAR.KIA_EV6: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CV1_ RDR ----- 1.00 1.01 99110-CV000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CV1 MFC AT EUR LHD 1.00 1.05 99210-CV000 211027', - b'\xf1\x00CV1 MFC AT EUR LHD 1.00 1.06 99210-CV000 220328', - b'\xf1\x00CV1 MFC AT EUR RHD 1.00 1.00 99210-CV100 220630', - b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.00 99210-CV100 220630', - b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.00 99210-CV200 230510', - b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.04 99210-CV000 210823', - b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.05 99210-CV000 211027', - b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.06 99210-CV000 220328', - b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.00 99210-CV100 220630', - b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.00 99210-CV200 230510', - b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.05 99210-CV000 211027', - b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.06 99210-CV000 220328', - ], - }, - CAR.KIA_EV6_PE: { # (CV1) - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CV__ RDR ----- 1.00 1.01 99110-CV500 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CV MFC AT KOR LHD 1.00 1.01 99210-CV500 240405', - ], - }, - CAR.HYUNDAI_IONIQ_5: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00NE1_ RDR ----- 1.00 1.00 99110-GI000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00NE1 MFC AT CAN LHD 1.00 1.01 99211-GI010 211007', - b'\xf1\x00NE1 MFC AT CAN LHD 1.00 1.05 99211-GI010 220614', - b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.00 99211-GI100 230915', - b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.01 99211-GI010 211007', - b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.01 99211-GI100 240110', - b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.03 99211-GI010 220401', - b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.06 99211-GI000 210813', - b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.06 99211-GI010 230110', - b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.01 99211-GI010 211007', - b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.01 99211-GI100 240110', - b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.02 99211-GI010 211206', - b'\xf1\x00NE1 MFC AT IND RHD 1.00 1.07 99211-GI010 230620', - b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.00 99211-GI020 230719', - b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.01 99211-GI010 211007', - b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.05 99211-GI010 220614', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.00 99211-GI020 230719', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.00 99211-GI100 230915', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.01 99211-GI010 211007', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.02 99211-GI010 211206', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.03 99211-GI010 220401', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.05 99211-GI010 220614', - b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.06 99211-GI010 230110', - ], - }, - CAR.HYUNDAI_IONIQ_5_PE: { # (NE1) - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00NE__ RDR ----- 1.00 1.00 99110-GI500 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00NE MFC AT KOR LHD 1.00 1.02 99211-GI500 240221', - ], - }, - CAR.HYUNDAI_IONIQ_5_N: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00NE1N RDR ----- 1.00 1.00 99110-NI000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00NE1NMFC AT KOR LHD 1.00 1.04 99211-NI000 231219', - b'\xf1\x00NE1NMFC AT USA LHD 1.00 1.04 99211-NI000 231219', - ], - }, - CAR.HYUNDAI_IONIQ_6: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00CE__ RDR ----- 1.00 1.01 99110-KL000 ', - b'\xf1\x00CE__ RDR ----- 1.00 1.02 99110-KL000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00CE MFC AT CAN LHD 1.00 1.04 99211-KL000 221213', - b'\xf1\x00CE MFC AT EUR LHD 1.00 1.03 99211-KL000 221011', - b'\xf1\x00CE MFC AT EUR LHD 1.00 1.04 99211-KL000 221213', - b'\xf1\x00CE MFC AT USA LHD 1.00 1.04 99211-KL000 221213', - b'\xf1\x00CE MFC AT USA LHD 1.00 1.06 99211-KL000 230915', - ], - }, - CAR.HYUNDAI_IONIQ_9: { - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00MEev RDR ----- 1.00 1.00 99110-GO000 ', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00ME MFC AT KOR LHD 1.00 1.00 99211-GO000 241007', - ], - }, - CAR.HYUNDAI_TUCSON_4TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00NX4 FR_CMR AT CAN LHD 1.00 1.00 99211-N9260 14Y', - b'\xf1\x00NX4 FR_CMR AT CAN LHD 1.00 1.01 99211-N9100 14A', - b'\xf1\x00NX4 FR_CMR AT EUR LHD 1.00 1.00 99211-N9220 14K', - b'\xf1\x00NX4 FR_CMR AT EUR LHD 1.00 2.02 99211-N9000 14E', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9210 14G', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9220 14K', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9240 14Q', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9250 14W', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9260 14Y', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.01 99211-N9100 14A', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.01 99211-N9240 14T', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00NX4__ 1.00 1.00 99110-N9100 ', - b'\xf1\x00NX4__ 1.00 1.01 99110-N9000 ', - b'\xf1\x00NX4__ 1.00 1.02 99110-N9000 ', - b'\xf1\x00NX4__ 1.01 1.00 99110-N9100 ', - ], - }, - CAR.HYUNDAI_SANTA_CRUZ_1ST_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-CW000 14M', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-CW010 14X', - b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-CW020 14Z', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00NX4__ 1.00 1.00 99110-K5000 ', - b'\xf1\x00NX4__ 1.01 1.00 99110-K5000 ', - ], - }, - CAR.KIA_SPORTAGE_5TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00NQ5 FR_CMR AT AUS RHD 1.00 1.00 99211-P1040 663', - b'\xf1\x00NQ5 FR_CMR AT EUR LHD 1.00 1.00 99211-P1040 663', - b'\xf1\x00NQ5 FR_CMR AT GEN LHD 1.00 1.00 99211-P1060 665', - b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1030 662', - b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1040 663', - b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1060 665', - b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1070 690', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00NQ5__ 1.00 1.02 99110-P1000 ', - b'\xf1\x00NQ5__ 1.00 1.03 99110-CH000 ', - b'\xf1\x00NQ5__ 1.00 1.03 99110-P1000 ', - b'\xf1\x00NQ5__ 1.01 1.03 99110-CH000 ', - b'\xf1\x00NQ5__ 1.01 1.03 99110-P1000 ', - ], - }, - CAR.GENESIS_GV70_1ST_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JK1 MFC AT CAN LHD 1.00 1.02 99211-IY000 230627', - b'\xf1\x00JK1 MFC AT USA LHD 1.00 1.01 99211-AR200 220125', - b'\xf1\x00JK1 MFC AT USA LHD 1.00 1.01 99211-AR300 220125', - b'\xf1\x00JK1 MFC AT USA LHD 1.00 1.04 99211-AR000 210204', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JK1_ SCC FHCUP 1.00 1.00 99110-AR200 ', - b'\xf1\x00JK1_ SCC FHCUP 1.00 1.00 99110-AR300 ', - b'\xf1\x00JK1_ SCC FHCUP 1.00 1.00 99110-IY000 ', - b'\xf1\x00JK1_ SCC FHCUP 1.00 1.02 99110-AR000 ', - ], - }, - CAR.GENESIS_GV70_ELECTRIFIED_1ST_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JK1EMFC AT AUS RHD 1.00 1.01 99211-DS100 220125', - b'\xf1\x00JK1EMFC AT USA LHD 1.00 1.00 99211-IT100 220919', - b'\xf1\x00JK1EMFC AT USA LHD 1.00 1.01 99211-IT100 230628', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JKev SCC ----- 1.00 1.01 99110-DS000 ', - ], - }, - - CAR.HYUNDAI_NEXO_1ST_GEN: { - (Ecu.abs, 0x7d1, None): [ - b'\xf1\x00FE IEB \x01 312 \x11\x13 58520-M5000', - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00FE MFC AT KOR LHD 1.00 1.00 99211-M5100 201218', - b'\xf1\x00FE MFC AT KOR LHD 1.00 1.02 99211-M5100 220405', - ], - (Ecu.eps, 0x7d4, None): [ - b'\xf1\x00FE MDPS C 1.00 1.05 56340-M5000 9903', - b'\xf1\x00FE MDPS C 1.00 1.06 56340-M5000 1625', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00FE__ SCC FHCUP 1.00 1.05 99110-M5000 ', - ], - }, - - CAR.GENESIS_GV60_EV_1ST_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JW1 MFC AT AUS RHD 1.00 1.03 99211-CU100 221118', - b'\xf1\x00JW1 MFC AT USA LHD 1.00 1.02 99211-CU000 211215', - b'\xf1\x00JW1 MFC AT USA LHD 1.00 1.02 99211-CU100 211215', - b'\xf1\x00JW1 MFC AT USA LHD 1.00 1.03 99211-CU000 221118', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JW1_ RDR ----- 1.00 1.00 99110-CU000 ', - ], - }, - CAR.KIA_SORENTO_4TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.00 99210-R5100 221019', - b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.03 99210-R5000 200903', - b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.05 99210-R5000 210623', - b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.06 99210-R5000 211216', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00MQ4_ SCC F-CUP 1.00 1.06 99110-P2000 ', - b'\xf1\x00MQ4_ SCC FHCUP 1.00 1.00 99110-R5000 ', - b'\xf1\x00MQ4_ SCC FHCUP 1.00 1.06 99110-P2000 ', - b'\xf1\x00MQ4_ SCC FHCUP 1.00 1.08 99110-P2000 ', - ], - }, - CAR.KIA_SORENTO_HEV_4TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00MQ4HMFC AT KOR LHD 1.00 1.04 99210-P2000 200330', - b'\xf1\x00MQ4HMFC AT KOR LHD 1.00 1.12 99210-P2000 230331', - b'\xf1\x00MQ4HMFC AT USA LHD 1.00 1.10 99210-P2000 210406', - b'\xf1\x00MQ4HMFC AT USA LHD 1.00 1.11 99210-P2000 211217', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00MQhe SCC FHCUP 1.00 1.04 99110-P4000 ', - b'\xf1\x00MQhe SCC FHCUP 1.00 1.06 99110-P4000 ', - b'\xf1\x00MQhe SCC FHCUP 1.00 1.07 99110-P4000 ', - ], - }, - CAR.KIA_NIRO_HEV_2ND_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00SG2HMFC AT USA LHD 1.01 1.08 99211-AT000 220531', - b'\xf1\x00SG2HMFC AT USA LHD 1.01 1.09 99211-AT000 220801', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00SG2_ RDR ----- 1.00 1.01 99110-AT000 ', - ], - }, - CAR.GENESIS_GV80: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00JX1 MFC AT USA LHD 1.00 1.02 99211-T6110 220513', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00JX1_ SCC FHCUP 1.00 1.01 99110-T6100 ', - ], - }, - CAR.KIA_CARNIVAL_4TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00KA4 MFC AT EUR LHD 1.00 1.06 99210-R0000 220221', - b'\xf1\x00KA4 MFC AT KOR LHD 1.00 1.05 99210-R0000 201221', - b'\xf1\x00KA4 MFC AT KOR LHD 1.00 1.06 99210-R0000 220221', - b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.00 99210-R0100 230105', - b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.01 99210-R0100 230710', - b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.05 99210-R0000 201221', - b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.06 99210-R0000 220221', - b'\xf1\x00KA4CMFC AT CHN LHD 1.00 1.01 99211-I4000 210525', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00KA4_ SCC F-CUP 1.00 1.03 99110-R0000 ', - b'\xf1\x00KA4_ SCC FHCUP 1.00 1.00 99110-R0100 ', - b'\xf1\x00KA4_ SCC FHCUP 1.00 1.02 99110-R0000 ', - b'\xf1\x00KA4_ SCC FHCUP 1.00 1.03 99110-R0000 ', - b'\xf1\x00KA4c SCC FHCUP 1.00 1.01 99110-I4000 ', - ], - }, - CAR.KIA_K8_HEV_1ST_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00GL3HMFC AT KOR LHD 1.00 1.03 99211-L8000 210907', - b'\xf1\x00GL3HMFC AT KOR LHD 1.00 1.04 99211-L8000 230207', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00GL3_ RDR ----- 1.00 1.02 99110-L8000 ', - ], - }, - CAR.HYUNDAI_STARIA_4TH_GEN: { - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00US4 MFC AT KOR LHD 1.00 1.06 99211-CG000 230524', - ], - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00US4_ RDR ----- 1.00 1.00 99110-CG000 ', - ], - }, - CAR.KIA_EV9: { # (MV) - (Ecu.fwdRadar, 0x7d0, None): [ - b'\xf1\x00MV__ RDR ----- 1.00 1.02 99110-DO700 ', - b'\xf1\x00MV__ RDR ----- 1.00 1.02 99110-DO000 ' - ], - (Ecu.fwdCamera, 0x7c4, None): [ - b'\xf1\x00MV MFC AT KOR LHD 1.00 1.01 99211-DO000 230419', - b'\xf1\x00MV MFC AT USA LHD 1.00 1.02 99211-DO000 230616', - b'\xf1\x00MV MFC AT EUR LHD 1.00 1.02 99211-DO000 230616', - ], - }, - CAR.KIA_EV3: { # (SV1) - (Ecu.fwdRadar, 0x7d0, None): [ - ], - (Ecu.fwdCamera, 0x7c4, None): [ - ], - }, - CAR.HYUNDAI_SANTAFE_MX5: { # (MX5) - (Ecu.fwdRadar, 0x7d0, None): [ - ], - (Ecu.fwdCamera, 0x7c4, None): [ - ], - }, - CAR.HYUNDAI_SANTAFE_MX5_HEV: { # (MX5) - (Ecu.fwdRadar, 0x7d0, None): [ - ], - (Ecu.fwdCamera, 0x7c4, None): [ - ], - }, -} diff --git a/opendbc_repo/opendbc/car/hyundai/hyundaican.py b/opendbc_repo/opendbc/car/hyundai/hyundaican.py deleted file mode 100644 index eaaccf95a7..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/hyundaican.py +++ /dev/null @@ -1,383 +0,0 @@ -import copy -import crcmod -from opendbc.car.hyundai.values import CAR, HyundaiFlags - -hyundai_checksum = crcmod.mkCrcFun(0x11D, initCrc=0xFD, rev=False, xorOut=0xdf) - -def create_lkas11(packer, frame, CP, apply_torque, steer_req, - torque_fault, lkas11, sys_warning, sys_state, enabled, - left_lane, right_lane, - left_lane_depart, right_lane_depart, is_ldws_car): - values = {s: lkas11[s] for s in [ - "CF_Lkas_LdwsActivemode", - "CF_Lkas_LdwsSysState", - "CF_Lkas_SysWarning", - "CF_Lkas_LdwsLHWarning", - "CF_Lkas_LdwsRHWarning", - "CF_Lkas_HbaLamp", - "CF_Lkas_FcwBasReq", - "CF_Lkas_HbaSysState", - "CF_Lkas_FcwOpt", - "CF_Lkas_HbaOpt", - "CF_Lkas_FcwSysState", - "CF_Lkas_FcwCollisionWarning", - "CF_Lkas_FusionState", - "CF_Lkas_FcwOpt_USM", - "CF_Lkas_LdwsOpt_USM", - ]} - values["CF_Lkas_LdwsSysState"] = sys_state - values["CF_Lkas_SysWarning"] = 0 # 3 if sys_warning else 0 - values["CF_Lkas_LdwsLHWarning"] = left_lane_depart - values["CF_Lkas_LdwsRHWarning"] = right_lane_depart - values["CR_Lkas_StrToqReq"] = apply_torque - values["CF_Lkas_ActToi"] = steer_req - values["CF_Lkas_ToiFlt"] = torque_fault # seems to allow actuation on CR_Lkas_StrToqReq - values["CF_Lkas_MsgCount"] = frame % 0x10 - - if CP.flags & HyundaiFlags.SEND_LFA.value or CP.carFingerprint in (CAR.HYUNDAI_SANTA_FE): - values["CF_Lkas_LdwsActivemode"] = int(left_lane) + (int(right_lane) << 1) - values["CF_Lkas_LdwsOpt_USM"] = 2 - - # FcwOpt_USM 5 = Orange blinking car + lanes - # FcwOpt_USM 4 = Orange car + lanes - # FcwOpt_USM 3 = Green blinking car + lanes - # FcwOpt_USM 2 = Green car + lanes - # FcwOpt_USM 1 = White car + lanes - # FcwOpt_USM 0 = No car + lanes - values["CF_Lkas_FcwOpt_USM"] = 2 if enabled else 1 - - # SysWarning 4 = keep hands on wheel - # SysWarning 5 = keep hands on wheel (red) - # SysWarning 6 = keep hands on wheel (red) + beep - # Note: the warning is hidden while the blinkers are on - values["CF_Lkas_SysWarning"] = 0 #4 if sys_warning else 0 - - # Likely cars lacking the ability to show individual lane lines in the dash - elif CP.carFingerprint in (CAR.KIA_OPTIMA_G4, CAR.KIA_OPTIMA_G4_FL): - # SysWarning 4 = keep hands on wheel + beep - values["CF_Lkas_SysWarning"] = 4 if sys_warning else 0 - - # SysState 0 = no icons - # SysState 1-2 = white car + lanes - # SysState 3 = green car + lanes, green steering wheel - # SysState 4 = green car + lanes - values["CF_Lkas_LdwsSysState"] = 3 if enabled else 1 - values["CF_Lkas_LdwsOpt_USM"] = 2 # non-2 changes above SysState definition - - # these have no effect - values["CF_Lkas_LdwsActivemode"] = 0 - values["CF_Lkas_FcwOpt_USM"] = 0 - - elif CP.carFingerprint == CAR.HYUNDAI_GENESIS: - # This field is actually LdwsActivemode - # Genesis and Optima fault when forwarding while engaged - values["CF_Lkas_LdwsActivemode"] = 2 - - if is_ldws_car: - values["CF_Lkas_LdwsOpt_USM"] = 3 - - dat = packer.make_can_msg("LKAS11", 0, values)[1] - - if CP.flags & HyundaiFlags.CHECKSUM_CRC8: - # CRC Checksum as seen on 2019 Hyundai Santa Fe - dat = dat[:6] + dat[7:8] - checksum = hyundai_checksum(dat) - elif CP.flags & HyundaiFlags.CHECKSUM_6B: - # Checksum of first 6 Bytes, as seen on 2018 Kia Sorento - checksum = sum(dat[:6]) % 256 - else: - # Checksum of first 6 Bytes and last Byte as seen on 2018 Kia Stinger - checksum = (sum(dat[:6]) + dat[7]) % 256 - - values["CF_Lkas_Chksum"] = checksum - - return packer.make_can_msg("LKAS11", 0, values) - - -def create_clu11(packer, frame, clu11, button, CP): - values = {s: clu11[s] for s in [ - "CF_Clu_CruiseSwState", - "CF_Clu_CruiseSwMain", - "CF_Clu_SldMainSW", - "CF_Clu_ParityBit1", - "CF_Clu_VanzDecimal", - "CF_Clu_Vanz", - "CF_Clu_SPEED_UNIT", - "CF_Clu_DetentOut", - "CF_Clu_RheostatLevel", - "CF_Clu_CluInfo", - "CF_Clu_AmpInfo", - "CF_Clu_AliveCnt1", - ]} - values["CF_Clu_CruiseSwState"] = button - values["CF_Clu_AliveCnt1"] = frame % 0x10 - # send buttons to camera on camera-scc based cars - bus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC else 0 - return packer.make_can_msg("CLU11", bus, values) - - -def create_lfahda_mfc(packer, CC, blinking_signal): - activeCarrot = CC.hudControl.activeCarrot - values = { - "LFA_Icon_State": 2 if CC.latActive else 1 if CC.enabled else 0, - #"HDA_Active": 1 if activeCarrot >= 2 else 0, - #"HDA_Icon_State": 2 if activeCarrot == 3 and blinking_signal else 2 if activeCarrot >= 2 else 0, - "HDA_Icon_State": 0 if activeCarrot == 3 and blinking_signal else 2 if activeCarrot >= 1 else 0, - "HDA_VSetReq": 0, #set_speed_in_units if activeCarrot >= 2 else 0, - "HDA_USM" : 2, - "HDA_Icon_Wheel" : 1 if CC.latActive else 0, - #"HDA_Chime" : 1 if CC.latActive else 0, # comment for K9 chime, - } - return packer.make_can_msg("LFAHDA_MFC", 0, values) - -def create_acc_commands_scc(packer, enabled, accel, jerk, idx, hud_control, set_speed, stopping, long_override, use_fca, CS, soft_hold_mode): - from opendbc.car.hyundai.carcontroller import HyundaiJerk - cruise_available = CS.out.cruiseState.available - if CS.paddle_button_prev > 0: - cruise_available = False - soft_hold_active = CS.softHoldActive - soft_hold_info = soft_hold_active > 1 and enabled - #soft_hold_mode = 2 ## some cars can't enable while braking - long_enabled = enabled or (soft_hold_active > 0 and soft_hold_mode == 2) - stop_req = 1 if stopping or (soft_hold_active > 0 and soft_hold_mode == 2) else 0 - d = hud_control.leadDistance - objGap = 0 if d == 0 else 2 if d < 25 else 3 if d < 40 else 4 if d < 70 else 5 - objGap2 = 0 if objGap == 0 else 2 if hud_control.leadRelSpeed < -0.2 else 1 - - if long_enabled: - if jerk.carrot_cruise == 1: - long_enabled = False - accel = -0.5 - elif jerk.carrot_cruise == 2: - accel = jerk.carrot_cruise_accel - - if long_enabled: - scc12_acc_mode = 2 if long_override else 1 - scc14_acc_mode = 2 if long_override else 1 - if CS.out.brakeHoldActive: - scc12_acc_mode = 0 - scc14_acc_mode = 4 - elif CS.out.brakePressed: - scc12_acc_mode = 1 - scc14_acc_mode = 1 - else: - scc12_acc_mode = 0 - scc14_acc_mode = 4 - - warning_front = False - - commands = [] - if CS.scc11 is not None: - values = copy.copy(CS.scc11) - values["MainMode_ACC"] = 1 if cruise_available else 0 - values["TauGapSet"] = hud_control.leadDistanceBars - values["VSetDis"] = set_speed if enabled else 0 - values["AliveCounterACC"] = idx % 0x10 - values["SCCInfoDisplay"] = 3 if warning_front else 4 if soft_hold_info else 0 if enabled else 0 #2: 크루즈 선택, 3: 전방상황주의, 4: 출발준비 - values["ObjValid"] = 1 if hud_control.leadVisible else 0 - values["ACC_ObjStatus"] = 1 if hud_control.leadVisible else 0 - values["ACC_ObjLatPos"] = 0 - values["ACC_ObjRelSpd"] = hud_control.leadRelSpeed - values["ACC_ObjDist"] = int(hud_control.leadDistance) - values["DriverAlertDisplay"] = 0 - commands.append(packer.make_can_msg("SCC11", 0, values)) - - if CS.scc12 is not None: - values = copy.copy(CS.scc12) - values["ACCMode"] = scc12_acc_mode #2 if enabled and long_override else 1 if long_enabled else 0 - values["StopReq"] = stop_req - values["aReqRaw"] = accel - values["aReqValue"] = accel - values["ACCFailInfo"] = 0 - - #values["DESIRED_DIST"] = CS.out.vEgo * 1.0 + 4.0 # TF: 1.0 + STOPDISTANCE 4.0 m로 가정함. - - values["CR_VSM_ChkSum"] = 0 - values["CR_VSM_Alive"] = idx % 0xF - scc12_dat = packer.make_can_msg("SCC12", 0, values)[1] - values["CR_VSM_ChkSum"] = 0x10 - sum(sum(divmod(i, 16)) for i in scc12_dat) % 0x10 - - commands.append(packer.make_can_msg("SCC12", 0, values)) - - if CS.scc14 is not None: - values = copy.copy(CS.scc14) - values["ComfortBandUpper"] = jerk.cb_upper - values["ComfortBandLower"] = jerk.cb_lower - values["JerkUpperLimit"] = jerk.jerk_u - values["JerkLowerLimit"] = jerk.jerk_l if long_enabled else 0 # for KONA test - values["ACCMode"] = scc14_acc_mode #2 if enabled and long_override else 1 if long_enabled else 4 # stock will always be 4 instead of 0 after first disengage - values["ObjGap"] = objGap #2 if hud_control.leadVisible else 0 # 5: >30, m, 4: 25-30 m, 3: 20-25 m, 2: < 20 m, 0: no lead - values["ObjDistStat"] = objGap2 - commands.append(packer.make_can_msg("SCC14", 0, values)) - - if CS.fca11 is not None and use_fca: # CASPER_EV의 경우 FCA11에서 fail이 간헐적 발생함.. 그냥막자.. 원인불명.. - values = copy.copy(CS.fca11) - if values["FCA_Failinfo"] != 0: - values["FCA_Status"] = 2 - values["FCA_Failinfo"] = 0 - fca11_dat = packer.make_can_msg("FCA11", 0, values)[1] - values["CR_FCA_ChkSum"] = hyundai_checksum(fca11_dat[:7]) - commands.append(packer.make_can_msg("FCA11", 0, values)) - # Only send FCA11 on cars where it exists on the bus - if False: #use_fca: - # note that some vehicles most likely have an alternate checksum/counter definition - # https://github.com/commaai/opendbc/commit/9ddcdb22c4929baf310295e832668e6e7fcfa602 - fca11_values = { - "CR_FCA_Alive": idx % 0xF, - "PAINT1_Status": 1, - "FCA_DrvSetStatus": 1, - "FCA_Status": 1, # AEB disabled - } - fca11_dat = packer.make_can_msg("FCA11", 0, fca11_values)[1] - fca11_values["CR_FCA_ChkSum"] = hyundai_checksum(fca11_dat[:7]) - commands.append(packer.make_can_msg("FCA11", 0, fca11_values)) - - return commands - -def create_acc_opt_copy(CS, packer): - values = copy.copy(CS.scc13) - if values["NEW_SIGNAL_1"] == 255: - values["NEW_SIGNAL_1"] = 218 - values["NEW_SIGNAL_2"] = 0 - return packer.make_can_msg("SCC13", 0, CS.scc13) - -def create_acc_commands(packer, enabled, accel, jerk, idx, hud_control, set_speed, stopping, long_override, use_fca, CP, CS, soft_hold_mode): - from opendbc.car.hyundai.carcontroller import HyundaiJerk - cruise_available = CS.out.cruiseState.available - soft_hold_active = CS.softHoldActive - soft_hold_info = soft_hold_active > 1 and enabled - #soft_hold_mode = 2 ## some cars can't enable while braking - long_enabled = enabled or (soft_hold_active > 0 and soft_hold_mode == 2) - stop_req = 1 if stopping or (soft_hold_active > 0 and soft_hold_mode == 2) else 0 - d = hud_control.leadDistance - objGap = 0 if d == 0 else 2 if d < 25 else 3 if d < 40 else 4 if d < 70 else 5 - objGap2 = 0 if objGap == 0 else 2 if hud_control.leadRelSpeed < -0.2 else 1 - - if long_enabled: - scc12_acc_mode = 2 if long_override else 1 - scc14_acc_mode = 2 if long_override else 1 - if CS.out.brakeHoldActive: - scc12_acc_mode = 0 - scc14_acc_mode = 4 - elif CS.out.brakePressed: - scc12_acc_mode = 1 - scc14_acc_mode = 1 - else: - scc12_acc_mode = 0 - scc14_acc_mode = 4 - - warning_front = False - - commands = [] - - scc11_values = { - "MainMode_ACC": 1 if cruise_available else 0, - "TauGapSet": hud_control.leadDistanceBars, - "VSetDis": set_speed if enabled else 0, - "AliveCounterACC": idx % 0x10, - "SCCInfoDisplay": 3 if warning_front else 4 if soft_hold_info else 0 if enabled else 0, - "ObjValid": 1 if hud_control.leadVisible else 0, # close lead makes controls tighter - "ACC_ObjStatus": 1 if hud_control.leadVisible else 0, # close lead makes controls tighter - "ACC_ObjLatPos": 0, - "ACC_ObjRelSpd": hud_control.leadRelSpeed, - "ACC_ObjDist": int(hud_control.leadDistance), # close lead makes controls tighter - "DriverAlertDisplay": 0, - } - commands.append(packer.make_can_msg("SCC11", 0, scc11_values)) - - scc12_values = { - "ACCMode": scc12_acc_mode, - "StopReq": stop_req, - "aReqRaw": 0 if stop_req > 0 else accel, - "aReqValue": accel, # stock ramps up and down respecting jerk limit until it reaches aReqRaw - #"DESIRED_DIST": CS.out.vEgo * 1.0 + 4.0, - "CR_VSM_Alive": idx % 0xF, - } - - # show AEB disabled indicator on dash with SCC12 if not sending FCA messages. - # these signals also prevent a TCS fault on non-FCA cars with alpha longitudinal - if not use_fca: - scc12_values["CF_VSM_ConfMode"] = 1 - scc12_values["AEB_Status"] = 1 # AEB disabled - - scc12_dat = packer.make_can_msg("SCC12", 0, scc12_values)[1] - scc12_values["CR_VSM_ChkSum"] = 0x10 - sum(sum(divmod(i, 16)) for i in scc12_dat) % 0x10 - - commands.append(packer.make_can_msg("SCC12", 0, scc12_values)) - - scc14_values = { - "ComfortBandUpper": jerk.cb_upper, # stock usually is 0 but sometimes uses higher values - "ComfortBandLower": jerk.cb_lower, # stock usually is 0 but sometimes uses higher values - "JerkUpperLimit": jerk.jerk_u, # stock usually is 1.0 but sometimes uses higher values - "JerkLowerLimit": jerk.jerk_l, # stock usually is 0.5 but sometimes uses higher values - "ACCMode": scc14_acc_mode, # if enabled and long_override else 1 if enabled else 4, # stock will always be 4 instead of 0 after first disengage - "ObjGap": objGap, #2 if hud_control.leadVisible else 0, # 5: >30, m, 4: 25-30 m, 3: 20-25 m, 2: < 20 m, 0: no lead - "ObjDistStat": objGap2, - } - commands.append(packer.make_can_msg("SCC14", 0, scc14_values)) - - # Only send FCA11 on cars where it exists on the bus - # On Camera SCC cars, FCA11 is not disabled, so we forward stock FCA11 back to the car forward hooks - if use_fca and not (CP.flags & HyundaiFlags.CAMERA_SCC): - # note that some vehicles most likely have an alternate checksum/counter definition - # https://github.com/commaai/opendbc/commit/9ddcdb22c4929baf310295e832668e6e7fcfa602 - fca11_values = { - "CR_FCA_Alive": idx % 0xF, - "PAINT1_Status": 1, - "FCA_DrvSetStatus": 1, - "FCA_Status": 1, # AEB disabled - } - fca11_dat = packer.make_can_msg("FCA11", 0, fca11_values)[1] - fca11_values["CR_FCA_ChkSum"] = hyundai_checksum(fca11_dat[:7]) - commands.append(packer.make_can_msg("FCA11", 0, fca11_values)) - - return commands - -def create_acc_opt(packer, CP): - commands = [] - - scc13_values = { - "SCCDrvModeRValue": 2, - "SCC_Equip": 1, - "Lead_Veh_Dep_Alert_USM": 2, - } - commands.append(packer.make_can_msg("SCC13", 0, scc13_values)) - - # TODO: this needs to be detected and conditionally sent on unsupported long cars - # On Camera SCC cars, FCA12 is not disabled, so we forward stock FCA12 back to the car forward hooks - if not (CP.flags & HyundaiFlags.CAMERA_SCC): - fca12_values = { - "FCA_DrvSetState": 2, - "FCA_USM": 1, # AEB disabled - } - commands.append(packer.make_can_msg("FCA12", 0, fca12_values)) - - return commands - -def create_frt_radar_opt(packer): - frt_radar11_values = { - "CF_FCA_Equip_Front_Radar": 1, - } - return packer.make_can_msg("FRT_RADAR11", 0, frt_radar11_values) - -def create_clu11_button(packer, frame, clu11, button, CP): - values = clu11 - values["CF_Clu_CruiseSwState"] = button - #values["CF_Clu_AliveCnt1"] = frame % 0x10 - values["CF_Clu_AliveCnt1"] = (values["CF_Clu_AliveCnt1"] + 1) % 0x10 - # send buttons to camera on camera-scc based cars - bus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC else 0 - return packer.make_can_msg("CLU11", bus, values) - -def create_mdps12(packer, frame, mdps12): - values = mdps12 - values["CF_Mdps_ToiActive"] = 0 - values["CF_Mdps_ToiUnavail"] = 1 - values["CF_Mdps_MsgCount2"] = frame % 0x100 - values["CF_Mdps_Chksum2"] = 0 - - dat = packer.make_can_msg("MDPS12", 2, values)[1] - checksum = sum(dat) % 256 - values["CF_Mdps_Chksum2"] = checksum - - return packer.make_can_msg("MDPS12", 2, values) diff --git a/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py b/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py deleted file mode 100644 index 8a6a1fdb05..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py +++ /dev/null @@ -1,1113 +0,0 @@ -import copy -import numpy as np -from opendbc.car import CanBusBase -from opendbc.car.crc import CRC16_XMODEM -from opendbc.car.hyundai.values import HyundaiFlags, HyundaiExtFlags -from openpilot.common.params import Params -from opendbc.car.common.conversions import Conversions as CV -from cereal import log - -LaneChangeState = log.LaneChangeState -LaneChangeDirection = log.LaneChangeDirection -TurnDirection = log.Desire - - -def hyundai_crc8(data: bytes) -> int: - poly = 0x2F - crc = 0xFF - - for byte in data: - crc ^= byte - for _ in range(8): - if crc & 0x80: - crc = ((crc << 1) ^ poly) & 0xFF - else: - crc = (crc << 1) & 0xFF - - return crc ^ 0xFF - -class CanBus(CanBusBase): - def __init__(self, CP, fingerprint=None, lka_steering=None) -> None: - super().__init__(CP, fingerprint) - - if lka_steering is None: - lka_steering = CP.flags & HyundaiFlags.CANFD_HDA2.value if CP is not None else False - - # On the CAN-FD platforms, the LKAS camera is on both A-CAN and E-CAN. LKA steering cars - # have a different harness than the LFA steering variants in order to split - # a different bus, since the steering is done by different ECUs. - self._a, self._e = 1, 0 - if lka_steering and Params().get_int("HyundaiCameraSCC") == 0: #배선개조는 무조건 Bus0가 ECAN임. - self._a, self._e = 0, 1 - - self._a += self.offset - self._e += self.offset - self._cam = 2 + self.offset - - @property - def ECAN(self): - return self._e - - @property - def ACAN(self): - return self._a - - @property - def CAM(self): - return self._cam - -# CAN LIST (CAM) - 롱컨개조시... ADAS + CAM -# 160: ADRV_0x160 -# 1da: ADRV_0x1da -# 1ea: ADRV_0x1ea -# 200: ADRV_0x200 -# 345: ADRV_0x345 -# 1fa: CLUSTER_SPEED_LIMIT -# 12a: LFA -# 1e0: LFAHDA_CLUSTER -# 11a: -# 1b5: -# 1a0: SCC_CONTROL - -# CAN LIST (ACAN) -# 160: ADRV_0x160 -# 51: ADRV_0x51 -# 180: CAM_0x180 -# ... -# 185: CAM_0x185 -# 1b6: CAM_0x1b6 -# ... -# 1b9: CAM_0x1b9 -# 1fb: CAM_0x1fb -# 2a2 - 2a4 -# 2bb - 2be -# LKAS -# 201 - 2a0 - - - -def create_steering_messages_camera_scc(frame, packer, CP, CAN, CC, lat_active, apply_steer, CS, apply_angle, max_torque, angle_control): - - emergency_steering = False - if CS.adrv_info_161 is not None: - values = CS.adrv_info_161 - emergency_steering = values["ALERTS_1"] in [11, 12, 13, 14, 15, 21, 22, 23, 24, 25, 26] - - - ret = [] - values = copy.copy(CS.mdps_info) - if angle_control: - if CS.lfa_alt_info is not None: - values["LFA2_ACTIVE"] = CS.lfa_alt_info["LKAS_ANGLE_ACTIVE"] - else: - if CS.lfa_info is not None: - values["LKA_ACTIVE"] = 1 if CS.lfa_info["STEER_REQ"] == 1 else 0 - - if frame % 1000 < 40: - values["STEERING_COL_TORQUE"] += 220 - ret.append(packer.make_can_msg("MDPS", CAN.CAM, values)) - - if frame % 10 == 0: - if CS.steer_touch_info is not None: - values = copy.copy(CS.steer_touch_info) - if frame % 1000 < 40: - values["TOUCH_DETECT"] = 3 - values["TOUCH1"] = 50 - values["TOUCH2"] = 50 - values["CHECKSUM_"] = 0 - dat = packer.make_can_msg("STEER_TOUCH_2AF", 0, values)[1] - values["CHECKSUM_"] = hyundai_crc8(dat[1:8]) - - ret.append(packer.make_can_msg("STEER_TOUCH_2AF", CAN.CAM, values)) - - if angle_control: - if emergency_steering: - values = copy.copy(CS.lfa_alt_info) - else: - values = {} #CS.lfa_alt_info - values["LKAS_ANGLE_ACTIVE"] = 2 if CC.latActive else 1 - values["LKAS_ANGLE_CMD"] = -apply_angle - values["LKAS_ANGLE_MAX_TORQUE"] = max_torque if CC.latActive else 0 - ret.append(packer.make_can_msg("LFA_ALT", CAN.ECAN, values)) - - values = copy.copy(CS.lfa_info) - if not emergency_steering: - values["LKA_MODE"] = 0 - values["LKA_ICON"] = 2 if CC.latActive else 1 - values["TORQUE_REQUEST"] = -1024 # apply_steer, - values["VALUE63"] = 0 # LKA_ASSIST - values["STEER_REQ"] = 0 # 1 if lat_active else 0, - values["HAS_LANE_SAFETY"] = 0 # hide LKAS settings - values["LKA_ACTIVE"] = 3 if CC.latActive else 0 # this changes sometimes, 3 seems to indicate engaged - values["VALUE64"] = 0 #STEER_MODE, NEW_SIGNAL_2 - values["LKAS_ANGLE_CMD"] = -25.6 #-apply_angle, - values["LKAS_ANGLE_ACTIVE"] = 0 #2 if lat_active else 1, - values["LKAS_ANGLE_MAX_TORQUE"] = 0 #max_torque if lat_active else 0, - values["NEW_SIGNAL_1"] = 10 - - else: - values = {} - values["LKA_MODE"] = 2 - values["LKA_ICON"] = 2 if lat_active else 1 - values["TORQUE_REQUEST"] = apply_steer - values["STEER_REQ"] = 1 if lat_active else 0 - values["VALUE64"] = 0 # STEER_MODE, NEW_SIGNAL_2 - values["HAS_LANE_SAFETY"] = 0 - values["LKA_ACTIVE"] = 0 # NEW_SIGNAL_1 - - values["DampingGain"] = 0 if lat_active else 100 - #values["VALUE63"] = 0 - - #values["VALUE82_SET256"] = 0 - - ret.append(packer.make_can_msg("LFA", CAN.ECAN, values)) - - return ret - -def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer, apply_angle, max_torque, angle_control): - - ret = [] - if angle_control: - values = { - "LKA_MODE": 0, - "LKA_ICON": 2 if enabled else 1, - "TORQUE_REQUEST": 0, # apply_steer, - "VALUE63": 0, # LKA_ASSIST - "STEER_REQ": 0, # 1 if lat_active else 0, - "HAS_LANE_SAFETY": 0, # hide LKAS settings - "LKA_ACTIVE": 3 if lat_active else 0, # this changes sometimes, 3 seems to indicate engaged - "VALUE64": 0, #STEER_MODE, NEW_SIGNAL_2 - "LKAS_ANGLE_CMD": -apply_angle, - "LKAS_ANGLE_ACTIVE": 2 if lat_active else 1, - "LKAS_ANGLE_MAX_TORQUE": max_torque if lat_active else 0, - - # test for EV6PE - "NEW_SIGNAL_1": 10, #2, - "DampingGain": 9, - "VALUE231": 146, - "VALUE239": 1, - "VALUE247": 255, - "VALUE255": 255, - } - else: - values = { - "LKA_MODE": 2, - "LKA_ICON": 2 if enabled else 1, - "TORQUE_REQUEST": apply_steer, - "DampingGain": 3 if enabled else 100, - "STEER_REQ": 1 if lat_active else 0, - #"STEER_MODE": 0, - "HAS_LANE_SAFETY": 0, # hide LKAS settings - "VALUE63": 0, - "VALUE64": 0, - } - - if CP.flags & HyundaiFlags.CANFD_HDA2: - lkas_msg = "LKAS_ALT" if CP.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING else "LKAS" - if CP.openpilotLongitudinalControl: - ret.append(packer.make_can_msg("LFA", CAN.ECAN, values)) - if not (CP.flags & HyundaiFlags.CAMERA_SCC.value): - ret.append(packer.make_can_msg(lkas_msg, CAN.ACAN, values)) - else: - ret.append(packer.make_can_msg("LFA", CAN.ECAN, values)) - - return ret - -def create_suppress_lfa(packer, CAN, CS): - if CS.msg_0x362 is not None: - suppress_msg = "CAM_0x362" - lfa_block_msg = CS.msg_0x362 - elif CS.msg_0x2a4 is not None: - suppress_msg = "CAM_0x2a4" - lfa_block_msg = CS.msg_0x2a4 - else: - return [] - - #values = {f"BYTE{i}": lfa_block_msg[f"BYTE{i}"] for i in range(3, msg_bytes) if i != 7} - values = copy.copy(lfa_block_msg) - values["COUNTER"] = lfa_block_msg["COUNTER"] - values["SET_ME_0"] = 0 - values["SET_ME_0_2"] = 0 - values["LEFT_LANE_LINE"] = 0 - values["RIGHT_LANE_LINE"] = 0 - return [packer.make_can_msg(suppress_msg, CAN.ACAN, values)] - -def create_buttons(packer, CP, CAN, cnt, btn): - values = { - "COUNTER": cnt, - "SET_ME_1": 1, - "CRUISE_BUTTONS": btn, - } - - #bus = CAN.ECAN if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM - bus = CAN.ECAN - return packer.make_can_msg("CRUISE_BUTTONS", bus, values) - -def create_acc_cancel(packer, CP, CAN, cruise_info_copy): - # TODO: why do we copy different values here? - if CP.flags & HyundaiFlags.CANFD_CAMERA_SCC.value: - values = {s: cruise_info_copy[s] for s in [ - "COUNTER", - "CHECKSUM", - "NEW_SIGNAL_1", - "MainMode_ACC", - "ACCMode", - "ZEROS_9", - "CRUISE_STANDSTILL", - "ZEROS_5", - "DISTANCE_SETTING", - "VSetDis", - ]} - else: - values = {s: cruise_info_copy[s] for s in [ - "COUNTER", - "CHECKSUM", - "ACCMode", - "VSetDis", - "CRUISE_STANDSTILL", - ]} - values.update({ - "ACCMode": 4, - "aReqRaw": 0.0, - "aReqValue": 0.0, - }) - return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) - -def create_lfahda_cluster(packer, CS, CAN, long_active, lat_active): - - if CS.lfahda_cluster_info is not None: - values = {} # - values["HDA_CntrlModSta"] = 2 if long_active else 0 - values["HDA_LFA_SymSta"] = 2 if lat_active else 0 - - # - else: - return [] - return [packer.make_can_msg("LFAHDA_CLUSTER", CAN.ECAN, values)] - - -def create_acc_control_scc2(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control, hyundai_jerk, CS): - enabled = (enabled or CS.softHoldActive > 0) and CS.paddle_button_prev == 0 - - acc_mode = 0 if not enabled else (2 if gas_override else 1) - - if hyundai_jerk.carrot_cruise == 1: - 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 - - jerk_u = hyundai_jerk.jerk_u - jerk_l = hyundai_jerk.jerk_l - jerk = 5 - jn = jerk / 50 - if not enabled or gas_override: - a_val, a_raw = 0, 0 - else: - a_raw = accel - a_val = accel #np.clip(accel, accel_last - jn, accel_last + jn) - - values = copy.copy(CS.cruise_info) - values.pop("COUNTER", None) - values["ACCMode"] = acc_mode - values["MainMode_ACC"] = 1 - values["StopReq"] = 1 if stopping or CS.softHoldActive > 0 else 0 # 1: Stop control is required, 2: Not used, 3: Error Indicator - values["aReqValue"] = a_val - values["aReqRaw"] = a_raw - values["VSetDis"] = set_speed - #values["JerkLowerLimit"] = jerk if enabled else 1 - #values["JerkUpperLimit"] = 3.0 - values["JerkLowerLimit"] = jerk_l if enabled else 1 - values["JerkUpperLimit"] = 2.0 if stopping or CS.softHoldActive else jerk_u - values["DISTANCE_SETTING"] = hud_control.leadDistanceBars # + 5 - #values["DISTANCE_SETTING"] = hud_control.leadDistanceBars + 5 - - #values["ACC_ObjDist"] = 1 - #values["ObjValid"] = 0 - #values["OBJ_STATUS"] = 2 - #values["NSCCOper"] = 1 if enabled else 0 # 0: off, 1: Ready, 2: Act, 3: Error Indicator - #values["NSCCOnOff"] = 2 # 0: Default, 1: Off, 2: On, 3: Invalid - #values["SET_ME_3"] = 0x3 # objRelsped와 충돌 - #values["ACC_ObjLatPos"] = - hud_control.leadDPath - values["DriveMode"] = 0 # 0: Default, 1: Comfort Mode, 2:Normal mode, 3:Dynamic mode, reserved - - hud_lead_info = 0 - if hud_control.leadVisible: - hud_lead_info = 1 if values["ACC_ObjRelSpd"] > 0 else 2 - values["HUD_LEAD_INFO"] = hud_lead_info #1: in-path object detected(uncontrollable), 2: controllable long, 3: controllable long & lat, ... reserved - - values["DriverAlert"] = 0 # 1: SCC Disengaged, 2: No SCC Engage condition, 3: SCC Disenganed when the vehicle stops - - values["TARGET_DISTANCE"] = CS.out.vEgo * 1.0 + 4.0 - - soft_hold_info = 1 if CS.softHoldActive > 1 and enabled else 0 - - # 이거안하면 정지중 뒤로 밀리는 현상 발생하는듯.. (신호정지중에 뒤로 밀리는 경험함.. 시험해봐야) - if values["InfoDisplay"] != 5: #5: Front Car Departure Notice - values["InfoDisplay"] = 4 if stopping and CS.out.aEgo > -0.3 else 0 # 1: SCC Mode, 2: Convention Cruise Mode, 3: Object disappered at low speed, 4: Available to resume acceleration control, 5: Front vehicle departure notice, 6: Reserved, 7: Invalid - - values["TakeOverReq"] = 0 # 1: Takeover request, 2: Not used, 3: Error indicator , 이것이 켜지면 가속을 안하는듯함. - #values["NEW_SIGNAL_4"] = 9 if hud_control.leadVisible else 0 - # AccelLimitBandUpper, Lower - values["SysFailState"] = 0 # 1: Performance degredation, 2: system temporairy unavailble, 3: SCC Service required , 눈이 묻어 레이더오류시... 2가 됨. 이때 가속을 안함... - - values["AccelLimitBandUpper"] = 0.0 # 이값이 1.26일때 가속을 안하는 증상이 보임.. - values["AccelLimitBandLower"] = 0.0 - - values["ZEROS_7"] = 1 - - return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) - -def create_acc_control(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control, jerk_u, jerk_l, CS): - - enabled = enabled or CS.softHoldActive > 0 - jerk = 5 - jn = jerk / 50 - if not enabled or gas_override: - a_val, a_raw = 0, 0 - else: - a_raw = accel - a_val = np.clip(accel, accel_last - jn, accel_last + jn) - - values = { - "ACCMode": 0 if not enabled else (2 if gas_override else 1), - "MainMode_ACC": 1, - "StopReq": 1 if stopping or CS.softHoldActive > 0 else 0, - "aReqValue": a_val, - "aReqRaw": a_raw, - "VSetDis": set_speed, - #"JerkLowerLimit": jerk if enabled else 1, - #"JerkUpperLimit": 3.0, - "JerkLowerLimit": jerk_l if enabled else 1, - "JerkUpperLimit": jerk_u, - - "ACC_ObjDist": 1, - #"ObjValid": 0, - #"OBJ_STATUS": 2, - "NSCCOper": 0, - "NSCCOnOff": 2, - "DriveMode": 0, - #"SET_ME_3": 0x3, - "ACC_ObjLatPos": 0x64, - "DISTANCE_SETTING": hud_control.leadDistanceBars, # + 5, - "InfoDisplay": 4 if stopping and CS.out.cruiseState.standstill else 0, - } - - return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) - - -def create_spas_messages(packer, CAN, frame, left_blink, right_blink): - ret = [] - - values = { - } - ret.append(packer.make_can_msg("SPAS1", CAN.ECAN, values)) - - blink = 0 - if left_blink: - blink = 3 - elif right_blink: - blink = 4 - values = { - "BLINKER_CONTROL": blink, - } - ret.append(packer.make_can_msg("SPAS2", CAN.ECAN, values)) - - return ret - - -def create_fca_warning_light(CP, packer, CAN, frame): - ret = [] - if CP.flags & HyundaiFlags.CAMERA_SCC.value: - return ret - - if frame % 2 == 0: - values = { - 'AEB_SETTING': 0x1, # show AEB disabled icon - 'SET_ME_2': 0x2, - 'SET_ME_FF': 0xff, - 'SET_ME_FC': 0xfc, - 'SET_ME_9': 0x9, - #'DATA102': 1, - } - ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values)) - return ret - -def create_tcs_messages(packer, CAN, CS): - ret = [] - if CS.tcs_info_373 is not None: - values = copy.copy(CS.tcs_info_373) - values["DriverBraking"] = 0 - values["DriverBrakingLowSens"] = 0 - #values["NEW_SIGNAL_1"] = 0 # accel과 관련.. 옆두부 꺼지는것과 관련? 확인필요 - #values["ACC_REQ"] = 1 # 옆두부 꺼지는것과 관련? 확인필요.. 항상 켜지게함.. - values["NEW_SIGNAL_1"] = 0 if values["ACC_REQ"] == 1 else 1 # 옆두부.. - ret.append(packer.make_can_msg("TCS", CAN.CAM, values)) - return ret - -def forward_button_message(packer, CAN, frame, CS, cruise_button, MainMode_ACC_trigger, LFA_trigger): - ret = [] - if frame % 2 == 0: - if CS.cruise_buttons_msg is not None: - values = copy.copy(CS.cruise_buttons_msg) - cruise_button_driver = values["CRUISE_BUTTONS"] - if cruise_button_driver == 0: - values["CRUISE_BUTTONS"] = cruise_button - if MainMode_ACC_trigger > 0: - #values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 - pass - elif LFA_trigger > 0: - values["LFA_BTN"] = 1 - - ret.append(packer.make_can_msg(CS.cruise_btns_msg_canfd, CAN.CAM, values)) - return ret - -""" -def _make_ccnc_values___(values, CS, lat_active, frame, hud_control, lane_line = True, corner_radar = True): - if lane_line: - 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 - - md = CS.MD - if md is not None: - desire = md.meta.desire.raw - if desire == 1: # # 좌회전 - values['LANE_CHANGING'] = 1 # 왼쪽 화살표 - values["LANELINE_CURVATURE"] = 15 # 커브 최대 - values["LANELINE_CURVATURE_DIRECTION"] = 0 # 왼쪽으로 - - elif desire == 2: # 우회전 - values['LANE_CHANGING'] = 2 # 오른쪽 화살표 - values["LANELINE_CURVATURE"] = 15 # 차선커브 최대로 - values["LANELINE_CURVATURE_DIRECTION"] = 1 # 오른쪽으로 - - elif desire == 3: # 좌차선변경 - values['LANE_CHANGING'] = 3 # 왼쪽 화살표 + 바닥 - - elif desire == 4: # 우차선변경 - values['LANE_CHANGING'] = 4 # 오른쪽 화살표 + 바닥 - - if corner_radar: - if values['LF_DETECT'] >= 4 and values['LF_DETECT_DISTANCE'] != 0: values['LF_DETECT'] = 1 - if values['RF_DETECT'] >= 4 and values['RF_DETECT_DISTANCE'] != 0: values['RF_DETECT'] = 1 - if values['LR_DETECT'] >= 4 and values['LR_DETECT_DISTANCE'] != 0: values['LR_DETECT'] = 1 - if values['RR_DETECT'] >= 4 and values['RR_DETECT_DISTANCE'] != 0: values['RR_DETECT'] = 1 - - disp_dist = 30.0 - min_dist = 14.0 - max_interval = 100 - t = 1.0 # 이 값만 바꾸면 전체 깜빡임 속도 조절됨 (0.6 빠름, 1.0 기본, 1.5 느림) - def apply_one(detect_key, dist_key): - dist = values.get(dist_key, 0.0) - if dist <= min_dist: - return - d = min(dist, disp_dist) - interval = int((1 + (max_interval - 1) * (d / disp_dist)) * t) - interval = max(1, min(interval, max_interval)) - blink = (frame // interval) & 1 - values[detect_key] = 2 - blink - values[dist_key] = min_dist - - apply_one('LR_DETECT', 'LR_DETECT_DISTANCE') - apply_one('RR_DETECT', 'RR_DETECT_DISTANCE') - -def create_ccnc_messages___(CP, packer, CAN, frame, CC, CS, hud_control, disp_angle, left_lane_warning, right_lane_warning, enable_corner_radar): - ret = [] - md = CS.MD - desire = 0 - lane_changing = 0 - if md is not None: - desire = md.meta.desire.raw - desire_state = md.meta.desireState - if len(desire_state) > 4: - if desire_state[1] > 0.3 : lane_changing = 1 - if desire_state[2] > 0.3 : lane_changing = 2 - if desire_state[3] > 0.3 : lane_changing = 3 - if desire_state[4] > 0.3 : lane_changing = 4 - - if CP.flags & HyundaiFlags.CAMERA_SCC.value: - HDA_CntrlModSta = 0 - if CS.lfahda_cluster_info is not None: - HDA_CntrlModSta = CS.lfahda_cluster_info["HDA_CntrlModSta"] - - if frame % 2 == 0: - if CS.adrv_info_160 is not None: - values = copy.copy(CS.adrv_info_160) - #values["NEW_SIGNAL_1"] = 0 # steer_temp관련없음, 계기판에러 - #values["SET_ME_9"] = 17 # steer_temp관련없음, 계기판에러 - #values["SET_ME_2"] = 0 #커멘트해도 steer_temp에러남, 2값은 콤마에서 찾은거니... - #values["DATA102"] = 0 # steer_temp관련없음 - ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values)) - - if CS.cruise_buttons_msg is not None: - values = copy.copy(CS.cruise_buttons_msg) - if CS.lfahda_cluster_info["HDA_LFA_SymSta"] == 0 and 0 < frame % 200 < 12: - values["LFA_BTN"] = 1 - #else: - # values["LFA_BTN"] = 0 - - if CC.enabled and CS.MainMode_ACC: - if CS.ACCMode in [0, 4] and 10 < frame % 200 < 22: - values["CRUISE_BUTTONS"] = 2 - elif CC.enabled and not CS.MainMode_ACC and 10 < frame % 200 <= 16 and CS.out.vEgo > 3.: - values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 - else: - values["ADAPTIVE_CRUISE_MAIN_BTN"] = 0 - - ret.append(packer.make_can_msg(CS.cruise_btns_msg_canfd, CAN.CAM, values)) - - - if frame % 5 == 0: - lat_active = CC.latActive - if CS.adrv_info_161 is not None: - main_enabled = CS.out.cruiseState.available - cruise_enabled = CC.enabled - lat_enabled = CS.out.latEnabled - nav_active = hud_control.activeCarrot > 1 - - # hdpuse carrot - hdp_use = int(Params().get("HDPuse")) - hdp_active = False - if hdp_use == 1: - hdp_active = cruise_enabled and nav_active - elif hdp_use == 2: - hdp_active = cruise_enabled - # hdpuse carrot - - values = copy.copy(CS.adrv_info_161) - #print("adrv_info_161 = ", CS.adrv_info_161) - - values["SETSPEED"] = (6 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 - values["SETSPEED_HUD"] = (5 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 - set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - values["vSetDis"] = int(set_speed_in_units + 0.5) - - values["DISTANCE"] = 4 if hdp_active else hud_control.leadDistanceBars - values["DISTANCE_LEAD"] = 2 if cruise_enabled and hud_control.leadVisible else 1 if main_enabled and hud_control.leadVisible else 0 - values["DISTANCE_CAR"] = 3 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 - values["DISTANCE_SPACING"] = 5 if hdp_active else 1 if cruise_enabled else 0 - - values["TARGET"] = 1 if main_enabled else 0 - values["TARGET_DISTANCE"] = int(hud_control.leadDistance) - - values["BACKGROUND"] = 6 if CS.paddle_button_prev > 0 else 1 if cruise_enabled else 3 if main_enabled else 7 - values["CENTERLINE"] = 1 if HDA_CntrlModSta > 0 else 0 #lat_enabled else 0 - values["CAR_CIRCLE"] = 2 if hdp_active else 1 if cruise_enabled else 0 - - values["NAV_ICON"] = 2 if nav_active else 0 - values["HDA_ICON"] = 5 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 - values["LFA_ICON"] = 5 if hdp_active else 2 if lat_active else 1 if lat_enabled else 0 - values["LKA_ICON"] = 4 if lat_active else 3 if lat_enabled else 0 - values["FCA_ALT_ICON"] = 0 - - if values["ALERTS_2"] in [1, 2, 5, 6, 10, 21, 22]: # 10,21,22: 운전자모니터 알람/경고, 6: enable lanechange alert - values["ALERTS_2"] = 0 - values["DAW_ICON"] = 0 - - values["SOUNDS_1"] = 0 # 운전자모니터경고음. - values["SOUNDS_2"] = 0 # 2: STEER중지 경고후에도 사운드가 나옴. - values["SOUNDS_4"] = 0 # 차선변경알림? 에이 그냥0으로.. - - if values["ALERTS_3"] in [3, 4, 13, 17, 19, 26, 7, 8, 9, 10]: - values["ALERTS_3"] = 0 - values["SOUNDS_3"] = 0 - - if values["ALERTS_5"] in [1, 2, 4, 5]: - values["ALERTS_5"] = 0 - - if values["ALERTS_5"] in [11] and CS.softHoldActive == 0: - values["ALERTS_5"] = 0 - - 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 - - # lane_color = 6 if lat_active else 2 - #lane_color = 2 # 6: green, 2: white, 4: yellow - lane_color = 2 if CS.out.leftLaneLine < 20 else 4 - if hud_control.leftLaneDepart: - values["LANELINE_LEFT"] = 4 if (frame // 50) % 2 == 0 else 1 - else: - values["LANELINE_LEFT"] = lane_color if hud_control.leftLaneVisible else 0 - lane_color = 2 if CS.out.rightLaneLine < 20 else 4 - if hud_control.rightLaneDepart: - values["LANELINE_RIGHT"] = 4 if (frame // 50) % 2 == 0 else 1 - else: - values["LANELINE_RIGHT"] = lane_color if hud_control.rightLaneVisible else 0 - #values["LANELINE_LEFT_POSITION"] = 15 - #values["LANELINE_RIGHT_POSITION"] = 15 - - values["LCA_LEFT_ARROW"] = 2 if CS.out.leftBlinker else 0 - values["LCA_RIGHT_ARROW"] = 2 if CS.out.rightBlinker else 0 - - values["LCA_LEFT_ICON"] = 1 if CS.out.leftBlindspot else 2 - values["LCA_RIGHT_ICON"] = 1 if CS.out.rightBlindspot else 2 - - values["LANE_LEFT"] = 1 if desire in (1, 3) else 0 - values["LANE_RIGHT"] = 1 if desire in (2, 4) else 0 - - ret.append(packer.make_can_msg("ADRV_0x161", CAN.ECAN, values)) - - if CS.adrv_info_200 is not None: - values = copy.copy(CS.adrv_info_200) - values["TauGapSet"] = hud_control.leadDistanceBars - ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values)) - - if CS.adrv_info_1ea is not None: - values = copy.copy(CS.adrv_info_1ea) - #values["HDA_MODE1"] = 8 - #values["HDA_MODE2"] = 1 - if lane_changing == 3: - values['LEFT_BLINK_HOLD'] = 1 - elif lane_changing == 4: - values['RIGHT_BLINK_HOLD'] = 1 - - _make_ccnc_values(values, CS, lat_active, frame, hud_control) - # values['AUTOLANECHANGE_MSG'] = 1 # 주변 상황을 확인하세요 - # values['AUTOLANECHANGE_MSG'] = 2 # 작동 조건이 아닙니다 - # values['AUTOLANECHANGE_MSG'] = 3 # 주행 차로를 분석중입니다 - # values['AUTOLANECHANGE_MSG'] = 4 # 급커브 구간입니다 - # values['AUTOLANECHANGE_MSG'] = 5 # 주행 중인 차로의 폭이 좁습니다 - # values['AUTOLANECHANGE_MSG'] = 6 # 작동 구간이 아닙니다. - # values['AUTOLANECHANGE_MSG'] = 7 # 비상등이 켜져있습니다 - # values['AUTOLANECHANGE_MSG'] = 8 # 주행속도가 낮습니다 - # values['AUTOLANECHANGE_MSG'] = 9 # 핸들을 잡으십시오 - # values['AUTOLANECHANGE_MSG'] = 10 # 작동 가능한 차로가 아닙니다 - # values['AUTOLANECHANGE_MSG'] = 11 # 핸들 조작이 감지되었습니다. - # 얘는 우측 RPM 게이지에 크게 나옴 - # values['AUTOLANECHANGE_MSG'] = 12 # ok 버튼을 누르면 차로변경 보조기능이 켜집니다 - # values['AUTOLANECHANGE_MSG'] = 13 # 없음. - # values['AUTOLANECHANGE_MSG'] = 14 # 없음. - # values['AUTOLANECHANGE_MSG'] = 15 # 없음. - ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values)) - - if CS.adrv_info_162 is not None: - values = copy.copy(CS.adrv_info_162) - if hud_control.leadDistance > 0: - values["FF_DISTANCE"] = hud_control.leadDistance - #values["FF_DETECT"] = 11 if hud_control.leadRelSpeed > -0.1 else 12 # bicycle - #values["FF_DETECT"] = 5 if hud_control.leadRelSpeed > -0.1 else 6 # truck - ff_type = 3 if hud_control.leadRadar == 1 else 13 - values["FF_DETECT"] = ff_type if hud_control.leadRelSpeed > -0.1 else ff_type + 1 - #values["FF_DETECT_LAT"] = - hud_control.leadDPath - _make_ccnc_values(values, CS, lat_active, frame, hud_control, lane_line = False, corner_radar= True) - - #values["FAULT_FCA"] = 0 - #values["FAULT_LSS"] = 0 - #values["FAULT_LFA"] = 0 - #values["FAULT_LCA"] = 0 - #values["FAULT_DAS"] = 0 - #values["FAULT_HDA"] = 0 - - if (left_lane_warning and not CS.out.leftBlinker) or (right_lane_warning and not CS.out.rightBlinker): - values["VIBRATE"] = 1 - ret.append(packer.make_can_msg("CCNC_0x162", CAN.ECAN, values)) - - if enable_corner_radar > 0: - if HDA_CntrlModSta == 0: - if frame % 500 in [10,20,30]: - values = { - 'BYTE_1': 0, - 'BYTE_2': 0, - 'BYTE_3': 0x80, - 'BYTE_4': 0x8A, - 'BYTE_5': 0x32, - 'BYTE_6': 0x30, - 'BYTE_7': 0x01, - 'BYTE_8': 0x00, - } - ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) - elif frame % 500 in [40,50,60]: - values = { - 'BYTE_1': 0xff, - 'BYTE_2': 0xff, - 'BYTE_3': 0xff, - 'BYTE_4': 0xff, - 'BYTE_5': 0xff, - 'BYTE_6': 0xff, - 'BYTE_7': 0xff, - 'BYTE_8': 0xff, - } - ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) - if False: #canfd_debug > 1 and frame % 20 == 0: # 아직 시험중.. - if CS.hda_info_4a3 is not None: - values = copy.copy(CS.hda_info_4a3) - values["LinkClass"] = 1 - values["SPEED_LIMIT"] = 100 - ret.append(packer.make_can_msg("HDA_INFO_4A3", CAN.CAM, values)) - - return ret -""" - -def create_adrv_messages(CP, packer, CAN, frame): - # messages needed to car happy after disabling - # the ADAS Driving ECU to do longitudinal control - - ret = [] - - if not CP.flags & HyundaiFlags.CAMERA_SCC.value: - values = {} - - ret.extend(create_fca_warning_light(CP, packer, CAN, frame)) - if frame % 5 == 0: - values = { - 'HDA_MODE1': 0x8, - 'HDA_MODE2': 0x1, - #'SET_ME_1C': 0x1c, - 'SET_ME_FF': 0xff, - #'SET_ME_TMP_F': 0xf, - #'SET_ME_TMP_F_2': 0xf, - #'DATA26': 1, #1 - #'DATA32': 5, #5 - } - ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values)) - - values = { - 'SET_ME_E1': 0xe1, - #'SET_ME_3A': 0x3a, - 'TauGapSet' : 1, - 'NEW_SIGNAL_2': 3, - } - ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values)) - - if frame % 20 == 0: - values = { - 'SET_ME_15': 0x15, - } - ret.append(packer.make_can_msg("ADRV_0x345", CAN.ECAN, values)) - - if frame % 100 == 0: - values = { - 'SET_ME_22': 0x22, - 'SET_ME_41': 0x41, - } - ret.append(packer.make_can_msg("ADRV_0x1da", CAN.ECAN, values)) - - return ret - -## carrot -def alt_cruise_buttons(packer, CP, CAN, buttons, cruise_btns_msg, cnt): - cruise_btns_msg["CRUISE_BUTTONS"] = buttons - 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)): - crc = ((crc << 8) ^ CRC16_XMODEM[(crc >> 8) ^ d[i]]) & 0xFFFF - crc = ((crc << 8) ^ CRC16_XMODEM[(crc >> 8) ^ ((address >> 0) & 0xFF)]) & 0xFFFF - crc = ((crc << 8) ^ CRC16_XMODEM[(crc >> 8) ^ ((address >> 8) & 0xFF)]) & 0xFFFF - if len(d) == 8: - crc ^= 0x5F29 - elif len(d) == 16: - crc ^= 0x041D - elif len(d) == 24: - crc ^= 0x819D - elif len(d) == 32: - crc ^= 0x9F5B - return crc - - - - -def _clip_int(x, lo, hi): - return lo if x < lo else hi if x > hi else int(x) - -def _get_desire_and_lane_changing(md): - desire = 0 - lane_changing = 0 - if md is not None: - desire = md.meta.desire.raw - ds = md.meta.desireState - if len(ds) > 4: - if ds[1] > 0.3: lane_changing = 1 - if ds[2] > 0.3: lane_changing = 2 - if ds[3] > 0.3: lane_changing = 3 - if ds[4] > 0.3: lane_changing = 4 - return desire, lane_changing - -def _apply_lane_desire(values, desire): - #values['LANE_CHANGING'] = 0 - - if desire == 1: # 좌회전 - values['LANE_CHANGING'] = 1 - values["LANELINE_CURVATURE"] = 15 - values["LANELINE_CURVATURE_DIRECTION"] = 0 - - elif desire == 2: # 우회전 - values['LANE_CHANGING'] = 2 - values["LANELINE_CURVATURE"] = 15 - values["LANELINE_CURVATURE_DIRECTION"] = 1 - - elif desire == 3: # 좌차선변경 - values['LANE_CHANGING'] = 3 - - elif desire == 4: # 우차선변경 - values['LANE_CHANGING'] = 4 - -def _apply_radar_blink(values, radar_pairs, frame, *, - disp_dist=30.0, min_dist=14.0, - max_interval=100, t=1.0): - """ - 거리 > min_dist 일 때만 깜빡임. - 거리 멀수록 interval 커짐(느리게). - """ - for det_key, dist_key in radar_pairs: - dist = values[dist_key] - if dist <= min_dist: - continue - - d = min(dist, disp_dist) - interval = int((1 + (max_interval - 1) * (d / disp_dist)) * t) - interval = _clip_int(interval, 1, max_interval) - - blink = (frame // interval) & 1 - values[det_key] = 2 - blink - values[dist_key] = min_dist - -def _make_ccnc_values(values, CS, lat_active, frame, hud_control, - lane_line=True, corner_radar=True, - desire=0, - blink_pairs=None, - blink_t=1.0): - if lane_line: - curvature = round(CS.out.steeringAngleDeg / 3) - mag = min(abs(curvature), 15) - curv = mag + (-1 if curvature < 0 else 0) - direction = 1 if curvature < 0 else 0 - values["LANELINE_CURVATURE"] = curv if lat_active else 0 - values["LANELINE_CURVATURE_DIRECTION"] = direction if lat_active else 0 - if desire: - _apply_lane_desire(values, desire) - - if corner_radar: - radar_all = [ - ('LF_DETECT', 'LF_DETECT_DISTANCE'), - ('RF_DETECT', 'RF_DETECT_DISTANCE'), - ('LR_DETECT', 'LR_DETECT_DISTANCE'), - ('RR_DETECT', 'RR_DETECT_DISTANCE'), - ] - for det_key, dist_key in radar_all: - if values[det_key] >= 4 and values[dist_key] != 0: - values[det_key] = 1 - - if blink_pairs: - _apply_radar_blink(values, blink_pairs, frame, t=blink_t) - -def create_ccnc_messages(CP, packer, CAN, frame, CC, CS, hud_control, - disp_angle, left_lane_warning, right_lane_warning, - enable_corner_radar): - ret = [] - - md = CS.MD - desire, lane_changing = _get_desire_and_lane_changing(md) - - if CP.flags & HyundaiFlags.CAMERA_SCC.value: - HDA_CntrlModSta = 0 - if CS.lfahda_cluster_info is not None: - HDA_CntrlModSta = CS.lfahda_cluster_info["HDA_CntrlModSta"] - - if frame % 2 == 0: - #if CS.adrv_info_160 is not None: - # values = copy.copy(CS.adrv_info_160) - # ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values)) - - if CS.cruise_buttons_msg is not None: - values = copy.copy(CS.cruise_buttons_msg) - - if CS.lfahda_cluster_info["HDA_LFA_SymSta"] == 0 and 0 < frame % 200 < 12: - values["LFA_BTN"] = 1 - - if CC.enabled and CS.MainMode_ACC: - if CS.ACCMode in [0, 4] and 10 < frame % 200 < 22: - values["CRUISE_BUTTONS"] = 2 - elif CC.enabled and (not CS.MainMode_ACC) and 10 < frame % 200 <= 16 and CS.out.vEgo > 3.: - values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 - else: - values["ADAPTIVE_CRUISE_MAIN_BTN"] = 0 - - ret.append(packer.make_can_msg(CS.cruise_btns_msg_canfd, CAN.CAM, values)) - - # --- 0x161/0x200/0x1ea/0x162 (frame%5) --- - if frame % 5 == 0: - lat_active = CC.latActive - - if CS.adrv_info_161 is not None: - main_enabled = CS.out.cruiseState.available - cruise_enabled = CC.enabled - lat_enabled = CS.out.latEnabled - nav_active = hud_control.activeCarrot > 1 - - # hdpuse carrot - hdp_use = int(Params().get("HDPuse")) - hdp_active = False - if hdp_use == 1: - hdp_active = cruise_enabled and nav_active - elif hdp_use == 2: - hdp_active = cruise_enabled - # hdpuse carrot - - values = copy.copy(CS.adrv_info_161) - - values["SETSPEED"] = (6 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 - values["SETSPEED_HUD"] = (5 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 - - set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - values["vSetDis"] = int(set_speed_in_units + 0.5) - - values["DISTANCE"] = 4 if hdp_active else hud_control.leadDistanceBars - values["DISTANCE_LEAD"] = 2 if cruise_enabled and hud_control.leadVisible else 1 if main_enabled and hud_control.leadVisible else 0 - values["DISTANCE_CAR"] = 3 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 - values["DISTANCE_SPACING"] = 5 if hdp_active else 1 if cruise_enabled else 0 - - values["TARGET"] = 1 if main_enabled else 0 - values["TARGET_DISTANCE"] = int(hud_control.leadDistance) - - values["BACKGROUND"] = 6 if CS.paddle_button_prev > 0 else 1 if cruise_enabled else 3 if main_enabled else 7 - values["CENTERLINE"] = 1 if HDA_CntrlModSta > 0 else 0 - values["CAR_CIRCLE"] = 2 if hdp_active else 1 if cruise_enabled else 0 - - values["NAV_ICON"] = 2 if nav_active else 0 - values["HDA_ICON"] = 5 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 - values["LFA_ICON"] = 5 if hdp_active else 2 if lat_active else 1 if lat_enabled else 0 - values["LKA_ICON"] = 4 if lat_active else 3 if lat_enabled else 0 - values["FCA_ALT_ICON"] = 0 - - if values["ALERTS_2"] in [1, 2, 5, 6, 10, 21, 22]: - values["ALERTS_2"] = 0 - values["DAW_ICON"] = 0 - - if values["ALERTS_1"] == 0: # alerts가 있으면 사운드도 같이 나옴 - values["SOUNDS_1"] = 0 - values["SOUNDS_2"] = 0 - values["SOUNDS_4"] = 0 - - if values["ALERTS_3"] in [3, 4, 13, 17, 19, 26, 7, 8, 9, 10]: - values["ALERTS_3"] = 0 - values["SOUNDS_3"] = 0 - - if values["ALERTS_5"] in [1, 2, 4, 5]: - values["ALERTS_5"] = 0 - - if values["ALERTS_5"] in [11] and CS.softHoldActive == 0: - values["ALERTS_5"] = 0 - - # curvature 표시(0x161쪽 기존 로직 유지) - 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 - - bsd = CS.out.leftBlindspot or CS.out.rightBlindspot - lane_color = 4 if CS.out.leftLaneLine >= 20 or bsd else 2 - if hud_control.leftLaneDepart: - values["LANELINE_LEFT"] = 4 if (frame // 50) % 2 == 0 else 1 - else: - values["LANELINE_LEFT"] = lane_color if hud_control.leftLaneVisible else 0 - - lane_color = 2 if CS.out.rightLaneLine < 20 else 4 - if hud_control.rightLaneDepart: - values["LANELINE_RIGHT"] = 4 if (frame // 50) % 2 == 0 else 1 - else: - values["LANELINE_RIGHT"] = lane_color if hud_control.rightLaneVisible else 0 - - values["LCA_LEFT_ARROW"] = 2 if CS.out.leftBlinker else 0 - values["LCA_RIGHT_ARROW"] = 2 if CS.out.rightBlinker else 0 - - values["LCA_LEFT_ICON"] = 1 if CS.out.leftBlindspot else 2 - values["LCA_RIGHT_ICON"] = 1 if CS.out.rightBlindspot else 2 - - values["LANE_LEFT"] = 1 if desire in (1, 3) else 0 - values["LANE_RIGHT"] = 1 if desire in (2, 4) else 0 - - ret.append(packer.make_can_msg("ADRV_0x161", CAN.ECAN, values)) - - if CS.adrv_info_200 is not None: - values = copy.copy(CS.adrv_info_200) - values["TauGapSet"] = hud_control.leadDistanceBars - ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values)) - - if CS.adrv_info_1ea is not None: - values = copy.copy(CS.adrv_info_1ea) - - # blinker hold - values['LEFT_BLINK_HOLD'] = 1 if lane_changing == 3 else 0 - values['RIGHT_BLINK_HOLD'] = 1 if lane_changing == 4 else 0 - - _make_ccnc_values( - values, CS, lat_active, frame, hud_control, - lane_line=True, - corner_radar=True, - desire=desire, - # 기존대로 LR/RR만 깜빡임 - blink_pairs=[('LR_DETECT', 'LR_DETECT_DISTANCE'), - ('RR_DETECT', 'RR_DETECT_DISTANCE')], - blink_t=1.0 - ) - - ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values)) - - if CS.adrv_info_162 is not None: - values = copy.copy(CS.adrv_info_162) - - if hud_control.leadDistance > 0: - values["FF_DISTANCE"] = hud_control.leadDistance - ff_type = 3 if hud_control.leadRadar == 1 else 13 - values["FF_DETECT"] = ff_type if hud_control.leadRelSpeed > -0.1 else ff_type + 1 - - _make_ccnc_values( - values, CS, lat_active, frame, hud_control, - lane_line=False, - corner_radar=True, - desire=0, - # 필요하면 162도 깜빡임 적용(원래 코드처럼 LR/RR만) - blink_pairs=[('LR_DETECT', 'LR_DETECT_DISTANCE'), - ('RR_DETECT', 'RR_DETECT_DISTANCE')], - blink_t=1.0 - ) - - if (left_lane_warning and not CS.out.leftBlinker) or (right_lane_warning and not CS.out.rightBlinker): - values["VIBRATE"] = 1 - - ret.append(packer.make_can_msg("CCNC_0x162", CAN.ECAN, values)) - - # --- NEW_MSG_4B9 (corner radar keep-alive?) --- - if enable_corner_radar > 0: - if HDA_CntrlModSta == 0: - if frame % 500 in [10, 20, 30]: - values = { - 'BYTE_1': 0, - 'BYTE_2': 0, - 'BYTE_3': 0x80, - 'BYTE_4': 0x8A, - 'BYTE_5': 0x32, - 'BYTE_6': 0x30, - 'BYTE_7': 0x01, - 'BYTE_8': 0x00, - } - ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) - elif frame % 500 in [40, 50, 60]: - values = { - 'BYTE_1': 0xff, - 'BYTE_2': 0xff, - 'BYTE_3': 0xff, - 'BYTE_4': 0xff, - 'BYTE_5': 0xff, - 'BYTE_6': 0xff, - 'BYTE_7': 0xff, - 'BYTE_8': 0xff, - } - ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) - - if False: # canfd_debug > 1 and frame % 20 == 0: - if CS.hda_info_4a3 is not None: - values = copy.copy(CS.hda_info_4a3) - values["LinkClass"] = 1 - values["SPEED_LIMIT"] = 100 - ret.append(packer.make_can_msg("HDA_INFO_4A3", CAN.CAM, values)) - - return ret diff --git a/opendbc_repo/opendbc/car/hyundai/interface.py b/opendbc_repo/opendbc/car/hyundai/interface.py deleted file mode 100644 index 6f1c2a605a..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/interface.py +++ /dev/null @@ -1,284 +0,0 @@ -from opendbc.car import Bus, get_safety_config, structs -from opendbc.car.hyundai.hyundaicanfd import CanBus -from opendbc.car.hyundai.values import HyundaiFlags, CAR, DBC, CANFD_RADAR_SCC_CAR, \ - CANFD_UNSUPPORTED_LONGITUDINAL_CAR, \ - UNSUPPORTED_LONGITUDINAL_CAR, HyundaiSafetyFlags, HyundaiExtFlags -from opendbc.car.hyundai.radar_interface import RADAR_START_ADDR -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.disable_ecu import disable_ecu -from opendbc.car.hyundai.carcontroller import CarController -from opendbc.car.hyundai.carstate import CarState -from opendbc.car.hyundai.radar_interface import RadarInterface - -from openpilot.common.params import Params - -ButtonType = structs.CarState.ButtonEvent.Type -Ecu = structs.CarParams.Ecu - -# Cancel button can sometimes be ACC pause/resume button, main button can also enable on some cars -ENABLE_BUTTONS = (ButtonType.accelCruise, ButtonType.decelCruise, ButtonType.cancel, ButtonType.mainCruise) - -SteerControlType = structs.CarParams.SteerControlType - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - - params = Params() - camera_scc = params.get_int("HyundaiCameraSCC") - if camera_scc > 0: - ret.flags |= HyundaiFlags.CAMERA_SCC.value - print("$$$CAMERA_SCC toggled...") - - ret.brand = "hyundai" - - cam_can = CanBus(None, fingerprint).CAM if camera_scc == 0 else 1 - hda2 = False #0x50 in fingerprint[cam_can] or 0x110 in fingerprint[cam_can] - hda2 = hda2 or params.get_int("CanfdHDA2") > 0 - CAN = CanBus(None, fingerprint, hda2) - - if params.get_int("CanfdDebug") == -1: - ret.flags |= HyundaiFlags.ANGLE_CONTROL.value - - if ret.flags & HyundaiFlags.CANFD: - # Shared configuration for CAN-FD cars - ret.alphaLongitudinalAvailable = True #candidate not in (CANFD_UNSUPPORTED_LONGITUDINAL_CAR | CANFD_RADAR_SCC_CAR) - #ret.enableBsm = 0x1e5 in fingerprint[CAN.ECAN] - ret.enableBsm = 0x1ba in fingerprint[CAN.ECAN] # BLINDSPOTS_REAR_CORNERS 0x1ba(442) - - if 0x105 in fingerprint[CAN.ECAN]: - ret.flags |= HyundaiFlags.HYBRID.value - - if 203 in fingerprint[CAN.CAM]: # LFA_ALT - print("##### Anglecontrol detected (LFA_ALT)") - ret.flags |= HyundaiFlags.ANGLE_CONTROL.value - - print("ACAN=", fingerprint[CAN.ACAN]) - - if 0x210 in fingerprint[CAN.ACAN]: - print("##### Radar Group 1 detected (0x210)") - ret.extFlags |= HyundaiExtFlags.RADAR_GROUP1.value - - # detect HDA2 with ADAS Driving ECU - if hda2: - print("$$$CANFD HDA2") - ret.flags |= HyundaiFlags.CANFD_HDA2.value - if camera_scc > 0: - if 0x110 in fingerprint[CAN.ACAN]: - ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value - print("$$$CANFD ALT_STEERING1") - else: - if 0x110 in fingerprint[CAN.CAM]: # 0x110(272): LKAS_ALT - ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value - print("$$$CANFD ALT_STEERING1") - ## carrot_todo: sorento: - if 0x2a4 not in fingerprint[CAN.CAM]: # 0x2a4(676): CAM_0x2a4 - ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value - print("$$$CANFD ALT_STEERING2") - - ## carrot: canival 4th, no 0x1cf - if 0x1cf not in fingerprint[CAN.ECAN]: # 0x1cf(463): CRUISE_BUTTONS - ret.flags |= HyundaiFlags.CANFD_ALT_BUTTONS.value - print("$$$CANFD ALT_BUTTONS") - else: - # non-HDA2 - print("$$$CANFD non HDA2") - if 0x1cf not in fingerprint[CAN.ECAN]: - ret.flags |= HyundaiFlags.CANFD_ALT_BUTTONS.value - print("$$$CANFD ALT_BUTTONS") - #if not ret.flags & HyundaiFlags.RADAR_SCC: - # ret.flags |= HyundaiFlags.CANFD_CAMERA_SCC.value - # print("$$$CANFD CAMERA_SCC") - # Some HDA2 cars have alternative messages for gear checks - # ICE cars do not have 0x130; GEARS message on 0x40 or 0x70 instead - if 0x40 in fingerprint[CAN.ECAN]: # 0x40(64): GEAR_ALT - ret.flags |= HyundaiFlags.CANFD_ALT_GEARS.value - print("$$$CANFD ALT_GEARS") - elif 69 in fingerprint[CAN.ECAN]: # Special case - ret.extFlags |= HyundaiExtFlags.CANFD_GEARS_69.value - print("$$$CANFD GEARS_69") - elif 112 in fingerprint[CAN.ECAN]: # carrot: eGV70 - ret.flags |= HyundaiFlags.CANFD_ALT_GEARS_2.value - print("$$$CANFD ALT_GEARS_2") - elif 0x130 in fingerprint[CAN.ECAN]: # 0x130(304): GEAR_SHIFTER - print("$$$CANFD GEAR_SHIFTER present") - else: - ret.extFlags |= HyundaiExtFlags.CANFD_GEARS_NONE.value - print("$$$CANFD GEARS_NONE") - - cfgs = [get_safety_config(structs.CarParams.SafetyModel.hyundaiCanfd), ] - if CAN.ECAN >= 4: - cfgs.insert(0, get_safety_config(structs.CarParams.SafetyModel.noOutput)) - ret.safetyConfigs = cfgs - - if ret.flags & HyundaiFlags.CANFD_HDA2: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_LKA_STEERING.value - if ret.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_LKA_STEERING_ALT.value - if ret.flags & HyundaiFlags.CANFD_ALT_BUTTONS: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_ALT_BUTTONS.value - if ret.flags & HyundaiFlags.CANFD_CAMERA_SCC: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CAMERA_SCC.value - - else: - # Shared configuration for non CAN-FD cars - ret.alphaLongitudinalAvailable = True #candidate not in (UNSUPPORTED_LONGITUDINAL_CAR | CAMERA_SCC_CAR) - ret.enableBsm = 0x58b in fingerprint[0] - print(f"$$$ enableBsm = {ret.enableBsm}") - - # Send LFA message on cars with HDA - if 0x485 in fingerprint[2]: - ret.flags |= HyundaiFlags.SEND_LFA.value - print("$$$SEND_LFA") - - # These cars use the FCA11 message for the AEB and FCW signals, all others use SCC12 - if 0x38d in fingerprint[0] or 0x38d in fingerprint[2]: - ret.flags |= HyundaiFlags.USE_FCA.value - print("$$$USE_FCA") - - if ret.flags & HyundaiFlags.LEGACY: - # these cars require a special panda safety mode due to missing counters and checksums in the messages - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hyundaiLegacy)] - print("$$$Legacy Safety Model") - else: - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hyundai, 0)] - - if ret.flags & HyundaiFlags.CAMERA_SCC: - ret.safetyConfigs[0].safetyParam |= HyundaiSafetyFlags.CAMERA_SCC.value - print("$$$CAMERA_SCC") - - # Common lateral control setup - - ret.centerToFront = ret.wheelbase * 0.4 - ret.steerActuatorDelay = 0.1 - ret.steerLimitTimer = 0.4 - if ret.flags & HyundaiFlags.ANGLE_CONTROL: - ret.steerControlType = SteerControlType.angle - else: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - if ret.flags & HyundaiFlags.ALT_LIMITS: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.ALT_LIMITS.value - - # Common longitudinal control setup - - ret.radarUnavailable = RADAR_START_ADDR not in fingerprint[1] or Bus.radar not in DBC[ret.carFingerprint] - ret.openpilotLongitudinalControl = alpha_long and ret.alphaLongitudinalAvailable - - # carrot, if camera_scc enabled, enable openpilotLongitudinalControl - if ret.flags & HyundaiFlags.CAMERA_SCC.value or params.get_int("EnableRadarTracks") > 0: - ret.radarUnavailable = False - ret.openpilotLongitudinalControl = True if camera_scc < 3 else False - print(f"$$$OenpilotLongitudinalControl = True, CAMERA_SCC({ret.flags & HyundaiFlags.CAMERA_SCC.value}) or RadarTracks{params.get_int('EnableRadarTracks')}") - else: - print(f"$$$OenpilotLongitudinalControl = {alpha_long}") - - #ret.radarUnavailable = False # TODO: canfd... carrot, hyundai cars have radar - - ret.radarTimeStep = 0.05 #if params.get_int("EnableRadarTracks") > 0 else 0.02 - - ret.pcmCruise = not ret.openpilotLongitudinalControl - ret.startingState = False # True # carrot - ret.vEgoStarting = 0.1 - ret.startAccel = 1.0 - ret.longitudinalActuatorDelay = 0.5 - - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [1.] - ret.longitudinalTuning.kf = 1.0 - - # *** feature detection *** - if ret.flags & HyundaiFlags.CANFD: - print(f"$$$$$ CanFD ECAN = {CAN.ECAN}") - if 0x1fa in fingerprint[CAN.ECAN]: - ret.extFlags |= HyundaiExtFlags.NAVI_CLUSTER.value - print("$$$$ NaviCluster = True") - else: - print("$$$$ NaviCluster = False") - - else: - if 1348 in fingerprint[0]: - ret.extFlags |= HyundaiExtFlags.NAVI_CLUSTER.value - print("$$$$ NaviCluster = True") - if 1157 in fingerprint[0] or 1157 in fingerprint[2]: - ret.extFlags |= HyundaiExtFlags.HAS_LFAHDA.value - print("$$$$ HasLFAHDA") - if 1007 in fingerprint[0]: - print("#### cruiseButtonAlt") - - print(f"$$$$ enableBsm = {ret.enableBsm}") - - if ret.openpilotLongitudinalControl: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.LONG.value - if ret.flags & HyundaiFlags.HYBRID: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.HYBRID_GAS.value - elif ret.flags & HyundaiFlags.EV: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.EV_GAS.value - elif ret.flags & HyundaiFlags.FCEV: - ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.FCEV_GAS.value - - # Car specific configuration overrides - - if candidate == CAR.KIA_OPTIMA_G4_FL: - ret.steerActuatorDelay = 0.2 - - # Dashcam cars are missing a test route, or otherwise need validation - # TODO: Optima Hybrid 2017 uses a different SCC12 checksum - #ret.dashcamOnly = candidate in {CAR.KIA_OPTIMA_H, } - - return ret - - @staticmethod - def init(CP, can_recv, can_send): - - Params().put_int('LongitudinalPersonalityMax', 4) - - if CP.openpilotLongitudinalControl and not (CP.flags & HyundaiFlags.CANFD_CAMERA_SCC): - addr, bus = 0x7d0, 0 - if CP.flags & HyundaiFlags.CANFD_HDA2.value: - addr, bus = 0x730, CanBus(CP).ECAN - disable_ecu(can_recv, can_send, bus=bus, addr=addr, com_cont_req=b'\x28\x83\x01') - - params = Params() - if params.get_int("EnableRadarTracks") > 0 and not CP.flags & HyundaiFlags.CANFD: - result = enable_radar_tracks(CP, can_recv, can_send) - params.put_bool("EnableRadarTracksResult", result) - - # for blinkers - if CP.flags & HyundaiFlags.ENABLE_BLINKERS: - disable_ecu(can_recv, can_send, bus=CanBus(CP).ECAN, addr=0x7B1, com_cont_req=b'\x28\x83\x01') - -def enable_radar_tracks(CP, logcan, sendcan): - from opendbc.car.isotp_parallel_query import IsoTpParallelQuery - print("################ Try To Enable Radar Tracks ####################") - - ret = False - sccBus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC.value else 0 - rdr_fw = None - rdr_fw_address = 0x7d0 # - try: - try: - query = IsoTpParallelQuery(sendcan, logcan, sccBus, [rdr_fw_address], [b'\x10\x07'], [b'\x50\x07']) - for addr, dat in query.get_data(0.1).items(): # pylint: disable=unused-variable - print("ecu write data by id ...") - new_config = b"\x00\x00\x00\x01\x00\x01" - #new_config = b"\x00\x00\x00\x00\x00\x01" - dataId = b'\x01\x42' - WRITE_DAT_REQUEST = b'\x2e' - WRITE_DAT_RESPONSE = b'\x68' - query = IsoTpParallelQuery(sendcan, logcan, sccBus, [rdr_fw_address], [WRITE_DAT_REQUEST+dataId+new_config], [WRITE_DAT_RESPONSE]) - result = query.get_data(0) - print("result=", result) - ret = True - break - except Exception as e: - print(f"Failed : {e}") - except Exception as e: - print("############## Failed to enable tracks" + str(e)) - print("################ END Try to enable radar tracks") - return ret diff --git a/opendbc_repo/opendbc/car/hyundai/radar_interface.py b/opendbc_repo/opendbc/car/hyundai/radar_interface.py deleted file mode 100644 index 1b26d36f16..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/radar_interface.py +++ /dev/null @@ -1,247 +0,0 @@ -import math - -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import RadarInterfaceBase -from opendbc.car.hyundai.values import DBC, HyundaiFlags, HyundaiExtFlags -from openpilot.common.params import Params -from opendbc.car.hyundai.hyundaicanfd import CanBus -from openpilot.common.filter_simple import MyMovingAverage - -SCC_TID = 0 -RADAR_START_ADDR = 0x500 -RADAR_MSG_COUNT = 32 -RADAR_START_ADDR_CANFD1 = 0x210 -RADAR_MSG_COUNT1 = 16 -RADAR_START_ADDR_CANFD2 = 0x3A5 # Group 2, Group 1: 0x210 2개씩있어서 일단 보류. -RADAR_MSG_COUNT2 = 32 - -# POC for parsing corner radars: https://github.com/commaai/openpilot/pull/24221/ - -def get_radar_can_parser(CP, radar_tracks, msg_start_addr, msg_count): - if not radar_tracks: - return None - #if Bus.radar not in DBC[CP.carFingerprint]: - # return None - print("RadarInterface: RadarTracks...") - - if CP.flags & HyundaiFlags.CANFD: - CAN = CanBus(CP) - messages = [(f"RADAR_TRACK_{addr:x}", 20) for addr in range(msg_start_addr, msg_start_addr + msg_count)] - return CANParser('hyundai_canfd_radar_generated', messages, CAN.ACAN) - else: - messages = [(f"RADAR_TRACK_{addr:x}", 20) for addr in range(msg_start_addr, msg_start_addr + msg_count)] - #return CANParser(DBC[CP.carFingerprint][Bus.radar], messages, 1) - return CANParser('hyundai_kia_mando_front_radar_generated', messages, 1) - -def get_radar_can_parser_scc(CP): - CAN = CanBus(CP) - if CP.flags & HyundaiFlags.CANFD: - messages = [("SCC_CONTROL", 50)] - bus = CAN.ECAN - else: - messages = [("SCC11", 50)] - bus = CAN.ECAN - - print("$$$$$$$$ ECAN = ", CAN.ECAN) - bus = CAN.CAM if CP.flags & HyundaiFlags.CAMERA_SCC else bus - return CANParser(DBC[CP.carFingerprint][Bus.pt], messages, bus) - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - - self.canfd = True if CP.flags & HyundaiFlags.CANFD else False - self.radar_group1 = False - if self.canfd: - if CP.extFlags & HyundaiExtFlags.RADAR_GROUP1.value: - self.radar_start_addr = RADAR_START_ADDR_CANFD1 - self.radar_msg_count = RADAR_MSG_COUNT1 - self.radar_group1 = True - else: - self.radar_start_addr = RADAR_START_ADDR_CANFD2 - self.radar_msg_count = RADAR_MSG_COUNT2 - else: - self.radar_start_addr = RADAR_START_ADDR - self.radar_msg_count = RADAR_MSG_COUNT - - self.params = Params() - self.radar_tracks = self.params.get_int("EnableRadarTracks") >= 1 - self.updated_tracks = set() - self.updated_scc = set() - self.rcp_tracks = get_radar_can_parser(CP, self.radar_tracks, self.radar_start_addr, self.radar_msg_count) - self.rcp_scc = get_radar_can_parser_scc(CP) - self.trigger_msg_scc = 416 if self.canfd else 0x420 - - self.trigger_msg_tracks = self.radar_start_addr + self.radar_msg_count - 1 - self.track_id = 0 - - self.radar_off_can = CP.radarUnavailable - - self.vRel_last = 0 - self.dRel_last = 0 - - # Initialize pts - total_tracks = self.radar_msg_count * ( 2 if self.radar_group1 else 1) - for track_id in range(total_tracks): - t_id = track_id + 32 - self.pts[t_id] = structs.RadarData.RadarPoint() - self.pts[t_id].measured = False - self.pts[t_id].trackId = t_id - - self.pts[SCC_TID] = structs.RadarData.RadarPoint() - self.pts[SCC_TID].trackId = SCC_TID - - self.frame = 0 - - - def update(self, can_strings): - self.frame += 1 - if self.radar_off_can or (self.rcp_tracks is None and self.rcp_scc is None): - return super().update(None) - - if self.rcp_scc is not None: - vls_s = self.rcp_scc.update(can_strings) - self.updated_scc.update(vls_s) - if not self.radar_tracks and self.frame % 5 == 0: - self._update_scc(self.updated_scc) - self.updated_scc.clear() - ret = structs.RadarData() - if not self.rcp_scc.can_valid: - ret.errors.canError = True - ret.points = list(self.pts.values()) - return ret - if self.radar_tracks and self.rcp_tracks is not None: - vls_t = self.rcp_tracks.update(can_strings) - self.updated_tracks.update(vls_t) - if self.trigger_msg_tracks in self.updated_tracks: - self._update(self.updated_tracks) - self._update_scc(self.updated_scc) - self.updated_scc.clear() - self.updated_tracks.clear() - ret = structs.RadarData() - if not self.rcp_tracks.can_valid: - ret.errors.canError = True - ret.points = list(self.pts.values()) - return ret - - return None - - def _update(self, updated_messages): - - t_id = 32 - for addr in range(self.radar_start_addr, self.radar_start_addr + self.radar_msg_count): - - msg = self.rcp_tracks.vl[f"RADAR_TRACK_{addr:x}"] - - if self.radar_group1: - valid = msg['VALID_CNT1'] > 10 - elif self.canfd: - valid = msg['VALID_CNT'] > 10 - else: - valid = msg['STATE'] in (3, 4) - - self.pts[t_id].measured = bool(valid) - if not valid: - self.pts[t_id].dRel = 0 - self.pts[t_id].yRel = 0 - self.pts[t_id].vRel = 0 - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = float('nan') - self.pts[t_id].yvRel = 0 - elif self.radar_group1: - self.pts[t_id].dRel = msg['LONG_DIST1'] - self.pts[t_id].yRel = msg['LAT_DIST1'] - self.pts[t_id].vRel = msg['REL_SPEED1'] - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = msg['REL_ACCEL1'] - self.pts[t_id].yvRel = msg['LAT_SPEED1'] - elif self.canfd: - self.pts[t_id].dRel = msg['LONG_DIST'] - self.pts[t_id].yRel = msg['LAT_DIST'] - self.pts[t_id].vRel = msg['REL_SPEED'] - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = msg['REL_ACCEL'] - self.pts[t_id].yvRel = msg['LAT_SPEED'] - else: - azimuth = math.radians(msg['AZIMUTH']) - self.pts[t_id].dRel = math.cos(azimuth) * msg['LONG_DIST'] - self.pts[t_id].yRel = 0.5 * -math.sin(azimuth) * msg['LONG_DIST'] - self.pts[t_id].vRel = msg['REL_SPEED'] - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = msg['REL_ACCEL'] - self.pts[t_id].yvRel = 0.0 - - t_id += 1 - # radar group1은 하나의 msg에 2개의 레이더가 들어있음. - if self.radar_group1: - for addr in range(self.radar_start_addr, self.radar_start_addr + self.radar_msg_count): - msg = self.rcp_tracks.vl[f"RADAR_TRACK_{addr:x}"] - - valid = msg['VALID_CNT2'] > 10 - self.pts[t_id].measured = bool(valid) - if not valid: - self.pts[t_id].dRel = 0 - self.pts[t_id].yRel = 0 - self.pts[t_id].vRel = 0 - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = float('nan') - self.pts[t_id].yvRel = 0 - else: - self.pts[t_id].dRel = msg['LONG_DIST2'] - self.pts[t_id].yRel = msg['LAT_DIST2'] - self.pts[t_id].vRel = msg['REL_SPEED2'] - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = msg['REL_ACCEL2'] - self.pts[t_id].yvRel = msg['LAT_SPEED2'] - - t_id += 1 - - def _update_scc(self, updated_messages): - cpt = self.rcp_scc.vl - t_id = SCC_TID - if self.canfd: - dRel = cpt["SCC_CONTROL"]['ACC_ObjDist'] - vRel = cpt["SCC_CONTROL"]['ACC_ObjRelSpd'] - new_pts = abs(dRel - self.dRel_last) > 3 or abs(vRel - self.vRel_last) > 1 - vLead = vRel + self.v_ego - valid = 0 < dRel < 150 and not new_pts #cpt["SCC_CONTROL"]['OBJ_STATUS'] and dRel < 150 - self.pts[t_id].measured = bool(valid) - if not valid: - self.pts[t_id].dRel = 0 - self.pts[t_id].yRel = 0 - self.pts[t_id].vRel = 0 - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = float('nan') - self.pts[t_id].yvRel = 0 - else: - self.pts[t_id].dRel = dRel - self.pts[t_id].yRel = 0 - self.pts[t_id].vRel = vRel - self.pts[t_id].vLead = vLead - self.pts[t_id].aRel = float('nan') - self.pts[t_id].yvRel = 0 #float('nan') - else: - dRel = cpt["SCC11"]['ACC_ObjDist'] - vRel = cpt["SCC11"]['ACC_ObjRelSpd'] - new_pts = abs(dRel - self.dRel_last) > 3 or abs(vRel - self.vRel_last) > 1 - vLead = vRel + self.v_ego - valid = cpt["SCC11"]['ACC_ObjStatus'] and dRel < 150 and not new_pts - self.pts[t_id].measured = bool(valid) - if not valid: - self.pts[t_id].dRel = 0 - self.pts[t_id].yRel = 0 - self.pts[t_id].vRel = 0 - self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego - self.pts[t_id].aRel = float('nan') - self.pts[t_id].yvRel = 0 - else: - self.pts[t_id].dRel = dRel - self.pts[t_id].yRel = -cpt["SCC11"]['ACC_ObjLatPos'] # in car frame's y axis, left is negative - self.pts[t_id].vRel = vRel - self.pts[t_id].vLead = vLead - self.pts[t_id].aRel = float('nan') - self.pts[t_id].yvRel = 0 #float('nan') - - self.dRel_last = dRel - self.vRel_last = vRel diff --git a/opendbc_repo/opendbc/car/hyundai/tests/__init__.py b/opendbc_repo/opendbc/car/hyundai/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py b/opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py deleted file mode 100755 index 325b020f9b..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.car.structs import CarParams -from opendbc.car.hyundai.values import PLATFORM_CODE_ECUS, get_platform_codes -from opendbc.car.hyundai.fingerprints import FW_VERSIONS - -Ecu = CarParams.Ecu - -if __name__ == "__main__": - for car_model, ecus in FW_VERSIONS.items(): - print() - print(car_model) - for ecu in sorted(ecus): - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - platform_codes = get_platform_codes(ecus[ecu]) - codes = {code for code, _ in platform_codes} - dates = {date for _, date in platform_codes if date is not None} - print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') - print(f' Codes: {codes}') - print(f' Dates: {dates}') diff --git a/opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py b/opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py deleted file mode 100644 index 6aedc73d95..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py +++ /dev/null @@ -1,247 +0,0 @@ -from hypothesis import settings, given, strategies as st - -import pytest - -from opendbc.car import gen_empty_fingerprint -from opendbc.car.structs import CarParams -from opendbc.car.fw_versions import build_fw_dict -from opendbc.car.hyundai.interface import CarInterface -from opendbc.car.hyundai.hyundaicanfd import CanBus -from opendbc.car.hyundai.radar_interface import RADAR_START_ADDR -from opendbc.car.hyundai.values import CAMERA_SCC_CAR, CANFD_CAR, CAN_GEARS, CAR, CHECKSUM, DATE_FW_ECUS, \ - HYBRID_CAR, EV_CAR, FW_QUERY_CONFIG, LEGACY_SAFETY_MODE_CAR, CANFD_FUZZY_WHITELIST, \ - UNSUPPORTED_LONGITUDINAL_CAR, PLATFORM_CODE_ECUS, HYUNDAI_VERSION_REQUEST_LONG, \ - HyundaiFlags, get_platform_codes, HyundaiSafetyFlags -from opendbc.car.hyundai.fingerprints import FW_VERSIONS - -Ecu = CarParams.Ecu - -# Some platforms have date codes in a different format we don't yet parse (or are missing). -# For now, assert list of expected missing date cars -NO_DATES_PLATFORMS = { - # CAN FD - CAR.KIA_SPORTAGE_5TH_GEN, - CAR.HYUNDAI_SANTA_CRUZ_1ST_GEN, - CAR.HYUNDAI_TUCSON_4TH_GEN, - # CAN - CAR.HYUNDAI_ELANTRA, - CAR.HYUNDAI_ELANTRA_GT_I30, - CAR.KIA_CEED, - CAR.KIA_FORTE, - CAR.KIA_OPTIMA_G4, - CAR.KIA_OPTIMA_G4_FL, - CAR.KIA_SORENTO, - CAR.HYUNDAI_KONA, - CAR.HYUNDAI_KONA_EV, - CAR.HYUNDAI_KONA_EV_2022, - CAR.HYUNDAI_KONA_HEV, - CAR.HYUNDAI_SONATA_LF, - CAR.HYUNDAI_VELOSTER, - CAR.HYUNDAI_KONA_2022, -} - -CANFD_EXPECTED_ECUS = {Ecu.fwdCamera, Ecu.fwdRadar} - - -class TestHyundaiFingerprint: - def test_feature_detection(self): - # LKA steering - for lka_steering in (True, False): - fingerprint = gen_empty_fingerprint() - if lka_steering: - cam_can = CanBus(None, fingerprint).CAM - fingerprint[cam_can] = [0x50, 0x110] # LKA steering messages - CP = CarInterface.get_params(CAR.KIA_EV6, fingerprint, [], False, False) - assert bool(CP.flags & HyundaiFlags.CANFD_LKA_STEERING) == lka_steering - - # radar available - for radar in (True, False): - fingerprint = gen_empty_fingerprint() - if radar: - fingerprint[1][RADAR_START_ADDR] = 8 - CP = CarInterface.get_params(CAR.HYUNDAI_SONATA, fingerprint, [], False, False) - assert CP.radarUnavailable != radar - - def test_alternate_limits(self): - # Alternate lateral control limits, for high torque cars, verify Panda safety mode flag is set - fingerprint = gen_empty_fingerprint() - for car_model in CAR: - CP = CarInterface.get_params(car_model, fingerprint, [], False, False) - assert bool(CP.flags & HyundaiFlags.ALT_LIMITS) == bool(CP.safetyConfigs[-1].safetyParam & HyundaiSafetyFlags.ALT_LIMITS) - - def test_can_features(self): - # Test no EV/HEV in any gear lists (should all use ELECT_GEAR) - assert set.union(*CAN_GEARS.values()) & (HYBRID_CAR | EV_CAR) == set() - - # Test CAN FD car not in CAN feature lists - can_specific_feature_list = set.union(*CAN_GEARS.values(), *CHECKSUM.values(), LEGACY_SAFETY_MODE_CAR, UNSUPPORTED_LONGITUDINAL_CAR, CAMERA_SCC_CAR) - for car_model in CANFD_CAR: - assert car_model not in can_specific_feature_list, "CAN FD car unexpectedly found in a CAN feature list" - - def test_hybrid_ev_sets(self): - assert HYBRID_CAR & EV_CAR == set(), "Shared cars between hybrid and EV" - assert CANFD_CAR & HYBRID_CAR == set(), "Hard coding CAN FD cars as hybrid is no longer supported" - - def test_canfd_ecu_whitelist(self): - # Asserts only expected Ecus can exist in database for CAN-FD cars - for car_model in CANFD_CAR: - ecus = {fw[0] for fw in FW_VERSIONS[car_model].keys()} - ecus_not_in_whitelist = ecus - CANFD_EXPECTED_ECUS - ecu_strings = ", ".join([f"Ecu.{ecu}" for ecu in ecus_not_in_whitelist]) - assert len(ecus_not_in_whitelist) == 0, \ - f"{car_model}: Car model has unexpected ECUs: {ecu_strings}" - - def test_blacklisted_parts(self, subtests): - # Asserts no ECUs known to be shared across platforms exist in the database. - # Tucson having Santa Cruz camera and EPS for example - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - if car_model == CAR.HYUNDAI_SANTA_CRUZ_1ST_GEN: - pytest.skip("Skip checking Santa Cruz for its parts") - - for code, _ in get_platform_codes(ecus[(Ecu.fwdCamera, 0x7c4, None)]): - if b"-" not in code: - continue - part = code.split(b"-")[1] - assert not part.startswith(b'CW'), "Car has bad part number" - - def test_correct_ecu_response_database(self, subtests): - """ - Assert standard responses for certain ECUs, since they can - respond to multiple queries with different data - """ - expected_fw_prefix = HYUNDAI_VERSION_REQUEST_LONG[1:] - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for ecu, fws in ecus.items(): - assert all(fw.startswith(expected_fw_prefix) for fw in fws), \ - f"FW from unexpected request in database: {(ecu, fws)}" - - @settings(max_examples=100) - @given(data=st.data()) - def test_platform_codes_fuzzy_fw(self, data): - """Ensure function doesn't raise an exception""" - fw_strategy = st.lists(st.binary()) - fws = data.draw(fw_strategy) - get_platform_codes(fws) - - def test_expected_platform_codes(self, subtests): - # Ensures we don't accidentally add multiple platform codes for a car unless it is intentional - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for ecu, fws in ecus.items(): - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - # Third and fourth character are usually EV/hybrid identifiers - codes = {code.split(b"-")[0][:2] for code, _ in get_platform_codes(fws)} - if car_model == CAR.HYUNDAI_PALISADE: - assert codes == {b"LX", b"ON"}, f"Car has unexpected platform codes: {car_model} {codes}" - elif car_model == CAR.HYUNDAI_KONA_EV and ecu[0] == Ecu.fwdCamera: - assert codes == {b"OE", b"OS"}, f"Car has unexpected platform codes: {car_model} {codes}" - else: - assert len(codes) == 1, f"Car has multiple platform codes: {car_model} {codes}" - - # Tests for platform codes, part numbers, and FW dates which Hyundai will use to fuzzy - # fingerprint in the absence of full FW matches: - def test_platform_code_ecus_available(self, subtests): - # TODO: add queries for these non-CAN FD cars to get EPS - no_eps_platforms = CANFD_CAR | {CAR.KIA_SORENTO, CAR.KIA_OPTIMA_G4, CAR.KIA_OPTIMA_G4_FL, CAR.KIA_OPTIMA_H, - CAR.KIA_OPTIMA_H_G4_FL, CAR.HYUNDAI_SONATA_LF, CAR.HYUNDAI_TUCSON, CAR.GENESIS_G90, CAR.GENESIS_G80, CAR.HYUNDAI_ELANTRA} - - # Asserts ECU keys essential for fuzzy fingerprinting are available on all platforms - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for platform_code_ecu in PLATFORM_CODE_ECUS: - if platform_code_ecu in (Ecu.fwdRadar, Ecu.eps) and car_model == CAR.HYUNDAI_GENESIS: - continue - if platform_code_ecu == Ecu.eps and car_model in no_eps_platforms: - continue - assert platform_code_ecu in [e[0] for e in ecus] - - def test_fw_format(self, subtests): - # Asserts: - # - every supported ECU FW version returns one platform code - # - every supported ECU FW version has a part number - # - expected parsing of ECU FW dates - - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for ecu, fws in ecus.items(): - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - codes = set() - for fw in fws: - result = get_platform_codes([fw]) - assert 1 == len(result), f"Unable to parse FW: {fw}" - codes |= result - - if ecu[0] not in DATE_FW_ECUS or car_model in NO_DATES_PLATFORMS: - assert all(date is None for _, date in codes) - else: - assert all(date is not None for _, date in codes) - - if car_model == CAR.HYUNDAI_GENESIS: - pytest.skip("No part numbers for car model") - - # Hyundai places the ECU part number in their FW versions, assert all parsable - # Some examples of valid formats: b"56310-L0010", b"56310L0010", b"56310/M6300" - assert all(b"-" in code for code, _ in codes), \ - f"FW does not have part number: {fw}" - - def test_platform_codes_spot_check(self): - # Asserts basic platform code parsing behavior for a few cases - results = get_platform_codes([b"\xf1\x00DH LKAS 1.1 -150210"]) - assert results == {(b"DH", b"150210")} - - # Some cameras and all radars do not have dates - results = get_platform_codes([b"\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 "]) - assert results == {(b"AEhe-G2000", None)} - - results = get_platform_codes([b"\xf1\x00CV1_ RDR ----- 1.00 1.01 99110-CV000 "]) - assert results == {(b"CV1-CV000", None)} - - results = get_platform_codes([ - b"\xf1\x00DH LKAS 1.1 -150210", - b"\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 ", - b"\xf1\x00CV1_ RDR ----- 1.00 1.01 99110-CV000 ", - ]) - assert results == {(b"DH", b"150210"), (b"AEhe-G2000", None), (b"CV1-CV000", None)} - - results = get_platform_codes([ - b"\xf1\x00LX2 MFC AT USA LHD 1.00 1.07 99211-S8100 220222", - b"\xf1\x00LX2 MFC AT USA LHD 1.00 1.08 99211-S8100 211103", - b"\xf1\x00ON MFC AT USA LHD 1.00 1.01 99211-S9100 190405", - b"\xf1\x00ON MFC AT USA LHD 1.00 1.03 99211-S9100 190720", - ]) - assert results == {(b"LX2-S8100", b"220222"), (b"LX2-S8100", b"211103"), - (b"ON-S9100", b"190405"), (b"ON-S9100", b"190720")} - - def test_fuzzy_excluded_platforms(self): - # Asserts a list of platforms that will not fuzzy fingerprint with platform codes due to them being shared. - # This list can be shrunk as we combine platforms and detect features - excluded_platforms = { - CAR.GENESIS_G70, # shared platform code, part number, and date - CAR.GENESIS_G70_2020, - } - excluded_platforms |= CANFD_CAR - EV_CAR - CANFD_FUZZY_WHITELIST # shared platform codes - excluded_platforms |= NO_DATES_PLATFORMS # date codes are required to match - - platforms_with_shared_codes = set() - for platform, fw_by_addr in FW_VERSIONS.items(): - car_fw = [] - for ecu, fw_versions in fw_by_addr.items(): - ecu_name, addr, sub_addr = ecu - for fw in fw_versions: - car_fw.append(CarParams.CarFw(ecu=ecu_name, fwVersion=fw, address=addr, - subAddress=0 if sub_addr is None else sub_addr)) - - CP = CarParams(carFw=car_fw) - matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, FW_VERSIONS) - if len(matches) == 1: - assert list(matches)[0] == platform - else: - platforms_with_shared_codes.add(platform) - - assert platforms_with_shared_codes == excluded_platforms diff --git a/opendbc_repo/opendbc/car/hyundai/values.py b/opendbc_repo/opendbc/car/hyundai/values.py deleted file mode 100644 index 492eb67fa7..0000000000 --- a/opendbc_repo/opendbc/car/hyundai/values.py +++ /dev/null @@ -1,1011 +0,0 @@ -import re -from dataclasses import dataclass, field -from enum import Enum, IntFlag - -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds, AngleSteeringLimits -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, p16 - -Ecu = CarParams.Ecu - - -class CarControllerParams: - ACCEL_MIN = -4.0 # m/s - ACCEL_MAX = 2.5 # m/s - ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( - # LKAS angle command is unlimited, but LFA is limited to 176.7 deg (but does not fault if requesting above) - 175, # deg - # stock comma's - #([0, 9, 16, 25], [1.4, 0.6, 0.4, 0.1]), - #([0, 9, 16, 25], [1.4, 0.7, 0.5, 0.1]), - ([0, 9, 16, 25], [1.8, 1.6, 1.3, 0.8]), - ([0, 9, 16, 25], [2.4, 2.0, 1.6, 1.0]), - #([0, 9, 16, 25], [1.6, 1.0, 0.6, 0.15]), - #([0, 9, 16, 25], [2.0, 1.2, 0.8, 0.28]), - # sunny's - #([0, 5, 25], [0.6, 0.4, 0.15]), - #([0, 5, 25], [1.0, 0.5, 0.26]), - ) - # Stock LFA system is seen sending 250 max, but for LKAS events it's 175 max. - # 250 can at least achieve 4 m/s^2, 80 corresponds to ~2.5 m/s^2 - ANGLE_MAX_TORQUE = 200 # The maximum amount of torque that will be allowed - ANGLE_MIN_TORQUE = 25 # equivalent to ~0.8 m/s^2 of torque (based on ANGLE_MAX_TORQUE) when overriding - ANGLE_TORQUE_UP_RATE = 8 #2 # Indicates how fast the torque ramps up after user intervention. - ANGLE_TORQUE_DOWN_RATE = 12 #4 Indicates how fast the torque ramps down during user intervention (handing off). - - def __init__(self, CP): - self.STEER_DELTA_UP = 3 - self.STEER_DELTA_DOWN = 7 - self.STEER_DRIVER_ALLOWANCE = 50 - self.STEER_DRIVER_MULTIPLIER = 2 - self.STEER_DRIVER_FACTOR = 1 - self.STEER_THRESHOLD = 150 - self.STEER_STEP = 1 # 100 Hz - - if CP.flags & HyundaiFlags.CANFD: - self.STEER_MAX = 270 - self.STEER_DRIVER_ALLOWANCE = 250 - self.STEER_DRIVER_MULTIPLIER = 2 - self.STEER_THRESHOLD = 250 - self.STEER_DELTA_UP = 2 - self.STEER_DELTA_DOWN = 3 - - # To determine the limit for your car, find the maximum value that the stock LKAS will request. - # If the max stock LKAS request is <384, add your car to this list. - elif CP.carFingerprint in (CAR.GENESIS_G80, CAR.HYUNDAI_ELANTRA, CAR.HYUNDAI_ELANTRA_GT_I30, CAR.HYUNDAI_IONIQ, - CAR.HYUNDAI_IONIQ_EV_LTD, CAR.HYUNDAI_SANTA_FE_PHEV_2022, CAR.HYUNDAI_SONATA_LF, CAR.KIA_FORTE, CAR.KIA_NIRO_PHEV, - CAR.KIA_OPTIMA_H, CAR.KIA_OPTIMA_H_G4_FL, CAR.KIA_SORENTO): - self.STEER_MAX = 255 - - elif CP.carFingerprint in (CAR.HYUNDAI_SANTA_FE_PHEV_2022): - self.STEER_MAX = 409 - # these cars have significantly more torque than most HKG; limit to 70% of max - elif CP.flags & HyundaiFlags.ALT_LIMITS: - self.STEER_MAX = 384 - self.STEER_DELTA_UP = 2 - self.STEER_DELTA_DOWN = 3 - - # Default for most HKG - else: - self.STEER_MAX = 409 - - -class HyundaiSafetyFlags(IntFlag): - EV_GAS = 1 - HYBRID_GAS = 2 - LONG = 4 - CAMERA_SCC = 8 - CANFD_LKA_STEERING = 16 - CANFD_ALT_BUTTONS = 32 - ALT_LIMITS = 64 - CANFD_LKA_STEERING_ALT = 128 - FCEV_GAS = 256 - ALT_LIMITS_2 = 512 - - -class HyundaiFlags(IntFlag): - # Dynamic Flags - CANFD_HDA2 = 1 - CANFD_ALT_BUTTONS = 2 - CANFD_ALT_GEARS = 2 ** 2 - CANFD_CAMERA_SCC = 2 ** 3 - - ALT_LIMITS = 2 ** 4 - ENABLE_BLINKERS = 2 ** 5 - CANFD_ALT_GEARS_2 = 2 ** 6 - SEND_LFA = 2 ** 7 - USE_FCA = 2 ** 8 - CANFD_HDA2_ALT_STEERING = 2 ** 9 - - # these cars use a different gas signal - HYBRID = 2 ** 10 - EV = 2 ** 11 - - # Static flags - - # If 0x500 is present on bus 1 it probably has a Mando radar outputting radar points. - # If no points are outputted by default it might be possible to turn it on using selfdrive/debug/hyundai_enable_radar_points.py - MANDO_RADAR = 2 ** 12 - CANFD = 2 ** 13 - - # The radar does SCC on these cars when HDA I, rather than the camera - RADAR_SCC = 2 ** 14 - # The camera does SCC on these cars, rather than the radar - CAMERA_SCC = CANFD_CAMERA_SCC #2 ** 15 - CHECKSUM_CRC8 = 2 ** 16 - CHECKSUM_6B = 2 ** 17 - - # these cars require a special panda safety mode due to missing counters and checksums in the messages - LEGACY = 2 ** 18 - - # these cars have not been verified to work with longitudinal yet - radar disable, sending correct messages, etc. - UNSUPPORTED_LONGITUDINAL = 2 ** 19 - - # These CAN FD cars do not accept communication control to disable the ADAS ECU, - # responds with 0x7F2822 - 'conditions not correct' - CANFD_NO_RADAR_DISABLE = 2 ** 20 - - CLUSTER_GEARS = 2 ** 21 - TCU_GEARS = 2 ** 22 - - MIN_STEER_32_MPH = 2 ** 23 - - ANGLE_CONTROL = 2 ** 24 - - FCEV = 2 ** 25 - - ALT_LIMITS_2 = 2 ** 26 - - CC_ONLY_CAR = 2 ** 31 - -class HyundaiExtFlags(IntFlag): - NAVI_CLUSTER = 2 ** 2 - HAS_LFAHDA = 2 ** 4 - CANFD_GEARS_NONE = 2 ** 6 - RADAR_GROUP1 = 2 ** 7 # 0x210 radar group 1, 0x3A5 radar group 2 - CANFD_GEARS_69 = 2 ** 10 - -class Footnote(Enum): - CANFD = CarFootnote( - "Requires a CAN FD panda kit if not using " + - "comma 3X for this CAN FD car.", - Column.MODEL) - - -@dataclass -class HyundaiCarDocs(CarDocs): - package: str = "Smart Cruise Control (SCC)" - - def init_make(self, CP: CarParams): - if CP.flags & HyundaiFlags.CANFD: - self.footnotes.insert(0, Footnote.CANFD) - - -@dataclass -class HyundaiPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: "hyundai_kia_generic"}) - - def init(self): - if self.flags & HyundaiFlags.MANDO_RADAR: - self.dbc_dict = {Bus.pt: "hyundai_kia_generic", Bus.radar: 'hyundai_kia_mando_front_radar_generated'} - - if self.flags & HyundaiFlags.MIN_STEER_32_MPH: - self.specs = self.specs.override(minSteerSpeed=32 * CV.MPH_TO_MS) - - -@dataclass -class HyundaiCanFDPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: "hyundai_canfd_generated", Bus.radar: 'hyundai_canfd_radar_generated'}) - - def init(self): - self.flags |= HyundaiFlags.CANFD - - -class CAR(Platforms): - # Hyundai - HYUNDAI_AZERA_7TH_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Azera 2023-2024", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], - CarSpecs(mass=1700, wheelbase=2.895, steerRatio=16.5), - ) - HYUNDAI_AZERA_6TH_GEN = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Azera 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=1600, wheelbase=2.885, steerRatio=14.5), - ) - HYUNDAI_AZERA_HEV_6TH_GEN = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Hyundai Azera Hybrid 2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c])), - HyundaiCarDocs("Hyundai Azera Hybrid 2020", "All", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - CarSpecs(mass=1675, wheelbase=2.885, steerRatio=14.5), - flags=HyundaiFlags.HYBRID, - ) - HYUNDAI_ELANTRA = HyundaiPlatformConfig( - [ - # TODO: 2017-18 could be Hyundai G - HyundaiCarDocs("Hyundai Elantra 2017-18", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_b])), - HyundaiCarDocs("Hyundai Elantra 2019", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_g])), - ], - # steerRatio: 14 is Stock | Settled Params Learner values are steerRatio: 15.401566348670535, stiffnessFactor settled on 1.0081302973865127 - CarSpecs(mass=1275, wheelbase=2.7, steerRatio=15.4, tireStiffnessFactor=0.385), - flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS | HyundaiFlags.MIN_STEER_32_MPH, - ) - HYUNDAI_ELANTRA_GT_I30 = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Hyundai Elantra GT 2017-20", car_parts=CarParts.common([CarHarness.hyundai_e])), - HyundaiCarDocs("Hyundai i30 2017-19", car_parts=CarParts.common([CarHarness.hyundai_e])), - ], - HYUNDAI_ELANTRA.specs, - flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS | HyundaiFlags.MIN_STEER_32_MPH, - ) - HYUNDAI_ELANTRA_2021 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Elantra 2021-23", video="https://youtu.be/_EdYQtV52-c", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=2800 * CV.LB_TO_KG, wheelbase=2.72, steerRatio=12.9, tireStiffnessFactor=0.65), - flags=HyundaiFlags.CHECKSUM_CRC8, - ) - HYUNDAI_ELANTRA_HEV_2021 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Elantra Hybrid 2021-23", video="https://youtu.be/_EdYQtV52-c", - car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=3017 * CV.LB_TO_KG, wheelbase=2.72, steerRatio=12.9, tireStiffnessFactor=0.65), - flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, - ) - HYUNDAI_GENESIS = HyundaiPlatformConfig( - [ - # TODO: check 2015 packages - HyundaiCarDocs("Hyundai Genesis 2015-16", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_j])), - HyundaiCarDocs("Genesis G80 2017", "All", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_j])), - ], - CarSpecs(mass=2060, wheelbase=3.01, steerRatio=16.5, minSteerSpeed=60 * CV.KPH_TO_MS), - flags=HyundaiFlags.CHECKSUM_6B | HyundaiFlags.LEGACY, - ) - HYUNDAI_IONIQ = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq Hybrid 2017-19", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), - flags=HyundaiFlags.HYBRID | HyundaiFlags.MIN_STEER_32_MPH, - ) - HYUNDAI_IONIQ_HEV_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq Hybrid 2020-22", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), - flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, - ) - HYUNDAI_IONIQ_EV_LTD = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq Electric 2019", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.EV | HyundaiFlags.LEGACY | HyundaiFlags.MIN_STEER_32_MPH, - ) - HYUNDAI_IONIQ_EV_2020 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq Electric 2020", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), - flags=HyundaiFlags.EV, - ) - HYUNDAI_IONIQ_PHEV_2019 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq Plug-in Hybrid 2019", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), - flags=HyundaiFlags.HYBRID | HyundaiFlags.MIN_STEER_32_MPH, - ) - HYUNDAI_IONIQ_PHEV = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq Plug-in Hybrid 2020-22", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), - flags=HyundaiFlags.HYBRID, - ) - HYUNDAI_KONA = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Kona 2020", min_enable_speed=6 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_b]))], - CarSpecs(mass=1275, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), - flags=HyundaiFlags.CLUSTER_GEARS | HyundaiFlags.ALT_LIMITS, - ) - HYUNDAI_KONA_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Kona 2022", car_parts=CarParts.common([CarHarness.hyundai_o]))], - CarSpecs(mass=1491, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), - flags=HyundaiFlags.CAMERA_SCC, - ) - HYUNDAI_KONA_EV = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Kona Electric 2018-21", car_parts=CarParts.common([CarHarness.hyundai_g]))], - CarSpecs(mass=1685, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), - flags=HyundaiFlags.EV | HyundaiFlags.ALT_LIMITS, - ) - HYUNDAI_KONA_EV_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Kona Electric 2022-23", car_parts=CarParts.common([CarHarness.hyundai_o]))], - CarSpecs(mass=1743, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), - flags=HyundaiFlags.CAMERA_SCC | HyundaiFlags.EV | HyundaiFlags.ALT_LIMITS, - ) - HYUNDAI_KONA_EV_2ND_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Kona Electric (with HDA II, Korea only) 2023", video="https://www.youtube.com/watch?v=U2fOCmcQ8hw", - car_parts=CarParts.common([CarHarness.hyundai_r]))], - CarSpecs(mass=1740, wheelbase=2.66, steerRatio=13.6, tireStiffnessFactor=0.385), - flags=HyundaiFlags.EV | HyundaiFlags.CANFD_NO_RADAR_DISABLE, - ) - HYUNDAI_KONA_HEV = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Kona Hybrid 2020", car_parts=CarParts.common([CarHarness.hyundai_i]))], # TODO: check packages, - CarSpecs(mass=1425, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), - flags=HyundaiFlags.HYBRID | HyundaiFlags.ALT_LIMITS, - ) - HYUNDAI_KONA_HEV_2ND_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Kona Hybrid 2024", car_parts=CarParts.common([CarHarness.hyundai_l]))], - CarSpecs(mass=1590, wheelbase=2.66, steerRatio=13.6, tireStiffnessFactor=0.385), - flags=HyundaiFlags.HYBRID, - ) - HYUNDAI_NEXO_1ST_GEN = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Nexo 2021", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=3990 * CV.LB_TO_KG, wheelbase=2.79, steerRatio=14.19), # https://www.hyundainews.com/assets/documents/original/42768-2021NEXOProductGuideSpecs.pdf - flags=HyundaiFlags.FCEV, - ) - HYUNDAI_SANTA_FE = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Santa Fe 2019-20", "All", video="https://youtu.be/bjDR0YjM__s", - car_parts=CarParts.common([CarHarness.hyundai_d]))], - CarSpecs(mass=3982 * CV.LB_TO_KG, wheelbase=2.766, steerRatio=16.55, tireStiffnessFactor=0.82), - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8, - ) - HYUNDAI_SANTA_FE_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Santa Fe 2021-23", "All", video="https://youtu.be/VnHzSTygTS4", - car_parts=CarParts.common([CarHarness.hyundai_l]))], - HYUNDAI_SANTA_FE.specs, - flags=HyundaiFlags.CHECKSUM_CRC8, - ) - HYUNDAI_SANTA_FE_HEV_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Santa Fe Hybrid 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_l]))], - HYUNDAI_SANTA_FE.specs, - flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, - ) - HYUNDAI_SANTA_FE_PHEV_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Santa Fe Plug-in Hybrid 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_l]))], - HYUNDAI_SANTA_FE.specs, - flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, - ) - HYUNDAI_SONATA = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Sonata 2020-23", "All", video="https://www.youtube.com/watch?v=ix63r9kE3Fw", - car_parts=CarParts.common([CarHarness.hyundai_a]))], - CarSpecs(mass=1513, wheelbase=2.84, steerRatio=13.27 * 1.15, tireStiffnessFactor=0.65), # 15% higher at the center seems reasonable - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8, - ) - HYUNDAI_SONATA_LF = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Sonata 2018-19", car_parts=CarParts.common([CarHarness.hyundai_e]))], - CarSpecs(mass=1536, wheelbase=2.804, steerRatio=13.27 * 1.15), # 15% higher at the center seems reasonable - - flags=HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.TCU_GEARS, - ) - HYUNDAI_SONATA_2024 = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Sonata 2024-25", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], - CarSpecs(mass=1556, wheelbase=2.84, steerRatio=12.81), - flags=HyundaiFlags.CAMERA_SCC, - ) - HYUNDAI_STARIA_4TH_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Staria 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=2205, wheelbase=3.273, steerRatio=11.94), # https://www.hyundai.com/content/dam/hyundai/au/en/models/staria-load/premium-pip-update-2023/spec-sheet/STARIA_Load_Spec-Table_March_2023_v3.1.pdf - ) - HYUNDAI_TUCSON = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Hyundai Tucson 2021", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_l])), - HyundaiCarDocs("Hyundai Tucson Diesel 2019", car_parts=CarParts.common([CarHarness.hyundai_l])), - ], - CarSpecs(mass=3520 * CV.LB_TO_KG, wheelbase=2.67, steerRatio=16.1, tireStiffnessFactor=0.385), - flags=HyundaiFlags.TCU_GEARS, - ) - HYUNDAI_PALISADE = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Hyundai Palisade 2020-22", "All", video="https://youtu.be/TAnDqjF4fDY?t=456", car_parts=CarParts.common([CarHarness.hyundai_h])), - HyundaiCarDocs("Kia Telluride 2020-22", "All", car_parts=CarParts.common([CarHarness.hyundai_h])), - ], - CarSpecs(mass=1999, wheelbase=2.9, steerRatio=15.6 * 1.15, tireStiffnessFactor=0.63), - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8, - ) - HYUNDAI_VELOSTER = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Veloster 2019-20", min_enable_speed=5. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_e]))], - CarSpecs(mass=2917 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75 * 1.15, tireStiffnessFactor=0.5), - flags=HyundaiFlags.LEGACY | HyundaiFlags.TCU_GEARS, - ) - HYUNDAI_SONATA_HYBRID = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Sonata Hybrid 2020-23", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], - HYUNDAI_SONATA.specs, - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, - ) - HYUNDAI_IONIQ_5 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Hyundai Ioniq 5 (Southeast Asia and Europe only) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_q])), - HyundaiCarDocs("Hyundai Ioniq 5 (without HDA II) 2022-24", "Highway Driving Assist", car_parts=CarParts.common([CarHarness.hyundai_k])), - HyundaiCarDocs("Hyundai Ioniq 5 (with HDA II) 2022-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])), - ], - CarSpecs(mass=1948, wheelbase=2.97, steerRatio=14.26, tireStiffnessFactor=0.65), - flags=HyundaiFlags.EV, - ) - HYUNDAI_IONIQ_5_PE = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Hyundai IONIQ 5 PE (NE1)", car_parts=CarParts.common([CarHarness.hyundai_q])), - HyundaiCarDocs("Hyundai Ioniq 5 PE (with HDA II) 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])), - ], - #CarSpecs(mass=2012, wheelbase=3.0, steerRatio=14.26, tireStiffnessFactor=0.65), - CarSpecs(mass=2012, wheelbase=3.0, steerRatio=14.26, tireStiffnessFactor=1.0), - flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, - ) - HYUNDAI_IONIQ_5_N = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq 5 N (with HDA II) 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_m]))], - CarSpecs(mass=2200, wheelbase=3.00, steerRatio=12.54), - flags=HyundaiFlags.EV, - ) - HYUNDAI_IONIQ_6 = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Ioniq 6 (with HDA II) 2023-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p]))], - HYUNDAI_IONIQ_5.specs, - flags=HyundaiFlags.EV | HyundaiFlags.CANFD_NO_RADAR_DISABLE, - ) - HYUNDAI_IONIQ_9 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Hyundai Ioniq 9", "All", car_parts=CarParts.common([CarHarness.hyundai_m])), - ], - CarSpecs(mass=2505, wheelbase=3.13, steerRatio=16.02), - flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, - ) - HYUNDAI_TUCSON_4TH_GEN = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Hyundai Tucson 2022", car_parts=CarParts.common([CarHarness.hyundai_n])), - HyundaiCarDocs("Hyundai Tucson 2023-24", "All", car_parts=CarParts.common([CarHarness.hyundai_n])), - HyundaiCarDocs("Hyundai Tucson Hybrid 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_n])), - HyundaiCarDocs("Hyundai Tucson Plug-in Hybrid 2024", "All", car_parts=CarParts.common([CarHarness.hyundai_n])), - ], - CarSpecs(mass=1630, wheelbase=2.756, steerRatio=13.7, tireStiffnessFactor=0.385), - ) - HYUNDAI_SANTA_CRUZ_1ST_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Hyundai Santa Cruz 2022-24", car_parts=CarParts.common([CarHarness.hyundai_n]))], - # weight from Limited trim - the only supported trim, steering ratio according to Hyundai News https://www.hyundainews.com/assets/documents/original/48035-2022SantaCruzProductGuideSpecsv2081521.pdf - CarSpecs(mass=1870, wheelbase=3, steerRatio=14.2), - ) - HYUNDAI_CUSTIN_1ST_GEN = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Custin 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=1690, wheelbase=3.055, steerRatio=17), # mass: from https://www.hyundai-motor.com.tw/clicktobuy/custin#spec_0, steerRatio: from learner - flags=HyundaiFlags.CHECKSUM_CRC8, - ) - HYUNDAI_CASPER = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Casper 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=1060, wheelbase=2.4, steerRatio=14.3), # mass: from https://www.hyundai-motor.com.tw/clicktobuy/custin#spec_0, steerRatio: from learner - flags=HyundaiFlags.CAMERA_SCC | HyundaiFlags.CHECKSUM_CRC8, - ) - - HYUNDAI_CASPER_EV = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Casper EV 2024", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=1355, wheelbase=2.58, steerRatio=14.3), # mass: from https://www.hyundai-motor.com.tw/clicktobuy/custin#spec_0, steerRatio: from learner - flags=HyundaiFlags.CAMERA_SCC | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.EV - ) - HYUNDAI_PORTER_II_EV = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Porter II EV 2024", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=1970, wheelbase=2.64, steerRatio=14.5), - flags=HyundaiFlags.EV | HyundaiFlags.CC_ONLY_CAR, - ) - HYUNDAI_SANTAFE_MX5 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Hyundai SANTAFE (MX5)", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - CarSpecs(mass=1910, wheelbase=2.76, steerRatio=15.8, tireStiffnessFactor=0.82), - flags=HyundaiFlags.ANGLE_CONTROL, - ) - HYUNDAI_SANTAFE_MX5_HEV = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Hyundai SANTAFE HYBRID (MX5)", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - HYUNDAI_SANTAFE_MX5.specs, - flags=HyundaiFlags.ANGLE_CONTROL, - ) - - - # Kia - KIA_FORTE = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Kia Forte 2019-21", min_enable_speed=6 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_g])), - HyundaiCarDocs("Kia Forte 2022-23", car_parts=CarParts.common([CarHarness.hyundai_e])), - ], - CarSpecs(mass=2878 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5) - ) - KIA_K5_2021 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K5 2021-24", car_parts=CarParts.common([CarHarness.hyundai_a]))], - CarSpecs(mass=3381 * CV.LB_TO_KG, wheelbase=2.85, steerRatio=13.27, tireStiffnessFactor=0.5), # 2021 Kia K5 Steering Ratio (all trims) - flags=HyundaiFlags.CHECKSUM_CRC8, - ) - KIA_K5_HEV_2020 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K5 Hybrid 2020-22", car_parts=CarParts.common([CarHarness.hyundai_a]))], - KIA_K5_2021.specs, - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, - ) - KIA_K5_DL3_24 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("KIA K5 2024 (DL3)", car_parts=CarParts.common([CarHarness.hyundai_k])), - HyundaiCarDocs("Kia K5 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - CarSpecs(mass=1553, wheelbase=2.85, steerRatio=13.27, tireStiffnessFactor=0.5), - ) - KIA_K5_DL3_24_HEV = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("KIA K5 HYBRID 2024 (DL3)", car_parts=CarParts.common([CarHarness.hyundai_k])), - HyundaiCarDocs("Kia K5 Hybrid 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - CarSpecs(mass=1553, wheelbase=2.85, steerRatio=13.27, tireStiffnessFactor=0.5), - ) - KIA_K8_HEV_1ST_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Kia K8 Hybrid (with HDA II) 2023", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q]))], - # mass: https://carprices.ae/brands/kia/2023/k8/1.6-turbo-hybrid, steerRatio: guesstimate from K5 platform - CarSpecs(mass=1630, wheelbase=2.895, steerRatio=13.27) - ) - KIA_NIRO_EV = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Kia Niro EV 2019", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_h])), - HyundaiCarDocs("Kia Niro EV 2020", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_f])), - HyundaiCarDocs("Kia Niro EV 2021", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_c])), - HyundaiCarDocs("Kia Niro EV 2022", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_h])), - ], - CarSpecs(mass=3543 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=13.6, tireStiffnessFactor=0.385), # average of all the cars - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.EV, - ) - KIA_NIRO_EV_2ND_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Kia Niro EV 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], - KIA_NIRO_EV.specs, - flags=HyundaiFlags.EV, - ) - KIA_NIRO_PHEV = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Kia Niro Hybrid 2018", "All", min_enable_speed=10. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_c])), - HyundaiCarDocs("Kia Niro Plug-in Hybrid 2018-19", "All", min_enable_speed=10. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_c])), - HyundaiCarDocs("Kia Niro Plug-in Hybrid 2020", car_parts=CarParts.common([CarHarness.hyundai_d])), - ], - KIA_NIRO_EV.specs, - flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.HYBRID | HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.MIN_STEER_32_MPH, - ) - KIA_NIRO_PHEV_2022 = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Kia Niro Plug-in Hybrid 2021", car_parts=CarParts.common([CarHarness.hyundai_d])), - HyundaiCarDocs("Kia Niro Plug-in Hybrid 2022", car_parts=CarParts.common([CarHarness.hyundai_f])), - ], - KIA_NIRO_EV.specs, - flags=HyundaiFlags.HYBRID | HyundaiFlags.MANDO_RADAR, - ) - KIA_NIRO_HEV_2021 = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Kia Niro Hybrid 2021", car_parts=CarParts.common([CarHarness.hyundai_d])), - HyundaiCarDocs("Kia Niro Hybrid 2022", car_parts=CarParts.common([CarHarness.hyundai_f])), - ], - KIA_NIRO_EV.specs, - flags=HyundaiFlags.HYBRID, - ) - KIA_NIRO_HEV_2ND_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Kia Niro Hybrid 2023", car_parts=CarParts.common([CarHarness.hyundai_a]))], - KIA_NIRO_EV.specs, - ) - KIA_OPTIMA_G4 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Optima 2017", "Advanced Smart Cruise Control", - car_parts=CarParts.common([CarHarness.hyundai_b]))], # TODO: may support 2016, 2018 - CarSpecs(mass=3558 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), - flags=HyundaiFlags.LEGACY | HyundaiFlags.TCU_GEARS | HyundaiFlags.MIN_STEER_32_MPH, - ) - KIA_OPTIMA_G4_FL = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Optima 2019-20", car_parts=CarParts.common([CarHarness.hyundai_g]))], - CarSpecs(mass=3558 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), - flags=HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.TCU_GEARS, - ) - # TODO: may support adjacent years. may have a non-zero minimum steering speed - KIA_OPTIMA_H = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Optima Hybrid 2017", "Advanced Smart Cruise Control", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=3758 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), - flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, - ) - KIA_OPTIMA_H_G4_FL = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Optima Hybrid 2019", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=3558 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), - flags=HyundaiFlags.HYBRID | HyundaiFlags.UNSUPPORTED_LONGITUDINAL, - ) - KIA_SELTOS = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Seltos 2021", car_parts=CarParts.common([CarHarness.hyundai_a]))], - CarSpecs(mass=1337, wheelbase=2.63, steerRatio=14.56), - flags=HyundaiFlags.CHECKSUM_CRC8, - ) - KIA_SPORTAGE_5TH_GEN = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Kia Sportage 2023-24", car_parts=CarParts.common([CarHarness.hyundai_n])), - HyundaiCarDocs("Kia Sportage Hybrid 2023", car_parts=CarParts.common([CarHarness.hyundai_n])), - ], - # weight from SX and above trims, average of FWD and AWD version, steering ratio according to Kia News https://www.kiamedia.com/us/en/models/sportage/2023/specifications - CarSpecs(mass=1725, wheelbase=2.756, steerRatio=13.6), - ) - KIA_SORENTO = HyundaiPlatformConfig( - [ - HyundaiCarDocs("Kia Sorento 2018", "Advanced Smart Cruise Control & LKAS", video="https://www.youtube.com/watch?v=Fkh3s6WHJz8", - car_parts=CarParts.common([CarHarness.hyundai_e])), - HyundaiCarDocs("Kia Sorento 2019", video="https://www.youtube.com/watch?v=Fkh3s6WHJz8", car_parts=CarParts.common([CarHarness.hyundai_e])), - ], - CarSpecs(mass=1985, wheelbase=2.78, steerRatio=14.4 * 1.1), # 10% higher at the center seems reasonable - flags=HyundaiFlags.CHECKSUM_6B | HyundaiFlags.UNSUPPORTED_LONGITUDINAL, - ) - KIA_SORENTO_4TH_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Kia Sorento 2021-23", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=3957 * CV.LB_TO_KG, wheelbase=2.81, steerRatio=13.5), # average of the platforms - flags=HyundaiFlags.RADAR_SCC, - ) - KIA_SORENTO_HEV_4TH_GEN = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Kia Sorento Hybrid 2021-23", "All", car_parts=CarParts.common([CarHarness.hyundai_a])), - HyundaiCarDocs("Kia Sorento Plug-in Hybrid 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_a])), - ], - CarSpecs(mass=4395 * CV.LB_TO_KG, wheelbase=2.81, steerRatio=13.5), # average of the platforms - flags=HyundaiFlags.RADAR_SCC, - ) - KIA_STINGER = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Stinger 2018-20", video="https://www.youtube.com/watch?v=MJ94qoofYw0", - car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1825, wheelbase=2.78, steerRatio=14.4 * 1.15) # 15% higher at the center seems reasonable - ) - KIA_STINGER_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Stinger 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - KIA_STINGER.specs, - ) - KIA_CEED = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Ceed 2019-21", car_parts=CarParts.common([CarHarness.hyundai_e]))], - CarSpecs(mass=1450, wheelbase=2.65, steerRatio=13.75, tireStiffnessFactor=0.5), - flags=HyundaiFlags.LEGACY, - ) - KIA_EV6 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Kia EV6 (Southeast Asia only) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_p])), - HyundaiCarDocs("Kia EV6 (without HDA II) 2022-24", "Highway Driving Assist", car_parts=CarParts.common([CarHarness.hyundai_l])), - HyundaiCarDocs("Kia EV6 (with HDA II) 2022-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p])) - ], - CarSpecs(mass=2055, wheelbase=2.9, steerRatio=16, tireStiffnessFactor=0.65), - flags=HyundaiFlags.EV, - ) - KIA_EV6_PE = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Kia EV6 PE (CV1)", car_parts=CarParts.common([CarHarness.hyundai_p])), - HyundaiCarDocs("Kia EV6 PE (with HDA II) 2025", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p])) - ], - CarSpecs(mass=2055, wheelbase=2.9, steerRatio=16, tireStiffnessFactor=0.65), - flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, - ) - KIA_CARNIVAL_4TH_GEN = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Kia Carnival 2022-24", car_parts=CarParts.common([CarHarness.hyundai_a])), - HyundaiCarDocs("Kia Carnival (China only) 2023", car_parts=CarParts.common([CarHarness.hyundai_k])) - ], - CarSpecs(mass=2087, wheelbase=3.09, steerRatio=14.23), - flags=HyundaiFlags.RADAR_SCC, - ) - - # Genesis - GENESIS_GV60_EV_1ST_GEN = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Genesis GV60 (Advanced Trim) 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_a])), - HyundaiCarDocs("Genesis GV60 (Performance Trim) 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - CarSpecs(mass=2205, wheelbase=2.9, steerRatio=17.6), - flags=HyundaiFlags.EV, - ) - GENESIS_G70 = HyundaiPlatformConfig( - [HyundaiCarDocs("Genesis G70 2018", "All", car_parts=CarParts.common([CarHarness.hyundai_f]))], - CarSpecs(mass=1640, wheelbase=2.84, steerRatio=13.56), - flags=HyundaiFlags.LEGACY, - ) - GENESIS_G70_2020 = HyundaiPlatformConfig( - [ - # TODO: 2021 MY harness is unknown - HyundaiCarDocs("Genesis G70 2019-21", "All", car_parts=CarParts.common([CarHarness.hyundai_f])), - # TODO: From 3.3T Sport Advanced 2022 & Prestige 2023 Trim, 2.0T is unknown - HyundaiCarDocs("Genesis G70 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_l])), - ], - GENESIS_G70.specs, - flags=HyundaiFlags.MANDO_RADAR, - ) - GENESIS_GV70_1ST_GEN = HyundaiCanFDPlatformConfig( - [ - # TODO: Hyundai P is likely the correct harness for HDA II for 2.5T (unsupported due to missing ADAS ECU, is that the radar?) - HyundaiCarDocs("Genesis GV70 (2.5T Trim, without HDA II) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_l])), - HyundaiCarDocs("Genesis GV70 (3.5T Trim, without HDA II) 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_m])), - ], - CarSpecs(mass=1950, wheelbase=2.87, steerRatio=14.6), - flags=HyundaiFlags.RADAR_SCC, - ) - GENESIS_GV70_ELECTRIFIED_1ST_GEN = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Genesis GV70 Electrified (Australia Only) 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_q])), - HyundaiCarDocs("Genesis GV70 Electrified (with HDA II) 2023-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])), - ], - CarSpecs(mass=2260, wheelbase=2.87, steerRatio=17.1), - flags=HyundaiFlags.EV, - ) - GENESIS_G80 = HyundaiPlatformConfig( - [HyundaiCarDocs("Genesis G80 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=2060, wheelbase=3.01, steerRatio=16.5), - flags=HyundaiFlags.LEGACY, - ) - GENESIS_G80_2ND_GEN_FL = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Genesis G80 (2.5T Advanced Trim, with HDA II) 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p]))], - CarSpecs(mass=2060, wheelbase=3.00, steerRatio=14.0), - ) - GENESIS_G90 = HyundaiPlatformConfig( - [HyundaiCarDocs("Genesis G90 2017-20", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=2200, wheelbase=3.15, steerRatio=12.069), - ) - GENESIS_GV80 = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Genesis GV80 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_m]))], - CarSpecs(mass=2258, wheelbase=2.95, steerRatio=14.14), - flags=HyundaiFlags.RADAR_SCC, - ) - GENESIS_GV70_EV_1ST_GEN = HyundaiCanFDPlatformConfig( - [HyundaiCarDocs("Genesis GV70 EV 2020-2023", "All", car_parts=CarParts.common([CarHarness.hyundai_m]))], - CarSpecs(mass=2230, wheelbase=2.87, steerRatio=14.6), - flags=HyundaiFlags.EV | HyundaiFlags.RADAR_SCC, - ) - HYUNDAI_GRANDEUR_IG = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Grandeur 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1570, wheelbase=2.845, steerRatio=16., tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS, - ) - HYUNDAI_GRANDEUR_IG_HEV = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Grandeur HEV 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1570, wheelbase=2.845, steerRatio=16., tireStiffnessFactor=0.7), - flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, - ) - GENESIS_EQ900 = HyundaiPlatformConfig( - [HyundaiCarDocs("Genesis EQ900 2017", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=2200, wheelbase=3.15, steerRatio=16., tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY, - ) - GENESIS_EQ900_L = HyundaiPlatformConfig( - [HyundaiCarDocs("Genesis EQ900 LIMOUSINE", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=2290, wheelbase=3.45, steerRatio=16., tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY, - ) - GENESIS_G90_2019 = HyundaiPlatformConfig( - [HyundaiCarDocs("Genesis G90 2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=2150, wheelbase=3.16, steerRatio=16., tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY, - ) - HYUNDAI_NEXO = HyundaiPlatformConfig( - [HyundaiCarDocs("Hyundai Nexo", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], - CarSpecs(mass=1885, wheelbase=2.79, steerRatio=15.3, tireStiffnessFactor=0.385), - flags=HyundaiFlags.EV, - ) - KIA_MOHAVE = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Mohave 2019", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], - CarSpecs(mass=2285, wheelbase=2.895, steerRatio=16., tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY, - ) - KIA_K5 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K5 2019 & 2016", "All", car_parts=CarParts.common([CarHarness.hyundai_b]))], - CarSpecs(mass=1515, wheelbase=2.80, steerRatio=15.5, tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY | HyundaiFlags.TCU_GEARS, - ) - KIA_K5_HEV = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K5 Hybrid 2017", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1705, wheelbase=2.80, steerRatio=15.5, tireStiffnessFactor=0.7), - flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, - ) - KIA_K5_HEV_2022 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K5 Hybrid 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1515, wheelbase=2.85, steerRatio=15.5, tireStiffnessFactor=0.7), - flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, - ) - KIA_K7 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K7 2016-2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1850, wheelbase=2.855, steerRatio=15.5, tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS, - ) - KIA_K7_HEV = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K7 Hybrid 2016-2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1515, wheelbase=2.855, steerRatio=15.5, tireStiffnessFactor=0.7), - flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, - ) - KIA_K9 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia K9 2016-2019", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], - CarSpecs(mass=2075, wheelbase=3.15, steerRatio=14.5, tireStiffnessFactor=0.7), - flags=HyundaiFlags.LEGACY, - ) - KIA_EV_SK3 = HyundaiPlatformConfig( - [HyundaiCarDocs("Kia Soul EV 2019", car_parts=CarParts.common([CarHarness.hyundai_c]))], - CarSpecs(mass=1695, wheelbase=2.6, steerRatio=13.75), - flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.EV, - ) - KIA_EV9 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("Kia EV9 (MV)", car_parts=CarParts.common([CarHarness.hyundai_k])), - ], - CarSpecs(mass=2625, wheelbase=3.1, steerRatio=16.02), - flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, - ) - KIA_EV3 = HyundaiCanFDPlatformConfig( - [ - HyundaiCarDocs("KIA EV3 (SV1)", car_parts=CarParts.common([CarHarness.hyundai_n])), - ], - CarSpecs(mass=2055, wheelbase=2.90, steerRatio=16.0, tireStiffnessFactor=0.65), - flags=HyundaiFlags.EV, - ) - -class Buttons: - NONE = 0 - RES_ACCEL = 1 - SET_DECEL = 2 - GAP_DIST = 3 - CANCEL = 4 # on newer models, this is a pause/resume button - LFA_BUTTON = 5 - - -def get_platform_codes(fw_versions: list[bytes]) -> set[tuple[bytes, bytes | None]]: - # Returns unique, platform-specific identification codes for a set of versions - codes = set() # (code-Optional[part], date) - for fw in fw_versions: - code_match = PLATFORM_CODE_FW_PATTERN.search(fw) - part_match = PART_NUMBER_FW_PATTERN.search(fw) - date_match = DATE_FW_PATTERN.search(fw) - if code_match is not None: - code: bytes = code_match.group() - part = part_match.group() if part_match else None - date = date_match.group() if date_match else None - if part is not None: - # part number starts with generic ECU part type, add what is specific to platform - code += b"-" + part[-5:] - - codes.add((code, date)) - return codes - - -def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: - # Non-electric CAN FD platforms often do not have platform code specifiers needed - # to distinguish between hybrid and ICE. All EVs so far are either exclusively - # electric or specify electric in the platform code. - fuzzy_platform_blacklist = {str(c) for c in (CANFD_CAR - EV_CAR - CANFD_FUZZY_WHITELIST)} - candidates: set[str] = set() - - for candidate, fws in offline_fw_versions.items(): - # Keep track of ECUs which pass all checks (platform codes, within date range) - valid_found_ecus = set() - valid_expected_ecus = {ecu[1:] for ecu in fws if ecu[0] in PLATFORM_CODE_ECUS} - for ecu, expected_versions in fws.items(): - addr = ecu[1:] - # Only check ECUs expected to have platform codes - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - # Expected platform codes & dates - codes = get_platform_codes(expected_versions) - expected_platform_codes = {code for code, _ in codes} - expected_dates = {date for _, date in codes if date is not None} - - # Found platform codes & dates - codes = get_platform_codes(live_fw_versions.get(addr, set())) - found_platform_codes = {code for code, _ in codes} - found_dates = {date for _, date in codes if date is not None} - - # Check platform code + part number matches for any found versions - if not any(found_platform_code in expected_platform_codes for found_platform_code in found_platform_codes): - break - - if ecu[0] in DATE_FW_ECUS: - # If ECU can have a FW date, require it to exist - # (this excludes candidates in the database without dates) - if not len(expected_dates) or not len(found_dates): - break - - # Check any date within range in the database, format is %y%m%d - if not any(min(expected_dates) <= found_date <= max(expected_dates) for found_date in found_dates): - break - - valid_found_ecus.add(addr) - - # If all live ECUs pass all checks for candidate, add it as a match - if valid_expected_ecus.issubset(valid_found_ecus): - candidates.add(candidate) - - return candidates - fuzzy_platform_blacklist - - -HYUNDAI_VERSION_REQUEST_LONG = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(0xf100) # Long description - -HYUNDAI_VERSION_REQUEST_ALT = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(0xf110) # Alt long description - -HYUNDAI_ECU_MANUFACTURING_DATE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.ECU_MANUFACTURING_DATE) - -HYUNDAI_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) - -# Regex patterns for parsing platform code, FW date, and part number from FW versions -PLATFORM_CODE_FW_PATTERN = re.compile(b'((?<=' + HYUNDAI_VERSION_REQUEST_LONG[1:] + - b')[A-Z]{2}[A-Za-z0-9]{0,2})') -DATE_FW_PATTERN = re.compile(b'(?<=[ -])([0-9]{6}$)') -PART_NUMBER_FW_PATTERN = re.compile(b'(?<=[0-9][.,][0-9]{2} )([0-9]{5}[-/]?[A-Z][A-Z0-9]{3}[0-9])') - -# We've seen both ICE and hybrid for these platforms, and they have hybrid descriptors (e.g. MQ4 vs MQ4H) -CANFD_FUZZY_WHITELIST = {CAR.KIA_SORENTO_4TH_GEN, CAR.KIA_SORENTO_HEV_4TH_GEN, CAR.KIA_K8_HEV_1ST_GEN, - # TODO: the hybrid variant is not out yet - CAR.KIA_CARNIVAL_4TH_GEN} - -# List of ECUs expected to have platform codes, camera and radar should exist on all cars -# TODO: use abs, it has the platform code and part number on many platforms -PLATFORM_CODE_ECUS = [Ecu.fwdRadar, Ecu.fwdCamera, Ecu.eps] -# So far we've only seen dates in fwdCamera -# TODO: there are date codes in the ABS firmware versions in hex -DATE_FW_ECUS = [Ecu.fwdCamera] - -# Note: an ECU on CAN FD cars may sometimes send 0x30080aaaaaaaaaaa (flow control continue) while we -# are attempting to query ECUs. This currently does not seem to affect fingerprinting from the camera -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - # TODO: add back whitelists - # CAN queries (OBD-II port) - Request( - [HYUNDAI_VERSION_REQUEST_LONG], - [HYUNDAI_VERSION_RESPONSE], - ), - - # CAN & CAN-FD queries (from camera) - Request( - [HYUNDAI_VERSION_REQUEST_LONG], - [HYUNDAI_VERSION_RESPONSE], - bus=0, - auxiliary=True, - ), - Request( - [HYUNDAI_VERSION_REQUEST_LONG], - [HYUNDAI_VERSION_RESPONSE], - bus=1, - auxiliary=True, - obd_multiplexing=False, - ), - - # CAN & CAN FD query to understand the three digit date code - # LKA steering cars usually use 6 digit date codes, so skip bus 1 - Request( - [HYUNDAI_ECU_MANUFACTURING_DATE], - [HYUNDAI_VERSION_RESPONSE], - bus=0, - auxiliary=True, - logging=True, - ), - - # CAN-FD alt request logging queries for hvac and parkingAdas - Request( - [HYUNDAI_VERSION_REQUEST_ALT], - [HYUNDAI_VERSION_RESPONSE], - bus=0, - auxiliary=True, - logging=True, - ), - Request( - [HYUNDAI_VERSION_REQUEST_ALT], - [HYUNDAI_VERSION_RESPONSE], - bus=1, - auxiliary=True, - logging=True, - obd_multiplexing=False, - ), - ], - # We lose these ECUs without the comma power on these cars. - # Note that we still attempt to match with them when they are present - non_essential_ecus={ - Ecu.abs: [CAR.HYUNDAI_PALISADE, CAR.HYUNDAI_SONATA, CAR.HYUNDAI_SANTA_FE_2022, CAR.KIA_K5_2021, CAR.HYUNDAI_ELANTRA_2021, - CAR.HYUNDAI_SANTA_FE, CAR.HYUNDAI_KONA_EV_2022, CAR.HYUNDAI_KONA_EV, CAR.HYUNDAI_CUSTIN_1ST_GEN, CAR.KIA_SORENTO, - CAR.KIA_CEED, CAR.KIA_SELTOS], - }, - extra_ecus=[ - (Ecu.adas, 0x730, None), # ADAS Driving ECU on platforms with LKA steering - (Ecu.parkingAdas, 0x7b1, None), # ADAS Parking ECU (may exist on all platforms) - (Ecu.hvac, 0x7b3, None), # HVAC Control Assembly - (Ecu.cornerRadar, 0x7b7, None), - (Ecu.combinationMeter, 0x7c6, None), # CAN FD Instrument cluster - ], - # Custom fuzzy fingerprinting function using platform codes, part numbers + FW dates: - match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, -) - -CHECKSUM = { - "crc8": CAR.with_flags(HyundaiFlags.CHECKSUM_CRC8), - "6B": CAR.with_flags(HyundaiFlags.CHECKSUM_6B), -} - -CAN_GEARS = { - # which message has the gear. hybrid and EV use ELECT_GEAR - "use_cluster_gears": CAR.with_flags(HyundaiFlags.CLUSTER_GEARS), - "use_tcu_gears": CAR.with_flags(HyundaiFlags.TCU_GEARS), - "send_mdps12": {CAR.GENESIS_G90, CAR.GENESIS_G90_2019, CAR.KIA_K9, CAR.KIA_K7}, -} - -CANFD_CAR = CAR.with_flags(HyundaiFlags.CANFD) -CANFD_RADAR_SCC_CAR = CAR.with_flags(HyundaiFlags.RADAR_SCC) # TODO: merge with UNSUPPORTED_LONGITUDINAL_CAR - -CANFD_UNSUPPORTED_LONGITUDINAL_CAR = CAR.with_flags(HyundaiFlags.CANFD_NO_RADAR_DISABLE) # TODO: merge with UNSUPPORTED_LONGITUDINAL_CAR - -CAMERA_SCC_CAR = CAR.with_flags(HyundaiFlags.CAMERA_SCC) - -HYBRID_CAR = CAR.with_flags(HyundaiFlags.HYBRID) - -EV_CAR = CAR.with_flags(HyundaiFlags.EV) - -LEGACY_SAFETY_MODE_CAR = CAR.with_flags(HyundaiFlags.LEGACY) - -# TODO: another PR with (HyundaiFlags.LEGACY | HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.CAMERA_SCC | -# HyundaiFlags.CANFD_RADAR_SCC | HyundaiFlags.CANFD_NO_RADAR_DISABLE | ) -UNSUPPORTED_LONGITUDINAL_CAR = CAR.with_flags(HyundaiFlags.LEGACY) | CAR.with_flags(HyundaiFlags.UNSUPPORTED_LONGITUDINAL) - -DBC = CAR.create_dbc_map() - -if __name__ == "__main__": - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) diff --git a/opendbc_repo/opendbc/car/include/c++.capnp b/opendbc_repo/opendbc/car/include/c++.capnp deleted file mode 100644 index 2bda547179..0000000000 --- a/opendbc_repo/opendbc/car/include/c++.capnp +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2013-2014 Sandstorm Development Group, Inc. and contributors -# Licensed under the MIT License: -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. - -@0xbdf87d7bb8304e81; -$namespace("capnp::annotations"); - -annotation namespace(file): Text; -annotation name(field, enumerant, struct, enum, interface, method, param, group, union): Text; diff --git a/opendbc_repo/opendbc/car/interfaces.py b/opendbc_repo/opendbc/car/interfaces.py deleted file mode 100644 index bf49e843d8..0000000000 --- a/opendbc_repo/opendbc/car/interfaces.py +++ /dev/null @@ -1,762 +0,0 @@ -from collections import deque -import json -import os -import numpy as np -import time -import tomllib -import math -from abc import abstractmethod, ABC -from difflib import SequenceMatcher -from enum import StrEnum -from typing import Any, NamedTuple -from collections.abc import Callable -from functools import cache - -from opendbc.car import DT_CTRL, apply_hysteresis, gen_empty_fingerprint, scale_rot_inertia, scale_tire_stiffness, get_friction, STD_CARGO_KG -from opendbc.car import structs -from opendbc.car.can_definitions import CanData, CanRecvCallable, CanSendCallable -from opendbc.car.common.basedir import BASEDIR -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.common.simple_kalman import KF1D, get_kalman_gain -from opendbc.car.values import PLATFORMS -from opendbc.can import CANParser - -from openpilot.common.params import Params -from openpilot.common.filter_simple import FirstOrderFilter - -GearShifter = structs.CarState.GearShifter -ButtonType = structs.CarState.ButtonEvent.Type - -V_CRUISE_MAX = 145 -MAX_CTRL_SPEED = (V_CRUISE_MAX + 4) * CV.KPH_TO_MS -ACCEL_MAX = 2.5 -ACCEL_MIN = -4.0 #3.5 -FRICTION_THRESHOLD = 0.3 - -NEURAL_PARAMS_PATH = os.path.join(BASEDIR, 'torque_data/neural_ff_weights.json') -TORQUE_NN_MODEL_PATH = os.path.join(BASEDIR, 'torque_data/lat_models') - -TORQUE_PARAMS_PATH = os.path.join(BASEDIR, 'torque_data/params.toml') -TORQUE_OVERRIDE_PATH = os.path.join(BASEDIR, 'torque_data/override.toml') -TORQUE_SUBSTITUTE_PATH = os.path.join(BASEDIR, 'torque_data/substitute.toml') - -GEAR_SHIFTER_MAP: dict[str, structs.CarState.GearShifter] = { - 'P': GearShifter.park, 'PARK': GearShifter.park, - 'R': GearShifter.reverse, 'REVERSE': GearShifter.reverse, - 'N': GearShifter.neutral, 'NEUTRAL': GearShifter.neutral, - 'E': GearShifter.eco, 'ECO': GearShifter.eco, - 'T': GearShifter.manumatic, 'MANUAL': GearShifter.manumatic, - 'D': GearShifter.drive, 'DRIVE': GearShifter.drive, - 'S': GearShifter.sport, 'SPORT': GearShifter.sport, - 'L': GearShifter.low, 'LOW': GearShifter.low, - 'B': GearShifter.brake, 'BRAKE': GearShifter.brake, -} - -def similarity(s1: str, s2: str) -> float: - return SequenceMatcher(None, s1, s2).ratio() - -class LatControlInputs(NamedTuple): - lateral_acceleration: float - roll_compensation: float - vego: float - aego: float - - -TorqueFromLateralAccelCallbackType = Callable[[LatControlInputs, structs.CarParams.LateralTorqueTuning, float, float, bool, bool], float] - - -@cache -def get_torque_params(): - with open(TORQUE_SUBSTITUTE_PATH, 'rb') as f: - sub = tomllib.load(f) - with open(TORQUE_PARAMS_PATH, 'rb') as f: - params = tomllib.load(f) - with open(TORQUE_OVERRIDE_PATH, 'rb') as f: - override = tomllib.load(f) - - torque_params = {} - for candidate in (sub.keys() | params.keys() | override.keys()) - {'legend'}: - if sum([candidate in x for x in [sub, params, override]]) > 1: - raise RuntimeError(f'{candidate} is defined twice in torque config') - - sub_candidate = sub.get(candidate, candidate) - - if sub_candidate in override: - out = override[sub_candidate] - elif sub_candidate in params: - out = params[sub_candidate] - else: - raise NotImplementedError(f"Did not find torque params for {sub_candidate}") - - torque_params[sub_candidate] = {key: out[i] for i, key in enumerate(params['legend'])} - if candidate in sub: - torque_params[candidate] = torque_params[sub_candidate] - - return torque_params - -# Twilsonco's Lateral Neural Network Feedforward -class FluxModel: - # dict used to rename activation functions whose names aren't valid python identifiers - activation_function_names = {'σ': 'sigmoid'} - def __init__(self, params_file, zero_bias=False): - with open(params_file, "r") as f: - params = json.load(f) - - self.input_size = params["input_size"] - self.output_size = params["output_size"] - self.input_mean = np.array(params["input_mean"], dtype=np.float32).T - self.input_std = np.array(params["input_std"], dtype=np.float32).T - self.layers = [] - self.friction_override = False - - for layer_params in params["layers"]: - W = np.array(layer_params[next(key for key in layer_params.keys() if key.endswith('_W'))], dtype=np.float32).T - b = np.array(layer_params[next(key for key in layer_params.keys() if key.endswith('_b'))], dtype=np.float32).T - if zero_bias: - b = np.zeros_like(b) - activation = layer_params["activation"] - for k, v in self.activation_function_names.items(): - activation = activation.replace(k, v) - self.layers.append((W, b, activation)) - - self.validate_layers() - self.check_for_friction_override() - - # Begin activation functions. - # These are called by name using the keys in the model json file - @staticmethod - def sigmoid(x): - return 1 / (1 + np.exp(-x)) - - @staticmethod - def identity(x): - return x - # End activation functions - - def forward(self, x): - for W, b, activation in self.layers: - x = getattr(self, activation)(x.dot(W) + b) - return x - - def evaluate(self, input_array): - in_len = len(input_array) - if in_len != self.input_size: - # If the input is length 2-4, then it's a simplified evaluation. - # In that case, need to add on zeros to fill out the input array to match the correct length. - if 2 <= in_len: - input_array = input_array + [0] * (self.input_size - in_len) - else: - raise ValueError(f"Input array length {len(input_array)} must be length 2 or greater") - - input_array = np.array(input_array, dtype=np.float32) - - # Rescale the input array using the input_mean and input_std - input_array = (input_array - self.input_mean) / self.input_std - - output_array = self.forward(input_array) - - return float(output_array[0, 0]) - - def validate_layers(self): - for W, b, activation in self.layers: - if not hasattr(self, activation): - raise ValueError(f"Unknown activation: {activation}") - - def check_for_friction_override(self): - y = self.evaluate([10.0, 0.0, 0.2]) - self.friction_override = (y < 0.1) - -def get_nn_model_path(car, eps_firmware) -> tuple[str | None, float]: - def check_nn_path(check_model): - model_path = None - max_similarity = -1.0 - for f in os.listdir(TORQUE_NN_MODEL_PATH): - if f.endswith(".json"): - model = f.replace(".json", "").replace(f"{TORQUE_NN_MODEL_PATH}/", "") - similarity_score = similarity(model, check_model) - if similarity_score > max_similarity: - max_similarity = similarity_score - model_path = os.path.join(TORQUE_NN_MODEL_PATH, f) - return model_path, max_similarity - - #car1 = car.replace('_', ' ') - #car1 = car1.replace(' HEV', ' HYBRID') - #car = car1.replace('EV ', 'ELECTRIC ') - print("########get_nn_model_path :", car, eps_firmware) - if len(eps_firmware) > 3: - eps_firmware = eps_firmware.replace("\\", "") - check_model = f"{car} {eps_firmware}" - else: - check_model = car - model_path, max_similarity = check_nn_path(check_model) - if car not in model_path or 0.0 <= max_similarity < 0.9: - check_model = car - model_path, max_similarity = check_nn_path(check_model) - if car not in model_path or 0.0 <= max_similarity < 0.9: - model_path = None - return model_path - -def get_nn_model(car, eps_firmware) -> tuple[FluxModel | None, float]: - model = get_nn_model_path(car, eps_firmware) - if model is not None: - model = FluxModel(model) - return model - -class MyTrack: - def __init__(self, track_id: int, radar_point, dt: float): - self.track_id = track_id - self.cnt = 0 - self.dRel = radar_point.dRel - self.vRel = radar_point.vRel - self.yRel = radar_point.yRel - self.yvRel = radar_point.yvRel - self.vLead = radar_point.vLead - self.v_lead_filtered_last = self.vLead - self.aLead = 0.0 - self.jLead = 0.0 - self.dt = dt - self.vLead_avg = FirstOrderFilter(self.vLead, 0.1, self.dt) - self.aLead_avg = FirstOrderFilter(self.aLead, 0.15, self.dt) - self.jLead_avg = FirstOrderFilter(self.jLead, 0.4, self.dt) - self.yRel_avg = FirstOrderFilter(self.yRel, 0.1, self.dt) - self.yvRel_avg = FirstOrderFilter(self.yvRel, 0.1, self.dt) - self.cnt = 0 - - def init_point(self, radar_point): - self.dRel = radar_point.dRel - self.vRel = radar_point.vRel - self.yRel = radar_point.yRel - self.yvRel = radar_point.yvRel - self.vLead = radar_point.vLead - self.v_lead_filtered_last = self.vLead - self.aLead = 0.0 - self.jLead = 0.0 - self.vLead_avg.x = self.vLead - self.aLead_avg.x = self.aLead - self.jLead_avg.x = self.jLead - self.yRel_avg.x = self.yRel - self.yvRel_avg.x = self.yvRel - - def update(self, radar_point, a_ego): - if not radar_point.measured: - if self.cnt > 0: - self.init_point(radar_point) - self.cnt = 0 - elif self.cnt < 1: - self.init_point(radar_point) - self.cnt += 1 - else: - self.vLead = radar_point.vLead - self.yRel = self.yRel_avg.update(radar_point.yRel) - self.yvRel = self.yvRel_avg.update(radar_point.yvRel) - - if True: #math.isnan(radar_point.aRel): # - v_lead_filtered = self.vLead_avg.update(self.vLead) - pseudo_stop = abs(v_lead_filtered) < 0.3 and abs(self.vLead - v_lead_filtered) < 0.05 - a_raw = (v_lead_filtered - self.v_lead_filtered_last) / self.dt - self.v_lead_filtered_last = v_lead_filtered - - self.noisy = abs(a_raw - self.aLead) > 3.0 - if self.noisy: - self.cnt = 0 - - a_lead = self.aLead_avg.update(np.clip(a_raw, -10.0, 5.0) if not pseudo_stop else 0.0) - - j_lead = (a_lead - self.aLead) / self.dt - self.aLead = a_lead - self.jLead = self.jLead_avg.update(j_lead if self.cnt > 2 else 0.0) - else: - a_lead = radar_point.aRel + a_ego - j_lead = (a_lead - self.aLead) / self.dt - self.aLead = a_lead - self.jLead = self.jLead_avg.update(j_lead if self.cnt > 2 else 0.0) - - # Store latest values - self.dRel = radar_point.dRel - self.vRel = radar_point.vRel - - self.cnt += 1 - -# generic car and radar interfaces -class RadarInterfaceBase(ABC): - def __init__(self, CP: structs.CarParams): - self.CP = CP - self.rcp = None - self.tracks: dict[int, MyTrack] = {} - self.pts: dict[int, structs.RadarData.RadarPoint] = {} - self.frame = 0 - delay = CP.radarDelay - self.v_ego_hist = deque([0.0], maxlen=int(round(delay / DT_CTRL)) + 1) - self.v_ego = 0.0 - self.a_ego_hist = deque([0.0], maxlen=int(round(delay / DT_CTRL)) + 1) - self.a_ego = 0.0 - self.last_timestamp = None - self.dt = None - - self.init_samples = [] - self.init_done = False - - def estimate_dt(self, rcv_time): - if self.CP.radarTimeStep > 0.0: - self.dt = self.CP.radarTimeStep - self.init_done = True - print(f"Using radar dt: {self.dt} sec") - elif len(self.init_samples) > 100: - estimated_dt = np.mean(np.diff(self.init_samples[50:])) - self.dt = estimated_dt - self.init_done = True - print(f"Estimated radar dt: {self.dt} sec") - else: - self.init_samples.append(rcv_time) - - - def update_carrot(self, v_ego, a_ego, rcv_time, can_packets: list[tuple[int, list[CanData]]]) -> structs.RadarDataT | None: - self.v_ego_hist.append(v_ego) - self.v_ego = self.v_ego_hist[0] - self.a_ego_hist.append(a_ego) - self.a_ego = self.a_ego_hist[0] - ret = self.update(can_packets) - - if ret is not None: - if not self.init_done: - self.estimate_dt(rcv_time) - return None - - new_tracks = {} - for addr, radar_point in self.pts.items(): - track_id = radar_point.trackId - if track_id not in self.tracks: - new_tracks[track_id] = MyTrack(track_id, radar_point, self.dt) - else: - new_tracks[track_id] = self.tracks[track_id] - new_tracks[track_id].update(radar_point, self.a_ego) - - if new_tracks[track_id].cnt < 6: - radar_point.aLead = 0 - radar_point.jLead = 0 - radar_point.yRel = float(new_tracks[track_id].yRel) - radar_point.yvRel = float(new_tracks[track_id].yvRel) - else: - radar_point.aLead = float(new_tracks[track_id].aLead) - radar_point.jLead = float(new_tracks[track_id].jLead) - radar_point.yRel = float(new_tracks[track_id].yRel) - radar_point.yvRel = float(new_tracks[track_id].yvRel) - - self.tracks = new_tracks - """ - if self.last_timestamp is not None: - print(f"dt1 = {rcv_time - self.last_timestamp:.6f}") - if self.last_timestamp is not None and (rcv_time - self.last_timestamp) < 0.045: # 0.05 - 0.005 - if self.last_timestamp is not None: - print(f"dt3 = {rcv_time - self.last_timestamp:.6f}") - return None - if self.last_timestamp is not None: - print(f"dt2 = {rcv_time - self.last_timestamp:.6f}") - self.last_timestamp = rcv_time - """ - return ret - - def update(self, can_packets: list[tuple[int, list[CanData]]]) -> structs.RadarDataT | None: - self.frame += 1 - if (self.frame % 5) == 0: # 20 Hz is very standard - return structs.RadarData() - return None - - -class CarInterfaceBase(ABC): - CarState: 'CarStateBase' - CarController: 'CarControllerBase' - RadarInterface: 'RadarInterfaceBase' = RadarInterfaceBase - - def __init__(self, CP: structs.CarParams): - self.CP = CP - - self.frame = 0 - self.v_ego_cluster_seen = False - - self.CS: CarStateBase = self.CarState(CP) - self.can_parsers: dict[StrEnum, CANParser] = self.CS.get_can_parsers(CP) - - dbc_names = {bus: cp.dbc_name for bus, cp in self.can_parsers.items()} - self.CC: CarControllerBase = self.CarController(dbc_names, CP) - - Params().put_int('LongitudinalPersonalityMax', 3) - eps_firmware = str(next((fw.fwVersion for fw in CP.carFw if fw.ecu == "eps"), "")) - - comma_nnff_supported = self.check_comma_nn_ff_support(CP.carFingerprint) - nnff_supported = self.initialize_lat_torque_nn(CP.carFingerprint, eps_firmware) - - self.use_nnff = not comma_nnff_supported and nnff_supported and Params().get_bool("NNFF") - self.use_nnff_lite = not self.use_nnff and Params().get_bool("NNFFLite") - - def get_ff_nn(self, x): - return self.lat_torque_nn_model.evaluate(x) - - def check_comma_nn_ff_support(self, car): - with open(NEURAL_PARAMS_PATH, 'r') as file: - data = json.load(file) - return car in data - - def initialize_lat_torque_nn(self, car, eps_firmware) -> bool: - self.lat_torque_nn_model = get_nn_model(car, eps_firmware) - return self.lat_torque_nn_model is not None - - - def apply(self, c: structs.CarControl, now_nanos: int | None = None, MD = None) -> tuple[structs.CarControl.Actuators, list[CanData]]: - if now_nanos is None: - now_nanos = int(time.monotonic() * 1e9) - self.CS.MD = MD - return self.CC.update(c, self.CS, now_nanos) - - @staticmethod - def get_pid_accel_limits(CP, current_speed, cruise_speed): - return ACCEL_MIN, ACCEL_MAX - - @classmethod - def get_non_essential_params(cls, candidate: str) -> structs.CarParams: - """ - Parameters essential to controlling the car may be incomplete or wrong without FW versions or fingerprints. - """ - return cls.get_params(candidate, gen_empty_fingerprint(), list(), False, False, False) - - @classmethod - def get_params(cls, candidate: str, fingerprint: dict[int, dict[int, int]], car_fw: list[structs.CarParams.CarFw], - alpha_long: bool, is_release: bool, docs: bool) -> structs.CarParams: - ret = CarInterfaceBase.get_std_params(candidate) - - platform = PLATFORMS[candidate] - ret.mass = platform.config.specs.mass - ret.wheelbase = platform.config.specs.wheelbase - ret.steerRatio = platform.config.specs.steerRatio - ret.centerToFront = ret.wheelbase * platform.config.specs.centerToFrontRatio - ret.minEnableSpeed = platform.config.specs.minEnableSpeed - ret.minSteerSpeed = platform.config.specs.minSteerSpeed - ret.tireStiffnessFactor = platform.config.specs.tireStiffnessFactor - ret.flags |= int(platform.config.flags) - - ret = cls._get_params(ret, candidate, fingerprint, car_fw, alpha_long, is_release, docs) - - # Enable torque controller for all cars that do not use angle based steering - if ret.steerControlType != structs.CarParams.SteerControlType.angle and Params().get_bool("NNFF"): - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - eps_firmware = str(next((fw.fwVersion for fw in car_fw if fw.ecu == "eps"), "")) - model = get_nn_model_path(candidate, eps_firmware) - if model is not None: - Params().put_nonblocking("NNFFModelName", candidate.replace("_", " ")) - print(f"NNFF loaded... {model}") - - - if Params().get_bool("DisableMinSteerSpeed"): - ret.minSteerSpeed = 0. - - # Vehicle mass is published curb weight plus assumed payload such as a human driver; notCars have no assumed payload - if not ret.notCar: - ret.mass = ret.mass + STD_CARGO_KG - - # Set params dependent on values set by the car interface - ret.rotationalInertia = scale_rot_inertia(ret.mass, ret.wheelbase) - ret.tireStiffnessFront, ret.tireStiffnessRear = scale_tire_stiffness(ret.mass, ret.wheelbase, ret.centerToFront, ret.tireStiffnessFactor) - - return ret - - @staticmethod - @abstractmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint: dict[int, dict[int, int]], - car_fw: list[structs.CarParams.CarFw], alpha_long: bool, is_release: bool, docs: bool) -> structs.CarParams: - raise NotImplementedError - - @staticmethod - def init(CP: structs.CarParams, can_recv: CanRecvCallable, can_send: CanSendCallable): - """Used to disable longitudinal ECUs as needed""" - - @staticmethod - def deinit(CP: structs.CarParams, can_recv: CanRecvCallable, can_send: CanSendCallable): - """Used to re-enable longitudinal ECUs as needed""" - - @staticmethod - def get_steer_feedforward_default(desired_angle, v_ego): - # Proportional to realigning tire momentum: lateral acceleration. - return desired_angle * (v_ego**2) - - def get_steer_feedforward_function(self): - return self.get_steer_feedforward_default - - def torque_from_lateral_accel_linear(self, latcontrol_inputs: LatControlInputs, torque_params: structs.CarParams.LateralTorqueTuning, - lateral_accel_error: float, lateral_accel_deadzone: float, friction_compensation: bool, gravity_adjusted: bool) -> float: - # The default is a linear relationship between torque and lateral acceleration (accounting for road roll and steering friction) - friction = get_friction(lateral_accel_error, lateral_accel_deadzone, FRICTION_THRESHOLD, torque_params, friction_compensation) - return (latcontrol_inputs.lateral_acceleration / float(torque_params.latAccelFactor)) + friction - - def torque_from_lateral_accel(self) -> TorqueFromLateralAccelCallbackType: - return self.torque_from_lateral_accel_linear - - # returns a set of default params to avoid repetition in car specific params - @staticmethod - def get_std_params(candidate: str) -> structs.CarParams: - ret = structs.CarParams() - ret.carFingerprint = candidate - - # Car docs fields - ret.maxLateralAccel = get_torque_params()[candidate]['MAX_LAT_ACCEL_MEASURED'] - ret.autoResumeSng = True # describes whether car can resume from a stop automatically - - # standard ALC params - ret.tireStiffnessFactor = 1.0 - ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.minSteerSpeed = 0. - ret.wheelSpeedFactor = 1.0 - - ret.pcmCruise = True # openpilot's state is tied to the PCM's cruise state on most cars - ret.minEnableSpeed = -1. # enable is done by stock ACC, so ignore this - ret.steerRatioRear = 0. # no rear steering, at least on the listed cars aboveA - ret.openpilotLongitudinalControl = False - ret.stopAccel = -2.0 - ret.stoppingDecelRate = 0.8 # brake_travel/s while trying to stop - ret.vEgoStopping = 0.5 - ret.vEgoStarting = 0.5 - ret.longitudinalTuning.kf = 1. - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [0.] - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [0.] - # TODO estimate car specific lag, use .15s for now - ret.longitudinalActuatorDelay = 0.15 - ret.steerLimitTimer = 1.0 - return ret - - @staticmethod - def configure_torque_tune(candidate: str, tune: structs.CarParams.LateralTuning, steering_angle_deadzone_deg: float = 0.0, use_steering_angle: bool = True): - params = get_torque_params()[candidate] - - tune.init('torque') - tune.torque.useSteeringAngle = use_steering_angle - tune.torque.kp = 1.0 - tune.torque.kf = 1.0 - tune.torque.ki = 0.1 - tune.torque.friction = params['FRICTION'] - tune.torque.latAccelFactor = params['LAT_ACCEL_FACTOR'] - tune.torque.latAccelOffset = 0.0 - tune.torque.steeringAngleDeadzoneDeg = steering_angle_deadzone_deg - - def update(self, can_packets: list[tuple[int, list[CanData]]]) -> structs.CarState: - # parse can - for cp in self.can_parsers.values(): - if cp is not None: - cp.update(can_packets) - - # get CarState - ret = self.CS.update(self.can_parsers) - - ret.canValid = all(cp.can_valid for cp in self.can_parsers.values()) - ret.canTimeout = any(cp.bus_timeout for cp in self.can_parsers.values()) - - if ret.vEgoCluster == 0.0 and not self.v_ego_cluster_seen: - ret.vEgoCluster = ret.vEgo - else: - self.v_ego_cluster_seen = True - - # Many cars apply hysteresis to the ego dash speed - ret.vEgoCluster = apply_hysteresis(ret.vEgoCluster, self.CS.out.vEgoCluster, self.CS.cluster_speed_hyst_gap) - if abs(ret.vEgo) < self.CS.cluster_min_speed: - ret.vEgoCluster = 0.0 - - if ret.cruiseState.speedCluster == 0: - ret.cruiseState.speedCluster = ret.cruiseState.speed - - ret.buttonEnable = self.CS.update_button_enable(ret.buttonEvents) - - # save for next iteration - self.CS.out = ret - - return ret - - -class CarStateBase(ABC): - def __init__(self, CP: structs.CarParams): - self.CP = CP - self.car_fingerprint = CP.carFingerprint - self.out = structs.CarState() - - self.cruise_buttons = 0 - self.left_blinker_cnt = 0 - self.right_blinker_cnt = 0 - self.steering_pressed_cnt = 0 - self.left_blinker_prev = False - self.right_blinker_prev = False - self.cluster_speed_hyst_gap = 0.0 - self.cluster_min_speed = 0.0 # min speed before dropping to 0 - self.secoc_key: bytes = b"00" * 16 - - Q = [[0.0, 0.0], [0.0, 100.0]] - R = 0.3 - A = [[1.0, DT_CTRL], [0.0, 1.0]] - C = [[1.0, 0.0]] - x0=[[0.0], [0.0]] - K = get_kalman_gain(DT_CTRL, np.array(A), np.array(C), np.array(Q), R) - self.v_ego_kf = KF1D(x0=x0, A=A, C=C[0], K=K) - self.v_ego_clu_kf = KF1D(x0=x0, A=A, C=C[0], K=K) - - self.softHoldActive = 0 - self.is_metric = True - self.lkas_enabled = False - - self.MD = None - - @abstractmethod - def update(self, can_parsers) -> structs.CarState: - pass - - def update_speed_kf(self, v_ego_raw): - if abs(v_ego_raw - self.v_ego_kf.x[0][0]) > 2.0: # Prevent large accelerations when car starts at non zero speed - self.v_ego_kf.set_x([[v_ego_raw], [0.0]]) - - v_ego_x = self.v_ego_kf.update(v_ego_raw) - return float(v_ego_x[0]), float(v_ego_x[1]) - - def update_clu_speed_kf(self, v_ego_raw): - if abs(v_ego_raw - self.v_ego_clu_kf.x[0][0]) > 2.0: # Prevent large accelerations when car starts at non zero speed - self.v_ego_clu_kf.set_x([[v_ego_raw], [0.0]]) - - v_ego_x = self.v_ego_clu_kf.update(v_ego_raw) - return float(v_ego_x[0]), float(v_ego_x[1]) - - def get_wheel_speeds(self, fl, fr, rl, rr, unit=CV.KPH_TO_MS): - factor = unit * self.CP.wheelSpeedFactor - - wheelSpeeds = structs.CarState.WheelSpeeds() - wheelSpeeds.fl = fl * factor - wheelSpeeds.fr = fr * factor - wheelSpeeds.rl = rl * factor - wheelSpeeds.rr = rr * factor - return wheelSpeeds - - def update_blinker_from_lamp(self, blinker_time: int, left_blinker_lamp: bool, right_blinker_lamp: bool): - """Update blinkers from lights. Enable output when light was seen within the last `blinker_time` - iterations""" - # TODO: Handle case when switching direction. Now both blinkers can be on at the same time - self.left_blinker_cnt = blinker_time if left_blinker_lamp else max(self.left_blinker_cnt - 1, 0) - self.right_blinker_cnt = blinker_time if right_blinker_lamp else max(self.right_blinker_cnt - 1, 0) - return self.left_blinker_cnt > 0, self.right_blinker_cnt > 0 - - def update_steering_pressed(self, steering_pressed, steering_pressed_min_count): - """Applies filtering on steering pressed for noisy driver torque signals.""" - self.steering_pressed_cnt = self.steering_pressed_cnt + 1 if steering_pressed else 0 - self.steering_pressed_cnt = min(self.steering_pressed_cnt, steering_pressed_min_count + 1) - return self.steering_pressed_cnt > steering_pressed_min_count - - def update_blinker_from_stalk(self, blinker_time: int, left_blinker_stalk: bool, right_blinker_stalk: bool): - """Update blinkers from stalk position. When stalk is seen the blinker will be on for at least blinker_time, - or until the stalk is turned off, whichever is longer. If the opposite stalk direction is seen the blinker - is forced to the other side. On a rising edge of the stalk the timeout is reset.""" - - if left_blinker_stalk: - self.right_blinker_cnt = 0 - if not self.left_blinker_prev: - self.left_blinker_cnt = blinker_time - - if right_blinker_stalk: - self.left_blinker_cnt = 0 - if not self.right_blinker_prev: - self.right_blinker_cnt = blinker_time - - self.left_blinker_cnt = max(self.left_blinker_cnt - 1, 0) - self.right_blinker_cnt = max(self.right_blinker_cnt - 1, 0) - - self.left_blinker_prev = left_blinker_stalk - self.right_blinker_prev = right_blinker_stalk - - return bool(left_blinker_stalk or self.left_blinker_cnt > 0), bool(right_blinker_stalk or self.right_blinker_cnt > 0) - - def update_button_enable(self, buttonEvents: list[structs.CarState.ButtonEvent]): - if not self.CP.pcmCruise: - for b in buttonEvents: - # Enable OP long on falling edge of enable buttons - if b.type in (ButtonType.accelCruise, ButtonType.decelCruise) and not b.pressed: - return True - return False - - @staticmethod - def parse_gear_shifter(gear: str | None) -> structs.CarState.GearShifter: - if gear is None: - return GearShifter.unknown - return GEAR_SHIFTER_MAP.get(gear.upper(), GearShifter.unknown) - - @staticmethod - def get_can_parsers(CP) -> dict[StrEnum, CANParser]: - return {} - - -class CarControllerBase(ABC): - def __init__(self, dbc_names: dict[StrEnum, str], CP: structs.CarParams): - self.CP = CP - self.frame = 0 - self.secoc_key: bytes = b"00" * 16 - - @abstractmethod - def update(self, CC: structs.CarControl, CS: CarStateBase, now_nanos: int) -> tuple[structs.CarControl.Actuators, list[CanData]]: - pass - - -INTERFACE_ATTR_FILE = { - "FINGERPRINTS": "fingerprints", - "FW_VERSIONS": "fingerprints", -} - -# interface-specific helpers - -def get_interface_attr(attr: str, combine_brands: bool = False, ignore_none: bool = False) -> dict[str | StrEnum, Any]: - # read all the folders in opendbc/car and return a dict where: - # - keys are all the car models or brand names - # - values are attr values from all car folders - result = {} - for car_folder in sorted([x[0] for x in os.walk(BASEDIR)]): - try: - brand_name = car_folder.split('/')[-1] - brand_values = __import__(f'opendbc.car.{brand_name}.{INTERFACE_ATTR_FILE.get(attr, "values")}', fromlist=[attr]) - if hasattr(brand_values, attr) or not ignore_none: - attr_data = getattr(brand_values, attr, None) - else: - continue - - if combine_brands: - if isinstance(attr_data, dict): - for f, v in attr_data.items(): - result[f] = v - else: - result[brand_name] = attr_data - except (ImportError, OSError): - pass - - return result - - -class NanoFFModel: - def __init__(self, weights_loc: str, platform: str): - self.weights_loc = weights_loc - self.platform = platform - self.load_weights(platform) - - def load_weights(self, platform: str): - with open(self.weights_loc) as fob: - self.weights = {k: np.array(v) for k, v in json.load(fob)[platform].items()} - - def relu(self, x: np.ndarray): - return np.maximum(0.0, x) - - def forward(self, x: np.ndarray): - assert x.ndim == 1 - x = (x - self.weights['input_norm_mat'][:, 0]) / (self.weights['input_norm_mat'][:, 1] - self.weights['input_norm_mat'][:, 0]) - x = self.relu(np.dot(x, self.weights['w_1']) + self.weights['b_1']) - x = self.relu(np.dot(x, self.weights['w_2']) + self.weights['b_2']) - x = self.relu(np.dot(x, self.weights['w_3']) + self.weights['b_3']) - x = np.dot(x, self.weights['w_4']) + self.weights['b_4'] - return x - - def predict(self, x: list[float], do_sample: bool = False): - x = self.forward(np.array(x)) - if do_sample: - pred = np.random.laplace(x[0], np.exp(x[1]) / self.weights['temperature']) - else: - pred = x[0] - pred = pred * (self.weights['output_norm_mat'][1] - self.weights['output_norm_mat'][0]) + self.weights['output_norm_mat'][0] - return pred diff --git a/opendbc_repo/opendbc/car/isotp.py b/opendbc_repo/opendbc/car/isotp.py deleted file mode 100644 index ac64c413be..0000000000 --- a/opendbc_repo/opendbc/car/isotp.py +++ /dev/null @@ -1,140 +0,0 @@ -import binascii -import time - -DEBUG = False - -def msg(x): - if DEBUG: - print("S:", binascii.hexlify(x)) - assert len(x) <= 7 - ret = bytes([len(x)]) + x - return ret.ljust(8, b"\x00") - -kmsgs = [] -def recv(panda, cnt, addr, nbus): - global kmsgs - ret = [] - - while len(ret) < cnt: - kmsgs += panda.can_recv() - nmsgs = [] - for ids, dat, bus in kmsgs: - if ids == addr and bus == nbus and len(ret) < cnt: - ret.append(dat) - else: - # leave around - nmsgs.append((ids, dat, bus)) - kmsgs = nmsgs[-256:] - return ret - -def isotp_recv_subaddr(panda, addr, bus, sendaddr, subaddr): - msg = recv(panda, 1, addr, bus)[0] - - # TODO: handle other subaddr also communicating - assert msg[0] == subaddr - - if msg[1] & 0xf0 == 0x10: - # first - tlen = ((msg[1] & 0xf) << 8) | msg[2] - dat = msg[3:] - - # 0 block size? - CONTINUE = bytes([subaddr]) + b"\x30" + b"\x00" * 6 - panda.can_send(sendaddr, CONTINUE, bus) - - idx = 1 - for mm in recv(panda, (tlen - len(dat) + 5) // 6, addr, bus): - assert mm[0] == subaddr - assert mm[1] == (0x20 | (idx & 0xF)) - dat += mm[2:] - idx += 1 - elif msg[1] & 0xf0 == 0x00: - # single - tlen = msg[1] & 0xf - dat = msg[2:] - else: - print(binascii.hexlify(msg)) - raise AssertionError - - return dat[0:tlen] - -# **** import below this line **** - -def isotp_send(panda, x, addr, bus=0, recvaddr=None, subaddr=None, rate=None): - if recvaddr is None: - recvaddr = addr + 8 - - if len(x) <= 7 and subaddr is None: - panda.can_send(addr, msg(x), bus) - elif len(x) <= 6 and subaddr is not None: - panda.can_send(addr, bytes([subaddr]) + msg(x)[0:7], bus) - else: - if subaddr: - ss = bytes([subaddr, 0x10 + (len(x) >> 8), len(x) & 0xFF]) + x[0:5] - x = x[5:] - else: - ss = bytes([0x10 + (len(x) >> 8), len(x) & 0xFF]) + x[0:6] - x = x[6:] - idx = 1 - sends = [] - while len(x) > 0: - if subaddr: - sends.append((bytes([subaddr, 0x20 + (idx & 0xF)]) + x[0:6]).ljust(8, b"\x00")) - x = x[6:] - else: - sends.append((bytes([0x20 + (idx & 0xF)]) + x[0:7]).ljust(8, b"\x00")) - x = x[7:] - idx += 1 - - # actually send - panda.can_send(addr, ss, bus) - rr = recv(panda, 1, recvaddr, bus)[0] - if rr.find(b"\x30\x01") != -1: - for s in sends[:-1]: - panda.can_send(addr, s, 0) - rr = recv(panda, 1, recvaddr, bus)[0] - panda.can_send(addr, sends[-1], 0) - else: - if rate is None: - panda.can_send_many([(addr, s, bus) for s in sends]) - else: - for dat in sends: - panda.can_send(addr, dat, bus) - time.sleep(rate) - -def isotp_recv(panda, addr, bus=0, sendaddr=None, subaddr=None): - if sendaddr is None: - sendaddr = addr - 8 - - if subaddr is not None: - dat = isotp_recv_subaddr(panda, addr, bus, sendaddr, subaddr) - else: - msg = recv(panda, 1, addr, bus)[0] - - if msg[0] & 0xf0 == 0x10: - # first - tlen = ((msg[0] & 0xf) << 8) | msg[1] - dat = msg[2:] - - # 0 block size? - CONTINUE = b"\x30" + b"\x00" * 7 - - panda.can_send(sendaddr, CONTINUE, bus) - - idx = 1 - for mm in recv(panda, (tlen - len(dat) + 6) // 7, addr, bus): - assert mm[0] == (0x20 | (idx & 0xF)) - dat += mm[1:] - idx += 1 - elif msg[0] & 0xf0 == 0x00: - # single - tlen = msg[0] & 0xf - dat = msg[1:] - else: - raise AssertionError - dat = dat[0:tlen] - - if DEBUG: - print("R:", binascii.hexlify(dat)) - - return dat diff --git a/opendbc_repo/opendbc/car/isotp_parallel_query.py b/opendbc_repo/opendbc/car/isotp_parallel_query.py deleted file mode 100644 index 57925e4239..0000000000 --- a/opendbc_repo/opendbc/car/isotp_parallel_query.py +++ /dev/null @@ -1,170 +0,0 @@ -import time -from collections import defaultdict -from functools import partial - -from opendbc.car import uds -from opendbc.car.can_definitions import CanData, CanRecvCallable, CanSendCallable -from opendbc.car.carlog import carlog -from opendbc.car.fw_query_definitions import AddrType - - -class IsoTpParallelQuery: - def __init__(self, can_send: CanSendCallable, can_recv: CanRecvCallable, bus: int, addrs: list[int] | list[AddrType], - request: list[bytes], response: list[bytes], response_offset: int = 0x8, - functional_addrs: list[int] = None, response_pending_timeout: float = 10) -> None: - self.can_send = can_send - self.can_recv = can_recv - self.bus = bus - self.request = request - self.response = response - self.functional_addrs = functional_addrs or [] - self.response_pending_timeout = response_pending_timeout - - real_addrs = [a if isinstance(a, tuple) else (a, None) for a in addrs] - for tx_addr, _ in real_addrs: - assert tx_addr not in uds.FUNCTIONAL_ADDRS, f"Functional address should be defined in functional_addrs: {hex(tx_addr)}" - - self.msg_addrs = {tx_addr: uds.get_rx_addr_for_tx_addr(tx_addr[0], rx_offset=response_offset) for tx_addr in real_addrs} - self.msg_buffer: dict[int, list[CanData]] = defaultdict(list) - - def rx(self) -> None: - """Drain can socket and sort messages into buffers based on address""" - can_packets = self.can_recv(wait_for_one=True) - - for packet in can_packets: - for msg in packet: - if msg.src == self.bus and msg.address in self.msg_addrs.values(): - self.msg_buffer[msg.address].append(CanData(msg.address, msg.dat, msg.src)) - - def _can_tx(self, tx_addr: int, dat: bytes, bus: int): - """Helper function to send single message""" - msg = CanData(tx_addr, dat, bus) - self.can_send([msg]) - - def _can_rx(self, addr, sub_addr=None): - """Helper function to retrieve message with specified address and subaddress from buffer""" - keep_msgs = [] - - if sub_addr is None: - msgs = self.msg_buffer[addr] - else: - # Filter based on subaddress - msgs = [] - for m in self.msg_buffer[addr]: - first_byte = m[1][0] - if first_byte == sub_addr: - msgs.append(m) - else: - keep_msgs.append(m) - - self.msg_buffer[addr] = keep_msgs - return msgs - - def _drain_rx(self) -> None: - self.can_recv() - self.msg_buffer = defaultdict(list) - - def _create_isotp_msg(self, tx_addr: int, sub_addr: int | None, rx_addr: int): - can_client = uds.CanClient(self._can_tx, partial(self._can_rx, rx_addr, sub_addr=sub_addr), tx_addr, rx_addr, - self.bus, sub_addr=sub_addr) - - # uses iso-tp frame separation time of 10 ms - # TODO: use single_frame_mode so ECUs can send as fast as they want, - # as well as reduces chances we process messages from previous queries - return uds.IsoTpMessage(can_client, timeout=0, separation_time=0.01) - - def get_data(self, timeout: float, total_timeout: float = 60.) -> dict[AddrType, bytes]: - self._drain_rx() - - # Create message objects - msgs = {} - request_counter = {} - request_done = {} - for tx_addr, rx_addr in self.msg_addrs.items(): - msgs[tx_addr] = self._create_isotp_msg(*tx_addr, rx_addr) - request_counter[tx_addr] = 0 - request_done[tx_addr] = False - - # Send first request to functional addrs, subsequent responses are handled on physical addrs - if len(self.functional_addrs): - for addr in self.functional_addrs: - self._create_isotp_msg(addr, None, -1).send(self.request[0]) - - # Send first frame (single or first) to all addresses and receive asynchronously in the loop below. - # If querying functional addrs, only set up physical IsoTpMessages to send consecutive frames - for msg in msgs.values(): - msg.send(self.request[0], setup_only=len(self.functional_addrs) > 0) - - results = {} - start_time = time.monotonic() - addrs_responded = set() # track addresses that have ever sent a valid iso-tp frame for timeout logging - response_timeouts = {tx_addr: start_time + timeout for tx_addr in self.msg_addrs} - while True: - self.rx() - - for tx_addr, msg in msgs.items(): - try: - dat, rx_in_progress = msg.recv() - except Exception: - carlog.exception(f"Error processing UDS response: {tx_addr}") - request_done[tx_addr] = True - continue - - # Extend timeout for each consecutive ISO-TP frame to avoid timing out on long responses - if rx_in_progress: - addrs_responded.add(tx_addr) - response_timeouts[tx_addr] = time.monotonic() + timeout - - if dat is None: - continue - - # Log unexpected empty responses - if len(dat) == 0: - carlog.error(f"iso-tp query empty response: {tx_addr}") - request_done[tx_addr] = True - continue - - counter = request_counter[tx_addr] - expected_response = self.response[counter] - response_valid = dat.startswith(expected_response) - - if response_valid: - if counter + 1 < len(self.request): - response_timeouts[tx_addr] = time.monotonic() + timeout - msg.send(self.request[counter + 1]) - request_counter[tx_addr] += 1 - else: - results[tx_addr] = dat[len(expected_response):] - request_done[tx_addr] = True - else: - error_code = dat[2] if len(dat) > 2 else -1 - if error_code == 0x78: - response_timeouts[tx_addr] = time.monotonic() + self.response_pending_timeout - carlog.error(f"iso-tp query response pending: {tx_addr}") - else: - request_done[tx_addr] = True - carlog.error(f"iso-tp query bad response: {tx_addr} - 0x{dat.hex()}") - - # Mark request done if address timed out - cur_time = time.monotonic() - for tx_addr in response_timeouts: - if cur_time - response_timeouts[tx_addr] > 0: - if not request_done[tx_addr]: - if request_counter[tx_addr] > 0: - carlog.error(f"iso-tp query timeout after receiving partial response: {tx_addr}") - elif tx_addr in addrs_responded: - carlog.error(f"iso-tp query timeout while receiving response: {tx_addr}") - # TODO: handle functional addresses - # else: - # carlog.error(f"iso-tp query timeout with no response: {tx_addr}") - request_done[tx_addr] = True - - # Break if all requests are done (finished or timed out) - if all(request_done.values()): - break - - if cur_time - start_time > total_timeout: - carlog.error("iso-tp query timeout while receiving data") - break - - return results diff --git a/opendbc_repo/opendbc/car/mazda/__init__.py b/opendbc_repo/opendbc/car/mazda/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/mazda/carcontroller.py b/opendbc_repo/opendbc/car/mazda/carcontroller.py deleted file mode 100644 index 328c9d85ac..0000000000 --- a/opendbc_repo/opendbc/car/mazda/carcontroller.py +++ /dev/null @@ -1,113 +0,0 @@ -from opendbc.can import CANPacker -from opendbc.car import Bus, apply_driver_steer_torque_limits, structs -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.mazda import mazdacan -from opendbc.car.mazda.values import CarControllerParams, Buttons -from opendbc.car.common.conversions import Conversions as CV -from openpilot.common.params import Params - -VisualAlert = structs.CarControl.HUDControl.VisualAlert - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.apply_torque_last = 0 - self.packer = CANPacker(dbc_names[Bus.pt]) - self.brake_counter = 0 - - self.activateCruise = 0 - self.speed_from_pcm = 1 - - def update(self, CC, CS, now_nanos): - - if self.frame % 50 == 0: - params = Params() - self.speed_from_pcm = params.get_int("SpeedFromPCM") - - can_sends = [] - - apply_torque = 0 - - if CC.latActive: - # calculate steer and also set limits due to driver torque - new_torque = int(round(CC.actuators.torque * CarControllerParams.STEER_MAX)) - apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, - CS.out.steeringTorque, CarControllerParams) - - if CC.cruiseControl.cancel: - # If brake is pressed, let us wait >70ms before trying to disable crz to avoid - # a race condition with the stock system, where the second cancel from openpilot - # will disable the crz 'main on'. crz ctrl msg runs at 50hz. 70ms allows us to - # read 3 messages and most likely sync state before we attempt cancel. - self.brake_counter = self.brake_counter + 1 - if self.frame % 10 == 0 and not (CS.out.brakePressed and self.brake_counter < 7): - # Cancel Stock ACC if it's enabled while OP is disengaged - # Send at a rate of 10hz until we sync with stock ACC state - can_sends.append(mazdacan.create_button_cmd(self.packer, self.CP, CS.crz_btns_counter, Buttons.CANCEL)) - elif False: - self.brake_counter = 0 - if CC.cruiseControl.resume and self.frame % 5 == 0: - # Mazda Stop and Go requires a RES button (or gas) press if the car stops more than 3 seconds - # Send Resume button when planner wants car to move - can_sends.append(mazdacan.create_button_cmd(self.packer, self.CP, CS.crz_btns_counter, Buttons.RESUME)) - else: - if self.frame % 20 == 0: - spam_button = self.make_spam_button(CC, CS) - if spam_button > 0: - self.brake_counter = 0 - can_sends.append(mazdacan.create_button_cmd(self.packer, self.CP, self.frame // 10, spam_button)) - - self.apply_torque_last = apply_torque - - # send HUD alerts - if self.frame % 50 == 0: - ldw = CC.hudControl.visualAlert == VisualAlert.ldw - steer_required = CC.hudControl.visualAlert == VisualAlert.steerRequired - # TODO: find a way to silence audible warnings so we can add more hud alerts - steer_required = steer_required and CS.lkas_allowed_speed - can_sends.append(mazdacan.create_alert_command(self.packer, CS.cam_laneinfo, ldw, steer_required)) - - # send steering command - can_sends.append(mazdacan.create_steering_control(self.packer, self.CP, - self.frame, apply_torque, CS.cam_lkas)) - - new_actuators = CC.actuators.as_builder() - new_actuators.torque = apply_torque / CarControllerParams.STEER_MAX - new_actuators.torqueOutputCan = apply_torque - - self.frame += 1 - return new_actuators, can_sends - - def make_spam_button(self, CC, CS): - hud_control = CC.hudControl - set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - target = int(set_speed_in_units+0.5) - target = int(round(target / 5.0) * 5.0) - current = int(CS.out.cruiseState.speed*CV.MS_TO_KPH + 0.5) - current = int(round(current / 5.0) * 5.0) - v_ego_kph = CS.out.vEgo * CV.MS_TO_KPH - - cant_activate = CS.out.brakePressed or CS.out.gasPressed - - if CC.enabled: - if not CS.out.cruiseState.enabled: - if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0 and not cant_activate: - self.activateCruise = 1 - print("RESUME") - return Buttons.RESUME - elif CC.cruiseControl.resume: - return Buttons.RESUME - elif target < current and current>= 31 and self.speed_from_pcm != 1: - print(f"SET_MINUS target={target}, current={current}") - return Buttons.SET_MINUS - elif target > current and current < 160 and self.speed_from_pcm != 1: - print(f"SET_PLUS target={target}, current={current}") - return Buttons.SET_PLUS - elif CS.out.activateCruise: - if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0 and not cant_activate: - self.activateCruise = 1 - print("RESUME") - return Buttons.RESUME - - return 0 diff --git a/opendbc_repo/opendbc/car/mazda/carstate.py b/opendbc_repo/opendbc/car/mazda/carstate.py deleted file mode 100644 index c454c74633..0000000000 --- a/opendbc_repo/opendbc/car/mazda/carstate.py +++ /dev/null @@ -1,152 +0,0 @@ -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, create_button_events, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarStateBase -from opendbc.car.mazda.values import DBC, LKAS_LIMITS, MazdaFlags, Buttons - -ButtonType = structs.CarState.ButtonEvent.Type -BUTTONS_DICT = {Buttons.SET_PLUS: ButtonType.accelCruise, Buttons.SET_MINUS: ButtonType.decelCruise, - Buttons.RESUME: ButtonType.resumeCruise, Buttons.CANCEL: ButtonType.cancel} - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - self.shifter_values = can_define.dv["GEAR"]["GEAR"] - - self.crz_btns_counter = 0 - self.acc_active_last = False - self.low_speed_alert = False - self.lkas_allowed_speed = False - self.lkas_disabled = False - - self.prev_distance_button = 0 - self.distance_button = 0 - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - - ret = structs.CarState() - - self.prev_distance_button = self.distance_button - self.distance_button = cp.vl["CRZ_BTNS"]["DISTANCE_LESS"] - - self.prev_cruise_buttons = self.cruise_buttons - - if bool(cp.vl["CRZ_BTNS"]["SET_P"]): - self.cruise_buttons = Buttons.SET_PLUS - elif bool(cp.vl["CRZ_BTNS"]["SET_M"]): - self.cruise_buttons = Buttons.SET_MINUS - elif bool(cp.vl["CRZ_BTNS"]["RES"]): - self.cruise_buttons = Buttons.RESUME - else: - self.cruise_buttons = Buttons.NONE - - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["WHEEL_SPEEDS"]["FL"], - cp.vl["WHEEL_SPEEDS"]["FR"], - cp.vl["WHEEL_SPEEDS"]["RL"], - cp.vl["WHEEL_SPEEDS"]["RR"], - ) - ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - - # Match panda speed reading - speed_kph = cp.vl["ENGINE_DATA"]["SPEED"] - ret.standstill = speed_kph <= .1 - - can_gear = int(cp.vl["GEAR"]["GEAR"]) - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - ret.gearStep = cp.vl["GEAR"]["GEAR_BOX"] - - ret.genericToggle = bool(cp.vl["BLINK_INFO"]["HIGH_BEAMS"]) - ret.leftBlindspot = cp.vl["BSM"]["LEFT_BS_STATUS"] != 0 - ret.rightBlindspot = cp.vl["BSM"]["RIGHT_BS_STATUS"] != 0 - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(40, cp.vl["BLINK_INFO"]["LEFT_BLINK"] == 1, - cp.vl["BLINK_INFO"]["RIGHT_BLINK"] == 1) - - ret.steeringAngleDeg = cp.vl["STEER"]["STEER_ANGLE"] - ret.steeringTorque = cp.vl["STEER_TORQUE"]["STEER_TORQUE_SENSOR"] - ret.steeringPressed = abs(ret.steeringTorque) > LKAS_LIMITS.STEER_THRESHOLD - - ret.steeringTorqueEps = cp.vl["STEER_TORQUE"]["STEER_TORQUE_MOTOR"] - ret.steeringRateDeg = cp.vl["STEER_RATE"]["STEER_ANGLE_RATE"] - - # TODO: this should be from 0 - 1. - ret.brakePressed = cp.vl["PEDALS"]["BRAKE_ON"] == 1 - ret.brake = cp.vl["BRAKE"]["BRAKE_PRESSURE"] - - ret.seatbeltUnlatched = cp.vl["SEATBELT"]["DRIVER_SEATBELT"] == 0 - ret.doorOpen = any([cp.vl["DOORS"]["FL"], cp.vl["DOORS"]["FR"], - cp.vl["DOORS"]["BL"], cp.vl["DOORS"]["BR"]]) - - # TODO: this should be from 0 - 1. - ret.gas = cp.vl["ENGINE_DATA"]["PEDAL_GAS"] - ret.gasPressed = ret.gas > 0 - - # Either due to low speed or hands off - lkas_blocked = cp.vl["STEER_RATE"]["LKAS_BLOCK"] == 1 - - if self.CP.minSteerSpeed > 0: - # LKAS is enabled at 52kph going up and disabled at 45kph going down - # wait for LKAS_BLOCK signal to clear when going up since it lags behind the speed sometimes - if speed_kph > LKAS_LIMITS.ENABLE_SPEED and not lkas_blocked: - self.lkas_allowed_speed = True - elif speed_kph < LKAS_LIMITS.DISABLE_SPEED: - self.lkas_allowed_speed = False - else: - self.lkas_allowed_speed = True - - # TODO: the signal used for available seems to be the adaptive cruise signal, instead of the main on - # it should be used for carState.cruiseState.nonAdaptive instead - ret.cruiseState.available = cp.vl["CRZ_CTRL"]["CRZ_AVAILABLE"] == 1 - ret.cruiseState.enabled = cp.vl["CRZ_CTRL"]["CRZ_ACTIVE"] == 1 - ret.cruiseState.standstill = cp.vl["PEDALS"]["STANDSTILL"] == 1 - ret.cruiseState.speed = cp.vl["CRZ_EVENTS"]["CRZ_SPEED"] * CV.KPH_TO_MS - - # stock lkas should be on - # TODO: is this needed? - ret.invalidLkasSetting = cp_cam.vl["CAM_LANEINFO"]["LANE_LINES"] == 0 - - if ret.cruiseState.enabled: - if not self.lkas_allowed_speed and self.acc_active_last: - self.low_speed_alert = True - else: - self.low_speed_alert = False - ret.lowSpeedAlert = self.low_speed_alert - - # Check if LKAS is disabled due to lack of driver torque when all other states indicate - # it should be enabled (steer lockout). Don't warn until we actually get lkas active - # and lose it again, i.e, after initial lkas activation - ret.steerFaultTemporary = self.lkas_allowed_speed and lkas_blocked - - self.acc_active_last = ret.cruiseState.enabled - - self.crz_btns_counter = cp.vl["CRZ_BTNS"]["CTR"] - - # camera signals - self.lkas_disabled = cp_cam.vl["CAM_LANEINFO"]["LANE_LINES"] == 0 - self.cam_lkas = cp_cam.vl["CAM_LKAS"] - self.cam_laneinfo = cp_cam.vl["CAM_LANEINFO"] - ret.steerFaultPermanent = cp_cam.vl["CAM_LKAS"]["ERR_BIT_1"] == 1 - - self.lkas_previously_enabled = self.lkas_enabled - self.lkas_enabled = not self.lkas_disabled - - # TODO: add button types for inc and dec - #ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) - ret.buttonEvents = [ - *create_button_events(self.cruise_buttons, self.prev_cruise_buttons, BUTTONS_DICT), - *create_button_events(self.distance_button, self.prev_distance_button, {1: ButtonType.gapAdjustCruise}), - #*create_button_events(self.lkas_enabled, self.lkas_previously_enabled, {1: ButtonType.lfaButton}), - ] - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - } diff --git a/opendbc_repo/opendbc/car/mazda/fingerprints.py b/opendbc_repo/opendbc/car/mazda/fingerprints.py deleted file mode 100644 index e21fa4449b..0000000000 --- a/opendbc_repo/opendbc/car/mazda/fingerprints.py +++ /dev/null @@ -1,267 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.mazda.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.MAZDA_CX5_2022: { - (Ecu.eps, 0x730, None): [ - b'KSD5-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'PEW5-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PW67-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2C-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2D-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2G-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2H-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2H-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX85-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXFG-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXFG-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'SH54-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'KGWD-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KSD5-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'GSH7-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-U\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.transmission, 0x7e1, None): [ - b'PG69-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PW66-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXDL-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXFG-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXFG-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYJ3-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'SH51-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.MAZDA_CX5: { - (Ecu.eps, 0x730, None): [ - b'K319-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KCB8-3210X-B-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KJ01-3210X-G-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KJ01-3210X-J-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KJ01-3210X-M-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'PA53-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PAR4-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2E-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2F-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2G-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2H-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2H-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2H-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX2K-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX38-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX42-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX68-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFA-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFC-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFD-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYNF-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'SHKT-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'K123-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'K123-437K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KBJ5-437K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KL2K-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KN0W-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'B61L-67XK2-R\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-V\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-M\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-N\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-R\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.transmission, 0x7e1, None): [ - b'PA66-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PA66-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX39-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX39-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX68-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB1-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB1-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB1-21PS1-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYNC-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'SH9T-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.MAZDA_CX9: { - (Ecu.eps, 0x730, None): [ - b'K070-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KJ01-3210X-G-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KJ01-3210X-L-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'PX23-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX24-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM4-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXN8-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXN8-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYD7-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYD8-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFM-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFM-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'K123-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TK80-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TK80-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'TA0B-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TK79-437K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TK79-437K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TM53-437K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TN40-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'B61L-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-V\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-K\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'TK80-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.transmission, 0x7e1, None): [ - b'PXM4-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM7-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYD5-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYD5-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYD6-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYD6-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFM-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYFM-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.MAZDA_3: { - (Ecu.eps, 0x730, None): [ - b'BHN1-3210X-J-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K070-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'KR11-3210X-K-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'P5JD-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PY2P-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYJW-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYKC-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYKE-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'B63C-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GHP9-67Y10---41\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'B45A-437AS-0-08\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'B61L-67XK2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-Q\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.transmission, 0x7e1, None): [ - b'P52G-21PS1-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PY2S-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYKA-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYKE-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYKE-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.MAZDA_6: { - (Ecu.eps, 0x730, None): [ - b'GBEF-3210X-B-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GBEF-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GFBC-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'PA34-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PX4F-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYH7-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYH7-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'K131-67XK2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'GBVH-437K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GBVH-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GDDM-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'B61L-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.transmission, 0x7e1, None): [ - b'PA28-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYH3-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PYH7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, - CAR.MAZDA_CX9_2021: { - (Ecu.eps, 0x730, None): [ - b'TC3M-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'PXGW-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXGW-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM4-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM4-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM6-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM7-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x764, None): [ - b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x760, None): [ - b'TA0B-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x706, None): [ - b'GSH7-67XK2-M\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-N\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'GSH7-67XK2-U\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.transmission, 0x7e1, None): [ - b'PXM4-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM6-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'PXM7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/mazda/interface.py b/opendbc_repo/opendbc/car/mazda/interface.py deleted file mode 100755 index e9c76a56a6..0000000000 --- a/opendbc_repo/opendbc/car/mazda/interface.py +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.car import get_safety_config, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.mazda.values import CAR, LKAS_LIMITS -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.mazda.carcontroller import CarController -from opendbc.car.mazda.carstate import CarState -from opendbc.car.mazda.values import CAR, LKAS_LIMITS - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "mazda" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.mazda)] - ret.radarUnavailable = True - - ret.dashcamOnly = candidate not in (CAR.MAZDA_CX5_2022, CAR.MAZDA_CX9_2021) - - ret.steerActuatorDelay = 0.1 - ret.steerLimitTimer = 0.8 - - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - if candidate not in (CAR.MAZDA_CX5_2022,): - ret.minSteerSpeed = LKAS_LIMITS.DISABLE_SPEED * CV.KPH_TO_MS - - ret.centerToFront = ret.wheelbase * 0.41 - - return ret diff --git a/opendbc_repo/opendbc/car/mazda/mazdacan.py b/opendbc_repo/opendbc/car/mazda/mazdacan.py deleted file mode 100644 index 4a193e9dd6..0000000000 --- a/opendbc_repo/opendbc/car/mazda/mazdacan.py +++ /dev/null @@ -1,130 +0,0 @@ -from opendbc.car.mazda.values import Buttons, MazdaFlags - - -def create_steering_control(packer, CP, frame, apply_torque, lkas): - - tmp = apply_torque + 2048 - - lo = tmp & 0xFF - hi = tmp >> 8 - - # copy values from camera - b1 = int(lkas["BIT_1"]) - er1 = int(lkas["ERR_BIT_1"]) - lnv = 0 - ldw = 0 - er2 = int(lkas["ERR_BIT_2"]) - - # Some older models do have these, newer models don't. - # Either way, they all work just fine if set to zero. - steering_angle = 0 - b2 = 0 - - tmp = steering_angle + 2048 - ahi = tmp >> 10 - amd = (tmp & 0x3FF) >> 2 - amd = (amd >> 4) | (( amd & 0xF) << 4) - alo = (tmp & 0x3) << 2 - - ctr = frame % 16 - # bytes: [ 1 ] [ 2 ] [ 3 ] [ 4 ] - csum = 249 - ctr - hi - lo - (lnv << 3) - er1 - (ldw << 7) - ( er2 << 4) - (b1 << 5) - - # bytes [ 5 ] [ 6 ] [ 7 ] - csum = csum - ahi - amd - alo - b2 - - if ahi == 1: - csum = csum + 15 - - if csum < 0: - if csum < -256: - csum = csum + 512 - else: - csum = csum + 256 - - csum = csum % 256 - - values = {} - if CP.flags & MazdaFlags.GEN1: - values = { - "LKAS_REQUEST": apply_torque, - "CTR": ctr, - "ERR_BIT_1": er1, - "LINE_NOT_VISIBLE" : lnv, - "LDW": ldw, - "BIT_1": b1, - "ERR_BIT_2": er2, - "STEERING_ANGLE": steering_angle, - "ANGLE_ENABLED": b2, - "CHKSUM": csum - } - - return packer.make_can_msg("CAM_LKAS", 0, values) - - -def create_alert_command(packer, cam_msg: dict, ldw: bool, steer_required: bool): - values = {s: cam_msg[s] for s in [ - "LINE_VISIBLE", - "LINE_NOT_VISIBLE", - "LANE_LINES", - "BIT1", - "BIT2", - "BIT3", - "NO_ERR_BIT", - "S1", - "S1_HBEAM", - ]} - values.update({ - # TODO: what's the difference between all these? do we need to send all? - "HANDS_WARN_3_BITS": 0b111 if steer_required else 0, - "HANDS_ON_STEER_WARN": steer_required, - "HANDS_ON_STEER_WARN_2": steer_required, - - # TODO: right lane works, left doesn't - # TODO: need to do something about L/R - "LDW_WARN_LL": 0, - "LDW_WARN_RL": 0, - }) - return packer.make_can_msg("CAM_LANEINFO", 0, values) - - -def create_button_cmd(packer, CP, counter, button): - - can = int(button == Buttons.CANCEL) - res = int(button == Buttons.RESUME) - inc = int(button == Buttons.SET_PLUS) - dec = int(button == Buttons.SET_MINUS) - - if CP.flags & MazdaFlags.GEN1: - values = { - "CAN_OFF": can, - "CAN_OFF_INV": (can + 1) % 2, - - "SET_P": inc, - "SET_P_INV": (inc + 1) % 2, - - "RES": res, - "RES_INV": (res + 1) % 2, - - "SET_M": dec, - "SET_M_INV": (dec + 1) % 2, - - "DISTANCE_LESS": 0, - "DISTANCE_LESS_INV": 1, - - "DISTANCE_MORE": 0, - "DISTANCE_MORE_INV": 1, - - "MODE_X": 0, - "MODE_X_INV": 1, - - "MODE_Y": 0, - "MODE_Y_INV": 1, - - "BIT1": 1, - "BIT2": 1, - "BIT3": 1, - "CTR": (counter + 1) % 16, - } - - return packer.make_can_msg("CRZ_BTNS", 0, values) diff --git a/opendbc_repo/opendbc/car/mazda/values.py b/opendbc_repo/opendbc/car/mazda/values.py deleted file mode 100644 index c01ff268bb..0000000000 --- a/opendbc_repo/opendbc/car/mazda/values.py +++ /dev/null @@ -1,113 +0,0 @@ -from dataclasses import dataclass, field -from enum import IntFlag - -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries - -Ecu = CarParams.Ecu - - -# Steer torque limits - -class CarControllerParams: - STEER_MAX = 800 # theoretical max_steer 2047 - STEER_DELTA_UP = 10 # torque increase per refresh - STEER_DELTA_DOWN = 25 # torque decrease per refresh - STEER_DRIVER_ALLOWANCE = 15 # allowed driver torque before start limiting - STEER_DRIVER_MULTIPLIER = 1 # weight driver torque - STEER_DRIVER_FACTOR = 1 # from dbc - STEER_ERROR_MAX = 350 # max delta between torque cmd and torque motor - STEER_STEP = 1 # 100 Hz - - def __init__(self, CP): - pass - - -@dataclass -class MazdaCarDocs(CarDocs): - package: str = "All" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.mazda])) - - -@dataclass(frozen=True, kw_only=True) -class MazdaCarSpecs(CarSpecs): - tireStiffnessFactor: float = 0.7 # not optimized yet - - -class MazdaFlags(IntFlag): - # Static flags - # Gen 1 hardware: same CAN messages and same camera - GEN1 = 1 - - -@dataclass -class MazdaPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'mazda_2017'}) - flags: int = MazdaFlags.GEN1 - - -class CAR(Platforms): - MAZDA_CX5 = MazdaPlatformConfig( - [MazdaCarDocs("Mazda CX-5 2017-21")], - MazdaCarSpecs(mass=3655 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=15.5) - ) - MAZDA_CX9 = MazdaPlatformConfig( - [MazdaCarDocs("Mazda CX-9 2016-20")], - MazdaCarSpecs(mass=4217 * CV.LB_TO_KG, wheelbase=3.1, steerRatio=17.6) - ) - MAZDA_3 = MazdaPlatformConfig( - [MazdaCarDocs("Mazda 3 2017-18")], - MazdaCarSpecs(mass=2875 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=14.0) - ) - MAZDA_6 = MazdaPlatformConfig( - [MazdaCarDocs("Mazda 6 2017-20")], - MazdaCarSpecs(mass=3443 * CV.LB_TO_KG, wheelbase=2.83, steerRatio=15.5) - ) - MAZDA_CX9_2021 = MazdaPlatformConfig( - [MazdaCarDocs("Mazda CX-9 2021-23", video="https://youtu.be/dA3duO4a0O4")], - MAZDA_CX9.specs - ) - MAZDA_CX5_2022 = MazdaPlatformConfig( - [MazdaCarDocs("Mazda CX-5 2022-25")], - MAZDA_CX5.specs, - ) - - -class LKAS_LIMITS: - STEER_THRESHOLD = 15 - DISABLE_SPEED = 45 # kph - ENABLE_SPEED = 52 # kph - - -class Buttons: - NONE = 0 - SET_PLUS = 1 - SET_MINUS = 2 - RESUME = 3 - CANCEL = 4 - - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - # TODO: check data to ensure ABS does not skip ISO-TP frames on bus 0 - Request( - [StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], - [StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], - bus=0, - ), - ], -) - -DBC = CAR.create_dbc_map() - -if __name__ == "__main__": - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) diff --git a/opendbc_repo/opendbc/car/mock/__init__.py b/opendbc_repo/opendbc/car/mock/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/mock/carcontroller.py b/opendbc_repo/opendbc/car/mock/carcontroller.py deleted file mode 100644 index 6336dcfcbe..0000000000 --- a/opendbc_repo/opendbc/car/mock/carcontroller.py +++ /dev/null @@ -1,6 +0,0 @@ -from opendbc.car.interfaces import CarControllerBase - - -class CarController(CarControllerBase): - def update(self, CC, CS, now_nanos): - return CC.actuators.as_builder(), [] diff --git a/opendbc_repo/opendbc/car/mock/carstate.py b/opendbc_repo/opendbc/car/mock/carstate.py deleted file mode 100644 index 9cbdf99e91..0000000000 --- a/opendbc_repo/opendbc/car/mock/carstate.py +++ /dev/null @@ -1,7 +0,0 @@ -from opendbc.car import structs -from opendbc.car.interfaces import CarStateBase - - -class CarState(CarStateBase): - def update(self, *_) -> structs.CarState: - return structs.CarState() diff --git a/opendbc_repo/opendbc/car/mock/interface.py b/opendbc_repo/opendbc/car/mock/interface.py deleted file mode 100755 index 3bcc2f8f11..0000000000 --- a/opendbc_repo/opendbc/car/mock/interface.py +++ /dev/null @@ -1,21 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.car import structs -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.mock.carcontroller import CarController -from opendbc.car.mock.carstate import CarState - - -# mocked car interface for dashcam mode -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "mock" - ret.mass = 1700. - ret.wheelbase = 2.70 - ret.centerToFront = ret.wheelbase * 0.5 - ret.steerRatio = 13. - ret.dashcamOnly = True - return ret diff --git a/opendbc_repo/opendbc/car/mock/values.py b/opendbc_repo/opendbc/car/mock/values.py deleted file mode 100644 index aa844de4c5..0000000000 --- a/opendbc_repo/opendbc/car/mock/values.py +++ /dev/null @@ -1,9 +0,0 @@ -from opendbc.car import CarSpecs, PlatformConfig, Platforms - - -class CAR(Platforms): - MOCK = PlatformConfig( - [], - CarSpecs(mass=1700, wheelbase=2.7, steerRatio=13), - {} - ) diff --git a/opendbc_repo/opendbc/car/nissan/__init__.py b/opendbc_repo/opendbc/car/nissan/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/nissan/carcontroller.py b/opendbc_repo/opendbc/car/nissan/carcontroller.py deleted file mode 100644 index dd6ca930b1..0000000000 --- a/opendbc_repo/opendbc/car/nissan/carcontroller.py +++ /dev/null @@ -1,75 +0,0 @@ -from opendbc.can import CANPacker -from opendbc.car import Bus, apply_std_steer_angle_limits, structs -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.nissan import nissancan -from opendbc.car.nissan.values import CAR, CarControllerParams - -VisualAlert = structs.CarControl.HUDControl.VisualAlert - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.car_fingerprint = CP.carFingerprint - - self.apply_angle_last = 0 - - self.packer = CANPacker(dbc_names[Bus.pt]) - - def update(self, CC, CS, now_nanos): - actuators = CC.actuators - hud_control = CC.hudControl - pcm_cancel_cmd = CC.cruiseControl.cancel - - can_sends = [] - - ### STEER ### - steer_hud_alert = 1 if hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw) else 0 - - # windup slower - self.apply_angle_last = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgoRaw, - CS.out.steeringAngleDeg, CC.latActive, CarControllerParams.ANGLE_LIMITS) - - lkas_max_torque = 0 - if CC.latActive: - # Max torque from driver before EPS will give up and not apply torque - if not bool(CS.out.steeringPressed): - lkas_max_torque = CarControllerParams.LKAS_MAX_TORQUE - else: - # Scale max torque based on how much torque the driver is applying to the wheel - lkas_max_torque = max( - # Scale max torque down to half LKAX_MAX_TORQUE as a minimum - CarControllerParams.LKAS_MAX_TORQUE * 0.5, - # Start scaling torque at STEER_THRESHOLD - CarControllerParams.LKAS_MAX_TORQUE - 0.6 * max(0, abs(CS.out.steeringTorque) - CarControllerParams.STEER_THRESHOLD) - ) - - if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL, CAR.NISSAN_ALTIMA) and pcm_cancel_cmd: - can_sends.append(nissancan.create_acc_cancel_cmd(self.packer, self.car_fingerprint, CS.cruise_throttle_msg)) - - # TODO: Find better way to cancel! - # For some reason spamming the cancel button is unreliable on the Leaf - # We now cancel by making propilot think the seatbelt is unlatched, - # this generates a beep and a warning message every time you disengage - if self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC) and self.frame % 2 == 0: - can_sends.append(nissancan.create_cancel_msg(self.packer, CS.cancel_msg, pcm_cancel_cmd)) - - can_sends.append(nissancan.create_steering_control( - self.packer, self.apply_angle_last, self.frame, CC.latActive, lkas_max_torque)) - - # Below are the HUD messages. We copy the stock message and modify - if self.CP.carFingerprint != CAR.NISSAN_ALTIMA: - if self.frame % 2 == 0: - can_sends.append(nissancan.create_lkas_hud_msg(self.packer, CS.lkas_hud_msg, CC.enabled, hud_control.leftLaneVisible, hud_control.rightLaneVisible, - hud_control.leftLaneDepart, hud_control.rightLaneDepart)) - - if self.frame % 50 == 0: - can_sends.append(nissancan.create_lkas_hud_info_msg( - self.packer, CS.lkas_hud_info_msg, steer_hud_alert - )) - - new_actuators = actuators.as_builder() - new_actuators.steeringAngleDeg = self.apply_angle_last - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/nissan/carstate.py b/opendbc_repo/opendbc/car/nissan/carstate.py deleted file mode 100644 index 70bb8a59b2..0000000000 --- a/opendbc_repo/opendbc/car/nissan/carstate.py +++ /dev/null @@ -1,143 +0,0 @@ -import copy -from collections import deque -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, create_button_events, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarStateBase -from opendbc.car.nissan.values import CAR, DBC, CarControllerParams - -ButtonType = structs.CarState.ButtonEvent.Type - -TORQUE_SAMPLES = 12 - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - - self.lkas_hud_msg = {} - self.lkas_hud_info_msg = {} - - self.steeringTorqueSamples = deque(TORQUE_SAMPLES*[0], TORQUE_SAMPLES) - self.shifter_values = can_define.dv["GEARBOX"]["GEAR_SHIFTER"] - - self.distance_button = 0 - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - cp_adas = can_parsers[Bus.adas] - - ret = structs.CarState() - - prev_distance_button = self.distance_button - self.distance_button = cp.vl["CRUISE_THROTTLE"]["FOLLOW_DISTANCE_BUTTON"] - - if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL, CAR.NISSAN_ALTIMA): - ret.gas = cp.vl["GAS_PEDAL"]["GAS_PEDAL"] - elif self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): - ret.gas = cp.vl["CRUISE_THROTTLE"]["GAS_PEDAL"] - - ret.gasPressed = bool(ret.gas > 3) - - if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL, CAR.NISSAN_ALTIMA): - ret.brakePressed = bool(cp.vl["DOORS_LIGHTS"]["USER_BRAKE_PRESSED"]) - elif self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): - ret.brakePressed = bool(cp.vl["CRUISE_THROTTLE"]["USER_BRAKE_PRESSED"]) - - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["WHEEL_SPEEDS_FRONT"]["WHEEL_SPEED_FL"], - cp.vl["WHEEL_SPEEDS_FRONT"]["WHEEL_SPEED_FR"], - cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RL"], - cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RR"], - ) - # safety uses the rear wheel speeds for the speed measurement and angle limiting - ret.vEgoRaw = (ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 2.0 - - v_ego_raw_full = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4.0 - ret.vEgo, ret.aEgo = self.update_speed_kf(v_ego_raw_full) - ret.standstill = cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RL"] == 0.0 and cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RR"] == 0.0 - - if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: - ret.cruiseState.enabled = bool(cp.vl["CRUISE_STATE"]["CRUISE_ENABLED"]) - else: - ret.cruiseState.enabled = bool(cp_adas.vl["CRUISE_STATE"]["CRUISE_ENABLED"]) - - if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL): - ret.seatbeltUnlatched = cp.vl["HUD"]["SEATBELT_DRIVER_LATCHED"] == 0 - ret.cruiseState.available = bool(cp_cam.vl["PRO_PILOT"]["CRUISE_ON"]) - elif self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): - if self.CP.carFingerprint == CAR.NISSAN_LEAF: - ret.seatbeltUnlatched = cp.vl["SEATBELT"]["SEATBELT_DRIVER_LATCHED"] == 0 - elif self.CP.carFingerprint == CAR.NISSAN_LEAF_IC: - ret.seatbeltUnlatched = cp.vl["CANCEL_MSG"]["CANCEL_SEATBELT"] == 1 - ret.cruiseState.available = bool(cp.vl["CRUISE_THROTTLE"]["CRUISE_AVAILABLE"]) - elif self.CP.carFingerprint == CAR.NISSAN_ALTIMA: - ret.seatbeltUnlatched = cp.vl["HUD"]["SEATBELT_DRIVER_LATCHED"] == 0 - ret.cruiseState.available = bool(cp_adas.vl["PRO_PILOT"]["CRUISE_ON"]) - - if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: - speed = cp.vl["PROPILOT_HUD"]["SET_SPEED"] - else: - speed = cp_adas.vl["PROPILOT_HUD"]["SET_SPEED"] - - if speed != 255: - if self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): - conversion = CV.MPH_TO_MS if cp.vl["HUD_SETTINGS"]["SPEED_MPH"] else CV.KPH_TO_MS - else: - conversion = CV.MPH_TO_MS if cp.vl["HUD"]["SPEED_MPH"] else CV.KPH_TO_MS - ret.cruiseState.speed = speed * conversion - ret.cruiseState.speedCluster = (speed - 1) * conversion # Speed on HUD is always 1 lower than actually sent on can bus - - if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: - ret.steeringTorque = cp_cam.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_DRIVER"] - else: - ret.steeringTorque = cp.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_DRIVER"] - - self.steeringTorqueSamples.append(ret.steeringTorque) - # Filtering driver torque to prevent steeringPressed false positives - ret.steeringPressed = bool(abs(sum(self.steeringTorqueSamples) / TORQUE_SAMPLES) > CarControllerParams.STEER_THRESHOLD) - - ret.steeringAngleDeg = cp.vl["STEER_ANGLE_SENSOR"]["STEER_ANGLE"] - - ret.leftBlinker = bool(cp.vl["LIGHTS"]["LEFT_BLINKER"]) - ret.rightBlinker = bool(cp.vl["LIGHTS"]["RIGHT_BLINKER"]) - - ret.doorOpen = any([cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_RR"], - cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_RL"], - cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_FR"], - cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_FL"]]) - - ret.espDisabled = bool(cp.vl["ESP"]["ESP_DISABLED"]) - - can_gear = int(cp.vl["GEARBOX"]["GEAR_SHIFTER"]) - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - - # stock lkas should be off - # TODO: is this needed? - if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: - ret.invalidLkasSetting = bool(cp.vl["LKAS_SETTINGS"]["LKAS_ENABLED"]) - else: - ret.invalidLkasSetting = bool(cp_adas.vl["LKAS_SETTINGS"]["LKAS_ENABLED"]) - - self.cruise_throttle_msg = copy.copy(cp.vl["CRUISE_THROTTLE"]) - - if self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): - self.cancel_msg = copy.copy(cp.vl["CANCEL_MSG"]) - - if self.CP.carFingerprint != CAR.NISSAN_ALTIMA: - self.lkas_hud_msg = copy.copy(cp_adas.vl["PROPILOT_HUD"]) - self.lkas_hud_info_msg = copy.copy(cp_adas.vl["PROPILOT_HUD_INFO_MSG"]) - - ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) - - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 1 if CP.carFingerprint == CAR.NISSAN_ALTIMA else 0), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0 if CP.carFingerprint == CAR.NISSAN_ALTIMA else 1), - Bus.adas: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - } diff --git a/opendbc_repo/opendbc/car/nissan/fingerprints.py b/opendbc_repo/opendbc/car/nissan/fingerprints.py deleted file mode 100644 index ab1ae08abe..0000000000 --- a/opendbc_repo/opendbc/car/nissan/fingerprints.py +++ /dev/null @@ -1,123 +0,0 @@ -# ruff: noqa: E501 -from opendbc.car.structs import CarParams -from opendbc.car.nissan.values import CAR - -Ecu = CarParams.Ecu - -FINGERPRINTS = { - CAR.NISSAN_XTRAIL: [{ - 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 520: 2, 523: 6, 548: 8, 645: 8, 658: 8, 665: 8, 666: 8, 674: 2, 682: 8, 683: 8, 689: 8, 723: 8, 758: 3, 768: 2, 783: 3, 851: 8, 855: 8, 1041: 8, 1055: 2, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1111: 4, 1227: 8, 1228: 8, 1247: 4, 1266: 8, 1273: 7, 1342: 1, 1376: 6, 1401: 8, 1474: 2, 1497: 3, 1821: 8, 1823: 8, 1837: 8, 2015: 8, 2016: 8, 2024: 8 - }, - { - 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 520: 2, 523: 6, 527: 1, 548: 8, 637: 4, 645: 8, 658: 8, 665: 8, 666: 8, 674: 2, 682: 8, 683: 8, 689: 8, 723: 8, 758: 3, 768: 6, 783: 3, 851: 8, 855: 8, 1041: 8, 1055: 2, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1111: 4, 1227: 8, 1228: 8, 1247: 4, 1266: 8, 1273: 7, 1342: 1, 1376: 6, 1401: 8, 1474: 8, 1497: 3, 1534: 6, 1792: 8, 1821: 8, 1823: 8, 1837: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 2015: 8, 2016: 8, 2024: 8 - }], - CAR.NISSAN_LEAF: [{ - 2: 5, 42: 6, 264: 3, 361: 8, 372: 8, 384: 8, 389: 8, 403: 8, 459: 7, 460: 4, 470: 8, 520: 1, 569: 8, 581: 8, 634: 7, 640: 8, 644: 8, 645: 8, 646: 5, 658: 8, 682: 8, 683: 8, 689: 8, 724: 6, 758: 3, 761: 2, 783: 3, 852: 8, 853: 8, 856: 8, 861: 8, 944: 1, 976: 6, 1008: 7, 1011: 7, 1057: 3, 1227: 8, 1228: 8, 1261: 5, 1342: 1, 1354: 8, 1361: 8, 1459: 8, 1477: 8, 1497: 3, 1549: 8, 1573: 6, 1821: 8, 1837: 8, 1856: 8, 1859: 8, 1861: 8, 1864: 8, 1874: 8, 1888: 8, 1891: 8, 1893: 8, 1906: 8, 1947: 8, 1949: 8, 1979: 8, 1981: 8, 2016: 8, 2017: 8, 2021: 8, 643: 5, 1792: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8 - }, - { - 2: 5, 42: 8, 264: 3, 361: 8, 372: 8, 384: 8, 389: 8, 403: 8, 459: 7, 460: 4, 470: 8, 520: 1, 569: 8, 581: 8, 634: 7, 640: 8, 643: 5, 644: 8, 645: 8, 646: 5, 658: 8, 682: 8, 683: 8, 689: 8, 724: 6, 758: 3, 761: 2, 772: 8, 773: 6, 774: 7, 775: 8, 776: 6, 777: 7, 778: 6, 783: 3, 852: 8, 853: 8, 856: 8, 861: 8, 943: 8, 944: 1, 976: 6, 1008: 7, 1009: 8, 1010: 8, 1011: 7, 1012: 8, 1013: 8, 1019: 8, 1020: 8, 1021: 8, 1022: 8, 1057: 3, 1227: 8, 1228: 8, 1261: 5, 1342: 1, 1354: 8, 1361: 8, 1402: 8, 1459: 8, 1477: 8, 1497: 3, 1549: 8, 1573: 6, 1821: 8, 1837: 8 - }], - CAR.NISSAN_LEAF_IC: [{ - 2: 5, 42: 6, 264: 3, 282: 8, 361: 8, 372: 8, 384: 8, 389: 8, 403: 8, 459: 7, 460: 4, 470: 8, 520: 1, 569: 8, 581: 8, 634: 7, 640: 8, 643: 5, 644: 8, 645: 8, 646: 5, 658: 8, 682: 8, 683: 8, 689: 8, 756: 5, 758: 3, 761: 2, 783: 3, 830: 2, 852: 8, 853: 8, 856: 8, 861: 8, 943: 8, 944: 1, 1001: 6, 1057: 3, 1227: 8, 1228: 8, 1229: 8, 1342: 1, 1354: 8, 1361: 8, 1459: 8, 1477: 8, 1497: 3, 1514: 6, 1549: 8, 1573: 6, 1792: 8, 1821: 8, 1822: 8, 1837: 8, 1838: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8, 2016: 8, 2017: 8 - }], - CAR.NISSAN_ROGUE: [{ - 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 520: 2, 523: 6, 548: 8, 634: 7, 643: 5, 645: 8, 658: 8, 665: 8, 666: 8, 674: 2, 682: 8, 683: 8, 689: 8, 723: 8, 758: 3, 772: 8, 773: 6, 774: 7, 775: 8, 776: 6, 777: 7, 778: 6, 783: 3, 851: 8, 855: 8, 1041: 8, 1042: 8, 1055: 2, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1110: 7, 1111: 7, 1227: 8, 1228: 8, 1247: 4, 1266: 8, 1273: 7, 1342: 1, 1376: 6, 1401: 8, 1474: 2, 1497: 3, 1534: 7, 1792: 8, 1821: 8, 1823: 8, 1837: 8, 1839: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8, 2016: 8, 2017: 8, 2024: 8, 2025: 8 - }], - CAR.NISSAN_ALTIMA: [{ - 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 438: 8, 451: 8, 517: 8, 520: 2, 522: 8, 523: 6, 539: 8, 541: 7, 542: 8, 543: 8, 544: 8, 545: 8, 546: 8, 547: 8, 548: 8, 570: 8, 576: 8, 577: 8, 582: 8, 583: 8, 584: 8, 586: 8, 587: 8, 588: 8, 589: 8, 590: 8, 591: 8, 592: 8, 600: 8, 601: 8, 610: 8, 611: 8, 612: 8, 614: 8, 615: 8, 616: 8, 617: 8, 622: 8, 623: 8, 634: 7, 638: 8, 645: 8, 648: 5, 654: 6, 658: 8, 659: 8, 660: 8, 661: 8, 665: 8, 666: 8, 674: 2, 675: 8, 676: 8, 682: 8, 683: 8, 684: 8, 685: 8, 686: 8, 687: 8, 689: 8, 690: 8, 703: 8, 708: 7, 709: 7, 711: 7, 712: 7, 713: 7, 714: 8, 715: 8, 716: 8, 717: 7, 718: 7, 719: 7, 720: 7, 723: 8, 726: 7, 727: 7, 728: 7, 735: 8, 746: 8, 748: 6, 749: 6, 750: 8, 758: 3, 772: 8, 773: 6, 774: 7, 775: 8, 776: 6, 777: 7, 778: 6, 779: 7, 781: 7, 782: 7, 783: 3, 851: 8, 855: 5, 1001: 6, 1041: 8, 1042: 8, 1055: 3, 1100: 7, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1110: 7, 1111: 7, 1144: 7, 1145: 7, 1227: 8, 1228: 8, 1229: 8, 1232: 8, 1247: 4, 1258: 8, 1259: 8, 1266: 8, 1273: 7, 1306: 1, 1314: 8, 1323: 8, 1324: 8, 1342: 1, 1376: 8, 1401: 8, 1454: 8, 1497: 3, 1514: 6, 1526: 8, 1527: 5, 1792: 8, 1821: 8, 1823: 8, 1837: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8, 2016: 8, 2017: 8, 2024: 8, 2025: 8 - }], -} - -FW_VERSIONS = { - CAR.NISSAN_ALTIMA: { - (Ecu.fwdCamera, 0x707, None): [ - b'284N86CA1D', - ], - (Ecu.eps, 0x742, None): [ - b'6CA2B\xa9A\x02\x02G8A89P90D6A\x00\x00\x01\x80', - ], - (Ecu.engine, 0x7e0, None): [ - b'237109HE2B', - ], - (Ecu.gateway, 0x18dad0f1, None): [ - b'284U29HE0A', - ], - }, - CAR.NISSAN_LEAF: { - (Ecu.abs, 0x740, None): [ - b'476605SA1C', - b'476605SA7D', - b'476605SC2D', - b'476606WK7B', - b'476606WK9B', - ], - (Ecu.eps, 0x742, None): [ - b'5SA2A\x99A\x05\x02N123F\x15b\x00\x00\x00\x00\x00\x00\x00\x80', - b'5SA2A\xb7A\x05\x02N123F\x15\xa2\x00\x00\x00\x00\x00\x00\x00\x80', - b'5SN2A\xb7A\x05\x02N123F\x15\xa2\x00\x00\x00\x00\x00\x00\x00\x80', - b'5SN2A\xb7A\x05\x02N126F\x15\xb2\x00\x00\x00\x00\x00\x00\x00\x80', - ], - (Ecu.fwdCamera, 0x707, None): [ - b'5SA0ADB\x04\x18\x00\x00\x00\x00\x00_*6\x04\x94a\x00\x00\x00\x80', - b'5SA2ADB\x04\x18\x00\x00\x00\x00\x00_*6\x04\x94a\x00\x00\x00\x80', - b'6WK2ADB\x04\x18\x00\x00\x00\x00\x00R;1\x18\x99\x10\x00\x00\x00\x80', - b'6WK2BDB\x04\x18\x00\x00\x00\x00\x00R;1\x18\x99\x10\x00\x00\x00\x80', - b'6WK2CDB\x04\x18\x00\x00\x00\x00\x00R=1\x18\x99\x10\x00\x00\x00\x80', - ], - (Ecu.gateway, 0x18dad0f1, None): [ - b'284U25SA3C', - b'284U25SP0C', - b'284U25SP1C', - b'284U26WK0A', - b'284U26WK0C', - ], - }, - CAR.NISSAN_LEAF_IC: { - (Ecu.fwdCamera, 0x707, None): [ - b'5SH1BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', - b'5SH3BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', - b'5SH4BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', - b'5SK0ADB\x04\x18\x00\x00\x00\x00\x00_(5\x07\x9aQ\x00\x00\x00\x80', - ], - (Ecu.abs, 0x740, None): [ - b'476605SD2E', - b'476605SH1D', - b'476605SH7D', - b'476605SK2A', - ], - (Ecu.eps, 0x742, None): [ - b'5SH2A\x99A\x05\x02N123F\x15\x81\x00\x00\x00\x00\x00\x00\x00\x80', - b'5SH2A\xb7A\x05\x02N123F\x15\xa3\x00\x00\x00\x00\x00\x00\x00\x80', - b'5SH2C\xb7A\x05\x02N123F\x15\xa3\x00\x00\x00\x00\x00\x00\x00\x80', - b'5SK3A\x99A\x05\x02N123F\x15u\x00\x00\x00\x00\x00\x00\x00\x80', - ], - (Ecu.gateway, 0x18dad0f1, None): [ - b'284U25SF0C', - b'284U25SH3A', - b'284U25SK2D', - b'284U25SR0B', - ], - }, - CAR.NISSAN_XTRAIL: { - (Ecu.fwdCamera, 0x707, None): [ - b'284N86FR2A', - ], - (Ecu.abs, 0x740, None): [ - b'6FU0AD\x11\x02\x00\x02e\x95e\x80iQ#\x01\x00\x00\x00\x00\x00\x80', - b'6FU1BD\x11\x02\x00\x02e\x95e\x80iX#\x01\x00\x00\x00\x00\x00\x80', - ], - (Ecu.eps, 0x742, None): [ - b'6FP2A\x99A\x05\x02N123F\x18\x02\x00\x00\x00\x00\x00\x00\x00\x80', - ], - (Ecu.combinationMeter, 0x743, None): [ - b'6FR2A\x18B\x05\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', - ], - (Ecu.engine, 0x7e0, None): [ - b'6FR9A\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', - b'6FU9B\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', - ], - (Ecu.gateway, 0x18dad0f1, None): [ - b'284U26FR0E', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/nissan/interface.py b/opendbc_repo/opendbc/car/nissan/interface.py deleted file mode 100644 index bac7b3f1af..0000000000 --- a/opendbc_repo/opendbc/car/nissan/interface.py +++ /dev/null @@ -1,29 +0,0 @@ -from opendbc.car import get_safety_config, structs -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.nissan.carcontroller import CarController -from opendbc.car.nissan.carstate import CarState -from opendbc.car.nissan.values import CAR, NissanSafetyFlags - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "nissan" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.nissan)] - ret.autoResumeSng = False - - ret.steerLimitTimer = 1.0 - - ret.steerActuatorDelay = 0.1 - - ret.steerControlType = structs.CarParams.SteerControlType.angle - ret.radarUnavailable = True - - if candidate == CAR.NISSAN_ALTIMA: - # Altima has EPS on C-CAN unlike the others that have it on V-CAN - ret.safetyConfigs[0].safetyParam |= NissanSafetyFlags.ALT_EPS_BUS.value - - return ret diff --git a/opendbc_repo/opendbc/car/nissan/nissancan.py b/opendbc_repo/opendbc/car/nissan/nissancan.py deleted file mode 100644 index 0c95ad1854..0000000000 --- a/opendbc_repo/opendbc/car/nissan/nissancan.py +++ /dev/null @@ -1,154 +0,0 @@ -import crcmod -from opendbc.car.nissan.values import CAR - -# TODO: add this checksum to the CANPacker -nissan_checksum = crcmod.mkCrcFun(0x11d, initCrc=0x00, rev=False, xorOut=0xff) - - -def create_steering_control(packer, apply_torque, frame, steer_on, lkas_max_torque): - values = { - "COUNTER": frame % 0x10, - "DESIRED_ANGLE": apply_torque, - "SET_0x80_2": 0x80, - "SET_0x80": 0x80, - "MAX_TORQUE": lkas_max_torque if steer_on else 0, - "LKA_ACTIVE": steer_on, - } - - dat = packer.make_can_msg("LKAS", 0, values)[1] - - values["CHECKSUM"] = nissan_checksum(dat[:7]) - return packer.make_can_msg("LKAS", 0, values) - - -def create_acc_cancel_cmd(packer, car_fingerprint, cruise_throttle_msg): - values = {s: cruise_throttle_msg[s] for s in [ - "COUNTER", - "PROPILOT_BUTTON", - "CANCEL_BUTTON", - "GAS_PEDAL_INVERTED", - "SET_BUTTON", - "RES_BUTTON", - "FOLLOW_DISTANCE_BUTTON", - "NO_BUTTON_PRESSED", - "GAS_PEDAL", - "USER_BRAKE_PRESSED", - "NEW_SIGNAL_2", - "GAS_PRESSED_INVERTED", - "unsure1", - "unsure2", - "unsure3", - ]} - can_bus = 1 if car_fingerprint == CAR.NISSAN_ALTIMA else 2 - - values["CANCEL_BUTTON"] = 1 - values["NO_BUTTON_PRESSED"] = 0 - values["PROPILOT_BUTTON"] = 0 - values["SET_BUTTON"] = 0 - values["RES_BUTTON"] = 0 - values["FOLLOW_DISTANCE_BUTTON"] = 0 - - return packer.make_can_msg("CRUISE_THROTTLE", can_bus, values) - - -def create_cancel_msg(packer, cancel_msg, cruise_cancel): - values = {s: cancel_msg[s] for s in [ - "CANCEL_SEATBELT", - "NEW_SIGNAL_1", - "NEW_SIGNAL_2", - "NEW_SIGNAL_3", - ]} - - if cruise_cancel: - values["CANCEL_SEATBELT"] = 1 - - return packer.make_can_msg("CANCEL_MSG", 2, values) - - -def create_lkas_hud_msg(packer, lkas_hud_msg, enabled, left_line, right_line, left_lane_depart, right_lane_depart): - values = {s: lkas_hud_msg[s] for s in [ - "LARGE_WARNING_FLASHING", - "SIDE_RADAR_ERROR_FLASHING1", - "SIDE_RADAR_ERROR_FLASHING2", - "LEAD_CAR", - "LEAD_CAR_ERROR", - "FRONT_RADAR_ERROR", - "FRONT_RADAR_ERROR_FLASHING", - "SIDE_RADAR_ERROR_FLASHING3", - "LKAS_ERROR_FLASHING", - "SAFETY_SHIELD_ACTIVE", - "RIGHT_LANE_GREEN_FLASH", - "LEFT_LANE_GREEN_FLASH", - "FOLLOW_DISTANCE", - "AUDIBLE_TONE", - "SPEED_SET_ICON", - "SMALL_STEERING_WHEEL_ICON", - "unknown59", - "unknown55", - "unknown26", - "unknown28", - "unknown31", - "SET_SPEED", - "unknown43", - "unknown08", - "unknown05", - "unknown02", - ]} - - values["RIGHT_LANE_YELLOW_FLASH"] = 1 if right_lane_depart else 0 - values["LEFT_LANE_YELLOW_FLASH"] = 1 if left_lane_depart else 0 - - values["LARGE_STEERING_WHEEL_ICON"] = 2 if enabled else 0 - values["RIGHT_LANE_GREEN"] = 1 if right_line and enabled else 0 - values["LEFT_LANE_GREEN"] = 1 if left_line and enabled else 0 - - return packer.make_can_msg("PROPILOT_HUD", 0, values) - - -def create_lkas_hud_info_msg(packer, lkas_hud_info_msg, steer_hud_alert): - values = {s: lkas_hud_info_msg[s] for s in [ - "NA_HIGH_ACCEL_TEMP", - "SIDE_RADAR_NA_HIGH_CABIN_TEMP", - "SIDE_RADAR_MALFUNCTION", - "LKAS_MALFUNCTION", - "FRONT_RADAR_MALFUNCTION", - "SIDE_RADAR_NA_CLEAN_REAR_CAMERA", - "NA_POOR_ROAD_CONDITIONS", - "CURRENTLY_UNAVAILABLE", - "SAFETY_SHIELD_OFF", - "FRONT_COLLISION_NA_FRONT_RADAR_OBSTRUCTION", - "PEDAL_MISSAPPLICATION_SYSTEM_ACTIVATED", - "SIDE_IMPACT_NA_RADAR_OBSTRUCTION", - "WARNING_DO_NOT_ENTER", - "SIDE_IMPACT_SYSTEM_OFF", - "SIDE_IMPACT_MALFUNCTION", - "FRONT_COLLISION_MALFUNCTION", - "SIDE_RADAR_MALFUNCTION2", - "LKAS_MALFUNCTION2", - "FRONT_RADAR_MALFUNCTION2", - "PROPILOT_NA_MSGS", - "BOTTOM_MSG", - "HANDS_ON_WHEEL_WARNING", - "WARNING_STEP_ON_BRAKE_NOW", - "PROPILOT_NA_FRONT_CAMERA_OBSTRUCTED", - "PROPILOT_NA_HIGH_CABIN_TEMP", - "WARNING_PROPILOT_MALFUNCTION", - "ACC_UNAVAILABLE_HIGH_CABIN_TEMP", - "ACC_NA_FRONT_CAMERA_IMPARED", - "unknown07", - "unknown10", - "unknown15", - "unknown23", - "unknown19", - "unknown31", - "unknown32", - "unknown46", - "unknown61", - "unknown55", - "unknown50", - ]} - - if steer_hud_alert: - values["HANDS_ON_WHEEL_WARNING"] = 1 - - return packer.make_can_msg("PROPILOT_HUD_INFO_MSG", 0, values) diff --git a/opendbc_repo/opendbc/car/nissan/values.py b/opendbc_repo/opendbc/car/nissan/values.py deleted file mode 100644 index a2c93f8fe3..0000000000 --- a/opendbc_repo/opendbc/car/nissan/values.py +++ /dev/null @@ -1,124 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag - -from opendbc.car import AngleSteeringLimits, Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries - -Ecu = CarParams.Ecu - - -class CarControllerParams: - ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( - # When output steering Angle not within range -1311 and 1310, - # CANPacker packs wrong angle output to be decoded by panda - 600, # deg, reasonable limit - ([0., 5., 15.], [5., .8, .15]), - ([0., 5., 15.], [5., 3.5, 0.4]), - ) - - LKAS_MAX_TORQUE = 1 # A value of 1 is easy to overpower - STEER_THRESHOLD = 1.0 - - def __init__(self, CP): - pass - - -class NissanSafetyFlags(IntFlag): - ALT_EPS_BUS = 1 - - -class Footnote(Enum): - SETUP = CarFootnote( - "See more setup details for Nissan.", - Column.MAKE, setup_note=True) - - -@dataclass -class NissanCarDocs(CarDocs): - package: str = "ProPILOT Assist" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.nissan_a])) - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.SETUP]) - - -@dataclass(frozen=True) -class NissanCarSpecs(CarSpecs): - centerToFrontRatio: float = 0.44 - steerRatio: float = 17. - - -@dataclass -class NissanPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'nissan_x_trail_2017_generated'}) - - -class CAR(Platforms): - NISSAN_XTRAIL = NissanPlatformConfig( - [NissanCarDocs("Nissan X-Trail 2017")], - NissanCarSpecs(mass=1610, wheelbase=2.705) - ) - NISSAN_LEAF = NissanPlatformConfig( - [NissanCarDocs("Nissan Leaf 2018-23", video="https://youtu.be/vaMbtAh_0cY")], - NissanCarSpecs(mass=1610, wheelbase=2.705), - {Bus.pt: 'nissan_leaf_2018_generated'}, - ) - # Leaf with ADAS ECU found behind instrument cluster instead of glovebox - # Currently the only known difference between them is the inverted seatbelt signal. - NISSAN_LEAF_IC = NISSAN_LEAF.override(car_docs=[]) - NISSAN_ROGUE = NissanPlatformConfig( - [NissanCarDocs("Nissan Rogue 2018-20")], - NissanCarSpecs(mass=1610, wheelbase=2.705) - ) - NISSAN_ALTIMA = NissanPlatformConfig( - [NissanCarDocs("Nissan Altima 2019-20", car_parts=CarParts.common([CarHarness.nissan_b]))], - NissanCarSpecs(mass=1492, wheelbase=2.824) - ) - - -DBC = CAR.create_dbc_map() - -# Default diagnostic session -NISSAN_DIAGNOSTIC_REQUEST_KWP = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, 0x81]) -NISSAN_DIAGNOSTIC_RESPONSE_KWP = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, 0x81]) - -# Manufacturer specific -NISSAN_DIAGNOSTIC_REQUEST_KWP_2 = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, 0xda]) -NISSAN_DIAGNOSTIC_RESPONSE_KWP_2 = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, 0xda]) - -NISSAN_VERSION_REQUEST_KWP = b'\x21\x83' -NISSAN_VERSION_RESPONSE_KWP = b'\x61\x83' - -NISSAN_RX_OFFSET = 0x20 - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[request for bus, logging in ((0, False), (1, True)) for request in [ - Request( - [NISSAN_DIAGNOSTIC_REQUEST_KWP, NISSAN_VERSION_REQUEST_KWP], - [NISSAN_DIAGNOSTIC_RESPONSE_KWP, NISSAN_VERSION_RESPONSE_KWP], - bus=bus, - logging=logging, - ), - Request( - [NISSAN_DIAGNOSTIC_REQUEST_KWP, NISSAN_VERSION_REQUEST_KWP], - [NISSAN_DIAGNOSTIC_RESPONSE_KWP, NISSAN_VERSION_RESPONSE_KWP], - rx_offset=NISSAN_RX_OFFSET, - bus=bus, - logging=logging, - ), - # Rogue's engine solely responds to this - Request( - [NISSAN_DIAGNOSTIC_REQUEST_KWP_2, NISSAN_VERSION_REQUEST_KWP], - [NISSAN_DIAGNOSTIC_RESPONSE_KWP_2, NISSAN_VERSION_RESPONSE_KWP], - bus=bus, - logging=logging, - ), - Request( - [StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], - [StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], - rx_offset=NISSAN_RX_OFFSET, - bus=bus, - logging=logging, - ), - ]], -) diff --git a/opendbc_repo/opendbc/car/panda_runner.py b/opendbc_repo/opendbc/car/panda_runner.py deleted file mode 100644 index c1d0dcd01c..0000000000 --- a/opendbc_repo/opendbc/car/panda_runner.py +++ /dev/null @@ -1,57 +0,0 @@ -import time -from contextlib import AbstractContextManager - -from panda import Panda -from opendbc.car.car_helpers import get_car -from opendbc.car.can_definitions import CanData -from opendbc.car.structs import CarParams, CarControl - -class PandaRunner(AbstractContextManager): - def __enter__(self): - self.p = Panda() - self.p.reset() - - # setup + fingerprinting - self.p.set_safety_mode(CarParams.SafetyModel.elm327, 1) - self.CI = get_car(self._can_recv, self.p.can_send_many, self.p.set_obd, True, False) - assert self.CI.CP.carFingerprint.lower() != "mock", "Unable to identify car. Check connections and ensure car is supported." - - safety_model = self.CI.CP.safetyConfigs[0].safetyModel - self.p.set_safety_mode(CarParams.SafetyModel.elm327, 1) - self.CI.init(self.CI.CP, self._can_recv, self.p.can_send_many) - self.p.set_safety_mode(safety_model, self.CI.CP.safetyConfigs[0].safetyParam) - - return self - - def __exit__(self, exc_type, exc_value, traceback): - self.p.set_safety_mode(CarParams.SafetyModel.noOutput) - self.p.reset() # avoid siren - return super().__exit__(exc_type, exc_value, traceback) - - @property - def panda(self) -> Panda: - return self.p - - def _can_recv(self, wait_for_one: bool = False) -> list[list[CanData]]: - recv = self.p.can_recv() - while len(recv) == 0 and wait_for_one: - recv = self.p.can_recv() - return [[CanData(addr, dat, bus) for addr, dat, bus in recv], ] - - def read(self, strict: bool = True): - cs = self.CI.update([int(time.monotonic()*1e9), self._can_recv()[0]]) - if strict: - assert cs.canValid, "CAN went invalid, check connections" - return cs - - def write(self, cc: CarControl) -> None: - if cc.enabled and not self.p.health()['controls_allowed']: - # prevent the car from faulting. print a warning? - cc = CarControl(enabled=False) - _, can_sends = self.CI.apply(cc) - self.p.can_send_many(can_sends, timeout=25) - self.p.send_heartbeat() - -if __name__ == "__main__": - with PandaRunner() as p: - print(p.read()) diff --git a/opendbc_repo/opendbc/car/rivian/__init__.py b/opendbc_repo/opendbc/car/rivian/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/rivian/carcontroller.py b/opendbc_repo/opendbc/car/rivian/carcontroller.py deleted file mode 100644 index fb5f1b80ca..0000000000 --- a/opendbc_repo/opendbc/car/rivian/carcontroller.py +++ /dev/null @@ -1,57 +0,0 @@ -import numpy as np -from opendbc.can import CANPacker -from opendbc.car import Bus, apply_driver_steer_torque_limits -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.rivian.riviancan import create_lka_steering, create_longitudinal, create_wheel_touch, create_adas_status -from opendbc.car.rivian.values import CarControllerParams - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.apply_torque_last = 0 - self.packer = CANPacker(dbc_names[Bus.pt]) - - self.cancel_frames = 0 - - def update(self, CC, CS, now_nanos): - actuators = CC.actuators - can_sends = [] - - apply_torque = 0 - steer_max = round(float(np.interp(CS.out.vEgoRaw, CarControllerParams.STEER_MAX_LOOKUP[0], - CarControllerParams.STEER_MAX_LOOKUP[1]))) - if CC.latActive: - new_torque = int(round(CC.actuators.torque * steer_max)) - apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, - CS.out.steeringTorque, CarControllerParams, steer_max) - - # send steering command - self.apply_torque_last = apply_torque - can_sends.append(create_lka_steering(self.packer, self.frame, CS.acm_lka_hba_cmd, apply_torque, CC.enabled, CC.latActive)) - - if self.frame % 5 == 0: - can_sends.append(create_wheel_touch(self.packer, CS.sccm_wheel_touch, CC.enabled)) - - # Longitudinal control - if self.CP.openpilotLongitudinalControl: - accel = float(np.clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) - can_sends.append(create_longitudinal(self.packer, self.frame, accel, CC.enabled)) - else: - interface_status = None - if CC.cruiseControl.cancel: - # if there is a noEntry, we need to send a status of "available" before the ACM will accept "unavailable" - # send "available" right away as the VDM itself takes a few frames to acknowledge - interface_status = 1 if self.cancel_frames < 5 else 0 - self.cancel_frames += 1 - else: - self.cancel_frames = 0 - - can_sends.append(create_adas_status(self.packer, CS.vdm_adas_status, interface_status)) - - new_actuators = actuators.as_builder() - new_actuators.torque = apply_torque / steer_max - new_actuators.torqueOutputCan = apply_torque - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/rivian/carstate.py b/opendbc_repo/opendbc/car/rivian/carstate.py deleted file mode 100644 index aa5de8ea32..0000000000 --- a/opendbc_repo/opendbc/car/rivian/carstate.py +++ /dev/null @@ -1,103 +0,0 @@ -import copy -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import CarStateBase -from opendbc.car.rivian.values import DBC, GEAR_MAP -from opendbc.car.common.conversions import Conversions as CV - -GearShifter = structs.CarState.GearShifter - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - self.last_speed = 30 - - self.acm_lka_hba_cmd = None - self.sccm_wheel_touch = None - self.vdm_adas_status = None - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - cp_adas = can_parsers[Bus.adas] - ret = structs.CarState() - - # Vehicle speed - ret.vEgoRaw = cp.vl["ESP_Status"]["ESP_Vehicle_Speed"] * CV.KPH_TO_MS - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = abs(ret.vEgoRaw) < 0.01 - - # Gas pedal - pedal_status = cp.vl["VDM_PropStatus"]["VDM_AcceleratorPedalPosition"] - ret.gas = pedal_status / 100.0 - ret.gasPressed = pedal_status > 0 - - # Brake pedal - ret.brake = cp.vl["ESPiB3"]["ESPiB3_pMC1"] / 250.0 # pressure in Bar - ret.brakePressed = cp.vl["iBESP2"]["iBESP2_BrakePedalApplied"] == 1 - - # Steering wheel - ret.steeringAngleDeg = cp.vl["EPAS_AdasStatus"]["EPAS_InternalSas"] - ret.steeringRateDeg = cp.vl["EPAS_AdasStatus"]["EPAS_SteeringAngleSpeed"] - ret.steeringTorque = cp.vl["EPAS_SystemStatus"]["EPAS_TorsionBarTorque"] - ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > 1.0, 5) - - ret.steerFaultTemporary = cp.vl["EPAS_AdasStatus"]["EPAS_EacErrorCode"] != 0 - - # Cruise state - speed = min(int(cp_adas.vl["ACM_tsrCmd"]["ACM_tsrSpdDisClsMain"]), 85) - self.last_speed = speed if speed != 0 else self.last_speed - ret.cruiseState.enabled = cp_cam.vl["ACM_Status"]["ACM_FeatureStatus"] == 1 - # TODO: find cruise set speed on CAN - ret.cruiseState.speed = self.last_speed * CV.MPH_TO_MS # detected speed limit - if not self.CP.openpilotLongitudinalControl: - ret.cruiseState.speed = -1 - ret.cruiseState.available = True # cp.vl["VDM_AdasSts"]["VDM_AdasInterfaceStatus"] == 1 - ret.cruiseState.standstill = cp.vl["VDM_AdasSts"]["VDM_AdasAccelRequestAcknowledged"] == 1 - - # TODO: log ACM_Unkown2=3 as a fault. need to filter it at the start and end of routes though - # ACM_FaultStatus hasn't been seen yet - ret.accFaulted = (cp_cam.vl["ACM_Status"]["ACM_FaultStatus"] == 1 or - # VDM_AdasFaultStatus=Brk_Intv is the default for some reason - # VDM_AdasFaultStatus=Imps_Cmd was seen when sending it rapidly changing ACC enable commands - # VDM_AdasFaultStatus=Cntr_Fault isn't fully understood, but we've seen it in the wild - cp.vl["VDM_AdasSts"]["VDM_AdasFaultStatus"] in (3,)) # 3=Imps_Cmd - - # Gear - ret.gearShifter = GEAR_MAP.get(int(cp.vl["VDM_PropStatus"]["VDM_Prndl_Status"]), GearShifter.unknown) - - # Doors - ret.doorOpen = (cp_adas.vl["IndicatorLights"]["RearDriverDoor"] != 2 or - cp_adas.vl["IndicatorLights"]["FrontPassengerDoor"] != 2 or - cp_adas.vl["IndicatorLights"]["DriverDoor"] != 2 or - cp_adas.vl["IndicatorLights"]["RearPassengerDoor"] != 2) - - # Blinkers - ret.leftBlinker = cp_adas.vl["IndicatorLights"]["TurnLightLeft"] in (1, 2) - ret.rightBlinker = cp_adas.vl["IndicatorLights"]["TurnLightRight"] in (1, 2) - - # Seatbelt - ret.seatbeltUnlatched = cp.vl["RCM_Status"]["RCM_Status_IND_WARN_BELT_DRIVER"] != 0 - - # Blindspot - # ret.leftBlindspot = False - # ret.rightBlindspot = False - - # AEB - ret.stockAeb = cp_cam.vl["ACM_AebRequest"]["ACM_EnableRequest"] != 0 - - # Messages needed by carcontroller - self.acm_lka_hba_cmd = copy.copy(cp_cam.vl["ACM_lkaHbaCmd"]) - self.sccm_wheel_touch = copy.copy(cp.vl["SCCM_WheelTouch"]) - self.vdm_adas_status = copy.copy(cp.vl["VDM_AdasSts"]) - - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), - Bus.adas: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 1), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - } diff --git a/opendbc_repo/opendbc/car/rivian/fingerprints.py b/opendbc_repo/opendbc/car/rivian/fingerprints.py deleted file mode 100644 index c695eaa920..0000000000 --- a/opendbc_repo/opendbc/car/rivian/fingerprints.py +++ /dev/null @@ -1,12 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.rivian.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.RIVIAN_R1_GEN1: { - (Ecu.eps, 0x733, None): [ - b'R1TS_v3.4.1(51),3.4.1\x00', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/rivian/interface.py b/opendbc_repo/opendbc/car/rivian/interface.py deleted file mode 100644 index f1108e0811..0000000000 --- a/opendbc_repo/opendbc/car/rivian/interface.py +++ /dev/null @@ -1,37 +0,0 @@ -from opendbc.car import get_safety_config, structs -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.rivian.carcontroller import CarController -from opendbc.car.rivian.carstate import CarState -from opendbc.car.rivian.radar_interface import RadarInterface -from opendbc.car.rivian.values import RivianSafetyFlags - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "rivian" - - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.rivian)] - - ret.steerActuatorDelay = 0.15 - ret.steerLimitTimer = 0.4 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.radarUnavailable = True - - # TODO: pending finding/handling missing set speed and fixing up radar parser - ret.alphaLongitudinalAvailable = False - if alpha_long: - ret.openpilotLongitudinalControl = True - ret.safetyConfigs[0].safetyParam |= RivianSafetyFlags.LONG_CONTROL.value - - ret.longitudinalActuatorDelay = 0.35 - ret.vEgoStopping = 0.25 - ret.stopAccel = 0 - - return ret diff --git a/opendbc_repo/opendbc/car/rivian/radar_interface.py b/opendbc_repo/opendbc/car/rivian/radar_interface.py deleted file mode 100644 index 323faea625..0000000000 --- a/opendbc_repo/opendbc/car/rivian/radar_interface.py +++ /dev/null @@ -1,71 +0,0 @@ -import math - -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import RadarInterfaceBase -from opendbc.car.rivian.values import DBC - -RADAR_START_ADDR = 0x500 -RADAR_MSG_COUNT = 32 - -def get_radar_can_parser(CP): - messages = [(f"RADAR_TRACK_{addr:x}", 20) for addr in range(RADAR_START_ADDR, RADAR_START_ADDR + RADAR_MSG_COUNT)] - return CANParser(DBC[CP.carFingerprint][Bus.radar], messages, 1) - - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - self.updated_messages = set() - self.trigger_msg = RADAR_START_ADDR + RADAR_MSG_COUNT - 1 - self.track_id = 0 - - self.radar_off_can = CP.radarUnavailable - self.rcp = get_radar_can_parser(CP) - - def update(self, can_strings): - if self.radar_off_can or (self.rcp is None): - return super().update(None) - - vls = self.rcp.update(can_strings) - self.updated_messages.update(vls) - - if self.trigger_msg not in self.updated_messages: - return None - - rr = self._update(self.updated_messages) - self.updated_messages.clear() - - return rr - - def _update(self, updated_messages): - ret = structs.RadarData() - if self.rcp is None: - return ret - - if not self.rcp.can_valid: - ret.errors.canError = True - - for addr in range(RADAR_START_ADDR, RADAR_START_ADDR + RADAR_MSG_COUNT): - msg = self.rcp.vl[f"RADAR_TRACK_{addr:x}"] - - if addr not in self.pts: - self.pts[addr] = structs.RadarData.RadarPoint() - self.pts[addr].trackId = self.track_id - self.track_id += 1 - - valid = msg['STATE'] in (3, 4) and msg['STATE_2'] == 1 - if valid: - azimuth = math.radians(msg['AZIMUTH']) - self.pts[addr].measured = True - self.pts[addr].dRel = math.cos(azimuth) * msg['LONG_DIST'] - self.pts[addr].yRel = 0.5 * -math.sin(azimuth) * msg['LONG_DIST'] - self.pts[addr].vRel = msg['REL_SPEED'] - self.pts[addr].aRel = float('nan') - self.pts[addr].yvRel = 0 #float('nan') - - else: - del self.pts[addr] - - ret.points = list(self.pts.values()) - return ret diff --git a/opendbc_repo/opendbc/car/rivian/riviancan.py b/opendbc_repo/opendbc/car/rivian/riviancan.py deleted file mode 100644 index f22b5917a8..0000000000 --- a/opendbc_repo/opendbc/car/rivian/riviancan.py +++ /dev/null @@ -1,100 +0,0 @@ -def checksum(data, poly, xor_output): - crc = 0 - for byte in data: - crc ^= byte - for _ in range(8): - if crc & 0x80: - crc = (crc << 1) ^ poly - else: - crc <<= 1 - crc &= 0xFF - return crc ^ xor_output - - -def create_lka_steering(packer, frame, acm_lka_hba_cmd, apply_torque, enabled, active): - # forward auto high beam and speed limit status and nothing else - values = {s: acm_lka_hba_cmd[s] for s in ( - "ACM_hbaSysState", - "ACM_hbaLamp", - "ACM_hbaOnOffState", - "ACM_slifOnOffState", - )} - - values |= { - "ACM_lkaHbaCmd_Counter": frame % 15, - "ACM_lkaStrToqReq": apply_torque, - "ACM_lkaActToi": active, - - "ACM_lkaLaneRecogState": 3 if enabled else 0, - "ACM_lkaSymbolState": 3 if enabled else 0, - - # static values - "ACM_lkaElkRequest": 0, - "ACM_ldwlkaOnOffState": 2, # 2=LKAS+LDW on - "ACM_elkOnOffState": 1, # 1=LKAS on - # TODO: what are these used for? - "ACM_ldwWarnTypeState": 2, # always 2 - "ACM_ldwWarnTimingState": 1, # always 1 - #"ACM_lkaHandsoffDisplayWarning": 1, # TODO: we can send this when openpilot wants you to pay attention - } - - data = packer.make_can_msg("ACM_lkaHbaCmd", 0, values)[1] - values["ACM_lkaHbaCmd_Checksum"] = checksum(data[1:], 0x1D, 0x63) - return packer.make_can_msg("ACM_lkaHbaCmd", 0, values) - - -def create_wheel_touch(packer, sccm_wheel_touch, enabled): - values = {s: sccm_wheel_touch[s] for s in ( - "SCCM_WheelTouch_Counter", - "SCCM_WheelTouch_HandsOn", - "SCCM_WheelTouch_CapacitiveValue", - "SETME_X52", - )} - - # When only using ACC without lateral, the ACM warns the driver to hold the steering wheel on engagement - # Tell the ACM that the user is holding the wheel to avoid this warning - if enabled: - values["SCCM_WheelTouch_HandsOn"] = 1 - values["SCCM_WheelTouch_CapacitiveValue"] = 100 # only need to send this value, but both are set for consistency - - data = packer.make_can_msg("SCCM_WheelTouch", 2, values)[1] - values["SCCM_WheelTouch_Checksum"] = checksum(data[1:], 0x1D, 0x97) - return packer.make_can_msg("SCCM_WheelTouch", 2, values) - - -def create_longitudinal(packer, frame, accel, enabled): - values = { - "ACM_longitudinalRequest_Counter": frame % 15, - "ACM_AccelerationRequest": accel if enabled else 0, - "ACM_VehicleHoldRequired": 0, - "ACM_PrndRequired": 0, - "ACM_longInterfaceEnable": 1 if enabled else 0, - "ACM_AccelerationRequestType": 0, - } - - data = packer.make_can_msg("ACM_longitudinalRequest", 0, values)[1] - values["ACM_longitudinalRequest_Checksum"] = checksum(data[1:], 0x1D, 0x12) - return packer.make_can_msg("ACM_longitudinalRequest", 0, values) - - -def create_adas_status(packer, vdm_adas_status, interface_status): - values = {s: vdm_adas_status[s] for s in ( - "VDM_AdasStatus_Checksum", - "VDM_AdasStatus_Counter", - "VDM_AdasDecelLimit", - "VDM_AdasDriverAccelPriorityStatus", - "VDM_AdasFaultStatus", - "VDM_AdasAccelLimit", - "VDM_AdasDriverModeStatus", - "VDM_AdasAccelRequest", - "VDM_AdasInterfaceStatus", - "VDM_AdasAccelRequestAcknowledged", - "VDM_AdasVehicleHoldStatus", - )} - - if interface_status is not None: - values["VDM_AdasInterfaceStatus"] = interface_status - - data = packer.make_can_msg("VDM_AdasSts", 2, values)[1] - values["VDM_AdasStatus_Checksum"] = checksum(data[1:], 0x1D, 0xD1) - return packer.make_can_msg("VDM_AdasSts", 2, values) diff --git a/opendbc_repo/opendbc/car/rivian/tests/__init__.py b/opendbc_repo/opendbc/car/rivian/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/rivian/tests/test_rivian.py b/opendbc_repo/opendbc/car/rivian/tests/test_rivian.py deleted file mode 100644 index 90dcfcd5dd..0000000000 --- a/opendbc_repo/opendbc/car/rivian/tests/test_rivian.py +++ /dev/null @@ -1,23 +0,0 @@ -from opendbc.car.rivian.fingerprints import FW_VERSIONS -from opendbc.car.rivian.values import CAR, FW_QUERY_CONFIG, WMI, ModelLine, ModelYear - - -class TestRivian: - def test_custom_fuzzy_fingerprinting(self, subtests): - for platform in CAR: - with subtests.test(platform=platform.name): - for wmi in WMI: - for line in ModelLine: - for year in ModelYear: - for bad in (True, False): - vin = ["0"] * 17 - vin[:3] = wmi - vin[3] = line.value - vin[9] = year.value - if bad: - vin[3] = "Z" - vin = "".join(vin) - - matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy({}, vin, FW_VERSIONS) - should_match = year != ModelYear.S_2025 and not bad - assert (matches == {platform}) == should_match, "Bad match" diff --git a/opendbc_repo/opendbc/car/rivian/values.py b/opendbc_repo/opendbc/car/rivian/values.py deleted file mode 100644 index 579e812410..0000000000 --- a/opendbc_repo/opendbc/car/rivian/values.py +++ /dev/null @@ -1,138 +0,0 @@ -from dataclasses import dataclass, field -from enum import StrEnum, IntFlag - -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, structs, uds -from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts, Device -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries, p16 -from opendbc.car.vin import Vin - - -class WMI(StrEnum): - RIVIAN_TRUCK = "7FC" - RIVIAN_MPV = "7PD" - - -class ModelLine(StrEnum): - R1T = "T" # R1T 4-door Pickup Truck - R1S = "S" # R1S 4-door MPV - - -class ModelYear(StrEnum): - N_2022 = "N" - P_2023 = "P" - R_2024 = "R" - S_2025 = "S" - - -@dataclass -class RivianCarDocs(CarDocs): - package: str = "All" - car_parts: CarParts = field(default_factory=CarParts([Device.threex_angled_mount, CarHarness.rivian])) - setup_video_link: str = "https://youtu.be/uaISd1j7Z4U" - - -@dataclass -class RivianPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'rivian_primary_actuator', Bus.radar: 'rivian_mando_front_radar_generated'}) - wmis: set[WMI] = field(default_factory=set) - lines: set[ModelLine] = field(default_factory=set) - years: set[ModelYear] = field(default_factory=set) - - -class CAR(Platforms): - RIVIAN_R1_GEN1 = RivianPlatformConfig( - # TODO: verify this - [ - RivianCarDocs("Rivian R1S 2022-24"), - RivianCarDocs("Rivian R1T 2022-24"), - ], - CarSpecs(mass=3206., wheelbase=3.08, steerRatio=15.2), - wmis={WMI.RIVIAN_TRUCK, WMI.RIVIAN_MPV}, - lines={ModelLine.R1T, ModelLine.R1S}, - years={ModelYear.N_2022, ModelYear.P_2023, ModelYear.R_2024}, - ) - - -def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: - # Rivian VIN reference: https://www.rivianforums.com/forum/threads/rivian-vin-decoder.1546 - vin_obj = Vin(vin) - line = vin_obj.vds[:1] - year = vin_obj.vis[:1] - - candidates = set() - for platform in CAR: - if vin_obj.wmi in platform.config.wmis and line in platform.config.lines and year in platform.config.years: - candidates.add(platform) - - return {str(c) for c in candidates} - - -RIVIAN_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(0xf1a0) -RIVIAN_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.SUPPLIER_SOFTWARE_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.SUPPLIER_SOFTWARE_VERSION_RESPONSE], - rx_offset=0x40, - bus=0, - ), - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.MANUFACTURER_ECU_HARDWARE_NUMBER_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.MANUFACTURER_ECU_HARDWARE_NUMBER_RESPONSE], - rx_offset=0x40, - bus=0, - logging=True, - ), - Request( - [StdQueries.TESTER_PRESENT_REQUEST, RIVIAN_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, RIVIAN_VERSION_RESPONSE], - rx_offset=0x40, - bus=0, - logging=True, - ), - ], - match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, -) - -GEAR_MAP = { - 0: structs.CarState.GearShifter.unknown, - 1: structs.CarState.GearShifter.park, - 2: structs.CarState.GearShifter.reverse, - 3: structs.CarState.GearShifter.neutral, - 4: structs.CarState.GearShifter.drive, -} - - -class CarControllerParams: - # The R1T 2023 and R1S 2023 we tested on achieves slightly more lateral acceleration going left vs. right - # and lateral acceleration falls linearly as speed decreases from 38 mph to 20 mph. These values are set - # conservatively to reach a maximum of 3.0 m/s^2 turning left at 80 mph - - # These refer to turning left: - # 250 is ~2.8 m/s^2 above 17 m/s, then linearly ramps to ~1.6 m/s^2 from 17 m/s to 9 m/s - # TODO: it is theorized older models have different steering racks and achieve down to half the - # lateral acceleration referenced here at all speeds. detect this and ship a torque increase for those models - STEER_MAX = 250 # 350 is intended to maintain lateral accel, not increase it - STEER_MAX_LOOKUP = [9, 17], [350, 250] - STEER_STEP = 1 - STEER_DELTA_UP = 3 # torque increase per refresh - STEER_DELTA_DOWN = 5 # torque decrease per refresh - STEER_DRIVER_ALLOWANCE = 100 # allowed driver torque before start limiting - STEER_DRIVER_MULTIPLIER = 2 # weight driver torque - STEER_DRIVER_FACTOR = 100 - - ACCEL_MIN = -3.5 # m/s^2 - ACCEL_MAX = 2.0 # m/s^2 - - def __init__(self, CP): - pass - - -class RivianSafetyFlags(IntFlag): - LONG_CONTROL = 1 - - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/secoc.py b/opendbc_repo/opendbc/car/secoc.py deleted file mode 100644 index 971ea36a19..0000000000 --- a/opendbc_repo/opendbc/car/secoc.py +++ /dev/null @@ -1,47 +0,0 @@ -import struct - -from Crypto.Hash import CMAC -from Crypto.Cipher import AES - -def add_mac(key, trip_cnt, reset_cnt, msg_cnt, msg): - # TODO: clean up conversion to and from hex - - addr, payload, bus = msg - reset_flag = reset_cnt & 0b11 - msg_cnt_flag = msg_cnt & 0b11 - payload = payload[:4] - - # Step 1: Build Freshness Value (48 bits) - # [Trip Counter (16 bit)][[Reset Counter (20 bit)][Message Counter (8 bit)][Reset Flag (2 bit)][Padding (2 bit)] - freshness_value = struct.pack('>HI', trip_cnt, (reset_cnt << 12) | ((msg_cnt & 0xff) << 4) | (reset_flag << 2)) - - # Step 2: Build data to authenticate (96 bits) - # [Message ID (16 bits)][Payload (32 bits)][Freshness Value (48 bits)] - to_auth = struct.pack('>H', addr) + payload + freshness_value - - # Step 3: Calculate CMAC (28 bit) - cmac = CMAC.new(key, ciphermod=AES) - cmac.update(to_auth) - mac = cmac.digest().hex()[:7] # truncated MAC - - # Step 4: Build message - # [Payload (32 bit)][Message Counter Flag (2 bit)][Reset Flag (2 bit)][Authenticator (28 bit)] - msg_cnt_rst_flag = struct.pack('>B', (msg_cnt_flag << 2) | reset_flag).hex()[1] - msg = payload.hex() + msg_cnt_rst_flag + mac - payload = bytes.fromhex(msg) - - return (addr, payload, bus) - -def build_sync_mac(key, trip_cnt, reset_cnt, id_=0xf): - id_ = struct.pack('>H', id_) # 16 - trip_cnt = struct.pack('>H', trip_cnt) # 16 - reset_cnt = struct.pack('>I', reset_cnt << 12)[:-1] # 20 + 4 padding - - to_auth = id_ + trip_cnt + reset_cnt # SecOC 11.4.1.1 page 138 - - cmac = CMAC.new(key, ciphermod=AES) - cmac.update(to_auth) - - msg = "0" + cmac.digest().hex()[:7] - msg = bytes.fromhex(msg) - return struct.unpack('>I', msg)[0] diff --git a/opendbc_repo/opendbc/car/structs.py b/opendbc_repo/opendbc/car/structs.py deleted file mode 100644 index a5628c7e00..0000000000 --- a/opendbc_repo/opendbc/car/structs.py +++ /dev/null @@ -1,20 +0,0 @@ -import os -import capnp -from opendbc.car.common.basedir import BASEDIR - -# TODO: remove car from cereal/__init__.py and always import from opendbc -try: - from cereal import car -except ImportError: - capnp.remove_import_hook() - car = capnp.load(os.path.join(BASEDIR, "car.capnp")) - -CarState = car.CarState -RadarData = car.RadarData -CarControl = car.CarControl -CarParams = car.CarParams - -CarStateT = capnp.lib.capnp._StructModule -RadarDataT = capnp.lib.capnp._StructModule -CarControlT = capnp.lib.capnp._StructModule -CarParamsT = capnp.lib.capnp._StructModule diff --git a/opendbc_repo/opendbc/car/subaru/__init__.py b/opendbc_repo/opendbc/car/subaru/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/subaru/carcontroller.py b/opendbc_repo/opendbc/car/subaru/carcontroller.py deleted file mode 100644 index 861d8489f7..0000000000 --- a/opendbc_repo/opendbc/car/subaru/carcontroller.py +++ /dev/null @@ -1,143 +0,0 @@ -import numpy as np -from opendbc.can import CANPacker -from opendbc.car import Bus, apply_driver_steer_torque_limits, common_fault_avoidance, make_tester_present_msg -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.subaru import subarucan -from opendbc.car.subaru.values import DBC, GLOBAL_ES_ADDR, CanBus, CarControllerParams, SubaruFlags - -# FIXME: These limits aren't exact. The real limit is more than likely over a larger time period and -# involves the total steering angle change rather than rate, but these limits work well for now -MAX_STEER_RATE = 25 # deg/s -MAX_STEER_RATE_FRAMES = 7 # tx control frames needed before torque can be cut - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.apply_torque_last = 0 - - self.cruise_button_prev = 0 - self.steer_rate_counter = 0 - - self.p = CarControllerParams(CP) - self.packer = CANPacker(DBC[CP.carFingerprint][Bus.pt]) - - def update(self, CC, CS, now_nanos): - actuators = CC.actuators - hud_control = CC.hudControl - pcm_cancel_cmd = CC.cruiseControl.cancel - - can_sends = [] - - # *** steering *** - if (self.frame % self.p.STEER_STEP) == 0: - apply_torque = int(round(actuators.torque * self.p.STEER_MAX)) - - # limits due to driver torque - - new_torque = int(round(apply_torque)) - apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.p) - - if not CC.latActive: - apply_torque = 0 - - if self.CP.flags & SubaruFlags.PREGLOBAL: - can_sends.append(subarucan.create_preglobal_steering_control(self.packer, self.frame // self.p.STEER_STEP, apply_torque, CC.latActive)) - else: - apply_steer_req = CC.latActive - - if self.CP.flags & SubaruFlags.STEER_RATE_LIMITED: - # Steering rate fault prevention - self.steer_rate_counter, apply_steer_req = \ - common_fault_avoidance(abs(CS.out.steeringRateDeg) > MAX_STEER_RATE, apply_steer_req, - self.steer_rate_counter, MAX_STEER_RATE_FRAMES) - - can_sends.append(subarucan.create_steering_control(self.packer, apply_torque, apply_steer_req)) - - self.apply_torque_last = apply_torque - - # *** longitudinal *** - - if CC.longActive: - apply_throttle = int(round(np.interp(actuators.accel, CarControllerParams.THROTTLE_LOOKUP_BP, CarControllerParams.THROTTLE_LOOKUP_V))) - apply_rpm = int(round(np.interp(actuators.accel, CarControllerParams.RPM_LOOKUP_BP, CarControllerParams.RPM_LOOKUP_V))) - apply_brake = int(round(np.interp(actuators.accel, CarControllerParams.BRAKE_LOOKUP_BP, CarControllerParams.BRAKE_LOOKUP_V))) - - # limit min and max values - cruise_throttle = np.clip(apply_throttle, CarControllerParams.THROTTLE_MIN, CarControllerParams.THROTTLE_MAX) - cruise_rpm = np.clip(apply_rpm, CarControllerParams.RPM_MIN, CarControllerParams.RPM_MAX) - cruise_brake = np.clip(apply_brake, CarControllerParams.BRAKE_MIN, CarControllerParams.BRAKE_MAX) - else: - cruise_throttle = CarControllerParams.THROTTLE_INACTIVE - cruise_rpm = CarControllerParams.RPM_MIN - cruise_brake = CarControllerParams.BRAKE_MIN - - # *** alerts and pcm cancel *** - if self.CP.flags & SubaruFlags.PREGLOBAL: - if self.frame % 5 == 0: - # 1 = main, 2 = set shallow, 3 = set deep, 4 = resume shallow, 5 = resume deep - # disengage ACC when OP is disengaged - if pcm_cancel_cmd: - cruise_button = 1 - # turn main on if off and past start-up state - elif not CS.out.cruiseState.available and CS.ready: - cruise_button = 1 - else: - cruise_button = CS.cruise_button - - # unstick previous mocked button press - if cruise_button == 1 and self.cruise_button_prev == 1: - cruise_button = 0 - self.cruise_button_prev = cruise_button - - can_sends.append(subarucan.create_preglobal_es_distance(self.packer, cruise_button, CS.es_distance_msg)) - - else: - if self.frame % 10 == 0: - can_sends.append(subarucan.create_es_dashstatus(self.packer, self.frame // 10, CS.es_dashstatus_msg, CC.enabled, - self.CP.openpilotLongitudinalControl, CC.longActive, hud_control.leadVisible)) - - can_sends.append(subarucan.create_es_lkas_state(self.packer, self.frame // 10, CS.es_lkas_state_msg, CC.enabled, hud_control.visualAlert, - hud_control.leftLaneVisible, hud_control.rightLaneVisible, - hud_control.leftLaneDepart, hud_control.rightLaneDepart)) - - if self.CP.flags & SubaruFlags.SEND_INFOTAINMENT: - can_sends.append(subarucan.create_es_infotainment(self.packer, self.frame // 10, CS.es_infotainment_msg, hud_control.visualAlert)) - - if self.CP.openpilotLongitudinalControl: - if self.frame % 5 == 0: - can_sends.append(subarucan.create_es_status(self.packer, self.frame // 5, CS.es_status_msg, - self.CP.openpilotLongitudinalControl, CC.longActive, cruise_rpm)) - - can_sends.append(subarucan.create_es_brake(self.packer, self.frame // 5, CS.es_brake_msg, - self.CP.openpilotLongitudinalControl, CC.longActive, cruise_brake)) - - can_sends.append(subarucan.create_es_distance(self.packer, self.frame // 5, CS.es_distance_msg, 0, pcm_cancel_cmd, - self.CP.openpilotLongitudinalControl, cruise_brake > 0, cruise_throttle)) - else: - if pcm_cancel_cmd: - if not (self.CP.flags & SubaruFlags.HYBRID): - bus = CanBus.alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else CanBus.main - can_sends.append(subarucan.create_es_distance(self.packer, CS.es_distance_msg["COUNTER"] + 1, CS.es_distance_msg, bus, pcm_cancel_cmd)) - - if self.CP.flags & SubaruFlags.DISABLE_EYESIGHT: - # Tester present (keeps eyesight disabled) - if self.frame % 100 == 0: - can_sends.append(make_tester_present_msg(GLOBAL_ES_ADDR, CanBus.camera, suppress_response=True)) - - # Create all of the other eyesight messages to keep the rest of the car happy when eyesight is disabled - if self.frame % 5 == 0: - can_sends.append(subarucan.create_es_highbeamassist(self.packer)) - - if self.frame % 10 == 0: - can_sends.append(subarucan.create_es_static_1(self.packer)) - - if self.frame % 2 == 0: - can_sends.append(subarucan.create_es_static_2(self.packer)) - - new_actuators = actuators.as_builder() - new_actuators.torque = self.apply_torque_last / self.p.STEER_MAX - new_actuators.torqueOutputCan = self.apply_torque_last - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/subaru/carstate.py b/opendbc_repo/opendbc/car/subaru/carstate.py deleted file mode 100644 index 999cdf4690..0000000000 --- a/opendbc_repo/opendbc/car/subaru/carstate.py +++ /dev/null @@ -1,138 +0,0 @@ -import copy -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarStateBase -from opendbc.car.subaru.values import DBC, CanBus, SubaruFlags -from opendbc.car import CanSignalRateCalculator - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - self.shifter_values = can_define.dv["Transmission"]["Gear"] - - self.angle_rate_calulator = CanSignalRateCalculator(50) - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - cp_alt = can_parsers[Bus.alt] - ret = structs.CarState() - - throttle_msg = cp.vl["Throttle"] if not (self.CP.flags & SubaruFlags.HYBRID) else cp_alt.vl["Throttle_Hybrid"] - ret.gas = throttle_msg["Throttle_Pedal"] / 255. - - ret.gasPressed = ret.gas > 1e-5 - if self.CP.flags & SubaruFlags.PREGLOBAL: - ret.brakePressed = cp.vl["Brake_Pedal"]["Brake_Pedal"] > 0 - else: - cp_brakes = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp - ret.brakePressed = cp_brakes.vl["Brake_Status"]["Brake"] == 1 - - cp_es_distance = cp_alt if self.CP.flags & (SubaruFlags.GLOBAL_GEN2 | SubaruFlags.HYBRID) else cp_cam - if not (self.CP.flags & SubaruFlags.HYBRID): - eyesight_fault = bool(cp_es_distance.vl["ES_Distance"]["Cruise_Fault"]) - - # if openpilot is controlling long, an eyesight fault is a non-critical fault. otherwise it's an ACC fault - if self.CP.openpilotLongitudinalControl: - ret.carFaultedNonCritical = eyesight_fault - else: - ret.accFaulted = eyesight_fault - - cp_wheels = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp - ret.wheelSpeeds = self.get_wheel_speeds( - cp_wheels.vl["Wheel_Speeds"]["FL"], - cp_wheels.vl["Wheel_Speeds"]["FR"], - cp_wheels.vl["Wheel_Speeds"]["RL"], - cp_wheels.vl["Wheel_Speeds"]["RR"], - ) - ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = ret.vEgoRaw == 0 - - # continuous blinker signals for assisted lane change - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, cp.vl["Dashlights"]["LEFT_BLINKER"], - cp.vl["Dashlights"]["RIGHT_BLINKER"]) - - if self.CP.enableBsm: - ret.leftBlindspot = (cp.vl["BSD_RCTA"]["L_ADJACENT"] == 1) or (cp.vl["BSD_RCTA"]["L_APPROACHING"] == 1) - ret.rightBlindspot = (cp.vl["BSD_RCTA"]["R_ADJACENT"] == 1) or (cp.vl["BSD_RCTA"]["R_APPROACHING"] == 1) - - cp_transmission = cp_alt if self.CP.flags & SubaruFlags.HYBRID else cp - can_gear = int(cp_transmission.vl["Transmission"]["Gear"]) - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - - ret.steeringAngleDeg = cp.vl["Steering_Torque"]["Steering_Angle"] - - if not (self.CP.flags & SubaruFlags.PREGLOBAL): - # ideally we get this from the car, but unclear if it exists. diagnostic software doesn't even have it - ret.steeringRateDeg = self.angle_rate_calulator.update(ret.steeringAngleDeg, cp.vl["Steering_Torque"]["COUNTER"]) - - ret.steeringTorque = cp.vl["Steering_Torque"]["Steer_Torque_Sensor"] - ret.steeringTorqueEps = cp.vl["Steering_Torque"]["Steer_Torque_Output"] - - steer_threshold = 75 if self.CP.flags & SubaruFlags.PREGLOBAL else 80 - ret.steeringPressed = abs(ret.steeringTorque) > steer_threshold - - cp_cruise = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp - if self.CP.flags & SubaruFlags.HYBRID: - ret.cruiseState.enabled = cp_cam.vl["ES_DashStatus"]['Cruise_Activated'] != 0 - ret.cruiseState.available = cp_cam.vl["ES_DashStatus"]['Cruise_On'] != 0 - else: - ret.cruiseState.enabled = cp_cruise.vl["CruiseControl"]["Cruise_Activated"] != 0 - ret.cruiseState.available = cp_cruise.vl["CruiseControl"]["Cruise_On"] != 0 - ret.cruiseState.speed = cp_cam.vl["ES_DashStatus"]["Cruise_Set_Speed"] * CV.KPH_TO_MS - - if (self.CP.flags & SubaruFlags.PREGLOBAL and cp.vl["Dash_State2"]["UNITS"] == 1) or \ - (not (self.CP.flags & SubaruFlags.PREGLOBAL) and cp.vl["Dashlights"]["UNITS"] == 1): - ret.cruiseState.speed *= CV.MPH_TO_KPH - - ret.seatbeltUnlatched = cp.vl["Dashlights"]["SEATBELT_FL"] == 1 - ret.doorOpen = any([cp.vl["BodyInfo"]["DOOR_OPEN_RR"], - cp.vl["BodyInfo"]["DOOR_OPEN_RL"], - cp.vl["BodyInfo"]["DOOR_OPEN_FR"], - cp.vl["BodyInfo"]["DOOR_OPEN_FL"]]) - ret.steerFaultPermanent = cp.vl["Steering_Torque"]["Steer_Error_1"] == 1 - - if self.CP.flags & SubaruFlags.PREGLOBAL: - self.cruise_button = cp_cam.vl["ES_Distance"]["Cruise_Button"] - self.ready = not cp_cam.vl["ES_DashStatus"]["Not_Ready_Startup"] - else: - ret.steerFaultTemporary = cp.vl["Steering_Torque"]["Steer_Warning"] == 1 - ret.cruiseState.nonAdaptive = cp_cam.vl["ES_DashStatus"]["Conventional_Cruise"] == 1 - ret.cruiseState.standstill = cp_cam.vl["ES_DashStatus"]["Cruise_State"] == 3 - ret.stockFcw = (cp_cam.vl["ES_LKAS_State"]["LKAS_Alert"] == 1) or \ - (cp_cam.vl["ES_LKAS_State"]["LKAS_Alert"] == 2) - - self.es_lkas_state_msg = copy.copy(cp_cam.vl["ES_LKAS_State"]) - cp_es_brake = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp_cam - self.es_brake_msg = copy.copy(cp_es_brake.vl["ES_Brake"]) - cp_es_status = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp_cam - - # TODO: Hybrid cars don't have ES_Distance, need a replacement - if not (self.CP.flags & SubaruFlags.HYBRID): - # 8 is known AEB, there are a few other values related to AEB we ignore - ret.stockAeb = (cp_es_distance.vl["ES_Brake"]["AEB_Status"] == 8) and \ - (cp_es_distance.vl["ES_Brake"]["Brake_Pressure"] != 0) - - self.es_status_msg = copy.copy(cp_es_status.vl["ES_Status"]) - self.cruise_control_msg = copy.copy(cp_cruise.vl["CruiseControl"]) - - if not (self.CP.flags & SubaruFlags.HYBRID): - self.es_distance_msg = copy.copy(cp_es_distance.vl["ES_Distance"]) - - self.es_dashstatus_msg = copy.copy(cp_cam.vl["ES_DashStatus"]) - if self.CP.flags & SubaruFlags.SEND_INFOTAINMENT: - self.es_infotainment_msg = copy.copy(cp_cam.vl["ES_Infotainment"]) - - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus.main), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus.camera), - Bus.alt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus.alt) - } diff --git a/opendbc_repo/opendbc/car/subaru/fingerprints.py b/opendbc_repo/opendbc/car/subaru/fingerprints.py deleted file mode 100644 index 51c01e1030..0000000000 --- a/opendbc_repo/opendbc/car/subaru/fingerprints.py +++ /dev/null @@ -1,572 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.subaru.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.SUBARU_ASCENT: { - (Ecu.abs, 0x7b0, None): [ - b'\xa5 \x19\x02\x00', - b'\xa5 !\x02\x00', - ], - (Ecu.eps, 0x746, None): [ - b'\x05\xc0\xd0\x00', - b'\x85\xc0\xd0\x00', - b'\x95\xc0\xd0\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00d\xb9\x00\x00\x00\x00', - b'\x00\x00d\xb9\x1f@ \x10', - b'\x00\x00e@\x00\x00\x00\x00', - b'\x00\x00e@\x1f@ $', - b"\x00\x00e~\x1f@ '", - ], - (Ecu.engine, 0x7e0, None): [ - b'\xbb,\xa0t\x07', - b'\xd1,\xa0q\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\x00>\xf0\x00\x00', - b'\x00\xfe\xf7\x00\x00', - b'\x01\xfe\xf7\x00\x00', - b'\x01\xfe\xf9\x00\x00', - b'\x01\xfe\xfa\x00\x00', - ], - }, - CAR.SUBARU_ASCENT_2023: { - (Ecu.abs, 0x7b0, None): [ - b'\xa5 #\x03\x00', - ], - (Ecu.eps, 0x746, None): [ - b'%\xc0\xd0\x11', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x05!\x08\x1dK\x05!\x08\x01/', - ], - (Ecu.engine, 0x7a2, None): [ - b'\xe5,\xa0P\x07', - ], - (Ecu.transmission, 0x7a3, None): [ - b'\x04\xfe\xf3\x00\x00', - ], - }, - CAR.SUBARU_LEGACY: { - (Ecu.abs, 0x7b0, None): [ - b'\xa1 \x02\x01', - b'\xa1 \x02\x02', - b'\xa1 \x03\x02', - b'\xa1 \x03\x03', - b'\xa1 \x04\x01', - ], - (Ecu.eps, 0x746, None): [ - b'\x9b\xc0\x11\x00', - b'\x9b\xc0\x11\x02', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00e\x80\x00\x1f@ \x19\x00', - b'\x00\x00e\x9a\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xde"a0\x07', - b'\xe2"a0\x07', - b'\xde,\xa0@\x07', - b'\xe2"aq\x07', - b'\xe2,\xa0@\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xa5\xf6\x05@\x00', - b'\xa5\xfe\xc7@\x00', - b'\xa7\xf6\x04@\x00', - b'\xa7\xfe\xc4@\x00', - ], - }, - CAR.SUBARU_IMPREZA: { - (Ecu.abs, 0x7b0, None): [ - b'z\x84\x19\x90\x00', - b'z\x94\x08\x90\x00', - b'z\x94\x08\x90\x01', - b'z\x94\x0c\x90\x00', - b'z\x94\x0c\x90\x01', - b'z\x94.\x90\x00', - b'z\x94?\x90\x00', - b'z\x9c\x19\x80\x01', - b'\xa2 \x185\x00', - b'\xa2 \x193\x00', - b'\xa2 \x194\x00', - b'\xa2 \x19`\x00', - ], - (Ecu.eps, 0x746, None): [ - b'z\xc0\x00\x00', - b'z\xc0\x04\x00', - b'z\xc0\x08\x00', - b'z\xc0\n\x00', - b'z\xc0\x0c\x00', - b'\x8a\xc0\x00\x00', - b'\x8a\xc0\x10\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00c\xf4\x00\x00\x00\x00', - b'\x00\x00c\xf4\x1f@ \x07', - b'\x00\x00d)\x00\x00\x00\x00', - b'\x00\x00d)\x1f@ \x07', - b'\x00\x00dd\x00\x00\x00\x00', - b'\x00\x00dd\x1f@ \x0e', - b'\x00\x00d\xb5\x1f@ \x0e', - b'\x00\x00d\xdc\x00\x00\x00\x00', - b'\x00\x00d\xdc\x1f@ \x0e', - b'\x00\x00e\x02\x1f@ \x14', - b'\x00\x00e\x1c\x00\x00\x00\x00', - b'\x00\x00e\x1c\x1f@ \x14', - b'\x00\x00e+\x00\x00\x00\x00', - b'\x00\x00e+\x1f@ \x14', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xaa\x00Bu\x07', - b'\xaa\x01bt\x07', - b'\xaa!`u\x07', - b'\xaa!au\x07', - b'\xaa!av\x07', - b'\xaa!aw\x07', - b'\xaa!dq\x07', - b'\xaa!ds\x07', - b'\xaa!dt\x07', - b'\xaaafs\x07', - b'\xbe!as\x07', - b'\xbe!at\x07', - b'\xbeacr\x07', - b'\xc5!`r\x07', - b'\xc5!`s\x07', - b'\xc5!ap\x07', - b'\xc5!ar\x07', - b'\xc5!as\x07', - b'\xc5!dr\x07', - b'\xc5!ds\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xe3\xd0\x081\x00', - b'\xe3\xd5\x161\x00', - b'\xe3\xe5F1\x00', - b'\xe3\xf5\x06\x00\x00', - b'\xe3\xf5\x07\x00\x00', - b'\xe3\xf5C\x00\x00', - b'\xe3\xf5F\x00\x00', - b'\xe3\xf5G\x00\x00', - b'\xe4\xe5\x021\x00', - b'\xe4\xe5\x061\x00', - b'\xe4\xf5\x02\x00\x00', - b'\xe4\xf5\x07\x00\x00', - b'\xe5\xf5\x04\x00\x00', - b'\xe5\xf5$\x00\x00', - b'\xe5\xf5B\x00\x00', - ], - }, - CAR.SUBARU_IMPREZA_2020: { - (Ecu.abs, 0x7b0, None): [ - b'\xa2 \x193\x00', - b'\xa2 \x194\x00', - b'\xa2 `\x00', - b'\xa2 !3\x00', - b'\xa2 !6\x00', - b'\xa2 !`\x00', - b'\xa2 !i\x00', - ], - (Ecu.eps, 0x746, None): [ - b'\n\xc0\x04\x00', - b'\n\xc0\x04\x01', - b'\x9a\xc0\x00\x00', - b'\x9a\xc0\x04\x00', - b'\x9a\xc0\n\x01', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00eb\x1f@ "', - b'\x00\x00eq\x00\x00\x00\x00', - b'\x00\x00eq\x1f@ "', - b'\x00\x00e\x8f\x00\x00\x00\x00', - b'\x00\x00e\x8f\x1f@ )', - b'\x00\x00e\x92\x00\x00\x00\x00', - b'\x00\x00e\xa4\x00\x00\x00\x00', - b'\x00\x00e\xa4\x1f@ (', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xca!`0\x07', - b'\xca!`p\x07', - b'\xca!`t\x07', - b'\xca!ap\x07', - b'\xca!f@\x07', - b'\xca!fp\x07', - b'\xcaacp\x07', - b'\xcc!`p\x07', - b'\xcc!fp\x07', - b'\xcc"f0\x07', - b'\xe6!`@\x07', - b'\xe6!fp\x07', - b'\xe6"f0\x07', - b'\xe6"fp\x07', - b'\xf3"f@\x07', - b'\xf3"fp\x07', - b'\xf3"fr\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xe6\x15\x042\x00', - b'\xe6\xf5\x04\x00\x00', - b'\xe6\xf5$\x00\x00', - b'\xe6\xf5D0\x00', - b'\xe7\xf5\x04\x00\x00', - b'\xe7\xf5D0\x00', - b'\xe7\xf6B0\x00', - b'\xe9\xf5"\x00\x00', - b'\xe9\xf5B0\x00', - b'\xe9\xf6B0\x00', - b'\xe9\xf6F0\x00', - ], - }, - CAR.SUBARU_CROSSTREK_HYBRID: { - (Ecu.abs, 0x7b0, None): [ - b'\xa2 \x19e\x01', - b'\xa2 !e\x01', - ], - (Ecu.eps, 0x746, None): [ - b'\n\xc2\x01\x00', - b'\x9a\xc2\x01\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00el\x1f@ #', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xd7!`@\x07', - b'\xd7!`p\x07', - b'\xf4!`0\x07', - ], - }, - CAR.SUBARU_FORESTER: { - (Ecu.abs, 0x7b0, None): [ - b'\xa3 \x18\x14\x00', - b'\xa3 \x18&\x00', - b'\xa3 \x19\x14\x00', - b'\xa3 \x19&\x00', - b'\xa3 \x19h\x00', - b'\xa3 \x14\x00', - b'\xa3 \x14\x01', - ], - (Ecu.eps, 0x746, None): [ - b'\x8d\xc0\x00\x00', - b'\x8d\xc0\x04\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00e!\x00\x00\x00\x00', - b'\x00\x00e!\x1f@ \x11', - b'\x00\x00e^\x00\x00\x00\x00', - b'\x00\x00e^\x1f@ !', - b'\x00\x00e`\x00\x00\x00\x00', - b'\x00\x00e`\x1f@ ', - b'\x00\x00e\x97\x00\x00\x00\x00', - b'\x00\x00e\x97\x1f@ 0', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xb6"`A\x07', - b'\xb6\xa2`A\x07', - b'\xcb"`@\x07', - b'\xcb"`p\x07', - b'\xcf"`0\x07', - b'\xcf"`p\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\x1a\xe6B1\x00', - b'\x1a\xe6F1\x00', - b'\x1a\xf6B0\x00', - b'\x1a\xf6B`\x00', - b'\x1a\xf6F`\x00', - b'\x1a\xf6b0\x00', - b'\x1a\xf6b`\x00', - b'\x1a\xf6f`\x00', - ], - }, - CAR.SUBARU_FORESTER_HYBRID: { - (Ecu.abs, 0x7b0, None): [ - b'\xa3 \x19T\x00', - ], - (Ecu.eps, 0x746, None): [ - b'\x8d\xc2\x00\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00eY\x1f@ !', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xd2\xa1`r\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\x1b\xa7@a\x00', - ], - }, - CAR.SUBARU_FORESTER_PREGLOBAL: { - (Ecu.abs, 0x7b0, None): [ - b'm\x97\x14@', - b'}\x97\x14@', - ], - (Ecu.eps, 0x746, None): [ - b'm\xc0\x10\x00', - b'}\xc0\x10\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00c\xe9\x00\x00\x00\x00', - b'\x00\x00c\xe9\x1f@ \x03', - b'\x00\x00d5\x1f@ \t', - b'\x00\x00d\xd3\x1f@ \t', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xa7"@0\x07', - b'\xa7"@p\x07', - b'\xa7)\xa0q\x07', - b'\xba"@@\x07', - b'\xba"@p\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\x1a\xf6F`\x00', - b'\xda\xf2`p\x00', - b'\xda\xf2`\x80\x00', - b'\xda\xfd\xe0\x80\x00', - b'\xdc\xf2@`\x00', - b'\xdc\xf2``\x00', - b'\xdc\xf2`\x80\x00', - b'\xdc\xf2`\x81\x00', - ], - }, - CAR.SUBARU_LEGACY_PREGLOBAL: { - (Ecu.abs, 0x7b0, None): [ - b'[\x97D\x00', - b'[\xba\xc4\x03', - b'k\x97D\x00', - b'k\x9aD\x00', - b'{\x97D\x00', - ], - (Ecu.eps, 0x746, None): [ - b'K\xb0\x00\x01', - b'[\xb0\x00\x01', - b'k\xb0\x00\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00c\x94\x1f@\x10\x08', - b'\x00\x00c\xb7\x1f@\x10\x16', - b'\x00\x00c\xec\x1f@ \x04', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xa0"@q\x07', - b'\xa0+@p\x07', - b'\xab*@r\x07', - b'\xab+@p\x07', - b'\xb4"@0\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xbd\xf2\x00`\x00', - b'\xbe\xf2\x00p\x00', - b'\xbe\xfb\xc0p\x00', - b'\xbf\xf2\x00\x80\x00', - b'\xbf\xfb\xc0\x80\x00', - ], - }, - CAR.SUBARU_OUTBACK_PREGLOBAL: { - (Ecu.abs, 0x7b0, None): [ - b'[\xba\xac\x03', - b'[\xf7\xac\x00', - b'[\xf7\xac\x03', - b'[\xf7\xbc\x03', - b'k\x97\xac\x00', - b'k\x9a\xac\x00', - b'{\x97\xac\x00', - b'{\x9a\xac\x00', - ], - (Ecu.eps, 0x746, None): [ - b'K\xb0\x00\x00', - b'K\xb0\x00\x02', - b'[\xb0\x00\x00', - b'k\xb0\x00\x00', - b'{\xb0\x00\x01', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00c\x90\x1f@\x10\x0e', - b'\x00\x00c\x94\x00\x00\x00\x00', - b'\x00\x00c\x94\x1f@\x10\x08', - b'\x00\x00c\xb7\x1f@\x10\x16', - b'\x00\x00c\xd1\x1f@\x10\x17', - b'\x00\x00c\xec\x1f@ \x04', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xa0"@\x80\x07', - b'\xa0*@q\x07', - b'\xa0*@u\x07', - b'\xa0+@@\x07', - b'\xa0bAq\x07', - b'\xab"@@\x07', - b'\xab"@s\x07', - b'\xab*@@\x07', - b'\xab+@@\x07', - b'\xb4"@0\x07', - b'\xb4"@p\x07', - b'\xb4"@r\x07', - b'\xb4+@p\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xbd\xf2@`\x00', - b'\xbd\xf2@\x81\x00', - b'\xbd\xfb\xe0\x80\x00', - b'\xbe\xf2@p\x00', - b'\xbe\xf2@\x80\x00', - b'\xbe\xfb\xe0p\x00', - b'\xbf\xe2@\x80\x00', - b'\xbf\xf2@\x80\x00', - b'\xbf\xfb\xe0b\x00', - ], - }, - CAR.SUBARU_OUTBACK_PREGLOBAL_2018: { - (Ecu.abs, 0x7b0, None): [ - b'\x8b\x97\xac\x00', - b'\x8b\x97\xbc\x00', - b'\x8b\x99\xac\x00', - b'\x8b\x9a\xac\x00', - b'\x9b\x97\xac\x00', - b'\x9b\x97\xbe\x10', - b'\x9b\x9a\xac\x00', - ], - (Ecu.eps, 0x746, None): [ - b'{\xb0\x00\x00', - b'{\xb0\x00\x01', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00df\x1f@ \n', - b'\x00\x00d\x95\x00\x00\x00\x00', - b'\x00\x00d\x95\x1f@ \x0f', - b'\x00\x00d\xfe\x00\x00\x00\x00', - b'\x00\x00d\xfe\x1f@ \x15', - b'\x00\x00e\x19\x1f@ \x15', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xb5"@P\x07', - b'\xb5"@p\x07', - b'\xb5+@@\x07', - b'\xb5b@1\x07', - b'\xb5q\xe0@\x07', - b'\xc4"@0\x07', - b'\xc4+@0\x07', - b'\xc4b@p\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xbb\xf2@`\x00', - b'\xbb\xfb\xe0`\x00', - b'\xbc\xaf\xe0`\x00', - b'\xbc\xe2@\x80\x00', - b'\xbc\xf2@\x80\x00', - b'\xbc\xf2@\x81\x00', - b'\xbc\xfb\xe0`\x00', - b'\xbc\xfb\xe0\x80\x00', - ], - }, - CAR.SUBARU_OUTBACK: { - (Ecu.abs, 0x7b0, None): [ - b'\xa1 \x06\x00', - b'\xa1 \x06\x01', - b'\xa1 \x06\x02', - b'\xa1 \x06\x03', - b'\xa1 \x07\x00', - b'\xa1 \x07\x02', - b'\xa1 \x07\x03', - b'\xa1 \x08\x00', - b'\xa1 \x08\x01', - b'\xa1 \x08\x02', - b'\xa1 "\t\x00', - b'\xa1 "\t\x01', - ], - (Ecu.eps, 0x746, None): [ - b'\x1b\xc0\x10\x00', - b'\x9b\xc0\x10\x00', - b'\x9b\xc0\x10\x02', - b'\x9b\xc0 \x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x00\x00eJ\x00\x00\x00\x00\x00\x00', - b'\x00\x00eJ\x00\x1f@ \x19\x00', - b'\x00\x00e\x80\x00\x1f@ \x19\x00', - b'\x00\x00e\x9a\x00\x00\x00\x00\x00\x00', - b'\x00\x00e\x9a\x00\x1f@ 1\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xbc"`@\x07', - b'\xbc"`q\x07', - b'\xbc,\xa0q\x07', - b'\xbc,\xa0u\x07', - b'\xde"`0\x07', - b'\xde,\xa0@\x07', - b'\xe2"`0\x07', - b'\xe2"`p\x07', - b'\xe2"`q\x07', - b'\xe3,\xa0@\x07', - b'\xe2,\xa0p\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xa5\xf6D@\x00', - b'\xa5\xfe\xf6@\x00', - b'\xa5\xfe\xf7@\x00', - b'\xa5\xfe\xf8@\x00', - b'\xa7\x8e\xf40\x00', - b'\xa7\xf6D@\x00', - b'\xa7\xfe\xf4@\x00', - b'\xa7\xfe\xf6@\x00', - ], - }, - CAR.SUBARU_FORESTER_2022: { - (Ecu.abs, 0x7b0, None): [ - b'\xa3 !v\x00', - b'\xa3 !x\x00', - b'\xa3 "v\x00', - b'\xa3 "x\x00', - ], - (Ecu.eps, 0x746, None): [ - b'-\xc0\x040', - b'-\xc0%0', - b'=\xc0%\x02', - b'=\xc04\x02', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\x04!\x01\x1eD\x07!\x00\x04,', - b'\x04!\x08\x01.\x07!\x08\x022', - b'\r!\x08\x017\x00\x00\x00\x00\x00', - b'\r!\x08\x017\n!\x08\x003', - ], - (Ecu.engine, 0x7e0, None): [ - b'\xd5"`0\x07', - b'\xd5"a0\x07', - b'\xf1"`q\x07', - b'\xf1"aq\x07', - b'\xfa"`p\x07', - b'\xfa"ap\x07', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\x1d\x86B0\x00', - b'\x1d\xf6B0\x00', - b'\x1e\x86B0\x00', - b'\x1e\x86F0\x00', - b'\x1e\xf6D0\x00', - b'\x1f\xf6B1\x00', - ], - }, - CAR.SUBARU_OUTBACK_2023: { - (Ecu.abs, 0x7b0, None): [ - b'\xa1 #\x14\x00', - b'\xa1 #\x17\x00', - ], - (Ecu.eps, 0x746, None): [ - b'+\xc0\x10\x11\x00', - b'+\xc0\x12\x11\x00', - ], - (Ecu.fwdCamera, 0x787, None): [ - b'\t!\x08\x046\x05!\x08\x01/', - ], - (Ecu.engine, 0x7a2, None): [ - b'\xed,\xa0q\x07', - b'\xed,\xa2q\x07', - ], - (Ecu.transmission, 0x7a3, None): [ - b'\xa8\x8e\xf41\x00', - b'\xa8\xfe\xf41\x00', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/subaru/interface.py b/opendbc_repo/opendbc/car/subaru/interface.py deleted file mode 100644 index f3b9fbdf14..0000000000 --- a/opendbc_repo/opendbc/car/subaru/interface.py +++ /dev/null @@ -1,104 +0,0 @@ -from opendbc.car import get_safety_config, structs -from opendbc.car.disable_ecu import disable_ecu -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.subaru.carcontroller import CarController -from opendbc.car.subaru.carstate import CarState -from opendbc.car.subaru.values import CAR, GLOBAL_ES_ADDR, SubaruFlags, SubaruSafetyFlags - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate: CAR, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "subaru" - ret.radarUnavailable = True - # for HYBRID CARS to be upstreamed, we need: - # - replacement for ES_Distance so we can cancel the cruise control - # - to find the Cruise_Activated bit from the car - # - proper panda safety setup (use the correct cruise_activated bit, throttle from Throttle_Hybrid, etc) - ret.dashcamOnly = bool(ret.flags & (SubaruFlags.PREGLOBAL | SubaruFlags.LKAS_ANGLE | SubaruFlags.HYBRID)) - ret.autoResumeSng = False - - # Detect infotainment message sent from the camera - if not (ret.flags & SubaruFlags.PREGLOBAL) and 0x323 in fingerprint[2]: - ret.flags |= SubaruFlags.SEND_INFOTAINMENT.value - - if ret.flags & SubaruFlags.PREGLOBAL: - ret.enableBsm = 0x25c in fingerprint[0] - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.subaruPreglobal)] - else: - ret.enableBsm = 0x228 in fingerprint[0] - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.subaru)] - if ret.flags & SubaruFlags.GLOBAL_GEN2: - ret.safetyConfigs[0].safetyParam |= SubaruSafetyFlags.GEN2.value - - ret.steerLimitTimer = 0.4 - ret.steerActuatorDelay = 0.1 - - if ret.flags & SubaruFlags.LKAS_ANGLE: - ret.steerControlType = structs.CarParams.SteerControlType.angle - else: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - if candidate in (CAR.SUBARU_ASCENT, CAR.SUBARU_ASCENT_2023): - ret.steerActuatorDelay = 0.3 # end-to-end angle controller - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kf = 0.00003 - ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 20.], [0., 20.]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.0025, 0.1], [0.00025, 0.01]] - - elif candidate == CAR.SUBARU_IMPREZA: - ret.steerActuatorDelay = 0.4 # end-to-end angle controller - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kf = 0.00005 - ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 20.], [0., 20.]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2, 0.3], [0.02, 0.03]] - - elif candidate == CAR.SUBARU_IMPREZA_2020: - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kf = 0.00005 - ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 14., 23.], [0., 14., 23.]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.045, 0.042, 0.20], [0.04, 0.035, 0.045]] - - elif candidate == CAR.SUBARU_CROSSTREK_HYBRID: - ret.steerActuatorDelay = 0.1 - - elif candidate in (CAR.SUBARU_FORESTER, CAR.SUBARU_FORESTER_2022, CAR.SUBARU_FORESTER_HYBRID): - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kf = 0.000038 - ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 14., 23.], [0., 14., 23.]] - ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.01, 0.065, 0.2], [0.001, 0.015, 0.025]] - - elif candidate in (CAR.SUBARU_OUTBACK, CAR.SUBARU_LEGACY, CAR.SUBARU_OUTBACK_2023): - ret.steerActuatorDelay = 0.1 - - elif candidate in (CAR.SUBARU_FORESTER_PREGLOBAL, CAR.SUBARU_OUTBACK_PREGLOBAL_2018): - # Outback 2018-2019 and Forester have reversed driver torque signal - ret.safetyConfigs[0].safetyParam = SubaruSafetyFlags.PREGLOBAL_REVERSED_DRIVER_TORQUE.value - - elif candidate == CAR.SUBARU_LEGACY_PREGLOBAL: - ret.steerActuatorDelay = 0.15 - - elif candidate == CAR.SUBARU_OUTBACK_PREGLOBAL: - pass - else: - raise ValueError(f"unknown car: {candidate}") - - ret.alphaLongitudinalAvailable = not (ret.flags & (SubaruFlags.GLOBAL_GEN2 | SubaruFlags.PREGLOBAL | - SubaruFlags.LKAS_ANGLE | SubaruFlags.HYBRID)) - ret.openpilotLongitudinalControl = alpha_long and ret.alphaLongitudinalAvailable - - if ret.flags & SubaruFlags.GLOBAL_GEN2 and ret.openpilotLongitudinalControl: - ret.flags |= SubaruFlags.DISABLE_EYESIGHT.value - - if ret.openpilotLongitudinalControl: - ret.safetyConfigs[0].safetyParam |= SubaruSafetyFlags.LONG.value - - return ret - - @staticmethod - def init(CP, can_recv, can_send): - if CP.flags & SubaruFlags.DISABLE_EYESIGHT: - disable_ecu(can_recv, can_send, bus=2, addr=GLOBAL_ES_ADDR, com_cont_req=b'\x28\x03\x01') diff --git a/opendbc_repo/opendbc/car/subaru/subarucan.py b/opendbc_repo/opendbc/car/subaru/subarucan.py deleted file mode 100644 index 61477a9204..0000000000 --- a/opendbc_repo/opendbc/car/subaru/subarucan.py +++ /dev/null @@ -1,332 +0,0 @@ -from opendbc.car import structs -from opendbc.car.subaru.values import CanBus - -VisualAlert = structs.CarControl.HUDControl.VisualAlert - - -def create_steering_control(packer, apply_torque, steer_req): - values = { - "LKAS_Output": apply_torque, - "LKAS_Request": steer_req, - "SET_1": 1 - } - return packer.make_can_msg("ES_LKAS", 0, values) - - -def create_steering_control_angle(packer, apply_torque, steer_req): - values = { - "LKAS_Output": apply_torque, - "LKAS_Request": steer_req, - "SET_3": 3 - } - return packer.make_can_msg("ES_LKAS_ANGLE", 0, values) - - -def create_steering_status(packer): - return packer.make_can_msg("ES_LKAS_State", 0, {}) - -def create_es_distance(packer, frame, es_distance_msg, bus, pcm_cancel_cmd, long_enabled = False, brake_cmd = False, cruise_throttle = 0): - values = {s: es_distance_msg[s] for s in [ - "CHECKSUM", - "Signal1", - "Cruise_Fault", - "Cruise_Throttle", - "Signal2", - "Car_Follow", - "Low_Speed_Follow", - "Cruise_Soft_Disable", - "Signal7", - "Cruise_Brake_Active", - "Distance_Swap", - "Cruise_EPB", - "Signal4", - "Close_Distance", - "Signal5", - "Cruise_Cancel", - "Cruise_Set", - "Cruise_Resume", - "Signal6", - ]} - - values["COUNTER"] = frame % 0x10 - - if long_enabled: - values["Cruise_Throttle"] = cruise_throttle - - # Do not disable openpilot on Eyesight Soft Disable, if openpilot is controlling long - values["Cruise_Soft_Disable"] = 0 - values["Cruise_Fault"] = 0 - - values["Cruise_Brake_Active"] = brake_cmd - - if pcm_cancel_cmd: - values["Cruise_Cancel"] = 1 - values["Cruise_Throttle"] = 1818 # inactive throttle - - return packer.make_can_msg("ES_Distance", bus, values) - - -def create_es_lkas_state(packer, frame, es_lkas_state_msg, enabled, visual_alert, left_line, right_line, left_lane_depart, right_lane_depart): - values = {s: es_lkas_state_msg[s] for s in [ - "CHECKSUM", - "LKAS_Alert_Msg", - "Signal1", - "LKAS_ACTIVE", - "LKAS_Dash_State", - "Signal2", - "Backward_Speed_Limit_Menu", - "LKAS_Left_Line_Enable", - "LKAS_Left_Line_Light_Blink", - "LKAS_Right_Line_Enable", - "LKAS_Right_Line_Light_Blink", - "LKAS_Left_Line_Visible", - "LKAS_Right_Line_Visible", - "LKAS_Alert", - "Signal3", - ]} - - values["COUNTER"] = frame % 0x10 - - # Filter the stock LKAS "Keep hands on wheel" alert - if values["LKAS_Alert_Msg"] == 1: - values["LKAS_Alert_Msg"] = 0 - - # Filter the stock LKAS sending an audible alert when it turns off LKAS - if values["LKAS_Alert"] == 27: - values["LKAS_Alert"] = 0 - - # Filter the stock LKAS sending an audible alert when "Keep hands on wheel" alert is active (2020+ models) - if values["LKAS_Alert"] == 28 and values["LKAS_Alert_Msg"] == 7: - values["LKAS_Alert"] = 0 - - # Filter the stock LKAS sending an audible alert when "Keep hands on wheel OFF" alert is active (2020+ models) - if values["LKAS_Alert"] == 30: - values["LKAS_Alert"] = 0 - - # Filter the stock LKAS sending "Keep hands on wheel OFF" alert (2020+ models) - if values["LKAS_Alert_Msg"] == 7: - values["LKAS_Alert_Msg"] = 0 - - # Show Keep hands on wheel alert for openpilot steerRequired alert - if visual_alert == VisualAlert.steerRequired: - values["LKAS_Alert_Msg"] = 1 - - # Ensure we don't overwrite potentially more important alerts from stock (e.g. FCW) - if visual_alert == VisualAlert.ldw and values["LKAS_Alert"] == 0: - if left_lane_depart: - values["LKAS_Alert"] = 12 # Left lane departure dash alert - elif right_lane_depart: - values["LKAS_Alert"] = 11 # Right lane departure dash alert - - if enabled: - values["LKAS_ACTIVE"] = 1 # Show LKAS lane lines - values["LKAS_Dash_State"] = 2 # Green enabled indicator - else: - values["LKAS_Dash_State"] = 0 # LKAS Not enabled - - values["LKAS_Left_Line_Visible"] = int(left_line) - values["LKAS_Right_Line_Visible"] = int(right_line) - - return packer.make_can_msg("ES_LKAS_State", CanBus.main, values) - -def create_es_dashstatus(packer, frame, dashstatus_msg, enabled, long_enabled, long_active, lead_visible): - values = {s: dashstatus_msg[s] for s in [ - "CHECKSUM", - "PCB_Off", - "LDW_Off", - "Signal1", - "Cruise_State_Msg", - "LKAS_State_Msg", - "Signal2", - "Cruise_Soft_Disable", - "Cruise_Status_Msg", - "Signal3", - "Cruise_Distance", - "Signal4", - "Conventional_Cruise", - "Signal5", - "Cruise_Disengaged", - "Cruise_Activated", - "Signal6", - "Cruise_Set_Speed", - "Cruise_Fault", - "Cruise_On", - "Display_Own_Car", - "Brake_Lights", - "Car_Follow", - "Signal7", - "Far_Distance", - "Cruise_State", - ]} - - values["COUNTER"] = frame % 0x10 - - if long_enabled: - values["Cruise_State"] = 0 - values["Cruise_Activated"] = enabled - values["Cruise_Disengaged"] = 0 - values["Car_Follow"] = int(lead_visible) - - values["PCB_Off"] = 1 # AEB is not presevered, so show the PCB_Off on dash - values["LDW_Off"] = 0 - values["Cruise_Fault"] = 0 - - # Filter stock LKAS disabled and Keep hands on steering wheel OFF alerts - if values["LKAS_State_Msg"] in (2, 3): - values["LKAS_State_Msg"] = 0 - - return packer.make_can_msg("ES_DashStatus", CanBus.main, values) - -def create_es_brake(packer, frame, es_brake_msg, long_enabled, long_active, brake_value): - values = {s: es_brake_msg[s] for s in [ - "CHECKSUM", - "Signal1", - "Brake_Pressure", - "AEB_Status", - "Cruise_Brake_Lights", - "Cruise_Brake_Fault", - "Cruise_Brake_Active", - "Cruise_Activated", - "Signal3", - ]} - - values["COUNTER"] = frame % 0x10 - - if long_enabled: - values["Cruise_Brake_Fault"] = 0 - values["Cruise_Activated"] = long_active - - values["Brake_Pressure"] = brake_value - - values["Cruise_Brake_Active"] = brake_value > 0 - values["Cruise_Brake_Lights"] = brake_value >= 70 - - return packer.make_can_msg("ES_Brake", CanBus.main, values) - -def create_es_status(packer, frame, es_status_msg, long_enabled, long_active, cruise_rpm): - values = {s: es_status_msg[s] for s in [ - "CHECKSUM", - "Signal1", - "Cruise_Fault", - "Cruise_RPM", - "Cruise_Activated", - "Brake_Lights", - "Cruise_Hold", - "Signal3", - ]} - - values["COUNTER"] = frame % 0x10 - - if long_enabled: - values["Cruise_RPM"] = cruise_rpm - values["Cruise_Fault"] = 0 - - values["Cruise_Activated"] = long_active - - return packer.make_can_msg("ES_Status", CanBus.main, values) - - -def create_es_infotainment(packer, frame, es_infotainment_msg, visual_alert): - # Filter stock LKAS disabled and Keep hands on steering wheel OFF alerts - values = {s: es_infotainment_msg[s] for s in [ - "CHECKSUM", - "LKAS_State_Infotainment", - "LKAS_Blue_Lines", - "Signal1", - "Signal2", - ]} - - values["COUNTER"] = frame % 0x10 - - if values["LKAS_State_Infotainment"] in (3, 4): - values["LKAS_State_Infotainment"] = 0 - - # Show Keep hands on wheel alert for openpilot steerRequired alert - if visual_alert == VisualAlert.steerRequired: - values["LKAS_State_Infotainment"] = 3 - - # Show Obstacle Detected for fcw - if visual_alert == VisualAlert.fcw: - values["LKAS_State_Infotainment"] = 2 - - return packer.make_can_msg("ES_Infotainment", CanBus.main, values) - - -def create_es_highbeamassist(packer): - values = { - "HBA_Available": False, - } - - return packer.make_can_msg("ES_HighBeamAssist", CanBus.main, values) - - -def create_es_static_1(packer): - values = { - "SET_3": 3, - } - - return packer.make_can_msg("ES_STATIC_1", CanBus.main, values) - - -def create_es_static_2(packer): - values = { - "SET_3": 3, - } - - return packer.make_can_msg("ES_STATIC_2", CanBus.main, values) - - -# *** Subaru Pre-global *** - -def subaru_preglobal_checksum(packer, values, addr, checksum_byte=7): - dat = packer.make_can_msg(addr, 0, values)[1] - return (sum(dat[:checksum_byte]) + sum(dat[checksum_byte+1:])) % 256 - - -def create_preglobal_steering_control(packer, frame, apply_torque, steer_req): - values = { - "COUNTER": frame % 0x08, - "LKAS_Command": apply_torque, - "LKAS_Active": steer_req, - } - values["Checksum"] = subaru_preglobal_checksum(packer, values, "ES_LKAS") - - return packer.make_can_msg("ES_LKAS", CanBus.main, values) - - -def create_preglobal_es_distance(packer, cruise_button, es_distance_msg): - values = {s: es_distance_msg[s] for s in [ - "Cruise_Throttle", - "Signal1", - "Car_Follow", - "Signal2", - "Cruise_Brake_Active", - "Distance_Swap", - "Standstill", - "Signal3", - "Close_Distance", - "Signal4", - "Standstill_2", - "Cruise_Fault", - "Signal5", - "COUNTER", - "Signal6", - "Cruise_Button", - "Signal7", - ]} - - values["Cruise_Button"] = cruise_button - values["Checksum"] = subaru_preglobal_checksum(packer, values, "ES_Distance") - - return packer.make_can_msg("ES_Distance", CanBus.main, values) - - -def subaru_checksum(address: int, sig, d: bytearray) -> int: - s = 0 - addr = address - while addr: - s += addr & 0xFF - addr >>= 8 - for i in range(1, len(d)): - s += d[i] - return s & 0xFF diff --git a/opendbc_repo/opendbc/car/subaru/tests/__init__.py b/opendbc_repo/opendbc/car/subaru/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/subaru/tests/test_subaru.py b/opendbc_repo/opendbc/car/subaru/tests/test_subaru.py deleted file mode 100644 index 7f3d9bb3c5..0000000000 --- a/opendbc_repo/opendbc/car/subaru/tests/test_subaru.py +++ /dev/null @@ -1,10 +0,0 @@ -from opendbc.car.subaru.fingerprints import FW_VERSIONS - - -class TestSubaruFingerprint: - def test_fw_version_format(self): - for platform, fws_per_ecu in FW_VERSIONS.items(): - for (ecu, _, _), fws in fws_per_ecu.items(): - fw_size = len(fws[0]) - for fw in fws: - assert len(fw) == fw_size, f"{platform} {ecu}: {len(fw)} {fw_size}" diff --git a/opendbc_repo/opendbc/car/subaru/values.py b/opendbc_repo/opendbc/car/subaru/values.py deleted file mode 100644 index c65f38eced..0000000000 --- a/opendbc_repo/opendbc/car/subaru/values.py +++ /dev/null @@ -1,282 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag - -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Tool, Column -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries, p16 - -Ecu = CarParams.Ecu - - -class CarControllerParams: - def __init__(self, CP): - self.STEER_STEP = 2 # how often we update the steer cmd - self.STEER_DELTA_UP = 50 # torque increase per refresh, 0.8s to max - self.STEER_DELTA_DOWN = 70 # torque decrease per refresh - self.STEER_DRIVER_ALLOWANCE = 60 # allowed driver torque before start limiting - self.STEER_DRIVER_MULTIPLIER = 50 # weight driver torque heavily - self.STEER_DRIVER_FACTOR = 1 # from dbc - - if CP.flags & SubaruFlags.GLOBAL_GEN2: - # TODO: lower rate limits, this reaches min/max in 0.5s which negatively affects tuning - self.STEER_MAX = 1000 - self.STEER_DELTA_UP = 40 - self.STEER_DELTA_DOWN = 40 - elif CP.carFingerprint == CAR.SUBARU_IMPREZA_2020: - self.STEER_DELTA_UP = 35 - self.STEER_MAX = 1439 - else: - self.STEER_MAX = 2047 - - THROTTLE_MIN = 808 - THROTTLE_MAX = 3400 - - THROTTLE_INACTIVE = 1818 # corresponds to zero acceleration - THROTTLE_ENGINE_BRAKE = 808 # while braking, eyesight sets throttle to this, probably for engine braking - - BRAKE_MIN = 0 - BRAKE_MAX = 600 # about -3.5m/s2 from testing - - RPM_MIN = 0 - RPM_MAX = 3600 - - RPM_INACTIVE = 600 # a good base rpm for zero acceleration - - THROTTLE_LOOKUP_BP = [0, 2] - THROTTLE_LOOKUP_V = [THROTTLE_INACTIVE, THROTTLE_MAX] - - RPM_LOOKUP_BP = [0, 2] - RPM_LOOKUP_V = [RPM_INACTIVE, RPM_MAX] - - BRAKE_LOOKUP_BP = [-3.5, 0] - BRAKE_LOOKUP_V = [BRAKE_MAX, BRAKE_MIN] - - -class SubaruSafetyFlags(IntFlag): - GEN2 = 1 - LONG = 2 - PREGLOBAL_REVERSED_DRIVER_TORQUE = 4 - - -class SubaruFlags(IntFlag): - # Detected flags - SEND_INFOTAINMENT = 1 - DISABLE_EYESIGHT = 2 - - # Static flags - GLOBAL_GEN2 = 4 - - # Cars that temporarily fault when steering angle rate is greater than some threshold. - # Appears to be all torque-based cars produced around 2019 - present - STEER_RATE_LIMITED = 8 - PREGLOBAL = 16 - HYBRID = 32 - LKAS_ANGLE = 64 - - -GLOBAL_ES_ADDR = 0x787 -GEN2_ES_BUTTONS_DID = b'\x11\x30' - - -class CanBus: - main = 0 - alt = 1 - camera = 2 - - -class Footnote(Enum): - GLOBAL = CarFootnote( - "In the non-US market, openpilot requires the car to come equipped with EyeSight with Lane Keep Assistance.", - Column.PACKAGE) - EXP_LONG = CarFootnote( - "Enabling longitudinal control (alpha) will disable all EyeSight functionality, including AEB, LDW, and RAB.", - Column.LONGITUDINAL) - - -@dataclass -class SubaruCarDocs(CarDocs): - package: str = "EyeSight Driver Assistance" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.subaru_a])) - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.GLOBAL]) - - def init_make(self, CP: CarParams): - self.car_parts.parts.extend([Tool.socket_8mm_deep, Tool.pry_tool]) - - if CP.alphaLongitudinalAvailable: - self.footnotes.append(Footnote.EXP_LONG) - - -@dataclass -class SubaruPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'subaru_global_2017_generated'}) - - def init(self): - if self.flags & SubaruFlags.HYBRID: - self.dbc_dict = {Bus.pt: 'subaru_global_2020_hybrid_generated'} - - -@dataclass -class SubaruGen2PlatformConfig(SubaruPlatformConfig): - def init(self): - super().init() - self.flags |= SubaruFlags.GLOBAL_GEN2 - if not (self.flags & SubaruFlags.LKAS_ANGLE): - self.flags |= SubaruFlags.STEER_RATE_LIMITED - - -class CAR(Platforms): - # Global platform - SUBARU_ASCENT = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Ascent 2019-21", "All")], - CarSpecs(mass=2031, wheelbase=2.89, steerRatio=13.5), - ) - SUBARU_OUTBACK = SubaruGen2PlatformConfig( - [SubaruCarDocs("Subaru Outback 2020-22", "All", car_parts=CarParts.common([CarHarness.subaru_b]))], - CarSpecs(mass=1568, wheelbase=2.67, steerRatio=17), - ) - SUBARU_LEGACY = SubaruGen2PlatformConfig( - [SubaruCarDocs("Subaru Legacy 2020-22", "All", car_parts=CarParts.common([CarHarness.subaru_b]))], - SUBARU_OUTBACK.specs, - ) - SUBARU_IMPREZA = SubaruPlatformConfig( - [ - SubaruCarDocs("Subaru Impreza 2017-19"), - SubaruCarDocs("Subaru Crosstrek 2018-19", video="https://youtu.be/Agww7oE1k-s?t=26"), - SubaruCarDocs("Subaru XV 2018-19", video="https://youtu.be/Agww7oE1k-s?t=26"), - ], - CarSpecs(mass=1568, wheelbase=2.67, steerRatio=15), - ) - SUBARU_IMPREZA_2020 = SubaruPlatformConfig( - [ - SubaruCarDocs("Subaru Impreza 2020-22"), - SubaruCarDocs("Subaru Crosstrek 2020-23"), - SubaruCarDocs("Subaru XV 2020-21"), - ], - CarSpecs(mass=1480, wheelbase=2.67, steerRatio=17), - flags=SubaruFlags.STEER_RATE_LIMITED, - ) - # TODO: is there an XV and Impreza too? - SUBARU_CROSSTREK_HYBRID = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Crosstrek Hybrid 2020", car_parts=CarParts.common([CarHarness.subaru_b]))], - CarSpecs(mass=1668, wheelbase=2.67, steerRatio=17), - flags=SubaruFlags.HYBRID, - ) - SUBARU_FORESTER = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Forester 2019-21", "All")], - CarSpecs(mass=1568, wheelbase=2.67, steerRatio=17), - flags=SubaruFlags.STEER_RATE_LIMITED, - ) - SUBARU_FORESTER_HYBRID = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Forester Hybrid 2020")], - SUBARU_FORESTER.specs, - flags=SubaruFlags.HYBRID, - ) - # Pre-global - SUBARU_FORESTER_PREGLOBAL = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Forester 2017-18")], - CarSpecs(mass=1568, wheelbase=2.67, steerRatio=20), - {Bus.pt: 'subaru_forester_2017_generated'}, - flags=SubaruFlags.PREGLOBAL, - ) - SUBARU_LEGACY_PREGLOBAL = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Legacy 2015-18")], - CarSpecs(mass=1568, wheelbase=2.67, steerRatio=12.5), - {Bus.pt: 'subaru_outback_2015_generated'}, - flags=SubaruFlags.PREGLOBAL, - ) - SUBARU_OUTBACK_PREGLOBAL = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Outback 2015-17")], - SUBARU_FORESTER_PREGLOBAL.specs, - {Bus.pt: 'subaru_outback_2015_generated'}, - flags=SubaruFlags.PREGLOBAL, - ) - SUBARU_OUTBACK_PREGLOBAL_2018 = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Outback 2018-19")], - SUBARU_FORESTER_PREGLOBAL.specs, - {Bus.pt: 'subaru_outback_2019_generated'}, - flags=SubaruFlags.PREGLOBAL, - ) - # Angle LKAS - SUBARU_FORESTER_2022 = SubaruPlatformConfig( - [SubaruCarDocs("Subaru Forester 2022-24", "All", car_parts=CarParts.common([CarHarness.subaru_c]))], - SUBARU_FORESTER.specs, - flags=SubaruFlags.LKAS_ANGLE, - ) - SUBARU_OUTBACK_2023 = SubaruGen2PlatformConfig( - [SubaruCarDocs("Subaru Outback 2023", "All", car_parts=CarParts.common([CarHarness.subaru_d]))], - SUBARU_OUTBACK.specs, - flags=SubaruFlags.LKAS_ANGLE, - ) - SUBARU_ASCENT_2023 = SubaruGen2PlatformConfig( - [SubaruCarDocs("Subaru Ascent 2023", "All", car_parts=CarParts.common([CarHarness.subaru_d]))], - SUBARU_ASCENT.specs, - flags=SubaruFlags.LKAS_ANGLE, - ) - - -SUBARU_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_DATA_IDENTIFICATION) -SUBARU_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_DATA_IDENTIFICATION) - -# The EyeSight ECU takes 10s to respond to SUBARU_VERSION_REQUEST properly, -# log this alternate manufacturer-specific query -SUBARU_ALT_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(0xf100) -SUBARU_ALT_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ - p16(0xf100) - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - Request( - [StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.fwdCamera, Ecu.engine, Ecu.transmission], - logging=True, - ), - # Non-OBD requests - # Some Eyesight modules fail on TESTER_PRESENT_REQUEST - # TODO: check if this resolves the fingerprinting issue for the 2023 Ascent and other new Subaru cars - Request( - [SUBARU_VERSION_REQUEST], - [SUBARU_VERSION_RESPONSE], - whitelist_ecus=[Ecu.fwdCamera], - bus=0, - ), - Request( - [SUBARU_ALT_VERSION_REQUEST], - [SUBARU_ALT_VERSION_RESPONSE], - whitelist_ecus=[Ecu.fwdCamera], - bus=0, - logging=True, - ), - Request( - [StdQueries.DEFAULT_DIAGNOSTIC_REQUEST, StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], - [StdQueries.DEFAULT_DIAGNOSTIC_RESPONSE, StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], - whitelist_ecus=[Ecu.fwdCamera], - bus=0, - logging=True, - ), - Request( - [StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.fwdCamera, Ecu.engine, Ecu.transmission], - bus=0, - ), - # GEN2 powertrain bus query - Request( - [StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], - whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.fwdCamera, Ecu.engine, Ecu.transmission], - bus=1, - obd_multiplexing=False, - ), - ], - # We don't get the EPS from non-OBD queries on GEN2 cars. Note that we still attempt to match when it exists - non_essential_ecus={ - Ecu.eps: list(CAR.with_flags(SubaruFlags.GLOBAL_GEN2)), - } -) - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/tesla/__init__.py b/opendbc_repo/opendbc/car/tesla/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/tesla/carcontroller.py b/opendbc_repo/opendbc/car/tesla/carcontroller.py deleted file mode 100644 index fb23563a58..0000000000 --- a/opendbc_repo/opendbc/car/tesla/carcontroller.py +++ /dev/null @@ -1,55 +0,0 @@ -import numpy as np -from opendbc.can import CANPacker -from opendbc.car import Bus, apply_std_steer_angle_limits -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.tesla.teslacan import TeslaCAN -from opendbc.car.tesla.values import CarControllerParams - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.apply_angle_last = 0 - self.packer = CANPacker(dbc_names[Bus.party]) - self.tesla_can = TeslaCAN(self.packer) - - def update(self, CC, CS, now_nanos): - actuators = CC.actuators - can_sends = [] - - # Disengage and allow for user override on high torque inputs - # TODO: move this to a generic disengageRequested carState field and set CC.cruiseControl.cancel based on it - hands_on_fault = CS.hands_on_level >= 3 - cruise_cancel = CC.cruiseControl.cancel or hands_on_fault - lat_active = CC.latActive and not hands_on_fault - - if self.frame % 2 == 0: - # Angular rate limit based on speed - self.apply_angle_last = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgo, - CS.out.steeringAngleDeg, CC.latActive, CarControllerParams.ANGLE_LIMITS) - - can_sends.append(self.tesla_can.create_steering_control(self.apply_angle_last, lat_active, (self.frame // 2) % 16)) - - if self.frame % 10 == 0: - can_sends.append(self.tesla_can.create_steering_allowed((self.frame // 10) % 16)) - - # Longitudinal control - if self.CP.openpilotLongitudinalControl: - if self.frame % 4 == 0: - state = 13 if cruise_cancel else 4 # 4=ACC_ON, 13=ACC_CANCEL_GENERIC_SILENT - accel = float(np.clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) - cntr = (self.frame // 4) % 8 - can_sends.append(self.tesla_can.create_longitudinal_command(state, accel, cntr, CS.out.vEgo, CC.longActive)) - - else: - # Increment counter so cancel is prioritized even without openpilot longitudinal - if cruise_cancel: - cntr = (CS.das_control["DAS_controlCounter"] + 1) % 8 - can_sends.append(self.tesla_can.create_longitudinal_command(13, 0, cntr, CS.out.vEgo, False)) - - # TODO: HUD control - new_actuators = actuators.as_builder() - new_actuators.steeringAngleDeg = self.apply_angle_last - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/tesla/carstate.py b/opendbc_repo/opendbc/car/tesla/carstate.py deleted file mode 100644 index 96a95c9084..0000000000 --- a/opendbc_repo/opendbc/car/tesla/carstate.py +++ /dev/null @@ -1,101 +0,0 @@ -import copy -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarStateBase -from opendbc.car.tesla.values import DBC, CANBUS, GEAR_MAP, STEER_THRESHOLD - -ButtonType = structs.CarState.ButtonEvent.Type - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - self.can_define = CANDefine(DBC[CP.carFingerprint][Bus.party]) - self.shifter_values = self.can_define.dv["DI_systemStatus"]["DI_gear"] - - self.hands_on_level = 0 - self.das_control = None - - def update(self, can_parsers) -> structs.CarState: - cp_party = can_parsers[Bus.party] - cp_ap_party = can_parsers[Bus.ap_party] - ret = structs.CarState() - - # Vehicle speed - ret.vEgoRaw = cp_party.vl["DI_speed"]["DI_vehicleSpeed"] * CV.KPH_TO_MS - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - - # Gas pedal - pedal_status = cp_party.vl["DI_systemStatus"]["DI_accelPedalPos"] - ret.gas = pedal_status / 100.0 - ret.gasPressed = pedal_status > 0 - - # Brake pedal - ret.brake = 0 - ret.brakePressed = cp_party.vl["IBST_status"]["IBST_driverBrakeApply"] == 2 - - # Steering wheel - epas_status = cp_party.vl["EPAS3S_sysStatus"] - self.hands_on_level = epas_status["EPAS3S_handsOnLevel"] - ret.steeringAngleDeg = -epas_status["EPAS3S_internalSAS"] - ret.steeringRateDeg = -cp_ap_party.vl["SCCM_steeringAngleSensor"]["SCCM_steeringAngleSpeed"] - ret.steeringTorque = -epas_status["EPAS3S_torsionBarTorque"] - - # This matches stock logic, but with halved minimum frames (0.25-0.3s) - ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > STEER_THRESHOLD, 15) - - eac_status = self.can_define.dv["EPAS3S_sysStatus"]["EPAS3S_eacStatus"].get(int(epas_status["EPAS3S_eacStatus"]), None) - ret.steerFaultPermanent = eac_status == "EAC_FAULT" - ret.steerFaultTemporary = eac_status == "EAC_INHIBITED" - - # Cruise state - cruise_state = self.can_define.dv["DI_state"]["DI_cruiseState"].get(int(cp_party.vl["DI_state"]["DI_cruiseState"]), None) - speed_units = self.can_define.dv["DI_state"]["DI_speedUnits"].get(int(cp_party.vl["DI_state"]["DI_speedUnits"]), None) - - ret.cruiseState.enabled = cruise_state in ("ENABLED", "STANDSTILL", "OVERRIDE", "PRE_FAULT", "PRE_CANCEL") - if speed_units == "KPH": - ret.cruiseState.speed = max(cp_party.vl["DI_state"]["DI_digitalSpeed"] * CV.KPH_TO_MS, 1e-3) - elif speed_units == "MPH": - ret.cruiseState.speed = max(cp_party.vl["DI_state"]["DI_digitalSpeed"] * CV.MPH_TO_MS, 1e-3) - ret.cruiseState.available = cruise_state == "STANDBY" or ret.cruiseState.enabled - ret.cruiseState.standstill = False # This needs to be false, since we can resume from stop without sending anything special - ret.standstill = cruise_state == "STANDSTILL" - ret.accFaulted = cruise_state == "FAULT" - - # Gear - ret.gearShifter = GEAR_MAP[self.can_define.dv["DI_systemStatus"]["DI_gear"].get(int(cp_party.vl["DI_systemStatus"]["DI_gear"]), "DI_GEAR_INVALID")] - - # Doors - ret.doorOpen = cp_party.vl["UI_warning"]["anyDoorOpen"] == 1 - - # Blinkers - ret.leftBlinker = cp_party.vl["UI_warning"]["leftBlinkerBlinking"] in (1, 2) - ret.rightBlinker = cp_party.vl["UI_warning"]["rightBlinkerBlinking"] in (1, 2) - - # Seatbelt - ret.seatbeltUnlatched = cp_party.vl["UI_warning"]["buckleStatus"] != 1 - - # Blindspot - ret.leftBlindspot = cp_ap_party.vl["DAS_status"]["DAS_blindSpotRearLeft"] != 0 - ret.rightBlindspot = cp_ap_party.vl["DAS_status"]["DAS_blindSpotRearRight"] != 0 - - # AEB - ret.stockAeb = cp_ap_party.vl["DAS_control"]["DAS_aebEvent"] == 1 - - # Stock Autosteer should be off (includes FSD) - ret.invalidLkasSetting = cp_ap_party.vl["DAS_settings"]["DAS_autosteerEnabled"] != 0 - - # Buttons # ToDo: add Gap adjust button - - # Messages needed by carcontroller - self.das_control = copy.copy(cp_ap_party.vl["DAS_control"]) - - return ret - - @staticmethod - def get_can_parsers(CP): - return { - Bus.party: CANParser(DBC[CP.carFingerprint][Bus.party], [], CANBUS.party), - Bus.ap_party: CANParser(DBC[CP.carFingerprint][Bus.party], [], CANBUS.autopilot_party) - } diff --git a/opendbc_repo/opendbc/car/tesla/fingerprints.py b/opendbc_repo/opendbc/car/tesla/fingerprints.py deleted file mode 100644 index 978897f33c..0000000000 --- a/opendbc_repo/opendbc/car/tesla/fingerprints.py +++ /dev/null @@ -1,37 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.tesla.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.TESLA_MODEL_3: { - (Ecu.eps, 0x730, None): [ - b'TeM3_E014p10_0.0.0 (16),E014.17.00', - b'TeM3_E014p10_0.0.0 (16),EL014.17.00', - b'TeM3_ES014p11_0.0.0 (25),ES014.19.0', - b'TeMYG4_DCS_Update_0.0.0 (13),E4014.28.1', - b'TeMYG4_DCS_Update_0.0.0 (9),E4014.26.0', - b'TeMYG4_Legacy3Y_0.0.0 (2),E4015.02.0', - b'TeMYG4_Legacy3Y_0.0.0 (5),E4015.03.2', - b'TeMYG4_Main_0.0.0 (59),E4H014.29.0', - b'TeMYG4_Main_0.0.0 (65),E4H015.01.0', - b'TeMYG4_Main_0.0.0 (67),E4H015.02.1', - b'TeMYG4_SingleECU_0.0.0 (33),E4S014.27', - ], - }, - CAR.TESLA_MODEL_Y: { - (Ecu.eps, 0x730, None): [ - b'TeM3_E014p10_0.0.0 (16),Y002.18.00', - b'TeM3_E014p10_0.0.0 (16),YP002.18.00', - b'TeM3_ES014p11_0.0.0 (16),YS002.17', - b'TeM3_ES014p11_0.0.0 (25),YS002.19.0', - b'TeMYG4_DCS_Update_0.0.0 (13),Y4002.27.1', - b'TeMYG4_DCS_Update_0.0.0 (13),Y4P002.27.1', - b'TeMYG4_DCS_Update_0.0.0 (9),Y4P002.25.0', - b'TeMYG4_Legacy3Y_0.0.0 (2),Y4003.02.0', - b'TeMYG4_Legacy3Y_0.0.0 (5),Y4003.03.2', - b'TeMYG4_Legacy3Y_0.0.0 (2),Y4P003.02.0', - b'TeMYG4_SingleECU_0.0.0 (33),Y4S002.26', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/tesla/interface.py b/opendbc_repo/opendbc/car/tesla/interface.py deleted file mode 100644 index e67df8f4a0..0000000000 --- a/opendbc_repo/opendbc/car/tesla/interface.py +++ /dev/null @@ -1,34 +0,0 @@ -from opendbc.car import get_safety_config, structs -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.tesla.carcontroller import CarController -from opendbc.car.tesla.carstate import CarState -from opendbc.car.tesla.values import TeslaSafetyFlags - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "tesla" - - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.tesla)] - - ret.steerLimitTimer = 1.0 - ret.steerActuatorDelay = 0.1 - ret.steerAtStandstill = True - - ret.steerControlType = structs.CarParams.SteerControlType.angle - ret.radarUnavailable = True - - ret.alphaLongitudinalAvailable = True - if alpha_long: - ret.openpilotLongitudinalControl = True - ret.safetyConfigs[0].safetyParam |= TeslaSafetyFlags.LONG_CONTROL.value - - ret.vEgoStopping = 0.1 - ret.vEgoStarting = 0.1 - ret.stoppingDecelRate = 0.3 - - return ret diff --git a/opendbc_repo/opendbc/car/tesla/teslacan.py b/opendbc_repo/opendbc/car/tesla/teslacan.py deleted file mode 100644 index 615eef85e8..0000000000 --- a/opendbc_repo/opendbc/car/tesla/teslacan.py +++ /dev/null @@ -1,66 +0,0 @@ -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.tesla.values import CANBUS, CarControllerParams - - -class TeslaCAN: - def __init__(self, packer): - self.packer = packer - - @staticmethod - def checksum(msg_id, dat): - ret = (msg_id & 0xFF) + ((msg_id >> 8) & 0xFF) - ret += sum(dat) - return ret & 0xFF - - def create_steering_control(self, angle, enabled, counter): - values = { - "DAS_steeringAngleRequest": -angle, - "DAS_steeringHapticRequest": 0, - "DAS_steeringControlType": 1 if enabled else 0, - "DAS_steeringControlCounter": counter, - } - - data = self.packer.make_can_msg("DAS_steeringControl", CANBUS.party, values)[1] - values["DAS_steeringControlChecksum"] = self.checksum(0x488, data[:3]) - return self.packer.make_can_msg("DAS_steeringControl", CANBUS.party, values) - - def create_longitudinal_command(self, acc_state, accel, cntr, v_ego, active): - from opendbc.car.interfaces import V_CRUISE_MAX - set_speed = max(v_ego * CV.MS_TO_KPH, 0) - if active: - # TODO: this causes jerking after gas override when above set speed - set_speed = 0 if accel < 0 else V_CRUISE_MAX - - values = { - "DAS_setSpeed": set_speed, - "DAS_accState": acc_state, - "DAS_aebEvent": 0, - "DAS_jerkMin": CarControllerParams.JERK_LIMIT_MIN, - "DAS_jerkMax": CarControllerParams.JERK_LIMIT_MAX, - "DAS_accelMin": accel, - "DAS_accelMax": max(accel, 0), - "DAS_controlCounter": cntr, - "DAS_controlChecksum": 0, - } - data = self.packer.make_can_msg("DAS_control", CANBUS.party, values)[1] - values["DAS_controlChecksum"] = self.checksum(0x2b9, data[:7]) - return self.packer.make_can_msg("DAS_control", CANBUS.party, values) - - def create_steering_allowed(self, counter): - values = { - "APS_eacAllow": 1, - "APS_eacMonitorCounter": counter, - } - - data = self.packer.make_can_msg("APS_eacMonitor", CANBUS.party, values)[1] - values["APS_eacMonitorChecksum"] = self.checksum(0x27d, data[:2]) - return self.packer.make_can_msg("APS_eacMonitor", CANBUS.party, values) - - -def tesla_checksum(address: int, sig, d: bytearray) -> int: - checksum = (address & 0xFF) + ((address >> 8) & 0xFF) - checksum_byte = sig.start_bit // 8 - for i in range(len(d)): - if i != checksum_byte: - checksum += d[i] - return checksum & 0xFF diff --git a/opendbc_repo/opendbc/car/tesla/values.py b/opendbc_repo/opendbc/car/tesla/values.py deleted file mode 100644 index c771a9459f..0000000000 --- a/opendbc_repo/opendbc/car/tesla/values.py +++ /dev/null @@ -1,111 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, AngleSteeringLimits -from opendbc.car.structs import CarParams, CarState -from opendbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries - -Ecu = CarParams.Ecu - - -class Footnote(Enum): - HW_TYPE = CarFootnote( - "Some 2023 model years have HW4. To check which hardware type your vehicle has, look for " + - "Autopilot computer under Software -> Additional Vehicle Information on your vehicle's touchscreen.

" + - "See this page for more information.", - Column.MODEL) - - -@dataclass -class TeslaCarDocsHW3(CarDocs): - package: str = "All" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.tesla_a])) - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.HW_TYPE]) - - -@dataclass -class TeslaCarDocsHW4(CarDocs): - package: str = "All" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.tesla_b])) - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.HW_TYPE]) - - -@dataclass -class TeslaPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.party: 'tesla_model3_party'}) - - -class CAR(Platforms): - TESLA_MODEL_3 = TeslaPlatformConfig( - [ - # TODO: do we support 2017? It's HW3 - TeslaCarDocsHW3("Tesla Model 3 (with HW3) 2019-23"), - TeslaCarDocsHW4("Tesla Model 3 (with HW4) 2024-25"), - ], - CarSpecs(mass=1899., wheelbase=2.875, steerRatio=12.0), - ) - TESLA_MODEL_Y = TeslaPlatformConfig( - [ - TeslaCarDocsHW3("Tesla Model Y (with HW3) 2020-23"), - TeslaCarDocsHW4("Tesla Model Y (with HW4) 2024"), - ], - CarSpecs(mass=2072., wheelbase=2.890, steerRatio=12.0), - ) - - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[ - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.SUPPLIER_SOFTWARE_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.SUPPLIER_SOFTWARE_VERSION_RESPONSE], - bus=0, - ) - ] -) - - -class CANBUS: - party = 0 - vehicle = 1 - autopilot_party = 2 - - -GEAR_MAP = { - "DI_GEAR_INVALID": CarState.GearShifter.unknown, - "DI_GEAR_P": CarState.GearShifter.park, - "DI_GEAR_R": CarState.GearShifter.reverse, - "DI_GEAR_N": CarState.GearShifter.neutral, - "DI_GEAR_D": CarState.GearShifter.drive, - "DI_GEAR_SNA": CarState.GearShifter.unknown, -} - - -class CarControllerParams: - ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( - # EPAS faults above this angle - 360, # deg - # Angle rate limits are set using the Tesla Model Y VehicleModel such that they maximally meet ISO 11270 - # At 5 m/s, FSD has been seen hitting up to ~4 deg/frame with ~5 deg/frame at very low creeping speeds - # At 30 m/s, FSD has been seen hitting mostly 0.1 deg/frame, sometimes 0.2 deg/frame, and rarely 0.3 deg/frame - ([0., 5., 25.], [2.5, 1.5, 0.2]), - ([0., 5., 25.], [5., 2.0, 0.3]), - ) - - STEER_STEP = 2 # Angle command is sent at 50 Hz - ACCEL_MAX = 2.0 # m/s^2 - ACCEL_MIN = -3.48 # m/s^2 - JERK_LIMIT_MAX = 4.9 # m/s^3, ACC faults at 5.0 - JERK_LIMIT_MIN = -4.9 # m/s^3, ACC faults at 5.0 - - -class TeslaSafetyFlags(IntFlag): - LONG_CONTROL = 1 - - -class TeslaFlags(IntFlag): - LONG_CONTROL = 1 - - -DBC = CAR.create_dbc_map() - -STEER_THRESHOLD = 0.5 diff --git a/opendbc_repo/opendbc/car/tests/__init__.py b/opendbc_repo/opendbc/car/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/tests/routes.py b/opendbc_repo/opendbc/car/tests/routes.py deleted file mode 100644 index 95a8eb03b0..0000000000 --- a/opendbc_repo/opendbc/car/tests/routes.py +++ /dev/null @@ -1,319 +0,0 @@ -from typing import NamedTuple - -from opendbc.car.chrysler.values import CAR as CHRYSLER -from opendbc.car.gm.values import CAR as GM -from opendbc.car.ford.values import CAR as FORD -from opendbc.car.honda.values import CAR as HONDA -from opendbc.car.hyundai.values import CAR as HYUNDAI -from opendbc.car.nissan.values import CAR as NISSAN -from opendbc.car.mazda.values import CAR as MAZDA -from opendbc.car.mock.values import CAR as MOCK -from opendbc.car.rivian.values import CAR as RIVIAN -from opendbc.car.subaru.values import CAR as SUBARU -from opendbc.car.tesla.values import CAR as TESLA -from opendbc.car.toyota.values import CAR as TOYOTA -from opendbc.car.values import Platform -from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN -from opendbc.car.body.values import CAR as COMMA - -# FIXME: add routes for these cars -non_tested_cars = [ - MOCK.MOCK, - GM.CADILLAC_ATS, - GM.HOLDEN_ASTRA, - GM.CHEVROLET_MALIBU, - HYUNDAI.GENESIS_G90, - HONDA.HONDA_ODYSSEY_CHN, - VOLKSWAGEN.VOLKSWAGEN_CRAFTER_MK2, # need a route from an ACC-equipped Crafter - SUBARU.SUBARU_FORESTER_HYBRID, - TESLA.TESLA_MODEL_3, - TESLA.TESLA_MODEL_Y, -] - - -class CarTestRoute(NamedTuple): - route: str - car_model: Platform | None - segment: int | None = None - - -routes = [ - CarTestRoute("efdf9af95e71cd84|2022-05-13--19-03-31", COMMA.COMMA_BODY), - - CarTestRoute("0c94aa1e1296d7c6|2021-05-05--19-48-37", CHRYSLER.JEEP_GRAND_CHEROKEE), - CarTestRoute("91dfedae61d7bd75|2021-05-22--20-07-52", CHRYSLER.JEEP_GRAND_CHEROKEE_2019), - CarTestRoute("420a8e183f1aed48|2020-03-05--07-15-29", CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID), # 2017 - CarTestRoute("43a685a66291579b|2021-05-27--19-47-29", CHRYSLER.CHRYSLER_PACIFICA_2018), - CarTestRoute("378472f830ee7395|2021-05-28--07-38-43", CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID), - CarTestRoute("8190c7275a24557b|2020-01-29--08-33-58", CHRYSLER.CHRYSLER_PACIFICA_2019_HYBRID), - CarTestRoute("3d84727705fecd04|2021-05-25--08-38-56", CHRYSLER.CHRYSLER_PACIFICA_2020), - CarTestRoute("221c253375af4ee9|2022-06-15--18-38-24", CHRYSLER.RAM_1500_5TH_GEN), - CarTestRoute("8fb5eabf914632ae|2022-08-04--17-28-53", CHRYSLER.RAM_HD_5TH_GEN, segment=6), - CarTestRoute("3379c85aeedc8285|2023-12-07--17-49-39", CHRYSLER.DODGE_DURANGO), - - CarTestRoute("54827bf84c38b14f|2023-01-25--14-14-11", FORD.FORD_BRONCO_SPORT_MK1), - CarTestRoute("f8eaaccd2a90aef8|2023-05-04--15-10-09", FORD.FORD_ESCAPE_MK4), - CarTestRoute("62241b0c7fea4589|2022-09-01--15-32-49", FORD.FORD_EXPLORER_MK6), - CarTestRoute("e886087f430e7fe7|2023-06-16--23-06-36", FORD.FORD_FOCUS_MK4), - CarTestRoute("bd37e43731e5964b|2023-04-30--10-42-26", FORD.FORD_MAVERICK_MK1), - CarTestRoute("112e4d6e0cad05e1|2023-11-14--08-21-43", FORD.FORD_F_150_LIGHTNING_MK1), - CarTestRoute("e36b272d5679115f/00000369--a3e8499a85", FORD.FORD_F_150_MK14), - CarTestRoute("83a4e056c7072678|2023-11-13--16-51-33", FORD.FORD_MUSTANG_MACH_E_MK1), - CarTestRoute("37998aa0fade36ab/00000000--48f927c4f5", FORD.FORD_RANGER_MK2), - #TestRoute("f1b4c567731f4a1b|2018-04-30--10-15-35", FORD.FUSION), - - CarTestRoute("7cc2a8365b4dd8a9|2018-12-02--12-10-44", GM.GMC_ACADIA), - CarTestRoute("aa20e335f61ba898|2019-02-05--16-59-04", GM.BUICK_REGAL), - CarTestRoute("75a6bcb9b8b40373|2023-03-11--22-47-33", GM.BUICK_LACROSSE), - CarTestRoute("e746f59bc96fd789|2024-01-31--22-25-58", GM.CHEVROLET_EQUINOX), - CarTestRoute("ef8f2185104d862e|2023-02-09--18-37-13", GM.CADILLAC_ESCALADE), - CarTestRoute("46460f0da08e621e|2021-10-26--07-21-46", GM.CADILLAC_ESCALADE_ESV), - CarTestRoute("168f8b3be57f66ae|2023-09-12--21-44-42", GM.CADILLAC_ESCALADE_ESV_2019), - CarTestRoute("c950e28c26b5b168|2018-05-30--22-03-41", GM.CHEVROLET_VOLT), - CarTestRoute("f08912a233c1584f|2022-08-11--18-02-41", GM.CHEVROLET_BOLT_EUV, segment=1), - CarTestRoute("555d4087cf86aa91|2022-12-02--12-15-07", GM.CHEVROLET_BOLT_EUV, segment=14), # Bolt EV - CarTestRoute("38aa7da107d5d252|2022-08-15--16-01-12", GM.CHEVROLET_SILVERADO), - CarTestRoute("5085c761395d1fe6|2023-04-07--18-20-06", GM.CHEVROLET_TRAILBLAZER), - CarTestRoute("162796f1469f2f1b/00000005--6f334eda14", GM.CADILLAC_XT4), - CarTestRoute("477dd485611d1e6e/00000009--85fc06e10a", GM.CHEVROLET_VOLT_2019), - CarTestRoute("a40976dc9f28ba62/0000001f--160e210119", GM.CHEVROLET_TRAVERSE), - CarTestRoute("36c62b5da6f08154/00000052--983c17c5b2", GM.GMC_YUKON), - - CarTestRoute("0e7a2ba168465df5|2020-10-18--14-14-22", HONDA.ACURA_RDX_3G), - CarTestRoute("a74b011b32b51b56|2020-07-26--17-09-36", HONDA.HONDA_CIVIC), - CarTestRoute("a859a044a447c2b0|2020-03-03--18-42-45", HONDA.HONDA_CRV_EU), - CarTestRoute("68aac44ad69f838e|2021-05-18--20-40-52", HONDA.HONDA_CRV), - CarTestRoute("14fed2e5fa0aa1a5|2021-05-25--14-59-42", HONDA.HONDA_CRV_HYBRID), - CarTestRoute("52f3e9ae60c0d886|2021-05-23--15-59-43", HONDA.HONDA_FIT), - CarTestRoute("2c4292a5cd10536c|2021-08-19--21-32-15", HONDA.HONDA_FREED), - CarTestRoute("03be5f2fd5c508d1|2020-04-19--18-44-15", HONDA.HONDA_HRV), - CarTestRoute("320098ff6c5e4730|2023-04-13--17-47-46", HONDA.HONDA_HRV_3G), - CarTestRoute("147613502316e718/00000001--dd141a3140", HONDA.HONDA_HRV_3G), # Brazilian model - CarTestRoute("917b074700869333|2021-05-24--20-40-20", HONDA.ACURA_ILX), - CarTestRoute("08a3deb07573f157|2020-03-06--16-11-19", HONDA.HONDA_ACCORD), # 1.5T - CarTestRoute("1da5847ac2488106|2021-05-24--19-31-50", HONDA.HONDA_ACCORD), # 2.0T - CarTestRoute("085ac1d942c35910|2021-03-25--20-11-15", HONDA.HONDA_ACCORD), # 2021 with new style HUD msgs - CarTestRoute("07585b0da3c88459|2021-05-26--18-52-04", HONDA.HONDA_ACCORD), # hybrid - CarTestRoute("f29e2b57a55e7ad5|2021-03-24--20-52-38", HONDA.HONDA_ACCORD), # hybrid, 2021 with new style HUD msgs - CarTestRoute("1ad763dd22ef1a0e|2020-02-29--18-37-03", HONDA.HONDA_CRV_5G), - CarTestRoute("0a96f86fcfe35964|2020-02-05--07-25-51", HONDA.HONDA_ODYSSEY), - CarTestRoute("d83f36766f8012a5|2020-02-05--18-42-21", HONDA.HONDA_CIVIC_BOSCH_DIESEL), - CarTestRoute("f0890d16a07a236b|2021-05-25--17-27-22", HONDA.HONDA_INSIGHT), - CarTestRoute("07d37d27996096b6|2020-03-04--21-57-27", HONDA.HONDA_PILOT), - CarTestRoute("684e8f96bd491a0e|2021-11-03--11-08-42", HONDA.HONDA_PILOT), # Passport - CarTestRoute("0a78dfbacc8504ef|2020-03-04--13-29-55", HONDA.HONDA_CIVIC_BOSCH), - CarTestRoute("f34a60d68d83b1e5|2020-10-06--14-35-55", HONDA.ACURA_RDX), - CarTestRoute("54fd8451b3974762|2021-04-01--14-50-10", HONDA.HONDA_RIDGELINE), - CarTestRoute("2d5808fae0b38ac6|2021-09-01--17-14-11", HONDA.HONDA_E), - CarTestRoute("f44aa96ace22f34a|2021-12-22--06-22-31", HONDA.HONDA_CIVIC_2022), - CarTestRoute("1f032f5173c8ad99/00000006--573b3fcaf5", HONDA.HONDA_CIVIC_2022), # Civic Type R with manual transmission - CarTestRoute("b1c832ad56b6bc9d/00000010--debfcf5867", HONDA.HONDA_CIVIC_2022), # 2025 Civic Hatch Hybrid with new eCVT transmission - - CarTestRoute("87d7f06ade479c2e|2023-09-11--23-30-11", HYUNDAI.HYUNDAI_AZERA_6TH_GEN), - CarTestRoute("66189dd8ec7b50e6|2023-09-20--07-02-12", HYUNDAI.HYUNDAI_AZERA_HEV_6TH_GEN), - CarTestRoute("6fe86b4e410e4c37|2020-07-22--16-27-13", HYUNDAI.HYUNDAI_GENESIS), - CarTestRoute("b5d6dc830ad63071|2022-12-12--21-28-25", HYUNDAI.GENESIS_GV60_EV_1ST_GEN, segment=12), - CarTestRoute("70c5bec28ec8e345|2020-08-08--12-22-23", HYUNDAI.GENESIS_G70), - CarTestRoute("ca4de5b12321bd98|2022-10-18--21-15-59", HYUNDAI.GENESIS_GV70_1ST_GEN), - CarTestRoute("afe09b9f5d3f3548/00000011--15fefe1c50", HYUNDAI.GENESIS_GV70_ELECTRIFIED_1ST_GEN), - CarTestRoute("afe09b9f5d3f3548/0000001b--a1129a4a15", HYUNDAI.GENESIS_GV70_ELECTRIFIED_1ST_GEN), # openpilot longitudinal enabled - CarTestRoute("6b301bf83f10aa90|2020-11-22--16-45-07", HYUNDAI.GENESIS_G80), - CarTestRoute("66eaa6c3b6b2afc6/00000009--3a5199aabe", HYUNDAI.GENESIS_G80_2ND_GEN_FL), # LKA steering - CarTestRoute("0bbe367c98fa1538|2023-09-16--00-16-49", HYUNDAI.HYUNDAI_CUSTIN_1ST_GEN), - CarTestRoute("f0709d2bc6ca451f|2022-10-15--08-13-54", HYUNDAI.HYUNDAI_SANTA_CRUZ_1ST_GEN), - CarTestRoute("4dbd55df87507948|2022-03-01--09-45-38", HYUNDAI.HYUNDAI_SANTA_FE), - CarTestRoute("bf43d9df2b660eb0|2021-09-23--14-16-37", HYUNDAI.HYUNDAI_SANTA_FE_2022), - CarTestRoute("37398f32561a23ad|2021-11-18--00-11-35", HYUNDAI.HYUNDAI_SANTA_FE_HEV_2022), - CarTestRoute("656ac0d830792fcc|2021-12-28--14-45-56", HYUNDAI.HYUNDAI_SANTA_FE_PHEV_2022, segment=1), - CarTestRoute("de59124955b921d8|2023-06-24--00-12-50", HYUNDAI.KIA_CARNIVAL_4TH_GEN), - CarTestRoute("409c9409979a8abc|2023-07-11--09-06-44", HYUNDAI.KIA_CARNIVAL_4TH_GEN), # Chinese model - CarTestRoute("e0e98335f3ebc58f|2021-03-07--16-38-29", HYUNDAI.KIA_CEED), - CarTestRoute("7653b2bce7bcfdaa|2020-03-04--15-34-32", HYUNDAI.KIA_OPTIMA_G4), - CarTestRoute("018654717bc93d7d|2022-09-19--23-11-10", HYUNDAI.KIA_OPTIMA_G4_FL, segment=0), - CarTestRoute("f9716670b2481438|2023-08-23--14-49-50", HYUNDAI.KIA_OPTIMA_H), - CarTestRoute("6a42c1197b2a8179|2023-09-21--10-23-44", HYUNDAI.KIA_OPTIMA_H_G4_FL), - CarTestRoute("c75a59efa0ecd502|2021-03-11--20-52-55", HYUNDAI.KIA_SELTOS), - CarTestRoute("5b7c365c50084530|2020-04-15--16-13-24", HYUNDAI.HYUNDAI_SONATA), - CarTestRoute("b2a38c712dcf90bd|2020-05-18--18-12-48", HYUNDAI.HYUNDAI_SONATA_LF), - CarTestRoute("c344fd2492c7a9d2|2023-12-11--09-03-23", HYUNDAI.HYUNDAI_STARIA_4TH_GEN), - CarTestRoute("fb3fd42f0baaa2f8|2022-03-30--15-25-05", HYUNDAI.HYUNDAI_TUCSON), - CarTestRoute("db68bbe12250812c|2022-12-05--00-54-12", HYUNDAI.HYUNDAI_TUCSON_4TH_GEN), # 2023 - CarTestRoute("36e10531feea61a4|2022-07-25--13-37-42", HYUNDAI.HYUNDAI_TUCSON_4TH_GEN), # hybrid - CarTestRoute("5875672fc1d4bf57|2020-07-23--21-33-28", HYUNDAI.KIA_SORENTO), - CarTestRoute("1d0d000db3370fd0|2023-01-04--22-28-42", HYUNDAI.KIA_SORENTO_4TH_GEN, segment=5), - CarTestRoute("fc19648042eb6896|2023-08-16--11-43-27", HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, segment=14), - CarTestRoute("628935d7d3e5f4f7|2022-11-30--01-12-46", HYUNDAI.KIA_SORENTO_HEV_4TH_GEN), # plug-in hybrid - CarTestRoute("9c917ba0d42ffe78|2020-04-17--12-43-19", HYUNDAI.HYUNDAI_PALISADE), - CarTestRoute("05a8f0197fdac372|2022-10-19--14-14-09", HYUNDAI.HYUNDAI_IONIQ_5), # LKA steering - CarTestRoute("eb4eae1476647463|2023-08-26--18-07-04", HYUNDAI.HYUNDAI_IONIQ_6, segment=6), # LKA steering - CarTestRoute("3f29334d6134fcd4|2022-03-30--22-00-50", HYUNDAI.HYUNDAI_IONIQ_PHEV_2019), - CarTestRoute("fa8db5869167f821|2021-06-10--22-50-10", HYUNDAI.HYUNDAI_IONIQ_PHEV), - CarTestRoute("e1107f9d04dfb1e2|2023-09-05--22-32-12", HYUNDAI.HYUNDAI_IONIQ_PHEV), # openpilot longitudinal enabled - CarTestRoute("2c5cf2dd6102e5da|2020-12-17--16-06-44", HYUNDAI.HYUNDAI_IONIQ_EV_2020), - CarTestRoute("610ebb9faaad6b43|2020-06-13--15-28-36", HYUNDAI.HYUNDAI_IONIQ_EV_LTD), - CarTestRoute("2c5cf2dd6102e5da|2020-06-26--16-00-08", HYUNDAI.HYUNDAI_IONIQ), - CarTestRoute("012c95f06918eca4|2023-01-15--11-19-36", HYUNDAI.HYUNDAI_IONIQ), # openpilot longitudinal enabled - CarTestRoute("ab59fe909f626921|2021-10-18--18-34-28", HYUNDAI.HYUNDAI_IONIQ_HEV_2022), - CarTestRoute("22d955b2cd499c22|2020-08-10--19-58-21", HYUNDAI.HYUNDAI_KONA), - CarTestRoute("0099bdb24d82951b/00000005--c38d940b04", HYUNDAI.HYUNDAI_KONA_2022), - CarTestRoute("efc48acf44b1e64d|2021-05-28--21-05-04", HYUNDAI.HYUNDAI_KONA_EV), - CarTestRoute("f90d3cd06caeb6fa|2023-09-06--17-15-47", HYUNDAI.HYUNDAI_KONA_EV), # openpilot longitudinal enabled - CarTestRoute("ff973b941a69366f|2022-07-28--22-01-19", HYUNDAI.HYUNDAI_KONA_EV_2022, segment=11), - CarTestRoute("1618132d68afc876|2023-08-27--09-32-14", HYUNDAI.HYUNDAI_KONA_EV_2ND_GEN, segment=13), - CarTestRoute("49f3c13141b6bc87|2021-07-28--08-05-13", HYUNDAI.HYUNDAI_KONA_HEV), - CarTestRoute("a74afe0cf708748f/0000000e--a2885a9a71", HYUNDAI.HYUNDAI_NEXO_1ST_GEN), - CarTestRoute("a74afe0cf708748f/0000000c--b476a8fd00", HYUNDAI.HYUNDAI_NEXO_1ST_GEN), # openpilot longitudinal enabled - CarTestRoute("5dddcbca6eb66c62|2020-07-26--13-24-19", HYUNDAI.KIA_STINGER), - CarTestRoute("5b50b883a4259afb|2022-11-09--15-00-42", HYUNDAI.KIA_STINGER_2022), - CarTestRoute("d624b3d19adce635|2020-08-01--14-59-12", HYUNDAI.HYUNDAI_VELOSTER), - CarTestRoute("d545129f3ca90f28|2022-10-19--09-22-54", HYUNDAI.KIA_EV6), # LKA steering - CarTestRoute("68d6a96e703c00c9|2022-09-10--16-09-39", HYUNDAI.KIA_EV6), # LFA steering - CarTestRoute("9b25e8c1484a1b67|2023-04-13--10-41-45", HYUNDAI.KIA_EV6), - CarTestRoute("007d5e4ad9f86d13|2021-09-30--15-09-23", HYUNDAI.KIA_K5_2021), - CarTestRoute("c58dfc9fc16590e0|2023-01-14--13-51-48", HYUNDAI.KIA_K5_HEV_2020), - CarTestRoute("78ad5150de133637|2023-09-13--16-15-57", HYUNDAI.KIA_K8_HEV_1ST_GEN), - CarTestRoute("50c6c9b85fd1ff03|2020-10-26--17-56-06", HYUNDAI.KIA_NIRO_EV), - CarTestRoute("b153671049a867b3|2023-04-05--10-00-30", HYUNDAI.KIA_NIRO_EV_2ND_GEN), - CarTestRoute("173219cf50acdd7b|2021-07-05--10-27-41", HYUNDAI.KIA_NIRO_PHEV), - CarTestRoute("23349923ba5c4e3b|2023-12-02--08-51-54", HYUNDAI.KIA_NIRO_PHEV_2022), - CarTestRoute("34a875f29f69841a|2021-07-29--13-02-09", HYUNDAI.KIA_NIRO_HEV_2021), - CarTestRoute("db04d2c63990e3ba|2023-02-08--16-52-39", HYUNDAI.KIA_NIRO_HEV_2ND_GEN), - CarTestRoute("50a2212c41f65c7b|2021-05-24--16-22-06", HYUNDAI.KIA_FORTE), - CarTestRoute("192283cdbb7a58c2|2022-10-15--01-43-18", HYUNDAI.KIA_SPORTAGE_5TH_GEN), - CarTestRoute("09559f1fcaed4704|2023-11-16--02-24-57", HYUNDAI.KIA_SPORTAGE_5TH_GEN), # openpilot longitudinal - CarTestRoute("b3537035ffe6a7d6|2022-10-17--15-23-49", HYUNDAI.KIA_SPORTAGE_5TH_GEN), # hybrid - CarTestRoute("c5ac319aa9583f83|2021-06-01--18-18-31", HYUNDAI.HYUNDAI_ELANTRA), - CarTestRoute("734ef96182ddf940|2022-10-02--16-41-44", HYUNDAI.HYUNDAI_ELANTRA_GT_I30), - CarTestRoute("82e9cdd3f43bf83e|2021-05-15--02-42-51", HYUNDAI.HYUNDAI_ELANTRA_2021), - CarTestRoute("715ac05b594e9c59|2021-06-20--16-21-07", HYUNDAI.HYUNDAI_ELANTRA_HEV_2021), - CarTestRoute("7120aa90bbc3add7|2021-08-02--07-12-31", HYUNDAI.HYUNDAI_SONATA_HYBRID), - CarTestRoute("715ac05b594e9c59|2021-10-27--23-24-56", HYUNDAI.GENESIS_G70_2020), - CarTestRoute("6b0d44d22df18134|2023-05-06--10-36-55", HYUNDAI.GENESIS_GV80), - - CarTestRoute("00c829b1b7613dea|2021-06-24--09-10-10", TOYOTA.TOYOTA_ALPHARD_TSS2), - CarTestRoute("912119ebd02c7a42|2022-03-19--07-24-50", TOYOTA.TOYOTA_ALPHARD_TSS2), # hybrid - CarTestRoute("000cf3730200c71c|2021-05-24--10-42-05", TOYOTA.TOYOTA_AVALON), - CarTestRoute("0bb588106852abb7|2021-05-26--12-22-01", TOYOTA.TOYOTA_AVALON_2019), - CarTestRoute("87bef2930af86592|2021-05-30--09-40-54", TOYOTA.TOYOTA_AVALON_2019), # hybrid - CarTestRoute("e9966711cfb04ce3|2022-01-11--07-59-43", TOYOTA.TOYOTA_AVALON_TSS2), - CarTestRoute("eca1080a91720a54|2022-03-17--13-32-29", TOYOTA.TOYOTA_AVALON_TSS2), # hybrid - CarTestRoute("6cdecc4728d4af37|2020-02-23--15-44-18", TOYOTA.TOYOTA_CAMRY), - CarTestRoute("2f37c007683e85ba|2023-09-02--14-39-44", TOYOTA.TOYOTA_CAMRY), # openpilot longitudinal, with radar CAN filter - CarTestRoute("54034823d30962f5|2021-05-24--06-37-34", TOYOTA.TOYOTA_CAMRY), # hybrid - CarTestRoute("3456ad0cd7281b24|2020-12-13--17-45-56", TOYOTA.TOYOTA_CAMRY_TSS2), - CarTestRoute("ffccc77938ddbc44|2021-01-04--16-55-41", TOYOTA.TOYOTA_CAMRY_TSS2), # hybrid - CarTestRoute("4e45c89c38e8ec4d|2021-05-02--02-49-28", TOYOTA.TOYOTA_COROLLA), - CarTestRoute("5f5afb36036506e4|2019-05-14--02-09-54", TOYOTA.TOYOTA_COROLLA_TSS2), - CarTestRoute("5ceff72287a5c86c|2019-10-19--10-59-02", TOYOTA.TOYOTA_COROLLA_TSS2), # hybrid - CarTestRoute("d2525c22173da58b|2021-04-25--16-47-04", TOYOTA.TOYOTA_PRIUS), - CarTestRoute("b14c5b4742e6fc85|2020-07-28--19-50-11", TOYOTA.TOYOTA_RAV4), - CarTestRoute("32a7df20486b0f70|2020-02-06--16-06-50", TOYOTA.TOYOTA_RAV4H), - CarTestRoute("cdf2f7de565d40ae|2019-04-25--03-53-41", TOYOTA.TOYOTA_RAV4_TSS2), - CarTestRoute("a5c341bb250ca2f0|2022-05-18--16-05-17", TOYOTA.TOYOTA_RAV4_TSS2_2022), - CarTestRoute("ad5a3fa719bc2f83|2023-10-17--19-48-42", TOYOTA.TOYOTA_RAV4_TSS2_2023), - CarTestRoute("7e34a988419b5307|2019-12-18--19-13-30", TOYOTA.TOYOTA_RAV4_TSS2), # hybrid - CarTestRoute("2475fb3eb2ffcc2e|2022-04-29--12-46-23", TOYOTA.TOYOTA_RAV4_TSS2_2022), # hybrid - CarTestRoute("20ba9ade056a8c7b|2021-02-08--21-57-35", TOYOTA.TOYOTA_RAV4_PRIME), # SecOC - CarTestRoute("8bfb000e03b2a257/00000004--f9eee5f52e", TOYOTA.TOYOTA_SIENNA_4TH_GEN), # SecOC - CarTestRoute("0b54d0594d924cd9/00000057--b6206a3205", TOYOTA.TOYOTA_YARIS), # SecOC - CarTestRoute("7a31f030957b9c85|2023-04-01--14-12-51", TOYOTA.LEXUS_ES), - CarTestRoute("37041c500fd30100|2020-12-30--12-17-24", TOYOTA.LEXUS_ES), # hybrid - CarTestRoute("e6a24be49a6cd46e|2019-10-29--10-52-42", TOYOTA.LEXUS_ES_TSS2), - CarTestRoute("f49e8041283f2939|2019-05-30--11-51-51", TOYOTA.LEXUS_ES_TSS2), # hybrid - CarTestRoute("da23c367491f53e2|2021-05-21--09-09-11", TOYOTA.LEXUS_CTH, segment=3), - CarTestRoute("32696cea52831b02|2021-11-19--18-13-30", TOYOTA.LEXUS_RC), - CarTestRoute("ab9b64a5e5960cba|2023-10-24--17-32-08", TOYOTA.LEXUS_GS_F), - CarTestRoute("886fcd8408d570e9|2020-01-29--02-18-55", TOYOTA.LEXUS_RX), - CarTestRoute("d27ad752e9b08d4f|2021-05-26--19-39-51", TOYOTA.LEXUS_RX), # hybrid - CarTestRoute("01b22eb2ed121565|2020-02-02--11-25-51", TOYOTA.LEXUS_RX_TSS2), - CarTestRoute("b74758c690a49668|2020-05-20--15-58-57", TOYOTA.LEXUS_RX_TSS2), # hybrid - CarTestRoute("964c09eb11ca8089|2020-11-03--22-04-00", TOYOTA.LEXUS_NX), - CarTestRoute("ec429c0f37564e3c|2020-02-01--17-28-12", TOYOTA.LEXUS_NX), # hybrid - CarTestRoute("3fd5305f8b6ca765|2021-04-28--19-26-49", TOYOTA.LEXUS_NX_TSS2), - CarTestRoute("09ae96064ed85a14|2022-06-09--12-22-31", TOYOTA.LEXUS_NX_TSS2), # hybrid - CarTestRoute("4765fbbf59e3cd88|2024-02-06--17-45-32", TOYOTA.LEXUS_LC_TSS2), - CarTestRoute("0a302ffddbb3e3d3|2020-02-08--16-19-08", TOYOTA.TOYOTA_HIGHLANDER_TSS2), - CarTestRoute("437e4d2402abf524|2021-05-25--07-58-50", TOYOTA.TOYOTA_HIGHLANDER_TSS2), # hybrid - CarTestRoute("3183cd9b021e89ce|2021-05-25--10-34-44", TOYOTA.TOYOTA_HIGHLANDER), - CarTestRoute("80d16a262e33d57f|2021-05-23--20-01-43", TOYOTA.TOYOTA_HIGHLANDER), # hybrid - CarTestRoute("eb6acd681135480d|2019-06-20--20-00-00", TOYOTA.TOYOTA_SIENNA), - CarTestRoute("2e07163a1ba9a780|2019-08-25--13-15-13", TOYOTA.LEXUS_IS), - CarTestRoute("649bf2997ada6e3a|2023-08-08--18-04-22", TOYOTA.LEXUS_IS_TSS2), - CarTestRoute("0a0de17a1e6a2d15|2020-09-21--21-24-41", TOYOTA.TOYOTA_PRIUS_TSS2), - CarTestRoute("9b36accae406390e|2021-03-30--10-41-38", TOYOTA.TOYOTA_MIRAI), - CarTestRoute("cd9cff4b0b26c435|2021-05-13--15-12-39", TOYOTA.TOYOTA_CHR), - CarTestRoute("57858ede0369a261|2021-05-18--20-34-20", TOYOTA.TOYOTA_CHR), # hybrid - CarTestRoute("ea8fbe72b96a185c|2023-02-08--15-11-46", TOYOTA.TOYOTA_CHR_TSS2), - CarTestRoute("6719965b0e1d1737|2023-02-09--22-44-05", TOYOTA.TOYOTA_CHR_TSS2), # hybrid - CarTestRoute("6719965b0e1d1737|2023-08-29--06-40-05", TOYOTA.TOYOTA_CHR_TSS2), # hybrid, openpilot longitudinal, radar disabled - CarTestRoute("14623aae37e549f3|2021-10-24--01-20-49", TOYOTA.TOYOTA_PRIUS_V), - - CarTestRoute("202c40641158a6e5|2021-09-21--09-43-24", VOLKSWAGEN.VOLKSWAGEN_ARTEON_MK1), - CarTestRoute("2c68dda277d887ac|2021-05-11--15-22-20", VOLKSWAGEN.VOLKSWAGEN_ATLAS_MK1), - CarTestRoute("ffcd23abbbd02219|2024-02-28--14-59-38", VOLKSWAGEN.VOLKSWAGEN_CADDY_MK3), - CarTestRoute("cae14e88932eb364|2021-03-26--14-43-28", VOLKSWAGEN.VOLKSWAGEN_GOLF_MK7), # Stock ACC - CarTestRoute("3cfdec54aa035f3f|2022-10-13--14-58-58", VOLKSWAGEN.VOLKSWAGEN_GOLF_MK7), # openpilot longitudinal - CarTestRoute("578742b26807f756|00000010--41ee3e5bec", VOLKSWAGEN.VOLKSWAGEN_JETTA_MK6), - CarTestRoute("58a7d3b707987d65|2021-03-25--17-26-37", VOLKSWAGEN.VOLKSWAGEN_JETTA_MK7), - CarTestRoute("4d134e099430fba2|2021-03-26--00-26-06", VOLKSWAGEN.VOLKSWAGEN_PASSAT_MK8), - CarTestRoute("3cfdec54aa035f3f|2022-07-19--23-45-10", VOLKSWAGEN.VOLKSWAGEN_PASSAT_NMS), - CarTestRoute("0cd0b7f7e31a3853|2021-11-03--19-30-22", VOLKSWAGEN.VOLKSWAGEN_POLO_MK6), - CarTestRoute("064d1816e448f8eb|2022-09-29--15-32-34", VOLKSWAGEN.VOLKSWAGEN_SHARAN_MK2), - CarTestRoute("7d82b2f3a9115f1f|2021-10-21--15-39-42", VOLKSWAGEN.VOLKSWAGEN_TAOS_MK1), - CarTestRoute("2744c89a8dda9a51|2021-07-24--21-28-06", VOLKSWAGEN.VOLKSWAGEN_TCROSS_MK1), - CarTestRoute("2cef8a0b898f331a|2021-03-25--20-13-57", VOLKSWAGEN.VOLKSWAGEN_TIGUAN_MK2), - CarTestRoute("a589dcc642fdb10a|2021-06-14--20-54-26", VOLKSWAGEN.VOLKSWAGEN_TOURAN_MK2), - CarTestRoute("a459f4556782eba1|2021-09-19--09-48-00", VOLKSWAGEN.VOLKSWAGEN_TRANSPORTER_T61), - CarTestRoute("0cd0b7f7e31a3853|2021-11-18--00-38-32", VOLKSWAGEN.VOLKSWAGEN_TROC_MK1), - CarTestRoute("07667b885add75fd|2021-01-23--19-48-42", VOLKSWAGEN.AUDI_A3_MK3), - CarTestRoute("6c6b466346192818|2021-06-06--14-17-47", VOLKSWAGEN.AUDI_Q2_MK1), - CarTestRoute("0cd0b7f7e31a3853|2021-12-03--03-12-05", VOLKSWAGEN.AUDI_Q3_MK2), - CarTestRoute("8f205bdd11bcbb65|2021-03-26--01-00-17", VOLKSWAGEN.SEAT_ATECA_MK1), - CarTestRoute("fc6b6c9a3471c846|2021-05-27--13-39-56", VOLKSWAGEN.SEAT_ATECA_MK1), # Leon - CarTestRoute("0bbe367c98fa1538|2023-03-04--17-46-11", VOLKSWAGEN.SKODA_FABIA_MK4), - CarTestRoute("12d6ae3057c04b0d|2021-09-15--00-04-07", VOLKSWAGEN.SKODA_KAMIQ_MK1), - CarTestRoute("12d6ae3057c04b0d|2021-09-04--21-21-21", VOLKSWAGEN.SKODA_KAROQ_MK1), - CarTestRoute("90434ff5d7c8d603|2021-03-15--12-07-31", VOLKSWAGEN.SKODA_KODIAQ_MK1), - CarTestRoute("66e5edc3a16459c5|2021-05-25--19-00-29", VOLKSWAGEN.SKODA_OCTAVIA_MK3), - CarTestRoute("026b6d18fba6417f|2021-03-26--09-17-04", VOLKSWAGEN.SKODA_KAMIQ_MK1), # Scala - CarTestRoute("b2e9858e29db492b|2021-03-26--16-58-42", VOLKSWAGEN.SKODA_SUPERB_MK3), - - CarTestRoute("3c8f0c502e119c1c|2020-06-30--12-58-02", SUBARU.SUBARU_ASCENT), - CarTestRoute("c321c6b697c5a5ff|2020-06-23--11-04-33", SUBARU.SUBARU_FORESTER), - CarTestRoute("791340bc01ed993d|2019-03-10--16-28-08", SUBARU.SUBARU_IMPREZA), - CarTestRoute("8bf7e79a3ce64055|2021-05-24--09-36-27", SUBARU.SUBARU_IMPREZA_2020), - CarTestRoute("8de015561e1ea4a0|2023-08-29--17-08-31", SUBARU.SUBARU_IMPREZA), # openpilot longitudinal - # CarTestRoute("c3d1ccb52f5f9d65|2023-07-22--01-23-20", SUBARU.OUTBACK, segment=9), # gen2 longitudinal, eyesight disabled - CarTestRoute("1bbe6bf2d62f58a8|2022-07-14--17-11-43", SUBARU.SUBARU_OUTBACK, segment=10), - CarTestRoute("c56e69bbc74b8fad|2022-08-18--09-43-51", SUBARU.SUBARU_LEGACY, segment=3), - CarTestRoute("f4e3a0c511a076f4|2022-08-04--16-16-48", SUBARU.SUBARU_CROSSTREK_HYBRID, segment=2), - CarTestRoute("7fd1e4f3a33c1673|2022-12-04--15-09-53", SUBARU.SUBARU_FORESTER_2022, segment=4), - CarTestRoute("f3b34c0d2632aa83|2023-07-23--20-43-25", SUBARU.SUBARU_OUTBACK_2023, segment=7), - CarTestRoute("99437cef6d5ff2ee|2023-03-13--21-21-38", SUBARU.SUBARU_ASCENT_2023, segment=7), - # Pre-global, dashcam - CarTestRoute("95441c38ae8c130e|2020-06-08--12-10-17", SUBARU.SUBARU_FORESTER_PREGLOBAL), - CarTestRoute("df5ca7660000fba8|2020-06-16--17-37-19", SUBARU.SUBARU_LEGACY_PREGLOBAL), - CarTestRoute("5ab784f361e19b78|2020-06-08--16-30-41", SUBARU.SUBARU_OUTBACK_PREGLOBAL), - CarTestRoute("e19eb5d5353b1ac1|2020-08-09--14-37-56", SUBARU.SUBARU_OUTBACK_PREGLOBAL_2018), - - CarTestRoute("fbbfa6af821552b9|2020-03-03--08-09-43", NISSAN.NISSAN_XTRAIL), - CarTestRoute("5b7c365c50084530|2020-03-25--22-10-13", NISSAN.NISSAN_LEAF), - CarTestRoute("22c3dcce2dd627eb|2020-12-30--16-38-48", NISSAN.NISSAN_LEAF_IC), - CarTestRoute("059ab9162e23198e|2020-05-30--09-41-01", NISSAN.NISSAN_ROGUE), - CarTestRoute("b72d3ec617c0a90f|2020-12-11--15-38-17", NISSAN.NISSAN_ALTIMA), - - CarTestRoute("32a319f057902bb3|2020-04-27--15-18-58", MAZDA.MAZDA_CX5), - CarTestRoute("10b5a4b380434151|2020-08-26--17-11-45", MAZDA.MAZDA_CX9), - CarTestRoute("74f1038827005090|2020-08-26--20-05-50", MAZDA.MAZDA_3), - CarTestRoute("fb53c640f499b73d|2021-06-01--04-17-56", MAZDA.MAZDA_6), - CarTestRoute("f6d5b1a9d7a1c92e|2021-07-08--06-56-59", MAZDA.MAZDA_CX9_2021), - CarTestRoute("a4af1602d8e668ac|2022-02-03--12-17-07", MAZDA.MAZDA_CX5_2022), - - CarTestRoute("bc095dc92e101734/000000db--ee9fe46e57", RIVIAN.RIVIAN_R1_GEN1), - - #CarTestRoute("46cdc864ec865f4b/00000007--42f94db730", TESLA.TESLA_MODEL_Y), - - # Segments that test specific issues - # Controls mismatch due to standstill threshold - CarTestRoute("bec2dcfde6a64235|2022-04-08--14-21-32", HONDA.HONDA_CRV_HYBRID, segment=22), -] diff --git a/opendbc_repo/opendbc/car/tests/test_can_fingerprint.py b/opendbc_repo/opendbc/car/tests/test_can_fingerprint.py deleted file mode 100644 index 30dba60008..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_can_fingerprint.py +++ /dev/null @@ -1,55 +0,0 @@ -import pytest -from opendbc.car.can_definitions import CanData -from opendbc.car.car_helpers import FRAME_FINGERPRINT, can_fingerprint -from opendbc.car.fingerprints import _FINGERPRINTS as FINGERPRINTS - - -class TestCanFingerprint: - @pytest.mark.parametrize("car_model, fingerprints", FINGERPRINTS.items()) - def test_can_fingerprint(self, car_model, fingerprints): - """Tests online fingerprinting function on offline fingerprints""" - - for fingerprint in fingerprints: # can have multiple fingerprints for each platform - can = [CanData(address=address, dat=b'\x00' * length, src=src) - for address, length in fingerprint.items() for src in (0, 1)] - - fingerprint_iter = iter([can]) - car_fingerprint, finger = can_fingerprint(lambda **kwargs: [next(fingerprint_iter, [])]) # noqa: B023 - - assert car_fingerprint == car_model - assert finger[0] == fingerprint - assert finger[1] == fingerprint - assert finger[2] == {} - - def test_timing(self, subtests): - # just pick any CAN fingerprinting car - car_model = "CHEVROLET_BOLT_EUV" - fingerprint = FINGERPRINTS[car_model][0] - - cases = [] - - # case 1 - one match, make sure we keep going for 100 frames - can = [CanData(address=address, dat=b'\x00' * length, src=src) - for address, length in fingerprint.items() for src in (0, 1)] - cases.append((FRAME_FINGERPRINT, car_model, can)) - - # case 2 - no matches, make sure we keep going for 100 frames - can = [CanData(address=1, dat=b'\x00' * 1, src=src) for src in (0, 1)] # uncommon address - cases.append((FRAME_FINGERPRINT, None, can)) - - # case 3 - multiple matches, make sure we keep going for 200 frames to try to eliminate some - can = [CanData(address=2016, dat=b'\x00' * 8, src=src) for src in (0, 1)] # common address - cases.append((FRAME_FINGERPRINT * 2, None, can)) - - for expected_frames, car_model, can in cases: - with subtests.test(expected_frames=expected_frames, car_model=car_model): - frames = 0 - - def can_recv(**kwargs): - nonlocal frames - frames += 1 - return [can] # noqa: B023 - - car_fingerprint, _ = can_fingerprint(can_recv) - assert car_fingerprint == car_model - assert frames == expected_frames + 2 # TODO: fix extra frames diff --git a/opendbc_repo/opendbc/car/tests/test_car_interfaces.py b/opendbc_repo/opendbc/car/tests/test_car_interfaces.py deleted file mode 100644 index f33deed6ed..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_car_interfaces.py +++ /dev/null @@ -1,148 +0,0 @@ -import os -import math -import hypothesis.strategies as st -import pytest -from hypothesis import Phase, given, settings -from collections.abc import Callable -from typing import Any - -from opendbc.car import DT_CTRL, CanData, gen_empty_fingerprint, structs -from opendbc.car.car_helpers import interfaces -from opendbc.car.fingerprints import FW_VERSIONS -from opendbc.car.fw_versions import FW_QUERY_CONFIGS -from opendbc.car.interfaces import get_interface_attr -from opendbc.car.mock.values import CAR as MOCK -from opendbc.car.values import PLATFORMS - -DrawType = Callable[[st.SearchStrategy], Any] - -ALL_ECUS = {ecu for ecus in FW_VERSIONS.values() for ecu in ecus.keys()} -ALL_ECUS |= {ecu for config in FW_QUERY_CONFIGS.values() for ecu in config.extra_ecus} - -ALL_REQUESTS = {tuple(r.request) for config in FW_QUERY_CONFIGS.values() for r in config.requests} - -MAX_EXAMPLES = int(os.environ.get('MAX_EXAMPLES', '15')) - - -def get_fuzzy_car_interface_args(draw: DrawType) -> dict: - # Fuzzy CAN fingerprints and FW versions to test more states of the CarInterface - fingerprint_strategy = st.fixed_dictionaries({key: st.dictionaries(st.integers(min_value=0, max_value=0x800), - st.integers(min_value=0, max_value=64)) for key in - gen_empty_fingerprint()}) - - # only pick from possible ecus to reduce search space - car_fw_strategy = st.lists(st.sampled_from(sorted(ALL_ECUS))) - - params_strategy = st.fixed_dictionaries({ - 'fingerprints': fingerprint_strategy, - 'car_fw': car_fw_strategy, - 'alpha_long': st.booleans(), - }) - - params: dict = draw(params_strategy) - params['car_fw'] = [structs.CarParams.CarFw(ecu=fw[0], address=fw[1], subAddress=fw[2] or 0, - request=draw(st.sampled_from(sorted(ALL_REQUESTS)))) - for fw in params['car_fw']] - return params - - -class TestCarInterfaces: - # FIXME: Due to the lists used in carParams, Phase.target is very slow and will cause - # many generated examples to overrun when max_examples > ~20, don't use it - @pytest.mark.parametrize("car_name", sorted(PLATFORMS)) - @settings(max_examples=MAX_EXAMPLES, deadline=None, - phases=(Phase.reuse, Phase.generate, Phase.shrink)) - @given(data=st.data()) - def test_car_interfaces(self, car_name, data): - CarInterface = interfaces[car_name] - - args = get_fuzzy_car_interface_args(data.draw) - - car_params = CarInterface.get_params(car_name, args['fingerprints'], args['car_fw'], - alpha_long=args['alpha_long'], docs=False) - car_interface = CarInterface(car_params) - assert car_params - assert car_interface - - assert car_params.mass > 1 - assert car_params.wheelbase > 0 - # centerToFront is center of gravity to front wheels, assert a reasonable range - assert car_params.wheelbase * 0.3 < car_params.centerToFront < car_params.wheelbase * 0.7 - assert car_params.maxLateralAccel > 0 - - # Longitudinal sanity checks - assert len(car_params.longitudinalTuning.kpV) == len(car_params.longitudinalTuning.kpBP) - assert len(car_params.longitudinalTuning.kiV) == len(car_params.longitudinalTuning.kiBP) - - # Lateral sanity checks - if car_params.steerControlType != structs.CarParams.SteerControlType.angle: - tune = car_params.lateralTuning - if tune.which() == 'pid': - if car_name != MOCK.MOCK: - assert not math.isnan(tune.pid.kf) and tune.pid.kf > 0 - assert len(tune.pid.kpV) > 0 and len(tune.pid.kpV) == len(tune.pid.kpBP) - assert len(tune.pid.kiV) > 0 and len(tune.pid.kiV) == len(tune.pid.kiBP) - - elif tune.which() == 'torque': - assert not math.isnan(tune.torque.kf) and tune.torque.kf > 0 - assert not math.isnan(tune.torque.friction) and tune.torque.friction > 0 - - # Run car interface - # TODO: use hypothesis to generate random messages - now_nanos = 0 - CC = structs.CarControl().as_reader() - for _ in range(10): - car_interface.update([]) - car_interface.apply(CC, now_nanos) - now_nanos += DT_CTRL * 1e9 # 10 ms - - CC = structs.CarControl() - CC.enabled = True - CC.latActive = True - CC.longActive = True - CC = CC.as_reader() - for _ in range(10): - car_interface.update([]) - car_interface.apply(CC, now_nanos) - now_nanos += DT_CTRL * 1e9 # 10ms - - # Test radar interface - radar_interface = CarInterface.RadarInterface(car_params) - assert radar_interface - - # Run radar interface once - radar_interface.update([]) - if not car_params.radarUnavailable and radar_interface.rcp is not None and \ - hasattr(radar_interface, '_update') and hasattr(radar_interface, 'trigger_msg'): - radar_interface._update([radar_interface.trigger_msg]) - - # Test radar fault - if not car_params.radarUnavailable and radar_interface.rcp is not None: - cans = [(0, [CanData(0, b'', 0) for _ in range(5)])] - rr = radar_interface.update(cans) - assert rr is None or len(rr.errors) > 0 - - def test_interface_attrs(self): - """Asserts basic behavior of interface attribute getter""" - num_brands = len(get_interface_attr('CAR')) - assert num_brands >= 12 - - # Should return value for all brands when not combining, even if attribute doesn't exist - ret = get_interface_attr('FAKE_ATTR') - assert len(ret) == num_brands - - # Make sure we can combine dicts - ret = get_interface_attr('DBC', combine_brands=True) - assert len(ret) >= 160 - - # We don't support combining non-dicts - ret = get_interface_attr('CAR', combine_brands=True) - assert len(ret) == 0 - - # If brand has None value, it shouldn't return when ignore_none=True is specified - none_brands = {b for b, v in get_interface_attr('FINGERPRINTS').items() if v is None} - assert len(none_brands) >= 1 - - ret = get_interface_attr('FINGERPRINTS', ignore_none=True) - none_brands_in_ret = none_brands.intersection(ret) - assert len(none_brands_in_ret) == 0, f'Brands with None values in ignore_none=True result: {none_brands_in_ret}' diff --git a/opendbc_repo/opendbc/car/tests/test_docs.py b/opendbc_repo/opendbc/car/tests/test_docs.py deleted file mode 100644 index f09e847120..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_docs.py +++ /dev/null @@ -1,77 +0,0 @@ -from collections import defaultdict -import pytest -import re - -from opendbc.car.car_helpers import interfaces -from opendbc.car.docs import get_all_car_docs -from opendbc.car.docs_definitions import Cable, Column, PartType, Star, SupportType -from opendbc.car.honda.values import CAR as HONDA -from opendbc.car.values import PLATFORMS - - -class TestCarDocs: - @classmethod - def setup_class(cls): - cls.all_cars = get_all_car_docs() - - def test_duplicate_years(self, subtests): - make_model_years = defaultdict(list) - for car in self.all_cars: - with subtests.test(car_docs_name=car.name): - if car.support_type != SupportType.UPSTREAM: - pytest.skip() - - make_model = (car.make, car.model) - for year in car.year_list: - assert year not in make_model_years[make_model], f"{car.name}: Duplicate model year" - make_model_years[make_model].append(year) - - def test_missing_car_docs(self, subtests): - all_car_docs_platforms = [name for name, config in PLATFORMS.items()] - for platform in sorted(interfaces.keys()): - with subtests.test(platform=platform): - assert platform in all_car_docs_platforms, f"Platform: {platform} doesn't have a CarDocs entry" - - def test_naming_conventions(self, subtests): - # Asserts market-standard car naming conventions by brand - for car in self.all_cars: - with subtests.test(car=car.name): - tokens = car.model.lower().split(" ") - if car.brand == "hyundai": - assert "phev" not in tokens, "Use `Plug-in Hybrid`" - assert "hev" not in tokens, "Use `Hybrid`" - if "plug-in hybrid" in car.model.lower(): - assert "Plug-in Hybrid" in car.model, "Use correct capitalization" - if car.make != "Kia": - assert "ev" not in tokens, "Use `Electric`" - elif car.brand == "toyota": - if "rav4" in tokens: - assert "RAV4" in car.model, "Use correct capitalization" - - def test_torque_star(self, subtests): - # Asserts brand-specific assumptions around steering torque star - for car in self.all_cars: - with subtests.test(car=car.name): - # honda sanity check, it's the definition of a no torque star - if car.car_fingerprint in (HONDA.HONDA_ACCORD, HONDA.HONDA_CIVIC, HONDA.HONDA_CRV, HONDA.HONDA_ODYSSEY, HONDA.HONDA_PILOT): - assert car.row[Column.STEERING_TORQUE] == Star.EMPTY, f"{car.name} has full torque star" - elif car.brand in ("toyota", "hyundai"): - assert car.row[Column.STEERING_TORQUE] != Star.EMPTY, f"{car.name} has no torque star" - - def test_year_format(self, subtests): - for car in self.all_cars: - with subtests.test(car=car.name): - assert re.search(r"\d{4}-\d{4}", car.name) is None, f"Format years correctly: {car.name}" - - def test_harnesses(self, subtests): - for car in self.all_cars: - with subtests.test(car=car.name): - if car.name == "comma body" or car.support_type != SupportType.UPSTREAM: - pytest.skip() - - car_part_type = [p.part_type for p in car.car_parts.all_parts()] - car_parts = list(car.car_parts.all_parts()) - assert len(car_parts) > 0, f"Need to specify car parts: {car.name}" - assert car_part_type.count(PartType.connector) == 1, f"Need to specify one harness connector: {car.name}" - assert car_part_type.count(PartType.mount) == 1, f"Need to specify one mount: {car.name}" - assert Cable.right_angle_obd_c_cable_1_5ft in car_parts, f"Need to specify a right angle OBD-C cable (1.5ft): {car.name}" diff --git a/opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py b/opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py deleted file mode 100644 index 58d2ba65d0..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py +++ /dev/null @@ -1,327 +0,0 @@ -import pytest -import random -import time -from collections import defaultdict - -from opendbc.car.can_definitions import CanData -from opendbc.car.car_helpers import interfaces -from opendbc.car.structs import CarParams -from opendbc.car.fingerprints import FW_VERSIONS -from opendbc.car.fw_versions import FW_QUERY_CONFIGS, FUZZY_EXCLUDE_ECUS, VERSIONS, build_fw_dict, \ - match_fw_to_car, get_brand_ecu_matches, get_fw_versions, get_present_ecus -from opendbc.car.vin import get_vin - -CarFw = CarParams.CarFw -Ecu = CarParams.Ecu - -ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()} - - -class TestFwFingerprint: - def assertFingerprints(self, candidates, expected): - candidates = list(candidates) - assert len(candidates) == 1, f"got more than one candidate: {candidates}" - assert candidates[0] == expected - - @pytest.mark.parametrize("brand, car_model, ecus, test_non_essential", - [(b, c, e[c], n) for b, e in VERSIONS.items() for c in e for n in (True, False)]) - def test_exact_match(self, brand, car_model, ecus, test_non_essential): - config = FW_QUERY_CONFIGS[brand] - CP = CarParams() - for _ in range(20): - fw = [] - for ecu, fw_versions in ecus.items(): - # Assume non-essential ECUs apply to all cars, so we catch cases where Car A with - # missing ECUs won't match to Car B where only Car B has labeled non-essential ECUs - if ecu[0] in config.non_essential_ecus and test_non_essential: - continue - - ecu_name, addr, sub_addr = ecu - fw.append(CarFw(ecu=ecu_name, fwVersion=random.choice(fw_versions), brand=brand, - address=addr, subAddress=0 if sub_addr is None else sub_addr)) - CP.carFw = fw - _, matches = match_fw_to_car(CP.carFw, CP.carVin, allow_fuzzy=False) - if not test_non_essential: - self.assertFingerprints(matches, car_model) - else: - # if we're removing ECUs we expect some match loss, but it shouldn't mismatch - if len(matches) != 0: - self.assertFingerprints(matches, car_model) - - @pytest.mark.parametrize("brand, car_model, ecus", [(b, c, e[c]) for b, e in VERSIONS.items() for c in e]) - def test_custom_fuzzy_match(self, brand, car_model, ecus): - # Assert brand-specific fuzzy fingerprinting function doesn't disagree with standard fuzzy function - config = FW_QUERY_CONFIGS[brand] - if config.match_fw_to_car_fuzzy is None: - pytest.skip("Brand does not implement custom fuzzy fingerprinting function") - - CP = CarParams() - for _ in range(5): - fw = [] - for ecu, fw_versions in ecus.items(): - ecu_name, addr, sub_addr = ecu - fw.append(CarFw(ecu=ecu_name, fwVersion=random.choice(fw_versions), brand=brand, - address=addr, subAddress=0 if sub_addr is None else sub_addr)) - CP.carFw = fw - _, matches = match_fw_to_car(CP.carFw, CP.carVin, allow_exact=False, log=False) - brand_matches = config.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, VERSIONS[brand]) - - # If both have matches, they must agree - if len(matches) == 1 and len(brand_matches) == 1: - assert matches == brand_matches - - @pytest.mark.parametrize("brand, car_model, ecus", [(b, c, e[c]) for b, e in VERSIONS.items() for c in e]) - def test_fuzzy_match_ecu_count(self, brand, car_model, ecus): - # Asserts that fuzzy matching does not count matching FW, but ECU address keys - valid_ecus = [e for e in ecus if e[0] not in FUZZY_EXCLUDE_ECUS] - if not len(valid_ecus): - pytest.skip("Car model has no compatible ECUs for fuzzy matching") - - fw = [] - for ecu in valid_ecus: - ecu_name, addr, sub_addr = ecu - for _ in range(5): - # Add multiple FW versions to simulate ECU returning to multiple queries in a brand - fw.append(CarFw(ecu=ecu_name, fwVersion=random.choice(ecus[ecu]), brand=brand, - address=addr, subAddress=0 if sub_addr is None else sub_addr)) - CP = CarParams(carFw=fw) - _, matches = match_fw_to_car(CP.carFw, CP.carVin, allow_exact=False, log=False) - - # Assert no match if there are not enough unique ECUs - unique_ecus = {(f.address, f.subAddress) for f in fw} - if len(unique_ecus) < 2: - assert len(matches) == 0, car_model - # There won't always be a match due to shared FW, but if there is it should be correct - elif len(matches): - self.assertFingerprints(matches, car_model) - - def test_fw_version_lists(self, subtests): - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for ecu, ecu_fw in ecus.items(): - with subtests.test(ecu): - duplicates = {fw for fw in ecu_fw if ecu_fw.count(fw) > 1} - assert not len(duplicates), f'{car_model}: Duplicate FW versions: Ecu.{ecu[0]}, {duplicates}' - assert len(ecu_fw) > 0, f'{car_model}: No FW versions: Ecu.{ecu[0]}' - - def test_all_addrs_map_to_one_ecu(self): - for brand, cars in VERSIONS.items(): - addr_to_ecu = defaultdict(set) - for ecus in cars.values(): - for ecu_type, addr, sub_addr in ecus.keys(): - addr_to_ecu[(addr, sub_addr)].add(ecu_type) - ecus_for_addr = addr_to_ecu[(addr, sub_addr)] - ecu_strings = ", ".join([f'Ecu.{ecu}' for ecu in ecus_for_addr]) - assert len(ecus_for_addr) <= 1, f"{brand} has multiple ECUs that map to one address: {ecu_strings} -> ({hex(addr)}, {sub_addr})" - - def test_data_collection_ecus(self, subtests): - # Asserts no extra ECUs are in the fingerprinting database - for brand, config in FW_QUERY_CONFIGS.items(): - for car_model, ecus in VERSIONS[brand].items(): - bad_ecus = set(ecus).intersection(config.extra_ecus) - with subtests.test(car_model=car_model.value): - assert not len(bad_ecus), f'{car_model}: Fingerprints contain ECUs added for data collection: {bad_ecus}' - - def test_blacklisted_ecus(self, subtests): - blacklisted_addrs = (0x7c4, 0x7d0) # includes A/C ecu and an unknown ecu - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - CP = interfaces[car_model].get_non_essential_params(car_model) - if CP.brand == 'subaru': - for ecu in ecus.keys(): - assert ecu[1] not in blacklisted_addrs, f'{car_model}: Blacklisted ecu: (Ecu.{ecu[0]}, {hex(ecu[1])})' - - elif CP.brand == "chrysler": - # Some HD trucks have a combined TCM and ECM - if CP.carFingerprint.startswith("RAM_HD"): - for ecu in ecus.keys(): - assert ecu[0] != Ecu.transmission, f"{car_model}: Blacklisted ecu: (Ecu.{ecu[0]}, {hex(ecu[1])})" - - def test_missing_versions_and_configs(self, subtests): - brand_versions = set(VERSIONS.keys()) - brand_configs = set(FW_QUERY_CONFIGS.keys()) - if len(brand_configs - brand_versions): - with subtests.test(): - pytest.fail(f"Brands do not implement FW_VERSIONS: {brand_configs - brand_versions}") - - if len(brand_versions - brand_configs): - with subtests.test(): - pytest.fail(f"Brands do not implement FW_QUERY_CONFIG: {brand_versions - brand_configs}") - - # Ensure each brand has at least 1 ECU to query, and extra ECU retrieval - for brand, config in FW_QUERY_CONFIGS.items(): - assert len(config.get_all_ecus({}, include_extra_ecus=False)) == 0 - assert config.get_all_ecus({}) == set(config.extra_ecus) - if len(VERSIONS[brand]) > 0: - assert len(config.get_all_ecus(VERSIONS[brand])) > 0 - - def test_fw_request_ecu_whitelist(self, subtests): - for brand, config in FW_QUERY_CONFIGS.items(): - with subtests.test(brand=brand): - whitelisted_ecus = {ecu for r in config.requests for ecu in r.whitelist_ecus} - brand_ecus = {fw[0] for car_fw in VERSIONS[brand].values() for fw in car_fw} - brand_ecus |= {ecu[0] for ecu in config.extra_ecus} - - # each ecu in brand's fw versions + extra ecus needs to be whitelisted at least once - ecus_not_whitelisted = brand_ecus - whitelisted_ecus - - ecu_strings = ", ".join([f'Ecu.{ecu}' for ecu in ecus_not_whitelisted]) - assert not (len(whitelisted_ecus) and len(ecus_not_whitelisted)), \ - f'{brand.title()}: ECUs not in any FW query whitelists: {ecu_strings}' - - def test_request_ecus_in_versions(self): - # All ECUs in requests should be in the brand's FW versions - for brand, config in FW_QUERY_CONFIGS.items(): - request_ecus = {ecu for r in config.requests for ecu in r.whitelist_ecus} - {ecu[0] for ecu in config.extra_ecus} - print(brand, request_ecus) - version_ecus = config.get_all_ecus(VERSIONS[brand], include_extra_ecus=False) - for request_ecu in request_ecus: - assert request_ecu in {e for e, _, _ in version_ecus}, f"Ecu.{ECU_NAME[request_ecu]} not in {brand} FW versions" - - def test_brand_ecu_matches(self): - brand_matches = get_brand_ecu_matches(set()) - assert len(brand_matches) > 0 - assert all(len(e) and not any(e) for e in brand_matches.values()) - - # we ignore bus - brand_matches = get_brand_ecu_matches({(0x758, 0xf, 99)}) - assert True in brand_matches['toyota'] - assert not any(any(e) for b, e in brand_matches.items() if b != 'toyota') - - -class TestFwFingerprintTiming: - N: int = 5 - TOL: float = 0.05 - - # for patched functions - current_obd_multiplexing: bool - total_time: float - - @staticmethod - def fake_can_send(msgs): - pass - - @staticmethod - def fake_can_recv(wait_for_one: bool = False) -> list[list[CanData]]: - return ([[CanData(random.randint(0x600, 0x800), b'\x00' * 8, 0)]] - if random.uniform(0, 1) > 0.5 else []) - - def fake_set_obd_multiplexing(self, obd_multiplexing): - """The 10Hz blocking params loop adds on average 50ms to the query time for each OBD multiplexing change""" - if obd_multiplexing != self.current_obd_multiplexing: - self.current_obd_multiplexing = obd_multiplexing - self.total_time += 0.1 / 2 - - def fake_get_data(self, timeout): - self.total_time += timeout - return {} - - def _benchmark_brand(self, brand, num_pandas, mocker): - self.total_time = 0 - mocker.patch("opendbc.car.isotp_parallel_query.IsoTpParallelQuery.get_data", self.fake_get_data) - for _ in range(self.N): - # Treat each brand as the most likely (aka, the first) brand with OBD multiplexing initially on - self.current_obd_multiplexing = True - - t = time.perf_counter() - get_fw_versions(self.fake_can_recv, self.fake_can_send, self.fake_set_obd_multiplexing, brand, num_pandas=num_pandas) - self.total_time += time.perf_counter() - t - - return self.total_time / self.N - - def _assert_timing(self, avg_time, ref_time): - assert avg_time < ref_time + self.TOL - assert avg_time > ref_time - self.TOL, "Performance seems to have improved, update test refs." - - def test_startup_timing(self, subtests, mocker): - # Tests worse-case VIN query time and typical present ECU query time - vin_ref_times = {'worst': 1.6, 'best': 0.8} # best assumes we go through all queries to get a match - present_ecu_ref_time = 0.45 - - def fake_get_ecu_addrs(*_, timeout): - self.total_time += timeout - return set() - - self.total_time = 0.0 - mocker.patch("opendbc.car.fw_versions.get_ecu_addrs", fake_get_ecu_addrs) - for _ in range(self.N): - self.current_obd_multiplexing = True - get_present_ecus(self.fake_can_recv, self.fake_can_send, self.fake_set_obd_multiplexing, num_pandas=2) - self._assert_timing(self.total_time / self.N, present_ecu_ref_time) - print(f'get_present_ecus, query time={self.total_time / self.N} seconds') - - for name, args in (('worst', {}), ('best', {'retry': 1})): - with subtests.test(name=name): - self.total_time = 0.0 - mocker.patch("opendbc.car.isotp_parallel_query.IsoTpParallelQuery.get_data", self.fake_get_data) - for _ in range(self.N): - get_vin(self.fake_can_recv, self.fake_can_send, (0, 1), **args) - self._assert_timing(self.total_time / self.N, vin_ref_times[name]) - print(f'get_vin {name} case, query time={self.total_time / self.N} seconds') - - def test_fw_query_timing(self, subtests, mocker): - total_ref_time = {1: 7.3, 2: 7.9} - brand_ref_times = { - 1: { - 'gm': 1.0, - 'body': 0.1, - 'chrysler': 0.3, - 'ford': 1.5, - 'honda': 0.45, - 'hyundai': 0.65, - 'mazda': 0.1, - 'nissan': 0.8, - 'subaru': 0.65, - 'tesla': 0.1, - 'toyota': 0.7, - 'volkswagen': 0.65, - 'rivian': 0.3, - }, - 2: { - 'ford': 1.6, - 'hyundai': 1.15, - } - } - - total_times = {1: 0.0, 2: 0.0} - for num_pandas in (1, 2): - for brand, config in FW_QUERY_CONFIGS.items(): - with subtests.test(brand=brand, num_pandas=num_pandas): - avg_time = self._benchmark_brand(brand, num_pandas, mocker) - total_times[num_pandas] += avg_time - avg_time = round(avg_time, 2) - - ref_time = brand_ref_times[num_pandas].get(brand) - if ref_time is None: - # ref time should be same as 1 panda if no aux queries - ref_time = brand_ref_times[num_pandas - 1][brand] - - self._assert_timing(avg_time, ref_time) - print(f'{brand=}, {num_pandas=}, {len(config.requests)=}, avg FW query time={avg_time} seconds') - - for num_pandas in (1, 2): - with subtests.test(brand='all_brands', num_pandas=num_pandas): - total_time = round(total_times[num_pandas], 2) - self._assert_timing(total_time, total_ref_time[num_pandas]) - print(f'all brands, total FW query time={total_time} seconds') - - def test_get_fw_versions(self, subtests, mocker): - # some coverage on IsoTpParallelQuery and panda UDS library - # TODO: replace this with full fingerprint simulation testing - # https://github.com/commaai/panda/pull/1329 - - def fake_carlog_exception(*args, **kwargs): - raise - - t = 0 - - def fake_monotonic(): - nonlocal t - t += 0.0001 - return t - - mocker.patch("opendbc.car.carlog.carlog.exception", fake_carlog_exception) - mocker.patch("time.monotonic", fake_monotonic) - for brand in FW_QUERY_CONFIGS.keys(): - with subtests.test(brand=brand): - get_fw_versions(self.fake_can_recv, self.fake_can_send, lambda obd: None, brand) diff --git a/opendbc_repo/opendbc/car/tests/test_lateral_limits.py b/opendbc_repo/opendbc/car/tests/test_lateral_limits.py deleted file mode 100755 index 7104086cf9..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_lateral_limits.py +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env python3 -from collections import defaultdict -import importlib -from parameterized import parameterized_class -import pytest -import sys - -from opendbc.car import DT_CTRL -from opendbc.car.car_helpers import interfaces -from opendbc.car.interfaces import get_torque_params -from opendbc.car.values import PLATFORMS - -# ISO 11270 - allowed up jerk is strictly lower than recommended limits -MAX_LAT_ACCEL = 3.0 # m/s^2 -MAX_LAT_JERK_UP = 2.5 # m/s^3 -MAX_LAT_JERK_DOWN = 5.0 # m/s^3 -MAX_LAT_JERK_UP_TOLERANCE = 0.5 # m/s^3 - -# jerk is measured over half a second -JERK_MEAS_T = 0.5 - - -@parameterized_class('car_model', [(c,) for c in sorted(PLATFORMS)]) -class TestLateralLimits: - car_model: str - - @classmethod - def setup_class(cls): - CarInterface = interfaces[cls.car_model] - CP = CarInterface.get_non_essential_params(cls.car_model) - - if cls.car_model == 'MOCK': - pytest.skip('Mock car') - - # TODO: test all platforms - if CP.steerControlType != 'torque': - pytest.skip() - - if CP.notCar: - pytest.skip() - - CarControllerParams = importlib.import_module(f'opendbc.car.{CP.brand}.values').CarControllerParams - cls.control_params = CarControllerParams(CP) - cls.torque_params = get_torque_params()[cls.car_model] - - @staticmethod - def calculate_0_5s_jerk(control_params, torque_params): - steer_step = control_params.STEER_STEP - max_lat_accel = torque_params['MAX_LAT_ACCEL_MEASURED'] - - # Steer up/down delta per 10ms frame, in percentage of max torque - steer_up_per_frame = control_params.STEER_DELTA_UP / control_params.STEER_MAX / steer_step - steer_down_per_frame = control_params.STEER_DELTA_DOWN / control_params.STEER_MAX / steer_step - - # Lateral acceleration reached in 0.5 seconds, clipping to max torque - accel_up_0_5_sec = min(steer_up_per_frame * JERK_MEAS_T / DT_CTRL, 1.0) * max_lat_accel - accel_down_0_5_sec = min(steer_down_per_frame * JERK_MEAS_T / DT_CTRL, 1.0) * max_lat_accel - - # Convert to m/s^3 - return accel_up_0_5_sec / JERK_MEAS_T, accel_down_0_5_sec / JERK_MEAS_T - - def test_jerk_limits(self): - up_jerk, down_jerk = self.calculate_0_5s_jerk(self.control_params, self.torque_params) - assert up_jerk <= MAX_LAT_JERK_UP + MAX_LAT_JERK_UP_TOLERANCE - assert down_jerk <= MAX_LAT_JERK_DOWN - - def test_max_lateral_accel(self): - assert self.torque_params["MAX_LAT_ACCEL_MEASURED"] <= MAX_LAT_ACCEL - - -class LatAccelReport: - car_model_jerks: defaultdict[str, dict[str, float]] = defaultdict(dict) - - def pytest_sessionfinish(self): - print(f"\n\n---- Lateral limit report ({len(PLATFORMS)} cars) ----\n") - - max_car_model_len = max([len(car_model) for car_model in self.car_model_jerks]) - for car_model, _jerks in sorted(self.car_model_jerks.items(), key=lambda i: i[1]['up_jerk'], reverse=True): - violation = _jerks["up_jerk"] > MAX_LAT_JERK_UP + MAX_LAT_JERK_UP_TOLERANCE or \ - _jerks["down_jerk"] > MAX_LAT_JERK_DOWN - violation_str = " - VIOLATION" if violation else "" - - print(f"{car_model:{max_car_model_len}} - up jerk: {round(_jerks['up_jerk'], 2):5} " + - f"m/s^3, down jerk: {round(_jerks['down_jerk'], 2):5} m/s^3{violation_str}") - - @pytest.fixture(scope="class", autouse=True) - def class_setup(self, request): - yield - cls = request.cls - if hasattr(cls, "control_params"): - up_jerk, down_jerk = TestLateralLimits.calculate_0_5s_jerk(cls.control_params, cls.torque_params) - self.car_model_jerks[cls.car_model] = {"up_jerk": up_jerk, "down_jerk": down_jerk} - - -if __name__ == '__main__': - sys.exit(pytest.main([__file__, '-n0', '--no-summary'], plugins=[LatAccelReport()])) # noqa: TID251 diff --git a/opendbc_repo/opendbc/car/tests/test_platform_configs.py b/opendbc_repo/opendbc/car/tests/test_platform_configs.py deleted file mode 100644 index 1704621ddd..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_platform_configs.py +++ /dev/null @@ -1,17 +0,0 @@ -from opendbc.car.values import PLATFORMS - - -class TestPlatformConfigs: - def test_configs(self, subtests): - - for name, platform in PLATFORMS.items(): - with subtests.test(platform=str(platform)): - assert platform.config._frozen - - if platform != "MOCK": - assert len(platform.config.dbc_dict) > 0 - assert len(platform.config.platform_str) > 0 - - assert name == platform.config.platform_str - - assert platform.config.specs is not None diff --git a/opendbc_repo/opendbc/car/tests/test_routes.py b/opendbc_repo/opendbc/car/tests/test_routes.py deleted file mode 100644 index 92176909db..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_routes.py +++ /dev/null @@ -1,11 +0,0 @@ -import pytest - -from opendbc.car.values import PLATFORMS -from opendbc.car.tests.routes import non_tested_cars, routes - - -@pytest.mark.parametrize("platform", PLATFORMS.keys()) -def test_test_route_present(platform): - tested_platforms = [r.car_model for r in routes] - assert platform in set(tested_platforms) | set(non_tested_cars), \ - f"Missing test route for {platform}. Add a route to opendbc/car/tests/routes.py" diff --git a/opendbc_repo/opendbc/car/tests/test_vehicle_model.py b/opendbc_repo/opendbc/car/tests/test_vehicle_model.py deleted file mode 100644 index b88a8dab4e..0000000000 --- a/opendbc_repo/opendbc/car/tests/test_vehicle_model.py +++ /dev/null @@ -1,67 +0,0 @@ -import pytest -import math - -import numpy as np - -from opendbc.car.honda.interface import CarInterface -from opendbc.car.honda.values import CAR -from opendbc.car.vehicle_model import VehicleModel, dyn_ss_sol, create_dyn_state_matrices - - -class TestVehicleModel: - def setup_method(self): - CP = CarInterface.get_non_essential_params(CAR.HONDA_CIVIC) - self.VM = VehicleModel(CP) - - def test_round_trip_yaw_rate(self): - # TODO: fix VM to work at zero speed - for u in np.linspace(1, 30, num=10): - for roll in np.linspace(math.radians(-20), math.radians(20), num=11): - for sa in np.linspace(math.radians(-20), math.radians(20), num=11): - yr = self.VM.yaw_rate(sa, u, roll) - new_sa = self.VM.get_steer_from_yaw_rate(yr, u, roll) - - assert sa == pytest.approx(new_sa) - - def test_dyn_ss_sol_against_yaw_rate(self): - """Verify that the yaw_rate helper function matches the results - from the state space model.""" - - for roll in np.linspace(math.radians(-20), math.radians(20), num=11): - for u in np.linspace(1, 30, num=10): - for sa in np.linspace(math.radians(-20), math.radians(20), num=11): - - # Compute yaw rate based on state space model - _, yr1 = dyn_ss_sol(sa, u, roll, self.VM) - - # Compute yaw rate using direct computations - yr2 = self.VM.yaw_rate(sa, u, roll) - assert float(yr1[0]) == pytest.approx(yr2) - - def test_syn_ss_sol_simulate(self): - """Verifies that dyn_ss_sol matches a simulation""" - - for roll in np.linspace(math.radians(-20), math.radians(20), num=11): - for u in np.linspace(1, 30, num=10): - A, B = create_dyn_state_matrices(u, self.VM) - - # Convert to discrete time system - dt = 0.01 - top = np.hstack((A, B)) - full = np.vstack((top, np.zeros_like(top))) * dt - Md = sum([np.linalg.matrix_power(full, k) / math.factorial(k) for k in range(25)]) - Ad = Md[:A.shape[0], :A.shape[1]] - Bd = Md[:A.shape[0], A.shape[1]:] - - for sa in np.linspace(math.radians(-20), math.radians(20), num=11): - inp = np.array([[sa], [roll]]) - - # Simulate for 1 second - x1 = np.zeros((2, 1)) - for _ in range(100): - x1 = Ad @ x1 + Bd @ inp - - # Compute steady state solution directly - x2 = dyn_ss_sol(sa, u, roll, self.VM) - - np.testing.assert_almost_equal(x1, x2, decimal=3) diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json b/opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json deleted file mode 100644 index 68c6079aea..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.319796],[0.8197253],[0.2695665],[0.042975243],[0.82591987],[0.8242552],[0.82166827],[0.7989035],[0.78012997],[0.7541669],[0.727379],[0.042928882],[0.042931043],[0.04292182],[0.042691696],[0.042392965],[0.04186602],[0.041271493]],"model_test_loss":0.026207376271486282,"input_size":18,"current_date_and_time":"2023-08-05_00-22-46","input_mean":[[26.074522],[0.02839493],[0.0066744387],[0.002057746],[0.02693295],[0.026884235],[0.027213756],[0.03047188],[0.032183405],[0.03682154],[0.037578877],[0.0020827646],[0.0020767434],[0.002068271],[0.0019987107],[0.001959759],[0.0019052405],[0.0017531246]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.040739167],[2.3032],[0.12316159],[-0.2659433],[-0.14477858],[2.5866256],[0.007428121]],"dense_1_W":[[-0.00041187002,-0.43338582,0.00060599507,-0.1214792,0.11413983,-0.5961203,0.28133482,0.20372222,-0.3518884,0.004369656,0.059917737,-0.8609317,0.057816904,0.6169038,0.3990334,0.008638719,0.40356407,-0.16347249],[2.204209,-0.6977474,0.0003794136,-0.029842956,0.42360333,-0.03850665,0.77470416,0.13669024,-1.1576334,-0.2837559,0.290581,-0.20709048,0.06827377,0.39236906,0.2664924,-0.070944384,0.061474152,-0.18787181],[0.0027994395,1.1713752,3.9056025,-0.2533814,-0.5706249,-0.31465232,-0.28078023,0.9239433,0.8800892,0.45323586,-1.5842354,1.1251147,0.001203793,-0.631376,0.17771868,-0.5216376,-0.3776946,0.2864524],[-0.45875242,-0.35037747,-0.0044959267,0.2115901,0.49776042,0.40634266,0.16292186,0.085123494,-0.9553305,-0.6551008,1.0865217,-0.71530885,-0.122710146,0.41569617,0.053198084,-0.013457165,0.36482632,-0.3238176],[-0.002217434,1.7620963,-1.2475897,0.2861537,2.5786693,1.6882615,2.2971427,0.5035391,-3.1869397,-3.7319245,-1.4041471,-1.1169863,-0.17736337,0.21103925,0.1615338,-0.7596914,0.4106967,0.9845423],[2.4344306,-0.5410767,0.0015357351,-0.4139311,-0.2258391,0.22010726,-0.43920308,0.3511928,0.9479655,0.80018866,-0.516027,0.007953332,0.033446178,-0.082440384,0.35339966,-0.26683265,-0.33867463,0.3848125],[-0.006754755,0.48652485,-0.00026165723,-0.07224382,-0.032497358,0.3571908,-0.30286846,-0.38309038,0.36634418,0.2480767,-0.20110212,0.7545479,0.11547977,-0.7146525,-0.018818611,-0.31016228,0.010726242,0.2242711]],"activation":"σ"},{"dense_2_W":[[0.5528864,0.008744154,0.6015725,0.22935376,-0.51005757,-0.5996119,-0.061544895],[-1.4023882,0.050312754,-0.09053194,-0.5902193,0.3458193,-0.14508769,0.946796],[-1.1020836,-1.510418,0.81544393,-0.40635344,-0.4560999,-0.2849373,1.1164322],[-0.4434681,-0.6467564,0.35384342,-0.4493043,-0.23754148,-0.24804021,0.9237547],[-0.27906877,-0.9630674,0.42410734,-0.76862967,-0.59738564,-0.70335937,-0.18449919],[-0.50024533,-0.013576657,0.25596973,0.105690226,-0.52567744,0.80972326,0.7098216],[-0.8556806,-0.14960146,-0.14877279,0.25888273,-0.18901795,-0.16515623,0.7054368],[-1.041555,0.5246004,0.87523067,-0.4851678,-0.5188004,1.3508142,1.344452],[0.83991337,0.54517484,0.09614608,0.028868627,0.35332617,0.22425945,-0.24393064],[0.48884755,-0.6723522,0.161554,-0.18337585,0.010732531,0.042358696,-0.94669324],[0.7589174,0.44016284,-0.21002136,-0.7584538,-0.1012028,-0.44348133,-0.34792235],[0.68993133,-0.13230318,-0.20205282,0.33807474,0.2551999,-0.7216631,-0.9246813],[0.55567986,0.92921287,-0.3879664,-0.06419992,0.44321644,0.34334105,-0.7811811]],"activation":"σ","dense_2_b":[[0.009339096],[-0.027214382],[-0.19324711],[-0.1799901],[-0.3219004],[-0.0076973503],[0.031202752],[0.1887236],[-0.10121091],[-0.21036065],[-0.02065366],[-0.068702094],[0.096490316]]},{"dense_3_W":[[0.5728007,-0.3089611,0.28924087,-0.5445901,0.35486373,-0.44516575,-0.5423116,0.1779453,0.58426845,0.66963387,-0.31166366,0.6550927,0.50334716],[-0.40078798,-0.027345562,-0.5357739,-0.5126658,-0.5254064,-0.32021227,-0.44433862,-0.79833746,-0.10665151,0.20663711,-0.17090832,0.98109436,0.78809434],[-0.17410587,0.23138371,0.66809905,0.2743278,0.096785605,0.5667218,0.52852666,0.4389385,-0.4016732,0.05424836,-0.7506198,-0.71257013,-0.20795672]],"activation":"identity","dense_3_b":[[0.02470415],[0.1408834],[-0.05001292]]},{"dense_4_W":[[-0.3242929,-0.272474,0.8721407]],"dense_4_b":[[-0.046378713]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json deleted file mode 100644 index 61fac13379..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.821153],[1.1607649],[0.47132117],[0.042723242],[1.137403],[1.1458488],[1.154415],[1.1424824],[1.1269064],[1.1112212],[1.0889144],[0.04246643],[0.04255451],[0.042637058],[0.04284904],[0.04293054],[0.04296549],[0.04289919]],"model_test_loss":0.010373540222644806,"input_size":18,"current_date_and_time":"2023-08-05_01-15-19","input_mean":[[22.519371],[-0.051268775],[0.008842468],[-0.0062438333],[-0.049525455],[-0.050104525],[-0.050982136],[-0.044812053],[-0.03977025],[-0.029485626],[-0.022126574],[-0.00628094],[-0.006273981],[-0.00626523],[-0.006110039],[-0.005949586],[-0.0056778532],[-0.005516688]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.145696],[-2.4282207],[-0.0467647],[0.10926833],[0.0520818],[0.04222916],[-0.5462429]],"dense_1_W":[[0.89382285,0.05062796,0.92885584,0.07922598,0.5873072,1.1331865,-0.91537136,-0.13934332,0.17509349,-0.017687947,0.1421727,0.07907387,-0.43241176,-0.29524758,0.64221257,0.25150946,-0.05171897,-0.2579187],[-0.98185164,0.15350275,0.9519401,-0.09016293,0.5030077,0.777908,-0.5172474,-0.1343053,0.060967423,0.059980214,0.10476908,0.17575294,-0.20688392,-0.37559837,0.5713468,0.08849066,0.06383742,-0.21201873],[-0.0056540756,0.34154844,-0.0002563853,0.1807267,0.48449796,1.7143611,-1.3936676,-0.35775846,-0.5523075,-0.15023966,0.5988954,0.72132236,0.18023057,-0.46348006,-0.3817839,0.23941651,-0.06494792,-0.41726813],[-0.01459551,1.354641,6.4718165,-0.45382518,-0.35718468,0.69441503,-0.12716621,-0.10042224,-0.016146144,-0.4092775,-1.1707406,0.24052495,0.18990588,-0.1906599,0.070675336,0.2473157,-0.13808818,0.048208434],[-0.0009390727,1.1310523,0.0082692,-0.10876187,0.25259772,1.0159874,-0.72615826,0.107342415,0.0071694367,-0.065621555,0.13799563,-0.24110964,-0.073862016,-0.496919,-0.3644365,0.16880687,0.13885318,0.15355359],[-0.0016120744,-1.5514591,-0.000675083,0.40327275,0.8975076,-0.8923279,0.7910547,-0.40612024,-0.35091725,-0.101295106,0.38604048,-0.3228168,-0.17239958,-0.3530256,0.58767676,0.15752153,0.060442753,-0.32661223],[0.028779855,2.903487,-0.022664804,0.67652136,0.86524385,1.6721133,1.4576133,1.4279684,0.98554605,0.5130255,-0.469917,-0.0684012,0.4178242,0.3712093,-0.7501333,-0.06791517,0.33725083,-0.09968473]],"activation":"σ"},{"dense_2_W":[[0.72010493,-0.22845428,0.34250122,-0.10947913,-0.09878085,0.19209231,0.3437535],[-0.19205496,-0.07013072,-0.7416267,0.25280657,-0.1804019,0.4552836,0.12560841],[0.3121345,0.351005,0.5316866,0.03252624,-0.057188597,-0.9498188,0.07712814],[-0.16806532,0.25612888,0.43424875,-0.24325378,0.23957624,-0.14204793,-0.13016012],[-0.02399125,-0.71077454,0.03666176,-0.044081435,-0.495433,0.2724298,0.22011437],[-0.24902506,-0.59004927,-0.13717845,-0.5492086,-0.8540712,1.7531782,-0.18482044],[0.045421652,0.13694939,0.35765722,-0.28403643,0.13330263,-0.053298414,0.07322283],[-0.34804162,-0.38957596,-0.1432544,0.071290284,-0.538751,1.1790421,0.29278603],[0.45716798,-0.3516285,-0.2764383,0.4446462,0.76846844,-0.7801458,0.49539566],[0.07269321,-0.15379232,-0.8779124,-0.92490155,-0.91285044,1.7692323,0.028679641],[-0.763075,0.17418097,-0.2823778,0.04659932,-0.030475633,0.37596756,-0.66006523],[-0.30286422,-0.03590232,-0.012065834,-0.16185908,-0.2584895,0.3575371,-0.36891615],[-0.39941847,0.09128256,-0.32452282,-0.36513522,0.06978018,0.028525386,-0.7303688]],"activation":"σ","dense_2_b":[[0.048172507],[-0.07530213],[-0.340101],[-0.022203589],[0.009521725],[0.46328664],[0.004919447],[0.022925986],[-0.15940326],[0.40359482],[-0.14555077],[-0.02970779],[-0.24673922]]},{"dense_3_W":[[-0.32974115,-0.5017099,0.5581341,-0.22340928,-0.03365036,-0.20835784,0.537433,0.5391966,-0.36658195,-0.5869503,0.17776869,-0.013170913,0.49127203],[-0.29820803,0.28987518,-0.24515595,0.25772423,-0.04187076,0.69620353,-0.3389867,0.12667182,0.150237,0.5090255,0.49386412,-0.3637399,-0.01771473],[0.5784079,-0.0028831854,0.43896967,0.60790384,-0.4540079,-0.45909828,0.046820417,-0.56937873,0.530507,-0.1309796,0.32449916,-0.49291292,-0.07336644]],"activation":"identity","dense_3_b":[[0.0460099],[-0.07466251],[0.050609488]]},{"dense_4_W":[[0.13093115,-0.7773025,0.81287336]],"dense_4_b":[[0.057754416]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json deleted file mode 100644 index 04a37fb732..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.7137036],[0.9591701],[0.43025136],[0.042929597],[0.94636554],[0.9494532],[0.9542092],[0.9331239],[0.92229235],[0.90257126],[0.88295245],[0.04270026],[0.042758208],[0.042818923],[0.042808957],[0.04270763],[0.04245825],[0.04215921]],"model_test_loss":0.013933051377534866,"input_size":18,"current_date_and_time":"2023-08-05_03-45-12","input_mean":[[22.835394],[0.021439364],[0.0072024865],[-0.030873412],[0.021618834],[0.022110935],[0.02246376],[0.027221544],[0.027849164],[0.028268991],[0.032981515],[-0.030950077],[-0.030914158],[-0.030886404],[-0.030796975],[-0.03080609],[-0.030815149],[-0.030869272]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.04303998],[0.18157572],[-0.08682473],[2.9495513],[1.4374219],[0.6783021],[-2.7817473]],"dense_1_W":[[-0.0047104284,-0.6137708,0.002341153,0.0833492,0.08768307,-0.81527835,0.6300508,-0.16833228,-0.25419337,-0.031592067,0.122596905,-0.10794349,-0.06970466,0.1521993,-0.04051286,0.059251916,-0.11607053,0.024402162],[-0.06346717,-0.8082159,0.0040190252,0.3896669,0.06872366,-0.7609862,1.0698833,-0.06101861,0.1457311,0.19787341,-0.21086167,-0.07617529,-0.40358907,0.012452437,0.10700336,0.3594503,0.025611963,-0.14057784],[-0.010002668,-1.4602287,-5.6766963,0.03532623,-0.3498076,-0.005860239,0.092076786,-0.22858407,-0.4043539,0.277433,2.0291262,0.044144016,0.06367758,-0.2504535,0.3463553,-0.27935135,0.18728429,-0.15520296],[1.595175,1.1790471,0.33827057,-0.36523697,-0.028244315,0.88139707,-1.6474634,0.3107364,-0.13230316,0.019280735,-0.015979009,0.5001427,-0.13290524,-0.15675303,0.12809546,-0.09519324,-0.046115097,0.14121765],[0.01943066,0.3716076,-0.048877437,-0.3783698,0.8343788,-0.51018566,1.0465596,-0.123417296,-0.446517,0.0398392,0.5281696,-0.3002102,-0.4030578,-0.23385769,0.45266014,-0.15139927,-0.084088355,-0.8366423],[-0.05169121,0.34580684,-0.0006902231,-0.0828817,-0.67921466,1.1092558,-0.4253136,0.008052844,-0.08571924,0.14040273,-0.057995982,0.5459289,-0.1640265,-0.24621837,-0.44702664,0.25875458,-0.16363451,0.07772843],[-1.5420308,-0.0795151,0.32449803,0.09269649,-0.12254087,0.95711464,-0.32903105,0.03880426,-0.24505275,0.3849109,-0.085893035,0.1646195,-0.14589338,-0.44051296,-0.05752575,0.38210398,0.32775694,-0.34554252]],"activation":"σ"},{"dense_2_W":[[-1.1991313,-0.99167293,-0.51472193,0.16773303,0.02101984,0.2913248,1.2563334],[0.50807565,0.2559231,0.3110827,-0.7911515,-0.2996264,-0.76801026,0.21431924],[-0.85551465,-0.3015842,-0.283833,0.5011012,-1.0202202,0.6740454,0.972628],[0.98223805,1.0016109,-0.09864264,0.13172226,-0.12697673,-0.40963414,-0.35780042],[-1.1385525,-0.88758576,-0.2415131,1.0169281,-0.37200353,0.83228046,0.58273304],[0.21168564,-0.01694945,-0.13944875,0.12901805,-0.58597475,-0.23450175,0.07449124],[0.6887359,0.49634412,-0.4524045,-0.5046205,0.80216706,-0.37323585,0.15390924],[-0.86359656,-0.8294278,-0.10975485,-0.111551575,-0.21511969,1.1387116,0.014124521],[0.6704329,0.7197621,-0.16924202,-0.03436297,0.3256051,-0.6220993,-0.3785999],[0.88013136,0.211954,0.26013535,-0.5998456,-0.14124529,-1.0012022,0.30486783],[0.8889406,0.25632593,0.029823503,-0.6760066,0.40066594,-0.6796646,-0.42230535],[-0.09985791,-0.6314821,-0.6048359,-0.28479984,0.022334062,-0.11070772,-0.50172895],[-1.0790496,-0.81828046,-0.26459435,-0.15203167,-0.10264537,0.7340549,0.6219628]],"activation":"σ","dense_2_b":[[0.07743759],[-0.08656865],[-0.028110785],[0.011056744],[0.33631137],[-0.33865649],[0.093462616],[0.28041044],[-0.1485106],[-0.10288075],[-0.118501574],[-0.19659644],[0.23902157]]},{"dense_3_W":[[-0.21247761,-0.3863918,-0.35711917,-0.15159392,-0.3087554,0.27256498,0.059494548,0.79742235,-0.6449726,-0.3814191,-0.6635471,0.14567713,0.6240987],[-0.60485286,0.36261612,-0.3062913,0.5288856,-0.8237054,0.14184983,0.36521724,-0.6798562,0.19129165,0.76819366,0.3231601,0.028053993,-0.89101535],[0.5106036,-0.047764797,0.003893947,0.122273564,-0.616694,-0.30744067,0.10899531,-0.98274595,0.045314062,0.3392997,0.15401444,0.406467,-0.3275237]],"activation":"identity","dense_3_b":[[0.0072817504],[0.054671016],[0.3754705]]},{"dense_4_W":[[0.18990728,-1.0539979,-0.04924367]],"dense_4_b":[[-0.04299712]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json deleted file mode 100644 index dcd89c8157..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.227712],[1.1068953],[1.0287797],[0.031075474],[1.0763543],[1.0856286],[1.0965383],[1.126149],[1.1471479],[1.1817935],[1.207976],[0.03088383],[0.030962178],[0.031021496],[0.031159075],[0.031329848],[0.031462345],[0.031319857]],"model_test_loss":0.004972144495695829,"input_size":18,"current_date_and_time":"2023-08-31_18-04-43","input_mean":[[24.297255],[0.05408088],[-0.024366971],[0.017203888],[0.04666708],[0.049268622],[0.050475407],[0.05590255],[0.04882452],[0.04647568],[0.05159426],[0.017288238],[0.017341834],[0.017397404],[0.017483119],[0.017647635],[0.018217644],[0.018788869]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.022334022],[-0.100295104],[-0.110021666],[-0.37309307],[-0.18126963],[-0.90585893],[-0.5534994]],"dense_1_W":[[0.0030549474,1.145932,-0.09721581,0.18435507,-0.2573822,-0.19281419,0.43596926,0.1603594,0.10032455,-0.051014125,0.4603509,0.38878915,-0.22585483,-0.29935592,-0.04472448,-0.15199424,0.44078583,-0.19637495],[0.007835068,0.57188964,0.18070067,-0.2610156,-0.17529912,0.14483498,-0.23499107,0.4929414,0.10448897,-0.45648035,0.029684572,0.1314099,-0.16433047,0.2065975,0.07887834,-0.0060373824,-0.20691155,0.13691476],[-0.005327477,1.7886202,2.9505506,0.09841906,-1.9402149,-1.3852259,-0.043792397,0.660079,0.60579574,0.24349208,0.29671067,0.08202194,-0.13981113,0.36684915,0.057882063,-0.41412312,0.31871474,-0.02327852],[1.0903977,-1.1873779,0.14879608,0.040507846,0.040393896,0.13455993,0.9753803,0.085223004,-0.06493875,-0.20206894,0.18746802,-0.24526027,-0.08939371,0.2430548,0.13119027,0.15268146,0.20207612,-0.083613925],[0.0021948,3.2657847,-0.18798442,-0.12689658,-0.30403885,0.3367026,0.91909635,1.7143666,0.045331903,-0.31545398,-0.051042344,-0.3529171,0.29837632,0.09466574,-0.8073861,-0.0039647045,-0.1720164,0.5201512],[1.0928359,1.2096838,-0.14703602,0.018953208,-0.03811592,-0.2855322,-0.8143947,0.05326237,-0.066094,0.064099275,-0.06976516,-0.06933611,0.34876755,-0.25860986,-0.14344722,-0.07053271,-0.20750608,0.025129952],[-0.0055736825,0.64105284,0.10726179,-0.17012087,-0.001185817,0.5677425,-0.93299127,0.09094073,0.0109323105,0.2228847,-0.16700141,0.30421817,0.13674305,-0.49573237,-0.13086164,0.31447932,0.15766789,-0.16813341]],"activation":"σ"},{"dense_2_W":[[0.27341422,-0.47601527,-0.6289435,1.3114856,-0.18440256,-0.69279665,-0.58332384],[-0.34085867,-0.29880068,-0.9368486,0.2080702,0.6225143,-0.6358373,-1.1943169],[0.6918406,0.15412113,0.04159215,-0.6581899,0.24066101,-0.043641392,0.045506563],[-0.026726253,-0.81909335,0.16420767,0.00291583,-0.3189569,-0.5359374,-0.7172654],[-0.8483084,-0.35060802,-0.41203314,-0.5305087,0.47287297,-0.28290507,-0.8737458],[0.35316753,0.90733016,-0.2770915,0.20165613,0.20155826,0.36213335,-0.24496384],[-0.5022167,-0.5612638,0.38854852,-0.018215526,-0.19334692,-0.4468064,-0.86793435],[0.47059315,0.23489894,0.41844767,-0.08509097,-0.31178007,0.11894885,0.5030957],[0.24172585,0.24865924,-0.15847187,-0.7011813,0.48085362,0.14869425,0.23137042],[-0.618487,0.12818213,-0.6849712,0.29365247,0.20846452,-0.063214555,0.125115],[0.5387756,0.06612413,-0.4151303,-0.63775194,0.5008791,-0.059868183,0.5720243],[-0.32397416,-0.08635292,-0.4818767,-0.67876416,-0.5552992,0.2187673,-0.4787086],[-0.89717907,-0.42284042,0.31489655,-0.8514086,-0.7674914,-0.41609457,-0.006730729]],"activation":"σ","dense_2_b":[[0.44311488],[0.11209076],[-0.0894076],[0.1847591],[-0.1593725],[-0.022556875],[0.21991341],[-0.05744998],[-0.057585794],[-0.2627398],[-0.054548565],[0.105285086],[-0.19715697]]},{"dense_3_W":[[-0.35089782,-0.39416888,-0.30615157,-0.46847108,-0.26617768,0.43837857,-0.485962,-0.2902945,-0.17870793,0.2757293,0.6125576,-0.24665116,-0.21227285],[-0.37411463,0.19765407,-0.014807391,0.06321688,0.37360784,0.22288837,-0.116587795,0.029183213,0.6631047,0.11275381,-0.27042058,-0.44573787,0.14713542],[-0.50715375,-0.38213205,0.5145017,-0.6412086,-0.39256987,0.058481824,-0.437418,0.30487192,0.5463277,-0.17863718,0.47274628,-0.5652254,-0.2641463]],"activation":"identity","dense_3_b":[[0.0534896],[0.01632865],[0.023216043]]},{"dense_4_W":[[0.3922371,0.50241,1.2339215]],"dense_4_b":[[0.022297831]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json deleted file mode 100644 index 00a68d269b..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[10.534294],[1.5504998],[1.4046903],[0.029573984],[1.5927145],[1.578906],[1.564156],[1.5118331],[1.493684],[1.4678634],[1.4253669],[0.02943281],[0.029483505],[0.029535847],[0.02967169],[0.029826282],[0.03000203],[0.030046586]],"model_test_loss":0.02003631368279457,"input_size":18,"current_date_and_time":"2023-08-31_20-50-28","input_mean":[[20.131113],[0.009686473],[0.06975938],[0.0023475066],[0.0038891183],[0.0060874033],[0.008401226],[0.013517541],[0.01840766],[0.0266773],[0.02453028],[0.0023093733],[0.002328295],[0.0023440488],[0.0024961669],[0.0025724813],[0.0024677413],[0.0023574075]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-4.0288644],[0.10457083],[-3.9555483],[0.1691402],[-0.012094571],[-0.0782635],[-0.2598278]],"dense_1_W":[[-2.1827135,1.6132607,-0.9255983,0.116717376,-1.8178183,-0.54029983,0.33489665,0.56080383,-0.22747517,-0.5733255,0.5044412,-0.2292483,0.043896638,0.08075467,-0.28934216,0.17338042,0.0033520209,0.10574474],[-0.03214852,1.3043286,1.787647,-0.19292493,-1.496456,-1.6432034,-1.0122085,0.6772478,0.9241051,2.137595,1.1481318,0.7382223,0.24003813,-0.26050806,-0.28489965,-0.055436503,-1.5187881,0.5395662],[-2.130688,-2.4082897,0.8946516,1.182773,1.0356439,1.0627962,0.681919,-1.07377,0.9514841,0.2902732,-0.51102746,-1.0186149,0.06007755,0.55835754,-0.8702267,-0.27547133,1.1577551,-0.79220283],[0.048019372,0.56005365,0.090563335,0.04659274,-0.3400944,0.08129445,0.079794005,1.6712024,0.37665895,0.92944545,-0.818461,1.0755452,0.03035464,-0.7417196,0.46747556,-1.7863483,0.1933551,0.6655417],[0.010540867,-2.1044421,0.123707764,0.19983652,-0.3400125,0.042333197,-0.14189881,-0.15991694,1.1688339,0.89001805,-1.0717757,-0.12767468,-0.23459645,0.55075175,0.08273279,-1.410371,-0.11742753,1.0628744],[-0.0035597957,3.3175247,-0.08206834,-0.41877395,-2.3628318,-0.3887815,0.33513132,1.0517763,1.3315583,-0.45716277,-0.83998686,0.038495045,-0.29630885,-0.5393306,0.004715303,-0.3557685,-0.0024815162,0.5117863],[-0.06787126,-1.0245934,0.846602,0.76652443,-3.6147707,-3.2961829,-3.046585,-2.334436,-2.2018268,-2.0479157,-2.1753612,-0.3235234,0.3021576,0.6696055,-0.5296955,-0.34782553,-0.6869261,0.61321783]],"activation":"σ"},{"dense_2_W":[[0.64928615,0.2816972,-0.8923362,0.39578387,-0.61536825,0.81299543,0.32944572],[-3.469548,-0.088318504,4.506985,1.7126206,-0.54613674,1.1776173,-1.3406864],[-0.16514356,-0.18710926,-0.049463313,-0.74177825,-0.89867437,-0.12767266,-0.41532612],[0.3880128,0.14577644,-0.22068585,0.47859693,-0.3810993,0.21953157,-0.28429258],[0.09226449,-0.31862667,-0.7718878,-0.3926271,0.39786428,0.24407528,0.50177044],[0.67237484,0.12668592,-0.30338138,-0.625696,0.26677904,-0.40067798,-0.32989067],[0.55108297,-0.46753818,-0.2422762,-0.32914385,1.0277789,-0.21390574,-0.51578075],[-0.6387295,0.087801814,0.4115124,0.19489816,-0.50232434,0.88593876,0.04993241],[-0.0012766474,-0.39255276,-0.43439093,0.5811583,0.04147405,0.39352056,-0.2983913],[0.5312808,-0.46965963,-0.2202195,0.022353612,0.9100419,-0.7610306,-0.045171853],[-0.4153422,0.25298238,-0.16235219,0.6847717,-0.24125478,0.12481583,0.17123348],[0.019955412,-0.049374487,-0.028301261,-0.1474805,-0.99081236,0.46832514,0.04314314],[-0.060847353,-0.4487362,0.11238633,-0.2315336,0.61632276,-0.037449174,-0.31603873]],"activation":"σ","dense_2_b":[[-0.0784909],[-0.78942764],[-0.15396598],[-0.0694357],[0.42111325],[0.13395377],[0.13471761],[-0.2390017],[-0.10127865],[0.021352982],[-0.10597191],[-0.0495153],[0.08049109]]},{"dense_3_W":[[-0.5803282,-0.4269681,-0.29210615,-0.35849357,0.6151693,0.4374335,0.33656615,-0.38959798,-0.124871194,0.80708337,-0.2547417,-0.4598867,0.28997138],[-0.024669895,1.1817242,-0.08351745,-0.24313891,-0.31439584,-0.25903952,-0.07882097,0.5553487,-0.3152985,-0.31680647,-0.116309114,0.010063961,0.2913986],[-0.43385702,-0.37067002,0.0936241,0.23112701,0.11643858,-0.15334345,-0.003450505,0.18969658,0.37703827,-0.25617403,0.11559996,-0.19988349,0.1828592]],"activation":"identity","dense_3_b":[[0.098078996],[0.0034752209],[0.008636777]]},{"dense_4_W":[[-0.73048496,0.39407238,-0.07285802]],"dense_4_b":[[-0.09288416]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json deleted file mode 100644 index 00a68d269b..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[10.534294],[1.5504998],[1.4046903],[0.029573984],[1.5927145],[1.578906],[1.564156],[1.5118331],[1.493684],[1.4678634],[1.4253669],[0.02943281],[0.029483505],[0.029535847],[0.02967169],[0.029826282],[0.03000203],[0.030046586]],"model_test_loss":0.02003631368279457,"input_size":18,"current_date_and_time":"2023-08-31_20-50-28","input_mean":[[20.131113],[0.009686473],[0.06975938],[0.0023475066],[0.0038891183],[0.0060874033],[0.008401226],[0.013517541],[0.01840766],[0.0266773],[0.02453028],[0.0023093733],[0.002328295],[0.0023440488],[0.0024961669],[0.0025724813],[0.0024677413],[0.0023574075]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-4.0288644],[0.10457083],[-3.9555483],[0.1691402],[-0.012094571],[-0.0782635],[-0.2598278]],"dense_1_W":[[-2.1827135,1.6132607,-0.9255983,0.116717376,-1.8178183,-0.54029983,0.33489665,0.56080383,-0.22747517,-0.5733255,0.5044412,-0.2292483,0.043896638,0.08075467,-0.28934216,0.17338042,0.0033520209,0.10574474],[-0.03214852,1.3043286,1.787647,-0.19292493,-1.496456,-1.6432034,-1.0122085,0.6772478,0.9241051,2.137595,1.1481318,0.7382223,0.24003813,-0.26050806,-0.28489965,-0.055436503,-1.5187881,0.5395662],[-2.130688,-2.4082897,0.8946516,1.182773,1.0356439,1.0627962,0.681919,-1.07377,0.9514841,0.2902732,-0.51102746,-1.0186149,0.06007755,0.55835754,-0.8702267,-0.27547133,1.1577551,-0.79220283],[0.048019372,0.56005365,0.090563335,0.04659274,-0.3400944,0.08129445,0.079794005,1.6712024,0.37665895,0.92944545,-0.818461,1.0755452,0.03035464,-0.7417196,0.46747556,-1.7863483,0.1933551,0.6655417],[0.010540867,-2.1044421,0.123707764,0.19983652,-0.3400125,0.042333197,-0.14189881,-0.15991694,1.1688339,0.89001805,-1.0717757,-0.12767468,-0.23459645,0.55075175,0.08273279,-1.410371,-0.11742753,1.0628744],[-0.0035597957,3.3175247,-0.08206834,-0.41877395,-2.3628318,-0.3887815,0.33513132,1.0517763,1.3315583,-0.45716277,-0.83998686,0.038495045,-0.29630885,-0.5393306,0.004715303,-0.3557685,-0.0024815162,0.5117863],[-0.06787126,-1.0245934,0.846602,0.76652443,-3.6147707,-3.2961829,-3.046585,-2.334436,-2.2018268,-2.0479157,-2.1753612,-0.3235234,0.3021576,0.6696055,-0.5296955,-0.34782553,-0.6869261,0.61321783]],"activation":"σ"},{"dense_2_W":[[0.64928615,0.2816972,-0.8923362,0.39578387,-0.61536825,0.81299543,0.32944572],[-3.469548,-0.088318504,4.506985,1.7126206,-0.54613674,1.1776173,-1.3406864],[-0.16514356,-0.18710926,-0.049463313,-0.74177825,-0.89867437,-0.12767266,-0.41532612],[0.3880128,0.14577644,-0.22068585,0.47859693,-0.3810993,0.21953157,-0.28429258],[0.09226449,-0.31862667,-0.7718878,-0.3926271,0.39786428,0.24407528,0.50177044],[0.67237484,0.12668592,-0.30338138,-0.625696,0.26677904,-0.40067798,-0.32989067],[0.55108297,-0.46753818,-0.2422762,-0.32914385,1.0277789,-0.21390574,-0.51578075],[-0.6387295,0.087801814,0.4115124,0.19489816,-0.50232434,0.88593876,0.04993241],[-0.0012766474,-0.39255276,-0.43439093,0.5811583,0.04147405,0.39352056,-0.2983913],[0.5312808,-0.46965963,-0.2202195,0.022353612,0.9100419,-0.7610306,-0.045171853],[-0.4153422,0.25298238,-0.16235219,0.6847717,-0.24125478,0.12481583,0.17123348],[0.019955412,-0.049374487,-0.028301261,-0.1474805,-0.99081236,0.46832514,0.04314314],[-0.060847353,-0.4487362,0.11238633,-0.2315336,0.61632276,-0.037449174,-0.31603873]],"activation":"σ","dense_2_b":[[-0.0784909],[-0.78942764],[-0.15396598],[-0.0694357],[0.42111325],[0.13395377],[0.13471761],[-0.2390017],[-0.10127865],[0.021352982],[-0.10597191],[-0.0495153],[0.08049109]]},{"dense_3_W":[[-0.5803282,-0.4269681,-0.29210615,-0.35849357,0.6151693,0.4374335,0.33656615,-0.38959798,-0.124871194,0.80708337,-0.2547417,-0.4598867,0.28997138],[-0.024669895,1.1817242,-0.08351745,-0.24313891,-0.31439584,-0.25903952,-0.07882097,0.5553487,-0.3152985,-0.31680647,-0.116309114,0.010063961,0.2913986],[-0.43385702,-0.37067002,0.0936241,0.23112701,0.11643858,-0.15334345,-0.003450505,0.18969658,0.37703827,-0.25617403,0.11559996,-0.19988349,0.1828592]],"activation":"identity","dense_3_b":[[0.098078996],[0.0034752209],[0.008636777]]},{"dense_4_W":[[-0.73048496,0.39407238,-0.07285802]],"dense_4_b":[[-0.09288416]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json deleted file mode 100644 index fe64977fe9..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.111214],[1.4682485],[0.57526964],[0.04511676],[1.4448825],[1.4523145],[1.460504],[1.4530647],[1.436759],[1.409998],[1.3768793],[0.04496706],[0.044998076],[0.04501952],[0.044998042],[0.04498694],[0.044818893],[0.04446676]],"model_test_loss":0.022049037739634514,"input_size":18,"current_date_and_time":"2023-08-05_05-39-06","input_mean":[[24.08155],[0.011368711],[0.0031438756],[-0.0055672466],[0.01115314],[0.0110932905],[0.010956869],[0.013351914],[0.012678603],[0.010665299],[0.007861591],[-0.0056356518],[-0.0056050173],[-0.005582452],[-0.0056302436],[-0.0057524433],[-0.0058822],[-0.006047828]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.4668645],[0.0061378293],[0.14334162],[-1.507637],[-3.6057515],[-0.045111466],[0.18928593]],"dense_1_W":[[0.6566544,0.7743814,0.18751603,0.04858998,0.7569071,0.25307912,-2.068015,0.9910395,0.86449015,0.5162737,0.17964111,0.73959017,-0.13406877,-1.2188785,0.051854312,0.557273,0.42717713,-0.4706351],[0.025763594,2.3271172,7.5912685,-0.59063435,-1.0175278,0.07860616,-0.39720893,-1.3828933,0.27263463,0.5794174,-0.941214,0.5112712,0.31876096,-0.38133666,-0.17985544,0.50390506,-0.42106378,0.24962576],[0.05800794,4.917338,-0.050065108,0.5062318,2.31812,2.2346003,0.97258455,2.237544,3.1694891,3.0328865,2.4481356,0.87150276,0.23922867,-0.27206227,-0.76175624,-0.59474605,0.022229204,0.18751834],[0.91351914,0.42640725,0.21792875,-0.6499657,0.42711547,0.46455538,-0.7128904,0.6972329,0.07784378,0.15792462,0.86492527,0.16739717,0.3357893,-0.1592361,0.10722909,0.21031618,-0.019191844,-0.031056747],[-1.390049,0.89916164,0.30032212,0.0886132,0.81011575,-0.3205005,-2.085708,1.6698592,1.496016,0.86138624,0.12484511,0.47975743,-0.41812262,-0.7270122,-0.06460007,0.9231981,0.42574838,-0.64465237],[-0.001402944,-1.1569467,0.0005942974,0.063189715,-0.09013453,-1.2986813,1.6477252,-0.4343868,-0.08533708,-0.27364805,0.21535206,-0.34249792,-0.48679602,0.6684111,0.16701448,0.39430234,0.2199159,-0.27228448],[-1.1195272,0.015763488,-0.200724,0.05122529,0.40223718,0.5024332,-1.402779,-0.47795737,-0.24807225,-0.70503217,-0.21363245,0.76604843,-0.14105192,-0.4387646,-0.28273064,-0.21595778,0.03305617,0.22701742]],"activation":"σ"},{"dense_2_W":[[1.7721981,2.2011127,0.29388586,0.38426542,0.83704543,-2.9152303,0.5229557],[-0.36864644,0.42984635,-0.41658726,-0.041540317,0.18798253,0.38724944,-0.65996665],[-0.52116436,0.2358491,-0.2220775,-0.032654468,-0.48732167,0.3548198,-0.45838025],[-0.2911298,-0.46853513,0.03141412,-0.795555,-0.18514551,-0.08353839,-0.33849046],[-0.67049307,0.10367472,0.4490753,-0.55316794,-0.48152244,0.31841356,-0.14415056],[0.28696507,-1.2001104,-0.55151457,0.95023096,-1.3845363,-0.3174642,-0.3309214],[-0.6142683,0.0910831,-0.18282256,-0.44715023,0.37679994,0.44533804,0.027039269],[0.14790064,-0.27130985,-0.18719442,-0.13985236,-0.22100836,-0.6535676,-0.19135725],[-0.4416883,-0.37975168,-0.43114612,-0.07862877,0.20007153,0.95488816,-0.52858645],[-0.17171355,0.2863653,0.4144529,0.679835,0.34844747,-1.2170105,0.29281953],[0.06252894,0.095131,-0.13292563,-0.6726018,-0.39990836,-0.68776375,-0.36863],[0.7808943,-0.8408942,0.13730413,0.102169715,0.1682241,-0.5337488,1.5183735],[0.11278698,0.10173518,0.10506139,0.4002509,0.16067709,-1.1565727,0.75811535]],"activation":"σ","dense_2_b":[[-1.5210099],[-0.0006081214],[0.021954967],[0.032652497],[0.19418235],[-0.42663833],[0.11631468],[-0.27090475],[0.18836942],[-0.4026297],[-0.3532125],[-0.095932305],[-0.094078794]]},{"dense_3_W":[[-0.08552111,0.15208419,0.3206692,-0.46672416,-0.0039158463,-0.05807648,-0.5021984,0.15186986,-0.59495836,0.2405156,-0.5498271,0.070102595,0.26428217],[-0.63763195,0.14358082,0.45475405,0.4365134,0.5539486,-0.44107583,0.46288002,-0.1564132,0.39014947,-0.55990654,-0.05062592,-0.5582297,-0.45318148],[0.57558644,-0.5381224,-0.6278913,0.21171339,-0.06526249,-0.1312582,0.3146726,-0.45940813,-0.15466015,0.11860342,0.36926913,-0.16175088,0.17500523]],"activation":"identity","dense_3_b":[[-0.03552377],[0.059005316],[-0.037881076]]},{"dense_4_W":[[0.43992618,-0.9712287,0.43158254]],"dense_4_b":[[-0.04844147]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json deleted file mode 100644 index 1383fdf7f9..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.0000353],[0.91031396],[1.269469],[0.0315604],[0.9563133],[0.95031977],[0.9356424],[0.873496],[0.8912867],[0.8935701],[0.96191794],[0.031832103],[0.031727515],[0.031619374],[0.03170114],[0.03179356],[0.031944003],[0.03203715]],"model_test_loss":0.025683574378490448,"input_size":18,"current_date_and_time":"2023-08-31_22-32-43","input_mean":[[27.019146],[0.2162388],[-0.102987334],[-0.016973253],[0.2426502],[0.23661843],[0.22663806],[0.18541981],[0.17368032],[0.14804864],[0.09238692],[-0.017235657],[-0.017166195],[-0.017074104],[-0.016875083],[-0.016880676],[-0.017125089],[-0.017351476]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.23588695],[-0.5088953],[1.5173167],[0.21325926],[0.7270255],[1.0430372],[-2.1749456]],"dense_1_W":[[-0.00035987928,1.4975938,2.03412,-0.83676016,-5.5800395,-1.7383903,-0.18633558,6.249567,0.15692733,1.1870492,-1.8389847,0.8397649,0.41889027,0.19991927,-0.71028113,-0.42742363,-0.01929488,0.56470984],[0.1451778,-0.42022082,-0.08357744,0.37352008,0.13762045,-0.513736,0.19210075,-0.99654514,0.07671047,0.3092085,-0.09438795,-0.7692168,-0.05790273,-0.019019479,0.68036485,-0.3681197,0.042775016,0.113177255],[0.17934947,0.6802453,0.53991216,1.2953564,0.36064458,-2.232729,-1.3662916,9.39327,3.2034888,0.82174385,-3.8604288,-0.059266165,0.23885792,1.2206435,-0.037034295,-1.0659415,-1.2380418,-0.38709572],[-0.63551307,0.14085051,-0.058989003,-0.096907504,-0.08637354,-0.9568107,-0.203569,0.09172185,-1.7067626,0.23453063,0.40079904,-0.33019188,-0.14800894,0.4674501,-0.058009204,-0.3754687,-0.10436635,0.64636946],[0.33742648,-0.36501276,-0.034292817,-0.51860994,-1.3856511,-1.5455489,-1.0439808,-0.75624853,-1.0810176,-0.5734188,0.55518353,-0.80131483,-0.6185672,-0.28676248,-0.104135,-0.62493587,-0.8962451,-1.5516719],[0.43760708,-1.6991494,-0.03338309,-0.96213526,0.00956474,-1.2663416,-1.9227605,-3.5994406,0.26717234,1.618855,-0.69799376,-0.3365453,0.08994935,0.16855639,-2.0510433,-1.3217996,-1.0182589,-0.993361],[0.38308197,-1.8382412,-0.15014274,0.11305897,1.90282,-0.91276294,-1.8583714,-2.2861354,-1.0779126,-2.9923978,-2.1958616,-0.40794706,-0.3506177,0.21085607,0.39614698,0.46702477,-0.1904523,-0.28659886]],"activation":"σ"},{"dense_2_W":[[-0.13722074,0.17729984,-0.24335465,0.24187207,-0.14201832,-0.07732416,0.13892417],[-0.4686111,0.30702016,-0.15520222,0.2413592,-0.06519562,-0.02441734,0.05019473],[0.79214656,-0.7921441,-0.6606072,0.055532016,-0.11311045,-0.08024592,-0.0085274875],[-0.25042439,0.21615438,0.4954985,0.0046605244,-0.4504836,-0.13616334,-0.39802498],[0.49501747,-0.8520829,-0.74666256,0.59406155,-0.3424727,-0.42375195,-0.056689456],[0.09918636,-0.27861944,-0.06896329,0.07916021,0.39362162,-0.3197992,-0.38495535],[-0.44832206,0.775501,-1.5508496,-1.2964923,0.2656348,0.73607206,0.102380335],[-0.12338452,0.45182562,0.15285002,0.36166486,0.106165096,-0.44855922,0.26180896],[1.468655,-2.9420528,1.1340134,-1.8203074,-1.8435699,1.8503501,-0.6241417],[0.11571435,0.44641992,0.5466342,0.460799,0.34136263,0.118771955,0.03079372],[-0.89526504,0.4808293,-0.020656256,0.23367782,0.24296117,0.14677529,-0.17654741],[0.48179916,-0.9906037,-0.5923862,-0.4594782,-0.35988396,0.8058588,-0.045400906],[0.5093772,0.44455037,0.17609815,-0.81010824,-0.7701845,-0.67883664,-0.105422966]],"activation":"σ","dense_2_b":[[-0.016313186],[-0.23423415],[-0.11555125],[0.031153541],[-0.008395348],[-0.05427732],[0.04926095],[-0.03232725],[1.3587319],[0.039414253],[-0.2525624],[0.069728516],[-0.1901692]]},{"dense_3_W":[[-0.40749985,-0.48021835,0.56590366,0.18960631,0.38889936,-0.016490487,0.2452584,-0.49623072,0.38123888,-0.64162004,-0.4950841,-0.28877184,0.033746734],[-0.42167312,0.4292303,-0.117614456,-0.051768117,0.051334534,0.5342065,0.5592815,-0.093919486,0.65363497,-0.43596736,0.16242468,0.2578982,-0.2107315],[0.3909801,0.0338481,0.17298904,-0.6669294,0.66819596,0.5040033,-0.11421765,0.24396016,0.58365494,-0.4551556,0.13173825,0.29966846,-0.28813577]],"activation":"identity","dense_3_b":[[-0.039529935],[-0.049995966],[-0.054298006]]},{"dense_4_W":[[0.5930795,0.46760607,0.73884505]],"dense_4_b":[[-0.046037514]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json deleted file mode 100644 index 1383fdf7f9..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.0000353],[0.91031396],[1.269469],[0.0315604],[0.9563133],[0.95031977],[0.9356424],[0.873496],[0.8912867],[0.8935701],[0.96191794],[0.031832103],[0.031727515],[0.031619374],[0.03170114],[0.03179356],[0.031944003],[0.03203715]],"model_test_loss":0.025683574378490448,"input_size":18,"current_date_and_time":"2023-08-31_22-32-43","input_mean":[[27.019146],[0.2162388],[-0.102987334],[-0.016973253],[0.2426502],[0.23661843],[0.22663806],[0.18541981],[0.17368032],[0.14804864],[0.09238692],[-0.017235657],[-0.017166195],[-0.017074104],[-0.016875083],[-0.016880676],[-0.017125089],[-0.017351476]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.23588695],[-0.5088953],[1.5173167],[0.21325926],[0.7270255],[1.0430372],[-2.1749456]],"dense_1_W":[[-0.00035987928,1.4975938,2.03412,-0.83676016,-5.5800395,-1.7383903,-0.18633558,6.249567,0.15692733,1.1870492,-1.8389847,0.8397649,0.41889027,0.19991927,-0.71028113,-0.42742363,-0.01929488,0.56470984],[0.1451778,-0.42022082,-0.08357744,0.37352008,0.13762045,-0.513736,0.19210075,-0.99654514,0.07671047,0.3092085,-0.09438795,-0.7692168,-0.05790273,-0.019019479,0.68036485,-0.3681197,0.042775016,0.113177255],[0.17934947,0.6802453,0.53991216,1.2953564,0.36064458,-2.232729,-1.3662916,9.39327,3.2034888,0.82174385,-3.8604288,-0.059266165,0.23885792,1.2206435,-0.037034295,-1.0659415,-1.2380418,-0.38709572],[-0.63551307,0.14085051,-0.058989003,-0.096907504,-0.08637354,-0.9568107,-0.203569,0.09172185,-1.7067626,0.23453063,0.40079904,-0.33019188,-0.14800894,0.4674501,-0.058009204,-0.3754687,-0.10436635,0.64636946],[0.33742648,-0.36501276,-0.034292817,-0.51860994,-1.3856511,-1.5455489,-1.0439808,-0.75624853,-1.0810176,-0.5734188,0.55518353,-0.80131483,-0.6185672,-0.28676248,-0.104135,-0.62493587,-0.8962451,-1.5516719],[0.43760708,-1.6991494,-0.03338309,-0.96213526,0.00956474,-1.2663416,-1.9227605,-3.5994406,0.26717234,1.618855,-0.69799376,-0.3365453,0.08994935,0.16855639,-2.0510433,-1.3217996,-1.0182589,-0.993361],[0.38308197,-1.8382412,-0.15014274,0.11305897,1.90282,-0.91276294,-1.8583714,-2.2861354,-1.0779126,-2.9923978,-2.1958616,-0.40794706,-0.3506177,0.21085607,0.39614698,0.46702477,-0.1904523,-0.28659886]],"activation":"σ"},{"dense_2_W":[[-0.13722074,0.17729984,-0.24335465,0.24187207,-0.14201832,-0.07732416,0.13892417],[-0.4686111,0.30702016,-0.15520222,0.2413592,-0.06519562,-0.02441734,0.05019473],[0.79214656,-0.7921441,-0.6606072,0.055532016,-0.11311045,-0.08024592,-0.0085274875],[-0.25042439,0.21615438,0.4954985,0.0046605244,-0.4504836,-0.13616334,-0.39802498],[0.49501747,-0.8520829,-0.74666256,0.59406155,-0.3424727,-0.42375195,-0.056689456],[0.09918636,-0.27861944,-0.06896329,0.07916021,0.39362162,-0.3197992,-0.38495535],[-0.44832206,0.775501,-1.5508496,-1.2964923,0.2656348,0.73607206,0.102380335],[-0.12338452,0.45182562,0.15285002,0.36166486,0.106165096,-0.44855922,0.26180896],[1.468655,-2.9420528,1.1340134,-1.8203074,-1.8435699,1.8503501,-0.6241417],[0.11571435,0.44641992,0.5466342,0.460799,0.34136263,0.118771955,0.03079372],[-0.89526504,0.4808293,-0.020656256,0.23367782,0.24296117,0.14677529,-0.17654741],[0.48179916,-0.9906037,-0.5923862,-0.4594782,-0.35988396,0.8058588,-0.045400906],[0.5093772,0.44455037,0.17609815,-0.81010824,-0.7701845,-0.67883664,-0.105422966]],"activation":"σ","dense_2_b":[[-0.016313186],[-0.23423415],[-0.11555125],[0.031153541],[-0.008395348],[-0.05427732],[0.04926095],[-0.03232725],[1.3587319],[0.039414253],[-0.2525624],[0.069728516],[-0.1901692]]},{"dense_3_W":[[-0.40749985,-0.48021835,0.56590366,0.18960631,0.38889936,-0.016490487,0.2452584,-0.49623072,0.38123888,-0.64162004,-0.4950841,-0.28877184,0.033746734],[-0.42167312,0.4292303,-0.117614456,-0.051768117,0.051334534,0.5342065,0.5592815,-0.093919486,0.65363497,-0.43596736,0.16242468,0.2578982,-0.2107315],[0.3909801,0.0338481,0.17298904,-0.6669294,0.66819596,0.5040033,-0.11421765,0.24396016,0.58365494,-0.4551556,0.13173825,0.29966846,-0.28813577]],"activation":"identity","dense_3_b":[[-0.039529935],[-0.049995966],[-0.054298006]]},{"dense_4_W":[[0.5930795,0.46760607,0.73884505]],"dense_4_b":[[-0.046037514]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json deleted file mode 100644 index d81339bae9..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[10.263361],[1.5407822],[1.6990757],[0.031916086],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[0.031784274],[0.031784274],[0.031784274],[0.031784274],[0.031784274],[0.031784274],[0.031784274]],"model_test_loss":0.050728149712085724,"input_size":18,"current_date_and_time":"2023-09-28_17-19-10","input_mean":[[21.170568],[0.0028904085],[-0.01997667],[-0.011566885],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.8283137],[-0.6380811],[-0.14581172],[0.21757337],[-0.17584349],[-0.15822433],[-0.04526756]],"dense_1_W":[[-0.12061483,-2.6186888,-5.533526,1.2848519,0.10997799,0.09768942,0.29055217,-0.4338942,0.45353734,0.40870407,0.74510694,0.035301626,0.1254258,0.06881082,-0.43392724,-0.6579088,0.12848276,0.10206295],[0.47858974,1.0521514,0.13895132,-0.11845431,-0.6055809,-0.30129787,0.10536316,0.36635193,0.062468443,0.16439146,0.7524098,-0.08773286,0.08453637,0.14768569,0.054678865,0.04296218,-0.1013483,-0.017113626],[1.5098917,0.5894743,0.59322363,-0.40857914,-0.04409986,-0.059111845,-0.22999583,0.13513245,0.20424314,0.8996403,0.6257698,-0.012137316,-0.26447135,0.33300093,0.5780546,0.11556365,-0.21325883,-0.11405065],[-0.09270235,4.2095594,-0.03419901,-0.85176253,-0.792438,-1.1375993,-0.95709634,-0.5417718,0.13269264,0.34799594,0.8776221,0.23166949,0.25684002,0.14214455,0.31949127,-0.1842014,-0.048224565,0.06972774],[-0.07368613,7.987101,-1.5705101,-2.7268257,-1.6060512,-2.2150717,-1.7734491,-1.0044583,-0.9965295,-0.53904784,-0.71252525,0.82295734,0.079120055,0.8620408,0.040507376,0.5511871,0.57866305,-0.3000211],[-0.19393307,1.3685007,-0.81581175,-0.65915656,-0.26665,-0.18225093,-0.2348052,-0.613443,-0.4242962,-0.1411918,-0.40366364,0.14329708,-0.15040468,0.111927874,0.35063627,0.2598781,0.044979107,-0.13300987],[-0.15487364,1.5682242,-0.39758956,-1.613167,-1.2005973,-1.3606614,-1.4602566,-0.8778308,-0.8630755,-1.1338134,-1.5346371,0.44767708,-0.07334435,0.46988532,0.38771385,0.18633042,-0.31606805,0.49087706]],"activation":"σ"},{"dense_2_W":[[0.08773213,1.118686,-0.19026187,-0.18222769,0.05527968,-0.51330656,-0.036496755],[-0.5858637,-0.4254996,0.021144927,-0.08652764,-0.21240492,0.2946317,0.2629631],[0.20821263,-0.6136043,-0.2656985,-0.11885001,-0.23193532,0.573116,0.19101338],[1.3147112,0.8279403,-1.8892661,0.22684072,0.5924725,0.18479976,1.5572529],[0.09764118,0.8507632,0.54017293,-0.14499734,-0.08574703,-0.8551757,0.525648],[-0.63802594,-0.65069646,0.26210403,-0.24471927,0.48373717,-0.2968227,0.06695796],[-2.1634326,-0.6064817,-1.8872,1.6661983,0.24116987,-1.8317598,-1.4297333],[0.030689137,0.045585413,-0.619795,-0.3127205,0.00026456476,-1.2520658,-0.021226548],[-0.43981192,-0.6087822,0.26009014,-0.41205314,0.10397853,0.30045325,0.15389265],[-1.4882747,1.6382228,0.1060073,1.4234135,2.3527496,-1.4529006,-0.6220931],[0.32924128,-0.7916863,-0.16856577,-0.49799073,-0.3400066,0.34466445,0.47758287],[-0.3820367,-0.07035885,-0.770717,-0.08017813,-0.4997505,-0.5413408,-0.22099844],[-0.5534209,0.15586813,0.46922186,-0.285645,-0.43601796,-0.5457336,-0.09376932]],"activation":"σ","dense_2_b":[[-0.07499287],[0.056654293],[-0.033568453],[0.012748798],[-0.16169988],[-0.031001234],[0.4491975],[-0.18781444],[-0.022485357],[-0.4145325],[0.05514316],[-0.17725536],[-0.027867718]]},{"dense_3_W":[[0.48439038,0.11946673,-0.10710485,0.2569157,0.55854136,0.69526154,-0.045092683,-0.22340369,-0.057273377,-0.43256047,0.51690865,-0.45954293,0.5041862],[-0.39225766,0.5658039,0.13191655,-0.26512942,-0.45468462,0.029447814,-0.7955542,-0.47096017,0.19746478,-0.40087095,0.6816974,-0.313998,-0.2719639],[-0.20068921,-0.29952648,0.34961987,-0.66211593,-0.47286674,-0.1865282,0.25309294,0.27628332,0.5233655,0.30510098,0.5197866,-0.51454246,0.46288064]],"activation":"identity","dense_3_b":[[0.055204097],[0.070561714],[0.057622224]]},{"dense_4_W":[[-0.5929016,-1.4001877,-0.6662524]],"dense_4_b":[[-0.06424638]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json deleted file mode 100644 index 881f47c901..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.342214],[1.5915664],[0.60113484],[0.048193663],[1.5680411],[1.57577],[1.5836853],[1.5711677],[1.5445132],[1.5007596],[1.4529978],[0.047915205],[0.04800539],[0.04808892],[0.04822398],[0.04817677],[0.047881734],[0.047405947]],"model_test_loss":0.019342588260769844,"input_size":18,"current_date_and_time":"2023-08-05_06-09-11","input_mean":[[22.757933],[-0.016342578],[-0.001405228],[-0.014619173],[-0.018091483],[-0.018382493],[-0.019270267],[-0.018759886],[-0.019559544],[-0.017848592],[-0.020014366],[-0.014564899],[-0.01457757],[-0.014600966],[-0.014757987],[-0.014915743],[-0.015121007],[-0.015359475]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.045577038],[-2.8160777],[-0.21418032],[2.9552083],[-0.06852827],[0.029141279],[-0.053249933]],"dense_1_W":[[0.0010664682,1.3813498,-8.153277,-0.009101015,-0.1484779,1.0008405,-1.5930991,-1.195274,0.6136762,0.3560462,-0.30077773,0.93531257,0.14550218,-0.40074933,-0.21716364,0.13834935,-0.0658936,-0.49427196],[-0.7338253,-0.037501235,-0.49922377,-1.0526338,-0.46141604,-1.3649396,0.7309814,-0.91667104,0.044683233,-0.18628967,-0.20878822,-0.2678598,0.48446324,0.51164204,0.09547851,0.41491362,-0.4524314,0.16594785],[-0.0032175342,3.5451593,-0.11421584,-0.2511033,0.27893174,0.6384996,0.80790603,1.3835542,1.8000495,2.249461,1.4026878,0.7851167,-0.35052946,0.041820426,-0.39790183,0.45703772,-0.30459648,0.18287674],[0.72289664,-0.77138704,-0.5025135,-0.49323097,-0.39893976,-0.8779149,0.6848096,-0.58729875,-0.16643623,-0.14427555,-0.15013328,-0.11467142,-0.27280045,0.48508415,0.52080667,-0.0029569597,-0.28170735,0.06367212],[0.00014026981,-2.0353239,0.0060915067,0.4794941,1.1882906,-1.512865,0.80642134,-0.26044324,-0.56213886,-0.365122,0.55078083,-0.34897435,-0.32031298,0.46106994,0.37792024,-0.14116105,0.15597256,-0.32811671],[0.0011494387,1.9060265,8.3941965,-0.3078165,-0.9530427,0.6589645,-1.2487054,-0.541133,0.13451256,0.2805466,-0.33187166,0.9900705,0.2821258,-0.51270896,-0.5130031,-0.28222615,0.042734932,0.27233443],[-0.0014444552,-1.0933362,0.003359957,-0.15052961,0.37165833,1.7087307,-1.4971043,0.673802,-0.108465396,-0.088505454,0.21561684,0.6252258,-0.15019403,-0.34727478,0.08958758,-0.1723621,-0.25557828,0.29778987]],"activation":"σ"},{"dense_2_W":[[0.20810607,-0.13481373,-0.15003344,-0.6067625,-0.31937903,-0.37380016,0.4666911],[0.71834767,0.15669753,-0.11389502,0.27131546,-0.060118295,0.039282244,0.52961355],[-0.27200606,0.43380752,-0.106262706,-0.49363258,0.35659012,-0.01706296,-1.0807354],[-0.79583454,-0.66428274,-0.42157334,-0.52979547,-0.2803004,-0.57637554,0.084149174],[0.1230394,-0.57023287,0.28639448,-0.506744,-0.9920808,0.7510901,0.8584937],[-0.41256845,0.35423175,0.13009231,0.5198333,0.7576573,-0.7053181,-0.3390053],[-0.15090485,0.33375353,-0.64164793,0.57386595,0.25700107,-0.15245672,-0.49020413],[-0.50120676,0.5210849,-0.3282951,0.4276323,1.0257447,-1.0398436,-0.8911315],[0.11402861,-0.41491523,0.247507,-0.39776865,-0.6089287,0.20646147,0.6692102],[0.09411492,0.31819808,0.41330767,0.024243973,0.2314893,0.08529045,0.14911193],[0.5179265,0.20473345,-0.36762783,-0.009045922,-0.19436747,-0.548099,-0.08656279],[-0.69121784,-0.14201449,0.3887621,0.10787631,1.0371574,-0.64747447,-0.73437464],[-0.07860244,-0.597764,0.019551078,0.010199122,-0.7493642,0.66619915,0.121666186]],"activation":"σ","dense_2_b":[[-0.04259814],[-0.053309314],[-0.28045595],[-0.23801634],[0.00944943],[-0.109921046],[-0.037457183],[0.24627604],[-0.0069056284],[-0.04725389],[-0.03361769],[0.044101644],[-0.0009850285]]},{"dense_3_W":[[-0.19631335,-0.47722518,-0.019853225,-0.29363275,-0.625923,0.35145283,0.62401354,0.14337404,-0.25707108,-0.51310915,0.2565006,0.61742216,-0.07952821],[0.5868974,-0.36786363,-0.0177682,-0.45121866,0.68608487,-0.55178356,-0.35236016,-0.7226455,-0.015394288,-0.10650332,0.5391039,0.17791761,0.34196886],[0.16821232,-0.35580373,0.26906335,0.41736925,-0.6979869,0.41801625,0.34707317,0.7784011,-0.10002936,0.32485273,-0.3644285,0.49092358,-0.43872768]],"activation":"identity","dense_3_b":[[-0.019481273],[0.031026587],[-0.03595322]]},{"dense_4_W":[[-0.72340566,0.21244061,-0.67248434]],"dense_4_b":[[0.026229527]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json deleted file mode 100644 index 3f3339df3a..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.330973],[0.76358914],[0.44177866],[0.03320337],[0.7486537],[0.75224125],[0.7557512],[0.75438327],[0.7465672],[0.74091655],[0.72914463],[0.0329607],[0.03301792],[0.033070814],[0.03301661],[0.03287754],[0.032609064],[0.032365352]],"model_test_loss":0.017960982397198677,"input_size":18,"current_date_and_time":"2023-08-05_11-13-44","input_mean":[[26.671413],[0.058293253],[0.0043816683],[-0.009296047],[0.051497567],[0.053402483],[0.055134997],[0.052773204],[0.048979968],[0.049683023],[0.049251523],[-0.009440276],[-0.009414148],[-0.0093886675],[-0.009580273],[-0.009747584],[-0.0099527575],[-0.010216651]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.0565631],[-0.21411526],[0.8872178],[-0.73335165],[0.15017867],[-0.11148372],[-0.47569525]],"dense_1_W":[[0.3191545,0.60174775,0.28932345,-0.22362822,-0.29199237,0.8730365,-0.521551,0.33030298,0.11159445,0.13276689,-0.38501248,0.6321162,0.3564933,0.05880718,-0.9028309,-0.1717296,-0.26462427,0.5646279],[-0.023215095,-0.07631244,-6.183804,0.4336958,-0.626333,-0.124013826,0.87823963,0.39341283,-1.2711039,-0.14306393,0.85833305,-0.31328923,-0.0057761483,-0.45113772,-0.13151798,0.48965174,-0.36885157,0.3205572],[-2.0049603,0.2562212,0.0074997903,0.15363267,-0.39047363,0.31743163,0.21375915,-0.08397038,-0.018758992,-0.03530787,0.008622982,-0.12050882,0.1763159,-0.0045240982,0.037064075,-0.22826771,-0.13217667,0.04430793],[1.9245242,0.17275631,0.007043335,0.38269743,-0.0008547418,0.339189,-0.33623248,0.24801533,-0.05911935,-0.28433016,0.1669682,0.35657904,-0.114900894,-0.49049523,-0.009977193,-0.22768717,0.10655727,-0.07729294],[0.087077305,-0.6003964,-0.1793809,0.25290787,0.029625213,-0.19629402,0.31878904,-0.08061085,-0.21837004,0.20829839,0.08959171,-0.30037507,0.05254617,-0.03698672,0.101752795,0.042104118,-0.12350318,0.0102602765],[0.0048545175,-0.21292417,0.016375653,-0.053975366,0.13703452,-1.074619,0.58369935,-0.17510407,-0.09377952,-0.14615338,0.07890737,-0.15442717,0.22381516,0.0459976,0.11773441,-0.018902443,0.06373771,-0.104368865],[-0.09855327,-0.1122513,-0.37817958,-0.008812584,-0.5383468,0.15305355,-0.7411861,-0.4013825,0.30445403,0.2985024,-0.095201105,0.47804987,-0.17235969,-0.47166833,0.08742673,-0.13090365,0.016420232,0.102743514]],"activation":"σ"},{"dense_2_W":[[0.15356968,0.03880223,-0.0033031541,0.71969205,-0.5551066,-1.2770053,0.852479],[-0.5814842,-0.4205401,-0.44136125,-0.20208618,0.62991315,1.2533134,-0.07128404],[-0.85485667,-0.27133262,-0.18317062,-0.5872431,0.0009068991,-0.8143884,0.24185239],[0.485521,-0.12876768,0.13680507,0.5191915,-0.33198348,-1.0602576,0.5135775],[0.9131491,-0.41206366,-0.11229955,0.8287815,0.013217909,-0.9175312,0.48983303],[-0.20012985,-0.18931809,-0.43908978,-0.2832052,0.8635579,0.22567339,0.18861422],[0.018180205,-0.3399698,-0.79971874,0.03282556,-0.17152967,0.065363236,-0.11356214],[-0.90014875,0.04525059,-0.62574875,0.21017492,-0.2622857,-0.64767957,-0.17940037],[0.053192608,-0.6683769,0.5183324,0.3161827,-0.43558958,-0.7137959,0.50653154],[-0.084774315,0.02843045,0.11588221,0.48853788,-0.6368693,-0.9299525,0.7869719],[0.12993711,0.85281557,-0.52333623,0.47304502,0.3320428,0.84226716,-0.51683784],[-0.24643111,0.40814662,-0.45649922,0.021663502,0.7520966,0.5363597,-0.51477396],[-0.30198774,-1.0936731,0.5198244,-0.6298923,-0.47961158,-0.46270132,0.17015655]],"activation":"σ","dense_2_b":[[-0.030014591],[0.112632275],[-0.38837513],[-0.009132882],[0.32848948],[0.05313135],[-0.1084323],[-0.38779393],[-0.17182945],[-0.17182226],[0.08077316],[-0.009312498],[-0.20723443]]},{"dense_3_W":[[-0.7191352,0.82575274,-0.4208178,-0.42105228,-0.12746234,0.6060775,-0.36437324,0.011044404,-0.06605932,-0.23161481,-0.07892281,-0.2586107,0.22741254],[-0.03922699,0.28218865,-0.08608041,-0.49147275,-0.75184256,0.37435916,0.46016482,-0.0026176786,-0.28095058,-0.18674251,0.6548586,0.23019525,-0.66313064],[-0.70486027,0.67592573,0.31197107,-0.25772044,-0.32144958,0.59903663,-0.013240984,-0.097765416,-0.4100128,-0.39269626,0.3077929,0.50466055,-0.20290402]],"activation":"identity","dense_3_b":[[0.06820397],[0.04168449],[0.03600891]]},{"dense_4_W":[[-0.5796537,-0.81390715,-0.64433306]],"dense_4_b":[[-0.04506098]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json deleted file mode 100644 index f8074bf939..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.210334],[0.9762297],[0.46461004],[0.04707402],[0.9570847],[0.962571],[0.9688103],[0.9626872],[0.9493875],[0.93438673],[0.91365314],[0.046885576],[0.04696745],[0.047010563],[0.047022652],[0.047106303],[0.047075313],[0.0468335]],"model_test_loss":0.01662263832986355,"input_size":18,"current_date_and_time":"2023-08-05_06-34-39","input_mean":[[24.433825],[0.027294964],[-0.007775845],[-0.008583761],[0.028062655],[0.026877884],[0.025869267],[0.024155349],[0.025895124],[0.02763769],[0.028466335],[-0.00856314],[-0.008589166],[-0.008611988],[-0.008814955],[-0.008984508],[-0.009198656],[-0.009352716]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.01408288],[1.6081693],[-0.06155718],[-1.54345],[-0.24193887],[-2.5958166],[-2.5204089]],"dense_1_W":[[0.0027263653,0.8206801,-0.0032928735,0.13611287,-0.076531366,1.5959642,-1.2799904,-0.06996241,0.03039119,0.02152609,0.0963275,0.5368505,0.14871612,-0.3396571,-0.2039869,-0.6619022,-0.039203983,0.4320533],[1.0668212,-0.75284845,0.1227131,0.26535362,0.13527365,-0.2295604,1.1708634,-0.021281645,-0.15021786,0.39643094,0.74283296,-0.3838045,0.003083275,-0.19208938,-0.0017936465,0.703765,-0.092454515,-0.31097198],[0.0027553164,0.7843536,4.634527,-0.26233014,-0.5298467,-0.5220332,-0.74772763,0.2625032,1.8427289,0.32081687,-1.2304753,0.90846735,0.22365782,0.250327,-0.6063961,-0.39930865,-0.18285267,0.079409026],[-1.1514753,-1.0265552,0.13074096,0.38378564,0.7118709,-0.35103342,1.0191414,-0.004307897,-0.1731455,0.13679343,1.0576029,-0.40426365,-0.26618227,0.048847493,0.23475589,0.2227605,0.085375875,-0.30894497],[-0.0047089225,-0.5524328,-0.0045054047,0.66928285,0.064004675,-1.3554454,0.75827724,-0.44520453,-0.070583,0.2953706,-0.17199413,-0.52929235,0.076917104,0.5385476,0.43512538,-0.24582133,0.1710678,-0.17150968],[-0.85862017,0.34829536,0.10180492,-0.16177164,-0.70526654,0.610196,-0.51517403,0.19511817,0.5740542,0.4342128,0.10650083,-0.08206996,-0.14800107,-0.11421001,0.25861365,0.49271822,0.13999887,-0.38721174],[-0.852335,-0.32791263,-0.10090505,-0.21708132,0.70464164,-0.4129493,0.19680835,-0.0039844504,-0.58808166,-0.5447895,-0.055174615,-0.009039755,0.3263737,0.39800122,-0.43388817,-0.2980978,-0.109957084,0.34861532]],"activation":"σ"},{"dense_2_W":[[-0.8770086,-0.024234872,-0.29209283,0.2774463,0.24086247,-0.38808098,0.76261544],[0.7931689,-0.4432339,0.5408512,-0.40607476,0.018381504,0.22573993,-1.2025113],[0.2774073,-0.28390488,0.48924458,-0.10028617,-1.1787524,0.55241233,-0.31903595],[1.187657,-0.90130055,-0.11544119,-0.48425758,-0.5087712,1.5533149,-0.44771603],[0.58252364,-0.7203072,0.46005324,0.2731612,-0.67982006,0.15357131,-0.57816696],[-0.9171702,0.37134174,-0.41417953,0.17179497,0.39356327,-0.10935133,-0.09958233],[-0.66176236,0.14740363,0.07868582,-0.40370503,0.3730389,-0.06752067,0.5966177],[0.057574127,-0.085722245,0.09327541,0.19917345,-0.112103276,0.4723292,-0.71419835],[-0.3262963,-0.03496345,-0.18610413,0.28829092,0.5575449,-0.96931815,0.2509937],[-0.14358501,-0.53553015,0.102502294,0.38049912,-0.011593848,-0.10357873,0.38666174],[1.0979931,-0.5266687,0.011019552,-0.36888388,-0.36552617,0.7437136,-1.0329511],[-0.99298805,0.033587284,-0.0815785,0.2939779,0.17858009,-0.36309564,0.7169502],[0.1916819,-0.3956481,0.23111235,-0.19816011,-0.79406476,0.9587695,-0.5586975]],"activation":"σ","dense_2_b":[[-0.08816166],[0.23371251],[-0.22228523],[-0.015670193],[-0.03642067],[-0.008211963],[-0.17989649],[0.0062512616],[-0.030759228],[-0.15077485],[0.01450626],[-0.07085153],[-0.13338038]]},{"dense_3_W":[[-0.13808444,0.27692232,0.13246109,0.13561308,-0.050800115,-0.3225275,-0.5869831,0.64456654,0.19247706,-0.48861238,0.47843403,-0.009448491,-0.38144258],[-0.18783484,-0.17080472,0.36493075,-0.6014318,-0.6958318,0.33951765,0.06917564,0.34324136,0.5521416,-0.65650636,0.07141213,0.48251265,-0.095275834],[0.67380184,-0.285928,-0.43182224,0.052221615,0.0014595015,0.21199639,-0.06704697,-0.40021017,0.5456471,0.4511299,-0.31108952,0.5755762,-0.41977003]],"activation":"identity","dense_3_b":[[0.05807602],[-0.052454475],[-0.061056226]]},{"dense_4_W":[[0.47078133,-0.7455223,-0.98688024]],"dense_4_b":[[0.054955926]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json deleted file mode 100644 index e00c5807e6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.150079],[1.133713],[0.43403986],[0.044542935],[1.116597],[1.1228739],[1.1282343],[1.1087918],[1.0829574],[1.0503302],[1.0201406],[0.044353947],[0.04440376],[0.04444536],[0.044435233],[0.044352584],[0.04415751],[0.04374931]],"model_test_loss":0.021649373695254326,"input_size":18,"current_date_and_time":"2023-08-05_13-22-16","input_mean":[[28.718779],[0.027420705],[-0.0010486431],[-0.006476941],[0.03194379],[0.030714247],[0.029522395],[0.031175172],[0.03329464],[0.03204752],[0.030367676],[-0.006409366],[-0.0064388723],[-0.0064642774],[-0.006523428],[-0.0065177125],[-0.006653054],[-0.0068931]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.1557553],[0.15239237],[-0.7883996],[0.21607175],[-0.10778271],[-0.110362194],[-0.0008402114]],"dense_1_W":[[-0.39730522,-1.2665217,-0.018751338,-0.36011004,0.06413814,0.13557298,0.675142,-0.58107,-0.71815616,-0.67207223,0.8874161,-0.21224383,0.3109732,0.11582158,-0.10825705,0.20035155,0.13655844,-0.11123461],[0.08248368,-0.9288284,0.006650333,-0.3600497,0.048258215,-0.4385164,0.7812643,-0.36598027,-0.17953908,0.0043003927,0.14774609,-0.2284627,-0.15616533,0.35386756,0.5318769,0.081253365,-0.030911509,-0.12792926],[-0.012793936,-0.95197654,0.0013175827,0.4850853,0.06403457,-0.60757506,1.0891476,-0.15639184,-0.07080147,-0.141186,0.14856425,-0.6297083,-0.09511309,0.13792045,-0.003489132,0.39871147,0.23734719,-0.41034752],[0.036720853,-1.1706092,-0.0117205065,0.22939475,0.06332086,-0.27194244,0.6138069,0.0057003004,-0.23597574,-0.20802614,0.23779614,-0.2707945,-0.065516055,0.16179438,-0.1341947,0.014489582,0.27160132,-0.19034316],[-0.017165367,-0.31984007,-5.1292553,-0.09900438,1.891005,1.522304,1.3964776,-0.27762464,-3.1030765,-1.4986553,0.23631042,-0.58467907,-0.44058293,0.4239101,-0.07130837,0.06697376,0.22419664,0.49982306],[-0.029110994,-0.78375465,0.030992711,0.09522315,-0.32218152,-0.18287186,0.20446928,0.2509469,-0.32046452,-0.69563234,0.43957192,-0.2393486,0.0034883572,0.3692833,-0.1480584,-0.21708085,-0.04099675,0.16072796],[0.011984756,0.4372055,0.00038938643,-0.3804347,-0.14191024,0.83822465,-0.75622463,0.1774374,-0.15122366,-0.08789587,0.1162553,0.36315253,0.019167189,-0.015732778,-0.21518882,-0.17138954,-0.06687768,0.16531232]],"activation":"σ"},{"dense_2_W":[[-0.66123444,0.053167176,-0.67734295,-0.43834037,0.30200854,-0.6062845,0.49393648],[-0.5499434,-0.5910183,-0.04735582,-0.9205705,0.29150906,0.18296994,0.49427703],[-0.3087813,-0.6735604,0.1032743,-0.7492757,-0.47998416,0.38746807,-0.3792903],[0.22218491,-0.37423322,-0.68595016,-0.3057585,-0.67376715,0.18519343,0.26224977],[0.12493204,-0.6740838,-0.48158708,-0.11590075,-0.6646322,0.3766876,0.5211831],[0.033400588,-0.37467673,0.13653982,-0.7425377,-0.58915126,-0.44702393,0.15368707],[-0.03525442,0.6467697,0.27980375,0.53180575,0.5175674,-0.2184231,-1.3612056],[-0.26941165,0.034494866,0.54393685,0.823304,0.91855395,-0.5912671,-0.16972241],[0.5912191,0.50708044,0.8906907,0.4043412,-0.6052221,0.9453074,-0.9854745],[-0.1847966,0.29045746,-0.35760128,0.2358291,0.08363469,-0.28862038,-0.6393691],[0.082734466,-0.20940094,0.1263725,-0.61631376,-0.29357114,-0.22268835,0.48448983],[0.008772746,-0.3295119,-0.77102983,-0.37905028,0.1420826,0.19744958,0.12742513],[-0.34957173,-0.4635609,-0.6658351,-0.074581586,-0.137647,-0.031496365,0.17163728]],"activation":"σ","dense_2_b":[[-0.011190517],[-0.11420608],[-0.11911637],[-0.047058385],[-0.05209559],[-0.0067813573],[-0.6960103],[-0.2218484],[-0.638528],[-0.1287715],[-0.13393182],[-0.13222918],[-0.08612358]]},{"dense_3_W":[[-0.56854904,-0.004440354,0.20522526,-0.5189793,-0.5598319,0.004857475,0.7723675,0.08466752,0.3211879,0.22073807,-0.50451374,0.14052922,-0.15547366],[0.4760816,0.49406376,0.28560668,-0.27424216,0.0395443,0.63189626,-0.5996514,-0.59683996,-0.2216528,0.065270856,-0.40737736,0.13047104,-0.32319623],[0.35351506,0.5386659,0.32769755,0.12265874,0.56839216,0.5655456,-0.034122158,-0.18965866,-0.329834,0.10452169,-0.11418242,0.32698897,0.31875592]],"activation":"identity","dense_3_b":[[0.17258255],[-0.16791473],[-0.16998908]]},{"dense_4_W":[[-0.9664698,0.46322697,0.7462367]],"dense_4_b":[[-0.17601651]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json deleted file mode 100644 index 555843209f..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[5.693015],[1.1106057],[0.4839505],[0.047381964],[1.0865142],[1.0940344],[1.1007035],[1.0835435],[1.057553],[1.0248959],[0.99939334],[0.047141436],[0.047186267],[0.047211904],[0.04706877],[0.046951234],[0.04684611],[0.04661448]],"model_test_loss":0.013941051438450813,"input_size":18,"current_date_and_time":"2023-08-05_08-16-38","input_mean":[[28.37103],[0.03974344],[-0.014893848],[-0.00037599605],[0.044908416],[0.043708824],[0.042289667],[0.039325528],[0.043006305],[0.04660932],[0.04483933],[-0.00043650295],[-0.0004215664],[-0.0004140165],[-0.0003983723],[-0.00044116066],[-0.00051853625],[-0.00058758573]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.1451855],[-0.15737621],[-0.060310073],[0.6073345],[-0.05780308],[-0.16048814],[-0.23519869]],"dense_1_W":[[0.69470924,-0.6133493,0.0012405561,0.019553972,0.06448226,-0.73440015,1.0196836,-0.032631803,-0.21402587,-0.03535706,0.08963821,-0.4151518,0.04951377,0.21540186,0.08403593,0.30007103,0.0721286,-0.21808833],[-0.0055281483,-0.97871476,0.053892706,0.29578617,0.24488142,-0.9456837,0.31968737,0.23062654,-0.3851994,-0.14804605,0.12488454,-0.59180176,0.1747962,0.582284,-0.056728594,0.052842837,-0.25234208,0.08868016],[0.19908331,-0.23178522,-0.00033343132,0.29788065,-0.2630549,-0.9329808,0.9836051,-0.025557669,-0.046352006,0.021415278,-0.10175714,-0.44916221,0.41586125,-0.027728092,-0.11277255,0.28242412,-0.4416653,0.19147082],[0.49298579,0.29445317,0.0024654444,-0.034087177,-0.32976052,0.7320162,-0.13650697,-0.18142147,0.048409745,0.3485382,-0.1782508,0.17317066,0.0046146074,-0.455786,0.23675595,0.17629597,-0.2908207,0.05100971],[0.0025918921,0.60664314,0.08437282,0.0038275314,-0.26773483,0.7368417,-0.8442401,0.35636544,0.09660225,0.06810851,-0.23716143,0.15216075,0.4089829,-0.25967675,-0.5667884,-0.037151016,-0.22253121,0.35003844],[-0.0069139847,0.5928849,5.9585037,-0.2729994,-1.1027155,-0.5361705,-0.39928573,-0.21191321,1.6408015,0.88942456,-0.5805952,0.711463,1.0614796,0.75551856,-0.25333017,-1.0107019,-0.6404496,-0.4423781],[0.77807605,0.4254286,-0.0070603983,0.13885634,-0.11155952,0.92952013,-1.1097448,0.25786868,0.18906161,-0.19558257,0.03620436,0.5284809,0.28771606,-0.39166483,-0.412538,-0.41851315,-0.53765815,0.6955264]],"activation":"σ"},{"dense_2_W":[[0.14673255,-0.25427318,-0.41763714,-0.57974076,-0.56608886,-0.18331228,0.027660826],[-0.22915831,-0.55615884,-0.4508235,0.34225336,0.5593746,0.40537748,0.7960525],[0.21956417,-0.07734256,0.27312982,-0.3854605,-0.08650003,-0.27906924,0.26293612],[-0.77091247,-0.7756027,-0.9580333,0.765381,0.32493275,-0.51463944,0.7389473],[0.5907749,0.26036587,0.5915251,0.1214773,-0.029054264,-0.13793655,-0.038385104],[0.2536978,-0.44341302,0.088218234,-0.07722079,-0.69654363,-0.04497505,-0.37380072],[0.1492596,0.50270057,0.46113217,0.08208802,-0.44300494,-0.049104072,-0.38107514],[-0.033503003,0.31365246,-0.23077266,-0.51006895,0.10363347,-0.780032,-0.6072311],[0.19008167,0.41587985,0.41156146,-0.36104697,-0.25369507,-0.020715002,0.101388365],[-0.12538931,-0.93145704,-0.38526508,0.757801,0.4460356,0.22134012,0.059445396],[-0.010972688,-0.04331066,-0.5205074,-0.61291635,-0.38937822,-0.5410802,-0.776376],[-2.1453147,-0.70847136,-1.2064056,-0.31943244,0.13231355,1.2215211,-0.11054935],[-0.57651573,-0.17007175,-0.34664136,0.4060285,0.8317285,0.13207953,0.11835387]],"activation":"σ","dense_2_b":[[-0.10427355],[0.11536775],[-0.10146174],[0.08055071],[-0.1175017],[-0.09294055],[-0.12414659],[-0.12894793],[-0.122823305],[-0.0023050748],[-0.09449869],[-0.25891626],[0.0091852965]]},{"dense_3_W":[[0.018232554,0.26810202,0.2565264,0.30350316,0.51860917,0.3029135,0.5572722,0.37361154,0.45107833,-0.48839125,0.3939663,-0.0054893196,0.054042112],[0.4726983,-0.7600223,-0.2362871,-0.7305271,0.3979434,-0.16793822,0.08976205,-0.10595847,-0.5852833,-0.20750386,-0.19634347,-0.16581649,-0.49387524],[0.102563694,-0.77121973,0.49441037,-0.74888134,0.4121642,0.45769525,-0.36120865,0.5654234,0.5058435,0.45810163,0.20354177,-0.564163,-0.42752033]],"activation":"identity","dense_3_b":[[-0.09124249],[-0.07674238],[-0.08837357]]},{"dense_4_W":[[-0.9619778,-0.7475,-0.82428706]],"dense_4_b":[[0.088022344]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json deleted file mode 100644 index 3e3f833b7c..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.6771574],[0.8306398],[0.44399694],[0.03148828],[0.82453376],[0.82558274],[0.8276523],[0.8249276],[0.82540375],[0.8268513],[0.8293405],[0.031258367],[0.031317297],[0.031381857],[0.031565305],[0.031729955],[0.031927522],[0.031937882]],"model_test_loss":0.0016914892476052046,"input_size":18,"current_date_and_time":"2023-08-05_15-54-16","input_mean":[[25.397608],[0.061366253],[-0.004759293],[-0.017377611],[0.063574664],[0.0629952],[0.06279838],[0.06257633],[0.0642723],[0.06428019],[0.06443743],[-0.017316736],[-0.01732337],[-0.017324336],[-0.017258912],[-0.017273892],[-0.01738509],[-0.017547127]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5071787],[-0.011610117],[-0.25543153],[-0.2288577],[0.3640026],[-0.20951404],[-0.018084347]],"dense_1_W":[[-0.32076025,0.5609776,0.06455551,0.4650965,-0.3128346,0.29808214,-0.068447836,-0.080615535,-0.1533624,0.086725675,0.0019198896,0.38526085,-0.33096933,-0.4344235,-0.24709408,-0.21656084,0.12910959,0.10089391],[-0.013731939,-0.37048897,1.5160967,1.216611,-0.026065614,-0.012039334,-1.7950301,-0.6103514,1.727483,2.0623763,-0.9575297,0.39149958,-0.218174,-0.51533777,-0.76304054,-0.3384101,-0.10145121,0.34581316],[0.014144666,0.22945884,-0.45639136,0.08440587,-0.19207898,-0.5290964,0.54655564,-0.07094287,-0.41206077,-0.23082434,0.77867293,-0.83082336,-0.31685916,0.3376802,0.18800995,0.28112486,0.5808552,0.0882255],[0.55997515,-0.45515752,-0.3620537,-0.21491247,-0.12751056,0.6437451,0.4513876,0.14484537,-0.012545343,-0.70398337,-0.03420965,0.5712778,-0.34471962,0.2639977,0.15245198,-0.09942475,-0.52654004,-0.39195266],[0.16048487,-2.0932982,0.060834095,-0.43821463,-0.12897933,0.8929607,0.08955616,1.5023427,0.47960326,-0.24697156,-0.2284945,0.3664966,0.36733755,-0.70950145,0.25744,0.16433853,-0.4799496,0.3186391],[0.0031760861,-0.32184288,-0.033980735,-0.4582301,-0.07663507,-0.7593102,0.50883085,0.22713356,-0.20064494,0.3521629,-0.22366937,-0.07778892,-0.2534047,0.56217426,0.41395634,-0.12142341,-0.0027042534,0.03405264],[-0.0017348339,-0.29796287,0.062474936,-0.11221718,-0.23059554,-0.626899,0.10690498,0.5434746,-0.05614545,-0.061325278,-0.2274304,0.29413497,-0.38511482,0.10846904,-0.15861528,0.35446325,-0.38156375,0.18584998]],"activation":"σ"},{"dense_2_W":[[0.08477807,-0.35302192,-0.40779448,-0.5867174,0.13918135,-0.6664157,-0.3491646],[0.3792094,-0.030590685,-0.21691003,0.13814875,-0.22226094,-0.66838443,0.11945859],[0.114434734,0.3219143,-0.65471864,-0.5160347,-0.10297699,-0.546052,0.23859331],[0.4386374,-0.13452144,-0.0146616185,0.408655,0.29078993,-0.45133266,-0.6718732],[0.04953622,-0.309141,-0.028895855,-0.081540965,-0.04211146,0.19563156,0.1549496],[-0.07437576,0.18886302,-0.11578516,-0.02629349,0.5117754,-0.8601534,-0.27231035],[0.07671942,0.0293902,-0.5813721,0.3454169,-0.053973634,0.046247624,-0.35544363],[0.22220099,-0.53176254,0.49601117,0.16283734,-0.41594207,0.14338993,-0.23063558],[0.50082463,0.3444267,-0.5869549,0.31520668,0.3332609,-0.5623406,0.0112578],[-0.05211133,-0.24212956,-0.37504154,-0.24755752,-0.61364114,0.61201805,0.5261763],[0.16144137,-0.5551527,-0.27000764,0.48719284,-0.20183928,0.4279106,0.5559925],[-0.38015607,-0.17513199,0.0054852753,0.49040842,-0.5847223,-0.315286,0.41083756],[0.027273893,0.37111732,-0.29921013,0.35153958,0.6107227,0.058014646,-0.48178723]],"activation":"σ","dense_2_b":[[-0.13192527],[-0.11472918],[-0.2398955],[-0.012978796],[-0.24606323],[-0.16946991],[-0.09656156],[-0.011122704],[-0.13971844],[0.025623204],[-0.01150639],[0.031865247],[-0.14259984]]},{"dense_3_W":[[-0.49097103,-0.38446474,0.19654791,-0.04500209,-0.353884,-0.59052265,-0.26697198,0.25850582,-0.4691939,-0.3658384,0.49351692,-0.21503085,0.43769556],[-0.49650973,-0.24257205,0.27875185,0.056984637,-0.084106766,0.21747197,-0.14523055,-0.062517725,-0.12865941,-0.4967132,-0.47404718,-0.39828455,0.20428851],[0.51754504,0.44354475,-0.12756172,0.60820955,-0.16570193,-0.24837321,0.3779718,-0.12072089,0.33560675,-0.29205063,0.42597872,-0.57351613,0.275068]],"activation":"identity","dense_3_b":[[0.03487869],[-0.013982357],[-0.02665594]]},{"dense_4_W":[[-0.40196383,0.97064435,0.88333386]],"dense_4_b":[[-0.019127952]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json deleted file mode 100644 index 8d39b0612d..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.8682947],[1.3247597],[0.52117354],[0.053211],[1.3196762],[1.321261],[1.3220409],[1.3065661],[1.2855599],[1.2555516],[1.221194],[0.05287544],[0.052969508],[0.053053025],[0.053157352],[0.05310392],[0.052811027],[0.052315235]],"model_test_loss":0.004652302712202072,"input_size":18,"current_date_and_time":"2023-08-05_17-08-23","input_mean":[[25.097141],[0.030100366],[0.008127931],[0.0017367124],[0.025092127],[0.026649075],[0.027925659],[0.031518627],[0.031421654],[0.03279364],[0.028935509],[0.0016365603],[0.0016674129],[0.0016875914],[0.001713633],[0.0017992958],[0.0018609823],[0.0017497891]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.01906636],[-0.026147846],[-0.06956214],[-0.12893584],[3.3396657],[-0.11347563],[3.4662268]],"dense_1_W":[[0.0016520686,0.43010652,-0.016737647,-0.5847046,0.42132026,0.6080183,-0.36023164,0.04929399,-0.05639926,0.055730373,0.07496767,0.40559384,0.5495037,-0.78057534,-0.3052922,-0.4512687,-0.15058433,0.049945023],[0.0036362763,0.904483,0.001981453,-0.33253717,0.25831643,0.7194124,-0.29999894,-0.4751608,-0.22190008,0.22535524,0.18900982,-0.04392861,0.30455038,-0.40629083,0.551194,0.3208965,0.2746982,-0.6420702],[-0.0013973061,-1.2801182,-4.660272,-0.2299565,0.5036499,1.121957,0.6687826,0.08227576,-0.87890655,-0.816766,0.5726014,-0.48010656,-0.7163965,0.08434925,0.26663804,0.6864054,0.38185596,-0.08777598],[-0.024978189,0.45179686,-0.43001783,-0.19626012,-0.145855,0.3520434,-0.9694731,0.11912776,-0.069412105,-0.65245837,0.3938456,0.88234675,0.2711265,-0.09912691,-0.12296636,0.14305602,-0.12646228,0.12271214],[0.6889864,-1.4383845,-0.5985031,0.43910387,-0.14574279,-0.5830182,0.28500378,-0.18694921,-0.5173389,-0.15667093,0.1595579,-0.3700834,0.11795122,0.28467125,-0.20037529,0.44890952,-0.43353197,0.15507948],[-0.016126553,-0.5084034,-0.3446227,0.13306846,0.16979276,-0.6851119,0.97122914,-0.11992911,-0.38304567,-0.3581892,0.4410937,-0.085785575,-0.17046288,0.43981537,0.31712607,0.29649833,0.20096925,-0.42831364],[0.70960057,1.176625,0.618315,-0.35273266,0.50546986,0.41693547,-0.30839127,0.19819334,0.5911515,0.2822198,-0.22344977,0.06145853,-0.052926417,0.008550686,-0.02682976,-0.34092346,0.41492197,-0.16889408]],"activation":"σ"},{"dense_2_W":[[0.3105403,-0.13943449,-0.5671977,0.7278831,-0.9538581,-0.53992945,0.2537109],[0.25039518,-0.19284537,-0.33849826,0.19139016,-0.13403177,-0.07362739,-0.71186584],[0.077256136,-0.6989092,-0.236067,-0.53454214,0.4003753,0.3068613,-0.50189966],[-0.3387507,0.08022835,-0.13841416,-0.21556431,-0.16097516,0.82565576,-1.0068827],[-0.5129783,-0.64633214,0.6501237,-0.31724972,-0.41725558,0.6616404,-0.8662519],[0.4270751,0.67877465,-0.30108768,-0.16842516,-0.82080853,-0.8198072,-0.14678568],[0.42951444,0.47302562,-0.59648263,0.50122297,-0.4004039,-0.8508191,-0.5640101],[0.31044075,0.4447596,-0.0133176055,0.39672032,-0.13207492,-0.1053544,0.3750294],[-0.49185774,-0.6246744,0.2108288,0.036430668,-0.19068871,-0.684725,-0.5135398],[0.6451895,0.15162985,0.35664967,0.539209,0.24193677,-0.0060984846,-0.38601643],[0.33735067,0.48711634,0.3457868,0.40235066,-0.5442683,-0.8894964,0.083602294],[0.6303491,0.47514284,-0.25302443,0.048399102,-0.6309426,0.071017355,-0.42443976],[-0.028995385,0.6780545,-0.48130322,-0.10078704,-0.35888222,-0.038346574,0.21966858]],"activation":"σ","dense_2_b":[[-0.16421281],[-0.0066147824],[0.2712916],[-0.037723377],[0.009121119],[-0.24584663],[-0.17050697],[-0.28670987],[-0.15715508],[-0.09428354],[-0.21343407],[-0.17752221],[-0.17326371]]},{"dense_3_W":[[0.39673528,0.5029898,-0.77688295,-0.20485383,-0.69867265,0.52573097,0.5760262,-0.057309195,0.38914645,0.11605935,0.3120174,0.22832489,0.5434368],[0.49983713,0.12314057,-0.23971559,-0.29951656,0.01370866,0.3070287,-0.101687245,0.34138146,-0.15633298,-0.5573778,0.6135126,-0.24733001,-0.3987656],[0.041431323,-0.5985834,-0.5442451,-0.052750558,-0.7950125,-0.18662111,0.56161785,0.04896858,-0.3108859,0.44375634,-0.21281773,0.40877533,0.062354703]],"activation":"identity","dense_3_b":[[-0.08339912],[-0.0697586],[-0.070846304]]},{"dense_4_W":[[0.82060516,0.39197603,1.0617381]],"dense_4_b":[[-0.07490547]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json deleted file mode 100644 index 66e4c7ddae..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[10.192138],[1.2619681],[0.99538904],[0.03173082],[1.390097],[1.3528733],[1.3105861],[1.0981697],[0.9660985],[0.83304054],[0.73382217],[0.031833883],[0.031806096],[0.03176805],[0.031585068],[0.031403936],[0.031049846],[0.03052816]],"model_test_loss":0.08113811910152435,"input_size":18,"current_date_and_time":"2023-09-01_15-46-16","input_mean":[[17.870602],[0.06094058],[0.76994574],[-0.018258877],[0.07383096],[0.06954971],[0.06553388],[0.045131978],[0.034243006],[0.017750643],[0.0021489365],[-0.018112624],[-0.018160766],[-0.018217338],[-0.018421978],[-0.018636575],[-0.018845296],[-0.019152297]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.60173887],[-1.2184482],[-2.5489855],[-0.13953118],[0.6530774],[-1.9541978],[0.6348104]],"dense_1_W":[[0.9151844,-0.69396037,-0.0015744013,0.13417375,0.47273952,0.053828586,-0.2703337,-0.06767218,-0.06996197,0.33860308,0.6809081,0.062160317,0.20090835,-0.39224413,0.20620485,-0.011424855,0.16862637,-0.2757232],[0.28972548,-0.02519699,-0.0015914065,0.16588296,0.18867342,0.054137114,0.08766244,-0.10144043,-0.00023482303,0.035658572,0.3292638,0.025065169,0.02802059,0.040422786,-0.28468195,0.014785016,-0.040343814,0.020054903],[-0.88864183,0.81139094,0.005142466,0.07717855,-0.3736464,-0.48089615,-0.33839747,0.72515595,-0.20632601,0.2192427,0.6845602,0.045920767,-0.0058251703,-0.10204114,0.0328523,0.1720919,0.22784986,-0.39458126],[0.04597544,-0.5142907,-0.039751884,-0.1760501,-2.0647182,-2.079671,-1.7764702,2.893614,2.1160357,0.62820613,-0.58175343,0.13933943,-0.07837348,0.2579554,-0.21817936,0.058899857,0.0867017,-0.2388197],[1.008347,0.6241744,0.0006175654,0.24427246,0.3880548,-0.71216303,-0.08657326,0.43654963,-0.002103242,-0.35102853,-0.72472453,-0.14762312,0.058478996,-0.27061918,0.08358053,-0.05671504,-0.39794087,0.38000095],[-0.75398517,-0.31240758,-0.0035077638,0.042402916,0.03954997,0.38596287,0.3007671,-0.71371967,0.24568759,-0.18542135,-0.63920254,0.012125213,-0.13132948,0.1092853,-0.09679227,-0.19704841,-0.06888792,0.28378332],[-0.2624838,0.19304885,-0.0020451967,-0.42735267,0.5025606,0.020195944,-0.100870304,-0.38624248,-0.1858948,0.15579382,0.32803276,0.24784385,0.31001303,-0.23803873,0.1500903,-0.2607993,0.30487004,-0.11202888]],"activation":"σ"},{"dense_2_W":[[-1.2400194,0.17729802,1.6934681,0.7075426,-0.11226228,-0.83732116,0.33559176],[0.5745533,-0.80457217,-0.6967583,0.08430375,-0.5941207,0.6564719,-0.70027584],[0.013842665,-1.1106777,0.12004836,-0.7758639,-0.7202531,2.1383853,-0.26417783],[0.53778696,-0.9851601,-0.16901778,-0.63449734,-0.5228541,1.452694,-0.5041905],[-0.5252082,0.9113041,0.96822953,-0.2888941,0.19632195,-0.06139024,0.23265024],[0.8556627,-0.5657162,-0.92154366,-0.028895194,-0.5141267,0.72371626,-0.751295],[0.75094503,-0.17778125,-0.7352838,-0.43035126,-0.514307,0.9411462,-0.9285261],[-0.23282954,-0.20877087,-0.41192415,-0.89742875,-1.3174541,-0.15595351,-0.15537289],[-0.7422097,0.3961414,0.3959817,-0.16982703,0.80190444,-0.8246868,1.0364479],[0.84093606,-0.5901947,-0.6232177,-0.35342738,-0.49815804,1.1040002,-0.95394325],[-0.97321624,1.2088536,0.85022783,0.002327647,0.43647796,-0.4797704,0.095545724],[-0.75402004,0.8438213,0.258789,0.092278235,0.5893333,-1.1115283,0.98487294],[0.4652842,-1.1645225,-0.80774826,0.1144249,-0.14423822,0.46821204,-0.4388547]],"activation":"σ","dense_2_b":[[-0.29847553],[0.11241894],[-0.03942593],[-0.045420405],[-0.1453599],[-0.002497385],[0.035479035],[-0.20913747],[-0.13740407],[0.07032733],[-0.21931723],[-0.09019325],[-0.07747503]]},{"dense_3_W":[[-0.3440359,0.13350633,-0.2793149,0.06343626,0.46869245,0.35055122,-0.29592252,0.56705844,-0.35353094,-0.16574235,-0.4968441,0.23517826,0.2515689],[0.034386467,-0.9523351,-0.6150173,-0.43728954,0.3108096,-0.14083374,-0.5916635,-0.62779754,0.5980072,-0.72700554,0.7860504,0.84748363,-0.5247365],[0.67116046,-0.74161327,-0.18781546,-0.6720034,0.46030635,-0.91020125,-0.81438667,0.05195494,0.5849977,-0.87362975,0.42857662,0.74513984,-0.15408307]],"activation":"identity","dense_3_b":[[0.08475188],[0.005057218],[0.099355556]]},{"dense_4_W":[[-0.005187234,0.74306834,1.0122273]],"dense_4_b":[[0.092436805]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json deleted file mode 100644 index 419f3b62e2..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.589161],[1.6526152],[1.0296179],[0.04015747],[1.6503558],[1.6541231],[1.6558622],[1.6062601],[1.5521498],[1.4774255],[1.3901185],[0.04013376],[0.040141042],[0.040149838],[0.04013493],[0.040134083],[0.040017467],[0.03965995]],"model_test_loss":0.07666975259780884,"input_size":18,"current_date_and_time":"2023-09-01_17-07-09","input_mean":[[19.16097],[0.00023039858],[0.024997516],[0.0015251928],[-0.006199064],[-0.00511049],[-0.0036440035],[0.008816405],[0.013828324],[0.023007024],[0.03203006],[0.001499254],[0.0015097901],[0.0015188308],[0.0013762622],[0.0012122631],[0.000992458],[0.00083205965]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.8661245],[-1.5837955],[0.037068017],[0.004549992],[-0.0406839],[-3.848253],[-0.14788117]],"dense_1_W":[[1.2300965,2.5310688,-0.033882245,0.9913731,-1.4768931,-0.7604761,-0.016176367,1.7826718,0.97190374,-0.3524215,-0.12235129,0.7071725,0.08818652,-0.7926816,-1.0068728,-1.0829469,-0.41093853,0.41296145],[1.0410483,-2.4898872,0.031385656,-0.8418668,1.7300308,0.6604722,-0.22182828,-1.4516648,-0.7956896,-0.0052562924,0.3286437,-0.90743065,0.20010695,0.67364526,0.8678244,0.9458278,0.45917323,-0.4489016],[0.0042952006,-3.7682223,0.03752664,4.481959,-0.025753722,0.30079904,-0.80541074,-0.8990208,-2.967934,0.3142363,-2.034866,-0.29074013,-0.10882145,-1.6433034,-2.345314,0.3792549,0.5183762,-0.3828322],[0.0351331,0.4335407,-0.72822434,-1.1574517,0.33417597,-0.78198606,-1.2777231,0.73203385,0.5243073,0.3935317,1.6471862,-0.66806847,-1.2980176,-0.995225,0.578557,1.5086068,1.178342,0.093525246],[-0.034333024,0.2399623,0.7163214,0.4258642,0.051805,-0.27961543,0.13171966,-0.043525357,-0.11124441,0.7758175,-2.7231858,1.9812765,0.95424885,-0.516098,-0.3156276,-0.42034206,-0.43856654,-0.9159853],[-3.23608,0.62202907,-0.93510664,-0.31767273,-2.2818325,-0.97344154,-0.47527224,0.8959574,-0.07933676,-1.693229,0.29464307,1.5444574,0.3701407,-0.7764469,0.8500272,1.3425361,-1.7767322,-2.944946],[0.006447974,0.48928446,0.5253896,0.9540034,1.3740003,0.38989055,-0.19158112,-0.6142965,-1.4193783,-0.640289,2.1344078,-0.42348352,-0.5467218,0.13846552,-0.060432374,-0.4456313,0.39513004,-0.17451167]],"activation":"σ"},{"dense_2_W":[[0.75902075,1.1818918,0.018134926,-0.23670888,0.58994615,-0.3951398,1.2811865],[-0.08184867,0.43210924,0.42716455,-0.7389914,-0.42377943,0.07209329,0.11910895],[0.31956765,-0.7480974,-0.19422513,-0.552509,0.07628548,0.6062507,-0.7245184],[0.44447437,-0.041922443,0.13054374,0.43873626,0.6574541,-0.19836801,0.14220871],[-0.0037564328,-0.023460802,-0.6449217,0.5678689,0.5152597,-0.3669055,0.08844841],[0.409556,-0.89736575,0.58308125,-0.16765638,-0.2244067,-0.19765973,-0.13677762],[-2.7548218,3.2813652,1.3716445,-0.96946454,-0.47919014,0.23553993,-0.7080141],[-1.617764,-1.0463123,-0.82542264,0.027710665,0.9964338,-0.6431054,0.35499138],[0.742922,-0.4490962,-0.4472653,0.3055844,-0.051618654,0.53054106,0.6369738],[0.5263451,0.72935253,-1.4179851,-0.7053557,0.10821838,-1.4098617,0.006451496],[-0.32364398,0.039208733,0.77577096,-0.9521098,-1.4651095,-0.26427552,-0.2297292],[-0.5094321,-0.17350426,-0.05012927,-0.42607546,-0.0424127,-0.1761333,-0.87716746],[-0.07377011,-0.38419786,-0.05855057,-0.5455437,-0.9797012,-0.30153883,0.23297796]],"activation":"σ","dense_2_b":[[0.28105608],[0.062468283],[-0.008618305],[-0.010698113],[-0.022834778],[-0.19800517],[0.1661619],[-0.59834546],[0.022396281],[-0.39137623],[0.30498576],[-0.03527624],[0.02751272]]},{"dense_3_W":[[-0.0075695775,-0.27568746,0.09120304,-0.3263692,-0.4094352,-0.0785218,0.37749985,-0.3643959,0.5081887,-0.34113538,0.13756286,-0.17055227,0.43868554],[0.25493667,-0.3818253,-0.41074437,0.32864282,0.3402426,-0.13885908,-0.5030987,0.19186679,0.65157133,-0.14876194,-0.5428901,-0.08314285,-0.57639486],[0.57302797,-0.51000684,-0.18249922,-0.07923711,0.3147604,-0.16800596,-0.7434311,0.7116399,0.39529055,-0.40308496,0.15564886,-0.41269818,-0.55772877]],"activation":"identity","dense_3_b":[[0.033527393],[0.026104666],[0.027110972]]},{"dense_4_W":[[-0.087499,1.1460565,0.99249434]],"dense_4_b":[[0.025334533]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json deleted file mode 100644 index bb7963bab7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.558472],[1.1135993],[0.35501274],[0.045823593],[1.1077218],[1.1080649],[1.1080468],[1.0821772],[1.0575596],[1.0226434],[0.98659563],[0.045627955],[0.045635287],[0.04563911],[0.045467082],[0.045263745],[0.04491611],[0.044533264]],"model_test_loss":0.039052750915288925,"input_size":18,"current_date_and_time":"2023-08-05_18-06-12","input_mean":[[26.136148],[0.014033704],[0.008476357],[-0.007713262],[0.014445406],[0.015386044],[0.016355403],[0.020506991],[0.024135882],[0.026870549],[0.02935421],[-0.007780166],[-0.007770314],[-0.0077639683],[-0.0077210055],[-0.007739751],[-0.007798479],[-0.00789042]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.1487079],[4.2139845],[-0.5853092],[0.3086539],[0.032987785],[-4.7810106],[0.016952101]],"dense_1_W":[[0.033758555,1.0444518,3.6611536,-0.40075377,0.7095827,1.3611814,-2.1352289,0.96489286,1.8126475,-0.62583995,-1.966803,-0.1734821,0.15852115,-0.3967776,-0.14440706,0.8157315,0.17390618,-0.23260796],[2.1500878,-0.45053038,1.2581933,-0.05246604,0.5019536,1.7019817,-1.8193591,1.3068173,1.0780432,0.6126558,-1.1160796,0.19838658,-0.084695324,-1.2091074,0.5595109,0.74877197,0.30207658,-0.6453137],[0.458296,-0.21370786,0.0019734737,-0.30963984,0.8088786,-1.7420303,0.60466176,0.14915113,-0.12689793,0.052364115,-0.042618364,-0.5170238,0.26220888,0.18760274,0.37973043,0.15806,0.0022146539,-0.07045257],[-0.66763306,-0.4096175,-0.0016955894,0.04425929,0.21008201,-1.7331837,0.9467672,0.58569306,0.23827136,-0.2415081,-0.15301658,-0.28669143,-0.2599793,-0.11007419,0.6052918,0.17952923,0.24594603,-0.31397706],[1.0145541,-0.3317505,-1.4991609,0.013690285,-0.9575213,-1.383604,0.028956244,0.41788918,0.24457058,-0.094164655,-0.13030116,0.17948826,-0.03794582,0.01309437,0.35534826,-0.26917398,-0.29215142,0.27303904],[-2.7000756,0.31637338,1.4000112,0.08876083,0.6678543,0.9836755,-1.5750684,1.1129849,0.9943397,0.5684742,-1.1145275,0.5888766,-0.13174123,-0.9658693,-0.413828,0.7263344,0.11292254,-0.23350726],[-0.12401558,5.324601,7.171819,-0.19341947,2.5473533,3.2746146,3.0563648,3.367963,2.8771386,2.6749191,2.9917984,-0.14726077,-0.13394955,-0.76174796,1.426001,1.2234408,-0.7090158,-0.6628128]],"activation":"σ"},{"dense_2_W":[[0.5621434,0.992517,-0.6983796,-0.91716,-0.054338105,0.607339,0.45212823],[0.22474639,0.22895367,0.6111215,0.046989255,-0.030409865,-0.61481434,0.10029722],[0.16454774,-0.29756203,1.1110828,0.59235257,-0.18411039,-0.6023632,-0.23720202],[-0.3528499,-0.6570399,0.49941105,0.47395417,0.27583507,0.08116056,0.20804141],[0.07139761,-0.070093624,0.5590774,0.7634218,-0.49971566,0.5975401,0.7334796],[0.44444433,1.8885437,0.35532534,-0.82639766,1.279296,-0.86160696,2.6706583],[0.44448185,-0.24610248,-2.495731,-0.89490926,0.11747124,0.62402964,0.5182057],[0.23551048,0.42742857,-0.5775537,-0.6272091,-0.27731383,-0.09396491,-0.51651603],[0.42865852,0.32447976,-0.29923168,0.340756,0.013832209,0.41082326,0.21667421],[-0.32736444,0.4769656,0.977129,0.5856738,0.10249221,-0.54967755,-0.2428743],[0.25369433,-0.2204579,-1.0649059,-0.2733619,-0.049029216,0.4437149,-0.11450898],[-0.24868779,0.44613084,-0.27166238,0.5614397,0.5230158,-0.24676293,0.17946567],[-0.2634003,-0.48613355,-0.04385666,-0.65893304,-0.30746424,0.15454659,-0.53632504]],"activation":"σ","dense_2_b":[[0.19822486],[0.017528722],[-0.010497578],[-0.06445187],[-0.039755665],[0.17356244],[0.025937805],[0.023149397],[0.002431535],[0.006409766],[0.0033689209],[-0.057484128],[-0.2775116]]},{"dense_3_W":[[-0.647888,0.20968881,0.6033078,0.67215437,0.20472567,-0.14839841,0.13453817,-0.14604588,0.00843544,0.2830037,-0.54673946,0.60688186,-0.4934583],[-0.18505706,0.2708935,-0.37541804,-0.3327015,-0.14934263,-0.59043384,-0.5975454,-0.34455526,0.34356502,-0.1237087,0.032155972,-0.11825379,0.032004077],[-0.12307207,-0.14105205,-0.69863325,-0.65025413,-0.45728275,0.5245935,0.46122637,0.372422,0.2177389,-0.6267706,0.32869118,0.34049797,-0.5515101]],"activation":"identity","dense_3_b":[[0.028380467],[0.04344171],[-0.028022127]]},{"dense_4_W":[[-1.151408,-1.0946046,0.9045305]],"dense_4_b":[[-0.033447456]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json deleted file mode 100644 index debdaaf7d9..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.880729],[1.3764424],[0.4036752],[0.044919465],[1.357929],[1.3648189],[1.3701559],[1.3636794],[1.3427843],[1.3031353],[1.2558507],[0.044844456],[0.04486737],[0.044886783],[0.044833656],[0.044710048],[0.04439941],[0.044009637]],"model_test_loss":0.03750712797045708,"input_size":18,"current_date_and_time":"2023-08-06_03-39-56","input_mean":[[23.76268],[0.025191484],[-0.0054714084],[-0.010682941],[0.027966013],[0.026647689],[0.025542766],[0.022714077],[0.020973299],[0.023003811],[0.02802845],[-0.010661417],[-0.010671549],[-0.010681824],[-0.0107730925],[-0.010828986],[-0.010959005],[-0.011070088]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.5776205],[-0.23610623],[0.105955176],[0.07035416],[-0.44049412],[-4.875287],[0.95284677]],"dense_1_W":[[2.6162603,0.96552926,-1.1709021,0.68316555,-0.83422256,-1.2780359,0.2215925,-0.363209,0.3182224,0.050232545,-0.16977811,0.15275992,0.01305875,-0.24862735,-0.3824611,-0.32907623,-0.08854755,0.29336992],[-0.033986192,-0.4997676,-3.4389174,0.7424149,0.664207,0.14749247,0.5930936,-0.7861187,-1.5643623,-0.66575646,1.7639327,-0.63187826,-0.30908775,0.22797343,0.36383292,-0.43728524,-0.08584815,0.0859059],[-0.399227,0.95630413,-0.00024232137,-0.15680003,-0.657746,0.88117325,-0.28739563,-0.40365663,0.13200954,0.17651056,-0.119062886,0.5858267,-0.21834603,-0.06490571,-0.011869801,-0.46006832,0.055071417,0.16692579],[-0.5654201,-0.9509558,0.00096591073,-0.043163724,0.4077403,-1.0859221,0.6999001,0.40714318,-0.08873732,-0.07508248,-0.009093482,-0.46344966,-0.19199978,0.4810677,0.48018777,-0.28993973,0.41181335,-0.27362508],[-0.027356783,-4.2967224,-0.03678484,-0.32151344,-0.73972255,-2.5777402,-3.2287362,-2.5549042,-1.4497441,-0.43103775,0.6453438,-0.17506233,-0.31516784,0.5563384,0.85075074,-0.57829696,-0.19835036,-0.024371902],[-2.47195,1.7926816,-1.1769953,0.16563822,-0.82507175,-1.0493809,-0.32214803,-1.1703736,0.2470295,0.2510944,-0.11734796,0.13303131,0.030326199,-0.00082738034,0.023316598,-0.33300236,-0.31752133,0.38321474],[2.1512134,1.7400922,-1.7055479,-0.3629506,-1.7764045,-0.28031406,-1.3791944,-0.80302006,-0.122044094,0.8002589,-0.3441996,-0.07645867,0.23166081,-0.38216463,0.64409703,0.11736102,0.22685654,-0.30116174]],"activation":"σ"},{"dense_2_W":[[-0.52089065,-0.064282656,0.9368965,-0.78820074,0.18612167,0.050849117,0.27317494],[0.71986425,0.006931284,-0.083075926,-1.1616415,0.027728708,-0.928848,0.83347905],[0.8144789,0.20632064,-0.71373665,-0.06819771,0.9545801,-0.4286985,0.42867258],[0.71121395,0.06992666,-0.8302117,0.07830932,0.25297147,0.0047203694,-0.0066684796],[-0.5690574,-0.14917742,-0.3785819,0.9758459,0.28018865,0.41372767,-0.21782406],[0.13315567,-0.4577933,-0.1426717,0.19464079,0.008886417,-0.116589725,0.08225403],[-0.9950312,-1.3679215,0.091107205,0.9272021,1.1016536,-1.3227009,-1.2095336],[-0.3986191,-0.9487305,0.38871515,-0.08156303,0.95174986,-0.6304789,0.13525334],[0.2225127,-0.2169731,0.9058736,-0.5802039,-0.24850035,-0.28582534,0.3907818],[-0.5881804,-0.044960845,-0.90182215,0.8056298,0.5574692,1.0463717,-0.5374416],[-1.2164664,-0.40320966,0.53783023,0.27278855,-0.49228838,-0.14903766,-0.8090045],[-1.2831542,0.4933893,0.021853147,0.071227364,-1.4159098,0.76011354,-0.8172033],[0.078262046,-0.5118518,0.22079428,-0.02778036,-0.222457,0.23040481,-0.66731334]],"activation":"σ","dense_2_b":[[0.05072228],[-0.1091474],[0.1004324],[0.021801215],[0.03440032],[-0.07559257],[0.18204498],[-0.008477362],[0.033497173],[-0.15622234],[-0.088286996],[-0.1264465],[-0.09580737]]},{"dense_3_W":[[-0.49234378,-0.12957415,0.5802615,0.4467619,0.590399,0.24340731,-0.5555279,-0.66425663,-0.4981453,0.60517937,-0.56258386,-0.26889455,-0.35886267],[-0.60045487,-0.55883497,-0.3071459,0.07875048,0.5536381,-0.32903612,0.14948905,0.46808386,0.28372547,0.3629737,0.22399715,-0.5433762,-0.15223768],[-0.46732837,0.03954109,0.09032384,-0.38590652,0.39412647,-0.153768,0.03560084,-0.11765058,0.35194537,0.3046047,-0.094702706,0.3176626,-0.32317603]],"activation":"identity","dense_3_b":[[0.051931284],[0.06253407],[0.04909886]]},{"dense_4_W":[[-1.265387,-0.37792373,-0.20574242]],"dense_4_b":[[-0.04775983]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json deleted file mode 100644 index 4a5872bce7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.358706],[1.0686424],[0.34114116],[0.044889364],[1.068699],[1.068358],[1.0675814],[1.045456],[1.0242518],[0.99177456],[0.9590156],[0.04477875],[0.04480059],[0.04482342],[0.04474932],[0.04458978],[0.044322193],[0.043946933]],"model_test_loss":0.035726360976696014,"input_size":18,"current_date_and_time":"2023-08-06_06-15-03","input_mean":[[24.615007],[-0.03660665],[0.0016246386],[-0.006489807],[-0.0361033],[-0.035993658],[-0.036171526],[-0.03401853],[-0.031212736],[-0.02772113],[-0.025683384],[-0.0064613656],[-0.0064720884],[-0.006487653],[-0.0065700756],[-0.0065773614],[-0.0066702664],[-0.0067906133]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.9387486],[1.7947302],[-2.419479],[-0.046714567],[-0.07710784],[-0.011005453],[2.2013001]],"dense_1_W":[[1.5500982,-0.562216,0.82173073,1.1276568,-1.1044303,2.0344303,-0.5962017,0.43611562,0.6137577,0.54552734,-0.40140414,0.13477002,-0.33703992,-0.995159,-0.5198411,0.6988811,0.23579559,-0.43389362],[1.9096831,0.4647536,-1.062686,-0.18994598,-0.7350096,1.1260368,-1.2783738,-0.017420385,-0.32890928,-0.6363917,0.1548712,0.10676455,0.18015237,-0.0953862,-0.13519493,0.2339727,0.07321837,-0.04309801],[-1.3224562,0.034447707,0.7349111,0.15789251,-0.54802585,0.91166073,-0.5362905,0.5046039,0.30484954,0.5900371,-0.38941008,0.33457753,-0.27889228,-0.6909375,-0.14148402,0.97603106,-0.13406259,-0.30469695],[-0.0017459231,-0.09968895,-0.014508084,0.23403876,0.836069,-1.5712544,0.19792208,0.34136322,0.15050764,-0.2420643,-0.05131571,-0.09686847,-0.47325152,0.21186271,0.033762608,0.17737845,0.0014673215,-0.12473483],[0.00029148505,-0.6372151,-0.0053334557,-0.05010357,0.99977154,-1.0182008,-0.14067085,0.3974594,-0.2723742,0.04584643,0.073329695,-0.34156838,-0.11684916,0.11896246,0.34009737,0.6478362,0.13086675,-0.43019354],[-0.0077469624,-0.1509263,-3.2484512,0.16014525,-0.5749223,-0.9640095,0.9543776,-0.7414716,-0.7872326,0.2741354,1.5463,-0.3455074,0.08961764,0.027934242,0.045294646,0.23221987,-0.1519019,8.7261986e-5],[2.0402718,-0.72642046,1.1085396,0.08754884,0.35070625,-0.522105,1.2273571,-0.049034014,0.7027618,0.56165534,-0.22607273,0.21941654,0.19681507,0.25899538,-1.0231488,-0.19570431,-0.065851234,0.37131593]],"activation":"σ"},{"dense_2_W":[[-0.60671103,-0.10295715,-0.2275175,0.703453,0.5107893,-0.019612279,0.060930736],[0.32735822,0.09359731,1.1961514,-0.5468047,-0.6979488,-0.8116451,-0.8816686],[0.28230911,0.26441634,0.32522315,-0.2709414,-0.97729933,-0.1853032,-0.6816012],[0.85672635,0.40473634,0.06306575,0.043324664,-0.09925389,-0.6707503,0.48766825],[0.3574693,0.24644808,0.8436976,-0.73305976,-0.87197644,-0.17207824,-0.34952453],[1.2755688,1.0824895,0.84866655,-0.5946056,-0.93967986,-0.64516634,0.18630773],[0.2624753,-0.12604286,-0.24697196,-0.36811814,0.14403982,0.43120542,0.1445742],[0.44066232,0.1534366,0.25932267,-0.65874845,-0.26324567,-0.31705675,-0.831388],[-0.030025106,-0.31389698,0.17181242,0.3696615,0.008856971,-0.5338608,-0.019544462],[0.053924862,0.46772835,0.94262034,-0.71287125,-1.2770078,0.48717985,0.09874367],[-0.5596553,0.1355415,-0.6685472,0.5694037,0.5835357,-0.050862506,-0.30772945],[0.26585215,0.15441975,-0.27715218,0.17482373,0.30534902,0.13441981,0.24543025],[-0.700537,-0.30525044,-0.40211698,0.23966432,-0.07130374,0.3517828,-0.30104256]],"activation":"σ","dense_2_b":[[0.0006462817],[-0.045901865],[-0.08447791],[0.018081808],[0.028199553],[0.15011074],[0.024169737],[-0.07767265],[0.003401174],[-0.09530233],[0.026245346],[-0.019555494],[0.029535577]]},{"dense_3_W":[[-0.4269903,0.38330346,0.3818396,-0.104428,-0.010993002,0.25576162,-0.14891353,0.5712297,0.43450522,-0.18818101,-0.40029064,0.113605164,-0.41539222],[-0.4444491,0.6585591,0.5286078,0.014278995,0.3499434,0.3896106,-0.37057588,0.058567323,-0.5987489,0.35249916,-0.5103405,-0.0007771231,-0.20807561],[-0.5559521,0.25394833,-0.35546854,0.4645985,0.3801913,0.20466149,-0.20871717,0.37793857,-0.093845844,0.5868493,0.12606087,-0.4579316,-0.5141172]],"activation":"identity","dense_3_b":[[-0.039426688],[-0.038285036],[-0.0388908]]},{"dense_4_W":[[0.98477775,0.89640814,0.94241107]],"dense_4_b":[[-0.040733967]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json deleted file mode 100644 index 2d65f4400f..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.261368],[1.1474106],[0.37148234],[0.044279538],[1.1430647],[1.1446478],[1.1447154],[1.1187278],[1.0942419],[1.0602791],[1.0217831],[0.04425829],[0.044268712],[0.04427185],[0.044111896],[0.04397081],[0.04367603],[0.043223266]],"model_test_loss":0.041262850165367126,"input_size":18,"current_date_and_time":"2023-08-05_23-22-02","input_mean":[[24.15998],[-0.008219966],[0.004739006],[-0.013221193],[-0.008523361],[-0.008609849],[-0.007986069],[-0.006765848],[-0.006281763],[-0.008096367],[-0.011848589],[-0.013220585],[-0.013206273],[-0.013198256],[-0.013279306],[-0.0133954],[-0.01351665],[-0.013652078]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.011715764],[-0.16971639],[0.44084886],[1.8919995],[-0.57473946],[0.3265129],[0.665929]],"dense_1_W":[[-0.035294082,0.58739567,0.0068268306,0.5267725,-1.3068384,2.0108788,-0.8904008,-0.86464506,0.8847079,0.49210623,-0.27763724,0.6851789,-0.11328691,-0.61491024,-0.7021547,0.0578637,0.082666315,0.0749281],[-0.08059325,-0.77528465,0.93356776,-1.1226226,0.030571632,1.2159668,-0.3739228,2.0636218,1.051139,0.24026142,-0.8241013,0.51684606,0.45198372,-0.85868824,0.9150932,0.14920434,0.0996434,-0.23813146],[1.05331,0.6632812,0.586634,0.10609487,-0.16541673,1.0143963,-0.6739981,0.43193975,0.5483419,0.020105261,-0.2659555,0.27416015,0.3780343,-0.38164294,-0.04144785,-0.49568477,-0.6130558,0.6570192],[1.4749159,0.076626115,-0.88682747,0.046201207,-0.23487571,-1.1125354,0.055821165,-0.57242775,-1.03109,0.059293248,0.2898471,-0.65886724,0.19274879,0.39950013,-0.10046821,0.34578046,0.20585975,-0.28454834],[-1.0492898,0.8025768,-0.019681327,0.11809792,-0.3740394,1.1517578,-0.6477998,-0.59586203,-1.4050065,-0.8667816,0.755093,-0.04370645,0.32285377,-0.16848978,-0.21646905,-0.34349748,-0.28047857,0.49415973],[0.056685824,0.9262534,-5.3872395,0.7328496,-1.2155392,-1.1581563,-0.12605561,-1.2297785,-0.95465136,1.0993868,1.4996752,-1.0285505,-0.33488074,0.33622772,0.34516957,-0.14087252,0.36723128,-0.2868416],[0.9570638,0.24864312,-0.017469333,0.54736155,-0.49265823,1.0806886,-0.30185512,0.02353294,-1.477074,-0.70588714,0.615638,-0.07056425,0.046274792,-0.32864115,-0.3693316,0.0012585309,-0.105926886,0.20974532]],"activation":"σ"},{"dense_2_W":[[0.79805297,0.07995367,0.33311036,-0.1088086,-0.28585342,-0.11676164,0.3217794],[-0.6564382,-0.650472,-0.32395652,0.48536372,-0.39954782,-0.9293625,-0.3131151],[0.065390795,-0.36014688,0.035044394,-0.47919765,-0.21676321,-0.68095744,-0.58225524],[-1.4269842,-0.22010052,0.762021,1.5709931,-0.39910436,1.7860814,1.1529905],[0.81025195,-0.19804797,0.2811143,-0.13832566,0.21581413,-0.2242298,0.10002656],[-2.4172528,-2.9861536,-2.1297307,-2.3552132,2.0055087,3.841171,-1.6320437],[-0.15224119,-0.008424982,-0.7476414,-0.7229817,0.34834322,-0.62080944,-0.6412587],[-0.32463408,0.056613863,-0.013071884,-0.057739817,0.5155227,0.12653896,0.14592259],[-0.5659917,-0.43365908,-0.31137735,-0.3897718,-0.26343766,0.8946887,-0.6234644],[-1.2267396,0.0675833,-0.036197066,-0.0106164375,-0.65109164,0.3789509,-0.7397455],[-0.47206897,-0.3735633,-0.4683122,0.17489713,-0.69122815,-0.68286866,-0.23052849],[0.92053163,0.41530177,0.23816848,-0.3726253,0.27367908,0.71565676,0.19845398],[0.22949272,0.53540593,0.100375816,0.39428094,0.19491827,-0.0047999,-0.036115997]],"activation":"σ","dense_2_b":[[-0.080741115],[-0.098717436],[-0.04195425],[0.57887644],[-0.0376275],[-0.7313109],[-0.15826389],[-0.03734272],[-0.17071353],[0.06530881],[-0.16700919],[-0.10229606],[-0.0077384445]]},{"dense_3_W":[[0.6059949,0.4993691,-0.0014475341,0.40003,-0.44542313,-0.71407944,0.2787467,0.16292632,-0.4138824,0.27650607,-0.27067518,-0.14248835,0.17812036],[0.13085166,0.48013842,0.34201995,0.64287025,-0.600294,0.86557233,-0.14552544,-0.08809264,0.41238344,0.7531989,0.587104,-0.4580716,-0.6428474],[0.61981463,-0.5255673,0.47925967,-0.6429044,0.02112309,0.09041386,0.27671653,-0.054121528,-0.24291937,-0.610705,0.07889088,0.042044822,0.39591196]],"activation":"identity","dense_3_b":[[0.007450639],[-0.024559],[0.020729255]]},{"dense_4_W":[[0.2550702,-1.0187347,1.2050446]],"dense_4_b":[[0.021735787]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json deleted file mode 100644 index 6a5716e62e..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.17857],[0.44787604],[0.5243947],[0.032028187],[0.44404522],[0.4443511],[0.44520274],[0.45595846],[0.4604483],[0.47209886],[0.4884655],[0.03209721],[0.03205],[0.03203256],[0.03195497],[0.031864975],[0.03177169],[0.03154828]],"model_test_loss":0.0009851785143837333,"input_size":18,"current_date_and_time":"2024-01-04_15-35-20","input_mean":[[21.90655],[-0.29117808],[-0.08760989],[-0.009034546],[-0.2664771],[-0.27346689],[-0.2819304],[-0.3144748],[-0.33650345],[-0.36093968],[-0.38976616],[-0.009162463],[-0.009145338],[-0.009107736],[-0.008843513],[-0.008647824],[-0.0083346395],[-0.007997973]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.06760431],[-0.2907365],[-0.4082806],[-0.20224898],[0.29265383],[0.26244283],[0.15451357]],"dense_1_W":[[0.014618384,0.37313232,0.035592113,-0.3403019,0.033235013,0.24829742,-0.49047577,0.28937504,-0.2026583,-0.2760167,0.21064562,0.08079155,0.11982211,0.042024616,-0.052886724,-0.06286289,-0.13398048,0.13160145],[-0.0048215007,0.30684328,0.020128243,-0.41616872,-0.20515934,-0.2511921,-0.13518195,0.37878683,0.26875132,0.113668166,-0.27679917,0.66174066,-0.052989658,-0.1855979,-0.02353523,-0.30120054,0.091657996,0.09602743],[-0.0042930744,-0.15373556,0.08812353,-0.31896785,0.019456651,-0.20545581,0.05433538,-0.23081444,0.43445846,0.11084425,-0.0024109932,-0.6938004,-1.024248,-0.4391781,-0.0550922,0.07583203,0.79354477,-1.8509296],[0.04390958,-0.18022121,-0.08688032,0.19231437,-0.14530687,-0.27636525,0.4690427,0.4344902,0.16017663,-0.25027603,-0.2452524,0.5537437,0.13898967,0.038036723,0.6355534,0.5031342,1.3155322,-0.14124991],[-0.006398488,-0.7886078,0.03451426,-0.054085355,0.25506452,0.4975867,1.0672406,-0.27192074,-0.91774124,0.2306121,-0.3410087,-0.16050793,0.15241678,-0.17949696,-0.31961542,0.22702731,0.419533,0.00035671022],[-0.0077034663,-0.78213346,-0.016133381,0.10805307,0.14032482,0.36524558,0.12367749,0.24540052,-0.059624504,-0.3247948,0.021967877,-0.039682694,-0.2721095,-0.10098841,0.21639878,-0.22641253,0.14136238,0.19991797],[-0.048534065,-0.20369655,0.07626118,-0.31831193,0.2750742,-0.2912584,0.088218614,0.09158782,0.06355577,-0.23128918,0.2086949,-0.44672933,0.2343581,-0.052767944,-0.26756912,-0.29403126,-0.0006949583,-0.3037349]],"activation":"σ"},{"dense_2_W":[[-0.19747548,0.3752813,0.005352072,0.22516197,-0.279574,-0.29499897,0.514051],[-0.23818707,-0.442092,0.21234472,-0.5240696,-0.666385,0.13287802,-0.70440364],[-0.12623425,-0.12563375,0.17045951,-0.4611073,0.13094379,-0.2603494,-0.578133],[-0.3201878,-0.472269,-0.45254824,-0.17459284,-0.13989829,-0.07893383,-0.15434109],[0.6313669,0.59430647,0.029979968,0.40872103,-0.6338095,-0.48483965,-0.16215326],[0.12921973,-0.35855725,-0.6317136,-0.24155544,0.018117908,0.6665686,-0.09261251],[-0.5263865,-0.500698,0.26361403,0.1989874,0.16189028,0.4017576,-0.50330746],[0.19345485,0.0116930995,-0.1151553,0.38370124,-0.51925737,-0.66009927,0.54345274],[-0.10049859,-0.07803794,-0.05125394,-0.5760374,0.22012971,-0.4562151,-0.24986024],[-0.035831526,0.17925176,0.08670547,-0.6276373,-0.24000542,0.09890566,0.005909479],[0.026487896,0.10827987,-0.5441871,0.10627476,-0.12671272,0.25334272,0.090102024],[0.11269248,-0.5982834,-0.20034944,-0.4165159,0.48223287,0.06892533,0.32945293],[0.14122471,-0.84526354,-0.102686554,-0.42417887,-0.056950103,-0.013891049,-0.043740742]],"activation":"σ","dense_2_b":[[0.021066276],[-0.18323943],[-0.08896128],[-0.059529945],[0.01516111],[-0.03864309],[-0.01915316],[0.0072613885],[-0.13141903],[-0.1963338],[-0.20056123],[-0.0918762],[-0.09109566]]},{"dense_3_W":[[-0.5145814,-0.15164766,0.41466355,0.5054458,-0.56660354,0.37653998,0.2958398,0.1300162,0.15582272,-0.14694406,0.089647524,0.0200251,-0.6487758],[0.18533824,-0.14857687,0.36485723,-0.25733942,-0.5232801,0.39276004,0.36414713,-0.54408604,-0.4820063,0.19759995,-0.12671192,0.39148358,0.189427],[0.5235357,-0.23839255,0.41131777,-0.43199104,-0.042662866,-0.042696618,-0.30467755,-0.119463064,-0.49081296,0.2406254,-0.07923712,-0.0021057576,-0.42410713]],"activation":"identity","dense_3_b":[[-0.036107603],[-0.036152013],[0.03689696]]},{"dense_4_W":[[-0.48288086,-0.87119794,0.8186898]],"dense_4_b":[[0.0358588]],"activation":"identity"}]} diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json deleted file mode 100644 index 56b5e6782c..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.079519],[1.117335],[0.32821873],[0.04513038],[1.1160785],[1.1158687],[1.1147403],[1.0893666],[1.0659956],[1.0314285],[0.99783367],[0.04497426],[0.044967793],[0.044959538],[0.04481279],[0.044600893],[0.044237226],[0.043830905]],"model_test_loss":0.05013991519808769,"input_size":18,"current_date_and_time":"2023-08-06_08-46-45","input_mean":[[24.945726],[0.056781527],[-0.006332743],[-0.0054867254],[0.057909872],[0.057552766],[0.05728289],[0.054190118],[0.05235296],[0.048357345],[0.0448629],[-0.005489833],[-0.005468405],[-0.005448704],[-0.005441959],[-0.0055107307],[-0.0055533946],[-0.005588048]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.3742944],[2.0560386],[0.070786394],[0.08766052],[-7.2637663],[4.9462605],[0.020425294]],"dense_1_W":[[-0.88963157,0.47497272,1.1810282,0.6939777,-0.36621186,1.347931,-0.7933228,0.85621536,0.66951233,-0.11786804,-0.6730566,0.112765215,-0.28919625,-0.33895963,-0.62124485,0.25326887,0.21473351,-0.12489331],[1.223516,-0.036567718,-1.247157,0.09799731,-0.97558075,0.16902182,-1.0449882,-0.046705905,0.29223862,0.30116007,-0.09839103,0.46722287,-0.0449582,-0.39868206,0.07668579,-0.11536017,-0.0691049,0.10267897],[0.018545184,0.81794965,3.4399781,0.052234847,-0.4958513,0.38696352,-0.638153,0.87363166,0.86702484,0.7031613,-1.9006683,0.85754114,0.8998447,-0.52486235,-1.0076646,-0.66781485,0.2555468,0.17366274],[0.0037442108,1.4584165,0.0061913775,0.24082592,-0.7234466,1.0945269,-0.21835686,-0.038823094,-0.20537247,-0.4526858,0.3522938,0.7368147,-0.4907756,-0.72209734,-0.3003073,0.24139397,-0.27028123,0.28593597],[-3.720445,0.5471661,-2.9256604,-0.84999114,-0.35371152,-1.650107,-0.30913082,-1.5157434,-1.4253404,-0.5012027,1.8229349,-0.22352915,0.07850824,1.2852895,-0.17709053,0.0015369024,0.4303836,-0.3013633],[2.7063103,0.4795686,-2.1412866,-0.37747622,-0.52522975,-1.1443468,-0.3860132,-0.81000876,-0.8656079,-0.38408586,1.1732165,-0.33476815,0.35176495,0.67967117,-0.24029131,-0.15793729,0.59702957,-0.33229384],[0.003850781,1.0522044,0.0023779364,1.4077666,-0.2233461,-1.323892,0.2490657,0.9962225,-0.21043883,-0.48657963,0.0066762604,-0.8950598,-0.65639627,-0.10381974,-0.033756495,0.3061354,-0.09620744,0.075370125]],"activation":"σ"},{"dense_2_W":[[0.01117936,0.6720228,0.39750826,0.30468678,-0.34063298,0.11394216,-1.026796],[-0.07938874,-0.29046267,-0.15366286,-0.94418544,0.72881997,-0.072467156,1.1634737],[-0.7841681,-0.38053507,-0.48102236,-0.7339148,-0.94196475,-0.09320883,0.17724545],[-0.11575878,0.41173506,0.7931331,0.7659729,0.45459372,-0.4762705,0.04162107],[-0.54039043,-0.6239058,0.12097131,-1.0940313,0.6270558,0.8035503,0.8422599],[-0.006883268,0.1846561,0.4628913,0.89182067,-0.281233,-0.5460564,-0.49594778],[-0.37237987,-0.50528663,-0.34381047,-0.9888458,0.66827786,0.75729847,0.9049922],[-0.6351278,-0.39599782,-1.7942646,0.2172901,1.2180948,-1.0186263,-0.29467586],[0.098499954,-0.7321613,-0.4204465,-0.5589947,-0.49682683,0.02701407,-0.56642413],[-0.055568255,-1.0158917,-0.13512869,-0.75265217,0.32634935,-0.10900366,1.1009233],[0.9196104,-0.29001886,0.27778128,0.40752462,-0.71603805,-0.78771234,-0.2509219],[-0.27494332,-0.27294615,-0.87608117,-0.5456548,0.23442413,0.46402624,0.4014235],[-0.0657572,0.39627385,-0.032163464,0.37446278,0.30043706,-0.3939967,-0.17288771]],"activation":"σ","dense_2_b":[[-0.12896457],[-0.06757774],[-0.29207176],[0.057776056],[0.03819644],[-0.0075618257],[0.022483658],[-0.30520216],[-0.30780953],[-0.22291888],[0.073764615],[-0.11618854],[-0.0932309]]},{"dense_3_W":[[-0.20723751,0.46280366,0.37977389,-0.28764504,0.56071246,-0.42746708,0.743715,-0.41921702,0.39859435,0.35315046,-0.18542276,0.28128248,-0.18067148],[-0.6656129,-0.15142722,-0.022595402,-0.48696524,0.37018472,-0.6183299,0.50862163,0.035134673,-0.46468532,0.35520592,-0.6777795,0.2590716,0.46181098],[-0.32565305,0.33916017,-0.4280441,-0.21963115,0.6359937,-0.44887698,0.2442765,0.13551079,-0.47778323,-0.4541174,-0.59640217,0.13698937,-0.27695638]],"activation":"identity","dense_3_b":[[-0.07102677],[-0.02868969],[-0.030784609]]},{"dense_4_W":[[-1.024929,-0.3087716,-0.3174253]],"dense_4_b":[[0.053275082]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json deleted file mode 100644 index afdbdefee7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.167076],[0.8396103],[0.39224938],[0.038149882],[0.83500266],[0.8364939],[0.83795094],[0.8280286],[0.82101065],[0.80936265],[0.79514086],[0.03816296],[0.03813872],[0.0381162],[0.037860528],[0.037643477],[0.03726596],[0.036896862]],"model_test_loss":0.019166288897395134,"input_size":18,"current_date_and_time":"2023-08-06_11-19-09","input_mean":[[24.623522],[0.012142224],[-0.0077460455],[-0.0040752436],[0.01259905],[0.011912992],[0.011499013],[0.008575823],[0.006231978],[0.001843956],[-0.0011071449],[-0.0041566766],[-0.004162808],[-0.0041667568],[-0.0041206917],[-0.004187086],[-0.004389174],[-0.0045910473]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.10681055],[-0.05877009],[-5.810432],[0.108804524],[5.817238],[-1.4135033],[-0.04275369]],"dense_1_W":[[-0.010944928,0.298581,-0.0004137291,0.46320775,-0.68514436,1.5652411,-0.62197584,-0.70986384,-0.07209713,0.14426921,0.09893353,0.2957121,0.24033338,-0.63492715,-0.24635397,0.21067435,0.16446242,-0.4790833],[-0.002262276,-0.7669907,0.0011565682,0.2969979,0.11738408,-1.199179,0.32905388,0.35275638,-0.34200913,0.22103965,-0.188085,-0.00050096336,-0.36091766,0.18886286,0.356193,0.50661796,-0.18447432,-0.3530909],[-2.7729337,-0.046491493,-2.223908,0.51880556,-1.5391709,-1.8928696,1.8811203,0.22442053,-0.20638244,0.44581792,-0.10464485,-0.11026335,-0.41476744,0.71887964,-0.6184063,0.07461815,-0.70264786,0.5291843],[0.088751696,-0.7015499,-2.262332,0.07993792,-0.5452428,0.36403584,-0.888494,0.26214746,0.52286375,0.47499555,0.12439757,0.32842526,-0.22486946,-0.2082452,0.2083624,0.20134373,-0.26366135,0.040187743],[2.7838297,0.36513317,-2.2177417,0.17293313,-1.3490273,-1.395796,0.7361196,0.024529908,0.0147317415,0.50988925,-0.16947655,-0.14311421,-0.13544203,0.6211999,-0.28396562,-0.19654925,-0.4721205,0.44046035],[-1.0456268,0.006558085,0.029179003,-0.24681818,0.33209732,-0.31439346,1.0280732,1.6322477,0.33988294,-1.1288414,-0.7784953,-1.3079332,-0.922044,-0.7579679,-0.7932985,0.090359144,2.2930832,3.7051785],[-0.032393374,0.15797108,2.6865292,-0.022740832,0.7215196,0.9335919,-0.9160322,0.63953984,-0.10847628,-0.41109005,-0.58336747,0.8728414,0.2319681,-0.77523047,-0.6650054,-0.19625007,-0.0422657,0.4323157]],"activation":"σ"},{"dense_2_W":[[-1.0469242,2.310652,2.5330374,-1.1560289,0.87019974,-0.24008566,-2.4145112],[-1.5431111,1.6602669,1.4227277,0.44263628,2.124669,-0.881401,-1.636305],[-0.7812676,0.3887846,0.046831988,-0.0021416398,0.0068075457,0.26359168,-0.40856928],[0.5853211,-0.020535953,0.1977803,0.11166494,-0.7388882,-0.6265164,0.19296904],[-1.4384844,-0.07708128,-0.62513274,0.1822617,-0.83729374,-0.20433801,0.08106154],[0.79002935,-0.51513207,-0.17725268,0.70090765,-0.37455943,-0.00461776,0.6140211],[0.38233972,0.11824663,-0.048423085,-0.22234191,0.071728714,0.09328836,0.5405535],[1.0066482,0.12065403,-0.67822254,0.91310203,0.3381496,-0.46563134,0.6765602],[-0.058819644,0.04884941,0.44360304,-0.16011114,-0.493316,-0.18134312,0.31395072],[-1.1391008,1.2845155,0.65725374,-0.75513005,1.1359249,-0.5923027,-0.46509168],[-0.28455976,0.122011006,0.19924502,-0.016063396,-0.19426562,-0.7366286,-0.30496517],[-1.1961275,-0.44696903,0.2981926,-0.6047452,0.60021174,0.7954056,0.67303944],[0.66179645,-0.35565352,0.4263759,-0.23354627,-0.5218455,-0.14847569,-0.45979464]],"activation":"σ","dense_2_b":[[-0.70381194],[-0.41715994],[-0.18704335],[-0.20373428],[-0.23588026],[-0.022451308],[0.010537296],[0.10221664],[0.014627381],[0.060474735],[-0.033638965],[-0.051280532],[-0.20772089]]},{"dense_3_W":[[0.15796849,0.6079072,0.5830924,-0.5528727,-0.1478945,-0.27996355,-0.30358565,-0.6117205,0.22281085,0.6154891,0.0165758,0.616245,-0.5880501],[-0.1846488,-0.46482992,-0.33469623,-0.15623315,-0.20466302,0.642436,0.34555972,0.60815287,0.43956748,-0.5986671,0.3041771,-0.26802206,0.03272353],[-0.88071394,-0.01339668,-0.4710771,-0.08369313,-0.47736472,-0.29117015,0.5252153,0.36675686,0.37659007,-0.38053805,0.07111416,-0.030936832,-0.3208197]],"activation":"identity","dense_3_b":[[-0.04642651],[0.037014484],[0.055794742]]},{"dense_4_W":[[-0.5493109,0.48931855,0.5176042]],"dense_4_b":[[0.04616592]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json deleted file mode 100644 index 87a91229aa..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.1964235],[0.87585396],[0.34334365],[0.04189015],[0.88570154],[0.8828632],[0.8788816],[0.85152715],[0.8326557],[0.8105437],[0.790872],[0.041831378],[0.04184441],[0.041850727],[0.041653063],[0.041487437],[0.041109927],[0.0406368]],"model_test_loss":0.016751321032643318,"input_size":18,"current_date_and_time":"2023-08-06_13-52-18","input_mean":[[27.281948],[0.057562165],[0.025426663],[0.001435362],[0.049740613],[0.051872276],[0.053928934],[0.06504589],[0.07349952],[0.08201744],[0.088106535],[0.0013536362],[0.0013746973],[0.001394585],[0.0014019185],[0.001435841],[0.0014179434],[0.0013371226]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.0041493755],[0.21777502],[0.7115575],[-2.2624984],[0.10148076],[-1.9139864],[-2.6148589]],"dense_1_W":[[0.0027682746,-0.5923534,-0.0008324875,-0.96639884,-0.43687794,1.0992304,0.44394565,-0.15681875,-0.19448969,0.23627451,0.027064066,1.0438472,0.38998574,-0.3910353,0.07241692,-0.3872127,0.24487913,-0.00981091],[-0.0063605076,0.41579154,4.60037,0.15178576,-0.41990525,-0.9291791,-1.8990772,-1.2513685,1.3644165,1.6527833,0.822613,0.6267062,0.3986885,-0.65917814,-0.68864816,0.038168486,-0.43694118,0.5313064],[0.1826715,0.21753219,2.6482086,0.49831605,0.04197241,0.48248503,-0.85676134,-0.088123225,0.5933527,-0.101084374,-0.07996661,0.39820936,-0.25201222,-0.5013944,-0.18441774,0.085484736,-0.20741902,0.15278186],[0.20413034,0.7558973,0.0039974884,0.09515875,0.023952896,0.12318843,-0.24863702,0.28330338,0.598279,-0.0031794424,0.12692909,0.26882735,0.002343814,-0.20356114,-0.4958486,-0.2599618,-0.3243958,-0.15502147],[0.0008160921,-0.75155866,3.2958338,0.18005188,-0.48001406,-0.37221822,-0.014907395,0.34556574,-0.36695525,0.5220802,0.9252095,-0.6326275,0.31536806,0.40089336,-0.24786693,-0.16599582,0.26964852,-0.11618827],[-0.6374511,0.50671804,3.4275095,0.45084175,0.014429362,0.16759996,-0.40217194,-0.1596027,0.27413476,-0.020348325,0.03291187,0.29519597,0.0606238,-0.77494323,-0.04082934,-0.019097991,0.021767832,0.017387142],[0.24087234,-0.5286611,-0.0010711186,0.50206137,-0.37612498,-0.065321624,0.3152248,-0.3156515,-0.31909347,-0.5960725,0.07865838,-0.57626325,-0.28874642,0.36706463,0.55150944,0.021375967,0.53079313,0.0685934]],"activation":"σ"},{"dense_2_W":[[-0.61061996,-0.3219788,-0.61355484,-0.41679764,0.9514292,0.089833274,-0.08153515],[0.5216678,0.35865775,0.14493388,0.75064963,-0.9559691,-0.11178071,-0.26124665],[-0.07039463,-0.54774076,-0.7926992,-0.28961974,0.25917596,0.06013633,0.6089615],[-0.29096878,-0.55007404,-0.6435847,0.022112146,0.31680974,-0.22504552,0.35249886],[-0.6804567,-0.94920105,-0.8136485,0.3378733,0.597489,0.46872833,0.28344125],[-0.8909486,0.17668937,-0.50494355,-0.51266,0.76238817,-0.08368523,0.21360965],[-0.08500846,-1.3190831,-0.40328535,0.17221951,0.9102355,-0.42406878,-0.14185876],[0.41169032,0.12483639,-0.43139625,1.0178162,-0.7741975,0.49720922,-0.0029358894],[-0.11413294,0.35335183,0.5509884,0.60089856,-0.07613763,-0.18951175,-0.5859379],[-0.30574977,0.66385657,0.29187888,0.15835138,-0.13989422,0.93255055,0.16954228],[0.9125405,0.33926046,-0.45827863,0.20637102,-1.3337029,0.99624145,-0.6220122],[1.0066077,0.5247419,0.3793085,0.006325064,-0.7290911,-0.32310325,0.17187376],[-0.6349526,-0.62067527,-0.291574,0.05529339,0.7121756,-0.08375974,0.22644123]],"activation":"σ","dense_2_b":[[0.04084762],[-0.06363596],[0.024858473],[0.10673008],[0.13199006],[0.10104594],[-0.008044478],[-0.10162189],[-0.15080203],[-0.11178794],[-0.24866438],[-0.17219713],[-0.008406249]]},{"dense_3_W":[[0.40549794,-0.4494019,0.2861901,0.37104332,0.5890352,0.58301944,0.40222168,-0.49054152,-0.31034032,-0.07984426,-0.5973653,-0.20854333,0.5224267],[-0.6481895,0.81970197,-0.5651685,-0.54807013,-0.5982727,-0.21111657,-0.7437358,-0.18910314,-0.22034706,0.69472176,0.7825804,0.5047144,0.30723065],[-0.2815957,-0.25135168,-0.03530872,-0.47208393,-0.14322938,0.72277945,0.027914466,-0.113597095,-0.31811848,0.057283014,0.22687551,0.074457414,0.35829133]],"activation":"identity","dense_3_b":[[-0.064762406],[0.042542093],[0.06525171]]},{"dense_4_W":[[-1.0957879,0.49216008,-0.0023324802]],"dense_4_b":[[0.054476205]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json deleted file mode 100644 index 7125acea96..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.603165],[0.968196],[0.31648555],[0.043116625],[0.97207046],[0.97122186],[0.9696193],[0.9440986],[0.9209154],[0.89170784],[0.8635297],[0.0430813],[0.043076806],[0.043065626],[0.04281562],[0.042584687],[0.0422511],[0.041811552]],"model_test_loss":0.0409439355134964,"input_size":18,"current_date_and_time":"2023-07-18_02-56-25","input_mean":[[26.58399],[0.02317232],[0.002863659],[-0.0103310775],[0.023948237],[0.024388459],[0.024497893],[0.02269405],[0.02217117],[0.02469916],[0.02554692],[-0.01046288],[-0.010425196],[-0.010389729],[-0.0103868665],[-0.010423806],[-0.010380345],[-0.010442573]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.7315183],[-2.0931118],[-0.08195505],[-0.07830412],[0.17271917],[-4.8443527],[1.3409065]],"dense_1_W":[[1.3492318,0.050542787,-2.0778215,0.23633496,-0.18946455,0.08569419,-1.1538246,-0.56782997,-1.1068271,-0.28026178,0.6351039,-0.5325991,-0.16680008,-0.6554269,0.7481424,0.39339453,-0.037751142,0.12015114],[-0.8597578,1.2366588,1.7126143,-0.63454264,-0.43808976,0.8164015,-0.69233084,0.61550444,0.9666506,0.42250025,-0.7908081,0.5167161,0.30983937,0.048737403,-0.14529826,0.22033516,-0.09019369,-0.3203758],[0.051401302,1.1819376,5.170329,-0.33289638,-1.3051468,0.29249665,-0.37950587,0.86728233,1.2912674,0.83467674,-2.1016138,1.439997,0.83915204,0.022718783,-1.1455536,-0.6881879,-0.294737,0.1764151],[0.13776821,-0.616747,-0.0515103,0.09284325,0.5059833,-2.2745788,0.8794392,0.23675422,0.050319634,-0.16485108,0.022945715,-0.55973744,-0.19152954,0.5871755,0.48204577,0.43679258,0.084300846,-0.48278216],[0.32304537,-0.17996605,-0.050503615,0.057818476,-1.1874164,0.93133926,-1.135065,-0.2207176,0.5842914,0.26639673,-0.4034041,0.74324435,-0.26271045,0.25194508,-0.33687708,-0.11164587,-0.21532725,0.31314066],[-2.675871,0.18930794,0.004894184,0.36429468,-0.28649125,1.037061,-0.8956486,-0.2692209,0.13867386,0.14524221,-0.07555664,0.13616084,-0.29872495,0.0028986863,-0.50115776,0.32039323,0.062777095,-0.08310216],[0.82229155,0.4732484,1.5131059,0.062322427,-0.036212314,0.24138685,-0.46806708,0.7292275,1.3152804,0.55548984,-1.013016,0.65633196,0.2736623,-0.5331334,-0.49591142,0.22494234,0.028473936,-0.29246685]],"activation":"σ"},{"dense_2_W":[[-0.07206964,-0.69786,-0.3486531,0.48960513,-0.0696577,-0.49357864,0.2556807],[-0.2884806,-0.41657805,-0.3665416,0.15454409,-0.028397316,-0.2936546,-0.16180961],[0.803782,-0.27441671,0.8961105,-0.4721216,0.7000408,0.5584937,0.4574221],[0.2588418,0.21096861,-0.08602997,-0.7243836,0.6489519,1.1368387,-0.47698346],[0.5214179,-0.4379109,-0.10204686,0.5734521,-0.5929383,-0.35884753,0.059597526],[0.7346847,-0.71839786,-0.044602457,-1.2187109,-0.13774236,-2.6510515,-0.51899457],[-1.7133079,-4.6997886,-0.25009632,0.4603738,-0.87082464,3.0611444,-3.0963175],[-0.048846636,0.91797,-0.31641433,-0.20087503,0.10279341,0.38753894,-0.038774494],[0.15197727,-0.81371284,-0.12212125,0.7514405,0.32369855,-0.2520269,-0.50490427],[0.25197092,0.8954266,0.3530475,-0.9002343,-0.6774651,0.55687094,-0.2753792],[0.9715217,0.11435808,0.7430187,-0.18673508,0.24399346,0.75376093,0.18281539],[0.07828533,0.40924087,-0.0052447147,-0.87007385,-0.16614385,0.75889,-0.09113192],[-0.42538083,-0.6130854,-0.18442006,0.81436867,-0.4363763,-0.4421119,-0.20321086]],"activation":"σ","dense_2_b":[[0.21890728],[-0.08548715],[-0.08091435],[-0.101685315],[0.10115151],[-0.14451991],[0.54433477],[-0.21013816],[-0.0104931025],[-0.4982431],[-0.1676464],[-0.31867242],[0.17811179]]},{"dense_3_W":[[0.7400645,-0.16807431,-0.12028546,-0.58515614,0.34891638,-0.5609874,0.7747953,-0.06871472,-0.044812664,-0.26168486,-0.2864116,-0.4026426,0.7852125],[0.13187477,0.58926487,-0.62580276,-0.043964617,0.5385393,0.07869039,0.43877578,-0.6161494,0.4016125,-0.06597045,-0.4159714,0.23538205,0.7423825],[0.11068092,0.26080158,0.051800307,0.3499296,-0.56061244,0.5514093,-1.840586,-0.14135396,-0.050766982,0.4223278,0.39574477,0.30749676,-0.8040509]],"activation":"identity","dense_3_b":[[0.034426726],[0.022138074],[-0.039126255]]},{"dense_4_W":[[-0.8798318,-0.64988774,0.49071792]],"dense_4_b":[[-0.03172631]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json deleted file mode 100644 index 760d358b61..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.67131],[1.0606116],[0.3141555],[0.047306955],[1.0598024],[1.059542],[1.058586],[1.0353245],[1.0132898],[0.98134106],[0.9488499],[0.0472228],[0.047223553],[0.04722212],[0.047007233],[0.04672726],[0.046201415],[0.045611456]],"model_test_loss":0.030893046408891678,"input_size":18,"current_date_and_time":"2023-08-06_16-03-17","input_mean":[[24.826109],[-0.0015730427],[-0.0024845933],[-0.006542893],[-0.0021615939],[-0.0027822834],[-0.0034116579],[-0.002972936],[-0.0019527061],[-0.0018800201],[-0.00055315095],[-0.0066206236],[-0.0066137947],[-0.0066051884],[-0.0065096957],[-0.00645474],[-0.0064896797],[-0.0065450436]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.0666385],[-2.1265264],[-0.009373159],[2.1585333],[0.037653618],[-0.017867725],[3.2116225]],"dense_1_W":[[1.1914837,-0.5645276,6.58303e-5,-0.11589882,0.37734768,-0.27381,-0.19863185,0.824706,0.4373293,-0.20449224,-0.15180561,0.35472932,0.3237236,-0.10154249,-0.578405,-0.2772973,0.10017485,0.25640446],[-1.0303509,0.29729548,1.9708672,-0.5768468,-0.028354015,0.42035812,0.3361436,0.3343814,0.37328744,0.8638404,-0.2677837,-0.15447378,0.49736965,-0.08687722,-0.66492444,-0.032154877,1.1899335,-0.48110774],[0.01983638,-0.24834296,-3.3855686,0.6749708,0.07187869,-0.024789268,0.37607005,-0.47755113,-1.0089839,-0.81658024,1.3305435,-0.97285813,-0.6226301,0.6422294,0.9579225,0.49827808,-0.48402268,-0.29993263],[1.2045997,0.62863886,0.0019727307,0.17700921,-0.8630537,0.98878884,-0.16361095,-0.29803157,-0.7254775,-0.15229262,0.3722205,-0.22486125,-0.06222317,-0.37571073,0.4424153,0.06388154,0.5859267,-0.56900877],[-0.013524671,0.31598365,0.0006406281,-0.25858632,-0.27701482,0.7357323,-0.35521507,-0.4483451,0.44878978,0.2829642,-0.2362616,0.62810344,-0.121423006,-0.38609955,0.0749125,-0.17727378,-0.38110465,0.35318217],[-0.0052065155,-0.5593012,0.002159691,-0.08422028,0.23008162,-1.022624,0.32955936,0.431307,-0.1006895,-0.030441636,-0.08401783,-0.3437167,-0.22863047,0.7158902,-0.17199361,0.09197799,0.19186375,-0.1833609],[1.4867296,-0.15920977,2.3333318,-0.23857078,-0.0040042745,1.2148064,0.10699171,0.22722282,0.5444096,1.349413,-0.47866884,0.40205494,-0.11314535,-0.5150614,-0.4630753,0.030254288,0.7952247,-0.2603006]],"activation":"σ"},{"dense_2_W":[[-0.17723514,-0.23341042,0.57393736,-0.4927488,-0.927548,0.58540887,-0.5868284],[0.66296387,0.29695207,0.20052847,-0.62608564,-1.0550549,1.0728254,0.0891513],[-0.16829221,-0.0679403,-0.36510104,0.23858383,1.1178643,-0.6089432,-0.31060657],[-1.8900537,-0.27381107,-0.5241167,-0.7089269,-1.1469728,-0.0641088,-0.41346708],[-0.51642907,-0.43836012,-0.31121448,0.47541407,1.169322,-0.2952497,-0.37012473],[0.8616518,0.12941492,-1.1983941,1.7177894,1.0778812,-1.3677566,1.5917606],[-0.407816,0.042307053,-0.53986156,0.5610484,0.7355027,-0.8320296,0.05677452],[1.4589415,-1.2519528,0.8708634,0.6212387,-0.9204132,1.7146589,0.13543351],[-0.055101812,-0.19029272,0.013408977,-0.46497017,-0.92594385,0.9864242,0.13991055],[0.5894197,-0.28149623,0.41216704,0.216877,-0.51424307,0.83235174,0.14314461],[-2.6734824,2.668342,-1.7240498,-1.0608208,0.54306996,-1.3263385,-0.19313851],[-0.82157856,-0.23220612,1.0158018,-2.0316136,0.06581752,0.7996686,-1.5219475],[0.5740489,0.18412288,-0.14555724,-0.5847231,-1.1873335,1.0647899,0.008006016]],"activation":"σ","dense_2_b":[[-0.29801813],[-0.25020108],[-0.022192547],[0.026752593],[-0.027117254],[0.30578387],[0.053404447],[0.23486306],[-0.07118241],[-0.09914868],[-0.18535325],[-0.32233533],[-0.04571355]]},{"dense_3_W":[[0.43566743,0.43129563,-0.6076586,-0.46461692,-0.40563574,-0.60545087,0.47773033,0.15361485,0.54101425,-0.14459106,-1.1077414,0.30648795,0.5856095],[0.07340811,-0.49523342,0.6213182,0.19087262,0.06972069,0.8834424,0.5443848,-0.50467765,-0.38180703,-0.4638601,0.65264165,-0.8575672,-0.5819035],[0.33573294,0.619451,-0.046216093,-0.66367626,-0.64414126,-0.084879674,-0.60994107,0.5997581,-0.2552046,0.10798684,-0.29609105,0.45087123,-0.3904423]],"activation":"identity","dense_3_b":[[0.064981125],[0.043677732],[-0.029785963]]},{"dense_4_W":[[-0.35612056,0.9586297,-0.2525408]],"dense_4_b":[[0.03888263]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json deleted file mode 100644 index 713bb4a0c5..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.118591],[1.012343],[0.30252126],[0.04747358],[1.0110137],[1.0105052],[1.0093575],[0.98329234],[0.96060896],[0.93123335],[0.90310067],[0.04717917],[0.047231637],[0.047265887],[0.047122534],[0.046797972],[0.046346754],[0.045773227]],"model_test_loss":0.03557046875357628,"input_size":18,"current_date_and_time":"2023-08-06_17-27-23","input_mean":[[24.204573],[-0.024622405],[0.0015252293],[-0.0032674451],[-0.023904368],[-0.02417538],[-0.024461435],[-0.023585865],[-0.021832237],[-0.020321053],[-0.019801456],[-0.0032891335],[-0.0032849729],[-0.0032711467],[-0.0032068372],[-0.0030881383],[-0.0030222118],[-0.0030280964]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.7401334],[-4.296874],[0.051964045],[-1.5580355],[0.59131175],[0.9876563],[-0.059906512]],"dense_1_W":[[0.39198807,0.14618506,-0.0005603469,0.5384161,0.583554,0.90904,-0.9356289,-0.347572,0.054832783,-0.01266942,0.20926124,0.40405145,0.26462293,-0.5968776,-0.4170079,-0.24383324,-0.36820978,0.23693004],[-1.4237757,0.44019157,1.7405101,0.107415356,0.73406404,0.38215244,-0.6587738,0.6303781,0.9956125,0.3772358,-0.60114783,0.28546256,-0.21894793,-0.5291562,0.028785085,-0.0466827,-0.02260468,-0.14874777],[-0.011811628,0.5467675,3.1406043,-0.5367604,0.16197537,0.72486085,-1.0583096,0.6693704,0.23038347,0.16671906,-0.6996211,0.9920219,0.24508859,-0.8121351,-0.11340726,-0.124802016,0.0040163123,-0.03318359],[-0.89146703,-0.43514004,-1.1770084,-0.113605686,-0.2791039,-0.6336671,0.52206266,-0.37517008,-0.583943,0.13963065,0.10783694,-0.019744247,0.09936149,0.34897432,0.077529624,-0.12277383,-0.21316914,0.31482303],[-0.5459662,0.6174858,-1.5395053e-5,0.23975974,0.1680196,0.6688479,-0.5717515,-0.2257085,-0.37668842,0.37691414,0.016556103,0.5753194,0.43969232,-0.63690066,-0.79015404,0.094646364,-0.26196766,0.13351451],[1.219549,0.6434229,1.5366393,0.29663944,-0.1569686,0.1139518,1.0193243,0.13182868,0.1257156,0.4684622,-0.33492422,-0.1404477,-0.20704125,0.21394883,-0.60481495,0.20762968,-0.2884613,0.04056693],[0.0022561958,-0.10740119,-2.973164,-0.24940717,-0.11246171,-0.017514866,-1.2795074,-0.021132804,0.8575916,0.07600141,-0.029272523,0.5688567,0.09931985,-0.10324848,-0.2901189,-0.37775588,0.39807785,0.3334187]],"activation":"σ"},{"dense_2_W":[[0.5666278,0.1050696,0.5731484,-0.6657482,0.57242334,-0.6813752,0.650503],[-0.3233396,-0.44350263,-0.16690572,0.123169236,-0.8172176,0.5242723,-0.45013273],[-0.1649446,0.012782408,-0.80965835,0.28827253,-0.6245722,0.2006493,-1.087686],[0.96152276,0.35989368,0.22035821,-0.80648047,0.4686015,-0.6329297,-0.0023717843],[-0.11855806,-0.91366136,-0.90975124,0.47533065,0.41179633,0.05490874,0.1064329],[-0.73532724,-0.6584749,-0.5160826,0.34969312,0.062357668,0.13114415,-0.32903922],[-0.72250515,1.2826318,-1.2006475,0.9427826,-1.371755,0.20815341,-1.0248761],[-0.4109795,-0.64342046,-0.22680378,0.12261962,-0.15706545,0.4520076,-0.09530116],[0.5485182,0.3166386,0.60656774,-1.0352023,0.35866728,-0.37757927,-0.37554651],[-0.7688577,-0.31978396,-0.42268845,0.59393954,-0.4435929,0.47090167,-0.31540674],[-1.0920306,-1.0558451,0.11860894,0.49140632,-0.10677766,0.47734076,-0.398253],[-0.030640373,0.41173688,-0.98270494,0.5081087,-0.5071277,-0.3028872,-0.8938836],[0.4381069,0.943475,0.6218088,-0.742083,-0.38795125,-0.054727156,0.31301942]],"activation":"σ","dense_2_b":[[-0.09199342],[0.03208081],[-0.04846608],[-0.1532128],[-0.012221367],[-0.15162058],[0.14393868],[-0.17525378],[-0.38610223],[0.03283754],[0.02243522],[-0.046554077],[-0.10267613]]},{"dense_3_W":[[0.76260686,-0.14955303,-0.07697563,0.795136,-0.5793355,-0.39125565,-0.850312,0.054931063,0.53414947,-0.3139965,-0.5467518,-0.38860124,-0.034747276],[0.26200438,-0.37439495,-0.4377097,0.17163786,-0.30471745,0.30637982,0.06850715,-0.34865668,-0.35463956,-0.1303642,-0.39582416,-0.5477129,0.69954056],[-0.38012898,0.3671737,0.4092681,0.1147916,-0.33737427,0.28946012,-0.2992325,-0.067024715,0.4072253,-0.31171417,0.33009604,0.12577192,-0.27651602]],"activation":"identity","dense_3_b":[[0.05052462],[0.061525963],[0.01540329]]},{"dense_4_W":[[1.5063055,0.714805,0.00043001983]],"dense_4_b":[[0.047914207]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json deleted file mode 100644 index 3e53360cd6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.957924],[1.0602055],[0.3483377],[0.044007655],[1.0696881],[1.0669217],[1.0629013],[1.022558],[0.99117285],[0.95355713],[0.91828537],[0.043950602],[0.043960184],[0.043955244],[0.04370865],[0.043465454],[0.04305762],[0.042518806]],"model_test_loss":0.03983215242624283,"input_size":18,"current_date_and_time":"2023-08-06_20-30-54","input_mean":[[24.622238],[0.017521156],[0.00757826],[0.0011451022],[0.016594924],[0.017204277],[0.018039215],[0.021406805],[0.02439622],[0.026556514],[0.028528417],[0.001193815],[0.0011970581],[0.0011935198],[0.0011202878],[0.001060377],[0.00095698517],[0.0008617843]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.07002942],[-0.16705358],[-2.9611764],[0.34919006],[0.515888],[-3.0217357],[-0.3703743]],"dense_1_W":[[-0.001037722,-0.23034889,0.00070932484,0.19091949,-0.35902733,-0.8921682,0.30972338,0.3144616,0.13060336,-0.1961081,-0.1309547,-0.729507,-0.079179555,0.49697357,0.02997426,0.37342516,-0.24386461,0.3236473],[0.9159012,-0.010550688,-2.401509,0.30691516,0.05056717,0.5097978,-1.1722806,0.17247927,0.34559217,-0.24330676,0.04055541,0.46409106,0.20967084,-0.82562864,-0.4943086,0.2081027,0.2530364,-0.0926206],[-0.93078494,0.5642841,2.5035574,-0.35270843,0.18849362,0.87544584,-0.2044937,0.73466784,0.47539774,0.07997192,-0.76057374,0.3159093,0.40554965,-0.5378864,-0.09868344,-0.3483285,0.16861473,0.19001411],[-0.8801367,-0.10308599,-2.2299495,0.04202499,-0.05023124,0.13920471,-0.78326404,0.39430746,0.23543742,0.14010431,-0.23845911,0.2567459,0.059797786,-0.57988393,0.113685064,0.14517607,0.16730362,-0.17216507],[0.14910753,-0.31030202,-2.4019601,0.1968272,-0.40163112,-0.23238596,0.6703164,0.07859055,-0.14317967,0.07362763,-0.04258365,-0.509903,-0.38269565,0.7657585,0.030617407,-0.11210979,0.30991936,-0.27056235],[-0.9013445,-0.74709606,-2.4476326,0.38786903,-0.3051019,-0.585037,0.06283271,-0.3787836,-0.61694026,-0.032208323,0.70738953,-0.2658627,-0.35824144,0.5567474,-0.033071913,0.1493693,-0.014829384,-0.16828252],[0.06442954,-0.869912,-2.9056792,0.1365006,0.16463475,-0.5906101,1.1546344,-0.06482889,-0.37295368,-0.1456135,0.2937723,-0.5213806,-0.57213086,0.38927227,0.49697468,0.21409509,0.63319594,-0.7391959]],"activation":"σ"},{"dense_2_W":[[-0.17591965,-0.07106175,-0.40103337,0.56516284,-0.6760929,-0.15387549,-0.89492965],[-0.45764968,-1.0195202,-0.41464484,-0.2810938,-0.028325718,0.09300495,0.35360244],[0.8125133,-0.54840755,-0.6930447,-0.89210993,0.56695956,0.44670337,0.5310144],[-1.0358114,0.33042994,0.11012975,0.23487902,0.24800783,-0.4299027,-0.46129325],[1.2276291,-0.5162977,0.22191486,0.16638434,0.23429595,-0.22487517,0.28309682],[1.0107075,-1.0881076,-1.008768,-0.5629702,-0.05878989,0.7923787,0.7309502],[0.49559563,-0.35230458,-0.7740999,0.02204071,0.24508348,0.075914145,0.75374156],[-0.21838671,0.42116773,0.5945599,0.30151197,-0.24432571,-0.46020442,-0.33258623],[-0.021219064,-0.25157404,-0.35190338,0.0668151,-0.6102883,0.1603531,-0.79725957],[0.0735072,0.5327899,-0.13316682,0.18007801,-0.7896261,0.08766711,-0.64606833],[0.6770077,-0.8900657,-0.26981142,-0.38599125,0.09799069,0.5758287,0.66643196],[-0.82503897,0.3003343,0.15965503,0.37416932,-0.644764,0.043236665,0.19912353],[-0.9234739,0.57710344,-0.4265305,0.3661275,-0.030128404,-0.4210636,-0.7627061]],"activation":"σ","dense_2_b":[[0.07509254],[-0.45370674],[-0.08009313],[-0.21234833],[-0.08377176],[-0.056009393],[-0.10460085],[-0.003972127],[-0.21230274],[-0.0108628925],[-0.14868702],[0.04881384],[0.053917274]]},{"dense_3_W":[[-0.43450725,0.28928438,0.63958466,0.26900065,0.59471947,0.045950003,-0.08964677,0.14317968,-0.1560713,0.4362775,0.6118739,-0.48017085,-0.17556131],[0.7623459,-0.3990245,-0.53529125,0.28715876,-0.25771093,0.25057483,-0.4946012,0.14644647,-0.02983568,-0.065986775,-0.55813897,0.34047204,0.29583102],[-0.093450435,-0.42808297,0.068437345,-0.1521326,0.11618435,0.6433002,0.44079673,-0.6619756,-0.2237737,-0.65349114,-0.118622996,-0.61334574,-0.14610668]],"activation":"identity","dense_3_b":[[-0.06914952],[0.05192733],[-0.03913266]]},{"dense_4_W":[[-0.4807093,1.1989409,-1.1321285]],"dense_4_b":[[0.044341844]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json deleted file mode 100644 index bee1e8d939..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.738584],[1.5957829],[0.58238095],[0.048208784],[1.5838295],[1.5881729],[1.5908173],[1.5664002],[1.5340934],[1.4806168],[1.4221525],[0.047998115],[0.04803774],[0.048071872],[0.048102442],[0.04803064],[0.047811132],[0.04743304]],"model_test_loss":0.007402807008475065,"input_size":18,"current_date_and_time":"2023-08-06_22-19-42","input_mean":[[21.779322],[-0.078570016],[-0.0073580677],[-0.0065681813],[-0.07246284],[-0.0734754],[-0.07447408],[-0.07268334],[-0.069738925],[-0.06446174],[-0.057134904],[-0.0064781737],[-0.006475137],[-0.006476324],[-0.006474212],[-0.006491243],[-0.00650736],[-0.00642134]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.1603358],[-0.419876],[0.084331356],[-0.07068766],[2.0145605],[-0.63310754],[1.434537]],"dense_1_W":[[-0.31878927,-0.47954968,-0.260915,-0.23391017,-0.14123324,-0.16656223,0.34148905,-0.55040246,0.048909064,-0.084660634,-0.05452977,-0.14122179,0.19401318,0.18124454,0.29322624,-0.11721254,0.058719337,0.049679324],[1.2746987,0.53341556,-0.5038306,-0.3943573,-0.3552817,0.6985798,-0.7583908,-0.071790285,0.10988926,-0.1613498,-0.43469277,0.20283195,0.37326258,-0.2713744,0.053292856,0.12493837,0.112449214,0.071374826],[-0.005748887,0.4395075,-0.023206176,-0.00010381389,0.10724853,0.79803634,-0.10418732,-0.17200217,0.07352905,-0.04382284,0.12897137,0.27188876,-0.2986032,0.1732639,-0.43260622,-0.13877538,0.108885035,0.037624177],[-0.009819267,0.7978249,3.3524475,0.21963945,-1.1893661,0.12886666,-0.12307468,-0.0057551884,0.89947134,0.2433565,-0.7049134,0.41656977,0.5013669,-0.4488184,-0.19362147,-0.21371745,-0.12667105,-0.11616998],[0.5350432,-0.6518214,-0.29382524,-0.186406,-0.17762733,-0.1445377,0.13506992,-0.35136354,0.24111918,-0.36675584,0.021335155,-0.05516007,-0.15420103,0.4554361,0.4533603,-0.34406003,0.006251238,0.1428859],[1.1166015,-0.29759768,0.48270738,0.43025842,0.0056440467,-0.4213741,0.4217568,0.15726581,0.074272975,0.1225627,0.32488325,-0.059570342,-0.34078333,0.076991476,-0.26384223,-0.06351244,0.1692961,-0.21616662],[0.098687425,-0.3278237,-0.21179028,0.0031954458,-0.20943744,-0.13822405,0.548112,-0.34726304,-0.3400807,0.25883827,-0.17620128,-0.36422935,0.52832425,-0.1289231,-0.026027037,0.18089916,0.1012807,-0.07116273]],"activation":"σ"},{"dense_2_W":[[1.3021795,-0.4139669,-0.7120532,-0.74666166,-0.18984732,0.048739053,-0.25614926],[-0.45348325,-0.5127636,-0.35794353,0.021264847,-0.73585445,0.02490475,-0.37029886],[-1.0356512,0.21161588,0.15873429,0.17991234,-0.3031208,0.07505193,-0.33505473],[1.5017016,-0.31481206,-1.1198424,-0.40624765,-0.09357655,0.51827437,-0.055450503],[-0.6468184,0.053211562,-0.6933904,-0.13317326,-0.24886934,-0.3967814,-0.6371098],[-0.41236708,0.3045984,0.51569694,0.026683038,-0.66206634,0.038440548,-0.3386708],[-0.58338356,-0.09002029,-0.13582824,0.008655593,-0.69411683,-0.21923552,-0.3192624],[-0.6897999,0.12905283,0.67996913,0.1456075,0.25029323,-0.34134966,-0.6459057],[-0.252227,0.043475367,-0.9427369,-0.14302255,-0.10663869,0.31176025,-0.35857844],[0.22877508,-0.5189181,-0.41833526,0.20187113,-0.1781152,-0.16428699,-0.2800521],[-0.65191513,0.44252837,0.6581859,0.25468537,-0.9424999,-0.32678768,-0.8593621],[0.43401113,-0.24967693,-0.281952,-0.284015,0.7110927,0.27138582,0.9720163],[-1.1512148,-0.18058608,0.45996955,-0.5937282,0.31828657,0.15207982,-0.22012103]],"activation":"σ","dense_2_b":[[0.0048766164],[-0.056708604],[-0.123050824],[-0.07202907],[-0.25869218],[-0.20529492],[-0.091088444],[-0.091022156],[-0.32449347],[-0.17546864],[-0.0612454],[0.04344016],[-0.074389376]]},{"dense_3_W":[[0.25576973,-0.575117,-0.6076316,0.36512917,-0.41574427,-0.40301278,-0.4620185,-0.5097215,0.122016355,0.3936914,-0.041409556,-0.059126735,0.07365807],[0.29514056,-0.25677466,-0.18109803,-0.030853858,-0.029449929,-0.28013232,-0.025037538,-0.4706025,0.02876151,-0.48724273,-0.6757201,0.6601352,-0.20265144],[-0.7641006,0.21497111,-0.28698337,-0.379376,-0.31239873,-0.26711258,0.02512146,-0.31214246,0.077003516,-0.18367848,0.6396449,-0.61027414,0.5836878]],"activation":"identity","dense_3_b":[[0.047669664],[0.041923303],[-0.020977087]]},{"dense_4_W":[[-0.6845342,-1.0030532,0.7527504]],"dense_4_b":[[-0.03611581]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json deleted file mode 100644 index 10e66ce042..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.910586],[1.4123459],[0.59487087],[0.03911551],[1.409979],[1.4115622],[1.411603],[1.3893355],[1.3640546],[1.3232217],[1.276401],[0.0390601],[0.039079115],[0.03908953],[0.039015334],[0.038927097],[0.038650174],[0.03832818]],"model_test_loss":0.007736066821962595,"input_size":18,"current_date_and_time":"2023-08-07_01-15-55","input_mean":[[22.795855],[-0.08798489],[0.01143446],[-0.009032234],[-0.09088829],[-0.090495676],[-0.09043885],[-0.08431701],[-0.0800931],[-0.07318552],[-0.065705255],[-0.009123672],[-0.009095005],[-0.009068311],[-0.008966204],[-0.008944961],[-0.008930321],[-0.008916563]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.1817923],[-3.718042],[-0.17253013],[1.0498631],[-2.7819123],[-0.40877423],[-0.1835958]],"dense_1_W":[[-0.051857583,1.3051457,3.4929137,-0.65374345,-1.1122645,-0.24794711,-0.3011514,-0.08444903,0.8605938,0.7186169,-0.99715984,0.579954,0.45131174,-0.5857832,-0.25104427,0.36404672,0.08432625,-0.118304946],[-1.1977811,-0.475098,-0.32292378,-0.4435726,-0.21691985,-0.45479798,0.93214303,-0.6325391,-0.057171293,-0.48693532,-0.058870036,0.043592565,0.29524007,0.19475447,-0.16399422,0.17714727,0.02705515,0.09614742],[0.0504194,0.37990266,0.039530136,0.04288842,0.036023762,0.50610423,-0.04245624,-0.08900527,-0.18667571,-0.136124,0.24658443,0.4461418,-0.21306992,-0.1905496,-0.24427558,0.019992698,-0.0458097,0.082212],[1.8970265,0.3291775,-0.45923525,-0.42205855,-0.4413092,0.022868842,-0.3697922,-0.2818066,-0.4076601,-0.3907717,-0.20571287,0.6031218,-0.23714252,-0.16817166,0.07743641,0.021997932,0.611759,-0.23154868],[-0.9974602,0.15397596,0.22610018,0.036102634,0.06823634,0.6489421,-0.41508022,0.35325828,-0.10202731,0.1711457,0.28493625,0.035079315,-0.4149946,0.08604628,0.117554076,0.10761524,0.08686444,-0.2359245],[-0.28764305,0.34052572,0.18389913,-0.017938213,-0.2068081,0.2519639,-0.7214537,0.29472184,0.27933893,0.27484724,-0.15843095,-0.037846185,0.316401,-0.09005458,-0.14835708,-0.19075473,-0.03951283,0.114958726],[-0.052516285,-0.16471781,0.17191207,-0.23444073,-0.022119049,-0.24730825,0.75023305,-0.40318617,-0.34178376,0.12554757,0.39539844,0.059354424,-0.44725272,0.4979164,0.060783666,-0.0009443115,0.11399086,-0.14107631]],"activation":"σ"},{"dense_2_W":[[0.15574715,0.106084,0.6234715,0.48498833,0.24288625,0.6844518,-0.61408937],[0.5661129,-0.5984536,0.79835355,0.3082054,-0.060715023,0.26763362,-0.016118767],[0.14648265,0.21900931,-1.1337527,0.16373587,-0.9757596,0.041679647,0.65339375],[-0.11193495,0.15425135,-0.22649455,0.4248423,-0.7341563,-0.15863545,0.44211566],[0.19026476,0.5881703,-1.0570571,0.34021673,-1.0282404,-0.26504597,0.28280511],[-0.8895008,0.8121495,-0.5693253,-0.77341056,0.33465576,-0.49232218,-0.11758821],[0.9326459,-0.36728933,0.24325472,1.0141891,0.16826893,0.2829455,-0.06759766],[-0.16648382,-0.44048628,0.39915726,0.06806857,1.0963099,-0.03239437,-0.6205627],[0.2911811,0.57449996,-0.9605739,0.043008372,-0.73384374,-0.6097065,0.45541903],[0.31353498,-0.08516989,0.8531249,0.013826798,0.6559815,0.18347614,-0.7929507],[-0.016170498,-0.18118915,-0.86683124,-0.34802145,-0.47758147,0.13393015,-0.17496912],[0.091279745,0.35503078,-1.1297911,0.2600009,-0.10615289,-0.7520532,0.5357286],[-1.2284657,0.86050045,-0.034789667,-1.018808,-0.06296706,-0.028193004,-0.4022851]],"activation":"σ","dense_2_b":[[-0.05504892],[0.01253799],[-0.062120188],[-0.051010966],[-0.08326587],[-0.2394042],[0.028907817],[-0.080568254],[0.03604939],[-0.12410697],[-0.01955361],[-0.051553864],[-0.18583551]]},{"dense_3_W":[[0.63645065,0.63501835,-0.66807485,-0.52668273,-0.28929064,-0.23005038,0.43932953,0.121157095,-0.7683699,0.4412728,-0.32547268,-0.71282554,-0.4370708],[-0.30129626,0.3909303,0.29454166,-0.1705362,0.48066851,0.06491059,-0.090611994,-0.08033778,0.3795498,-0.5508733,-0.32967407,0.38930234,0.2549319],[0.005347131,-0.5191341,-0.26486373,0.12736864,0.5334262,0.5237369,0.38844875,0.003590752,-0.26281914,0.01214623,-0.24618849,-0.056392476,-0.0030399126]],"activation":"identity","dense_3_b":[[0.015747098],[-0.13919984],[-0.0075076534]]},{"dense_4_W":[[1.3023344,-0.041308355,-0.00318671]],"dense_4_b":[[0.015396652]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json deleted file mode 100644 index 25ea1b538b..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.5459266],[1.3150389],[0.55143183],[0.0433077],[1.3103489],[1.3122923],[1.3130105],[1.2928256],[1.2722898],[1.2458807],[1.2160609],[0.043061666],[0.04310888],[0.043158278],[0.04318699],[0.043118294],[0.042912837],[0.042521223]],"model_test_loss":0.008513328619301319,"input_size":18,"current_date_and_time":"2023-08-07_03-22-20","input_mean":[[28.507357],[0.10861685],[-0.013601736],[-0.0064216373],[0.110937536],[0.10975514],[0.10922218],[0.10294279],[0.09506291],[0.08270148],[0.068715945],[-0.006518178],[-0.006483864],[-0.0064613186],[-0.0065263556],[-0.0066083767],[-0.0067466046],[-0.006989514]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.09213746],[0.07837435],[-0.127023],[-3.701971],[0.02127427],[-1.6431203],[2.2172556]],"dense_1_W":[[-0.015300604,0.5825342,-0.05051114,-0.18122214,0.07876552,0.9315104,-0.6162402,0.016129851,0.010469424,-0.020838048,0.1523773,0.15082102,0.090840556,-0.28110996,-0.1849562,0.15245719,0.22167133,-0.14279774],[0.02588672,0.32077435,-0.006722575,-0.011324345,-0.5431526,0.77720726,-0.32035637,-0.036528517,0.21234833,0.12834615,-0.15494944,0.5575763,-0.31280997,0.0010270807,0.14701857,-0.5796583,-0.3692745,0.5129307],[-0.0071143424,0.15858999,0.05704565,0.18143037,0.10665202,0.79463303,-1.0030777,0.2742014,0.20928839,-0.016834116,-0.14212018,0.18155766,0.4066399,-0.36911637,-0.50523275,-0.22205615,0.03395741,0.21754928],[-0.91471785,-0.0921693,-0.48348656,-0.14060836,0.024012497,-0.018223943,-0.12564234,-0.15323682,-0.3923083,-0.38660574,-0.31491503,0.011104942,-0.050269924,-0.032277748,-0.20858657,-0.018367982,0.19149122,0.10155454],[0.002645861,-0.8126742,-2.6549594,0.3429386,-0.20882957,-0.07800046,1.2651403,0.20753327,-0.7863295,-0.38006702,0.40243247,-0.76908433,-0.23738272,0.14581157,-0.38623288,0.39540884,0.04323188,0.56106085],[-0.9343576,-0.3586926,0.48885745,-0.13841353,0.17987157,0.061989535,0.46451867,0.29794976,-0.008585158,0.35067263,0.529655,0.51325566,-0.010691093,0.24579975,-0.5215634,0.0016024356,0.093200974,-0.031658597],[0.8293412,-0.20795242,-0.4017055,-0.533866,0.06481363,-0.26879504,0.3793856,-0.471539,0.023038805,-0.48921797,-0.22237803,-0.25630578,-0.039906733,0.666029,-0.0033022463,-0.31751958,0.26048532,0.09580422]],"activation":"σ"},{"dense_2_W":[[-1.0194138,-0.4770013,-1.6248175,1.692745,0.9337828,0.8437085,-0.54136294],[-0.52307904,-0.3975833,-0.6281236,0.08257637,0.27855587,0.43421826,0.45445123],[-0.20069543,-0.41561922,-0.44643855,0.07080084,-0.5047794,0.030606043,0.30134434],[-0.47260144,-0.7754414,-0.77397937,0.25201085,-0.07254463,0.658033,0.5073921],[0.3583858,0.10549722,0.5157753,-0.14047585,-0.617101,0.01266099,-0.6511524],[-0.9189057,-1.0387809,-0.5919117,0.46444207,0.1477566,0.459492,-0.2141334],[0.6823633,0.32230988,-0.13244073,0.2521329,-0.5877716,0.24724948,-0.416414],[-1.1259369,-1.071255,-0.25267237,-0.15611424,-0.36670506,0.8724834,0.70592606],[-0.3924353,-0.48566842,-0.89685357,-0.118145935,0.5531914,-0.012460924,0.78037065],[0.22028138,0.3253433,0.69419026,-0.08042979,-0.053916857,-0.2591152,-0.7299852],[0.37642446,0.15646371,0.73757994,-0.17530896,0.03673549,-0.35259926,-0.61480165],[0.6373535,-0.17438105,0.09731847,-0.37075844,-0.66817486,0.2684939,-0.48366025],[-0.8707067,-0.44384053,-0.44201162,0.51280767,-0.21291855,0.090648316,0.46247554]],"activation":"σ","dense_2_b":[[-0.3433028],[-0.031133696],[-0.06321145],[-0.19336915],[0.029136015],[-0.03043773],[-0.08612019],[0.05573746],[0.27088183],[-0.027076768],[-0.045460623],[-0.23163527],[0.058642514]]},{"dense_3_W":[[0.25786313,0.56292504,0.20988815,-0.11078339,-0.77840126,0.58619094,0.01413026,0.5725057,0.1304814,-0.74678564,-0.2714909,0.0549931,0.36715108],[-0.81611776,-0.17429464,-0.21161298,-0.10920066,0.2845192,0.3519452,0.42357373,0.09085552,0.41325328,0.05708694,-0.14555562,0.13213179,-0.20445172],[0.19899562,0.10822825,-0.4272676,0.613673,0.33998376,-0.17425252,-0.64963627,-0.19976379,0.64160216,-0.4531084,-0.40512505,-0.49072832,0.52435446]],"activation":"identity","dense_3_b":[[-0.05059222],[-0.15303764],[-0.035763595]]},{"dense_4_W":[[-0.9634106,0.023092944,-0.42669016]],"dense_4_b":[[0.04803448]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json deleted file mode 100644 index 109e316755..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.469145],[1.4993936],[0.57071626],[0.04533063],[1.4846802],[1.4910924],[1.4950643],[1.4770368],[1.450109],[1.4059838],[1.3534893],[0.0450725],[0.04513867],[0.04519552],[0.04527874],[0.045279715],[0.045107212],[0.044762082]],"model_test_loss":0.011814278550446033,"input_size":18,"current_date_and_time":"2023-08-07_03-50-24","input_mean":[[22.163363],[-0.072142825],[-0.0025159488],[-0.006112024],[-0.069063514],[-0.06971331],[-0.0704586],[-0.0690143],[-0.06599702],[-0.060672827],[-0.053519193],[-0.006028869],[-0.0060502393],[-0.0060780053],[-0.006223877],[-0.0063924924],[-0.0066624186],[-0.006921035]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.1967828],[1.3245456],[0.103971295],[-1.2520714],[-0.16602024],[-2.0981002],[-0.14066501]],"dense_1_W":[[-0.4214301,0.103772216,0.8929513,-0.18447745,-0.2701103,0.30181846,-0.36284757,0.21057971,-0.018612964,0.0593094,-0.16024835,0.1416867,-0.15246183,-0.3907173,-0.08361737,0.2765874,-0.1042719,0.12791668],[0.2745816,0.9077304,-0.011180789,-0.113791615,0.3160003,0.6698024,-0.6092146,-0.40735677,-0.053869486,0.12563229,0.2932765,0.4824642,0.22824322,-0.60383517,0.30220488,-0.049962338,-0.10605018,-0.088415876],[0.057883058,-0.04662177,0.68351626,-0.26972455,-0.43764362,-0.3083863,0.90403295,-0.09680003,-0.1232865,-0.18376413,0.0876113,-0.32598537,0.17061934,-0.039507188,0.030940559,0.22072437,-0.15162866,0.08447131],[-0.4781647,-0.22644347,-0.89709544,0.010036355,0.10885899,-0.12831874,0.32772595,0.41050613,-0.5090009,-0.107521385,0.26115948,-0.30580103,0.59975356,0.21102095,0.12877508,-0.07514449,-0.22881992,0.021187356],[0.011980259,0.655078,0.042019397,-0.39598337,-0.041903555,0.066606015,-0.36221957,0.049460504,0.3256252,0.043578107,-0.21974392,0.42173225,-0.007631104,-0.024107013,0.045484435,-0.3227939,-0.42450958,0.39688012],[-0.3749303,1.2016063,-0.0067011383,-0.14846599,0.07785109,0.20617402,0.023736777,-0.21452771,-0.34367922,0.24584025,0.24662304,0.051978063,0.2859072,-0.12438496,0.35116002,-0.25033846,0.10243457,-0.23285078],[0.010329517,-0.67234844,-3.8885512,0.32423398,0.45072496,0.7296973,0.38731125,-0.056170475,-0.81186455,-0.70703673,0.57100385,-0.9289139,0.09747156,-0.16550198,0.57601154,0.15654263,0.26841167,-0.023330638]],"activation":"σ"},{"dense_2_W":[[0.12735078,0.7578463,-0.8394619,-0.16871296,0.67499816,0.50618064,-0.036082815],[-0.9349809,0.49174136,0.64577276,0.8777052,-0.27532703,-1.3241053,0.92440283],[-0.88465834,-1.2536055,0.3215816,0.9998298,-0.78880596,0.3562564,0.29056188],[0.38568902,0.47334033,-0.39721346,-0.4981637,0.029624036,0.738565,-0.1316896],[-0.054050677,-0.34113935,0.34908327,0.3195855,-0.82633394,-0.4289165,-0.2309725],[-0.6001114,-0.48455656,0.088143736,0.6083232,-0.19328989,-0.6810937,0.45793325],[-0.04838382,-0.6484051,-0.373168,-0.47354728,-0.71413493,-0.10174487,0.009353199],[0.8382851,0.78388906,-0.7335581,-0.45394737,0.45634454,0.032309055,-0.18919362],[0.29141206,0.25385764,-0.36612022,-0.35426342,0.6002645,0.6095089,-0.22014005],[-0.29009074,-0.96834266,0.6976368,0.3486304,-0.2684134,-0.94937044,-0.25426298],[0.11204245,-1.096992,0.3850058,0.012738441,0.02725583,-0.9902537,0.24397202],[-0.33665514,-0.9425791,-0.08292521,0.23680806,-0.41410118,-0.24981315,0.34143913],[0.014888026,-0.03633883,0.665913,0.18707138,-0.85576785,-0.8612555,-0.39374956]],"activation":"σ","dense_2_b":[[-0.017777005],[0.23545785],[-0.15226115],[-0.047002222],[-0.08956424],[-0.059980016],[-0.13794045],[0.0060922517],[-0.3427262],[-0.07332524],[-0.21932544],[-0.22186531],[-0.076186255]]},{"dense_3_W":[[-0.7212533,0.5909567,0.60852754,0.30440143,0.5012994,-0.24762858,-0.66177696,0.15439416,-0.22291721,0.4902901,-0.34424105,-0.119624294,0.09342594],[0.44096592,-0.49161512,-0.6518094,0.6872087,-0.59066635,0.55458814,-0.36470622,0.4769713,-0.045274016,0.15205328,-0.5337833,-0.3563202,-0.15947717],[-0.7922449,0.5979252,0.5463646,-0.42703834,-0.019785186,0.51403254,0.4312795,-0.45969784,-0.33491063,0.21159784,0.3650792,0.1885672,0.5103654]],"activation":"identity","dense_3_b":[[-0.11362524],[0.06490415],[-0.09258138]]},{"dense_4_W":[[-0.34753174,0.23976417,-0.86662257]],"dense_4_b":[[0.07719801]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json deleted file mode 100644 index 0bb8fb0fe2..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[4.3663363],[1.0055081],[0.48724762],[0.041052617],[0.9967611],[1.000683],[1.0039185],[1.0006562],[0.9922954],[0.9760051],[0.96259797],[0.040620644],[0.040736996],[0.040861562],[0.041329786],[0.041552614],[0.04158318],[0.041458495]],"model_test_loss":0.007739691529422998,"input_size":18,"current_date_and_time":"2023-08-07_05-33-00","input_mean":[[21.149132],[0.04869401],[0.010550776],[-0.042260047],[0.04392769],[0.045757443],[0.04700402],[0.05030857],[0.046020832],[0.043477297],[0.04459311],[-0.042488344],[-0.042413425],[-0.042349935],[-0.0422564],[-0.042364012],[-0.04258541],[-0.042924497]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.2678127],[0.08612767],[-0.9489097],[0.706986],[-0.30796576],[-0.32985103],[0.080427095]],"dense_1_W":[[0.0036277466,0.51429325,1.0403895,-0.21717447,-0.43794936,-0.19047353,-0.64920795,-0.048046228,0.69371104,0.53239745,-0.7118019,0.6192604,0.5279617,-0.30141866,-0.19268416,-0.3834617,-0.04798644,0.15677519],[0.030118963,-0.13764045,-0.07282364,0.08246006,0.2705789,1.1211811,-0.57014453,-0.16758528,-0.2744678,0.09098098,0.30342337,-0.20622616,0.0074658724,0.117365144,-0.2300956,0.17353779,0.0072367247,-0.05224067],[-0.46240714,-0.814998,-0.15898485,0.23570561,0.2619672,-0.6533978,0.53975147,0.42714936,-0.15445922,-0.27475175,0.2855774,-0.6121087,-0.085973136,0.56669056,-0.24448115,0.47533005,-0.0016848596,-0.2630539],[0.48946816,-0.17746238,-0.16460344,-0.3096607,0.21007513,-0.51034343,0.029157858,-0.13090727,-0.09923416,0.38133857,-0.08658899,-0.37016922,-0.20602193,0.81421083,0.47483093,-0.30339777,0.043880396,-0.07612349],[0.010865774,-0.24699818,1.7088879,0.025180334,0.0171949,-0.8591754,0.41037732,-0.19206196,0.020423349,-0.07455425,0.17094779,-0.25438294,0.11110474,0.32507765,0.43417934,-0.011772227,0.14530338,-0.59843206],[0.027194558,0.63995826,-0.010129754,0.44069192,-0.1763659,-0.9194824,0.02155618,-0.12091762,-0.05442227,0.43881658,-0.3719806,-0.23903327,-0.20877454,0.41533244,-0.13582179,-0.14811464,-0.20708357,0.15655594],[-0.0028607307,0.34870997,2.821092,0.2508811,-1.035149,-0.465783,-1.5769824,0.18240027,1.7161161,1.8064464,-1.3023019,0.52437043,-0.00077510276,0.16097444,0.040497832,-0.045791112,-0.8714639,-0.1387739]],"activation":"σ"},{"dense_2_W":[[-0.4802455,-0.5064868,-0.2886249,-0.0686329,-0.27806887,-0.3524303,-0.80409414],[0.34504583,0.3495648,-0.7631179,-0.38251773,0.29856616,-0.26794648,-0.18538539],[0.6198588,-0.22676483,-0.35512465,0.12881657,-0.40367082,-0.9252802,-0.0002468375],[0.35880542,0.46389118,-0.8148363,-0.59149826,-0.5300025,0.20585157,-0.07116474],[-0.23429085,-0.62216985,0.59508204,0.4193159,-0.15182957,0.5141024,-0.41728604],[0.66723776,0.073733844,-0.070885584,-0.48375297,-0.45241132,-0.84997284,-0.031634018],[-0.5627967,-0.4777591,0.868787,0.17813006,0.21961252,0.14355378,-0.57126164],[-0.14685419,0.03656165,-0.7900763,-0.08400198,0.24159017,-0.85876423,-0.26216614],[-0.71358204,-0.689546,0.051773578,-0.0848018,0.18454298,0.22894992,-0.1594909],[-0.018925406,-0.706924,0.090921454,0.70733404,-0.1029515,0.4853316,-0.19676127],[0.3700011,0.58441055,0.019160673,-0.4851522,-0.5654224,-0.81087536,0.48571846],[-0.6824983,-0.010707942,-0.03845548,-0.24932735,0.10926147,-0.65549374,-0.13580413],[0.044423133,0.24843681,0.10453449,-0.5270328,-0.0071183904,-0.805887,0.016872479]],"activation":"σ","dense_2_b":[[-0.32894507],[-0.1402385],[-0.08289674],[0.058721446],[-0.08779582],[-0.08003288],[-0.0015345884],[-0.02523492],[0.00043462456],[-0.033334095],[-0.036279026],[-0.33189464],[-0.07644796]]},{"dense_3_W":[[0.13798034,-0.55931157,-0.057955276,-0.049440853,0.51565015,-0.01682391,0.30927873,-0.11561556,0.6672029,-0.07284992,-0.4854766,-0.14209567,-0.34877455],[-0.031582475,0.050488807,-0.24109462,-0.54226226,-0.22244236,-0.3798091,0.5201355,0.11588744,0.013117147,0.33739212,-0.23309216,-0.14616711,-0.5281888],[-0.076868005,-0.03763952,-0.29681742,-0.12974247,0.4806066,-0.04267054,0.51561165,-0.50798887,-0.13377365,0.61627406,-0.48184386,0.3136061,0.23230153]],"activation":"identity","dense_3_b":[[0.062304508],[0.06676691],[0.045753885]]},{"dense_4_W":[[-0.7684763,-1.1087472,-0.815416]],"dense_4_b":[[-0.05879514]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json deleted file mode 100644 index 81deb9f472..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.896002],[1.2703207],[0.4862841],[0.043405883],[1.2591066],[1.2634319],[1.2668407],[1.2588236],[1.2390842],[1.196458],[1.1518458],[0.04327276],[0.043316394],[0.043354623],[0.043371588],[0.043337632],[0.043194752],[0.04294343]],"model_test_loss":0.0052194190211594105,"input_size":18,"current_date_and_time":"2023-08-07_06-24-33","input_mean":[[21.445068],[0.09960828],[0.007299674],[-0.0005310989],[0.09852017],[0.09864108],[0.09867044],[0.10080879],[0.10140148],[0.09866842],[0.095603466],[-0.00043161964],[-0.0004366571],[-0.00044840755],[-0.00056364527],[-0.0007040198],[-0.0009044244],[-0.0011604802]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.09470449],[3.0432646],[0.03450416],[-0.46021092],[1.1594877],[0.029558277],[1.8363751]],"dense_1_W":[[0.005493746,-0.3358011,0.0037607898,0.29596448,0.3943874,-1.0717398,0.5701757,0.016112054,-0.3643242,0.23849818,-0.075061426,-0.56350166,0.061684538,0.23258829,0.3412455,-0.086815886,0.09234655,-0.08318382],[0.5553914,1.0832955,0.025380384,-0.42384112,0.25218967,0.2652197,-0.08185232,0.14480954,-0.08236447,0.41922125,0.03566944,0.47901392,0.27303162,0.23061423,-0.48810846,-0.049590047,0.055590317,-0.0777213],[0.020737711,-1.0003403,-4.471138,0.18066612,0.8972061,0.281358,0.63211244,0.037308935,-0.27867937,-0.5369628,0.02718618,-0.8628528,-0.5999772,0.41523072,0.23050354,0.6017408,0.07975743,-0.02996209],[0.13376372,-2.1679244,0.024798622,-0.6729938,-0.54384416,-1.0513178,0.8737397,-0.41420826,0.114922546,-0.99975115,-0.08032563,-0.5233528,-0.047853615,0.95928097,-0.67657197,-0.6571614,0.3954971,0.7528502],[1.0411915,0.2750806,-0.017673122,-0.287801,-0.5224428,-0.17964116,-0.7069524,-0.38134468,-0.040215928,-0.100667715,-0.22424145,-0.011132579,0.045741584,0.25371146,-0.41912347,-0.07781668,0.072858974,0.3702856],[0.006503676,0.31328365,0.7664561,-0.6728464,0.3802759,0.44000676,-0.5781886,0.107931,-0.15678358,0.1777509,-0.48083207,0.49993676,-0.26356068,-0.6739486,0.0690044,0.28473458,-0.08100241,0.2141241],[0.6557612,-1.1317073,-0.01985534,0.2997433,-0.3100224,-0.5334095,0.59377813,-0.11130485,0.11088933,-0.23197712,-0.15815854,-0.38820937,0.05915133,-0.4817993,0.3789274,0.16070421,-0.20570633,0.1632214]],"activation":"σ"},{"dense_2_W":[[0.4679878,0.2634842,-0.028860494,-0.21427041,0.14012837,-0.5288975,-0.42545995],[-0.6775605,-0.4815579,-0.454403,-0.07230136,0.009694609,0.59333,-0.62719697],[-0.6382057,0.6997013,0.36473322,0.2414489,0.13382578,-0.18536665,-0.90939593],[-0.8748301,2.3719103,-1.56188,-1.8237168,2.1302335,1.2548504,-0.031323623],[0.503896,-0.679211,-0.6008442,0.60013664,0.17343543,0.17834695,0.24348144],[-0.13778792,0.15866904,-0.76191425,-0.5750008,-0.69259375,0.40918577,-1.4637057],[-0.52587533,-0.25144148,-0.31243584,-0.1940254,-0.25742918,0.22230358,-0.21316433],[-0.29734585,-0.21217649,-0.4547587,-0.4792317,0.52856797,0.5213185,0.07181257],[-0.007364429,0.007793841,-0.71918666,-0.005362996,0.23980153,-0.49275202,-0.6564195],[0.27902287,0.11022579,0.09352632,0.18805945,0.30498815,0.03035562,0.31641266],[0.65705526,-0.5266016,-0.022429584,0.18331312,-0.32305643,-0.007786143,-0.26408496],[-0.4082327,-0.25355664,-0.5861339,0.31163412,0.25877875,-0.75417554,-0.30994046],[0.5602024,-0.5399794,0.34386253,-0.40272358,-0.48508552,-0.18899718,0.17928903]],"activation":"σ","dense_2_b":[[-0.010232577],[-0.00023857807],[-0.034300473],[0.46175855],[-0.028856292],[-0.191977],[-0.23886801],[-0.003576378],[-0.22439884],[-0.009154732],[-0.014472028],[-0.22065732],[0.0036408578]]},{"dense_3_W":[[-0.30743915,-0.5722211,-0.48067984,-0.108277574,0.29175866,-0.51613647,-0.52692574,-0.06551988,-0.0476114,0.3618537,0.05102852,-0.27722335,0.5223134],[0.30818227,0.17767535,0.5113013,-0.25676715,-0.058021083,0.4884727,-0.23518495,0.43626583,-0.42181972,-0.047644824,-0.1406492,0.23160899,-0.44818217],[0.45361012,-0.51555586,-0.5169346,-0.2632498,0.44542933,-0.15754463,0.30686757,-0.56882674,0.065441564,0.3283218,0.18038327,0.1817784,0.5348782]],"activation":"identity","dense_3_b":[[0.012215524],[0.0026582293],[0.008550247]]},{"dense_4_W":[[-0.97812647,-0.12224905,-1.2473096]],"dense_4_b":[[-0.009789151]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json deleted file mode 100644 index bb76193085..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.222069],[1.4015005],[0.5433659],[0.046245173],[1.3907557],[1.3952589],[1.3979354],[1.3851876],[1.3639251],[1.3265828],[1.2794514],[0.04593869],[0.04602148],[0.04609722],[0.046142124],[0.04606174],[0.04579012],[0.045302678]],"model_test_loss":0.009272297844290733,"input_size":18,"current_date_and_time":"2023-08-07_07-41-26","input_mean":[[21.305267],[0.004457678],[0.0094668595],[-0.012420628],[0.004529341],[0.005278159],[0.005986334],[0.00870795],[0.010163208],[0.009530685],[0.008663278],[-0.012377954],[-0.01237566],[-0.012378746],[-0.012456359],[-0.012550046],[-0.012720126],[-0.012910544]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.047097],[1.9158853],[0.17434227],[-0.97165537],[-0.10269022],[-0.9169131],[0.0008914754]],"dense_1_W":[[-0.88408405,1.235049,0.0426836,0.013424199,-0.08920125,-0.013397676,0.586178,-0.04885077,0.3810674,0.36573988,-0.3742023,-0.11406285,0.04956962,0.03306387,-0.10079546,-0.18288964,-0.018636217,0.16385865],[0.88075936,1.297032,0.032537315,-0.17033583,-0.09099818,0.4118023,0.12728553,0.14429076,0.1508224,0.15520132,-0.16594887,0.11192377,0.23395588,-0.301161,-0.2021957,-0.0027576552,0.08704741,0.086546],[0.7485217,0.44026893,-1.9140397,-0.17217009,0.059100352,-0.047859672,-0.5856153,0.44894385,0.22710915,-0.21913743,-0.29625463,0.322819,0.07943353,-0.022421572,-0.090653695,-0.444467,0.1394176,0.18164952],[0.4358342,-0.32757956,2.063401,0.20161365,-0.24610913,-0.3428621,0.6505693,0.016287383,-0.07427287,0.03351724,0.22633989,-0.3643204,-0.26658386,0.20206529,0.12288221,0.2783347,0.19327204,-0.36068434],[-0.0035009065,-0.72611684,-0.0082449615,-0.22654101,0.46806103,-0.34762052,-0.40569013,0.40099728,0.11805809,-0.16216965,-0.042650726,-0.89064217,0.21002078,0.642215,0.20523302,0.31924605,0.101329714,-0.13541093],[-0.41431567,0.11045769,2.0121331,-0.2800082,-0.054261006,0.11609053,-0.5194348,0.0039073634,0.18652305,-0.21063456,0.3278946,0.18608095,-0.043919813,0.063306555,-0.30901843,0.42117286,0.14100657,-0.16917707],[0.1144374,0.0647928,1.4224553,-0.33906898,-0.090644486,-0.5943667,-0.7509755,0.8212074,0.73758525,0.21148895,-0.4533185,0.18891388,0.058078196,-0.32458195,0.36525872,0.30673453,-0.21418211,-0.02886248]],"activation":"σ"},{"dense_2_W":[[-0.09611834,0.018518968,0.3276854,-0.29474196,0.07749839,-0.18393336,-0.108452864],[0.8463591,0.2765366,0.26273692,-0.542793,-1.3948811,0.38413918,0.13216402],[0.6448755,-0.9121937,-0.4041889,-0.44714126,-0.6450281,0.62885827,0.6442234],[-0.6492855,-0.59167993,-0.2413325,0.6629408,0.8960554,-0.16874227,-0.23902991],[0.25179657,-0.0052280165,-0.787087,-0.52129155,-0.7962139,0.5745307,0.5154668],[0.1658994,-0.14782484,-0.34189487,-0.24388146,0.26166263,-0.10471854,-0.98238224],[0.3014624,-0.11165519,0.1926479,-0.0071346364,0.12017147,-0.5179131,-0.42826292],[-1.3958447,1.0750867,0.51260227,0.5384232,-0.34655526,1.0435345,1.5503204],[0.40272388,0.12323784,0.24391593,-0.66794497,-0.92917013,0.24938683,0.35117647],[-0.37655634,-0.79549915,-0.7874939,0.049076214,0.16099943,-0.46943882,-0.46139815],[0.101291455,0.14885388,-0.42190292,0.31973553,0.7213091,-0.43006414,-0.27885658],[-0.32128662,-0.3569677,-0.5827871,-0.44924423,0.16653252,-0.70502335,-0.009819985],[-0.1346414,0.065946266,0.22599967,-0.71018034,-0.8050497,0.21156272,0.017037582]],"activation":"σ","dense_2_b":[[-0.15589215],[-0.28170976],[-0.38979664],[0.083457045],[-0.43890372],[-0.010706772],[-0.07441867],[-0.20225793],[-0.14819947],[-0.0007909137],[-0.0439504],[0.00047137964],[-0.0815142]]},{"dense_3_W":[[0.04960481,0.7185168,0.55996764,-1.1893424,0.63903844,-0.7087734,0.2795772,0.5947179,-0.12752935,-0.9978769,-0.25698617,-0.06704499,-0.04695985],[0.301456,-0.21193206,0.22014925,0.07238018,-0.24935168,-0.38614914,-0.53463185,0.41344443,0.122541234,0.4214228,0.2293029,0.506032,-0.25195587],[0.30665806,0.26296693,0.6493592,-0.4486736,-0.020275978,-0.3785944,-0.39404252,0.43909723,0.5369053,-0.4844059,-0.36188412,-0.6198387,0.2678705]],"activation":"identity","dense_3_b":[[-0.104795374],[-0.0101343505],[-0.022516306]]},{"dense_4_W":[[0.6437274,-0.14137705,0.8526488]],"dense_4_b":[[-0.020337932]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json deleted file mode 100644 index 4e71fbb643..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.980772],[1.3223853],[0.9268239],[0.024433661],[1.4122427],[1.3833307],[1.3508096],[1.2307118],[1.1849836],[1.1415477],[1.0909376],[0.024418019],[0.024408164],[0.024402233],[0.024252728],[0.024191827],[0.024145853],[0.023861935]],"model_test_loss":0.010252699255943298,"input_size":18,"current_date_and_time":"2023-09-01_20-45-00","input_mean":[[16.563862],[0.1111928],[0.6683766],[0.015079002],[0.0854696],[0.09152668],[0.09758363],[0.121493205],[0.14106716],[0.15788953],[0.16946313],[0.015242839],[0.01523548],[0.015225873],[0.015277851],[0.015472722],[0.015790224],[0.015869608]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.9736897],[-0.14363614],[0.085171],[-0.55840254],[0.055252872],[2.0375261],[-0.18923905]],"dense_1_W":[[1.5419508,0.4347514,0.022342844,-0.13883114,0.2409088,-0.12417678,-0.53509873,0.20153597,0.17858733,-0.19925015,0.06234279,0.24006103,-0.19976556,-0.18627135,0.45923752,-0.15200825,-0.08930177,-0.0050552515],[-0.030591678,0.13387124,0.17806397,-0.13424215,3.5386305,1.7213475,0.84962314,-2.7109919,-1.8677185,-0.9485388,0.11587285,-0.52675563,0.16423121,0.09590165,-0.005669875,0.12117092,-0.3104153,0.34291723],[-0.040051196,-0.90900606,0.033305887,0.48924676,-0.05219214,0.16458692,0.23944448,-0.65811116,-0.14248033,-0.040640995,0.23316579,-0.11273267,0.26166895,-0.3892416,0.20361155,-0.32397175,-0.04944256,0.12745105],[-1.8584498,0.5795085,0.0001561481,-0.3926851,-0.62748444,0.32592124,0.26113057,-0.18676938,0.15465672,-0.039395984,-0.11589895,0.3461765,-0.16687828,0.007636779,0.34468338,-0.24718969,-0.08537343,0.095972665],[0.008184925,0.29720604,0.12834367,0.24606115,-0.050453648,-0.14317429,0.01469496,0.10121035,-0.15977393,-0.071321785,0.14336964,0.1700991,0.15197535,-0.16201954,-0.27186736,-0.18587373,-0.29943192,0.31800416],[1.3913352,0.09059665,-0.06279646,0.282595,-0.5809931,0.06669835,0.31247872,0.33775496,-0.5383088,0.59837353,-0.45551175,0.69241804,-0.26237598,-0.25280276,-0.23810647,-0.60125524,0.035016667,0.40757436],[-0.020792918,0.8449914,-0.31495875,-0.18665223,0.2601113,0.23361494,-0.20227535,0.23019418,-0.36623937,-0.52237487,0.2838479,-0.23221277,0.23532006,-0.1258153,-0.1928124,0.17601454,0.39783114,-0.15201832]],"activation":"σ"},{"dense_2_W":[[0.47221714,0.016886314,-0.33116162,-0.06792718,0.35775667,-0.52708566,0.5025349],[0.9420784,-0.7130284,0.091753036,0.014161378,0.35075215,0.23026218,0.2984281],[0.1440958,-0.022310976,-0.63004696,0.21640168,0.8508171,-0.16760021,0.13965653],[-0.051360242,0.4106794,-0.88011396,0.61412853,0.7515858,-0.2784069,0.19800848],[0.5194753,0.046521883,-0.864117,-0.34576842,-0.21068099,-0.09319121,0.52076554],[-1.8818634,0.99190366,-0.5483396,0.07163825,-0.53633076,0.30430192,-0.43019328],[-1.7481059,1.364397,-0.05183877,0.26558736,-1.0966011,-0.21229754,-0.33233747],[-0.30067447,-0.19872609,0.59686613,-0.5647894,-1.0501944,0.8325608,-0.43664268],[0.59113705,1.348725,0.6290724,-0.6959389,-0.8086151,0.6735704,-0.24954763],[-0.4161925,-0.09258512,0.60084736,0.50538963,-0.20283572,-0.10547142,0.25737134],[0.26642272,0.27427554,-0.86675686,0.3761756,0.13520287,-0.49277586,0.023729336],[-0.057346545,0.40247637,-0.96133965,-0.24963704,0.4294661,-0.0321745,0.3121117],[-1.1896358,0.47296816,0.2525738,-0.41773388,-0.91891223,0.53242177,0.026586607]],"activation":"σ","dense_2_b":[[-0.06391301],[0.10446307],[-0.07552547],[-0.03267669],[-0.08992916],[-0.3635667],[-0.4151249],[0.16962343],[0.17003855],[-0.014166557],[-0.009087415],[-0.12204086],[-0.021121267]]},{"dense_3_W":[[0.11135484,-0.110632345,0.19104497,0.45092243,-0.58294576,-0.22749306,0.0548284,-0.20707788,-0.07605733,-0.5409419,0.18328355,0.36243346,0.48439535],[-0.4690379,-0.19305366,-0.2964049,-0.77543974,-0.26955664,0.62021655,0.51425976,0.6449075,0.6932653,0.29448414,-0.5598454,-0.47247913,0.639388],[-0.086130135,0.0662881,-0.39795497,-0.05040378,0.051303852,-0.38565347,0.81593895,0.65294117,0.45629048,-0.2787272,0.3136061,-0.34606743,0.6333548]],"activation":"identity","dense_3_b":[[-0.0200204],[-0.028796887],[-0.06285456]]},{"dense_4_W":[[-0.10954055,-0.93173796,-0.32423872]],"dense_4_b":[[0.031629298]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json deleted file mode 100644 index efc9e3a294..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.320446],[1.4674793],[0.55242187],[0.033747878],[1.4499153],[1.4551026],[1.4600143],[1.4764196],[1.4860643],[1.4978211],[1.5023137],[0.033594012],[0.033627346],[0.03367146],[0.033806257],[0.033919122],[0.03404663],[0.03421485]],"model_test_loss":0.0031593828462064266,"input_size":18,"current_date_and_time":"2023-08-07_09-20-56","input_mean":[[16.720589],[-0.3453631],[-0.01988461],[-0.011758546],[-0.33604637],[-0.33879158],[-0.34137574],[-0.34826595],[-0.34946606],[-0.35428008],[-0.36132792],[-0.011764421],[-0.011732091],[-0.0117199095],[-0.011728072],[-0.011719623],[-0.011750716],[-0.011823986]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.50939155],[0.3405257],[1.6462622],[-0.10843948],[0.285203],[0.037651468],[1.8082677]],"dense_1_W":[[0.024142604,-0.21203998,0.026902797,-0.026592031,-0.5052848,0.08084745,0.060381155,0.07824176,0.1476794,-0.31446207,-0.05622627,-0.24280141,-0.013746504,0.012400391,0.17171621,0.29621166,-0.28375784,0.05738833],[0.1768927,-0.29521623,-0.025311217,-0.092430666,0.28460526,-0.617111,0.49956995,-0.3885511,-0.2726708,0.20527962,0.14372464,0.26093155,0.14992015,-0.31772944,0.08945775,-0.09835619,0.31046915,-0.10769861],[0.97614205,0.4236573,0.38003942,0.49241897,0.51790404,0.053766027,-0.80027264,0.26498482,0.05449548,-0.26899186,0.087867126,0.12839077,-0.05710694,-0.66316336,-0.0033742453,0.2792481,-0.11627638,-0.041489422],[-0.0015497641,0.8673382,3.263093,-0.1707162,-0.6192832,-0.67156154,-0.04999914,0.14607337,-0.06100974,0.58493054,0.15063228,-0.05193594,-0.29414734,0.3289635,0.39314392,0.074083135,-0.25906774,-0.1849865],[0.047487535,0.6483187,-0.012538455,-0.38905606,-0.18153276,0.44709945,-0.5075622,0.21219371,0.068916075,0.25938293,-0.17245348,0.1482799,0.40387914,-0.40022132,0.06770608,0.36847785,-0.026828244,-0.16214016],[0.037951373,0.24962443,0.020283377,-0.0035552767,0.30666018,0.1413196,-0.38893646,0.35808158,-0.032923326,-0.071178645,-0.048781518,0.5162438,0.4610186,-0.7228655,-0.49375764,-0.21811645,-0.19861159,0.40984872],[0.9250359,-0.70112437,-0.36471853,0.0054842713,-0.09402759,0.082544014,0.30093822,0.16678151,-0.2748682,0.18376616,0.04107111,-0.25604424,0.42679307,-0.053103805,0.16130999,-0.40664944,-0.032497868,0.13323294]],"activation":"σ"},{"dense_2_W":[[-0.90112615,-0.4810132,-0.08950426,0.36772704,0.4500673,0.052173443,-0.77481836],[-0.3288408,-0.36183703,0.39837834,-0.19830135,-0.0052449205,-0.4256783,-0.3807343],[0.15238899,-0.52871466,-0.98836666,-0.46207833,-0.9737017,-0.7437858,0.3818713],[-1.0859724,-0.48526433,0.24535194,0.05596006,0.093554944,0.21621844,-0.53195745],[-0.7163611,-0.30886292,0.12716919,-0.4154194,0.37423986,0.9259443,-0.379039],[0.19235164,-0.15816337,-0.017028,0.31888407,-0.28815588,-0.8377302,0.39304262],[0.47231472,-0.08212948,-0.7769114,-0.7738407,-0.48245203,-0.7427551,-0.27572083],[0.2869671,-0.016490303,-0.70185846,-0.34122148,-0.2529159,-0.1406588,-0.40547752],[0.20577213,0.14548963,-0.52808815,-0.30710357,-0.35618016,0.13128263,0.33525097],[-0.17195134,0.3418375,0.095633924,-0.17584541,0.12383485,-0.8438437,-0.021029431],[-1.5742979,-1.0980865,0.13949709,1.2328507,0.30790532,-0.25942948,-1.8909296],[-0.11482437,-0.42623624,-0.34017542,0.49576285,-0.00045646817,0.61140454,-0.84245527],[0.03065336,-0.3165987,0.31627032,0.23499563,-0.5419005,-0.6005879,-0.44092956]],"activation":"σ","dense_2_b":[[-0.06588],[-0.24751721],[-0.036043685],[-0.08081857],[0.042379994],[-0.12687257],[-0.1196205],[-0.103857085],[-0.11169459],[-0.13132711],[-0.12644218],[-0.14405167],[-0.09716702]]},{"dense_3_W":[[-0.25552472,0.4888721,0.66748166,-0.059414074,-0.47127432,0.0070313723,0.562616,0.4663864,-0.12562452,0.27339113,0.011626089,-0.3627435,-0.31609577],[0.31728745,-0.048127633,0.3010577,-0.029504294,-0.633934,0.2603854,0.015562987,0.09305088,0.3503609,-0.30416068,-0.382153,-0.5815462,0.3423376],[0.512647,0.6342511,-0.7857153,0.26010734,-0.111801334,-0.24562247,0.19410154,-0.17319192,-0.4143214,-0.04857833,0.5264786,-0.41035476,-0.4759939]],"activation":"identity","dense_3_b":[[-0.053302422],[-0.044913977],[0.05779919]]},{"dense_4_W":[[-1.0770125,-0.37417558,0.8556539]],"dense_4_b":[[0.050846685]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json deleted file mode 100644 index 9b5b6ebd42..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.083802],[1.4611669],[0.43209597],[0.045783427],[1.4580129],[1.4600974],[1.4606811],[1.4370847],[1.4046228],[1.3548353],[1.301345],[0.045653045],[0.045695912],[0.04572814],[0.0456723],[0.04552948],[0.045236606],[0.044802427]],"model_test_loss":0.010045606642961502,"input_size":18,"current_date_and_time":"2023-08-07_10-17-58","input_mean":[[24.140347],[-0.040326927],[-0.00495007],[-0.01144458],[-0.037586022],[-0.039033934],[-0.04007914],[-0.040745206],[-0.039911933],[-0.037505746],[-0.035948202],[-0.011471909],[-0.011470749],[-0.011468973],[-0.011477571],[-0.011519244],[-0.0115342615],[-0.011574338]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.0585553],[-0.8787027],[0.06662454],[2.4645643],[0.2145419],[0.14631574],[-0.0031928595]],"dense_1_W":[[0.01278659,-0.639175,-3.9059505,-0.26950234,0.48975742,0.053148586,0.06006899,-0.15871193,-0.35619113,-0.3069537,0.6460098,-0.3795686,-0.14707989,0.10753279,0.589496,0.054787833,0.26607925,-0.27329552],[-0.31426805,0.29352117,0.30446848,0.17738476,0.021804355,0.49185294,0.05479423,0.1745057,-0.0944745,0.35397518,0.3583849,0.06355244,0.3294988,-0.7301665,-0.1879947,-0.0022402736,0.104507774,-0.21638979],[-0.010307992,0.7934238,-0.0006794772,-0.1334464,0.02091189,0.47137254,-0.6551125,0.066525705,0.3651862,-0.07319468,-0.10373536,0.33364198,-0.039477788,-0.1740325,-0.17714831,-0.15961868,-0.0405952,0.074915186],[0.5847928,0.619816,0.4203029,-0.21235059,0.4265746,-0.1263166,0.009960476,0.11006678,0.6733238,0.42611405,0.19867067,0.45256436,-0.13085747,-0.36200306,-0.3105818,0.34042296,-0.31901485,-0.08410049],[-0.024490528,-0.65694225,4.6159083e-5,0.59398013,-0.025485305,-0.018133782,0.0042006616,0.10598254,-0.33271274,0.27812153,-0.08935339,-0.0016619482,-0.54040617,-0.14387926,0.5431834,-0.19388175,-0.13796277,0.058109537],[0.41040012,0.4720514,-0.542709,0.27897146,-0.21233134,-0.26147744,-0.7639464,-0.7849991,-0.8057104,-0.53855383,-0.26171803,-0.01974412,0.539449,-0.3167468,-0.058017753,0.100660756,-0.02376293,0.39652997],[0.0073618917,-0.6812269,0.00047164486,0.19503322,0.21642539,-0.3812711,0.54097396,-0.4161706,-0.13814282,-0.42284945,0.37063465,-0.22952643,-0.52888757,0.5929762,-0.282835,0.19850107,0.20221026,-0.1419231]],"activation":"σ"},{"dense_2_W":[[-0.34819424,0.13951385,1.2464662,0.28751788,-0.5187095,0.6976768,-0.62041533],[-0.41341007,0.2805276,0.6287094,0.6696396,-0.54532576,0.7615568,-0.6390846],[0.17430355,-0.57738274,-0.6883198,-0.18806155,0.3362078,-0.27881357,0.2574153],[0.34108973,0.22211717,0.459976,0.35180148,-0.33524066,-0.2489619,-0.8272582],[0.23007147,0.0818965,-0.6714039,-0.55786407,0.43846977,-0.3866686,-0.31287605],[-0.21214552,-0.6325544,0.042784553,-0.73854697,-0.072142266,-0.20286769,-0.17739548],[0.12742646,0.17059988,-0.30783626,-0.62666696,-0.36179522,-0.23354167,0.48441237],[0.070377834,-0.16169746,-0.01426584,-0.12767823,-0.36949772,-0.79047674,-0.5630477],[-0.3562291,0.82187784,0.6215501,0.7167505,-0.062617205,0.5100963,-0.31727344],[0.53031796,-0.74287415,-0.583841,0.35455438,0.5706749,0.34090075,0.40166008],[-0.041094325,-0.7450218,-0.34826657,-0.27569434,0.28963897,-0.6791988,0.4819029],[-0.45388228,0.8081112,0.19463012,-0.20301336,-0.8971776,0.51671964,-0.79728514],[-0.19061111,-0.41954494,-0.61557233,0.033694874,-0.4513763,-0.046573047,0.36615795]],"activation":"σ","dense_2_b":[[-0.05189404],[0.11612667],[0.03374365],[-0.09175077],[-0.118053235],[-0.009669963],[-0.24390511],[-0.42936447],[-0.13871671],[0.105076954],[0.060429294],[-0.08152692],[-0.32616025]]},{"dense_3_W":[[-0.5707046,0.15472998,0.32784146,-0.52660066,0.3508428,0.2326405,-0.12091264,-0.36666492,-0.16838528,0.60772735,0.5778285,-0.024338374,-0.4535548],[-0.18583268,0.4316364,-0.614212,0.296555,0.21492256,0.09027471,-0.22776076,-0.28093025,0.4677053,-0.2794905,-0.16121306,0.5220755,-0.49487323],[0.6430829,0.38659704,-0.25451958,0.014723727,0.23223996,-0.39363125,-0.48956293,-0.40315047,0.6391995,-0.611482,-0.321689,-0.52045226,-0.2960742]],"activation":"identity","dense_3_b":[[0.030546237],[-0.03303123],[-0.0085044755]]},{"dense_4_W":[[-1.0266056,1.0412261,0.11489299]],"dense_4_b":[[-0.03331707]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json deleted file mode 100644 index f24dc4e6d1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.17877],[1.560403],[0.55696404],[0.04819407],[1.5485493],[1.551602],[1.5542839],[1.5297074],[1.4964435],[1.447148],[1.3966106],[0.047890175],[0.04795589],[0.04801992],[0.048169263],[0.04813858],[0.04792505],[0.047557294]],"model_test_loss":0.008605924434959888,"input_size":18,"current_date_and_time":"2023-08-07_13-18-55","input_mean":[[23.527355],[-0.09660584],[0.002421769],[-0.007888363],[-0.09495723],[-0.09453526],[-0.09517964],[-0.092055276],[-0.089080565],[-0.08710217],[-0.08428994],[-0.0079021575],[-0.007904708],[-0.007907821],[-0.007890973],[-0.007831142],[-0.007820599],[-0.0077761114]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.4574037],[-0.31610072],[0.06254806],[0.1658765],[-0.04939922],[-0.04379439],[-2.3606904]],"dense_1_W":[[0.4884821,0.4447991,0.27062133,0.29461905,-0.15870245,1.0499299,-0.67113316,0.14727078,0.46701437,-0.11520939,0.27191386,0.25705224,0.20442817,-0.5996387,-0.11848767,-0.22629784,0.10268118,-0.05196918],[-0.94526833,-0.06731887,0.36105722,-0.06478468,0.7274551,-0.787373,1.067588,-0.11700762,-0.18113732,-0.009122022,0.6951359,0.121739894,-0.31221318,0.43686992,0.19358343,-0.60511017,0.31918147,-0.16998838],[-0.0064108563,-1.0363407,-0.3657711,-0.03648839,0.25623804,-1.0107207,0.5950102,0.13701187,-0.03058584,-0.09836868,-0.47335115,-0.19476067,-0.25847888,0.24020503,0.27251944,-0.16899313,-0.10614574,0.20120943],[0.99380904,-0.13568194,0.37884694,0.2061394,0.25694898,-0.39774755,1.0660007,0.098927006,-0.11071541,-0.06035235,0.6582728,-0.1862874,-0.36728743,0.686768,-0.007125964,-0.43512365,0.21848302,-0.19364962],[-0.013903772,1.6984495,6.334462,-0.24601908,-0.88126016,-0.07609073,-0.6559659,0.5171736,1.2477276,0.13804865,-1.6805384,0.5297336,0.50917196,-0.35361633,-0.43783256,-0.16315787,0.09916458,0.19899222],[0.0027724826,-0.266893,0.009900119,0.1370816,-0.14222518,-0.7747496,0.40045345,-0.1508628,0.31491798,-0.11310718,-0.10476674,-0.5071864,0.27966213,0.071040496,0.17133062,0.3316448,-0.09659847,-0.028956251],[-0.46976677,0.2529768,0.2631776,0.29406658,-0.014786802,0.54289156,-0.2263323,0.34719956,0.24145603,-0.02186343,0.2373878,-0.0400574,0.016907027,0.0852952,-0.45880318,0.07774477,-0.08953317,-0.009223345]],"activation":"σ"},{"dense_2_W":[[0.06098307,-0.40966874,-0.17987315,-0.40513036,0.27261987,0.08310855,-0.5536096],[-0.691275,0.35682058,0.36383852,0.5730693,-0.25348198,0.5048341,-0.5584882],[-0.62200207,0.34269363,-0.37620154,0.39508444,-0.18625513,0.5273465,0.15910348],[-0.66713977,0.52275723,0.2329843,-0.39003682,-0.68911934,0.54985297,-0.1009992],[-0.6867374,-0.17710596,0.25754964,0.4175933,0.13662146,0.6200632,-0.7861373],[-0.09777525,-0.32259175,-0.6726679,-0.5632263,0.38548172,-0.78029376,0.8176162],[-0.7648048,0.50501686,0.48810425,-0.30770826,-0.13032949,-0.21508694,-0.5890472],[-0.21938957,-0.20063238,0.5301691,0.3849949,-0.2938749,0.58915985,-0.40684512],[0.09535999,-0.3482573,-0.028670665,-0.2520647,-0.18944943,-0.30540437,0.45314667],[-0.2825183,-0.18183878,0.43335834,-0.44332805,-0.14940064,0.075128734,-0.1811318],[0.29664114,-0.030906495,-0.37812403,-0.046466183,0.101335004,-0.53401035,0.79996306],[0.9250361,-0.67517155,-0.52387106,-0.2634134,-0.20555083,-0.812342,0.7927995],[0.22187099,-0.4586634,0.14067167,0.16797097,-0.51517123,-0.25366476,-0.0075834477]],"activation":"σ","dense_2_b":[[-0.16339622],[-0.06992213],[-0.14530285],[-0.21909085],[-0.18955792],[-0.123597145],[-0.114407286],[-0.06403072],[0.07467113],[-0.11460133],[-0.014573581],[0.15221187],[-0.2008074]]},{"dense_3_W":[[0.079248965,0.63441527,-0.037408806,0.5250491,0.1454134,0.033214454,-0.07036471,0.56555814,-0.26066884,-0.18814188,-0.19420856,-0.33199486,-0.17070732],[0.48755273,0.5925755,-0.089609005,0.2881994,0.09301222,-0.36505923,0.11187905,-0.18813112,-0.4484195,0.45447895,-0.46645686,-0.48254833,-0.48081368],[0.28768483,-0.50610393,-0.3329078,0.1855142,-0.32382408,0.25712836,-0.3997252,-0.4541148,0.69257694,-0.36352545,0.36789265,0.8448238,-0.36968893]],"activation":"identity","dense_3_b":[[-0.099045075],[-0.08617516],[0.0972388]]},{"dense_4_W":[[-0.9874007,-0.54182595,0.95884216]],"dense_4_b":[[0.09515336]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json deleted file mode 100644 index b80f8eb8d1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.994212],[1.3245196],[0.5245797],[0.042956702],[1.3203417],[1.3217984],[1.3220408],[1.2944245],[1.2665168],[1.2200946],[1.1748925],[0.0428153],[0.042849746],[0.042877868],[0.04289658],[0.042825807],[0.042584144],[0.042231884]],"model_test_loss":0.006699905265122652,"input_size":18,"current_date_and_time":"2023-08-07_15-02-41","input_mean":[[22.833767],[-0.0403752],[-0.023062065],[-0.003915003],[-0.03835354],[-0.039629113],[-0.04148385],[-0.050812945],[-0.058392923],[-0.07008045],[-0.08093289],[-0.0039168606],[-0.0039327657],[-0.0039458815],[-0.0040258327],[-0.0041203275],[-0.00426424],[-0.00439325]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.21267962],[-0.02729046],[-3.876878],[3.758936],[-0.094889574],[0.84803456],[1.0655135]],"dense_1_W":[[-0.01582406,1.491969,3.253744,-0.10518171,-0.19385417,0.78610295,-0.92538196,-0.33224037,0.3013307,-0.6688703,-0.19887793,0.114433184,0.15138905,-0.37872663,-0.26882437,0.53041375,0.5000704,-0.46208212],[0.0022284745,-0.44302207,0.0046756687,0.4405551,0.3678904,-1.3237227,0.94849795,-0.21979533,-0.354195,0.04168792,0.10481886,-0.14313328,0.09221937,0.62079024,-0.31655258,0.08006394,0.224768,-0.34386438],[-1.6695492,1.084495,0.12782213,-0.2916347,0.4173779,-0.012464437,-1.415515,0.46309748,0.14367689,-0.09085289,0.21108763,0.52149534,0.0030927972,-0.7394647,0.32236108,0.4132776,-0.08725703,-0.32379115],[1.7204846,0.99877,0.12921184,-0.5962452,0.11488813,0.7996907,-1.9083629,0.73996365,0.0138976555,-0.3083528,0.36691102,0.6522089,-0.30455202,-0.33463576,0.26659817,0.8397864,-0.53790885,-0.17022859],[0.01408686,0.30261004,0.021707801,-0.11919521,-0.11240657,1.2420307,-0.90936786,-0.13186933,-0.0830583,0.39522758,-0.15010051,0.67393625,0.37087741,-0.2007352,-0.70529145,-0.46263382,0.12367665,0.1901094],[0.22501494,1.2126215,-0.04891412,0.11348339,0.10659557,1.1126171,-0.6577273,0.0517829,0.034891758,0.16096263,0.016899597,0.53799254,0.19248869,-0.099386215,-0.24717341,0.1219544,0.1654292,-0.6051804],[0.29689962,-1.252187,0.051804602,0.028222922,-0.63980806,-0.693479,0.9105569,-0.05222635,-0.4362798,0.45733297,-0.29413572,-0.5301683,-0.6064637,0.42068645,-0.02681922,-0.020214137,0.22010683,0.34188196]],"activation":"σ"},{"dense_2_W":[[-0.6086301,0.2085108,0.37262338,-0.9238916,-0.39440706,-0.531614,-0.13330653],[0.3900694,0.25841695,-0.506336,-0.87635046,-0.23827943,-0.22281836,0.14377734],[0.39564994,-0.52945167,0.4045585,-0.22950102,0.66113174,-0.55567765,-0.7538522],[0.1472609,0.4034027,-0.39680183,-0.01948131,-0.06318282,-0.40607718,0.54647887],[0.40735146,-0.76506615,0.15106998,-0.04639545,0.2356493,0.34029764,0.58116305],[0.17658016,-0.48829883,0.8479261,0.103093006,-0.085700735,-0.05685383,0.12873933],[-0.58091015,-0.36427772,-0.119214594,-0.15918592,-0.77523655,-0.78004694,0.03406656],[0.42519712,-0.15369514,0.0024256515,0.7537345,0.12914199,-0.19718027,0.2781377],[0.38494098,-0.8098266,1.6810417,-0.4136923,-0.33961916,0.15786585,-1.5184373],[0.19256154,0.4130768,-0.31395087,-0.5005648,-0.51987,-0.34723067,-0.081991576],[-0.49874434,-0.6762422,-0.09994346,0.09899775,0.06528094,-0.75826293,-0.5126717],[-0.35837945,0.36765984,0.8528636,-0.3219268,0.03151658,0.19896397,0.34016657],[-0.20404705,0.35541695,0.0011049275,-0.0022879532,-0.64204615,-0.5036561,-0.035362314]],"activation":"σ","dense_2_b":[[0.036364183],[-0.00221331],[-0.117371835],[-0.097624525],[0.009239539],[-0.091520816],[-0.23231187],[-0.016982464],[-0.54738104],[0.04596814],[-0.24534227],[-0.005133318],[-0.022278212]]},{"dense_3_W":[[-0.6959402,0.31169927,0.53220147,0.19400354,-0.31628206,0.26289627,0.32454082,0.41816694,-0.31043547,-0.67317456,0.65171415,-0.30771238,0.09026865],[0.38488102,0.31554824,-0.70509696,0.3893292,-0.10749988,-0.40098265,0.18507135,-0.11758874,-0.0043080114,0.6012859,0.25160068,-0.42651844,0.48249626],[0.7162551,0.64301497,-0.36417845,-0.037450142,-0.45597866,0.15023938,-0.0077365125,0.0701791,-0.71762145,0.18638995,0.018750757,0.14510971,0.41565806]],"activation":"identity","dense_3_b":[[0.030530091],[-0.0479702],[-0.053273804]]},{"dense_4_W":[[0.5025325,-1.0537963,-0.85901815]],"dense_4_b":[[0.04645968]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json deleted file mode 100644 index d119379782..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.261341],[1.0799276],[0.47439072],[0.035921823],[1.0769413],[1.0782329],[1.078946],[1.0603385],[1.0393461],[1.0079743],[0.97282183],[0.03575561],[0.03581589],[0.03587639],[0.035916228],[0.03587763],[0.03574848],[0.03554262]],"model_test_loss":0.00492028146982193,"input_size":18,"current_date_and_time":"2023-08-07_15-53-19","input_mean":[[21.97073],[-0.029600525],[0.0032512692],[0.0019785082],[-0.031247197],[-0.030642778],[-0.030970285],[-0.027264683],[-0.02531458],[-0.023465578],[-0.022579186],[0.001951127],[0.0019527602],[0.0019488906],[0.001962819],[0.001987138],[0.0018675312],[0.0017249424]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.245048],[3.3935277],[-0.15662995],[-0.014851185],[-0.09243428],[-0.004402729],[0.0380219]],"dense_1_W":[[-0.5481877,-1.1734215,-0.45120606,0.034027565,-0.12534843,-0.4320663,0.08604743,0.20808327,-0.46957174,-0.24812324,0.19450486,-0.2840027,-0.29063642,0.8850254,0.1337479,0.12512524,-0.11077451,-0.10846867],[0.55359775,-0.78132075,-0.45535302,0.04589877,-0.23332703,-0.6900583,0.27111268,-0.2906912,-0.26810634,-0.0014484213,0.012803484,-0.4214593,0.14392284,0.39275578,0.4591555,0.20790677,-0.47720864,0.03637555],[-0.001160366,0.07135902,0.020283442,-0.11026379,-0.3300407,1.1425788,-0.8465417,-0.14491843,0.10389491,-0.094203144,0.08786806,0.58249265,-0.31260887,-0.24686775,0.25243184,-0.12136195,-0.14665185,0.10891337],[0.00075157254,0.018735576,-0.015033022,0.2552897,-0.07354839,0.36636823,-0.5266892,0.12183493,0.06295568,0.08566852,-0.0952725,0.33919626,0.36296552,-0.376174,-0.39300168,0.07231392,-0.20756865,-0.050174374],[-0.000663185,0.6687934,-0.021183483,-0.20696321,0.28176227,0.8060634,-0.5820421,-0.17129976,-0.0828522,0.009332605,0.15914959,0.06899979,-0.071527235,-0.21463287,0.2533481,0.31726366,-0.07277975,-0.18115173],[0.0028130943,-1.0741395,-3.5949726,-0.08878999,0.21987598,0.103467554,0.6372202,0.32599628,-0.5349482,-0.4875307,0.49166214,-0.50000715,0.108137466,0.38457507,0.040603124,0.52961135,-0.122126095,-0.14863239],[0.0012397681,-0.8501431,0.004625623,0.39065698,0.3043851,-0.7930684,0.51580155,-0.047317076,-0.22162919,0.1124854,0.017583156,-0.33733293,-0.13366492,0.6077388,0.29493827,0.16720308,-0.41922003,-0.117570505]],"activation":"σ"},{"dense_2_W":[[-0.05502436,-0.66888684,0.065067135,0.53669417,-0.01893934,0.36197692,0.01791807],[0.59498864,0.6528727,-0.38318837,-0.45497322,-0.08562961,-0.31445232,0.69590557],[-0.41835263,0.04931508,0.0073655155,0.6559025,0.22435378,-0.42106333,0.13407917],[0.29046017,-0.09791975,-0.41265818,-0.49019828,-0.6872615,-0.26517653,-0.3567036],[0.13606516,0.44112694,-0.57032704,-0.13413966,0.0034367347,0.24891582,0.16898009],[0.011530882,-0.15070426,-0.46052173,0.5160092,-0.38340572,0.1328647,-0.18670098],[0.3382954,-0.22624794,0.028343266,-0.62450606,-0.059560556,-0.16521035,0.595776],[-0.5985326,-0.5175321,0.53653544,0.20450565,-0.12380274,-0.101402126,0.21046633],[-0.10918766,0.7896873,-0.6037477,-0.021383286,-0.36211497,0.5407418,0.30803818],[-0.38357767,0.13743253,0.5462274,0.33449608,0.58031,-0.44345102,-0.26854265],[0.5908161,-0.21907422,0.20983866,-0.4897011,-0.59968626,-0.065551214,0.5250327],[0.3375154,0.43778437,-0.31592417,-0.13451315,-1.0115412,-0.32253185,0.66413474],[0.09797849,-0.3698204,0.04279515,0.25717175,0.30788177,-0.25584602,0.19880241]],"activation":"σ","dense_2_b":[[0.003746753],[-0.08357698],[0.006304543],[-0.24605891],[-0.07121214],[-0.015032947],[-0.09400678],[-0.0024056516],[-0.010130554],[0.014799146],[-0.060003918],[-0.07540407],[-0.03000076]]},{"dense_3_W":[[0.017942075,-0.6212448,-0.12496728,0.14162916,-0.2248813,0.49471742,0.18174668,0.67305565,-0.181309,0.61732584,-0.27006516,-0.049796086,0.12735644],[0.3594483,-0.31422514,0.66338825,-0.41523233,-0.47088245,-0.28914762,-0.116269276,0.29540908,-0.6357099,0.3832997,-0.06724131,-0.5605163,0.09249603],[0.21089882,-0.26488605,0.433047,0.35239476,0.3053993,0.25026608,-0.4875768,-0.38531804,-0.30042005,0.68175066,-0.5961486,0.07390234,0.31267327]],"activation":"identity","dense_3_b":[[0.02659904],[0.034767646],[0.024563152]]},{"dense_4_W":[[0.6525578,1.0061679,0.50279385]],"dense_4_b":[[0.032301653]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json deleted file mode 100644 index 7e4f989f03..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.9325304],[1.0882362],[0.43774286],[0.04055885],[1.0919278],[1.0913655],[1.0900016],[1.0642537],[1.0437973],[1.014913],[0.9828307],[0.040379256],[0.04041959],[0.040456932],[0.04061512],[0.040622164],[0.040395677],[0.040053483]],"model_test_loss":0.012668303214013577,"input_size":18,"current_date_and_time":"2023-08-07_17-09-24","input_mean":[[22.347511],[-0.10092363],[0.011539685],[-0.024840366],[-0.10495763],[-0.104191564],[-0.103371926],[-0.0960919],[-0.088538796],[-0.081120916],[-0.073905],[-0.024927486],[-0.024909802],[-0.024889572],[-0.024763657],[-0.024654102],[-0.024695622],[-0.02485533]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.777723],[-0.21736239],[0.06858174],[0.028778331],[-0.1341363],[-3.286173],[0.05866324]],"dense_1_W":[[0.9532825,-0.57736486,-0.3511588,0.6824505,-0.024612838,-0.4149641,-0.2517366,-0.38986352,-0.041095104,-0.23648082,-0.22857088,-0.52361864,0.59133035,-0.016187055,-0.30439842,-0.008700108,0.37054965,-0.3851146],[-1.2131011,-0.040348757,-0.030648885,0.07944047,-0.5089448,-0.17325257,-0.35811424,-0.39610377,-0.3414392,0.13268204,0.036754124,0.244627,-0.18363807,-0.29357588,0.14597428,-0.07848809,0.117397904,-0.0066551454],[-0.33372527,-0.8653413,-0.0204796,0.15082183,0.21337464,-1.1272148,0.6884098,0.10593993,-0.21011119,-0.019475536,0.060115736,-0.7099037,-0.3675179,0.98888445,-0.0021350337,-0.0023339558,0.034033813,-0.08632464],[-0.0087699555,0.47234085,-0.003936672,-0.08932229,-0.15217909,0.76968,-0.6072722,0.19957112,-0.1826489,0.28319913,-0.11377978,0.5678719,0.0690483,-0.4572559,-0.256832,-0.19453537,-0.1292364,0.26785675],[-0.20146403,-0.6867957,-0.021399295,-0.09085224,-0.13374451,-0.95356876,0.7412253,-0.0020842238,-0.32998958,0.29012066,-0.12927385,-0.17273527,0.046919394,0.31265458,-0.0067970203,0.049638614,-0.1646258,0.1021922],[-1.0781149,-1.9831505,-0.39170006,0.6552042,0.2507927,-0.7482493,0.69903153,0.11317306,-0.44421217,-0.17660317,-0.19381957,-0.40258512,0.057917267,0.6132898,0.2122239,-0.68616545,-0.016808815,0.009621946],[0.07036603,0.6711271,3.090535,0.5774168,-1.0394694,0.01879839,-0.89210445,0.5525633,1.0586205,0.27921924,-0.4908341,0.3026311,0.51791734,-0.2981133,-0.38711485,-0.3440137,-0.20040374,-0.14860815]],"activation":"σ"},{"dense_2_W":[[0.053376287,-0.27212048,-0.592167,-0.66140467,0.123351865,-0.45312202,-0.5552815],[-0.15174036,0.3456475,-0.72808313,-0.16873683,-0.87532926,-0.19756816,0.010091597],[0.32735926,0.2430751,-0.49615663,0.71439725,-0.11260843,-0.43778282,0.48608312],[0.5652805,-0.25033778,0.47545195,-0.27911112,0.3687969,0.25403744,-0.3056421],[0.4027308,0.06937314,-0.008849847,-0.09499983,0.50666314,-0.021115543,-0.31085667],[0.15451042,0.16761723,0.14800774,0.6163942,-0.77986425,-0.58117247,0.40439337],[-0.52235144,0.37827665,-0.83033717,0.8296531,0.2544118,-0.37235376,-0.1002346],[0.09825943,-0.60037464,0.65948284,-1.2040564,0.6021252,0.091694914,0.21354105],[-0.31508094,0.2741653,-0.7038115,0.279092,-0.13322929,0.11963509,-0.14818548],[0.20600095,-0.076976694,0.21097696,-0.76661587,0.3835434,-0.05707485,0.10319275],[0.62171084,-0.24905708,0.5991603,-0.52393246,0.49378031,-0.1764447,-0.21842895],[-0.20955467,0.22948128,0.26585734,-0.95675725,-0.113945276,0.6225702,-0.500622],[0.16029201,0.49023697,-0.6596639,0.25944898,-0.21170011,-0.20044534,-0.0025964344]],"activation":"σ","dense_2_b":[[-0.2663133],[-0.10525206],[-0.011656664],[-0.15913439],[-0.09004699],[0.038266346],[0.051478483],[-0.2926297],[-0.24159859],[-0.120620705],[-0.11021781],[-0.33539078],[0.00798126]]},{"dense_3_W":[[0.16740364,-0.068965144,-0.3025593,0.50858945,0.5449389,-0.24625476,-0.49794698,0.29956707,-0.30424193,-0.008103076,0.58150756,0.0818273,0.01633671],[0.4533966,-0.42790514,-0.31081665,0.5545747,0.38430354,-0.67824066,-0.5380451,0.05798864,0.105315335,0.27879745,0.52759033,-0.06383929,-0.3282453],[-0.5254706,0.061006207,-0.26732418,-0.028615523,0.17779939,-0.3987639,-0.033597037,0.12323639,0.024477432,0.33606854,0.38722304,0.18485908,-0.4257627]],"activation":"identity","dense_3_b":[[-0.057745293],[-0.045989405],[-0.043302864]]},{"dense_4_W":[[-0.6202967,-0.6532501,-1.0174378]],"dense_4_b":[[0.047135167]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json deleted file mode 100644 index 52798259ad..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.547813],[1.7179168],[0.5423653],[0.04857022],[1.7059441],[1.7113246],[1.7139751],[1.6844511],[1.6431999],[1.577594],[1.5055375],[0.048473638],[0.048486643],[0.04849009],[0.048347536],[0.04814972],[0.047786575],[0.04731983]],"model_test_loss":0.011126813478767872,"input_size":18,"current_date_and_time":"2023-08-07_18-34-15","input_mean":[[22.614845],[-0.00978362],[0.007860732],[-0.004099437],[-0.010468512],[-0.010098754],[-0.009594586],[-0.0049946643],[-0.0015134194],[-0.0018012848],[-0.0024288695],[-0.0041544754],[-0.004141275],[-0.004129192],[-0.004074],[-0.004025116],[-0.0040029683],[-0.003983455]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.4171004],[-0.62944967],[-0.08636822],[-0.30957282],[3.1894078],[-0.18340014],[-4.048277]],"dense_1_W":[[0.7830174,0.40423092,-1.7773811,-0.25229105,0.0003897955,0.2650078,-0.94045377,0.057573486,0.43040198,-0.061492153,-0.42369962,0.2493666,0.35435918,-0.24786355,0.123617865,-0.15768188,-0.4915791,0.41757017],[0.619815,-0.15506315,1.7720731,-0.05022525,0.12061407,-0.23410659,0.26306555,0.18054493,-0.10822319,-0.23154925,0.4427835,-0.40612897,0.44821352,-0.035341486,-0.09733925,0.11400062,0.13623556,-0.1278016],[0.0040937522,0.5835935,1.5735953,0.27356768,-0.47593257,-0.19718215,-0.6375235,0.3991756,0.6010651,0.19663113,-0.2724361,0.35223562,-0.28804272,-0.37892044,0.06845918,0.056847498,-0.23999622,0.14147788],[-0.006181427,-0.23720662,-0.030143317,0.27507725,-0.11148783,-0.670752,0.1579785,0.26442546,0.11085281,0.24239433,-0.30806103,-0.5314182,-0.1411616,0.34547827,-0.0067492607,0.2582582,-0.13836917,-0.059036173],[1.3838778,-0.8232643,-0.65903485,-0.20286232,0.07595782,-0.2975871,-0.2668319,-0.03744175,0.113510124,-0.17166083,-0.08313555,-0.19053335,0.22615202,0.099687,0.11709183,-0.06939885,-0.0069061257,0.02360228],[-0.00030964141,-0.59983134,0.0024205807,0.29467705,0.14591737,-0.8452132,0.028352631,-0.06797188,0.13422364,-0.06122122,-0.033911128,-0.19677748,0.21639399,-0.129354,0.3151945,0.010129442,-0.27215233,0.23129506],[-1.5945044,-1.5621332,-0.7602714,-0.025857054,0.28057814,-0.49442625,0.22269996,0.06870841,-0.066471085,-0.1829744,-0.0109900115,-0.2925939,0.13089584,0.2586905,0.021742465,0.0035556427,-0.2523545,0.15750822]],"activation":"σ"},{"dense_2_W":[[0.38898003,0.28459147,-0.022235557,-0.05588795,-0.4079201,0.78092706,0.0055714543],[0.5199289,0.07141404,0.5414507,-0.5915534,-0.39409125,-1.0397701,0.052241296],[0.32463577,-0.49717766,0.90691876,-0.9024069,-0.0049516293,-0.23521297,-0.2842837],[0.06779803,-0.5377125,0.3489072,-0.6589233,0.59720504,-0.8664128,-0.46240392],[1.0705944,0.28698796,0.16739848,-1.4102764,-0.45103022,-1.1245655,0.02443754],[0.20335038,-0.35550895,-0.22385399,0.29430118,0.056962594,-0.32889187,0.2766028],[0.37825814,0.045224834,0.40632764,-0.71752423,-0.84244126,-0.29024214,-0.3171733],[-0.056005202,-0.73517215,-0.0016302611,-0.08258613,0.13173106,-0.25985387,-0.45403552],[0.31348822,0.22809805,-1.1925565,0.73849887,-0.015525387,0.27415907,-0.16705036],[-0.16721253,-0.42491084,-0.8744839,0.090021685,-0.09710444,0.04399626,0.08195919],[-0.4590442,-0.86837125,0.76154727,-0.09060192,-0.8167061,0.3736612,-0.8130611],[-0.59112096,0.09216977,-0.76166147,0.9278373,0.43625265,0.93052894,-0.07700069],[0.3458094,0.1986897,-0.7627924,0.16227825,0.63287425,0.23208074,0.6148371]],"activation":"σ","dense_2_b":[[-0.0482577],[-0.09234584],[-0.016399158],[0.12226299],[-0.018181449],[-0.35545182],[0.050414644],[-0.07713505],[-0.27168283],[-0.026214477],[-0.14412741],[-0.08454545],[-0.15548146]]},{"dense_3_W":[[-0.24532248,0.086403646,0.0035677804,-0.446846,0.3286197,-0.5002942,-0.36754543,-0.36412755,-0.3422447,0.5864908,-0.3555824,0.17768645,-0.16735056],[0.49285188,-0.5364999,-0.5982645,-0.60457116,-0.70168245,0.33897352,-0.5752503,-0.2724616,0.47930852,0.15553074,-0.31801456,0.7717742,0.6475729],[-0.54743356,-0.096405074,0.30723238,-0.14468278,0.25325117,-0.2991242,-0.32472578,-0.60785806,0.34220627,0.09930043,0.24098735,0.21893239,0.34784108]],"activation":"identity","dense_3_b":[[0.06423375],[0.04319534],[0.0022975653]]},{"dense_4_W":[[-0.5658915,-1.2441922,0.0075046057]],"dense_4_b":[[-0.047028013]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json deleted file mode 100644 index e97167c484..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.904712],[1.4085329],[0.50820595],[0.046452872],[1.4017634],[1.4044306],[1.4055834],[1.3812906],[1.3511641],[1.3032484],[1.2478882],[0.046305403],[0.046340212],[0.04636982],[0.046317764],[0.04617617],[0.04582262],[0.045322053]],"model_test_loss":0.011622299440205097,"input_size":18,"current_date_and_time":"2023-08-08_00-09-02","input_mean":[[22.673122],[-0.031736072],[0.007969155],[-0.013558],[-0.032557942],[-0.03305167],[-0.03298927],[-0.029548688],[-0.026128702],[-0.023727983],[-0.020936318],[-0.013552669],[-0.013538184],[-0.013526184],[-0.013537751],[-0.013667655],[-0.013909288],[-0.01411971]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.9472544],[0.09100576],[0.07340574],[-0.6315094],[0.37090293],[0.18976328],[0.4189057]],"dense_1_W":[[-1.1817962,-1.553194,-2.9592962,0.64605,-0.7203815,-0.5482526,0.50757265,-0.721568,0.14788827,0.30028212,0.4398359,-0.5897631,-0.26421258,0.034407478,0.30330506,-0.15496844,0.25997123,-0.3066445],[0.058786348,-0.27546605,-2.8685112,0.26771522,-0.43513617,-0.2600268,0.58820564,-0.14542523,-0.08567567,-0.52094615,0.84956247,-0.0930839,-0.32848006,0.10680902,0.17591019,0.016146999,0.2344313,-0.24816336],[1.6007652,0.028163971,0.000641371,0.76986766,0.43884957,0.1650065,0.0068902513,0.05802695,0.027824534,-0.017033007,0.13403726,-0.42092884,0.06564483,-0.19293658,0.15149602,0.0152002005,0.4810689,-0.48326603],[-0.14626782,0.044463154,-0.030598573,0.09514202,0.029573362,0.5215925,-0.16921219,0.23771454,0.0925813,-0.22268316,0.1525121,-0.07805162,0.46790215,-0.34623843,-0.29796118,0.07368295,0.159104,-0.07751048],[1.5266113,-1.0623161,-0.0036699253,-0.033174455,0.05534692,0.58918065,-0.18993984,-0.4061732,0.1180316,-0.041908402,0.08485711,0.029580023,-0.2831808,-0.1555281,0.526601,-0.2898042,-0.45805973,0.31297514],[0.14919099,-0.9022488,-0.018481275,0.131622,0.17497712,-0.34224376,0.34405345,0.17506301,0.03541973,-0.12935044,0.048721306,-0.4446497,0.15578839,0.30417204,-0.111914314,-0.121121965,0.0929509,-0.017727112],[0.3040071,0.5304203,-0.0030280105,-0.020691369,-0.32636136,0.48215166,-0.24673954,0.032341566,0.1636895,0.13916636,-0.15661035,0.5669737,0.18278182,-0.6610388,-0.009479835,-0.2828995,0.15746541,0.07788113]],"activation":"σ"},{"dense_2_W":[[-0.34190053,-0.17745249,-0.15337539,0.27886426,0.69785804,-0.56094927,0.87852126],[0.4731782,0.33899984,-0.32553697,-0.5920245,-1.1791692,0.35757312,-1.2558827],[-0.17805865,-0.21635677,-0.082375415,0.42723528,0.44513035,-0.8980545,-0.15309213],[0.33529067,-0.05726452,-0.480721,-0.7930404,-0.69926023,0.8291907,-1.0018113],[-0.103077516,-1.2176032,-1.2135342,-0.18128513,-0.8239158,-1.0818433,0.37739542],[-0.016627673,-0.21135633,-0.07407072,-0.7603306,-0.2276791,1.0221021,-0.37553006],[0.31585032,0.14014794,0.72860646,0.022745533,-0.023529714,1.016683,0.16218413],[0.41354743,-0.30034938,-0.683525,0.302346,-0.41821057,-0.86687744,0.6552664],[0.1185467,-0.7869525,-0.43301994,0.2526739,-0.794169,-1.1868601,-0.19882572],[0.1250559,-0.57725024,-0.9392709,0.31270868,-0.6713074,-1.3244504,0.6004076],[-0.32635778,-0.025522923,-0.15778969,-0.76357174,-0.83400786,1.0821341,-0.69009364],[-0.18017006,0.31208438,0.18055223,0.13536966,0.37867144,-0.9807895,0.6815438],[-0.013808813,0.16385165,-0.34636796,0.37806544,-0.3967438,-0.69719434,0.17996557]],"activation":"σ","dense_2_b":[[0.067470364],[-0.26331186],[0.06993582],[-0.23382637],[-0.06892213],[-0.10123643],[-0.044926178],[-0.05964296],[-0.045392096],[-0.04618724],[0.16808233],[-0.003218339],[-0.07415678]]},{"dense_3_W":[[0.11602406,0.73329675,-0.17197938,0.64163977,-0.71038646,0.8112198,0.2608411,-0.6153334,-0.26859817,-0.67736506,0.33450362,-0.5620311,0.19605356],[-0.59497255,0.628338,0.24506254,0.019271871,-0.5683355,0.58888596,-0.36362818,0.41652063,-0.003895321,-0.26925486,-0.1982826,-0.32602772,0.5407099],[-0.57255495,0.2139631,-0.28807914,0.01145839,0.31905892,-0.15611991,0.47299016,-0.6717293,-0.11661602,0.32700828,0.41476637,0.13788031,-0.49381214]],"activation":"identity","dense_3_b":[[-0.023692269],[0.0855048],[-0.01574187]]},{"dense_4_W":[[-1.4620413,-0.09824631,-0.97454345]],"dense_4_b":[[0.0232099]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json deleted file mode 100644 index 971897d6f7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.697617],[1.0609225],[0.4379445],[0.037631202],[1.0623844],[1.0616655],[1.0594143],[1.0256116],[0.99824595],[0.9636123],[0.927896],[0.037490875],[0.037519626],[0.03754297],[0.03749497],[0.037434172],[0.03738278],[0.03713714]],"model_test_loss":0.015784617513418198,"input_size":18,"current_date_and_time":"2023-08-07_17-59-15","input_mean":[[22.772198],[-0.015615957],[-0.00096197607],[-0.0010119482],[-0.010546596],[-0.010836963],[-0.011236375],[-0.011094289],[-0.012648121],[-0.013635343],[-0.017397134],[-0.0010358563],[-0.0010145861],[-0.0010011211],[-0.0010085123],[-0.0010529933],[-0.00111335],[-0.001285189]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.7229438],[-3.3683147],[-0.1282507],[-0.31550232],[-0.058664136],[-0.95240706],[-1.0986025]],"dense_1_W":[[-0.7789607,1.9123646,0.39085448,-0.76762176,0.14567389,0.8066052,-0.43277985,0.2297818,0.42394215,0.33902678,0.07674288,0.46162274,-0.30707216,-0.25233504,0.19915079,-0.3460779,-0.054854672,0.1426618],[-0.7302568,-1.7004513,-0.37651184,0.7811046,-0.6319955,-0.51594245,0.55498344,-0.18935819,-0.5285875,-0.24025975,-0.1379504,-0.2577349,0.15419608,0.12393667,-0.11645755,0.28632703,0.012518243,-0.093591586],[0.6120753,-0.042914443,-0.0007887555,-0.42378148,-0.44867167,-0.70841163,0.7576831,-0.0939431,0.27074918,0.111739814,-0.2615336,-0.97394973,-0.07050334,0.9536129,0.39760146,0.11356349,0.23691247,0.0036621983],[-0.012153974,2.5360656,3.6491127,-0.46920162,-1.7772331,-0.7169024,-1.3301034,-1.1953633,2.5687883,1.1499572,-0.9038787,0.6629773,0.34683412,-0.42444223,-0.25739744,-0.3469017,0.056961935,0.29270503],[0.017274002,0.5840407,-0.0023877379,-1.808923,0.3084969,1.3571715,-0.58538103,-0.2375718,0.09313133,0.6554645,-0.18251002,0.42035452,0.1955895,0.31606016,0.75343394,-0.13268644,0.11386261,-0.08166157],[-0.6063996,-0.5005416,-0.00912951,0.44437352,0.36323333,0.11949726,1.0753121,-0.31381848,-0.58282745,-0.09158226,0.44612095,-0.02124081,0.3982341,0.28105518,-0.5664151,-0.72633684,-0.068839945,-0.013206231],[0.8306485,0.08912472,-0.0052987277,0.64255923,0.7617923,0.7024269,-0.8749369,-0.058627207,-0.20296139,-0.30535534,0.43017447,0.85471725,-0.12971222,-0.4191892,-0.5445941,-0.6685368,0.036711175,-0.07217302]],"activation":"σ"},{"dense_2_W":[[-1.0357116,0.9065824,0.31460804,0.10403336,-0.74875206,0.45047748,-0.85107225],[-0.31625268,-0.4494891,-0.6104021,-1.392215,0.4076329,0.14704718,-1.4530859],[-0.42341897,-0.4814765,0.14645709,-0.46671197,-0.3856185,-0.13905132,-0.04437501],[-0.39645517,0.2137238,-0.42819747,-0.36393335,-0.40245435,-0.34181696,-0.02817246],[0.53853995,-0.4282784,0.22716291,-0.40256846,0.638609,0.15241797,0.37022516],[1.1081164,1.7182009,-0.90255654,-2.231287,-0.1349012,1.1165563,-1.5446924],[-0.5763982,-0.065446824,0.4192874,0.2743847,-0.90122163,0.02639325,-0.13482374],[-0.7385771,0.08592593,0.8796296,-0.23078102,-0.24460639,0.50752836,-0.08413138],[-0.10253753,-0.17410895,-0.73427474,0.27838975,0.50574356,0.08523981,0.3418018],[0.0016925063,-0.5907013,-0.85067403,0.30883756,0.4896555,0.11207346,-0.16476792],[-0.15516539,0.26878807,0.57642984,-0.83853066,-0.33322036,0.4774422,-0.9348281],[0.4693064,0.1862027,-0.6251714,0.25223947,0.41830084,-0.44884276,0.2828574],[0.10416213,-0.36627316,-0.822629,0.20704469,0.16795447,0.081779845,-0.4003506]],"activation":"σ","dense_2_b":[[0.20383972],[-0.31411672],[-0.22941822],[-0.028190762],[-0.031698458],[-0.6003632],[-0.15707792],[0.10450507],[-0.06457617],[-0.12753844],[-0.05697597],[-0.10512635],[-0.03311049]]},{"dense_3_W":[[0.6161703,-0.20014547,0.51343465,0.32414958,-0.4191405,-0.094090216,0.6916015,0.68653065,-0.46503648,-0.32374275,0.20278896,0.0272236,-0.40860736],[0.016187323,0.4218443,-0.39871958,-0.49440855,-0.20302232,0.7119994,-0.19964194,0.4442079,0.3104815,-0.5141474,-0.18292132,-0.009729394,-0.43212843],[-0.02621932,0.42008805,-0.41170013,-0.36279938,0.49049714,0.13969359,-0.38049182,0.22852893,-0.5885065,0.420613,0.49065357,-0.67078143,-0.24520677]],"activation":"identity","dense_3_b":[[-0.04161267],[-0.03253271],[-0.033194877]]},{"dense_4_W":[[-1.1191984,-0.70736027,-0.7379151]],"dense_4_b":[[0.038523376]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json deleted file mode 100644 index 57b9f626aa..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.4087214],[1.0962394],[0.552085],[0.045840405],[1.0842694],[1.0885813],[1.0920763],[1.0729834],[1.0586178],[1.0390083],[1.0111257],[0.04568487],[0.045708325],[0.045725018],[0.045583706],[0.045519102],[0.045363124],[0.04511732]],"model_test_loss":0.0031460165046155453,"input_size":18,"current_date_and_time":"2023-08-08_03-31-08","input_mean":[[22.685059],[-0.04596198],[-0.0031675429],[-0.010991076],[-0.04475341],[-0.04535443],[-0.04585154],[-0.045443647],[-0.042782683],[-0.043330435],[-0.042112358],[-0.011107673],[-0.011077235],[-0.011044265],[-0.010814458],[-0.010676653],[-0.010754372],[-0.010827275]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[5.1307755],[-0.22914484],[-0.08857657],[0.011367913],[-5.177985],[2.9143384],[1.9856763]],"dense_1_W":[[1.2700648,2.4509182,0.42634973,-0.043660536,0.07598462,0.6747098,-1.1844238,-0.047003433,0.04515124,0.38031095,-0.29778752,0.19533536,-0.08757439,-0.33965743,0.66066694,0.11041075,-1.1397349,0.1881033],[-0.018975187,0.86162823,3.7638307,-0.51357865,0.43678054,0.40158442,-0.9920606,-0.42070356,0.2959596,-0.43891278,-0.022803979,0.972302,-0.3332229,-0.17261001,-0.3463398,0.23325261,0.049253233,0.020867042],[0.013230203,0.20721851,-0.005705704,-0.05253921,0.31700867,1.174462,-0.7808391,0.113812,0.07265435,-0.14510319,0.16861048,0.7564678,-0.031058798,0.115615994,-0.5682336,0.123778,-0.68434507,0.43895295],[0.010290787,0.12781261,-0.0023238414,-0.41893026,-0.35603276,1.2424941,-1.300665,0.528987,0.19249827,-0.0497169,-0.10521977,0.3558453,0.17937179,0.042039894,-0.69474906,-0.3783733,0.48399767,0.008863078],[-1.2171276,1.6279436,0.41698736,0.040549632,0.39905706,0.23700579,-0.4378377,-0.0051275906,0.23958966,0.23730484,-0.23500912,-0.0059611434,0.14673305,-0.28380656,0.46382582,-0.36074856,-0.3228667,-0.12749387],[0.5837035,-1.46317,-0.0014780383,0.05828605,0.6278459,-0.7193519,0.7438587,0.97596496,0.31377402,-0.5242437,0.07906513,0.06160492,0.053548303,0.31995016,-0.07082522,-0.648382,-0.29354775,0.5114841],[0.7796686,0.82628,-0.0014781661,0.08306547,-0.45119047,0.8933981,-0.6380061,-0.66575885,-0.43284875,0.24002665,0.13119845,-0.038445093,-0.056063775,-0.4277078,-0.019120147,0.74485147,0.2288264,-0.4735436]],"activation":"σ"},{"dense_2_W":[[-0.77505285,0.44785905,-0.4859164,-0.69656503,-0.3268532,-0.043176193,0.30929434],[-0.533772,0.92544174,0.6345639,0.38062403,1.4165294,-1.2982454,-0.9251346],[-0.29203573,-0.23658712,0.76349384,0.56426525,0.22437766,-0.375684,0.379061],[0.3641449,0.05223953,-0.22189741,0.45458284,0.025595745,0.20614897,-0.5833691],[-0.912483,-0.95896566,-0.32421297,-0.28912008,0.70729816,0.22977747,-1.0203142],[-1.0123776,-0.8513916,-0.5037631,-0.2299052,0.7295842,0.08601015,-0.9566463],[0.32550806,-0.6377905,0.4949481,0.108062916,0.9683189,-0.37003064,-0.11962097],[-0.17852181,-0.39138564,-0.094003476,-0.18062831,-0.9090928,1.1256458,-0.014201421],[-1.4999908,-0.7281591,0.02269345,-0.42794332,0.49982706,-0.16169797,-0.2747838],[-0.23206441,-0.45395112,-0.50797534,0.039583728,-0.51249075,0.042664643,-0.37662345],[-0.10693958,0.07380252,-0.0014285411,0.24690871,1.4165428,-0.9269869,-0.034422167],[0.38615483,-0.5410777,-0.09538446,0.5820919,0.2631145,-0.26281682,0.02736992],[0.29233518,0.044993673,-0.016566137,0.47320673,-0.22927615,-0.55325514,-0.14620171]],"activation":"σ","dense_2_b":[[0.22806741],[-0.58099383],[-0.14560527],[-0.22234294],[0.23043375],[0.33217996],[-0.14389473],[0.2759481],[0.13984576],[-0.22704253],[-0.27780655],[-0.21868534],[-0.4021424]]},{"dense_3_W":[[-0.81395864,0.69009596,0.594186,0.3081578,-0.8761271,-0.9944457,0.26057324,-0.49558344,-0.02225669,0.42718655,0.4395653,0.36918622,0.12211585],[0.36394253,-0.2486054,0.21003513,-0.69946647,0.4221953,0.36324582,0.09421991,0.4322135,0.3120558,0.15996966,-0.38080767,-0.10931592,-0.27037248],[-0.120345704,0.63140625,0.41101453,-0.48626202,-0.93907106,-0.19290596,0.12457818,0.051282577,-0.86917734,-0.68639874,0.7245342,-0.21468553,-0.09911791]],"activation":"identity","dense_3_b":[[-0.0466283],[-0.09009529],[-0.011769824]]},{"dense_4_W":[[0.9855905,-0.11999337,0.6430469]],"dense_4_b":[[-0.037628047]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json deleted file mode 100644 index cba87588f0..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.254862],[1.1385337],[0.41576585],[0.043710105],[1.1287707],[1.132625],[1.1353652],[1.1196473],[1.0987684],[1.0703217],[1.0421079],[0.04358062],[0.043615773],[0.043639626],[0.04353495],[0.04332622],[0.04291046],[0.042309582]],"model_test_loss":0.014948678202927113,"input_size":18,"current_date_and_time":"2023-08-08_08-31-33","input_mean":[[24.234503],[0.023715263],[0.0013837352],[-0.016846638],[0.024842778],[0.024989845],[0.024956135],[0.025811702],[0.027098333],[0.02575938],[0.025799232],[-0.016848726],[-0.016819052],[-0.016790438],[-0.016748805],[-0.016675282],[-0.016660813],[-0.016719952]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.1555274],[-1.2548984],[-0.4566681],[-1.6319039],[-0.14648859],[0.13250285],[0.9906875]],"dense_1_W":[[1.3423415,-0.24642485,0.006111532,0.012378954,0.82595116,-0.17717491,0.24821205,0.42500618,0.6834485,0.018730227,-0.1565104,0.09215833,-0.36679584,0.0047377744,0.24215446,0.43317646,-0.18074779,-0.17103945],[-0.5176677,-0.7046031,0.0015316915,0.14099175,-0.0733852,-0.6077859,0.2935369,-0.076649874,-0.110761255,0.051375758,-0.0816902,-0.05404265,-0.17823854,0.2719146,0.047899935,-0.5356291,0.31465584,0.016353693],[-0.111515455,0.7519741,4.21518,0.05408819,-1.119347,-0.20324452,-0.08807333,-1.244985,1.5230471,1.5096039,-0.717811,0.2608386,0.15778817,0.23581202,-0.56306803,0.31904206,-0.38444847,-0.19765459],[-0.5268752,0.76404643,-0.0017947298,-0.3977187,-0.22531988,0.6545117,-0.038231295,0.07132816,0.14574783,0.020449052,-0.010587621,0.0513172,0.25084835,-0.10950242,0.26603368,0.061757516,-0.2410503,0.07645558],[-0.00076164474,0.7578842,0.010459518,-0.12878841,-0.36717027,0.2933262,-0.9912176,0.64869034,0.30009547,0.2382631,-0.4692174,0.9048082,0.089927815,-0.3356697,-0.620122,-0.5221165,-0.043559503,0.49379468],[-0.013825502,0.7339534,-0.0039100796,-0.055555224,-0.0005979433,0.83517665,-0.20551458,0.24547431,0.40483287,0.01048875,-0.1659191,0.37662286,-0.18053651,-0.5086211,-0.052123472,-0.2253914,0.26272738,-0.00324899],[1.4422294,0.10161895,-0.009221952,0.0001851067,-0.5961213,0.35581017,-0.40002102,-0.57796574,-0.72453356,-0.2504394,0.40512785,0.33791512,0.23944646,-0.5331633,-0.10079834,-0.14660199,-0.12033143,0.26091284]],"activation":"σ"},{"dense_2_W":[[-0.7369561,0.02455093,-0.46102518,0.1283071,-0.7312183,0.10579285,-0.6936246],[-0.7311419,-0.749299,0.3388481,0.18734214,0.79592025,0.29745373,0.17872249],[-0.22437106,-0.45606863,0.29539058,0.5096125,0.5026677,0.12546055,0.85000384],[-1.3382739,-1.1157519,0.10686484,1.3033385,0.385738,0.17410201,-0.19884275],[-0.1854942,0.42922994,0.28422222,-1.1910807,-1.0079081,-0.23142847,8.624731e-5],[-0.39573595,-0.7930596,-0.130986,0.841052,0.45527455,0.13693747,0.12886971],[-0.73722404,1.5512154,-2.526512,0.409384,0.048512198,-0.16389945,-1.4609332],[-0.5329282,1.3224562,-0.89408386,0.12158089,-0.8545148,-0.67364424,-0.5871783],[0.8857724,0.6694776,-0.603088,-0.26001891,-0.79026496,-0.23295787,-0.30123875],[-0.10273737,-0.6942836,-0.45611718,1.081006,0.4116631,0.74641204,0.097880006],[1.5226238,1.1838912,-0.7302709,-0.74710697,-0.15506236,-0.9069341,0.47763306],[0.41078228,1.0947998,0.33479145,-1.2295458,-0.73588777,-0.35713267,-0.4043876],[0.051438108,-0.25903246,0.011029442,0.29265,0.4014094,-0.55543566,-0.45906964]],"activation":"σ","dense_2_b":[[-0.23664342],[-0.20603849],[-0.17615202],[-0.3781619],[0.0006889099],[-0.081270784],[0.25464833],[0.013770528],[0.22249864],[-0.026060008],[0.62564516],[0.11952428],[-0.12836026]]},{"dense_3_W":[[-0.074207924,-0.505883,-0.40938795,-0.59246546,0.7246955,-0.35897088,0.79559946,0.4252552,0.53429896,-0.7682427,0.41834652,0.73031914,0.09650071],[-0.49922326,0.3795509,-0.38837686,0.6977958,-0.5670746,0.28678024,-0.24660635,0.4053855,-0.20115663,0.21688443,-0.26936162,0.17709436,0.43220088],[-0.2724911,-0.0043004784,-0.3452385,0.35134262,-0.31723148,-0.32032728,-0.33450916,0.66542053,0.58240664,0.0893131,0.18599492,0.4492229,-0.58078444]],"activation":"identity","dense_3_b":[[-0.072912164],[0.02573561],[-0.051938336]]},{"dense_4_W":[[-1.0250915,0.18725124,-0.05788247]],"dense_4_b":[[0.0649493]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json b/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json deleted file mode 100644 index 2942415d1f..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[5.4780097],[1.2577926],[0.43811297],[0.051083397],[1.2457128],[1.2499636],[1.2529455],[1.2401595],[1.223894],[1.1997709],[1.1767297],[0.050826065],[0.0508941],[0.050945964],[0.050895486],[0.050689384],[0.05035568],[0.049934413]],"model_test_loss":0.011547946371138096,"input_size":18,"current_date_and_time":"2023-08-08_05-36-40","input_mean":[[27.111942],[-0.03980634],[-0.0022899704],[-0.006063226],[-0.03720769],[-0.03763983],[-0.038365092],[-0.03697022],[-0.03660629],[-0.03213649],[-0.029237831],[-0.0060009984],[-0.0060217986],[-0.0060452693],[-0.0060623847],[-0.0061068335],[-0.0060221725],[-0.006052836]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.12641694],[-0.33899814],[-0.25064033],[0.20345357],[-0.22338079],[-0.8124178],[0.16103578]],"dense_1_W":[[1.3942753,-0.3584407,-0.154166,0.022718882,0.5902439,-0.22766683,0.2832875,-0.22318293,-0.25568873,0.28416058,0.12970877,-0.500204,-0.5363517,0.45337692,-0.13542888,0.054177634,0.13246426,-0.022701526],[-0.005614037,-0.74243695,-0.024937803,-0.016466122,0.16694336,-0.79974186,1.0153489,-0.21336944,-0.3901125,0.23960757,0.0332596,-0.07577539,-0.42862704,0.4491737,0.17550863,0.31181923,-0.16353676,-0.07374046],[-0.0031423056,-0.57563585,0.017968522,0.3929503,-0.15378566,-0.63862056,0.15106781,-0.12307793,0.23466262,-0.24525358,-0.0012493497,-0.6446595,0.23389706,0.2918894,0.012215268,-0.17649019,0.35015333,-0.16645752],[0.04239965,0.5392046,4.068176,0.13729823,-0.68696815,-0.07966062,-0.088794686,-0.3782991,0.8575764,0.7636464,-0.54163724,0.9711964,-0.018747166,0.14241268,-0.38917318,-0.40814298,-0.3224793,-0.29323283],[0.8142449,-0.7080669,0.16443568,0.63644344,0.28831044,-0.24459267,0.6272347,0.22174281,0.1637401,-0.70512813,0.2843761,-0.16773595,-0.27920532,0.55365586,0.256064,0.11410076,-0.021043133,-0.39824295],[-1.6068854,-0.2603165,0.18158215,0.49356657,0.12779,0.17468308,0.25797316,0.08986019,-0.3094926,-0.6496034,0.49420497,0.34940144,-0.21054225,0.10816955,0.0055429307,0.37773353,-0.37752208,-0.09018268],[-0.7694553,-0.07489691,-0.16786428,-0.00053137547,0.4097508,-0.36562666,0.12501729,-0.19840546,-0.0126358615,0.039615765,0.18806833,-0.54327863,-0.51791424,0.0740618,0.22897214,-0.18245429,0.3604914,-0.09582553]],"activation":"σ"},{"dense_2_W":[[0.24724053,-0.8135549,-1.0432718,-0.47479427,0.23202157,-0.11595288,-0.8035583],[-0.3641042,-0.91288745,-0.17233254,0.062157948,0.012575541,-0.2614273,-0.5772882],[0.29817045,0.49287653,0.19307482,-0.8773637,0.06299248,0.41714546,0.44092533],[-0.22270527,-0.7510113,-0.320351,0.13680461,-0.70703113,-0.12383241,-0.13850203],[0.5840328,-1.1061023,-0.6563664,-0.8935429,-0.123855405,-0.70505697,-0.63111097],[0.99201673,0.9417266,0.9312267,-0.81133705,0.5478353,-0.04604467,0.02872271],[-0.26014936,-0.412083,-0.7116672,0.29321614,-0.5735676,0.29037717,-0.7531203],[-0.38308242,1.0270671,0.65335995,0.19699557,0.48486,0.23515755,-0.14074802],[-0.7378848,0.32173055,0.28095686,-1.3347943,-0.10628233,0.2015702,0.62443095],[0.47323346,-0.77164555,-1.1039329,0.018455347,-0.5227511,0.69003034,-0.2582299],[-0.7601159,-0.2633271,-1.0450773,0.6082064,-0.675639,-0.23727775,-0.028281933],[-0.72581375,-0.90512085,-0.6048286,0.46046877,-0.6226022,-0.07060259,-0.21025342],[0.216426,-1.0285689,-0.4780186,-0.22132304,-0.5840384,-0.53020334,0.15992962]],"activation":"σ","dense_2_b":[[0.15380488],[0.10775849],[-0.19009462],[0.13743988],[-0.026639858],[-0.07323958],[0.1744765],[-0.21176378],[-0.6805215],[0.025015425],[-0.07340503],[0.20637435],[-0.27417326]]},{"dense_3_W":[[-0.400137,-0.17929879,0.37570322,-0.41039902,-0.78768486,0.45827937,-0.33256137,0.5615223,0.31010586,-0.35362414,-0.12100718,-0.41779718,-0.6763564],[-0.029315872,0.38450587,0.65436715,0.5139883,0.5027268,-0.20125258,-0.6333471,-0.34089682,0.29030252,-0.47958472,-0.50353307,0.046102453,-0.1736601],[0.7619456,0.69776905,-0.5650997,0.6306316,0.2189477,-0.5332646,0.4607702,-0.63797,-0.0884034,0.2954164,0.25978985,0.40438277,-0.020070346]],"activation":"identity","dense_3_b":[[-0.039152775],[0.10458916],[0.05406968]]},{"dense_4_W":[[-0.4555721,0.005902641,1.1475917]],"dense_4_b":[[0.05754332]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json deleted file mode 100644 index 56d771db4f..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.128073],[1.9819432],[0.67647],[0.03768782],[1.9757774],[1.983661],[1.9863665],[1.9118274],[1.8144435],[1.6810344],[1.5267222],[0.037616044],[0.03765301],[0.037677314],[0.03763337],[0.037550315],[0.037358243],[0.036996108]],"model_test_loss":0.008689496666193008,"input_size":18,"current_date_and_time":"2023-09-02_03-20-12","input_mean":[[14.68071],[0.021380786],[0.46259907],[-0.004524958],[0.022391],[0.022068378],[0.021636909],[0.017254867],[0.01384061],[0.011885543],[0.0075867935],[-0.0047742473],[-0.004707863],[-0.004638913],[-0.004404541],[-0.0042158943],[-0.004056291],[-0.0040879687]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.1280082],[-1.1454269],[-0.5907967],[-0.09462522],[-1.5222621],[-0.06474111],[-0.18497786]],"dense_1_W":[[-0.7009141,-0.38039988,0.004431449,-0.012658321,-0.22134589,0.40167508,0.24670589,-0.16331027,-0.6081444,0.044047765,0.15884489,-0.28576955,0.5305393,-0.21158585,0.01631704,0.0164069,-0.04090381,0.03749079],[-1.2070944,0.33291462,-0.00065425114,-0.15011062,0.107518055,-0.18207166,-0.14097372,0.41454053,0.0068484033,-0.22716488,0.103904985,-0.09329521,-0.06751863,-0.041087177,0.60482687,-0.26763386,0.11107493,-0.1320544],[0.4323738,-0.7883933,0.018195441,0.1580461,-0.6474651,-0.6159256,-0.9379849,-0.37990838,0.68379474,1.044618,1.4096797,-0.40671948,0.1614424,-0.11615482,0.12993212,0.37938693,0.11391126,-0.3182603],[-0.13848633,0.090352476,0.01572969,0.3221026,1.8986752,1.4132906,1.0738622,-1.0810357,-1.1936059,-1.3231126,-0.6220339,0.24080239,-0.34178606,-0.17251074,0.07337686,-0.21869779,-0.14425553,0.15532547],[-1.3020873,-0.3577446,0.004843032,-0.19699144,0.61322373,0.27911437,0.032230213,-0.86169994,0.13983178,0.12466293,0.17854461,0.07389106,-0.24750361,0.07031268,0.20702806,0.16463912,0.10438393,-0.1978545],[-0.16901715,0.3392736,0.004554811,-0.27741778,0.45267153,-0.3854464,0.30139357,0.38105348,-0.54760116,-0.1830378,0.25936118,0.2037518,-0.045803245,0.18543306,-0.3661198,0.30218798,-0.18051952,0.088926606],[-0.04060996,-1.2018764,-0.0063867588,-0.1523224,-0.23714058,0.14187981,0.37231123,-0.21963619,0.48160625,-0.064321116,-0.08458865,0.098526716,-0.23027526,0.29377708,0.07306222,0.05420829,-0.027615033,0.032934707]],"activation":"σ"},{"dense_2_W":[[-0.9896441,-0.91121817,-1.3145435,1.5384254,-1.8210615,0.4096885,-0.6555594],[-0.5512578,0.706973,0.1739295,-0.2688923,0.0792371,0.2261899,-0.93914133],[-0.17643008,0.37539357,-0.52018803,-0.60483295,-0.40311056,0.00969808,-0.60566235],[0.5127232,-0.6856154,-0.38688743,0.5137769,0.043315798,-0.31914636,0.55572736],[-0.4251685,0.8384956,-0.44557106,-0.33929333,-0.2585186,0.5259269,-0.57586336],[-0.10946882,-0.59604675,-0.20513241,0.4133915,0.30031222,-0.061005022,0.73186797],[0.17562889,0.145244,-0.26974306,0.28159103,0.1361736,-0.8459545,0.5167652],[0.050689343,-0.7800611,0.38343653,0.51704615,-0.014367372,-0.110503346,0.6778625],[0.20051907,-0.08033896,-0.1346465,0.4862248,0.26726595,-0.49421996,0.058299515],[-0.6299042,0.62805223,-0.79595345,-1.3490283,0.5333974,0.47591394,-0.63695586],[-0.90749574,0.033430014,-0.9152016,-0.031571057,-0.5695399,0.42602757,-0.27167413],[-0.17134069,-0.100465134,0.49037132,-0.2590825,-0.40358037,0.59190834,-0.2740423],[0.4622381,-0.2463554,-0.19674955,-0.23713845,0.62164,-0.40453714,0.3900809]],"activation":"σ","dense_2_b":[[-0.16326958],[-0.049766444],[-0.07038124],[-0.11578319],[0.066625684],[-0.1020039],[-0.12042527],[0.06384306],[-0.14624113],[-0.08538901],[0.01569337],[0.09202553],[0.00027780043]]},{"dense_3_W":[[0.7518775,0.02956615,0.6283354,-0.04630323,-0.31706655,0.42018586,-0.10056567,-0.7526844,0.40103868,1.063733,0.057580598,0.4941196,-0.70732373],[0.27228886,0.64840984,-0.030330945,-0.5357204,0.562624,-0.42896906,-0.22066677,-0.5914074,-0.64570546,1.042475,0.021803057,0.59831506,-0.15360864],[-0.9862492,-0.22666612,0.13068162,0.7076782,-0.28517807,0.4069032,0.24799564,0.2690811,-0.46506408,-0.38062972,-0.8088552,-0.4484452,0.12431305]],"activation":"identity","dense_3_b":[[-0.09667684],[-0.03777417],[-0.07913758]]},{"dense_4_W":[[0.31394643,1.0359226,-0.3090591]],"dense_4_b":[[-0.04020227]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json deleted file mode 100644 index 9e89e1b73c..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.864324],[1.195729],[0.5000528],[0.045503624],[1.1876615],[1.1897441],[1.1915259],[1.1731166],[1.1543447],[1.1241426],[1.0919412],[0.045285385],[0.045317214],[0.045348417],[0.04523818],[0.044993326],[0.044672333],[0.044197746]],"model_test_loss":0.010650141164660454,"input_size":18,"current_date_and_time":"2023-08-08_10-38-45","input_mean":[[22.725025],[-0.055808485],[0.001137117],[-0.015166062],[-0.053198244],[-0.053012587],[-0.05277475],[-0.05324079],[-0.05459143],[-0.05888146],[-0.061499923],[-0.015064281],[-0.015065552],[-0.015068696],[-0.015092874],[-0.015163227],[-0.015276051],[-0.015225322]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.8403706],[1.9263608],[-0.02353573],[0.13397901],[0.053899422],[-0.64194036],[1.533293]],"dense_1_W":[[1.215834,0.5290091,0.0010350833,0.58499736,0.13186142,-0.31402144,-0.21469525,0.38816625,0.23431656,0.29439512,-0.31795207,-0.4929344,0.027251905,0.4290527,-0.27181652,-0.25157085,-0.13006414,0.19127874],[0.2723699,1.2427698,0.0014152995,-0.43297893,-0.48355135,1.1187311,-0.24734323,-0.09894979,0.11120238,0.28424853,-0.010035362,1.1629834,-0.19423008,-1.0324532,0.13956966,0.09991054,0.112085946,-0.1749808],[-0.19893286,-0.17605188,-0.0030688597,0.05146822,0.27002192,-0.7286609,0.43610734,-0.14199519,-0.0853716,-0.101905815,0.073544376,-0.46090946,-0.18160121,0.4364794,0.10960736,0.04185993,0.26554465,-0.31036776],[-0.011314031,0.4353308,3.653043,-0.05127646,-0.1675842,0.31245592,-0.18524799,-0.27518684,0.44928986,0.26701117,-0.52353877,0.41049197,-0.26632294,-0.028535297,-0.29766062,-0.048215423,-0.3651719,0.3764775],[1.5780559,-0.08976564,-9.765889e-5,-0.26617634,0.24203834,-0.8669704,1.1116273,-0.0742143,-0.2221292,-0.054146104,0.16106835,-0.92289317,0.365733,0.5554041,0.15667431,0.3766961,0.2937706,-0.38773754],[-1.6040205,-0.47703403,0.002361407,0.07246606,0.53856707,-0.90088457,0.95031244,0.007901789,0.048565075,0.0043789237,0.04390007,-0.9249038,0.1373752,0.6529523,0.4923536,-0.27184066,0.13291296,-0.11895679],[0.2517245,-1.1308137,0.0034714418,0.1780916,0.10587542,-0.8159195,0.4059062,-0.03472441,-0.04591407,-0.26056758,-0.016641837,-0.5397002,0.108333215,0.5678768,0.039879672,-0.132191,-0.21716514,0.2923616]],"activation":"σ"},{"dense_2_W":[[-0.48967394,-0.51389205,0.113997415,0.016403848,0.5711787,0.15113378,0.4878009],[-0.2635089,0.21487024,-0.7652375,-0.8594565,0.295536,-0.23716962,-0.41961473],[-0.88732815,0.43693033,-1.120157,1.132662,0.06735183,-0.01847645,-2.4321022],[0.01924355,-0.03326971,-0.11982994,-0.620888,-0.33939648,0.13469471,0.18667164],[0.3868043,-0.32892308,0.5205381,-0.04860096,0.63565564,0.5115548,0.18762778],[-0.617038,-1.3592334,-0.1403255,-1.1278222,0.28842503,0.97025603,-0.17546569],[-0.55640936,-0.90946704,-0.37307426,-0.58689624,-0.29243192,0.10891342,-0.54093736],[-1.3703765,-0.16418502,-0.823949,1.6223699,-1.0620314,0.53991866,-2.127252],[-0.009325325,1.5309258,-0.16605411,0.7356731,-0.34463426,-0.6377375,-0.29067755],[-0.39712206,0.07344511,-0.75337785,0.14594577,-0.71447504,-0.70417905,-0.90238726],[-0.5242973,-0.42696825,0.40271243,0.5059833,0.7945543,0.64832735,0.23148233],[0.3530504,-0.88467205,0.88836426,0.33030617,0.049364965,0.01906914,0.4844055],[-0.4703546,-0.24426712,0.7923177,0.36024544,0.0022455095,0.052522115,0.8682579]],"activation":"σ","dense_2_b":[[-0.17262366],[-0.14012913],[0.12171151],[-0.18287124],[-0.20833604],[-0.1185827],[-0.17963924],[0.059548587],[0.52694756],[0.41090366],[-0.200375],[-0.20045975],[-0.153012]]},{"dense_3_W":[[-0.07465968,0.15956515,0.46311855,0.014608014,-0.444435,-0.7115352,-0.30661452,0.73835003,0.8836145,0.9389069,-0.5226219,-0.41022688,-0.41954798],[-0.60114104,0.003818114,0.17285155,0.044011418,-0.4042057,-0.7233705,-0.45021132,0.0065049254,0.3945897,0.92667377,0.58642626,-0.5636264,0.041805413],[-0.40279514,0.053986654,-0.03796396,-0.01619937,-0.3810127,0.20270245,-0.16480388,-0.09316253,-0.31165186,0.23359255,0.42131686,0.16401958,0.35183364]],"activation":"identity","dense_3_b":[[0.10906697],[0.11099494],[0.09338066]]},{"dense_4_W":[[1.0284308,0.2183279,-0.010448182]],"dense_4_b":[[0.106538475]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json deleted file mode 100644 index 5256a3e1b8..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.854179],[1.1303082],[0.53015584],[0.03889556],[1.123932],[1.126327],[1.1281773],[1.1152551],[1.0980102],[1.0719626],[1.0425837],[0.038768984],[0.038817387],[0.03885716],[0.03881795],[0.03875846],[0.0386614],[0.038491134]],"model_test_loss":0.01249716430902481,"input_size":18,"current_date_and_time":"2023-08-08_13-08-15","input_mean":[[21.914545],[-0.06985225],[0.0069250595],[0.0074601127],[-0.072784856],[-0.07272125],[-0.07216228],[-0.06802319],[-0.062263846],[-0.055437304],[-0.047055077],[0.0074525527],[0.0074529466],[0.0074460334],[0.007305565],[0.0071349433],[0.006932451],[0.0067396]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.1328846],[-1.0045387],[-0.20393331],[0.34046453],[-2.9040704],[-0.88909465],[-1.0122662]],"dense_1_W":[[-0.009380342,0.39705235,-0.00044332718,-0.09147423,0.08871867,0.9096405,-0.59983367,-0.18780915,0.30827704,0.051737268,-0.026273916,0.1966064,-0.08228399,0.07654324,-0.22208402,-0.26681504,-0.0277596,0.20970288],[-0.61757046,-0.8588174,-0.23621607,-0.027208043,0.09026295,-0.43468106,0.6500065,0.006853881,-0.12466401,-0.47896266,-0.2195636,-0.4655939,0.2346326,0.25235915,0.21434762,-0.3650002,0.06806084,0.19297919],[0.010002054,-1.349585,-5.1705165,0.12756625,0.08521816,-0.98372036,0.43257916,-0.057569943,-0.54946965,0.96981055,1.5286827,-0.9813786,0.12952766,0.14352597,0.23754609,0.4159036,-0.0977373,0.048195776],[0.9575999,-0.14470491,0.31414202,-0.09178863,0.14425702,-0.61020595,0.9214482,-0.051314764,0.49639797,0.7580396,0.10446417,0.056817234,-0.1146647,0.19221032,0.121222705,-0.14470126,0.08769907,-0.25462785],[-0.88419044,0.9049013,0.3302875,-0.8633652,-0.44462034,0.61998045,-1.0550838,0.5917251,0.48678157,0.50562924,0.12007341,0.26738396,-0.017963672,0.30564892,0.19286638,0.40492755,-0.14467871,-0.2856948],[-1.3030186,-0.29781476,0.31140298,-0.17929639,0.12359713,0.34227288,0.38400793,-0.4179453,0.20848781,0.7742308,0.35219595,0.0028036782,0.4082305,-0.34966815,0.021426486,0.34787825,-0.19836852,-0.21195874],[-0.58479625,-0.23239343,-0.24123837,0.6287148,0.47498283,-0.7846575,0.8982925,-0.88446414,-0.22690499,-0.40089333,-0.053161245,-0.52477574,0.04346586,0.0012316491,-0.17584592,0.15376398,-0.23099528,0.21563265]],"activation":"σ"},{"dense_2_W":[[0.06019809,-0.17363435,0.009131735,-0.6226487,-0.26803654,-0.040024236,-0.56756294],[-0.14312544,0.49063408,-0.44845125,0.40217203,-0.18071179,0.4310444,0.43489814],[-0.24798368,-0.56137055,0.52847433,0.7304674,0.039464716,0.2093034,0.44131762],[0.811304,-0.7688727,-0.07781592,-0.26929495,0.06020161,0.10069685,-0.2413632],[0.5917001,-0.7344408,-0.7879752,-0.70411605,0.096649006,0.5307449,-0.5803427],[-0.17709559,0.57773626,-0.12374329,-0.39053938,0.05942479,0.36537674,0.3478097],[-0.57855505,0.43059486,-0.29216823,0.44024208,0.109462574,0.05103991,0.6366086],[2.143651,-0.36122483,-0.28893292,-1.1197438,0.8901433,-0.60585576,-0.6609203],[2.3569098,-1.4072812,0.41858813,-1.4579345,1.6088637,-0.65525293,-1.0169],[-0.4568836,0.46699843,0.4344656,-0.108972535,-0.5572416,0.22916758,-0.03445166],[0.726269,-0.7789017,-0.42420408,-0.6138444,0.5996936,0.19354253,-0.40971667],[0.16139944,0.33351776,0.44673514,0.25408468,-0.6194311,-0.102249816,0.24741264],[-0.2875433,0.15023352,-1.0662942,-1.5630789,0.52131546,0.17151031,-0.08705293]],"activation":"σ","dense_2_b":[[-0.056130372],[0.007243945],[-0.049758114],[-0.10406119],[-0.215356],[-0.033409223],[-0.003601784],[0.3017622],[0.28980875],[-0.08838445],[-0.027734138],[-0.04194128],[-0.18084925]]},{"dense_3_W":[[-0.3558706,0.27432942,0.24073915,0.4001887,-0.5080968,0.1751163,0.57690793,-0.34388652,-0.48687238,-0.15128407,-0.3315714,-0.41198158,-0.18070593],[-0.45770586,0.05980327,0.4270051,0.4770666,0.50269896,-0.25726086,0.48697513,0.34577233,-0.074373096,-0.40511134,0.45576844,0.02034731,-0.09106971],[0.4071002,-0.1986135,-0.46739143,0.5110455,-0.26348698,-0.15412426,-0.5601918,0.17882004,0.52172244,-0.3752082,0.43591946,-0.6359482,0.3153758]],"activation":"identity","dense_3_b":[[0.04088854],[-0.057896398],[-0.03347668]]},{"dense_4_W":[[-0.6996337,0.5206291,1.0165205]],"dense_4_b":[[-0.037676737]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json deleted file mode 100644 index 9157493562..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.756613],[1.5469935],[0.5868461],[0.048539903],[1.5311569],[1.5367651],[1.5406994],[1.5197327],[1.4855404],[1.433774],[1.3787619],[0.048304897],[0.048386667],[0.048456155],[0.048535753],[0.048419178],[0.048049178],[0.047447804]],"model_test_loss":0.01072931382805109,"input_size":18,"current_date_and_time":"2023-08-08_14-01-31","input_mean":[[19.740038],[0.010453053],[-0.00983059],[-0.008197198],[0.011297055],[0.010507559],[0.009715306],[0.00675721],[0.005983052],[0.005432915],[0.0040853415],[-0.008249147],[-0.008247744],[-0.008244466],[-0.008281346],[-0.008300149],[-0.008453809],[-0.00865498]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.7556062],[-2.0698571],[-4.225762],[-0.15726951],[-0.30065513],[-1.0648031],[1.8342476]],"dense_1_W":[[-1.7290211,-1.5173091,-0.23002613,-0.37698144,0.016258085,-0.8270681,1.3781465,-0.7642315,-0.6422404,0.2824734,-0.110180624,-0.3257264,0.5549623,-0.032036513,0.43426138,-0.0714845,0.2864038,-0.21663748],[1.9184333,0.671971,0.04794123,-0.25451732,-0.10465885,0.5573552,-0.37439582,0.24595505,-0.06845002,-0.041696787,-0.05226348,0.22399874,0.03275794,-0.070917316,-0.22555944,0.1414704,-0.0041139866,-0.00024242824],[-1.8817899,1.5202969,0.2509318,0.51012284,0.62497395,0.032136127,-0.979242,0.6263891,0.70745003,-0.31345257,0.18674128,0.12859097,0.07685459,-0.46171176,-0.2280601,-0.33504027,-0.4022656,0.4169894],[0.04874895,1.0698912,-0.029439794,0.07341402,0.3300274,0.7930807,-1.2549204,0.0783156,0.44667515,-0.044906255,-0.043870416,0.46820083,0.10374188,-0.53068924,-0.48136172,-0.074282564,0.12173919,0.0077482965],[-0.04342037,1.5612729,3.16704,-0.28737867,-0.79875565,-0.07702065,-1.1260544,-0.43122292,0.9323476,1.0069447,-0.97308475,1.2108004,-0.18733604,-0.6011836,0.18945155,-0.30365372,-0.16747494,0.19430496],[-0.31009704,1.1274835,0.09042992,-0.03338503,0.018458644,0.5902667,-0.24463883,-0.06990637,-0.159641,0.30669054,0.05195872,0.40048352,-0.029881949,-0.021455474,-0.6194718,-0.10056458,0.027914932,0.17777753],[-1.7739217,0.33766812,0.043878227,-0.7079486,0.070119634,1.0434483,-0.68583184,-0.19537714,0.06398747,0.16186452,-0.09159792,0.9890885,-0.08469821,-0.27189568,0.09402364,-0.43951192,-0.060028143,0.3246841]],"activation":"σ"},{"dense_2_W":[[1.3462045,0.59007597,-1.0555073,-0.72884923,0.30742645,-0.7919825,-0.79060274],[-0.94850713,0.08338297,-0.14278129,0.8774979,0.573835,0.043590613,0.47284335],[0.6373134,-0.7411809,-0.33538958,0.14371277,-0.37772784,0.16757706,-0.5341049],[-0.16109301,0.74011505,-0.12572628,-0.123916484,0.87228954,-0.0765876,0.09092019],[0.75033695,0.0969066,-0.60294336,-0.23090811,-0.39634117,0.18033504,-0.8499323],[-0.9217793,0.014436126,-0.6526303,-1.0338821,0.44630024,-0.17751805,-0.63913804],[-0.090204455,0.4812081,0.26368377,0.015731392,0.9630277,-0.17355147,-0.11038842],[0.0126234675,-0.63450015,-0.5070031,0.14078641,-0.73571676,0.008089552,0.03479742],[0.80792475,-0.66766584,0.23032701,-0.33161584,-1.2037598,0.2125056,-0.15969864],[-0.2423005,-0.74057645,-0.5435483,0.044129636,-0.69188356,0.08389628,0.16697945],[-1.5361837,0.30874377,1.1789893,0.6659148,-0.69351107,0.4415424,0.6480144],[-0.07204271,-1.221483,-0.92439497,0.7499748,-0.035351105,0.5684253,-0.67117625],[-1.017458,0.48187095,0.2618596,0.97278225,-0.55749303,0.423465,0.33408752]],"activation":"σ","dense_2_b":[[0.1838596],[-0.28277993],[0.11383015],[-0.23923337],[0.14975849],[0.014726325],[-0.16617869],[-0.029415732],[-0.118649684],[0.27848494],[-0.45202333],[-0.1126877],[-0.33022732]]},{"dense_3_W":[[-0.29903474,0.096304685,-0.46381262,-0.0082688145,-0.34521008,-0.72311455,0.260216,-0.3090884,-0.632807,-0.635328,0.6114854,-0.52489674,0.5849963],[-0.1397393,0.7307058,-0.24962811,0.54387295,-0.42753673,-0.5538375,0.39787623,0.073375665,0.29743633,-0.4567702,0.4831776,0.17509066,0.23498277],[0.17090236,-0.29356945,-0.030084739,0.1615791,0.08188441,-0.01872784,0.24252425,-0.23374312,-0.050307382,0.2272926,-0.600093,0.61274093,0.07305241]],"activation":"identity","dense_3_b":[[-0.015210137],[-0.05734997],[-0.043353032]]},{"dense_4_W":[[0.7804087,0.5536279,-0.040379304]],"dense_4_b":[[-0.031827074]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json deleted file mode 100644 index ce68ad35e1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.597539],[1.589519],[0.8570558],[0.04863597],[1.6346245],[1.6241254],[1.6103257],[1.498106],[1.4157897],[1.3226876],[1.2293135],[0.048567627],[0.048607342],[0.04863673],[0.048688337],[0.0488638],[0.049082097],[0.049054746]],"model_test_loss":0.011536603793501854,"input_size":18,"current_date_and_time":"2023-09-02_06-52-47","input_mean":[[17.37028],[0.06026842],[0.506836],[0.00031705393],[0.06628794],[0.06474968],[0.0628686],[0.05320054],[0.04718131],[0.04658512],[0.051670313],[0.00045426827],[0.00041247738],[0.0003619111],[3.6777285e-5],[-0.00032301998],[-0.0005914742],[-0.00092334347]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.24682778],[-0.006299858],[0.0748293],[-0.5736973],[-0.256641],[-0.58670074],[-0.0044331043]],"dense_1_W":[[1.0383956,0.9127742,-1.7661572e-5,-0.119445495,0.33176455,0.03573714,-0.8297675,0.023340857,0.47458792,-0.40310016,0.05576016,0.45783523,0.14146096,-0.4043011,-0.40886042,-0.11232859,-0.08254774,0.23749773],[-0.010238037,0.30345035,0.11772968,0.042131707,0.3533758,0.16141611,-0.32165682,0.22163633,-0.44536677,0.12489661,0.11577652,-0.4645873,-0.17438301,0.28373742,0.5604936,0.18323892,-0.099337935,-0.2914466],[0.019332694,-0.9718337,0.1213718,-0.09318972,0.4252448,0.122399725,-0.18120395,0.11679359,0.08406331,-0.28711584,-0.055180494,0.3861118,-0.31324327,-0.20063293,-0.299365,0.17973764,0.18562388,0.011371533],[-0.011864931,-1.153027,-1.1015527,-0.09962848,0.015605152,0.3611728,0.13415214,-0.23815176,0.63666695,-0.11102109,-0.2912127,-0.53489137,0.41428724,0.08640866,0.18429007,0.3095773,0.068252586,0.18889964],[1.0551776,-0.36253345,-0.001785746,0.022279864,-0.25197285,0.18718459,0.10246457,-0.26064438,-0.30058408,0.2714863,0.002131989,-0.643216,0.37801188,0.10752107,0.50343543,0.07076738,0.08356163,-0.22799636],[-0.008646536,0.78340423,-1.1187115,-0.57623047,-0.35842294,-0.7300839,-1.0882407,1.38732,-0.015289124,0.102130026,-0.69328797,-0.026475098,0.11983873,0.14571564,0.058386486,0.48151672,0.45962128,-0.04454241],[0.0033251448,-0.377444,0.08040648,0.07891003,1.9698765,2.2291944,1.0210977,-1.7496017,-1.0250691,-1.4425315,-0.31541628,-0.023265995,-0.059444286,0.0109439315,0.27883554,0.19031176,-0.16854845,-0.020514654]],"activation":"σ"},{"dense_2_W":[[-0.024243228,-0.05255965,-0.7595463,-0.5176617,-0.0028400528,0.5175856,0.5519225],[-0.018462835,0.24686936,-0.51719195,-0.42296433,-0.2835181,-0.007122102,-0.1566434],[-0.8202002,-0.6762049,-0.21161737,0.6190111,0.8244078,-0.58753747,0.34383672],[0.7579045,0.30807158,-0.5150138,-0.39650717,-0.65510255,0.6530385,0.029368501],[0.19137707,0.47466335,-0.6506839,0.14364511,-0.9489478,0.21647897,-0.47036436],[-0.7764023,-0.48433128,-0.14451031,0.436359,0.86376953,0.06893752,-0.3654762],[-1.6003051,-1.3418225,0.8276233,0.10213565,-0.890929,-0.37858123,0.72083765],[0.28483543,0.26148677,-0.7699699,-0.5142481,0.13567218,0.5638172,0.44093132],[-0.79822946,0.13202399,-0.72469413,-0.28871945,-1.2221936,0.35103744,-0.97257113],[-0.43247938,-0.09032452,-0.71232784,-0.012452181,-0.36949623,0.040841173,0.21214984],[0.10710754,0.36228323,-0.47006533,-0.37733367,-1.2878665,0.47658426,-0.45390767],[0.24698155,0.2711014,0.075908944,-0.42958894,-0.23198445,-0.2069848,-0.3533442],[0.6337969,0.35413942,-0.7264216,-0.47986504,-0.21905626,0.6985329,0.2576043]],"activation":"σ","dense_2_b":[[-0.12635571],[-0.14632428],[0.038847096],[-0.07666457],[-0.1459678],[0.14029463],[-0.169782],[-0.23029572],[-0.10404744],[-0.142377],[-0.08718043],[-0.06485942],[-0.14547676]]},{"dense_3_W":[[-0.15735611,0.17262073,-0.8805252,0.51910555,0.2501827,-0.2835049,-0.11046073,-0.15481108,0.6115458,0.2226787,-0.03818101,0.042739924,0.53314],[-0.5296838,0.2718061,0.544608,-0.2170193,-0.30278963,0.3500211,0.77196777,-0.58984184,-0.3200903,0.25097454,-0.4622797,-0.41570127,0.052868128],[-0.103185855,0.026371501,0.77141577,-0.66143405,0.17981799,0.3885078,0.7312039,0.48614725,0.2583454,0.014793015,-0.5174716,-0.26699665,-0.017405592]],"activation":"identity","dense_3_b":[[-0.09996536],[0.10106084],[0.0681742]]},{"dense_4_W":[[1.3119884,-0.8955275,-0.28397295]],"dense_4_b":[[-0.096690625]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json deleted file mode 100644 index c01244be27..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.548942],[1.1556146],[0.5686091],[0.04125714],[1.1739614],[1.1698171],[1.1636059],[1.1330084],[1.1195551],[1.0984498],[1.052436],[0.041275118],[0.041270234],[0.041261356],[0.041291114],[0.041279677],[0.041211747],[0.04119539]],"model_test_loss":0.021393293514847755,"input_size":18,"current_date_and_time":"2023-09-02_07-27-02","input_mean":[[19.183447],[-0.061503228],[0.31750193],[-0.009586182],[-0.07582464],[-0.07115664],[-0.066330835],[-0.050047584],[-0.04131674],[-0.034985147],[-0.023530383],[-0.00953319],[-0.0095485365],[-0.00957056],[-0.009637397],[-0.009661676],[-0.009702404],[-0.009817304]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.11971723],[-2.06865],[-0.9273426],[0.2350055],[-0.039275352],[-0.6935257],[2.1106303]],"dense_1_W":[[-0.023465969,1.0403687,-0.0064599384,0.088695236,-2.572482,-1.9478124,-1.171903,3.2940629,2.2462277,0.7168309,-1.1020683,0.20056015,0.27593887,-0.26641613,-0.14360692,-0.7400961,0.00034045885,0.4156913],[-0.93346083,-1.4239619,-0.006503616,-0.22113818,-0.2023531,0.5193814,1.0461832,-0.3782537,0.29444095,-0.15030141,-0.5023597,0.16464102,0.7242057,-0.27950695,-0.3696878,-0.30749488,-0.47764552,0.76080126],[0.7568762,-0.981843,0.016051132,0.19062184,-0.90861064,-0.7826231,-0.2727878,-0.23859741,0.5777361,0.8479089,1.3446846,-0.44860214,0.23954475,-0.01972305,0.022940347,0.21341267,-0.041809097,-0.08129695],[-0.09766348,-0.6063554,0.0062130643,-0.03661122,-1.70968,-1.8175805,-2.0428705,1.8160136,1.7936941,1.4172349,0.45122316,0.4655184,-0.21158199,0.27250418,-0.25827283,-0.39359215,-0.2081721,0.463419],[0.008593872,-0.58326274,0.007718574,0.30187526,-0.93341124,-0.077753805,0.021100318,0.051944837,0.48332676,0.46354106,-0.6830866,-0.4099744,-0.23816824,0.20651065,0.4611754,0.027589535,0.42457825,-0.38316107],[0.47711346,1.1507468,-0.012431412,0.080158405,1.1602942,0.88804525,0.068638526,-0.049588755,-0.9131459,-0.90958065,-1.0101755,0.19905831,-0.12530342,-0.19841798,-0.21211796,0.1636958,0.23769926,-0.20800415],[0.9961328,-1.143366,-0.007048344,-0.38564992,-0.14137669,0.97105956,0.28828618,-0.38741222,0.11933695,0.042133637,-0.5720996,0.8045794,-0.14538643,-0.06855614,-0.025645649,-0.65618575,-0.23211053,0.7001129]],"activation":"σ"},{"dense_2_W":[[-0.21309559,-0.2557323,-0.37976655,0.4364266,-0.058041357,-0.10421585,-0.108383834],[-0.7912269,0.5097253,0.20453687,-0.53811145,0.99982816,-0.61565036,0.4312177],[-0.21263213,0.48694882,0.18081997,-0.8577293,0.73699605,0.030947331,0.18210255],[-0.58780706,0.68300354,0.09398714,-0.5269206,0.73805976,-0.80878305,0.48335037],[-0.64852566,-0.39090246,0.58450216,-0.46928614,-0.50298375,-0.07994645,0.053112958],[0.1690405,0.5960562,0.35752842,-0.87621987,0.32022333,-0.55614614,0.7826676],[0.71447146,-1.0444664,-0.4509489,0.911557,-0.7412179,0.54971963,-0.7381729],[-0.62482494,0.039678216,0.56063163,-0.3121521,0.15650049,-0.09051405,0.09062955],[0.0126393195,-0.06729555,0.37268206,-0.9645424,0.835795,-0.8074821,0.59585595],[-0.048607614,-0.53631896,-0.19049186,0.7581371,-0.61508256,0.115542084,-0.5422532],[-0.08638583,0.37238285,0.4352934,-0.9093409,0.3891405,-0.3895383,0.22890623],[0.6520517,-0.27878258,0.0021966984,-0.23270349,-0.9914703,0.48241284,-0.16072732],[-0.29694274,-0.17202643,-0.45471925,-0.048209682,0.030067155,-0.20176966,-0.34706435]],"activation":"σ","dense_2_b":[[0.040295675],[-0.14250198],[-0.28739277],[-0.18335883],[-0.12844329],[-0.23011152],[0.2616699],[-0.1555895],[-0.27772397],[-0.0050205495],[-0.17576194],[0.06814319],[-0.17360274]]},{"dense_3_W":[[0.096177064,-0.17084734,-0.35130522,-0.51758367,0.15829244,-0.57115465,0.74830765,-0.119700745,-0.28673345,-0.016819801,-0.21919145,0.6545112,-0.14663658],[0.49742782,0.74625164,-0.2345321,-0.48559803,0.1774502,0.3355754,-0.7141915,-0.16827786,0.5395194,-0.7827569,-0.40440023,-0.6389728,-0.24930853],[-0.66462135,0.3956486,-0.40556067,-0.3123342,0.21790422,0.5589044,0.38879392,0.26195037,-0.36978155,-0.21154313,0.3580779,-0.06915874,-0.32115373]],"activation":"identity","dense_3_b":[[0.09647246],[-0.073265985],[-0.08355868]]},{"dense_4_W":[[1.1780397,-0.3744698,-0.1993529]],"dense_4_b":[[0.091160975]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json deleted file mode 100644 index a50b54aea6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.072969],[1.0171603],[0.41435865],[0.03957447],[1.0044475],[1.008584],[1.0119401],[1.0073107],[0.9948095],[0.9757278],[0.95639443],[0.039412063],[0.03944304],[0.039477617],[0.03948857],[0.03934316],[0.03904568],[0.03871683]],"model_test_loss":0.00399219011887908,"input_size":18,"current_date_and_time":"2023-08-08_15-43-41","input_mean":[[24.085066],[-0.030361513],[0.01571064],[0.0007362445],[-0.03486706],[-0.033671357],[-0.032109205],[-0.027380893],[-0.02287623],[-0.021235751],[-0.01674745],[0.0006118474],[0.0006441443],[0.000670867],[0.00071249413],[0.0006996055],[0.0005505158],[0.00045551005]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.29917517],[2.1752317],[0.32517457],[-0.06200813],[0.008188257],[1.2145834],[-2.4042017]],"dense_1_W":[[-0.0036490457,-0.65203166,-3.709906,-0.16634864,1.2238234,0.1361604,0.240366,-0.0953384,-1.1778214,-0.7621931,0.9326918,-1.3709967,-0.15128233,0.2677267,0.46784538,0.9360938,0.58685464,-0.60191363],[1.0609311,0.5510001,-1.2266392,0.5077542,-0.5202491,-0.04500755,0.09848119,-0.3979558,-0.19270724,-0.5866649,0.46674842,-0.5607535,0.21799003,0.25507393,-0.1446887,-0.3699364,-0.26326817,0.43315932],[0.039737374,-0.43775582,-0.013289291,-0.05986628,0.21640529,-0.7568447,0.5309831,0.2114327,0.11197306,-0.40092763,0.14490385,-0.1755713,-0.15272588,0.46322745,-0.10017493,-0.06966308,0.32474706,-0.19110319],[-0.0077359895,-0.43185976,0.020387627,0.3265592,0.16767904,-0.9530752,0.1524309,0.20602113,0.034762584,0.45183882,-0.40128747,-0.9679819,0.09233684,0.69716626,0.0959531,0.20735793,-0.10194677,-0.14030074],[0.005168357,-0.21313071,0.020432683,0.21680814,0.47587946,-0.1672917,-0.123546526,-0.28546202,-0.004813474,-0.2626441,0.2583704,-0.83474374,-0.3071537,0.70293534,0.035514556,0.2111255,-0.03847577,0.2905034],[0.039810598,0.41122228,0.0123043675,0.21473739,-0.08381318,0.053156123,-0.22393204,-0.07659595,0.2492394,0.084608234,-0.1508309,0.27756575,0.06493508,-0.6980999,-0.10522976,0.33079267,-0.021852562,-0.09157679],[-1.0318242,0.3270962,-1.2316992,0.074966654,-0.18502301,-0.540268,0.3426544,-0.32328182,-0.15373465,-0.5543649,0.4255326,-0.54132384,0.019477716,0.59251136,-0.14564046,0.17376666,-0.41093257,0.3159194]],"activation":"σ"},{"dense_2_W":[[-0.4484687,0.33253923,-0.28966695,-0.4360591,-0.24771251,1.0544692,-0.3488148],[-0.29909408,-0.58351547,-0.3938109,-0.11950906,-0.29386395,0.45222434,-0.031188905],[-0.97125804,-0.47300208,-0.5902675,0.09844755,-0.16599008,-0.14055668,0.33186546],[0.81737274,0.7941663,0.38187075,0.057302717,-0.24998307,-0.4406886,-0.15471426],[-0.22012134,-0.4555382,-1.0191162,-0.7460106,0.0017525634,0.37398848,0.55178577],[0.6003996,-0.07378992,-0.4675678,-1.0309192,-0.51752794,0.7784243,-0.13258673],[0.22552104,-0.42843226,0.6672592,0.5094388,-0.0069568693,-0.588892,0.22089334],[-0.040460102,-0.20706566,-0.4015441,-0.049420606,-0.47037354,0.62529606,-0.3584826],[-0.15761071,-0.6566617,0.13922708,0.6777953,0.6173028,-0.5567125,0.55445105],[0.421519,0.0040071155,0.4716913,-0.402618,0.37349927,-0.79084456,0.7557055],[0.18809932,0.48851332,0.20340067,0.53080684,0.07949558,-0.32842007,-0.15802757],[0.29606518,-0.42963374,0.061094977,-0.6543071,0.17196162,0.013567186,-0.72136617],[0.27312186,0.011079551,-0.9998639,-0.99941546,-0.35501084,-0.013600225,0.5464308]],"activation":"σ","dense_2_b":[[0.13286552],[0.08703823],[-0.031739317],[-0.052825537],[0.031032594],[0.013313505],[-0.030027948],[0.14758036],[-0.17001471],[-0.3692113],[-0.033355612],[-0.051361687],[-0.11612391]]},{"dense_3_W":[[0.08565427,0.037936352,0.31202748,0.0936324,-0.3239269,0.21602823,-0.13447368,-0.25992858,0.57573473,0.22251351,0.5654894,-0.5865121,0.19499925],[-0.31933227,-0.5680997,-0.40374595,0.2146467,-0.23784715,-0.53895664,0.7452532,-0.5017336,0.32644337,0.19702537,0.4468465,-0.10311684,-0.27303612],[0.51040643,-0.20984694,-0.19069631,-0.41539454,0.4963756,0.2997042,0.44628504,0.45647708,0.13536462,-0.67746484,-0.40592772,-0.2442403,-0.14450295]],"activation":"identity","dense_3_b":[[-0.056019142],[0.060379148],[-0.009930268]]},{"dense_4_W":[[-0.04487324,-1.0755644,0.06984845]],"dense_4_b":[[-0.055896856]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json deleted file mode 100644 index f68b17ada0..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.5043],[1.2473463],[0.53390634],[0.048283435],[1.2437444],[1.2446332],[1.2450808],[1.2284776],[1.2033198],[1.1706628],[1.1364652],[0.048133977],[0.048158456],[0.048181333],[0.048161115],[0.047940608],[0.047484715],[0.046831056]],"model_test_loss":0.00607825955376029,"input_size":18,"current_date_and_time":"2023-08-08_16-08-39","input_mean":[[22.575022],[0.051328536],[-0.006913471],[-0.01011988],[0.05268152],[0.05299266],[0.05207647],[0.048002362],[0.043245066],[0.03809434],[0.035212684],[-0.010153537],[-0.010121024],[-0.01008983],[-0.010034731],[-0.010037355],[-0.010153356],[-0.010373143]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5531221],[-0.5509416],[-1.445181],[0.28771853],[0.22789262],[1.434991],[0.0080130715]],"dense_1_W":[[-0.072858766,-0.25066936,0.001488759,0.17555322,0.07657381,-0.9037761,0.3106683,0.08651254,0.067195155,0.15176873,-0.20259917,-0.21302752,0.28982407,-0.43658245,0.015916249,0.11262799,0.11793564,-0.059966978],[0.43427393,0.08093749,0.0133838765,0.1622592,0.09717405,-0.83871514,0.5765018,-0.31165177,-0.15231861,-0.16858198,0.16277543,-0.60361624,0.17700994,0.33473372,0.38939148,-0.20558326,0.45074964,-0.25900662],[-0.74159485,0.30163378,0.22673568,0.14877096,-0.47694537,0.4062525,-0.13229688,0.1764854,-0.156683,-0.07724261,0.12065852,-0.07211137,-0.008046468,0.105538025,0.03403057,-0.40424374,0.101804785,0.09886794],[0.056292683,-0.44537598,0.0066523813,-0.36948034,0.0020229202,-0.23440255,-0.1426723,0.044855885,0.21266802,-0.04769602,-0.07245297,0.095258914,0.14331557,0.06311263,-0.081638,-0.13354753,-0.10685418,0.2744694],[-0.4399394,-0.24742912,0.015261683,0.036726598,0.21024184,-0.56052953,0.2644335,0.22065622,-0.49486712,-0.22668484,0.26602116,-0.027812555,-0.26319936,0.4370143,0.30383864,0.05929112,-0.278868,0.19924623],[0.7735669,0.71460426,0.22413033,-0.16059706,-0.6686849,0.07259404,0.16731831,-0.019293515,-0.071510345,-0.132955,0.10057606,0.3232639,0.11988385,-0.38480517,-0.09152796,0.0526992,0.22566798,-0.07503419],[-0.013013475,0.9049779,4.2753534,-0.7142396,-0.40504238,-0.4914329,-0.67501336,0.25923017,1.06321,0.6865681,-0.7837867,0.6691853,-0.14117423,-0.25011092,0.2118381,-0.4131931,0.0050245565,0.23714177]],"activation":"σ"},{"dense_2_W":[[0.83081543,0.7152437,-0.9272331,-0.058508083,0.5601877,-1.0513786,0.34386688],[-0.40297586,-0.20603098,-0.02151336,0.27510563,-0.72458434,-0.33728045,-0.39708093],[-1.0368242,-0.39495397,-0.43345797,-0.44247583,-0.31836608,0.47316584,-0.5714821],[-0.57493865,0.08437657,-0.13061555,-0.76476145,0.03340725,-0.026223348,-0.12614326],[-0.55024046,-0.6168174,-0.028391553,-0.18474647,-0.26115215,0.12521398,0.35426983],[0.39255112,0.5900703,-0.22482665,0.5707256,0.5464044,-0.71590644,-0.002837547],[0.25933468,0.5432395,-0.25603205,-0.023391314,0.17869925,-0.030074507,0.05608481],[-0.40570793,-0.8749095,0.7643032,-0.95808434,-0.292604,-0.31031305,0.5525302],[-0.7991779,-0.5244842,0.7676792,-0.2169589,-0.35757715,0.3793689,-0.18556851],[0.27159563,0.47496906,-0.8455038,0.3217735,0.56621623,-0.37803704,-0.3152324],[0.34084067,0.4475718,-0.45190004,0.6034602,0.19615944,-0.74282926,-0.3698053],[-0.12877308,-0.040314443,-0.07347546,-0.022651967,-0.35362196,-0.25663686,-0.03716333],[-0.12629175,0.18490966,0.3493096,-0.12202217,-0.87659836,0.84210044,0.7154535]],"activation":"σ","dense_2_b":[[-0.37709257],[-0.36266398],[0.041201413],[-0.2759538],[-0.045757968],[-0.32502013],[-0.116910934],[-0.0555258],[0.13395292],[-0.11479294],[-0.12865],[0.0017155915],[0.03419236]]},{"dense_3_W":[[-0.21281184,0.025354605,-0.38931814,0.4332946,0.34886065,-0.5425068,-0.45385525,0.5249028,0.8241498,-0.0018914028,-0.71546686,0.37642565,0.6025195],[-0.10640655,-0.15879385,0.8035984,-0.0676657,-0.45838603,-0.16732062,-0.10961278,0.47199112,0.05652834,-0.273728,-0.5767416,-0.26667383,0.25352108],[0.2845616,-0.20691596,-0.0674403,0.26220548,-0.5230078,-0.013668718,0.14580722,0.21254358,-0.455578,0.6447261,0.39926735,-0.578386,-0.07932991]],"activation":"identity","dense_3_b":[[0.046802334],[0.06993807],[-0.054334518]]},{"dense_4_W":[[0.86223423,0.7466944,-0.5962639]],"dense_4_b":[[0.05574729]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json deleted file mode 100644 index 7cba3a0bd1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.225504],[0.9862146],[0.4786618],[0.044386055],[0.9911494],[0.98926777],[0.9868219],[0.9688941],[0.95759606],[0.945508],[0.93368983],[0.04445444],[0.044414494],[0.044370808],[0.044087693],[0.04393713],[0.04383826],[0.04361526]],"model_test_loss":0.007047169841825962,"input_size":18,"current_date_and_time":"2023-08-08_17-49-22","input_mean":[[22.136208],[0.070861906],[-0.03981052],[-0.010668343],[0.080718815],[0.07792175],[0.07505944],[0.058528677],[0.045737457],[0.03174954],[0.021063231],[-0.010688668],[-0.010692572],[-0.010689235],[-0.010696851],[-0.01084794],[-0.0111111775],[-0.011500895]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[3.4361866],[0.8604132],[3.8839195],[-0.3530098],[-0.60368276],[0.18975182],[-0.14933607]],"dense_1_W":[[1.77373,0.502524,0.0018965496,-0.110705666,0.3420213,0.22547789,-0.29762477,0.0047542676,0.14169078,0.4244286,-0.26493979,0.77021676,0.0050104316,-0.45031142,-0.0891641,-0.3238069,-0.27745253,0.43920958],[-0.4554037,0.55976075,0.0024382551,-0.52546054,-0.35694334,0.31670326,-0.42664233,0.5528438,-0.02553557,-0.25557682,0.018628456,0.5487123,0.07868527,-0.44713297,0.2761562,0.01487938,-0.19466569,0.13075072],[1.9630107,-0.8828655,-0.003229503,0.096722186,0.11981852,-0.59655976,0.20542483,-0.09582429,-0.035594583,-0.0051746666,-0.00012015179,-0.31307888,-0.4298206,0.48810238,-0.19152062,0.65658826,0.10284727,-0.3608829],[0.0509072,-0.08480384,2.396337,0.02690105,-0.36376664,0.108113885,-0.308852,0.44377556,0.45792276,0.30328622,1.0544075,0.88695085,0.12360692,-0.119185396,-0.18221413,-0.5859372,-0.31101158,0.7223309],[0.28265178,0.32164347,0.0010089057,0.030570894,-0.30268112,0.8745566,-0.7895676,-0.08777498,0.4583039,0.3052894,-0.36076066,0.817972,-0.2626141,-0.4675079,-0.3099327,0.0030562575,-0.1641152,0.23820297],[0.019067027,-0.14309163,-1.8227177,0.047291636,0.32350194,0.20237854,1.0319531,0.03287445,-0.7612191,-0.9520363,-0.2104849,0.18699706,-0.27343786,0.21203913,0.1552981,-0.075778924,0.033884183,0.004781352],[0.10389948,-0.48800257,0.0021118661,-0.07135153,0.009598374,-0.5138354,0.51288474,-0.36974624,0.07902618,0.0439172,-0.019653676,-0.36099622,-0.046752088,0.59683883,-0.17708305,0.32293355,-0.07517723,-0.042607766]],"activation":"σ"},{"dense_2_W":[[0.096298866,-0.023356602,0.24766381,-0.68317467,0.4726718,-0.31475353,-0.74931395],[-0.048710193,-0.088762455,-0.26215088,-0.68562347,-0.09474713,0.28614464,0.25585324],[0.088518575,-0.29647326,-0.5624382,-0.42151505,0.9982967,-0.40049326,-0.4974512],[0.36501676,-0.53366756,0.296159,0.35532963,-0.47745422,-0.34653178,0.71060693],[-1.2016175,-0.62754,-0.3136847,-0.11115397,-0.40962538,-0.6096405,0.84929377],[-3.0193913,-2.1009915,-0.42303616,-1.5302383,-0.37101474,1.7938634,1.6035624],[-0.5427815,0.09416961,0.18964134,-0.70530283,1.0021083,0.1920392,-0.037322704],[0.0019868647,-0.08528146,-0.067309916,0.12519653,-0.92892164,-0.20166376,0.95873517],[-0.7638899,0.35672405,-1.1621267,0.39103174,1.1349736,-0.65880626,-1.0431181],[-0.17016599,-0.42968458,-0.5383481,-0.1613195,0.84924465,0.09490495,-0.16490082],[-0.7958531,-1.0898287,-0.21342301,0.3154297,-0.662309,-0.11026381,0.43740568],[-0.21438372,-0.023171034,-2.4562607,1.4170244,1.4787751,-1.4303266,-1.7063339],[-0.8461705,-0.8368954,-0.6641428,0.07786552,-0.85198885,0.16422716,0.5509807]],"activation":"σ","dense_2_b":[[-0.04843994],[-0.11621983],[-0.15534192],[-0.1777891],[-0.13141605],[0.45782998],[-0.038693666],[0.120798975],[-0.2962059],[-0.112060666],[-0.19976714],[-0.08506511],[-0.19297417]]},{"dense_3_W":[[0.06841162,-0.38602033,-0.44655094,-0.095605254,0.09524266,1.5977386,0.055025216,0.92095596,-1.0016881,0.001653223,0.22546917,-1.4391123,0.5747701],[-0.112245455,0.27487016,0.09106065,-0.5642001,-0.3326845,-1.0173982,0.6527395,0.1291596,0.18963833,0.07579223,0.08202421,0.39516202,-0.5810091],[0.62696713,-0.4055594,0.3906188,-0.22678788,-0.6915645,-0.62307024,0.27116132,-0.23976414,0.59970427,0.59344476,-0.5686633,1.0074819,-0.6300193]],"activation":"identity","dense_3_b":[[-0.015245617],[0.021583866],[0.0017865004]]},{"dense_4_W":[[-0.4391859,0.34876132,0.45405573]],"dense_4_b":[[0.011228666]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json deleted file mode 100644 index 36c28370c1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.8233147],[0.9782015],[0.41718537],[0.035352696],[0.9691626],[0.9718523],[0.9732458],[0.9550015],[0.93631965],[0.9095138],[0.88053274],[0.035256404],[0.03528126],[0.03530267],[0.03523645],[0.03513863],[0.035011794],[0.03486604]],"model_test_loss":0.012016833759844303,"input_size":18,"current_date_and_time":"2023-08-08_16-59-47","input_mean":[[23.676199],[0.046169933],[-0.0024152591],[-0.00083978643],[0.052181892],[0.050630625],[0.049394105],[0.04861944],[0.04347715],[0.037709467],[0.029363334],[-0.00079315034],[-0.00083242205],[-0.00086724694],[-0.00093634427],[-0.0010770531],[-0.0011623197],[-0.0013536707]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.34205592],[-0.6101867],[0.025273371],[2.7362225],[-0.3362331],[-0.22314112],[-0.42840534]],"dense_1_W":[[0.70273304,-0.07699354,0.004216056,-0.049642496,-0.1173342,-0.1843091,-0.514,0.301412,0.120716415,0.14159362,-0.26860958,0.22482587,-0.22099495,0.25595915,0.07369682,-0.30280155,-0.022244852,0.19049275],[-0.31632742,0.40738678,-0.0030173576,-0.14833613,-0.5414197,0.9335088,-0.3921892,0.074954435,-0.09115997,0.2769111,-0.164147,0.14919339,-0.16596842,0.19945244,-0.38358882,0.23962471,0.037440404,-0.055190288],[0.28026038,0.53400266,0.0009745513,0.14234091,-0.017792422,0.35154557,-0.54393846,-0.041059464,0.23289026,0.2371453,-0.22173151,0.32878917,-0.34945992,-0.17935802,-0.030065529,0.05598791,-0.16419156,0.06693432],[1.0627971,-0.69044113,-2.8159893,-0.11743469,0.06090651,-0.3309259,0.61224234,0.15625772,-0.35828912,-0.20305863,0.19095968,-0.38171795,0.088828474,0.45887148,-0.2708491,0.1556519,-0.33625215,0.20122494],[0.46239635,0.53465575,2.211843,0.16536956,0.27959237,0.03331173,-0.73842824,0.19596708,-0.17479798,0.15080513,-0.030420419,-0.2798054,0.38705692,-0.3063825,0.33478513,0.013453584,-0.30902138,0.09854831],[-0.07509558,0.06009354,0.0014442373,-0.37906444,-0.18389311,0.9123579,-0.23291315,-0.098106,0.17996079,-0.38929048,0.2669226,0.37405357,0.0829103,-0.12002334,-0.082380034,-0.19149263,0.17356545,0.021014312],[0.83645344,-0.12868191,2.8339524,0.66849464,0.2345121,-0.25139904,0.62862474,-0.14285043,-0.101333186,0.18938905,0.027926499,-0.30594265,-0.25533596,0.050244536,-0.12834157,0.20466578,0.14557889,-0.25508425]],"activation":"σ"},{"dense_2_W":[[0.2385943,-1.2497817,-0.4320098,-0.69494075,-0.15682808,-0.7165265,0.33271864],[-0.5953695,-0.94797826,-0.75910956,0.15720847,0.16028434,-0.42265445,-0.06788467],[0.013007017,-0.65603364,-0.54143244,-0.18851374,-0.48472962,-0.567826,-0.21415836],[-0.12800428,0.6126203,0.48534265,-0.0439459,0.3090983,0.6686178,0.06581577],[0.086700656,-0.7233699,-0.8339351,0.57965523,-0.0795262,-0.60835373,0.6064965],[-0.16711766,-0.5194217,-0.3638064,0.0828189,-0.19742145,-0.74326986,0.32982042],[-0.60902363,-0.54570323,-0.9682073,-0.22863796,-1.0575902,-0.7974728,0.09679575],[0.65101296,0.2940795,0.91902715,-0.3448089,0.7953689,-0.01467941,0.49614373],[-1.0385482,-0.7393712,-1.3759025,0.18227631,-1.3805835,-0.31249633,-0.33556783],[0.34581456,-0.657716,-0.2713684,0.86821914,-0.16907854,-1.0973026,0.6021319],[0.06327717,-0.08374516,0.2938722,-0.21229501,-0.08540833,0.84707147,0.17620224],[-0.3019964,0.7991158,0.15228769,-0.2151937,-0.01442734,0.6086916,-0.46539715],[-0.17123166,-1.3208861,-0.53291464,-0.768727,-0.22558156,-1.1115304,0.9095279]],"activation":"σ","dense_2_b":[[0.025361877],[0.115043625],[-0.19263957],[-0.15302731],[0.16757403],[-0.13207324],[0.2047931],[-0.023633512],[0.12663384],[0.21831232],[-0.10527339],[-0.07977336],[0.16238554]]},{"dense_3_W":[[-0.6029877,-0.001360625,-0.64843386,-0.024384713,-0.31931442,-0.2223872,-0.41601577,0.40875682,-0.6390585,-0.18351403,-0.22626987,-0.16342458,-0.5330356],[-0.9919812,-0.3600715,-0.23596478,0.014639649,0.05383371,-0.0056866687,-1.0682598,0.45604205,-0.13326848,-0.33690926,0.050030075,-0.28139764,-0.4887333],[-0.035192277,0.53870684,-0.28763992,-0.64913034,0.61716443,0.020962728,0.5046917,-0.6201238,0.081873566,0.4083527,-0.44538507,-0.638268,0.28089696]],"activation":"identity","dense_3_b":[[0.05839103],[-0.06695255],[-0.039935347]]},{"dense_4_W":[[1.2304412,0.24217309,-1.3306029]],"dense_4_b":[[0.0467045]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json deleted file mode 100644 index b3e5f0e367..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.3644342],[0.84206194],[0.32837495],[0.0497152],[0.8371395],[0.8385447],[0.8395692],[0.829151],[0.8190757],[0.80348146],[0.7860103],[0.049369164],[0.04941689],[0.049452867],[0.0493644],[0.049244285],[0.04892234],[0.048490353]],"model_test_loss":0.012282345443964005,"input_size":18,"current_date_and_time":"2023-08-08_18-13-59","input_mean":[[18.745186],[0.058482915],[0.004100846],[-0.0101344995],[0.059071593],[0.060052983],[0.0608945],[0.058870878],[0.05506747],[0.051870324],[0.050613668],[-0.0101755485],[-0.010125563],[-0.010075055],[-0.010220342],[-0.010350309],[-0.01046635],[-0.010587991]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.26137024],[-0.8474335],[0.7221059],[-3.029152],[-3.0476334],[-0.50681853],[0.28089675]],"dense_1_W":[[0.118606314,0.25686783,-1.9051447,-0.7990428,-0.005979468,0.09638535,-0.8308289,0.51833004,-0.06402269,0.6971393,-0.6183026,0.6924021,0.12464697,0.043432377,-0.4148101,0.15270382,0.060744658,0.13626556],[-0.16419527,0.39643514,2.5732567,0.008115614,-0.28033996,0.43020484,-0.5210173,0.17210113,0.04305193,-0.15485092,-0.06430828,0.5110761,0.061184343,-0.39538494,-0.33624035,0.22553732,-0.36463583,0.28871256],[0.08022375,-0.1438102,2.275842,-0.34128058,-0.044324376,0.096882254,-0.010320051,0.23874547,-0.18070365,-0.08163477,-0.005464015,0.42233032,0.017914683,0.047668677,-0.22110505,-0.13801146,0.21807624,0.043199193],[-1.0983561,-1.3618904,-0.16421425,0.7119955,0.31953186,-0.022093425,-0.31532484,-0.20155048,-0.2332474,-0.5418476,0.23563766,-0.055656385,-0.3085361,0.27007875,0.12838498,-0.18988839,0.06709897,-0.1783812],[-1.1701652,1.2933975,0.1829548,-0.56762326,-0.21117829,0.32533327,-0.16175397,0.4003565,0.3450981,0.5221387,-0.26247823,-0.18100262,0.19747707,-0.020127997,-0.08322595,-0.06828175,0.17032392,0.079796456],[0.55186826,0.5894228,-0.0018529932,-0.14105065,-0.08741265,0.9153969,-0.5369019,-0.110670924,-0.1197868,-0.17400903,0.24264471,0.5258655,0.41813594,-0.97932565,-0.030922398,0.023046646,-0.2965142,0.17293993],[-0.53106797,0.6812101,0.003069036,0.013521579,-0.22647035,0.62607247,-0.21172582,-0.28151682,0.13779911,-0.18788983,0.14300823,0.5570215,-0.360614,-0.39254332,0.087255284,-0.17113407,0.00049219653,-0.022655595]],"activation":"σ"},{"dense_2_W":[[-0.5570222,-0.3558432,0.43228203,-0.69578755,-0.5209684,-0.3988039,-0.50713974],[-0.44423953,-0.5874194,-0.7323912,0.7715879,-0.41121703,-0.1318218,0.18571433],[-0.6390287,-1.387356,-0.36371973,0.9566006,0.119820826,-0.493032,0.24996151],[-0.18583159,0.6930251,0.17657615,-0.539559,0.16666687,-0.021469139,0.16992941],[-0.40057775,-0.42924806,0.31558606,-0.0009943814,-0.6159993,-0.6273195,-0.25029367],[-0.13757096,0.5006542,-0.21990159,-0.19693488,-0.39372584,-0.53963596,-1.0108879],[0.4223514,0.07548385,-0.010612892,-0.42543212,0.35533974,-0.11486922,0.89943194],[-0.16426279,0.6486941,-0.036648616,0.31983182,0.5339297,-0.086293764,-0.25488037],[0.3003831,0.17355344,0.20259908,0.3913868,-0.13287883,0.49564433,0.6325901],[-0.48450124,-0.122303,0.04608689,1.1349032,-0.7158418,-0.69535565,-0.4309579],[-0.017942823,-1.1588961,-1.7683665,0.11541567,0.7244163,-1.6989279,0.45806262],[-0.47665825,-0.6297304,0.14930177,0.03149848,-0.07129674,-0.594798,-0.27915043],[-0.69228166,0.49151105,0.71214664,-1.0289556,-0.55659735,-0.2014265,-1.69863]],"activation":"σ","dense_2_b":[[-0.24992906],[0.05137416],[-0.04471787],[-0.0656874],[0.03518997],[0.03586051],[-0.08755667],[-0.07071635],[-0.09519462],[0.38123006],[-0.14761746],[0.018471785],[-0.25193718]]},{"dense_3_W":[[0.17286126,0.5556709,0.46810713,0.4721513,-0.47047356,0.520569,-0.49622187,-0.49121454,-0.45540947,0.66542894,0.69841886,0.3982122,-0.25671947],[-0.22673589,-0.5611173,-0.089621924,0.1419429,-0.6225278,-0.1980974,0.45448488,-0.22727543,0.51839507,-0.101876915,-0.25131065,-0.25810936,-0.088802256],[0.07408502,-0.50601435,-0.07129802,0.68250656,-0.27145752,-0.33781096,0.42821127,0.10353291,0.29823735,-0.20758152,-0.16469304,-0.33839104,-0.72373396]],"activation":"identity","dense_3_b":[[-0.05540624],[0.050332494],[0.045503195]]},{"dense_4_W":[[-0.74805945,0.97596985,1.0388287]],"dense_4_b":[[0.04738765]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json deleted file mode 100644 index e51a7bfd6b..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.976727],[0.70075977],[0.5193822],[0.03042774],[0.69921887],[0.70013744],[0.7002965],[0.695902],[0.6933414],[0.67973745],[0.6627475],[0.030151172],[0.030225797],[0.0303137],[0.030544141],[0.03062558],[0.030789947],[0.030969843]],"model_test_loss":0.006343930959701538,"input_size":18,"current_date_and_time":"2023-08-08_19-27-16","input_mean":[[16.929798],[-0.07719816],[0.018166475],[-0.021377886],[-0.079235695],[-0.07809248],[-0.07658997],[-0.068645015],[-0.06328592],[-0.05931081],[-0.05909752],[-0.021333551],[-0.021345824],[-0.021356996],[-0.021575557],[-0.021667903],[-0.021827627],[-0.02195472]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.014880665],[-4.0546803],[4.039964],[-0.11868123],[0.15448645],[-1.107983],[1.1866902]],"dense_1_W":[[0.0020459956,0.33396527,-0.12089764,-0.09266742,-0.10447256,-0.9204386,0.6287741,-0.6056384,0.22843099,-0.036838837,0.06830062,-0.39476836,-0.25123098,0.16312656,0.52959627,0.44755596,-0.0060909246,-0.37075716],[-2.4018881,0.96303153,-0.011795681,-0.2927611,-0.56402475,0.09905826,-1.2417923,0.6909417,0.04634957,0.049870215,0.14829403,-0.24467021,0.098947786,0.60680634,-0.11770359,0.12915674,-0.28863087,0.106796],[2.4256525,1.437447,-0.012711781,0.2002033,-0.7284638,0.066629946,-1.2394707,0.30315024,0.19728456,-0.0064161224,0.16385247,-0.46458936,0.14064942,0.5783398,-0.52734655,0.12342225,-0.02771602,-0.024491971],[0.01097608,-0.027902901,-0.034374587,-0.3541097,0.5106101,0.76122844,-0.096962415,-0.6580167,-0.2428814,0.03086143,0.42839304,-0.1327025,0.22802521,0.23564328,-0.29380637,0.4714742,-0.12637857,-0.02005889],[-0.034812696,0.41839755,3.2609296,-0.42740518,-0.15298292,-0.00866209,-0.9877955,0.20124017,0.70070297,0.17947885,-0.23164096,0.28965604,-0.7283435,-0.2188886,0.7684531,0.19517736,0.2536015,-0.36128113],[-0.9371955,-0.44021863,-0.56623465,-0.32142237,0.72665215,0.002760211,1.794923,-0.5086798,-0.3332023,-0.46023577,0.28646132,0.021077845,-0.085969545,0.12202227,-0.0113952635,0.3216046,0.09244552,-0.3860546],[0.96695864,-0.30241808,0.58513,0.17075059,-0.22292358,-0.8550528,0.2879175,-0.43512177,-0.31959462,0.48480448,0.25879675,0.27618545,0.025451204,-0.122112915,-0.17442971,-0.3921672,0.06478193,0.40238667]],"activation":"σ"},{"dense_2_W":[[-0.044206314,-0.8398137,-0.64021885,-0.54042494,0.6175049,0.18352465,0.32354066],[0.43910313,-1.1964579,0.21669604,-0.65690404,-0.1722438,0.7105811,0.9846193],[-0.7918547,0.18124402,0.9972935,0.41970012,0.19829191,0.010471378,-0.43702286],[0.08539568,0.5138893,0.012154299,0.39407086,-0.2033074,0.2336377,0.07864137],[-0.57327664,1.5145365,0.055437118,0.44190773,0.09702478,-1.1895245,-0.6311017],[-0.44423488,1.5355299,0.024235807,0.16098042,0.29021573,-0.8679073,-0.9571557],[0.004154781,1.1336601,0.8133591,-0.50107414,0.031159671,0.22605118,-0.14536653],[0.007528867,-0.56511986,-0.3612175,-0.24699865,-0.3588984,0.07682657,0.65754634],[-0.23885256,0.037369203,-1.247802,-0.6006928,-0.26584128,0.70783955,0.31224442],[-0.7690314,0.500182,0.9671801,-0.31481332,0.67578256,-0.68111664,0.31868243],[0.6401129,-0.09492038,-0.6698544,-0.36198345,-0.5426654,-0.2671815,0.6592098],[0.7210531,-1.0498211,-0.22714017,-0.048228458,-0.37272957,0.26260805,0.70966876],[0.63982356,-0.29841152,-0.8246119,-0.47527993,-0.18812291,0.8096702,-0.06459521]],"activation":"σ","dense_2_b":[[-0.025994662],[0.15322399],[-0.07625017],[-0.02093097],[-0.5037285],[-0.3910864],[-0.2550051],[0.010986569],[-0.03674515],[-0.06740837],[-0.02110642],[0.203657],[-0.006955387]]},{"dense_3_W":[[0.13050179,-0.1750691,0.55030495,0.00817725,0.0064171855,0.037391666,-0.34142336,-0.3982381,-0.6864987,0.44729853,0.019040912,0.2000447,0.05393903],[-0.18140526,-0.7954796,0.4079409,0.11663361,0.7815968,0.6944582,0.29977924,0.37544534,-0.17576152,0.39384714,-0.40072137,-0.36830547,-0.2356481],[0.5863231,0.31058028,-0.7853302,-0.23653558,-0.35724676,-0.24529241,-0.29981402,0.3657695,0.7097211,-0.48353392,0.66631585,0.39028704,0.82543695]],"activation":"identity","dense_3_b":[[0.05991354],[0.027705792],[-0.10160021]]},{"dense_4_W":[[0.21156265,0.3147255,-0.69529635]],"dense_4_b":[[0.09139054]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json deleted file mode 100644 index e902464df8..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.232792],[0.93400556],[0.47102702],[0.0364885],[0.9195544],[0.924241],[0.92906463],[0.92022413],[0.91261363],[0.9017492],[0.88828105],[0.036282632],[0.036326736],[0.036377504],[0.036556747],[0.03661433],[0.036583815],[0.036482345]],"model_test_loss":0.004662908613681793,"input_size":18,"current_date_and_time":"2023-08-08_21-56-04","input_mean":[[24.3614],[-0.1338536],[-0.00033556155],[-0.011434872],[-0.13066752],[-0.13287227],[-0.13457236],[-0.13018748],[-0.12908219],[-0.1285007],[-0.1288561],[-0.011373002],[-0.011407338],[-0.011437276],[-0.011411569],[-0.011443319],[-0.011484706],[-0.011544373]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.475858],[2.159764],[-0.061220553],[0.66681635],[-0.12575488],[-0.16302125],[-0.19944711]],"dense_1_W":[[1.086152,-0.8324169,-0.40090436,-0.69676965,0.07591572,-0.76153654,0.14704636,0.01003906,0.042237986,-0.13237216,0.010166433,-0.022998422,0.20724043,0.38396737,0.32619816,0.24285975,0.040859465,-0.15704209],[0.79297894,0.6081378,0.23360905,0.3370354,0.22393392,0.4906143,-0.30672908,-0.17856854,-0.25943467,-0.062457237,0.2529202,-0.0010873047,0.21262763,-0.5751331,-0.1401793,0.19357836,-0.55147094,0.32092294],[0.0029746895,-0.07445199,-0.009906404,-0.27658758,-0.3105713,1.3074434,-0.62331855,0.37446457,0.37921852,-0.076034345,-0.10986473,0.6444909,0.3060177,-0.34074512,-0.20372215,-0.4336765,-0.12278754,0.10387535],[-0.5095448,-0.72657496,-1.8959101,0.0026990066,-0.043687414,0.6157908,-0.9232839,0.5408708,0.51549035,0.19628379,-0.40704572,0.5014059,0.29025885,-0.7103715,-0.25765055,-0.30216625,0.5263961,-0.10350972],[-0.035269834,-0.043332044,-0.012723803,0.13811198,0.29201096,1.0091876,-0.8771376,0.18579352,-0.04488109,-0.17704397,0.23413378,0.19482689,0.20975055,-0.30010784,-0.35608566,-0.11924245,-0.050680783,0.22465675],[0.16372576,1.0684661,2.3885384,-0.4287634,0.70907384,0.0041387198,-1.4072537,-0.46730998,0.49696034,0.29660532,-0.27237156,0.50066346,0.015487968,-0.20723666,0.18176752,-0.10723471,-0.29568553,0.32300335],[-0.13845481,-0.49266118,-0.1540314,-0.26245895,0.5343135,-1.4516279,1.0021015,-0.034394637,-0.15333414,-0.23182547,0.20259102,-0.662138,0.034917697,1.1150106,0.17494841,-0.38734046,0.042199794,0.047024578]],"activation":"σ"},{"dense_2_W":[[0.16896504,-0.6318725,-0.24279357,-0.3490866,-0.46762058,-0.77701944,0.4309984],[0.3208485,-0.7041557,-0.71111524,-0.5957026,-0.13623692,-0.6515591,0.086047836],[-0.2776602,0.4528481,-0.17088494,-0.017503724,-0.32922515,0.08896287,0.44616765],[-0.5082411,-0.3947844,-0.3123438,-0.057989564,-0.27827948,-0.18070908,-0.18309323],[0.2809697,-0.37338483,0.65222776,-0.2953018,0.56409293,0.37588066,-0.1554319],[-0.56023234,-0.31079367,-0.08408593,0.20908839,0.10924668,-0.45463365,-0.6904562],[-0.80874884,-0.3383102,0.65157753,0.04253899,0.42724007,0.24657841,-0.5648559],[-0.3517047,-0.794073,-0.12099776,0.22774486,-0.23081534,0.2358734,0.24807717],[0.3229278,0.24695866,0.6025792,0.0022002668,0.32681346,0.54143,0.023995057],[0.45531654,0.27657107,-0.88627934,-0.57686245,-0.694657,0.27816367,0.3275702],[0.13451672,-4.2249675,-0.3837861,-0.6255863,-1.3373032,-1.6044973,3.5761082],[1.8231589,0.25132626,-0.5901763,0.246227,-1.138569,-0.8484137,1.5885205],[-0.32017943,-0.61674356,-0.49218202,-0.19713864,0.04268222,-0.5201525,-0.052188545]],"activation":"σ","dense_2_b":[[-0.052272886],[-0.11724032],[0.0015635947],[-0.00789324],[0.027887536],[-0.19823864],[-0.05784887],[-0.21397027],[0.004577288],[0.035433523],[0.12991314],[0.36998233],[-0.22823238]]},{"dense_3_W":[[0.2214185,0.117530905,0.07735763,-0.42819867,-0.40887833,0.053850636,-0.48472774,-0.2518017,-0.14455964,0.24991058,0.44975048,0.53486747,0.053818256],[0.4654577,0.13631766,-0.46057823,0.29975346,0.45944688,-0.43295076,0.47323555,0.55603576,-0.5924481,0.48736095,0.115073934,-0.056898475,-0.11687438],[-0.10070122,-0.5919317,0.3332405,-0.4515512,-0.44559675,0.47399083,-0.4619347,-0.37476748,0.5336691,0.34931633,0.3149243,0.08350989,0.5604568]],"activation":"identity","dense_3_b":[[-0.049824595],[-0.047182556],[-0.04280936]]},{"dense_4_W":[[-1.3079116,-0.3294201,-0.081988834]],"dense_4_b":[[0.051560275]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json deleted file mode 100644 index 5bbf98eff6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.871551],[0.99076307],[0.5212804],[0.034033],[0.99273914],[0.99082446],[0.99025035],[0.97448325],[0.9654756],[0.9608115],[0.9527273],[0.033883817],[0.033910338],[0.033948522],[0.03404775],[0.03394733],[0.033679023],[0.033345345]],"model_test_loss":0.004427366424351931,"input_size":18,"current_date_and_time":"2023-08-08_20-41-47","input_mean":[[18.534761],[-0.107549384],[0.0060349857],[-0.004051211],[-0.10914043],[-0.109205954],[-0.10822495],[-0.1059477],[-0.10361664],[-0.10045632],[-0.105254054],[-0.0040303078],[-0.0040611844],[-0.0040791193],[-0.0039875545],[-0.003919938],[-0.0038113499],[-0.0038577982]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.10420359],[-0.1057817],[-0.39223936],[-2.3496768],[-0.28235236],[-2.4502673],[0.03921215]],"dense_1_W":[[0.074189,-0.46536532,1.0744638,-0.0955078,0.28618422,-0.7533586,0.43112066,-0.16309841,0.008819428,0.3651173,0.16028656,-0.111217655,-0.09443299,0.6007408,-0.26957542,0.0102762515,-0.211533,0.20011066],[0.01304878,-1.1999677,0.018503658,-0.372737,0.6353846,0.8292781,0.1719466,0.035132185,-0.10863397,0.08928544,0.19234443,0.36751947,0.06552409,0.09331779,-0.00076240604,-0.45366123,-0.218846,0.31527466],[0.01300137,-0.41192222,-0.25047097,0.6152148,0.2306633,-0.38328096,-0.5728854,-0.49195603,-0.593413,0.16746691,-0.19081128,0.9538493,1.0308561,0.66020083,1.0559919,0.5171979,0.52770406,-0.3480374],[-0.7787808,-0.008312755,-0.1780567,-0.48370415,0.35223204,-0.5498642,0.29583552,-0.7346698,0.10713884,-0.1704408,0.11306947,-0.02356725,0.21382311,-0.17346635,0.5998714,-0.07053526,-0.09073403,0.092191376],[0.012029196,0.011908107,-0.2484767,1.264593,-0.85373944,-0.26193362,-0.660338,0.74062943,-0.28554145,-0.702825,-0.16722941,0.46179152,0.9958684,1.0726779,0.44082853,0.5114168,0.29967558,-0.1432011],[-0.76869935,0.34115568,0.17525065,0.15999442,-0.49437794,0.87348694,-0.5276255,0.17559843,0.17176434,0.18722947,-0.12719314,0.17408907,0.051208638,-0.14185886,-0.4593266,0.11995127,0.20499156,-0.1721416],[-0.04674022,-0.38118473,-1.4628186,-0.047094345,0.7261122,-0.046270296,0.81954944,-0.19116434,-0.5375223,-0.33290347,0.15070404,0.02437715,0.10229408,0.08374787,-0.0230739,-0.4579543,0.19219628,0.0668545]],"activation":"σ"},{"dense_2_W":[[0.14351524,-0.46819293,-0.4224769,-0.00477388,-0.019241339,-0.293288,-0.1430304],[0.013082477,-0.26986554,-0.13183518,-0.019898584,0.26537928,0.006188077,0.11345527],[0.7385166,-0.95441747,0.025136676,0.2132236,0.18503574,-1.2178441,0.01919843],[-0.2702514,-0.11104125,-0.62654877,-0.5112985,-0.38709098,-0.28173804,-0.08601629],[0.6713761,-0.22839609,-0.06097961,0.58245105,-0.6278035,-0.72068113,0.45237026],[-0.15852696,0.64257956,-0.55724066,0.21575698,0.22704268,0.6273873,0.011703053],[0.2014989,0.5201913,0.0019037927,-0.26834032,0.3011644,0.3858986,-0.528807],[0.46606636,-0.7134467,-0.048275437,1.742678,-0.4659715,-0.6684311,-0.139159],[0.15509929,-0.30987412,0.30098167,0.29494023,-0.37981874,-0.5524831,0.48631984],[0.14930598,0.34096712,-0.40304628,-0.4632963,0.04036466,0.5767117,-0.5780966],[0.31667084,-0.6918976,-0.00022687673,0.6150214,-0.45327514,-0.47609383,0.52913016],[0.246736,-0.3391219,0.104266286,-0.5017469,-0.018542334,0.12372901,-0.40627465],[-0.3095181,-0.40006125,-0.012567477,0.85648316,-0.17277096,-0.6989313,-0.0026190844]],"activation":"σ","dense_2_b":[[-0.31950915],[0.013885399],[-0.11509819],[0.0267938],[-0.018023722],[-0.012910115],[-0.027250042],[0.14641029],[-0.038134225],[-0.025109382],[-0.07372913],[-0.010580315],[-0.11711807]]},{"dense_3_W":[[0.20788044,0.033924606,-0.49926776,0.60941577,0.01432724,0.5210565,0.4180843,-0.25332364,-0.57750213,0.44128165,-0.3681372,0.36565867,-0.42293212],[-0.41391054,0.49958703,-0.41073647,0.074788004,-0.42877886,-0.39288726,0.07698003,0.2999807,-0.5140176,-0.23761888,-0.041945565,-0.54366297,0.10134992],[-0.06092816,-0.03296278,-0.10772118,-0.49357474,0.4073531,-0.56182015,-0.27668962,0.4813049,0.43785417,-0.38696533,0.3007674,-0.30370563,0.076707035]],"activation":"identity","dense_3_b":[[0.042803183],[0.06512138],[-0.045637704]]},{"dense_4_W":[[0.67749745,0.58833116,-1.2096345]],"dense_4_b":[[0.04982903]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json deleted file mode 100644 index 57e7e301d6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.041581],[1.1167691],[0.37027505],[0.04339891],[1.1085886],[1.1118982],[1.1143059],[1.1035876],[1.0856115],[1.0586617],[1.030805],[0.04334689],[0.043362875],[0.043374643],[0.04328665],[0.04312567],[0.04288237],[0.04255028]],"model_test_loss":0.00914697628468275,"input_size":18,"current_date_and_time":"2023-08-09_00-04-02","input_mean":[[24.044405],[-0.004445901],[0.0057743173],[-0.0008446529],[-0.0052520004],[-0.0049055307],[-0.004310624],[-0.0021481782],[-0.0005770088],[0.0025430974],[0.005762188],[-0.0008080605],[-0.00082908414],[-0.0008470768],[-0.0009064238],[-0.0009857891],[-0.0010071733],[-0.0010139564]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.3401184],[-4.1053653],[-0.010608114],[0.2289179],[-0.69536865],[-0.2987435],[-0.28003243]],"dense_1_W":[[1.7534523,-0.08379865,0.21821876,-0.111209184,0.18547846,0.70984817,-0.7669529,0.01540298,0.34365195,0.024990361,0.25576633,-0.04872505,0.058915216,-0.199681,-0.08895335,0.5293662,0.3860833,-0.47484013],[-1.6871309,-0.09608493,0.21602522,-0.25279704,0.15465249,0.53819185,-0.40238786,-0.01616075,0.06256271,0.22947508,0.23026761,0.24505456,0.014156367,-0.39275125,-0.00928132,0.6701992,0.068403155,-0.3019433],[0.004725199,-0.4235836,0.0013364913,0.15324596,0.42727017,-0.5808631,0.26156494,-0.20967181,-0.15404399,-0.09115835,0.18597606,-0.24034514,0.07084023,0.07770485,0.18210891,0.39121026,0.31440163,-0.5783728],[-0.19552681,-0.41310206,0.000722477,-0.0605445,0.701027,-1.3483342,0.5252242,-0.04271466,-0.11926105,0.18295698,-0.06785281,-0.47475234,-0.4607312,0.5883256,0.5187908,0.114911854,-0.25203437,0.08746814],[0.4152751,-0.14281093,0.7790405,-0.100202,0.28926933,-0.3125703,0.13834746,-0.3347568,0.43060276,0.55356705,-0.1735469,-0.11919702,-0.020521542,0.46576738,-0.06227651,0.036938347,-0.5694443,0.35215282],[0.3015953,-0.66961235,0.0007066811,0.419904,0.31045586,-0.9015735,0.7159605,-0.13024196,0.19127548,-0.18470418,0.06677055,-0.77706313,0.2998383,0.42251042,-0.21567652,-0.38658017,0.039470255,0.2681703],[-0.034314536,-1.076988,-3.4866838,-0.06330224,0.97281605,0.28214806,0.5845572,-0.5232068,-0.82733965,-0.2174799,0.6705298,-0.90485686,-0.048824865,0.40581775,0.6931158,0.17884906,0.25361615,-0.51271003]],"activation":"σ"},{"dense_2_W":[[-0.31351262,-0.32074958,0.8266476,0.8546215,0.3378021,-0.06759033,-0.46708575],[-0.8333776,-0.28922173,0.16795295,0.98310614,0.114590034,0.58432436,-0.13839144],[-0.6834294,-0.23853575,0.6451696,0.105569854,0.27903724,0.41774848,0.29000074],[-0.65618104,-0.20165549,-0.09106172,0.8227704,-0.23443276,0.53824764,0.47971424],[0.6953251,1.2419958,-0.79052114,-1.2340282,0.18634371,-0.6665756,0.107695915],[0.14654803,-0.19937792,-0.34062067,-0.7089461,0.40067112,-0.52197015,-0.085414894],[-0.2932009,2.5196638,-0.104791835,0.20051786,-2.2182112,-0.29118708,-2.7579544],[1.5122235,0.7356845,-0.89097416,-1.6861671,-0.033902757,-0.38292047,-0.13017933],[0.4886302,0.92094517,-0.91408855,-0.3532557,0.51951903,-0.95678043,-0.10919232],[-0.5293851,-0.20095,0.6889325,0.38757306,-0.377088,0.58944535,0.0955727],[-0.4349411,0.17035034,-0.15226962,-0.32203415,0.0838514,-0.059919562,0.04385721],[-0.26080495,-0.63391984,0.3301537,-0.1671539,-0.5050505,0.43088788,0.14715135],[0.45397362,0.3551525,-0.8346096,-0.65694994,-0.13430665,-0.31082925,-0.24663672]],"activation":"σ","dense_2_b":[[-0.15302955],[-0.15477453],[-0.1963815],[-0.2491886],[0.30184123],[-0.084158726],[-0.49648997],[0.67838836],[0.30030432],[-0.28645435],[-0.19416146],[-0.12059393],[0.36774662]]},{"dense_3_W":[[-0.30843228,-0.1345852,0.11176096,-0.5151945,0.29644585,0.12701263,0.0053969924,0.5684098,0.42676082,-0.370609,-0.16872759,-0.4540934,0.006954758],[0.43918204,0.6085673,0.51018596,0.6114487,-0.4061561,-0.1493339,-0.8047057,-0.18715277,-0.6292988,0.57502186,-0.1399395,-0.07194364,-0.8415874],[-0.39917964,0.53317773,-0.4621838,-0.015575044,0.50181717,-0.4820892,0.09182787,0.31296906,-0.39892152,-0.06316368,0.0068018823,0.37321454,-0.22843313]],"activation":"identity","dense_3_b":[[0.09777908],[-0.097871915],[0.098439135]]},{"dense_4_W":[[0.66679657,-0.8622704,0.007841214]],"dense_4_b":[[0.10087897]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json deleted file mode 100644 index 3222012608..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.9971128],[1.0977883],[0.45730543],[0.04923891],[1.089019],[1.0908507],[1.0933481],[1.0831064],[1.0687581],[1.0477011],[1.0263152],[0.04910758],[0.04913805],[0.04915577],[0.04904069],[0.0488613],[0.048416592],[0.047898013]],"model_test_loss":0.0029971429612487555,"input_size":18,"current_date_and_time":"2023-08-09_04-46-36","input_mean":[[28.262257],[0.00053741777],[0.007980467],[0.0073362947],[-0.002916855],[-0.0013664461],[0.00021708602],[0.0032231822],[0.007565537],[0.010730909],[0.014714129],[0.007122549],[0.0071928487],[0.0072572897],[0.007378812],[0.007430641],[0.007424608],[0.0074211424]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.13015555],[0.037057668],[-0.23104249],[0.32127166],[-0.1253072],[-0.6277245],[-0.1822209]],"dense_1_W":[[0.0022739936,0.15201275,-0.018758008,0.15420967,-0.6103832,1.253523,-0.6429536,-0.095406406,0.457949,-0.061857425,-0.09967628,0.34019652,-0.0124527775,-0.46103212,-0.41929677,0.31853652,-0.3198645,0.26396248],[0.016219854,0.2708034,-0.1250583,-0.3348056,-0.83736426,0.3921742,-0.35075605,0.30172172,0.24997391,0.45135334,-0.43142125,0.22985688,-0.40631214,-0.111362845,-0.5208431,0.004493165,0.4684426,0.6794704],[0.018668292,-1.0140254,-3.2794235,0.15160404,0.028701765,0.23249008,-0.1426395,0.43393394,-0.07807302,0.5009389,0.17505689,-0.7776797,-0.038091138,0.7018249,-0.21396264,0.011046297,0.13001016,-0.10944152],[0.3585128,-0.14987485,-0.13354455,-0.004226716,0.24764334,-0.858648,-0.007176733,-0.046182733,0.1446194,0.14181069,-0.1651582,-0.2749394,0.70667934,0.37523896,-0.2320659,-0.2591826,-0.20168015,0.28267252],[0.26727927,-0.41644073,-0.05738287,-0.011317095,0.4693145,-1.0781763,0.47786325,0.13199824,-0.1208562,-0.16208106,0.18948868,-1.007483,-0.48438329,0.07924176,0.80360824,0.66245914,0.16595826,-0.23646787],[-0.5315527,-0.023200141,-0.14639618,-0.2272303,0.064140245,-0.9595354,0.4488574,-0.16073947,-0.10355826,-0.061561897,0.069149286,-0.40911204,0.44534415,0.50131905,0.32962856,-0.22854826,0.1118126,-0.10387003],[0.45086104,0.62962455,0.05797986,-0.27834865,-0.03647285,0.58516073,-0.50903237,0.31138107,-0.46869588,-0.109248996,0.1444298,0.6807234,0.24872255,0.33425596,-0.46959794,-0.30864963,0.083699554,-0.24581586]],"activation":"σ"},{"dense_2_W":[[-0.47314742,0.30918634,0.6835903,0.33214816,0.41032484,-0.2974307,0.48068962],[-0.44719142,-0.3584287,-0.42897063,-0.0863155,0.32148045,-0.37775746,-0.35045746],[0.10737237,-0.107548736,0.40882415,-0.37991515,-0.35765076,0.6178046,-0.6659961],[0.5089876,-0.0018523282,0.47517067,-0.4635432,-0.51244944,-0.7637346,0.111460224],[0.009865635,-0.3599542,-0.08200983,-0.8016887,0.049183395,-0.55783385,-0.4132886],[0.21302545,0.24237937,0.2559324,-0.37488487,-0.8143479,-0.034766164,0.63836616],[0.06948995,0.5238659,-0.5756278,-0.34593225,-0.31828138,0.020820161,0.8075781],[0.264537,0.35211742,-0.2987492,-0.68384147,-0.37824905,0.12441704,-0.027348615],[0.18194555,-0.2742205,-0.7859905,-0.45490405,-0.6359722,0.30547658,-0.40839928],[-0.27246395,0.3188016,-0.6105616,-0.93436897,-0.120215744,0.019431151,-0.5015701],[-0.29636648,-0.44186333,-0.34854856,0.44886306,0.5337103,0.5365127,-0.5632916],[-0.24954297,-0.22443992,-0.15179092,0.51437247,0.24013738,0.43259284,-0.70645374],[0.4928545,0.18550447,0.22762263,0.29510337,0.3720493,0.37416783,-0.3423796]],"activation":"σ","dense_2_b":[[0.01935374],[0.0050131385],[-0.05235093],[0.046759594],[-0.12632822],[-0.027490286],[-0.024787772],[-0.044414002],[-0.123556636],[-0.14718735],[0.005641118],[-0.084211506],[-0.06420933]]},{"dense_3_W":[[-0.21112725,0.09418867,-0.44935966,0.3675701,-0.24375933,0.5796755,0.3944582,0.37292123,0.102567196,0.10260466,0.12603773,-0.6052102,-0.4585192],[0.033743866,-0.039306644,0.35334656,-0.42215514,-0.05132556,0.31450647,-0.30604413,0.12684399,-0.30334032,0.5066069,0.2883161,0.018579826,0.19727296],[0.5773127,0.44458362,0.37894127,-0.67509955,-0.4648014,-0.3175859,0.25752234,-0.57122767,-0.052177746,-0.57985467,0.56134444,-0.38693938,-0.35289878]],"activation":"identity","dense_3_b":[[-0.019124614],[0.012149713],[0.02416865]]},{"dense_4_W":[[0.85411745,-0.44846243,-0.8711393]],"dense_4_b":[[-0.020497099]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json deleted file mode 100644 index 7c13f097ec..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.6509843],[1.0640727],[0.43305442],[0.042583644],[1.0586958],[1.0597517],[1.0615927],[1.0452577],[1.0264294],[1.0022012],[0.97949535],[0.04246772],[0.042485926],[0.04249534],[0.042220093],[0.041864526],[0.041366912],[0.04084527]],"model_test_loss":0.009465457871556282,"input_size":18,"current_date_and_time":"2023-08-09_06-52-11","input_mean":[[24.357443],[-0.034125097],[-0.0049536517],[-0.011872438],[-0.03119763],[-0.03166454],[-0.03223406],[-0.03186475],[-0.030950857],[-0.030095048],[-0.03235388],[-0.011925372],[-0.011901585],[-0.01188047],[-0.011727326],[-0.011680916],[-0.011658311],[-0.01185102]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.1033378],[-0.26196438],[0.64087105],[0.0723818],[-0.033235934],[0.4940777],[-0.6624133]],"dense_1_W":[[0.17036144,0.70846754,-0.01288402,-0.31765887,-0.055238843,1.4783168,-1.0382427,0.09412714,-0.042508673,0.088409066,0.06366592,0.51934177,-0.2507901,-0.029035429,-0.40638945,0.18454157,-0.10026727,0.011903059],[0.0059481994,-0.4173155,-0.025032401,-0.17385283,0.42768398,-0.86849064,0.4772952,-0.28207323,0.45553952,-0.16625436,0.024320044,-0.3186513,0.04276512,0.058902144,0.67383,-0.41462952,0.32956126,-0.20091176],[0.50393635,-0.34078136,-1.1108505,-0.15240273,-0.34397945,-0.1046281,0.93492657,-0.0046718954,-0.35346282,0.18444361,0.09232944,-0.04991994,-0.43069664,0.04396726,0.5247936,0.38054457,-0.15464556,-0.072698794],[0.06292795,-0.49206024,1.0766574,0.3604547,0.33866602,-0.6243087,1.1562465,-0.22390123,-0.5481248,-0.046518486,0.25936723,-0.6421865,-0.103222616,0.3717842,0.18865198,0.22381376,-0.36329344,-0.12459951],[-0.018098533,1.1626849,7.7763515,0.3133824,-0.5978771,-0.6280122,-0.19266517,0.024776168,0.88816226,0.1488128,-0.4072811,0.8084272,0.2971273,-0.16158436,-0.36504307,-0.34449837,-0.5314731,-0.119041726],[0.12846576,-0.35670948,0.013853135,-0.075688206,0.18726085,-1.3245617,0.4279662,0.061345413,-0.11054695,-0.14311172,-0.0014835523,0.022838874,-0.11576593,0.39926448,-0.14371544,0.15646,0.11126016,0.03145696],[-0.31940654,0.05947834,-1.0866358,0.5663338,0.448577,-0.43552175,0.23205471,-0.35897624,-0.33488578,0.52830327,-0.011136929,-0.5225207,-0.56818086,0.44197837,0.20225807,0.1941536,-0.29525572,0.063295834]],"activation":"σ"},{"dense_2_W":[[-0.086325355,0.8016826,0.24832225,0.47240105,-0.46999067,0.6068118,-0.14119844],[-0.5582966,0.27016947,0.4639829,0.59999377,-0.37201896,0.7842096,0.28597522],[-0.27619955,-0.5730724,0.12383269,-0.3039288,0.123326324,-0.649525,-0.17117126],[1.4408953,-0.55869764,0.48217335,-0.18616202,1.0840948,0.16935517,-1.398959],[-0.66845334,-0.04818159,-0.3074986,-0.14507903,-0.382395,-0.22019714,-0.91304696],[-0.26608887,-0.5060071,-0.97440034,-0.35025296,0.8698175,-1.1775255,-0.030318461],[0.10986321,-0.8288251,-0.44233164,-0.3325045,0.2556111,-0.43471605,-0.35890812],[-0.1694278,0.047042966,-0.050367933,0.055317376,0.088589475,0.6182619,0.57370675],[0.93917805,-0.7993694,-0.21087216,-0.54964507,-0.060357884,-0.63951623,-0.236041],[0.40430954,-0.37087506,0.17056553,-0.9355302,0.12229527,-0.18960477,-0.10435068],[-0.05200265,-0.4987538,-0.31892672,-0.6532706,-0.6485076,-0.49172983,-0.77469736],[0.03723317,-0.48895985,-1.6575545,-0.027954731,0.53395647,-0.40768418,-0.80457896],[0.83523464,-0.9624459,0.10569231,-0.15287304,-0.58598167,-0.73237014,-0.28460762]],"activation":"σ","dense_2_b":[[0.02828117],[-0.05488203],[-0.27607742],[0.3004205],[-0.25380412],[-0.24068235],[-0.21541698],[-0.01097173],[0.21617699],[-0.081049286],[-0.12033645],[0.026889555],[0.32255155]]},{"dense_3_W":[[0.61514294,0.52475756,-0.3778977,-0.5686912,-0.56705767,-0.29328373,-0.14644307,0.5718381,-0.41984692,-0.19014074,-0.59977704,-0.64661556,-0.06085831],[-0.004403978,0.6136505,0.26742232,-0.14778873,0.28366107,0.0020191541,-0.17208292,0.33170637,-0.48983493,-0.3504383,0.26020375,0.0004651127,-0.8777239],[-0.25540027,-0.14768086,0.0147348475,0.34739557,-0.5552034,0.33083212,-0.25017375,-0.46695128,0.2878471,0.41177458,0.16511062,-0.06707549,0.49898487]],"activation":"identity","dense_3_b":[[0.062096752],[0.050615054],[-0.043884374]]},{"dense_4_W":[[-0.82545334,-0.75625134,0.20575939]],"dense_4_b":[[-0.053638227]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json deleted file mode 100644 index 99ea2be6bf..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.147084],[1.086054],[0.37127572],[0.041630004],[1.0729798],[1.0772483],[1.0815692],[1.0805902],[1.0708296],[1.0535992],[1.0337878],[0.041566238],[0.041577842],[0.041586876],[0.04155611],[0.04150528],[0.041361168],[0.041143257]],"model_test_loss":0.0067100683227181435,"input_size":18,"current_date_and_time":"2023-08-09_08-07-39","input_mean":[[24.872166],[0.003932426],[-0.010966269],[-0.008132051],[0.0087015005],[0.0073090056],[0.0060250014],[0.0013043662],[0.0013662752],[0.0015136959],[0.0025651027],[-0.00813054],[-0.008112211],[-0.008098942],[-0.008128093],[-0.008089364],[-0.008116192],[-0.0082015265]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.9054255],[-0.28507137],[1.4240875],[0.02306676],[1.52593],[0.051342566],[-0.1610418]],"dense_1_W":[[-1.2814169,0.04502527,-0.24452247,-0.04534104,-0.22521678,0.12426732,-0.5100604,-0.1931805,-0.1757783,-0.71891594,0.26680607,0.33749202,-0.23968601,-0.4898723,0.4347295,-0.16316435,0.25191417,-0.040637583],[0.026426677,-0.5180133,-0.054280188,0.2787388,0.11506753,-0.7289032,1.0191976,-0.20389938,-0.12718956,-0.012505079,0.11661954,-0.20947376,-0.33647072,0.08544779,0.09467619,0.33146363,-0.09642059,-0.12805226],[0.4297043,-0.01532184,0.17760155,-0.11004306,-0.32989568,1.2537458,-0.2505036,-0.0105941985,-0.011504197,0.4410887,0.0021856735,-0.005641636,0.29666585,-0.013274171,-0.13881417,-0.022560775,-0.034353882,-0.016772056],[0.115859054,-0.69582313,0.008139212,0.10011219,0.35110396,-0.4720546,0.5779868,-0.2903919,-0.21940863,0.0279369,0.17058563,-0.69917786,0.3002438,0.18366155,0.35467052,0.10840391,-0.17159945,0.018160818],[0.22031884,-0.7193572,-0.18843435,0.09803419,0.3082459,-0.81420296,0.3980327,-0.044523235,0.05807009,-0.26365182,-0.07507196,-0.40902695,-0.13396262,0.41380468,0.18925877,-0.30483818,0.19883342,0.001749679],[0.17746796,0.81731343,-0.008930264,-0.34225407,-0.5971375,0.803859,-0.56055987,0.22442165,0.043888506,-0.28582388,0.07147745,0.6224109,0.025271881,-0.21175076,-0.3498934,0.1339036,-0.2896505,0.22109397],[-0.045657806,-0.7590582,-6.4479246,-0.38063437,0.36719322,0.23610972,-0.21581803,-0.29967567,-0.2673017,-0.34047002,0.9861421,-0.6061893,-0.1955559,0.54208314,0.6973659,0.06787787,0.08896528,-0.23932248]],"activation":"σ"},{"dense_2_W":[[-0.20833433,0.61933535,-0.800919,0.22723371,-0.090565115,-0.7945698,-0.13987784],[0.28559738,0.26079953,-0.15632679,-0.12129952,-0.289886,-0.21938595,-0.14360459],[0.95100516,0.07814724,0.0031976546,-0.75894195,-0.94153005,-0.7928424,-1.4411982],[-0.42705938,-0.8987026,0.06752999,-0.8046098,-0.51792544,-0.42536137,0.09767677],[0.19683614,-0.36086804,-0.014388864,-0.76707953,-0.8514832,0.26960486,-0.21758303],[-0.17587733,-0.5193636,-0.13756172,-0.44829637,-0.65762174,0.29082942,-0.008277407],[-0.3183399,-0.1665803,1.2876375,-0.0728533,0.30167028,1.2605048,-0.57462007],[0.3546879,0.35146946,-0.56283337,0.6228679,0.5594427,-0.19124825,-0.5252673],[-0.00087872695,-0.73673224,0.26480362,-0.72668016,-0.4297641,0.3408679,0.43822297],[-0.6492434,-0.5402448,-0.056282554,-0.08095678,-0.24393153,-0.7988477,-0.1693451],[-0.47922924,0.30153432,-0.7007562,0.39001682,0.10440299,-0.5656516,0.30876267],[0.9030477,-0.75241685,0.30403712,-1.1863935,-1.5607433,-0.5210042,-1.2099376],[0.09520087,-0.024397036,1.1286579,-0.4269453,0.06613633,1.022576,-0.42460024]],"activation":"σ","dense_2_b":[[0.068604216],[-0.07214453],[-0.23128065],[-0.11810941],[-0.113441095],[-0.066630945],[0.14084376],[-0.0044738725],[-0.22459178],[-0.2939405],[-0.04563305],[-0.05732056],[0.122370996]]},{"dense_3_W":[[0.37704808,0.6223934,-0.46660277,0.2654992,0.20017228,-0.33366653,-0.24672645,-0.32106653,0.56422967,-0.13366485,0.15189694,-0.2369768,-0.14679962],[-0.733396,-0.48898083,-0.3152747,0.08094783,0.33034948,0.599701,-0.27930403,-0.5709238,0.5841461,-0.06343237,-0.35778514,0.12911445,0.2698867],[-0.030497754,0.38693696,0.59045714,0.39527935,0.27385178,0.100422375,0.50604045,-0.398048,-0.12326097,0.0054453975,-0.7562181,0.5377892,0.3636564]],"activation":"identity","dense_3_b":[[0.038279504],[-0.05277531],[-0.07727225]]},{"dense_4_W":[[-0.21258786,0.8358761,1.1302456]],"dense_4_b":[[-0.062789865]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json deleted file mode 100644 index 2541918644..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.006951],[1.0661907],[0.4208536],[0.040620446],[1.0632395],[1.063527],[1.0637337],[1.0418845],[1.0213413],[0.9960982],[0.9659563],[0.04054981],[0.04057159],[0.04058309],[0.04049591],[0.040372174],[0.04013236],[0.039733175]],"model_test_loss":0.014225631952285767,"input_size":18,"current_date_and_time":"2023-08-09_14-33-01","input_mean":[[25.177166],[-0.026529262],[0.009477891],[0.0017629279],[-0.028283715],[-0.027773762],[-0.02699433],[-0.023891538],[-0.02269541],[-0.020438392],[-0.017402157],[0.0018114187],[0.0018036948],[0.0017961235],[0.0018093524],[0.0017814242],[0.0017387652],[0.0016870175]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.3488934],[-0.25318402],[1.3796363],[-2.4763696],[0.17862964],[-2.581063],[0.0374099]],"dense_1_W":[[-1.9565458,0.43680963,0.06587548,0.042409927,0.3682261,-0.32550198,0.3935391,0.34101823,-0.19819863,-0.09118507,0.072811775,-0.55412966,0.22973019,0.5704431,0.10271992,0.10906355,0.18409586,-0.25245637],[0.010017396,-0.23327492,-0.025723774,-0.06732227,-0.1377613,-0.9790948,1.1363516,-0.004057807,-0.09313964,0.054035064,-0.04986635,-0.6889519,-0.43221784,0.85702723,0.469375,0.3359073,0.1845464,-0.47437343],[2.133775,0.8436303,0.06543569,-0.19301523,0.7682015,-0.71488863,0.44514364,0.121126205,-0.5451813,-0.23265283,0.36209187,-0.10944904,-0.10013678,0.8461928,0.47840348,-0.4829053,-0.15971945,0.19538315],[-0.762671,0.8158483,0.11918508,0.11182312,0.045061667,0.5209565,-0.017836645,0.19029039,0.05993828,0.14132203,-0.14783566,0.21835268,-0.37212574,0.021008398,-0.07471657,0.23310561,0.30849415,-0.32095852],[0.012362058,1.1697396,4.896626,-0.6752607,-1.293956,-0.6969285,-1.2943544,0.48185518,1.9836872,0.80383307,-0.67689174,1.464715,1.0810806,-0.6226654,0.5317476,-0.97188056,-0.93535984,-0.07797605],[-0.76108575,-0.96115094,-0.12517042,-0.023074046,0.21048824,-1.0002247,0.1298013,0.017577004,-0.04171292,-0.13762209,0.09954114,-0.4320813,0.051972903,0.5637555,-0.20373943,-0.0645255,-0.17654338,0.17915705],[0.012589448,-1.178468,0.16960609,-0.042218912,-0.313776,-1.1033659,-0.3083642,0.04046465,-0.69654006,-0.5194823,0.22638294,-0.115158446,0.1719876,0.6620813,-0.27977157,-0.6041283,-0.16925894,0.5477763]],"activation":"σ"},{"dense_2_W":[[0.2714706,0.59053195,-0.0041459124,-0.41285,-0.3072934,0.30405983,0.29765671],[-0.05261304,0.61104286,0.083263226,-0.2729422,-0.15758975,0.3245751,0.08180204],[0.11750135,-0.9169556,0.16402717,-0.47221494,0.013237812,-0.9444454,0.07540947],[0.14767434,-0.2879568,-0.23108272,0.41553706,-0.022354566,-0.7293346,-0.44255376],[0.30335668,0.37456387,0.3885767,-0.7781797,0.03455829,0.701339,-0.088443086],[-0.1726601,-0.85276175,-0.42082515,1.3459167,0.014372793,-1.1087767,0.25560606],[-0.22434108,-0.61502177,-0.77391124,0.58211446,0.70793843,-0.44423535,-0.10059737],[-0.24011742,-1.1389203,0.13803475,0.5802644,0.4245233,-0.4964158,-0.06763477],[0.17082813,0.26018152,0.2441558,-0.798921,-0.34764507,0.53820854,0.4687339],[-0.142942,0.1200522,-0.2755005,-0.44287127,0.12139864,0.7061747,0.30685058],[0.26870826,0.27511376,0.013270598,-0.38270554,-0.25317055,0.5880916,0.38201085],[-0.51288533,-0.74000406,0.041218568,0.23942995,-0.61270565,-0.35922202,-0.41015244],[-0.31531772,-0.6721873,-0.0041211997,0.44185337,0.094147496,-0.532301,-0.09608283]],"activation":"σ","dense_2_b":[[-0.13420725],[-0.006237683],[-0.29298192],[-0.16996942],[-0.24118775],[0.39525142],[0.12012915],[0.079633266],[-0.14625302],[0.017826455],[-0.25199854],[0.08497193],[0.11287382]]},{"dense_3_W":[[0.3236856,-0.11585646,0.37450194,-0.3883134,-0.12542132,0.117089026,-0.33960536,-0.51633084,0.15317307,-0.46796653,0.22769703,0.14106414,0.37199378],[-0.46536645,-0.21581124,0.21901791,0.11581306,0.0037904275,0.20201044,0.76395154,0.2692143,-0.08054871,0.3889979,0.13807094,0.58494323,0.6641779],[-0.31520608,-0.5903212,-0.0585899,0.1499463,-0.49658206,0.3555356,0.734374,0.46968886,-0.6641194,-0.6121126,-0.57470906,0.48789984,0.46722496]],"activation":"identity","dense_3_b":[[-0.010275512],[-0.05716576],[-0.03483528]]},{"dense_4_W":[[0.05533481,0.9485316,1.0639691]],"dense_4_b":[[-0.04380799]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json deleted file mode 100644 index 4912d86a06..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.48588],[0.9537726],[0.36582693],[0.043554034],[0.9464909],[0.94813603],[0.94916946],[0.9368726],[0.9235678],[0.90086037],[0.8777369],[0.043447778],[0.043471374],[0.043487635],[0.043498106],[0.043457054],[0.043319046],[0.043142088]],"model_test_loss":0.01665860041975975,"input_size":18,"current_date_and_time":"2023-08-09_17-03-58","input_mean":[[23.708097],[0.018138325],[0.0074228332],[-0.009125995],[0.016877966],[0.01722217],[0.017804503],[0.01873034],[0.018360198],[0.018759517],[0.02228655],[-0.009105863],[-0.009100863],[-0.0090915],[-0.009066759],[-0.009038707],[-0.009013525],[-0.008991696]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.010409239],[-0.0048437957],[1.1988333],[-0.13476348],[1.4858104],[-0.794262],[0.6790735]],"dense_1_W":[[-0.011625103,-0.3083069,-0.0026562517,8.90253e-5,0.24631822,-1.1913638,0.82102,-0.11153706,0.1505958,0.2899964,-0.27461168,-0.49880293,0.04710429,0.29354858,0.416012,-0.3435446,0.19979279,-0.12608024],[5.6495715e-5,0.28144145,0.42635885,-0.04114077,-0.0014621562,0.46131748,-0.5228703,0.41057003,0.33081797,0.34625557,-1.0916862,0.09432066,0.32492688,-0.056624148,-0.040471476,-0.5424953,-0.0072112447,0.28388345],[1.7090412,0.2002619,0.0026196167,0.26699355,0.071899444,0.049739193,0.1701057,0.42871216,-0.038330317,-0.011365764,-0.23889059,0.12167451,-0.393932,0.3747686,0.00017281089,-0.1975879,0.026008612,0.12001063],[0.0018485491,-1.0713278,-4.8827915,0.26486492,2.050632,0.16912486,-0.06104053,-0.11624062,-1.6869881,-1.0038092,1.237583,-0.84136367,-0.39167315,-0.30604422,0.44892347,0.5669582,0.034259807,0.35163558],[1.7980721,-0.4584174,-0.0022513545,-0.6307025,-0.14997724,0.72365683,-0.91590655,-0.31521827,0.11314583,0.38106278,-0.00602411,0.21668813,0.43501985,-0.45246387,-0.009387444,0.23703502,-0.14703332,0.0099657895],[-0.1358725,0.54878175,-0.0025949588,-0.12666118,-0.19501363,0.654152,-0.16454516,-0.08546684,0.1169596,0.49080434,-0.3239291,0.35493678,-0.10910667,-0.33374792,-0.24709627,0.114444494,0.27612403,-0.06697925],[0.13420698,0.50657654,-0.0042069573,0.045988888,-0.07106984,0.9937608,-0.6856747,-0.032089513,0.21678452,0.25315955,-0.18009213,0.6731982,-0.321046,-0.5262044,0.0499083,-0.21319143,-0.17084885,0.3188954]],"activation":"σ"},{"dense_2_W":[[-0.7456634,0.46501774,-0.6609165,-0.36825928,0.34470782,0.37473607,0.32698643],[0.8138239,-0.2721878,0.23626322,0.42493615,-0.49122226,0.11831825,-0.0014772185],[0.9073058,-0.24231595,-0.6257176,0.3009464,-0.9984163,-0.84967256,-0.9688514],[0.81139743,-0.3589047,-0.25483748,-0.008724137,-0.30143958,-0.55920064,-0.75189996],[1.2769561,-0.19255519,-0.5588862,0.4862281,-1.1403346,-0.9804591,-1.1165341],[-0.31463045,0.45179945,-0.24287948,-0.6230109,0.25823897,0.7043701,-0.22927245],[-1.008901,0.50820404,-0.73319477,-0.07753135,-0.3671213,0.6114657,0.06207998],[-0.5402591,-0.8133519,0.14899945,0.07088945,0.031132944,-0.13568036,-0.49520075],[-1.6630762,-0.06750191,-1.6710929,-0.14377673,-0.8075217,1.4285947,0.8853607],[-0.3978325,-0.20129038,-0.3479711,0.023103444,0.37153137,-0.3815196,-0.2664648],[0.22289358,0.35865685,-0.7157779,-0.28774455,-1.0286486,-1.0144361,-1.3272792],[1.084518,-0.7375414,0.45458505,-0.07111571,-0.6131045,0.0032512164,-0.5619188],[-1.4050175,0.33980614,-1.1927856,-0.46912205,-0.58342016,1.0496932,0.6457101]],"activation":"σ","dense_2_b":[[-0.06799501],[-0.14373808],[-0.1901882],[-0.15265658],[-0.22159524],[-0.07163111],[-0.12828404],[-0.37175685],[-0.48142236],[-0.34072894],[-0.10627754],[-0.048601486],[-0.29759893]]},{"dense_3_W":[[-0.04726544,-0.39426312,0.30152455,-0.13302766,0.118110485,-0.14255127,0.5374407,-0.020599457,-0.16083333,-0.14201048,0.047239352,0.38325223,0.15821639],[0.4946483,-0.34571862,-0.5582076,-0.5775158,-0.840619,0.24489452,0.33843094,-0.5029043,0.61864847,0.53716034,-0.54293144,-0.5770566,0.804303],[-0.68038666,0.06468416,0.5824173,0.06446385,0.5888793,-0.19427243,-0.3311894,-0.6022182,-0.77085805,0.42349538,0.5826747,0.58117974,-0.21141453]],"activation":"identity","dense_3_b":[[0.032147415],[0.045437515],[-0.028842183]]},{"dense_4_W":[[0.17054327,0.9154161,-0.7712217]],"dense_4_b":[[0.034591846]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json deleted file mode 100644 index 91785773f8..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.469403],[0.5752973],[0.3025814],[0.027512576],[0.5745247],[0.5751064],[0.57497597],[0.56818837],[0.55998725],[0.5523634],[0.5432058],[0.027730573],[0.027652828],[0.027584106],[0.027332576],[0.027187975],[0.026960261],[0.026921367]],"model_test_loss":0.024072762578725815,"input_size":18,"current_date_and_time":"2024-01-04_17-43-34","input_mean":[[22.35999],[-0.30513376],[-0.05278297],[-0.015512917],[-0.29194897],[-0.29571798],[-0.29988596],[-0.3178012],[-0.32379964],[-0.33275104],[-0.33721825],[-0.015199247],[-0.015290173],[-0.015389486],[-0.015867714],[-0.016179392],[-0.016556518],[-0.016847862]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.3300024],[3.4020867],[0.8867904],[0.24398735],[-0.22297323],[0.8297959],[4.4060645]],"dense_1_W":[[0.5586716,0.19477035,0.014838485,-0.8819099,0.8490799,-0.8849248,0.5430739,-1.2464411,0.1032794,-0.35215527,-0.1541876,-0.6031729,-0.34809163,0.021685746,0.171801,0.17438643,0.7795394,0.71163744],[0.0023543302,-1.4088361,-0.20021366,-0.037758816,1.9830067,0.13815653,0.86535054,-0.81385386,-3.3036325,-2.9394522,-0.69543415,-0.6041395,-0.37588012,0.68224555,0.7861614,0.19097735,-0.9865116,0.3145854],[-0.960537,0.2949049,0.020091651,-0.9853115,0.6460172,-0.8868847,0.69357425,-1.453919,0.09689657,-0.20516564,-0.45445403,-0.76455826,-0.76449543,0.06314495,-0.06493274,0.81162876,0.80799454,0.93353367],[0.3291335,-1.8058063,0.01374078,-0.79195046,-0.45958978,1.0171918,-0.52610767,1.2541785,0.7763023,0.06388108,-1.230813,0.19347882,0.075406365,-0.97705686,-0.21693136,0.102006726,0.69212055,0.98111564],[0.0072148344,-1.9069422,-0.00010727675,-0.4882408,0.6680689,1.1360449,-1.0022873,1.2947347,0.35052946,0.3640997,0.37955928,0.14649878,-0.31742507,-0.044465248,-0.06055242,-0.45532945,-0.09595856,0.4186969],[0.0056863213,-0.29262394,-5.1591883,-0.6082099,0.6530366,0.81221175,1.3255913,0.12576282,-0.105110295,-0.79566103,-1.1739684,0.063307,0.035404827,0.27293137,0.11892293,-0.79880846,0.38751557,0.14072612],[-1.0780617,-1.3712662,-0.9741798,-0.5754835,0.35970378,-0.29184532,0.54759485,-0.5236218,-2.1269052,-2.3032513,-3.4586606,0.7505796,1.1786144,1.1765167,0.273957,-1.19514,-1.5335932,-1.8808447]],"activation":"σ"},{"dense_2_W":[[0.13640141,0.26249138,1.3706881,-0.67349094,-0.6853489,0.07761523,-0.20782757],[-1.561812,-1.1158333,0.45575863,0.05350467,0.11361368,-0.84576166,-1.5393691],[-0.4932355,0.23465966,-0.7953872,0.5806595,0.67311335,0.007322937,0.17559592],[0.34134263,-0.056415536,0.15007868,-0.3607064,-0.7849791,0.21608916,0.113307916],[0.2992458,0.18675353,0.43198323,-0.9817767,-0.78184605,0.17114773,-0.009282266],[-0.279027,-1.2797687,0.3050861,1.4301388,1.1050543,-0.32616624,-0.35091028],[-0.9362512,-0.41732854,-0.20699288,0.58766145,0.99819213,0.18219909,-0.1769925],[-0.9172841,-1.057063,-0.8472072,0.4978657,-0.025878131,0.62177205,-0.30631492],[0.51108074,-0.37056863,0.90701807,-0.3689084,-0.59172076,0.35379598,0.026690245],[-0.31872204,0.09643645,-0.40120426,0.73168164,0.033515673,-0.08508878,0.86411595],[-2.030154,0.4349391,0.9615393,-1.0150082,-0.7122496,-1.0493598,0.27227473],[-1.1227299,-1.6187482,0.22539543,-0.07183943,0.5167592,-0.097296976,-1.2421465],[0.6432161,0.38064235,-2.9676967,-1.1754779,0.1922527,-0.79099226,-1.7507246]],"activation":"σ","dense_2_b":[[0.34029007],[0.15721829],[-0.38075104],[-0.022835307],[0.00043023936],[-0.104654595],[0.06738647],[-0.010813514],[0.15167741],[-0.121652484],[-0.005833656],[0.0061091785],[0.4982022]]},{"dense_3_W":[[-0.20176695,-0.10482956,0.25416008,0.59829456,0.5850189,0.2088624,0.37909675,-0.19094692,-0.40086383,0.12073893,0.56499076,-0.039211515,-0.3167774],[-0.48269215,0.7165856,0.27029762,0.21725719,0.28123355,0.24939528,-0.3724709,-0.31746587,-0.2978945,-0.17932776,0.5278354,-0.41470852,0.3494488],[-0.87803674,0.67124027,0.37053418,-0.45549104,-0.4890647,0.6881532,0.6495497,0.535685,-0.80503774,0.42973304,0.5072987,0.4061022,-0.72803205]],"activation":"identity","dense_3_b":[[-0.055526532],[0.13907385],[-0.050069362]]},{"dense_4_W":[[0.043956995,0.018560354,0.78419465]],"dense_4_b":[[-0.034510687]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json deleted file mode 100644 index 3cb6a37b14..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.853577],[1.1593435],[0.49393934],[0.047530506],[1.1528559],[1.1569644],[1.1598135],[1.1245039],[1.0973833],[1.0626532],[1.0269637],[0.047361173],[0.047408417],[0.047455847],[0.047535572],[0.047536217],[0.04739956],[0.04713172]],"model_test_loss":0.017221078276634216,"input_size":18,"current_date_and_time":"2023-08-09_18-22-21","input_mean":[[23.515398],[0.012237509],[-0.0044900486],[-0.010730645],[0.013944725],[0.013308859],[0.012569497],[0.011769375],[0.010604365],[0.010843918],[0.011256869],[-0.0107458485],[-0.010734076],[-0.010720637],[-0.010731344],[-0.01076948],[-0.010765305],[-0.01082986]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.199587],[-0.25501987],[-0.5037064],[-0.23722672],[0.22343779],[0.14423445],[-0.07885718]],"dense_1_W":[[1.2625326,0.16327555,0.0066552805,0.44784018,-0.124741316,0.79189295,-0.37784576,0.21143824,-0.52783173,-0.20586084,0.23246923,0.1308419,0.11561832,-0.55449927,-0.11027749,-0.18869302,-0.2170536,0.08424656],[-0.006859232,-0.086538136,-0.03269977,0.13604829,0.24823508,-0.5691345,0.670277,0.040435724,-0.16860203,-0.41622674,0.25470176,0.02203289,-0.23012973,0.39989966,-0.47250885,-0.10986197,0.20646292,0.02149021],[1.3279617,0.25124303,-0.007813492,-0.72305727,0.06114258,-0.8571762,0.063125186,-0.25974143,0.4144009,0.60714114,-0.46617725,-0.2852775,-0.0355692,0.5701069,0.69028735,0.27851647,-0.26454824,0.07074926],[0.022198461,1.6731384,0.037180465,0.765974,0.030372338,-0.7625096,2.1497931,-1.2226309,-1.9869789,-0.91440254,0.9935744,-0.3478071,0.53434056,-0.08860992,-0.28544557,-0.29930937,-0.5889199,0.4349971],[0.2660301,-0.86187685,8.6956774e-5,-0.016676437,-0.3185729,-0.8080561,1.0541335,0.12288944,0.1756726,-0.14763017,-0.09342803,0.17633434,-0.24657024,-0.3275839,0.37692598,0.048297286,0.19601016,-0.20960684],[0.15503937,0.78893465,-0.0035333869,-0.0016546088,0.18449067,0.46749434,-0.7731415,0.33954102,-0.035273015,-0.3853616,0.23819815,0.34393597,-0.057135757,0.15562473,-0.3307375,-0.28002447,-0.14485608,0.3072072],[-0.002361901,-1.5429035,-5.8346395,0.50011724,0.42428496,0.7945255,0.49649864,0.34323424,-0.9758048,-0.9413602,0.64176863,-0.59547406,-0.009193582,-0.36598718,0.48848686,-0.27432454,0.047451578,0.28842512]],"activation":"σ"},{"dense_2_W":[[0.46865103,-0.60989743,-0.03747131,-0.39046776,-0.057409145,-0.39815053,-0.59903854],[0.3293413,0.5657211,0.58408237,0.09847331,0.6722225,-0.5966699,0.43323725],[-1.1938511,0.3152245,-0.7231345,0.36246085,0.17062272,-0.9542798,0.42241877],[0.95589864,-0.5171128,-0.20689346,-0.2149552,-0.17504925,1.4507052,-0.458539],[0.6998986,-0.5149185,-0.41500762,-0.34256452,-0.59194785,0.68115014,0.022985162],[-0.58739376,0.5298398,0.35696748,-0.09943707,1.0701959,-0.8042608,-0.25183183],[-1.7204717,-0.5559019,-0.9794375,-2.4412615,0.009480803,-0.2547261,0.2289718],[0.6462851,-0.7868944,-0.9317859,-0.62466663,-0.11116908,0.48139545,-0.1042982],[0.7837947,-0.31750438,-0.61143816,-0.53003997,-0.8487594,0.52839005,0.071558826],[-0.6952866,-1.0207022,-0.8329126,-0.23308934,-0.103428386,0.37906075,-0.95636684],[-0.4912487,0.16609176,0.38974765,0.5311249,0.8187408,-0.9927307,-0.1320584],[-0.50672543,0.5862622,-0.2999275,-0.0069663594,0.18914229,-1.3985909,0.35376993],[-0.8134264,0.55566525,0.6216377,0.7941298,0.6479907,-1.2260833,-0.31804174]],"activation":"σ","dense_2_b":[[-0.19038986],[-0.16041437],[-0.5408977],[0.30586013],[0.085234426],[-0.10838832],[0.22506814],[0.0007744643],[0.13522272],[0.03689445],[-0.13003486],[-0.27763245],[-0.092821054]]},{"dense_3_W":[[-0.65185815,0.54327095,0.10433931,-0.116812855,-0.55839425,0.6606599,-0.59668356,-0.1460392,-0.4181811,-0.8674938,0.51525503,-0.23707807,0.29755294],[-0.09864905,-0.65130895,-0.7366327,0.44178113,0.7440715,-0.18855122,0.5229587,0.648026,0.7389669,0.58856255,-0.29644322,-0.56690645,-0.47691458],[-0.028702423,-0.025029318,0.3560928,0.08559789,-0.5590178,-0.21502936,0.4283347,0.14829901,0.15673526,-0.36272648,-0.21479517,0.23683308,0.39158282]],"activation":"identity","dense_3_b":[[-0.08270337],[-0.04420589],[-0.00881405]]},{"dense_4_W":[[-0.259468,1.106187,0.007629875]],"dense_4_b":[[-0.03991197]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json deleted file mode 100644 index bda8ada35f..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.1377034],[1.0210788],[0.46911943],[0.04458394],[1.0146378],[1.0170907],[1.0187873],[0.99643576],[0.977885],[0.9539401],[0.9314358],[0.0443801],[0.044420015],[0.04446651],[0.04452825],[0.04450817],[0.04427827],[0.04390146]],"model_test_loss":0.016026578843593597,"input_size":18,"current_date_and_time":"2023-08-09_19-14-34","input_mean":[[26.721071],[0.05378143],[0.018124493],[-0.007393202],[0.048810303],[0.050282035],[0.052012227],[0.057080623],[0.05906103],[0.058861],[0.05875214],[-0.0075229136],[-0.0075009223],[-0.007483631],[-0.0074706767],[-0.0074925683],[-0.0075200107],[-0.0076175835]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.18089767],[0.49798125],[-0.24118638],[-2.1373975],[-0.16477053],[0.34568876],[-0.21016233]],"dense_1_W":[[0.074662894,-0.3669638,0.25222635,0.107843496,-0.10552656,-1.0399265,1.0163934,-0.48659247,-0.030600587,-0.11743266,0.14577629,-0.25742808,0.3170169,0.36954135,0.040227413,0.15968736,0.062263597,0.24831484],[0.08303395,-0.8697939,0.0030468423,0.15263641,0.107188724,-1.0068568,0.4416236,0.036292315,0.7619705,0.1695332,-0.57831824,-0.2111467,0.11940522,-0.041054823,0.35764664,-0.47026095,-0.069946416,0.27341142],[0.048043054,-0.31118855,-0.008299072,-0.11476858,0.33377898,-1.0105896,0.36259222,0.2396159,0.20328248,-0.12248921,-0.12638399,-0.4566413,0.09750506,0.07093791,0.55933607,0.010423586,0.10305094,-0.16882543],[-0.2943162,-1.6256222,0.0030186898,0.4355704,-0.11311622,-0.18757336,0.59179604,0.19876327,0.081539884,0.15316048,-0.29308975,-0.78554755,0.11605082,0.106179096,0.4265695,-0.16271093,0.005539031,0.02609059],[0.07329607,-0.8092628,0.25480765,0.29808077,-0.0061037876,0.42461434,-1.7734524,0.8508979,0.86776084,-0.23827028,-0.3394005,0.49403337,0.00061965705,-0.28957158,0.25209922,-0.109510385,0.030290708,0.40608874],[0.039265428,0.96887267,6.0339727,-0.10146958,-0.4268955,-0.99481356,-1.3445842,0.73430777,1.103279,1.2262536,-0.9347754,0.7603965,0.27957165,-0.72691447,0.079958566,0.21448162,-0.6384232,-0.037277497],[0.0016329347,0.16354942,0.002987302,-0.052555222,-0.22473752,-0.5058604,0.6229535,-0.047164608,-0.5693476,-0.26495168,0.29653648,-0.5010037,-0.11219094,0.25223202,0.52381283,0.6169986,0.023134451,-0.33158067]],"activation":"σ"},{"dense_2_W":[[-0.7412992,-0.7675937,-0.4397283,0.31320858,0.5621121,0.53991586,-0.35282382],[0.39020097,0.14299431,0.11215057,0.1305876,-0.9580759,-0.42531374,1.1606607],[-0.68442714,-0.5091107,-0.2732925,0.038994852,0.16016693,0.084352866,-0.40752736],[-0.3638797,-0.5586708,0.12934496,-0.89443725,0.3385314,-0.49931,-0.49778506],[0.15667213,0.2869896,0.11566534,0.8353921,-0.8303651,-0.67806315,0.37547386],[-0.44675717,-0.89146745,-0.51320916,-0.8497574,0.53292394,-0.22540878,0.27044648],[0.31874314,0.7925137,0.691313,0.43609503,-1.0456865,-0.121448435,0.54489106],[0.70710474,0.8615981,0.37050986,0.17309327,-1.0366682,-0.033383362,0.64695203],[-0.56060874,-0.75052696,-0.23543693,-0.5132341,0.22080141,0.1704808,0.16872974],[1.0095209,0.8009594,0.5537545,0.8833569,-1.1999682,0.31028512,0.18520752],[-0.9428297,-0.37537527,-0.59236115,0.33072037,0.26682293,0.41685763,-0.0841698],[-0.24776414,-0.16537917,-0.06624358,-0.47923082,-0.06637364,0.113684684,-0.5439529],[-0.83423465,0.46298993,-0.27318522,0.014554697,-0.37881574,-0.9102047,-0.4330378]],"activation":"σ","dense_2_b":[[-0.052797712],[-0.087834224],[0.14800552],[0.15060428],[-0.11083593],[0.17317224],[-0.16887216],[-0.27164057],[0.14738622],[-0.7614823],[0.007635959],[0.1378371],[-0.66434515]]},{"dense_3_W":[[0.36896288,-0.490786,0.16599391,0.47720614,-0.30545673,0.7379879,0.013581132,-0.32646582,0.558891,0.18879382,-0.37756246,-0.1875126,-0.124775544],[0.18666591,0.5846334,-0.10136687,-0.7394393,-0.2828246,-0.08108596,0.39981124,0.20680344,-0.37288138,0.27750582,-0.11473721,-0.57098895,0.4266538],[0.7361726,-0.58514285,0.7204545,0.106599934,-0.59268904,0.5647647,-0.45099103,-0.6198126,0.68592227,-0.25746143,0.43516034,0.27023137,0.36228538]],"activation":"identity","dense_3_b":[[-0.09970351],[-0.0810631],[0.07066309]]},{"dense_4_W":[[0.09306378,-0.5163019,0.9577329]],"dense_4_b":[[0.07198106]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json deleted file mode 100644 index 1464ff4dfa..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json +++ /dev/null @@ -1 +0,0 @@ -{"test_dict":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.68026423,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6623511,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.7894848,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.45772332,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.033177804,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8652633,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.72988725,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.33481875,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.6028637,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.6341075,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.35337192,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5604581,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.49662757,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8983778,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8291683,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.21059237,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.3554733,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.61752445,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.008872215,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.82794446,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.722765,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.58601475,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.6585865,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.3415729,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7593987,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2533843,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.36514503,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9955126,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9061998,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5863995,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.70988524,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9357347,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.40801805,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.7080684,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8582784,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.051181857,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.32222438,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.68954885,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.81613845,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5503567,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.95135486,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.38768044,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.121791795,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.60388947,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.58747494,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.460676,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.07276039,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.7868223,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.45431036,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8425848,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.09901318,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.26556718,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.51706076,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.22000633,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.08331953,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.4225998,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.20729552,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.21171938,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8852378,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9542402,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.2908706,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.33962357,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.587801,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.40549684,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.13055985,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.93948686,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1222087,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.2840799,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.41804174,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8638405,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.3479214,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1160183,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.4250751,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.37797537,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.74481004,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0012709,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5549363,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.013350483,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.59705853,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.32066464,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1208482},"input_std":[[4.758569],[0.7551621],[1.1411846],[0.024509063],[0.7418195],[0.74795926],[0.75277853],[0.7348531],[0.7328033],[0.7360365],[0.73419976],[0.024163457],[0.02427521],[0.024369553],[0.024361141],[0.024596939],[0.02470201],[0.024847152]],"model_test_loss":0.011168484576046467,"input_size":18,"current_date_and_time":"2023-07-16_15-31-09","input_mean":[[24.214306],[-0.068722084],[0.13368857],[-0.012954545],[-0.0908967],[-0.08666857],[-0.07849512],[-0.042653743],[-0.027166469],[-0.009568535],[-0.001553267],[-0.013330359],[-0.013247636],[-0.013182787],[-0.013015977],[-0.013002344],[-0.012768261],[-0.012813394]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"test_dict_zero_bias":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.63145995,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6819694,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8772025,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.55443954,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.024535596,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7776458,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.82169604,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.32655615,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.52833325,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.60248363,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.2712959,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.61627734,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.57438755,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8270569,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.89278406,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2993996,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.39583528,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.6871477,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.0012517273,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9093442,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.70719516,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.61919284,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.6058605,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.38305718,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7314606,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.31522623,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.31417722,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.94576484,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8632306,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.50871336,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.66870224,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0360692,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.3741793,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.7720997,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7928454,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.09808446,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.31983182,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.63806283,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.88232887,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.60230434,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.874546,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.34882647,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.10547972,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.52212185,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.51409614,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.55887365,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.08741653,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8739745,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.42246366,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8930687,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.060002506,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.3024186,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.59369165,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.28634965,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.12954244,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.48957476,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.29448348,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.23015675,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.81391317,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0366076,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.26818705,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.34778464,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6359127,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.3900602,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.09257127,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0405408,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0238359,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.27612492,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.38687146,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.77963734,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.26859418,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0187957,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.4089293,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.38123727,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.83644295,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9439602,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.60338587,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.04257779,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.5176249,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.38916177,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0254881},"layers":[{"dense_1_b":[[-0.39623764],[0.14138116],[-0.2588534],[0.44002953],[0.22150832],[-1.471221],[1.091665]],"dense_1_W":[[-1.3643335,-0.39512777,0.49481088,-0.160357,-0.11053611,0.5127148,1.944503,-0.519241,-0.1717221,-2.2519088,0.85069805,0.16777276,0.046915065,0.07825442,-0.19920808,-0.093078785,0.22527768,-0.015349518],[0.07033132,-1.2395316,-0.015185883,0.049182996,-0.8706203,0.08936256,1.192001,0.73432046,-1.0403839,-0.99523735,0.18716313,-0.46670943,0.36377695,-0.06476297,0.29031602,-0.046463974,-0.0934093,-0.027420614],[0.036429238,0.25500375,-0.050834823,0.007870147,0.013165975,-0.2152336,-0.50505584,-0.57315665,0.43266997,0.2960198,-0.2809415,-0.16854034,-0.22267757,0.38213494,-0.32983685,0.22851394,-0.1784995,0.29428333],[0.031305227,-1.7722394,0.0051150094,-0.2393632,-0.429712,0.9946768,0.57891685,0.84168047,0.44816926,-1.2334055,0.5619671,0.3394732,-0.09925409,0.1931788,-0.7158236,-0.64525104,-0.15853617,0.7985537],[1.4468489,-0.79758126,-0.5674579,-0.089146346,0.15503111,-0.050696775,-0.41808343,-0.9180651,1.1887319,0.7490674,0.2818292,-0.05504427,0.09847831,0.24017516,-0.100371055,-0.26661357,-0.015151299,0.14749247],[-0.011997275,-0.01629248,0.0023960476,0.46332273,1.1773943,0.047555875,-1.0831845,-1.1777227,0.50374424,0.94301,-0.43155685,1.6632808,1.0289724,1.3457992,-1.3981099,0.21298541,-1.3651799,0.4583753],[-0.012068792,0.6946306,7.008868,-0.38002566,-0.8078394,-1.8026941,-1.6721241,2.1546853,0.7563132,0.12844934,0.21244754,0.028632099,-0.13106985,-0.14665121,0.10708859,1.0625329,-0.18022399,-0.35517347]],"activation":"σ"},{"dense_2_W":[[-0.10200387,-0.76644456,-0.30197436,0.88119465,0.039803542,0.35588643,-0.11579556],[-0.4315598,-0.18163718,-0.8021966,0.3789305,-0.60908353,0.2092475,-0.15666024],[0.24648495,0.5248265,1.1183228,-0.54292357,0.37333378,-0.621473,-0.2185636],[-0.44479766,0.061370973,-0.80736274,-0.06727713,-0.03573045,0.4296817,-0.6225945],[0.7770457,0.870017,0.6628652,-1.3054526,-0.24000858,-0.5467027,-0.63892704],[0.6606621,0.5903391,0.74629235,-0.30811584,0.9074003,-0.25882754,-0.49689066],[-0.61885303,-0.27397686,-0.32425815,0.5231217,0.0016664385,0.029230833,0.36123073],[0.116919406,-0.080033116,-0.80068344,0.17488338,-0.59637207,-0.25136593,-0.052427128],[-0.6091415,0.036435083,-0.31513107,1.0636747,-0.8583667,-0.050638534,-0.42107514],[-0.688126,-0.28585485,-0.74282986,0.07060043,-0.11225189,0.10933011,0.1853165],[-0.02946559,0.42606872,0.8841502,-0.08186191,0.5265807,-0.48210683,-0.32932183],[-0.103848316,-0.44215712,-0.32014853,0.7133248,-0.46932107,-0.47233966,0.028100768],[0.2052363,-0.19803643,0.61784434,-0.6395137,0.54827636,0.16492388,-0.25312033]],"activation":"σ","dense_2_b":[[-0.04292812],[-0.0074691507],[0.02623448],[-0.12690178],[-0.127359],[-0.0627155],[0.03455701],[-0.020989824],[0.17505483],[-0.009170552],[0.047454033],[-0.009859283],[-0.08406351]]},{"dense_3_W":[[-0.101136126,0.2837724,0.069948,-0.07415262,0.34190154,0.24395382,-0.19586,0.41830686,-0.3893048,-0.19336349,-0.14812821,-0.107784435,0.22945514],[0.32129276,-0.047892366,-0.15199028,0.40463585,-0.2276267,-0.27818957,0.14533494,0.21502836,-0.4884599,0.10375174,-0.41882825,0.47495985,-0.23964486],[-0.33068216,-0.40646386,0.3537997,-0.28240827,0.695928,0.32007056,-0.27887765,-0.47764063,-0.44847566,-0.5544643,0.4358929,-0.68283004,0.16520141]],"activation":"identity","dense_3_b":[[0.017270878],[-0.049352214],[0.051928796]]},{"dense_4_W":[[-0.18483475,0.37186217,-0.97547895]],"dense_4_b":[[-0.04841734]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json deleted file mode 100644 index 4d77cc0389..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.8681383],[1.2917701],[0.42320544],[0.051469278],[1.2847253],[1.2883313],[1.2900517],[1.2667522],[1.242907],[1.2112364],[1.176482],[0.051301446],[0.051339414],[0.051366985],[0.05125917],[0.05098003],[0.05050668],[0.04989228]],"model_test_loss":0.022552745416760445,"input_size":18,"current_date_and_time":"2023-08-10_00-52-59","input_mean":[[25.508078],[0.034453202],[0.01726827],[0.00056943524],[0.031399224],[0.032966],[0.034444243],[0.04235863],[0.049242016],[0.057398297],[0.06200239],[0.0005415381],[0.000549214],[0.00055187126],[0.00063792604],[0.00062618323],[0.00070369913],[0.0007498945]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.107602455],[0.2592419],[-0.1010373],[0.34598154],[0.8561106],[-0.15246718],[0.9970168]],"dense_1_W":[[0.0071956124,-0.8389715,0.0016946977,0.37401447,-0.27382085,-0.5530695,0.5881284,0.12836976,-0.094520785,-0.060450573,-0.028743897,-0.04453258,-0.09910858,-0.051995493,0.017620616,-0.013560951,0.18469654,-0.013240006],[1.3669219,-0.2384396,0.08245142,0.14269358,0.22758602,-0.093947925,0.5673605,-0.045786478,0.036916874,0.38647193,-0.30818498,-0.4555334,0.29512686,-0.24807432,0.4348693,-0.34444955,-0.11027862,0.016942881],[0.013133192,-1.1178136,0.034996957,0.48028773,0.09731058,-0.693922,0.49429983,0.01820859,-0.037673093,-0.13616005,0.02270395,-0.69734114,-0.07626221,0.2784788,0.007214682,0.07223958,-0.011835337,-0.070404634],[0.0054024686,0.52874875,3.438241,-0.21533473,-2.068417,-1.530317,-2.6102667,-1.1109601,2.2420053,3.6071155,1.1157349,0.3809812,0.5365094,-0.52533704,0.02788547,0.4045346,0.24486302,-1.008144],[1.682156,-0.052193947,-0.09770653,-0.45150465,0.2333314,-0.5347695,0.09825678,-0.01992122,-0.1994097,0.116743915,0.16566196,0.20611681,0.6852969,-0.45614037,0.27821264,0.09751711,-0.02198396,0.04035941],[-0.002443684,-0.78855264,-0.014614094,-0.026071582,-0.10583151,-0.38199013,1.0572444,-0.18948583,-0.35938174,0.013804459,0.15949139,-0.7269957,-0.20543943,0.52785945,0.2962705,0.26196185,0.21384726,-0.39327204],[1.5940213,0.11492236,0.090780675,-0.32562405,-0.034105282,0.53610796,-0.4663451,0.38666242,-0.17008422,0.10295398,-0.2042109,0.31005463,-0.28528133,-0.21527892,0.22701246,0.018739212,-0.024669824,-0.04890493]],"activation":"σ"},{"dense_2_W":[[0.6139993,0.3757347,-0.1356616,0.085909925,-0.12511243,0.15788122,-0.031210706],[0.4353305,0.18801172,0.12204481,-0.118660524,0.31724608,0.7373148,-0.5507885],[-1.3431091,0.006327765,-0.48985648,1.2948128,-0.1034634,-0.6535869,1.5181615],[-0.89554805,-0.0707852,-0.38398325,-0.99453413,0.23394457,-1.3053,0.70568514],[-1.060718,-0.08779857,-0.34332564,0.93365616,-1.0663359,-1.5535986,0.9410223],[0.3106728,0.011034138,0.2690925,0.20874923,0.3430892,0.7928498,-0.7562942],[-0.9156255,-0.59965265,-0.23466443,1.0020962,-1.8364218,-1.0228359,1.0616008],[-0.6956375,-0.44040835,-1.0947623,0.5968099,-0.049048502,-1.2266653,1.1614286],[0.3183038,-0.35872775,0.13763095,-0.28848255,-0.050387893,0.39608815,-0.54269797],[0.5095539,-0.24931525,0.40140435,-0.27532217,0.13700272,0.57273823,-0.6925308],[-0.32013652,-3.1370046,-2.7840195,1.34559,-0.84404,-0.6845122,-0.5461476],[-0.72196037,0.038392793,0.057249792,-0.44615316,-0.0024790815,-1.1388366,0.36243963],[0.67724824,0.28425425,0.12925239,-0.22140531,0.5270677,0.15986088,-0.1314976]],"activation":"σ","dense_2_b":[[-0.14464946],[-0.15859996],[0.65735745],[0.28288272],[0.48416847],[-0.120317705],[0.17381315],[1.3373141],[-0.15882145],[-0.21813588],[1.288298],[-0.09495147],[-0.11485835]]},{"dense_3_W":[[0.52467114,0.573881,-0.37257165,-0.2885695,-0.73502827,0.5044393,-0.35882697,-0.32937768,0.40931723,0.33977678,-0.3444813,0.08750891,0.54127914],[0.0466505,0.44103855,0.41321534,0.5304071,-0.15150255,-0.293208,-0.13094401,0.05617865,-0.2815031,-0.25879386,0.09075154,0.71288633,-0.43692803],[-0.40456718,0.20321198,0.27640694,0.09131404,-0.27206296,-0.24663389,-0.60239804,-0.46262908,-0.07054595,-0.2889505,-0.20886894,-0.095937446,-0.075776964]],"activation":"identity","dense_3_b":[[-0.1063788],[0.09727621],[-0.08167072]]},{"dense_4_W":[[-1.0752603,0.4178708,-0.3472837]],"dense_4_b":[[0.10501918]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json deleted file mode 100644 index 0b9abe7fb6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[6.5132856],[1.3632272],[1.5413244],[0.03303396],[1.3259029],[1.3417274],[1.3554335],[1.3285728],[1.3114035],[1.2910824],[1.2723991],[0.03297938],[0.03299731],[0.033014063],[0.033058062],[0.033087354],[0.033028472],[0.032748375]],"model_test_loss":0.020962899550795555,"input_size":18,"current_date_and_time":"2023-09-02_21-03-03","input_mean":[[26.374321],[0.24099204],[0.0014719056],[-0.017563006],[0.24074426],[0.24266605],[0.2428761],[0.2323719],[0.23110531],[0.23507003],[0.24088627],[-0.017492866],[-0.01751848],[-0.017543415],[-0.01748686],[-0.01742368],[-0.017475272],[-0.01757139]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.079944834],[-0.3598381],[0.09434822],[-1.3233447],[0.1130735],[-0.45763284],[-0.6268566]],"dense_1_W":[[-0.073462725,-3.7294142,0.008516538,-0.1984018,0.6034948,1.8619602,2.1633458,-1.9060298,0.40978914,-0.37825182,0.611484,-0.36018258,0.27376932,0.3118703,0.036994077,0.21737134,-0.12771696,-0.040260702],[-0.20176645,0.57531285,-0.0084412275,-0.17881922,0.9809269,-0.16568676,-0.58166283,-0.1486564,0.70059836,-0.29893303,0.21570963,0.3508427,-0.3873581,0.06504418,-0.021596037,0.23897065,-0.22310819,0.10423835],[-0.06450743,-0.7734916,-7.4385157,0.34980673,2.380512,3.2428308,3.075309,-3.6599858,-2.5296397,-0.5446167,-0.94137996,-0.59157187,-0.07057616,0.11925076,0.08353299,0.38889635,-0.23567261,-0.1015343],[-0.28985357,-1.5797744,0.0060979226,-0.031419355,-0.400295,0.3806542,0.11740358,-0.0064864187,-0.12764077,-0.04428382,-0.07560065,0.17292799,0.12330137,-0.27197468,0.29182738,-0.2540429,0.13684034,-0.04889033],[-0.07832161,2.1902764,0.030133046,-0.30596706,-0.7210498,0.027130641,0.6432982,-0.046274744,-0.5472184,0.70929205,-0.24650635,0.53280306,-0.48029587,0.12250029,-0.11553079,-0.13253216,-0.029158924,0.18207467],[-2.8597453,-0.43466172,-0.18268725,-0.060400605,0.28060955,-0.18074062,-0.6875857,-0.38406757,-0.37214103,-0.9286758,-0.38446707,0.15134443,0.054654,0.48821846,-0.004988523,0.06868294,-0.033809625,-0.047231436],[-0.0017858031,-0.6662176,0.0051888903,-0.06294718,-0.90392506,-0.8541502,-0.16361657,0.08513459,-0.07875049,0.0790174,-0.13931915,0.0140639525,0.017838055,0.1625987,0.25675306,0.18861753,-0.18611054,-0.059609663]],"activation":"σ"},{"dense_2_W":[[-0.6968983,0.27608687,0.10406441,-0.024237338,-0.42272064,-0.013714595,-0.54531485],[-0.67445093,0.32921025,0.36817434,0.06642965,-0.042997025,-0.32730803,-0.5889611],[-0.340392,-0.03912806,0.46399808,-0.4680018,-0.49668282,0.16590515,0.21437873],[-0.46547934,0.07344197,-0.12238069,-0.0253223,0.49247265,-0.25569054,-0.57428217],[0.41493058,-0.27931592,-0.089011,0.08059608,-0.5250433,0.09186349,0.07772292],[-0.3727222,-0.15556182,0.3317168,-0.14912905,-0.17529897,0.48200855,0.6279147],[-0.31705967,0.10656132,0.34339988,-0.63882726,0.055984847,0.45991278,-0.6692897],[0.15874985,-0.119392134,-0.19742353,-0.60957354,0.18357219,0.28318337,-0.25417072],[-0.37113652,0.43916598,0.27193624,-0.520228,-0.2144683,0.3655652,-0.53570765],[0.83260417,-1.699712,2.6747808,1.3270547,-0.96657324,0.093039535,-0.45796528],[0.45241207,0.39900452,-0.50378394,-0.20505324,0.45373067,-0.19082053,-0.22071704],[-0.5270052,0.45971948,0.3313946,-0.29207435,0.1978061,0.19034018,-0.23600237],[0.9750541,-0.7961233,-0.0005789574,1.0066968,-0.9369118,0.042760722,0.18730567]],"activation":"σ","dense_2_b":[[-0.20384558],[-0.20811413],[-0.0037139736],[0.023454173],[-0.015772115],[-0.0065609645],[0.0068738465],[0.009471401],[0.003985857],[-0.9329477],[0.010725975],[-0.013339677],[-0.2815146]]},{"dense_3_W":[[-0.4011974,-0.33610415,0.13164108,0.33895674,0.06529623,-0.1580419,0.26291764,-0.24552977,-0.3933592,0.13941231,-0.35621086,0.5489147,-0.086336456],[0.1649218,-0.31881985,-0.48512995,0.2596072,-0.5807467,-0.19014847,0.5032025,-0.22611593,0.22070079,-0.30926946,0.35143164,0.12860067,0.1903238],[0.17895938,0.46517286,0.3067372,-0.06601107,-0.3844143,-0.499728,0.46086124,0.58410454,0.52920264,-0.4394692,0.23419406,0.01974897,-0.5022407]],"activation":"identity","dense_3_b":[[-0.0035552178],[-0.0043843286],[-0.0047028256]]},{"dense_4_W":[[0.80738455,0.86131907,1.2868857]],"dense_4_b":[[-0.0045010163]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json deleted file mode 100644 index b4ce6b0baa..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json +++ /dev/null @@ -1 +0,0 @@ -{"test_dict":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5380118,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5668384,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.49744788,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1069546,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.022589128,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.87991786,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3465033,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.35901418,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.74537796,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0467105,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.40654802,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.22541186,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.39508894,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.5349423,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3032231,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.09337339,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.43609616,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.187037,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.03238472,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3256767,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2560252,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.269817,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.90431225,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.39230934,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.3635288,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.9773381,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.329567,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3380291,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.2777746,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.82472456,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7643237,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3661834,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.849533,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.1835219,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2257897,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.032864716,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.32149622,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.88784707,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.523679,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.157843,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.81264627,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.847208,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.5404857,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2102542,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2051469,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.146302,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.4661444,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.49748513,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0818156,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3345778,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.347531,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.8679907,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.29394773,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.09643532,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.19364843,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1680533,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.17557147,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.21844473,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.50774,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3670707,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.40873116,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.35878894,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.60975885,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.55742276,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.505599,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3681715,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.5387529,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.35331953,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.60687315,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.86639714,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.27491,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.5394888,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.7878668,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5126742,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3503757,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.439768,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5785763,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.010508742,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2693633,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.8410233,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.5314865},"input_std":[[7.989791],[0.7320975],[0.5846287],[0.035815567],[0.7283375],[0.7326722],[0.7346924],[0.7248922],[0.73135966],[0.7329609],[0.7217711],[0.03612053],[0.036042064],[0.035952937],[0.035485364],[0.03517163],[0.034833923],[0.034284007]],"model_test_loss":0.008391334675252438,"input_size":18,"current_date_and_time":"2023-07-16_20-00-17","input_mean":[[20.655447],[0.024584128],[-0.044770714],[-0.0072627976],[0.031237675],[0.029807081],[0.028027987],[0.009196148],[0.008076342],[-0.0015783679],[-0.0010444114],[-0.0072330763],[-0.0072172945],[-0.0072000716],[-0.007262945],[-0.0073047676],[-0.007441227],[-0.0077096256]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"test_dict_zero_bias":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.39948598,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6295606,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.65359616,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.2675315,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.061416015,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.76222944,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.4814665,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.33280456,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5849962,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0883316,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.20698664,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.33144438,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5527949,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.402524,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1805307,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.094053596,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5350164,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.342611,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.12336916,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.4533029,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2709537,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.2863967,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.85154873,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.55498785,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2663321,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.8637229,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.23138924,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3381034,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3081448,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.69880867,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7338842,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.5125997,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.74419975,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3198262,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.1027677,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.11119664,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.21705788,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8385861,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5986935,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0079983,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.70014787,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.80401677,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.49810106,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.066942,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0737326,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.2979757,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.56554705,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6396831,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.9987763,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3704159,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.17107952,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.89600575,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.48579958,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.18861425,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.36363924,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.3085387,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.048344463,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.3228795,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.3889711,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.5090332,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.35560045,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.45501107,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.70604444,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.50033605,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.37736052,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.5132567,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.4097024,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.40884608,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5351974,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7473452,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.13379052,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.409246,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.7862364,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5806613,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.5019659,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.348442,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.69009113,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.08894949,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.1496372,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.9766548,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.4074421},"layers":[{"dense_1_b":[[1.2601088],[0.50795346],[-0.32973284],[-0.4278964],[-1.3286078],[0.99765503],[0.4339966]],"dense_1_W":[[0.39427435,1.5991782,0.0038050977,0.05548223,-0.04591027,-0.2224138,-0.627583,1.6541553,-0.17021364,0.0030925316,-0.277334,0.016327249,0.38390467,-0.043327343,-0.3199062,-0.24170461,-0.03311468,0.21610846],[2.0976179,-0.39388067,-0.02243466,-0.058260668,1.7147076,0.66427886,-0.5170263,-0.5367035,-0.5689552,0.20077214,0.29552126,-0.1721181,-0.46311033,-0.34615812,-0.0888081,-0.18715298,0.16055387,-0.35338402],[-1.5097122,0.621122,-0.105104305,-0.18648383,1.1042429,0.77002937,-0.6538228,-0.44171673,-1.0661969,-0.14405254,-0.44617876,0.24370627,-0.19782393,0.19933222,-0.35169846,0.094613805,0.40841854,-0.25420657],[-0.009321846,1.7888899,5.6288323,-0.05019591,-1.6935351,-1.3057272,-1.5961826,1.3134946,0.88433415,1.1306716,-0.14263214,-0.25278306,0.2156381,-0.15768535,0.17491388,0.10185023,-0.057640597,-0.037920576],[-0.6545767,-0.7725577,-0.043511603,0.39719597,0.44334525,-0.29454172,1.1796441,-0.43937585,-0.008846232,0.3591864,-0.6636783,-0.19979312,0.10855517,0.07740657,-0.16985726,-0.3615132,0.19928159,0.004342849],[0.43667847,-1.4340503,0.0061377757,0.02465778,-0.0052791275,-0.21163116,0.3254924,-0.83517593,0.3075678,-0.17314681,0.21212056,-0.5718453,0.25654393,0.030458353,0.27716112,0.18619251,-0.166307,-0.07792453],[0.6207286,-0.74188787,0.0014747722,0.19179606,0.21235986,0.023669226,1.3397173,-1.0746361,-0.6413778,0.07621638,0.2610392,-0.14456956,0.40803775,-0.25941938,0.1692598,-0.019315228,0.32499546,-0.2848976]],"activation":"σ"},{"dense_2_W":[[0.5846105,-1.1216323,0.012021069,0.519304,-1.2193648,-1.2420696,-0.9293579],[0.31864703,-0.029731255,0.39742234,0.43330926,-0.8345377,-0.45988193,-0.52471954],[-0.48068455,-0.14217594,-0.052064557,-0.05625134,0.531164,0.07339243,0.5302106],[-0.046448767,0.46001384,0.3322486,0.16847979,-0.012636936,-0.58880013,-0.039295547],[0.12264031,1.0059353,-0.25489268,-1.3256443,-1.3072578,-1.6475178,-0.24379867],[0.31735018,-0.26441798,-0.47050726,-0.44442534,0.295501,0.37262294,-0.3538891],[-0.16229963,-0.6157792,-0.3740346,0.06780694,0.21299857,-0.38519585,-0.64304954],[-0.57181144,0.0069005713,0.3935489,-0.05499202,0.48840258,0.091699615,-0.16876978],[-0.5405887,0.3622075,-0.65014505,-0.45285606,-0.744763,-0.6536307,-0.75167125],[-0.78169376,-0.41184205,-0.33792898,-0.32395944,-0.017056243,0.4648398,0.5686303],[0.75694907,-0.031489003,0.5235601,-0.03767089,-1.0404472,-0.4519171,-0.42058164],[0.7886114,0.5415332,0.15376541,0.5960243,-0.46606156,-0.8066629,-0.5520896],[-0.71171945,-0.42530975,-0.26570597,-0.23765114,0.702833,0.00345897,0.07370162]],"activation":"σ","dense_2_b":[[0.25844958],[-0.08529898],[-0.009525728],[-0.06614882],[-0.35542876],[0.0096092895],[-0.21220195],[-0.0058748396],[-0.17085731],[0.029518519],[-0.0972837],[0.04010498],[-0.0016747463]]},{"dense_3_W":[[-0.18374792,-0.50147384,-0.49204373,-0.5885765,0.39067307,0.540897,0.4194,0.56657135,0.32507578,0.05896129,-0.2124288,0.12981957,0.57857627],[-0.47317266,-0.6505695,0.60085654,-0.061350014,-0.4325399,-0.13409662,-0.28602767,-0.07301156,-0.21435276,0.73678,-0.27858484,-0.6291994,0.7327412],[-0.33367744,0.4530852,0.011034279,-0.47386295,-0.26150367,0.42310083,0.4337839,0.22710037,-0.19489768,0.16766186,0.013165514,0.4446457,0.35002133]],"activation":"identity","dense_3_b":[[0.026227264],[0.040914938],[0.029111717]]},{"dense_4_W":[[-0.19691564,-1.2166661,-0.37322426]],"dense_4_b":[[-0.03747132]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json deleted file mode 100644 index a4416943e7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.8827505],[0.8142013],[0.43200606],[0.0335122],[0.8031897],[0.80755675],[0.8117341],[0.7966046],[0.78498024],[0.76929677],[0.7570983],[0.033453178],[0.033477545],[0.033494856],[0.033401415],[0.033346288],[0.033206854],[0.033045664]],"model_test_loss":0.014859683811664581,"input_size":18,"current_date_and_time":"2023-08-10_08-29-12","input_mean":[[21.130602],[-0.03657342],[-0.007161284],[-0.014905003],[-0.031632286],[-0.032585967],[-0.03383271],[-0.03620179],[-0.033439096],[-0.028820572],[-0.025867859],[-0.014983235],[-0.014939225],[-0.014891624],[-0.014817177],[-0.014846561],[-0.014888054],[-0.015024225]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.058770206],[-0.4304619],[-0.95764273],[0.9789649],[0.3071246],[-1.0843322],[0.29053277]],"dense_1_W":[[1.1150838,0.26620921,0.25107178,0.17738831,-0.023969606,-0.25568375,0.642087,-0.07235758,0.50214267,0.158553,-0.09377773,-0.22190028,-0.2522553,0.41755903,-0.18087326,0.00043216505,0.30621696,-0.21445055],[0.015974922,-0.84892243,-5.3681054,-0.050087623,-0.2124193,-0.42669013,-0.114291534,-0.23167059,0.030389197,0.10423019,0.94438344,-0.23461752,-0.038574662,0.0118201375,0.1480159,0.12792908,-0.10750315,0.12776713],[-0.5820234,-0.46031782,-0.16132316,-0.0877754,0.45185134,-1.3221487,0.9612837,-0.026405975,-0.2516217,-0.06304958,-0.007870968,-0.45073366,0.26110536,0.3053481,0.032379672,0.058629666,-0.16963068,0.04947794],[0.55877084,0.8845751,0.083844095,-0.5641011,-0.32626018,0.87646186,0.018245557,0.0067298566,0.19446261,-0.108108655,-0.006403946,0.045923747,-0.2118138,0.297809,0.30262896,-0.26306453,0.10386135,0.05455493],[1.2901627,-0.3996759,-0.28787684,0.18365255,0.053760547,0.09131756,-0.5133632,0.09711644,-0.6057078,-0.13895018,0.07327148,0.005111278,-0.07828046,-0.12552834,0.103638284,-0.18598253,0.030758386,0.011194429],[-0.4342015,0.51031667,0.1613037,-0.030471211,-0.47826028,0.91528296,-0.59053975,0.06803067,0.2916587,0.011835373,-0.01411119,0.39738727,-0.3548122,0.093028545,-0.5990489,0.45427456,0.20879458,-0.16441117],[0.24265775,-0.87913877,-0.073302165,0.13811685,0.17514472,-0.79730994,0.32166055,-0.056882083,-0.15787257,-0.026820026,0.09571887,-0.09280119,-0.31957984,0.5578229,-0.14536849,0.12825605,0.16227205,-0.22222283]],"activation":"σ"},{"dense_2_W":[[0.4287232,0.05141774,0.08859513,0.16694608,-0.25920102,-0.2550965,0.045888633],[-0.9586875,0.465085,-1.0644909,0.51924497,0.9285218,0.19630893,-0.8210365],[0.9428464,1.0110649,0.0912787,0.45720592,0.062315438,0.06551054,0.21646087],[-0.07554614,-0.20435923,1.3854393,-0.21705866,0.371234,-0.29250124,0.62470865],[-1.2622341,-2.4971948,0.16009766,-0.7064093,-1.3925549,0.670143,-0.65157413],[-0.2641713,0.1407864,-0.7451972,0.05855014,0.46847665,0.5723797,-0.2294421],[-0.2798032,-0.28557223,-0.9484105,0.7195964,0.5352625,1.0608548,-0.7886381],[0.85884315,0.05392705,0.63131255,-0.55358535,-0.62303364,-0.9995628,0.95493674],[-0.25178987,-0.46490377,-0.7359025,0.15180402,0.27750358,1.2637253,-1.2951062],[-0.16450088,-1.0085304,-0.35299447,-0.53890646,-0.97189784,0.22255774,-0.34916818],[0.017366037,-0.47484067,-0.9362656,0.73510003,0.57900065,1.098403,-0.34750253],[1.0237606,1.1220717,0.5213622,0.46244594,0.1062727,-0.8956484,0.4866493],[-0.54411316,-0.14556162,-0.49516523,-0.41195434,-0.012445791,0.29190034,0.08672975]],"activation":"σ","dense_2_b":[[-0.14722908],[0.09051571],[0.0073402002],[0.049312294],[-0.10615275],[-0.09993395],[0.14013591],[-0.09219207],[-0.04097555],[-0.44420165],[0.23860474],[0.12013257],[-0.11851125]]},{"dense_3_W":[[0.012701052,-0.76359975,-0.11508211,0.8544662,-0.78156996,-0.3141182,-0.53640413,0.8538724,-0.2971632,-0.16812785,-0.5316125,0.75913155,-0.26657495],[0.2436656,-0.53503543,-0.0021990442,0.45916784,-0.1381139,0.4441993,-0.05345697,-0.33151543,0.0037798227,-0.5038917,-0.15709756,0.02627418,0.5737324],[0.004380816,-0.7665436,0.4899415,0.62682587,-0.6219003,-0.4759317,-0.62745434,0.6913393,-0.47453716,0.23334874,-0.62208974,0.22364703,-0.43715024]],"activation":"identity","dense_3_b":[[0.13937238],[-0.015101592],[0.007283584]]},{"dense_4_W":[[-0.5961717,-0.32134253,-0.7058984]],"dense_4_b":[[0.008483538]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json deleted file mode 100644 index 4f65316dce..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.094625],[0.9343503],[0.47275993],[0.039587528],[0.91534966],[0.92308986],[0.92961305],[0.9121938],[0.894315],[0.8712891],[0.84302557],[0.039629184],[0.03963656],[0.039634563],[0.039580777],[0.03957161],[0.039473023],[0.039480753]],"model_test_loss":0.010150332003831863,"input_size":18,"current_date_and_time":"2023-08-10_11-03-32","input_mean":[[21.930943],[-0.009137672],[0.004150357],[0.006063881],[-0.012747505],[-0.012902961],[-0.012921325],[-0.0107959015],[-0.009959326],[-0.007661503],[-0.0022189163],[0.005970253],[0.0059734355],[0.005978737],[0.0060841083],[0.0061559486],[0.006342566],[0.006470583]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.0016042],[0.30121937],[0.5243282],[-0.37925154],[0.09780045],[-1.280653],[0.939577]],"dense_1_W":[[1.9456844,-0.23871988,-0.00096057716,-0.120664135,0.6110457,0.9801692,-0.49786648,-0.3335355,-0.16192155,0.2149353,0.18063189,-0.060477342,0.32169268,-0.21911122,-0.31224453,-0.06690952,-0.348577,0.2574717],[0.8044473,0.40910536,-0.00077739207,-0.1332547,-0.44118187,0.09815779,-1.422512,-0.1586437,0.00079494115,-0.27336416,0.036574032,0.10625827,0.2505548,-0.37372994,0.04841167,0.24479657,-0.18796268,0.14709403],[-1.9839507,-0.07971294,0.0019432222,-0.1465764,0.47511905,1.4785819,-0.6126462,-0.8653647,-0.006930718,-0.05133041,0.4208154,0.3623695,-0.07688759,-0.46326146,0.049198236,-0.29932696,-0.10871309,0.13249245],[-0.01090139,1.4570909,2.8342102,-0.48148742,0.35504207,0.8265004,0.22427893,-0.44684047,0.87371486,0.41123086,0.05926164,-0.3498932,-0.20314151,-0.4126248,0.6597188,0.18670116,-0.13712086,0.04479702],[-0.017381541,-0.7597381,-3.9741704,0.966278,-0.8725842,-1.0976232,1.3351153,0.36389372,0.6396286,-0.28108513,0.5655249,-0.3259955,0.2685084,0.3538014,-0.99265057,0.0020220215,0.08644423,-0.016739462],[-0.4040077,1.5493203,-0.0015337409,-0.057152465,-0.4507684,1.1744777,-0.84242934,0.26143765,0.5450927,-0.16338348,-0.12852266,-0.04006952,0.61630785,-0.35684994,-0.26787806,-0.173013,0.1754258,-0.055330947],[0.14463891,1.3947294,0.0005817746,-0.11709302,-0.47823873,0.9985025,-0.5435925,0.28843075,0.4257345,-0.07990765,-0.15169789,0.049027964,0.32417342,-0.14295861,-0.21804018,-0.1728184,0.25523916,-0.118601166]],"activation":"σ"},{"dense_2_W":[[-0.13598546,0.48721725,-0.8770504,-0.10435272,1.2942611,-0.6188507,-0.77000535],[0.2963742,-0.06368987,-0.6158674,0.5706844,-0.62964815,-0.6725343,-0.70922905],[-0.65155697,-0.40622166,0.22409256,-0.5447109,0.30369374,-0.6313153,-0.47783092],[-0.25578108,-0.23481992,0.6473863,-0.4388097,-0.16786619,-0.24785686,0.13121009],[-0.7862219,-0.51441395,0.14683217,0.16958761,0.822131,-0.8929698,-0.9890509],[-0.11013757,0.13794002,-0.2200882,-0.5511851,-0.7512739,-0.34854394,-0.20708162],[-0.26325488,-0.068378806,0.30052987,0.44717714,-0.19997324,0.36592284,0.37900636],[-0.56599057,-0.20042972,-0.51274085,0.27466905,0.329293,-0.9691359,-0.2049081],[-0.084157735,-0.6273445,0.22159277,-0.27066445,-0.27510265,-0.6879669,-0.9523734],[0.40842152,0.49088025,0.24065876,0.17004599,-0.26951402,0.06465446,0.33384213],[0.5391135,-0.5008811,0.4018758,0.16503108,-0.49227586,0.34286293,-0.2673176],[0.031132208,0.06428439,-0.086133376,0.35238424,-0.34203455,0.54796845,0.7357129],[0.060671475,0.49638665,0.6812915,-0.52441,0.41805837,0.5390166,-0.07453658]],"activation":"σ","dense_2_b":[[1.0358273],[-0.024130732],[0.059400935],[-0.027526159],[0.09260186],[-0.20580374],[-0.062025692],[0.39389342],[0.077137515],[-0.09825774],[-0.051716425],[-0.084061615],[-0.025274398]]},{"dense_3_W":[[-0.14006962,0.5902041,0.18080363,0.48413566,0.33100846,-0.11978409,-0.63116825,-0.13776208,0.29580384,-0.17148037,0.22820434,-0.15557605,0.31175599],[0.37938893,-0.13863787,0.45991153,-0.014412937,0.30609646,-0.023109397,-0.64584565,0.093050435,0.42860112,-0.40409505,-0.398128,-0.640976,-0.17863272],[-0.34660983,-0.50709665,-0.55247855,0.5898295,-0.4875454,-0.35633042,-0.19656834,-0.66706467,-0.4074692,-0.3361508,0.117474474,-0.3539698,0.6108807]],"activation":"identity","dense_3_b":[[-0.022861203],[-0.014076285],[0.034564495]]},{"dense_4_W":[[-0.60573244,-0.98281205,0.80961186]],"dense_4_b":[[0.019623742]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json deleted file mode 100644 index 74f3bb7e63..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[11.005025],[0.97968346],[0.50101554],[0.038736638],[0.9587485],[0.9655901],[0.971756],[0.95295596],[0.9315219],[0.90679765],[0.8827432],[0.038590446],[0.03862441],[0.03865234],[0.03871767],[0.038792223],[0.03873497],[0.03861525]],"model_test_loss":0.010799731127917767,"input_size":18,"current_date_and_time":"2023-08-10_12-21-52","input_mean":[[22.878464],[0.031642012],[0.0168804],[0.009622783],[0.030209461],[0.030093499],[0.03104034],[0.038059395],[0.040959135],[0.040258918],[0.040640317],[0.009454411],[0.009486841],[0.009516454],[0.009592338],[0.009573765],[0.009518463],[0.009365908]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.1818612],[-0.09344887],[-1.8393922],[1.848314],[1.0065805],[-0.08666866],[0.7747504]],"dense_1_W":[[-0.8857707,1.5844063,-2.7639117,0.8296629,-1.5801734,-1.389664,0.6718809,0.21833602,-0.3579308,0.031948198,0.036747955,0.14046027,-0.10389215,0.24267684,-0.58785427,-0.29687718,-0.071204364,0.17921484],[-0.016061021,-0.8927914,0.0014837141,0.16529202,-0.31931162,-1.5972285,1.0674282,0.50527793,0.00036276158,0.6643216,-0.70242655,0.23176064,-0.23684219,0.020929113,0.18165103,0.2728483,-0.077427186,-0.028263727],[-1.1033577,-1.4215872,0.010086168,-0.17611827,0.2112764,-0.69066954,-0.083308466,0.15166493,-0.22307171,-0.075834244,0.035160135,-0.26813668,-0.31942832,0.5206709,0.05213391,0.1393356,0.24755146,-0.20669232],[0.83160627,-1.0528738,0.010402418,-0.8488269,-0.097700946,-0.8356935,-0.030544959,-0.045691635,-0.12981445,-0.22643599,0.08581046,-0.099290386,-0.0029221023,0.43224323,0.16066676,0.23335454,0.26151142,-0.19559892],[1.6938869,0.33258435,0.011718149,0.5278453,0.4084221,0.054189947,0.6158366,0.5923816,0.31159598,-0.19908112,0.0759474,0.18903963,-0.16102462,-0.31830838,0.122031696,-0.5454575,0.14843899,0.0009889763],[-0.18688406,-1.837496,-0.024467822,-0.18667667,1.5253651,-0.87217486,0.6304656,-0.3631879,-0.93472433,-0.4855514,0.8494961,-0.29013696,0.11480595,-0.046378586,0.04579505,0.6772069,0.030312326,-0.2840396],[0.5354849,-0.16436046,-2.2868845,0.9490928,-1.1401188,-1.6175885,2.1010857,-0.067001574,0.09170741,0.23366773,-0.13356704,-0.38347217,-0.17166469,0.5771494,-0.16453075,-0.5179118,-0.2526112,0.2366501]],"activation":"σ"},{"dense_2_W":[[0.33937505,-0.3745738,-0.9080001,-0.67459136,-0.22434857,-0.68243057,0.15986687],[-0.4707506,0.3539919,0.7182431,0.32069924,0.52431095,0.47054338,0.32751095],[-1.0941919,-0.02285758,-0.6026077,-0.6543617,-1.1643189,-0.40606982,-0.530394],[0.4252591,0.47353566,-0.49499482,0.49766955,0.9336523,0.4235022,0.91593933],[0.5621498,0.24484019,0.066795506,-0.39081028,-0.2126147,-0.17618422,0.08806277],[-0.21437049,-0.086400345,-0.70952827,0.24951175,0.2172522,-0.935455,0.3494222],[-0.027205786,-0.3861311,-0.329584,0.3939693,0.21568625,-0.037430923,-0.44425386],[-0.8316691,-0.6763449,0.074327685,-0.473199,-0.55408454,-0.17554076,0.10902519],[0.24072582,-0.45537603,-0.5833832,0.25576162,0.19144523,-0.66718787,-0.2368218],[0.9988664,-0.3536028,-0.28179932,0.7269398,1.1277015,0.6262987,0.9872559],[-0.081231736,0.76173663,0.36381385,-0.087001294,0.15438923,-0.6396298,0.33097985],[0.37046397,0.6737554,-0.0037287436,0.1967084,0.20252821,0.25889185,-0.26074913],[-0.50508755,0.007956352,-0.56175256,0.4734349,0.11897713,-0.8310094,0.056679618]],"activation":"σ","dense_2_b":[[0.40672347],[-0.15762824],[0.54028726],[-0.06825271],[-0.14409027],[-0.24412309],[0.13284369],[0.13380992],[0.3824313],[-0.10148208],[-0.16163772],[-0.21077214],[0.2533245]]},{"dense_3_W":[[-1.1355319,0.3370882,-1.0809343,0.49130934,0.20389263,-0.79736996,-0.023168638,-0.094694644,-0.6435565,-0.079334155,-0.31444725,-0.088145025,-0.46537364],[-0.7897674,0.58977884,-0.6444405,0.5475269,0.0090896,0.1407256,-0.40847594,-0.47964928,-0.5811728,0.7200515,0.37270215,0.26434785,-0.682192],[0.07739398,0.37235165,-0.6278828,-0.1572289,0.14061572,-0.46377057,-0.18825918,-0.50748676,-0.5449003,-0.11498902,-0.10287988,0.50479686,0.14272374]],"activation":"identity","dense_3_b":[[0.019560132],[-0.021147352],[0.01810392]]},{"dense_4_W":[[-0.44403714,-0.84635425,-0.24351013]],"dense_4_b":[[0.015087563]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json deleted file mode 100644 index bb2bce72c7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.758843],[1.3803611],[0.60948026],[0.045717984],[1.3632656],[1.3669009],[1.3716704],[1.3600131],[1.3428026],[1.3118118],[1.2692281],[0.04556848],[0.045585617],[0.045588113],[0.045418713],[0.04517924],[0.044783145],[0.04430147]],"model_test_loss":0.011302465572953224,"input_size":18,"current_date_and_time":"2023-08-10_14-53-35","input_mean":[[22.14633],[-0.09750815],[-0.016923292],[-0.008263297],[-0.09257404],[-0.093882],[-0.095394194],[-0.10115487],[-0.105775625],[-0.10726142],[-0.10426775],[-0.008418747],[-0.0083834],[-0.008342148],[-0.008217269],[-0.008256564],[-0.008261369],[-0.008310724]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.028778102],[-1.968203],[0.065823115],[1.8248968],[0.062292587],[-1.7103531],[-0.01996085]],"dense_1_W":[[0.0070845596,-0.60425925,0.13626827,0.58880633,-0.31271362,-0.61375195,0.66517067,0.22636458,-0.19881134,0.45755818,-0.34704024,-0.57213944,-0.011795754,-0.6249568,-0.1684797,0.32110855,-0.17260504,0.544297],[-0.728326,-0.6023388,-0.058824457,0.31488872,-0.22620982,-0.60898775,2.0038636,-0.3022711,-0.629738,0.02945903,0.13288042,-0.14117523,-0.017454179,-0.034289096,0.067219295,-0.25439438,-0.053118344,0.09879211],[-0.020241546,-0.32952714,0.010935147,0.13660449,0.22784045,0.9439816,-1.076848,0.3701509,0.02565278,-0.019304488,0.13404894,0.18276764,0.43549806,-0.29936683,-0.58802724,-0.17244393,0.059832945,0.14556362],[0.76759815,0.06043721,-0.05881449,0.0035122675,-0.10848625,0.052874193,0.8961308,-0.89096814,-0.38440028,-0.16148087,0.24437909,-0.3767321,0.020551253,0.5319493,-0.12341046,-0.055117548,-0.11515104,0.11642417],[0.035288017,-1.6319109,-6.531466,0.11385578,0.8703579,-0.2708121,0.03723273,0.90277404,-0.28877074,-0.044411846,0.10059958,-0.33312798,-0.5378801,0.12608767,0.355296,0.48987788,0.32266265,-0.3474462],[-0.7375854,0.057307318,0.058046028,0.19952175,0.46198282,0.466313,-1.1714203,-0.15773736,0.28007728,0.14972468,0.010271487,-0.10134099,0.1349294,-0.18732592,-0.0563053,0.050620757,0.048619322,-0.045900762],[-0.0032983767,-0.9483289,0.020740977,0.16430958,-0.05373888,-0.6577905,0.2967871,0.2897931,0.2731,-0.18671848,0.084359705,-0.005540786,-0.0081646815,0.12515508,-0.08342288,-0.052237507,0.26822442,-0.21108986]],"activation":"σ"},{"dense_2_W":[[-0.45338973,-0.20294967,0.5083342,-0.42460576,-0.63909435,0.4879755,0.012130023],[-0.2742753,-0.61631083,0.46697986,-0.45406902,-0.06088979,0.76950836,-0.4132321],[0.81678456,-1.1331547,0.32828367,-0.31268513,-0.8846842,0.6429822,-0.4893232],[0.879309,0.7746291,-0.6991977,-0.23530038,-0.67047966,-0.1361894,0.9743538],[0.31158212,-1.6510494,0.1974917,-0.33475468,-0.11659852,0.07471639,-0.0023190496],[-0.6007021,0.55620384,-0.050591104,0.6911001,0.50198555,-0.48155546,0.5246929],[-0.81362003,0.870096,-0.6034486,-1.8557204,-0.71382594,1.4265903,0.31279352],[0.6726662,0.87645346,-0.31120607,-0.057908148,-0.517195,-0.5856469,0.6892038],[-0.62789345,-0.81853545,0.31356138,-0.040097605,0.6366377,0.31337318,-0.79096055],[-0.7211644,1.0459608,0.061597116,0.3745668,0.37840834,-0.46162283,0.76644534],[0.3500098,1.3790991,-1.1291443,-0.20502144,0.2560334,0.01199343,-0.027191881],[0.65701747,-0.9248509,0.506126,-0.16672745,-0.42342398,-0.14072593,-0.6027308],[-0.67928207,-0.19559407,-0.040364254,-0.47893044,0.14672689,0.6760947,-0.5760793]],"activation":"σ","dense_2_b":[[-0.014492411],[0.07639171],[0.39956445],[-0.16650708],[-0.13319126],[-0.13508296],[-0.10059368],[-0.31607836],[-0.0461397],[-0.32838032],[-0.20038198],[0.037399642],[-0.039441753]]},{"dense_3_W":[[-0.33679157,-0.009600073,-0.9610766,0.7423044,-0.19008559,0.21044315,-0.7233725,-0.04264747,0.26311195,0.57560843,0.4490669,-0.4002034,-0.7852221],[0.4784453,0.67048156,0.70986277,-0.8041704,0.3298966,-0.34861046,0.2399805,-0.27719498,0.5779557,-0.22748941,-0.932461,0.3537534,0.24791418],[0.58087116,0.6521763,-0.35804045,-0.07539161,0.062361475,-0.29150185,0.23337866,-0.089632176,0.21668643,-0.28445706,-0.36395082,0.26074025,0.598436]],"activation":"identity","dense_3_b":[[-0.030428782],[-0.123883836],[-0.12339338]]},{"dense_4_W":[[-0.23482278,0.8056521,0.30850294]],"dense_4_b":[[-0.10144986]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json deleted file mode 100644 index f269e03b94..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.800139],[1.4024142],[0.64793754],[0.04852409],[1.3756377],[1.3851136],[1.3934203],[1.3648111],[1.3329811],[1.3011713],[1.2632433],[0.04835437],[0.04840405],[0.04844234],[0.048357654],[0.0482471],[0.047991928],[0.047582824]],"model_test_loss":0.007408012170344591,"input_size":18,"current_date_and_time":"2023-08-10_16-38-20","input_mean":[[23.81501],[-0.049737465],[-0.012033205],[-0.007154475],[-0.042333253],[-0.04411629],[-0.046351664],[-0.046337746],[-0.0452032],[-0.0461177],[-0.04440744],[-0.007060857],[-0.0070801843],[-0.0070975143],[-0.0070964643],[-0.007056378],[-0.0070534865],[-0.0071490407]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.14959592],[0.15145145],[-0.31445217],[-1.278996],[0.042432982],[1.5067866],[-0.032994382]],"dense_1_W":[[0.007527928,-0.5552118,-0.033658482,-0.098787725,0.07584574,-0.9390659,0.81876254,0.20194316,0.43864456,-0.4218525,-0.039264686,0.16177176,-0.3515836,0.20080848,0.34289953,-0.09344094,-0.35971025,0.22003576],[0.09012296,0.46685427,0.0064236997,0.18229099,0.07276261,0.7347331,-1.3846129,0.22982895,0.4774952,-0.22901195,-0.07560122,0.29164892,0.25852647,-0.08081211,-0.041323017,-0.22754644,-0.36422738,-0.012168264],[-0.007923612,1.5721923,7.249816,0.24075961,0.25590533,-0.088694036,-1.1871089,-0.96667105,0.9330669,0.98532987,-1.0378566,0.5749717,-0.40850392,0.24602483,-0.63786286,-0.6482208,-0.15704682,0.6276128],[-0.963277,0.03193962,0.017269593,0.57181937,0.88669837,0.27691013,-1.8479526,0.38129202,0.73344886,-0.16890727,-0.1942604,0.950727,0.9030019,0.033808593,-0.89199686,-0.8695169,-0.48222977,-0.1936048],[0.003948569,-0.6626056,-0.026783565,0.24455325,0.13850336,-0.87496305,0.30995417,-0.12258559,0.627965,0.28786364,-0.36571527,-0.14854349,-0.048926286,-0.03496435,0.18779114,-0.090603314,0.06736233,-0.109832205],[1.1487782,0.404077,-0.03660598,-0.08010621,0.22780214,0.27421752,-1.7048142,0.8248977,0.32876998,0.15378678,-0.34877867,-0.92275876,-0.83582413,-0.37334695,0.31583604,0.31877267,0.8586441,0.715129],[0.0010568867,1.0778173,0.04372921,0.6322534,-0.1799248,-0.3518717,1.8120258,-1.5917265,-0.8620765,-0.35745504,0.2233659,-0.0019629926,0.28671154,0.32253462,-0.85555124,-0.21950537,-0.112213776,0.2568781]],"activation":"σ"},{"dense_2_W":[[0.10897138,-0.723212,0.03340947,-0.38988578,-0.31490615,-0.007838475,0.05767578],[0.124002986,-0.47957873,-0.6278711,-0.20655042,-0.17151697,-0.8776442,-0.36946294],[0.34166458,-0.6827676,0.36771443,-0.24060813,0.34594595,-0.74794686,0.22926417],[0.017008245,0.19041075,0.084082685,0.081093706,0.4542936,0.10335207,0.25682083],[0.5069386,0.24292083,-0.4515972,-0.18613566,0.21341953,-0.4916771,0.5676118],[-0.79913807,0.49238104,0.19868188,0.75191754,-0.41708577,-0.453282,-0.456025],[0.25128815,-0.63992566,-0.4836454,-0.3934495,0.094238296,-0.68461305,0.33668476],[0.01528515,0.78505975,0.5019243,-0.31464717,-0.74084806,0.8338816,0.1128433],[-0.51994556,0.15239593,-0.07230343,0.24837533,-0.6899928,0.0865479,-0.539543],[0.2825089,-0.38502663,0.44325826,-0.430329,0.21890175,0.1125448,-0.37878212],[0.16606337,0.54976463,0.36211267,0.32275504,-0.48639286,-0.25836277,-0.336691],[-0.06592535,0.7600238,-0.17236032,0.496856,-0.6375664,0.18681967,-0.40907857],[-0.28911406,-0.26927066,-0.5852496,-0.33134258,0.08002008,-0.1575813,0.27370805]],"activation":"σ","dense_2_b":[[-0.35370803],[-0.20628847],[-0.111258335],[-0.1018301],[-0.056314364],[-0.092298076],[-0.07329908],[-0.023466475],[0.112976246],[-0.077543356],[-0.033790935],[0.04352653],[-0.080127224]]},{"dense_3_W":[[-0.50061566,0.29911298,0.27225292,0.13542368,0.36572888,-0.65222454,0.3313954,-0.33749554,-0.6381314,0.39514777,-0.084563196,-0.4374779,0.39208907],[-0.14953244,-0.20290117,-0.599371,-0.1296707,-0.32913446,-0.37221158,-0.29940695,-0.34908745,0.2913214,0.17797685,0.25834674,0.75962204,-0.38031256],[-0.59162396,0.6006983,-0.23583624,-0.18037513,-0.533629,0.23406217,0.08210266,0.45098656,-0.05068087,-0.46481112,0.37245923,-0.113958105,0.26854116]],"activation":"identity","dense_3_b":[[-0.058710456],[0.06673158],[0.06627157]]},{"dense_4_W":[[-1.143745,1.012412,0.67946994]],"dense_4_b":[[0.060790185]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json deleted file mode 100644 index 0bae6debe1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.554121],[1.0740528],[0.4476513],[0.042985532],[1.0663103],[1.0689878],[1.071583],[1.0549195],[1.0335085],[1.0030197],[0.9723682],[0.042850573],[0.042880993],[0.042904507],[0.04281879],[0.042651407],[0.04230733],[0.041820873]],"model_test_loss":0.022656971588730812,"input_size":18,"current_date_and_time":"2023-08-10_17-58-30","input_mean":[[22.76271],[-0.025877997],[0.0022960093],[-0.009181171],[-0.02727445],[-0.027402772],[-0.027459135],[-0.026559947],[-0.02817579],[-0.029742032],[-0.030806256],[-0.0091993585],[-0.00921486],[-0.009230055],[-0.009324119],[-0.00943795],[-0.009580347],[-0.009762122]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5694719],[-0.20375408],[0.4239076],[-1.5491991],[-2.7061498],[1.5443199],[-3.3281188]],"dense_1_W":[[-0.1568525,1.7437768,5.172882,-1.1876678,-2.9987805,-0.5681597,-0.72784686,-0.56439,3.2104652,1.4470582,-1.4493226,1.616085,0.16703165,-0.029379552,-0.89520353,-0.08414323,0.035069145,0.27360746],[0.008605118,1.5699749,-0.034170814,-0.6517424,0.1554151,1.9415936,-0.6549746,-0.14080332,0.4873717,0.20128046,-0.07373715,0.72448504,-0.18958189,-0.3032506,-0.3716506,0.21436751,0.13051425,0.057122074],[0.15251416,-1.065147,-1.7042818,-0.18689084,1.1120772,-0.40736163,0.34153485,-0.06619109,-0.19624624,-0.5001997,0.3767836,-0.46413225,0.124430165,0.1741939,0.08300067,0.4339266,0.39133996,-0.4509936],[-1.9674213,0.08717078,0.029132722,-0.03513353,-0.2589703,1.6724654,-1.3558731,-0.1305793,-0.454886,-0.012608211,0.23873848,-0.34175423,0.23151904,0.7033776,-0.41631103,-0.5752804,-0.4836925,0.59687835],[-0.7207827,-0.5354017,-0.046089556,0.70448333,-0.36087984,-1.4759765,1.6575412,-0.75853246,-0.4408815,0.08790331,0.0717399,-0.33782014,-0.42041263,0.67508817,-0.24991857,-0.3216102,-0.41419834,0.3666627],[1.9532421,0.33528504,0.01916575,0.41987598,0.10209625,1.2647687,-1.4621202,0.04530512,-0.48216137,-0.5880018,0.5948106,-0.49690482,-0.012825885,0.407025,-0.21983282,-0.46802706,-0.1458972,0.21309836],[-0.7360502,0.09303879,0.05160484,-0.5698299,0.48270965,1.2655245,-1.0951636,0.7825874,0.5584368,-0.051464483,-0.10931349,0.18838416,0.48844352,-0.7061164,0.29695016,0.34917378,0.2150316,-0.281181]],"activation":"σ"},{"dense_2_W":[[-0.07180556,0.3327603,-0.38922572,0.48622698,0.09493802,0.26061895,0.23152085],[0.13407795,-0.67967266,0.05478834,-0.13644974,0.38578004,-0.13981605,-1.063277],[-0.015875516,-0.22446778,-0.25920233,-0.21318886,0.96766865,-0.20522757,-0.96453786],[0.08992157,0.18349336,0.0824512,-0.18648697,-0.5639966,0.38651267,0.2273873],[0.24735251,-0.2508453,0.11087025,0.45425788,-0.4750976,0.48374006,0.7154399],[-1.4328333,0.5445412,0.7513447,-0.29624668,1.3955733,-0.7848697,-0.35838512],[-1.3571904,0.019299721,0.74097097,0.21410283,0.48808393,-1.7108941,0.8460511],[0.34152254,-0.33008227,0.7538879,-0.782962,0.46280092,0.3184853,-1.060949],[-0.5959307,0.6231766,0.24205552,0.80450344,-0.20037276,0.2900327,0.34695983],[-0.04536962,-0.6977615,0.08347324,-0.3414067,0.76720893,0.07663101,-0.62674546],[-0.08212232,-0.48272756,-0.11815556,0.24696878,0.023860326,-0.47122,-0.32275018],[-2.5981476,-0.62226206,0.30502877,0.7207847,0.95814323,-0.7556528,0.5867901],[0.18742424,0.22045845,0.27814955,0.33897662,-0.19170812,0.03715238,0.15590559]],"activation":"σ","dense_2_b":[[-0.05376892],[0.23207775],[0.08851935],[-0.051318903],[-0.23005556],[-0.015357251],[0.06677577],[0.3493236],[0.010827263],[-0.029838517],[-0.059241645],[-0.45090887],[0.0051090852]]},{"dense_3_W":[[0.43776008,-0.4779542,-0.6273563,0.012430885,0.27310228,-0.6358059,-0.5068906,-0.45288852,0.5793986,-0.29245862,-0.21443059,-0.15231055,0.4353823],[0.24600616,0.26503375,-0.1618708,-0.22456193,-0.43281186,-0.17235023,-0.4949653,0.4828677,-0.109212846,-0.3444521,-0.46777263,0.5679082,-0.11389996],[0.5157795,0.24814758,-0.17129026,0.32940918,0.6862252,0.45439878,-0.3838788,-0.6090692,0.4296436,-0.07106129,0.5077451,-0.04794848,-0.5777281]],"activation":"identity","dense_3_b":[[0.0597104],[-0.036633834],[0.03006256]]},{"dense_4_W":[[1.408938,-0.40635464,0.28050324]],"dense_4_b":[[0.051838256]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json deleted file mode 100644 index 56091f65a9..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.894573],[1.1526463],[0.49937436],[0.04181223],[1.1407756],[1.1450312],[1.1480577],[1.1401104],[1.123895],[1.1006547],[1.071595],[0.0416507],[0.041704524],[0.041748393],[0.04176903],[0.041703388],[0.041490186],[0.041185617]],"model_test_loss":0.013009187765419483,"input_size":18,"current_date_and_time":"2023-08-10_21-20-07","input_mean":[[24.805859],[0.0049672336],[0.0013684959],[-0.001192497],[0.0036358428],[0.0034303954],[0.004092047],[0.005534218],[0.0066732266],[0.004927845],[0.0062723476],[-0.0012077604],[-0.0011977365],[-0.0011862671],[-0.0011791526],[-0.0012019373],[-0.001338799],[-0.0015223476]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.042427626],[-2.5019999],[-0.0457297],[-0.7153923],[-0.7774993],[-0.06926592],[-2.4368992]],"dense_1_W":[[-0.0009291319,0.27767056,-0.07892523,-0.059060324,1.0241088,1.171279,-0.069413096,-0.12784159,0.058901682,-0.18805476,0.4193225,-0.3469123,0.42202514,-0.36080348,-0.7251315,-0.3008201,-0.033229448,-0.49506444],[-0.40471604,0.11814647,-0.1926038,0.0060851052,-1.1522694,-1.2816894,1.9390084,-0.5257205,-0.2785602,-0.118004374,-0.020688536,0.07099932,-0.389517,0.20363228,-0.030239882,0.6832831,-0.015321787,-0.26263818],[-0.00991332,-2.1251974,-3.9875517,0.5100302,2.949812,0.787714,0.90843993,-0.38894913,-2.0025148,-2.1428773,1.4694284,-0.76132494,-0.45982483,0.11538664,-0.18600582,0.46312463,0.7552948,-0.31822762],[-0.46726972,-0.9092647,1.3574834,0.18761194,-0.81670135,-1.0397257,1.2560849,-0.21459231,-0.1436863,-0.16160814,0.41930124,-0.32464686,0.17093562,-0.20039976,0.055896353,-0.4330081,0.52754503,0.12463856],[-0.5152346,0.50216174,1.3355443,-0.31773502,-0.46232986,-0.13133429,-1.4018828,-0.43890733,0.06662451,-0.043737113,0.3108043,0.19670644,-0.093163505,-0.28796571,-0.051473662,0.24918097,0.38881204,0.02669732],[-0.02088246,2.2406785,-0.22520858,-0.70286745,2.008803,1.9785228,0.02844807,0.97084755,0.49748123,0.7884559,0.14848712,0.87087315,0.40047103,-0.21100943,-0.21773107,0.57993966,0.16083455,-0.54391414],[-0.3943676,-0.26845726,0.19103855,0.21092215,1.200674,1.3899878,-2.1009598,0.73901653,0.24895392,0.09445688,0.020025935,-0.21680212,0.3247223,0.046129495,-0.4636503,-0.37354514,-0.05204169,0.26103115]],"activation":"σ"},{"dense_2_W":[[-0.29813394,0.97317356,0.18235527,0.5965462,-0.36117476,-0.357781,-0.6302886],[0.4669501,-0.26381913,-0.6718241,-0.55993664,0.75606084,-0.22786976,0.54741734],[0.45668933,-0.81978554,-0.4400848,-0.47736016,0.9749981,-0.41887143,0.5611882],[-0.23562466,-0.33685845,-0.63146794,-0.25962546,0.7455925,0.050860852,0.47903395],[0.11492595,0.39062494,-0.5413327,-0.040900126,-0.17837498,0.06629638,0.052479822],[0.3525208,0.28856075,-0.14136873,0.6413087,-0.51915973,-0.2774327,-0.9177848],[-0.17333238,0.8689579,-0.28932738,0.566288,0.11427143,0.06013824,-1.1550378],[-0.5458432,0.5894391,-0.047653124,0.15687895,0.33795092,-0.5042759,-0.22974871],[0.49124256,-0.7596094,-0.17393427,-0.37332547,0.025444454,0.34669602,0.47311735],[0.31282023,-1.2118286,0.017776541,-0.91698223,0.24819252,-0.0926613,1.2513487],[0.33180416,0.23580849,0.46787393,-0.09696695,-0.25229496,0.3558893,-0.6826248],[0.42314368,0.07992972,0.4903785,-0.3677389,-0.38366356,-0.34357548,-0.33236912],[-0.37016624,0.46486557,0.060417723,-0.48779157,0.024656558,-0.38848272,0.0547722]],"activation":"σ","dense_2_b":[[-0.0017060944],[0.016006682],[0.13619791],[0.01692232],[-0.2458614],[-0.01584404],[-0.11229285],[-0.037353944],[-0.0535534],[0.023917647],[-0.08311039],[-0.05629295],[-0.21274085]]},{"dense_3_W":[[0.4620643,0.1110241,-0.73991674,-0.04964699,-0.49397373,0.636488,-0.21777737,0.45773318,-0.31195316,0.26977688,-0.015185564,-0.0892626,-0.50908834],[-0.45361328,0.48187032,0.123036705,0.6407995,-0.29581347,-0.18150009,-0.42016354,-0.3740721,0.5890714,0.49763745,-0.43375558,-0.2785329,-0.33093747],[-0.034139745,0.07872775,0.14715545,0.5339573,-0.10824458,0.07166932,-0.20306881,0.021034054,-0.44093442,-0.24978448,-0.026970783,-0.16316907,-0.21309401]],"activation":"identity","dense_3_b":[[-0.012436828],[0.029966448],[0.10008727]]},{"dense_4_W":[[-0.48937565,1.0721666,0.037118435]],"dense_4_b":[[0.023898797]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json deleted file mode 100644 index 33a50713eb..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.185515],[1.6282288],[0.35043508],[0.031132786],[1.7255819],[1.6982063],[1.6648296],[1.4761653],[1.3519272],[1.2236267],[1.1229782],[0.03105924],[0.031098329],[0.031127678],[0.031184744],[0.031371836],[0.031613626],[0.03144637]],"model_test_loss":0.04537874087691307,"input_size":18,"current_date_and_time":"2023-09-02_23-19-34","input_mean":[[16.421978],[-0.048192535],[-0.013311911],[-0.030576248],[-0.05147835],[-0.051736772],[-0.051158622],[-0.051310074],[-0.056091797],[-0.051997066],[-0.04342065],[-0.030474063],[-0.03050476],[-0.030556701],[-0.030765096],[-0.030835558],[-0.0308675],[-0.030843992]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.0047161067],[-0.15242413],[-2.1423926],[-3.0072546],[-0.8894896],[1.5538071],[-1.542048]],"dense_1_W":[[-0.012829974,0.30741772,-0.03263021,-0.085545234,1.1814696,0.5471415,0.9120527,-0.33152023,0.5066247,-0.5210931,0.5341946,0.09236861,-0.39759701,0.02910307,-0.00886832,0.41334194,-0.23273322,0.016523872],[0.047321085,-0.15492304,-0.077865265,-0.804299,-3.377934,-3.6115973,-2.283943,5.437118,2.2738755,-0.043271527,0.16104881,0.112040475,0.5114801,0.093201585,0.13260198,-0.2661622,0.1796879,0.04888338],[-1.5367671,2.3720562,-0.02027605,-0.025416356,-1.4381312,-0.9349471,0.24836966,1.367659,0.3289632,-0.055137575,0.12185219,0.45477563,-0.30157885,-0.07613766,0.12895256,0.12588494,-0.1591801,-0.22217746],[-1.3666407,-3.5649407,0.02042984,-0.38937125,1.3380835,1.9989939,-0.20659405,-1.5160191,-0.104439735,0.062092394,-0.15397424,0.093930446,0.3034801,-0.30530134,0.041498467,-0.06435006,0.07080854,0.327221],[0.8026996,-0.44736055,-0.050972164,0.20318426,-0.8092374,0.24752559,0.32302567,-0.094395876,0.22440033,-0.17859897,0.11948998,-0.26337075,-0.27740997,0.18380176,0.30512437,-0.06352904,0.14718251,-0.17162979],[2.457627,-1.4923394,0.028457003,-0.3990584,1.7863452,0.60998243,-0.42721242,-1.8455137,-1.4121356,-0.16493158,0.06486093,0.016970918,0.19106352,-0.2922308,0.05603943,-0.020587316,0.34736913,0.20459694],[1.1815331,0.36599845,0.06255039,0.0657659,0.4088365,0.41529664,-0.25315446,0.017450152,-0.30593964,0.3139144,-0.16692097,0.2685098,-0.086217225,-0.069303796,-0.12145663,-0.22734722,-0.023085613,0.11520361]],"activation":"σ"},{"dense_2_W":[[-0.5023888,-0.05802139,-0.66911775,0.296051,0.7713285,-0.18254815,-0.8283855],[0.44022453,-0.24643378,0.5062762,0.09133972,-0.45227736,0.05079313,0.06773168],[-0.6219036,-0.9433538,-1.0238923,1.3172559,1.1334529,0.6552401,-0.69087607],[0.6763754,-0.40709624,0.6232817,-0.1610244,-0.67904115,0.6493273,0.0906405],[-0.635346,0.0011620739,-0.37521043,-0.5111516,0.986075,-0.3832682,-0.14561039],[0.45462242,1.1686025,0.14032847,-0.9475063,1.0923766,1.6022182,0.2453258],[-0.32724923,-0.7897613,-0.9935628,0.802958,-0.08129205,-1.1719561,-0.7486108],[-0.22323135,0.66134214,1.1732999,-0.8910564,-0.95774484,-0.39924416,0.7293297],[0.29451057,0.15649314,0.27317175,-0.6156423,-0.5974088,-0.54637176,0.16324385],[0.39435184,0.47537956,0.44074118,-0.23361506,0.39577127,-0.44843742,-0.6463624],[-0.48006952,0.5896299,0.56584865,0.23956761,-0.61484444,0.47759032,0.35471997],[0.35922313,0.43721467,0.18760605,-0.351279,-0.6390551,-0.28927103,0.6187888],[0.073767446,-0.8790351,-0.68584126,1.1712487,-1.6569555,-1.2728544,-0.015573282]],"activation":"σ","dense_2_b":[[-0.09275836],[-0.13285246],[0.22685666],[-0.048346587],[0.04652798],[0.08532798],[-0.09150484],[-0.05462159],[-0.1709193],[0.219226],[-0.10487605],[-0.18386836],[-0.227306]]},{"dense_3_W":[[-0.31240308,-0.2003438,-0.49512723,-0.33559966,-0.11021345,0.423354,-0.36147565,0.46913844,-0.33863887,-0.33271542,0.5626256,-0.27749553,0.15109913],[-0.18263677,-0.16133335,0.554565,-0.3057925,0.50082487,-0.3123607,0.6251424,-0.6040641,-0.4718807,0.17380686,-0.2015293,-0.22039177,-0.13468805],[0.75125694,-0.24231063,0.33473507,-0.54747844,0.5980235,-0.27477667,0.7795829,-0.4155024,0.4370703,0.43257073,-0.10999617,-0.19784549,0.7787281]],"activation":"identity","dense_3_b":[[0.08514209],[0.12190986],[0.11714442]]},{"dense_4_W":[[0.08379805,-1.1299504,-0.99574506]],"dense_4_b":[[-0.117058024]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json deleted file mode 100644 index 14e1e1d95e..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.750777],[1.3186632],[2.4594376],[0.034155015],[1.3260336],[1.3216915],[1.3177336],[1.3116305],[1.2217928],[1.1049051],[0.97790134],[0.03409643],[0.034110934],[0.03412991],[0.03416529],[0.034136374],[0.03408451],[0.034057345]],"model_test_loss":0.02841777540743351,"input_size":18,"current_date_and_time":"2023-09-02_22-47-37","input_mean":[[17.672829],[-0.0015280318],[0.0008010262],[0.021118881],[0.0008383113],[-0.0005000338],[-0.0014255784],[-0.001504001],[-0.00013831415],[-0.0043903766],[-0.004224954],[0.02113117],[0.021122888],[0.02112144],[0.021065863],[0.020995975],[0.020819707],[0.02090924]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.4262147],[0.29442513],[0.13858001],[-3.6157753],[0.11054395],[-0.096514955],[-2.7481675]],"dense_1_W":[[-0.59550166,-0.08087835,-0.10044884,-0.030051881,-1.0114387,-0.7159067,1.0509298,-0.4646438,0.254099,0.27775934,-0.30958077,-0.2699965,0.020533659,-0.021311773,0.45812935,0.20583425,-0.17345557,-0.12265345],[-0.1814759,-2.6059172,0.027335435,0.031072548,1.9576696,1.9464822,1.3979335,-3.122393,-0.40338284,-0.811746,0.915118,-0.2758879,-0.018445456,0.10923238,0.3439007,-0.3658017,0.17968847,0.0085251825],[1.2159636,0.50295633,-0.29685062,0.10249312,-1.1345159,-0.60397,0.9025859,-1.4166268,-0.34669524,0.31230232,0.03311125,-0.4099096,0.22891928,0.0058932696,-0.03164047,0.28680435,0.056274787,-0.21163589],[-2.1782408,-2.652491,-0.6163189,0.014259274,0.46644354,-0.07303462,-0.16025148,-1.9173824,-0.34420478,0.248388,0.23158954,0.038577884,0.08229089,0.039497472,-0.21905439,-0.31795323,0.80569685,-0.35556743],[-0.39873397,1.0991853,-0.15771712,-0.44371212,0.6436306,0.014177862,-0.9923157,1.1680098,0.09227359,-0.3646184,0.17011096,0.10480483,0.5100492,-0.115318246,-0.6804572,0.09150676,0.35543084,-0.04518636],[1.815469,0.7312476,-0.32006833,-0.47156325,-0.8404111,0.18205363,-2.1965184,-1.2279189,-1.0787835,0.2947485,0.085848495,0.06514893,0.41874364,-0.2661748,0.28740934,0.4390194,-0.31817436,0.0123811625],[-1.3422207,4.2687964,-0.25304475,0.53945225,-1.3436658,-1.9831376,-2.5219822,2.4054382,-1.2978123,0.42630863,1.098409,-0.47248852,-0.705663,0.60417634,0.0360486,0.5381174,-0.0367325,-0.60039526]],"activation":"σ"},{"dense_2_W":[[0.6287387,0.6726734,1.2156233,0.14890462,-0.7355616,0.36218125,0.14466967],[-0.74637365,0.3812475,-0.6406179,0.28641817,-0.20450425,0.32207528,-0.3226913],[0.06755054,-0.27992728,-0.70488316,-0.25441137,0.31789666,0.04202117,0.4387319],[-0.1773071,-0.06993977,-0.67512244,-0.46879476,-0.2630911,-0.7062165,-0.45115414],[-0.6238654,-0.26688075,-0.6413995,-0.30508804,0.62488157,0.15856849,-0.036961198],[-0.30532292,0.023894563,-0.0064119864,-0.105837554,0.01626758,0.14256619,-0.60051453],[0.013258742,-0.17537804,-0.44187704,-0.03241884,0.571268,0.39274576,0.042168505],[-0.6181693,-0.27180657,-0.44550276,-0.00063514145,0.47017303,0.1071446,0.4154284],[0.3637543,0.29671773,0.32823008,0.29629824,-0.551112,0.14014855,-0.46638033],[0.588223,0.1280512,0.3159679,1.2631085,-1.279261,-1.4572979,-0.2884451],[0.08316952,-0.2914584,-0.76872176,0.22730377,0.02180895,0.13148995,-0.5355329],[0.6056482,2.9128945,-0.027976673,0.84820426,-0.9162752,-2.0459216,-4.1563354],[0.03169041,-0.17865568,-0.2586998,0.10826119,0.071472034,-0.3774936,0.22949137]],"activation":"σ","dense_2_b":[[0.015828583],[-0.088196956],[-0.09036952],[-0.1230372],[-0.055517223],[-0.119829975],[-0.08279668],[-0.04842878],[-0.2312968],[-0.60610735],[-0.10119338],[-0.82878107],[-0.119595364]]},{"dense_3_W":[[0.4161587,0.39951083,-0.0774412,0.24522696,-0.6132204,-0.09533373,-0.47129297,-0.41050985,0.23757468,0.23466793,0.1497136,0.592779,-0.14382078],[0.10526708,-0.5690179,-0.44247043,-0.37303323,-0.45616138,0.17351544,0.47270444,-0.49300864,-0.013277441,-0.06569539,-0.5149398,-0.006244119,0.17057294],[0.6019824,-0.120864384,0.43110284,-0.51825607,-0.12548478,-0.4957451,-0.4877988,-0.39608762,0.053494465,0.6998196,0.01679197,0.4730759,-0.08663315]],"activation":"identity","dense_3_b":[[0.095762156],[0.09659323],[0.09680739]]},{"dense_4_W":[[-0.63916916,-0.8716667,-0.6933614]],"dense_4_b":[[-0.09472361]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json deleted file mode 100644 index b18169a8f7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.573654],[1.1484252],[0.42591482],[0.04835451],[1.1461933],[1.1471832],[1.1470121],[1.1214072],[1.0991943],[1.0701101],[1.0406059],[0.048127588],[0.048172023],[0.048212342],[0.048246387],[0.04816156],[0.0479336],[0.047585495]],"model_test_loss":0.026417279615998268,"input_size":18,"current_date_and_time":"2023-08-10_23-04-26","input_mean":[[24.135065],[-0.042271867],[0.014178805],[-0.0037389072],[-0.046595708],[-0.04610125],[-0.04491835],[-0.03922049],[-0.035844963],[-0.028552856],[-0.025264736],[-0.003948662],[-0.0038945172],[-0.0038410625],[-0.0036192732],[-0.003510406],[-0.003390137],[-0.0033347548]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.6313527],[0.21449536],[-2.8833015],[0.08015413],[0.14096457],[-0.4543409],[0.08164727]],"dense_1_W":[[0.4385407,0.63463783,0.060082484,-0.4217529,0.07332441,1.2808025,-0.9600021,-0.07368351,0.7437968,0.13603747,-0.09279282,0.636986,0.15792926,-0.5835893,0.2658865,-0.07900949,-0.060865946,0.10794351],[-0.006779099,2.004387,6.8607817,-0.23751183,-1.6587999,0.09422444,-0.4874676,-0.5578516,0.5310813,1.6710776,-0.91060466,1.1751448,0.7926426,-0.19524321,-0.49832276,-0.68435484,-0.74160784,0.2320687],[-0.42611358,0.49704134,0.061547905,-0.31928867,0.5029787,0.8141926,-0.7419139,-0.19156225,0.8684419,0.06434307,-0.030311767,0.6344357,0.23724514,-0.786067,0.063948646,0.2718977,-0.096927255,0.02907163],[-0.0020692998,-1.7009348,0.038647033,0.13782075,0.0035963166,-1.8036139,1.506227,-0.012708647,-0.3238854,-0.11025291,0.08421155,-0.47822404,-0.21775703,0.98227096,0.5762303,-0.2504151,-0.04809817,-0.23663491],[1.6555676,-0.24368818,0.047565427,0.48294827,-0.24731039,1.2580825,-0.6229123,-0.16432685,-0.1041179,-0.058522437,0.10651611,0.31825465,0.34657153,-0.9056155,-0.25984085,-0.22779177,0.15267563,-0.16960645],[0.0037644738,2.2035384,-0.26136458,-0.24882643,1.9434549,2.1926913,1.2461177,1.196908,0.7997137,0.6749713,0.168482,0.024462335,0.3614625,0.2324969,0.38785332,0.30951214,-0.15484615,-0.023371682],[1.6319045,0.20060556,-0.046149492,0.25747207,0.40403402,-1.5326216,1.2633929,-0.11975938,-0.27659348,-0.01779074,0.17242773,-1.23197,-0.16269825,0.64393556,0.27350065,0.7107626,0.2205556,-0.44941023]],"activation":"σ"},{"dense_2_W":[[0.688743,-0.23856077,1.3524743,-1.0059541,0.48964348,0.16091633,-0.8487965],[-0.8221493,-0.6588716,-0.39466858,0.70084,-0.7679724,0.19794145,0.25073692],[-0.3579931,0.12520991,-0.061575927,-0.33722153,-8.587289e-6,-0.65669745,0.36834475],[-0.4896118,0.09266889,-0.091803305,0.58836436,-0.09530183,-0.29224685,-0.11824604],[1.4330658,0.47080937,0.83529705,-1.4794953,1.1691287,-0.38773456,-0.850906],[-0.17573813,0.15940154,-0.0883046,0.14367807,-0.2713903,-0.58145833,0.1813966],[0.16333255,-0.5058434,-0.151819,-0.31104934,-0.48204994,-0.5709609,0.1097057],[-0.11952788,1.132746,1.7155647,-1.0979568,0.5267555,-0.32039446,-1.5178013],[-0.6666372,-0.6210934,0.08266941,-0.26039764,-0.58124655,-0.1659565,0.012729861],[-0.81480265,-0.19473615,-0.09725363,-0.25143594,-0.18920764,0.05540429,0.08028312],[0.30783543,0.53514826,0.6950099,-0.83681816,0.28347406,0.09319918,-0.9719728],[-0.5300102,-0.09198815,-0.17771126,0.35486326,0.044223923,-0.62166435,0.06565767],[0.2399586,-0.4612763,-0.2989993,0.13399556,-0.853747,-0.038706385,0.35972396]],"activation":"σ","dense_2_b":[[-0.35425124],[0.109308064],[-0.031559847],[-0.0003400682],[-0.21089287],[-0.2585232],[-0.19723703],[-1.0296504],[0.08535486],[-0.0011093448],[-0.38453248],[0.01864399],[-0.022892497]]},{"dense_3_W":[[0.16066022,-0.45942912,-0.5723236,0.33713955,0.5059241,-0.35243854,0.2291558,0.025299186,-0.2669662,0.21250063,0.36912894,-0.59875554,-0.45286608],[-0.3987386,-0.2368262,-0.4920192,0.64763784,-0.16727564,-0.56451935,0.29059148,-0.33601287,-0.3881739,0.27909118,0.092289515,0.09268704,-0.16298614],[0.29671025,-0.6581518,0.3455493,-0.5484271,-0.058288824,0.041621033,-0.29955027,0.52763146,-0.6336574,-0.5787685,0.54040813,0.41626728,0.18120344]],"activation":"identity","dense_3_b":[[-0.0040779626],[0.020526942],[-0.0043588714]]},{"dense_4_W":[[1.1190621,-0.49331972,0.6428077]],"dense_4_b":[[-0.005149732]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json deleted file mode 100644 index de4835015d..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.13507],[0.8047875],[0.9592971],[0.03719803],[0.81574184],[0.8139086],[0.8110526],[0.7843396],[0.7788054],[0.7745202],[0.7777087],[0.036984026],[0.03703481],[0.03710598],[0.037252665],[0.03730232],[0.0371585],[0.036896]],"model_test_loss":0.007393167354166508,"input_size":18,"current_date_and_time":"2024-01-04_23-04-03","input_mean":[[19.339607],[-0.023407113],[0.017601725],[0.0026906498],[-0.038862906],[-0.034542315],[-0.030135728],[-0.026610933],[-0.02051616],[-0.01604727],[-0.013370617],[0.0026659176],[0.0026913318],[0.0026833338],[0.002521619],[0.0023918578],[0.0022160034],[0.0019911316]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.05245382],[0.035864953],[-0.039355293],[1.5467168],[0.5919037],[1.5804634],[-0.11111225]],"dense_1_W":[[-0.003914714,-0.16665092,0.8045877,0.42955527,0.042900115,0.3204456,0.35248685,0.6244836,0.37365505,0.1018958,-0.27139,0.36162248,0.29024374,0.44181496,-0.25224727,-0.61896217,0.049917817,0.03403082],[0.0018431861,0.1859696,0.15934391,0.28837445,-0.3073335,-0.8031571,0.23849526,0.082833655,-0.5834504,0.17749217,-0.030166363,-0.10682262,-0.4260385,-0.38520503,0.6312785,0.7124632,-0.22725351,-0.3664909],[0.00086988,0.9063901,0.20099123,0.08871661,-0.36750826,0.2198721,0.031094799,0.19992219,-0.5177974,0.046962358,0.08928185,0.26005623,0.34793183,-0.451968,-0.38569394,0.34223,-0.38488138,0.1793232],[0.8162148,0.29020473,0.18275267,-0.35776222,-0.28510228,0.46595475,-0.6616128,0.195398,0.26881757,0.059817094,-0.13620366,-0.4805491,-0.012386888,0.39424053,0.36542693,0.031057728,0.62587917,-0.565165],[0.037288748,-0.046608564,-0.060034525,0.67498976,-0.22178993,-0.8245154,0.23886381,-0.28326404,0.111875124,-0.77013075,-1.328114,1.0840845,0.9611771,0.2557407,0.3975159,0.8245138,1.562315,2.8953738],[0.8202544,-0.25984216,-0.19078176,0.13980138,0.51260155,-0.49194804,0.34185478,-0.21916452,-0.14230296,-0.06628551,0.1172867,0.020271447,0.29334098,0.2251678,-0.67696583,0.022016034,-0.59790677,0.5738815],[0.00095800374,0.050649557,-6.683648,-0.31581786,-0.32105008,0.5734178,1.9580009,-1.7619663,-0.7830262,-0.80728334,0.9367744,-0.1321611,-0.28173265,0.20762457,-0.046792764,0.3204709,0.7585857,-0.5031118]],"activation":"σ"},{"dense_2_W":[[0.06599863,-0.077938765,-0.46291193,0.23650317,-0.027708977,0.63160855,0.6188505],[0.36912426,0.15749967,-1.2303185,-1.2359545,-0.4095874,-0.4303089,0.922016],[0.08544567,-0.43779898,0.59003,0.5278192,-0.36819986,-0.5301048,-0.44207993],[0.5843524,0.8583482,-0.88859177,-0.8168985,0.12438766,0.36272177,-0.26470038],[-0.012072821,-0.110501334,0.20674299,-0.33450037,-0.34117457,-0.35198018,-0.2976915],[-0.16229798,0.27463567,-0.19243562,0.23463425,-0.40173936,1.0653771,0.6385723],[-0.5187056,-0.773393,0.43217546,0.65371454,0.03403764,-0.6496487,0.23940846],[0.37576345,0.26045048,-1.0047446,-0.353597,0.61323655,0.2752646,0.0003494541],[0.22740726,-0.9556307,0.15197575,-0.54765016,0.30160198,-0.34819916,0.30487126],[-0.5722699,-0.54196566,0.89174616,1.0433967,0.45892256,0.113816425,-0.2416469],[-0.5446902,-0.8540217,0.2916834,-0.47284833,0.36037326,-0.46815297,-0.5791224],[0.27263904,-1.359365,0.85842407,0.54602545,-0.17842472,-0.6866763,0.72361666],[-0.06596796,-0.30877677,1.0769781,0.58296657,-0.6865365,-0.34627205,-0.57615745]],"activation":"σ","dense_2_b":[[0.037269842],[-0.135715],[0.10579589],[0.0045449715],[-0.025380367],[0.13895194],[-0.04382961],[-0.057845958],[-0.19544882],[0.032584503],[-0.027338741],[-0.041977383],[0.15147693]]},{"dense_3_W":[[-0.5543271,-0.7858436,0.31829223,-0.61404854,0.37950537,-0.4407362,-0.10451055,-0.1897724,-0.006352851,0.38131055,0.313605,0.34909454,0.10177992],[0.408599,0.1036969,0.008981054,-0.26271266,-0.19486478,0.27475658,0.05352325,-0.21086176,-0.53847146,0.051870942,-0.105526984,0.55770934,0.2596486],[0.061677825,0.32905743,-0.71210945,0.16829975,0.2798448,0.4744422,-0.42504826,0.4273275,-0.07462389,-0.15490934,-0.61943233,-0.66081953,-0.4729292]],"activation":"identity","dense_3_b":[[-0.076288804],[-0.03769022],[0.10184652]]},{"dense_4_W":[[0.5649773,0.012187176,-1.0137211]],"dense_4_b":[[-0.08833705]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json deleted file mode 100644 index 9ae1f90bbb..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.154972],[1.2219579],[0.5249089],[0.04609643],[1.2129667],[1.2152725],[1.2187766],[1.1979939],[1.1835413],[1.1609851],[1.131695],[0.045940075],[0.04595876],[0.045979664],[0.04583899],[0.045701966],[0.045422513],[0.045092262]],"model_test_loss":0.008101926185190678,"input_size":18,"current_date_and_time":"2023-08-10_23-56-46","input_mean":[[25.387062],[-0.10944313],[-0.008544132],[-0.00804191],[-0.107888475],[-0.10920066],[-0.110173844],[-0.1106636],[-0.109646805],[-0.109096535],[-0.105106495],[-0.008129847],[-0.00813124],[-0.008141087],[-0.008092408],[-0.008060575],[-0.008140952],[-0.0083157625]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.016645644],[-0.11951427],[-3.1821578],[-0.0059933704],[2.8677177],[0.031116206],[0.20521815]],"dense_1_W":[[0.00011691521,-0.0047739935,-0.0046798335,-0.23095101,0.67633355,-1.4215347,0.22167856,0.0051140105,-0.14782095,-0.18156183,0.16303727,-0.81555355,0.058726236,0.5032197,0.574162,0.18640463,0.21730764,-0.22049814],[-0.00011825084,0.4686856,-0.009756203,0.35097203,0.10730735,0.94829154,-0.6940468,0.19106765,0.12124054,0.025897067,-0.02768527,0.53336066,-0.23076952,-0.3619648,-0.4279046,0.022291774,0.13861004,0.018763274],[-0.7304196,-0.08818808,0.56801623,-0.09857474,0.34234688,1.0349541,-0.33047348,0.61446273,0.32419196,-0.050662857,0.2637253,0.20039666,-0.47378713,-0.3956067,0.009646421,0.390048,-0.008849323,-0.2498262],[0.0060903383,-0.49549666,-0.01697434,0.22030751,0.020088006,-1.0179988,0.80875695,0.441826,0.09327719,-0.029645108,-0.40414256,-0.45891628,-0.2560797,0.59599686,-0.012949928,0.30637464,-0.16429852,-0.077907525],[0.70374584,-0.01092509,0.540549,-0.40865657,0.1392593,1.3607061,-0.68692255,0.6964351,0.19591267,0.18743542,0.12110344,-0.008305118,0.15106158,-0.94731086,0.56679606,0.27371135,0.24476646,-0.47326928],[0.003219834,-0.25791815,0.1770013,0.058168087,1.0995903,-0.48271948,0.2528091,-0.021289961,0.10542952,0.6813602,0.28741544,0.007509176,-0.5195496,0.22631004,0.0013342625,-0.17950559,-0.054088753,0.010088536],[0.012934697,-0.99158263,-7.329649,-0.14901392,0.7383594,-0.13131715,1.0090424,-0.52978915,-1.10985,-0.26590362,0.9192803,-1.023092,-0.21835378,0.3614904,0.39267102,0.17742208,0.27959663,0.0059155384]],"activation":"σ"},{"dense_2_W":[[-0.16192931,-0.46922514,0.20061032,-0.22314207,-0.3545485,0.24491267,-0.17598084],[-0.6500808,0.5197684,-0.086435065,-0.06399719,0.93517494,-0.32023647,-0.2368111],[-0.85317075,0.6300723,0.9634644,-0.26148096,-0.30289555,-0.27350643,-0.3997722],[-0.9474749,1.5257666,-0.58592016,-0.20490168,1.7460821,-0.54258883,-0.72248006],[0.61233485,-0.52019024,-0.20221208,0.75963235,-0.63291365,-0.16668685,-0.14107104],[0.5829932,0.20956525,-0.5917082,0.334232,-0.5782333,-0.37722242,0.111714475],[0.3291867,-0.077928744,-0.13658442,-0.25665778,0.35779083,0.36474347,-0.293335],[-0.121685565,0.24806523,0.18834944,-0.46779516,-0.31577477,-0.22564404,-0.23130432],[0.4297668,-0.03992685,-0.7625169,0.4358002,0.46087322,0.59285825,0.27673835],[-0.47832817,0.57294714,0.25306076,-0.7069487,-0.017084602,0.052525472,-0.30928266],[0.7133705,-0.19208045,-0.30594656,0.40949252,-0.268573,0.33327693,-0.09717502],[-0.5436785,0.2889737,0.51880294,-0.56072646,0.9260692,0.107343785,-0.1836568],[-0.936714,0.88693315,1.2621549,-0.7801531,-0.4495786,-0.3362016,-0.5123693]],"activation":"σ","dense_2_b":[[0.011130354],[0.04997472],[-0.18216753],[0.3452406],[-0.02403721],[-0.06878961],[-0.004139792],[-0.2698251],[0.015881905],[-0.16309522],[-0.029837111],[0.04389526],[0.0100675905]]},{"dense_3_W":[[0.59172153,-0.13653415,-0.40732333,-0.29746622,0.42562142,0.1004339,-0.005074904,0.06819323,0.40120095,-0.28921607,0.5362933,-0.52448,-0.6777314],[0.2645431,0.3248634,-0.5370929,0.124842614,-0.29716966,0.063039936,0.011938057,0.31424755,0.38555825,-0.09687765,-0.33130735,-0.3187058,0.33251473],[-0.19941787,-0.4079571,-0.42453167,-0.505169,-0.03318176,0.3900114,0.53974134,-0.019272683,0.004807314,0.32995415,0.29342985,-0.40301663,0.2627771]],"activation":"identity","dense_3_b":[[0.04678321],[-0.041011743],[0.04454892]]},{"dense_4_W":[[-1.0930591,0.32782602,-0.2925129]],"dense_4_b":[[-0.047076307]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json deleted file mode 100644 index 82716f590e..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.541552],[0.9650358],[0.3616818],[0.0328642],[0.9578452],[0.96073836],[0.96248627],[0.9491477],[0.9337077],[0.908715],[0.8812584],[0.032887284],[0.03287074],[0.032852463],[0.03271584],[0.03264729],[0.032499015],[0.03240248]],"model_test_loss":0.008866102434694767,"input_size":18,"current_date_and_time":"2023-08-11_00-47-36","input_mean":[[27.210583],[0.020935686],[-0.008948258],[-0.0069724205],[0.023982191],[0.02277414],[0.021633722],[0.018200217],[0.016092353],[0.01634521],[0.017552482],[-0.0069776564],[-0.0069683734],[-0.0069624],[-0.006934479],[-0.006922422],[-0.0069089876],[-0.0069400943]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.13328256],[-0.19930688],[1.0697682],[-0.5783517],[-1.5640957],[-0.92074555],[0.96863127]],"dense_1_W":[[-0.06047806,0.59424174,0.13268892,-0.21197622,-1.1050072,1.247896,-0.24135092,0.1444364,0.14218198,-0.2759823,-0.18579857,0.7423415,0.22738951,-0.2590543,-0.6573962,-0.107646905,-0.07558396,0.037075613],[-0.058194548,1.2433497,5.1614676,-0.020125298,-0.25091216,0.578058,-0.16740562,0.6148966,0.31894976,-0.42848128,-1.5423061,0.5142165,0.0080127595,-0.24593866,-0.23782809,-0.28146613,-0.10563642,0.2612805],[0.7431013,-0.52715963,-0.0064738155,-0.08120712,-0.10666046,-0.039603,-0.2889496,-0.27379817,-0.18491645,-0.2114326,-0.031808507,0.067143545,0.24152419,-0.46100402,0.12406786,0.5035436,0.19000971,-0.40269852],[-0.093319766,-3.5038989,0.026366359,-0.10428085,-1.5910784,-2.6836565,-1.729896,-1.2727953,-0.6854482,-1.3142506,-0.82473946,-0.24805659,0.30157104,0.10064682,-0.2649021,-0.45221263,-0.003649908,0.3906365],[-0.19653389,-1.1956127,-0.0013261554,0.20242849,0.5268085,-1.1662431,0.5995818,-0.21107472,0.035844564,-0.37587917,-0.010125557,-0.5800509,0.2748382,0.28321275,0.2552108,-0.22593613,0.1699103,-0.20041217],[-1.6779865,0.010922188,0.2911208,-0.18096207,0.6596778,-0.7872427,1.278464,0.4307826,-0.2584428,-0.3280948,-0.16272934,-0.3561698,0.31419376,0.30760053,0.45000735,-0.60065556,0.07380751,-0.7342767],[0.22576395,-1.2693808,0.00051059003,0.22724408,0.53528285,-1.052841,0.42936927,0.15097113,-0.21617922,-0.10659611,-0.13288835,-0.32452956,-0.29022405,0.43584242,0.565457,-0.4026171,0.10766105,-0.16005303]],"activation":"σ"},{"dense_2_W":[[0.40149835,0.36675823,-0.29831505,0.37289986,-0.6039201,-0.027274264,-1.1339715],[0.95495695,-1.3851566,0.358178,0.49656358,-1.2546502,-1.3234615,-0.39220563],[-0.84305114,0.33130413,-0.39270082,0.1366223,0.8356403,-0.71874714,0.6702931],[0.32502848,0.22423606,-0.3198426,0.69494843,-0.84058,-0.57765996,-1.1503054],[-0.55475,-1.0512786,-0.467161,0.23049785,1.171586,0.24218969,-0.14599386],[0.27919522,-0.6080323,0.83328724,0.4167502,-0.11279212,-0.19312277,1.0808055],[-0.98002326,-0.06683307,0.073704205,-0.7713237,0.36600292,0.32792312,-1.2809395],[-0.099299915,0.7157585,-0.69559073,-0.74590826,0.03745077,0.67139316,-1.3220712],[-1.1977009,-1.1743606,-0.8824673,0.82422435,1.4812046,0.54254943,-0.24748902],[-0.94787806,0.20738822,-0.0680158,-0.47344378,0.016936,-1.4717607,0.38640186],[-0.27705613,0.5600628,-1.2770342,-1.2288101,0.3837186,0.54160005,-1.0739172],[1.0531577,0.14682527,0.31090853,-0.22525707,-0.51124835,-0.16686235,-0.69970435],[0.54132354,-0.55377156,0.16552292,0.4777185,-0.91318285,-0.39976725,-0.8804106]],"activation":"σ","dense_2_b":[[-0.15207723],[-0.4524892],[-0.31112808],[-0.14511883],[-0.2907099],[0.035733145],[-0.59132564],[-0.091714524],[-0.3527001],[-0.18239608],[-0.123493806],[0.0051953667],[-0.010544346]]},{"dense_3_W":[[0.39324093,0.2485198,0.08692321,-0.18120968,-0.0657239,-0.034891907,0.5671789,0.31177345,-0.93040633,0.09452528,-0.25895926,-0.034117304,0.25137582],[0.25416353,0.0061438996,0.28148532,0.6699385,-0.74332523,-0.50077397,-0.46912852,0.711142,-0.830241,0.33939067,-0.19935456,0.069085754,0.578044],[-0.30625167,-0.4704901,0.5801462,-0.38525173,0.31889287,0.25167635,-0.11409451,-0.62698126,0.7056928,0.44565654,-0.42508173,-0.60673165,-0.41772822]],"activation":"identity","dense_3_b":[[-0.068453945],[-0.056202423],[0.09645773]]},{"dense_4_W":[[0.16098852,0.15347017,-0.7822183]],"dense_4_b":[[-0.068720676]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json deleted file mode 100644 index 4d6b4af069..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.376422],[1.2837375],[0.54391617],[0.049378082],[1.2814487],[1.2804018],[1.2795964],[1.2587454],[1.2385764],[1.21357],[1.1835355],[0.049072966],[0.049108904],[0.049148303],[0.049186878],[0.04908979],[0.048760086],[0.048228707]],"model_test_loss":0.009066876024007797,"input_size":18,"current_date_and_time":"2023-08-11_02-01-41","input_mean":[[23.067575],[-0.03366158],[0.0044186297],[3.4665016e-5],[-0.033809688],[-0.03444663],[-0.03468704],[-0.03309283],[-0.032493494],[-0.034124184],[-0.029784737],[-0.00010160864],[-7.466988e-5],[-4.264505e-5],[5.8855418e-5],[0.000106093255],[7.4934855e-5],[4.8816368e-5]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.1810939],[0.052338526],[-0.030882858],[0.033140995],[2.9087296],[-2.895278],[0.054216754]],"dense_1_W":[[-0.022466678,-0.079283744,0.015348881,-0.093145974,-0.50897855,1.1005377,-0.3424491,0.16023882,0.24858536,-0.28342143,0.08719842,0.11321456,0.25237224,-0.3242571,-0.16660848,0.08039433,0.2296425,-0.12092014],[-0.010926074,-0.5342929,0.014211034,-0.22288138,0.12526701,-0.6431979,0.11048157,-0.027558114,0.5129509,0.031701602,-0.28270888,-0.3469483,-0.0359589,0.3054121,0.42384326,-0.21366577,0.24789678,-0.21054278],[0.0015054089,-1.0920098,-4.1715555,0.42466384,0.8594457,-0.057574112,0.195077,-0.14336777,-0.934818,-0.14249723,1.1195656,-0.50157344,-0.34849435,0.4064381,-0.10914302,-0.09259135,-0.043489303,0.17882638],[0.00050957524,-0.5727624,0.02629925,0.039537206,0.07295519,-1.0905142,0.65514714,-0.22721705,0.10285973,0.015500398,-0.07354051,0.10782978,-0.2973014,0.10234221,0.40134785,0.31354493,0.075327724,-0.033144545],[1.1313975,0.27665266,0.21540989,0.474714,-0.542695,0.45748472,-0.534559,0.33019224,-0.00932876,0.37130055,0.01740698,-0.07030619,0.3058859,-0.33302706,-0.18166807,0.05664913,-0.020655787,-0.18409492],[-1.1192006,0.46339068,0.21362849,0.07990121,-0.11141043,0.052170627,-0.7601721,0.25794908,0.29454672,-0.019299706,0.18099277,-0.069216594,0.12746179,0.16600643,-0.2266845,0.04666312,0.26312882,-0.34587502],[-0.033930384,-0.5281495,-0.02478823,0.35514218,0.37443575,-0.93885845,0.8630589,0.32345197,-0.43721947,-0.22540626,0.31314182,-0.19791576,-0.45503795,0.42438814,0.15826641,0.10125901,-0.2744716,-0.007187695]],"activation":"σ"},{"dense_2_W":[[1.0154629,-0.040800903,-0.29480615,-0.579116,0.63008493,-0.16830389,-0.52992606],[-0.44676533,0.70518833,0.22363839,0.3335365,0.15123695,-0.5413408,-0.18469663],[-0.15817617,0.34588996,0.3173453,0.2432257,0.2876003,-0.55385196,0.09101465],[0.30243352,-0.56498605,-0.47895545,-0.24933416,-0.20325784,0.55106956,0.04037954],[0.03340286,-0.7613887,0.005524847,-0.34229973,0.020817522,0.70795476,-0.58045375],[0.32800585,-0.61029744,-0.37881643,-0.0494688,0.6649441,0.5878182,-0.693103],[-0.78130317,0.32768852,0.0486751,0.6938225,-0.6449391,0.19077687,-0.20455292],[-0.003070534,-0.25178492,-0.1787414,-0.18577683,-0.855277,0.05078717,-0.23962548],[-0.8574637,-0.55484927,0.11038485,-0.22769281,-0.8112205,-0.5803483,0.39239252],[-0.02281288,-0.18713373,-0.18762249,-0.36472616,0.6542259,0.41985798,-0.57571363],[-0.37003383,-0.7053904,0.16818082,-0.6309228,-0.42156786,0.28068355,-0.52919596],[0.7441994,-0.606726,-0.21135445,-1.1177553,-0.23082832,0.5370549,-0.3296431],[-0.82947385,0.6298715,-0.0031728123,0.59570336,-0.2874936,-0.56689715,0.31978017]],"activation":"σ","dense_2_b":[[0.12730335],[-0.017174786],[0.008333773],[-0.1725905],[-0.08095016],[0.022734491],[-0.03200295],[-0.2865707],[-0.23485084],[-0.041974284],[-0.26037046],[0.00494856],[-0.008746482]]},{"dense_3_W":[[0.5768022,-0.69957966,-0.57344234,0.18022925,0.18167411,0.10279416,-0.60731447,0.57294464,-0.15860513,0.55548793,-0.0742402,-0.03724561,-0.46468896],[-0.6463308,-0.08468973,-0.057763796,-0.15337418,-0.5244671,-0.41263047,0.41524106,0.17037424,-0.16188715,-0.28470117,0.10638861,-0.22415741,0.76425564],[-0.30938473,0.20329902,0.43855524,0.0105835125,-0.13655424,-0.32343802,0.59270227,0.6068919,0.56710804,0.56215036,-0.60497534,-0.4761755,-0.007562395]],"activation":"identity","dense_3_b":[[-0.028258],[0.046470042],[0.021202732]]},{"dense_4_W":[[0.7616137,-1.0874788,-0.41413057]],"dense_4_b":[[-0.037305925]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json deleted file mode 100644 index 112a029733..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.383597],[1.5203282],[0.5082514],[0.0518889],[1.5132513],[1.5174434],[1.5199335],[1.4851471],[1.4453254],[1.3881189],[1.3348266],[0.051785868],[0.051798876],[0.051812388],[0.051785596],[0.051688608],[0.051483054],[0.051126033]],"model_test_loss":0.009930684231221676,"input_size":18,"current_date_and_time":"2023-08-11_08-01-58","input_mean":[[25.470009],[0.0042077163],[-0.0003353114],[-0.0023303148],[0.0042589367],[0.0040556374],[0.0040202853],[0.0027058893],[0.0012695856],[0.0030413663],[0.005136044],[-0.002385892],[-0.0023771315],[-0.0023616166],[-0.0023057486],[-0.0023015393],[-0.0022862742],[-0.0023375773]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.2718573],[0.15701862],[3.248821],[-3.5744123],[0.004125263],[-0.7583393],[-0.037708215]],"dense_1_W":[[-0.2879904,1.5954516,-0.0046582473,0.06479758,0.29433665,0.8528065,-0.6544351,-0.4978888,-0.0794865,0.468229,-0.05461509,0.9035509,0.15841998,-0.54152334,-0.4469752,0.07425236,-0.11780557,0.12198392],[0.006679829,0.40255344,0.009154457,-0.16641183,-0.39951205,1.4443473,-0.9139237,-0.057986554,-0.11843848,-0.0044754846,0.0925529,0.5124026,-0.0049318043,-0.2537788,-0.14938481,-0.224736,0.047049627,0.13330497],[1.7283604,-0.05969189,1.0530555,0.27028522,0.47397172,0.5086671,-0.63976616,-0.19285004,0.49581873,0.13492277,0.20006694,0.06384355,0.24601626,-0.3723971,-0.032245487,-0.13195412,0.31266445,-0.18301867],[-1.8633327,0.22747979,1.1220167,-0.02145294,0.28228733,0.85233575,-0.9075951,0.069776304,-0.18778838,0.56500834,0.1422919,0.41182467,0.2542804,-0.911527,0.53582734,0.023306668,0.07635535,-0.1735968],[0.022620516,-2.0202289,-4.6984797,0.37025738,1.6879617,-0.1484365,0.5125165,-0.90959346,-1.2976298,0.01080667,1.3414408,-0.295309,-0.27262625,0.2460714,0.11705216,0.34596816,-0.040567875,-0.3704739],[-0.1562062,-1.5769467,0.00974286,0.12022318,-0.060521524,-0.64386684,0.3535075,0.28329223,0.20385851,-0.23411226,-0.05331302,-0.43988168,-0.62577605,0.77806795,0.18664421,-0.41524816,0.19130825,0.045515057],[0.0025923399,-0.49789965,0.0048285224,0.0648064,0.5884254,-1.1329092,0.41850495,-0.10409346,-0.48019585,0.07617594,0.13875124,-0.41700658,-0.12853211,0.72437525,0.18255632,0.032605115,0.12712069,-0.07419187]],"activation":"σ"},{"dense_2_W":[[-0.7156104,-0.68829536,-0.7385952,0.55841655,0.26912323,0.6066667,-0.12475776],[-0.511934,-0.9153065,-0.6389169,0.3585597,0.2839266,0.5098371,0.50414217],[0.2944038,0.5859187,-0.5172965,0.3677821,0.054128557,-0.08085657,-0.89583373],[0.33193415,-0.5547596,-0.023806248,-0.48235148,-0.221697,0.033068255,0.5705964],[-0.46894178,-0.10590048,0.21662314,-0.040064402,-0.3858671,-0.44947234,0.59122],[-0.60725653,0.3228978,0.1861176,-0.2924726,0.42708892,-0.082993455,0.22582808],[-0.2562046,0.8381702,0.31616238,0.24505608,-0.12987854,-0.6930256,-0.76575553],[0.61845154,0.60325474,-0.575144,0.40564325,-0.714385,-0.21887647,-0.94107187],[-0.54684615,0.11815464,-0.6585375,-0.25468546,-0.09934533,0.117599614,-0.38795406],[0.16209334,-0.35611826,-0.15108901,-0.21047153,-0.3256097,0.28901953,0.80304426],[0.027611624,0.50159204,0.619658,-0.12446912,-0.59465826,-0.037129514,-0.21241622],[0.27525434,0.5680337,-0.107110925,0.24088366,0.043958385,-0.86346936,-0.64997584],[-0.024266828,-0.11527472,0.3829225,-0.17169206,0.08911536,-0.8643167,0.06748397]],"activation":"σ","dense_2_b":[[-0.17570926],[-0.14594816],[-0.05026906],[0.027095933],[-0.04517862],[0.06473192],[-0.028851002],[-0.12211885],[-0.27259725],[0.014737305],[0.02095205],[-0.070182],[-0.09559173]]},{"dense_3_W":[[0.4202054,0.703193,-0.3041087,0.48369282,0.1436207,0.37104702,-0.63816553,-0.58745027,0.13683067,0.5385481,-0.46124828,-0.5352316,0.19800703],[-0.86401147,-0.18695252,0.62547266,-0.68338186,0.10880029,0.3713409,0.027055534,0.41835827,0.27228013,0.11604386,-0.0106600085,0.20140606,-0.10059595],[0.056002628,0.035810802,-0.3965656,0.3976536,0.1726735,0.31009713,-0.09359465,-0.0209684,-0.26736382,-0.1666654,-0.5963385,0.03144756,-0.447781]],"activation":"identity","dense_3_b":[[0.022595499],[-0.16177715],[0.034701686]]},{"dense_4_W":[[-1.0497395,0.08801628,-0.6607149]],"dense_4_b":[[-0.026550818]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json deleted file mode 100644 index 3b3aae741b..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.547318],[1.4036797],[0.56934917],[0.04350854],[1.398559],[1.4011317],[1.40228],[1.3770106],[1.348263],[1.3074721],[1.2626077],[0.04330501],[0.043371696],[0.04343371],[0.04348332],[0.043410856],[0.04321263],[0.042814735]],"model_test_loss":0.008338634856045246,"input_size":18,"current_date_and_time":"2023-08-11_11-04-26","input_mean":[[23.64889],[-0.08561094],[0.015752671],[-0.004257724],[-0.08625081],[-0.08638373],[-0.08567994],[-0.077275604],[-0.06842236],[-0.056570813],[-0.04640004],[-0.004200933],[-0.004198378],[-0.004202762],[-0.004259174],[-0.004245101],[-0.0042204647],[-0.00425349]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.1003305],[-0.9280888],[-0.27994263],[-0.03601646],[1.0726995],[1.5954292],[-0.07318528]],"dense_1_W":[[0.6028892,-0.5008186,-0.024919089,-0.12623027,-0.4729594,-0.38648638,0.2822896,0.09087385,0.01636962,0.024747238,-0.29404536,-0.18406688,-0.31876472,0.48221767,0.5086306,-0.06562299,-0.21337883,0.11643904],[-1.1941831,0.17382993,0.22181809,0.23333201,0.5458071,-0.43223855,0.5926918,0.3491883,0.1278165,0.50286424,-0.43537652,0.19344032,-0.26665846,0.11812404,-0.28001395,-0.3216877,-0.14064364,0.15485847],[0.07623883,1.5235251,6.7465596,-0.13723375,-0.80104774,-0.61400336,-0.39275688,0.5211227,0.37626675,0.3823852,-0.80926275,0.23730527,0.34998953,0.20261207,-0.464487,-0.30715373,-0.26015738,0.43704194],[0.12629938,-0.28819624,-0.09535608,0.16085212,-0.16898133,-0.6793061,0.43381187,-0.2702881,0.065844,-0.1441075,0.040372517,-0.117076926,-0.32687485,0.5354,-0.1250812,-0.19841617,0.3460908,-0.06750503],[0.4682372,0.59703195,0.034524012,-0.006926566,0.060249697,1.3168854,-0.9804278,0.074283265,-0.18839869,-0.07103339,0.32018688,0.041558877,-0.04179399,0.012026822,-0.15508115,-0.1332163,0.27430537,-0.18467638],[1.3037213,0.2139271,0.22422606,0.17373297,0.19543481,0.09874217,0.3998748,0.6430583,0.08877143,-0.05584769,-0.13569269,-0.4579002,0.12869297,0.39104635,-0.1829238,-0.2530643,-0.1974048,0.08369768],[0.088082924,-0.44940168,-0.19933243,0.07069701,0.7149304,-1.0380019,0.71266985,-0.4369744,-0.552529,-0.23388147,0.6032971,-0.16139722,-0.3540249,-0.026191853,0.60969,0.28289405,0.11056004,-0.31100357]],"activation":"σ"},{"dense_2_W":[[-0.6133522,0.1761722,-0.71424717,-0.0936426,0.8682251,-0.24639517,-0.30397138],[0.34320208,-1.0336052,-0.4439255,-0.2739278,0.3367824,-0.3631442,-0.98396087],[-1.6413774,0.08594568,0.71144843,-1.0480727,-0.11629067,-1.6811962,-0.8675772],[0.47143686,0.089915365,0.26338518,0.68463236,-0.97531956,0.32513487,0.65076643],[-0.87128234,0.064365715,0.1303472,-0.75249237,-0.25511387,-0.7430213,-0.28605184],[-0.7603966,-0.29632324,0.0682258,-0.7471322,0.5153051,-0.53268844,-0.21521862],[-0.3656277,-0.07363712,0.18693501,-0.9983321,0.69527906,-0.45794705,-1.0309372],[0.2617154,0.46204823,-0.6687536,0.82395816,-0.88860583,-0.33870435,0.4618431],[-0.39958304,-0.23751055,-0.8149946,0.19134824,-1.4698569,-0.43517134,0.62668824],[-1.4046016,2.1539013,-3.988871,-0.39821678,-1.9340425,-2.1167135,-1.0858109],[0.38306925,0.64414614,-0.5527955,0.6701854,-0.68190986,-0.18758336,0.7660656],[-0.82904243,-0.2745322,0.2605575,-1.0301431,0.27432004,-0.93553334,-0.739551],[-0.23676038,0.9406503,-1.986441,-0.4191224,-1.5621673,-0.88484937,0.3910027]],"activation":"σ","dense_2_b":[[-0.027016891],[0.08464052],[0.028135099],[-0.38301256],[-0.3638506],[-0.040266816],[0.16827495],[-0.36882532],[-0.40422207],[0.02508533],[-0.56583065],[0.09229101],[-0.416409]]},{"dense_3_W":[[0.0040040226,-0.6369987,-0.71731246,0.6850001,0.09157595,-0.41231555,-0.90613884,0.46305528,0.5752972,0.6877244,0.514109,-0.35633194,0.5317168],[0.1646857,0.52076554,0.14491199,-0.7185544,-0.07474149,0.60757786,0.53968096,-0.19788566,0.4318167,-0.51503956,-0.30411977,0.5457501,0.3619558],[-0.47842056,0.16373217,-1.109826,0.52913445,-0.5961691,-0.18387295,0.009211785,0.38275075,0.036590163,0.72789955,0.15105984,-0.82491213,0.72040874]],"activation":"identity","dense_3_b":[[-0.1681641],[0.029928174],[-0.06739022]]},{"dense_4_W":[[-0.72666985,0.20831722,-0.5900348]],"dense_4_b":[[0.07989163]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json deleted file mode 100644 index 90ff54f85d..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.266456],[1.0311108],[0.42161182],[0.035121582],[1.0182426],[1.0210766],[1.024199],[1.0197712],[1.0053324],[0.98283356],[0.95835906],[0.03495412],[0.034997974],[0.03503269],[0.035035565],[0.034975693],[0.034770522],[0.034426987]],"model_test_loss":0.011608563363552094,"input_size":18,"current_date_and_time":"2023-08-11_04-58-44","input_mean":[[25.311535],[-0.031563792],[0.0060295113],[0.0037024636],[-0.034909807],[-0.034477167],[-0.03452592],[-0.032167524],[-0.028398417],[-0.025096538],[-0.02253926],[0.0035288066],[0.0035584755],[0.0035877393],[0.0036529114],[0.0036560637],[0.003644573],[0.0036541703]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.06250458],[0.7717496],[2.6856744],[-3.0798275],[-0.047530472],[-0.1521214],[-0.86107486]],"dense_1_W":[[-0.0058309548,1.6388441,6.026957,-0.7815384,-3.1444395,0.29995996,-0.6111942,1.4489828,1.5309435,0.9753039,-2.0177133,0.991274,0.99092865,-0.50581515,0.16233689,-0.99065316,-0.67018527,0.90234095],[-0.42814094,-0.57456744,0.0007794493,0.023858974,0.11595472,-1.2281862,0.6903777,0.243981,0.38887268,-0.085606225,-0.22763428,-0.020143623,-0.5932556,0.34875482,0.60443676,-0.12836404,0.1324796,-0.18602186],[1.1931428,0.05919804,0.05402463,-0.55798566,-0.36006367,0.7021459,-0.3192777,-0.27177683,0.6936569,1.2172635,0.96187454,0.38691327,0.35159546,0.032515947,0.16563621,-0.22681683,-0.04875851,-0.2965481],[-1.2964138,-0.2337551,0.0634739,-0.31843027,-0.3538266,1.1500596,-0.8726868,0.0036669122,1.0422454,1.1141241,0.9607149,0.40760738,0.06241413,0.11646168,-0.073522024,0.22547582,-0.30052686,-0.31555784],[0.0072235786,0.5063357,0.9562675,-0.48209998,-0.27141708,1.5686616,-1.061574,0.5231472,1.0100089,0.05071974,-1.886694,0.41332957,-0.06334984,-0.97750497,0.6102102,0.22696678,-0.06319088,0.0048847888],[0.006333134,1.688374,-0.0095348805,-0.66412175,0.28531587,2.01203,-0.1819137,-0.7547143,-0.31330884,0.35432032,0.33640975,0.016374094,-0.13819215,-0.15855257,0.40649945,0.33540976,-0.0046302704,-0.35495433],[0.4090967,-0.19826725,-0.0013017637,-0.5116933,0.38453588,-1.7476666,0.8353978,0.15093791,-0.14092202,0.31026828,-0.26896203,-0.28421417,-0.206051,0.5156937,0.7495738,0.24013326,-0.16817766,-0.15013888]],"activation":"σ"},{"dense_2_W":[[-0.28553647,0.51897234,0.3232974,-0.14583516,-0.6494069,-0.18854451,0.45899993],[-0.18945166,-0.7805358,0.21762379,0.06925927,0.1412742,-0.54521996,-0.49447703],[0.41819847,0.7103663,-0.36324528,-0.54330885,-0.2780997,-0.21234678,0.45622718],[0.45189,-0.30940267,0.2796695,-0.10068664,0.33236605,0.39892736,-0.23690474],[-0.00033029245,-0.2876081,0.21365881,-0.263795,-0.7780459,0.21173872,0.754661],[-0.4982613,-0.41572687,0.6875971,0.3845866,-0.026780535,0.85438734,-1.1519399],[-0.4147085,0.22912927,-0.54870033,0.3551388,-0.4057759,-0.1996842,0.34155196],[-0.46657288,-0.743298,-0.65183616,-0.358357,0.16232346,0.19327608,-0.015862346],[-0.5780829,0.48190355,0.42865816,-0.360802,-0.6834505,0.55482894,0.14401308],[0.51356256,-0.76134664,-0.3057201,0.3803027,-0.00610297,0.3648528,-1.0003062],[-0.690029,0.5113393,-0.7087683,0.38381904,-0.08314878,-0.2460164,-0.0017047548],[-0.2095539,-0.88663155,-0.05008726,0.3074065,0.52681,-0.06860818,-0.748798],[-0.44802594,-0.3936492,0.163376,-0.55659366,-0.3931171,-0.76979935,0.38669378]],"activation":"σ","dense_2_b":[[-0.017743433],[-0.26510626],[-0.018595928],[-0.17289363],[0.02423361],[-0.006021742],[-0.0071125105],[-0.2604571],[0.09466738],[-0.0020451464],[-0.07033006],[-0.2086756],[-0.26478064]]},{"dense_3_W":[[-0.53581256,-0.22029524,-0.03227938,0.33162057,0.11482841,0.61525244,-0.26008266,0.6051382,0.45775265,0.43236297,-0.58764994,-0.07332099,-0.5288951],[-0.18867671,0.37646073,-0.3081562,0.23591055,-0.38460404,0.13270791,-0.61747444,-0.24434201,-0.16632886,0.723561,-0.37653255,0.03962427,-0.027843077],[0.30763236,-0.4282034,-0.46785048,0.21578372,0.20392036,0.38424364,0.31873167,0.18515399,-0.6173425,0.64338654,-0.038045872,0.49573293,0.5208863]],"activation":"identity","dense_3_b":[[-0.009245349],[-0.0014893641],[-0.022675076]]},{"dense_4_W":[[0.41954702,1.1624148,0.5703593]],"dense_4_b":[[-0.004366342]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json deleted file mode 100644 index d7b16b7060..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[7.92219],[1.0339159],[0.6051184],[0.040277395],[1.0160568],[1.0193809],[1.0235395],[0.9978284],[0.9780647],[0.953401],[0.92466515],[0.04011991],[0.040149756],[0.040181845],[0.040220965],[0.040193263],[0.039972864],[0.039762717]],"model_test_loss":0.010501861572265625,"input_size":18,"current_date_and_time":"2023-08-11_06-39-21","input_mean":[[22.015877],[0.016454747],[-0.0035791518],[-0.006060402],[0.017588632],[0.018613027],[0.01872038],[0.01622388],[0.013543572],[0.008158607],[0.0060163783],[-0.0061950283],[-0.006164029],[-0.006132473],[-0.0060454626],[-0.006085043],[-0.0062024957],[-0.006308306]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.08562436],[-0.13248813],[-0.6056908],[3.7711034],[-4.002061],[-1.0201851],[0.7905752]],"dense_1_W":[[0.008472031,1.9303364,5.75964,-1.236273,-1.9233848,-0.20769979,-0.50922215,0.77782845,0.93831205,1.015304,-1.6144773,0.83374774,0.7880719,-0.17530817,-0.22706063,-0.8191557,-0.19291312,0.83966184],[-0.007752059,-1.7240039,0.08638296,0.4374327,0.8499669,-0.58740795,0.44271347,-0.43893647,-0.79377645,-0.470287,0.6905167,-0.25326452,0.004325121,0.4151441,-0.20191722,-0.93765545,0.24482074,0.20686845],[-0.73755896,0.25490418,1.6415513,0.61049616,0.10450067,-0.005047854,0.26623517,-0.40121377,-0.57618237,-0.105919234,0.49663854,-0.18851577,0.003680681,0.07382204,-0.7838218,-1.418447,-0.8041371,0.06338623],[1.506414,-0.7172249,-0.26160046,-0.3195705,0.061357655,-1.2254318,1.7426652,-0.39996,-0.8630745,-0.0965681,0.1755039,-0.43433473,0.072750255,0.7390096,0.6420074,-0.6429821,-0.19715068,0.40123448],[-1.462788,-0.25966784,-0.25197747,-0.74088174,-0.39430162,-0.6678362,1.4408759,-0.8539805,-0.67458963,-0.0025512646,0.098765895,-1.3845773,0.84524035,1.4456284,0.8360301,-0.89562434,-0.39231324,0.55299884],[0.96476454,-0.5160151,-0.058161568,0.09431531,0.24567744,-1.7172141,0.87807894,0.32966504,0.13244158,0.0830991,-0.20607454,-0.7199951,-0.3938647,1.0462891,0.21604428,0.09326921,0.23194839,-0.21566468],[-1.0580249,-0.091983035,-0.06607944,-0.14238882,-0.032799177,-1.615105,0.88772935,-0.1148385,0.30407813,0.14823009,-0.25907746,-0.43574435,-0.119376965,0.4874739,0.5467528,0.2210292,-0.21703728,0.02701344]],"activation":"σ"},{"dense_2_W":[[-0.34801432,0.25854328,-0.10087859,0.91155136,0.47692245,0.386249,-0.07805484],[-0.114083804,0.08665275,-0.40829253,0.5105505,0.50143373,0.42545924,0.43460196],[-0.07745485,0.19914009,0.59899527,-0.86949354,-0.60257334,-0.27688003,-0.39490694],[-0.35776904,-0.09782943,-0.3387631,-0.6445889,-0.13637964,0.037489194,-0.4306386],[0.3664335,0.082265064,-0.3529968,-0.21454561,-0.690712,-0.40638104,-0.22740813],[-0.0052428595,0.06399636,-0.4362087,0.3643625,0.1340138,0.880946,0.51570714],[-0.42193365,-0.1661316,-0.4134133,0.069665395,-0.19969232,-0.49261189,-0.5509127],[0.429386,-0.04167956,0.069151536,0.054689564,-0.50504297,-0.5080177,-0.41438618],[0.61227196,-0.043998886,0.32082903,-0.45597827,-0.52242905,-0.10526631,-0.43464538],[-0.23791881,0.37427938,0.07763096,0.38759655,0.6870389,-0.2448108,0.22891921],[0.28850517,0.116395116,0.22972369,-0.40831333,0.26074657,-1.0264262,-0.5928814],[-0.8139447,-0.14806162,0.15462387,-0.42620218,-1.2090021,0.666371,-0.6178426],[-0.63677526,0.8647508,0.5548903,0.1261759,0.304771,0.28499243,-0.14660935]],"activation":"σ","dense_2_b":[[-0.21753441],[-0.5461314],[0.105829634],[0.15688233],[0.18240593],[-0.6977311],[0.17758703],[0.21791771],[0.110497065],[-0.45180324],[0.19605672],[-0.012792069],[-0.2483234]]},{"dense_3_W":[[-0.075603865,-0.4466055,0.2090132,0.44769254,0.5857853,-0.0886282,0.6599453,0.52339387,0.18296923,-0.4225845,0.26281965,-0.10703673,-0.6357655],[0.6664568,0.21380727,-0.21715312,-0.17340335,-0.029390512,0.43210483,-0.19127384,-0.4889734,-0.27069238,-0.16609475,-0.29695383,-0.6717075,0.570048],[-0.49318448,-0.535808,0.0617476,-0.29404658,0.3541034,-0.5322448,0.15549439,0.55970424,0.3449248,0.16689838,0.35094023,0.17978139,0.0012035011]],"activation":"identity","dense_3_b":[[0.009320866],[-0.014181249],[-0.008072699]]},{"dense_4_W":[[0.9121412,-0.99914575,0.15805192]],"dense_4_b":[[0.015280737]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json deleted file mode 100644 index 20e8650482..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.101178],[1.576821],[0.6001426],[0.05129009],[1.5563219],[1.5635437],[1.5707226],[1.5433452],[1.5103695],[1.4539864],[1.3962219],[0.051048342],[0.051107466],[0.051158227],[0.051144693],[0.05100346],[0.05054137],[0.049878743]],"model_test_loss":0.0073623862117528915,"input_size":18,"current_date_and_time":"2023-08-11_16-04-06","input_mean":[[24.654629],[-0.08590741],[-0.0009184312],[-4.0871888e-5],[-0.081669286],[-0.08285683],[-0.085108146],[-0.08099603],[-0.07861437],[-0.07853552],[-0.07747747],[-6.709087e-5],[-5.751621e-5],[-5.7667265e-5],[-0.000100658726],[-0.00015130512],[-0.000163422],[-0.0002661297]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.21534623],[-0.118863985],[-0.3162109],[-0.008301526],[-0.20225163],[-0.81838286],[-0.44373506]],"dense_1_W":[[-0.010962684,1.3271043,-0.2114807,-0.23165482,-0.46575153,1.4799869,-0.1840072,-0.33480445,-0.25981382,0.6701327,-0.23557165,0.70862395,-0.25953412,-0.40407246,0.21034719,0.26426816,0.26048476,-0.37272432],[0.063116424,-0.37950125,0.07257917,-0.3190763,-0.24379982,1.2784098,-0.7842402,0.43258125,-0.052969795,-0.12413401,0.06709847,0.2559667,0.22473153,-0.22734967,0.023825992,0.016029818,-0.028326835,0.059578158],[-0.3016696,-0.075852886,0.0527521,-0.011209507,-0.6228015,1.1113851,-0.34559983,0.22142892,0.2554701,-0.2911173,0.057123005,-0.021941856,0.38191658,-0.26981074,-0.23588574,-0.13898829,0.22445364,-0.04848302],[0.05634534,-0.51824033,-0.003713693,0.08173703,0.16384764,-0.88854563,0.7730121,0.17500255,0.047530588,-0.5229133,0.20252858,-0.44388622,0.25572473,0.42722487,-0.1655544,-0.104584515,0.3827446,-0.14453594],[-0.0098065995,1.1461085,4.4271894,0.28766564,-0.67997473,-0.41923288,-0.65402234,0.04776276,0.7062483,0.22435577,-0.3855223,1.1025202,0.38395193,-0.13660425,-1.0991157,-0.9289552,0.24331227,0.12602676],[0.064604074,0.09815192,0.04449264,0.167245,0.10047873,0.8369896,-1.0633512,-0.02719515,0.48547852,0.00025195925,-0.115980625,0.22939739,-0.16308971,-0.2363354,0.035979815,0.039715026,-0.31373924,0.16439395],[0.14448808,0.42794606,0.023460679,-0.03131989,-0.18359396,0.92956793,-0.62810725,0.051745564,-0.007592588,-0.2550739,0.22733083,0.4052302,0.21245979,-0.54544073,-0.47292453,-0.01651716,0.28038526,-0.06726948]],"activation":"σ"},{"dense_2_W":[[0.3185951,0.38238007,0.50007355,-0.44696733,-0.18833564,0.49253,0.5151739],[-0.75351256,-0.02323625,0.15045765,1.1255723,-0.22760838,-0.5423463,-0.39320955],[0.5941869,0.6002208,0.67094994,0.1078536,-0.21703981,0.5121481,-0.044793326],[-0.18639438,-0.77096725,0.06640158,0.31278,-0.1791094,0.005353212,-0.7920676],[-0.5254911,-0.34967858,-0.04295217,-0.09182358,-0.49522772,-0.29707804,-0.26805338],[-0.11694704,-0.5764714,-0.77232236,0.83998466,0.2796507,-0.6095662,-0.6371917],[0.4697945,-0.81612813,0.41819504,0.0026271453,-1.0698678,-0.44858027,-0.71943],[0.032202445,-0.36785793,-0.89155453,0.91260713,0.26696843,-0.8249699,-0.7184577],[0.14048702,-0.056610133,0.32802385,-0.046393655,-0.78281575,-0.81149364,-0.6811588],[-0.15381347,0.34545475,0.3851575,-0.18525209,0.6611936,0.46200687,0.029352214],[-0.27863827,-0.90037704,0.31005386,-0.06176267,-0.49294484,-0.47007585,-0.21173601],[-0.5374982,-0.098829664,-0.25622907,0.6391975,0.0902377,-0.5835498,-0.6351781],[0.18176489,-0.1428339,0.6578572,-0.7403219,0.44002348,0.21766058,-0.061404295]],"activation":"σ","dense_2_b":[[-0.19657324],[0.20226727],[-0.10386356],[-0.010249704],[-0.094468534],[0.15300958],[-0.060326923],[0.024111554],[-0.15287803],[-0.29019067],[-0.05875744],[0.12496516],[-0.08454377]]},{"dense_3_W":[[-0.2886454,0.5095047,-0.57979405,0.36372662,0.13746898,0.34730884,0.6172098,0.14228286,-0.2412701,0.024884012,0.52553844,0.1899192,-0.2080911],[0.723521,0.30430666,-0.48175433,-0.18722822,0.17053263,-0.046900373,0.32055286,-0.28427157,-0.559016,0.6173524,0.38790986,-0.58535457,0.20128798],[-0.38595572,-0.74244434,0.6686922,-0.7516655,0.11421817,-0.66320103,0.02764821,-0.48069245,-0.52054244,0.78038347,-0.008231983,-0.19960494,0.5328335]],"activation":"identity","dense_3_b":[[-0.08028006],[0.05776726],[0.01632964]]},{"dense_4_W":[[-1.2012991,0.5136856,0.2434981]],"dense_4_b":[[0.07582895]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json deleted file mode 100644 index 44f09b93ef..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json +++ /dev/null @@ -1,120 +0,0 @@ -{ "input_std": [ - [ 10.799555 ], - [ 1.1120019 ], - [ 0.6616854 ], - [ 0.028482547 ], - [ 1.1156307 ], - [ 1.1159346 ], - [ 1.1148219 ], - [ 1.0780851 ], - [ 1.0371089 ], - [ 0.97595906 ], - [ 0.9065878 ], - [ 0.02847537 ], - [ 0.028477926 ], - [ 0.028481513 ], - [ 0.0284707 ], - [ 0.028458958 ], - [ 0.028488474 ], - [ 0.028483905 ] - ], - "model_test_loss": 0.02256479673087597, - "input_size": 18, - "current_date_and_time": "2023-12-25_22-57-21", - "input_mean": [ - [ 19.2235 ], - [ -0.06585429 ], - [ -0.0064189 ], - [ -0.005323282 ], - [ -0.067707 ], - [ -0.0671286 ], - [ -0.06649458 ], - [ -0.060063194 ], - [ -0.05377905 ], - [ -0.04412506 ], - [ -0.035479717 ], - [ -0.0053720735 ], - [ -0.0053506913 ], - [ -0.0053401864 ], - [ -0.0052933325 ], - [ -0.005350221 ], - [ -0.0054709557 ], - [ -0.005746576 ] - ], - "input_vars": [ "v_ego", "lateral_accel", "lateral_jerk", "roll", "lateral_accel_m03", "lateral_accel_m02", "lateral_accel_m01", "lateral_accel_p03", "lateral_accel_p06", "lateral_accel_p10", "lateral_accel_p15", "roll_m03", "roll_m02", "roll_m01", "roll_p03", "roll_p06", "roll_p10", "roll_p15" ], - "output_size": 1, - "layers": [ - { - "dense_1_b": [ - [ -0.075336866 ], - [ -1.4379132 ], - [ 0.12846093 ], - [ -0.83898723 ], - [ -0.36279294 ], - [ -0.056873046 ], - [ 0.047107063 ] - ], - "dense_1_W": [ - [ -0.050702084, 0.23833075, 9.068456, 0.11729692, -2.24747, -1.9006892, -1.2767023, 2.3568945, 2.131596, 1.4344207, -1.032736, 0.49961105, -0.04982021, -0.3041553, -0.38732168, -0.08194013, 0.1400462, 0.06643751 ], - [ -0.7581488, -0.020518934, 0.5159834, -0.08114609, 0.7436459, -0.33153492, -0.49035493, 0.12532651, -0.12278706, 0.09580404, 0.12504527, 0.20612119, -0.45066848, 0.1813876, -0.24614686, 0.4758823, 0.2178751, -0.30032337 ], - [ -1.3949319, 0.67544717, -0.7753792, -0.15714955, -0.17681755, -0.25429842, -0.54722327, 0.5418026, 0.10016261, 0.0053565986, -0.39035755, -0.04587303, 0.36687377, -0.22805889, 0.093026236, 0.05298613, -0.23806311, 0.14899784 ], - [ -0.42220324, 0.04483509, -0.40907508, 0.11821204, 0.073940635, -0.017443, 0.19060583, -0.6515505, 0.34508246, -0.08026583, -0.018325916, -0.16471778, -0.05598569, 0.17481138, -0.14715311, -0.080125585, 0.3393668, -0.19069892 ], - [ -1.4330497, -0.64631116, 0.6935077, 0.2762588, -0.14516634, 0.15581381, 0.6870634, -0.014884118, -0.44512376, 0.12536626, 0.2644134, 0.14975125, -0.33620888, 0.1905219, -0.19605163, -0.1808306, -0.0016299848, 0.106743194 ], - [ -0.010526905, -0.7717455, 0.0070439703, -0.22383846, -0.415478, 0.0844275, 0.2170057, -0.069986425, 0.22479944, 0.2915719, -0.4006947, 0.07989299, -0.0019174323, 0.220215, -0.020739302, 0.010475229, -0.27987975, 0.21558948 ], - [ 0.00034062448, 0.6978409, -0.0499567, -0.16071245, 0.07709055, -0.11454262, -0.42469633, 0.14393206, 0.38380122, 0.15885039, -0.24375756, 0.1721643, 0.024053562, 0.219485, -0.079801545, -0.6738785, -0.18035688, 0.3041013 ] - ], - "activation": "σ" - }, - { - "dense_2_W": [ - [ -0.47582296, -0.3389653, -0.25085196, 0.4886556, 0.6374338, 1.1124122, -1.06381 ], - [ 0.27025986, -1.2483587, 0.17614846, 0.6991092, -0.2602735, -0.120778754, -0.09193157 ], - [ 0.4948387, 0.7217855, 0.111300245, -0.9388221, -0.4064722, -0.17349482, 0.43001428 ], - [ 0.22625388, 0.74308527, 0.6891021, -0.26306373, -0.597923, -1.2967286, 0.22016492 ], - [ 0.021139862, -1.1632888, -1.0416571, 0.3494392, 0.6425689, 1.8975137, -0.8081407 ], - [ -0.52389294, 0.6372325, 0.6633958, -0.64765304, 0.20338675, -0.027452167, 0.506291 ], - [ 0.39088923, 0.7343456, 0.09120028, -1.1630384, 0.023677234, -0.19186972, 0.07007424 ], - [ -0.449708, 0.3169958, 0.4992463, -0.67045796, -0.47493598, -0.00015411235, 0.43920174 ], - [ -1.1875321, -0.68294007, -1.1207345, -0.65358764, -0.14696452, 0.3581226, 0.048447974 ], - [ -1.1105211, 0.01114233, -0.15045986, 0.6279203, 0.81262004, 0.6925559, -0.9141913 ], - [ 0.29771498, -0.085332215, -0.10415446, 0.30199984, -0.15799537, 0.36737302, -0.6503492 ], - [ -0.64377147, -0.65133274, -0.5873282, 1.0216556, 0.32842088, 1.4965141, -0.34098 ], - [ 0.14713718, -0.773232, -0.35718775, 0.5903775, -0.02301098, 0.48789024, 0.0144560225 ] - ], - "activation": "σ", - "dense_2_b": [ - [ -0.06163904 ], - [ -0.23192078 ], - [ -0.1009967 ], - [ -0.16059391 ], - [ 0.23239176 ], - [ 0.14465374 ], - [ -0.1871548 ], - [ 0.073026784 ], - [ -0.046453997 ], - [ -0.41197765 ], - [ -0.2929203 ], - [ 0.12238579 ], - [ -0.23292084 ] - ] - }, - { - "dense_3_W": [ - [ 0.4508514, 0.08078731, 0.37861827, 0.28543904, 0.042243864, 0.20070161, 0.45177004, -0.23327906, 0.2789905, -0.30319306, -0.13606939, -0.2258465, 0.30893984 ], - [ 0.19797017, -0.54021436, 0.50532675, 0.6035604, -0.7982811, 0.510931, 0.10049933, 0.506153, 0.59682614, -0.4687595, -0.1153152, -0.7137997, -0.22665377 ], - [ 0.5610325, -0.23229897, -0.61403847, -0.3500231, 0.35477564, -0.08623257, -0.5712205, 0.10214144, -0.10332114, 0.71979856, 0.07346336, 0.16925354, -0.10480455 ] - ], - "activation": "identity", - "dense_3_b": [ - [ -0.05611255 ], - [ 0.059826545 ], - [ -0.05803037 ] - ] - }, - { - "dense_4_W": [ [ -0.15714681, 1.1904545, -1.1465737 ] ], - "dense_4_b": [ [ 0.058684155 ] ], - "activation": "identity" - } - ] -} diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json deleted file mode 100644 index a9250081a1..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.59148],[1.2493986],[0.5269206],[0.041249365],[1.2364323],[1.2408036],[1.244121],[1.2149953],[1.1840745],[1.139739],[1.0999022],[0.04111617],[0.041138012],[0.04116289],[0.041093722],[0.04103911],[0.040840328],[0.04053395]],"model_test_loss":0.013219255954027176,"input_size":18,"current_date_and_time":"2023-08-12_04-15-52","input_mean":[[22.762989],[0.029107802],[-0.0036903925],[-0.0018161334],[0.02989136],[0.030132128],[0.029675554],[0.031246228],[0.032991253],[0.033477113],[0.031189695],[-0.0017968083],[-0.001822502],[-0.0018435197],[-0.0018475861],[-0.0018452929],[-0.0018318946],[-0.001845115]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.24648063],[-2.376559],[1.1662444],[-0.26554593],[-0.32742506],[1.4806708],[-0.0031550017]],"dense_1_W":[[-0.0022086294,-0.40385738,-1.160377,0.058853727,-0.45829934,-0.9892548,0.7024091,-0.026199905,0.1490116,-0.15794931,0.3758965,0.049813736,0.32553354,0.32745218,-0.17973755,0.050215364,-0.19431834,0.20708089],[-0.9471611,-0.7732935,0.0040800874,0.5742045,-0.18457998,-1.2835798,0.6246207,-0.14899649,0.18967356,-0.065814145,-0.15127227,-0.3386243,-0.23807645,0.6077654,-0.5328684,-0.30787334,0.28645578,0.14132696],[1.0173131,0.3188301,0.0074244044,0.61990887,0.7274369,-0.93646467,1.0704489,0.76136214,-0.32295448,-0.01725006,0.07569445,0.18620366,-0.17104647,0.29966894,-0.70542735,-0.7354604,0.016799392,0.30154032],[-0.20962188,-1.311333,-0.0026445198,0.17922984,0.531851,-1.5825989,0.7938387,0.0066229375,-0.09016458,-0.30289832,0.17271148,-0.47236636,-0.30804113,0.6233303,0.12623943,-0.0055988682,-0.043602336,0.06712645],[-0.020458225,-0.42885244,-0.0038395484,-0.10207273,-0.015277347,-1.4454521,1.3775421,-0.118530035,-0.22922382,0.17729308,-0.09748722,-0.89088255,-0.178599,0.85357165,0.35415354,0.43488976,0.04118875,-0.33566797],[0.8193772,-0.6007122,-0.0017037725,0.13282925,-0.11202925,-0.929353,0.317924,-0.11701756,0.10553851,-0.3365874,0.0851421,-0.054551814,0.0054372363,0.36028123,-0.2594373,-0.61298895,0.37971976,0.19868912],[0.008058829,1.6243702,6.4016485,-0.019551624,-1.5234914,-0.4204991,-1.3425288,-0.4094253,2.030977,1.4565194,-0.8323464,1.296278,0.47479084,-0.09157813,-1.1762311,-0.8872532,-0.12166119,0.38413718]],"activation":"σ"},{"dense_2_W":[[-0.28090087,0.74190426,-0.28707552,0.516355,1.334883,0.4357577,0.2586334],[-0.34608322,-0.33025268,0.0999196,-0.5887224,-0.6075646,0.64398736,0.3338182],[-0.31348327,-0.8770239,-0.6024458,-0.6178695,-0.6372776,-0.72627634,-0.16278459],[-0.3722624,-1.0817293,0.42359433,-0.33799604,0.10361065,0.7388388,1.3176775],[-0.29480588,0.7901369,0.17133124,0.4799114,0.85245687,-0.013445694,0.14533967],[-0.87411815,-0.16010237,-1.4885652,-0.29839927,-0.20605023,-1.562838,0.5986846],[-0.73472345,0.338243,-0.9374241,0.02173104,-0.7596491,0.6785289,-0.20274258],[-0.2997788,0.2209799,0.48596287,0.78598267,0.9243628,0.023341166,-0.43850183],[0.4222353,0.5027177,1.0574167,0.43871415,0.28589502,0.78985494,-0.5190039],[-0.18783973,-0.56768733,0.050845794,-0.28815973,-0.94438463,-0.2522084,0.32373685],[-0.106311925,-0.35109058,-1.1950349,-1.3491938,-0.63636744,-0.85660255,0.65720135],[0.11469332,0.6067198,-0.0036478473,-0.1060145,0.81046635,-0.43815076,-0.32849914],[0.02783019,-0.4614942,-0.2623803,-0.9181543,-0.88305587,0.06497931,-0.5045385]],"activation":"σ","dense_2_b":[[-0.15510015],[0.2342048],[0.15416661],[0.7777073],[-0.13564527],[0.14683509],[0.024061315],[-0.08486859],[-0.11236216],[0.14123017],[0.1472493],[-0.2562387],[0.1431819]]},{"dense_3_W":[[-0.39276794,-0.16104949,-0.6395178,-0.085208185,0.073711544,-0.10194128,0.45973158,0.53386575,0.3106653,0.012114314,-0.73890895,-0.1875676,-0.678936],[0.7250477,-0.36109838,-0.2772502,-0.73887503,0.37471095,-0.6863193,-0.5893201,0.13003068,0.5410711,-0.3264668,-0.8585225,0.46357864,-0.7054099],[0.12821884,-0.55353826,-0.29466185,0.21078463,0.06601266,-0.4738428,-0.10462136,0.5951863,-0.07738918,-0.641871,0.18521658,0.1677981,-0.252422]],"activation":"identity","dense_3_b":[[0.04069802],[0.026384773],[0.020536864]]},{"dense_4_W":[[-0.29379988,-1.0209042,-0.20056948]],"dense_4_b":[[-0.02549032]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json deleted file mode 100644 index ed522a3754..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.797211],[1.4073237],[0.45344877],[0.04491299],[1.3987288],[1.4015741],[1.4033431],[1.3713129],[1.3358603],[1.2864146],[1.2356204],[0.044730604],[0.04476502],[0.04479927],[0.044761524],[0.04463559],[0.04441582],[0.04400734]],"model_test_loss":0.01496149692684412,"input_size":18,"current_date_and_time":"2023-08-12_05-44-01","input_mean":[[23.06539],[0.022372128],[-0.018723505],[-0.0037287462],[0.025849355],[0.024471685],[0.022525933],[0.017384581],[0.017084958],[0.015315184],[0.014839374],[-0.0038067892],[-0.0038066467],[-0.0038155483],[-0.0038835425],[-0.003969397],[-0.004126497],[-0.004283849]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-5.0399375],[0.66340405],[-0.08379381],[-0.1257602],[0.30399242],[-4.494502],[0.27936158]],"dense_1_W":[[-2.5363288,-0.57757294,0.0027555253,-0.69334877,0.13913916,0.38319087,0.95406264,-0.95457584,-0.033972528,-0.21526104,-0.67382884,0.1485172,0.4771976,0.18877178,-0.16290484,-0.016111093,-0.40084124,0.40098542],[-0.10251014,0.90069646,0.0015895946,-0.29654703,-0.49717396,1.268891,-0.8686852,0.106027365,-0.08154456,0.054320164,-0.0015901169,0.28086966,0.37089986,-0.39758688,0.089162976,-0.20091611,-0.019581586,0.1379176],[-0.0021139083,-0.5681109,0.0045096576,0.37979248,0.21457663,-1.1264517,1.0069007,-0.28261423,-0.2431941,0.19875054,0.0066458527,0.109028324,-0.3649011,0.09212255,0.49301502,-0.059227098,0.07381374,-0.17722736],[0.008648403,0.87794864,3.1009352,0.21482791,-0.8084606,0.18275541,0.3635672,-0.08733222,0.9668826,0.25053218,-1.0132065,0.3902859,0.59336084,0.04232025,-1.0975246,-0.20822704,-0.42172226,0.30119237],[-0.1216848,-0.9771412,-0.017562695,0.23040251,0.120802276,-0.26227885,0.70101273,-0.29537383,0.036361422,-0.3592869,0.32375747,-0.17707966,-0.4159238,0.05444697,0.37961268,0.26376435,-0.019785738,-0.23029959],[-2.2624679,0.24792579,-0.003632164,0.46374714,-0.43607607,0.033397473,-0.29120448,0.24237801,0.22114673,0.041112114,0.76203763,0.109556496,-0.29734334,-0.6331814,0.29980987,0.17154595,0.35740486,-0.4158375],[-0.034173463,-0.5125805,0.011909321,-0.24246725,-0.007852726,-0.9268454,0.438557,-0.2839944,0.24563706,0.2190338,-0.2901443,-0.34727386,0.33995688,0.16540235,0.28732327,-0.35981894,0.041257735,0.058045775]],"activation":"σ"},{"dense_2_W":[[-0.1993436,0.701577,-0.41372073,-0.09332039,-0.36059406,0.77733815,-0.833145],[-1.5271622,1.5048598,-0.77010024,0.07560495,-0.71047103,1.3006324,-0.5117385],[0.46061924,-0.008243548,-0.85892344,1.2595167,-0.948924,2.2698135,-1.942301],[0.061940253,-0.31634828,0.0798406,0.34763846,0.021756,-0.46359214,-0.07392033],[-0.2696488,-0.40507072,0.19450307,-0.6713937,0.40933418,0.14875686,-0.03199306],[0.014884351,-0.18024068,0.36034963,0.07164113,0.0156314,0.371164,-0.27950096],[-1.5902536,1.8198748,-0.7683764,1.3738456,-0.092035376,-0.3063631,-0.5351149],[-0.1981007,-0.3395727,0.57789916,0.21266969,-0.19264036,0.3517743,0.2045635],[-0.25479048,-0.42085296,0.2920033,0.060998514,0.1293151,0.31961867,-0.46009016],[0.3049363,-0.22684415,-0.034080368,0.0790401,0.61918515,0.29823962,0.09349991],[-0.4494046,0.31757298,-0.4080604,0.20879479,-0.44578844,0.58260244,-0.096968025],[-0.21508828,0.32704902,-0.51432735,0.7326623,-0.6550922,1.1410198,-0.62732315],[0.12526976,-0.09556271,0.63842154,-0.61208946,0.3558117,-0.23578581,0.62607837]],"activation":"σ","dense_2_b":[[-0.017869094],[0.36151597],[-0.1958973],[-0.023889307],[-0.0017105008],[-0.03132981],[0.2619224],[-0.013072357],[-0.013901752],[0.023021301],[-0.13436924],[-0.46172282],[-0.04681776]]},{"dense_3_W":[[-0.052120414,0.029567413,-0.66409993,0.094393685,0.31642377,0.10608072,-0.3086923,-0.040440086,0.03381829,0.66097414,-0.4579581,-0.51134187,0.57541263],[0.5851281,-0.17931658,-0.4185391,0.1195394,0.36722615,-0.21088938,-0.32132354,0.42602026,-0.47596413,-0.3402495,-0.26624802,-0.5764113,0.0354186],[-0.6289345,-0.8272402,-0.0011975961,0.18056613,0.063398294,-0.034670547,-0.5280208,0.43154517,0.0023103878,0.2373611,-0.08228515,0.107933424,-0.03365145]],"activation":"identity","dense_3_b":[[0.053374246],[-0.03893916],[0.06737692]]},{"dense_4_W":[[-1.0474417,0.35237366,-0.9325995]],"dense_4_b":[[-0.057818808]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json deleted file mode 100644 index e1a890e78a..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.621243],[1.130312],[0.5516336],[0.041195676],[1.126876],[1.1290765],[1.1299986],[1.1140016],[1.0942802],[1.061783],[1.0278625],[0.041149452],[0.041160367],[0.041163765],[0.041012943],[0.04082218],[0.04049875],[0.040250767]],"model_test_loss":0.010191036388278008,"input_size":18,"current_date_and_time":"2023-08-12_10-54-52","input_mean":[[23.69867],[-0.09237417],[-0.024359873],[0.005003234],[-0.08491814],[-0.08716023],[-0.08930154],[-0.09497029],[-0.09355577],[-0.09201378],[-0.08880379],[0.005034295],[0.0050175954],[0.004999444],[0.0049864235],[0.004929149],[0.0046412693],[0.0043429676]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.0368268],[-0.6035686],[-0.37980628],[-0.38712236],[-0.31054008],[-0.35742834],[-0.1745767]],"dense_1_W":[[-0.30988532,0.94676775,0.06835736,-0.20904909,-0.31267637,0.4459532,-0.75116515,0.18319201,-0.16871549,0.01450603,0.094541326,0.19128986,0.094970584,-0.10434261,-0.12030237,0.08215967,-0.0004368318,-0.008146429],[-0.33773926,-0.57431877,-0.082528114,0.034690164,0.29717553,-1.3232597,1.2727411,-0.00825284,0.058543384,0.08819038,-0.25790802,0.36763,-0.3964585,-0.25440165,0.26645663,0.1723957,-0.13807693,0.016459083],[-0.643219,-0.52567714,0.16125901,0.35280794,-0.27486697,1.1864855,-0.64119214,0.28674185,0.24847941,-0.064988114,0.18981163,0.030853774,0.2485369,-0.36588603,-0.2141448,-0.24320458,0.054182176,0.08016488],[1.8329483,0.19176741,0.3630878,0.8177945,1.0301634,-0.8391618,0.029882386,0.28434104,-0.2605399,0.032751296,0.7037072,0.12650606,-0.5634059,-0.14148597,-0.14909759,-0.23083402,0.19594365,-0.15800387],[1.6136711,-0.023185488,-0.330168,-0.64757305,-0.7903925,0.3184771,-0.125178,0.5074217,-0.091587566,-0.15822329,-0.59075946,0.099624775,0.28776196,0.25979534,-0.31621882,0.2251791,0.16301762,0.015307925],[-0.012423788,1.3620756,3.723387,-0.09946844,-2.2505002,-0.6505167,-0.3025472,1.0916159,1.1659752,0.5379025,-0.8302681,0.2763101,0.3852661,0.03025497,-0.38073367,-0.20023987,-0.20818618,0.33501345],[0.035275426,0.13343032,-0.01315199,-0.16700771,-0.012076806,1.0922886,-0.46189055,0.04980423,0.22884117,0.08929184,-0.13899224,0.27415225,0.107125394,-0.21544056,-0.15122053,0.015403071,-0.16977242,0.05957028]],"activation":"σ"},{"dense_2_W":[[-0.32195273,-0.80007017,-0.047992315,0.00076893583,0.086762525,-0.2853599,-0.46519622],[-0.8466131,0.8392215,-0.625954,0.53587455,-0.05725867,0.48061028,-1.0681951],[0.6704792,-0.88257265,0.048325025,-0.11247827,-0.5555944,0.48655844,0.15341099],[-0.73055834,0.18692662,-0.0051072617,-0.28417185,-0.79494137,-1.1081446,0.3546513],[0.6564168,-0.9941641,-0.012599699,0.055534486,0.1949257,0.11912132,0.67601776],[-0.92568284,0.19816734,0.006052384,0.5773367,-0.58242613,-0.10242073,-0.62971866],[0.026353309,-0.101803504,-0.13243441,0.11023436,-0.18115512,-0.31580073,0.35157788],[0.024816064,0.74383426,-0.6058626,0.1693422,0.13700868,-0.34494787,-0.2539183],[-0.6846791,0.70265,-0.30746013,-0.5157588,-0.22700436,-0.56013364,-0.05191689],[-0.044140954,0.0018182937,0.14246152,-0.66603386,-0.27544877,-0.9813431,0.020237492],[-0.25419834,1.060303,-0.05096676,-0.4194434,-0.34662414,-0.66279954,-0.45178506],[0.35331485,-0.35900408,0.12481251,-0.69748133,-0.11242132,0.0421719,0.95737815],[-0.18702975,-0.19013745,-0.59367853,0.335176,0.036005035,0.045245975,-0.4265972]],"activation":"σ","dense_2_b":[[-0.30476797],[-0.195294],[-0.25333008],[-0.10860839],[-0.2226989],[-0.032822598],[-0.011119534],[-0.055506833],[-0.029588649],[-0.3181418],[0.07300559],[-0.06738982],[-0.15821727]]},{"dense_3_W":[[0.034150075,0.57094276,-0.48878017,0.5112273,-0.18092011,0.5353878,-0.11806307,0.3421746,0.47612357,0.52546614,0.15649377,0.1728523,0.4344787],[0.121647194,0.3492057,0.17216049,0.41008264,-0.7363858,0.18355447,-0.514776,-0.17685267,-0.14863887,-0.03910745,0.48813453,-0.7858287,-0.2943318],[0.33316976,0.06313858,0.2317506,0.47803766,-0.19028156,-0.13142887,-0.5406721,-0.3424372,-0.3295334,0.5573225,-0.1931224,0.24481794,-0.14382799]],"activation":"identity","dense_3_b":[[-0.10088669],[-0.08613214],[0.09071597]]},{"dense_4_W":[[-1.2123189,-1.2992013,0.67285275]],"dense_4_b":[[0.09299899]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json deleted file mode 100644 index 0b66eb0995..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.762099],[1.487393],[0.60882616],[0.045595963],[1.4832315],[1.4860536],[1.486883],[1.4329017],[1.3824382],[1.3180021],[1.2599565],[0.045492638],[0.04550747],[0.04551469],[0.04532005],[0.045169514],[0.044900604],[0.04442004]],"model_test_loss":0.023460322991013527,"input_size":18,"current_date_and_time":"2023-08-12_11-56-57","input_mean":[[22.102732],[-0.036377847],[0.008207928],[-0.00759032],[-0.039697252],[-0.039314914],[-0.038734905],[-0.03351559],[-0.029701687],[-0.02374894],[-0.019018527],[-0.0075716134],[-0.0075744586],[-0.007576846],[-0.007673164],[-0.0077769123],[-0.007848316],[-0.007871212]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.2464235],[0.36032724],[3.2142584],[-0.6124687],[-0.3444237],[0.84660757],[2.4967933]],"dense_1_W":[[0.48956943,-1.0167718,0.00075395213,0.31859773,0.35728282,-1.7345634,1.4772928,0.22698121,-0.008497222,-0.2401796,0.06579528,-0.9262515,0.41439727,0.08820266,0.18549742,0.15475516,0.28202718,-0.3306144],[-0.01902877,1.317417,5.2883816,-0.0048064315,-1.1207271,0.14153387,-0.48907554,0.5965518,1.3317474,0.93645155,-1.5463351,0.8940235,0.01715244,-0.09698201,-0.79124266,-0.60062087,-0.5283351,0.48210177],[1.6799453,1.0875803,0.7233399,-0.1154038,0.13903706,0.6666519,-0.57941824,1.110945,0.8287281,-0.39736634,0.014497336,0.8294811,-0.24227042,-0.8082123,-0.11531884,0.3998047,0.38992816,-0.4658866],[-0.0093339095,-0.5626546,-6.469625,-0.24272315,1.8790531,1.1458817,1.6199373,-0.19717191,-2.2601504,-1.494756,-0.0270969,-0.83446693,0.017938558,0.20106375,0.4829865,-0.20796809,0.36888748,0.11745824],[-0.047758993,-3.753541,-0.18051493,-0.1676101,0.06609924,-0.8893684,-0.49023744,-1.0407737,-1.7489501,-1.3261193,-0.87734985,-0.39572844,0.64688593,0.5416982,-0.38286057,-0.97357833,-0.100056775,0.65565544],[-0.5856627,-0.59970623,0.0013667468,-0.121420965,-0.036623403,-0.898132,0.6988883,0.062262405,-0.06344699,-0.09589227,0.0075431895,-0.70993936,0.20738071,0.40989095,0.48009038,0.008462325,0.07712684,-0.15405595],[1.4587147,-1.1636585,-0.6985848,0.15750197,-0.38945892,-0.008756978,0.24255253,-0.8265293,-0.7826147,0.05190376,0.17086956,-0.6203985,-0.076512754,0.65016216,0.08441122,-0.1163062,-0.10427384,0.15624847]],"activation":"σ"},{"dense_2_W":[[-1.632233,0.37712488,0.4133944,-0.49261183,0.4405689,-0.7207189,-0.38359222],[-0.8616621,-0.24084182,-0.9289986,-0.018349092,-2.5249062,1.1182486,-1.4555736],[-1.3167355,0.7074618,0.21640916,-1.1284393,0.46383277,-0.13820471,-0.9500447],[-0.92115754,-0.59398055,0.20591407,0.14233942,0.32264933,-1.0047222,0.5837284],[-0.19402613,-0.29334325,-1.0017632,-1.2045952,-1.4455371,1.3564488,-1.236838],[1.0292754,0.18309414,-0.60503435,-0.67400736,-0.025801765,1.5835614,-0.18880595],[-0.08803988,0.85121155,1.2177777,-0.7774471,-0.15086989,-0.46124795,0.47848985],[1.1849687,-0.86750364,-0.43640986,0.5167854,-0.0021778047,0.67761177,-0.039286524],[-0.53804636,-0.047613166,-0.43315673,1.0911809,-0.8549513,-1.652081,-0.3882718],[-0.7047395,-0.45552897,0.29509792,-0.18719345,-0.106475934,-0.82755125,-0.3893937],[-0.57848173,-0.24025704,0.64958143,0.42696828,-0.4415749,-0.83788425,0.5138786],[-1.049563,0.35799855,0.37039617,-0.7668992,-0.1432876,-0.07057645,-1.404517],[0.8964256,-0.7548794,0.4873239,0.77339566,0.51797086,-0.043386698,0.9278152]],"activation":"σ","dense_2_b":[[-0.090917155],[-0.019869018],[-0.2314992],[-0.3312451],[-0.111754775],[-0.020750022],[0.201929],[-0.09248944],[-0.12347164],[0.07316307],[-0.045670044],[0.038350813],[-0.18804084]]},{"dense_3_W":[[-0.031516537,-0.15004298,-0.18322755,-0.49024573,-0.26840314,-0.21953586,0.4307271,0.6146507,-0.13160063,0.5342723,-0.47197735,0.3113398,-0.17237346],[-0.08184883,0.48368433,-0.5115264,-0.38417426,0.8723999,-0.29197934,0.050145645,-0.76852167,0.28836453,0.057352327,0.47973254,0.25683725,-0.18866217],[-0.5150742,-0.38569307,-0.65030956,-0.5188455,-0.23875389,0.4727463,-0.512049,0.80167,-0.69323355,-0.5246097,-0.35622385,0.00080956175,0.41679603]],"activation":"identity","dense_3_b":[[0.005088476],[-0.02459968],[0.076397985]]},{"dense_4_W":[[-0.09449419,0.40851843,-0.86686087]],"dense_4_b":[[-0.053760864]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json deleted file mode 100644 index b0e40d3bc6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.993096],[1.5129169],[0.5292781],[0.04735161],[1.4937518],[1.5009559],[1.5065974],[1.4822813],[1.4460584],[1.3909396],[1.3364335],[0.047238417],[0.047255352],[0.04726677],[0.04720177],[0.047057327],[0.046800528],[0.046432514]],"model_test_loss":0.02137083187699318,"input_size":18,"current_date_and_time":"2023-08-12_14-47-11","input_mean":[[21.92725],[-0.05898304],[0.0055398513],[-0.010017767],[-0.05939448],[-0.0591323],[-0.05851898],[-0.054530293],[-0.04864468],[-0.03953879],[-0.033812713],[-0.010021071],[-0.010010929],[-0.010004903],[-0.009986946],[-0.010029537],[-0.010210251],[-0.010435901]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.7096349],[-2.2459192],[1.8050286],[0.14590603],[-0.21259946],[-0.4865897],[1.0180423]],"dense_1_W":[[-0.044355545,-0.86803615,-5.470682,0.7662393,2.2697113,0.20532803,0.7032451,-1.0900831,-1.6173851,-1.3596452,1.1005849,-0.6813092,-0.3240795,-0.1764869,-0.049160894,0.72827965,0.515452,-0.7062596],[-1.1831604,-0.62358975,-0.0026339197,0.44086918,-0.13777687,-1.6426544,0.7253186,0.21613201,-0.33259863,-0.30798477,-0.3028476,-0.6908554,-0.26595157,-0.034876596,0.27096295,0.12958722,0.28949723,-0.13089034],[1.129321,-0.1758684,-0.016361756,-0.10424338,-1.0363773,-0.9705366,0.7942455,-0.14791845,-0.4966791,-0.14422588,-0.39332545,-0.4259459,-0.18380871,0.013830062,0.29699945,0.06683513,0.43560967,-0.118786275],[-0.17347103,-1.1811129,-0.0033009297,-0.21089908,0.5171898,-0.897144,0.44509307,-0.106434815,-0.28461242,-0.4546323,0.11333945,-0.42986956,-0.46928948,0.63054854,0.28181624,0.14660357,-0.021812595,0.05028003],[0.007173049,-0.70618355,-1.4873191,0.58662444,-0.089591786,-1.1213539,-0.47290862,-0.51822674,0.0023703398,0.2661958,1.152991,0.08745119,0.581388,0.3216495,0.05185744,-0.47252813,-0.24824727,0.051313765],[0.06722459,-0.70006377,-0.003337988,0.18606693,0.5765867,-1.6360734,0.96973306,0.05009269,-0.029201366,0.17914243,-0.20576404,-0.3237746,-0.289676,0.26199174,0.35764173,0.1982268,-0.094512984,-0.064385064],[1.4187667,0.23352993,0.015063511,-0.32947004,0.76953924,-0.5759871,0.85416406,0.6099805,0.14313644,-0.0988441,0.43220612,0.40879938,0.055067588,0.46557856,-0.18368772,-0.54336697,0.18179518,-0.084707245]],"activation":"σ"},{"dense_2_W":[[0.5947046,0.111288555,0.5850431,0.62112284,-0.078394376,0.24245393,0.32209224],[-1.8208972,-0.592816,-1.642084,-0.38896674,0.5061991,0.19109774,-1.5200887],[0.025273113,-0.08020302,-0.41331917,-0.022847144,0.6140032,0.10955139,0.35156295],[-0.50207645,-0.009498558,0.5945049,0.09697446,-0.6907574,-0.44700485,-0.69720614],[0.023978695,0.4353877,-0.6338232,0.066216335,0.5071922,0.72722405,-0.37157634],[0.22281975,0.30087987,0.10793576,0.6051096,-0.050377756,0.06560134,0.19566649],[0.3174169,-0.5281018,-0.3769352,-0.9404693,-0.38535568,0.047176104,-0.29524794],[-0.01142797,-0.8428373,0.61943024,-0.07822464,-0.27282074,-1.3535438,-0.027685491],[-0.1500802,-0.7242349,-0.30430663,-0.9526516,0.07655578,-0.72111547,-0.26857635],[-0.812532,0.026910001,0.31951103,0.13876708,-0.52592987,-0.28904262,-0.7990699],[0.43766123,-1.7336309,0.24968149,-1.029645,-0.074033834,-1.2529281,-0.030552762],[-0.33508214,-0.42931655,0.42052394,0.17153797,0.019656077,-0.109691635,-0.8664852],[-2.0966787,-0.025330383,-1.3079646,-0.22694683,-0.28807703,0.07181863,-1.555939]],"activation":"σ","dense_2_b":[[-0.019173387],[0.12807891],[0.0059481813],[-0.17893082],[-0.051502828],[-0.02974034],[-0.02933723],[-0.0073013883],[0.22854811],[-0.202757],[0.043750115],[-0.28998128],[0.23772466]]},{"dense_3_W":[[-0.3590014,0.24275887,-0.008422746,0.5422629,-0.6242663,-0.45372233,0.2612047,0.42095724,0.65564615,0.24925809,-0.024278162,-0.009784553,0.2571832],[0.5248679,0.040475123,-0.10563131,0.51980525,0.6735201,0.606566,-0.4731102,0.38770038,-0.1824653,0.12611738,-0.4370857,-0.6336852,-0.24878174],[-0.24122173,-0.7736854,0.54332715,-0.3138175,-0.3822715,0.051808015,-0.5872665,-0.6603135,-0.71875435,-0.22510114,-0.56668365,0.3377473,-0.81265104]],"activation":"identity","dense_3_b":[[-0.024711734],[0.022470985],[0.04454885]]},{"dense_4_W":[[0.7645119,-0.6550188,-0.91781116]],"dense_4_b":[[-0.03211836]],"activation":"identity"}]} diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json deleted file mode 100644 index 489abe3692..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.993096],[1.5129169],[0.5292781],[0.04735161],[1.4937518],[1.5009559],[1.5065974],[1.4822813],[1.4460584],[1.3909396],[1.3364335],[0.047238417],[0.047255352],[0.04726677],[0.04720177],[0.047057327],[0.046800528],[0.046432514]],"model_test_loss":0.02137083187699318,"input_size":18,"current_date_and_time":"2023-08-12_14-47-11","input_mean":[[21.92725],[-0.05898304],[0.0055398513],[-0.010017767],[-0.05939448],[-0.0591323],[-0.05851898],[-0.054530293],[-0.04864468],[-0.03953879],[-0.033812713],[-0.010021071],[-0.010010929],[-0.010004903],[-0.009986946],[-0.010029537],[-0.010210251],[-0.010435901]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.7096349],[-2.2459192],[1.8050286],[0.14590603],[-0.21259946],[-0.4865897],[1.0180423]],"dense_1_W":[[-0.044355545,-0.86803615,-5.470682,0.7662393,2.2697113,0.20532803,0.7032451,-1.0900831,-1.6173851,-1.3596452,1.1005849,-0.6813092,-0.3240795,-0.1764869,-0.049160894,0.72827965,0.515452,-0.7062596],[-1.1831604,-0.62358975,-0.0026339197,0.44086918,-0.13777687,-1.6426544,0.7253186,0.21613201,-0.33259863,-0.30798477,-0.3028476,-0.6908554,-0.26595157,-0.034876596,0.27096295,0.12958722,0.28949723,-0.13089034],[1.129321,-0.1758684,-0.016361756,-0.10424338,-1.0363773,-0.9705366,0.7942455,-0.14791845,-0.4966791,-0.14422588,-0.39332545,-0.4259459,-0.18380871,0.013830062,0.29699945,0.06683513,0.43560967,-0.118786275],[-0.17347103,-1.1811129,-0.0033009297,-0.21089908,0.5171898,-0.897144,0.44509307,-0.106434815,-0.28461242,-0.4546323,0.11333945,-0.42986956,-0.46928948,0.63054854,0.28181624,0.14660357,-0.021812595,0.05028003],[0.007173049,-0.70618355,-1.4873191,0.58662444,-0.089591786,-1.1213539,-0.47290862,-0.51822674,0.0023703398,0.2661958,1.152991,0.08745119,0.581388,0.3216495,0.05185744,-0.47252813,-0.24824727,0.051313765],[0.06722459,-0.70006377,-0.003337988,0.18606693,0.5765867,-1.6360734,0.96973306,0.05009269,-0.029201366,0.17914243,-0.20576404,-0.3237746,-0.289676,0.26199174,0.35764173,0.1982268,-0.094512984,-0.064385064],[1.4187667,0.23352993,0.015063511,-0.32947004,0.76953924,-0.5759871,0.85416406,0.6099805,0.14313644,-0.0988441,0.43220612,0.40879938,0.055067588,0.46557856,-0.18368772,-0.54336697,0.18179518,-0.084707245]],"activation":"σ"},{"dense_2_W":[[0.5947046,0.111288555,0.5850431,0.62112284,-0.078394376,0.24245393,0.32209224],[-1.8208972,-0.592816,-1.642084,-0.38896674,0.5061991,0.19109774,-1.5200887],[0.025273113,-0.08020302,-0.41331917,-0.022847144,0.6140032,0.10955139,0.35156295],[-0.50207645,-0.009498558,0.5945049,0.09697446,-0.6907574,-0.44700485,-0.69720614],[0.023978695,0.4353877,-0.6338232,0.066216335,0.5071922,0.72722405,-0.37157634],[0.22281975,0.30087987,0.10793576,0.6051096,-0.050377756,0.06560134,0.19566649],[0.3174169,-0.5281018,-0.3769352,-0.9404693,-0.38535568,0.047176104,-0.29524794],[-0.01142797,-0.8428373,0.61943024,-0.07822464,-0.27282074,-1.3535438,-0.027685491],[-0.1500802,-0.7242349,-0.30430663,-0.9526516,0.07655578,-0.72111547,-0.26857635],[-0.812532,0.026910001,0.31951103,0.13876708,-0.52592987,-0.28904262,-0.7990699],[0.43766123,-1.7336309,0.24968149,-1.029645,-0.074033834,-1.2529281,-0.030552762],[-0.33508214,-0.42931655,0.42052394,0.17153797,0.019656077,-0.109691635,-0.8664852],[-2.0966787,-0.025330383,-1.3079646,-0.22694683,-0.28807703,0.07181863,-1.555939]],"activation":"σ","dense_2_b":[[-0.019173387],[0.12807891],[0.0059481813],[-0.17893082],[-0.051502828],[-0.02974034],[-0.02933723],[-0.0073013883],[0.22854811],[-0.202757],[0.043750115],[-0.28998128],[0.23772466]]},{"dense_3_W":[[-0.3590014,0.24275887,-0.008422746,0.5422629,-0.6242663,-0.45372233,0.2612047,0.42095724,0.65564615,0.24925809,-0.024278162,-0.009784553,0.2571832],[0.5248679,0.040475123,-0.10563131,0.51980525,0.6735201,0.606566,-0.4731102,0.38770038,-0.1824653,0.12611738,-0.4370857,-0.6336852,-0.24878174],[-0.24122173,-0.7736854,0.54332715,-0.3138175,-0.3822715,0.051808015,-0.5872665,-0.6603135,-0.71875435,-0.22510114,-0.56668365,0.3377473,-0.81265104]],"activation":"identity","dense_3_b":[[-0.024711734],[0.022470985],[0.04454885]]},{"dense_4_W":[[0.7645119,-0.6550188,-0.91781116]],"dense_4_b":[[-0.03211836]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json deleted file mode 100644 index e591efd503..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.246218],[1.5180237],[1.1132214],[0.032814745],[1.5758848],[1.5594358],[1.5396744],[1.4333483],[1.3656113],[1.2911646],[1.211073],[0.032817718],[0.032821406],[0.032829028],[0.03273625],[0.03268472],[0.03245208],[0.032211557]],"model_test_loss":0.011019937694072723,"input_size":18,"current_date_and_time":"2023-09-03_04-36-00","input_mean":[[16.336061],[-0.044645034],[0.06438527],[-0.015354921],[-0.055193648],[-0.05405257],[-0.051184133],[-0.0345687],[-0.027733065],[-0.022407],[-0.018130124],[-0.015424534],[-0.015413215],[-0.015394557],[-0.01529056],[-0.015231228],[-0.015114382],[-0.014972076]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.001179121],[-0.0008084346],[1.0273217],[0.8665842],[-1.7917292],[0.5846544],[1.8503871]],"dense_1_W":[[0.0008713786,0.10571419,-0.009768912,0.20203193,0.06539419,0.8834566,-1.064991,0.8917164,0.2740178,-0.29560176,0.046367835,-0.06696189,-0.15079989,-0.10306829,0.15937875,-0.32234034,0.11896804,0.013798418],[0.0032703213,0.3225856,-0.017178465,-0.3818704,0.3018395,0.30094728,-0.41512567,0.38405526,-0.1570511,-0.014270626,0.080081746,0.6354644,0.35888773,-0.43707213,-0.32447734,0.023193512,-0.16756727,0.20933074],[1.5627879,-0.37140134,0.63836944,-0.3830291,0.72145224,-0.3836591,0.11257197,0.21017507,0.26833218,0.25539163,0.5186593,-0.15651038,0.41176555,0.45905823,-0.42902833,0.06326807,0.3629456,-0.30402216],[1.6168094,0.40822932,-0.66605085,0.22799215,-0.69717556,0.34626734,-0.0059232763,-0.54218775,-0.055495918,-0.3768063,-0.48113772,-0.018525612,-0.5950303,0.2557122,-0.18825729,0.22983,0.005579068,0.06161027],[-1.1495299,-0.7586535,-0.5353385,0.025521036,1.087006,-1.0086828,-0.17635801,0.4568657,-0.091241084,-0.5215724,-0.2604748,0.045887616,0.11212669,-0.25279886,-0.14159086,-0.033089254,0.0029795568,0.1999646],[-0.051524103,-0.51501364,11.658313,0.13625003,-1.3843681,-1.6409664,-2.668583,3.1511652,2.57322,0.51289797,-0.38707766,0.10578343,-0.40109116,-0.31546983,0.07539781,0.3615562,0.073550805,-0.14806822],[1.1748914,-0.7219464,-0.5470881,-0.003681565,0.49025726,-0.4171505,0.0072592692,0.024163779,0.024890631,-0.41618225,-0.32244092,-0.19234161,-0.16784292,0.34389323,-0.06989565,-0.12501281,-0.030100992,0.20458347]],"activation":"σ"},{"dense_2_W":[[-0.4868388,-0.61673963,1.4286674,-0.039495535,0.45262775,-1.0424562,1.5454369],[-0.6074346,-1.011816,0.046624646,-0.78734446,2.3072171,-1.3779964,0.8569677],[0.47693276,0.71271104,-0.2390285,-0.038990125,0.12270858,0.20493168,-0.45892665],[0.38512126,0.61106217,-0.41512227,0.46455616,-0.0570659,0.04394896,-0.13119707],[-1.2577482,-0.6138713,0.6549672,-0.65091866,0.5145879,0.3818217,0.53431696],[0.56899303,0.10398351,0.45342615,-0.053685065,-0.104297765,0.09119562,-0.6285316],[-1.0771691,-0.25324076,0.37886608,0.1173106,0.47042668,0.14671373,0.08761732],[-0.3019003,-0.86725014,0.91806465,0.18018398,0.77627605,-0.93972605,1.2739382],[0.62885785,0.7373836,0.016257606,0.023142297,-0.47996506,-0.52089614,-0.113337025],[0.22219604,0.67318004,-0.08316116,0.34620377,-0.6612502,0.034009792,-0.64690715],[-0.23770024,-0.50766915,-0.09670405,-1.216913,1.2701161,-1.6846908,-0.22704105],[0.59986305,0.5738209,-0.19015375,0.421755,0.26094252,-0.04966739,-0.62614566],[0.6166309,0.091970205,-0.12472761,0.28889042,-0.21862288,-0.36297256,-0.44079408]],"activation":"σ","dense_2_b":[[0.19794257],[-0.03969422],[-0.0656537],[-0.062498007],[-0.035217416],[-0.016953804],[-0.0943835],[0.053581137],[-0.03426556],[-0.003272987],[-0.075658314],[-0.07952997],[-0.0015540265]]},{"dense_3_W":[[0.024692904,0.58683085,-0.567369,-0.37911305,0.67811406,-0.15265317,0.6610765,0.4359995,-0.6584148,-0.6708834,0.7197889,-0.4486733,-0.1747178],[0.14699566,-0.6474973,0.2763736,0.28756335,-0.3922964,-0.04845914,0.18625976,-0.26840127,0.6112173,0.3658983,-0.651653,-0.42875016,-0.09464588],[-0.7110688,0.24306618,0.19536833,-0.20736542,-0.025801487,0.17186794,-0.44581038,-0.31020266,-0.16066518,0.029663702,0.22836117,0.06264115,0.15486911]],"activation":"identity","dense_3_b":[[-0.016370883],[0.0127013195],[0.026499491]]},{"dense_4_W":[[-0.8554128,0.2766906,0.524841]],"dense_4_b":[[0.019940862]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json deleted file mode 100644 index ba434a6ebe..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.785079],[1.3448962],[0.51876175],[0.047479864],[1.3252879],[1.331087],[1.3371022],[1.3088783],[1.2807853],[1.2440304],[1.2056386],[0.04731712],[0.04733776],[0.047359645],[0.04723333],[0.047111828],[0.046843447],[0.046379473]],"model_test_loss":0.01724853552877903,"input_size":18,"current_date_and_time":"2023-08-12_15-17-06","input_mean":[[24.85061],[-0.047142796],[0.0005701203],[-0.008726335],[-0.04417392],[-0.045567565],[-0.046358094],[-0.04118768],[-0.039137643],[-0.03847798],[-0.035704315],[-0.008584033],[-0.008594763],[-0.008609622],[-0.008570998],[-0.008600623],[-0.008706975],[-0.008697191]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.0296891],[-1.922514],[-1.149494],[0.022265209],[-0.052071013],[-0.032673564],[-1.9946277]],"dense_1_W":[[-1.8791502,-0.45478737,0.07119253,0.016805792,-0.38664973,1.3035942,-0.542431,0.047575254,-0.22030126,0.13161159,-0.07229064,0.36489004,-0.2386385,-0.23712136,0.034654524,-0.2886649,0.10312662,-0.047390282],[-0.66666186,-0.48720443,-0.11072515,0.094074145,-0.061216515,-1.2182275,0.8426725,-0.10592509,-0.21448702,-0.056960933,0.04259483,-0.7316568,0.20460397,0.42091593,0.15927365,-0.17348117,0.19803195,-0.18829267],[-1.8703458,0.30746105,-0.06834135,0.27911848,0.2422295,-0.6888701,-0.012127967,-0.15067418,0.5743117,0.07311509,-0.16059698,-0.15502444,-0.41604456,0.42384803,0.43910763,-0.17972651,-0.40040898,0.3014311],[-0.019090334,-0.76574296,0.09397271,0.10988411,0.51672286,-2.172949,1.0367043,-0.0839209,-0.58819324,0.16455668,-0.01100052,-0.7896944,-0.2134588,0.98234737,0.034016434,0.36617452,-0.035145547,-0.25804156],[-0.0018639659,-0.9749377,5.5816774,-0.23225898,-0.12594639,-0.9363593,1.234414,0.34805998,-0.08151865,0.107896045,-0.037450574,-0.27116403,-0.30569962,0.7310664,-0.58886266,0.20576492,0.49676666,0.072158925],[-0.019030262,1.2230272,5.830608,-0.41493434,-0.23800562,0.18280193,-1.5482132,-0.0852967,0.70929605,0.31744578,-0.51722443,1.0640428,0.19439188,-0.6710601,-0.2801976,-0.35409272,0.003487162,0.361651],[-0.649294,0.45132867,0.11169535,-0.06450987,0.17274019,1.0169406,-0.8244322,0.08305402,0.30460912,0.13607553,-0.12671345,0.31371805,-0.0019661803,-0.10996772,-0.15226273,0.090185925,-0.3348226,0.27420557]],"activation":"σ"},{"dense_2_W":[[0.6609678,-0.22481585,0.040954396,-0.31495926,-0.19392742,0.10244233,-0.08746393],[-0.7082068,0.86338276,-0.11436686,0.12848611,0.20935868,0.15040098,-1.1645155],[-0.22602943,0.793938,0.18418907,0.72948813,0.6846751,-0.6348888,-1.0778567],[0.53014493,-0.45450902,-0.35092524,-0.5569319,0.12838417,-0.13627666,0.5994005],[-0.17350997,0.7593281,0.7799434,-0.39523655,0.20372757,-0.834957,-0.38898385],[-0.70416707,0.22460131,0.085097484,0.78984326,0.2471842,-0.30347177,-0.58072823],[0.33662602,-0.7904104,-0.60286903,-0.16468751,-0.11612247,0.53005517,0.5211252],[-0.7082711,-0.46435446,-0.75132966,-0.29705703,-1.024626,-0.2615332,-0.20701897],[0.35671562,-0.02681799,0.6840728,-0.2612279,-0.08365274,-0.9705286,-0.605018],[0.62429255,0.0521647,-0.35856178,-0.4051332,-0.5179798,0.46409982,-0.052206893],[0.36666667,-0.5527411,-0.20863053,-0.6491323,0.06274223,0.4735839,0.22757712],[-0.012209164,0.5899906,0.46180722,0.48860443,0.58372164,-0.25489396,-0.895847],[-0.12133152,0.70728445,-0.4158088,0.7696778,0.1290468,-0.5404793,-0.33367673]],"activation":"σ","dense_2_b":[[0.08061271],[-0.19563875],[-0.24664785],[-0.12486449],[-0.2303988],[-0.07568345],[0.037712026],[-0.11140529],[-0.23779462],[0.034758605],[-0.11953955],[-0.21795286],[-0.21500231]]},{"dense_3_W":[[0.16741616,-0.5169601,-0.6872919,-0.3394973,0.08778304,0.27198112,0.7472469,0.11274346,-0.53623766,0.4801037,-0.17826463,0.07536674,0.6185708],[0.4108729,-0.3526092,0.1731832,0.5833954,-0.5591321,-0.5981915,0.7000401,0.37615168,-0.4772691,0.23866276,0.26305285,-0.48178422,-0.15993476],[0.53497106,-0.27460927,-0.65378416,-0.22805771,-0.005714031,-0.46566615,0.8224319,-0.0432606,-0.23549485,0.26196745,0.4718395,-0.6079023,-0.5116151]],"activation":"identity","dense_3_b":[[0.04784515],[0.063176766],[0.085746326]]},{"dense_4_W":[[0.3336722,0.86872417,0.6722818]],"dense_4_b":[[0.065143235]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json deleted file mode 100644 index 1499600029..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.89405],[1.3264774],[0.49399376],[0.04498591],[1.3162512],[1.3196412],[1.3221577],[1.2921615],[1.262814],[1.2265766],[1.1900893],[0.044859875],[0.044887066],[0.04489899],[0.044722132],[0.044534575],[0.044196904],[0.043708563]],"model_test_loss":0.013147538527846336,"input_size":18,"current_date_and_time":"2023-08-12_21-45-51","input_mean":[[22.843279],[-0.12455614],[-0.0014007707],[-0.0064704656],[-0.1233025],[-0.12350357],[-0.12400504],[-0.1251842],[-0.12609619],[-0.12369014],[-0.12037224],[-0.006532242],[-0.006518202],[-0.006506443],[-0.006487807],[-0.006539525],[-0.0065615526],[-0.0066139703]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.8076376],[-0.12330158],[0.8896142],[-0.13590556],[-4.1826344],[-0.77730286],[4.5746274]],"dense_1_W":[[-0.97973573,0.15226786,0.02845066,0.04827065,-0.025662262,1.7772363,-1.5355376,0.0989295,0.30149132,0.029098786,-0.074183464,0.39862457,-0.10540373,-0.14476654,-0.36632246,-0.3054467,0.15272646,0.07390829],[0.015743697,0.78862613,-0.019669378,-0.12546545,0.009684494,1.3956969,-1.2900923,0.19209127,0.14444686,-0.21074831,0.16892369,0.61990404,0.23663369,-0.8836119,-0.42096013,0.119372375,-0.07889601,0.09642731],[-1.1188109,-0.42021284,-0.027942661,0.14205936,-0.07868929,-0.7710287,0.73801935,0.014988501,-0.069595,-0.35983253,0.24104616,-0.45208368,0.057623267,0.5596988,-0.21029097,-0.045526307,0.32178107,-0.12184607],[-0.013647176,1.3307436,4.6095624,-0.34334475,-0.8587218,-0.12885869,-0.8174357,-0.11078273,1.2218881,0.6008918,-0.6915159,1.311084,0.16892083,-0.3056882,0.08437484,-0.63590443,-0.4589061,-0.0745741],[-1.9673253,-1.4414742,-0.2586987,0.2226021,0.5694981,-1.5805218,0.5769138,-0.00886291,-0.060155656,-0.100935824,-0.13228646,-0.39160243,-0.40697894,0.7586441,0.09374963,0.055745218,-0.22303872,-0.037225552],[0.010619068,2.72878,-0.1893567,-0.27490807,0.50076294,1.516001,0.3651039,0.7132457,0.22416064,0.38899446,0.33117044,0.3081755,0.3069668,-0.8289943,-0.08180179,0.6579218,0.3046304,-0.066973075],[1.9517641,-1.27614,-0.25992838,0.26618478,0.082289934,-0.697544,0.0861543,-0.04430833,-0.1666379,-0.06128522,-0.12283561,-0.34772325,0.10666418,-0.18634178,0.41480446,0.21883197,-0.314464,-0.09010557]],"activation":"σ"},{"dense_2_W":[[-0.6846211,-1.4150484,0.62999135,0.3430101,1.278193,-0.7957307,1.0221282],[0.16265254,-0.2179754,-0.03812709,-0.97449124,-0.69266665,-0.13029383,-0.6855177],[0.67744255,0.7218722,-0.15119076,-0.36107507,-0.6168378,0.3564611,-0.14333059],[0.44798878,0.054440223,-0.12721358,0.11809645,-0.061688833,0.04752611,0.13841292],[0.22670254,0.36689356,-0.44299468,0.53176785,0.3255846,-0.5087834,-0.24648738],[-1.1769708,-1.0265867,1.0046444,0.3265467,1.2754724,-0.6967977,1.0338258],[-0.07486774,-0.5789648,0.18375583,0.08036335,0.17746748,0.4459745,-0.28357828],[-0.98316115,-0.82948774,1.1131235,-0.30703646,0.70785904,-0.18001986,0.71042156],[0.10901459,0.64697224,-0.36924043,0.8418233,-0.18619084,-0.3438453,-0.58111745],[-0.13789596,-0.28369164,-0.24692981,-0.6745289,-0.83434075,0.4034985,-0.2338089],[0.5772887,-0.30526567,-0.8162497,0.44525668,0.23674823,0.12436892,-0.7137595],[-0.59163356,-0.21955788,0.26342097,-1.3260666,1.5348077,-0.15188397,-0.24587795],[-0.864029,-0.23358338,-0.21427485,-0.45828933,-0.8476076,0.7652582,0.07033687]],"activation":"σ","dense_2_b":[[-0.2084633],[-0.3401461],[0.03563889],[-0.019227123],[0.033816546],[-0.21475661],[-0.108693056],[0.0054793637],[-0.055306572],[-0.3065528],[-0.067040265],[-0.22550777],[-0.33363193]]},{"dense_3_W":[[-0.27252012,0.28291574,0.104386985,-0.27400178,0.03230503,-0.36361536,0.03550164,-0.098785385,0.5028087,0.15802625,0.25782102,-0.3110525,0.3512787],[-0.35834575,-0.20253947,0.08262887,0.49909568,0.40528995,-0.21334086,0.27457196,-0.6656153,-0.24731882,0.07225506,0.18140426,0.56584823,-0.53368413],[0.44071397,0.39182287,-0.45943233,-0.42492127,-0.5459261,0.56124943,0.37052932,0.3689143,-0.69441694,0.41806287,-0.031108733,0.5795106,0.5095399]],"activation":"identity","dense_3_b":[[0.044206124],[0.04141924],[-0.087050036]]},{"dense_4_W":[[0.7859495,0.4201428,-0.711207]],"dense_4_b":[[0.048112456]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json deleted file mode 100644 index 155aa27712..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.244548],[1.5275985],[0.6107275],[0.046586774],[1.4886055],[1.5034448],[1.516418],[1.4891112],[1.4557259],[1.4174078],[1.3739654],[0.046419684],[0.046444356],[0.046451736],[0.046329428],[0.046216674],[0.04595779],[0.04549419]],"model_test_loss":0.012242425233125687,"input_size":18,"current_date_and_time":"2023-08-12_17-12-26","input_mean":[[22.124489],[-0.06681358],[-0.0017872587],[-0.007304861],[-0.068287455],[-0.06810858],[-0.068098135],[-0.06760926],[-0.064708285],[-0.06156465],[-0.05595117],[-0.00735773],[-0.0073575596],[-0.0073616607],[-0.007393436],[-0.0074092923],[-0.007485401],[-0.007535655]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.1266818],[1.2665837],[-0.0057515856],[0.021575607],[3.145306],[-0.015559701],[0.023866596]],"dense_1_W":[[1.8619034,0.2318498,0.010758091,0.17204547,0.178258,0.8156095,-1.2977135,-0.4021356,0.015441509,0.051510673,0.08473766,0.25257683,-0.08047843,-0.5401921,0.37597016,-0.25112596,0.11061834,-0.04145345],[0.6234877,0.39512575,0.029949188,-0.06756969,0.3141993,1.1970576,-0.9448964,0.4692527,0.4956762,-0.30381662,0.07292307,-0.11752247,-0.20445238,0.27772313,0.2778997,-0.20992711,-0.023655668,-0.03751188],[-0.09121854,-0.6526218,-0.008271368,-0.030463165,0.084578365,-1.1863025,0.71669704,-0.15648295,0.17038843,0.16980262,-0.2854215,-0.39527944,-0.29325402,0.4517195,0.58793545,-0.078027494,0.112520106,-0.19935027],[0.04239312,1.1436936,5.7977223,-1.2159046,-1.0222747,-0.018097226,-0.37114885,0.30876333,0.6447345,0.05005192,-0.3040888,0.3811603,0.53224164,-0.033966746,0.17231053,0.052680492,0.23297076,-0.20054573],[2.028991,-0.054335885,-0.050801482,0.22889599,0.034708247,-1.0235145,1.2738502,0.19607924,-0.6348713,0.3133455,-0.0084064,0.021044038,-0.19193278,0.24242897,-0.3887398,0.1055326,-0.14184418,0.124946855],[-0.15122393,0.6909391,-0.03846719,-0.2270961,-0.37185147,1.1930336,-0.83393574,0.019238736,-0.21900049,0.11245591,0.06722247,0.12010414,0.40301353,-0.5959846,-0.014899062,0.31775734,0.16264969,-0.20392336],[0.01964954,0.28060383,0.26928812,0.262222,-0.11968318,0.7917884,-0.94788104,0.24767427,0.5285209,0.20321472,-0.57217216,0.20230694,0.0041204365,-0.14682977,-0.1698623,-0.464828,-0.13932788,0.25505906]],"activation":"σ"},{"dense_2_W":[[0.07229978,0.043845255,-0.56071085,-0.37639382,-0.40895855,0.75563765,0.8920604],[-0.068550885,-0.2143043,0.8185382,-0.26352042,0.5178714,-0.88407123,-0.11102227],[0.80396324,0.084928855,1.9896538,-1.2700796,1.9254806,-0.6978969,-0.66902035],[-3.2066817,-1.9363941,0.8663164,-1.005594,-0.19276151,0.18454145,-0.32200423],[0.2388041,-0.3560892,-0.6499542,0.27040178,-0.4285769,0.50025755,0.4411526],[-0.5105194,0.6164994,0.40899366,-0.6055838,0.6227542,-0.3112731,-0.7521502],[-0.32484958,-0.49589607,-0.44490832,-0.23112644,-0.27562693,-0.39052173,0.1971162],[0.412541,0.319048,-0.79024744,-0.2737245,-0.6196046,0.015550856,0.43303803],[-0.28605422,-0.13784991,-0.24433006,-0.17126347,0.14660196,-0.3652191,0.36726522],[0.24914217,-0.5839129,1.1011901,0.48133576,1.1741915,-1.2662312,-0.41844484],[-1.4900029,-1.4929997,-0.24996275,-0.50023335,-0.65646017,-0.5239063,-0.16179247],[-2.2904916,-1.4458047,-0.10081112,-0.33487344,-0.16292852,-0.32974166,-0.41704106],[-0.12204984,-0.049235914,-0.7661266,0.20250078,-0.19582883,0.2884153,0.6099948]],"activation":"σ","dense_2_b":[[0.11034473],[0.04505026],[0.45456424],[1.1033564],[0.020434767],[-0.061051648],[-0.030366903],[0.06634181],[-0.039427042],[-0.17920223],[-0.12165889],[-0.071725644],[0.0007172712]]},{"dense_3_W":[[0.037582874,0.3922276,0.15515213,0.32579648,0.0045574703,-0.08303329,-0.35669035,-0.2959597,0.22798133,-0.00853858,0.26190194,-0.2177828,-0.051661514],[-0.6728899,0.60465753,0.37104872,0.84813213,-0.75632805,0.4609253,-0.123116,-0.16484596,-0.043769807,0.29626662,0.4587799,0.3421823,-0.5048559],[-0.31732032,-0.24499367,0.5200649,0.16775814,0.11487889,0.5378913,0.294093,-0.5565743,-0.33720338,0.0644005,-0.47207704,0.24707094,-0.1313763]],"activation":"identity","dense_3_b":[[-0.06704118],[-0.07568502],[-0.06689809]]},{"dense_4_W":[[-0.38717636,-1.245721,-0.60878205]],"dense_4_b":[[0.07232816]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json deleted file mode 100644 index 07bdba6c47..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.080224],[1.5475338],[0.6496774],[0.04879169],[1.5158907],[1.5278002],[1.5390717],[1.5098101],[1.4782969],[1.4340739],[1.3853667],[0.04868462],[0.048710395],[0.048738956],[0.048690505],[0.048625976],[0.048370127],[0.047957957]],"model_test_loss":0.008909840136766434,"input_size":18,"current_date_and_time":"2023-08-13_03-33-40","input_mean":[[23.622572],[0.010716067],[0.014080395],[-0.00545363],[0.00681623],[0.008023216],[0.008976955],[0.015593329],[0.018596267],[0.022246595],[0.02417008],[-0.0054850946],[-0.0054803547],[-0.0054753944],[-0.0054708053],[-0.005519239],[-0.005560871],[-0.005648205]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5925863],[0.6910273],[0.0029014468],[0.043235566],[-0.055107236],[3.6387718],[3.6793168]],"dense_1_W":[[0.24347192,0.0785397,-0.030702522,0.19405046,-0.09431407,1.6046176,-1.1419742,0.19336075,-0.062058806,0.14076506,-0.0068204296,0.27706286,0.0753339,-0.4532859,-0.35606033,0.21351701,-0.18941605,0.044432733],[-0.45700783,-0.062406845,-0.031097766,-0.5659944,0.024210662,1.39045,-0.9837826,0.11537844,0.2825425,0.046704102,-0.061710272,0.50674444,0.19582161,-0.10567522,-0.08106667,-0.1992534,-0.21138985,0.24457377],[0.007203359,-1.2377197,-4.586871,-0.11203177,0.5719472,0.0427435,0.5389759,0.26149252,-0.57496494,-0.524192,0.57842165,-0.22961466,-0.37423873,0.35315713,-0.10196228,0.2160896,0.4271714,0.017925069],[-0.0054053566,1.579078,-0.06120463,-0.20971349,0.046022303,0.93902045,-0.78088397,0.02447776,-0.07060164,-0.06981518,0.1699867,0.10647593,-0.24200302,0.018979385,-0.0083929775,0.18985271,0.13718374,-0.088825986],[0.095188886,0.6861187,0.10568597,-0.1301086,-0.7698879,0.83482885,-0.5525881,0.38867232,0.224815,-0.09360383,-0.16623642,0.5329297,-0.023406014,0.19236702,-0.75461245,-0.46940014,0.32178688,0.16902733],[1.5707638,0.61578625,0.23603536,-0.10848588,-0.02725563,0.6388082,-0.88916034,0.20878781,0.15096506,-0.07481069,0.050539907,0.08200025,0.027791992,-0.33376747,0.32451573,0.21383548,-0.019029131,-0.1541287],[1.5059847,-0.55344844,-0.24463375,0.061645243,0.0208355,-0.6283204,1.0164922,-0.39539093,-0.3376693,0.14381117,0.014864233,0.15729472,-0.36920083,0.09105627,0.22073188,-0.3185754,0.1361389,0.0030957134]],"activation":"σ"},{"dense_2_W":[[0.8278061,0.00944368,-0.47221076,0.5170837,0.5817161,-0.28623572,-1.3400604],[-1.1041138,-0.63026905,0.07870919,-0.08548198,-0.400506,-0.27927935,0.3597091],[0.27548513,0.17060155,-0.43422616,0.46099278,0.14646465,0.4412418,0.29597026],[-0.19179592,0.59959507,-0.45964202,-0.03809237,0.574291,0.57724786,-0.9947663],[0.9136712,0.04980523,-0.6333211,0.30888626,0.3298961,-0.24825113,-0.99664354],[0.3825098,0.8290921,0.63622355,0.5099953,-0.3108262,0.32984248,-0.41125965],[0.2868915,0.2814047,-0.35160798,0.19865306,0.22140126,0.53437257,-0.19641446],[-1.1109287,0.3453166,0.32968,-1.0854727,-0.5026547,-0.061587382,1.7998439],[0.098573364,0.6721182,-0.35533735,-0.09068599,0.18878801,1.0343286,0.09213373],[-0.23218085,-0.16048461,0.6798084,-0.64267206,-0.8845718,-1.8911213,0.5121272],[-0.54387015,-0.23149288,-0.30668664,-0.20229974,-0.30891183,-0.5950911,-0.1115899],[-0.25720352,-0.55898094,-1.0450321,-0.4148398,-0.31979793,-0.07070874,-0.10942721],[0.34567067,0.8965103,0.050285354,-0.1771556,0.119312696,0.3056499,-0.6886853]],"activation":"σ","dense_2_b":[[-0.39942527],[0.30935934],[-0.16508539],[-0.13897029],[-0.5619027],[-0.24792555],[-0.107184075],[0.5673597],[-0.21446894],[0.51320654],[0.042424392],[-0.15152127],[-0.24059872]]},{"dense_3_W":[[0.4104882,-0.23413022,0.5933587,0.5129894,-0.017641984,0.35903862,0.13990471,-0.6462935,0.53985685,0.037760712,-0.46011966,-0.48272845,-0.33265826],[-0.56515414,0.7211797,0.3708711,0.09521525,-0.016219772,-0.7927581,0.04320575,0.08196957,-0.177058,0.63587785,-0.34107837,0.37444627,-0.13801615],[0.5979246,-0.8661764,0.29252937,0.59611315,0.30349368,-0.11060929,0.22178161,-0.45007005,0.12280302,-1.1837198,-0.28847334,0.091526695,0.4002503]],"activation":"identity","dense_3_b":[[-0.1171355],[0.0760098],[-0.07621718]]},{"dense_4_W":[[0.17640126,-0.5432617,0.8457692]],"dense_4_b":[[-0.072637506]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json deleted file mode 100644 index b4434402e6..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.918778],[1.18101],[0.4847478],[0.043674015],[1.1728041],[1.1765499],[1.1794695],[1.1464957],[1.1177075],[1.0766566],[1.0377958],[0.043550335],[0.043581747],[0.043604773],[0.043512594],[0.043391723],[0.043109246],[0.04262905]],"model_test_loss":0.019605522975325584,"input_size":18,"current_date_and_time":"2023-08-13_05-28-32","input_mean":[[23.596626],[0.013376228],[-0.0037806714],[-0.008489553],[0.016799761],[0.015916478],[0.014968346],[0.017682353],[0.020881005],[0.020992402],[0.023326145],[-0.008438655],[-0.008450099],[-0.008462553],[-0.008476181],[-0.008486343],[-0.008576075],[-0.008670038]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.91207904],[0.7103613],[0.30726305],[0.11740969],[0.12186458],[-0.089792214],[0.06848248]],"dense_1_W":[[0.020942407,1.0916185,-0.035626575,-0.19509457,-0.0901391,1.0375599,-0.89480263,0.027181128,0.114876896,-0.20307554,0.19653901,0.8226537,-0.28726602,-0.47241193,-0.02529027,-0.009867712,0.20832253,-0.0335081],[0.38768068,-0.9086627,0.040084302,0.06681411,-0.5178006,-0.611777,0.92066157,-0.1505088,0.074445166,0.11541756,-0.24584451,-0.81897855,0.51056355,0.27303597,0.1812634,-0.22068554,0.071845666,-0.07549679],[1.3191843,-0.43101233,0.051205434,0.2787163,-0.4157239,0.42948318,-0.72137564,-0.8753717,0.10624811,0.19340889,-0.15060128,0.2269076,0.03174035,-0.31100953,-0.19166663,-0.011060635,-0.3349901,0.2901877],[-0.0024979762,0.3740953,-0.026280953,-0.15654075,0.37215605,0.7620479,-1.0498856,0.13035084,0.13929886,0.05248367,-0.013822444,0.7085953,-0.03154278,-0.29324126,-0.62358975,-0.16771367,-0.21831672,0.22877951],[0.044033404,-0.99224085,-6.7608223,0.09225139,0.9311651,0.447325,0.42661807,0.63310313,-1.7500018,-0.85278213,0.90037066,-1.4607582,-0.38572705,-0.10530333,0.5061062,1.1270607,0.23219815,-0.09795198],[0.016819429,-0.0675717,0.115480825,0.07103152,0.17985629,1.1815296,-1.396273,0.18709117,0.09204313,0.37937552,-0.3416136,0.28142554,0.1835832,-0.75639856,0.27877346,0.049574222,-0.23444256,0.09973523],[-0.06906837,0.8551471,2.6089625,-0.38896835,0.3064237,0.04883363,-0.6118971,-0.37577873,0.916318,0.8206204,-0.8979492,0.18177088,0.34715304,-0.33680785,0.031479146,-0.49667355,-0.33899838,-0.04839657]],"activation":"σ"},{"dense_2_W":[[0.7524287,-0.05320505,0.6631399,0.29110217,-0.3867475,0.48622686,-0.00068926124],[0.6857002,-0.98820657,-0.2477931,0.8487134,-0.008759584,0.8539056,-0.70714766],[-0.191401,-1.1044568,-0.17453948,0.28428176,-0.27107534,0.52109903,0.5684942],[-0.72152793,9.4716466e-5,0.25969005,-0.29246745,-0.27407894,-0.5809119,-0.1386064],[-0.28868115,0.3303369,-0.19686596,-0.14941077,0.08329269,-0.49868903,0.2623254],[-0.47855794,0.38120317,0.15302673,-0.45370772,-0.0976872,-0.2544275,-0.22887231],[0.8629054,-1.2646538,0.13799493,0.40030012,0.16298352,0.30507365,-0.035486612],[-0.1548037,0.88181823,-0.19526346,-0.6244504,0.5790799,-0.7090568,0.17455493],[-0.4086325,0.8128156,-0.02595779,-0.8348639,0.1865987,-0.23320554,0.21458188],[-0.70075643,0.18467374,-0.39847013,0.20729409,0.4069853,-1.0749724,-0.23987985],[-0.19175854,-1.101704,0.658868,0.8334482,-0.007937357,0.06116572,0.35555303],[0.899429,-0.23285869,0.36268023,0.2628838,-0.41170016,0.18388364,0.59954256],[0.42720664,-0.1498553,1.1578981,0.16925347,-0.97467273,0.46834058,0.34074527]],"activation":"σ","dense_2_b":[[-0.1311147],[-0.4101757],[-0.33761725],[0.06426192],[0.026971094],[0.075724326],[-0.34481454],[0.16628559],[0.10305307],[0.049283274],[-0.24880186],[-0.16108623],[-0.10672651]]},{"dense_3_W":[[-0.47907722,-0.21759209,0.3713241,0.39441383,-0.44695204,0.17124303,0.11321267,0.3969347,0.1906832,-0.40338823,0.12479244,-0.50514024,0.5594875],[-0.5839251,-0.25829744,-0.427433,0.4940799,0.6102448,0.6181168,-0.3990338,0.7514002,0.44554126,0.50229466,-0.51888025,-0.38270754,-0.26896998],[0.21696098,-0.24028769,-0.43294132,-0.49181503,0.07244864,-0.15500332,-0.39558488,0.5280436,0.6300974,0.096077316,-0.16075748,0.3209584,-0.61387634]],"activation":"identity","dense_3_b":[[0.021643605],[0.047753386],[0.053921573]]},{"dense_4_W":[[-0.0368371,-1.1304644,-0.17004102]],"dense_4_b":[[-0.049882997]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json deleted file mode 100644 index af5a0b3058..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.971252],[0.79798824],[0.43347803],[0.037114248],[0.78899115],[0.7920018],[0.7952441],[0.7838899],[0.7732425],[0.75980055],[0.74578863],[0.037029333],[0.03706021],[0.03708885],[0.03716895],[0.037208397],[0.03723585],[0.037244312]],"model_test_loss":0.012649175710976124,"input_size":18,"current_date_and_time":"2023-08-13_07-16-53","input_mean":[[24.854122],[-0.006721379],[0.0023459543],[-0.006867375],[-0.0071832123],[-0.007095632],[-0.007283813],[-0.004851204],[-0.0015341335],[-0.0011585834],[0.0014295956],[-0.0069056926],[-0.0069126263],[-0.0069173565],[-0.0070006466],[-0.007102198],[-0.007207536],[-0.0073172078]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.10305949],[0.5548119],[0.8664678],[-0.04213392],[-1.4110198],[3.2694256],[-1.438837]],"dense_1_W":[[-0.017599747,-0.22520265,0.0010882277,-0.21759078,0.043246184,-0.9120944,0.44394338,-0.012739085,0.17955783,0.3519492,-0.3748205,-0.29586455,0.36217418,0.21715508,-0.045080207,0.10746157,0.16058546,-0.12644011],[1.4859476,-0.13243331,-0.072786994,-0.09156684,0.026185557,0.30754617,-0.07915964,-0.33238035,0.29930684,-0.59904677,-0.40220875,0.34915185,0.2151253,-0.12978148,-1.0024906,0.4784506,-0.08319207,0.21361434],[0.61979795,0.1759033,-3.648246,-0.18301606,-0.7338996,-0.6487156,0.8492735,-0.7052067,-0.86969215,0.2841932,1.4843231,0.25467336,-0.34080935,-0.18149482,0.70439994,-0.26088372,0.11387163,-0.1455975],[0.00995094,-1.2382029,0.0006843731,0.328307,0.8130543,-1.2957187,0.8368335,0.20426522,-0.19153069,-0.4943369,0.41151458,-0.014479602,-0.4382999,0.10004458,0.060025815,0.16917846,0.09463592,-0.21017851],[-0.8206324,0.8908584,0.037517052,-0.49712715,-0.40263394,0.24845587,-0.85499966,0.26955003,-0.06266273,0.28861195,0.12733743,0.31250095,0.119576685,-0.04005291,-0.029234378,0.02662434,0.2687243,-0.1394794],[1.2793154,1.0802419,0.059386734,-0.3855319,-0.78512937,0.15505423,-0.8329386,0.6772395,-0.1311195,0.51412123,0.050203018,-0.037745327,0.38920268,-0.41889575,0.17929426,0.54237133,0.14844449,-0.3822895],[-0.93515563,0.036150783,-4.184579,0.31975636,-0.5608153,-0.832857,0.39901984,-0.45331565,-0.5904826,0.33153397,1.4625467,-0.1966311,-0.35478687,0.13788807,0.2924618,-0.15482849,0.01944506,-0.113643706]],"activation":"σ"},{"dense_2_W":[[0.90550905,-0.2773451,0.060318053,0.78804654,-1.0699619,-0.84802955,0.44153836],[0.77794725,-0.38085982,-0.0049121855,0.35357663,0.00038228062,0.18574685,0.04339034],[-0.92243797,0.38560665,0.09517251,-0.9013531,0.2996133,0.54987377,-0.028735504],[-1.1287217,0.640262,-0.5085255,-1.4166275,1.5218314,0.056655124,0.33818102],[0.15446381,0.38593677,0.3441797,0.98853666,-0.9087163,-0.0742472,0.46354288],[-0.55011004,-0.019922681,-0.18926652,-0.6645979,0.6695093,0.7484288,-0.16677399],[-0.7513268,-0.72154254,-0.3784182,-0.16664356,0.09576955,0.08568184,-0.4769783],[0.08747015,-0.46323332,-0.20250341,-0.7033233,-0.48815915,-0.43857226,-0.20034243],[0.16640607,-0.19463709,-0.041607287,0.30393028,-0.33860773,0.13123538,0.19249742],[-0.6888612,0.1613833,-0.42137414,-0.5399623,0.5414041,0.16113918,0.10748585],[-0.86522615,0.59193206,-0.37166557,-1.1033491,0.8927235,0.81606954,-0.031116843],[0.28607032,0.24378045,-0.021820918,0.6145389,0.15344414,0.019805284,-0.16341789],[-1.0509629,0.058839537,0.22750644,-0.6949402,0.3670632,0.044007428,0.0669319]],"activation":"σ","dense_2_b":[[-0.18253872],[-0.0115240505],[-0.06430214],[0.2490044],[-0.2796968],[0.0028060132],[-0.09268421],[-0.28672373],[-0.080230884],[0.03859358],[0.14165422],[-0.12646787],[-0.1059743]]},{"dense_3_W":[[0.8398946,-0.07856656,0.1706828,-0.86333686,0.59561944,0.03616052,0.18146847,0.4525631,-0.08213228,0.131641,-0.49378744,-0.44430527,-0.12233779],[-0.06611764,0.49632278,0.2623391,0.49564347,0.11883829,-0.49934706,-0.13390465,-0.6451669,-0.45365545,-0.0060165436,0.45882273,-0.38588116,-0.08209023],[0.85171545,0.69498104,-0.5135337,-0.30856863,0.22390914,-0.47711673,-0.21191199,-0.21027334,0.047864415,-0.4271364,-0.27338186,0.08179979,-0.39165765]],"activation":"identity","dense_3_b":[[0.04059178],[-0.05657044],[0.08936293]]},{"dense_4_W":[[-0.1893341,0.2177843,-1.285145]],"dense_4_b":[[-0.08146231]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json deleted file mode 100644 index f3cf6c0895..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.807038],[1.1578474],[0.462717],[0.04096329],[1.1326288],[1.1411434],[1.150276],[1.1401542],[1.1256609],[1.1028374],[1.0771434],[0.040799636],[0.040834032],[0.04086527],[0.040849086],[0.040718287],[0.040424738],[0.040075604]],"model_test_loss":0.011358999647200108,"input_size":18,"current_date_and_time":"2023-08-13_09-26-52","input_mean":[[24.574387],[-0.042787574],[-0.0084383935],[-0.008247784],[-0.04005291],[-0.04116906],[-0.04206258],[-0.04518047],[-0.045766264],[-0.047523264],[-0.048847865],[-0.008307315],[-0.008303847],[-0.008298328],[-0.008317524],[-0.008355838],[-0.00843378],[-0.008587674]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5398485],[0.25783718],[0.41557038],[-1.7976782],[0.53406316],[-0.63385665],[-1.917262]],"dense_1_W":[[-0.4253817,0.22663599,1.0573925,-0.003105988,-0.096334025,0.6529197,-1.1694652,0.3467033,0.24922119,-0.3803986,0.08890094,0.061100043,-0.017730042,-0.11883982,0.13428102,-0.0348934,-0.0068453453,-0.007779446],[-0.008402637,-3.3132567,-0.21813557,0.071411654,-1.1415226,-1.6578175,-0.637207,-1.3461175,-0.6741953,0.16755764,0.2779039,0.11480545,-0.1803503,0.34613702,0.0859196,-0.29474613,-0.042490523,-0.01820469],[-0.4971483,0.098119624,-1.0920941,0.16022453,0.21241802,0.6172494,-0.9755981,0.035779636,0.0041822596,0.31914288,-0.18518393,-0.26218906,0.23453258,0.014359854,-0.06966559,-0.0034770474,-0.26081735,0.17178555],[-0.25480956,1.3900709,-0.0011070514,-0.06342647,-0.10887336,0.7041751,0.2328101,0.04183806,-0.033468023,0.028824355,0.071826614,0.098379195,0.32470608,-0.19180217,-0.5554726,-0.2217316,0.10789431,0.07102663],[-0.49687034,-0.6059788,1.1368431,0.11400577,0.4183632,-0.9394553,0.7815931,0.067233406,0.1662752,-0.13292359,0.051417153,-0.7103316,0.24026254,0.35937056,0.45720938,-0.5001579,0.1221688,-0.060943875],[-0.44913447,-0.4765777,-1.0624616,0.50197846,0.086886585,-0.17574842,0.9428897,-0.32340288,-0.06547519,-0.04256699,0.15002339,-0.5190985,0.11296826,0.2678741,-0.4129183,-0.016196959,0.10317533,-0.04792584],[-0.25692594,-1.3502828,-0.0009460109,-0.0050777984,0.46374944,-1.0939615,-0.40397272,0.14855485,-0.0076834555,-0.08402314,-0.048022572,-0.3868957,-0.03253632,0.29881552,0.5705721,0.1640352,-0.11509783,-0.05596482]],"activation":"σ"},{"dense_2_W":[[-0.16952407,0.08702787,0.6493835,0.27430746,-0.0071199476,-0.19580856,-0.2091579],[-0.1470845,-0.33079877,-0.5467495,0.41160226,-0.4971588,-0.5109554,-0.123111665],[0.7788407,0.12949619,0.46349248,0.13599767,-0.5738747,-0.20808762,-0.06685508],[0.87942976,-0.68710035,0.46623912,0.08075862,-0.31713346,-0.69495225,-0.42125878],[-0.5606583,0.49643534,-0.51900244,-0.48461094,0.31940943,0.18362813,0.8575088],[-0.2532001,-0.51093,0.25305697,-0.54165125,0.53601104,0.9598262,0.9526221],[-0.5665034,0.62428737,-0.07754291,-1.1295077,0.024450528,0.5505611,0.527919],[-0.17602344,-0.28039378,0.020311655,0.22711796,-0.68551284,-0.7996287,-0.6079852],[0.43893847,-0.7567556,0.10027089,-0.15151227,0.014879642,-0.31855884,-0.34122738],[-0.7633393,-0.07543374,-0.3050713,-0.97557557,0.37339172,0.8250897,0.7215346],[-1.2275901,0.62176853,0.03411873,-0.5092338,0.25704694,0.53235847,0.22089346],[0.23248282,-0.26544097,0.5072489,0.94194096,-0.44382775,-0.7462538,-1.0142152],[-1.2566365,0.09855355,-0.39514026,-1.0510743,0.48289242,0.4580382,0.30374187]],"activation":"σ","dense_2_b":[[0.013570737],[-0.17418918],[0.028351136],[0.12490911],[-0.16577649],[0.042069126],[-0.035789013],[-0.13899207],[-0.08848456],[-0.07905907],[-0.19632997],[0.038965493],[-0.12647548]]},{"dense_3_W":[[0.24081455,-0.44363257,-0.55115354,-0.030922456,-0.008375877,-0.123510234,0.2126219,-0.46798712,0.2711133,0.56804013,0.1574471,0.33433697,0.38691574],[-0.4032797,0.39321384,-0.3401627,-0.7603349,0.47812653,0.23157345,0.78344727,0.15922022,0.17650013,0.6928251,0.6137232,-0.7369166,-0.103489414],[-0.24215305,-0.40328485,-0.6077818,-0.28876036,0.56822276,0.63360524,-0.08002663,-0.23342833,-0.5187577,0.4915526,-0.17775443,-0.78564095,0.31357977]],"activation":"identity","dense_3_b":[[-0.07463631],[-0.05884157],[-0.03089778]]},{"dense_4_W":[[-0.15029056,-0.63581127,-0.55734146]],"dense_4_b":[[0.04723571]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json deleted file mode 100644 index e3d324afa7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.664428],[1.2828087],[0.5358907],[0.04414606],[1.2693248],[1.2751942],[1.279506],[1.249834],[1.2184678],[1.1758597],[1.1319114],[0.04403217],[0.0440777],[0.044111222],[0.044084232],[0.043969695],[0.043677997],[0.043272585]],"model_test_loss":0.016808032989501953,"input_size":18,"current_date_and_time":"2023-08-13_11-43-31","input_mean":[[22.16122],[-0.05841703],[-0.0061066514],[-0.0040392894],[-0.056604024],[-0.05809211],[-0.059522722],[-0.060071282],[-0.059294432],[-0.05636808],[-0.054283537],[-0.004062983],[-0.0040673376],[-0.00406957],[-0.0040102745],[-0.0040264064],[-0.003949198],[-0.003894113]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.512272],[0.8451728],[0.061952885],[0.07117082],[0.0969589],[0.23836812],[-0.029027848]],"dense_1_W":[[2.3165002,-0.7564795,1.4717923,-0.31413803,1.6675323,0.7277529,-1.1163065,-0.019299118,-0.1405304,0.8572948,0.56036603,-0.41108173,-0.12570381,-0.014715486,1.132798,1.0821382,-0.75086635,-0.35031655],[0.9444606,-0.09898757,-0.6954507,0.30675238,-0.08984852,-0.49343133,0.9157946,-0.5570431,-0.3888742,-0.38986117,0.12952603,0.028433489,-0.024435973,-0.1049456,-0.38290912,-0.05392889,-0.015835924,0.14950559],[0.004741928,-1.5810053,0.03134019,0.3235661,1.2505218,-0.083220154,-0.3910901,-0.8460092,-0.74598694,-0.37966868,0.34051073,-0.39719552,-0.07352532,-0.06360439,0.34146932,0.10839794,0.43644786,-0.45806086],[0.00825958,0.47619736,-0.0059394315,-0.06315062,0.3332019,0.8162596,-0.6886139,-0.8321713,-0.23199448,0.13788818,0.27222332,-0.018768186,0.12005634,-0.03360056,-0.010549495,-0.05684962,-0.19241822,0.1521788],[-0.047451854,-0.3197287,-5.9774647,0.67842066,-1.8699528,-1.0736765,-0.22953252,-0.1705645,0.69078326,0.7744919,1.5346897,-0.06659277,-0.33114743,0.1330023,-0.0021685867,-0.14816211,-0.12463087,-0.098877035],[1.5630089,-0.14997533,-1.073808,-0.1734846,-0.3877676,0.683071,-0.9419817,0.057117645,-0.025376081,-0.29716906,-0.39132732,-0.0028707278,0.16397685,-0.19498843,-0.21398357,-0.013821919,0.44912493,-0.16607592],[0.009814496,-2.0713215,-0.044856403,-0.038243193,1.7569181,-0.7712438,-0.08035733,-0.38236764,-0.58137965,0.6674234,0.14389913,-0.6378334,0.14240614,0.24506636,0.6603566,0.014824286,-0.12690313,-0.14285208]],"activation":"σ"},{"dense_2_W":[[-0.42124227,0.33840093,0.44210997,-0.70910984,0.262287,0.18302582,-0.18371895],[-0.29685995,0.5138454,0.755978,0.22568974,-0.43676186,-0.49223867,0.47472122],[-0.2976625,-0.5638202,-0.346919,0.40578872,-0.039912287,0.77207106,-0.8657158],[-0.16169663,0.5898756,0.15860432,-0.48896188,0.14635944,-0.5558217,0.42120898],[0.27724966,-0.5185015,0.32158753,0.6277213,0.057304412,0.3086919,0.21024327],[0.03701429,-0.23197533,-0.30162218,0.72801787,-0.17062007,0.009803557,-0.5481523],[0.4629019,0.4786117,-0.14833471,-0.23350595,-0.29458895,-0.19023602,0.39070475],[0.9625968,-0.97766685,-0.9581983,1.2819734,-0.6076433,0.37645784,-0.79039747],[-0.13950962,-0.20756534,-0.31952453,0.6251145,-0.0893907,0.340857,-0.70461744],[-0.064140044,0.67090803,0.27711052,-0.44350907,0.5274457,0.26619676,-0.29007584],[-0.6253565,-0.072836235,-0.04700242,-0.5451034,-0.37668335,-0.15641896,-0.3610751],[-0.41676444,-0.32975447,0.09918825,0.1933214,0.114000455,0.21399117,0.6502726],[-0.20933664,0.18370156,0.6303221,-0.34840557,0.10767048,-0.12880816,0.43370107]],"activation":"σ","dense_2_b":[[-0.03087346],[0.083590284],[-0.12312114],[-0.015689747],[-0.03287778],[0.07682254],[-0.065336995],[0.29234254],[-0.08852307],[-0.013764559],[-0.2412543],[-0.016014475],[-0.056882493]]},{"dense_3_W":[[-0.17269112,-0.5855207,0.30247316,-0.3700723,0.5919556,0.34082454,-0.5857902,0.71309996,0.2776839,-0.639282,0.30003944,-0.20085171,-0.20065042],[-0.45765534,0.2437524,0.1612162,-0.505311,-0.10535189,0.53285104,-0.035850286,0.6772977,0.32458842,-0.028878551,-0.14009416,-0.08665312,-0.637454],[-0.19389966,0.029339047,-0.64755374,-0.22215632,-0.07883323,-0.5064457,0.13198881,0.22710016,-0.51746994,-0.3380553,0.19166663,0.023132537,0.14991826]],"activation":"identity","dense_3_b":[[-0.007823971],[-0.0085836565],[0.026530033]]},{"dense_4_W":[[0.93978757,0.73359257,-0.55248207]],"dense_4_b":[[-0.011260626]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json deleted file mode 100644 index 829cfc644e..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[9.103015],[1.0622845],[0.49049565],[0.040089965],[1.0459728],[1.0516889],[1.056568],[1.0408956],[1.019547],[0.99288225],[0.971193],[0.04002349],[0.040028628],[0.040033314],[0.040071882],[0.04004624],[0.039898124],[0.03964297]],"model_test_loss":0.017716435715556145,"input_size":18,"current_date_and_time":"2023-08-13_20-52-08","input_mean":[[23.148537],[0.033288945],[-0.0069383495],[0.006664864],[0.03740209],[0.036363255],[0.035049323],[0.035006184],[0.036647633],[0.039277017],[0.043880757],[0.006671388],[0.0066857547],[0.0066986936],[0.0067147585],[0.006739247],[0.0067356247],[0.006714203]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.6366688],[-0.56371534],[-0.14571653],[-1.4455271],[0.07993529],[-0.0736673],[-0.3548013]],"dense_1_W":[[-1.3113872,0.76172936,0.016918765,0.16224551,0.094115384,0.32684585,-0.19450265,-0.13789567,0.04242289,-0.15509766,0.13169524,-0.13143206,0.032396875,-0.3091977,-0.26571655,-0.13967507,-0.065433465,0.15276721],[-0.07811718,1.0454074,8.495185,-0.7922316,-0.51769626,0.1606819,0.13209969,0.20275009,0.09197654,0.39435092,-0.8629015,0.48206797,0.43022737,0.085256994,-0.39034274,-0.29939228,0.26249692,0.21062453],[-0.0062007825,2.1868382,0.015541467,-0.49308324,-1.4422244,1.0147123,-0.78595483,0.5242463,0.32791784,-0.008197891,-0.23073053,0.31578735,-0.15602784,0.14793761,-0.23083985,0.052981053,0.004748488,0.13156143],[1.2384007,0.6278066,-0.009660281,0.40833205,0.37839705,1.1528418,-1.1164012,-0.32824138,-0.30145752,0.3350114,0.0860737,0.07817285,-0.18830507,-0.33780572,-0.513321,-0.07987069,-0.20404594,0.2723732],[0.0037708185,1.6037707,-0.018128129,0.14369644,1.3666841,1.1831751,1.1010982,1.5845065,1.3880488,0.9383163,0.6016751,0.32569328,0.05112049,-0.3200393,0.6177238,0.070831224,-0.3571441,-0.025784306],[0.0020605826,0.40808862,-0.0019806053,-0.22798932,0.4128132,1.312186,-2.012465,-0.18998149,0.38222578,0.034227915,-0.007133824,0.09108775,0.41027293,-0.35144845,0.41214025,0.18282686,-0.1982243,-0.29242274],[-0.11462315,0.14389442,1.7229052,-0.49408183,0.8118903,0.98040986,-0.1475524,0.32353425,-0.4042175,-0.4816111,-0.08436794,0.30240852,0.011541781,-0.27904144,-0.16726047,0.13386558,0.13543732,0.051627796]],"activation":"σ"},{"dense_2_W":[[-0.30253688,0.01659866,-0.5824275,-0.55473965,-0.65702754,0.4192852,-0.11081115],[0.42800114,-0.20567572,0.73502725,-0.3303795,0.5659001,0.33262393,-0.20845625],[-0.3169161,0.124995895,0.15316603,-0.3496913,0.25013453,0.83376133,0.08400041],[-1.9621079,1.3082521,-0.8913488,0.17462318,0.90885985,-0.7408587,-0.09095186],[0.65295506,-1.0685686,-0.3590795,-1.0821314,0.52553105,-0.33879203,-0.70096666],[0.3209469,-0.25117752,-0.6676659,0.04474845,-0.34462446,-0.6437361,0.2751733],[-0.16672656,0.05766618,0.020867005,-0.14019237,0.19822632,0.58170456,0.371152],[-0.16170846,-0.28313425,-0.72305113,-0.21175383,-0.091973335,0.069761746,-0.13998356],[-0.121987164,0.051230323,0.6086433,0.0826418,0.3024844,0.36294287,0.11378607],[0.23916546,0.32369035,0.29166648,-0.5202349,-0.25274298,0.05645988,0.004484808],[0.476144,-0.20375697,0.7744821,-0.20136273,-0.1997987,0.5086857,-0.13244303],[-0.5018623,0.0039712084,-1.3228892,-0.35630298,0.5103365,0.29102045,-0.42318186],[0.47396633,-0.5094677,-0.7413271,-0.0389592,-1.0502282,0.050273117,0.13152136]],"activation":"σ","dense_2_b":[[0.08725935],[-0.07465063],[0.03314263],[-0.37226093],[-0.023633253],[0.1155244],[-0.035357073],[0.23985702],[-0.20116974],[-0.31014088],[-0.10752753],[0.28552514],[-0.040062964]]},{"dense_3_W":[[-0.6032763,0.62711155,-0.018731741,-0.4367009,-0.33474848,-0.5986305,0.3242449,-0.5550633,0.03024249,0.37429914,0.5477163,-0.11621696,-0.06627925],[0.57853127,-0.07147071,-0.45605588,0.090353325,0.6903964,-0.054210514,0.117629945,-0.07430856,-0.63455236,0.17655165,0.17357552,0.5822009,0.35904822],[0.017287904,-0.4711383,0.31602967,-0.5097068,0.18833941,0.2322238,0.6586847,-0.3739661,-0.35619813,-0.50459105,0.065162025,-0.047679372,-0.048519257]],"activation":"identity","dense_3_b":[[0.030126056],[-0.038708143],[0.07066878]]},{"dense_4_W":[[1.1202317,-1.0828689,0.09244317]],"dense_4_b":[[0.034058213]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json deleted file mode 100644 index 420f806e61..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[10.3052],[1.1070998],[0.5069369],[0.037658893],[1.0964528],[1.0996523],[1.102182],[1.0794489],[1.0610045],[1.0333265],[1.00464],[0.037511136],[0.03756209],[0.037611235],[0.037606418],[0.03751489],[0.037262734],[0.03702075]],"model_test_loss":0.012260119430720806,"input_size":18,"current_date_and_time":"2023-08-13_22-59-06","input_mean":[[21.415882],[0.017556097],[-0.004099798],[-0.003401093],[0.020456757],[0.019209672],[0.01819574],[0.01823048],[0.019393403],[0.02141286],[0.022404209],[-0.0034443606],[-0.0034451415],[-0.0034438162],[-0.00339113],[-0.003406753],[-0.003565579],[-0.0037500844]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.3709847],[-6.2942357],[0.09346686],[6.5184207],[-1.5861837],[-0.014835897],[0.027714923]],"dense_1_W":[[-0.5551179,2.6619074,-0.00640388,0.13290244,-1.037943,0.7656338,0.4283093,0.37328,0.26634002,-0.13999927,-0.15548675,0.097528294,-0.3680248,0.25233808,-0.08934639,-0.015347149,-0.11909841,0.111676104],[-3.5742025,-0.40220144,-1.3790281,0.5485811,-0.050429426,-0.45648634,0.7774281,-1.1217349,-0.6165576,0.1251687,-0.20120902,-0.4511548,-0.13060598,0.22547151,-0.016303696,-0.20157799,0.09675224,-0.07398645],[-0.0012344504,1.1922354,-0.0048953234,0.2634142,-0.6455366,1.3841971,-0.45204964,0.1695878,0.063574985,0.10271839,-0.10217061,-0.08847725,-0.13457958,-0.4961231,-0.5403963,-0.34123054,-0.017704021,0.515054],[3.7061737,-0.9532865,-1.424426,0.6954919,-0.022263907,-0.5896788,1.3645809,-1.1818194,-0.56429285,0.19767563,-0.25111258,0.020198058,-0.52572525,-0.16691986,0.31276083,-0.55734074,0.41006702,-0.19204228],[-0.60735714,-3.3537095,-0.0038090213,0.5654296,1.0198475,-0.6862546,0.08697712,-0.5121695,-0.3346962,0.17586575,0.22113432,-0.08847206,-0.3487319,-0.14522201,0.23490162,-0.18125007,0.10122172,-0.13981529],[0.0017254709,0.62618876,-0.0013352685,-0.0367472,0.040667597,1.5291207,-1.528107,-0.38684332,0.16372706,-0.2591873,0.28832328,0.3641689,-0.24908063,0.1472321,-0.119317986,-0.06420556,0.2222137,-0.2624101],[0.0055754874,-1.8040034,-3.361559,1.0961792,-0.3001131,-0.9308391,1.4269178,0.22353382,-0.4215277,-0.15384597,1.3272976,-0.34549853,-0.6220911,0.38486806,-0.33497638,-0.35858622,0.34940526,-0.16165465]],"activation":"σ"},{"dense_2_W":[[-0.5476146,1.6963724,-1.6546803,0.5176808,0.5235883,-0.97987354,0.7380813],[-0.36497906,-0.2612212,-0.016376352,0.10838414,0.073292136,0.0015826789,-0.50295585],[0.6298286,-0.46785268,-0.16137074,-0.07789413,0.27898172,0.3285615,0.4176234],[0.5922487,-0.34946433,-0.048434507,-0.0985068,-0.6583057,1.0643016,-0.46150544],[0.73731494,-0.6556301,0.81423277,-0.6606677,-0.36022863,0.2516511,-0.49312246],[-0.6430194,-0.41603965,-0.10390351,-0.49625757,0.10309995,-0.22808753,-0.30847374],[0.39266315,-0.15612036,-0.58519137,0.49023283,0.09567495,-1.016928,0.08579332],[0.34867492,0.1914456,-0.21379824,0.041593276,-0.5044442,0.9609127,-0.4119613],[0.37885004,-0.37522417,0.56330055,-0.53145355,-0.91467786,0.5687067,-0.043723527],[-0.57495284,0.46496224,-0.4232346,-0.3390447,0.03577091,0.086310275,-0.06801427],[0.37579545,-0.5779554,-0.16705948,-0.33729044,0.04347679,-0.5497756,-0.24243224],[0.5380365,-0.29537776,0.15974742,-0.5128796,-0.23003492,0.6015878,-0.20965582],[-0.9828622,0.75779086,-1.3404784,1.6249025,0.44636276,-0.6208371,0.7130451]],"activation":"σ","dense_2_b":[[-0.3861388],[0.0100793],[0.05162594],[-0.022311607],[-0.009086858],[-0.23065013],[-0.07641792],[-0.026186304],[-0.23643298],[-0.03883572],[0.021982284],[0.0043940307],[-0.09819139]]},{"dense_3_W":[[0.6619464,0.47387305,-0.55588114,-0.4830425,-0.53887093,0.47769704,0.343591,0.23760638,-0.19049422,0.46038502,0.3466442,-0.52039224,-0.02187165],[0.037034765,-0.5791299,-0.46348968,0.33793876,-0.1364937,-0.17524627,0.48086503,-0.31004375,0.11112415,0.4982084,0.36429304,-0.0013359467,0.5441025],[-0.3904947,0.44045958,-0.18596323,0.615597,-0.032387026,-0.014983241,-0.649624,0.26271734,0.26629633,-0.062090363,-0.37463444,0.5122715,-0.24724658]],"activation":"identity","dense_3_b":[[-0.02654226],[-0.035016984],[0.028202571]]},{"dense_4_W":[[-0.2911369,-0.77550566,0.7692582]],"dense_4_b":[[0.03128059]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json deleted file mode 100644 index f80e89d1ee..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json +++ /dev/null @@ -1 +0,0 @@ -{"test_dict":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.835412,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.2336276,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2189443,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0102171,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.030764546,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7043263,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0948871,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.23544258,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.63234776,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.85114586,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.5361517,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.6150184,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2294357,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-2.1777012,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1220803,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.256643,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.42655924,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.82392097,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.20633036,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8738396,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0698426,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0190142,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-2.2355235,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.11299175,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.7797719,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0755801,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.90929884,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1290616,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9102107,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.63283235,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.2970404,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0833684,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-2.1911933,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.201447,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.9321379,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.098811716,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.22733232,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.4293779,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6842653,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.1035659,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.7793283,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.7686179,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.107880056,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0867288,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.86887354,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0619769,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1285523,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.69223654,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.7518216,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0596709,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-2.11871,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.9609706,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.6211437,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.52062637,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2104128,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1836823,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.5248347,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.292731,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.138114,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.2132114,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.27300417,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.26868293,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.64426357,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.08701679,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.024351712,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1174083,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1745512,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.63085973,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.18953863,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.70560896,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.53338933,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-2.187799,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.9880617,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.1916934,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0533769,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.7911664,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.34528437,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.00016171113,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-2.161565,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.75353914,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.97723967},"input_std":[[8.338225],[1.408846],[1.0394787],[0.03335341],[1.3959996],[1.4030461],[1.407399],[1.384101],[1.3516284],[1.3079585],[1.2541819],[0.033312354],[0.033323247],[0.033341203],[0.033303928],[0.033300698],[0.033334702],[0.0333457]],"model_test_loss":0.016627496108412743,"input_size":18,"current_date_and_time":"2023-07-17_12-56-04","input_mean":[[16.703712],[0.10588005],[-0.010265364],[-0.029445024],[0.10293076],[0.104083925],[0.105137445],[0.10571949],[0.10239706],[0.09606354],[0.09232913],[-0.02939694],[-0.029403588],[-0.02942391],[-0.02959834],[-0.029817479],[-0.030200344],[-0.030651137]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"test_dict_zero_bias":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.0787524,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.35174394,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.41936088,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.2337253,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.13621223,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.49109936,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.439525,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.13884512,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.53931737,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.73874366,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.35439628,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.8166686,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.47153878,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.9580405,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.36217993,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.5416738,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.2621055,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.131006,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7893468,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1926978,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.1279483,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3684851,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3094211,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.3712977,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.7667332,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.27987432,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.041331887,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1544355,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7870656,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.43408832,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.23026863,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3094313,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0644252,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.7976848,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.99903697,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.15177456,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.492374,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3808361,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9073831,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.32916206,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.106909096,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.6694711,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.2106556,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.4411385,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.9513951,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.412755,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2576269,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.36055696,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.6838698,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3918278,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.8520211,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.3348066,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.29837233,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.697657,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1919205,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.7850812,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.21019909,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.42828774,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.4563662,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8075129,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.7073532,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.047708154,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3243128,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.003768146,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.211508,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.4588401,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.4644309,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0761973,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.3106804,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.5213471,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5822113,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.9868801,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0855144,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.31297475,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.2781342,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.8265104,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6158317,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.37998584,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.9141586,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0466149,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0325543},"layers":[{"dense_1_b":[[-2.837288],[-6.5732856],[-0.36112186],[-2.4264846],[-0.53084093],[-0.17624182],[5.4556284]],"dense_1_W":[[-2.3625484,0.70262957,-0.39007878,-0.52770585,0.35169983,-0.35000876,-0.12762427,-1.0095628,-0.83572966,-0.730048,0.6743538,-0.39424068,0.3901122,0.36599886,-0.011965084,0.045552857,0.4666889,-0.3256988],[-3.6053147,-0.31673837,0.66194737,0.3903138,0.98095685,1.2762904,-1.3785179,-1.296343,0.71970254,0.3438452,0.031964917,0.058328565,-0.058488294,-0.33832067,-0.12332722,0.165694,-0.020551614,-0.050333176],[-0.0041524894,0.520019,-0.04355893,-0.05094888,0.60922056,-1.3748976,0.3093316,-1.0256472,0.19658932,0.052907944,0.0067435564,-0.2945121,0.08360483,0.2436637,0.22430366,-0.12585463,0.044775117,-0.054093584],[-1.7719781,-1.0094852,0.5476492,0.15155911,-0.22202487,0.5499667,-0.17507018,1.3075997,0.97578096,0.32534385,-0.32253557,0.19911957,-0.004920554,-0.44574377,0.3794811,-0.23206042,-0.24507338,0.17988442],[-0.096019216,-2.8020802,0.1768002,-0.11615186,1.0867412,-0.4728857,-0.73343986,-1.899336,-1.1828195,1.287238,0.2246014,-0.3443722,0.40425447,0.11932455,0.0037963327,0.3826241,-0.32104075,0.03184444],[0.18515867,0.15802903,11.005427,0.41247886,-2.3798037,-0.84801793,-0.80931455,1.2942814,1.7535613,0.6347409,1.4362186,0.296623,-0.022977732,-0.60491437,0.034293108,-0.08022964,-0.004915833,-0.13788682],[3.219948,-0.5069822,0.39000142,0.34811074,0.6547,0.5350491,-0.30209413,-0.7547057,0.37530193,-0.46802387,0.3797982,0.29564524,-0.28160524,-0.464101,-0.055149645,0.29884568,-0.052221056,-0.08509861]],"activation":"σ"},{"dense_2_W":[[-0.6509598,0.29119527,0.4522418,0.67029077,0.31190413,0.24329087,-0.13738276],[-0.9829914,3.5774024,-1.8433813,1.6228933,-1.0542817,0.96605825,0.16334952],[-0.07484317,1.7878124,-1.9842395,1.3015918,-0.045502957,0.29070792,0.23896325],[-0.017372472,0.5585439,0.38864908,-0.11616016,0.5211495,0.2445178,-0.0821982],[-2.9980035,3.602488,-0.73448294,0.5120281,-1.5761098,1.7105227,2.7474566],[-1.0895693,-0.061832696,1.3823732,0.36133802,-0.51309395,0.6033679,0.18768047],[-0.8188117,0.44345558,1.1498142,0.86907035,-0.38104993,0.18720235,-0.23738712],[0.06584014,-0.61574376,-1.1880105,-0.40490726,-0.46003637,-0.014412597,0.44476265],[2.0212123,1.1144648,-1.0255187,0.9472248,-0.3807562,-3.1219852,-3.644532],[0.0436852,2.2160454,-1.5884769,1.0859653,-0.51730025,0.06356327,0.016509296],[-1.2976134,3.8786354,-1.172869,1.3448112,-1.3144706,1.0707655,0.20357744],[0.3019769,-0.77098906,0.3424374,-0.59369296,0.26005548,-0.20149492,-0.72477216],[0.31829432,0.14789248,-0.20679975,-1.3688983,0.721357,-1.155302,-0.35438472]],"activation":"σ","dense_2_b":[[-0.034817904],[-0.39495024],[-0.16561012],[0.023161512],[0.054840133],[-0.034001518],[-0.05686173],[-0.026203524],[-0.6473888],[0.28907722],[-0.38862142],[-0.091984995],[0.02006307]]},{"dense_3_W":[[-0.2560296,-0.47561207,-0.2180975,0.2697371,-0.28709534,-0.2907532,0.06514903,-0.08777709,0.07678251,-0.14984281,0.20281981,0.027406089,0.26574254],[0.30667484,0.5253529,0.52860755,0.22304007,0.63340044,-0.8269798,-0.36970806,-0.1585502,-1.241306,0.16619857,0.5249275,-0.19621038,0.32695386],[-0.64127594,0.27470827,0.028331403,-0.32301947,0.6665432,-0.8246224,-0.33862486,0.38033482,-1.4627537,0.2530845,0.40247354,-0.49841896,0.30732566]],"activation":"identity","dense_3_b":[[0.06380872],[-0.13593788],[-0.05554244]]},{"dense_4_W":[[-0.17066109,0.67130095,0.99185157]],"dense_4_b":[[-0.057568375]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json deleted file mode 100644 index 2f0c995417..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json +++ /dev/null @@ -1 +0,0 @@ -{"input_std":[[8.782441],[1.1398275],[0.4609802],[0.04271673],[1.1238744],[1.1299343],[1.1346341],[1.1119426],[1.0859472],[1.0505929],[1.01332],[0.042612497],[0.042648252],[0.042672537],[0.042585343],[0.042469293],[0.042215183],[0.04179356]],"model_test_loss":0.018630679696798325,"input_size":18,"current_date_and_time":"2023-08-14_01-59-38","input_mean":[[22.468307],[-0.0059960946],[-0.008688168],[-0.003941978],[-0.004109974],[-0.0052409726],[-0.0066701453],[-0.010034277],[-0.013358513],[-0.011732898],[-0.0112503925],[-0.0039730547],[-0.0039907545],[-0.004007257],[-0.0040642004],[-0.004142748],[-0.004199409],[-0.0042553144]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.22421235],[0.022291217],[0.015709542],[-0.04664034],[-0.036350474],[-0.24544194],[-0.04896989]],"dense_1_W":[[-0.015455264,0.35899833,6.998555,0.81398284,0.34668404,0.50750834,-0.30584475,0.6416511,-0.5377552,-0.026296293,-0.6502898,0.43909717,-0.27295533,-0.76501244,-0.5884351,0.22982346,-0.26877192,0.26560456],[-0.01508568,1.8268416,0.00402336,0.2784217,-0.7716931,0.46446714,-0.11456723,0.10766974,0.30401927,-0.085616745,-0.15998937,0.44400185,-0.48933145,-0.23811713,-0.440158,-0.10242332,0.051594254,0.12977812],[-0.009739386,-2.6971612,0.001168384,-0.35022622,0.65414,-0.717214,-0.44903016,-0.49311733,-0.43150806,0.06219255,0.23182331,-0.44158918,-0.49226075,0.47947824,0.6467593,0.34515625,0.09018108,-0.47900265],[1.0840801,-0.7623997,-0.005088885,-0.52213657,-0.22831856,-0.6294846,-1.2465742,0.3222685,0.020507088,-0.024931427,-0.24259277,0.08206772,0.21676067,-0.41708487,0.50989604,0.33494267,-0.079637915,-0.14551927],[0.004391417,-0.10370217,0.0014306986,-0.072918385,-0.63637805,-1.1973468,0.5230291,-0.05261172,0.25703079,0.041062124,-0.34666935,0.0939909,-0.48456657,0.08325979,0.5252982,-0.10210225,-0.12507002,0.05711295],[-0.010150519,0.47018084,1.575968,-0.12638067,0.58264244,1.1620525,-0.6418302,-0.022278491,0.5091847,-0.16685116,0.074821465,0.22004989,-0.099773616,-0.5007223,-0.09964562,0.46015504,0.21582201,-0.23595089],[1.1357191,0.7709306,0.003718608,0.6016892,0.7352459,0.33387783,1.0426474,0.12312558,-0.49904007,0.032169387,0.37637976,-0.05813148,-0.49427262,0.49914685,-0.2028158,-0.5950836,0.2782391,0.028333709]],"activation":"σ"},{"dense_2_W":[[0.43099108,-0.40067255,0.15829495,-0.48378208,0.396984,-0.1558594,-0.1562694],[0.6452132,0.40809157,-0.5897283,1.2150947,-0.6793519,0.78984624,0.66217726],[-1.0487145,-0.15708125,0.48070663,-1.294668,0.44506454,-1.0924927,-1.3423347],[-0.0905496,-0.39283985,-0.560608,-0.4611327,-0.3925291,0.005858116,0.5098873],[-1.3053528,-0.17654762,1.1515645,1.4426079,1.0838766,-0.6442153,1.756127],[-0.34371176,1.1574818,0.017585738,0.20476972,-0.463017,-0.22401343,-0.5996214],[0.20533562,0.79994386,-0.8060774,0.17529243,-0.38612595,0.03759143,-0.22778784],[-0.10523058,1.0248777,-0.5244927,0.58016795,-0.48161384,0.2411753,-0.3102547],[0.041490827,-0.12094459,0.44139338,0.123947956,0.5913839,-0.50927347,0.82576096],[-0.17784683,-0.7949691,0.6407812,0.36980206,-0.045769464,-0.15805046,0.27670377],[0.13153441,-0.9403638,0.2306892,-0.18441507,0.34671855,-0.074668296,0.5032],[-0.04615598,0.71520805,-0.0030287886,-0.17552495,-0.19403128,0.21251689,0.24918763],[0.2859375,-0.5510105,0.31645826,-0.15235336,0.62049425,0.14673771,0.11173112]],"activation":"σ","dense_2_b":[[-0.20544042],[0.14436114],[-0.12040931],[-0.16554375],[0.36716554],[0.17168364],[-0.065600924],[-0.01176559],[-0.03528442],[0.037511505],[-0.11677802],[-0.035834227],[-0.17063564]]},{"dense_3_W":[[-0.3723276,0.4951858,-0.17594789,0.31653145,-0.09435181,0.45912716,-0.30004933,0.41055498,-0.21392249,0.35937718,-0.10425309,-0.2715391,-0.5834551],[-0.25541237,-0.58331114,0.4694298,-0.14703207,0.7632458,-0.35720977,-0.26993504,-0.5713957,0.020457853,0.012436012,-0.049483325,0.1666998,0.33925256],[0.45550138,0.12273135,0.51411545,0.43389788,0.0037848332,-0.41984108,-0.10243085,-0.56994265,0.24741924,0.44959965,0.5980098,-0.37595576,0.34953722]],"activation":"identity","dense_3_b":[[0.048041742],[-0.07375918],[-0.090859294]]},{"dense_4_W":[[0.09198451,-1.1679362,-0.9176557]],"dense_4_b":[[0.08128402]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json b/opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json deleted file mode 100644 index 1886683538..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "CHEVROLET_BOLT_EUV": {"w_1": [[0.3452189564704895, -0.15614677965641022, -0.04062516987323761, -0.5960758328437805, 0.3211185932159424, 0.31732726097106934, -0.04430829733610153, -0.37327295541763306, -0.14118380844593048, 0.12712529301643372, 0.2641555070877075, -0.3451094627380371, -0.005127656273543835, 0.6185108423233032, 0.03725295141339302, 0.3763789236545563], [-0.0708412230014801, 0.3667356073856354, 0.031383827328681946, 0.1740853488445282, -0.04695861041545868, 0.018055908381938934, 0.009072160348296165, -0.23640218377113342, -0.10362917929887772, 0.022628149017691612, -0.224413201212883, 0.20718418061733246, -0.016947750002145767, -0.3872031271457672, -0.15500062704086304, -0.06375953555107117], [-0.0838046595454216, -0.0242826659232378, -0.07765661180019379, 0.028858814388513565, -0.09516210108995438, 0.008368706330657005, 0.1689300835132599, 0.015036891214549541, -0.15121428668498993, 0.1388195902109146, 0.11486363410949707, 0.0651545450091362, 0.13559958338737488, 0.04300367832183838, -0.13856294751167297, -0.058136988431215286], [-0.006249868310987949, 0.08809533715248108, -0.040690965950489044, 0.02359287068247795, -0.00766348373144865, 0.24816390872001648, -0.17360293865203857, -0.03676899895071983, -0.17564819753170013, 0.18998438119888306, -0.050583917647600174, -0.006488069426268339, 0.10649101436138153, -0.024557121098041534, -0.103276826441288, 0.18448011577129364]], "b_1": [0.2935388386249542, 0.10967712104320526, -0.014007942751049995, 0.211833655834198, 0.33605605363845825, 0.37722209095954895, -0.16615016758441925, 0.3134673535823822, 0.06695777177810669, 0.3425212800502777, 0.3769673705101013, 0.23186539113521576, 0.5770409107208252, -0.05929069593548775, 0.01839117519557476, 0.03828774020075798], "w_2": [[-0.06261160969734192, 0.010185074992477894, -0.06083013117313385, -0.04531499370932579, -0.08979734033346176, 0.3432150185108185, -0.019801849499344826, 0.3010321259498596], [0.19698476791381836, -0.009238275699317455, 0.08842222392559052, -0.09516377002000809, -0.05022778362035751, 0.13626104593276978, -0.052890390157699585, 0.15569131076335907], [0.0724768117070198, -0.09018408507108688, 0.06850195676088333, -0.025572121143341064, 0.0680626779794693, -0.07648195326328278, 0.07993496209383011, -0.059752143919467926], [1.267876386642456, -0.05755887180566788, -0.08429178595542908, 0.021366603672504425, -0.0006479775765910745, -1.4292563199996948, -0.08077696710824966, -1.414825439453125], [0.04535430669784546, 0.06555880606174469, -0.027145234867930412, -0.07661093026399612, -0.05702832341194153, 0.23650476336479187, 0.0024587824009358883, 0.20126521587371826], [0.006042032968252897, 0.042880818247795105, 0.002187949838116765, -0.017126334831118584, -0.08352015167474747, 0.19801731407642365, -0.029196614399552345, 0.23713473975658417], [-0.01644900068640709, -0.04358499124646187, 0.014584392309188843, 0.07155826687812805, -0.09354910999536514, -0.033351872116327286, 0.07138452678918839, -0.04755295440554619], [-1.1012420654296875, -0.03534531593322754, 0.02167935110628605, -0.01116552110761404, -0.08436500281095505, 1.1038788557052612, 0.027903547510504723, 1.0676132440567017], [0.03843916580080986, -0.0952216386795044, 0.039226632565259933, 0.002778085647150874, -0.020275786519050598, -0.07848760485649109, 0.04803166165947914, 0.015538203530013561], [0.018385495990514755, -0.025189843028783798, 0.0036680365446954966, -0.02105865254998207, 0.04808586835861206, 0.1575016975402832, 0.02703506126999855, 0.23039312660694122], [-0.0033881019335240126, -0.10210853815078735, -0.04877309128642082, 0.006989633198827505, 0.046798162162303925, 0.38676899671554565, -0.032304272055625916, 0.2345031052827835], [0.22092825174331665, -0.09642873704433441, 0.04499409720301628, 0.05108088254928589, -0.10191166400909424, 0.12818090617656708, -0.021021494641900063, 0.09440375864505768], [0.1212429478764534, -0.028194155544042587, -0.0981956496834755, 0.08226924389600754, 0.055346839129924774, 0.27067816257476807, -0.09064067900180817, 0.12580905854701996], [-1.6740131378173828, -0.02066155895590782, -0.05924689769744873, 0.06347910314798355, -0.07821853458881378, 1.2807466983795166, 0.04589352011680603, 1.310766577720642], [-0.09893272817134857, -0.04093599319458008, -0.02502273954451084, 0.09490344673395157, -0.0211324505507946, -0.09021010994911194, 0.07936318963766098, -0.03593116253614426], [-0.08490308374166489, -0.015558987855911255, -0.048692114651203156, -0.007421435788273811, -0.040531404316425323, 0.25889304280281067, 0.06012800335884094, 0.27946868538856506]], "b_2": [0.07973937690258026, -0.010446485131978989, -0.003066520905122161, -0.031895797699689865, 0.006032303906977177, 0.24106740951538086, -0.008969511836767197, 0.2872662842273712], "w_3": [[-1.364486813545227, -0.11682678014039993, 0.01764785870909691, 0.03926877677440643], [-0.05695437639951706, 0.05472218990325928, 0.1266128271818161, 0.09950875490903854], [0.11415273696184158, -0.10069356113672256, 0.0864749327301979, -0.043946366757154465], [-0.10138195008039474, -0.040128443390131, -0.08937158435583115, -0.0048376512713730335], [-0.0028251828625798225, -0.04743027314543724, 0.06340016424655914, 0.07277824729681015], [0.49482327699661255, -0.06410001963376999, -0.0999293103814125, -0.14250673353672028], [0.042802367359399796, 0.0015462725423276424, -0.05991362780332565, 0.1022040992975235], [0.3523194193840027, 0.07343732565641403, 0.04157765582203865, -0.12358107417821884]], "b_3": [0.2653026282787323, -0.058485131710767746, -0.0744510293006897, 0.012550175189971924], "w_4": [[0.5988775491714478, 0.09668736904859543], [-0.04360569268465042, 0.06491032242774963], [-0.11868984252214432, -0.09601487964391708], [-0.06554870307445526, -0.14189276099205017]], "b_4": [-0.08148707449436188, -2.8251802921295166], "input_norm_mat": [[-3.0, 3.0], [-3.0, 3.0], [0.0, 40.0], [-3.0, 3.0]], "output_norm_mat": [-1.0, 1.0], "temperature": 100.0}, - "CHEVROLET_BOLT_CC": {"w_1": [[0.3452189564704895, -0.15614677965641022, -0.04062516987323761, -0.5960758328437805, 0.3211185932159424, 0.31732726097106934, -0.04430829733610153, -0.37327295541763306, -0.14118380844593048, 0.12712529301643372, 0.2641555070877075, -0.3451094627380371, -0.005127656273543835, 0.6185108423233032, 0.03725295141339302, 0.3763789236545563], [-0.0708412230014801, 0.3667356073856354, 0.031383827328681946, 0.1740853488445282, -0.04695861041545868, 0.018055908381938934, 0.009072160348296165, -0.23640218377113342, -0.10362917929887772, 0.022628149017691612, -0.224413201212883, 0.20718418061733246, -0.016947750002145767, -0.3872031271457672, -0.15500062704086304, -0.06375953555107117], [-0.0838046595454216, -0.0242826659232378, -0.07765661180019379, 0.028858814388513565, -0.09516210108995438, 0.008368706330657005, 0.1689300835132599, 0.015036891214549541, -0.15121428668498993, 0.1388195902109146, 0.11486363410949707, 0.0651545450091362, 0.13559958338737488, 0.04300367832183838, -0.13856294751167297, -0.058136988431215286], [-0.006249868310987949, 0.08809533715248108, -0.040690965950489044, 0.02359287068247795, -0.00766348373144865, 0.24816390872001648, -0.17360293865203857, -0.03676899895071983, -0.17564819753170013, 0.18998438119888306, -0.050583917647600174, -0.006488069426268339, 0.10649101436138153, -0.024557121098041534, -0.103276826441288, 0.18448011577129364]], "b_1": [0.2935388386249542, 0.10967712104320526, -0.014007942751049995, 0.211833655834198, 0.33605605363845825, 0.37722209095954895, -0.16615016758441925, 0.3134673535823822, 0.06695777177810669, 0.3425212800502777, 0.3769673705101013, 0.23186539113521576, 0.5770409107208252, -0.05929069593548775, 0.01839117519557476, 0.03828774020075798], "w_2": [[-0.06261160969734192, 0.010185074992477894, -0.06083013117313385, -0.04531499370932579, -0.08979734033346176, 0.3432150185108185, -0.019801849499344826, 0.3010321259498596], [0.19698476791381836, -0.009238275699317455, 0.08842222392559052, -0.09516377002000809, -0.05022778362035751, 0.13626104593276978, -0.052890390157699585, 0.15569131076335907], [0.0724768117070198, -0.09018408507108688, 0.06850195676088333, -0.025572121143341064, 0.0680626779794693, -0.07648195326328278, 0.07993496209383011, -0.059752143919467926], [1.267876386642456, -0.05755887180566788, -0.08429178595542908, 0.021366603672504425, -0.0006479775765910745, -1.4292563199996948, -0.08077696710824966, -1.414825439453125], [0.04535430669784546, 0.06555880606174469, -0.027145234867930412, -0.07661093026399612, -0.05702832341194153, 0.23650476336479187, 0.0024587824009358883, 0.20126521587371826], [0.006042032968252897, 0.042880818247795105, 0.002187949838116765, -0.017126334831118584, -0.08352015167474747, 0.19801731407642365, -0.029196614399552345, 0.23713473975658417], [-0.01644900068640709, -0.04358499124646187, 0.014584392309188843, 0.07155826687812805, -0.09354910999536514, -0.033351872116327286, 0.07138452678918839, -0.04755295440554619], [-1.1012420654296875, -0.03534531593322754, 0.02167935110628605, -0.01116552110761404, -0.08436500281095505, 1.1038788557052612, 0.027903547510504723, 1.0676132440567017], [0.03843916580080986, -0.0952216386795044, 0.039226632565259933, 0.002778085647150874, -0.020275786519050598, -0.07848760485649109, 0.04803166165947914, 0.015538203530013561], [0.018385495990514755, -0.025189843028783798, 0.0036680365446954966, -0.02105865254998207, 0.04808586835861206, 0.1575016975402832, 0.02703506126999855, 0.23039312660694122], [-0.0033881019335240126, -0.10210853815078735, -0.04877309128642082, 0.006989633198827505, 0.046798162162303925, 0.38676899671554565, -0.032304272055625916, 0.2345031052827835], [0.22092825174331665, -0.09642873704433441, 0.04499409720301628, 0.05108088254928589, -0.10191166400909424, 0.12818090617656708, -0.021021494641900063, 0.09440375864505768], [0.1212429478764534, -0.028194155544042587, -0.0981956496834755, 0.08226924389600754, 0.055346839129924774, 0.27067816257476807, -0.09064067900180817, 0.12580905854701996], [-1.6740131378173828, -0.02066155895590782, -0.05924689769744873, 0.06347910314798355, -0.07821853458881378, 1.2807466983795166, 0.04589352011680603, 1.310766577720642], [-0.09893272817134857, -0.04093599319458008, -0.02502273954451084, 0.09490344673395157, -0.0211324505507946, -0.09021010994911194, 0.07936318963766098, -0.03593116253614426], [-0.08490308374166489, -0.015558987855911255, -0.048692114651203156, -0.007421435788273811, -0.040531404316425323, 0.25889304280281067, 0.06012800335884094, 0.27946868538856506]], "b_2": [0.07973937690258026, -0.010446485131978989, -0.003066520905122161, -0.031895797699689865, 0.006032303906977177, 0.24106740951538086, -0.008969511836767197, 0.2872662842273712], "w_3": [[-1.364486813545227, -0.11682678014039993, 0.01764785870909691, 0.03926877677440643], [-0.05695437639951706, 0.05472218990325928, 0.1266128271818161, 0.09950875490903854], [0.11415273696184158, -0.10069356113672256, 0.0864749327301979, -0.043946366757154465], [-0.10138195008039474, -0.040128443390131, -0.08937158435583115, -0.0048376512713730335], [-0.0028251828625798225, -0.04743027314543724, 0.06340016424655914, 0.07277824729681015], [0.49482327699661255, -0.06410001963376999, -0.0999293103814125, -0.14250673353672028], [0.042802367359399796, 0.0015462725423276424, -0.05991362780332565, 0.1022040992975235], [0.3523194193840027, 0.07343732565641403, 0.04157765582203865, -0.12358107417821884]], "b_3": [0.2653026282787323, -0.058485131710767746, -0.0744510293006897, 0.012550175189971924], "w_4": [[0.5988775491714478, 0.09668736904859543], [-0.04360569268465042, 0.06491032242774963], [-0.11868984252214432, -0.09601487964391708], [-0.06554870307445526, -0.14189276099205017]], "b_4": [-0.08148707449436188, -2.8251802921295166], "input_norm_mat": [[-3.0, 3.0], [-3.0, 3.0], [0.0, 40.0], [-3.0, 3.0]], "output_norm_mat": [-1.0, 1.0], "temperature": 100.0}, - "CHEVROLET_VOLT": {"w_1": [[0.5516733527183533, 0.28650903701782227, 1.0616134855438151e-19, -0.2482127994298935, 0.5165372490882874, 0.32581156492233276, 0.6645702123641968, 0.4194486737251282, 0.5927627086639404, -0.0328187569975853, 0.6323108077049255, -0.12203103303909302, 0.11281631886959076, -2.654628183940133e-10, 0.5394119620323181, -0.4970140755176544], [-0.2910875976085663, -0.038319461047649384, 1.9649572053620603e-19, 0.4981677830219269, 0.0054930406622588634, 0.07476851344108582, 0.20472633838653564, -0.33076775074005127, -0.1498391479253769, -0.06295789778232574, -0.480659544467926, -0.13475002348423004, -0.03518842160701752, -4.782728657559687e-10, -0.34113195538520813, 0.6206631660461426], [-0.11170702427625656, 0.25658369064331055, 1.087845256848947e-19, 0.16607443988323212, -0.10192729532718658, -0.03195486217737198, -0.1803816556930542, 0.22713883221149445, -0.1330508291721344, -0.4118225872516632, 0.17756527662277222, -0.11628653109073639, 0.3751380741596222, -7.316058869832887e-10, -0.01833215169608593, -0.08166859298944473], [-0.07284875959157944, 0.3699161410331726, 5.846104666085234e-19, 0.05571507662534714, 0.030072394758462906, 0.19551986455917358, -0.0005759565392509103, 0.3636842966079712, -0.004623600747436285, -0.2045377939939499, -0.11712410300970078, -0.07342428714036942, 0.2819288969039917, -3.224051026151642e-10, 0.03595889359712601, 0.2487708181142807]], "b_1": [0.16698665916919708, 0.21203921735286713, -9.182525776096566e-19, 0.1625976860523224, 0.49618133902549744, 0.6029171943664551, -0.3458203971385956, 0.015011506155133247, -0.0782870203256607, 0.4928355813026428, 0.2375747561454773, 0.6214734315872192, 0.3511180579662323, -5.705510508491329e-10, -0.0750492662191391, 0.3677784502506256], "w_2": [[-0.04349031671881676, 0.15496383607387543, -0.4055676758289337, 0.11350446939468384, 1.445391527190931e-33, 1.0552627624469692e-16, 0.1733747124671936, 0.35861700773239136], [0.23150336742401123, 0.2276492416858673, -0.18099287152290344, 0.02294851653277874, -2.075977458071018e-18, -1.325045403125424e-16, 0.051872558891773224, -0.1528702974319458], [-2.98845249575707e-21, -9.971494263264824e-20, -5.589338239672942e-20, -4.436884037752495e-20, 4.571689810917957e-35, -3.794950163550598e-30, -9.810562397683511e-20, -3.452006611295061e-20], [0.08596120774745941, -0.054880350828170776, 0.43768489360809326, -0.09713199734687805, 4.4682497518767015e-35, 2.807830046248872e-16, -0.18987804651260376, -0.3948379158973694], [0.14590975642204285, 0.3676301836967468, -0.17351070046424866, 0.15835285186767578, -4.568215973549524e-16, -2.88295181015408e-16, 0.21294236183166504, 0.3801838755607605], [0.15526960790157318, 0.36512187123298645, -0.0003659244393929839, 0.24353988468647003, -1.0020771712415666e-10, -3.6356116551477564e-17, 0.18989993631839752, 0.2028643637895584], [0.31663089990615845, 0.3268280327320099, -0.8160105347633362, 0.24045336246490479, -4.5658180788823553e-35, -4.9482076591820124e-17, 0.14176727831363678, -0.7280115485191345], [-0.026223642751574516, 0.006531805731356144, -0.5413835048675537, -0.041816286742687225, -7.046195992156958e-34, 1.436593157182813e-16, -0.0642424151301384, -0.13547064363956451], [0.13290469348430634, 0.17396631836891174, -0.9817711710929871, 0.13705432415008545, 4.3752832441863396e-35, 7.312650500605639e-17, 0.12381640076637268, -0.16381914913654327], [0.027135619893670082, 0.2109440267086029, 0.14039571583271027, 0.2346874475479126, -2.3970409953885753e-18, -1.54667435310137e-16, 0.1956777274608612, 0.46355459094047546], [0.22228209674358368, 0.16954660415649414, -0.6394681930541992, 0.19669419527053833, 1.3727212909287464e-32, -2.3409428387443417e-16, 0.18723812699317932, -0.040824320167303085], [0.28085383772850037, 0.1700034886598587, 0.1050030067563057, 0.33378034830093384, -9.820506607911259e-18, 8.922208315013372e-17, 0.2474491447210312, 0.2316184788942337], [0.33533284068107605, 0.21567615866661072, -0.05730810761451721, 0.26805511116981506, -3.1682982788976827e-14, 4.338388141690851e-16, 0.015533575788140297, -0.29559168219566345], [-4.576090339991623e-10, -5.784854817392215e-10, -3.4070618548653897e-10, -4.8748227676753686e-11, 4.430075745025303e-35, 1.6349813928773575e-28, -1.33041383465482e-10, -3.67800956357911e-10], [0.26915091276168823, 0.3145923316478729, -0.8938327431678772, 0.2433646321296692, -4.7419545427104256e-35, 7.721867337547462e-17, 0.17733684182167053, -0.393244206905365], [-0.06348289549350739, -0.1442527025938034, 0.7552046775817871, -0.16448144614696503, 4.54707187124318e-35, 1.0030211451572232e-16, -0.1931277960538864, -0.05349331721663475]], "b_2": [0.36573266983032227, 0.38540416955947876, 0.4937290549278259, 0.3542242646217346, -3.672429927433635e-14, -9.65649747121898e-16, 0.29293742775917053, 0.09515751153230667], "w_3": [[0.24680736660957336, -1.194178918653753e-15, 0.024633267894387245, 0.3891109526157379], [0.1886747032403946, -3.1824330141500467e-16, 0.1444225162267685, 0.41964977979660034], [1.2357182502746582, -2.5090208832312697e-28, -1.1682084798812866, -0.6477577686309814], [0.12155500054359436, 8.995584428348745e-24, 0.17460790276527405, 0.2622942328453064], [1.4854420271603885e-07, -5.408280186437304e-35, -4.325715035135064e-35, 0.00040026361239142716], [9.324351103356642e-17, -7.411454266115296e-31, -7.501238415844868e-17, -1.0792026266887849e-16], [-0.04069517180323601, -1.0165957415018617e-28, 0.26544079184532166, 0.168765127658844], [-0.8055086731910706, 4.934884444806273e-28, 0.27189183235168457, -0.5389688014984131]], "b_3": [0.3497087061405182, 9.60089655083145e-28, 0.06688851863145828, 0.4094548225402832], "w_4": [[-0.09925906360149384, -1.2337487936019897], [4.750982952828053e-06, -1.445817050268457e-30], [0.5779934525489807, -0.40107813477516174], [0.2167285829782486, -0.519594132900238]], "b_4": [0.0635845810174942, -0.30703499913215637], "input_norm_mat": [[-3.0, 3.0], [-3.0, 3.0], [0.0, 40.0], [-3.0, 3.0]], "output_norm_mat": [-1.0, 1.0], "temperature": 100.0} -} diff --git a/opendbc_repo/opendbc/car/torque_data/override.toml b/opendbc_repo/opendbc/car/torque_data/override.toml deleted file mode 100644 index a6269f8bb7..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/override.toml +++ /dev/null @@ -1,115 +0,0 @@ -legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] -### angle control -# Nissan appears to have torque -"NISSAN_XTRAIL" = [nan, 1.5, nan] -"NISSAN_ALTIMA" = [nan, 1.5, nan] -"NISSAN_LEAF_IC" = [nan, 1.5, nan] -"NISSAN_LEAF" = [nan, 1.5, nan] -"NISSAN_ROGUE" = [nan, 1.5, nan] - -# New subarus angle based controllers -"SUBARU_FORESTER_2022" = [nan, 3.0, nan] -"SUBARU_OUTBACK_2023" = [nan, 3.0, nan] -"SUBARU_ASCENT_2023" = [nan, 3.0, nan] - -# Toyota LTA also has torque -"TOYOTA_RAV4_TSS2_2023" = [nan, 3.0, nan] - -# Tesla angle based controllers -"TESLA_MODEL_3" = [nan, 2.5, nan] -"TESLA_MODEL_Y" = [nan, 2.5, nan] - -# Guess -"FORD_BRONCO_SPORT_MK1" = [nan, 1.5, nan] -"FORD_ESCAPE_MK4" = [nan, 1.5, nan] -"FORD_EXPLORER_MK6" = [nan, 1.5, nan] -"FORD_F_150_MK14" = [nan, 1.5, nan] -"FORD_FOCUS_MK4" = [nan, 1.5, nan] -"FORD_MAVERICK_MK1" = [nan, 1.5, nan] -"FORD_F_150_LIGHTNING_MK1" = [nan, 1.5, nan] -"FORD_MUSTANG_MACH_E_MK1" = [nan, 1.5, nan] -"FORD_RANGER_MK2" = [nan, 1.5, nan] -### - -# No steering wheel -"COMMA_BODY" = [nan, 1000, nan] - -# Totally new cars -"RAM_1500_5TH_GEN" = [2.0, 2.0, 0.05] -"RAM_HD_5TH_GEN" = [1.4, 1.4, 0.05] -"SUBARU_OUTBACK" = [2.0, 1.5, 0.2] -"BUICK_BABYENCLAVE" = [1.45, 1.6, 0.2] -"CADILLAC_ESCALADE" = [1.899999976158142, 1.842270016670227, 0.1120000034570694] -"CADILLAC_ESCALADE_ESV_2019" = [1.15, 1.3, 0.2] -"CADILLAC_XT4" = [1.45, 1.6, 0.2] -"CHEVROLET_BOLT_EUV" = [2.0, 2.0, 0.05] -"CHEVROLET_MALIBU_CC" = [1.85, 1.85, 0.075] -"CHEVROLET_SILVERADO" = [1.9, 1.9, 0.112] -"CHEVROLET_TRAILBLAZER" = [1.33, 1.9, 0.16] -"CHEVROLET_TRAVERSE" = [1.33, 1.33, 0.18] -"CHEVROLET_EQUINOX" = [2.5, 2.5, 0.05] -"CHEVROLET_VOLT_2019" = [1.4, 1.4, 0.16] -"CHEVROLET_TRAX" = [1.33, 1.9, 0.16] -"VOLKSWAGEN_CADDY_MK3" = [1.2, 1.2, 0.1] -"VOLKSWAGEN_PASSAT_NMS" = [2.5, 2.5, 0.1] -"VOLKSWAGEN_SHARAN_MK2" = [2.5, 2.5, 0.1] -"HYUNDAI_SANTA_CRUZ_1ST_GEN" = [2.7, 2.7, 0.1] -"KIA_SPORTAGE_5TH_GEN" = [2.6, 2.6, 0.1] -"GENESIS_GV70_1ST_GEN" = [2.42, 2.42, 0.1] -"GENESIS_GV60_EV_1ST_GEN" = [2.5, 2.5, 0.1] -"GMC_YUKON" = [1.2, 2.5, 0.26] -"KIA_SORENTO_4TH_GEN" = [2.5, 2.5, 0.1] -"KIA_SORENTO_HEV_4TH_GEN" = [2.5, 2.5, 0.1] -"KIA_NIRO_HEV_2ND_GEN" = [2.42, 2.5, 0.12] -"KIA_NIRO_EV_2ND_GEN" = [2.05, 2.5, 0.14] -"GENESIS_GV80" = [2.5, 2.5, 0.1] -"KIA_CARNIVAL_4TH_GEN" = [1.75, 1.75, 0.15] -"GMC_ACADIA" = [1.6, 1.6, 0.2] -"LEXUS_IS_TSS2" = [2.0, 2.0, 0.1] -"HYUNDAI_KONA_EV_2ND_GEN" = [2.5, 2.5, 0.1] -"HYUNDAI_KONA_HEV_2ND_GEN" = [2.5, 2.5, 0.1] -"HYUNDAI_IONIQ_6" = [2.5, 2.5, 0.005] -"HYUNDAI_IONIQ_9" = [1.75, 1.75, 0.15] -"HYUNDAI_AZERA_7TH_GEN" = [1.8, 1.8, 0.1] -"HYUNDAI_AZERA_6TH_GEN" = [1.8, 1.8, 0.1] -"HYUNDAI_AZERA_HEV_6TH_GEN" = [1.8, 1.8, 0.1] -"KIA_K8_HEV_1ST_GEN" = [2.5, 2.5, 0.1] -"HYUNDAI_CUSTIN_1ST_GEN" = [2.5, 2.5, 0.1] -"LEXUS_GS_F" = [2.5, 2.5, 0.08] -"HYUNDAI_STARIA_4TH_GEN" = [1.8, 2.0, 0.15] -"HYUNDAI_PORTER_II_EV" = [1.8, 2.0, 0.15] -"GENESIS_GV70_ELECTRIFIED_1ST_GEN" = [1.9, 1.9, 0.09] -"GENESIS_G80_2ND_GEN_FL" = [2.5819356441497803, 2.5, 0.11244568973779678] -"RIVIAN_R1_GEN1" = [2.8, 2.5, 0.07] -"HYUNDAI_NEXO_1ST_GEN" = [2.5, 2.5, 0.1] - -# Dashcam or fallback configured as ideal car -"MOCK" = [10.0, 10, 0.0] - -# Manually checked -"HONDA_CIVIC_2022" = [2.5, 1.2, 0.15] -"HONDA_HRV_3G" = [2.5, 1.2, 0.2] - -# Community -"HYUNDAI_GRANDEUR_IG" = [2.3, 2.3, 0.1] -"HYUNDAI_GRANDEUR_IG_HEV" = [2.3, 2.3, 0.1] -"GENESIS_EQ900" = [2.3, 2.3, 0.1] -"GENESIS_EQ900_L" = [2.3, 2.3, 0.1] -"GENESIS_G90_2019" = [2.3, 2.3, 0.1] -"KIA_MOHAVE" = [2.3, 2.3, 0.1] -"KIA_K5" = [2.3, 2.3, 0.1] -"KIA_K5_HEV" = [2.3, 2.3, 0.1] -"KIA_K5_HEV_2022" = [2.3, 2.3, 0.1] -"KIA_K7" = [2.3, 2.3, 0.1] -"KIA_K7_HEV" = [2.3, 2.3, 0.1] -"KIA_K9" = [2.3, 2.3, 0.1] -"GENESIS_GV70_EV_1ST_GEN" = [2.42, 2.42, 0.1] -"HYUNDAI_NEXO" = [2.7, 2.7, 0.1] -"KIA_EV_SK3" = [2.5, 2.5, 0.1] -"HYUNDAI_CASPER"= [2.5, 2.5, 0.1] -"HYUNDAI_CASPER_EV"= [2.5, 2.5, 0.1] -"HYUNDAI_IONIQ_5_N" = [3.17, 2.71, 0.097] -"HYUNDAI_IONIQ_5_PE" = [1.75, 1.75, 0.15] - -# BMW -"BMW_E90" = [2.3, 1.5, 0.15] diff --git a/opendbc_repo/opendbc/car/torque_data/params.toml b/opendbc_repo/opendbc/car/torque_data/params.toml deleted file mode 100644 index 9883acf2e5..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/params.toml +++ /dev/null @@ -1,89 +0,0 @@ -legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] -"ACURA_ILX" = [1.524988973896102, 0.519011053086259, 0.34236219253028] -"ACURA_RDX" = [0.9987728568686902, 0.5323765166196301, 0.303218805715844] -"ACURA_RDX_3G" = [1.4314459806646749, 0.33874701282109954, 0.18048847083897598] -"AUDI_A3_MK3" = [1.5122414863077502, 1.7443517531719404, 0.15194151892450905] -"AUDI_Q3_MK2" = [1.4439223359448605, 1.2254955789112076, 0.1413798895978097] -"CHEVROLET_VOLT" = [1.5961527626411784, 1.8422651988094612, 0.1572393918005158] -"CHRYSLER_PACIFICA_2018" = [2.07140, 1.3366521181047952, 0.13776367250652022] -"CHRYSLER_PACIFICA_2020" = [1.86206, 1.509076559398423, 0.14328246159386085] -"CHRYSLER_PACIFICA_2018_HYBRID" = [2.08887, 1.2943025830995154, 0.114818] -"CHRYSLER_PACIFICA_2019_HYBRID" = [1.90120, 1.1958788168371808, 0.131520] -"GENESIS_G70" = [3.8520195946707947, 2.354697063349854, 0.06830285485626221] -"HONDA_ACCORD" = [1.6893333799149202, 0.3246749081720698, 0.2120497022936265] -"HONDA_CIVIC_BOSCH" = [1.691708637466905, 0.40132900729454185, 0.25460295304024094] -"HONDA_CIVIC" = [1.6528895627785531, 0.4018518740819229, 0.25458812851328544] -"HONDA_CRV" = [0.7667141440182675, 0.5927571534745969, 0.40909087636157127] -"HONDA_CRV_5G" = [2.01323205142022, 0.2700612209345081, 0.2238412881331528] -"HONDA_CRV_HYBRID" = [2.072034634644233, 0.7152085160516978, 0.20237105008376083] -"HONDA_FIT" = [1.5719981427109775, 0.5712761407108976, 0.110773383324281] -"HONDA_HRV" = [2.0661212805710205, 0.7521343418694775, 0.17760375789242094] -"HONDA_INSIGHT" = [1.5201671214069354, 0.5660229120683284, 0.25808042580281876] -"HONDA_ODYSSEY" = [1.8774809275211801, 0.8394431662987996, 0.2096978613792822] -"HONDA_PILOT" = [1.7262026201812795, 0.9470005614967523, 0.21351430733218763] -"HONDA_RIDGELINE" = [1.4146525028237624, 0.7356572861629564, 0.23307177552211328] -"HYUNDAI_ELANTRA_2021" = [3.169, 2.1259108157250735, 0.0819] -"HYUNDAI_GENESIS" = [2.7807965280270794, 2.325, 0.0984484465421171] -"HYUNDAI_IONIQ_5" = [3.172929, 2.713050, 0.096019] -"HYUNDAI_IONIQ_EV_LTD" = [1.7662975472852054, 1.613755614526594, 0.17087579756306276] -"HYUNDAI_IONIQ_PHEV" = [3.2928700076638537, 2.1193482926455656, 0.12463700961468778] -"HYUNDAI_IONIQ_PHEV_2019" = [2.970807902012267, 1.6312321830002083, 0.1088964990357482] -"HYUNDAI_KONA_EV" = [3.078814714619148, 2.307336938253934, 0.12359762054065548] -"HYUNDAI_PALISADE" = [2.544642494803999, 1.8721703683337008, 0.1301424599248651] -"HYUNDAI_SANTA_FE" = [3.0787027729757632, 2.6173437483495565, 0.1207019341823945] -"HYUNDAI_SANTA_FE_HEV_2022" = [3.501877602644835, 2.729064118456137, 0.10384068104538963] -"HYUNDAI_SANTA_FE_PHEV_2022" = [1.6953050513611045, 1.5837614296206861, 0.12672855941458458] -"HYUNDAI_SONATA_LF" = [2.2200457811703953, 1.2967330275895228, 0.14039920986586393] -"HYUNDAI_SONATA" = [2.9638737459977467, 2.1259108157250735, 0.07813665616927593] -"HYUNDAI_SONATA_HYBRID" = [2.8990264092395734, 2.061410192222139, 0.0899805488717382] -"HYUNDAI_TUCSON_4TH_GEN" = [2.960174, 2.860284, 0.108745] -"HYUNDAI_SANTAFE_MX5" = [3.2, 3.0, 0.05] -"HYUNDAI_SANTAFE_MX5_HEV" = [3.2, 3.0, 0.05] -"JEEP_GRAND_CHEROKEE_2019" = [2.30972, 1.289689569171081, 0.117048] -"JEEP_GRAND_CHEROKEE" = [2.27116, 1.4057367824262523, 0.11725947414922003] -"KIA_EV6" = [3.2, 2.093457, 0.005] -"KIA_EV6_PE" = [3.2, 2.093457, 0.005] -"KIA_K5_2021" = [2.405339728085138, 1.460032270828705, 0.11650989850813716] -"KIA_K5_DL3_24" = [2.5, 2.5, 0.1] -"KIA_K5_DL3_HEV_24" = [2.5, 2.5, 0.1] -"KIA_NIRO_EV" = [2.9215954981365337, 2.1500583840260044, 0.09236802474810267] -"KIA_SORENTO" = [2.464854685101844, 1.5335274218367956, 0.12056170567599558] -"KIA_STINGER" = [2.7499043387418967, 1.849652021986449, 0.12048334239559202] -"KIA_EV9" = [1.75, 1.75, 0.15] -"KIA_EV3" = [3.2, 2.093457, 0.005] -"LEXUS_ES_TSS2" = [2.0357564999999997, 1.999082295195227, 0.101533] -"LEXUS_NX" = [2.3525924753753613, 1.9731412277641067, 0.15168101064205927] -"LEXUS_NX_TSS2" = [2.4331999786982936, 2.1045680431705414, 0.14099899317761067] -"LEXUS_RX" = [1.6430539050086406, 1.181960058934143, 0.19768806040843034] -"LEXUS_RX_TSS2" = [1.5375561442049257, 1.343166476215164, 0.1931062001527557] -"MAZDA_CX9_2021" = [1.7601682915983443, 1.0889677335154337, 0.17713792194297195] -"SKODA_SUPERB_MK3" = [1.166437404652981, 1.1686163012668165, 0.12194533036948708] -"SUBARU_FORESTER" = [3.6617001649776793, 2.342197172531713, 0.11075960785398745] -"SUBARU_IMPREZA" = [1.0670704910352047, 0.8234374840709592, 0.20986563268614938] -"SUBARU_IMPREZA_2020" = [2.6068223389108303, 2.134872342760203, 0.15261513193561627] -"TOYOTA_AVALON" = [2.5185770183845646, 1.7153346784214922, 0.10603968787111022] -"TOYOTA_AVALON_2019" = [1.7036141952825095, 1.239619084240008, 0.08459830394899492] -"TOYOTA_AVALON_TSS2" = [2.3154403649717357, 2.7777922854327124, 0.11453999639164605] -"TOYOTA_CHR" = [1.5591084333664578, 1.271271459066948, 0.20259087058453193] -"TOYOTA_CHR_TSS2" = [1.7678810166088303, 1.3742176337919942, 0.2319674583741509] -"TOYOTA_CAMRY" = [2.0568162685952505, 1.7576185169559122, 0.108878753] -"TOYOTA_CAMRY_TSS2" = [2.3548324999999997, 2.368900128946771, 0.118436] -"TOYOTA_COROLLA" = [3.117154369115421, 1.8438132575043773, 0.12289685869250652] -"TOYOTA_COROLLA_TSS2" = [1.991132339206426, 1.868866242720403, 0.19570063298031432] -"TOYOTA_HIGHLANDER" = [1.8108348718624456, 1.6348421600679828, 0.15972686105120398] -"TOYOTA_HIGHLANDER_TSS2" = [1.9617570834136164, 1.8611643317268927, 0.14519673256119725] -"TOYOTA_MIRAI" = [2.506899832157829, 1.7417213930750164, 0.20182618449440565] -"TOYOTA_PRIUS" = [1.60, 1.5023147650693636, 0.151515] -"TOYOTA_PRIUS_TSS2" = [1.972600, 1.9104337425537743, 0.170968] -"TOYOTA_RAV4" = [2.085695074355425, 2.2142832316984733, 0.13339165270103975] -"TOYOTA_RAV4_TSS2" = [2.279239424615458, 2.087101966779332, 0.13682208413446817] -"TOYOTA_RAV4H" = [1.9796257271652042, 1.7503987331707576, 0.14628860048885406] -"TOYOTA_RAV4_TSS2_2022" = [2.241883248393209, 1.9304407208090029, 0.112174] -"TOYOTA_SIENNA" = [1.689726, 1.3208264576110418, 0.140456] -"TOYOTA_YARIS" = [2.22984, 1.86145, 0.168189] -"VOLKSWAGEN_ARTEON_MK1" = [1.45136518053819, 1.3639364049316804, 0.23806361745695032] -"VOLKSWAGEN_ATLAS_MK1" = [1.4677006726964945, 1.6733266634075656, 0.12959584092073367] -"VOLKSWAGEN_GOLF_MK7" = [1.3750394140491293, 1.5814743077200641, 0.2018321939386586] -"VOLKSWAGEN_JETTA_MK7" = [1.2271623034089392, 1.216955117387, 0.19437384688370712] -"VOLKSWAGEN_PASSAT_MK8" = [1.3432120736752917, 1.7087275587362314, 0.19444383787326647] -"VOLKSWAGEN_TIGUAN_MK2" = [0.9711965500094828, 1.0001565939459098, 0.1465626137072916] diff --git a/opendbc_repo/opendbc/car/torque_data/substitute.toml b/opendbc_repo/opendbc/car/torque_data/substitute.toml deleted file mode 100644 index ad4dddff94..0000000000 --- a/opendbc_repo/opendbc/car/torque_data/substitute.toml +++ /dev/null @@ -1,100 +0,0 @@ -legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] -"MAZDA_3" = "MAZDA_CX9_2021" -"MAZDA_6" = "MAZDA_CX9_2021" -"MAZDA_CX5" = "MAZDA_CX9_2021" -"MAZDA_CX5_2022" = "MAZDA_CX9_2021" -"MAZDA_CX9" = "MAZDA_CX9_2021" - -"DODGE_DURANGO" = "CHRYSLER_PACIFICA_2020" - -"TOYOTA_ALPHARD_TSS2" = "TOYOTA_SIENNA" -"TOYOTA_PRIUS_V" = "TOYOTA_PRIUS" -"TOYOTA_RAV4_PRIME" = "TOYOTA_RAV4_TSS2" -"TOYOTA_SIENNA_4TH_GEN" = "TOYOTA_RAV4_TSS2" -"LEXUS_IS" = "LEXUS_NX" -"LEXUS_CTH" = "LEXUS_NX" -"LEXUS_ES" = "TOYOTA_CAMRY" -"LEXUS_RC" = "LEXUS_NX_TSS2" -"LEXUS_LC_TSS2" = "LEXUS_NX_TSS2" - -"KIA_OPTIMA_G4" = "HYUNDAI_SONATA" -"KIA_OPTIMA_G4_FL" = "HYUNDAI_SONATA" -"KIA_OPTIMA_H" = "HYUNDAI_SONATA" -"KIA_OPTIMA_H_G4_FL" = "HYUNDAI_SONATA" -"KIA_FORTE" = "HYUNDAI_SONATA" -"KIA_CEED" = "HYUNDAI_SONATA" -"KIA_SELTOS" = "HYUNDAI_SONATA" -"KIA_NIRO_PHEV" = "KIA_NIRO_EV" -"KIA_NIRO_PHEV_2022" = "KIA_NIRO_EV" -"KIA_NIRO_HEV_2021" = "KIA_NIRO_EV" -"HYUNDAI_VELOSTER" = "HYUNDAI_SONATA_LF" -"HYUNDAI_KONA" = "HYUNDAI_KONA_EV" -"HYUNDAI_KONA_2022" = "HYUNDAI_KONA_EV" -"HYUNDAI_KONA_HEV" = "HYUNDAI_KONA_EV" -"HYUNDAI_KONA_EV_2022" = "HYUNDAI_KONA_EV" -"HYUNDAI_IONIQ" = "HYUNDAI_IONIQ_PHEV_2019" -"HYUNDAI_IONIQ_HEV_2022" = "HYUNDAI_IONIQ_PHEV_2019" -"HYUNDAI_IONIQ_EV_2020" = "HYUNDAI_IONIQ_PHEV_2019" -"HYUNDAI_ELANTRA" = "HYUNDAI_SONATA_LF" -"HYUNDAI_ELANTRA_GT_I30" = "HYUNDAI_SONATA_LF" -"HYUNDAI_ELANTRA_HEV_2021" = "HYUNDAI_SONATA" -"HYUNDAI_TUCSON" = "HYUNDAI_SANTA_FE" -"HYUNDAI_SANTA_FE_2022" = "HYUNDAI_SANTA_FE_HEV_2022" -"KIA_K5_HEV_2020" = "KIA_K5_2021" -"KIA_STINGER_2022" = "KIA_STINGER" -"GENESIS_G90" = "GENESIS_G70" -"GENESIS_G80" = "GENESIS_G70" -"GENESIS_G70_2020" = "HYUNDAI_SONATA" -"HYUNDAI_SONATA_2024" = "HYUNDAI_SONATA" - -"HONDA_FREED" = "HONDA_ODYSSEY" -"HONDA_CRV_EU" = "HONDA_CRV" -"HONDA_CIVIC_BOSCH_DIESEL" = "HONDA_CIVIC_BOSCH" -"HONDA_E" = "HONDA_CIVIC_BOSCH" -"HONDA_ODYSSEY_CHN" = "HONDA_ODYSSEY" - -"BUICK_LACROSSE" = "CHEVROLET_VOLT" -"BUICK_REGAL" = "CHEVROLET_VOLT" -"CADILLAC_ESCALADE_ESV" = "CHEVROLET_VOLT" -"CADILLAC_ATS" = "CHEVROLET_VOLT" -"CHEVROLET_MALIBU" = "CHEVROLET_VOLT" -"HOLDEN_ASTRA" = "CHEVROLET_VOLT" -"CHEVROLET_VOLT_CC" = "CHEVROLET_VOLT" -"CHEVROLET_BOLT_CC" = "CHEVROLET_BOLT_EUV" -"CHEVROLET_BOLT_2017" = "CHEVROLET_BOLT_EUV" -"CHEVROLET_BOLT_2018" = "CHEVROLET_BOLT_EUV" -"CHEVROLET_EQUINOX_CC" = "CHEVROLET_EQUINOX" -"CHEVROLET_SUBURBAN" = "CHEVROLET_SILVERADO" -"CHEVROLET_SUBURBAN_CC" = "CHEVROLET_SILVERADO" -"CHEVROLET_TRAX_2024" = "CHEVROLET_VOLT" -"CADILLAC_CT6_CC" = "CHEVROLET_VOLT" -"CADILLAC_CT6_ACC" = "CHEVROLET_VOLT" -"CHEVROLET_TRAILBLAZER_CC" = "CHEVROLET_TRAILBLAZER" -"CADILLAC_XT5_CC" = "GMC_ACADIA" - -"SKODA_FABIA_MK4" = "VOLKSWAGEN_GOLF_MK7" -"SKODA_OCTAVIA_MK3" = "SKODA_SUPERB_MK3" -"SKODA_KODIAQ_MK1" = "SKODA_SUPERB_MK3" -"SKODA_KAROQ_MK1" = "SKODA_SUPERB_MK3" -"SKODA_KAMIQ_MK1" = "SKODA_SUPERB_MK3" -"VOLKSWAGEN_CRAFTER_MK2" = "VOLKSWAGEN_TIGUAN_MK2" -"VOLKSWAGEN_TROC_MK1" = "VOLKSWAGEN_TIGUAN_MK2" -"VOLKSWAGEN_TCROSS_MK1" = "VOLKSWAGEN_TIGUAN_MK2" -"VOLKSWAGEN_TOURAN_MK2" = "VOLKSWAGEN_TIGUAN_MK2" -"VOLKSWAGEN_TRANSPORTER_T61" = "VOLKSWAGEN_TIGUAN_MK2" -"AUDI_Q2_MK1" = "VOLKSWAGEN_TIGUAN_MK2" -"VOLKSWAGEN_TAOS_MK1" = "VOLKSWAGEN_TIGUAN_MK2" -"VOLKSWAGEN_POLO_MK6" = "VOLKSWAGEN_GOLF_MK7" -"SEAT_ATECA_MK1" = "VOLKSWAGEN_GOLF_MK7" -"VOLKSWAGEN_JETTA_MK6" = "VOLKSWAGEN_PASSAT_NMS" - -"SUBARU_CROSSTREK_HYBRID" = "SUBARU_IMPREZA_2020" -"SUBARU_FORESTER_HYBRID" = "SUBARU_IMPREZA_2020" -"SUBARU_LEGACY" = "SUBARU_OUTBACK" - -# Old subarus don't have much data guessing it's like low torque impreza" -"SUBARU_OUTBACK_PREGLOBAL_2018" = "SUBARU_IMPREZA" -"SUBARU_OUTBACK_PREGLOBAL" = "SUBARU_IMPREZA" -"SUBARU_FORESTER_PREGLOBAL" = "SUBARU_IMPREZA" -"SUBARU_LEGACY_PREGLOBAL" = "SUBARU_IMPREZA" -"SUBARU_ASCENT" = "SUBARU_FORESTER" diff --git a/opendbc_repo/opendbc/car/toyota/__init__.py b/opendbc_repo/opendbc/car/toyota/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/toyota/carcontroller.py b/opendbc_repo/opendbc/car/toyota/carcontroller.py deleted file mode 100644 index aee8e1315e..0000000000 --- a/opendbc_repo/opendbc/car/toyota/carcontroller.py +++ /dev/null @@ -1,299 +0,0 @@ -import math -import numpy as np -from opendbc.car import Bus, apply_meas_steer_torque_limits, apply_std_steer_angle_limits, common_fault_avoidance, \ - make_tester_present_msg, rate_limit, structs, ACCELERATION_DUE_TO_GRAVITY, DT_CTRL -from opendbc.car.can_definitions import CanData -from opendbc.car.carlog import carlog -from opendbc.car.common.filter_simple import FirstOrderFilter -from opendbc.car.common.pid import PIDController -from opendbc.car.secoc import add_mac, build_sync_mac -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.toyota import toyotacan -from opendbc.car.toyota.values import CAR, STATIC_DSU_MSGS, NO_STOP_TIMER_CAR, TSS2_CAR, \ - CarControllerParams, ToyotaFlags, \ - UNSUPPORTED_DSU_CAR -from opendbc.can import CANPacker -from openpilot.common.params import Params - -Ecu = structs.CarParams.Ecu -LongCtrlState = structs.CarControl.Actuators.LongControlState -SteerControlType = structs.CarParams.SteerControlType -VisualAlert = structs.CarControl.HUDControl.VisualAlert - -# The up limit allows the brakes/gas to unwind quickly leaving a stop, -# the down limit roughly matches the rate of ACCEL_NET, reducing PCM compensation windup -ACCEL_WINDUP_LIMIT = 4.0 * DT_CTRL * 3 # m/s^2 / frame -ACCEL_WINDDOWN_LIMIT = -4.0 * DT_CTRL * 3 # m/s^2 / frame -ACCEL_PID_UNWIND = 0.03 * DT_CTRL * 3 # m/s^2 / frame - -# LKA limits -# EPS faults if you apply torque while the steering rate is above 100 deg/s for too long -MAX_STEER_RATE = 100 # deg/s -MAX_STEER_RATE_FRAMES = 18 # tx control frames needed before torque can be cut - -# EPS allows user torque above threshold for 50 frames before permanently faulting -MAX_USER_TORQUE = 500 - - -def get_long_tune(CP, params): - if CP.carFingerprint in TSS2_CAR: - kiBP = [2., 5.] - kiV = [0.5, 0.25] - else: - kiBP = [0., 5., 35.] - kiV = [3.6, 2.4, 1.5] - - return PIDController(0.0, (kiBP, kiV), k_f=1.0, - pos_limit=params.ACCEL_MAX, neg_limit=params.ACCEL_MIN, - rate=1 / (DT_CTRL * 3)) - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.params = CarControllerParams(self.CP) - self.last_torque = 0 - self.last_angle = 0 - self.alert_active = False - self.last_standstill = False - self.standstill_req = False - self.permit_braking = True - self.steer_rate_counter = 0 - self.distance_button = 0 - - # *** start long control state *** - self.long_pid = get_long_tune(self.CP, self.params) - self.aego = FirstOrderFilter(0.0, 0.25, DT_CTRL * 3) - self.pitch = FirstOrderFilter(0, 0.5, DT_CTRL) - - self.accel = 0 - self.prev_accel = 0 - # *** end long control state *** - - self.packer = CANPacker(dbc_names[Bus.pt]) - - self.secoc_lka_message_counter = 0 - self.secoc_lta_message_counter = 0 - self.secoc_prev_reset_counter = 0 - - def update(self, CC, CS, now_nanos): - actuators = CC.actuators - stopping = actuators.longControlState == LongCtrlState.stopping - hud_control = CC.hudControl - pcm_cancel_cmd = CC.cruiseControl.cancel - lat_active = CC.latActive and abs(CS.out.steeringTorque) < MAX_USER_TORQUE - - if len(CC.orientationNED) == 3: - self.pitch.update(CC.orientationNED[1]) - - # *** control msgs *** - can_sends = [] - - params = Params() - steerMax = params.get_int("CustomSteerMax") - steerDeltaUp = params.get_int("CustomSteerDeltaUp") - steerDeltaDown = params.get_int("CustomSteerDeltaDown") - self.params.STEER_MAX = self.params.STEER_MAX if steerMax <= 0 else steerMax - self.params.STEER_DELTA_UP = self.params.STEER_DELTA_UP if steerDeltaUp <= 0 else steerDeltaUp - self.params.STEER_DELTA_DOWN = self.params.STEER_DELTA_DOWN if steerDeltaDown <= 0 else steerDeltaDown - - # *** handle secoc reset counter increase *** - if self.CP.flags & ToyotaFlags.SECOC.value: - if CS.secoc_synchronization['RESET_CNT'] != self.secoc_prev_reset_counter: - self.secoc_lka_message_counter = 0 - self.secoc_lta_message_counter = 0 - self.secoc_prev_reset_counter = CS.secoc_synchronization['RESET_CNT'] - - expected_mac = build_sync_mac(self.secoc_key, int(CS.secoc_synchronization['TRIP_CNT']), int(CS.secoc_synchronization['RESET_CNT'])) - if int(CS.secoc_synchronization['AUTHENTICATOR']) != expected_mac: - carlog.error("SecOC synchronization MAC mismatch, wrong key?") - - # *** steer torque *** - new_torque = int(round(actuators.torque * self.params.STEER_MAX)) - apply_torque = apply_meas_steer_torque_limits(new_torque, self.last_torque, CS.out.steeringTorqueEps, self.params) - - # >100 degree/sec steering fault prevention - self.steer_rate_counter, apply_steer_req = common_fault_avoidance(abs(CS.out.steeringRateDeg) >= MAX_STEER_RATE, lat_active, - self.steer_rate_counter, MAX_STEER_RATE_FRAMES) - - if not lat_active: - apply_torque = 0 - - # *** steer angle *** - if self.CP.steerControlType == SteerControlType.angle: - # If using LTA control, disable LKA and set steering angle command - apply_torque = 0 - apply_steer_req = False - if self.frame % 2 == 0: - # EPS uses the torque sensor angle to control with, offset to compensate - apply_angle = actuators.steeringAngleDeg + CS.out.steeringAngleOffsetDeg - - # Angular rate limit based on speed - self.last_angle = apply_std_steer_angle_limits(apply_angle, self.last_angle, CS.out.vEgoRaw, - CS.out.steeringAngleDeg + CS.out.steeringAngleOffsetDeg, - CC.latActive, self.params.ANGLE_LIMITS) - - self.last_torque = apply_torque - - # toyota can trace shows STEERING_LKA at 42Hz, with counter adding alternatively 1 and 2; - # sending it at 100Hz seem to allow a higher rate limit, as the rate limit seems imposed - # on consecutive messages - steer_command = toyotacan.create_steer_command(self.packer, apply_torque, apply_steer_req) - if self.CP.flags & ToyotaFlags.SECOC.value: - # TODO: check if this slow and needs to be done by the CANPacker - steer_command = add_mac(self.secoc_key, - int(CS.secoc_synchronization['TRIP_CNT']), - int(CS.secoc_synchronization['RESET_CNT']), - self.secoc_lka_message_counter, - steer_command) - self.secoc_lka_message_counter += 1 - can_sends.append(steer_command) - - # STEERING_LTA does not seem to allow more rate by sending faster, and may wind up easier - if self.frame % 2 == 0 and self.CP.carFingerprint in TSS2_CAR: - lta_active = lat_active and self.CP.steerControlType == SteerControlType.angle - # cut steering torque with TORQUE_WIND_DOWN when either EPS torque or driver torque is above - # the threshold, to limit max lateral acceleration and for driver torque blending respectively. - full_torque_condition = (abs(CS.out.steeringTorqueEps) < self.params.STEER_MAX and - abs(CS.out.steeringTorque) < self.params.MAX_LTA_DRIVER_TORQUE_ALLOWANCE) - - # TORQUE_WIND_DOWN at 0 ramps down torque at roughly the max down rate of 1500 units/sec - torque_wind_down = 100 if lta_active and full_torque_condition else 0 - can_sends.append(toyotacan.create_lta_steer_command(self.packer, self.CP.steerControlType, self.last_angle, - lta_active, self.frame // 2, torque_wind_down)) - - if self.CP.flags & ToyotaFlags.SECOC.value: - lta_steer_2 = toyotacan.create_lta_steer_command_2(self.packer, self.frame // 2) - lta_steer_2 = add_mac(self.secoc_key, - int(CS.secoc_synchronization['TRIP_CNT']), - int(CS.secoc_synchronization['RESET_CNT']), - self.secoc_lta_message_counter, - lta_steer_2) - self.secoc_lta_message_counter += 1 - can_sends.append(lta_steer_2) - - # *** gas and brake *** - - # on entering standstill, send standstill request - if CS.out.standstill and not self.last_standstill and (self.CP.carFingerprint not in NO_STOP_TIMER_CAR): - self.standstill_req = True - if CS.pcm_acc_status != 8: - # pcm entered standstill or it's disabled - self.standstill_req = False - - self.last_standstill = CS.out.standstill - - # handle UI messages - fcw_alert = hud_control.visualAlert == VisualAlert.fcw - steer_alert = hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw) - lead = hud_control.leadVisible or CS.out.vEgo < 12. # at low speed we always assume the lead is present so ACC can be engaged - - if self.CP.openpilotLongitudinalControl: - if self.frame % 3 == 0: - # Press distance button until we are at the correct bar length. Only change while enabled to avoid skipping startup popup - if self.frame % 6 == 0 and self.CP.openpilotLongitudinalControl: - desired_distance = 4 - hud_control.leadDistanceBars - if CS.out.cruiseState.enabled and CS.pcm_follow_distance != desired_distance: - self.distance_button = not self.distance_button - else: - self.distance_button = 0 - - # internal PCM gas command can get stuck unwinding from negative accel so we apply a generous rate limit - pcm_accel_cmd = actuators.accel - if CC.longActive: - pcm_accel_cmd = rate_limit(pcm_accel_cmd, self.prev_accel, ACCEL_WINDDOWN_LIMIT, ACCEL_WINDUP_LIMIT) - self.prev_accel = pcm_accel_cmd - - # calculate amount of acceleration PCM should apply to reach target, given pitch. - # clipped to only include downhill angles, avoids erroneously unsetting PERMIT_BRAKING when stopping on uphills - accel_due_to_pitch = math.sin(min(self.pitch.x, 0.0)) * ACCELERATION_DUE_TO_GRAVITY - # TODO: on uphills this sometimes sets PERMIT_BRAKING low not considering the creep force - net_acceleration_request = pcm_accel_cmd + accel_due_to_pitch - - # GVC does not overshoot ego acceleration when starting from stop, but still has a similar delay - if not self.CP.flags & ToyotaFlags.SECOC.value: - a_ego_blended = float(np.interp(CS.out.vEgo, [1.0, 2.0], [CS.gvc, CS.out.aEgo])) - else: - a_ego_blended = CS.out.aEgo - - # wind down integral when approaching target for step changes and smooth ramps to reduce overshoot - prev_aego = self.aego.x - self.aego.update(a_ego_blended) - j_ego = (self.aego.x - prev_aego) / (DT_CTRL * 3) - - future_t = float(np.interp(CS.out.vEgo, [2., 5.], [0.25, 0.5])) - a_ego_future = a_ego_blended + j_ego * future_t - - if CC.longActive: - # constantly slowly unwind integral to recover from large temporary errors - self.long_pid.i -= ACCEL_PID_UNWIND * float(np.sign(self.long_pid.i)) - - error_future = pcm_accel_cmd - a_ego_future - pcm_accel_cmd = self.long_pid.update(error_future, - speed=CS.out.vEgo, - feedforward=pcm_accel_cmd, - freeze_integrator=actuators.longControlState != LongCtrlState.pid) - else: - self.long_pid.reset() - - # Along with rate limiting positive jerk above, this greatly improves gas response time - # Consider the net acceleration request that the PCM should be applying (pitch included) - net_acceleration_request_min = min(actuators.accel + accel_due_to_pitch, net_acceleration_request) - if net_acceleration_request_min < 0.2 or stopping or not CC.longActive: - self.permit_braking = True - elif net_acceleration_request_min > 0.3: - self.permit_braking = False - - pcm_accel_cmd = float(np.clip(pcm_accel_cmd, self.params.ACCEL_MIN, self.params.ACCEL_MAX)) - - can_sends.append(toyotacan.create_accel_command(self.packer, pcm_accel_cmd, pcm_cancel_cmd, self.permit_braking, self.standstill_req, lead, - CS.acc_type, fcw_alert, self.distance_button)) - self.accel = pcm_accel_cmd - - else: - # we can spam can to cancel the system even if we are using lat only control - if pcm_cancel_cmd: - if self.CP.carFingerprint in UNSUPPORTED_DSU_CAR: - can_sends.append(toyotacan.create_acc_cancel_command(self.packer)) - else: - can_sends.append(toyotacan.create_accel_command(self.packer, 0, pcm_cancel_cmd, True, False, lead, CS.acc_type, False, self.distance_button)) - - # *** hud ui *** - if self.CP.carFingerprint != CAR.TOYOTA_PRIUS_V: - # ui mesg is at 1Hz but we send asap if: - # - there is something to display - # - there is something to stop displaying - send_ui = False - if ((fcw_alert or steer_alert) and not self.alert_active) or \ - (not (fcw_alert or steer_alert) and self.alert_active): - send_ui = True - self.alert_active = not self.alert_active - elif pcm_cancel_cmd: - # forcing the pcm to disengage causes a bad fault sound so play a good sound instead - send_ui = True - - if self.frame % 20 == 0 or send_ui: - can_sends.append(toyotacan.create_ui_command(self.packer, steer_alert, pcm_cancel_cmd, hud_control.leftLaneVisible, - hud_control.rightLaneVisible, hud_control.leftLaneDepart, - hud_control.rightLaneDepart, CC.enabled, CS.lkas_hud)) - - if (self.frame % 100 == 0 or send_ui) and (self.CP.enableDsu or self.CP.flags & ToyotaFlags.DISABLE_RADAR.value): - can_sends.append(toyotacan.create_fcw_command(self.packer, fcw_alert)) - - # *** static msgs *** - for addr, cars, bus, fr_step, vl in STATIC_DSU_MSGS: - if self.frame % fr_step == 0 and self.CP.enableDsu and self.CP.carFingerprint in cars: - can_sends.append(CanData(addr, vl, bus)) - - # keep radar disabled - if self.frame % 20 == 0 and self.CP.flags & ToyotaFlags.DISABLE_RADAR.value: - can_sends.append(make_tester_present_msg(0x750, 0, 0xF)) - - new_actuators = actuators.as_builder() - new_actuators.torque = apply_torque / self.params.STEER_MAX - new_actuators.torqueOutputCan = apply_torque - new_actuators.steeringAngleDeg = self.last_angle - new_actuators.accel = self.accel - - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/toyota/carstate.py b/opendbc_repo/opendbc/car/toyota/carstate.py deleted file mode 100644 index 262033d078..0000000000 --- a/opendbc_repo/opendbc/car/toyota/carstate.py +++ /dev/null @@ -1,204 +0,0 @@ -import copy -import numpy as np - -from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus, DT_CTRL, create_button_events, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.common.filter_simple import FirstOrderFilter -from opendbc.car.interfaces import CarStateBase -from opendbc.car.toyota.values import ToyotaFlags, CAR, DBC, STEER_THRESHOLD, NO_STOP_TIMER_CAR, \ - TSS2_CAR, RADAR_ACC_CAR, EPS_SCALE, UNSUPPORTED_DSU_CAR - -ButtonType = structs.CarState.ButtonEvent.Type -SteerControlType = structs.CarParams.SteerControlType - -# These steering fault definitions seem to be common across LKA (torque) and LTA (angle): -# - high steer rate fault: goes to 21 or 25 for 1 frame, then 9 for 2 seconds -# - lka/lta msg drop out: goes to 9 then 11 for a combined total of 2 seconds, then 3. -# if using the other control command, goes directly to 3 after 1.5 seconds -# - initializing: LTA can report 0 as long as STEER_TORQUE_SENSOR->STEER_ANGLE_INITIALIZING is 1, -# and is a catch-all for LKA -TEMP_STEER_FAULTS = (0, 9, 11, 21, 25) -# - lka/lta msg drop out: 3 (recoverable) -# - prolonged high driver torque: 17 (permanent) -PERM_STEER_FAULTS = (3, 17) - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - self.eps_torque_scale = EPS_SCALE[CP.carFingerprint] / 100. - self.cluster_speed_hyst_gap = CV.KPH_TO_MS / 2. - self.cluster_min_speed = CV.KPH_TO_MS / 2. - - if CP.flags & ToyotaFlags.SECOC.value: - self.shifter_values = can_define.dv["GEAR_PACKET_HYBRID"]["GEAR"] - else: - self.shifter_values = can_define.dv["GEAR_PACKET"]["GEAR"] - - # On cars with cp.vl["STEER_TORQUE_SENSOR"]["STEER_ANGLE"] - # the signal is zeroed to where the steering angle is at start. - # Need to apply an offset as soon as the steering angle measurements are both received - self.accurate_steer_angle_seen = False - self.angle_offset = FirstOrderFilter(None, 60.0, DT_CTRL, initialized=False) - - self.distance_button = 0 - - self.pcm_follow_distance = 0 - - self.acc_type = 1 - self.lkas_hud = {} - self.gvc = 0.0 - self.secoc_synchronization = None - - def update(self, can_parsers) -> structs.CarState: - cp = can_parsers[Bus.pt] - cp_cam = can_parsers[Bus.cam] - - ret = structs.CarState() - cp_acc = cp_cam if self.CP.carFingerprint in (TSS2_CAR - RADAR_ACC_CAR) else cp - - if not self.CP.flags & ToyotaFlags.SECOC.value: - self.gvc = cp.vl["VSC1S07"]["GVC"] - - ret.doorOpen = any([cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_FL"], cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_FR"], - cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_RL"], cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_RR"]]) - ret.seatbeltUnlatched = cp.vl["BODY_CONTROL_STATE"]["SEATBELT_DRIVER_UNLATCHED"] != 0 - ret.parkingBrake = cp.vl["BODY_CONTROL_STATE"]["PARKING_BRAKE"] == 1 - - ret.brakePressed = cp.vl["BRAKE_MODULE"]["BRAKE_PRESSED"] != 0 - ret.brakeHoldActive = cp.vl["ESP_CONTROL"]["BRAKE_HOLD_ACTIVE"] == 1 - - if self.CP.flags & ToyotaFlags.SECOC.value: - self.secoc_synchronization = copy.copy(cp.vl["SECOC_SYNCHRONIZATION"]) - ret.gas = cp.vl["GAS_PEDAL"]["GAS_PEDAL_USER"] - ret.gasPressed = cp.vl["GAS_PEDAL"]["GAS_PEDAL_USER"] > 0 - can_gear = int(cp.vl["GEAR_PACKET_HYBRID"]["GEAR"]) - else: - ret.gasPressed = cp.vl["PCM_CRUISE"]["GAS_RELEASED"] == 0 # TODO: these also have GAS_PEDAL, come back and unify - can_gear = int(cp.vl["GEAR_PACKET"]["GEAR"]) - if not self.CP.enableDsu and not self.CP.flags & ToyotaFlags.DISABLE_RADAR.value: - ret.stockAeb = bool(cp_acc.vl["PRE_COLLISION"]["PRECOLLISION_ACTIVE"] and cp_acc.vl["PRE_COLLISION"]["FORCE"] < -1e-5) - if self.CP.carFingerprint != CAR.TOYOTA_MIRAI: - ret.engineRpm = cp.vl["ENGINE_RPM"]["RPM"] - - ret.wheelSpeeds = self.get_wheel_speeds( - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FL"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FR"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RL"], - cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RR"], - ) - ret.vEgoRaw = float(np.mean([ret.wheelSpeeds.fl, ret.wheelSpeeds.fr, ret.wheelSpeeds.rl, ret.wheelSpeeds.rr])) - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.vEgoCluster = ret.vEgo * 1.015 # minimum of all the cars - - ret.standstill = abs(ret.vEgoRaw) < 1e-3 - - ret.steeringAngleDeg = cp.vl["STEER_ANGLE_SENSOR"]["STEER_ANGLE"] + cp.vl["STEER_ANGLE_SENSOR"]["STEER_FRACTION"] - ret.steeringRateDeg = cp.vl["STEER_ANGLE_SENSOR"]["STEER_RATE"] - torque_sensor_angle_deg = cp.vl["STEER_TORQUE_SENSOR"]["STEER_ANGLE"] - - # On some cars, the angle measurement is non-zero while initializing - if abs(torque_sensor_angle_deg) > 1e-3 and not bool(cp.vl["STEER_TORQUE_SENSOR"]["STEER_ANGLE_INITIALIZING"]): - self.accurate_steer_angle_seen = True - - if self.accurate_steer_angle_seen: - # Offset seems to be invalid for large steering angles and high angle rates - if abs(ret.steeringAngleDeg) < 90 and abs(ret.steeringRateDeg) < 100 and cp.can_valid: - self.angle_offset.update(torque_sensor_angle_deg - ret.steeringAngleDeg) - - if self.angle_offset.initialized: - ret.steeringAngleOffsetDeg = self.angle_offset.x - ret.steeringAngleDeg = torque_sensor_angle_deg - self.angle_offset.x - - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - ret.leftBlinker = cp.vl["BLINKERS_STATE"]["TURN_SIGNALS"] == 1 - ret.rightBlinker = cp.vl["BLINKERS_STATE"]["TURN_SIGNALS"] == 2 - - ret.steeringTorque = cp.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_DRIVER"] - ret.steeringTorqueEps = cp.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_EPS"] * self.eps_torque_scale - # we could use the override bit from dbc, but it's triggered at too high torque values - ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD - - # Check EPS LKA/LTA fault status - ret.steerFaultTemporary = cp.vl["EPS_STATUS"]["LKA_STATE"] in TEMP_STEER_FAULTS - ret.steerFaultPermanent = cp.vl["EPS_STATUS"]["LKA_STATE"] in PERM_STEER_FAULTS - - if self.CP.steerControlType == SteerControlType.angle: - ret.steerFaultTemporary = ret.steerFaultTemporary or cp.vl["EPS_STATUS"]["LTA_STATE"] in TEMP_STEER_FAULTS - ret.steerFaultPermanent = ret.steerFaultPermanent or cp.vl["EPS_STATUS"]["LTA_STATE"] in PERM_STEER_FAULTS - - # Lane Tracing Assist control is unavailable (EPS_STATUS->LTA_STATE=0) until - # the more accurate angle sensor signal is initialized - ret.vehicleSensorsInvalid = not self.accurate_steer_angle_seen - - if self.CP.carFingerprint in UNSUPPORTED_DSU_CAR: - # TODO: find the bit likely in DSU_CRUISE that describes an ACC fault. one may also exist in CLUTCH - ret.cruiseState.available = cp.vl["DSU_CRUISE"]["MAIN_ON"] != 0 - ret.cruiseState.speed = cp.vl["DSU_CRUISE"]["SET_SPEED"] * CV.KPH_TO_MS - cluster_set_speed = cp.vl["PCM_CRUISE_ALT"]["UI_SET_SPEED"] - else: - ret.accFaulted = cp.vl["PCM_CRUISE_2"]["ACC_FAULTED"] != 0 - ret.cruiseState.available = cp.vl["PCM_CRUISE_2"]["MAIN_ON"] != 0 - ret.cruiseState.speed = cp.vl["PCM_CRUISE_2"]["SET_SPEED"] * CV.KPH_TO_MS - cluster_set_speed = cp.vl["PCM_CRUISE_SM"]["UI_SET_SPEED"] - - # UI_SET_SPEED is always non-zero when main is on, hide until first enable - if ret.cruiseState.speed != 0: - is_metric = cp.vl["BODY_CONTROL_STATE_2"]["UNITS"] in (1, 2) - conversion_factor = CV.KPH_TO_MS if is_metric else CV.MPH_TO_MS - ret.cruiseState.speedCluster = cluster_set_speed * conversion_factor - - if self.CP.carFingerprint in TSS2_CAR and not self.CP.flags & ToyotaFlags.DISABLE_RADAR.value: - self.acc_type = cp_acc.vl["ACC_CONTROL"]["ACC_TYPE"] - ret.stockFcw = bool(cp_acc.vl["PCS_HUD"]["FCW"]) - - # some TSS2 cars have low speed lockout permanently set, so ignore on those cars - # these cars are identified by an ACC_TYPE value of 2. - # TODO: it is possible to avoid the lockout and gain stop and go if you - # send your own ACC_CONTROL msg on startup with ACC_TYPE set to 1 - if (self.CP.carFingerprint not in TSS2_CAR and self.CP.carFingerprint not in UNSUPPORTED_DSU_CAR) or \ - (self.CP.carFingerprint in TSS2_CAR and self.acc_type == 1): - if self.CP.openpilotLongitudinalControl: - ret.accFaulted = ret.accFaulted or cp.vl["PCM_CRUISE_2"]["LOW_SPEED_LOCKOUT"] == 2 - - self.pcm_acc_status = cp.vl["PCM_CRUISE"]["CRUISE_STATE"] - if self.CP.carFingerprint not in (NO_STOP_TIMER_CAR - TSS2_CAR): - # ignore standstill state in certain vehicles, since pcm allows to restart with just an acceleration request - ret.cruiseState.standstill = self.pcm_acc_status == 7 - ret.cruiseState.enabled = bool(cp.vl["PCM_CRUISE"]["CRUISE_ACTIVE"]) - ret.cruiseState.nonAdaptive = self.pcm_acc_status in (1, 2, 3, 4, 5, 6) - - ret.genericToggle = bool(cp.vl["LIGHT_STALK"]["AUTO_HIGH_BEAM"]) - ret.espDisabled = cp.vl["ESP_CONTROL"]["TC_DISABLED"] != 0 - - if self.CP.enableBsm: - ret.leftBlindspot = (cp.vl["BSM"]["L_ADJACENT"] == 1) or (cp.vl["BSM"]["L_APPROACHING"] == 1) - ret.rightBlindspot = (cp.vl["BSM"]["R_ADJACENT"] == 1) or (cp.vl["BSM"]["R_APPROACHING"] == 1) - - if self.CP.carFingerprint != CAR.TOYOTA_PRIUS_V: - self.lkas_hud = copy.copy(cp_cam.vl["LKAS_HUD"]) - - if self.CP.carFingerprint not in UNSUPPORTED_DSU_CAR: - self.pcm_follow_distance = cp.vl["PCM_CRUISE_2"]["PCM_FOLLOW_DISTANCE"] - - if self.CP.carFingerprint in (TSS2_CAR - RADAR_ACC_CAR): - # distance button is wired to the ACC module (camera or radar) - prev_distance_button = self.distance_button - self.distance_button = cp_acc.vl["ACC_CONTROL"]["DISTANCE"] - - ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) - - return ret - - @staticmethod - def get_can_parsers(CP): - pt_messages = [ - ("BLINKERS_STATE", float('nan')), - ] - - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], pt_messages, 0), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), - } diff --git a/opendbc_repo/opendbc/car/toyota/fingerprints.py b/opendbc_repo/opendbc/car/toyota/fingerprints.py deleted file mode 100644 index 2b6e1b4741..0000000000 --- a/opendbc_repo/opendbc/car/toyota/fingerprints.py +++ /dev/null @@ -1,1803 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.toyota.values import CAR - -Ecu = CarParams.Ecu - -FW_VERSIONS = { - CAR.TOYOTA_AVALON: { - (Ecu.abs, 0x7b0, None): [ - b'F152607060\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881510701300\x00\x00\x00\x00', - b'881510705100\x00\x00\x00\x00', - b'881510705200\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B41051\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0230721100\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230721200\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702000\x00\x00\x00\x00', - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F0701100\x00\x00\x00\x00', - b'8646F0703000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_AVALON_2019: { - (Ecu.abs, 0x7b0, None): [ - b'F152607110\x00\x00\x00\x00\x00\x00', - b'F152607140\x00\x00\x00\x00\x00\x00', - b'F152607171\x00\x00\x00\x00\x00\x00', - b'F152607180\x00\x00\x00\x00\x00\x00', - b'F152641040\x00\x00\x00\x00\x00\x00', - b'F152641050\x00\x00\x00\x00\x00\x00', - b'F152641060\x00\x00\x00\x00\x00\x00', - b'F152641061\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881510703200\x00\x00\x00\x00', - b'881510704200\x00\x00\x00\x00', - b'881514107100\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B07010\x00\x00\x00\x00\x00\x00', - b'8965B41070\x00\x00\x00\x00\x00\x00', - b'8965B41080\x00\x00\x00\x00\x00\x00', - b'8965B41090\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x01896630725100\x00\x00\x00\x00', - b'\x01896630725200\x00\x00\x00\x00', - b'\x01896630725300\x00\x00\x00\x00', - b'\x01896630725400\x00\x00\x00\x00', - b'\x01896630735100\x00\x00\x00\x00', - b'\x01896630738000\x00\x00\x00\x00', - b'\x02896630724000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x02896630728000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x02896630734000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x02896630737000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F0702100\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_AVALON_TSS2: { - (Ecu.abs, 0x7b0, None): [ - b'\x01F152607240\x00\x00\x00\x00\x00\x00', - b'\x01F152607250\x00\x00\x00\x00\x00\x00', - b'\x01F152607280\x00\x00\x00\x00\x00\x00', - b'F152641080\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B41110\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x018966306Q6000\x00\x00\x00\x00', - b'\x01896630742000\x00\x00\x00\x00', - b'\x01896630743000\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F6201200\x00\x00\x00\x00', - b'\x018821F6201300\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F4104100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_CAMRY: { - (Ecu.engine, 0x700, None): [ - b'\x018966306L3100\x00\x00\x00\x00', - b'\x018966306L4200\x00\x00\x00\x00', - b'\x018966306L5200\x00\x00\x00\x00', - b'\x018966306L9000\x00\x00\x00\x00', - b'\x018966306P8000\x00\x00\x00\x00', - b'\x018966306Q3100\x00\x00\x00\x00', - b'\x018966306Q4000\x00\x00\x00\x00', - b'\x018966306Q4100\x00\x00\x00\x00', - b'\x018966306Q4200\x00\x00\x00\x00', - b'\x018966306Q6000\x00\x00\x00\x00', - b'\x018966333N1100\x00\x00\x00\x00', - b'\x018966333N4300\x00\x00\x00\x00', - b'\x018966333P3000\x00\x00\x00\x00', - b'\x018966333P3100\x00\x00\x00\x00', - b'\x018966333P3200\x00\x00\x00\x00', - b'\x018966333P4200\x00\x00\x00\x00', - b'\x018966333P4300\x00\x00\x00\x00', - b'\x018966333P4400\x00\x00\x00\x00', - b'\x018966333P4500\x00\x00\x00\x00', - b'\x018966333P4700\x00\x00\x00\x00', - b'\x018966333P4900\x00\x00\x00\x00', - b'\x018966333Q6000\x00\x00\x00\x00', - b'\x018966333Q6200\x00\x00\x00\x00', - b'\x018966333Q6300\x00\x00\x00\x00', - b'\x018966333Q6500\x00\x00\x00\x00', - b'\x018966333Q9200\x00\x00\x00\x00', - b'\x018966333W6000\x00\x00\x00\x00', - b'\x018966333X0000\x00\x00\x00\x00', - b'\x018966333X4000\x00\x00\x00\x00', - b'\x01896633T16000\x00\x00\x00\x00', - b'\x01896633TA2000\x00\x00\x00\x00', - b'\x028966306B2100\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306B2300\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306B2500\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306N8100\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306N8200\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306N8300\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306N8400\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306R5000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306R5000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966306R6000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966306R6000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966306S0000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966306S0100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966306S1100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x02333P1100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'8821F0601200 ', - b'8821F0601300 ', - b'8821F0601400 ', - b'8821F0601500 ', - b'8821F0602000 ', - b'8821F0603300 ', - b'8821F0603400 ', - b'8821F0604000 ', - b'8821F0604100 ', - b'8821F0604200 ', - b'8821F0605200 ', - b'8821F0606200 ', - b'8821F0607200 ', - b'8821F0607300 ', - b'8821F0608000 ', - b'8821F0608200 ', - b'8821F0608300 ', - b'8821F0609000 ', - b'8821F0609100 ', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152606210\x00\x00\x00\x00\x00\x00', - b'F152606230\x00\x00\x00\x00\x00\x00', - b'F152606260\x00\x00\x00\x00\x00\x00', - b'F152606270\x00\x00\x00\x00\x00\x00', - b'F152606290\x00\x00\x00\x00\x00\x00', - b'F152606410\x00\x00\x00\x00\x00\x00', - b'F152633214\x00\x00\x00\x00\x00\x00', - b'F152633540\x00\x00\x00\x00\x00\x00', - b'F152633660\x00\x00\x00\x00\x00\x00', - b'F152633712\x00\x00\x00\x00\x00\x00', - b'F152633713\x00\x00\x00\x00\x00\x00', - b'F152633A10\x00\x00\x00\x00\x00\x00', - b'F152633A20\x00\x00\x00\x00\x00\x00', - b'F152633B51\x00\x00\x00\x00\x00\x00', - b'F152633B60\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B33540\x00\x00\x00\x00\x00\x00', - b'8965B33542\x00\x00\x00\x00\x00\x00', - b'8965B33550\x00\x00\x00\x00\x00\x00', - b'8965B33551\x00\x00\x00\x00\x00\x00', - b'8965B33580\x00\x00\x00\x00\x00\x00', - b'8965B33581\x00\x00\x00\x00\x00\x00', - b'8965B33611\x00\x00\x00\x00\x00\x00', - b'8965B33621\x00\x00\x00\x00\x00\x00', - b'8965B33630\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F0601200 ', - b'8821F0601300 ', - b'8821F0601400 ', - b'8821F0601500 ', - b'8821F0602000 ', - b'8821F0603300 ', - b'8821F0603400 ', - b'8821F0604000 ', - b'8821F0604100 ', - b'8821F0604200 ', - b'8821F0605200 ', - b'8821F0606200 ', - b'8821F0607200 ', - b'8821F0607300 ', - b'8821F0608000 ', - b'8821F0608200 ', - b'8821F0608300 ', - b'8821F0609000 ', - b'8821F0609100 ', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F0601200 ', - b'8646F0601300 ', - b'8646F0601400 ', - b'8646F0603400 ', - b'8646F0603500 ', - b'8646F0604000 ', - b'8646F0604100 ', - b'8646F0605000 ', - b'8646F0606000 ', - b'8646F0606100 ', - b'8646F0607000 ', - b'8646F0607100 ', - ], - }, - CAR.TOYOTA_CAMRY_TSS2: { - (Ecu.eps, 0x7a1, None): [ - b'8965B33630\x00\x00\x00\x00\x00\x00', - b'8965B33640\x00\x00\x00\x00\x00\x00', - b'8965B33650\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F152606370\x00\x00\x00\x00\x00\x00', - b'\x01F152606390\x00\x00\x00\x00\x00\x00', - b'\x01F152606400\x00\x00\x00\x00\x00\x00', - b'\x01F152606431\x00\x00\x00\x00\x00\x00', - b'\x01F152633E11\x00\x00\x00\x00\x00\x00', - b'F152633310\x00\x00\x00\x00\x00\x00', - b'F152633D00\x00\x00\x00\x00\x00\x00', - b'F152633D60\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x018966306Q5000\x00\x00\x00\x00', - b'\x018966306Q6000\x00\x00\x00\x00', - b'\x018966306Q7000\x00\x00\x00\x00', - b'\x018966306Q9000\x00\x00\x00\x00', - b'\x018966306R3000\x00\x00\x00\x00', - b'\x018966306R8000\x00\x00\x00\x00', - b'\x018966306T0000\x00\x00\x00\x00', - b'\x018966306T3100\x00\x00\x00\x00', - b'\x018966306T3200\x00\x00\x00\x00', - b'\x018966306T4000\x00\x00\x00\x00', - b'\x018966306T4100\x00\x00\x00\x00', - b'\x018966306V1000\x00\x00\x00\x00', - b'\x018966333Z1000\x00\x00\x00\x00', - b'\x018966333Z9000\x00\x00\x00\x00', - b'\x01896633T20000\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F6201200\x00\x00\x00\x00', - b'\x018821F6201300\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F0602100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F0602200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F0602300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F3305200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F3305200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F3305300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F3305300\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F3305400\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F3305500\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_CHR: { - (Ecu.engine, 0x700, None): [ - b'\x01896631017100\x00\x00\x00\x00', - b'\x01896631017200\x00\x00\x00\x00', - b'\x01896631021100\x00\x00\x00\x00', - b'\x0189663F413100\x00\x00\x00\x00', - b'\x0189663F414100\x00\x00\x00\x00', - b'\x0189663F438000\x00\x00\x00\x00', - b'\x02896631013200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x0289663F405000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x0289663F405100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x0289663F418000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x0289663F423000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x0289663F431000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'8821F0W01000 ', - b'8821F0W01100 ', - b'8821FF401600 ', - b'8821FF401800 ', - b'8821FF402300 ', - b'8821FF402400 ', - b'8821FF404000 ', - b'8821FF404100 ', - b'8821FF405000 ', - b'8821FF405100 ', - b'8821FF406000 ', - b'8821FF407100 ', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152610012\x00\x00\x00\x00\x00\x00', - b'F152610013\x00\x00\x00\x00\x00\x00', - b'F152610014\x00\x00\x00\x00\x00\x00', - b'F152610020\x00\x00\x00\x00\x00\x00', - b'F152610040\x00\x00\x00\x00\x00\x00', - b'F152610153\x00\x00\x00\x00\x00\x00', - b'F152610190\x00\x00\x00\x00\x00\x00', - b'F152610200\x00\x00\x00\x00\x00\x00', - b'F152610210\x00\x00\x00\x00\x00\x00', - b'F152610220\x00\x00\x00\x00\x00\x00', - b'F152610230\x00\x00\x00\x00\x00\x00', - b'F1526F4034\x00\x00\x00\x00\x00\x00', - b'F1526F4044\x00\x00\x00\x00\x00\x00', - b'F1526F4073\x00\x00\x00\x00\x00\x00', - b'F1526F4121\x00\x00\x00\x00\x00\x00', - b'F1526F4122\x00\x00\x00\x00\x00\x00', - b'F1526F4190\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B10011\x00\x00\x00\x00\x00\x00', - b'8965B10020\x00\x00\x00\x00\x00\x00', - b'8965B10040\x00\x00\x00\x00\x00\x00', - b'8965B10050\x00\x00\x00\x00\x00\x00', - b'8965B10070\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0331024000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', - b'\x0331024000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - b'\x0331036000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - b'\x033F401100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203102\x00\x00\x00\x00', - b'\x033F401200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', - b'\x033F424000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', - b'\x033F424000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - b'\x033F435000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F0W01000 ', - b'8821F0W01100 ', - b'8821FF401600 ', - b'8821FF401800 ', - b'8821FF402300 ', - b'8821FF402400 ', - b'8821FF404000 ', - b'8821FF404100 ', - b'8821FF405000 ', - b'8821FF405100 ', - b'8821FF406000 ', - b'8821FF407100 ', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646FF401700 ', - b'8646FF401800 ', - b'8646FF402100 ', - b'8646FF404000 ', - b'8646FF406000 ', - b'8646FF407000 ', - b'8646FF407100 ', - ], - }, - CAR.TOYOTA_CHR_TSS2: { - (Ecu.abs, 0x7b0, None): [ - b'F152610041\x00\x00\x00\x00\x00\x00', - b'F152610260\x00\x00\x00\x00\x00\x00', - b'F1526F4270\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B10091\x00\x00\x00\x00\x00\x00', - b'8965B10092\x00\x00\x00\x00\x00\x00', - b'8965B10110\x00\x00\x00\x00\x00\x00', - b'8965B10111\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x0189663F438000\x00\x00\x00\x00', - b'\x0189663F459000\x00\x00\x00\x00', - b'\x02896631025000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x0289663F453000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0331014000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821FF410200\x00\x00\x00\x00', - b'\x018821FF410300\x00\x00\x00\x00', - b'\x018821FF410400\x00\x00\x00\x00', - b'\x018821FF410500\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646FF410200\x00\x00\x00\x008646GF408200\x00\x00\x00\x00', - b'\x028646FF411100\x00\x00\x00\x008646GF409000\x00\x00\x00\x00', - b'\x028646FF413000\x00\x00\x00\x008646GF411000\x00\x00\x00\x00', - b'\x028646FF413100\x00\x00\x00\x008646GF411100\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_COROLLA: { - (Ecu.engine, 0x7e0, None): [ - b'\x0230ZC2000\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC2100\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC2200\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC2300\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC3000\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC3100\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC3200\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZC3300\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0330ZC1200\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881510201100\x00\x00\x00\x00', - b'881510201200\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152602190\x00\x00\x00\x00\x00\x00', - b'F152602191\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B02181\x00\x00\x00\x00\x00\x00', - b'8965B02191\x00\x00\x00\x00\x00\x00', - b'8965B48150\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F0201101\x00\x00\x00\x00', - b'8646F0201200\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_COROLLA_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x01896630A22000\x00\x00\x00\x00', - b'\x01896630A42000\x00\x00\x00\x00', - b'\x01896630ZG2000\x00\x00\x00\x00', - b'\x01896630ZG5000\x00\x00\x00\x00', - b'\x01896630ZG5100\x00\x00\x00\x00', - b'\x01896630ZG5200\x00\x00\x00\x00', - b'\x01896630ZG5300\x00\x00\x00\x00', - b'\x01896630ZJ1000\x00\x00\x00\x00', - b'\x01896630ZP1000\x00\x00\x00\x00', - b'\x01896630ZP2000\x00\x00\x00\x00', - b'\x01896630ZQ5000\x00\x00\x00\x00', - b'\x01896630ZU8000\x00\x00\x00\x00', - b'\x01896630ZU9000\x00\x00\x00\x00', - b'\x01896630ZX4000\x00\x00\x00\x00', - b'\x01896630ZX7100\x00\x00\x00\x00', - b'\x018966312L8000\x00\x00\x00\x00', - b'\x018966312M0000\x00\x00\x00\x00', - b'\x018966312M9000\x00\x00\x00\x00', - b'\x018966312P9000\x00\x00\x00\x00', - b'\x018966312P9100\x00\x00\x00\x00', - b'\x018966312P9200\x00\x00\x00\x00', - b'\x018966312P9300\x00\x00\x00\x00', - b'\x018966312Q2300\x00\x00\x00\x00', - b'\x018966312Q8000\x00\x00\x00\x00', - b'\x018966312R0000\x00\x00\x00\x00', - b'\x018966312R0100\x00\x00\x00\x00', - b'\x018966312R0200\x00\x00\x00\x00', - b'\x018966312R1000\x00\x00\x00\x00', - b'\x018966312R1100\x00\x00\x00\x00', - b'\x018966312R3100\x00\x00\x00\x00', - b'\x018966312S5000\x00\x00\x00\x00', - b'\x018966312S7000\x00\x00\x00\x00', - b'\x018966312W3000\x00\x00\x00\x00', - b'\x018966312W9000\x00\x00\x00\x00', - b'\x01896637621000\x00\x00\x00\x00', - b'\x01896637623000\x00\x00\x00\x00', - b'\x01896637624000\x00\x00\x00\x00', - b'\x01896637626000\x00\x00\x00\x00', - b'\x01896637639000\x00\x00\x00\x00', - b'\x01896637643000\x00\x00\x00\x00', - b'\x01896637644000\x00\x00\x00\x00', - b'\x01896637648000\x00\x00\x00\x00', - b'\x01896637649000\x00\x00\x00\x00', - b'\x02896630A07000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630A21000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZJ5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZK8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZN8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZQ3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZR2000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZT8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZT9000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896630ZZ0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966312K6000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966312L0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966312Q3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966312Q3100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966312Q4000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x038966312L7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1205001\x00\x00\x00\x00', - b'\x038966312N1000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', - b'\x038966312T3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1205001\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0230A10000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230A11000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZN4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230ZN5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02312K4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02312U5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x03312K7000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', - b'\x03312M3000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', - b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', - b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', - b'\x03312N6100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - b'\x03312N6100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', - b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', - b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', - b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x018965B12350\x00\x00\x00\x00\x00\x00', - b'\x018965B12470\x00\x00\x00\x00\x00\x00', - b'\x018965B12490\x00\x00\x00\x00\x00\x00', - b'\x018965B12500\x00\x00\x00\x00\x00\x00', - b'\x018965B12510\x00\x00\x00\x00\x00\x00', - b'\x018965B12520\x00\x00\x00\x00\x00\x00', - b'\x018965B12530\x00\x00\x00\x00\x00\x00', - b'\x018965B1254000\x00\x00\x00\x00', - b'\x018965B1255000\x00\x00\x00\x00', - b'\x018965B1256000\x00\x00\x00\x00', - b'\x018965B1270000\x00\x00\x00\x00', - b'8965B12361\x00\x00\x00\x00\x00\x00', - b'8965B12451\x00\x00\x00\x00\x00\x00', - b'8965B16011\x00\x00\x00\x00\x00\x00', - b'8965B16101\x00\x00\x00\x00\x00\x00', - b'8965B16170\x00\x00\x00\x00\x00\x00', - b'8965B16260\x00\x00\x00\x00\x00\x00', - b'8965B76012\x00\x00\x00\x00\x00\x00', - b'8965B76050\x00\x00\x00\x00\x00\x00', - b'8965B76091\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F152602280\x00\x00\x00\x00\x00\x00', - b'\x01F152602281\x00\x00\x00\x00\x00\x00', - b'\x01F152602470\x00\x00\x00\x00\x00\x00', - b'\x01F152602560\x00\x00\x00\x00\x00\x00', - b'\x01F152602590\x00\x00\x00\x00\x00\x00', - b'\x01F152602650\x00\x00\x00\x00\x00\x00', - b'\x01F15260A010\x00\x00\x00\x00\x00\x00', - b'\x01F15260A050\x00\x00\x00\x00\x00\x00', - b'\x01F15260A070\x00\x00\x00\x00\x00\x00', - b'\x01F15260A33000\x00\x00\x00\x00', - b'\x01F152612641\x00\x00\x00\x00\x00\x00', - b'\x01F152612651\x00\x00\x00\x00\x00\x00', - b'\x01F152612862\x00\x00\x00\x00\x00\x00', - b'\x01F152612B10\x00\x00\x00\x00\x00\x00', - b'\x01F152612B51\x00\x00\x00\x00\x00\x00', - b'\x01F152612B60\x00\x00\x00\x00\x00\x00', - b'\x01F152612B61\x00\x00\x00\x00\x00\x00', - b'\x01F152612B62\x00\x00\x00\x00\x00\x00', - b'\x01F152612B70\x00\x00\x00\x00\x00\x00', - b'\x01F152612B71\x00\x00\x00\x00\x00\x00', - b'\x01F152612B81\x00\x00\x00\x00\x00\x00', - b'\x01F152612B90\x00\x00\x00\x00\x00\x00', - b'\x01F152612B91\x00\x00\x00\x00\x00\x00', - b'\x01F152612C00\x00\x00\x00\x00\x00\x00', - b'\x01F152676250\x00\x00\x00\x00\x00\x00', - b'\x01F152676350\x00\x00\x00\x00\x00\x00', - b'F152612590\x00\x00\x00\x00\x00\x00', - b'F152612691\x00\x00\x00\x00\x00\x00', - b'F152612692\x00\x00\x00\x00\x00\x00', - b'F152612700\x00\x00\x00\x00\x00\x00', - b'F152612710\x00\x00\x00\x00\x00\x00', - b'F152612790\x00\x00\x00\x00\x00\x00', - b'F152612800\x00\x00\x00\x00\x00\x00', - b'F152612820\x00\x00\x00\x00\x00\x00', - b'F152612840\x00\x00\x00\x00\x00\x00', - b'F152612842\x00\x00\x00\x00\x00\x00', - b'F152612890\x00\x00\x00\x00\x00\x00', - b'F152612A00\x00\x00\x00\x00\x00\x00', - b'F152612A10\x00\x00\x00\x00\x00\x00', - b'F152612D00\x00\x00\x00\x00\x00\x00', - b'F152616011\x00\x00\x00\x00\x00\x00', - b'F152616030\x00\x00\x00\x00\x00\x00', - b'F152616060\x00\x00\x00\x00\x00\x00', - b'F152642540\x00\x00\x00\x00\x00\x00', - b'F152676293\x00\x00\x00\x00\x00\x00', - b'F152676303\x00\x00\x00\x00\x00\x00', - b'F152676304\x00\x00\x00\x00\x00\x00', - b'F152676371\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301100\x00\x00\x00\x00', - b'\x018821F3301200\x00\x00\x00\x00', - b'\x018821F3301300\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F12010C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F12010D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F1201100\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F1201200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F1201300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F1201400\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - b'\x028646F1202000\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F1202100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F1202200\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - b'\x028646F1206000\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - b'\x028646F1601100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F1601200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F1601300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F1601500\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F4203400\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F76020C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F7603100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F7603200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F7603300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F7605100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_HIGHLANDER: { - (Ecu.engine, 0x700, None): [ - b'\x01896630E09000\x00\x00\x00\x00', - b'\x01896630E43000\x00\x00\x00\x00', - b'\x01896630E43100\x00\x00\x00\x00', - b'\x01896630E43200\x00\x00\x00\x00', - b'\x01896630E44200\x00\x00\x00\x00', - b'\x01896630E44400\x00\x00\x00\x00', - b'\x01896630E45000\x00\x00\x00\x00', - b'\x01896630E45100\x00\x00\x00\x00', - b'\x01896630E45200\x00\x00\x00\x00', - b'\x01896630E46000\x00\x00\x00\x00', - b'\x01896630E46200\x00\x00\x00\x00', - b'\x01896630E74000\x00\x00\x00\x00', - b'\x01896630E75000\x00\x00\x00\x00', - b'\x01896630E76000\x00\x00\x00\x00', - b'\x01896630E77000\x00\x00\x00\x00', - b'\x01896630E83000\x00\x00\x00\x00', - b'\x01896630E84000\x00\x00\x00\x00', - b'\x01896630E85000\x00\x00\x00\x00', - b'\x01896630E86000\x00\x00\x00\x00', - b'\x01896630E88000\x00\x00\x00\x00', - b'\x01896630EA0000\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0230E40000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230E40100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230E51000\x00\x00\x00\x00\x00\x00\x00\x0050E17000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230EA2000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0230EA2100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B48140\x00\x00\x00\x00\x00\x00', - b'8965B48150\x00\x00\x00\x00\x00\x00', - b'8965B48160\x00\x00\x00\x00\x00\x00', - b'8965B48210\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F15260E011\x00\x00\x00\x00\x00\x00', - b'F152648541\x00\x00\x00\x00\x00\x00', - b'F152648542\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881510E01100\x00\x00\x00\x00', - b'881510E01200\x00\x00\x00\x00', - b'881510E02100\x00\x00\x00\x00', - b'881510E02200\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F0E01200\x00\x00\x00\x00', - b'8646F0E01300\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_HIGHLANDER_TSS2: { - (Ecu.eps, 0x7a1, None): [ - b'8965B48241\x00\x00\x00\x00\x00\x00', - b'8965B48310\x00\x00\x00\x00\x00\x00', - b'8965B48320\x00\x00\x00\x00\x00\x00', - b'8965B48400\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15260E051\x00\x00\x00\x00\x00\x00', - b'\x01F15260E05300\x00\x00\x00\x00', - b'\x01F15260E061\x00\x00\x00\x00\x00\x00', - b'\x01F15260E110\x00\x00\x00\x00\x00\x00', - b'\x01F15260E170\x00\x00\x00\x00\x00\x00', - b'\x01F15264872300\x00\x00\x00\x00', - b'\x01F15264872400\x00\x00\x00\x00', - b'\x01F15264872500\x00\x00\x00\x00', - b'\x01F15264872600\x00\x00\x00\x00', - b'\x01F15264872700\x00\x00\x00\x00', - b'\x01F15264873500\x00\x00\x00\x00', - b'\x01F152648C6300\x00\x00\x00\x00', - b'\x01F152648J4000\x00\x00\x00\x00', - b'\x01F152648J5000\x00\x00\x00\x00', - b'\x01F152648J6000\x00\x00\x00\x00', - b'\x01F152648J7000\x00\x00\x00\x00', - b'\x01F152648L5000\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x01896630E62100\x00\x00\x00\x00', - b'\x01896630E62200\x00\x00\x00\x00', - b'\x01896630E64100\x00\x00\x00\x00', - b'\x01896630E64200\x00\x00\x00\x00', - b'\x01896630E64400\x00\x00\x00\x00', - b'\x01896630E67000\x00\x00\x00\x00', - b'\x01896630EA1000\x00\x00\x00\x00', - b'\x01896630EB1000\x00\x00\x00\x00', - b'\x01896630EB1100\x00\x00\x00\x00', - b'\x01896630EB1200\x00\x00\x00\x00', - b'\x01896630EB1300\x00\x00\x00\x00', - b'\x01896630EB2000\x00\x00\x00\x00', - b'\x01896630EB2100\x00\x00\x00\x00', - b'\x01896630EB2200\x00\x00\x00\x00', - b'\x01896630EC4000\x00\x00\x00\x00', - b'\x01896630ED9000\x00\x00\x00\x00', - b'\x01896630ED9100\x00\x00\x00\x00', - b'\x01896630EE1000\x00\x00\x00\x00', - b'\x01896630EE1100\x00\x00\x00\x00', - b'\x01896630EE4000\x00\x00\x00\x00', - b'\x01896630EE4100\x00\x00\x00\x00', - b'\x01896630EE5000\x00\x00\x00\x00', - b'\x01896630EE6000\x00\x00\x00\x00', - b'\x01896630EE7000\x00\x00\x00\x00', - b'\x01896630EF8000\x00\x00\x00\x00', - b'\x01896630EG3000\x00\x00\x00\x00', - b'\x01896630EG3100\x00\x00\x00\x00', - b'\x01896630EG5000\x00\x00\x00\x00', - b'\x01896630EG5100\x00\x00\x00\x00', - b'\x02896630E66000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896630E66100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896630EB3000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896630EB3100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896630EB3200\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301400\x00\x00\x00\x00', - b'\x018821F6201200\x00\x00\x00\x00', - b'\x018821F6201300\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F0E02100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F4803000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F4803000\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F4803200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_IS: { - (Ecu.engine, 0x700, None): [ - b'\x018966353M7000\x00\x00\x00\x00', - b'\x018966353M7100\x00\x00\x00\x00', - b'\x018966353Q2000\x00\x00\x00\x00', - b'\x018966353Q2100\x00\x00\x00\x00', - b'\x018966353Q2300\x00\x00\x00\x00', - b'\x018966353Q4000\x00\x00\x00\x00', - b'\x018966353R1100\x00\x00\x00\x00', - b'\x018966353R7000\x00\x00\x00\x00', - b'\x018966353R7100\x00\x00\x00\x00', - b'\x018966353R8000\x00\x00\x00\x00', - b'\x018966353R8100\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0232480000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02353N5100\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02353P7000\x00\x00\x00\x00\x00\x00\x00\x00530J5000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02353P9000\x00\x00\x00\x00\x00\x00\x00\x00553C1000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152653300\x00\x00\x00\x00\x00\x00', - b'F152653301\x00\x00\x00\x00\x00\x00', - b'F152653310\x00\x00\x00\x00\x00\x00', - b'F152653330\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881515306200\x00\x00\x00\x00', - b'881515306400\x00\x00\x00\x00', - b'881515306500\x00\x00\x00\x00', - b'881515307400\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B53270\x00\x00\x00\x00\x00\x00', - b'8965B53271\x00\x00\x00\x00\x00\x00', - b'8965B53280\x00\x00\x00\x00\x00\x00', - b'8965B53281\x00\x00\x00\x00\x00\x00', - b'8965B53310\x00\x00\x00\x00\x00\x00', - b'8965B53311\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F5301101\x00\x00\x00\x00', - b'8646F5301200\x00\x00\x00\x00', - b'8646F5301300\x00\x00\x00\x00', - b'8646F5301400\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_IS_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x018966353S1000\x00\x00\x00\x00', - b'\x018966353S2000\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x02353U0000\x00\x00\x00\x00\x00\x00\x00\x0052422000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15265337200\x00\x00\x00\x00', - b'\x01F15265342000\x00\x00\x00\x00', - b'\x01F15265343000\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B53450\x00\x00\x00\x00\x00\x00', - b'8965B53800\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F6201200\x00\x00\x00\x00', - b'\x018821F6201300\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F5303300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F5303300\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F5303400\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_PRIUS: { - (Ecu.engine, 0x700, None): [ - b'\x02896634761000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634761100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634761200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634762000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634762100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634763000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634763100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634765000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634765100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634769000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634769100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634769200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634770000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634770100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634774000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634774100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634774200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634782000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x02896634784000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347A0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347A5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347A8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347B0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x03896634759100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x03896634759200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x03896634759200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', - b'\x03896634759300\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x03896634759300\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', - b'\x03896634760000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701002\x00\x00\x00\x00', - b'\x03896634760000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x03896634760000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', - b'\x03896634760100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x03896634760200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x03896634760200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', - b'\x03896634760300\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', - b'\x03896634768000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703001\x00\x00\x00\x00', - b'\x03896634768000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703002\x00\x00\x00\x00', - b'\x03896634768100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703002\x00\x00\x00\x00', - b'\x03896634785000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4705001\x00\x00\x00\x00', - b'\x03896634785000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', - b'\x03896634786000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4705001\x00\x00\x00\x00', - b'\x03896634786000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', - b'\x03896634789000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703002\x00\x00\x00\x00', - b'\x038966347A3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', - b'\x038966347A3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4707001\x00\x00\x00\x00', - b'\x038966347B6000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', - b'\x038966347B7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', - b'\x038966347B7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B47021\x00\x00\x00\x00\x00\x00', - b'8965B47022\x00\x00\x00\x00\x00\x00', - b'8965B47023\x00\x00\x00\x00\x00\x00', - b'8965B47050\x00\x00\x00\x00\x00\x00', - b'8965B47060\x00\x00\x00\x00\x00\x00', - b'8965B47070\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152647290\x00\x00\x00\x00\x00\x00', - b'F152647300\x00\x00\x00\x00\x00\x00', - b'F152647310\x00\x00\x00\x00\x00\x00', - b'F152647414\x00\x00\x00\x00\x00\x00', - b'F152647415\x00\x00\x00\x00\x00\x00', - b'F152647416\x00\x00\x00\x00\x00\x00', - b'F152647417\x00\x00\x00\x00\x00\x00', - b'F152647470\x00\x00\x00\x00\x00\x00', - b'F152647490\x00\x00\x00\x00\x00\x00', - b'F152647682\x00\x00\x00\x00\x00\x00', - b'F152647683\x00\x00\x00\x00\x00\x00', - b'F152647684\x00\x00\x00\x00\x00\x00', - b'F152647862\x00\x00\x00\x00\x00\x00', - b'F152647863\x00\x00\x00\x00\x00\x00', - b'F152647864\x00\x00\x00\x00\x00\x00', - b'F152647865\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881514702300\x00\x00\x00\x00', - b'881514702400\x00\x00\x00\x00', - b'881514703100\x00\x00\x00\x00', - b'881514704100\x00\x00\x00\x00', - b'881514706000\x00\x00\x00\x00', - b'881514706100\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702000\x00\x00\x00\x00', - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F4701300\x00\x00\x00\x00', - b'8646F4702001\x00\x00\x00\x00', - b'8646F4702100\x00\x00\x00\x00', - b'8646F4702200\x00\x00\x00\x00', - b'8646F4705000\x00\x00\x00\x00', - b'8646F4705200\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_PRIUS_V: { - (Ecu.abs, 0x7b0, None): [ - b'F152647280\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0234781000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881514705100\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F4703300\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_RAV4: { - (Ecu.engine, 0x7e0, None): [ - b'\x02342Q1000\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q1100\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q1200\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q1300\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q2000\x00\x00\x00\x00\x00\x00\x00\x0054213000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q2100\x00\x00\x00\x00\x00\x00\x00\x0054213000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q2200\x00\x00\x00\x00\x00\x00\x00\x0054213000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342Q4000\x00\x00\x00\x00\x00\x00\x00\x0054215000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B42063\x00\x00\x00\x00\x00\x00', - b'8965B42073\x00\x00\x00\x00\x00\x00', - b'8965B42082\x00\x00\x00\x00\x00\x00', - b'8965B42083\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F15260R102\x00\x00\x00\x00\x00\x00', - b'F15260R103\x00\x00\x00\x00\x00\x00', - b'F152642492\x00\x00\x00\x00\x00\x00', - b'F152642493\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881514201200\x00\x00\x00\x00', - b'881514201300\x00\x00\x00\x00', - b'881514201400\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702000\x00\x00\x00\x00', - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F4201100\x00\x00\x00\x00', - b'8646F4201200\x00\x00\x00\x00', - b'8646F4202001\x00\x00\x00\x00', - b'8646F4202100\x00\x00\x00\x00', - b'8646F4204000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_RAV4H: { - (Ecu.engine, 0x7e0, None): [ - b'\x02342N9000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342N9100\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02342P0000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B42102\x00\x00\x00\x00\x00\x00', - b'8965B42103\x00\x00\x00\x00\x00\x00', - b'8965B42112\x00\x00\x00\x00\x00\x00', - b'8965B42162\x00\x00\x00\x00\x00\x00', - b'8965B42163\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152642090\x00\x00\x00\x00\x00\x00', - b'F152642110\x00\x00\x00\x00\x00\x00', - b'F152642120\x00\x00\x00\x00\x00\x00', - b'F152642400\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881514202200\x00\x00\x00\x00', - b'881514202300\x00\x00\x00\x00', - b'881514202400\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702000\x00\x00\x00\x00', - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F4201100\x00\x00\x00\x00', - b'8646F4201200\x00\x00\x00\x00', - b'8646F4202001\x00\x00\x00\x00', - b'8646F4202100\x00\x00\x00\x00', - b'8646F4204000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_RAV4_PRIME: { - (Ecu.engine, 0x700, None): [ - b'\x018966342S7000\x00\x00\x00\x00', - b'\x018966342Z1000\x00\x00\x00\x00', - b'\x018966342Z1100\x00\x00\x00\x00', - b'\x01896634AJ7000\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15264228300\x00\x00\x00\x00', - b'\x01F15264228500\x00\x00\x00\x00', - b'\x01F15264284100\x00\x00\x00\x00', - b'\x01F152642F3000\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x018965B4209000\x00\x00\x00\x00', - b'\x018965B4233100\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301400\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F4205200\x00\x00\x00\x008646G4202000\x00\x00\x00\x00', - b'\x028646F4205300\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', - b'\x028646F4210100\x00\x00\x00\x008646G3305000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_RAV4_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x01896630R58000\x00\x00\x00\x00', - b'\x01896630R58100\x00\x00\x00\x00', - b'\x018966342E2000\x00\x00\x00\x00', - b'\x018966342M5000\x00\x00\x00\x00', - b'\x018966342M8000\x00\x00\x00\x00', - b'\x018966342S9000\x00\x00\x00\x00', - b'\x018966342T1000\x00\x00\x00\x00', - b'\x018966342T6000\x00\x00\x00\x00', - b'\x018966342T9000\x00\x00\x00\x00', - b'\x018966342U4000\x00\x00\x00\x00', - b'\x018966342U4100\x00\x00\x00\x00', - b'\x018966342U5100\x00\x00\x00\x00', - b'\x018966342V0000\x00\x00\x00\x00', - b'\x018966342V3000\x00\x00\x00\x00', - b'\x018966342V3100\x00\x00\x00\x00', - b'\x018966342V3200\x00\x00\x00\x00', - b'\x018966342W5000\x00\x00\x00\x00', - b'\x018966342W7000\x00\x00\x00\x00', - b'\x018966342W8000\x00\x00\x00\x00', - b'\x018966342X5000\x00\x00\x00\x00', - b'\x018966342X6000\x00\x00\x00\x00', - b'\x01896634A05000\x00\x00\x00\x00', - b'\x01896634A15000\x00\x00\x00\x00', - b'\x01896634A19000\x00\x00\x00\x00', - b'\x01896634A19100\x00\x00\x00\x00', - b'\x01896634A20000\x00\x00\x00\x00', - b'\x01896634A20100\x00\x00\x00\x00', - b'\x01896634A22000\x00\x00\x00\x00', - b'\x01896634A22100\x00\x00\x00\x00', - b'\x01896634A25000\x00\x00\x00\x00', - b'\x01896634A30000\x00\x00\x00\x00', - b'\x01896634A44000\x00\x00\x00\x00', - b'\x01896634A45000\x00\x00\x00\x00', - b'\x01896634A46000\x00\x00\x00\x00', - b'\x028966342M7000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', - b'\x028966342T0000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', - b'\x028966342V1000\x00\x00\x00\x00897CF1202001\x00\x00\x00\x00', - b'\x028966342W4001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', - b'\x028966342Y8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', - b'\x028966342Z8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', - b'\x02896634A13000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02896634A13001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896634A13101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896634A13201\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896634A14001\x00\x00\x00\x00897CF0R01000\x00\x00\x00\x00', - b'\x02896634A14001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', - b'\x02896634A14001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896634A14101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', - b'\x02896634A18000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', - b'\x02896634A18100\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', - b'\x02896634A23000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02896634A23001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', - b'\x02896634A23101\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', - b'\x02896634A43000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00', - b'\x02896634A47000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15260R210\x00\x00\x00\x00\x00\x00', - b'\x01F15260R220\x00\x00\x00\x00\x00\x00', - b'\x01F15260R290\x00\x00\x00\x00\x00\x00', - b'\x01F15260R292\x00\x00\x00\x00\x00\x00', - b'\x01F15260R300\x00\x00\x00\x00\x00\x00', - b'\x01F15260R302\x00\x00\x00\x00\x00\x00', - b'\x01F152642551\x00\x00\x00\x00\x00\x00', - b'\x01F152642561\x00\x00\x00\x00\x00\x00', - b'\x01F152642601\x00\x00\x00\x00\x00\x00', - b'\x01F152642700\x00\x00\x00\x00\x00\x00', - b'\x01F152642701\x00\x00\x00\x00\x00\x00', - b'\x01F152642710\x00\x00\x00\x00\x00\x00', - b'\x01F152642711\x00\x00\x00\x00\x00\x00', - b'\x01F152642750\x00\x00\x00\x00\x00\x00', - b'\x01F152642751\x00\x00\x00\x00\x00\x00', - b'F152642290\x00\x00\x00\x00\x00\x00', - b'F152642291\x00\x00\x00\x00\x00\x00', - b'F152642322\x00\x00\x00\x00\x00\x00', - b'F152642330\x00\x00\x00\x00\x00\x00', - b'F152642331\x00\x00\x00\x00\x00\x00', - b'F152642520\x00\x00\x00\x00\x00\x00', - b'F152642521\x00\x00\x00\x00\x00\x00', - b'F152642531\x00\x00\x00\x00\x00\x00', - b'F152642532\x00\x00\x00\x00\x00\x00', - b'F152642540\x00\x00\x00\x00\x00\x00', - b'F152642541\x00\x00\x00\x00\x00\x00', - b'F152642542\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x028965B0R01200\x00\x00\x00\x008965B0R02200\x00\x00\x00\x00', - b'\x028965B0R01300\x00\x00\x00\x008965B0R02300\x00\x00\x00\x00', - b'\x028965B0R01400\x00\x00\x00\x008965B0R02400\x00\x00\x00\x00', - b'8965B42170\x00\x00\x00\x00\x00\x00', - b'8965B42171\x00\x00\x00\x00\x00\x00', - b'8965B42180\x00\x00\x00\x00\x00\x00', - b'8965B42181\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301100\x00\x00\x00\x00', - b'\x018821F3301200\x00\x00\x00\x00', - b'\x018821F3301300\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F4203200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F4203300\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F4203400\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F4203500\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F4203700\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F4203800\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_RAV4_TSS2_2022: { - (Ecu.abs, 0x7b0, None): [ - b'\x01F15260R350\x00\x00\x00\x00\x00\x00', - b'\x01F15260R361\x00\x00\x00\x00\x00\x00', - b'\x01F15264283100\x00\x00\x00\x00', - b'\x01F15264283200\x00\x00\x00\x00', - b'\x01F15264286100\x00\x00\x00\x00', - b'\x01F15264286200\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x028965B0R01500\x00\x00\x00\x008965B0R02500\x00\x00\x00\x00', - b'8965B42172\x00\x00\x00\x00\x00\x00', - b'8965B42182\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x01896634A02001\x00\x00\x00\x00', - b'\x01896634A02101\x00\x00\x00\x00', - b'\x01896634A03000\x00\x00\x00\x00', - b'\x01896634A08000\x00\x00\x00\x00', - b'\x01896634A59000\x00\x00\x00\x00', - b'\x01896634A61000\x00\x00\x00\x00', - b'\x01896634A62000\x00\x00\x00\x00', - b'\x01896634A62100\x00\x00\x00\x00', - b'\x01896634A63000\x00\x00\x00\x00', - b'\x01896634A88000\x00\x00\x00\x00', - b'\x01896634A89000\x00\x00\x00\x00', - b'\x01896634A89100\x00\x00\x00\x00', - b'\x01896634AA0000\x00\x00\x00\x00', - b'\x01896634AA0100\x00\x00\x00\x00', - b'\x01896634AA1000\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F0R01100\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F0R02100\x00\x00\x00\x008646G0R01100\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_RAV4_TSS2_2023: { - (Ecu.abs, 0x7b0, None): [ - b'\x01F15260R440\x00\x00\x00\x00\x00\x00', - b'\x01F15260R450\x00\x00\x00\x00\x00\x00', - b'\x01F15260R50000\x00\x00\x00\x00', - b'\x01F15260R51000\x00\x00\x00\x00', - b'\x01F15264283200\x00\x00\x00\x00', - b'\x01F15264283300\x00\x00\x00\x00', - b'\x01F152642F1000\x00\x00\x00\x00', - b'\x01F152642F8000\x00\x00\x00\x00', - b'\x01F152642F8100\x00\x00\x00\x00', - b'\x01F152642F9000\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x028965B0R11000\x00\x00\x00\x008965B0R12000\x00\x00\x00\x00', - b'8965B42371\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x700, None): [ - b'\x01896634A61000\x00\x00\x00\x00', - b'\x01896634A88100\x00\x00\x00\x00', - b'\x01896634A89100\x00\x00\x00\x00', - b'\x01896634AE1001\x00\x00\x00\x00', - b'\x01896634AF0000\x00\x00\x00\x00', - b'\x01896634AJ2000\x00\x00\x00\x00', - b'\x01896634AJ3000\x00\x00\x00\x00', - b'\x01896634AL5000\x00\x00\x00\x00', - b'\x01896634AL6000\x00\x00\x00\x00', - b'\x01896634AL8000\x00\x00\x00\x00', - b'\x01896634AS9000\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F0R03100\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F0R05100\x00\x00\x00\x008646G0R02100\x00\x00\x00\x00', - b'\x028646F0R05200\x00\x00\x00\x008646G0R02200\x00\x00\x00\x00', - b'\x028646F0R05300\x00\x00\x00\x008646G0R02300\x00\x00\x00\x00', - b'\x028646F0R11000\x00\x00\x00\x008646G0R04000\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_SIENNA: { - (Ecu.engine, 0x700, None): [ - b'\x01896630832100\x00\x00\x00\x00', - b'\x01896630832200\x00\x00\x00\x00', - b'\x01896630838000\x00\x00\x00\x00', - b'\x01896630838100\x00\x00\x00\x00', - b'\x01896630842000\x00\x00\x00\x00', - b'\x01896630843000\x00\x00\x00\x00', - b'\x01896630851000\x00\x00\x00\x00', - b'\x01896630851100\x00\x00\x00\x00', - b'\x01896630851200\x00\x00\x00\x00', - b'\x01896630852000\x00\x00\x00\x00', - b'\x01896630852100\x00\x00\x00\x00', - b'\x01896630852200\x00\x00\x00\x00', - b'\x01896630859000\x00\x00\x00\x00', - b'\x01896630860000\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B45070\x00\x00\x00\x00\x00\x00', - b'8965B45080\x00\x00\x00\x00\x00\x00', - b'8965B45082\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152608130\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881510801100\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702200\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F0801100\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_SIENNA_4TH_GEN: { - (Ecu.engine, 0x700, None): [ - b'\x01896630841000\x00\x00\x00\x00', - b'\x01896630857101\x00\x00\x00\x00', - b'\x01896630864000\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15260815100\x00\x00\x00\x00', - b'\x01F15260815300\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x018965B4509100\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301500\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F0802200\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', - b'\x028646F0802300\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', - b'\x028646F0802400\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_CTH: { - (Ecu.dsu, 0x791, None): [ - b'881517601100\x00\x00\x00\x00', - b'881517602000\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152676144\x00\x00\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0237635000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0237641000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F7601100\x00\x00\x00\x00', - b'8646F7601200\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_ES_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x018966306U6000\x00\x00\x00\x00', - b'\x018966333T5000\x00\x00\x00\x00', - b'\x018966333T5100\x00\x00\x00\x00', - b'\x018966333X6000\x00\x00\x00\x00', - b'\x01896633T07000\x00\x00\x00\x00', - b'\x01896633T38000\x00\x00\x00\x00', - b'\x01896633T58000\x00\x00\x00\x00', - b'\x01896633T63000\x00\x00\x00\x00', - b'\x028966333S8000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', - b'\x028966333S8000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966333T0100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966333V4000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x028966333W1000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', - b'\x02896633T09000\x00\x00\x00\x00897CF3307001\x00\x00\x00\x00', - b'\x02896633T10000\x00\x00\x00\x00897CF3307001\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F152606281\x00\x00\x00\x00\x00\x00', - b'\x01F152606340\x00\x00\x00\x00\x00\x00', - b'\x01F152606461\x00\x00\x00\x00\x00\x00', - b'\x01F15260646200\x00\x00\x00\x00', - b'F152633423\x00\x00\x00\x00\x00\x00', - b'F152633680\x00\x00\x00\x00\x00\x00', - b'F152633681\x00\x00\x00\x00\x00\x00', - b'F152633F50\x00\x00\x00\x00\x00\x00', - b'F152633F51\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B33252\x00\x00\x00\x00\x00\x00', - b'8965B33590\x00\x00\x00\x00\x00\x00', - b'8965B33690\x00\x00\x00\x00\x00\x00', - b'8965B33702\x00\x00\x00\x00\x00\x00', - b'8965B33721\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301100\x00\x00\x00\x00', - b'\x018821F3301200\x00\x00\x00\x00', - b'\x018821F3301300\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - b'\x018821F6201200\x00\x00\x00\x00', - b'\x018821F6201300\x00\x00\x00\x00', - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F0610000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F0610100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F33030D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F3303100\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F3303200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F3304100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F3304200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F3304300\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - b'\x028646F3309100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F3309100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - b'\x028646F3309400\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_ES: { - (Ecu.engine, 0x7e0, None): [ - b'\x02333M4100\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02333M4200\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02333R0000\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152606201\x00\x00\x00\x00\x00\x00', - b'F152606202\x00\x00\x00\x00\x00\x00', - b'F152633171\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881513309400\x00\x00\x00\x00', - b'881513309500\x00\x00\x00\x00', - b'881513310400\x00\x00\x00\x00', - b'881513310500\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B33502\x00\x00\x00\x00\x00\x00', - b'8965B33512\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4701100\x00\x00\x00\x00', - b'8821F4701200\x00\x00\x00\x00', - b'8821F4701300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F3302001\x00\x00\x00\x00', - b'8646F3302100\x00\x00\x00\x00', - b'8646F3302200\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_GS_F: { - (Ecu.engine, 0x7e0, None): [ - b'\x0233075200\x00\x00\x00\x00\x00\x00\x00\x00530B9000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152630700\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881513016200\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B30551\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702000\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F3002100\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_NX: { - (Ecu.engine, 0x700, None): [ - b'\x01896637850000\x00\x00\x00\x00', - b'\x01896637851000\x00\x00\x00\x00', - b'\x01896637852000\x00\x00\x00\x00', - b'\x01896637854000\x00\x00\x00\x00', - b'\x01896637873000\x00\x00\x00\x00', - b'\x01896637878000\x00\x00\x00\x00', - b'\x01896637878100\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0237841000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0237842000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0237880000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0237882000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0237886000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152678130\x00\x00\x00\x00\x00\x00', - b'F152678140\x00\x00\x00\x00\x00\x00', - b'F152678160\x00\x00\x00\x00\x00\x00', - b'F152678170\x00\x00\x00\x00\x00\x00', - b'F152678171\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881517803100\x00\x00\x00\x00', - b'881517803300\x00\x00\x00\x00', - b'881517804100\x00\x00\x00\x00', - b'881517804300\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B78060\x00\x00\x00\x00\x00\x00', - b'8965B78080\x00\x00\x00\x00\x00\x00', - b'8965B78100\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702100\x00\x00\x00\x00', - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F7801100\x00\x00\x00\x00', - b'8646F7801300\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_NX_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x018966378B2000\x00\x00\x00\x00', - b'\x018966378B2100\x00\x00\x00\x00', - b'\x018966378B3000\x00\x00\x00\x00', - b'\x018966378B3100\x00\x00\x00\x00', - b'\x018966378B4100\x00\x00\x00\x00', - b'\x018966378G2000\x00\x00\x00\x00', - b'\x018966378G3000\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0237881000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0237887000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02378A0000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02378F4000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F152678221\x00\x00\x00\x00\x00\x00', - b'F152678200\x00\x00\x00\x00\x00\x00', - b'F152678210\x00\x00\x00\x00\x00\x00', - b'F152678211\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B78110\x00\x00\x00\x00\x00\x00', - b'8965B78120\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301200\x00\x00\x00\x00', - b'\x018821F3301300\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F78030A0\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F7803100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_LC_TSS2: { - (Ecu.engine, 0x7e0, None): [ - b'\x0131130000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152611390\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B11091\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F6201400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F1104200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - b'\x028646F1105200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_RC: { - (Ecu.engine, 0x700, None): [ - b'\x01896632461100\x00\x00\x00\x00', - b'\x01896632478100\x00\x00\x00\x00', - b'\x01896632478200\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x0232484000\x00\x00\x00\x00\x00\x00\x00\x0052422000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152624150\x00\x00\x00\x00\x00\x00', - b'F152624221\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881512404100\x00\x00\x00\x00', - b'881512407000\x00\x00\x00\x00', - b'881512409100\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B24081\x00\x00\x00\x00\x00\x00', - b'8965B24240\x00\x00\x00\x00\x00\x00', - b'8965B24320\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4702300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F2401100\x00\x00\x00\x00', - b'8646F2401200\x00\x00\x00\x00', - b'8646F2402200\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_RX: { - (Ecu.engine, 0x700, None): [ - b'\x01896630E36100\x00\x00\x00\x00', - b'\x01896630E36200\x00\x00\x00\x00', - b'\x01896630E36300\x00\x00\x00\x00', - b'\x01896630E36600\x00\x00\x00\x00', - b'\x01896630E37100\x00\x00\x00\x00', - b'\x01896630E37200\x00\x00\x00\x00', - b'\x01896630E37300\x00\x00\x00\x00', - b'\x01896630E41000\x00\x00\x00\x00', - b'\x01896630E41100\x00\x00\x00\x00', - b'\x01896630E41200\x00\x00\x00\x00', - b'\x01896630E41500\x00\x00\x00\x00', - b'\x01896630EA3100\x00\x00\x00\x00', - b'\x01896630EA3300\x00\x00\x00\x00', - b'\x01896630EA3400\x00\x00\x00\x00', - b'\x01896630EA4100\x00\x00\x00\x00', - b'\x01896630EA4200\x00\x00\x00\x00', - b'\x01896630EA4300\x00\x00\x00\x00', - b'\x01896630EA4400\x00\x00\x00\x00', - b'\x01896630EA6300\x00\x00\x00\x00', - b'\x018966348R1300\x00\x00\x00\x00', - b'\x018966348R8500\x00\x00\x00\x00', - b'\x018966348R9300\x00\x00\x00\x00', - b'\x018966348W1300\x00\x00\x00\x00', - b'\x018966348W2300\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x02348J7000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348N0000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348Q4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348Q4100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348T1000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348T1100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348T1200\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348T3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348V6000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348Z3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152648361\x00\x00\x00\x00\x00\x00', - b'F152648472\x00\x00\x00\x00\x00\x00', - b'F152648473\x00\x00\x00\x00\x00\x00', - b'F152648474\x00\x00\x00\x00\x00\x00', - b'F152648492\x00\x00\x00\x00\x00\x00', - b'F152648493\x00\x00\x00\x00\x00\x00', - b'F152648494\x00\x00\x00\x00\x00\x00', - b'F152648501\x00\x00\x00\x00\x00\x00', - b'F152648502\x00\x00\x00\x00\x00\x00', - b'F152648504\x00\x00\x00\x00\x00\x00', - b'F152648630\x00\x00\x00\x00\x00\x00', - b'F152648740\x00\x00\x00\x00\x00\x00', - b'F152648A30\x00\x00\x00\x00\x00\x00', - ], - (Ecu.dsu, 0x791, None): [ - b'881514810300\x00\x00\x00\x00', - b'881514810500\x00\x00\x00\x00', - b'881514810700\x00\x00\x00\x00', - b'881514811300\x00\x00\x00\x00', - b'881514811500\x00\x00\x00\x00', - b'881514811700\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B0E011\x00\x00\x00\x00\x00\x00', - b'8965B0E012\x00\x00\x00\x00\x00\x00', - b'8965B48102\x00\x00\x00\x00\x00\x00', - b'8965B48111\x00\x00\x00\x00\x00\x00', - b'8965B48112\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'8821F4701000\x00\x00\x00\x00', - b'8821F4701100\x00\x00\x00\x00', - b'8821F4701200\x00\x00\x00\x00', - b'8821F4701300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'8646F4801100\x00\x00\x00\x00', - b'8646F4801200\x00\x00\x00\x00', - b'8646F4802001\x00\x00\x00\x00', - b'8646F4802100\x00\x00\x00\x00', - b'8646F4802200\x00\x00\x00\x00', - b'8646F4809000\x00\x00\x00\x00', - ], - }, - CAR.LEXUS_RX_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x01896630EA9000\x00\x00\x00\x00', - b'\x01896630EB0000\x00\x00\x00\x00', - b'\x01896630EC9000\x00\x00\x00\x00', - b'\x01896630EC9100\x00\x00\x00\x00', - b'\x01896630ED0000\x00\x00\x00\x00', - b'\x01896630ED0100\x00\x00\x00\x00', - b'\x01896630ED5000\x00\x00\x00\x00', - b'\x01896630ED6000\x00\x00\x00\x00', - b'\x018966348R9200\x00\x00\x00\x00', - b'\x018966348T8000\x00\x00\x00\x00', - b'\x018966348W5100\x00\x00\x00\x00', - b'\x018966348W9000\x00\x00\x00\x00', - b'\x018966348X0000\x00\x00\x00\x00', - b'\x01896634D11000\x00\x00\x00\x00', - b'\x01896634D12000\x00\x00\x00\x00', - b'\x01896634D12100\x00\x00\x00\x00', - b'\x01896634D43000\x00\x00\x00\x00', - b'\x01896634D44000\x00\x00\x00\x00', - ], - (Ecu.engine, 0x7e0, None): [ - b'\x02348U2000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348X4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348X5000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348X6000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348X8000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x02348Y3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0234D14000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0234D15000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0234D16000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15260E031\x00\x00\x00\x00\x00\x00', - b'\x01F15260E041\x00\x00\x00\x00\x00\x00', - b'\x01F152648781\x00\x00\x00\x00\x00\x00', - b'\x01F152648801\x00\x00\x00\x00\x00\x00', - b'F152648493\x00\x00\x00\x00\x00\x00', - b'F152648811\x00\x00\x00\x00\x00\x00', - b'F152648831\x00\x00\x00\x00\x00\x00', - b'F152648891\x00\x00\x00\x00\x00\x00', - b'F152648C80\x00\x00\x00\x00\x00\x00', - b'F152648D00\x00\x00\x00\x00\x00\x00', - b'F152648D60\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B48261\x00\x00\x00\x00\x00\x00', - b'8965B48271\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301100\x00\x00\x00\x00', - b'\x018821F3301300\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F4810100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', - b'\x028646F4810200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F4810300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F4810400\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_PRIUS_TSS2: { - (Ecu.engine, 0x700, None): [ - b'\x028966347B1000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347C4000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347C6000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347C7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x028966347C8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', - b'\x038966347C0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710101\x00\x00\x00\x00', - b'\x038966347C1000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710101\x00\x00\x00\x00', - b'\x038966347C5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4707101\x00\x00\x00\x00', - b'\x038966347C5100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4707101\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152647500\x00\x00\x00\x00\x00\x00', - b'F152647510\x00\x00\x00\x00\x00\x00', - b'F152647520\x00\x00\x00\x00\x00\x00', - b'F152647521\x00\x00\x00\x00\x00\x00', - b'F152647531\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B47070\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301300\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F4707000\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646F4710000\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - b'\x028646F4712000\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_MIRAI: { - (Ecu.abs, 0x7d1, None): [ - b'\x01898A36203000\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F15266203200\x00\x00\x00\x00', - b'\x01F15266203500\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x028965B6204100\x00\x00\x00\x008965B6203100\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F6201200\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F6201400\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_ALPHARD_TSS2: { - (Ecu.engine, 0x7e0, None): [ - b'\x0235870000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0235879000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', - b'\x0235883000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'8965B58040\x00\x00\x00\x00\x00\x00', - b'8965B58052\x00\x00\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'F152658320\x00\x00\x00\x00\x00\x00', - b'F152658341\x00\x00\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F3301200\x00\x00\x00\x00', - b'\x018821F3301400\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F58010C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', - b'\x028646F5803200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - b'\x028646FV201000\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', - ], - }, - CAR.TOYOTA_YARIS: { - (Ecu.engine, 0x700, None): [ - b'\x0189663K015300\x00\x00\x00\x00', - ], - (Ecu.eps, 0x7a1, None): [ - b'\x018965BK003200\x00\x00\x00\x00', - ], - (Ecu.abs, 0x7b0, None): [ - b'\x01F1526K007500\x00\x00\x00\x00', - ], - (Ecu.fwdRadar, 0x750, 0xf): [ - b'\x018821F0D05300\x00\x00\x00\x00', - ], - (Ecu.fwdCamera, 0x750, 0x6d): [ - b'\x028646F5205200\x00\x00\x00\x008646G5202200\x00\x00\x00\x00', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/toyota/interface.py b/opendbc_repo/opendbc/car/toyota/interface.py deleted file mode 100644 index bf6f046034..0000000000 --- a/opendbc_repo/opendbc/car/toyota/interface.py +++ /dev/null @@ -1,160 +0,0 @@ -from opendbc.car import Bus, structs, get_safety_config, uds -from opendbc.car.toyota.carstate import CarState -from opendbc.car.toyota.carcontroller import CarController -from opendbc.car.toyota.radar_interface import RadarInterface -from opendbc.car.toyota.values import Ecu, CAR, DBC, ToyotaFlags, CarControllerParams, TSS2_CAR, RADAR_ACC_CAR, NO_DSU_CAR, \ - MIN_ACC_SPEED, EPS_SCALE, UNSUPPORTED_DSU_CAR, NO_STOP_TIMER_CAR, ANGLE_CONTROL_CAR, \ - ToyotaSafetyFlags -from opendbc.car.disable_ecu import disable_ecu -from opendbc.car.interfaces import CarInterfaceBase - -SteerControlType = structs.CarParams.SteerControlType - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - RadarInterface = RadarInterface - - @staticmethod - def get_pid_accel_limits(CP, current_speed, cruise_speed): - return CarControllerParams(CP).ACCEL_MIN, CarControllerParams(CP).ACCEL_MAX - - @staticmethod - def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "toyota" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.toyota)] - ret.safetyConfigs[0].safetyParam = EPS_SCALE[candidate] - - # BRAKE_MODULE is on a different address for these cars - if DBC[candidate][Bus.pt] == "toyota_new_mc_pt_generated": - ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.ALT_BRAKE.value - - if ret.flags & ToyotaFlags.SECOC.value: - ret.secOcRequired = True - ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.SECOC.value - - if candidate in ANGLE_CONTROL_CAR: - ret.steerControlType = SteerControlType.angle - ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.LTA.value - - # LTA control can be more delayed and winds up more often - ret.steerActuatorDelay = 0.18 - ret.steerLimitTimer = 0.8 - else: - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - - ret.steerActuatorDelay = 0.12 # Default delay, Prius has larger delay - ret.steerLimitTimer = 0.4 - - stop_and_go = candidate in TSS2_CAR - - # In TSS2 cars, the camera does long control - found_ecus = [fw.ecu for fw in car_fw] - ret.enableDsu = len(found_ecus) > 0 and Ecu.dsu not in found_ecus and candidate not in (NO_DSU_CAR | UNSUPPORTED_DSU_CAR) - - if Ecu.hybrid in found_ecus: - ret.flags |= ToyotaFlags.HYBRID.value - - if candidate == CAR.TOYOTA_PRIUS: - stop_and_go = True - # Only give steer angle deadzone to for bad angle sensor prius - for fw in car_fw: - if fw.ecu == "eps" and not fw.fwVersion == b'8965B47060\x00\x00\x00\x00\x00\x00': - ret.steerActuatorDelay = 0.25 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning, steering_angle_deadzone_deg=0.2) - - elif candidate in (CAR.LEXUS_RX, CAR.LEXUS_RX_TSS2): - stop_and_go = True - ret.wheelSpeedFactor = 1.035 - - elif candidate in (CAR.TOYOTA_AVALON, CAR.TOYOTA_AVALON_2019, CAR.TOYOTA_AVALON_TSS2): - # starting from 2019, all Avalon variants have stop and go - # https://engage.toyota.com/static/images/toyota_safety_sense/TSS_Applicability_Chart.pdf - stop_and_go = candidate != CAR.TOYOTA_AVALON - - elif candidate in (CAR.TOYOTA_RAV4_TSS2, CAR.TOYOTA_RAV4_TSS2_2022, CAR.TOYOTA_RAV4_TSS2_2023, CAR.TOYOTA_RAV4_PRIME, CAR.TOYOTA_SIENNA_4TH_GEN): - ret.lateralTuning.init('pid') - ret.lateralTuning.pid.kiBP = [0.0] - ret.lateralTuning.pid.kpBP = [0.0] - ret.lateralTuning.pid.kpV = [0.6] - ret.lateralTuning.pid.kiV = [0.1] - ret.lateralTuning.pid.kf = 0.00007818594 - - # 2019+ RAV4 TSS2 uses two different steering racks and specific tuning seems to be necessary. - # See https://github.com/commaai/openpilot/pull/21429#issuecomment-873652891 - for fw in car_fw: - if fw.ecu == "eps" and (fw.fwVersion.startswith(b'\x02') or fw.fwVersion in [b'8965B42181\x00\x00\x00\x00\x00\x00']): - ret.lateralTuning.pid.kpV = [0.15] - ret.lateralTuning.pid.kiV = [0.05] - ret.lateralTuning.pid.kf = 0.00004 - break - - elif candidate in (CAR.TOYOTA_CHR, CAR.TOYOTA_CAMRY, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_NX): - # TODO: Some of these platforms are not advertised to have full range ACC, are they similar to SNG_WITHOUT_DSU cars? - stop_and_go = True - - # TODO: these models can do stop and go, but unclear if it requires sDSU or unplugging DSU. - # For now, don't list stop and go functionality in the docs - if ret.flags & ToyotaFlags.SNG_WITHOUT_DSU: - stop_and_go = stop_and_go or (ret.enableDsu and not docs) - - ret.centerToFront = ret.wheelbase * 0.44 - - # TODO: Some TSS-P platforms have BSM, but are flipped based on region or driving direction. - # Detect flipped signals and enable for C-HR and others - ret.enableBsm = 0x3F6 in fingerprint[0] and candidate in TSS2_CAR - - # No radar dbc for cars without DSU which are not TSS 2.0 - # TODO: make an adas dbc file for dsu-less models - ret.radarUnavailable = Bus.radar not in DBC[candidate] or candidate in (NO_DSU_CAR - TSS2_CAR) - - # since we don't yet parse radar on TSS2/TSS-P radar-based ACC cars, gate longitudinal behind experimental toggle - if candidate in (RADAR_ACC_CAR | NO_DSU_CAR): - ret.alphaLongitudinalAvailable = candidate in RADAR_ACC_CAR - - # Disabling radar is only supported on TSS2 radar-ACC cars - if alpha_long and candidate in RADAR_ACC_CAR: - ret.flags |= ToyotaFlags.DISABLE_RADAR.value - - # openpilot longitudinal enabled by default: - # - cars w/ DSU disconnected - # - TSS2 cars with camera sending ACC_CONTROL where we can block it - # openpilot longitudinal behind experimental long toggle: - # - TSS2 radar ACC cars (disables radar) - - if ret.flags & ToyotaFlags.SECOC.value: - ret.openpilotLongitudinalControl = False - else: - ret.openpilotLongitudinalControl = ret.enableDsu or \ - candidate in (TSS2_CAR - RADAR_ACC_CAR) or \ - bool(ret.flags & ToyotaFlags.DISABLE_RADAR.value) - - ret.autoResumeSng = ret.openpilotLongitudinalControl and candidate in NO_STOP_TIMER_CAR - - if not ret.openpilotLongitudinalControl: - ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.STOCK_LONGITUDINAL.value - - # min speed to enable ACC. if car can do stop and go, then set enabling speed - # to a negative value, so it won't matter. - ret.minEnableSpeed = -1. if stop_and_go else MIN_ACC_SPEED - - if candidate in TSS2_CAR: - ret.flags |= ToyotaFlags.RAISED_ACCEL_LIMIT.value - - ret.vEgoStopping = 0.25 - ret.vEgoStarting = 0.25 - ret.stoppingDecelRate = 0.3 # reach stopping target smoothly - - # Hybrids have much quicker longitudinal actuator response - if ret.flags & ToyotaFlags.HYBRID.value: - ret.longitudinalActuatorDelay = 0.05 - - return ret - - @staticmethod - def init(CP, can_recv, can_send): - # disable radar if alpha longitudinal toggled on radar-ACC car - if CP.flags & ToyotaFlags.DISABLE_RADAR.value: - communication_control = bytes([uds.SERVICE_TYPE.COMMUNICATION_CONTROL, uds.CONTROL_TYPE.ENABLE_RX_DISABLE_TX, uds.MESSAGE_TYPE.NORMAL]) - disable_ecu(can_recv, can_send, bus=0, addr=0x750, sub_addr=0xf, com_cont_req=communication_control) diff --git a/opendbc_repo/opendbc/car/toyota/radar_interface.py b/opendbc_repo/opendbc/car/toyota/radar_interface.py deleted file mode 100755 index 76dbbc44b4..0000000000 --- a/opendbc_repo/opendbc/car/toyota/radar_interface.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/env python3 -from opendbc.can import CANParser -from opendbc.car import Bus -from opendbc.car.structs import RadarData -from opendbc.car.toyota.values import DBC, TSS2_CAR -from opendbc.car.interfaces import RadarInterfaceBase - - -def _create_radar_can_parser(car_fingerprint): - if car_fingerprint in TSS2_CAR: - RADAR_A_MSGS = list(range(0x180, 0x190)) - RADAR_B_MSGS = list(range(0x190, 0x1a0)) - else: - RADAR_A_MSGS = list(range(0x210, 0x220)) - RADAR_B_MSGS = list(range(0x220, 0x230)) - - msg_a_n = len(RADAR_A_MSGS) - msg_b_n = len(RADAR_B_MSGS) - messages = list(zip(RADAR_A_MSGS + RADAR_B_MSGS, [20] * (msg_a_n + msg_b_n), strict=True)) - - return CANParser(DBC[car_fingerprint][Bus.radar], messages, 1) - -class RadarInterface(RadarInterfaceBase): - def __init__(self, CP): - super().__init__(CP) - self.track_id = 0 - - if CP.carFingerprint in TSS2_CAR: - self.RADAR_A_MSGS = list(range(0x180, 0x190)) - self.RADAR_B_MSGS = list(range(0x190, 0x1a0)) - else: - self.RADAR_A_MSGS = list(range(0x210, 0x220)) - self.RADAR_B_MSGS = list(range(0x220, 0x230)) - - self.valid_cnt = {key: 0 for key in self.RADAR_A_MSGS} - - self.rcp = None if CP.radarUnavailable else _create_radar_can_parser(CP.carFingerprint) - self.trigger_msg = self.RADAR_B_MSGS[-1] - self.updated_messages = set() - - def update(self, can_strings): - if self.rcp is None: - return super().update(None) - - vls = self.rcp.update(can_strings) - self.updated_messages.update(vls) - - if self.trigger_msg not in self.updated_messages: - return None - - rr = self._update(self.updated_messages) - self.updated_messages.clear() - - return rr - - def _update(self, updated_messages): - ret = RadarData() - if not self.rcp.can_valid: - ret.errors.canError = True - - for ii in sorted(updated_messages): - if ii in self.RADAR_A_MSGS: - cpt = self.rcp.vl[ii] - - if cpt['LONG_DIST'] >= 255 or cpt['NEW_TRACK']: - self.valid_cnt[ii] = 0 # reset counter - if cpt['VALID'] and cpt['LONG_DIST'] < 255: - self.valid_cnt[ii] += 1 - else: - self.valid_cnt[ii] = max(self.valid_cnt[ii] - 1, 0) - - score = self.rcp.vl[ii+16]['SCORE'] - # print ii, self.valid_cnt[ii], score, cpt['VALID'], cpt['LONG_DIST'], cpt['LAT_DIST'] - - # radar point only valid if it's a valid measurement and score is above 50 - if cpt['VALID'] or (score > 50 and cpt['LONG_DIST'] < 255 and self.valid_cnt[ii] > 0): - if ii not in self.pts or cpt['NEW_TRACK']: - self.pts[ii] = RadarData.RadarPoint() - self.pts[ii].trackId = self.track_id - self.track_id += 1 - self.pts[ii].dRel = cpt['LONG_DIST'] # from front of car - self.pts[ii].yRel = -cpt['LAT_DIST'] # in car frame's y axis, left is positive - self.pts[ii].vRel = cpt['REL_SPEED'] - self.pts[ii].vLead = self.pts[ii].vRel + self.v_ego - self.pts[ii].aRel = float('nan') - self.pts[ii].yvRel = 0 #float('nan') - self.pts[ii].measured = bool(cpt['VALID']) - else: - if ii in self.pts: - del self.pts[ii] - - ret.points = list(self.pts.values()) - return ret diff --git a/opendbc_repo/opendbc/car/toyota/tests/__init__.py b/opendbc_repo/opendbc/car/toyota/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py b/opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py deleted file mode 100755 index 333e7dca26..0000000000 --- a/opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env python3 -from collections import defaultdict -from opendbc.car.toyota.values import PLATFORM_CODE_ECUS, get_platform_codes -from opendbc.car.toyota.fingerprints import FW_VERSIONS - -if __name__ == "__main__": - parts_for_ecu: dict = defaultdict(set) - cars_for_code: dict = defaultdict(lambda: defaultdict(set)) - for car_model, ecus in FW_VERSIONS.items(): - print() - print(car_model) - for ecu in sorted(ecus): - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - platform_codes = get_platform_codes(ecus[ecu]) - parts_for_ecu[ecu] |= {code.split(b'-')[0] for code in platform_codes if code.count(b'-') > 1} - for code in platform_codes: - cars_for_code[ecu][b'-'.join(code.split(b'-')[:2])] |= {car_model} - print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') - print(f' Codes: {platform_codes}') - - print('\nECU parts:') - for ecu, parts in parts_for_ecu.items(): - print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}): {parts}') - - print('\nCar models vs. platform codes (no major versions):') - for ecu, codes in cars_for_code.items(): - print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') - for code, cars in codes.items(): - print(f' {code!r}: {sorted(cars)}') diff --git a/opendbc_repo/opendbc/car/toyota/tests/test_toyota.py b/opendbc_repo/opendbc/car/toyota/tests/test_toyota.py deleted file mode 100644 index 5ab47f3565..0000000000 --- a/opendbc_repo/opendbc/car/toyota/tests/test_toyota.py +++ /dev/null @@ -1,167 +0,0 @@ -from hypothesis import given, settings, strategies as st - -from opendbc.car import Bus -from opendbc.car.structs import CarParams -from opendbc.car.fw_versions import build_fw_dict -from opendbc.car.toyota.fingerprints import FW_VERSIONS -from opendbc.car.toyota.values import CAR, DBC, TSS2_CAR, ANGLE_CONTROL_CAR, RADAR_ACC_CAR, SECOC_CAR, \ - FW_QUERY_CONFIG, PLATFORM_CODE_ECUS, FUZZY_EXCLUDED_PLATFORMS, \ - get_platform_codes - -Ecu = CarParams.Ecu - - -def check_fw_version(fw_version: bytes) -> bool: - # TODO: just use the FW patterns, need to support all chunks - return b'?' not in fw_version and b'!' not in fw_version - - -class TestToyotaInterfaces: - def test_car_sets(self): - assert len(ANGLE_CONTROL_CAR - TSS2_CAR) == 0 - assert len(RADAR_ACC_CAR - TSS2_CAR) == 0 - - def test_lta_platforms(self): - # At this time, only RAV4 2023 is expected to use LTA/angle control - assert ANGLE_CONTROL_CAR == {CAR.TOYOTA_RAV4_TSS2_2023} - - def test_tss2_dbc(self): - # We make some assumptions about TSS2 platforms, - # like looking up certain signals only in this DBC - for car_model, dbc in DBC.items(): - if car_model in TSS2_CAR and car_model not in SECOC_CAR: - assert dbc[Bus.pt] == "toyota_nodsu_pt_generated" - - def test_essential_ecus(self, subtests): - # Asserts standard ECUs exist for each platform - common_ecus = {Ecu.fwdRadar, Ecu.fwdCamera} - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - present_ecus = {ecu[0] for ecu in ecus} - missing_ecus = common_ecus - present_ecus - assert len(missing_ecus) == 0 - - # Some exceptions for other common ECUs - if car_model not in (CAR.TOYOTA_ALPHARD_TSS2,): - assert Ecu.abs in present_ecus - - if car_model not in (CAR.TOYOTA_MIRAI,): - assert Ecu.engine in present_ecus - - if car_model not in (CAR.TOYOTA_PRIUS_V, CAR.LEXUS_CTH): - assert Ecu.eps in present_ecus - - -class TestToyotaFingerprint: - def test_non_essential_ecus(self, subtests): - # Ensures only the cars that have multiple engine ECUs are in the engine non-essential ECU list - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - engine_ecus = {ecu for ecu in ecus if ecu[0] == Ecu.engine} - assert (len(engine_ecus) > 1) == (car_model in FW_QUERY_CONFIG.non_essential_ecus[Ecu.engine]), \ - f"Car model unexpectedly {'not ' if len(engine_ecus) > 1 else ''}in non-essential list" - - def test_valid_fw_versions(self, subtests): - # Asserts all FW versions are valid - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for fws in ecus.values(): - for fw in fws: - assert check_fw_version(fw), fw - - # Tests for part numbers, platform codes, and sub-versions which Toyota will use to fuzzy - # fingerprint in the absence of full FW matches: - @settings(max_examples=100) - @given(data=st.data()) - def test_platform_codes_fuzzy_fw(self, data): - fw_strategy = st.lists(st.binary()) - fws = data.draw(fw_strategy) - get_platform_codes(fws) - - def test_platform_code_ecus_available(self, subtests): - # Asserts ECU keys essential for fuzzy fingerprinting are available on all platforms - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for platform_code_ecu in PLATFORM_CODE_ECUS: - if platform_code_ecu == Ecu.eps and car_model in (CAR.TOYOTA_PRIUS_V, CAR.LEXUS_CTH,): - continue - if platform_code_ecu == Ecu.abs and car_model in (CAR.TOYOTA_ALPHARD_TSS2,): - continue - assert platform_code_ecu in [e[0] for e in ecus] - - def test_fw_format(self, subtests): - # Asserts: - # - every supported ECU FW version returns one platform code - # - every supported ECU FW version has a part number - # - expected parsing of ECU sub-versions - - for car_model, ecus in FW_VERSIONS.items(): - with subtests.test(car_model=car_model.value): - for ecu, fws in ecus.items(): - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - codes = dict() - for fw in fws: - result = get_platform_codes([fw]) - # Check only one platform code and sub-version - assert 1 == len(result), f"Unable to parse FW: {fw}" - assert 1 == len(list(result.values())[0]), f"Unable to parse FW: {fw}" - codes |= result - - # Toyota places the ECU part number in their FW versions, assert all parsable - # Note that there is only one unique part number per ECU across the fleet, so this - # is not important for identification, just a sanity check. - assert all(code.count(b"-") > 1 for code in codes), f"FW does not have part number: {fw} {codes}" - - def test_platform_codes_spot_check(self): - # Asserts basic platform code parsing behavior for a few cases - results = get_platform_codes([ - b"F152607140\x00\x00\x00\x00\x00\x00", - b"F152607171\x00\x00\x00\x00\x00\x00", - b"F152607110\x00\x00\x00\x00\x00\x00", - b"F152607180\x00\x00\x00\x00\x00\x00", - ]) - assert results == {b"F1526-07-1": {b"10", b"40", b"71", b"80"}} - - results = get_platform_codes([ - b"\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00", - b"\x028646F4104100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00", - ]) - assert results == {b"8646F-41-04": {b"100"}} - - # Short version has no part number - results = get_platform_codes([ - b"\x0235870000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00", - b"\x0235883000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00", - ]) - assert results == {b"58-70": {b"000"}, b"58-83": {b"000"}} - - results = get_platform_codes([ - b"F152607110\x00\x00\x00\x00\x00\x00", - b"F152607140\x00\x00\x00\x00\x00\x00", - b"\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00", - b"\x0235879000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00", - ]) - assert results == {b"F1526-07-1": {b"10", b"40"}, b"8646F-41-04": {b"100"}, b"58-79": {b"000"}} - - def test_fuzzy_excluded_platforms(self): - # Asserts a list of platforms that will not fuzzy fingerprint with platform codes due to them being shared. - platforms_with_shared_codes = set() - for platform, fw_by_addr in FW_VERSIONS.items(): - car_fw = [] - for ecu, fw_versions in fw_by_addr.items(): - ecu_name, addr, sub_addr = ecu - for fw in fw_versions: - car_fw.append(CarParams.CarFw(ecu=ecu_name, fwVersion=fw, address=addr, - subAddress=0 if sub_addr is None else sub_addr)) - - CP = CarParams(carFw=car_fw) - matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, FW_VERSIONS) - if len(matches) == 1: - assert list(matches)[0] == platform - else: - # If a platform has multiple matches, add it and its matches - platforms_with_shared_codes |= {str(platform), *matches} - - assert platforms_with_shared_codes == FUZZY_EXCLUDED_PLATFORMS, (len(platforms_with_shared_codes), len(FW_VERSIONS)) diff --git a/opendbc_repo/opendbc/car/toyota/toyotacan.py b/opendbc_repo/opendbc/car/toyota/toyotacan.py deleted file mode 100644 index bd406904e0..0000000000 --- a/opendbc_repo/opendbc/car/toyota/toyotacan.py +++ /dev/null @@ -1,159 +0,0 @@ -from opendbc.car.structs import CarParams - -SteerControlType = CarParams.SteerControlType - - -def create_steer_command(packer, steer, steer_req): - """Creates a CAN message for the Toyota Steer Command.""" - - values = { - "STEER_REQUEST": steer_req, - "STEER_TORQUE_CMD": steer, - "SET_ME_1": 1, - } - return packer.make_can_msg("STEERING_LKA", 0, values) - - -def create_lta_steer_command(packer, steer_control_type, steer_angle, steer_req, frame, torque_wind_down): - """Creates a CAN message for the Toyota LTA Steer Command.""" - - values = { - "COUNTER": frame + 128, - "SETME_X1": 1, # suspected LTA feature availability - # 1 for TSS 2.5 cars, 3 for TSS 2.0. Send based on whether we're using LTA for lateral control - "SETME_X3": 1 if steer_control_type == SteerControlType.angle else 3, - "PERCENTAGE": 100, - "TORQUE_WIND_DOWN": torque_wind_down, - "ANGLE": 0, - "STEER_ANGLE_CMD": steer_angle, - "STEER_REQUEST": steer_req, - "STEER_REQUEST_2": steer_req, - "CLEAR_HOLD_STEERING_ALERT": 0, - } - return packer.make_can_msg("STEERING_LTA", 0, values) - - -def create_lta_steer_command_2(packer, frame): - values = { - "COUNTER": frame + 128, - } - return packer.make_can_msg("STEERING_LTA_2", 0, values) - - -def create_accel_command(packer, accel, pcm_cancel, permit_braking, standstill_req, lead, acc_type, fcw_alert, distance): - # TODO: find the exact canceling bit that does not create a chime - values = { - "ACCEL_CMD": accel, - "ACC_TYPE": acc_type, - "DISTANCE": distance, - "MINI_CAR": lead, - "PERMIT_BRAKING": permit_braking, - "RELEASE_STANDSTILL": not standstill_req, - "CANCEL_REQ": pcm_cancel, - "ALLOW_LONG_PRESS": 2, # 1, - "ACC_CUT_IN": fcw_alert, # only shown when ACC enabled - } - return packer.make_can_msg("ACC_CONTROL", 0, values) - - -def create_pcs_commands(packer, accel, active, mass): - values1 = { - "COUNTER": 0, - "FORCE": round(min(accel, 0) * mass * 2), - "STATE": 3 if active else 0, - "BRAKE_STATUS": 0, - "PRECOLLISION_ACTIVE": 1 if active else 0, - } - msg1 = packer.make_can_msg("PRE_COLLISION", 0, values1) - - values2 = { - "DSS1GDRV": min(accel, 0), # accel - "PCSALM": 1 if active else 0, # goes high same time as PRECOLLISION_ACTIVE - "IBTRGR": 1 if active else 0, # unknown - "PBATRGR": 1 if active else 0, # noisy actuation bit? - "PREFILL": 1 if active else 0, # goes on and off before DSS1GDRV - "AVSTRGR": 1 if active else 0, - } - msg2 = packer.make_can_msg("PRE_COLLISION_2", 0, values2) - - return [msg1, msg2] - - -def create_acc_cancel_command(packer): - values = { - "GAS_RELEASED": 0, - "CRUISE_ACTIVE": 0, - "ACC_BRAKING": 0, - "ACCEL_NET": 0, - "CRUISE_STATE": 0, - "CANCEL_REQ": 1, - } - return packer.make_can_msg("PCM_CRUISE", 0, values) - - -def create_fcw_command(packer, fcw): - values = { - "PCS_INDICATOR": 1, # PCS turned off - "FCW": fcw, - "SET_ME_X20": 0x20, - "SET_ME_X10": 0x10, - "PCS_OFF": 1, - "PCS_SENSITIVITY": 0, - } - return packer.make_can_msg("PCS_HUD", 0, values) - - -def create_ui_command(packer, steer, chime, left_line, right_line, left_lane_depart, right_lane_depart, enabled, stock_lkas_hud): - values = { - "TWO_BEEPS": chime, - "LDA_ALERT": steer, - "RIGHT_LINE": 3 if right_lane_depart else 1 if right_line else 2, - "LEFT_LINE": 3 if left_lane_depart else 1 if left_line else 2, - "BARRIERS": 1 if enabled else 0, - - # static signals - "SET_ME_X02": 2, - "SET_ME_X01": 1, - "LKAS_STATUS": 1, - "REPEATED_BEEPS": 0, - "LANE_SWAY_FLD": 7, - "LANE_SWAY_BUZZER": 0, - "LANE_SWAY_WARNING": 0, - "LDA_FRONT_CAMERA_BLOCKED": 0, - "TAKE_CONTROL": 0, - "LANE_SWAY_SENSITIVITY": 2, - "LANE_SWAY_TOGGLE": 1, - "LDA_ON_MESSAGE": 0, - "LDA_MESSAGES": 0, - "LDA_SA_TOGGLE": 1, - "LDA_SENSITIVITY": 2, - "LDA_UNAVAILABLE": 0, - "LDA_MALFUNCTION": 0, - "LDA_UNAVAILABLE_QUIET": 0, - "ADJUSTING_CAMERA": 0, - "LDW_EXIST": 1, - } - - # lane sway functionality - # not all cars have LKAS_HUD — update with camera values if available - if len(stock_lkas_hud): - values.update({s: stock_lkas_hud[s] for s in [ - "LANE_SWAY_FLD", - "LANE_SWAY_BUZZER", - "LANE_SWAY_WARNING", - "LANE_SWAY_SENSITIVITY", - "LANE_SWAY_TOGGLE", - ]}) - - return packer.make_can_msg("LKAS_HUD", 0, values) - - -def toyota_checksum(address: int, sig, d: bytearray) -> int: - s = len(d) - addr = address - while addr: - s += addr & 0xFF - addr >>= 8 - for i in range(len(d) - 1): - s += d[i] - return s & 0xFF diff --git a/opendbc_repo/opendbc/car/toyota/values.py b/opendbc_repo/opendbc/car/toyota/values.py deleted file mode 100644 index 11b0b15f47..0000000000 --- a/opendbc_repo/opendbc/car/toyota/values.py +++ /dev/null @@ -1,632 +0,0 @@ -import re -from collections import defaultdict -from dataclasses import dataclass, field -from enum import Enum, IntFlag - -from opendbc.car import Bus, CarSpecs, PlatformConfig, Platforms, AngleSteeringLimits -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.structs import CarParams -from opendbc.car.docs_definitions import CarFootnote, CarDocs, Column, CarParts, CarHarness -from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries - -Ecu = CarParams.Ecu -MIN_ACC_SPEED = 19. * CV.MPH_TO_MS -PEDAL_TRANSITION = 10. * CV.MPH_TO_MS - - -class CarControllerParams: - STEER_STEP = 1 - STEER_MAX = 1500 - STEER_ERROR_MAX = 350 # max delta between torque cmd and torque motor - - # Lane Tracing Assist (LTA) control limits - ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( - # EPS ignores commands above this angle and causes PCS to fault - 94.9461, # deg - # Assuming a steering ratio of 13.7: - # Limit to ~2.0 m/s^3 up (7.5 deg/s), ~3.5 m/s^3 down (13 deg/s) at 75 mph - # Worst case, the low speed limits will allow ~4.0 m/s^3 up (15 deg/s) and ~4.9 m/s^3 down (18 deg/s) at 75 mph, - # however the EPS has its own internal limits at all speeds which are less than that: - # Observed internal torque rate limit on TSS 2.5 Camry and RAV4 is ~1500 units/sec up and down when using LTA - ([5, 25], [0.3, 0.15]), - ([5, 25], [0.36, 0.26]), - ) - - MAX_LTA_DRIVER_TORQUE_ALLOWANCE = 150 # slightly above steering pressed allows some resistance when changing lanes - - def __init__(self, CP): - if CP.flags & ToyotaFlags.RAISED_ACCEL_LIMIT: - self.ACCEL_MAX = 2.0 - else: - self.ACCEL_MAX = 1.5 # m/s2, lower than allowed 2.0 m/s^2 for tuning reasons - self.ACCEL_MIN = -3.5 # m/s2 - - if CP.lateralTuning.which() == 'torque': - self.STEER_DELTA_UP = 15 # 1.0s time to peak torque - self.STEER_DELTA_DOWN = 25 # always lower than 45 otherwise the Rav4 faults (Prius seems ok with 50) - else: - self.STEER_DELTA_UP = 10 # 1.5s time to peak torque - self.STEER_DELTA_DOWN = 25 # always lower than 45 otherwise the Rav4 faults (Prius seems ok with 50) - - -class ToyotaSafetyFlags(IntFlag): - # first byte is for EPS scaling factor - ALT_BRAKE = (1 << 8) - STOCK_LONGITUDINAL = (2 << 8) - LTA = (4 << 8) - SECOC = (8 << 8) - - -class ToyotaFlags(IntFlag): - # Detected flags - HYBRID = 1 - DISABLE_RADAR = 4 - - # Static flags - TSS2 = 8 - NO_DSU = 16 - UNSUPPORTED_DSU = 32 - RADAR_ACC = 64 - # these cars use the Lane Tracing Assist (LTA) message for lateral control - ANGLE_CONTROL = 128 - NO_STOP_TIMER = 256 - # these cars are speculated to allow stop and go when the DSU is unplugged - SNG_WITHOUT_DSU = 512 - # these cars can utilize 2.0 m/s^2 - RAISED_ACCEL_LIMIT = 1024 - SECOC = 2048 - -class Footnote(Enum): - CAMRY = CarFootnote( - "openpilot operates above 28mph for Camry 4CYL L, 4CYL LE and 4CYL SE which don't have Full-Speed Range Dynamic Radar Cruise Control.", - Column.FSR_LONGITUDINAL) - - -@dataclass -class ToyotaCarDocs(CarDocs): - package: str = "All" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.toyota_a])) - -def dbc_dict(pt, radar): - return {Bus.pt: pt, Bus.radar: radar} - -@dataclass -class ToyotaTSS2PlatformConfig(PlatformConfig): - dbc_dict: dict = field(default_factory=lambda: dbc_dict('toyota_nodsu_pt_generated', 'toyota_tss2_adas')) - - def init(self): - self.flags |= ToyotaFlags.TSS2 | ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.NO_DSU - - if self.flags & ToyotaFlags.RADAR_ACC: - self.dbc_dict = {Bus.pt: 'toyota_nodsu_pt_generated'} - -@dataclass -class ToyotaSecOCPlatformConfig(PlatformConfig): - dbc_dict: dict = field(default_factory=lambda: dbc_dict('toyota_secoc_pt_generated', 'toyota_tss2_adas')) - - def init(self): - # don't expose car docs until SecOC cars can be suppressed from the comma website - self.car_docs = [] - - self.flags |= ToyotaFlags.TSS2 | ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.NO_DSU | ToyotaFlags.SECOC - - if self.flags & ToyotaFlags.RADAR_ACC: - self.dbc_dict = {Bus.pt: 'toyota_secoc_pt_generated'} - - -class CAR(Platforms): - # Toyota - TOYOTA_ALPHARD_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota Alphard 2019-20"), - ToyotaCarDocs("Toyota Alphard Hybrid 2021"), - ], - CarSpecs(mass=4305. * CV.LB_TO_KG, wheelbase=3.0, steerRatio=14.2, tireStiffnessFactor=0.444), - ) - TOYOTA_AVALON = PlatformConfig( - [ - ToyotaCarDocs("Toyota Avalon 2016", "Toyota Safety Sense P"), - ToyotaCarDocs("Toyota Avalon 2017-18"), - ], - CarSpecs(mass=3505. * CV.LB_TO_KG, wheelbase=2.82, steerRatio=14.8, tireStiffnessFactor=0.7983), - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - ) - TOYOTA_AVALON_2019 = PlatformConfig( - [ - ToyotaCarDocs("Toyota Avalon 2019-21"), - ToyotaCarDocs("Toyota Avalon Hybrid 2019-21"), - ], - TOYOTA_AVALON.specs, - dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), - ) - TOYOTA_AVALON_TSS2 = ToyotaTSS2PlatformConfig( # TSS 2.5 - [ - ToyotaCarDocs("Toyota Avalon 2022"), - ToyotaCarDocs("Toyota Avalon Hybrid 2022"), - ], - TOYOTA_AVALON.specs, - ) - TOYOTA_CAMRY = PlatformConfig( - [ - ToyotaCarDocs("Toyota Camry 2018-20", video="https://www.youtube.com/watch?v=fkcjviZY9CM", footnotes=[Footnote.CAMRY]), - ToyotaCarDocs("Toyota Camry Hybrid 2018-20", video="https://www.youtube.com/watch?v=Q2DYY0AWKgk"), - ], - CarSpecs(mass=3400. * CV.LB_TO_KG, wheelbase=2.82448, steerRatio=13.7, tireStiffnessFactor=0.7933), - dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.NO_DSU, - ) - TOYOTA_CAMRY_TSS2 = ToyotaTSS2PlatformConfig( # TSS 2.5 - [ - ToyotaCarDocs("Toyota Camry 2021-24", footnotes=[Footnote.CAMRY]), - ToyotaCarDocs("Toyota Camry Hybrid 2021-24"), - ], - TOYOTA_CAMRY.specs, - ) - TOYOTA_CHR = PlatformConfig( - [ - ToyotaCarDocs("Toyota C-HR 2017-20"), - ToyotaCarDocs("Toyota C-HR Hybrid 2017-20"), - ], - CarSpecs(mass=3300. * CV.LB_TO_KG, wheelbase=2.63906, steerRatio=13.6, tireStiffnessFactor=0.7933), - dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.NO_DSU, - ) - TOYOTA_CHR_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota C-HR 2021"), - ToyotaCarDocs("Toyota C-HR Hybrid 2021-22"), - ], - TOYOTA_CHR.specs, - flags=ToyotaFlags.RADAR_ACC, - ) - TOYOTA_COROLLA = PlatformConfig( - [ToyotaCarDocs("Toyota Corolla 2017-19")], - CarSpecs(mass=2860. * CV.LB_TO_KG, wheelbase=2.7, steerRatio=18.27, tireStiffnessFactor=0.444), - dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), - ) - # LSS2 Lexus UX Hybrid is same as a TSS2 Corolla Hybrid - TOYOTA_COROLLA_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota Corolla 2020-22", video="https://www.youtube.com/watch?v=_66pXk0CBYA"), - ToyotaCarDocs("Toyota Corolla Cross (Non-US only) 2020-23", min_enable_speed=7.5), - ToyotaCarDocs("Toyota Corolla Hatchback 2019-22", video="https://www.youtube.com/watch?v=_66pXk0CBYA"), - # Hybrid platforms - ToyotaCarDocs("Toyota Corolla Hybrid 2020-22"), - ToyotaCarDocs("Toyota Corolla Hybrid (South America only) 2020-23", min_enable_speed=7.5), - ToyotaCarDocs("Toyota Corolla Cross Hybrid (Non-US only) 2020-22", min_enable_speed=7.5), - ToyotaCarDocs("Lexus UX Hybrid 2019-24"), - ], - CarSpecs(mass=3060. * CV.LB_TO_KG, wheelbase=2.67, steerRatio=13.9, tireStiffnessFactor=0.444), - ) - TOYOTA_HIGHLANDER = PlatformConfig( - [ - ToyotaCarDocs("Toyota Highlander 2017-19", video="https://www.youtube.com/watch?v=0wS0wXSLzoo"), - ToyotaCarDocs("Toyota Highlander Hybrid 2017-19"), - ], - CarSpecs(mass=4516. * CV.LB_TO_KG, wheelbase=2.8194, steerRatio=16.0, tireStiffnessFactor=0.8), - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.SNG_WITHOUT_DSU, - ) - TOYOTA_HIGHLANDER_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota Highlander 2020-23"), - ToyotaCarDocs("Toyota Highlander Hybrid 2020-23"), - ], - TOYOTA_HIGHLANDER.specs, - ) - TOYOTA_PRIUS = PlatformConfig( - [ - ToyotaCarDocs("Toyota Prius 2016", "Toyota Safety Sense P", video="https://www.youtube.com/watch?v=8zopPJI8XQ0"), - ToyotaCarDocs("Toyota Prius 2017-20", video="https://www.youtube.com/watch?v=8zopPJI8XQ0"), - ToyotaCarDocs("Toyota Prius Prime 2017-20", video="https://www.youtube.com/watch?v=8zopPJI8XQ0"), - ], - CarSpecs(mass=3045. * CV.LB_TO_KG, wheelbase=2.7, steerRatio=15.74, tireStiffnessFactor=0.6371), - dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), - ) - TOYOTA_PRIUS_V = PlatformConfig( - [ToyotaCarDocs("Toyota Prius v 2017", "Toyota Safety Sense P", min_enable_speed=MIN_ACC_SPEED)], - CarSpecs(mass=3340. * CV.LB_TO_KG, wheelbase=2.78, steerRatio=17.4, tireStiffnessFactor=0.5533), - dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.SNG_WITHOUT_DSU, - ) - TOYOTA_PRIUS_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota Prius 2021-22", video="https://www.youtube.com/watch?v=J58TvCpUd4U"), - ToyotaCarDocs("Toyota Prius Prime 2021-22", video="https://www.youtube.com/watch?v=J58TvCpUd4U"), - ], - CarSpecs(mass=3115. * CV.LB_TO_KG, wheelbase=2.70002, steerRatio=13.4, tireStiffnessFactor=0.6371), - ) - TOYOTA_RAV4 = PlatformConfig( - [ - ToyotaCarDocs("Toyota RAV4 2016", "Toyota Safety Sense P"), - ToyotaCarDocs("Toyota RAV4 2017-18") - ], - CarSpecs(mass=3650. * CV.LB_TO_KG, wheelbase=2.65, steerRatio=16.88, tireStiffnessFactor=0.5533), - dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), - ) - TOYOTA_RAV4H = PlatformConfig( - [ - ToyotaCarDocs("Toyota RAV4 Hybrid 2016", "Toyota Safety Sense P", video="https://youtu.be/LhT5VzJVfNI?t=26"), - ToyotaCarDocs("Toyota RAV4 Hybrid 2017-18", video="https://youtu.be/LhT5VzJVfNI?t=26") - ], - TOYOTA_RAV4.specs, - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - # Note that the ICE RAV4 does not respect positive acceleration commands under 19 mph - flags=ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.SNG_WITHOUT_DSU, - ) - TOYOTA_RAV4_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota RAV4 2019-21", video="https://www.youtube.com/watch?v=wJxjDd42gGA"), - ToyotaCarDocs("Toyota RAV4 Hybrid 2019-21"), - ], - CarSpecs(mass=3585. * CV.LB_TO_KG, wheelbase=2.68986, steerRatio=14.3, tireStiffnessFactor=0.7933), - ) - TOYOTA_RAV4_TSS2_2022 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota RAV4 2022"), - ToyotaCarDocs("Toyota RAV4 Hybrid 2022", video="https://youtu.be/U0nH9cnrFB0"), - ], - TOYOTA_RAV4_TSS2.specs, - flags=ToyotaFlags.RADAR_ACC, - ) - TOYOTA_RAV4_TSS2_2023 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Toyota RAV4 2023-25"), - ToyotaCarDocs("Toyota RAV4 Hybrid 2023-25", video="https://youtu.be/4eIsEq4L4Ng"), - ], - TOYOTA_RAV4_TSS2.specs, - flags=ToyotaFlags.RADAR_ACC | ToyotaFlags.ANGLE_CONTROL, - ) - TOYOTA_RAV4_PRIME = ToyotaSecOCPlatformConfig( - [ToyotaCarDocs("Toyota RAV4 Prime 2021-23", min_enable_speed=MIN_ACC_SPEED)], - CarSpecs(mass=4372. * CV.LB_TO_KG, wheelbase=2.68, steerRatio=16.88, tireStiffnessFactor=0.5533), - ) - TOYOTA_YARIS = ToyotaSecOCPlatformConfig( - [ToyotaCarDocs("Toyota Yaris 2023 (Non-US only)", min_enable_speed=MIN_ACC_SPEED)], - CarSpecs(mass=1170, wheelbase=2.55, steerRatio=14.80, tireStiffnessFactor=0.5533), - flags=ToyotaFlags.RADAR_ACC, - ) - TOYOTA_MIRAI = ToyotaTSS2PlatformConfig( # TSS 2.5 - [ToyotaCarDocs("Toyota Mirai 2021")], - CarSpecs(mass=4300. * CV.LB_TO_KG, wheelbase=2.91, steerRatio=14.8, tireStiffnessFactor=0.8), - ) - TOYOTA_SIENNA = PlatformConfig( - [ToyotaCarDocs("Toyota Sienna 2018-20", video="https://www.youtube.com/watch?v=q1UPOo4Sh68", min_enable_speed=MIN_ACC_SPEED)], - CarSpecs(mass=4590. * CV.LB_TO_KG, wheelbase=3.03, steerRatio=15.5, tireStiffnessFactor=0.444), - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.NO_STOP_TIMER, - ) - TOYOTA_SIENNA_4TH_GEN = ToyotaSecOCPlatformConfig( - [ToyotaCarDocs("Toyota Sienna 2021-23", min_enable_speed=MIN_ACC_SPEED)], - CarSpecs(mass=4625. * CV.LB_TO_KG, wheelbase=3.06, steerRatio=17.8, tireStiffnessFactor=0.444), - ) - - # Lexus - LEXUS_CTH = PlatformConfig( - [ToyotaCarDocs("Lexus CT Hybrid 2017-18", "Lexus Safety System+")], - CarSpecs(mass=3108. * CV.LB_TO_KG, wheelbase=2.6, steerRatio=18.6, tireStiffnessFactor=0.517), - dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), - ) - LEXUS_ES = PlatformConfig( - [ - ToyotaCarDocs("Lexus ES 2017-18"), - ToyotaCarDocs("Lexus ES Hybrid 2017-18"), - ], - CarSpecs(mass=3677. * CV.LB_TO_KG, wheelbase=2.8702, steerRatio=16.0, tireStiffnessFactor=0.444), - dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), - ) - LEXUS_ES_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Lexus ES 2019-24"), - ToyotaCarDocs("Lexus ES Hybrid 2019-25", video="https://youtu.be/BZ29osRVJeg?t=12"), - ], - LEXUS_ES.specs, - ) - LEXUS_IS = PlatformConfig( - [ToyotaCarDocs("Lexus IS 2017-19")], - CarSpecs(mass=3736.8 * CV.LB_TO_KG, wheelbase=2.79908, steerRatio=13.3, tireStiffnessFactor=0.444), - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.UNSUPPORTED_DSU, - ) - LEXUS_IS_TSS2 = ToyotaTSS2PlatformConfig( - [ToyotaCarDocs("Lexus IS 2022-23")], - LEXUS_IS.specs, - ) - LEXUS_NX = PlatformConfig( - [ - ToyotaCarDocs("Lexus NX 2018-19"), - ToyotaCarDocs("Lexus NX Hybrid 2018-19"), - ], - CarSpecs(mass=4070. * CV.LB_TO_KG, wheelbase=2.66, steerRatio=14.7, tireStiffnessFactor=0.444), - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - ) - LEXUS_NX_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Lexus NX 2020-21"), - ToyotaCarDocs("Lexus NX Hybrid 2020-21"), - ], - LEXUS_NX.specs, - ) - LEXUS_LC_TSS2 = ToyotaTSS2PlatformConfig( - [ToyotaCarDocs("Lexus LC 2024")], - CarSpecs(mass=4500. * CV.LB_TO_KG, wheelbase=2.87, steerRatio=13.0, tireStiffnessFactor=0.444), - ) - LEXUS_RC = PlatformConfig( - [ToyotaCarDocs("Lexus RC 2018-20")], - LEXUS_IS.specs, - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.UNSUPPORTED_DSU, - ) - LEXUS_RX = PlatformConfig( - [ - ToyotaCarDocs("Lexus RX 2016", "Lexus Safety System+"), - ToyotaCarDocs("Lexus RX 2017-19"), - # Hybrid platforms - ToyotaCarDocs("Lexus RX Hybrid 2016", "Lexus Safety System+"), - ToyotaCarDocs("Lexus RX Hybrid 2017-19"), - ], - CarSpecs(mass=4481. * CV.LB_TO_KG, wheelbase=2.79, steerRatio=16., tireStiffnessFactor=0.5533), - dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), - ) - LEXUS_RX_TSS2 = ToyotaTSS2PlatformConfig( - [ - ToyotaCarDocs("Lexus RX 2020-22"), - ToyotaCarDocs("Lexus RX Hybrid 2020-22"), - ], - LEXUS_RX.specs, - ) - LEXUS_GS_F = PlatformConfig( - [ToyotaCarDocs("Lexus GS F 2016")], - CarSpecs(mass=4034. * CV.LB_TO_KG, wheelbase=2.84988, steerRatio=13.3, tireStiffnessFactor=0.444), - dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), - flags=ToyotaFlags.UNSUPPORTED_DSU, - ) - - -# (addr, cars, bus, 1/freq*100, vl) -STATIC_DSU_MSGS = [ - (0x128, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON), \ - 1, 3, b'\xf4\x01\x90\x83\x00\x37'), - (0x128, (CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES), 1, 3, b'\x03\x00\x20\x00\x00\x52'), - (0x141, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, - CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 1, 2, b'\x00\x00\x00\x46'), - (0x160, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, - CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 1, 7, b'\x00\x00\x08\x12\x01\x31\x9c\x51'), - (0x161, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON, CAR.TOYOTA_PRIUS_V), - 1, 7, b'\x00\x1e\x00\x00\x00\x80\x07'), - (0X161, (CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES), 1, 7, b'\x00\x1e\x00\xd4\x00\x00\x5b'), - (0x283, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, - CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 0, 3, b'\x00\x00\x00\x00\x00\x00\x8c'), - (0x2E6, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX), 0, 3, b'\xff\xf8\x00\x08\x7f\xe0\x00\x4e'), - (0x2E7, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX), 0, 3, b'\xa8\x9c\x31\x9c\x00\x00\x00\x02'), - (0x33E, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX), 0, 20, b'\x0f\xff\x26\x40\x00\x1f\x00'), - (0x344, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, - CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 0, 5, b'\x00\x00\x01\x00\x00\x00\x00\x50'), - (0x365, (CAR.TOYOTA_PRIUS, CAR.LEXUS_NX, CAR.TOYOTA_HIGHLANDER), 0, 20, b'\x00\x00\x00\x80\x03\x00\x08'), - (0x365, (CAR.TOYOTA_RAV4, CAR.TOYOTA_RAV4H, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.LEXUS_RX, - CAR.TOYOTA_PRIUS_V), 0, 20, b'\x00\x00\x00\x80\xfc\x00\x08'), - (0x366, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_HIGHLANDER), 0, 20, b'\x00\x00\x4d\x82\x40\x02\x00'), - (0x366, (CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), - 0, 20, b'\x00\x72\x07\xff\x09\xfe\x00'), - (0x470, (CAR.TOYOTA_PRIUS, CAR.LEXUS_RX), 1, 100, b'\x00\x00\x02\x7a'), - (0x470, (CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_RAV4H, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 1, 100, b'\x00\x00\x01\x79'), - (0x4CB, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, - CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 0, 100, b'\x0c\x00\x00\x00\x00\x00\x00\x00'), -] - - -def get_platform_codes(fw_versions: list[bytes]) -> dict[bytes, set[bytes]]: - # Returns sub versions in a dict so comparisons can be made within part-platform-major_version combos - codes = defaultdict(set) # Optional[part]-platform-major_version: set of sub_version - for fw in fw_versions: - # FW versions returned from UDS queries can return multiple fields/chunks of data (different ECU calibrations, different data?) - # and are prefixed with a byte that describes how many chunks of data there are. - # But FW returned from KWP requires querying of each sub-data id and does not have a length prefix. - - length_code = 1 - length_code_match = FW_LEN_CODE.search(fw) - if length_code_match is not None: - length_code = length_code_match.group()[0] - fw = fw[1:] - - # fw length should be multiple of 16 bytes (per chunk, even if no length code), skip parsing if unexpected length - if length_code * FW_CHUNK_LEN != len(fw): - continue - - chunks = [fw[FW_CHUNK_LEN * i:FW_CHUNK_LEN * i + FW_CHUNK_LEN].strip(b'\x00 ') for i in range(length_code)] - - # only first is considered for now since second is commonly shared (TODO: understand that) - first_chunk = chunks[0] - if len(first_chunk) == 8: - # TODO: no part number, but some short chunks have it in subsequent chunks - fw_match = SHORT_FW_PATTERN.search(first_chunk) - if fw_match is not None: - platform, major_version, sub_version = fw_match.groups() - codes[b'-'.join((platform, major_version))].add(sub_version) - - elif len(first_chunk) == 10: - fw_match = MEDIUM_FW_PATTERN.search(first_chunk) - if fw_match is not None: - part, platform, major_version, sub_version = fw_match.groups() - codes[b'-'.join((part, platform, major_version))].add(sub_version) - - elif len(first_chunk) == 12: - fw_match = LONG_FW_PATTERN.search(first_chunk) - if fw_match is not None: - part, platform, major_version, sub_version = fw_match.groups() - codes[b'-'.join((part, platform, major_version))].add(sub_version) - - return dict(codes) - - -def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: - candidates = set() - - for candidate, fws in offline_fw_versions.items(): - # Keep track of ECUs which pass all checks (platform codes, within sub-version range) - valid_found_ecus = set() - valid_expected_ecus = {ecu[1:] for ecu in fws if ecu[0] in PLATFORM_CODE_ECUS} - for ecu, expected_versions in fws.items(): - addr = ecu[1:] - # Only check ECUs expected to have platform codes - if ecu[0] not in PLATFORM_CODE_ECUS: - continue - - # Expected platform codes & versions - expected_platform_codes = get_platform_codes(expected_versions) - - # Found platform codes & versions - found_platform_codes = get_platform_codes(live_fw_versions.get(addr, set())) - - # Check part number + platform code + major version matches for any found versions - # Platform codes and major versions change for different physical parts, generation, API, etc. - # Sub-versions are incremented for minor recalls, do not need to be checked. - if not any(found_platform_code in expected_platform_codes for found_platform_code in found_platform_codes): - break - - valid_found_ecus.add(addr) - - # If all live ECUs pass all checks for candidate, add it as a match - if valid_expected_ecus.issubset(valid_found_ecus): - candidates.add(candidate) - - return {str(c) for c in (candidates - FUZZY_EXCLUDED_PLATFORMS)} - - -# Regex patterns for parsing more general platform-specific identifiers from FW versions. -# - Part number: Toyota part number (usually last character needs to be ignored to find a match). -# Each ECU address has just one part number. -# - Platform: usually multiple codes per an openpilot platform, however this is the least variable and -# is usually shared across ECUs and model years signifying this describes something about the specific platform. -# This describes more generational changes (TSS-P vs TSS2), or manufacture region. -# - Major version: second least variable part of the FW version. Seen splitting cars by model year/API such as -# RAV4 2022/2023 and Avalon. Used to differentiate cars where API has changed slightly, but is not a generational change. -# It is important to note that these aren't always consecutive, for example: -# Avalon 2016-18's fwdCamera has these major versions: 01, 03 while 2019 has: 02 -# - Sub version: exclusive to major version, but shared with other cars. Should only be used for further filtering. -# Seen bumped in TSB FW updates, and describes other minor differences. -SHORT_FW_PATTERN = re.compile(b'[A-Z0-9](?P[A-Z0-9]{2})(?P[A-Z0-9]{2})(?P[A-Z0-9]{3})') -MEDIUM_FW_PATTERN = re.compile(b'(?P[A-Z0-9]{5})(?P[A-Z0-9]{2})(?P[A-Z0-9]{1})(?P[A-Z0-9]{2})') -LONG_FW_PATTERN = re.compile(b'(?P[A-Z0-9]{5})(?P[A-Z0-9]{2})(?P[A-Z0-9]{2})(?P[A-Z0-9]{3})') -FW_LEN_CODE = re.compile(b'^[\x01-\x03]') # highest seen is 3 chunks, 16 bytes each -FW_CHUNK_LEN = 16 - -# List of ECUs that are most unique across openpilot platforms -# - fwdCamera: describes actual features related to ADAS. For example, on the Avalon it describes -# when TSS-P became standard, whether the car supports stop and go, and whether it's TSS2. -# On the RAV4, it describes the move to the radar doing ACC, and the use of LTA for lane keeping. -# Note that the platform codes & major versions do not describe features in plain text, only with -# matching against other seen FW versions in the database they can describe features. -# - fwdRadar: sanity check against fwdCamera, commonly shares a platform code. -# For example the RAV4 2022's new radar architecture is shown for both with platform code. -# - abs: differentiates hybrid/ICE on most cars (Corolla TSS2 is an exception, not used due to hybrid platform combination) -# - eps: describes lateral API changes for the EPS, such as using LTA for lane keeping and rejecting LKA messages -PLATFORM_CODE_ECUS = (Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps) - -# These platforms have at least one platform code for all ECUs shared with another platform. -FUZZY_EXCLUDED_PLATFORMS: set[CAR] = set() - -# Some ECUs that use KWP2000 have their FW versions on non-standard data identifiers. -# Toyota diagnostic software first gets the supported data ids, then queries them one by one. -# For example, sends: 0x1a8800, receives: 0x1a8800010203, queries: 0x1a8801, 0x1a8802, 0x1a8803 -TOYOTA_VERSION_REQUEST_KWP = b'\x1a\x88\x01' -TOYOTA_VERSION_RESPONSE_KWP = b'\x5a\x88\x01' - -FW_QUERY_CONFIG = FwQueryConfig( - # TODO: look at data to whitelist new ECUs effectively - requests=[ - Request( - [StdQueries.SHORT_TESTER_PRESENT_REQUEST, TOYOTA_VERSION_REQUEST_KWP], - [StdQueries.SHORT_TESTER_PRESENT_RESPONSE, TOYOTA_VERSION_RESPONSE_KWP], - whitelist_ecus=[Ecu.fwdCamera, Ecu.fwdRadar, Ecu.dsu, Ecu.abs, Ecu.eps, Ecu.srs, Ecu.transmission, Ecu.hvac], - bus=0, - ), - Request( - [StdQueries.SHORT_TESTER_PRESENT_REQUEST, StdQueries.OBD_VERSION_REQUEST], - [StdQueries.SHORT_TESTER_PRESENT_RESPONSE, StdQueries.OBD_VERSION_RESPONSE], - whitelist_ecus=[Ecu.engine, Ecu.hybrid, Ecu.srs, Ecu.transmission, Ecu.hvac], - bus=0, - ), - Request( - [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.DEFAULT_DIAGNOSTIC_REQUEST, StdQueries.EXTENDED_DIAGNOSTIC_REQUEST, StdQueries.UDS_VERSION_REQUEST], - [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.DEFAULT_DIAGNOSTIC_RESPONSE, StdQueries.EXTENDED_DIAGNOSTIC_RESPONSE, StdQueries.UDS_VERSION_RESPONSE], - whitelist_ecus=[Ecu.engine, Ecu.fwdRadar, Ecu.fwdCamera, Ecu.abs, Ecu.eps, - Ecu.hybrid, Ecu.srs, Ecu.transmission, Ecu.hvac], - bus=0, - ), - ], - non_essential_ecus={ - # FIXME: On some models, abs can sometimes be missing - Ecu.abs: [CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_SIENNA, CAR.LEXUS_IS, CAR.TOYOTA_ALPHARD_TSS2], - # On some models, the engine can show on two different addresses - Ecu.engine: [CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_CAMRY, CAR.TOYOTA_COROLLA_TSS2, CAR.TOYOTA_CHR, CAR.TOYOTA_CHR_TSS2, CAR.LEXUS_IS, - CAR.LEXUS_IS_TSS2, CAR.LEXUS_RC, CAR.LEXUS_NX, CAR.LEXUS_NX_TSS2, CAR.LEXUS_RX, CAR.LEXUS_RX_TSS2], - }, - extra_ecus=[ - # All known ECUs on a late-model Toyota vehicle not queried here: - # Responds to UDS: - # - Combination Meter (0x7c0) - # - HV Battery (0x713, 0x747) - # - Motor Generator (0x716, 0x724) - # - 2nd ABS "Brake/EPB" (0x730) - # - Electronic Parking Brake ((0x750, 0x2c)) - # - Telematics ((0x750, 0xc7)) - # Responds to KWP (0x1a8801): - # - Steering Angle Sensor (0x7b3) - # - EPS/EMPS (0x7a0, 0x7a1) - # - 2nd SRS Airbag (0x784) - # - Central Gateway ((0x750, 0x5f)) - # - Telematics ((0x750, 0xc7)) - # Responds to KWP (0x1a8881): - # - Body Control Module ((0x750, 0x40)) - # - Telematics ((0x750, 0xc7)) - - # Hybrid control computer can be on 0x7e2 (KWP) or 0x7d2 (UDS) depending on platform - (Ecu.hybrid, 0x7e2, None), # Hybrid Control Assembly & Computer - (Ecu.hybrid, 0x7d2, None), # Hybrid Control Assembly & Computer - (Ecu.srs, 0x780, None), # SRS Airbag - # Transmission is combined with engine on some platforms, such as TSS-P RAV4 - (Ecu.transmission, 0x701, None), - # A few platforms have a tester present response on this address, add to log - (Ecu.transmission, 0x7e1, None), - (Ecu.hvac, 0x7c4, None), - ], - match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, -) - - -STEER_THRESHOLD = 100 - -# These cars have non-standard EPS torque scale factors. All others are 73 -EPS_SCALE = defaultdict(lambda: 73, - {CAR.TOYOTA_PRIUS: 66, CAR.TOYOTA_COROLLA: 88, CAR.LEXUS_IS: 77, CAR.LEXUS_RC: 77, CAR.LEXUS_CTH: 100, CAR.TOYOTA_PRIUS_V: 100}) - -# Toyota/Lexus Safety Sense 2.0 and 2.5 -TSS2_CAR = CAR.with_flags(ToyotaFlags.TSS2) - -NO_DSU_CAR = CAR.with_flags(ToyotaFlags.NO_DSU) - -# the DSU uses the AEB message for longitudinal on these cars -UNSUPPORTED_DSU_CAR = CAR.with_flags(ToyotaFlags.UNSUPPORTED_DSU) - -# these cars have a radar which sends ACC messages instead of the camera -RADAR_ACC_CAR = CAR.with_flags(ToyotaFlags.RADAR_ACC) - -ANGLE_CONTROL_CAR = CAR.with_flags(ToyotaFlags.ANGLE_CONTROL) - -SECOC_CAR = CAR.with_flags(ToyotaFlags.SECOC) - -# no resume button press required -NO_STOP_TIMER_CAR = CAR.with_flags(ToyotaFlags.NO_STOP_TIMER) - -DBC = CAR.create_dbc_map() - - -if __name__ == "__main__": - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) diff --git a/opendbc_repo/opendbc/car/uds.py b/opendbc_repo/opendbc/car/uds.py deleted file mode 100644 index 49f677f69a..0000000000 --- a/opendbc_repo/opendbc/car/uds.py +++ /dev/null @@ -1,941 +0,0 @@ -import time -import struct -from collections import deque -from typing import NamedTuple, cast -from collections.abc import Callable, Generator -from enum import IntEnum -from functools import partial - -from opendbc.car.carlog import carlog - - -class SERVICE_TYPE(IntEnum): - DIAGNOSTIC_SESSION_CONTROL = 0x10 - ECU_RESET = 0x11 - SECURITY_ACCESS = 0x27 - COMMUNICATION_CONTROL = 0x28 - TESTER_PRESENT = 0x3E - ACCESS_TIMING_PARAMETER = 0x83 - SECURED_DATA_TRANSMISSION = 0x84 - CONTROL_DTC_SETTING = 0x85 - RESPONSE_ON_EVENT = 0x86 - LINK_CONTROL = 0x87 - READ_DATA_BY_IDENTIFIER = 0x22 - READ_MEMORY_BY_ADDRESS = 0x23 - READ_SCALING_DATA_BY_IDENTIFIER = 0x24 - READ_DATA_BY_PERIODIC_IDENTIFIER = 0x2A - DYNAMICALLY_DEFINE_DATA_IDENTIFIER = 0x2C - WRITE_DATA_BY_IDENTIFIER = 0x2E - WRITE_MEMORY_BY_ADDRESS = 0x3D - CLEAR_DIAGNOSTIC_INFORMATION = 0x14 - READ_DTC_INFORMATION = 0x19 - INPUT_OUTPUT_CONTROL_BY_IDENTIFIER = 0x2F - ROUTINE_CONTROL = 0x31 - REQUEST_DOWNLOAD = 0x34 - REQUEST_UPLOAD = 0x35 - TRANSFER_DATA = 0x36 - REQUEST_TRANSFER_EXIT = 0x37 - -class SESSION_TYPE(IntEnum): - DEFAULT = 1 - PROGRAMMING = 2 - EXTENDED_DIAGNOSTIC = 3 - SAFETY_SYSTEM_DIAGNOSTIC = 4 - -class RESET_TYPE(IntEnum): - HARD = 1 - KEY_OFF_ON = 2 - SOFT = 3 - ENABLE_RAPID_POWER_SHUTDOWN = 4 - DISABLE_RAPID_POWER_SHUTDOWN = 5 - -class ACCESS_TYPE(IntEnum): - REQUEST_SEED = 1 - SEND_KEY = 2 - -class CONTROL_TYPE(IntEnum): - ENABLE_RX_ENABLE_TX = 0 - ENABLE_RX_DISABLE_TX = 1 - DISABLE_RX_ENABLE_TX = 2 - DISABLE_RX_DISABLE_TX = 3 - -class MESSAGE_TYPE(IntEnum): - NORMAL = 1 - NETWORK_MANAGEMENT = 2 - NORMAL_AND_NETWORK_MANAGEMENT = 3 - -class TIMING_PARAMETER_TYPE(IntEnum): - READ_EXTENDED_SET = 1 - SET_TO_DEFAULT_VALUES = 2 - READ_CURRENTLY_ACTIVE = 3 - SET_TO_GIVEN_VALUES = 4 - -class DTC_SETTING_TYPE(IntEnum): - ON = 1 - OFF = 2 - -class RESPONSE_EVENT_TYPE(IntEnum): - STOP_RESPONSE_ON_EVENT = 0 - ON_DTC_STATUS_CHANGE = 1 - ON_TIMER_INTERRUPT = 2 - ON_CHANGE_OF_DATA_IDENTIFIER = 3 - REPORT_ACTIVATED_EVENTS = 4 - START_RESPONSE_ON_EVENT = 5 - CLEAR_RESPONSE_ON_EVENT = 6 - ON_COMPARISON_OF_VALUES = 7 - -class LINK_CONTROL_TYPE(IntEnum): - VERIFY_BAUDRATE_TRANSITION_WITH_FIXED_BAUDRATE = 1 - VERIFY_BAUDRATE_TRANSITION_WITH_SPECIFIC_BAUDRATE = 2 - TRANSITION_BAUDRATE = 3 - -class BAUD_RATE_TYPE(IntEnum): - PC9600 = 1 - PC19200 = 2 - PC38400 = 3 - PC57600 = 4 - PC115200 = 5 - CAN125000 = 16 - CAN250000 = 17 - CAN500000 = 18 - CAN1000000 = 19 - -class DATA_IDENTIFIER_TYPE(IntEnum): - BOOT_SOFTWARE_IDENTIFICATION = 0xF180 - APPLICATION_SOFTWARE_IDENTIFICATION = 0xF181 - APPLICATION_DATA_IDENTIFICATION = 0xF182 - BOOT_SOFTWARE_FINGERPRINT = 0xF183 - APPLICATION_SOFTWARE_FINGERPRINT = 0xF184 - APPLICATION_DATA_FINGERPRINT = 0xF185 - ACTIVE_DIAGNOSTIC_SESSION = 0xF186 - VEHICLE_MANUFACTURER_SPARE_PART_NUMBER = 0xF187 - VEHICLE_MANUFACTURER_ECU_SOFTWARE_NUMBER = 0xF188 - VEHICLE_MANUFACTURER_ECU_SOFTWARE_VERSION_NUMBER = 0xF189 - SYSTEM_SUPPLIER_IDENTIFIER = 0xF18A - ECU_MANUFACTURING_DATE = 0xF18B - ECU_SERIAL_NUMBER = 0xF18C - SUPPORTED_FUNCTIONAL_UNITS = 0xF18D - VEHICLE_MANUFACTURER_KIT_ASSEMBLY_PART_NUMBER = 0xF18E - VIN = 0xF190 - VEHICLE_MANUFACTURER_ECU_HARDWARE_NUMBER = 0xF191 - SYSTEM_SUPPLIER_ECU_HARDWARE_NUMBER = 0xF192 - SYSTEM_SUPPLIER_ECU_HARDWARE_VERSION_NUMBER = 0xF193 - SYSTEM_SUPPLIER_ECU_SOFTWARE_NUMBER = 0xF194 - SYSTEM_SUPPLIER_ECU_SOFTWARE_VERSION_NUMBER = 0xF195 - EXHAUST_REGULATION_OR_TYPE_APPROVAL_NUMBER = 0xF196 - SYSTEM_NAME_OR_ENGINE_TYPE = 0xF197 - REPAIR_SHOP_CODE_OR_TESTER_SERIAL_NUMBER = 0xF198 - PROGRAMMING_DATE = 0xF199 - CALIBRATION_REPAIR_SHOP_CODE_OR_CALIBRATION_EQUIPMENT_SERIAL_NUMBER = 0xF19A - CALIBRATION_DATE = 0xF19B - CALIBRATION_EQUIPMENT_SOFTWARE_NUMBER = 0xF19C - ECU_INSTALLATION_DATE = 0xF19D - ODX_FILE = 0xF19E - ENTITY = 0xF19F - -class TRANSMISSION_MODE_TYPE(IntEnum): - SEND_AT_SLOW_RATE = 1 - SEND_AT_MEDIUM_RATE = 2 - SEND_AT_FAST_RATE = 3 - STOP_SENDING = 4 - -class DYNAMIC_DEFINITION_TYPE(IntEnum): - DEFINE_BY_IDENTIFIER = 1 - DEFINE_BY_MEMORY_ADDRESS = 2 - CLEAR_DYNAMICALLY_DEFINED_DATA_IDENTIFIER = 3 - -class ISOTP_FRAME_TYPE(IntEnum): - SINGLE = 0 - FIRST = 1 - CONSECUTIVE = 2 - FLOW = 3 - -class DynamicSourceDefinition(NamedTuple): - data_identifier: int - position: int - memory_size: int - memory_address: int - -class DTC_GROUP_TYPE(IntEnum): - EMISSIONS = 0x000000 - ALL = 0xFFFFFF - -class DTC_REPORT_TYPE(IntEnum): - NUMBER_OF_DTC_BY_STATUS_MASK = 0x01 - DTC_BY_STATUS_MASK = 0x02 - DTC_SNAPSHOT_IDENTIFICATION = 0x03 - DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER = 0x04 - DTC_SNAPSHOT_RECORD_BY_RECORD_NUMBER = 0x05 - DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER = 0x06 - NUMBER_OF_DTC_BY_SEVERITY_MASK_RECORD = 0x07 - DTC_BY_SEVERITY_MASK_RECORD = 0x08 - SEVERITY_INFORMATION_OF_DTC = 0x09 - SUPPORTED_DTC = 0x0A - FIRST_TEST_FAILED_DTC = 0x0B - FIRST_CONFIRMED_DTC = 0x0C - MOST_RECENT_TEST_FAILED_DTC = 0x0D - MOST_RECENT_CONFIRMED_DTC = 0x0E - MIRROR_MEMORY_DTC_BY_STATUS_MASK = 0x0F - MIRROR_MEMORY_DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER = 0x10 - NUMBER_OF_MIRROR_MEMORY_DTC_BY_STATUS_MASK = 0x11 - NUMBER_OF_EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK = 0x12 - EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK = 0x13 - DTC_FAULT_DETECTION_COUNTER = 0x14 - DTC_WITH_PERMANENT_STATUS = 0x15 - -class DTC_STATUS_MASK_TYPE(IntEnum): - TEST_FAILED = 0x01 - TEST_FAILED_THIS_OPERATION_CYCLE = 0x02 - PENDING_DTC = 0x04 - CONFIRMED_DTC = 0x08 - TEST_NOT_COMPLETED_SINCE_LAST_CLEAR = 0x10 - TEST_FAILED_SINCE_LAST_CLEAR = 0x20 - TEST_NOT_COMPLETED_THIS_OPERATION_CYCLE = 0x40 - WARNING_INDICATOR_REQUESTED = 0x80 - ALL = 0xFF - -class DTC_SEVERITY_MASK_TYPE(IntEnum): - MAINTENANCE_ONLY = 0x20 - CHECK_AT_NEXT_HALT = 0x40 - CHECK_IMMEDIATELY = 0x80 - ALL = 0xE0 - -class CONTROL_PARAMETER_TYPE(IntEnum): - RETURN_CONTROL_TO_ECU = 0 - RESET_TO_DEFAULT = 1 - FREEZE_CURRENT_STATE = 2 - SHORT_TERM_ADJUSTMENT = 3 - -class ROUTINE_CONTROL_TYPE(IntEnum): - START = 1 - STOP = 2 - REQUEST_RESULTS = 3 - -class ROUTINE_IDENTIFIER_TYPE(IntEnum): - ERASE_MEMORY = 0xFF00 - CHECK_PROGRAMMING_DEPENDENCIES = 0xFF01 - ERASE_MIRROR_MEMORY_DTCS = 0xFF02 - -class MessageTimeoutError(Exception): - pass - -class NegativeResponseError(Exception): - def __init__(self, message, service_id, error_code): - super().__init__() - self.message = message - self.service_id = service_id - self.error_code = error_code - - def __str__(self): - return self.message - -class InvalidServiceIdError(Exception): - pass - -class InvalidSubFunctionError(Exception): - pass - -class InvalidSubAddressError(Exception): - pass - -_negative_response_codes = { - 0x00: 'positive response', - 0x10: 'general reject', - 0x11: 'service not supported', - 0x12: 'sub-function not supported', - 0x13: 'incorrect message length or invalid format', - 0x14: 'response too long', - 0x21: 'busy repeat request', - 0x22: 'conditions not correct', - 0x24: 'request sequence error', - 0x25: 'no response from subnet component', - 0x26: 'failure prevents execution of requested action', - 0x31: 'request out of range', - 0x33: 'security access denied', - 0x35: 'invalid key', - 0x36: 'exceed number of attempts', - 0x37: 'required time delay not expired', - 0x70: 'upload download not accepted', - 0x71: 'transfer data suspended', - 0x72: 'general programming failure', - 0x73: 'wrong block sequence counter', - 0x78: 'request correctly received - response pending', - 0x7e: 'sub-function not supported in active session', - 0x7f: 'service not supported in active session', - 0x81: 'rpm too high', - 0x82: 'rpm too low', - 0x83: 'engine is running', - 0x84: 'engine is not running', - 0x85: 'engine run time too low', - 0x86: 'temperature too high', - 0x87: 'temperature too low', - 0x88: 'vehicle speed too high', - 0x89: 'vehicle speed too low', - 0x8a: 'throttle/pedal too high', - 0x8b: 'throttle/pedal too low', - 0x8c: 'transmission not in neutral', - 0x8d: 'transmission not in gear', - 0x8f: 'brake switch(es) not closed', - 0x90: 'shifter lever not in park', - 0x91: 'torque converter clutch locked', - 0x92: 'voltage too high', - 0x93: 'voltage too low', -} - -def get_dtc_num_as_str(dtc_num_bytes): - # ISO 15031-6 - designator = { - 0b00: "P", - 0b01: "C", - 0b10: "B", - 0b11: "U", - } - d = designator[dtc_num_bytes[0] >> 6] - n = bytes([dtc_num_bytes[0] & 0x3F]) + dtc_num_bytes[1:] - return d + n.hex() - -def get_dtc_status_names(status): - result = list() - for m in DTC_STATUS_MASK_TYPE: - if m == DTC_STATUS_MASK_TYPE.ALL: - continue - if status & m.value: - result.append(m.name) - return result - -class CanClient: - def __init__(self, can_send: Callable[[int, bytes, int], None], can_recv: Callable[[], list[tuple[int, bytes, int]]], - tx_addr: int, rx_addr: int, bus: int, sub_addr: int | None = None, rx_sub_addr: int | None = None): - self.tx = can_send - self.rx = can_recv - self.tx_addr = tx_addr - self.rx_addr = rx_addr - self.rx_buff: deque[bytes] = deque() - self.sub_addr = sub_addr - self.rx_sub_addr = rx_sub_addr if rx_sub_addr is not None else sub_addr - self.bus = bus - - def _recv_filter(self, bus: int, addr: int) -> bool: - # handle functional addresses (switch to first addr to respond) - if self.tx_addr == 0x7DF: - is_response = addr >= 0x7E8 and addr <= 0x7EF - if is_response: - carlog.debug(f"switch to physical addr {hex(addr)}") - self.tx_addr = addr - 8 - self.rx_addr = addr - return is_response - if self.tx_addr == 0x18DB33F1: - is_response = addr >= 0x18DAF100 and addr <= 0x18DAF1FF - if is_response: - carlog.debug(f"switch to physical addr {hex(addr)}") - self.tx_addr = 0x18DA00F1 + (addr << 8 & 0xFF00) - self.rx_addr = addr - return bus == self.bus and addr == self.rx_addr - - def _recv_buffer(self, drain: bool = False) -> None: - while True: - msgs = self.rx() - if drain: - carlog.debug(f"CAN-RX: drain - {len(msgs)}") - self.rx_buff.clear() - else: - for rx_addr, rx_data, rx_bus in msgs or []: - if self._recv_filter(rx_bus, rx_addr) and len(rx_data) > 0: - rx_data = bytes(rx_data) # convert bytearray to bytes - - carlog.debug(f"CAN-RX: {hex(rx_addr)} - 0x{bytes.hex(rx_data)}") - - # Cut off sub addr in first byte - if self.rx_sub_addr is not None: - if rx_data[0] != self.rx_sub_addr: - raise InvalidSubAddressError(f"isotp - rx: invalid sub-address: {rx_data[0]}, expected: {self.rx_sub_addr}") - rx_data = rx_data[1:] - - self.rx_buff.append(rx_data) - # break when non-full buffer is processed - if len(msgs) < 254: - return - - def recv(self, drain: bool = False) -> Generator[bytes, None, None]: - # buffer rx messages in case two response messages are received at once - # (e.g. response pending and success/failure response) - self._recv_buffer(drain) - try: - while True: - yield self.rx_buff.popleft() - except IndexError: - pass # empty - - def send(self, msgs: list[bytes], delay: float = 0) -> None: - for i, msg in enumerate(msgs): - if delay and i != 0: - carlog.debug(f"CAN-TX: delay - {delay}") - time.sleep(delay) - - if self.sub_addr is not None: - msg = bytes([self.sub_addr]) + msg - - carlog.debug(f"CAN-TX: {hex(self.tx_addr)} - 0x{bytes.hex(msg)}") - assert len(msg) <= 8 - - self.tx(self.tx_addr, msg, self.bus) - # prevent rx buffer from overflowing on large tx - if i % 10 == 9: - self._recv_buffer() - -class IsoTpMessage: - def __init__(self, can_client: CanClient, timeout: float = 1, single_frame_mode: bool = False, separation_time: float = 0): - self._can_client = can_client - self.timeout = timeout - self.single_frame_mode = single_frame_mode - self.max_len = 8 if self._can_client.sub_addr is None else 7 - - # <= 127, separation time in milliseconds - # 0xF1 to 0xF9 UF, 100 to 900 microseconds - if 1e-4 <= separation_time <= 9e-4: - offset = int(round(separation_time, 4) * 1e4) - 1 - separation_time = 0xF1 + offset - elif 0 <= separation_time <= 0.127: - separation_time = round(separation_time * 1000) - else: - raise Exception("Separation time not in range") - - self.flow_control_msg = bytes([ - 0x30, # flow control - 0x01 if self.single_frame_mode else 0x00, # block size - separation_time, - ]).ljust(self.max_len, b"\x00") - - def send(self, dat: bytes, setup_only: bool = False) -> None: - # throw away any stale data - self._can_client.recv(drain=True) - - self.tx_dat = dat - self.tx_len = len(dat) - self.tx_idx = 0 - self.tx_done = False - - self.rx_dat = b"" - self.rx_len = 0 - self.rx_idx = 0 - self.rx_done = False - - if not setup_only: - carlog.debug(f"ISO-TP: REQUEST - {hex(self._can_client.tx_addr)} 0x{bytes.hex(self.tx_dat)}") - self._tx_first_frame(setup_only=setup_only) - - def _tx_first_frame(self, setup_only: bool = False) -> None: - if self.tx_len < self.max_len: - # single frame (send all bytes) - if not setup_only: - carlog.debug(f"ISO-TP: TX - single frame - {hex(self._can_client.tx_addr)}") - msg = (bytes([self.tx_len]) + self.tx_dat).ljust(self.max_len, b"\x00") - self.tx_done = True - else: - # first frame (send first 6 bytes) - if not setup_only: - carlog.debug(f"ISO-TP: TX - first frame - {hex(self._can_client.tx_addr)}") - msg = (struct.pack("!H", 0x1000 | self.tx_len) + self.tx_dat[:self.max_len - 2]).ljust(self.max_len - 2, b"\x00") - if not setup_only: - self._can_client.send([msg]) - - def recv(self, timeout=None) -> tuple[bytes | None, bool]: - if timeout is None: - timeout = self.timeout - - start_time = time.monotonic() - rx_in_progress = False - try: - while True: - for msg in self._can_client.recv(): - frame_type = self._isotp_rx_next(msg) - start_time = time.monotonic() - # Anything that signifies we're building a response - rx_in_progress = frame_type in (ISOTP_FRAME_TYPE.FIRST, ISOTP_FRAME_TYPE.CONSECUTIVE) - if self.tx_done and self.rx_done: - return self.rx_dat, False - # no timeout indicates non-blocking - if timeout == 0: - return None, rx_in_progress - if time.monotonic() - start_time > timeout: - raise MessageTimeoutError("timeout waiting for response") - finally: - if self.rx_dat: - carlog.debug(f"ISO-TP: RESPONSE - {hex(self._can_client.rx_addr)} 0x{bytes.hex(self.rx_dat)}") - - def _isotp_rx_next(self, rx_data: bytes) -> ISOTP_FRAME_TYPE: - # TODO: Handle CAN frame data optimization, which is allowed with some frame types - # # ISO 15765-2 specifies an eight byte CAN frame for ISO-TP communication - # assert len(rx_data) == self.max_len, f"isotp - rx: invalid CAN frame length: {len(rx_data)}" - - if rx_data[0] >> 4 == ISOTP_FRAME_TYPE.SINGLE: - assert self.rx_dat == b"" or self.rx_done, "isotp - rx: single frame with active frame" - - # "if the first byte is 0x00, then it's a CAN-FD SF, and the second byte specifies the size of the data." - # - https://en.wikipedia.org/wiki/CAN_FD - if rx_data[0] & 0x0F == 0 and len(rx_data) > 8: - self.rx_len = rx_data[1] - offset = 2 - # TODO: update self.max_len for CAN FD - max_len = 62 if self._can_client.sub_addr is None else 61 - assert self.rx_len <= max_len, f"isotp - rx: invalid single frame length: {self.rx_len}" - else: - self.rx_len = rx_data[0] & 0x0F - offset = 1 - assert self.rx_len < self.max_len, f"isotp - rx: invalid single frame length: {self.rx_len}" - - self.rx_dat = rx_data[offset:offset + self.rx_len] - self.rx_idx = 0 - self.rx_done = True - carlog.debug(f"ISO-TP: RX - single frame - {hex(self._can_client.rx_addr)} idx={self.rx_idx} done={self.rx_done}") - return ISOTP_FRAME_TYPE.SINGLE - - elif rx_data[0] >> 4 == ISOTP_FRAME_TYPE.FIRST: - # TODO: support CAN FD first frames - # Once a first frame is received, further frames must be consecutive - assert self.rx_dat == b"" or self.rx_done, "isotp - rx: first frame with active frame" - self.rx_len = ((rx_data[0] & 0x0F) << 8) + rx_data[1] - assert self.rx_len >= self.max_len, f"isotp - rx: invalid first frame length: {self.rx_len}" - assert len(rx_data) == self.max_len, f"isotp - rx: invalid CAN frame length: {len(rx_data)}" - self.rx_dat = rx_data[2:] - self.rx_idx = 0 - self.rx_done = False - carlog.debug(f"ISO-TP: RX - first frame - {hex(self._can_client.rx_addr)} idx={self.rx_idx} done={self.rx_done}") - carlog.debug(f"ISO-TP: TX - flow control continue - {hex(self._can_client.tx_addr)}") - # send flow control message - self._can_client.send([self.flow_control_msg]) - return ISOTP_FRAME_TYPE.FIRST - - elif rx_data[0] >> 4 == ISOTP_FRAME_TYPE.CONSECUTIVE: - assert not self.rx_done, "isotp - rx: consecutive frame with no active frame" - self.rx_idx += 1 - assert self.rx_idx & 0xF == rx_data[0] & 0xF, "isotp - rx: invalid consecutive frame index" - rx_size = self.rx_len - len(self.rx_dat) - self.rx_dat += rx_data[1:1 + rx_size] - if self.rx_len == len(self.rx_dat): - self.rx_done = True - elif self.single_frame_mode: - # notify ECU to send next frame - self._can_client.send([self.flow_control_msg]) - carlog.debug(f"ISO-TP: RX - consecutive frame - {hex(self._can_client.rx_addr)} idx={self.rx_idx} done={self.rx_done}") - return ISOTP_FRAME_TYPE.CONSECUTIVE - - elif rx_data[0] >> 4 == ISOTP_FRAME_TYPE.FLOW: - assert not self.tx_done, "isotp - rx: flow control with no active frame" - assert rx_data[0] != 0x32, "isotp - rx: flow-control overflow/abort" - assert rx_data[0] == 0x30 or rx_data[0] == 0x31, "isotp - rx: flow-control transfer state indicator invalid" - if rx_data[0] == 0x30: - carlog.debug(f"ISO-TP: RX - flow control continue - {hex(self._can_client.tx_addr)}") - delay_ts = rx_data[2] & 0x7F - # scale is 1 milliseconds if first bit == 0, 100 micro seconds if first bit == 1 - delay_div = 1000. if rx_data[2] & 0x80 == 0 else 10000. - delay_sec = delay_ts / delay_div - - # first frame = 6 bytes, each consecutive frame = 7 bytes - num_bytes = self.max_len - 1 - start = self.max_len - 2 + self.tx_idx * num_bytes - count = rx_data[1] - end = start + count * num_bytes if count > 0 else self.tx_len - tx_msgs = [] - for i in range(start, end, num_bytes): - self.tx_idx += 1 - # consecutive tx messages - msg = (bytes([0x20 | (self.tx_idx & 0xF)]) + self.tx_dat[i:i + num_bytes]).ljust(self.max_len, b"\x00") - tx_msgs.append(msg) - # send consecutive tx messages - self._can_client.send(tx_msgs, delay=delay_sec) - if end >= self.tx_len: - self.tx_done = True - carlog.debug(f"ISO-TP: TX - consecutive frame - {hex(self._can_client.tx_addr)} idx={self.tx_idx} done={self.tx_done}") - elif rx_data[0] == 0x31: - # wait (do nothing until next flow control message) - carlog.debug(f"ISO-TP: TX - flow control wait - {hex(self._can_client.tx_addr)}") - return ISOTP_FRAME_TYPE.FLOW - - # 4-15 - reserved - else: - raise Exception(f"isotp - rx: invalid frame type: {rx_data[0] >> 4}") - - -FUNCTIONAL_ADDRS = [0x7DF, 0x18DB33F1] - - -def get_rx_addr_for_tx_addr(tx_addr, rx_offset=0x8): - if tx_addr in FUNCTIONAL_ADDRS: - return None - - if tx_addr < 0xFFF8: - # pseudo-standard 11 bit response addr (add 8) works for most manufacturers - # allow override; some manufacturers use other offsets for non-OBD2 access - return tx_addr + rx_offset - - if tx_addr > 0x10000000 and tx_addr < 0xFFFFFFFF: - # standard 29 bit response addr (flip last two bytes) - return (tx_addr & 0xFFFF0000) + (tx_addr << 8 & 0xFF00) + (tx_addr >> 8 & 0xFF) - - raise ValueError(f"invalid tx_addr: {tx_addr}") - - -class UdsClient: - def __init__(self, panda, tx_addr: int, rx_addr: int | None = None, bus: int = 0, sub_addr: int | None = None, rx_sub_addr: int | None = None, - timeout: float = 1, tx_timeout: float = 1, response_pending_timeout: float = 10): - self.bus = bus - self.tx_addr = tx_addr - self.rx_addr = rx_addr if rx_addr is not None else get_rx_addr_for_tx_addr(tx_addr) - self.sub_addr = sub_addr - self.timeout = timeout - can_send_with_timeout = partial(panda.can_send, timeout=int(tx_timeout*1000)) - self._can_client = CanClient(can_send_with_timeout, panda.can_recv, self.tx_addr, self.rx_addr, self.bus, self.sub_addr, rx_sub_addr) - self.response_pending_timeout = response_pending_timeout - - # generic uds request - def _uds_request(self, service_type: SERVICE_TYPE, subfunction: int | None = None, data: bytes | None = None) -> bytes: - req = bytes([service_type]) - if subfunction is not None: - req += bytes([subfunction]) - if data is not None: - req += data - - # send request, wait for response - isotp_msg = IsoTpMessage(self._can_client, timeout=self.timeout) - isotp_msg.send(req) - response_pending = False - while True: - timeout = self.response_pending_timeout if response_pending else self.timeout - resp, _ = isotp_msg.recv(timeout) - - if resp is None: - continue - - response_pending = False - resp_sid = resp[0] if len(resp) > 0 else None - - # negative response - if resp_sid == 0x7F: - service_id = resp[1] if len(resp) > 1 else -1 - try: - service_desc = SERVICE_TYPE(service_id).name - except BaseException: - service_desc = 'NON_STANDARD_SERVICE' - error_code = resp[2] if len(resp) > 2 else -1 - try: - error_desc = _negative_response_codes[error_code] - except BaseException: - error_desc = resp[3:].hex() - # wait for another message if response pending - if error_code == 0x78: - response_pending = True - carlog.debug("UDS-RX: response pending") - continue - raise NegativeResponseError(f'{service_desc} - {error_desc}', service_id, error_code) - - # positive response - if service_type + 0x40 != resp_sid: - resp_sid_hex = hex(resp_sid) if resp_sid is not None else None - raise InvalidServiceIdError(f'invalid response service id: {resp_sid_hex}') - - if subfunction is not None: - resp_sfn = resp[1] if len(resp) > 1 else None - if subfunction != resp_sfn: - resp_sfn_hex = hex(resp_sfn) if resp_sfn is not None else None - raise InvalidSubFunctionError(f'invalid response subfunction: {resp_sfn_hex}') - - # return data (exclude service id and sub-function id) - return resp[(1 if subfunction is None else 2):] - - # services - def diagnostic_session_control(self, session_type: SESSION_TYPE): - self._uds_request(SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, subfunction=session_type) - - def ecu_reset(self, reset_type: RESET_TYPE): - resp = self._uds_request(SERVICE_TYPE.ECU_RESET, subfunction=reset_type) - power_down_time = None - if reset_type == RESET_TYPE.ENABLE_RAPID_POWER_SHUTDOWN: - power_down_time = resp[0] - return power_down_time - - def security_access(self, access_type: ACCESS_TYPE, security_key: bytes = b'', data_record: bytes = b''): - request_seed = access_type % 2 != 0 - if request_seed and len(security_key) != 0: - raise ValueError('security_key not allowed') - if not request_seed and len(security_key) == 0: - raise ValueError('security_key is missing') - if not request_seed and len(data_record) != 0: - raise ValueError('data_record not allowed') - data = security_key + data_record - resp = self._uds_request(SERVICE_TYPE.SECURITY_ACCESS, subfunction=access_type, data=data) - if request_seed: - security_seed = resp - return security_seed - - def communication_control(self, control_type: CONTROL_TYPE, message_type: MESSAGE_TYPE): - data = bytes([message_type]) - self._uds_request(SERVICE_TYPE.COMMUNICATION_CONTROL, subfunction=control_type, data=data) - - def tester_present(self, ): - self._uds_request(SERVICE_TYPE.TESTER_PRESENT, subfunction=0x00) - - def access_timing_parameter(self, timing_parameter_type: TIMING_PARAMETER_TYPE, parameter_values: bytes | None = None): - write_custom_values = timing_parameter_type == TIMING_PARAMETER_TYPE.SET_TO_GIVEN_VALUES - read_values = (timing_parameter_type == TIMING_PARAMETER_TYPE.READ_CURRENTLY_ACTIVE or - timing_parameter_type == TIMING_PARAMETER_TYPE.READ_EXTENDED_SET) - if not write_custom_values and parameter_values is not None: - raise ValueError('parameter_values not allowed') - if write_custom_values and parameter_values is None: - raise ValueError('parameter_values is missing') - resp = self._uds_request(SERVICE_TYPE.ACCESS_TIMING_PARAMETER, subfunction=timing_parameter_type, data=parameter_values) - if read_values: - # TODO: parse response into values? - parameter_values = resp - return parameter_values - - def secured_data_transmission(self, data: bytes): - # TODO: split data into multiple input parameters? - resp = self._uds_request(SERVICE_TYPE.SECURED_DATA_TRANSMISSION, subfunction=None, data=data) - # TODO: parse response into multiple output values? - return resp - - def control_dtc_setting(self, dtc_setting_type: DTC_SETTING_TYPE): - self._uds_request(SERVICE_TYPE.CONTROL_DTC_SETTING, subfunction=dtc_setting_type) - - def response_on_event(self, response_event_type: RESPONSE_EVENT_TYPE, store_event: bool, window_time: int, - event_type_record: int, service_response_record: int): - if store_event: - response_event_type |= 0x20 # type: ignore - # TODO: split record parameters into arrays - data = bytes([window_time, event_type_record, service_response_record]) - resp = self._uds_request(SERVICE_TYPE.RESPONSE_ON_EVENT, subfunction=response_event_type, data=data) - - if response_event_type == RESPONSE_EVENT_TYPE.REPORT_ACTIVATED_EVENTS: - return { - "num_of_activated_events": resp[0], - "data": resp[1:], # TODO: parse the reset of response - } - - return { - "num_of_identified_events": resp[0], - "event_window_time": resp[1], - "data": resp[2:], # TODO: parse the reset of response - } - - def link_control(self, link_control_type: LINK_CONTROL_TYPE, baud_rate_type: BAUD_RATE_TYPE | None = None): - data: bytes | None - - if link_control_type == LINK_CONTROL_TYPE.VERIFY_BAUDRATE_TRANSITION_WITH_FIXED_BAUDRATE: - # baud_rate_type = BAUD_RATE_TYPE - data = bytes([cast(int, baud_rate_type)]) - elif link_control_type == LINK_CONTROL_TYPE.VERIFY_BAUDRATE_TRANSITION_WITH_SPECIFIC_BAUDRATE: - # baud_rate_type = custom value (3 bytes big-endian) - data = struct.pack('!I', baud_rate_type)[1:] - else: - data = None - self._uds_request(SERVICE_TYPE.LINK_CONTROL, subfunction=link_control_type, data=data) - - def read_data_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE): - # TODO: support list of identifiers - data = struct.pack('!H', data_identifier_type) - resp = self._uds_request(SERVICE_TYPE.READ_DATA_BY_IDENTIFIER, subfunction=None, data=data) - resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None - if resp_id != data_identifier_type: - raise ValueError(f'invalid response data identifier: {hex(resp_id)} expected: {hex(data_identifier_type)}') - return resp[2:] - - def read_memory_by_address(self, memory_address: int, memory_size: int, memory_address_bytes: int = 4, memory_size_bytes: int = 1): - if memory_address_bytes < 1 or memory_address_bytes > 4: - raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') - if memory_size_bytes < 1 or memory_size_bytes > 4: - raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') - data = bytes([memory_size_bytes << 4 | memory_address_bytes]) - - if memory_address >= 1 << (memory_address_bytes * 8): - raise ValueError(f'invalid memory_address: {memory_address}') - data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] - if memory_size >= 1 << (memory_size_bytes * 8): - raise ValueError(f'invalid memory_size: {memory_size}') - data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] - - resp = self._uds_request(SERVICE_TYPE.READ_MEMORY_BY_ADDRESS, subfunction=None, data=data) - return resp - - def read_scaling_data_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE): - data = struct.pack('!H', data_identifier_type) - resp = self._uds_request(SERVICE_TYPE.READ_SCALING_DATA_BY_IDENTIFIER, subfunction=None, data=data) - resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None - if resp_id != data_identifier_type: - raise ValueError(f'invalid response data identifier: {hex(resp_id)}') - return resp[2:] # TODO: parse the response - - def read_data_by_periodic_identifier(self, transmission_mode_type: TRANSMISSION_MODE_TYPE, periodic_data_identifier: int): - # TODO: support list of identifiers - data = bytes([transmission_mode_type, periodic_data_identifier]) - self._uds_request(SERVICE_TYPE.READ_DATA_BY_PERIODIC_IDENTIFIER, subfunction=None, data=data) - - def dynamically_define_data_identifier(self, dynamic_definition_type: DYNAMIC_DEFINITION_TYPE, dynamic_data_identifier: int, - source_definitions: list[DynamicSourceDefinition], memory_address_bytes: int = 4, memory_size_bytes: int = 1): - if memory_address_bytes < 1 or memory_address_bytes > 4: - raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') - if memory_size_bytes < 1 or memory_size_bytes > 4: - raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') - - data = struct.pack('!H', dynamic_data_identifier) - if dynamic_definition_type == DYNAMIC_DEFINITION_TYPE.DEFINE_BY_IDENTIFIER: - for s in source_definitions: - data += struct.pack('!H', s.data_identifier) + bytes([s.position, s.memory_size]) - elif dynamic_definition_type == DYNAMIC_DEFINITION_TYPE.DEFINE_BY_MEMORY_ADDRESS: - data += bytes([memory_size_bytes << 4 | memory_address_bytes]) - for s in source_definitions: - if s.memory_address >= 1 << (memory_address_bytes * 8): - raise ValueError(f'invalid memory_address: {s.memory_address}') - data += struct.pack('!I', s.memory_address)[4 - memory_address_bytes:] - if s.memory_size >= 1 << (memory_size_bytes * 8): - raise ValueError(f'invalid memory_size: {s.memory_size}') - data += struct.pack('!I', s.memory_size)[4 - memory_size_bytes:] - elif dynamic_definition_type == DYNAMIC_DEFINITION_TYPE.CLEAR_DYNAMICALLY_DEFINED_DATA_IDENTIFIER: - pass - else: - raise ValueError(f'invalid dynamic identifier type: {hex(dynamic_definition_type)}') - self._uds_request(SERVICE_TYPE.DYNAMICALLY_DEFINE_DATA_IDENTIFIER, subfunction=dynamic_definition_type, data=data) - - def write_data_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE, data_record: bytes): - data = struct.pack('!H', data_identifier_type) + data_record - resp = self._uds_request(SERVICE_TYPE.WRITE_DATA_BY_IDENTIFIER, subfunction=None, data=data) - resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None - if resp_id != data_identifier_type: - raise ValueError(f'invalid response data identifier: {hex(resp_id)}') - - def write_memory_by_address(self, memory_address: int, memory_size: int, data_record: bytes, memory_address_bytes: int = 4, memory_size_bytes: int = 1): - if memory_address_bytes < 1 or memory_address_bytes > 4: - raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') - if memory_size_bytes < 1 or memory_size_bytes > 4: - raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') - data = bytes([memory_size_bytes << 4 | memory_address_bytes]) - - if memory_address >= 1 << (memory_address_bytes * 8): - raise ValueError(f'invalid memory_address: {memory_address}') - data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] - if memory_size >= 1 << (memory_size_bytes * 8): - raise ValueError(f'invalid memory_size: {memory_size}') - data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] - - data += data_record - self._uds_request(SERVICE_TYPE.WRITE_MEMORY_BY_ADDRESS, subfunction=None, data=data) - - def clear_diagnostic_information(self, dtc_group_type: DTC_GROUP_TYPE): - data = struct.pack('!I', dtc_group_type)[1:] # 3 bytes - self._uds_request(SERVICE_TYPE.CLEAR_DIAGNOSTIC_INFORMATION, subfunction=None, data=data) - - def read_dtc_information(self, dtc_report_type: DTC_REPORT_TYPE, dtc_status_mask_type: DTC_STATUS_MASK_TYPE = DTC_STATUS_MASK_TYPE.ALL, - dtc_severity_mask_type: DTC_SEVERITY_MASK_TYPE = DTC_SEVERITY_MASK_TYPE.ALL, dtc_mask_record: int = 0xFFFFFF, - dtc_snapshot_record_num: int = 0xFF, dtc_extended_record_num: int = 0xFF): - data = b'' - # dtc_status_mask_type - if dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_DTC_BY_STATUS_MASK or \ - dtc_report_type == DTC_REPORT_TYPE.DTC_BY_STATUS_MASK or \ - dtc_report_type == DTC_REPORT_TYPE.MIRROR_MEMORY_DTC_BY_STATUS_MASK or \ - dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_MIRROR_MEMORY_DTC_BY_STATUS_MASK or \ - dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK or \ - dtc_report_type == DTC_REPORT_TYPE.EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK: - data += bytes([dtc_status_mask_type]) - # dtc_mask_record - if dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_IDENTIFICATION or \ - dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER or \ - dtc_report_type == DTC_REPORT_TYPE.DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER or \ - dtc_report_type == DTC_REPORT_TYPE.MIRROR_MEMORY_DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER or \ - dtc_report_type == DTC_REPORT_TYPE.SEVERITY_INFORMATION_OF_DTC: - data += struct.pack('!I', dtc_mask_record)[1:] # 3 bytes - # dtc_snapshot_record_num - if dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_IDENTIFICATION or \ - dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER or \ - dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_RECORD_BY_RECORD_NUMBER: - data += bytes([dtc_snapshot_record_num]) - # dtc_extended_record_num - if dtc_report_type == DTC_REPORT_TYPE.DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER or \ - dtc_report_type == DTC_REPORT_TYPE.MIRROR_MEMORY_DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER: - data += bytes([dtc_extended_record_num]) - # dtc_severity_mask_type - if dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_DTC_BY_SEVERITY_MASK_RECORD or \ - dtc_report_type == DTC_REPORT_TYPE.DTC_BY_SEVERITY_MASK_RECORD: - data += bytes([dtc_severity_mask_type, dtc_status_mask_type]) - - resp = self._uds_request(SERVICE_TYPE.READ_DTC_INFORMATION, subfunction=dtc_report_type, data=data) - - # TODO: parse response - return resp - - def input_output_control_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE, control_parameter_type: CONTROL_PARAMETER_TYPE, - control_option_record: bytes = b'', control_enable_mask_record: bytes = b''): - data = struct.pack('!H', data_identifier_type) + bytes([control_parameter_type]) + control_option_record + control_enable_mask_record - resp = self._uds_request(SERVICE_TYPE.INPUT_OUTPUT_CONTROL_BY_IDENTIFIER, subfunction=None, data=data) - resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None - if resp_id != data_identifier_type: - raise ValueError(f'invalid response data identifier: {hex(resp_id)}') - return resp[2:] - - def routine_control(self, routine_control_type: ROUTINE_CONTROL_TYPE, routine_identifier_type: ROUTINE_IDENTIFIER_TYPE, routine_option_record: bytes = b''): - data = struct.pack('!H', routine_identifier_type) + routine_option_record - resp = self._uds_request(SERVICE_TYPE.ROUTINE_CONTROL, subfunction=routine_control_type, data=data) - resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None - if resp_id != routine_identifier_type: - raise ValueError(f'invalid response routine identifier: {hex(resp_id)}') - return resp[2:] - - def request_download(self, memory_address: int, memory_size: int, memory_address_bytes: int = 4, memory_size_bytes: int = 4, data_format: int = 0x00): - data = bytes([data_format]) - - if memory_address_bytes < 1 or memory_address_bytes > 4: - raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') - if memory_size_bytes < 1 or memory_size_bytes > 4: - raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') - data += bytes([memory_size_bytes << 4 | memory_address_bytes]) - - if memory_address >= 1 << (memory_address_bytes * 8): - raise ValueError(f'invalid memory_address: {memory_address}') - data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] - if memory_size >= 1 << (memory_size_bytes * 8): - raise ValueError(f'invalid memory_size: {memory_size}') - data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] - - resp = self._uds_request(SERVICE_TYPE.REQUEST_DOWNLOAD, subfunction=None, data=data) - max_num_bytes_len = resp[0] >> 4 if len(resp) > 0 else 0 - if max_num_bytes_len >= 1 and max_num_bytes_len <= 4: - max_num_bytes = struct.unpack('!I', (b"\x00" * (4 - max_num_bytes_len)) + resp[1:max_num_bytes_len + 1])[0] - else: - raise ValueError(f'invalid max_num_bytes_len: {max_num_bytes_len}') - - return max_num_bytes # max number of bytes per transfer data request - - def request_upload(self, memory_address: int, memory_size: int, memory_address_bytes: int = 4, memory_size_bytes: int = 4, data_format: int = 0x00): - data = bytes([data_format]) - - if memory_address_bytes < 1 or memory_address_bytes > 4: - raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') - if memory_size_bytes < 1 or memory_size_bytes > 4: - raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') - data += bytes([memory_size_bytes << 4 | memory_address_bytes]) - - if memory_address >= 1 << (memory_address_bytes * 8): - raise ValueError(f'invalid memory_address: {memory_address}') - data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] - if memory_size >= 1 << (memory_size_bytes * 8): - raise ValueError(f'invalid memory_size: {memory_size}') - data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] - - resp = self._uds_request(SERVICE_TYPE.REQUEST_UPLOAD, subfunction=None, data=data) - max_num_bytes_len = resp[0] >> 4 if len(resp) > 0 else 0 - if max_num_bytes_len >= 1 and max_num_bytes_len <= 4: - max_num_bytes = struct.unpack('!I', (b"\x00" * (4 - max_num_bytes_len)) + resp[1:max_num_bytes_len + 1])[0] - else: - raise ValueError(f'invalid max_num_bytes_len: {max_num_bytes_len}') - - return max_num_bytes # max number of bytes per transfer data request - - def transfer_data(self, block_sequence_count: int, data: bytes = b''): - data = bytes([block_sequence_count]) + data - resp = self._uds_request(SERVICE_TYPE.TRANSFER_DATA, subfunction=None, data=data) - resp_id = resp[0] if len(resp) > 0 else None - if resp_id != block_sequence_count: - raise ValueError(f'invalid block_sequence_count: {resp_id}') - return resp[1:] - - def request_transfer_exit(self): - self._uds_request(SERVICE_TYPE.REQUEST_TRANSFER_EXIT, subfunction=None) diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py deleted file mode 100644 index 1f8ea031ed..0000000000 --- a/opendbc_repo/opendbc/car/values.py +++ /dev/null @@ -1,22 +0,0 @@ -from typing import get_args -from opendbc.car.body.values import CAR as BODY -from opendbc.car.chrysler.values import CAR as CHRYSLER -from opendbc.car.ford.values import CAR as FORD -from opendbc.car.gm.values import CAR as GM -from opendbc.car.honda.values import CAR as HONDA -from opendbc.car.hyundai.values import CAR as HYUNDAI -from opendbc.car.mazda.values import CAR as MAZDA -from opendbc.car.mock.values import CAR as MOCK -from opendbc.car.nissan.values import CAR as NISSAN -from opendbc.car.rivian.values import CAR as RIVIAN -from opendbc.car.subaru.values import CAR as SUBARU -from opendbc.car.tesla.values import CAR as TESLA -from opendbc.car.toyota.values import CAR as TOYOTA -from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN -from opendbc.car.bmw.values import CAR as BMW - -Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW - -BRANDS = get_args(Platform) - -PLATFORMS: dict[str, Platform] = {str(platform): platform for brand in BRANDS for platform in brand} diff --git a/opendbc_repo/opendbc/car/vehicle_model.py b/opendbc_repo/opendbc/car/vehicle_model.py deleted file mode 100755 index 27683d2834..0000000000 --- a/opendbc_repo/opendbc/car/vehicle_model.py +++ /dev/null @@ -1,230 +0,0 @@ -#!/usr/bin/env python3 -""" -Dynamic bicycle model from "The Science of Vehicle Dynamics (2014), M. Guiggiani" - -The state is x = [v, r]^T -with v lateral speed [m/s], and r rotational speed [rad/s] - -The input u is the steering angle [rad], and roll [rad] - -The system is defined by -x_dot = A*x + B*u - -A depends on longitudinal speed, u [m/s], and vehicle parameters CP -""" - -import numpy as np -from numpy.linalg import solve - -from opendbc.car.structs import CarParams - -ACCELERATION_DUE_TO_GRAVITY = 9.8 - - -class VehicleModel: - def __init__(self, CP: CarParams): - """ - Args: - CP: Car Parameters - """ - # for math readability, convert long names car params into short names - self.m: float = CP.mass - self.j: float = CP.rotationalInertia - self.l: float = CP.wheelbase - self.aF: float = CP.centerToFront - self.aR: float = CP.wheelbase - CP.centerToFront - self.chi: float = CP.steerRatioRear - - self.cF_orig: float = CP.tireStiffnessFront - self.cR_orig: float = CP.tireStiffnessRear - self.update_params(1.0, CP.steerRatio) - - def update_params(self, stiffness_factor: float, steer_ratio: float) -> None: - """Update the vehicle model with a new stiffness factor and steer ratio""" - self.cF: float = stiffness_factor * self.cF_orig - self.cR: float = stiffness_factor * self.cR_orig - self.sR: float = steer_ratio - - def steady_state_sol(self, sa: float, u: float, roll: float) -> np.ndarray: - """Returns the steady state solution. - - If the speed is too low we can't use the dynamic model (tire slip is undefined), - we then have to use the kinematic model - - Args: - sa: Steering wheel angle [rad] - u: Speed [m/s] - roll: Road Roll [rad] - - Returns: - 2x1 matrix with steady state solution (lateral speed, rotational speed) - """ - if u > 0.1: - return dyn_ss_sol(sa, u, roll, self) - else: - return kin_ss_sol(sa, u, self) - - def calc_curvature(self, sa: float, u: float, roll: float) -> float: - """Returns the curvature. Multiplied by the speed this will give the yaw rate. - - Args: - sa: Steering wheel angle [rad] - u: Speed [m/s] - roll: Road Roll [rad] - - Returns: - Curvature factor [1/m] - """ - return (self.curvature_factor(u) * sa / self.sR) + self.roll_compensation(roll, u) - - def curvature_factor(self, u: float) -> float: - """Returns the curvature factor. - Multiplied by wheel angle (not steering wheel angle) this will give the curvature. - - Args: - u: Speed [m/s] - - Returns: - Curvature factor [1/m] - """ - sf = calc_slip_factor(self) - return (1. - self.chi) / (1. - sf * u**2) / self.l - - def get_steer_from_curvature(self, curv: float, u: float, roll: float) -> float: - """Calculates the required steering wheel angle for a given curvature - - Args: - curv: Desired curvature [1/m] - u: Speed [m/s] - roll: Road Roll [rad] - - Returns: - Steering wheel angle [rad] - """ - - return (curv - self.roll_compensation(roll, u)) * self.sR * 1.0 / self.curvature_factor(u) - - def roll_compensation(self, roll: float, u: float) -> float: - """Calculates the roll-compensation to curvature - - Args: - roll: Road Roll [rad] - u: Speed [m/s] - - Returns: - Roll compensation curvature [rad] - """ - sf = calc_slip_factor(self) - - if abs(sf) < 1e-6: - return 0 - else: - return (ACCELERATION_DUE_TO_GRAVITY * roll) / ((1 / sf) - u**2) - - def get_steer_from_yaw_rate(self, yaw_rate: float, u: float, roll: float) -> float: - """Calculates the required steering wheel angle for a given yaw_rate - - Args: - yaw_rate: Desired yaw rate [rad/s] - u: Speed [m/s] - roll: Road Roll [rad] - - Returns: - Steering wheel angle [rad] - """ - curv = yaw_rate / u - return self.get_steer_from_curvature(curv, u, roll) - - def yaw_rate(self, sa: float, u: float, roll: float) -> float: - """Calculate yaw rate - - Args: - sa: Steering wheel angle [rad] - u: Speed [m/s] - roll: Road Roll [rad] - - Returns: - Yaw rate [rad/s] - """ - return self.calc_curvature(sa, u, roll) * u - - -def kin_ss_sol(sa: float, u: float, VM: VehicleModel) -> np.ndarray: - """Calculate the steady state solution at low speeds - At low speeds the tire slip is undefined, so a kinematic - model is used. - - Args: - sa: Steering angle [rad] - u: Speed [m/s] - VM: Vehicle model - - Returns: - 2x1 matrix with steady state solution - """ - K = np.zeros((2, 1)) - K[0, 0] = VM.aR / VM.sR / VM.l * u - K[1, 0] = 1. / VM.sR / VM.l * u - return K * sa - - -def create_dyn_state_matrices(u: float, VM: VehicleModel) -> tuple[np.ndarray, np.ndarray]: - """Returns the A and B matrix for the dynamics system - - Args: - u: Vehicle speed [m/s] - VM: Vehicle model - - Returns: - A tuple with the 2x2 A matrix, and 2x2 B matrix - - Parameters in the vehicle model: - cF: Tire stiffness Front [N/rad] - cR: Tire stiffness Rear [N/rad] - aF: Distance from CG to front wheels [m] - aR: Distance from CG to rear wheels [m] - m: Mass [kg] - j: Rotational inertia [kg m^2] - sR: Steering ratio [-] - chi: Steer ratio rear [-] - """ - A = np.zeros((2, 2)) - B = np.zeros((2, 2)) - A[0, 0] = - (VM.cF + VM.cR) / (VM.m * u) - A[0, 1] = - (VM.cF * VM.aF - VM.cR * VM.aR) / (VM.m * u) - u - A[1, 0] = - (VM.cF * VM.aF - VM.cR * VM.aR) / (VM.j * u) - A[1, 1] = - (VM.cF * VM.aF**2 + VM.cR * VM.aR**2) / (VM.j * u) - - # Steering input - B[0, 0] = (VM.cF + VM.chi * VM.cR) / VM.m / VM.sR - B[1, 0] = (VM.cF * VM.aF - VM.chi * VM.cR * VM.aR) / VM.j / VM.sR - - # Roll input - B[0, 1] = -ACCELERATION_DUE_TO_GRAVITY - - return A, B - - -def dyn_ss_sol(sa: float, u: float, roll: float, VM: VehicleModel) -> np.ndarray: - """Calculate the steady state solution when x_dot = 0, - Ax + Bu = 0 => x = -A^{-1} B u - - Args: - sa: Steering angle [rad] - u: Speed [m/s] - roll: Road Roll [rad] - VM: Vehicle model - - Returns: - 2x1 matrix with steady state solution - """ - A, B = create_dyn_state_matrices(u, VM) - inp = np.array([[sa], [roll]]) - return -solve(A, B) @ inp # type: ignore - - -def calc_slip_factor(VM: VehicleModel) -> float: - """The slip factor is a measure of how the curvature changes with speed - it's positive for Oversteering vehicle, negative (usual case) otherwise. - """ - return VM.m * (VM.cF * VM.aF - VM.cR * VM.aR) / (VM.l**2 * VM.cF * VM.cR) diff --git a/opendbc_repo/opendbc/car/vin.py b/opendbc_repo/opendbc/car/vin.py deleted file mode 100644 index e373c76665..0000000000 --- a/opendbc_repo/opendbc/car/vin.py +++ /dev/null @@ -1,75 +0,0 @@ -import re -from dataclasses import dataclass, field - -from opendbc.car import uds -from opendbc.car.carlog import carlog -from opendbc.car.isotp_parallel_query import IsoTpParallelQuery -from opendbc.car.fw_query_definitions import STANDARD_VIN_ADDRS, StdQueries - -VIN_UNKNOWN = "0" * 17 -VIN_RE = "[A-HJ-NPR-Z0-9]{17}" - - -@dataclass -class Vin: - vin: str - wmi: str = field(init=False) - vds: str = field(init=False) - vis: str = field(init=False) - - def __post_init__(self): - # parses VIN in accordance with North America standard >2000 vehicles: - # https://en.wikipedia.org/wiki/Vehicle_identification_number#Components - self.wmi = self.vin[:3] # World Manufacturer Identifier - self.vds = self.vin[3:9] # Vehicle Descriptor Section - self.vis = self.vin[9:17] # Vehicle Identifier Section - - -def is_valid_vin(vin: str): - return re.fullmatch(VIN_RE, vin) is not None - - -def get_vin(can_recv, can_send, buses, timeout=0.1, retry=2): - for i in range(retry): - for bus in buses: - for request, response, valid_buses, vin_addrs, functional_addrs, rx_offset in ( - (StdQueries.UDS_VIN_REQUEST, StdQueries.UDS_VIN_RESPONSE, (0, 1), STANDARD_VIN_ADDRS, uds.FUNCTIONAL_ADDRS, 0x8), - (StdQueries.OBD_VIN_REQUEST, StdQueries.OBD_VIN_RESPONSE, (0, 1), STANDARD_VIN_ADDRS, uds.FUNCTIONAL_ADDRS, 0x8), - (StdQueries.GM_VIN_REQUEST, StdQueries.GM_VIN_RESPONSE, (0,), [0x24b], None, 0x400), # Bolt fwdCamera - (StdQueries.KWP_VIN_REQUEST, StdQueries.KWP_VIN_RESPONSE, (0,), [0x797], None, 0x3), # Nissan Leaf VCM - (StdQueries.UDS_VIN_REQUEST, StdQueries.UDS_VIN_RESPONSE, (0,), [0x74f], None, 0x6a), # Volkswagen fwdCamera - (StdQueries.UDS_VIN_REQUEST, StdQueries.UDS_VIN_RESPONSE, (0,), [0x733], None, 0x40), # Rivian EPAS - ): - if bus not in valid_buses: - continue - - # When querying functional addresses, ideally we respond to everything that sends a first frame to avoid leaving the - # ECU in a temporary bad state. Note that we may not cover all ECUs and response offsets. TODO: query physical addrs - tx_addrs = vin_addrs - if functional_addrs is not None: - tx_addrs = [a for a in range(0x700, 0x800) if a != 0x7DF] + list(range(0x18DA00F1, 0x18DB00F1, 0x100)) - - try: - query = IsoTpParallelQuery(can_send, can_recv, bus, tx_addrs, [request, ], [response, ], response_offset=rx_offset, - functional_addrs=functional_addrs) - results = query.get_data(timeout) - - for addr in vin_addrs: - vin = results.get((addr, None)) - if vin is not None: - # Ford and Nissan pads with null bytes - if len(vin) in (19, 24): - vin = re.sub(b'\x00*$', b'', vin) - - # Honda Bosch response starts with a length, trim to correct length - if vin.startswith(b'\x11'): - vin = vin[1:18] - - carlog.error(f"got vin with {request=}") - return uds.get_rx_addr_for_tx_addr(addr, rx_offset=rx_offset), bus, vin.decode() - except Exception: - carlog.exception("VIN query exception") - - carlog.error(f"vin query retry ({i+1}) ...") - - return -1, -1, VIN_UNKNOWN diff --git a/opendbc_repo/opendbc/car/volkswagen/__init__.py b/opendbc_repo/opendbc/car/volkswagen/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/volkswagen/carcontroller.py b/opendbc_repo/opendbc/car/volkswagen/carcontroller.py deleted file mode 100644 index f4ba62c814..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/carcontroller.py +++ /dev/null @@ -1,126 +0,0 @@ -import numpy as np -from opendbc.can import CANPacker -from opendbc.car import Bus, DT_CTRL, apply_driver_steer_torque_limits, structs -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.interfaces import CarControllerBase -from opendbc.car.volkswagen import mqbcan, pqcan -from opendbc.car.volkswagen.values import CANBUS, CarControllerParams, VolkswagenFlags - -VisualAlert = structs.CarControl.HUDControl.VisualAlert -LongCtrlState = structs.CarControl.Actuators.LongControlState - - -class CarController(CarControllerBase): - def __init__(self, dbc_names, CP): - super().__init__(dbc_names, CP) - self.CCP = CarControllerParams(CP) - self.CCS = pqcan if CP.flags & VolkswagenFlags.PQ else mqbcan - self.packer_pt = CANPacker(dbc_names[Bus.pt]) - self.ext_bus = CANBUS.pt if CP.networkLocation == structs.CarParams.NetworkLocation.fwdCamera else CANBUS.cam - self.aeb_available = not CP.flags & VolkswagenFlags.PQ - - self.apply_torque_last = 0 - self.gra_acc_counter_last = None - self.eps_timer_soft_disable_alert = False - self.hca_frame_timer_running = 0 - self.hca_frame_same_torque = 0 - - def update(self, CC, CS, now_nanos): - actuators = CC.actuators - hud_control = CC.hudControl - can_sends = [] - - # **** Steering Controls ************************************************ # - - if self.frame % self.CCP.STEER_STEP == 0: - # Logic to avoid HCA state 4 "refused": - # * Don't steer unless HCA is in state 3 "ready" or 5 "active" - # * Don't steer at standstill - # * Don't send > 3.00 Newton-meters torque - # * Don't send the same torque for > 6 seconds - # * Don't send uninterrupted steering for > 360 seconds - # MQB racks reset the uninterrupted steering timer after a single frame - # of HCA disabled; this is done whenever output happens to be zero. - - if CC.latActive: - new_torque = int(round(actuators.torque * self.CCP.STEER_MAX)) - apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.CCP) - self.hca_frame_timer_running += self.CCP.STEER_STEP - if self.apply_torque_last == apply_torque: - self.hca_frame_same_torque += self.CCP.STEER_STEP - if self.hca_frame_same_torque > self.CCP.STEER_TIME_STUCK_TORQUE / DT_CTRL: - apply_torque -= (1, -1)[apply_torque < 0] - self.hca_frame_same_torque = 0 - else: - self.hca_frame_same_torque = 0 - hca_enabled = abs(apply_torque) > 0 - else: - hca_enabled = False - apply_torque = 0 - - if not hca_enabled: - self.hca_frame_timer_running = 0 - - self.eps_timer_soft_disable_alert = self.hca_frame_timer_running > self.CCP.STEER_TIME_ALERT / DT_CTRL - self.apply_torque_last = apply_torque - can_sends.append(self.CCS.create_steering_control(self.packer_pt, CANBUS.pt, apply_torque, hca_enabled)) - - if self.CP.flags & VolkswagenFlags.STOCK_HCA_PRESENT: - # Pacify VW Emergency Assist driver inactivity detection by changing its view of driver steering input torque - # to the greatest of actual driver input or 2x openpilot's output (1x openpilot output is not enough to - # consistently reset inactivity detection on straight level roads). See commaai/openpilot#23274 for background. - ea_simulated_torque = float(np.clip(apply_torque * 2, -self.CCP.STEER_MAX, self.CCP.STEER_MAX)) - if abs(CS.out.steeringTorque) > abs(ea_simulated_torque): - ea_simulated_torque = CS.out.steeringTorque - can_sends.append(self.CCS.create_eps_update(self.packer_pt, CANBUS.cam, CS.eps_stock_values, ea_simulated_torque)) - - # **** Acceleration Controls ******************************************** # - - if self.CP.openpilotLongitudinalControl: - if self.frame % self.CCP.ACC_CONTROL_STEP == 0: - acc_control = self.CCS.acc_control_value(CS.out.cruiseState.available, CS.out.accFaulted, CC.longActive) - accel = float(np.clip(actuators.accel, self.CCP.ACCEL_MIN, self.CCP.ACCEL_MAX) if CC.longActive else 0) - stopping = actuators.longControlState == LongCtrlState.stopping - starting = actuators.longControlState == LongCtrlState.pid and (CS.esp_hold_confirmation or CS.out.vEgo < self.CP.vEgoStopping) - can_sends.extend(self.CCS.create_acc_accel_control(self.packer_pt, CANBUS.pt, CS.acc_type, CC.longActive, accel, - acc_control, stopping, starting, CS.esp_hold_confirmation)) - - #if self.aeb_available: - # if self.frame % self.CCP.AEB_CONTROL_STEP == 0: - # can_sends.append(self.CCS.create_aeb_control(self.packer_pt, False, False, 0.0)) - # if self.frame % self.CCP.AEB_HUD_STEP == 0: - # can_sends.append(self.CCS.create_aeb_hud(self.packer_pt, False, False)) - - # **** HUD Controls ***************************************************** # - - if self.frame % self.CCP.LDW_STEP == 0: - hud_alert = 0 - if hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw): - hud_alert = self.CCP.LDW_MESSAGES["laneAssistTakeOver"] - can_sends.append(self.CCS.create_lka_hud_control(self.packer_pt, CANBUS.pt, CS.ldw_stock_values, CC.latActive, - CS.out.steeringPressed, hud_alert, hud_control)) - - if self.frame % self.CCP.ACC_HUD_STEP == 0 and self.CP.openpilotLongitudinalControl: - lead_distance = 0 - if hud_control.leadVisible and self.frame * DT_CTRL > 1.0: # Don't display lead until we know the scaling factor - lead_distance = 512 if CS.upscale_lead_car_signal else 8 - acc_hud_status = self.CCS.acc_hud_status_value(CS.out.cruiseState.available, CS.out.accFaulted, CC.longActive) - # FIXME: follow the recent displayed-speed updates, also use mph_kmh toggle to fix display rounding problem? - set_speed = hud_control.setSpeed * CV.MS_TO_KPH - can_sends.append(self.CCS.create_acc_hud_control(self.packer_pt, CANBUS.pt, acc_hud_status, set_speed, - lead_distance, hud_control.leadDistanceBars)) - - # **** Stock ACC Button Controls **************************************** # - - gra_send_ready = self.CP.pcmCruise and CS.gra_stock_values["COUNTER"] != self.gra_acc_counter_last - if gra_send_ready and (CC.cruiseControl.cancel or CC.cruiseControl.resume): - can_sends.append(self.CCS.create_acc_buttons_control(self.packer_pt, self.ext_bus, CS.gra_stock_values, - cancel=CC.cruiseControl.cancel, resume=CC.cruiseControl.resume)) - - new_actuators = actuators.as_builder() - new_actuators.torque = self.apply_torque_last / self.CCP.STEER_MAX - new_actuators.torqueOutputCan = self.apply_torque_last - - self.gra_acc_counter_last = CS.gra_stock_values["COUNTER"] - self.frame += 1 - return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/volkswagen/carstate.py b/opendbc_repo/opendbc/car/volkswagen/carstate.py deleted file mode 100644 index 40b93a9b70..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/carstate.py +++ /dev/null @@ -1,280 +0,0 @@ -from opendbc.can import CANParser -from opendbc.car import Bus, structs -from opendbc.car.interfaces import CarStateBase -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.volkswagen.values import DBC, CANBUS, NetworkLocation, TransmissionType, GearShifter, \ - CarControllerParams, VolkswagenFlags - -ButtonType = structs.CarState.ButtonEvent.Type - - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - self.frame = 0 - self.eps_init_complete = False - self.CCP = CarControllerParams(CP) - self.button_states = {button.event_type: False for button in self.CCP.BUTTONS} - self.esp_hold_confirmation = False - self.upscale_lead_car_signal = False - self.eps_stock_values = False - - def update_button_enable(self, buttonEvents: list[structs.CarState.ButtonEvent]): - if not self.CP.pcmCruise: - for b in buttonEvents: - # Enable OP long on falling edge of enable buttons - if b.type in (ButtonType.setCruise, ButtonType.resumeCruise) and not b.pressed: - return True - return False - - def create_button_events(self, pt_cp, buttons): - button_events = [] - - for button in buttons: - state = pt_cp.vl[button.can_addr][button.can_msg] in button.values - if self.button_states[button.event_type] != state: - event = structs.CarState.ButtonEvent() - event.type = button.event_type - event.pressed = state - button_events.append(event) - self.button_states[button.event_type] = state - - return button_events - - def update(self, can_parsers) -> structs.CarState: - pt_cp = can_parsers[Bus.pt] - cam_cp = can_parsers[Bus.cam] - ext_cp = pt_cp if self.CP.networkLocation == NetworkLocation.fwdCamera else cam_cp - - if self.CP.flags & VolkswagenFlags.PQ: - return self.update_pq(pt_cp, cam_cp, ext_cp) - - ret = structs.CarState() - - if self.CP.transmissionType == TransmissionType.direct: - ret.gearShifter = self.parse_gear_shifter(self.CCP.shifter_values.get(pt_cp.vl["Motor_EV_01"]["MO_Waehlpos"], None)) - elif self.CP.transmissionType == TransmissionType.manual: - ret.clutchPressed = not pt_cp.vl["Motor_14"]["MO_Kuppl_schalter"] - if bool(pt_cp.vl["Gateway_72"]["BCM1_Rueckfahrlicht_Schalter"]): - ret.gearShifter = GearShifter.reverse - else: - ret.gearShifter = GearShifter.drive - else: - ret.gearShifter = self.parse_gear_shifter(self.CCP.shifter_values.get(pt_cp.vl["Gateway_73"]["GE_Fahrstufe"], None)) - - if True: - # MQB-specific - self.upscale_lead_car_signal = bool(pt_cp.vl["Kombi_03"]["KBI_Variante"]) # Analog vs digital instrument cluster - - ret.wheelSpeeds = self.get_wheel_speeds( - pt_cp.vl["ESP_19"]["ESP_VL_Radgeschw_02"], - pt_cp.vl["ESP_19"]["ESP_VR_Radgeschw_02"], - pt_cp.vl["ESP_19"]["ESP_HL_Radgeschw_02"], - pt_cp.vl["ESP_19"]["ESP_HR_Radgeschw_02"], - ) - - ret.yawRate = pt_cp.vl["ESP_02"]["ESP_Gierrate"] * (1, -1)[int(pt_cp.vl["ESP_02"]["ESP_VZ_Gierrate"])] * CV.DEG_TO_RAD - hca_status = self.CCP.hca_status_values.get(pt_cp.vl["LH_EPS_03"]["EPS_HCA_Status"]) - if self.CP.flags & VolkswagenFlags.STOCK_HCA_PRESENT: - ret.carFaultedNonCritical = bool(cam_cp.vl["HCA_01"]["EA_Ruckfreigabe"]) or cam_cp.vl["HCA_01"]["EA_ACC_Sollstatus"] > 0 # EA - - drive_mode = True - ret.gas = pt_cp.vl["Motor_20"]["MO_Fahrpedalrohwert_01"] / 100.0 - ret.brake = pt_cp.vl["ESP_05"]["ESP_Bremsdruck"] / 250.0 # FIXME: this is pressure in Bar, not sure what OP expects - brake_pedal_pressed = bool(pt_cp.vl["Motor_14"]["MO_Fahrer_bremst"]) - brake_pressure_detected = bool(pt_cp.vl["ESP_05"]["ESP_Fahrer_bremst"]) - ret.brakePressed = brake_pedal_pressed or brake_pressure_detected - ret.parkingBrake = bool(pt_cp.vl["Kombi_01"]["KBI_Handbremse"]) # FIXME: need to include an EPB check as well - - ret.doorOpen = any([pt_cp.vl["Gateway_72"]["ZV_FT_offen"], - pt_cp.vl["Gateway_72"]["ZV_BT_offen"], - pt_cp.vl["Gateway_72"]["ZV_HFS_offen"], - pt_cp.vl["Gateway_72"]["ZV_HBFS_offen"], - pt_cp.vl["Gateway_72"]["ZV_HD_offen"]]) - - if self.CP.enableBsm: - # Infostufe: BSM LED on, Warnung: BSM LED flashing - ret.leftBlindspot = bool(ext_cp.vl["SWA_01"]["SWA_Infostufe_SWA_li"]) or bool(ext_cp.vl["SWA_01"]["SWA_Warnung_SWA_li"]) - ret.rightBlindspot = bool(ext_cp.vl["SWA_01"]["SWA_Infostufe_SWA_re"]) or bool(ext_cp.vl["SWA_01"]["SWA_Warnung_SWA_re"]) - - ret.stockFcw = bool(ext_cp.vl["ACC_10"]["AWV2_Freigabe"]) - ret.stockAeb = bool(ext_cp.vl["ACC_10"]["ANB_Teilbremsung_Freigabe"]) or bool(ext_cp.vl["ACC_10"]["ANB_Zielbremsung_Freigabe"]) - - self.acc_type = ext_cp.vl["ACC_06"]["ACC_Typ"] - self.esp_hold_confirmation = bool(pt_cp.vl["ESP_21"]["ESP_Haltebestaetigung"]) - acc_limiter_mode = ext_cp.vl["ACC_02"]["ACC_Gesetzte_Zeitluecke"] == 0 - speed_limiter_mode = bool(pt_cp.vl["TSK_06"]["TSK_Limiter_ausgewaehlt"]) - - ret.cruiseState.available = pt_cp.vl["TSK_06"]["TSK_Status"] in (2, 3, 4, 5) - ret.cruiseState.enabled = pt_cp.vl["TSK_06"]["TSK_Status"] in (3, 4, 5) - ret.cruiseState.speed = ext_cp.vl["ACC_02"]["ACC_Wunschgeschw_02"] * CV.KPH_TO_MS if self.CP.pcmCruise else 0 - ret.accFaulted = pt_cp.vl["TSK_06"]["TSK_Status"] in (6, 7) - - ret.leftBlinker = bool(pt_cp.vl["Blinkmodi_02"]["Comfort_Signal_Left"]) - ret.rightBlinker = bool(pt_cp.vl["Blinkmodi_02"]["Comfort_Signal_Right"]) - - # Shared logic - - ret.vEgoRaw = float(np.mean([ret.wheelSpeeds.fl, ret.wheelSpeeds.fr, ret.wheelSpeeds.rl, ret.wheelSpeeds.rr])) - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - - ret.steeringAngleDeg = pt_cp.vl["LWI_01"]["LWI_Lenkradwinkel"] * (1, -1)[int(pt_cp.vl["LWI_01"]["LWI_VZ_Lenkradwinkel"])] - ret.steeringRateDeg = pt_cp.vl["LWI_01"]["LWI_Lenkradw_Geschw"] * (1, -1)[int(pt_cp.vl["LWI_01"]["LWI_VZ_Lenkradw_Geschw"])] - ret.steeringTorque = pt_cp.vl["LH_EPS_03"]["EPS_Lenkmoment"] * (1, -1)[int(pt_cp.vl["LH_EPS_03"]["EPS_VZ_Lenkmoment"])] - ret.steeringPressed = abs(ret.steeringTorque) > self.CCP.STEER_DRIVER_ALLOWANCE - ret.steerFaultTemporary, ret.steerFaultPermanent = self.update_hca_state(hca_status, drive_mode) - - ret.gasPressed = ret.gas > 0 - ret.espActive = bool(pt_cp.vl["ESP_21"]["ESP_Eingriff"]) - ret.espDisabled = pt_cp.vl["ESP_21"]["ESP_Tastung_passiv"] != 0 - ret.seatbeltUnlatched = pt_cp.vl["Airbag_02"]["AB_Gurtschloss_FA"] != 3 - - ret.standstill = ret.vEgoRaw == 0 - ret.cruiseState.standstill = self.CP.pcmCruise and self.esp_hold_confirmation - ret.cruiseState.nonAdaptive = acc_limiter_mode or speed_limiter_mode - if ret.cruiseState.speed > 90: - ret.cruiseState.speed = 0 - - self.eps_stock_values = pt_cp.vl["LH_EPS_03"] - self.ldw_stock_values = cam_cp.vl["LDW_02"] if self.CP.networkLocation == NetworkLocation.fwdCamera else {} - self.gra_stock_values = pt_cp.vl["GRA_ACC_01"] - - ret.buttonEvents = self.create_button_events(pt_cp, self.CCP.BUTTONS) - - self.frame += 1 - return ret - - def update_pq(self, pt_cp, cam_cp, ext_cp) -> structs.CarState: - ret = structs.CarState() - # Update vehicle speed and acceleration from ABS wheel speeds. - ret.wheelSpeeds = self.get_wheel_speeds( - pt_cp.vl["Bremse_3"]["Radgeschw__VL_4_1"], - pt_cp.vl["Bremse_3"]["Radgeschw__VR_4_1"], - pt_cp.vl["Bremse_3"]["Radgeschw__HL_4_1"], - pt_cp.vl["Bremse_3"]["Radgeschw__HR_4_1"], - ) - - # vEgo obtained from Bremse_1 vehicle speed rather than Bremse_3 wheel speeds because Bremse_3 isn't present on NSF - ret.vEgoRaw = pt_cp.vl["Bremse_1"]["Geschwindigkeit_neu__Bremse_1_"] * CV.KPH_TO_MS - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.standstill = ret.vEgoRaw == 0 - - # Update EPS position and state info. For signed values, VW sends the sign in a separate signal. - ret.steeringAngleDeg = pt_cp.vl["Lenkhilfe_3"]["LH3_BLW"] * (1, -1)[int(pt_cp.vl["Lenkhilfe_3"]["LH3_BLWSign"])] - ret.steeringRateDeg = pt_cp.vl["Lenkwinkel_1"]["Lenkradwinkel_Geschwindigkeit"] * (1, -1)[int(pt_cp.vl["Lenkwinkel_1"]["Lenkradwinkel_Geschwindigkeit_S"])] - ret.steeringTorque = pt_cp.vl["Lenkhilfe_3"]["LH3_LM"] * (1, -1)[int(pt_cp.vl["Lenkhilfe_3"]["LH3_LMSign"])] - ret.steeringPressed = abs(ret.steeringTorque) > self.CCP.STEER_DRIVER_ALLOWANCE - ret.yawRate = pt_cp.vl["Bremse_5"]["Giergeschwindigkeit"] * (1, -1)[int(pt_cp.vl["Bremse_5"]["Vorzeichen_der_Giergeschwindigk"])] * CV.DEG_TO_RAD - hca_status = self.CCP.hca_status_values.get(pt_cp.vl["Lenkhilfe_2"]["LH2_Sta_HCA"]) - ret.steerFaultTemporary, ret.steerFaultPermanent = self.update_hca_state(hca_status) - - # Update gas, brakes, and gearshift. - ret.gas = pt_cp.vl["Motor_3"]["Fahrpedal_Rohsignal"] / 100.0 - ret.gasPressed = ret.gas > 0 - ret.brake = pt_cp.vl["Bremse_5"]["Bremsdruck"] / 250.0 # FIXME: this is pressure in Bar, not sure what OP expects - ret.brakePressed = bool(pt_cp.vl["Motor_2"]["Bremslichtschalter"]) - ret.parkingBrake = bool(pt_cp.vl["Kombi_1"]["Bremsinfo"]) - - # Update gear and/or clutch position data. - if self.CP.transmissionType == TransmissionType.automatic: - ret.gearShifter = self.parse_gear_shifter(self.CCP.shifter_values.get(pt_cp.vl["Getriebe_1"]["Waehlhebelposition__Getriebe_1_"], None)) - elif self.CP.transmissionType == TransmissionType.manual: - ret.clutchPressed = not pt_cp.vl["Motor_1"]["Kupplungsschalter"] - reverse_light = bool(pt_cp.vl["Gate_Komf_1"]["GK1_Rueckfahr"]) - if reverse_light: - ret.gearShifter = GearShifter.reverse - else: - ret.gearShifter = GearShifter.drive - - # Update door and trunk/hatch lid open status. - ret.doorOpen = any([pt_cp.vl["Gate_Komf_1"]["GK1_Fa_Tuerkont"], - pt_cp.vl["Gate_Komf_1"]["BSK_BT_geoeffnet"], - pt_cp.vl["Gate_Komf_1"]["BSK_HL_geoeffnet"], - pt_cp.vl["Gate_Komf_1"]["BSK_HR_geoeffnet"], - pt_cp.vl["Gate_Komf_1"]["BSK_HD_Hauptraste"]]) - - # Update seatbelt fastened status. - ret.seatbeltUnlatched = not bool(pt_cp.vl["Airbag_1"]["Gurtschalter_Fahrer"]) - - # Consume blind-spot monitoring info/warning LED states, if available. - # Infostufe: BSM LED on, Warnung: BSM LED flashing - if self.CP.enableBsm: - ret.leftBlindspot = bool(ext_cp.vl["SWA_1"]["SWA_Infostufe_SWA_li"]) or bool(ext_cp.vl["SWA_1"]["SWA_Warnung_SWA_li"]) - ret.rightBlindspot = bool(ext_cp.vl["SWA_1"]["SWA_Infostufe_SWA_re"]) or bool(ext_cp.vl["SWA_1"]["SWA_Warnung_SWA_re"]) - - # Consume factory LDW data relevant for factory SWA (Lane Change Assist) - # and capture it for forwarding to the blind spot radar controller - self.ldw_stock_values = cam_cp.vl["LDW_Status"] if self.CP.networkLocation == NetworkLocation.fwdCamera else {} - - # Stock FCW is considered active if the release bit for brake-jerk warning - # is set. Stock AEB considered active if the partial braking or target - # braking release bits are set. - # Refer to VW Self Study Program 890253: Volkswagen Driver Assistance - # Systems, chapters on Front Assist with Braking and City Emergency - # Braking for the 2016 Passat NMS - # TODO: deferred until we can collect data on pre-MY2016 behavior, AWV message may be shorter with fewer signals - ret.stockFcw = False - ret.stockAeb = False - - # Update ACC radar status. - self.acc_type = ext_cp.vl["ACC_System"]["ACS_Typ_ACC"] - ret.cruiseState.available = bool(pt_cp.vl["Motor_5"]["GRA_Hauptschalter"]) - ret.cruiseState.enabled = pt_cp.vl["Motor_2"]["GRA_Status"] in (1, 2) - if self.CP.pcmCruise: - ret.accFaulted = ext_cp.vl["ACC_GRA_Anzeige"]["ACA_StaACC"] in (6, 7) - else: - ret.accFaulted = pt_cp.vl["Motor_2"]["GRA_Status"] == 3 - - # Update ACC setpoint. When the setpoint reads as 255, the driver has not - # yet established an ACC setpoint, so treat it as zero. - ret.cruiseState.speed = ext_cp.vl["ACC_GRA_Anzeige"]["ACA_V_Wunsch"] * CV.KPH_TO_MS - if ret.cruiseState.speed > 70: # 255 kph in m/s == no current setpoint - ret.cruiseState.speed = 0 - - # Update button states for turn signals and ACC controls, capture all ACC button state/config for passthrough - ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_stalk(300, pt_cp.vl["Gate_Komf_1"]["GK1_Blinker_li"], - pt_cp.vl["Gate_Komf_1"]["GK1_Blinker_re"]) - ret.buttonEvents = self.create_button_events(pt_cp, self.CCP.BUTTONS) - self.gra_stock_values = pt_cp.vl["GRA_Neu"] - - # Additional safety checks performed in CarInterface. - ret.espDisabled = bool(pt_cp.vl["Bremse_1"]["ESP_Passiv_getastet"]) - - self.frame += 1 - return ret - - def update_hca_state(self, hca_status, drive_mode=True): - # Treat FAULT as temporary for worst likely EPS recovery time, for cars without factory Lane Assist - # DISABLED means the EPS hasn't been configured to support Lane Assist - self.eps_init_complete = self.eps_init_complete or (hca_status in ("DISABLED", "READY", "ACTIVE") or self.frame > 600) - perm_fault = drive_mode and hca_status == "DISABLED" or (self.eps_init_complete and hca_status == "FAULT") - temp_fault = drive_mode and hca_status in ("REJECTED", "PREEMPTED") or not self.eps_init_complete - return temp_fault, perm_fault - - @staticmethod - def get_can_parsers(CP): - if CP.flags & VolkswagenFlags.PQ: - return CarState.get_can_parsers_pq(CP) - - # another case of the 1-50Hz - cam_messages = [] - if CP.flags & VolkswagenFlags.STOCK_HCA_PRESENT: - cam_messages += [ - ("HCA_01", 1), # From R242 Driver assistance camera, 50Hz if steering/1Hz if not - ] - - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [ - # the 50->1Hz is currently too much for the CANParser to figure out - ("Blinkmodi_02", 1), # From J519 BCM (sent at 1Hz when no lights active, 50Hz when active) - ], CANBUS.pt), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], cam_messages, CANBUS.cam), - } - - @staticmethod - def get_can_parsers_pq(CP): - return { - Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CANBUS.pt), - Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CANBUS.cam), - } - diff --git a/opendbc_repo/opendbc/car/volkswagen/fingerprints.py b/opendbc_repo/opendbc/car/volkswagen/fingerprints.py deleted file mode 100644 index 1162e3f945..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/fingerprints.py +++ /dev/null @@ -1,1247 +0,0 @@ -from opendbc.car.structs import CarParams -from opendbc.car.volkswagen.values import CAR - -Ecu = CarParams.Ecu - -# TODO: Sharan Mk2 EPS and DQ250 auto trans both require KWP2000 support for fingerprinting - - -FW_VERSIONS = { - CAR.VOLKSWAGEN_ARTEON_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704L906026TM\xf1\x896847', - b'\xf1\x873G0906259AH\xf1\x890001', - b'\xf1\x873G0906259F \xf1\x890004', - b'\xf1\x873G0906259G \xf1\x890004', - b'\xf1\x873G0906259G \xf1\x890005', - b'\xf1\x873G0906259J \xf1\x890002', - b'\xf1\x873G0906259M \xf1\x890003', - b'\xf1\x873G0906259N \xf1\x890004', - b'\xf1\x873G0906259P \xf1\x890001', - b'\xf1\x875NA907115H \xf1\x890002', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158L \xf1\x893611', - b'\xf1\x870DL300014C \xf1\x893704', - b'\xf1\x870GC300011L \xf1\x891401', - b'\xf1\x870GC300013Q \xf1\x892402', - b'\xf1\x870GC300014M \xf1\x892802', - b'\xf1\x870GC300019G \xf1\x892804', - b'\xf1\x870GC300040P \xf1\x891401', - b'\xf1\x870GC300043 \xf1\x892303', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1616001613121157161111572900', - b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1616001613121177161113772900', - b'\xf1\x873Q0959655BK\xf1\x890712\xf1\x82\x0e1616001613121157161111572C00', - b'\xf1\x873Q0959655CK\xf1\x890711\xf1\x82\x0e1712141712141105121122052900', - b'\xf1\x873Q0959655CR\xf1\x890720\xf1\x82\x0e1616001613121105161111052900', - b'\xf1\x873Q0959655DA\xf1\x890720\xf1\x82\x0e1712141712141105121122052900', - b'\xf1\x873Q0959655DL\xf1\x890732\xf1\x82\x0e1812141812171105141123052J00', - b'\xf1\x875QF959655AP\xf1\x890755\xf1\x82\x1311110011111311111100110200--1611125F49', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571B41815A1', - b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571B00817A1', - b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571B00818A1', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567B0020800', - b'\xf1\x875WA907145M \xf1\x891051\xf1\x82\x002MB4092M7N', - b'\xf1\x875WA907145M \xf1\x891051\xf1\x82\x002NB4202N7N', - b'\xf1\x875WA907145Q \xf1\x891063\xf1\x82\x002KB4092KOM', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572T \xf1\x890383', - b'\xf1\x875Q0907572J \xf1\x890654', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572R \xf1\x890771', - ], - }, - CAR.VOLKSWAGEN_ATLAS_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8703H906026AA\xf1\x899970', - b'\xf1\x8703H906026AG\xf1\x899971', - b'\xf1\x8703H906026AG\xf1\x899973', - b'\xf1\x8703H906026AJ\xf1\x890638', - b'\xf1\x8703H906026AJ\xf1\x891017', - b'\xf1\x8703H906026AT\xf1\x891922', - b'\xf1\x8703H906026BC\xf1\x892664', - b'\xf1\x8703H906026F \xf1\x896696', - b'\xf1\x8703H906026F \xf1\x899970', - b'\xf1\x8703H906026J \xf1\x896026', - b'\xf1\x8703H906026J \xf1\x899970', - b'\xf1\x8703H906026J \xf1\x899971', - b'\xf1\x8703H906026S \xf1\x896693', - b'\xf1\x8703H906026S \xf1\x899970', - b'\xf1\x8703H906026S \xf1\x899972', - b'\xf1\x873CN906259 \xf1\x890005', - b'\xf1\x873CN906259F \xf1\x890002', - b'\xf1\x873CN906259K \xf1\x890002', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158A \xf1\x893387', - b'\xf1\x8709G927158DR\xf1\x893536', - b'\xf1\x8709G927158DR\xf1\x893742', - b'\xf1\x8709G927158EN\xf1\x893691', - b'\xf1\x8709G927158F \xf1\x893489', - b'\xf1\x8709G927158FT\xf1\x893835', - b'\xf1\x8709G927158GK\xf1\x893941', - b'\xf1\x8709G927158GL\xf1\x893939', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655BC\xf1\x890503\xf1\x82\x0e1914151912001103111122031200', - b'\xf1\x873Q0959655BN\xf1\x890713\xf1\x82\x0e2214152212001105141122052900', - b'\xf1\x873Q0959655DB\xf1\x890720\xf1\x82\x0e1114151112001105111122052900', - b'\xf1\x873Q0959655DB\xf1\x890720\xf1\x82\x0e2214152212001105141122052900', - b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1114151112001105111122052J00', - b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1114151112001105161122052J00', - b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1115151112001105121122052J00', - b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1115151112001105171122052J00', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B60924A1', - b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B6G920A1', - b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B6M921A1', - b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B6N920A1', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820528B6080105', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820528B6090105', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572R \xf1\x890372', - b'\xf1\x872Q0907572T \xf1\x890383', - b'\xf1\x875Q0907572H \xf1\x890620', - b'\xf1\x875Q0907572J \xf1\x890654', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572S \xf1\x890780', - ], - }, - CAR.VOLKSWAGEN_CADDY_MK3: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906027T \xf1\x892363', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x872K5959655E \xf1\x890018\xf1\x82\x05000P037605', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0155', - ], - }, - CAR.VOLKSWAGEN_CRAFTER_MK2: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704L906056BP\xf1\x894729', - b'\xf1\x8704L906056EK\xf1\x896391', - b'\xf1\x8705L906023BC\xf1\x892688', - b'\xf1\x8705L906023MH\xf1\x892588', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655AL\xf1\x890505\xf1\x82\x0e1411001413001203151311031100', - b'\xf1\x873Q0959655BG\xf1\x890703\xf1\x82\x0e16120016130012051G1313052900', - b'\xf1\x875QF959655AS\xf1\x890755\xf1\x82\x1315140015150011111100050200--1311120749', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x872N0909143D\x00\xf1\x897010\xf1\x82\x05183AZ306A2', - b'\xf1\x872N0909143E \xf1\x897021\xf1\x82\x05163AZ306A2', - b'\xf1\x872N0909143H \xf1\x897045\xf1\x82\x05263AZ309A2', - b'\xf1\x872N0909144K \xf1\x897045\xf1\x82\x05233AZ810A2', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572J \xf1\x890156', - b'\xf1\x872Q0907572M \xf1\x890233', - ], - }, - CAR.VOLKSWAGEN_GOLF_MK7: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906016A \xf1\x897697', - b'\xf1\x8704E906016AD\xf1\x895758', - b'\xf1\x8704E906016CE\xf1\x899096', - b'\xf1\x8704E906016CH\xf1\x899226', - b'\xf1\x8704E906016N \xf1\x899105', - b'\xf1\x8704E906023AG\xf1\x891726', - b'\xf1\x8704E906023BN\xf1\x894518', - b'\xf1\x8704E906024K \xf1\x896811', - b'\xf1\x8704E906024K \xf1\x899970', - b'\xf1\x8704E906027GR\xf1\x892394', - b'\xf1\x8704E906027HD\xf1\x892603', - b'\xf1\x8704E906027HD\xf1\x893742', - b'\xf1\x8704E906027MA\xf1\x894958', - b'\xf1\x8704L906021DT\xf1\x895520', - b'\xf1\x8704L906021DT\xf1\x898127', - b'\xf1\x8704L906021N \xf1\x895518', - b'\xf1\x8704L906021N \xf1\x898138', - b'\xf1\x8704L906026BN\xf1\x891197', - b'\xf1\x8704L906026BP\xf1\x897608', - b'\xf1\x8704L906026NF\xf1\x899528', - b'\xf1\x8704L906056CL\xf1\x893823', - b'\xf1\x8704L906056CR\xf1\x895813', - b'\xf1\x8704L906056HE\xf1\x893758', - b'\xf1\x8704L906056HN\xf1\x896590', - b'\xf1\x8704L906056HT\xf1\x896591', - b'\xf1\x8704L997022N \xf1\x899459', - b'\xf1\x870EA906016A \xf1\x898343', - b'\xf1\x870EA906016E \xf1\x894219', - b'\xf1\x870EA906016F \xf1\x894238', - b'\xf1\x870EA906016F \xf1\x895002', - b'\xf1\x870EA906016Q \xf1\x895993', - b'\xf1\x870EA906016S \xf1\x897207', - b'\xf1\x875G0906259 \xf1\x890007', - b'\xf1\x875G0906259D \xf1\x890002', - b'\xf1\x875G0906259J \xf1\x890002', - b'\xf1\x875G0906259L \xf1\x890002', - b'\xf1\x875G0906259N \xf1\x890003', - b'\xf1\x875G0906259Q \xf1\x890002', - b'\xf1\x875G0906259Q \xf1\x892313', - b'\xf1\x875G0906259T \xf1\x890003', - b'\xf1\x878V0906259H \xf1\x890002', - b'\xf1\x878V0906259J \xf1\x890003', - b'\xf1\x878V0906259J \xf1\x890103', - b'\xf1\x878V0906259K \xf1\x890001', - b'\xf1\x878V0906259K \xf1\x890003', - b'\xf1\x878V0906259P \xf1\x890001', - b'\xf1\x878V0906259Q \xf1\x890002', - b'\xf1\x878V0906259R \xf1\x890002', - b'\xf1\x878V0906264F \xf1\x890003', - b'\xf1\x878V0906264L \xf1\x890002', - b'\xf1\x878V0906264M \xf1\x890001', - b'\xf1\x878V09C0BB01 \xf1\x890001', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927749AP\xf1\x892943', - b'\xf1\x8709S927158A \xf1\x893585', - b'\xf1\x870CW300040H \xf1\x890606', - b'\xf1\x870CW300041D \xf1\x891004', - b'\xf1\x870CW300041H \xf1\x891010', - b'\xf1\x870CW300042F \xf1\x891604', - b'\xf1\x870CW300043B \xf1\x891601', - b'\xf1\x870CW300043E \xf1\x891603', - b'\xf1\x870CW300044S \xf1\x894530', - b'\xf1\x870CW300044T \xf1\x895245', - b'\xf1\x870CW300045 \xf1\x894531', - b'\xf1\x870CW300047D \xf1\x895261', - b'\xf1\x870CW300047E \xf1\x895261', - b'\xf1\x870CW300048J \xf1\x890611', - b'\xf1\x870CW300049H \xf1\x890905', - b'\xf1\x870CW300050G \xf1\x891905', - b'\xf1\x870D9300012 \xf1\x894904', - b'\xf1\x870D9300012 \xf1\x894913', - b'\xf1\x870D9300012 \xf1\x894937', - b'\xf1\x870D9300012 \xf1\x895045', - b'\xf1\x870D9300012 \xf1\x895046', - b'\xf1\x870D9300014M \xf1\x895004', - b'\xf1\x870D9300014Q \xf1\x895006', - b'\xf1\x870D9300018 \xf1\x895201', - b'\xf1\x870D9300020D \xf1\x894309', - b'\xf1\x870D9300020J \xf1\x894902', - b'\xf1\x870D9300020Q \xf1\x895201', - b'\xf1\x870D9300020S \xf1\x895201', - b'\xf1\x870D9300040A \xf1\x893613', - b'\xf1\x870D9300040S \xf1\x894311', - b'\xf1\x870D9300041H \xf1\x895220', - b'\xf1\x870D9300041N \xf1\x894512', - b'\xf1\x870D9300041P \xf1\x894507', - b'\xf1\x870DD300045K \xf1\x891120', - b'\xf1\x870DD300046F \xf1\x891601', - b'\xf1\x870GC300012A \xf1\x891401', - b'\xf1\x870GC300012A \xf1\x891403', - b'\xf1\x870GC300012A \xf1\x891422', - b'\xf1\x870GC300012M \xf1\x892301', - b'\xf1\x870GC300014B \xf1\x892401', - b'\xf1\x870GC300014B \xf1\x892403', - b'\xf1\x870GC300014B \xf1\x892405', - b'\xf1\x870GC300020G \xf1\x892401', - b'\xf1\x870GC300020G \xf1\x892403', - b'\xf1\x870GC300020G \xf1\x892404', - b'\xf1\x870GC300020N \xf1\x892804', - b'\xf1\x870GC300043T \xf1\x899999', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655AA\xf1\x890386\xf1\x82\x111413001113120043114317121C111C9113', - b'\xf1\x875Q0959655AA\xf1\x890386\xf1\x82\x111413001113120053114317121C111C9113', - b'\xf1\x875Q0959655AA\xf1\x890388\xf1\x82\x111413001113120043114317121C111C9113', - b'\xf1\x875Q0959655AA\xf1\x890388\xf1\x82\x111413001113120043114417121411149113', - b'\xf1\x875Q0959655AA\xf1\x890388\xf1\x82\x111413001113120053114317121C111C9113', - b'\xf1\x875Q0959655AR\xf1\x890317\xf1\x82\x13141500111233003142114A2131219333313100', - b'\xf1\x875Q0959655BH\xf1\x890336\xf1\x82\x1314160011123300314211012230229333423100', - b'\xf1\x875Q0959655BH\xf1\x890336\xf1\x82\x1314160011123300314211012230229333463100', - b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x13141600111233003142115A2232229333463100', - b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1314160011123300314240012250229333463100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142404A2251229333463100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142404A2252229333463100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2251229333463100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2252229333463100', - b'\xf1\x875Q0959655C \xf1\x890361\xf1\x82\x111413001112120004110415121610169112', - b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1314160011123300314240012250229333463100', - b'\xf1\x875Q0959655D \xf1\x890388\xf1\x82\x111413001113120006110417121A101A9113', - b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13271112111312--071104171825102591131211', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271112111312--071104171825102591131211', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271212111312--071104171838103891131211', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13272512111312--07110417182C102C91131211', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13341512112212--071104172328102891131211', - b'\xf1\x875Q0959655M \xf1\x890361\xf1\x82\x111413001112120041114115121611169112', - b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200061104171717101791132111', - b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200621143171717111791132111', - b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200061104171724102491132111', - b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200621143171724112491132111', - b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200631143171724122491132111', - b'\xf1\x875Q0959655T \xf1\x890825\xf1\x82\x13271200111312--071104171837103791132111', - b'\xf1\x875Q0959655T \xf1\x890830\xf1\x82\x13271100111312--071104171826102691131211', - b'\xf1\x875QD959655 \xf1\x890388\xf1\x82\x111413001113120006110417121D101D9112', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144F \xf1\x895043\xf1\x82\x0561A01612A0', - b'\xf1\x873Q0909144H \xf1\x895061\xf1\x82\x0566A0J612A1', - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A00514A1', - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A01613A1', - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A0J712A1', - b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571A0J714A1', - b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571A0JA15A1', - b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A01A18A1', - b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A02A16A1', - b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A0JA16A1', - b'\xf1\x873QM909144 \xf1\x895072\xf1\x82\x0571A01714A1', - b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820519A9040203', - b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521A00441A1', - b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521A00608A1', - b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521A00641A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00442A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00642A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A07B05A1', - b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00502A0', - b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00602A0', - b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0522A00402A0', - b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0511A00403A0', - b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1', - b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00404A1', - b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00504A1', - b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00604A1', - b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A07A02A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A00407A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A00507A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A07B04A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A20B03A1', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A2000400', - b'\xf1\x875QD909144B \xf1\x891072\xf1\x82\x0521A00507A1', - b'\xf1\x875QM909144A \xf1\x891072\xf1\x82\x0521A20B03A1', - b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A00442A1', - b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A00642A1', - b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A16A1', - b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A17A1', - b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A18A1', - b'\xf1\x875QN909144B \xf1\x895082\xf1\x82\x0571A01A18A1', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x875Q0907567G \xf1\x890390\xf1\x82\x0101', - b'\xf1\x875Q0907567J \xf1\x890396\xf1\x82\x0101', - b'\xf1\x875Q0907567L \xf1\x890098\xf1\x82\x0101', - b'\xf1\x875Q0907572A \xf1\x890141\xf1\x82\x0101', - b'\xf1\x875Q0907572B \xf1\x890200\xf1\x82\x0101', - b'\xf1\x875Q0907572C \xf1\x890210\xf1\x82\x0101', - b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', - b'\xf1\x875Q0907572E \xf1\x89X310\xf1\x82\x0101', - b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101', - b'\xf1\x875Q0907572G \xf1\x890571', - b'\xf1\x875Q0907572H \xf1\x890620', - b'\xf1\x875Q0907572J \xf1\x890653', - b'\xf1\x875Q0907572J \xf1\x890654', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572R \xf1\x890771', - b'\xf1\x875Q0907572S \xf1\x890780', - ], - }, - CAR.VOLKSWAGEN_JETTA_MK6: { - (Ecu.srs, 0x715, None): [ - b'\xf1\x875C0959655M \xf1\x890726\xf1\x82\t00NB1108--------24', - b'\xf1\x875K0959655H \xf1\x890724\xf1\x82\t00131108--------02', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0151', - b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0152', - ], - }, - CAR.VOLKSWAGEN_JETTA_MK7: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906024AF\xf1\x899970', - b'\xf1\x8704E906024AK\xf1\x899937', - b'\xf1\x8704E906024AS\xf1\x899912', - b'\xf1\x8704E906024B \xf1\x895594', - b'\xf1\x8704E906024BC\xf1\x899971', - b'\xf1\x8704E906024BG\xf1\x891057', - b'\xf1\x8704E906024C \xf1\x899970', - b'\xf1\x8704E906024C \xf1\x899971', - b'\xf1\x8704E906024L \xf1\x895595', - b'\xf1\x8704E906024L \xf1\x899970', - b'\xf1\x8704E906027MS\xf1\x896223', - b'\xf1\x8705E906013BN\xf1\x893711', - b'\xf1\x8705E906013DB\xf1\x893361', - b'\xf1\x875G0906259T \xf1\x890003', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158BQ\xf1\x893545', - b'\xf1\x8709H927158 \xf1\x890515', - b'\xf1\x8709S927158BS\xf1\x893642', - b'\xf1\x8709S927158BS\xf1\x893694', - b'\xf1\x8709S927158CK\xf1\x893770', - b'\xf1\x8709S927158JC\xf1\x894113', - b'\xf1\x8709S927158R \xf1\x893552', - b'\xf1\x8709S927158R \xf1\x893587', - b'\xf1\x870GC300020N \xf1\x892803', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655AG\xf1\x890336\xf1\x82\x1313171231313500314611011530159333463100', - b'\xf1\x875Q0959655AG\xf1\x890336\xf1\x82\x1314171231313500314611011630169333463100', - b'\xf1\x875Q0959655AG\xf1\x890338\xf1\x82\x1314171231313500314611011630169333463100', - b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1314171231313500314642011650169333463100', - b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1314171231313500314643011650169333463100', - b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1311170031313300314240011150119333433100', - b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1319170031313300314240011550159333463100', - b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314642021650169333613100', - b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314643021650169333613100', - b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1317171231313500314642023050309333613100', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A10A11A1', - b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x000_A1080_OM', - b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A10A01A1', - b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521B00404A1', - b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A00642A1', - b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A10A01A1', - b'\xf1\x875QN909144B \xf1\x895082\xf1\x82\x0571A10A11A1', - b'\xf1\x875QV907144F \xf1\x891122\xf1\x82\x0001A00701]V', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907567B \xf1\x890534', - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x875Q0907572N \xf1\x890681', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572R \xf1\x890771', - ], - }, - CAR.VOLKSWAGEN_PASSAT_MK8: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8703N906026E \xf1\x892114', - b'\xf1\x8704E906023AH\xf1\x893379', - b'\xf1\x8704E906023BM\xf1\x894522', - b'\xf1\x8704L906026DP\xf1\x891538', - b'\xf1\x8704L906026ET\xf1\x891990', - b'\xf1\x8704L906026FP\xf1\x892012', - b'\xf1\x8704L906026GA\xf1\x892013', - b'\xf1\x8704L906026GK\xf1\x899971', - b'\xf1\x8704L906026KD\xf1\x894798', - b'\xf1\x8705L906022A \xf1\x890827', - b'\xf1\x873G0906259 \xf1\x890004', - b'\xf1\x873G0906259B \xf1\x890002', - b'\xf1\x873G0906264 \xf1\x890004', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300041E \xf1\x891006', - b'\xf1\x870CW300042H \xf1\x891601', - b'\xf1\x870CW300042H \xf1\x891607', - b'\xf1\x870CW300043H \xf1\x891601', - b'\xf1\x870CW300048R \xf1\x890610', - b'\xf1\x870D9300013A \xf1\x894905', - b'\xf1\x870D9300014L \xf1\x895002', - b'\xf1\x870D9300018C \xf1\x895297', - b'\xf1\x870D9300041A \xf1\x894801', - b'\xf1\x870D9300042H \xf1\x894901', - b'\xf1\x870DD300045T \xf1\x891601', - b'\xf1\x870DD300046H \xf1\x891601', - b'\xf1\x870DL300011H \xf1\x895201', - b'\xf1\x870GC300042H \xf1\x891404', - b'\xf1\x870GC300043 \xf1\x892301', - b'\xf1\x870GC300046P \xf1\x892805', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655AE\xf1\x890195\xf1\x82\r56140056130012416612124111', - b'\xf1\x873Q0959655AF\xf1\x890195\xf1\x82\r56140056130012026612120211', - b'\xf1\x873Q0959655AN\xf1\x890305\xf1\x82\r58160058140013036914110311', - b'\xf1\x873Q0959655AN\xf1\x890306\xf1\x82\r58160058140013036914110311', - b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012416612124111', - b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012516612125111', - b'\xf1\x873Q0959655BB\xf1\x890195\xf1\x82\r56140056130012026612120211', - b'\xf1\x873Q0959655BG\xf1\x890712\xf1\x82\x0e5915005914001305701311052900', - b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e5915005914001305701311052900', - b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001344701311442900', - b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001354701311542900', - b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e5915005914001305701311052900', - b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011111200631145171716121691132111', - b'\xf1\x875QF959655S \xf1\x890639\xf1\x82\x13131100131300111111000120----2211114A48', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566B00611A1', - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566B00711A1', - b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820514B0060703', - b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522B0060803', - b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522B0080803', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526B0060905', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820531B0062105', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521B00606A1', - b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516B00501A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00603A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00703A1', - b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563B0000600', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567B0020600', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x873Q0907572A \xf1\x890126', - b'\xf1\x873Q0907572A \xf1\x890130', - b'\xf1\x873Q0907572B \xf1\x890192', - b'\xf1\x873Q0907572B \xf1\x890194', - b'\xf1\x873Q0907572C \xf1\x890195', - b'\xf1\x873Q0907572C \xf1\x890196', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572R \xf1\x890771', - b'\xf1\x875Q0907572S \xf1\x890780', - ], - }, - CAR.VOLKSWAGEN_PASSAT_NMS: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8706K906016C \xf1\x899609', - b'\xf1\x8706K906016E \xf1\x899830', - b'\xf1\x8706K906016G \xf1\x891124', - b'\xf1\x8706K906071BJ\xf1\x894891', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158AB\xf1\x893318', - b'\xf1\x8709G927158BD\xf1\x893121', - b'\xf1\x8709G927158DK\xf1\x893594', - b'\xf1\x8709G927158FQ\xf1\x893745', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x87561959655 \xf1\x890210\xf1\x82\x1212121111113000102011--121012--101312', - b'\xf1\x87561959655C \xf1\x890508\xf1\x82\x1215141111121100314919--153015--304831', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x87561907567A \xf1\x890132', - b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0152', - ], - }, - CAR.VOLKSWAGEN_POLO_MK6: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704C906025H \xf1\x895177', - b'\xf1\x8705C906032J \xf1\x891702', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300042D \xf1\x891612', - b'\xf1\x870CW300050D \xf1\x891908', - b'\xf1\x870CW300051G \xf1\x891909', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x872Q0959655AG\xf1\x890248\xf1\x82\x1218130411110411--04040404231811152H14', - b'\xf1\x872Q0959655AJ\xf1\x890250\xf1\x82\x1248130411110416--04040404784811152H14', - b'\xf1\x872Q0959655AS\xf1\x890411\xf1\x82\x1384830511110516041405820599841215391471', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x872Q1909144M \xf1\x896041', - b'\xf1\x872Q2909144AB\xf1\x896050', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572R \xf1\x890372', - ], - }, - CAR.VOLKSWAGEN_SHARAN_MK2: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704L906016HE\xf1\x894635', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x877N0959655D \xf1\x890016\xf1\x82\x0801100705----10--', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0153', - ], - }, - CAR.VOLKSWAGEN_TAOS_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906025CK\xf1\x892228', - b'\xf1\x8704E906027NJ\xf1\x891445', - b'\xf1\x8704E906027NP\xf1\x891286', - b'\xf1\x8705E906013BD\xf1\x892496', - b'\xf1\x8705E906013DF\xf1\x893365', - b'\xf1\x8705E906013E \xf1\x891624', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158EM\xf1\x893812', - b'\xf1\x8709S927158BL\xf1\x893791', - b'\xf1\x8709S927158CR\xf1\x893924', - b'\xf1\x8709S927158DN\xf1\x893946', - b'\xf1\x8709S927158FF\xf1\x893876', - b'\xf1\x8709S927158HM\xf1\x894112', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1311111111333500314646021450149333613100', - b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1312111111333500314646021550159333613100', - b'\xf1\x875Q0959655CE\xf1\x890421\xf1\x82\x1311110011333300314240021350139333613100', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x001O06081OOM', - b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521060405A1', - b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521060605A1', - b'\xf1\x875QV907144F \xf1\x891122\xf1\x82\x0001060801]V', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907567B \xf1\x890534', - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.VOLKSWAGEN_TCROSS_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704C906025AK\xf1\x897053', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300050E \xf1\x891903', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x872Q0959655AJ\xf1\x890250\xf1\x82\x1212130411110411--04041104141311152H14', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x872Q1909144M \xf1\x896041', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.VOLKSWAGEN_TIGUAN_MK2: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8703N906026D \xf1\x893680', - b'\xf1\x8704E906024AP\xf1\x891461', - b'\xf1\x8704E906027NB\xf1\x899504', - b'\xf1\x8704L906026EJ\xf1\x893661', - b'\xf1\x8704L906026EJ\xf1\x893916', - b'\xf1\x8704L906027G \xf1\x899893', - b'\xf1\x8705E906018BS\xf1\x890914', - b'\xf1\x875N0906259 \xf1\x890002', - b'\xf1\x875NA906259H \xf1\x890002', - b'\xf1\x875NA907115E \xf1\x890003', - b'\xf1\x875NA907115E \xf1\x890005', - b'\xf1\x875NA907115J \xf1\x890002', - b'\xf1\x875NA907115K \xf1\x890004', - b'\xf1\x8783A907115 \xf1\x890007', - b'\xf1\x8783A907115B \xf1\x890005', - b'\xf1\x8783A907115F \xf1\x890002', - b'\xf1\x8783A907115G \xf1\x890001', - b'\xf1\x8783A907115K \xf1\x890001', - b'\xf1\x8783A907115K \xf1\x890002', - b'\xf1\x8783A907115Q \xf1\x890001', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158DS\xf1\x893699', - b'\xf1\x8709G927158DT\xf1\x893698', - b'\xf1\x8709G927158FM\xf1\x893757', - b'\xf1\x8709G927158GC\xf1\x893821', - b'\xf1\x8709G927158GD\xf1\x893820', - b'\xf1\x8709G927158GM\xf1\x893936', - b'\xf1\x8709G927158GN\xf1\x893938', - b'\xf1\x8709G927158HB\xf1\x894069', - b'\xf1\x8709G927158HC\xf1\x894070', - b'\xf1\x870D9300043 \xf1\x895202', - b'\xf1\x870DD300046K \xf1\x892302', - b'\xf1\x870DL300011N \xf1\x892001', - b'\xf1\x870DL300011N \xf1\x892012', - b'\xf1\x870DL300011N \xf1\x892014', - b'\xf1\x870DL300012M \xf1\x892107', - b'\xf1\x870DL300012P \xf1\x892103', - b'\xf1\x870DL300013A \xf1\x893005', - b'\xf1\x870DL300013G \xf1\x892119', - b'\xf1\x870DL300013G \xf1\x892120', - b'\xf1\x870DL300014C \xf1\x893703', - b'\xf1\x870GC300013P \xf1\x892401', - b'\xf1\x870GC300046Q \xf1\x892802', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655AG\xf1\x890336\xf1\x82\x1316143231313500314617011730179333423100', - b'\xf1\x875Q0959655AG\xf1\x890338\xf1\x82\x1316143231313500314617011730179333423100', - b'\xf1\x875Q0959655AR\xf1\x890317\xf1\x82\x1331310031333334313132573732379333313100', - b'\xf1\x875Q0959655BJ\xf1\x890336\xf1\x82\x1311140031333300314232583632369333423100', - b'\xf1\x875Q0959655BJ\xf1\x890336\xf1\x82\x1312110031333300314232583732379333423100', - b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1331310031333334313132013730379333423100', - b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1316143231313500314641011750179333423100', - b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1312110031333300314240013750379333423100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1312110031333300314240583752379333423100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140013750379333423100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140573752379333423100', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333336313140013950399333423100', - b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1316143231313500314647021750179333613100', - b'\xf1\x875Q0959655CD\xf1\x890421\xf1\x82\x13123112313333003145406F6154619333613100', - b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x1331310031333300314240024050409333613100', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820529A6060603', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527A6050705', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527A6070705', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A60604A1', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6000600', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6017A00', - b'\xf1\x875QF909144 \xf1\x895572\xf1\x82\x0571A60833A1', - b'\xf1\x875QF909144A \xf1\x895581\xf1\x82\x0571A60834A1', - b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A60634A1', - b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A62A32A1', - b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002RA60A2ROM', - b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002SA6092SOM', - b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60604A1', - b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60804A1', - b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60604A1', - b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60804A1', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572AB\xf1\x890397', - b'\xf1\x872Q0907572J \xf1\x890156', - b'\xf1\x872Q0907572M \xf1\x890233', - b'\xf1\x872Q0907572Q \xf1\x890342', - b'\xf1\x872Q0907572R \xf1\x890372', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.VOLKSWAGEN_TOURAN_MK2: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906025BE\xf1\x890720', - b'\xf1\x8704E906027HQ\xf1\x893746', - b'\xf1\x8704L906026HM\xf1\x893017', - b'\xf1\x8705E906018CQ\xf1\x890808', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300020A \xf1\x891936', - b'\xf1\x870CW300041E \xf1\x891005', - b'\xf1\x870CW300041Q \xf1\x891606', - b'\xf1\x870CW300051M \xf1\x891926', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655AS\xf1\x890318\xf1\x82\x1336350021353335314132014730479333313100', - b'\xf1\x875Q0959655AS\xf1\x890318\xf1\x82\x13363500213533353141324C4732479333313100', - b'\xf1\x875Q0959655CH\xf1\x890421\xf1\x82\x1336350021353336314740025250529333613100', - b'\xf1\x875QD959655AJ\xf1\x890421\xf1\x82\x1336350021313300314240023330339333663100', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820531B0062105', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A8090400', - b'\xf1\x875QD909144F \xf1\x891082\xf1\x82\x0521A00642A1', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x873Q0907572C \xf1\x890195', - b'\xf1\x875Q0907572R \xf1\x890771', - ], - }, - CAR.VOLKSWAGEN_TRANSPORTER_T61: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704L906056AG\xf1\x899970', - b'\xf1\x8704L906056AL\xf1\x899970', - b'\xf1\x8704L906057AP\xf1\x891186', - b'\xf1\x8704L906057N \xf1\x890413', - b'\xf1\x8705L906023E \xf1\x891352', - b'\xf1\x8705L906023MR\xf1\x892582', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870BT300012E \xf1\x893105', - b'\xf1\x870BT300012G \xf1\x893102', - b'\xf1\x870BT300046R \xf1\x893102', - b'\xf1\x870DV300012B \xf1\x893701', - b'\xf1\x870DV300012B \xf1\x893702', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x872Q0959655AE\xf1\x890506\xf1\x82\x1316170411110411--04041704161611152S1411', - b'\xf1\x872Q0959655AE\xf1\x890506\xf1\x82\x1316170411110411--04041704171711152S1411', - b'\xf1\x872Q0959655AF\xf1\x890506\xf1\x82\x1316171111110411--04041711121211152S1413', - b'\xf1\x872Q0959655AQ\xf1\x890511\xf1\x82\x1316170411110411--0404170426261215391421', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x0532380518A2', - b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x05323A5519A2', - b'\xf1\x877LA909144G \xf1\x897160\xf1\x82\x05333A5519A2', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572R \xf1\x890372', - ], - }, - CAR.VOLKSWAGEN_TROC_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8705E906018AT\xf1\x899640', - b'\xf1\x8705E906018CK\xf1\x890863', - b'\xf1\x8705E906018P \xf1\x896020', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300041S \xf1\x891615', - b'\xf1\x870CW300050J \xf1\x891911', - b'\xf1\x870CW300051M \xf1\x891925', - b'\xf1\x870CW300051M \xf1\x891928', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1111001111001105111111052900', - b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1311110012333300314240681152119333463100', - b'\xf1\x875Q0959655CF\xf1\x890421\xf1\x82\x1311110012333300314240021150119333613100', - b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x13111100123333003142404M1152119333613100', - b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x13111100123333003142404M1154119333613100', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521060403A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521060405A1', - b'\xf1\x875WA907144M \xf1\x891051\xf1\x82\x001T06081T7N', - b'\xf1\x875WA907144Q \xf1\x891063\xf1\x82\x001O06081OOM', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572M \xf1\x890233', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.AUDI_A3_MK3: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906023AN\xf1\x893695', - b'\xf1\x8704E906023AR\xf1\x893440', - b'\xf1\x8704E906023BL\xf1\x895190', - b'\xf1\x8704E906027CJ\xf1\x897798', - b'\xf1\x8704L997022N \xf1\x899459', - b'\xf1\x875G0906259A \xf1\x890004', - b'\xf1\x875G0906259D \xf1\x890002', - b'\xf1\x875G0906259L \xf1\x890002', - b'\xf1\x875G0906259Q \xf1\x890002', - b'\xf1\x875G0906259Q \xf1\x890007', - b'\xf1\x878V0906259E \xf1\x890001', - b'\xf1\x878V0906259F \xf1\x890002', - b'\xf1\x878V0906259H \xf1\x890002', - b'\xf1\x878V0906259J \xf1\x890002', - b'\xf1\x878V0906259K \xf1\x890001', - b'\xf1\x878V0906264B \xf1\x890003', - b'\xf1\x878V0907115B \xf1\x890007', - b'\xf1\x878V0907404A \xf1\x890005', - b'\xf1\x878V0907404G \xf1\x890005', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300044T \xf1\x895245', - b'\xf1\x870CW300048 \xf1\x895201', - b'\xf1\x870D9300012 \xf1\x894912', - b'\xf1\x870D9300012 \xf1\x894931', - b'\xf1\x870D9300012K \xf1\x894513', - b'\xf1\x870D9300012L \xf1\x894521', - b'\xf1\x870D9300013B \xf1\x894902', - b'\xf1\x870D9300013B \xf1\x894931', - b'\xf1\x870D9300041N \xf1\x894512', - b'\xf1\x870D9300043T \xf1\x899699', - b'\xf1\x870DD300046 \xf1\x891604', - b'\xf1\x870DD300046A \xf1\x891602', - b'\xf1\x870DD300046F \xf1\x891602', - b'\xf1\x870DD300046G \xf1\x891601', - b'\xf1\x870DL300012E \xf1\x892012', - b'\xf1\x870DL300012H \xf1\x892112', - b'\xf1\x870GC300011 \xf1\x890403', - b'\xf1\x870GC300013M \xf1\x892402', - b'\xf1\x870GC300042J \xf1\x891402', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655AB\xf1\x890388\xf1\x82\x111111001111111206110412111321139114', - b'\xf1\x875Q0959655AM\xf1\x890315\xf1\x82\x1311111111111111311411011231129321212100', - b'\xf1\x875Q0959655AM\xf1\x890318\xf1\x82\x1311111111111112311411011531159321212100', - b'\xf1\x875Q0959655AR\xf1\x890315\xf1\x82\x1311110011131115311211012331239321212100', - b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1311110011131100311111011731179321342100', - b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--171115141112221291163221', - b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--241115141112221291163221', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13111112111111--241115141112221291163221', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111111--341117141212231291163221', - b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111211--261117141112231291163221', - b'\xf1\x875Q0959655N \xf1\x890361\xf1\x82\x111212001112110004110411111421149114', - b'\xf1\x875Q0959655N \xf1\x890361\xf1\x82\x111212001112111104110411111521159114', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144F \xf1\x895043\xf1\x82\x0561G01A13A0', - b'\xf1\x873Q0909144H \xf1\x895061\xf1\x82\x0566G0HA14A1', - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566G0HA14A1', - b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571G01A16A1', - b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571G0HA16A1', - b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571G0JA13A1', - b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571G0JA14A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521G0G809A1', - b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0503G00303A0', - b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0503G00803A0', - b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0503G0G803A0', - b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516G00804A1', - b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516G00804A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521G00807A1', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x875Q0907567M \xf1\x890398\xf1\x82\x0101', - b'\xf1\x875Q0907567N \xf1\x890400\xf1\x82\x0101', - b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', - b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101', - b'\xf1\x875Q0907572G \xf1\x890571', - b'\xf1\x875Q0907572H \xf1\x890620', - b'\xf1\x875Q0907572P \xf1\x890682', - ], - }, - CAR.AUDI_Q2_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906027JT\xf1\x894145', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300041F \xf1\x891006', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655BD\xf1\x890336\xf1\x82\x1311111111111100311211011231129321312111', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571F60511A1', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572M \xf1\x890233', - ], - }, - CAR.AUDI_Q3_MK2: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8705E906018N \xf1\x899970', - b'\xf1\x8705L906022M \xf1\x890901', - b'\xf1\x8783A906259 \xf1\x890001', - b'\xf1\x8783A906259 \xf1\x890005', - b'\xf1\x8783A906259C \xf1\x890002', - b'\xf1\x8783A906259D \xf1\x890001', - b'\xf1\x8783A906259F \xf1\x890001', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x8709G927158CN\xf1\x893608', - b'\xf1\x8709G927158FL\xf1\x893758', - b'\xf1\x8709G927158GG\xf1\x893825', - b'\xf1\x8709G927158GP\xf1\x893937', - b'\xf1\x870GC300045D \xf1\x892802', - b'\xf1\x870GC300046F \xf1\x892701', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655BF\xf1\x890403\xf1\x82\x1321211111211200311121232152219321422111', - b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218A219321532111', - b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218C219321532111', - b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111224118A119321532111', - b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111237116A119321532111', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567G6000300', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567G6000800', - b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571G60533A1', - b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571G60733A1', - b'\xf1\x875TA907145D \xf1\x891051\xf1\x82\x001PG60A1P7N', - b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x002VG60A2VOM', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572R \xf1\x890372', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.SEAT_ATECA_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906027KA\xf1\x893749', - b'\xf1\x8704L906021EL\xf1\x897542', - b'\xf1\x8704L906026BP\xf1\x891198', - b'\xf1\x8704L906026BP\xf1\x897608', - b'\xf1\x8704L906056CR\xf1\x892181', - b'\xf1\x8704L906056CR\xf1\x892797', - b'\xf1\x8705E906018AS\xf1\x899596', - b'\xf1\x8781A906259B \xf1\x890003', - b'\xf1\x878V0906264H \xf1\x890005', - b'\xf1\x878V0907115E \xf1\x890002', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300041D \xf1\x891004', - b'\xf1\x870CW300041G \xf1\x891003', - b'\xf1\x870CW300050J \xf1\x891908', - b'\xf1\x870D9300014S \xf1\x895202', - b'\xf1\x870D9300042M \xf1\x895016', - b'\xf1\x870GC300014P \xf1\x892801', - b'\xf1\x870GC300043A \xf1\x892304', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655AC\xf1\x890189\xf1\x82\r11110011110011021511110200', - b'\xf1\x873Q0959655AS\xf1\x890200\xf1\x82\r11110011110011021511110200', - b'\xf1\x873Q0959655AS\xf1\x890200\xf1\x82\r12110012120012021612110200', - b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1212001211001305121211052900', - b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1312001313001305171311052900', - b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1312001313001305171311052900', - b'\xf1\x873Q0959655CM\xf1\x890720\xf1\x82\x0e1312001313001305171311052900', - b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100110200--1113121149', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571N60511A1', - b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521N01842A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521N01342A1', - b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0511N01805A0', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521N01309A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521N05808A1', - b'\xf1\x875WA907145M \xf1\x891051\xf1\x82\x0013N619137N', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572M \xf1\x890233', - b'\xf1\x875Q0907572B \xf1\x890200\xf1\x82\x0101', - b'\xf1\x875Q0907572H \xf1\x890620', - b'\xf1\x875Q0907572K \xf1\x890402\xf1\x82\x0101', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572R \xf1\x890771', - ], - }, - CAR.SKODA_FABIA_MK4: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8705E906018CF\xf1\x891905', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300051M \xf1\x891936', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100110200--1111120749', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x872Q1909144S \xf1\x896042', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - ], - }, - CAR.SKODA_KAMIQ_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704C906025AK\xf1\x897053', - b'\xf1\x8705C906032M \xf1\x891333', - b'\xf1\x8705C906032M \xf1\x892365', - b'\xf1\x8705E906013CK\xf1\x892540', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300020 \xf1\x891906', - b'\xf1\x870CW300020 \xf1\x891907', - b'\xf1\x870CW300020T \xf1\x892204', - b'\xf1\x870CW300050 \xf1\x891709', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x872Q0959655AJ\xf1\x890250\xf1\x82\x1211110411110411--04040404131111112H14', - b'\xf1\x872Q0959655AM\xf1\x890351\xf1\x82\x12111104111104112104040404111111112H14', - b'\xf1\x872Q0959655AM\xf1\x890351\xf1\x82\x122221042111042121040404042E2711152H14', - b'\xf1\x872Q0959655AS\xf1\x890411\xf1\x82\x1311150411110411210404040417151215391413', - b'\xf1\x872Q0959655BJ\xf1\x890412\xf1\x82\x132223042111042121040404042B251215391423', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x872Q1909144AB\xf1\x896050', - b'\xf1\x872Q1909144M \xf1\x896041', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572R \xf1\x890372', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.SKODA_KAROQ_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8705E906013CL\xf1\x892541', - b'\xf1\x8705E906013H \xf1\x892407', - b'\xf1\x8705E906018P \xf1\x895472', - b'\xf1\x8705E906018P \xf1\x896020', - b'\xf1\x8705L906022BS\xf1\x890913', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300020T \xf1\x892202', - b'\xf1\x870CW300041S \xf1\x891615', - b'\xf1\x870GC300014L \xf1\x892802', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001101131112012100', - b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1213001211001101131122012100', - b'\xf1\x873Q0959655DE\xf1\x890731\xf1\x82\x0e1213001211001101131121012J00', - b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1312110012120011111100010200--2521210749', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563T6090500', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T6100500', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T6100600', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T6100700', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572AB\xf1\x890397', - b'\xf1\x872Q0907572M \xf1\x890233', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.SKODA_KODIAQ_MK1: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906027DD\xf1\x893123', - b'\xf1\x8704E906027LD\xf1\x893433', - b'\xf1\x8704E906027NB\xf1\x896517', - b'\xf1\x8704E906027NB\xf1\x899504', - b'\xf1\x8704L906026DE\xf1\x895418', - b'\xf1\x8704L906026EJ\xf1\x893661', - b'\xf1\x8704L906026HT\xf1\x893617', - b'\xf1\x8705E906018DJ\xf1\x890915', - b'\xf1\x8705E906018DJ\xf1\x891903', - b'\xf1\x8705L906022GM\xf1\x893411', - b'\xf1\x875NA906259E \xf1\x890003', - b'\xf1\x875NA907115D \xf1\x890003', - b'\xf1\x875NA907115E \xf1\x890003', - b'\xf1\x875NA907115E \xf1\x890005', - b'\xf1\x8783A907115E \xf1\x890001', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870D9300014S \xf1\x895201', - b'\xf1\x870D9300043 \xf1\x895202', - b'\xf1\x870DL300011N \xf1\x892014', - b'\xf1\x870DL300012G \xf1\x892006', - b'\xf1\x870DL300012M \xf1\x892107', - b'\xf1\x870DL300012N \xf1\x892110', - b'\xf1\x870DL300013G \xf1\x892119', - b'\xf1\x870GC300014N \xf1\x892801', - b'\xf1\x870GC300018S \xf1\x892803', - b'\xf1\x870GC300019H \xf1\x892806', - b'\xf1\x870GC300046Q \xf1\x892802', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655AN\xf1\x890306\xf1\x82\r11110011110011031111310311', - b'\xf1\x873Q0959655AP\xf1\x890306\xf1\x82\r11110011110011421111314211', - b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001205212111052100', - b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e1213001211001205212111052100', - b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1213001211001244212111442100', - b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e1213001211001205212112052100', - b'\xf1\x873Q0959655CQ\xf1\x890720\xf1\x82\x0e1213111211001205212112052111', - b'\xf1\x873Q0959655DJ\xf1\x890731\xf1\x82\x0e1513001511001205232113052J00', - b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100010200--1121240749', - b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100010200--1121246149', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6050405', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6060405', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6070405', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T600G500', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T600G600', - b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x0025T6BA25OM', - b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x002LT61A2LOM', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x872Q0907572AA\xf1\x890396', - b'\xf1\x872Q0907572AB\xf1\x890397', - b'\xf1\x872Q0907572M \xf1\x890233', - b'\xf1\x872Q0907572Q \xf1\x890342', - b'\xf1\x872Q0907572R \xf1\x890372', - b'\xf1\x872Q0907572T \xf1\x890383', - ], - }, - CAR.SKODA_OCTAVIA_MK3: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704C906025L \xf1\x896198', - b'\xf1\x8704E906016ER\xf1\x895823', - b'\xf1\x8704E906027HD\xf1\x893742', - b'\xf1\x8704E906027MH\xf1\x894786', - b'\xf1\x8704L906021DT\xf1\x898127', - b'\xf1\x8704L906021ER\xf1\x898361', - b'\xf1\x8704L906026BP\xf1\x897608', - b'\xf1\x8704L906026BS\xf1\x891541', - b'\xf1\x8704L906026BT\xf1\x897612', - b'\xf1\x875G0906259C \xf1\x890002', - b'\xf1\x875G0906259N \xf1\x890003', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300041L \xf1\x891601', - b'\xf1\x870CW300041N \xf1\x891605', - b'\xf1\x870CW300043B \xf1\x891601', - b'\xf1\x870CW300043P \xf1\x891605', - b'\xf1\x870D9300012H \xf1\x894518', - b'\xf1\x870D9300014T \xf1\x895221', - b'\xf1\x870D9300041C \xf1\x894936', - b'\xf1\x870D9300041H \xf1\x895220', - b'\xf1\x870D9300041J \xf1\x894902', - b'\xf1\x870D9300041P \xf1\x894507', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x873Q0959655AC\xf1\x890200\xf1\x82\r11120011100010022212110200', - b'\xf1\x873Q0959655AK\xf1\x890306\xf1\x82\r31210031210021033733310331', - b'\xf1\x873Q0959655AP\xf1\x890305\xf1\x82\r11110011110011213331312131', - b'\xf1\x873Q0959655AQ\xf1\x890200\xf1\x82\r11120011100010312212113100', - b'\xf1\x873Q0959655AS\xf1\x890200\xf1\x82\r11120011100010022212110200', - b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e3221003221002105755331052100', - b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e3221003221002132755331322100', - b'\xf1\x873Q0959655CM\xf1\x890720\xf1\x82\x0e3221003221002105755331052100', - b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e3221003221002105755331052100', - b'\xf1\x875QD959655 \xf1\x890388\xf1\x82\x111101000011110006110411111111119111', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A01513A1', - b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571T01512A1', - b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521T00403A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521T00403A1', - b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521T00603A1', - b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1', - b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521T00601A1', - b'\xf1\x875QD909144E \xf1\x891081\xf1\x82\x0521T00503A1', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x875Q0907567P \xf1\x890100\xf1\x82\x0101', - b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', - b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101', - b'\xf1\x875Q0907572H \xf1\x890620', - b'\xf1\x875Q0907572J \xf1\x890654', - b'\xf1\x875Q0907572K \xf1\x890402\xf1\x82\x0101', - b'\xf1\x875Q0907572P \xf1\x890682', - b'\xf1\x875Q0907572R \xf1\x890771', - ], - }, - CAR.SKODA_SUPERB_MK3: { - (Ecu.engine, 0x7e0, None): [ - b'\xf1\x8704E906027BS\xf1\x892887', - b'\xf1\x8704E906027BT\xf1\x899042', - b'\xf1\x8704L906026ET\xf1\x891343', - b'\xf1\x8704L906026ET\xf1\x891990', - b'\xf1\x8704L906026FP\xf1\x891196', - b'\xf1\x8704L906026KA\xf1\x896014', - b'\xf1\x8704L906026KB\xf1\x894071', - b'\xf1\x8704L906026KD\xf1\x894798', - b'\xf1\x8704L906026MT\xf1\x893076', - b'\xf1\x8705L906022BK\xf1\x899971', - b'\xf1\x873G0906259 \xf1\x890004', - b'\xf1\x873G0906259B \xf1\x890002', - b'\xf1\x873G0906259L \xf1\x890003', - b'\xf1\x873G0906264A \xf1\x890002', - ], - (Ecu.transmission, 0x7e1, None): [ - b'\xf1\x870CW300042H \xf1\x891601', - b'\xf1\x870CW300043B \xf1\x891603', - b'\xf1\x870CW300049Q \xf1\x890906', - b'\xf1\x870D9300011T \xf1\x894801', - b'\xf1\x870D9300012 \xf1\x894940', - b'\xf1\x870D9300013A \xf1\x894905', - b'\xf1\x870D9300014K \xf1\x895006', - b'\xf1\x870D9300041H \xf1\x894905', - b'\xf1\x870D9300042M \xf1\x895013', - b'\xf1\x870D9300043F \xf1\x895202', - b'\xf1\x870GC300013K \xf1\x892403', - b'\xf1\x870GC300014M \xf1\x892801', - b'\xf1\x870GC300019G \xf1\x892803', - b'\xf1\x870GC300043 \xf1\x892301', - b'\xf1\x870GC300046D \xf1\x892402', - ], - (Ecu.srs, 0x715, None): [ - b'\xf1\x875Q0959655AE\xf1\x890130\xf1\x82\x12111200111121001121110012211292221111', - b'\xf1\x875Q0959655AE\xf1\x890130\xf1\x82\x12111200111121001121118112231292221111', - b'\xf1\x875Q0959655AK\xf1\x890130\xf1\x82\x12111200111121001121110012211292221111', - b'\xf1\x875Q0959655AS\xf1\x890317\xf1\x82\x1331310031313100313131823133319331313100', - b'\xf1\x875Q0959655AT\xf1\x890317\xf1\x82\x1331310031313100313131013131319331313100', - b'\xf1\x875Q0959655BH\xf1\x890336\xf1\x82\x1331310031313100313131013141319331413100', - b'\xf1\x875Q0959655BK\xf1\x890336\xf1\x82\x1331310031313100313131013141319331413100', - b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1333310031313100313152015351539331423100', - b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1331310031313100313151013141319331423100', - b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1331310031313100313151823143319331423100', - b'\xf1\x875Q0959655CH\xf1\x890421\xf1\x82\x1333310031313100313152025350539331463100', - b'\xf1\x875Q0959655CH\xf1\x890421\xf1\x82\x1333310031313100313152855372539331463100', - ], - (Ecu.eps, 0x712, None): [ - b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820514UZ070203', - b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ050303', - b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ070303', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ060505', - b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ070505', - b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060600', - b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060700', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070500', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070600', - b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070700', - ], - (Ecu.fwdRadar, 0x757, None): [ - b'\xf1\x873Q0907572B \xf1\x890192', - b'\xf1\x873Q0907572B \xf1\x890194', - b'\xf1\x873Q0907572C \xf1\x890195', - b'\xf1\x875Q0907572R \xf1\x890771', - b'\xf1\x875Q0907572S \xf1\x890780', - ], - }, -} diff --git a/opendbc_repo/opendbc/car/volkswagen/interface.py b/opendbc_repo/opendbc/car/volkswagen/interface.py deleted file mode 100644 index 83e8855928..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/interface.py +++ /dev/null @@ -1,90 +0,0 @@ -from opendbc.car import get_safety_config, structs -from opendbc.car.interfaces import CarInterfaceBase -from opendbc.car.volkswagen.carcontroller import CarController -from opendbc.car.volkswagen.carstate import CarState -from opendbc.car.volkswagen.values import CAR, NetworkLocation, TransmissionType, VolkswagenFlags, VolkswagenSafetyFlags - - -class CarInterface(CarInterfaceBase): - CarState = CarState - CarController = CarController - - @staticmethod - def _get_params(ret: structs.CarParams, candidate: CAR, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: - ret.brand = "volkswagen" - ret.radarUnavailable = True - - if ret.flags & VolkswagenFlags.PQ: - # Set global PQ35/PQ46/NMS parameters - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.volkswagenPq)] - ret.enableBsm = 0x3BA in fingerprint[0] # SWA_1 - - if 0x440 in fingerprint[0] or docs: # Getriebe_1 - ret.transmissionType = TransmissionType.automatic - else: - ret.transmissionType = TransmissionType.manual - - if any(msg in fingerprint[1] for msg in (0x1A0, 0xC2)): # Bremse_1, Lenkwinkel_1 - ret.networkLocation = NetworkLocation.gateway - else: - ret.networkLocation = NetworkLocation.fwdCamera - - # The PQ port is in dashcam-only mode due to a fixed six-minute maximum timer on HCA steering. An unsupported - # EPS flash update to work around this timer, and enable steering down to zero, is available from: - # https://github.com/pd0wm/pq-flasher - # It is documented in a four-part blog series: - # https://blog.willemmelching.nl/carhacking/2022/01/02/vw-part1/ - # Panda ALLOW_DEBUG firmware required. - ret.dashcamOnly = True - - else: - # Set global MQB parameters - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.volkswagen)] - ret.enableBsm = 0x30F in fingerprint[0] # SWA_01 - - if 0xAD in fingerprint[0] or docs: # Getriebe_11 - ret.transmissionType = TransmissionType.automatic - elif 0x187 in fingerprint[0]: # Motor_EV_01 - ret.transmissionType = TransmissionType.direct - else: - ret.transmissionType = TransmissionType.manual - - if any(msg in fingerprint[1] for msg in (0x40, 0x86, 0xB2, 0xFD)): # Airbag_01, LWI_01, ESP_19, ESP_21 - ret.networkLocation = NetworkLocation.gateway - else: - ret.networkLocation = NetworkLocation.fwdCamera - - if 0x126 in fingerprint[2]: # HCA_01 - ret.flags |= VolkswagenFlags.STOCK_HCA_PRESENT.value - - # Global lateral tuning defaults, can be overridden per-vehicle - - ret.steerLimitTimer = 0.4 - if ret.flags & VolkswagenFlags.PQ: - ret.steerActuatorDelay = 0.2 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - else: - ret.steerActuatorDelay = 0.1 - ret.lateralTuning.pid.kpBP = [0.] - ret.lateralTuning.pid.kiBP = [0.] - ret.lateralTuning.pid.kf = 0.00006 - ret.lateralTuning.pid.kpV = [0.6] - ret.lateralTuning.pid.kiV = [0.2] - - # Global longitudinal tuning defaults, can be overridden per-vehicle - - ret.alphaLongitudinalAvailable = ret.networkLocation == NetworkLocation.gateway or docs - if alpha_long: - # Proof-of-concept, prep for E2E only. No radar points available. Panda ALLOW_DEBUG firmware required. - ret.openpilotLongitudinalControl = True - ret.safetyConfigs[0].safetyParam |= VolkswagenSafetyFlags.LONG_CONTROL.value - if ret.transmissionType == TransmissionType.manual: - ret.minEnableSpeed = 4.5 - - ret.pcmCruise = not ret.openpilotLongitudinalControl - ret.stopAccel = -0.55 - ret.vEgoStarting = 0.1 - ret.vEgoStopping = 0.5 - ret.autoResumeSng = ret.minEnableSpeed == -1 - - return ret diff --git a/opendbc_repo/opendbc/car/volkswagen/mqbcan.py b/opendbc_repo/opendbc/car/volkswagen/mqbcan.py deleted file mode 100644 index 02580e9997..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/mqbcan.py +++ /dev/null @@ -1,258 +0,0 @@ -from opendbc.car.crc import CRC8H2F - - -def create_steering_control(packer, bus, apply_torque, lkas_enabled): - values = { - "HCA_01_Status_HCA": 5 if lkas_enabled else 3, - "HCA_01_LM_Offset": abs(apply_torque), - "HCA_01_LM_OffSign": 1 if apply_torque < 0 else 0, - "HCA_01_Vib_Freq": 18, - "HCA_01_Sendestatus": 1 if lkas_enabled else 0, - "EA_ACC_Wunschgeschwindigkeit": 327.36, - } - return packer.make_can_msg("HCA_01", bus, values) - - -def create_eps_update(packer, bus, eps_stock_values, ea_simulated_torque): - values = {s: eps_stock_values[s] for s in [ - "COUNTER", # Sync counter value to EPS output - "EPS_Lenkungstyp", # EPS rack type - "EPS_Berechneter_LW", # Absolute raw steering angle - "EPS_VZ_BLW", # Raw steering angle sign - "EPS_HCA_Status", # EPS HCA control status - ]} - - values.update({ - # Absolute driver torque input and sign, with EA inactivity mitigation - "EPS_Lenkmoment": abs(ea_simulated_torque), - "EPS_VZ_Lenkmoment": 1 if ea_simulated_torque < 0 else 0, - }) - - return packer.make_can_msg("LH_EPS_03", bus, values) - - -def create_lka_hud_control(packer, bus, ldw_stock_values, lat_active, steering_pressed, hud_alert, hud_control): - values = {} - if len(ldw_stock_values): - values = {s: ldw_stock_values[s] for s in [ - "LDW_SW_Warnung_links", # Blind spot in warning mode on left side due to lane departure - "LDW_SW_Warnung_rechts", # Blind spot in warning mode on right side due to lane departure - "LDW_Seite_DLCTLC", # Direction of most likely lane departure (left or right) - "LDW_DLC", # Lane departure, distance to line crossing - "LDW_TLC", # Lane departure, time to line crossing - ]} - - values.update({ - "LDW_Status_LED_gelb": 1 if lat_active and steering_pressed else 0, - "LDW_Status_LED_gruen": 1 if lat_active and not steering_pressed else 0, - "LDW_Lernmodus_links": 3 if hud_control.leftLaneDepart else 1 + hud_control.leftLaneVisible, - "LDW_Lernmodus_rechts": 3 if hud_control.rightLaneDepart else 1 + hud_control.rightLaneVisible, - "LDW_Texte": hud_alert, - }) - return packer.make_can_msg("LDW_02", bus, values) - - -def create_acc_buttons_control(packer, bus, gra_stock_values, cancel=False, resume=False): - values = {s: gra_stock_values[s] for s in [ - "GRA_Hauptschalter", # ACC button, on/off - "GRA_Typ_Hauptschalter", # ACC main button type - "GRA_Codierung", # ACC button configuration/coding - "GRA_Tip_Stufe_2", # unknown related to stalk type - "GRA_ButtonTypeInfo", # unknown related to stalk type - ]} - - values.update({ - "COUNTER": (gra_stock_values["COUNTER"] + 1) % 16, - "GRA_Abbrechen": cancel, - "GRA_Tip_Wiederaufnahme": resume, - }) - - return packer.make_can_msg("GRA_ACC_01", bus, values) - - -def acc_control_value(main_switch_on, acc_faulted, long_active): - if acc_faulted: - acc_control = 6 - elif long_active: - acc_control = 3 - elif main_switch_on: - acc_control = 2 - else: - acc_control = 0 - - return acc_control - - -def acc_hud_status_value(main_switch_on, acc_faulted, long_active): - # TODO: happens to resemble the ACC control value for now, but extend this for init/gas override later - return acc_control_value(main_switch_on, acc_faulted, long_active) - - -def create_acc_accel_control(packer, bus, acc_type, acc_enabled, accel, acc_control, stopping, starting, esp_hold): - commands = [] - - acc_06_values = { - "ACC_Typ": acc_type, - "ACC_Status_ACC": acc_control, - "ACC_StartStopp_Info": acc_enabled, - "ACC_Sollbeschleunigung_02": accel if acc_enabled else 3.01, - "ACC_zul_Regelabw_unten": 0.2, # TODO: dynamic adjustment of comfort-band - "ACC_zul_Regelabw_oben": 0.2, # TODO: dynamic adjustment of comfort-band - "ACC_neg_Sollbeschl_Grad_02": 4.0 if acc_enabled else 0, # TODO: dynamic adjustment of jerk limits - "ACC_pos_Sollbeschl_Grad_02": 4.0 if acc_enabled else 0, # TODO: dynamic adjustment of jerk limits - "ACC_Anfahren": starting, - "ACC_Anhalten": stopping, - } - commands.append(packer.make_can_msg("ACC_06", bus, acc_06_values)) - - if starting: - acc_hold_type = 4 # hold release / startup - elif esp_hold: - acc_hold_type = 3 # hold standby - elif stopping: - acc_hold_type = 1 # hold request - else: - acc_hold_type = 0 - - acc_07_values = { - "ACC_Anhalteweg": 0.3 if stopping else 20.46, # Distance to stop (stopping coordinator handles terminal roll-out) - "ACC_Freilauf_Info": 2 if acc_enabled else 0, - "ACC_Folgebeschl": 3.02, # Not using secondary controller accel unless and until we understand its impact - "ACC_Sollbeschleunigung_02": accel if acc_enabled else 3.01, - "ACC_Anforderung_HMS": acc_hold_type, - "ACC_Anfahren": starting, - "ACC_Anhalten": stopping, - } - commands.append(packer.make_can_msg("ACC_07", bus, acc_07_values)) - - return commands - - -def create_acc_hud_control(packer, bus, acc_hud_status, set_speed, lead_distance, distance): - values = { - "ACC_Status_Anzeige": acc_hud_status, - "ACC_Wunschgeschw_02": set_speed if set_speed < 250 else 327.36, - "ACC_Gesetzte_Zeitluecke": distance + 2, - "ACC_Display_Prio": 3, - "ACC_Abstandsindex": lead_distance, - } - - return packer.make_can_msg("ACC_02", bus, values) - - -# AWV = Stopping Distance Reduction -# Refer to Self Study Program 890253: Volkswagen Driver Assistance Systems, Design and Function - - -def create_aeb_control(packer, fcw_active, aeb_active, accel): - values = { - "AWV_Vorstufe": 0, # Preliminary stage - "AWV1_Anf_Prefill": 0, # Brake pre-fill request - "AWV1_HBA_Param": 0, # Brake pre-fill level - "AWV2_Freigabe": 0, # Stage 2 braking release - "AWV2_Ruckprofil": 0, # Brake jerk level - "AWV2_Priowarnung": 0, # Suppress lane departure warning in favor of FCW - "ANB_Notfallblinken": 0, # Hazard flashers request - "ANB_Teilbremsung_Freigabe": 0, # Target braking release - "ANB_Zielbremsung_Freigabe": 0, # Partial braking release - "ANB_Zielbrems_Teilbrems_Verz_Anf": 0.0, # Acceleration requirement for target/partial braking, m/s/s - "AWV_Halten": 0, # Vehicle standstill request - "PCF_Time_to_collision": 0xFF, # Pre Crash Front, populated only with a target, might be used on Audi only - } - - return packer.make_can_msg("ACC_10", 0, values) - - -def create_aeb_hud(packer, aeb_supported, fcw_active): - values = { - "AWV_Texte": 5 if aeb_supported else 7, # FCW/AEB system status, display text (from menu in VAL) - "AWV_Status_Anzeige": 1 if aeb_supported else 2, # FCW/AEB system status, available or disabled - } - - return packer.make_can_msg("ACC_15", 0, values) - - -def volkswagen_mqb_meb_checksum(address: int, sig, d: bytearray) -> int: - crc = 0xFF - for i in range(1, len(d)): - crc ^= d[i] - crc = CRC8H2F[crc] - counter = d[1] & 0x0F - const = VOLKSWAGEN_MQB_MEB_CONSTANTS.get(address) - if const: - crc ^= const[counter] - crc = CRC8H2F[crc] - return crc ^ 0xFF - - -def xor_checksum(address: int, sig, d: bytearray) -> int: - checksum = 0 - checksum_byte = sig.start_bit // 8 - for i in range(len(d)): - if i != checksum_byte: - checksum ^= d[i] - return checksum - - -VOLKSWAGEN_MQB_MEB_CONSTANTS: dict[int, list[int]] = { - 0x40: [0x40] * 16, # Airbag_01 - 0x86: [0x86] * 16, # LWI_01 - 0x9F: [0xF5] * 16, # LH_EPS_03 - 0xAD: [0x3F, 0x69, 0x39, 0xDC, 0x94, 0xF9, 0x14, 0x64, - 0xD8, 0x6A, 0x34, 0xCE, 0xA2, 0x55, 0xB5, 0x2C], # Getriebe_11 - 0x0DB: [0x09, 0xFA, 0xCA, 0x8E, 0x62, 0xD5, 0xD1, 0xF0, - 0x31, 0xA0, 0xAF, 0xDA, 0x4D, 0x1A, 0x0A, 0x97], # AWV_03 - 0xFC: [0x77, 0x5C, 0xA0, 0x89, 0x4B, 0x7C, 0xBB, 0xD6, - 0x1F, 0x6C, 0x4F, 0xF6, 0x20, 0x2B, 0x43, 0xDD], # ESC_51 - 0xFD: [0xB4, 0xEF, 0xF8, 0x49, 0x1E, 0xE5, 0xC2, 0xC0, - 0x97, 0x19, 0x3C, 0xC9, 0xF1, 0x98, 0xD6, 0x61], # ESP_21 - 0x101: [0xAA] * 16, # ESP_02 - 0x102: [0xD7, 0x12, 0x85, 0x7E, 0x0B, 0x34, 0xFA, 0x16, - 0x7A, 0x25, 0x2D, 0x8F, 0x04, 0x8E, 0x5D, 0x35], # ESC_50 - 0x106: [0x07] * 16, # ESP_05 - 0x10B: [0x77, 0x5C, 0xA0, 0x89, 0x4B, 0x7C, 0xBB, 0xD6, - 0x1F, 0x6C, 0x4F, 0xF6, 0x20, 0x2B, 0x43, 0xDD], # Motor_51 - 0x116: [0xAC] * 16, # ESP_10 - 0x117: [0x16] * 16, # ACC_10 - 0x120: [0xC4, 0xE2, 0x4F, 0xE4, 0xF8, 0x2F, 0x56, 0x81, - 0x9F, 0xE5, 0x83, 0x44, 0x05, 0x3F, 0x97, 0xDF], # TSK_06 - 0x121: [0xE9, 0x65, 0xAE, 0x6B, 0x7B, 0x35, 0xE5, 0x5F, - 0x4E, 0xC7, 0x86, 0xA2, 0xBB, 0xDD, 0xEB, 0xB4], # Motor_20 - 0x122: [0x37, 0x7D, 0xF3, 0xA9, 0x18, 0x46, 0x6D, 0x4D, - 0x3D, 0x71, 0x92, 0x9C, 0xE5, 0x32, 0x10, 0xB9], # ACC_06 - 0x126: [0xDA] * 16, # HCA_01 - 0x12B: [0x6A, 0x38, 0xB4, 0x27, 0x22, 0xEF, 0xE1, 0xBB, - 0xF8, 0x80, 0x84, 0x49, 0xC7, 0x9E, 0x1E, 0x2B], # GRA_ACC_01 - 0x12E: [0xF8, 0xE5, 0x97, 0xC9, 0xD6, 0x07, 0x47, 0x21, - 0x66, 0xDD, 0xCF, 0x6F, 0xA1, 0x94, 0x74, 0x63], # ACC_07 - 0x139: [0xED, 0x03, 0x1C, 0x13, 0xC6, 0x23, 0x78, 0x7A, - 0x8B, 0x40, 0x14, 0x51, 0xBF, 0x68, 0x32, 0xBA], # VMM_02 - 0x13D: [0x20, 0xCA, 0x68, 0xD5, 0x1B, 0x31, 0xE2, 0xDA, - 0x08, 0x0A, 0xD4, 0xDE, 0x9C, 0xE4, 0x35, 0x5B], # QFK_01 - 0x14C: [0x16, 0x35, 0x59, 0x15, 0x9A, 0x2A, 0x97, 0xB8, - 0x0E, 0x4E, 0x30, 0xCC, 0xB3, 0x07, 0x01, 0xAD], # Motor_54 - 0x14D: [0x1A, 0x65, 0x81, 0x96, 0xC0, 0xDF, 0x11, 0x92, - 0xD3, 0x61, 0xC6, 0x95, 0x8C, 0x29, 0x21, 0xB5], # ACC_18 - 0x187: [0x7F, 0xED, 0x17, 0xC2, 0x7C, 0xEB, 0x44, 0x21, - 0x01, 0xFA, 0xDB, 0x15, 0x4A, 0x6B, 0x23, 0x05], # Motor_EV_01 - 0x1A4: [0x69, 0xBB, 0x54, 0xE6, 0x4E, 0x46, 0x8D, 0x7B, - 0xEA, 0x87, 0xE9, 0xB3, 0x63, 0xCE, 0xF8, 0xBF], # EA_01 - 0x1AB: [0x13, 0x21, 0x9B, 0x6A, 0x9A, 0x62, 0xD4, 0x65, - 0x18, 0xF1, 0xAB, 0x16, 0x32, 0x89, 0xE7, 0x26], # ESP_33 - 0x1F0: [0x2F, 0x3C, 0x22, 0x60, 0x18, 0xEB, 0x63, 0x76, - 0xC5, 0x91, 0x0F, 0x27, 0x34, 0x04, 0x7F, 0x02], # EA_02 - 0x20A: [0x9D, 0xE8, 0x36, 0xA1, 0xCA, 0x3B, 0x1D, 0x33, - 0xE0, 0xD5, 0xBB, 0x5F, 0xAE, 0x3C, 0x31, 0x9F], # EML_06 - 0x26B: [0xCE, 0xCC, 0xBD, 0x69, 0xA1, 0x3C, 0x18, 0x76, - 0x0F, 0x04, 0xF2, 0x3A, 0x93, 0x24, 0x19, 0x51], # TA_01 - 0x30C: [0x0F] * 16, # ACC_02 - 0x30F: [0x0C] * 16, # SWA_01 - 0x324: [0x27] * 16, # ACC_04 - 0x3BE: [0x1F, 0x28, 0xC6, 0x85, 0xE6, 0xF8, 0xB0, 0x19, - 0x5B, 0x64, 0x35, 0x21, 0xE4, 0xF7, 0x9C, 0x24], # Motor_14 - 0x3C0: [0xC3] * 16, # Klemmen_Status_01 - 0x3D5: [0xC5, 0x39, 0xC7, 0xF9, 0x92, 0xD8, 0x24, 0xCE, - 0xF1, 0xB5, 0x7A, 0xC4, 0xBC, 0x60, 0xE3, 0xD1], # Licht_Anf_01 - 0x65D: [0xAC, 0xB3, 0xAB, 0xEB, 0x7A, 0xE1, 0x3B, 0xF7, - 0x73, 0xBA, 0x7C, 0x9E, 0x06, 0x5F, 0x02, 0xD9], # ESP_20 -} diff --git a/opendbc_repo/opendbc/car/volkswagen/pqcan.py b/opendbc_repo/opendbc/car/volkswagen/pqcan.py deleted file mode 100644 index a2f8a8b962..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/pqcan.py +++ /dev/null @@ -1,105 +0,0 @@ -def create_steering_control(packer, bus, apply_torque, lkas_enabled): - values = { - "LM_Offset": abs(apply_torque), - "LM_OffSign": 1 if apply_torque < 0 else 0, - "HCA_Status": 5 if (lkas_enabled and apply_torque != 0) else 3, - "Vib_Freq": 16, - } - - return packer.make_can_msg("HCA_1", bus, values) - - -def create_lka_hud_control(packer, bus, ldw_stock_values, lat_active, steering_pressed, hud_alert, hud_control): - values = {} - if len(ldw_stock_values): - values = {s: ldw_stock_values[s] for s in [ - "LDW_SW_Warnung_links", # Blind spot in warning mode on left side due to lane departure - "LDW_SW_Warnung_rechts", # Blind spot in warning mode on right side due to lane departure - "LDW_Seite_DLCTLC", # Direction of most likely lane departure (left or right) - "LDW_DLC", # Lane departure, distance to line crossing - "LDW_TLC", # Lane departure, time to line crossing - ]} - - values.update({ - "LDW_Lampe_gelb": 1 if lat_active and steering_pressed else 0, - "LDW_Lampe_gruen": 1 if lat_active and not steering_pressed else 0, - "LDW_Lernmodus_links": 3 if hud_control.leftLaneDepart else 1 + hud_control.leftLaneVisible, - "LDW_Lernmodus_rechts": 3 if hud_control.rightLaneDepart else 1 + hud_control.rightLaneVisible, - "LDW_Textbits": hud_alert, - }) - - return packer.make_can_msg("LDW_Status", bus, values) - - -def create_acc_buttons_control(packer, bus, gra_stock_values, cancel=False, resume=False): - values = {s: gra_stock_values[s] for s in [ - "GRA_Hauptschalt", # ACC button, on/off - "GRA_Typ_Hauptschalt", # ACC button, momentary vs latching - "GRA_Kodierinfo", # ACC button, configuration - "GRA_Sender", # ACC button, CAN message originator - ]} - - values.update({ - "COUNTER": (gra_stock_values["COUNTER"] + 1) % 16, - "GRA_Abbrechen": cancel, - "GRA_Recall": resume, - }) - - return packer.make_can_msg("GRA_Neu", bus, values) - - -def acc_control_value(main_switch_on, acc_faulted, long_active): - if long_active: - acc_control = 1 - elif main_switch_on: - acc_control = 2 - else: - acc_control = 0 - - return acc_control - - -def acc_hud_status_value(main_switch_on, acc_faulted, long_active): - if acc_faulted: - hud_status = 6 - elif long_active: - hud_status = 3 - elif main_switch_on: - hud_status = 2 - else: - hud_status = 0 - - return hud_status - - -def create_acc_accel_control(packer, bus, acc_type, acc_enabled, accel, acc_control, stopping, starting, esp_hold): - commands = [] - - values = { - "ACS_Sta_ADR": acc_control, - "ACS_StSt_Info": acc_enabled, - "ACS_Typ_ACC": acc_type, - "ACS_Anhaltewunsch": acc_type == 1 and stopping, - "ACS_FreigSollB": acc_enabled, - "ACS_Sollbeschl": accel if acc_enabled else 3.01, - "ACS_zul_Regelabw": 0.2 if acc_enabled else 1.27, - "ACS_max_AendGrad": 3.0 if acc_enabled else 5.08, - } - - commands.append(packer.make_can_msg("ACC_System", bus, values)) - - return commands - - -def create_acc_hud_control(packer, bus, acc_hud_status, set_speed, lead_distance, distance): - values = { - "ACA_StaACC": acc_hud_status, - "ACA_Zeitluecke": distance + 2, - "ACA_V_Wunsch": set_speed, - "ACA_gemZeitl": lead_distance, - "ACA_PrioDisp": 3, - # TODO: restore dynamic pop-to-foreground/highlight behavior with ACA_PrioDisp and ACA_AnzDisplay - # TODO: ACA_kmh_mph handling probably needed to resolve rounding errors in displayed setpoint - } - - return packer.make_can_msg("ACC_GRA_Anzeige", bus, values) diff --git a/opendbc_repo/opendbc/car/volkswagen/tests/__init__.py b/opendbc_repo/opendbc/car/volkswagen/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py b/opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py deleted file mode 100644 index cc046e5720..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py +++ /dev/null @@ -1,60 +0,0 @@ -import random -import re - -from opendbc.car.structs import CarParams -from opendbc.car.volkswagen.values import CAR, FW_QUERY_CONFIG, WMI -from opendbc.car.volkswagen.fingerprints import FW_VERSIONS - -Ecu = CarParams.Ecu - -CHASSIS_CODE_PATTERN = re.compile('[A-Z0-9]{2}') -# TODO: determine the unknown groups -SPARE_PART_FW_PATTERN = re.compile(b'\xf1\x87(?P[0-9][0-9A-Z]{2})(?P[0-9][0-9A-Z][0-9])(?P[0-9A-Z]{2}[0-9])([A-Z0-9]| )') - - -class TestVolkswagenPlatformConfigs: - def test_spare_part_fw_pattern(self, subtests): - # Relied on for determining if a FW is likely VW - for platform, ecus in FW_VERSIONS.items(): - with subtests.test(platform=platform.value): - for fws in ecus.values(): - for fw in fws: - assert SPARE_PART_FW_PATTERN.match(fw) is not None, f"Bad FW: {fw}" - - def test_chassis_codes(self, subtests): - for platform in CAR: - with subtests.test(platform=platform.value): - assert len(platform.config.wmis) > 0, "WMIs not set" - assert len(platform.config.chassis_codes) > 0, "Chassis codes not set" - assert all(CHASSIS_CODE_PATTERN.match(cc) for cc in \ - platform.config.chassis_codes), "Bad chassis codes" - - # No two platforms should share chassis codes - for comp in CAR: - if platform == comp: - continue - assert set() == platform.config.chassis_codes & comp.config.chassis_codes, \ - f"Shared chassis codes: {comp}" - - def test_custom_fuzzy_fingerprinting(self, subtests): - all_radar_fw = list({fw for ecus in FW_VERSIONS.values() for fw in ecus[Ecu.fwdRadar, 0x757, None]}) - - for platform in CAR: - with subtests.test(platform=platform.name): - for wmi in WMI: - for chassis_code in platform.config.chassis_codes | {"00"}: - vin = ["0"] * 17 - vin[0:3] = wmi - vin[6:8] = chassis_code - vin = "".join(vin) - - # Check a few FW cases - expected, unexpected - for radar_fw in random.sample(all_radar_fw, 5) + [b'\xf1\x875Q0907572G \xf1\x890571', b'\xf1\x877H9907572AA\xf1\x890396']: - should_match = ((wmi in platform.config.wmis and chassis_code in platform.config.chassis_codes) and - radar_fw in all_radar_fw) - - live_fws = {(0x757, None): [radar_fw]} - matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fws, vin, FW_VERSIONS) - - expected_matches = {platform} if should_match else set() - assert expected_matches == matches, "Bad match" diff --git a/opendbc_repo/opendbc/car/volkswagen/values.py b/opendbc_repo/opendbc/car/volkswagen/values.py deleted file mode 100644 index 3842aa40b2..0000000000 --- a/opendbc_repo/opendbc/car/volkswagen/values.py +++ /dev/null @@ -1,528 +0,0 @@ -from collections import defaultdict, namedtuple -from dataclasses import dataclass, field -from enum import Enum, IntFlag, StrEnum - -from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, structs, uds -from opendbc.can import CANDefine -from opendbc.car.common.conversions import Conversions as CV -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column, \ - Device -from opendbc.car.fw_query_definitions import EcuAddrSubAddr, FwQueryConfig, Request, p16 -from opendbc.car.vin import Vin - -Ecu = structs.CarParams.Ecu -NetworkLocation = structs.CarParams.NetworkLocation -TransmissionType = structs.CarParams.TransmissionType -GearShifter = structs.CarState.GearShifter -Button = namedtuple('Button', ['event_type', 'can_addr', 'can_msg', 'values']) - - -class CarControllerParams: - STEER_STEP = 2 # HCA_01/HCA_1 message frequency 50Hz - ACC_CONTROL_STEP = 2 # ACC_06/ACC_07/ACC_System frequency 50Hz - AEB_CONTROL_STEP = 2 # ACC_10 frequency 50Hz - AEB_HUD_STEP = 20 # ACC_15 frequency 5Hz - - # Documented lateral limits: 3.00 Nm max, rate of change 5.00 Nm/sec. - # MQB vs PQ maximums are shared, but rate-of-change limited differently - # based on safety requirements driven by lateral accel testing. - - STEER_MAX = 300 # Max heading control assist torque 3.00 Nm - STEER_DRIVER_MULTIPLIER = 3 # weight driver torque heavily - STEER_DRIVER_FACTOR = 1 # from dbc - - STEER_TIME_MAX = 360 # Max time that EPS allows uninterrupted HCA steering control - STEER_TIME_ALERT = STEER_TIME_MAX - 10 # If mitigation fails, time to soft disengage before EPS timer expires - STEER_TIME_STUCK_TORQUE = 1.9 # EPS limits same torque to 6 seconds, reset timer 3x within that period - - DEFAULT_MIN_STEER_SPEED = 0.4 # m/s, newer EPS racks fault below this speed, don't show a low speed alert - - ACCEL_MAX = 2.0 # 2.0 m/s max acceleration - ACCEL_MIN = -3.5 # 3.5 m/s max deceleration - - def __init__(self, CP): - can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) - - if CP.flags & VolkswagenFlags.PQ: - self.LDW_STEP = 5 # LDW_1 message frequency 20Hz - self.ACC_HUD_STEP = 4 # ACC_GRA_Anzeige frequency 25Hz - self.STEER_DRIVER_ALLOWANCE = 80 # Driver intervention threshold 0.8 Nm - self.STEER_DELTA_UP = 6 # Max HCA reached in 1.00s (STEER_MAX / (50Hz * 1.00)) - self.STEER_DELTA_DOWN = 10 # Min HCA reached in 0.60s (STEER_MAX / (50Hz * 0.60)) - - if CP.transmissionType == TransmissionType.automatic: - self.shifter_values = can_define.dv["Getriebe_1"]["Waehlhebelposition__Getriebe_1_"] - self.hca_status_values = can_define.dv["Lenkhilfe_2"]["LH2_Sta_HCA"] - - self.BUTTONS = [ - Button(structs.CarState.ButtonEvent.Type.setCruise, "GRA_Neu", "GRA_Neu_Setzen", [1]), - Button(structs.CarState.ButtonEvent.Type.resumeCruise, "GRA_Neu", "GRA_Recall", [1]), - Button(structs.CarState.ButtonEvent.Type.accelCruise, "GRA_Neu", "GRA_Up_kurz", [1]), - Button(structs.CarState.ButtonEvent.Type.decelCruise, "GRA_Neu", "GRA_Down_kurz", [1]), - Button(structs.CarState.ButtonEvent.Type.cancel, "GRA_Neu", "GRA_Abbrechen", [1]), - Button(structs.CarState.ButtonEvent.Type.gapAdjustCruise, "GRA_Neu", "GRA_Zeitluecke", [1]), - ] - - self.LDW_MESSAGES = { - "none": 0, # Nothing to display - "laneAssistUnavail": 1, # "Lane Assist currently not available." - "laneAssistUnavailSysError": 2, # "Lane Assist system error" - "laneAssistUnavailNoSensorView": 3, # "Lane Assist not available. No sensor view." - "laneAssistTakeOver": 4, # "Lane Assist: Please Take Over Steering" - "laneAssistDeactivTrailer": 5, # "Lane Assist: no function with trailer" - } - - else: - self.LDW_STEP = 10 # LDW_02 message frequency 10Hz - self.ACC_HUD_STEP = 6 # ACC_02 message frequency 16Hz - self.STEER_DRIVER_ALLOWANCE = 80 # Driver intervention threshold 0.8 Nm - self.STEER_DELTA_UP = 4 # Max HCA reached in 1.50s (STEER_MAX / (50Hz * 1.50)) - self.STEER_DELTA_DOWN = 10 # Min HCA reached in 0.60s (STEER_MAX / (50Hz * 0.60)) - - if CP.transmissionType == TransmissionType.automatic: - self.shifter_values = can_define.dv["Gateway_73"]["GE_Fahrstufe"] - elif CP.transmissionType == TransmissionType.direct: - self.shifter_values = can_define.dv["Motor_EV_01"]["MO_Waehlpos"] - self.hca_status_values = can_define.dv["LH_EPS_03"]["EPS_HCA_Status"] - - self.BUTTONS = [ - Button(structs.CarState.ButtonEvent.Type.setCruise, "GRA_ACC_01", "GRA_Tip_Setzen", [1]), - Button(structs.CarState.ButtonEvent.Type.resumeCruise, "GRA_ACC_01", "GRA_Tip_Wiederaufnahme", [1]), - Button(structs.CarState.ButtonEvent.Type.accelCruise, "GRA_ACC_01", "GRA_Tip_Hoch", [1]), - Button(structs.CarState.ButtonEvent.Type.decelCruise, "GRA_ACC_01", "GRA_Tip_Runter", [1]), - Button(structs.CarState.ButtonEvent.Type.cancel, "GRA_ACC_01", "GRA_Abbrechen", [1]), - Button(structs.CarState.ButtonEvent.Type.gapAdjustCruise, "GRA_ACC_01", "GRA_Verstellung_Zeitluecke", [1]), - ] - - self.LDW_MESSAGES = { - "none": 0, # Nothing to display - "laneAssistUnavailChime": 1, # "Lane Assist currently not available." with chime - "laneAssistUnavailNoSensorChime": 3, # "Lane Assist not available. No sensor view." with chime - "laneAssistTakeOverUrgent": 4, # "Lane Assist: Please Take Over Steering" with urgent beep - "emergencyAssistUrgent": 6, # "Emergency Assist: Please Take Over Steering" with urgent beep - "laneAssistTakeOverChime": 7, # "Lane Assist: Please Take Over Steering" with chime - "laneAssistTakeOver": 8, # "Lane Assist: Please Take Over Steering" silent - "emergencyAssistChangingLanes": 9, # "Emergency Assist: Changing lanes..." with urgent beep - "laneAssistDeactivated": 10, # "Lane Assist deactivated." silent with persistent icon afterward - } - - -class CANBUS: - pt = 0 - cam = 2 - - -class WMI(StrEnum): - VOLKSWAGEN_USA_SUV = "1V2" - VOLKSWAGEN_USA_CAR = "1VW" - VOLKSWAGEN_MEXICO_SUV = "3VV" - VOLKSWAGEN_MEXICO_CAR = "3VW" - VOLKSWAGEN_ARGENTINA = "8AW" - VOLKSWAGEN_BRASIL = "9BW" - SAIC_VOLKSWAGEN = "LSV" - SKODA = "TMB" - SEAT = "VSS" - AUDI_EUROPE_MPV = "WA1" - AUDI_GERMANY_CAR = "WAU" - MAN = "WMA" - AUDI_SPORT = "WUA" - VOLKSWAGEN_COMMERCIAL = "WV1" - VOLKSWAGEN_COMMERCIAL_BUS_VAN = "WV2" - VOLKSWAGEN_EUROPE_SUV = "WVG" - VOLKSWAGEN_EUROPE_CAR = "WVW" - VOLKSWAGEN_GROUP_RUS = "XW8" - - -class VolkswagenSafetyFlags(IntFlag): - LONG_CONTROL = 1 - - -class VolkswagenFlags(IntFlag): - # Detected flags - STOCK_HCA_PRESENT = 1 - - # Static flags - PQ = 2 - - -@dataclass -class VolkswagenMQBPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'vw_mqb'}) - # Volkswagen uses the VIN WMI and chassis code to match in the absence of the comma power - # on camera-integrated cars, as we lose too many ECUs to reliably identify the vehicle - chassis_codes: set[str] = field(default_factory=set) - wmis: set[WMI] = field(default_factory=set) - - -@dataclass -class VolkswagenPQPlatformConfig(VolkswagenMQBPlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'vw_pq'}) - - def init(self): - self.flags |= VolkswagenFlags.PQ - - -@dataclass(frozen=True, kw_only=True) -class VolkswagenCarSpecs(CarSpecs): - centerToFrontRatio: float = 0.45 - steerRatio: float = 15.6 - minSteerSpeed: float = CarControllerParams.DEFAULT_MIN_STEER_SPEED - - -class Footnote(Enum): - KAMIQ = CarFootnote( - "Not including the China market Kamiq, which is based on the (currently) unsupported PQ34 platform.", - Column.MODEL) - PASSAT = CarFootnote( - "Refers only to the MQB-based European B8 Passat, not the NMS Passat in the USA/China/Mideast markets.", - Column.MODEL) - SKODA_HEATED_WINDSHIELD = CarFootnote( - "Some Škoda vehicles are equipped with heated windshields, which are known " + - "to block GPS signal needed for some comma 3X functionality.", - Column.MODEL) - VW_EXP_LONG = CarFootnote( - "Only available for vehicles using a gateway (J533) harness. At this time, vehicles using a camera harness " + - "are limited to using stock ACC.", - Column.LONGITUDINAL, docs_only=True) - VW_MQB_A0 = CarFootnote( - "Model-years 2022 and beyond may have a combined CAN gateway and BCM, which is supported by openpilot " + - "in software, but doesn't yet have a harness available from the comma store.", - Column.HARDWARE) - - -@dataclass -class VWCarDocs(CarDocs): - package: str = "Adaptive Cruise Control (ACC) & Lane Assist" - car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.vw_j533])) - - def init_make(self, CP: structs.CarParams): - self.footnotes.append(Footnote.VW_EXP_LONG) - if "SKODA" in CP.carFingerprint: - self.footnotes.append(Footnote.SKODA_HEATED_WINDSHIELD) - - if CP.carFingerprint in (CAR.VOLKSWAGEN_CRAFTER_MK2, CAR.VOLKSWAGEN_TRANSPORTER_T61): - self.car_parts = CarParts([Device.threex_angled_mount, CarHarness.vw_j533]) - - if abs(CP.minSteerSpeed - CarControllerParams.DEFAULT_MIN_STEER_SPEED) < 1e-3: - self.min_steer_speed = 0 - - -# Check the 7th and 8th characters of the VIN before adding a new CAR. If the -# chassis code is already listed below, don't add a new CAR, just add to the -# FW_VERSIONS for that existing CAR. - -class CAR(Platforms): - config: VolkswagenMQBPlatformConfig | VolkswagenPQPlatformConfig - - VOLKSWAGEN_ARTEON_MK1 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Arteon 2018-23", video="https://youtu.be/FAomFKPFlDA"), - VWCarDocs("Volkswagen Arteon R 2020-23", video="https://youtu.be/FAomFKPFlDA"), - VWCarDocs("Volkswagen Arteon eHybrid 2020-23", video="https://youtu.be/FAomFKPFlDA"), - VWCarDocs("Volkswagen Arteon Shooting Brake 2020-23", video="https://youtu.be/FAomFKPFlDA"), - VWCarDocs("Volkswagen CC 2018-22", video="https://youtu.be/FAomFKPFlDA"), - ], - VolkswagenCarSpecs(mass=1733, wheelbase=2.84), - chassis_codes={"AN", "3H"}, - wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, - ) - VOLKSWAGEN_ATLAS_MK1 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Atlas 2018-23"), - VWCarDocs("Volkswagen Atlas Cross Sport 2020-22"), - VWCarDocs("Volkswagen Teramont 2018-22"), - VWCarDocs("Volkswagen Teramont Cross Sport 2021-22"), - VWCarDocs("Volkswagen Teramont X 2021-22"), - ], - VolkswagenCarSpecs(mass=2011, wheelbase=2.98), - chassis_codes={"CA"}, - wmis={WMI.VOLKSWAGEN_USA_SUV, WMI.VOLKSWAGEN_EUROPE_SUV}, - ) - VOLKSWAGEN_CADDY_MK3 = VolkswagenPQPlatformConfig( - [ - VWCarDocs("Volkswagen Caddy 2019"), - VWCarDocs("Volkswagen Caddy Maxi 2019"), - ], - VolkswagenCarSpecs(mass=1613, wheelbase=2.6, minSteerSpeed=21 * CV.KPH_TO_MS), - chassis_codes={"2K"}, - wmis={WMI.VOLKSWAGEN_COMMERCIAL_BUS_VAN}, - ) - VOLKSWAGEN_CRAFTER_MK2 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Crafter 2017-24", video="https://youtu.be/4100gLeabmo"), - VWCarDocs("Volkswagen e-Crafter 2018-24", video="https://youtu.be/4100gLeabmo"), - VWCarDocs("Volkswagen Grand California 2019-24", video="https://youtu.be/4100gLeabmo"), - VWCarDocs("MAN TGE 2017-24", video="https://youtu.be/4100gLeabmo"), - VWCarDocs("MAN eTGE 2020-24", video="https://youtu.be/4100gLeabmo"), - ], - VolkswagenCarSpecs(mass=2100, wheelbase=3.64, minSteerSpeed=50 * CV.KPH_TO_MS), - chassis_codes={"SY", "SZ", "UY", "UZ"}, - wmis={WMI.VOLKSWAGEN_COMMERCIAL, WMI.MAN}, - ) - VOLKSWAGEN_GOLF_MK7 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen e-Golf 2014-20"), - VWCarDocs("Volkswagen Golf 2015-20", auto_resume=False), - VWCarDocs("Volkswagen Golf Alltrack 2015-19", auto_resume=False), - VWCarDocs("Volkswagen Golf GTD 2015-20"), - VWCarDocs("Volkswagen Golf GTE 2015-20"), - VWCarDocs("Volkswagen Golf GTI 2015-21", auto_resume=False), - VWCarDocs("Volkswagen Golf R 2015-19"), - VWCarDocs("Volkswagen Golf SportsVan 2015-20"), - ], - VolkswagenCarSpecs(mass=1397, wheelbase=2.62), - chassis_codes={"5G", "AU", "BA", "BE"}, - wmis={WMI.VOLKSWAGEN_MEXICO_CAR, WMI.VOLKSWAGEN_EUROPE_CAR}, - ) - VOLKSWAGEN_JETTA_MK6 = VolkswagenPQPlatformConfig( - [VWCarDocs("Volkswagen Jetta 2015-18")], - VolkswagenCarSpecs(mass=1518, wheelbase=2.65, minSteerSpeed=50 * CV.KPH_TO_MS, minEnableSpeed=20 * CV.KPH_TO_MS), - chassis_codes={"5K", "AJ"}, - wmis={WMI.VOLKSWAGEN_MEXICO_CAR}, - ) - VOLKSWAGEN_JETTA_MK7 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Jetta 2018-23"), - VWCarDocs("Volkswagen Jetta GLI 2021-23"), - ], - VolkswagenCarSpecs(mass=1328, wheelbase=2.71), - chassis_codes={"BU"}, - wmis={WMI.VOLKSWAGEN_MEXICO_CAR, WMI.VOLKSWAGEN_EUROPE_CAR}, - ) - VOLKSWAGEN_PASSAT_MK8 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Passat 2015-22", footnotes=[Footnote.PASSAT]), - VWCarDocs("Volkswagen Passat Alltrack 2015-22"), - VWCarDocs("Volkswagen Passat GTE 2015-22"), - ], - VolkswagenCarSpecs(mass=1551, wheelbase=2.79), - chassis_codes={"3C", "3G"}, - wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, - ) - VOLKSWAGEN_PASSAT_NMS = VolkswagenPQPlatformConfig( - [VWCarDocs("Volkswagen Passat NMS 2017-22")], - VolkswagenCarSpecs(mass=1503, wheelbase=2.80, minSteerSpeed=50 * CV.KPH_TO_MS, minEnableSpeed=20 * CV.KPH_TO_MS), - chassis_codes={"A3"}, - wmis={WMI.VOLKSWAGEN_USA_CAR}, - ) - VOLKSWAGEN_POLO_MK6 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Polo 2018-23", footnotes=[Footnote.VW_MQB_A0]), - VWCarDocs("Volkswagen Polo GTI 2018-23", footnotes=[Footnote.VW_MQB_A0]), - ], - VolkswagenCarSpecs(mass=1230, wheelbase=2.55), - chassis_codes={"AW"}, - wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, - ) - VOLKSWAGEN_SHARAN_MK2 = VolkswagenPQPlatformConfig( - [ - VWCarDocs("Volkswagen Sharan 2018-22"), - VWCarDocs("SEAT Alhambra 2018-20"), - ], - VolkswagenCarSpecs(mass=1639, wheelbase=2.92, minSteerSpeed=50 * CV.KPH_TO_MS), - chassis_codes={"7N"}, - wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, - ) - VOLKSWAGEN_TAOS_MK1 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Volkswagen Taos 2022-23")], - VolkswagenCarSpecs(mass=1498, wheelbase=2.69), - chassis_codes={"B2"}, - wmis={WMI.VOLKSWAGEN_MEXICO_SUV, WMI.VOLKSWAGEN_ARGENTINA}, - ) - VOLKSWAGEN_TCROSS_MK1 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Volkswagen T-Cross 2021", footnotes=[Footnote.VW_MQB_A0])], - VolkswagenCarSpecs(mass=1150, wheelbase=2.60), - chassis_codes={"C1"}, - wmis={WMI.VOLKSWAGEN_EUROPE_SUV}, - ) - VOLKSWAGEN_TIGUAN_MK2 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Tiguan 2018-23"), - VWCarDocs("Volkswagen Tiguan eHybrid 2021-23"), - ], - VolkswagenCarSpecs(mass=1715, wheelbase=2.74), - chassis_codes={"5N", "AD", "AX", "BW"}, - wmis={WMI.VOLKSWAGEN_EUROPE_SUV, WMI.VOLKSWAGEN_MEXICO_SUV}, - ) - VOLKSWAGEN_TOURAN_MK2 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Volkswagen Touran 2016-23")], - VolkswagenCarSpecs(mass=1516, wheelbase=2.79), - chassis_codes={"1T"}, - wmis={WMI.VOLKSWAGEN_EUROPE_SUV}, - ) - VOLKSWAGEN_TRANSPORTER_T61 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Volkswagen Caravelle 2020"), - VWCarDocs("Volkswagen California 2021-23"), - ], - VolkswagenCarSpecs(mass=1926, wheelbase=3.00, minSteerSpeed=14.0), - chassis_codes={"7H", "7L"}, - wmis={WMI.VOLKSWAGEN_COMMERCIAL_BUS_VAN}, - ) - VOLKSWAGEN_TROC_MK1 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Volkswagen T-Roc 2018-23")], - VolkswagenCarSpecs(mass=1413, wheelbase=2.63), - chassis_codes={"A1"}, - wmis={WMI.VOLKSWAGEN_EUROPE_SUV}, - ) - AUDI_A3_MK3 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Audi A3 2014-19"), - VWCarDocs("Audi A3 Sportback e-tron 2017-18"), - VWCarDocs("Audi RS3 2018"), - VWCarDocs("Audi S3 2015-17"), - ], - VolkswagenCarSpecs(mass=1335, wheelbase=2.61), - chassis_codes={"8V", "FF"}, - wmis={WMI.AUDI_GERMANY_CAR, WMI.AUDI_SPORT}, - ) - AUDI_Q2_MK1 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Audi Q2 2018")], - VolkswagenCarSpecs(mass=1205, wheelbase=2.61), - chassis_codes={"GA"}, - wmis={WMI.AUDI_GERMANY_CAR}, - ) - AUDI_Q3_MK2 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Audi Q3 2019-23")], - VolkswagenCarSpecs(mass=1623, wheelbase=2.68), - chassis_codes={"8U", "F3", "FS"}, - wmis={WMI.AUDI_EUROPE_MPV, WMI.AUDI_GERMANY_CAR}, - ) - SEAT_ATECA_MK1 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("CUPRA Ateca 2018-23"), - VWCarDocs("SEAT Ateca 2016-23"), - VWCarDocs("SEAT Leon 2014-20"), - ], - VolkswagenCarSpecs(mass=1300, wheelbase=2.64), - chassis_codes={"5F"}, - wmis={WMI.SEAT}, - ) - SKODA_FABIA_MK4 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Škoda Fabia 2022-23", footnotes=[Footnote.VW_MQB_A0])], - VolkswagenCarSpecs(mass=1266, wheelbase=2.56), - chassis_codes={"PJ"}, - wmis={WMI.SKODA}, - ) - SKODA_KAMIQ_MK1 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Škoda Kamiq 2021-23", footnotes=[Footnote.VW_MQB_A0, Footnote.KAMIQ]), - VWCarDocs("Škoda Scala 2020-23", footnotes=[Footnote.VW_MQB_A0]), - ], - VolkswagenCarSpecs(mass=1230, wheelbase=2.66), - chassis_codes={"NW"}, - wmis={WMI.SKODA}, - ) - SKODA_KAROQ_MK1 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Škoda Karoq 2019-23")], - VolkswagenCarSpecs(mass=1278, wheelbase=2.66), - chassis_codes={"NU"}, - wmis={WMI.SKODA}, - ) - SKODA_KODIAQ_MK1 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Škoda Kodiaq 2017-23")], - VolkswagenCarSpecs(mass=1569, wheelbase=2.79), - chassis_codes={"NS"}, - wmis={WMI.SKODA, WMI.VOLKSWAGEN_GROUP_RUS}, - ) - SKODA_OCTAVIA_MK3 = VolkswagenMQBPlatformConfig( - [ - VWCarDocs("Škoda Octavia 2015-19"), - VWCarDocs("Škoda Octavia RS 2016"), - VWCarDocs("Škoda Octavia Scout 2017-19"), - ], - VolkswagenCarSpecs(mass=1388, wheelbase=2.68), - chassis_codes={"NE"}, - wmis={WMI.SKODA}, - ) - SKODA_SUPERB_MK3 = VolkswagenMQBPlatformConfig( - [VWCarDocs("Škoda Superb 2015-22")], - VolkswagenCarSpecs(mass=1505, wheelbase=2.84), - chassis_codes={"3V", "NP"}, - wmis={WMI.SKODA}, - ) - - -def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: - candidates = set() - - # Compile all FW versions for each ECU - all_ecu_versions: dict[EcuAddrSubAddr, set[str]] = defaultdict(set) - for ecus in offline_fw_versions.values(): - for ecu, versions in ecus.items(): - all_ecu_versions[ecu] |= set(versions) - - # Check the WMI and chassis code to determine the platform - # https://www.clubvw.org.au/vwreference/vwvin - vin_obj = Vin(vin) - chassis_code = vin_obj.vds[3:5] - - for platform in CAR: - valid_ecus = set() - for ecu in offline_fw_versions[platform]: - addr = ecu[1:] - if ecu[0] not in CHECK_FUZZY_ECUS: - continue - - # Sanity check that live FW is in the superset of all FW, Volkswagen ECU part numbers are commonly shared - found_versions = live_fw_versions.get(addr, []) - expected_versions = all_ecu_versions[ecu] - if not any(found_version in expected_versions for found_version in found_versions): - break - - valid_ecus.add(ecu[0]) - - if valid_ecus != CHECK_FUZZY_ECUS: - continue - - if vin_obj.wmi in platform.config.wmis and chassis_code in platform.config.chassis_codes: - candidates.add(platform) - - return {str(c) for c in candidates} - - -# These ECUs are required to match to gain a VIN match -# TODO: do we want to check camera when we add its FW? -CHECK_FUZZY_ECUS = {Ecu.fwdRadar} - -# All supported cars should return FW from the engine, srs, eps, and fwdRadar. Cars -# with a manual trans won't return transmission firmware, but all other cars will. -# -# The 0xF187 SW part number query should return in the form of N[NX][NX] NNN NNN [X[X]], -# where N=number, X=letter, and the trailing two letters are optional. Performance -# tuners sometimes tamper with that field (e.g. 8V0 9C0 BB0 1 from COBB/EQT). Tampered -# ECU SW part numbers are invalid for vehicle ID and compatibility checks. Try to have -# them repaired by the tuner before including them in openpilot. - -VOLKSWAGEN_VERSION_REQUEST_MULTI = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ - p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_SPARE_PART_NUMBER) + \ - p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_SOFTWARE_VERSION_NUMBER) + \ - p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_DATA_IDENTIFICATION) -VOLKSWAGEN_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) - -VOLKSWAGEN_RX_OFFSET = 0x6a - -FW_QUERY_CONFIG = FwQueryConfig( - requests=[request for bus, obd_multiplexing in [(1, True), (1, False), (0, False)] for request in [ - Request( - [VOLKSWAGEN_VERSION_REQUEST_MULTI], - [VOLKSWAGEN_VERSION_RESPONSE], - whitelist_ecus=[Ecu.srs, Ecu.eps, Ecu.fwdRadar, Ecu.fwdCamera], - rx_offset=VOLKSWAGEN_RX_OFFSET, - bus=bus, - obd_multiplexing=obd_multiplexing, - ), - Request( - [VOLKSWAGEN_VERSION_REQUEST_MULTI], - [VOLKSWAGEN_VERSION_RESPONSE], - whitelist_ecus=[Ecu.engine, Ecu.transmission], - bus=bus, - obd_multiplexing=obd_multiplexing, - ), - ]], - non_essential_ecus={Ecu.eps: list(CAR)}, - extra_ecus=[(Ecu.fwdCamera, 0x74f, None)], - match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, -) - -DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/xcp.py b/opendbc_repo/opendbc/car/xcp.py deleted file mode 100644 index c5cf99c77b..0000000000 --- a/opendbc_repo/opendbc/car/xcp.py +++ /dev/null @@ -1,258 +0,0 @@ -import sys -import time -import struct -from enum import IntEnum - -class COMMAND_CODE(IntEnum): - CONNECT = 0xFF - DISCONNECT = 0xFE - GET_STATUS = 0xFD - SYNCH = 0xFC - GET_COMM_MODE_INFO = 0xFB - GET_ID = 0xFA - SET_REQUEST = 0xF9 - GET_SEED = 0xF8 - UNLOCK = 0xF7 - SET_MTA = 0xF6 - UPLOAD = 0xF5 - SHORT_UPLOAD = 0xF4 - BUILD_CHECKSUM = 0xF3 - TRANSPORT_LAYER_CMD = 0xF2 - USER_CMD = 0xF1 - DOWNLOAD = 0xF0 - DOWNLOAD_NEXT = 0xEF - DOWNLOAD_MAX = 0xEE - SHORT_DOWNLOAD = 0xED - MODIFY_BITS = 0xEC - SET_CAL_PAGE = 0xEB - GET_CAL_PAGE = 0xEA - GET_PAG_PROCESSOR_INFO = 0xE9 - GET_SEGMENT_INFO = 0xE8 - GET_PAGE_INFO = 0xE7 - SET_SEGMENT_MODE = 0xE6 - GET_SEGMENT_MODE = 0xE5 - COPY_CAL_PAGE = 0xE4 - CLEAR_DAQ_LIST = 0xE3 - SET_DAQ_PTR = 0xE2 - WRITE_DAQ = 0xE1 - SET_DAQ_LIST_MODE = 0xE0 - GET_DAQ_LIST_MODE = 0xDF - START_STOP_DAQ_LIST = 0xDE - START_STOP_SYNCH = 0xDD - GET_DAQ_CLOCK = 0xDC - READ_DAQ = 0xDB - GET_DAQ_PROCESSOR_INFO = 0xDA - GET_DAQ_RESOLUTION_INFO = 0xD9 - GET_DAQ_LIST_INFO = 0xD8 - GET_DAQ_EVENT_INFO = 0xD7 - FREE_DAQ = 0xD6 - ALLOC_DAQ = 0xD5 - ALLOC_ODT = 0xD4 - ALLOC_ODT_ENTRY = 0xD3 - PROGRAM_START = 0xD2 - PROGRAM_CLEAR = 0xD1 - PROGRAM = 0xD0 - PROGRAM_RESET = 0xCF - GET_PGM_PROCESSOR_INFO = 0xCE - GET_SECTOR_INFO = 0xCD - PROGRAM_PREPARE = 0xCC - PROGRAM_FORMAT = 0xCB - PROGRAM_NEXT = 0xCA - PROGRAM_MAX = 0xC9 - PROGRAM_VERIFY = 0xC8 - -ERROR_CODES = { - 0x00: "Command processor synchronization", - 0x10: "Command was not executed", - 0x11: "Command rejected because DAQ is running", - 0x12: "Command rejected because PGM is running", - 0x20: "Unknown command or not implemented optional command", - 0x21: "Command syntax invalid", - 0x22: "Command syntax valid but command parameter(s) out of range", - 0x23: "The memory location is write protected", - 0x24: "The memory location is not accessible", - 0x25: "Access denied, Seed & Key is required", - 0x26: "Selected page not available", - 0x27: "Selected page mode not available", - 0x28: "Selected segment not valid", - 0x29: "Sequence error", - 0x2A: "DAQ configuration not valid", - 0x30: "Memory overflow error", - 0x31: "Generic error", - 0x32: "The slave internal program verify routine detects an error", -} - -class CONNECT_MODE(IntEnum): - NORMAL = 0x00, - USER_DEFINED = 0x01, - -class GET_ID_REQUEST_TYPE(IntEnum): - ASCII = 0x00, - ASAM_MC2_FILE = 0x01, - ASAM_MC2_PATH = 0x02, - ASAM_MC2_URL = 0x03, - ASAM_MC2_UPLOAD = 0x04, - # 128-255 user defined - -class CommandTimeoutError(Exception): - pass - -class CommandCounterError(Exception): - pass - -class CommandResponseError(Exception): - def __init__(self, message, return_code): - super().__init__() - self.message = message - self.return_code = return_code - - def __str__(self): - return self.message - -class XcpClient: - def __init__(self, panda, tx_addr: int, rx_addr: int, bus: int=0, timeout: float=0.1, debug=False, pad=True): - self.tx_addr = tx_addr - self.rx_addr = rx_addr - self.can_bus = bus - self.timeout = timeout - self.debug = debug - self._panda = panda - self._byte_order = ">" - self._max_cto = 8 - self._max_dto = 8 - self.pad = pad - - def _send_cto(self, cmd: int, dat: bytes = b"") -> None: - tx_data = (bytes([cmd]) + dat) - - # Some ECUs don't respond if the packets are not padded to 8 bytes - if self.pad: - tx_data = tx_data.ljust(8, b"\x00") - - if self.debug: - print("CAN-CLEAR: TX") - self._panda.can_clear(self.can_bus) - if self.debug: - print("CAN-CLEAR: RX") - self._panda.can_clear(0xFFFF) - if self.debug: - print(f"CAN-TX: {hex(self.tx_addr)} - 0x{bytes.hex(tx_data)}") - self._panda.can_send(self.tx_addr, tx_data, self.can_bus) - - def _recv_dto(self, timeout: float) -> bytes: - start_time = time.time() - while time.time() - start_time < timeout: - msgs = self._panda.can_recv() or [] - if len(msgs) >= 256: - print("CAN RX buffer overflow!!!", file=sys.stderr) - for rx_addr, rx_data, rx_bus in msgs: - if rx_bus == self.can_bus and rx_addr == self.rx_addr: - rx_data = bytes(rx_data) # convert bytearray to bytes - if self.debug: - print(f"CAN-RX: {hex(rx_addr)} - 0x{bytes.hex(rx_data)}") - - pid = rx_data[0] - if pid == 0xFE: - err = rx_data[1] - err_desc = ERROR_CODES.get(err, "unknown error") - dat = rx_data[2:] - raise CommandResponseError(f"{hex(err)} - {err_desc} {dat}", err) - - return bytes(rx_data[1:]) - time.sleep(0.001) - - raise CommandTimeoutError("timeout waiting for response") - - # commands - def connect(self, connect_mode: CONNECT_MODE=CONNECT_MODE.NORMAL) -> dict: - self._send_cto(COMMAND_CODE.CONNECT, bytes([connect_mode])) - resp = self._recv_dto(self.timeout) - assert len(resp) == 7, f"incorrect data length: {len(resp)}" - self._byte_order = ">" if resp[1] & 0x01 else "<" - self._slave_block_mode = resp[1] & 0x40 != 0 - self._max_cto = resp[2] - self._max_dto = struct.unpack(f"{self._byte_order}H", resp[3:5])[0] - return { - "cal_support": resp[0] & 0x01 != 0, - "daq_support": resp[0] & 0x04 != 0, - "stim_support": resp[0] & 0x08 != 0, - "pgm_support": resp[0] & 0x10 != 0, - "byte_order": self._byte_order, - "address_granularity": 2**((resp[1] & 0x06) >> 1), - "slave_block_mode": self._slave_block_mode, - "optional": resp[1] & 0x80 != 0, - "max_cto": self._max_cto, - "max_dto": self._max_dto, - "protocol_version": resp[5], - "transport_version": resp[6], - } - - def disconnect(self) -> None: - self._send_cto(COMMAND_CODE.DISCONNECT) - resp = self._recv_dto(self.timeout) - assert len(resp) == 0, f"incorrect data length: {len(resp)}" - - def get_id(self, req_id_type: GET_ID_REQUEST_TYPE = GET_ID_REQUEST_TYPE.ASCII) -> dict: - if req_id_type > 255: - raise ValueError("request id type must be less than 255") - self._send_cto(COMMAND_CODE.GET_ID, bytes([req_id_type])) - resp = self._recv_dto(self.timeout) - return { - # mode = 0 means MTA was set - # mode = 1 means data is at end (only CAN-FD has space for this) - "mode": resp[0], - "length": struct.unpack(f"{self._byte_order}I", resp[3:7])[0], - "identifier": resp[7:] if self._max_cto > 8 else None - } - - def get_seed(self, mode: int = 0) -> bytes: - if mode > 255: - raise ValueError("mode must be less than 255") - self._send_cto(COMMAND_CODE.GET_SEED, bytes([0, mode])) - - # TODO: add support for longer seeds spread over multiple blocks - ret = self._recv_dto(self.timeout) - length = ret[0] - return ret[1:length+1] - - def unlock(self, key: bytes) -> bytes: - # TODO: add support for longer keys spread over multiple blocks - self._send_cto(COMMAND_CODE.UNLOCK, bytes([len(key)]) + key) - return self._recv_dto(self.timeout) - - def set_mta(self, addr: int, addr_ext: int = 0) -> bytes: - if addr_ext > 255: - raise ValueError("address extension must be less than 256") - # TODO: this looks broken (missing addr extension) - self._send_cto(COMMAND_CODE.SET_MTA, bytes([0x00, 0x00, addr_ext]) + struct.pack(f"{self._byte_order}I", addr)) - return self._recv_dto(self.timeout) - - def upload(self, size: int) -> bytes: - if size > 255: - raise ValueError("size must be less than 256") - if not self._slave_block_mode and size > self._max_dto - 1: - raise ValueError("block mode not supported") - - self._send_cto(COMMAND_CODE.UPLOAD, bytes([size])) - resp = b"" - while len(resp) < size: - resp += self._recv_dto(self.timeout)[:size - len(resp) + 1] - return resp[:size] # trim off bytes with undefined values - - def short_upload(self, size: int, addr_ext: int, addr: int) -> bytes: - if size > 6: - raise ValueError("size must be less than 7") - if addr_ext > 255: - raise ValueError("address extension must be less than 256") - self._send_cto(COMMAND_CODE.SHORT_UPLOAD, bytes([size, 0x00, addr_ext]) + struct.pack(f"{self._byte_order}I", addr)) - return self._recv_dto(self.timeout)[:size] # trim off bytes with undefined values - - def download(self, data: bytes) -> bytes: - size = len(data) - if size > 255: - raise ValueError("size must be less than 256") - if not self._slave_block_mode and size > self._max_dto - 2: - raise ValueError("block mode not supported") - - self._send_cto(COMMAND_CODE.DOWNLOAD, bytes([size]) + data) - return self._recv_dto(self.timeout)[:size] diff --git a/opendbc_repo/opendbc/dbc/ESR.dbc b/opendbc_repo/opendbc/dbc/ESR.dbc deleted file mode 100644 index e3837a68b2..0000000000 --- a/opendbc_repo/opendbc/dbc/ESR.dbc +++ /dev/null @@ -1,1080 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: Gateway ESR -VAL_TABLE_ ForwardReverse 1 "Reverse" 0 "Forward" ; -VAL_TABLE_ LeftRight 1 "Right Clockwise" 0 "Left CounterClockwise" ; -VAL_TABLE_ ValidInvalid 1 "Valid" 0 "Invalid" ; -VAL_TABLE_ TrueFalse 1 "True" 0 "False" ; - - -BO_ 1343 Target64: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1342 Target63: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1341 Target62: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1340 Target61: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1339 Target60: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1338 Target59: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1337 Target58: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1336 Target57: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1335 Target56: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1334 Target55: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1333 Target54: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1332 Target53: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1331 Target52: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1330 Target51: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1329 Target50: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1328 Target49: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1327 Target48: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1326 Target47: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1325 Target46: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1324 Target45: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1323 Target44: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1322 Target43: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1321 Target42: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1320 Target41: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1319 Target40: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1318 Target39: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1317 Target38: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1316 Target37: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1315 Target36: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1314 Target35: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1313 Target34: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1312 Target33: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1311 Target32: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1310 Target31: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1309 Target30: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1308 Target29: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1307 Target28: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1306 Target27: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1305 Target26: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1304 Target25: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1303 Target24: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1302 Target23: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1301 Target22: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1300 Target21: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1299 Target20: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1298 Target19: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1297 Target18: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1296 Target17: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1295 Target16: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1294 Target15: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1293 Target14: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1292 Target13: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1291 Target12: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1290 Target11: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1289 Target10: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1288 Target9: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1287 Target8: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1285 Target6: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1286 Target7: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1284 Target5: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1283 Target4: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1282 Target3: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1281 Target2: 8 Vector__XXX - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1524 VehicleData3: 8 Gateway - SG_ CAN_RX_YAW_RATE_BIAS_SHIFT : 15|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_WHEELBASE : 55|8@0+ (2,200) [200|710] "cm" Vector__XXX - SG_ CAN_RX_STEERING_GEAR_RATIO : 63|8@0+ (0.125,0) [0|31.875] "" Vector__XXX - SG_ CAN_RX_OVERSTEER_UNDERSTEER : 7|8@0- (1,0) [-128|127] "%" Vector__XXX - SG_ CAN_RX_FUNNEL_OFFSET_RIGHT : 31|8@0- (0.1,0) [-12.8|12.7] "m" Vector__XXX - SG_ CAN_RX_FUNNEL_OFFSET_LEFT : 23|8@0- (0.1,0) [-12.8|12.7] "m" Vector__XXX - SG_ CAN_RX_DISTANCE_REAR_AXLE : 47|8@0+ (2,200) [200|710] "cm" Vector__XXX - SG_ CAN_RX_CW_BLOCKAGE_TRESHOLD : 39|8@0+ (0.0078125,0) [0|1.9921875] "" Vector__XXX - SG_ CAN_RX_BEAMWIDTH_VERT : 14|7@0+ (0.0625,0) [0|7.9375] "deg" Vector__XXX - -BO_ 1523 FactoryAlignment: 8 Gateway - -BO_ 1522 Vehicle_Data2: 8 Gateway - SG_ CAN_RX_WHEEL_SLIP : 41|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_RX_SERV_ALIGN_UPDATES_NEED : 55|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_RX_SERV_ALIGN_TYPE : 47|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_RADAR_HEIGHT : 38|7@0+ (1,0) [0|127] "cm" Vector__XXX - SG_ CAN_RX_RADAR_FOV_MR : 30|7@0+ (1,0) [0|127] "deg" Vector__XXX - SG_ CAN_RX_RADAR_FOV_LR : 19|5@0+ (1,0) [0|31] "deg" Vector__XXX - SG_ CAN_RX_LONG_ACCEL_VALIDITY : 7|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_LONG_ACCEL : 12|9@0- (0.03125,0) [-8|7.96875] "m/s^2" Vector__XXX - SG_ CAN_RX_LAT_ACCEL_VALIDITY : 6|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_LAT_ACCEL : 5|9@0- (0.03125,0) [-8|7.96875] "m/s^2" Vector__XXX - SG_ CAN_RX_AUTO_ALIGN_DISABLE : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_AUTO_ALIGN_CONVERGED : 42|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_ANGLE_MOUNTING_OFFSET : 63|8@0- (0.0625,0) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_RX_AALIGN_AVG_CTR_TOTAL : 45|3@0+ (250,250) [250|2000] "" Vector__XXX - -BO_ 1512 CIPV_Targets_Etc: 8 ESR - -BO_ 1511 ESR_History_Fault: 8 ESR - -BO_ 1510 ESR_Active_Fault: 8 ESR - -BO_ 1508 AD_Data: 8 ESR - -BO_ 1489 SensorValidation2: 8 ESR - SG_ CAN_TX_VALID_MR_SN : 7|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_VALID_MR_RANGE_RATE : 31|16@0- (0.0078125,0) [-256|255.9921875] "m/s" Vector__XXX - SG_ CAN_TX_VALID_MR_RANGE : 15|16@0+ (0.0078125,0) [0|511.9921875] "m" Vector__XXX - SG_ CAN_TX_VALID_MR_POWER : 63|8@0- (1,0) [-128|127] "db" Vector__XXX - SG_ CAN_TX_VALID_MR_ANGLE : 40|16@1- (0.0625,0) [-2048|2047.9375] "deg" Vector__XXX - -BO_ 1488 SensorValidation: 8 ESR - SG_ CAN_TX_VALID_LR_SN : 7|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_VALID_LR_RANGE_RATE : 31|16@0- (0.0078125,0) [-256|255.9921875] "m/s" Vector__XXX - SG_ CAN_TX_VALID_LR_RANGE : 15|16@0+ (0.0078125,0) [0|511.9921875] "m" Vector__XXX - SG_ CAN_TX_VALID_LR_POWER : 63|8@0- (1,0) [-128|127] "db" Vector__XXX - SG_ CAN_TX_VALID_LR_ANGLE : 47|16@0- (0.0625,0) [-2048|2047.9375] "deg" Vector__XXX - -BO_ 1344 Track_Sensor: 1 ESR - SG_ CAN_TX_TRACK_ROLLING_COUNT_2 : 4|1@0+ (1,0) [0|1] "" Vector__XXX - -BO_ 1280 Target1: 8 ESR - SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX - SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX - SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX - SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX - SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX - SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX - SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX - -BO_ 1265 SensorInput: 8 Gateway - SG_ CAN_RX_USE_ANGLE_MISALIGNMENT : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_RX_SCAN_INDEX_ACK : 7|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_RX_LATERAL_MOUNTING_OFFSET : 47|8@0- (0.01563,0) [-2.00064|1.98501] "m" Vector__XXX - SG_ CAN_RX_WIPER_STATUS : 57|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_VOLVO_SHORT_TRACK_ROC : 31|4@0- (500,0) [-4000|3500] "m" Vector__XXX - SG_ CAN_RX_VEHICLE_SPEED_VALIDITY : 61|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_TURN_SIGNAL_STATUS : 63|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_RX_RAW_DATA_ENABLE : 56|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_RADAR_CMD_RADIATE : 55|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_MR_ONLY_TRANSMIT : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_RX_MMR_UPSIDE_DOWN : 60|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_MAXIMUM_TRACKS : 53|6@0+ (1,0) [0|63] "" Vector__XXX - SG_ CAN_RX_LR_ONLY_TRANSMIT : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_RX_HIGH_YAW_ANGLE : 21|6@0- (1,0) [-32|31] "deg" Vector__XXX - SG_ CAN_RX_GROUPING_MODE : 59|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_RX_CLEAR_FAULTS : 22|1@0- (1,0) [0|0] "" Vector__XXX - SG_ CAN_RX_BLOCKAGE_DISABLE : 54|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_ANGLE_MISALIGNMENT : 39|8@0- (0.0625,0) [-8|7.9375] "deg" Vector__XXX - -BO_ 1264 Vehicle_Data: 8 Gateway - SG_ CAN_RX_YAW_RATE_VALIDITY : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_RX_YAW_RATE : 11|12@0- (0.0625,0) [-128|127.9375] "deg/s" Vector__XXX - SG_ CAN_RX_VEHICLE_SPEED_DIRECTION : 12|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_VEHICLE_SPEED : 7|11@0+ (0.0625,0) [0|127.9375] "m/s" Vector__XXX - SG_ CAN_RX_RADIUS_CURVATURE : 29|14@0- (1,0) [-8192|8191] "m" Vector__XXX - SG_ CAN_RX_STEERING_VALIDITY : 47|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_STEERING_ANGLE_SIGN : 46|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_STEERING_ANGLE_RATE_SIGN : 30|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_RX_STEERING_ANGLE_RATE : 50|11@0+ (1,0) [0|2047] "deg/s" Vector__XXX - SG_ CAN_RX_STEERING_ANGLE : 45|11@0+ (1,0) [0|2047] "deg" Vector__XXX - -BO_ 1251 ESR_Output_InPath: 8 ESR - SG_ CAN_TX_PATH_ID_ACC_MOVE : 15|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_TRUCK_TARGET_DET : 7|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_SIDELOBE_BLOCKATE : 5|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_ROLLING_COUNT_3 : 1|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_PATH_ID_FCW_STAT : 47|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_PATH_ID_FCW_MOVE : 39|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_PATH_ID_CMBB_STAT : 31|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_PATH_ID_CMBB_MOVE : 23|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_PATH_ID_ACC_STAT : 63|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_PARTIAL_BLOCKAGE : 4|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_LR_ONLY_GRATING_LOBE_DET : 6|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_LMR_LR_MODE : 3|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_AUTO_ALIGN_ANGLE : 55|8@0- (0.0625,0) [-8|7.9375] "" Vector__XXX - -BO_ 1250 ESR_SW: 8 ESR - SG_ CAN_TX_SW_VERSION_PLD : 63|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_TX_SW_VERSION_HOST : 15|24@0+ (1,0) [0|16777215] "" Vector__XXX - SG_ CAN_TX_SERIAL_NUM : 39|24@0+ (1,0) [0|16777215] "" Vector__XXX - SG_ CAN_TX_INTERFACE_VERSION : 7|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_TX_HW_VERSION : 3|4@0+ (1,0) [0|15] "" Vector__XXX - -BO_ 1249 ESR_Status2: 8 ESR - SG_ CAN_TX_YAW_RATE_BIAS : 47|8@0- (0.125,0) [-16|15.875] "" Vector__XXX - SG_ CAN_TX_XCVR_OPERATIONAL : 12|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_VEH_SPD_COMP_FACTOR : 39|6@0- (0.00195,1) [0.9376|1.06045] "" Vector__XXX - SG_ CAN_TX_TEMPERATURE : 31|8@0- (1,0) [-128|127] "degC" Vector__XXX - SG_ CAN_TX_SW_VERSION_DSP : 55|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_TX_STEERING_ANGLE_ACK : 10|11@0+ (1,0) [0|2047] "deg" Vector__XXX - SG_ CAN_TX_ROLLING_COUNT_2 : 1|2@0+ (1,0) [0|3] "" Vector__XXX - SG_ CAN_TX_RAW_DATA_MODE : 11|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_RANGE_PERF_ERROR : 14|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_OVERHEAT_ERROR : 15|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_MAXIMUM_TRACKS_ACK : 7|6@0+ (1,1) [1|64] "" Vector__XXX - SG_ CAN_TX_INTERNAL_ERROR : 13|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_TX_GROUPING_MODE : 33|2@0+ (1,0) [0|3] "" Vector__XXX - -BO_ 1248 ESR_Status: 8 ESR - SG_ CAN_TX_COMM_ERROR : 14|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_TX_RADIUS_CURVATURE_CALC : 13|14@0- (1,0) [-8192|8191] "" Vector__XXX - SG_ CAN_TX_YAW_RATE_CALC : 47|12@0- (0.0625,0) [-128|127.9375] "deg/s" Vector__XXX - SG_ CAN_TX_VEHICLE_SPEED_CALC : 50|11@0+ (0.0625,0) [0|127.9375] "m/s" Vector__XXX - SG_ CAN_TX_DSP_TIMESTAMP : 5|7@0+ (2,0) [0|254] "ms" Vector__XXX - SG_ CAN_TX_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_TX_ROLLING_COUNT_1 : 6|2@1+ (1,0) [0|3] "" Vector__XXX - - - -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "BusType" "CAN"; -VAL_ 1264 CAN_RX_YAW_RATE_VALIDITY 1 "Valid" 0 "Invalid" ; -VAL_ 1264 CAN_RX_VEHICLE_SPEED_DIRECTION 1 "Reverse" 0 "Forward" ; -VAL_ 1264 CAN_RX_STEERING_VALIDITY 1 "True" 0 "False" ; -VAL_ 1264 CAN_RX_STEERING_ANGLE_SIGN 1 "Right Clockwise" 0 "Left CounterClockwise" ; -VAL_ 1264 CAN_RX_STEERING_ANGLE_RATE_SIGN 1 "Right Clockwise" 0 "Left CounterClockwise" ; - diff --git a/opendbc_repo/opendbc/dbc/FORD_CADS.dbc b/opendbc_repo/opendbc/dbc/FORD_CADS.dbc deleted file mode 100644 index 569739c9c5..0000000000 --- a/opendbc_repo/opendbc/dbc/FORD_CADS.dbc +++ /dev/null @@ -1,3544 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: -BU_: MRR -BO_ 1073741824 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX - SG_ New_Signal_943 : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_SENSOR_VANGLE_OFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_SENSOR_FOV_VER : 0|8@0+ (1,0) [0|255] "deg" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE_QF : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE_REF : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_MMIC_Temp4 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_MMIC_Temp3 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_MMIC_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_Processor_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_CHECKSUM : 0|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_COUNTER : 0|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_VEHICLE_MODE : 0|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_USC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_USC_CAL_VER_MINOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_SMC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_HW_VERSION : 0|32@0+ (1,0) [0|4.29497e+09] "" Vector__XXX - SG_ CAN_FAC_TGT_MTG_SPACE_VER : 0|8@0+ (1,-128) [-128|127] "cm" Vector__XXX - SG_ CAN_ANGLE_MISALIGNMENT_VER : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_ANGLE_MOUNTING_VOFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_LATCH_FAULTS : 0|64@0+ (1,0) [0|100] "" Vector__XXX - SG_ CAN_ACTIVE_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX - SG_ CAN_HISTORY_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX - SG_ CAN_SERV_ALIGN_ENABLE : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_LONG_MOUNTING_OFFSET : 0|8@0+ (0.015625,-2) [-2|1.98438] "" Vector__XXX - SG_ CAN_BEAMWIDTH_VERT : 0|7@0+ (0.125,0) [0|15.875] "deg" Vector__XXX - SG_ CAN_VEHICLE_SPEED_CALC_QF : 0|2@0+ (1,0) [0|3] "" Vector__XXX - -BO_ 34 Active_Fault_Latched_2: 8 MRR - SG_ IPMA_PCAN_DataRangeCheck : 4|1@1+ (1,0) [0|1] "" External_Tool - SG_ IPMA_PCAN_MissingMsg : 3|1@1+ (1,0) [0|1] "" External_Tool - SG_ VINSignalCompareFailure : 2|1@1+ (1,0) [0|1] "" External_Tool - SG_ ModuleNotConfiguredError : 1|1@1+ (1,0) [0|1] "" External_Tool - SG_ CarCfgNotConfiguredError : 0|1@1+ (1,0) [0|1] "" External_Tool - -BO_ 33 Active_Fault_Latched_1: 8 MRR - SG_ Active_Flt_Latched_byte7_bit7 : 63|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit6 : 62|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit5 : 61|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit4 : 60|1@1+ (1,0) [0|1] "" External_Tool - SG_ ARMtoDSPChksumFault : 59|1@1+ (1,0) [0|1] "" External_Tool - SG_ DSPtoArmChksumFault : 58|1@1+ (1,0) [0|1] "" External_Tool - SG_ HostToArmChksumFault : 57|1@1+ (1,0) [0|1] "" External_Tool - SG_ ARMtoHostChksumFault : 56|1@1+ (1,0) [0|1] "" External_Tool - SG_ LoopBWOutOfRange : 55|1@1+ (1,0) [0|1] "" External_Tool - SG_ DSPOverrunFault : 54|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte6_bit5 : 53|1@1+ (1,0) [0|1] "" External_Tool - SG_ TuningSensitivityFault : 52|1@1+ (1,0) [0|1] "" External_Tool - SG_ SaturatedTuningFreqFault : 51|1@1+ (1,0) [0|1] "" External_Tool - SG_ LocalOscPowerFault : 50|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterPowerFault : 49|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte6_bit0 : 48|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit7 : 47|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit6 : 46|1@1+ (1,0) [0|1] "" External_Tool - SG_ XCVRDeviceSPIFault : 45|1@1+ (1,0) [0|1] "" External_Tool - SG_ FreqSynthesizerSPIFault : 44|1@1+ (1,0) [0|1] "" External_Tool - SG_ AnalogConverterDevicSPIFault : 43|1@1+ (1,0) [0|1] "" External_Tool - SG_ SidelobeBlockage : 42|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit1 : 41|1@1+ (1,0) [0|1] "" External_Tool - SG_ MNRBlocked : 40|1@1+ (1,0) [0|1] "" External_Tool - SG_ ECUTempHighFault : 39|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterTempHighFault : 38|1@1+ (1,0) [0|1] "" External_Tool - SG_ AlignmentRoutineFailedFault : 37|1@1+ (1,0) [0|1] "" External_Tool - SG_ UnreasonableRadarData : 36|1@1+ (1,0) [0|1] "" External_Tool - SG_ MicroprocessorTempHighFault : 35|1@1+ (1,0) [0|1] "" External_Tool - SG_ VerticalAlignmentOutOfRange : 34|1@1+ (1,0) [0|1] "" External_Tool - SG_ HorizontalAlignmentOutOfRange : 33|1@1+ (1,0) [0|1] "" External_Tool - SG_ FactoryAlignmentMode : 32|1@1+ (1,0) [0|1] "" External_Tool - SG_ BatteryLowFault : 31|1@1+ (1,0) [0|1] "" External_Tool - SG_ BatteryHighFault : 30|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_1p25SupplyOutOfRange : 29|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte3_bit4 : 28|1@1+ (1,0) [0|1] "" External_Tool - SG_ ThermistorOutOfRange : 27|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_3p3DACSupplyOutOfRange : 26|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_3p3RAWSupplyOutOfRange : 25|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_5_SupplyOutOfRange : 24|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterIDFault : 23|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit6 : 22|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit5 : 21|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit4 : 20|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit3 : 19|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit2 : 18|1@1+ (1,0) [0|1] "" External_Tool - SG_ PCANMissingMsgFault : 17|1@1+ (1,0) [0|1] "" External_Tool - SG_ PCANBusOff : 16|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit7 : 15|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit6 : 14|1@1+ (1,0) [0|1] "" External_Tool - SG_ InstructionSetCheckFault : 13|1@1+ (1,0) [0|1] "" External_Tool - SG_ StackOverflowFault : 12|1@1+ (1,0) [0|1] "" External_Tool - SG_ WatchdogFault : 11|1@1+ (1,0) [0|1] "" External_Tool - SG_ PLLLockFault : 10|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit1 : 9|1@1+ (1,0) [0|1] "" External_Tool - SG_ RAMMemoryTestFault : 8|1@1+ (1,0) [0|1] "" External_Tool - SG_ USCValidationFault : 7|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit6 : 6|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit5 : 5|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit4 : 4|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit3 : 3|1@1+ (1,0) [0|1] "" External_Tool - SG_ KeepAliveChecksumFault : 2|1@1+ (1,0) [0|1] "" External_Tool - SG_ ProgramCalibrationFlashChecksum : 1|1@1+ (1,0) [0|1] "" External_Tool - SG_ ApplicationFlashChecksumFault : 0|1@1+ (1,0) [0|1] "" External_Tool - -BO_ 500 XCP_MRR_DAQ_RESP: 8 MRR - SG_ MRR_xcp_daq_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 499 XCP_MRR_DTO_RESP: 8 MRR - SG_ MRR_xcp_dto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 497 XCP_MRR_CTO_RESP: 8 MRR - SG_ MRR_xcp_cto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 1900 Ford_Diag_Resp_Phys: 8 MRR - SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467e+19] "" IFV_Host - -BO_ 261 MRR_Status_SerialNumber: 8 MRR - SG_ CAN_SEQUENCE_NUMBER : 55|16@0+ (1,0) [0|65535] "" External_Tool - SG_ CAN_SERIAL_NUMBER : 7|40@0+ (1,0) [0|1.09951e+12] "" External_Tool - -BO_ 264 MRR_Status_SwVersion: 8 MRR - SG_ CAN_PBL_Field_Revision : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_PBL_Promote_Revision : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Field_Revision : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Promote_Revision : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Release_Revision : 7|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_PBL_Release_Revision : 31|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 373 MRR_Header_SensorPosition: 8 MRR - SG_ CAN_SENSOR_POLARITY : 55|1@0+ (1,0) [0|1] "" External_Tool - SG_ CAN_SENSOR_LAT_OFFSET : 39|16@0+ (0.01,0) [0|655.35] "cm" External_Tool - SG_ CAN_SENSOR_LONG_OFFSET : 23|16@0+ (0.01,0) [0|655.35] "cm" External_Tool - SG_ CAN_SENSOR_HANGLE_OFFSET : 7|8@0+ (0.0625,-8) [-8|7.9375] "deg" External_Tool - -BO_ 372 MRR_Header_SensorCoverage: 8 MRR - SG_ CAN_SENSOR_FOV_HOR : 39|8@0+ (1,0) [0|255] "deg" IFV_VFP - SG_ CAN_DOPPLER_COVERAGE : 23|8@0+ (1,-128) [-128|127] "m/s" IFV_VFP - SG_ CAN_RANGE_COVERAGE : 7|8@0+ (1,0) [0|255] "m" IFV_VFP - -BO_ 371 MRR_Header_AlignmentState: 8 MRR - SG_ CAN_AUTO_ALIGN_HANGLE_QF : 13|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_ALIGNMENT_STATUS : 51|4@0+ (1,0) [0|11] "" IFV_VFP - SG_ CAN_ALIGNMENT_STATE : 55|3@0+ (1,0) [0|7] "" IFV_VFP - SG_ CAN_AUTO_ALIGN_HANGLE_REF : 11|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP - SG_ CAN_AUTO_ALIGN_HANGLE : 7|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP - -BO_ 369 MRR_Header_Timestamps: 8 MRR - SG_ CAN_DET_TIME_SINCE_MEAS : 39|11@0+ (0.1,0) [0|204.7] "ms" IFV_Host - SG_ CAN_SENSOR_TIME_STAMP : 7|32@0+ (0.1,0) [0|4.29497e+08] "ms" IFV_VFP - -BO_ 368 MRR_Header_InformationDetections: 8 MRR - SG_ CAN_ALIGN_UPDATES_DONE : 55|16@0+ (1,0) [0|65535] "" IFV_VFP - SG_ CAN_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" IFV_VFP - SG_ CAN_NUMBER_OF_DET : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_LOOK_ID : 23|2@0+ (1,0) [0|3] "" External_Tool - SG_ CAN_LOOK_INDEX : 7|16@0+ (1,0) [0|65535] "" External_Tool - -BO_ 265 MRR_Status_Temp_Volt: 8 MRR - SG_ CAN_BATT_VOLTS : 63|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_1_25_V : 55|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_5_V : 47|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_3_3_V_RAW : 31|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_3_3_V_DAC : 15|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_MMIC_Temp1 : 39|8@0+ (1,-50) [-50|205] "C" External_Tool - SG_ CAN_Processor_Thermistor : 23|8@0+ (1,-50) [-50|205] "C" External_Tool - SG_ CAN_Processor_Temp1 : 7|8@0+ (1,-50) [-50|205] "C" External_Tool - -BO_ 291 MRR_Detection_004: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_04 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 351 MRR_Detection_064: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_64 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_64 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_64 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_64 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_64 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_64 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_64 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_64 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_64 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_64 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 350 MRR_Detection_063: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_63 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_63 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_63 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_63 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_63 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_63 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_63 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_63 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_63 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_63 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 349 MRR_Detection_062: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_62 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_62 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_62 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_62 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_62 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_62 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_62 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_62 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_62 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_62 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 348 MRR_Detection_061: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_61 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_61 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_61 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_61 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_61 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_61 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_61 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_61 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_61 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_61 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 347 MRR_Detection_060: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_60 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_60 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_60 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_60 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_60 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_60 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_60 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_60 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_60 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_60 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 346 MRR_Detection_059: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_59 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_59 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_59 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_59 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_59 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_59 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_59 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_59 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_59 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_59 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 345 MRR_Detection_058: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_58 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_58 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_58 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_58 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_58 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_58 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_58 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_58 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_58 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_58 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 344 MRR_Detection_057: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_57 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_57 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_57 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_57 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_57 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_57 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_57 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_57 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_57 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_57 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 343 MRR_Detection_056: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_56 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_56 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_56 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_56 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_56 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_56 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_56 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_56 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_56 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_56 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 342 MRR_Detection_055: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_55 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_55 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_55 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_55 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_55 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_55 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_55 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_55 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_55 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_55 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 335 MRR_Detection_048: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_48 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_48 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_48 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_48 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_48 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_48 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_48 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_48 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_48 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_48 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 334 MRR_Detection_047: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_47 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_47 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_47 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_47 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_47 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_47 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_47 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_47 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_47 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_47 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 333 MRR_Detection_046: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_46 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_46 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_46 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_46 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_46 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_46 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_46 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_46 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_46 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_46 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 332 MRR_Detection_045: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_45 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_45 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_45 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_45 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_45 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_45 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_45 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_45 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_45 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_45 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 331 MRR_Detection_044: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_44 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_44 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_44 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_44 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_44 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_44 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_44 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_44 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_44 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_44 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 330 MRR_Detection_043: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_43 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_43 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_43 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_43 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_43 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_43 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_43 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_43 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_43 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_43 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 329 MRR_Detection_042: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_42 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_42 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_42 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_42 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_42 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_42 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_42 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_42 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_42 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_42 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 328 MRR_Detection_041: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_41 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_41 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_41 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_41 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_41 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_41 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_41 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_41 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_41 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_41 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 327 MRR_Detection_040: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_40 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_40 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_40 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_40 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_40 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_40 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_40 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_40 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_40 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_40 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 325 MRR_Detection_038: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_38 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_38 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_38 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_38 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_38 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_38 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_38 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_38 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_38 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_38 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 324 MRR_Detection_037: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_37 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_37 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_37 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_37 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_37 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_37 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_37 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_37 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_37 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_37 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 323 MRR_Detection_036: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_36 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_36 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_36 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_36 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_36 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_36 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_36 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_36 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_36 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_36 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 322 MRR_Detection_035: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_35 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_35 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_35 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_35 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_35 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_35 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_35 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_35 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_35 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_35 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 321 MRR_Detection_034: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_34 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_34 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_34 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_34 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_34 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_34 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_34 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_34 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_34 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_34 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 320 MRR_Detection_033: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_33 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_33 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_33 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_33 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_33 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_33 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_33 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_33 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_33 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_33 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 319 MRR_Detection_032: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_32 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_32 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_32 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_32 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_32 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_32 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_32 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_32 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_32 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_32 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 318 MRR_Detection_031: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_31 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_31 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_31 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_31 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_31 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_31 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_31 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_31 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_31 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_31 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 317 MRR_Detection_030: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_30 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_30 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_30 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_30 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_30 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_30 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_30 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_30 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_30 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_30 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 316 MRR_Detection_029: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_29 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_29 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_29 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_29 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_29 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_29 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_29 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_29 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_29 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_29 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 314 MRR_Detection_027: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_27 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_27 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_27 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_27 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_27 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_27 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_27 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_27 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_27 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_27 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 313 MRR_Detection_026: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_26 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_26 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_26 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_26 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_26 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_26 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_26 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_26 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_26 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_26 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 312 MRR_Detection_025: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_25 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_25 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_25 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_25 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_25 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_25 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_25 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_25 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_25 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_25 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 311 MRR_Detection_024: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_24 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_24 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_24 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_24 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_24 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_24 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_24 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_24 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_24 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_24 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 310 MRR_Detection_023: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_23 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_23 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_23 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_23 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_23 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_23 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_23 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_23 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_23 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_23 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 309 MRR_Detection_022: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_22 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_22 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_22 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_22 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_22 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_22 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_22 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_22 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_22 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_22 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 308 MRR_Detection_021: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_21 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 307 MRR_Detection_020: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_20 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 306 MRR_Detection_019: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_19 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 305 MRR_Detection_018: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_18 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 341 MRR_Detection_054: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_54 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_54 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_54 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_54 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_54 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_54 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_54 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_54 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_54 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_54 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 340 MRR_Detection_053: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_53 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_53 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_53 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_53 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_53 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_53 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_53 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_53 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_53 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_53 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 339 MRR_Detection_052: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_52 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_52 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_52 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_52 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_52 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_52 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_52 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_52 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_52 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_52 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 338 MRR_Detection_051: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_51 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_51 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_51 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_51 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_51 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_51 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_51 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_51 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_51 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_51 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 337 MRR_Detection_050: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_50 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_50 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_50 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_50 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_50 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_50 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_50 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_50 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_50 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_50 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 336 MRR_Detection_049: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_49 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_49 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_49 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_49 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_49 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_49 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_49 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_49 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_49 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_49 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 326 MRR_Detection_039: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_39 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_39 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_39 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_39 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_39 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_39 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_39 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_39 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_39 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_39 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 315 MRR_Detection_028: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_28 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_28 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_28 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_28 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_28 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_28 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_28 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_28 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_28 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_28 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 304 MRR_Detection_017: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_17 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 303 MRR_Detection_016: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_16 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 302 MRR_Detection_015: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_15 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 301 MRR_Detection_014: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_14 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 300 MRR_Detection_013: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_13 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 299 MRR_Detection_012: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_12 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 298 MRR_Detection_011: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_11 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 297 MRR_Detection_010: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_10 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 296 MRR_Detection_009: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_09 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 295 MRR_Detection_008: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_08 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 294 MRR_Detection_007: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_07 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 293 MRR_Detection_006: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_06 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 292 MRR_Detection_005: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_05 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 290 MRR_Detection_003: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_03 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 289 MRR_Detection_002: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_02 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 256 MRR_Status_CANVersion: 8 MRR - SG_ CAN_USC_SECTION_COMPATIBILITY : 23|16@0+ (1,0) [0|65535] "" External_Tool - SG_ CAN_PCAN_MINOR_MRR : 7|8@0+ (1,0) [0|255] "" IFV_VFP - SG_ CAN_PCAN_MAJOR_MRR : 15|8@0+ (1,0) [0|255] "" IFV_VFP - -BO_ 257 MRR_Status_Radar: 8 MRR - SG_ CAN_INTERFERENCE_TYPE : 11|2@0+ (1,0) [0|3] "" IFV_Host - SG_ CAN_RECOMMEND_UNCONVERGE : 9|1@0+ (1,0) [0|1] "" IFV_Host - SG_ CAN_BLOCKAGE_SIDELOBE_FILTER_VAL : 15|4@0+ (1,0) [0|15] "" IFV_Host - SG_ CAN_RADAR_ALIGN_INCOMPLETE : 8|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_BLOCKAGE_SIDELOBE : 4|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_BLOCKAGE_MNR : 5|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_EXT_COND_NOK : 1|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_ALIGN_OUT_RANGE : 2|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_ALIGN_NOT_START : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_OVERHEAT_ERROR : 3|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_NOT_OP : 6|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_XCVR_OPERATIONAL : 7|1@0+ (1,0) [0|1] "" IFV_VFP - -BO_ 288 MRR_Detection_001: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; -BA_DEF_ SG_ "CrossOver_LIN" ENUM "No","Yes","No","Yes"; -BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes","No","Yes","No","Yes"; -BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ SG_ "GenSigTimeoutTime_RCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_OCS" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_CCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_IPMA" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_SCCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_Generic_BCM" INT 0 100000; -BA_DEF_ BO_ "NmMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "TpTxIndex" INT 0 255; -BA_DEF_ BO_ "DiagState" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "TpApplType" STRING ; -BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "Mulitplexer" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; -BA_DEF_ BO_ "GenMsgHandlingTypeDoc" STRING ; -BA_DEF_ BO_ "GenMsgHandlingTypeCode" STRING ; -BA_DEF_ BO_ "GenMsgMarked" STRING ; -BA_DEF_ SG_ "GenSigMarked" STRING ; -BA_DEF_ SG_ "GenSigVtIndex" STRING ; -BA_DEF_ SG_ "GenSigVtName" STRING ; -BA_DEF_ SG_ "GenSigVtEn" STRING ; -BA_DEF_ SG_ "GenSigSNA" STRING ; -BA_DEF_ SG_ "GenSigCmt" STRING ; -BA_DEF_ BO_ "GenMsgCmt" STRING ; -BA_DEF_ SG_ "GenSigSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; -BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; -BA_DEF_ SG_ "GenSigMissingSourceValue" INT 0 1e+09; -BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes"; -BA_DEF_ SG_ "GenSigStartValue" INT 0 1e+09; -BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes"; -BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "GenMsgSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; -BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; -BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; -BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; -BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; -BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; -BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes"; -BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes"; -BA_DEF_ BU_ "ILUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BU_ "PowerType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes","Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; -BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; -BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; -BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; -BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; -BA_ "GenMsgCycleTime" BO_ 34 1000; -BA_ "GenMsgSendType" BO_ 34 0; -BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; -BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; -BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; -BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; -BA_ "GenSigVtEn" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; -BA_ "GenSigVtName" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; -BA_ "GenSigVtEn" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; -BA_ "GenSigVtName" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; -BA_ "GenSigVtEn" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; -BA_ "GenSigVtName" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; -BA_ "GenMsgCycleTime" BO_ 33 1000; -BA_ "GenMsgSendType" BO_ 33 0; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; -BA_ "GenSigVtEn" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; -BA_ "GenSigVtName" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; -BA_ "GenSigVtEn" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; -BA_ "GenSigVtName" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; -BA_ "GenSigVtEn" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; -BA_ "GenSigVtName" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; -BA_ "GenSigVtEn" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; -BA_ "GenSigVtName" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; -BA_ "GenSigVtEn" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; -BA_ "GenSigVtName" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 DSPOverrunFault "DSPOverrunFault"; -BA_ "GenSigVtName" SG_ 33 DSPOverrunFault "DSPOverrunFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; -BA_ "GenSigVtEn" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; -BA_ "GenSigVtName" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; -BA_ "GenSigVtEn" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; -BA_ "GenSigVtName" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; -BA_ "GenSigVtEn" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; -BA_ "GenSigVtName" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; -BA_ "GenSigVtEn" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; -BA_ "GenSigVtEn" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; -BA_ "GenSigVtName" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; -BA_ "GenSigVtEn" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; -BA_ "GenSigVtName" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; -BA_ "GenSigVtEn" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; -BA_ "GenSigVtName" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; -BA_ "GenSigVtEn" SG_ 33 SidelobeBlockage "SidelobeBlockage"; -BA_ "GenSigVtName" SG_ 33 SidelobeBlockage "SidelobeBlockage"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; -BA_ "GenSigVtEn" SG_ 33 MNRBlocked "MNRBlocked"; -BA_ "GenSigVtName" SG_ 33 MNRBlocked "MNRBlocked"; -BA_ "GenSigVtEn" SG_ 33 ECUTempHighFault "ECUTempHighFault"; -BA_ "GenSigVtName" SG_ 33 ECUTempHighFault "ECUTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; -BA_ "GenSigVtName" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; -BA_ "GenSigVtEn" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; -BA_ "GenSigVtName" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; -BA_ "GenSigVtEn" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; -BA_ "GenSigVtName" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; -BA_ "GenSigVtName" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; -BA_ "GenSigVtName" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; -BA_ "GenSigVtName" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; -BA_ "GenSigVtEn" SG_ 33 BatteryLowFault "BatteryLowFault"; -BA_ "GenSigVtName" SG_ 33 BatteryLowFault "BatteryLowFault"; -BA_ "GenSigVtEn" SG_ 33 BatteryHighFault "BatteryHighFault"; -BA_ "GenSigVtName" SG_ 33 BatteryHighFault "BatteryHighFault"; -BA_ "GenSigVtEn" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; -BA_ "GenSigVtEn" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; -BA_ "GenSigVtName" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 TransmitterIDFault "TransmitterIDFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterIDFault "TransmitterIDFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; -BA_ "GenSigVtEn" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; -BA_ "GenSigVtName" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; -BA_ "GenSigVtEn" SG_ 33 PCANBusOff "PCANBusOff"; -BA_ "GenSigVtName" SG_ 33 PCANBusOff "PCANBusOff"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; -BA_ "GenSigVtEn" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; -BA_ "GenSigVtName" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; -BA_ "GenSigVtEn" SG_ 33 StackOverflowFault "StackOverflowFault"; -BA_ "GenSigVtName" SG_ 33 StackOverflowFault "StackOverflowFault"; -BA_ "GenSigVtEn" SG_ 33 WatchdogFault "WatchdogFault"; -BA_ "GenSigVtName" SG_ 33 WatchdogFault "WatchdogFault"; -BA_ "GenSigVtEn" SG_ 33 PLLLockFault "PLLLockFault"; -BA_ "GenSigVtName" SG_ 33 PLLLockFault "PLLLockFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; -BA_ "GenSigVtEn" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; -BA_ "GenSigVtName" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; -BA_ "GenSigVtName" SG_ 33 USCValidationFault "USCValidationFault"; -BA_ "GenSigVtEn" SG_ 33 USCValidationFault "USCValidationFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; -BA_ "GenSigVtEn" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; -BA_ "GenSigVtName" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; -BA_ "GenSigVtEn" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; -BA_ "GenSigVtName" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; -BA_ "GenSigVtEn" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; -BA_ "GenSigVtName" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; -BA_ "GenMsgNrOfRepetition" BO_ 500 0; -BA_ "GenMsgSendType" BO_ 500 1; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte7 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte7 "MRR_xcp_daq_resp_byte7"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte6 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte6 "MRR_xcp_daq_resp_byte6"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte5 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte5 "MRR_xcp_daq_resp_byte5"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte4 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte4 "MRR_xcp_daq_resp_byte4"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte3 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte3 "MRR_xcp_daq_resp_byte3"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte2 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte2 "MRR_xcp_daq_resp_byte2"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte1 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte1 "MRR_xcp_daq_resp_byte1"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte0 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte0 "MRR_xcp_daq_resp_byte0"; -BA_ "GenMsgNrOfRepetition" BO_ 499 0; -BA_ "GenMsgSendType" BO_ 499 1; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte7 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte7 "MRR_xcp_dto_resp_byte7"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte6 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte6 "MRR_xcp_dto_resp_byte6"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte5 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte5 "MRR_xcp_dto_resp_byte5"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte4 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte4 "MRR_xcp_dto_resp_byte4"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte3 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte3 "MRR_xcp_dto_resp_byte3"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte2 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte2 "MRR_xcp_dto_resp_byte2"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte1 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte1 "MRR_xcp_dto_resp_byte1"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte0 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte0 "MRR_xcp_dto_resp_byte0"; -BA_ "GenMsgNrOfRepetition" BO_ 497 0; -BA_ "GenMsgSendType" BO_ 497 1; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte7 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte7 "MRR_xcp_cto_resp_byte7"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte6 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte6 "MRR_xcp_cto_resp_byte6"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte5 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte5 "MRR_xcp_cto_resp_byte5"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte4 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte4 "MRR_xcp_cto_resp_byte4"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte3 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte3 "MRR_xcp_cto_resp_byte3"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte2 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte2 "MRR_xcp_cto_resp_byte2"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte1 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte1 "MRR_xcp_cto_resp_byte1"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte0 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte0 "MRR_xcp_cto_resp_byte0"; -BA_ "GenMsgSendType" BO_ 1900 1; -BA_ "GenMsgNrOfRepetition" BO_ 1900 0; -BA_ "DiagResponse" BO_ 1900 1; -BA_ "GenSigCmt" SG_ 1900 TesterPhysicalResCCM "TesterPhysicalResCCM"; -BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 0; -BA_ "GenMsgSendType" BO_ 261 0; -BA_ "GenMsgCycleTime" BO_ 261 1000; -BA_ "GenMsgNrOfRepetition" BO_ 261 0; -BA_ "GenSigCmt" SG_ 261 CAN_SEQUENCE_NUMBER "CAN_SEQUENCE_NUMBER"; -BA_ "GenSigCmt" SG_ 261 CAN_SERIAL_NUMBER "CAN_SERIAL_NUMBER"; -BA_ "GenSigSendType" SG_ 261 CAN_SERIAL_NUMBER 0; -BA_ "GenMsgSendType" BO_ 264 1; -BA_ "GenMsgNrOfRepetition" BO_ 264 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Field_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Promote_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Field_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Promote_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Release_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Release_Revision 0; -BA_ "GenMsgSendType" BO_ 373 1; -BA_ "NetworkInitialization" BO_ 373 0; -BA_ "GenMsgNrOfRepetition" BO_ 373 0; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_POLARITY 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_POLARITY "CAN_SENSOR_POLARITY"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LAT_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LAT_OFFSET "CAN_SENSOR_LAT_OFFSET"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LONG_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LONG_OFFSET "CAN_SENSOR_LONG_OFFSET"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_HANGLE_OFFSET "CAN_SENSOR_HANGLE_OFFSET"; -BA_ "GenSigStartValue" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; -BA_ "GenMsgSendType" BO_ 372 1; -BA_ "NetworkInitialization" BO_ 372 0; -BA_ "GenMsgNrOfRepetition" BO_ 372 0; -BA_ "GenSigSendType" SG_ 372 CAN_SENSOR_FOV_HOR 0; -BA_ "GenSigCmt" SG_ 372 CAN_SENSOR_FOV_HOR "CAN_SENSOR_FOV_HOR"; -BA_ "GenSigStartValue" SG_ 372 CAN_SENSOR_FOV_HOR 0; -BA_ "GenSigSendType" SG_ 372 CAN_DOPPLER_COVERAGE 0; -BA_ "GenSigCmt" SG_ 372 CAN_DOPPLER_COVERAGE "CAN_DOPPLER_COVERAGE"; -BA_ "GenSigStartValue" SG_ 372 CAN_DOPPLER_COVERAGE 0; -BA_ "GenSigSendType" SG_ 372 CAN_RANGE_COVERAGE 0; -BA_ "GenSigCmt" SG_ 372 CAN_RANGE_COVERAGE "CAN_RANGE_COVERAGE"; -BA_ "GenMsgSendType" BO_ 371 1; -BA_ "NetworkInitialization" BO_ 371 0; -BA_ "GenMsgNrOfRepetition" BO_ 371 0; -BA_ "GenSigVtEn" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigVtName" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATUS 0; -BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATE 0; -BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; -BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF "CAN_AUTO_ALIGN_HANGLE_REF"; -BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE "CAN_AUTO_ALIGN_HANGLE"; -BA_ "GenMsgSendType" BO_ 369 1; -BA_ "NetworkInitialization" BO_ 369 0; -BA_ "GenMsgNrOfRepetition" BO_ 369 0; -BA_ "GenSigCmt" SG_ 369 CAN_DET_TIME_SINCE_MEAS "CAN_DET_TIME_SINCE_MEAS"; -BA_ "GenSigSendType" SG_ 369 CAN_DET_TIME_SINCE_MEAS 0; -BA_ "GenSigSendType" SG_ 369 CAN_SENSOR_TIME_STAMP 0; -BA_ "GenSigCmt" SG_ 369 CAN_SENSOR_TIME_STAMP "CAN_SENSOR_TIME_STAMP"; -BA_ "GenMsgSendType" BO_ 368 1; -BA_ "NetworkInitialization" BO_ 368 0; -BA_ "GenMsgNrOfRepetition" BO_ 368 0; -BA_ "GenSigSendType" SG_ 368 CAN_ALIGN_UPDATES_DONE 0; -BA_ "GenSigCmt" SG_ 368 CAN_ALIGN_UPDATES_DONE "CAN_ALIGN_UPDATES_DONE"; -BA_ "GenSigSendType" SG_ 368 CAN_SCAN_INDEX 0; -BA_ "GenSigCmt" SG_ 368 CAN_SCAN_INDEX "CAN_SCAN_INDEX"; -BA_ "GenSigSendType" SG_ 368 CAN_NUMBER_OF_DET 0; -BA_ "GenSigCmt" SG_ 368 CAN_NUMBER_OF_DET "CAN_NUMBER_OF_DET"; -BA_ "GenSigSendType" SG_ 368 CAN_LOOK_ID 0; -BA_ "GenSigCmt" SG_ 368 CAN_LOOK_ID "CAN_LOOK_ID"; -BA_ "GenSigSendType" SG_ 368 CAN_LOOK_INDEX 0; -BA_ "GenSigCmt" SG_ 368 CAN_LOOK_INDEX "CAN_LOOK_INDEX"; -BA_ "GenMsgSendType" BO_ 265 1; -BA_ "NetworkInitialization" BO_ 265 0; -BA_ "GenMsgNrOfRepetition" BO_ 265 0; -BA_ "GenSigCmt" SG_ 265 CAN_BATT_VOLTS "CAN_BATT_VOLTS"; -BA_ "GenSigCmt" SG_ 265 CAN_1_25_V "CAN_1_25_V"; -BA_ "GenSigCmt" SG_ 265 CAN_5_V "CAN_5_V"; -BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_RAW "CAN_3_3_V_RAW"; -BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_DAC "CAN_3_3_V_DAC"; -BA_ "GenSigSendType" SG_ 265 CAN_MMIC_Temp1 0; -BA_ "GenSigCmt" SG_ 265 CAN_MMIC_Temp1 "CAN_MMIC_Temp1"; -BA_ "GenSigStartValue" SG_ 265 CAN_MMIC_Temp1 0; -BA_ "GenSigSendType" SG_ 265 CAN_Processor_Thermistor 0; -BA_ "GenSigCmt" SG_ 265 CAN_Processor_Thermistor "CAN_Processor_Thermistor"; -BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Thermistor 0; -BA_ "GenSigSendType" SG_ 265 CAN_Processor_Temp1 0; -BA_ "GenSigCmt" SG_ 265 CAN_Processor_Temp1 "CAN_Processor_Temp1"; -BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Temp1 0; -BA_ "GenMsgSendType" BO_ 291 1; -BA_ "GenMsgILSupport" BO_ 291 1; -BA_ "GenMsgNrOfRepetition" BO_ 291 0; -BA_ "GenMsgCycleTime" BO_ 291 0; -BA_ "NetworkInitialization" BO_ 291 0; -BA_ "GenMsgDelayTime" BO_ 291 0; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 "CAN_DET_CONFID_AZIMUTH_04"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 "CAN_DET_CONFID_AZIMUTH_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 "CAN_DET_CONFID_AZIMUTH_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04 "CAN_DET_SUPER_RES_TARGET_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04 "CAN_DET_ND_TARGET_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04 "CAN_DET_HOST_VEH_CLUTTER_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04 "CAN_DET_VALID_LEVEL_04"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04 "CAN_DET_AZIMUTH_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04 "CAN_DET_RANGE_04"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04 "CAN_DET_RANGE_RATE_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04 "CAN_DET_AMPLITUDE_04"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04 "CAN_SCAN_INDEX_2LSB_04"; -BA_ "GenMsgSendType" BO_ 351 1; -BA_ "GenMsgILSupport" BO_ 351 1; -BA_ "GenMsgNrOfRepetition" BO_ 351 0; -BA_ "GenMsgCycleTime" BO_ 351 0; -BA_ "NetworkInitialization" BO_ 351 0; -BA_ "GenMsgDelayTime" BO_ 351 0; -BA_ "GenSigVtEn" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigVtName" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 "CAN_DET_SUPER_RES_TARGET_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_ND_TARGET_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_ND_TARGET_64 "CAN_DET_ND_TARGET_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 "CAN_DET_HOST_VEH_CLUTTER_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_VALID_LEVEL_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_VALID_LEVEL_64 "CAN_DET_VALID_LEVEL_64"; -BA_ "GenSigStartValue" SG_ 351 CAN_DET_AZIMUTH_64 0; -BA_ "GenSigSendType" SG_ 351 CAN_DET_AZIMUTH_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_AZIMUTH_64 "CAN_DET_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_64 "CAN_DET_RANGE_64"; -BA_ "GenSigStartValue" SG_ 351 CAN_DET_RANGE_RATE_64 0; -BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_RATE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_RATE_64 "CAN_DET_RANGE_RATE_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_AMPLITUDE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_AMPLITUDE_64 "CAN_DET_AMPLITUDE_64"; -BA_ "GenSigSendType" SG_ 351 CAN_SCAN_INDEX_2LSB_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_SCAN_INDEX_2LSB_64 "CAN_SCAN_INDEX_2LSB_64"; -BA_ "GenMsgSendType" BO_ 350 1; -BA_ "GenMsgILSupport" BO_ 350 1; -BA_ "GenMsgNrOfRepetition" BO_ 350 0; -BA_ "GenMsgCycleTime" BO_ 350 0; -BA_ "NetworkInitialization" BO_ 350 0; -BA_ "GenMsgDelayTime" BO_ 350 0; -BA_ "GenSigVtEn" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigVtName" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 "CAN_DET_SUPER_RES_TARGET_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_ND_TARGET_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_ND_TARGET_63 "CAN_DET_ND_TARGET_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 "CAN_DET_HOST_VEH_CLUTTER_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_VALID_LEVEL_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_VALID_LEVEL_63 "CAN_DET_VALID_LEVEL_63"; -BA_ "GenSigStartValue" SG_ 350 CAN_DET_AZIMUTH_63 0; -BA_ "GenSigSendType" SG_ 350 CAN_DET_AZIMUTH_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_AZIMUTH_63 "CAN_DET_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_63 "CAN_DET_RANGE_63"; -BA_ "GenSigStartValue" SG_ 350 CAN_DET_RANGE_RATE_63 0; -BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_RATE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_RATE_63 "CAN_DET_RANGE_RATE_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_AMPLITUDE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_AMPLITUDE_63 "CAN_DET_AMPLITUDE_63"; -BA_ "GenSigSendType" SG_ 350 CAN_SCAN_INDEX_2LSB_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_SCAN_INDEX_2LSB_63 "CAN_SCAN_INDEX_2LSB_63"; -BA_ "GenMsgSendType" BO_ 349 1; -BA_ "GenMsgILSupport" BO_ 349 1; -BA_ "GenMsgNrOfRepetition" BO_ 349 0; -BA_ "GenMsgCycleTime" BO_ 349 0; -BA_ "NetworkInitialization" BO_ 349 0; -BA_ "GenMsgDelayTime" BO_ 349 0; -BA_ "GenSigVtEn" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigVtName" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 "CAN_DET_SUPER_RES_TARGET_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_ND_TARGET_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_ND_TARGET_62 "CAN_DET_ND_TARGET_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 "CAN_DET_HOST_VEH_CLUTTER_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_VALID_LEVEL_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_VALID_LEVEL_62 "CAN_DET_VALID_LEVEL_62"; -BA_ "GenSigStartValue" SG_ 349 CAN_DET_AZIMUTH_62 0; -BA_ "GenSigSendType" SG_ 349 CAN_DET_AZIMUTH_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_AZIMUTH_62 "CAN_DET_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_62 "CAN_DET_RANGE_62"; -BA_ "GenSigStartValue" SG_ 349 CAN_DET_RANGE_RATE_62 0; -BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_RATE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_RATE_62 "CAN_DET_RANGE_RATE_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_AMPLITUDE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_AMPLITUDE_62 "CAN_DET_AMPLITUDE_62"; -BA_ "GenSigSendType" SG_ 349 CAN_SCAN_INDEX_2LSB_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_SCAN_INDEX_2LSB_62 "CAN_SCAN_INDEX_2LSB_62"; -BA_ "GenMsgSendType" BO_ 348 1; -BA_ "GenMsgILSupport" BO_ 348 1; -BA_ "GenMsgNrOfRepetition" BO_ 348 0; -BA_ "GenMsgCycleTime" BO_ 348 0; -BA_ "NetworkInitialization" BO_ 348 0; -BA_ "GenMsgDelayTime" BO_ 348 0; -BA_ "GenSigVtEn" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigVtName" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 "CAN_DET_SUPER_RES_TARGET_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_ND_TARGET_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_ND_TARGET_61 "CAN_DET_ND_TARGET_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 "CAN_DET_HOST_VEH_CLUTTER_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_VALID_LEVEL_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_VALID_LEVEL_61 "CAN_DET_VALID_LEVEL_61"; -BA_ "GenSigStartValue" SG_ 348 CAN_DET_AZIMUTH_61 0; -BA_ "GenSigSendType" SG_ 348 CAN_DET_AZIMUTH_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_AZIMUTH_61 "CAN_DET_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_61 "CAN_DET_RANGE_61"; -BA_ "GenSigStartValue" SG_ 348 CAN_DET_RANGE_RATE_61 0; -BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_RATE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_RATE_61 "CAN_DET_RANGE_RATE_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_AMPLITUDE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_AMPLITUDE_61 "CAN_DET_AMPLITUDE_61"; -BA_ "GenSigSendType" SG_ 348 CAN_SCAN_INDEX_2LSB_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_SCAN_INDEX_2LSB_61 "CAN_SCAN_INDEX_2LSB_61"; -BA_ "GenMsgSendType" BO_ 347 1; -BA_ "GenMsgILSupport" BO_ 347 1; -BA_ "GenMsgNrOfRepetition" BO_ 347 0; -BA_ "GenMsgCycleTime" BO_ 347 0; -BA_ "NetworkInitialization" BO_ 347 0; -BA_ "GenMsgDelayTime" BO_ 347 0; -BA_ "GenSigVtEn" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigVtName" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 "CAN_DET_SUPER_RES_TARGET_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_ND_TARGET_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_ND_TARGET_60 "CAN_DET_ND_TARGET_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 "CAN_DET_HOST_VEH_CLUTTER_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_VALID_LEVEL_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_VALID_LEVEL_60 "CAN_DET_VALID_LEVEL_60"; -BA_ "GenSigStartValue" SG_ 347 CAN_DET_AZIMUTH_60 0; -BA_ "GenSigSendType" SG_ 347 CAN_DET_AZIMUTH_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_AZIMUTH_60 "CAN_DET_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_60 "CAN_DET_RANGE_60"; -BA_ "GenSigStartValue" SG_ 347 CAN_DET_RANGE_RATE_60 0; -BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_RATE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_RATE_60 "CAN_DET_RANGE_RATE_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_AMPLITUDE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_AMPLITUDE_60 "CAN_DET_AMPLITUDE_60"; -BA_ "GenSigSendType" SG_ 347 CAN_SCAN_INDEX_2LSB_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_SCAN_INDEX_2LSB_60 "CAN_SCAN_INDEX_2LSB_60"; -BA_ "GenMsgSendType" BO_ 346 1; -BA_ "GenMsgILSupport" BO_ 346 1; -BA_ "GenMsgNrOfRepetition" BO_ 346 0; -BA_ "GenMsgCycleTime" BO_ 346 0; -BA_ "NetworkInitialization" BO_ 346 0; -BA_ "GenMsgDelayTime" BO_ 346 0; -BA_ "GenSigVtEn" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigVtName" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 "CAN_DET_SUPER_RES_TARGET_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_ND_TARGET_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_ND_TARGET_59 "CAN_DET_ND_TARGET_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 "CAN_DET_HOST_VEH_CLUTTER_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_VALID_LEVEL_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_VALID_LEVEL_59 "CAN_DET_VALID_LEVEL_59"; -BA_ "GenSigStartValue" SG_ 346 CAN_DET_AZIMUTH_59 0; -BA_ "GenSigSendType" SG_ 346 CAN_DET_AZIMUTH_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_AZIMUTH_59 "CAN_DET_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_59 "CAN_DET_RANGE_59"; -BA_ "GenSigStartValue" SG_ 346 CAN_DET_RANGE_RATE_59 0; -BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_RATE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_RATE_59 "CAN_DET_RANGE_RATE_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_AMPLITUDE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_AMPLITUDE_59 "CAN_DET_AMPLITUDE_59"; -BA_ "GenSigSendType" SG_ 346 CAN_SCAN_INDEX_2LSB_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_SCAN_INDEX_2LSB_59 "CAN_SCAN_INDEX_2LSB_59"; -BA_ "GenMsgSendType" BO_ 345 1; -BA_ "GenMsgILSupport" BO_ 345 1; -BA_ "GenMsgNrOfRepetition" BO_ 345 0; -BA_ "GenMsgCycleTime" BO_ 345 0; -BA_ "NetworkInitialization" BO_ 345 0; -BA_ "GenMsgDelayTime" BO_ 345 0; -BA_ "GenSigVtEn" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigVtName" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 "CAN_DET_SUPER_RES_TARGET_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_ND_TARGET_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_ND_TARGET_58 "CAN_DET_ND_TARGET_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 "CAN_DET_HOST_VEH_CLUTTER_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_VALID_LEVEL_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_VALID_LEVEL_58 "CAN_DET_VALID_LEVEL_58"; -BA_ "GenSigStartValue" SG_ 345 CAN_DET_AZIMUTH_58 0; -BA_ "GenSigSendType" SG_ 345 CAN_DET_AZIMUTH_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_AZIMUTH_58 "CAN_DET_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_58 "CAN_DET_RANGE_58"; -BA_ "GenSigStartValue" SG_ 345 CAN_DET_RANGE_RATE_58 0; -BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_RATE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_RATE_58 "CAN_DET_RANGE_RATE_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_AMPLITUDE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_AMPLITUDE_58 "CAN_DET_AMPLITUDE_58"; -BA_ "GenSigSendType" SG_ 345 CAN_SCAN_INDEX_2LSB_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_SCAN_INDEX_2LSB_58 "CAN_SCAN_INDEX_2LSB_58"; -BA_ "GenMsgSendType" BO_ 344 1; -BA_ "GenMsgILSupport" BO_ 344 1; -BA_ "GenMsgNrOfRepetition" BO_ 344 0; -BA_ "GenMsgCycleTime" BO_ 344 0; -BA_ "NetworkInitialization" BO_ 344 0; -BA_ "GenMsgDelayTime" BO_ 344 0; -BA_ "GenSigVtEn" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigVtName" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 "CAN_DET_SUPER_RES_TARGET_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_ND_TARGET_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_ND_TARGET_57 "CAN_DET_ND_TARGET_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 "CAN_DET_HOST_VEH_CLUTTER_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_VALID_LEVEL_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_VALID_LEVEL_57 "CAN_DET_VALID_LEVEL_57"; -BA_ "GenSigStartValue" SG_ 344 CAN_DET_AZIMUTH_57 0; -BA_ "GenSigSendType" SG_ 344 CAN_DET_AZIMUTH_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_AZIMUTH_57 "CAN_DET_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_57 "CAN_DET_RANGE_57"; -BA_ "GenSigStartValue" SG_ 344 CAN_DET_RANGE_RATE_57 0; -BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_RATE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_RATE_57 "CAN_DET_RANGE_RATE_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_AMPLITUDE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_AMPLITUDE_57 "CAN_DET_AMPLITUDE_57"; -BA_ "GenSigSendType" SG_ 344 CAN_SCAN_INDEX_2LSB_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_SCAN_INDEX_2LSB_57 "CAN_SCAN_INDEX_2LSB_57"; -BA_ "GenMsgSendType" BO_ 343 1; -BA_ "GenMsgILSupport" BO_ 343 1; -BA_ "GenMsgNrOfRepetition" BO_ 343 0; -BA_ "GenMsgCycleTime" BO_ 343 0; -BA_ "NetworkInitialization" BO_ 343 0; -BA_ "GenMsgDelayTime" BO_ 343 0; -BA_ "GenSigVtEn" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigVtName" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 "CAN_DET_SUPER_RES_TARGET_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_ND_TARGET_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_ND_TARGET_56 "CAN_DET_ND_TARGET_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 "CAN_DET_HOST_VEH_CLUTTER_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_VALID_LEVEL_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_VALID_LEVEL_56 "CAN_DET_VALID_LEVEL_56"; -BA_ "GenSigStartValue" SG_ 343 CAN_DET_AZIMUTH_56 0; -BA_ "GenSigSendType" SG_ 343 CAN_DET_AZIMUTH_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_AZIMUTH_56 "CAN_DET_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_56 "CAN_DET_RANGE_56"; -BA_ "GenSigStartValue" SG_ 343 CAN_DET_RANGE_RATE_56 0; -BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_RATE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_RATE_56 "CAN_DET_RANGE_RATE_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_AMPLITUDE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_AMPLITUDE_56 "CAN_DET_AMPLITUDE_56"; -BA_ "GenSigSendType" SG_ 343 CAN_SCAN_INDEX_2LSB_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_SCAN_INDEX_2LSB_56 "CAN_SCAN_INDEX_2LSB_56"; -BA_ "GenMsgSendType" BO_ 342 1; -BA_ "GenMsgILSupport" BO_ 342 1; -BA_ "GenMsgNrOfRepetition" BO_ 342 0; -BA_ "GenMsgCycleTime" BO_ 342 0; -BA_ "NetworkInitialization" BO_ 342 0; -BA_ "GenMsgDelayTime" BO_ 342 0; -BA_ "GenSigVtEn" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigVtName" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 "CAN_DET_SUPER_RES_TARGET_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_ND_TARGET_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_ND_TARGET_55 "CAN_DET_ND_TARGET_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 "CAN_DET_HOST_VEH_CLUTTER_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_VALID_LEVEL_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_VALID_LEVEL_55 "CAN_DET_VALID_LEVEL_55"; -BA_ "GenSigStartValue" SG_ 342 CAN_DET_AZIMUTH_55 0; -BA_ "GenSigSendType" SG_ 342 CAN_DET_AZIMUTH_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_AZIMUTH_55 "CAN_DET_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_55 "CAN_DET_RANGE_55"; -BA_ "GenSigStartValue" SG_ 342 CAN_DET_RANGE_RATE_55 0; -BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_RATE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_RATE_55 "CAN_DET_RANGE_RATE_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_AMPLITUDE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_AMPLITUDE_55 "CAN_DET_AMPLITUDE_55"; -BA_ "GenSigSendType" SG_ 342 CAN_SCAN_INDEX_2LSB_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_SCAN_INDEX_2LSB_55 "CAN_SCAN_INDEX_2LSB_55"; -BA_ "GenMsgSendType" BO_ 335 1; -BA_ "GenMsgILSupport" BO_ 335 1; -BA_ "GenMsgNrOfRepetition" BO_ 335 0; -BA_ "GenMsgCycleTime" BO_ 335 0; -BA_ "NetworkInitialization" BO_ 335 0; -BA_ "GenMsgDelayTime" BO_ 335 0; -BA_ "GenSigVtEn" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigVtName" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 "CAN_DET_SUPER_RES_TARGET_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_ND_TARGET_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_ND_TARGET_48 "CAN_DET_ND_TARGET_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 "CAN_DET_HOST_VEH_CLUTTER_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_VALID_LEVEL_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_VALID_LEVEL_48 "CAN_DET_VALID_LEVEL_48"; -BA_ "GenSigStartValue" SG_ 335 CAN_DET_AZIMUTH_48 0; -BA_ "GenSigSendType" SG_ 335 CAN_DET_AZIMUTH_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_AZIMUTH_48 "CAN_DET_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_48 "CAN_DET_RANGE_48"; -BA_ "GenSigStartValue" SG_ 335 CAN_DET_RANGE_RATE_48 0; -BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_RATE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_RATE_48 "CAN_DET_RANGE_RATE_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_AMPLITUDE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_AMPLITUDE_48 "CAN_DET_AMPLITUDE_48"; -BA_ "GenSigSendType" SG_ 335 CAN_SCAN_INDEX_2LSB_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_SCAN_INDEX_2LSB_48 "CAN_SCAN_INDEX_2LSB_48"; -BA_ "GenMsgSendType" BO_ 334 1; -BA_ "GenMsgILSupport" BO_ 334 1; -BA_ "GenMsgNrOfRepetition" BO_ 334 0; -BA_ "GenMsgCycleTime" BO_ 334 0; -BA_ "NetworkInitialization" BO_ 334 0; -BA_ "GenMsgDelayTime" BO_ 334 0; -BA_ "GenSigVtEn" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigVtName" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 "CAN_DET_SUPER_RES_TARGET_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_ND_TARGET_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_ND_TARGET_47 "CAN_DET_ND_TARGET_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 "CAN_DET_HOST_VEH_CLUTTER_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_VALID_LEVEL_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_VALID_LEVEL_47 "CAN_DET_VALID_LEVEL_47"; -BA_ "GenSigStartValue" SG_ 334 CAN_DET_AZIMUTH_47 0; -BA_ "GenSigSendType" SG_ 334 CAN_DET_AZIMUTH_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_AZIMUTH_47 "CAN_DET_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_47 "CAN_DET_RANGE_47"; -BA_ "GenSigStartValue" SG_ 334 CAN_DET_RANGE_RATE_47 0; -BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_RATE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_RATE_47 "CAN_DET_RANGE_RATE_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_AMPLITUDE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_AMPLITUDE_47 "CAN_DET_AMPLITUDE_47"; -BA_ "GenSigSendType" SG_ 334 CAN_SCAN_INDEX_2LSB_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_SCAN_INDEX_2LSB_47 "CAN_SCAN_INDEX_2LSB_47"; -BA_ "GenMsgSendType" BO_ 333 1; -BA_ "GenMsgILSupport" BO_ 333 1; -BA_ "GenMsgNrOfRepetition" BO_ 333 0; -BA_ "GenMsgCycleTime" BO_ 333 0; -BA_ "NetworkInitialization" BO_ 333 0; -BA_ "GenMsgDelayTime" BO_ 333 0; -BA_ "GenSigVtEn" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigVtName" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 "CAN_DET_SUPER_RES_TARGET_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_ND_TARGET_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_ND_TARGET_46 "CAN_DET_ND_TARGET_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 "CAN_DET_HOST_VEH_CLUTTER_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_VALID_LEVEL_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_VALID_LEVEL_46 "CAN_DET_VALID_LEVEL_46"; -BA_ "GenSigStartValue" SG_ 333 CAN_DET_AZIMUTH_46 0; -BA_ "GenSigSendType" SG_ 333 CAN_DET_AZIMUTH_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_AZIMUTH_46 "CAN_DET_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_46 "CAN_DET_RANGE_46"; -BA_ "GenSigStartValue" SG_ 333 CAN_DET_RANGE_RATE_46 0; -BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_RATE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_RATE_46 "CAN_DET_RANGE_RATE_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_AMPLITUDE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_AMPLITUDE_46 "CAN_DET_AMPLITUDE_46"; -BA_ "GenSigSendType" SG_ 333 CAN_SCAN_INDEX_2LSB_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_SCAN_INDEX_2LSB_46 "CAN_SCAN_INDEX_2LSB_46"; -BA_ "GenMsgSendType" BO_ 332 1; -BA_ "GenMsgILSupport" BO_ 332 1; -BA_ "GenMsgNrOfRepetition" BO_ 332 0; -BA_ "GenMsgCycleTime" BO_ 332 0; -BA_ "NetworkInitialization" BO_ 332 0; -BA_ "GenMsgDelayTime" BO_ 332 0; -BA_ "GenSigVtEn" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigVtName" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 "CAN_DET_SUPER_RES_TARGET_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_ND_TARGET_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_ND_TARGET_45 "CAN_DET_ND_TARGET_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 "CAN_DET_HOST_VEH_CLUTTER_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_VALID_LEVEL_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_VALID_LEVEL_45 "CAN_DET_VALID_LEVEL_45"; -BA_ "GenSigStartValue" SG_ 332 CAN_DET_AZIMUTH_45 0; -BA_ "GenSigSendType" SG_ 332 CAN_DET_AZIMUTH_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_AZIMUTH_45 "CAN_DET_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_45 "CAN_DET_RANGE_45"; -BA_ "GenSigStartValue" SG_ 332 CAN_DET_RANGE_RATE_45 0; -BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_RATE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_RATE_45 "CAN_DET_RANGE_RATE_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_AMPLITUDE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_AMPLITUDE_45 "CAN_DET_AMPLITUDE_45"; -BA_ "GenSigSendType" SG_ 332 CAN_SCAN_INDEX_2LSB_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_SCAN_INDEX_2LSB_45 "CAN_SCAN_INDEX_2LSB_45"; -BA_ "GenMsgSendType" BO_ 331 1; -BA_ "GenMsgILSupport" BO_ 331 1; -BA_ "GenMsgNrOfRepetition" BO_ 331 0; -BA_ "GenMsgCycleTime" BO_ 331 0; -BA_ "NetworkInitialization" BO_ 331 0; -BA_ "GenMsgDelayTime" BO_ 331 0; -BA_ "GenSigVtEn" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigVtName" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 "CAN_DET_SUPER_RES_TARGET_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_ND_TARGET_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_ND_TARGET_44 "CAN_DET_ND_TARGET_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 "CAN_DET_HOST_VEH_CLUTTER_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_VALID_LEVEL_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_VALID_LEVEL_44 "CAN_DET_VALID_LEVEL_44"; -BA_ "GenSigStartValue" SG_ 331 CAN_DET_AZIMUTH_44 0; -BA_ "GenSigSendType" SG_ 331 CAN_DET_AZIMUTH_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_AZIMUTH_44 "CAN_DET_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_44 "CAN_DET_RANGE_44"; -BA_ "GenSigStartValue" SG_ 331 CAN_DET_RANGE_RATE_44 0; -BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_RATE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_RATE_44 "CAN_DET_RANGE_RATE_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_AMPLITUDE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_AMPLITUDE_44 "CAN_DET_AMPLITUDE_44"; -BA_ "GenSigSendType" SG_ 331 CAN_SCAN_INDEX_2LSB_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_SCAN_INDEX_2LSB_44 "CAN_SCAN_INDEX_2LSB_44"; -BA_ "GenMsgSendType" BO_ 330 1; -BA_ "GenMsgILSupport" BO_ 330 1; -BA_ "GenMsgNrOfRepetition" BO_ 330 0; -BA_ "GenMsgCycleTime" BO_ 330 0; -BA_ "NetworkInitialization" BO_ 330 0; -BA_ "GenMsgDelayTime" BO_ 330 0; -BA_ "GenSigVtEn" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigVtName" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 "CAN_DET_SUPER_RES_TARGET_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_ND_TARGET_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_ND_TARGET_43 "CAN_DET_ND_TARGET_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 "CAN_DET_HOST_VEH_CLUTTER_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_VALID_LEVEL_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_VALID_LEVEL_43 "CAN_DET_VALID_LEVEL_43"; -BA_ "GenSigStartValue" SG_ 330 CAN_DET_AZIMUTH_43 0; -BA_ "GenSigSendType" SG_ 330 CAN_DET_AZIMUTH_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_AZIMUTH_43 "CAN_DET_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_43 "CAN_DET_RANGE_43"; -BA_ "GenSigStartValue" SG_ 330 CAN_DET_RANGE_RATE_43 0; -BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_RATE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_RATE_43 "CAN_DET_RANGE_RATE_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_AMPLITUDE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_AMPLITUDE_43 "CAN_DET_AMPLITUDE_43"; -BA_ "GenSigSendType" SG_ 330 CAN_SCAN_INDEX_2LSB_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_SCAN_INDEX_2LSB_43 "CAN_SCAN_INDEX_2LSB_43"; -BA_ "GenMsgSendType" BO_ 329 1; -BA_ "GenMsgILSupport" BO_ 329 1; -BA_ "GenMsgNrOfRepetition" BO_ 329 0; -BA_ "GenMsgCycleTime" BO_ 329 0; -BA_ "NetworkInitialization" BO_ 329 0; -BA_ "GenMsgDelayTime" BO_ 329 0; -BA_ "GenSigVtEn" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigVtName" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 "CAN_DET_SUPER_RES_TARGET_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_ND_TARGET_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_ND_TARGET_42 "CAN_DET_ND_TARGET_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 "CAN_DET_HOST_VEH_CLUTTER_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_VALID_LEVEL_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_VALID_LEVEL_42 "CAN_DET_VALID_LEVEL_42"; -BA_ "GenSigStartValue" SG_ 329 CAN_DET_AZIMUTH_42 0; -BA_ "GenSigSendType" SG_ 329 CAN_DET_AZIMUTH_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_AZIMUTH_42 "CAN_DET_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_42 "CAN_DET_RANGE_42"; -BA_ "GenSigStartValue" SG_ 329 CAN_DET_RANGE_RATE_42 0; -BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_RATE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_RATE_42 "CAN_DET_RANGE_RATE_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_AMPLITUDE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_AMPLITUDE_42 "CAN_DET_AMPLITUDE_42"; -BA_ "GenSigSendType" SG_ 329 CAN_SCAN_INDEX_2LSB_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_SCAN_INDEX_2LSB_42 "CAN_SCAN_INDEX_2LSB_42"; -BA_ "GenMsgSendType" BO_ 328 1; -BA_ "GenMsgILSupport" BO_ 328 1; -BA_ "GenMsgNrOfRepetition" BO_ 328 0; -BA_ "GenMsgCycleTime" BO_ 328 0; -BA_ "NetworkInitialization" BO_ 328 0; -BA_ "GenMsgDelayTime" BO_ 328 0; -BA_ "GenSigVtEn" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigVtName" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 "CAN_DET_SUPER_RES_TARGET_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_ND_TARGET_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_ND_TARGET_41 "CAN_DET_ND_TARGET_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 "CAN_DET_HOST_VEH_CLUTTER_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_VALID_LEVEL_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_VALID_LEVEL_41 "CAN_DET_VALID_LEVEL_41"; -BA_ "GenSigStartValue" SG_ 328 CAN_DET_AZIMUTH_41 0; -BA_ "GenSigSendType" SG_ 328 CAN_DET_AZIMUTH_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_AZIMUTH_41 "CAN_DET_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_41 "CAN_DET_RANGE_41"; -BA_ "GenSigStartValue" SG_ 328 CAN_DET_RANGE_RATE_41 0; -BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_RATE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_RATE_41 "CAN_DET_RANGE_RATE_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_AMPLITUDE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_AMPLITUDE_41 "CAN_DET_AMPLITUDE_41"; -BA_ "GenSigSendType" SG_ 328 CAN_SCAN_INDEX_2LSB_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_SCAN_INDEX_2LSB_41 "CAN_SCAN_INDEX_2LSB_41"; -BA_ "GenMsgSendType" BO_ 327 1; -BA_ "GenMsgILSupport" BO_ 327 1; -BA_ "GenMsgNrOfRepetition" BO_ 327 0; -BA_ "GenMsgCycleTime" BO_ 327 0; -BA_ "NetworkInitialization" BO_ 327 0; -BA_ "GenMsgDelayTime" BO_ 327 0; -BA_ "GenSigVtEn" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigVtName" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 "CAN_DET_SUPER_RES_TARGET_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_ND_TARGET_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_ND_TARGET_40 "CAN_DET_ND_TARGET_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 "CAN_DET_HOST_VEH_CLUTTER_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_VALID_LEVEL_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_VALID_LEVEL_40 "CAN_DET_VALID_LEVEL_40"; -BA_ "GenSigStartValue" SG_ 327 CAN_DET_AZIMUTH_40 0; -BA_ "GenSigSendType" SG_ 327 CAN_DET_AZIMUTH_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_AZIMUTH_40 "CAN_DET_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_40 "CAN_DET_RANGE_40"; -BA_ "GenSigStartValue" SG_ 327 CAN_DET_RANGE_RATE_40 0; -BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_RATE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_RATE_40 "CAN_DET_RANGE_RATE_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_AMPLITUDE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_AMPLITUDE_40 "CAN_DET_AMPLITUDE_40"; -BA_ "GenSigSendType" SG_ 327 CAN_SCAN_INDEX_2LSB_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_SCAN_INDEX_2LSB_40 "CAN_SCAN_INDEX_2LSB_40"; -BA_ "GenMsgSendType" BO_ 325 1; -BA_ "GenMsgILSupport" BO_ 325 1; -BA_ "GenMsgNrOfRepetition" BO_ 325 0; -BA_ "GenMsgCycleTime" BO_ 325 0; -BA_ "NetworkInitialization" BO_ 325 0; -BA_ "GenMsgDelayTime" BO_ 325 0; -BA_ "GenSigVtEn" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigVtName" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 "CAN_DET_SUPER_RES_TARGET_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_ND_TARGET_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_ND_TARGET_38 "CAN_DET_ND_TARGET_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 "CAN_DET_HOST_VEH_CLUTTER_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_VALID_LEVEL_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_VALID_LEVEL_38 "CAN_DET_VALID_LEVEL_38"; -BA_ "GenSigStartValue" SG_ 325 CAN_DET_AZIMUTH_38 0; -BA_ "GenSigSendType" SG_ 325 CAN_DET_AZIMUTH_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_AZIMUTH_38 "CAN_DET_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_38 "CAN_DET_RANGE_38"; -BA_ "GenSigStartValue" SG_ 325 CAN_DET_RANGE_RATE_38 0; -BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_RATE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_RATE_38 "CAN_DET_RANGE_RATE_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_AMPLITUDE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_AMPLITUDE_38 "CAN_DET_AMPLITUDE_38"; -BA_ "GenSigSendType" SG_ 325 CAN_SCAN_INDEX_2LSB_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_SCAN_INDEX_2LSB_38 "CAN_SCAN_INDEX_2LSB_38"; -BA_ "GenMsgSendType" BO_ 324 1; -BA_ "GenMsgILSupport" BO_ 324 1; -BA_ "GenMsgNrOfRepetition" BO_ 324 0; -BA_ "GenMsgCycleTime" BO_ 324 0; -BA_ "NetworkInitialization" BO_ 324 0; -BA_ "GenMsgDelayTime" BO_ 324 0; -BA_ "GenSigVtEn" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigVtName" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 "CAN_DET_SUPER_RES_TARGET_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_ND_TARGET_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_ND_TARGET_37 "CAN_DET_ND_TARGET_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 "CAN_DET_HOST_VEH_CLUTTER_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_VALID_LEVEL_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_VALID_LEVEL_37 "CAN_DET_VALID_LEVEL_37"; -BA_ "GenSigStartValue" SG_ 324 CAN_DET_AZIMUTH_37 0; -BA_ "GenSigSendType" SG_ 324 CAN_DET_AZIMUTH_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_AZIMUTH_37 "CAN_DET_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_37 "CAN_DET_RANGE_37"; -BA_ "GenSigStartValue" SG_ 324 CAN_DET_RANGE_RATE_37 0; -BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_RATE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_RATE_37 "CAN_DET_RANGE_RATE_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_AMPLITUDE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_AMPLITUDE_37 "CAN_DET_AMPLITUDE_37"; -BA_ "GenSigSendType" SG_ 324 CAN_SCAN_INDEX_2LSB_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_SCAN_INDEX_2LSB_37 "CAN_SCAN_INDEX_2LSB_37"; -BA_ "GenMsgSendType" BO_ 323 1; -BA_ "GenMsgILSupport" BO_ 323 1; -BA_ "GenMsgNrOfRepetition" BO_ 323 0; -BA_ "GenMsgCycleTime" BO_ 323 0; -BA_ "NetworkInitialization" BO_ 323 0; -BA_ "GenMsgDelayTime" BO_ 323 0; -BA_ "GenSigVtEn" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigVtName" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 "CAN_DET_SUPER_RES_TARGET_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_ND_TARGET_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_ND_TARGET_36 "CAN_DET_ND_TARGET_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 "CAN_DET_HOST_VEH_CLUTTER_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_VALID_LEVEL_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_VALID_LEVEL_36 "CAN_DET_VALID_LEVEL_36"; -BA_ "GenSigStartValue" SG_ 323 CAN_DET_AZIMUTH_36 0; -BA_ "GenSigSendType" SG_ 323 CAN_DET_AZIMUTH_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_AZIMUTH_36 "CAN_DET_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_36 "CAN_DET_RANGE_36"; -BA_ "GenSigStartValue" SG_ 323 CAN_DET_RANGE_RATE_36 0; -BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_RATE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_RATE_36 "CAN_DET_RANGE_RATE_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_AMPLITUDE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_AMPLITUDE_36 "CAN_DET_AMPLITUDE_36"; -BA_ "GenSigSendType" SG_ 323 CAN_SCAN_INDEX_2LSB_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_SCAN_INDEX_2LSB_36 "CAN_SCAN_INDEX_2LSB_36"; -BA_ "GenMsgSendType" BO_ 322 1; -BA_ "GenMsgILSupport" BO_ 322 1; -BA_ "GenMsgNrOfRepetition" BO_ 322 0; -BA_ "GenMsgCycleTime" BO_ 322 0; -BA_ "NetworkInitialization" BO_ 322 0; -BA_ "GenMsgDelayTime" BO_ 322 0; -BA_ "GenSigVtEn" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigVtName" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 "CAN_DET_SUPER_RES_TARGET_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_ND_TARGET_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_ND_TARGET_35 "CAN_DET_ND_TARGET_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 "CAN_DET_HOST_VEH_CLUTTER_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_VALID_LEVEL_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_VALID_LEVEL_35 "CAN_DET_VALID_LEVEL_35"; -BA_ "GenSigStartValue" SG_ 322 CAN_DET_AZIMUTH_35 0; -BA_ "GenSigSendType" SG_ 322 CAN_DET_AZIMUTH_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_AZIMUTH_35 "CAN_DET_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_35 "CAN_DET_RANGE_35"; -BA_ "GenSigStartValue" SG_ 322 CAN_DET_RANGE_RATE_35 0; -BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_RATE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_RATE_35 "CAN_DET_RANGE_RATE_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_AMPLITUDE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_AMPLITUDE_35 "CAN_DET_AMPLITUDE_35"; -BA_ "GenSigSendType" SG_ 322 CAN_SCAN_INDEX_2LSB_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_SCAN_INDEX_2LSB_35 "CAN_SCAN_INDEX_2LSB_35"; -BA_ "GenMsgSendType" BO_ 321 1; -BA_ "GenMsgILSupport" BO_ 321 1; -BA_ "GenMsgNrOfRepetition" BO_ 321 0; -BA_ "GenMsgCycleTime" BO_ 321 0; -BA_ "NetworkInitialization" BO_ 321 0; -BA_ "GenMsgDelayTime" BO_ 321 0; -BA_ "GenSigVtEn" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigVtName" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 "CAN_DET_SUPER_RES_TARGET_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_ND_TARGET_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_ND_TARGET_34 "CAN_DET_ND_TARGET_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 "CAN_DET_HOST_VEH_CLUTTER_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_VALID_LEVEL_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_VALID_LEVEL_34 "CAN_DET_VALID_LEVEL_34"; -BA_ "GenSigStartValue" SG_ 321 CAN_DET_AZIMUTH_34 0; -BA_ "GenSigSendType" SG_ 321 CAN_DET_AZIMUTH_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_AZIMUTH_34 "CAN_DET_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_34 "CAN_DET_RANGE_34"; -BA_ "GenSigStartValue" SG_ 321 CAN_DET_RANGE_RATE_34 0; -BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_RATE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_RATE_34 "CAN_DET_RANGE_RATE_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_AMPLITUDE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_AMPLITUDE_34 "CAN_DET_AMPLITUDE_34"; -BA_ "GenSigSendType" SG_ 321 CAN_SCAN_INDEX_2LSB_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_SCAN_INDEX_2LSB_34 "CAN_SCAN_INDEX_2LSB_34"; -BA_ "GenMsgSendType" BO_ 320 1; -BA_ "GenMsgILSupport" BO_ 320 1; -BA_ "GenMsgNrOfRepetition" BO_ 320 0; -BA_ "GenMsgCycleTime" BO_ 320 0; -BA_ "NetworkInitialization" BO_ 320 0; -BA_ "GenMsgDelayTime" BO_ 320 0; -BA_ "GenSigVtEn" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigVtName" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 "CAN_DET_SUPER_RES_TARGET_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_ND_TARGET_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_ND_TARGET_33 "CAN_DET_ND_TARGET_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 "CAN_DET_HOST_VEH_CLUTTER_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_VALID_LEVEL_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_VALID_LEVEL_33 "CAN_DET_VALID_LEVEL_33"; -BA_ "GenSigStartValue" SG_ 320 CAN_DET_AZIMUTH_33 0; -BA_ "GenSigSendType" SG_ 320 CAN_DET_AZIMUTH_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_AZIMUTH_33 "CAN_DET_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_33 "CAN_DET_RANGE_33"; -BA_ "GenSigStartValue" SG_ 320 CAN_DET_RANGE_RATE_33 0; -BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_RATE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_RATE_33 "CAN_DET_RANGE_RATE_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_AMPLITUDE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_AMPLITUDE_33 "CAN_DET_AMPLITUDE_33"; -BA_ "GenSigSendType" SG_ 320 CAN_SCAN_INDEX_2LSB_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_SCAN_INDEX_2LSB_33 "CAN_SCAN_INDEX_2LSB_33"; -BA_ "GenMsgSendType" BO_ 319 1; -BA_ "GenMsgILSupport" BO_ 319 1; -BA_ "GenMsgNrOfRepetition" BO_ 319 0; -BA_ "GenMsgCycleTime" BO_ 319 0; -BA_ "NetworkInitialization" BO_ 319 0; -BA_ "GenMsgDelayTime" BO_ 319 0; -BA_ "GenSigVtEn" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigVtName" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 "CAN_DET_SUPER_RES_TARGET_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_ND_TARGET_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_ND_TARGET_32 "CAN_DET_ND_TARGET_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 "CAN_DET_HOST_VEH_CLUTTER_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_VALID_LEVEL_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_VALID_LEVEL_32 "CAN_DET_VALID_LEVEL_32"; -BA_ "GenSigStartValue" SG_ 319 CAN_DET_AZIMUTH_32 0; -BA_ "GenSigSendType" SG_ 319 CAN_DET_AZIMUTH_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_AZIMUTH_32 "CAN_DET_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_32 "CAN_DET_RANGE_32"; -BA_ "GenSigStartValue" SG_ 319 CAN_DET_RANGE_RATE_32 0; -BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_RATE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_RATE_32 "CAN_DET_RANGE_RATE_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_AMPLITUDE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_AMPLITUDE_32 "CAN_DET_AMPLITUDE_32"; -BA_ "GenSigSendType" SG_ 319 CAN_SCAN_INDEX_2LSB_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_SCAN_INDEX_2LSB_32 "CAN_SCAN_INDEX_2LSB_32"; -BA_ "GenMsgSendType" BO_ 318 1; -BA_ "GenMsgILSupport" BO_ 318 1; -BA_ "GenMsgNrOfRepetition" BO_ 318 0; -BA_ "GenMsgCycleTime" BO_ 318 0; -BA_ "NetworkInitialization" BO_ 318 0; -BA_ "GenMsgDelayTime" BO_ 318 0; -BA_ "GenSigVtEn" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigVtName" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 "CAN_DET_SUPER_RES_TARGET_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_ND_TARGET_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_ND_TARGET_31 "CAN_DET_ND_TARGET_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 "CAN_DET_HOST_VEH_CLUTTER_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_VALID_LEVEL_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_VALID_LEVEL_31 "CAN_DET_VALID_LEVEL_31"; -BA_ "GenSigStartValue" SG_ 318 CAN_DET_AZIMUTH_31 0; -BA_ "GenSigSendType" SG_ 318 CAN_DET_AZIMUTH_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_AZIMUTH_31 "CAN_DET_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_31 "CAN_DET_RANGE_31"; -BA_ "GenSigStartValue" SG_ 318 CAN_DET_RANGE_RATE_31 0; -BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_RATE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_RATE_31 "CAN_DET_RANGE_RATE_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_AMPLITUDE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_AMPLITUDE_31 "CAN_DET_AMPLITUDE_31"; -BA_ "GenSigSendType" SG_ 318 CAN_SCAN_INDEX_2LSB_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_SCAN_INDEX_2LSB_31 "CAN_SCAN_INDEX_2LSB_31"; -BA_ "GenMsgSendType" BO_ 317 1; -BA_ "GenMsgILSupport" BO_ 317 1; -BA_ "GenMsgNrOfRepetition" BO_ 317 0; -BA_ "GenMsgCycleTime" BO_ 317 0; -BA_ "NetworkInitialization" BO_ 317 0; -BA_ "GenMsgDelayTime" BO_ 317 0; -BA_ "GenSigVtEn" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigVtName" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 "CAN_DET_SUPER_RES_TARGET_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_ND_TARGET_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_ND_TARGET_30 "CAN_DET_ND_TARGET_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 "CAN_DET_HOST_VEH_CLUTTER_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_VALID_LEVEL_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_VALID_LEVEL_30 "CAN_DET_VALID_LEVEL_30"; -BA_ "GenSigStartValue" SG_ 317 CAN_DET_AZIMUTH_30 0; -BA_ "GenSigSendType" SG_ 317 CAN_DET_AZIMUTH_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_AZIMUTH_30 "CAN_DET_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_30 "CAN_DET_RANGE_30"; -BA_ "GenSigStartValue" SG_ 317 CAN_DET_RANGE_RATE_30 0; -BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_RATE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_RATE_30 "CAN_DET_RANGE_RATE_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_AMPLITUDE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_AMPLITUDE_30 "CAN_DET_AMPLITUDE_30"; -BA_ "GenSigSendType" SG_ 317 CAN_SCAN_INDEX_2LSB_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_SCAN_INDEX_2LSB_30 "CAN_SCAN_INDEX_2LSB_30"; -BA_ "GenMsgSendType" BO_ 316 1; -BA_ "GenMsgILSupport" BO_ 316 1; -BA_ "GenMsgNrOfRepetition" BO_ 316 0; -BA_ "GenMsgCycleTime" BO_ 316 0; -BA_ "NetworkInitialization" BO_ 316 0; -BA_ "GenMsgDelayTime" BO_ 316 0; -BA_ "GenSigVtEn" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigVtName" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 "CAN_DET_SUPER_RES_TARGET_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_ND_TARGET_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_ND_TARGET_29 "CAN_DET_ND_TARGET_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 "CAN_DET_HOST_VEH_CLUTTER_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_VALID_LEVEL_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_VALID_LEVEL_29 "CAN_DET_VALID_LEVEL_29"; -BA_ "GenSigStartValue" SG_ 316 CAN_DET_AZIMUTH_29 0; -BA_ "GenSigSendType" SG_ 316 CAN_DET_AZIMUTH_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_AZIMUTH_29 "CAN_DET_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_29 "CAN_DET_RANGE_29"; -BA_ "GenSigStartValue" SG_ 316 CAN_DET_RANGE_RATE_29 0; -BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_RATE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_RATE_29 "CAN_DET_RANGE_RATE_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_AMPLITUDE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_AMPLITUDE_29 "CAN_DET_AMPLITUDE_29"; -BA_ "GenSigSendType" SG_ 316 CAN_SCAN_INDEX_2LSB_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_SCAN_INDEX_2LSB_29 "CAN_SCAN_INDEX_2LSB_29"; -BA_ "GenMsgSendType" BO_ 314 1; -BA_ "GenMsgILSupport" BO_ 314 1; -BA_ "GenMsgNrOfRepetition" BO_ 314 0; -BA_ "GenMsgCycleTime" BO_ 314 0; -BA_ "NetworkInitialization" BO_ 314 0; -BA_ "GenMsgDelayTime" BO_ 314 0; -BA_ "GenSigVtEn" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigVtName" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 "CAN_DET_SUPER_RES_TARGET_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_ND_TARGET_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_ND_TARGET_27 "CAN_DET_ND_TARGET_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 "CAN_DET_HOST_VEH_CLUTTER_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_VALID_LEVEL_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_VALID_LEVEL_27 "CAN_DET_VALID_LEVEL_27"; -BA_ "GenSigStartValue" SG_ 314 CAN_DET_AZIMUTH_27 0; -BA_ "GenSigSendType" SG_ 314 CAN_DET_AZIMUTH_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_AZIMUTH_27 "CAN_DET_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_27 "CAN_DET_RANGE_27"; -BA_ "GenSigStartValue" SG_ 314 CAN_DET_RANGE_RATE_27 0; -BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_RATE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_RATE_27 "CAN_DET_RANGE_RATE_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_AMPLITUDE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_AMPLITUDE_27 "CAN_DET_AMPLITUDE_27"; -BA_ "GenSigSendType" SG_ 314 CAN_SCAN_INDEX_2LSB_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_SCAN_INDEX_2LSB_27 "CAN_SCAN_INDEX_2LSB_27"; -BA_ "GenMsgSendType" BO_ 313 1; -BA_ "GenMsgILSupport" BO_ 313 1; -BA_ "GenMsgNrOfRepetition" BO_ 313 0; -BA_ "GenMsgCycleTime" BO_ 313 0; -BA_ "NetworkInitialization" BO_ 313 0; -BA_ "GenMsgDelayTime" BO_ 313 0; -BA_ "GenSigVtEn" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigVtName" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 "CAN_DET_SUPER_RES_TARGET_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_ND_TARGET_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_ND_TARGET_26 "CAN_DET_ND_TARGET_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 "CAN_DET_HOST_VEH_CLUTTER_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_VALID_LEVEL_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_VALID_LEVEL_26 "CAN_DET_VALID_LEVEL_26"; -BA_ "GenSigStartValue" SG_ 313 CAN_DET_AZIMUTH_26 0; -BA_ "GenSigSendType" SG_ 313 CAN_DET_AZIMUTH_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_AZIMUTH_26 "CAN_DET_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_26 "CAN_DET_RANGE_26"; -BA_ "GenSigStartValue" SG_ 313 CAN_DET_RANGE_RATE_26 0; -BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_RATE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_RATE_26 "CAN_DET_RANGE_RATE_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_AMPLITUDE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_AMPLITUDE_26 "CAN_DET_AMPLITUDE_26"; -BA_ "GenSigSendType" SG_ 313 CAN_SCAN_INDEX_2LSB_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_SCAN_INDEX_2LSB_26 "CAN_SCAN_INDEX_2LSB_26"; -BA_ "GenMsgSendType" BO_ 312 1; -BA_ "GenMsgILSupport" BO_ 312 1; -BA_ "GenMsgNrOfRepetition" BO_ 312 0; -BA_ "GenMsgCycleTime" BO_ 312 0; -BA_ "NetworkInitialization" BO_ 312 0; -BA_ "GenMsgDelayTime" BO_ 312 0; -BA_ "GenSigVtEn" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigVtName" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 "CAN_DET_SUPER_RES_TARGET_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_ND_TARGET_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_ND_TARGET_25 "CAN_DET_ND_TARGET_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 "CAN_DET_HOST_VEH_CLUTTER_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_VALID_LEVEL_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_VALID_LEVEL_25 "CAN_DET_VALID_LEVEL_25"; -BA_ "GenSigStartValue" SG_ 312 CAN_DET_AZIMUTH_25 0; -BA_ "GenSigSendType" SG_ 312 CAN_DET_AZIMUTH_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_AZIMUTH_25 "CAN_DET_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_25 "CAN_DET_RANGE_25"; -BA_ "GenSigStartValue" SG_ 312 CAN_DET_RANGE_RATE_25 0; -BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_RATE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_RATE_25 "CAN_DET_RANGE_RATE_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_AMPLITUDE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_AMPLITUDE_25 "CAN_DET_AMPLITUDE_25"; -BA_ "GenSigSendType" SG_ 312 CAN_SCAN_INDEX_2LSB_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_SCAN_INDEX_2LSB_25 "CAN_SCAN_INDEX_2LSB_25"; -BA_ "GenMsgSendType" BO_ 311 1; -BA_ "GenMsgILSupport" BO_ 311 1; -BA_ "GenMsgNrOfRepetition" BO_ 311 0; -BA_ "GenMsgCycleTime" BO_ 311 0; -BA_ "NetworkInitialization" BO_ 311 0; -BA_ "GenMsgDelayTime" BO_ 311 0; -BA_ "GenSigVtEn" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigVtName" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 "CAN_DET_SUPER_RES_TARGET_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_ND_TARGET_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_ND_TARGET_24 "CAN_DET_ND_TARGET_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 "CAN_DET_HOST_VEH_CLUTTER_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_VALID_LEVEL_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_VALID_LEVEL_24 "CAN_DET_VALID_LEVEL_24"; -BA_ "GenSigStartValue" SG_ 311 CAN_DET_AZIMUTH_24 0; -BA_ "GenSigSendType" SG_ 311 CAN_DET_AZIMUTH_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_AZIMUTH_24 "CAN_DET_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_24 "CAN_DET_RANGE_24"; -BA_ "GenSigStartValue" SG_ 311 CAN_DET_RANGE_RATE_24 0; -BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_RATE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_RATE_24 "CAN_DET_RANGE_RATE_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_AMPLITUDE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_AMPLITUDE_24 "CAN_DET_AMPLITUDE_24"; -BA_ "GenSigSendType" SG_ 311 CAN_SCAN_INDEX_2LSB_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_SCAN_INDEX_2LSB_24 "CAN_SCAN_INDEX_2LSB_24"; -BA_ "GenMsgSendType" BO_ 310 1; -BA_ "GenMsgILSupport" BO_ 310 1; -BA_ "GenMsgNrOfRepetition" BO_ 310 0; -BA_ "GenMsgCycleTime" BO_ 310 0; -BA_ "NetworkInitialization" BO_ 310 0; -BA_ "GenMsgDelayTime" BO_ 310 0; -BA_ "GenSigVtEn" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigVtName" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 "CAN_DET_SUPER_RES_TARGET_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_ND_TARGET_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_ND_TARGET_23 "CAN_DET_ND_TARGET_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 "CAN_DET_HOST_VEH_CLUTTER_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_VALID_LEVEL_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_VALID_LEVEL_23 "CAN_DET_VALID_LEVEL_23"; -BA_ "GenSigStartValue" SG_ 310 CAN_DET_AZIMUTH_23 0; -BA_ "GenSigSendType" SG_ 310 CAN_DET_AZIMUTH_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_AZIMUTH_23 "CAN_DET_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_23 "CAN_DET_RANGE_23"; -BA_ "GenSigStartValue" SG_ 310 CAN_DET_RANGE_RATE_23 0; -BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_RATE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_RATE_23 "CAN_DET_RANGE_RATE_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_AMPLITUDE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_AMPLITUDE_23 "CAN_DET_AMPLITUDE_23"; -BA_ "GenSigSendType" SG_ 310 CAN_SCAN_INDEX_2LSB_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_SCAN_INDEX_2LSB_23 "CAN_SCAN_INDEX_2LSB_23"; -BA_ "GenMsgSendType" BO_ 309 1; -BA_ "GenMsgILSupport" BO_ 309 1; -BA_ "GenMsgNrOfRepetition" BO_ 309 0; -BA_ "GenMsgCycleTime" BO_ 309 0; -BA_ "NetworkInitialization" BO_ 309 0; -BA_ "GenMsgDelayTime" BO_ 309 0; -BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 "CAN_DET_CONFID_AZIMUTH_22"; -BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 "CAN_DET_CONFID_AZIMUTH_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 "CAN_DET_CONFID_AZIMUTH_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22 "CAN_DET_SUPER_RES_TARGET_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22 "CAN_DET_ND_TARGET_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22 "CAN_DET_HOST_VEH_CLUTTER_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22 "CAN_DET_VALID_LEVEL_22"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22 "CAN_DET_AZIMUTH_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22 "CAN_DET_RANGE_22"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22 "CAN_DET_RANGE_RATE_22"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22 "CAN_DET_AMPLITUDE_22"; -BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22 0; -BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22 "CAN_SCAN_INDEX_2LSB_22"; -BA_ "GenMsgSendType" BO_ 308 1; -BA_ "GenMsgILSupport" BO_ 308 1; -BA_ "GenMsgNrOfRepetition" BO_ 308 0; -BA_ "GenMsgCycleTime" BO_ 308 0; -BA_ "NetworkInitialization" BO_ 308 0; -BA_ "GenMsgDelayTime" BO_ 308 0; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 "CAN_DET_CONFID_AZIMUTH_21"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 "CAN_DET_CONFID_AZIMUTH_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 "CAN_DET_CONFID_AZIMUTH_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21 "CAN_DET_SUPER_RES_TARGET_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21 "CAN_DET_ND_TARGET_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21 "CAN_DET_HOST_VEH_CLUTTER_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21 "CAN_DET_VALID_LEVEL_21"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21 "CAN_DET_AZIMUTH_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21 "CAN_DET_RANGE_21"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21 "CAN_DET_RANGE_RATE_21"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21 "CAN_DET_AMPLITUDE_21"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21 "CAN_SCAN_INDEX_2LSB_21"; -BA_ "GenMsgSendType" BO_ 307 1; -BA_ "GenMsgILSupport" BO_ 307 1; -BA_ "GenMsgNrOfRepetition" BO_ 307 0; -BA_ "GenMsgCycleTime" BO_ 307 0; -BA_ "NetworkInitialization" BO_ 307 0; -BA_ "GenMsgDelayTime" BO_ 307 0; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 "CAN_DET_CONFID_AZIMUTH_20"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 "CAN_DET_CONFID_AZIMUTH_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 "CAN_DET_CONFID_AZIMUTH_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20 "CAN_DET_SUPER_RES_TARGET_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20 "CAN_DET_ND_TARGET_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20 "CAN_DET_HOST_VEH_CLUTTER_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20 "CAN_DET_VALID_LEVEL_20"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20 "CAN_DET_AZIMUTH_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20 "CAN_DET_RANGE_20"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20 "CAN_DET_RANGE_RATE_20"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20 "CAN_DET_AMPLITUDE_20"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20 "CAN_SCAN_INDEX_2LSB_20"; -BA_ "GenMsgSendType" BO_ 306 1; -BA_ "GenMsgILSupport" BO_ 306 1; -BA_ "GenMsgNrOfRepetition" BO_ 306 0; -BA_ "GenMsgCycleTime" BO_ 306 0; -BA_ "NetworkInitialization" BO_ 306 0; -BA_ "GenMsgDelayTime" BO_ 306 0; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 "CAN_DET_CONFID_AZIMUTH_19"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 "CAN_DET_CONFID_AZIMUTH_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 "CAN_DET_CONFID_AZIMUTH_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19 "CAN_DET_SUPER_RES_TARGET_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19 "CAN_DET_ND_TARGET_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19 "CAN_DET_HOST_VEH_CLUTTER_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19 "CAN_DET_VALID_LEVEL_19"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19 "CAN_DET_AZIMUTH_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19 "CAN_DET_RANGE_19"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19 "CAN_DET_RANGE_RATE_19"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19 "CAN_DET_AMPLITUDE_19"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19 "CAN_SCAN_INDEX_2LSB_19"; -BA_ "GenMsgSendType" BO_ 305 1; -BA_ "GenMsgILSupport" BO_ 305 1; -BA_ "GenMsgNrOfRepetition" BO_ 305 0; -BA_ "GenMsgCycleTime" BO_ 305 0; -BA_ "NetworkInitialization" BO_ 305 0; -BA_ "GenMsgDelayTime" BO_ 305 0; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 "CAN_DET_CONFID_AZIMUTH_18"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 "CAN_DET_CONFID_AZIMUTH_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 "CAN_DET_CONFID_AZIMUTH_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18 "CAN_DET_SUPER_RES_TARGET_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18 "CAN_DET_ND_TARGET_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18 "CAN_DET_HOST_VEH_CLUTTER_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18 "CAN_DET_VALID_LEVEL_18"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18 "CAN_DET_AZIMUTH_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18 "CAN_DET_RANGE_18"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18 "CAN_DET_RANGE_RATE_18"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18 "CAN_DET_AMPLITUDE_18"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18 "CAN_SCAN_INDEX_2LSB_18"; -BA_ "GenMsgSendType" BO_ 341 1; -BA_ "GenMsgILSupport" BO_ 341 1; -BA_ "GenMsgNrOfRepetition" BO_ 341 0; -BA_ "GenMsgCycleTime" BO_ 341 0; -BA_ "NetworkInitialization" BO_ 341 0; -BA_ "GenMsgDelayTime" BO_ 341 0; -BA_ "GenSigVtEn" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigVtName" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 "CAN_DET_SUPER_RES_TARGET_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_ND_TARGET_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_ND_TARGET_54 "CAN_DET_ND_TARGET_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 "CAN_DET_HOST_VEH_CLUTTER_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_VALID_LEVEL_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_VALID_LEVEL_54 "CAN_DET_VALID_LEVEL_54"; -BA_ "GenSigStartValue" SG_ 341 CAN_DET_AZIMUTH_54 0; -BA_ "GenSigSendType" SG_ 341 CAN_DET_AZIMUTH_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_AZIMUTH_54 "CAN_DET_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_54 "CAN_DET_RANGE_54"; -BA_ "GenSigStartValue" SG_ 341 CAN_DET_RANGE_RATE_54 0; -BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_RATE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_RATE_54 "CAN_DET_RANGE_RATE_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_AMPLITUDE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_AMPLITUDE_54 "CAN_DET_AMPLITUDE_54"; -BA_ "GenSigSendType" SG_ 341 CAN_SCAN_INDEX_2LSB_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_SCAN_INDEX_2LSB_54 "CAN_SCAN_INDEX_2LSB_54"; -BA_ "GenMsgSendType" BO_ 340 1; -BA_ "GenMsgILSupport" BO_ 340 1; -BA_ "GenMsgNrOfRepetition" BO_ 340 0; -BA_ "GenMsgCycleTime" BO_ 340 0; -BA_ "NetworkInitialization" BO_ 340 0; -BA_ "GenMsgDelayTime" BO_ 340 0; -BA_ "GenSigVtEn" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigVtName" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 "CAN_DET_SUPER_RES_TARGET_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_ND_TARGET_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_ND_TARGET_53 "CAN_DET_ND_TARGET_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 "CAN_DET_HOST_VEH_CLUTTER_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_VALID_LEVEL_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_VALID_LEVEL_53 "CAN_DET_VALID_LEVEL_53"; -BA_ "GenSigStartValue" SG_ 340 CAN_DET_AZIMUTH_53 0; -BA_ "GenSigSendType" SG_ 340 CAN_DET_AZIMUTH_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_AZIMUTH_53 "CAN_DET_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_53 "CAN_DET_RANGE_53"; -BA_ "GenSigStartValue" SG_ 340 CAN_DET_RANGE_RATE_53 0; -BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_RATE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_RATE_53 "CAN_DET_RANGE_RATE_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_AMPLITUDE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_AMPLITUDE_53 "CAN_DET_AMPLITUDE_53"; -BA_ "GenSigSendType" SG_ 340 CAN_SCAN_INDEX_2LSB_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_SCAN_INDEX_2LSB_53 "CAN_SCAN_INDEX_2LSB_53"; -BA_ "GenMsgSendType" BO_ 339 1; -BA_ "GenMsgILSupport" BO_ 339 1; -BA_ "GenMsgNrOfRepetition" BO_ 339 0; -BA_ "GenMsgCycleTime" BO_ 339 0; -BA_ "NetworkInitialization" BO_ 339 0; -BA_ "GenMsgDelayTime" BO_ 339 0; -BA_ "GenSigVtEn" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigVtName" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 "CAN_DET_SUPER_RES_TARGET_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_ND_TARGET_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_ND_TARGET_52 "CAN_DET_ND_TARGET_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 "CAN_DET_HOST_VEH_CLUTTER_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_VALID_LEVEL_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_VALID_LEVEL_52 "CAN_DET_VALID_LEVEL_52"; -BA_ "GenSigStartValue" SG_ 339 CAN_DET_AZIMUTH_52 0; -BA_ "GenSigSendType" SG_ 339 CAN_DET_AZIMUTH_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_AZIMUTH_52 "CAN_DET_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_52 "CAN_DET_RANGE_52"; -BA_ "GenSigStartValue" SG_ 339 CAN_DET_RANGE_RATE_52 0; -BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_RATE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_RATE_52 "CAN_DET_RANGE_RATE_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_AMPLITUDE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_AMPLITUDE_52 "CAN_DET_AMPLITUDE_52"; -BA_ "GenSigSendType" SG_ 339 CAN_SCAN_INDEX_2LSB_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_SCAN_INDEX_2LSB_52 "CAN_SCAN_INDEX_2LSB_52"; -BA_ "GenMsgSendType" BO_ 338 1; -BA_ "GenMsgILSupport" BO_ 338 1; -BA_ "GenMsgNrOfRepetition" BO_ 338 0; -BA_ "GenMsgCycleTime" BO_ 338 0; -BA_ "NetworkInitialization" BO_ 338 0; -BA_ "GenMsgDelayTime" BO_ 338 0; -BA_ "GenSigVtEn" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigVtName" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 "CAN_DET_SUPER_RES_TARGET_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_ND_TARGET_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_ND_TARGET_51 "CAN_DET_ND_TARGET_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 "CAN_DET_HOST_VEH_CLUTTER_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_VALID_LEVEL_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_VALID_LEVEL_51 "CAN_DET_VALID_LEVEL_51"; -BA_ "GenSigStartValue" SG_ 338 CAN_DET_AZIMUTH_51 0; -BA_ "GenSigSendType" SG_ 338 CAN_DET_AZIMUTH_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_AZIMUTH_51 "CAN_DET_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_51 "CAN_DET_RANGE_51"; -BA_ "GenSigStartValue" SG_ 338 CAN_DET_RANGE_RATE_51 0; -BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_RATE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_RATE_51 "CAN_DET_RANGE_RATE_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_AMPLITUDE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_AMPLITUDE_51 "CAN_DET_AMPLITUDE_51"; -BA_ "GenSigSendType" SG_ 338 CAN_SCAN_INDEX_2LSB_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_SCAN_INDEX_2LSB_51 "CAN_SCAN_INDEX_2LSB_51"; -BA_ "GenMsgSendType" BO_ 337 1; -BA_ "GenMsgILSupport" BO_ 337 1; -BA_ "GenMsgNrOfRepetition" BO_ 337 0; -BA_ "GenMsgCycleTime" BO_ 337 0; -BA_ "NetworkInitialization" BO_ 337 0; -BA_ "GenMsgDelayTime" BO_ 337 0; -BA_ "GenSigVtEn" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigVtName" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 "CAN_DET_SUPER_RES_TARGET_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_ND_TARGET_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_ND_TARGET_50 "CAN_DET_ND_TARGET_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 "CAN_DET_HOST_VEH_CLUTTER_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_VALID_LEVEL_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_VALID_LEVEL_50 "CAN_DET_VALID_LEVEL_50"; -BA_ "GenSigStartValue" SG_ 337 CAN_DET_AZIMUTH_50 0; -BA_ "GenSigSendType" SG_ 337 CAN_DET_AZIMUTH_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_AZIMUTH_50 "CAN_DET_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_50 "CAN_DET_RANGE_50"; -BA_ "GenSigStartValue" SG_ 337 CAN_DET_RANGE_RATE_50 0; -BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_RATE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_RATE_50 "CAN_DET_RANGE_RATE_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_AMPLITUDE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_AMPLITUDE_50 "CAN_DET_AMPLITUDE_50"; -BA_ "GenSigSendType" SG_ 337 CAN_SCAN_INDEX_2LSB_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_SCAN_INDEX_2LSB_50 "CAN_SCAN_INDEX_2LSB_50"; -BA_ "GenMsgSendType" BO_ 336 1; -BA_ "GenMsgILSupport" BO_ 336 1; -BA_ "GenMsgNrOfRepetition" BO_ 336 0; -BA_ "GenMsgCycleTime" BO_ 336 0; -BA_ "NetworkInitialization" BO_ 336 0; -BA_ "GenMsgDelayTime" BO_ 336 0; -BA_ "GenSigVtEn" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigVtName" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 "CAN_DET_SUPER_RES_TARGET_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_ND_TARGET_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_ND_TARGET_49 "CAN_DET_ND_TARGET_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 "CAN_DET_HOST_VEH_CLUTTER_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_VALID_LEVEL_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_VALID_LEVEL_49 "CAN_DET_VALID_LEVEL_49"; -BA_ "GenSigStartValue" SG_ 336 CAN_DET_AZIMUTH_49 0; -BA_ "GenSigSendType" SG_ 336 CAN_DET_AZIMUTH_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_AZIMUTH_49 "CAN_DET_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_49 "CAN_DET_RANGE_49"; -BA_ "GenSigStartValue" SG_ 336 CAN_DET_RANGE_RATE_49 0; -BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_RATE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_RATE_49 "CAN_DET_RANGE_RATE_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_AMPLITUDE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_AMPLITUDE_49 "CAN_DET_AMPLITUDE_49"; -BA_ "GenSigSendType" SG_ 336 CAN_SCAN_INDEX_2LSB_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_SCAN_INDEX_2LSB_49 "CAN_SCAN_INDEX_2LSB_49"; -BA_ "GenMsgSendType" BO_ 326 1; -BA_ "GenMsgILSupport" BO_ 326 1; -BA_ "GenMsgNrOfRepetition" BO_ 326 0; -BA_ "GenMsgCycleTime" BO_ 326 0; -BA_ "NetworkInitialization" BO_ 326 0; -BA_ "GenMsgDelayTime" BO_ 326 0; -BA_ "GenSigVtEn" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigVtName" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 "CAN_DET_SUPER_RES_TARGET_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_ND_TARGET_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_ND_TARGET_39 "CAN_DET_ND_TARGET_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 "CAN_DET_HOST_VEH_CLUTTER_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_VALID_LEVEL_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_VALID_LEVEL_39 "CAN_DET_VALID_LEVEL_39"; -BA_ "GenSigStartValue" SG_ 326 CAN_DET_AZIMUTH_39 0; -BA_ "GenSigSendType" SG_ 326 CAN_DET_AZIMUTH_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_AZIMUTH_39 "CAN_DET_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_39 "CAN_DET_RANGE_39"; -BA_ "GenSigStartValue" SG_ 326 CAN_DET_RANGE_RATE_39 0; -BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_RATE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_RATE_39 "CAN_DET_RANGE_RATE_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_AMPLITUDE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_AMPLITUDE_39 "CAN_DET_AMPLITUDE_39"; -BA_ "GenSigSendType" SG_ 326 CAN_SCAN_INDEX_2LSB_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_SCAN_INDEX_2LSB_39 "CAN_SCAN_INDEX_2LSB_39"; -BA_ "GenMsgSendType" BO_ 315 1; -BA_ "GenMsgILSupport" BO_ 315 1; -BA_ "GenMsgNrOfRepetition" BO_ 315 0; -BA_ "GenMsgCycleTime" BO_ 315 0; -BA_ "NetworkInitialization" BO_ 315 0; -BA_ "GenMsgDelayTime" BO_ 315 0; -BA_ "GenSigVtEn" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigVtName" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 "CAN_DET_SUPER_RES_TARGET_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_ND_TARGET_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_ND_TARGET_28 "CAN_DET_ND_TARGET_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 "CAN_DET_HOST_VEH_CLUTTER_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_VALID_LEVEL_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_VALID_LEVEL_28 "CAN_DET_VALID_LEVEL_28"; -BA_ "GenSigStartValue" SG_ 315 CAN_DET_AZIMUTH_28 0; -BA_ "GenSigSendType" SG_ 315 CAN_DET_AZIMUTH_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_AZIMUTH_28 "CAN_DET_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_28 "CAN_DET_RANGE_28"; -BA_ "GenSigStartValue" SG_ 315 CAN_DET_RANGE_RATE_28 0; -BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_RATE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_RATE_28 "CAN_DET_RANGE_RATE_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_AMPLITUDE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_AMPLITUDE_28 "CAN_DET_AMPLITUDE_28"; -BA_ "GenSigSendType" SG_ 315 CAN_SCAN_INDEX_2LSB_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_SCAN_INDEX_2LSB_28 "CAN_SCAN_INDEX_2LSB_28"; -BA_ "GenMsgSendType" BO_ 304 1; -BA_ "GenMsgILSupport" BO_ 304 1; -BA_ "GenMsgNrOfRepetition" BO_ 304 0; -BA_ "GenMsgCycleTime" BO_ 304 0; -BA_ "NetworkInitialization" BO_ 304 0; -BA_ "GenMsgDelayTime" BO_ 304 0; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 "CAN_DET_CONFID_AZIMUTH_17"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 "CAN_DET_CONFID_AZIMUTH_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 "CAN_DET_CONFID_AZIMUTH_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17 "CAN_DET_SUPER_RES_TARGET_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17 "CAN_DET_ND_TARGET_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17 "CAN_DET_HOST_VEH_CLUTTER_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17 "CAN_DET_VALID_LEVEL_17"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17 "CAN_DET_AZIMUTH_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17 "CAN_DET_RANGE_17"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17 "CAN_DET_RANGE_RATE_17"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17 "CAN_DET_AMPLITUDE_17"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17 "CAN_SCAN_INDEX_2LSB_17"; -BA_ "GenMsgSendType" BO_ 303 1; -BA_ "GenMsgILSupport" BO_ 303 1; -BA_ "GenMsgNrOfRepetition" BO_ 303 0; -BA_ "GenMsgCycleTime" BO_ 303 0; -BA_ "NetworkInitialization" BO_ 303 0; -BA_ "GenMsgDelayTime" BO_ 303 0; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 "CAN_DET_CONFID_AZIMUTH_16"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 "CAN_DET_CONFID_AZIMUTH_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 "CAN_DET_CONFID_AZIMUTH_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16 "CAN_DET_SUPER_RES_TARGET_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16 "CAN_DET_ND_TARGET_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16 "CAN_DET_HOST_VEH_CLUTTER_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16 "CAN_DET_VALID_LEVEL_16"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16 "CAN_DET_AZIMUTH_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16 "CAN_DET_RANGE_16"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16 "CAN_DET_RANGE_RATE_16"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16 "CAN_DET_AMPLITUDE_16"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16 "CAN_SCAN_INDEX_2LSB_16"; -BA_ "GenMsgSendType" BO_ 302 1; -BA_ "GenMsgILSupport" BO_ 302 1; -BA_ "GenMsgNrOfRepetition" BO_ 302 0; -BA_ "GenMsgCycleTime" BO_ 302 0; -BA_ "NetworkInitialization" BO_ 302 0; -BA_ "GenMsgDelayTime" BO_ 302 0; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 "CAN_DET_CONFID_AZIMUTH_15"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 "CAN_DET_CONFID_AZIMUTH_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 "CAN_DET_CONFID_AZIMUTH_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15 "CAN_DET_SUPER_RES_TARGET_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15 "CAN_DET_ND_TARGET_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15 "CAN_DET_HOST_VEH_CLUTTER_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15 "CAN_DET_VALID_LEVEL_15"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15 "CAN_DET_AZIMUTH_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15 "CAN_DET_RANGE_15"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15 "CAN_DET_RANGE_RATE_15"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15 "CAN_DET_AMPLITUDE_15"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15 "CAN_SCAN_INDEX_2LSB_15"; -BA_ "GenMsgSendType" BO_ 301 1; -BA_ "GenMsgILSupport" BO_ 301 1; -BA_ "GenMsgNrOfRepetition" BO_ 301 0; -BA_ "GenMsgCycleTime" BO_ 301 0; -BA_ "NetworkInitialization" BO_ 301 0; -BA_ "GenMsgDelayTime" BO_ 301 0; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 "CAN_DET_CONFID_AZIMUTH_14"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 "CAN_DET_CONFID_AZIMUTH_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 "CAN_DET_CONFID_AZIMUTH_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14 "CAN_DET_SUPER_RES_TARGET_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14 "CAN_DET_ND_TARGET_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14 "CAN_DET_HOST_VEH_CLUTTER_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14 "CAN_DET_VALID_LEVEL_14"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14 "CAN_DET_AZIMUTH_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14 "CAN_DET_RANGE_14"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14 "CAN_DET_RANGE_RATE_14"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14 "CAN_DET_AMPLITUDE_14"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14 "CAN_SCAN_INDEX_2LSB_14"; -BA_ "GenMsgSendType" BO_ 300 1; -BA_ "GenMsgILSupport" BO_ 300 1; -BA_ "GenMsgNrOfRepetition" BO_ 300 0; -BA_ "GenMsgCycleTime" BO_ 300 0; -BA_ "NetworkInitialization" BO_ 300 0; -BA_ "GenMsgDelayTime" BO_ 300 0; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 "CAN_DET_CONFID_AZIMUTH_13"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 "CAN_DET_CONFID_AZIMUTH_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 "CAN_DET_CONFID_AZIMUTH_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13 "CAN_DET_SUPER_RES_TARGET_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13 "CAN_DET_ND_TARGET_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13 "CAN_DET_HOST_VEH_CLUTTER_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13 "CAN_DET_VALID_LEVEL_13"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13 "CAN_DET_AZIMUTH_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13 "CAN_DET_RANGE_13"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13 "CAN_DET_RANGE_RATE_13"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13 "CAN_DET_AMPLITUDE_13"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13 "CAN_SCAN_INDEX_2LSB_13"; -BA_ "GenMsgSendType" BO_ 299 1; -BA_ "GenMsgILSupport" BO_ 299 1; -BA_ "GenMsgNrOfRepetition" BO_ 299 0; -BA_ "GenMsgCycleTime" BO_ 299 0; -BA_ "NetworkInitialization" BO_ 299 0; -BA_ "GenMsgDelayTime" BO_ 299 0; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 "CAN_DET_CONFID_AZIMUTH_12"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 "CAN_DET_CONFID_AZIMUTH_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 "CAN_DET_CONFID_AZIMUTH_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12 "CAN_DET_SUPER_RES_TARGET_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12 "CAN_DET_ND_TARGET_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12 "CAN_DET_HOST_VEH_CLUTTER_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12 "CAN_DET_VALID_LEVEL_12"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12 "CAN_DET_AZIMUTH_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12 "CAN_DET_RANGE_12"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12 "CAN_DET_RANGE_RATE_12"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12 "CAN_DET_AMPLITUDE_12"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12 "CAN_SCAN_INDEX_2LSB_12"; -BA_ "GenMsgSendType" BO_ 298 1; -BA_ "GenMsgILSupport" BO_ 298 1; -BA_ "GenMsgNrOfRepetition" BO_ 298 0; -BA_ "GenMsgCycleTime" BO_ 298 0; -BA_ "NetworkInitialization" BO_ 298 0; -BA_ "GenMsgDelayTime" BO_ 298 0; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 "CAN_DET_CONFID_AZIMUTH_11"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 "CAN_DET_CONFID_AZIMUTH_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 "CAN_DET_CONFID_AZIMUTH_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11 "CAN_DET_SUPER_RES_TARGET_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11 "CAN_DET_ND_TARGET_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11 "CAN_DET_HOST_VEH_CLUTTER_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11 "CAN_DET_VALID_LEVEL_11"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11 "CAN_DET_AZIMUTH_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11 "CAN_DET_RANGE_11"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11 "CAN_DET_RANGE_RATE_11"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11 "CAN_DET_AMPLITUDE_11"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11 "CAN_SCAN_INDEX_2LSB_11"; -BA_ "GenMsgSendType" BO_ 297 1; -BA_ "GenMsgILSupport" BO_ 297 1; -BA_ "GenMsgNrOfRepetition" BO_ 297 0; -BA_ "GenMsgCycleTime" BO_ 297 0; -BA_ "NetworkInitialization" BO_ 297 0; -BA_ "GenMsgDelayTime" BO_ 297 0; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 "CAN_DET_CONFID_AZIMUTH_10"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 "CAN_DET_CONFID_AZIMUTH_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 "CAN_DET_CONFID_AZIMUTH_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10 "CAN_DET_SUPER_RES_TARGET_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10 "CAN_DET_ND_TARGET_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10 "CAN_DET_HOST_VEH_CLUTTER_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10 "CAN_DET_VALID_LEVEL_10"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10 "CAN_DET_AZIMUTH_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10 "CAN_DET_RANGE_10"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10 "CAN_DET_RANGE_RATE_10"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10 "CAN_DET_AMPLITUDE_10"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10 "CAN_SCAN_INDEX_2LSB_10"; -BA_ "GenMsgSendType" BO_ 296 1; -BA_ "GenMsgILSupport" BO_ 296 1; -BA_ "GenMsgNrOfRepetition" BO_ 296 0; -BA_ "GenMsgCycleTime" BO_ 296 0; -BA_ "NetworkInitialization" BO_ 296 0; -BA_ "GenMsgDelayTime" BO_ 296 0; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 "CAN_DET_CONFID_AZIMUTH_09"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 "CAN_DET_CONFID_AZIMUTH_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 "CAN_DET_CONFID_AZIMUTH_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09 "CAN_DET_SUPER_RES_TARGET_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09 "CAN_DET_ND_TARGET_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09 "CAN_DET_HOST_VEH_CLUTTER_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09 "CAN_DET_VALID_LEVEL_09"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09 "CAN_DET_AZIMUTH_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09 "CAN_DET_RANGE_09"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09 "CAN_DET_RANGE_RATE_09"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09 "CAN_DET_AMPLITUDE_09"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09 "CAN_SCAN_INDEX_2LSB_09"; -BA_ "GenMsgSendType" BO_ 295 1; -BA_ "GenMsgILSupport" BO_ 295 1; -BA_ "GenMsgNrOfRepetition" BO_ 295 0; -BA_ "GenMsgCycleTime" BO_ 295 0; -BA_ "NetworkInitialization" BO_ 295 0; -BA_ "GenMsgDelayTime" BO_ 295 0; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 "CAN_DET_CONFID_AZIMUTH_08"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 "CAN_DET_CONFID_AZIMUTH_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 "CAN_DET_CONFID_AZIMUTH_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08 "CAN_DET_SUPER_RES_TARGET_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08 "CAN_DET_ND_TARGET_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08 "CAN_DET_HOST_VEH_CLUTTER_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08 "CAN_DET_VALID_LEVEL_08"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08 "CAN_DET_AZIMUTH_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08 "CAN_DET_RANGE_08"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08 "CAN_DET_RANGE_RATE_08"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08 "CAN_DET_AMPLITUDE_08"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08 "CAN_SCAN_INDEX_2LSB_08"; -BA_ "GenMsgSendType" BO_ 294 1; -BA_ "GenMsgILSupport" BO_ 294 1; -BA_ "GenMsgNrOfRepetition" BO_ 294 0; -BA_ "GenMsgCycleTime" BO_ 294 0; -BA_ "NetworkInitialization" BO_ 294 0; -BA_ "GenMsgDelayTime" BO_ 294 0; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 "CAN_DET_CONFID_AZIMUTH_07"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 "CAN_DET_CONFID_AZIMUTH_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 "CAN_DET_CONFID_AZIMUTH_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07 "CAN_DET_SUPER_RES_TARGET_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07 "CAN_DET_ND_TARGET_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07 "CAN_DET_HOST_VEH_CLUTTER_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07 "CAN_DET_VALID_LEVEL_07"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07 "CAN_DET_AZIMUTH_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07 "CAN_DET_RANGE_07"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07 "CAN_DET_RANGE_RATE_07"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07 "CAN_DET_AMPLITUDE_07"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07 "CAN_SCAN_INDEX_2LSB_07"; -BA_ "GenMsgSendType" BO_ 293 1; -BA_ "GenMsgILSupport" BO_ 293 1; -BA_ "GenMsgNrOfRepetition" BO_ 293 0; -BA_ "GenMsgCycleTime" BO_ 293 0; -BA_ "NetworkInitialization" BO_ 293 0; -BA_ "GenMsgDelayTime" BO_ 293 0; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 "CAN_DET_CONFID_AZIMUTH_06"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 "CAN_DET_CONFID_AZIMUTH_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 "CAN_DET_CONFID_AZIMUTH_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06 "CAN_DET_SUPER_RES_TARGET_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06 "CAN_DET_ND_TARGET_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06 "CAN_DET_HOST_VEH_CLUTTER_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06 "CAN_DET_VALID_LEVEL_06"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06 "CAN_DET_AZIMUTH_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06 "CAN_DET_RANGE_06"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06 "CAN_DET_RANGE_RATE_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06 "CAN_DET_AMPLITUDE_06"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06 "CAN_SCAN_INDEX_2LSB_06"; -BA_ "GenMsgSendType" BO_ 292 1; -BA_ "GenMsgILSupport" BO_ 292 1; -BA_ "GenMsgNrOfRepetition" BO_ 292 0; -BA_ "GenMsgCycleTime" BO_ 292 0; -BA_ "NetworkInitialization" BO_ 292 0; -BA_ "GenMsgDelayTime" BO_ 292 0; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 "CAN_DET_CONFID_AZIMUTH_05"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 "CAN_DET_CONFID_AZIMUTH_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 "CAN_DET_CONFID_AZIMUTH_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05 "CAN_DET_SUPER_RES_TARGET_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05 "CAN_DET_ND_TARGET_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05 "CAN_DET_HOST_VEH_CLUTTER_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05 "CAN_DET_VALID_LEVEL_05"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05 "CAN_DET_AZIMUTH_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05 "CAN_DET_RANGE_05"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05 "CAN_DET_RANGE_RATE_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05 "CAN_DET_AMPLITUDE_05"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05 "CAN_SCAN_INDEX_2LSB_05"; -BA_ "GenMsgSendType" BO_ 290 1; -BA_ "GenMsgILSupport" BO_ 290 1; -BA_ "GenMsgNrOfRepetition" BO_ 290 0; -BA_ "GenMsgCycleTime" BO_ 290 0; -BA_ "NetworkInitialization" BO_ 290 0; -BA_ "GenMsgDelayTime" BO_ 290 0; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 "CAN_DET_CONFID_AZIMUTH_03"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 "CAN_DET_CONFID_AZIMUTH_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 "CAN_DET_CONFID_AZIMUTH_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03 "CAN_DET_SUPER_RES_TARGET_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03 "CAN_DET_ND_TARGET_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03 "CAN_DET_HOST_VEH_CLUTTER_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03 "CAN_DET_VALID_LEVEL_03"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03 "CAN_DET_AZIMUTH_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03 "CAN_DET_RANGE_03"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03 "CAN_DET_RANGE_RATE_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03 "CAN_DET_AMPLITUDE_03"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03 "CAN_SCAN_INDEX_2LSB_03"; -BA_ "GenMsgSendType" BO_ 289 1; -BA_ "GenMsgILSupport" BO_ 289 1; -BA_ "GenMsgNrOfRepetition" BO_ 289 0; -BA_ "GenMsgCycleTime" BO_ 289 0; -BA_ "NetworkInitialization" BO_ 289 0; -BA_ "GenMsgDelayTime" BO_ 289 0; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 "CAN_DET_CONFID_AZIMUTH_02"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 "CAN_DET_CONFID_AZIMUTH_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 "CAN_DET_CONFID_AZIMUTH_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02 "CAN_DET_SUPER_RES_TARGET_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02 "CAN_DET_ND_TARGET_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02 "CAN_DET_HOST_VEH_CLUTTER_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02 "CAN_DET_VALID_LEVEL_02"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02 "CAN_DET_AZIMUTH_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02 "CAN_DET_RANGE_02"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02 "CAN_DET_RANGE_RATE_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02 "CAN_DET_AMPLITUDE_02"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02 "CAN_SCAN_INDEX_2LSB_02"; -BA_ "GenMsgSendType" BO_ 256 1; -BA_ "GenMsgILSupport" BO_ 256 1; -BA_ "GenMsgNrOfRepetition" BO_ 256 0; -BA_ "NetworkInitialization" BO_ 256 0; -BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MINOR_MRR "CAN_PCAN_MINOR_MRR"; -BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MINOR_MRR 0; -BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MAJOR_MRR "CAN_PCAN_MAJOR_MRR"; -BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MAJOR_MRR 0; -BA_ "GenMsgCycleTime" BO_ 257 30; -BA_ "GenMsgSendType" BO_ 257 0; -BA_ "GenMsgILSupport" BO_ 257 1; -BA_ "GenMsgNrOfRepetition" BO_ 257 0; -BA_ "NetworkInitialization" BO_ 257 0; -BA_ "GenSigCmt" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtEn" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtName" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtName" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigCmt" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigStartValue" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE 0; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_MNR 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_EXT_COND_NOK 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_NOT_START 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_OVERHEAT_ERROR 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_NOT_OP 0; -BA_ "GenSigCmt" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigVtEn" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigVtName" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigSendType" SG_ 257 CAN_XCVR_OPERATIONAL 0; -BA_ "GenMsgSendType" BO_ 288 1; -BA_ "GenMsgILSupport" BO_ 288 1; -BA_ "GenMsgNrOfRepetition" BO_ 288 0; -BA_ "GenMsgCycleTime" BO_ 288 0; -BA_ "NetworkInitialization" BO_ 288 0; -BA_ "GenMsgDelayTime" BO_ 288 0; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 "CAN_DET_CONFID_AZIMUTH_01"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 "CAN_DET_CONFID_AZIMUTH_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 "CAN_DET_CONFID_AZIMUTH_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01 "CAN_DET_SUPER_RES_TARGET_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01 "CAN_DET_ND_TARGET_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01 "CAN_DET_HOST_VEH_CLUTTER_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01 "CAN_DET_VALID_LEVEL_01"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01 "CAN_DET_AZIMUTH_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01 "CAN_DET_RANGE_01"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01 "CAN_DET_RANGE_RATE_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01 "CAN_DET_AMPLITUDE_01"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01 "CAN_SCAN_INDEX_2LSB_01"; -BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; -BA_DEF_DEF_ "CrossOver_LIN" "No"; -BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; -BA_DEF_DEF_ "ContentDependant" "No"; -BA_DEF_DEF_ "GenSigTimeoutTime_RCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_OCS" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_CCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_IPMA" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_SCCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_Generic_BCM" 0; -BA_DEF_DEF_ "NmMessage" "No"; -BA_DEF_DEF_ "DiagResponse" "No"; -BA_DEF_DEF_ "DiagRequest" "No"; -BA_DEF_DEF_ "TpTxIndex" 0; -BA_DEF_DEF_ "DiagState" "No"; -BA_DEF_DEF_ "TpApplType" ""; -BA_DEF_DEF_ "NmAsrMessage" "No"; -BA_DEF_DEF_ "Mulitplexer" "No"; -BA_DEF_DEF_ "ConfiguredTransmitter" "No"; -BA_DEF_DEF_ "EventRateOfChange" 10000; -BA_DEF_DEF_ "GenMsgHandlingTypeDoc" ""; -BA_DEF_DEF_ "GenMsgHandlingTypeCode" ""; -BA_DEF_DEF_ "GenMsgMarked" ""; -BA_DEF_DEF_ "GenSigMarked" ""; -BA_DEF_DEF_ "GenSigVtIndex" ""; -BA_DEF_DEF_ "GenSigVtName" ""; -BA_DEF_DEF_ "GenSigVtEn" ""; -BA_DEF_DEF_ "GenSigSNA" ""; -BA_DEF_DEF_ "GenSigCmt" ""; -BA_DEF_DEF_ "GenMsgCmt" ""; -BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; -BA_DEF_DEF_ "GenSigInactiveValue" 0; -BA_DEF_DEF_ "GenSigMissingSourceValue" 0; -BA_DEF_DEF_ "WakeupSignal" "No"; -BA_DEF_DEF_ "GenSigStartValue" 0; -BA_DEF_DEF_ "GenMsgILSupport" "Yes"; -BA_DEF_DEF_ "NetworkInitializationCommand" "No"; -BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; -BA_DEF_DEF_ "GenMsgCycleTime" 0; -BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; -BA_DEF_DEF_ "GenMsgDelayTime" 0; -BA_DEF_DEF_ "GenMsgNrOfRepetition" 0; -BA_DEF_DEF_ "GenMsgStartDelayTime" 0; -BA_DEF_DEF_ "NetworkInitialization" "No"; -BA_DEF_DEF_ "MessageGateway" "No"; -BA_DEF_DEF_ "ILUsed" "Yes"; -BA_DEF_DEF_ "NetworkInitializationUsed" "No"; -BA_DEF_DEF_ "PowerType" "Switched"; -BA_DEF_DEF_ "NodeStartUpTime" 250; -BA_DEF_DEF_ "NodeWakeUpTime" 10; -BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; -BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; -VAL_ 34 IPMA_PCAN_DataRangeCheck 1 "Fault Present" 0 "No Fault"; -VAL_ 34 IPMA_PCAN_MissingMsg 1 "Fault Present" 0 "No Fault "; -VAL_ 34 VINSignalCompareFailure 1 "Fault Present" 0 "No Fault"; -VAL_ 34 ModuleNotConfiguredError 1 "Fault Present" 0 "No Fault"; -VAL_ 34 CarCfgNotConfiguredError 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ARMtoDSPChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 DSPtoArmChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 HostToArmChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ARMtoHostChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 LoopBWOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 DSPOverrunFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte6_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TuningSensitivityFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 SaturatedTuningFreqFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 LocalOscPowerFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterPowerFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte6_bit0 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 XCVRDeviceSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 FreqSynthesizerSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 AnalogConverterDevicSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 SidelobeBlockage 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit1 1 "Fault Present" 0 "No Fault"; -VAL_ 33 MNRBlocked 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ECUTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 AlignmentRoutineFailedFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 UnreasonableRadarData 1 "Fault Present" 0 "No Fault"; -VAL_ 33 MicroprocessorTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 VerticalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 HorizontalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 FactoryAlignmentMode 1 "Fault Present" 0 "No Fault"; -VAL_ 33 BatteryLowFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 BatteryHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_1p25SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte3_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ThermistorOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_3p3DACSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_3p3RAWSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_5_SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterIDFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit3 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit2 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PCANMissingMsgFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PCANBusOff 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 InstructionSetCheckFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 StackOverflowFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 WatchdogFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PLLLockFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit1 1 "Fault Present" 0 "No Fault"; -VAL_ 33 RAMMemoryTestFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 USCValidationFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit3 1 "Fault Present" 0 "No Fault"; -VAL_ 33 KeepAliveChecksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ProgramCalibrationFlashChecksum 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ApplicationFlashChecksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 371 CAN_AUTO_ALIGN_HANGLE_QF 3 "Accurate" 2 "Inaccurate" 1 "Temporarily undefined" 0 "Undefined"; -VAL_ 371 CAN_ALIGNMENT_STATUS 15 "Undefined_2" 14 "Undefined_1" 13 "Low Amplitude (Flat-plate only)" 12 "No Peak (Flat-plate only)" 11 "Fail Ver and Hor OutOfRange" 10 "Fail Vertical Align OutOfRange" 9 "Fail Horizontal Align OutOfRange" 8 "Fail Time Out" 7 "Fail Only Right Target Found" 6 "Fail Only Left Target Found" 5 "Fail Variance Too Large" 4 "Fail Deviation Too Large" 3 "Fail No Target" 2 "Success" 1 "Busy" 0 "Off"; -VAL_ 371 CAN_ALIGNMENT_STATE 6 "Static alignment flat-plate" 5 "Static alignment 2-target" 4 "Static alignment 1-target" 3 "Service alignment" 2 "Short track alignment" 1 "Auto alignment" 0 "Off"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 351 CAN_DET_CONFID_AZIMUTH_64 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 350 CAN_DET_CONFID_AZIMUTH_63 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 349 CAN_DET_CONFID_AZIMUTH_62 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 348 CAN_DET_CONFID_AZIMUTH_61 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 347 CAN_DET_CONFID_AZIMUTH_60 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 346 CAN_DET_CONFID_AZIMUTH_59 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 345 CAN_DET_CONFID_AZIMUTH_58 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 344 CAN_DET_CONFID_AZIMUTH_57 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 343 CAN_DET_CONFID_AZIMUTH_56 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 342 CAN_DET_CONFID_AZIMUTH_55 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 335 CAN_DET_CONFID_AZIMUTH_48 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 334 CAN_DET_CONFID_AZIMUTH_47 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 333 CAN_DET_CONFID_AZIMUTH_46 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 332 CAN_DET_CONFID_AZIMUTH_45 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 331 CAN_DET_CONFID_AZIMUTH_44 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 330 CAN_DET_CONFID_AZIMUTH_43 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 329 CAN_DET_CONFID_AZIMUTH_42 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 328 CAN_DET_CONFID_AZIMUTH_41 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 327 CAN_DET_CONFID_AZIMUTH_40 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 325 CAN_DET_CONFID_AZIMUTH_38 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 324 CAN_DET_CONFID_AZIMUTH_37 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 323 CAN_DET_CONFID_AZIMUTH_36 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 322 CAN_DET_CONFID_AZIMUTH_35 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 321 CAN_DET_CONFID_AZIMUTH_34 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 320 CAN_DET_CONFID_AZIMUTH_33 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 319 CAN_DET_CONFID_AZIMUTH_32 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 318 CAN_DET_CONFID_AZIMUTH_31 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 317 CAN_DET_CONFID_AZIMUTH_30 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 316 CAN_DET_CONFID_AZIMUTH_29 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 314 CAN_DET_CONFID_AZIMUTH_27 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 313 CAN_DET_CONFID_AZIMUTH_26 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 312 CAN_DET_CONFID_AZIMUTH_25 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 311 CAN_DET_CONFID_AZIMUTH_24 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 310 CAN_DET_CONFID_AZIMUTH_23 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 309 CAN_DET_CONFID_AZIMUTH_22 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 341 CAN_DET_CONFID_AZIMUTH_54 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 340 CAN_DET_CONFID_AZIMUTH_53 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 339 CAN_DET_CONFID_AZIMUTH_52 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 338 CAN_DET_CONFID_AZIMUTH_51 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 337 CAN_DET_CONFID_AZIMUTH_50 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 336 CAN_DET_CONFID_AZIMUTH_49 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 326 CAN_DET_CONFID_AZIMUTH_39 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 315 CAN_DET_CONFID_AZIMUTH_28 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 257 CAN_INTERFERENCE_TYPE 2 "Star PD-Like" 1 "Slow FMCW" 0 "No Interference"; -VAL_ 257 CAN_RECOMMEND_UNCONVERGE 1 "Recommended" 0 "Not Recommended"; -VAL_ 257 CAN_RADAR_ALIGN_INCOMPLETE 1 "Alignment Incomplete" 0 "Alignment Completed"; -VAL_ 257 CAN_BLOCKAGE_SIDELOBE 1 "Radar Blockage" 0 "No Radar Blockage"; -VAL_ 257 CAN_BLOCKAGE_MNR 1 "Radar Blockage" 0 "No Radar Blockage"; -VAL_ 257 CAN_RADAR_EXT_COND_NOK 1 "Too high temp or insufficient pw" 0 "External conditions OK"; -VAL_ 257 CAN_RADAR_ALIGN_OUT_RANGE 1 "Radar out of range" 0 "Radar within range"; -VAL_ 257 CAN_RADAR_ALIGN_NOT_START 1 "Radar align not started" 0 "Radar align started"; -VAL_ 257 CAN_RADAR_OVERHEAT_ERROR 1 "Radar overheat condition" 0 "No Overheat"; -VAL_ 257 CAN_RADAR_NOT_OP 1 "Radar not operational" 0 "Radar operational"; -VAL_ 257 CAN_XCVR_OPERATIONAL 1 "On" 0 "Off "; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; diff --git a/opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc b/opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc deleted file mode 100644 index 2ae927a6f2..0000000000 --- a/opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc +++ /dev/null @@ -1,7289 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: -BU_: MRR -BO_ 1073741824 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX - SG_ New_Signal_943 : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_SENSOR_VANGLE_OFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_SENSOR_FOV_VER : 0|8@0+ (1,0) [0|255] "deg" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE_QF : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE_REF : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_MMIC_Temp4 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_MMIC_Temp3 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_MMIC_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_Processor_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_CHECKSUM : 0|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_COUNTER : 0|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_VEHICLE_MODE : 0|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_USC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_USC_CAL_VER_MINOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_SMC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_HW_VERSION : 0|32@0+ (1,0) [0|4.29497e+09] "" Vector__XXX - SG_ CAN_FAC_TGT_MTG_SPACE_VER : 0|8@0+ (1,-128) [-128|127] "cm" Vector__XXX - SG_ CAN_ANGLE_MISALIGNMENT_VER : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_ANGLE_MOUNTING_VOFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_LATCH_FAULTS : 0|64@0+ (1,0) [0|100] "" Vector__XXX - SG_ CAN_ACTIVE_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX - SG_ CAN_HISTORY_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX - SG_ CAN_SERV_ALIGN_ENABLE : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_LONG_MOUNTING_OFFSET : 0|8@0+ (0.015625,-2) [-2|1.98438] "" Vector__XXX - SG_ CAN_BEAMWIDTH_VERT : 0|7@0+ (0.125,0) [0|15.875] "deg" Vector__XXX - SG_ CAN_VEHICLE_SPEED_CALC_QF : 0|2@0+ (1,0) [0|3] "" Vector__XXX - -BO_ 34 Active_Fault_Latched_2: 8 MRR - SG_ IPMA_PCAN_DataRangeCheck : 4|1@1+ (1,0) [0|1] "" External_Tool - SG_ IPMA_PCAN_MissingMsg : 3|1@1+ (1,0) [0|1] "" External_Tool - SG_ VINSignalCompareFailure : 2|1@1+ (1,0) [0|1] "" External_Tool - SG_ ModuleNotConfiguredError : 1|1@1+ (1,0) [0|1] "" External_Tool - SG_ CarCfgNotConfiguredError : 0|1@1+ (1,0) [0|1] "" External_Tool - -BO_ 33 Active_Fault_Latched_1: 8 MRR - SG_ Active_Flt_Latched_byte7_bit7 : 63|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit6 : 62|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit5 : 61|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit4 : 60|1@1+ (1,0) [0|1] "" External_Tool - SG_ ARMtoDSPChksumFault : 59|1@1+ (1,0) [0|1] "" External_Tool - SG_ DSPtoArmChksumFault : 58|1@1+ (1,0) [0|1] "" External_Tool - SG_ HostToArmChksumFault : 57|1@1+ (1,0) [0|1] "" External_Tool - SG_ ARMtoHostChksumFault : 56|1@1+ (1,0) [0|1] "" External_Tool - SG_ LoopBWOutOfRange : 55|1@1+ (1,0) [0|1] "" External_Tool - SG_ DSPOverrunFault : 54|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte6_bit5 : 53|1@1+ (1,0) [0|1] "" External_Tool - SG_ TuningSensitivityFault : 52|1@1+ (1,0) [0|1] "" External_Tool - SG_ SaturatedTuningFreqFault : 51|1@1+ (1,0) [0|1] "" External_Tool - SG_ LocalOscPowerFault : 50|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterPowerFault : 49|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte6_bit0 : 48|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit7 : 47|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit6 : 46|1@1+ (1,0) [0|1] "" External_Tool - SG_ XCVRDeviceSPIFault : 45|1@1+ (1,0) [0|1] "" External_Tool - SG_ FreqSynthesizerSPIFault : 44|1@1+ (1,0) [0|1] "" External_Tool - SG_ AnalogConverterDevicSPIFault : 43|1@1+ (1,0) [0|1] "" External_Tool - SG_ SidelobeBlockage : 42|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit1 : 41|1@1+ (1,0) [0|1] "" External_Tool - SG_ MNRBlocked : 40|1@1+ (1,0) [0|1] "" External_Tool - SG_ ECUTempHighFault : 39|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterTempHighFault : 38|1@1+ (1,0) [0|1] "" External_Tool - SG_ AlignmentRoutineFailedFault : 37|1@1+ (1,0) [0|1] "" External_Tool - SG_ UnreasonableRadarData : 36|1@1+ (1,0) [0|1] "" External_Tool - SG_ MicroprocessorTempHighFault : 35|1@1+ (1,0) [0|1] "" External_Tool - SG_ VerticalAlignmentOutOfRange : 34|1@1+ (1,0) [0|1] "" External_Tool - SG_ HorizontalAlignmentOutOfRange : 33|1@1+ (1,0) [0|1] "" External_Tool - SG_ FactoryAlignmentMode : 32|1@1+ (1,0) [0|1] "" External_Tool - SG_ BatteryLowFault : 31|1@1+ (1,0) [0|1] "" External_Tool - SG_ BatteryHighFault : 30|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_1p25SupplyOutOfRange : 29|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte3_bit4 : 28|1@1+ (1,0) [0|1] "" External_Tool - SG_ ThermistorOutOfRange : 27|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_3p3DACSupplyOutOfRange : 26|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_3p3RAWSupplyOutOfRange : 25|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_5_SupplyOutOfRange : 24|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterIDFault : 23|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit6 : 22|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit5 : 21|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit4 : 20|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit3 : 19|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit2 : 18|1@1+ (1,0) [0|1] "" External_Tool - SG_ PCANMissingMsgFault : 17|1@1+ (1,0) [0|1] "" External_Tool - SG_ PCANBusOff : 16|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit7 : 15|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit6 : 14|1@1+ (1,0) [0|1] "" External_Tool - SG_ InstructionSetCheckFault : 13|1@1+ (1,0) [0|1] "" External_Tool - SG_ StackOverflowFault : 12|1@1+ (1,0) [0|1] "" External_Tool - SG_ WatchdogFault : 11|1@1+ (1,0) [0|1] "" External_Tool - SG_ PLLLockFault : 10|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit1 : 9|1@1+ (1,0) [0|1] "" External_Tool - SG_ RAMMemoryTestFault : 8|1@1+ (1,0) [0|1] "" External_Tool - SG_ USCValidationFault : 7|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit6 : 6|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit5 : 5|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit4 : 4|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit3 : 3|1@1+ (1,0) [0|1] "" External_Tool - SG_ KeepAliveChecksumFault : 2|1@1+ (1,0) [0|1] "" External_Tool - SG_ ProgramCalibrationFlashChecksum : 1|1@1+ (1,0) [0|1] "" External_Tool - SG_ ApplicationFlashChecksumFault : 0|1@1+ (1,0) [0|1] "" External_Tool - -BO_ 500 XCP_MRR_DAQ_RESP: 8 MRR - SG_ MRR_xcp_daq_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 499 XCP_MRR_DTO_RESP: 8 MRR - SG_ MRR_xcp_dto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 497 XCP_MRR_CTO_RESP: 8 MRR - SG_ MRR_xcp_cto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 1900 Ford_Diag_Resp_Phys: 8 MRR - SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467e+19] "" IFV_Host - -BO_ 261 MRR_Status_SerialNumber: 8 MRR - SG_ CAN_SEQUENCE_NUMBER : 55|16@0+ (1,0) [0|65535] "" External_Tool - SG_ CAN_SERIAL_NUMBER : 7|40@0+ (1,0) [0|1.09951e+12] "" External_Tool - -BO_ 264 MRR_Status_SwVersion: 8 MRR - SG_ CAN_PBL_Field_Revision : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_PBL_Promote_Revision : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Field_Revision : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Promote_Revision : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Release_Revision : 7|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_PBL_Release_Revision : 31|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 373 MRR_Header_SensorPosition: 8 MRR - SG_ CAN_SENSOR_POLARITY : 55|1@0+ (1,0) [0|1] "" External_Tool - SG_ CAN_SENSOR_LAT_OFFSET : 39|16@0+ (0.01,0) [0|655.35] "cm" External_Tool - SG_ CAN_SENSOR_LONG_OFFSET : 23|16@0+ (0.01,0) [0|655.35] "cm" External_Tool - SG_ CAN_SENSOR_HANGLE_OFFSET : 7|8@0+ (0.0625,-8) [-8|7.9375] "deg" External_Tool - -BO_ 372 MRR_Header_SensorCoverage: 8 MRR - SG_ CAN_SENSOR_FOV_HOR : 39|8@0+ (1,0) [0|255] "deg" IFV_VFP - SG_ CAN_DOPPLER_COVERAGE : 23|8@0+ (1,-128) [-128|127] "m/s" IFV_VFP - SG_ CAN_RANGE_COVERAGE : 7|8@0+ (1,0) [0|255] "m" IFV_VFP - -BO_ 371 MRR_Header_AlignmentState: 8 MRR - SG_ CAN_AUTO_ALIGN_HANGLE_QF : 13|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_ALIGNMENT_STATUS : 51|4@0+ (1,0) [0|11] "" IFV_VFP - SG_ CAN_ALIGNMENT_STATE : 55|3@0+ (1,0) [0|7] "" IFV_VFP - SG_ CAN_AUTO_ALIGN_HANGLE_REF : 11|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP - SG_ CAN_AUTO_ALIGN_HANGLE : 7|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP - -BO_ 369 MRR_Header_Timestamps: 8 MRR - SG_ CAN_DET_TIME_SINCE_MEAS : 39|11@0+ (0.1,0) [0|204.7] "ms" IFV_Host - SG_ CAN_SENSOR_TIME_STAMP : 7|32@0+ (0.1,0) [0|4.29497e+08] "ms" IFV_VFP - -BO_ 368 MRR_Header_InformationDetections: 8 MRR - SG_ CAN_ALIGN_UPDATES_DONE : 55|16@0+ (1,0) [0|65535] "" IFV_VFP - SG_ CAN_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" IFV_VFP - SG_ CAN_NUMBER_OF_DET : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_LOOK_ID : 23|2@0+ (1,0) [0|3] "" External_Tool - SG_ CAN_LOOK_INDEX : 7|16@0+ (1,0) [0|65535] "" External_Tool - -BO_ 265 MRR_Status_Temp_Volt: 8 MRR - SG_ CAN_BATT_VOLTS : 63|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_1_25_V : 55|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_5_V : 47|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_3_3_V_RAW : 31|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_3_3_V_DAC : 15|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_MMIC_Temp1 : 39|8@0+ (1,-50) [-50|205] "C" External_Tool - SG_ CAN_Processor_Thermistor : 23|8@0+ (1,-50) [-50|205] "C" External_Tool - SG_ CAN_Processor_Temp1 : 7|8@0+ (1,-50) [-50|205] "C" External_Tool - -BO_ 291 MRR_Detection_004: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_04_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_04_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_04_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_04_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_04_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_04_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_04_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_04_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_04_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_04_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_04_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_04_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_04_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_04_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_04_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 351 MRR_Detection_064: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_64 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_64 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_64 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_64 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_64 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_64 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_64 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_64 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_64 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_64 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 350 MRR_Detection_063: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_63 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_63 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_63 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_63 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_63 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_63 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_63 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_63 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_63 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_63 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 349 MRR_Detection_062: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_62 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_62 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_62 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_62 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_62 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_62 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_62 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_62 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_62 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_62 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 348 MRR_Detection_061: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_61 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_61 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_61 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_61 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_61 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_61 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_61 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_61 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_61 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_61 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 347 MRR_Detection_060: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_60 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_60 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_60 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_60 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_60 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_60 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_60 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_60 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_60 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_60 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 346 MRR_Detection_059: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_59 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_59 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_59 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_59 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_59 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_59 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_59 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_59 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_59 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_59 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 345 MRR_Detection_058: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_58 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_58 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_58 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_58 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_58 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_58 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_58 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_58 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_58 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_58 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 344 MRR_Detection_057: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_57 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_57 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_57 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_57 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_57 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_57 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_57 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_57 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_57 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_57 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 343 MRR_Detection_056: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_56 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_56 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_56 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_56 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_56 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_56 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_56 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_56 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_56 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_56 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 342 MRR_Detection_055: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_55 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_55 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_55 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_55 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_55 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_55 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_55 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_55 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_55 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_55 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 335 MRR_Detection_048: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_48 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_48 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_48 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_48 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_48 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_48 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_48 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_48 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_48 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_48 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 334 MRR_Detection_047: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_47 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_47 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_47 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_47 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_47 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_47 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_47 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_47 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_47 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_47 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 333 MRR_Detection_046: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_46 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_46 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_46 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_46 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_46 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_46 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_46 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_46 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_46 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_46 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 332 MRR_Detection_045: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_45 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_45 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_45 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_45 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_45 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_45 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_45 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_45 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_45 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_45 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 331 MRR_Detection_044: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_44 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_44 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_44 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_44 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_44 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_44 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_44 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_44 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_44 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_44 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 330 MRR_Detection_043: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_43 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_43 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_43 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_43 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_43 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_43 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_43 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_43 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_43 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_43 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 329 MRR_Detection_042: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_42 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_42 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_42 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_42 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_42 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_42 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_42 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_42 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_42 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_42 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 328 MRR_Detection_041: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_41 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_41 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_41 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_41 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_41 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_41 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_41 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_41 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_41 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_41 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 327 MRR_Detection_040: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_40 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_40 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_40 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_40 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_40 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_40 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_40 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_40 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_40 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_40 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 325 MRR_Detection_038: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_38 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_38 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_38 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_38 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_38 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_38 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_38 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_38 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_38 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_38 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 324 MRR_Detection_037: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_37 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_37 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_37 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_37 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_37 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_37 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_37 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_37 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_37 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_37 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 323 MRR_Detection_036: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_36 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_36 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_36 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_36 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_36 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_36 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_36 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_36 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_36 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_36 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 322 MRR_Detection_035: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_35 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_35 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_35 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_35 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_35 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_35 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_35 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_35 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_35 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_35 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 321 MRR_Detection_034: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_34 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_34 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_34 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_34 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_34 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_34 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_34 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_34 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_34 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_34 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 320 MRR_Detection_033: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_33 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_33 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_33 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_33 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_33 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_33 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_33 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_33 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_33 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_33 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 319 MRR_Detection_032: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_32 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_32 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_32 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_32 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_32 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_32 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_32 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_32 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_32 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_32 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 318 MRR_Detection_031: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_31 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_31 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_31 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_31 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_31 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_31 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_31 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_31 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_31 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_31 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 317 MRR_Detection_030: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_30 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_30 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_30 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_30 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_30 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_30 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_30 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_30 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_30 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_30 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 316 MRR_Detection_029: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_29 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_29 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_29 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_29 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_29 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_29 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_29 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_29 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_29 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_29 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 314 MRR_Detection_027: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_27 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_27 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_27 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_27 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_27 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_27 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_27 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_27 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_27 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_27 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 313 MRR_Detection_026: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_26 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_26 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_26 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_26 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_26 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_26 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_26 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_26 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_26 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_26 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 312 MRR_Detection_025: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_25 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_25 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_25 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_25 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_25 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_25 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_25 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_25 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_25 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_25 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 311 MRR_Detection_024: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_24 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_24 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_24 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_24 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_24 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_24 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_24 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_24 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_24 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_24 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 310 MRR_Detection_023: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_23 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_23 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_23 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_23 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_23 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_23 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_23 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_23 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_23 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_23 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 309 MRR_Detection_022: 24 MRR - SG_ CAN_DET_CONFID_AZIMUTH_22_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_22_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_22_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_22_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_22_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_22_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_22_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_22_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_22_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_22_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_22_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_22_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_22_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_22_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_22_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_22_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_22_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_22_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_22_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_22_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_22_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_22_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_22_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_22_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_22_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_22_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_22_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_22_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_22_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_22_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 308 MRR_Detection_021: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_21_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_21_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_21_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_21_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_21_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_21_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_21_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_21_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_21_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_21_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_21_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_21_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_21_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_21_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_21_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 307 MRR_Detection_020: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_20_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_20_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_20_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_20_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_20_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_20_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_20_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_20_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_20_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_20_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_20_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_20_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_20_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_20_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_20_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 306 MRR_Detection_019: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_19_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_19_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_19_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_19_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_19_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_19_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_19_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_19_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_19_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_19_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_19_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_19_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_19_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_19_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_19_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 305 MRR_Detection_018: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_18_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_18_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_18_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_18_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_18_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_18_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_18_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_18_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_18_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_18_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_18_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_18_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_18_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_18_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_18_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 341 MRR_Detection_054: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_54 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_54 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_54 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_54 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_54 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_54 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_54 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_54 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_54 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_54 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 340 MRR_Detection_053: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_53 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_53 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_53 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_53 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_53 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_53 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_53 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_53 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_53 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_53 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 339 MRR_Detection_052: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_52 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_52 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_52 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_52 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_52 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_52 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_52 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_52 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_52 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_52 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 338 MRR_Detection_051: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_51 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_51 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_51 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_51 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_51 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_51 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_51 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_51 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_51 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_51 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 337 MRR_Detection_050: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_50 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_50 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_50 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_50 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_50 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_50 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_50 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_50 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_50 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_50 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 336 MRR_Detection_049: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_49 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_49 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_49 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_49 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_49 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_49 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_49 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_49 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_49 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_49 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 326 MRR_Detection_039: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_39 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_39 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_39 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_39 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_39 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_39 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_39 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_39 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_39 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_39 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 315 MRR_Detection_028: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_28 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_28 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_28 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_28 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_28 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_28 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_28 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_28 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_28 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_28 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 304 MRR_Detection_017: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_17_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_17_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_17_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_17_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_17_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_17_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_17_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_17_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_17_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_17_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_17_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_17_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_17_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_17_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_17_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 303 MRR_Detection_016: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_16_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_16_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_16_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_16_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_16_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_16_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_16_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_16_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_16_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_16_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_16_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_16_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_16_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_16_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_16_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 302 MRR_Detection_015: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_15_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_15_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_15_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_15_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_15_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_15_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_15_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_15_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_15_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_15_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_15_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_15_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_15_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_15_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_15_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 301 MRR_Detection_014: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_14_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_14_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_14_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_14_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_14_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_14_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_14_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_14_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_14_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_14_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_14_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_14_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_14_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_14_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_14_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 300 MRR_Detection_013: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_13_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_13_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_13_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_13_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_13_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_13_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_13_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_13_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_13_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_13_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_13_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_13_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_13_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_13_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_13_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 299 MRR_Detection_012: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_12_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_12_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_12_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_12_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_12_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_12_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_12_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_12_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_12_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_12_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_12_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_12_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_12_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_12_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_12_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 298 MRR_Detection_011: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_11_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_11_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_11_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_11_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_11_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_11_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_11_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_11_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_11_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_11_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_11_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_11_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_11_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_11_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_11_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 297 MRR_Detection_010: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_10_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_10_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_10_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_10_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_10_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_10_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_10_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_10_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_10_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_10_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_10_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_10_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_10_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_10_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_10_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 296 MRR_Detection_009: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_09_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_09_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_09_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_09_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_09_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_09_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_09_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_09_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_09_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_09_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_09_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_09_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_09_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_09_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_09_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 295 MRR_Detection_008: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_08_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_08_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_08_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_08_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_08_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_08_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_08_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_08_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_08_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_08_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_08_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_08_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_08_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_08_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_08_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 294 MRR_Detection_007: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_07_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_07_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_07_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_07_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_07_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_07_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_07_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_07_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_07_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_07_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_07_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_07_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_07_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_07_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_07_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 293 MRR_Detection_006: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_06_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_06_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_06_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_06_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_06_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_06_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_06_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_06_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_06_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_06_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_06_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_06_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_06_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_06_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_06_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 292 MRR_Detection_005: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_05_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_05_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_05_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_05_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_05_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_05_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_05_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_05_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_05_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_05_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_05_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_05_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_05_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_05_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_05_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 290 MRR_Detection_003: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_03_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_03_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_03_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_03_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_03_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_03_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_03_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_03_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_03_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_03_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_03_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_03_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_03_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_03_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_03_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 289 MRR_Detection_002: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_02_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_02_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_02_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_02_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_02_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_02_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_02_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_02_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_02_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_02_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_02_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_02_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_02_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_02_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_02_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 256 MRR_Status_CANVersion: 8 MRR - SG_ CAN_USC_SECTION_COMPATIBILITY : 23|16@0+ (1,0) [0|65535] "" External_Tool - SG_ CAN_PCAN_MINOR_MRR : 7|8@0+ (1,0) [0|255] "" IFV_VFP - SG_ CAN_PCAN_MAJOR_MRR : 15|8@0+ (1,0) [0|255] "" IFV_VFP - -BO_ 257 MRR_Status_Radar: 8 MRR - SG_ CAN_INTERFERENCE_TYPE : 11|2@0+ (1,0) [0|3] "" IFV_Host - SG_ CAN_RECOMMEND_UNCONVERGE : 9|1@0+ (1,0) [0|1] "" IFV_Host - SG_ CAN_BLOCKAGE_SIDELOBE_FILTER_VAL : 15|4@0+ (1,0) [0|15] "" IFV_Host - SG_ CAN_RADAR_ALIGN_INCOMPLETE : 8|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_BLOCKAGE_SIDELOBE : 4|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_BLOCKAGE_MNR : 5|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_EXT_COND_NOK : 1|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_ALIGN_OUT_RANGE : 2|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_ALIGN_NOT_START : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_OVERHEAT_ERROR : 3|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_NOT_OP : 6|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_XCVR_OPERATIONAL : 7|1@0+ (1,0) [0|1] "" IFV_VFP - -BO_ 288 MRR_Detection_001: 64 MRR - SG_ CAN_DET_CONFID_AZIMUTH_01_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_01_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_01_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_01_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_01_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_CONFID_AZIMUTH_01_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_01_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_01_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_01_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_01_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_01_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_01_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_01_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_01_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_01_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP - -BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; -BA_DEF_ SG_ "CrossOver_LIN" ENUM "No","Yes","No","Yes"; -BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes","No","Yes","No","Yes"; -BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ SG_ "GenSigTimeoutTime_RCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_OCS" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_CCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_IPMA" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_SCCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_Generic_BCM" INT 0 100000; -BA_DEF_ BO_ "NmMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "TpTxIndex" INT 0 255; -BA_DEF_ BO_ "DiagState" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "TpApplType" STRING ; -BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "Mulitplexer" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; -BA_DEF_ BO_ "GenMsgHandlingTypeDoc" STRING ; -BA_DEF_ BO_ "GenMsgHandlingTypeCode" STRING ; -BA_DEF_ BO_ "GenMsgMarked" STRING ; -BA_DEF_ SG_ "GenSigMarked" STRING ; -BA_DEF_ SG_ "GenSigVtIndex" STRING ; -BA_DEF_ SG_ "GenSigVtName" STRING ; -BA_DEF_ SG_ "GenSigVtEn" STRING ; -BA_DEF_ SG_ "GenSigSNA" STRING ; -BA_DEF_ SG_ "GenSigCmt" STRING ; -BA_DEF_ BO_ "GenMsgCmt" STRING ; -BA_DEF_ SG_ "GenSigSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; -BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; -BA_DEF_ SG_ "GenSigMissingSourceValue" INT 0 1e+09; -BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes"; -BA_DEF_ SG_ "GenSigStartValue" INT 0 1e+09; -BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes"; -BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "GenMsgSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; -BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; -BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; -BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; -BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; -BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; -BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes"; -BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes"; -BA_DEF_ BU_ "ILUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BU_ "PowerType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes","Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; -BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; -BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; -BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; -BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; -BA_ "GenMsgCycleTime" BO_ 34 1000; -BA_ "GenMsgSendType" BO_ 34 0; -BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; -BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; -BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; -BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; -BA_ "GenSigVtEn" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; -BA_ "GenSigVtName" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; -BA_ "GenSigVtEn" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; -BA_ "GenSigVtName" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; -BA_ "GenSigVtEn" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; -BA_ "GenSigVtName" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; -BA_ "GenMsgCycleTime" BO_ 33 1000; -BA_ "GenMsgSendType" BO_ 33 0; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; -BA_ "GenSigVtEn" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; -BA_ "GenSigVtName" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; -BA_ "GenSigVtEn" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; -BA_ "GenSigVtName" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; -BA_ "GenSigVtEn" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; -BA_ "GenSigVtName" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; -BA_ "GenSigVtEn" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; -BA_ "GenSigVtName" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; -BA_ "GenSigVtEn" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; -BA_ "GenSigVtName" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 DSPOverrunFault "DSPOverrunFault"; -BA_ "GenSigVtName" SG_ 33 DSPOverrunFault "DSPOverrunFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; -BA_ "GenSigVtEn" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; -BA_ "GenSigVtName" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; -BA_ "GenSigVtEn" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; -BA_ "GenSigVtName" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; -BA_ "GenSigVtEn" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; -BA_ "GenSigVtName" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; -BA_ "GenSigVtEn" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; -BA_ "GenSigVtEn" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; -BA_ "GenSigVtName" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; -BA_ "GenSigVtEn" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; -BA_ "GenSigVtName" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; -BA_ "GenSigVtEn" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; -BA_ "GenSigVtName" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; -BA_ "GenSigVtEn" SG_ 33 SidelobeBlockage "SidelobeBlockage"; -BA_ "GenSigVtName" SG_ 33 SidelobeBlockage "SidelobeBlockage"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; -BA_ "GenSigVtEn" SG_ 33 MNRBlocked "MNRBlocked"; -BA_ "GenSigVtName" SG_ 33 MNRBlocked "MNRBlocked"; -BA_ "GenSigVtEn" SG_ 33 ECUTempHighFault "ECUTempHighFault"; -BA_ "GenSigVtName" SG_ 33 ECUTempHighFault "ECUTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; -BA_ "GenSigVtName" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; -BA_ "GenSigVtEn" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; -BA_ "GenSigVtName" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; -BA_ "GenSigVtEn" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; -BA_ "GenSigVtName" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; -BA_ "GenSigVtName" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; -BA_ "GenSigVtName" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; -BA_ "GenSigVtName" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; -BA_ "GenSigVtEn" SG_ 33 BatteryLowFault "BatteryLowFault"; -BA_ "GenSigVtName" SG_ 33 BatteryLowFault "BatteryLowFault"; -BA_ "GenSigVtEn" SG_ 33 BatteryHighFault "BatteryHighFault"; -BA_ "GenSigVtName" SG_ 33 BatteryHighFault "BatteryHighFault"; -BA_ "GenSigVtEn" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; -BA_ "GenSigVtEn" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; -BA_ "GenSigVtName" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 TransmitterIDFault "TransmitterIDFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterIDFault "TransmitterIDFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; -BA_ "GenSigVtEn" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; -BA_ "GenSigVtName" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; -BA_ "GenSigVtEn" SG_ 33 PCANBusOff "PCANBusOff"; -BA_ "GenSigVtName" SG_ 33 PCANBusOff "PCANBusOff"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; -BA_ "GenSigVtEn" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; -BA_ "GenSigVtName" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; -BA_ "GenSigVtEn" SG_ 33 StackOverflowFault "StackOverflowFault"; -BA_ "GenSigVtName" SG_ 33 StackOverflowFault "StackOverflowFault"; -BA_ "GenSigVtEn" SG_ 33 WatchdogFault "WatchdogFault"; -BA_ "GenSigVtName" SG_ 33 WatchdogFault "WatchdogFault"; -BA_ "GenSigVtEn" SG_ 33 PLLLockFault "PLLLockFault"; -BA_ "GenSigVtName" SG_ 33 PLLLockFault "PLLLockFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; -BA_ "GenSigVtEn" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; -BA_ "GenSigVtName" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; -BA_ "GenSigVtName" SG_ 33 USCValidationFault "USCValidationFault"; -BA_ "GenSigVtEn" SG_ 33 USCValidationFault "USCValidationFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; -BA_ "GenSigVtEn" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; -BA_ "GenSigVtName" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; -BA_ "GenSigVtEn" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; -BA_ "GenSigVtName" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; -BA_ "GenSigVtEn" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; -BA_ "GenSigVtName" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; -BA_ "GenMsgNrOfRepetition" BO_ 500 0; -BA_ "GenMsgSendType" BO_ 500 1; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte7 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte7 "MRR_xcp_daq_resp_byte7"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte6 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte6 "MRR_xcp_daq_resp_byte6"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte5 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte5 "MRR_xcp_daq_resp_byte5"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte4 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte4 "MRR_xcp_daq_resp_byte4"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte3 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte3 "MRR_xcp_daq_resp_byte3"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte2 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte2 "MRR_xcp_daq_resp_byte2"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte1 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte1 "MRR_xcp_daq_resp_byte1"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte0 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte0 "MRR_xcp_daq_resp_byte0"; -BA_ "GenMsgNrOfRepetition" BO_ 499 0; -BA_ "GenMsgSendType" BO_ 499 1; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte7 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte7 "MRR_xcp_dto_resp_byte7"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte6 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte6 "MRR_xcp_dto_resp_byte6"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte5 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte5 "MRR_xcp_dto_resp_byte5"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte4 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte4 "MRR_xcp_dto_resp_byte4"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte3 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte3 "MRR_xcp_dto_resp_byte3"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte2 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte2 "MRR_xcp_dto_resp_byte2"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte1 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte1 "MRR_xcp_dto_resp_byte1"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte0 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte0 "MRR_xcp_dto_resp_byte0"; -BA_ "GenMsgNrOfRepetition" BO_ 497 0; -BA_ "GenMsgSendType" BO_ 497 1; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte7 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte7 "MRR_xcp_cto_resp_byte7"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte6 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte6 "MRR_xcp_cto_resp_byte6"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte5 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte5 "MRR_xcp_cto_resp_byte5"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte4 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte4 "MRR_xcp_cto_resp_byte4"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte3 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte3 "MRR_xcp_cto_resp_byte3"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte2 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte2 "MRR_xcp_cto_resp_byte2"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte1 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte1 "MRR_xcp_cto_resp_byte1"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte0 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte0 "MRR_xcp_cto_resp_byte0"; -BA_ "GenMsgSendType" BO_ 1900 1; -BA_ "GenMsgNrOfRepetition" BO_ 1900 0; -BA_ "DiagResponse" BO_ 1900 1; -BA_ "GenSigCmt" SG_ 1900 TesterPhysicalResCCM "TesterPhysicalResCCM"; -BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 0; -BA_ "GenMsgSendType" BO_ 261 0; -BA_ "GenMsgCycleTime" BO_ 261 1000; -BA_ "GenMsgNrOfRepetition" BO_ 261 0; -BA_ "GenSigCmt" SG_ 261 CAN_SEQUENCE_NUMBER "CAN_SEQUENCE_NUMBER"; -BA_ "GenSigCmt" SG_ 261 CAN_SERIAL_NUMBER "CAN_SERIAL_NUMBER"; -BA_ "GenSigSendType" SG_ 261 CAN_SERIAL_NUMBER 0; -BA_ "GenMsgSendType" BO_ 264 1; -BA_ "GenMsgNrOfRepetition" BO_ 264 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Field_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Promote_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Field_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Promote_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Release_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Release_Revision 0; -BA_ "GenMsgSendType" BO_ 373 1; -BA_ "NetworkInitialization" BO_ 373 0; -BA_ "GenMsgNrOfRepetition" BO_ 373 0; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_POLARITY 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_POLARITY "CAN_SENSOR_POLARITY"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LAT_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LAT_OFFSET "CAN_SENSOR_LAT_OFFSET"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LONG_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LONG_OFFSET "CAN_SENSOR_LONG_OFFSET"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_HANGLE_OFFSET "CAN_SENSOR_HANGLE_OFFSET"; -BA_ "GenSigStartValue" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; -BA_ "GenMsgSendType" BO_ 372 1; -BA_ "NetworkInitialization" BO_ 372 0; -BA_ "GenMsgNrOfRepetition" BO_ 372 0; -BA_ "GenSigSendType" SG_ 372 CAN_SENSOR_FOV_HOR 0; -BA_ "GenSigCmt" SG_ 372 CAN_SENSOR_FOV_HOR "CAN_SENSOR_FOV_HOR"; -BA_ "GenSigStartValue" SG_ 372 CAN_SENSOR_FOV_HOR 0; -BA_ "GenSigSendType" SG_ 372 CAN_DOPPLER_COVERAGE 0; -BA_ "GenSigCmt" SG_ 372 CAN_DOPPLER_COVERAGE "CAN_DOPPLER_COVERAGE"; -BA_ "GenSigStartValue" SG_ 372 CAN_DOPPLER_COVERAGE 0; -BA_ "GenSigSendType" SG_ 372 CAN_RANGE_COVERAGE 0; -BA_ "GenSigCmt" SG_ 372 CAN_RANGE_COVERAGE "CAN_RANGE_COVERAGE"; -BA_ "GenMsgSendType" BO_ 371 1; -BA_ "NetworkInitialization" BO_ 371 0; -BA_ "GenMsgNrOfRepetition" BO_ 371 0; -BA_ "GenSigVtEn" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigVtName" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATUS 0; -BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATE 0; -BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; -BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF "CAN_AUTO_ALIGN_HANGLE_REF"; -BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE "CAN_AUTO_ALIGN_HANGLE"; -BA_ "GenMsgSendType" BO_ 369 1; -BA_ "NetworkInitialization" BO_ 369 0; -BA_ "GenMsgNrOfRepetition" BO_ 369 0; -BA_ "GenSigCmt" SG_ 369 CAN_DET_TIME_SINCE_MEAS "CAN_DET_TIME_SINCE_MEAS"; -BA_ "GenSigSendType" SG_ 369 CAN_DET_TIME_SINCE_MEAS 0; -BA_ "GenSigSendType" SG_ 369 CAN_SENSOR_TIME_STAMP 0; -BA_ "GenSigCmt" SG_ 369 CAN_SENSOR_TIME_STAMP "CAN_SENSOR_TIME_STAMP"; -BA_ "GenMsgSendType" BO_ 368 1; -BA_ "NetworkInitialization" BO_ 368 0; -BA_ "GenMsgNrOfRepetition" BO_ 368 0; -BA_ "GenSigSendType" SG_ 368 CAN_ALIGN_UPDATES_DONE 0; -BA_ "GenSigCmt" SG_ 368 CAN_ALIGN_UPDATES_DONE "CAN_ALIGN_UPDATES_DONE"; -BA_ "GenSigSendType" SG_ 368 CAN_SCAN_INDEX 0; -BA_ "GenSigCmt" SG_ 368 CAN_SCAN_INDEX "CAN_SCAN_INDEX"; -BA_ "GenSigSendType" SG_ 368 CAN_NUMBER_OF_DET 0; -BA_ "GenSigCmt" SG_ 368 CAN_NUMBER_OF_DET "CAN_NUMBER_OF_DET"; -BA_ "GenSigSendType" SG_ 368 CAN_LOOK_ID 0; -BA_ "GenSigCmt" SG_ 368 CAN_LOOK_ID "CAN_LOOK_ID"; -BA_ "GenSigSendType" SG_ 368 CAN_LOOK_INDEX 0; -BA_ "GenSigCmt" SG_ 368 CAN_LOOK_INDEX "CAN_LOOK_INDEX"; -BA_ "GenMsgSendType" BO_ 265 1; -BA_ "NetworkInitialization" BO_ 265 0; -BA_ "GenMsgNrOfRepetition" BO_ 265 0; -BA_ "GenSigCmt" SG_ 265 CAN_BATT_VOLTS "CAN_BATT_VOLTS"; -BA_ "GenSigCmt" SG_ 265 CAN_1_25_V "CAN_1_25_V"; -BA_ "GenSigCmt" SG_ 265 CAN_5_V "CAN_5_V"; -BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_RAW "CAN_3_3_V_RAW"; -BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_DAC "CAN_3_3_V_DAC"; -BA_ "GenSigSendType" SG_ 265 CAN_MMIC_Temp1 0; -BA_ "GenSigCmt" SG_ 265 CAN_MMIC_Temp1 "CAN_MMIC_Temp1"; -BA_ "GenSigStartValue" SG_ 265 CAN_MMIC_Temp1 0; -BA_ "GenSigSendType" SG_ 265 CAN_Processor_Thermistor 0; -BA_ "GenSigCmt" SG_ 265 CAN_Processor_Thermistor "CAN_Processor_Thermistor"; -BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Thermistor 0; -BA_ "GenSigSendType" SG_ 265 CAN_Processor_Temp1 0; -BA_ "GenSigCmt" SG_ 265 CAN_Processor_Temp1 "CAN_Processor_Temp1"; -BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Temp1 0; -BA_ "GenMsgSendType" BO_ 291 1; -BA_ "GenMsgILSupport" BO_ 291 1; -BA_ "GenMsgNrOfRepetition" BO_ 291 0; -BA_ "GenMsgCycleTime" BO_ 291 0; -BA_ "NetworkInitialization" BO_ 291 0; -BA_ "GenMsgDelayTime" BO_ 291 0; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 "CAN_DET_CONFID_AZIMUTH_04_01"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 "CAN_DET_CONFID_AZIMUTH_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 "CAN_DET_CONFID_AZIMUTH_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_01 "CAN_DET_SUPER_RES_TARGET_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_01 "CAN_DET_ND_TARGET_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_01 "CAN_DET_HOST_VEH_CLUTTER_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_01 "CAN_DET_VALID_LEVEL_04_01"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_01 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_01 "CAN_DET_AZIMUTH_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_01 "CAN_DET_RANGE_04_01"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_01 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_01 "CAN_DET_RANGE_RATE_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_01 "CAN_DET_AMPLITUDE_04_01"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_01 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_01 "CAN_SCAN_INDEX_2LSB_04_01"; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 "CAN_DET_CONFID_AZIMUTH_04_02"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 "CAN_DET_CONFID_AZIMUTH_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 "CAN_DET_CONFID_AZIMUTH_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_02 "CAN_DET_SUPER_RES_TARGET_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_02 "CAN_DET_ND_TARGET_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_02 "CAN_DET_HOST_VEH_CLUTTER_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_02 "CAN_DET_VALID_LEVEL_04_02"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_02 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_02 "CAN_DET_AZIMUTH_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_02 "CAN_DET_RANGE_04_02"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_02 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_02 "CAN_DET_RANGE_RATE_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_02 "CAN_DET_AMPLITUDE_04_02"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_02 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_02 "CAN_SCAN_INDEX_2LSB_04_02"; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 "CAN_DET_CONFID_AZIMUTH_04_03"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 "CAN_DET_CONFID_AZIMUTH_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 "CAN_DET_CONFID_AZIMUTH_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_03 "CAN_DET_SUPER_RES_TARGET_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_03 "CAN_DET_ND_TARGET_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_03 "CAN_DET_HOST_VEH_CLUTTER_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_03 "CAN_DET_VALID_LEVEL_04_03"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_03 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_03 "CAN_DET_AZIMUTH_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_03 "CAN_DET_RANGE_04_03"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_03 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_03 "CAN_DET_RANGE_RATE_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_03 "CAN_DET_AMPLITUDE_04_03"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_03 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_03 "CAN_SCAN_INDEX_2LSB_04_03"; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 "CAN_DET_CONFID_AZIMUTH_04_04"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 "CAN_DET_CONFID_AZIMUTH_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 "CAN_DET_CONFID_AZIMUTH_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_04 "CAN_DET_SUPER_RES_TARGET_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_04 "CAN_DET_ND_TARGET_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_04 "CAN_DET_HOST_VEH_CLUTTER_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_04 "CAN_DET_VALID_LEVEL_04_04"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_04 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_04 "CAN_DET_AZIMUTH_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_04 "CAN_DET_RANGE_04_04"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_04 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_04 "CAN_DET_RANGE_RATE_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_04 "CAN_DET_AMPLITUDE_04_04"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_04 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_04 "CAN_SCAN_INDEX_2LSB_04_04"; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 "CAN_DET_CONFID_AZIMUTH_04_05"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 "CAN_DET_CONFID_AZIMUTH_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 "CAN_DET_CONFID_AZIMUTH_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_05 "CAN_DET_SUPER_RES_TARGET_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_05 "CAN_DET_ND_TARGET_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_05 "CAN_DET_HOST_VEH_CLUTTER_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_05 "CAN_DET_VALID_LEVEL_04_05"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_05 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_05 "CAN_DET_AZIMUTH_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_05 "CAN_DET_RANGE_04_05"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_05 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_05 "CAN_DET_RANGE_RATE_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_05 "CAN_DET_AMPLITUDE_04_05"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_05 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_05 "CAN_SCAN_INDEX_2LSB_04_05"; -BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 "CAN_DET_CONFID_AZIMUTH_04_06"; -BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 "CAN_DET_CONFID_AZIMUTH_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 "CAN_DET_CONFID_AZIMUTH_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_06 "CAN_DET_SUPER_RES_TARGET_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_06 "CAN_DET_ND_TARGET_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_06 "CAN_DET_HOST_VEH_CLUTTER_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_06 "CAN_DET_VALID_LEVEL_04_06"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_06 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_06 "CAN_DET_AZIMUTH_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_06 "CAN_DET_RANGE_04_06"; -BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_06 0; -BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_06 "CAN_DET_RANGE_RATE_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_06 "CAN_DET_AMPLITUDE_04_06"; -BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_06 0; -BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_06 "CAN_SCAN_INDEX_2LSB_04_06"; -BA_ "GenMsgSendType" BO_ 351 1; -BA_ "GenMsgILSupport" BO_ 351 1; -BA_ "GenMsgNrOfRepetition" BO_ 351 0; -BA_ "GenMsgCycleTime" BO_ 351 0; -BA_ "NetworkInitialization" BO_ 351 0; -BA_ "GenMsgDelayTime" BO_ 351 0; -BA_ "GenSigVtEn" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigVtName" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 "CAN_DET_SUPER_RES_TARGET_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_ND_TARGET_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_ND_TARGET_64 "CAN_DET_ND_TARGET_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 "CAN_DET_HOST_VEH_CLUTTER_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_VALID_LEVEL_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_VALID_LEVEL_64 "CAN_DET_VALID_LEVEL_64"; -BA_ "GenSigStartValue" SG_ 351 CAN_DET_AZIMUTH_64 0; -BA_ "GenSigSendType" SG_ 351 CAN_DET_AZIMUTH_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_AZIMUTH_64 "CAN_DET_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_64 "CAN_DET_RANGE_64"; -BA_ "GenSigStartValue" SG_ 351 CAN_DET_RANGE_RATE_64 0; -BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_RATE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_RATE_64 "CAN_DET_RANGE_RATE_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_AMPLITUDE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_AMPLITUDE_64 "CAN_DET_AMPLITUDE_64"; -BA_ "GenSigSendType" SG_ 351 CAN_SCAN_INDEX_2LSB_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_SCAN_INDEX_2LSB_64 "CAN_SCAN_INDEX_2LSB_64"; -BA_ "GenMsgSendType" BO_ 350 1; -BA_ "GenMsgILSupport" BO_ 350 1; -BA_ "GenMsgNrOfRepetition" BO_ 350 0; -BA_ "GenMsgCycleTime" BO_ 350 0; -BA_ "NetworkInitialization" BO_ 350 0; -BA_ "GenMsgDelayTime" BO_ 350 0; -BA_ "GenSigVtEn" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigVtName" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 "CAN_DET_SUPER_RES_TARGET_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_ND_TARGET_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_ND_TARGET_63 "CAN_DET_ND_TARGET_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 "CAN_DET_HOST_VEH_CLUTTER_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_VALID_LEVEL_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_VALID_LEVEL_63 "CAN_DET_VALID_LEVEL_63"; -BA_ "GenSigStartValue" SG_ 350 CAN_DET_AZIMUTH_63 0; -BA_ "GenSigSendType" SG_ 350 CAN_DET_AZIMUTH_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_AZIMUTH_63 "CAN_DET_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_63 "CAN_DET_RANGE_63"; -BA_ "GenSigStartValue" SG_ 350 CAN_DET_RANGE_RATE_63 0; -BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_RATE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_RATE_63 "CAN_DET_RANGE_RATE_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_AMPLITUDE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_AMPLITUDE_63 "CAN_DET_AMPLITUDE_63"; -BA_ "GenSigSendType" SG_ 350 CAN_SCAN_INDEX_2LSB_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_SCAN_INDEX_2LSB_63 "CAN_SCAN_INDEX_2LSB_63"; -BA_ "GenMsgSendType" BO_ 349 1; -BA_ "GenMsgILSupport" BO_ 349 1; -BA_ "GenMsgNrOfRepetition" BO_ 349 0; -BA_ "GenMsgCycleTime" BO_ 349 0; -BA_ "NetworkInitialization" BO_ 349 0; -BA_ "GenMsgDelayTime" BO_ 349 0; -BA_ "GenSigVtEn" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigVtName" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 "CAN_DET_SUPER_RES_TARGET_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_ND_TARGET_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_ND_TARGET_62 "CAN_DET_ND_TARGET_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 "CAN_DET_HOST_VEH_CLUTTER_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_VALID_LEVEL_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_VALID_LEVEL_62 "CAN_DET_VALID_LEVEL_62"; -BA_ "GenSigStartValue" SG_ 349 CAN_DET_AZIMUTH_62 0; -BA_ "GenSigSendType" SG_ 349 CAN_DET_AZIMUTH_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_AZIMUTH_62 "CAN_DET_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_62 "CAN_DET_RANGE_62"; -BA_ "GenSigStartValue" SG_ 349 CAN_DET_RANGE_RATE_62 0; -BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_RATE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_RATE_62 "CAN_DET_RANGE_RATE_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_AMPLITUDE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_AMPLITUDE_62 "CAN_DET_AMPLITUDE_62"; -BA_ "GenSigSendType" SG_ 349 CAN_SCAN_INDEX_2LSB_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_SCAN_INDEX_2LSB_62 "CAN_SCAN_INDEX_2LSB_62"; -BA_ "GenMsgSendType" BO_ 348 1; -BA_ "GenMsgILSupport" BO_ 348 1; -BA_ "GenMsgNrOfRepetition" BO_ 348 0; -BA_ "GenMsgCycleTime" BO_ 348 0; -BA_ "NetworkInitialization" BO_ 348 0; -BA_ "GenMsgDelayTime" BO_ 348 0; -BA_ "GenSigVtEn" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigVtName" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 "CAN_DET_SUPER_RES_TARGET_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_ND_TARGET_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_ND_TARGET_61 "CAN_DET_ND_TARGET_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 "CAN_DET_HOST_VEH_CLUTTER_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_VALID_LEVEL_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_VALID_LEVEL_61 "CAN_DET_VALID_LEVEL_61"; -BA_ "GenSigStartValue" SG_ 348 CAN_DET_AZIMUTH_61 0; -BA_ "GenSigSendType" SG_ 348 CAN_DET_AZIMUTH_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_AZIMUTH_61 "CAN_DET_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_61 "CAN_DET_RANGE_61"; -BA_ "GenSigStartValue" SG_ 348 CAN_DET_RANGE_RATE_61 0; -BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_RATE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_RATE_61 "CAN_DET_RANGE_RATE_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_AMPLITUDE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_AMPLITUDE_61 "CAN_DET_AMPLITUDE_61"; -BA_ "GenSigSendType" SG_ 348 CAN_SCAN_INDEX_2LSB_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_SCAN_INDEX_2LSB_61 "CAN_SCAN_INDEX_2LSB_61"; -BA_ "GenMsgSendType" BO_ 347 1; -BA_ "GenMsgILSupport" BO_ 347 1; -BA_ "GenMsgNrOfRepetition" BO_ 347 0; -BA_ "GenMsgCycleTime" BO_ 347 0; -BA_ "NetworkInitialization" BO_ 347 0; -BA_ "GenMsgDelayTime" BO_ 347 0; -BA_ "GenSigVtEn" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigVtName" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 "CAN_DET_SUPER_RES_TARGET_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_ND_TARGET_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_ND_TARGET_60 "CAN_DET_ND_TARGET_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 "CAN_DET_HOST_VEH_CLUTTER_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_VALID_LEVEL_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_VALID_LEVEL_60 "CAN_DET_VALID_LEVEL_60"; -BA_ "GenSigStartValue" SG_ 347 CAN_DET_AZIMUTH_60 0; -BA_ "GenSigSendType" SG_ 347 CAN_DET_AZIMUTH_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_AZIMUTH_60 "CAN_DET_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_60 "CAN_DET_RANGE_60"; -BA_ "GenSigStartValue" SG_ 347 CAN_DET_RANGE_RATE_60 0; -BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_RATE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_RATE_60 "CAN_DET_RANGE_RATE_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_AMPLITUDE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_AMPLITUDE_60 "CAN_DET_AMPLITUDE_60"; -BA_ "GenSigSendType" SG_ 347 CAN_SCAN_INDEX_2LSB_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_SCAN_INDEX_2LSB_60 "CAN_SCAN_INDEX_2LSB_60"; -BA_ "GenMsgSendType" BO_ 346 1; -BA_ "GenMsgILSupport" BO_ 346 1; -BA_ "GenMsgNrOfRepetition" BO_ 346 0; -BA_ "GenMsgCycleTime" BO_ 346 0; -BA_ "NetworkInitialization" BO_ 346 0; -BA_ "GenMsgDelayTime" BO_ 346 0; -BA_ "GenSigVtEn" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigVtName" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 "CAN_DET_SUPER_RES_TARGET_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_ND_TARGET_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_ND_TARGET_59 "CAN_DET_ND_TARGET_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 "CAN_DET_HOST_VEH_CLUTTER_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_VALID_LEVEL_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_VALID_LEVEL_59 "CAN_DET_VALID_LEVEL_59"; -BA_ "GenSigStartValue" SG_ 346 CAN_DET_AZIMUTH_59 0; -BA_ "GenSigSendType" SG_ 346 CAN_DET_AZIMUTH_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_AZIMUTH_59 "CAN_DET_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_59 "CAN_DET_RANGE_59"; -BA_ "GenSigStartValue" SG_ 346 CAN_DET_RANGE_RATE_59 0; -BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_RATE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_RATE_59 "CAN_DET_RANGE_RATE_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_AMPLITUDE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_AMPLITUDE_59 "CAN_DET_AMPLITUDE_59"; -BA_ "GenSigSendType" SG_ 346 CAN_SCAN_INDEX_2LSB_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_SCAN_INDEX_2LSB_59 "CAN_SCAN_INDEX_2LSB_59"; -BA_ "GenMsgSendType" BO_ 345 1; -BA_ "GenMsgILSupport" BO_ 345 1; -BA_ "GenMsgNrOfRepetition" BO_ 345 0; -BA_ "GenMsgCycleTime" BO_ 345 0; -BA_ "NetworkInitialization" BO_ 345 0; -BA_ "GenMsgDelayTime" BO_ 345 0; -BA_ "GenSigVtEn" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigVtName" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 "CAN_DET_SUPER_RES_TARGET_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_ND_TARGET_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_ND_TARGET_58 "CAN_DET_ND_TARGET_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 "CAN_DET_HOST_VEH_CLUTTER_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_VALID_LEVEL_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_VALID_LEVEL_58 "CAN_DET_VALID_LEVEL_58"; -BA_ "GenSigStartValue" SG_ 345 CAN_DET_AZIMUTH_58 0; -BA_ "GenSigSendType" SG_ 345 CAN_DET_AZIMUTH_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_AZIMUTH_58 "CAN_DET_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_58 "CAN_DET_RANGE_58"; -BA_ "GenSigStartValue" SG_ 345 CAN_DET_RANGE_RATE_58 0; -BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_RATE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_RATE_58 "CAN_DET_RANGE_RATE_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_AMPLITUDE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_AMPLITUDE_58 "CAN_DET_AMPLITUDE_58"; -BA_ "GenSigSendType" SG_ 345 CAN_SCAN_INDEX_2LSB_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_SCAN_INDEX_2LSB_58 "CAN_SCAN_INDEX_2LSB_58"; -BA_ "GenMsgSendType" BO_ 344 1; -BA_ "GenMsgILSupport" BO_ 344 1; -BA_ "GenMsgNrOfRepetition" BO_ 344 0; -BA_ "GenMsgCycleTime" BO_ 344 0; -BA_ "NetworkInitialization" BO_ 344 0; -BA_ "GenMsgDelayTime" BO_ 344 0; -BA_ "GenSigVtEn" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigVtName" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 "CAN_DET_SUPER_RES_TARGET_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_ND_TARGET_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_ND_TARGET_57 "CAN_DET_ND_TARGET_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 "CAN_DET_HOST_VEH_CLUTTER_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_VALID_LEVEL_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_VALID_LEVEL_57 "CAN_DET_VALID_LEVEL_57"; -BA_ "GenSigStartValue" SG_ 344 CAN_DET_AZIMUTH_57 0; -BA_ "GenSigSendType" SG_ 344 CAN_DET_AZIMUTH_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_AZIMUTH_57 "CAN_DET_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_57 "CAN_DET_RANGE_57"; -BA_ "GenSigStartValue" SG_ 344 CAN_DET_RANGE_RATE_57 0; -BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_RATE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_RATE_57 "CAN_DET_RANGE_RATE_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_AMPLITUDE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_AMPLITUDE_57 "CAN_DET_AMPLITUDE_57"; -BA_ "GenSigSendType" SG_ 344 CAN_SCAN_INDEX_2LSB_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_SCAN_INDEX_2LSB_57 "CAN_SCAN_INDEX_2LSB_57"; -BA_ "GenMsgSendType" BO_ 343 1; -BA_ "GenMsgILSupport" BO_ 343 1; -BA_ "GenMsgNrOfRepetition" BO_ 343 0; -BA_ "GenMsgCycleTime" BO_ 343 0; -BA_ "NetworkInitialization" BO_ 343 0; -BA_ "GenMsgDelayTime" BO_ 343 0; -BA_ "GenSigVtEn" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigVtName" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 "CAN_DET_SUPER_RES_TARGET_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_ND_TARGET_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_ND_TARGET_56 "CAN_DET_ND_TARGET_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 "CAN_DET_HOST_VEH_CLUTTER_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_VALID_LEVEL_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_VALID_LEVEL_56 "CAN_DET_VALID_LEVEL_56"; -BA_ "GenSigStartValue" SG_ 343 CAN_DET_AZIMUTH_56 0; -BA_ "GenSigSendType" SG_ 343 CAN_DET_AZIMUTH_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_AZIMUTH_56 "CAN_DET_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_56 "CAN_DET_RANGE_56"; -BA_ "GenSigStartValue" SG_ 343 CAN_DET_RANGE_RATE_56 0; -BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_RATE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_RATE_56 "CAN_DET_RANGE_RATE_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_AMPLITUDE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_AMPLITUDE_56 "CAN_DET_AMPLITUDE_56"; -BA_ "GenSigSendType" SG_ 343 CAN_SCAN_INDEX_2LSB_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_SCAN_INDEX_2LSB_56 "CAN_SCAN_INDEX_2LSB_56"; -BA_ "GenMsgSendType" BO_ 342 1; -BA_ "GenMsgILSupport" BO_ 342 1; -BA_ "GenMsgNrOfRepetition" BO_ 342 0; -BA_ "GenMsgCycleTime" BO_ 342 0; -BA_ "NetworkInitialization" BO_ 342 0; -BA_ "GenMsgDelayTime" BO_ 342 0; -BA_ "GenSigVtEn" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigVtName" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 "CAN_DET_SUPER_RES_TARGET_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_ND_TARGET_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_ND_TARGET_55 "CAN_DET_ND_TARGET_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 "CAN_DET_HOST_VEH_CLUTTER_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_VALID_LEVEL_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_VALID_LEVEL_55 "CAN_DET_VALID_LEVEL_55"; -BA_ "GenSigStartValue" SG_ 342 CAN_DET_AZIMUTH_55 0; -BA_ "GenSigSendType" SG_ 342 CAN_DET_AZIMUTH_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_AZIMUTH_55 "CAN_DET_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_55 "CAN_DET_RANGE_55"; -BA_ "GenSigStartValue" SG_ 342 CAN_DET_RANGE_RATE_55 0; -BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_RATE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_RATE_55 "CAN_DET_RANGE_RATE_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_AMPLITUDE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_AMPLITUDE_55 "CAN_DET_AMPLITUDE_55"; -BA_ "GenSigSendType" SG_ 342 CAN_SCAN_INDEX_2LSB_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_SCAN_INDEX_2LSB_55 "CAN_SCAN_INDEX_2LSB_55"; -BA_ "GenMsgSendType" BO_ 335 1; -BA_ "GenMsgILSupport" BO_ 335 1; -BA_ "GenMsgNrOfRepetition" BO_ 335 0; -BA_ "GenMsgCycleTime" BO_ 335 0; -BA_ "NetworkInitialization" BO_ 335 0; -BA_ "GenMsgDelayTime" BO_ 335 0; -BA_ "GenSigVtEn" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigVtName" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 "CAN_DET_SUPER_RES_TARGET_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_ND_TARGET_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_ND_TARGET_48 "CAN_DET_ND_TARGET_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 "CAN_DET_HOST_VEH_CLUTTER_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_VALID_LEVEL_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_VALID_LEVEL_48 "CAN_DET_VALID_LEVEL_48"; -BA_ "GenSigStartValue" SG_ 335 CAN_DET_AZIMUTH_48 0; -BA_ "GenSigSendType" SG_ 335 CAN_DET_AZIMUTH_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_AZIMUTH_48 "CAN_DET_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_48 "CAN_DET_RANGE_48"; -BA_ "GenSigStartValue" SG_ 335 CAN_DET_RANGE_RATE_48 0; -BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_RATE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_RATE_48 "CAN_DET_RANGE_RATE_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_AMPLITUDE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_AMPLITUDE_48 "CAN_DET_AMPLITUDE_48"; -BA_ "GenSigSendType" SG_ 335 CAN_SCAN_INDEX_2LSB_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_SCAN_INDEX_2LSB_48 "CAN_SCAN_INDEX_2LSB_48"; -BA_ "GenMsgSendType" BO_ 334 1; -BA_ "GenMsgILSupport" BO_ 334 1; -BA_ "GenMsgNrOfRepetition" BO_ 334 0; -BA_ "GenMsgCycleTime" BO_ 334 0; -BA_ "NetworkInitialization" BO_ 334 0; -BA_ "GenMsgDelayTime" BO_ 334 0; -BA_ "GenSigVtEn" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigVtName" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 "CAN_DET_SUPER_RES_TARGET_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_ND_TARGET_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_ND_TARGET_47 "CAN_DET_ND_TARGET_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 "CAN_DET_HOST_VEH_CLUTTER_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_VALID_LEVEL_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_VALID_LEVEL_47 "CAN_DET_VALID_LEVEL_47"; -BA_ "GenSigStartValue" SG_ 334 CAN_DET_AZIMUTH_47 0; -BA_ "GenSigSendType" SG_ 334 CAN_DET_AZIMUTH_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_AZIMUTH_47 "CAN_DET_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_47 "CAN_DET_RANGE_47"; -BA_ "GenSigStartValue" SG_ 334 CAN_DET_RANGE_RATE_47 0; -BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_RATE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_RATE_47 "CAN_DET_RANGE_RATE_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_AMPLITUDE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_AMPLITUDE_47 "CAN_DET_AMPLITUDE_47"; -BA_ "GenSigSendType" SG_ 334 CAN_SCAN_INDEX_2LSB_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_SCAN_INDEX_2LSB_47 "CAN_SCAN_INDEX_2LSB_47"; -BA_ "GenMsgSendType" BO_ 333 1; -BA_ "GenMsgILSupport" BO_ 333 1; -BA_ "GenMsgNrOfRepetition" BO_ 333 0; -BA_ "GenMsgCycleTime" BO_ 333 0; -BA_ "NetworkInitialization" BO_ 333 0; -BA_ "GenMsgDelayTime" BO_ 333 0; -BA_ "GenSigVtEn" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigVtName" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 "CAN_DET_SUPER_RES_TARGET_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_ND_TARGET_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_ND_TARGET_46 "CAN_DET_ND_TARGET_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 "CAN_DET_HOST_VEH_CLUTTER_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_VALID_LEVEL_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_VALID_LEVEL_46 "CAN_DET_VALID_LEVEL_46"; -BA_ "GenSigStartValue" SG_ 333 CAN_DET_AZIMUTH_46 0; -BA_ "GenSigSendType" SG_ 333 CAN_DET_AZIMUTH_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_AZIMUTH_46 "CAN_DET_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_46 "CAN_DET_RANGE_46"; -BA_ "GenSigStartValue" SG_ 333 CAN_DET_RANGE_RATE_46 0; -BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_RATE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_RATE_46 "CAN_DET_RANGE_RATE_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_AMPLITUDE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_AMPLITUDE_46 "CAN_DET_AMPLITUDE_46"; -BA_ "GenSigSendType" SG_ 333 CAN_SCAN_INDEX_2LSB_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_SCAN_INDEX_2LSB_46 "CAN_SCAN_INDEX_2LSB_46"; -BA_ "GenMsgSendType" BO_ 332 1; -BA_ "GenMsgILSupport" BO_ 332 1; -BA_ "GenMsgNrOfRepetition" BO_ 332 0; -BA_ "GenMsgCycleTime" BO_ 332 0; -BA_ "NetworkInitialization" BO_ 332 0; -BA_ "GenMsgDelayTime" BO_ 332 0; -BA_ "GenSigVtEn" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigVtName" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 "CAN_DET_SUPER_RES_TARGET_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_ND_TARGET_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_ND_TARGET_45 "CAN_DET_ND_TARGET_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 "CAN_DET_HOST_VEH_CLUTTER_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_VALID_LEVEL_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_VALID_LEVEL_45 "CAN_DET_VALID_LEVEL_45"; -BA_ "GenSigStartValue" SG_ 332 CAN_DET_AZIMUTH_45 0; -BA_ "GenSigSendType" SG_ 332 CAN_DET_AZIMUTH_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_AZIMUTH_45 "CAN_DET_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_45 "CAN_DET_RANGE_45"; -BA_ "GenSigStartValue" SG_ 332 CAN_DET_RANGE_RATE_45 0; -BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_RATE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_RATE_45 "CAN_DET_RANGE_RATE_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_AMPLITUDE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_AMPLITUDE_45 "CAN_DET_AMPLITUDE_45"; -BA_ "GenSigSendType" SG_ 332 CAN_SCAN_INDEX_2LSB_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_SCAN_INDEX_2LSB_45 "CAN_SCAN_INDEX_2LSB_45"; -BA_ "GenMsgSendType" BO_ 331 1; -BA_ "GenMsgILSupport" BO_ 331 1; -BA_ "GenMsgNrOfRepetition" BO_ 331 0; -BA_ "GenMsgCycleTime" BO_ 331 0; -BA_ "NetworkInitialization" BO_ 331 0; -BA_ "GenMsgDelayTime" BO_ 331 0; -BA_ "GenSigVtEn" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigVtName" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 "CAN_DET_SUPER_RES_TARGET_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_ND_TARGET_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_ND_TARGET_44 "CAN_DET_ND_TARGET_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 "CAN_DET_HOST_VEH_CLUTTER_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_VALID_LEVEL_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_VALID_LEVEL_44 "CAN_DET_VALID_LEVEL_44"; -BA_ "GenSigStartValue" SG_ 331 CAN_DET_AZIMUTH_44 0; -BA_ "GenSigSendType" SG_ 331 CAN_DET_AZIMUTH_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_AZIMUTH_44 "CAN_DET_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_44 "CAN_DET_RANGE_44"; -BA_ "GenSigStartValue" SG_ 331 CAN_DET_RANGE_RATE_44 0; -BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_RATE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_RATE_44 "CAN_DET_RANGE_RATE_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_AMPLITUDE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_AMPLITUDE_44 "CAN_DET_AMPLITUDE_44"; -BA_ "GenSigSendType" SG_ 331 CAN_SCAN_INDEX_2LSB_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_SCAN_INDEX_2LSB_44 "CAN_SCAN_INDEX_2LSB_44"; -BA_ "GenMsgSendType" BO_ 330 1; -BA_ "GenMsgILSupport" BO_ 330 1; -BA_ "GenMsgNrOfRepetition" BO_ 330 0; -BA_ "GenMsgCycleTime" BO_ 330 0; -BA_ "NetworkInitialization" BO_ 330 0; -BA_ "GenMsgDelayTime" BO_ 330 0; -BA_ "GenSigVtEn" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigVtName" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 "CAN_DET_SUPER_RES_TARGET_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_ND_TARGET_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_ND_TARGET_43 "CAN_DET_ND_TARGET_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 "CAN_DET_HOST_VEH_CLUTTER_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_VALID_LEVEL_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_VALID_LEVEL_43 "CAN_DET_VALID_LEVEL_43"; -BA_ "GenSigStartValue" SG_ 330 CAN_DET_AZIMUTH_43 0; -BA_ "GenSigSendType" SG_ 330 CAN_DET_AZIMUTH_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_AZIMUTH_43 "CAN_DET_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_43 "CAN_DET_RANGE_43"; -BA_ "GenSigStartValue" SG_ 330 CAN_DET_RANGE_RATE_43 0; -BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_RATE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_RATE_43 "CAN_DET_RANGE_RATE_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_AMPLITUDE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_AMPLITUDE_43 "CAN_DET_AMPLITUDE_43"; -BA_ "GenSigSendType" SG_ 330 CAN_SCAN_INDEX_2LSB_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_SCAN_INDEX_2LSB_43 "CAN_SCAN_INDEX_2LSB_43"; -BA_ "GenMsgSendType" BO_ 329 1; -BA_ "GenMsgILSupport" BO_ 329 1; -BA_ "GenMsgNrOfRepetition" BO_ 329 0; -BA_ "GenMsgCycleTime" BO_ 329 0; -BA_ "NetworkInitialization" BO_ 329 0; -BA_ "GenMsgDelayTime" BO_ 329 0; -BA_ "GenSigVtEn" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigVtName" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 "CAN_DET_SUPER_RES_TARGET_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_ND_TARGET_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_ND_TARGET_42 "CAN_DET_ND_TARGET_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 "CAN_DET_HOST_VEH_CLUTTER_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_VALID_LEVEL_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_VALID_LEVEL_42 "CAN_DET_VALID_LEVEL_42"; -BA_ "GenSigStartValue" SG_ 329 CAN_DET_AZIMUTH_42 0; -BA_ "GenSigSendType" SG_ 329 CAN_DET_AZIMUTH_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_AZIMUTH_42 "CAN_DET_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_42 "CAN_DET_RANGE_42"; -BA_ "GenSigStartValue" SG_ 329 CAN_DET_RANGE_RATE_42 0; -BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_RATE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_RATE_42 "CAN_DET_RANGE_RATE_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_AMPLITUDE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_AMPLITUDE_42 "CAN_DET_AMPLITUDE_42"; -BA_ "GenSigSendType" SG_ 329 CAN_SCAN_INDEX_2LSB_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_SCAN_INDEX_2LSB_42 "CAN_SCAN_INDEX_2LSB_42"; -BA_ "GenMsgSendType" BO_ 328 1; -BA_ "GenMsgILSupport" BO_ 328 1; -BA_ "GenMsgNrOfRepetition" BO_ 328 0; -BA_ "GenMsgCycleTime" BO_ 328 0; -BA_ "NetworkInitialization" BO_ 328 0; -BA_ "GenMsgDelayTime" BO_ 328 0; -BA_ "GenSigVtEn" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigVtName" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 "CAN_DET_SUPER_RES_TARGET_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_ND_TARGET_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_ND_TARGET_41 "CAN_DET_ND_TARGET_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 "CAN_DET_HOST_VEH_CLUTTER_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_VALID_LEVEL_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_VALID_LEVEL_41 "CAN_DET_VALID_LEVEL_41"; -BA_ "GenSigStartValue" SG_ 328 CAN_DET_AZIMUTH_41 0; -BA_ "GenSigSendType" SG_ 328 CAN_DET_AZIMUTH_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_AZIMUTH_41 "CAN_DET_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_41 "CAN_DET_RANGE_41"; -BA_ "GenSigStartValue" SG_ 328 CAN_DET_RANGE_RATE_41 0; -BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_RATE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_RATE_41 "CAN_DET_RANGE_RATE_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_AMPLITUDE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_AMPLITUDE_41 "CAN_DET_AMPLITUDE_41"; -BA_ "GenSigSendType" SG_ 328 CAN_SCAN_INDEX_2LSB_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_SCAN_INDEX_2LSB_41 "CAN_SCAN_INDEX_2LSB_41"; -BA_ "GenMsgSendType" BO_ 327 1; -BA_ "GenMsgILSupport" BO_ 327 1; -BA_ "GenMsgNrOfRepetition" BO_ 327 0; -BA_ "GenMsgCycleTime" BO_ 327 0; -BA_ "NetworkInitialization" BO_ 327 0; -BA_ "GenMsgDelayTime" BO_ 327 0; -BA_ "GenSigVtEn" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigVtName" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 "CAN_DET_SUPER_RES_TARGET_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_ND_TARGET_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_ND_TARGET_40 "CAN_DET_ND_TARGET_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 "CAN_DET_HOST_VEH_CLUTTER_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_VALID_LEVEL_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_VALID_LEVEL_40 "CAN_DET_VALID_LEVEL_40"; -BA_ "GenSigStartValue" SG_ 327 CAN_DET_AZIMUTH_40 0; -BA_ "GenSigSendType" SG_ 327 CAN_DET_AZIMUTH_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_AZIMUTH_40 "CAN_DET_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_40 "CAN_DET_RANGE_40"; -BA_ "GenSigStartValue" SG_ 327 CAN_DET_RANGE_RATE_40 0; -BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_RATE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_RATE_40 "CAN_DET_RANGE_RATE_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_AMPLITUDE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_AMPLITUDE_40 "CAN_DET_AMPLITUDE_40"; -BA_ "GenSigSendType" SG_ 327 CAN_SCAN_INDEX_2LSB_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_SCAN_INDEX_2LSB_40 "CAN_SCAN_INDEX_2LSB_40"; -BA_ "GenMsgSendType" BO_ 325 1; -BA_ "GenMsgILSupport" BO_ 325 1; -BA_ "GenMsgNrOfRepetition" BO_ 325 0; -BA_ "GenMsgCycleTime" BO_ 325 0; -BA_ "NetworkInitialization" BO_ 325 0; -BA_ "GenMsgDelayTime" BO_ 325 0; -BA_ "GenSigVtEn" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigVtName" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 "CAN_DET_SUPER_RES_TARGET_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_ND_TARGET_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_ND_TARGET_38 "CAN_DET_ND_TARGET_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 "CAN_DET_HOST_VEH_CLUTTER_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_VALID_LEVEL_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_VALID_LEVEL_38 "CAN_DET_VALID_LEVEL_38"; -BA_ "GenSigStartValue" SG_ 325 CAN_DET_AZIMUTH_38 0; -BA_ "GenSigSendType" SG_ 325 CAN_DET_AZIMUTH_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_AZIMUTH_38 "CAN_DET_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_38 "CAN_DET_RANGE_38"; -BA_ "GenSigStartValue" SG_ 325 CAN_DET_RANGE_RATE_38 0; -BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_RATE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_RATE_38 "CAN_DET_RANGE_RATE_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_AMPLITUDE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_AMPLITUDE_38 "CAN_DET_AMPLITUDE_38"; -BA_ "GenSigSendType" SG_ 325 CAN_SCAN_INDEX_2LSB_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_SCAN_INDEX_2LSB_38 "CAN_SCAN_INDEX_2LSB_38"; -BA_ "GenMsgSendType" BO_ 324 1; -BA_ "GenMsgILSupport" BO_ 324 1; -BA_ "GenMsgNrOfRepetition" BO_ 324 0; -BA_ "GenMsgCycleTime" BO_ 324 0; -BA_ "NetworkInitialization" BO_ 324 0; -BA_ "GenMsgDelayTime" BO_ 324 0; -BA_ "GenSigVtEn" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigVtName" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 "CAN_DET_SUPER_RES_TARGET_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_ND_TARGET_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_ND_TARGET_37 "CAN_DET_ND_TARGET_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 "CAN_DET_HOST_VEH_CLUTTER_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_VALID_LEVEL_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_VALID_LEVEL_37 "CAN_DET_VALID_LEVEL_37"; -BA_ "GenSigStartValue" SG_ 324 CAN_DET_AZIMUTH_37 0; -BA_ "GenSigSendType" SG_ 324 CAN_DET_AZIMUTH_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_AZIMUTH_37 "CAN_DET_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_37 "CAN_DET_RANGE_37"; -BA_ "GenSigStartValue" SG_ 324 CAN_DET_RANGE_RATE_37 0; -BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_RATE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_RATE_37 "CAN_DET_RANGE_RATE_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_AMPLITUDE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_AMPLITUDE_37 "CAN_DET_AMPLITUDE_37"; -BA_ "GenSigSendType" SG_ 324 CAN_SCAN_INDEX_2LSB_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_SCAN_INDEX_2LSB_37 "CAN_SCAN_INDEX_2LSB_37"; -BA_ "GenMsgSendType" BO_ 323 1; -BA_ "GenMsgILSupport" BO_ 323 1; -BA_ "GenMsgNrOfRepetition" BO_ 323 0; -BA_ "GenMsgCycleTime" BO_ 323 0; -BA_ "NetworkInitialization" BO_ 323 0; -BA_ "GenMsgDelayTime" BO_ 323 0; -BA_ "GenSigVtEn" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigVtName" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 "CAN_DET_SUPER_RES_TARGET_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_ND_TARGET_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_ND_TARGET_36 "CAN_DET_ND_TARGET_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 "CAN_DET_HOST_VEH_CLUTTER_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_VALID_LEVEL_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_VALID_LEVEL_36 "CAN_DET_VALID_LEVEL_36"; -BA_ "GenSigStartValue" SG_ 323 CAN_DET_AZIMUTH_36 0; -BA_ "GenSigSendType" SG_ 323 CAN_DET_AZIMUTH_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_AZIMUTH_36 "CAN_DET_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_36 "CAN_DET_RANGE_36"; -BA_ "GenSigStartValue" SG_ 323 CAN_DET_RANGE_RATE_36 0; -BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_RATE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_RATE_36 "CAN_DET_RANGE_RATE_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_AMPLITUDE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_AMPLITUDE_36 "CAN_DET_AMPLITUDE_36"; -BA_ "GenSigSendType" SG_ 323 CAN_SCAN_INDEX_2LSB_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_SCAN_INDEX_2LSB_36 "CAN_SCAN_INDEX_2LSB_36"; -BA_ "GenMsgSendType" BO_ 322 1; -BA_ "GenMsgILSupport" BO_ 322 1; -BA_ "GenMsgNrOfRepetition" BO_ 322 0; -BA_ "GenMsgCycleTime" BO_ 322 0; -BA_ "NetworkInitialization" BO_ 322 0; -BA_ "GenMsgDelayTime" BO_ 322 0; -BA_ "GenSigVtEn" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigVtName" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 "CAN_DET_SUPER_RES_TARGET_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_ND_TARGET_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_ND_TARGET_35 "CAN_DET_ND_TARGET_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 "CAN_DET_HOST_VEH_CLUTTER_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_VALID_LEVEL_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_VALID_LEVEL_35 "CAN_DET_VALID_LEVEL_35"; -BA_ "GenSigStartValue" SG_ 322 CAN_DET_AZIMUTH_35 0; -BA_ "GenSigSendType" SG_ 322 CAN_DET_AZIMUTH_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_AZIMUTH_35 "CAN_DET_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_35 "CAN_DET_RANGE_35"; -BA_ "GenSigStartValue" SG_ 322 CAN_DET_RANGE_RATE_35 0; -BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_RATE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_RATE_35 "CAN_DET_RANGE_RATE_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_AMPLITUDE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_AMPLITUDE_35 "CAN_DET_AMPLITUDE_35"; -BA_ "GenSigSendType" SG_ 322 CAN_SCAN_INDEX_2LSB_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_SCAN_INDEX_2LSB_35 "CAN_SCAN_INDEX_2LSB_35"; -BA_ "GenMsgSendType" BO_ 321 1; -BA_ "GenMsgILSupport" BO_ 321 1; -BA_ "GenMsgNrOfRepetition" BO_ 321 0; -BA_ "GenMsgCycleTime" BO_ 321 0; -BA_ "NetworkInitialization" BO_ 321 0; -BA_ "GenMsgDelayTime" BO_ 321 0; -BA_ "GenSigVtEn" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigVtName" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 "CAN_DET_SUPER_RES_TARGET_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_ND_TARGET_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_ND_TARGET_34 "CAN_DET_ND_TARGET_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 "CAN_DET_HOST_VEH_CLUTTER_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_VALID_LEVEL_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_VALID_LEVEL_34 "CAN_DET_VALID_LEVEL_34"; -BA_ "GenSigStartValue" SG_ 321 CAN_DET_AZIMUTH_34 0; -BA_ "GenSigSendType" SG_ 321 CAN_DET_AZIMUTH_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_AZIMUTH_34 "CAN_DET_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_34 "CAN_DET_RANGE_34"; -BA_ "GenSigStartValue" SG_ 321 CAN_DET_RANGE_RATE_34 0; -BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_RATE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_RATE_34 "CAN_DET_RANGE_RATE_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_AMPLITUDE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_AMPLITUDE_34 "CAN_DET_AMPLITUDE_34"; -BA_ "GenSigSendType" SG_ 321 CAN_SCAN_INDEX_2LSB_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_SCAN_INDEX_2LSB_34 "CAN_SCAN_INDEX_2LSB_34"; -BA_ "GenMsgSendType" BO_ 320 1; -BA_ "GenMsgILSupport" BO_ 320 1; -BA_ "GenMsgNrOfRepetition" BO_ 320 0; -BA_ "GenMsgCycleTime" BO_ 320 0; -BA_ "NetworkInitialization" BO_ 320 0; -BA_ "GenMsgDelayTime" BO_ 320 0; -BA_ "GenSigVtEn" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigVtName" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 "CAN_DET_SUPER_RES_TARGET_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_ND_TARGET_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_ND_TARGET_33 "CAN_DET_ND_TARGET_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 "CAN_DET_HOST_VEH_CLUTTER_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_VALID_LEVEL_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_VALID_LEVEL_33 "CAN_DET_VALID_LEVEL_33"; -BA_ "GenSigStartValue" SG_ 320 CAN_DET_AZIMUTH_33 0; -BA_ "GenSigSendType" SG_ 320 CAN_DET_AZIMUTH_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_AZIMUTH_33 "CAN_DET_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_33 "CAN_DET_RANGE_33"; -BA_ "GenSigStartValue" SG_ 320 CAN_DET_RANGE_RATE_33 0; -BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_RATE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_RATE_33 "CAN_DET_RANGE_RATE_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_AMPLITUDE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_AMPLITUDE_33 "CAN_DET_AMPLITUDE_33"; -BA_ "GenSigSendType" SG_ 320 CAN_SCAN_INDEX_2LSB_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_SCAN_INDEX_2LSB_33 "CAN_SCAN_INDEX_2LSB_33"; -BA_ "GenMsgSendType" BO_ 319 1; -BA_ "GenMsgILSupport" BO_ 319 1; -BA_ "GenMsgNrOfRepetition" BO_ 319 0; -BA_ "GenMsgCycleTime" BO_ 319 0; -BA_ "NetworkInitialization" BO_ 319 0; -BA_ "GenMsgDelayTime" BO_ 319 0; -BA_ "GenSigVtEn" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigVtName" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 "CAN_DET_SUPER_RES_TARGET_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_ND_TARGET_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_ND_TARGET_32 "CAN_DET_ND_TARGET_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 "CAN_DET_HOST_VEH_CLUTTER_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_VALID_LEVEL_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_VALID_LEVEL_32 "CAN_DET_VALID_LEVEL_32"; -BA_ "GenSigStartValue" SG_ 319 CAN_DET_AZIMUTH_32 0; -BA_ "GenSigSendType" SG_ 319 CAN_DET_AZIMUTH_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_AZIMUTH_32 "CAN_DET_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_32 "CAN_DET_RANGE_32"; -BA_ "GenSigStartValue" SG_ 319 CAN_DET_RANGE_RATE_32 0; -BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_RATE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_RATE_32 "CAN_DET_RANGE_RATE_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_AMPLITUDE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_AMPLITUDE_32 "CAN_DET_AMPLITUDE_32"; -BA_ "GenSigSendType" SG_ 319 CAN_SCAN_INDEX_2LSB_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_SCAN_INDEX_2LSB_32 "CAN_SCAN_INDEX_2LSB_32"; -BA_ "GenMsgSendType" BO_ 318 1; -BA_ "GenMsgILSupport" BO_ 318 1; -BA_ "GenMsgNrOfRepetition" BO_ 318 0; -BA_ "GenMsgCycleTime" BO_ 318 0; -BA_ "NetworkInitialization" BO_ 318 0; -BA_ "GenMsgDelayTime" BO_ 318 0; -BA_ "GenSigVtEn" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigVtName" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 "CAN_DET_SUPER_RES_TARGET_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_ND_TARGET_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_ND_TARGET_31 "CAN_DET_ND_TARGET_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 "CAN_DET_HOST_VEH_CLUTTER_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_VALID_LEVEL_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_VALID_LEVEL_31 "CAN_DET_VALID_LEVEL_31"; -BA_ "GenSigStartValue" SG_ 318 CAN_DET_AZIMUTH_31 0; -BA_ "GenSigSendType" SG_ 318 CAN_DET_AZIMUTH_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_AZIMUTH_31 "CAN_DET_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_31 "CAN_DET_RANGE_31"; -BA_ "GenSigStartValue" SG_ 318 CAN_DET_RANGE_RATE_31 0; -BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_RATE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_RATE_31 "CAN_DET_RANGE_RATE_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_AMPLITUDE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_AMPLITUDE_31 "CAN_DET_AMPLITUDE_31"; -BA_ "GenSigSendType" SG_ 318 CAN_SCAN_INDEX_2LSB_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_SCAN_INDEX_2LSB_31 "CAN_SCAN_INDEX_2LSB_31"; -BA_ "GenMsgSendType" BO_ 317 1; -BA_ "GenMsgILSupport" BO_ 317 1; -BA_ "GenMsgNrOfRepetition" BO_ 317 0; -BA_ "GenMsgCycleTime" BO_ 317 0; -BA_ "NetworkInitialization" BO_ 317 0; -BA_ "GenMsgDelayTime" BO_ 317 0; -BA_ "GenSigVtEn" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigVtName" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 "CAN_DET_SUPER_RES_TARGET_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_ND_TARGET_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_ND_TARGET_30 "CAN_DET_ND_TARGET_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 "CAN_DET_HOST_VEH_CLUTTER_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_VALID_LEVEL_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_VALID_LEVEL_30 "CAN_DET_VALID_LEVEL_30"; -BA_ "GenSigStartValue" SG_ 317 CAN_DET_AZIMUTH_30 0; -BA_ "GenSigSendType" SG_ 317 CAN_DET_AZIMUTH_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_AZIMUTH_30 "CAN_DET_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_30 "CAN_DET_RANGE_30"; -BA_ "GenSigStartValue" SG_ 317 CAN_DET_RANGE_RATE_30 0; -BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_RATE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_RATE_30 "CAN_DET_RANGE_RATE_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_AMPLITUDE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_AMPLITUDE_30 "CAN_DET_AMPLITUDE_30"; -BA_ "GenSigSendType" SG_ 317 CAN_SCAN_INDEX_2LSB_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_SCAN_INDEX_2LSB_30 "CAN_SCAN_INDEX_2LSB_30"; -BA_ "GenMsgSendType" BO_ 316 1; -BA_ "GenMsgILSupport" BO_ 316 1; -BA_ "GenMsgNrOfRepetition" BO_ 316 0; -BA_ "GenMsgCycleTime" BO_ 316 0; -BA_ "NetworkInitialization" BO_ 316 0; -BA_ "GenMsgDelayTime" BO_ 316 0; -BA_ "GenSigVtEn" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigVtName" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 "CAN_DET_SUPER_RES_TARGET_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_ND_TARGET_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_ND_TARGET_29 "CAN_DET_ND_TARGET_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 "CAN_DET_HOST_VEH_CLUTTER_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_VALID_LEVEL_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_VALID_LEVEL_29 "CAN_DET_VALID_LEVEL_29"; -BA_ "GenSigStartValue" SG_ 316 CAN_DET_AZIMUTH_29 0; -BA_ "GenSigSendType" SG_ 316 CAN_DET_AZIMUTH_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_AZIMUTH_29 "CAN_DET_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_29 "CAN_DET_RANGE_29"; -BA_ "GenSigStartValue" SG_ 316 CAN_DET_RANGE_RATE_29 0; -BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_RATE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_RATE_29 "CAN_DET_RANGE_RATE_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_AMPLITUDE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_AMPLITUDE_29 "CAN_DET_AMPLITUDE_29"; -BA_ "GenSigSendType" SG_ 316 CAN_SCAN_INDEX_2LSB_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_SCAN_INDEX_2LSB_29 "CAN_SCAN_INDEX_2LSB_29"; -BA_ "GenMsgSendType" BO_ 314 1; -BA_ "GenMsgILSupport" BO_ 314 1; -BA_ "GenMsgNrOfRepetition" BO_ 314 0; -BA_ "GenMsgCycleTime" BO_ 314 0; -BA_ "NetworkInitialization" BO_ 314 0; -BA_ "GenMsgDelayTime" BO_ 314 0; -BA_ "GenSigVtEn" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigVtName" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 "CAN_DET_SUPER_RES_TARGET_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_ND_TARGET_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_ND_TARGET_27 "CAN_DET_ND_TARGET_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 "CAN_DET_HOST_VEH_CLUTTER_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_VALID_LEVEL_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_VALID_LEVEL_27 "CAN_DET_VALID_LEVEL_27"; -BA_ "GenSigStartValue" SG_ 314 CAN_DET_AZIMUTH_27 0; -BA_ "GenSigSendType" SG_ 314 CAN_DET_AZIMUTH_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_AZIMUTH_27 "CAN_DET_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_27 "CAN_DET_RANGE_27"; -BA_ "GenSigStartValue" SG_ 314 CAN_DET_RANGE_RATE_27 0; -BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_RATE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_RATE_27 "CAN_DET_RANGE_RATE_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_AMPLITUDE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_AMPLITUDE_27 "CAN_DET_AMPLITUDE_27"; -BA_ "GenSigSendType" SG_ 314 CAN_SCAN_INDEX_2LSB_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_SCAN_INDEX_2LSB_27 "CAN_SCAN_INDEX_2LSB_27"; -BA_ "GenMsgSendType" BO_ 313 1; -BA_ "GenMsgILSupport" BO_ 313 1; -BA_ "GenMsgNrOfRepetition" BO_ 313 0; -BA_ "GenMsgCycleTime" BO_ 313 0; -BA_ "NetworkInitialization" BO_ 313 0; -BA_ "GenMsgDelayTime" BO_ 313 0; -BA_ "GenSigVtEn" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigVtName" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 "CAN_DET_SUPER_RES_TARGET_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_ND_TARGET_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_ND_TARGET_26 "CAN_DET_ND_TARGET_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 "CAN_DET_HOST_VEH_CLUTTER_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_VALID_LEVEL_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_VALID_LEVEL_26 "CAN_DET_VALID_LEVEL_26"; -BA_ "GenSigStartValue" SG_ 313 CAN_DET_AZIMUTH_26 0; -BA_ "GenSigSendType" SG_ 313 CAN_DET_AZIMUTH_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_AZIMUTH_26 "CAN_DET_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_26 "CAN_DET_RANGE_26"; -BA_ "GenSigStartValue" SG_ 313 CAN_DET_RANGE_RATE_26 0; -BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_RATE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_RATE_26 "CAN_DET_RANGE_RATE_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_AMPLITUDE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_AMPLITUDE_26 "CAN_DET_AMPLITUDE_26"; -BA_ "GenSigSendType" SG_ 313 CAN_SCAN_INDEX_2LSB_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_SCAN_INDEX_2LSB_26 "CAN_SCAN_INDEX_2LSB_26"; -BA_ "GenMsgSendType" BO_ 312 1; -BA_ "GenMsgILSupport" BO_ 312 1; -BA_ "GenMsgNrOfRepetition" BO_ 312 0; -BA_ "GenMsgCycleTime" BO_ 312 0; -BA_ "NetworkInitialization" BO_ 312 0; -BA_ "GenMsgDelayTime" BO_ 312 0; -BA_ "GenSigVtEn" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigVtName" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 "CAN_DET_SUPER_RES_TARGET_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_ND_TARGET_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_ND_TARGET_25 "CAN_DET_ND_TARGET_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 "CAN_DET_HOST_VEH_CLUTTER_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_VALID_LEVEL_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_VALID_LEVEL_25 "CAN_DET_VALID_LEVEL_25"; -BA_ "GenSigStartValue" SG_ 312 CAN_DET_AZIMUTH_25 0; -BA_ "GenSigSendType" SG_ 312 CAN_DET_AZIMUTH_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_AZIMUTH_25 "CAN_DET_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_25 "CAN_DET_RANGE_25"; -BA_ "GenSigStartValue" SG_ 312 CAN_DET_RANGE_RATE_25 0; -BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_RATE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_RATE_25 "CAN_DET_RANGE_RATE_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_AMPLITUDE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_AMPLITUDE_25 "CAN_DET_AMPLITUDE_25"; -BA_ "GenSigSendType" SG_ 312 CAN_SCAN_INDEX_2LSB_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_SCAN_INDEX_2LSB_25 "CAN_SCAN_INDEX_2LSB_25"; -BA_ "GenMsgSendType" BO_ 311 1; -BA_ "GenMsgILSupport" BO_ 311 1; -BA_ "GenMsgNrOfRepetition" BO_ 311 0; -BA_ "GenMsgCycleTime" BO_ 311 0; -BA_ "NetworkInitialization" BO_ 311 0; -BA_ "GenMsgDelayTime" BO_ 311 0; -BA_ "GenSigVtEn" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigVtName" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 "CAN_DET_SUPER_RES_TARGET_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_ND_TARGET_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_ND_TARGET_24 "CAN_DET_ND_TARGET_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 "CAN_DET_HOST_VEH_CLUTTER_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_VALID_LEVEL_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_VALID_LEVEL_24 "CAN_DET_VALID_LEVEL_24"; -BA_ "GenSigStartValue" SG_ 311 CAN_DET_AZIMUTH_24 0; -BA_ "GenSigSendType" SG_ 311 CAN_DET_AZIMUTH_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_AZIMUTH_24 "CAN_DET_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_24 "CAN_DET_RANGE_24"; -BA_ "GenSigStartValue" SG_ 311 CAN_DET_RANGE_RATE_24 0; -BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_RATE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_RATE_24 "CAN_DET_RANGE_RATE_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_AMPLITUDE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_AMPLITUDE_24 "CAN_DET_AMPLITUDE_24"; -BA_ "GenSigSendType" SG_ 311 CAN_SCAN_INDEX_2LSB_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_SCAN_INDEX_2LSB_24 "CAN_SCAN_INDEX_2LSB_24"; -BA_ "GenMsgSendType" BO_ 310 1; -BA_ "GenMsgILSupport" BO_ 310 1; -BA_ "GenMsgNrOfRepetition" BO_ 310 0; -BA_ "GenMsgCycleTime" BO_ 310 0; -BA_ "NetworkInitialization" BO_ 310 0; -BA_ "GenMsgDelayTime" BO_ 310 0; -BA_ "GenSigVtEn" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigVtName" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 "CAN_DET_SUPER_RES_TARGET_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_ND_TARGET_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_ND_TARGET_23 "CAN_DET_ND_TARGET_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 "CAN_DET_HOST_VEH_CLUTTER_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_VALID_LEVEL_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_VALID_LEVEL_23 "CAN_DET_VALID_LEVEL_23"; -BA_ "GenSigStartValue" SG_ 310 CAN_DET_AZIMUTH_23 0; -BA_ "GenSigSendType" SG_ 310 CAN_DET_AZIMUTH_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_AZIMUTH_23 "CAN_DET_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_23 "CAN_DET_RANGE_23"; -BA_ "GenSigStartValue" SG_ 310 CAN_DET_RANGE_RATE_23 0; -BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_RATE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_RATE_23 "CAN_DET_RANGE_RATE_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_AMPLITUDE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_AMPLITUDE_23 "CAN_DET_AMPLITUDE_23"; -BA_ "GenSigSendType" SG_ 310 CAN_SCAN_INDEX_2LSB_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_SCAN_INDEX_2LSB_23 "CAN_SCAN_INDEX_2LSB_23"; -BA_ "GenMsgSendType" BO_ 309 1; -BA_ "GenMsgILSupport" BO_ 309 1; -BA_ "GenMsgNrOfRepetition" BO_ 309 0; -BA_ "GenMsgCycleTime" BO_ 309 0; -BA_ "NetworkInitialization" BO_ 309 0; -BA_ "GenMsgDelayTime" BO_ 309 0; -BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 "CAN_DET_CONFID_AZIMUTH_22_01"; -BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 "CAN_DET_CONFID_AZIMUTH_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 "CAN_DET_CONFID_AZIMUTH_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_01 "CAN_DET_SUPER_RES_TARGET_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22_01 "CAN_DET_ND_TARGET_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_01 "CAN_DET_HOST_VEH_CLUTTER_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22_01 "CAN_DET_VALID_LEVEL_22_01"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22_01 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22_01 "CAN_DET_AZIMUTH_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22_01 "CAN_DET_RANGE_22_01"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22_01 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22_01 "CAN_DET_RANGE_RATE_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22_01 "CAN_DET_AMPLITUDE_22_01"; -BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22_01 0; -BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22_01 "CAN_SCAN_INDEX_2LSB_22_01"; -BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 "CAN_DET_CONFID_AZIMUTH_22_02"; -BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 "CAN_DET_CONFID_AZIMUTH_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 "CAN_DET_CONFID_AZIMUTH_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_02 "CAN_DET_SUPER_RES_TARGET_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22_02 "CAN_DET_ND_TARGET_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_02 "CAN_DET_HOST_VEH_CLUTTER_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22_02 "CAN_DET_VALID_LEVEL_22_02"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22_02 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22_02 "CAN_DET_AZIMUTH_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22_02 "CAN_DET_RANGE_22_02"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22_02 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22_02 "CAN_DET_RANGE_RATE_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22_02 "CAN_DET_AMPLITUDE_22_02"; -BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22_02 0; -BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22_02 "CAN_SCAN_INDEX_2LSB_22_02"; -BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 "CAN_DET_CONFID_AZIMUTH_22_03"; -BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 "CAN_DET_CONFID_AZIMUTH_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 "CAN_DET_CONFID_AZIMUTH_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_03 "CAN_DET_SUPER_RES_TARGET_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22_03 "CAN_DET_ND_TARGET_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_03 "CAN_DET_HOST_VEH_CLUTTER_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22_03 "CAN_DET_VALID_LEVEL_22_03"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22_03 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22_03 "CAN_DET_AZIMUTH_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22_03 "CAN_DET_RANGE_22_03"; -BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22_03 0; -BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22_03 "CAN_DET_RANGE_RATE_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22_03 "CAN_DET_AMPLITUDE_22_03"; -BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22_03 0; -BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22_03 "CAN_SCAN_INDEX_2LSB_22_03"; -BA_ "GenMsgSendType" BO_ 308 1; -BA_ "GenMsgILSupport" BO_ 308 1; -BA_ "GenMsgNrOfRepetition" BO_ 308 0; -BA_ "GenMsgCycleTime" BO_ 308 0; -BA_ "NetworkInitialization" BO_ 308 0; -BA_ "GenMsgDelayTime" BO_ 308 0; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 "CAN_DET_CONFID_AZIMUTH_21_01"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 "CAN_DET_CONFID_AZIMUTH_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 "CAN_DET_CONFID_AZIMUTH_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_01 "CAN_DET_SUPER_RES_TARGET_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_01 "CAN_DET_ND_TARGET_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_01 "CAN_DET_HOST_VEH_CLUTTER_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_01 "CAN_DET_VALID_LEVEL_21_01"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_01 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_01 "CAN_DET_AZIMUTH_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_01 "CAN_DET_RANGE_21_01"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_01 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_01 "CAN_DET_RANGE_RATE_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_01 "CAN_DET_AMPLITUDE_21_01"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_01 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_01 "CAN_SCAN_INDEX_2LSB_21_01"; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 "CAN_DET_CONFID_AZIMUTH_21_02"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 "CAN_DET_CONFID_AZIMUTH_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 "CAN_DET_CONFID_AZIMUTH_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_02 "CAN_DET_SUPER_RES_TARGET_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_02 "CAN_DET_ND_TARGET_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_02 "CAN_DET_HOST_VEH_CLUTTER_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_02 "CAN_DET_VALID_LEVEL_21_02"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_02 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_02 "CAN_DET_AZIMUTH_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_02 "CAN_DET_RANGE_21_02"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_02 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_02 "CAN_DET_RANGE_RATE_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_02 "CAN_DET_AMPLITUDE_21_02"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_02 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_02 "CAN_SCAN_INDEX_2LSB_21_02"; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 "CAN_DET_CONFID_AZIMUTH_21_03"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 "CAN_DET_CONFID_AZIMUTH_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 "CAN_DET_CONFID_AZIMUTH_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_03 "CAN_DET_SUPER_RES_TARGET_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_03 "CAN_DET_ND_TARGET_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_03 "CAN_DET_HOST_VEH_CLUTTER_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_03 "CAN_DET_VALID_LEVEL_21_03"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_03 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_03 "CAN_DET_AZIMUTH_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_03 "CAN_DET_RANGE_21_03"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_03 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_03 "CAN_DET_RANGE_RATE_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_03 "CAN_DET_AMPLITUDE_21_03"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_03 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_03 "CAN_SCAN_INDEX_2LSB_21_03"; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 "CAN_DET_CONFID_AZIMUTH_21_04"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 "CAN_DET_CONFID_AZIMUTH_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 "CAN_DET_CONFID_AZIMUTH_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_04 "CAN_DET_SUPER_RES_TARGET_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_04 "CAN_DET_ND_TARGET_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_04 "CAN_DET_HOST_VEH_CLUTTER_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_04 "CAN_DET_VALID_LEVEL_21_04"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_04 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_04 "CAN_DET_AZIMUTH_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_04 "CAN_DET_RANGE_21_04"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_04 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_04 "CAN_DET_RANGE_RATE_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_04 "CAN_DET_AMPLITUDE_21_04"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_04 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_04 "CAN_SCAN_INDEX_2LSB_21_04"; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 "CAN_DET_CONFID_AZIMUTH_21_05"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 "CAN_DET_CONFID_AZIMUTH_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 "CAN_DET_CONFID_AZIMUTH_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_05 "CAN_DET_SUPER_RES_TARGET_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_05 "CAN_DET_ND_TARGET_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_05 "CAN_DET_HOST_VEH_CLUTTER_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_05 "CAN_DET_VALID_LEVEL_21_05"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_05 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_05 "CAN_DET_AZIMUTH_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_05 "CAN_DET_RANGE_21_05"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_05 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_05 "CAN_DET_RANGE_RATE_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_05 "CAN_DET_AMPLITUDE_21_05"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_05 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_05 "CAN_SCAN_INDEX_2LSB_21_05"; -BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 "CAN_DET_CONFID_AZIMUTH_21_06"; -BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 "CAN_DET_CONFID_AZIMUTH_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 "CAN_DET_CONFID_AZIMUTH_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_06 "CAN_DET_SUPER_RES_TARGET_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_06 "CAN_DET_ND_TARGET_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_06 "CAN_DET_HOST_VEH_CLUTTER_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_06 "CAN_DET_VALID_LEVEL_21_06"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_06 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_06 "CAN_DET_AZIMUTH_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_06 "CAN_DET_RANGE_21_06"; -BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_06 0; -BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_06 "CAN_DET_RANGE_RATE_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_06 "CAN_DET_AMPLITUDE_21_06"; -BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_06 0; -BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_06 "CAN_SCAN_INDEX_2LSB_21_06"; -BA_ "GenMsgSendType" BO_ 307 1; -BA_ "GenMsgILSupport" BO_ 307 1; -BA_ "GenMsgNrOfRepetition" BO_ 307 0; -BA_ "GenMsgCycleTime" BO_ 307 0; -BA_ "NetworkInitialization" BO_ 307 0; -BA_ "GenMsgDelayTime" BO_ 307 0; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 "CAN_DET_CONFID_AZIMUTH_20_01"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 "CAN_DET_CONFID_AZIMUTH_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 "CAN_DET_CONFID_AZIMUTH_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_01 "CAN_DET_SUPER_RES_TARGET_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_01 "CAN_DET_ND_TARGET_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_01 "CAN_DET_HOST_VEH_CLUTTER_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_01 "CAN_DET_VALID_LEVEL_20_01"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_01 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_01 "CAN_DET_AZIMUTH_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_01 "CAN_DET_RANGE_20_01"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_01 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_01 "CAN_DET_RANGE_RATE_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_01 "CAN_DET_AMPLITUDE_20_01"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_01 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_01 "CAN_SCAN_INDEX_2LSB_20_01"; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 "CAN_DET_CONFID_AZIMUTH_20_02"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 "CAN_DET_CONFID_AZIMUTH_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 "CAN_DET_CONFID_AZIMUTH_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_02 "CAN_DET_SUPER_RES_TARGET_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_02 "CAN_DET_ND_TARGET_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_02 "CAN_DET_HOST_VEH_CLUTTER_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_02 "CAN_DET_VALID_LEVEL_20_02"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_02 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_02 "CAN_DET_AZIMUTH_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_02 "CAN_DET_RANGE_20_02"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_02 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_02 "CAN_DET_RANGE_RATE_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_02 "CAN_DET_AMPLITUDE_20_02"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_02 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_02 "CAN_SCAN_INDEX_2LSB_20_02"; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 "CAN_DET_CONFID_AZIMUTH_20_03"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 "CAN_DET_CONFID_AZIMUTH_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 "CAN_DET_CONFID_AZIMUTH_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_03 "CAN_DET_SUPER_RES_TARGET_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_03 "CAN_DET_ND_TARGET_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_03 "CAN_DET_HOST_VEH_CLUTTER_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_03 "CAN_DET_VALID_LEVEL_20_03"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_03 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_03 "CAN_DET_AZIMUTH_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_03 "CAN_DET_RANGE_20_03"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_03 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_03 "CAN_DET_RANGE_RATE_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_03 "CAN_DET_AMPLITUDE_20_03"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_03 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_03 "CAN_SCAN_INDEX_2LSB_20_03"; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 "CAN_DET_CONFID_AZIMUTH_20_04"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 "CAN_DET_CONFID_AZIMUTH_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 "CAN_DET_CONFID_AZIMUTH_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_04 "CAN_DET_SUPER_RES_TARGET_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_04 "CAN_DET_ND_TARGET_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_04 "CAN_DET_HOST_VEH_CLUTTER_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_04 "CAN_DET_VALID_LEVEL_20_04"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_04 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_04 "CAN_DET_AZIMUTH_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_04 "CAN_DET_RANGE_20_04"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_04 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_04 "CAN_DET_RANGE_RATE_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_04 "CAN_DET_AMPLITUDE_20_04"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_04 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_04 "CAN_SCAN_INDEX_2LSB_20_04"; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 "CAN_DET_CONFID_AZIMUTH_20_05"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 "CAN_DET_CONFID_AZIMUTH_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 "CAN_DET_CONFID_AZIMUTH_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_05 "CAN_DET_SUPER_RES_TARGET_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_05 "CAN_DET_ND_TARGET_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_05 "CAN_DET_HOST_VEH_CLUTTER_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_05 "CAN_DET_VALID_LEVEL_20_05"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_05 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_05 "CAN_DET_AZIMUTH_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_05 "CAN_DET_RANGE_20_05"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_05 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_05 "CAN_DET_RANGE_RATE_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_05 "CAN_DET_AMPLITUDE_20_05"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_05 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_05 "CAN_SCAN_INDEX_2LSB_20_05"; -BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 "CAN_DET_CONFID_AZIMUTH_20_06"; -BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 "CAN_DET_CONFID_AZIMUTH_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 "CAN_DET_CONFID_AZIMUTH_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_06 "CAN_DET_SUPER_RES_TARGET_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_06 "CAN_DET_ND_TARGET_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_06 "CAN_DET_HOST_VEH_CLUTTER_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_06 "CAN_DET_VALID_LEVEL_20_06"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_06 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_06 "CAN_DET_AZIMUTH_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_06 "CAN_DET_RANGE_20_06"; -BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_06 0; -BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_06 "CAN_DET_RANGE_RATE_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_06 "CAN_DET_AMPLITUDE_20_06"; -BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_06 0; -BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_06 "CAN_SCAN_INDEX_2LSB_20_06"; -BA_ "GenMsgSendType" BO_ 306 1; -BA_ "GenMsgILSupport" BO_ 306 1; -BA_ "GenMsgNrOfRepetition" BO_ 306 0; -BA_ "GenMsgCycleTime" BO_ 306 0; -BA_ "NetworkInitialization" BO_ 306 0; -BA_ "GenMsgDelayTime" BO_ 306 0; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 "CAN_DET_CONFID_AZIMUTH_19_01"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 "CAN_DET_CONFID_AZIMUTH_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 "CAN_DET_CONFID_AZIMUTH_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_01 "CAN_DET_SUPER_RES_TARGET_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_01 "CAN_DET_ND_TARGET_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_01 "CAN_DET_HOST_VEH_CLUTTER_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_01 "CAN_DET_VALID_LEVEL_19_01"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_01 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_01 "CAN_DET_AZIMUTH_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_01 "CAN_DET_RANGE_19_01"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_01 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_01 "CAN_DET_RANGE_RATE_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_01 "CAN_DET_AMPLITUDE_19_01"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_01 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_01 "CAN_SCAN_INDEX_2LSB_19_01"; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 "CAN_DET_CONFID_AZIMUTH_19_02"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 "CAN_DET_CONFID_AZIMUTH_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 "CAN_DET_CONFID_AZIMUTH_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_02 "CAN_DET_SUPER_RES_TARGET_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_02 "CAN_DET_ND_TARGET_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_02 "CAN_DET_HOST_VEH_CLUTTER_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_02 "CAN_DET_VALID_LEVEL_19_02"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_02 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_02 "CAN_DET_AZIMUTH_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_02 "CAN_DET_RANGE_19_02"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_02 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_02 "CAN_DET_RANGE_RATE_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_02 "CAN_DET_AMPLITUDE_19_02"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_02 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_02 "CAN_SCAN_INDEX_2LSB_19_02"; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 "CAN_DET_CONFID_AZIMUTH_19_03"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 "CAN_DET_CONFID_AZIMUTH_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 "CAN_DET_CONFID_AZIMUTH_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_03 "CAN_DET_SUPER_RES_TARGET_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_03 "CAN_DET_ND_TARGET_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_03 "CAN_DET_HOST_VEH_CLUTTER_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_03 "CAN_DET_VALID_LEVEL_19_03"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_03 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_03 "CAN_DET_AZIMUTH_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_03 "CAN_DET_RANGE_19_03"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_03 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_03 "CAN_DET_RANGE_RATE_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_03 "CAN_DET_AMPLITUDE_19_03"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_03 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_03 "CAN_SCAN_INDEX_2LSB_19_03"; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 "CAN_DET_CONFID_AZIMUTH_19_04"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 "CAN_DET_CONFID_AZIMUTH_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 "CAN_DET_CONFID_AZIMUTH_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_04 "CAN_DET_SUPER_RES_TARGET_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_04 "CAN_DET_ND_TARGET_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_04 "CAN_DET_HOST_VEH_CLUTTER_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_04 "CAN_DET_VALID_LEVEL_19_04"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_04 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_04 "CAN_DET_AZIMUTH_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_04 "CAN_DET_RANGE_19_04"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_04 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_04 "CAN_DET_RANGE_RATE_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_04 "CAN_DET_AMPLITUDE_19_04"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_04 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_04 "CAN_SCAN_INDEX_2LSB_19_04"; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 "CAN_DET_CONFID_AZIMUTH_19_05"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 "CAN_DET_CONFID_AZIMUTH_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 "CAN_DET_CONFID_AZIMUTH_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_05 "CAN_DET_SUPER_RES_TARGET_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_05 "CAN_DET_ND_TARGET_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_05 "CAN_DET_HOST_VEH_CLUTTER_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_05 "CAN_DET_VALID_LEVEL_19_05"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_05 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_05 "CAN_DET_AZIMUTH_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_05 "CAN_DET_RANGE_19_05"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_05 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_05 "CAN_DET_RANGE_RATE_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_05 "CAN_DET_AMPLITUDE_19_05"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_05 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_05 "CAN_SCAN_INDEX_2LSB_19_05"; -BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 "CAN_DET_CONFID_AZIMUTH_19_06"; -BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 "CAN_DET_CONFID_AZIMUTH_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 "CAN_DET_CONFID_AZIMUTH_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_06 "CAN_DET_SUPER_RES_TARGET_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_06 "CAN_DET_ND_TARGET_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_06 "CAN_DET_HOST_VEH_CLUTTER_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_06 "CAN_DET_VALID_LEVEL_19_06"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_06 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_06 "CAN_DET_AZIMUTH_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_06 "CAN_DET_RANGE_19_06"; -BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_06 0; -BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_06 "CAN_DET_RANGE_RATE_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_06 "CAN_DET_AMPLITUDE_19_06"; -BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_06 0; -BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_06 "CAN_SCAN_INDEX_2LSB_19_06"; -BA_ "GenMsgSendType" BO_ 305 1; -BA_ "GenMsgILSupport" BO_ 305 1; -BA_ "GenMsgNrOfRepetition" BO_ 305 0; -BA_ "GenMsgCycleTime" BO_ 305 0; -BA_ "NetworkInitialization" BO_ 305 0; -BA_ "GenMsgDelayTime" BO_ 305 0; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 "CAN_DET_CONFID_AZIMUTH_18_01"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 "CAN_DET_CONFID_AZIMUTH_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 "CAN_DET_CONFID_AZIMUTH_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_01 "CAN_DET_SUPER_RES_TARGET_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_01 "CAN_DET_ND_TARGET_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_01 "CAN_DET_HOST_VEH_CLUTTER_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_01 "CAN_DET_VALID_LEVEL_18_01"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_01 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_01 "CAN_DET_AZIMUTH_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_01 "CAN_DET_RANGE_18_01"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_01 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_01 "CAN_DET_RANGE_RATE_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_01 "CAN_DET_AMPLITUDE_18_01"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_01 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_01 "CAN_SCAN_INDEX_2LSB_18_01"; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 "CAN_DET_CONFID_AZIMUTH_18_02"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 "CAN_DET_CONFID_AZIMUTH_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 "CAN_DET_CONFID_AZIMUTH_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_02 "CAN_DET_SUPER_RES_TARGET_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_02 "CAN_DET_ND_TARGET_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_02 "CAN_DET_HOST_VEH_CLUTTER_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_02 "CAN_DET_VALID_LEVEL_18_02"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_02 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_02 "CAN_DET_AZIMUTH_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_02 "CAN_DET_RANGE_18_02"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_02 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_02 "CAN_DET_RANGE_RATE_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_02 "CAN_DET_AMPLITUDE_18_02"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_02 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_02 "CAN_SCAN_INDEX_2LSB_18_02"; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 "CAN_DET_CONFID_AZIMUTH_18_03"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 "CAN_DET_CONFID_AZIMUTH_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 "CAN_DET_CONFID_AZIMUTH_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_03 "CAN_DET_SUPER_RES_TARGET_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_03 "CAN_DET_ND_TARGET_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_03 "CAN_DET_HOST_VEH_CLUTTER_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_03 "CAN_DET_VALID_LEVEL_18_03"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_03 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_03 "CAN_DET_AZIMUTH_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_03 "CAN_DET_RANGE_18_03"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_03 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_03 "CAN_DET_RANGE_RATE_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_03 "CAN_DET_AMPLITUDE_18_03"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_03 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_03 "CAN_SCAN_INDEX_2LSB_18_03"; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 "CAN_DET_CONFID_AZIMUTH_18_04"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 "CAN_DET_CONFID_AZIMUTH_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 "CAN_DET_CONFID_AZIMUTH_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_04 "CAN_DET_SUPER_RES_TARGET_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_04 "CAN_DET_ND_TARGET_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_04 "CAN_DET_HOST_VEH_CLUTTER_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_04 "CAN_DET_VALID_LEVEL_18_04"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_04 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_04 "CAN_DET_AZIMUTH_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_04 "CAN_DET_RANGE_18_04"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_04 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_04 "CAN_DET_RANGE_RATE_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_04 "CAN_DET_AMPLITUDE_18_04"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_04 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_04 "CAN_SCAN_INDEX_2LSB_18_04"; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 "CAN_DET_CONFID_AZIMUTH_18_05"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 "CAN_DET_CONFID_AZIMUTH_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 "CAN_DET_CONFID_AZIMUTH_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_05 "CAN_DET_SUPER_RES_TARGET_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_05 "CAN_DET_ND_TARGET_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_05 "CAN_DET_HOST_VEH_CLUTTER_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_05 "CAN_DET_VALID_LEVEL_18_05"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_05 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_05 "CAN_DET_AZIMUTH_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_05 "CAN_DET_RANGE_18_05"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_05 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_05 "CAN_DET_RANGE_RATE_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_05 "CAN_DET_AMPLITUDE_18_05"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_05 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_05 "CAN_SCAN_INDEX_2LSB_18_05"; -BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 "CAN_DET_CONFID_AZIMUTH_18_06"; -BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 "CAN_DET_CONFID_AZIMUTH_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 "CAN_DET_CONFID_AZIMUTH_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_06 "CAN_DET_SUPER_RES_TARGET_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_06 "CAN_DET_ND_TARGET_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_06 "CAN_DET_HOST_VEH_CLUTTER_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_06 "CAN_DET_VALID_LEVEL_18_06"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_06 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_06 "CAN_DET_AZIMUTH_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_06 "CAN_DET_RANGE_18_06"; -BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_06 0; -BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_06 "CAN_DET_RANGE_RATE_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_06 "CAN_DET_AMPLITUDE_18_06"; -BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_06 0; -BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_06 "CAN_SCAN_INDEX_2LSB_18_06"; -BA_ "GenMsgSendType" BO_ 341 1; -BA_ "GenMsgILSupport" BO_ 341 1; -BA_ "GenMsgNrOfRepetition" BO_ 341 0; -BA_ "GenMsgCycleTime" BO_ 341 0; -BA_ "NetworkInitialization" BO_ 341 0; -BA_ "GenMsgDelayTime" BO_ 341 0; -BA_ "GenSigVtEn" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigVtName" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 "CAN_DET_SUPER_RES_TARGET_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_ND_TARGET_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_ND_TARGET_54 "CAN_DET_ND_TARGET_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 "CAN_DET_HOST_VEH_CLUTTER_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_VALID_LEVEL_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_VALID_LEVEL_54 "CAN_DET_VALID_LEVEL_54"; -BA_ "GenSigStartValue" SG_ 341 CAN_DET_AZIMUTH_54 0; -BA_ "GenSigSendType" SG_ 341 CAN_DET_AZIMUTH_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_AZIMUTH_54 "CAN_DET_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_54 "CAN_DET_RANGE_54"; -BA_ "GenSigStartValue" SG_ 341 CAN_DET_RANGE_RATE_54 0; -BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_RATE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_RATE_54 "CAN_DET_RANGE_RATE_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_AMPLITUDE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_AMPLITUDE_54 "CAN_DET_AMPLITUDE_54"; -BA_ "GenSigSendType" SG_ 341 CAN_SCAN_INDEX_2LSB_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_SCAN_INDEX_2LSB_54 "CAN_SCAN_INDEX_2LSB_54"; -BA_ "GenMsgSendType" BO_ 340 1; -BA_ "GenMsgILSupport" BO_ 340 1; -BA_ "GenMsgNrOfRepetition" BO_ 340 0; -BA_ "GenMsgCycleTime" BO_ 340 0; -BA_ "NetworkInitialization" BO_ 340 0; -BA_ "GenMsgDelayTime" BO_ 340 0; -BA_ "GenSigVtEn" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigVtName" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 "CAN_DET_SUPER_RES_TARGET_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_ND_TARGET_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_ND_TARGET_53 "CAN_DET_ND_TARGET_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 "CAN_DET_HOST_VEH_CLUTTER_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_VALID_LEVEL_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_VALID_LEVEL_53 "CAN_DET_VALID_LEVEL_53"; -BA_ "GenSigStartValue" SG_ 340 CAN_DET_AZIMUTH_53 0; -BA_ "GenSigSendType" SG_ 340 CAN_DET_AZIMUTH_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_AZIMUTH_53 "CAN_DET_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_53 "CAN_DET_RANGE_53"; -BA_ "GenSigStartValue" SG_ 340 CAN_DET_RANGE_RATE_53 0; -BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_RATE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_RATE_53 "CAN_DET_RANGE_RATE_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_AMPLITUDE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_AMPLITUDE_53 "CAN_DET_AMPLITUDE_53"; -BA_ "GenSigSendType" SG_ 340 CAN_SCAN_INDEX_2LSB_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_SCAN_INDEX_2LSB_53 "CAN_SCAN_INDEX_2LSB_53"; -BA_ "GenMsgSendType" BO_ 339 1; -BA_ "GenMsgILSupport" BO_ 339 1; -BA_ "GenMsgNrOfRepetition" BO_ 339 0; -BA_ "GenMsgCycleTime" BO_ 339 0; -BA_ "NetworkInitialization" BO_ 339 0; -BA_ "GenMsgDelayTime" BO_ 339 0; -BA_ "GenSigVtEn" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigVtName" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 "CAN_DET_SUPER_RES_TARGET_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_ND_TARGET_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_ND_TARGET_52 "CAN_DET_ND_TARGET_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 "CAN_DET_HOST_VEH_CLUTTER_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_VALID_LEVEL_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_VALID_LEVEL_52 "CAN_DET_VALID_LEVEL_52"; -BA_ "GenSigStartValue" SG_ 339 CAN_DET_AZIMUTH_52 0; -BA_ "GenSigSendType" SG_ 339 CAN_DET_AZIMUTH_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_AZIMUTH_52 "CAN_DET_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_52 "CAN_DET_RANGE_52"; -BA_ "GenSigStartValue" SG_ 339 CAN_DET_RANGE_RATE_52 0; -BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_RATE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_RATE_52 "CAN_DET_RANGE_RATE_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_AMPLITUDE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_AMPLITUDE_52 "CAN_DET_AMPLITUDE_52"; -BA_ "GenSigSendType" SG_ 339 CAN_SCAN_INDEX_2LSB_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_SCAN_INDEX_2LSB_52 "CAN_SCAN_INDEX_2LSB_52"; -BA_ "GenMsgSendType" BO_ 338 1; -BA_ "GenMsgILSupport" BO_ 338 1; -BA_ "GenMsgNrOfRepetition" BO_ 338 0; -BA_ "GenMsgCycleTime" BO_ 338 0; -BA_ "NetworkInitialization" BO_ 338 0; -BA_ "GenMsgDelayTime" BO_ 338 0; -BA_ "GenSigVtEn" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigVtName" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 "CAN_DET_SUPER_RES_TARGET_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_ND_TARGET_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_ND_TARGET_51 "CAN_DET_ND_TARGET_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 "CAN_DET_HOST_VEH_CLUTTER_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_VALID_LEVEL_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_VALID_LEVEL_51 "CAN_DET_VALID_LEVEL_51"; -BA_ "GenSigStartValue" SG_ 338 CAN_DET_AZIMUTH_51 0; -BA_ "GenSigSendType" SG_ 338 CAN_DET_AZIMUTH_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_AZIMUTH_51 "CAN_DET_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_51 "CAN_DET_RANGE_51"; -BA_ "GenSigStartValue" SG_ 338 CAN_DET_RANGE_RATE_51 0; -BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_RATE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_RATE_51 "CAN_DET_RANGE_RATE_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_AMPLITUDE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_AMPLITUDE_51 "CAN_DET_AMPLITUDE_51"; -BA_ "GenSigSendType" SG_ 338 CAN_SCAN_INDEX_2LSB_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_SCAN_INDEX_2LSB_51 "CAN_SCAN_INDEX_2LSB_51"; -BA_ "GenMsgSendType" BO_ 337 1; -BA_ "GenMsgILSupport" BO_ 337 1; -BA_ "GenMsgNrOfRepetition" BO_ 337 0; -BA_ "GenMsgCycleTime" BO_ 337 0; -BA_ "NetworkInitialization" BO_ 337 0; -BA_ "GenMsgDelayTime" BO_ 337 0; -BA_ "GenSigVtEn" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigVtName" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 "CAN_DET_SUPER_RES_TARGET_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_ND_TARGET_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_ND_TARGET_50 "CAN_DET_ND_TARGET_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 "CAN_DET_HOST_VEH_CLUTTER_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_VALID_LEVEL_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_VALID_LEVEL_50 "CAN_DET_VALID_LEVEL_50"; -BA_ "GenSigStartValue" SG_ 337 CAN_DET_AZIMUTH_50 0; -BA_ "GenSigSendType" SG_ 337 CAN_DET_AZIMUTH_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_AZIMUTH_50 "CAN_DET_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_50 "CAN_DET_RANGE_50"; -BA_ "GenSigStartValue" SG_ 337 CAN_DET_RANGE_RATE_50 0; -BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_RATE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_RATE_50 "CAN_DET_RANGE_RATE_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_AMPLITUDE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_AMPLITUDE_50 "CAN_DET_AMPLITUDE_50"; -BA_ "GenSigSendType" SG_ 337 CAN_SCAN_INDEX_2LSB_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_SCAN_INDEX_2LSB_50 "CAN_SCAN_INDEX_2LSB_50"; -BA_ "GenMsgSendType" BO_ 336 1; -BA_ "GenMsgILSupport" BO_ 336 1; -BA_ "GenMsgNrOfRepetition" BO_ 336 0; -BA_ "GenMsgCycleTime" BO_ 336 0; -BA_ "NetworkInitialization" BO_ 336 0; -BA_ "GenMsgDelayTime" BO_ 336 0; -BA_ "GenSigVtEn" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigVtName" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 "CAN_DET_SUPER_RES_TARGET_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_ND_TARGET_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_ND_TARGET_49 "CAN_DET_ND_TARGET_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 "CAN_DET_HOST_VEH_CLUTTER_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_VALID_LEVEL_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_VALID_LEVEL_49 "CAN_DET_VALID_LEVEL_49"; -BA_ "GenSigStartValue" SG_ 336 CAN_DET_AZIMUTH_49 0; -BA_ "GenSigSendType" SG_ 336 CAN_DET_AZIMUTH_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_AZIMUTH_49 "CAN_DET_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_49 "CAN_DET_RANGE_49"; -BA_ "GenSigStartValue" SG_ 336 CAN_DET_RANGE_RATE_49 0; -BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_RATE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_RATE_49 "CAN_DET_RANGE_RATE_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_AMPLITUDE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_AMPLITUDE_49 "CAN_DET_AMPLITUDE_49"; -BA_ "GenSigSendType" SG_ 336 CAN_SCAN_INDEX_2LSB_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_SCAN_INDEX_2LSB_49 "CAN_SCAN_INDEX_2LSB_49"; -BA_ "GenMsgSendType" BO_ 326 1; -BA_ "GenMsgILSupport" BO_ 326 1; -BA_ "GenMsgNrOfRepetition" BO_ 326 0; -BA_ "GenMsgCycleTime" BO_ 326 0; -BA_ "NetworkInitialization" BO_ 326 0; -BA_ "GenMsgDelayTime" BO_ 326 0; -BA_ "GenSigVtEn" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigVtName" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 "CAN_DET_SUPER_RES_TARGET_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_ND_TARGET_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_ND_TARGET_39 "CAN_DET_ND_TARGET_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 "CAN_DET_HOST_VEH_CLUTTER_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_VALID_LEVEL_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_VALID_LEVEL_39 "CAN_DET_VALID_LEVEL_39"; -BA_ "GenSigStartValue" SG_ 326 CAN_DET_AZIMUTH_39 0; -BA_ "GenSigSendType" SG_ 326 CAN_DET_AZIMUTH_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_AZIMUTH_39 "CAN_DET_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_39 "CAN_DET_RANGE_39"; -BA_ "GenSigStartValue" SG_ 326 CAN_DET_RANGE_RATE_39 0; -BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_RATE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_RATE_39 "CAN_DET_RANGE_RATE_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_AMPLITUDE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_AMPLITUDE_39 "CAN_DET_AMPLITUDE_39"; -BA_ "GenSigSendType" SG_ 326 CAN_SCAN_INDEX_2LSB_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_SCAN_INDEX_2LSB_39 "CAN_SCAN_INDEX_2LSB_39"; -BA_ "GenMsgSendType" BO_ 315 1; -BA_ "GenMsgILSupport" BO_ 315 1; -BA_ "GenMsgNrOfRepetition" BO_ 315 0; -BA_ "GenMsgCycleTime" BO_ 315 0; -BA_ "NetworkInitialization" BO_ 315 0; -BA_ "GenMsgDelayTime" BO_ 315 0; -BA_ "GenSigVtEn" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigVtName" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 "CAN_DET_SUPER_RES_TARGET_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_ND_TARGET_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_ND_TARGET_28 "CAN_DET_ND_TARGET_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 "CAN_DET_HOST_VEH_CLUTTER_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_VALID_LEVEL_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_VALID_LEVEL_28 "CAN_DET_VALID_LEVEL_28"; -BA_ "GenSigStartValue" SG_ 315 CAN_DET_AZIMUTH_28 0; -BA_ "GenSigSendType" SG_ 315 CAN_DET_AZIMUTH_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_AZIMUTH_28 "CAN_DET_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_28 "CAN_DET_RANGE_28"; -BA_ "GenSigStartValue" SG_ 315 CAN_DET_RANGE_RATE_28 0; -BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_RATE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_RATE_28 "CAN_DET_RANGE_RATE_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_AMPLITUDE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_AMPLITUDE_28 "CAN_DET_AMPLITUDE_28"; -BA_ "GenSigSendType" SG_ 315 CAN_SCAN_INDEX_2LSB_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_SCAN_INDEX_2LSB_28 "CAN_SCAN_INDEX_2LSB_28"; -BA_ "GenMsgSendType" BO_ 304 1; -BA_ "GenMsgILSupport" BO_ 304 1; -BA_ "GenMsgNrOfRepetition" BO_ 304 0; -BA_ "GenMsgCycleTime" BO_ 304 0; -BA_ "NetworkInitialization" BO_ 304 0; -BA_ "GenMsgDelayTime" BO_ 304 0; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 "CAN_DET_CONFID_AZIMUTH_17_01"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 "CAN_DET_CONFID_AZIMUTH_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 "CAN_DET_CONFID_AZIMUTH_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_01 "CAN_DET_SUPER_RES_TARGET_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_01 "CAN_DET_ND_TARGET_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_01 "CAN_DET_HOST_VEH_CLUTTER_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_01 "CAN_DET_VALID_LEVEL_17_01"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_01 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_01 "CAN_DET_AZIMUTH_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_01 "CAN_DET_RANGE_17_01"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_01 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_01 "CAN_DET_RANGE_RATE_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_01 "CAN_DET_AMPLITUDE_17_01"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_01 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_01 "CAN_SCAN_INDEX_2LSB_17_01"; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 "CAN_DET_CONFID_AZIMUTH_17_02"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 "CAN_DET_CONFID_AZIMUTH_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 "CAN_DET_CONFID_AZIMUTH_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_02 "CAN_DET_SUPER_RES_TARGET_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_02 "CAN_DET_ND_TARGET_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_02 "CAN_DET_HOST_VEH_CLUTTER_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_02 "CAN_DET_VALID_LEVEL_17_02"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_02 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_02 "CAN_DET_AZIMUTH_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_02 "CAN_DET_RANGE_17_02"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_02 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_02 "CAN_DET_RANGE_RATE_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_02 "CAN_DET_AMPLITUDE_17_02"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_02 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_02 "CAN_SCAN_INDEX_2LSB_17_02"; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 "CAN_DET_CONFID_AZIMUTH_17_03"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 "CAN_DET_CONFID_AZIMUTH_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 "CAN_DET_CONFID_AZIMUTH_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_03 "CAN_DET_SUPER_RES_TARGET_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_03 "CAN_DET_ND_TARGET_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_03 "CAN_DET_HOST_VEH_CLUTTER_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_03 "CAN_DET_VALID_LEVEL_17_03"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_03 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_03 "CAN_DET_AZIMUTH_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_03 "CAN_DET_RANGE_17_03"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_03 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_03 "CAN_DET_RANGE_RATE_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_03 "CAN_DET_AMPLITUDE_17_03"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_03 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_03 "CAN_SCAN_INDEX_2LSB_17_03"; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 "CAN_DET_CONFID_AZIMUTH_17_04"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 "CAN_DET_CONFID_AZIMUTH_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 "CAN_DET_CONFID_AZIMUTH_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_04 "CAN_DET_SUPER_RES_TARGET_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_04 "CAN_DET_ND_TARGET_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_04 "CAN_DET_HOST_VEH_CLUTTER_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_04 "CAN_DET_VALID_LEVEL_17_04"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_04 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_04 "CAN_DET_AZIMUTH_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_04 "CAN_DET_RANGE_17_04"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_04 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_04 "CAN_DET_RANGE_RATE_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_04 "CAN_DET_AMPLITUDE_17_04"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_04 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_04 "CAN_SCAN_INDEX_2LSB_17_04"; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 "CAN_DET_CONFID_AZIMUTH_17_05"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 "CAN_DET_CONFID_AZIMUTH_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 "CAN_DET_CONFID_AZIMUTH_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_05 "CAN_DET_SUPER_RES_TARGET_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_05 "CAN_DET_ND_TARGET_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_05 "CAN_DET_HOST_VEH_CLUTTER_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_05 "CAN_DET_VALID_LEVEL_17_05"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_05 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_05 "CAN_DET_AZIMUTH_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_05 "CAN_DET_RANGE_17_05"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_05 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_05 "CAN_DET_RANGE_RATE_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_05 "CAN_DET_AMPLITUDE_17_05"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_05 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_05 "CAN_SCAN_INDEX_2LSB_17_05"; -BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 "CAN_DET_CONFID_AZIMUTH_17_06"; -BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 "CAN_DET_CONFID_AZIMUTH_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 "CAN_DET_CONFID_AZIMUTH_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_06 "CAN_DET_SUPER_RES_TARGET_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_06 "CAN_DET_ND_TARGET_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_06 "CAN_DET_HOST_VEH_CLUTTER_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_06 "CAN_DET_VALID_LEVEL_17_06"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_06 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_06 "CAN_DET_AZIMUTH_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_06 "CAN_DET_RANGE_17_06"; -BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_06 0; -BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_06 "CAN_DET_RANGE_RATE_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_06 "CAN_DET_AMPLITUDE_17_06"; -BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_06 0; -BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_06 "CAN_SCAN_INDEX_2LSB_17_06"; -BA_ "GenMsgSendType" BO_ 303 1; -BA_ "GenMsgILSupport" BO_ 303 1; -BA_ "GenMsgNrOfRepetition" BO_ 303 0; -BA_ "GenMsgCycleTime" BO_ 303 0; -BA_ "NetworkInitialization" BO_ 303 0; -BA_ "GenMsgDelayTime" BO_ 303 0; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 "CAN_DET_CONFID_AZIMUTH_16_01"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 "CAN_DET_CONFID_AZIMUTH_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 "CAN_DET_CONFID_AZIMUTH_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_01 "CAN_DET_SUPER_RES_TARGET_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_01 "CAN_DET_ND_TARGET_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_01 "CAN_DET_HOST_VEH_CLUTTER_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_01 "CAN_DET_VALID_LEVEL_16_01"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_01 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_01 "CAN_DET_AZIMUTH_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_01 "CAN_DET_RANGE_16_01"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_01 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_01 "CAN_DET_RANGE_RATE_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_01 "CAN_DET_AMPLITUDE_16_01"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_01 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_01 "CAN_SCAN_INDEX_2LSB_16_01"; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 "CAN_DET_CONFID_AZIMUTH_16_02"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 "CAN_DET_CONFID_AZIMUTH_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 "CAN_DET_CONFID_AZIMUTH_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_02 "CAN_DET_SUPER_RES_TARGET_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_02 "CAN_DET_ND_TARGET_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_02 "CAN_DET_HOST_VEH_CLUTTER_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_02 "CAN_DET_VALID_LEVEL_16_02"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_02 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_02 "CAN_DET_AZIMUTH_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_02 "CAN_DET_RANGE_16_02"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_02 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_02 "CAN_DET_RANGE_RATE_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_02 "CAN_DET_AMPLITUDE_16_02"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_02 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_02 "CAN_SCAN_INDEX_2LSB_16_02"; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 "CAN_DET_CONFID_AZIMUTH_16_03"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 "CAN_DET_CONFID_AZIMUTH_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 "CAN_DET_CONFID_AZIMUTH_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_03 "CAN_DET_SUPER_RES_TARGET_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_03 "CAN_DET_ND_TARGET_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_03 "CAN_DET_HOST_VEH_CLUTTER_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_03 "CAN_DET_VALID_LEVEL_16_03"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_03 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_03 "CAN_DET_AZIMUTH_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_03 "CAN_DET_RANGE_16_03"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_03 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_03 "CAN_DET_RANGE_RATE_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_03 "CAN_DET_AMPLITUDE_16_03"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_03 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_03 "CAN_SCAN_INDEX_2LSB_16_03"; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 "CAN_DET_CONFID_AZIMUTH_16_04"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 "CAN_DET_CONFID_AZIMUTH_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 "CAN_DET_CONFID_AZIMUTH_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_04 "CAN_DET_SUPER_RES_TARGET_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_04 "CAN_DET_ND_TARGET_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_04 "CAN_DET_HOST_VEH_CLUTTER_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_04 "CAN_DET_VALID_LEVEL_16_04"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_04 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_04 "CAN_DET_AZIMUTH_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_04 "CAN_DET_RANGE_16_04"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_04 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_04 "CAN_DET_RANGE_RATE_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_04 "CAN_DET_AMPLITUDE_16_04"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_04 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_04 "CAN_SCAN_INDEX_2LSB_16_04"; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 "CAN_DET_CONFID_AZIMUTH_16_05"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 "CAN_DET_CONFID_AZIMUTH_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 "CAN_DET_CONFID_AZIMUTH_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_05 "CAN_DET_SUPER_RES_TARGET_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_05 "CAN_DET_ND_TARGET_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_05 "CAN_DET_HOST_VEH_CLUTTER_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_05 "CAN_DET_VALID_LEVEL_16_05"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_05 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_05 "CAN_DET_AZIMUTH_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_05 "CAN_DET_RANGE_16_05"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_05 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_05 "CAN_DET_RANGE_RATE_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_05 "CAN_DET_AMPLITUDE_16_05"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_05 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_05 "CAN_SCAN_INDEX_2LSB_16_05"; -BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 "CAN_DET_CONFID_AZIMUTH_16_06"; -BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 "CAN_DET_CONFID_AZIMUTH_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 "CAN_DET_CONFID_AZIMUTH_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_06 "CAN_DET_SUPER_RES_TARGET_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_06 "CAN_DET_ND_TARGET_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_06 "CAN_DET_HOST_VEH_CLUTTER_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_06 "CAN_DET_VALID_LEVEL_16_06"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_06 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_06 "CAN_DET_AZIMUTH_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_06 "CAN_DET_RANGE_16_06"; -BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_06 0; -BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_06 "CAN_DET_RANGE_RATE_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_06 "CAN_DET_AMPLITUDE_16_06"; -BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_06 0; -BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_06 "CAN_SCAN_INDEX_2LSB_16_06"; -BA_ "GenMsgSendType" BO_ 302 1; -BA_ "GenMsgILSupport" BO_ 302 1; -BA_ "GenMsgNrOfRepetition" BO_ 302 0; -BA_ "GenMsgCycleTime" BO_ 302 0; -BA_ "NetworkInitialization" BO_ 302 0; -BA_ "GenMsgDelayTime" BO_ 302 0; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 "CAN_DET_CONFID_AZIMUTH_15_01"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 "CAN_DET_CONFID_AZIMUTH_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 "CAN_DET_CONFID_AZIMUTH_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_01 "CAN_DET_SUPER_RES_TARGET_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_01 "CAN_DET_ND_TARGET_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_01 "CAN_DET_HOST_VEH_CLUTTER_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_01 "CAN_DET_VALID_LEVEL_15_01"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_01 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_01 "CAN_DET_AZIMUTH_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_01 "CAN_DET_RANGE_15_01"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_01 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_01 "CAN_DET_RANGE_RATE_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_01 "CAN_DET_AMPLITUDE_15_01"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_01 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_01 "CAN_SCAN_INDEX_2LSB_15_01"; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 "CAN_DET_CONFID_AZIMUTH_15_02"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 "CAN_DET_CONFID_AZIMUTH_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 "CAN_DET_CONFID_AZIMUTH_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_02 "CAN_DET_SUPER_RES_TARGET_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_02 "CAN_DET_ND_TARGET_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_02 "CAN_DET_HOST_VEH_CLUTTER_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_02 "CAN_DET_VALID_LEVEL_15_02"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_02 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_02 "CAN_DET_AZIMUTH_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_02 "CAN_DET_RANGE_15_02"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_02 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_02 "CAN_DET_RANGE_RATE_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_02 "CAN_DET_AMPLITUDE_15_02"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_02 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_02 "CAN_SCAN_INDEX_2LSB_15_02"; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 "CAN_DET_CONFID_AZIMUTH_15_03"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 "CAN_DET_CONFID_AZIMUTH_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 "CAN_DET_CONFID_AZIMUTH_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_03 "CAN_DET_SUPER_RES_TARGET_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_03 "CAN_DET_ND_TARGET_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_03 "CAN_DET_HOST_VEH_CLUTTER_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_03 "CAN_DET_VALID_LEVEL_15_03"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_03 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_03 "CAN_DET_AZIMUTH_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_03 "CAN_DET_RANGE_15_03"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_03 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_03 "CAN_DET_RANGE_RATE_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_03 "CAN_DET_AMPLITUDE_15_03"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_03 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_03 "CAN_SCAN_INDEX_2LSB_15_03"; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 "CAN_DET_CONFID_AZIMUTH_15_04"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 "CAN_DET_CONFID_AZIMUTH_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 "CAN_DET_CONFID_AZIMUTH_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_04 "CAN_DET_SUPER_RES_TARGET_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_04 "CAN_DET_ND_TARGET_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_04 "CAN_DET_HOST_VEH_CLUTTER_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_04 "CAN_DET_VALID_LEVEL_15_04"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_04 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_04 "CAN_DET_AZIMUTH_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_04 "CAN_DET_RANGE_15_04"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_04 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_04 "CAN_DET_RANGE_RATE_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_04 "CAN_DET_AMPLITUDE_15_04"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_04 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_04 "CAN_SCAN_INDEX_2LSB_15_04"; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 "CAN_DET_CONFID_AZIMUTH_15_05"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 "CAN_DET_CONFID_AZIMUTH_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 "CAN_DET_CONFID_AZIMUTH_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_05 "CAN_DET_SUPER_RES_TARGET_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_05 "CAN_DET_ND_TARGET_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_05 "CAN_DET_HOST_VEH_CLUTTER_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_05 "CAN_DET_VALID_LEVEL_15_05"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_05 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_05 "CAN_DET_AZIMUTH_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_05 "CAN_DET_RANGE_15_05"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_05 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_05 "CAN_DET_RANGE_RATE_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_05 "CAN_DET_AMPLITUDE_15_05"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_05 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_05 "CAN_SCAN_INDEX_2LSB_15_05"; -BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 "CAN_DET_CONFID_AZIMUTH_15_06"; -BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 "CAN_DET_CONFID_AZIMUTH_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 "CAN_DET_CONFID_AZIMUTH_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_06 "CAN_DET_SUPER_RES_TARGET_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_06 "CAN_DET_ND_TARGET_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_06 "CAN_DET_HOST_VEH_CLUTTER_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_06 "CAN_DET_VALID_LEVEL_15_06"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_06 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_06 "CAN_DET_AZIMUTH_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_06 "CAN_DET_RANGE_15_06"; -BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_06 0; -BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_06 "CAN_DET_RANGE_RATE_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_06 "CAN_DET_AMPLITUDE_15_06"; -BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_06 0; -BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_06 "CAN_SCAN_INDEX_2LSB_15_06"; -BA_ "GenMsgSendType" BO_ 301 1; -BA_ "GenMsgILSupport" BO_ 301 1; -BA_ "GenMsgNrOfRepetition" BO_ 301 0; -BA_ "GenMsgCycleTime" BO_ 301 0; -BA_ "NetworkInitialization" BO_ 301 0; -BA_ "GenMsgDelayTime" BO_ 301 0; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 "CAN_DET_CONFID_AZIMUTH_14_01"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 "CAN_DET_CONFID_AZIMUTH_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 "CAN_DET_CONFID_AZIMUTH_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_01 "CAN_DET_SUPER_RES_TARGET_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_01 "CAN_DET_ND_TARGET_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_01 "CAN_DET_HOST_VEH_CLUTTER_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_01 "CAN_DET_VALID_LEVEL_14_01"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_01 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_01 "CAN_DET_AZIMUTH_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_01 "CAN_DET_RANGE_14_01"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_01 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_01 "CAN_DET_RANGE_RATE_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_01 "CAN_DET_AMPLITUDE_14_01"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_01 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_01 "CAN_SCAN_INDEX_2LSB_14_01"; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 "CAN_DET_CONFID_AZIMUTH_14_02"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 "CAN_DET_CONFID_AZIMUTH_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 "CAN_DET_CONFID_AZIMUTH_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_02 "CAN_DET_SUPER_RES_TARGET_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_02 "CAN_DET_ND_TARGET_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_02 "CAN_DET_HOST_VEH_CLUTTER_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_02 "CAN_DET_VALID_LEVEL_14_02"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_02 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_02 "CAN_DET_AZIMUTH_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_02 "CAN_DET_RANGE_14_02"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_02 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_02 "CAN_DET_RANGE_RATE_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_02 "CAN_DET_AMPLITUDE_14_02"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_02 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_02 "CAN_SCAN_INDEX_2LSB_14_02"; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 "CAN_DET_CONFID_AZIMUTH_14_03"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 "CAN_DET_CONFID_AZIMUTH_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 "CAN_DET_CONFID_AZIMUTH_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_03 "CAN_DET_SUPER_RES_TARGET_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_03 "CAN_DET_ND_TARGET_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_03 "CAN_DET_HOST_VEH_CLUTTER_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_03 "CAN_DET_VALID_LEVEL_14_03"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_03 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_03 "CAN_DET_AZIMUTH_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_03 "CAN_DET_RANGE_14_03"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_03 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_03 "CAN_DET_RANGE_RATE_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_03 "CAN_DET_AMPLITUDE_14_03"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_03 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_03 "CAN_SCAN_INDEX_2LSB_14_03"; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 "CAN_DET_CONFID_AZIMUTH_14_04"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 "CAN_DET_CONFID_AZIMUTH_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 "CAN_DET_CONFID_AZIMUTH_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_04 "CAN_DET_SUPER_RES_TARGET_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_04 "CAN_DET_ND_TARGET_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_04 "CAN_DET_HOST_VEH_CLUTTER_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_04 "CAN_DET_VALID_LEVEL_14_04"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_04 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_04 "CAN_DET_AZIMUTH_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_04 "CAN_DET_RANGE_14_04"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_04 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_04 "CAN_DET_RANGE_RATE_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_04 "CAN_DET_AMPLITUDE_14_04"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_04 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_04 "CAN_SCAN_INDEX_2LSB_14_04"; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 "CAN_DET_CONFID_AZIMUTH_14_05"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 "CAN_DET_CONFID_AZIMUTH_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 "CAN_DET_CONFID_AZIMUTH_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_05 "CAN_DET_SUPER_RES_TARGET_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_05 "CAN_DET_ND_TARGET_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_05 "CAN_DET_HOST_VEH_CLUTTER_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_05 "CAN_DET_VALID_LEVEL_14_05"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_05 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_05 "CAN_DET_AZIMUTH_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_05 "CAN_DET_RANGE_14_05"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_05 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_05 "CAN_DET_RANGE_RATE_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_05 "CAN_DET_AMPLITUDE_14_05"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_05 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_05 "CAN_SCAN_INDEX_2LSB_14_05"; -BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 "CAN_DET_CONFID_AZIMUTH_14_06"; -BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 "CAN_DET_CONFID_AZIMUTH_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 "CAN_DET_CONFID_AZIMUTH_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_06 "CAN_DET_SUPER_RES_TARGET_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_06 "CAN_DET_ND_TARGET_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_06 "CAN_DET_HOST_VEH_CLUTTER_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_06 "CAN_DET_VALID_LEVEL_14_06"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_06 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_06 "CAN_DET_AZIMUTH_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_06 "CAN_DET_RANGE_14_06"; -BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_06 0; -BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_06 "CAN_DET_RANGE_RATE_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_06 "CAN_DET_AMPLITUDE_14_06"; -BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_06 0; -BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_06 "CAN_SCAN_INDEX_2LSB_14_06"; -BA_ "GenMsgSendType" BO_ 300 1; -BA_ "GenMsgILSupport" BO_ 300 1; -BA_ "GenMsgNrOfRepetition" BO_ 300 0; -BA_ "GenMsgCycleTime" BO_ 300 0; -BA_ "NetworkInitialization" BO_ 300 0; -BA_ "GenMsgDelayTime" BO_ 300 0; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 "CAN_DET_CONFID_AZIMUTH_13_01"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 "CAN_DET_CONFID_AZIMUTH_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 "CAN_DET_CONFID_AZIMUTH_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_01 "CAN_DET_SUPER_RES_TARGET_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_01 "CAN_DET_ND_TARGET_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_01 "CAN_DET_HOST_VEH_CLUTTER_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_01 "CAN_DET_VALID_LEVEL_13_01"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_01 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_01 "CAN_DET_AZIMUTH_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_01 "CAN_DET_RANGE_13_01"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_01 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_01 "CAN_DET_RANGE_RATE_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_01 "CAN_DET_AMPLITUDE_13_01"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_01 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_01 "CAN_SCAN_INDEX_2LSB_13_01"; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 "CAN_DET_CONFID_AZIMUTH_13_02"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 "CAN_DET_CONFID_AZIMUTH_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 "CAN_DET_CONFID_AZIMUTH_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_02 "CAN_DET_SUPER_RES_TARGET_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_02 "CAN_DET_ND_TARGET_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_02 "CAN_DET_HOST_VEH_CLUTTER_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_02 "CAN_DET_VALID_LEVEL_13_02"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_02 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_02 "CAN_DET_AZIMUTH_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_02 "CAN_DET_RANGE_13_02"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_02 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_02 "CAN_DET_RANGE_RATE_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_02 "CAN_DET_AMPLITUDE_13_02"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_02 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_02 "CAN_SCAN_INDEX_2LSB_13_02"; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 "CAN_DET_CONFID_AZIMUTH_13_03"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 "CAN_DET_CONFID_AZIMUTH_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 "CAN_DET_CONFID_AZIMUTH_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_03 "CAN_DET_SUPER_RES_TARGET_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_03 "CAN_DET_ND_TARGET_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_03 "CAN_DET_HOST_VEH_CLUTTER_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_03 "CAN_DET_VALID_LEVEL_13_03"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_03 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_03 "CAN_DET_AZIMUTH_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_03 "CAN_DET_RANGE_13_03"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_03 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_03 "CAN_DET_RANGE_RATE_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_03 "CAN_DET_AMPLITUDE_13_03"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_03 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_03 "CAN_SCAN_INDEX_2LSB_13_03"; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 "CAN_DET_CONFID_AZIMUTH_13_04"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 "CAN_DET_CONFID_AZIMUTH_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 "CAN_DET_CONFID_AZIMUTH_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_04 "CAN_DET_SUPER_RES_TARGET_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_04 "CAN_DET_ND_TARGET_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_04 "CAN_DET_HOST_VEH_CLUTTER_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_04 "CAN_DET_VALID_LEVEL_13_04"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_04 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_04 "CAN_DET_AZIMUTH_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_04 "CAN_DET_RANGE_13_04"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_04 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_04 "CAN_DET_RANGE_RATE_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_04 "CAN_DET_AMPLITUDE_13_04"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_04 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_04 "CAN_SCAN_INDEX_2LSB_13_04"; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 "CAN_DET_CONFID_AZIMUTH_13_05"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 "CAN_DET_CONFID_AZIMUTH_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 "CAN_DET_CONFID_AZIMUTH_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_05 "CAN_DET_SUPER_RES_TARGET_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_05 "CAN_DET_ND_TARGET_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_05 "CAN_DET_HOST_VEH_CLUTTER_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_05 "CAN_DET_VALID_LEVEL_13_05"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_05 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_05 "CAN_DET_AZIMUTH_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_05 "CAN_DET_RANGE_13_05"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_05 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_05 "CAN_DET_RANGE_RATE_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_05 "CAN_DET_AMPLITUDE_13_05"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_05 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_05 "CAN_SCAN_INDEX_2LSB_13_05"; -BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 "CAN_DET_CONFID_AZIMUTH_13_06"; -BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 "CAN_DET_CONFID_AZIMUTH_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 "CAN_DET_CONFID_AZIMUTH_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_06 "CAN_DET_SUPER_RES_TARGET_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_06 "CAN_DET_ND_TARGET_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_06 "CAN_DET_HOST_VEH_CLUTTER_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_06 "CAN_DET_VALID_LEVEL_13_06"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_06 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_06 "CAN_DET_AZIMUTH_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_06 "CAN_DET_RANGE_13_06"; -BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_06 0; -BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_06 "CAN_DET_RANGE_RATE_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_06 "CAN_DET_AMPLITUDE_13_06"; -BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_06 0; -BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_06 "CAN_SCAN_INDEX_2LSB_13_06"; -BA_ "GenMsgSendType" BO_ 299 1; -BA_ "GenMsgILSupport" BO_ 299 1; -BA_ "GenMsgNrOfRepetition" BO_ 299 0; -BA_ "GenMsgCycleTime" BO_ 299 0; -BA_ "NetworkInitialization" BO_ 299 0; -BA_ "GenMsgDelayTime" BO_ 299 0; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 "CAN_DET_CONFID_AZIMUTH_12_01"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 "CAN_DET_CONFID_AZIMUTH_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 "CAN_DET_CONFID_AZIMUTH_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_01 "CAN_DET_SUPER_RES_TARGET_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_01 "CAN_DET_ND_TARGET_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_01 "CAN_DET_HOST_VEH_CLUTTER_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_01 "CAN_DET_VALID_LEVEL_12_01"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_01 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_01 "CAN_DET_AZIMUTH_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_01 "CAN_DET_RANGE_12_01"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_01 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_01 "CAN_DET_RANGE_RATE_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_01 "CAN_DET_AMPLITUDE_12_01"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_01 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_01 "CAN_SCAN_INDEX_2LSB_12_01"; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 "CAN_DET_CONFID_AZIMUTH_12_02"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 "CAN_DET_CONFID_AZIMUTH_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 "CAN_DET_CONFID_AZIMUTH_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_02 "CAN_DET_SUPER_RES_TARGET_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_02 "CAN_DET_ND_TARGET_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_02 "CAN_DET_HOST_VEH_CLUTTER_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_02 "CAN_DET_VALID_LEVEL_12_02"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_02 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_02 "CAN_DET_AZIMUTH_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_02 "CAN_DET_RANGE_12_02"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_02 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_02 "CAN_DET_RANGE_RATE_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_02 "CAN_DET_AMPLITUDE_12_02"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_02 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_02 "CAN_SCAN_INDEX_2LSB_12_02"; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 "CAN_DET_CONFID_AZIMUTH_12_03"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 "CAN_DET_CONFID_AZIMUTH_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 "CAN_DET_CONFID_AZIMUTH_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_03 "CAN_DET_SUPER_RES_TARGET_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_03 "CAN_DET_ND_TARGET_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_03 "CAN_DET_HOST_VEH_CLUTTER_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_03 "CAN_DET_VALID_LEVEL_12_03"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_03 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_03 "CAN_DET_AZIMUTH_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_03 "CAN_DET_RANGE_12_03"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_03 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_03 "CAN_DET_RANGE_RATE_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_03 "CAN_DET_AMPLITUDE_12_03"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_03 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_03 "CAN_SCAN_INDEX_2LSB_12_03"; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 "CAN_DET_CONFID_AZIMUTH_12_04"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 "CAN_DET_CONFID_AZIMUTH_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 "CAN_DET_CONFID_AZIMUTH_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_04 "CAN_DET_SUPER_RES_TARGET_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_04 "CAN_DET_ND_TARGET_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_04 "CAN_DET_HOST_VEH_CLUTTER_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_04 "CAN_DET_VALID_LEVEL_12_04"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_04 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_04 "CAN_DET_AZIMUTH_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_04 "CAN_DET_RANGE_12_04"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_04 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_04 "CAN_DET_RANGE_RATE_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_04 "CAN_DET_AMPLITUDE_12_04"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_04 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_04 "CAN_SCAN_INDEX_2LSB_12_04"; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 "CAN_DET_CONFID_AZIMUTH_12_05"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 "CAN_DET_CONFID_AZIMUTH_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 "CAN_DET_CONFID_AZIMUTH_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_05 "CAN_DET_SUPER_RES_TARGET_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_05 "CAN_DET_ND_TARGET_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_05 "CAN_DET_HOST_VEH_CLUTTER_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_05 "CAN_DET_VALID_LEVEL_12_05"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_05 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_05 "CAN_DET_AZIMUTH_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_05 "CAN_DET_RANGE_12_05"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_05 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_05 "CAN_DET_RANGE_RATE_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_05 "CAN_DET_AMPLITUDE_12_05"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_05 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_05 "CAN_SCAN_INDEX_2LSB_12_05"; -BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 "CAN_DET_CONFID_AZIMUTH_12_06"; -BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 "CAN_DET_CONFID_AZIMUTH_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 "CAN_DET_CONFID_AZIMUTH_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_06 "CAN_DET_SUPER_RES_TARGET_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_06 "CAN_DET_ND_TARGET_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_06 "CAN_DET_HOST_VEH_CLUTTER_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_06 "CAN_DET_VALID_LEVEL_12_06"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_06 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_06 "CAN_DET_AZIMUTH_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_06 "CAN_DET_RANGE_12_06"; -BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_06 0; -BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_06 "CAN_DET_RANGE_RATE_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_06 "CAN_DET_AMPLITUDE_12_06"; -BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_06 0; -BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_06 "CAN_SCAN_INDEX_2LSB_12_06"; -BA_ "GenMsgSendType" BO_ 298 1; -BA_ "GenMsgILSupport" BO_ 298 1; -BA_ "GenMsgNrOfRepetition" BO_ 298 0; -BA_ "GenMsgCycleTime" BO_ 298 0; -BA_ "NetworkInitialization" BO_ 298 0; -BA_ "GenMsgDelayTime" BO_ 298 0; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 "CAN_DET_CONFID_AZIMUTH_11_01"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 "CAN_DET_CONFID_AZIMUTH_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 "CAN_DET_CONFID_AZIMUTH_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_01 "CAN_DET_SUPER_RES_TARGET_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_01 "CAN_DET_ND_TARGET_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_01 "CAN_DET_HOST_VEH_CLUTTER_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_01 "CAN_DET_VALID_LEVEL_11_01"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_01 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_01 "CAN_DET_AZIMUTH_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_01 "CAN_DET_RANGE_11_01"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_01 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_01 "CAN_DET_RANGE_RATE_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_01 "CAN_DET_AMPLITUDE_11_01"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_01 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_01 "CAN_SCAN_INDEX_2LSB_11_01"; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 "CAN_DET_CONFID_AZIMUTH_11_02"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 "CAN_DET_CONFID_AZIMUTH_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 "CAN_DET_CONFID_AZIMUTH_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_02 "CAN_DET_SUPER_RES_TARGET_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_02 "CAN_DET_ND_TARGET_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_02 "CAN_DET_HOST_VEH_CLUTTER_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_02 "CAN_DET_VALID_LEVEL_11_02"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_02 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_02 "CAN_DET_AZIMUTH_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_02 "CAN_DET_RANGE_11_02"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_02 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_02 "CAN_DET_RANGE_RATE_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_02 "CAN_DET_AMPLITUDE_11_02"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_02 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_02 "CAN_SCAN_INDEX_2LSB_11_02"; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 "CAN_DET_CONFID_AZIMUTH_11_03"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 "CAN_DET_CONFID_AZIMUTH_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 "CAN_DET_CONFID_AZIMUTH_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_03 "CAN_DET_SUPER_RES_TARGET_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_03 "CAN_DET_ND_TARGET_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_03 "CAN_DET_HOST_VEH_CLUTTER_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_03 "CAN_DET_VALID_LEVEL_11_03"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_03 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_03 "CAN_DET_AZIMUTH_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_03 "CAN_DET_RANGE_11_03"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_03 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_03 "CAN_DET_RANGE_RATE_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_03 "CAN_DET_AMPLITUDE_11_03"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_03 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_03 "CAN_SCAN_INDEX_2LSB_11_03"; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 "CAN_DET_CONFID_AZIMUTH_11_04"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 "CAN_DET_CONFID_AZIMUTH_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 "CAN_DET_CONFID_AZIMUTH_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_04 "CAN_DET_SUPER_RES_TARGET_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_04 "CAN_DET_ND_TARGET_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_04 "CAN_DET_HOST_VEH_CLUTTER_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_04 "CAN_DET_VALID_LEVEL_11_04"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_04 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_04 "CAN_DET_AZIMUTH_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_04 "CAN_DET_RANGE_11_04"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_04 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_04 "CAN_DET_RANGE_RATE_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_04 "CAN_DET_AMPLITUDE_11_04"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_04 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_04 "CAN_SCAN_INDEX_2LSB_11_04"; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 "CAN_DET_CONFID_AZIMUTH_11_05"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 "CAN_DET_CONFID_AZIMUTH_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 "CAN_DET_CONFID_AZIMUTH_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_05 "CAN_DET_SUPER_RES_TARGET_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_05 "CAN_DET_ND_TARGET_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_05 "CAN_DET_HOST_VEH_CLUTTER_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_05 "CAN_DET_VALID_LEVEL_11_05"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_05 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_05 "CAN_DET_AZIMUTH_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_05 "CAN_DET_RANGE_11_05"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_05 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_05 "CAN_DET_RANGE_RATE_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_05 "CAN_DET_AMPLITUDE_11_05"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_05 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_05 "CAN_SCAN_INDEX_2LSB_11_05"; -BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 "CAN_DET_CONFID_AZIMUTH_11_06"; -BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 "CAN_DET_CONFID_AZIMUTH_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 "CAN_DET_CONFID_AZIMUTH_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_06 "CAN_DET_SUPER_RES_TARGET_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_06 "CAN_DET_ND_TARGET_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_06 "CAN_DET_HOST_VEH_CLUTTER_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_06 "CAN_DET_VALID_LEVEL_11_06"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_06 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_06 "CAN_DET_AZIMUTH_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_06 "CAN_DET_RANGE_11_06"; -BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_06 0; -BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_06 "CAN_DET_RANGE_RATE_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_06 "CAN_DET_AMPLITUDE_11_06"; -BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_06 0; -BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_06 "CAN_SCAN_INDEX_2LSB_11_06"; -BA_ "GenMsgSendType" BO_ 297 1; -BA_ "GenMsgILSupport" BO_ 297 1; -BA_ "GenMsgNrOfRepetition" BO_ 297 0; -BA_ "GenMsgCycleTime" BO_ 297 0; -BA_ "NetworkInitialization" BO_ 297 0; -BA_ "GenMsgDelayTime" BO_ 297 0; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 "CAN_DET_CONFID_AZIMUTH_10_01"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 "CAN_DET_CONFID_AZIMUTH_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 "CAN_DET_CONFID_AZIMUTH_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_01 "CAN_DET_SUPER_RES_TARGET_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_01 "CAN_DET_ND_TARGET_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_01 "CAN_DET_HOST_VEH_CLUTTER_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_01 "CAN_DET_VALID_LEVEL_10_01"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_01 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_01 "CAN_DET_AZIMUTH_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_01 "CAN_DET_RANGE_10_01"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_01 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_01 "CAN_DET_RANGE_RATE_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_01 "CAN_DET_AMPLITUDE_10_01"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_01 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_01 "CAN_SCAN_INDEX_2LSB_10_01"; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 "CAN_DET_CONFID_AZIMUTH_10_02"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 "CAN_DET_CONFID_AZIMUTH_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 "CAN_DET_CONFID_AZIMUTH_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_02 "CAN_DET_SUPER_RES_TARGET_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_02 "CAN_DET_ND_TARGET_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_02 "CAN_DET_HOST_VEH_CLUTTER_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_02 "CAN_DET_VALID_LEVEL_10_02"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_02 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_02 "CAN_DET_AZIMUTH_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_02 "CAN_DET_RANGE_10_02"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_02 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_02 "CAN_DET_RANGE_RATE_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_02 "CAN_DET_AMPLITUDE_10_02"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_02 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_02 "CAN_SCAN_INDEX_2LSB_10_02"; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 "CAN_DET_CONFID_AZIMUTH_10_03"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 "CAN_DET_CONFID_AZIMUTH_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 "CAN_DET_CONFID_AZIMUTH_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_03 "CAN_DET_SUPER_RES_TARGET_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_03 "CAN_DET_ND_TARGET_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_03 "CAN_DET_HOST_VEH_CLUTTER_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_03 "CAN_DET_VALID_LEVEL_10_03"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_03 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_03 "CAN_DET_AZIMUTH_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_03 "CAN_DET_RANGE_10_03"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_03 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_03 "CAN_DET_RANGE_RATE_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_03 "CAN_DET_AMPLITUDE_10_03"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_03 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_03 "CAN_SCAN_INDEX_2LSB_10_03"; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 "CAN_DET_CONFID_AZIMUTH_10_04"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 "CAN_DET_CONFID_AZIMUTH_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 "CAN_DET_CONFID_AZIMUTH_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_04 "CAN_DET_SUPER_RES_TARGET_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_04 "CAN_DET_ND_TARGET_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_04 "CAN_DET_HOST_VEH_CLUTTER_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_04 "CAN_DET_VALID_LEVEL_10_04"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_04 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_04 "CAN_DET_AZIMUTH_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_04 "CAN_DET_RANGE_10_04"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_04 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_04 "CAN_DET_RANGE_RATE_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_04 "CAN_DET_AMPLITUDE_10_04"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_04 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_04 "CAN_SCAN_INDEX_2LSB_10_04"; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 "CAN_DET_CONFID_AZIMUTH_10_05"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 "CAN_DET_CONFID_AZIMUTH_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 "CAN_DET_CONFID_AZIMUTH_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_05 "CAN_DET_SUPER_RES_TARGET_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_05 "CAN_DET_ND_TARGET_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_05 "CAN_DET_HOST_VEH_CLUTTER_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_05 "CAN_DET_VALID_LEVEL_10_05"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_05 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_05 "CAN_DET_AZIMUTH_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_05 "CAN_DET_RANGE_10_05"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_05 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_05 "CAN_DET_RANGE_RATE_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_05 "CAN_DET_AMPLITUDE_10_05"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_05 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_05 "CAN_SCAN_INDEX_2LSB_10_05"; -BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 "CAN_DET_CONFID_AZIMUTH_10_06"; -BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 "CAN_DET_CONFID_AZIMUTH_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 "CAN_DET_CONFID_AZIMUTH_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_06 "CAN_DET_SUPER_RES_TARGET_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_06 "CAN_DET_ND_TARGET_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_06 "CAN_DET_HOST_VEH_CLUTTER_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_06 "CAN_DET_VALID_LEVEL_10_06"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_06 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_06 "CAN_DET_AZIMUTH_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_06 "CAN_DET_RANGE_10_06"; -BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_06 0; -BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_06 "CAN_DET_RANGE_RATE_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_06 "CAN_DET_AMPLITUDE_10_06"; -BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_06 0; -BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_06 "CAN_SCAN_INDEX_2LSB_10_06"; -BA_ "GenMsgSendType" BO_ 296 1; -BA_ "GenMsgILSupport" BO_ 296 1; -BA_ "GenMsgNrOfRepetition" BO_ 296 0; -BA_ "GenMsgCycleTime" BO_ 296 0; -BA_ "NetworkInitialization" BO_ 296 0; -BA_ "GenMsgDelayTime" BO_ 296 0; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 "CAN_DET_CONFID_AZIMUTH_09_01"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 "CAN_DET_CONFID_AZIMUTH_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 "CAN_DET_CONFID_AZIMUTH_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_01 "CAN_DET_SUPER_RES_TARGET_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_01 "CAN_DET_ND_TARGET_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_01 "CAN_DET_HOST_VEH_CLUTTER_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_01 "CAN_DET_VALID_LEVEL_09_01"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_01 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_01 "CAN_DET_AZIMUTH_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_01 "CAN_DET_RANGE_09_01"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_01 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_01 "CAN_DET_RANGE_RATE_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_01 "CAN_DET_AMPLITUDE_09_01"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_01 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_01 "CAN_SCAN_INDEX_2LSB_09_01"; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 "CAN_DET_CONFID_AZIMUTH_09_02"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 "CAN_DET_CONFID_AZIMUTH_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 "CAN_DET_CONFID_AZIMUTH_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_02 "CAN_DET_SUPER_RES_TARGET_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_02 "CAN_DET_ND_TARGET_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_02 "CAN_DET_HOST_VEH_CLUTTER_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_02 "CAN_DET_VALID_LEVEL_09_02"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_02 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_02 "CAN_DET_AZIMUTH_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_02 "CAN_DET_RANGE_09_02"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_02 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_02 "CAN_DET_RANGE_RATE_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_02 "CAN_DET_AMPLITUDE_09_02"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_02 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_02 "CAN_SCAN_INDEX_2LSB_09_02"; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 "CAN_DET_CONFID_AZIMUTH_09_03"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 "CAN_DET_CONFID_AZIMUTH_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 "CAN_DET_CONFID_AZIMUTH_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_03 "CAN_DET_SUPER_RES_TARGET_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_03 "CAN_DET_ND_TARGET_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_03 "CAN_DET_HOST_VEH_CLUTTER_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_03 "CAN_DET_VALID_LEVEL_09_03"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_03 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_03 "CAN_DET_AZIMUTH_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_03 "CAN_DET_RANGE_09_03"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_03 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_03 "CAN_DET_RANGE_RATE_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_03 "CAN_DET_AMPLITUDE_09_03"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_03 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_03 "CAN_SCAN_INDEX_2LSB_09_03"; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 "CAN_DET_CONFID_AZIMUTH_09_04"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 "CAN_DET_CONFID_AZIMUTH_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 "CAN_DET_CONFID_AZIMUTH_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_04 "CAN_DET_SUPER_RES_TARGET_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_04 "CAN_DET_ND_TARGET_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_04 "CAN_DET_HOST_VEH_CLUTTER_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_04 "CAN_DET_VALID_LEVEL_09_04"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_04 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_04 "CAN_DET_AZIMUTH_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_04 "CAN_DET_RANGE_09_04"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_04 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_04 "CAN_DET_RANGE_RATE_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_04 "CAN_DET_AMPLITUDE_09_04"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_04 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_04 "CAN_SCAN_INDEX_2LSB_09_04"; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 "CAN_DET_CONFID_AZIMUTH_09_05"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 "CAN_DET_CONFID_AZIMUTH_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 "CAN_DET_CONFID_AZIMUTH_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_05 "CAN_DET_SUPER_RES_TARGET_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_05 "CAN_DET_ND_TARGET_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_05 "CAN_DET_HOST_VEH_CLUTTER_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_05 "CAN_DET_VALID_LEVEL_09_05"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_05 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_05 "CAN_DET_AZIMUTH_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_05 "CAN_DET_RANGE_09_05"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_05 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_05 "CAN_DET_RANGE_RATE_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_05 "CAN_DET_AMPLITUDE_09_05"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_05 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_05 "CAN_SCAN_INDEX_2LSB_09_05"; -BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 "CAN_DET_CONFID_AZIMUTH_09_06"; -BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 "CAN_DET_CONFID_AZIMUTH_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 "CAN_DET_CONFID_AZIMUTH_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_06 "CAN_DET_SUPER_RES_TARGET_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_06 "CAN_DET_ND_TARGET_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_06 "CAN_DET_HOST_VEH_CLUTTER_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_06 "CAN_DET_VALID_LEVEL_09_06"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_06 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_06 "CAN_DET_AZIMUTH_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_06 "CAN_DET_RANGE_09_06"; -BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_06 0; -BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_06 "CAN_DET_RANGE_RATE_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_06 "CAN_DET_AMPLITUDE_09_06"; -BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_06 0; -BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_06 "CAN_SCAN_INDEX_2LSB_09_06"; -BA_ "GenMsgSendType" BO_ 295 1; -BA_ "GenMsgILSupport" BO_ 295 1; -BA_ "GenMsgNrOfRepetition" BO_ 295 0; -BA_ "GenMsgCycleTime" BO_ 295 0; -BA_ "NetworkInitialization" BO_ 295 0; -BA_ "GenMsgDelayTime" BO_ 295 0; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 "CAN_DET_CONFID_AZIMUTH_08_01"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 "CAN_DET_CONFID_AZIMUTH_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 "CAN_DET_CONFID_AZIMUTH_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_01 "CAN_DET_SUPER_RES_TARGET_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_01 "CAN_DET_ND_TARGET_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_01 "CAN_DET_HOST_VEH_CLUTTER_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_01 "CAN_DET_VALID_LEVEL_08_01"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_01 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_01 "CAN_DET_AZIMUTH_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_01 "CAN_DET_RANGE_08_01"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_01 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_01 "CAN_DET_RANGE_RATE_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_01 "CAN_DET_AMPLITUDE_08_01"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_01 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_01 "CAN_SCAN_INDEX_2LSB_08_01"; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 "CAN_DET_CONFID_AZIMUTH_08_02"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 "CAN_DET_CONFID_AZIMUTH_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 "CAN_DET_CONFID_AZIMUTH_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_02 "CAN_DET_SUPER_RES_TARGET_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_02 "CAN_DET_ND_TARGET_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_02 "CAN_DET_HOST_VEH_CLUTTER_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_02 "CAN_DET_VALID_LEVEL_08_02"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_02 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_02 "CAN_DET_AZIMUTH_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_02 "CAN_DET_RANGE_08_02"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_02 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_02 "CAN_DET_RANGE_RATE_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_02 "CAN_DET_AMPLITUDE_08_02"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_02 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_02 "CAN_SCAN_INDEX_2LSB_08_02"; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 "CAN_DET_CONFID_AZIMUTH_08_03"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 "CAN_DET_CONFID_AZIMUTH_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 "CAN_DET_CONFID_AZIMUTH_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_03 "CAN_DET_SUPER_RES_TARGET_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_03 "CAN_DET_ND_TARGET_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_03 "CAN_DET_HOST_VEH_CLUTTER_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_03 "CAN_DET_VALID_LEVEL_08_03"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_03 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_03 "CAN_DET_AZIMUTH_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_03 "CAN_DET_RANGE_08_03"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_03 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_03 "CAN_DET_RANGE_RATE_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_03 "CAN_DET_AMPLITUDE_08_03"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_03 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_03 "CAN_SCAN_INDEX_2LSB_08_03"; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 "CAN_DET_CONFID_AZIMUTH_08_04"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 "CAN_DET_CONFID_AZIMUTH_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 "CAN_DET_CONFID_AZIMUTH_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_04 "CAN_DET_SUPER_RES_TARGET_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_04 "CAN_DET_ND_TARGET_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_04 "CAN_DET_HOST_VEH_CLUTTER_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_04 "CAN_DET_VALID_LEVEL_08_04"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_04 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_04 "CAN_DET_AZIMUTH_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_04 "CAN_DET_RANGE_08_04"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_04 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_04 "CAN_DET_RANGE_RATE_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_04 "CAN_DET_AMPLITUDE_08_04"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_04 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_04 "CAN_SCAN_INDEX_2LSB_08_04"; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 "CAN_DET_CONFID_AZIMUTH_08_05"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 "CAN_DET_CONFID_AZIMUTH_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 "CAN_DET_CONFID_AZIMUTH_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_05 "CAN_DET_SUPER_RES_TARGET_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_05 "CAN_DET_ND_TARGET_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_05 "CAN_DET_HOST_VEH_CLUTTER_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_05 "CAN_DET_VALID_LEVEL_08_05"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_05 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_05 "CAN_DET_AZIMUTH_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_05 "CAN_DET_RANGE_08_05"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_05 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_05 "CAN_DET_RANGE_RATE_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_05 "CAN_DET_AMPLITUDE_08_05"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_05 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_05 "CAN_SCAN_INDEX_2LSB_08_05"; -BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 "CAN_DET_CONFID_AZIMUTH_08_06"; -BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 "CAN_DET_CONFID_AZIMUTH_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 "CAN_DET_CONFID_AZIMUTH_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_06 "CAN_DET_SUPER_RES_TARGET_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_06 "CAN_DET_ND_TARGET_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_06 "CAN_DET_HOST_VEH_CLUTTER_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_06 "CAN_DET_VALID_LEVEL_08_06"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_06 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_06 "CAN_DET_AZIMUTH_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_06 "CAN_DET_RANGE_08_06"; -BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_06 0; -BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_06 "CAN_DET_RANGE_RATE_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_06 "CAN_DET_AMPLITUDE_08_06"; -BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_06 0; -BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_06 "CAN_SCAN_INDEX_2LSB_08_06"; -BA_ "GenMsgSendType" BO_ 294 1; -BA_ "GenMsgILSupport" BO_ 294 1; -BA_ "GenMsgNrOfRepetition" BO_ 294 0; -BA_ "GenMsgCycleTime" BO_ 294 0; -BA_ "NetworkInitialization" BO_ 294 0; -BA_ "GenMsgDelayTime" BO_ 294 0; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 "CAN_DET_CONFID_AZIMUTH_07_01"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 "CAN_DET_CONFID_AZIMUTH_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 "CAN_DET_CONFID_AZIMUTH_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_01 "CAN_DET_SUPER_RES_TARGET_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_01 "CAN_DET_ND_TARGET_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_01 "CAN_DET_HOST_VEH_CLUTTER_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_01 "CAN_DET_VALID_LEVEL_07_01"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_01 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_01 "CAN_DET_AZIMUTH_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_01 "CAN_DET_RANGE_07_01"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_01 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_01 "CAN_DET_RANGE_RATE_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_01 "CAN_DET_AMPLITUDE_07_01"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_01 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_01 "CAN_SCAN_INDEX_2LSB_07_01"; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 "CAN_DET_CONFID_AZIMUTH_07_02"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 "CAN_DET_CONFID_AZIMUTH_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 "CAN_DET_CONFID_AZIMUTH_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_02 "CAN_DET_SUPER_RES_TARGET_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_02 "CAN_DET_ND_TARGET_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_02 "CAN_DET_HOST_VEH_CLUTTER_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_02 "CAN_DET_VALID_LEVEL_07_02"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_02 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_02 "CAN_DET_AZIMUTH_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_02 "CAN_DET_RANGE_07_02"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_02 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_02 "CAN_DET_RANGE_RATE_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_02 "CAN_DET_AMPLITUDE_07_02"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_02 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_02 "CAN_SCAN_INDEX_2LSB_07_02"; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 "CAN_DET_CONFID_AZIMUTH_07_03"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 "CAN_DET_CONFID_AZIMUTH_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 "CAN_DET_CONFID_AZIMUTH_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_03 "CAN_DET_SUPER_RES_TARGET_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_03 "CAN_DET_ND_TARGET_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_03 "CAN_DET_HOST_VEH_CLUTTER_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_03 "CAN_DET_VALID_LEVEL_07_03"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_03 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_03 "CAN_DET_AZIMUTH_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_03 "CAN_DET_RANGE_07_03"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_03 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_03 "CAN_DET_RANGE_RATE_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_03 "CAN_DET_AMPLITUDE_07_03"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_03 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_03 "CAN_SCAN_INDEX_2LSB_07_03"; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 "CAN_DET_CONFID_AZIMUTH_07_04"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 "CAN_DET_CONFID_AZIMUTH_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 "CAN_DET_CONFID_AZIMUTH_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_04 "CAN_DET_SUPER_RES_TARGET_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_04 "CAN_DET_ND_TARGET_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_04 "CAN_DET_HOST_VEH_CLUTTER_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_04 "CAN_DET_VALID_LEVEL_07_04"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_04 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_04 "CAN_DET_AZIMUTH_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_04 "CAN_DET_RANGE_07_04"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_04 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_04 "CAN_DET_RANGE_RATE_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_04 "CAN_DET_AMPLITUDE_07_04"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_04 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_04 "CAN_SCAN_INDEX_2LSB_07_04"; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 "CAN_DET_CONFID_AZIMUTH_07_05"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 "CAN_DET_CONFID_AZIMUTH_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 "CAN_DET_CONFID_AZIMUTH_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_05 "CAN_DET_SUPER_RES_TARGET_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_05 "CAN_DET_ND_TARGET_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_05 "CAN_DET_HOST_VEH_CLUTTER_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_05 "CAN_DET_VALID_LEVEL_07_05"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_05 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_05 "CAN_DET_AZIMUTH_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_05 "CAN_DET_RANGE_07_05"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_05 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_05 "CAN_DET_RANGE_RATE_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_05 "CAN_DET_AMPLITUDE_07_05"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_05 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_05 "CAN_SCAN_INDEX_2LSB_07_05"; -BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 "CAN_DET_CONFID_AZIMUTH_07_06"; -BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 "CAN_DET_CONFID_AZIMUTH_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 "CAN_DET_CONFID_AZIMUTH_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_06 "CAN_DET_SUPER_RES_TARGET_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_06 "CAN_DET_ND_TARGET_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_06 "CAN_DET_HOST_VEH_CLUTTER_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_06 "CAN_DET_VALID_LEVEL_07_06"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_06 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_06 "CAN_DET_AZIMUTH_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_06 "CAN_DET_RANGE_07_06"; -BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_06 0; -BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_06 "CAN_DET_RANGE_RATE_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_06 "CAN_DET_AMPLITUDE_07_06"; -BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_06 0; -BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_06 "CAN_SCAN_INDEX_2LSB_07_06"; -BA_ "GenMsgSendType" BO_ 293 1; -BA_ "GenMsgILSupport" BO_ 293 1; -BA_ "GenMsgNrOfRepetition" BO_ 293 0; -BA_ "GenMsgCycleTime" BO_ 293 0; -BA_ "NetworkInitialization" BO_ 293 0; -BA_ "GenMsgDelayTime" BO_ 293 0; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 "CAN_DET_CONFID_AZIMUTH_06_01"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 "CAN_DET_CONFID_AZIMUTH_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 "CAN_DET_CONFID_AZIMUTH_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_01 "CAN_DET_SUPER_RES_TARGET_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_01 "CAN_DET_ND_TARGET_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_01 "CAN_DET_HOST_VEH_CLUTTER_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_01 "CAN_DET_VALID_LEVEL_06_01"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_01 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_01 "CAN_DET_AZIMUTH_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_01 "CAN_DET_RANGE_06_01"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_01 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_01 "CAN_DET_RANGE_RATE_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_01 "CAN_DET_AMPLITUDE_06_01"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_01 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_01 "CAN_SCAN_INDEX_2LSB_06_01"; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 "CAN_DET_CONFID_AZIMUTH_06_02"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 "CAN_DET_CONFID_AZIMUTH_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 "CAN_DET_CONFID_AZIMUTH_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_02 "CAN_DET_SUPER_RES_TARGET_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_02 "CAN_DET_ND_TARGET_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_02 "CAN_DET_HOST_VEH_CLUTTER_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_02 "CAN_DET_VALID_LEVEL_06_02"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_02 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_02 "CAN_DET_AZIMUTH_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_02 "CAN_DET_RANGE_06_02"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_02 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_02 "CAN_DET_RANGE_RATE_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_02 "CAN_DET_AMPLITUDE_06_02"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_02 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_02 "CAN_SCAN_INDEX_2LSB_06_02"; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 "CAN_DET_CONFID_AZIMUTH_06_03"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 "CAN_DET_CONFID_AZIMUTH_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 "CAN_DET_CONFID_AZIMUTH_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_03 "CAN_DET_SUPER_RES_TARGET_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_03 "CAN_DET_ND_TARGET_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_03 "CAN_DET_HOST_VEH_CLUTTER_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_03 "CAN_DET_VALID_LEVEL_06_03"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_03 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_03 "CAN_DET_AZIMUTH_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_03 "CAN_DET_RANGE_06_03"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_03 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_03 "CAN_DET_RANGE_RATE_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_03 "CAN_DET_AMPLITUDE_06_03"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_03 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_03 "CAN_SCAN_INDEX_2LSB_06_03"; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 "CAN_DET_CONFID_AZIMUTH_06_04"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 "CAN_DET_CONFID_AZIMUTH_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 "CAN_DET_CONFID_AZIMUTH_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_04 "CAN_DET_SUPER_RES_TARGET_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_04 "CAN_DET_ND_TARGET_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_04 "CAN_DET_HOST_VEH_CLUTTER_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_04 "CAN_DET_VALID_LEVEL_06_04"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_04 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_04 "CAN_DET_AZIMUTH_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_04 "CAN_DET_RANGE_06_04"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_04 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_04 "CAN_DET_RANGE_RATE_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_04 "CAN_DET_AMPLITUDE_06_04"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_04 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_04 "CAN_SCAN_INDEX_2LSB_06_04"; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 "CAN_DET_CONFID_AZIMUTH_06_05"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 "CAN_DET_CONFID_AZIMUTH_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 "CAN_DET_CONFID_AZIMUTH_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_05 "CAN_DET_SUPER_RES_TARGET_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_05 "CAN_DET_ND_TARGET_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_05 "CAN_DET_HOST_VEH_CLUTTER_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_05 "CAN_DET_VALID_LEVEL_06_05"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_05 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_05 "CAN_DET_AZIMUTH_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_05 "CAN_DET_RANGE_06_05"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_05 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_05 "CAN_DET_RANGE_RATE_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_05 "CAN_DET_AMPLITUDE_06_05"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_05 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_05 "CAN_SCAN_INDEX_2LSB_06_05"; -BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 "CAN_DET_CONFID_AZIMUTH_06_06"; -BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 "CAN_DET_CONFID_AZIMUTH_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 "CAN_DET_CONFID_AZIMUTH_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_06 "CAN_DET_SUPER_RES_TARGET_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_06 "CAN_DET_ND_TARGET_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_06 "CAN_DET_HOST_VEH_CLUTTER_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_06 "CAN_DET_VALID_LEVEL_06_06"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_06 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_06 "CAN_DET_AZIMUTH_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_06 "CAN_DET_RANGE_06_06"; -BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_06 0; -BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_06 "CAN_DET_RANGE_RATE_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_06 "CAN_DET_AMPLITUDE_06_06"; -BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_06 0; -BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_06 "CAN_SCAN_INDEX_2LSB_06_06"; -BA_ "GenMsgSendType" BO_ 292 1; -BA_ "GenMsgILSupport" BO_ 292 1; -BA_ "GenMsgNrOfRepetition" BO_ 292 0; -BA_ "GenMsgCycleTime" BO_ 292 0; -BA_ "NetworkInitialization" BO_ 292 0; -BA_ "GenMsgDelayTime" BO_ 292 0; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 "CAN_DET_CONFID_AZIMUTH_05_01"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 "CAN_DET_CONFID_AZIMUTH_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 "CAN_DET_CONFID_AZIMUTH_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_01 "CAN_DET_SUPER_RES_TARGET_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_01 "CAN_DET_ND_TARGET_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_01 "CAN_DET_HOST_VEH_CLUTTER_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_01 "CAN_DET_VALID_LEVEL_05_01"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_01 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_01 "CAN_DET_AZIMUTH_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_01 "CAN_DET_RANGE_05_01"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_01 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_01 "CAN_DET_RANGE_RATE_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_01 "CAN_DET_AMPLITUDE_05_01"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_01 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_01 "CAN_SCAN_INDEX_2LSB_05_01"; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 "CAN_DET_CONFID_AZIMUTH_05_02"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 "CAN_DET_CONFID_AZIMUTH_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 "CAN_DET_CONFID_AZIMUTH_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_02 "CAN_DET_SUPER_RES_TARGET_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_02 "CAN_DET_ND_TARGET_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_02 "CAN_DET_HOST_VEH_CLUTTER_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_02 "CAN_DET_VALID_LEVEL_05_02"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_02 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_02 "CAN_DET_AZIMUTH_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_02 "CAN_DET_RANGE_05_02"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_02 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_02 "CAN_DET_RANGE_RATE_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_02 "CAN_DET_AMPLITUDE_05_02"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_02 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_02 "CAN_SCAN_INDEX_2LSB_05_02"; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 "CAN_DET_CONFID_AZIMUTH_05_03"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 "CAN_DET_CONFID_AZIMUTH_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 "CAN_DET_CONFID_AZIMUTH_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_03 "CAN_DET_SUPER_RES_TARGET_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_03 "CAN_DET_ND_TARGET_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_03 "CAN_DET_HOST_VEH_CLUTTER_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_03 "CAN_DET_VALID_LEVEL_05_03"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_03 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_03 "CAN_DET_AZIMUTH_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_03 "CAN_DET_RANGE_05_03"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_03 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_03 "CAN_DET_RANGE_RATE_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_03 "CAN_DET_AMPLITUDE_05_03"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_03 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_03 "CAN_SCAN_INDEX_2LSB_05_03"; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 "CAN_DET_CONFID_AZIMUTH_05_04"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 "CAN_DET_CONFID_AZIMUTH_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 "CAN_DET_CONFID_AZIMUTH_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_04 "CAN_DET_SUPER_RES_TARGET_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_04 "CAN_DET_ND_TARGET_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_04 "CAN_DET_HOST_VEH_CLUTTER_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_04 "CAN_DET_VALID_LEVEL_05_04"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_04 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_04 "CAN_DET_AZIMUTH_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_04 "CAN_DET_RANGE_05_04"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_04 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_04 "CAN_DET_RANGE_RATE_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_04 "CAN_DET_AMPLITUDE_05_04"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_04 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_04 "CAN_SCAN_INDEX_2LSB_05_04"; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 "CAN_DET_CONFID_AZIMUTH_05_05"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 "CAN_DET_CONFID_AZIMUTH_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 "CAN_DET_CONFID_AZIMUTH_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_05 "CAN_DET_SUPER_RES_TARGET_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_05 "CAN_DET_ND_TARGET_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_05 "CAN_DET_HOST_VEH_CLUTTER_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_05 "CAN_DET_VALID_LEVEL_05_05"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_05 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_05 "CAN_DET_AZIMUTH_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_05 "CAN_DET_RANGE_05_05"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_05 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_05 "CAN_DET_RANGE_RATE_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_05 "CAN_DET_AMPLITUDE_05_05"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_05 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_05 "CAN_SCAN_INDEX_2LSB_05_05"; -BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 "CAN_DET_CONFID_AZIMUTH_05_06"; -BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 "CAN_DET_CONFID_AZIMUTH_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 "CAN_DET_CONFID_AZIMUTH_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_06 "CAN_DET_SUPER_RES_TARGET_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_06 "CAN_DET_ND_TARGET_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_06 "CAN_DET_HOST_VEH_CLUTTER_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_06 "CAN_DET_VALID_LEVEL_05_06"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_06 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_06 "CAN_DET_AZIMUTH_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_06 "CAN_DET_RANGE_05_06"; -BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_06 0; -BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_06 "CAN_DET_RANGE_RATE_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_06 "CAN_DET_AMPLITUDE_05_06"; -BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_06 0; -BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_06 "CAN_SCAN_INDEX_2LSB_05_06"; -BA_ "GenMsgSendType" BO_ 290 1; -BA_ "GenMsgILSupport" BO_ 290 1; -BA_ "GenMsgNrOfRepetition" BO_ 290 0; -BA_ "GenMsgCycleTime" BO_ 290 0; -BA_ "NetworkInitialization" BO_ 290 0; -BA_ "GenMsgDelayTime" BO_ 290 0; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 "CAN_DET_CONFID_AZIMUTH_03_01"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 "CAN_DET_CONFID_AZIMUTH_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 "CAN_DET_CONFID_AZIMUTH_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_01 "CAN_DET_SUPER_RES_TARGET_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_01 "CAN_DET_ND_TARGET_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_01 "CAN_DET_HOST_VEH_CLUTTER_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_01 "CAN_DET_VALID_LEVEL_03_01"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_01 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_01 "CAN_DET_AZIMUTH_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_01 "CAN_DET_RANGE_03_01"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_01 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_01 "CAN_DET_RANGE_RATE_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_01 "CAN_DET_AMPLITUDE_03_01"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_01 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_01 "CAN_SCAN_INDEX_2LSB_03_01"; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 "CAN_DET_CONFID_AZIMUTH_03_02"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 "CAN_DET_CONFID_AZIMUTH_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 "CAN_DET_CONFID_AZIMUTH_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_02 "CAN_DET_SUPER_RES_TARGET_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_02 "CAN_DET_ND_TARGET_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_02 "CAN_DET_HOST_VEH_CLUTTER_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_02 "CAN_DET_VALID_LEVEL_03_02"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_02 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_02 "CAN_DET_AZIMUTH_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_02 "CAN_DET_RANGE_03_02"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_02 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_02 "CAN_DET_RANGE_RATE_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_02 "CAN_DET_AMPLITUDE_03_02"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_02 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_02 "CAN_SCAN_INDEX_2LSB_03_02"; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 "CAN_DET_CONFID_AZIMUTH_03_03"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 "CAN_DET_CONFID_AZIMUTH_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 "CAN_DET_CONFID_AZIMUTH_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_03 "CAN_DET_SUPER_RES_TARGET_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_03 "CAN_DET_ND_TARGET_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_03 "CAN_DET_HOST_VEH_CLUTTER_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_03 "CAN_DET_VALID_LEVEL_03_03"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_03 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_03 "CAN_DET_AZIMUTH_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_03 "CAN_DET_RANGE_03_03"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_03 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_03 "CAN_DET_RANGE_RATE_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_03 "CAN_DET_AMPLITUDE_03_03"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_03 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_03 "CAN_SCAN_INDEX_2LSB_03_03"; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 "CAN_DET_CONFID_AZIMUTH_03_04"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 "CAN_DET_CONFID_AZIMUTH_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 "CAN_DET_CONFID_AZIMUTH_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_04 "CAN_DET_SUPER_RES_TARGET_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_04 "CAN_DET_ND_TARGET_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_04 "CAN_DET_HOST_VEH_CLUTTER_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_04 "CAN_DET_VALID_LEVEL_03_04"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_04 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_04 "CAN_DET_AZIMUTH_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_04 "CAN_DET_RANGE_03_04"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_04 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_04 "CAN_DET_RANGE_RATE_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_04 "CAN_DET_AMPLITUDE_03_04"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_04 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_04 "CAN_SCAN_INDEX_2LSB_03_04"; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 "CAN_DET_CONFID_AZIMUTH_03_05"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 "CAN_DET_CONFID_AZIMUTH_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 "CAN_DET_CONFID_AZIMUTH_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_05 "CAN_DET_SUPER_RES_TARGET_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_05 "CAN_DET_ND_TARGET_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_05 "CAN_DET_HOST_VEH_CLUTTER_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_05 "CAN_DET_VALID_LEVEL_03_05"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_05 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_05 "CAN_DET_AZIMUTH_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_05 "CAN_DET_RANGE_03_05"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_05 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_05 "CAN_DET_RANGE_RATE_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_05 "CAN_DET_AMPLITUDE_03_05"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_05 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_05 "CAN_SCAN_INDEX_2LSB_03_05"; -BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 "CAN_DET_CONFID_AZIMUTH_03_06"; -BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 "CAN_DET_CONFID_AZIMUTH_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 "CAN_DET_CONFID_AZIMUTH_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_06 "CAN_DET_SUPER_RES_TARGET_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_06 "CAN_DET_ND_TARGET_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_06 "CAN_DET_HOST_VEH_CLUTTER_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_06 "CAN_DET_VALID_LEVEL_03_06"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_06 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_06 "CAN_DET_AZIMUTH_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_06 "CAN_DET_RANGE_03_06"; -BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_06 0; -BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_06 "CAN_DET_RANGE_RATE_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_06 "CAN_DET_AMPLITUDE_03_06"; -BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_06 0; -BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_06 "CAN_SCAN_INDEX_2LSB_03_06"; -BA_ "GenMsgSendType" BO_ 289 1; -BA_ "GenMsgILSupport" BO_ 289 1; -BA_ "GenMsgNrOfRepetition" BO_ 289 0; -BA_ "GenMsgCycleTime" BO_ 289 0; -BA_ "NetworkInitialization" BO_ 289 0; -BA_ "GenMsgDelayTime" BO_ 289 0; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 "CAN_DET_CONFID_AZIMUTH_02_01"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 "CAN_DET_CONFID_AZIMUTH_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 "CAN_DET_CONFID_AZIMUTH_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_01 "CAN_DET_SUPER_RES_TARGET_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_01 "CAN_DET_ND_TARGET_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_01 "CAN_DET_HOST_VEH_CLUTTER_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_01 "CAN_DET_VALID_LEVEL_02_01"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_01 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_01 "CAN_DET_AZIMUTH_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_01 "CAN_DET_RANGE_02_01"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_01 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_01 "CAN_DET_RANGE_RATE_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_01 "CAN_DET_AMPLITUDE_02_01"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_01 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_01 "CAN_SCAN_INDEX_2LSB_02_01"; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 "CAN_DET_CONFID_AZIMUTH_02_02"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 "CAN_DET_CONFID_AZIMUTH_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 "CAN_DET_CONFID_AZIMUTH_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_02 "CAN_DET_SUPER_RES_TARGET_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_02 "CAN_DET_ND_TARGET_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_02 "CAN_DET_HOST_VEH_CLUTTER_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_02 "CAN_DET_VALID_LEVEL_02_02"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_02 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_02 "CAN_DET_AZIMUTH_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_02 "CAN_DET_RANGE_02_02"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_02 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_02 "CAN_DET_RANGE_RATE_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_02 "CAN_DET_AMPLITUDE_02_02"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_02 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_02 "CAN_SCAN_INDEX_2LSB_02_02"; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 "CAN_DET_CONFID_AZIMUTH_02_03"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 "CAN_DET_CONFID_AZIMUTH_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 "CAN_DET_CONFID_AZIMUTH_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_03 "CAN_DET_SUPER_RES_TARGET_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_03 "CAN_DET_ND_TARGET_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_03 "CAN_DET_HOST_VEH_CLUTTER_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_03 "CAN_DET_VALID_LEVEL_02_03"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_03 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_03 "CAN_DET_AZIMUTH_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_03 "CAN_DET_RANGE_02_03"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_03 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_03 "CAN_DET_RANGE_RATE_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_03 "CAN_DET_AMPLITUDE_02_03"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_03 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_03 "CAN_SCAN_INDEX_2LSB_02_03"; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 "CAN_DET_CONFID_AZIMUTH_02_04"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 "CAN_DET_CONFID_AZIMUTH_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 "CAN_DET_CONFID_AZIMUTH_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_04 "CAN_DET_SUPER_RES_TARGET_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_04 "CAN_DET_ND_TARGET_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_04 "CAN_DET_HOST_VEH_CLUTTER_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_04 "CAN_DET_VALID_LEVEL_02_04"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_04 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_04 "CAN_DET_AZIMUTH_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_04 "CAN_DET_RANGE_02_04"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_04 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_04 "CAN_DET_RANGE_RATE_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_04 "CAN_DET_AMPLITUDE_02_04"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_04 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_04 "CAN_SCAN_INDEX_2LSB_02_04"; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 "CAN_DET_CONFID_AZIMUTH_02_05"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 "CAN_DET_CONFID_AZIMUTH_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 "CAN_DET_CONFID_AZIMUTH_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_05 "CAN_DET_SUPER_RES_TARGET_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_05 "CAN_DET_ND_TARGET_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_05 "CAN_DET_HOST_VEH_CLUTTER_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_05 "CAN_DET_VALID_LEVEL_02_05"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_05 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_05 "CAN_DET_AZIMUTH_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_05 "CAN_DET_RANGE_02_05"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_05 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_05 "CAN_DET_RANGE_RATE_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_05 "CAN_DET_AMPLITUDE_02_05"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_05 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_05 "CAN_SCAN_INDEX_2LSB_02_05"; -BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 "CAN_DET_CONFID_AZIMUTH_02_06"; -BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 "CAN_DET_CONFID_AZIMUTH_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 "CAN_DET_CONFID_AZIMUTH_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_06 "CAN_DET_SUPER_RES_TARGET_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_06 "CAN_DET_ND_TARGET_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_06 "CAN_DET_HOST_VEH_CLUTTER_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_06 "CAN_DET_VALID_LEVEL_02_06"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_06 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_06 "CAN_DET_AZIMUTH_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_06 "CAN_DET_RANGE_02_06"; -BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_06 0; -BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_06 "CAN_DET_RANGE_RATE_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_06 "CAN_DET_AMPLITUDE_02_06"; -BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_06 0; -BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_06 "CAN_SCAN_INDEX_2LSB_02_06"; -BA_ "GenMsgSendType" BO_ 256 1; -BA_ "GenMsgILSupport" BO_ 256 1; -BA_ "GenMsgNrOfRepetition" BO_ 256 0; -BA_ "NetworkInitialization" BO_ 256 0; -BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MINOR_MRR "CAN_PCAN_MINOR_MRR"; -BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MINOR_MRR 0; -BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MAJOR_MRR "CAN_PCAN_MAJOR_MRR"; -BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MAJOR_MRR 0; -BA_ "GenMsgCycleTime" BO_ 257 30; -BA_ "GenMsgSendType" BO_ 257 0; -BA_ "GenMsgILSupport" BO_ 257 1; -BA_ "GenMsgNrOfRepetition" BO_ 257 0; -BA_ "NetworkInitialization" BO_ 257 0; -BA_ "GenSigCmt" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtEn" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtName" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtName" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigCmt" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigStartValue" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE 0; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_MNR 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_EXT_COND_NOK 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_NOT_START 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_OVERHEAT_ERROR 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_NOT_OP 0; -BA_ "GenSigCmt" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigVtEn" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigVtName" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigSendType" SG_ 257 CAN_XCVR_OPERATIONAL 0; -BA_ "GenMsgSendType" BO_ 288 1; -BA_ "GenMsgILSupport" BO_ 288 1; -BA_ "GenMsgNrOfRepetition" BO_ 288 0; -BA_ "GenMsgCycleTime" BO_ 288 0; -BA_ "NetworkInitialization" BO_ 288 0; -BA_ "GenMsgDelayTime" BO_ 288 0; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 "CAN_DET_CONFID_AZIMUTH_01_01"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 "CAN_DET_CONFID_AZIMUTH_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 "CAN_DET_CONFID_AZIMUTH_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_01 "CAN_DET_SUPER_RES_TARGET_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_01 "CAN_DET_ND_TARGET_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_01 "CAN_DET_HOST_VEH_CLUTTER_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_01 "CAN_DET_VALID_LEVEL_01_01"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_01 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_01 "CAN_DET_AZIMUTH_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_01 "CAN_DET_RANGE_01_01"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_01 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_01 "CAN_DET_RANGE_RATE_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_01 "CAN_DET_AMPLITUDE_01_01"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_01 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_01 "CAN_SCAN_INDEX_2LSB_01_01"; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 "CAN_DET_CONFID_AZIMUTH_01_02"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 "CAN_DET_CONFID_AZIMUTH_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 "CAN_DET_CONFID_AZIMUTH_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_02 "CAN_DET_SUPER_RES_TARGET_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_02 "CAN_DET_ND_TARGET_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_02 "CAN_DET_HOST_VEH_CLUTTER_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_02 "CAN_DET_VALID_LEVEL_01_02"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_02 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_02 "CAN_DET_AZIMUTH_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_02 "CAN_DET_RANGE_01_02"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_02 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_02 "CAN_DET_RANGE_RATE_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_02 "CAN_DET_AMPLITUDE_01_02"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_02 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_02 "CAN_SCAN_INDEX_2LSB_01_02"; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 "CAN_DET_CONFID_AZIMUTH_01_03"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 "CAN_DET_CONFID_AZIMUTH_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 "CAN_DET_CONFID_AZIMUTH_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_03 "CAN_DET_SUPER_RES_TARGET_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_03 "CAN_DET_ND_TARGET_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_03 "CAN_DET_HOST_VEH_CLUTTER_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_03 "CAN_DET_VALID_LEVEL_01_03"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_03 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_03 "CAN_DET_AZIMUTH_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_03 "CAN_DET_RANGE_01_03"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_03 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_03 "CAN_DET_RANGE_RATE_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_03 "CAN_DET_AMPLITUDE_01_03"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_03 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_03 "CAN_SCAN_INDEX_2LSB_01_03"; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 "CAN_DET_CONFID_AZIMUTH_01_04"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 "CAN_DET_CONFID_AZIMUTH_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 "CAN_DET_CONFID_AZIMUTH_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_04 "CAN_DET_SUPER_RES_TARGET_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_04 "CAN_DET_ND_TARGET_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_04 "CAN_DET_HOST_VEH_CLUTTER_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_04 "CAN_DET_VALID_LEVEL_01_04"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_04 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_04 "CAN_DET_AZIMUTH_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_04 "CAN_DET_RANGE_01_04"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_04 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_04 "CAN_DET_RANGE_RATE_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_04 "CAN_DET_AMPLITUDE_01_04"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_04 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_04 "CAN_SCAN_INDEX_2LSB_01_04"; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 "CAN_DET_CONFID_AZIMUTH_01_05"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 "CAN_DET_CONFID_AZIMUTH_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 "CAN_DET_CONFID_AZIMUTH_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_05 "CAN_DET_SUPER_RES_TARGET_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_05 "CAN_DET_ND_TARGET_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_05 "CAN_DET_HOST_VEH_CLUTTER_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_05 "CAN_DET_VALID_LEVEL_01_05"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_05 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_05 "CAN_DET_AZIMUTH_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_05 "CAN_DET_RANGE_01_05"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_05 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_05 "CAN_DET_RANGE_RATE_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_05 "CAN_DET_AMPLITUDE_01_05"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_05 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_05 "CAN_SCAN_INDEX_2LSB_01_05"; -BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 "CAN_DET_CONFID_AZIMUTH_01_06"; -BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 "CAN_DET_CONFID_AZIMUTH_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 "CAN_DET_CONFID_AZIMUTH_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_06 "CAN_DET_SUPER_RES_TARGET_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_06 "CAN_DET_ND_TARGET_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_06 "CAN_DET_HOST_VEH_CLUTTER_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_06 "CAN_DET_VALID_LEVEL_01_06"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_06 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_06 "CAN_DET_AZIMUTH_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_06 "CAN_DET_RANGE_01_06"; -BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_06 0; -BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_06 "CAN_DET_RANGE_RATE_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_06 "CAN_DET_AMPLITUDE_01_06"; -BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_06 0; -BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_06 "CAN_SCAN_INDEX_2LSB_01_06"; -BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; -BA_DEF_DEF_ "CrossOver_LIN" "No"; -BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; -BA_DEF_DEF_ "ContentDependant" "No"; -BA_DEF_DEF_ "GenSigTimeoutTime_RCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_OCS" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_CCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_IPMA" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_SCCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_Generic_BCM" 0; -BA_DEF_DEF_ "NmMessage" "No"; -BA_DEF_DEF_ "DiagResponse" "No"; -BA_DEF_DEF_ "DiagRequest" "No"; -BA_DEF_DEF_ "TpTxIndex" 0; -BA_DEF_DEF_ "DiagState" "No"; -BA_DEF_DEF_ "TpApplType" ""; -BA_DEF_DEF_ "NmAsrMessage" "No"; -BA_DEF_DEF_ "Mulitplexer" "No"; -BA_DEF_DEF_ "ConfiguredTransmitter" "No"; -BA_DEF_DEF_ "EventRateOfChange" 10000; -BA_DEF_DEF_ "GenMsgHandlingTypeDoc" ""; -BA_DEF_DEF_ "GenMsgHandlingTypeCode" ""; -BA_DEF_DEF_ "GenMsgMarked" ""; -BA_DEF_DEF_ "GenSigMarked" ""; -BA_DEF_DEF_ "GenSigVtIndex" ""; -BA_DEF_DEF_ "GenSigVtName" ""; -BA_DEF_DEF_ "GenSigVtEn" ""; -BA_DEF_DEF_ "GenSigSNA" ""; -BA_DEF_DEF_ "GenSigCmt" ""; -BA_DEF_DEF_ "GenMsgCmt" ""; -BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; -BA_DEF_DEF_ "GenSigInactiveValue" 0; -BA_DEF_DEF_ "GenSigMissingSourceValue" 0; -BA_DEF_DEF_ "WakeupSignal" "No"; -BA_DEF_DEF_ "GenSigStartValue" 0; -BA_DEF_DEF_ "GenMsgILSupport" "Yes"; -BA_DEF_DEF_ "NetworkInitializationCommand" "No"; -BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; -BA_DEF_DEF_ "GenMsgCycleTime" 0; -BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; -BA_DEF_DEF_ "GenMsgDelayTime" 0; -BA_DEF_DEF_ "GenMsgNrOfRepetition" 0; -BA_DEF_DEF_ "GenMsgStartDelayTime" 0; -BA_DEF_DEF_ "NetworkInitialization" "No"; -BA_DEF_DEF_ "MessageGateway" "No"; -BA_DEF_DEF_ "ILUsed" "Yes"; -BA_DEF_DEF_ "NetworkInitializationUsed" "No"; -BA_DEF_DEF_ "PowerType" "Switched"; -BA_DEF_DEF_ "NodeStartUpTime" 250; -BA_DEF_DEF_ "NodeWakeUpTime" 10; -BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; -BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; -VAL_ 34 IPMA_PCAN_DataRangeCheck 1 "Fault Present" 0 "No Fault"; -VAL_ 34 IPMA_PCAN_MissingMsg 1 "Fault Present" 0 "No Fault "; -VAL_ 34 VINSignalCompareFailure 1 "Fault Present" 0 "No Fault"; -VAL_ 34 ModuleNotConfiguredError 1 "Fault Present" 0 "No Fault"; -VAL_ 34 CarCfgNotConfiguredError 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ARMtoDSPChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 DSPtoArmChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 HostToArmChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ARMtoHostChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 LoopBWOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 DSPOverrunFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte6_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TuningSensitivityFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 SaturatedTuningFreqFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 LocalOscPowerFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterPowerFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte6_bit0 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 XCVRDeviceSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 FreqSynthesizerSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 AnalogConverterDevicSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 SidelobeBlockage 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit1 1 "Fault Present" 0 "No Fault"; -VAL_ 33 MNRBlocked 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ECUTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 AlignmentRoutineFailedFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 UnreasonableRadarData 1 "Fault Present" 0 "No Fault"; -VAL_ 33 MicroprocessorTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 VerticalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 HorizontalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 FactoryAlignmentMode 1 "Fault Present" 0 "No Fault"; -VAL_ 33 BatteryLowFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 BatteryHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_1p25SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte3_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ThermistorOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_3p3DACSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_3p3RAWSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_5_SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterIDFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit3 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit2 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PCANMissingMsgFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PCANBusOff 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 InstructionSetCheckFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 StackOverflowFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 WatchdogFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PLLLockFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit1 1 "Fault Present" 0 "No Fault"; -VAL_ 33 RAMMemoryTestFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 USCValidationFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit3 1 "Fault Present" 0 "No Fault"; -VAL_ 33 KeepAliveChecksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ProgramCalibrationFlashChecksum 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ApplicationFlashChecksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 371 CAN_AUTO_ALIGN_HANGLE_QF 3 "Accurate" 2 "Inaccurate" 1 "Temporarily undefined" 0 "Undefined"; -VAL_ 371 CAN_ALIGNMENT_STATUS 15 "Undefined_2" 14 "Undefined_1" 13 "Low Amplitude (Flat-plate only)" 12 "No Peak (Flat-plate only)" 11 "Fail Ver and Hor OutOfRange" 10 "Fail Vertical Align OutOfRange" 9 "Fail Horizontal Align OutOfRange" 8 "Fail Time Out" 7 "Fail Only Right Target Found" 6 "Fail Only Left Target Found" 5 "Fail Variance Too Large" 4 "Fail Deviation Too Large" 3 "Fail No Target" 2 "Success" 1 "Busy" 0 "Off"; -VAL_ 371 CAN_ALIGNMENT_STATE 6 "Static alignment flat-plate" 5 "Static alignment 2-target" 4 "Static alignment 1-target" 3 "Service alignment" 2 "Short track alignment" 1 "Auto alignment" 0 "Off"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 351 CAN_DET_CONFID_AZIMUTH_64 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 350 CAN_DET_CONFID_AZIMUTH_63 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 349 CAN_DET_CONFID_AZIMUTH_62 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 348 CAN_DET_CONFID_AZIMUTH_61 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 347 CAN_DET_CONFID_AZIMUTH_60 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 346 CAN_DET_CONFID_AZIMUTH_59 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 345 CAN_DET_CONFID_AZIMUTH_58 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 344 CAN_DET_CONFID_AZIMUTH_57 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 343 CAN_DET_CONFID_AZIMUTH_56 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 342 CAN_DET_CONFID_AZIMUTH_55 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 335 CAN_DET_CONFID_AZIMUTH_48 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 334 CAN_DET_CONFID_AZIMUTH_47 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 333 CAN_DET_CONFID_AZIMUTH_46 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 332 CAN_DET_CONFID_AZIMUTH_45 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 331 CAN_DET_CONFID_AZIMUTH_44 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 330 CAN_DET_CONFID_AZIMUTH_43 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 329 CAN_DET_CONFID_AZIMUTH_42 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 328 CAN_DET_CONFID_AZIMUTH_41 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 327 CAN_DET_CONFID_AZIMUTH_40 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 325 CAN_DET_CONFID_AZIMUTH_38 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 324 CAN_DET_CONFID_AZIMUTH_37 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 323 CAN_DET_CONFID_AZIMUTH_36 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 322 CAN_DET_CONFID_AZIMUTH_35 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 321 CAN_DET_CONFID_AZIMUTH_34 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 320 CAN_DET_CONFID_AZIMUTH_33 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 319 CAN_DET_CONFID_AZIMUTH_32 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 318 CAN_DET_CONFID_AZIMUTH_31 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 317 CAN_DET_CONFID_AZIMUTH_30 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 316 CAN_DET_CONFID_AZIMUTH_29 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 314 CAN_DET_CONFID_AZIMUTH_27 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 313 CAN_DET_CONFID_AZIMUTH_26 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 312 CAN_DET_CONFID_AZIMUTH_25 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 311 CAN_DET_CONFID_AZIMUTH_24 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 310 CAN_DET_CONFID_AZIMUTH_23 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 309 CAN_DET_CONFID_AZIMUTH_22_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 309 CAN_DET_CONFID_AZIMUTH_22_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 309 CAN_DET_CONFID_AZIMUTH_22_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 341 CAN_DET_CONFID_AZIMUTH_54 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 340 CAN_DET_CONFID_AZIMUTH_53 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 339 CAN_DET_CONFID_AZIMUTH_52 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 338 CAN_DET_CONFID_AZIMUTH_51 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 337 CAN_DET_CONFID_AZIMUTH_50 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 336 CAN_DET_CONFID_AZIMUTH_49 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 326 CAN_DET_CONFID_AZIMUTH_39 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 315 CAN_DET_CONFID_AZIMUTH_28 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 257 CAN_INTERFERENCE_TYPE 2 "Star PD-Like" 1 "Slow FMCW" 0 "No Interference"; -VAL_ 257 CAN_RECOMMEND_UNCONVERGE 1 "Recommended" 0 "Not Recommended"; -VAL_ 257 CAN_RADAR_ALIGN_INCOMPLETE 1 "Alignment Incomplete" 0 "Alignment Completed"; -VAL_ 257 CAN_BLOCKAGE_SIDELOBE 1 "Radar Blockage" 0 "No Radar Blockage"; -VAL_ 257 CAN_BLOCKAGE_MNR 1 "Radar Blockage" 0 "No Radar Blockage"; -VAL_ 257 CAN_RADAR_EXT_COND_NOK 1 "Too high temp or insufficient pw" 0 "External conditions OK"; -VAL_ 257 CAN_RADAR_ALIGN_OUT_RANGE 1 "Radar out of range" 0 "Radar within range"; -VAL_ 257 CAN_RADAR_ALIGN_NOT_START 1 "Radar align not started" 0 "Radar align started"; -VAL_ 257 CAN_RADAR_OVERHEAT_ERROR 1 "Radar overheat condition" 0 "No Overheat"; -VAL_ 257 CAN_RADAR_NOT_OP 1 "Radar not operational" 0 "Radar operational"; -VAL_ 257 CAN_XCVR_OPERATIONAL 1 "On" 0 "Off "; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; diff --git a/opendbc_repo/opendbc/dbc/README.md b/opendbc_repo/opendbc/dbc/README.md deleted file mode 100644 index 20e31a9034..0000000000 --- a/opendbc_repo/opendbc/dbc/README.md +++ /dev/null @@ -1,49 +0,0 @@ -## DBC file basics - -A DBC file encodes, in a humanly readable way, the information needed to understand a vehicle's CAN bus traffic. A vehicle might have multiple CAN buses and every CAN bus is represented by its own dbc file. -Wondering what's the DBC file format? [Here](http://www.socialledge.com/sjsu/index.php?title=DBC_Format) and [Here](https://github.com/stefanhoelzl/CANpy/blob/master/docs/DBC_Specification.md) a couple of good overviews. - -## How to start reverse engineering cars - -[opendbc](https://github.com/commaai/opendbc) is integrated with [cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana). - -Use [panda](https://github.com/commaai/panda) to connect your car to a computer. - -## How to use reverse engineered DBC -To create custom CAN simulations or send reverse engineered signals back to the car you can use [CANdevStudio](https://github.com/GENIVI/CANdevStudio) project. - -## DBC file preprocessor - -DBC files for different models of the same brand have a lot of overlap. Therefore, we wrote a preprocessor to create DBC files from a brand DBC file and a model specific DBC file. The source DBC files can be found in the generator folder. After changing one of the files run the generator.py script to regenerate the output files. These output files will be placed in the root of the opendbc repository and are suffixed by _generated. - -## Good practices for contributing to opendbc - -- Comments: the best way to store comments is to add them directly to the DBC files. For example: - ``` - CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping"; - ``` - is a comment that refers to signal `LONG_ACCEL` in message `490`. Using comments is highly recommended, especially for doubts and uncertainties. [cabana](https://community.comma.ai/cabana/) can easily display/add/edit comments to signals and messages. - -- Units: when applicable, it's recommended to convert signals into physical units, by using a proper signal factor. Using a SI unit is preferred, unless a non-SI unit rounds the signal factor much better. -For example: - ``` - SG_ VEHICLE_SPEED : 7|15@0+ (0.00278,0) [0|70] "m/s" PCM - ``` - is better than: - ``` - SG_ VEHICLE_SPEED : 7|15@0+ (0.00620,0) [0|115] "mph" PCM - ``` - However, the cleanest option is really: - ``` - SG_ VEHICLE_SPEED : 7|15@0+ (0.01,0) [0|250] "kph" PCM - ``` - -- Signal size: always use the smallest amount of bits possible. For example, let's say I'm reverse engineering the gas pedal position and I've determined that it's in a 3 bytes message. For 0% pedal position I read a message value of `0x00 0x00 0x00`, while for 100% of pedal position I read `0x64 0x00 0x00`: clearly, the gas pedal position is within the first byte of the message and I might be tempted to define the signal `GAS_POS` as: - ``` - SG_ GAS_POS : 7|8@0+ (1,0) [0|100] "%" PCM - ``` - However, I can't be sure that the very first bit of the message is referred to the pedal position: I haven't seen it changing! Therefore, a safer way of defining the signal is: - ``` - SG_ GAS_POS : 6|7@0+ (1,0) [0|100] "%" PCM - ``` - which leaves the first bit unallocated. This prevents from very erroneous reading of the gas pedal position, in case the first bit is indeed used for something else. diff --git a/opendbc_repo/opendbc/dbc/SConscript b/opendbc_repo/opendbc/dbc/SConscript deleted file mode 100644 index 9a92912074..0000000000 --- a/opendbc_repo/opendbc/dbc/SConscript +++ /dev/null @@ -1,30 +0,0 @@ -Import("env") - -from pathlib import Path - -generator = File("generator/generator.py") - -source_files = [ - File(str(f)) - for f in Path("generator").rglob("*") - if f.is_file() and f.suffix in {".py", ".dbc"} -] - -output_files = [ - f.name.replace(".dbc", "_generated.dbc") - for f in Path("generator").rglob("*.dbc") - if not f.name.startswith("_") -] - -# include DBCs generated by python scripts -output_files += [ - f.name.replace(".py", "_generated.dbc") - for f in Path("generator").rglob("*.py") - if not f.name.startswith(("_", "test_")) and f.name != "generator.py" -] - -generated = env.Command( - target=list(set(output_files)), - source=[generator] + source_files, - action="python3 ${SOURCES[0]}", -) diff --git a/opendbc_repo/opendbc/dbc/__init__.py b/opendbc_repo/opendbc/dbc/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc b/opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc deleted file mode 100644 index e73fcc4221..0000000000 --- a/opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc +++ /dev/null @@ -1,185 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: ADAS RADAR NEO XXX - - -BO_ 768 VEHICLE_STATE: 8 ADAS - SG_ SET_ME_XF9 : 7|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ VEHICLE_SPEED : 15|8@0+ (1,0) [0|255] "kph" Vector__XXX - -BO_ 769 VEHICLE_STATE2: 8 ADAS - SG_ SET_ME_0F18510 : 7|28@0+ (1,0) [0|268435455] "" Vector__XXX - SG_ SET_ME_25A0000 : 27|28@0+ (1,0) [0|268435455] "" Vector__XXX - -BO_ 1024 RADAR_DIAGNOSTIC: 8 RADAR - SG_ RADAR_STATE : 7|8@0+ (1,0) [0|255] "" NEO - -BO_ 1040 XXX_101: 8 RADAR - -BO_ 1041 XXX_102: 8 RADAR - -BO_ 1042 XXX_103: 8 RADAR - -BO_ 1043 XXX_104: 8 RADAR - -BO_ 1044 XXX_105: 8 RADAR - -BO_ 1045 XXX_106: 8 RADAR - -BO_ 1046 XXX_107: 8 RADAR - -BO_ 1047 XXX_108: 8 RADAR - -BO_ 1056 XXX_109: 8 RADAR - -BO_ 1057 XXX_110: 8 RADAR - -BO_ 1058 XXX_111: 8 RADAR - -BO_ 1059 XXX_112: 8 RADAR - -BO_ 1060 XXX_113: 8 RADAR - -BO_ 1072 TRACK_0: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1073 TRACK_1: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1074 TRACK_2: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1075 TRACK_3: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1076 TRACK_4: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1077 TRACK_5: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1078 TRACK_6: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1079 TRACK_7: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1080 TRACK_8: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1081 TRACK_9: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1088 TRACK_10: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1089 TRACK_11: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1090 TRACK_12: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1091 TRACK_13: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1092 TRACK_14: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1093 TRACK_15: 8 RADAR - SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO - SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO - SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO - SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO - -BO_ 1279 XXX_114: 8 RADAR - -BO_ 1280 XXX_115: 8 RADAR - -BO_ 1296 XXX_116: 8 RADAR - -BO_ 1297 XXX_117: 8 RADAR - -BO_TX_BU_ 768 : NEO,ADAS; -BO_TX_BU_ 769 : NEO,ADAS; - - -CM_ SG_ 1024 RADAR_STATE "need to find out more diagnostic values"; -VAL_ 1024 RADAR_STATE 121 "ok" 110 "faulted" 105 "wrong_config"; diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc deleted file mode 100644 index b891250554..0000000000 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ /dev/null @@ -1,916 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: EON XXX RDC SZL VGSG JBBF RFK FLA RAD1 CAS CID AHM HKL HUD EKP DWA DSC SM_BF GWS VDM DDE1 ACI CCC DSC SM_FA CTM LDM RSE MRSZ VDA EDCK ZBE EGS ACC_Sensor Kombi IHKA ARS ACSM FZD PGS NVC AFS DME FRMFA EMF FKA VSW EPS PDC DKG EHC Diagnosetool_PT_CAN Diagnosetool_K_CAN_System Vector__XXX - - -BO_ 170 AccPedal: 8 DME - SG_ KickDownPressed : 53|1@0+ (1,0) [0|3] "" XXX - SG_ CruisePedalActive : 54|1@0+ (1,0) [0|1] "" XXX - SG_ CruisePedalInactive : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ThrottlelPressed : 50|1@0+ (1,0) [0|1] "" XXX - SG_ AcceleratorPedalPressed : 52|1@0+ (1,0) [0|7] "" XXX - SG_ AcceleratorPedalPercentage : 16|16@1+ (0.04,0) [0|100] "" XXX - SG_ Counter_170 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EngineSpeed : 32|16@1+ (0.25,0) [0|8000] "rpm" XXX - SG_ Checksum_170 : 0|8@1- (1,0) [0|65535] "" XXX - -BO_ 256 OpenpilotEngage: 8 XXX - SG_ OpenpilotEnabled : 0|8@1+ (1,0) [0|255] "" EON - -BO_ 404 CruiseControl: 4 SZL - SG_ plus1mph_request : 16|1@0+ (1,0) [0|1] "" XXX - SG_ minus1mph_request : 18|1@0+ (1,0) [0|1] "" XXX - SG_ Cancel_request_up_stalk : 23|1@0+ (1,0) [0|1] "" XXX - SG_ Cancel_request_up_or_down_stalk : 20|1@0+ (1,0) [0|1] "" XXX - SG_ Resume_request : 22|1@0+ (1,0) [0|1] "" XXX - SG_ setMe_0xFC : 31|8@0+ (1,0) [0|255] "" XXX - SG_ plus5mph_request : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ minus5mph_request : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ requests_0xF : 15|4@0+ (1,0) [0|15] "" XXX - SG_ Counter_404 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ Checksum_404 : 7|8@0+ (1,0) [0|15] "" XXX - -BO_ 512 CruiseControlStatus: 8 DME - SG_ CruiseControlInactiveFlag : 12|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseCoontrolActiveFlag : 13|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseControlSetpointSpeed : 7|8@0+ (0.25,0) [0|255] "mph" XXX - -BO_ 168 EngineAndBrake: 8 DME - SG_ Checksum_EngineAndBrake : 0|8@1+ (1,0) [0|0] "" XXX - SG_ BrakePressed : 61|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_active2 : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ST_RCPT_ENG_DSC : 52|2@1+ (1,0) [0|0] "" XXX - SG_ ST_RCPT_ENG_ARS : 50|2@1+ (1,0) [0|0] "" XXX - SG_ ST_RCPT_ENG_ACC : 48|2@1+ (1,0) [0|0] "" XXX - SG_ ST_RCPT_ENG_EGS : 54|2@1+ (1,0) [0|0] "" XXX - SG_ ST_DMEA_SWO : 44|2@1+ (1,0) [0|0] "" XXX - SG_ EngineTorque : 12|12@1- (0.03125,0) [-1024|1023] "" XXX - SG_ ALIV_TORQ_1_DME : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EngineTorqueWoInterv : 24|16@1- (0.03125,0) [-1024|1023.96875] "" XXX - -BO_ 470 SteeringButtons: 2 SZL - SG_ Volume_DOWN : 2|1@0+ (1,0) [0|1] "" XXX - SG_ Volume_UP : 3|1@0+ (1,0) [0|1] "" XXX - SG_ VoiceControl : 8|1@0+ (1,0) [0|1] "" XXX - SG_ Telephone : 0|1@0+ (1,0) [0|1] "" XXX - SG_ Next_up : 5|1@0+ (1,0) [0|1] "" XXX - SG_ Previous_down : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 403 DynamicCruiseControlStatus: 8 DSC - SG_ Counter_403 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ CruiseActive : 43|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseSpeedChangeRequest : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseControlSetpointSpeed : 15|8@0+ (1,-2) [0|255] "kph/mph" XXX - -BO_ 201 SteeringWheelAngle_DSC: 8 SZL - SG_ Counter_201 : 20|4@1+ (1,0) [0|15] "" DSC - SG_ SteeringPositionComplementLow : 24|11@1- (1,0) [0|1] "" DSC - SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "deg" DSC - -BO_ 206 WheelSpeeds: 8 DSC - SG_ Wheel_FL : 0|16@1- (0.0625,0) [0|255] "kph" XXX - SG_ Wheel_FR : 16|16@1- (0.0625,0) [0|255] "kph" XXX - SG_ Wheel_RL : 32|16@1- (0.0625,0) [0|255] "kph" XXX - SG_ Wheel_RR : 48|16@1- (0.0625,0) [0|255] "kph" XXX - -BO_ 884 WheelToleranceAdjustment: 8 DSC - -BO_ 678 WiperSwitch: 8 SZL - SG_ AutoWipersOn : 0|1@1+ (1,0) [0|3] "" XXX - -BO_ 304 TerminalStatus: 8 CAS - SG_ AccOn : 23|1@1+ (1,0) [0|255] "" XXX - SG_ IgnitionOff : 22|1@1+ (1,0) [0|3] "" XXX - SG_ Counter_304 : 32|4@1+ (1,0) [0|15] "" XXX - SG_ Checksum_304 : 36|4@1+ (1,0) [0|255] "" XXX - -BO_ 169 Torque2: 8 DME - SG_ TORQ_AVL_SPAR_POS : 52|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ TORQ_AVL_SPAR_NEG : 40|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ TORQ_AVL_MAX : 28|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ TORQ_AVL_MIN : 16|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ ST_INFS : 14|2@1+ (1,0) [0|0] "" XXX - SG_ ST_SW_LEV_RPM : 12|2@1+ (1,0) [0|0] "" XXX - SG_ ALIV_TORQ_2_DME : 8|4@1+ (1,0) [0|0] "" XXX - SG_ CHKSM_TORQ_2_DME : 0|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 184 TorqueTransmisionRequest: 8 LDM - SG_ Checksum_184 : 0|8@1+ (1,0) [0|15] "" XXX - SG_ Counter_184 : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 196 SteeringWheelAngle: 7 DSC - SG_ SteeringSpeed : 24|16@1- (0.0428316886,0) [0|255] "degree/s" XXX - SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "degree" XXX - -BO_ 180 WheelTorqueDriveTrain1: 8 DME - -BO_ 182 DynamicCruiseControlTorqueDemand: 8 DSC - SG_ TORQ_TAR_DSC : 12|12@1- (0.5,0) [0|1000] "" XXX - SG_ Counter_182 : 8|4@1+ (1,0) [0|14] "" XXX - SG_ Checksum_182 : 0|8@1+ (1,0) [0|15] "" XXX - -BO_ 186 TransmissionData: 8 EGS - SG_ Counter_186 : 48|4@1+ (1,0) [0|14] "" XXX - SG_ Shifting : 4|1@1+ (1,0) [0|15] "" XXX - SG_ OutputShaftSpeed : 24|16@1- (0.125,0) [0|255] "rpm" XXX - SG_ GearRatio : 8|8@1+ (0.05,0) [0|255] "" XXX - SG_ GearTar : 0|4@1+ (1,-4) [0|255] "" XXX - SG_ Checksum_186 : 40|8@1+ (1,0) [0|15] "" XXX - -BO_ 191 RequestedWheelTorqueDriveTrain: 8 LDM - SG_ Checksum_191 : 0|8@1+ (1,0) [0|19] "" XXX - SG_ Counter_191 : 8|4@1- (1,0) [0|255] "" XXX - SG_ TorqueReq : 16|12@1- (0.5,350) [-1024|1023.96875] "" XXX - -BO_ 414 StatusDSC_KCAN: 8 DSC - SG_ BrakePressure : 48|8@1- (1,0) [0|255] "" XXX - SG_ BrakeStates : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Checksum_414 : 56|8@1+ (1,0) [0|15] "" XXX - SG_ Counter_414 : 20|4@1+ (1,0) [0|15] "" XXX - SG_ DTC_on : 12|1@1+ (1,0) [0|3] "" XXX - SG_ DSC_full_off : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 416 Speed: 8 DSC - SG_ AccX : 28|12@1- (1,0) [0|15] "" XXX - SG_ YawRate : 40|12@1- (1,0) [0|255] "" XXX - SG_ VehicleSpeed : 0|12@1- (0.103,0) [0|255] "kph" XXX - SG_ MovingReverse : 13|1@1+ (1,0) [0|3] "" XXX - SG_ AccY : 16|12@1- (1,0) [0|255] "" XXX - SG_ Counter_416 : 52|4@1+ (1,0) [0|14] "" XXX - SG_ Checksum_416 : 56|8@1+ (1,0) [0|15] "" XXX - SG_ MovingForward : 12|1@1+ (1,0) [0|15] "" XXX - -BO_ 418 TransimissionData2: 8 EGS - SG_ ManualMode : 50|1@0+ (1,0) [0|255] "" XXX - SG_ Counter_418 : 28|4@1+ (1,0) [0|14] "" XXX - SG_ Checksum_418 : 56|8@1+ (1,0) [0|15] "" XXX - -BO_ 690 WheelPressure_KCAN: 8 DSC - -BO_ 691 AccelerationData: 8 DSC - -BO_ 402 GearSelectorSwitch_1: 4 XXX - SG_ Counter_402 : 24|4@1+ (1,0) [0|14] "" XXX - -BO_ 408 GearSelectorSwitch: 8 GWS - SG_ ParkButtonSecond : 26|2@1+ (1,0) [0|3] "" XXX - SG_ SideButton : 28|2@1+ (1,0) [0|3] "" XXX - SG_ SportButtonPressed : 34|2@1+ (1,0) [0|255] "" XXX - SG_ M3_button : 36|2@1+ (1,0) [0|3] "" XXX - SG_ SideButtonXOR11 : 30|2@1+ (1,0) [0|3] "" XXX - SG_ param1XOR11 : 22|2@1+ (1,0) [0|3] "" XXX - SG_ m3ShifterPositionXOR1111 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ always11 : 38|2@1+ (1,0) [0|3] "" XXX - SG_ m3ShifterPosition : 4|4@1+ (1,0) [0|15] "" XXX - SG_ param1 : 20|2@1+ (1,0) [0|3] "" XXX - SG_ param5 : 32|2@1+ (1,0) [0|3] "" XXX - SG_ Counter_408 : 0|4@1+ (1,0) [0|14] "" XXX - SG_ ParkButtonFirst : 24|2@1+ (1,0) [0|3] "" XXX - SG_ ShifterPositionXOR1111 : 16|4@1+ (1,0) [0|15] "" XXX - SG_ ShifterPosition : 12|4@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 422 DistanceRoute: 8 DSC - -BO_ 436 InstrumentClusterStatus_KOMBI: 8 CCC - SG_ HandbrakeActive : 41|1@1+ (1,0) [0|3] "" XXX - -BO_ 464 EngineData: 8 DME - SG_ RPM_IDLG_TAR : 56|8@1+ (5,0) [0|1270] "1/min" XXX - SG_ CTR_SLCK : 48|2@1+ (1,0) [0|0] "" XXX - SG_ IJV_FU : 32|16@1+ (1,-48) [0|0] "C" XXX - SG_ AIP_ENG : 24|8@1+ (2,598) [600|1106] "hPa" XXX - SG_ ST_SW_WAUP : 22|2@1+ (1,0) [0|0] "" XXX - SG_ ST_ENG_RUN : 20|2@1+ (1,0) [0|0] "" XXX - SG_ Counter_464 : 16|4@1+ (1,0) [0|14] "" XXX - SG_ TEMP_EOI : 8|8@1+ (1,-48) [0|0] "C" XXX - SG_ TEMP_ENG : 0|8@1+ (1,-48) [0|0] "C" XXX - -BO_ 945 TransmissionData3: 8 DKG - SG_ Checksum_946 : 0|8@1+ (1,0) [0|19] "" XXX - SG_ Counter_945 : 8|4@1+ (1,0) [0|14] "" XXX - -BO_ 200 SteeringWheelAngle_slow: 6 SZL - SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "degree" XXX - SG_ SteeringSpeed : 24|16@1- (0.0428316886,0) [-65535|65535] "degree/s" XXX - SG_ Counter_200 : 20|4@1+ (1,0) [0|15] "" XXX - -BO_ 466 TransmissionDataDisplay: 8 EGS - SG_ ShiftLeverMode : 32|2@1+ (1,0) [0|3] "" XXX - SG_ GearAct : 12|4@1+ (1,-4) [0|15] "" XXX - SG_ Counter_466 : 28|4@1+ (1,0) [0|14] "" XXX - SG_ ShiftLeverPosition : 0|4@1+ (1,0) [0|8] "" XXX - SG_ xFF : 40|8@1+ (1,0) [0|255] "" XXX - SG_ ShiftLeverPositionXOR : 4|4@1+ (1,0) [0|0] "" Vector__XXX - SG_ SportButtonState : 26|1@1+ (1,0) [0|1] "" XXX - -BO_ 437 HeatFlow_LoadTorqueClimate: 8 IHKA - -BO_ 1152 NetworkManagment1: 8 XXX - -BO_ 1170 NetworkManagment2: 8 XXX - -BO_ 1175 NetworkManagment3: 8 XXX - -BO_ 1176 NetworkManagment4: 8 XXX - -BO_ 1193 NetworkManagment5: 8 XXX - -BO_ 1246 GWS_ShiftLeverHeartbeat: 8 XXX - SG_ IgnOff : 12|1@0+ (1,0) [0|3] "" XXX - -BO_ 438 HeatFlowEngine: 8 DME - -BO_ 784 AmbientTemperature_RelativeTime: 8 Kombi - -BO_ 821 ElectricFuelPumpStatus: 8 EKP - -BO_ 1007 EngineOBD_data: 8 DME - -BO_ 1432 ServicesDKG: 8 XXX - -BO_ 309 CrashDisconnectControl: 8 ACSM - -BO_ 502 TurnSignals: 2 FRMFA - SG_ TurnSignalIdle : 9|1@0+ (1,0) [0|1] "" XXX - SG_ TurnSignalActive : 8|1@0+ (1,0) [0|1] "" XXX - SG_ RightTurn : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LeftTurn : 4|1@1+ (1,0) [0|1] "" XXX - SG_ HoldActivated : 0|1@1+ (1,0) [0|1] "" XXX - -BO_ 514 Dimming: 8 FRMFA - -BO_ 538 LampStatus: 8 FRMFA - -BO_ 550 RainSensorWiperSpeed: 8 FZD - -BO_ 578 ClimateFrontStatus: 8 IHKA - -BO_ 704 LCD_lighting: 8 Kombi - -BO_ 758 LightControl: 8 FRMFA - -BO_ 760 Time_Date: 8 Kombi - -BO_ 762 OccupancySeatBeltContact: 8 ACSM - SG_ NEW_SIGNAL_1 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 0|8@1+ (1,0) [0|15] "" XXX - -BO_ 764 TrunkStatus: 8 CAS - -BO_ 797 TirePressureStatus: 8 DSC - -BO_ 816 Range_Mileage: 8 Kombi - -BO_ 823 StatusFuelControl: 8 DME - -BO_ 897 EngineOilLevel: 8 DME - -BO_ 940 RunOnTimeTerminal30: 8 JBBF - -BO_ 947 PowerManagmentConsumptionControl: 8 DME - -BO_ 948 PowerBatteryVoltage: 8 DME - SG_ BatteryVoltage : 7|24@0+ (0.001,0) [0|65535] "" XXX - -BO_ 958 PowerRunningTime: 8 CAS - -BO_ 1408 ServicesKGM: 8 XXX - -BO_ 1426 ServicesDME: 8 XXX - -BO_ 1449 ServicesDSC: 8 XXX - -BO_ 1504 ServicesKOMBI: 8 XXX - -BO_ 1522 ServicesKBM: 8 XXX - -BO_ 209 Accelerometer1: 8 XXX - SG_ Counter_209 : 52|4@1+ (1,0) [0|255] "" XXX - SG_ Unknown : 16|16@1- (1,0) [0|65535] "" XXX - SG_ YawRate : 0|16@1- (1,0) [0|7] "" XXX - SG_ PitchRate : 32|16@1- (1,0) [0|65535] "" XXX - SG_ CRC8_209 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 172 WheelTorqueDrivetrain2: 8 DME - -BO_ 128 SYNC: 5 XXX - SG_ State2 : 24|4@1+ (1,0) [0|15] "" XXX - SG_ State1 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Counter_128 : 28|4@1+ (1,0) [0|15] "" XXX - -BO_ 320 Unknown140: 2 XXX - SG_ State : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 212 Unknown_d4: 8 XXX - SG_ State1 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Counter_212 : 52|4@1+ (1,0) [0|255] "" XXX - SG_ Checksum_212 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 205 Accelerometer2: 8 XXX - SG_ Counter_205 : 52|4@1+ (1,0) [0|255] "" XXX - SG_ LateralAcceleration : 32|16@1- (1,0) [0|255] "" XXX - SG_ YawRate : 0|16@1- (1,0) [0|255] "" XXX - SG_ CRC8_205 : 16|16@1- (1,0) [0|65535] "" XXX - -BO_ 790 OperationPushButtonDTC: 2 JBBF - SG_ setMe_0x3FFF : 2|14@1+ (1,0) [0|63] "" DSC - SG_ DTC_pressed : 0|1@1+ (1,0) [0|3] "" DSC - -BO_ 1577 Unknown_629: 8 XXX - -BO_ 133 Synchronization_SC_VDA: 8 DSC - -BO_ 173 Delay_request_ACC: 8 LDM - -BO_ 177 Torque_request_steering: 8 DSC - -BO_ 181 Torque_request_EGS: 8 EGS - SG_ Checksum_Torque_request_EGS : 0|8@1+ (1,0) [0|0] "" XXX - SG_ Gearbox_temperature : 56|8@1+ (1,0) [0|0] "C" XXX - -BO_ 183 Torque_request_ACC: 8 LDM - -BO_ 187 Target_torque_request: 8 DSC - -BO_ 188 Status_target_torque_conversion: 8 VGSG - -BO_ 190 Alive_Counter: 8 ARS - -BO_ 192 Alive_Central_Gateway: 8 JBBF - -BO_ 193 Alive_counter_telephone: 8 CCC - -BO_ 213 Request_wheel_torque_brake: 8 DSC - -BO_ 215 Alive_Counter_Security: 8 ACSM - -BO_ 216 CLU1_VDA: 8 VDA - -BO_ 225 Wheel_torque_brake: 8 DSC - -BO_ 226 Status_central_locking_BFT: 8 JBBF - -BO_ 227 CLU2_VDA: 8 VDA - -BO_ 230 Status_central_locking_BFTH: 8 JBBF - -BO_ 234 Status_central_locking_FAT: 8 JBBF - -BO_ 238 Central_locking_status_FATH: 8 JBBF - -BO_ 242 Status_central_locking_HK: 8 JBBF - -BO_ 244 CLU3_VDA: 8 VDA - -BO_ 247 lateral_dynamics_ARS_VDM: 8 ARS - -BO_ 249 Vertical_dynamics_VDM_ARS: 8 VDM - -BO_ 250 Control_window_lifter_FAT: 8 FRMFA - -BO_ 251 Control_window_lifter_BFT: 8 JBBF - -BO_ 252 Control_window_lifter_FATH: 8 JBBF - -BO_ 253 Control_window_lifter_BFTH: 8 JBBF - -BO_ 254 Voltage_level_sensors: 8 VDM - -BO_ 280 Exchange_AFS_DSC: 8 AFS - -BO_ 286 Control_interventions_DSC_AFS: 8 DSC - -BO_ 288 Status_partial_setpoints_AFS_DSC_2: 8 AFS - -BO_ 298 Sensor_data_ROSE: 8 ASCM - -BO_ 300 input_data_ROSE: 8 DSC - -BO_ 336 Request_1_ACC: 8 LDM - -BO_ 339 Request_2_ACC: 8 LDM - -BO_ 345 Object_data_ACC: 8 ACC_Sensor - -BO_ 348 Status_ACC: 8 ACC_Sensor - -BO_ 351 Requirement_angle_FFP: 8 LDM - -BO_ 357 CLU_Status_VDA: 8 VDA - -BO_ 370 Acknowledgment_request_Kombination: 8 CCC - -BO_ 373 Display_motor_data: 8 DME - -BO_ 400 display_ACC: 8 LDM - -BO_ 405 Operation_push_button_MSA: 8 IHKA - -BO_ 419 Raw_data_longitudinal_acceleration: 8 DSC - -BO_ 423 actuation_request_EMF: 8 DSC - -BO_ 426 Effect_ErgoCommander: 8 CCC - -BO_ 428 Status_ARS_module: 8 ARS - -BO_ 440 Operation_ErgoCommander: 8 ZBE - -BO_ 450 Distance_message_PDC: 8 PDC - -BO_ 451 Distance_message_2_PDC: 8 PDC - -BO_ 454 Acoustic_message_PDC: 8 PDC - -BO_ 472 Operation_air_conditioning_air_distribution_FA: 8 CCC - -BO_ 473 Operation_pushbutton_MDrive: 8 SZL - -BO_ 474 Climate_control_remote_control: 8 CAS - -BO_ 476 Operation_stratification_seat_heating: 8 CCC - -BO_ 478 Air_conditioning_controls_rear: 8 CCC - -BO_ 480 Operation_air_conditioning_air_distribution_BF: 8 CCC - -BO_ 482 Operation_air_conditioning_front: 8 CCC - -BO_ 483 Operation_pushbutton_interior_lighting: 8 FZD - -BO_ 487 Operation_seat_heating_seat_climate_FA: 8 IHKA - -BO_ 488 Operation_seat_heating_seat_climate_BF: 8 IHKA - -BO_ 490 Steering_column_adjustment_control: 8 IHKA - -BO_ 491 Operation_active_seat_FA: 8 IHKA - -BO_ 492 Operation_active_seat_BF: 8 IHKA - -BO_ 494 Steering_column_switch_operation: 8 FRMFA - -BO_ 499 Operation_seat_memory_FA: 8 XXX - -BO_ 504 Operation_SHD_MDS: 8 FZD - -BO_ 507 Status_EPS: 8 EPS - -BO_ 508 Status_AFS: 8 AFS - -BO_ 509 Status_request_EMF_KCAN: 8 EMF - -BO_ 510 Crash: 8 ACSM - -BO_ 513 Status_EMF_KCAN: 8 EMF - -BO_ 517 Acoustic_request_Kombi: 8 Kombi - -BO_ 518 Control_Display_Shiftlights: 8 DME - -BO_ 523 Memory_adjustment: 8 SM_FA - -BO_ 524 Steering_column_control: 8 SM_FA - -BO_ 525 Position_steering_column: 8 IHKA - -BO_ 528 Operation_HUD: 8 CCC - -BO_ 529 Status_HUD: 8 HUD - -BO_ 530 Height_levels_air_spring: 8 EHC - -BO_ 540 Operation_NightVision: 8 CCC - -BO_ 542 Status_NightVision: 8 NVC - -BO_ 548 Operation_push_button_NSW: 8 FRMFA - -BO_ 552 Operation_special_function: 8 CCC - -BO_ 554 Status_BFS: 8 JBBF - -BO_ 556 Operation_push_button_NSL: 8 FRMFA - -BO_ 558 Status_BFSH: 8 XXX - -BO_ 562 Status_FAS: 8 JBBF - -BO_ 566 Status_FASH: 8 XXX - -BO_ 570 Status_radio_key: 8 CAS - -BO_ 571 Status_climate_front_extended: 8 IHKA - -BO_ 573 Request_display_climate: 8 IHKA - -BO_ 574 Status_Klima_Fond: 8 FKA - -BO_ 582 Status_air_conditioning_front_control_unit: 8 IHKA - -BO_ 584 Status_rear_view_camera: 8 RFK - -BO_ 585 Control_rear_view_camera: 8 CCC - -BO_ 586 Status_PDC: 8 PDC - -BO_ 587 Status_door_sensors: 8 FRMFA - -BO_ 594 Wiper_status: 8 JBBF - -BO_ 598 Challenge_Passive_Access: 8 CAS - -BO_ 600 Status_Transmission_Passive_Access: 8 PGS - -BO_ 604 Operation_of_climate_additional_programs: 8 CCC - -BO_ 621 Operation_blinds_MK: 8 IHKA - -BO_ 622 Control_FH_SHD_central_comfort: 8 CAS - -BO_ 635 Status_Shiftlights: 8 Kombi - -BO_ 637 Status_convertible_top_manual_convertible: 8 CAS - -BO_ 638 Status_convertible_top_convertible: 8 CTM - -BO_ 639 Status_central_locking_convertible_top: 8 JBBF - -BO_ 642 Control_security_vehicle_2: 8 XXX - -BO_ 644 Control_remote_start_safety_vehicle: 8 CAS - -BO_ 646 Electrochromic_control: 8 FZD - -BO_ 652 Pushbutton_vertical_dynamics: 8 GWS - -BO_ 653 Operation_pushbutton_sport: 8 GWS - -BO_ 656 Control_response_hydrogen_vehicle: 8 XXX - -BO_ 658 Control_high_beam_assistant: 8 FLA - -BO_ 670 Central_locking_control_for_security_vehicle: 8 XXX - -BO_ 671 Remote_control_FondCommander: 8 CAS - -BO_ 672 Central_locking_control: 8 CAS - -BO_ 674 Operation_of_climate_stand_functions: 8 CCC - -BO_ 676 Operation_personalization: 8 Kombi - -BO_ 692 DWA_Alarm: 8 DWA - -BO_ 694 Control_horn_DWA: 8 DWA - -BO_ 696 Operation_onboard_computer: 8 CCC - -BO_ 697 Operation_RSE: 8 CCC - -BO_ 698 Stopwatch: 8 Kombi - -BO_ 701 Request_switching_display: 8 CCC - -BO_ 702 Switch_status_display: 8 VSW - -BO_ 703 Water_valve_control: 8 IHKA - -BO_ 706 Temperatur_Ist_Fond: 8 FKA - -BO_ 711 Display_Kombination_extended: 8 DME - -BO_ 714 Outside_temperature: 8 Kombi - -BO_ 716 Control_monitor_rear: 8 RSE - -BO_ 718 Control_monitor: 8 CCC - -BO_ 719 Status_of_auxiliary_water_pump: 8 JBBF - -BO_ 720 Status_Sensor_AUC: 8 JBBF - -BO_ 721 Status_fitting_window_V: 8 FZD - -BO_ 722 Status_pressure_refrigeration_circuit: 8 JBBF - -BO_ 723 Status_stratification_rear: 8 JBBF - -BO_ 725 Status_heating_rear_window: 8 JBBF - -BO_ 726 Status_valve_air_conditioning_compressor: 8 JBBF - -BO_ 730 Status_tailgate_lift: 8 HKL - -BO_ 734 Switch_control_display: 8 VSW - -BO_ 738 Status_setting_video_night_vision: 8 NVC - -BO_ 739 Status_setting_video_rear_view_camera: 8 RFK - -BO_ 740 Status_trailer: 8 AHM - -BO_ 742 Status_of_air_distribution_FA: 8 IHKA - -BO_ 746 Status_air_distribution_BF: 8 IHKA - -BO_ 750 Status_climate_additional_programs: 8 IHKA - -BO_ 752 Status_air_condition_functions: 8 IHKA - -BO_ 753 Status_driver_detection: 8 MRSZ - -BO_ 755 Display_switching_instruction: 8 DME - -BO_ 756 Air_conditioning_control_SH_ZH_auxiliary_water_pump: 8 IHKA - -BO_ 759 Units: 8 Kombi - -BO_ 768 Status_RSE: 8 RSE - -BO_ 772 Status_Gang: 8 EGS - -BO_ 773 Operation_button_convertible_top: 8 IHKA - -BO_ 774 Vehicle_tilt: 8 FRMFA - -BO_ 775 Operation_button_flap_convertible_top: 8 IHKA - -BO_ 776 Status_MSA: 8 DME - -BO_ 785 Refill_quantity: 8 Kombi - -BO_ 786 Service_Call_Teleservice: 8 Kombi - -BO_ 787 Status_Service_Call_Teleservice: 8 CCC - -BO_ 788 Status_driving_light: 8 FZD - -BO_ 789 Vehicle_mode: 8 JBBF - -BO_ 791 Operation_button_parking_aids: 8 IHKA - -BO_ 792 Status_antennas_Passive_Access: 8 PGS - -BO_ 793 Operation_push_button_RDC: 8 JBBF - -BO_ 794 Operation_button_HDC: 8 IHKA - -BO_ 795 Operation_of_tailgate_interior_button: 8 IHKA - -BO_ 796 Status_tire_pressure: 8 RDC - -BO_ 801 Operation_button_camera_BF: 8 IHKA - -BO_ 802 Damper_current: 8 EDCK - -BO_ 806 Status_damper_program: 8 VDM - -BO_ 808 Relativzeit: 8 Kombi - -BO_ 813 Display_HDC: 8 DSC - -BO_ 814 Status_climate_internal_control_info: 8 IHKA - -BO_ 817 Programming_of_step_cruise_control: 8 CCC - -BO_ 818 Driver_display_speed_range: 8 DME - -BO_ 822 Display_check_control_message_role: 8 Kombi - -BO_ 824 Control_display_check_control_message: 8 Kombi - -BO_ 825 Status_display_climate: 8 CCC - -BO_ 826 Status_Monitor_Front: 8 CID - -BO_ 828 Status_Monitor_Fond_1: 8 CID - -BO_ 830 Status_Monitor_Fond_2: 8 CID - -BO_ 841 Raw_data_level_tank: 8 JBBF - -BO_ 843 Seat_back_lock_status_FA: 8 SM_FA - -BO_ 845 Status_seat_back_lock_BF: 8 SM_BF - -BO_ 847 Status_contact_handbrake: 8 JBBF - SG_ Handbrake_push : 0|2@1+ (1,0) [0|3] "" XXX - -BO_ 858 Appointment_Condition_Based_Service: 8 CCC - -BO_ 860 Status_onboard_computer: 8 Kombi - -BO_ 862 Onboard_computer_data_trip_data: 8 Kombi - -BO_ 864 Data_onboard_computer_start_of_journey: 8 Kombi - -BO_ 866 Data_onboard_computer_average_values: 8 Kombi - -BO_ 868 Data_onboard_computer_arrival: 8 Kombi - -BO_ 869 Status_terminal_request: 8 CAS - -BO_ 870 Display_Kombination_external_display: 8 Kombi - -BO_ 871 Control_display_of_demand_oriented_service: 8 Kombi - -BO_ 877 Setting_the_driving_dynamics_switch: 8 JBBF - -BO_ 886 Status_wear_lamella: 8 VGSG - -BO_ 893 Status_DKG: 8 DKG - -BO_ 894 Temperatur_Bremse: 8 DSC - -BO_ 895 Range_of_diesel_exhaust_gas_additive: 8 DDE1 - -BO_ 896 chassis_number: 8 CAS - -BO_ 898 Electronic_engine_oil_dipstick_M: 8 DME - -BO_ 899 Motor_data_2: 8 DME - -BO_ 904 Vehicle_type: 8 CAS - -BO_ 907 Status_battery: 8 DME - -BO_ 910 Start_speed: 8 DME - -BO_ 914 Status_System_AFS: 8 AFS - -BO_ 916 RDA_request_data_storage: 8 Kombi - -BO_ 917 Coding_power_management: 8 CAS - -BO_ 920 Operation_chassis: 8 CCC - -BO_ 921 Status_MDrive: 6 DME - -BO_ 926 Operation_time_date: 8 CCC - -BO_ 928 Vehicle_state: 8 JBBF - -BO_ 931 Request_Remote_Services: 8 CCC - -BO_ 937 Status_motor_control_CKM: 8 DME - -BO_ 939 Status_Shiftlights_CKM: 8 Kombi - -BO_ 944 Status_gear_reverse: 8 FRMFA - -BO_ 949 Status_water_valve: 8 JBBF - -BO_ 950 Position_window_lifter_FAT: 8 FRMFA - -BO_ 951 Position_window_lifter_FATH: 8 JBBF - -BO_ 952 Position_window_regulator_BFT: 8 FRMFA - -BO_ 953 Position_window_regulator_BFTH: 8 JBBF - -BO_ 954 Position_SHD: 8 FZD - -BO_ 956 Position_window_lifter_security_vehicle: 8 XXX - -BO_ 957 Status_consumer_shutdown: 8 FRMFA - -BO_ 959 Position_window_rear_window: 8 CTM - -BO_ 960 Configuration_FAS: 8 SM_FA - -BO_ 961 Configuration_BFS: 8 SM_BF - -BO_ 964 Status_EDCK_CKM: 8 JBBF - -BO_ 967 Access_radio: 8 RAD1 - -BO_ 968 Operation_push_button_radio: 8 RAD1 - -BO_ 974 Radio_audio_control_interface_display: 8 ACI - -BO_ 975 Acknowledgment_access_radio_audio_control_interface: 8 ACI - -BO_ 979 Status_solar_sensor: 8 FZD - -BO_ 980 Configuration_of_central_locking_CKM: 8 Kombi - -BO_ 981 Status_central_locking_CKM: 8 CAS - -BO_ 982 Configuration_DWA_CKM: 8 Kombi - -BO_ 983 Status_DWA_CKM: 8 FZD - -BO_ 984 Configuration_RLS_CKM: 8 Kombi - -BO_ 985 Status_RLS_CKM: 8 FZD - -BO_ 986 Configuration_of_memory_positions_CKM: 8 Kombi - -BO_ 987 Status_memory_positions_CKM: 8 SM_FA - -BO_ 988 Configuration_light_CKM: 8 Kombi - -BO_ 989 Status_light_CKM: 8 FRMFA - -BO_ 990 Configuration_Climate_CKM: 8 CCC - -BO_ 991 Status_Klima_CKM: 8 IHKA - -BO_ 994 Configuration_of_tailgate_CKM: 8 CCC - -BO_ 995 Status_tailgate_CKM: 8 HKL - -BO_ 996 Configuration_rear_view_camera_CKM: 8 CCC - - - - -CM_ SG_ 170 ThrottlelPressed "Active when accelerator pedal pressed or cruise control: drives"; -CM_ SG_ 170 AcceleratorPedalPressed "Active only when driver actually presses the pedal"; -CM_ SG_ 170 AcceleratorPedalPercentage "ToDo Factor to be adjusted"; -CM_ SG_ 404 plus1mph_request "Appears when +1mph/kph stalk is depressed"; -CM_ SG_ 404 minus1mph_request "Appears when -1mph/kph stalk is depressed"; -CM_ SG_ 404 Cancel_request_up_stalk "Appears when cancel stalk (up) is depressed"; -CM_ SG_ 404 Cancel_request_up_or_down_stalk "Appears when cancel stalk (up or down) is depressed"; -CM_ SG_ 404 Resume_request "It appears when resume stalk button is depressed"; -CM_ SG_ 404 Counter_404 "Message is sent at higher rate when cruise stalk is pressed"; - -CM_ SG_ 168 BrakePressed "Brake when driver presses the brake or hill hold"; -CM_ SG_ 168 EngineTorque "Engine torque without inertia - combustion torque"; -CM_ SG_ 168 EngineTorqueWoInterv "Engine torque without inertia and without shift intervention"; -CM_ SG_ 168 ALIV_TORQ_1_DME "Counter TORQ_1"; - -CM_ SG_ 169 ALIV_TORQ_2_DME "Counter TORQ_2"; - -CM_ SG_ 182 TORQ_TAR_DSC "torque target DSC"; - -CM_ SG_ 403 CruiseControlSetpointSpeed "Speed target - unit depends on locale"; -CM_ SG_ 186 GearTar "Values corresponds to forward gears. TBD Add enums for park, reverse"; -CM_ SG_ 466 GearAct "TransmissionDataDisplay"; -CM_ SG_ 414 DSC_full_off "0x4 enabling, 0xA enabled. TBD"; - -CM_ SG_ 416 YawRate "Lateral Acceleration"; - -CM_ SG_ 408 ParkButtonSecond "Redundant buton. 0x1 = pressed;"; -CM_ SG_ 408 SideButton "0x1 = pressed;"; -CM_ SG_ 408 SportButtonPressed "0x1 = pressed;"; -CM_ SG_ 408 M3_button "M3 POWER (?)"; -CM_ SG_ 408 SideButtonXOR11 "Complement value"; -CM_ SG_ 408 param1 "can not be 0x03. Always 0 in 135i."; -CM_ SG_ 408 param5 "Always 0 in 135i."; -CM_ SG_ 408 ParkButtonFirst "0x1 = pressed"; -CM_ SG_ 408 ShifterPosition "0001 = N|R, 0010 = R, 0011 = N|D, 0100 = D, 0101 = -1, 0110 = +1, 0111 = ManualMode, 1000 = inBetween,"; - -CM_ SG_ 466 ShiftLeverMode "On the dashboard, there are displayed: D1...D7 in Normal. S1...S6 in Sport. M1..M7 in Manual"; - -CM_ SG_ 502 TurnSignalIdle "Turn signal off"; -CM_ SG_ 502 TurnSignalActive "Turn signal on or transitioning"; -CM_ SG_ 502 RightTurn "Indicates right blinker or when steering returning right clears left blinker"; -CM_ SG_ 502 LeftTurn "Indicates left blinker or when steering returning left clears right blinker"; -CM_ SG_ 502 HoldActivated "Spikes down if blinker cleared with timeout or turn. Stays off if blinker cleared with stalk"; - -CM_ SG_ 790 setMe_0x3FFF "All ones"; -CM_ SG_ 790 DTC_pressed "Traction control off. Message transmitted when pressed. Few presses may be required followed by off."; - -VAL_ 408 ShifterPosition 1 "D" 2 "S" 3 "N" 4 "R" 5 "P" ; - -VAL_ 464 ST_SW_WAUP 3 "signal invalid" 2 "EGS forced switching active" 1 "engine warm" 0 "warming up" ; -VAL_ 464 ST_ENG_RUN 3 "signal invalid" 2 "engine running" 1 "engine starting" 0 "engine off" ; -VAL_ 464 CTR_SLCK 3 "signal invalid" 2 "requirement Shiftlock" 1 "no requirement Shiftlock" 0 "not allowed" ; - -VAL_ 466 ShiftLeverMode 0 "Normal" 1 "Sport" 2 "Manual" ; -VAL_ 466 ShiftLeverPosition 0 "Off" 1 "P" 2 "R" 4 "N" 8 "D" ; diff --git a/opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc b/opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc deleted file mode 100644 index 9de969d762..0000000000 --- a/opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc +++ /dev/null @@ -1,95 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: K182_PACM K43_PSCM K17_EBCM NEO K124_ASCM - - - -BO_ 823 PACMParkAssitCmd: 7 NEO - SG_ RollingCounter : 35|2@0+ (1,0) [0|0] "" NEO - SG_ SteeringWheelChecksum : 47|16@0+ (1,0) [0|0] "" NEO - SG_ SteeringWheelCmd : 23|16@0+ (1,0) [0|0] "" NEO - -BO_ 560 EBCMRegen: 6 K17_EBCM - SG_ Regen : 1|10@0+ (1,0) [0|0] "" NEO - -BO_ 338 ASCMLKASteeringCmd: 6 NEO - SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO - SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO - SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO - SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO - SG_ LKASMode : 36|2@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO - -BO_ 340 ASCMBLKASteeringCmd: 6 NEO - SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO - SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO - SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO - SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO - SG_ LKASteeringCmdActive2 : 35|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO - -BO_ 368 EBCMFrictionBrakeStatus: 8 K17_EBCM - SG_ FrictionBrakePressure : 23|16@0+ (1,0) [0|0] "" NEO - -BO_ 789 EBCMFrictionBrakeCmd: 5 K17_EBCM - SG_ RollingCounter : 37|6@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO - -BO_TX_BU_ 823 : K43_PSCM,NEO; -BO_TX_BU_ 789 : NEO,K17_EBCM; - - -CM_ BU_ K182_PACM "Parking Assist Control Module"; -CM_ BU_ K43_PSCM "Power Steering Control Module"; -CM_ BU_ K17_EBCM "Electronic Brake Control Module"; -CM_ BU_ NEO "Comma NEO"; -CM_ BU_ K124_ASCM "Active Safety Control Module"; -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "UseGMParameterIDs" 0; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; - -VAL_ 338 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 338 LKASMode 2 "supercruise" 1 "lkas" 0 "Inactive" ; diff --git a/opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc b/opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc deleted file mode 100644 index 3f7cf64cdc..0000000000 --- a/opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc +++ /dev/null @@ -1,3470 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: RRSRR_FO LRSRR_FO CIPM_FO _DOFIMU2_FO _DOFIMU1_FO DMS_FO AMM_FO EOCM2B_IMX6_FO EOCM2B_K2_FO EOCM2B_K1_FO EOCM2A_IMX6_FO EOCM2A_K2_FO EOCM2A_K1_FO NVS_FO Dummy_FO TestTool_FO LRR_FO RFSRR_FO LFSRR_FO RSRR_FO VIS_FO EOCM_F_FO VIS2_FO -VAL_TABLE_ vt_BooleanValues 1 "true" 0 "false" ; -VAL_TABLE_ FrntVsnInPthVehBrkNwSt 10 "Active" 5 "Inactive" ; -VAL_TABLE_ FrntVsnClostPedBrkNwSt 10 "Active" 5 "Inactive" ; -VAL_TABLE_ DrvrMonSysEngSt 7 "Unused and Reserved 1" 6 "Recovering" 5 "Tracking" 4 "Searching" 3 "Video test port only" 2 "Idle" 1 "Invalid state" 0 "Does not exist or DME" ; -VAL_TABLE_ DrvrMonEngUnrecvrFltCod 7 "Unused and Reserved 3" 6 "Unused and Reserved 2" 5 "Unused and Reserved 1" 4 "Vehicle power supply Errors" 3 "Problem with LED illuminators" 2 "Vehicle input signals Errors" 1 "Problem with imager" 0 "Ok" ; -VAL_TABLE_ DrvrMonEngRecvrFltCod 3 "Engine is unable to find a face" 2 "Input Images too dark" 1 "Input images too bright" 0 "Ok" ; -VAL_TABLE_ DrvrMntrSysVTP 1 "Video test port active" 0 "Video test port inactive" ; -VAL_TABLE_ DrvrAttnStatCnfdc 3 "High" 2 "Medium" 1 "Low" 0 "Lowest" ; -VAL_TABLE_ DrvrAttnStat 7 "Invalid" 6 "Driver is exhibiting sleep" 5 "Driver is exhibiting microsleep" 4 "Attention is Center Console" 3 "Attention is Drivers Lap" 2 "Attention is Off Road" 1 "Attention is On Road" 0 "Unknown" ; -VAL_TABLE_ PPSMd 7 "GNSS and RTX and DR and MM" 6 "DR ONLY" 5 "GNSS and RTX and DR" 4 "GNSS and SBAS and DR" 3 "GNSS and DR" 2 "GNSS and RTX" 1 "GNSS and SBAS" 0 "GNSS Standalone" ; -VAL_TABLE_ AdvDrvAstMpPrfShrtAcur 3 "Accuracy Is Unknown" 2 "Lowest Accuracy" 1 "Medium Accuracy" 0 "Highest Accuracy" ; -VAL_TABLE_ AdvDrAstMpStbRtOfWay 3 "Not Applicable" 2 "Unknown" 1 "Sub Path Has Right Of Way Over Path" 0 "Path Has Right Of Way Over Sub Path" ; -VAL_TABLE_ AdvDrAstMpStbPrtCalRut 3 "Not Applicable" 2 "Unknown" 1 "Path From This Point On Is Part Of Calculated Route" 0 "Path From This Point On Is Not Part Of Calculated Route" ; -VAL_TABLE_ AdvDrAstMpStbMsgTyp 7 "Unused and Reserved 2" 6 "Metadata" 5 "Profile Long" 4 "Profile Short" 3 "Stub" 2 "Segment" 1 "Position" 0 "Unused and Reserved 1" ; -VAL_TABLE_ AdvDrAstMpStbFmOfWay 15 "Not Applicable" 14 "Pedestrian Zone" 13 "Entrance To Or Exit To Service" 12 "Entrance To Or Exit Of A Car Park" 11 "Service Road Or Frontage Road" 10 "Slip Road per Ramp" 9 "Slip Road per Ramp On A Freeway Or Controlled Access Road" 8 "Parallel Road" 7 "Unused and Reserved 2" 6 "Unused and Reserved 1" 5 "Traffic Square per Special Traffic Figure" 4 "Roundabout Circle" 3 "Single Carriageway" 2 "Multiple Carriageway Or Multiply Digitized Road" 1 "Freeway Or Controlled Access Road That Is Not A Slip Road Or Ramp" 0 "Unknown" ; -VAL_TABLE_ AdvDrAstMpStbCmplxInsct 3 "Not Applicable" 2 "Unknown" 1 "Stub Is Part Of Complex Intersection" 0 "Stub Is Not Part Of Complex Intersection" ; -VAL_TABLE_ AdvDrAstMpSegTunl 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Tunnel" 0 "Segment Is Not A Part Of Tunnel" ; -VAL_TABLE_ AdvDrAstMpSegPrtCalRut 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Calculated Route" 0 "Segment Is Not Part Of Calculated Route" ; -VAL_TABLE_ AdvDrAstMpSegMsgTyp 7 "Unused and Reserved 2" 6 "Metadata" 5 "Profile Long" 4 "Profile Short" 3 "Stub" 2 "Segment" 1 "Position" 0 "Unused and Reserved 1" ; -VAL_TABLE_ AdvDrAstMpSegFrmOfWay 15 "Not Applicable" 14 "Pedestrian Zone" 13 "Entrance To Or Exit To Service" 12 "Entrance To Or Exit Of A Car Park" 11 "Service Road Or Frontage Road" 10 "Slip Road per Ramp" 9 "Slip Road per Ramp On A Freeway Or Controlled Access Road" 8 "Parallel Road" 7 "Unused and Reserved 2" 6 "Unused and Reserved 1" 5 "Traffic Square per Special Traffic Figure" 4 "Roundabout Circle" 3 "Single Carriageway" 2 "Multiple Carriageway Or Multiply Digitized Road" 1 "Freeway Or Controlled Access Road That Is Not A Slip Road or Ramp" 0 "Unknown" ; -VAL_TABLE_ AdvDrAstMpSegEffSdLmtTp 7 "Not Applicable" 6 "Explicit Snow" 5 "Explicit Rain" 4 "Explicit Time Of Day" 3 "Explicit By Day" 2 "Explicit By Night" 1 "Explicit On Traffic Sign" 0 "Implicit" ; -VAL_TABLE_ AdvDrAstMpSegDivdRd 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Divided Road" 0 "Segment Is Not Part Of Divided Road" ; -VAL_TABLE_ AdvDrAstMpSegCmplxInsct 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Complex Intersection" 0 "Segment Is Not Part Of Complex Intersection" ; -VAL_TABLE_ AdvDrAstMpSegBrdg 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Bridge" 0 "Segment Not Part Of Bridge" ; -VAL_TABLE_ AdvDrAstMpSegBldUpAra 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Built Up Area" 0 "Segment Is Not Part Of Built Up Area" ; -VAL_TABLE_ AdvDrAstMpMtdtSpdUnt 1 "Miles Per Hour" 0 "Kilometers Per Hour" ; -VAL_TABLE_ AdvDrAstMpMtdtDrvSd 1 "Driving Side Right" 0 "Driving Side Left" ; -VAL_TABLE_ WSMR_WiFiAssnReq 3 "Unexpected Undefined Connection Behavior" 2 "Wi Fi association failed with available credentials" 1 "Failed to receive Wi Fi credentials after 255 attempts" 0 "SSID and Passphrase Request" ; -VAL_TABLE_ StrgColCommsFlt 2 "Disabled Communications DTC" 1 "No Communications Fault" 0 "Communications Fault" ; -VAL_TABLE_ CPMAPINFO4 1 "Hardware Or Software Error" 0 "No Hardware Or Software Error" ; -VAL_TABLE_ AdvDrvAstMpPrfShrt2Acur 3 "Accuracy Is Unknown" 2 "Lowest Accuracy" 1 "Medium Accuracy" 0 "Highest Accuracy" ; -VAL_TABLE_ InterLghtStat 1 "Interior Lights On" 0 "Interior Light Off" ; -VAL_TABLE_ VehLnStatConf 2 "High Confidence" 1 "Low Confidence" 0 "No Confidence" 3 "Very High Confidence" ; -VAL_TABLE_ VehLnStat 3 "Lane Change To Right" 2 "Lane Change To Left" 1 "Staying in Lane" 0 "Unknown" ; -VAL_TABLE_ HrznPrvdRstRq 1 "Reset Not Required" 0 "Reset Required" ; -VAL_TABLE_ ExptNxtTrnstnDirConf 3 "Very High Confidence" 2 "High Confidence" 1 "Low Confidence" 0 "No Confidence" ; -VAL_TABLE_ ExptNxtTrnstnDir 7 "Reserved4" 6 "Reserved3" 5 "Reserved2" 4 "Reserved1" 3 "Traversing Middle Transition" 2 "Traversing Next Transition Right" 1 "Traversing Next Transition Left" 0 "Unknown" ; -VAL_TABLE_ ADASISMsgTypRetrans 7 "GM System Specific" 6 "Meta Data" 5 "Profile Long" 4 "Profile Short" 3 "Stub" 2 "Segment" 1 "Position" 0 "Checksum" ; -VAL_TABLE_ NVSysStat 7 "Needs Headlights" 6 "Temporarily Unavailable" 5 "Not Dark" 4 "Needs Service" 3 "Active" 2 "Inactive" 1 "Initializing" 0 "Unknown" ; -VAL_TABLE_ NVSysPedWrnIndReq 3 "Unused & Reserved" 2 "Pedestrian Alert" 1 "Pedestrian Detected" 0 "None" ; -VAL_TABLE_ NVSysPedDetCstReq 2 "On" 1 "Off" 0 "No Value" ; -VAL_TABLE_ NVSysPedDetCsCrStVal 2 "On" 1 "Off" 0 "No Value" ; -VAL_TABLE_ FwVsnCinCoutPotT9Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT8Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT7Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT6Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT5Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT4Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT3Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT2Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT1Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT12Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT11Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT10Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ GFHBObjDirTrk8 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk7 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk6 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk5 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk4 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk3 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk2 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBObjDirTrk1 1 "Ahead Traffic" 0 "Incoming Traffic" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk8 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk7 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk6 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk5 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk4 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk3 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk2 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnRelLaneTrk1 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk8 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk7 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk6 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk5 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk4 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk3 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk2 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnMesStatTrk1 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk8 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk7 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk6 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk5 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk4 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk3 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk2 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; -VAL_TABLE_ GFHBFwVsnCnfdncTrk1 0 "Invalid" 3 "Confident" 2 "Speculative" 1 "Highly Speculative" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev8 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev7 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev6 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev5 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev4 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev3 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev2 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; -VAL_TABLE_ GFHBFVsnObjTypTrkRev1 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car" 0 "Unknown" ; -VAL_TABLE_ CRL_Cnfdnc 7 "Reserved4" 6 "Reserved3" 5 "Reserved2" 4 "Reserved1" 3 "Best" 2 "Marking Present" 1 "Weak Marking" 0 "No Lane" ; -VAL_TABLE_ CLL_Cnfdnc 7 "Reserved4" 6 "Reserved3" 5 "Reserved2" 4 "Reserved1" 3 "Best" 2 "Marking Present" 1 "Weak Marking" 0 "No Lane" ; -VAL_TABLE_ VBBrkCtrlSt 4 "Release Control" 3 "Hold Vehicle" 2 "Apply Brake" 1 "Decrease Torque" 0 "No Action" ; -VAL_TABLE_ ObstacleType 6 "NO_OBJECT" 5 "OBJ_GUARDRAIL" 4 "OBJ_TUNNEL " 3 "OBJ_TRAFFIC_SIGN" 2 "OBJ_VEHICLE" 1 "OBJ_BRIDGE " 0 "OBJ_UNKNOWN" ; -VAL_TABLE_ VpathMode 2 "Mid Hi Speed" 1 "Low Speed" 0 "Disabled" ; -VAL_TABLE_ LaneChngStatus 2 "Lane Change Right" 1 "Lane Change Left" 0 "Idle" ; -VAL_TABLE_ TravelDirection 3 "Other (excessive side slip)" 2 "reverse / stopped in rvrs gear" 1 "Forward / stopped in frwd gear" 0 "Unknown" ; -VAL_TABLE_ TrueOrFalse 1 "true" 0 "false" ; -VAL_TABLE_ ModeCommand 5 "Sensing with Reduced Power" 4 "Undefined" 3 "Radio Silent" 2 "Sensing" 1 "Not Sensing" 0 "Undefined" ; -VAL_TABLE_ LaneSnsLLnPosValid 1 "Invalid" 0 "Valid" ; -VAL_TABLE_ LnSnsRLnPosValid 1 "Invalid" 0 "Valid" ; -VAL_TABLE_ Elevation 3 "Low " 2 "mid (reserved)" 1 "high " 0 "Unknown" ; -VAL_TABLE_ ModeCommandFdbk 5 "Sensing with reduced power" 4 "Undefined" 3 "Radio Silent" 2 "Sensing" 1 "Not Sensing" 0 "Undefined" ; -VAL_TABLE_ relativeLane 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; -VAL_TABLE_ RoadTypeInfo 5 "Constiction Zone Exit" 4 "Construction Zone Entry" 3 "Highway" 2 "Secondary Road" 1 "City" 0 "Unknown" ; -VAL_TABLE_ ObjectLossInfo 2 "elevation conditions" 1 "tight curve" 0 "not lost" ; -VAL_TABLE_ MeasurementStatus 3 "Measured this cycle" 2 "Latent track not detctd this cyc" 1 "New Object" 0 "No Object" ; -VAL_TABLE_ ObjectType 7 "no object present" 6 "fixed roadside object" 5 "fixed overhead object" 4 "pedestrian" 3 "motocycle / bicycle" 2 "Large vehicle (semi)" 1 "4 Wheel Vehicle (car, small trk)" 0 "Unknown" ; -VAL_TABLE_ Confidence 3 "confident" 2 "speculative" 1 "highly speculative" 0 "invalid" ; -VAL_TABLE_ DynamicProp 4 "Moving in opposite direction" 3 "Moving in same direction as host" 2 "Has moved but currently stopped" 1 "Has never moved" 0 "Unknown" ; -VAL_TABLE_ DrvWndPosSt 6 "Fully Opened" 5 "Open More Than C" 4 "Position C" 3 "Position B" 2 "Position A" 1 "Open Less Than A" 0 "Fully Closed" ; -VAL_TABLE_ VehMovSta 4 "Invalid" 3 "Reverse" 2 "Forward" 1 "Neutral" 0 "Parked" ; -VAL_TABLE_ OtsdAmbtLtLvlStat 2 "Day" 1 "Night" 0 "Unknown" ; -VAL_TABLE_ RtTrnLmpAtv 2 "On with telltale" 1 "On without telltale" 0 "Off" ; -VAL_TABLE_ LftTrnLmpAtv 2 "On with telltale" 1 "On without telltale" 0 "Off" ; -VAL_TABLE_ HdlmpBmSelectStat 2 "High Beams" 1 "Low Beams" 0 "Unknown" ; -VAL_TABLE_ DTCI_DTCFaultType 3 "Type C" 2 "Type B" 1 "Type A" 0 "Not Supported" ; -VAL_TABLE_ TrnsShftLvrPos 13 "Forward Range J" 12 "Forward Range I" 15 "Lever Position Unknown" 11 "Forward Range H" 10 "Forward Range G" 9 "Forward Range F" 8 "Forward Range E" 7 "Forward Range D" 6 "Forward Range C" 5 "Forward Range B" 4 "Forward Range A" 3 "Neutral Range" 2 "Reverse Range" 1 "Park Range" 0 "Between Ranges" ; -VAL_TABLE_ SysPwrMd 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off" ; -VAL_TABLE_ ValidityStates 1 "Invalid" 0 "Valid" ; - - -BO_ 1548 ADAS_Profile_Short2_FO: 8 AMM_FO - SG_ AdvDrvAstMpPrfShrt2Val1 : 1|10@0+ (1,0) [0|1023] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2Val0 : 33|10@0+ (1,0) [0|1023] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2Updt : 39|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2RTrns : 3|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2Typ : 38|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2PthIdx : 23|6@0+ (1,0) [0|63] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2Ofst : 52|13@0+ (1,0) [0|8191] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2MsgTp : 55|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2Dist1 : 17|10@0+ (1,0) [0|1023] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2CycCnt : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2CtlPt : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpPrfShrt2Acur : 5|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 1547 ADAS_Profile_Long2_FO: 8 AMM_FO - SG_ AdvDrAstMpProfLng2Val : 39|32@0+ (1,0) [0|4294967295] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2Updt : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2RTrns : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2PrfTyp : 4|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2PthIdx : 13|6@0+ (1,0) [0|63] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2Ofst : 20|13@0+ (1,0) [0|8191] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2MgTyp : 23|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2CycCt : 15|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLng2CtrlPt : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 1630 USDT_Resp_From_EOCM2B_K2_FO: 8 EOCM2B_K2_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1374 UUDT_Resp_From_EOCM2B_K2_FO: 8 EOCM2B_K2_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 606 USDT_Req_to_EOCM2B_K2_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2B_K2_FO - -BO_ 328 Vehicle_Info_FO: 5 EOCM2A_K1_FO - SG_ StrWhAngGrd : 27|12@0- (1,0) [-2048|2047] "deg/sec" DMS_FO - SG_ TrnsShftLvrPos : 31|4@0+ (1,0) [0|15] "" DMS_FO - SG_ StrWhAng_148 : 15|16@0- (0.0625,0) [-2048|2047.9375] "deg" DMS_FO - SG_ TrnsShftLvrPosV : 3|1@0+ (1,0) [0|1] "" DMS_FO - SG_ StrWhAngV_148 : 4|1@0+ (1,0) [0|1] "" DMS_FO - SG_ StrWhAngMsk_148 : 5|1@0+ (1,0) [0|1] "" DMS_FO - SG_ StrWhAngGrdV : 6|1@0+ (1,0) [0|1] "" DMS_FO - SG_ StrWhAngGrdMsk : 7|1@0+ (1,0) [0|1] "" DMS_FO - -BO_ 1930 DTC_Triggered_78A_FO: 7 LRSRR_FO - SG_ DTCI_CodeSupported_78A : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_78A : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_78A : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_78A : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_78A : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_78A : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_78A : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_78A : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_78A : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_78A : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_78A : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_78A : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_78A : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_78A : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_78A : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_78A : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_78A : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_78A : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_78A : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_78A : 47|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1624 USDT_Resp_From_LRSRR: 8 LRSRR_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1368 UUDT_Resp_From_LRSRR: 8 LRSRR_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 600 USDT_Req_to_LRSRR: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LRSRR_FO - -BO_ 613 PPS_QualMetrics_FO: 8 EOCM2A_K1_FO - SG_ PPSPstnDilPrcs : 47|10@0+ (0.1,0) [0|102.3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSMd : 53|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPS3DAbsPosErrEstmt : 9|10@0+ (0.1,0) [0|102.3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSAbsHdngErrEstmt : 0|7@0+ (0.5,0) [0|63.5] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSAbsVelErrEstmt : 30|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSPosQltyMtrcsChksm : 50|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPS2DAbsPosErrEstmt : 25|10@0+ (0.1,0) [0|102.3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSPosQltyMtcBrstID : 2|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPS2DAbsPosErrEstmtV : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPS3DAbsPosErrEstmtV : 4|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSAbsHdngErrEstmtV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSAbsVelErrEstmtV : 31|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSMdV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSPstnDilPrcsV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - -BO_ 612 PPS_Time_FO: 8 EOCM2A_K1_FO - SG_ PPSTmdayV : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSCldrDayV : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSCldrDay : 8|9@0+ (1,0) [0|511] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSTmBrstID : 52|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSTmday : 31|27@0+ (1,0) [0|134217727] "ms" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSTmChksm : 50|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSCldrYrV : 1|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSCldrYr : 15|7@0+ (1,2014) [2014|2141] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - -BO_ 611 PPS_SigAcqTime_FO: 6 EOCM2A_K1_FO - SG_ PPSSigAqTmBrstID : 38|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSSigAcqTmV : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSSigAcqTm : 7|32@0+ (1,0) [0|4294967295] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSSigAqTmChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - -BO_ 610 PPS_PosLong_FO: 6 EOCM2A_K1_FO - SG_ PPSLongBrstID : 39|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSLong : 6|31@0- (1,0) [-1073741824|1073741823] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSLongV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSLongChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - -BO_ 609 PPS_PosLat_FO: 6 EOCM2A_K1_FO - SG_ PPSLatV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSLatChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSLatBrstID : 36|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSLat : 5|30@0- (1,0) [-536870912|536870911] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - -BO_ 1160 PassPhrase_3_AMM_FO: 8 EOCM2A_K1_FO - SG_ WiFiPssPhrsDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO - -BO_ 1159 PassPhrase_2_AMM_FO: 8 EOCM2A_K1_FO - SG_ WiFiPssPhrsDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO - -BO_ 1158 PassPhrase_1_AMM_FO: 8 EOCM2A_K1_FO - SG_ WiFiPssPhrsDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO - -BO_ 1546 ADAS_Protection_FO: 4 AMM_FO - SG_ AdvDrAstMpPrfLng2Avbl : 11|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPosAvbl : 15|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpHwFlt : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtAvbl : 8|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpProtChksm : 23|16@0+ (1,0) [0|65535] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpProtRTrns : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpProtCycCtMsg : 2|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbAvbl : 9|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpSegAvbl : 10|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfShrtAvbl : 14|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfShrt2Avbl : 13|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrAstMpPrfLngAvbl : 12|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ AdvDrvAstMpInpSigFld : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 1545 ADAS_Metadata_FO: 8 AMM_FO - SG_ AdvDrAstMpMtdtVerYrQtr : 60|2@0+ (1,1) [1|4] "Qtr" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtVerYr : 53|6@0+ (1,2000) [2000|2063] "Year" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtSpdUnt : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtPrvdr : 7|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtMsgTyp : 58|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtMnrPrtVr : 23|4@0+ (1,0) [0|15] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtCycCnt : 18|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtRgnCd : 38|15@0+ (1,0) [0|32767] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtHwVer : 16|9@0+ (1,0) [0|511] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtMnrPrtSbVr : 4|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtMjrPrtVr : 55|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtDrvSd : 19|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpMtdtCntryCd : 1|10@0+ (1,0) [0|1023] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 1543 ADAS_Profile_Long_FO: 8 AMM_FO - SG_ AdvDrAstMpPrfLngUpdt : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngRTrns : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngCtlPt : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngTyp : 4|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngCycCt : 15|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngPthIdx : 13|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngMsgTp : 23|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngOfst : 20|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPrfLngVal : 39|32@0+ (1,0) [0|4294967295] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 1544 ADAS_Profile_Short_FO: 8 AMM_FO - SG_ AdvDrvAstMpPrfShrtVal1 : 1|10@0+ (1,0) [0|1023] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtVal0 : 33|10@0+ (1,0) [0|1023] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtDist1 : 17|10@0+ (1,0) [0|1023] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtCycCnt : 7|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtAcur : 5|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtCtlPt : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtRetr : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtTyp : 38|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtUpdt : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtPthIdx : 23|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtMsgTp : 55|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrvAstMpPrfShrtOfst : 52|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 1542 ADAS_Stub_FO: 8 AMM_FO - SG_ AdvDrAstMpStbSubPthIdx : 63|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbUpdt : 55|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbPrtCalRut : 57|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbNmLnDrvDir : 54|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbCycCnt : 51|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbCmplxInsct : 49|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbTrnAngl : 47|8@0+ (1.417,0) [0|361.335] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbRtOfWay : 38|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbRelProb : 36|5@0+ (3.333,0) [0|103.323] "%" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbRetr : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbNmLnOppDir : 31|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbPathIdx : 29|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbLstStbOfst : 23|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbMsgTyp : 22|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbFmOfWay : 19|4@0+ (1,0) [0|15] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbFuncRdCls : 7|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpStbOfst : 4|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 1541 ADAS_Segment_FO: 8 AMM_FO - SG_ AdvDrAstMpSegRelProb : 12|5@0+ (3.333,0) [0|103.323] "%" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegUpdt : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegTunl : 25|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegCycCnt : 39|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegCmplxInsct : 37|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegBldUpAra : 43|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegBrdg : 41|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegRTrns : 1|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegDivdRd : 31|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegPthIdx : 7|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegPrtCalRut : 27|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegNmLnOppDir : 29|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegNmLnDrvDir : 55|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegMsgTyp : 46|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegFunRdCls : 23|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegFrmOfWay : 35|4@0+ (1,0) [0|15] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegEffSpdLmt : 20|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegEffSdLmtTp : 15|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpSegOffset : 52|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 608 PPS_ElevHdSpd_FO: 8 EOCM2A_K1_FO - SG_ PPSVel : 31|8@0+ (1,0) [0|255] "km / h" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSVelV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSElvHedngSpdBrstID : 5|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSElvHdengSpdChksm : 50|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSHedngV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSHedng : 2|19@0+ (0.001,0) [0|524.287] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSElvtnV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - SG_ PPSElvtn : 39|21@0+ (1,-100000) [-100000|1997151] "cm" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO - -BO_ 1168 WiFi_Station_AMM_FO: 5 AMM_FO - SG_ WSMR_WiFiStnMpMACAddr : 15|32@0+ (1,0) [0|4294967295] "" EOCM2B_K1_FO,EOCM2A_K1_FO - SG_ WSMR_WiFiAssnReq : 1|2@0+ (1,0) [0|3] "" EOCM2B_K1_FO,EOCM2A_K1_FO - -BO_ 1161 WiFi_AP_Data_AMM_FO: 2 EOCM2A_K1_FO - SG_ WAPDM_SecurityType : 15|4@0+ (1,0) [0|15] "" EOCM2B_K1_FO,AMM_FO - SG_ WAPDM_WiFiEnStat : 0|1@0+ (1,0) [0|1] "" EOCM2B_K1_FO,AMM_FO - SG_ WAPDM_EncrptnType : 11|4@0+ (1,0) [0|15] "" EOCM2B_K1_FO,AMM_FO - -BO_ 1157 SSID_AMM_3_FO: 8 EOCM2A_K1_FO - SG_ WiFiSSIDDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO - -BO_ 326 DMS_Eye_AOI_Info_FO: 6 DMS_FO - SG_ DrvrMontSysInit : 1|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMontSysAvlbl : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMontMdlDatFlshProgrs : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonEngRecvrFltCodARC : 36|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrAttnStatChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrAttnStat : 39|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrAttnStatPrd : 22|15@0+ (0.025,0) [0|819.175] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonEngRecvrFltCodV : 23|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonEngUnrecvrFltCod : 10|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonEngUnrecvrFltCodV : 11|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrAttnStatCnfdc : 13|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonEngRecvrFltCod : 15|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrAttnStatV : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 324 DMS_RawMeasurement_Info2_FO: 8 DMS_FO - SG_ DrvrMonFrmNum : 47|8@0+ (1,0) [0|255] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMntrSysVTP : 29|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonSysEngStV : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonSysEngSt : 28|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonFrmNumV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrHeadRotAngZV : 4|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrHeadRotAngYV : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrHeadRotAngXV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrHeadRotAngARC : 52|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonLatV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrMonLat : 50|11@0+ (0.001,0) [0|2.047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvHeadRotAngZ : 25|10@0- (0.00625,0) [-3.2|3.19375] "rad" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ DrvHeadRotAngY : 23|10@0- (0.00625,0) [-3.2|3.19375] "rad" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ DrvrHeadRotAngX : 1|10@0- (0.00625,0) [-3.2|3.19375] "rad" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 322 DMS_RawMeasurement_Info1_FO: 8 DMS_FO - SG_ DrvrEyeClosrRt : 47|8@0+ (0.005,0) [0|1.275] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrEyeClosrLft : 39|8@0+ (0.005,0) [0|1.275] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvHeadPosZV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvHeadPosYV : 4|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvHeadPosXV : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrEyeClosrRtV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrEyeClosrLftV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvrEyeClosrARC : 52|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ DrvHeadPosZ : 50|11@0- (0.005,0) [-5.12|5.115] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ DrvHeadPosY : 18|11@0- (0.005,0) [-5.12|5.115] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ DrvHeadPosX : 2|11@0- (0.005,0) [-5.12|5.115] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 320 Inertial2_Rates_FO: 8 _DOFIMU2_FO - SG_ MstrTgrSyncInrtl2Rte : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2YawRteV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2YawRte : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2RollRteV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2RollRte : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2RteChksum : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2PitchRteV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2PitchRte : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 308 Inertial1_Rates_FO: 8 _DOFIMU1_FO - SG_ MstrTrgrSyncInrtl1Rte : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1YawRteV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1YawRte : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1RollRteV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1RollRte : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1RteChksum : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1PitchRteV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial1PitchRte : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 312 Inertial2_Accel2_FO: 8 _DOFIMU2_FO - SG_ MstrTrigSyncInrtl22 : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSns2AccFrm2Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr2YawAccV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr2YawAcc : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr2RollAccV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr2RollAcc : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr2PtchAccV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr2PtchAcc : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 306 Inertial1_Accel2_FO: 8 _DOFIMU1_FO - SG_ MstrTrigSyncInrtl12 : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1AccelFrm2Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1YawAccV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1YawAcc : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1RollAccV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1RollAcc : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1PtchAccV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1PtchAcc : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 310 Inertial2_Accel1_FO: 8 _DOFIMU2_FO - SG_ MstrTrigSyncInrtl21 : 7|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2VertAccV : 34|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2VertAcc : 33|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2LonAccV : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2LonAcc : 1|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2LatAccV : 18|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ Inertial2LatAcc : 17|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ IntlSnsr2AcelFm1Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 304 Inertial1_Accel1_FO: 8 _DOFIMU1_FO - SG_ MstrTrigSyncInrtl11 : 7|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1VertAccV : 34|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1VertAcc : 33|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1LonAccV : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1LonAcc : 1|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1LatAccV : 18|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InrtlSnsr1LatAcc : 17|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ IntlSnsr1AcelFm1Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 356 Map_Pos_Correction_FO: 4 EOCM2A_K1_FO - SG_ LongErrPstn : 7|8@0- (0.5,0) [-64|63.5] "m" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ LatErrPstn : 15|8@0- (0.5,0) [-64|63.5] "m" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ PstnErrChcksm : 18|11@0+ (1,0) [0|2047] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ PstnErrARC : 20|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 354 Map_Retrans_Request_FO: 1 EOCM2A_K1_FO - SG_ HrznPrvdRstRq : 2|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ ADASISRwDtMplxdCycCnt : 7|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ ADASISMsgTypRetrans : 5|3@0+ (1,0) [0|7] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 352 Map_Path_Correction_FO: 6 EOCM2A_K1_FO - SG_ ExptNxtTrnstnDir : 37|3@0+ (1,0) [0|7] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ MstProbLnV : 15|1@0+ (1,0) [0|1] "" AMM_FO - SG_ MstProbLn : 14|5@0+ (1,0) [0|31] "" AMM_FO - SG_ PathCrtnChcksm : 34|11@0+ (1,0) [0|2047] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ PathCrtnARC : 4|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ EgoLnCurvV : 2|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ EgoLnCurv : 23|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m^2" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ VehLnStatV : 1|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ VehLnStatConf : 6|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ VehLnStat : 9|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ ExptNxtTransDirV : 0|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ ExptNxtTrnstnDirConf : 39|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 264 Inertial_Trigger_FO: 1 EOCM2A_K1_FO - SG_ InrtlSnsrMstrTrgrSync : 7|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,_DOFIMU2_FO,_DOFIMU1_FO - -BO_ 1156 SSID_AMM_2_FO: 8 EOCM2A_K1_FO - SG_ WiFiSSIDDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO - -BO_ 1155 SSID_AMM_1_FO: 8 EOCM2A_K1_FO - SG_ WiFiSSIDDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO - -BO_ 1927 DTC_Triggered_787_FO: 7 DMS_FO - SG_ DTCI_CodeSupported_787 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_787 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_787 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_787 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_787 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_787 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_787 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_787 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_787 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_787 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_787 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_787 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_787 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_787 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_787 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_787 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_787 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_787 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_787 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_787 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1926 DTC_Triggered_786_FO: 7 AMM_FO - SG_ DTCI_CodeSupported_786 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_786 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_786 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_786 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_786 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_786 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_786 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_786 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_786 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_786 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_786 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_786 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_786 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_786 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_786 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_786 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_786 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_786 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_786 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_786 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1928 DTC_Triggered_788_FO: 7 _DOFIMU1_FO - SG_ DTCI_CodeSupported_788 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_788 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_788 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_788 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_788 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_788 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_788 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_788 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_788 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_788 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_788 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_788 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_788 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_788 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_788 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_788 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_788 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_788 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_788 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_788 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1929 DTC_Triggered_789_FO: 7 _DOFIMU2_FO - SG_ DTCI_CodeSupported_789 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_789 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_789 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_789 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_789 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_789 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_789 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_789 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_789 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_789 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_789 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_789 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_789 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_789 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_789 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_789 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_789 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_789 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_789 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_789 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1352 UUDT_Resp_From_6DOFIMU2_FO: 8 _DOFIMU2_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 588 USDT_Req_to_EOCM2B_K1_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2B_K1_FO - -BO_ 1356 UUDT_Resp_From_EOCM2B_K1_FO: 8 EOCM2B_K1_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1612 USDT_Resp_From_EOCM2B_K1_FO: 8 EOCM2B_K1_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1616 USDT_Resp_From_EOCM2A_IMX6_FO: 8 EOCM2A_IMX6_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1360 UUDT_Resp_From_EOCM2A_IMX6_FO: 8 EOCM2A_IMX6_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 592 USDT_Req_to_EOCM2A_IMX6_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2A_IMX6_FO - -BO_ 1610 USDT_Resp_From_EOCM2A_K1_FO: 8 EOCM2A_K1_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1354 UUDT_Resp_From_EOCM2A_K1_FO: 8 EOCM2A_K1_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 586 USDT_Req_to_EOCM2A_K1_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2A_K1_FO - -BO_ 1925 DTC_Triggered_785_FO: 7 NVS_FO - SG_ DTCI_CodeSupported_785 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_785 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_785 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_785 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_785 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_785 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_785 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_785 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_785 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_785 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_785 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_785 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_785 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_785 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_785 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_785 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_785 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_785 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_785 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_785 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1859 VIN_Digits_10_to_17_FO: 8 EOCM_F_FO - SG_ VehIdNmDig10_17 : 7|64@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO - -BO_ 1857 VIN_Digits_2_to_9_FO: 8 EOCM_F_FO - SG_ VehIdNmDig2_9 : 7|64@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO - -BO_ 771 Outside_Air_Temperature_FO: 2 EOCM_F_FO - SG_ OtsAirTmpCrValV : 0|1@0+ (1,0) [0|1] "" NVS_FO - SG_ OtsAirTmpCrVal : 15|8@0+ (0.5,-40) [-40|87.5] "deg C" NVS_FO - -BO_ 777 Night_Vision_System_Ped_FO: 1 NVS_FO - SG_ NVSysStat : 3|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ NVSysPedWrnIndReq : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ NVSysPedDetCsCrStVal : 5|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ NVSysPedDetCstStAvl : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 607 USDT_Req_to_NVS_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" NVS_FO - -BO_ 1631 USDT_Resp_From_NVS_FO: 8 NVS_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1375 UUDT_Resp_From_NVS_FO: 8 NVS_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1540 ADAS_Position_FO: 8 AMM_FO - SG_ AdvDrAstMpLatOffst : 40|9@0+ (1,-256) [-256|255] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnIndx : 63|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnCnf : 61|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPsnIdxCrLn : 58|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnPthIndx : 46|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnProb : 31|5@0+ (3.333,0) [0|103.323] "%" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnCycCnt : 26|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnAge : 24|9@0+ (5,0) [0|2555] "ms" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnRelHd : 23|8@0+ (1.417,0) [0|361.335] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnMsgTyp : 7|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - SG_ AdvDrAstMpPstnOfst : 4|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO - -BO_ 1608 USDT_Resp_From_6DOFIMU2_FO: 8 _DOFIMU2_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 871 LGT_ObjectDetect_Info_8_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk8 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk8 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk8 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk8 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev8 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev8 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev8 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk8 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk8 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk8 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 870 LGT_ObjectDetect_Info_7_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk7 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk7 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk7 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk7 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev7 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev7 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev7 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk7 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk7 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk7 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 869 LGT_ObjectDetect_Info_6_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk6 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk6 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk6 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk6 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev6 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev6 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev6 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk6 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk6 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk6 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 868 LGT_ObjectDetect_Info_5_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk5 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk5 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk5 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk5 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev5 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev5 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev5 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk5 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk5 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk5 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 867 LGT_ObjectDetect_Info_4_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk4 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk4 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk4 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk4 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev4 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev4 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev4 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk4 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk4 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk4 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 866 LGT_ObjectDetect_Info_3_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk3 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk3 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk3 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk3 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev3 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev3 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev3 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk3 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk3 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk3 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 865 LGT_ObjectDetect_Info_2_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk2 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk2 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk2 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk2 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev2 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev2 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev2 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBObjDirTrk2 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk2 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 864 LGT_ObjectDetect_Info_1_FO: 8 VIS2_FO - SG_ GFHBFwVsnWidthTrk1 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO - SG_ GFHBFwVsnVertPosTrk1 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO - SG_ GFHBFwVsnRelLaneTrk1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnAzmthRtTrk1 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ GFHBFwVsnCnfdncTrk1 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnRngTrkRev1 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO - SG_ GFHBFwVsnAzmthTrkRev1 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO - SG_ GFHBFVsnObjTypTrkRev1 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ GFHBObjDirTrk1 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ GFHBFwVsnMesStatTrk1 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ GFHBFwVsnObjIDTrk1 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1915 DTC_Triggered_77B_FO: 7 VIS_FO - SG_ DTCI_DTCFaultType_77B : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_CodeSupported_77B : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_77B : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_77B : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_77B : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_77B : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_77B : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_77B : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_77B : 47|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_77B : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_77B : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_77B : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_77B : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_77B : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_77B : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_77B : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_77B : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_77B : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_77B : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_77B : 7|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1923 DTC_Triggered_783_FO: 7 RSRR_FO - SG_ DTCI_WrnIndRqdSt_783 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_783 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_783 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_783 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_783 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_783 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCTriggered_783 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCSource_783 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_783 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCFaultType_783 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFailType_783 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_CurrentStatus_783 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CodeSupported_783 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_783 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_783 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_783 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_783 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_783 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_783 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_783 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1924 DTC_Triggered_784_FO: 7 RRSRR_FO - SG_ DTCI_HistStat_784 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_784 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_784 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_784 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_784 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_784 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_784 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_784 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_784 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_784 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_784 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_784 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_784 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CodeSupported_784 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CurrentStatus_784 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCFailType_784 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFaultType_784 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_784 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCSource_784 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCTriggered_784 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1922 DTC_Triggered_782_FO: 7 RFSRR_FO - SG_ DTCI_WrnIndRqdSt_782 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_782 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_782 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_782 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_782 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_782 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_782 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_782 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_782 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_782 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_782 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_782 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_782 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCTriggered_782 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCSource_782 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_782 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCFaultType_782 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFailType_782 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_CurrentStatus_782 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_CodeSupported_782 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1920 DTC_Triggered_780_FO: 7 LRR_FO - SG_ DTCI_CurrentStatus_780 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_780 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_780 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_780 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_780 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_780 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_780 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_780 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_780 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_780 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_780 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_780 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_780 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_780 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCTriggered_780 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCSource_780 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_780 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCFaultType_780 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFailType_780 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_CodeSupported_780 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1921 DTC_Triggered_781_FO: 7 LFSRR_FO - SG_ DTCI_CurrentStatus_781 : 41|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_WrnIndRqdSt_781 : 47|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused7_781 : 1|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused6_781 : 2|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused5_781 : 3|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused4_781 : 4|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused3_781 : 5|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused2_781 : 6|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCIUnused1_781 : 7|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdPwrUpSt_781 : 45|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstNPsdCdClrdSt_781 : 42|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldPwrUpSt_781 : 46|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_TstFldCdClrdStat_781 : 43|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_HistStat_781 : 44|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCTriggered_781 : 0|1@0+ (1,0) [0|1] "" TestTool_FO - SG_ DTCI_DTCSource_781 : 15|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCNumber_781 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO - SG_ DTCI_DTCFaultType_781 : 55|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_DTCFailType_781 : 39|8@0+ (1,0) [0|255] "" TestTool_FO - SG_ DTCI_CodeSupported_781 : 40|1@0+ (1,0) [0|1] "" TestTool_FO - -BO_ 1034 Curvature_Right_Line_FO: 7 VIS2_FO - SG_ CRL_Cnfdnc : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ CRL_ViewRng : 33|15@0+ (0.0039064,0) [0|128.0010088] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ CRL_CoefdA : 17|16@0- (3.6622E-009,0) [-0.0001200029696|0.0001199993074] "1/m^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ CRL_CoefA : 1|16@0- (6.1036E-007,0) [-0.02000027648|0.01999966612] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 1033 Curvature_Left_Line_FO: 7 VIS2_FO - SG_ CLL_Cnfdnc : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ CLL_ViewRng : 33|15@0+ (0.0039064,0) [0|128.0010088] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ CLL_CoefdA : 17|16@0- (3.6622E-009,0) [-0.0001200029696|0.0001199993074] "1/m^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ CLL_CoefA : 1|16@0- (6.1036E-007,0) [-0.02000027648|0.01999966612] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - -BO_ 1365 UUDT_Resp_From_VIS2_FO: 8 VIS2_FO - SG_ DgnInf_OBJ555 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1621 USDT_Resp_From_VIS2_FO: 8 VIS2_FO - SG_ DgnInf_OBJ655 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1094 F_Vision_Obj_Track_12: 8 VIS2_FO - SG_ FwdVsnObjTypTr12Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk12Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk12Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FVisionWidthTrk12 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FVisionMeasStatTrk12 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk12 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisionRelLaneTrk12 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk12 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO - SG_ FVisionConfTrk12 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ ObjDirTrk12 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk12 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk12 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1093 F_Vision_Obj_Track_11: 8 VIS2_FO - SG_ FwdVsnObjTypTr11Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk11Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk11Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FVisionWidthTrk11 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FVisionMeasStatTrk11 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk11 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisionRelLaneTrk11 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk11 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO - SG_ FVisionConfTrk11 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ ObjDirTrk11 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk11 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk11 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1100 F_Vision_Obj_Track_12_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT12Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk12 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk12 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk12 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk12 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr12 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk12 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo12 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1099 F_Vision_Obj_Track_11_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT11Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk11 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk11 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk11 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk11 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr11 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk11 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo11 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1098 F_Vision_Obj_Track_10_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT10Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk10 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk10 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk10 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk10 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr10 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk10 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo10 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1097 F_Vision_Obj_Track_9_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT9Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk9 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk9 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk9 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk9 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr9 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk9 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo9 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1096 F_Vision_Obj_Track_8_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT8Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk8 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk8 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk8 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk8 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr8 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk8 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo8 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1095 F_Vision_Obj_Track_7_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT7Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk7 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk7 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk7 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk7 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr7 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk7 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo7 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 863 F_Vision_GFHB_Data_FO: 8 VIS2_FO - SG_ RgDtLgtSrcHrtAngl : 49|10@0- (0.04,0) [-20.48|20.44] "deg" EOCM_F_FO - SG_ RgDtLgtSrcHrtAngVcty : 55|6@0- (1,0) [-32|31] "deg/sec" EOCM_F_FO - SG_ LfDtLgtSrcHrtAngl : 33|10@0- (0.04,0) [-20.48|20.44] "deg" EOCM_F_FO - SG_ LfDtLgtSrcHrtAnVcty : 39|6@0- (1,0) [-32|31] "deg/sec" EOCM_F_FO - SG_ AdvWthrStat : 25|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ DtctdLghtSrcDstnc : 22|7@0+ (10,0) [0|1270] "m" EOCM_F_FO - SG_ DtctdLghtSrcVrtclAngl : 1|10@0- (0.04,0) [-20.48|20.44] "deg" EOCM_F_FO - SG_ IntLghtRngAct : 2|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ DtctdLghtSrcDstncV : 3|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ TwnDtctnSts : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ DtctdLghtSrcDrvngDrctn : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 862 LGT_ControlHighBeamGlare_FO: 2 VIS2_FO - SG_ FwdCamSysOpStat : 10|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ EnvIllum : 2|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RdTyp : 5|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ AutoHgBmSts : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1068 F_Vision_Obj_Track_6_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT6Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk6 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk6 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk6 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk6 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr6 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk6 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo6 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1067 F_Vision_Obj_Track_5_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT5Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk5 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk5 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk5 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk5 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr5 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk5 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo5 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1066 F_Vision_Obj_Track_4_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT4Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk4 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk4 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk4 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk4 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr4 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk4 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo4 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1065 F_Vision_Obj_Track_3_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT3Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk3 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk3 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk3 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk3 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr3 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk3 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo3 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1064 F_Vision_Obj_Track_2_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT2Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk2 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk2 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk2 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk2 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr2 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk2 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo2 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1063 F_Vision_Obj_Track_1_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT1Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk1 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FwdVsnObjAgeTrk1 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk1 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk1 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk1 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr1 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo1 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1151 Long_Range_Radar_add_Info_5_FO: 8 LRR_FO - SG_ FrtRdrRdEdgLtLatRdEdgDst : 63|8@0- (0.1,0) [-12.8|12.7] "m/m" EOCM_F_FO - SG_ FrtRdrRdEdgLtCrvtPrvDst : 5|4@0+ (10,0) [0|150] "" EOCM_F_FO - SG_ FrtRdrRdEdgLtTanHdgAng : 15|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM_F_FO - SG_ FrtRdrRdEdgLtCrvtV : 48|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtRdrRdEdgLtCrvtGradV : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtRdrRdEdgLtCrvtGrad : 39|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM_F_FO - SG_ FrtRdrRdEdgLtCrvtConf : 55|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM_F_FO - SG_ FrtRdrRdEdgLtCrvt : 23|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM_F_FO - SG_ FrtRdrRdEdgLtTanHdgAngV : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAddInfo5BurstID : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1150 Long_Range_Radar_add_Info_4_FO: 8 LRR_FO - SG_ FrtRdrRdEdgRtLatRdEdgDst : 63|8@0- (0.1,0) [-12.8|12.7] "m/m" EOCM_F_FO - SG_ FrtRdrRdEdgRtCrvtPrvDst : 5|4@0+ (10,0) [0|150] "" EOCM_F_FO - SG_ FrtRdrRdEdgRtTanHdgAngV : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtRdrRdEdgRtTanHdgAng : 15|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM_F_FO - SG_ FrtRdrRdEdgRtCrvtV : 48|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtRdrRdEdgRtCrvtGradV : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtRdrRdEdgRtCrvtGrad : 39|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM_F_FO - SG_ FrtRdrRdEdgRtCrvtConf : 55|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM_F_FO - SG_ FrtRdrRdEdgRtCrvt : 23|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM_F_FO - SG_ FLRRAddInfo4BurstID : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1088 F_Vision_Obj_Header_2: 8 VIS2_FO - SG_ FrntVsnInPthVehBrkNwSt : 35|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FrntVsnClostPedBrkNwSt : 39|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FrntVsnClostPedObjID : 29|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FrntVsnClostPedAlrtNwFlg : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrntVsnClostPedNotftnFlg : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrntVsnInPthVehAlrtNwFlg : 2|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnVldTgtNum2 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FrtVsnTmStmp2V : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnTmStmp2 : 10|11@0+ (1,0) [0|2047] "" EOCM_F_FO - SG_ FrtVsnRollCnt2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FrtVsnBrstChksum2 : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - -BO_ 854 F_Vision_Environment_7: 3 VIS2_FO - SG_ FwdVsnCnstrctAreaDst : 13|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnCnstrctZnDet : 15|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnEgoVehLnPos : 17|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnRdTypDet : 9|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnTunnlDetd : 23|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnTunnlDst : 21|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBrstID5 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 853 F_Vision_Environment_6: 8 VIS2_FO - SG_ LnMrkg4LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvtGrad : 47|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvt : 31|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBrstID4 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 852 F_Vision_Environment_5: 8 VIS2_FO - SG_ LnMrkg3LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvtGrad : 47|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvt : 31|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBrstID3 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 602 USDT_Req_to_RRSRR: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RRSRR_FO - -BO_ 1626 USDT_Resp_From_RRSRR: 8 RRSRR_FO - SG_ DgnInf_OBJ65A : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1370 UUDT_Resp_From_RRSRR: 8 RRSRR_FO - SG_ DgnInf_OBJ55A : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1536 RR_SRR_Trace_data: 8 RRSRR_FO - SG_ RRSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ RRSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ RRSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO - -BO_ 1210 RR_SRR_Object_Track10: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1209 RR_SRR_Object_Track9: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1208 RR_SRR_Object_Track8: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1207 RR_SRR_Object_Track7: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1206 RR_SRR_Object_Track6: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1205 RR_SRR_Object_Track5: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 262 LHT_AutoHighBeamAssistStatus_FO: 5 EOCM_F_FO - SG_ NtVsnSysEnbld : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO - SG_ VehMovState : 5|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO - SG_ NVSysPedDetCstReq : 2|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO - SG_ StrWhAngV : 8|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO,VIS_FO - SG_ StrWhAngMsk : 9|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ StrWhAng : 23|16@0- (0.0625,0) [-2048|2047.9375] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO,VIS_FO - SG_ RtTrnLmpAtv : 13|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ MpDataAvlbl : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ LftTrnLmpAtv : 11|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ HdlmpBmSelectStat : 33|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ BldUpArDet : 14|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ FrFogLmpsAct : 15|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO,VIS_FO - -BO_ 309 LHT_CameraObjConfirmation_FO: 1 VIS_FO - SG_ HiBmRecmnd : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ CtLghtDet : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 2034 CCP_Data_Transmission_Object_FO: 8 VIS2_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 2032 CCP_Command_Receive_Object_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" VIS2_FO - -BO_ 1362 F_Vis_Obj_Conf_CPS_1B: 8 EOCM_F_FO - SG_ FObjConfCPSTrkObjectIDB : 7|6@0+ (1,0) [0|63] "" VIS_FO - SG_ CPSVisConfLonPos1 : 20|12@0- (0.125,0) [-256|255.875] "m" VIS_FO - SG_ CPSVisConfLatPos1 : 15|10@0- (0.125,0) [-64|63.875] "m" VIS_FO - SG_ CPSVisConfChecksum : 50|11@0+ (1,0) [0|2047] "" VIS_FO - SG_ FObjConfCPSTrkRangeRate : 45|11@0- (0.125,0) [-128|127.875] "m/s" VIS_FO - SG_ CPSConfTimeStamp : 24|11@0+ (1,0) [0|2047] "ms" VIS_FO - SG_ CPSConfTimeStampV : 21|1@0+ (1,0) [0|1] "" VIS_FO - SG_ FObjConfCPSRollingTrkCnt : 1|2@0+ (1,0) [0|3] "" VIS_FO - -BO_ 1413 TOS_ACC_IDS: 5 EOCM_F_FO - SG_ TOS_ACC_IDSRollCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ TOS_ACC_IDSFuncState : 5|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ TOS_ACC_ID1 : 3|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ TOS_ACC_ID2 : 13|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ TOS_ACC_ID3 : 23|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ TOS_ACC_ID4 : 17|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ TOS_ACC_ID5 : 27|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ TOS_ACC_ID6 : 37|6@0+ (1,0) [0|63] "" Dummy_FO - -BO_ 1412 F_ACC_Target: 8 EOCM_F_FO - SG_ FACCTOSRollCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FACCTOSFuncState : 5|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FACCTOSLongPos : 3|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FACCTOSLatPos : 23|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FACCTOSMeasStat : 28|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FACCTOSLongVel : 26|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FACCTOSTrgtDecelFlg : 47|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FACCTOSDynProp : 46|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FACCTOSLatVel : 42|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FACCTOSRelLane : 63|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FACCTOSHiThrtID : 61|6@0+ (1,0) [0|63] "" Dummy_FO - -BO_ 1409 F_CPS_TOS_B: 8 EOCM_F_FO - SG_ CPSTOSObjType : 7|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ CPSTOSHiThrtPriNo : 60|5@0+ (1,0) [0|31] "" Dummy_FO - SG_ CPSTOSRelLongAcc : 53|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ CPSTOSConfAsmt : 21|12@0+ (1,0) [0|4095] "" Dummy_FO - SG_ CPSTOSNumCycTrkd : 4|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ CPSTOSTimeToColl : 1|12@0+ (0.025,0) [0|102.375] "s" Dummy_FO - SG_ CPSTOSClosestInPthVehRng : 47|10@0+ (0.25,0) [0|255.75] "m" Dummy_FO - SG_ CPSTOSClosestInPthObID : 37|6@0+ (1,0) [0|63] "m" Dummy_FO - SG_ CPSTOSMeasStat : 39|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ CPSTOSFuncState : 25|2@0+ (1,0) [0|3] "" Dummy_FO - -BO_ 1408 F_CPS_TOS_A: 8 EOCM_F_FO - SG_ CPSTOSLongPos : 7|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ CPSTOSLatPos : 11|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ CPSTOSLongVel : 16|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ CPSTOSDynProp : 37|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ CPSTOSLatVel : 34|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ CPSTOSARelLane : 63|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ CPSTOSHiThrtID : 61|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ CPSTOSHighestThreatObAsmt : 55|8@0+ (1,0) [0|255] "" Dummy_FO - -BO_ 1344 FLPEstimate: 8 EOCM_F_FO - SG_ FLPRollCount : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ NewLaneIndex : 5|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ VehPathInOK : 3|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LaneSnsInOK : 2|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ MapInOK : 1|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FWDObjFusInOK : 0|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LngthFrstSeg : 15|4@0+ (10,0) [0|150] "m" Dummy_FO - SG_ LngthScndSeg : 11|4@0+ (10,0) [0|150] "m" Dummy_FO - SG_ CurvFrstSeg : 23|13@0- (5E-005,0) [-0.2048|0.20475] "1/m" Dummy_FO - SG_ CurvScndSeg : 26|3@0- (0.001,0) [-0.004|0.003] "1/m" Dummy_FO - SG_ OffstLaneCntr : 39|8@0- (0.05,0) [-6.4|6.35] "m" Dummy_FO - SG_ TngntLaneHead : 47|8@0- (0.002,0) [-0.256|0.254] "m/m" Dummy_FO - SG_ LaneWidth : 55|8@0+ (0.05,0) [0|12.75] "m" Dummy_FO - SG_ FLPDataTimeStampV : 63|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FLPDataTimeStamp : 62|7@0+ (16,0) [0|2032] "ms" Dummy_FO - -BO_ 770 F_Fwd_Collision_Alert: 8 EOCM_F_FO - SG_ Vpath_Accel : 51|11@0- (0.125,0) [-128|127.875] "m/s^2" NVS_FO,Dummy_FO - SG_ FCA_Ra : 7|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FCA_Range : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FCA_AlertLevel : 44|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FCA_Alert_Sup : 31|16@0+ (1,0) [0|65535] "" Dummy_FO - SG_ FCAStatus : 46|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FCA_VehAhead : 47|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FCA_CPS_Alert : 42|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FCAChime : 41|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FCADiagOK : 40|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ NBSMS_Alert : 55|1@0+ (1,0) [0|1] "" Dummy_FO - -BO_ 1601 USDT_Resp_From_VIS: 8 VIS_FO - SG_ DgnInf_OBJ641 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1606 USDT_Resp_From_RFSRR: 8 RFSRR_FO - SG_ DgnInf_OBJ646 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1603 USDT_Resp_From_LFSRR: 8 LFSRR_FO - SG_ DgnInf_OBJ643 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1602 USDT_Resp_From_LRR: 8 LRR_FO - SG_ DgnInf_OBJ642 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1625 USDT_Resp_From_RSRR: 8 RSRR_FO - SG_ DgnInf_OBJ644 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1611 USDT_Resp_From_FEOCM_FO: 8 EOCM_F_FO - SG_ DgnInf_OBJ64B : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 768 F_Smgr_Vehicle_Motion: 8 EOCM_F_FO - SG_ SmgrMotRollAngle : 44|10@0- (0.1,0) [-51.2|51.1] "deg" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotRollAngleV : 0|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotChecksum : 50|11@0+ (1,0) [0|2047] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotPitchAngle : 39|11@0- (0.1,0) [-102.4|102.3] "deg" CIPM_FO,NVS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotPitchAngleV : 1|1@0+ (1,0) [0|1] "" CIPM_FO,NVS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotLongSpeedV : 2|1@0+ (1,0) [0|1] " " CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotLongSpeed : 18|11@0- (0.1,0) [-102.4|102.3] "m/s" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotYawRate : 14|12@0- (0.05,0) [-102.4|102.35] "deg/s" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotYawRateV : 15|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - SG_ SmgrMotRollingCnt : 4|2@0+ (1,0) [0|3] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO - -BO_ 1350 UUDT_Resp_From_RFSRR: 8 RFSRR_FO - SG_ DgnInf_OBJ546 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1369 UUDT_Resp_From_RSRR: 8 RSRR_FO - SG_ DgnInf_OBJ544 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1347 UUDT_Resp_From_LFSRR: 8 LFSRR_FO - SG_ DgnInf_OBJ543 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1346 UUDT_Resp_From_LRR: 8 LRR_FO - SG_ DgnInf_OBJ542 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1345 UUDT_Resp_From_VIS: 8 VIS_FO - SG_ DgnInf_OBJ541 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 579 USDT_Req_to_LFSRR: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LFSRR_FO - -BO_ 577 USDT_Req_to_VIS: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" VIS_FO - -BO_ 578 USDT_Req_to_LRR: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LRR_FO - -BO_ 582 USDT_Req_to_RFSRR: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RFSRR_FO - -BO_ 601 USDT_Req_to_RSRR: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RSRR_FO - -BO_ 1355 UUDT_Resp_From_FEOCM_FO: 8 EOCM_F_FO - SG_ DgnInf_OBJ54B : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 587 USDT_Req_to_FEOCM_obj: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2A_K2_FO,EOCM_F_FO - -BO_ 784 Body_Info_FOB: 6 EOCM_F_FO - SG_ StrgColUpDwnPos : 39|8@0+ (1,0) [0|255] "" DMS_FO - SG_ CPMAPINFO4 : 47|1@0+ (1,0) [0|1] "" DMS_FO - SG_ StrgColInOutPos : 31|8@0+ (1,0) [0|255] "" DMS_FO - SG_ StrgColCommsFlt : 19|2@0+ (1,0) [0|3] "" DMS_FO - SG_ DrDoorOpenSwActV : 16|1@0+ (1,0) [0|1] "" DMS_FO - SG_ DrDoorOpenSwAct : 17|1@0+ (1,0) [0|1] "" DMS_FO - SG_ DrvWndPosStat : 22|3@0+ (1,0) [0|7] "" CIPM_FO,DMS_FO,VIS2_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ InterLghtStat : 23|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,VIS2_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ DrvrHndsOnWhlZn3 : 13|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,DMS_FO,VIS2_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ DrvrHndsOnWhlZn2 : 14|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,VIS2_FO - SG_ DrvrHndsOnWhlZn1 : 15|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,VIS2_FO - SG_ WSWshSwAtv : 11|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,VIS_FO,VIS2_FO - SG_ SysPwrMdV : 8|1@0+ (1,0) [0|1] "" NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO,LRSRR_FO,CIPM_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,VIS2_FO - SG_ SysPwrMd : 10|2@0+ (1,0) [0|3] "" NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO,LRSRR_FO,CIPM_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,VIS2_FO - SG_ WSWprAct : 2|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ RtLwBmFld : 4|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ OtsdAmbtLtLvlStatV : 5|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ OtsdAmbtLtLvlStat : 7|2@0+ (1,0) [0|3] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ LowBmAct : 1|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ LftLwBmFld : 3|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ HighBmAct : 0|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO - SG_ TrStLgMdAtv : 12|1@0+ (1,0) [0|1] "" CIPM_FO,NVS_FO,RRSRR_FO,LRSRR_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,LRR_FO,RFSRR_FO,LFSRR_FO,RSRR_FO,VIS_FO,VIS2_FO - -BO_ 1539 RF_SRR_Trace_Data: 8 RFSRR_FO - SG_ RFSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ RFSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ RFSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO - -BO_ 776 F_Vehicle_Path_Data_2: 7 EOCM_F_FO - SG_ Vpath_Data2ModeInfo : 44|2@0+ (1,0) [0|3] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath2_Checksum : 42|11@0+ (1,0) [0|2047] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RFSRR_FO,LFSRR_FO,RSRR_FO,LRR_FO - SG_ Vpath_Data2RollCnt : 46|2@0+ (1,0) [0|3] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2YawRateV : 2|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2LongVelV : 1|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,NVS_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2LatVelV : 47|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2TravlDirctn : 4|2@0+ (1,0) [0|3] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2LongVel : 15|12@0- (0.0625,0) [-128|127.9375] "m/s" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,NVS_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2YawRate : 19|12@0- (0.0625,0) [-128|127.9375] "deg/s" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_Data2LatVel : 39|8@0- (0.05,0) [-6.4|6.35] "m/s" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - -BO_ 161 F_Master_Time_Sync: 7 EOCM_F_FO - SG_ FTimeSyncMstrChksm : 35|12@0+ (1,0) [0|4095] "" AMM_FO,CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ FTimeSyncMstrClock : 7|32@0+ (1,0) [0|4294967295] "ms" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ SensorModeCmdLRR : 39|3@0+ (1,0) [0|7] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ SensorModeCmdSRR : 50|3@0+ (1,0) [0|7] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ SensorModeCmdFCamera : 53|3@0+ (1,0) [0|7] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ FTimeSyncMstrClockV : 36|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,LRR_FO,RFSRR_FO,LFSRR_FO - -BO_ 774 F_Vehicle_Path_Estimate: 8 EOCM_F_FO - SG_ Vpath_RollingCount : 7|2@0+ (1,0) [0|3] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_TrnCtrLngOfstV : 1|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,LRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LFSRR_FO - SG_ Vpath_Checksum : 50|11@0+ (1,0) [0|2047] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_TrnCtrLngOfst : 15|8@0- (0.1,0) [-12.8|12.7] "m" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,LRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LFSRR_FO - SG_ Vpath_TrnCtrLatOfst : 21|14@0- (1,0) [-8192|8191] "m" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,LRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LFSRR_FO - SG_ Vpath_Curvature : 39|16@0- (1E-005,0) [-0.32768|0.32767] "1/m" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO - SG_ Vpath_CurvatureV : 0|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,LRR_FO,RSRR_FO,RFSRR_FO,LFSRR_FO - -BO_ 848 F_Vision_Environment: 8 VIS_FO - SG_ FwdVsnEnvIllum : 37|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnRtV : 1|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnRt : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnChngStatus : 39|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseSystemOK : 4|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSnsLLnPosValid : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSenseDistToLLnEdge : 14|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsRLnPosValid : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsDistToRLnEdge : 22|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseTimeStampV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseTimeStamp : 34|11@0+ (1,0) [0|2047] "ms" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseSystemOKV : 3|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 849 F_Vision_Environment_2: 8 VIS_FO - SG_ LnSnsLatVRelToRgtMrkg : 23|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ LnSnsRtLnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntRtV : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnMrkgWdthRt : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsRtAnchrLn : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtAnchrLn : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrRghtV : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrRght : 47|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntRt : 31|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstID : 2|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLatVRelToLftMrkg : 15|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 1184 R_SRR_Object_Header: 8 RSRR_FO - SG_ RSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ RSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ RSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - SG_ RSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1185 R_SRR_Object_Track1: 8 RSRR_FO - SG_ RSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1186 R_SRR_Object_Track2: 8 RSRR_FO - SG_ RSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1187 R_SRR_Object_Track3: 8 RSRR_FO - SG_ RSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1188 R_SRR_Object_Track4: 8 RSRR_FO - SG_ RSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1189 R_SRR_Object_Track5: 8 RSRR_FO - SG_ RSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1190 R_SRR_Object_Track6: 8 RSRR_FO - SG_ RSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1191 R_SRR_Object_Track7: 8 RSRR_FO - SG_ RSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1192 R_SRR_Object_Track8: 8 RSRR_FO - SG_ RSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1193 R_SRR_Object_Track9: 8 RSRR_FO - SG_ RSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1194 R_SRR_Object_Track10: 8 RSRR_FO - SG_ RSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1410 RVB_TVR_Debug: 6 EOCM_F_FO - SG_ VBBrkRqActv : 7|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ PATOSTTC : 37|12@0+ (0.025,0) [0|102.375] "s" Dummy_FO - SG_ BWTOSObjID : 27|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ BWTOSLonPstn : 23|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ VBSwInd : 10|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ VBBrkCtrlSt : 15|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ BrkPlsRqst : 6|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VBOpSt : 12|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ VBAccelOvrrd : 0|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VBUnavail : 1|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VBFld : 2|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VBDisbld : 3|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VBEnbl : 4|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VBBrkPrfReq : 5|1@0+ (1,0) [0|1] "" Dummy_FO - -BO_ 1216 LF_SRR_Object_Header: 8 LFSRR_FO - SG_ LFSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ LFSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ LFSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - SG_ LFSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ LFSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1217 LF_SRR_Object_Track1: 8 LFSRR_FO - SG_ LFSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1218 LF_SRR_Object_Track2: 8 LFSRR_FO - SG_ LFSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1219 LF_SRR_Object_Track3: 8 LFSRR_FO - SG_ LFSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1220 LF_SRR_Object_Track4: 8 LFSRR_FO - SG_ LFSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1221 LF_SRR_Object_Track5: 8 LFSRR_FO - SG_ LFSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1222 LF_SRR_Object_Track6: 8 LFSRR_FO - SG_ LFSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1223 LF_SRR_Object_Track7: 8 LFSRR_FO - SG_ LFSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1224 LF_SRR_Object_Track8: 8 LFSRR_FO - SG_ LFSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1225 LF_SRR_Object_Track9: 8 LFSRR_FO - SG_ LFSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1226 LF_SRR_Object_Track10: 8 LFSRR_FO - SG_ LFSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ LFSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ LFSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ LFSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ LFSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ LFSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ LFSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ LFSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - -BO_ 1232 RF_SRR_Object_Header: 8 RFSRR_FO - SG_ RFSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RFSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ RFSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ RFSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - SG_ RFSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1233 RF_SRR_Object_Track1: 8 RFSRR_FO - SG_ RFSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1234 RF_SRR_Object_Track2: 8 RFSRR_FO - SG_ RFSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1235 RF_SRR_Object_Track3: 8 RFSRR_FO - SG_ RFSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1236 RF_SRR_Object_Track4: 8 RFSRR_FO - SG_ RFSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1237 RF_SRR_Object_Track5: 8 RFSRR_FO - SG_ RFSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1238 RF_SRR_Object_Track6: 8 RFSRR_FO - SG_ RFSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1239 RF_SRR_Object_Track7: 8 RFSRR_FO - SG_ RFSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1240 RF_SRR_Object_Track8: 8 RFSRR_FO - SG_ RFSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1241 RF_SRR_Object_Track9: 8 RFSRR_FO - SG_ RFSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1242 RF_SRR_Object_Track10: 8 RFSRR_FO - SG_ RFSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RFSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RFSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RFSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RFSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RFSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RFSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RFSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RFSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1056 F_Vision_Obj_Header: 6 VIS_FO - SG_ FVsnSnsrBlckd : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ ClstInPathVehObjID : 30|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FrtVsnFld : 6|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnIniDiagSuccCmpt : 5|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnSrvAlgnInPrcs : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnUnvlbl : 7|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVISModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FVisionNumValidTrgts : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FVisionTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ VISBurstChecksum : 39|16@0+ (1,0) [0|65535] "" EOCM_F_FO - -BO_ 1057 F_Vision_Obj_Track_1: 8 VIS_FO - SG_ FwdVsnRngTrk1Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk1Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr1Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk1 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisBurstIDTrk1 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk1 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk1 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk1 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk1 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ ObjDirTrk1 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1058 F_Vision_Obj_Track_2: 8 VIS_FO - SG_ FwdVsnVertPosTrk2 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk2Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk2Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ ObjDirTrk2 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FwdVsnObjTypTr2Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FVisBurstIDTrk2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk2 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk2 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk2 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk2 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1059 F_Vision_Obj_Track_3: 8 VIS_FO - SG_ FwdVsnVertPosTrk3 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk3Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk3Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr3Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk3 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk3 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk3 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk3 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk3 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk3 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1060 F_Vision_Obj_Track_4: 8 VIS_FO - SG_ FwdVsnVertPosTrk4 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisionMeasStatTrk4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk4 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FwdVsnRngTrk4Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk4Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr4Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FVisBurstIDTrk4 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk4 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ ObjDirTrk4 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionConfTrk4 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk4 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1061 F_Vision_Obj_Track_5: 8 VIS_FO - SG_ FwdVsnVertPosTrk5 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk5Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk5Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr5Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk5 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk5 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk5 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk5 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk5 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk5 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1062 F_Vision_Obj_Track_6: 8 VIS_FO - SG_ FwdVsnVertPosTrk6 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk6Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk6Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr6Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk6 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk6 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk6 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk6 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk6 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk6 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1538 LF_SRR_Trace_Data: 8 LFSRR_FO - SG_ LFSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ LFSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ LFSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO - -BO_ 1537 R_SRR_Trace_data: 8 RSRR_FO - SG_ RSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ RSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO - SG_ RSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO - -BO_ 1089 F_Vision_Obj_Track_7: 8 VIS2_FO - SG_ FVisBurstIDTrk7 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk7 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk7 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk7 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk7 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FwdVsnRngTrk7Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnObjTypTr7Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk7Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnVertPosTrk7 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ ObjDirTrk7 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1090 F_Vision_Obj_Track_8: 8 VIS2_FO - SG_ FVisBurstIDTrk8 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk8 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk8Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnVertPosTrk8 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk8Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnObjTypTr8Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk8 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionConfTrk8 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk8 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk8 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1091 F_Vision_Obj_Track_9: 8 VIS2_FO - SG_ FwdVsnVertPosTrk9 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk9Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk9Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr9Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk9 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk9 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk9 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk9 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk9 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk9 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1092 F_Vision_Obj_Track_10: 8 VIS2_FO - SG_ FwdVsnRngTrk10Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk10Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr10Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk10 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ ObjDirTrk10 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk10 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk10 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk10 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk10 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk10 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1120 F_LRR_Obj_Header: 8 LRR_FO - SG_ FLRRRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRModeCmdFdbk : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRNumValidTargets : 20|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ FLRRTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRTimeStamp : 2|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ FLRRRoadTypeInfo : 5|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - SG_ FLRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRLonVelPlsblityFlt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRYawRtPlsblityFlt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRTunlDtctd : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1121 F_LRR_Obj_Track_1: 8 LRR_FO - SG_ FLRRTrk1BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk1Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk1RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk1RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk1DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk1Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk1Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk1MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk1ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FLRRTrk1Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1122 F_LRR_Obj_Track_2: 8 LRR_FO - SG_ FLRRTrk2BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk2Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk2RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk2RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk2DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk2Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk2Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk2MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk2ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FLRRTrk2Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1123 F_LRR_Obj_Track_3: 8 LRR_FO - SG_ FLRRTrk3BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk3Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk3RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk3RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk3DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk3Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk3Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk3MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk3ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FLRRTrk3Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1124 F_LRR_Obj_Track_4: 8 LRR_FO - SG_ FLRRTrk4BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk4Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk4RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk4RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk4DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk4Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk4Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk4MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk4ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FLRRTrk4Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1125 F_LRR_Obj_Track_5: 8 LRR_FO - SG_ FLRRTrk5BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk5Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk5RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk5RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk5DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk5Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk5Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk5MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk5ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FLRRTrk5Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1126 F_LRR_Obj_Track_6: 8 LRR_FO - SG_ FLRRTrk6BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk6Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk6RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk6Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk6RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk6DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk6Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk6Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk6MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk6ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1127 F_LRR_Obj_Track_7: 8 LRR_FO - SG_ FLRRTrk7Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk7BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk7Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk7RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk7RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk7DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk7Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk7Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk7MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk7ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1128 F_LRR_Obj_Track_8: 8 LRR_FO - SG_ FLRRTrk8Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk8BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk8Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk8RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk8RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk8DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk8Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk8Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk8MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk8ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1129 F_LRR_Obj_Track_9: 8 LRR_FO - SG_ FLRRTrk9Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk9BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk9Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk9RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk9RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk9DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk9Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk9Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk9MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk9ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1130 F_LRR_Obj_Track_10: 8 LRR_FO - SG_ FLRRTrk10Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk10BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk10Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk10RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk10RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk10DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk10Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk10Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk10MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk10ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1131 F_LRR_Obj_Track_11: 8 LRR_FO - SG_ FLRRTrk11Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk11BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk11Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk11RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk11RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk11DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk11Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk11Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk11MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk11ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1132 F_LRR_Obj_Track_12: 8 LRR_FO - SG_ FLRRTrk12Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk12BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk12Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk12RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk12RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk12DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk12Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk12Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk12MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk12ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1133 F_LRR_Obj_Track_13: 8 LRR_FO - SG_ FLRRTrk13Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk13BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk13Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk13RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk13RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk13DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk13Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk13Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk13MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk13ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1134 F_LRR_Obj_Track_14: 8 LRR_FO - SG_ FLRRTrk14Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk14BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk14Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk14RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk14RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk14DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk14Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk14Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk14MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk14ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1135 F_LRR_Obj_Track_15: 8 LRR_FO - SG_ FLRRTrk15Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk15MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk15Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk15ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FLRRTrk15BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk15Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk15RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk15RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk15DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk15Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - -BO_ 1136 F_LRR_Obj_Track_16: 8 LRR_FO - SG_ FLRRTrk16Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk16BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk16Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk16RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk16RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk16DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk16Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk16Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk16MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk16ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1137 F_LRR_Obj_Track_17: 8 LRR_FO - SG_ FLRRTrk17Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk17BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk17Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk17RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk17RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk17DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk17Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk17Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk17MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk17ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1138 F_LRR_Obj_Track_18: 8 LRR_FO - SG_ FLRRTrk18Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk18BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk18Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk18RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk18RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk18DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk18Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk18Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk18MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk18ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1139 F_LRR_Obj_Track_19: 8 LRR_FO - SG_ FLRRTrk19Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk19BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk19Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk19RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk19RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk19DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk19Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk19Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk19MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk19ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1140 F_LRR_Obj_Track_20: 8 LRR_FO - SG_ FLRRTrk20Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk20BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk20Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO - SG_ FLRRTrk20RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ FLRRTrk20RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO - SG_ FLRRTrk20DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk20Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO - SG_ FLRRTrk20Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FLRRTrk20MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk20ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1141 Long_Range_Radar_add_Info_1: 8 LRR_FO - SG_ FLRRAddInfo1BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ Cut_In_Out_Pot_Objtrk1 : 15|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO - SG_ ObjLossInfoObjTrk1 : 9|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ Cut_In_Out_Pot_Objtrk2 : 23|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO - SG_ ObjLossInfoObjTrk2 : 17|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ Cut_In_Out_Pot_Objtrk3 : 31|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO - SG_ ObjLossInfoObjTrk3 : 25|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ Cut_In_Out_Pot_Objtrk4 : 39|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO - SG_ ObjLossInfoObjTrk4 : 33|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ Cut_In_Out_Pot_Objtrk5 : 47|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO - SG_ ObjLossInfoObjTrk5 : 41|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ Cut_In_Out_Pot_Objtrk6 : 55|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO - SG_ ObjLossInfoObjTrk6 : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1321 F_Fwd_Fus_Obj_TrackB_9: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn9 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB9RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB9Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB9MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB9DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB9RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB9RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB9Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB9ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB9ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB9ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB9ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB9ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB9ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB9NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB9LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB9LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1320 F_Fwd_Fus_Obj_TrackB_8: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn8 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB8RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB8Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB8MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB8DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB8RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB8RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB8Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB8ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB8ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB8ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB8ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB8ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB8ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB8NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB8LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB8LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1319 F_Fwd_Fus_Obj_TrackB_7: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn7 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB7RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB7Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB7MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB7DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB7RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB7RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB7Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB7ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB7ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB7ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB7ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB7ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB7ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB7NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB7LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB7LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1318 F_Fwd_Fus_Obj_TrackB_6: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn6 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB6RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB6Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB6MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB6DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB6RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB6RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB6Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB6ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB6ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB6ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB6ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB6ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB6ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB6NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB6LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB6LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1317 F_Fwd_Fus_Obj_TrackB_5: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn5 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB5RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB5Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB5MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB5DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB5RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB5RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB5Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB5ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB5ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB5ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB5ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB5ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB5ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB5NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB5LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB5LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1316 F_Fwd_Fus_Obj_TrackB_4: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn4 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB4RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB4Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB4MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB4DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB4RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB4RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB4Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB4ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB4ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB4ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB4ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB4ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB4ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB4NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB4LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB4LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1315 F_Fwd_Fus_Obj_TrackB_3: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn3 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB3RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB3Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB3MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB3DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB3RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB3RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB3Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB3ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB3ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB3ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB3ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB3ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB3ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB3NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB3LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB3LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1314 F_Fwd_Fus_Obj_TrackB_2: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn2 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB2RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB2Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB2MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB2DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB2RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB2RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB2Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB2ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB2ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB2ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB2ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB2ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB2ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB2NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB2LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB2LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1327 F_Fwd_Fus_Obj_TrackB_15: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn15 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB15RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB15Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB15MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB15DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB15RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB15RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB15Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB15ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB15ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB15ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB15ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTkB15ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB15ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB15NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB15LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB15LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1326 F_Fwd_Fus_Obj_TrackB_14: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn14 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB14RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB14Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB14MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB14DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB14RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB14RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB14Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB14ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB14ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB14ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB14ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB14ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB14ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB14NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB14LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB14LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1325 F_Fwd_Fus_Obj_TrackB_13: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn13 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB13RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB13Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB13MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB13DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB13RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB13RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB13Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB13ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB13ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB13ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB13ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB13ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB13ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB13NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB13LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB13LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1324 F_Fwd_Fus_Obj_TrackB_12: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn12 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB12RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB12Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB12MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB12DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB12RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB12RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB12Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB12ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB12ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB12ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB12ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB12ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB12ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB12NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB12LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB12LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1323 F_Fwd_Fus_Obj_TrackB_11: 7 EOCM_F_FO - SG_ FwdFusTrkB11DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB11RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB11RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB11Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB11ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB11ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB11ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB11ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB11ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB11ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB11NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB11LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB11LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkBAnlgRlLn11 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB11RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB11Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB11MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - -BO_ 1322 F_Fwd_Fus_Obj_TrackB_10: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn10 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB10RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB10Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB10MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB10DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB10RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB10RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB10Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB10ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB10ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB10ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB10ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB10ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB10ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB10NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB10LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB10LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1313 F_Fwd_Fus_Obj_TrackB_1: 7 EOCM_F_FO - SG_ FwdFusTrkBAnlgRlLn1 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO - SG_ FwdFusTrkB1RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB1Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FwdFusTrkB1MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkB1DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB1RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO - SG_ FwdFusTrkB1RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkB1Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO - SG_ FFusTrkB1ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB1ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB1ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB1ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FFusTrkB1ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB1ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FwdFusTrkB1NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB1LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkB1LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1305 F_Fwd_Fus_Obj_TrackA_9: 8 EOCM_F_FO - SG_ FwdFusTrkA9RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA9ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA9MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA9LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA9RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA9Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA9LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA9RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA9MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA9ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1304 F_Fwd_Fus_Obj_TrackA_8: 8 EOCM_F_FO - SG_ FwdFusTrkA8RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA8ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA8MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA8LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA8RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA8Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA8LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA8RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA8MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA8ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1303 F_Fwd_Fus_Obj_TrackA_7: 8 EOCM_F_FO - SG_ FwdFusTrkA7RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA7ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA7MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA7LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA7RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA7Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA7LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA7RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA7MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA7ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1302 F_Fwd_Fus_Obj_TrackA_6: 8 EOCM_F_FO - SG_ FwdFusTrkA6RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA6ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA6MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA6LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA6RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA6Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA6LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA6RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA6MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA6ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1301 F_Fwd_Fus_Obj_TrackA_5: 8 EOCM_F_FO - SG_ FwdFusTrkA5RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA5ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA5MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA5LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA5RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA5Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA5LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA5RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA5MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA5ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1300 F_Fwd_Fus_Obj_TrackA_4: 8 EOCM_F_FO - SG_ FwdFusTrkA4RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA4ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA4MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA4LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA4RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA4Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA4LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA4RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA4MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA4ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1299 F_Fwd_Fus_Obj_TrackA_3: 8 EOCM_F_FO - SG_ FwdFusTrkA3RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA3ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA3MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA3LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA3RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA3Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA3LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA3RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA3MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA3ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1298 F_Fwd_Fus_Obj_TrackA_2: 8 EOCM_F_FO - SG_ FwdFusTrkA2RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA2ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA2MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA2LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA2RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA2Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA2LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA2RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA2MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA2ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1311 F_Fwd_Fus_Obj_TrackA_15: 8 EOCM_F_FO - SG_ FwdFusTrkA15RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA15ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA15MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA15LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA15RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA15Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA15LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA15RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA15MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA15ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1310 F_Fwd_Fus_Obj_TrackA_14: 8 EOCM_F_FO - SG_ FwdFusTrkA14RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA14ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA14MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA14LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA14RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA14Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA14LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA14RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA14MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA14ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1309 F_Fwd_Fus_Obj_TrackA_13: 8 EOCM_F_FO - SG_ FwdFusTrkA13RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA13ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA13MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA13LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA13RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA13Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA13LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA13RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA13MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA13ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1308 F_Fwd_Fus_Obj_TrackA_12: 8 EOCM_F_FO - SG_ FwdFusTrkA12RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA12ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA12MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA12LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA12RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA12Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA12LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA12RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA12MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA12ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1307 F_Fwd_Fus_Obj_TrackA_11: 8 EOCM_F_FO - SG_ FwdFusTrkA11ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA11MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA11LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA11RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA11Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA11LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA11RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA11MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA11ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - SG_ FwdFusTrkA11RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - -BO_ 1306 F_Fwd_Fus_Obj_TrackA_10: 8 EOCM_F_FO - SG_ FwdFusTrkA10RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA10ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA10MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA10LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA10RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA10Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA10LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA10RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA10MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA10ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1297 F_Fwd_Fus_Obj_TrackA_1: 8 EOCM_F_FO - SG_ FwdFusTrkA1RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA1ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ FwdFusTrkA1MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ FwdFusTrkA1LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - SG_ FwdFusTrkA1RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA1Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA1LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ FwdFusTrkA1RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO - SG_ FwdFusTrkA1MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ FwdFusTrkA1ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 1296 F_Fwd_Fus_Obj_Header: 7 EOCM_F_FO - SG_ F_FusHeadRollingCount : 7|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ F_FusHeadFuncState : 5|2@0+ (1,0) [0|3] "" Dummy_FO - SG_ F_FusHedNmValTargts : 3|4@0+ (1,0) [0|15] "" Dummy_FO - SG_ F_FusHead_LrrOK : 15|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHead_LFSRROK : 14|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHead_VIsOK : 13|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHead_MapDataOK : 12|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHeadTimStmpV : 11|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHeadTimStmp : 10|11@0+ (1,0) [0|2047] "ms" Dummy_FO - SG_ F_FusHead_LCSRROK : 31|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHead_RCSRROK : 30|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHead_RFSRROK : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ F_FusHed_ObjClstrCurv : 28|13@0- (5E-005,0) [-0.2048|0.20475] "1/m" Dummy_FO - SG_ F_FusHdObjClstTanHdng : 47|8@0- (0.002,0) [-0.256|0.254] "m/m" Dummy_FO - SG_ RoadTypeInfo : 55|3@0+ (1,0) [0|7] "" Dummy_FO - -BO_ 257 USDT_Req_to_All_FO_ECUs: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LRSRR_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2A_K2_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K1_FO,NVS_FO,CIPM_FO,VIS2_FO,RRSRR_FO,VIS_FO,RFSRR_FO,LRR_FO,LFSRR_FO,RSRR_FO,EOCM_F_FO - -BO_ 584 USDT_Req_to_6DOFIMU2_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" _DOFIMU2_FO - -BO_ 1348 UUDT_Resp_From_6DOFIMU1_FO: 8 _DOFIMU1_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1604 USDT_Resp_From_6DOFIMU1_FO: 8 _DOFIMU1_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 580 USDT_Req_to_6DOFIMU1_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" _DOFIMU1_FO - -BO_ 1349 UUDT_Resp_From_DMS_FO: 8 DMS_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1605 USDT_Resp_From_DMS_FO: 8 DMS_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 581 USDT_Req_to_DMS_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" DMS_FO - -BO_ 1372 UUDT_Resp_From_AMM_FO: 8 AMM_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1628 USDT_Resp_From_AMM_FO: 8 AMM_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 604 USDT_Req_to_AMM_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" AMM_FO - -BO_ 1622 USDT_Resp_From_EOCM2B_IMX6_FO: 8 EOCM2B_IMX6_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 1366 UUDT_Resp_From_EOCM2B_IMX6_FO: 8 EOCM2B_IMX6_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO - -BO_ 598 USDT_Req_to_EOCM2B_IMX6_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2B_IMX6_FO - -BO_ 590 USDT_Req_to_Free_4E_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Vector__XXX - -BO_ 1338 VPDR_Debug: 8 EOCM_F_FO - SG_ FrtRWARateDiagFA : 43|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FrtRWABiasDiagFA : 42|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ HWAFrtVal : 41|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ HWADotValFrt : 40|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAxRangeFA : 39|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAxRateFA : 38|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAxBiasFA : 37|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehAxCompFA : 36|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAxVal : 35|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAxVal : 34|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FrtRWACorrFA : 33|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FrtRWARangeDiagFA : 32|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAyBiasFA : 31|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehAyCompFA : 30|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAyVal : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAyVal : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehAxCorrFA : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAxRangeFA : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAxRateFA : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAxBiasFA : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehWzVal : 23|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehWzVal : 22|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehAyCorrDiagFA : 21|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAyRangeFA : 20|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAyRateFA : 19|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehAyBiasFA : 18|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAyRangeFA : 17|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehAyRateFA : 16|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehWzCorrDiagFA : 15|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehWzRangeFA : 14|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehWzRateFA : 13|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S1VehWzBiasFA : 12|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehWzRangeFA : 11|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehWzRateFA : 10|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ S2VehWzBiasFA : 9|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehWzCompFA : 8|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlVxLFCorrDiagFA : 7|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlVxRFCorrDiagFA : 6|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlVxLRCorrDiagFA : 5|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlVxRRCorrDiagFA : 4|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlLFVal : 3|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlRFVal : 2|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlLRVal : 1|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ WhlRRVal : 0|1@0+ (1,0) [0|1] "" Dummy_FO - -BO_ 1328 Diag_Debug1: 8 EOCM_F_FO - SG_ AlrtWrnIndReqFP : 1|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AlrtWrnIndReqFA : 0|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILRSRRSnsr_FP : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILRSRRSnsr_FA : 23|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILRSRRFrehns_FA : 22|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathEstCrvCSFP : 21|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathEstCrvCSFA : 20|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathWzEstCSFP : 19|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathWzEstCSFA : 18|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathVyEstCSFP : 17|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathVyEstCSFA : 16|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathVxEstCSFP : 15|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VehPathVxEstCSFA : 14|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTTCCSFP : 13|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTTCCSFA : 12|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLyCSFP : 11|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLyCSFA : 10|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThLxVxAxCSFP : 9|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThLxVxAxCSFA : 8|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ CurSetValDiagFP : 7|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ CurSetValDiagFA : 6|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ CrsAltDvrSlTpDiagFP : 5|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ CrsAltDvrSlTpDiagFA : 4|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FCAStatDiagFP : 3|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FCAStatDiagFA : 2|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBBrkCtrlStFP : 62|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBBrkCtrlStFA : 61|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBOpStFP : 60|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBOpStFA : 59|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBBrkCtrlAccFP : 58|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBBrkCtrlAccFA : 57|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBAxlTrqRqFP : 56|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ RVBAxlTrqRqFA : 55|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRUPATTCFP : 54|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRUPATTCFA : 53|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtObjIDFP : 52|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtObjIDFA : 51|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtTTCFP : 50|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtTTCFA : 49|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtLxFP : 48|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtLxFA : 47|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtLyFP : 46|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TVRHiThrtLyFA : 45|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFFuncStFP : 44|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFFuncStFA : 43|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFObjIDFP : 42|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFObjIDFA : 41|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFLatPstnVelRatFP : 40|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFLatPstnVelRatFA : 39|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFLonPstnVelFP : 38|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFLonPstnVelFA : 37|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFRltvLatVelDiagFP : 36|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFRltvLatVelDiagFA : 35|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFRltvLatPstnDiagFP : 34|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFRltvLatPstnDiagFA : 33|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFNrRltvLonPstnFP : 32|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFNrRltvLonPstnFA : 31|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFLonPstnVelRatFP : 30|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFLonPstnVelRatFA : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFConfDiagFP : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFConfDiagFA : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFRltvLnDiagFP : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ROFRltvLnDiagFA : 25|1@0+ (1,0) [0|1] "" Dummy_FO - -BO_ 1335 Diag_Debug3: 8 EOCM_F_FO - SG_ BrkSysCmdAxDiagFPQ : 63|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ BrkSysCmdAxDiagFAQ : 62|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AxleTorqReqDiagFPQ : 61|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AxleTorqReqDiagFAQ : 60|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AutoBrkTypeDiagFPQ : 59|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AutoBrkTypeDiagFAQ : 58|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTTCFPQ : 57|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTTCFAQ : 56|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTmpMemFPQ : 55|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTmpMemFAQ : 54|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLxVxAxFPQ : 53|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLxVxAxFAQ : 52|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtVyFPQ : 51|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtVyFAQ : 50|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLyFPQ : 49|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLyFAQ : 48|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtConPriFPQ : 47|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtConPriFAQ : 46|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtCJLFPQ : 45|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtCJLFAQ : 44|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPDynPropDiagFPQ : 43|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPDynPropDiagFAQ : 42|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRdTypInfoFPQ : 41|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRdTypInfoFAQ : 40|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRltvLnDiagFPQ : 39|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRltvLnDiagFAQ : 38|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumCycDiagFPQ : 37|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumCycDiagFAQ : 36|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumFusCyclsFPQ : 35|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumFusCyclsFAQ : 34|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNrRltvLonPstnFPQ : 33|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNrRltvLonPstnFAQ : 32|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonVelAccRatFPQ : 31|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonVelAccRatFAQ : 30|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPstnVelRatFPQ : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPstnVelRatFAQ : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPosVelAccFPQ : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPosVelAccFAQ : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatVelDiagFPQ : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatVelDiagFAQ : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatPstnDiagFPQ : 23|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatPstnDiagFAQ : 22|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFConfDiagFPQ : 21|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFConfDiagFAQ : 20|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFOvrlpRtlChk_FAQ : 19|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFOvrlpRtlChk_FAQ : 18|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRROvrlpRtlChk_FAQ : 17|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISOvrlpRtlChk_FAQ : 16|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISAlign_FAQ : 15|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISSnsr_FAQ : 14|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISSnsr_FPQ : 13|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISFrshns_FAQ : 12|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRAlign_FAQ : 11|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRFrshns_FAQ : 10|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRSnsr_FAQ : 9|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRSnsr_FPQ : 8|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRAlign_FAQ : 7|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRFrehns_FAQ : 6|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRSnsr_FAQ : 5|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRSnsr_FPQ : 4|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRSnsr_FPQ : 3|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRSnsr_FAQ : 2|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRFrshns_FAQ : 1|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRAlign_FAQ : 0|1@0+ (1,0) [0|1] "" Dummy_FO - -BO_ 1331 Diag_Debug2: 8 EOCM_F_FO - SG_ TCPHiThrtTmpMemFP : 63|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTmpMemFA : 62|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtConPriFP : 61|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtConPriFA : 60|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtCJLFP : 59|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTTCFP : 58|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtTTCFA : 57|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtVyFP : 56|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtVyFA : 55|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLyFP : 54|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLyFA : 53|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLxVxAxFP : 52|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtLxVxAxFA : 51|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRdTypInfoFP : 50|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRdTypInfoFA : 49|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AutoBrkTypeDiagFA : 48|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ BrkSysCmdAxDiagFP : 47|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ BrkSysCmdAxDiagFA : 46|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AxleTorqReqDiagFP : 45|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AxleTorqReqDiagFA : 44|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPDynPropDiagFP : 43|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPDynPropDiagFA : 42|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ TCPHiThrtCJLFA : 41|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumFusCyclsFP : 40|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ AutoBrkTypeDiagFP : 39|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumFusCyclsFA : 38|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatVelDiagFP : 37|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatVelDiagFA : 36|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatPstnDiagFP : 35|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLatPstnDiagFA : 34|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumCycDiagFP : 33|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNumCycDiagFA : 32|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRltvLnDiagFP : 31|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFRltvLnDiagFA : 30|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFConfDiagFP : 29|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFConfDiagFA : 28|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonVelAccRatFP : 27|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonVelAccRatFA : 26|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPstnVelRatFP : 25|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPstnVelRatFA : 24|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNrRltvLonPstnFP : 23|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFNrRltvLonPstnFA : 22|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPosVelAccFP : 21|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ FOFLonPosVelAccFA : 20|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISOvrlpRtlChk_FA : 19|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRROvrlpRtlChk_FA : 18|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFOvrlpRtlChk_FA : 17|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFOvrlpRtlChk_FA : 16|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISAlign_FA : 15|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISFrshns_FA : 14|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISSnsr_FP : 13|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ VISSnsr_FA : 12|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRAlign_FA : 11|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRFrshns_FA : 10|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRSnsr_FP : 9|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ LRRSnsr_FA : 8|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRAlign_FA : 7|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRFrehns_FA : 6|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRSnsr_FP : 5|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ IRFSRRSnsr_FA : 4|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRAlign_FA : 3|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRFrshns_FA : 2|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRSnsr_FP : 1|1@0+ (1,0) [0|1] "" Dummy_FO - SG_ ILFSRRSnsr_FA : 0|1@0+ (1,0) [0|1] "" Dummy_FO - -BO_ 1787 AL_Test_Tool_Rsp_RFSRR: 8 RFSRR_FO - SG_ RFSRREngRspDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Dummy_FO - -BO_ 1788 AL_Test_Tool_Rsp_LFSRR: 8 LFSRR_FO - SG_ LFSRREngRspDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Dummy_FO - -BO_ 1790 AL_Test_Tool_Req_RFSRR: 8 Dummy_FO - SG_ RFSRREngCmdDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RFSRR_FO - -BO_ 1791 AL_Test_Tool_Req_LFSRR: 8 Dummy_FO - SG_ LFSRREngCmdDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LFSRR_FO - -BO_ 1786 AL_Test_Tool_Rsp_RSRR: 8 RSRR_FO - SG_ RSRREngRspDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Dummy_FO - -BO_ 1789 AL_Test_Tool_Req_RSRR: 8 Dummy_FO - SG_ RSRREngCmdDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RSRR_FO - -BO_ 1149 F_LRR_Azmth_Rate_Info_4: 8 LRR_FO - SG_ FLRRTrk20AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk19AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk18AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk17AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk16AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRAzRtInf4BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1148 F_LRR_Azmth_Rate_Info_3: 8 LRR_FO - SG_ FLRRTrk15AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk14AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk13AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk12AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk11AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRAzRtInf3BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1147 F_LRR_Azmth_Rate_Info_2: 8 LRR_FO - SG_ FLRRTrk9AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk8AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk7AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk6AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk10AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRAzRtInf2BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1146 F_LRR_Azmth_Rate_Info_1: 8 LRR_FO - SG_ FLRRTrk5AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk4AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk3AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk2AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRTrk1AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FLRRAzRtInf1BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1143 Long_Range_Radar_add_Info_3: 8 LRR_FO - SG_ FLRRAddInfo3BurstID : 57|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk13ObstType : 60|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk20ObstTypeConf : 52|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk20ObstType : 55|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk19ObstTypeConf : 44|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk19ObstType : 47|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk18ObstTypeConf : 36|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk18ObstType : 39|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk17ObstTypeConf : 28|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk17ObstType : 31|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk16ObstTypeConf : 20|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk16ObstType : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk15ObstTypeConf : 12|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk15ObstType : 15|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk14ObstTypeConf : 4|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk14ObstType : 7|3@0+ (1,0) [0|7] "" EOCM_F_FO - -BO_ 1142 Long_Range_Radar_add_Info_2: 8 LRR_FO - SG_ FLRRAddInfo2BurstID : 62|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRTrk13ObstTypeConf : 60|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk12ObstTypeConf : 52|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk12ObstType : 55|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk11ObstTypeConf : 44|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk11ObstType : 47|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk10ObstTypeConf : 36|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk10ObstType : 39|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk9ObstTypeConf : 28|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk9ObstType : 31|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk8ObstTypeConf : 20|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk8ObstType : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk7ObstTypeConf : 12|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk7ObstType : 15|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRTrk1ObstTypeConf : 4|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO - SG_ FLRRTrk1ObstType : 7|3@0+ (1,0) [0|7] "" EOCM_F_FO - -BO_ 851 F_Vision_Environment_4: 8 VIS_FO - SG_ LnMrkg3LnPrvwDst : 45|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTtlNmLnMrkgDetRt : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsRtLinCrsTm : 25|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsNumPrlLnsDetRt : 33|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsNumPrlLnsDetLt : 36|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntLftV : 31|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtLinCrsTm : 30|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnPrvwDst : 50|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMrkgTypChgDst : 40|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMrkgWdth : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMarkrElvtd : 51|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4AnchrLnLin : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMrkgWdth : 41|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMarkrElvtd : 46|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3AnchrLnLin : 52|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstID2 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntLft : 15|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 597 USDT_Req_to_VIS2_FO: 8 TestTool_FO - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" CIPM_FO,VIS2_FO - -BO_ 1204 RR_SRR_Object_Track4: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1203 RR_SRR_Object_Track3: 8 RRSRR_FO - SG_ RRSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - SG_ RRSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1202 RR_SRR_Object_Track2: 8 RRSRR_FO - SG_ RRSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - -BO_ 1201 RR_SRR_Object_Track1: 8 RRSRR_FO - SG_ RRSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO - SG_ RRSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO - SG_ RRSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO - SG_ RRSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO - SG_ RRSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ RRSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO - -BO_ 1200 RR_SRR_Object_Header: 8 RRSRR_FO - SG_ RRSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "" EOCM_F_FO - SG_ RRSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ RRSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ RRSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ RRSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ RRSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - -BO_ 850 F_Vision_Environment_3: 8 VIS_FO - SG_ LnSnsTtlNmLnMrkgDetLt : 58|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtLnMrkgWdth : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtLnMrkgTypChgDst : 62|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnLftV : 23|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnLft : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrLftV : 15|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrLft : 39|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrTypRght : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrTypLft : 53|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrElvtdRght : 54|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrElvtdLft : 55|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstID1 : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnQltyCnfdncLvlRght : 22|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnQltyCnfdncLvlLft : 14|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnPrvwDstncRght : 2|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnPrvwDstncLft : 5|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 1414 RVB_TVR_Debug2_FO: 7 EOCM_F_FO - SG_ VBBrkCntlAccel : 45|12@0- (0.01,0) [-20.48|20.47] "m/s^2" Dummy_FO - SG_ VBTOSObjID : 35|6@0+ (1,0) [0|63] "" Dummy_FO - SG_ VBTOSTTC : 31|12@0+ (0.025,0) [0|102.375] "s" Dummy_FO - SG_ VBTOSLatPstn : 11|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO - SG_ VBTOSLonPstn : 7|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO - diff --git a/opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc b/opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc deleted file mode 100644 index 2d0bb12174..0000000000 --- a/opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc +++ /dev/null @@ -1,248 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: K16_BECM K73_TCIC K9_BCM K43_PSCM K17_EBCM K20_ECM K114B_HPCM NEO K124_ASCM -VAL_TABLE_ TurnSignals 2 "Right Turn" 1 "Left Turn" 0 "None" ; -VAL_TABLE_ ACCLeadCar 1 "Present" 0 "Not Present" ; -VAL_TABLE_ ACCCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ BrakePedalPressed 1 "Pressed" 0 "Depressed" ; -VAL_TABLE_ DistanceButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ LKAButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_TABLE_ PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; -VAL_TABLE_ DoorStatus 1 "Opened" 0 "Closed" ; -VAL_TABLE_ SeatBeltStatus 1 "Latched" 0 "Unlatched" ; -VAL_TABLE_ LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; -VAL_TABLE_ GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; -VAL_TABLE_ GasRegenCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HandsOffSWDetectionStatus 1 "Hands On" 0 "Hands Off" ; -VAL_TABLE_ HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; - - -BO_ 717 ASCM_2CD: 5 K124_ASCM - -BO_ 869 ASCM_365: 4 K124_ASCM - -BO_ 1034 ASCM_40A: 7 K124_ASCM - -BO_ 1296 ASCM_510: 4 K124_ASCM - -BO_ 1930 ASCM_78A: 7 K124_ASCM - -BO_ 190 ECMAcceleratorPos: 6 K20_ECM - SG_ BrakePedalPos : 15|8@0+ (1,0) [0|0] "sticky" NEO - SG_ GasPedalAndAcc : 23|8@0+ (1,0) [0|0] "" NEO - -BO_ 201 ECMEngineStatus: 8 K20_ECM - SG_ EngineTPS : 39|8@0+ (0.392156863,0) [0|100.000000065] "%" NEO - SG_ EngineRPM : 15|16@0+ (0.25,0) [0|0] "RPM" NEO - -BO_ 209 EBCMBrakePedalSensors: 7 K17_EBCM - SG_ Counter1 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ Counter2 : 23|2@0+ (1,0) [0|3] "" XXX - SG_ BrakePedalPosition1 : 5|14@0+ (1,0) [0|16383] "" XXX - SG_ BrakePedalPosition2 : 21|14@0- (-1,0) [0|16383] "" XXX - SG_ BrakeNormalized1 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ BrakeNormalized2 : 47|8@0- (-1,0) [0|255] "" XXX - -BO_ 241 EBCMBrakePedalPosition: 6 K17_EBCM - SG_ BrakePedalPosition : 15|8@0+ (1,0) [0|255] "" NEO - -BO_ 298 BCMDoorBeltStatus: 8 K9_BCM - SG_ RearLeftDoor : 8|1@0+ (1,0) [0|0] "" NEO - SG_ FrontLeftDoor : 9|1@0+ (1,0) [0|0] "" NEO - SG_ FrontRightDoor : 10|1@0+ (1,0) [0|0] "" NEO - SG_ RearRightDoor : 23|1@0+ (1,0) [0|0] "" NEO - SG_ LeftSeatBelt : 12|1@0+ (1,0) [0|0] "" NEO - SG_ RightSeatBelt : 53|1@0+ (1,0) [0|0] "" NEO - -BO_ 309 ECMPRDNL: 8 K20_ECM - SG_ PRNDL : 2|3@0+ (1,0) [0|0] "" NEO - -BO_ 320 BCMTurnSignals: 3 K9_BCM - SG_ TurnSignals : 19|2@0+ (1,0) [0|0] "" NEO - -BO_ 336 ASCMLKASStatus: 1 NEO - SG_ Available : 7|1@0+ (1,0) [0|0] "" NEO - -BO_ 338 ASCMLKASteeringCmd: 6 NEO - SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO - SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO - SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO - SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO - SG_ LKASMode : 36|2@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO - -BO_ 340 ASCMBLKASteeringCmd: 6 NEO - SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO - SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO - SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO - SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO - SG_ LKASMode : 36|2@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO - -BO_ 381 MSG_17D: 8 K20_ECM - SG_ MSG17D_AccPower : 35|12@0- (1,0) [0|0] "" NEO - -BO_ 356 PSCMStatus: 8 K43_PSCM - SG_ LKATorqueDeliveredStatus : 7|3@0+ (1,0) [0|7] "" NEO - SG_ LKADriverAppldTrq : 2|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO - SG_ LKATBDTorque : 21|14@0- (-0.005,0) [-10.24|10.23] "Nm" NEO - SG_ RollingCounter : 39|2@0+ (1,0) [0|0] "" NEO - SG_ LKATotalTorqueDelivered : 37|14@0- (0.01,0) [-10.24|10.23] "Nm" NEO - -BO_ 417 AcceleratorPedal: 7 XXX - SG_ AcceleratorPedal : 55|8@0+ (1,0) [0|0] "" NEO - -BO_ 451 GasAndAcc: 8 XXX - SG_ GasPedalAndAcc2 : 55|8@0+ (1,0) [0|0] "" NEO - -BO_ 452 AcceleratorPedal2: 8 XXX - SG_ AcceleratorPedal2 : 47|8@0+ (1,0) [0|0] "" NEO - -BO_ 481 ASCMSteeringButton: 7 K124_ASCM - SG_ DistanceButton : 22|1@0+ (1,0) [0|0] "" NEO - SG_ LKAButton : 23|1@0+ (1,0) [0|0] "" NEO - SG_ ACCButtons : 46|3@0+ (1,0) [0|0] "" NEO - -BO_ 485 PSCMSteeringAngle: 8 K43_PSCM - SG_ SteeringWheelAngle : 15|16@0- (0.0625,0) [-2047|2047] "deg" NEO - SG_ SteeringWheelRate : 27|12@0- (1,0) [-2047|2047] "deg/s" NEO - -BO_ 489 EBCMVehicleDynamic: 8 K17_EBCM - SG_ YawRate : 51|12@0- (0.0625,0) [-2047|2047] "grad/s" NEO - SG_ LateralAcceleration : 3|12@0- (0.0161,0) [-2047|2047] "m/s2" NEO - SG_ BrakePedalPressed : 6|1@0+ (1,0) [0|0] "" NEO - -BO_ 711 BECMBatteryVoltageCurrent: 6 K17_EBCM - SG_ HVBatteryVoltage : 31|12@0+ (0.125,0) [0|511.875] "V" NEO - SG_ HVBatteryCurrent : 12|13@0- (0.15,0) [-614.4|614.25] "A" NEO - -BO_ 715 ASCMGasRegenCmd: 8 K124_ASCM - SG_ GasRegenAlwaysOne : 9|1@0+ (1,1) [1|1] "" NEO - SG_ GasRegenAlwaysThree : 15|2@0+ (1,1) [1|1] "" NEO - SG_ GasRegenChecksum : 47|24@0+ (1,0) [0|0] "" NEO - SG_ GasRegenCmdActiveInv : 32|1@0+ (1,0) [0|0] "" NEO - SG_ GasRegenFullStopActive : 13|1@0+ (1,0) [0|0] "" NEO - SG_ GasRegenCmdActive : 0|1@0+ (1,0) [0|0] "" NEO - SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" NEO - SG_ RollingCounter2 : 36|4@0+ (1,0) [0|0] "" NEO - SG_ GasRegenAlwaysOne2 : 23|1@0+ (1,0) [0|1] "" NEO - SG_ GasRegenCmd : 22|15@0+ (1,0) [0|0] "" NEO - -BO_ 810 TCICOnStarGPSPosition: 8 K73_TCIC - SG_ GPSLongitude : 39|32@0+ (1,-2147483648) [0|0] "milliarcsecond" NEO - SG_ GPSLatitude : 7|32@0+ (1,0) [0|0] "milliarcsecond" NEO - -BO_ 840 EBCMWheelSpdFront: 4 K17_EBCM - SG_ FLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ FRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO - -BO_ 842 EBCMWheelSpdRear: 4 K17_EBCM - SG_ RLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ RRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO - -BO_ 880 ASCMActiveCruiseControlStatus: 6 K124_ASCM - SG_ ACCLeadCar : 44|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCAlwaysOne2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCAlwaysOne : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCSpeedSetpoint : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" NEO - SG_ ACCGapLevel : 21|2@0+ (1,0) [0|0] "" NEO - SG_ ACCResumeButton : 1|1@0+ (1,0) [0|0] "" NEO - SG_ ACCCmdActive : 23|1@0+ (1,0) [0|0] "" NEO - -BO_ 1001 ECMVehicleSpeed: 8 K20_ECM - SG_ VehicleSpeed : 7|16@0+ (0.01,0) [0|0] "mph" NEO - -BO_ 1033 ASCMKeepAlive: 7 NEO - SG_ ASCMKeepAliveAllZero : 7|56@0+ (1,0) [0|0] "" NEO - -BO_ 1217 ECMEngineCoolantTemp: 8 K20_ECM - SG_ EngineCoolantTemp : 23|8@0+ (1,-40) [0|0] "C" NEO - -BO_ 1249 VIN_Part2: 8 K20_ECM - SG_ VINPart2 : 7|64@0+ (1,0) [0|0] "" NEO - -BO_ 1300 VIN_Part1: 8 K20_ECM - SG_ VINPart1 : 7|64@0+ (1,0) [0|0] "" NEO - -BO_ 1912 PSCM_778: 8 K43_PSCM - -BO_TX_BU_ 338 : K124_ASCM,NEO; -BO_TX_BU_ 880 : NEO,K124_ASCM; -BO_TX_BU_ 1033 : K124_ASCM,NEO; -BO_TX_BU_ 715 : NEO,K124_ASCM; - - -CM_ BU_ K16_BECM "Battery Energy Control Module"; -CM_ BU_ K73_TCIC "Telematics Communication Control Module"; -CM_ BU_ K9_BCM "Body Control Module"; -CM_ BU_ K43_PSCM "Power Steering Control Module"; -CM_ BU_ K17_EBCM "Electronic Brake Control Module"; -CM_ BU_ K20_ECM "Engine Control Module"; -CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; -CM_ BU_ NEO "Comma NEO"; -CM_ BU_ K124_ASCM "Active Safety Control Module"; -CM_ SG_ 381 MSG17D_AccPower "Need to investigate"; -CM_ SG_ 190 GasPedalAndAcc "ACC baseline is 62"; -CM_ SG_ 451 GasPedalAndAcc2 "ACC baseline is 62"; -CM_ SG_ 715 RollingCounter2 "Values cycle between 0, 7, 10, 13"; -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; -BA_ "UseGMParameterIDs" 0; -VAL_ 481 DistanceButton 1 "Active" 0 "Inactive" ; -VAL_ 481 LKAButton 1 "Active" 0 "Inactive" ; -VAL_ 481 ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_ 309 PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; -VAL_ 338 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 338 LKASMode 2 "supercruise" 1 "lkas" 0 "Inactive" ; -VAL_ 880 ACCLeadCar 1 "Present" 0 "Not Present" ; -VAL_ 880 ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; -VAL_ 880 ACCResumeButton 1 "Pressed" 0 "Depressed" ; -VAL_ 880 ACCCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 356 LKATorqueDeliveredStatus 7 "Override Fault" 6 "LKAS Fault but Responsive" 5 "TBD but Responsive" 4 "TBD but Responsive" 3 "Fault" 1 "Active" 0 "Inactive" ; -VAL_ 489 BrakePedalPressed 1 "Pressed" 0 "Depressed" ; -VAL_ 715 GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; -VAL_ 715 GasRegenCmdActive 1 "Active" 0 "Inactive" ; diff --git a/opendbc_repo/opendbc/dbc/chrysler_cusw.dbc b/opendbc_repo/opendbc/dbc/chrysler_cusw.dbc deleted file mode 100644 index 880f6e7255..0000000000 --- a/opendbc_repo/opendbc/dbc/chrysler_cusw.dbc +++ /dev/null @@ -1,192 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 492 EPS_STATUS: 8 XXX - SG_ TORQUE_DRIVER : 3|12@0+ (1,-1024) [0|2048] "Nm" XXX - SG_ LKAS_STATE : 16|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_FAULT : 17|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_HIGH_TORQUE : 19|1@0+ (1,0) [0|1] "" XXX - SG_ TORQUE_MOTOR : 27|12@0+ (1,-2048) [0|1] "" XXX - SG_ LAT_TORQUE_REQUEST : 47|12@0+ (1,-2048) [0|4095] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1250 DOORS: 8 XXX - SG_ DOOR_OPEN_FL : 10|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 11|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 12|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 13|1@0+ (1,0) [0|1] "" XXX - SG_ TRUNK : 14|1@0+ (1,0) [0|1] "" XXX - -BO_ 1262 GEAR: 8 XXX - SG_ PRNDL : 11|4@0+ (1,0) [0|15] "" XXX - -BO_ 875 SEATBELT_STATUS: 8 XXX - SG_ SEATBELT_DRIVER_UNLATCHED : 16|1@0+ (1,0) [0|1] "" XXX - -BO_ 1264 STEERING_LEVERS: 7 XXX - SG_ TURN_SIGNALS : 3|4@0+ (1,0) [0|15] "" XXX - SG_ HIGH_BEAM_FLASH : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 480 TRACTION_BUTTON: 8 XXX - SG_ TRACTION_OFF : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 740 WHEEL_SPEEDS_REAR: 8 XXX - SG_ WHEEL_SPEED_RL : 5|13@0+ (0.0087,0) [0|1] "" XXX - SG_ WHEEL_SPEED_RR : 20|13@0+ (0.0087,0) [0|1] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX - -BO_ 520 EPS_STATUS_2: 7 XXX - SG_ NEW_SIGNAL_1 : 3|12@0+ (1,-2048) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 19|12@0+ (1,-2048) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 39|12@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 43|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 55|8@0+ (1,0) [0|1] "" XXX - -BO_ 494 STEERING: 6 XXX - SG_ STEER_ANGLE : 5|14@0+ (0.1,-720) [0|1] "deg" XXX - SG_ STEERING_RATE : 19|12@0+ (1,-2000) [0|1] "" XXX - SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 738 BRAKE_2: 8 XXX - SG_ BRAKE_TORQUE : 7|12@0+ (1,0) [0|15] "" XXX - SG_ BRAKE_LIGHTS : 8|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_HUMAN : 9|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX - -BO_ 742 WHEEL_SPEEDS_FRONT: 8 XXX - SG_ WHEEL_SPEED_FL : 5|13@0+ (0.0087,0) [0|1] "" XXX - SG_ WHEEL_SPEED_FR : 20|13@0+ (0.0087,0) [0|1] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX - -BO_ 502 LKAS_COMMAND: 4 XXX - SG_ STEERING_TORQUE : 7|11@0+ (1,-1024) [0|4087] "" XXX - SG_ LKAS_CONTROL_BIT : 12|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 19|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 31|8@0+ (1,0) [0|1] "" XXX - -BO_ 1498 LKAS_1: 2 XXX - -BO_ 1500 DAS_6: 4 XXX - SG_ LKAS_ICON_COLOR : 1|2@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_0XAC : 15|8@0+ (1,0) [0|255] "" XXX - SG_ LKAS_LANE_LINES : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 1508 LKAS_HEARTBIT: 8 XXX - SG_ LKAS_STATUS_OK : 28|1@0+ (1,0) [0|1] "" XXX - -BO_ 762 CRUISE_BUTTONS: 3 XXX - SG_ ACC_Cancel : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Distance_Dec : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Accel : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Decel : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Resume : 4|1@0+ (1,0) [0|1] "" XXX - SG_ Cruise_OnOff : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_OnOff : 7|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Distance_Inc : 8|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 15|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 23|8@0+ (1,0) [0|1] "" XXX - -BO_ 484 BRAKE_1: 8 XXX - SG_ BRAKE_PSI : 7|12@0+ (1,0) [0|1] "" XXX - SG_ VEHICLE_SPEED : 35|12@0+ (0.0174,0) [0|4095] "m/s" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX - -BO_ 500 GEARBOX_1: 7 XXX - SG_ DESIRED_GEAR : 35|4@0+ (1,0) [0|1] "" XXX - SG_ ACTUAL_GEAR : 39|4@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 43|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 55|8@0+ (1,0) [0|1] "" XXX - -BO_ 510 ACCEL_GAS: 5 XXX - SG_ ACC_ACTIVE : 2|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_HUMAN : 15|8@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 27|4@0+ (1,0) [0|1] "" XXX - SG_ GAS_ACC : 28|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|1] "" XXX - -BO_ 490 DASHBOARD: 4 XXX - SG_ ACC_SPEED_CONFIG_KPH : 7|8@0+ (0.1625,0) [0|1] "m/s" XXX - -BO_ 1006 ACC_HUD: 7 XXX - SG_ ACC_STATE : 7|3@0+ (1,0) [0|15] "" XXX - SG_ ACC_SET_SPEED_KMH : 14|8@0+ (1,0) [0|255] "km/h" XXX - SG_ DISTANCE_SETTING : 33|2@0+ (1,0) [0|3] "" XXX - SG_ DISTANCE_TO_LEAD : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 748 ACC_CONTROL: 8 XXX - SG_ ACC_MAIN_ON : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_ACTIVE : 7|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_VALUE : 13|10@0+ (1,0) [0|1023] "" XXX - SG_ GAS_VALID : 15|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_VALUE : 28|10@0+ (1,0) [0|1023] "" XXX - SG_ BRAKE_VALID : 30|1@0+ (1,0) [0|1] "" XXX - SG_ UNKNOWN_1 : 33|1@0+ (1,0) [0|1] "" XXX - SG_ UNKNOWN_2 : 46|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 496 CLUSTER_1: 8 XXX - SG_ TACHOMETER : 3|12@0+ (1.024,0) [0|3] "" XXX - SG_ SPEEDOMETER : 19|12@0+ (0.01065,0) [0|1] "m/s" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX - - -CM_ SG_ 1250 TRUNK "1 = open, 0 = closed"; -CM_ SG_ 1250 DOOR_OPEN_FL "1 = open, 0 = closed"; -CM_ SG_ 1250 DOOR_OPEN_FR "1 = open, 0 = closed"; -CM_ SG_ 1250 DOOR_OPEN_RL "1 = open, 0 = closed"; -CM_ SG_ 1250 DOOR_OPEN_RR "1 = open, 0 = closed"; -CM_ SG_ 1262 PRNDL "1 = park, 2 = reverse, 3 = neutral, 4 = drive, 5 = sport (snicker... sport)"; -CM_ SG_ 875 SEATBELT_DRIVER_UNLATCHED "1 = unlatched, 0 = safety first"; -CM_ SG_ 1264 TURN_SIGNALS "0 = off, 1 = left blinker, 2 = right blinker"; -CM_ SG_ 480 TRACTION_OFF "0 = TCS on, 1 = TCS off (light on dash ON)"; -CM_ SG_ 1500 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null"; -CM_ SG_ 1492 LEAD_CAR "lead car present = 4, no car = 2 "; -CM_ SG_ 498 ACC_STATUS_2 "1 no ACC, 3 icpno "; -CM_ SG_ 498 ACC_STATUS_1 "0x00 = acc off, 0x03 = acc on, green, 0x02 acc on, white"; -CM_ SG_ 1006 ACC_STATE "0 = ACC off, 6 = ACC active (white), 8 = ACC engaged (green)"; -CM_ SG_ 502 LKAS_STATE "2 = active (green), 1 = error"; -CM_ SG_ 1006 ACC_SET_SPEED_KMH "min set appears to be 68 km/h, errors below 59 km/h "; -VAL_ 1262 PRNDL 1 "P" 2 "R" 3 "N" 4 "D" 5 "S"; diff --git a/opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc b/opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc deleted file mode 100644 index 07c37e1fa2..0000000000 --- a/opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc +++ /dev/null @@ -1,230 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 544 a_1: 8 XXX - SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX - SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX - SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX - SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX - SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX - SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 576 b_1: 8 XXX - SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX - SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 608 a_2: 8 XXX - SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX - SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX - SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX - SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX - SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX - SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 640 b_2: 8 XXX - SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX - SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 644 a_3: 8 XXX - SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX - SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX - SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX - SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX - SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX - SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 648 b_3: 8 XXX - SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX - SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 652 a_4: 8 XXX - SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX - SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX - SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX - SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX - SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX - SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 656 b_4: 8 XXX - SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX - SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 512 unknown_200: 8 XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ increasing : 31|16@0+ (1,0) [0|255] "" XXX - SG_ zeros_0 : 3|12@0+ (1,0) [0|63] "" XXX - SG_ zeros_1 : 47|12@0+ (1,0) [0|63] "" XXX - SG_ status0 : 7|4@0+ (1,0) [0|15] "" XXX - SG_ unknown_0 : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 514 unknown_202: 8 XXX - SG_ COUNTER : 43|4@0+ (1,0) [0|15] "" XXX - SG_ sig3 : 31|8@0+ (1,0) [0|65535] "" XXX - SG_ increasing : 39|12@0+ (1,0) [0|15] "" XXX - -BO_ 706 c_1: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - -BO_ 708 c_2: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 710 c_3: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 712 c_4: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 714 c_5: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 716 c_6: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 718 c_7: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 720 c_8: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 722 c_9: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 724 c_10: 8 XXX - SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX - SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 674 d_1: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 676 d_2: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 678 d_3: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 680 d_4: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 682 d_5: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 684 d_6: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 686 d_7: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 688 d_8: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 690 d_9: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 692 d_10: 8 XXX - SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX - -BO_ 672 NEW_MSG_5: 8 XXX - SG_ NEW_SIGNAL_1 : 9|10@0+ (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_2 : 45|10@0+ (1,0) [0|1023] "" XXX - - - - -CM_ SG_ 544 track_id "for message a_1 track_id is always 1, similar for other messages and track_id"; -CM_ SG_ 544 REL_ACCEL "perhaps REL_ACCEL because it responds faster and before REL_SPEED"; -CM_ SG_ 544 sig2 "perhaps distance to object. LONG_DIST or REL_ACCEL or REL_SPEED"; -CM_ SG_ 576 zeros "not always zero, sometimes has value when another car changes lanes"; -CM_ SG_ 706 LAT_DIST "positive is to the right, negative is to the left"; diff --git a/opendbc_repo/opendbc/dbc/comma_body.dbc b/opendbc_repo/opendbc/dbc/comma_body.dbc deleted file mode 100644 index 2b89f3a74a..0000000000 --- a/opendbc_repo/opendbc/dbc/comma_body.dbc +++ /dev/null @@ -1,89 +0,0 @@ -VERSION "0.0.02" - -BO_ 513 MOTORS_DATA: 8 XXX - SG_ SPEED_L : 7|16@0- (1,0) [-1000|1000] "" XXX - SG_ SPEED_R : 23|16@0- (1,0) [-1000|1000] "" XXX - SG_ ELEC_ANGLE_L : 39|8@0+ (1,0) [0|0] "deprecated" XXX - SG_ ELEC_ANGLE_R : 47|8@0+ (1,0) [0|0] "deprecated" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 514 VAR_VALUES: 3 XXX - SG_ IGNITION : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ENABLE_MOTORS : 1|1@0+ (1,0) [0|1] "" XXX - SG_ FAULT : 7|6@0+ (1,0) [0|63] "" XXX - SG_ MOTOR_ERR_L : 15|8@0+ (1,0) [0|255] "" XXX - SG_ MOTOR_ERR_R : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 515 BODY_DATA: 4 XXX - SG_ MCU_TEMP : 7|8@0+ (0.1,0) [0|125] "" XXX - SG_ BATT_VOLTAGE : 15|16@0+ (0.01,0) [0|60] "" XXX - SG_ BATT_PERCENTAGE : 31|7@0+ (1,0) [0|100] "" XXX - SG_ CHARGER_CONNECTED : 24|1@0+ (1,0) [0|1] "" XXX - -BO_ 516 MOTORS_CURRENT: 8 XXX - SG_ LEFT_PHA_AB : 7|16@0- (1,0) [-32768|32767] "" XXX - SG_ LEFT_PHA_BC : 23|16@0- (1,0) [-32768|32767] "" XXX - SG_ RIGHT_PHA_AB : 39|16@0- (1,0) [-32768|32767] "" XXX - SG_ RIGHT_PHA_BC : 55|16@0- (1,0) [-32768|32767] "" XXX - -BO_ 517 MOTORS_ANGLE: 8 XXX - SG_ LEFT_ANGLE_SENSOR : 7|16@0+ (1,0) [0|16384] "" XXX - SG_ RIGHT_ANGLE_SENSOR : 23|16@0+ (1,0) [0|16384] "" XXX - SG_ LEFT_HALL_SENSOR : 39|16@0+ (1,0) [0|360] "" XXX - SG_ RIGHT_HALL_SENSOR : 55|16@0+ (1,0) [0|360] "" XXX - -BO_ 592 TORQUE_CMD: 6 XXX - SG_ TORQUE_L : 7|16@0- (1,0) [-1000|1000] "" XXX - SG_ TORQUE_R : 23|16@0- (1,0) [-1000|1000] "" XXX - SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 593 MAX_MOTOR_RPM_CMD: 5 XXX - SG_ MAX_RPM_L : 7|16@0+ (1,0) [0|1000] "" XXX - SG_ MAX_RPM_R : 23|16@0+ (1,0) [0|1000] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 769 KNEE_MOTORS_DATA: 8 XXX - SG_ SPEED_L : 7|16@0- (1,0) [-1000|1000] "" XXX - SG_ SPEED_R : 23|16@0- (1,0) [-1000|1000] "" XXX - SG_ ELEC_ANGLE_L : 39|8@0+ (1,0) [0|0] "deprecated" XXX - SG_ ELEC_ANGLE_R : 47|8@0+ (1,0) [0|0] "deprecated" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 770 KNEE_VAR_VALUES: 3 XXX - SG_ IGNITION : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ENABLE_MOTORS : 1|1@0+ (1,0) [0|1] "" XXX - SG_ FAULT : 7|6@0+ (1,0) [0|63] "" XXX - SG_ MOTOR_ERR_L : 15|8@0+ (1,0) [0|255] "" XXX - SG_ MOTOR_ERR_R : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 771 KNEE_DATA: 4 XXX - SG_ MCU_TEMP : 7|8@0+ (0.1,0) [0|125] "" XXX - SG_ BATT_VOLTAGE : 15|16@0+ (0.01,0) [0|60] "" XXX - SG_ BATT_PERCENTAGE : 31|7@0+ (1,0) [0|100] "" XXX - SG_ CHARGER_CONNECTED : 24|1@0+ (1,0) [0|1] "" XXX - -BO_ 772 KNEE_MOTORS_CURRENT: 8 XXX - SG_ LEFT_PHA_AB : 7|16@0- (1,0) [-32768|32767] "" XXX - SG_ LEFT_PHA_BC : 23|16@0- (1,0) [-32768|32767] "" XXX - SG_ RIGHT_PHA_AB : 39|16@0- (1,0) [-32768|32767] "" XXX - SG_ RIGHT_PHA_BC : 55|16@0- (1,0) [-32768|32767] "" XXX - -BO_ 773 KNEE_MOTORS_ANGLE: 8 XXX - SG_ LEFT_ANGLE_SENSOR : 7|16@0+ (1,0) [0|16384] "" XXX - SG_ RIGHT_ANGLE_SENSOR : 23|16@0+ (1,0) [0|16384] "" XXX - SG_ LEFT_HALL_SENSOR : 39|16@0+ (1,0) [0|360] "" XXX - SG_ RIGHT_HALL_SENSOR : 55|16@0+ (1,0) [0|360] "" XXX - -BO_ 848 KNEE_TORQUE_CMD: 6 XXX - SG_ TORQUE_L : 7|16@0- (1,0) [-1000|1000] "" XXX - SG_ TORQUE_R : 23|16@0- (1,0) [-1000|1000] "" XXX - SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 849 KNEE_MAX_MOTOR_RPM_CMD: 5 XXX - SG_ MAX_RPM_L : 7|16@0+ (1,0) [0|1000] "" XXX - SG_ MAX_RPM_R : 23|16@0+ (1,0) [0|1000] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/fca_giorgio.dbc b/opendbc_repo/opendbc/dbc/fca_giorgio.dbc deleted file mode 100644 index f3e22cf417..0000000000 --- a/opendbc_repo/opendbc/dbc/fca_giorgio.dbc +++ /dev/null @@ -1,243 +0,0 @@ -BO_ 171 NEW_MSG_AB: 8 XXX - SG_ NEW_SIGNAL_5 : 3|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_6 : 21|6@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_1 : 23|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 51|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_4 : 55|4@0+ (1,0) [0|15] "" XXX - -BO_ 222 EPS_1: 6 EPS - SG_ STEERING_ANGLE : 5|14@0+ (0.1,-716.8) [0|16383] "deg" XXX - SG_ STEERING_RATE : 19|12@0+ (0.5,-1000) [0|4095] "deg/s" XXX - SG_ UNKNOWN_1 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ UNKNOWN_2 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 228 NEW_MSG_E4: 6 XXX - SG_ NEW_SIGNAL_1 : 13|1@0+ (1,0) [0|1] "" XXX - -BO_ 238 ABS_1: 8 ABS - SG_ WHEEL_SPEED_FL : 7|13@0+ (0.017,0) [0|8191] "m/s" XXX - SG_ WHEEL_SPEED_FR : 10|13@0+ (0.017,0) [0|8191] "m/s" XXX - SG_ WHEEL_SPEED_RL : 29|13@0+ (0.017,0) [0|8191] "m/s" XXX - SG_ WHEEL_SPEED_RR : 32|13@0+ (0.017,0) [0|8191] "m/s" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 241 NEW_MSG_F1: 8 XXX - SG_ MAYBE_VOLTAGE : 18|10@0+ (0.02,0) [0|1023] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 249 NEW_MSG_F9: 4 XXX - SG_ COUNTER : 19|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 250 ABS_3: 8 ABS - SG_ BRAKE_PRESSURE_THRESHOLD : 2|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_PEDAL_SWITCH : 3|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 9|2@0+ (1,0) [0|3] "" XXX - SG_ XCOUNTER : 38|4@0+ (1,0) [0|15] "" XXX - SG_ XCHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 252 ENGINE_1: 8 ENGINE - SG_ ENGINE_RPM : 7|14@0+ (1,0) [0|255] "rev/min" XXX - SG_ ACCEL_PEDAL : 20|8@0+ (0.4,0) [0|255] "percent" XXX - SG_ REVERSE : 26|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 46|2@1+ (1,0) [0|3] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 254 ABS_2: 8 ABS - SG_ LONG_ACCEL : 7|12@0+ (0.01,-20.48) [0|4095] "m/s2" XXX - SG_ LATERAL_ACCEL : 11|12@0+ (0.01,-20.48) [0|4095] "m/s2" XXX - SG_ YAW_RATE : 31|12@0+ (-0.0014,2.86) [0|4095] "rad/s" XXX - SG_ NEW_SIGNAL_1 : 47|9@0+ (1,0) [0|511] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 257 ABS_6: 8 ABS - SG_ MAYBE_ACC_BRAKE : 5|1@0+ (1,0) [0|1] "" XXX - SG_ VEHICLE_SPEED : 15|11@0+ (0.017,0) [0|2047] "" XXX - SG_ BRAKE_PRESSURE_1 : 20|11@0+ (1,0) [0|2047] "" XXX - SG_ BRAKE_PRESSURE_2 : 43|12@0+ (1,0) [0|4095] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 262 EPS_2: 7 EPS - SG_ UNKNOWN_TORQUE : 7|12@0+ (1,-2000) [0|4095] "" XXX - SG_ UNKNOWN_1 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ UNKNOWN_STATUS : 9|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVER_TORQUE : 23|11@0+ (1,-1024) [0|2047] "" XXX - SG_ UNKNOWN_2 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ LKA_STATUS : 38|2@0+ (1,0) [0|3] "" XXX - SG_ LKA_FAULT : 39|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 43|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 263 ABS_4: 8 ABS - SG_ BRAKE_PRESSURE : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 265 NEW_MSG_109: 8 XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 270 ABS_7: 7 XXX - SG_ LONG_ACCEL_RAW : 7|12@0+ (0.01,-20.48) [0|4095] "" XXX - SG_ LATERAL_ACCEL_RAW : 11|12@0+ (0.01,-20.48) [0|4095] "" XXX - SG_ YAW_RATE_RAW : 31|12@0+ (-0.0014,2.86) [0|4095] "" XXX - SG_ COUNTER : 43|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 278 ABS_5: 8 ABS - SG_ WHEEL_IMPULSE_FL : 7|8@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_IMPULSE_FR : 15|8@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_IMPULSE_RL : 23|8@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_IMPULSE_RR : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ACTIVE_FL : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ACTIVE_FR : 33|1@0+ (1,0) [0|1] "" XXX - SG_ ACTIVE_RL : 34|1@0+ (1,0) [0|1] "" XXX - SG_ ACTIVE_RR : 35|1@0+ (1,0) [0|1] "" XXX - SG_ FORWARD_1 : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REVERSE_1 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ FORWARD_2 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ REVERSE_2 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 280 NEW_MSG_118: 6 XXX - SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 282 NEW_MSG_11A: 8 XXX - SG_ NEW_SIGNAL_1 : 7|11@0+ (1,-1000) [0|2047] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 284 NEW_MSG_11C: 8 XXX - SG_ NEW_SIGNAL_1 : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_2 : 11|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_3 : 28|13@0+ (1,0) [0|8191] "" XXX - SG_ NEW_SIGNAL_4 : 31|2@0+ (1,0) [0|3] "" XXX - SG_ VEHICLE_SPEED : 47|12@0+ (0.017,0) [0|4095] "m/s" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 288 NEW_MSG_120: 6 XXX - SG_ COUNTER : 19|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 290 EPS_3: 4 EPS - SG_ EPS_TORQUE : 7|12@0+ (1,-2048) [0|4095] "" XXX - SG_ COUNTER : 19|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 501 NEW_MSG_1F5: 5 XXX - SG_ NEW_SIGNAL_2 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 27|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 502 LKA_COMMAND: 8 CAMERA - SG_ LKA_TORQUE : 7|11@0+ (1,-1024) [0|2047] "" XXX - SG_ HAPTIC_WARN_1 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ LKA_ACTIVE : 11|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ HAPTIC_WARN_2 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 508 NEW_MSG_1FC: 8 XXX - SG_ NEW_SIGNAL_1 : 6|1@0+ (1,0) [0|1] "" XXX - -BO_ 601 NEW_MSG_259: 8 XXX - SG_ NEW_SIGNAL_1 : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 762 NEW_MSG_2FA: 3 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 766 CAM_UNKNOWN_1: 4 CAMERA - -BO_ 900 NEW_MSG_384: 8 XXX - SG_ NEW_SIGNAL_1 : 19|3@0+ (1,0) [0|7] "" XXX - -BO_ 1040 NEW_MSG_410: 8 XXX - SG_ NEW_SIGNAL_3 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 49|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1046 NEW_MSG_416: 8 XXX - SG_ MUX M : 1|2@0+ (1,0) [0|3] "" XXX - SG_ UNKNOWN_M0_1 m0 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M0_2 m0 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M0_3 m0 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M0_4 m0 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M0_5 m0 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M0_6 m0 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M0_7 m0 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_1 m1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_2 m1 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_3 m1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_4 m1 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_5 m1 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_6 m1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M1_7 m1 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_1 m2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_2 m2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_3 m2 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_4 m2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_5 m2 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_6 m2 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_M2_7 m2 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1194 CAM_UNKNOWN_2: 8 CAMERA - -BO_ 1198 LKA_HUD_1: 8 CAMERA - SG_ NEW_SIGNAL_1 : 4|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_3 : 12|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 38|3@0+ (1,0) [0|7] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1351 LKA_HUD_2: 8 CAMERA - SG_ NEW_SIGNAL_1 : 51|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_2 : 55|4@0+ (1,0) [0|15] "" XXX - -BO_ 1442 ACC_1: 8 RADAR - SG_ HUD_SPEED : 7|8@0+ (1,0) [0|255] "km/h" XXX - SG_ TARGET_SPEED : 15|8@0+ (0.433,0) [0|255] "m/s" XXX - SG_ NEW_SIGNAL_3 : 17|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_4 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_STATUS : 22|2@0+ (1,0) [0|3] "" XXX - SG_ MAYBE_TJA : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 1458 CAM_UNKNOWN_5: 4 CAMERA - SG_ NEW_SIGNAL_1 : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 1854 BCM_1: 4 BCM - SG_ RIGHT_TURN_STALK : 16|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_TURN_STALK : 17|1@0+ (1,0) [0|1] "" XXX - -BO_ 1865 NEW_MSG_749: 8 XXX - SG_ NEW_SIGNAL_1 : 23|2@0+ (1,0) [0|3] "" XXX - -BO_ 506855454 CAM_UNKNOWN_6: 1 CAMERA - -CM_ SG_ 254 LONG_ACCEL "scale TBD"; -CM_ SG_ 254 LATERAL_ACCEL "scale TBD"; -CM_ SG_ 254 YAW_RATE "scale estimated"; -CM_ SG_ 257 MAYBE_ACC_BRAKE "may correlate with ACC-actuated braking"; -CM_ SG_ 278 FORWARD_1 "probably per-axle"; -CM_ SG_ 278 REVERSE_1 "probably per-axle"; -CM_ SG_ 278 FORWARD_2 "probably per-axle"; -CM_ SG_ 278 REVERSE_2 "probably per-axle"; -CM_ SG_ 282 NEW_SIGNAL_1 "smoothed yaw rate with low speed cutoff, maybe active forward lighting target angle"; -CM_ SG_ 284 VEHICLE_SPEED "scale estimated"; -CM_ SG_ 502 HAPTIC_WARN_1 "correlates with steering wheel haptic"; -CM_ SG_ 502 HAPTIC_WARN_2 "correlates with steering wheel haptic"; -CM_ BO_ 1198 "Definite LKA activity, probably contains lane-line recognition and lane departure signals, indicator of LKA vs TJA, perhaps indicator of active assist in map-permitted areas"; -VAL_ 262 LKA_STATUS 0 "standby" 1 "lka_active"; diff --git a/opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc b/opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc deleted file mode 100644 index 49fcae19c2..0000000000 --- a/opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc +++ /dev/null @@ -1,1070 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 58 BCM_m_FrP01: 8 XXX - SG_ ChildLockCmd : 13|1@0+ (1,0) [0|0] "" XXX - SG_ ChildLockCmd_UB : 12|1@0+ (1,0) [0|0] "" XXX - SG_ CLockCmd : 31|8@0+ (1,0) [0|0] "" XXX - SG_ CLockCmd_UB : 14|1@0+ (1,0) [0|0] "" XXX - SG_ DDShortDrop : 3|2@0+ (1,0) [0|0] "" XXX - SG_ DDShortDrop_UB : 4|1@0+ (1,0) [0|0] "" XXX - SG_ DirectionIndication : 11|2@0+ (1,0) [0|0] "" XXX - SG_ DirectionIndication_UB : 0|1@0+ (1,0) [0|0] "" XXX - SG_ EpsDrvInfo_D_Dsply : 36|4@0+ (1,0) [0|0] "" XXX - SG_ EpsDrvInfo_D_Dsply_UB : 39|1@0+ (1,0) [0|0] "" XXX - SG_ GearRvrseActv_D_Actl : 38|2@0+ (1,0) [0|0] "" XXX - SG_ GearRvrseActv_D_Actl_UB : 15|1@0+ (1,0) [0|0] "" XXX - SG_ VehVActlEng_D_Qf_3A : 9|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_ActlEng_UB_3A : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_ActlEng_3A : 55|16@0+ (0.01,0) [0|0] "kph" XXX - SG_ Veh_V_DsplyCcSet : 23|8@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_RqCcSet : 32|9@0+ (0.5,0) [0|0] "kph" XXX - SG_ WasherFluidLevelLow : 5|1@0+ (1,0) [0|0] "" XXX - -BO_ 64 BCM_m_FrP02: 8 XXX - SG_ FuelCutoffReq : 7|4@0+ (1,0) [0|0] "" XXX - SG_ FuelCutoffReq_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ KVRFRSettings : 54|15@0+ (1,0) [0|0] "" XXX - SG_ KVRFRSettings_UB : 10|1@0+ (1,0) [0|0] "" XXX - SG_ PsngrFrntDetct_D_Actl : 23|2@0+ (1,0) [0|0] "" XXX - SG_ PsngrFrntDetct_D_Actl_UB : 3|1@0+ (1,0) [0|0] "" XXX - SG_ RILReq : 21|2@0+ (1,0) [0|0] "" XXX - SG_ RILReq_UB : 55|1@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBuckleDriver : 31|2@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBuckleDriver_UB : 0|1@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBuckleMid : 29|2@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBuckleMid_UB : 15|1@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBucklePsngr : 27|2@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBucklePsngr_UB : 14|1@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBuckleDriver : 25|2@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBuckleDriver_UB : 13|1@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBucklePsngr : 37|2@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBucklePsngr_UB : 11|1@0+ (1,0) [0|0] "" XXX - SG_ WheelRotationCnt : 47|8@0+ (1,0) [0|0] "" XXX - SG_ WheelRotationCnt_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ WheelRotationCntQF : 35|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRr_D_Actl_UB_40 : 2|1@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRr_D_Actl_40 : 39|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRl_D_Actl_UB_40 : 1|1@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRl_D_Actl_40 : 33|2@0+ (1,0) [0|0] "" XXX - -BO_ 131 MS_Steering_Data: 8 XXX - SG_ SteColumn_Status_UB : 28|1@0+ (1,0) [0|0] "" XXX - SG_ SteColumn_Status : 31|3@0+ (1,0) [0|0] "" XXX - SG_ SteCol_Manual_Override_UB : 26|1@0+ (1,0) [0|0] "" XXX - SG_ SteCol_Manual_Override : 27|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Send_UB : 20|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Send : 6|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Phone_UB : 17|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Phone : 3|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_OK_UB : 16|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_OK : 2|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Volume_Up_UB : 23|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Volume_Down_UB : 22|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Voice_PTT_UB : 21|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Seek_Right_UB : 19|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Seek_Left_UB : 18|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Mode_UB : 11|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Mode : 13|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Media_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Volume_Up : 15|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Volume_Down : 14|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Voice_PTT : 7|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Seek_Right : 5|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Seek_Left : 4|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Media : 1|1@0+ (1,0) [0|0] "" XXX - SG_ VehYaw_W_Actl : 55|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - SG_ SteWhlCtl_End_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_End : 0|1@0+ (1,0) [0|0] "" XXX - SG_ VehYaw_W_Actl_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Mute_UB : 10|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Mute : 12|1@0+ (1,0) [0|0] "" XXX - -BO_ 257 Driver_Seat_Information: 8 XXX - SG_ Reverse_Mirror_Stat : 3|2@0+ (1,0) [0|0] "" XXX - SG_ Memory_Feedback_Rqst : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Easy_Entry_Exit_Stat : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 260 Driver_Seat_Information_2: 8 XXX - SG_ Memory_Cmd : 15|4@0+ (1,0) [0|0] "" XXX - SG_ Easy_Entry_Rqst : 4|2@0+ (1,0) [0|0] "" XXX - SG_ DrvSeat_Stat : 7|3@0+ (1,0) [0|0] "" XXX - SG_ Cancel_Auto_Movement : 1|1@0+ (1,0) [0|0] "" XXX - -BO_ 269 IdleShutdown_Legacy: 8 XXX - SG_ IDLE_ENGINE_SHUTDOWN : 23|2@0+ (1,0) [0|0] "" XXX - -BO_ 272 Keyfob_Pad_Stat: 8 XXX - SG_ L_Pwr_Sliding_Dr_Rqst : 28|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Decklid_Rqst : 31|1@0+ (1,0) [0|0] "" XXX - SG_ R_Pwr_Sliding_Dr_Rqst : 29|1@0+ (1,0) [0|0] "" XXX - SG_ Keyfob_Pad_Msg_Count : 23|8@0+ (1,0) [0|0] "Counts" XXX - SG_ Keyfob_Pad_Id_Number : 15|8@0+ (1,0) [0|0] "" XXX - SG_ Keyfob_Pad_Button_Pressed : 7|8@0+ (1,0) [0|0] "" XXX - SG_ Power_Liftgate_Rqst : 30|1@0+ (1,0) [0|0] "" XXX - SG_ Keycode_Status : 27|20@0+ (1,0) [0|0] "" XXX - -BO_ 275 Power_Liftgate_Mode_StatM: 8 XXX - SG_ Power_Liftgate_Mode_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ DrTgateChime_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 276 Running_Board_CmdM: 8 XXX - SG_ Running_Board_Cmd : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 277 Running_Board_StatM: 8 XXX - SG_ Running_Board_Stat : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 288 ClmtCtrlSeat_SetCmdlegacy1: 8 XXX - SG_ ClmtCtrlSeat_SetCmd_Dvr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 289 ClmtCtrlSeat_SetStat_DvrM: 8 XXX - SG_ ClmtCtrlSeat_SetStat_Dvr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 290 ClmtCtrlSeat_SetCmdlegacy2: 8 XXX - SG_ ClmtCtrlSeat_SetCmd_Psgr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 291 ClmtCtrlSeat_SetStat_PsgrM: 8 XXX - SG_ ClmtCtrlSeat_SetStat_Psgr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 292 ClmtCtrlSeatSet_Cmd_v2_MS: 8 XXX - SG_ ClmtCtrlSeat_SetCmd_Psgr : 15|8@0+ (1,0) [0|0] "" XXX - SG_ ClmtCtrlSeat_SetCmd_Dvr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 293 ClmtCtrlSeatSet_Stat_v2: 8 XXX - SG_ ClmtCtrlSeat_SetStat_Psgr : 15|8@0+ (1,0) [0|0] "" XXX - SG_ ClmtCtrlSeat_SetStat_Dvr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 304 Mirror_Manual_Override_M: 8 XXX - SG_ Mirror_Manual_Override : 7|1@0+ (1,0) [0|0] "Binary" XXX - -BO_ 305 Memory_Sw_StatM: 8 XXX - SG_ Memory_Sw_Message_Count : 15|8@0+ (1,0) [0|0] "Counts" XXX - SG_ Memory_Set_Sw_Stat : 7|1@0+ (1,0) [0|0] "Binary" XXX - SG_ Memory_Set_Cancel : 3|1@0+ (1,0) [0|0] "Binary" XXX - SG_ Memory_3_Sw_Stat : 4|1@0+ (1,0) [0|0] "Binary" XXX - SG_ Memory_2_Sw_Stat : 5|1@0+ (1,0) [0|0] "Binary" XXX - SG_ Memory_1_Sw_Stat : 6|1@0+ (1,0) [0|0] "Binary" XXX - -BO_ 306 Driver_Lock_Sw_StatM: 8 XXX - SG_ Driver_Door_Key_Unlock : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Driver_Door_Key_Lock : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Driver_Lock_Sw_Message_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX - SG_ Driver_Lock_Sw_Stat : 15|2@0+ (1,0) [0|0] "" XXX - -BO_ 309 Memory_Cancel_Cmd_M: 8 XXX - SG_ Memory_Cancel_Cmd : 7|1@0+ (1,0) [0|0] "Binary" XXX - -BO_ 310 Driver_Door_Lock_CmdM: 8 XXX - SG_ Driver_Door_Lock_Msg_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX - SG_ Driver_Door_Lock_Cmd : 15|4@0+ (1,0) [0|0] "" XXX - -BO_ 311 Pass_Mirror_Sw_StatM: 8 XXX - SG_ Pass_Mirror_Sw_UD_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Mirror_Sw_LR_Stat : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 313 RPwrSlideDr_Unlock_RqstM: 8 XXX - SG_ RPwrSlideDr_Unlock_Rqst : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 320 LPwrSlideDr_Unlock_RqstM: 8 XXX - SG_ LPwrSlideDr_Unlock_Rqst : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 321 Passive_Entry_Ctrl_Data: 8 XXX - SG_ PE_Control_Data_1 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Control_Cmd : 7|3@0+ (1,0) [0|0] "" XXX - SG_ PK_SearchResults_Prog : 63|4@0+ (1,0) [0|0] "" XXX - SG_ PK_SearchResults_MyKey : 4|4@0+ (1,0) [0|0] "" XXX - SG_ PK_SearchResults_Found : 59|4@0+ (1,0) [0|0] "" XXX - SG_ PK_Search_EvNum : 15|8@0+ (1,0) [0|0] "Counts" XXX - SG_ PE_Control_Data_5 : 55|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Control_Data_4 : 47|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Control_Data_3 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Control_Data_2 : 31|8@0+ (1,0) [0|0] "" XXX - -BO_ 322 Passive_Entry_Target_Data: 8 XXX - SG_ PE_Target_Data_5 : 47|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Target_Cmd : 7|2@0+ (1,0) [0|0] "" XXX - SG_ PE_Target_Status : 5|1@0+ (1,0) [0|0] "" XXX - SG_ PE_Target_Data_1 : 15|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Search_Rqst : 4|2@0+ (1,0) [0|0] "" XXX - SG_ PE_Target_Data_4 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Target_Data_3 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Target_Data_2 : 23|8@0+ (1,0) [0|0] "" XXX - -BO_ 577 BCM_m_FrP28: 8 XXX - SG_ WheelRotToothCntFrL : 15|8@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntFrL_UB : 42|1@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntFrR : 23|8@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntFrR_UB : 41|1@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntReL : 31|8@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntReL_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntReR : 39|8@0+ (1,0) [0|0] "" XXX - SG_ WheelRotToothCntReR_UB : 43|1@0+ (1,0) [0|0] "" XXX - -BO_ 736 FCIM_Button_Press: 8 XXX - SG_ FCIM_Target_ID : 13|4@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Button_Type : 7|8@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Button_State : 15|2@0+ (1,0) [0|0] "" XXX - -BO_ 806 Compressor_Req: 8 XXX - SG_ HvacEvap_Te_Rq : 33|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ HvacAirCond_B_Rq : 7|1@0+ (1,0) [0|0] "" XXX - SG_ HvacEvap_Te_Offst : 1|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - -BO_ 842 MassageSeat_Data1: 8 XXX - SG_ SeatLmbrUpDrv_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrMidDrv_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrLoDrv_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlUpDrv_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlLoDrv_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 843 MassageSeat_Data2: 8 XXX - SG_ SeatLmbrUpPsgr_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrMidPsgr_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrLoPsgr_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlUpPsgr_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlLoPsgr_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 844 MassageSeat_Stat1: 8 XXX - SG_ StmsLmbrDrv_D_Stat : 17|2@0+ (1,0) [0|0] "" XXX - SG_ StmsCshnDrv_D_Stat : 19|2@0+ (1,0) [0|0] "" XXX - SG_ SeatSwtchDrv_B_Stat : 31|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDrv_D_Stat : 23|3@0+ (1,0) [0|0] "" XXX - SG_ SeatAirAmb_P_Actl : 7|16@0+ (0.01,0) [0|0] "KiloPascal" XXX - SG_ SeatPDrv_B_Stat : 20|1@0+ (1,0) [0|0] "" XXX - -BO_ 845 MassageSeat_Stat2: 8 XXX - SG_ StmsLmbrPsgr_D_Stat : 15|2@0+ (1,0) [0|0] "" XXX - SG_ StmsCshnPsgr_D_Stat : 13|2@0+ (1,0) [0|0] "" XXX - SG_ SeatSwtchPsgr_B_Stat : 11|1@0+ (1,0) [0|0] "" XXX - SG_ SeatPPsgr_B_Stat : 7|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnPsgr_D_Stat : 6|3@0+ (1,0) [0|0] "" XXX - SG_ PsgrMemFeedback_Rsp : 3|4@0+ (1,0) [0|0] "" XXX - -BO_ 846 MassageSeat_Req_MS: 8 XXX - SG_ SeatFnPsgr_D_Rq : 15|3@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDrv_D_Rq : 12|3@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDfaltPsgr_B_Rq : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDfaltDrv_B_Rq : 8|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnChngPsgr_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX - SG_ SeatFnChngDrv_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX - SG_ PsgrMemory_Rq : 3|4@0+ (1,0) [0|0] "" XXX - -BO_ 849 MassageSeat_Data3: 8 XXX - SG_ SeatCshnDrvRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnDrvRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnDrvFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnDrvFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 850 MassageSeat_Data4: 8 XXX - SG_ SeatCshnPsgrRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnPsgrRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnPsgrFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnPsgrFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 853 EFP_CC_Status_MS: 8 XXX - SG_ Save_My_Temp : 59|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Left_Temp_Setpt : 31|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RrDefrost_HtdMirrorReq : 60|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Control_Status : 16|1@0+ (1,0) [0|0] "" XXX - SG_ MultipleButtonPressReq : 63|3@0+ (1,0) [0|0] "" XXX - SG_ Rear_System_Mode_Req : 19|3@0+ (1,0) [0|0] "" XXX - SG_ Recirc_Request : 23|2@0+ (1,0) [0|0] "" XXX - SG_ Front_Rt_Temp_Setpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ AC_Request : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Windshield_ModeRequest : 15|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Panel_Mode_Request : 7|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Overriding_ModeReq : 10|3@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_Request : 3|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Rear_Right_Temp_Setpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ Forced_Recirc_Req : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Left_Temp_Setpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX - -BO_ 854 EFP_CC_Seat_Req_Stat_MS: 8 XXX - SG_ Front_Rear_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX - SG_ Pass_Rr_Cond_Seat_Req : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Rr_Cond_Seat_Lvl : 8|3@0+ (1,0) [0|0] "" XXX - SG_ Pass_Fr_Cond_Seat_Req : 13|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Fr_Cond_Seat_Lvl : 11|3@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Rr_Cond_Seat_Req : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Rr_Cond_Seat_Lvl : 2|3@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Fr_Cond_Seat_Req : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Fr_Cond_Seat_Lvl : 5|3@0+ (1,0) [0|0] "" XXX - -BO_ 855 RCCM_CC_Status: 8 XXX - SG_ RrBlwrCondStLdShedStat : 25|2@0+ (1,0) [0|0] "" XXX - SG_ FrBlwrCondStLdShedStat : 20|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_Rr_Rt_TempSetpt : 63|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Rr_Left_TempSetpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Fr_Rt_TempSetpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Fr_Left_TempSetpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Fr_Rr_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX - SG_ Panel_Mode_State : 7|4@0+ (8.33,0) [0|0] "%" XXX - SG_ RrDefHtdMirrLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX - SG_ Windshield_Mode_State : 15|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Recirc_Door_State : 11|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_System_Mode_State : 23|3@0+ (1,0) [0|0] "" XXX - SG_ Default_Defrost_State : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Auto_AC_Indicator_Temp : 16|1@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_State : 3|4@0+ (8.33,0) [0|0] "%" XXX - SG_ RrDefrost_HtdMirrState : 8|1@0+ (1,0) [0|0] "" XXX - -BO_ 856 RCCM_CC_Seat_Status: 8 XXX - SG_ Active_My_Temp : 2|1@0+ (1,0) [0|0] "" XXX - SG_ CC_HtdStrWhl_Req : 24|1@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PR_Cond_Seat_Lvl : 31|3@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PR_Cond_Seat_Req : 28|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PF_Cond_Seat_Req : 20|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PF_Cond_Seat_Lvl : 23|3@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DR_Cond_Seat_Req : 12|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DR_Cond_Seat_Lvl : 15|3@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DF_Cond_Seat_Req : 4|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DF_Cond_Seat_Lvl : 7|3@0+ (1,0) [0|0] "" XXX - SG_ PassRrCondStLdShedStat : 26|2@0+ (1,0) [0|0] "" XXX - SG_ PassFrCondStLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX - SG_ DrvRrCondStLdShedStat : 10|2@0+ (1,0) [0|0] "" XXX - SG_ DrvFrCondStLdShedStat : 1|2@0+ (1,0) [0|0] "" XXX - -BO_ 857 RCCM_CC_MBP_Press_Stat: 8 XXX - SG_ Report_Active : 33|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Temp_Units : 35|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Fan_Bars_Disply : 39|3@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Temp_Units : 36|1@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyPass10 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyPass1 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyDrvr10 : 7|8@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyDrvr1 : 15|8@0+ (1,0) [0|0] "" XXX - -BO_ 859 MFD_CC_Status_MS: 8 XXX - SG_ Rear_Mode_Bttn_Status : 38|1@0+ (1,0) [0|0] "" XXX - -BO_ 860 EFP_CC_Info_Status_MS: 8 XXX - SG_ Rear_Panel_Btn_State : 41|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Floor_Btn_State : 40|1@0+ (1,0) [0|0] "" XXX - SG_ HtdStrWhl_SftBtt_Stt : 39|2@0+ (1,0) [0|0] "" XXX - SG_ AC_Sft_Button_State : 23|2@0+ (1,0) [0|0] "" XXX - SG_ DrvRrCondSeatSftBttnSt : 47|3@0+ (1,0) [0|0] "" XXX - SG_ DrvFrCondSeatSftBtnStt : 37|3@0+ (1,0) [0|0] "" XXX - SG_ CC_RecircSBtn_St : 27|2@0+ (1,0) [0|0] "" XXX - SG_ CC_RrDefrSBtn_St : 24|1@0+ (1,0) [0|0] "" XXX - SG_ PasRrCondSeatSftBttnSt : 44|3@0+ (1,0) [0|0] "" XXX - SG_ PasFrCondSeatSftBtnStt : 34|3@0+ (1,0) [0|0] "" XXX - SG_ MyTemp_Soft_Bttn_State : 25|1@0+ (1,0) [0|0] "" XXX - SG_ CC_MaxACSBtn_St : 28|1@0+ (1,0) [0|0] "" XXX - SG_ RearPowerButtonState : 16|1@0+ (1,0) [0|0] "" XXX - SG_ RearCoolBarsDisplayed : 11|3@0+ (1,0) [0|0] "Bars_On" XXX - SG_ Rear_Sft_Control_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ CC_RrNeutralBarDsp_St : 8|1@0+ (1,0) [0|0] "" XXX - SG_ CC_RrHeatBarsDsp_St : 31|3@0+ (1,0) [0|0] "Bars_On" XXX - SG_ Rear_Fan_Bars_Displayed : 19|3@0+ (1,0) [0|0] "" XXX - SG_ CC_RrCtrlBtn_St : 20|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Auto_Button_State : 21|1@0+ (1,0) [0|0] "" XXX - SG_ CC_FrPowerSBtn_St : 14|1@0+ (1,0) [0|0] "" XXX - SG_ CC_FrDefrostSBtn_St : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_Soft_Btn_Stt : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_MODE_State : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_FAN_State : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Dual_Button_State : 12|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarPnlSBtn_St : 5|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarPnFlrSBtn_St : 4|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarFlrWsSBtn_St : 2|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarDrvFlrSBtn_St : 3|1@0+ (1,0) [0|0] "" XXX - -BO_ 861 HSWheel_CC_Info_Stat: 8 XXX - SG_ HtdStrWhl_SftBtt_State : 57|2@0+ (1,0) [0|0] "" XXX - -BO_ 862 Climate_Control_Data_2: 8 XXX - SG_ HvacRec_Pc_Est : 31|7@0+ (1,0) [0|0] "%" XXX - SG_ HvacEngIdleInc_B_Rq : 24|1@0+ (1,0) [0|0] "" XXX - SG_ HvacAir_Flw_Est : 13|9@0+ (0.5,0) [0|0] "liter/second" XXX - SG_ AmbTempImpr : 7|10@0+ (0.25,-128.0) [0|0] "degreesC" XXX - -BO_ 900 Vehicle_Access_RqstM: 8 XXX - SG_ PE_AssocConfirm_D_Actl : 63|3@0+ (1,0) [0|0] "" XXX - SG_ DrTgateOpen_D_RqRfa : 51|2@0+ (1,0) [0|0] "" XXX - SG_ PE_Decklid_Inhibit_Rqst : 53|2@0+ (1,0) [0|0] "" XXX - SG_ PK_Program : 45|2@0+ (1,0) [0|0] "" XXX - SG_ PE_Packet_Cnt : 31|8@0+ (1,0) [0|0] "Counts" XXX - SG_ PE_Control_Status : 33|2@0+ (1,0) [0|0] "" XXX - SG_ PE_Control_Code : 7|8@0+ (1,0) [0|0] "" XXX - SG_ PE_Perimeter_Lighting_Stat : 15|2@0+ (1,0) [0|0] "" XXX - SG_ PE_RKE_Flash_Rqst : 34|1@0+ (1,0) [0|0] "" XXX - SG_ PE_Lock_EvNum : 23|8@0+ (1,0) [0|0] "Counts" XXX - SG_ PE_Lock_Requestor : 39|5@0+ (1,0) [0|0] "" XXX - SG_ PE_Lock_Sub_Id : 11|4@0+ (1,0) [0|0] "" XXX - SG_ PE_Lock_Status : 13|2@0+ (1,0) [0|0] "" XXX - SG_ PE_DrvCfg_Horn_Rqst : 47|2@0+ (1,0) [0|0] "" XXX - SG_ PEBackupSlot_Stats : 55|2@0+ (1,0) [0|0] "" XXX - SG_ PE_Fob_Number : 43|4@0+ (1,0) [0|0] "Number" XXX - SG_ PE_Keypad_LiftGlass_Rqst : 49|1@0+ (1,0) [0|0] "" XXX - -BO_ 901 Vehicle_Lock_Status: 8 XXX - SG_ CntrStkKeycodeActl : 55|16@0+ (1,0) [0|0] "" XXX - SG_ CntrStk_D_RqAssoc_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ CntrStk_D_RqAssoc : 43|3@0+ (1,0) [0|0] "" XXX - SG_ KeyTypeChngMykey_D_Rq : 45|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_Lock_Sub_Id : 21|4@0+ (1,0) [0|0] "" XXX - SG_ Veh_Lock_Status : 17|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_Lock_Requestor : 39|5@0+ (1,0) [0|0] "" XXX - SG_ Veh_Lock_EvNum : 31|8@0+ (1,0) [0|0] "Counts" XXX - SG_ Trim_Switch_Status_Count : 15|8@0+ (1,0) [0|0] "Counts" XXX - SG_ Trim_Switch_Status : 23|2@0+ (1,0) [0|0] "" XXX - SG_ DF_KeyCyl_Switch_Stat_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX - SG_ DF_KeyCyl_Switch_Stat : 34|2@0+ (1,0) [0|0] "" XXX - SG_ Perimeter_Alarm_Status : 47|2@0+ (1,0) [0|0] "" XXX - SG_ KeyTypeChngMykey_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX - -BO_ 902 Remote_Start: 8 XXX - SG_ Remote_Start_Req : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 903 CC_FCIM_Update: 8 XXX - SG_ Rr_Temp_M_H_Heat_Ind : 30|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_7_Indicator : 45|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_6_Indicator : 46|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_5_Indicator : 47|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_4_Indicator : 32|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_3_Indicator : 33|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_2_Indicator : 34|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Fan_Low_Indicator : 35|1@0+ (1,0) [0|0] "" XXX - SG_ AC_Indicator : 36|1@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_Indicator : 37|1@0+ (1,0) [0|0] "" XXX - SG_ Panel_Mode_Indicator : 38|1@0+ (1,0) [0|0] "" XXX - SG_ Windshield_Mode_Indicator : 39|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_High_Cool_Ind : 24|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_M_H_Cool_Ind : 25|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_M_L_Cool_Ind : 26|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_Low_Cool_Ind : 27|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_Center_Ind_On : 28|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_High_Heat_Ind : 29|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_M_L_Heat_Ind : 31|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Temp_Low_Heat_Ind : 16|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Control_Indicator : 17|1@0+ (1,0) [0|0] "" XXX - SG_ Auto_Indicator_Rear : 18|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Indicator_Rear : 19|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_U_R_Seat_Cool_Ind : 20|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_M_Seat_Cool_Ind : 21|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_L_L_Seat_Cool_Ind : 22|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_U_R_Seat_Heat_Ind : 23|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_M_Seat_Heat_Ind : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_L_L_Seat_Heat_Ind : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_U_R_Seat_Cool_Ind : 10|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_M_Seat_Cool_Ind : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_L_L_Seat_Cool_Ind : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_U_R_Seat_Heat_Ind : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_M_Seat_Heat_Ind : 14|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_L_L_Seat_Heat_Ind : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Single_Mode_Indicator : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Auto_Indicator : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Recirc_Indicator : 2|1@0+ (1,0) [0|0] "" XXX - SG_ Max_AC_Econ_Indicator : 3|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_DefHtd_Mirr_Indicator : 4|1@0+ (1,0) [0|0] "" XXX - SG_ Defrost_Indicator : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Temp_Dual_Indicator : 6|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Indicator_Front : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 904 CC_NavChassis_Info_Status: 8 XXX - SG_ Rear_Defrost_Soft_Bttn_Stt : 52|1@0+ (1,0) [0|0] "" XXX - SG_ Recirc_Soft_Button_State : 54|2@0+ (1,0) [0|0] "" XXX - SG_ Max_AC_Soft_Button_State : 55|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_Soft_Btn_Stt : 24|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Power_Soft_Btn_State : 25|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Defrost_Soft_Btn_Stt : 26|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Power_Button_State : 33|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_FAN_Indicator : 27|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_MODE_Indicator : 28|1@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Rear_Set_Temp_Display : 17|1@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Rear_Set_Temp_Units : 19|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Heat_Bars_Displayed : 42|3@0+ (1,0) [0|0] "Bars_On" XXX - SG_ CC_Bar_Rear_Set_Temp_Dig3 : 21|2@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Rear_Set_Temp_Dig2 : 15|8@0+ (1,0) [0|0] "ASCII" XXX - SG_ CC_Bar_Rear_Set_Temp_Dig1 : 7|8@0+ (1,0) [0|0] "ASCII" XXX - SG_ Rear_Neutral_Bar_Displayed : 43|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Fan_Bars_Displayed : 46|3@0+ (1,0) [0|0] "" XXX - SG_ Rear_Control_Button_State : 47|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Auto_Button_State : 32|1@0+ (1,0) [0|0] "" XXX - SG_ AC_Sft_Button_State : 35|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Cool_Bars_Displayed : 38|3@0+ (1,0) [0|0] "Bars_On" XXX - SG_ Dual_Button_State : 39|1@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Sft_Btn_FlrWs_State : 29|1@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Sft_Btn_Floor_State : 30|1@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Sft_Btn_PnFlr_State : 31|1@0+ (1,0) [0|0] "" XXX - SG_ CC_Bar_Sft_Btn_Pnl_State : 16|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Sft_Control_Status : 23|2@0+ (1,0) [0|0] "" XXX - -BO_ 920 FCIM_CC_Status: 8 XXX - SG_ Manual_Temp_Knob_Pos : 8|9@0+ (1,0) [0|0] "Degrees CW" XXX - SG_ Manual_Blower_Knob_Pos : 24|9@0+ (1,0) [0|0] "Degrees CW" XXX - SG_ Rear_Blower_IncreaseButton : 40|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Blower_DecreaseButton : 55|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Temp_Decrease_Button : 41|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Temp_Increase_Button : 42|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Control_Button : 43|1@0+ (1,0) [0|0] "" XXX - SG_ Auto_Button_Rear : 44|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Button_Rear : 45|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_Heated_Seat_Btn : 47|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_Cooled_Seat_Btn : 46|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_Cooled_Seat_Btn : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_Heated_Seat_Btn : 10|1@0+ (1,0) [0|0] "" XXX - SG_ Blower_Decrease_Button : 25|1@0+ (1,0) [0|0] "" XXX - SG_ Blower_Increase_Button : 26|1@0+ (1,0) [0|0] "" XXX - SG_ Floor_Defrost_Mode_Button : 27|1@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_Button : 28|1@0+ (1,0) [0|0] "" XXX - SG_ Panel_Floor_Mode_Button : 29|1@0+ (1,0) [0|0] "" XXX - SG_ Panel_Mode_Button : 30|1@0+ (1,0) [0|0] "" XXX - SG_ Mode_Change_Button : 31|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_Temp_Increase : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_Temp_Decrease : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_Temp_Decrease : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Lft_Side_Temp_Increase : 14|1@0+ (1,0) [0|0] "" XXX - SG_ Auto_Button_Front : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Recirc_Button : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Max_AC_Econ_Button : 1|1@0+ (1,0) [0|0] "" XXX - SG_ AC_Button : 2|1@0+ (1,0) [0|0] "" XXX - SG_ Rr_Def_Htd_Mirr_Button : 3|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Defrost_Button : 4|1@0+ (1,0) [0|0] "" XXX - SG_ Rt_Side_Temp_Dual_Button : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Button_Front : 6|1@0+ (1,0) [0|0] "" XXX - SG_ Climate_Button : 7|1@0+ (1,0) [0|0] "" XXX - SG_ CcdMde_D_Rq : 54|2@0+ (1,0) [0|0] "" XXX - -BO_ 921 Nav_CC_Status: 8 XXX - SG_ Front_System_Button_Status : 7|5@0+ (1,0) [0|0] "" XXX - SG_ Rear_Temp_Button_Status : 23|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Man_Temp_Bar_Status : 11|4@0+ (1,0) [0|0] "" XXX - SG_ Rear_Fan_Button_Status : 13|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Man_ATC_Button_Status : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Blower_Bar_Status : 2|3@0+ (1,0) [0|0] "# of Bars" XXX - -BO_ 922 VoiceRec_CC_Request: 8 XXX - SG_ Recirculate_On : 10|1@0+ (1,0) [0|0] "" XXX - SG_ Recirculate_Off : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Defrost_On : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Defrost_Off : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Max_AC_On : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Max_AC_Off : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Defrost_On : 14|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Defrost_Off : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Blower_Increment : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Blower_Decrement : 23|1@0+ (1,0) [0|0] "" XXX - SG_ Dual_Zone_Off : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Driver_Temp_Increment : 22|1@0+ (1,0) [0|0] "" XXX - SG_ Driver_Temp_Decrement : 21|1@0+ (1,0) [0|0] "" XXX - SG_ Climate_On : 4|1@0+ (1,0) [0|0] "" XXX - SG_ Climate_Off : 3|1@0+ (1,0) [0|0] "" XXX - SG_ Automatic_Mode : 6|1@0+ (1,0) [0|0] "" XXX - SG_ AC_On : 2|1@0+ (1,0) [0|0] "" XXX - SG_ AC_Off : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Voice_Blower_Limit : 7|1@0+ (1,0) [0|0] "" XXX - SG_ Driver_Set_Temp : 31|8@0+ (0.5,0) [0|0] "Degrees" XXX - -BO_ 928 Ignition_Switch_PositionM: 8 XXX - SG_ AirAmb_Te_ActlFilt_UB : 14|1@0+ (1,0) [0|0] "" XXX - SG_ AirAmb_Te_ActlFilt : 49|10@0+ (0.25,-128.0) [0|0] "deg C" XXX - SG_ OdometerMasterValue_UB : 15|1@0+ (1,0) [0|0] "" XXX - SG_ OdometerMasterValue : 31|24@0+ (1,0) [0|0] "km" XXX - SG_ Remote_Start_Status : 13|2@0+ (1,0) [0|0] "" XXX - SG_ Key_In_Ignition_Stat : 3|2@0+ (1,0) [0|0] "" XXX - SG_ Ignition_Switch_Stable : 1|2@0+ (1,0) [0|0] "" XXX - SG_ Ignition_Status : 7|4@0+ (1,0) [0|0] "" XXX - SG_ BOO_Switch_Status : 9|2@0+ (1,0) [0|0] "" XXX - SG_ Remote_Device_Feedback : 23|3@0+ (1,0) [0|0] "" XXX - -BO_ 934 Side_Detect_L_StatusM: 8 XXX - SG_ Cross_Traffic_L_SnState : 23|2@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_L_SysOpState : 3|2@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_L_SnsrState : 1|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_L_Illum : 15|8@0+ (1,0) [0|0] "%" XXX - SG_ Side_Detect_L_Detect : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_Op_State : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_Alert : 19|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_L_Alert : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 935 Side_Detect_R_StatusM: 8 XXX - SG_ Cross_Traffic_R_Alert : 23|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_SnState : 19|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_Op_State : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_R_Detect : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_R_Illum : 15|8@0+ (1,0) [0|0] "%" XXX - SG_ SideDetect_R_SnsrState : 1|2@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_R_SysOpState : 3|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_R_Alert : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 944 Body_Information_6_MS: 8 XXX - SG_ DRV_SELECT_STAT : 3|4@0+ (1,0) [0|0] "" XXX - SG_ reserve_2bits : 7|2@0+ (1,0) [0|0] "" XXX - SG_ reserve_2 : 5|1@0+ (1,0) [0|0] "" XXX - SG_ reserve_3 : 4|1@0+ (1,0) [0|0] "" XXX - -BO_ 945 Ajar_Stat: 8 XXX - SG_ Decklid_Ajar_Status : 3|1@0+ (1,0) [0|0] "" XXX - SG_ Hood_Ajar_Status : 0|1@0+ (1,0) [0|0] "" XXX - SG_ LG_Glass_Ajar_Status : 2|1@0+ (1,0) [0|0] "" XXX - SG_ DF_Door_Ajar_Status : 7|1@0+ (1,0) [0|0] "" XXX - SG_ PF_Door_Ajar_Status : 6|1@0+ (1,0) [0|0] "" XXX - SG_ DR_Door_Ajar_Status : 5|1@0+ (1,0) [0|0] "" XXX - SG_ PR_Door_Ajar_Status : 4|1@0+ (1,0) [0|0] "" XXX - SG_ LG_Door_Ajar_Status : 1|1@0+ (1,0) [0|0] "" XXX - -BO_ 946 Body_Information_5_MS: 8 XXX - SG_ CoolantFanStepAct_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondRec_B_Rq_UB : 38|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondRec_B_Rq : 39|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondEvdc_D_Stats_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondEvdc_D_Stats : 37|3@0+ (1,0) [0|0] "" XXX - SG_ AirCondClutch_B_Stats_UB : 19|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondClutch_B_Stats : 20|1@0+ (1,0) [0|0] "" XXX - SG_ CoolantFanStepAct : 47|5@0+ (1,0) [0|0] "Steps" XXX - SG_ AirCondFluidHi_P_Actl_UB : 18|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondFluidHi_P_Actl : 31|8@0+ (0.125,0) [0|0] "bar" XXX - SG_ SECONDARY_HEATER_STAT_UB : 63|1@0+ (1,0) [0|0] "" XXX - SG_ CURRENT_DRAW_UB : 62|1@0+ (1,0) [0|0] "" XXX - SG_ SECONDARY_HEATER_STAT : 40|1@0+ (1,0) [0|0] "" XXX - SG_ CURRENT_DRAW : 55|8@0+ (0.5,0) [0|0] "Amps" XXX - -BO_ 947 BodyInformation_3_MS: 8 XXX - SG_ CamraDefog_B_Req_UB : 58|1@0+ (1,0) [0|0] "" XXX - SG_ TrStats_D_Actl_UB : 48|1@0+ (1,0) [0|0] "" XXX - SG_ RearFog_Lamp_Dbnce_UB : 49|1@0+ (1,0) [0|0] "" XXX - SG_ TrStats_D_Actl : 13|2@0+ (1,0) [0|0] "" XXX - SG_ CamraDefog_B_Req : 40|1@0+ (1,0) [0|0] "" XXX - SG_ RearFog_Lamp_Dbnce : 0|1@0+ (1,0) [0|0] "" XXX - SG_ CarMode : 53|4@0+ (1,0) [0|0] "" XXX - SG_ Day_Night_Status : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Parklamp_Status : 3|2@0+ (1,0) [0|0] "" XXX - SG_ Dimming_Lvl : 31|8@0+ (1,0) [0|0] "" XXX - SG_ Litval : 23|8@0+ (1,0) [0|0] "" XXX - SG_ Mfs_Turn_Stalk_SW_Status : 11|2@0+ (1,0) [0|0] "" XXX - SG_ PwMdeExten_D_Actl : 63|5@0+ (1,0) [0|0] "" XXX - SG_ STR_WHL_ANGLE : 39|15@0+ (0.1,-1000.0) [0|0] "Degrees" XXX - SG_ Turn_Seq_Cmd_Right : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Turn_Seq_Cmd_Left : 5|2@0+ (1,0) [0|0] "" XXX - SG_ Smart_Wiper_Motor_Stat_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Smart_Wiper_Motor_Stat : 55|2@0+ (1,0) [0|0] "" XXX - SG_ Mfs_Turn_Stalk_SW_Status_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ reserve : 1|1@0+ (1,0) [0|0] "" XXX - -BO_ 950 RKE_Packet: 8 XXX - SG_ RemoteKey_Packet_TIC : 7|32@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Packet_RollB : 55|8@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Packet_RollA : 47|8@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Packet_Ctrl : 39|8@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Packet_CkSum : 63|8@0+ (1,0) [0|0] "" XXX - -BO_ 951 TPM_Frame: 8 XXX - SG_ TirePress_Frame_Temp : 47|8@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Frame_Status : 55|8@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Frame_Press : 39|8@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Frame_ID : 7|32@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Frame_CkSum : 63|8@0+ (1,0) [0|0] "" XXX - -BO_ 952 RKE_TPM_Info: 8 XXX - SG_ TirePress_HitRate_Ctrl : 15|1@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_HitRate_Ctrl : 14|1@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Antenna_Ctrl : 7|2@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Filter_Ctrl : 5|2@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Filter_Ctrl : 3|2@0+ (1,0) [0|0] "" XXX - SG_ Modulation_Ctrl : 1|2@0+ (1,0) [0|0] "" XXX - -BO_ 953 RKE_Info: 8 XXX - SG_ RemoteKey_Info_TIC : 7|32@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Info_RollB : 55|8@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Info_RollA : 47|8@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Info_Ctrl : 39|8@0+ (1,0) [0|0] "" XXX - SG_ RemoteKey_Info_CkSum : 63|8@0+ (1,0) [0|0] "" XXX - -BO_ 954 Tire_Pressure_Info: 8 XXX - SG_ TirePress_Info_MaxInd : 47|8@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Info_Index : 39|8@0+ (1,0) [0|0] "" XXX - SG_ TirePress_Info_ID : 7|32@0+ (1,0) [0|0] "" XXX - -BO_ 956 Body_Information_7_MS: 8 XXX - SG_ GearLvrPos_D_Actl_UB : 21|1@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTot_Tq_Actl : 31|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ GearLvrPos_D_Actl : 7|4@0+ (1,0) [0|0] "" XXX - SG_ ApedPos_Pc_ActlArb : 15|10@0+ (0.1,0) [0|0] "%" XXX - SG_ PrplWhlTot_Tq_Actl_UB : 17|1@0+ (1,0) [0|0] "" XXX - SG_ EngOff_T_Actl : 47|16@0+ (1,0) [0|0] "seconds" XXX - SG_ ApedPos_Pc_ActlArb_UB : 20|1@0+ (1,0) [0|0] "" XXX - -BO_ 958 Rear_FoglampStat: 8 XXX - SG_ RearFog_Lamp_Ind : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 963 BCM_to_MS_Body: 8 XXX - SG_ LF_Low_Beam_CKT_CAN : 2|1@0+ (1,0) [0|0] "" XXX - SG_ IKT_Program_Status : 51|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_Spd_Slow_Puddle_Status : 41|2@0+ (1,0) [0|0] "" XXX - SG_ Illuminated_Exit_Status : 43|2@0+ (1,0) [0|0] "" XXX - SG_ Illuminated_Entry_Status : 45|2@0+ (1,0) [0|0] "" XXX - SG_ Door_Courtesy_Light_Status : 47|2@0+ (1,0) [0|0] "" XXX - SG_ Courtesy_Demand_BSave_Stat : 33|2@0+ (1,0) [0|0] "" XXX - SG_ Alarm_Lights_Courtesy_Stat : 35|2@0+ (1,0) [0|0] "" XXX - SG_ Courtesy_Delay_Status : 37|2@0+ (1,0) [0|0] "" XXX - SG_ Courtesy_Mode_Status : 39|2@0+ (1,0) [0|0] "" XXX - SG_ Front_Fog_Light_SW_Status : 22|2@0+ (1,0) [0|0] "" XXX - SG_ Brake_Lamp_On_Status : 23|1@0+ (1,0) [0|0] "" XXX - SG_ ParkLamps_CKT_CAN : 8|1@0+ (1,0) [0|0] "" XXX - SG_ RF_Low_Beam_CKT_CAN : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Brk_Fluid_Lvl_Low : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Park_Brake_Status : 4|1@0+ (1,0) [0|0] "" XXX - SG_ High_Beam_Indicator_Rqst : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Headlamp_On_Wrning_Cmd : 6|1@0+ (1,0) [0|0] "" XXX - SG_ Key_In_Ignition_Warn_Cmd : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Park_Brake_Chime_Rqst : 3|1@0+ (1,0) [0|0] "" XXX - SG_ Daytime_Running_Lamps : 0|1@0+ (1,0) [0|0] "" XXX - SG_ AutoHighBeam_Cmd : 18|2@0+ (1,0) [0|0] "" XXX - SG_ Perimeter_Alarm_Chime_Rqst : 20|2@0+ (1,0) [0|0] "" XXX - SG_ OCSSensrDataUpperLim_UB : 11|1@0+ (1,0) [0|0] "" XXX - SG_ OCSSensrDataLowerLim_UB : 12|1@0+ (1,0) [0|0] "" XXX - SG_ OCSSensrDataUpperLim : 63|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSensrDataLowerLim : 31|8@0+ (1,0) [0|0] "" XXX - SG_ AutoHighBeam_Cmd_UB : 16|1@0+ (1,0) [0|0] "" XXX - SG_ PrkBrkActv_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - SG_ Headlamp_Switch_Stat : 49|2@0+ (1,0) [0|0] "" XXX - SG_ Perimeter_Alarm_Inclin_Cmd : 53|2@0+ (1,0) [0|0] "" XXX - SG_ Perimeter_Alarm_Intrus_Cmd : 55|2@0+ (1,0) [0|0] "" XXX - -BO_ 964 BodyInformation_2_MS: 8 XXX - SG_ LockInhibit : 41|1@0+ (1,0) [0|0] "" XXX - SG_ MetricActvTe_B_Actl_UB : 12|1@0+ (1,0) [0|0] "" XXX - SG_ MetricActvTe_B_Actl : 14|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Liftgate_Mode_Cmd : 42|1@0+ (1,0) [0|0] "" XXX - SG_ AirAmb_Te_Actl : 55|10@0+ (0.25,-128.0) [0|0] "degC" XXX - SG_ EngClntTe_D_Qf : 47|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_Cmd : 26|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_Cmd : 28|2@0+ (1,0) [0|0] "" XXX - SG_ SAPPStatusCoding : 39|8@0+ (1,0) [0|0] "" XXX - SG_ Delay_Accy : 31|1@0+ (1,0) [0|0] "" XXX - SG_ Volume_Cutback : 7|1@0+ (1,0) [0|0] "" XXX - SG_ MetricActv_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatTgate_B_Actl : 1|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatRr_B_Actl : 2|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatRl_B_Actl : 3|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatPsngr_B_Actl : 4|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatInnrTgate_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatHood_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatDrv_B_Actl : 10|1@0+ (1,0) [0|0] "" XXX - SG_ EngClnt_Te_Actl : 23|8@0+ (1,-60.0) [0|0] "degC" XXX - SG_ AirAmbTe_D_Qf_UB : 59|1@0+ (1,0) [0|0] "" XXX - SG_ Volume_Cutback_UB : 58|1@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_Cmd_UB : 57|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPStatusCoding_UB : 56|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Liftgate_Mode_Cmd_UB : 15|1@0+ (1,0) [0|0] "" XXX - SG_ MetricActv_B_Actl_UB : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_Cmd_UB : 11|1@0+ (1,0) [0|0] "" XXX - SG_ AirAmbTe_D_Qf : 61|2@0+ (1,0) [0|0] "" XXX - SG_ AirAmb_Te_Actl_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ EngClnt_Te_Actl_UB : 24|1@0+ (1,0) [0|0] "" XXX - -BO_ 966 Delay_AccyM_for_P473: 8 XXX - SG_ Delay_Accy : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 967 CMPS_FDM_Info_StatusMS: 8 XXX - SG_ Segment_MSD_UB : 37|1@0+ (1,0) [0|0] "" XXX - SG_ Segment_LSD_UB : 36|1@0+ (1,0) [0|0] "" XXX - SG_ Compass_Display_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ Segment_LSD : 15|8@0+ (1,0) [0|0] "" XXX - SG_ Segment_MSD : 7|8@0+ (1,0) [0|0] "" XXX - SG_ Cal_Icon : 21|1@0+ (1,0) [0|0] "" XXX - SG_ Zone_Icon : 22|1@0+ (1,0) [0|0] "" XXX - SG_ Compass_Display : 23|1@0+ (1,0) [0|0] "" XXX - SG_ Zone_Icon_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ Cal_Icon_UB : 33|1@0+ (1,0) [0|0] "" XXX - -BO_ 968 EATC_FDM_Info_Status: 8 XXX - SG_ Outside_Rear_Temp_Digit3 : 47|4@0+ (1,0) [0|0] "BCD" XXX - SG_ Outside_Rear_Temp_Digit2 : 35|4@0+ (1,0) [0|0] "BCD" XXX - SG_ Outside_Rear_Temp_Digit1 : 39|4@0+ (1,0) [0|0] "BCD" XXX - SG_ EATC_Out_Rear_Units : 58|2@0+ (1,0) [0|0] "" XXX - SG_ Outside_Rear_Temp_Digit4 : 55|2@0+ (1,0) [0|0] "" XXX - SG_ EATC_RHS_Units : 60|2@0+ (1,0) [0|0] "" XXX - SG_ EATC_Fan_Speed : 51|3@0+ (1,0) [0|0] "" XXX - SG_ EATC_Outside_Rear_Display : 62|2@0+ (1,0) [0|0] "" XXX - SG_ RHS_Temp_Display_Digit2 : 31|8@0+ (1,0) [0|0] "ASCII" XXX - SG_ RHS_Temp_Display_Digit3 : 41|2@0+ (1,0) [0|0] "" XXX - SG_ RHS_Temp_Display_Digit1 : 23|8@0+ (1,0) [0|0] "ASCII" XXX - SG_ EATC_RHS_Display : 63|1@0+ (1,0) [0|0] "" XXX - SG_ LHS_Temp_Display_Digit3 : 43|2@0+ (1,0) [0|0] "" XXX - SG_ LHS_Temp_Display_Digit2 : 15|8@0+ (1,0) [0|0] "ASCII" XXX - SG_ LHS_Temp_Display_Digit1 : 7|8@0+ (1,0) [0|0] "ASCII" XXX - SG_ EATC_LHS_Display : 48|1@0+ (1,0) [0|0] "" XXX - SG_ EATC_LHS_Units : 53|2@0+ (1,0) [0|0] "" XXX - -BO_ 969 Aux_Body_Ctrl_Mod_Status: 8 XXX - SG_ Perimeter_Alrm_Intrus_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Turn_Outage_Stat_Rt_Rear : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Turn_Outage_Stat_Left_Rear : 1|2@0+ (1,0) [0|0] "" XXX - SG_ Perimeter_Alrm_Inclin_Stat : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 976 Veh_Characteristic_Set_2: 8 XXX - SG_ VehMykey_Vl_LimRq_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ CamraFrntStat_D_Stat : 21|2@0+ (1,0) [0|0] "" XXX - SG_ CamraZoomMan_D_Actl : 12|3@0+ (1,0) [0|0] "" XXX - SG_ CamZoomActiveState : 17|2@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlStat_D_Actl : 19|2@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlDyn_D_Actl : 39|2@0+ (1,0) [0|0] "" XXX - SG_ CamPDCGuidStat : 31|2@0+ (1,0) [0|0] "" XXX - SG_ VehMykey_Vl_LimRq : 14|1@0+ (1,0) [0|0] "" XXX - SG_ IgnKeyType_D_Actl : 4|4@0+ (1,0) [0|0] "" XXX - SG_ New_Module_Attn_Event : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Beltminder_Warn_Stats : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Attn_Info_Audio : 7|3@0+ (1,0) [0|0] "" XXX - -BO_ 977 ClmtCtrlSeat_SetCmd_LRPM: 8 XXX - SG_ ClmtCtrlSeat_SetCmd_LRP : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 978 ClmtCtrlSeat_SetStat_LRPM: 8 XXX - SG_ ClmtCtrlSeat_SetStat_LRP : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 979 ClmtCtrlSeat_SetCmd_RRPM: 8 XXX - SG_ ClmtCtrlSeat_SetCmd_RRP : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 980 ClmtCtrlSeat_SetStat_RRPM: 8 XXX - SG_ ClmtCtrlSeat_SetStat_RRP : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 981 Rear_HVAC_Control_Status: 8 XXX - SG_ Temp_Knob_Position : 23|9@0+ (1,0) [0|0] "Degrees CW" XXX - SG_ Rear_Lock_Ind_State : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Blower_Knob_Position : 7|9@0+ (1,0) [0|0] "Degrees CW" XXX - SG_ AUTO_Ind_State : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Panel_Mode_Ind_State : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Panel_Floor_Md_Ind_State : 10|2@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_Ind_State : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Status : 14|1@0+ (1,0) [0|0] "" XXX - -BO_ 982 Rear_HVAC_Control_Update: 8 XXX - SG_ Power_State_Commanded : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Lock_Indicator : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Panel_Floor_Mode_Indicator : 4|2@0+ (1,0) [0|0] "" XXX - SG_ R_Floor_Mode_Indicator : 2|1@0+ (1,0) [0|0] "" XXX - SG_ AUTO_Mode_Indicator : 1|2@0+ (1,0) [0|0] "" XXX - SG_ F_Panel_Mode_Indicator : 13|1@0+ (1,0) [0|0] "" XXX - SG_ R_Panel_Mode_Indicator : 12|2@0+ (1,0) [0|0] "" XXX - -BO_ 986 Personality_APIM_Data3_MS: 8 XXX - SG_ LightAmbIntSwtchInc_B : 22|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbIntSwtchDec_B : 21|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbIntsty_No_Rq : 15|8@0+ (1,0) [0|0] "% Intensity" XXX - SG_ LightAmbColor_No_Rq : 7|8@0+ (1,0) [0|0] "Color Index" XXX - SG_ LightAmbClrSwtchInc_B : 20|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbClrSwtchDec_B : 23|1@0+ (1,0) [0|0] "" XXX - -BO_ 987 RHVAC_Data: 8 XXX - SG_ CamraDefog_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 992 Personality_Data_MS: 8 XXX - SG_ PersSetupRestr_D_Actl : 45|2@0+ (1,0) [0|0] "" XXX - SG_ PersSetupAccessCtrl : 43|1@0+ (1,0) [0|0] "SES" XXX - SG_ PersSetup_No_Actl : 55|16@0+ (1,0) [0|0] "Number" XXX - SG_ MsgCntrPersIndex_D_Rq_UB : 47|1@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrFeatNoRq_UB : 46|1@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrFeatConfigRq_UB : 33|1@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrDsplyOp_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrPersIndex_D_Rq : 39|3@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrFeatConfigRq : 23|16@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrFeatNoRq : 7|16@0+ (1,0) [0|0] "Number" XXX - SG_ MsgCntrDsplyOp_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX - -BO_ 993 Personality_DSM_Data: 8 XXX - SG_ PersIndexDsm_D_Actl : 47|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoDsmActl : 31|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigDsmActl : 15|16@0+ (1,0) [0|0] "" XXX - SG_ PersStore_D_Actl : 7|2@0+ (1,0) [0|0] "" XXX - SG_ MemSwtch_D_RqRecall : 5|3@0+ (1,0) [0|0] "" XXX - SG_ MemSwtch_D_RqAssoc : 2|3@0+ (1,0) [0|0] "" XXX - -BO_ 994 Personality_Data_MS_2: 8 XXX - SG_ RecallEvent_No_Cnt : 63|8@0+ (1,0) [0|0] "Counts" XXX - SG_ PersNo_D_Actl : 55|3@0+ (1,0) [0|0] "" XXX - SG_ PersNoPos_D_Actl : 44|3@0+ (1,0) [0|0] "" XXX - SG_ PersStore_D_Rq_UB : 41|1@0+ (1,0) [0|0] "" XXX - SG_ CtrStkPersIndex_D_Actl_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ CtrStkFeatNoActl_UB : 52|1@0+ (1,0) [0|0] "" XXX - SG_ CtrStkFeatConfigActl_UB : 33|1@0+ (1,0) [0|0] "" XXX - SG_ CtrStkDsplyOp_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX - SG_ CtrStkPersIndex_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ CtrStkFeatNoActl : 23|16@0+ (1,0) [0|0] "" XXX - SG_ PersStore_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX - SG_ CtrStkFeatConfigActl : 7|16@0+ (1,0) [0|0] "" XXX - SG_ CtrStkDsplyOp_D_Rq : 47|3@0+ (1,0) [0|0] "" XXX - -BO_ 996 Personality_HCMB_Data: 8 XXX - SG_ PersIndexHcmb_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoHcmbActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigHcmbActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 999 Personality_HVAC_Data: 8 XXX - SG_ LightAmbIntsty_No_Actl : 55|8@0+ (1,0) [0|0] "% Intensity" XXX - SG_ LightAmbColor_No_Actl : 47|8@0+ (1,0) [0|0] "Color Index" XXX - SG_ PersIndexHvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoHvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigHvacActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1000 ACM_Status_Message: 8 XXX - SG_ Multimedia_System : 26|1@0+ (1,0) [0|0] "" XXX - -BO_ 1001 Personality_RFA_Data: 8 XXX - SG_ PersIndexRfa_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoRfaActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigRfaActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1005 Personality_RHVAC_Data: 8 XXX - SG_ PersIndexRhvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoRhvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigRhvacActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1006 Nav_HMI_Status: 8 XXX - SG_ Nav_Unit_Setting : 14|1@0+ (1,0) [0|0] "" XXX - SG_ Fuel_Econ_AFE_Reset_Req : 15|1@0+ (1,0) [0|0] "" XXX - SG_ DistanceBarSetting : 23|1@0+ (1,0) [0|0] "" XXX - SG_ CamraZoomMan_D_Rq : 22|3@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlStat_D_Rq : 19|1@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlDyn_D_Rq : 18|1@0+ (1,0) [0|0] "" XXX - SG_ CamAutoTowbarZoom : 17|1@0+ (1,0) [0|0] "" XXX - -BO_ 1023 Reserve_3FF_MKX_Audio: 8 XXX - SG_ reserve : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 1034 GGCC_Config_Mgmt_ID_1: 8 XXX - SG_ VehicleGGCCData : 7|64@0+ (1,0) [0|0] "mixed" XXX - -BO_ 1050 Climate_Control_Data: 8 XXX - SG_ SecondaryHeater_Rqst : 31|1@0+ (1,0) [0|0] "" XXX - SG_ Passenger_Sunload_Raw : 15|8@0+ (5.0,0) [0|0] "W/m^2" XXX - SG_ Driver_Sunload_Raw : 7|8@0+ (5.0,0) [0|0] "W/m^2" XXX - SG_ HvacEvap_Te_Rq : 43|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ HvacRemoteStrt_N_Rq : 47|4@0+ (100.0,450.0) [0|0] "RPM" XXX - SG_ Remote_Start_QuietMode : 28|1@0+ (1,0) [0|0] "" XXX - SG_ InCarTempQF : 30|2@0+ (1,0) [0|0] "" XXX - SG_ HvacAirCond_B_Rq : 27|1@0+ (1,0) [0|0] "" XXX - SG_ InCarTemp : 39|8@0+ (0.5,-57.0) [0|0] "degreesC" XXX - SG_ Outside_Air_Temp_Stat : 23|8@0+ (0.5,-40.0) [0|0] "Degrees C" XXX - SG_ HvacEvap_Te_Actl : 49|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - -BO_ 1059 Engine_Data_MS: 8 XXX - SG_ Res_UreaLvlLo_B_Dsply_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ Res_UreaLvlLo_B_Dsply : 36|1@0+ (1,0) [0|0] "" XXX - SG_ Fuel_Level_State : 47|2@0+ (1,0) [0|0] "" XXX - SG_ AwdOffRoadMode_D_Stats_UB : 55|1@0+ (1,0) [0|0] "" XXX - SG_ AwdRnge_D_Actl_UB : 42|1@0+ (1,0) [0|0] "" XXX - SG_ RearDiffLckLamp_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX - SG_ AwdOffRoadMode_D_Stats : 41|2@0+ (1,0) [0|0] "" XXX - SG_ AwdRnge_D_Actl : 45|3@0+ (1,0) [0|0] "" XXX - SG_ RearDiffLckLamp_D_Rq : 34|2@0+ (1,0) [0|0] "" XXX - SG_ VEH_SPD : 7|16@0+ (0.01,-100.0) [0|0] "KPH" XXX - SG_ ENG_SPD : 23|16@0+ (0.25,0) [0|0] "RPM" XXX - SG_ Fuel_Level_State_UB : 37|1@0+ (1,0) [0|0] "" XXX - -BO_ 1061 Engine_Data_2_MS: 8 XXX - SG_ RstrnImpactEvntStatus_UB : 56|1@0+ (1,0) [0|0] "" XXX - SG_ EngAirIn_Te_Actl_UB : 60|1@0+ (1,0) [0|0] "" XXX - SG_ EngAirIn_Te_Actl : 55|10@0+ (0.25,-128.0) [0|0] "degC" XXX - SG_ ACCompressorDisp_UB : 61|1@0+ (1,0) [0|0] "" XXX - SG_ ACCompressorDisp : 46|7@0+ (1,0) [0|0] "%" XXX - SG_ RstrnImpactEvntStatus : 59|3@0+ (1,0) [0|0] "" XXX - SG_ EngAout_N_Actl_UB : 47|1@0+ (1,0) [0|0] "" XXX - SG_ EngAout_N_Actl : 28|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ VehVActlEng_D_Qf : 31|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_ActlEng_UB : 29|1@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_ActlEng : 15|16@0+ (0.01,0) [0|0] "kph" XXX - SG_ PwPck_D_Stat_UB : 3|1@0+ (1,0) [0|0] "" XXX - SG_ PwPck_D_Stat : 7|4@0+ (1,0) [0|0] "" XXX - -BO_ 1062 ACM_NAV_WHEEL_INFO: 8 XXX - SG_ WhlRotatRr_No_Cnt_UB : 63|1@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatRl_No_Cnt_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFr_No_Cnt_UB : 41|1@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFl_No_Cnt_UB : 42|1@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRr_D_Actl_UB : 44|1@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRl_D_Actl_UB : 45|1@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFr_D_Actl_UB : 46|1@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFl_D_Actl_UB : 47|1@0+ (1,0) [0|0] "" XXX - SG_ WHEEL_ROLLING_TIMESTAMP_UB : 62|1@0+ (1,0) [0|0] "" XXX - SG_ ACM_NAV_WHEEL_INFO_RESET : 43|1@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatRr_No_Cnt : 39|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFr_No_Cnt : 23|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRr_D_Actl : 1|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRl_D_Actl : 3|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFr_D_Actl : 5|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFl_D_Actl : 7|2@0+ (1,0) [0|0] "" XXX - SG_ WHEEL_ROLLING_TIMESTAMP : 55|8@0+ (1,0) [0|0] "" XXX - -BO_ 1068 Battery_Mgmt_2_MS: 8 XXX - SG_ Shed_T_Eng_Off_B : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Shed_Level_Req : 15|3@0+ (1,0) [0|0] "" XXX - SG_ Shed_Feature_Group_ID : 7|5@0+ (1,0) [0|0] "" XXX - SG_ Shed_Drain_Eng_Off_B : 2|1@0+ (1,0) [0|0] "" XXX - SG_ Batt_Lo_SoC_B : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Batt_Crit_SoC_B : 0|1@0+ (1,0) [0|0] "" XXX - -BO_ 1125 GPS_Data_Nav_1: 8 XXX - SG_ GpsHsphLattSth_D_Actl : 25|2@0+ (1,0) [0|0] "" XXX - SG_ GpsHsphLongEast_D_Actl : 9|2@0+ (1,0) [0|0] "" XXX - SG_ GPS_Longitude_Minutes : 46|6@0+ (1,0) [0|0] "Minutes" XXX - SG_ GPS_Longitude_Min_dec : 55|14@0+ (0.0001,0) [0|0] "Minutes" XXX - SG_ GPS_Longitude_Degrees : 39|9@0+ (1,-179.0) [0|0] "Degrees" XXX - SG_ GPS_Latitude_Minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX - SG_ GPS_Latitude_Min_dec : 23|14@0+ (0.0001,0) [0|0] "Minutes" XXX - SG_ GPS_Latitude_Degrees : 7|8@0+ (1,-89.0) [0|0] "Degrees" XXX - -BO_ 1126 GPS_Data_Nav_2: 8 XXX - SG_ Gps_B_Falt : 2|1@0+ (1,0) [0|0] "" XXX - SG_ GpsUtcYr_No_Actl : 55|5@0+ (1,1.0) [0|0] "Year" XXX - SG_ GpsUtcMnth_No_Actl : 47|4@0+ (1,1.0) [0|0] "Month" XXX - SG_ GpsUtcDay_No_Actl : 37|5@0+ (1,1.0) [0|0] "Day" XXX - SG_ GPS_UTC_seconds : 23|6@0+ (1,0) [0|0] "seconds" XXX - SG_ GPS_UTC_minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX - SG_ GPS_UTC_hours : 7|5@0+ (1,0) [0|0] "Hours" XXX - SG_ GPS_Pdop : 31|5@0+ (0.2,0) [0|0] "" XXX - SG_ GPS_Compass_direction : 26|4@0+ (1,0) [0|0] "" XXX - SG_ GPS_Actual_vs_Infer_pos : 38|1@0+ (1,0) [0|0] "" XXX - -BO_ 1127 GPS_Data_Nav_3: 8 XXX - SG_ GPS_Vdop : 63|5@0+ (0.2,0) [0|0] "" XXX - SG_ GPS_Speed : 47|8@0+ (1,0) [0|0] "MPH" XXX - SG_ GPS_Sat_num_in_view : 7|5@0+ (1,0) [0|0] "" XXX - SG_ GPS_MSL_altitude : 15|12@0+ (10.0,-20460.0) [0|0] "feet" XXX - SG_ GPS_Heading : 31|16@0+ (0.01,0) [0|0] "Degrees" XXX - SG_ GPS_Hdop : 55|5@0+ (0.2,0) [0|0] "" XXX - SG_ GPS_dimension : 2|3@0+ (1,0) [0|0] "" XXX - -BO_ 1144 GPS_Data_Nav_4: 8 XXX - SG_ VehPos_L_Est : 39|32@0+ (0.01,0) [0|0] "meter" XXX - SG_ VehHead_W_Actl : 23|16@0+ (0.01,-327.68) [0|0] "degrees/second" XXX - SG_ VehHead_An_Est : 7|16@0+ (0.01,0) [0|0] "degrees" XXX diff --git a/opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc b/opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc deleted file mode 100644 index 128721cbbf..0000000000 --- a/opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc +++ /dev/null @@ -1,1487 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 65 Global_PATS_Control_Info: 8 XXX - SG_ immoControlData_T1 : 15|40@0+ (1,0) [0|0] "" XXX - SG_ immoControlCmd_T1 : 7|3@0+ (1,0) [0|0] "" XXX - -BO_ 66 Global_PATS_Control_Info2: 8 XXX - SG_ immoControlData_T2 : 15|40@0+ (1,0) [0|0] "" XXX - SG_ immoControlCmd_T2 : 7|3@0+ (1,0) [0|0] "" XXX - -BO_ 71 Global_PATS_Target_Info: 8 XXX - SG_ immoTarget1Status : 7|3@0+ (1,0) [0|0] "" XXX - SG_ immoTarget1Data : 15|40@0+ (1,0) [0|0] "" XXX - SG_ immoTarget1Cmd : 4|3@0+ (1,0) [0|0] "" XXX - -BO_ 72 Global_PATS_Target_Info_2: 8 XXX - SG_ immoTarget2Status : 7|3@0+ (1,0) [0|0] "" XXX - SG_ immoTarget2Data : 15|40@0+ (1,0) [0|0] "" XXX - SG_ immoTarget2Cmd : 4|3@0+ (1,0) [0|0] "" XXX - -BO_ 73 Global_PATS_SubTarget_FoE: 8 XXX - SG_ immoSubTarget1Data_T1 : 15|40@0+ (1,0) [0|0] "" XXX - SG_ immoSubTarget1Cmd_T1 : 7|3@0+ (1,0) [0|0] "" XXX - -BO_ 74 VehEmergencyData1: 8 XXX - SG_ VedsPasSideBag_D_Ltchd : 60|3@0+ (1,0) [0|0] "" XXX - SG_ VedsPasCrtnBag_D_Ltchd : 55|3@0+ (1,0) [0|0] "" XXX - SG_ VedsPasBelt_D_Ltchd : 52|3@0+ (1,0) [0|0] "" XXX - SG_ VedsPasBag_D_Ltchd : 47|3@0+ (1,0) [0|0] "" XXX - SG_ VedsMultiEvnt_D_Ltchd : 44|3@0+ (1,0) [0|0] "" XXX - SG_ VedsMaxDeltaV_D_Ltchd : 39|8@0+ (1,0) [0|0] "" XXX - SG_ VedsKneeBag_D_Ltchd : 63|3@0+ (1,0) [0|0] "" XXX - SG_ VedsEvntType_D_Ltchd : 31|3@0+ (1,0) [0|0] "" XXX - SG_ VedsEvntRoll_D_Ltchd : 28|3@0+ (1,0) [0|0] "" XXX - SG_ VedsDrvSideBag_D_Ltchd : 23|3@0+ (1,0) [0|0] "" XXX - SG_ VedsDrvCrtnBag_D_Ltchd : 20|3@0+ (1,0) [0|0] "" XXX - SG_ VedsDrvBelt_D_Ltchd : 15|3@0+ (1,0) [0|0] "" XXX - SG_ VedsDrvBag_D_Ltchd : 12|3@0+ (1,0) [0|0] "" XXX - SG_ eCallNotification : 2|2@0+ (1,0) [0|0] "" XXX - -BO_ 75 VehEmergencyData2: 8 XXX - SG_ VedsRw3rBckl_D_Ltchd : 39|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw3mBckl_D_Ltchd : 31|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw3lBckl_D_Ltchd : 28|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw2rBckl_D_Ltchd : 23|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw2mBckl_D_Ltchd : 20|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw2lBckl_D_Ltchd : 15|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw1PasChld_D_Ltchd : 12|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw1PasBckl_D_Ltchd : 7|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw1DrvBckl_D_Ltchd : 4|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw2rRib_D_Ltchd : 47|3@0+ (1,0) [0|0] "" XXX - SG_ VedsRw2lRib_D_Ltchd : 36|3@0+ (1,0) [0|0] "" XXX - -BO_ 116 BrakeSnData_2_CG1: 8 XXX - SG_ VehDynamicsSOS : 55|1@0+ (1,0) [0|0] "" XXX - SG_ AwdLck_Tq_RqMx : 27|12@0+ (1,0) [0|0] "Nm" XXX - SG_ AwdLck_Tq_RqMn : 23|12@0+ (1,0) [0|0] "Nm" XXX - SG_ SteWhlComp_An_Est : 7|15@0+ (0.1,-1600.0) [0|0] "deg" XXX - SG_ StopLamp_B_RqBrk : 8|1@0+ (1,0) [0|0] "" XXX - SG_ BrkTerrMdeChng_D_Rdy : 45|3@0+ (1,0) [0|0] "" XXX - SG_ BrkTerrMde_D_Actl : 42|3@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCompAnEst_D_Qf : 47|2@0+ (1,0) [0|0] "" XXX - -BO_ 117 BrakeSnData_3_CG1: 8 XXX - SG_ HsaStat_D_Dsply : 35|3@0+ (1,0) [0|0] "" XXX - SG_ HsaTrnAout_Tq_Rq : 55|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ HsaStat_D_Actl : 38|3@0+ (1,0) [0|0] "" XXX - SG_ HsaRoad_Grad_Est : 32|9@0+ (0.5,-127.0) [0|0] "%" XXX - SG_ VehYawComp_W_Actl : 7|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX - SG_ VehYaw_W_Rq : 11|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX - SG_ VehSideSlip_An_Est : 31|9@0+ (0.002,-0.5) [0|0] "rad" XXX - -BO_ 124 BrakeSnData_4_CG1: 8 XXX - SG_ EngRun_D_ReqBrk : 10|2@0+ (1,0) [0|0] "" XXX - SG_ BrkTotTqRqArb_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX - SG_ BrkTotTqRqArb_No_Cnt : 31|4@0+ (1,0) [0|0] "" XXX - SG_ BrkTot_Tq_RqArb : 7|13@0+ (4.0,0) [0|0] "Nm" XXX - SG_ BrkTot_Tq_Actl : 39|13@0+ (4.0,0) [0|0] "Nm" XXX - SG_ VehOverGnd_V_Est : 55|16@0+ (0.01,0) [0|0] "kph" XXX - -BO_ 129 Steering_Wheel_Data2: 8 XXX - SG_ SteWhlCtl_RSide_OK : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_RSide_CursorUp : 8|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_RSide_CursorRt : 7|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_RSide_CursorLeft : 6|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_RSide_CursorDown : 5|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_LSide_OK : 4|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_LSide_CursorUp : 3|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_LSide_CursorRt : 2|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_LSide_CursorLeft : 1|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_LSide_CursorDown : 0|1@0+ (1,0) [0|0] "" XXX - -BO_ 130 EPAS_INFO: 8 XXX - SG_ SteMdule_U_Meas : 39|8@0+ (0.05,6.0) [0|0] "Volts" XXX - SG_ SteMdule_I_Est : 21|12@0+ (0.05,-64.0) [0|0] "Amps" XXX - SG_ EPAS_FAILURE : 9|2@0+ (1,0) [0|0] "" XXX - SG_ SteeringColumnTorque : 7|8@0+ (0.0625,-8.0) [0|0] "Nm" XXX - SG_ SAPPAngleControlStat6 : 15|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat5 : 14|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat4 : 13|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat3 : 12|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat2 : 11|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat1 : 23|2@0+ (1,0) [0|0] "" XXX - -BO_ 131 Steering_Data: 8 XXX - SG_ SteWhlCtl_Mute : 38|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Mode : 24|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_OK : 23|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Phone : 22|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_End : 21|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Send : 20|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Voice_PTT : 19|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Seek_Left : 10|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Seek_Right : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Media : 8|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Volume_Down : 6|1@0+ (1,0) [0|0] "" XXX - SG_ SteWhlCtl_Volume_Up : 7|1@0+ (1,0) [0|0] "" XXX - SG_ Smart_Wiper_Motor_Stat : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Mfs_Turn_Stalk_SW_Status : 1|2@0+ (1,0) [0|0] "" XXX - SG_ HighBeam_FlashToPassSw : 3|2@0+ (1,0) [0|0] "" XXX - SG_ SteColumn_Status : 13|3@0+ (1,0) [0|0] "" XXX - SG_ SteCol_Manual_Override : 4|1@0+ (1,0) [0|0] "" XXX - SG_ CcButtnStat_D_Actl : 34|11@0+ (1,0) [0|0] "" XXX - SG_ HeatedWash_Mode_Stat : 55|3@0+ (1,0) [0|0] "" XXX - SG_ LaSwtchPos_D_Stat : 18|2@0+ (1,0) [0|0] "" XXX - -BO_ 132 Steering_Wheel_Data_CG1: 8 XXX - SG_ SteWhlRelInit_An_Sns : 7|15@0+ (0.1,-1600.0) [0|0] "deg" XXX - SG_ SteWhlRelCalib_An_Sns : 23|15@0+ (0.1,-1600.0) [0|0] "deg" XXX - SG_ SteWhlRelInit2_An_Sns : 55|16@0+ (0.1,-3200.0) [0|0] "deg" XXX - SG_ SteWhlAn_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX - SG_ SteWhlAn_No_Cnt : 47|4@0+ (1,0) [0|0] "Counts" XXX - -BO_ 145 Yaw_Data: 8 XXX - SG_ VehYaw_W_Actl : 39|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - SG_ VehRol_W_Actl : 23|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - SG_ VehPtch_W_Actl : 7|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - -BO_ 146 Accel_Data: 8 XXX - SG_ VehVertAActl_D_Qf : 38|2@0+ (1,0) [0|0] "" XXX - SG_ VehLongAActl_D_Qf : 22|2@0+ (1,0) [0|0] "" XXX - SG_ VehLatAActl_D_Qf : 6|2@0+ (1,0) [0|0] "" XXX - SG_ VehVert_A_Actl : 36|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX - SG_ VehLong_A_Actl : 20|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX - SG_ VehLat_A_Actl : 4|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX - -BO_ 258 Cluster_Legacy: 8 XXX - SG_ Veh_V_CompLimMx : 27|12@0+ (0.1,0) [0|0] "km/h" XXX - SG_ DISPLAY_SPEED_SCALING : 20|4@0+ (0.5,100.0) [0|0] "%" XXX - SG_ DISPLAY_SPEED_OFFSET : 23|3@0+ (0.5,0) [0|0] "kph" XXX - SG_ Reverse_Mirror_Cmd : 10|1@0+ (1,0) [0|0] "" XXX - SG_ Autolamp_Delay_Cmd : 7|8@0+ (1,0) [0|0] "Seconds" XXX - SG_ Running_Board_Cmd : 13|2@0+ (1,0) [0|0] "" XXX - SG_ Power_Liftgate_Mode_Cmd : 11|1@0+ (1,0) [0|0] "" XXX - -BO_ 259 Body_MsgCntr_Stat_CG1: 8 XXX - SG_ PE_PEPS_System_Stat : 47|8@0+ (1,0) [0|0] "" XXX - SG_ Keycode_Status : 11|20@0+ (1,0) [0|0] "" XXX - SG_ Autolamp_Delay_Stat : 7|8@0+ (1,0) [0|0] "Seconds" XXX - SG_ HvacEvap_Te_Rq_UB : 61|1@0+ (1,0) [0|0] "" XXX - SG_ HvacEvap_Te_Rq : 55|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ Remote_Start_QuietMode_UB : 33|1@0+ (1,0) [0|0] "" XXX - SG_ Remote_Start_QuietMode : 32|1@0+ (1,0) [0|0] "" XXX - -BO_ 264 Side_Detect_CmdM: 8 XXX - SG_ Cross_Traffic_Cmd : 5|2@0+ (1,0) [0|0] "" XXX - SG_ Side_Detect_Cmd : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 266 ParkAid_Audible_Warn_CmdM: 8 XXX - SG_ AutoPark_Cancel_Request : 15|2@0+ (1,0) [0|0] "" XXX - SG_ ParkAid_Audible_Warn_Cmd : 7|2@0+ (1,0) [0|0] "" XXX - SG_ ParkAid_Aud_Frt_Warn_Cmd : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 267 ParkAid_Audible_Warn_Stat: 8 XXX - SG_ RpaChime_D_Rq : 31|4@0+ (1,0) [0|0] "" XXX - SG_ FpaChime_D_Rq : 12|4@0+ (1,0) [0|0] "" XXX - SG_ SAPPStatusCoding : 23|8@0+ (1,0) [0|0] "" XXX - SG_ Volume_Cutback : 1|1@0+ (1,0) [0|0] "" XXX - SG_ ParkAid_Fault_Condition : 15|3@0+ (1,0) [0|0] "" XXX - SG_ ParkAid_Audible_Warn_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ ParkAid_Aud_Frt_Trgt_Warn : 3|2@0+ (1,0) [0|0] "" XXX - SG_ ParkAid_Aud_Frt_Warn_Stat : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 292 ClmtCtrlSeatSet_Cmd_v2: 8 XXX - SG_ ClmtCtrlSeat_SetCmd_Dvr : 7|8@0+ (1,0) [0|0] "" XXX - SG_ ClmtCtrlSeat_SetCmd_Psgr : 15|8@0+ (1,0) [0|0] "" XXX - -BO_ 293 ClmtCtrlSeatSetStat_v2_HS: 8 XXX - SG_ ClmtCtrlSeat_SetStat_Psgr : 15|8@0+ (1,0) [0|0] "" XXX - SG_ ClmtCtrlSeat_SetStat_Dvr : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 336 TransData_1_CG1: 8 XXX - SG_ TrnAinIdl_N_RqMn : 34|11@0+ (2.0,0) [0|0] "rpm" XXX - SG_ TrnAin_N_RqMxPrtct : 23|10@0+ (25.0,0) [0|0] "rpm" XXX - SG_ TrnAin_Tq_RqFstMx : 29|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_Tq_RqSlwMxPrs : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX - -BO_ 337 EngineData_1_CG1: 8 XXX - SG_ TrnEngBrk_B_Allw : 24|1@0+ (1,0) [0|0] "" XXX - SG_ TrnAout_W_ActlUnfilt : 23|15@0+ (0.1,0) [0|0] "rad/s" XXX - SG_ TrnIpcDsplyGear_D_Actl : 7|4@0+ (1,0) [0|0] "" XXX - SG_ TrnIpcDsplyMde_D_Stat : 13|2@0+ (1,0) [0|0] "" XXX - SG_ TrnIpcDsplyMde_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ TrnIpcDsplyGear_D_Stat : 9|2@0+ (1,0) [0|0] "" XXX - SG_ TurboBoostPressure : 55|16@0+ (0.01,0) [0|0] "bar" XXX - -BO_ 338 TransData_2_CG1: 8 XXX - SG_ GearPos_D_Actl : 55|4@0+ (1,0) [0|0] "" XXX - SG_ TrnAout2_Tq_Actl : 39|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ TrnTotTq_Rt_Actl : 23|16@0+ (0.001,0) [0|0] "" XXX - SG_ TrnGbox_Rt_Pred : 7|16@0+ (0.001,0) [0|0] "" XXX - -BO_ 339 EngineData_2_CG1: 8 XXX - SG_ TrnAin_Tq_MxSpcPdlEngN : 55|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_Tq_MnSpcEngN : 31|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngPtoEngag_B_Actl : 60|1@0+ (1,0) [0|0] "" XXX - SG_ TrnAin_N_SpcEcho : 4|13@0+ (2.0,0) [0|0] "rpm" XXX - -BO_ 340 EngineData_3_CG1: 8 XXX - SG_ AirAmb_Te_ActlFilt : 33|10@0+ (0.25,-128.0) [0|0] "deg C" XXX - SG_ EngAout_N_RqMxPrtct : 12|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ TqmTerrMdeChng_D_Rdy : 39|3@0+ (1,0) [0|0] "" XXX - SG_ EngAoutIdl_N_RqVsc : 7|11@0+ (2.0,0) [0|0] "rpm" XXX - SG_ TqmTerrMde_D_Actl : 36|3@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTotVrt_Tq_RqArb : 55|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - -BO_ 341 EngineData_11_CG1: 8 XXX - SG_ DieslPrtc_D_RqDsply : 42|3@0+ (1,0) [0|0] "" XXX - SG_ EngPullUpPullDown_D_Rq : 20|4@0+ (1,0) [0|0] "" XXX - SG_ TrnAin_Tq_RqDrv : 15|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ DieslPrtcRgen_D_Actl : 4|2@0+ (1,0) [0|0] "" XXX - SG_ DieslPrtcRgen_D_Rq : 7|3@0+ (1,0) [0|0] "" XXX - SG_ EngAout_Aa_Actl : 39|10@0+ (0.05,-25.6) [0|0] "rpm/ms" XXX - SG_ EngIgnIndTq_Rt_MnEc : 31|8@0+ (0.005,0) [0|0] "" XXX - SG_ EngFuelCutFull_B_Allw : 45|1@0+ (1,0) [0|0] "" XXX - SG_ EngStrtStopDis_B_Rq : 0|1@0+ (1,0) [0|0] "" XXX - SG_ PrplTqSys_D_Stat : 2|2@0+ (1,0) [0|0] "" XXX - SG_ EngAoutTqDtrb_B_Actl : 16|1@0+ (1,0) [0|0] "" XXX - SG_ EngTurboMde_D_Actl : 44|2@0+ (1,0) [0|0] "" XXX - SG_ EngTeColdPrtct_D_Stats : 54|2@0+ (1,0) [0|0] "" XXX - SG_ EXHAUST_OVERTEMP_PROTECT : 63|1@0+ (1,0) [0|0] "" XXX - SG_ EngExhOvrTe_B_RqDsply : 55|1@0+ (1,0) [0|0] "" XXX - -BO_ 342 Engine_Data_6: 8 XXX - SG_ EngOvrhtMitgActv_D_Ind : 36|2@0+ (1,0) [0|0] "" XXX - SG_ Res_UreaLvlLo_B_Dsply : 34|1@0+ (1,0) [0|0] "" XXX - SG_ EngClntTe_D_Qf : 33|2@0+ (1,0) [0|0] "" XXX - SG_ EngAcsyArcPmp_Tq_Actl : 63|8@0+ (0.5,0) [0|0] "Nm" XXX - SG_ EngOilLvlDsply_D_Rq : 43|4@0+ (1,0) [0|0] "" XXX - SG_ EngCtlAlive_No_Cnt : 47|4@0+ (1,0) [0|0] "" XXX - SG_ EngCtl_No_Cs : 55|8@0+ (1,0) [0|0] "" XXX - SG_ EngOil_Te_Actl : 15|8@0+ (1,-60.0) [0|0] "degC" XXX - SG_ EngClnt_Te_Actl : 7|8@0+ (1,-60.0) [0|0] "degC" XXX - -BO_ 343 EngineData_13_CG1: 8 XXX - SG_ EngStrtFail_B_Actl : 40|1@0+ (1,0) [0|0] "" XXX - SG_ EngStrt_B_Complt : 24|1@0+ (1,0) [0|0] "" XXX - SG_ EngStrtSpin_B_Rdy : 58|1@0+ (1,0) [0|0] "" XXX - SG_ EngWarmUp_B_Complt : 41|1@0+ (1,0) [0|0] "" XXX - SG_ EngAoutTqCtl_B_Falt : 8|1@0+ (1,0) [0|0] "" XXX - SG_ EngAoutActl_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX - SG_ EngAoutActl_No_Cnt : 45|4@0+ (1,0) [0|0] "" XXX - SG_ VehVLim_V_RqArb : 39|9@0+ (0.5,0) [0|0] "kph" XXX - -BO_ 344 EngineData_14: 8 XXX - SG_ ApedPosScal_Pc_Actl : 9|10@0+ (0.1,0) [0|0] "%" XXX - SG_ ApedPosPcActl_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX - SG_ ApedPosPcActl_No_Cnt : 13|4@0+ (1,0) [0|0] "" XXX - -BO_ 345 Engine_Data_7_CG1: 8 XXX - SG_ EngDecelFuelCut_B_Allw : 25|1@0+ (1,0) [0|0] "" XXX - SG_ FuelFlw_Vl_Dsply : 55|10@0+ (25.0,0) [0|0] "Micro_Liter" XXX - SG_ FuelFillInlet_B_Dsply : 32|1@0+ (1,0) [0|0] "" XXX - SG_ EngSrvcRqd_B_Rq : 24|1@0+ (1,0) [0|0] "" XXX - SG_ OdoCount : 47|8@0+ (0.2,0) [0|0] "Meters" XXX - SG_ EngOilLife_Pc_Actl : 39|7@0+ (1,0) [0|0] "%" XXX - SG_ AirAmbTe_D_Qf : 28|2@0+ (1,0) [0|0] "" XXX - SG_ EngTqSlwDly_T_Est : 23|11@0+ (1,0) [0|0] "ms" XXX - SG_ TrnKickDown_B_RqDrv : 26|1@0+ (1,0) [0|0] "" XXX - SG_ AirAmb_Te_Actl : 1|10@0+ (0.25,-128.0) [0|0] "degC" XXX - SG_ AirAmb_P_Actl : 7|6@0+ (10.0,500.0) [0|0] "mbar" XXX - SG_ FuelFilterLamp_B_Dsply : 56|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondRec_B_Rq : 61|1@0+ (1,0) [0|0] "" XXX - SG_ AirCondEvdc_D_Stats : 60|3@0+ (1,0) [0|0] "" XXX - SG_ AirCondClutch_B_Stats : 57|1@0+ (1,0) [0|0] "" XXX - -BO_ 346 EngineData_4_CG1: 8 XXX - SG_ TrnAin_Tq_Rq : 12|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_Tq_RqWoMdfy : 55|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_Tq_ActlWoMdfy : 36|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_Tq_Actl : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAinCtlN_B_Allw : 41|1@0+ (1,0) [0|0] "" XXX - SG_ TrnAinTq_D_Qf : 17|2@0+ (1,0) [0|0] "" XXX - -BO_ 348 EngineData_16_CG1: 8 XXX - SG_ EngOilLvlWarn_D_Rq1 : 50|3@0+ (1,0) [0|0] "" XXX - SG_ EngExhBrkOnLamp_B_Rq : 51|1@0+ (1,0) [0|0] "" XXX - SG_ EngExhBrkAutoLamp_B_Rq : 8|1@0+ (1,0) [0|0] "" XXX - SG_ EngAout_N_MxAllw : 36|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ EngAoutIdl_N_MnAllw : 31|11@0+ (1,0) [0|0] "rpm" XXX - SG_ EngAoutIdlRqEc_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX - SG_ EngAoutIdlRqEc_No_Cnt : 12|4@0+ (1,0) [0|0] "" XXX - SG_ EngAoutIdl_N_RqEc : 7|11@0+ (2.0,0) [0|0] "rpm" XXX - SG_ EngExhBrkMde_D_Actl : 55|4@0+ (1,0) [0|0] "" XXX - -BO_ 349 EngineData_17_CG1: 8 XXX - SG_ EngResv_Tq_Actl : 52|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngAout_Tq_ActlSlw : 47|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngExhCat_Te_Est : 13|10@0+ (2.0,-60.0) [0|0] "degC" XXX - SG_ EngCylCutIndTq_Rt_Actl : 39|8@0+ (0.005,0) [0|0] "Nm" XXX - SG_ Eng_Aa_CalcEvntCyc : 7|10@0+ (0.05,-25.6) [0|0] "rpm/ms" XXX - SG_ Eng_Aa_CalcEvntCbust : 19|10@0+ (0.05,-25.6) [0|0] "rpm/ms" XXX - SG_ WaterInFuel : 25|1@0+ (1,0) [0|0] "" XXX - SG_ GlowIndication : 24|1@0+ (1,0) [0|0] "" XXX - -BO_ 350 EngineData_18_CG1: 8 XXX - SG_ EngAoutTqActl_D_Qf : 17|2@0+ (1,0) [0|0] "" XXX - SG_ EngAout_Tq_MnSpcNRtrd : 36|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngAout_Tq_Actl : 31|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngAoutLss_Tq_EstSpcN : 12|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngAout_Tq_MnSpcN : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX - -BO_ 351 EngineData_19: 8 XXX - SG_ VehPreDelvr_V_LimMx : 15|16@0+ (0.01,0) [0|0] "kph" XXX - SG_ BattLo_U_MeasEngMdule : 7|8@0+ (0.1,0) [0|0] "V" XXX - SG_ EngStall_B_Actl : 47|1@0+ (1,0) [0|0] "" XXX - SG_ EngDashPotActv_B_Actl : 46|1@0+ (1,0) [0|0] "" XXX - SG_ EngAout_Tq_MnAllw : 42|11@0+ (1,-500.0) [0|0] "Nm" XXX - -BO_ 352 TransData_3_CG1: 8 XXX - SG_ TrnAinCtlN_N_RqMx : 7|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ TrnAin_Tq_RqSlwMxShif : 42|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAinCtlN_B_RqEnbl : 10|1@0+ (1,0) [0|0] "" XXX - SG_ TrnGboxIn_N_Actl : 23|13@0+ (2.0,0) [0|0] "rpm" XXX - -BO_ 353 Engine_Data_8: 8 XXX - SG_ TrnAinTqDtrb_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX - SG_ TrnAin_Tq_MnSpcEngN : 34|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngAout_N_RqMnPrtct : 20|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ EngAout_N_MnAllw : 4|13@0+ (2.0,0) [0|0] "rpm" XXX - -BO_ 354 CGEA_Urea_Strategy_CG1: 8 XXX - SG_ UreaQltySys_D_RqDsply : 27|3@0+ (1,0) [0|0] "" XXX - SG_ UreaLvlTxt_D_RqDsply : 31|4@0+ (1,0) [0|0] "" XXX - SG_ VehUreaImmo_No_DsplyMx : 12|3@0+ (1,0) [0|0] "Counts" XXX - SG_ VehUreaWarn_V_DsplyMx : 23|7@0+ (1,0) [0|0] "km/h" XXX - SG_ VehUreaRnge_L_DsplyMx : 7|11@0+ (1,0) [0|0] "km" XXX - -BO_ 355 EngineData_10: 8 XXX - SG_ WhlRearDual_D_Stat : 57|2@0+ (1,0) [0|0] "" XXX - SG_ EngPtoMde_D_Actl : 60|3@0+ (1,0) [0|0] "" XXX - SG_ ManRgenVeh_V_MinAllw : 55|7@0+ (1,0) [0|0] "kilometer/hour" XXX - SG_ ManRgenTxt_D_RqDsply : 63|3@0+ (1,0) [0|0] "" XXX - SG_ ManRgenSoot_Pc_RqDsply : 39|7@0+ (1,0) [0|0] "%" XXX - SG_ ManRgenInhbt_T_RqDsply : 23|16@0+ (1,0) [0|0] "Minutes" XXX - SG_ ManRgenInhbt_Pc_Soot : 47|7@0+ (1,0) [0|0] "%" XXX - SG_ ManRgenInhbt_L_RqDsply : 7|16@0+ (1,0) [0|0] "kilometer" XXX - -BO_ 357 EngBrakeData: 8 XXX - SG_ CmbbDeny_B_ActlPrpl : 3|1@0+ (1,0) [0|0] "" XXX - SG_ BpedDrvAppl_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX - SG_ BpedDrvAppl_No_Cnt : 27|4@0+ (1,0) [0|0] "" XXX - SG_ BpedDrvAppl_D_Actl : 31|2@0+ (1,0) [0|0] "" XXX - SG_ CmbbEngTqMn_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_DsplyCcSet : 23|8@0+ (1,0) [0|0] "" XXX - SG_ AccEngStat_D_Actl : 2|3@0+ (1,0) [0|0] "" XXX - SG_ CcMde_D_Actl : 13|3@0+ (1,0) [0|0] "" XXX - SG_ TrnAinTqDtrb_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - SG_ CcStat_D_Actl : 10|3@0+ (1,0) [0|0] "" XXX - SG_ CcOvrrdActv_B_Actl : 15|1@0+ (1,0) [0|0] "" XXX - SG_ PwPck_D_Stat : 59|4@0+ (1,0) [0|0] "" XXX - -BO_ 389 ACCDATA_CG1: 8 XXX - SG_ AccPrpl_A_Pred : 14|10@0+ (0.01,-5.0) [0|0] "m/s^2" XXX - SG_ AccBrkPrkEl_B_Rq : 41|1@0+ (1,0) [0|0] "" XXX - SG_ Cmbb_B_Enbl : 56|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbOvrrd_B_RqDrv : 57|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbDeny_B_Actl : 40|1@0+ (1,0) [0|0] "" XXX - SG_ AccVeh_V_Trg : 7|9@0+ (0.5,0) [0|0] "kph" XXX - SG_ CmbbEngTqMn_B_Rq : 58|1@0+ (1,0) [0|0] "" XXX - SG_ AccPrpl_A_Rq : 55|10@0+ (0.01,-5.0) [0|0] "m/s^2" XXX - SG_ AccDeny_B_Rq : 59|1@0+ (1,0) [0|0] "" XXX - SG_ AccCancl_B_Rq : 42|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkTot_A_Rq : 39|13@0+ (0.0039,-20.0) [0|0] "m/s^2" XXX - SG_ AccBrkPrchg_B_Rq : 60|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkDecel_B_Rq : 61|1@0+ (1,0) [0|0] "" XXX - -BO_ 392 HeadUpDisplayStat: 8 XXX - SG_ Hud_B_Falt : 5|1@0+ (1,0) [0|0] "" XXX - SG_ HudActv_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - SG_ Hud_B_Avail : 6|1@0+ (1,0) [0|0] "" XXX - -BO_ 393 ACCDATA_2_CG1: 8 XXX - SG_ ACC_AUTOBRAKE_CANCEL : 56|1@0+ (1,0) [0|0] "" XXX - SG_ ACC_RESUME_ACTIVE : 57|1@0+ (1,0) [0|0] "" XXX - SG_ FcwAudioWarn_B_Rq : 58|1@0+ (1,0) [0|0] "" XXX - SG_ CadsAudioMute_D_Rq : 61|2@0+ (1,0) [0|0] "" XXX - SG_ AccWarn_D_Dsply : 63|2@0+ (1,0) [0|0] "" XXX - SG_ HudDsplyIntns_No_Actl : 55|8@0+ (0.5,0) [0|0] "%" XXX - SG_ FcwVisblWarn_B_Rq : 40|1@0+ (1,0) [0|0] "" XXX - SG_ HudBlk3_B_Rq : 41|1@0+ (1,0) [0|0] "" XXX - SG_ HudBlk2_B_Rq : 43|1@0+ (1,0) [0|0] "" XXX - SG_ HudBlk1_B_Rq : 42|1@0+ (1,0) [0|0] "" XXX - SG_ HudFlashRate_D_Actl : 45|2@0+ (1,0) [0|0] "" XXX - SG_ CmbbBrkDecel_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX - SG_ CmbbBrkDecel_A_Rq : 23|13@0+ (0.0039,-20.0) [0|0] "m/s^2" XXX - SG_ CmbbBrkPrchg_D_Rq : 47|2@0+ (1,0) [0|0] "" XXX - SG_ CmbbBrkDecel_B_Rq : 26|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbBaSens_D_Rq : 25|2@0+ (1,0) [0|0] "" XXX - SG_ AccPrpl_V_Rq : 7|16@0+ (0.01,0) [0|0] "kph" XXX - -BO_ 394 ACCDATA_3: 8 XXX - SG_ CadsMntr_No_Chk : 55|8@0+ (1,0) [0|0] "" XXX - SG_ FcwDeny_B_Dsply : 10|1@0+ (1,0) [0|0] "" XXX - SG_ FdaWarn_B_Rq : 21|1@0+ (1,0) [0|0] "" XXX - SG_ FcwMemStat_B_Actl : 30|1@0+ (1,0) [0|0] "" XXX - SG_ AccTGap_B_Dsply : 35|1@0+ (1,0) [0|0] "" XXX - SG_ AccMsgTxt_D_Rq : 39|4@0+ (1,0) [0|0] "" XXX - SG_ CadsAlignIncplt_B_Actl : 29|1@0+ (1,0) [0|0] "" XXX - SG_ AccLowVMde_B_Dsply : 16|1@0+ (1,0) [0|0] "" XXX - SG_ AccFllwMde_B_Dsply : 17|1@0+ (1,0) [0|0] "" XXX - SG_ CadsRadrBlck_B_Actl : 22|1@0+ (1,0) [0|0] "" XXX - SG_ FdaStat_D_Dsply : 3|3@0+ (1,0) [0|0] "" XXX - SG_ FdaDeny_B_Dsply : 4|1@0+ (1,0) [0|0] "" XXX - SG_ AccTrgDist_D_Dsply : 28|4@0+ (1,0) [0|0] "" XXX - SG_ CadsChime_B_Rq : 24|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbPostEvnt_B_Dsply : 15|1@0+ (1,0) [0|0] "" XXX - SG_ FcwCmbbSrvcRqd_B_Rq : 12|1@0+ (1,0) [0|0] "" XXX - SG_ AccStopMde_B_Dsply : 0|1@0+ (1,0) [0|0] "" XXX - SG_ CadsCamraBlck_B_Actl : 23|1@0+ (1,0) [0|0] "" XXX - SG_ FcwMemSens_D_Actl : 20|2@0+ (1,0) [0|0] "" XXX - SG_ FcwMemDfaltOn_B_Actl : 18|1@0+ (1,0) [0|0] "" XXX - SG_ AccSrvcRqd_B_Rq : 14|1@0+ (1,0) [0|0] "" XXX - SG_ FcwMsgTxt_D_Rq : 7|3@0+ (1,0) [0|0] "" XXX - SG_ FcwMemAudioOn_B_Actl : 9|1@0+ (1,0) [0|0] "" XXX - SG_ AccTGap_D_Dsply : 34|3@0+ (1,0) [0|0] "" XXX - SG_ AccMemEnbl_B_RqDrv : 42|1@0+ (1,0) [0|0] "" XXX - SG_ FdaMem_B_Stat : 41|1@0+ (1,0) [0|0] "" XXX - -BO_ 512 TorqueDataEngFlags: 8 XXX - SG_ BrkOnOffSwtch_D_Actl : 54|2@0+ (1,0) [0|0] "" XXX - SG_ PrplTqMnSat_B_Actl : 55|1@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTot_Tq_Rq : 39|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ PrplWhlTot_Tq_LimMn : 23|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ PrplWhlTot_Tq_Actl : 7|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ ACCompressorDisp : 63|7@0+ (1,0) [0|0] "%" XXX - -BO_ 513 EngVehicleSpThrottle_CG1: 8 XXX - SG_ ApedPos_PcRate_ActlArb : 63|8@0+ (0.04,-5.0) [0|0] "%/ms" XXX - SG_ Veh_V_RqCcSet : 45|9@0+ (0.5,0) [0|0] "kph" XXX - SG_ VehVActlEng_D_Qf : 9|2@0+ (1,0) [0|0] "" XXX - SG_ reserve : 10|1@0+ (1,0) [0|0] "" XXX - SG_ EngAout_N_Actl : 7|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ Veh_V_ActlEng : 23|16@0+ (0.01,0) [0|0] "kph" XXX - SG_ ApedPos_Pc_ActlArb : 39|10@0+ (0.1,0) [0|0] "%" XXX - SG_ ApedPosPcActl_D_Qf : 52|2@0+ (1,0) [0|0] "" XXX - SG_ Autostart_B_Stat : 50|1@0+ (1,0) [0|0] "" XXX - -BO_ 529 DesiredTorqBrk_CG1: 8 XXX - SG_ CmbbBrkDis_B_Actl : 56|1@0+ (1,0) [0|0] "" XXX - SG_ CMbbDeny_B_ActlBrk : 60|1@0+ (1,0) [0|0] "" XXX - SG_ RgenTqLimActv_B_Actl : 32|1@0+ (1,0) [0|0] "" XXX - SG_ CcDis_B_Cmd : 53|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrk_Pc_Rq : 39|7@0+ (1,0) [0|0] "%" XXX - SG_ RearDiffLck_Tq_RqMx : 23|12@0+ (1,0) [0|0] "Nm" XXX - SG_ VehLongOvrGnd_A_Est : 47|10@0+ (0.035,-17.9) [0|0] "m/s^2" XXX - SG_ StabCtlBrkActv_B_Actl : 27|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbBrkPrchg_B_Actl : 59|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbBrkDecel_B_Actl : 58|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbBaSensInc_B_Actl : 57|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkWarm_B_Actl : 63|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkTotTqMn_B_Actl : 62|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkPrchgActv_B_Actl : 61|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkDis_B_Actl : 50|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkDeny_B_Actl : 49|1@0+ (1,0) [0|0] "" XXX - SG_ AccBrkActv_B_Actl : 48|1@0+ (1,0) [0|0] "" XXX - SG_ PrplDrgCtlActv_B_Actl : 52|1@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTot_Tq_RqMx : 7|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ AbsActv_B_Actl : 51|1@0+ (1,0) [0|0] "" XXX - -BO_ 533 WheelSpeed_CG1: 8 XXX - SG_ WhlRr_W_Meas : 55|15@0+ (0.01,0) [0|0] "rad/s" XXX - SG_ WhlRl_W_Meas : 39|15@0+ (0.01,0) [0|0] "rad/s" XXX - SG_ WhlFr_W_Meas : 23|15@0+ (0.01,0) [0|0] "rad/s" XXX - SG_ WhlFl_W_Meas : 7|15@0+ (0.01,0) [0|0] "rad/s" XXX - -BO_ 534 WheelData: 8 XXX - SG_ WhlRotatRr_No_Cnt : 23|8@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRr_D_Actl : 33|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRl_D_Actl : 39|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFr_D_Actl : 37|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFl_D_Actl : 35|2@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFr_No_Cnt : 7|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|0] "" XXX - SG_ WHEEL_ROLLING_TIMESTAMP : 47|8@0+ (1,0) [0|0] "" XXX - -BO_ 557 InfoCAN_22D: 8 XXX - SG_ Multimedia_System : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 560 TransGearData: 8 XXX - SG_ TrnIpcDsplyRng_D_Actl : 14|3@0+ (1,0) [0|0] "" XXX - SG_ TrnGbox_Rt_Actl : 47|16@0+ (0.001,0) [0|0] "" XXX - SG_ TrnShifMde_D_RqDrv : 3|3@0+ (1,0) [0|0] "" XXX - SG_ TrnSrvcRqd_B_Rq : 63|1@0+ (1,0) [0|0] "" XXX - SG_ GearPos_D_Trg : 7|4@0+ (1,0) [0|0] "" XXX - SG_ TrnCnvtClu_D_Actl : 11|2@0+ (1,0) [0|0] "" XXX - SG_ TrnShifActv_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX - SG_ RtmTerrMdeChng_D_Rdy : 58|3@0+ (1,0) [0|0] "" XXX - SG_ RtmTerrMde_D_Actl : 61|3@0+ (1,0) [0|0] "" XXX - SG_ GearRvrseActv_B_Actl : 62|1@0+ (1,0) [0|0] "" XXX - SG_ GearLvrPos_D_Actl : 23|4@0+ (1,0) [0|0] "" XXX - SG_ GboxOil_Te_Actl : 31|8@0+ (1,-60.0) [0|0] "degC" XXX - -BO_ 561 TransGearData_2: 8 XXX - SG_ MtrGen1Aout_Tq_Rq : 53|14@0+ (0.1,-800.0) [0|0] "Nm" XXX - SG_ MtrGen1AoutTqRq_No_Cs : 7|8@0+ (1,0) [0|0] "" XXX - SG_ MtrGen1AoutTqRq_No_Cnt : 15|4@0+ (1,0) [0|0] "" XXX - SG_ CoolFanTrn_D_Rq : 31|5@0+ (1,0) [0|0] "" XXX - SG_ TrnMsgTxt_D_Rq : 39|4@0+ (1,0) [0|0] "" XXX - SG_ TrnMil_D_Rq : 26|2@0+ (1,0) [0|0] "" XXX - SG_ EngExhBrkTq_Pc_Rq : 23|7@0+ (1,0) [0|0] "%" XXX - -BO_ 562 TransGearData_3_CG1: 8 XXX - SG_ TrnPto_D_Rdy : 12|2@0+ (1,0) [0|0] "" XXX - SG_ TipInMgrInhbt_B_RqTrn : 41|1@0+ (1,0) [0|0] "" XXX - SG_ TrnAinIdl_Tq_Actl : 39|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAinLss_Tq_Est : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_Tq_RqSlwMn : 23|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ GearEngag_D_Actl : 10|3@0+ (1,0) [0|0] "" XXX - SG_ TrnAinTqDtrb_B_Rq : 40|1@0+ (1,0) [0|0] "" XXX - SG_ TrnTotLss_Tq_Actl : 55|8@0+ (0.5,0) [0|0] "Nm" XXX - -BO_ 563 TransGearData_4_CG1: 8 XXX - SG_ TrnAinCtlN_N_RqMn : 20|13@0+ (2.0,0) [0|0] "rpm" XXX - SG_ TrnAinTqMn_No_Cs : 63|8@0+ (1,0) [0|0] "" XXX - SG_ TrnAinTqMn_No_Cnt : 11|4@0+ (1,0) [0|0] "" XXX - SG_ TrnAinRq_Pc_SpcPdl : 7|10@0+ (0.1,0) [0|0] "%" XXX - SG_ TrnAin_Tq_RqFstMn : 42|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ TrnAin_N_SpcEng : 39|13@0+ (2.0,0) [0|0] "rpm" XXX - -BO_ 570 Suspension_Stat: 8 XXX - SG_ CcdMsgTxt_D_RqDsply : 7|4@0+ (1,0) [0|0] "" XXX - SG_ SuspRear_L_Prev : 48|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX - SG_ SuspRear_L_Actl : 32|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX - SG_ SuspFrnt_L_Prev : 16|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX - SG_ SuspFrnt_L_Actl : 0|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX - -BO_ 571 ColumnLockData: 8 XXX - SG_ SteWhlLckMsgTxt_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 576 Body_Information_4_CG1: 8 XXX - SG_ HvacRec_Pc_Est_UB : 51|1@0+ (1,0) [0|0] "" XXX - SG_ HvacRec_Pc_Est : 38|7@0+ (1,0) [0|0] "%" XXX - SG_ HvacEngIdleInc_B_Rq_UB : 49|1@0+ (1,0) [0|0] "" XXX - SG_ HvacEngIdleInc_B_Rq : 53|1@0+ (1,0) [0|0] "" XXX - SG_ HvacAir_Flw_Est_UB : 52|1@0+ (1,0) [0|0] "" XXX - SG_ HvacAir_Flw_Est : 31|9@0+ (0.5,0) [0|0] "liter/second" XXX - SG_ AmbTempImpr_UB : 50|1@0+ (1,0) [0|0] "" XXX - SG_ AmbTempImpr : 47|10@0+ (0.25,-128.0) [0|0] "degreesC" XXX - SG_ DriverCrankingReq : 16|1@0+ (1,0) [0|0] "" XXX - SG_ Fcw_B_DenyMntr : 23|1@0+ (1,0) [0|0] "" XXX - SG_ EngOff_T_Actl : 7|16@0+ (1,0) [0|0] "seconds" XXX - SG_ CmbbMntr_B_Err : 22|1@0+ (1,0) [0|0] "" XXX - SG_ CmbbDeny_B_RqMntr : 21|1@0+ (1,0) [0|0] "" XXX - SG_ AccMntr_B_Err : 20|1@0+ (1,0) [0|0] "" XXX - SG_ AccDeny_B_RqMntr : 19|1@0+ (1,0) [0|0] "" XXX - -BO_ 592 EONV_Status: 8 XXX - SG_ EONV_FAULT : 59|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_KAL_IC_RQST : 53|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_T_STATUS : 61|2@0+ (1,0) [0|0] "" XXX - SG_ EONV_VREF_FLT : 62|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_VBATT_FLT : 63|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_CANISTER_VENT_FLT : 54|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_CVS_CLOSED : 55|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_BATT_VOLT : 23|16@0+ (0.0009765625,0) [0|0] "volts" XXX - SG_ EONV_TANK_FLT : 48|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_TANK_PRESS : 7|16@0+ (0.001953125,-64.0) [0|0] "inches H2O" XXX - -BO_ 597 EONV_Control: 8 XXX - SG_ EONV_POS_DET_THRESHOLD : 23|16@0+ (0.001953125,-64.0) [0|0] "inches H2O" XXX - SG_ EONV_STAY_ALIVE : 15|1@0+ (1,0) [0|0] "" XXX - SG_ EONV_CVS_MODE : 7|3@0+ (1,0) [0|0] "" XXX - SG_ EONV_NEG_DET_THRESHOLD : 39|16@0+ (0.001953125,-64.0) [0|0] "inches H2O" XXX - SG_ EONV_MIL_ON : 14|1@0+ (1,0) [0|0] "" XXX - SG_ EonvMsgTxOff_B_Rq : 4|1@0+ (1,0) [0|0] "" XXX - -BO_ 608 Information4x4_CG1: 8 XXX - SG_ AwdRngeShifActv_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX - SG_ TrnAout_Tq_RqMx : 47|13@0+ (1,-1250.0) [0|0] "Nm" XXX - SG_ AwdRngeFalt_D_Stat : 4|2@0+ (1,0) [0|0] "" XXX - SG_ AwdLck_Tq_Actl : 15|12@0+ (1,0) [0|0] "Nm" XXX - SG_ AwdRnge_D_Actl : 7|3@0+ (1,0) [0|0] "" XXX - SG_ AwdTerrMdeChng_D_Rdy : 50|3@0+ (1,0) [0|0] "" XXX - SG_ AwdTerrMde_D_Actl : 58|3@0+ (1,0) [0|0] "" XXX - SG_ AwdOffRoadMode_D_Stats : 25|2@0+ (1,0) [0|0] "" XXX - SG_ AwdStat_D_RqDsply : 63|5@0+ (1,0) [0|0] "" XXX - SG_ AwdLoLamp_D_RqDsply : 35|2@0+ (1,0) [0|0] "" XXX - SG_ AwdHiLamp_D_RqDsply : 19|2@0+ (1,0) [0|0] "" XXX - SG_ AwdAutoLamp_D_RqDsply : 17|2@0+ (1,0) [0|0] "" XXX - SG_ AwdLckLamp_D_RqDsply : 27|2@0+ (1,0) [0|0] "" XXX - SG_ AwdLck_D_Stat : 31|4@0+ (1,0) [0|0] "" XXX - SG_ Awd2wdLamp_D_RqDsply : 2|2@0+ (1,0) [0|0] "" XXX - -BO_ 609 AWD_4x4_Data: 8 XXX - SG_ AwdLck_Tq_Rq : 27|12@0+ (1,0) [0|0] "Nm" XXX - SG_ AwdSrvcRqd_B_Rq : 44|1@0+ (1,0) [0|0] "" XXX - -BO_ 613 PassengerSeatOCSInfo: 8 XXX - SG_ VehicleMYCalibrationId : 39|8@0+ (1,0) [0|0] "" XXX - SG_ VehicleCalibrationId : 31|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSensrDataUpperLim : 15|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSensrDataLowerLim : 23|8@0+ (1,0) [0|0] "" XXX - SG_ OCSLevel2Error : 0|1@0+ (1,0) [0|0] "" XXX - SG_ ObjectEntrapped : 2|1@0+ (1,0) [0|0] "" XXX - SG_ OCSLevel1Error : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 736 FCIM_Button_Press_HS: 8 XXX - SG_ FCIM_Target_ID : 13|4@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Button_Type : 7|8@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Button_State : 15|2@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Target_ID_UB : 23|1@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Button_Type_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ FCIM_Button_State_UB : 8|1@0+ (1,0) [0|0] "" XXX - -BO_ 806 Compressor_Req_HS: 8 XXX - SG_ HvacEvap_Te_Rq : 33|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ HvacAirCond_B_Rq : 7|1@0+ (1,0) [0|0] "" XXX - SG_ HvacEvap_Te_Offst : 1|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - -BO_ 832 RCMStatusMessage: 8 XXX - SG_ eCallNotification : 2|2@0+ (1,0) [0|0] "" XXX - SG_ CrashNotification : 5|1@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBucklePsngr : 57|2@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBuckleMid : 59|2@0+ (1,0) [0|0] "" XXX - SG_ ThirdRowBuckleDriver : 61|2@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBucklePsngr : 63|2@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBuckleMid : 49|2@0+ (1,0) [0|0] "" XXX - SG_ SecondRowBuckleDriver : 51|2@0+ (1,0) [0|0] "" XXX - SG_ FirstRowBuckleDriver : 55|2@0+ (1,0) [0|0] "" XXX - SG_ RstrnTotalEvntCnt : 43|4@0+ (1,0) [0|0] "" XXX - SG_ RstrnCurrentEvntCnt : 39|8@0+ (1,0) [0|0] "" XXX - SG_ RILReq : 15|2@0+ (1,0) [0|0] "" XXX - SG_ FuelCutoffReq : 13|4@0+ (1,0) [0|0] "" XXX - SG_ SeatbeltIndicatorReq : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SeatbeltChimeReq : 8|1@0+ (1,0) [0|0] "" XXX - SG_ BeltMinderProgConfReq : 21|2@0+ (1,0) [0|0] "" XXX - SG_ BeltMinderLevelReq : 19|4@0+ (1,0) [0|0] "" XXX - SG_ FirstRowBucklePsngr : 53|2@0+ (1,0) [0|0] "" XXX - SG_ InfoLampReq : 29|1@0+ (1,0) [0|0] "" XXX - SG_ GenRedLampReq : 28|1@0+ (1,0) [0|0] "" XXX - SG_ RstrnTextMsgReq : 27|2@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNumRcvd : 3|1@0+ (1,0) [0|0] "" XXX - SG_ RstrnStatDeployEnbld : 6|1@0+ (1,0) [0|0] "" XXX - SG_ RstrnImpactEvntStatus : 46|3@0+ (1,0) [0|0] "" XXX - SG_ PassRstrnInd_Req : 25|2@0+ (1,0) [0|0] "" XXX - SG_ RstrnStatTrigEvnt : 7|1@0+ (1,0) [0|0] "" XXX - SG_ PsngrFrntDetct_D_Actl : 31|2@0+ (1,0) [0|0] "" XXX - SG_ Beltminder_Warn_Stats : 22|1@0+ (1,0) [0|0] "" XXX - SG_ EDRTriggerEvntSync : 47|1@0+ (1,0) [0|0] "" XXX - -BO_ 842 MassageSeat_Data1_HS: 8 XXX - SG_ SeatLmbrUpDrv_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrMidDrv_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrLoDrv_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlUpDrv_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlLoDrv_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 843 MassageSeat_Data2_HS: 8 XXX - SG_ SeatLmbrUpPsgr_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrMidPsgr_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatLmbrLoPsgr_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlUpPsgr_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatBlLoPsgr_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 844 MassageSeat_Stat1_HS: 8 XXX - SG_ StmsLmbrDrv_D_Stat : 17|2@0+ (1,0) [0|0] "" XXX - SG_ StmsCshnDrv_D_Stat : 19|2@0+ (1,0) [0|0] "" XXX - SG_ SeatSwtchDrv_B_Stat : 31|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDrv_D_Stat : 23|3@0+ (1,0) [0|0] "" XXX - SG_ SeatAirAmb_P_Actl : 7|16@0+ (0.01,0) [0|0] "KiloPascal" XXX - SG_ SeatPDrv_B_Stat : 20|1@0+ (1,0) [0|0] "" XXX - -BO_ 845 MassageSeat_Stat2_HS: 8 XXX - SG_ StmsLmbrPsgr_D_Stat : 15|2@0+ (1,0) [0|0] "" XXX - SG_ StmsCshnPsgr_D_Stat : 13|2@0+ (1,0) [0|0] "" XXX - SG_ SeatSwtchPsgr_B_Stat : 11|1@0+ (1,0) [0|0] "" XXX - SG_ SeatPPsgr_B_Stat : 7|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnPsgr_D_Stat : 6|3@0+ (1,0) [0|0] "" XXX - SG_ PsgrMemFeedback_Rsp : 3|4@0+ (1,0) [0|0] "" XXX - -BO_ 846 MassageSeat_Req: 8 XXX - SG_ SeatFnPsgr_D_Rq : 15|3@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDrv_D_Rq : 12|3@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDfaltPsgr_B_Rq : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnDfaltDrv_B_Rq : 8|1@0+ (1,0) [0|0] "" XXX - SG_ SeatFnChngPsgr_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX - SG_ SeatFnChngDrv_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX - SG_ PsgrMemory_Rq : 3|4@0+ (1,0) [0|0] "" XXX - -BO_ 848 RestraintsData: 8 XXX - SG_ PassRstrnInd_Stat_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ SeatBltWrnChmeStat : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Seatbelt_IndctrStat : 4|3@0+ (1,0) [0|0] "" XXX - SG_ RILStat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ PassRstrnInd_Stat : 15|4@0+ (1,0) [0|0] "" XXX - -BO_ 849 MassageSeat_Data3_HS: 8 XXX - SG_ SeatCshnDrvRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnDrvRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnDrvFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnDrvFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 850 MassageSeat_Data4_HS: 8 XXX - SG_ SeatCshnPsgrRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnPsgrRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnPsgrFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX - SG_ SeatCshnPsgrFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX - -BO_ 853 EFP_CC_Status: 8 XXX - SG_ Save_My_Temp : 59|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Left_Temp_Setpt : 31|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RrDefrost_HtdMirrorReq : 60|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Control_Status : 16|1@0+ (1,0) [0|0] "" XXX - SG_ MultipleButtonPressReq : 63|3@0+ (1,0) [0|0] "" XXX - SG_ Rear_System_Mode_Req : 19|3@0+ (1,0) [0|0] "" XXX - SG_ Rear_Left_Temp_Setpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ Recirc_Request : 23|2@0+ (1,0) [0|0] "" XXX - SG_ Front_Rt_Temp_Setpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ AC_Request : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Windshield_ModeRequest : 15|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Panel_Mode_Request : 7|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Overriding_ModeReq : 10|3@0+ (1,0) [0|0] "" XXX - SG_ Forced_Recirc_Req : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_Request : 3|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Rear_Right_Temp_Setpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX - -BO_ 854 EFP_CC_Seat_Req_Stat: 8 XXX - SG_ Front_Rear_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX - SG_ Pass_Rr_Cond_Seat_Req : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Rr_Cond_Seat_Lvl : 8|3@0+ (1,0) [0|0] "" XXX - SG_ Pass_Fr_Cond_Seat_Req : 13|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Fr_Cond_Seat_Lvl : 11|3@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Rr_Cond_Seat_Req : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Rr_Cond_Seat_Lvl : 2|3@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Fr_Cond_Seat_Req : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Fr_Cond_Seat_Lvl : 5|3@0+ (1,0) [0|0] "" XXX - -BO_ 855 RCCM_CC_Status_HS: 8 XXX - SG_ RrBlwrCondStLdShedStat : 25|2@0+ (1,0) [0|0] "" XXX - SG_ FrBlwrCondStLdShedStat : 20|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_Rr_Rt_TempSetpt : 63|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Rr_Left_TempSetpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Fr_Rt_TempSetpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RCCM_Fr_Rr_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX - SG_ Panel_Mode_State : 7|4@0+ (8.33,0) [0|0] "%" XXX - SG_ RrDefHtdMirrLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX - SG_ Windshield_Mode_State : 15|4@0+ (8.33,0) [0|0] "%" XXX - SG_ Recirc_Door_State : 11|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_System_Mode_State : 23|3@0+ (1,0) [0|0] "" XXX - SG_ Default_Defrost_State : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Auto_AC_Indicator_Temp : 16|1@0+ (1,0) [0|0] "" XXX - SG_ Floor_Mode_State : 3|4@0+ (8.33,0) [0|0] "%" XXX - SG_ RCCM_Fr_Left_TempSetpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX - SG_ RrDefrost_HtdMirrState : 8|1@0+ (1,0) [0|0] "" XXX - -BO_ 856 RCCM_CC_Seat_Status_HS: 8 XXX - SG_ Active_My_Temp : 2|1@0+ (1,0) [0|0] "" XXX - SG_ CC_HtdStrWhl_Req : 24|1@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PR_Cond_Seat_Lvl : 31|3@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PR_Cond_Seat_Req : 28|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PF_Cond_Seat_Req : 20|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_PF_Cond_Seat_Lvl : 23|3@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DR_Cond_Seat_Req : 12|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DR_Cond_Seat_Lvl : 15|3@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DF_Cond_Seat_Req : 4|2@0+ (1,0) [0|0] "" XXX - SG_ RCCM_DF_Cond_Seat_Lvl : 7|3@0+ (1,0) [0|0] "" XXX - SG_ PassRrCondStLdShedStat : 26|2@0+ (1,0) [0|0] "" XXX - SG_ PassFrCondStLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX - SG_ DrvRrCondStLdShedStat : 10|2@0+ (1,0) [0|0] "" XXX - SG_ DrvFrCondStLdShedStat : 1|2@0+ (1,0) [0|0] "" XXX - -BO_ 857 RCCM_CC_MBP_Press_Stat_HS: 8 XXX - SG_ MultBtnPushDsplyPass10 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyPass1 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ Report_Active : 33|2@0+ (1,0) [0|0] "" XXX - SG_ Pass_Temp_Units : 35|1@0+ (1,0) [0|0] "" XXX - SG_ Front_Fan_Bars_Disply : 39|3@0+ (1,0) [0|0] "" XXX - SG_ Drvr_Temp_Units : 36|1@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyDrvr10 : 7|8@0+ (1,0) [0|0] "" XXX - SG_ MultBtnPushDsplyDrvr1 : 15|8@0+ (1,0) [0|0] "" XXX - -BO_ 859 MFD_CC_Status_HS: 8 XXX - SG_ Rear_Mode_Bttn_Status : 38|1@0+ (1,0) [0|0] "" XXX - SG_ ConditionSt_ButtonStat : 20|5@0+ (1,0) [0|0] "" XXX - SG_ Driver_Set_Temp : 31|8@0+ (0.5,0) [0|0] "Degrees" XXX - SG_ Frt_System_Button_Stat : 7|5@0+ (1,0) [0|0] "" XXX - SG_ Rear_Blower_Bar_Status : 2|3@0+ (1,0) [0|0] "# of Bars" XXX - SG_ Rear_Fan_Button_Status : 13|2@0+ (1,0) [0|0] "" XXX - SG_ Rear_Man_Temp_Bar_Stat : 11|4@0+ (1,0) [0|0] "" XXX - SG_ Rear_Temp_Button_Status : 23|2@0+ (1,0) [0|0] "" XXX - SG_ Voice_Blower_Limit : 21|1@0+ (1,0) [0|0] "" XXX - -BO_ 860 EFP_CC_Info_Status: 8 XXX - SG_ Rear_Panel_Btn_State : 41|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Floor_Btn_State : 40|1@0+ (1,0) [0|0] "" XXX - SG_ HtdStrWhl_SftBtt_Stt : 39|2@0+ (1,0) [0|0] "" XXX - SG_ AC_Sft_Button_State : 23|2@0+ (1,0) [0|0] "" XXX - SG_ DrvRrCondSeatSftBttnSt : 47|3@0+ (1,0) [0|0] "" XXX - SG_ DrvFrCondSeatSftBtnStt : 37|3@0+ (1,0) [0|0] "" XXX - SG_ CC_RecircSBtn_St : 27|2@0+ (1,0) [0|0] "" XXX - SG_ CC_RrDefrSBtn_St : 24|1@0+ (1,0) [0|0] "" XXX - SG_ PasRrCondSeatSftBttnSt : 44|3@0+ (1,0) [0|0] "" XXX - SG_ PasFrCondSeatSftBtnStt : 34|3@0+ (1,0) [0|0] "" XXX - SG_ MyTemp_Soft_Bttn_State : 25|1@0+ (1,0) [0|0] "" XXX - SG_ CC_MaxACSBtn_St : 28|1@0+ (1,0) [0|0] "" XXX - SG_ RearPowerButtonState : 16|1@0+ (1,0) [0|0] "" XXX - SG_ RearCoolBarsDisplayed : 11|3@0+ (1,0) [0|0] "Bars_On" XXX - SG_ Rear_Sft_Control_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ CC_RrNeutralBarDsp_St : 8|1@0+ (1,0) [0|0] "" XXX - SG_ CC_RrHeatBarsDsp_St : 31|3@0+ (1,0) [0|0] "Bars_On" XXX - SG_ Rear_Fan_Bars_Displayed : 19|3@0+ (1,0) [0|0] "" XXX - SG_ CC_RrCtrlBtn_St : 20|1@0+ (1,0) [0|0] "" XXX - SG_ Rear_Auto_Button_State : 21|1@0+ (1,0) [0|0] "" XXX - SG_ CC_FrPowerSBtn_St : 14|1@0+ (1,0) [0|0] "" XXX - SG_ CC_FrDefrostSBtn_St : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_Soft_Btn_Stt : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_MODE_State : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Front_AUTO_FAN_State : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Dual_Button_State : 12|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarPnlSBtn_St : 5|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarPnFlrSBtn_St : 4|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarFlrWsSBtn_St : 2|1@0+ (1,0) [0|0] "" XXX - SG_ CC_BarDrvFlrSBtn_St : 3|1@0+ (1,0) [0|0] "" XXX - -BO_ 890 Active_Noise: 8 XXX - SG_ ANC_Chime_Supported : 4|2@0+ (1,0) [0|0] "" XXX - SG_ ActvNseAudio_D_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ ActvNse_B_Actv : 5|1@0+ (1,0) [0|0] "" XXX - -BO_ 891 Active_Noise_Data: 8 XXX - SG_ CabnSndAmb_Db_Actl : 7|8@0+ (1,30.0) [0|0] "decibel" XXX - -BO_ 906 Body_Information_1: 8 XXX - SG_ CcdMde_D_Rq_UB : 0|1@0+ (1,0) [0|0] "" XXX - SG_ CcdMde_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX - SG_ CarMode : 5|4@0+ (1,0) [0|0] "" XXX - SG_ SecondaryHeater_Rqst : 55|1@0+ (1,0) [0|0] "" XXX - SG_ Passenger_Sunload_Raw : 47|8@0+ (5.0,0) [0|0] "W/m^2" XXX - SG_ Driver_Sunload_Raw : 39|8@0+ (5.0,0) [0|0] "W/m^2" XXX - SG_ HvacEvap_Te_Actl_UB : 1|1@0+ (1,0) [0|0] "" XXX - SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX - SG_ SecondaryHeater_Rqst_UB : 18|1@0+ (1,0) [0|0] "" XXX - SG_ Outside_Air_Temp_Stat_UB : 23|1@0+ (1,0) [0|0] "" XXX - SG_ Outside_Air_Temp_Stat : 15|8@0+ (0.5,-40.0) [0|0] "Degrees C" XXX - SG_ Veh_Lock_Status : 54|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_Lock_Requestor : 52|5@0+ (1,0) [0|0] "" XXX - SG_ Veh_Lock_EvNum : 63|8@0+ (1,0) [0|0] "Counts" XXX - SG_ immoIndicatorCmd : 22|4@0+ (1,0) [0|0] "" XXX - -BO_ 909 Body_Information_6: 8 XXX - SG_ PEBackupSlot_Stats_UB : 43|1@0+ (1,0) [0|0] "" XXX - SG_ PEBackupSlot_Stats : 25|2@0+ (1,0) [0|0] "" XXX - SG_ KeyMykeyTot_No_Cnt : 47|4@0+ (1,0) [0|0] "Counts" XXX - SG_ SideDetect_R_SysOpState_UB : 26|1@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_R_SysOpState : 28|2@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_R_SnsrState_UB : 29|1@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_R_SnsrState : 31|2@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_L_SysOpState_UB : 16|1@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_L_SysOpState : 18|2@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_L_SnsrState_UB : 19|1@0+ (1,0) [0|0] "" XXX - SG_ SideDetect_L_SnsrState : 21|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_SnState_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_SnState : 23|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_Op_State_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_Op_State : 11|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_Alert_UB : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_R_Alert : 14|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_SnState_UB : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_SnState : 1|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_Op_State_UB : 2|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_Op_State : 4|2@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_Alert_UB : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Cross_Traffic_L_Alert : 7|2@0+ (1,0) [0|0] "" XXX - SG_ IgnKeyType_D_Actl : 39|4@0+ (1,0) [0|0] "" XXX - SG_ KeyAdmnTot_No_Cnt : 35|4@0+ (1,0) [0|0] "Counts" XXX - -BO_ 936 ParkAid_Data: 8 XXX - SG_ SAPPErrorCoding : 23|8@0+ (1,0) [0|0] "" XXX - SG_ ExtSteeringAngleReq : 7|15@0+ (0.1,-1000.0) [0|0] "Degrees" XXX - SG_ EPASExtAngleStatReq : 8|1@0+ (1,0) [0|0] "" XXX - -BO_ 937 ParkAid_Range_to_Target: 8 XXX - SG_ RangeToClosestObstacle : 55|12@0+ (1,0) [0|0] "cm" XXX - SG_ RangeRearCornerRtSn : 35|12@0+ (1,0) [0|0] "cm" XXX - SG_ RangeRearCornerLeftSn : 31|12@0+ (1,0) [0|0] "cm" XXX - SG_ RangeRearCenterRtSn : 11|12@0+ (1,0) [0|0] "cm" XXX - SG_ RangeRearCenterLeftSn : 7|12@0+ (1,0) [0|0] "cm" XXX - -BO_ 939 ParkAid_Data_CG1: 8 XXX - SG_ EPASExtAngleStatReq : 7|1@0+ (1,0) [0|0] "" XXX - SG_ ExtSteeringAngleReq : 6|15@0+ (0.1,-1000.0) [0|0] "Degrees" XXX - SG_ SAPPErrorCoding : 23|8@0+ (1,0) [0|0] "" XXX - SG_ RangeToClosestObstacle : 27|12@0+ (1,0) [0|0] "cm" XXX - -BO_ 942 BodyInformation_2: 8 XXX - SG_ Easy_Entry_Exit_Stat : 14|2@0+ (1,0) [0|0] "" XXX - SG_ Memory_Feedback_Rqst : 15|1@0+ (1,0) [0|0] "" XXX - SG_ Delay_Accy : 41|1@0+ (1,0) [0|0] "" XXX - SG_ Fuel_Econ_AFE_Reset_Req_UB : 43|1@0+ (1,0) [0|0] "" XXX - SG_ Multimedia_System : 42|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatDrv_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatHood_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatInnrTgate_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatPsngr_B_Actl : 4|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatRl_B_Actl : 3|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatRr_B_Actl : 2|1@0+ (1,0) [0|0] "" XXX - SG_ DrStatTgate_B_Actl : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Fuel_Econ_AFE_Reset_Req : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Nav_Unit_Setting : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Cancel_Auto_Movement : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Cancel_Auto_Movement_UB : 8|1@0+ (1,0) [0|0] "" XXX - SG_ DrvSeat_Stat : 34|3@0+ (1,0) [0|0] "" XXX - SG_ DrvSeat_Stat_UB : 10|1@0+ (1,0) [0|0] "" XXX - SG_ Easy_Entry_Rqst : 47|2@0+ (1,0) [0|0] "" XXX - SG_ Easy_Entry_Rqst_UB : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Multimedia_System_UB : 40|1@0+ (1,0) [0|0] "" XXX - SG_ Memory_Cmd : 39|4@0+ (1,0) [0|0] "" XXX - SG_ Memory_Cmd_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ Memory_Feedback_Rqst_UB : 45|1@0+ (1,0) [0|0] "" XXX - SG_ Decklid_Ajar_Status : 44|1@0+ (1,0) [0|0] "" XXX - -BO_ 947 BodyInformation_3: 8 XXX - SG_ RearFog_Lamp_Ind_UB : 49|1@0+ (1,0) [0|0] "" XXX - SG_ RearFog_Lamp_Ind : 50|1@0+ (1,0) [0|0] "" XXX - SG_ PwMdeExten_D_Actl : 63|5@0+ (1,0) [0|0] "" XXX - SG_ Turn_Ind_Cmd_Right : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Turn_Ind_Cmd_Left : 9|1@0+ (1,0) [0|0] "" XXX - SG_ Ignition_Switch_Stable : 1|2@0+ (1,0) [0|0] "" XXX - SG_ Parklamp_Status : 3|2@0+ (1,0) [0|0] "" XXX - SG_ Litval : 47|8@0+ (1,0) [0|0] "" XXX - SG_ Key_In_Ignition_Stat : 11|2@0+ (1,0) [0|0] "" XXX - SG_ Ignition_Status : 7|4@0+ (1,0) [0|0] "" XXX - SG_ Dimming_Lvl : 31|8@0+ (1,0) [0|0] "" XXX - SG_ Day_Night_Status : 15|2@0+ (1,0) [0|0] "" XXX - SG_ Remote_Start_Status : 13|2@0+ (1,0) [0|0] "" XXX - SG_ DRV_SELECT_STAT : 19|4@0+ (1,0) [0|0] "" XXX - SG_ PrkBrkActv_B_Actl : 55|1@0+ (1,0) [0|0] "" XXX - SG_ HtdStrWhl_SftBtt_State_UB : 51|1@0+ (1,0) [0|0] "" XXX - SG_ HtdStrWhl_SftBtt_State : 53|2@0+ (1,0) [0|0] "" XXX - SG_ HvacRemoteStrt_N_Rq_UB : 56|1@0+ (1,0) [0|0] "" XXX - SG_ HvacRemoteStrt_N_Rq : 23|4@0+ (100.0,450.0) [0|0] "RPM" XXX - SG_ HvacAirCond_B_Rq_UB : 57|1@0+ (1,0) [0|0] "" XXX - SG_ Remote_Start_Warn_Req : 54|1@0+ (1,0) [0|0] "" XXX - SG_ HvacAirCond_B_Rq : 58|1@0+ (1,0) [0|0] "" XXX - -BO_ 948 Tire_Pressure_Status: 8 XXX - SG_ Tire_Press_ILR_Stat2 : 27|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_IRR_Stat2 : 31|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_LR_OLR_Stat2 : 19|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_RR_ORR_Stat2 : 23|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_RF_Stat2 : 11|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_LF_Stat2 : 15|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_System_Stat2 : 7|4@0+ (1,0) [0|0] "" XXX - SG_ Tire_Press_Telltale : 3|2@0+ (1,0) [0|0] "" XXX - -BO_ 949 Tire_Pressure_Data: 8 XXX - SG_ Tire_Press_RR_ORR_Data : 23|8@0+ (1,0) [0|0] "Psi" XXX - SG_ Tire_Press_RF_Data : 15|8@0+ (1,0) [0|0] "Psi" XXX - SG_ Tire_Press_LR_OLR_Data : 31|8@0+ (1,0) [0|0] "Psi" XXX - SG_ Tire_Press_IRR_Data : 39|8@0+ (1,0) [0|0] "Psi" XXX - SG_ Tire_Press_ILR_Data : 47|8@0+ (1,0) [0|0] "Psi" XXX - SG_ Tire_Press_LF_Data : 7|8@0+ (1,0) [0|0] "Psi" XXX - -BO_ 955 Smart_Headlamp_Stat: 8 XXX - SG_ Headlamp_Switch_Stat : 7|2@0+ (1,0) [0|0] "" XXX - SG_ Fog_Lamp_Dbnce : 5|2@0+ (1,0) [0|0] "" XXX - SG_ Digital_Dimmer_Sw_Stat : 3|3@0+ (1,0) [0|0] "" XXX - -BO_ 957 Rear_FogLamp: 8 XXX - SG_ RearFog_Lamp_Dbnce : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 963 BCM_to_HS_Body: 8 XXX - SG_ DrTgateChime_D_Rq_UB : 9|1@0+ (1,0) [0|0] "" XXX - SG_ DrTgateChime_D_Rq : 17|2@0+ (1,0) [0|0] "" XXX - SG_ CamraDefog_B_Actl : 4|1@0+ (1,0) [0|0] "" XXX - SG_ Reverse_Mirror_Stat : 61|2@0+ (1,0) [0|0] "" XXX - SG_ Power_Liftgate_Mode_Stat : 63|2@0+ (1,0) [0|0] "" XXX - SG_ IKT_Program_Status : 51|2@0+ (1,0) [0|0] "" XXX - SG_ Veh_Spd_Slow_Puddle_Status : 41|2@0+ (1,0) [0|0] "" XXX - SG_ Illuminated_Exit_Status : 43|2@0+ (1,0) [0|0] "" XXX - SG_ Illuminated_Entry_Status : 45|2@0+ (1,0) [0|0] "" XXX - SG_ Door_Courtesy_Light_Status : 47|2@0+ (1,0) [0|0] "" XXX - SG_ Courtesy_Demand_BSave_Stat : 33|2@0+ (1,0) [0|0] "" XXX - SG_ Alarm_Lights_Courtesy_Stat : 35|2@0+ (1,0) [0|0] "" XXX - SG_ Courtesy_Delay_Status : 37|2@0+ (1,0) [0|0] "" XXX - SG_ Courtesy_Mode_Status : 39|2@0+ (1,0) [0|0] "" XXX - SG_ Front_Fog_Light_SW_Status : 22|2@0+ (1,0) [0|0] "" XXX - SG_ Brake_Lamp_On_Status : 23|1@0+ (1,0) [0|0] "" XXX - SG_ LowBeam_CKT_CAN : 11|1@0+ (1,0) [0|0] "" XXX - SG_ ParkLamps_CKT_CAN : 8|1@0+ (1,0) [0|0] "" XXX - SG_ RF_Low_Beam_CKT_CAN : 13|1@0+ (1,0) [0|0] "" XXX - SG_ Brk_Fluid_Lvl_Low : 15|2@0+ (1,0) [0|0] "" XXX - SG_ LF_Low_Beam_CKT_CAN : 12|1@0+ (1,0) [0|0] "" XXX - SG_ High_Beam_Indicator_Rqst : 1|1@0+ (1,0) [0|0] "" XXX - SG_ Brake_Warn_Indicator_Rqst : 2|1@0+ (1,0) [0|0] "" XXX - SG_ Headlamp_On_Wrning_Cmd : 6|1@0+ (1,0) [0|0] "" XXX - SG_ Key_In_Ignition_Warn_Cmd : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Fog_Lamps_Rly_Ckt_CAN : 10|1@0+ (1,0) [0|0] "" XXX - SG_ Power_Liftgate_Mode_Stat_UB : 18|1@0+ (1,0) [0|0] "" XXX - SG_ Reverse_Mirror_Stat_UB : 7|1@0+ (1,0) [0|0] "" XXX - SG_ Park_Brake_Chime_Rqst : 3|1@0+ (1,0) [0|0] "" XXX - SG_ Daytime_Running_Lamps : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Running_Board_Stat_UB : 56|1@0+ (1,0) [0|0] "" XXX - SG_ Running_Board_Stat : 58|2@0+ (1,0) [0|0] "" XXX - SG_ Perimeter_Alarm_Chime_Rqst : 20|2@0+ (1,0) [0|0] "" XXX - -BO_ 967 CMPS_FDM_Info_Status: 8 XXX - SG_ CamraFrntStat_D_Stat : 41|2@0+ (1,0) [0|0] "" XXX - SG_ Zone_Icon_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ GPS_Compass_direction : 47|4@0+ (1,0) [0|0] "" XXX - SG_ Segment_MSD_UB : 37|1@0+ (1,0) [0|0] "" XXX - SG_ Segment_LSD_UB : 36|1@0+ (1,0) [0|0] "" XXX - SG_ ExcessiveMagnetism : 32|1@0+ (1,0) [0|0] "" XXX - SG_ Compass_Display_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ Segment_LSD : 15|8@0+ (1,0) [0|0] "" XXX - SG_ Segment_MSD : 7|8@0+ (1,0) [0|0] "" XXX - SG_ Cal_Icon : 21|1@0+ (1,0) [0|0] "" XXX - SG_ Zone_Icon : 22|1@0+ (1,0) [0|0] "" XXX - SG_ Compass_Display : 23|1@0+ (1,0) [0|0] "" XXX - SG_ Cal_Icon_UB : 33|1@0+ (1,0) [0|0] "" XXX - SG_ RearCameraDelayStat : 39|2@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlTow_D_Actl : 25|2@0+ (1,0) [0|0] "SE" XXX - SG_ CamZoomActiveState : 29|2@0+ (1,0) [0|0] "" XXX - SG_ CamraZoomMan_D_Actl : 18|3@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlStat_D_Actl : 27|2@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlDyn_D_Actl : 20|2@0+ (1,0) [0|0] "" XXX - SG_ CamPDCGuidStat : 31|2@0+ (1,0) [0|0] "" XXX - -BO_ 970 Lane_Assist_Data1: 8 XXX - SG_ LkaActvStats_D_Req : 7|3@0+ (1,0) [0|0] "" XXX - SG_ LdwActvStats_D_Req : 4|3@0+ (1,0) [0|0] "" XXX - SG_ LdwActvIntns_D_Req : 1|2@0+ (1,0) [0|0] "" XXX - -BO_ 971 Lane_Assist_Data2: 8 XXX - SG_ LaRefAng_No_Req : 19|12@0+ (0.05,-102.4) [0|0] "mrad" XXX - SG_ LaRampType_B_Req : 4|1@0+ (1,0) [0|0] "" XXX - SG_ LaCurvature_No_Calc : 3|12@0+ (5e-06,-0.01) [0|0] "1/m" XXX - -BO_ 972 Lane_Assist_Data3: 8 XXX - SG_ LaHandsOff_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - SG_ LaActDeny_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - SG_ LaActAvail_D_Actl : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 984 IPMA_Data: 8 XXX - SG_ LaSwtch_D_RqDrv : 45|1@0+ (1,0) [0|0] "" XXX - SG_ DasWarn_D_Dsply : 44|2@0+ (1,0) [0|0] "" XXX - SG_ DasStats_D_Dsply : 47|2@0+ (1,0) [0|0] "" XXX - SG_ DasAlrtLvl_D_Dsply : 55|3@0+ (1,0) [0|0] "" XXX - SG_ CamraStats_D_Dsply : 35|2@0+ (1,0) [0|0] "" XXX - SG_ CamraDefog_B_Req : 36|1@0+ (1,0) [0|0] "" XXX - SG_ LaSwtchStat_No_Actl : 63|1@0+ (1,0) [0|0] "" XXX - SG_ LaHandsOff_D_Dsply : 42|2@0+ (1,0) [0|0] "" XXX - SG_ LaDenyStats_B_Dsply : 40|1@0+ (1,0) [0|0] "" XXX - SG_ LaActvStats_D_Dsply : 52|5@0+ (1,0) [0|0] "" XXX - SG_ AhbcHiBeam_D_Rq : 33|2@0+ (1,0) [0|0] "" XXX - SG_ PersIndexIpma_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoIpmaActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigIpmaActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 986 Personality_APIM_Data3: 8 XXX - SG_ LightAmbIntSwtchInc_B : 22|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbIntSwtchDec_B : 21|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbIntsty_No_Rq : 15|8@0+ (1,0) [0|0] "% Intensity" XXX - SG_ LightAmbColor_No_Rq : 7|8@0+ (1,0) [0|0] "Color Index" XXX - SG_ LightAmbClrSwtchInc_B : 20|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbClrSwtchDec_B : 23|1@0+ (1,0) [0|0] "" XXX - -BO_ 991 Personality_VDM_Data: 8 XXX - SG_ PersIndexVdm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoVdmActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigVdmActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 992 Personality_IPC_Data: 8 XXX - SG_ MsgCntrPersIndex_D_Rq : 39|3@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrFeatConfigRq : 23|16@0+ (1,0) [0|0] "" XXX - SG_ MsgCntrFeatNoRq : 7|16@0+ (1,0) [0|0] "Number" XXX - SG_ MsgCntrDsplyOp_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX - -BO_ 993 Personality_Data_HS: 8 XXX - SG_ PersSetupRestr_D_Actl : 21|2@0+ (1,0) [0|0] "" XXX - SG_ PersSetupAccessCtrl : 19|1@0+ (1,0) [0|0] "SES" XXX - SG_ PersSetup_No_Actl : 31|16@0+ (1,0) [0|0] "Number" XXX - SG_ PersConflict_D_Actl : 22|1@0+ (1,0) [0|0] "" XXX - SG_ AssocConfirm_D_Actl : 15|3@0+ (1,0) [0|0] "" XXX - SG_ RecallEvent_No_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX - SG_ PersNo_D_Actl : 10|3@0+ (1,0) [0|0] "" XXX - SG_ PersStore_D_Actl_UB : 23|1@0+ (1,0) [0|0] "" XXX - SG_ PersStore_D_Actl : 12|2@0+ (1,0) [0|0] "" XXX - -BO_ 994 Personality_APIM_Data: 8 XXX - SG_ CamraOvrlTow_D_Rq : 42|1@0+ (1,0) [0|0] "" XXX - SG_ Pers4OptIn_B_Stats : 43|1@0+ (1,0) [0|0] "" XXX - SG_ Pers3OptIn_B_Stats : 33|1@0+ (1,0) [0|0] "" XXX - SG_ Pers2OptIn_B_Stats : 32|1@0+ (1,0) [0|0] "" XXX - SG_ Pers1OptIn_B_Stats : 44|1@0+ (1,0) [0|0] "" XXX - SG_ CtrStkPersIndex_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ CtrStkFeatNoActl : 23|16@0+ (1,0) [0|0] "" XXX - SG_ PersStore_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX - SG_ CtrStkFeatConfigActl : 7|16@0+ (1,0) [0|0] "" XXX - SG_ CtrStkDsplyOp_D_Rq : 47|3@0+ (1,0) [0|0] "" XXX - -BO_ 995 Personality_BCM_Data: 8 XXX - SG_ PersIndexBcm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoBcm_No_Actl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigBcmActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 996 Personality_HCMB_Data_HS: 8 XXX - SG_ PersIndexHcmb_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ PersIndexHcmb_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoHcmbActl_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ FeatNoHcmbActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigHcmbActl_UB : 36|1@0+ (1,0) [0|0] "" XXX - SG_ FeatConfigHcmbActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 997 Personality_CCM_Data: 8 XXX - SG_ PersIndexCcm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoCcmActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigCcmActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 998 Personality_SCCM_Data: 8 XXX - SG_ PersIndexSccm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoSccmActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigSccmActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 999 Personality_HVAC_Data_HS: 8 XXX - SG_ LightAmbIntsty_No_Actl_UB : 33|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbIntsty_No_Actl : 55|8@0+ (1,0) [0|0] "% Intensity" XXX - SG_ LightAmbColor_No_Actl_UB : 32|1@0+ (1,0) [0|0] "" XXX - SG_ LightAmbColor_No_Actl : 47|8@0+ (1,0) [0|0] "Color Index" XXX - SG_ PersIndexHvac_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ FeatNoHvacActl_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ FeatConfigHvacActl_UB : 36|1@0+ (1,0) [0|0] "" XXX - SG_ PersIndexHvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoHvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigHvacActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1001 Personality_RFA_Data_HS: 8 XXX - SG_ PersIndexRfa_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ FeatNoRfaActl_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ FeatConfigRfaActl_UB : 36|1@0+ (1,0) [0|0] "" XXX - SG_ PersIndexRfa_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoRfaActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigRfaActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1002 Personality_APIM_Data2: 8 XXX - SG_ PersIndexApim_D_Actl : 63|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoApimActl : 39|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigApimActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ CntrStkKeycodeActl : 7|16@0+ (1,0) [0|0] "" XXX - SG_ CntrStk_D_RqRecall : 52|3@0+ (1,0) [0|0] "" XXX - SG_ CntrStk_D_RqAssoc : 55|3@0+ (1,0) [0|0] "" XXX - -BO_ 1003 Personality_IPC_Data_2: 8 XXX - SG_ PersIndexIpc_D_Actl : 34|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoIpcActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigIpcActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1004 Personality_DSM_Data_HS: 8 XXX - SG_ PersIndexDsm_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ PersIndexDsm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoDsmActl_UB : 35|1@0+ (1,0) [0|0] "" XXX - SG_ FeatNoDsmActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigDsmActl_UB : 36|1@0+ (1,0) [0|0] "" XXX - SG_ FeatConfigDsmActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1005 Personality_RHVAC_Data_HS: 8 XXX - SG_ PersIndexRhvac_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX - SG_ FeatNoRhvacActl_UB : 33|1@0+ (1,0) [0|0] "" XXX - SG_ FeatConfigRhvacActl_UB : 32|1@0+ (1,0) [0|0] "" XXX - SG_ PersIndexRhvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX - SG_ FeatNoRhvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX - SG_ FeatConfigRhvacActl : 7|16@0+ (1,0) [0|0] "" XXX - -BO_ 1031 Diesel_Data_Legacy_1: 8 XXX - SG_ W2S_COMMAND : 7|1@0+ (1,0) [0|0] "" XXX - SG_ TURBO_BOOST : 1|10@0+ (0.1,-30.0) [0|0] "PSI" XXX - SG_ IDLE_ENGINE_SHUTDOWN : 42|2@0+ (1,0) [0|0] "" XXX - -BO_ 1034 GGCC_Config_Mgmt_ID_1: 8 XXX - SG_ VehicleGGCCData : 7|64@0+ (1,0) [0|0] "mixed" XXX - -BO_ 1036 Desired_Torq_BrkSys_Stat: 8 XXX - SG_ BRK_TC_TEMPORARILY_UNAVAIL : 47|1@0+ (1,0) [0|0] "" XXX - SG_ TRLR_SWAY_EVNT_IN_PROGRESS : 22|1@0+ (1,0) [0|0] "" XXX - -BO_ 1043 ADAPTIVE_HEADLAMP_STAT: 8 XXX - SG_ ADAPTIVE_HEADLAMP_FAILURE : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 1044 AccelerationData: 8 XXX - SG_ VehVertComp_A_Actl : 1|10@0+ (0.01,-0.4) [0|0] "m/s^2" XXX - SG_ VehRolComp_W_Actl : 19|12@0+ (0.0002,-0.82) [0|0] "rad/s" XXX - SG_ VehYawNonLin_W_Rq : 51|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX - SG_ VehYawLin_W_Rq : 35|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX - -BO_ 1045 BrakeSysFeatures: 8 XXX - SG_ TCMode : 34|1@0+ (1,0) [0|0] "" XXX - SG_ DrvSlipCtlLamp_D_Rq : 63|2@0+ (1,0) [0|0] "" XXX - SG_ RSCMode : 48|1@0+ (1,0) [0|0] "" XXX - SG_ EBAMode : 40|1@0+ (1,0) [0|0] "" XXX - SG_ DrvAntiLckLamp_D_Rq : 17|2@0+ (1,0) [0|0] "" XXX - SG_ ChimeBrk_B_Rq : 38|1@0+ (1,0) [0|0] "" XXX - SG_ BrkLamp_B_Rq : 39|1@0+ (1,0) [0|0] "" XXX - SG_ VehVActlBrk_No_Cs : 31|8@0+ (1,0) [0|0] "" XXX - SG_ VehVActlBrk_No_Cnt : 23|4@0+ (1,0) [0|0] "" XXX - SG_ Veh_V_ActlBrk : 7|16@0+ (0.01,0) [0|0] "kph" XXX - SG_ DrvSlipCtlMde_D_Ind : 33|2@0+ (1,0) [0|0] "" XXX - SG_ VehRol_An_Dsply : 55|7@0+ (1,-64.0) [0|0] "Degrees" XXX - SG_ VehPtch_An_Dsply : 47|7@0+ (1,-64.0) [0|0] "Degrees" XXX - SG_ VehVActlBrk_D_Qf : 19|2@0+ (1,0) [0|0] "" XXX - SG_ HILL_DESC_MC : 37|3@0+ (1,0) [0|0] "" XXX - -BO_ 1046 BrakeSysFeatures_2: 8 XXX - SG_ BpedMove_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX - SG_ BpedMove_No_Cnt : 3|4@0+ (1,0) [0|0] "" XXX - SG_ BpedMove_D_Actl : 7|2@0+ (1,0) [0|0] "" XXX - SG_ AbsMduleAlive_No_Cnt : 39|4@0+ (1,0) [0|0] "" XXX - SG_ Abs_No_Cs : 31|8@0+ (1,0) [0|0] "" XXX - SG_ BrkAsst_B_Actl : 33|1@0+ (1,0) [0|0] "" XXX - SG_ StabCtlBrk_B_Avail : 4|1@0+ (1,0) [0|0] "" XXX - SG_ DrvHdcWarnInfo_D_Rq : 35|2@0+ (1,0) [0|0] "" XXX - SG_ DrvHdcMsg_D_Rq : 10|3@0+ (1,0) [0|0] "" XXX - SG_ DrvHdcLampInfo_D_Rq : 12|2@0+ (1,0) [0|0] "" XXX - SG_ Abs_B_Falt : 5|1@0+ (1,0) [0|0] "" XXX - SG_ VehLongComp_A_Actl : 49|10@0+ (0.035,-17.9) [0|0] "m/s^2" XXX - SG_ TRAILER_SWAY_CONFIG_STAT : 32|1@0+ (1,0) [0|0] "" XXX - SG_ VehLatComp_A_Actl : 47|10@0+ (0.035,-17.9) [0|0] "m/s^2" XXX - -BO_ 1047 TractionCtrlStatus_CG1: 8 XXX - SG_ EngEotcCtlMde_B_Ind : 3|1@0+ (1,0) [0|0] "" XXX - SG_ YawStabilityIndex : 48|9@0+ (1,-256.0) [0|0] "%" XXX - SG_ TCS_ENG_FAILD : 0|1@0+ (1,0) [0|0] "" XXX - SG_ TCS_ENG_ONLY_PRESENT : 1|1@0+ (1,0) [0|0] "" XXX - SG_ TCS_BRK_FAILD : 2|1@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTqRqMn_No_Cnt : 47|4@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTot_Tq_RqMn : 23|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX - SG_ EngEotcCtlLamp_D_Rq : 9|2@0+ (1,0) [0|0] "" XXX - SG_ PrplWhlTqRqMn_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX - SG_ HdcMde_D_Actl : 12|3@0+ (1,0) [0|0] "" XXX - SG_ VehicleDir_D_Est : 5|2@0+ (1,0) [0|0] "" XXX - SG_ TracCtlPtActv_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - -BO_ 1056 PowertrainData_1_CG1: 8 XXX - SG_ FUEL_ALCOHOL_PERCNT : 63|8@0+ (0.3937008,0) [0|0] "%" XXX - SG_ TrnTotTq_Rt_Est : 39|16@0+ (0.001,0) [0|0] "" XXX - SG_ TrnTotLss_Tq_Est : 31|8@0+ (0.5,0) [0|0] "Nm" XXX - SG_ ECMMILRequest : 9|2@0+ (1,0) [0|0] "" XXX - SG_ AirCondFluidHi_P_Actl : 55|8@0+ (0.125,0) [0|0] "bar" XXX - SG_ OilPressureWarning : 18|1@0+ (1,0) [0|0] "" XXX - SG_ CluPdlPos_Pc_Meas : 7|10@0+ (0.1,0) [0|0] "%" XXX - SG_ VehVLimStat_D_Actl : 12|3@0+ (1,0) [0|0] "" XXX - SG_ VehVLimActv_B_Actl : 13|1@0+ (1,0) [0|0] "" XXX - SG_ CluPdlPosPcMeas_D_Qf : 17|2@0+ (1,0) [0|0] "" XXX - SG_ CoolantFanStepAct : 23|5@0+ (1,0) [0|0] "Steps" XXX - -BO_ 1058 PowertrainData_2_CG1: 8 XXX - SG_ EngIdlShutDown_D_Stat : 19|2@0+ (1,0) [0|0] "" XXX - SG_ EngAout2_Tq_Actl : 55|11@0+ (1,-500.0) [0|0] "Nm" XXX - SG_ EngMsgTxt_D_Rq : 21|2@0+ (1,0) [0|0] "" XXX - SG_ EngClnt_Te_ActlDiag : 39|8@0+ (1,-40.0) [0|0] "degC" XXX - SG_ ThrPos_Pc_CalcDiag : 7|8@0+ (0.392157,0) [0|0] "%" XXX - SG_ EngLoad_Pc_CalcDiag : 47|8@0+ (0.392157,0) [0|0] "%" XXX - SG_ EngAirIn_Te_Actl : 15|10@0+ (0.25,-128.0) [0|0] "degC" XXX - SG_ ApedPos_Pc_ActlDiag : 31|8@0+ (0.392157,0) [0|0] "%" XXX - -BO_ 1064 StrgWheel_PolicePkg: 8 XXX - SG_ PoliceAux4Lamp_B_Rq : 4|1@0+ (1,0) [0|0] "" XXX - SG_ PoliceAux3Lamp_B_Rq : 5|1@0+ (1,0) [0|0] "" XXX - SG_ PoliceAux2Lamp_B_Rq : 6|1@0+ (1,0) [0|0] "" XXX - SG_ PoliceAux1Lamp_B_Rq : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 1067 Battery_Mgmt_1: 8 XXX - SG_ AlternatorExcDutyCycle : 31|5@0+ (3.22581,0) [0|0] "%" XXX - SG_ EngineEffStatus : 39|2@0+ (1,0) [0|0] "" XXX - SG_ AvailableCurrentAtIdle : 23|8@0+ (1,0) [0|0] "Amps" XXX - SG_ AvailableCurrent : 15|8@0+ (1,0) [0|0] "Amps" XXX - SG_ ActualCurrent : 7|8@0+ (1,0) [0|0] "Amps" XXX - SG_ NoAlternatorResponse : 26|1@0+ (1,0) [0|0] "" XXX - SG_ AlternatorTempFault : 25|1@0+ (1,0) [0|0] "" XXX - SG_ AlternatorMechFault : 24|1@0+ (1,0) [0|0] "" XXX - SG_ AlternatorElFault : 37|1@0+ (1,0) [0|0] "" XXX - -BO_ 1068 Battery_Mgmt_2: 8 XXX - SG_ ChargeMode : 39|3@0+ (1,0) [0|0] "" XXX - SG_ ChargeVoltageReq : 7|6@0+ (0.1,10.6) [0|0] "Volts" XXX - SG_ ChargeVoltageReqMax : 23|6@0+ (0.1,10.6) [0|0] "Volts" XXX - SG_ FrontBatteryTemp : 47|8@0+ (1,-60.0) [0|0] "DegC" XXX - SG_ IBoost_Msg : 52|4@0+ (1,0) [0|0] "" XXX - SG_ IdleSpeedIncrease_El : 8|1@0+ (1,0) [0|0] "" XXX - SG_ MaxLashStep : 11|3@0+ (0.1,0) [0|0] "Volts" XXX - SG_ PowerSystemStatus : 15|4@0+ (1,0) [0|0] "" XXX - SG_ Shed_T_Eng_Off_B : 17|1@0+ (1,0) [0|0] "" XXX - SG_ Shed_Level_Req : 55|3@0+ (1,0) [0|0] "" XXX - SG_ Shed_Feature_Group_ID : 36|5@0+ (1,0) [0|0] "" XXX - SG_ Shed_Drain_Eng_Off_B : 16|1@0+ (1,0) [0|0] "" XXX - SG_ Batt_Lo_SoC_B : 25|1@0+ (1,0) [0|0] "" XXX - SG_ VoltageRampRateUpMax : 31|6@0+ (0.1,0) [0|0] "Volts/sec" XXX - SG_ Batt_Crit_SoC_B : 24|1@0+ (1,0) [0|0] "" XXX - -BO_ 1069 Battery_Mgmt_3: 8 XXX - SG_ BSFault : 23|1@0+ (1,0) [0|0] "" XXX - SG_ BSBattSOC : 30|7@0+ (1,0) [0|0] "%" XXX - SG_ BSBattQDeltaRideAh : 38|15@0+ (0.0078125,-100.0) [0|0] "Ah" XXX - SG_ BSBattQCapAh : 22|7@0+ (1,0) [0|0] "Ah" XXX - SG_ BSBattCurrent : 5|14@0+ (0.0625,-512.0) [0|0] "Amps" XXX - SG_ BattULoState_D_Qlty : 7|2@0+ (1,0) [0|0] "" XXX - -BO_ 1072 Cluster_Information: 8 XXX - SG_ ManRgen_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX - SG_ Easy_Entry_Exit_Cmd : 49|1@0+ (1,0) [0|0] "" XXX - SG_ KeyTypeChngMykey_D_Rq : 53|2@0+ (1,0) [0|0] "" XXX - SG_ DrvSlipCtlMde_B_Rq : 19|1@0+ (1,0) [0|0] "" XXX - SG_ MetricActv_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - SG_ LdwDfaltOn_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX - SG_ Fda_B_Stat : 9|1@0+ (1,0) [0|0] "" XXX - SG_ ePRNDL_MODE : 8|1@0+ (1,0) [0|0] "" XXX - SG_ AccDeny_B_RqIpc : 7|1@0+ (1,0) [0|0] "" XXX - SG_ MetricActvTe_B_Actl : 23|1@0+ (1,0) [0|0] "" XXX - SG_ EngOilLife_B_RqReset : 18|1@0+ (1,0) [0|0] "" XXX - SG_ OdometerMasterValue : 31|24@0+ (1,0) [0|0] "km" XXX - SG_ New_Module_Attn_Event : 56|1@0+ (1,0) [0|0] "" XXX - SG_ TRAILER_SWAY_CONFIG_CMD : 60|1@0+ (1,0) [0|0] "" XXX - SG_ ParkDetect_Stat : 62|1@0+ (1,0) [0|0] "" XXX - SG_ Attn_Info_Audio : 59|3@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkMde_D_Rq : 61|1@0+ (1,0) [0|0] "" XXX - SG_ TRAILER_BRAKE_CONFIG : 48|1@0+ (1,0) [0|0] "" XXX - SG_ VehMykey_Vl_LimRq : 63|1@0+ (1,0) [0|0] "" XXX - SG_ VehMykey_V_LimRqMx : 51|1@0+ (1,0) [0|0] "" XXX - SG_ EmgcyCallAsstMykey_Rq : 50|1@0+ (1,0) [0|0] "" XXX - SG_ DrvSlipCtlMde_D_Rq : 17|2@0+ (1,0) [0|0] "" XXX - SG_ AccEnbl_B_RqDrv : 20|1@0+ (1,0) [0|0] "" XXX - SG_ AutoHighBeam_Cmd : 55|2@0+ (1,0) [0|0] "" XXX - -BO_ 1075 Cluster_Information_3_CG1: 8 XXX - SG_ CamraFrntStat_D_Rq : 58|1@0+ (1,0) [0|0] "" XXX - SG_ DieslFuelBio_B_ActlDrv : 56|1@0+ (1,0) [0|0] "" XXX - SG_ RearCameraDelayCmd : 59|1@0+ (1,0) [0|0] "" XXX - SG_ UreaWarnReset : 60|1@0+ (1,0) [0|0] "" XXX - SG_ DistanceBarSetting : 49|1@0+ (1,0) [0|0] "" XXX - SG_ CamraZoomMan_D_Rq : 63|3@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlStat_D_Rq : 48|1@0+ (1,0) [0|0] "" XXX - SG_ CamraOvrlDyn_D_Rq : 25|1@0+ (1,0) [0|0] "" XXX - SG_ CamAutoTowbarZoom : 24|1@0+ (1,0) [0|0] "" XXX - SG_ FuelSecndActv_B_Actl : 39|1@0+ (1,0) [0|0] "" XXX - SG_ HILL_DESC_SW : 38|1@0+ (1,0) [0|0] "" XXX - SG_ FuelLvlPssvSide_No_Raw : 19|10@0+ (1,0) [0|0] "" XXX - SG_ SPDJBCompassCMDDecalibrate : 50|1@0+ (1,0) [0|0] "" XXX - SG_ SPDJBCompassCMDChangeZone : 51|1@0+ (1,0) [0|0] "" XXX - SG_ SPDJBCompassCmdDesiredZone : 55|4@0+ (1,0) [0|0] "" XXX - SG_ FUEL_SENSOR_NUM : 35|1@0+ (1,0) [0|0] "" XXX - SG_ W2S_LAMP_OK : 37|1@0+ (1,0) [0|0] "" XXX - SG_ Beltminder_Warn_Stats_IPC : 32|1@0+ (1,0) [0|0] "" XXX - SG_ FuelLvlActvSide_No_Raw : 13|10@0+ (1,0) [0|0] "" XXX - SG_ FuelLvl_Pc_Dsply : 7|10@0+ (0.108696,-5.22) [0|0] "%" XXX - SG_ FUEL_LVL_PER_MEAN : 47|8@0+ (0.434783,-5.22) [0|0] "% Indication" XXX - SG_ Fuel_Level_State : 34|2@0+ (1,0) [0|0] "" XXX - SG_ H2O_IN_FUEL_LAMP_OK_OBD : 36|1@0+ (1,0) [0|0] "" XXX - -BO_ 1093 TrailerBrakeInfo: 8 XXX - SG_ TrlrLampCnnct_B_Actl : 22|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkActCnnct_B_Actl : 16|1@0+ (1,0) [0|0] "" XXX - SG_ StopLamp_B_RqTrlrBrk : 7|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkOut_No_Dsply : 3|4@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkGain_No_Actl : 21|5@0+ (0.5,0) [0|0] "" XXX - SG_ TrlrBrkDsply_B_Rq : 6|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkDcnnt_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkCtl_B_Falt : 4|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkActCirct_B_Falt : 39|1@0+ (1,0) [0|0] "" XXX - SG_ TrlrBrkMde_D_Actl : 23|1@0+ (1,0) [0|0] "" XXX - -BO_ 1104 SHCM_Status: 8 XXX - SG_ CURRENT_DRAW : 15|8@0+ (0.5,0) [0|0] "Amps" XXX - SG_ SECONDARY_HEATER_STAT : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 1107 PassengerOCSSerialNum: 8 XXX - SG_ OCSSerialNoByte8 : 63|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte7 : 55|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte6 : 47|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte5 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte4 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte3 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte2 : 15|8@0+ (1,0) [0|0] "" XXX - SG_ OCSSerialNoByte1 : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 1108 RCMSerialNumber: 8 XXX - SG_ RCMSerialNoByte8 : 63|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte7 : 55|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte6 : 47|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte5 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte4 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte3 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte2 : 15|8@0+ (1,0) [0|0] "" XXX - SG_ RCMSerialNoByte1 : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 1109 eCall_Info: 8 XXX - SG_ eCallConfirmation : 7|3@0+ (1,0) [0|0] "" XXX - -BO_ 1125 GPS_Data_Nav_1_HS: 8 XXX - SG_ GpsHsphLattSth_D_Actl : 25|2@0+ (1,0) [0|0] "" XXX - SG_ GpsHsphLongEast_D_Actl : 9|2@0+ (1,0) [0|0] "" XXX - SG_ GPS_Longitude_Minutes : 46|6@0+ (1,0) [0|0] "Minutes" XXX - SG_ GPS_Longitude_Min_dec : 55|14@0+ (0.0001,0) [0|0] "Minutes" XXX - SG_ GPS_Longitude_Degrees : 39|9@0+ (1,-179.0) [0|0] "Degrees" XXX - SG_ GPS_Latitude_Minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX - SG_ GPS_Latitude_Min_dec : 23|14@0+ (0.0001,0) [0|0] "Minutes" XXX - SG_ GPS_Latitude_Degrees : 7|8@0+ (1,-89.0) [0|0] "Degrees" XXX - -BO_ 1126 GPS_Data_Nav_2_HS: 8 XXX - SG_ Gps_B_Falt : 2|1@0+ (1,0) [0|0] "" XXX - SG_ GpsUtcYr_No_Actl : 55|5@0+ (1,1.0) [0|0] "Year" XXX - SG_ GpsUtcMnth_No_Actl : 47|4@0+ (1,1.0) [0|0] "Month" XXX - SG_ GpsUtcDay_No_Actl : 37|5@0+ (1,1.0) [0|0] "Day" XXX - SG_ GPS_UTC_seconds : 23|6@0+ (1,0) [0|0] "seconds" XXX - SG_ GPS_UTC_minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX - SG_ GPS_UTC_hours : 7|5@0+ (1,0) [0|0] "Hours" XXX - SG_ GPS_Pdop : 31|5@0+ (0.2,0) [0|0] "" XXX - SG_ GPS_Compass_direction : 26|4@0+ (1,0) [0|0] "" XXX - SG_ GPS_Actual_vs_Infer_pos : 38|1@0+ (1,0) [0|0] "" XXX - -BO_ 1127 GPS_Data_Nav_3_HS: 8 XXX - SG_ GPS_Vdop : 63|5@0+ (0.2,0) [0|0] "" XXX - SG_ GPS_Speed : 47|8@0+ (1,0) [0|0] "MPH" XXX - SG_ GPS_Sat_num_in_view : 7|5@0+ (1,0) [0|0] "" XXX - SG_ GPS_MSL_altitude : 15|12@0+ (10.0,-20460.0) [0|0] "feet" XXX - SG_ GPS_Heading : 31|16@0+ (0.01,0) [0|0] "Degrees" XXX - SG_ GPS_Hdop : 55|5@0+ (0.2,0) [0|0] "" XXX - SG_ GPS_dimension : 2|3@0+ (1,0) [0|0] "" XXX - -BO_ 1152 All_Terrain_Data: 8 XXX - SG_ HdcSwitchPos_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX - SG_ TerrStat_D_RqDsply : 7|4@0+ (1,0) [0|0] "" XXX - SG_ TerrMde_D_RqDrv : 3|3@0+ (1,0) [0|0] "" XXX - -BO_ 1186 Information_4x4_2_CG1: 8 XXX - SG_ RearDiffFalt_D_Stat : 23|2@0+ (1,0) [0|0] "" XXX - SG_ RearDiffLck_Tq_Actl : 7|12@0+ (1,0) [0|0] "Nm" XXX - SG_ RearDiffLckMsg_D_Rq : 20|3@0+ (1,0) [0|0] "" XXX - SG_ AwdSrvcRqd_B_Rq : 21|1@0+ (1,0) [0|0] "" XXX - SG_ RearDiffLckLamp_D_Rq : 11|2@0+ (1,0) [0|0] "" XXX diff --git a/opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc b/opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc deleted file mode 100644 index 2e1647b3d8..0000000000 --- a/opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc +++ /dev/null @@ -1,421 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - -BO_ 1280 Object_00: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1281 Object_01: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1282 Object_02: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1283 Object_03: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1284 Object_04: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1285 Object_05: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1286 Object_06: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1287 Object_07: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1288 Object_08: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1289 Object_09: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1290 Object_10: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1291 Object_11: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1292 Object_12: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1293 Object_13: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1294 Object_14: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1295 Object_15: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1296 Object_16: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1297 Object_17: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1298 Object_18: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1299 Object_19: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1300 Object_20: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1301 Object_21: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1302 Object_22: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1303 Object_23: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1304 Object_24: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1305 Object_25: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1306 Object_26: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1307 Object_27: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1308 Object_28: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1309 Object_29: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1310 Object_30: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1311 Object_31: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1312 Object_32: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1313 Object_33: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1314 Object_34: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1315 Object_35: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1316 Object_36: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1317 Object_37: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1318 Object_38: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1319 Object_39: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1320 Object_40: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1321 Object_41: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1322 Object_42: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1323 Object_43: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1324 Object_44: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1325 Object_45: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1326 Object_46: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1327 Object_47: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1328 Object_48: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1329 Object_49: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1330 Object_50: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1331 Object_51: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1332 Object_52: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1333 Object_53: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1334 Object_54: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1335 Object_55: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1336 Object_56: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1337 Object_57: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1338 Object_58: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1339 Object_59: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1340 Object_60: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1341 Object_61: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1342 Object_62: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - -BO_ 1343 Object_63: 8 XXX - SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX - SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX - SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX - SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX - diff --git a/opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc b/opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc deleted file mode 100644 index c4b706d064..0000000000 --- a/opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc +++ /dev/null @@ -1,139 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - -BO_ 130 EPAS_INFO: 8 XXX - SG_ SteMdule_U_Meas : 39|8@0+ (0.05,6.0) [0|0] "Volts" XXX - SG_ SteMdule_I_Est : 21|12@0+ (0.05,-64.0) [0|0] "Amps" XXX - SG_ EPAS_FAILURE : 9|2@0+ (1,0) [0|0] "" XXX - SG_ SteeringColumnTorque : 7|8@0+ (0.0625,-8.0) [0|0] "Nm" XXX - SG_ SAPPAngleControlStat6 : 15|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat5 : 14|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat4 : 13|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat3 : 12|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat2 : 11|1@0+ (1,0) [0|0] "" XXX - SG_ SAPPAngleControlStat1 : 23|2@0+ (1,0) [0|0] "" XXX - -BO_ 118 Steering_Wheel_Data_CG1: 8 XXX - SG_ SteWhlRelInit_An_Sns : 6|15@0+ (0.1,-1600.0) [0|0] "deg" XXX - SG_ SteWhlRelCalib_An_Sns : 23|15@0+ (0.1,-1600.0) [0|0] "deg" XXX - SG_ SteWhlRelInit2_An_Sns : 55|16@0+ (0.1,-3200.0) [0|0] "deg" XXX - SG_ SteWhlAn_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX - SG_ SteWhlAn_No_Cnt : 47|4@0+ (1,0) [0|0] "Counts" XXX - -BO_ 131 Steering_Buttons: 8 XXX - SG_ Right_Turn_Light : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Left_Turn_Light : 4|1@0+ (1,0) [0|0] "" XXX - SG_ Dist_Decr : 12|1@0+ (1,0) [0|0] "" XXX - SG_ Dist_Incr : 11|1@0+ (1,0) [0|0] "" XXX - SG_ Cancel : 8|1@0+ (1,0) [0|0] "" XXX - SG_ Resume : 29|1@0+ (1,0) [0|0] "" XXX - SG_ Set : 28|1@0+ (1,0) [0|0] "" XXX - SG_ Main : 38|1@0+ (1,0) [0|0] "" XXX - -BO_ 145 Yaw_Data: 8 XXX - SG_ VehYaw_W_Actl : 39|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - SG_ VehRol_W_Actl : 23|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - SG_ VehPtch_W_Actl : 7|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX - -BO_ 146 Accel_Data: 8 XXX - SG_ VehVertAActl_D_Qf : 38|2@0+ (1,0) [0|0] "" XXX - SG_ VehLongAActl_D_Qf : 22|2@0+ (1,0) [0|0] "" XXX - SG_ VehLatAActl_D_Qf : 6|2@0+ (1,0) [0|0] "" XXX - SG_ VehVert_A_Actl : 36|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX - SG_ VehLong_A_Actl : 20|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX - SG_ VehLat_A_Actl : 4|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX - -BO_ 357 Cruise_Status: 8 XXX - SG_ Brake_Drv_Appl : 5|1@0+ (1,0) [0|0] "" XXX - SG_ Cruise_State : 11|4@0+ (1,0) [0|0] "" XXX - SG_ Set_Speed : 23|8@0+ (1,0) [0|0] "" XXX - -BO_ 516 EngineData_14: 8 XXX - SG_ ApedPosScal_Pc_Actl : 1|10@0+ (0.1,0) [0|0] "%" XXX - -BO_ 535 WheelSpeed_CG1: 8 XXX - SG_ WhlRr_W_Meas : 55|14@0+ (0.04,0) [0|0] "rad/s" XXX - SG_ WhlRl_W_Meas : 39|14@0+ (0.04,0) [0|0] "rad/s" XXX - SG_ WhlFr_W_Meas : 23|14@0+ (0.04,0) [0|0] "rad/s" XXX - SG_ WhlFl_W_Meas : 7|14@0+ (0.04,0) [0|0] "rad/s" XXX - -BO_ 534 WheelData: 8 XXX - SG_ WhlRotatRr_No_Cnt : 23|8@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRr_D_Actl : 33|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirRl_D_Actl : 39|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFr_D_Actl : 37|2@0+ (1,0) [0|0] "" XXX - SG_ WhlDirFl_D_Actl : 35|2@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFr_No_Cnt : 7|8@0+ (1,0) [0|0] "" XXX - SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|0] "" XXX - SG_ WHEEL_ROLLING_TIMESTAMP : 47|8@0+ (1,0) [0|0] "" XXX - -BO_ 947 Doors: 8 XXX - SG_ Door_FL_Open : 61|1@0+ (1,0) [0|0] "" XXX - SG_ Door_FR_Open : 60|1@0+ (1,0) [0|0] "" XXX - SG_ Door_RL_Open : 48|1@0+ (1,0) [0|0] "" XXX - SG_ Door_RR_Open : 49|1@0+ (1,0) [0|0] "" XXX - -BO_ 963 BCM_to_HS_Body: 8 XXX - SG_ Brake_Lights : 8|1@0+ (1,0) [0|0] "" XXX - -BO_ 970 Lane_Keep_Assist_Control: 8 XXX - SG_ Lkas_Action : 7|4@0+ (1,0) [0|15] "" XXX - SG_ Lkas_Alert : 3|4@0+ (1,0) [0|15] "" XXX - SG_ Lane_Curvature : 15|12@0+ (5e-06,-0.01) [0|0] "1/m" XXX - SG_ Steer_Angle_Req : 19|12@0+ (0.04297,-88.00445) [0|0] "deg" XXX - -BO_ 972 Lane_Keep_Assist_Status: 8 XXX - SG_ LaHandsOff_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX - SG_ LaActDeny_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX - SG_ LaActAvail_D_Actl : 5|2@0+ (1,0) [0|0] "" XXX - -BO_ 984 Lane_Keep_Assist_Ui: 8 XXX - SG_ Set_Me_X80 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ Set_Me_X45 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ Lines_Hud : 55|4@0+ (1,0) [0|15] "" XXX - SG_ Hands_Warning_W_Chime : 50|1@0+ (1,0) [0|1] "" XXX - SG_ Hands_Warning : 49|1@0+ (1,0) [0|1] "" XXX - SG_ Set_Me_X30 : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ SG_ 970 Lkas_Action "only vals 4, 5, 8, 9 seem to work. 4 and 5 are a bit smoother" ; - -VAL_ 357 Cruise_State 4 "active" 3 "standby" 0 "off" ; -VAL_ 970 Lkas_Action 15 "off" 9 "abrupt" 8 "abrupt2" 5 "smooth" 4 "smooth2" ; -VAL_ 970 Lkas_Alert 15 "no_alert" 3 "high_intensity" 2 "mid_intensity" 1 "low_intensity" ; -VAL_ 972 LaActAvail_D_Actl 3 "available" 2 "tbd" 1 "not_available" 0 "fault" ; -VAL_ 984 Lines_Hud 15 "none" 11 "grey_yellow" 8 "green_red" 7 "yellow_grey" 6 "grey_grey" 4 "red_green" 3 "green_green" ; diff --git a/opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc b/opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc deleted file mode 100644 index 828e4118ee..0000000000 --- a/opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc +++ /dev/null @@ -1,12717 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: VDM CMR_DSMC SOBDMC_HPCM_FD1 IPMA_ADAS PSCM ABS_ESC TCCM TCM_DSL PCM_HEV PCM ECM_Diesel GENERIC_GWMWakeup GWM _delete TSTR - -VAL_TABLE_ DcacRdy_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "Faulted" 4 "ProtectionTempearture" 3 "ProtectionOverload" 2 "ProtectionGfci" 1 "Active" 0 "Idle"; -VAL_TABLE_ HvacCmprLim_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "CompressorHeadPressure" 4 "AvailableTorque" 3 "PedalPosition" 2 "RPM" 1 "ECT" 0 "NoLimit"; -VAL_TABLE_ AdvStrt_D_Stat 15 "NotUsed_15" 14 "NotUsed_14" 13 "NotUsed_13" 12 "NotUsed_12" 11 "NotUsed_11" 10 "NotUsed_10" 9 "NotUsed_9" 8 "NotUsed_8" 7 "NotUsed_7" 6 "NotUsed_6" 5 "NotUsed_5" 4 "NotUsed_4" 3 "NotUsed_3" 2 "NotUsed_2" 1 "NotUsed_1" 0 "NoAction"; -VAL_TABLE_ VehOnSrc_D_Stat 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "OverTheAir" 3 "RemoteParkAssist" 2 "RemoteStart" 1 "Manual" 0 "Off"; -VAL_TABLE_ NoMessage_Msg1_63 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ TrlrRvrseEnbl_D2_Stat 7 "NotUsed" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; -VAL_TABLE_ Off_On_FlashChime 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "FlashChime" 1 "On" 0 "Off"; -VAL_TABLE_ DieslPrtcWarn_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_OverLoaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_OverLimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_OverLoaded" 0 "DPF_Normal_Operation"; -VAL_TABLE_ StrtrMtrCtlMsgTxt_D2_Rq 3 "NotUsed" 2 "ShiftToNeutralToStart" 1 "ShiftToParkToStart" 0 "NoRequest"; -VAL_TABLE_ PaakMyKey_D_Rq 3 "NotUsed" 2 "ConfirmNewPaakMyKey" 1 "RequestNewPaakMyKey" 0 "None"; -VAL_TABLE_ PaakMyKeySearch_D_Stat 7 "PhoneErased" 6 "LockButtonTimeOut" 5 "PressLockButton" 4 "ConfirmHmi" 3 "MyKeyPaakFound" 2 "StandardPaakFound" 1 "NoValidPaakFound" 0 "Null"; -VAL_TABLE_ TrlrIdType_D_Stat 3 "Gooseneck" 2 "FifthWheel" 1 "Conventional" 0 "Null"; -VAL_TABLE_ TrlrAidSetup_D2_Rq 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "CompleteSetup" 5 "ReturnToSetup" 4 "StickerNotCircled" 3 "ConfirmSetup" 2 "EndSetup" 1 "BeginSetup" 0 "Inactive"; -VAL_TABLE_ TrlrAidEnbl_D2_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Deactivate" 2 "ActivateTrg" 1 "ActivateTba" 0 "Inactive"; -VAL_TABLE_ BattChrgMde_D_Actl 3 "NotUsed" 2 "ConstantCurrent" 1 "ConstantVoltage" 0 "NotCharging"; -VAL_TABLE_ LcwaLeft_D_Stat 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Disabled" 2 "TemporaryUnavailable" 1 "SensorBlocked" 0 "Available"; -VAL_TABLE_ LcwaMsgTxt_D_Stat 3 "SodXFaulty" 2 "SodXBlocked" 1 "TrailerConnected" 0 "NoMessage"; -VAL_TABLE_ Level_0_3 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Level_0"; -VAL_TABLE_ SteWhlSwtchMde_D_Stat 3 "NotUsed_2" 2 "NotUsed_1" 1 "Dialog" 0 "Domain"; -VAL_TABLE_ TrlrRvrse_D_Stat 3 "Faulty" 2 "TrailerReverseGuidanceLite" 1 "On" 0 "Off"; -VAL_TABLE_ TrlrAid_D2_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "DirtyCamera" 9 "IncorrectLighting" 8 "TrackingLost" 7 "TrackingUnknownConfidence" 6 "TrackingHighConfidence" 5 "TrackingMediumConfidence" 4 "TrackingLowConfidence" 3 "TurnRequested" 2 "DriveStraighRequested" 1 "Initializing" 0 "NotTracking"; -VAL_TABLE_ AwdDrvMde_D2 15 "Faulty" 14 "NotUsed_7" 13 "NotUsed_6" 12 "NotUsed_5" 11 "NotUsed_4" 10 "NotUsed_3" 9 "NotUsed_2" 8 "NotUsed_1" 7 "NotAvailable" 6 "TowHaul" 5 "RockCrawl" 4 "Baja" 3 "MudAndSand" 2 "Weather" 1 "Sport" 0 "Normal"; -VAL_TABLE_ TrlrAidSetup_D2_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "SetupAcquisitionSuccess" 4 "TbaTadMonitor" 3 "SetupStartAcquisition" 2 "SetupPrepForAcquisition" 1 "TbaActive" 0 "Null"; -VAL_TABLE_ CamraRearOn_D2_Stat2 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Decommission" 2 "Activate" 1 "Deactivate" 0 "Null"; -VAL_TABLE_ AirCondClu_D_Stat 7 "NotUsed" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; -VAL_TABLE_ BattChrgTrgtSoC_D_Rq 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_TABLE_ OffNormalSoft 3 "NotUsed" 2 "Soft" 1 "Normal" 0 "Off"; -VAL_TABLE_ OffOnDisabledInhibited 3 "Inhibited" 2 "Disabled" 1 "On" 0 "Off"; -VAL_TABLE_ DgtlCommGtwyMde_D_Rq 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "AcPnC" 4 "AcEIM" 3 "DcPnC" 2 "DcEIM" 1 "AttemptDgtlComm" 0 "NoDgtlComm"; -VAL_TABLE_ BattDcCnnct_D_Cmd 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "WeldCheck" 3 "OkToDischarge" 2 "Closed" 1 "Precharge" 0 "Open"; -VAL_TABLE_ Null_NoFault_Fault 3 "NotUsed" 2 "Fault" 1 "NoFault" 0 "Null"; -VAL_TABLE_ ModemReset_D_Rq 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "BrandConnectReset2" 5 "BrandConnectReset1" 4 "CcsReset" 3 "OnlineTrafficReset" 2 "PaakReset" 1 "WifiHotspotReset" 0 "Null"; -VAL_TABLE_ PrkAsstSlotId_D_Stat 7 "Faulty" 6 "Slot6" 5 "Slot5" 4 "Slot4" 3 "Slot3" 2 "Slot2" 1 "Slot1" 0 "NoSlotFound"; -VAL_TABLE_ RstrnOnPsngr_D_RqMnu 15 "Faulty" 14 "NotUsed_11" 13 "NotUsed_10" 12 "ConfiguredOff" 11 "NotUsed_9" 10 "On" 9 "NotUsed_8" 8 "NotUsed_7" 7 "NotUsed_6" 6 "NotUsed_5" 5 "Off" 4 "NotUsed_4" 3 "NotUsed_3" 2 "NotUsed_2" 1 "NotUsed_1" 0 "NoAction"; -VAL_TABLE_ BalrInnrLeft_D_Stat 3 "Reporting" 2 "NotReporting" 1 "SystemStandby" 0 "Initialization"; -VAL_TABLE_ Zero_1_2_4 3 "Four" 2 "Two" 1 "One" 0 "Zero"; -VAL_TABLE_ NoReq_AutoUp_Stop 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_TABLE_ BalrSnsLeft_D_Falt 3 "Invalid" 2 "SystemFailure" 1 "Blocked" 0 "Clear"; -VAL_TABLE_ Null_Low_Med_High 3 "High" 2 "Medium" 1 "Low" 0 "Null"; -VAL_TABLE_ Null_NotPressed_Pressed 3 "NotUsed" 2 "Pressed" 1 "NotPressed" 0 "Null"; -VAL_TABLE_ Low_Med_High 3 "NotUsed" 2 "High" 1 "Medium" 0 "Low"; -VAL_TABLE_ Null_NotAvail_Avail 3 "NotUsed" 2 "Available" 1 "NotAvailable" 0 "Null"; -VAL_TABLE_ ChrgGoTMnte_D_Stat 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; -VAL_TABLE_ NoData_Faulty_1E_1F 31 "Faulty" 30 "NoDataExists"; -VAL_TABLE_ PwFlwBatt_D_Dsply 15 "NotUsed_8" 14 "NotUsed_7" 13 "NotUsed_6" 12 "NotUsed_5" 11 "NotUsed_4" 10 "NotUsed_3" 9 "NotUsed_2" 8 "NotUsed_1" 7 "FlwFromWallToBatt" 6 "FlwFromAllWhlsToBatt" 5 "FlwFromBattToAllWhls" 4 "FlwFromFrontWhlsToBatt" 3 "FlwFromBattToFrontWhls" 2 "FlwFromRearWhlsToBatt" 1 "FlwFromBattToRearWhls" 0 "NoFlow"; -VAL_TABLE_ PwFlwFuelDrv_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "FlwFromFuelToAllWhls" 2 "FlwFromFuelToFrontWhls" 1 "FlwFromFuelToRearWhls" 0 "NoFlow"; -VAL_TABLE_ TrlrAidMsgTxt_D2_Rq 63 "Message63" 62 "Message62" 61 "Message61" 60 "Message60" 55 "Message55" 50 "Message50" 45 "Message45" 40 "Message40" 35 "Message35" 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ TrlrAidEnbl_D2_Stat 7 "NotUsed_1" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; -VAL_TABLE_ RbaCta_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; -VAL_TABLE_ NoRequest_Mode1_2_3 3 "Mode_3" 2 "Mode_2" 1 "Mode_1" 0 "NoRequest"; -VAL_TABLE_ RvltnMatchAllw_D_Stat 3 "RevolutionMatchDisabled" 2 "RevolutionMatchEnabled" 1 "ChangeWithDriveMode" 0 "NoSelection"; -VAL_TABLE_ BattTracCnnct_D_Cmd 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "WeldCheck" 3 "OkToDischarge" 2 "Closed" 1 "Precharge" 0 "Open"; -VAL_TABLE_ NotDiagnose_FailPass 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_TABLE_ Null_Off_UnavailFaulty 3 "Faulty" 2 "Unavailable" 1 "Off" 0 "Null"; -VAL_TABLE_ OffOnDisabledNotUsed 3 "NotUsed" 2 "Disabled" 1 "On" 0 "Off"; -VAL_TABLE_ OffGraphicTextBoth 3 "Both" 2 "Text" 1 "Graphic" 0 "Off"; -VAL_TABLE_ NoneInactiveActive_NotUsed 3 "NotUsed" 2 "Active" 1 "Inactive" 0 "None"; -VAL_TABLE_ Off_On_NotUsed 3 "NotUsed_2" 2 "NotUsed_1" 1 "On" 0 "Off"; -VAL_TABLE_ RbaSys_D_Stat 3 "Faulty" 2 "Available" 1 "Suspended" 0 "Disabled"; -VAL_TABLE_ BrkAppl_D_RqPt 3 "BrakesSlowRelease" 2 "BrakesFastRelease" 1 "BrakesEngage" 0 "NotActive"; -VAL_TABLE_ Mtr2State_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_1" 4 "ReadinessState" 3 "DeactivationState" 2 "PowerGeneration" 1 "PowerConsumption" 0 "Null"; -VAL_TABLE_ HybVehMde_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Fuel" 2 "HybridElectric" 1 "AllElectric" 0 "Null"; -VAL_TABLE_ ChrgStat_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed" 4 "ChargingCompleted" 3 "NotCharging" 2 "ChargingInDrivingState" 1 "ChargingInParkingState" 0 "Null"; -VAL_TABLE_ Null_HiPower_Low_Med 3 "MediumPower" 2 "LowPower" 1 "HighPower" 0 "Null"; -VAL_TABLE_ Inactive_Enable_Disable_NotUsed 0 "Inactive" 2 "Disable" 1 "Enable"; -VAL_TABLE_ Inactive_OffOn_NotUsed 0 "Inactive" 1 "On" 2 "Off" 3 "NotUsed"; -VAL_TABLE_ Null_NotPressed_Faulty 3 "Faulty" 2 "Pressed" 1 "NotPressed" 0 "Null"; -VAL_TABLE_ TrailCtl_D_Stat 7 "Faulty" 6 "DescentOnly" 5 "EnabledDeny" 4 "StandbyOverThreshold" 3 "StandbyOverride" 2 "Active" 1 "EnabledDescent" 0 "Off"; -VAL_TABLE_ Faulty_3F 63 "Faulty"; -VAL_TABLE_ ChrgOvrdExitScrn_D_Rq 3 "NotUsed_1" 2 "Request_override" 1 "Do_not_request_override" 0 "Inactive"; -VAL_TABLE_ Quality_Data_Faulty 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Faulty"; -VAL_TABLE_ TrlrHitchYaw_D_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "FaultyYrsuConnection" 9 "FaultyYrsu" 8 "HiConfdLrndAngle" 7 "LowConfdLrndAngle" 6 "HiConfdAngleMem" 5 "LowConfdAngleMem" 4 "InitNoTadAngle" 3 "InitInputs" 2 "TadTrlrDataOutOfRange" 1 "TadNotWithinSpecification" 0 "NoConnectionWithYrsu"; -VAL_TABLE_ NoData_Faulty_FFFFFFFFFFFE_FF -1 "Faulty_FFFFFFFFFFFF" -2 "NoDataExists_FFFFFFFFFFFE"; -VAL_TABLE_ NoFault_Fault 1 "Fault" 0 "No_Fault"; -VAL_TABLE_ OtaTrg_D_Stat 3 "NotUsed_1" 2 "Accepted" 1 "NotAccepted" 0 "Null"; -VAL_TABLE_ EdmMsgTxt_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OverallGoodScore" 10 "WorkOnCompliance" 9 "GoodCompliance" 8 "WorkOnGearShifting" 7 "GoodGearShifting" 6 "WorkOnEfficientSpeed" 5 "GoodEfficientSpeed" 4 "WorkOnDeceleration" 3 "GoodDeceleration" 2 "WorkOnAcceleration" 1 "GoodAcceleration" 0 "NoMessage"; -VAL_TABLE_ EdmLamp_D_Dsply 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "NotUsed_1" 8 "CoastingEngineBrake" 7 "CoastingShiftToNeutral" 6 "FreewayJunction" 5 "Curve2" 4 "Curve1" 3 "SpeedLimit" 2 "Crossing" 1 "FreewayExit" 0 "NoRecommendation"; -VAL_TABLE_ AwdCnnct_D_Stat 3 "Connecting" 2 "Disconnecting" 1 "Connected" 0 "Disconnected"; -VAL_TABLE_ EngAirFiltMsgTxt_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "EngineAirFilterMonitorFalt" 4 "ResetComplete" 3 "Clogged" 2 "ReplaceNow" 1 "ReplaceSoon" 0 "NoMessage"; -VAL_TABLE_ ElPwPoint_D_Rq 3 "On" 2 "Off2" 1 "Off1" 0 "Null"; -VAL_TABLE_ EngExhMdeQuiet_D2_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; -VAL_TABLE_ RearDiffThrml_D_Stat 3 "NotUsed_1" 2 "AboveThermalLimit" 1 "ThermalLimit" 0 "Normal"; -VAL_TABLE_ NoInhibit_Inhibit 1 "Inhibit" 0 "NoInhibit"; -VAL_TABLE_ PersRecallSrc_D_Actl 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "MemorySwitch" 3 "RemoteStart" 2 "KeyFob" 1 "CenterStack" 0 "Null"; -VAL_TABLE_ BattTracChiller_D_Stat 3 "NotUsed" 2 "ChillerNotAvailable" 1 "ChillerBrieflyAvailable" 0 "ChillerAvailable"; -VAL_TABLE_ SelDrvMdeChassis2_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "RoughRoadMode" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; -VAL_TABLE_ TrnFaltOpenClu_B_Stat 1 "MayOpenClutch" 0 "Normal"; -VAL_TABLE_ UrbanAreaDetct_D_Stat 3 "NotUsed_1" 2 "City" 1 "Subdivision" 0 "None"; -VAL_TABLE_ Closed_Open 1 "Open" 0 "Closed"; -VAL_TABLE_ AdbBrdrDist 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_TABLE_ TCU_ESN_D_Rq 3 "NotUsed" 2 "TCU_ESN_Request" 1 "NoRequest" 0 "Inactive"; -VAL_TABLE_ FactoryReset_Rq 1 "ResetFactoryDefaults" 0 "Inactive"; -VAL_TABLE_ TCU_Init_Actvtn_St 3 "NotUsed" 2 "InitialActivateDeny" 1 "InitialActivateAccept" 0 "Invalid"; -VAL_TABLE_ TCU_Final_Actvtn_St 3 "NotUsed" 2 "FinalActivateDeny" 1 "FinalActivateAccept" 0 "Invalid"; -VAL_TABLE_ WaitToStartLamp_D_Falt 3 "NotUsed" 2 "Wait_to_start_lamp_failed" 1 "Diagnosis_not_ready" 0 "Wait_to_start_lamp_OK"; -VAL_TABLE_ BattTracCoolLvl_D_Rq 7 "Faulty" 6 "NotUsed" 5 "ChillerCoolingBattFirst" 4 "ChillerCoolingCabinFirst" 3 "ForcedCoolingRadiator" 2 "OpportunisticCoolingRad" 1 "CoolantFlowBypassLine" 0 "Off"; -VAL_TABLE_ BattClntVlvOvrrd_D_Rq 3 "NotUsed" 2 "OverrideTbcvToChiller" 1 "OverrideTbcvToRadiator" 0 "NoOverrideToTbcvCLogic"; -VAL_TABLE_ NonMagnetic_Magnetic 1 "Magnetic" 0 "NonMagnetic"; -VAL_TABLE_ RideHghtMde_D_Stat 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "AdjUpAero" 8 "AdjUpOffRoad" 7 "AdjUpNormal" 6 "AdjDownKneel" 5 "AdjDownAero" 4 "AdjDownNormal" 3 "OffRoad" 2 "Kneel" 1 "Aero" 0 "Normal"; -VAL_TABLE_ AutoTowAllw_D_StatMnu 3 "TowHaulCommandedOn" 2 "AutoTowHaulEnabled" 1 "AutoTowHaulDisabled" 0 "NoSelection"; -VAL_TABLE_ SrpEventRight_D_Stat 3 "Faulty" 2 "Bump" 1 "Pothole" 0 "NoEvent"; -VAL_TABLE_ RearDiff_D_Stat 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "NotUsed_1" 8 "TorqueReqNotHonored" 7 "MissingSignal" 6 "ModuleFault" 5 "HydroTempSensorFault" 4 "ClutchPressSensorFault" 3 "AccumPressSensorFault" 2 "ControlValveFault" 1 "MotorFault" 0 "Normal"; -VAL_TABLE_ NotAllowed_Allowed 1 "Allowed" 0 "NotAllowed"; -VAL_TABLE_ EngTrlrCnnct_D_Stat 3 "NotUsed_1" 2 "UnverifiedTrailer" 1 "HeavyTrailer" 0 "NoTrailer"; -VAL_TABLE_ Faulty_FFFF 65535 "Faulty"; -VAL_TABLE_ NoData_Faulty_3FFE_3FFF 16383 "Faulty" 16382 "NoDataExists"; -VAL_TABLE_ Faulty_3FFF 16383 "Faulty"; -VAL_TABLE_ NotExceeded_Exceeded 1 "Exceeded" 0 "NotExceeded"; -VAL_TABLE_ EmgcyCall_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "ManualEmergencyCall" 3 "AutoEmergencyCall" 2 "NoEvent" 1 "EmergencyCallNotSupported" 0 "Null"; -VAL_TABLE_ NotAsserted_Asserted 1 "Asserted" 0 "NotAsserted"; -VAL_TABLE_ AirSprngRate_D_Stat 3 "Faulty" 2 "Firm" 1 "Medium" 0 "Soft"; -VAL_TABLE_ AirSprngRate_D_Rq 3 "NoRequest" 2 "Firm" 1 "Medium" 0 "Soft"; -VAL_TABLE_ GearLvr_D_ActlDrv 15 "Fault" 14 "Unknown_Position" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Range6" 10 "Range5" 9 "Range4" 8 "Range3_M3_L3" 7 "Range2_M2_L2" 6 "Range1_M1_L1" 5 "Low" 4 "Sport_DriveSport_Mposition" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_TABLE_ ChrgrInPwMde_D_Actl 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "EvseFault" 7 "EvseNotCompatible" 6 "IcCharging" 5 "DcCharging" 4 "AcDigital" 3 "AcBasic" 2 "DigitalCommDetected" 1 "EvsePaused" 0 "EvseNotDetected"; -VAL_TABLE_ ChrgCordLck_D_Stat 7 "Faulty" 6 "LockFail" 5 "UnlockFail" 4 "LockInProgress" 3 "UnlockInProgress" 2 "Lock" 1 "Unlock" 0 "Retain"; -VAL_TABLE_ LkaActvStats_D2_Req 7 "NotUsed" 6 "LkaIncrIntervRight" 5 "LkaSupprRight" 4 "LkaStandIntervRight" 3 "LkaSupprLeft" 2 "LkaStandIntervLeft" 1 "LkaIncrIntervLeft" 0 "LkaNoInterv"; -VAL_TABLE_ OffOnNoDataFaulty 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; -VAL_TABLE_ NoMessage_Msg1_3 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ TrnRng_D_RqGsm 15 "Fault" 14 "UnknownPosition" 13 "Undefined_2" 12 "Undefined_1" 11 "_6" 10 "_5" 9 "_4" 8 "_3" 7 "_2" 6 "_1" 5 "Low" 4 "Sport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_TABLE_ PrkBrkActv_D_RqGsmGear 3 "NotUsed" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "Null"; -VAL_TABLE_ TrnPrkSys_D_Actl 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "FrequencyError" 8 "OutOfRangeHigh" 7 "OutOfRangeLow" 6 "Override" 5 "OutOfPark" 4 "TransitionCloseToOutOfPark" 3 "AtNoSpring" 2 "TransitionCloseToPark" 1 "Park" 0 "NotKnown"; -VAL_TABLE_ OKLowUnknownInvalid 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; -VAL_TABLE_ Dsp_RotAddrBtnEv_St 15 "NotUsed_1" 14 "Pos_7Steps" 13 "Pos_6Steps" 12 "Pos_5Steps" 11 "Pos_4Steps" 10 "Pos_3Steps" 9 "Pos_2Steps" 8 "Pos_1Step" 7 "NotPressed" 6 "Neg_1Steps" 5 "Neg_2Steps" 4 "Neg_3Steps" 3 "Neg_4Steps" 2 "Neg_5Steps" 1 "Neg_6Steps" 0 "Neg_7Steps"; -VAL_TABLE_ PrkAidDrvDir_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "BackwardNegative" 4 "ForwardNegative" 3 "BackwardPositive" 2 "ForwardPositive" 1 "NoMotion" 0 "DirectionNotKnown"; -VAL_TABLE_ EngExhMdeQuiet_D2_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; -VAL_TABLE_ GasPrtc_D_RqDsply 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "GpfOverLimit" 1 "GpfAtLimit" 0 "NormalOperation"; -VAL_TABLE_ TjaWarn_D_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "HardTakeOverLevel2" 2 "HardTakeOverLevel1" 1 "TrafficJamAssistCancel" 0 "NoWarning"; -VAL_TABLE_ Faulty_7FF 2047 "Faulty"; -VAL_TABLE_ Tja_D_Stat 7 "NotUsed_1" 6 "ActiveWarningRight" 5 "ActiveWarningLeft" 4 "ActiveInterventionRight" 3 "ActiveInterventionLeft" 2 "Active" 1 "Standby" 0 "Off"; -VAL_TABLE_ TjaMsgTxt_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "TurnOnAdaptCruiseControl" 2 "TrafficJamAssistSelected" 1 "TrafficJamAssistUnavailabl" 0 "NoMessage"; -VAL_TABLE_ PwSrcULowMde_D_Actl 3 "NotUsed_1" 2 "ReverseBoost" 1 "ForwardBuck" 0 "Standby"; -VAL_TABLE_ ApaTrgtDist_D_Stat 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 0 "Off"; -VAL_TABLE_ Memory_2_SwPsngr_Stat 1 "Pressed" 0 "Null"; -VAL_TABLE_ Pers3Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; -VAL_TABLE_ PwSrcULoMde_D_Rq 3 "NotUsed_1" 2 "ReverseBoost" 1 "ForwardBuck" 0 "Standby"; -VAL_TABLE_ AccMsgTxt_D2_Rq 15 "NotUsed_1" 14 "NCC_Enabled_Warning" 13 "IACC_TJA_Selected" 12 "ACC_TJA_Selected" 11 "IACC_Selected" 10 "Press_Brake_To_Hold" 9 "Only_Following_In_Low_Spd" 8 "TJA_Unavailable" 7 "Shift_Down" 6 "IACC_Unavailable" 5 "ACC_Selected" 4 "ACC_Overridden" 3 "Brake_Capacity_Warning" 2 "ACC_Cancelled" 1 "ACC_Unavailable" 0 "No_Text"; -VAL_TABLE_ WakeAlarm0_B_Typ 1 "CanAndEcuDriveCircuit" 0 "CanOnly"; -VAL_TABLE_ WakeAlarm0_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; -VAL_TABLE_ EmPrflNo_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; -VAL_TABLE_ EmPrflKeyAssoc_D_Rq 7 "NotUsed_3" 6 "DisassociatePhone" 5 "EnterPhoneAssociation" 4 "OverwriteKey" 3 "DisassociateKey" 2 "ExitKeyAssociation" 1 "EnterKeyAssociation" 0 "Null"; -VAL_TABLE_ Em_D_Stat 3 "NotSupported" 2 "ProfilesOff" 1 "ProfilesOn" 0 "Null"; -VAL_TABLE_ EmPrflButtnAssoc_D_Rq 3 "NotUsed" 2 "ExitButtonAssociation" 1 "EnterButtonAssociation" 0 "Null"; -VAL_TABLE_ EmPrflNo_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; -VAL_TABLE_ EmPrflKeyAssoc_D_Stat 7 "WrongDevice" 6 "KeyAssociateFailed" 5 "KeyAssociateSuccess" 4 "KeyAlreadyInUse" 3 "KeyDisassociated" 2 "KeyAssociationExited" 1 "KeyAssociationEntered" 0 "Null"; -VAL_TABLE_ EsaEnbl_D2_Rq 3 "NotConfigured" 2 "Enabled" 1 "Pending" 0 "Disabled"; -VAL_TABLE_ PersNo_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "NotDetermined" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_TABLE_ WiprFront_D_Stat2 15 "NO_DATA_EXISTS" 14 "STALLED" 13 "NotUsed" 12 "AUTO_ADJUST" 11 "COURTESYWIPE" 10 "AUTO_HIGH" 9 "AUTO_LOW" 8 "WASH" 7 "MIST_FLICK" 6 "MAN_HIGH" 5 "MAN_LOW" 4 "MAN_INT_ON" 3 "MAN_INT_OFF" 2 "OFF_MOVING" 1 "AUTO_OFF" 0 "OFF"; -VAL_TABLE_ TurnLghtSwtch_D_Stat2 3 "NotUsed" 2 "Right" 1 "Left" 0 "Off"; -VAL_TABLE_ CcButtnOnOffCnclPress3 1 "Pressed" 0 "Not pressed"; -VAL_TABLE_ SelDrvMdePos01_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_TABLE_ SelDrvMdePos01_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_TABLE_ ImmedFastMediumSlow 3 "Slow" 2 "Medium" 1 "Fast" 0 "Immediately"; -VAL_TABLE_ AdbHiBeamKeepOff_D_Rq 3 "KeepBothOff" 2 "KeepLeftOff" 1 "KeepRightOff" 0 "BothFreeRunning"; -VAL_TABLE_ AdbLampOnOff_D_Rq 3 "BothOn" 2 "LeftOnRightOff" 1 "RightOnLeftOff" 0 "BothOff"; -VAL_TABLE_ AdbMde1_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; -VAL_TABLE_ Closed_Open_Active_Denied 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; -VAL_TABLE_ OffLowMedMax 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; -VAL_TABLE_ IaccLamp_D_Rq 3 "NotUsed_2" 2 "NotUsed_1" 1 "DisplayIaccIcon" 0 "DoNotDisplayIaccIcon"; -VAL_TABLE_ Low_High_Confidence 1 "High_Confidence" 0 "Low_Confidence"; -VAL_TABLE_ Fault_Occupied_Empty_Un 3 "Unknown" 2 "Empty" 1 "Occupied" 0 "Fault"; -VAL_TABLE_ Off_On_Flash_Triggered 3 "Triggered" 2 "Flash" 1 "On" 0 "Off"; -VAL_TABLE_ IaccVLim_D_Rq 252 "NotUsed_2" 250 "LimitSpeed_250" 240 "LimitSpeed_240" 230 "LimitSpeed_230" 220 "LimitSpeed_220" 210 "LimitSpeed_210" 200 "LimitSpeed_200" 190 "LimitSpeed_190" 150 "LimitSpeed_150" 140 "LimitSpeed_140" 130 "LimitSpeed_130" 120 "LimitSpeed_120" 110 "LimitSpeed_110" 100 "LimitSpeed_100" 90 "LimitSpeed_90" 80 "LimitSpeed_80" 70 "LimitSpeed_70" 60 "LimitSpeed_60" 50 "LimitSpeed_50" 40 "LimitSpeed_40" 30 "LimitSpeed_30" 20 "LimtSpeed_20" 251 "NotUsed_1" 255 "Faulty" 254 "NoDataExists" 253 "NotUsed_3" 180 "LimitSpeed_180" 179 "LimitSpeed_179" 178 "LimitSpeed_178" 177 "LimitSpeed_177" 176 "LimitSpeed_176" 175 "LimitSpeed_175" 174 "LimitSpeed_174" 173 "LimitSpeed_173" 172 "LimitSpeed_172" 171 "LimitSpeed_171" 170 "LimitSpeed_170" 169 "LimitSpeed_169" 168 "LimitSpeed_168" 167 "LimitSpeed_167" 166 "LimitSpeed_166" 165 "LimitSpeed_165" 164 "LimitSpeed_164" 163 "LimitSpeed_163" 162 "LimitSpeed_162" 161 "LimitSpeed_161" 160 "LimitSpeed_160" 15 "LimitSpeed_15" 14 "LimitSpeed_14" 13 "LimitSpeed_13" 12 "LimitSpeed_12" 11 "LimitSpeed_11" 10 "LimitSpeed_10" 9 "LimitSpeed_9" 8 "LimitSpeed_8" 7 "LimitSpeed_7" 6 "LimitSpeed_6" 5 "LimitSpeed_5" 4 "LimitSpeed_4" 3 "LimitSpeed_3" 2 "LimitSpeed_2" 1 "LimitSpeed_1" 0 "LimitSpeed_0"; -VAL_TABLE_ IaccVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; -VAL_TABLE_ SelDrvMdeAwd_D_Rq 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; -VAL_TABLE_ SelDrvMdeAwd_D_Stat 0 "NotAvailable" 1 "Available" 2 "TemporarilyNotAvailable" 3 "Faulty"; -VAL_TABLE_ SelDrvMdeAwd2_D_Stat 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; -VAL_TABLE_ RearDiffLckMsg2_D_Rq 15 "NotUsed_3" 14 "NotUsed_2" 13 "NotUsed_1" 12 "ElsdReduced" 11 "LockingFeatureNotAvailable" 10 "EsldOff" 9 "ElsdRestored" 8 "ElsdOverheated" 7 "Locker_Disabled" 6 "Locker_Enabled" 5 "LockerSpeed5" 4 "LockerSpeed4" 3 "LockerSpeed3" 2 "LockerSpeed2" 1 "LockerSpeed1" 0 "NormalNoMessage "; -VAL_TABLE_ Counts_ZeroToSeven 4 "FourCounts" 3 "ThreeCounts" 2 "TwoCounts" 1 "OneCount" 0 "ZeroCounts" 7 "SevenOrMoreCounts" 6 "SixCounts" 5 "FiveCounts"; -VAL_TABLE_ HeadLghtHiPrmsn_D_Stat 3 "CancelAndSuppress" 2 "Cancel" 1 "Hold" 0 "AllowChange"; -VAL_TABLE_ SelDrvMdeSwtch 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; -VAL_TABLE_ NotAvail_Temp_Faulty 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; -VAL_TABLE_ AwdDrvMde 7 "Faulty" 6 "NotAvailable" 5 "RockCrawl" 4 "Baja" 3 "MudAndSand" 2 "Weather" 1 "Sport" 0 "Normal"; -VAL_TABLE_ SelDrvMdePt_D_Rq 31 "Faulty" 30 "NotUsed15" 29 "NotUsed14" 28 "NotUsed13" 27 "NotUsed12" 26 "NotUsed11" 25 "NotUsed10" 24 "NotUsed9" 23 "NotUsed8" 22 "NotUsed7" 21 "NotUsed6" 20 "NotUsed5" 19 "NotUsed4" 18 "EvLaterChargerMode" 17 "EvNowMode" 16 "DragMode" 15 "HighSpeedDesertMode_Baja" 14 "SportAdaptiveMode" 13 "NotAvailable_13" 12 "NotAvailable_12" 11 "NotAvailable_11" 10 "NotAvailable_10" 9 "RockCrawlMode" 8 "MudRutsMode" 7 "SandMode" 6 "EconomyMode" 5 "GrassGravelSnow" 4 "NotAvailable_04" 3 "TowHaulMode" 2 "NotAvailable_02" 1 "SportMode" 0 "NormalMode"; -VAL_TABLE_ SelDrvMde_D_Stat 3 "NotUsed" 2 "DriveModeChangeRequest" 1 "DriveModeChangeSelection" 0 "NoDriveModeChangeRequest"; -VAL_TABLE_ NoMessage_Msg1_15 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ SelDrvMdeChassis_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "NotUsed1" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; -VAL_TABLE_ NotAvailable_Available 1 "Available" 0 "NotAvailable"; -VAL_TABLE_ PwStep_D_Stat 3 "PositionNotKnown" 2 "StepsNotStowed" 1 "StepsStowed" 0 "Off"; -VAL_TABLE_ PwStep_D_DrvInhbt 3 "NotUsed" 2 "DriveInhibitMalfunction" 1 "DriveInhibited" 0 "DriveNotInhibited"; -VAL_TABLE_ NoMessage_Msg1_31 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ VehTrvlDir_D_Stat 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "Reverse" 2 "LikelyReverse" 1 "Forward" 0 "LikelyForward"; -VAL_TABLE_ TrnRng_D_RqFap 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Backwards" 3 "Forwards" 2 "NoMotion" 1 "Immobilize" 0 "NoRequest"; -VAL_TABLE_ SelDrvMdeSusp_D_Stat 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; -VAL_TABLE_ OffOnNoReqFaulty 3 "Faulty" 2 "NoRequest" 1 "On" 0 "Off"; -VAL_TABLE_ LatCtl_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "InterventionRight" 2 "InterventionLeft" 1 "ContinuousPathFollowing" 0 "NoLateralControl"; -VAL_TABLE_ LatCtlSte_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Denied" 3 "RampOut" 2 "ContLatControlInProgress" 1 "Available" 0 "Unavailable"; -VAL_TABLE_ SlowMedFastImmed 3 "Immediately" 2 "Fast" 1 "Medium" 0 "Slow"; -VAL_TABLE_ ComfortablePreciseNotUsed 3 "NotUsed2" 2 "NotUsed1" 1 "Precise" 0 "Comfortable"; -VAL_TABLE_ LatCtlLim_D_Stat 3 "LimitWithDriverActive" 2 "LimitReached" 1 "LimitClose" 0 "LimitNotReached"; -VAL_TABLE_ FuelLvlWarn_D_ActlEng 7 "DteLevel5Lowest" 6 "DteLevel4" 5 "DteLevel3" 4 "DteLevel2NonMyKey" 3 "DteLevel1MyKey" 2 "VeryLow" 1 "Low" 0 "OK"; -VAL_TABLE_ AwdMde_D_RqDrv 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; -VAL_TABLE_ ApaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; -VAL_TABLE_ AdptDrvMdePt_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Powertrain2Sport" 2 "Powertrain2Normal" 1 "Powertrain2Comfort" 0 "AdaptiveNotActive"; -VAL_TABLE_ AdptDrvMdeChassis_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Chassis2Sport" 2 "Chassis2Normal" 1 "Chassis2Comfort" 0 "AdaptiveNotActive"; -VAL_TABLE_ PwStepMsgTxt_D_Rq 1 "DriveInhibited" 0 "NoMessage" 3 "NotUsed" 2 "Malfunction"; -VAL_TABLE_ OffLowMedHigh 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_TABLE_ NotDeterminedLowMedHigh 3 "High" 2 "Medium" 1 "Low" 0 "NotDetermined"; -VAL_TABLE_ CmbbObjClass_D_Stat 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "Unclassified_Vehicle" 5 "Bicycle" 4 "Pedestrian" 3 "Truck" 2 "Motorcycle" 1 "Vehicle" 0 "Undetermined"; -VAL_TABLE_ HeadLghtHiCtrl_D_RqAhb 7 "NotUsed2" 6 "NotUsed1" 5 "Auto_HiBeam" 4 "Auto_LoBeam" 3 "Flash" 2 "Man_HiBeam" 1 "Man_LoBeam" 0 "Null"; -VAL_TABLE_ AhbHiBeam_D_Rq 3 "NotUsed" 2 "HighBeamRecommended" 1 "LowBeamRecommended" 0 "DeactivatedUnavailable"; -VAL_TABLE_ AhbStatGfhbFdbk_D_Actl 3 "GfhbHighBeamFullyOn" 2 "GfhbHighBeamPartlyOn" 1 "GfhbHighBeamOff" 0 "GfhbUnavailable"; -VAL_TABLE_ AhbcRampingV_D_Rq 3 "Slow" 2 "Medium" 1 "Fast" 0 "Immediately"; -VAL_TABLE_ ApaGearShif_D_RqDrv 7 "NotUSed2" 6 "NotUsed1" 5 "ShiftToP" 4 "ShiftToN" 3 "ShiftToD" 2 "ShiftToR" 1 "NoRequest" 0 "Null"; -VAL_TABLE_ ApaLongCtl_D_RqDrv 7 "NotUsed3" 6 "NotUsed2" 5 "ReleaseBrake" 4 "DriveBackward" 3 "DriveForward" 2 "Stop" 1 "NoRequest" 0 "Null"; -VAL_TABLE_ ApaActvSide2_D_Stat 3 "NoSide" 2 "Right" 1 "Left" 0 "Null"; -VAL_TABLE_ ApaScan_D_Stat 3 "ParkSlotReady" 2 "ParkSlotFound" 1 "NoParkSlot" 0 "Null"; -VAL_TABLE_ ApaSelSapp_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; -VAL_TABLE_ ApaSys_D_Stat 7 "Faulty" 6 "Finished" 5 "NotAccessible" 4 "ApaCancelled" 3 "Overspeed" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ ApaSteScanMde_D_Stat 3 "Steering" 2 "Scanning" 1 "NotScanning" 0 "Null"; -VAL_TABLE_ ApaAcsy_D_RqDrv 7 "CloseDoor" 6 "SelectSideRight" 5 "SelectSideLeft" 4 "CheckForObject" 3 "PressApaButton" 2 "SelectSide" 1 "NoRequest" 0 "Null"; -VAL_TABLE_ ApaSteWhl_D_RqDrv 3 "TakeControl" 2 "RemoveHands" 1 "NoRequest" 0 "Null"; -VAL_TABLE_ WiprFrontSwtch_D_Stat 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "PositionNotDetermined" 8 "High" 7 "Low" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Off"; -VAL_TABLE_ Off_On_Unknown_Invalid 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; -VAL_TABLE_ Unknown_7FFE_Invalid_7FFF 32767 "Invalid" 32766 "Unknown"; -VAL_TABLE_ OffOnNotUsedFaulty 3 "Faulty" 2 "NotUsed" 1 "On" 0 "Off"; -VAL_TABLE_ BrkBstrVac_D_Stat 3 "NotUsed" 2 "BoosterVacEstimator" 1 "BoosterVacSensor" 0 "NoBoosterVacuumMonitor"; -VAL_TABLE_ AwdMde_D_RqArb 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; -VAL_TABLE_ CtaAlrt2_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "AlertZone4" 3 "AlertZone3" 2 "AlertZone2" 1 "AlertZone1" 0 "Off"; -VAL_TABLE_ BttRightLeft_D_Stat 7 "NotUsed" 6 "Disabled" 5 "Off" 4 "OffTemp" 3 "NotConnected" 2 "Pending" 1 "Connected" 0 "NotDetermined"; -VAL_TABLE_ Null_NoRequest_Request 3 "NotUsed" 2 "Request" 1 "NoRequest" 0 "Null"; -VAL_TABLE_ PoliceIdlMde_D_Stat 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "PepsActive" 8 "Decommissioned" 7 "ActiveFault" 6 "ArmFault" 5 "PrearmedFault" 4 "OffFault" 3 "Active" 2 "Arm" 1 "Prearmed" 0 "Off"; -VAL_TABLE_ TripComputerMetricImperial 0 "TripComputer_metric" 1 "TripComputer_imperial"; -VAL_TABLE_ GrdAsstAllw_D_DsplyPt 3 "NotUsed" 2 "On" 1 "Off" 0 "NoModeSelected"; -VAL_TABLE_ PrkBrkMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "No_Message"; -VAL_TABLE_ AutoHoldMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ AutoHoldMde_D_Ind 3 "Indication_3" 2 "Indication_2" 1 "Indication_1" 0 "Off"; -VAL_TABLE_ AutoRgenTxt_B_RqDsply 1 "AutExhFilterCleanOFF" 0 "AutExhFilterCleanON"; -VAL_TABLE_ TrnMsgTxt2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "TransTooHot_LoudChime" 3 "PressBrake_LoudChime" 2 "PressBrake_SoftChime" 1 "PressBrake_NoChime" 0 "NoText_NoChime"; -VAL_TABLE_ TrnGearMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; -VAL_TABLE_ ChargeProfIDPref_Rq 3 "NotUsed" 2 "Value" 1 "ChargeNow" 0 "Inactive"; -VAL_TABLE_ EngExhMdeQuiet_D_Stat 3 "Faulty" 2 "QuietExhaust" 1 "LoudExhaust" 0 "Null"; -VAL_TABLE_ ConsAvgTrip_No_Dsply 4095 "Faulty" 4094 "No_Data_Exists"; -VAL_TABLE_ ElTrip_L_Dsply 65535 "Fault" 65534 "No_Data_Exists"; -VAL_TABLE_ ElLongTerm_L_Dsply 16777215 "Fault" 16777214 "No_Data_Exists"; -VAL_TABLE_ GearSelLck_D_Rq 3 "PreventionBlocker" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_TABLE_ BrkPadMsgTxt_D_Rq 3 "Faulty" 2 "PadsOk" 1 "ReplacePads" 0 "Null"; -VAL_TABLE_ BrkAutoHold_D_Stat 7 "Faulty" 6 "NotUsed" 5 "Releasing" 4 "HeldSecondary" 3 "HeldSecure" 2 "Held" 1 "Inactive" 0 "Off"; -VAL_TABLE_ SuspDrvMde_D_Rq 7 "Faulty" 6 "NotUsed2" 5 "NotUsed1" 4 "Drag" 3 "Track" 2 "Snow_Wet" 1 "Sport" 0 "Normal"; -VAL_TABLE_ NotPressed_PressedNotUsed 3 "NotUsed2" 2 "NotUsed1" 1 "Pressed" 0 "Not_Pressed"; -VAL_TABLE_ WhlRearDual_D_Stat 3 "NotUsed" 2 "Dual" 1 "Single" 0 "NoDataExists"; -VAL_TABLE_ TracKeyMde_D_Stat 3 "NotUsed" 2 "NotActive" 1 "Active" 0 "ModeNotDetermined"; -VAL_TABLE_ HudMde_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Manual" 3 "Drag" 2 "RoadCourse" 1 "Tach" 0 "Off"; -VAL_TABLE_ TrnManShifGear_D_IndDrv 7 "Indicate_Reverse_Gear" 6 "Indicate_Gear6" 5 "Indicate_Gear5" 4 "Indicate_Gear4" 3 "Indicate_Gear3" 2 "Indicate_Gear2" 1 "Indicate_Gear1" 0 "No_Indication"; -VAL_TABLE_ TrnStrtStop_D_Stat 3 "NotUsed_2" 2 "NotUsed_1" 1 "LowTransmissionTemperature" 0 "NoDriverIndicationRequired"; -VAL_TABLE_ LsmcBrkDecel_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Denied" 3 "FaultDegraded" 2 "FaultExt" 1 "On" 0 "Off"; -VAL_TABLE_ StePinOffst_D_Stat 3 "FineOffset" 2 "CoarseOffset" 1 "StoredOffset" 0 "OffsetNotCalculated"; -VAL_TABLE_ NoMessage_Override_Faulty 3 "NotUsed" 2 "Faulty" 1 "Override" 0 "NoMessage"; -VAL_TABLE_ TrnIpcDsplyRng2_D_Actl 15 "No_Range_Selected" 14 "Range_14" 13 "Range_13" 12 "Range_12" 11 "Range_11" 10 "Range_10" 9 "Range_9" 8 "Range_8" 7 "Range_7" 6 "Range_6" 5 "Range_5" 4 "Range_4" 3 "Range_3" 2 "Range_2" 1 "Range_1" 0 "NotUsed"; -VAL_TABLE_ OffOn_RampUpDown 3 "Ramp_Down" 2 "Ramp_Up" 1 "On" 0 "Off"; -VAL_TABLE_ DieslMsgTxt_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "ReducedEnginePower" 0 "NoMessage"; -VAL_TABLE_ NoMessage_Msg1_7 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ TrnAltShifMde_D_Rdy 3 "Faulty" 2 "NotUsed" 1 "UnavailDueToDynCond" 0 "ModeChangeAvailable"; -VAL_TABLE_ LnchCtl 3 "NotUsed2" 2 "NotUsed1" 1 "LC_On" 0 "LC_Off"; -VAL_TABLE_ BrkLineLck_D_Rq 3 "Off" 2 "Engage" 1 "Initiate" 0 "NoRequest"; -VAL_TABLE_ BrkLineLck_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "NotAvailable" 3 "Off" 2 "Engaged" 1 "Initiated" 0 "Available"; -VAL_TABLE_ LnchCtlSys_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "On_LC_Unavailable_TC_On" 3 "On_LC_Unavailable" 2 "On_LC_Available" 1 "On_LC_Active" 0 "LC_OFF"; -VAL_TABLE_ ActvFrontSteLck_D_Stat 3 "Test_passed" 2 "Test_failed" 1 "Test_cannot_run" 0 "Test_incomplete"; -VAL_TABLE_ Rght_Lefthand_Traffic 1 "Left_Hand_Traffic" 0 "Right_Hand_Traffic"; -VAL_TABLE_ NotPressed_Pressed_Faulty 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; -VAL_TABLE_ TrlrTrgtAcquire_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "ActivateRVCforTBA" 4 "CancelAcquisition" 3 "RetryAcquisition" 2 "AcquisitionSuccessful" 1 "StartAcquisition" 0 "Inactive"; -VAL_TABLE_ TrlrTrgtAcquire_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "RVCforTBA_Activated" 3 "Processing" 2 "TargetNotAcquired" 1 "TargetAcquired" 0 "Null"; -VAL_TABLE_ TrlrAidSetup_D_Rq 3 "ConfirmSetup" 2 "EndSetup" 1 "BeginSetup" 0 "Inactive"; -VAL_TABLE_ TrlBrkInitOut 3 "Heavy" 2 "Medium" 1 "Light" 0 "Null"; -VAL_TABLE_ IsaOffst_D_Stat 15 "Faulty" 14 "Null" 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero"; -VAL_TABLE_ IsaVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; -VAL_TABLE_ ApaChime_D_Rq 7 "NotUsed2" 6 "NotUsed1" 5 "Warning_Chime" 4 "Finish_Chime" 3 "Stop_Now_Chime" 2 "Spot_Ready_Chime" 1 "Spot_Found_Chime" 0 "No_Chime"; -VAL_TABLE_ SlMde_D_RqDsply 3 "NotUsed" 2 "ManualSpeed_LimiterSymbol" 1 "AutoSpeed_LimiterSymbol" 0 "NoSpeed_LimiterSymbol"; -VAL_TABLE_ SlMde_D_Rq 3 "IsaNotConfigured" 2 "Manual_Mode" 1 "Auto_Mode" 0 "Null"; -VAL_TABLE_ NotSupported_Supported 1 "Supported" 0 "NotSupported"; -VAL_TABLE_ OffOn_NotUsed_NoData 3 "No_Data_Present" 2 "NotUsed" 1 "On" 0 "Off"; -VAL_TABLE_ Faulty_FF 255 "Faulty"; -VAL_TABLE_ BrkDrvMde_D_Rq 7 "Faulty" 6 "RockCrawl" 5 "Baja" 4 "DragOrMudAndSand" 3 "Track" 2 "Snow_Wet" 1 "Sport" 0 "Normal"; -VAL_TABLE_ TrnIpcDsplyRng_D_Stat 3 "NotUsed" 2 "Flash" 1 "On" 0 "Blank_No_Display"; -VAL_TABLE_ NoYesNoDataFaulty 3 "Faulty" 2 "NoDataExists" 1 "Yes" 0 "No"; -VAL_TABLE_ SidePrkSnsR4_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_TABLE_ TsrVlPrmntMsgTxt_D_Rq 3 "NotUsed" 2 "ShowPermanentlyWithSupp" 1 "ShowPermanentlyWithoutSupp" 0 "DoNotShowSignPermanent"; -VAL_TABLE_ TsrVl1RstrcMsgTxt2_D_Rq 7 "NotUsed" 6 "Time" 5 "Trailer" 4 "Snow" 3 "RainWet" 2 "NoRecognizableRestrictn" 1 "NoSpeedLimitRestrictn" 0 "Null"; -VAL_TABLE_ PtDrvMde_D_Rq 15 "Faulty" 14 "NotUsed11" 13 "NotUsed10" 12 "NotUsed9" 11 "NotUsed8" 10 "NotUsed7" 9 "NotUsed6" 8 "NotUsed5" 7 "Drag" 6 "Rock" 5 "Baja" 4 "Sand" 3 "TowHaulGradeAssist" 2 "SnowWet" 1 "Sport" 0 "Normal"; -VAL_TABLE_ SteEffort_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "SpecialMode_2" 3 "SpecialMode_1" 2 "Comfort" 1 "Sport" 0 "Normal"; -VAL_TABLE_ TsrOvtkMsgTxt2_D_Rq 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "LimForTrucksCancelled" 9 "LimForTrucksWoQlfdRstrc" 8 "LimForTrucksWithoutRstrc" 7 "LimAllCancelled" 6 "LimAllWithRstrcTime" 5 "LimAllWithRstrcTrailer" 4 "LimAllWithRstrcSnow" 3 "LimAllWithRstrcRain" 2 "LimAllWithoutQlfdRstrc" 1 "LimAllWithoutRestriction" 0 "OvertakingAllowed"; -VAL_TABLE_ TrlrAnOffstDir 3 "NotUSed" 2 "Right" 1 "Left_or_Center" 0 "Null"; -VAL_TABLE_ Null_Off_On 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ TrlrBrkMde_D_Rq 1 "ElectricOverHydraulic" 0 "Electric"; -VAL_TABLE_ TrlrAidSetup_D_Stat 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "EnterParameters" 2 "EndSetup" 1 "BeginSetup" 0 "Null"; -VAL_TABLE_ TrlrAidMsgTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ Invalid_7F 127 "Invalid"; -VAL_TABLE_ Faulty_1FFF 8191 "Faulty"; -VAL_TABLE_ VehStab_D_Stat 15 "Faulty" 14 "No_Data_Exists" 13 "NotUsed6" 12 "NotUsed5" 11 "NotUsed4" 10 "NotUsed3" 9 "NotUsed2" 8 "NotUsed1" 7 "High_SSRA_no_OS" 6 "Straight" 5 "Post_Oversteer" 4 "Post_Transition" 3 "Countersteer" 2 "Understeer" 1 "Oversteer" 0 "Linear"; -VAL_TABLE_ NoData_Faulty_1FF_1FE 511 "Faulty" 510 "NoDataExists"; -VAL_TABLE_ TrlrAidEnbl_D_Rq 3 "NotAvailable" 2 "DeactivateTba" 1 "ActivateTba" 0 "Inactive"; -VAL_TABLE_ FohEng_D_Rq 3 "AutoEnable_ParkEnable" 2 "AutoDisable_ParkEnable" 1 "AutoEnable_ParkDisable" 0 "Disable_Stop"; -VAL_TABLE_ Null_Hi_NotUsed_Low 3 "Low" 2 "Not_Used" 1 "High" 0 "Null"; -VAL_TABLE_ Current_Color 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Null" 7 "Color7" 6 "Color6" 5 "Color5" 4 "Color4" 3 "Color3" 2 "Color2" 1 "Color1" 0 "Off"; -VAL_TABLE_ Blended_Color 15 "NotUsed10" 14 "NotUsed9" 13 "NotUsed8" 12 "NotUsed7" 11 "NotUsed6" 10 "NotUsed5" 9 "NotUsed4" 8 "NotUsed3" 7 "NotUsed2" 6 "NotUsed1" 5 "_5" 4 "_4" 3 "_3" 2 "_2" 1 "_1" 0 "Null"; -VAL_TABLE_ OffOn_Null_NotUsed 3 "NotUsed" 2 "Null" 1 "On" 0 "Off"; -VAL_TABLE_ DieslPrtc2_D_RqDsply 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_Overloaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_Overlimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_Overloaded" 0 "DPF_Normal_Operation"; -VAL_TABLE_ Null_Pers1_4_Vehicle 7 "Unused_2" 6 "Unused_1" 5 "Vehicle" 4 "PERS_4" 3 "PERS_3" 2 "PERS_2" 1 "PERS_1" 0 "Null"; -VAL_TABLE_ PrkLckCtlEnbl_D_RqIpc 3 "Rq_Towing" 2 "Rq_Enable" 1 "Rq_Disable" 0 "Null"; -VAL_TABLE_ PrkLckCtlUnlck_D_Stat 3 "Trans_And_Steer_Unlckd" 2 "Steering_Unlckd" 1 "Transmission_Unlckd" 0 "Null"; -VAL_TABLE_ VehKeyActv_D_Stat 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Key8Active" 7 "Key7Active" 6 "Key6Active" 5 "Key5Active" 4 "Key4Active" 3 "Key3Active" 2 "Key2Active" 1 "Key1Active" 0 "NoKeyActive"; -VAL_TABLE_ VehLckInd_D_Rq 3 "NotUsed" 2 "On_Day" 1 "On_Night" 0 "Off"; -VAL_TABLE_ PrkBrkDynmc_D_Allw 3 "NotUsed" 2 "EPB_ECD_NotPossible" 1 "EPB_ECD_Possible" 0 "Used_at_Start_Up"; -VAL_TABLE_ TowBarMsgTxt_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "TowBar_Ext_No_Trlr" 3 "Error_Dealer_Fix" 2 "Start_Engine_Swivel" 1 "Check_Tow_Bar" 0 "Null"; -VAL_TABLE_ PrkBrk_D_Stat 7 "Gen_Faults_or_Maint_Mode" 6 "ECD_by_Brake_ECU_Active" 5 "EPB_Limphome_Active" 4 "Rear_Caliper_Open" 3 "RWU_by_EPB_Active" 2 "Rear_Caliper_Transition" 1 "Rear_Caliper_Closed" 0 "Not_Supported"; -VAL_TABLE_ NoData_Faulty_3E_3F 63 "Faulty" 62 "NoDataExists"; -VAL_TABLE_ Unknown_Invalid_1FE_1FF 511 "Invalid" 510 "Unknown"; -VAL_TABLE_ Invalid_0x0 0 "Invalid"; -VAL_TABLE_ Unknown_Invalid_3E_3F 63 "Invalid" 62 "Unknown"; -VAL_TABLE_ Faulty_1FF 511 "Faulty"; -VAL_TABLE_ NoData_Faulty_1FFF_1FFE 8191 "Faulty" 8190 "NoDataExists"; -VAL_TABLE_ Null_Off_On_Faulty 3 "Faulty" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ EngOilSrvcMsgTxt_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "ResetComplete" 3 "ResetInProgress" 2 "ChangeOilNow" 1 "ChangeOilSoon" 0 "NoText"; -VAL_TABLE_ AirSusp_D_RqDrv 3 "NotUsed" 2 "On" 1 "Off" 0 "NoModeSelected"; -VAL_TABLE_ AwdSys_D_Stat 3 "Faulty" 2 "NotUsed" 1 "_4x4_L_H_Active" 0 "_4x4_L_H_Inactive"; -VAL_TABLE_ EmotiveType_D_Dsply 3 "EmotiveDisplay_3" 2 "EmotiveDisplay_2" 1 "EmotiveDisplay_1" 0 "Null"; -VAL_TABLE_ AutoRgen_D_Rq 3 "NotUsed" 2 "AutExhFilterCleanOFF" 1 "AutExhFilterCleanON" 0 "No_Mode_Selected"; -VAL_TABLE_ TrnSrvcRqd_B_Rq 1 "On" 0 "Off"; -VAL_TABLE_ PlgOvrrdStrt_D_Cmd 3 "NotUsed" 2 "Override_Plug_Status" 1 "Dont_Override_Plug_Status" 0 "Null_State"; -VAL_TABLE_ immoSecureIdleMode 3 "NotUsed2" 2 "NotUsed1" 1 "Active" 0 "Inactive"; -VAL_TABLE_ SteWhlOffstRq_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Allow_External_Angle_Req" 0 "Deny_External_Angle_Req"; -VAL_TABLE_ SteMdule_D_Stat 7 "NotUsed" 6 "EPAS_Failure3" 5 "EPAS_Failure2" 4 "System_Failure" 3 "EPAS_Shutdown" 2 "Normal_Op_Full_Assist" 1 "Normal_Op_Limited_Assist" 0 "EPAS_Initialization"; -VAL_TABLE_ Faulty_FFF 4095 "Faulty"; -VAL_TABLE_ Faulty_3FF 1023 "Faulty"; -VAL_TABLE_ NoData_Faulty_FE_FF 255 "Faulty" 254 "NoDataExists"; -VAL_TABLE_ ChkPlgtoStrt_D_Dsply 3 "NotUsed" 2 "Is_VehicleUnplugged_Prompt" 1 "Check_Plug_to_Start" 0 "No_Message_Display"; -VAL_TABLE_ PwrFlowTxt_D_Dsply 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "Disply_Rgen_Chrg_Txt" 10 "Disp_Fast_Charge_Txt" 9 "Disp_Fast_Charge_Cmplt_Txt" 8 "Disp_Charge_Cmplt_Txt" 7 "Disp_Remote_Start_Txt" 6 "Disp_Eng_Drv_Txt" 5 "Disp_Elec_Drv_Txt" 4 "Disp_Idle_with_Chrg_Txt" 3 "Disp_Idle_Txt" 2 "Disp_Charg_HV_Batt_Txt" 1 "Disp_Hyb_Drive_Txt" 0 "No_Text"; -VAL_TABLE_ EngOnMsg_D_Dsply 14 "_0xE_to_1F_NotUsed" 12 "Battery_Temperature" 11 "Hill_Decent_Control" 10 "Fuel_Maintenance" 9 "Oil_Maintenance" 8 "Normal_Operation" 7 "Low_Gear" 6 "Batt_Charging" 5 "Engine_Cold" 4 "Neutral_Gear" 3 "Heater_Setting" 2 "High_Speed" 1 "Acceleration" 0 "No_Display" 13 "Drive_Mode_Selection"; -VAL_TABLE_ PtDataKeyId_D_Stat 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "Tot_Veh_NUT" 9 "Cust_4_NUT" 8 "Cust_3_NUT" 7 "Cust_2_NUT" 6 "Cust_1_NUT" 5 "Tot_Veh_Stat" 4 "Cust_4_Stat" 3 "Cust_3_Stat" 2 "Cust_2_Stat" 1 "Cust_1_Stat" 0 "Null"; -VAL_TABLE_ ChrgStat_D_Dsply 7 "NotUsed" 6 "Complete" 5 "Scheduled" 4 "In_Progress" 3 "Fault_Outside_Car" 2 "Fault_Inside_Car" 1 "Fault_Unknown_Location" 0 "Not_Ready"; -VAL_TABLE_ TrnLvrV_D_Rq 3 "Full_Speed" 2 "Aggressive" 1 "Normal" 0 "Quiet"; -VAL_TABLE_ EngStrtStop_B_SrcOil 1 "Eng_start_stop_for_oilmnt" 0 "Not_Requested"; -VAL_TABLE_ FuelMaintMde_D_Rq 3 "Feature_Not_Present" 2 "Fuel_Maint_Req_Now" 1 "Fuel_Maint_Req_Soon" 0 "NoRequest"; -VAL_TABLE_ FuelMaintMde_D_Dsply 3 "Feature_Not_Present" 2 "In_Fuel_Maint_Mode" 1 "Close_to_Fuel_Maint" 0 "OK"; -VAL_TABLE_ DynoMde_B_Cmd 1 "Two_Wheel_Dyno" 0 "Normal_Operation"; -VAL_TABLE_ HvacPrecondRecirc_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "Recirc" 0 "Outside"; -VAL_TABLE_ HvacPrecondAC_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "On" 0 "Off"; -VAL_TABLE_ HybMdeStat_D_Dsply 7 "NotUsed2" 6 "EV_Charge" 5 "EV_Override" 4 "Forced_EV_Mode" 3 "Forced_Charge_Sustain_Mode" 2 "Auto_Charge_Sustain_Mode" 1 "Auto_Charge_Deplete_Mode" 0 "Null_State"; -VAL_TABLE_ PwFlowPlgBatt_D_Dsply 3 "NotUsed" 2 "Flow_from_Plug_to_Batt" 1 "Flow_from_Batt_to_Plug" 0 "No_Flow"; -VAL_TABLE_ PwFlowEngMtr_D_Dsply 3 "NotUsed" 2 "Flow_from_Eng_to_Mtr" 1 "Flow_from_Mtr_to_Eng" 0 "No_Flow"; -VAL_TABLE_ PwFlowEngFuel_D_Dsply 3 "NotUsed" 2 "Flow_from_Eng_to_Fuel" 1 "Flow_from_Fuel_to_Eng" 0 "No_Flow"; -VAL_TABLE_ PwFlowMtrDrv_D_Dsply 3 "NotUsed" 2 "Flow_from_Mtr_to_Axle" 1 "Flow_from_Axle_to_Mtr" 0 "No_FLow"; -VAL_TABLE_ PwFlowEngDrv_D_Dsply 3 "NotUsed" 2 "Flow_from_Eng_to_Axle" 1 "Flow_from_Axle_to_Eng" 0 "No_Flow"; -VAL_TABLE_ PwFlowBattMtr_D_Dsply 3 "NotUsed" 2 "Flow_from_Batt_to_Mtr" 1 "Flow_from_Mtr_to_Batt" 0 "No_Flow"; -VAL_TABLE_ Null_Override_Invalid 3 "NotUsed" 2 "Invalid" 1 "Override" 0 "Null"; -VAL_TABLE_ HybMdeMsgTxt_D_Rq 7 "NotUsed2" 6 "NotUsed1" 5 "EV_Not_Avail_Message" 4 "EV_Mode_Message" 3 "Delayed_Discharge_Message" 2 "Override_Available_Message" 1 "AutoMode_Message" 0 "Null_NoMessage_Request"; -VAL_TABLE_ HybMdeLimMsgTxt_D_Rq 3 "Limited_Req_Full_Defrost" 2 "Limited_Climate_Defrost" 1 "Limited_System_Performance" 0 "Null"; -VAL_TABLE_ CenterStackRing_D_Actl 3 "LimitedOn" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ NoData_Faulty_FFFE_FFFF 65535 "Faulty" 65534 "NoDataExists"; -VAL_TABLE_ NoData_Faulty_FFE_FFF 4095 "Faulty" 4094 "NoDataExists"; -VAL_TABLE_ NoData_Faulty_7FFE_7FFF 32767 "Faulty" 32766 "NoDataExists"; -VAL_TABLE_ NoData_Faulty_3FE_3FF 1023 "Faulty" 1022 "NoDataExists"; -VAL_TABLE_ ReFuelSysStat_D_Dsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Refuel_Err" 3 "Close_Fuel_Door" 2 "Refuel_Ready" 1 "Wait_To_Fuel" 0 "Null"; -VAL_TABLE_ OffOn_NotUsed 3 "NotUsed2" 2 "NotUsed1" 1 "On" 0 "Off"; -VAL_TABLE_ DrQltyDrv_D_StatGsm 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "ClosedDegraded" 2 "OpenDegraded" 1 "ClosedOkay" 0 "OpenOkay"; -VAL_TABLE_ ChrgrInPwType_D_Actl 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "DC_Fast_Charging" 2 "AC_Level2_240v" 1 "AC_Level1_120v" 0 "EVSE_Not_Detected"; -VAL_TABLE_ ChrgCrdLck_D_Falt 3 "NotUsed" 2 "HardwareFault" 1 "CsiFault" 0 "NoFault"; -VAL_TABLE_ ChrgStat_D2_Dsply 15 "NotUsed_2" 14 "NotUsed_1" 13 "ChargeTargetReached" 12 "DriveConditioning" 11 "CabinPreconditioning" 10 "ChargingSystemMaintain" 9 "ChargingInductive" 8 "ChargingDCFastChange" 7 "ChargingAC" 6 "ChargeScheduled" 5 "EvsePaused" 4 "EvseNotDetected" 3 "EvseNotCompatible" 2 "FaultOutsideCar" 1 "FaultInsideCar" 0 "NotReady"; -VAL_TABLE_ EngMdeMsgTxt_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Charge" 3 "GlowingCharge" 2 "Hybrid" 1 "Ev" 0 "NoMessage"; -VAL_TABLE_ BattRgenLoStat_D_Qlty 3 "OK" 2 "Not_Within_Spec" 1 "Eval_In_Progress" 0 "Faulty"; -VAL_TABLE_ OpenClosedRetainDisable 3 "Disable" 2 "Retain" 1 "Closed" 0 "Open"; -VAL_TABLE_ OpenClosedStuckOpenClosed 3 "StuckClosed" 2 "StuckOpen" 1 "Closed" 0 "Open"; -VAL_TABLE_ NoData_Faulty_7FE_7FF 2047 "Faulty" 2046 "NoDataExists"; -VAL_TABLE_ DrTgateChime2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Long_Repeated" 3 "Fast" 2 "Short" 1 "Long" 0 "Off"; -VAL_TABLE_ EngIdlShutDwnTxt_D_Rq 3 "NotUsed" 2 "EngineShutdownOnPrevDrive" 1 "FeatureDisabledDueToFault" 0 "NoMessage"; -VAL_TABLE_ DrvPerfMde 3 "Sport" 2 "Normal" 1 "NotUsed" 0 "NoModeSelected"; -VAL_TABLE_ NoData_Fault_1FF_1FE 511 "Fault" 510 "NoDataExists"; -VAL_TABLE_ NoData_Fault_FFE_FFF 4095 "Fault" 4094 "NoDataExists"; -VAL_TABLE_ WeekdayEndHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; -VAL_TABLE_ WeekdayEndMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; -VAL_TABLE_ WeekdayStartHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; -VAL_TABLE_ WeekdayStartMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; -VAL_TABLE_ EngIdlShutDown_D_Stat 3 "Not_used" 2 "Engine_Shutdown" 1 "Initiated_Countdown" 0 "Normal_Operation"; -VAL_TABLE_ StopStrtDrvMde_D_Indic 3 "NotUsed" 2 "StartStop_IndirectDeselect" 1 "StopStart_Deselected" 0 "StopStart_Selected"; -VAL_TABLE_ StopStrtDrvMde_D_RqMnu 3 "NotUsed2" 2 "NotUsed1" 1 "StopStart_Deselected" 0 "StopStart_Selected"; -VAL_TABLE_ StopStrtStdby_D_Indic 6 "NotUsed2" 5 "Telltale_Struck_Out" 4 "Telltale_Flashing_Amber" 3 "Telltale_On_Amber" 2 "Telltale_Flashing_Green" 1 "Telltale_On_Green" 0 "Telltale_Off" 7 "NotUsed3"; -VAL_TABLE_ Quality_Faulty 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; -VAL_TABLE_ TrnDtpCmd_D_Actl 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "Relatch" 3 "Deploy" 2 "Self_Test" 1 "No_Command" 0 "NotUsed1"; -VAL_TABLE_ TrnGsmNtmState_D_Actl 3 "Faulty" 2 "Neutral_Tow_Mode" 1 "Car_Wash_Mode" 0 "None"; -VAL_TABLE_ TrnTrcmPwmSig_D_Actl 15 "Faulty" 14 "NoDataExists" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Default_To_Park" 7 "Neutral_Tow" 6 "Car_Wash_Mode" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "No_Gear"; -VAL_TABLE_ RgenBrkDynoMde_B_Actl 1 "TwoWheelDyno" 0 "NormalOperation"; -VAL_TABLE_ Fault_3FFF 16383 "Fault"; -VAL_TABLE_ CtaInnr_D_Stat 3 "Reporting" 2 "Not_Reporting" 1 "System_Standby" 0 "Initialization"; -VAL_TABLE_ PrkBrkActv_D_RqTrnGear 3 "NotUsed2" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "NotUsed1"; -VAL_TABLE_ NoRequest_Request 1 "Request" 0 "NoRequest"; -VAL_TABLE_ Fault_FFF_NoData 4094 "NoDataExists" 4095 "Fault"; -VAL_TABLE_ Fault_3FF_NoData 1022 "NoDataExists" 1023 "Fault"; -VAL_TABLE_ Foh_D_Stat 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "Stopping" 3 "Running" 2 "Starting" 1 "Prestart" 0 "Off"; -VAL_TABLE_ OffOnNoDataUnused 3 "Unused" 2 "NoDataExists" 1 "On" 0 "Off"; -VAL_TABLE_ FohFalt_D_Stat 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "FuelTypeDoesNotMatchFOH" 10 "Lifecycle_ModeNotSet" 9 "AuxElectricCoolantPumpInop" 8 "TimeDelayAvoidExcessCycl" 7 "Fuel_Level_OutofRange" 6 "External_Fault" 5 "Internal_Fault" 4 "Voltage_limitation" 3 "Impact_Event" 2 "CoolantTemp_OutofRange" 1 "AmbientTemp_OutofRange" 0 "No_Disable"; -VAL_TABLE_ FohRqRun_B_Rq 1 "SubmitRequest_toRun" 0 "DoesNotSubmitRequest_toRun"; -VAL_TABLE_ OKLowVeryLow 3 "NotUsed" 2 "VeryLow" 1 "Low" 0 "OK"; -VAL_TABLE_ Fault_1FF 511 "Fault"; -VAL_TABLE_ SteWhlHeat 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Reserved_3" 8 "Reserved_2" 7 "Reserved_1" 6 "Level_3_Heating" 5 "Level_3_Heating_LS" 4 "Level_2_Heating" 3 "Level_2_Heating_LS" 2 "Level_1_Heating" 1 "Level_1_Heating_LS" 0 "Off"; -VAL_TABLE_ OffOnUnusedFault 3 "Fault" 2 "Unused" 1 "On" 0 "Off"; -VAL_TABLE_ NullKphMph 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; -VAL_TABLE_ TsrVLim1MsgTxt_D_Rq 255 "NoLimit" 254 "NotUsed2" 253 "NotUsed1" 252 "NotToBeDisplayed" 251 "LimitCancelled" 31 "1F_FA_Message31_250" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "Null"; -VAL_TABLE_ TsrVl1RstrcMsgTxt_D_Rq 3 "NotUsed" 2 "NoRecognizableRestriction" 1 "NoSpeedLimitRestriction" 0 "Null"; -VAL_TABLE_ TsrMsgTxt_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "RecgnzdSignNotUsblForDsply" 8 "LimitedSystemPerformance" 7 "OffRoad" 6 "RegionNotSupported" 5 "CountryNotSupported" 4 "WrngNavDatIncompDatCarrier" 3 "NoNavDataAvailable" 2 "NoNavAvailableSwitchedOff" 1 "NoInformationAllOK" 0 "Null"; -VAL_TABLE_ TsrOvtkTypeMsgTxt_D_Rq 3 "NotUsed" 2 "Explicit" 1 "Implicit" 0 "Null"; -VAL_TABLE_ TsrOvtkStatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; -VAL_TABLE_ TsrOvtkMsgTxt_D_Rq 7 "LimForTrucksCancelled" 6 "LimForTrucksWoQlfdRstrc" 5 "LimForTrucksWithoutRstrc" 4 "LimAllCancelled" 3 "LimAllWithoutQlfdRstrc" 2 "LimAllWithoutRestriction" 1 "OvertakingAllowed" 0 "Null"; -VAL_TABLE_ Null_False_True 3 "NotUsed" 2 "True" 1 "False" 0 "Null"; -VAL_TABLE_ TsrStatMsgTxt_D_Rq 7 "NotUsed" 6 "NoDataExists" 5 "TSR_Error" 4 "Available_NavigationOnly" 3 "Available_CameraOnly" 2 "Available_FusionMode" 1 "TSR_Off" 0 "Null"; -VAL_TABLE_ NoMessage_DisplayMessage 1 "DisplayMessage" 0 "NoMessage"; -VAL_TABLE_ FdsmTrgRight 1 "Object_in_Right_Lobe" 0 "No_Object"; -VAL_TABLE_ FdsmTrgCntr 1 "Object_in_Center_Lobe" 0 "No_Object"; -VAL_TABLE_ FdsmTrgLeft 1 "Object_in_Left_Lobe" 0 "No_Object"; -VAL_TABLE_ EngineBrakeOff_Active 1 "Engine_Braking_Activated" 0 "Engine_Braking_Off"; -VAL_TABLE_ NoEngineBrake_Brake 1 "Engine_Braking" 0 "No_Engine_Braking"; -VAL_TABLE_ PlgActv_D_ActlChrgr 3 "Faulty" 2 "Not used_2" 1 "On_Plug__Connected_" 0 "Off_Plug__Disconnected_"; -VAL_TABLE_ EngSrvcRqd_B_Rq 1 "Engine_Service_Required" 0 "No_engine_service_required"; -VAL_TABLE_ WeekendEndHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; -VAL_TABLE_ WeekendEndMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; -VAL_TABLE_ WeekendStartHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; -VAL_TABLE_ WeekendStartMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; -VAL_TABLE_ LscmbbBaSens_D_Rq 3 "Level3_EBA" 2 "Level2_EBA" 1 "Level1_EBA" 0 "Norman_EBA"; -VAL_TABLE_ Allowed_Denied 1 "Denied" 0 "Allowed"; -VAL_TABLE_ LscmbbBrkPrchg_D_Rq 3 "NotUsed" 2 "Level2_PreCharge" 1 "Level1_PreCharge" 0 "No_Precharge"; -VAL_TABLE_ LscmbbBrkDecel_B_Enabl 1 "ConductLSCMbBDecelReq" 0 "DoNotConductLSCMbBDecelReq"; -VAL_TABLE_ PrkAidMsgTxt_D_Rq 15 "All_Sns_Blk" 14 "R_Sns_ON_F_Sns_Blk" 13 "R_Sns_Blk_F_Sns_ON" 12 "R_Sns_Inactive_Trlr_atch" 11 "Not_Avail_Trlr_attchd" 10 "Fail_Mode_no_Chime" 9 "Fail_Mode_with_Chime" 8 "R_Sns_Trlr_F_Sns_Blk" 7 "NotUsed3" 6 "Park_Sys_Alternate_Mode" 5 "R_Snsrs_On_F_Snsrs_On" 4 "NotUsed2" 3 "Reset_Message_Warn" 2 "R_Snsrs_Off_F_Snsrs_On" 1 "R_Snsrs_On_F_Snsrs_Off" 0 "All_Park_Sensors_Off"; -VAL_TABLE_ PrkAidSns_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_TABLE_ PrkAid_D_Falt 7 "NotUsed2" 6 "NotUsed1" 5 "Failure_Front_PSM_Sensors" 4 "No_Data_Exists" 3 "Failure_Rear_Sensors" 2 "Speaker_Fault" 1 "ECU_Fault" 0 "No_Fault"; -VAL_TABLE_ OffOnNoDataFault 3 "Fault" 2 "No_Data_Exists" 1 "On" 0 "Off"; -VAL_TABLE_ ApaActvSd_D_Actl 3 "Dirver_Side" 2 "Passenger_Side" 1 "No_Side" 0 "Null"; -VAL_TABLE_ ApaMdeStat_D_RqDrv 7 "Faulty" 6 "Off" 5 "NotUsed2" 4 "NotUsed1" 3 "POA" 2 "PPA" 1 "SAPP" 0 "Inactive"; -VAL_TABLE_ ApaMde_D_Avail 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "PPA_POA" 7 "SAPP_POA" 6 "POA" 5 "PPA" 4 "SAPP" 3 "SAPP_PPA_POA" 2 "SAPP_PPA" 1 "None" 0 "Null"; -VAL_TABLE_ ApaMde_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "POA" 3 "PPA" 2 "SAPP" 1 "Off" 0 "Null"; -VAL_TABLE_ FrostWarn_D_Stat 3 "NotUsed" 2 "On_Amber" 1 "On_Red" 0 "Off"; -VAL_TABLE_ SteWhlLckMsgTxt_D_Rq 3 "NotUsed" 2 "Message_2" 1 "Message_1" 0 "No_Message"; -VAL_TABLE_ GearRvrse_D_Actl 7 "Fault" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Active_confirmed" 2 "Active_not_confirmed" 1 "Inactive_confirmed" 0 "Inactive_not_confirmed"; -VAL_TABLE_ SideDetect_SnStat_Invalid 3 "Invalid" 2 "System_Failure" 1 "Blocked" 0 "Clear"; -VAL_TABLE_ SideDetect_OpStat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; -VAL_TABLE_ SideDetect_Present 4 "Sensor_Blocked" 3 "Sensor_Fault" 2 "Flash_On" 1 "Alert_On" 0 "AlertOff_FlashOff_SensrClr"; -VAL_TABLE_ Off_On_Flash_BulbProveout 3 "Bulb_Proveout" 2 "Flash" 1 "On" 0 "Off"; -VAL_TABLE_ SideDetect_BLIS_Off_On 2 "BLIS_On_Second_Warning_ON" 1 "BLIS_On_Second_Warning_OFF" 0 "Off"; -VAL_TABLE_ SideDetect_report 3 "Reporting" 2 "Not_Reporting" 1 "System_Standby" 0 "Initialization"; -VAL_TABLE_ DrTGate_D_Rq 3 "NotUsed" 2 "Closing" 1 "Opening" 0 "Not_Moving"; -VAL_TABLE_ WndwSide_D_Stat 3 "BothWindow_Operating" 2 "RearWindow_Operating" 1 "FrontWindow_Operating" 0 "NoWindows_Operating"; -VAL_TABLE_ DcacElPw_D_Rq 3 "NotUsed" 2 "AC_HighPower_Requested" 1 "AC_LowPower_Requested" 0 "AC_Power_NotRequested"; -VAL_TABLE_ False_True 1 "True" 0 "False"; -VAL_TABLE_ Null_Reset 1 "Reset" 0 "Null"; -VAL_TABLE_ HvacBlwrFront_D_Stat 31 "Not_Used" 20 "Full_On" 19 "95_Percent" 18 "90_Percent" 17 "85_Percent" 16 "80_Percent" 15 "75_Percent" 14 "70_Percent" 13 "65_Percent" 12 "60_Percent" 11 "55_Percent" 10 "50_Percent" 9 "45_Percent" 8 "40_Percent" 7 "35_Percent" 6 "30_Percent" 5 "25_Percent" 4 "20_Percent" 3 "15_Percent" 2 "10_Percent" 1 "5_Percent" 0 "Off"; -VAL_TABLE_ immoMsgTxt_D_Rq 15 "Immo_Msg_15" 14 "Immo_Msg_14" 13 "Immo_Msg_13" 12 "Immo_Msg_12" 11 "Immo_Msg_11" 10 "Immo_Msg_10" 9 "Immo_Msg_9" 8 "Immo_Msg_8" 7 "Immo_Msg_7" 6 "Immo_Msg_6" 5 "Immo_Msg_5" 4 "Immo_Msg_4" 3 "Immo_Msg_3" 2 "Immo_Msg_2" 1 "Immo_Msg_1" 0 "Immo_Msg_0_Null"; -VAL_TABLE_ BattTracWarnLamp_B_Rq 1 "On" 0 "Off"; -VAL_TABLE_ BattTracSrvcRqd_B_Rq 1 "On" 0 "Off"; -VAL_TABLE_ HtrnWarnLamp_B_Dsply 1 "On" 0 "Off"; -VAL_TABLE_ HtrnSrvcRqd_B_Dsply 1 "On" 0 "Off"; -VAL_TABLE_ NoData_Faulty_7E_7F 127 "Faulty" 126 "NoDataExists"; -VAL_TABLE_ PreCondACSet_D_Actl 3 "Last_User_Setting" 2 "Auto" 1 "On" 0 "Off"; -VAL_TABLE_ PreCondFanSet_D_Actl 15 "Not_used" 14 "Not_used" 13 "Not_used" 12 "Not_used" 11 "Not_used" 10 "Not_used" 9 "Last_user_setting" 8 "Auto" 7 "Speed_7" 6 "Speed_6" 5 "Speed_5" 4 "Speed_4" 3 "Speed_3" 2 "Speed_2" 1 "Speed_1" 0 "OFF"; -VAL_TABLE_ PreCondID_No_Actl 0 "Invalid"; -VAL_TABLE_ PreCondRecrcSet_D_Actl 3 "Last_User_Setting" 2 "Auto" 1 "Recirc" 0 "Outside/Fresh"; -VAL_TABLE_ PreCondTeSet_Te_Actl 31 "HI" 1 "LO" 0 "Last_driver_setting"; -VAL_TABLE_ PreCondTPRDef_D_Actl 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ PreCondModeSet_D_Actl 15 "Not_used" 14 "Not_used" 13 "Not_used" 12 "Not_used" 11 "LastUserSetting" 10 "Auto" 9 "Max_Defrost" 8 "Windshield_Panel_Floor" 7 "Windshield_Panel" 6 "Windshield_(Defrost)" 5 "Windshield_Floor" 4 "Floor" 3 "Panel_Floor" 2 "Panel_(Vent)" 1 "Max_A/C" 0 "Off"; -VAL_TABLE_ ChargePortPwr_St 2 "LowPower" 1 "HighPower" 0 "Null"; -VAL_TABLE_ ChargeProfIDPref_St 3 "NotUsed" 2 "Value" 1 "ChargeNow" 0 "Null"; -VAL_TABLE_ ChrgGlobSched_D_Actl 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ ChrgLocEndHr_No_Actl 31 "Invalid" 30 "Unknown"; -VAL_TABLE_ ChrgLocEndMin_No_Actl 63 "Invalid" 62 "Unknown"; -VAL_TABLE_ ChrgLocProgram_D_Actl 7 "Not_used" 6 "Not_used" 5 "Not_used" 4 "Manual" 3 "TimeofUse" 2 "SmMet" 1 "ChargeImm" 0 "Null"; -VAL_TABLE_ ChrgLocSchedCat_D_Actl 11 "Reserved" 10 "Window_10" 9 "Window_9" 8 "Window_8" 7 "Window_7" 6 "Window_6" 5 "Window_5" 4 "Window_4" 3 "Window_3" 2 "Window_2" 1 "Window_1" 0 "Null"; -VAL_TABLE_ ChrgLocHsphs_D_Actl 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "SouthEast_Lat-_Long+" 3 "SouthWest_Lat-_Long-" 2 "NorthEast_Lat+_Long+" 1 "NorthWest_Lat+_Long-" 0 "NoDataExists"; -VAL_TABLE_ FuelPumpPwr_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Power_Off_Default" 3 "Power_Off_Command" 2 "Power_Off_Service" 1 "Power_Off_Impact" 0 "Power_On"; -VAL_TABLE_ ChrgrRdyStat_D_Actl 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Charging" 2 "ChargerFault" 1 "ChargerReady" 0 "NotReady"; -VAL_TABLE_ PrmtrAlrmEvnt_D_Stat 15 "Diag_Tamper" 14 "Trailer" 13 "Shock_Sensor" 12 "Post_Crash" 11 "Panic" 10 "Intrusion" 9 "Inclination" 8 "Ign_Tamper" 7 "LG_Door" 6 "Decklid" 5 "Hood" 4 "PR_Door" 3 "PF_Door" 2 "DR_Door" 1 "DF_Door" 0 "Null"; -VAL_TABLE_ SecurityMsgTxt_D_Rq 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ BattChrgRdyStat_D_Actl 7 "NotUsed2" 6 "NotUsed1" 5 "Faulted" 4 "ChargeComplete" 3 "Charging" 2 "BatteryChargeReady" 1 "ChargeWait" 0 "NotReady"; -VAL_TABLE_ BattChrgInhbt_D_Rq 3 "MaintainTargetSoc" 2 "NotUsed" 1 "InhibitChargingThermal" 0 "Enable_Charging"; -VAL_TABLE_ Fault_7FF_NoData 2047 "Fault" 2046 "NoDataExists"; -VAL_TABLE_ Deactivate_Activate 1 "Activate" 0 "Deactivate"; -VAL_TABLE_ PtcHtr_D_Stat 3 "Faulty" 2 "NotUsed" 1 "On" 0 "Off"; -VAL_TABLE_ PtcHtr_D_Cmd 3 "TurnOn" 2 "AutoMode" 1 "TurnOff" 0 "NoDecision_Initializing"; -VAL_TABLE_ Fault_FFFFFF 16777215 "Fault"; -VAL_TABLE_ NoData_Fault_FFFE_FFFF 65535 "Fault" 65534 "NoDataExists"; -VAL_TABLE_ EngOffTe_B_Dsply 1 "Eng_warm_engh_for_pd" 0 "Eng_not_warm_engh_for_pd"; -VAL_TABLE_ Fault_FFFF_NoData_FFFE 65535 "Fault" 65534 "NoDataExists"; -VAL_TABLE_ Fault_1FFF 8191 "Fault"; -VAL_TABLE_ TrlrBattChrg_D_Stat 3 "Reverse" 2 "Normal" 1 "Low" 0 "Null"; -VAL_TABLE_ TrlrLampCtl_D_Stat 3 "NotUsed" 2 "TrlrLampCnnctDrvFailure" 1 "TrlrLampNotCnnctDrvFailure" 0 "Null"; -VAL_TABLE_ ElPw_D_StatStrtStop 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Supported_Level_4" 8 "Supported_Level_3" 7 "Supported_Level_2" 6 "Supported_Level_1" 5 "Limited_Support" 4 "Fault_Limited" 3 "LV_Event_in_Progress" 2 "Not_Supported_Imminent" 1 "Supported_All" 0 "Not_Supported"; -VAL_TABLE_ ImpactEvntFdbck_D_Stat 3 "NotUsed" 2 "EventComplete" 1 "EventInProgress" 0 "Normal"; -VAL_TABLE_ StopStrtIODTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_TABLE_ NoData_Fault_7FFE_7FFF 32767 "Fault" 32766 "NoDataExists"; -VAL_TABLE_ NoData_Fault_3E_3F 63 "Fault" 62 "NoDataExists"; -VAL_TABLE_ DrvSte_D_Stat 15 "NotUsed10" 14 "NotUsed9" 13 "NotUsed8" 12 "NotUsed7" 11 "NotUsed6" 10 "NotUsed5" 9 "NotUsed4" 8 "NotUsed3" 7 "NotUsed2" 6 "NotUsed1" 5 "Request_Active" 4 "Ignition_Off" 3 "DSR_in_Normal_Idle_Mode" 2 "EPAS_Comm_Disturbed" 1 "DSR_Request_Not_Applicable" 0 "DSR_Deactivated"; -VAL_TABLE_ StrtrMtrCtlMsgTxt_D_Rq 7 "Start_In_Gear_Allowed" 6 "Pending_Start_Cancelled" 5 "Start_Pending_Please_Wait" 4 "Cranking_Limit_Exceeded" 3 "Press_Brk_and_Shift_to_P_N" 2 "Press_Clutch_and_Brake" 1 "Press_Clutch_To_Start" 0 "No_Display"; -VAL_TABLE_ Null_Open 1 "Open" 0 "Null"; -VAL_TABLE_ Invalid_OffOn 0 "Invalid" 1 "Off" 2 "On"; -VAL_TABLE_ TempDegreesC_DegreesF 0 "Temperature_deg_c" 1 "Temperature_deg_f"; -VAL_TABLE_ BeltminderAudioMute 2 "On" 1 "Off" 0 "Invalid"; -VAL_TABLE_ Chime_Source 2 "Cluster" 1 "Infotainment_Sys" 0 "Invalid"; -VAL_TABLE_ Invalid_DayNight 2 "Night" 1 "Day" 0 "Invalid"; -VAL_TABLE_ Invalid_12h_24h 2 "24h_mode" 1 "12h_mode" 0 "Invalid"; -VAL_TABLE_ Invalid_Theme1_2 2 "Theme_2" 1 "Theme_1" 0 "Invalid"; -VAL_TABLE_ LanguageSelect_St 30 "Slovak" 29 "Arabic" 28 "Cantonese" 27 "Mandarin_Chinese" 26 "Korean" 25 "Japanese_Kanji" 24 "Japanese_Katakana" 23 "Braz_Portuguese" 22 "EU_Portuguese" 21 "Finish" 20 "Norwegian" 19 "Danish" 18 "Swedish" 17 "Hungarian" 16 "Greek" 15 "Czech" 14 "Polish" 13 "Flemish" 12 "Dutch" 11 "Russian" 10 "Turkish" 9 "Mex_Spanish" 8 "EU_Spanish" 7 "Cana_French" 6 "EU_French" 5 "Italian" 4 "German" 3 "NA_English" 2 "UK_English" 1 "Unknown" 0 "Invalid"; -VAL_TABLE_ Blower_Indicate 15 "Display_Blank" 14 "14_Indicators_On" 13 "13_Indicators_On" 12 "12_Indicators_On" 11 "11_Indicators_On" 10 "10_Indicators_On" 9 "9_Indicators_On" 8 "8_Indicators_On" 7 "7_Indicators_On" 6 "6_Indicators_On" 5 "5_Indicators_On" 4 "4_Indicators_On" 3 "3_Indicators_On" 2 "2_Indicators_On" 1 "1_Indicator_On" 0 "Indicators_Off"; -VAL_TABLE_ CC_Fr_Stat_User_Adj 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "Fr_Blwr_Spd_Selection" 2 "FRHS_SetPt_Selection" 1 "FLHS_SetPt_Selection" 0 "None"; -VAL_TABLE_ HeadLghtHiFdbck_D_Stat 3 "NotUsed" 2 "Cancel" 1 "Hold" 0 "Allow_Change"; -VAL_TABLE_ Backlit_LED_Status 15 "Unused3" 14 "Unused2" 13 "Unused1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; -VAL_TABLE_ Veh_Lock_Status 3 "UNLOCK_DRV" 2 "UNLOCK_ALL" 1 "LOCK_ALL" 0 "LOCK_DBL"; -VAL_TABLE_ PrkLckCtlMsgTxt_D_Rq 3 "BTSI_DI_3" 2 "BTSI_DI_2" 1 "BTSI_DI_1" 0 "Null_BTSI_DI"; -VAL_TABLE_ NoShift_Shift 1 "Shift" 0 "NoShift"; -VAL_TABLE_ CcdMsgTxt_D_RqDsply 15 "Unused8" 14 "Unused7" 13 "Unused6" 12 "Unused5" 11 "Unused4" 10 "Unused3" 9 "Unused2" 8 "StationaryMode" 7 "Mode_Change_Unavailable" 6 "CCD_Temporarily_Off" 5 "CCD_Service_Required" 4 "Faulty" 3 "Sport" 2 "Normal" 1 "Comfort" 0 "No_Mode_Selected"; -VAL_TABLE_ CrashEvnt_D_Stat 3 "Invalid" 2 "Fuel_Cutoff_Event" 1 "Deploy_Event" 0 "No_Event"; -VAL_TABLE_ ReducedGuard_D_Stat 3 "NotUsed" 2 "Alarm_On" 1 "Alarm_Off_Previously_On" 0 "Alarm_Off"; -VAL_TABLE_ HvacPrecondBlwr_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Last_User_Setting" 8 "Auto" 7 "Speed7" 6 "Speed6" 5 "Speed5" 4 "Speed4" 3 "Speed3" 2 "Speed2" 1 "Speed1" 0 "Off"; -VAL_TABLE_ HvacPrecondMode_D_Rq 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "Last_User_Settings" 10 "Auto" 9 "Max_Defrost" 8 "Windshield_Panel_Floor" 7 "Windshield_Panel" 6 "Windshield" 5 "Windshield_Floor" 4 "Floor" 3 "Panel_Floor" 2 "Panel" 1 "MAX_AC" 0 "Off"; -VAL_TABLE_ ButtonNotPressed 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_TABLE_ Null_Pressed 1 "Pressed" 0 "Null"; -VAL_TABLE_ FobComm_D_Stat 3 "NotUsed" 2 "RemEngStartOK" 1 "RemEngStartFail" 0 "Null"; -VAL_TABLE_ PudLamp_D_Rq 3 "RAMP_DOWN" 2 "RAMP_UP" 1 "ON" 0 "OFF"; -VAL_TABLE_ WndwGlbl_D_Cmd 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "GLEARN" 3 "GCLOSE" 2 "GOPEN" 1 "GSTOP" 0 "Null"; -VAL_TABLE_ LockMsg 7 "MSG7" 6 "MSG6" 5 "MSG5" 4 "MSG4" 3 "MSG3" 2 "MSG2" 1 "MSG1" 0 "NO_WARNING"; -VAL_TABLE_ ChildLockDisplay 3 "NOT_SUPPORTED" 2 "ERROR" 1 "CHILD_UNLOCK" 0 "CHILD_LOCK"; -VAL_TABLE_ Null_Lock_Unlock 3 "NotUsed" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_TABLE_ Wiper 15 "NO_DATA_EXISTS" 14 "STALLED" 13 "RESERVED" 12 "AUTO_ADJUST" 11 "COURTESYWIPE" 10 "AUTO_HIGH" 9 "AUTO_LOW" 8 "WASH" 7 "MIST_FLICK" 6 "MAN_HIGH" 5 "MAN_LOW" 4 "MAN_INT_ON" 3 "MAN_INT_OFF" 2 "OFF_MOVING" 1 "AUTO_OFF" 0 "OFF"; -VAL_TABLE_ Turn_switch 3 "Unused_Treat_As_Off" 2 "Right" 1 "Left" 0 "Off"; -VAL_TABLE_ PrkLght_D_Stat 3 "Park_Both" 2 "Park_Right" 1 "Park_Left" 0 "Off"; -VAL_TABLE_ LghtAmb_D_Sns 7 "No_Data_Exists" 6 "Unused2" 5 "Unused1" 4 "Tunnel_Off" 3 "Tunnel_On" 2 "Twilight" 1 "Light" 0 "Dark"; -VAL_TABLE_ HeadLghtSwtch_D_Stat 3 "Autolamp" 2 "Headlamp" 1 "Parklamp" 0 "Off"; -VAL_TABLE_ EmgcyBrkLamp_D_Rq 3 "NotUsed" 2 "Active_at_standstill" 1 "Active_at_speed" 0 "Inactive"; -VAL_TABLE_ GearLvrPos_D_Unfilt 7 "Invalid" 6 "NotUsed" 5 "In_between" 4 "Low" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_TABLE_ EDrvTqMntrRconfg_D_Cmd 7 "OK" 6 "Disable_Cruise" 5 "NotUsed4" 4 "Supercreep" 3 "NotUsed3" 2 "NotUsed2" 1 "Engine_shutdown" 0 "NotUsed"; -VAL_TABLE_ OpenPressedFault 3 "Fault" 2 "Unused" 1 "Pressed" 0 "Open"; -VAL_TABLE_ LaHandsOff_D_Dsply 3 "Suppressed" 2 "Level2" 1 "Level1" 0 "HandsOn"; -VAL_TABLE_ Avail_Unavail 1 "Unavailable" 0 "Available"; -VAL_TABLE_ LaActvStats_D_Dsply 31 "Unused7" 30 "LA_Off" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 24 "InerveneLeft_InterveneRght" 23 "WarnLeft_InterveneRight" 22 "SuppressLeft_InterveneRght" 21 "AvailLeft_InterveneRhtt" 20 "NoLeft_InterveneRight" 19 "InterveneLeft_WarnRight" 18 "WarnLeft_WarnRight" 17 "SuppressLeft_WarnRight" 16 "AvailableLeft_WarnRight" 15 "NoLeft_WarnRight" 14 "InterveneLeft_SuppressRght" 13 "WarnLeft_SuppressRight" 12 "SuppressLeft_SuppressRight" 11 "AvailLeft_SuppressRight" 10 "NoLeft_SuppressRight" 9 "InterveneLeft_AvailRight" 8 "WarnLeft_AvailRight" 7 "SuppressLeft_AvailRight" 6 "AvailableLeft_AvailRight" 5 "NoLeft_AvailableRight" 4 "InterveneLeft_NoRight" 3 "WarnLeft_NoRight" 2 "SuppressLeft_NoRight" 1 "AvailableLeft_NoRight" 0 "NoLeft_NoRight"; -VAL_TABLE_ AhbcHiBeam_D_Rq 3 "Deactivated_Unavailabl" 2 "Unused" 1 "Main_HighBeamRecommend" 0 "Dipped_LowBeamRecommend"; -VAL_TABLE_ GrllShtrPos_D_Cmd 15 "Fully_Open" 14 "Position14" 13 "Position13" 12 "Position12" 11 "Position11" 10 "Position10" 9 "Position9" 8 "Position8" 7 "Position7" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Fully_Closed"; -VAL_TABLE_ LifeCycMde_D_Actl 3 "Transport" 2 "NotUsed" 1 "Factory" 0 "Normal"; -VAL_TABLE_ TrnMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; -VAL_TABLE_ DieslPrtcRgen_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Full_Regen_2" 4 "Full_Regen_1" 3 "HeatUp_3" 2 "HeatUp_2" 1 "HeatUp_1" 0 "Normal_Mode_NoRegen"; -VAL_TABLE_ ClimtHeat_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "PtcHtrTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownHeatingReq" 1 "OpportunisticHeatingReq" 0 "NoHeatingRequest"; -VAL_TABLE_ TrnCapHlth_Actl 3 "Capacitor_OK" 2 "Degraded_Capacitor" 1 "Capacitor_State_Unknown" 0 "Capacitor_Fault"; -VAL_TABLE_ TrnSecPrkStat_D_Actl 7 "Faulty" 6 "Fault_Released" 5 "Fault_Latched" 4 "Recouple_in_Progress" 3 "Mechanism_Released" 2 "RTP_in_Progress" 1 "Pending" 0 "Latched"; -VAL_TABLE_ TrnGear_D_Actl 7 "Fault" 6 "NotUsed" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "Transition_State"; -VAL_TABLE_ TrnNtrlTowCmd_D_Actl 3 "NotUsed" 2 "Neutral_Tow_Entry" 1 "Car_Wash_Mode" 0 "Normal_Mode"; -VAL_TABLE_ TrnValidGear_D_Cnfm 3 "Accept" 2 "Reject" 1 "Internal_Request" 0 "No_Command"; -VAL_TABLE_ TrnGear_D_RqPt 7 "Fault" 6 "NotUsed" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "No_Gear"; -VAL_TABLE_ TrnValidGearRq_D_Stat 3 "Valid_Request" 2 "Valid_Degraded_Request" 1 "Invalid_Request" 0 "No_Request"; -VAL_TABLE_ NoData_Fault_3FE_3FF 1023 "Fault" 1022 "NoDataExists"; -VAL_TABLE_ ClimtCool_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "ElACTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownCoolReq" 1 "OpportunisticCoolingReq" 0 "NoCoolingRequest"; -VAL_TABLE_ HtrnHvilOpen_B_Actl 1 "HVIL_is_Open" 0 "Normal_Operation"; -VAL_TABLE_ EngTeHi_B_Actl 1 "EngineTempHigh" 0 "Normal"; -VAL_TABLE_ Eng_D_StatPwPck 7 "NotUsed3" 6 "NotUsed2" 5 "Engine_Start_Cold_Cat" 4 "Engine_Disabled" 3 "Engine_Running" 2 "Engine_Run_CSER" 1 "Engine_Start" 0 "Off"; -VAL_TABLE_ EngFuelCutFull_B_Inhbt 1 "Inhibit_DFSO" 0 "Normal"; -VAL_TABLE_ EngFuelCutFull_B_Rq 1 "FuelCutRequest" 0 "NormalOperation"; -VAL_TABLE_ Fault_7FF 2047 "Fault"; -VAL_TABLE_ EngStopFst_B_Rq 1 "FastEngineShutdown" 0 "NormalOperation"; -VAL_TABLE_ EngStrtCold_B_Rq 1 "ExtremeColdStart" 0 "NormalStart"; -VAL_TABLE_ EngStrtSmooth_D_Rq 7 "NotUsed" 6 "Smooth_NoPedal" 5 "Smooth_LightPedal" 4 "Smooth_MediumPedal" 3 "Smooth_HeavyPedal" 2 "Smooth_WOP" 1 "Smooth_Cold" 0 "Smooth_ExtremeCold"; -VAL_TABLE_ Fault_FFF 4095 "Fault"; -VAL_TABLE_ VehStrtStop_D_Rq 3 "NotUsed" 2 "Vehicle_Start_Request" 1 "Vehicle_Stop_Request" 0 "NoRequest"; -VAL_TABLE_ HvacRec_D_RqMxBatt 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "No_Override" 9 "90Percent_RecircMax" 8 "80Percent_RecircMax" 7 "70Percent_RecircMax" 6 "60Percent_RecircMax" 5 "50Percent_RecircMax" 4 "40Percent_RecircMax" 3 "30Percent_RecircMax" 2 "20Percent_RecircMax" 1 "10Percent_RecircMax" 0 "0Percent_RecircFullOpen"; -VAL_TABLE_ FuelCtlOpenLp_B_Inhbt 1 " Inhibit_FullPedal_Actions" 0 "Normal_Operation"; -VAL_TABLE_ EngStrtStop_B_SrcSrvc 1 "Eng_StartStop_for_Service" 0 "Not_Requested"; -VAL_TABLE_ EngStrtStop_B_SrcCat 1 "Eng_StartStop_for_Catalyst" 0 "Not_Requested"; -VAL_TABLE_ PrkBrkStatus 7 "GeneralFault_MaintenceMode" 6 "ECD_by_Brake_ECU_Active" 5 "EPB_Limphome_Active" 4 "Rear_Caliper_Open" 3 "RWU_By_EPB_Active" 2 "Rear_Caliper_Transition" 1 "Rear_Caliper_Closed" 0 "Not_Supported"; -VAL_TABLE_ ElLoadCtl_D_Rq 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "HoldAllDrvrInvisibleLoads" 3 "StdDriverInvisibleLoadsOn" 2 "AllDriverInvisibleLoadsOn" 1 "All_Possible_Loads_Off" 0 "No_Request"; -VAL_TABLE_ BattTracCool 3 "NotUsed" 2 "DCDC_Overtemperature" 1 "CoolingRequiredbyDCDC" 0 "NoCoolingRequiredbyDCDC"; -VAL_TABLE_ NotReady_Active_Fault 3 "Fault" 2 "Active" 1 "Ready" 0 "Not_Ready"; -VAL_TABLE_ Quality_Data 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Fault"; -VAL_TABLE_ PwSrcULoFalt_D_Stat 3 "Fault_No_Output" 2 "Fault_Reduced_Output" 1 "Fault_NonSpecific" 0 "No_Fault"; -VAL_TABLE_ Connect_Discon_Loose 1 "Loose_or_Disconnected" 0 "Connected"; -VAL_TABLE_ DontCare_StartInhibit 1 "Start_Inhibit" 0 "Dont_Care"; -VAL_TABLE_ BattULoChrg_D_Rq 3 "Low_Battery_Temperature" 2 "Charging_Requested" 1 "Chrg_Requested_HighCurrent" 0 "No_Request"; -VAL_TABLE_ PwSysULoFalt_D_Stat 15 "Not_Used_6" 14 "LowBatterySOC" 13 "PSS_Shed2_Contin" 12 "Not_Used_4" 11 "Not_Used_3" 10 "Not_Used_2" 9 "BattMonitoringSensorFault" 8 "LowBattVoltDuringPwSrcOn" 7 "LowBatt2_PowerSaveMode" 6 "LowBatt1_Warning" 5 "Overvoltage" 4 "Fault_NoOutput" 3 "Fault_ReducedOutput" 2 "Fault_Nonspecific" 1 "Cluster_Proveout" 0 "No_Fault"; -VAL_TABLE_ AccStopMde_D_Rq 3 "Stop_Mode_Active" 2 "EPBApplyOrBrakeReleaseWarn" 1 "Limit_Rolling_Speed" 0 "Stop_Mode_Not_Active"; -VAL_TABLE_ EngFuelCutFull_B_Sched 1 "DFSO_Event_Scheduled" 0 "Normal"; -VAL_TABLE_ Eng_D_Stat 3 "NotUsed" 2 "EngAutoStopped" 1 "EngOn" 0 "EngOff"; -VAL_TABLE_ ElPw_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Fault_Limited" 3 "LV_Event_In_Progress" 2 "Not_Supported_Imminent" 1 "Supported" 0 "Not_Supported"; -VAL_TABLE_ PwPckTq_D_Stat 3 "PwPckOn_TqAvailable" 2 "StartInPrgrss_TqNotAvail" 1 "PwPckOn_TqNotAvailable" 0 "PwPckOff_TqNotAvailable"; -VAL_TABLE_ BattTracCool_D_Falt 3 "NotUsed" 2 "CoolSysPartialyOperational" 1 "Cooling_System_Faulted" 0 "Cooling_System_Operational"; -VAL_TABLE_ Fault_FF 255 "Fault"; -VAL_TABLE_ ElCmprOverTe_D_Stat 3 "OverTempStop" 2 "OverTempWarning" 1 "Normal" 0 "Undefined"; -VAL_TABLE_ ElCmprUHi_D_Stat 3 "Overvoltage" 2 "Undervoltage" 1 "InRange" 0 "Undetermined"; -VAL_TABLE_ ElCmpr_D_Stat 7 "Signal_Invalid" 6 "Comp_Off_ActlSpd_Abnormal" 5 "Comp_Off_TrgtSpd_OutRange" 4 "Comp_Shutdown" 3 "Comp_Stopped_Self_Protect" 2 "Comp_Degraded" 1 "Comp_On" 0 "Comp_Off"; -VAL_TABLE_ Southern_Northern 3 "Fault" 2 "Northern" 1 "Southern" 0 "Invalid"; -VAL_TABLE_ PsngrFrntDetct_D_Actl 3 "Unknown" 2 "Empty" 0 "Faulty" 1 "Occupied"; -VAL_TABLE_ Normal_Mode1_2 3 "Undefined" 2 "Mode2" 1 "Mode1" 0 "Normal_Mode"; -VAL_TABLE_ LaActvAvail 3 "LKA_LCA_LDW_Avail" 2 "LCA_LKA_Avail_LDW_Suppress" 1 "LCA_LKA_Suppress_LDW_Avail" 0 "LCA_LKA_LDW_Suppress"; -VAL_TABLE_ LA_NotDenied 1 "LA_Denied" 0 "LA_Not_Denied"; -VAL_TABLE_ HandsOn_Off 1 "Hands_Off" 0 "Hands_On"; -VAL_TABLE_ Smooth_Quick 1 "Quick" 0 "Smooth"; -VAL_TABLE_ None_Low_Med_High 3 "High" 2 "Medium" 1 "Low" 0 "None"; -VAL_TABLE_ LdwActvStats 7 "LDW_Suppress_Right_Left" 6 "Not_Used2" 5 "LDW_Suppress_Right" 4 "LDW_Warning_Right" 3 "LDW_Suppress_Left" 2 "LDW_Warning_Left" 1 "LDW_DemoVibration" 0 "LDW_Idle"; -VAL_TABLE_ Fault_3FF 1023 "Fault"; -VAL_TABLE_ EngStrtStop 15 "Unused_7" 14 "Unused_6" 13 "Unused_5" 12 "Unused_4" 11 "Unused_3" 10 "Unused_2" 9 "Unused_1" 8 "Force_Pull_Down" 7 "Force_Pull_Up" 6 "Pull_Down_Inhibit_Pull_Up" 5 "Inhibit_Change" 4 "Inhibit_Pull_Up" 3 "Pull_Down" 2 "Inhibit_Pull_Down" 1 "Pull_Up" 0 "No_Request"; -VAL_TABLE_ TrnMde_D_Rq 15 "Unused_4" 14 "Unused_3" 13 "Unused_2" 12 "Unused_1" 11 "InOutLckedHydStandby" 10 "InputOutputLocked" 9 "OutputLockedHydStandby" 8 "OutputLocked" 7 "ReducedOutTqHydStandby" 6 "Reduced_Output_Torque" 5 "TransInTqHydStandby" 4 "Transmit_Input_Torque" 3 "ActNeutralHydStandby" 2 "Active_Neutral" 1 "NeutralHydraulicStdby" 0 "Neutral"; -VAL_TABLE_ Fault_F 15 "Fault"; -VAL_TABLE_ Fault_1F 31 "Fault"; -VAL_TABLE_ TmsStatRqDsply 15 "Reserved4" 14 "Reserved3" 13 "Reserved2" 12 "Crawl_Mode_4LOW_Reqd" 11 "Economy_Mode_Select" 10 "ModeChangeNotAvailable" 9 "Terrain_Sys_Not_Avail" 8 "Terrain_System_Fault" 7 "Mode_Change_InProgress" 6 "Dynamics_Mode_Select" 5 "Rock_Crawl_Mode_Select" 4 "Sand_Mode_Select" 3 "Mud_Ruts_Mode_Select" 2 "Low_Mu_Mode_Select" 1 "Special_Modes_Off" 0 "No_Message"; -VAL_TABLE_ LockInhibit 1 "Inhibit" 0 "No_Inhibit"; -VAL_TABLE_ DieslFuelBio_B_ActlDrv 1 "Biodiesel_User" 0 "Non_Biodiesel_User"; -VAL_TABLE_ Invalid_FFF 4095 "Invalid"; -VAL_TABLE_ ParkAid_Chime 15 "Zone15_Chime" 14 "Zone14_Chime" 13 "Zone13_Chime" 12 "Zone12_Chime" 11 "Zone11_Chime" 10 "Zone10_Chime" 9 "Zone9_Chime" 8 "Zone8_Chime" 7 "Zone7_Chime" 6 "Zone6_Chime" 5 "Zone5_Chime" 4 "Zone4_Chime" 3 "Zone3_Chime" 2 "Zone2_Chime" 1 "Zone1_Chime" 0 "No_Chime"; -VAL_TABLE_ Shed_Feature_Group_ID 16 "PtcHeater" 14 "HtdMirr" 13 "HvacRearBlwr_Third" 12 "HvacRearBlwr_Second" 11 "HvacRearBlwr_First" 31 "All LSHED1 Features" 10 "Htd_Windscrn" 9 "SpltHtdBcklight_HtdMirr" 8 "HtdBcklight_HtdMirr" 7 "HtdCoolSeat_FrtDriver" 6 "HtdCoolSeat_FrtPass" 5 "HtdCoolSeat_RearPass" 4 "HtdCoolSeat_RearDriver" 3 "SmartTrlrTowBattCharge" 2 "Htd_StrWhl" 1 "Htd_Washer_Fluid" 0 "No_LSHED1_Features" 15 "Engine_Coolant_Fan"; -VAL_TABLE_ CoolantFanStepAct 31 "Unused7" 30 "Unused6" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 23 "Step23" 22 "Step22" 21 "Step21" 20 "Step20" 19 "Step19" 18 "Step18" 17 "Step17" 16 "Step16" 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 24 "Max_Fan_Speed_Req" 0 "Fan_Cmd_Off"; -VAL_TABLE_ Null_Cancel 1 "Cancel" 0 "Null"; -VAL_TABLE_ Veh_Lock_Requestor 31 "Unused8" 30 "Unused7" 29 "Unused6" 28 "Rgtm_Shutlock_Switch" 27 "Boundary_Alert" 26 "Transit_Vehicle_Relock" 25 "Transit_Cargo_Relock" 24 "Transit_Ajar_Lock" 23 "Diagnostics" 22 "Console_Lock" 21 "Child_Lock" 20 "Double_Lock" 19 "Passive_Pasenger" 18 "Passive_Driver" 17 "Slam_Lock_Protect" 16 "SYNC" 15 "Passport" 14 "Passive_Smart_Unlock" 13 "Autorelock" 12 "RemoteStart" 0 "Null" 1 "Autolock" 11 "Smart_Unlock" 10 "Sliding_Door" 9 "Passive" 8 "Remote" 7 "Programming" 6 "Powerslide" 5 "Keypad" 4 "Key_Cylinder" 3 "Interior" 2 "Auto_Unlock"; -VAL_TABLE_ EPAS_FAILURE 3 "SERVICE_POWER_STEERING_NOW" 2 "SERVICE_POWER_STEERING" 1 "POWER_STRG_ASSIST_FAULT" 0 "EPAS_OK_NO_MESSAGE"; -VAL_TABLE_ Perimeter_Alarm_Mode 3 "Activated" 2 "Armed" 1 "Prearmed" 0 "Disarmed"; -VAL_TABLE_ Invalid_FFFF 65535 "Invalid"; -VAL_TABLE_ FdaStat_D_Dsply 7 "Undefined_3" 6 "Undefined_2" 5 "Undefined_1" 4 "Distance_Alert_Unavailable" 3 "DistanceAlertUnavail_Low" 2 "DistanceAlertUnavailActive" 1 "Distance_Alert_Available" 0 "Distance_Alert_Off"; -VAL_TABLE_ OilPressureWarning 1 "Low_Pressure_Lamp_On" 0 "Normal_Pressure_Lamp_Off"; -VAL_TABLE_ MyKey_KeyTypeChangeReq 3 "Search_PE_BackupSlot" 2 "Clear_All_MyKeys" 1 "Request_New_MyKey" 0 "None"; -VAL_TABLE_ MyKey_Key_Count 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero" 15 "Invalid" 14 "Unlimited"; -VAL_TABLE_ GearEngag_D_Actl 7 "Undefined" 6 "Fwd_Clutch_Fully_Engaged" 5 "Neutral_Idle" 4 "Disengaged_to_Neutral_Idle" 3 "Disengaged_to_Neutral_Park" 2 "Engagement_in_Progress" 1 "InitializeFwdClutchEngagmt" 0 "Park_Neutral"; -VAL_TABLE_ Shed_Level_Req 7 "Unused_2" 6 "Loads_On" 5 "SHED_ENG_OFF" 4 "SOON_ENG_OFF" 3 "SHED2_CONTIN" 2 "SHED2_TRANS" 1 "SHED1" 0 "NO_SHED"; -VAL_TABLE_ BpedMove_D_Actl 3 "Unknown" 2 "DriverApplyingBrakePedal" 1 "NoAutonomousBrkPdlMovement" 0 "AutonomousBrkPedalMove"; -VAL_TABLE_ Eastern_Western 0 "Invalid" 1 "Eastern" 2 "Western" 3 "Fault"; -VAL_TABLE_ EATC_Temp_Digit3 2 "_5" 1 "_0" 0 "OFF"; -VAL_TABLE_ EATC_Units 2 "Fahrenheit" 1 "Celsius" 0 "Off"; -VAL_TABLE_ BattTracOffFst_D_Actl 3 "Unexpected_Contactor_Open" 2 "Restraints_Impact_Event" 1 "Interlock_Open" 0 "Normal"; -VAL_TABLE_ Invalid_1FF 511 "Invalid"; -VAL_TABLE_ ChargeMode 7 "Undefined_2" 6 "Undefined_1" 5 "Battery_Identify" 4 "Battery_Refresh" 3 "SlowRegenAllowNoDischarge" 2 "Fast_Regen_Allowed" 1 "Slow_Regen_Allowed" 0 "Conventional_Charging"; -VAL_TABLE_ Unknown_FFFE_Invalid_FFFF 65535 "Invalid" 65534 "Unknown"; -VAL_TABLE_ SAPPAngleControlStat5 1 "StrgColTorqueExceed_EAROn" 0 "ExternalSigContentOKforEAC"; -VAL_TABLE_ Closed_Open_Active_Fault 3 "Fault" 2 "Active" 1 "Open" 0 "Closed"; -VAL_TABLE_ SAPPAngleControlStat2 1 "Rel_ExtSteeringAngleReqx" 0 "NoRel_ExtSteeringAngleReqx"; -VAL_TABLE_ SAPPAngleControlStat3 1 "EARactiveNoReverseEngage" 0 "ExternalSigContentOKforEAC"; -VAL_TABLE_ RstrnImpactEvntStatus 7 "Invalid" 6 "Not_Used_4" 5 "Threshold_2_Exceeded" 4 "Not_Used_3" 3 "Threshold_1_Exceeded" 2 "Not_Used_2" 1 "Not_Used_1" 0 "Normal"; -VAL_TABLE_ EDRTriggerEvntSync 1 "Threshold_Exceeded" 0 "Normal"; -VAL_TABLE_ EngTeColdPrtct_D_Stats 3 "Engine_Warm_RdcPwr" 2 "OK_to_Drive" 1 "Engine_Warm_PlsWait" 0 "Normal_Operation"; -VAL_TABLE_ HILL_DESC_MC 7 "Fault_Detected" 6 "Cooling_Down" 5 "Abort_Apply_Brakes" 4 "Active" 3 "Disabled" 2 "Enabled" 1 "Off_Road" 0 "Normal"; -VAL_TABLE_ Closed_Ajar 1 "Ajar" 0 "Closed"; -VAL_TABLE_ CADS_Autio_Mute 7 "Unknown" 6 "Attenuation_6" 5 "Attenuation_5" 4 "Attenuation_4" 3 "Attenuation_3" 2 "Attenuation_2" 1 "Attenuation_1" 0 "No_Attenuation_of_Audio"; -VAL_TABLE_ Quality_Factor 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_TABLE_ Null_Day_Night 3 "NotUsed" 2 "Night" 1 "Day" 0 "Null"; -VAL_TABLE_ Null_Flash_High 3 "NotUsed" 2 "High" 1 "Flash_to_Pass" 0 "Null"; -VAL_TABLE_ GearPos_D_Actl 15 "Unknown" 14 "Reverse" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Tenth" 9 "Ninth" 8 "Eighth" 7 "Seventh" 6 "Sixth" 5 "Fifth" 4 "Fourth" 3 "Third" 2 "Second" 1 "First" 0 "Neutral"; -VAL_TABLE_ OffOn_SlowFast_Flash 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_TABLE_ AwdStat_D_RqDsply 31 "NotUsed9" 30 "NotUsed8" 29 "NotUsed7" 28 "To_Engage_4x4_Release_Aped" 27 "To_Engage_4x4_Slow_To_3MPH" 26 "Shift_To_Neutral" 25 "Lkr_Mode_Unavail_TMS" 24 " _4x4_Mode_Unavail_TMS" 23 "Out_of_4Low_Crawl" 22 "AWD_PTU_Oil_Changed" 21 "Change_AWD_PTU_Oil" 20 "Neutral_Tow_Disabled" 19 "Neutral_Tow_Enabled" 18 "AWD_OFF" 17 "_4x4_Off_Road_Speed" 16 "_4x4_Extreme_Off_Road_Mode" 15 "_4x4_Exiting_Off_Road" 14 "_4x4_Off_Road_Mode" 10 "_4x4_Locked_Temporarily" 9 "Shift_In_Progress" 13 "Blocked_Shift_Assist" 12 "_4x4_Auto_Restored" 11 "_4x4_Disabled_Temporarily" 7 "Out_of_4Low__Neutral" 6 "Out_of_4Low__Brake" 5 "Out_of_4Low__Speed" 4 "Into_4Low__Clutch" 3 "Into_4Low__Neutral" 2 "Into_4Low__Brake" 1 "Into_4Low__Speed" 0 "Normal__No_Message" 8 "Out_of_4Low__Clutch"; -VAL_TABLE_ AngleReached 1 "RequestedAngleNotReached" 0 "RequestedAngleCanBeReached"; -VAL_TABLE_ WhlDir 3 "Failed" 2 "Unknown" 1 "Backward" 0 "Forward"; -VAL_TABLE_ VehVLimStat_D_Actl 7 "Undefined_3" 6 "Undefined_2" 5 "Undefined_1" 4 "ASL_Fault_Condition" 3 "Active_and_Limiting" 2 "Active_but_Not_Limiting" 1 "Standby" 0 "Off"; -VAL_TABLE_ Unknown_Fault_1FE_1FF 511 "Fault" 510 "Unknown"; -VAL_TABLE_ Fault_NoFault 1 "Fault" 0 "No_Fault"; -VAL_TABLE_ TrnIpcDsplyMde_D_Actl 7 "Manual_3" 6 "Manual_2" 5 "Manual_1_Low" 4 "Sport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_TABLE_ TrnIpcDsplyMde_D_Stat 3 "Reserved_Blank_No_Display" 2 "Flash" 1 "On" 0 "Blank_No_Display"; -VAL_TABLE_ TrnIpcDsplyGear_D_Actl 15 "No_Gear_Selected" 14 "_14th_Gear" 13 "_13th_Gear" 12 "_12th_Gear" 11 "_11th_Gear" 10 "_10th_Gear" 9 "_9th_Gear" 8 "_8th_Gear" 7 "_7th_Gear" 6 "_6th_Gear" 5 "_5th_Gear" 4 "_4th_Gear" 3 "_3rd_Gear" 2 "_2nd_Gear" 1 "_1st_Gear" 0 "Neutral"; -VAL_TABLE_ TerrMde_D_Actl 7 "Fail_Safe_Default" 6 "Dynamic_Mode" 5 "Rock_Crawl_Mode" 4 "Mud_Ruts_Mode" 3 "Sand_Mode" 2 "Undefined" 1 "Low_Mu_Mode" 0 "Special_Operating_Mode_Off"; -VAL_TABLE_ TerrMdeChng_D_Rdy 7 "Fault" 6 "Undefined_2" 5 "Undefined_1" 4 "ModeUnavailDrInputRqd" 3 "SpOpModes_NotSupported" 2 "ModeUnavailDynamicCond" 1 "Module_In_Initialization" 0 "Mode_Change_Available"; -VAL_TABLE_ Unknown_Fault_FFFE_FFFF 65535 "Fault" 65534 "Unknown"; -VAL_TABLE_ Invalid_FFFFFF 16777215 "Invalid"; -VAL_TABLE_ AutoParkSpdExitCond 1 "SpeedLimitExceededEAROn" 0 "ExternalSigContentOKforEAC"; -VAL_TABLE_ EngOilLvlDsply_D_Rq 15 "EngOil_LevelSys_CheckFault" 14 "Reserved_2" 13 "Reserved_1" 12 "Conditions_Unsuitable" 11 "Dipstick_Below_Minimum" 10 "Dipstick_Above_Maximum" 9 "Dipstick_Minimum" 8 "Dipstick_12_5_MinMaxRange" 7 "Dipstick_25_MinMaxRange" 6 "Dipstick_37_5_MinMaxRange" 5 "Dipstick_50_MinMaxRange" 4 "Dipstick_62_5_MinMaxRange" 3 "Dipstick_75_MinMaxRange" 2 "Dipstick_87_5_MinMaxRange" 1 "Dipstick_Maximum_Displayed" 0 "No_Message"; -VAL_TABLE_ HdcMde_D_Actl 7 "Fault" 6 "Temporarily_Unavailable" 5 "NotEnabled_WrongGearSel" 4 "NotEnabled_SpdLimitExceed" 3 "Active_Braking" 2 "Not_Active_Braking" 1 "Off" 0 "Undefined"; -VAL_TABLE_ GearLvrPos_D_Actl 15 "Fault" 14 "Unknown_Position" 13 "Undefined_Treat_as__Fault" 12 "Undefined_Treat_as_Fault" 11 "sixth" 10 "fifth" 9 "fourth" 8 "third" 7 "second" 6 "first" 5 "Low" 4 "Sport_DriveSport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_TABLE_ FcwMsgTxt_D_Rq 7 "Undefined_3" 6 "Undefined_2" 5 "Low_Visibility" 4 "Unavailable_DueTo_LowSpeed" 3 "Available" 2 "Unavailable" 1 "Off" 0 "No_Text"; -VAL_TABLE_ FcwSens_B_Actl 3 "FCW_Sensitivity_3" 2 "FCW_Sensitivity_2" 1 "FCW_Sensitivity_1" 0 "Not_Used"; -VAL_TABLE_ LastSettind_DefaultOn 1 "Default_On" 0 "Last_Setting"; -VAL_TABLE_ EngTurboMde_D_Actl 3 "Fault" 2 "One_Turbo_Active" 1 "Two_Turbos_Active" 0 "Initializing"; -VAL_TABLE_ EngPullUpPullDown 15 "Undefined_7" 14 "Undefined_6" 13 "Undefined_5" 12 "Undefined_4" 8 "Force_Pull_Down" 7 "Force_Pull_Up" 6 "PullDown_Inhibit_PullUp" 5 "Inhibit_Change" 4 "Inhibit_Pull_Up" 3 "Pull_Down" 2 "Inhibit_Pull_Down" 1 "Pull_Up" 0 "No_Request" 11 "Undefined_3" 10 "Undefined_2" 9 "Undefined_1"; -VAL_TABLE_ EngMde_D_Rq 8 "VSC_Sets_Speed_Type_3" 7 "VSC_Sets_Speed_Type_2" 6 "VSC_Sets_Torque_Type_2" 5 "Dependability_Shutdown" 4 "Dependability_Follow" 3 "Start" 2 "VSC_Sets_Torque_Type_1" 1 "VSC_Sets_Speed_Type_1" 0 "Off" 15 "Undefined_7" 14 "Undefined_6" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Undefined_2" 9 "Undefined_1"; -VAL_TABLE_ DrvHdcMsg_D_Rq 7 "Undefined" 6 "Speed_too_High" 5 "Temporarily_Unavailable" 4 "System_Fault" 3 "Select_Gear" 2 "Off" 1 "On" 0 "No_Message"; -VAL_TABLE_ CmbbBrkPrchg_B_Rq 3 "Undefined" 2 "Level_2_PreCharge_Request" 1 "Level_1_PreCharge_Request" 0 "No_PreCharge_Request"; -VAL_TABLE_ CmbbBaSens_D_Rq 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Normal"; -VAL_TABLE_ CcStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "Active" 4 "Active_Que_Assist" 3 "Standby" 2 "Standby_Denied" 1 "Denied" 0 "Off"; -VAL_TABLE_ CadsAudioMute_D_Rq 3 "Reserved" 2 "Partial_Audio_Mute" 1 "Full_Audio_Mute" 0 "No_Audio_Mute"; -VAL_TABLE_ BpedDrvAppl_D_Actl 3 "_Not_Allowed" 2 "Driver_Braking" 1 "Driver_Not_Braking" 0 "Not_Allowed"; -VAL_TABLE_ AslIconDsply_D_Rq 3 "On_Passive_Overridden" 2 "On_Active" 1 "On_Passive" 0 "Off"; -VAL_TABLE_ Unknown_Fault_3E_3F 63 "Fault" 62 "Unknown"; -VAL_TABLE_ AccWarn_D_Dsply 3 "BrakeReleaseWarn_In_StopMd" 2 "Brake_Capacity_Warning" 1 "Cancel_Warning" 0 "No_Warning"; -VAL_TABLE_ AccTrgDist2_D_Dsply 15 "DIST_ACTIVE_13_Farthest" 14 "DIST_ACTIVE_12" 13 "DIST_ACTIVE_11" 12 "DIST_ACTIVE_10" 11 "DIST_ACTIVE_9" 10 "DIST_ACTIVE_8" 9 "DIST_ACTIVE_7" 8 "DIST_ACTIVE_6" 7 "DIST_ACTIVE_5" 6 "DIST_ACTIVE_4" 5 "DIST_ACTIVE_3" 4 "DIST_ACTIVE_2" 3 "DIST_ACTIVE_1_Closest" 2 "DIST_ACTIVE_No_Target" 1 "DIST_STANDBY" 0 "DIST_OFF"; -VAL_TABLE_ AccTGap_D_Dsply 7 "Undefined_2" 6 "Undefined_1" 5 "Time_Gap_5" 4 "Time_Gap_4" 3 "Time_Gap_3" 2 "Time_Gap_2" 1 "Time_Gap_1" 0 "Not_Used"; -VAL_TABLE_ AccEngStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "ACCSoonCancel_due_Low_Spd" 4 "Shift_Down_Recommendation" 3 "Shift_Up_Recommendation" 2 "ACCNotAllowedToBeActivated" 1 "ACCStandby_due_Auto_Cancel" 0 "Normal_Operation"; -VAL_TABLE_ NotPressed_Pressed 1 "Pressed" 0 "Not_Pressed"; -VAL_TABLE_ TrnGear_D_RqDrv 31 "Fault" 30 "NotUsed_25" 29 "NotUsed_24" 28 "NotUsed_23" 27 "NotUsed_22" 26 "Return_to_Park" 25 "NotUsed_20" 24 "NotUsed_19" 23 "NotUsed_18" 22 "NotUsed_17" 21 "Return_To_Park" 20 "NotUsed_15" 19 "NotUsed_14" 18 "NotUsed_13" 17 "NotUsed_12" 16 "Manual" 15 "Not_Used11" 14 "Not_Used10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "Drive" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "Neutral" 3 "NotUsed_1" 2 "Reverse" 1 "Park" 0 "No_Gear"; -VAL_TABLE_ Open_Close 1 "Close" 0 "Open"; -VAL_TABLE_ OpenCloseRetainUndef 3 "Undefined" 2 "Retain" 1 "Close" 0 "Open"; -VAL_TABLE_ DasWarn 3 "Undefined" 2 "Warning_Level_2" 1 "Warning_Level_1" 0 "No_Warning"; -VAL_TABLE_ DasAlert 5 "Alertness_Level_5" 4 "Alertness_Level_4" 3 "Alertness_Level_3" 2 "Alertness_Level_2" 1 "Alertness_Level_1" 0 "Undefined"; -VAL_TABLE_ DasStat 3 "Available" 2 "Unavailable_Other" 1 "Feedback_due_to_Speed" 0 "Off"; -VAL_TABLE_ No_Crank_Req 1 "Crank_Request" 0 "No_Crank_Request"; -VAL_TABLE_ DrvSlipCtlMde_D_Rq 3 "App_Specific_Off_Mode_3" 2 "App_Specific_Off_Mode_2" 1 "App_Specific_Off_Mode_1" 0 "Default_Mode"; -VAL_TABLE_ AwdOffRoadMode 3 "Invalid" 2 "Extreme_Off_Road" 1 "Off_Road" 0 "Normal_Mode"; -VAL_TABLE_ NotQuiet_Quiet 1 "Quiet" 0 "Not_Quiet"; -VAL_TABLE_ Normal_AdaptiveCruise 1 "Adaptive_Cruise" 0 "Normal_Cruise"; -VAL_TABLE_ Remote_Device_Feedback 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "Shutdown" 3 "Running" 2 "Starting" 1 "Acknowledge" 0 "Null"; -VAL_TABLE_ TrnManShif_D_IndDrv 7 "Undefined_3" 6 "Undefined_2" 5 "Shift_to_Neutral" 4 "Downshift_Recommendation" 3 "Upshift_Warning" 2 "Upshift_Performance" 1 "Upshift_Fuel_Economy" 0 "No_Indication"; -VAL_TABLE_ Unlock_Lock 1 "Locked" 0 "Unlock"; -VAL_TABLE_ DieslPrtc_D_RqDsply 7 "Unused_2" 6 "Unused_1" 5 "DPF_SOOT_Level3_Blocked" 4 "DPFSootLvl2_SevereOverload" 3 "DPFRegen_ExhFilterComplete" 2 "DPFRegen_CleanExhFilter" 1 "DPF_Soot_Level1_Overloaded" 0 "DPF_OK_Normal_Operation"; -VAL_TABLE_ PE_BackupSlot_Status 3 "No_Valid_FOB_In_Slot" 2 "MyKey_FOB_In_Slot" 1 "Standard_FOB_In_Slot" 0 "Null"; -VAL_TABLE_ Unknown_Fault_FFE_FFF 4095 "Fault" 4094 "Unknown"; -VAL_TABLE_ Unknown_Fault_1FFE_1FFF 8191 "Fault" 8190 "Unknown"; -VAL_TABLE_ TrnCnvtClu_D_Actl 3 "Transition_or_Micro_Slip" 2 "Lock_Up_Fixed" 1 "Lock_Up_Slip" 0 "No_Lock_Up"; -VAL_TABLE_ InhibitNoinhibit 1 "Inhibit" 0 "No_Inibit"; -VAL_TABLE_ DisableEnable 1 "Enable" 0 "Disable"; -VAL_TABLE_ Unknown_Fault_7FFE_7FFF 32767 "Fault" 32766 "Unknown"; -VAL_TABLE_ Side_Detect_Sn_State 3 "Second_Warning_Audio" 2 "System_Failure" 1 "Blocked" 0 "Clear"; -VAL_TABLE_ Litval_values 255 "Invalid" 254 "Unknown" 5 "Day" 4 "Twilight_4" 3 "Twilight_3" 2 "Twilight_2" 1 "Twilight_1" 0 "Night"; -VAL_TABLE_ Dimming_Lvl 255 "Invalid" 254 "Unknown" 18 "Day_6" 17 "Day_5" 16 "Day_4" 15 "Day_3" 14 "Day_2" 13 "Day_1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; -VAL_TABLE_ EngStrtStop_B_SrcChtLo 1 "Eng_StartStop_for_CHT_Low" 0 "Not_Requested"; -VAL_TABLE_ EngStrtStop_B_SrcChtHi 1 "Eng_StartStop_for_CHT_Hi" 0 "Not_Requested"; -VAL_TABLE_ EngDiag_D_RqHtrn 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NoUsed1" 3 "Eng_Diag_Cstdn" 2 "Eng_Diag_Run" 1 "Eng_Diag_Crank" 0 "Eng_Diag_Normal"; -VAL_TABLE_ NotOperating 1 "Operating" 0 "Not_Operating"; -VAL_TABLE_ CamraStat 3 "FrtCam_TempUnavailOther" 2 "FrtCam_TempUnavailVisibile" 1 "Front_Camera_Service_Reqd" 0 "Front_Camera_OK"; -VAL_TABLE_ EngPtoMde_D_Actl 7 "Undefined" 6 "Split_Shaft_Stationary" 5 "Not_Used_2" 4 "PTO_Mobile" 3 "Not_Used_1" 2 "PTO_Stationary" 1 "BCP" 0 "Off"; -VAL_TABLE_ ManRgen_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "CustInitManExhFilterClean" 0 "No_Customer_Request"; -VAL_TABLE_ Remote_Start_Status 3 "Invalid" 2 "Unknown" 1 "Remote" 0 "Null"; -VAL_TABLE_ Lock_Subld 15 "Unused7" 14 "Unused6" 13 "Unused5" 12 "Unused4" 11 "Unused3" 10 "Unused2" 9 "Unused1" 8 "Customer_8" 7 "Customer_7" 6 "Customer_6" 5 "Customer_5" 4 "Customer_4" 3 "Customer_3" 2 "Customer_2" 1 "Customer_1" 0 "Null"; -VAL_TABLE_ Brake_Fluid 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; -VAL_TABLE_ Unknown_Invalid_FE_FF 255 "Invalid" 254 "Unknown"; -VAL_TABLE_ Invalid_FF 255 "Invalid"; -VAL_TABLE_ NotLow_Low 1 "Low" 0 "Not_Low"; -VAL_TABLE_ Disabled_Enabled_Status 2 "Status" 3 "NotUsed" 1 "Enabled" 0 "Disabled"; -VAL_TABLE_ Key_In_Ignition_Status 1 "In" 0 "Out"; -VAL_TABLE_ Ignition_Status 0 "Unknown" 1 "Off" 15 "Invalid" 8 "Start" 4 "Run" 2 "Accessory"; -VAL_TABLE_ Disabled_Enabled_Faulted 3 "Faulted" 2 "Unused" 1 "Enabled" 0 "Disabled"; -VAL_TABLE_ Disabled_Enabled_NoSupport 2 "Unused" 3 "Not_Supported" 1 "Enabled" 0 "Disabled"; -VAL_TABLE_ Unknown_Fault_FE_FF 255 "Fault" 254 "Unknown"; -VAL_TABLE_ Null_Unlock 1 "Unlock" 0 "Null"; -VAL_TABLE_ Null_Active 1 "Active" 0 "Null"; -VAL_TABLE_ HsaStat_D_Actl 7 "Faulty" 6 "FaultyWithDriverIndication" 5 "SlowRelease" 4 "FastRelease" 3 "ActiveBrakePedalReleased" 2 "ActiveBrakePedalPressed" 1 "FindingGradient" 0 "Inactive"; -VAL_TABLE_ Off_Auto_Manual 3 "Undefined" 2 "Manual" 1 "Automatic" 0 "Off"; -VAL_TABLE_ HsaStat_D_Dsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "NotAvailable" 3 "SlowReleaseWithChime" 2 "SlowReleaseWithoutChime" 1 "Active" 0 "Inactive"; -VAL_TABLE_ EngMsgTxt_D_Rq 3 "Undefined_2" 2 "Undefined_1" 1 "Power_Reduced_to_LowerTemp" 0 "No_Message"; -VAL_TABLE_ PassRstrnInd_Req 3 "ABOnNotIllum_OffNotIllum" 2 "AirbagOnNot_Illum_OffIllum" 1 "AirbagOn_Illum_OffNotIllum" 0 "AirbagOn_Illum_Off_Illum"; -VAL_TABLE_ RearDiffLckMsg_D_Rq 7 "Locker_Disabled" 6 "Locker_Enabled" 5 "Locker_Accel_Pedal" 4 "Speed4" 3 "Speed3" 2 "Spee2" 1 "Speed1" 0 "Normal__No_Message "; -VAL_TABLE_ GPS_Compass_dirctn 7 "NorthWest" 6 "West" 5 "SouthWest" 4 "South" 3 "SouthEast" 2 "East" 1 "NorthEast" 0 "North"; -VAL_TABLE_ GPS_Actual_Infer 1 "Inferred_Position" 0 "Actual_Postition"; -VAL_TABLE_ DrvHdcWarnInfo_D_Rq 3 "Undefined" 2 "Lamp_On_Continuously" 1 "Lamp_Flashing" 0 "Lamp_Off_Continuously"; -VAL_TABLE_ DieslPrtcRgen_D_Actl 3 "Undefined" 2 "Regen_Level_2" 1 "Regen_Level_1" 0 "No_regen"; -VAL_TABLE_ Off_On 1 "On" 0 "Off"; -VAL_TABLE_ CcMde_D_Actl 7 "TapDownWaiting" 6 "TapUpWaiting" 5 "Resuming_Low" 4 "Resuming_High" 3 "Decelerating" 2 "Accelerating" 1 "Keeping_Speed" 0 "Not_Active"; -VAL_TABLE_ InactiveActive 1 "Active" 0 "Inactive"; -VAL_TABLE_ ManRgenTxt_D_RqDsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Cleaning_Aborted_Stopped" 3 "Cleaning_Completed" 2 "Cleaning_In_Progress" 1 "Cleaning_Allowed" 0 "Cleaning_Not_Allowed"; -VAL_TABLE_ Fault_FFFF 65535 "Fault"; -VAL_TABLE_ Fault_7F 127 "Fault"; -VAL_TABLE_ EngOilLvlWarn_D_Rq 7 "Undefined_3" 6 "Undefined_2" 5 "Engine_Oil_Monitor_Fault" 3 "Engine_Oil_High" 2 "Engine_Oil_Critical_Low" 1 "Engine_Oil_Low" 0 "No_Message" 4 "Engine_Oil_Critical_High"; -VAL_TABLE_ UreaQltySys_D_RqDsply 7 "Undefined" 6 "ZZ_Overrides" 5 "EngineIdled" 4 "Engine_Idle_Upon_Refuel" 3 "SPEED_LIMITED_to_YY_mph" 2 "YY_MPH_MAX_UPON_Restart" 1 "CONTAMINATED_ExhFluid" 0 "NoQualityProblem"; -VAL_TABLE_ Unknown_Invalid_1E_1F 31 "Invalid" 30 "Unknown"; -VAL_TABLE_ Unknown_Invalid_3FFE_3FFF 16383 "Invalid" 16382 "Unknown"; -VAL_TABLE_ NoYes 1 "Yes" 0 "No"; -VAL_TABLE_ AwdRnge_D_Actl 7 "Unknown" 6 "High_Range_2wd" 5 "High_Range_Auto" 4 "High_Range_Locked" 3 "Neutral" 2 "Low_Range_2wd" 1 "Low_Range_Auto" 0 "Low_Range_Locked"; -VAL_TABLE_ AwdLck_D_Stat 9 "Undefined" 8 "Under_External_Torque_Ctrl" 7 "Torque_Limited_by_Cmd" 6 "Fully_Locked_by_Cmd" 5 "Disabled" 4 "Warning" 3 "Fault" 2 "Inactive" 1 "Completely_Opened_by_Cmd" 0 "OK"; -VAL_TABLE_ Unknown_Fault_3FE_3FF 1023 "Fault" 1022 "Unknown"; -VAL_TABLE_ LockSwStat 3 "Invalid" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_TABLE_ Null_Override 1 "Override" 0 "Null"; -VAL_TABLE_ Off_On_Flash 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_TABLE_ immoTargetStatCoding 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "DISABLED_RESET " 2 "ENABLED_NONMOTIVE_START" 1 "ENABLED_MOTIVE_START" 0 "DISABLED"; -VAL_TABLE_ BeltBuckle 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_TABLE_ RILReqCoding 3 "Not_Used" 2 "Plant_Mode" 1 "On" 0 "Off"; -VAL_TABLE_ Update_Bit 1 "Fresh_data" 0 "Unchanged_data"; -VAL_TABLE_ Running_Board 3 "Unused" 2 "Manually_Deployed" 1 "All_Enabled" 0 "All_Disabled"; -VAL_TABLE_ HudFlashRate 3 "Unused" 2 "Flash_4Hz_50Prct_DutyCycle" 1 "On" 0 "Off"; -VAL_TABLE_ Turn_Seq 3 "Seq" 2 "On" 1 "Off" 0 "Null"; -VAL_TABLE_ immoTargetCmdCoding 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "TARGET1_IDBLOCK2" 2 "TARGET1_IDBLOCK1" 1 "CHALLENGE" 0 "IDLE"; -VAL_TABLE_ immoSubTargetCmdCoding 7 "Unused3" 6 "Unused2" 5 "ECHO_TARGET1_IDBLOCK2" 4 "Unused1" 3 "RQST_TARGET1_IDBLOCK2" 2 "RQST_TARGET1_IDBLOCK1" 1 "RESPONSE" 0 "IDLE"; -VAL_TABLE_ immoCtrlCmdCoding 0 "IDLE" 1 "MOTIVE_START_RQST" 2 "NONMOTIVE_START_RQST" 3 "RQST_TARGET1_IDBLOCK1" 4 "RQST_TARGET1_IDBLOCK2" 5 "Unused" 6 "ECHO_TARGET1_IDBLOCK2" 7 "SHUTDOWN"; -VAL_TABLE_ Rvc_Zoom 7 "Unknown" 6 "Invalid" 5 "Zoom_Level_V" 4 "Zoom_Level_IV" 3 "Zoom_Level_III" 2 "Zoom_Level_II" 1 "Zoom_Level_I" 0 "Off"; -VAL_TABLE_ NotPark 1 "Park" 0 "Not_Park"; -VAL_TABLE_ Electric_EOH 1 "Electric_Over_Hydraulic" 0 "Electric"; -VAL_TABLE_ PersOptIn 1 "OPTED_IN" 0 "NOT_OPTED_IN"; -VAL_TABLE_ PersonalSetUp 3 "Non_Moveable_Person" 2 "Moveable_Person" 1 "Vehicle" 0 "Factory"; -VAL_TABLE_ Full_Limited 1 "Limited" 0 "Full"; -VAL_TABLE_ NoConflict_Conflict 1 "Conflict" 0 "No_Conflict"; -VAL_TABLE_ Assoc_Confirm 0 "None" 7 "Associate" 6 "Keycode_Rejected" 5 "Keycode_Accepted" 4 "In_Progress" 3 "Erase" 2 "Duplicate" 1 "Disassociate"; -VAL_TABLE_ Pers1_4 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_TABLE_ Null_Query 7 "Unused_2" 6 "Unused_1" 5 "Copy" 4 "Restore" 3 "Upload" 2 "Set" 1 "Query" 0 "Null"; -VAL_TABLE_ EngExhBrkMde_D_Actl 6 "ExhBrkDisable_NoError" 5 "ExhBrkActive_AUTO" 4 "ExhBrkActive_ON" 3 "ExhBrkRequest_AUTO" 2 "ExhBrkRequest_ON" 1 "ExhBrkNoRequest_OFF" 0 "ExhBrkUnavailable_Error"; -VAL_TABLE_ UreaLvlTxt_D_RqDsply 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "System_Error" 10 "Engine_Idled_See_Manual" 9 "Engine_Idled_Upon_Refuel" 8 "Speed_Limited_To_XX_mph" 7 "XXmph_Max_Upon_Restart" 6 "Speed_Limited_To_YY_mph" 5 "YYmph_Max_Upon_Restart" 4 "SpdLimtd_YYmph_In_XXmiles" 3 "ExFlRange_XXMiles_ScndWarn" 2 "Exh_Fluid_Range_XX_Miles" 1 "Exh_Fluid_Under_Half_Full" 0 "Exh_Fluid_Over_Half_Full"; -VAL_TABLE_ RearDiffFalt_D_Stat 3 "Diff_Failed_Closed" 2 "Diff_Failed_Open" 1 "Fault_Non_Specific" 0 "No_Fault"; -VAL_TABLE_ CCOverridden 1 "Cruise_Overridden" 0 "Cruise_Req_Not_Overridden"; -VAL_TABLE_ Ign_Key_Device_Type 15 "Invalid" 14 "Unknown" 3 "Key_Not_Prgrm_Read_Failure" 2 "Key_In_Ign_My_Key" 1 "Key_In_Ign_Standard_Key" 0 "Key_Read_In_Progress"; -VAL_TABLE_ Off_No_Eff_Unknown_Invalid 3 "Invalid" 2 "Unknown" 1 "No_Effect" 0 "Off"; -VAL_TABLE_ Null_Out 1 "Out" 0 "Null"; -VAL_TABLE_ FUEL_SENSORS 1 "Dual_Sensors" 0 "Single_Sensor"; - - -BO_ 823 DTE_HPCMtoECG: 8 Vector__XXX - SG_ DteVehPwId_No_Actl : 47|5@0+ (1,0) [0|31] "unitless" GWM - SG_ DteVehEId_No_Actl : 39|8@0+ (1,0) [0|255] "unitless" GWM - SG_ DteVehEffId_No_Actl : 6|7@0+ (1,0) [0|127] "unitless" GWM - SG_ DteVeh_Pw_Actl : 31|8@0+ (50,0) [0|12750] "watts" GWM - SG_ DteVeh_Eff_Actl : 23|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" GWM - SG_ DteVeh_E_Actl : 15|8@0+ (100,0) [0|25500] "watt*hour" GWM - SG_ DteAcceptNew_B_Rq : 7|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 824 DTE_ECGtoHPCM: 8 GWM - SG_ DteCldTrlrOn_B_Stat : 51|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldTrlrOff_B_Stat : 52|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldTrip_L_Actl : 47|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX - SG_ DteCldTraffic_B_Stat : 53|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldTerrain_B_Stat : 54|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldRoute_B_Stat : 55|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldPayload_B_Stat : 16|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldId_No_Actl : 21|5@0+ (1,0) [0|31] "unitless" Vector__XXX - SG_ DteCldExtTe_B_Stat : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldExt_Eff_Actl : 39|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX - SG_ DteCldDrv_Eff_Actl : 31|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX - SG_ DteCldDcac_B_Stat : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DteCldClimt_Eff_Actl : 15|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX - SG_ DteCldBattULo_Eff_Actl : 7|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX - -BO_ 949 Tire_Pressure_Data_FD1: 8 GWM - SG_ Tire_Press_RR_ORR_Data : 39|16@0+ (1,0) [0|65533] "kilopascal" VDM - SG_ Tire_Press_LR_OLR_Data : 55|16@0+ (1,0) [0|65533] "kilopascal" VDM - SG_ Tire_Press_LF_Data : 7|16@0+ (1,0) [0|65533] "kilopascal" VDM - SG_ Tire_Press_RF_Data : 23|16@0+ (1,0) [0|65533] "kilopascal" VDM - -BO_ 1825 TesterPhysicalReqVDM_FD1: 64 GWM - SG_ TesterPhysicalReqVDM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" VDM - -BO_ 524 AWD_Torque_Data: 8 TCCM - SG_ PrplWhlTotTqRqMxAwd_No_Cs : 23|8@0+ (1,0) [0|255] "Unitless" ECM_Diesel - SG_ PrplWhlTot_Tq_RqMxAwd : 7|16@0+ (4,-131072) [-131072|131068] "Nm" ECM_Diesel - SG_ PrplWhlTotTqRqMxAwd_No_Cnt : 31|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel - -BO_ 740 PHEV_Battery_Data1_FD1: 8 GWM - SG_ BattAuxCnnct_B_Cmd : 53|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - -BO_ 1160 ECG_Data2_FD1: 8 GWM - SG_ DgtlCommPncReset_B_Req : 62|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DataMntrSustn_B_Rq : 63|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PwSustnRdata_B_RqTelem : 60|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 776 SmartChargingData_ECG_3: 8 GWM - SG_ ScMnSoc_Pc_RqCld : 55|7@0+ (1,0) [0|127] "percent" Vector__XXX - SG_ ScChrgrPwMax_Pw_RqCld : 39|12@0+ (50,0) [0|204700] "watts" Vector__XXX - SG_ ScLocPwId_No_RqCld : 43|3@0+ (1,0) [0|7] "unitless" Vector__XXX - SG_ PrcondEdit_D_RqCld : 10|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ GoTEditMnte_T_RqCld : 29|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ GoTEditHr_T_RqCld : 15|5@0+ (1,0) [0|29] "SED" Vector__XXX - SG_ ChrgToPcEdit_Pc_RqCld : 7|7@0+ (1,0) [0|125] "percent" Vector__XXX - SG_ AirAmb_Te_ActlCld : 23|10@0+ (0.25,-128) [-128|127.75] "degC" Vector__XXX - SG_ ScFreshDataEnbl_B_Rq : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ScEnbl_D_RqCld : 25|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 775 SmartChargingData_ECG_2: 8 GWM - SG_ ScDayOfWeekId_D_RqCld : 63|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ScLocSetId_No_RqCld : 10|3@0+ (1,0) [0|7] "unitless" Vector__XXX - SG_ ScLocRdius_L_RqCld : 55|7@0+ (100,0) [0|12700] "meter" Vector__XXX - SG_ ScChrgToPc_Pc_RqCld : 47|7@0+ (1,0) [0|127] "percent" Vector__XXX - SG_ ScChrgPrfl_No_RqCld : 23|24@0+ (1,0) [0|16777215] "unitless" Vector__XXX - SG_ ScChrgDurSet_D_RqCld : 12|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ScChrgDur_T_RqCld : 7|11@0+ (1,0) [0|2045] "minute" Vector__XXX - -BO_ 774 SmartChargingData_ECG_1: 8 GWM - SG_ ScLocLongPostv_B_RqCld : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ScLocLongFrct_An_RqCld : 35|20@0+ (1E-006,0) [0|1.048575] "degrees" Vector__XXX - SG_ ScLocLongDeg_An_RqCld : 63|8@0+ (1,0) [0|255] "degrees" Vector__XXX - SG_ ScLocLattPostv_B_RqCld : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ScLocLattFrct_An_RqCld : 23|20@0+ (1E-006,0) [0|1.048575] "degrees" Vector__XXX - SG_ ScLocLattDeg_An_RqCld : 15|7@0+ (1,0) [0|127] "percent" Vector__XXX - SG_ ScLocId_No_RqCld : 6|3@0+ (1,0) [0|7] "unitless" Vector__XXX - SG_ ScLocDelete_B_RqCld : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 811 APIM_Data_FD1: 8 GWM - SG_ DistToStopover_L_Actl : 31|16@0+ (0.1,0) [0|6553.4] "kilometer" Vector__XXX - SG_ StopoverType_D_Stat : 47|3@0+ (1,0) [0|0] "SED" Vector__XXX - SG_ ExtLghtDsply_D_Stat : 7|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ExtLghtRight_D_RqMnu : 11|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ AutoLghtOvrrd_B_RqDrv : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ExtLghtRear_D_RqMnu : 14|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ExtLghtLeft_D_RqMnu : 1|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ExtLghtFront_D_RqMnu : 4|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ GoTEditMnte_T_RqMnu : 63|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ GoTEditHr_T_RqMnu : 44|5@0+ (1,0) [0|29] "SED" Vector__XXX - -BO_ 850 HEV_ChargeStat_FD1: 8 SOBDMC_HPCM_FD1 - SG_ VehElRngeNut_L_Dsply : 11|12@0+ (0.1,0) [0|409.3] "km" GWM - SG_ NxtUsgSocEst_Pc_Dsply : 7|8@0+ (0.5,0) [0|126.5] "unitless" GWM - SG_ EstmChrgTimeLP_St : 39|8@0+ (0.1,0) [0|25.4] "hour" GWM - SG_ EstmChrgTimeHP_St : 47|8@0+ (0.1,0) [0|25.4] "hour" GWM - SG_ ChargeNowDuration_St : 31|8@0+ (0.1,0) [0|25.4] "hour" GWM - -BO_ 563 MasterReset_HS3_ECGDat_FD1: 8 GWM - SG_ DrvBhavWarn_B_Rq : 12|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ OfbChrgSetSync_D_Rq : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ KeyOffPwMde_D_Stat : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ModemReset_D_Stat : 5|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ FactoryReset_St : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 1833 TesterPhysicalResVDM: 64 VDM - SG_ TesterPhysicalResVDM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 570 Suspension_Data: 8 VDM - SG_ SuspClkSync_No_Rq : 63|8@0+ (1,0) [0|253] "unitless" GWM - SG_ SuspRearRight_L_Actl : 42|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM - SG_ SuspFrntRight_L_Actl : 35|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM - SG_ SuspRear_L_Prev : 28|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM - SG_ SuspRear_L_Actl : 21|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM - SG_ SuspFrnt_L_Prev : 14|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM - SG_ SuspFrnt_L_Actl : 7|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM - -BO_ 837 VeyDynamics_Data: 8 VDM - SG_ Ccd_B_Falt : 24|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdeSusp_D_Stat : 20|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdptDrvMdePt_D_Rq : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ AdptDrvMdeChassis_D_Rq : 10|3@0+ (1,0) [0|7] "SED" GWM - SG_ CcdMsgTxt_D_RqDsply : 7|4@0+ (1,0) [0|15] "SED" ECM_Diesel,GWM - -BO_ 885 ECG_Data3_FD1: 8 GWM - SG_ BattULoChrg_D_RqOta : 55|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ VehStrtInhbt_T_Dsply : 39|16@0+ (1,0) [0|65535] "second" Vector__XXX - SG_ VehStrtInhbt_D_Dsply : 27|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ VehOnRqstr_D_Stat : 21|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ VehStrtInhbt_D_RqCld : 23|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ VehOn_D_RqCld : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ CanMsg375_No_Cnt : 11|4@0+ (1,0) [0|15] "unitless" Vector__XXX - SG_ CanMsg375_No_Crc : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ OtaActv_D_Stat : 31|4@0+ (1,0) [0|15] "SED" Vector__XXX - -BO_ 1150 LocationServices_Data1_FD1: 8 GWM - SG_ LocationServices_1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" SOBDMC_HPCM_FD1,IPMA_ADAS - -BO_ 542 LocationServices_3_FD1: 8 GWM - SG_ LocationServices_3 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" Vector__XXX - -BO_ 2612224016 PARSEDPushPCMtoGWM_ECG: 8 PCM_HEV - SG_ PARSEDPushPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 810 ECG_Data_FD1: 8 GWM - SG_ OBCCSerial_D_Rq : 45|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TlghtTest_D_RqArb : 47|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ChrgrPncSustn_B_Rq : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ NtfyDrvTrgtDist_L_Rq : 23|12@0+ (0.1,0) [0.1|409.4] "Km" SOBDMC_HPCM_FD1 - SG_ NtfyDrvSocLvl1_Pc_Rq : 39|7@0+ (1,0) [1|100] "%" SOBDMC_HPCM_FD1 - SG_ PtRmtRprt_D_Stat : 27|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ ChrgrPncEnbl_D_Rq : 9|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ExtLghtDsply_B_StatArb : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ExtLghtRight_D_RqOta : 12|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ExtLghtRear_D_RqOta : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ExtLghtLeft_D_RqOta : 3|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ExtLghtFront_D_RqOta : 6|3@0+ (1,0) [0|7] "SED" Vector__XXX - -BO_ 550 ECG_Data4_FD1: 8 GWM - SG_ PtWakeupActv1_B_Rq : 7|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - -BO_ 639 OffBrdChrg_Signals2: 8 GWM - SG_ OfbChrgPrflUpdate_B_Rq : 31|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgClearAll_B_Rq : 7|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTTouch_D_Rq : 17|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTPrcond_D_Rq : 19|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTOn_D_Rq : 10|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTMnte_D_Rq : 23|4@0+ (1,0) [0|15] "minute" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTHr_T_Rq : 15|5@0+ (1,0) [0|29] "hour" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTExtHtr_D_Rq : 1|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTElement_D_Rq : 5|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTDelete_B_Rq : 6|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgGoTUpdate_B_Rq : 8|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - -BO_ 530 OffBrdChrg_Signals: 8 GWM - SG_ OfbChrgLocIdTrgt_No_Rq : 7|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 - SG_ OfbChrgToPcWknd_D_Actl : 58|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 - SG_ OfbChrgToPcWkdy_D_Actl : 61|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 - SG_ OfbChrgSetNow_D_Rq : 63|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgSetDelete_B_Rq : 2|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OfbChrgPrflWknd_No_Rq : 39|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 - SG_ OfbChrgPrflWkdy_No_Rq : 15|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 - SG_ OfbChrgLocIdUns_B_Rq : 3|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - -BO_ 1142 ConsTip_Data_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ConsTipV_No_Dsply : 49|10@0+ (0.1,0) [0|102.1] "percent" GWM - -BO_ 817 Locking_Systems_2_FD1: 8 GWM - SG_ ChildLckMde_B_Stat : 56|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ VehLckInd_D_Rq : 58|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ DrTgateOpen_B_Rq : 59|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DrTgateExtSwMde_B_Stat : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Remote_Device_Feedback : 50|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ Veh_Lock_Requestor : 55|5@0+ (1,0) [0|31] "SED" Vector__XXX - SG_ R_Pwr_Sliding_Dr_Rqst : 36|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Power_Liftgate_Rqst : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Veh_Lock_EvNum : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ Power_Decklid_Rqst : 1|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ L_Pwr_Sliding_Dr_Rqst : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Keyfob_Pad_Msg_Count : 15|8@0+ (1,0) [0|255] "Counts" Vector__XXX - SG_ Veh_Lock_Sub_Id : 63|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ Veh_Lock_Status : 34|2@0+ (1,0) [0|3] "SED" CMR_DSMC - SG_ ChildLck_D_Dsply : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ WindowLockout_B_Stat : 35|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ RollCodeUnlock : 23|16@0+ (1,0) [0|65535] "Unitless" Vector__XXX - SG_ Lockmsgtxt_D_Rq : 39|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ FobComm_D_Stat : 5|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ LockInhibit : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 879 BCMC_Data_FD1: 8 GWM - SG_ WndwRearHeat_I_Actl : 7|11@0+ (0.1,0) [0|204.6] "ampere" ECM_Diesel - SG_ WndwRearHeat_D_Stat : 12|3@0+ (1,0) [0|7] "SED" ECM_Diesel - -BO_ 878 DCACA_Data4: 8 PCM_HEV - SG_ DcacGfciTest_B_Rq : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ DcacOut_Pw_DsplyMx : 23|10@0+ (10,0) [0|10220] "watts" GWM - SG_ DcacOut1_Pw_Dsply : 39|7@0+ (100,0) [0|12600] "watts" GWM - SG_ DcacOut2_Pw_Dsply : 47|7@0+ (100,0) [0|12600] "watts" GWM - SG_ DcacHw_D_Confg : 11|4@0+ (1,0) [0|15] "SED" GWM - SG_ DcacFaltMsgTxt_D_Rq : 15|4@0+ (1,0) [0|15] "SED" GWM - SG_ DcacLoFuelMsgTxt_D_Rq : 29|5@0+ (1,0) [0|31] "SED" GWM - SG_ DcacEngOnMsgTxt_D_Rq : 55|2@0+ (1,0) [0|3] "SED" GWM - SG_ DcacElPw_D_Stat : 2|2@0+ (1,0) [0|3] "SED" GWM - SG_ PwBedPnlEnbl_B_Rq : 3|1@0+ (1,0) [0|1] "SED" GWM - SG_ DcacOn_B_Rq : 4|1@0+ (1,0) [0|1] "SED" GWM - SG_ DcacSys_B_Falt : 5|1@0+ (1,0) [0|1] "SED" GWM - SG_ DcacLedCtl_D_Rq : 7|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 395 HeadUpDisplayReq_FD1: 8 GWM - SG_ SelDrvMdeCnfm_D_Stat : 35|2@0+ (1,0) [0|3] "SED" ABS_ESC - -BO_ 2611055832 PARSEDPhysGWM_ECGtoSODR: 8 GWM - SG_ PARSEDPhysGWM_ECGtoSODR : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2611054808 PARSEDPhysGWM_ECGtoSODL: 8 GWM - SG_ PARSEDPhysGWM_ECGtoSODL : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2611026136 PARSEDPhysGWM_ECGtoSODCMD: 8 GWM - SG_ PARSEDPhysGWM_ECGtoSODCMD : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2611025112 PARSEDPhysGWM_ECGtoSODCMC: 8 GWM - SG_ PARSEDPhysGWM_ECGtoSODCMC : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2610975960 PARSEDPhysGWM_ECGtoCCM: 8 GWM - SG_ PARSEDPhysGWM_ECGtoCCM : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2610007256 OTAPhysGWM_ECGtoSODR: 8 GWM - SG_ OTAPhysGWM_ECGtoSODR : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2610006232 OTAPhysGWM_ECGtoSODL: 8 GWM - SG_ OTAPhysGWM_ECGtoSODL : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2609977560 OTAPhysGWM_ECGtoSODCMD: 8 GWM - SG_ OTAPhysGWM_ECGtoSODCMD : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2609976536 OTAPhysGWM_ECGtoSODCMC: 8 GWM - SG_ OTAPhysGWM_ECGtoSODCMC : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2609927384 OTAPhysGWM_ECGtoCCM: 8 GWM - SG_ OTAPhysGWM_ECGtoCCM : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2611175523 PARSEDPhysSODRtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysSODRtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224099 PARSEDPushSODRtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysSODR2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2611175522 PARSEDPhysSODLtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysSODLtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224098 PARSEDPushSODLtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysSODL2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2611175494 PARSEDPhysSODCMDtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysSODCMDtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224070 PARSEDPushSODCMDtoGWM: 8 IPMA_ADAS - SG_ PARSEDPhysSODCMD2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2611175493 PARSEDPhysSODCMCtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysSODCMCtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224069 PARSEDPushSODCMCtoGWM: 8 IPMA_ADAS - SG_ PARSEDPhysSODCMC2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2611175445 PARSEDPhysCCMtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysCCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224021 PARSEDPushCCMtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysCCM2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126947 OTAPhysSODRtoGWM_ECG: 8 IPMA_ADAS - SG_ OTAPhysSODRtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126946 OTAPhysSODLtoGWM_ECG: 8 IPMA_ADAS - SG_ OTAPhysSODLtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126918 OTAPhysSODCMDtoGWM_ECG: 8 IPMA_ADAS - SG_ OTAPhysSODCMDtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126917 OTAPhysSODCMCtoGWM_ECG: 8 IPMA_ADAS - SG_ OTAPhysSODCMCtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126869 OTAPhysCCMtoGWM_ECG: 8 IPMA_ADAS - SG_ OTAPhysCCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 984 IPMA_Data: 8 IPMA_ADAS - SG_ FeatConfigIpmaActl : 7|16@0+ (1,0) [0|65535] "Undefined" GWM - SG_ FeatNoIpmaActl : 23|16@0+ (1,0) [0|65535] "Number" GWM - SG_ PersIndexIpma_D_Actl : 39|3@0+ (1,0) [0|7] "SED" GWM - SG_ AhbcRampingV_D_Rq : 57|2@0+ (1,0) [0|3] "SED" GWM - SG_ LaActvStats_D_Dsply : 55|5@0+ (1,0) [0|31] "SED" GWM - SG_ LaDenyStats_B_Dsply : 32|1@0+ (1,0) [0|1] "SED" GWM - SG_ LaHandsOff_D_Dsply : 50|2@0+ (1,0) [0|3] "SED" GWM - SG_ CamraDefog_B_Req : 36|1@0+ (1,0) [0|1] "SED" GWM - SG_ CamraStats_D_Dsply : 35|2@0+ (1,0) [0|3] "SED" GWM - SG_ DasAlrtLvl_D_Dsply : 42|3@0+ (1,0) [0|7] "SED" GWM - SG_ DasStats_D_Dsply : 47|2@0+ (1,0) [0|3] "SED" GWM - SG_ DasWarn_D_Dsply : 44|2@0+ (1,0) [0|3] "SED" GWM - SG_ AhbHiBeam_D_Rq : 59|2@0+ (1,0) [0|3] "SED" GWM - SG_ Passthru_63 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ Passthru_48 : 48|1@0+ (1,0) [0|1] "" XXX - -BO_ 985 IPMA_Data2: 8 IPMA_ADAS - SG_ LdwChime_B_Rq : 34|1@0+ (1,0) [0|1] "SED" GWM - SG_ TsrRegionTxt_D_Stat : 47|5@0+ (1,0) [0|31] "SED" GWM - SG_ SblmPedCrossScnr_B_Stat : 33|1@0+ (1,0) [0|1] "SED" GWM - SG_ LongCtrlEnbl_D_Rq : 42|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ SblmRndAbtScnr_B_Stat : 9|1@0+ (1,0) [0|1] "SED" GWM - SG_ DasAlrtInfo_D_Dsply : 13|2@0+ (1,0) [0|3] "SED" GWM - SG_ IaccVLim_D_Rq : 23|8@0+ (1,0) [0|255] "SED" ECM_Diesel,GWM - SG_ IaccVLimUnit_D_Rq : 11|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM - SG_ IsaVLim_D_Rq : 7|8@0+ (1,0) [0|255] "SED" ECM_Diesel,GWM - SG_ SblmStopScnr_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ SblmYieldScnr_B_Stat : 31|1@0+ (1,0) [0|1] "SED" GWM - SG_ IsaVLimUnit_D_Rq : 15|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM - SG_ AdbDividedRoad_B_Stat : 30|1@0+ (1,0) [0|1] "SED" GWM - SG_ LcwaMsgTxt_D_Stat : 37|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbDrvSide_B_Stat : 35|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 992 Personality_Data_FD1: 8 GWM - SG_ MsgCntrDsplyOp_D_Rq : 36|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ MsgCntrFeatNoRq : 7|16@0+ (1,0) [0|65535] "Number" IPMA_ADAS - SG_ MsgCntrFeatConfigRq : 23|16@0+ (1,0) [0|65535] "unitless" IPMA_ADAS - SG_ MsgCntrPersIndex_D_Rq : 39|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - -BO_ 2612019416 PARSEDPushFcGWM_ECGtoPCM: 8 GWM - SG_ PARSEDPhysGWM_ECG2toPCM : 7|29@0+ (1,0) [0|536870911] "unitless" PCM,PCM_HEV,ECM_Diesel - -BO_ 943 IPMA_Data4: 8 IPMA_ADAS - SG_ VehVActlAdas_D_Qf : 9|2@0+ (1,0) [0|3] "SED" PCM,PCM_HEV,ECM_Diesel - SG_ Veh_V_RqLsc : 23|14@0+ (0.01,0) [0|163.83] "kph" PCM,PCM_HEV,ECM_Diesel - SG_ Veh_V_ActlAdas : 7|14@0+ (0.01,0) [0|163.83] "kph" PCM,PCM_HEV,ECM_Diesel - SG_ AdasLcDistToObj_L_Actl : 39|12@0+ (0.002,0) [0|8.186] "meter" PCM,PCM_HEV,ECM_Diesel - -BO_ 515 PowertrainData_12: 8 ECM_Diesel - SG_ PtIgnSwtch_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" GWM - SG_ PtIgnSwtch_No_Cnt : 5|4@0+ (1,0) [0|15] "Unitless" GWM - SG_ PtIgnSwtch_D_Stat : 7|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 1111 TrailerAid_Stat2_FD1: 8 GWM - SG_ TrlrYawWActl_D_Qf : 43|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM - SG_ TrlrYaw_W_Actl : 7|16@0+ (0.0002,-6.5) [-6.5|6.6066] "radians/second" IPMA_ADAS,PSCM - SG_ TrlrHitYaw_AnRate_Actl : 27|12@0+ (0.1,-50) [-50|359.3] "degrees/second" IPMA_ADAS,PSCM - SG_ TrlrHitchYaw_D_Stat : 47|4@0+ (1,0) [0|15] "SED" IPMA_ADAS,PSCM - SG_ TrlrHitchYaw_An_Actl : 23|12@0+ (0.1,-90) [-90|319.3] "degrees" IPMA_ADAS,PSCM - -BO_ 1106 TrailerAid_Stat1_FD1: 8 GWM - SG_ TrlrSnsId_No_Actl : 7|48@0+ (1,0) [0|281474976710653] "unitless" IPMA_ADAS,PSCM - -BO_ 1985 TesterPhysicalReqCMR_DSMC: 64 TSTR - SG_ TesterPhysicalReqCMR_DSMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" CMR_DSMC - -BO_ 1993 TesterPhysicalResCMR_DSMC: 64 CMR_DSMC - SG_ TesterPhysicalResCMR_DSMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1104 DrvStatMonData: 8 CMR_DSMC - SG_ DrvEngageLevel_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS - SG_ DrvEngageLevel_No_Cnt : 19|4@0+ (1,0) [0|15] "Unitless" IPMA_ADAS - SG_ DrvEngageLevel_D_Stat : 13|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ DrvImpLvlConfid_D_Stat : 39|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ DrvImpairLvl_D_Stat : 23|4@0+ (1,0) [0|15] "SED" IPMA_ADAS - SG_ DrvEngLvlConfid_D_Stat : 10|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ DrvCamPassIR_D_Stat : 36|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ DrvCamera_D_Stat : 15|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ DrvCamDrvIR_D_Stat : 1|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ DrvAttentZone_D_Stat : 5|4@0+ (1,0) [0|15] "SED" IPMA_ADAS - SG_ DrvAlertSt_D_Stat : 7|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - -BO_ 1503 CMR_DSMC_AutoSar_NetwrkMgt: 8 CMR_DSMC - SG_ CMR_DSMC_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_GWNMProxY : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_AutoSarNMReserved : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_AutoSarNMReserve4 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_AutoSarNMReserve3 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_AutoSarNMReserve2 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CMR_DSMC_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX - -BO_ 2610995416 PARSEDPhysGWM_ECGtoABS: 8 GWM - SG_ PARSEDPhysGWM_ECGtoABS : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC - -BO_ 2612043992 PARSEDPushFcGWM_ECGtoABS: 8 GWM - SG_ PARSEDPhysGWM_ECG2toABS : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC - -BO_ 2609946840 OTAPhysGWM_ECGtoABS: 8 GWM - SG_ OTAPhysGWM_ECGtoABS : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC - -BO_ 2611175464 PARSEDPhysABStoGWM_ECG: 8 ABS_ESC - SG_ PARSEDPhysABStoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "Unitless" GWM - -BO_ 2612224040 PARSEDPushABStoGWM_ECG: 8 ABS_ESC - SG_ PARSEDPhysABS2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126888 OTAPhysABStoGWM_ECG: 8 ABS_ESC - SG_ OTAPhysABStoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610988248 PARSEDPhysGWM_ECGtoIPMA: 8 GWM - SG_ PARSEDPhysGWM_ECGtoIPMA : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 2609939672 OTAPhysGWM_ECGtoIPMA: 8 GWM - SG_ OTAPhysGWM_ECGtoIPMA : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS - -BO_ 1114 TrailerAid_Data_FD1: 8 GWM - SG_ TrailCtlSwtch_B_Stat2 : 16|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ TrlBrkInitOut_D_Rq : 60|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 1116 TrailerAid_Data3_FD1: 8 GWM - SG_ TrlrAidSetup_D2_Rq : 4|4@0+ (1,0) [0|15] "SED" IPMA_ADAS,PSCM - SG_ TrlrAidEnbl_D2_Rq : 7|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,PSCM - SG_ TrlrTrgtToBmpr_L_Actl : 38|7@0+ (0.0127,0) [0|1.6129] "meter" IPMA_ADAS - SG_ TrlrTrgtPtrnId_No_Mem : 45|6@0+ (1,0) [0|63] "unitless" IPMA_ADAS - SG_ TrlrRvrseCancl_B_Rq : 0|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM - SG_ TrlrIdType_D_Stat : 51|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM - SG_ TrlrId_No_Actl : 55|4@0+ (1,0) [0|15] "unitless" IPMA_ADAS,PSCM - SG_ TrlrBallToBmpr_L_Actl : 22|7@0+ (0.0127,0) [0|1.6129] "meter" IPMA_ADAS,PSCM - SG_ TrlrAxleToBmpr_L_Actl : 31|9@0+ (0.0254,0) [0|12.9794] "meter" IPMA_ADAS,PSCM - SG_ TrlrAnOffstDir_D_Mem : 47|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM - SG_ TrlrAnOffst_An_Mem : 15|9@0+ (0.1,0) [0|51.1] "degrees" IPMA_ADAS - SG_ TrlrTrgtOffst_L_Actl : 63|7@0+ (0.0127,0) [0|1.6129] "meter" IPMA_ADAS - -BO_ 2611175457 PARSEDPhysIPMAtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysIPMAtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224033 PARSEDPushIPMAtoGWM_ECG: 8 IPMA_ADAS - SG_ PARSEDPhysIPMA2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126881 OTAPhysIPMAtoGWM_ECG: 8 IPMA_ADAS - SG_ OTAPhysIPMAtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 1085 Low_Voltage_Power_Data_FD1: 8 PCM - SG_ ULoRgenTestMde_B_Stat : 50|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwSrcULoOvrTe_B_Actl : 7|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwSrcULoFalt_D_Stat : 5|2@0+ (1,0) [0|3] "SED" GWM - SG_ PwSrcULoDcnnt_B_Stat : 3|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwSrcULo_Pc_Mx : 31|8@0+ (0.4,0) [0|101.6] "%" GWM - SG_ PwSrcULoComm_B_Falt : 2|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwSrcULo_I_Mx : 23|8@0+ (1,0) [0|254] "ampere" PCM_HEV,GWM - SG_ PwSrcULo_I_Actl : 15|8@0+ (1,0) [0|254] "ampere" PCM_HEV,GWM - -BO_ 791 Cluster_HEV_Data8_FD1: 8 GWM - SG_ EngAirFilt_B_RqReset : 48|1@0+ (1,0) [0|1] "SED" ECM_Diesel - SG_ GpsElMdeSel_B_Rq : 50|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ LongTermReset_B_Rq : 49|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DrvEffLvl_No_Stat : 61|6@0+ (1,0) [0|61] "unitless" Vector__XXX - SG_ ConsAvgTrip_Fe_Dsply : 31|24@0+ (0.0001,0) [0|1677.7215] "litre/100km" Vector__XXX - -BO_ 2610970840 PARSEDPhysGWM_ECGtoPCM: 8 GWM - SG_ PARSEDPhysGWM_ECGtoPCM : 7|29@0+ (1,0) [0|536870911] "unitless" ECM_Diesel,PCM_HEV,PCM - -BO_ 2609922264 OTAPhysGWM_ECGtoPCM: 8 GWM - SG_ OTAPhysGWM_ECGtoPCM : 7|29@0+ (1,0) [0|536870911] "unitless" ECM_Diesel,PCM_HEV,PCM - -BO_ 868 BattRgenLo_4_FD1: 8 GWM - SG_ BattRgenLoStat_D_Qlty : 25|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM - SG_ BattRgenLoSoc_Pc_Actl : 23|7@0+ (1,0) [0|100] "percent" PCM_HEV,PCM - SG_ BattRgenLoPulse_U_Pred : 15|8@0+ (0.0625,0) [0|15.9375] "volt" PCM_HEV,PCM - SG_ BattRgenLoPrtct_B_Stat : 39|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM - SG_ BattRgenLoDChrg_D_Stat : 27|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM - SG_ BattRgenLoDchrg_B_Rq : 28|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM - SG_ BattRgenLoChrg_D_Stat : 30|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM - SG_ BattRgenLoChrg_B_Rq : 31|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM - SG_ BattRgenLo_T_Est : 7|8@0+ (8,0) [0|2040] "second" PCM_HEV,PCM - SG_ BattRgenLo_B_Falt : 16|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM - -BO_ 867 BattRgenLo_3_FD1: 8 GWM - SG_ BattRgenLoBalnc_B_Rq : 16|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM - SG_ BattRgenLo_Te_Hi : 55|8@0+ (1,-20) [-20|235] "degC" PCM_HEV,PCM - SG_ BattRgenLo_Te_Actl : 47|8@0+ (1,-60) [-60|194] "degC" PCM_HEV,PCM - SG_ BattRgenLo_R_Actl : 31|9@0+ (0.0625,0) [0|31.9375] "milliohm" PCM_HEV,PCM - SG_ BattRgenLo_AhRide_Actl : 15|15@0+ (0.0078125,-100) [-100|155.9921875] "amperehour" PCM_HEV,PCM - SG_ BattRgenLo_Ah_Actl : 7|8@0+ (0.1,0) [0|25.5] "amperehour" PCM_HEV,PCM - -BO_ 866 BattRgenLo_2_FD1: 8 GWM - SG_ BattRgenLoOpen_U_Actl : 55|9@0+ (0.025,8.5) [8.5|21.275] "volt" PCM_HEV,PCM - SG_ BattRgenLoDchrg_U_Mn : 39|9@0+ (0.025,4) [4|16.775] "volt" PCM_HEV,PCM - SG_ BattRgenLoDchrg_I_Mx : 31|8@0+ (2,0) [0|510] "ampere" PCM_HEV,PCM - SG_ BattRgenLoChrg_U_Mx : 15|9@0+ (0.025,10.6) [10.6|23.375] "volt" PCM_HEV,PCM - SG_ BattRgenLoChrg_I_Mx : 7|8@0+ (2,0) [0|510] "ampere" PCM_HEV,PCM - -BO_ 865 BattRgenLo_1_FD1: 8 GWM - SG_ BattRgenLo_U_Actl : 23|11@0+ (0.015625,0) [0|31.96875] "volt" PCM_HEV,PCM - SG_ BattRgenLo_I_Actl : 7|16@0+ (0.015625,-512) [-512|511.96875] "ampere" PCM_HEV,PCM - -BO_ 2611175440 PARSEDPhysPCMtoGWM_ECG: 8 PCM - SG_ PARSEDPhysPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126864 OTAPhysPCMtoGWM_ECG: 8 PCM - SG_ OTAPhysPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2611175441 PARSEDHPCMtoGWM_ECG_FD1: 8 SOBDMC_HPCM_FD1 - SG_ PARSEDPhysHPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2612224017 PARSEDPushSOBDMCtoGWM_FD1: 8 SOBDMC_HPCM_FD1 - SG_ PARSEDPhysHPCM2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 2610126865 OTAPhysSOBDMCtoGWM_FD1: 8 SOBDMC_HPCM_FD1 - SG_ OTAPhysHPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM - -BO_ 1679 SOBDMC_RapidData_Resp4_FD1: 8 SOBDMC_HPCM_FD1 - SG_ UUDTSOBDMCResponse4 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1678 SOBDMC_RapidData_Resp3_FD1: 8 SOBDMC_HPCM_FD1 - SG_ UUDTSOBDMCResponse3 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1677 SOBDMC_RapidData_Resp2_FD1: 8 SOBDMC_HPCM_FD1 - SG_ UUDTSOBDMCResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1676 SOBDMC_RapidData_Resp1_FD1: 8 SOBDMC_HPCM_FD1 - SG_ UUDTSOBDMCResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1445 SOBDMC_AutoSar_NetMgmt_FD1: 8 SOBDMC_HPCM_FD1 - SG_ SOBDMC_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ SOBDMC_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX - -BO_ 1144 MHT_EV_Wakeup_FD1: 8 SOBDMC_HPCM_FD1 - SG_ WakeAlarm0_T_Rq : 7|15@0+ (1,0) [0|32767] "minute" GWM - SG_ WakeAlarm0_B_Typ : 21|1@0+ (1,0) [0|1] "SED" GWM - SG_ PreCondBatt_B_Actl : 32|1@0+ (1,0) [0|1] "SED" GWM - SG_ HtrnDcdcDis_B_Rq : 26|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgNowEvnt_B_Stat : 22|1@0+ (1,0) [0|1] "SED" GWM - SG_ CabinDrvSustn_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM - SG_ BattChrgTrgtSoC_D_Rq : 35|3@0+ (1,0) [0|7] "Percent" GWM - SG_ CabnEvapSovFront_B_Rq : 38|1@0+ (1,0) [0|1] "SED" GWM - SG_ HeatCoreSovRear_B_Rq : 36|1@0+ (1,0) [0|1] "SED" GWM - SG_ BattChlrSov_B_Rq : 39|1@0+ (1,0) [0|1] "SED" GWM - SG_ CabnEvapSovRear_B_Rq : 37|1@0+ (1,0) [0|1] "SED" GWM - SG_ BrkAppl_D_RqPt : 25|2@0+ (1,0) [0|3] "SED" GWM - SG_ HtrnCnnctPwr_B_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ PtcHtr_D_Stat : 18|2@0+ (1,0) [0|3] "SED" GWM,PCM_HEV - SG_ HtrnClntFlw_D_Rq : 20|2@0+ (1,0) [0|3] "SED" GWM - SG_ BattTracDrvSustn_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BattTracClntVlv_B_Rq : 47|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 1141 Cluster_HEV_Data9_FD1: 8 SOBDMC_HPCM_FD1 - SG_ OfbChrgSetSync_D_Stat : 31|2@0+ (1,0) [0|3] "SED" GWM - SG_ PtRmtRprt_D_Rq : 59|4@0+ (1,0) [0|15] "SED" GWM - SG_ MtrTrac2_Tq_Actl : 29|12@0+ (1,-2047) [-2047|2048] "Nm" GWM - SG_ NtfctnConflict1_D_Rq : 53|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 1140 Cluster_HEV_Data7_FD1: 8 SOBDMC_HPCM_FD1 - SG_ RgenEvntLvl_Pc_Dsply : 9|10@0+ (0.1,0) [0|102.1] "percent" GWM - SG_ BrkEvntComplt_B_Dsply : 31|1@0+ (1,0) [0|1] "SED" GWM - SG_ PreCondStat_D_Dsply : 12|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 1139 GWM_HPCM_i_FrP11_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ActChrgStrtYr_No2_Actl : 7|7@0+ (1,2017) [2017|2144] "year" GWM - SG_ BattChrgTrgtLMax_T_Est : 10|11@0+ (1,0) [0|2045] "minute" GWM - SG_ ActChrgStrtYr_No_Actl : 60|5@0+ (1,2010) [2010|2040] "year" GWM - SG_ ActChrgStrtMin_No_Actl : 29|6@0+ (1,0) [0|61] "minute" GWM - SG_ ActChrgStrtHr_No_Actl : 36|5@0+ (1,0) [0|29] "hour" GWM - SG_ ActChrgStrtDay_No_Actl : 44|5@0+ (1,1) [1|31] "days" GWM - SG_ ActChrgStrMnth_No_Actl : 51|4@0+ (1,1) [1|15] "month" GWM - -BO_ 1138 GWM_HPCM_i_FrP10_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ActChrgEndYr_No2_Actl : 7|7@0+ (1,2017) [2017|2144] "year" GWM - SG_ BattChrgTrgtLMin_T_Est : 10|11@0+ (1,0) [0|2045] "minute" GWM - SG_ ActChrgEndYr_No_Actl : 60|5@0+ (1,2010) [2010|2040] "year" GWM - SG_ ActChrgEndMnth_No_Actl : 51|4@0+ (1,1) [1|15] "month" GWM - SG_ ActChrgEndMin_No_Actl : 29|6@0+ (1,0) [0|61] "minute" GWM - SG_ ActChrgEndHr_No_Actl : 36|5@0+ (1,0) [0|29] "hour" GWM - SG_ ActChrgEndDay_No_Actl : 44|5@0+ (1,1) [1|31] "days" GWM - -BO_ 1089 MtrTracData_1_FD1: 8 SOBDMC_HPCM_FD1 - SG_ Mtr2Aout_W_ActlMntr : 45|10@0+ (6.28,-3209) [-3209|3209.16] "radians/sec" GWM - SG_ Inv1_Te_Actl : 63|8@0+ (1,-40) [-40|213] "degC" GWM - SG_ MtrTrac2Coil_Te_Actl : 23|8@0+ (1,-40) [-40|213] "degC" GWM - SG_ MtrTrac2_U_Actl : 39|10@0+ (1,0) [0|1023] "volt" GWM - SG_ MtrTrac2Falt_B_Stat : 50|1@0+ (1,0) [0|1] "SED" GWM - SG_ MtrTrac2TeAlrm_B_Stat : 49|1@0+ (1,0) [0|1] "SED" GWM - SG_ Mtr2CntlTeAlrm_B_Stat : 51|1@0+ (1,0) [0|1] "SED" GWM - SG_ MtrTrac2Inv_Te_Actl : 31|8@0+ (1,-40) [-40|213] "degC" GWM - SG_ MtrTrac2_I_Actl : 7|16@0+ (0.1,-1000) [-1000|5553.4] "ampere" GWM - -BO_ 1088 PreCond_Hev_Data1_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ChrgTMatch_B_Stat : 55|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgStat_D2_Dsply : 7|4@0+ (1,0) [0|15] "SED" GWM - SG_ HvacPrecondRecirc_D_Rq : 63|2@0+ (1,0) [0|3] "SED" GWM - SG_ HvacPrecondMode2_D_Rq : 51|4@0+ (1,0) [0|15] "SED" GWM - SG_ HvacPrecondBlwr2_D_Rq : 61|4@0+ (1,0) [0|15] "SED" GWM - SG_ HvacPrecondAC_D_Rq : 57|2@0+ (1,0) [0|3] "SED" GWM - SG_ HvacPrecond_Te_Rq : 44|5@0+ (0.5,14.5) [14.5|30] "deg C" GWM - SG_ BattChrgInhbt_D_Rq : 53|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 1040 AC_Compressor_Req_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ElCmprEnbl_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV - SG_ ElCmpr_N_Rq : 15|8@0+ (50,0) [0|12750] "RPM" GWM - -BO_ 1016 GoTimeSettings_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ChrgGoTElement_B_Dsply : 27|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocIdCurnt_D_Uns : 31|4@0+ (1,0) [0|15] "unitless" GWM - SG_ ChrgGoTTouchEnbl_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgGoTTouch_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgGoTPrcond_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ ChrgGoTNext_D_Stat : 19|4@0+ (1,0) [0|15] "Unitless" GWM - SG_ ChrgGoTMnte_D_Stat : 23|4@0+ (1,0) [0|15] "SED" GWM - SG_ ChrgGoTHr_T_Stat : 15|5@0+ (1,0) [0|29] "hour" GWM - SG_ ChrgGoTExtHtrEnbl_B_Rq : 1|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgGoTExtHtr_B_Stat : 2|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgGoTElement_D_Stat : 6|4@0+ (1,0) [0|15] "Unitless" GWM - SG_ ChrgGoTAllOn_B_Stat : 7|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 1013 ChargeSettings_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ChrgToPcWkndSav_D_Stat : 60|3@0+ (1,0) [0|7] "SED" GWM - SG_ ChrgToPcWkdySav_D_Stat : 63|3@0+ (1,0) [0|7] "SED" GWM - SG_ ChrgProgIdSaved_D_Stat : 51|4@0+ (1,0) [0|15] "Unitless" GWM - SG_ ChrgNowEnbl_B_Saved : 56|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocIdUnsAck_B_Stat : 57|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocIdCurnt_D_Sav : 55|4@0+ (1,0) [0|15] "unitless" GWM - SG_ ChrgPrflWknd_No_Actl : 31|24@0+ (1,0) [0|16777215] "unitless" GWM - SG_ ChrgPrflWkdy_No_Actl : 7|24@0+ (1,0) [0|16777215] "unitless" GWM - -BO_ 1012 Saved_Charge_Location_FD1: 8 SOBDMC_HPCM_FD1 - SG_ ChrgNowCurnt_B_Dsply : 58|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocSaved_B_Dsply : 57|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocLongPostv_B_Sav : 59|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocLongFrct_An_Sav : 47|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM - SG_ ChrgLocLongDeg_An_Sav : 39|8@0+ (1,0) [0|255] "degrees" GWM - SG_ ChrgLocLattPostv_B_Sav : 24|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocLattFrct_An_Sav : 7|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM - SG_ ChrgLocLattDeg_An_Sav : 31|7@0+ (1,0) [0|127] "unitless" GWM - SG_ ChrgLocId_D_Sav : 19|4@0+ (1,0) [0|15] "unitless" GWM - -BO_ 1011 Unsaved_Charge_LocationFD1: 8 SOBDMC_HPCM_FD1 - SG_ ChrgLocLongPostv_B_Uns : 59|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocLongFrct_An_Uns : 47|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM - SG_ ChrgLocLongDeg_An_Uns : 39|8@0+ (1,0) [0|255] "degrees" GWM - SG_ ChrgLocLattPostv_B_Uns : 24|1@0+ (1,0) [0|1] "SED" GWM - SG_ ChrgLocLattFrct_An_Uns : 7|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM - SG_ ChrgLocLattDeg_An_Uns : 31|7@0+ (1,0) [0|127] "unitless" GWM - SG_ ChrgLocId_D_Uns : 19|4@0+ (1,0) [0|15] "unitless" GWM - -BO_ 871 Cluster_HEV_Data4_FD1: 8 SOBDMC_HPCM_FD1 - SG_ BattElecPerf_D_Actl : 55|3@0+ (1,0) [0|7] "SED" GWM - SG_ BattChrgTrgtLPt_T_Est : 2|11@0+ (1,0) [0|2045] "minute" GWM - SG_ BattChrgTrgSocPt_T_Est : 18|11@0+ (1,0) [0|2045] "minute" GWM - SG_ BattChrgCmpltPt_T_Est : 34|11@0+ (1,0) [0|2045] "minute" GWM - -BO_ 786 Cluster_HEV_Data1_FD1: 8 SOBDMC_HPCM_FD1 - SG_ RgenTrip_Pc_Dsply : 33|10@0+ (0.1,0) [0|102.3] "percent" GWM - SG_ RgenTrip_L_Dsply : 55|16@0+ (0.1,0) [0|6553.3] "kilometer" GWM - SG_ ChrgStat_D_Dsply : 36|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 72 Global_PATS_Target2_FD1: 8 SOBDMC_HPCM_FD1 - SG_ immoTarget2Status : 7|3@0+ (1,0) [0|7] "SED" GWM - SG_ immoTarget2Data : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" GWM - SG_ immoTarget2Cmd : 4|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 912 PowerDist_Data1_FD1: 8 GWM - SG_ CabnEvapSovFront_D_Stat : 15|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - SG_ BattChlrSov_D_Stat : 7|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracClntVlv_D_Stat : 28|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - -BO_ 874 PowerDistData_2_FD1: 8 GWM - SG_ AirCondCluOpen_D_Falt : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ AirCondCluLife_D_Falt : 19|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ AirCondCluGnd_D_Falt : 21|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ AirCondClu_D_Stat : 31|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ AirCondCluBatt_D_Falt : 23|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ BattTracShrtGrnd_D_Falt : 9|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracShrtBatt_D_Falt : 11|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracOpnCirct_D_Falt : 13|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracLifeLim_D_Falt : 15|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattChlrShrtGrnd_D_Falt : 1|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattChlrShrtBatt_D_Falt : 3|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattChlrOpnCirct_D_Falt : 5|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattChlrLifeLim_D_Falt : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracLow_D_Falt : 28|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - -BO_ 651 TCU_Send_Signals_FD1: 8 GWM - SG_ TelematicsSrvc_D_St : 47|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - SG_ EmgcyCallMute_D_Stat : 39|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ OfbChrgSetSync_D_Rq : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 529 APIM_Request_Signals_5_FD1: 8 GWM - SG_ OnbChrgToPcWknd_D_Actl : 2|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 - SG_ OnbChrgToPcWkdy_D_Actl : 60|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 - SG_ OnbChrgSetNow_D_Rq : 63|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgSetDelete_B_Rq : 3|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgPrflWknd_No_Rq : 39|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 - SG_ OnbChrgPrflWkdy_No_Rq : 15|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 - SG_ OnbChrgPrflUpdate_B_Rq : 56|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgLocIdUns_B_Rq : 57|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgLocIdTrgt_No_Rq : 7|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 - -BO_ 66 Global_PATS_Ctrl_Info2_FD1: 8 GWM - SG_ immoControlData_T2 : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" SOBDMC_HPCM_FD1 - SG_ immoControlCmd_T2 : 7|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - -BO_ 2610971864 PARSEDPhysGWMtoSOBDMC_FD1: 8 GWM - SG_ PARSEDPhysGWM_ECGtoHPCM : 7|29@0+ (1,0) [0|536870911] "unitless" SOBDMC_HPCM_FD1 - -BO_ 2612002008 PARSEDFuncGWM_ECG_FD1: 8 GWM - SG_ PARSEDFuncGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM_HEV,PCM,SOBDMC_HPCM_FD1 - -BO_ 2609923288 OTAPhysGWM_ECGtoSOBDMC_FD1: 8 GWM - SG_ OTAPhysGWM_ECGtoHPCM : 7|29@0+ (1,0) [0|536870911] "unitless" SOBDMC_HPCM_FD1 - -BO_ 2610953432 OTAFuncGWM_ECG_FD1: 8 GWM - SG_ OTAFuncGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM_HEV,PCM,SOBDMC_HPCM_FD1 - -BO_ 2022 TesterPhysicalReqSOBDMC_FD: 64 TSTR - SG_ TesterPhysicalReqSOBDMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" SOBDMC_HPCM_FD1 - -BO_ 1124 APIMGPS_Data_Nav_3_FD1: 8 GWM - SG_ GPS_Vdop : 63|5@0+ (0.2,0) [0|5.8] "unitless" IPMA_ADAS - SG_ GPS_Speed : 47|8@0+ (1,0) [0|253] "MPH" Vector__XXX - SG_ GPS_Sat_num_in_view : 7|5@0+ (1,0) [0|29] "unitless" SOBDMC_HPCM_FD1 - SG_ GPS_MSL_altitude : 15|12@0+ (10,-20460) [-20460|20470] "feet" Vector__XXX - SG_ GPS_Heading : 31|16@0+ (0.01,0) [0|655.33] "Degrees" IPMA_ADAS - SG_ GPS_Hdop : 55|5@0+ (0.2,0) [0|5.8] "unitless" IPMA_ADAS - SG_ GPS_dimension : 2|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - -BO_ 1119 Voltage_Power_Data2_FD1: 8 GWM - SG_ CoolFanDcdc_D_Rq : 5|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ DcdcClntFlw_D_Rq : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - -BO_ 132 GlobalClock_Data_FD1: 8 GWM - SG_ GlblClkYr_No_Actl : 7|8@0+ (1,2000) [2000|2255] "year" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GlblClkScnd_No_Actl : 47|8@0+ (1,0) [0|255] "second" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GlblClkMnte_No_Actl : 39|8@0+ (1,0) [0|255] "minute" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GlblClkHr_No_Actl : 55|8@0+ (1,0) [0|255] "hour" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GlblClkDay_No_Actl : 23|16@0+ (1,0) [0|65535] "julian day" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS - -BO_ 1990 TesterPhysicalReqSODR: 64 TSTR - SG_ TesterPhysicalReqSODR : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS - -BO_ 1892 TesterPhysicalReqCCM: 64 TSTR - SG_ TesterPhysicalReqCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS - -BO_ 1798 TesterPhysicalReqIPMA: 64 TSTR - SG_ TesterPhysicalReqIPMA : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS - -BO_ 1123 APIMGPS_Data_Nav_2_FD1: 8 GWM - SG_ GpsUtcYr_No_Actl : 55|5@0+ (1,2010) [2010|2040] "Year" IPMA_ADAS - SG_ GpsUtcMnth_No_Actl : 47|4@0+ (1,1) [1|15] "Month" IPMA_ADAS - SG_ GpsUtcDay_No_Actl : 37|5@0+ (1,1) [1|32] "Day" IPMA_ADAS - SG_ GPS_UTC_seconds : 23|6@0+ (1,0) [0|59] "seconds" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GPS_UTC_minutes : 15|6@0+ (1,0) [0|59] "Minutes" IPMA_ADAS - SG_ GPS_UTC_hours : 7|5@0+ (1,0) [0|23] "Hours" IPMA_ADAS - SG_ GPS_Pdop : 31|5@0+ (0.2,0) [0|5.8] "unitless" IPMA_ADAS - SG_ GPS_Compass_direction : 26|4@0+ (1,0) [0|15] "SED" IPMA_ADAS - SG_ GPS_Actual_vs_Infer_pos : 38|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ Gps_B_Falt : 2|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS - -BO_ 1122 APIMGPS_Data_Nav_1_FD1: 8 GWM - SG_ GpsHsphLongEast_D_Actl : 9|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,SOBDMC_HPCM_FD1 - SG_ GpsHsphLattSth_D_Actl : 25|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,SOBDMC_HPCM_FD1 - SG_ GPS_Longitude_Minutes : 46|6@0+ (1,0) [0|61] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GPS_Longitude_Min_dec : 55|14@0+ (0.0001,0) [0|1.6381] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GPS_Longitude_Degrees : 39|9@0+ (1,-179) [-179|330] "Degrees" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GPS_Latitude_Minutes : 15|6@0+ (1,0) [0|61] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GPS_Latitude_Min_dec : 23|14@0+ (0.0001,0) [0|1.6381] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS - SG_ GPS_Latitude_Degrees : 7|8@0+ (1,-89) [-89|164] "Degrees" SOBDMC_HPCM_FD1,IPMA_ADAS - -BO_ 1003 Personality_BCM2_Data_FD1: 8 GWM - SG_ PersRecallSrc_D_Actl : 63|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ Pers4Key_D_Stat : 49|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Pers3Key_D_Stat : 41|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Pers2Key_D_Stat : 43|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Pers1Key_D_Stat : 12|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ EmPrflNo_D_Stat : 52|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ EmPrflKeyAssoc_D_Stat : 55|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ VehKeyActv_D_Stat : 47|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ PersNoPos_D_Actl : 18|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ PersSetupRestr_D_Actl : 21|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PersSetupAccessCtrl : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PersSetup_No_Actl : 31|16@0+ (1,0) [0|65535] "Number" Vector__XXX - SG_ PersConflict_D_Actl : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AssocConfirm_D_Actl : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ RecallEvent_No_Cnt : 7|8@0+ (1,0) [0|255] "Counts" IPMA_ADAS - SG_ PersNo_D_Actl : 10|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS - -BO_ 994 Personality_APIM_Data_FD1: 8 GWM - SG_ PersStore_D_Rq : 36|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ Pers4OptIn_B_Stats : 43|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Pers3OptIn_B_Stats : 33|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Pers2OptIn_B_Stats : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Pers1OptIn_B_Stats : 44|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CtrStkPersIndex_D_Actl : 39|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS - SG_ CtrStkFeatNoActl : 23|16@0+ (1,0) [0|65535] "Undefined" ABS_ESC,IPMA_ADAS - SG_ CtrStkFeatConfigActl : 7|16@0+ (1,0) [0|65535] "Undefined" ABS_ESC,IPMA_ADAS - SG_ CtrStkDsplyOp_D_Rq : 47|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS - -BO_ 778 ParkAid_Aud_Warn_CmdM_FD1: 8 GWM - SG_ PrkAidFront_D_RqDrv : 5|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ PrkAidAcsyRear_D_RqDrv : 13|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ PrkAidAcsyFront_D_RqDrv : 15|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ Cta_D_Rq : 1|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ PrkAidRear_D_RqDrv : 3|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ SteEffort_D_Rq : 10|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ Sod_D_Rq : 7|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - -BO_ 549 IPC_Infotainment_FD1: 8 GWM - SG_ Veh_V2_Dsply : 39|9@0+ (1,0) [0|511] "unitless" IPMA_ADAS - SG_ IPC_MyKeyVolLimit_St : 9|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ HdcOn_B_Rq : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ IPC_Attn_Info_Audio : 4|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ BeltminderAudioMute : 6|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Power_Up_Chime_Modules : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Chime_Source : 15|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ IPC_New_Attn_Event : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 551 APIM_Request_Signals_1_FD1: 8 GWM - SG_ PmCabnLvl_D_Stat : 36|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ PmCabn_D_Stat : 38|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Cntr_Plg_Mode_Cmd : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ChrgCrdLckEnbl_B_Stat : 47|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PwRnngBoardT_D_Rq : 25|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PwRnngBoardSwtch_D_Rq : 27|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PwRnngBoardMde_D_Rq : 29|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Btt_L_Actl2 : 55|7@0+ (0.1,0) [0|12.5] "meter" IPMA_ADAS - SG_ Rba_D_Rq : 31|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ EmPrflNo_D_Rq : 61|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ EmPrflButtnAssoc_D_Rq : 33|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ EmPrflKeyAssoc_D_Rq : 46|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ Em_D_Stat : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ChrgOvrdExitScrn_D_Rq : 58|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 1010 IPMA_Data3: 8 IPMA_ADAS - SG_ MbdblActv_B_RqAdas : 48|1@0+ (1,0) [0|1] "SED" GWM - SG_ CbdblActv_B_RqAdas : 49|1@0+ (1,0) [0|1] "SED" GWM - SG_ AdbUrbanArea_B_Stat : 40|1@0+ (1,0) [0|1] "SED" GWM - SG_ LightRng_L_Max : 55|6@0+ (2,0) [0|126] "meter" GWM - SG_ LightPathOffst_L_Actl : 31|10@0+ (0.01,-5.12) [-5.12|5.11] "meter" GWM - SG_ LightPath_An_Actl : 12|11@0+ (0.0005,-0.5) [-0.5|0.5235] "radians" GWM - SG_ LightCurv_NoRate_Actl : 37|13@0+ (2.5E-007,-0.001024) [-0.001024|0.00102375] "1/meter" GWM - SG_ LightCurv_No_Actl : 7|11@0+ (2E-005,-0.02) [-0.02|0.02094] "1/meter" GWM - -BO_ 1070 Battery_Mgmt_24V_FD1: 8 GWM - SG_ BattULo24_D_Falt : 55|2@0+ (1,0) [0|3] "SED" PCM - SG_ BattULo24_Te_Actl : 47|7@0+ (1,-40) [-40|86] "degC" PCM - SG_ BattULo24State_D_Qlty : 25|2@0+ (1,0) [0|3] "SED" PCM - SG_ BattULo24Soc_Pc_Actl : 39|7@0+ (1,0) [0|127] "percent" PCM - SG_ BattULo24_I_Actl : 23|14@0+ (0.0625,-512) [-512|511.875] "ampere" PCM - SG_ BattULo24_B_Falt : 8|1@0+ (1,0) [0|1] "SED" PCM - SG_ BattULo24_Ah_DeltaRide : 7|15@0+ (0.0078125,-100) [-100|155.9921875] "amperehour" PCM - -BO_ 1186 Driveline_Data_2: 8 TCCM - SG_ SelDrvMdeAwd2_D_Stat : 31|5@0+ (1,0) [0|31] "SED" ABS_ESC,GWM - SG_ RearDiffLckMsg_D_Rq : 20|3@0+ (1,0) [0|7] "SED" GWM - SG_ RearDiffLckLamp_D_Rq : 11|2@0+ (1,0) [0|3] "SED" VDM,GWM,ABS_ESC - SG_ RearDiffLck_Tq_Actl : 7|12@0+ (1,0) [0|4093] "Nm" ABS_ESC,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ RearDiffFalt_D_Stat : 23|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - SG_ LsdSrvcRqd_B_Rq : 21|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 611 Driveline_Data_1: 8 TCCM - SG_ AwdSys_D_Stat : 27|2@0+ (1,0) [0|3] "SED" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ AwdStat_D_RqDsply : 63|5@0+ (1,0) [0|31] "SED" TCM_DSL,ABS_ESC,GWM - SG_ AwdLck_D_Stat : 31|4@0+ (1,0) [0|15] "SED" TCM_DSL,GWM,ABS_ESC - SG_ AwdSrvcRqd_B_Rq : 0|1@0+ (1,0) [0|1] "SED" GWM,PCM,PCM_HEV,TCM_DSL,ABS_ESC - SG_ NtrlTowAvail_B_Stat : 4|1@0+ (1,0) [0|1] "SED" GWM - SG_ AwdLck_Tq_Rq : 15|12@0+ (1,0) [0|4093] "Nm" PCM_HEV,GWM,ABS_ESC - SG_ TrnAout_Tq_RqMx : 47|13@0+ (1,-1250) [-1250|6941] "Nm" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ AwdOffRoadMode_D_Stats : 25|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ AwdLoLamp_D_RqDsply : 35|2@0+ (1,0) [0|3] "SED" GWM - SG_ AwdHiLamp_D_RqDsply : 19|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC - SG_ AwdAutoLamp_D_RqDsply : 17|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC - SG_ Awd2wdLamp_D_RqDsply : 2|2@0+ (1,0) [0|3] "SED" GWM - SG_ AwdRnge_D_Actl : 7|3@0+ (1,0) [0|7] "SED" VDM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,ABS_ESC,GWM,IPMA_ADAS - -BO_ 1461 PSCM_AutoSar_NetwrkMgmt: 8 PSCM - SG_ PSCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - SG_ PSCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC - -BO_ 1047 TrailerAid_Data2: 8 PSCM - SG_ TrlrAnOffst_An2_Calc : 39|8@0+ (0.5,-64) [-64|63.5] "degrees" IPMA_ADAS - SG_ TrlrAn_An_WarnCalc : 28|5@0+ (1,0) [0|31] "degrees" IPMA_ADAS - SG_ TrlrAn_An_MxCalc : 55|7@0+ (1,0) [0|127] "degrees" IPMA_ADAS - SG_ TrlrAidTrlrId_No_Rq : 63|4@0+ (1,0) [0|15] "unitless" GWM - SG_ TrlrAidTrgtId_No_Rq : 44|5@0+ (1,0) [0|31] "unitless" IPMA_ADAS - SG_ TrlrAidSetup_D2_Stat : 47|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ TrlrAidEnbl_D2_Stat : 31|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS,GWM,PCM,ECM_Diesel - SG_ TrlrAidMsgTxt_D2_Rq : 14|6@0+ (1,0) [0|63] "SED" IPMA_ADAS,GWM,ABS_ESC - SG_ EsaOn_B_Stat : 23|1@0+ (1,0) [0|1] "SED" GWM - SG_ HitchToTrlrAxle_L_Calc : 7|9@0+ (0.0254,0) [0|12.9794] "meter" IPMA_ADAS - SG_ SelDrvMdeSte_D_Stat : 17|2@0+ (1,0) [0|3] "SED" ABS_ESC - -BO_ 972 Lane_Assist_Data3_FD1: 8 PSCM - SG_ LatCtlSte_D_Stat : 18|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,GWM - SG_ LatCtlLim_D_Stat : 33|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ LatCtlCpblty_D_Stat : 39|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ LatCtlCpbltyDStat_No_Cnt : 37|4@0+ (1,0) [0|15] "Unitless" IPMA_ADAS,GWM - SG_ LatCtlCpbltyDStat_No_Cs : 47|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM - SG_ TrlrAn_An_TrgtCalc : 31|8@0+ (1,-128) [-128|127] "degrees" IPMA_ADAS - SG_ LsmcBrkDecelEnbl_D_Rq : 1|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ TjaHandsOnCnfdnc_B_Est : 3|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ LaHandsOff_B_Actl : 7|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ LaActDeny_B_Actl : 6|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ LaActAvail_D_Actl : 5|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ LsmcBrk_Tq_Rq : 15|13@0+ (4,0) [0|32764] "Nm" ABS_ESC - -BO_ 130 EPAS_INFO: 8 PSCM - SG_ TrlrHitchLamp_D_Rqst : 24|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ VehVTrlrAid_B_Rq : 25|1@0+ (1,0) [0|1] "SED" PCM_HEV,GWM,ECM_Diesel,PCM - SG_ Veh_V_RqMxTrlrAid : 63|8@0+ (0.1,0) [0|25.5] "km/h" PCM_HEV,GWM,ECM_Diesel,PCM - SG_ DrvSteActv_B_Stat : 10|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ DrvSte_Tq_Actl : 47|8@0+ (0.0625,-8) [-8|7.8125] "Nm" GWM,ABS_ESC - SG_ SteMdule_D_Stat : 55|3@0+ (1,0) [0|7] "SED" GWM - SG_ SteMdule_U_Meas : 39|8@0+ (0.05,6) [6|18.7] "Volts" GWM - SG_ SteMdule_I_Est : 21|12@0+ (0.05,-64) [-64|140.7] "Amps" GWM - SG_ EPAS_Failure : 9|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ SteeringColumnTorque : 7|8@0+ (0.0625,-8) [-8|7.8125] "Nm" GWM,IPMA_ADAS,ABS_ESC - SG_ SAPPAngleControlStat6 : 15|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ SAPPAngleControlStat5 : 14|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ SAPPAngleControlStat4 : 13|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ SAPPAngleControlStat3 : 12|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ SAPPAngleControlStat2 : 11|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ SAPPAngleControlStat1 : 23|2@0+ (1,0) [0|3] "SED" GWM,IPMA_ADAS - -BO_ 126 SteeringPinion_Data: 8 PSCM - SG_ StePw_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM - SG_ StePinRelInit_An_Sns : 7|16@0+ (0.1,-3200) [-3200|3353.3] "degrees" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM - SG_ StePinCompAnEst_D_Qf : 43|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM - SG_ StePinComp_An_Est : 22|15@0+ (0.1,-1600) [-1600|1676.7] "degrees" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM - SG_ StePinAn_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" VDM,ABS_ESC,TCCM,GWM - SG_ StePinAn_No_Cnt : 47|4@0+ (1,0) [0|15] "unitless" VDM,TCCM,GWM,ABS_ESC - -BO_ 133 SteeringPinion_Data_Alt: 8 PSCM - SG_ StePw_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM - SG_ StePinRelInit_An_Sns : 7|16@0+ (0.1,-3200) [-3200|3353.3] "degrees" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM - SG_ StePinCompAnEst_D_Qf : 43|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM - SG_ StePinComp_An_Est : 22|15@0+ (0.1,-1600) [-1600|1676.7] "degrees" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM - SG_ StePinAn_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" VDM,ABS_ESC,TCCM,GWM - SG_ StePinAn_No_Cnt : 47|4@0+ (1,0) [0|15] "unitless" VDM,TCCM,GWM,ABS_ESC - -BO_ 1430 ABS_AutoSar_NetworkMgt: 8 ABS_ESC - SG_ ABS_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ABS_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" GWM - -BO_ 1200 ABS_BrkBst_Data: 8 ABS_ESC - SG_ BrkHold_D_Stat : 34|3@0+ (1,0) [0|7] "SED" ECM_Diesel,GWM,IPMA_ADAS,PCM,PCM_HEV - SG_ HsaTrnAout_Tq_Rq : 23|16@0+ (4,-131072) [-131072|131060] "Nm" GWM - SG_ BrkBstrVac_P_Actl : 7|7@0+ (8,0) [0|1008] "Millibar" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ YawStabilityIndex : 0|9@0+ (1,-256) [-256|255] "%" VDM,IPMA_ADAS,PSCM,GWM - SG_ BrkTot_Tq_RqDrv : 47|13@0+ (4,0) [0|32760] "Nm" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM,TCCM,PSCM - SG_ BrkTotTqRqDrv_No_Cnt : 39|4@0+ (1,0) [0|15] "unitless" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ BrkTotTqRqDrv_No_Cs : 63|8@0+ (1,0) [0|255] "unitless" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ HsaStat_D_Dsply : 50|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 1102 SelectDriveModeData2: 8 ABS_ESC - SG_ SelDrvMdePos12_D_Stat : 34|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos11_D_Stat : 45|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos10_D_Stat : 55|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos09_D_Stat : 50|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos08_D_Stat : 61|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos07_D_Stat : 39|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos06_D_Stat : 29|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos05_D_Stat : 18|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos04_D_Stat : 23|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos03_D_Stat : 13|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos02_D_Stat : 2|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePos01_D_Stat : 7|5@0+ (1,0) [0|31] "SED" GWM - -BO_ 1056 SelectDriveModeData: 8 ABS_ESC - SG_ AutoEpbMsgTxt_D_Rq : 58|3@0+ (1,0) [0|7] "SED" GWM - SG_ AutoEpbDsply_D_Stat : 37|2@0+ (1,0) [0|3] "SED" GWM - SG_ AutoEpbButtnOn_B_Stat : 48|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos12_B_Avail : 54|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos11_B_Avail : 55|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos10_B_Avail : 40|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos09_B_Avail : 41|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos08_B_Avail : 42|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos07_B_Avail : 43|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos06_B_Avail : 44|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos05_B_Avail : 45|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos04_B_Avail : 46|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos03_B_Avail : 47|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos02_B_Avail : 32|1@0+ (1,0) [0|1] "SED" GWM - SG_ SelDrvMdePos01_B_Avail : 24|1@0+ (1,0) [0|1] "SED" GWM - SG_ ActvDrvMde_D2_Stat : 53|5@0+ (1,0) [0|31] "SED" IPMA_ADAS,GWM - SG_ SelDrvMde_D2_Rq : 63|5@0+ (1,0) [0|31] "SED" GWM - SG_ SelDrvMdePt_D_Rq : 31|5@0+ (1,0) [0|31] "SED" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ SelDrvMdeMsgTxt_D_Rq : 19|4@0+ (1,0) [0|15] "SED" GWM - SG_ SelDrvMde_D_Stat : 26|2@0+ (1,0) [0|3] "SED" GWM - SG_ AwdMde_D_RqBrk : 35|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 1054 BrakeSysFeatures_3: 8 ABS_ESC - SG_ AirDamUp_B_RqBrk : 32|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM_HEV,PCM - SG_ RbaBrk_D_Stat : 63|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ SelDrvMdeChassis2_D_Rq : 45|5@0+ (1,0) [0|31] "SED" PSCM,GWM - SG_ TrailCtl_D_Stat : 55|3@0+ (1,0) [0|7] "SED" TCCM,PCM,GWM - SG_ TrailCtlMsgTxt_D_Rq : 52|4@0+ (1,0) [0|15] "SED" GWM - SG_ BrkBstrVac_D_Stat : 18|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ DrvSlipCtlOffLamp_D_Rq : 23|2@0+ (1,0) [0|3] "SED" GWM - SG_ DrvSlipCtlMdeMsg_D_Rq : 13|5@0+ (1,0) [0|31] "SED" GWM - SG_ AutoHoldMsgTxt_D_Rq : 4|4@0+ (1,0) [0|15] "SED" GWM - SG_ CtaBrk_D_Stat : 47|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ SelDrvMdeAwd_D_Rq : 29|5@0+ (1,0) [0|31] "SED" TCCM,GWM - SG_ AutoHoldSwMde_B_Ind : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ AutoHoldMde_D_Ind : 15|2@0+ (1,0) [0|3] "SED" GWM - SG_ SelDrvMdeChassis_D_Rq : 39|5@0+ (1,0) [0|31] "SED" VDM,GWM - SG_ ApaBrk_D_Stat : 34|2@0+ (1,0) [0|3] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,GWM - -BO_ 1046 BrakeSysFeatures_2: 8 ABS_ESC - SG_ HsaMde_D_Mem : 33|2@0+ (1,0) [0|3] "SED" GWM - SG_ BrkBstrVac_B_Rq : 27|1@0+ (1,0) [0|1] "Discrete" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ HdcMde_D_Actl : 31|3@0+ (1,0) [0|7] "SED" GWM - SG_ RearDiffLck_Tq2_RqMx : 51|12@0+ (4,0) [0|16376] "Nm" GWM - SG_ TRLR_SWAY_EVNT_IN_PROG : 25|1@0+ (1,0) [0|1] "SED" GWM - SG_ TRLR_SWAY_CONFIG_STAT : 26|1@0+ (1,0) [0|1] "SED" GWM - SG_ TCMode : 15|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ DrvSlipCtlLamp_D_Rq : 42|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ Abs_B_Falt : 5|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ DrvSlipCtlMde_D_Ind : 44|2@0+ (1,0) [0|3] "SED" TCCM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ DrvAntiLckLamp_D_Rq : 55|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM,IPMA_ADAS - SG_ BpedMove_No_Cnt : 3|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel,GWM - SG_ StabCtlBrk_B_Avail : 4|1@0+ (1,0) [0|1] "SED" VDM,TCCM,GWM - SG_ DrvHdcWarnInfo_D_Rq : 35|2@0+ (1,0) [0|3] "SED" GWM - SG_ DrvHdcMsg_D_Rq : 10|3@0+ (1,0) [0|7] "SED" GWM - SG_ DrvHdcLampInfo_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ BpedMove_D_Actl : 7|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM - SG_ ChimeBrk_B_Rq : 14|1@0+ (1,0) [0|1] "SED" GWM - SG_ BrkLamp_B_Rq : 13|1@0+ (1,0) [0|1] "SED" GWM - SG_ HILL_DESC_MC : 47|3@0+ (1,0) [0|7] "SED" GWM - SG_ RearDiffElckrOpen_B_Rq : 40|1@0+ (1,0) [0|1] "SED" GWM,TCCM - -BO_ 1045 BrakeSysFeatures: 8 ABS_ESC - SG_ VehStab_D_Stat : 55|4@0+ (1,0) [0|15] "SED" TCCM,PCM_HEV,PCM,GWM - SG_ BrkFluidLvl_D_Stat : 17|2@0+ (1,0) [0|3] "SED" GWM - SG_ LsmcBrkDecel_D_Stat : 39|3@0+ (1,0) [0|7] "SED" PSCM,GWM - SG_ VehYawNonLin_W_Rq : 51|12@0+ (0.03663,-75) [-75|74.92659] "deg/s" ECM_Diesel,GWM - SG_ VehYawLin_W_Rq : 35|12@0+ (0.03663,-75) [-75|74.92659] "deg/s" ECM_Diesel,GWM - SG_ VehVActlBrk_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM,IPMA_ADAS - SG_ Veh_V_ActlBrk : 7|16@0+ (0.01,0) [0|655.35] "kph" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM - SG_ VehVActlBrk_No_Cnt : 21|4@0+ (1,0) [0|15] "Unitless" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM,IPMA_ADAS - SG_ VehVActlBrk_D_Qf : 23|2@0+ (1,0) [0|3] "SED" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM - -BO_ 1044 BrakeSnData_6: 8 ABS_ESC - SG_ StePinOffst_An_Est : 7|16@0+ (0.1,-3200) [-3200|3353.3] "degrees" GWM,PSCM - SG_ StePinOffst_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" GWM,PSCM - SG_ StePinOffst_No_Cnt : 21|4@0+ (1,0) [0|15] "unitless" GWM,PSCM - SG_ StePinOffst_D_Stat : 23|2@0+ (1,0) [0|3] "SED" GWM,PSCM - -BO_ 1042 TrailerBrakeData: 8 ABS_ESC - SG_ VehRol_An_Dsply : 31|7@0+ (1,-64) [-64|61] "degrees" GWM - SG_ VehPtch_An_Dsply : 23|7@0+ (1,-64) [-64|61] "degrees" GWM,TCCM - SG_ TrlrBrk_Pc_Rq : 14|7@0+ (1,0) [0|127] "percent" GWM - -BO_ 535 WheelSpeed: 8 ABS_ESC - SG_ WhlRr_W_Meas : 54|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL - SG_ WhlRl_W_Meas : 38|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL - SG_ WhlFr_W_Meas : 22|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL - SG_ WhlFl_W_Meas : 6|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL - -BO_ 534 WheelData: 8 ABS_ESC - SG_ BrkObdData_No_Actl : 63|8@0+ (1,0) [0|255] "unitless" SOBDMC_HPCM_FD1,GWM - SG_ BrkObdIndex_No_Actl : 53|6@0+ (1,0) [0|63] "unitless" SOBDMC_HPCM_FD1,GWM - SG_ WhlRotatRr_No_Cnt : 23|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM - SG_ WhlDirRr_D_Actl : 33|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ECM_Diesel,PCM_HEV,PSCM - SG_ WhlDirRl_D_Actl : 39|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,PSCM,ECM_Diesel,PCM_HEV - SG_ WhlDirFr_D_Actl : 37|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ECM_Diesel,PCM_HEV,PSCM - SG_ WhlDirFl_D_Actl : 35|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ECM_Diesel,PCM_HEV,PSCM - SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM - SG_ WhlRotatFr_No_Cnt : 7|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM - SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM - -BO_ 532 DesiredTorqBrk_2: 8 ABS_ESC - SG_ RgenTqFalt_B_Actl : 59|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV - SG_ RgenBrkDynoMde_B_Actl : 58|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV - SG_ PrplWhlTqRqMn_No_Cs : 55|8@0+ (1,0) [0|255] "Unitless" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ PrplWhlTot_Tq_RqMn : 7|16@0+ (4,-131072) [-131072|131068] "Nm" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ PrplWhlTqRqMn_No_Cnt : 63|4@0+ (1,0) [0|15] "Unitless" GWM,ECM_Diesel,PCM,PCM_HEV - -BO_ 531 DesiredTorqBrk: 8 ABS_ESC - SG_ VehStop_D_Stat : 28|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM - SG_ TracCtlPtActv_B_Actl : 31|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,TCCM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM - SG_ LscmbbMntr_B_Err : 17|1@0+ (1,0) [0|1] "SED" GWM - SG_ LscmbbBrkDis_B_Actl : 19|1@0+ (1,0) [0|1] "SED" GWM - SG_ LscmbbDeny_B_ActlBrk : 18|1@0+ (1,0) [0|1] "SED" GWM - SG_ PrkBrkYwLamp_D_Rq : 38|2@0+ (1,0) [0|3] "SED" GWM - SG_ PrkBrkRedLamp_D_Rq : 30|2@0+ (1,0) [0|3] "SED" GWM - SG_ LscmbbBrkDecel_B_Actl : 20|1@0+ (1,0) [0|1] "SED" GWM - SG_ AbsActv_B_Actl : 45|1@0+ (1,0) [0|1] "SED" VDM,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM - SG_ StabCtlBrkActv_B_Actl : 23|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,PCM,PCM_HEV,TCM_DSL,PSCM,TCCM,ECM_Diesel,GWM - SG_ CmbbBrkPrchg_B_Actl : 59|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ CmbbBrkDecel_B_Actl : 58|1@0+ (1,0) [0|1] "SED" CMR_DSMC,IPMA_ADAS,GWM - SG_ CmbbBaSensInc_B_Actl : 57|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ AccBrkWarm_B_Actl : 63|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ AccBrkTotTqMn_B_Actl : 62|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ AccBrkPrchgActv_B_Actl : 61|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ AccBrkDis_B_Actl : 44|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ AccBrkDeny_B_Actl : 42|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ AccBrkActv_B_Actl : 43|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,ECM_Diesel,GWM - SG_ PrplDrgCtlActv_B_Actl : 46|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM - SG_ PrplWhlTot_Tq_RqMx : 7|16@0+ (4,-131072) [-131072|131068] "Nm" ECM_Diesel,PCM,PCM_HEV,TCCM,GWM - SG_ LscmbbBaSensInc_B_Actl : 21|1@0+ (1,0) [0|1] "SED" GWM - SG_ CmbbBrkDis_B_Actl : 56|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM,GWM - SG_ CmbbDeny_B_ActlBrk : 60|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ CcDis_B_Cmd : 47|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,GWM - SG_ VehLongOvrGnd_A_Est : 41|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,IPMA_ADAS,TCCM,GWM - SG_ LscmbBrkPrchg_B_Actl : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ AccStopActv_B_ActlBrk : 22|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ AccDis_B_ActlEpb : 32|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ PrkBrkMsgTxt_D_Rq : 36|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkBrkStatus : 26|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM - -BO_ 136 ActiveFronSteering_Req: 8 ABS_ESC - SG_ SteWhlBrkOffst_An_Rq : 7|15@0+ (0.1,-1600) [-1600|1676.5] "degrees" GWM - SG_ SteWhlBrkAnRq_No_Cs : 23|8@0+ (1,0) [0|255] "Unitless" GWM - SG_ SteWhlBrkAnRq_No_Cnt : 31|4@0+ (1,0) [0|15] "Unitless" GWM - -BO_ 125 BrakeSnData_4: 8 ABS_ESC - SG_ VehRolComp_W_Actl : 51|12@0+ (0.03663,-75) [-75|74.92659] "degrees/sec" VDM,GWM - SG_ VehVertComp_A_Actl : 45|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,PSCM,GWM - SG_ BrkTotTqRqArb_No_Cs : 23|8@0+ (1,0) [0|255] "Unitless" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ BrkTotTqRqArb_No_Cnt : 31|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ BrkTot_Tq_RqArb : 4|13@0+ (4,0) [0|32756] "Nm" VDM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM - SG_ BrkTot_Tq_Actl : 27|13@0+ (4,0) [0|32756] "Nm" ECM_Diesel,PCM,PCM_HEV,PSCM,GWM,TCCM - SG_ HsaStat_D_Actl : 7|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM - -BO_ 119 BrakeSnData_3: 8 ABS_ESC - SG_ VehTrvlDir_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ VehOverGnd_V_Est : 7|16@0+ (0.01,0) [0|655.33] "kph" VDM,IPMA_ADAS,TCCM,PSCM,GWM - SG_ VehLongComp_A_Actl : 49|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM - SG_ VehLatComp_A_Actl : 43|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,TCCM,GWM - SG_ VehYawComp_W_Actl : 19|12@0+ (0.03663,-75) [-75|74.92659] "deg/s" VDM,TCCM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM - -BO_ 118 BrakeSnData_5: 8 ABS_ESC - SG_ BrkCtrFnd_B_Stat : 39|1@0+ (1,0) [0|1] "SED" GWM - SG_ AwdLck_Tq_RqMx : 35|12@0+ (1,0) [0|4095] "Nm" GWM,TCCM - SG_ AwdLck_Tq_RqMn : 51|12@0+ (1,0) [0|4095] "Nm" GWM,TCCM - SG_ DrvSte_D_Stat : 19|4@0+ (1,0) [0|15] "SED" PSCM,GWM - SG_ DrvSte_Tq_Rq : 31|8@0+ (0.0625,-8) [-8|7.8125] "Nm" PSCM,GWM - SG_ EmgcyBrkLamp_D_Rq : 21|2@0+ (1,0) [0|3] "SED" GWM - SG_ StopLamp_B_RqBrk : 7|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 73 Global_PATS_SubTarget: 8 ABS_ESC - SG_ immoSubTarget1Data_T1 : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" ECM_Diesel,GWM,PCM,PCM_HEV - SG_ immoSubTarget1Cmd_T1 : 7|3@0+ (1,0) [0|7] "SED" ECM_Diesel,GWM,PCM,PCM_HEV - -BO_ 1034 GGCC_Config_Mgmt_ID_1_FD1: 8 GWM - SG_ VehicleGGCCData : 7|64@0+ (1,0) [0|1.84467E+019] "mixed" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL - -BO_ 1440 TCM_AutoSar_NetworkMgt: 8 TCM_DSL - SG_ TCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX - -BO_ 561 TransGearData_2: 8 TCM_DSL - SG_ TrnMsgTxt2_D_Rq : 39|3@0+ (1,0) [0|7] "SED" GWM - SG_ TrnMsgTxt_D_Rq : 23|4@0+ (1,0) [0|15] "SED" GWM - -BO_ 330 TransData_3: 8 TCM_DSL - SG_ TrnAout_W_ActlUnfilt : 22|15@0+ (0.1,0) [0|3276.5] "rad/s" ECM_Diesel,GWM - -BO_ 1090 MtrTrac_Data2_FD1: 8 PCM_HEV - SG_ Mtr2State_D_ActlMntr : 31|3@0+ (1,0) [0|7] "SED" GWM - SG_ Inv1Ain_I_ActlMntr : 7|15@0+ (0.1,-1000) [-1000|2276.5] "ampere" GWM - SG_ HybVehMde_D_ActlMntr : 20|3@0+ (1,0) [0|7] "SED" GWM - SG_ ChrgStat_D_ActlMntr : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ VehElRnge_L_Dsply : 28|12@0+ (0.1,0) [0|409.3] "kilometer" GWM - -BO_ 870 Cluster_HEV_Data3_FD1: 8 PCM_HEV - SG_ EngMdeMsgTxt_D_Rq : 12|3@0+ (1,0) [0|7] "SED" GWM - SG_ EffRgenThres_Pc_Dsply : 9|10@0+ (0.1,-102.3) [-102.3|0] "percent" GWM - SG_ RngPerChrgInst_L_Dsply : 45|12@0+ (0.1,0) [0|409.3] "km" GWM - -BO_ 869 Cluster_HEV_Data2: 8 PCM_HEV - SG_ PwrFlowTxt_D_Dsply : 21|4@0+ (1,0) [0|15] "SED" GWM - SG_ EngOnMsg2_D_Dsply : 54|5@0+ (1,0) [0|31] "SED" GWM - SG_ EngOnMsg1_D_Dsply : 38|5@0+ (1,0) [0|31] "SED" GWM - SG_ FuelMaintMde_D_Dsply : 23|2@0+ (1,0) [0|3] "SED" GWM - SG_ EffWhlLvl2_Pc_Dsply : 17|10@0+ (0.2,-102.2) [-102.2|102.4] "percent" GWM - SG_ EffWhlThres_Pc_Dsply : 49|10@0+ (0.1,0) [0|102.3] "percent" GWM - SG_ EngPwLvl_Pc_Dsply : 1|10@0+ (0.1,0) [0|102.3] "percent" GWM - SG_ EngActv_B_Dsply : 2|1@0+ (1,0) [0|1] "SED" GWM - SG_ EffWhlThresOn_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 606 HEV_Powertrain_Data8_FD1: 8 PCM_HEV - SG_ ElVehLaterMde_D_Stat : 7|2@0+ (1,0) [0|3] "SED" GWM - SG_ ElVehNowMde_D_Stat : 5|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 374 PowertrainData_10: 8 PCM - SG_ GearEngag_D_Actl : 47|3@0+ (1,0) [0|7] "SED" GWM - SG_ TrnRng_D_Rq : 27|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,PSCM,ECM_Diesel,GWM - SG_ TrnPrkSys_D_Actl : 31|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,ECM_Diesel,GWM - SG_ GearLvr_D_ActlDrv : 7|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,TCCM,ECM_Diesel,GWM - SG_ GearPos_No_Cs : 23|8@0+ (1,0) [0|255] "unitless" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,ECM_Diesel,GWM - SG_ GearPos_D_Trg : 15|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,TCCM,ECM_Diesel,GWM - SG_ GearPos_No_Cnt : 11|4@0+ (1,0) [0|15] "unitless" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,ECM_Diesel,GWM - SG_ TrnIgnOffDly_T_Rq : 39|8@0+ (4,0) [0|1020] "ms" GWM - SG_ GearPos_D_Actl : 3|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,PSCM,IPMA_ADAS,ABS_ESC,ECM_Diesel,GWM - -BO_ 603 HEV_Powertrain_Data2: 8 PCM_HEV - SG_ WhlDirAvgDrv_D_Actl : 6|2@0+ (1,0) [0|3] "SED" ABS_ESC,IPMA_ADAS,GWM - SG_ PrplTqMnRgen_B_Actl : 7|1@0+ (1,0) [0|1] "SED" ABS_ESC,GWM - SG_ BattTracCnnct_D_Rq : 20|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 602 HEV_Powertrain_Data: 8 PCM_HEV - SG_ HtrnWarnLamp_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM - SG_ HybPwLimOn_B_Stat : 7|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwPckTqRdy_B_Dsply : 31|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 1152 HEV_Powertrain_Data6: 8 PCM_HEV - SG_ BattTracDiagClr_B_Stat : 2|1@0+ (1,0) [0|1] "SED" GWM - SG_ EngTeHi_B_Actl : 5|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,GWM - SG_ DcdcOn_B_Rq : 6|1@0+ (1,0) [0|1] "SED" GWM - SG_ ULoBattSpprtSustn_B_Rq : 7|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,GWM - SG_ VehElEff_No_Avg : 15|7@0+ (10,-100) [-100|1150] "watt*hr/km" SOBDMC_HPCM_FD1,GWM - -BO_ 872 Cluster_HEV_Data5: 8 PCM_HEV - SG_ PlgActvArb_B_Dsply : 51|1@0+ (1,0) [0|1] "SED" GWM - SG_ HybMdeStat_D_Dsply : 39|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,GWM - -BO_ 560 TransGearData: 8 TCM_DSL - SG_ SelDrvMdeSwtch_D_Stat3 : 15|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC - SG_ TrnSrvcRqd_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ TrnShifActv_B_Actl : 0|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC,ECM_Diesel - SG_ GearLvrPos_D_Actl : 12|4@0+ (1,0) [0|15] "SED" VDM,IPMA_ADAS,GWM,ABS_ESC,PSCM,TCCM,ECM_Diesel - SG_ GboxOil_Te_Actl : 39|8@0+ (1,-60) [-60|193] "degC" SOBDMC_HPCM_FD1,GWM,TCCM,ECM_Diesel - -BO_ 369 EngineData_1: 8 PCM - SG_ SeatWorkSrfc_B_Falt : 12|1@0+ (1,0) [0|1] "SED" GWM - SG_ TrnIpcDsplyRng2_D_Actl : 23|4@0+ (1,0) [0|15] "SED" GWM - SG_ TrnIpcDsplyRng_D_Stat : 9|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrnIpcDsplyGear_D_Actl : 7|4@0+ (1,0) [0|15] "SED" GWM - SG_ TrnIpcDsplyMde_D_Stat : 3|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrnIpcDsplyMde_D_Actl : 15|3@0+ (1,0) [0|7] "SED" GWM - SG_ TrnIpcDsplyGear_D_Stat : 1|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 92 Gear_Shift_by_Wire_3: 8 PCM_HEV - SG_ TrnLvrV_D_Rq : 43|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrnSbwSysHlth_D_Actl : 1|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrnGearNtmAllow_B_Stat : 47|1@0+ (1,0) [0|1] "SED" GWM - SG_ TrnDtpCmd_D_Actl : 46|3@0+ (1,0) [0|7] "SED" GWM - SG_ GearSelLck_D_Rq : 41|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrnGearCmd_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" GWM - SG_ TrnValidGear_D_Cnfm : 11|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrnNtrlTowCmd_D_Actl : 6|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ABS_ESC - SG_ TrnGearCmd_Pc_ActlPt : 9|10@0+ (0.1,0) [0|102.2] "percent duty cycle" GWM - SG_ TrnGear_D_RqPt : 4|3@0+ (1,0) [0|7] "SED" GWM - SG_ TrnCmdState_B_Actl : 39|1@0+ (1,0) [0|1] "SED" GWM - SG_ TrnCmdCnt_B_Actl : 7|1@0+ (1,0) [0|1] "unitless" GWM - SG_ PrkBrkActv_D_RqTrnGear : 38|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC - SG_ TrnGearMsgTxt_D_Rq : 36|5@0+ (1,0) [0|31] "SED" GWM - SG_ TrnGearCmd_No_Cnt : 15|4@0+ (1,0) [0|15] "Unitless" GWM - -BO_ 2030 TesterPhysicalResSOBDMCFD1: 64 ECM_Diesel - SG_ TesterPhysicalResSOBDMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1087 Powertrain_Data_5: 8 PCM_HEV - SG_ BattRgenLoChrg_D_RqEng : 15|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdasLcObtclAbrt_B_Stat : 0|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ BattRgenLoDChrg_D_RqEng : 13|2@0+ (1,0) [0|3] "SED" GWM - SG_ AirDamPos_D_Stat : 11|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC - SG_ FapLcInhbt_B_Rq : 1|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ FapLcStopHold_B_Rq : 2|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ FapLcPrchgBrk_B_Rq : 3|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ FapLcObstcl_B_Stat : 4|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ FapLcMaxGrdInhbt_B_Stat : 5|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ FapLcMaxGrdAbrt_B_Stat : 6|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - SG_ FapLcActv_B_Stat : 7|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS - -BO_ 332 CGEA_Urea_Strategy: 8 ECM_Diesel - SG_ UreaLvlQlty_D_RqDsply : 51|3@0+ (1,0) [0|7] "SED" GWM - SG_ UreaLvlTxtWarn_D_Rq : 63|4@0+ (1,0) [0|15] "SED" GWM - SG_ UreaQltySysWarn_D_Rq : 59|3@0+ (1,0) [0|7] "SED" GWM - SG_ DieslPrtcWarn_D_Rq : 55|4@0+ (1,0) [0|15] "SED" GWM - SG_ UreaQltyFlg_B_RqDsply : 24|1@0+ (1,0) [0|1] "SED" GWM - SG_ UreaLvl_Pc_Actl : 47|8@0+ (0.4,0) [0|102] "percent" GWM - SG_ VehUreaRnge2_L_DsplyMx : 3|12@0+ (1,0) [0|4095] "kilometer" GWM - SG_ UreaQltySys_D_RqDsply : 27|3@0+ (1,0) [0|7] "SED" GWM - SG_ UreaLvlTxt_D_RqDsply : 31|4@0+ (1,0) [0|15] "SED" GWM - SG_ VehUreaWarn_V_DsplyMx : 23|7@0+ (1,0) [0|127] "km/h" GWM - -BO_ 1896 TesterPhysicalResABS: 64 ABS_ESC - SG_ TesterPhysicalResABS : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1889 TesterPhysicalReqTCCM: 64 TSTR - SG_ TesterPhysicalReqTCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TCCM - -BO_ 1888 TesterPhysicalReqABS: 64 TSTR - SG_ TesterPhysicalReqABS : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" ABS_ESC - -BO_ 1848 TesterPhysicalResPSCM: 64 PSCM - SG_ TesterPhysicalResPSCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1840 TesterPhysicalReqPSCM: 64 TSTR - SG_ TesterPhysicalReqPSCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" PSCM - -BO_ 1713 ABS_Rapid_Data_Response_2: 8 ABS_ESC - SG_ UUDTABSResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1712 ABS_Rapid_Data_Response_1: 8 ABS_ESC - SG_ UUDTABSResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 2025 TesterPhysicalResTCM: 64 TCM_DSL - SG_ TesterPhysicalResTCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 2024 TesterPhysicalResPCM: 64 PCM_HEV - SG_ TesterPhysicalResPCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 2017 TesterPhysicalReqTCM: 64 TSTR - SG_ TesterPhysicalReqTCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TCM_DSL - -BO_ 2016 TesterPhysicalReqPCM: 64 TSTR - SG_ TesterPhysicalReqPCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" ECM_Diesel,PCM,PCM_HEV - -BO_ 2015 TesterFunctionalReq_FD1: 64 TSTR - SG_ TesterFunctionalReq : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCCM,TCM_DSL,PSCM,ABS_ESC,GWM - -BO_ 1897 TesterPhysicalResTCCM: 64 TCCM - SG_ TesterPhysicalResTCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1814 TesterPhysicalReqGWM_FD1: 64 TSTR - SG_ TesterPhysicalReqGWM_F1 : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" GWM - -BO_ 1701 TCM_Rapid_Data_Response_2: 8 TCM_DSL - SG_ UUDTTCMResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1700 TCM_Rapid_Data_Response_1: 8 TCM_DSL - SG_ UUDTTCMResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1697 PCM_Rapid_Data_Response_2: 8 PCM_HEV - SG_ UUDTPCMResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1696 PCM_Rapid_Data_Response_1: 8 PCM_HEV - SG_ UUDTPCMResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR - -BO_ 1429 PCM_AutoSar_NetworkMgmt: 8 PCM_HEV - SG_ PCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" TCM_DSL - SG_ PCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" TCM_DSL - -BO_ 1100 PowertrainData_9: 8 PCM_HEV - SG_ EngExhMdeQuiet_D2_Stat : 28|3@0+ (1,0) [0|7] "SED" GWM - SG_ HvacCmprLim_D_Stat : 34|3@0+ (1,0) [0|7] "SED" GWM - SG_ WakeAlarm1_T_Rq : 55|15@0+ (1,0) [0|32767] "minute" GWM - SG_ WakeAlarm1_B_Typ : 56|1@0+ (1,0) [0|1] "SED" GWM - SG_ Veh_V_DsplyTrailCtlSet : 47|6@0+ (0.5,0) [0|31] "unitless" GWM - SG_ TrailCtlPt_B_Falt : 36|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - SG_ AutoTowAllw_D_StatMnu : 25|2@0+ (1,0) [0|3] "SED" GWM - SG_ AutoTowActv_B_Stat : 39|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ GrossTrainWeight_M_Est : 7|8@0+ (100,0) [0|25300] "kilogram" VDM,ABS_ESC,PSCM,IPMA_ADAS,TCCM,TCM_DSL,GWM - -BO_ 1098 EffDrvModeData: 8 ECM_Diesel - SG_ EdmVeh_V_Dsply : 31|5@0+ (5,0) [0|155] "km/h" GWM - SG_ EdmSailMdeOn_B_Stat : 25|1@0+ (1,0) [0|1] "SED" GWM - SG_ EdmPrev_Fe_Dsply : 23|8@0+ (0.1,0) [0|25.5] "litre/100km" GWM - SG_ EdmMsgTxt_D_Rq : 11|4@0+ (1,0) [0|15] "SED" GWM - SG_ EdmLamp_D_Dsply : 15|4@0+ (1,0) [0|15] "SED" GWM - SG_ EdmCurrent_Fe_Dsply : 7|8@0+ (0.1,0) [0|25.5] "litre/100km" GWM - SG_ EdmCmplnc_B_Dsply : 26|1@0+ (1,0) [0|1] "SED" GWM - SG_ EdmCmplnc_Pc_Dsply : 24|8@0+ (0.392157,0) [0|100.000035] "percent" GWM - -BO_ 1086 PowertrainData_3: 8 PCM_HEV - SG_ EngMnfld_P_Actl : 47|13@0+ (0.1,-206.8) [-206.8|612.3] "kilopascal" GWM - SG_ FuelPumpPwr_B_Rq : 20|1@0+ (1,0) [0|1] "SED" GWM - SG_ BattULoChrg_U_Cmd : 15|8@0+ (0.025,10.6) [10.6|16.975] "volt" GWM - SG_ ElLoadCtl_D_Rq : 23|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 1071 Engine_Clutch_Data: 8 PCM_HEV - SG_ EngAout_N_Dsply : 52|13@0+ (2,0) [0|16382] "rpm" GWM - SG_ CluPdl_PcRate_Actl : 7|8@0+ (0.04,-5) [-5|5.2] "%/ms" GWM - SG_ CluPdlPosPcMeas_D_Qf : 11|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - SG_ CluPdlPos_Pc_Meas : 9|10@0+ (0.1,0) [0|102.3] "%" ABS_ESC,GWM - SG_ EngAoutIdl_N_Ntrl : 31|11@0+ (2,0) [0|4094] "rpm" ABS_ESC,GWM - -BO_ 1069 PowertrainData_2: 8 PCM_HEV - SG_ SlMde_D_Stat : 57|2@0+ (1,0) [0|3] "SED" GWM - SG_ SlMde_D_RqDsply : 59|2@0+ (1,0) [0|3] "SED" GWM - SG_ IsaOffst_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM - SG_ GrllShtrPos_D_Cmd : 55|4@0+ (1,0) [0|15] "SED" GWM - SG_ GrllShtrPos_B_Falt : 51|1@0+ (1,0) [0|1] "SED" GWM - SG_ ObdWarmUp_B_Complt : 12|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,GWM - SG_ EngMsgTxt_D_Rq : 11|2@0+ (1,0) [0|3] "SED" GWM - SG_ EngClnt_Te_ActlDiag : 39|8@0+ (1,-40) [-40|215] "degC" SOBDMC_HPCM_FD1,TCM_DSL,GWM - SG_ EngLoad_Pc_CalcDiag : 47|8@0+ (0.392157,0) [0|100.000035] "%" SOBDMC_HPCM_FD1,TCM_DSL,GWM - SG_ EngAirIn_Te_Actl : 9|10@0+ (0.25,-128) [-128|127.25] "degC" GWM,TCM_DSL - SG_ ApedPos_Pc_ActlDiag : 31|8@0+ (0.392157,0) [0|100.000035] "%" SOBDMC_HPCM_FD1,TCM_DSL,GWM - -BO_ 1060 Powertrain_Data_4: 8 PCM_HEV - SG_ RearDiffOilTeWarn_B_Rq : 20|1@0+ (1,0) [0|1] "SED" GWM - SG_ RearDiffOil_Te_Actl : 15|9@0+ (1,-40) [-40|470] "degC" GWM - SG_ BpedDrvMsgTxt_B_Dsply : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ FuelLvl_Pc_DsplyEng : 41|10@0+ (0.108696,-5.217408) [-5.217408|105.9786] "percent" GWM - SG_ FuelLvlWarn_D_ActlEng : 19|3@0+ (1,0) [0|7] "SED" GWM - SG_ FuelRange_L_DsplyEng : 39|14@0+ (0.1,0) [0|1638.3] "kilometer" GWM - SG_ SelDrvMdePt_D_Stat : 25|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - -BO_ 1057 PowertrainData_1: 8 PCM_HEV - SG_ FohEng_D_Rq : 1|2@0+ (1,0) [0|3] "SED" GWM - SG_ EngIdlShutDwnTxt_D_Rq : 17|2@0+ (1,0) [0|3] "SED" GWM - SG_ EngIdlShutDown_D_Stat : 9|2@0+ (1,0) [0|3] "SED" GWM - SG_ FUEL_ALCOHOL_PERCNT : 63|8@0+ (0.393700787,0) [0|99.999899898] "Percent" GWM - SG_ TrnTotTq_Rt_Est : 39|16@0+ (0.001,0) [0|65.533] "Unitless" GWM - SG_ TrnTotLss_Tq_Est : 31|8@0+ (0.5,0) [0|126.5] "Nm" GWM - SG_ ECMMILRequest : 3|2@0+ (1,0) [0|3] "SED" GWM - SG_ AirCondFluidHi_P_Actl : 55|8@0+ (0.125,0) [0|31.625] "bar" SOBDMC_HPCM_FD1,GWM - SG_ OilPressureWarning : 18|1@0+ (1,0) [0|1] "SED" GWM - SG_ VehVLimStat_D_Actl : 6|3@0+ (1,0) [0|7] "SED" GWM,TCM_DSL - SG_ VehVLimActv_B_Actl : 7|1@0+ (1,0) [0|1] "SED" GWM,TCM_DSL - SG_ CoolantFanStepAct : 23|5@0+ (1,0) [0|31] "Steps" GWM - -BO_ 1055 PowertrainData_7: 8 PCM_HEV - SG_ EcoCochInstNeg_B_Dsply : 53|1@0+ (1,0) [0|1] "SED" GWM - SG_ EcoCochShif_Pc_Dsply : 39|8@0+ (0.392157,0) [0|100.000035] "percent" GWM - SG_ EcoCochInst_Pc_Dsply : 47|10@0+ (0.1,0) [0|102.3] "percent" GWM - SG_ EcoCochIdlFuel_Pc_Dsply : 31|8@0+ (0.392157,0) [0|100.000035] "percent" GWM - SG_ EcoCochDecel_Pc_Dsply : 23|8@0+ (0.392157,0) [0|100.000035] "percent" GWM - SG_ EcoCochCrus_Pc_Dsply : 15|8@0+ (0.392157,0) [0|100.000035] "percent" GWM - SG_ EcoCochA_Pc_Dsply : 7|8@0+ (0.392157,0) [0|100.000035] "percent" GWM - -BO_ 562 PowertrainData_11: 8 ECM_Diesel - SG_ GearNtrl_No_Cs : 15|8@0+ (1,0) [0|255] "unitless" GWM - SG_ GearNtrl_No_Cnt : 5|4@0+ (1,0) [0|15] "unitless" GWM - SG_ GearNtrl_D_Stat : 7|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - -BO_ 523 Engine_Data_18: 8 ECM_Diesel - SG_ EngAirFiltMsgTxt_D_Rq : 2|3@0+ (1,0) [0|7] "SED" GWM - SG_ WaterInFuel_B_Falt : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ UreaMnAdd_L2_Actl : 23|8@0+ (0.1,0) [0|25.4] "litre" GWM - SG_ VehUreaRnge3_L_DsplyMx : 31|16@0+ (1,0) [0|65535] "unitless" GWM - SG_ UreaMxAdd_L2_Actl : 47|9@0+ (0.1,0) [0|51] "litre" GWM - -BO_ 517 PowertrainData_6: 8 PCM_HEV - SG_ FapLc_B_Err : 10|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ BrkTot_Tq_RqFapLc : 7|13@0+ (4,0) [0|32764] "Nm" ABS_ESC,GWM - SG_ TrnAin_Pc_RqDrv : 9|10@0+ (0.1,0) [0|102.3] "percent" TCCM,GWM - -BO_ 516 EngVehicleSpThrottle: 8 PCM_HEV - SG_ EngAoutNActl_D_QF : 31|2@0+ (1,0) [0|3] "SED" TCM_DSL,GWM - SG_ EngAout3_N_Actl : 55|16@0+ (0.25,0) [0|16383.5] "RPM" SOBDMC_HPCM_FD1,GWM - SG_ ApedPos_PcRate_ActlArb : 23|8@0+ (0.04,-5) [-5|5.12] "%/ms" TCM_DSL,GWM - SG_ ApedPos_Pc_ActlArb : 1|10@0+ (0.1,0) [0|102.3] "%" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,TCCM,ABS_ESC,PSCM,TCM_DSL,GWM - SG_ ApedPosPcActl_D_Qf : 7|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,SOBDMC_HPCM_FD1,ABS_ESC,PSCM,TCM_DSL,GWM - SG_ EngAout_N_Actl : 28|13@0+ (2,0) [0|16382] "rpm" VDM,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM - SG_ ApedPosPcActl_No_Cnt : 5|4@0+ (1,0) [0|15] "Unitless" ABS_ESC,SOBDMC_HPCM_FD1,GWM - SG_ ApedPosPcActl_No_Cs : 47|8@0+ (1,0) [0|255] "Unitless" ABS_ESC,SOBDMC_HPCM_FD1,GWM - -BO_ 514 EngVehicleSpThrottle2: 8 PCM_HEV - SG_ StrtrMtrDlyStrt_B_Stat : 39|1@0+ (1,0) [0|1] "SED" GWM - SG_ VehVTrlrAid_B_Avail : 23|1@0+ (1,0) [0|1] "SED" PSCM,GWM - SG_ StrtrMtrCtlMsgTxt_D_Rq : 7|3@0+ (1,0) [0|7] "SED" GWM - SG_ VehVActlEng_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" PSCM,GWM - SG_ VehVActlEng_No_Cnt : 22|4@0+ (1,0) [0|15] "Unitless" PSCM,GWM - SG_ Veh_V_RqCcSet : 32|9@0+ (0.5,0) [0|255.5] "kph" IPMA_ADAS,ABS_ESC,TCM_DSL,GWM - SG_ VehVActlEng_D_Qf : 38|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ABS_ESC,PSCM,TCM_DSL,GWM - SG_ Veh_V_ActlEng : 55|16@0+ (0.01,0) [0|655.35] "kph" VDM,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,PSCM,TCM_DSL,GWM - SG_ GearRvrse_D_Actl : 4|3@0+ (1,0) [0|7] "SED" CMR_DSMC,IPMA_ADAS,ABS_ESC,PSCM,GWM - SG_ StrtrMtrCtlMsgTxt_D2_Rq : 1|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 512 TorqueDataEngFlags: 8 PCM_HEV - SG_ PrplWhlTotTqRq_No_Cs : 63|8@0+ (1,0) [0|255] "Unitless" ABS_ESC,GWM - SG_ PrplWhlTotTqRq_No_Cnt : 51|4@0+ (1,0) [0|15] "Unitless" ABS_ESC,GWM - SG_ PrplWhlTot_Tq_Rq : 39|16@0+ (4,-131072) [-131072|131068] "Nm" VDM,TCCM,ABS_ESC,GWM - SG_ PrplWhlTot_Tq_LimMn : 23|16@0+ (4,-131072) [-131072|131068] "Nm" ABS_ESC,GWM - SG_ PtDrvMde_D_Stat : 55|4@0+ (1,0) [0|15] "SED" IPMA_ADAS,GWM - -BO_ 381 EngineData_17: 8 ECM_Diesel - SG_ EngOilLife_T_Actl : 23|11@0+ (1,0) [0|2047] "days" GWM - SG_ EngOilSrvcMsgTxt_D_Rq : 55|3@0+ (1,0) [0|7] "SED" GWM - SG_ DistToNextOilChange : 7|16@0+ (1,0) [0|65535] "unitless" GWM - SG_ RunDryPrevent_B_Stat : 28|1@0+ (1,0) [0|1] "SED" GWM - SG_ WaterInFuel : 52|1@0+ (1,0) [0|1] "SED" GWM - SG_ GlowIndication : 51|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 380 EngineData_16: 8 PCM - SG_ EngOilLvlWarn_D_Rq1 : 55|3@0+ (1,0) [0|7] "SED" GWM - SG_ EngExhBrkOnLamp_B_Rq : 27|1@0+ (1,0) [0|1] "SED" GWM - SG_ EngExhBrkAutoLamp_B_Rq : 3|1@0+ (1,0) [0|1] "SED" GWM - SG_ EngAout_N_MxAllw : 52|13@0+ (2,0) [0|16382] "rpm" SOBDMC_HPCM_FD1,GWM - SG_ EngExhBrkMde_D_Actl : 31|4@0+ (1,0) [0|15] "SED" TCM_DSL,GWM - -BO_ 377 EngineData_7: 8 PCM_HEV - SG_ HvacAirFullOut_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM - SG_ FuelFlw_Vl_Dsply : 49|10@0+ (25,0) [0|25575] "Micro_Liter" GWM - SG_ FuelFillInlet_B_Dsply : 32|1@0+ (1,0) [0|1] "SED" GWM - SG_ EngSrvcRqd_B_Rq : 19|1@0+ (1,0) [0|1] "SED" GWM - SG_ OdoCount : 47|8@0+ (0.2,0) [0|50.8] "Meters" GWM - SG_ EngOilLife_Pc_Actl : 39|7@0+ (1,0) [0|100] "Percent" GWM - SG_ FuelFilterLamp_B_Dsply : 50|1@0+ (1,0) [0|1] "SED" GWM - SG_ AirCondRec_B_Rq : 55|1@0+ (1,0) [0|1] "SED" GWM - SG_ AirCondClutch_B_Stats : 51|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 376 EngineClimateData: 8 PCM_HEV - SG_ GasPrtc_D_RqDsply : 22|3@0+ (1,0) [0|7] "SED" GWM - SG_ EngAout_Aa_Actl : 17|10@0+ (0.05,-25.6) [-25.6|25.55] "rpm/ms" ABS_ESC,GWM - SG_ DynoMde_B_Cmd : 4|1@0+ (1,0) [0|1] "SED" TCM_DSL,ABS_ESC,GWM - SG_ AslIconDsply_D_Rq : 3|2@0+ (1,0) [0|3] "SED" GWM - SG_ AslChime_B_Rq : 39|1@0+ (1,0) [0|1] "SED" GWM - SG_ HvacHtrCore2_Te_Actl : 1|10@0+ (0.25,-50) [-50|205.5] "degC" SOBDMC_HPCM_FD1,GWM - SG_ EcssLamp_D_RqDsply : 19|2@0+ (1,0) [0|3] "SED" GWM - SG_ AirAmbTe_D_Qf : 35|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,TCCM,GWM - SG_ AirAmb_Te_ActlFilt : 49|10@0+ (0.25,-128) [-128|127.75] "deg C" SOBDMC_HPCM_FD1,IPMA_ADAS,GWM - SG_ AirAmb_Te_Actl : 33|10@0+ (0.25,-128) [-128|127.75] "degC" ABS_ESC,TCCM,GWM - SG_ AirAmb_P_Actl : 55|6@0+ (10,500) [500|1110] "mbar" ABS_ESC,TCM_DSL,GWM - -BO_ 373 EngineData_11: 8 ECM_Diesel - SG_ DieslPrtc2_D_RqDsply : 47|4@0+ (1,0) [0|15] "SED" GWM - SG_ DieslPrtcRgen_D_Actl : 38|2@0+ (1,0) [0|3] "SED" TCM_DSL,GWM - SG_ EngTeColdPrtct_D_Stats : 4|2@0+ (1,0) [0|3] "SED" GWM - SG_ EngExhOvrTe_B_RqDsply : 39|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 359 VehicleOperatingModes: 8 PCM_HEV - SG_ PrplWhlRgenMn_Tq_Actl : 25|13@0+ (4,-16380) [-16380|16380] "Nm" ABS_ESC,GWM - SG_ ElPw_D_StatStrtStop : 31|4@0+ (1,0) [0|15] "SED" ABS_ESC,PSCM,GWM - SG_ TrnAin_Tq_Actl : 42|11@0+ (1,-500) [-500|1547] "Nm" ABS_ESC,GWM - SG_ PrplWhlTot2_Tq_Actl : 15|16@0+ (4,-131072) [-131072|131060] "Nm" ABS_ESC,PSCM,TCCM,GWM - SG_ PwPckTq_D_Stat : 5|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM - SG_ Eng_D_Stat : 7|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - SG_ PlgActvArb_B_Actl : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ ElPw_D_Stat : 3|3@0+ (1,0) [0|7] "SED" VDM,CMR_DSMC,IPMA_ADAS,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM - SG_ TrnAinTq_D_Qf : 44|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - -BO_ 358 Stop_Start: 8 PCM_HEV - SG_ StopStrtStdby_D_Indic : 55|3@0+ (1,0) [0|7] "SED" GWM - SG_ StopStrtIODTxt_D_Rq : 52|5@0+ (1,0) [0|31] "SED" GWM - SG_ StopStrtDrvMde_D_Indic : 13|2@0+ (1,0) [0|3] "SED" GWM - SG_ StopStrtMsgTxt_D_Rq : 11|4@0+ (1,0) [0|15] "SED" GWM - SG_ OdoTripVerify_L_Actl : 31|24@0+ (0.1,0) [0|1677721.4] "km" GWM - SG_ HiElPwInhbt_B_Stat : 15|1@0+ (1,0) [0|1] "SED" GWM - SG_ AutoStopPtDelta_I_Est : 7|8@0+ (1,-127) [-127|127] "Amps" GWM - -BO_ 357 EngBrakeData: 8 PCM_HEV - SG_ BPedDrvAppl_D_QF : 15|2@0+ (1,0) [0|3] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,PSCM,TCM_DSL,GWM - SG_ CmbbDeny_B_ActlPrpl : 3|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ PrplTqMnSat_B_Actl : 41|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ BpedDrvAppl_D_Actl : 5|2@0+ (1,0) [0|3] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM - SG_ CmbbEngTqMn_B_Actl : 7|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM - SG_ Veh_V_DsplyCcSet : 23|8@0+ (1,0) [0|253] "Unitless" GWM,IPMA_ADAS - SG_ AccEngStat_D_Actl : 2|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,GWM - SG_ CcMde_D_Actl : 13|3@0+ (1,0) [0|7] "SED" VDM,TCM_DSL,ABS_ESC,GWM - SG_ CcStat_D_Actl : 10|3@0+ (1,0) [0|7] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,TCCM,TCM_DSL,GWM - SG_ EngAout_N_MnAllw : 52|13@0+ (2,0) [0|16382] "rpm" SOBDMC_HPCM_FD1,GWM - SG_ CcOvrrdActv_B_Actl : 6|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,ABS_ESC,TCCM,TCM_DSL,GWM - SG_ AccStopMde_D_Rq : 39|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,ABS_ESC,GWM - -BO_ 355 EngineData_10: 8 ECM_Diesel - SG_ AutoRgenTxt_B_RqDsply : 48|1@0+ (1,0) [0|1] "SED" GWM - SG_ AccFllwMdeActv_B_Actl : 32|1@0+ (1,0) [0|1] "SED" GWM - SG_ EngPtoMde_D_Actl : 60|3@0+ (1,0) [0|7] "SED" GWM - SG_ ManRgenTxt_D_RqDsply : 63|3@0+ (1,0) [0|7] "SED" GWM - SG_ ManRgenSoot_Pc_RqDsply : 39|7@0+ (1,0) [0|126] "%" GWM - SG_ DieslMsgTxt_D_Rq : 57|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 342 EngineData_6: 8 PCM_HEV - SG_ EngOvrhtMitgActv_D_Ind : 36|2@0+ (1,0) [0|3] "SED" GWM - SG_ EngClntTe_D_Qf : 33|2@0+ (1,0) [0|3] "SED" VDM,SOBDMC_HPCM_FD1,TCM_DSL,GWM - SG_ EngGoutLss_Tq_Est : 31|8@0+ (1,0) [0|255] "Nm" SOBDMC_HPCM_FD1,GWM - SG_ EngOil_Te_Actl : 15|8@0+ (1,-60) [-60|193] "degC" GWM - SG_ EngClnt_Te_Actl : 7|8@0+ (1,-60) [-60|195] "degC" VDM,SOBDMC_HPCM_FD1,TCM_DSL,GWM - -BO_ 71 Global_PATS_TargetInfo: 8 PCM_HEV - SG_ immoTarget1Status : 7|3@0+ (1,0) [0|7] "SED" ABS_ESC,TCM_DSL,GWM - SG_ immoTarget1Data : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" ABS_ESC,GWM - SG_ immoTarget1Cmd : 4|3@0+ (1,0) [0|7] "SED" ABS_ESC,GWM - -BO_ 1822 TesterPhysicalResGWM_FD1: 64 GWM - SG_ TesterPhysicalResGWM_F1 : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1438 GWM_AutoSar_NetMgmt_FD1: 8 GWM - SG_ GWM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - SG_ GWM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC - -BO_ 954 Body_Info_10_FD1: 8 GWM - SG_ GenericSwtch3_No_Actl : 15|3@0+ (1,0) [0|7] "unitless" Vector__XXX - SG_ GenericSwtch2_No_Actl : 4|3@0+ (1,0) [0|7] "unitless" Vector__XXX - SG_ GenericSwtch1_No_Actl : 7|3@0+ (1,0) [0|7] "unitless" Vector__XXX - -BO_ 1006 Personality_IPMB_Data: 8 IPMA_ADAS - SG_ PersIndexIpmb_D_Actl : 39|3@0+ (1,0) [0|7] "SED" GWM - SG_ FeatNoIpmbActl : 23|16@0+ (1,0) [0|65535] "Number" GWM - SG_ FeatConfigIpmbActl : 7|16@0+ (1,0) [0|65535] "Undefined" GWM - -BO_ 820 Adaptive_Headlamp_Stat: 8 GWM - SG_ AhbStatGfhbFdbk_D_Actl : 53|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ HeadLghtDrvSide_B_Stat : 33|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ HeadLghtHiOn_B_StatHcm : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Adaptive_Hdlmp_Fault : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 137 ActiveFrontStrg_Stat_FD1: 8 GWM - SG_ SteWhlOffstRq_D_Stat : 43|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ SteWhlOffst_An_TotActl : 23|15@0+ (0.1,-1600) [-1600|1676.5] "degrees" ABS_ESC - SG_ SteWhlBrkOffst_An_Actl : 7|15@0+ (0.1,-1600) [-1600|1676.5] "degrees" ABS_ESC - SG_ SteWhlBrkAnActl_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" ABS_ESC - SG_ SteWhlBrkAnActl_No_Cnt : 47|4@0+ (1,0) [0|15] "Unitless" ABS_ESC - -BO_ 129 Steering_Wheel_Data2_FD1: 8 GWM - SG_ SelDrvMdeSwtch_D_Stat4 : 21|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ SteWhlSwtchView_B_Stat : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchSet_B_Stat : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchPhon_B_Stat : 9|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchNav_B_Stat : 10|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchMed_B_Stat : 11|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchIod_B_Stat : 12|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchHud_B_Stat : 13|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchBack_B_Stat : 14|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchMenu_B_Stat : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteEffortInc_B_RqDrv : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SelDrvMdeInc_B_RqDrv : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SelDrvMdeDec_B_RqDrv : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SuspDampInc_B_RqDrv : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchUp_B_Stat : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchRght_B_Stat : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchOk_B_Stat : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchLeft_B_Stat : 1|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchDown_B_Stat : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchHome_B_Stat : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ SteWhlSwtchInfo_B_Stat : 18|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 935 Side_Detect_R_Stat: 8 IPMA_ADAS - SG_ SodRight_D_Stat : 15|3@0+ (1,0) [0|7] "SED" GWM - SG_ CtaAlrtRight2_D_Stat : 30|3@0+ (1,0) [0|7] "SED" GWM - SG_ BttRight_D_Stat : 45|3@0+ (1,0) [0|7] "SED" GWM - SG_ BttRight_D_RqDrv : 47|2@0+ (1,0) [0|3] "SED" GWM - SG_ CtaBrkRightMsgTxt_B_Rq : 42|1@0+ (1,0) [0|1] "SED" GWM - SG_ CtaRightBrkEnbl_B_Rq : 31|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ CtaRightBrkDecel_B_Rq : 7|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ Side_Detect_R_Illum : 39|8@0+ (1,0) [0|255] "Percent" GWM - SG_ CtaSnsRight_D_Stat : 25|2@0+ (1,0) [0|3] "SED" GWM - SG_ CtaAlrtRight_D_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ CtaRight_D_Stat : 18|3@0+ (1,0) [0|7] "SED" GWM - SG_ SodSnsRight_D_Stat : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ SodAlrtRight_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ SodDetctRight_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ SodWarnRight_Prd_Rq : 6|7@0+ (1,0) [0|127] "millisecond" GWM - -BO_ 1108 RCMSerialNumber_FD1: 8 GWM - SG_ RCMSerialNoByte8 : 63|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte7 : 55|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte6 : 47|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte5 : 39|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte4 : 31|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte3 : 23|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte2 : 15|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - SG_ RCMSerialNoByte1 : 7|8@0+ (1,0) [0|253] "Unitless" ABS_ESC - -BO_ 261 APIM_Request_Signals_FD1: 8 GWM - SG_ ChrgStatDsply_D_Rq : 47|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ OffPeakTimeSetMin_Rq : 13|6@0+ (1,0) [0|63] "unitless" Vector__XXX - SG_ OffPeakTimeSetHR_Rq : 7|5@0+ (1,0) [0|31] "unitless" Vector__XXX - SG_ NextUsageTimeToggle_Rq : 15|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ LongTermParking_Rq : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ CbnCmrtPrefLstNmItm_Rq : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ CbnCmrtPrefListIndx_Rq : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ ModemReset_D_Rq : 45|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1 - SG_ StopStrtDrvMde_B_RqBtn3 : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TCU_ESN_D_Rq : 22|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ FactoryReset_Rq : 18|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - -BO_ 1146 TrailerInfo_2_FD1: 8 GWM - SG_ TrlrAidSwtch_D_RqDrv : 35|2@0+ (1,0) [0|3] "SED" PSCM,IPMA_ADAS - SG_ TrlrAidCtl_U_RqDrv : 31|12@0+ (0.00125,0) [0|5.11625] "volt" PSCM - -BO_ 533 APIM_Send_Signals_2_FD1: 8 GWM - SG_ DcacGfciTestBttn_B_Stat : 9|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ TrlrBrkGain_No_Rq : 55|5@0+ (0.5,0) [0|15.5] "unitless" Vector__XXX - SG_ DcacPwResetButtn_B_Stat : 11|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacPwOffButtn_B_Stat : 12|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacPwLoButtn_B_Stat : 13|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacPwHiButtn_B_Stat : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacPwButtn_B_Falt : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ TrlrHitch_D_RqMnu : 23|4@0+ (1,0) [0|15] "SED" IPMA_ADAS - SG_ AutoEpbZoomView_B_Stat : 32|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ AutoEpbButtn_B_Stat : 19|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ TrlrAidMde_D_Rq : 5|2@0+ (1,0) [0|3] "SED" PSCM - SG_ TCU_Init_Actvtn_St : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TCU_Final_Actvtn_St : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ OtaTrg_D_Stat : 41|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ OnbChrgGoTTouch_D_Rq : 43|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTPrcond_D_Rq : 34|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTOn_D_Rq : 25|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTMnte_D_Rq : 47|4@0+ (1,0) [0|15] "minute" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTHr_T_Rq : 39|5@0+ (1,0) [0|29] "hour" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTExtHtr_D_Rq : 27|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTElement_D_Rq : 31|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 - SG_ OnbChrgGoTDelete_B_Rq : 17|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ OnbChrgClearAll_B_Rq : 18|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ PaakMyKey_D_Rq : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ OnbChrgGoTUpdate_B_Rq : 16|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - -BO_ 1041 AC_Compressor_Data_FD1: 8 GWM - SG_ ElCmprUHi_U_Actl : 31|8@0+ (2,0) [0|510] "volt" SOBDMC_HPCM_FD1 - SG_ ElCmprUHi_D_Stat : 23|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprOverTe_D_Stat : 21|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmpr_N_Actl : 15|8@0+ (50,0) [0|12700] "RPM" SOBDMC_HPCM_FD1 - SG_ ElCmpr_Pw_Actl : 7|8@0+ (40,0) [0|10160] "watts" SOBDMC_HPCM_FD1,PCM_HEV - SG_ ElCmpr_D_Stat : 19|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprPerfErr_D_Falt : 43|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprInnrErr_D_Falt : 35|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprLostComm_D_Falt : 33|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprOverLoad_D_Falt : 47|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprOverTe_D_Falt : 45|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprBattURng_D_Falt : 37|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprBattSysU_D_Falt : 39|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ ElCmprSysU_D_Falt : 41|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - -BO_ 1067 Battery_Mgmt_4_FD1: 8 GWM - SG_ BattULoAuxIsol_D_Rq : 25|2@0+ (1,0) [0|3] "SED" PCM_HEV - SG_ BattULoAux_U_Rq : 55|12@0+ (0.00390625,0) [0|15.9921875] "volt" PCM_HEV - SG_ BattULoAuxSoc_Pc_Actl : 15|7@0+ (1,0) [0|127] "percent" PCM_HEV - SG_ BattULoAux_I_Actl : 23|12@0+ (0.0625,-128) [-128|127.875] "ampere" PCM_HEV - SG_ BattULoAux_D_Qlty : 27|2@0+ (1,0) [0|3] "SED" PCM_HEV - SG_ BattULoCrnkStrt_U_Pred : 47|7@0+ (0.1,0) [0|12.7] "volt" PCM_HEV - SG_ BattULoCrnkBelt_U_Pred : 39|7@0+ (0.1,0) [0|12.7] "volt" PCM_HEV - SG_ BattULoAux_U_Actl : 7|8@0+ (0.0625,0) [0|15.875] "volt" PCM_HEV - SG_ BattULoAux_B_Falt : 8|1@0+ (1,0) [0|1] "SED" PCM_HEV - -BO_ 1112 Battery_Traction_6_FD1: 8 GWM - SG_ BattTracChrgSustn_B_Rq : 4|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracCnnct_D_Cmd : 18|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracHvilOpen_B_Stat : 8|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracDcdcDis_B_Rq : 7|1@0+ (1,0) [0|1] "SED" PCM_HEV - SG_ HtrnClntPump_D_Stat : 6|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ BattTracDelta_Te_Actl : 63|8@0+ (0.5,-60) [-60|67.5] "degC" SOBDMC_HPCM_FD1 - SG_ BattTracClntPmp_D_Stat : 33|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - -BO_ 139 CruiseCtrl_Strg_Data_FD1: 8 GWM - SG_ AfsPw_B_Rq : 24|1@0+ (1,0) [0|1] "SED" PCM - SG_ AccButtnGpTogglePress2 : 25|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TjaButtnOnOffPress2 : 26|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ActvFrontSteMsgTxt_D_Rq : 31|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ ActvFrontSteLck_D_Stat : 17|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ SelDrvMdeAdptSte_D_Stat : 28|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ AslButtnOnOffPress2 : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AslButtnOnOffCnclPres2 : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcButtnOnPress2 : 18|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcButtnOnOffPress2 : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcButtnOnOffCnclPress2 : 20|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcButtnOffPress2 : 21|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAsllButtnResPress2 : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnSetPress2 : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnSetIncPress2 : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnSetDecPress2 : 9|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnResIncPress2 : 10|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnResDecPress2 : 11|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnOnPress2 : 12|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnOnOffCncl2 : 13|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnOffCnclPres2 : 14|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnIndxIncPres2 : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnIndxDecPres2 : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnDeny_B_Actl2 : 1|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnCnclResPres2 : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnCnclPress2 : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AccButtnGapIncPress2 : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AccButtnGapDecPress2 : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 1121 AllTerrainControlData_FD1: 8 GWM - SG_ SelDrvMdeSwtch_No_Actl : 2|2@0+ (1,0) [0|3] "unitless" ABS_ESC - SG_ SelDrvMdeSwtch_D_Stat : 4|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ SelDrvMdeCnt_D_Stat : 7|3@0+ (1,0) [0|7] "Counts" ABS_ESC - -BO_ 1120 FourByFourSwitchData_FD1: 8 GWM - SG_ DrvSlipCtlMde_B_Rq3 : 14|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ HybMdeSwtch_B_Rq : 13|1@0+ (1,0) [0|1] "SED" PCM_HEV - SG_ TrailCtlSwtch_B_Stat3 : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ RearDiffLck_D_RqDrv : 4|2@0+ (1,0) [0|3] "SED" PCM,TCCM - SG_ AwdMde_D_RqDrv : 7|3@0+ (1,0) [0|7] "SED" TCCM - SG_ HdcSwtchPos_B_Actl : 0|1@0+ (1,0) [0|1] "SED" ABS_ESC - -BO_ 1050 Climate_Control_Data_FD1: 8 GWM - SG_ AutoHoldSwtch_D_Stat : 20|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ LpdbPtc3_B_Rq : 36|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ LpdbPtc2_B_Rq : 37|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ LpdbPtc1_B_Rq : 38|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ LpdbHeatWiprPrk_B_Rq : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ LpdbDfrstRearOn_B_Rq : 24|1@0+ (1,0) [0|1] "SED" ECM_Diesel - SG_ SteWhlHeat_D_Rq : 13|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ MirrorHeatOn_B_Rq : 14|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Remote_Start_QuietMode : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Outside_Air_Temp_Stat : 7|8@0+ (0.5,-40) [-40|86.5] "Degrees C" VDM,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM - -BO_ 1137 Cluster_HEV_Data10_FD1: 8 PCM_HEV - SG_ RngPerChrgAvg_L_Dsply : 7|12@0+ (0.1,0) [0|409.3] "km" GWM - -BO_ 1255 BoundaryAlert_Right_4: 8 IPMA_ADAS - SG_ BalrRight4Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight4Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight4Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight4CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight4CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1254 BoundaryAlert_Right_3: 8 IPMA_ADAS - SG_ BalrRight3Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight3Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight3Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight3CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight3CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1253 BoundaryAlert_Right_2: 8 IPMA_ADAS - SG_ BalrRight2Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight2Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight2Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight2CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight2CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1252 BoundaryAlert_Right_1: 8 IPMA_ADAS - SG_ BalrRight1Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight1Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight1Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrRight1CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrRight1CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1251 BoundaryAlert_Left_4: 8 IPMA_ADAS - SG_ BalrLeft4Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft4Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft4Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft4CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft4CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1250 BoundaryAlert_Left_3: 8 IPMA_ADAS - SG_ BalrLeft3Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft3Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft3Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft3CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft3CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1249 BoundaryAlert_Left_2: 8 IPMA_ADAS - SG_ BalrLeft2Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft2Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft2Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft2CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft2CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1248 BoundaryAlert_Left_1: 8 IPMA_ADAS - SG_ BalrLeft1Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft1Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft1Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrLeft1CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - SG_ BalrLeft1CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM - -BO_ 1113 TrailerAid_Stat3: 8 IPMA_ADAS - SG_ TrlrTrgtAcquire_D_Stat : 51|3@0+ (1,0) [0|7] "SED" PSCM,GWM - SG_ TrlrAnOffst_An_Calc : 48|9@0+ (0.1,0) [0|51.1] "degrees" GWM - SG_ TrlrAnOffstDir_D_Calc : 33|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrlrAnCalib_B_Complt : 40|1@0+ (1,0) [0|1] "SED" GWM - SG_ TrlrRvrse_D_Stat : 42|2@0+ (1,0) [0|3] "SED" GWM,PSCM - SG_ TrlrAid_D2_Stat : 55|4@0+ (1,0) [0|15] "SED" GWM,PSCM - SG_ TrlrAidTrgtId_No_Actl : 47|5@0+ (1,0) [0|31] "unitless" GWM,PSCM - SG_ TrlrAid_An3_Actl : 28|11@0+ (0.125,-90) [-90|165.75] "degrees" PSCM,GWM - SG_ TrlrAid_AnRate2_Actl : 22|10@0+ (0.125,-50) [-50|77.75] "degrees/second" PSCM,GWM - SG_ HitchToVehAxle_L_Calc : 7|8@0+ (0.0127,-0.508) [-0.508|2.7178] "meter" PSCM,GWM - SG_ HitchToTrlrAxle_L_Calc2 : 15|9@0+ (0.0254,0) [0|12.9794] "meter" GWM - -BO_ 1105 Image_Processing_Data: 8 IPMA_ADAS - SG_ TrlrAidSwtchLamp_B_Rq : 32|1@0+ (1,0) [0|1] "SED" GWM - SG_ TrlrHitchMsgTxt_D_Rq : 47|6@0+ (1,0) [0|63] "SED" GWM - SG_ TrlrHitchIcon_D_Rq : 36|4@0+ (1,0) [0|15] "SED" GWM - SG_ TrlrHitchChime_D_Rq : 39|3@0+ (1,0) [0|7] "SED" GWM - SG_ TrlrAidEnbl_D_RqAdas : 5|3@0+ (1,0) [0|7] "SED" GWM,PSCM - SG_ TrlrRvrseMsgTxt_D2_Rq : 31|6@0+ (1,0) [0|63] "SED" PSCM,GWM - SG_ TrlrRvrseEnbl_D2_Stat : 18|3@0+ (1,0) [0|7] "SED" PSCM,GWM - SG_ RbaMsg_D_Rq : 22|2@0+ (1,0) [0|3] "SED" GWM - SG_ BrkDecel_B_RqRba : 8|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ BrkEnbl_B_RqRba : 23|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ Rba_D_Stat : 14|2@0+ (1,0) [0|3] "SED" GWM - SG_ RbaAlrt_D_Dsply : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ RbaMnu_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ CamraFrntStat_D_Stat : 7|2@0+ (1,0) [0|3] "SED" GWM - SG_ TrlrHitchLamp_D_Rq2 : 15|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 938 ParkAid_Aud_Warn_Stat: 8 IPMA_ADAS - SG_ SidePrkSnsR2_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM - SG_ SidePrkSnsR1_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM - SG_ SidePrkSnsL2_D_Stat : 51|4@0+ (1,0) [0|15] "SED" GWM - SG_ ApaMde_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ ApaActvSd_D_Actl : 14|2@0+ (1,0) [0|3] "SED" GWM - SG_ PrkAidSwtch_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ ApaMde_D_Avail : 12|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsFrCrnr_D_Stat : 47|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsFrCntr_D_Stat : 35|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsFlCrnr_D_Stat : 27|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsFlCntr_D_Stat : 31|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkBrkEl_B_RqFap : 20|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ RpaChime_D_Rq : 7|4@0+ (1,0) [0|15] "SED" GWM - SG_ FpaChime_D_Rq : 3|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidMsgTxt_D_Rq : 19|4@0+ (1,0) [0|15] "SED" GWM,PSCM - SG_ SidePrkSnsL1_D_Stat : 55|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidAudioMute_B_Rq : 15|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 939 ParkAid_Aud_Warn_Stat2: 8 IPMA_ADAS - SG_ ApaBrk_D_Rq : 51|2@0+ (1,0) [0|3] "SED" GWM - SG_ SidePrkSnsR4_D_Stat : 55|4@0+ (1,0) [0|15] "SED" GWM - SG_ SidePrkSnsR3_D_Stat : 47|4@0+ (1,0) [0|15] "SED" GWM - SG_ SidePrkSnsL4_D_Stat : 43|4@0+ (1,0) [0|15] "SED" GWM - SG_ SidePrkSnsL3_D_Stat : 37|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidChime_D_Stat : 4|2@0+ (1,0) [0|3] "SED" GWM - SG_ PrkAidSnsRlCntr_D_Stat : 15|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsRrCrnr_D_Stat : 31|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsRrCntr_D_Stat : 19|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidSnsRlCrnr_D_Stat : 11|4@0+ (1,0) [0|15] "SED" GWM - SG_ PrkAidRear_D_Stat : 39|2@0+ (1,0) [0|3] "SED" GWM - SG_ PrkAidFront_D_Stat : 2|2@0+ (1,0) [0|3] "SED" GWM - SG_ PrkAid_D_Falt : 7|3@0+ (1,0) [0|7] "SED" GWM - SG_ ApaLongCtrlEnbl_D_Rq : 0|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM - SG_ ApaBrk_A_Rq : 63|8@0+ (0.05,-12.75) [-12.75|0] "m/sec^2" ABS_ESC,ECM_Diesel,PCM,PCM_HEV,GWM - SG_ PrkAidLamp_D_Rq : 33|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 937 ParkAid_Data_2: 8 IPMA_ADAS - SG_ Veh_V_RqFap : 31|8@0+ (0.1,0) [0|25.5] "km/h" ECM_Diesel,PCM,PCM_HEV - SG_ TrnRngDRqFap_No_Cs : 23|8@0+ (1,0) [0|255] "unitless" PCM,PCM_HEV,TCM_DSL - SG_ TrnRngDRqFap_No_Cnt : 15|4@0+ (1,0) [0|15] "unitless" PCM,PCM_HEV,TCM_DSL - SG_ TrnRng_D_RqFap : 11|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM - SG_ FapLcDistToObj_L_Actl : 7|8@0+ (0.01,0) [0|2.53] "meter" ECM_Diesel,PCM,PCM_HEV - -BO_ 936 ParkAid_Data: 8 IPMA_ADAS - SG_ ApaButtnPrssd_B_Stat : 58|1@0+ (1,0) [0|1] "SED" PSCM - SG_ SAPPStatusCoding : 7|8@0+ (1,0) [0|255] "unitless" GWM - SG_ ApaSys_D_Stat : 61|3@0+ (1,0) [0|7] "SED" PSCM,GWM,ECM_Diesel,PCM,PCM_HEV - SG_ ApaSteWhl_D_RqDrv : 63|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaSteScanMde_D_Stat : 49|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaSelSapp_D_Stat : 51|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaSelPpa_D_Stat : 53|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaSelPoa_D_Stat : 55|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaScan_D_Stat : 41|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaLongCtl_D_RqDrv : 44|3@0+ (1,0) [0|7] "SED" GWM - SG_ ApaGearShif_D_RqDrv : 47|3@0+ (1,0) [0|7] "SED" GWM - SG_ ApaActvSide2_D_Stat : 33|2@0+ (1,0) [0|3] "SED" GWM - SG_ ApaAcsy_D_RqDrv : 36|3@0+ (1,0) [0|7] "SED" GWM - SG_ ApaTrgtDist_D_Stat : 11|4@0+ (1,0) [0|15] "SED" GWM - SG_ ApaMsgTxt_D_Rq : 15|4@0+ (1,0) [0|15] "SED" GWM - SG_ ApaChime_D_Rq : 39|3@0+ (1,0) [0|7] "SED" GWM - SG_ EPASExtAngleStatReq : 23|1@0+ (1,0) [0|1] "SED" PSCM,GWM,ABS_ESC - SG_ ExtSteeringAngleReq2 : 22|15@0+ (0.1,-1000) [-1000|2276.5] "Degrees" GWM,PSCM - -BO_ 877 HEV_Powertrain_Data7_FD1: 8 PCM_HEV - SG_ RngImpctDrv_L_Dsply : 39|9@0+ (1,-255) [-255|256] "km" GWM - SG_ RngImpctClim_L_Dsply : 16|9@0+ (1,-255) [-255|256] "km" GWM - SG_ VehElEffAvg_No_Dsply : 23|7@0+ (10,-100) [-100|1150] "wattHr/km" GWM - SG_ PwFlwFuelDrv_D_Dsply : 15|3@0+ (1,0) [0|7] "SED" GWM - SG_ PwFlwFuelClimt_B_Dsply : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwFlwFuelBatt_B_Dsply : 1|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwFlwBattClimt_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM - SG_ PwFlwBatt_D_Dsply : 7|4@0+ (1,0) [0|15] "SED" GWM - -BO_ 589 Battery_Traction_5_FD1: 8 GWM - SG_ BattTrac2_Pw_LimChrg : 31|13@0+ (50,0) [0|409550] "watts" PCM_HEV - SG_ BattTrac2_Pw_LimDchrg : 34|13@0+ (50,0) [0|409550] "watts" PCM_HEV - SG_ BattTrac2_Pw_DchrgInst : 53|13@0+ (50,0) [0|409550] "watts" PCM_HEV - SG_ BattTrac2_Pw_ChrgInst : 7|13@0+ (50,0) [0|409550] "watts" PCM_HEV - -BO_ 588 Battery_Traction_4_FD1: 8 GWM - SG_ BattTracSoc2_Pc_Actl : 29|14@0+ (0.01,0) [0|163.81] "%" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTrac_Te_Actl : 9|10@0+ (0.5,-50) [-50|460.5] "degC" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracDiagClr_B_Rq : 30|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 587 Battery_Traction_3_FD1: 8 GWM - SG_ BattTracClnt_Te_Actl : 41|8@0+ (0.5,-60) [-60|67.5] "degC" SOBDMC_HPCM_FD1 - SG_ BattTracWarnLamp_B_Rq : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ BattTracSrvcRqd_B_Rq : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ BattTracSoc_Pc_MxPrtct : 35|10@0+ (0.1,0) [0|100] "%" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracSoc_Pc_MnPrtct : 29|10@0+ (0.1,0) [0|100] "%" PCM_HEV - SG_ BattTracSoc_Pc_LimLo : 23|10@0+ (0.1,0) [0|100] "%" PCM_HEV - SG_ BattTracSoc_Pc_LimHi : 1|10@0+ (0.1,0) [0|100] "%" PCM_HEV - -BO_ 389 PreCond_Hev_Data2_FD1: 8 SOBDMC_HPCM_FD1 - SG_ BattTracClntFlw_Pc_Rq : 63|7@0+ (1,0) [0|127] "percent" GWM - SG_ HtrnOvrTeLamp_B_Dsply : 5|1@0+ (1,0) [0|1] "SED" GWM - SG_ HtrnMil_D_Rq : 7|2@0+ (1,0) [0|3] "SED" GWM - SG_ HtrnAin_UHi_Actl : 39|10@0+ (0.5,0) [0|510.5] "volt" GWM,PCM_HEV - SG_ HtrnSrvcRqd_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM - SG_ HtrnHvilOpen_B_Actl : 24|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV - SG_ PtWakeupDeltaT_T_Rq : 2|11@0+ (1,0) [0|2045] "minute" GWM - SG_ PreCondActv_B_Actl : 50|1@0+ (1,0) [0|1] "SED" GWM - SG_ DrvCondTpRrDefrs_B_Rq : 49|1@0+ (1,0) [0|1] "SED" GWM - SG_ BattTrac_I_EstVsc : 23|15@0+ (0.05,-750) [-750|888.25] "Amps" GWM - -BO_ 1009 APIM_Send_Signals1_FD1: 8 GWM - SG_ ChrgCordUnlock_B_Rq : 60|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AutoHoldSwtch_D_Stat3 : 50|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ TrlrTrgtAcquire_D_Rq : 63|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ TrlrAidCancl_B_Rq : 48|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM - SG_ CenterStackRing_D_Actl : 59|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ APIM_NumberofTracks_St : 39|16@0+ (1,0) [0|65535] "unitless" Vector__XXX - SG_ APIM_ActiveTrackNum_St : 7|32@0+ (1,0) [0|4294967295] "unitless" Vector__XXX - SG_ ValetMode_D_Stat : 57|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TrlrAidSetup_D_Stat : 55|3@0+ (1,0) [0|7] "SED" Vector__XXX - -BO_ 360 Gear_Shift_by_Wire_2_FD1: 8 GWM - SG_ GsmSrvcRqd_B_Rq : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TrnGearPwmFalt_B_Actl : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ GearButtnStuck_B_Actl : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - -BO_ 122 Battery_Traction_1_FD1: 8 GWM - SG_ BattTrac_U_LimLo : 47|8@0+ (2,0) [0|510] "volt" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTrac_U_LimHi : 39|8@0+ (2,0) [0|510] "volt" SOBDMC_HPCM_FD1,PCM_HEV - SG_ VehStrtInhbt_B_RqBatt : 23|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracOffFst_D_Actl : 22|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracOff_B_Actl : 20|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTracMil_D_Rq : 19|2@0+ (1,0) [0|3] "SED" PCM_HEV - SG_ BattTrac_U_Actl : 17|10@0+ (0.5,0) [0|510.5] "Volts" SOBDMC_HPCM_FD1,PCM_HEV - SG_ BattTrac_I_Actl : 6|15@0+ (0.05,-750) [-750|888.25] "Amps" SOBDMC_HPCM_FD1,PCM_HEV - -BO_ 90 Gear_Shift_by_Wire_FD1: 8 GWM - SG_ TrnGsmNtmState_D_Actl : 55|2@0+ (1,0) [0|3] "SED" ABS_ESC,PCM,PCM_HEV,TCM_DSL - SG_ DrQltyDrv_D_StatGsm : 42|3@0+ (1,0) [0|7] "SED" ABS_ESC,PCM,PCM_HEV,TCM_DSL,IPMA_ADAS - SG_ TrnBtsiOvrrd_B_Stat : 43|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ GsmGearMsgTxt_D_Rq : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TrnRng_D_RqGsm : 51|4@0+ (1,0) [0|15] "SED" PCM,TCM_DSL - SG_ PrkBrkActv_D_RqGsmGear : 53|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ TrnValidGearRq_D_Stat : 25|2@0+ (1,0) [0|3] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearRqCnt_B_Actl : 26|1@0+ (1,0) [0|1] "unitless" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_U_Actl : 23|8@0+ (0.05,0) [0|12.7] "VOLT" TCM_DSL - SG_ TrnGearButtn_B_ActlR2 : 8|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlR1 : 9|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlR0 : 10|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlP2 : 11|1@0+ (1,0) [0|1] "SED" TCM_DSL,PCM,PCM_HEV - SG_ TrnGearButtn_B_ActlP1 : 12|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlP0 : 13|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlN2 : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlN1 : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlN0 : 0|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlM2 : 1|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlM1 : 2|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlM0 : 3|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlD2 : 4|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlD1 : 5|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGearButtn_B_ActlD0 : 6|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ TrnGear_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" SOBDMC_HPCM_FD1,PCM,PCM_HEV,TCM_DSL - SG_ TrnGear_No_Cnt : 47|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1,PCM,PCM_HEV,TCM_DSL - SG_ TrnGear_D_RqDrv : 31|5@0+ (1,0) [0|31] "SED" SOBDMC_HPCM_FD1,PCM,PCM_HEV,TCM_DSL - SG_ BrkSwtchPos_B_ActlGsm : 7|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - -BO_ 1091 TrailerInfo_FD1: 8 GWM - SG_ ParkLampTrlrOut_B_Stat : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TrlrLampCtl_D_Stat : 4|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TrlrBattChrg_D_Stat : 2|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ StopLampTrlrOut_B_Stat : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TurnLampTrlrRr_B_Stat : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TurnLampTrlrRl_B_Stat : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TrlrLampCnnct_B_Actl : 7|1@0+ (1,0) [0|1] "SED" VDM,PCM_HEV,ECM_Diesel,PCM,TCM_DSL,ABS_ESC,IPMA_ADAS,PSCM - -BO_ 138 ActiveFrontStrg_Stat2_FD1: 8 GWM - SG_ SteWhlRelCalib_T_Actl : 7|8@0+ (1,0) [0|255] "ms" ABS_ESC - SG_ SteWhlRelCalib_An_Sns : 15|15@0+ (0.1,-1600) [-1600|1676.5] "deg" CMR_DSMC,PSCM,TCCM - -BO_ 131 Steering_Data_FD1: 8 GWM - SG_ HeadLghtHiFlash_D_Stat : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TurnLghtSwtch_D_Stat : 5|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM - SG_ WiprFront_D_Stat : 3|4@0+ (1,0) [0|15] "SED" ABS_ESC,IPMA_ADAS,PCM,PCM_HEV - SG_ LghtAmb_D_Sns : 15|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ AccButtnGapDecPress : 12|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ AccButtnGapIncPress : 11|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ AslButtnOnOffCnclPress : 10|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ AslButtnOnOffPress : 9|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ CcAslButtnCnclPress : 8|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ LaSwtchPos_D_Stat : 23|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ CcAslButtnCnclResPress : 21|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcAslButtnDeny_B_Actl : 20|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcAslButtnIndxDecPress : 19|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ CcAslButtnIndxIncPress : 18|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ CcAslButtnOffCnclPress : 17|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnOnOffCncl : 16|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnOnPress : 31|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcAslButtnResDecPress : 30|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAslButtnResIncPress : 29|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcAslButtnSetDecPress : 28|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcAslButtnSetIncPress : 27|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcAslButtnSetPress : 26|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CcAsllButtnResPress : 25|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcButtnOffPress : 24|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcButtnOnOffCnclPress : 39|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcButtnOnOffPress : 38|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ CcButtnOnPress : 37|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ HeadLghtHiFlash_D_Actl : 36|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ HeadLghtHiOn_B_StatAhb : 34|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ AhbStat_B_Dsply : 33|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AccButtnGapTogglePress : 32|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ WiprFrontSwtch_D_Stat : 47|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ HeadLghtHiCtrl_D_RqAhb : 43|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ TjaButtnOnOffPress : 40|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - -BO_ 787 Power_Liftgate_Stat_FD1: 8 GWM - SG_ DrLckCnt_No_ActlTgate : 12|4@0+ (1,0) [0|15] "unitless" Vector__XXX - SG_ DrTgateChime2_D_Rq : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ DrTGate_D_Rq : 2|2@0+ (1,0) [0|3] "SED" ECM_Diesel - SG_ PwLftgtIntSw_B_Stat : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Power_Liftgate_Mode_Stt : 4|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 953 Body_Info_8_FD1: 8 GWM - SG_ BattRgenLoDChrg_D_Rq : 27|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM - SG_ BattRgenLoChrg_D_Rq : 25|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM - SG_ ChrgCordLck_B_Stat : 31|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ChrgCordResp2_No_Actl : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ ChrgCordResp1_No_Actl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ WakeAlarm3_D_Stat : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ WakeAlarm2_D_Stat : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ WakeAlarm1_D_Stat : 5|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM_HEV - SG_ WakeAlarm0_D_Stat : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - -BO_ 1093 TrailerBrakeInfo_FD1: 8 GWM - SG_ TrlBrkInitOut_D_Stat : 10|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TrlrBrkOut_No_Dsply : 23|4@0+ (1,0) [0|15] "unitless" Vector__XXX - SG_ TrlrBrkMde_D_Actl : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TrlrBrkGain_No_Actl : 15|5@0+ (0.5,0) [0|15.5] "unitless" Vector__XXX - SG_ TrlrBrkDsply_B_Rq : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TrlrBrkDcnnt_B_Actl : 5|1@0+ (1,0) [0|1] "SED" VDM - SG_ TrlrBrkActCnnct_B_Actl : 6|1@0+ (1,0) [0|1] "SED" VDM,ECM_Diesel,PCM,TCM_DSL,ABS_ESC,PSCM,TCCM,IPMA_ADAS - SG_ StopLamp_B_RqTrlrBrk : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TrlrBrkCtl_B_Falt : 4|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ TrlrBrkActCirct_B_Falt : 1|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - -BO_ 792 IPC_Send_Signals_2_FD1: 8 GWM - SG_ FuelRange_L_Dsply : 45|14@0+ (0.1,0) [0|1638.3] "km" ECM_Diesel - SG_ ElTrip_L_Dsply : 31|16@0+ (0.1,0) [0|6553.3] "unitless" Vector__XXX - SG_ ElLongTerm_L_Dsply : 7|24@0+ (0.1,0) [0|1677721.3] "unitless" Vector__XXX - -BO_ 968 Cluster_Lighting_Rq_FD1: 8 GWM - SG_ SlMde_D_Rq : 27|2@0+ (1,0) [0|3] "SED" ECM_Diesel - SG_ IsaOffst_D_Rq : 31|4@0+ (1,0) [0|15] "SED" ECM_Diesel - -BO_ 819 Pass_Dr_Stat_FD1: 8 GWM - SG_ RollCode_No_ActlPdm : 31|16@0+ (1,0) [0|65535] "Unitless" Vector__XXX - SG_ Memory_3_SwPsngr_Stat : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Memory_2_SwPsngr_Stat : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Memory_1_SwPsngr_Stat : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ BLISLEDStatPassSide : 2|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ WndwPsngrSide_D_Stat : 4|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM - SG_ Pasngr_Lock_Sw_Stat : 6|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Pasngr_Lock_Sw_Cnt : 15|8@0+ (1,0) [0|255] "Cnt" Vector__XXX - SG_ ChildLckFdbckRp_B_Stat : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 818 Driver_Dr_Stat_FD1: 8 GWM - SG_ BLISLEDStatDriverSide : 47|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ ChildLckPw_N_Cnt : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ WndwDrvSide_D_Stat : 1|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM - SG_ RollCodeDrvDrKeyCyl : 23|16@0+ (1,0) [0|65535] "Unitless" Vector__XXX - SG_ KeyCylSwDrvDr_D_Stat : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Driver_Lock_Sw_Stat : 5|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Driver_Lock_Sw_Cnt : 15|8@0+ (1,0) [0|255] "Cnt" Vector__XXX - SG_ ChildLckPw_D_Rq : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ChildLckFdbckRd_B_Stat : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ RvrseMirrorChime_B_Rq : 45|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 806 Compressor_Req_FD1: 8 GWM - SG_ SnowPlowMde_B_Enbl : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ StopStrtDrvMde_B_RqBtn : 3|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM - SG_ HvacHtrCore_Te_Rq : 49|10@0+ (0.25,-50) [-50|205.75] "degC" PCM_HEV,SOBDMC_HPCM_FD1,ECM_Diesel - SG_ ClimtHeat_D_Rq : 20|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV - SG_ ClimtCool_D_Rq : 23|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV - SG_ HvacEvap_Te_Rq : 33|10@0+ (0.125,-50) [-50|77.875] "Degrees C" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV - SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50) [-50|77.75] "Degrees C" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV - SG_ HvacAirCond_B_Rq : 7|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ HvacEvap_Te_Offst : 1|10@0+ (0.125,-50) [-50|77.875] "Degrees C" ECM_Diesel,PCM,PCM_HEV - SG_ ClimtPw_B_Rq : 5|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM - -BO_ 765 Mc_Send_Signals_2_FD1: 8 GWM - SG_ Mc_VehTimeFrmtUsrSel_St : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Running_Board_Cmd : 21|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ EngExhMdeQuiet_D2_Rq : 55|3@0+ (1,0) [0|7] "SED" PCM - SG_ EdmSailMde_B_RqDrv : 48|1@0+ (1,0) [0|1] "SED" ECM_Diesel - SG_ DrvInputRequired_B_Rq : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AwdRnge_D_ActlIpc : 29|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ BalrSwtch_D_Stat : 57|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ BalrMde_D_Rq : 59|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ WaitToStartLamp_D_Falt : 50|2@0+ (1,0) [0|3] "SED" ECM_Diesel - SG_ EsaOn_B_Rq : 15|1@0+ (1,0) [0|1] "SED" PSCM - SG_ BttOn_B_Rq : 26|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ Btt_L_Actl : 39|7@0+ (0.1,0) [0|12.5] "meter" IPMA_ADAS - SG_ SelDrvMdeTxtReset_B_Rq : 40|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ SelDrvMdeDsply_B_Avail : 41|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ Mc_VehUntTrpCoUsrSel_St : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Mc_VehUnitTempUsrSel_St : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Mc_VehLangUsrSel_St : 7|6@0+ (1,0) [0|63] "SED" Vector__XXX - -BO_ 559 ElecHorizon_Data2_FD1: 8 GWM - SG_ EhData2_No_Actl : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" IPMA_ADAS,ECM_Diesel - -BO_ 558 ElecHorizon_Data1_FD1: 8 GWM - SG_ EhData1_No_Actl : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" IPMA_ADAS,ECM_Diesel - -BO_ 934 Side_Detect_L_Stat: 8 IPMA_ADAS - SG_ CtaAlrtLeft2_D_Stat : 30|3@0+ (1,0) [0|7] "SED" GWM - SG_ CtaBrkLeftMsgTxt_B_Rq : 42|1@0+ (1,0) [0|1] "SED" GWM - SG_ CtaLeftBrkDecel_B_Rq : 7|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ CtaLeftBrkEnbl_B_Rq : 31|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ Side_Detect_L_Illum : 39|8@0+ (1,0) [0|255] "Percent" GWM - SG_ BttLeft_D_Stat : 45|3@0+ (1,0) [0|7] "SED" GWM - SG_ BttLeft_D_RqDrv : 47|2@0+ (1,0) [0|3] "SED" GWM - SG_ CtaSnsLeft_D_Stat : 25|2@0+ (1,0) [0|3] "SED" GWM - SG_ SodDetctLeft_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ CtaLeft_D_Stat : 18|3@0+ (1,0) [0|7] "SED" GWM - SG_ CtaAlrtLeft_D_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ SodLeft_D_Stat : 15|3@0+ (1,0) [0|7] "SED" GWM - SG_ SodSnsLeft_D_Stat : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ SodAlrtLeft_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ SodWarnLeft_Prd_Rq : 6|7@0+ (1,0) [0|127] "millisecond" GWM - -BO_ 1072 Cluster_Info1_FD1: 8 GWM - SG_ LscmbbStat_B_Actl : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ HaDsplyCpblty_B_Stat : 42|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ AccDeny_B_RqIpc : 7|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ DrvSlipCtlMde_D_Rq : 33|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ EngIdlShutDown_B_RqDrv : 3|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ HsaMde_D_Rq : 54|2@0+ (1,0) [0|3] "SED" ABS_ESC - SG_ NtrlTowMdeEnbl_B_RqDrv : 1|1@0+ (1,0) [0|1] "SED" TCCM,TCM_DSL,PCM_HEV,PCM - SG_ BulbChkActv_B_Stat : 55|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ParkDetect_Stat : 52|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM - SG_ ReducedGuard_D_Rq : 51|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TrlrBrkMde_D_Rq : 57|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TRLR_SWAY_CONFIG_CMD : 56|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ TRAILER_BRAKE_CONFIG : 37|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Power_Liftgate_Mode_Cmd : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ AccEnbl_B_RqDrv : 35|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ OdometerMasterValue : 15|24@0+ (1,0) [0|16777214] "km" VDM,SOBDMC_HPCM_FD1,TCCM,CMR_DSMC,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM,TCM_DSL - SG_ EngOilLife_B_RqReset : 43|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ ePRNDL_MODE : 0|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ DrvSlipCtlMde_B_Rq2 : 34|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ MetricActv_B_Actl : 6|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ KeyTypeChngMykey_D_Rq : 41|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ManRgen_D_Rq : 5|2@0+ (1,0) [0|3] "SED" ECM_Diesel - -BO_ 909 Body_Info_6_FD1: 8 GWM - SG_ IgnPsswrdDsply_B_Rq : 57|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ ElPwPoint_D_Rq : 59|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PoliceIdlMde_D_Stat : 55|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ DrLatchMsgTxt_D_Rq : 43|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ SecurityMsgTxt_D_Rq : 47|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PrmtrAlrmEvnt_D_Stat : 35|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ HeadLghtHiPrmsn_D_Stat : 51|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ SteWhlLckMsgTxt_D_Rq : 25|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ immoMsgTxt_D_Rq : 39|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ PrsnlDevcChrgEnbl_B_Rq : 40|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TracKeyMde_D_Stat : 45|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PEBackupSlot_Stats : 27|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ KeyMykeyTot_No_Cnt : 3|4@0+ (1,0) [0|15] "Counts" Vector__XXX - SG_ Keycode_Status : 15|20@0+ (1,0) [0|1048575] "unitless" Vector__XXX - SG_ KeyAdmnTot_No_Cnt : 7|4@0+ (1,0) [0|15] "Counts" Vector__XXX - -BO_ 963 BCM_Lamp_Stat_FD1: 8 GWM - SG_ Illuminated_Entry_Stat : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Dr_Courtesy_Light_Stat : 49|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Courtesy_Delay_Status : 51|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ImpactEvntFdbck_D_Stat : 53|2@0+ (1,0) [0|3] "SED" CMR_DSMC - SG_ WrlssAcsyChrgInhbt_B_Rq : 40|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PudLampPsngr_D_Rq : 57|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ HeadLampLoOut_B_Stat : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CrnrLghtRight_Pc_Rq : 47|7@0+ (1,0) [0|100] "percent" Vector__XXX - SG_ CrnrLghtLeft_Pc_Rq : 39|7@0+ (1,0) [0|100] "percent" Vector__XXX - SG_ HeadLghtHiFdbck_D_Stat : 55|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PudLampDrv_D_Rq : 59|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ TrnNotInPrkChime_B_Rq : 24|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PrkLightChime_B_Rq : 25|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ KeyInIgnWarn_B_Cmd : 27|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ HomeSafeLtChime_B_Rq : 28|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ StopLghtOn_B_Stat : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ RvrseLghtOn_B_Stat : 9|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PrkLght_D_Stat : 13|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ HeadLghtSwtch_D_Stat : 15|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ HeadLampLoFrOn_B_Stat : 2|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ HeadLampLoFlOn_B_Stat : 3|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ HeadLampLoActv_B_Stat : 4|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PCM,ECM_Diesel - SG_ Headlamp_On_Wrning_Cmd : 29|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Park_Brake_Chime_Rqst : 26|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ HeadLghtHiOn_B_Stat : 1|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM - SG_ BrkWarnInd_B_Rq : 20|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Brk_Fluid_Lvl_Low : 31|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ ReducedGuard_D_Stat : 19|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Perimeter_Alarm_Status : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ Courtesy_BSave_Stat : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ DrTgateLck_D_Stat : 61|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ WndwGlbl_D_Cmd : 23|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ PudLamp_D_Rq : 11|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ DayRnngLampOn_B_Stat : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PerimeterAlarmChimeRq : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 145 Yaw_Data_FD1: 8 GWM - SG_ VehYawWActl_D_Qf : 53|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ABS_ESC - SG_ VehRolWActl_D_Qf : 55|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ABS_ESC - SG_ VehRollYawW_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,ABS_ESC - SG_ VehRollYaw_No_Cnt : 47|8@0+ (1,0) [0|255] "Unitless" VDM,IPMA_ADAS,ABS_ESC - SG_ VehYaw_W_Actl : 23|16@0+ (0.0002,-6.5) [-6.5|6.6066] "rad/s" VDM,ABS_ESC,PSCM,IPMA_ADAS - SG_ VehRol_W_Actl : 7|16@0+ (0.0002,-6.5) [-6.5|6.6066] "rad/s" VDM,ABS_ESC,IPMA_ADAS - -BO_ 76 RCMStatusMessage2_FD1: 8 GWM - SG_ FirstRowBuckleMid : 28|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ SecondRowBucklePsngr : 23|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ SecondRowBuckleMid : 9|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ SecondRowBuckleDriver : 11|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ FirstRowBuckleDriver : 15|2@0+ (1,0) [0|3] "SED" CMR_DSMC,ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL - SG_ RILReq : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ FirstRowBucklePsngr : 13|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ RstrnImpactEvntStatus : 3|3@0+ (1,0) [0|7] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL - SG_ PsngrFrntDetct_D_Actl : 5|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ EDRTriggerEvntSync : 29|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ PassRstrnInd_Req : 31|2@0+ (1,0) [0|3] "SED" Vector__XXX - -BO_ 65 Global_PATS_Cntrl_Info_FD1: 8 GWM - SG_ immoControlData_T1 : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" ECM_Diesel,PCM,PCM_HEV - SG_ immoControlCmd_T1 : 7|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV - -BO_ 1076 Cluster_Info_3_FD1: 8 GWM - SG_ HILL_DESC_SW : 32|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ AutoRgen_D_Rq : 34|2@0+ (1,0) [0|3] "SED" ECM_Diesel - SG_ W2S_LAMP_OK : 37|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ OdoTripRx_B_Actl : 2|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ Veh_V_CompLimMx : 47|12@0+ (0.1,0) [0|409.5] "km/h" ECM_Diesel,PCM,PCM_HEV - SG_ DrvSlipCtlMde_B_RqMyKey : 38|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ FuelLvlWarn_D_Actl : 51|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ FuelSecndActv_B_Actl : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ FuelLvlPssvSide_No_Raw : 17|10@0+ (1,0) [0|1023] "Unitless" ECM_Diesel,PCM,PCM_HEV - SG_ FUEL_SENSOR_NUM : 35|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ FuelLvlActvSide_No_Raw : 49|10@0+ (1,0) [0|1023] "Unitless" ECM_Diesel,PCM,PCM_HEV - SG_ FuelLvl_Pc_Dsply : 1|10@0+ (0.108696,-5.217408) [-5.217408|105.9786] "Percent" VDM,ECM_Diesel - SG_ DISPLAY_SPEED_SCALING : 23|4@0+ (0.5,100) [100|107.5] "%" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV - SG_ DISPLAY_SPEED_OFFSET : 7|3@0+ (0.5,0) [0|3.5] "kph" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV - -BO_ 862 Climate_Cntrl_Data_2_FD1: 8 GWM - SG_ AutoStpHvacDelta_I_Est : 15|8@0+ (1,-192) [-192|62] "ampere" Vector__XXX - SG_ HvacBlwrFront_D_Stat : 55|5@0+ (1,0) [0|31] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ CabnAmb_Te_Actl : 39|8@0+ (0.5,-57) [-57|70] "degreesC" SOBDMC_HPCM_FD1,PCM_HEV - SG_ HvacRemoteStrt_N_Rq : 7|4@0+ (100,450) [450|1950] "RPM" ECM_Diesel,PCM,PCM_HEV - SG_ ClimtThrmlLoad_No_Actl : 47|8@0+ (1,0) [0|254] "unitless" SOBDMC_HPCM_FD1,PCM_HEV - SG_ HvacRec_Pc_Est : 23|7@0+ (1,0) [0|127] "Percent" PCM_HEV,SOBDMC_HPCM_FD1 - SG_ HvacAir_Flw_Est : 16|9@0+ (0.5,0) [0|255.5] "liter/second" SOBDMC_HPCM_FD1 - -BO_ 931 Body_Info_9_FD1: 8 GWM - SG_ PtWakeReas_D_Stat : 38|4@0+ (1,0) [0|15] "SED" PCM_HEV - SG_ VehOnSrc_D_Stat : 19|4@0+ (1,0) [0|15] "SED" ABS_ESC,PCM_HEV,ECM_Diesel,PCM - SG_ StrtrMtrCtlDStat_No_Cs : 31|8@0+ (1,0) [0|255] "unitless" PCM_HEV,ECM_Diesel,PCM - SG_ EngStrtActv_B_Stat : 39|1@0+ (1,0) [0|1] "SED" PCM_HEV,ECM_Diesel,PCM - SG_ EngStrt_B_Rq : 0|1@0+ (1,0) [0|1] "SED" PCM_HEV,ECM_Diesel,PCM - SG_ DrvInCtl_B_Stat : 1|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ AdvStrt_D_Stat : 23|4@0+ (1,0) [0|15] "SED" PCM_HEV,ECM_Diesel,PCM - SG_ CrnkInhbt_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" ECM_Diesel,PCM,PCM_HEV - SG_ CrnkInhbt_No_Cnt : 6|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel,PCM,PCM_HEV - SG_ CrnkInhbt_B_Stat : 7|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ IgnPreOffActv_B_Stat : 2|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - -BO_ 578 Body_Info_4_FD1: 8 GWM - SG_ PtLatchActv_B_RqBcm : 56|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL - SG_ immoSecureIdleMode : 61|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ ReFuelSwtchStat_D_Actl : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ FuelPumpPwr_D_Stat : 50|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ BattULo_U_Actl : 39|8@0+ (0.0625,0) [0|15.875] "volt" CMR_DSMC,SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,PSCM,ECM_Diesel,PCM,PCM_HEV - SG_ PrkLckCtl_B_Enbl : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PrkLckCtlMsgTxt_D_Rq : 55|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PrkLckCtlAvail_T_Stat : 47|8@0+ (1,0) [0|255] "second" Vector__XXX - SG_ BrkTrnShifLck_B_Stat : 23|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL - SG_ PrkLckCtlUnlck_D_Stat : 58|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ PrkLckCtlTow_B_Enbl : 59|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DriverCrankingReq : 51|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ EngOff_T_Actl : 7|16@0+ (1,0) [0|65534] "second^0.5" ABS_ESC,IPMA_ADAS,TCCM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL - SG_ DcacElPw_D_Rq : 53|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM - SG_ BattULo_I_Actl : 21|14@0+ (0.0625,-512) [-512|511.875] "ampere" ECM_Diesel,PCM,PCM_HEV - -BO_ 947 BodyInfo_3_FD1: 8 GWM - SG_ ValetMode_D_Mem : 16|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DimmingLvlEvnt_No_Actl : 18|2@0+ (1,0) [0|3] "unitless" Vector__XXX - SG_ DrStatDrvErrCnt_B_Stat : 19|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ TurnLghtRight_D_Rq : 63|2@0+ (1,0) [0|3] "SED" CMR_DSMC,IPMA_ADAS - SG_ TurnLghtRightOn_B_Stat : 35|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ TurnLghtLeftOn_B_Stat : 54|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ FogLghtRearOn_B_Stat : 1|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ Backlit_LED_Status : 23|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ TurnLghtLeft_D_Rq : 9|2@0+ (1,0) [0|3] "SED" CMR_DSMC,IPMA_ADAS - SG_ FogLghtFrontOn_B_Stat : 56|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ IgnKeyType_D_Actl : 39|4@0+ (1,0) [0|15] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV - SG_ Parklamp_Status : 3|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ Litval : 47|8@0+ (1,0) [0|253] "SED" IPMA_ADAS - SG_ Key_In_Ignition_Stat : 11|1@0+ (1,0) [0|1] "SED" ABS_ESC - SG_ Ignition_Status : 7|4@0+ (1,0) [0|15] "SED" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL - SG_ Dimming_Lvl : 31|8@0+ (1,0) [0|253] "SED" IPMA_ADAS - SG_ Day_Night_Status : 15|2@0+ (1,0) [0|3] "SED" CMR_DSMC,ECM_Diesel,IPMA_ADAS,PCM - SG_ Remote_Start_Status : 13|2@0+ (1,0) [0|3] "SED" CMR_DSMC,IPMA_ADAS - SG_ DrStatTgate_B_Actl : 0|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ DrStatRr_B_Actl : 49|1@0+ (1,0) [0|1] "SED" ABS_ESC,IPMA_ADAS - SG_ DrStatRl_B_Actl : 48|1@0+ (1,0) [0|1] "SED" ABS_ESC,IPMA_ADAS - SG_ DrStatPsngr_B_Actl : 60|1@0+ (1,0) [0|1] "SED" CMR_DSMC,ABS_ESC,IPMA_ADAS - SG_ DrStatInnrTgate_B_Actl : 58|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ DrStatHood_B_Actl : 59|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DrStatDrv_B_Actl : 61|1@0+ (1,0) [0|1] "SED" CMR_DSMC,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,TCCM - SG_ PrkBrkActv_B_Actl : 55|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,TCCM,TCM_DSL - SG_ LifeCycMde_D_Actl : 53|4@0+ (1,0) [0|15] "SED" VDM,SOBDMC_HPCM_FD1,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM,TCM_DSL - SG_ Delay_Accy : 57|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CrashEvnt_D_Stat : 34|2@0+ (1,0) [0|3] "SED" Vector__XXX - SG_ FuelPmpInhbt_B_Stat : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ BodySrvcRqd_B_Rq : 10|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 1084 Battery_Mgmt_3_FD1: 8 GWM - SG_ BattULoChrg_URate_RqMx : 63|6@0+ (0.1,0) [0|6.3] "volts/second" ECM_Diesel,PCM,PCM_HEV - SG_ BattULoChrg_U_RqMx : 55|6@0+ (0.1,10.6) [10.6|16.9] "volt" ECM_Diesel,PCM,PCM_HEV - SG_ BattULoChrg_U_RqMn : 45|6@0+ (0.1,10.6) [10.6|16.9] "volt" ECM_Diesel,PCM,PCM_HEV - SG_ BattULoState_D_Qlty : 47|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ BSFault : 7|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV - SG_ BattULo2_Te_Actl : 30|7@0+ (1,-40) [-40|86] "degC" ECM_Diesel,PCM,PCM_HEV - SG_ BSBattSOC : 22|7@0+ (1,0) [0|127] "%" ECM_Diesel,PCM,PCM_HEV - SG_ BSBattQDeltaRideAh : 6|15@0+ (0.0078125,-100) [-100|155.9921875] "ampere*hour" ECM_Diesel,PCM,PCM_HEV - SG_ BSBattQCapAh : 38|7@0+ (1,0) [0|127] "ampere*hour" ECM_Diesel,PCM,PCM_HEV - -BO_ 1068 Battery_Mgmt_2_FD1: 8 GWM - SG_ EngStrtInhbt_B_RqBatt : 2|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM - SG_ BattULoChrg_D_Rq : 7|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM - SG_ PwSysULoFalt_D_Stat : 12|4@0+ (1,0) [0|15] "SED" Vector__XXX - SG_ Shed_T_Eng_Off_B : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Shed_Feature_Group_ID : 20|5@0+ (1,0) [0|31] "SED" ECM_Diesel,PCM,PCM_HEV,IPMA_ADAS - SG_ Shed_Drain_Eng_Off_B : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Shed_Level_Req : 23|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,IPMA_ADAS - SG_ BattULoSrvc_T_Actl : 39|12@0+ (1,0) [0|4095] "days" Vector__XXX - SG_ ULoRgenTestMde_B_Rq : 31|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM - SG_ ChargeMode : 15|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM - SG_ IdleSpeedIncrease_El : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ Batt_Lo_SoC_B : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ PeriodicElLoad_B_Stat : 1|1@0+ (1,0) [0|1] "SED" ECM_Diesel - SG_ Batt_Crit_SoC_B : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 146 Accel_Data_FD1: 8 GWM - SG_ VehVert2_A_Actl : 36|13@0+ (0.01,-40) [-40|41.89] "m/s^2" VDM,TCCM,IPMA_ADAS,ABS_ESC,ECM_Diesel - SG_ VehLatLongVertA_No_Cs : 55|8@0+ (1,0) [0|255] "Unitless" TCCM,IPMA_ADAS,ABS_ESC - SG_ VehLatLongVert_No_Cnt : 63|8@0+ (1,0) [0|255] "Unitless" VDM,TCCM,IPMA_ADAS,ABS_ESC - SG_ VehLong2_A_Actl : 20|13@0+ (0.01,-40) [-40|41.89] "m/s^2" VDM,TCCM,ABS_ESC,ECM_Diesel,IPMA_ADAS - SG_ VehLat2_A_Actl : 4|13@0+ (0.01,-40) [-40|41.89] "m/s^2" VDM,TCCM,ABS_ESC,ECM_Diesel,IPMA_ADAS - SG_ VehVertAActl_D_Qf : 38|2@0+ (1,0) [0|3] "SED" VDM,TCCM,IPMA_ADAS,ABS_ESC - SG_ VehLongAActl_D_Qf : 22|2@0+ (1,0) [0|3] "SED" VDM,TCCM,ABS_ESC,ECM_Diesel - SG_ VehLatAActl_D_Qf : 6|2@0+ (1,0) [0|3] "SED" VDM,TCCM,ABS_ESC - -BO_ 1900 TesterPhysicalResCCM: 64 IPMA_ADAS - SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1806 TesterPhysicalResIPMA: 64 IPMA_ADAS - SG_ TesterPhysicalResIPMA : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 997 Personality_CCM_Data: 8 IPMA_ADAS - SG_ PersIndexCcm_D_Actl : 39|3@0+ (1,0) [0|7] "SED" GWM - SG_ FeatNoCcmActl : 23|16@0+ (1,0) [0|65535] "Number" GWM - SG_ FeatConfigCcmActl : 7|16@0+ (1,0) [0|65535] "Undefined" GWM - -BO_ 983 Steer_Assist_Data: 8 IPMA_ADAS - SG_ CmbbObjRelLong_V_Actl : 39|10@0+ (0.1,-102.1) [-102.1|0] "meters/sec" PSCM - SG_ CmbbObjRelLat_V_Actl : 23|9@0+ (0.1,-25.5) [-25.5|25.4] "meters/sec" PSCM - SG_ CmbbObjDistLong_L_Actl : 7|10@0+ (0.1,0) [0|102.1] "meter" PSCM - SG_ CmbbObjDistLat_L_Actl : 45|9@0+ (0.1,-25.5) [-25.5|25.4] "meter" PSCM - SG_ CmbbObjConfdnc_D_Stat : 9|2@0+ (1,0) [0|3] "SED" PSCM - SG_ CmbbObjColl_T_Actl : 30|7@0+ (0.05,0) [0|6.25] "second" PSCM - SG_ CmbbObjClass_D_Stat : 13|4@0+ (1,0) [0|15] "SED" PSCM - SG_ EsaEnbl_D2_Rq : 52|2@0+ (1,0) [0|3] "SED" PSCM - -BO_ 982 LateralMotionControl2: 8 IPMA_ADAS - SG_ LatCtlCrv_NoRate2_Actl : 55|11@0+ (1E-006,-0.001024) [-0.001024|0.001023] "meter^2" PSCM - SG_ LatCtlPath_No_Cnt : 60|4@0+ (1,0) [0|15] "Unitless" PSCM - SG_ LatCtlPath_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" PSCM - SG_ LatCtl_D2_Rq : 6|3@0+ (1,0) [0|7] "SED" PSCM - SG_ HandsOffCnfm_B_Rq : 7|1@0+ (1,0) [0|1] "SED" PSCM - SG_ LatCtlRampType_D_Rq : 1|2@0+ (1,0) [0|3] "SED" PSCM - SG_ LatCtlPrecision_D_Rq : 3|2@0+ (1,0) [0|3] "SED" PSCM - SG_ LatCtlPathOffst_L_Actl : 33|10@0+ (0.01,-5.12) [-5.12|5.11] "meter" PSCM - SG_ LatCtlPath_An_Actl : 28|11@0+ (0.0005,-0.5) [-0.5|0.5235] "radians" PSCM - SG_ LatCtlCurv_No_Actl : 23|11@0+ (2E-005,-0.02) [-0.02|0.02094] "1/meter" PSCM - -BO_ 981 GlareFreeBeam: 8 IPMA_ADAS - SG_ AdbRamping_T_Rq : 44|4@0+ (200,0) [0|3000] "millisecond" GWM - SG_ AdbBrdrTop_An_Rq : 7|8@0+ (0.04,-9.54) [-9.54|0.58] "degrees" GWM - SG_ AdbBrdrRight_L_Stat : 37|9@0+ (2,0) [0|1018] "meter" GWM - SG_ AdbBrdrRight_An_Rq : 31|10@0+ (0.04,-20.4) [-20.4|20.44] "degrees" GWM - SG_ AdbBrdrLeft_L_Stat : 40|9@0+ (2,0) [0|1018] "meter" GWM - SG_ AdbBrdrLeft_An_Rq : 9|10@0+ (0.04,-20.4) [-20.4|20.44] "degrees" GWM - SG_ AdbBrdrBottom_An_Rq : 15|6@0+ (0.04,-1.86) [-1.86|0.58] "degrees" GWM - SG_ AdbBeam_D_Rq : 63|3@0+ (1,0) [0|7] "SED" GWM - -BO_ 980 AutoDriveBeam_Data1: 8 IPMA_ADAS - SG_ AdbBrdr1DistRigh_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM - SG_ AdbBrdr1DistLeft_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM - SG_ AdbMde1_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbIntns1_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbBrdr1Up_An_Rq : 36|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM - SG_ AdbBrdr1Right_An_Rq : 31|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM - SG_ AdbBrdr1Low_An_Rq : 8|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM - SG_ AdbBrdr1Left_An_Rq : 7|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM - SG_ AdbBrdr1CritRigh_T_Stat : 43|4@0+ (100,0) [0|1500] "millisecond" GWM - SG_ AdbBrdr1CritLeft_T_Stat : 55|4@0+ (100,0) [0|1500] "millisecond" GWM - -BO_ 979 LateralMotionControl: 8 IPMA_ADAS - SG_ LatCtlRng_L_Max : 63|6@0+ (2,0) [0|126] "meter" GWM - SG_ HandsOffCnfm_B_Rq : 51|1@0+ (1,0) [0|1] "SED" GWM - SG_ LatCtl_D_Rq : 36|3@0+ (1,0) [0|7] "SED" GWM - SG_ LatCtlRampType_D_Rq : 53|2@0+ (1,0) [0|3] "SED" GWM - SG_ LatCtlPrecision_D_Rq : 33|2@0+ (1,0) [0|3] "SED" GWM - SG_ LatCtlPathOffst_L_Actl : 47|10@0+ (0.01,-5.12) [-5.12|5.11] "meter" GWM - SG_ LatCtlPath_An_Actl : 31|11@0+ (0.0005,-0.5) [-0.5|0.5235] "radians" GWM - SG_ LatCtlCurv_NoRate_Actl : 12|13@0+ (2.5E-007,-0.001024) [-0.001024|0.00102375] "1/meter" GWM - SG_ LatCtlCurv_No_Actl : 7|11@0+ (2E-005,-0.02) [-0.02|0.02094] "1/meter" GWM - -BO_ 976 SuspensionRoad_Data: 8 IPMA_ADAS - SG_ SuspClkSync_No_Actl : 55|8@0+ (1,0) [0|253] "unitless" GWM - SG_ SrpSigValid_B_Stat : 47|1@0+ (1,0) [0|1] "SED" GWM - SG_ SrpHghtRight_L_Actl : 24|9@0+ (0.000625,-0.16) [-0.16|0.158125] "meter" GWM - SG_ SrpHghtLeft_L_Actl : 17|9@0+ (0.000625,-0.16) [-0.16|0.158125] "meter" GWM - SG_ SrpEventRight_D_Stat : 19|2@0+ (1,0) [0|3] "SED" GWM - SG_ SrpEventLeft_D_Stat : 21|2@0+ (1,0) [0|3] "SED" GWM - SG_ SrpDistRight_L_Actl : 14|9@0+ (0.02,0) [0|10.18] "meter" GWM - SG_ SrpDistLeft_L_Actl : 7|9@0+ (0.02,0) [0|10.18] "meter" GWM - -BO_ 973 Traffic_RecognitnData: 8 IPMA_ADAS - SG_ TsrVl2PrmntMsgTxt_D_Rq : 60|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrVl1PrmntMsgTxt_D_Rq : 41|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrVl2RstrcMsgTxt2_D_Rq : 63|3@0+ (1,0) [0|7] "SED" GWM - SG_ TsrVl1RstrcMsgTxt2_D_Rq : 51|3@0+ (1,0) [0|7] "SED" GWM - SG_ TsrOvtkMsgTxt2_D_Rq : 55|4@0+ (1,0) [0|15] "SED" GWM - SG_ WwaWarn_B_Rq : 48|1@0+ (1,0) [0|1] "SED" GWM - SG_ TsrVlUnitMsgTxt_D_Rq : 43|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrVLim2MsgTxt_D_Rq : 39|8@0+ (1,0) [0|255] "SED" GWM - SG_ TsrVLim1MsgTxt_D_Rq : 31|8@0+ (1,0) [0|255] "SED" GWM - SG_ TsrVl2StatMsgTxt_D_Rq : 47|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrVl2RstrcMsgTxt_D_Rq : 17|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrVl1StatMsgTxt_D_Rq : 21|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrVl1RstrcMsgTxt_D_Rq : 23|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrStatMsgTxt_D_Rq : 10|3@0+ (1,0) [0|7] "SED" GWM - SG_ TsrOvtkStatMsgTxt_D_Rq : 1|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrOvtkMsgTxt_D_Rq : 15|3@0+ (1,0) [0|7] "SED" GWM - SG_ TsrOswWarnMsgTxt_D_Rq : 3|2@0+ (1,0) [0|3] "SED" GWM - SG_ TsrMsgTxt_D_Rq : 7|4@0+ (1,0) [0|15] "SED" GWM - -BO_ 970 Lane_Assist_Data1: 8 IPMA_ADAS - SG_ LkaDrvOvrrd_D_Rq : 38|2@0+ (1,0) [0|3] "SED" PSCM - SG_ LkaActvStats_D2_Req : 7|3@0+ (1,0) [0|7] "SED" PSCM - SG_ LaRefAng_No_Req : 19|12@0+ (0.05,-102.4) [-102.4|102.3] "mrad" PSCM - SG_ LaRampType_B_Req : 39|1@0+ (1,0) [0|1] "SED" PSCM - SG_ LaCurvature_No_Calc : 15|12@0+ (5E-006,-0.01024) [-0.01024|0.01023] "1/m" PSCM - SG_ LdwActvStats_D_Req : 4|3@0+ (1,0) [0|7] "SED" PSCM - SG_ LdwActvIntns_D_Req : 1|2@0+ (1,0) [0|3] "SED" PSCM - -BO_ 962 AutoDriveBeam_Data3: 8 IPMA_ADAS - SG_ AdbBrdr3DistRigh_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM - SG_ AdbBrdr3DistLeft_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM - SG_ AdbMde3_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbIntns3_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbBrdr3Up_An_Rq : 36|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM - SG_ AdbBrdr3Right_An_Rq : 31|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM - SG_ AdbBrdr3Low_An_Rq : 8|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM - SG_ AdbBrdr3Left_An_Rq : 7|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM - SG_ AdbBrdr3CritRigh_T_Stat : 43|4@0+ (100,0) [0|1500] "millisecond" GWM - SG_ AdbBrdr3CritLeft_T_Stat : 55|4@0+ (100,0) [0|1500] "millisecond" GWM - -BO_ 961 AutoDriveBeam_Data2: 8 IPMA_ADAS - SG_ AdbBrdr2DistRigh_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM - SG_ AdbBrdr2DistLeft_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM - SG_ AdbMde2_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbIntns2_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM - SG_ AdbBrdr2Up_An_Rq : 36|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM - SG_ AdbBrdr2Right_An_Rq : 31|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM - SG_ AdbBrdr2Low_An_Rq : 8|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM - SG_ AdbBrdr2Left_An_Rq : 7|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM - SG_ AdbBrdr2CritRigh_T_Stat : 43|4@0+ (100,0) [0|1500] "millisecond" GWM - SG_ AdbBrdr2CritLeft_T_Stat : 55|4@0+ (100,0) [0|1500] "millisecond" GWM - -BO_ 394 ACCDATA_3: 8 IPMA_ADAS - SG_ HaDsply_No_Cs : 63|8@0+ (1,0) [0|255] "Unitless" GWM - SG_ HaDsply_No_Cnt : 4|4@0+ (1,0) [0|15] "Unitless" GWM - SG_ AccStopStat_D_Dsply : 41|2@0+ (1,0) [0|3] "SED" GWM - SG_ AccTrgDist2_D_Dsply : 27|4@0+ (1,0) [0|15] "SED" GWM - SG_ AccStopRes_B_Dsply : 54|1@0+ (1,0) [0|1] "SED" GWM - SG_ TjaWarn_D_Rq : 50|3@0+ (1,0) [0|7] "SED" GWM - SG_ Tja_D_Stat : 44|3@0+ (1,0) [0|7] "SED" GWM - SG_ TjaMsgTxt_D_Dsply : 53|3@0+ (1,0) [0|7] "SED" GWM - SG_ IaccLamp_D_Rq : 46|2@0+ (1,0) [0|3] "SED" GWM - SG_ AccMsgTxt_D2_Rq : 31|4@0+ (1,0) [0|15] "SED" GWM - SG_ FcwDeny_B_Dsply : 10|1@0+ (1,0) [0|1] "SED" GWM - SG_ FcwMemStat_B_Actl : 13|1@0+ (1,0) [0|1] "SED" GWM - SG_ AccTGap_B_Dsply : 35|1@0+ (1,0) [0|1] "SED" GWM - SG_ CadsAlignIncplt_B_Actl : 11|1@0+ (1,0) [0|1] "SED" GWM - SG_ AccFllwMde_B_Dsply : 17|1@0+ (1,0) [0|1] "SED" GWM - SG_ CadsRadrBlck_B_Actl : 22|1@0+ (1,0) [0|1] "SED" GWM - SG_ CmbbPostEvnt_B_Dsply : 15|1@0+ (1,0) [0|1] "SED" GWM - SG_ AccStopMde_B_Dsply : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ FcwMemSens_D_Actl : 20|2@0+ (1,0) [0|3] "SED" GWM - SG_ FcwMsgTxt_D_Rq : 7|3@0+ (1,0) [0|7] "SED" GWM - SG_ AccWarn_D_Dsply : 39|2@0+ (1,0) [0|3] "SED" GWM - SG_ FcwVisblWarn_B_Rq : 47|1@0+ (1,0) [0|1] "SED" GWM - SG_ FcwAudioWarn_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ AccTGap_D_Dsply : 34|3@0+ (1,0) [0|7] "SED" GWM - SG_ AccMemEnbl_B_RqDrv : 36|1@0+ (1,0) [0|1] "SED" GWM - SG_ FdaMem_B_Stat : 37|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 391 ACCDATA_2: 8 IPMA_ADAS - SG_ CmbbBrkDecel_No_Cnt : 47|4@0+ (1,0) [0|15] "Unitless" GWM,ABS_ESC - SG_ HudDsplyIntns_No_Actl : 31|8@0+ (0.5,0) [0|100] "%" GWM - SG_ HudBlk3_B_Rq : 37|1@0+ (1,0) [0|1] "SED" GWM - SG_ HudBlk2_B_Rq : 51|1@0+ (1,0) [0|1] "SED" GWM - SG_ HudBlk1_B_Rq : 50|1@0+ (1,0) [0|1] "SED" GWM - SG_ HudFlashRate_D_Actl : 53|2@0+ (1,0) [0|3] "SED" GWM - SG_ CmbbBrkDecel_No_Cs : 7|8@0+ (1,0) [0|255] "Unitless" GWM,ABS_ESC - SG_ CmbbBrkDecel_A_Rq : 12|13@0+ (0.0039,-20) [-20|11.9449] "m/s^2" ABS_ESC,GWM - SG_ CmbbBrkPrchg_D_Rq : 55|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - SG_ CmbbBrkDecel_B_Rq : 15|1@0+ (1,0) [0|1] "SED" ABS_ESC,GWM - SG_ CmbbBaSens_D_Rq : 14|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM - -BO_ 390 ACCDATA: 8 IPMA_ADAS - SG_ AccBrkPulse_B_Rq : 36|1@0+ (1,0) [0|1] "SED" ABS_ESC,GWM - SG_ AccAutoResum_D_Rq : 7|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM,ECM_Diesel - SG_ AccBrkTot_A_Rq : 4|13@0+ (0.0039,-20) [-20|11.9449] "m/s^2" GWM,ABS_ESC - SG_ AccPrpl_A_Pred : 17|10@0+ (0.01,-5) [-5|5.23] "m/s^2" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ AccVeh_V_Trg : 32|9@0+ (0.5,0) [0|255.5] "kph" GWM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL - SG_ AccBrkPrkEl_B_Rq : 38|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ Cmbb_B_Enbl : 50|1@0+ (1,0) [0|1] "SED" GWM - SG_ CmbbOvrrd_B_RqDrv : 51|1@0+ (1,0) [0|1] "SED" GWM - SG_ CmbbDeny_B_Actl : 37|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ CmbbEngTqMn_B_Rq : 52|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,GWM - SG_ AccPrpl_A_Rq : 49|10@0+ (0.01,-5) [-5|5.23] "m/s^2" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ AccDeny_B_Rq : 53|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ AccResumEnbl_B_Rq : 33|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM,PCM_HEV - SG_ AccCancl_B_Rq : 39|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC,ECM_Diesel,PCM,PCM_HEV - SG_ AccBrkPrchg_B_Rq : 54|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ AccBrkDecel_B_Rq : 55|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC - SG_ AccStopStat_B_Rq : 34|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM,PCM_HEV,ABS_ESC - -BO_ 1441 TCCM_AutoSar_NetwkMgmt: 8 TCCM - SG_ TCCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX - SG_ TCCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX - -BO_ 1787 TesterPhysicalResSODCMD: 64 IPMA_ADAS - SG_ TesterPhysicalResSODCMD : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1779 TesterPhysicalReqSODCMD: 64 TSTR - SG_ TesterPhysicalReqSODCMD : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS - -BO_ 1786 TesterPhysicalResSODCMC: 64 IPMA_ADAS - SG_ TesterPhysicalResSODCMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1778 TesterPhysicalReqSODCMC: 64 TSTR - SG_ TesterPhysicalReqSODCMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS - -BO_ 1153 All_Terrain_Data_FD1: 8 GWM - SG_ TerrMde_D_RqDrv : 3|3@0+ (1,0) [0|7] "SED" Vector__XXX - -BO_ 942 ParkAid_Data2: 8 IPMA_ADAS - SG_ PrkAidRdiusRight_L_Dsply : 15|8@0+ (1,0) [0|255] "unitless" GWM - SG_ PrkAidRdiusLeft_L_Dsply : 7|8@0+ (1,0) [0|255] "unitless" GWM - SG_ PrkAidDrvDir_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM - SG_ PrkAidAcsyRear_D_Stat : 18|2@0+ (1,0) [0|3] "SED" GWM - SG_ PrkAidAcsyFront_D_Stat : 20|2@0+ (1,0) [0|3] "SED" GWM - -BO_ 930 Bndry_Alert_R_Data: 8 IPMA_ADAS - SG_ BalrWndwRight_B_Stat : 19|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrSnsRight_D_Falt : 21|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwPsngrRear_D_RqBalrr : 25|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwPsngr_D_RqBalrr : 27|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwDrvRear_D_RqBalrr : 29|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwDrv_D_RqBalrr : 31|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrRight_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrMdeSelRight_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrMdeRight_D_Stat : 23|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrLckRight_B_Stat : 11|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrChimeRight_D_Rq : 2|2@0+ (1,0) [0|3] "SED" GWM - SG_ CamraRearOn_B_RqBalrr : 7|1@0+ (1,0) [0|1] "SED" GWM - SG_ DrLckCnt_No_ActlBalrr : 5|3@0+ (1,0) [0|7] "unitless" GWM - SG_ DrLckActv_B_RqBalrr : 6|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 929 Bndry_Alert_L_Data: 8 IPMA_ADAS - SG_ BalrChimeLeft_D_Rq : 2|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrLeft_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrWndwLeft_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM - SG_ WndwPsngrRear_D_RqBalrl : 25|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwPsngr_D_RqBalrl : 27|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwDrvRear_D_RqBalrl : 29|2@0+ (1,0) [0|3] "SED" GWM - SG_ WndwDrv_D_RqBalrl : 31|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrSnsLeft_D_Falt : 21|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrMdeSelLeft_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM - SG_ BalrMdeLeft_D_Stat : 23|2@0+ (1,0) [0|3] "SED" GWM - SG_ BalrLckLeft_B_Stat : 11|1@0+ (1,0) [0|1] "SED" GWM - SG_ CamraRearOn_B_RqBalrl : 7|1@0+ (1,0) [0|1] "SED" GWM - SG_ DrLckCnt_No_ActlBalrl : 5|3@0+ (1,0) [0|7] "unitless" GWM - SG_ DrLckActv_B_RqBalrl : 6|1@0+ (1,0) [0|1] "SED" GWM - -BO_ 402 Dsp_Request_Signals11_FD1: 8 GWM - SG_ PrkAidSwtch_D_RqMnu : 11|1@0+ (1,0) [0|1] "SED" IPMA_ADAS - SG_ ApaSwtch_D_RqMnu : 10|2@0+ (1,0) [0|3] "SED" IPMA_ADAS - SG_ ApaMdeStat_D_RqDrv : 2|3@0+ (1,0) [0|7] "SED" IPMA_ADAS - SG_ CamraViewSplit_B_Rq : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CamraZoomMan_D_Rq : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ CamraOvrlStat_D_Rq : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CamraOvrlDyn_D_Rq : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ CamAutoTowbarZoom : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX - SG_ DistanceBarSetting : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX - -BO_ 924 DCACA_Data3_FD1: 8 GWM - SG_ DcacOut_Pw_Mx : 34|11@0+ (5,0) [0|10225] "watts" PCM,PCM_HEV - SG_ DcacOut2_Pw_Actl : 31|13@0+ (1,0) [0|8189] "watts" PCM_HEV - SG_ DcacOut1_Pw_Actl : 12|13@0+ (1,0) [0|8189] "watts" PCM,PCM_HEV - SG_ DcacIn_Pw_Mx : 7|11@0+ (5,0) [0|10225] "watts" PCM,PCM_HEV - -BO_ 923 DCACA_Data2_FD1: 8 GWM - SG_ DcacIn_U2_Actl : 39|12@0+ (0.01,0) [0|40.93] "volt" PCM - SG_ DcacIn_U_Actl : 19|12@0+ (0.1,0) [0|409.3] "volt" PCM,PCM_HEV - SG_ DcacIn_I_Actl : 15|11@0+ (0.1,0) [0|204.5] "Amps" PCM,PCM_HEV - SG_ Dcac_Te_Actl : 7|8@0+ (1,-60) [-60|193] "degC" PCM - -BO_ 1998 TesterPhysicalResSODR: 64 IPMA_ADAS - SG_ TesterPhysicalResSODR : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1996 TesterPhysicalResSODL: 64 IPMA_ADAS - SG_ TesterPhysicalResSODL : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR - -BO_ 1988 TesterPhysicalReqSODL: 64 TSTR - SG_ TesterPhysicalReqSODL : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS - -BO_ 922 DCACA_Data1_FD1: 8 GWM - SG_ DcacBp2BrkrOpn_B_Falt : 13|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacBp1BrkrOpn_B_Falt : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacIpRcBrkrOpn_B_Falt : 10|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacRdy_D2_Stat : 23|2@0+ (1,0) [0|3] "SED" PCM,PCM_HEV - SG_ DcacOvrld_B_Falt : 8|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacOverTe_B_Falt : 9|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacGfci_B_Falt : 11|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacErr_B_Stat : 12|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacAcUDetct_B_Falt : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacRdy_D_Stat : 2|3@0+ (1,0) [0|7] "SED" Vector__XXX - SG_ DcacPlugPrsnt_B_Stat : 3|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV - SG_ DcacClntFlw_D_Rq : 5|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - SG_ CoolFanDcac_D_Rq : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 - -BO_ 1082 INSTRUMENT_PANEL: 8 GWM - SG_ METRIC_UNITS : 54|1@0+ (1,0) [0|1] "SED" IPMA,PCM,PCM_HEV - -BO_TX_BU_ 2612224016 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 878 : PCM,PCM_HEV; -BO_TX_BU_ 1085 : ECM_Diesel,PCM; -BO_TX_BU_ 2611175440 : ECM_Diesel,PCM_HEV,PCM; -BO_TX_BU_ 2610126864 : ECM_Diesel,PCM_HEV,PCM; -BO_TX_BU_ 786 : PCM_HEV,SOBDMC_HPCM_FD1; -BO_TX_BU_ 1090 : SOBDMC_HPCM_FD1,PCM_HEV; -BO_TX_BU_ 374 : PCM_HEV,TCM_DSL,PCM; -BO_TX_BU_ 872 : SOBDMC_HPCM_FD1,PCM_HEV; -BO_TX_BU_ 560 : PCM,PCM_HEV,TCM_DSL; -BO_TX_BU_ 369 : PCM_HEV,TCM_DSL,PCM; -BO_TX_BU_ 92 : PCM,TCM_DSL,PCM_HEV; -BO_TX_BU_ 2030 : SOBDMC_HPCM_FD1,ECM_Diesel; -BO_TX_BU_ 1087 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 2024 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1697 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1696 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1429 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1100 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1086 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1071 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1069 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1060 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1057 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 1055 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 517 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 516 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 514 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 512 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 380 : ECM_Diesel,PCM; -BO_TX_BU_ 377 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 376 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 359 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 358 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 357 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 342 : ECM_Diesel,PCM,PCM_HEV; -BO_TX_BU_ 71 : ECM_Diesel,PCM,PCM_HEV; - -CM_ "New CAN FD network"; -CM_ BU_ CMR_DSMC "Driver Status Monitor Camera"; -CM_ BU_ IPMA_ADAS "Assist Driving Alert System"; -CM_ BU_ PSCM "Passenger Front Climate Control Seat Module"; -CM_ BU_ ABS_ESC "Anti-lock Brake / Traction Control Module"; -CM_ BU_ TCCM "Transfer Case Control Module, 4x4 Control Module"; -CM_ BU_ TCM_DSL "Transmission Control Module"; -CM_ BU_ PCM "Powertrain Control Module"; -CM_ BU_ ECM_Diesel "Diesel"; -CM_ BU_ GWM "Gateway Module CGEA1.3(Star Architecture)"; -CM_ BU_ TSTR "Diagnostic Tester"; - -CM_ SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs "Signal not transmitted on gas variants."; -CM_ SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt "Signal not transmitted on gas variants."; -CM_ SG_ 1150 LocationServices_1 "Tx by HS3 APIM"; -CM_ SG_ 542 LocationServices_3 "Tx by HS3 APIM"; -CM_ SG_ 810 NtfyDrvTrgtDist_L_Rq "Object.SetTripRangeAlert_Rq This signal is meant to provide the customer settings for the target distance remote notification"; -CM_ SG_ 810 NtfyDrvSocLvl1_Pc_Rq "Object.SetCustomerLevelAlert_Rq This signal is meant to provide the customer settings for the SOC remote notification."; -CM_ SG_ 810 PtRmtRprt_D_Stat "Object.RemoteDataReport_St"; -CM_ SG_ 550 PtWakeupActv1_B_Rq "ECG Application signal"; -CM_ SG_ 982 LatCtlPath_No_Cnt "Signal not transmitted on gas variants."; -CM_ SG_ 982 LatCtlPath_No_Cs "Signal not transmitted on gas variants."; -CM_ SG_ 1104 DrvEngageLevel_No_Cs "Signal not transmitted on gas variants."; -CM_ SG_ 1104 DrvEngageLevel_No_Cnt "Signal not transmitted on gas variants."; -CM_ SG_ 1085 ULoRgenTestMde_B_Stat "Signal not transmitted on HEV variants."; -CM_ SG_ 1085 PwSrcULoComm_B_Falt "Signal not transmitted on HEV variants."; -CM_ SG_ 1445 SOBDMC_AutoSarNMReserved4 "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 1445 SOBDMC_AutoSarNMReserved3 "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 1445 SOBDMC_AutoSarNMReserved2 "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 1445 SOBDMC_AutoSarNMReserved1 "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 1445 SOBDMC_AutoSarNMNodeId "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 1445 SOBDMC_AutoSarNMControl "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 1088 HvacPrecondMode2_D_Rq "Signal not transmitted on vehicles that do not have the Fuel operated heater feature."; -CM_ SG_ 1088 HvacPrecondBlwr2_D_Rq "Signal not transmitted on vehicles that do not have the Fuel operated heater feature."; -CM_ SG_ 786 ChrgStat_D_Dsply "Signal not transmitted by PCM_HEV"; -CM_ SG_ 66 immoControlData_T2 "Not transmitted on all vehicle variants"; -CM_ SG_ 66 immoControlCmd_T2 "Not transmitted on all vehicle variants"; -CM_ SG_ 549 BeltminderAudioMute "Object.MyKey.BeltMinderAudioMute.St"; -CM_ SG_ 549 Power_Up_Chime_Modules "Object.AlertMethod.IPC _Infotainment"; -CM_ SG_ 549 Chime_Source "Object.AlertMethod.IPC_infotainment"; -CM_ SG_ 611 AwdStat_D_RqDsply "Signal not transmitted on programs that do not have AWD."; -CM_ SG_ 611 AwdSrvcRqd_B_Rq "Signal not transmitted on programs that do not have AWD."; -CM_ SG_ 611 AwdLck_Tq_Rq "Signal not transmitted on programs that do not have AWD."; -CM_ SG_ 130 VehVTrlrAid_B_Rq "VR session start- req. limit blower speed no more than X volts. CC restriction on time msg. will be honored.Double Event msg1st event to request limit, 2nd event to release limit, No msg. CC Grammar v7.xls"; -CM_ SG_ 130 SteMdule_U_Meas "DCR 1745 to update Tx from GWM to EP100ms. SteMdule_I_Est & SteMdule_U_Meas are used by BMS system & filtered. The filter uses standard periodic rate & changing to EP would adversely affect the filter.(jweinfur)"; -CM_ SG_ 130 SteMdule_I_Est "DCR 1745 to update Tx from GWM to EP100ms. SteMdule_I_Est & SteMdule_U_Meas are used by BMS system & filtered. The filter uses standard periodic rate & changing to EP would adversely affect the filter.(jweinfur)"; -CM_ SG_ 126 StePinRelInit_An_Sns "SASM will transmit these signals on vehicles with SASM and without PSCM. SCCM will not Tx this signal when SASM is present."; -CM_ SG_ 126 StePinAn_No_Cs "Signal not transmitted on gas variants."; -CM_ BO_ 133 "Seen on Ford Edge MK2"; -CM_ SG_ 133 StePinRelInit_An_Sns "SASM will transmit these signals on vehicles with SASM and without PSCM. SCCM will not Tx this signal when SASM is present."; -CM_ SG_ 133 StePinAn_No_Cs "Signal not transmitted on gas variants."; -CM_ SG_ 1200 BrkTot_Tq_RqDrv "DCR 1836 to update Tx from GWM to EP100ms rejected due MPS6 TCM requires BrkTot_Tq_RqDrv at 20ms (bshu1)."; -CM_ SG_ 1046 TCMode "Signal data set to 0x0 for ABS only vehicle option content"; -CM_ SG_ 1046 DrvAntiLckLamp_D_Rq "update value table v8.34, not align w/GSDB, need etracker. ABS & IPC implemented as updated."; -CM_ SG_ 1046 BpedMove_D_Actl "CCMGenSigTimeoutTime=1000"; -CM_ SG_ 1044 StePinOffst_An_Est "SASM will transmit these signals on vehicles with SASM and without PSCM. SCCM will not Tx this signal when SASM is present."; -CM_ SG_ 1044 StePinOffst_No_Cs "Signal not transmitted on gas variants."; -CM_ SG_ 534 BrkObdData_No_Actl "Signal not transmitted on gas, diesel and HEV. Only supported on PHEV."; -CM_ SG_ 534 BrkObdIndex_No_Actl "Signal not transmitted on gas, diesel and HEV. Only supported on PHEV."; -CM_ SG_ 534 WhlRotatRr_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; -CM_ SG_ 534 WhlRotatRl_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; -CM_ SG_ 534 WhlRotatFr_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; -CM_ SG_ 534 WhlRotatFl_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; -CM_ SG_ 531 VehLongOvrGnd_A_Est "CCMGenSigTimeoutTime=1000"; -CM_ SG_ 1034 VehicleGGCCData "RCMGenSigTimeout=6000"; -CM_ SG_ 1090 Mtr2State_D_ActlMntr "Signal Not transmitted on PCM_HEV variant"; -CM_ SG_ 1090 Inv1Ain_I_ActlMntr "Signal Not transmitted on PCM_HEV variant"; -CM_ SG_ 1090 VehElRnge_L_Dsply "Signal Not transmitted on HPCM variant"; -CM_ SG_ 374 TrnRng_D_Rq "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 374 TrnPrkSys_D_Actl "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 374 GearLvr_D_ActlDrv "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 374 GearPos_No_Cs "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 374 GearPos_D_Trg "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 374 GearPos_No_Cnt "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 374 GearPos_D_Actl "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 603 WhlDirAvgDrv_D_Actl "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; -CM_ SG_ 603 PrplTqMnRgen_B_Actl "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; -CM_ SG_ 603 BattTracCnnct_D_Rq "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; -CM_ SG_ 872 HybMdeStat_D_Dsply "Signal not transmitted by HPCM"; -CM_ SG_ 560 SelDrvMdeSwtch_D_Stat3 "ECM_HEV, PCM & PCM_HEV do not support or Transmit signal."; -CM_ SG_ 560 TrnSrvcRqd_B_Rq "Signal not transmitted on Diesel & HEV variants. MHT(U611/625) HPCM Rx 0x230 from PCM_HEV. Powersplit FWD HEVs(Cx482/3 430) HPCM Tx 0x230."; -CM_ SG_ 560 TrnShifActv_B_Actl "Signal not transmitted on HEV variants. MHT(U611/625) HPCM Rx 0x230 from PCM_HEV. Powersplit FWD HEVs(Cx482/3 430) HPCM Tx 0x230."; -CM_ SG_ 560 GboxOil_Te_Actl "Signal not transmitted on HEV variants. MHT(U611/625) HPCM Rx 0x230 from PCM_HEV. Powersplit FWD HEVs(Cx482/3 430) HPCM Tx 0x230."; -CM_ SG_ 369 SeatWorkSrfc_B_Falt "Signal Not transmitted by TCM_DSL"; -CM_ SG_ 369 TrnIpcDsplyRng2_D_Actl "Signal not transmitted on HEV variants."; -CM_ SG_ 369 TrnIpcDsplyRng_D_Stat "Signal not transmitted on HEV variants."; -CM_ SG_ 92 TrnLvrV_D_Rq "Signal not transmitted on vehicles with PCM_HEV"; -CM_ SG_ 92 TrnSbwSysHlth_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnGearNtmAllow_B_Stat "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnDtpCmd_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnGearCmd_No_Cs "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnValidGear_D_Cnfm "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnNtrlTowCmd_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnGearCmd_Pc_ActlPt "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnGear_D_RqPt "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnCmdState_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnCmdCnt_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 PrkBrkActv_D_RqTrnGear "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnGearMsgTxt_D_Rq "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 92 TrnGearCmd_No_Cnt "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 1087 BattRgenLoChrg_D_RqEng "Signal not transmitted on diesel variant"; -CM_ SG_ 1087 BattRgenLoDChrg_D_RqEng "Signal not transmitted on diesel variant"; -CM_ SG_ 1087 FapLcInhbt_B_Rq "Signal not transmitted on diesel variant"; -CM_ SG_ 1100 EngExhMdeQuiet_D2_Stat "Signal not transmitted on HEV & Diesel programs"; -CM_ SG_ 1100 HvacCmprLim_D_Stat "Signal not transmitted on Diesel variants"; -CM_ SG_ 1100 WakeAlarm1_T_Rq "Signal not transmitted on Gas variants"; -CM_ SG_ 1100 WakeAlarm1_B_Typ "Signal not transmitted on Gas variants"; -CM_ SG_ 1100 Veh_V_DsplyTrailCtlSet "Signal not transmitted on HEV & Diesel programs"; -CM_ SG_ 1100 TrailCtlPt_B_Falt "Signal not transmitted on HEV & Diesel programs"; -CM_ SG_ 1100 AutoTowAllw_D_StatMnu "Signal not transmitted on Gas & Diesel variants"; -CM_ SG_ 1100 AutoTowActv_B_Stat "Signal not transmitted on Gas & Diesel variants"; -CM_ SG_ 1086 EngMnfld_P_Actl "Signal not transmitted on HEV & Diesel programs"; -CM_ SG_ 1086 ElLoadCtl_D_Rq "Signal not transmitted on HEV variants."; -CM_ SG_ 1071 CluPdl_PcRate_Actl "Signal not transmitted on HEV and Gas variants."; -CM_ SG_ 1071 CluPdlPosPcMeas_D_Qf "Signal not transmitted on HEV and Gas variants."; -CM_ SG_ 1071 CluPdlPos_Pc_Meas "Signal not transmitted on HEV and Gas variants."; -CM_ SG_ 1071 EngAoutIdl_N_Ntrl "Signal not transmitted on HEV variants and diesel."; -CM_ SG_ 1069 SlMde_D_Stat "IPC and HUD_ADV Receve from HS3 FGW 0x42D, not HS3 0x38A, MSG DCR 506. Signal not transmitted on Gas & HEV variants"; -CM_ SG_ 1069 SlMde_D_RqDsply "IPC and HUD_ADV Receve from HS3 FGW 0x42D, not HS3 0x38A, MSG DCR 506. Signal not transmitted on Gas & HEV variants"; -CM_ SG_ 1069 IsaOffst_D_Stat "Signal not transmitted on Gas & HEV variants"; -CM_ SG_ 1069 ObdWarmUp_B_Complt "Signal not transmitted on diesel variants."; -CM_ SG_ 1069 EngMsgTxt_D_Rq "Signal not transmitted on diesel variants."; -CM_ SG_ 1069 EngClnt_Te_ActlDiag "Signal not transmitted on gas variants."; -CM_ SG_ 1069 EngLoad_Pc_CalcDiag "Signal not transmitted on gas variants."; -CM_ SG_ 1069 ApedPos_Pc_ActlDiag "Signal not transmitted on gas variants."; -CM_ SG_ 1060 RearDiffOilTeWarn_B_Rq "Signal not transmitted on HEV & Diesel programs"; -CM_ SG_ 1060 RearDiffOil_Te_Actl "Signal not transmitted on HEV & Diesel programs"; -CM_ SG_ 1057 FohEng_D_Rq "Signal not transmitted on vehicles that do not have the fuel operated heater feature. Signal not transmitted on HEV programs"; -CM_ SG_ 1057 EngIdlShutDown_D_Stat "Signal not transmitted on diesel variants."; -CM_ SG_ 1057 FUEL_ALCOHOL_PERCNT "signal not transmitted on diesel and HEV variants."; -CM_ SG_ 1057 TrnTotTq_Rt_Est "Signal not transmitted on gas and HEV variants."; -CM_ SG_ 1057 TrnTotLss_Tq_Est "Signal not transmitted on gas and HEV variants."; -CM_ SG_ 1057 VehVLimStat_D_Actl "Signal not transmitted on gas and HEV variants."; -CM_ SG_ 1057 VehVLimActv_B_Actl "Signal not transmitted on gas and HEV variants."; -CM_ SG_ 562 GearNtrl_No_Cs "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 562 GearNtrl_No_Cnt "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; -CM_ SG_ 516 EngAoutNActl_D_QF "Signal not transmitted on Gas & HEV variants"; -CM_ SG_ 516 EngAout3_N_Actl "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 516 ApedPos_Pc_ActlArb "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 516 ApedPosPcActl_No_Cnt "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 516 ApedPosPcActl_No_Cs "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 514 VehVTrlrAid_B_Avail "Signal not transmitted on HEV variants."; -CM_ SG_ 514 GearRvrse_D_Actl "Do not implement GearRvrse_D_Actl until eTracker 8804151 is approved, 11/24/09"; -CM_ SG_ 512 PrplWhlTotTqRq_No_Cs "Signal not transmitted on gas & Diesel variants."; -CM_ SG_ 512 PrplWhlTotTqRq_No_Cnt "Signal not transmitted on gas & Diesel variants."; -CM_ SG_ 512 PtDrvMde_D_Stat "Signal not transmitted on Gas & HEV variants."; -CM_ SG_ 380 EngExhBrkOnLamp_B_Rq "Signal not transmitted on Gas variants"; -CM_ SG_ 380 EngExhBrkAutoLamp_B_Rq "Signal not transmitted on Gas variants"; -CM_ SG_ 380 EngAout_N_MxAllw "Signal not transmitted on Gas variants"; -CM_ SG_ 380 EngExhBrkMde_D_Actl "Signal not transmitted on Gas variants"; -CM_ SG_ 377 HvacAirFullOut_B_Rq "Signal not transmitted on diesel variant"; -CM_ SG_ 377 FuelFlw_Vl_Dsply "Signal not transmitted on diesel variants."; -CM_ SG_ 377 FuelFillInlet_B_Dsply "Signal not transmitted on diesel variants."; -CM_ SG_ 377 OdoCount "Signal not transmitted on diesel variants."; -CM_ SG_ 377 EngOilLife_Pc_Actl "Signal not transmitted on diesel variants."; -CM_ SG_ 377 FuelFilterLamp_B_Dsply "Signal not transmitted on Gas & HEV variants"; -CM_ SG_ 377 AirCondRec_B_Rq "Signal not transmitted on diesel variants."; -CM_ SG_ 377 AirCondClutch_B_Stats "Signal not transmitted on diesel variants."; -CM_ SG_ 376 GasPrtc_D_RqDsply "Signal not transmitted on HEV & Diesel variants."; -CM_ SG_ 376 EngAout_Aa_Actl "Signal not transmitted on HEV variants."; -CM_ SG_ 376 AslIconDsply_D_Rq "Signal not transmitted on HEV variants."; -CM_ SG_ 376 AslChime_B_Rq "Signal not transmitted on HEV variants."; -CM_ SG_ 376 HvacHtrCore2_Te_Actl "Signal not transmitted on Gas & Diesel variants"; -CM_ SG_ 376 EcssLamp_D_RqDsply "Signal not transmitted on Gas & HEV variants"; -CM_ SG_ 376 AirAmb_Te_Actl "Signal not transmitted on Gas variants"; -CM_ SG_ 359 PrplWhlRgenMn_Tq_Actl "Signal not transmitted on Gas & Diesel variants"; -CM_ SG_ 359 ElPw_D_StatStrtStop "Signal not transmitted on HEV variants."; -CM_ SG_ 359 TrnAin_Tq_Actl "Signal not transmitted on HEV variances."; -CM_ SG_ 359 PlgActvArb_B_Actl "Only supported on PHEV programs. PlgActvArb_B_Actl HPCM will Tx on Powersplit PHEVs, On MHT PHEVs the PCM_HEV will Tx and HPCM will Rx."; -CM_ SG_ 359 TrnAinTq_D_Qf "Signal not transmitted on HEV variances."; -CM_ SG_ 358 StopStrtStdby_D_Indic "Signal not transmitted on HEV variants."; -CM_ SG_ 358 StopStrtIODTxt_D_Rq "Signal not transmitted on HEV variants."; -CM_ SG_ 358 StopStrtDrvMde_D_Indic "Signal not transmitted on HEV variants."; -CM_ SG_ 358 StopStrtMsgTxt_D_Rq "Signal not transmitted on HEV variants."; -CM_ SG_ 358 HiElPwInhbt_B_Stat "Signal not transmitted on HEV programs"; -CM_ SG_ 358 AutoStopPtDelta_I_Est "Signal not transmitted on HEV variants. "; -CM_ SG_ 357 BpedDrvAppl_D_Actl "CCMGenSigTimeoutTime=1000"; -CM_ SG_ 357 CcStat_D_Actl "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 357 EngAout_N_MnAllw "Signal not transmitted on Gas & Diesel variants."; -CM_ SG_ 357 AccStopMde_D_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 342 EngOvrhtMitgActv_D_Ind "Signal not transmitted on diesel."; -CM_ SG_ 342 EngGoutLss_Tq_Est "Signal not transmitted on gas and diesel variants."; -CM_ SG_ 342 EngOil_Te_Actl "Signal not transmitted on Gas & HEV variants. "; -CM_ SG_ 954 GenericSwtch2_No_Actl "U625 Police Wig Wag feature"; -CM_ SG_ 935 SodRight_D_Stat "IPCGenSigTimeoutTime=1600"; -CM_ SG_ 935 Side_Detect_R_Illum "DDMGenSigTimeoutTime=2000"; -CM_ SG_ 935 SodSnsRight_D_Stat "IPCGenSigTimeoutTime=1600"; -CM_ SG_ 935 SodAlrtRight_D_Stat "DDMGenSigTimeoutTime=2000"; -CM_ SG_ 1112 BattTracClntPmp_D_Stat "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; -CM_ SG_ 1050 Outside_Air_Temp_Stat "Filtered value, i.e. same as disply for customer"; -CM_ SG_ 1009 CenterStackRing_D_Actl "The Center Stack sends the CPLR a signal to turn On or Off the light Ring, This is a customer selectable preference switch"; -CM_ SG_ 1009 APIM_NumberofTracks_St "Object NumberofTracks"; -CM_ SG_ 1009 APIM_ActiveTrackNum_St "Object.ActiveTrackNum"; -CM_ SG_ 360 GsmSrvcRqd_B_Rq "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 360 TrnGearPwmFalt_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 360 GearButtnStuck_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGsmNtmState_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 DrQltyDrv_D_StatGsm "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnBtsiOvrrd_B_Stat "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnValidGearRq_D_Stat "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearRqCnt_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_U_Actl "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlR2 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlR1 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlR0 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlP2 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlP1 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlP0 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlN2 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlN1 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlN0 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlM2 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlM1 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlM0 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlD2 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlD1 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGearButtn_B_ActlD0 "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGear_No_Cs "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGear_No_Cnt "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 TrnGear_D_RqDrv "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 90 BrkSwtchPos_B_ActlGsm "Signal not transmitted on vehicles that do not have shift by wire."; -CM_ SG_ 138 SteWhlRelCalib_An_Sns "Signal is not transmitted on vehicles where PSCM is transmitting the message that contains this signal. Signal data set to 0x0 for ABS only vehicle option content"; -CM_ SG_ 1093 StopLamp_B_RqTrlrBrk "Signal not transmitted on all variants."; -CM_ SG_ 792 ElTrip_L_Dsply "Key cycle trip distance driven with the engine off (Trip EV Miles)"; -CM_ SG_ 792 ElLongTerm_L_Dsply "Long term distance distance driven with the engine off since the last long term reset (Long Term EV Miles)."; -CM_ SG_ 765 Mc_VehTimeFrmtUsrSel_St "Object.BodyInterface.Settings.VehicleTimeFormatUserSelection"; -CM_ SG_ 765 Mc_VehUntTrpCoUsrSel_St "Object.VehicleSettings.Disp_Miles_Kilometers.Rq"; -CM_ SG_ 765 Mc_VehUnitTempUsrSel_St "Object.VehicleSettings.Disp_Temperature.Rq"; -CM_ SG_ 765 Mc_VehLangUsrSel_St "Object.BodyInterface.Settings.VehicleLanguageUserSelection Object Vehicle Settings.Disp_LangSel"; -CM_ SG_ 934 Side_Detect_L_Illum "DDMGenSigTimeoutTime=2000"; -CM_ SG_ 934 SodLeft_D_Stat "IPCGenSigTimeoutTime=1600"; -CM_ SG_ 934 SodSnsLeft_D_Stat "IPCGenSigTimeoutTime=1600"; -CM_ SG_ 934 SodAlrtLeft_D_Stat "DDMGenSigTimeoutTime=2000"; -CM_ SG_ 1072 MetricActv_B_Actl "0 =Inactive(English), 1=Active(Metric)"; -CM_ SG_ 145 VehYaw_W_Actl "CCMGenSigTimeoutTime=1000"; -CM_ SG_ 931 CrnkInhbt_No_Cs "Signal not transmitted on gas and HEV variants."; -CM_ SG_ 931 CrnkInhbt_No_Cnt "Signal not transmitted on gas and HEV variants."; -CM_ SG_ 947 Dimming_Lvl "Refer to Vehicle Interior Illum Dimming Ctrl Sys Eng Spec, Table 2"; -CM_ SG_ 947 PrkBrkActv_B_Actl "Signal not transmitted on vehicles with electric park brake. "; -CM_ SG_ 394 HaDsply_No_Cs "Signal not transmitted on gas variants."; -CM_ SG_ 394 HaDsply_No_Cnt "Signal not transmitted on gas variants."; -CM_ SG_ 391 CmbbBrkDecel_A_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 391 CmbbBrkPrchg_D_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 391 CmbbBrkDecel_B_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 391 CmbbBaSens_D_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 390 AccBrkTot_A_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 390 AccBrkPrkEl_B_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 390 AccPrpl_A_Rq "PCMGenSigTimeoutTime=1000"; -CM_ SG_ 390 AccBrkPrchg_B_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 390 AccBrkDecel_B_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 390 AccStopStat_B_Rq "ABSGenSigTimeoutTime=1000"; -CM_ SG_ 942 PrkAidRdiusRight_L_Dsply "MSGDCR 679, set all signals to OnChange"; -CM_ SG_ 942 PrkAidRdiusLeft_L_Dsply "MSGDCR 679, set all signals to OnChange"; -CM_ SG_ 942 PrkAidDrvDir_D_Stat "MSGDCR 679, set all signals to OnChange"; - -BA_DEF_ BO_ "OvtpPushApplication" ENUM "FALSE","TRUE"; -BA_DEF_ BU_ "OvtpOperationMode" ENUM "SERVER","CLIENT"; -BA_DEF_ BU_ "OvtpEcuAddress" INT 0 1022; -BA_DEF_ SG_ "ECGUsedRxSignal" ENUM "No","Yes"; -BA_DEF_ SG_ "U_S650_MY2022_Rx" ENUM "No","Yes"; -BA_DEF_ SG_ "ECGUsedTxSignal" ENUM "No","Yes"; -BA_DEF_ SG_ "U_S650_MY2022_Tx" ENUM "No","Yes"; -BA_DEF_ SG_ "GenSigTimeoutTime_CHCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_SOBDMC_HPCM_F" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_CMR_DSMC" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ECM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ECM_HEVDSL" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_AWD_DLCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ECM_HEV" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_GENERIC" INT 0 100000; -BA_DEF_ BO_ "VFrameFormat" ENUM "StandardCAN","ExtendedCAN","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","StandardCAN_FD","ExtendedCAN_FD"; -BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_HCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ECM_Diesel" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TCCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TCM_DSL" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_IPMA_ADAS" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_PCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_PCM_HEV" INT 0 100000; -BA_DEF_ "BusType" STRING; -BA_DEF_ BO_ "FrameRouting" STRING; -BA_DEF_ BO_ "FrameGatewayNetwork" STRING; -BA_DEF_ BO_ "FrameGateway_LC1" HEX 0 1407; -BA_DEF_ BO_ "FrameGatewayLC1_HS3" HEX 0 1407; -BA_DEF_ BO_ "FrameGatewayMS1" HEX 0 1407; -BA_DEF_ BO_ "FrameGatewayHS3" HEX 0 1407; -BA_DEF_ BO_ "FrameGatewayHS2" HEX 0 1407; -BA_DEF_ BO_ "FrameGatewayHS1" HEX 0 1407; -BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes"; -BA_DEF_ BO_ "FrameGatewayId" HEX 0 1407; -BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; -BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes"; -BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; -BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; -BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; -BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; -BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; -BA_DEF_ BO_ "GenMsgSendType" ENUM "FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; -BA_DEF_ SG_ "U_T6_MCA_MY2020_Tx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_P702_MY2021_Tx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_CX727_MY2021_Tx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_F5X_MY20_Tx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_Commodity_MYXX_Tx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_T6_MCA_MY2020_Rx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_P702_MY2021_Rx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_CX727_MY2021_Rx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_F5X_MY20_Rx" ENUM "No","Yes"; -BA_DEF_ SG_ "U_Commodity_MYXX_Rx" ENUM "No","Yes"; -BA_DEF_ SG_ "GenSigStartValue" HEX 0 268435455; -BA_DEF_ SG_ "MetaData" ENUM "No","Yes"; -BA_DEF_ SG_ "ApprovedOrphan" ENUM "No","Yes"; -BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes"; -BA_DEF_ SG_ "GenSigStartValueInteger" INT 0 1000000000; -BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes"; -BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; -BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes"; -BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; -BA_DEF_ SG_ "GenSigSendType" ENUM "Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; -BA_DEF_ BO_ "SCP_FreshnessValueLength" INT 0 512; -BA_DEF_ BO_ "AuthFreshnessCounterSyncAttempt" INT 0 512; -BA_DEF_ BO_ "SCP_DataID" INT 0 65535; -BA_DEF_ BO_ "SCP_FreshnessValueTxLength" INT 0 512; -BA_DEF_ BO_ "SCP_AuthInfoTxLength" INT 0 512; -BA_DEF_ BO_ "SC_Message" ENUM "No","Yes"; -BA_DEF_ BO_ "ProgBWConditional" STRING; -BA_DEF_ BO_ "GenMsgRoutingTimeoutTime" INT 0 5000; -BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes"; -BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes"; -BA_DEF_ BO_ "TpApplType" STRING; -BA_DEF_ BO_ "DiagState" ENUM "No","Yes"; -BA_DEF_ BO_ "TpTxIndex" INT 0 536870911; -BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes"; -BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes"; -BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes"; -BA_DEF_ BO_ "NmMessage" ENUM "No","Yes"; -BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes"; -BA_DEF_ BU_ "Terminator" ENUM "No","Yes"; -BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; -BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; -BA_DEF_ BU_ "NmAsrNodeIdentifier" HEX 128 255; -BA_DEF_ BU_ "NmAsrNode" ENUM "No","Yes"; -BA_DEF_ BU_ "PowerType" ENUM "Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; -BA_DEF_ BU_ "DiagNode" ENUM "GGDS","GDS","NONE"; -BA_DEF_ BU_ "EOL_SB_Flash" ENUM "GGDS","GDS","NONE","vector_leerstring"; -BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes"; -BA_DEF_ BU_ "NmNode" ENUM "No","Yes"; -BA_DEF_ BU_ "NmStationAddress" INT 0 255; -BA_DEF_ BU_ "ILUsed" ENUM "No","Yes"; -BA_DEF_ BU_ "NosPackage" ENUM "None","I3_1","I3_2","1.0.1","RP","EuCD","Volcano","I3_3","FNOS_Autosar"; -BA_DEF_ BU_ "LIN_Master" ENUM "No","Yes"; -BA_DEF_ BU_ "PackageID" STRING; -BA_DEF_ BU_ "GatewayECU" ENUM "No","Yes"; -BA_DEF_ "NetworkSpeed" ENUM "500kBits/s","125kBit/s"; -BA_DEF_ "VersionNumber" INT 0 10000; -BA_DEF_ "StarNetworkGwType" ENUM "0=NotDefined","1=HS1","2=HS2","3=HS3","4=HS4","5=HS5","6=MS1","7=HS6","8=HS7","9=MS2","10=FD1","11=FD2","12=FD3","13=FD4","14=FD5","15=FD6","16=FD7","17=FD8"; -BA_DEF_ "CMDB_Version" STRING; -BA_DEF_ "NmType" STRING; -BA_DEF_ "NmAsrMessageCount" INT 128 128; -BA_DEF_ "NmAsrBaseAddress" HEX 1408 1408; -BA_DEF_ "DBName" STRING; -BA_DEF_ "VersionDay" INT 1 31; -BA_DEF_ "Manufacturer" STRING; -BA_DEF_ "VersionMonth" INT 1 12; -BA_DEF_ "VersionYear" INT 2000 3000; -BA_DEF_ "NmBaseAddress" HEX 1280 1280; -BA_DEF_ "NmMessageCount" INT 0 128; -BA_DEF_DEF_ "OvtpPushApplication" "FALSE"; -BA_DEF_DEF_ "OvtpOperationMode" "SERVER"; -BA_DEF_DEF_ "OvtpEcuAddress" 0; -BA_DEF_DEF_ "ECGUsedRxSignal" "No"; -BA_DEF_DEF_ "U_S650_MY2022_Rx" "No"; -BA_DEF_DEF_ "ECGUsedTxSignal" "No"; -BA_DEF_DEF_ "U_S650_MY2022_Tx" "No"; -BA_DEF_DEF_ "GenSigTimeoutTime_CHCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_SOBDMC_HPCM_F" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_CMR_DSMC" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ECM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ECM_HEVDSL" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_AWD_DLCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ECM_HEV" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_GENERIC" 0; -BA_DEF_DEF_ "VFrameFormat" "ExtendedCAN_FD"; -BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_HCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ECM_Diesel" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TCCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TCM_DSL" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_IPMA_ADAS" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_PCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_PCM_HEV" 0; -BA_DEF_DEF_ "BusType" ""; -BA_DEF_DEF_ "FrameRouting" "NONE"; -BA_DEF_DEF_ "FrameGatewayNetwork" "NONE"; -BA_DEF_DEF_ "FrameGateway_LC1" 0; -BA_DEF_DEF_ "FrameGatewayLC1_HS3" 0; -BA_DEF_DEF_ "FrameGatewayMS1" 0; -BA_DEF_DEF_ "FrameGatewayHS3" 0; -BA_DEF_DEF_ "FrameGatewayHS2" 0; -BA_DEF_DEF_ "FrameGatewayHS1" 0; -BA_DEF_DEF_ "NetworkInitialization" "Yes"; -BA_DEF_DEF_ "FrameGatewayId" 0; -BA_DEF_DEF_ "EventRateOfChange" 10000; -BA_DEF_DEF_ "ConfiguredTransmitter" "No"; -BA_DEF_DEF_ "GenMsgStartDelayTime" 0; -BA_DEF_DEF_ "GenMsgNrOfRepetition" 1; -BA_DEF_DEF_ "GenMsgDelayTime" 20; -BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; -BA_DEF_DEF_ "GenMsgCycleTime" 0; -BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; -BA_DEF_DEF_ "U_T6_MCA_MY2020_Tx" "No"; -BA_DEF_DEF_ "U_P702_MY2021_Tx" "No"; -BA_DEF_DEF_ "U_CX727_MY2021_Tx" "No"; -BA_DEF_DEF_ "U_F5X_MY20_Tx" "No"; -BA_DEF_DEF_ "U_Commodity_MYXX_Tx" "No"; -BA_DEF_DEF_ "U_T6_MCA_MY2020_Rx" "No"; -BA_DEF_DEF_ "U_P702_MY2021_Rx" "No"; -BA_DEF_DEF_ "U_CX727_MY2021_Rx" "No"; -BA_DEF_DEF_ "U_F5X_MY20_Rx" "No"; -BA_DEF_DEF_ "U_Commodity_MYXX_Rx" "No"; -BA_DEF_DEF_ "GenSigStartValue" 0; -BA_DEF_DEF_ "MetaData" "No"; -BA_DEF_DEF_ "ApprovedOrphan" "No"; -BA_DEF_DEF_ "ContentDependant" "No"; -BA_DEF_DEF_ "GenSigStartValueInteger" 0; -BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; -BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; -BA_DEF_DEF_ "WakeupSignal" "No"; -BA_DEF_DEF_ "GenSigInactiveValue" 0; -BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; -BA_DEF_DEF_ "SCP_FreshnessValueLength" 64; -BA_DEF_DEF_ "AuthFreshnessCounterSyncAttempt" 2; -BA_DEF_DEF_ "SCP_DataID" 0; -BA_DEF_DEF_ "SCP_FreshnessValueTxLength" 8; -BA_DEF_DEF_ "SCP_AuthInfoTxLength" 56; -BA_DEF_DEF_ "SC_Message" "No"; -BA_DEF_DEF_ "ProgBWConditional" "NONE"; -BA_DEF_DEF_ "GenMsgRoutingTimeoutTime" 0; -BA_DEF_DEF_ "MessageGateway" "No"; -BA_DEF_DEF_ "NmAsrMessage" "No"; -BA_DEF_DEF_ "TpApplType" ""; -BA_DEF_DEF_ "DiagState" "No"; -BA_DEF_DEF_ "TpTxIndex" 0; -BA_DEF_DEF_ "NetworkInitializationCommand" "No"; -BA_DEF_DEF_ "DiagRequest" "No"; -BA_DEF_DEF_ "DiagResponse" "No"; -BA_DEF_DEF_ "NmMessage" "No"; -BA_DEF_DEF_ "GenMsgILSupport" "Yes"; -BA_DEF_DEF_ "Terminator" "No"; -BA_DEF_DEF_ "NodeWakeUpTime" 10; -BA_DEF_DEF_ "NodeStartUpTime" 250; -BA_DEF_DEF_ "NmAsrNodeIdentifier" 128; -BA_DEF_DEF_ "NmAsrNode" "No"; -BA_DEF_DEF_ "PowerType" "Switched"; -BA_DEF_DEF_ "DiagNode" "GGDS"; -BA_DEF_DEF_ "EOL_SB_Flash" "GGDS"; -BA_DEF_DEF_ "NetworkInitializationUsed" "No"; -BA_DEF_DEF_ "NmNode" "No"; -BA_DEF_DEF_ "NmStationAddress" 0; -BA_DEF_DEF_ "ILUsed" "Yes"; -BA_DEF_DEF_ "NosPackage" "I3_3"; -BA_DEF_DEF_ "LIN_Master" "No"; -BA_DEF_DEF_ "PackageID" "08.05.00.00.71.xx.xx.rr.00.00"; -BA_DEF_DEF_ "GatewayECU" "No"; -BA_DEF_DEF_ "NetworkSpeed" "500kBits/s"; -BA_DEF_DEF_ "VersionNumber" 1; -BA_DEF_DEF_ "StarNetworkGwType" "0=NotDefined"; -BA_DEF_DEF_ "CMDB_Version" "v11.01"; -BA_DEF_DEF_ "NmType" "Ford-OSEK"; -BA_DEF_DEF_ "NmAsrMessageCount" 128; -BA_DEF_DEF_ "NmAsrBaseAddress" 1408; -BA_DEF_DEF_ "DBName" ""; -BA_DEF_DEF_ "VersionDay" 1; -BA_DEF_DEF_ "Manufacturer" "Ford"; -BA_DEF_DEF_ "VersionMonth" 1; -BA_DEF_DEF_ "VersionYear" 2011; -BA_DEF_DEF_ "NmBaseAddress" 1280; -BA_DEF_DEF_ "NmMessageCount" 128; -BA_ "BusType" "CAN FD"; -BA_ "VersionYear" 2019; -BA_ "VersionMonth" 4; -BA_ "Manufacturer" "Ford"; -BA_ "VersionDay" 11; -BA_ "CMDB_Version" "FNV2_v18.07"; -BA_ "StarNetworkGwType" 10; -BA_ "VersionNumber" 6; -BA_ "NmType" "Ford-OSEK"; -BA_ "DBName" "FD1_CAN"; -BA_ "NmStationAddress" BU_ VDM 48; -BA_ "OvtpEcuAddress" BU_ VDM 32; -BA_ "OvtpEcuAddress" BU_ CMR_DSMC 187; -BA_ "NmStationAddress" BU_ CMR_DSMC 95; -BA_ "PowerType" BU_ CMR_DSMC 2; -BA_ "NmAsrNode" BU_ CMR_DSMC 1; -BA_ "NmAsrNodeIdentifier" BU_ CMR_DSMC 223; -BA_ "OvtpEcuAddress" BU_ SOBDMC_HPCM_FD1 17; -BA_ "NmStationAddress" BU_ SOBDMC_HPCM_FD1 37; -BA_ "OvtpEcuAddress" BU_ IPMA_ADAS 33; -BA_ "NmStationAddress" BU_ IPMA_ADAS 28; -BA_ "NodeStartUpTime" BU_ IPMA_ADAS 300; -BA_ "OvtpEcuAddress" BU_ PSCM 48; -BA_ "NmStationAddress" BU_ PSCM 53; -BA_ "PowerType" BU_ PSCM 1; -BA_ "NmAsrNode" BU_ PSCM 1; -BA_ "NmAsrNodeIdentifier" BU_ PSCM 181; -BA_ "Terminator" BU_ PSCM 1; -BA_ "OvtpEcuAddress" BU_ ABS_ESC 40; -BA_ "NmStationAddress" BU_ ABS_ESC 22; -BA_ "PowerType" BU_ ABS_ESC 2; -BA_ "NmAsrNode" BU_ ABS_ESC 1; -BA_ "NmAsrNodeIdentifier" BU_ ABS_ESC 150; -BA_ "NodeStartUpTime" BU_ ABS_ESC 1000; -BA_ "NodeWakeUpTime" BU_ ABS_ESC 300; -BA_ "OvtpEcuAddress" BU_ TCCM 25; -BA_ "NmStationAddress" BU_ TCCM 33; -BA_ "NmAsrNode" BU_ TCCM 1; -BA_ "NmAsrNodeIdentifier" BU_ TCCM 161; -BA_ "NodeStartUpTime" BU_ TCCM 1000; -BA_ "NodeWakeUpTime" BU_ TCCM 25; -BA_ "OvtpEcuAddress" BU_ TCM_DSL 24; -BA_ "NmStationAddress" BU_ TCM_DSL 32; -BA_ "PowerType" BU_ TCM_DSL 1; -BA_ "NmAsrNode" BU_ TCM_DSL 1; -BA_ "NmAsrNodeIdentifier" BU_ TCM_DSL 160; -BA_ "NodeWakeUpTime" BU_ TCM_DSL 200; -BA_ "NosPackage" BU_ TCM_DSL 4; -BA_ "OvtpEcuAddress" BU_ PCM_HEV 16; -BA_ "NmStationAddress" BU_ PCM_HEV 21; -BA_ "PowerType" BU_ PCM_HEV 1; -BA_ "NmAsrNode" BU_ PCM_HEV 1; -BA_ "NmAsrNodeIdentifier" BU_ PCM_HEV 149; -BA_ "NodeStartUpTime" BU_ PCM_HEV 350; -BA_ "OvtpEcuAddress" BU_ PCM 16; -BA_ "NmStationAddress" BU_ PCM 21; -BA_ "PowerType" BU_ PCM 1; -BA_ "NmAsrNode" BU_ PCM 1; -BA_ "NmAsrNodeIdentifier" BU_ PCM 149; -BA_ "NodeStartUpTime" BU_ PCM 350; -BA_ "OvtpEcuAddress" BU_ ECM_Diesel 16; -BA_ "NmStationAddress" BU_ ECM_Diesel 21; -BA_ "PowerType" BU_ ECM_Diesel 1; -BA_ "NmAsrNode" BU_ ECM_Diesel 1; -BA_ "NmAsrNodeIdentifier" BU_ ECM_Diesel 149; -BA_ "OvtpEcuAddress" BU_ GWM 216; -BA_ "OvtpOperationMode" BU_ GWM 1; -BA_ "NmStationAddress" BU_ GWM 30; -BA_ "PowerType" BU_ GWM 2; -BA_ "NmAsrNode" BU_ GWM 1; -BA_ "NmAsrNodeIdentifier" BU_ GWM 158; -BA_ "NodeStartUpTime" BU_ GWM 100; -BA_ "Terminator" BU_ GWM 1; -BA_ "GatewayECU" BU_ GWM 1; -BA_ "NosPackage" BU_ GWM 4; -BA_ "GenMsgSendType" BO_ 823 5; -BA_ "GenMsgCycleTime" BO_ 823 1000; -BA_ "VFrameFormat" BO_ 823 14; -BA_ "GenMsgSendType" BO_ 824 5; -BA_ "GenMsgCycleTime" BO_ 824 1000; -BA_ "VFrameFormat" BO_ 824 14; -BA_ "FrameGatewayId" BO_ 949 949; -BA_ "FrameGatewayNetwork" BO_ 949 "HS1_CAN"; -BA_ "FrameRouting" BO_ 949 ""; -BA_ "VFrameFormat" BO_ 949 14; -BA_ "GenMsgILSupport" BO_ 1825 0; -BA_ "DiagRequest" BO_ 1825 1; -BA_ "GenMsgSendType" BO_ 1825 1; -BA_ "GenMsgDelayTime" BO_ 1825 0; -BA_ "NetworkInitialization" BO_ 1825 0; -BA_ "VFrameFormat" BO_ 1825 14; -BA_ "GenMsgDelayTime" BO_ 524 0; -BA_ "GenMsgCycleTime" BO_ 524 10; -BA_ "GenMsgSendType" BO_ 524 0; -BA_ "ProgBWConditional" BO_ 524 "MSGDCR1008_CX48X_V03_HS1D_56.84_mHEV_54.89"; -BA_ "VFrameFormat" BO_ 524 14; -BA_ "FrameRouting" BO_ 740 ""; -BA_ "FrameGatewayNetwork" BO_ 740 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 740 740; -BA_ "VFrameFormat" BO_ 740 14; -BA_ "GenMsgCycleTime" BO_ 1160 1000; -BA_ "GenMsgSendType" BO_ 1160 5; -BA_ "VFrameFormat" BO_ 1160 14; -BA_ "GenMsgCycleTime" BO_ 776 1000; -BA_ "GenMsgSendType" BO_ 776 5; -BA_ "VFrameFormat" BO_ 776 14; -BA_ "GenMsgCycleTime" BO_ 775 1000; -BA_ "GenMsgSendType" BO_ 775 5; -BA_ "VFrameFormat" BO_ 775 14; -BA_ "GenMsgCycleTime" BO_ 774 1000; -BA_ "GenMsgSendType" BO_ 774 5; -BA_ "VFrameFormat" BO_ 774 14; -BA_ "FrameGatewayId" BO_ 811 811; -BA_ "FrameGatewayNetwork" BO_ 811 "HS3_CAN"; -BA_ "FrameRouting" BO_ 811 ""; -BA_ "VFrameFormat" BO_ 811 14; -BA_ "GenMsgSendType" BO_ 850 0; -BA_ "GenMsgCycleTime" BO_ 850 150; -BA_ "VFrameFormat" BO_ 850 14; -BA_ "GenMsgCycleTime" BO_ 563 1000; -BA_ "GenMsgSendType" BO_ 563 5; -BA_ "VFrameFormat" BO_ 563 14; -BA_ "GenMsgILSupport" BO_ 1833 0; -BA_ "DiagResponse" BO_ 1833 1; -BA_ "GenMsgSendType" BO_ 1833 1; -BA_ "GenMsgDelayTime" BO_ 1833 0; -BA_ "NetworkInitialization" BO_ 1833 0; -BA_ "VFrameFormat" BO_ 1833 14; -BA_ "FrameRouting" BO_ 570 ""; -BA_ "GenMsgSendType" BO_ 570 0; -BA_ "GenMsgCycleTime" BO_ 570 20; -BA_ "GenMsgDelayTime" BO_ 570 10; -BA_ "VFrameFormat" BO_ 570 14; -BA_ "FrameRouting" BO_ 837 ""; -BA_ "GenMsgSendType" BO_ 837 5; -BA_ "GenMsgCycleTime" BO_ 837 1000; -BA_ "VFrameFormat" BO_ 837 14; -BA_ "FrameRouting" BO_ 885 ""; -BA_ "GenMsgSendType" BO_ 885 0; -BA_ "GenMsgCycleTime" BO_ 885 200; -BA_ "VFrameFormat" BO_ 885 14; -BA_ "FrameRouting" BO_ 1150 ""; -BA_ "FrameGatewayNetwork" BO_ 1150 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 1150 1118; -BA_ "VFrameFormat" BO_ 1150 14; -BA_ "FrameRouting" BO_ 542 ""; -BA_ "FrameGatewayNetwork" BO_ 542 "HS4_CAN"; -BA_ "FrameGatewayId" BO_ 542 542; -BA_ "VFrameFormat" BO_ 542 14; -BA_ "FrameRouting" BO_ 2612224016 ""; -BA_ "TpTxIndex" BO_ 2612224016 464535768; -BA_ "GenMsgSendType" BO_ 2612224016 1; -BA_ "GenMsgCycleTime" BO_ 2612224016 0; -BA_ "GenMsgDelayTime" BO_ 2612224016 0; -BA_ "NetworkInitialization" BO_ 2612224016 0; -BA_ "OvtpPushApplication" BO_ 2612224016 1; -BA_ "VFrameFormat" BO_ 2612224016 15; -BA_ "FrameRouting" BO_ 810 ""; -BA_ "GenMsgCycleTime" BO_ 810 1000; -BA_ "GenMsgSendType" BO_ 810 5; -BA_ "VFrameFormat" BO_ 810 14; -BA_ "FrameRouting" BO_ 550 ""; -BA_ "GenMsgCycleTime" BO_ 550 1000; -BA_ "GenMsgSendType" BO_ 550 5; -BA_ "VFrameFormat" BO_ 550 14; -BA_ "FrameRouting" BO_ 639 ""; -BA_ "GenMsgCycleTime" BO_ 639 1000; -BA_ "GenMsgSendType" BO_ 639 5; -BA_ "VFrameFormat" BO_ 639 14; -BA_ "FrameRouting" BO_ 530 ""; -BA_ "GenMsgCycleTime" BO_ 530 1000; -BA_ "GenMsgSendType" BO_ 530 5; -BA_ "VFrameFormat" BO_ 530 14; -BA_ "FrameRouting" BO_ 1142 ""; -BA_ "GenMsgSendType" BO_ 1142 0; -BA_ "GenMsgCycleTime" BO_ 1142 500; -BA_ "VFrameFormat" BO_ 1142 14; -BA_ "FrameRouting" BO_ 817 ""; -BA_ "FrameGatewayId" BO_ 817 817; -BA_ "FrameGatewayNetwork" BO_ 817 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 817 14; -BA_ "FrameRouting" BO_ 879 ""; -BA_ "FrameGatewayNetwork" BO_ 879 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 879 879; -BA_ "VFrameFormat" BO_ 879 14; -BA_ "FrameRouting" BO_ 878 ""; -BA_ "GenMsgSendType" BO_ 878 5; -BA_ "GenMsgCycleTime" BO_ 878 1000; -BA_ "VFrameFormat" BO_ 878 14; -BA_ "FrameRouting" BO_ 395 ""; -BA_ "FrameGatewayNetwork" BO_ 395 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 395 395; -BA_ "VFrameFormat" BO_ 395 14; -BA_ "TpTxIndex" BO_ 2611055832 463572184; -BA_ "FrameRouting" BO_ 2611055832 ""; -BA_ "NetworkInitialization" BO_ 2611055832 0; -BA_ "GenMsgDelayTime" BO_ 2611055832 0; -BA_ "GenMsgSendType" BO_ 2611055832 1; -BA_ "VFrameFormat" BO_ 2611055832 15; -BA_ "TpTxIndex" BO_ 2611054808 463571160; -BA_ "FrameRouting" BO_ 2611054808 ""; -BA_ "NetworkInitialization" BO_ 2611054808 0; -BA_ "GenMsgDelayTime" BO_ 2611054808 0; -BA_ "GenMsgSendType" BO_ 2611054808 1; -BA_ "VFrameFormat" BO_ 2611054808 15; -BA_ "TpTxIndex" BO_ 2611026136 463542488; -BA_ "FrameRouting" BO_ 2611026136 ""; -BA_ "NetworkInitialization" BO_ 2611026136 0; -BA_ "GenMsgDelayTime" BO_ 2611026136 0; -BA_ "GenMsgSendType" BO_ 2611026136 1; -BA_ "VFrameFormat" BO_ 2611026136 15; -BA_ "TpTxIndex" BO_ 2611025112 463541464; -BA_ "FrameRouting" BO_ 2611025112 ""; -BA_ "NetworkInitialization" BO_ 2611025112 0; -BA_ "GenMsgDelayTime" BO_ 2611025112 0; -BA_ "GenMsgSendType" BO_ 2611025112 1; -BA_ "VFrameFormat" BO_ 2611025112 15; -BA_ "TpTxIndex" BO_ 2610975960 463492312; -BA_ "FrameRouting" BO_ 2610975960 ""; -BA_ "NetworkInitialization" BO_ 2610975960 0; -BA_ "GenMsgDelayTime" BO_ 2610975960 0; -BA_ "GenMsgSendType" BO_ 2610975960 1; -BA_ "VFrameFormat" BO_ 2610975960 15; -BA_ "FrameRouting" BO_ 2610007256 ""; -BA_ "NetworkInitialization" BO_ 2610007256 0; -BA_ "GenMsgDelayTime" BO_ 2610007256 0; -BA_ "GenMsgSendType" BO_ 2610007256 1; -BA_ "TpTxIndex" BO_ 2610007256 462523608; -BA_ "VFrameFormat" BO_ 2610007256 15; -BA_ "FrameRouting" BO_ 2610006232 ""; -BA_ "NetworkInitialization" BO_ 2610006232 0; -BA_ "GenMsgDelayTime" BO_ 2610006232 0; -BA_ "GenMsgSendType" BO_ 2610006232 1; -BA_ "TpTxIndex" BO_ 2610006232 462522584; -BA_ "VFrameFormat" BO_ 2610006232 15; -BA_ "FrameRouting" BO_ 2609977560 ""; -BA_ "NetworkInitialization" BO_ 2609977560 0; -BA_ "GenMsgDelayTime" BO_ 2609977560 0; -BA_ "GenMsgSendType" BO_ 2609977560 1; -BA_ "TpTxIndex" BO_ 2609977560 462493912; -BA_ "VFrameFormat" BO_ 2609977560 15; -BA_ "FrameRouting" BO_ 2609976536 ""; -BA_ "NetworkInitialization" BO_ 2609976536 0; -BA_ "GenMsgDelayTime" BO_ 2609976536 0; -BA_ "GenMsgSendType" BO_ 2609976536 1; -BA_ "TpTxIndex" BO_ 2609976536 462492888; -BA_ "VFrameFormat" BO_ 2609976536 15; -BA_ "FrameRouting" BO_ 2609927384 ""; -BA_ "NetworkInitialization" BO_ 2609927384 0; -BA_ "GenMsgDelayTime" BO_ 2609927384 0; -BA_ "GenMsgSendType" BO_ 2609927384 1; -BA_ "TpTxIndex" BO_ 2609927384 462443736; -BA_ "VFrameFormat" BO_ 2609927384 15; -BA_ "TpTxIndex" BO_ 2611175523 463572184; -BA_ "FrameRouting" BO_ 2611175523 ""; -BA_ "NetworkInitialization" BO_ 2611175523 0; -BA_ "GenMsgDelayTime" BO_ 2611175523 0; -BA_ "GenMsgSendType" BO_ 2611175523 1; -BA_ "VFrameFormat" BO_ 2611175523 15; -BA_ "TpTxIndex" BO_ 2612224099 464620760; -BA_ "OvtpPushApplication" BO_ 2612224099 1; -BA_ "FrameRouting" BO_ 2612224099 ""; -BA_ "NetworkInitialization" BO_ 2612224099 0; -BA_ "GenMsgDelayTime" BO_ 2612224099 0; -BA_ "GenMsgSendType" BO_ 2612224099 1; -BA_ "VFrameFormat" BO_ 2612224099 15; -BA_ "TpTxIndex" BO_ 2611175522 463571160; -BA_ "FrameRouting" BO_ 2611175522 ""; -BA_ "NetworkInitialization" BO_ 2611175522 0; -BA_ "GenMsgDelayTime" BO_ 2611175522 0; -BA_ "GenMsgSendType" BO_ 2611175522 1; -BA_ "VFrameFormat" BO_ 2611175522 15; -BA_ "TpTxIndex" BO_ 2612224098 464619736; -BA_ "OvtpPushApplication" BO_ 2612224098 1; -BA_ "FrameRouting" BO_ 2612224098 ""; -BA_ "NetworkInitialization" BO_ 2612224098 0; -BA_ "GenMsgDelayTime" BO_ 2612224098 0; -BA_ "GenMsgSendType" BO_ 2612224098 1; -BA_ "VFrameFormat" BO_ 2612224098 15; -BA_ "TpTxIndex" BO_ 2611175494 463542488; -BA_ "FrameRouting" BO_ 2611175494 ""; -BA_ "NetworkInitialization" BO_ 2611175494 0; -BA_ "GenMsgDelayTime" BO_ 2611175494 0; -BA_ "GenMsgSendType" BO_ 2611175494 1; -BA_ "VFrameFormat" BO_ 2611175494 15; -BA_ "TpTxIndex" BO_ 2612224070 464591064; -BA_ "OvtpPushApplication" BO_ 2612224070 1; -BA_ "FrameRouting" BO_ 2612224070 ""; -BA_ "NetworkInitialization" BO_ 2612224070 0; -BA_ "GenMsgDelayTime" BO_ 2612224070 0; -BA_ "GenMsgSendType" BO_ 2612224070 1; -BA_ "VFrameFormat" BO_ 2612224070 15; -BA_ "TpTxIndex" BO_ 2611175493 463541464; -BA_ "FrameRouting" BO_ 2611175493 ""; -BA_ "NetworkInitialization" BO_ 2611175493 0; -BA_ "GenMsgDelayTime" BO_ 2611175493 0; -BA_ "GenMsgSendType" BO_ 2611175493 1; -BA_ "VFrameFormat" BO_ 2611175493 15; -BA_ "TpTxIndex" BO_ 2612224069 464590040; -BA_ "OvtpPushApplication" BO_ 2612224069 1; -BA_ "FrameRouting" BO_ 2612224069 ""; -BA_ "NetworkInitialization" BO_ 2612224069 0; -BA_ "GenMsgDelayTime" BO_ 2612224069 0; -BA_ "GenMsgSendType" BO_ 2612224069 1; -BA_ "VFrameFormat" BO_ 2612224069 15; -BA_ "TpTxIndex" BO_ 2611175445 463492312; -BA_ "FrameRouting" BO_ 2611175445 ""; -BA_ "NetworkInitialization" BO_ 2611175445 0; -BA_ "GenMsgDelayTime" BO_ 2611175445 0; -BA_ "GenMsgSendType" BO_ 2611175445 1; -BA_ "VFrameFormat" BO_ 2611175445 15; -BA_ "TpTxIndex" BO_ 2612224021 464540888; -BA_ "OvtpPushApplication" BO_ 2612224021 1; -BA_ "FrameRouting" BO_ 2612224021 ""; -BA_ "NetworkInitialization" BO_ 2612224021 0; -BA_ "GenMsgDelayTime" BO_ 2612224021 0; -BA_ "GenMsgSendType" BO_ 2612224021 1; -BA_ "VFrameFormat" BO_ 2612224021 15; -BA_ "TpTxIndex" BO_ 2610126947 462523608; -BA_ "FrameRouting" BO_ 2610126947 ""; -BA_ "NetworkInitialization" BO_ 2610126947 0; -BA_ "GenMsgDelayTime" BO_ 2610126947 0; -BA_ "GenMsgSendType" BO_ 2610126947 1; -BA_ "VFrameFormat" BO_ 2610126947 15; -BA_ "TpTxIndex" BO_ 2610126946 462522584; -BA_ "FrameRouting" BO_ 2610126946 ""; -BA_ "NetworkInitialization" BO_ 2610126946 0; -BA_ "GenMsgDelayTime" BO_ 2610126946 0; -BA_ "GenMsgSendType" BO_ 2610126946 1; -BA_ "VFrameFormat" BO_ 2610126946 15; -BA_ "TpTxIndex" BO_ 2610126918 462493912; -BA_ "FrameRouting" BO_ 2610126918 ""; -BA_ "NetworkInitialization" BO_ 2610126918 0; -BA_ "GenMsgDelayTime" BO_ 2610126918 0; -BA_ "GenMsgSendType" BO_ 2610126918 1; -BA_ "VFrameFormat" BO_ 2610126918 15; -BA_ "TpTxIndex" BO_ 2610126917 462492888; -BA_ "FrameRouting" BO_ 2610126917 ""; -BA_ "NetworkInitialization" BO_ 2610126917 0; -BA_ "GenMsgDelayTime" BO_ 2610126917 0; -BA_ "GenMsgSendType" BO_ 2610126917 1; -BA_ "VFrameFormat" BO_ 2610126917 15; -BA_ "FrameRouting" BO_ 2610126869 ""; -BA_ "NetworkInitialization" BO_ 2610126869 0; -BA_ "GenMsgDelayTime" BO_ 2610126869 0; -BA_ "GenMsgSendType" BO_ 2610126869 1; -BA_ "TpTxIndex" BO_ 2610126869 462443736; -BA_ "VFrameFormat" BO_ 2610126869 15; -BA_ "FrameRouting" BO_ 984 ""; -BA_ "GenMsgCycleTime" BO_ 984 1000; -BA_ "GenMsgSendType" BO_ 984 5; -BA_ "VFrameFormat" BO_ 984 14; -BA_ "FrameRouting" BO_ 985 ""; -BA_ "GenMsgSendType" BO_ 985 5; -BA_ "GenMsgCycleTime" BO_ 985 1000; -BA_ "VFrameFormat" BO_ 985 14; -BA_ "FrameRouting" BO_ 992 ""; -BA_ "FrameGatewayNetwork" BO_ 992 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 992 992; -BA_ "VFrameFormat" BO_ 992 14; -BA_ "OvtpPushApplication" BO_ 2612019416 1; -BA_ "FrameRouting" BO_ 2612019416 ""; -BA_ "TpTxIndex" BO_ 2612019416 464535768; -BA_ "NetworkInitialization" BO_ 2612019416 0; -BA_ "GenMsgDelayTime" BO_ 2612019416 0; -BA_ "GenMsgSendType" BO_ 2612019416 1; -BA_ "VFrameFormat" BO_ 2612019416 15; -BA_ "FrameRouting" BO_ 943 ""; -BA_ "GenMsgSendType" BO_ 943 0; -BA_ "GenMsgCycleTime" BO_ 943 20; -BA_ "GenMsgDelayTime" BO_ 943 10; -BA_ "VFrameFormat" BO_ 943 14; -BA_ "FrameRouting" BO_ 515 ""; -BA_ "GenMsgSendType" BO_ 515 5; -BA_ "GenMsgCycleTime" BO_ 515 100; -BA_ "VFrameFormat" BO_ 515 14; -BA_ "FrameRouting" BO_ 1111 ""; -BA_ "FrameGatewayId" BO_ 1111 1111; -BA_ "FrameGatewayNetwork" BO_ 1111 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 1111 14; -BA_ "FrameRouting" BO_ 1106 ""; -BA_ "FrameGatewayId" BO_ 1106 1106; -BA_ "FrameGatewayNetwork" BO_ 1106 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 1106 14; -BA_ "FrameRouting" BO_ 982 ""; -BA_ "GenMsgSendType" BO_ 982 0; -BA_ "GenMsgCycleTime" BO_ 982 50; -BA_ "VFrameFormat" BO_ 982 14; -BA_ "FrameRouting" BO_ 1985 ""; -BA_ "NetworkInitialization" BO_ 1985 0; -BA_ "GenMsgDelayTime" BO_ 1985 0; -BA_ "GenMsgSendType" BO_ 1985 1; -BA_ "DiagRequest" BO_ 1985 1; -BA_ "GenMsgILSupport" BO_ 1985 0; -BA_ "VFrameFormat" BO_ 1985 14; -BA_ "FrameRouting" BO_ 1993 ""; -BA_ "NetworkInitialization" BO_ 1993 0; -BA_ "GenMsgDelayTime" BO_ 1993 0; -BA_ "GenMsgSendType" BO_ 1993 1; -BA_ "DiagResponse" BO_ 1993 1; -BA_ "GenMsgILSupport" BO_ 1993 0; -BA_ "VFrameFormat" BO_ 1993 14; -BA_ "FrameRouting" BO_ 1104 ""; -BA_ "GenMsgCycleTime" BO_ 1104 200; -BA_ "GenMsgSendType" BO_ 1104 0; -BA_ "VFrameFormat" BO_ 1104 14; -BA_ "FrameRouting" BO_ 1503 ""; -BA_ "NetworkInitialization" BO_ 1503 0; -BA_ "GenMsgCycleTime" BO_ 1503 1000; -BA_ "GenMsgSendType" BO_ 1503 0; -BA_ "NmAsrMessage" BO_ 1503 1; -BA_ "GenMsgILSupport" BO_ 1503 0; -BA_ "VFrameFormat" BO_ 1503 14; -BA_ "TpTxIndex" BO_ 2610995416 463511768; -BA_ "FrameRouting" BO_ 2610995416 ""; -BA_ "NetworkInitialization" BO_ 2610995416 0; -BA_ "GenMsgDelayTime" BO_ 2610995416 0; -BA_ "GenMsgSendType" BO_ 2610995416 1; -BA_ "VFrameFormat" BO_ 2610995416 15; -BA_ "TpTxIndex" BO_ 2612043992 464560344; -BA_ "OvtpPushApplication" BO_ 2612043992 1; -BA_ "FrameRouting" BO_ 2612043992 ""; -BA_ "NetworkInitialization" BO_ 2612043992 0; -BA_ "GenMsgDelayTime" BO_ 2612043992 0; -BA_ "GenMsgSendType" BO_ 2612043992 1; -BA_ "VFrameFormat" BO_ 2612043992 15; -BA_ "FrameRouting" BO_ 2609946840 ""; -BA_ "NetworkInitialization" BO_ 2609946840 0; -BA_ "GenMsgDelayTime" BO_ 2609946840 0; -BA_ "GenMsgSendType" BO_ 2609946840 1; -BA_ "TpTxIndex" BO_ 2609946840 462463192; -BA_ "VFrameFormat" BO_ 2609946840 15; -BA_ "TpTxIndex" BO_ 2611175464 463511768; -BA_ "FrameRouting" BO_ 2611175464 ""; -BA_ "NetworkInitialization" BO_ 2611175464 0; -BA_ "GenMsgDelayTime" BO_ 2611175464 0; -BA_ "GenMsgSendType" BO_ 2611175464 1; -BA_ "VFrameFormat" BO_ 2611175464 15; -BA_ "TpTxIndex" BO_ 2612224040 464560344; -BA_ "OvtpPushApplication" BO_ 2612224040 1; -BA_ "FrameRouting" BO_ 2612224040 ""; -BA_ "NetworkInitialization" BO_ 2612224040 0; -BA_ "GenMsgDelayTime" BO_ 2612224040 0; -BA_ "GenMsgSendType" BO_ 2612224040 1; -BA_ "VFrameFormat" BO_ 2612224040 15; -BA_ "TpTxIndex" BO_ 2610126888 462463192; -BA_ "FrameRouting" BO_ 2610126888 ""; -BA_ "NetworkInitialization" BO_ 2610126888 0; -BA_ "GenMsgDelayTime" BO_ 2610126888 0; -BA_ "GenMsgSendType" BO_ 2610126888 1; -BA_ "VFrameFormat" BO_ 2610126888 15; -BA_ "TpTxIndex" BO_ 2610988248 463504600; -BA_ "FrameRouting" BO_ 2610988248 ""; -BA_ "NetworkInitialization" BO_ 2610988248 0; -BA_ "GenMsgDelayTime" BO_ 2610988248 0; -BA_ "GenMsgSendType" BO_ 2610988248 1; -BA_ "VFrameFormat" BO_ 2610988248 15; -BA_ "FrameRouting" BO_ 2609939672 ""; -BA_ "NetworkInitialization" BO_ 2609939672 0; -BA_ "GenMsgDelayTime" BO_ 2609939672 0; -BA_ "GenMsgSendType" BO_ 2609939672 1; -BA_ "TpTxIndex" BO_ 2609939672 462456024; -BA_ "VFrameFormat" BO_ 2609939672 15; -BA_ "FrameRouting" BO_ 1114 ""; -BA_ "FrameGatewayNetwork" BO_ 1114 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 1114 1114; -BA_ "VFrameFormat" BO_ 1114 14; -BA_ "FrameRouting" BO_ 1116 ""; -BA_ "FrameGatewayNetwork" BO_ 1116 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 1116 1116; -BA_ "VFrameFormat" BO_ 1116 14; -BA_ "TpTxIndex" BO_ 2611175457 463504600; -BA_ "FrameRouting" BO_ 2611175457 ""; -BA_ "NetworkInitialization" BO_ 2611175457 0; -BA_ "GenMsgDelayTime" BO_ 2611175457 0; -BA_ "GenMsgSendType" BO_ 2611175457 1; -BA_ "VFrameFormat" BO_ 2611175457 15; -BA_ "TpTxIndex" BO_ 2612224033 464553176; -BA_ "OvtpPushApplication" BO_ 2612224033 1; -BA_ "FrameRouting" BO_ 2612224033 ""; -BA_ "NetworkInitialization" BO_ 2612224033 0; -BA_ "GenMsgDelayTime" BO_ 2612224033 0; -BA_ "GenMsgSendType" BO_ 2612224033 1; -BA_ "VFrameFormat" BO_ 2612224033 15; -BA_ "TpTxIndex" BO_ 2610126881 462456024; -BA_ "FrameRouting" BO_ 2610126881 ""; -BA_ "NetworkInitialization" BO_ 2610126881 0; -BA_ "GenMsgDelayTime" BO_ 2610126881 0; -BA_ "GenMsgSendType" BO_ 2610126881 1; -BA_ "VFrameFormat" BO_ 2610126881 15; -BA_ "FrameRouting" BO_ 1085 ""; -BA_ "GenMsgSendType" BO_ 1085 0; -BA_ "GenMsgCycleTime" BO_ 1085 50; -BA_ "VFrameFormat" BO_ 1085 14; -BA_ "FrameRouting" BO_ 981 ""; -BA_ "GenMsgSendType" BO_ 981 0; -BA_ "GenMsgCycleTime" BO_ 981 30; -BA_ "VFrameFormat" BO_ 981 14; -BA_ "FrameRouting" BO_ 791 ""; -BA_ "FrameGatewayId" BO_ 791 791; -BA_ "FrameGatewayNetwork" BO_ 791 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 791 14; -BA_ "TpTxIndex" BO_ 2610970840 463487192; -BA_ "FrameRouting" BO_ 2610970840 ""; -BA_ "NetworkInitialization" BO_ 2610970840 0; -BA_ "GenMsgDelayTime" BO_ 2610970840 0; -BA_ "GenMsgSendType" BO_ 2610970840 1; -BA_ "VFrameFormat" BO_ 2610970840 15; -BA_ "TpTxIndex" BO_ 2609922264 462438616; -BA_ "FrameRouting" BO_ 2609922264 ""; -BA_ "NetworkInitialization" BO_ 2609922264 0; -BA_ "GenMsgDelayTime" BO_ 2609922264 0; -BA_ "GenMsgSendType" BO_ 2609922264 1; -BA_ "VFrameFormat" BO_ 2609922264 15; -BA_ "FrameRouting" BO_ 868 ""; -BA_ "FrameGatewayNetwork" BO_ 868 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 868 868; -BA_ "VFrameFormat" BO_ 868 14; -BA_ "FrameRouting" BO_ 867 ""; -BA_ "FrameGatewayNetwork" BO_ 867 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 867 867; -BA_ "VFrameFormat" BO_ 867 14; -BA_ "FrameRouting" BO_ 866 ""; -BA_ "FrameGatewayNetwork" BO_ 866 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 866 866; -BA_ "VFrameFormat" BO_ 866 14; -BA_ "FrameRouting" BO_ 865 ""; -BA_ "FrameGatewayNetwork" BO_ 865 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 865 865; -BA_ "VFrameFormat" BO_ 865 14; -BA_ "TpTxIndex" BO_ 2611175440 463487192; -BA_ "FrameRouting" BO_ 2611175440 ""; -BA_ "NetworkInitialization" BO_ 2611175440 0; -BA_ "GenMsgDelayTime" BO_ 2611175440 0; -BA_ "GenMsgCycleTime" BO_ 2611175440 0; -BA_ "GenMsgSendType" BO_ 2611175440 1; -BA_ "VFrameFormat" BO_ 2611175440 15; -BA_ "TpTxIndex" BO_ 2610126864 462438616; -BA_ "FrameRouting" BO_ 2610126864 ""; -BA_ "NetworkInitialization" BO_ 2610126864 0; -BA_ "GenMsgDelayTime" BO_ 2610126864 0; -BA_ "GenMsgSendType" BO_ 2610126864 1; -BA_ "VFrameFormat" BO_ 2610126864 15; -BA_ "TpTxIndex" BO_ 2611175441 463488216; -BA_ "FrameRouting" BO_ 2611175441 ""; -BA_ "NetworkInitialization" BO_ 2611175441 0; -BA_ "GenMsgDelayTime" BO_ 2611175441 0; -BA_ "GenMsgSendType" BO_ 2611175441 1; -BA_ "VFrameFormat" BO_ 2611175441 15; -BA_ "TpTxIndex" BO_ 2612224017 463488216; -BA_ "OvtpPushApplication" BO_ 2612224017 1; -BA_ "FrameRouting" BO_ 2612224017 ""; -BA_ "NetworkInitialization" BO_ 2612224017 0; -BA_ "GenMsgDelayTime" BO_ 2612224017 0; -BA_ "GenMsgSendType" BO_ 2612224017 1; -BA_ "VFrameFormat" BO_ 2612224017 15; -BA_ "FrameRouting" BO_ 2610126865 ""; -BA_ "NetworkInitialization" BO_ 2610126865 0; -BA_ "GenMsgDelayTime" BO_ 2610126865 0; -BA_ "GenMsgSendType" BO_ 2610126865 1; -BA_ "TpTxIndex" BO_ 2610126865 462439640; -BA_ "VFrameFormat" BO_ 2610126865 15; -BA_ "FrameRouting" BO_ 1679 ""; -BA_ "GenMsgCycleTime" BO_ 1679 0; -BA_ "GenMsgSendType" BO_ 1679 1; -BA_ "TpApplType" BO_ 1679 "DiagUUDTResponse"; -BA_ "GenMsgILSupport" BO_ 1679 0; -BA_ "VFrameFormat" BO_ 1679 14; -BA_ "FrameRouting" BO_ 1678 ""; -BA_ "GenMsgCycleTime" BO_ 1678 0; -BA_ "GenMsgSendType" BO_ 1678 1; -BA_ "TpApplType" BO_ 1678 "DiagUUDTResponse"; -BA_ "GenMsgILSupport" BO_ 1678 0; -BA_ "VFrameFormat" BO_ 1678 14; -BA_ "FrameRouting" BO_ 1677 ""; -BA_ "GenMsgCycleTime" BO_ 1677 0; -BA_ "GenMsgSendType" BO_ 1677 1; -BA_ "TpApplType" BO_ 1677 "DiagUUDTResponse"; -BA_ "GenMsgILSupport" BO_ 1677 0; -BA_ "VFrameFormat" BO_ 1677 14; -BA_ "FrameRouting" BO_ 1676 ""; -BA_ "GenMsgCycleTime" BO_ 1676 0; -BA_ "GenMsgSendType" BO_ 1676 1; -BA_ "TpApplType" BO_ 1676 "DiagUUDTResponse"; -BA_ "GenMsgILSupport" BO_ 1676 0; -BA_ "VFrameFormat" BO_ 1676 14; -BA_ "FrameRouting" BO_ 1445 ""; -BA_ "GenMsgILSupport" BO_ 1445 0; -BA_ "NmAsrMessage" BO_ 1445 1; -BA_ "GenMsgSendType" BO_ 1445 0; -BA_ "GenMsgCycleTime" BO_ 1445 1000; -BA_ "NetworkInitialization" BO_ 1445 0; -BA_ "VFrameFormat" BO_ 1445 14; -BA_ "FrameRouting" BO_ 1144 ""; -BA_ "GenMsgSendType" BO_ 1144 5; -BA_ "GenMsgCycleTime" BO_ 1144 1000; -BA_ "VFrameFormat" BO_ 1144 14; -BA_ "FrameRouting" BO_ 1141 ""; -BA_ "GenMsgSendType" BO_ 1141 0; -BA_ "GenMsgCycleTime" BO_ 1141 500; -BA_ "VFrameFormat" BO_ 1141 14; -BA_ "FrameRouting" BO_ 1140 ""; -BA_ "GenMsgSendType" BO_ 1140 0; -BA_ "GenMsgCycleTime" BO_ 1140 1000; -BA_ "VFrameFormat" BO_ 1140 14; -BA_ "FrameRouting" BO_ 1139 ""; -BA_ "GenMsgCycleTime" BO_ 1139 1500; -BA_ "GenMsgSendType" BO_ 1139 0; -BA_ "VFrameFormat" BO_ 1139 14; -BA_ "FrameRouting" BO_ 1138 ""; -BA_ "GenMsgCycleTime" BO_ 1138 1500; -BA_ "GenMsgSendType" BO_ 1138 0; -BA_ "VFrameFormat" BO_ 1138 14; -BA_ "FrameRouting" BO_ 1089 ""; -BA_ "GenMsgCycleTime" BO_ 1089 1000; -BA_ "GenMsgSendType" BO_ 1089 0; -BA_ "VFrameFormat" BO_ 1089 14; -BA_ "FrameRouting" BO_ 1088 ""; -BA_ "GenMsgCycleTime" BO_ 1088 1000; -BA_ "GenMsgSendType" BO_ 1088 0; -BA_ "VFrameFormat" BO_ 1088 14; -BA_ "FrameRouting" BO_ 1040 ""; -BA_ "GenMsgCycleTime" BO_ 1040 100; -BA_ "GenMsgSendType" BO_ 1040 0; -BA_ "VFrameFormat" BO_ 1040 14; -BA_ "FrameRouting" BO_ 1016 ""; -BA_ "GenMsgCycleTime" BO_ 1016 1000; -BA_ "GenMsgSendType" BO_ 1016 5; -BA_ "VFrameFormat" BO_ 1016 14; -BA_ "FrameRouting" BO_ 1013 ""; -BA_ "GenMsgCycleTime" BO_ 1013 1000; -BA_ "GenMsgSendType" BO_ 1013 5; -BA_ "VFrameFormat" BO_ 1013 14; -BA_ "FrameRouting" BO_ 1012 ""; -BA_ "GenMsgCycleTime" BO_ 1012 1000; -BA_ "GenMsgSendType" BO_ 1012 5; -BA_ "VFrameFormat" BO_ 1012 14; -BA_ "FrameRouting" BO_ 1011 ""; -BA_ "GenMsgCycleTime" BO_ 1011 1000; -BA_ "GenMsgSendType" BO_ 1011 5; -BA_ "VFrameFormat" BO_ 1011 14; -BA_ "FrameRouting" BO_ 871 ""; -BA_ "GenMsgCycleTime" BO_ 871 100; -BA_ "GenMsgSendType" BO_ 871 0; -BA_ "VFrameFormat" BO_ 871 14; -BA_ "FrameRouting" BO_ 786 ""; -BA_ "GenMsgCycleTime" BO_ 786 100; -BA_ "GenMsgSendType" BO_ 786 0; -BA_ "VFrameFormat" BO_ 786 14; -BA_ "FrameRouting" BO_ 72 ""; -BA_ "GenMsgDelayTime" BO_ 72 10; -BA_ "GenMsgCycleTime" BO_ 72 20; -BA_ "GenMsgSendType" BO_ 72 0; -BA_ "VFrameFormat" BO_ 72 14; -BA_ "FrameRouting" BO_ 912 ""; -BA_ "FrameGatewayNetwork" BO_ 912 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 912 912; -BA_ "VFrameFormat" BO_ 912 14; -BA_ "FrameRouting" BO_ 874 ""; -BA_ "FrameGatewayNetwork" BO_ 874 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 874 874; -BA_ "VFrameFormat" BO_ 874 14; -BA_ "FrameRouting" BO_ 651 ""; -BA_ "FrameGatewayNetwork" BO_ 651 "HS4_CAN"; -BA_ "FrameGatewayId" BO_ 651 651; -BA_ "VFrameFormat" BO_ 651 14; -BA_ "FrameRouting" BO_ 529 ""; -BA_ "FrameGatewayNetwork" BO_ 529 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 529 529; -BA_ "VFrameFormat" BO_ 529 14; -BA_ "FrameRouting" BO_ 66 ""; -BA_ "FrameGatewayNetwork" BO_ 66 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 66 66; -BA_ "DiagResponse" BO_ 66 0; -BA_ "VFrameFormat" BO_ 66 14; -BA_ "TpTxIndex" BO_ 2610971864 463488216; -BA_ "FrameRouting" BO_ 2610971864 ""; -BA_ "NetworkInitialization" BO_ 2610971864 0; -BA_ "GenMsgDelayTime" BO_ 2610971864 0; -BA_ "GenMsgSendType" BO_ 2610971864 1; -BA_ "VFrameFormat" BO_ 2610971864 15; -BA_ "TpTxIndex" BO_ 2612002008 464518360; -BA_ "FrameRouting" BO_ 2612002008 ""; -BA_ "NetworkInitialization" BO_ 2612002008 0; -BA_ "GenMsgDelayTime" BO_ 2612002008 0; -BA_ "GenMsgSendType" BO_ 2612002008 1; -BA_ "VFrameFormat" BO_ 2612002008 15; -BA_ "FrameRouting" BO_ 2609923288 ""; -BA_ "NetworkInitialization" BO_ 2609923288 0; -BA_ "GenMsgDelayTime" BO_ 2609923288 0; -BA_ "GenMsgSendType" BO_ 2609923288 1; -BA_ "TpTxIndex" BO_ 2609923288 462439640; -BA_ "VFrameFormat" BO_ 2609923288 15; -BA_ "TpTxIndex" BO_ 2610953432 463469784; -BA_ "FrameRouting" BO_ 2610953432 ""; -BA_ "NetworkInitialization" BO_ 2610953432 0; -BA_ "GenMsgDelayTime" BO_ 2610953432 0; -BA_ "GenMsgSendType" BO_ 2610953432 1; -BA_ "VFrameFormat" BO_ 2610953432 15; -BA_ "FrameRouting" BO_ 2022 ""; -BA_ "GenMsgILSupport" BO_ 2022 0; -BA_ "DiagRequest" BO_ 2022 1; -BA_ "GenMsgSendType" BO_ 2022 1; -BA_ "GenMsgDelayTime" BO_ 2022 0; -BA_ "VFrameFormat" BO_ 2022 14; -BA_ "FrameRouting" BO_ 1124 ""; -BA_ "FrameGatewayId" BO_ 1124 1124; -BA_ "FrameGatewayNetwork" BO_ 1124 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1124 14; -BA_ "FrameRouting" BO_ 1119 ""; -BA_ "FrameGatewayId" BO_ 1119 1119; -BA_ "FrameGatewayNetwork" BO_ 1119 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1119 14; -BA_ "FrameRouting" BO_ 132 ""; -BA_ "FrameGatewayNetwork" BO_ 132 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 132 132; -BA_ "VFrameFormat" BO_ 132 14; -BA_ "FrameRouting" BO_ 1990 ""; -BA_ "NetworkInitialization" BO_ 1990 0; -BA_ "GenMsgDelayTime" BO_ 1990 0; -BA_ "GenMsgSendType" BO_ 1990 1; -BA_ "DiagRequest" BO_ 1990 1; -BA_ "GenMsgILSupport" BO_ 1990 0; -BA_ "VFrameFormat" BO_ 1990 14; -BA_ "FrameRouting" BO_ 1892 ""; -BA_ "NetworkInitialization" BO_ 1892 0; -BA_ "GenMsgDelayTime" BO_ 1892 0; -BA_ "GenMsgSendType" BO_ 1892 1; -BA_ "DiagRequest" BO_ 1892 1; -BA_ "GenMsgILSupport" BO_ 1892 0; -BA_ "VFrameFormat" BO_ 1892 14; -BA_ "FrameRouting" BO_ 1798 ""; -BA_ "NetworkInitialization" BO_ 1798 0; -BA_ "GenMsgDelayTime" BO_ 1798 0; -BA_ "GenMsgSendType" BO_ 1798 1; -BA_ "DiagRequest" BO_ 1798 1; -BA_ "GenMsgILSupport" BO_ 1798 0; -BA_ "VFrameFormat" BO_ 1798 14; -BA_ "FrameRouting" BO_ 1123 ""; -BA_ "FrameGatewayNetwork" BO_ 1123 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 1123 1123; -BA_ "VFrameFormat" BO_ 1123 14; -BA_ "FrameRouting" BO_ 1122 ""; -BA_ "FrameGatewayNetwork" BO_ 1122 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 1122 1122; -BA_ "VFrameFormat" BO_ 1122 14; -BA_ "FrameRouting" BO_ 1003 ""; -BA_ "FrameGatewayNetwork" BO_ 1003 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 1003 1003; -BA_ "VFrameFormat" BO_ 1003 14; -BA_ "FrameRouting" BO_ 994 ""; -BA_ "FrameGatewayNetwork" BO_ 994 "HS3_CAN"; -BA_ "FrameGatewayId" BO_ 994 994; -BA_ "VFrameFormat" BO_ 994 14; -BA_ "FrameRouting" BO_ 778 ""; -BA_ "FrameGatewayId" BO_ 778 778; -BA_ "FrameGatewayNetwork" BO_ 778 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 778 14; -BA_ "FrameRouting" BO_ 549 ""; -BA_ "FrameGatewayId" BO_ 549 549; -BA_ "FrameGatewayNetwork" BO_ 549 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 549 14; -BA_ "FrameRouting" BO_ 551 ""; -BA_ "FrameGatewayId" BO_ 551 551; -BA_ "FrameGatewayNetwork" BO_ 551 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 551 14; -BA_ "FrameRouting" BO_ 1010 ""; -BA_ "GenMsgCycleTime" BO_ 1010 50; -BA_ "GenMsgSendType" BO_ 1010 0; -BA_ "VFrameFormat" BO_ 1010 14; -BA_ "FrameRouting" BO_ 1070 ""; -BA_ "FrameGatewayNetwork" BO_ 1070 "HS1_CAN"; -BA_ "FrameGatewayId" BO_ 1070 1070; -BA_ "VFrameFormat" BO_ 1070 14; -BA_ "FrameRouting" BO_ 1186 ""; -BA_ "GenMsgSendType" BO_ 1186 0; -BA_ "GenMsgCycleTime" BO_ 1186 100; -BA_ "VFrameFormat" BO_ 1186 14; -BA_ "FrameRouting" BO_ 611 ""; -BA_ "GenMsgSendType" BO_ 611 0; -BA_ "GenMsgCycleTime" BO_ 611 100; -BA_ "VFrameFormat" BO_ 611 14; -BA_ "FrameRouting" BO_ 1461 ""; -BA_ "GenMsgILSupport" BO_ 1461 0; -BA_ "NmAsrMessage" BO_ 1461 1; -BA_ "GenMsgSendType" BO_ 1461 0; -BA_ "GenMsgCycleTime" BO_ 1461 1000; -BA_ "NetworkInitialization" BO_ 1461 0; -BA_ "VFrameFormat" BO_ 1461 14; -BA_ "FrameRouting" BO_ 1047 ""; -BA_ "GenMsgSendType" BO_ 1047 5; -BA_ "GenMsgCycleTime" BO_ 1047 1000; -BA_ "VFrameFormat" BO_ 1047 14; -BA_ "FrameRouting" BO_ 972 ""; -BA_ "GenMsgSendType" BO_ 972 0; -BA_ "GenMsgCycleTime" BO_ 972 30; -BA_ "GenMsgDelayTime" BO_ 972 10; -BA_ "VFrameFormat" BO_ 972 14; -BA_ "FrameRouting" BO_ 130 ""; -BA_ "GenMsgSendType" BO_ 130 0; -BA_ "GenMsgCycleTime" BO_ 130 20; -BA_ "GenMsgDelayTime" BO_ 130 10; -BA_ "VFrameFormat" BO_ 130 14; -BA_ "FrameRouting" BO_ 126 ""; -BA_ "GenMsgSendType" BO_ 126 0; -BA_ "GenMsgCycleTime" BO_ 126 10; -BA_ "GenMsgDelayTime" BO_ 126 0; -BA_ "VFrameFormat" BO_ 126 14; -BA_ "FrameRouting" BO_ 133 ""; -BA_ "GenMsgSendType" BO_ 133 0; -BA_ "GenMsgCycleTime" BO_ 133 10; -BA_ "GenMsgDelayTime" BO_ 133 0; -BA_ "VFrameFormat" BO_ 133 14; -BA_ "FrameRouting" BO_ 1430 ""; -BA_ "GenMsgILSupport" BO_ 1430 0; -BA_ "NmAsrMessage" BO_ 1430 1; -BA_ "GenMsgSendType" BO_ 1430 0; -BA_ "GenMsgCycleTime" BO_ 1430 1000; -BA_ "NetworkInitialization" BO_ 1430 0; -BA_ "VFrameFormat" BO_ 1430 14; -BA_ "FrameRouting" BO_ 1200 ""; -BA_ "GenMsgSendType" BO_ 1200 0; -BA_ "GenMsgCycleTime" BO_ 1200 20; -BA_ "GenMsgDelayTime" BO_ 1200 10; -BA_ "VFrameFormat" BO_ 1200 14; -BA_ "FrameRouting" BO_ 1102 ""; -BA_ "GenMsgSendType" BO_ 1102 5; -BA_ "GenMsgCycleTime" BO_ 1102 100000; -BA_ "GenMsgStartDelayTime" BO_ 1102 1130; -BA_ "VFrameFormat" BO_ 1102 14; -BA_ "FrameRouting" BO_ 1056 ""; -BA_ "GenMsgSendType" BO_ 1056 5; -BA_ "GenMsgCycleTime" BO_ 1056 1000; -BA_ "VFrameFormat" BO_ 1056 14; -BA_ "FrameRouting" BO_ 1054 ""; -BA_ "GenMsgSendType" BO_ 1054 5; -BA_ "GenMsgCycleTime" BO_ 1054 1000; -BA_ "VFrameFormat" BO_ 1054 14; -BA_ "FrameRouting" BO_ 1046 ""; -BA_ "GenMsgSendType" BO_ 1046 0; -BA_ "GenMsgCycleTime" BO_ 1046 100; -BA_ "VFrameFormat" BO_ 1046 14; -BA_ "FrameRouting" BO_ 1045 ""; -BA_ "GenMsgSendType" BO_ 1045 0; -BA_ "GenMsgCycleTime" BO_ 1045 20; -BA_ "GenMsgDelayTime" BO_ 1045 10; -BA_ "VFrameFormat" BO_ 1045 14; -BA_ "FrameRouting" BO_ 1044 ""; -BA_ "GenMsgSendType" BO_ 1044 0; -BA_ "GenMsgCycleTime" BO_ 1044 100; -BA_ "VFrameFormat" BO_ 1044 14; -BA_ "FrameRouting" BO_ 1042 ""; -BA_ "GenMsgSendType" BO_ 1042 0; -BA_ "GenMsgCycleTime" BO_ 1042 50; -BA_ "VFrameFormat" BO_ 1042 14; -BA_ "FrameRouting" BO_ 535 ""; -BA_ "GenMsgSendType" BO_ 535 0; -BA_ "GenMsgCycleTime" BO_ 535 10; -BA_ "GenMsgDelayTime" BO_ 535 0; -BA_ "VFrameFormat" BO_ 535 14; -BA_ "FrameRouting" BO_ 534 ""; -BA_ "GenMsgSendType" BO_ 534 0; -BA_ "GenMsgCycleTime" BO_ 534 20; -BA_ "GenMsgDelayTime" BO_ 534 10; -BA_ "VFrameFormat" BO_ 534 14; -BA_ "FrameRouting" BO_ 532 ""; -BA_ "GenMsgSendType" BO_ 532 0; -BA_ "GenMsgCycleTime" BO_ 532 20; -BA_ "GenMsgDelayTime" BO_ 532 10; -BA_ "VFrameFormat" BO_ 532 14; -BA_ "FrameRouting" BO_ 531 ""; -BA_ "GenMsgSendType" BO_ 531 0; -BA_ "GenMsgCycleTime" BO_ 531 20; -BA_ "GenMsgDelayTime" BO_ 531 10; -BA_ "VFrameFormat" BO_ 531 14; -BA_ "FrameRouting" BO_ 136 ""; -BA_ "GenMsgSendType" BO_ 136 0; -BA_ "GenMsgCycleTime" BO_ 136 10; -BA_ "GenMsgDelayTime" BO_ 136 0; -BA_ "VFrameFormat" BO_ 136 14; -BA_ "FrameRouting" BO_ 125 ""; -BA_ "GenMsgSendType" BO_ 125 0; -BA_ "GenMsgCycleTime" BO_ 125 20; -BA_ "GenMsgDelayTime" BO_ 125 10; -BA_ "VFrameFormat" BO_ 125 14; -BA_ "FrameRouting" BO_ 119 ""; -BA_ "GenMsgSendType" BO_ 119 0; -BA_ "GenMsgCycleTime" BO_ 119 20; -BA_ "GenMsgDelayTime" BO_ 119 10; -BA_ "VFrameFormat" BO_ 119 14; -BA_ "FrameRouting" BO_ 118 ""; -BA_ "GenMsgSendType" BO_ 118 5; -BA_ "GenMsgCycleTime" BO_ 118 500; -BA_ "VFrameFormat" BO_ 118 14; -BA_ "FrameRouting" BO_ 73 ""; -BA_ "GenMsgSendType" BO_ 73 0; -BA_ "GenMsgCycleTime" BO_ 73 20; -BA_ "GenMsgDelayTime" BO_ 73 10; -BA_ "VFrameFormat" BO_ 73 14; -BA_ "FrameRouting" BO_ 1034 ""; -BA_ "FrameGatewayId" BO_ 1034 1034; -BA_ "FrameGatewayNetwork" BO_ 1034 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1034 14; -BA_ "FrameRouting" BO_ 1440 ""; -BA_ "GenMsgILSupport" BO_ 1440 0; -BA_ "NmAsrMessage" BO_ 1440 1; -BA_ "GenMsgSendType" BO_ 1440 0; -BA_ "GenMsgCycleTime" BO_ 1440 1000; -BA_ "NetworkInitialization" BO_ 1440 0; -BA_ "VFrameFormat" BO_ 1440 14; -BA_ "FrameRouting" BO_ 561 ""; -BA_ "GenMsgSendType" BO_ 561 0; -BA_ "GenMsgCycleTime" BO_ 561 100; -BA_ "VFrameFormat" BO_ 561 14; -BA_ "FrameRouting" BO_ 330 ""; -BA_ "GenMsgSendType" BO_ 330 0; -BA_ "GenMsgCycleTime" BO_ 330 10; -BA_ "GenMsgDelayTime" BO_ 330 0; -BA_ "VFrameFormat" BO_ 330 14; -BA_ "FrameRouting" BO_ 1090 ""; -BA_ "GenMsgSendType" BO_ 1090 0; -BA_ "GenMsgCycleTime" BO_ 1090 1000; -BA_ "VFrameFormat" BO_ 1090 14; -BA_ "FrameRouting" BO_ 870 ""; -BA_ "GenMsgSendType" BO_ 870 0; -BA_ "GenMsgCycleTime" BO_ 870 100; -BA_ "VFrameFormat" BO_ 870 14; -BA_ "FrameRouting" BO_ 869 ""; -BA_ "GenMsgSendType" BO_ 869 0; -BA_ "GenMsgCycleTime" BO_ 869 100; -BA_ "VFrameFormat" BO_ 869 14; -BA_ "FrameRouting" BO_ 606 ""; -BA_ "GenMsgSendType" BO_ 606 5; -BA_ "GenMsgCycleTime" BO_ 606 1000; -BA_ "VFrameFormat" BO_ 606 14; -BA_ "FrameRouting" BO_ 374 ""; -BA_ "GenMsgSendType" BO_ 374 5; -BA_ "GenMsgCycleTime" BO_ 374 100; -BA_ "VFrameFormat" BO_ 374 14; -BA_ "FrameRouting" BO_ 603 ""; -BA_ "GenMsgSendType" BO_ 603 0; -BA_ "GenMsgCycleTime" BO_ 603 20; -BA_ "GenMsgDelayTime" BO_ 603 10; -BA_ "VFrameFormat" BO_ 603 14; -BA_ "FrameRouting" BO_ 602 ""; -BA_ "GenMsgSendType" BO_ 602 0; -BA_ "GenMsgCycleTime" BO_ 602 100; -BA_ "VFrameFormat" BO_ 602 14; -BA_ "FrameRouting" BO_ 1152 ""; -BA_ "GenMsgSendType" BO_ 1152 5; -BA_ "GenMsgCycleTime" BO_ 1152 1000; -BA_ "VFrameFormat" BO_ 1152 14; -BA_ "FrameRouting" BO_ 872 ""; -BA_ "GenMsgSendType" BO_ 872 0; -BA_ "GenMsgCycleTime" BO_ 872 100; -BA_ "VFrameFormat" BO_ 872 14; -BA_ "FrameRouting" BO_ 560 ""; -BA_ "GenMsgSendType" BO_ 560 0; -BA_ "GenMsgCycleTime" BO_ 560 20; -BA_ "GenMsgDelayTime" BO_ 560 10; -BA_ "VFrameFormat" BO_ 560 14; -BA_ "FrameRouting" BO_ 369 ""; -BA_ "GenMsgSendType" BO_ 369 0; -BA_ "GenMsgCycleTime" BO_ 369 30; -BA_ "GenMsgDelayTime" BO_ 369 10; -BA_ "VFrameFormat" BO_ 369 14; -BA_ "FrameRouting" BO_ 92 ""; -BA_ "GenMsgSendType" BO_ 92 5; -BA_ "GenMsgCycleTime" BO_ 92 100; -BA_ "VFrameFormat" BO_ 92 14; -BA_ "FrameRouting" BO_ 2030 ""; -BA_ "GenMsgILSupport" BO_ 2030 0; -BA_ "DiagResponse" BO_ 2030 1; -BA_ "GenMsgSendType" BO_ 2030 1; -BA_ "GenMsgDelayTime" BO_ 2030 0; -BA_ "NetworkInitialization" BO_ 2030 0; -BA_ "VFrameFormat" BO_ 2030 14; -BA_ "FrameRouting" BO_ 1087 ""; -BA_ "GenMsgSendType" BO_ 1087 0; -BA_ "GenMsgCycleTime" BO_ 1087 100; -BA_ "VFrameFormat" BO_ 1087 14; -BA_ "FrameRouting" BO_ 332 ""; -BA_ "GenMsgSendType" BO_ 332 0; -BA_ "GenMsgCycleTime" BO_ 332 200; -BA_ "VFrameFormat" BO_ 332 14; -BA_ "FrameRouting" BO_ 1896 ""; -BA_ "GenMsgILSupport" BO_ 1896 0; -BA_ "DiagResponse" BO_ 1896 1; -BA_ "GenMsgSendType" BO_ 1896 1; -BA_ "GenMsgDelayTime" BO_ 1896 0; -BA_ "NetworkInitialization" BO_ 1896 0; -BA_ "VFrameFormat" BO_ 1896 14; -BA_ "FrameRouting" BO_ 1889 ""; -BA_ "GenMsgILSupport" BO_ 1889 0; -BA_ "DiagRequest" BO_ 1889 1; -BA_ "GenMsgSendType" BO_ 1889 1; -BA_ "GenMsgDelayTime" BO_ 1889 0; -BA_ "NetworkInitialization" BO_ 1889 0; -BA_ "VFrameFormat" BO_ 1889 14; -BA_ "FrameRouting" BO_ 1888 ""; -BA_ "GenMsgILSupport" BO_ 1888 0; -BA_ "DiagRequest" BO_ 1888 1; -BA_ "GenMsgSendType" BO_ 1888 1; -BA_ "GenMsgDelayTime" BO_ 1888 0; -BA_ "NetworkInitialization" BO_ 1888 0; -BA_ "VFrameFormat" BO_ 1888 14; -BA_ "FrameRouting" BO_ 1848 ""; -BA_ "GenMsgILSupport" BO_ 1848 0; -BA_ "DiagResponse" BO_ 1848 1; -BA_ "GenMsgSendType" BO_ 1848 1; -BA_ "GenMsgDelayTime" BO_ 1848 0; -BA_ "NetworkInitialization" BO_ 1848 0; -BA_ "VFrameFormat" BO_ 1848 14; -BA_ "FrameRouting" BO_ 1840 ""; -BA_ "GenMsgILSupport" BO_ 1840 0; -BA_ "DiagRequest" BO_ 1840 1; -BA_ "GenMsgSendType" BO_ 1840 1; -BA_ "GenMsgDelayTime" BO_ 1840 0; -BA_ "NetworkInitialization" BO_ 1840 0; -BA_ "VFrameFormat" BO_ 1840 14; -BA_ "FrameRouting" BO_ 1713 ""; -BA_ "GenMsgILSupport" BO_ 1713 0; -BA_ "TpApplType" BO_ 1713 "DiagUUDTResponse"; -BA_ "GenMsgSendType" BO_ 1713 1; -BA_ "NetworkInitialization" BO_ 1713 0; -BA_ "VFrameFormat" BO_ 1713 14; -BA_ "FrameRouting" BO_ 1712 ""; -BA_ "GenMsgILSupport" BO_ 1712 0; -BA_ "TpApplType" BO_ 1712 "DiagUUDTResponse"; -BA_ "GenMsgSendType" BO_ 1712 1; -BA_ "NetworkInitialization" BO_ 1712 0; -BA_ "VFrameFormat" BO_ 1712 14; -BA_ "FrameRouting" BO_ 2025 ""; -BA_ "GenMsgILSupport" BO_ 2025 0; -BA_ "DiagResponse" BO_ 2025 1; -BA_ "GenMsgSendType" BO_ 2025 1; -BA_ "GenMsgDelayTime" BO_ 2025 0; -BA_ "NetworkInitialization" BO_ 2025 0; -BA_ "VFrameFormat" BO_ 2025 14; -BA_ "FrameRouting" BO_ 2024 ""; -BA_ "GenMsgILSupport" BO_ 2024 0; -BA_ "DiagResponse" BO_ 2024 1; -BA_ "GenMsgSendType" BO_ 2024 1; -BA_ "GenMsgDelayTime" BO_ 2024 0; -BA_ "NetworkInitialization" BO_ 2024 0; -BA_ "VFrameFormat" BO_ 2024 14; -BA_ "FrameRouting" BO_ 2017 ""; -BA_ "GenMsgILSupport" BO_ 2017 0; -BA_ "DiagRequest" BO_ 2017 1; -BA_ "GenMsgSendType" BO_ 2017 1; -BA_ "GenMsgDelayTime" BO_ 2017 0; -BA_ "NetworkInitialization" BO_ 2017 0; -BA_ "VFrameFormat" BO_ 2017 14; -BA_ "FrameRouting" BO_ 2016 ""; -BA_ "GenMsgILSupport" BO_ 2016 0; -BA_ "DiagRequest" BO_ 2016 1; -BA_ "GenMsgSendType" BO_ 2016 1; -BA_ "GenMsgDelayTime" BO_ 2016 0; -BA_ "NetworkInitialization" BO_ 2016 0; -BA_ "VFrameFormat" BO_ 2016 14; -BA_ "FrameRouting" BO_ 2015 ""; -BA_ "GenMsgILSupport" BO_ 2015 0; -BA_ "DiagState" BO_ 2015 1; -BA_ "GenMsgSendType" BO_ 2015 1; -BA_ "GenMsgDelayTime" BO_ 2015 0; -BA_ "NetworkInitialization" BO_ 2015 0; -BA_ "VFrameFormat" BO_ 2015 14; -BA_ "FrameRouting" BO_ 1897 ""; -BA_ "GenMsgILSupport" BO_ 1897 0; -BA_ "DiagResponse" BO_ 1897 1; -BA_ "GenMsgSendType" BO_ 1897 1; -BA_ "GenMsgDelayTime" BO_ 1897 0; -BA_ "NetworkInitialization" BO_ 1897 0; -BA_ "VFrameFormat" BO_ 1897 14; -BA_ "FrameRouting" BO_ 1814 ""; -BA_ "GenMsgILSupport" BO_ 1814 0; -BA_ "DiagRequest" BO_ 1814 1; -BA_ "GenMsgSendType" BO_ 1814 1; -BA_ "GenMsgDelayTime" BO_ 1814 0; -BA_ "NetworkInitialization" BO_ 1814 0; -BA_ "VFrameFormat" BO_ 1814 14; -BA_ "FrameRouting" BO_ 1701 ""; -BA_ "GenMsgILSupport" BO_ 1701 0; -BA_ "TpApplType" BO_ 1701 "DiagUUDTResponse"; -BA_ "GenMsgSendType" BO_ 1701 1; -BA_ "NetworkInitialization" BO_ 1701 0; -BA_ "VFrameFormat" BO_ 1701 14; -BA_ "FrameRouting" BO_ 1700 ""; -BA_ "GenMsgILSupport" BO_ 1700 0; -BA_ "TpApplType" BO_ 1700 "DiagUUDTResponse"; -BA_ "GenMsgSendType" BO_ 1700 1; -BA_ "NetworkInitialization" BO_ 1700 0; -BA_ "VFrameFormat" BO_ 1700 14; -BA_ "FrameRouting" BO_ 1697 ""; -BA_ "GenMsgILSupport" BO_ 1697 0; -BA_ "TpApplType" BO_ 1697 "DiagUUDTResponse"; -BA_ "GenMsgSendType" BO_ 1697 1; -BA_ "NetworkInitialization" BO_ 1697 0; -BA_ "VFrameFormat" BO_ 1697 14; -BA_ "FrameRouting" BO_ 1696 ""; -BA_ "GenMsgILSupport" BO_ 1696 0; -BA_ "TpApplType" BO_ 1696 "DiagUUDTResponse"; -BA_ "GenMsgSendType" BO_ 1696 1; -BA_ "NetworkInitialization" BO_ 1696 0; -BA_ "VFrameFormat" BO_ 1696 14; -BA_ "FrameRouting" BO_ 1429 ""; -BA_ "GenMsgILSupport" BO_ 1429 0; -BA_ "NmAsrMessage" BO_ 1429 1; -BA_ "GenMsgSendType" BO_ 1429 0; -BA_ "GenMsgCycleTime" BO_ 1429 1000; -BA_ "NetworkInitialization" BO_ 1429 0; -BA_ "VFrameFormat" BO_ 1429 14; -BA_ "FrameRouting" BO_ 1100 ""; -BA_ "GenMsgSendType" BO_ 1100 0; -BA_ "GenMsgCycleTime" BO_ 1100 100; -BA_ "VFrameFormat" BO_ 1100 14; -BA_ "FrameRouting" BO_ 1098 ""; -BA_ "GenMsgSendType" BO_ 1098 5; -BA_ "GenMsgCycleTime" BO_ 1098 500; -BA_ "VFrameFormat" BO_ 1098 14; -BA_ "FrameRouting" BO_ 1086 ""; -BA_ "GenMsgSendType" BO_ 1086 0; -BA_ "GenMsgCycleTime" BO_ 1086 100; -BA_ "VFrameFormat" BO_ 1086 14; -BA_ "FrameRouting" BO_ 1071 ""; -BA_ "GenMsgSendType" BO_ 1071 0; -BA_ "GenMsgCycleTime" BO_ 1071 100; -BA_ "VFrameFormat" BO_ 1071 14; -BA_ "FrameRouting" BO_ 1069 ""; -BA_ "GenMsgSendType" BO_ 1069 0; -BA_ "GenMsgCycleTime" BO_ 1069 100; -BA_ "VFrameFormat" BO_ 1069 14; -BA_ "FrameRouting" BO_ 1060 ""; -BA_ "GenMsgSendType" BO_ 1060 0; -BA_ "GenMsgCycleTime" BO_ 1060 100; -BA_ "VFrameFormat" BO_ 1060 14; -BA_ "FrameRouting" BO_ 1057 ""; -BA_ "GenMsgSendType" BO_ 1057 0; -BA_ "GenMsgCycleTime" BO_ 1057 100; -BA_ "VFrameFormat" BO_ 1057 14; -BA_ "FrameRouting" BO_ 1055 ""; -BA_ "GenMsgSendType" BO_ 1055 0; -BA_ "GenMsgCycleTime" BO_ 1055 100; -BA_ "VFrameFormat" BO_ 1055 14; -BA_ "FrameRouting" BO_ 562 ""; -BA_ "GenMsgSendType" BO_ 562 0; -BA_ "GenMsgCycleTime" BO_ 562 100; -BA_ "VFrameFormat" BO_ 562 14; -BA_ "FrameRouting" BO_ 523 ""; -BA_ "GenMsgSendType" BO_ 523 0; -BA_ "GenMsgCycleTime" BO_ 523 1000; -BA_ "VFrameFormat" BO_ 523 14; -BA_ "FrameRouting" BO_ 517 ""; -BA_ "GenMsgSendType" BO_ 517 0; -BA_ "GenMsgCycleTime" BO_ 517 20; -BA_ "GenMsgDelayTime" BO_ 517 10; -BA_ "VFrameFormat" BO_ 517 14; -BA_ "FrameRouting" BO_ 516 ""; -BA_ "GenMsgSendType" BO_ 516 0; -BA_ "GenMsgCycleTime" BO_ 516 10; -BA_ "GenMsgDelayTime" BO_ 516 0; -BA_ "VFrameFormat" BO_ 516 14; -BA_ "FrameRouting" BO_ 514 ""; -BA_ "GenMsgSendType" BO_ 514 0; -BA_ "GenMsgCycleTime" BO_ 514 20; -BA_ "GenMsgDelayTime" BO_ 514 10; -BA_ "VFrameFormat" BO_ 514 14; -BA_ "FrameRouting" BO_ 512 ""; -BA_ "GenMsgSendType" BO_ 512 0; -BA_ "GenMsgCycleTime" BO_ 512 20; -BA_ "GenMsgDelayTime" BO_ 512 10; -BA_ "VFrameFormat" BO_ 512 14; -BA_ "FrameRouting" BO_ 381 ""; -BA_ "GenMsgSendType" BO_ 381 0; -BA_ "GenMsgCycleTime" BO_ 381 100; -BA_ "VFrameFormat" BO_ 381 14; -BA_ "FrameRouting" BO_ 380 ""; -BA_ "GenMsgSendType" BO_ 380 0; -BA_ "GenMsgCycleTime" BO_ 380 100; -BA_ "VFrameFormat" BO_ 380 14; -BA_ "FrameRouting" BO_ 377 ""; -BA_ "GenMsgSendType" BO_ 377 0; -BA_ "GenMsgCycleTime" BO_ 377 100; -BA_ "VFrameFormat" BO_ 377 14; -BA_ "FrameRouting" BO_ 376 ""; -BA_ "GenMsgSendType" BO_ 376 0; -BA_ "GenMsgCycleTime" BO_ 376 100; -BA_ "VFrameFormat" BO_ 376 14; -BA_ "FrameRouting" BO_ 373 ""; -BA_ "GenMsgSendType" BO_ 373 0; -BA_ "GenMsgCycleTime" BO_ 373 20; -BA_ "GenMsgDelayTime" BO_ 373 10; -BA_ "VFrameFormat" BO_ 373 14; -BA_ "FrameRouting" BO_ 359 ""; -BA_ "GenMsgSendType" BO_ 359 0; -BA_ "GenMsgCycleTime" BO_ 359 10; -BA_ "GenMsgDelayTime" BO_ 359 0; -BA_ "VFrameFormat" BO_ 359 14; -BA_ "FrameRouting" BO_ 358 ""; -BA_ "GenMsgSendType" BO_ 358 0; -BA_ "GenMsgCycleTime" BO_ 358 100; -BA_ "VFrameFormat" BO_ 358 14; -BA_ "FrameRouting" BO_ 357 ""; -BA_ "GenMsgSendType" BO_ 357 0; -BA_ "GenMsgCycleTime" BO_ 357 20; -BA_ "GenMsgDelayTime" BO_ 357 10; -BA_ "VFrameFormat" BO_ 357 14; -BA_ "FrameRouting" BO_ 355 ""; -BA_ "GenMsgSendType" BO_ 355 0; -BA_ "GenMsgCycleTime" BO_ 355 100; -BA_ "VFrameFormat" BO_ 355 14; -BA_ "FrameRouting" BO_ 342 ""; -BA_ "GenMsgSendType" BO_ 342 0; -BA_ "GenMsgCycleTime" BO_ 342 100; -BA_ "VFrameFormat" BO_ 342 14; -BA_ "FrameRouting" BO_ 71 ""; -BA_ "GenMsgSendType" BO_ 71 0; -BA_ "GenMsgCycleTime" BO_ 71 20; -BA_ "GenMsgDelayTime" BO_ 71 10; -BA_ "VFrameFormat" BO_ 71 14; -BA_ "FrameRouting" BO_ 1822 ""; -BA_ "GenMsgILSupport" BO_ 1822 0; -BA_ "DiagResponse" BO_ 1822 1; -BA_ "GenMsgSendType" BO_ 1822 1; -BA_ "GenMsgDelayTime" BO_ 1822 0; -BA_ "NetworkInitialization" BO_ 1822 0; -BA_ "VFrameFormat" BO_ 1822 14; -BA_ "FrameRouting" BO_ 1438 ""; -BA_ "GenMsgILSupport" BO_ 1438 0; -BA_ "NmAsrMessage" BO_ 1438 1; -BA_ "GenMsgSendType" BO_ 1438 0; -BA_ "GenMsgCycleTime" BO_ 1438 1000; -BA_ "NetworkInitialization" BO_ 1438 0; -BA_ "VFrameFormat" BO_ 1438 14; -BA_ "FrameRouting" BO_ 954 ""; -BA_ "FrameGatewayId" BO_ 954 954; -BA_ "FrameGatewayNetwork" BO_ 954 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 954 14; -BA_ "FrameRouting" BO_ 1006 ""; -BA_ "GenMsgSendType" BO_ 1006 5; -BA_ "GenMsgCycleTime" BO_ 1006 1000; -BA_ "VFrameFormat" BO_ 1006 14; -BA_ "FrameRouting" BO_ 820 ""; -BA_ "FrameGatewayNetwork" BO_ 820 "HS2_CAN"; -BA_ "FrameGatewayId" BO_ 820 820; -BA_ "VFrameFormat" BO_ 820 14; -BA_ "FrameRouting" BO_ 137 ""; -BA_ "FrameGatewayId" BO_ 137 137; -BA_ "FrameGatewayNetwork" BO_ 137 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 137 14; -BA_ "FrameRouting" BO_ 129 ""; -BA_ "FrameGatewayId" BO_ 129 129; -BA_ "FrameGatewayNetwork" BO_ 129 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 129 14; -BA_ "FrameRouting" BO_ 935 ""; -BA_ "GenMsgSendType" BO_ 935 5; -BA_ "GenMsgCycleTime" BO_ 935 200; -BA_ "VFrameFormat" BO_ 935 14; -BA_ "FrameRouting" BO_ 1108 ""; -BA_ "FrameGatewayId" BO_ 1108 1108; -BA_ "FrameGatewayNetwork" BO_ 1108 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 1108 14; -BA_ "FrameRouting" BO_ 261 ""; -BA_ "FrameGatewayId" BO_ 261 261; -BA_ "FrameGatewayNetwork" BO_ 261 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 261 14; -BA_ "FrameRouting" BO_ 1146 ""; -BA_ "FrameGatewayId" BO_ 1146 1146; -BA_ "FrameGatewayNetwork" BO_ 1146 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1146 14; -BA_ "FrameRouting" BO_ 533 ""; -BA_ "FrameGatewayId" BO_ 533 533; -BA_ "FrameGatewayNetwork" BO_ 533 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 533 14; -BA_ "FrameRouting" BO_ 1041 ""; -BA_ "FrameGatewayId" BO_ 1041 1041; -BA_ "FrameGatewayNetwork" BO_ 1041 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1041 14; -BA_ "FrameRouting" BO_ 1067 ""; -BA_ "FrameGatewayId" BO_ 1067 1067; -BA_ "FrameGatewayNetwork" BO_ 1067 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1067 14; -BA_ "FrameRouting" BO_ 1112 ""; -BA_ "FrameGatewayId" BO_ 1112 1112; -BA_ "FrameGatewayNetwork" BO_ 1112 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1112 14; -BA_ "FrameRouting" BO_ 139 ""; -BA_ "FrameGatewayId" BO_ 139 139; -BA_ "FrameGatewayNetwork" BO_ 139 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 139 14; -BA_ "FrameRouting" BO_ 1121 ""; -BA_ "FrameGatewayId" BO_ 1121 1121; -BA_ "FrameGatewayNetwork" BO_ 1121 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 1121 14; -BA_ "FrameRouting" BO_ 1120 ""; -BA_ "FrameGatewayId" BO_ 1120 1120; -BA_ "FrameGatewayNetwork" BO_ 1120 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 1120 14; -BA_ "FrameRouting" BO_ 1050 ""; -BA_ "FrameGatewayId" BO_ 1050 1050; -BA_ "FrameGatewayNetwork" BO_ 1050 "MS1_CAN"; -BA_ "VFrameFormat" BO_ 1050 14; -BA_ "FrameRouting" BO_ 1137 ""; -BA_ "GenMsgSendType" BO_ 1137 0; -BA_ "GenMsgCycleTime" BO_ 1137 1000; -BA_ "VFrameFormat" BO_ 1137 14; -BA_ "FrameRouting" BO_ 1255 ""; -BA_ "GenMsgSendType" BO_ 1255 0; -BA_ "GenMsgCycleTime" BO_ 1255 1000; -BA_ "VFrameFormat" BO_ 1255 14; -BA_ "FrameRouting" BO_ 1254 ""; -BA_ "GenMsgSendType" BO_ 1254 0; -BA_ "GenMsgCycleTime" BO_ 1254 1000; -BA_ "VFrameFormat" BO_ 1254 14; -BA_ "FrameRouting" BO_ 1253 ""; -BA_ "GenMsgSendType" BO_ 1253 0; -BA_ "GenMsgCycleTime" BO_ 1253 1000; -BA_ "VFrameFormat" BO_ 1253 14; -BA_ "FrameRouting" BO_ 1252 ""; -BA_ "GenMsgSendType" BO_ 1252 0; -BA_ "GenMsgCycleTime" BO_ 1252 1000; -BA_ "VFrameFormat" BO_ 1252 14; -BA_ "FrameRouting" BO_ 1251 ""; -BA_ "GenMsgSendType" BO_ 1251 0; -BA_ "GenMsgCycleTime" BO_ 1251 1000; -BA_ "VFrameFormat" BO_ 1251 14; -BA_ "FrameRouting" BO_ 1250 ""; -BA_ "GenMsgSendType" BO_ 1250 0; -BA_ "GenMsgCycleTime" BO_ 1250 1000; -BA_ "VFrameFormat" BO_ 1250 14; -BA_ "FrameRouting" BO_ 1249 ""; -BA_ "GenMsgSendType" BO_ 1249 0; -BA_ "GenMsgCycleTime" BO_ 1249 1000; -BA_ "VFrameFormat" BO_ 1249 14; -BA_ "FrameRouting" BO_ 1248 ""; -BA_ "GenMsgSendType" BO_ 1248 0; -BA_ "GenMsgCycleTime" BO_ 1248 1000; -BA_ "VFrameFormat" BO_ 1248 14; -BA_ "FrameRouting" BO_ 1113 ""; -BA_ "GenMsgSendType" BO_ 1113 0; -BA_ "GenMsgCycleTime" BO_ 1113 50; -BA_ "VFrameFormat" BO_ 1113 14; -BA_ "FrameRouting" BO_ 1105 ""; -BA_ "GenMsgSendType" BO_ 1105 5; -BA_ "GenMsgCycleTime" BO_ 1105 1000; -BA_ "VFrameFormat" BO_ 1105 14; -BA_ "FrameRouting" BO_ 938 ""; -BA_ "GenMsgSendType" BO_ 938 5; -BA_ "GenMsgCycleTime" BO_ 938 200; -BA_ "VFrameFormat" BO_ 938 14; -BA_ "FrameRouting" BO_ 939 ""; -BA_ "GenMsgSendType" BO_ 939 5; -BA_ "GenMsgCycleTime" BO_ 939 200; -BA_ "VFrameFormat" BO_ 939 14; -BA_ "FrameRouting" BO_ 937 ""; -BA_ "GenMsgSendType" BO_ 937 0; -BA_ "GenMsgCycleTime" BO_ 937 20; -BA_ "GenMsgDelayTime" BO_ 937 10; -BA_ "VFrameFormat" BO_ 937 14; -BA_ "FrameRouting" BO_ 936 ""; -BA_ "GenMsgSendType" BO_ 936 0; -BA_ "GenMsgCycleTime" BO_ 936 20; -BA_ "GenMsgDelayTime" BO_ 936 10; -BA_ "VFrameFormat" BO_ 936 14; -BA_ "FrameRouting" BO_ 877 ""; -BA_ "GenMsgSendType" BO_ 877 5; -BA_ "GenMsgCycleTime" BO_ 877 1000; -BA_ "VFrameFormat" BO_ 877 14; -BA_ "FrameRouting" BO_ 589 ""; -BA_ "FrameGatewayId" BO_ 589 589; -BA_ "FrameGatewayNetwork" BO_ 589 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 589 14; -BA_ "FrameRouting" BO_ 588 ""; -BA_ "FrameGatewayId" BO_ 588 588; -BA_ "FrameGatewayNetwork" BO_ 588 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 588 14; -BA_ "FrameRouting" BO_ 587 ""; -BA_ "FrameGatewayId" BO_ 587 587; -BA_ "FrameGatewayNetwork" BO_ 587 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 587 14; -BA_ "FrameRouting" BO_ 389 ""; -BA_ "GenMsgSendType" BO_ 389 0; -BA_ "GenMsgCycleTime" BO_ 389 100; -BA_ "VFrameFormat" BO_ 389 14; -BA_ "FrameRouting" BO_ 1009 ""; -BA_ "FrameGatewayId" BO_ 1009 1009; -BA_ "FrameGatewayNetwork" BO_ 1009 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1009 14; -BA_ "FrameRouting" BO_ 360 ""; -BA_ "FrameGatewayId" BO_ 360 360; -BA_ "FrameGatewayNetwork" BO_ 360 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 360 14; -BA_ "FrameRouting" BO_ 122 ""; -BA_ "FrameGatewayId" BO_ 122 122; -BA_ "FrameGatewayNetwork" BO_ 122 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 122 14; -BA_ "FrameRouting" BO_ 90 ""; -BA_ "FrameGatewayId" BO_ 90 90; -BA_ "FrameGatewayNetwork" BO_ 90 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 90 14; -BA_ "FrameRouting" BO_ 1091 ""; -BA_ "FrameGatewayId" BO_ 1091 1091; -BA_ "FrameGatewayNetwork" BO_ 1091 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1091 14; -BA_ "FrameRouting" BO_ 138 ""; -BA_ "FrameGatewayId" BO_ 138 138; -BA_ "FrameGatewayNetwork" BO_ 138 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 138 14; -BA_ "FrameRouting" BO_ 131 ""; -BA_ "FrameGatewayId" BO_ 131 131; -BA_ "FrameGatewayNetwork" BO_ 131 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 131 14; -BA_ "FrameRouting" BO_ 787 ""; -BA_ "FrameGatewayId" BO_ 787 787; -BA_ "FrameGatewayNetwork" BO_ 787 "MS2_CAN"; -BA_ "VFrameFormat" BO_ 787 14; -BA_ "FrameRouting" BO_ 953 ""; -BA_ "FrameGatewayId" BO_ 953 953; -BA_ "FrameGatewayNetwork" BO_ 953 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 953 14; -BA_ "FrameRouting" BO_ 1093 ""; -BA_ "FrameGatewayId" BO_ 1093 1093; -BA_ "FrameGatewayNetwork" BO_ 1093 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1093 14; -BA_ "FrameRouting" BO_ 792 ""; -BA_ "FrameGatewayId" BO_ 792 792; -BA_ "FrameGatewayNetwork" BO_ 792 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 792 14; -BA_ "FrameRouting" BO_ 968 ""; -BA_ "FrameGatewayId" BO_ 968 968; -BA_ "FrameGatewayNetwork" BO_ 968 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 968 14; -BA_ "FrameRouting" BO_ 819 ""; -BA_ "FrameGatewayId" BO_ 819 819; -BA_ "FrameGatewayNetwork" BO_ 819 "MS1_CAN"; -BA_ "VFrameFormat" BO_ 819 14; -BA_ "FrameRouting" BO_ 818 ""; -BA_ "FrameGatewayId" BO_ 818 818; -BA_ "FrameGatewayNetwork" BO_ 818 "MS1_CAN"; -BA_ "VFrameFormat" BO_ 818 14; -BA_ "FrameRouting" BO_ 806 ""; -BA_ "FrameGatewayId" BO_ 806 806; -BA_ "FrameGatewayNetwork" BO_ 806 "MS1_CAN"; -BA_ "VFrameFormat" BO_ 806 14; -BA_ "FrameRouting" BO_ 765 ""; -BA_ "FrameGatewayId" BO_ 765 765; -BA_ "FrameGatewayNetwork" BO_ 765 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 765 14; -BA_ "FrameRouting" BO_ 559 ""; -BA_ "FrameGatewayId" BO_ 559 559; -BA_ "FrameGatewayNetwork" BO_ 559 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 559 14; -BA_ "FrameRouting" BO_ 558 ""; -BA_ "FrameGatewayId" BO_ 558 558; -BA_ "FrameGatewayNetwork" BO_ 558 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 558 14; -BA_ "FrameRouting" BO_ 934 ""; -BA_ "GenMsgSendType" BO_ 934 5; -BA_ "GenMsgCycleTime" BO_ 934 200; -BA_ "VFrameFormat" BO_ 934 14; -BA_ "FrameRouting" BO_ 1072 ""; -BA_ "FrameGatewayId" BO_ 1072 1072; -BA_ "FrameGatewayNetwork" BO_ 1072 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1072 14; -BA_ "FrameRouting" BO_ 909 ""; -BA_ "FrameGatewayId" BO_ 909 909; -BA_ "FrameGatewayNetwork" BO_ 909 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 909 14; -BA_ "FrameRouting" BO_ 963 ""; -BA_ "FrameGatewayId" BO_ 963 963; -BA_ "FrameGatewayNetwork" BO_ 963 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 963 14; -BA_ "FrameRouting" BO_ 145 ""; -BA_ "FrameGatewayId" BO_ 145 145; -BA_ "FrameGatewayNetwork" BO_ 145 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 145 14; -BA_ "FrameRouting" BO_ 76 ""; -BA_ "FrameGatewayId" BO_ 76 76; -BA_ "FrameGatewayNetwork" BO_ 76 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 76 14; -BA_ "FrameRouting" BO_ 65 ""; -BA_ "DiagResponse" BO_ 65 0; -BA_ "FrameGatewayId" BO_ 65 65; -BA_ "FrameGatewayNetwork" BO_ 65 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 65 14; -BA_ "FrameRouting" BO_ 1076 ""; -BA_ "FrameGatewayId" BO_ 1076 1076; -BA_ "FrameGatewayNetwork" BO_ 1076 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 1076 14; -BA_ "FrameRouting" BO_ 862 ""; -BA_ "FrameGatewayId" BO_ 862 862; -BA_ "FrameGatewayNetwork" BO_ 862 "MS1_CAN"; -BA_ "VFrameFormat" BO_ 862 14; -BA_ "FrameRouting" BO_ 931 ""; -BA_ "FrameGatewayId" BO_ 931 931; -BA_ "FrameGatewayNetwork" BO_ 931 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 931 14; -BA_ "FrameRouting" BO_ 578 ""; -BA_ "FrameGatewayId" BO_ 578 578; -BA_ "FrameGatewayNetwork" BO_ 578 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 578 14; -BA_ "FrameRouting" BO_ 947 ""; -BA_ "FrameGatewayId" BO_ 947 947; -BA_ "FrameGatewayNetwork" BO_ 947 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 947 14; -BA_ "FrameRouting" BO_ 1084 ""; -BA_ "FrameGatewayId" BO_ 1084 1084; -BA_ "FrameGatewayNetwork" BO_ 1084 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1084 14; -BA_ "FrameRouting" BO_ 1068 ""; -BA_ "FrameGatewayId" BO_ 1068 1068; -BA_ "FrameGatewayNetwork" BO_ 1068 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 1068 14; -BA_ "FrameRouting" BO_ 146 ""; -BA_ "FrameGatewayId" BO_ 146 146; -BA_ "FrameGatewayNetwork" BO_ 146 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 146 14; -BA_ "FrameRouting" BO_ 1900 ""; -BA_ "GenMsgILSupport" BO_ 1900 0; -BA_ "DiagResponse" BO_ 1900 1; -BA_ "GenMsgSendType" BO_ 1900 1; -BA_ "GenMsgDelayTime" BO_ 1900 0; -BA_ "NetworkInitialization" BO_ 1900 0; -BA_ "VFrameFormat" BO_ 1900 14; -BA_ "FrameRouting" BO_ 1806 ""; -BA_ "GenMsgILSupport" BO_ 1806 0; -BA_ "DiagResponse" BO_ 1806 1; -BA_ "GenMsgSendType" BO_ 1806 1; -BA_ "GenMsgDelayTime" BO_ 1806 0; -BA_ "NetworkInitialization" BO_ 1806 0; -BA_ "VFrameFormat" BO_ 1806 14; -BA_ "FrameRouting" BO_ 997 ""; -BA_ "GenMsgSendType" BO_ 997 5; -BA_ "GenMsgCycleTime" BO_ 997 1000; -BA_ "VFrameFormat" BO_ 997 14; -BA_ "FrameRouting" BO_ 983 ""; -BA_ "GenMsgSendType" BO_ 983 0; -BA_ "GenMsgCycleTime" BO_ 983 50; -BA_ "VFrameFormat" BO_ 983 14; -BA_ "FrameRouting" BO_ 980 ""; -BA_ "GenMsgSendType" BO_ 980 0; -BA_ "GenMsgCycleTime" BO_ 980 30; -BA_ "GenMsgDelayTime" BO_ 980 10; -BA_ "VFrameFormat" BO_ 980 14; -BA_ "FrameRouting" BO_ 979 ""; -BA_ "GenMsgSendType" BO_ 979 0; -BA_ "GenMsgCycleTime" BO_ 979 50; -BA_ "VFrameFormat" BO_ 979 14; -BA_ "FrameRouting" BO_ 976 ""; -BA_ "GenMsgSendType" BO_ 976 0; -BA_ "GenMsgCycleTime" BO_ 976 100; -BA_ "VFrameFormat" BO_ 976 14; -BA_ "FrameRouting" BO_ 973 ""; -BA_ "GenMsgSendType" BO_ 973 5; -BA_ "GenMsgCycleTime" BO_ 973 1000; -BA_ "VFrameFormat" BO_ 973 14; -BA_ "FrameRouting" BO_ 970 ""; -BA_ "GenMsgSendType" BO_ 970 0; -BA_ "GenMsgCycleTime" BO_ 970 30; -BA_ "GenMsgDelayTime" BO_ 970 10; -BA_ "VFrameFormat" BO_ 970 14; -BA_ "FrameRouting" BO_ 962 ""; -BA_ "GenMsgSendType" BO_ 962 5; -BA_ "GenMsgCycleTime" BO_ 962 1000; -BA_ "VFrameFormat" BO_ 962 14; -BA_ "FrameRouting" BO_ 961 ""; -BA_ "GenMsgSendType" BO_ 961 5; -BA_ "GenMsgCycleTime" BO_ 961 1000; -BA_ "VFrameFormat" BO_ 961 14; -BA_ "FrameRouting" BO_ 394 ""; -BA_ "GenMsgSendType" BO_ 394 5; -BA_ "GenMsgCycleTime" BO_ 394 200; -BA_ "VFrameFormat" BO_ 394 14; -BA_ "FrameRouting" BO_ 391 ""; -BA_ "GenMsgSendType" BO_ 391 0; -BA_ "GenMsgCycleTime" BO_ 391 20; -BA_ "GenMsgDelayTime" BO_ 391 10; -BA_ "VFrameFormat" BO_ 391 14; -BA_ "FrameRouting" BO_ 390 ""; -BA_ "GenMsgSendType" BO_ 390 0; -BA_ "GenMsgCycleTime" BO_ 390 20; -BA_ "GenMsgDelayTime" BO_ 390 10; -BA_ "VFrameFormat" BO_ 390 14; -BA_ "FrameRouting" BO_ 1441 ""; -BA_ "GenMsgILSupport" BO_ 1441 0; -BA_ "NmAsrMessage" BO_ 1441 1; -BA_ "GenMsgSendType" BO_ 1441 0; -BA_ "GenMsgCycleTime" BO_ 1441 1000; -BA_ "NetworkInitialization" BO_ 1441 0; -BA_ "VFrameFormat" BO_ 1441 14; -BA_ "FrameRouting" BO_ 1787 ""; -BA_ "GenMsgILSupport" BO_ 1787 0; -BA_ "DiagResponse" BO_ 1787 1; -BA_ "GenMsgSendType" BO_ 1787 1; -BA_ "GenMsgDelayTime" BO_ 1787 0; -BA_ "VFrameFormat" BO_ 1787 14; -BA_ "FrameRouting" BO_ 1779 ""; -BA_ "GenMsgILSupport" BO_ 1779 0; -BA_ "DiagRequest" BO_ 1779 1; -BA_ "GenMsgSendType" BO_ 1779 1; -BA_ "GenMsgDelayTime" BO_ 1779 0; -BA_ "VFrameFormat" BO_ 1779 14; -BA_ "FrameRouting" BO_ 1786 ""; -BA_ "GenMsgILSupport" BO_ 1786 0; -BA_ "DiagResponse" BO_ 1786 1; -BA_ "GenMsgSendType" BO_ 1786 1; -BA_ "GenMsgDelayTime" BO_ 1786 0; -BA_ "VFrameFormat" BO_ 1786 14; -BA_ "FrameRouting" BO_ 1778 ""; -BA_ "GenMsgILSupport" BO_ 1778 0; -BA_ "DiagRequest" BO_ 1778 1; -BA_ "GenMsgSendType" BO_ 1778 1; -BA_ "GenMsgDelayTime" BO_ 1778 0; -BA_ "VFrameFormat" BO_ 1778 14; -BA_ "FrameRouting" BO_ 1153 ""; -BA_ "FrameGatewayId" BO_ 1153 1152; -BA_ "FrameGatewayNetwork" BO_ 1153 "HS2_CAN"; -BA_ "VFrameFormat" BO_ 1153 14; -BA_ "FrameRouting" BO_ 942 ""; -BA_ "GenMsgSendType" BO_ 942 5; -BA_ "GenMsgCycleTime" BO_ 942 1000; -BA_ "VFrameFormat" BO_ 942 14; -BA_ "FrameRouting" BO_ 930 ""; -BA_ "GenMsgSendType" BO_ 930 5; -BA_ "GenMsgCycleTime" BO_ 930 1000; -BA_ "VFrameFormat" BO_ 930 14; -BA_ "FrameRouting" BO_ 929 ""; -BA_ "GenMsgSendType" BO_ 929 5; -BA_ "GenMsgCycleTime" BO_ 929 1000; -BA_ "VFrameFormat" BO_ 929 14; -BA_ "FrameRouting" BO_ 402 ""; -BA_ "FrameGatewayId" BO_ 402 402; -BA_ "FrameGatewayNetwork" BO_ 402 "HS3_CAN"; -BA_ "VFrameFormat" BO_ 402 14; -BA_ "FrameRouting" BO_ 924 ""; -BA_ "FrameGatewayId" BO_ 924 924; -BA_ "FrameGatewayNetwork" BO_ 924 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 924 14; -BA_ "FrameRouting" BO_ 923 ""; -BA_ "FrameGatewayId" BO_ 923 923; -BA_ "FrameGatewayNetwork" BO_ 923 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 923 14; -BA_ "FrameRouting" BO_ 1998 ""; -BA_ "GenMsgILSupport" BO_ 1998 0; -BA_ "DiagResponse" BO_ 1998 1; -BA_ "GenMsgSendType" BO_ 1998 1; -BA_ "GenMsgDelayTime" BO_ 1998 0; -BA_ "NetworkInitialization" BO_ 1998 0; -BA_ "VFrameFormat" BO_ 1998 14; -BA_ "FrameRouting" BO_ 1996 ""; -BA_ "GenMsgILSupport" BO_ 1996 0; -BA_ "DiagResponse" BO_ 1996 1; -BA_ "GenMsgSendType" BO_ 1996 1; -BA_ "GenMsgDelayTime" BO_ 1996 0; -BA_ "NetworkInitialization" BO_ 1996 0; -BA_ "VFrameFormat" BO_ 1996 14; -BA_ "FrameRouting" BO_ 1988 ""; -BA_ "GenMsgILSupport" BO_ 1988 0; -BA_ "DiagRequest" BO_ 1988 1; -BA_ "GenMsgSendType" BO_ 1988 1; -BA_ "GenMsgDelayTime" BO_ 1988 0; -BA_ "NetworkInitialization" BO_ 1988 0; -BA_ "VFrameFormat" BO_ 1988 14; -BA_ "FrameRouting" BO_ 922 ""; -BA_ "FrameGatewayId" BO_ 922 922; -BA_ "FrameGatewayNetwork" BO_ 922 "HS1_CAN"; -BA_ "VFrameFormat" BO_ 922 14; -BA_ "GenSigSendType" SG_ 823 DteVehPwId_No_Actl 3; -BA_ "ECGUsedRxSignal" SG_ 823 DteVehPwId_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 823 DteVehEId_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 823 DteVehEffId_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 823 DteVeh_Pw_Actl 1; -BA_ "GenSigStartValue" SG_ 823 DteVeh_Eff_Actl 100; -BA_ "ECGUsedRxSignal" SG_ 823 DteVeh_Eff_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 823 DteVeh_E_Actl 1; -BA_ "GenSigSendType" SG_ 823 DteAcceptNew_B_Rq 3; -BA_ "ECGUsedRxSignal" SG_ 823 DteAcceptNew_B_Rq 1; -BA_ "GenSigSendType" SG_ 824 DteCldTrlrOn_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldTrlrOn_B_Stat 1; -BA_ "GenSigSendType" SG_ 824 DteCldTrlrOff_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldTrlrOff_B_Stat 1; -BA_ "GenSigStartValue" SG_ 824 DteCldTrip_L_Actl 100; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldTrip_L_Actl 1; -BA_ "GenSigSendType" SG_ 824 DteCldTraffic_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldTraffic_B_Stat 1; -BA_ "GenSigSendType" SG_ 824 DteCldTerrain_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldTerrain_B_Stat 1; -BA_ "GenSigSendType" SG_ 824 DteCldRoute_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldRoute_B_Stat 1; -BA_ "GenSigSendType" SG_ 824 DteCldPayload_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldPayload_B_Stat 1; -BA_ "GenSigSendType" SG_ 824 DteCldId_No_Actl 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldId_No_Actl 1; -BA_ "GenSigSendType" SG_ 824 DteCldExtTe_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldExtTe_B_Stat 1; -BA_ "GenSigStartValue" SG_ 824 DteCldExt_Eff_Actl 100; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldExt_Eff_Actl 1; -BA_ "GenSigStartValue" SG_ 824 DteCldDrv_Eff_Actl 100; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldDrv_Eff_Actl 1; -BA_ "GenSigSendType" SG_ 824 DteCldDcac_B_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldDcac_B_Stat 1; -BA_ "GenSigStartValue" SG_ 824 DteCldClimt_Eff_Actl 100; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldClimt_Eff_Actl 1; -BA_ "GenSigStartValue" SG_ 824 DteCldBattULo_Eff_Actl 100; -BA_ "ECGUsedTxSignal" SG_ 824 DteCldBattULo_Eff_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_RR_ORR_Data 65533; -BA_ "GenSigStartValue" SG_ 949 Tire_Press_RR_ORR_Data 65533; -BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_LR_OLR_Data 65533; -BA_ "GenSigStartValue" SG_ 949 Tire_Press_LR_OLR_Data 65533; -BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_LF_Data 65533; -BA_ "GenSigStartValue" SG_ 949 Tire_Press_LF_Data 65533; -BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_RF_Data 65533; -BA_ "GenSigStartValue" SG_ 949 Tire_Press_RF_Data 65533; -BA_ "GenSigSendType" SG_ 1825 TesterPhysicalReqVDM 3; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; -BA_ "MetaData" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; -BA_ "ContentDependant" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 524 PrplWhlTot_Tq_RqMxAwd 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 524 PrplWhlTot_Tq_RqMxAwd 1; -BA_ "GenSigStartValue" SG_ 524 PrplWhlTot_Tq_RqMxAwd 65535; -BA_ "GenSigStartValueInteger" SG_ 524 PrplWhlTot_Tq_RqMxAwd 65535; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; -BA_ "MetaData" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; -BA_ "ContentDependant" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 740 BattAuxCnnct_B_Cmd 1; -BA_ "GenSigSendType" SG_ 1160 DgtlCommPncReset_B_Req 3; -BA_ "ECGUsedTxSignal" SG_ 1160 DgtlCommPncReset_B_Req 1; -BA_ "ECGUsedTxSignal" SG_ 1160 DataMntrSustn_B_Rq 1; -BA_ "GenSigSendType" SG_ 1160 DataMntrSustn_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 1160 PwSustnRdata_B_RqTelem 1; -BA_ "GenSigSendType" SG_ 1160 PwSustnRdata_B_RqTelem 3; -BA_ "ECGUsedTxSignal" SG_ 776 ScMnSoc_Pc_RqCld 1; -BA_ "GenSigStartValue" SG_ 776 ScMnSoc_Pc_RqCld 100; -BA_ "GenSigSendType" SG_ 776 ScMnSoc_Pc_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 ScChrgrPwMax_Pw_RqCld 1; -BA_ "GenSigSendType" SG_ 776 ScChrgrPwMax_Pw_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 ScLocPwId_No_RqCld 1; -BA_ "GenSigSendType" SG_ 776 ScLocPwId_No_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 PrcondEdit_D_RqCld 1; -BA_ "GenSigSendType" SG_ 776 PrcondEdit_D_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 GoTEditMnte_T_RqCld 1; -BA_ "GenSigStartValue" SG_ 776 GoTEditMnte_T_RqCld 14; -BA_ "GenSigSendType" SG_ 776 GoTEditMnte_T_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 GoTEditHr_T_RqCld 1; -BA_ "GenSigStartValue" SG_ 776 GoTEditHr_T_RqCld 30; -BA_ "GenSigSendType" SG_ 776 GoTEditHr_T_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 ChrgToPcEdit_Pc_RqCld 1; -BA_ "GenSigStartValue" SG_ 776 ChrgToPcEdit_Pc_RqCld 126; -BA_ "GenSigSendType" SG_ 776 ChrgToPcEdit_Pc_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 AirAmb_Te_ActlCld 1; -BA_ "GenSigStartValueInteger" SG_ 776 AirAmb_Te_ActlCld 512; -BA_ "UsedOnPgmDBC" SG_ 776 AirAmb_Te_ActlCld 1; -BA_ "GenSigSendType" SG_ 776 AirAmb_Te_ActlCld 3; -BA_ "ECGUsedTxSignal" SG_ 776 ScFreshDataEnbl_B_Rq 1; -BA_ "GenSigSendType" SG_ 776 ScFreshDataEnbl_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 776 ScEnbl_D_RqCld 1; -BA_ "GenSigStartValue" SG_ 776 ScEnbl_D_RqCld 1; -BA_ "GenSigSendType" SG_ 776 ScEnbl_D_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScDayOfWeekId_D_RqCld 1; -BA_ "GenSigStartValue" SG_ 775 ScDayOfWeekId_D_RqCld 1; -BA_ "GenSigSendType" SG_ 775 ScDayOfWeekId_D_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScLocSetId_No_RqCld 1; -BA_ "GenSigSendType" SG_ 775 ScLocSetId_No_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScLocRdius_L_RqCld 1; -BA_ "GenSigStartValue" SG_ 775 ScLocRdius_L_RqCld 1; -BA_ "GenSigSendType" SG_ 775 ScLocRdius_L_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScChrgToPc_Pc_RqCld 1; -BA_ "GenSigStartValue" SG_ 775 ScChrgToPc_Pc_RqCld 100; -BA_ "GenSigSendType" SG_ 775 ScChrgToPc_Pc_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScChrgPrfl_No_RqCld 1; -BA_ "GenSigSendType" SG_ 775 ScChrgPrfl_No_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScChrgDurSet_D_RqCld 1; -BA_ "GenSigStartValue" SG_ 775 ScChrgDurSet_D_RqCld 1; -BA_ "GenSigSendType" SG_ 775 ScChrgDurSet_D_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 775 ScChrgDur_T_RqCld 1; -BA_ "GenSigSendType" SG_ 775 ScChrgDur_T_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocLongPostv_B_RqCld 1; -BA_ "GenSigSendType" SG_ 774 ScLocLongPostv_B_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocLongFrct_An_RqCld 1; -BA_ "GenSigStartValue" SG_ 774 ScLocLongFrct_An_RqCld 1048575; -BA_ "GenSigSendType" SG_ 774 ScLocLongFrct_An_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocLongDeg_An_RqCld 1; -BA_ "GenSigSendType" SG_ 774 ScLocLongDeg_An_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocLattPostv_B_RqCld 1; -BA_ "GenSigSendType" SG_ 774 ScLocLattPostv_B_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocLattFrct_An_RqCld 1; -BA_ "GenSigStartValue" SG_ 774 ScLocLattFrct_An_RqCld 1048575; -BA_ "GenSigSendType" SG_ 774 ScLocLattFrct_An_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocLattDeg_An_RqCld 1; -BA_ "GenSigSendType" SG_ 774 ScLocLattDeg_An_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocId_No_RqCld 1; -BA_ "GenSigSendType" SG_ 774 ScLocId_No_RqCld 3; -BA_ "ECGUsedTxSignal" SG_ 774 ScLocDelete_B_RqCld 1; -BA_ "GenSigSendType" SG_ 774 ScLocDelete_B_RqCld 3; -BA_ "GenSigStartValue" SG_ 811 DistToStopover_L_Actl 65535; -BA_ "WakeupSignal" SG_ 811 ExtLghtRight_D_RqMnu 1; -BA_ "WakeupSignal" SG_ 811 AutoLghtOvrrd_B_RqDrv 1; -BA_ "WakeupSignal" SG_ 811 ExtLghtRear_D_RqMnu 1; -BA_ "WakeupSignal" SG_ 811 ExtLghtLeft_D_RqMnu 1; -BA_ "WakeupSignal" SG_ 811 ExtLghtFront_D_RqMnu 1; -BA_ "GenSigStartValue" SG_ 811 GoTEditMnte_T_RqMnu 14; -BA_ "GenSigStartValue" SG_ 811 GoTEditHr_T_RqMnu 30; -BA_ "U_CX727_MY2021_Tx" SG_ 850 VehElRngeNut_L_Dsply 1; -BA_ "U_CX727_MY2021_Tx" SG_ 850 NxtUsgSocEst_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 850 EstmChrgTimeLP_St 1; -BA_ "U_CX727_MY2021_Tx" SG_ 850 EstmChrgTimeLP_St 1; -BA_ "ECGUsedRxSignal" SG_ 850 EstmChrgTimeHP_St 1; -BA_ "U_CX727_MY2021_Tx" SG_ 850 EstmChrgTimeHP_St 1; -BA_ "ECGUsedRxSignal" SG_ 850 ChargeNowDuration_St 1; -BA_ "U_CX727_MY2021_Tx" SG_ 850 ChargeNowDuration_St 1; -BA_ "ECGUsedTxSignal" SG_ 563 DrvBhavWarn_B_Rq 1; -BA_ "GenSigSendType" SG_ 563 DrvBhavWarn_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 563 OfbChrgSetSync_D_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 563 KeyOffPwMde_D_Stat 1; -BA_ "GenSigSendType" SG_ 563 KeyOffPwMde_D_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 563 ModemReset_D_Stat 1; -BA_ "GenSigSendType" SG_ 563 ModemReset_D_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 563 FactoryReset_St 1; -BA_ "GenSigSendType" SG_ 563 FactoryReset_St 3; -BA_ "GenSigSendType" SG_ 1833 TesterPhysicalResVDM 3; -BA_ "GenSigStartValueInteger" SG_ 570 SuspRearRight_L_Actl 511; -BA_ "GenSigStartValue" SG_ 570 SuspRearRight_L_Actl 511; -BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspRearRight_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 570 SuspFrntRight_L_Actl 511; -BA_ "GenSigStartValue" SG_ 570 SuspFrntRight_L_Actl 511; -BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspFrntRight_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 570 SuspRear_L_Prev 511; -BA_ "GenSigStartValue" SG_ 570 SuspRear_L_Prev 511; -BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspRear_L_Prev 1; -BA_ "U_P702_MY2021_Rx" SG_ 570 SuspRear_L_Prev 1; -BA_ "GenSigStartValueInteger" SG_ 570 SuspRear_L_Actl 511; -BA_ "GenSigStartValue" SG_ 570 SuspRear_L_Actl 511; -BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspRear_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 570 SuspRear_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 570 SuspFrnt_L_Prev 511; -BA_ "GenSigStartValue" SG_ 570 SuspFrnt_L_Prev 511; -BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspFrnt_L_Prev 1; -BA_ "U_P702_MY2021_Rx" SG_ 570 SuspFrnt_L_Prev 1; -BA_ "GenSigStartValueInteger" SG_ 570 SuspFrnt_L_Actl 511; -BA_ "GenSigStartValue" SG_ 570 SuspFrnt_L_Actl 511; -BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspFrnt_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 570 SuspFrnt_L_Actl 1; -BA_ "GenSigSendType" SG_ 837 Ccd_B_Falt 3; -BA_ "GenSigInactiveValue" SG_ 837 Ccd_B_Falt 0; -BA_ "GenSigSendType" SG_ 837 SelDrvMdeSusp_D_Stat 3; -BA_ "GenSigInactiveValue" SG_ 837 SelDrvMdeSusp_D_Stat 0; -BA_ "U_CX727_MY2021_Rx" SG_ 837 SelDrvMdeSusp_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 837 SelDrvMdeSusp_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 837 SelDrvMdeSusp_D_Stat 1; -BA_ "GenSigSendType" SG_ 837 AdptDrvMdePt_D_Rq 3; -BA_ "GenSigInactiveValue" SG_ 837 AdptDrvMdePt_D_Rq 0; -BA_ "U_CX727_MY2021_Rx" SG_ 837 AdptDrvMdePt_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 837 AdptDrvMdePt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 837 AdptDrvMdePt_D_Rq 1; -BA_ "GenSigSendType" SG_ 837 AdptDrvMdeChassis_D_Rq 3; -BA_ "GenSigInactiveValue" SG_ 837 AdptDrvMdeChassis_D_Rq 0; -BA_ "U_CX727_MY2021_Rx" SG_ 837 AdptDrvMdeChassis_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 837 AdptDrvMdeChassis_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 837 AdptDrvMdeChassis_D_Rq 1; -BA_ "GenSigSendType" SG_ 837 CcdMsgTxt_D_RqDsply 3; -BA_ "GenSigInactiveValue" SG_ 837 CcdMsgTxt_D_RqDsply 0; -BA_ "UsedOnPgmDBC" SG_ 837 CcdMsgTxt_D_RqDsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 837 CcdMsgTxt_D_RqDsply 1; -BA_ "ECGUsedTxSignal" SG_ 885 BattULoChrg_D_RqOta 1; -BA_ "ECGUsedTxSignal" SG_ 885 VehStrtInhbt_T_Dsply 1; -BA_ "ECGUsedTxSignal" SG_ 885 VehStrtInhbt_D_Dsply 1; -BA_ "ECGUsedTxSignal" SG_ 885 VehOnRqstr_D_Stat 1; -BA_ "ECGUsedTxSignal" SG_ 885 VehStrtInhbt_D_RqCld 1; -BA_ "ECGUsedTxSignal" SG_ 885 VehOn_D_RqCld 1; -BA_ "ECGUsedTxSignal" SG_ 885 CanMsg375_No_Cnt 1; -BA_ "ECGUsedTxSignal" SG_ 885 CanMsg375_No_Crc 1; -BA_ "ECGUsedTxSignal" SG_ 885 OtaActv_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1150 LocationServices_1 1; -BA_ "GenSigSendType" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 3; -BA_ "U_P702_MY2021_Tx" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 1; -BA_ "ECGUsedRxSignal" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 810 OBCCSerial_D_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 810 OBCCSerial_D_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 810 TlghtTest_D_RqArb 1; -BA_ "GenSigSendType" SG_ 810 TlghtTest_D_RqArb 3; -BA_ "ECGUsedTxSignal" SG_ 810 ChrgrPncSustn_B_Rq 1; -BA_ "GenSigStartValue" SG_ 810 ChrgrPncSustn_B_Rq 0; -BA_ "GenSigStartValueInteger" SG_ 810 ChrgrPncSustn_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; -BA_ "GenSigStartValue" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; -BA_ "WakeupSignal" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; -BA_ "GenSigSendType" SG_ 810 NtfyDrvTrgtDist_L_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; -BA_ "GenSigStartValue" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; -BA_ "WakeupSignal" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; -BA_ "GenSigSendType" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 810 PtRmtRprt_D_Stat 1; -BA_ "WakeupSignal" SG_ 810 PtRmtRprt_D_Stat 1; -BA_ "GenSigSendType" SG_ 810 PtRmtRprt_D_Stat 3; -BA_ "ECGUsedTxSignal" SG_ 810 ChrgrPncEnbl_D_Rq 1; -BA_ "GenSigStartValue" SG_ 810 ChrgrPncEnbl_D_Rq 3; -BA_ "GenSigStartValueInteger" SG_ 810 ChrgrPncEnbl_D_Rq 3; -BA_ "GenSigSendType" SG_ 810 ChrgrPncEnbl_D_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtDsply_B_StatArb 1; -BA_ "WakeupSignal" SG_ 810 ExtLghtDsply_B_StatArb 1; -BA_ "GenSigSendType" SG_ 810 ExtLghtDsply_B_StatArb 3; -BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtRight_D_RqOta 1; -BA_ "WakeupSignal" SG_ 810 ExtLghtRight_D_RqOta 1; -BA_ "GenSigSendType" SG_ 810 ExtLghtRight_D_RqOta 3; -BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtRear_D_RqOta 1; -BA_ "WakeupSignal" SG_ 810 ExtLghtRear_D_RqOta 1; -BA_ "GenSigSendType" SG_ 810 ExtLghtRear_D_RqOta 3; -BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtLeft_D_RqOta 1; -BA_ "WakeupSignal" SG_ 810 ExtLghtLeft_D_RqOta 1; -BA_ "GenSigSendType" SG_ 810 ExtLghtLeft_D_RqOta 3; -BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtFront_D_RqOta 1; -BA_ "WakeupSignal" SG_ 810 ExtLghtFront_D_RqOta 1; -BA_ "GenSigSendType" SG_ 810 ExtLghtFront_D_RqOta 3; -BA_ "ECGUsedTxSignal" SG_ 550 PtWakeupActv1_B_Rq 1; -BA_ "WakeupSignal" SG_ 550 PtWakeupActv1_B_Rq 1; -BA_ "GenSigSendType" SG_ 550 PtWakeupActv1_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgPrflUpdate_B_Rq 1; -BA_ "GenSigSendType" SG_ 639 OfbChrgPrflUpdate_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgClearAll_B_Rq 1; -BA_ "GenSigSendType" SG_ 639 OfbChrgClearAll_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTTouch_D_Rq 1; -BA_ "GenSigSendType" SG_ 639 OfbChrgGoTTouch_D_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTPrcond_D_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTOn_D_Rq 1; -BA_ "GenSigStartValue" SG_ 639 OfbChrgGoTOn_D_Rq 2; -BA_ "GenSigStartValueInteger" SG_ 639 OfbChrgGoTOn_D_Rq 2; -BA_ "GenSigSendType" SG_ 639 OfbChrgGoTOn_D_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTMnte_D_Rq 1; -BA_ "MetaData" SG_ 639 OfbChrgGoTMnte_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 639 OfbChrgGoTMnte_D_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTHr_T_Rq 1; -BA_ "GenSigStartValue" SG_ 639 OfbChrgGoTHr_T_Rq 30; -BA_ "GenSigStartValueInteger" SG_ 639 OfbChrgGoTHr_T_Rq 30; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTExtHtr_D_Rq 1; -BA_ "GenSigSendType" SG_ 639 OfbChrgGoTExtHtr_D_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTElement_D_Rq 1; -BA_ "MetaData" SG_ 639 OfbChrgGoTElement_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 639 OfbChrgGoTElement_D_Rq 1; -BA_ "GenSigSendType" SG_ 639 OfbChrgGoTElement_D_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTDelete_B_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTUpdate_B_Rq 1; -BA_ "GenSigSendType" SG_ 639 OfbChrgGoTUpdate_B_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgLocIdTrgt_No_Rq 1; -BA_ "MetaData" SG_ 530 OfbChrgLocIdTrgt_No_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 530 OfbChrgLocIdTrgt_No_Rq 1; -BA_ "GenSigSendType" SG_ 530 OfbChrgLocIdTrgt_No_Rq 3; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgToPcWknd_D_Actl 1; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgToPcWkdy_D_Actl 1; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgSetNow_D_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgSetDelete_B_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgPrflWknd_No_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgPrflWkdy_No_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgLocIdUns_B_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 1142 ConsTipV_No_Dsply 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1142 ConsTipV_No_Dsply 1; -BA_ "WakeupSignal" SG_ 817 DrTgateOpen_B_Rq 1; -BA_ "WakeupSignal" SG_ 817 DrTgateExtSwMde_B_Stat 1; -BA_ "WakeupSignal" SG_ 817 Remote_Device_Feedback 1; -BA_ "WakeupSignal" SG_ 817 Veh_Lock_Requestor 1; -BA_ "WakeupSignal" SG_ 817 R_Pwr_Sliding_Dr_Rqst 1; -BA_ "WakeupSignal" SG_ 817 Power_Liftgate_Rqst 1; -BA_ "WakeupSignal" SG_ 817 Veh_Lock_EvNum 1; -BA_ "WakeupSignal" SG_ 817 Power_Decklid_Rqst 1; -BA_ "WakeupSignal" SG_ 817 L_Pwr_Sliding_Dr_Rqst 1; -BA_ "WakeupSignal" SG_ 817 Keyfob_Pad_Msg_Count 1; -BA_ "WakeupSignal" SG_ 817 Veh_Lock_Status 1; -BA_ "GenSigStartValueInteger" SG_ 817 Veh_Lock_Status 1; -BA_ "GenSigStartValue" SG_ 817 Veh_Lock_Status 1; -BA_ "WakeupSignal" SG_ 817 ChildLck_D_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 817 ChildLck_D_Dsply 1; -BA_ "GenSigStartValue" SG_ 817 ChildLck_D_Dsply 1; -BA_ "WakeupSignal" SG_ 817 Lockmsgtxt_D_Rq 1; -BA_ "WakeupSignal" SG_ 817 LockInhibit 1; -BA_ "GenSigSendType" SG_ 878 DcacGfciTest_B_Rq 3; -BA_ "GenSigStartValue" SG_ 878 DcacOut_Pw_DsplyMx 0; -BA_ "GenSigStartValue" SG_ 878 DcacOut1_Pw_Dsply 0; -BA_ "GenSigStartValue" SG_ 878 DcacOut2_Pw_Dsply 0; -BA_ "GenSigSendType" SG_ 878 DcacHw_D_Confg 3; -BA_ "UsedOnPgmDBC" SG_ 878 DcacHw_D_Confg 1; -BA_ "GenSigStartValueInteger" SG_ 878 DcacHw_D_Confg 1; -BA_ "GenSigStartValue" SG_ 878 DcacHw_D_Confg 1; -BA_ "GenSigSendType" SG_ 878 DcacFaltMsgTxt_D_Rq 3; -BA_ "UsedOnPgmDBC" SG_ 878 DcacFaltMsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 878 DcacFaltMsgTxt_D_Rq 1; -BA_ "GenSigStartValue" SG_ 878 DcacFaltMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 878 DcacLoFuelMsgTxt_D_Rq 3; -BA_ "GenSigSendType" SG_ 878 DcacEngOnMsgTxt_D_Rq 3; -BA_ "GenSigSendType" SG_ 878 DcacElPw_D_Stat 3; -BA_ "UsedOnPgmDBC" SG_ 878 DcacElPw_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 878 DcacElPw_D_Stat 1; -BA_ "GenSigStartValue" SG_ 878 DcacElPw_D_Stat 1; -BA_ "GenSigSendType" SG_ 878 PwBedPnlEnbl_B_Rq 3; -BA_ "GenSigSendType" SG_ 878 DcacOn_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 878 DcacOn_B_Rq 1; -BA_ "GenSigSendType" SG_ 878 DcacSys_B_Falt 3; -BA_ "U_P702_MY2021_Tx" SG_ 878 DcacSys_B_Falt 1; -BA_ "GenSigSendType" SG_ 878 DcacLedCtl_D_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 878 DcacLedCtl_D_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 2611055832 PARSEDPhysGWM_ECGtoSODR 1; -BA_ "GenSigSendType" SG_ 2611055832 PARSEDPhysGWM_ECGtoSODR 3; -BA_ "ECGUsedTxSignal" SG_ 2611054808 PARSEDPhysGWM_ECGtoSODL 1; -BA_ "GenSigSendType" SG_ 2611054808 PARSEDPhysGWM_ECGtoSODL 3; -BA_ "ECGUsedTxSignal" SG_ 2611026136 PARSEDPhysGWM_ECGtoSODCMD 1; -BA_ "GenSigSendType" SG_ 2611026136 PARSEDPhysGWM_ECGtoSODCMD 3; -BA_ "ECGUsedTxSignal" SG_ 2611025112 PARSEDPhysGWM_ECGtoSODCMC 1; -BA_ "GenSigSendType" SG_ 2611025112 PARSEDPhysGWM_ECGtoSODCMC 3; -BA_ "ECGUsedTxSignal" SG_ 2610975960 PARSEDPhysGWM_ECGtoCCM 1; -BA_ "GenSigSendType" SG_ 2610975960 PARSEDPhysGWM_ECGtoCCM 3; -BA_ "ECGUsedTxSignal" SG_ 2610007256 OTAPhysGWM_ECGtoSODR 1; -BA_ "GenSigSendType" SG_ 2610007256 OTAPhysGWM_ECGtoSODR 3; -BA_ "ECGUsedTxSignal" SG_ 2610006232 OTAPhysGWM_ECGtoSODL 1; -BA_ "GenSigSendType" SG_ 2610006232 OTAPhysGWM_ECGtoSODL 3; -BA_ "ECGUsedTxSignal" SG_ 2609977560 OTAPhysGWM_ECGtoSODCMD 1; -BA_ "GenSigSendType" SG_ 2609977560 OTAPhysGWM_ECGtoSODCMD 3; -BA_ "ECGUsedTxSignal" SG_ 2609976536 OTAPhysGWM_ECGtoSODCMC 1; -BA_ "GenSigSendType" SG_ 2609976536 OTAPhysGWM_ECGtoSODCMC 3; -BA_ "ECGUsedTxSignal" SG_ 2609927384 OTAPhysGWM_ECGtoCCM 1; -BA_ "GenSigSendType" SG_ 2609927384 OTAPhysGWM_ECGtoCCM 3; -BA_ "ECGUsedRxSignal" SG_ 2611175523 PARSEDPhysSODRtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175523 PARSEDPhysSODRtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224099 PARSEDPhysSODR2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224099 PARSEDPhysSODR2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2611175522 PARSEDPhysSODLtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175522 PARSEDPhysSODLtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224098 PARSEDPhysSODL2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224098 PARSEDPhysSODL2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2611175494 PARSEDPhysSODCMDtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175494 PARSEDPhysSODCMDtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224070 PARSEDPhysSODCMD2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224070 PARSEDPhysSODCMD2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2611175493 PARSEDPhysSODCMCtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175493 PARSEDPhysSODCMCtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224069 PARSEDPhysSODCMC2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224069 PARSEDPhysSODCMC2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2611175445 PARSEDPhysCCMtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175445 PARSEDPhysCCMtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224021 PARSEDPhysCCM2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224021 PARSEDPhysCCM2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126947 OTAPhysSODRtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126947 OTAPhysSODRtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126946 OTAPhysSODLtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126946 OTAPhysSODLtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126918 OTAPhysSODCMDtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126918 OTAPhysSODCMDtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126917 OTAPhysSODCMCtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126917 OTAPhysSODCMCtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126869 OTAPhysCCMtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126869 OTAPhysCCMtoGWM_ECG 3; -BA_ "CrossOver_InfoCAN" SG_ 984 FeatConfigIpmaActl 1; -BA_ "CrossOver_InfoCAN" SG_ 984 FeatNoIpmaActl 1; -BA_ "GenSigStartValue" SG_ 984 PersIndexIpma_D_Actl 4; -BA_ "GenSigStartValueInteger" SG_ 984 PersIndexIpma_D_Actl 4; -BA_ "CrossOver_InfoCAN" SG_ 984 PersIndexIpma_D_Actl 1; -BA_ "GenSigSendType" SG_ 984 PersIndexIpma_D_Actl 3; -BA_ "U_P702_MY2021_Rx" SG_ 984 AhbcRampingV_D_Rq 1; -BA_ "GenSigSendType" SG_ 984 AhbcRampingV_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 984 LaActvStats_D_Dsply 1; -BA_ "GenSigSendType" SG_ 984 LaActvStats_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 984 LaDenyStats_B_Dsply 1; -BA_ "GenSigSendType" SG_ 984 LaDenyStats_B_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 984 LaHandsOff_D_Dsply 1; -BA_ "GenSigSendType" SG_ 984 LaHandsOff_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 984 CamraDefog_B_Req 1; -BA_ "GenSigSendType" SG_ 984 CamraDefog_B_Req 3; -BA_ "CrossOver_InfoCAN" SG_ 984 CamraStats_D_Dsply 1; -BA_ "GenSigSendType" SG_ 984 CamraStats_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 984 DasAlrtLvl_D_Dsply 1; -BA_ "GenSigSendType" SG_ 984 DasAlrtLvl_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 984 DasStats_D_Dsply 1; -BA_ "GenSigSendType" SG_ 984 DasStats_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 984 DasWarn_D_Dsply 1; -BA_ "GenSigSendType" SG_ 984 DasWarn_D_Dsply 3; -BA_ "GenSigSendType" SG_ 984 AhbHiBeam_D_Rq 3; -BA_ "GenSigSendType" SG_ 985 LdwChime_B_Rq 3; -BA_ "GenSigSendType" SG_ 985 TsrRegionTxt_D_Stat 3; -BA_ "GenSigSendType" SG_ 985 SblmPedCrossScnr_B_Stat 3; -BA_ "GenSigSendType" SG_ 985 LongCtrlEnbl_D_Rq 3; -BA_ "GenSigSendType" SG_ 985 SblmRndAbtScnr_B_Stat 3; -BA_ "GenSigSendType" SG_ 985 DasAlrtInfo_D_Dsply 3; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IaccVLim_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 985 IaccVLim_D_Rq 1; -BA_ "GenSigStartValue" SG_ 985 IaccVLim_D_Rq 254; -BA_ "GenSigStartValueInteger" SG_ 985 IaccVLim_D_Rq 254; -BA_ "GenSigSendType" SG_ 985 IaccVLim_D_Rq 3; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IaccVLimUnit_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 985 IaccVLimUnit_D_Rq 1; -BA_ "GenSigStartValue" SG_ 985 IaccVLimUnit_D_Rq 3; -BA_ "GenSigStartValueInteger" SG_ 985 IaccVLimUnit_D_Rq 3; -BA_ "GenSigSendType" SG_ 985 IaccVLimUnit_D_Rq 3; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IsaVLim_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 985 IsaVLim_D_Rq 1; -BA_ "GenSigStartValue" SG_ 985 IsaVLim_D_Rq 254; -BA_ "GenSigStartValueInteger" SG_ 985 IsaVLim_D_Rq 254; -BA_ "GenSigSendType" SG_ 985 IsaVLim_D_Rq 3; -BA_ "GenSigSendType" SG_ 985 SblmStopScnr_B_Stat 3; -BA_ "GenSigSendType" SG_ 985 SblmYieldScnr_B_Stat 3; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IsaVLimUnit_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 985 IsaVLimUnit_D_Rq 1; -BA_ "GenSigSendType" SG_ 985 IsaVLimUnit_D_Rq 3; -BA_ "GenSigSendType" SG_ 985 AdbDividedRoad_B_Stat 3; -BA_ "GenSigSendType" SG_ 985 LcwaMsgTxt_D_Stat 3; -BA_ "GenSigSendType" SG_ 985 AdbDrvSide_B_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrDsplyOp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrDsplyOp_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrFeatNoRq 1; -BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrFeatNoRq 1; -BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrFeatConfigRq 1; -BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrFeatConfigRq 1; -BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrPersIndex_D_Rq 1; -BA_ "GenSigStartValue" SG_ 992 MsgCntrPersIndex_D_Rq 4; -BA_ "GenSigStartValueInteger" SG_ 992 MsgCntrPersIndex_D_Rq 4; -BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrPersIndex_D_Rq 1; -BA_ "GenSigSendType" SG_ 2612019416 PARSEDPhysGWM_ECG2toPCM 3; -BA_ "ECGUsedTxSignal" SG_ 2612019416 PARSEDPhysGWM_ECG2toPCM 1; -BA_ "UsedOnPgmDBC" SG_ 943 VehVActlAdas_D_Qf 1; -BA_ "MetaData" SG_ 943 VehVActlAdas_D_Qf 1; -BA_ "GenSigStartValue" SG_ 943 VehVActlAdas_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 943 Veh_V_RqLsc 1; -BA_ "UsedOnPgmDBC" SG_ 943 Veh_V_ActlAdas 1; -BA_ "GenSigStartValue" SG_ 943 AdasLcDistToObj_L_Actl 4094; -BA_ "UsedOnPgmDBC" SG_ 515 PtIgnSwtch_No_Cs 1; -BA_ "MetaData" SG_ 515 PtIgnSwtch_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 515 PtIgnSwtch_No_Cnt 1; -BA_ "MetaData" SG_ 515 PtIgnSwtch_No_Cnt 1; -BA_ "GenSigSendType" SG_ 515 PtIgnSwtch_D_Stat 3; -BA_ "GenSigStartValue" SG_ 515 PtIgnSwtch_D_Stat 2; -BA_ "GenSigStartValueInteger" SG_ 1111 TrlrYawWActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 1111 TrlrYawWActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrYawWActl_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrYawWActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 1111 TrlrYaw_W_Actl 65534; -BA_ "GenSigStartValue" SG_ 1111 TrlrYaw_W_Actl 65534; -BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrYaw_W_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrYaw_W_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1111 TrlrHitYaw_AnRate_Actl 4094; -BA_ "GenSigStartValue" SG_ 1111 TrlrHitYaw_AnRate_Actl 4093; -BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrHitYaw_AnRate_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrHitYaw_AnRate_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrHitchYaw_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrHitchYaw_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1111 TrlrHitchYaw_An_Actl 4094; -BA_ "GenSigStartValue" SG_ 1111 TrlrHitchYaw_An_Actl 4093; -BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrHitchYaw_An_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrHitchYaw_An_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1106 TrlrSnsId_No_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1106 TrlrSnsId_No_Actl 1; -BA_ "GenSigStartValue" SG_ 982 LatCtlCrv_NoRate2_Actl 1024; -BA_ "UsedOnPgmDBC" SG_ 982 LatCtlPath_No_Cnt 1; -BA_ "ContentDependant" SG_ 982 LatCtlPath_No_Cnt 1; -BA_ "MetaData" SG_ 982 LatCtlPath_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 982 LatCtlPath_No_Cs 1; -BA_ "ContentDependant" SG_ 982 LatCtlPath_No_Cs 1; -BA_ "MetaData" SG_ 982 LatCtlPath_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 982 HandsOffCnfm_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 982 HandsOffCnfm_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlRampType_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlRampType_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlPrecision_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlPrecision_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 982 LatCtlPathOffst_L_Actl 512; -BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlPathOffst_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlPathOffst_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 982 LatCtlPath_An_Actl 1000; -BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlPath_An_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlPath_An_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 982 LatCtlCurv_No_Actl 1000; -BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlCurv_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlCurv_No_Actl 1; -BA_ "GenSigSendType" SG_ 1985 TesterPhysicalReqCMR_DSMC 3; -BA_ "GenSigSendType" SG_ 1993 TesterPhysicalResCMR_DSMC 3; -BA_ "MetaData" SG_ 1104 DrvEngageLevel_No_Cs 1; -BA_ "ContentDependant" SG_ 1104 DrvEngageLevel_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 1104 DrvEngageLevel_No_Cs 1; -BA_ "MetaData" SG_ 1104 DrvEngageLevel_No_Cnt 1; -BA_ "ContentDependant" SG_ 1104 DrvEngageLevel_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 1104 DrvEngageLevel_No_Cnt 1; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_GWOnBoardTester 255; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_GWNMProxY 255; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_GWNMProxY 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_GWNMProxY 255; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserved 255; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserved 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserved 255; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserve4 255; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserve4 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserve4 255; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserve3 255; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserve3 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserve3 255; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserve2 255; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserve2 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserve2 255; -BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMNodeId 223; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMNodeId 1; -BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMNodeId 222; -BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMControl 1; -BA_ "ECGUsedTxSignal" SG_ 2610995416 PARSEDPhysGWM_ECGtoABS 1; -BA_ "GenSigSendType" SG_ 2610995416 PARSEDPhysGWM_ECGtoABS 3; -BA_ "ECGUsedTxSignal" SG_ 2612043992 PARSEDPhysGWM_ECG2toABS 1; -BA_ "GenSigSendType" SG_ 2612043992 PARSEDPhysGWM_ECG2toABS 3; -BA_ "ECGUsedTxSignal" SG_ 2609946840 OTAPhysGWM_ECGtoABS 1; -BA_ "GenSigSendType" SG_ 2609946840 OTAPhysGWM_ECGtoABS 3; -BA_ "ECGUsedRxSignal" SG_ 2611175464 PARSEDPhysABStoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175464 PARSEDPhysABStoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224040 PARSEDPhysABS2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224040 PARSEDPhysABS2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126888 OTAPhysABStoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126888 OTAPhysABStoGWM_ECG 3; -BA_ "ECGUsedTxSignal" SG_ 2610988248 PARSEDPhysGWM_ECGtoIPMA 1; -BA_ "ECGUsedTxSignal" SG_ 2609939672 OTAPhysGWM_ECGtoIPMA 1; -BA_ "GenSigSendType" SG_ 2609939672 OTAPhysGWM_ECGtoIPMA 3; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1114 TrailCtlSwtch_B_Stat2 1; -BA_ "U_P702_MY2021_Rx" SG_ 1114 TrailCtlSwtch_B_Stat2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1116 TrlrAidSetup_D2_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1116 TrlrAidSetup_D2_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1116 TrlrAidEnbl_D2_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1116 TrlrAidEnbl_D2_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1116 TrlrTrgtToBmpr_L_Actl 0; -BA_ "U_P702_MY2021_Rx" SG_ 1116 TrlrIdType_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1116 TrlrIdType_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1116 TrlrBallToBmpr_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1116 TrlrAxleToBmpr_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1116 TrlrAnOffst_An_Mem 0; -BA_ "GenSigStartValueInteger" SG_ 1116 TrlrTrgtOffst_L_Actl 0; -BA_ "ECGUsedRxSignal" SG_ 2611175457 PARSEDPhysIPMAtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175457 PARSEDPhysIPMAtoGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2612224033 PARSEDPhysIPMA2toGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612224033 PARSEDPhysIPMA2toGWM_ECG 3; -BA_ "ECGUsedRxSignal" SG_ 2610126881 OTAPhysIPMAtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126881 OTAPhysIPMAtoGWM_ECG 3; -BA_ "UsedOnPgmDBC" SG_ 1085 ULoRgenTestMde_B_Stat 1; -BA_ "ContentDependant" SG_ 1085 ULoRgenTestMde_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 ULoRgenTestMde_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 ULoRgenTestMde_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoOvrTe_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoOvrTe_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoOvrTe_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoFalt_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoFalt_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoFalt_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoDcnnt_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoDcnnt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoDcnnt_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULo_Pc_Mx 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULo_Pc_Mx 1; -BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoComm_B_Falt 1; -BA_ "ContentDependant" SG_ 1085 PwSrcULoComm_B_Falt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoComm_B_Falt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoComm_B_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1085 PwSrcULo_I_Mx 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULo_I_Mx 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULo_I_Mx 1; -BA_ "U_P702_MY2021_Rx" SG_ 1085 PwSrcULo_I_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULo_I_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULo_I_Actl 1; -BA_ "GenSigStartValue" SG_ 981 AdbBrdrTop_An_Rq 254; -BA_ "GenSigStartValue" SG_ 981 AdbBrdrRight_L_Stat 510; -BA_ "GenSigStartValue" SG_ 981 AdbBrdrRight_An_Rq 1022; -BA_ "GenSigStartValue" SG_ 981 AdbBrdrLeft_L_Stat 510; -BA_ "GenSigStartValue" SG_ 981 AdbBrdrLeft_An_Rq 1022; -BA_ "GenSigStartValue" SG_ 981 AdbBrdrBottom_An_Rq 62; -BA_ "U_P702_MY2021_Rx" SG_ 791 EngAirFilt_B_RqReset 1; -BA_ "CrossOver_InfoCAN" SG_ 791 GpsElMdeSel_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 791 LongTermReset_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 791 DrvEffLvl_No_Stat 1; -BA_ "ECGUsedTxSignal" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 1; -BA_ "U_P702_MY2021_Rx" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 1; -BA_ "GenSigSendType" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 3; -BA_ "ECGUsedTxSignal" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 1; -BA_ "U_P702_MY2021_Rx" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 1; -BA_ "GenSigSendType" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 3; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoStat_D_Qlty 1; -BA_ "GenSigStartValue" SG_ 868 BattRgenLoStat_D_Qlty 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoSoc_Pc_Actl 1; -BA_ "GenSigStartValue" SG_ 868 BattRgenLoSoc_Pc_Actl 50; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoPulse_U_Pred 1; -BA_ "GenSigStartValue" SG_ 868 BattRgenLoPulse_U_Pred 216; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoPrtct_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoDChrg_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoDchrg_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoChrg_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoChrg_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLo_T_Est 1; -BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLo_B_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLoBalnc_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_Te_Hi 1; -BA_ "GenSigStartValue" SG_ 867 BattRgenLo_Te_Hi 45; -BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_Te_Actl 1; -BA_ "GenSigStartValue" SG_ 867 BattRgenLo_Te_Actl 85; -BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_R_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_AhRide_Actl 1; -BA_ "GenSigStartValue" SG_ 867 BattRgenLo_AhRide_Actl 12800; -BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_Ah_Actl 1; -BA_ "GenSigStartValue" SG_ 867 BattRgenLo_Ah_Actl 50; -BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoOpen_U_Actl 1; -BA_ "GenSigStartValue" SG_ 866 BattRgenLoOpen_U_Actl 180; -BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoDchrg_U_Mn 1; -BA_ "GenSigStartValue" SG_ 866 BattRgenLoDchrg_U_Mn 280; -BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoDchrg_I_Mx 1; -BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoChrg_U_Mx 1; -BA_ "GenSigStartValue" SG_ 866 BattRgenLoChrg_U_Mx 96; -BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoChrg_I_Mx 1; -BA_ "U_P702_MY2021_Rx" SG_ 865 BattRgenLo_U_Actl 1; -BA_ "GenSigStartValue" SG_ 865 BattRgenLo_U_Actl 768; -BA_ "U_P702_MY2021_Rx" SG_ 865 BattRgenLo_I_Actl 1; -BA_ "GenSigStartValue" SG_ 865 BattRgenLo_I_Actl 32768; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 1; -BA_ "U_P702_MY2021_Tx" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 1; -BA_ "ECGUsedRxSignal" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 3; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 1; -BA_ "U_P702_MY2021_Tx" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 1; -BA_ "ECGUsedRxSignal" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 3; -BA_ "GenSigSendType" SG_ 2611175441 PARSEDPhysHPCMtoGWM_ECG 3; -BA_ "GenSigSendType" SG_ 2612224017 PARSEDPhysHPCM2toGWM_ECG 3; -BA_ "U_P702_MY2021_Tx" SG_ 2610126865 OTAPhysHPCMtoGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610126865 OTAPhysHPCMtoGWM_ECG 3; -BA_ "U_P702_MY2021_Tx" SG_ 1679 UUDTSOBDMCResponse4 1; -BA_ "UsedOnPgmDBC" SG_ 1679 UUDTSOBDMCResponse4 1; -BA_ "GenSigSendType" SG_ 1679 UUDTSOBDMCResponse4 3; -BA_ "U_P702_MY2021_Tx" SG_ 1678 UUDTSOBDMCResponse3 1; -BA_ "UsedOnPgmDBC" SG_ 1678 UUDTSOBDMCResponse3 1; -BA_ "GenSigSendType" SG_ 1678 UUDTSOBDMCResponse3 3; -BA_ "U_P702_MY2021_Tx" SG_ 1677 UUDTSOBDMCResponse2 1; -BA_ "UsedOnPgmDBC" SG_ 1677 UUDTSOBDMCResponse2 1; -BA_ "GenSigSendType" SG_ 1677 UUDTSOBDMCResponse2 3; -BA_ "U_P702_MY2021_Tx" SG_ 1676 UUDTSOBDMCResponse1 1; -BA_ "UsedOnPgmDBC" SG_ 1676 UUDTSOBDMCResponse1 1; -BA_ "GenSigSendType" SG_ 1676 UUDTSOBDMCResponse1 3; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved4 255; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved3 255; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved2 255; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved1 255; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMNodeId 165; -BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMNodeId 165; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMControl 1; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1445 SOBDMC_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_GWOnBoardTester 255; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1445 SOBDMC_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1445 SOBDMC_GWNMProxy 255; -BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_GWNMProxy 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1144 WakeAlarm0_T_Rq 1; -BA_ "GenSigStartValue" SG_ 1144 WakeAlarm0_T_Rq 32767; -BA_ "GenSigStartValueInteger" SG_ 1144 WakeAlarm0_T_Rq 32767; -BA_ "U_CX727_MY2021_Tx" SG_ 1144 WakeAlarm0_B_Typ 1; -BA_ "GenSigSendType" SG_ 1144 WakeAlarm0_B_Typ 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1144 PreCondBatt_B_Actl 1; -BA_ "GenSigSendType" SG_ 1144 PreCondBatt_B_Actl 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1144 HtrnDcdcDis_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1144 HtrnDcdcDis_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 HtrnDcdcDis_B_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1144 ChrgNowEvnt_B_Stat 1; -BA_ "GenSigSendType" SG_ 1144 ChrgNowEvnt_B_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1144 CabinDrvSustn_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1144 CabinDrvSustn_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 CabinDrvSustn_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1144 BattChrgTrgtSoC_D_Rq 1; -BA_ "GenSigSendType" SG_ 1144 CabnEvapSovFront_B_Rq 3; -BA_ "WakeupSignal" SG_ 1144 CabnEvapSovFront_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 CabnEvapSovFront_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 HeatCoreSovRear_B_Rq 3; -BA_ "WakeupSignal" SG_ 1144 HeatCoreSovRear_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 HeatCoreSovRear_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 BattChlrSov_B_Rq 3; -BA_ "WakeupSignal" SG_ 1144 BattChlrSov_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 BattChlrSov_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 CabnEvapSovRear_B_Rq 3; -BA_ "WakeupSignal" SG_ 1144 CabnEvapSovRear_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 CabnEvapSovRear_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 BrkAppl_D_RqPt 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1144 BrkAppl_D_RqPt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1144 BrkAppl_D_RqPt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 BrkAppl_D_RqPt 1; -BA_ "GenSigSendType" SG_ 1144 HtrnCnnctPwr_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1144 HtrnCnnctPwr_B_Stat 1; -BA_ "GenSigSendType" SG_ 1144 PtcHtr_D_Stat 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1144 PtcHtr_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1144 PtcHtr_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 PtcHtr_D_Stat 1; -BA_ "GenSigSendType" SG_ 1144 HtrnClntFlw_D_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1144 HtrnClntFlw_D_Rq 1; -BA_ "GenSigSendType" SG_ 1144 BattTracDrvSustn_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1144 BattTracDrvSustn_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1144 BattTracDrvSustn_B_Rq 1; -BA_ "GenSigSendType" SG_ 1144 BattTracClntVlv_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1144 BattTracClntVlv_B_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1141 OfbChrgSetSync_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1141 OfbChrgSetSync_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1141 PtRmtRprt_D_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 1141 PtRmtRprt_D_Rq 1; -BA_ "WakeupSignal" SG_ 1141 PtRmtRprt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1141 MtrTrac2_Tq_Actl 4095; -BA_ "GenSigStartValue" SG_ 1141 MtrTrac2_Tq_Actl 4095; -BA_ "U_P702_MY2021_Tx" SG_ 1141 MtrTrac2_Tq_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1141 MtrTrac2_Tq_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1141 NtfctnConflict1_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1141 NtfctnConflict1_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1140 RgenEvntLvl_Pc_Dsply 1; -BA_ "GenSigStartValue" SG_ 1140 RgenEvntLvl_Pc_Dsply 1022; -BA_ "GenSigStartValueInteger" SG_ 1140 RgenEvntLvl_Pc_Dsply 1023; -BA_ "U_CX727_MY2021_Tx" SG_ 1140 BrkEvntComplt_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1140 PreCondStat_D_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1140 PreCondStat_D_Dsply 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1139 ActChrgStrtYr_No2_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtYr_No2_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrtYr_No2_Actl 0; -BA_ "U_P702_MY2021_Tx" SG_ 1139 BattChrgTrgtLMax_T_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtYr_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrtYr_No_Actl 0; -BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtYr_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtMin_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtMin_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtHr_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtHr_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtDay_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1139 ActChrgStrtDay_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrtDay_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtDay_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrMnth_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1139 ActChrgStrMnth_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrMnth_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrMnth_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndYr_No2_Actl 0; -BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndYr_No2_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1138 ActChrgEndYr_No2_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1138 BattChrgTrgtLMin_T_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndYr_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndYr_No_Actl 0; -BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndYr_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndMnth_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1138 ActChrgEndMnth_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndMnth_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndMnth_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndMin_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndMin_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndHr_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndHr_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndDay_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1138 ActChrgEndDay_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndDay_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndDay_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 Mtr2Aout_W_ActlMntr 1; -BA_ "GenSigStartValue" SG_ 1089 Mtr2Aout_W_ActlMntr 1023; -BA_ "GenSigStartValueInteger" SG_ 1089 Mtr2Aout_W_ActlMntr 1023; -BA_ "ECGUsedRxSignal" SG_ 1089 Mtr2Aout_W_ActlMntr 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 Inv1_Te_Actl 1; -BA_ "GenSigStartValue" SG_ 1089 Inv1_Te_Actl 254; -BA_ "GenSigStartValueInteger" SG_ 1089 Inv1_Te_Actl 254; -BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2Coil_Te_Actl 1; -BA_ "GenSigStartValue" SG_ 1089 MtrTrac2Coil_Te_Actl 254; -BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2Coil_Te_Actl 254; -BA_ "ECGUsedRxSignal" SG_ 1089 MtrTrac2Coil_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2_U_Actl 1; -BA_ "GenSigStartValue" SG_ 1089 MtrTrac2_U_Actl 1023; -BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2_U_Actl 1023; -BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2Falt_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2TeAlrm_B_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1089 MtrTrac2TeAlrm_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 Mtr2CntlTeAlrm_B_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1089 Mtr2CntlTeAlrm_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2Inv_Te_Actl 1; -BA_ "GenSigStartValue" SG_ 1089 MtrTrac2Inv_Te_Actl 214; -BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2Inv_Te_Actl 214; -BA_ "ECGUsedRxSignal" SG_ 1089 MtrTrac2Inv_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2_I_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2_I_Actl 10000; -BA_ "U_CX727_MY2021_Tx" SG_ 1088 ChrgTMatch_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1088 ChrgStat_D2_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1088 ChrgStat_D2_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondRecirc_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondMode2_D_Rq 1; -BA_ "ContentDependant" SG_ 1088 HvacPrecondMode2_D_Rq 1; -BA_ "WakeupSignal" SG_ 1088 HvacPrecondMode2_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondBlwr2_D_Rq 1; -BA_ "ContentDependant" SG_ 1088 HvacPrecondBlwr2_D_Rq 1; -BA_ "WakeupSignal" SG_ 1088 HvacPrecondBlwr2_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondAC_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecond_Te_Rq 1; -BA_ "GenSigStartValue" SG_ 1088 HvacPrecond_Te_Rq 2; -BA_ "GenSigStartValueInteger" SG_ 1088 HvacPrecond_Te_Rq 2; -BA_ "U_P702_MY2021_Tx" SG_ 1088 BattChrgInhbt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1040 ElCmprEnbl_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1040 ElCmprEnbl_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1040 ElCmprEnbl_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1040 ElCmpr_N_Rq 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTElement_B_Dsply 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTElement_B_Dsply 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1016 ChrgGoTElement_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgLocIdCurnt_D_Uns 1; -BA_ "GenSigSendType" SG_ 1016 ChrgLocIdCurnt_D_Uns 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgLocIdCurnt_D_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTTouchEnbl_B_Rq 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTTouchEnbl_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTTouch_B_Stat 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTTouch_B_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTTouch_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTPrcond_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTPrcond_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTNext_D_Stat 1; -BA_ "MetaData" SG_ 1016 ChrgGoTNext_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1016 ChrgGoTNext_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1016 ChrgGoTNext_D_Stat 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTNext_D_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTNext_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTMnte_D_Stat 1; -BA_ "MetaData" SG_ 1016 ChrgGoTMnte_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1016 ChrgGoTMnte_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1016 ChrgGoTMnte_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTMnte_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTHr_T_Stat 1; -BA_ "GenSigStartValue" SG_ 1016 ChrgGoTHr_T_Stat 30; -BA_ "GenSigStartValueInteger" SG_ 1016 ChrgGoTHr_T_Stat 30; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTHr_T_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTExtHtrEnbl_B_Rq 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTExtHtrEnbl_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTExtHtr_B_Stat 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTExtHtr_B_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTExtHtr_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTElement_D_Stat 1; -BA_ "MetaData" SG_ 1016 ChrgGoTElement_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1016 ChrgGoTElement_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1016 ChrgGoTElement_D_Stat 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTElement_D_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTElement_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTAllOn_B_Stat 1; -BA_ "GenSigSendType" SG_ 1016 ChrgGoTAllOn_B_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTAllOn_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgToPcWkndSav_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1013 ChrgToPcWkndSav_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgToPcWkndSav_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgToPcWkdySav_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1013 ChrgToPcWkdySav_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgToPcWkdySav_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgProgIdSaved_D_Stat 1; -BA_ "MetaData" SG_ 1013 ChrgProgIdSaved_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1013 ChrgProgIdSaved_D_Stat 1; -BA_ "GenSigSendType" SG_ 1013 ChrgProgIdSaved_D_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgProgIdSaved_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgNowEnbl_B_Saved 1; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgNowEnbl_B_Saved 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgLocIdUnsAck_B_Stat 1; -BA_ "GenSigSendType" SG_ 1013 ChrgLocIdUnsAck_B_Stat 3; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgLocIdUnsAck_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgLocIdCurnt_D_Sav 1; -BA_ "MetaData" SG_ 1013 ChrgLocIdCurnt_D_Sav 1; -BA_ "GenSigSendType" SG_ 1013 ChrgLocIdCurnt_D_Sav 3; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgLocIdCurnt_D_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgPrflWknd_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgPrflWknd_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgPrflWkdy_No_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 1013 ChrgPrflWkdy_No_Actl 1; -BA_ "GenSigSendType" SG_ 1012 ChrgNowCurnt_B_Dsply 3; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgNowCurnt_B_Dsply 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1012 ChrgNowCurnt_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgNowCurnt_B_Dsply 1; -BA_ "GenSigSendType" SG_ 1012 ChrgLocSaved_B_Dsply 3; -BA_ "UsedOnPgmDBC" SG_ 1012 ChrgLocSaved_B_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocSaved_B_Dsply 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1012 ChrgLocSaved_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocSaved_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLongPostv_B_Sav 1; -BA_ "UsedOnPgmDBC" SG_ 1012 ChrgLocLongPostv_B_Sav 1; -BA_ "CrossOver_InfoCAN" SG_ 1012 ChrgLocLongPostv_B_Sav 1; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLongPostv_B_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLongFrct_An_Sav 1; -BA_ "GenSigStartValue" SG_ 1012 ChrgLocLongFrct_An_Sav 1048575; -BA_ "GenSigStartValueInteger" SG_ 1012 ChrgLocLongFrct_An_Sav 1048575; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLongFrct_An_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLongDeg_An_Sav 1; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLongDeg_An_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLattPostv_B_Sav 1; -BA_ "UsedOnPgmDBC" SG_ 1012 ChrgLocLattPostv_B_Sav 1; -BA_ "CrossOver_InfoCAN" SG_ 1012 ChrgLocLattPostv_B_Sav 1; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLattPostv_B_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLattFrct_An_Sav 1; -BA_ "GenSigStartValue" SG_ 1012 ChrgLocLattFrct_An_Sav 1048575; -BA_ "GenSigStartValueInteger" SG_ 1012 ChrgLocLattFrct_An_Sav 1048575; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLattFrct_An_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLattDeg_An_Sav 1; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLattDeg_An_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocId_D_Sav 1; -BA_ "GenSigSendType" SG_ 1012 ChrgLocId_D_Sav 3; -BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocId_D_Sav 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLongPostv_B_Uns 1; -BA_ "UsedOnPgmDBC" SG_ 1011 ChrgLocLongPostv_B_Uns 1; -BA_ "CrossOver_InfoCAN" SG_ 1011 ChrgLocLongPostv_B_Uns 1; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLongPostv_B_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLongFrct_An_Uns 1; -BA_ "GenSigStartValue" SG_ 1011 ChrgLocLongFrct_An_Uns 1048575; -BA_ "GenSigStartValueInteger" SG_ 1011 ChrgLocLongFrct_An_Uns 1048575; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLongFrct_An_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLongDeg_An_Uns 1; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLongDeg_An_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLattPostv_B_Uns 1; -BA_ "UsedOnPgmDBC" SG_ 1011 ChrgLocLattPostv_B_Uns 1; -BA_ "CrossOver_InfoCAN" SG_ 1011 ChrgLocLattPostv_B_Uns 1; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLattPostv_B_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLattFrct_An_Uns 1; -BA_ "GenSigStartValue" SG_ 1011 ChrgLocLattFrct_An_Uns 1048575; -BA_ "GenSigStartValueInteger" SG_ 1011 ChrgLocLattFrct_An_Uns 1048575; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLattFrct_An_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLattDeg_An_Uns 1; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLattDeg_An_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocId_D_Uns 1; -BA_ "GenSigSendType" SG_ 1011 ChrgLocId_D_Uns 3; -BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocId_D_Uns 1; -BA_ "U_P702_MY2021_Tx" SG_ 871 BattElecPerf_D_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 871 BattElecPerf_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 871 BattChrgTrgtLPt_T_Est 1; -BA_ "ECGUsedRxSignal" SG_ 871 BattChrgTrgtLPt_T_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 871 BattChrgTrgSocPt_T_Est 1; -BA_ "ECGUsedRxSignal" SG_ 871 BattChrgTrgSocPt_T_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 871 BattChrgCmpltPt_T_Est 1; -BA_ "ECGUsedRxSignal" SG_ 871 BattChrgCmpltPt_T_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 786 RgenTrip_Pc_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 786 RgenTrip_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 786 RgenTrip_Pc_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 786 RgenTrip_L_Dsply 1; -BA_ "GenSigStartValue" SG_ 786 RgenTrip_L_Dsply 65535; -BA_ "GenSigStartValueInteger" SG_ 786 RgenTrip_L_Dsply 65535; -BA_ "CrossOver_InfoCAN" SG_ 786 RgenTrip_L_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 786 RgenTrip_L_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 786 ChrgStat_D_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 786 ChrgStat_D_Dsply 1; -BA_ "UsedOnPgmDBC" SG_ 72 immoTarget2Status 1; -BA_ "UsedOnPgmDBC" SG_ 72 immoTarget2Data 1; -BA_ "UsedOnPgmDBC" SG_ 72 immoTarget2Cmd 1; -BA_ "U_P702_MY2021_Rx" SG_ 912 CabnEvapSovFront_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 912 BattChlrSov_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 912 BattTracClntVlv_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 874 BattTracShrtGrnd_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 874 BattTracShrtBatt_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 874 BattTracOpnCirct_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 874 BattChlrShrtGrnd_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 874 BattChlrShrtBatt_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 874 BattChlrOpnCirct_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 651 TelematicsSrvc_D_St 1; -BA_ "ECGUsedTxSignal" SG_ 651 OfbChrgSetSync_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgToPcWknd_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgToPcWknd_D_Actl 1; -BA_ "ECGUsedTxSignal" SG_ 529 OnbChrgToPcWknd_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgToPcWkdy_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgToPcWkdy_D_Actl 1; -BA_ "ECGUsedTxSignal" SG_ 529 OnbChrgToPcWkdy_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgSetNow_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgSetDelete_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgSetDelete_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgPrflWknd_No_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgPrflWkdy_No_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgPrflUpdate_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgPrflUpdate_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgLocIdUns_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgLocIdUns_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; -BA_ "MetaData" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 66 immoControlData_T2 1; -BA_ "ContentDependant" SG_ 66 immoControlData_T2 1; -BA_ "U_P702_MY2021_Rx" SG_ 66 immoControlCmd_T2 1; -BA_ "ContentDependant" SG_ 66 immoControlCmd_T2 1; -BA_ "U_P702_MY2021_Rx" SG_ 2610971864 PARSEDPhysGWM_ECGtoHPCM 1; -BA_ "GenSigSendType" SG_ 2610971864 PARSEDPhysGWM_ECGtoHPCM 3; -BA_ "ECGUsedTxSignal" SG_ 2610971864 PARSEDPhysGWM_ECGtoHPCM 1; -BA_ "ECGUsedTxSignal" SG_ 2612002008 PARSEDFuncGWM_ECG 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2612002008 PARSEDFuncGWM_ECG 1; -BA_ "U_P702_MY2021_Rx" SG_ 2612002008 PARSEDFuncGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2612002008 PARSEDFuncGWM_ECG 3; -BA_ "U_P702_MY2021_Rx" SG_ 2609923288 OTAPhysGWM_ECGtoHPCM 1; -BA_ "GenSigSendType" SG_ 2609923288 OTAPhysGWM_ECGtoHPCM 3; -BA_ "ECGUsedTxSignal" SG_ 2609923288 OTAPhysGWM_ECGtoHPCM 1; -BA_ "ECGUsedTxSignal" SG_ 2610953432 OTAFuncGWM_ECG 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2610953432 OTAFuncGWM_ECG 1; -BA_ "U_P702_MY2021_Rx" SG_ 2610953432 OTAFuncGWM_ECG 1; -BA_ "GenSigSendType" SG_ 2610953432 OTAFuncGWM_ECG 3; -BA_ "GenSigSendType" SG_ 2022 TesterPhysicalReqSOBDMC 3; -BA_ "U_P702_MY2021_Rx" SG_ 2022 TesterPhysicalReqSOBDMC 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Vdop 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Speed 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Sat_num_in_view 1; -BA_ "U_P702_MY2021_Rx" SG_ 1124 GPS_Sat_num_in_view 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_MSL_altitude 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Heading 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Hdop 1; -BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_dimension 1; -BA_ "U_P702_MY2021_Rx" SG_ 1124 GPS_dimension 1; -BA_ "U_P702_MY2021_Rx" SG_ 1119 CoolFanDcdc_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1119 DcdcClntFlw_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkYr_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkScnd_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkMnte_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkHr_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkDay_No_Actl 1; -BA_ "GenSigSendType" SG_ 1990 TesterPhysicalReqSODR 3; -BA_ "GenSigSendType" SG_ 1892 TesterPhysicalReqCCM 3; -BA_ "GenSigSendType" SG_ 1798 TesterPhysicalReqIPMA 3; -BA_ "GenSigStartValueInteger" SG_ 1123 GpsUtcYr_No_Actl 0; -BA_ "CrossOver_InfoCAN" SG_ 1123 GpsUtcYr_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1123 GpsUtcMnth_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1123 GpsUtcMnth_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GpsUtcMnth_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1123 GpsUtcDay_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1123 GpsUtcDay_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GpsUtcDay_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_UTC_seconds 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_UTC_minutes 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_UTC_hours 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_Pdop 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_Compass_direction 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_Actual_vs_Infer_pos 1; -BA_ "CrossOver_InfoCAN" SG_ 1123 Gps_B_Falt 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GpsHsphLongEast_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GpsHsphLattSth_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Longitude_Minutes 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Longitude_Min_dec 1; -BA_ "GenSigStartValueInteger" SG_ 1122 GPS_Longitude_Degrees 179; -BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Longitude_Degrees 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Latitude_Minutes 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Latitude_Min_dec 1; -BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Latitude_Degrees 1; -BA_ "GenSigStartValue" SG_ 1003 PersNoPos_D_Actl 4; -BA_ "GenSigStartValueInteger" SG_ 1003 PersNoPos_D_Actl 4; -BA_ "CrossOver_InfoCAN" SG_ 1003 PersNoPos_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1003 PersSetupRestr_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1003 PersSetupAccessCtrl 1; -BA_ "CrossOver_InfoCAN" SG_ 1003 PersSetup_No_Actl 1; -BA_ "GenSigStartValue" SG_ 1003 PersConflict_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1003 PersConflict_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1003 PersConflict_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1003 AssocConfirm_D_Actl 1; -BA_ "MetaData" SG_ 1003 RecallEvent_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 1003 RecallEvent_No_Cnt 1; -BA_ "GenSigStartValue" SG_ 1003 PersNo_D_Actl 4; -BA_ "GenSigStartValueInteger" SG_ 1003 PersNo_D_Actl 4; -BA_ "CrossOver_InfoCAN" SG_ 1003 PersNo_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 994 PersStore_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 994 Pers4OptIn_B_Stats 1; -BA_ "WakeupSignal" SG_ 994 Pers4OptIn_B_Stats 1; -BA_ "CrossOver_InfoCAN" SG_ 994 Pers3OptIn_B_Stats 1; -BA_ "WakeupSignal" SG_ 994 Pers3OptIn_B_Stats 1; -BA_ "CrossOver_InfoCAN" SG_ 994 Pers2OptIn_B_Stats 1; -BA_ "WakeupSignal" SG_ 994 Pers2OptIn_B_Stats 1; -BA_ "CrossOver_InfoCAN" SG_ 994 Pers1OptIn_B_Stats 1; -BA_ "WakeupSignal" SG_ 994 Pers1OptIn_B_Stats 1; -BA_ "GenSigStartValue" SG_ 994 CtrStkPersIndex_D_Actl 4; -BA_ "GenSigStartValueInteger" SG_ 994 CtrStkPersIndex_D_Actl 4; -BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkPersIndex_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkFeatNoActl 1; -BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkFeatConfigActl 1; -BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkDsplyOp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 778 PrkAidFront_D_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 778 Cta_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 778 Cta_D_Rq 1; -BA_ "GenSigStartValue" SG_ 778 Cta_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 778 PrkAidRear_D_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 778 Sod_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 778 Sod_D_Rq 2; -BA_ "GenSigStartValue" SG_ 778 Sod_D_Rq 2; -BA_ "WakeupSignal" SG_ 549 Power_Up_Chime_Modules 1; -BA_ "WakeupSignal" SG_ 551 Cntr_Plg_Mode_Cmd 1; -BA_ "GenSigStartValue" SG_ 551 Btt_L_Actl2 30; -BA_ "GenSigStartValueInteger" SG_ 551 Btt_L_Actl2 126; -BA_ "WakeupSignal" SG_ 551 Em_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1010 CbdblActv_B_RqAdas 1; -BA_ "UsedOnPgmDBC" SG_ 1010 CbdblActv_B_RqAdas 1; -BA_ "U_P702_MY2021_Rx" SG_ 1010 LightRng_L_Max 1; -BA_ "U_P702_MY2021_Rx" SG_ 1010 LightPathOffst_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1010 LightPathOffst_L_Actl 512; -BA_ "U_P702_MY2021_Rx" SG_ 1010 LightPath_An_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1010 LightPath_An_Actl 1000; -BA_ "U_P702_MY2021_Rx" SG_ 1010 LightCurv_NoRate_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1010 LightCurv_NoRate_Actl 4096; -BA_ "U_P702_MY2021_Rx" SG_ 1010 LightCurv_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1010 LightCurv_No_Actl 1000; -BA_ "GenSigStartValue" SG_ 1070 BattULo24_Te_Actl 127; -BA_ "GenSigStartValueInteger" SG_ 1070 BattULo24_Te_Actl 127; -BA_ "UsedOnPgmDBC" SG_ 1070 BattULo24_Te_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24State_D_Qlty 1; -BA_ "GenSigStartValue" SG_ 1070 BattULo24State_D_Qlty 1; -BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24Soc_Pc_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1070 BattULo24Soc_Pc_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24_I_Actl 1; -BA_ "GenSigStartValue" SG_ 1070 BattULo24_I_Actl 8192; -BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24_B_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24_Ah_DeltaRide 1; -BA_ "GenSigStartValue" SG_ 1070 BattULo24_Ah_DeltaRide 12800; -BA_ "GenSigStartValueInteger" SG_ 1186 SelDrvMdeAwd2_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1186 SelDrvMdeAwd2_D_Stat 31; -BA_ "U_CX727_MY2021_Rx" SG_ 1186 SelDrvMdeAwd2_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1186 SelDrvMdeAwd2_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1186 SelDrvMdeAwd2_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffLckMsg_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1186 RearDiffLckLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffLckLamp_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1186 RearDiffLck_Tq_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1186 RearDiffLck_Tq_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffLck_Tq_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1186 RearDiffFalt_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffFalt_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1186 LsdSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1186 LsdSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdSys_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdSys_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdSys_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdStat_D_RqDsply 1; -BA_ "ContentDependant" SG_ 611 AwdStat_D_RqDsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdStat_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdStat_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdStat_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdLck_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 611 AwdLck_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdLck_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdLck_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdLck_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdSrvcRqd_B_Rq 1; -BA_ "ContentDependant" SG_ 611 AwdSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdSrvcRqd_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 NtrlTowAvail_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdLck_Tq_Rq 1; -BA_ "ContentDependant" SG_ 611 AwdLck_Tq_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdLck_Tq_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdLck_Tq_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 611 TrnAout_Tq_RqMx 1; -BA_ "GenSigStartValueInteger" SG_ 611 TrnAout_Tq_RqMx 8191; -BA_ "GenSigStartValue" SG_ 611 TrnAout_Tq_RqMx 8191; -BA_ "U_P702_MY2021_Rx" SG_ 611 TrnAout_Tq_RqMx 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 TrnAout_Tq_RqMx 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 TrnAout_Tq_RqMx 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdOffRoadMode_D_Stats 1; -BA_ "UsedOnPgmDBC" SG_ 611 AwdOffRoadMode_D_Stats 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdOffRoadMode_D_Stats 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdLoLamp_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdLoLamp_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdHiLamp_D_RqDsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdHiLamp_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdHiLamp_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdAutoLamp_D_RqDsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdAutoLamp_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdAutoLamp_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 611 Awd2wdLamp_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 Awd2wdLamp_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 611 AwdRnge_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 611 AwdRnge_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 611 AwdRnge_D_Actl 7; -BA_ "GenSigStartValue" SG_ 611 AwdRnge_D_Actl 7; -BA_ "U_P702_MY2021_Rx" SG_ 611 AwdRnge_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdRnge_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 611 AwdRnge_D_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 611 AwdRnge_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1461 PSCM_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_GWOnBoardTester 255; -BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_GWOnBoardTester 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_GWOnBoardTester 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1461 PSCM_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_GWNMProxy 255; -BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_GWNMProxy 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_GWNMProxy 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_GWNMProxy 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved4 255; -BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_AutoSarNMReserved4 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved4 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved3 255; -BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_AutoSarNMReserved3 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved3 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved2 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved2 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved1 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved1 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMNodeId 181; -BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMNodeId 181; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMNodeId 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMControl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMControl 1; -BA_ "GenSigStartValueInteger" SG_ 1047 TrlrAnOffst_An2_Calc 128; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAnOffst_An2_Calc 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAn_An_WarnCalc 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAn_An_MxCalc 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidTrlrId_No_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidTrgtId_No_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidSetup_D2_Stat 1; -BA_ "GenSigSendType" SG_ 1047 TrlrAidEnbl_D2_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 1047 TrlrAidEnbl_D2_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1047 TrlrAidEnbl_D2_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidEnbl_D2_Stat 1; -BA_ "GenSigSendType" SG_ 1047 TrlrAidMsgTxt_D2_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 1047 TrlrAidMsgTxt_D2_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidMsgTxt_D2_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1047 EsaOn_B_Stat 1; -BA_ "GenSigStartValue" SG_ 1047 EsaOn_B_Stat 1; -BA_ "GenSigSendType" SG_ 1047 EsaOn_B_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1047 EsaOn_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 EsaOn_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 HitchToTrlrAxle_L_Calc 1; -BA_ "GenSigSendType" SG_ 1047 SelDrvMdeSte_D_Stat 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1047 SelDrvMdeSte_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1047 SelDrvMdeSte_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1047 SelDrvMdeSte_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1047 SelDrvMdeSte_D_Stat 1; -BA_ "GenSigSendType" SG_ 972 LatCtlSte_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 972 LatCtlSte_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LatCtlSte_D_Stat 1; -BA_ "GenSigSendType" SG_ 972 LatCtlLim_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 972 LatCtlLim_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LatCtlLim_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 972 LatCtlCpbltyDStat_No_Cnt 1; -BA_ "MetaData" SG_ 972 LatCtlCpbltyDStat_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 972 LatCtlCpbltyDStat_No_Cs 1; -BA_ "MetaData" SG_ 972 LatCtlCpbltyDStat_No_Cs 1; -BA_ "GenSigStartValueInteger" SG_ 972 TrlrAn_An_TrgtCalc 128; -BA_ "U_P702_MY2021_Tx" SG_ 972 TrlrAn_An_TrgtCalc 1; -BA_ "U_P702_MY2021_Rx" SG_ 972 LsmcBrkDecelEnbl_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LsmcBrkDecelEnbl_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; -BA_ "GenSigStartValue" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; -BA_ "U_CX727_MY2021_Tx" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; -BA_ "CrossOver_InfoCAN" SG_ 972 LaHandsOff_B_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 972 LaHandsOff_B_Actl 1; -BA_ "GenSigStartValue" SG_ 972 LaHandsOff_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 972 LaHandsOff_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LaHandsOff_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 972 LaActDeny_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 972 LaActDeny_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LaActDeny_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 972 LaActAvail_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 972 LaActAvail_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LaActAvail_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 972 LsmcBrk_Tq_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 972 LsmcBrk_Tq_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 130 TrlrHitchLamp_D_Rqst 1; -BA_ "UsedOnPgmDBC" SG_ 130 TrlrHitchLamp_D_Rqst 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 TrlrHitchLamp_D_Rqst 1; -BA_ "CrossOver_InfoCAN" SG_ 130 VehVTrlrAid_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 130 VehVTrlrAid_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 130 VehVTrlrAid_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 VehVTrlrAid_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 130 Veh_V_RqMxTrlrAid 255; -BA_ "GenSigStartValue" SG_ 130 Veh_V_RqMxTrlrAid 255; -BA_ "U_P702_MY2021_Rx" SG_ 130 Veh_V_RqMxTrlrAid 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 130 Veh_V_RqMxTrlrAid 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 Veh_V_RqMxTrlrAid 1; -BA_ "UsedOnPgmDBC" SG_ 130 DrvSteActv_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 130 DrvSteActv_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 DrvSteActv_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 130 DrvSte_Tq_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 130 DrvSte_Tq_Actl 128; -BA_ "U_P702_MY2021_Rx" SG_ 130 DrvSte_Tq_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 DrvSte_Tq_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SteMdule_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SteMdule_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 130 SteMdule_U_Meas 1; -BA_ "GenSigStartValueInteger" SG_ 130 SteMdule_U_Meas 255; -BA_ "GenSigStartValue" SG_ 130 SteMdule_U_Meas 255; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SteMdule_U_Meas 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SteMdule_U_Meas 1; -BA_ "UsedOnPgmDBC" SG_ 130 SteMdule_I_Est 1; -BA_ "GenSigStartValueInteger" SG_ 130 SteMdule_I_Est 4095; -BA_ "GenSigStartValue" SG_ 130 SteMdule_I_Est 4095; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SteMdule_I_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SteMdule_I_Est 1; -BA_ "CrossOver_InfoCAN" SG_ 130 EPAS_Failure 1; -BA_ "UsedOnPgmDBC" SG_ 130 EPAS_Failure 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 EPAS_Failure 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 EPAS_Failure 1; -BA_ "UsedOnPgmDBC" SG_ 130 SteeringColumnTorque 1; -BA_ "GenSigStartValueInteger" SG_ 130 SteeringColumnTorque 254; -BA_ "GenSigStartValue" SG_ 130 SteeringColumnTorque 254; -BA_ "U_CX727_MY2021_Rx" SG_ 130 SteeringColumnTorque 1; -BA_ "U_P702_MY2021_Rx" SG_ 130 SteeringColumnTorque 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SteeringColumnTorque 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SteeringColumnTorque 1; -BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat6 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat6 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat6 1; -BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat5 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat5 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat5 1; -BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat4 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat4 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat4 1; -BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat3 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat3 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat3 1; -BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat2 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat2 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat2 1; -BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat1 1; -BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat1 1; -BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat1 1; -BA_ "UsedOnPgmDBC" SG_ 126 StePw_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 126 StePw_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePw_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 126 StePw_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "GenSigStartValueInteger" SG_ 126 StePinRelInit_An_Sns 65535; -BA_ "ContentDependant" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "GenSigStartValue" SG_ 126 StePinRelInit_An_Sns 65535; -BA_ "U_P702_MY2021_Rx" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "U_P702_MY2021_Tx" SG_ 126 StePinRelInit_An_Sns 1; -BA_ "CrossOver_InfoCAN" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "GenSigStartValue" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "ECGUsedRxSignal" SG_ 126 StePinCompAnEst_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 126 StePinComp_An_Est 16000; -BA_ "U_P702_MY2021_Rx" SG_ 126 StePinComp_An_Est 1; -BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinComp_An_Est 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePinComp_An_Est 1; -BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinComp_An_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 126 StePinComp_An_Est 1; -BA_ "ECGUsedRxSignal" SG_ 126 StePinComp_An_Est 1; -BA_ "UsedOnPgmDBC" SG_ 126 StePinAn_No_Cs 1; -BA_ "ContentDependant" SG_ 126 StePinAn_No_Cs 1; -BA_ "MetaData" SG_ 126 StePinAn_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 126 StePinAn_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinAn_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinAn_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 126 StePinAn_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 126 StePinAn_No_Cnt 1; -BA_ "MetaData" SG_ 126 StePinAn_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 126 StePinAn_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinAn_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinAn_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 126 StePinAn_No_Cnt 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1430 ABS_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_GWOnBoardTester 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_GWOnBoardTester 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1430 ABS_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_GWNMProxy 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_GWNMProxy 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_GWNMProxy 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved4 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved4 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved3 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved3 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved2 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved2 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved1 255; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved1 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMNodeId 150; -BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMNodeId 150; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMNodeId 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMControl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMControl 1; -BA_ "GenSigStartValueInteger" SG_ 1200 HsaTrnAout_Tq_Rq 32768; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 HsaTrnAout_Tq_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 HsaTrnAout_Tq_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1200 BrkBstrVac_P_Actl 127; -BA_ "GenSigStartValue" SG_ 1200 BrkBstrVac_P_Actl 127; -BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkBstrVac_P_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkBstrVac_P_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkBstrVac_P_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkBstrVac_P_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1200 YawStabilityIndex 256; -BA_ "U_CX727_MY2021_Rx" SG_ 1200 YawStabilityIndex 1; -BA_ "U_P702_MY2021_Rx" SG_ 1200 YawStabilityIndex 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 YawStabilityIndex 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 YawStabilityIndex 1; -BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkTot_Tq_RqDrv 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkTot_Tq_RqDrv 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkTot_Tq_RqDrv 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkTot_Tq_RqDrv 1; -BA_ "MetaData" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; -BA_ "MetaData" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1200 HsaStat_D_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1200 HsaStat_D_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos12_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos12_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos12_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos12_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos12_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos11_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos11_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos11_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos11_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos11_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos10_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos10_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos10_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos10_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos10_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos09_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos09_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos09_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos09_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos09_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos08_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos08_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos08_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos08_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos08_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos07_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos07_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos07_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos07_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos07_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos06_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos06_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos06_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos06_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos06_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos05_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos05_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos05_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos05_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos05_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos04_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos04_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos04_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos04_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos04_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos03_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos03_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos03_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos03_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos03_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos02_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos02_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos02_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos02_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos02_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos01_D_Stat 31; -BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos01_D_Stat 31; -BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos01_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos01_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos01_D_Stat 1; -BA_ "GenSigSendType" SG_ 1056 AutoEpbMsgTxt_D_Rq 3; -BA_ "GenSigSendType" SG_ 1056 AutoEpbDsply_D_Stat 3; -BA_ "GenSigSendType" SG_ 1056 AutoEpbButtnOn_B_Stat 3; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos12_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos12_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos12_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos11_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos11_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos11_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos10_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos10_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos10_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos09_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos09_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos09_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos08_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos08_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos08_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos07_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos07_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos07_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos06_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos06_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos06_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos05_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos05_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos05_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos04_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos04_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos04_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos03_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos03_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos03_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos02_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos02_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos02_B_Avail 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos01_B_Avail 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos01_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos01_B_Avail 1; -BA_ "GenSigStartValueInteger" SG_ 1056 ActvDrvMde_D2_Stat 31; -BA_ "GenSigStartValue" SG_ 1056 ActvDrvMde_D2_Stat 31; -BA_ "GenSigSendType" SG_ 1056 ActvDrvMde_D2_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 ActvDrvMde_D2_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 ActvDrvMde_D2_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1056 SelDrvMde_D2_Rq 31; -BA_ "GenSigStartValue" SG_ 1056 SelDrvMde_D2_Rq 31; -BA_ "GenSigSendType" SG_ 1056 SelDrvMde_D2_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMde_D2_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMde_D2_Rq 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdePt_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 1056 SelDrvMdePt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1056 SelDrvMdePt_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePt_D_Rq 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMdeMsgTxt_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdeMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdeMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 1056 SelDrvMde_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMde_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMde_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1056 AwdMde_D_RqBrk 5; -BA_ "GenSigStartValue" SG_ 1056 AwdMde_D_RqBrk 5; -BA_ "GenSigSendType" SG_ 1056 AwdMde_D_RqBrk 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1056 AwdMde_D_RqBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 1056 AwdMde_D_RqBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 AirDamUp_B_RqBrk 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 AirDamUp_B_RqBrk 1; -BA_ "U_P702_MY2021_Rx" SG_ 1054 AirDamUp_B_RqBrk 1; -BA_ "GenSigSendType" SG_ 1054 AirDamUp_B_RqBrk 3; -BA_ "GenSigSendType" SG_ 1054 RbaBrk_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 RbaBrk_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 RbaBrk_D_Stat 1; -BA_ "GenSigSendType" SG_ 1054 SelDrvMdeChassis2_D_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1054 SelDrvMdeChassis2_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1054 SelDrvMdeChassis2_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 SelDrvMdeChassis2_D_Rq 1; -BA_ "GenSigSendType" SG_ 1054 TrailCtl_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 1054 TrailCtl_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 TrailCtl_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 TrailCtl_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 TrailCtl_D_Stat 1; -BA_ "GenSigSendType" SG_ 1054 TrailCtlMsgTxt_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 TrailCtlMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 TrailCtlMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 1054 BrkBstrVac_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 1054 BrkBstrVac_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 BrkBstrVac_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 BrkBstrVac_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 BrkBstrVac_D_Stat 1; -BA_ "GenSigSendType" SG_ 1054 DrvSlipCtlOffLamp_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 DrvSlipCtlOffLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 DrvSlipCtlOffLamp_D_Rq 1; -BA_ "GenSigSendType" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 1; -BA_ "GenSigSendType" SG_ 1054 AutoHoldMsgTxt_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 AutoHoldMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 AutoHoldMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 1054 CtaBrk_D_Stat 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 CtaBrk_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 CtaBrk_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1054 SelDrvMdeAwd_D_Rq 31; -BA_ "GenSigStartValue" SG_ 1054 SelDrvMdeAwd_D_Rq 31; -BA_ "GenSigSendType" SG_ 1054 SelDrvMdeAwd_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 1054 SelDrvMdeAwd_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 SelDrvMdeAwd_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1054 AutoHoldSwMde_B_Ind 1; -BA_ "ContentDependant" SG_ 1054 AutoHoldSwMde_B_Ind 1; -BA_ "GenSigSendType" SG_ 1054 AutoHoldSwMde_B_Ind 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 AutoHoldSwMde_B_Ind 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 AutoHoldSwMde_B_Ind 1; -BA_ "GenSigSendType" SG_ 1054 AutoHoldMde_D_Ind 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 AutoHoldMde_D_Ind 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 AutoHoldMde_D_Ind 1; -BA_ "GenSigSendType" SG_ 1054 SelDrvMdeChassis_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 SelDrvMdeChassis_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 SelDrvMdeChassis_D_Rq 1; -BA_ "GenSigSendType" SG_ 1054 ApaBrk_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 1054 ApaBrk_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 ApaBrk_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1054 ApaBrk_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1054 ApaBrk_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 HsaMde_D_Mem 1; -BA_ "UsedOnPgmDBC" SG_ 1046 HsaMde_D_Mem 1; -BA_ "GenSigStartValueInteger" SG_ 1046 HsaMde_D_Mem 1; -BA_ "GenSigStartValue" SG_ 1046 HsaMde_D_Mem 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 HsaMde_D_Mem 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 HsaMde_D_Mem 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 BrkBstrVac_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 BrkBstrVac_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 BrkBstrVac_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 BrkBstrVac_B_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 BrkBstrVac_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 BrkBstrVac_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 HdcMde_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1046 HdcMde_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 HdcMde_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 HdcMde_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1046 RearDiffLck_Tq2_RqMx 4094; -BA_ "GenSigStartValue" SG_ 1046 RearDiffLck_Tq2_RqMx 4094; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 RearDiffLck_Tq2_RqMx 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 RearDiffLck_Tq2_RqMx 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 TRLR_SWAY_EVNT_IN_PROG 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 TRLR_SWAY_EVNT_IN_PROG 1; -BA_ "ECGUsedRxSignal" SG_ 1046 TRLR_SWAY_EVNT_IN_PROG 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 TRLR_SWAY_CONFIG_STAT 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 TRLR_SWAY_CONFIG_STAT 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 TCMode 1; -BA_ "UsedOnPgmDBC" SG_ 1046 TCMode 1; -BA_ "ContentDependant" SG_ 1046 TCMode 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 TCMode 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 TCMode 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 TCMode 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 TCMode 1; -BA_ "ECGUsedRxSignal" SG_ 1046 TCMode 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 Abs_B_Falt 1; -BA_ "UsedOnPgmDBC" SG_ 1046 Abs_B_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 Abs_B_Falt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 Abs_B_Falt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 Abs_B_Falt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 Abs_B_Falt 1; -BA_ "ECGUsedRxSignal" SG_ 1046 Abs_B_Falt 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "UsedOnPgmDBC" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "ECGUsedRxSignal" SG_ 1046 DrvSlipCtlMde_D_Ind 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 DrvAntiLckLamp_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 DrvAntiLckLamp_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 BpedMove_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 1046 BpedMove_No_Cnt 1; -BA_ "MetaData" SG_ 1046 BpedMove_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1046 BpedMove_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 BpedMove_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 BpedMove_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 StabCtlBrk_B_Avail 1; -BA_ "UsedOnPgmDBC" SG_ 1046 StabCtlBrk_B_Avail 1; -BA_ "GenSigStartValueInteger" SG_ 1046 StabCtlBrk_B_Avail 1; -BA_ "GenSigStartValue" SG_ 1046 StabCtlBrk_B_Avail 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 StabCtlBrk_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 StabCtlBrk_B_Avail 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 DrvHdcMsg_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 DrvHdcMsg_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvHdcMsg_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvHdcMsg_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 DrvHdcLampInfo_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 DrvHdcLampInfo_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvHdcLampInfo_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvHdcLampInfo_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 BpedMove_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1046 BpedMove_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1046 BpedMove_D_Actl 3; -BA_ "GenSigStartValue" SG_ 1046 BpedMove_D_Actl 3; -BA_ "U_P702_MY2021_Rx" SG_ 1046 BpedMove_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 BpedMove_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 BpedMove_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 ChimeBrk_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 ChimeBrk_B_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 ChimeBrk_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 ChimeBrk_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 BrkLamp_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1046 BrkLamp_B_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 BrkLamp_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 BrkLamp_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1046 HILL_DESC_MC 1; -BA_ "UsedOnPgmDBC" SG_ 1046 HILL_DESC_MC 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1046 HILL_DESC_MC 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 HILL_DESC_MC 1; -BA_ "U_P702_MY2021_Tx" SG_ 1046 RearDiffElckrOpen_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1045 VehStab_D_Stat 14; -BA_ "GenSigStartValue" SG_ 1045 VehStab_D_Stat 14; -BA_ "U_P702_MY2021_Rx" SG_ 1045 VehStab_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehStab_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehStab_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 VehStab_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 BrkFluidLvl_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 BrkFluidLvl_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1045 LsmcBrkDecel_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 LsmcBrkDecel_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1045 VehYawNonLin_W_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1045 VehYawNonLin_W_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1045 VehYawNonLin_W_Rq 4094; -BA_ "GenSigStartValue" SG_ 1045 VehYawNonLin_W_Rq 4094; -BA_ "U_P702_MY2021_Rx" SG_ 1045 VehYawNonLin_W_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehYawNonLin_W_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehYawNonLin_W_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 VehYawNonLin_W_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1045 VehYawLin_W_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1045 VehYawLin_W_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1045 VehYawLin_W_Rq 4094; -BA_ "GenSigStartValue" SG_ 1045 VehYawLin_W_Rq 4094; -BA_ "U_P702_MY2021_Rx" SG_ 1045 VehYawLin_W_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehYawLin_W_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehYawLin_W_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 VehYawLin_W_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "MetaData" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "UsedOnPgmDBC" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "U_P702_MY2021_Rx" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 Veh_V_ActlBrk 1; -BA_ "CrossOver_InfoCAN" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "MetaData" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "MetaData" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 1045 VehVActlBrk_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 1044 StePinOffst_An_Est 1; -BA_ "GenSigStartValueInteger" SG_ 1044 StePinOffst_An_Est 65534; -BA_ "ContentDependant" SG_ 1044 StePinOffst_An_Est 1; -BA_ "GenSigStartValue" SG_ 1044 StePinOffst_An_Est 65533; -BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_An_Est 1; -BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_An_Est 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_An_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_An_Est 1; -BA_ "UsedOnPgmDBC" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "ContentDependant" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "MetaData" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 1044 StePinOffst_No_Cnt 1; -BA_ "MetaData" SG_ 1044 StePinOffst_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_D_Stat 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1042 VehRol_An_Dsply 64; -BA_ "GenSigStartValue" SG_ 1042 VehRol_An_Dsply 0; -BA_ "U_P702_MY2021_Tx" SG_ 1042 VehRol_An_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1042 VehPtch_An_Dsply 64; -BA_ "GenSigStartValue" SG_ 1042 VehPtch_An_Dsply 0; -BA_ "U_P702_MY2021_Rx" SG_ 1042 VehPtch_An_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1042 VehPtch_An_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1042 TrlrBrk_Pc_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 535 WhlRr_W_Meas 1; -BA_ "U_P702_MY2021_Rx" SG_ 535 WhlRr_W_Meas 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlRr_W_Meas 1; -BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlRr_W_Meas 1; -BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlRr_W_Meas 1; -BA_ "U_P702_MY2021_Tx" SG_ 535 WhlRr_W_Meas 1; -BA_ "UsedOnPgmDBC" SG_ 535 WhlRl_W_Meas 1; -BA_ "U_P702_MY2021_Rx" SG_ 535 WhlRl_W_Meas 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlRl_W_Meas 1; -BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlRl_W_Meas 1; -BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlRl_W_Meas 1; -BA_ "U_P702_MY2021_Tx" SG_ 535 WhlRl_W_Meas 1; -BA_ "UsedOnPgmDBC" SG_ 535 WhlFr_W_Meas 1; -BA_ "U_P702_MY2021_Rx" SG_ 535 WhlFr_W_Meas 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlFr_W_Meas 1; -BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlFr_W_Meas 1; -BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlFr_W_Meas 1; -BA_ "U_P702_MY2021_Tx" SG_ 535 WhlFr_W_Meas 1; -BA_ "UsedOnPgmDBC" SG_ 535 WhlFl_W_Meas 1; -BA_ "U_P702_MY2021_Rx" SG_ 535 WhlFl_W_Meas 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlFl_W_Meas 1; -BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlFl_W_Meas 1; -BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlFl_W_Meas 1; -BA_ "U_P702_MY2021_Tx" SG_ 535 WhlFl_W_Meas 1; -BA_ "ContentDependant" SG_ 534 BrkObdData_No_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 BrkObdData_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 BrkObdData_No_Actl 1; -BA_ "ContentDependant" SG_ 534 BrkObdIndex_No_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 BrkObdIndex_No_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 BrkObdIndex_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatRr_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatRr_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatRr_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatRr_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatRr_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirRr_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirRl_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirFr_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirFl_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatRl_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatRl_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatRl_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatRl_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatRl_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatFr_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatFr_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatFr_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatFr_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatFr_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatFl_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatFl_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatFl_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatFl_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatFl_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 532 RgenTqFalt_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 532 RgenTqFalt_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 532 RgenTqFalt_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 532 RgenTqFalt_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 532 RgenBrkDynoMde_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 532 RgenBrkDynoMde_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 532 RgenBrkDynoMde_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 532 RgenBrkDynoMde_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 532 PrplWhlTqRqMn_No_Cs 1; -BA_ "MetaData" SG_ 532 PrplWhlTqRqMn_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 532 PrplWhlTot_Tq_RqMn 1; -BA_ "U_P702_MY2021_Rx" SG_ 532 PrplWhlTot_Tq_RqMn 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 532 PrplWhlTot_Tq_RqMn 1; -BA_ "U_CX727_MY2021_Tx" SG_ 532 PrplWhlTot_Tq_RqMn 1; -BA_ "U_P702_MY2021_Tx" SG_ 532 PrplWhlTot_Tq_RqMn 1; -BA_ "UsedOnPgmDBC" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; -BA_ "MetaData" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; -BA_ "GenSigStartValueInteger" SG_ 531 VehStop_D_Stat 2; -BA_ "GenSigStartValue" SG_ 531 VehStop_D_Stat 2; -BA_ "U_CX727_MY2021_Tx" SG_ 531 VehStop_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 VehStop_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 531 TracCtlPtActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 TracCtlPtActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 TracCtlPtActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 TracCtlPtActv_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 TracCtlPtActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 TracCtlPtActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbMntr_B_Err 1; -BA_ "UsedOnPgmDBC" SG_ 531 LscmbbMntr_B_Err 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbMntr_B_Err 1; -BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbBrkDis_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 LscmbbBrkDis_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbBrkDis_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbDeny_B_ActlBrk 1; -BA_ "UsedOnPgmDBC" SG_ 531 LscmbbDeny_B_ActlBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbDeny_B_ActlBrk 1; -BA_ "WakeupSignal" SG_ 531 PrkBrkYwLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkYwLamp_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkYwLamp_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkYwLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkYwLamp_D_Rq 1; -BA_ "WakeupSignal" SG_ 531 PrkBrkRedLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkRedLamp_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkRedLamp_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkRedLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkRedLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbBrkDecel_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 LscmbbBrkDecel_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbBrkDecel_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AbsActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AbsActv_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 531 AbsActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 AbsActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AbsActv_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AbsActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AbsActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 531 StabCtlBrkActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBrkPrchg_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 CmbbBrkPrchg_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBrkPrchg_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBrkPrchg_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBrkDecel_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 CmbbBrkDecel_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBrkDecel_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBrkDecel_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBaSensInc_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 CmbbBaSensInc_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBaSensInc_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBaSensInc_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkWarm_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccBrkWarm_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkWarm_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkWarm_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkTotTqMn_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccBrkTotTqMn_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkTotTqMn_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkTotTqMn_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkPrchgActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccBrkPrchgActv_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkPrchgActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkPrchgActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkDis_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccBrkDis_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkDis_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkDis_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkDeny_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccBrkDeny_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 AccBrkDeny_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AccBrkDeny_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkDeny_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkDeny_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccBrkActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 AccBrkActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AccBrkActv_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 PrplDrgCtlActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 PrplDrgCtlActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 PrplDrgCtlActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 PrplDrgCtlActv_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 PrplDrgCtlActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 PrplDrgCtlActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 PrplWhlTot_Tq_RqMx 1; -BA_ "UsedOnPgmDBC" SG_ 531 PrplWhlTot_Tq_RqMx 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 PrplWhlTot_Tq_RqMx 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 PrplWhlTot_Tq_RqMx 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 PrplWhlTot_Tq_RqMx 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 PrplWhlTot_Tq_RqMx 1; -BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbBaSensInc_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 LscmbbBaSensInc_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbBaSensInc_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBrkDis_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 CmbbBrkDis_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 531 CmbbBrkDis_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 CmbbBrkDis_B_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBrkDis_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBrkDis_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "UsedOnPgmDBC" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "U_CX727_MY2021_Rx" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbDeny_B_ActlBrk 1; -BA_ "CrossOver_InfoCAN" SG_ 531 CcDis_B_Cmd 1; -BA_ "UsedOnPgmDBC" SG_ 531 CcDis_B_Cmd 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 CcDis_B_Cmd 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 CcDis_B_Cmd 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 CcDis_B_Cmd 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 CcDis_B_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 531 VehLongOvrGnd_A_Est 1; -BA_ "UsedOnPgmDBC" SG_ 531 VehLongOvrGnd_A_Est 1; -BA_ "GenSigStartValueInteger" SG_ 531 VehLongOvrGnd_A_Est 511; -BA_ "U_P702_MY2021_Rx" SG_ 531 VehLongOvrGnd_A_Est 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 VehLongOvrGnd_A_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 VehLongOvrGnd_A_Est 1; -BA_ "CrossOver_InfoCAN" SG_ 531 LscmbBrkPrchg_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 531 LscmbBrkPrchg_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbBrkPrchg_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccStopActv_B_ActlBrk 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccStopActv_B_ActlBrk 1; -BA_ "U_P702_MY2021_Rx" SG_ 531 AccStopActv_B_ActlBrk 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AccStopActv_B_ActlBrk 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccStopActv_B_ActlBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccStopActv_B_ActlBrk 1; -BA_ "CrossOver_InfoCAN" SG_ 531 AccDis_B_ActlEpb 1; -BA_ "UsedOnPgmDBC" SG_ 531 AccDis_B_ActlEpb 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 AccDis_B_ActlEpb 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 AccDis_B_ActlEpb 1; -BA_ "WakeupSignal" SG_ 531 PrkBrkMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkMsgTxt_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkMsgTxt_D_Rq 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkStatus 1; -BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkStatus 1; -BA_ "GenSigStartValueInteger" SG_ 531 PrkBrkStatus 7; -BA_ "GenSigStartValue" SG_ 531 PrkBrkStatus 7; -BA_ "U_P702_MY2021_Rx" SG_ 531 PrkBrkStatus 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 PrkBrkStatus 1; -BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkStatus 1; -BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkStatus 1; -BA_ "ECGUsedRxSignal" SG_ 531 PrkBrkStatus 1; -BA_ "GenSigStartValueInteger" SG_ 136 SteWhlBrkOffst_An_Rq 32766; -BA_ "GenSigStartValue" SG_ 136 SteWhlBrkOffst_An_Rq 32765; -BA_ "U_P702_MY2021_Tx" SG_ 136 SteWhlBrkOffst_An_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 136 SteWhlBrkAnRq_No_Cs 1; -BA_ "MetaData" SG_ 136 SteWhlBrkAnRq_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 136 SteWhlBrkAnRq_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 136 SteWhlBrkAnRq_No_Cnt 1; -BA_ "MetaData" SG_ 136 SteWhlBrkAnRq_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 136 SteWhlBrkAnRq_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 125 VehRolComp_W_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 125 VehRolComp_W_Actl 4094; -BA_ "GenSigStartValue" SG_ 125 VehRolComp_W_Actl 4094; -BA_ "U_CX727_MY2021_Tx" SG_ 125 VehRolComp_W_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 VehRolComp_W_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 125 VehVertComp_A_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 125 VehVertComp_A_Actl 1022; -BA_ "GenSigStartValue" SG_ 125 VehVertComp_A_Actl 1022; -BA_ "U_P702_MY2021_Rx" SG_ 125 VehVertComp_A_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 125 VehVertComp_A_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 VehVertComp_A_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 125 BrkTotTqRqArb_No_Cs 1; -BA_ "MetaData" SG_ 125 BrkTotTqRqArb_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTotTqRqArb_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTotTqRqArb_No_Cs 1; -BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 125 BrkTotTqRqArb_No_Cnt 1; -BA_ "MetaData" SG_ 125 BrkTotTqRqArb_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; -BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 125 BrkTot_Tq_RqArb 1; -BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTot_Tq_RqArb 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTot_Tq_RqArb 1; -BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTot_Tq_RqArb 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTot_Tq_RqArb 1; -BA_ "ECGUsedRxSignal" SG_ 125 BrkTot_Tq_RqArb 1; -BA_ "UsedOnPgmDBC" SG_ 125 BrkTot_Tq_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 125 BrkTot_Tq_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTot_Tq_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTot_Tq_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTot_Tq_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTot_Tq_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 125 HsaStat_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 125 HsaStat_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 125 HsaStat_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 HsaStat_D_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 125 HsaStat_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 125 HsaStat_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 119 VehTrvlDir_D_Stat 6; -BA_ "GenSigStartValue" SG_ 119 VehTrvlDir_D_Stat 6; -BA_ "U_P702_MY2021_Tx" SG_ 119 VehTrvlDir_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 119 VehOverGnd_V_Est 1; -BA_ "U_CX727_MY2021_Rx" SG_ 119 VehOverGnd_V_Est 1; -BA_ "U_P702_MY2021_Rx" SG_ 119 VehOverGnd_V_Est 1; -BA_ "U_CX727_MY2021_Tx" SG_ 119 VehOverGnd_V_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 119 VehOverGnd_V_Est 1; -BA_ "UsedOnPgmDBC" SG_ 119 VehLongComp_A_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 119 VehLongComp_A_Actl 1022; -BA_ "GenSigStartValue" SG_ 119 VehLongComp_A_Actl 1022; -BA_ "U_P702_MY2021_Rx" SG_ 119 VehLongComp_A_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 119 VehLongComp_A_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 119 VehLongComp_A_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 119 VehLongComp_A_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 119 VehLongComp_A_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 119 VehLatComp_A_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 119 VehLatComp_A_Actl 1022; -BA_ "GenSigStartValue" SG_ 119 VehLatComp_A_Actl 1022; -BA_ "U_P702_MY2021_Rx" SG_ 119 VehLatComp_A_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 119 VehLatComp_A_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 119 VehLatComp_A_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 119 VehLatComp_A_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 119 VehLatComp_A_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 119 VehLatComp_A_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 119 VehYawComp_W_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 119 VehYawComp_W_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 119 VehYawComp_W_Actl 4094; -BA_ "GenSigStartValue" SG_ 119 VehYawComp_W_Actl 4094; -BA_ "U_CX727_MY2021_Rx" SG_ 119 VehYawComp_W_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 119 VehYawComp_W_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 119 VehYawComp_W_Actl 1; -BA_ "U_CX727_MY2021_Tx" SG_ 119 VehYawComp_W_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 119 VehYawComp_W_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 119 VehYawComp_W_Actl 1; -BA_ "GenSigSendType" SG_ 118 BrkCtrFnd_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 118 BrkCtrFnd_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 118 AwdLck_Tq_RqMx 1; -BA_ "U_P702_MY2021_Rx" SG_ 118 AwdLck_Tq_RqMx 1; -BA_ "U_P702_MY2021_Tx" SG_ 118 AwdLck_Tq_RqMx 1; -BA_ "UsedOnPgmDBC" SG_ 118 AwdLck_Tq_RqMn 1; -BA_ "U_P702_MY2021_Rx" SG_ 118 AwdLck_Tq_RqMn 1; -BA_ "U_P702_MY2021_Tx" SG_ 118 AwdLck_Tq_RqMn 1; -BA_ "UsedOnPgmDBC" SG_ 118 DrvSte_D_Stat 1; -BA_ "GenSigSendType" SG_ 118 DrvSte_D_Stat 3; -BA_ "U_CX727_MY2021_Rx" SG_ 118 DrvSte_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 118 DrvSte_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 118 DrvSte_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 118 DrvSte_Tq_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 118 DrvSte_Tq_Rq 128; -BA_ "U_CX727_MY2021_Rx" SG_ 118 DrvSte_Tq_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 118 DrvSte_Tq_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 118 DrvSte_Tq_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 118 EmgcyBrkLamp_D_Rq 1; -BA_ "GenSigSendType" SG_ 118 EmgcyBrkLamp_D_Rq 3; -BA_ "U_CX727_MY2021_Tx" SG_ 118 EmgcyBrkLamp_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 118 EmgcyBrkLamp_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 118 StopLamp_B_RqBrk 1; -BA_ "GenSigSendType" SG_ 118 StopLamp_B_RqBrk 3; -BA_ "U_CX727_MY2021_Tx" SG_ 118 StopLamp_B_RqBrk 1; -BA_ "U_P702_MY2021_Tx" SG_ 118 StopLamp_B_RqBrk 1; -BA_ "UsedOnPgmDBC" SG_ 73 immoSubTarget1Data_T1 1; -BA_ "U_P702_MY2021_Rx" SG_ 73 immoSubTarget1Data_T1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 73 immoSubTarget1Data_T1 1; -BA_ "U_CX727_MY2021_Tx" SG_ 73 immoSubTarget1Data_T1 1; -BA_ "U_P702_MY2021_Tx" SG_ 73 immoSubTarget1Data_T1 1; -BA_ "UsedOnPgmDBC" SG_ 73 immoSubTarget1Cmd_T1 1; -BA_ "U_P702_MY2021_Rx" SG_ 73 immoSubTarget1Cmd_T1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 73 immoSubTarget1Cmd_T1 1; -BA_ "U_CX727_MY2021_Tx" SG_ 73 immoSubTarget1Cmd_T1 1; -BA_ "U_P702_MY2021_Tx" SG_ 73 immoSubTarget1Cmd_T1 1; -BA_ "CrossOver_InfoCAN" SG_ 1034 VehicleGGCCData 1; -BA_ "UsedOnPgmDBC" SG_ 1034 VehicleGGCCData 1; -BA_ "U_P702_MY2021_Rx" SG_ 1034 VehicleGGCCData 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1034 VehicleGGCCData 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1034 VehicleGGCCData 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1440 TCM_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_GWOnBoardTester 255; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_GWOnBoardTester 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1440 TCM_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_GWNMProxy 255; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_GWNMProxy 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_GWNMProxy 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved4 255; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved4 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved3 255; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved3 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved2 255; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved2 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved1 255; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved1 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMNodeId 160; -BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMNodeId 160; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMNodeId 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMControl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMControl 1; -BA_ "CrossOver_InfoCAN" SG_ 561 TrnMsgTxt2_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 561 TrnMsgTxt2_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 561 TrnMsgTxt2_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 561 TrnMsgTxt_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 561 TrnMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 561 TrnMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 561 TrnMsgTxt_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 330 TrnAout_W_ActlUnfilt 1; -BA_ "U_P702_MY2021_Rx" SG_ 330 TrnAout_W_ActlUnfilt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 330 TrnAout_W_ActlUnfilt 1; -BA_ "U_P702_MY2021_Tx" SG_ 330 TrnAout_W_ActlUnfilt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 330 TrnAout_W_ActlUnfilt 1; -BA_ "ECGUsedRxSignal" SG_ 1090 Mtr2State_D_ActlMntr 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1090 Mtr2State_D_ActlMntr 1; -BA_ "GenSigStartValueInteger" SG_ 1090 Inv1Ain_I_ActlMntr 32766; -BA_ "GenSigStartValue" SG_ 1090 Inv1Ain_I_ActlMntr 32765; -BA_ "ECGUsedRxSignal" SG_ 1090 Inv1Ain_I_ActlMntr 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1090 Inv1Ain_I_ActlMntr 1; -BA_ "ECGUsedRxSignal" SG_ 1090 HybVehMde_D_ActlMntr 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1090 HybVehMde_D_ActlMntr 1; -BA_ "ECGUsedRxSignal" SG_ 1090 ChrgStat_D_ActlMntr 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1090 ChrgStat_D_ActlMntr 1; -BA_ "CrossOver_InfoCAN" SG_ 1090 VehElRnge_L_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1090 VehElRnge_L_Dsply 4095; -BA_ "GenSigStartValue" SG_ 1090 VehElRnge_L_Dsply 4093; -BA_ "U_P702_MY2021_Tx" SG_ 1090 VehElRnge_L_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1090 VehElRnge_L_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 870 EngMdeMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 870 EffRgenThres_Pc_Dsply 1; -BA_ "GenSigStartValue" SG_ 870 EffRgenThres_Pc_Dsply 1023; -BA_ "CrossOver_InfoCAN" SG_ 870 EffRgenThres_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 870 RngPerChrgInst_L_Dsply 4094; -BA_ "GenSigStartValue" SG_ 870 RngPerChrgInst_L_Dsply 4093; -BA_ "U_P702_MY2021_Tx" SG_ 870 RngPerChrgInst_L_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 PwrFlowTxt_D_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 EngOnMsg2_D_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 EngOnMsg1_D_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 FuelMaintMde_D_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 869 EffWhlLvl2_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 869 EffWhlLvl2_Pc_Dsply 511; -BA_ "U_P702_MY2021_Tx" SG_ 869 EffWhlLvl2_Pc_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 869 EffWhlThres_Pc_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 EffWhlThres_Pc_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 869 EngPwLvl_Pc_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 EngPwLvl_Pc_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 869 EngActv_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 EngActv_B_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 869 EffWhlThresOn_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 869 EffWhlThresOn_B_Dsply 1; -BA_ "GenSigSendType" SG_ 606 ElVehLaterMde_D_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 606 ElVehLaterMde_D_Stat 1; -BA_ "GenSigSendType" SG_ 606 ElVehNowMde_D_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 606 ElVehNowMde_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 374 GearEngag_D_Actl 1; -BA_ "GenSigSendType" SG_ 374 GearEngag_D_Actl 3; -BA_ "U_P702_MY2021_Tx" SG_ 374 GearEngag_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 374 TrnRng_D_Rq 14; -BA_ "ContentDependant" SG_ 374 TrnRng_D_Rq 1; -BA_ "GenSigStartValue" SG_ 374 TrnRng_D_Rq 14; -BA_ "GenSigSendType" SG_ 374 TrnRng_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 374 TrnRng_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 TrnRng_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 TrnRng_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 TrnRng_D_Rq 1; -BA_ "ContentDependant" SG_ 374 TrnPrkSys_D_Actl 1; -BA_ "GenSigSendType" SG_ 374 TrnPrkSys_D_Actl 3; -BA_ "U_P702_MY2021_Rx" SG_ 374 TrnPrkSys_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 TrnPrkSys_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 TrnPrkSys_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 TrnPrkSys_D_Actl 1; -BA_ "ContentDependant" SG_ 374 GearLvr_D_ActlDrv 1; -BA_ "GenSigSendType" SG_ 374 GearLvr_D_ActlDrv 3; -BA_ "U_P702_MY2021_Rx" SG_ 374 GearLvr_D_ActlDrv 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearLvr_D_ActlDrv 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 GearLvr_D_ActlDrv 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearLvr_D_ActlDrv 1; -BA_ "ContentDependant" SG_ 374 GearPos_No_Cs 1; -BA_ "MetaData" SG_ 374 GearPos_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 374 GearPos_D_Trg 1; -BA_ "UsedOnPgmDBC" SG_ 374 GearPos_D_Trg 1; -BA_ "GenSigStartValueInteger" SG_ 374 GearPos_D_Trg 15; -BA_ "ContentDependant" SG_ 374 GearPos_D_Trg 1; -BA_ "GenSigStartValue" SG_ 374 GearPos_D_Trg 15; -BA_ "GenSigSendType" SG_ 374 GearPos_D_Trg 3; -BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_D_Trg 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_D_Trg 1; -BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_D_Trg 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_D_Trg 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_D_Trg 1; -BA_ "ContentDependant" SG_ 374 GearPos_No_Cnt 1; -BA_ "MetaData" SG_ 374 GearPos_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 TrnIgnOffDly_T_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 TrnIgnOffDly_T_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 374 GearPos_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 374 GearPos_D_Actl 15; -BA_ "ContentDependant" SG_ 374 GearPos_D_Actl 1; -BA_ "GenSigStartValue" SG_ 374 GearPos_D_Actl 15; -BA_ "GenSigSendType" SG_ 374 GearPos_D_Actl 3; -BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 603 WhlDirAvgDrv_D_Actl 1; -BA_ "ContentDependant" SG_ 603 WhlDirAvgDrv_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 603 WhlDirAvgDrv_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 603 PrplTqMnRgen_B_Actl 1; -BA_ "ContentDependant" SG_ 603 PrplTqMnRgen_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 603 PrplTqMnRgen_B_Actl 1; -BA_ "ContentDependant" SG_ 603 BattTracCnnct_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 603 BattTracCnnct_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 602 HtrnWarnLamp_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 602 HtrnWarnLamp_B_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 602 HtrnWarnLamp_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 602 HybPwLimOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 602 PwPckTqRdy_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 602 PwPckTqRdy_B_Dsply 1; -BA_ "GenSigSendType" SG_ 1152 BattTracDiagClr_B_Stat 3; -BA_ "GenSigSendType" SG_ 1152 EngTeHi_B_Actl 3; -BA_ "U_P702_MY2021_Tx" SG_ 1152 EngTeHi_B_Actl 1; -BA_ "GenSigSendType" SG_ 1152 DcdcOn_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1152 DcdcOn_B_Rq 1; -BA_ "GenSigSendType" SG_ 1152 ULoBattSpprtSustn_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1152 ULoBattSpprtSustn_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1152 VehElEff_No_Avg 126; -BA_ "GenSigStartValue" SG_ 1152 VehElEff_No_Avg 126; -BA_ "U_P702_MY2021_Tx" SG_ 1152 VehElEff_No_Avg 1; -BA_ "CrossOver_InfoCAN" SG_ 872 PlgActvArb_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 872 PlgActvArb_B_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 872 PlgActvArb_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 872 HybMdeStat_D_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 872 HybMdeStat_D_Dsply 1; -BA_ "ContentDependant" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; -BA_ "U_P702_MY2021_Rx" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; -BA_ "U_P702_MY2021_Tx" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; -BA_ "CrossOver_InfoCAN" SG_ 560 TrnSrvcRqd_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 560 TrnSrvcRqd_B_Rq 1; -BA_ "ContentDependant" SG_ 560 TrnSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 560 TrnSrvcRqd_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 TrnSrvcRqd_B_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 560 TrnSrvcRqd_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "ContentDependant" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 TrnShifActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 560 GearLvrPos_D_Actl 14; -BA_ "GenSigStartValue" SG_ 560 GearLvrPos_D_Actl 14; -BA_ "U_P702_MY2021_Rx" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 GearLvrPos_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 560 GboxOil_Te_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 560 GboxOil_Te_Actl 254; -BA_ "ContentDependant" SG_ 560 GboxOil_Te_Actl 1; -BA_ "GenSigStartValue" SG_ 560 GboxOil_Te_Actl 254; -BA_ "U_P702_MY2021_Rx" SG_ 560 GboxOil_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 560 GboxOil_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 560 GboxOil_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 GboxOil_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyRng2_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 369 TrnIpcDsplyRng2_D_Actl 15; -BA_ "GenSigStartValue" SG_ 369 TrnIpcDsplyRng2_D_Actl 15; -BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyRng2_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyRng2_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyRng_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyRng_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyGear_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyGear_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 369 TrnIpcDsplyGear_D_Actl 15; -BA_ "GenSigStartValue" SG_ 369 TrnIpcDsplyGear_D_Actl 15; -BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyGear_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyGear_D_Actl 1; -BA_ "WakeupSignal" SG_ 369 TrnIpcDsplyMde_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyMde_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyMde_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyMde_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyMde_D_Stat 1; -BA_ "WakeupSignal" SG_ 369 TrnIpcDsplyMde_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyMde_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyMde_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyMde_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyGear_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyGear_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyGear_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyGear_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 92 TrnLvrV_D_Rq 1; -BA_ "GenSigStartValue" SG_ 92 TrnLvrV_D_Rq 1; -BA_ "GenSigSendType" SG_ 92 TrnLvrV_D_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnLvrV_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnLvrV_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 92 TrnSbwSysHlth_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 92 TrnSbwSysHlth_D_Actl 1; -BA_ "ContentDependant" SG_ 92 TrnSbwSysHlth_D_Actl 1; -BA_ "GenSigStartValue" SG_ 92 TrnSbwSysHlth_D_Actl 1; -BA_ "GenSigSendType" SG_ 92 TrnSbwSysHlth_D_Actl 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnSbwSysHlth_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnSbwSysHlth_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 92 TrnGearNtmAllow_B_Stat 1; -BA_ "ContentDependant" SG_ 92 TrnGearNtmAllow_B_Stat 1; -BA_ "GenSigSendType" SG_ 92 TrnGearNtmAllow_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearNtmAllow_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearNtmAllow_B_Stat 1; -BA_ "WakeupSignal" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "ContentDependant" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "GenSigStartValue" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "GenSigSendType" SG_ 92 TrnDtpCmd_D_Actl 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnDtpCmd_D_Actl 1; -BA_ "GenSigSendType" SG_ 92 GearSelLck_D_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 GearSelLck_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 GearSelLck_D_Rq 1; -BA_ "ContentDependant" SG_ 92 TrnGearCmd_No_Cs 1; -BA_ "MetaData" SG_ 92 TrnGearCmd_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearCmd_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearCmd_No_Cs 1; -BA_ "ContentDependant" SG_ 92 TrnValidGear_D_Cnfm 1; -BA_ "GenSigSendType" SG_ 92 TrnValidGear_D_Cnfm 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnValidGear_D_Cnfm 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnValidGear_D_Cnfm 1; -BA_ "ContentDependant" SG_ 92 TrnNtrlTowCmd_D_Actl 1; -BA_ "GenSigSendType" SG_ 92 TrnNtrlTowCmd_D_Actl 3; -BA_ "U_CX727_MY2021_Rx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; -BA_ "ContentDependant" SG_ 92 TrnGearCmd_Pc_ActlPt 1; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearCmd_Pc_ActlPt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearCmd_Pc_ActlPt 1; -BA_ "ContentDependant" SG_ 92 TrnGear_D_RqPt 1; -BA_ "GenSigSendType" SG_ 92 TrnGear_D_RqPt 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGear_D_RqPt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGear_D_RqPt 1; -BA_ "ContentDependant" SG_ 92 TrnCmdState_B_Actl 1; -BA_ "GenSigSendType" SG_ 92 TrnCmdState_B_Actl 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnCmdState_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnCmdState_B_Actl 1; -BA_ "ContentDependant" SG_ 92 TrnCmdCnt_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnCmdCnt_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnCmdCnt_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "GenSigStartValueInteger" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "ContentDependant" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "GenSigStartValue" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "GenSigSendType" SG_ 92 PrkBrkActv_D_RqTrnGear 3; -BA_ "U_CX727_MY2021_Rx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "U_P702_MY2021_Rx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "U_P702_MY2021_Tx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; -BA_ "CrossOver_InfoCAN" SG_ 92 TrnGearMsgTxt_D_Rq 1; -BA_ "ContentDependant" SG_ 92 TrnGearMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 92 TrnGearMsgTxt_D_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearMsgTxt_D_Rq 1; -BA_ "ContentDependant" SG_ 92 TrnGearCmd_No_Cnt 1; -BA_ "MetaData" SG_ 92 TrnGearCmd_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearCmd_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearCmd_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 2030 TesterPhysicalResSOBDMC 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 2030 TesterPhysicalResSOBDMC 1; -BA_ "U_P702_MY2021_Tx" SG_ 1087 BattRgenLoChrg_D_RqEng 1; -BA_ "GenSigSendType" SG_ 1087 BattRgenLoChrg_D_RqEng 3; -BA_ "GenSigSendType" SG_ 1087 AdasLcObtclAbrt_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1087 BattRgenLoDChrg_D_RqEng 1; -BA_ "GenSigSendType" SG_ 1087 BattRgenLoDChrg_D_RqEng 3; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 AirDamPos_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1087 AirDamPos_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1087 AirDamPos_D_Stat 1; -BA_ "GenSigSendType" SG_ 1087 FapLcInhbt_B_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcInhbt_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcInhbt_B_Rq 1; -BA_ "GenSigSendType" SG_ 1087 FapLcStopHold_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1087 FapLcStopHold_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1087 FapLcStopHold_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcStopHold_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcStopHold_B_Rq 1; -BA_ "GenSigSendType" SG_ 1087 FapLcPrchgBrk_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; -BA_ "GenSigSendType" SG_ 1087 FapLcObstcl_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcObstcl_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcObstcl_B_Stat 1; -BA_ "GenSigSendType" SG_ 1087 FapLcMaxGrdInhbt_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcMaxGrdInhbt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcMaxGrdInhbt_B_Stat 1; -BA_ "GenSigSendType" SG_ 1087 FapLcMaxGrdAbrt_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcMaxGrdAbrt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcMaxGrdAbrt_B_Stat 1; -BA_ "GenSigSendType" SG_ 1087 FapLcActv_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcActv_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcActv_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 332 UreaLvlQlty_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvlQlty_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvlQlty_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 332 UreaLvlTxtWarn_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvlTxtWarn_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvlTxtWarn_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 332 UreaQltySysWarn_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaQltySysWarn_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaQltySysWarn_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 DieslPrtcWarn_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 DieslPrtcWarn_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaQltyFlg_B_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaQltyFlg_B_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 332 UreaQltyFlg_B_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvl_Pc_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvl_Pc_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 332 UreaLvl_Pc_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 VehUreaRnge2_L_DsplyMx 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 VehUreaRnge2_L_DsplyMx 1; -BA_ "ECGUsedRxSignal" SG_ 332 VehUreaRnge2_L_DsplyMx 1; -BA_ "CrossOver_InfoCAN" SG_ 332 UreaQltySys_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaQltySys_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaQltySys_D_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 332 UreaQltySys_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 332 UreaLvlTxt_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvlTxt_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvlTxt_D_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 332 UreaLvlTxt_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 332 VehUreaWarn_V_DsplyMx 1; -BA_ "U_P702_MY2021_Tx" SG_ 332 VehUreaWarn_V_DsplyMx 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 VehUreaWarn_V_DsplyMx 1; -BA_ "ECGUsedRxSignal" SG_ 332 VehUreaWarn_V_DsplyMx 1; -BA_ "UsedOnPgmDBC" SG_ 1896 TesterPhysicalResABS 1; -BA_ "GenSigSendType" SG_ 1896 TesterPhysicalResABS 3; -BA_ "U_CX727_MY2021_Tx" SG_ 1896 TesterPhysicalResABS 1; -BA_ "U_P702_MY2021_Tx" SG_ 1896 TesterPhysicalResABS 1; -BA_ "GenSigSendType" SG_ 1889 TesterPhysicalReqTCCM 3; -BA_ "U_P702_MY2021_Rx" SG_ 1889 TesterPhysicalReqTCCM 1; -BA_ "UsedOnPgmDBC" SG_ 1888 TesterPhysicalReqABS 1; -BA_ "GenSigSendType" SG_ 1888 TesterPhysicalReqABS 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1888 TesterPhysicalReqABS 1; -BA_ "U_P702_MY2021_Rx" SG_ 1888 TesterPhysicalReqABS 1; -BA_ "UsedOnPgmDBC" SG_ 1848 TesterPhysicalResPSCM 1; -BA_ "U_CX727_MY2021_Tx" SG_ 1848 TesterPhysicalResPSCM 1; -BA_ "U_P702_MY2021_Tx" SG_ 1848 TesterPhysicalResPSCM 1; -BA_ "UsedOnPgmDBC" SG_ 1840 TesterPhysicalReqPSCM 1; -BA_ "GenSigSendType" SG_ 1840 TesterPhysicalReqPSCM 3; -BA_ "U_CX727_MY2021_Rx" SG_ 1840 TesterPhysicalReqPSCM 1; -BA_ "U_P702_MY2021_Rx" SG_ 1840 TesterPhysicalReqPSCM 1; -BA_ "UsedOnPgmDBC" SG_ 1713 UUDTABSResponse2 1; -BA_ "U_P702_MY2021_Tx" SG_ 1713 UUDTABSResponse2 1; -BA_ "UsedOnPgmDBC" SG_ 1712 UUDTABSResponse1 1; -BA_ "U_P702_MY2021_Tx" SG_ 1712 UUDTABSResponse1 1; -BA_ "UsedOnPgmDBC" SG_ 2025 TesterPhysicalResTCM 1; -BA_ "U_P702_MY2021_Tx" SG_ 2025 TesterPhysicalResTCM 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 2025 TesterPhysicalResTCM 1; -BA_ "UsedOnPgmDBC" SG_ 2024 TesterPhysicalResPCM 1; -BA_ "U_P702_MY2021_Tx" SG_ 2024 TesterPhysicalResPCM 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 2024 TesterPhysicalResPCM 1; -BA_ "UsedOnPgmDBC" SG_ 2017 TesterPhysicalReqTCM 1; -BA_ "GenSigSendType" SG_ 2017 TesterPhysicalReqTCM 3; -BA_ "U_P702_MY2021_Rx" SG_ 2017 TesterPhysicalReqTCM 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2017 TesterPhysicalReqTCM 1; -BA_ "UsedOnPgmDBC" SG_ 2016 TesterPhysicalReqPCM 1; -BA_ "GenSigSendType" SG_ 2016 TesterPhysicalReqPCM 3; -BA_ "U_P702_MY2021_Rx" SG_ 2016 TesterPhysicalReqPCM 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2016 TesterPhysicalReqPCM 1; -BA_ "CrossOver_InfoCAN" SG_ 2015 TesterFunctionalReq 1; -BA_ "UsedOnPgmDBC" SG_ 2015 TesterFunctionalReq 1; -BA_ "GenSigSendType" SG_ 2015 TesterFunctionalReq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 2015 TesterFunctionalReq 1; -BA_ "U_P702_MY2021_Rx" SG_ 2015 TesterFunctionalReq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 2015 TesterFunctionalReq 1; -BA_ "ECGUsedRxSignal" SG_ 2015 TesterFunctionalReq 1; -BA_ "GenSigSendType" SG_ 1897 TesterPhysicalResTCCM 3; -BA_ "U_P702_MY2021_Tx" SG_ 1897 TesterPhysicalResTCCM 1; -BA_ "GenSigSendType" SG_ 1814 TesterPhysicalReqGWM_F1 3; -BA_ "ECGUsedRxSignal" SG_ 1814 TesterPhysicalReqGWM_F1 1; -BA_ "UsedOnPgmDBC" SG_ 1701 UUDTTCMResponse2 1; -BA_ "U_P702_MY2021_Tx" SG_ 1701 UUDTTCMResponse2 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1701 UUDTTCMResponse2 1; -BA_ "UsedOnPgmDBC" SG_ 1700 UUDTTCMResponse1 1; -BA_ "U_P702_MY2021_Tx" SG_ 1700 UUDTTCMResponse1 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1700 UUDTTCMResponse1 1; -BA_ "UsedOnPgmDBC" SG_ 1697 UUDTPCMResponse2 1; -BA_ "U_P702_MY2021_Tx" SG_ 1697 UUDTPCMResponse2 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1697 UUDTPCMResponse2 1; -BA_ "UsedOnPgmDBC" SG_ 1696 UUDTPCMResponse1 1; -BA_ "U_P702_MY2021_Tx" SG_ 1696 UUDTPCMResponse1 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1696 UUDTPCMResponse1 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1429 PCM_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_GWOnBoardTester 255; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_GWOnBoardTester 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_GWOnBoardTester 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_GWOnBoardTester 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1429 PCM_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_GWNMProxy 255; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_GWNMProxy 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_GWNMProxy 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_GWNMProxy 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_GWNMProxy 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved4 255; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved4 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved4 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved4 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved3 255; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved3 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved3 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved3 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved2 255; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved2 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved2 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved1 255; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved1 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved1 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMNodeId 149; -BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMNodeId 149; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMNodeId 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMNodeId 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMNodeId 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMControl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMControl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMControl 1; -BA_ "GenSigStartValueInteger" SG_ 1100 EngExhMdeQuiet_D2_Stat 0; -BA_ "GenSigSendType" SG_ 1100 EngExhMdeQuiet_D2_Stat 3; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 HvacCmprLim_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1100 HvacCmprLim_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1100 WakeAlarm1_T_Rq 32767; -BA_ "GenSigStartValue" SG_ 1100 WakeAlarm1_T_Rq 32767; -BA_ "U_P702_MY2021_Tx" SG_ 1100 WakeAlarm1_T_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 WakeAlarm1_T_Rq 1; -BA_ "WakeupSignal" SG_ 1100 WakeAlarm1_B_Typ 1; -BA_ "GenSigSendType" SG_ 1100 WakeAlarm1_B_Typ 3; -BA_ "U_P702_MY2021_Tx" SG_ 1100 WakeAlarm1_B_Typ 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 WakeAlarm1_B_Typ 1; -BA_ "GenSigSendType" SG_ 1100 Veh_V_DsplyTrailCtlSet 3; -BA_ "U_P702_MY2021_Tx" SG_ 1100 Veh_V_DsplyTrailCtlSet 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 Veh_V_DsplyTrailCtlSet 1; -BA_ "GenSigSendType" SG_ 1100 TrailCtlPt_B_Falt 3; -BA_ "U_P702_MY2021_Rx" SG_ 1100 TrailCtlPt_B_Falt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1100 TrailCtlPt_B_Falt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 TrailCtlPt_B_Falt 1; -BA_ "GenSigSendType" SG_ 1100 AutoTowAllw_D_StatMnu 3; -BA_ "U_P702_MY2021_Tx" SG_ 1100 AutoTowAllw_D_StatMnu 1; -BA_ "GenSigSendType" SG_ 1100 AutoTowActv_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1100 AutoTowActv_B_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1100 GrossTrainWeight_M_Est 254; -BA_ "GenSigStartValue" SG_ 1100 GrossTrainWeight_M_Est 254; -BA_ "U_P702_MY2021_Rx" SG_ 1100 GrossTrainWeight_M_Est 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1100 GrossTrainWeight_M_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1100 GrossTrainWeight_M_Est 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 GrossTrainWeight_M_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmVeh_V_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmVeh_V_Dsply 1; -BA_ "GenSigSendType" SG_ 1098 EdmSailMdeOn_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmSailMdeOn_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmSailMdeOn_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmPrev_Fe_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmPrev_Fe_Dsply 1; -BA_ "GenSigSendType" SG_ 1098 EdmMsgTxt_D_Rq 3; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 1098 EdmLamp_D_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmLamp_D_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmLamp_D_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmCurrent_Fe_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmCurrent_Fe_Dsply 1; -BA_ "GenSigSendType" SG_ 1098 EdmCmplnc_B_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmCmplnc_B_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmCmplnc_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmCmplnc_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmCmplnc_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1086 EngMnfld_P_Actl 2068; -BA_ "U_P702_MY2021_Tx" SG_ 1086 EngMnfld_P_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 EngMnfld_P_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1086 FuelPumpPwr_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 FuelPumpPwr_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1086 BattULoChrg_U_Cmd 1; -BA_ "U_P702_MY2021_Tx" SG_ 1086 BattULoChrg_U_Cmd 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 BattULoChrg_U_Cmd 1; -BA_ "UsedOnPgmDBC" SG_ 1086 ElLoadCtl_D_Rq 1; -BA_ "ContentDependant" SG_ 1086 ElLoadCtl_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1086 ElLoadCtl_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 ElLoadCtl_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1071 EngAout_N_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 EngAout_N_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 1071 CluPdl_PcRate_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1071 CluPdl_PcRate_Actl 1; -BA_ "ContentDependant" SG_ 1071 CluPdl_PcRate_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1071 CluPdl_PcRate_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 CluPdl_PcRate_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "ContentDependant" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "MetaData" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "GenSigStartValue" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; -BA_ "CrossOver_InfoCAN" SG_ 1071 CluPdlPos_Pc_Meas 1; -BA_ "UsedOnPgmDBC" SG_ 1071 CluPdlPos_Pc_Meas 1; -BA_ "ContentDependant" SG_ 1071 CluPdlPos_Pc_Meas 1; -BA_ "U_P702_MY2021_Rx" SG_ 1071 CluPdlPos_Pc_Meas 1; -BA_ "U_P702_MY2021_Tx" SG_ 1071 CluPdlPos_Pc_Meas 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 CluPdlPos_Pc_Meas 1; -BA_ "CrossOver_InfoCAN" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "UsedOnPgmDBC" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "ContentDependant" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 EngAoutIdl_N_Ntrl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 SlMde_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 SlMde_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 SlMde_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 SlMde_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 IsaOffst_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 IsaOffst_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 GrllShtrPos_D_Cmd 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 GrllShtrPos_D_Cmd 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 GrllShtrPos_D_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 GrllShtrPos_B_Falt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 GrllShtrPos_B_Falt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 GrllShtrPos_B_Falt 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 ObdWarmUp_B_Complt 1; -BA_ "ContentDependant" SG_ 1069 ObdWarmUp_B_Complt 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 ObdWarmUp_B_Complt 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 EngMsgTxt_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1069 EngMsgTxt_D_Rq 1; -BA_ "ContentDependant" SG_ 1069 EngMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 EngMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 EngClnt_Te_ActlDiag 1; -BA_ "ContentDependant" SG_ 1069 EngClnt_Te_ActlDiag 1; -BA_ "U_P702_MY2021_Rx" SG_ 1069 EngClnt_Te_ActlDiag 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 EngClnt_Te_ActlDiag 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 EngClnt_Te_ActlDiag 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngClnt_Te_ActlDiag 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 EngLoad_Pc_CalcDiag 1; -BA_ "ContentDependant" SG_ 1069 EngLoad_Pc_CalcDiag 1; -BA_ "U_P702_MY2021_Rx" SG_ 1069 EngLoad_Pc_CalcDiag 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 EngLoad_Pc_CalcDiag 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 EngLoad_Pc_CalcDiag 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngLoad_Pc_CalcDiag 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 EngAirIn_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1069 EngAirIn_Te_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1069 EngAirIn_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 EngAirIn_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 EngAirIn_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngAirIn_Te_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1069 ApedPos_Pc_ActlDiag 1; -BA_ "ContentDependant" SG_ 1069 ApedPos_Pc_ActlDiag 1; -BA_ "U_P702_MY2021_Rx" SG_ 1069 ApedPos_Pc_ActlDiag 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 ApedPos_Pc_ActlDiag 1; -BA_ "U_P702_MY2021_Tx" SG_ 1069 ApedPos_Pc_ActlDiag 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 ApedPos_Pc_ActlDiag 1; -BA_ "U_P702_MY2021_Tx" SG_ 1060 RearDiffOilTeWarn_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 RearDiffOilTeWarn_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1060 RearDiffOil_Te_Actl 77; -BA_ "GenSigStartValue" SG_ 1060 RearDiffOil_Te_Actl 77; -BA_ "U_P702_MY2021_Tx" SG_ 1060 RearDiffOil_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 RearDiffOil_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1060 BpedDrvMsgTxt_B_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 BpedDrvMsgTxt_B_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1060 FuelLvl_Pc_DsplyEng 48; -BA_ "GenSigStartValue" SG_ 1060 FuelLvl_Pc_DsplyEng 0; -BA_ "U_P702_MY2021_Tx" SG_ 1060 FuelLvl_Pc_DsplyEng 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 FuelLvl_Pc_DsplyEng 1; -BA_ "U_P702_MY2021_Tx" SG_ 1060 FuelLvlWarn_D_ActlEng 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 FuelLvlWarn_D_ActlEng 1; -BA_ "U_P702_MY2021_Tx" SG_ 1060 FuelRange_L_DsplyEng 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 FuelRange_L_DsplyEng 1; -BA_ "U_P702_MY2021_Rx" SG_ 1060 SelDrvMdePt_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1060 SelDrvMdePt_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 SelDrvMdePt_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 FohEng_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1057 FohEng_D_Rq 2; -BA_ "ContentDependant" SG_ 1057 FohEng_D_Rq 1; -BA_ "GenSigStartValue" SG_ 1057 FohEng_D_Rq 2; -BA_ "U_P702_MY2021_Tx" SG_ 1057 FohEng_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 FohEng_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 EngIdlShutDwnTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 EngIdlShutDwnTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 EngIdlShutDown_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1057 EngIdlShutDown_D_Stat 1; -BA_ "ContentDependant" SG_ 1057 EngIdlShutDown_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 EngIdlShutDown_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 EngIdlShutDown_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 1057 EngIdlShutDown_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; -BA_ "GenSigStartValueInteger" SG_ 1057 FUEL_ALCOHOL_PERCNT 255; -BA_ "ContentDependant" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; -BA_ "GenSigStartValue" SG_ 1057 FUEL_ALCOHOL_PERCNT 255; -BA_ "U_P702_MY2021_Tx" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 TrnTotTq_Rt_Est 1; -BA_ "UsedOnPgmDBC" SG_ 1057 TrnTotTq_Rt_Est 1; -BA_ "ContentDependant" SG_ 1057 TrnTotTq_Rt_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 TrnTotTq_Rt_Est 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 TrnTotTq_Rt_Est 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 TrnTotLss_Tq_Est 1; -BA_ "UsedOnPgmDBC" SG_ 1057 TrnTotLss_Tq_Est 1; -BA_ "ContentDependant" SG_ 1057 TrnTotLss_Tq_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 TrnTotLss_Tq_Est 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 TrnTotLss_Tq_Est 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 ECMMILRequest 1; -BA_ "UsedOnPgmDBC" SG_ 1057 ECMMILRequest 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 ECMMILRequest 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 ECMMILRequest 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 AirCondFluidHi_P_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1057 AirCondFluidHi_P_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 AirCondFluidHi_P_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 AirCondFluidHi_P_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 OilPressureWarning 1; -BA_ "UsedOnPgmDBC" SG_ 1057 OilPressureWarning 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 OilPressureWarning 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 OilPressureWarning 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "ContentDependant" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 VehVLimStat_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "ContentDependant" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 VehVLimActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1057 CoolantFanStepAct 1; -BA_ "UsedOnPgmDBC" SG_ 1057 CoolantFanStepAct 1; -BA_ "U_P702_MY2021_Tx" SG_ 1057 CoolantFanStepAct 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 CoolantFanStepAct 1; -BA_ "CrossOver_InfoCAN" SG_ 1055 EcoCochInstNeg_B_Dsply 1; -BA_ "UsedOnPgmDBC" SG_ 1055 EcoCochInstNeg_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochInstNeg_B_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochInstNeg_B_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochInstNeg_B_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochShif_Pc_Dsply 255; -BA_ "GenSigStartValue" SG_ 1055 EcoCochShif_Pc_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochShif_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochShif_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochShif_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochInst_Pc_Dsply 1000; -BA_ "GenSigStartValue" SG_ 1055 EcoCochInst_Pc_Dsply 100; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochInst_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochInst_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochInst_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 255; -BA_ "GenSigStartValue" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochDecel_Pc_Dsply 255; -BA_ "GenSigStartValue" SG_ 1055 EcoCochDecel_Pc_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochDecel_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochDecel_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochDecel_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochCrus_Pc_Dsply 255; -BA_ "GenSigStartValue" SG_ 1055 EcoCochCrus_Pc_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochCrus_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochCrus_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochCrus_Pc_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochA_Pc_Dsply 255; -BA_ "GenSigStartValue" SG_ 1055 EcoCochA_Pc_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochA_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochA_Pc_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochA_Pc_Dsply 1; -BA_ "ContentDependant" SG_ 562 GearNtrl_No_Cs 1; -BA_ "MetaData" SG_ 562 GearNtrl_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 562 GearNtrl_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 562 GearNtrl_No_Cs 1; -BA_ "ContentDependant" SG_ 562 GearNtrl_No_Cnt 1; -BA_ "MetaData" SG_ 562 GearNtrl_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 562 GearNtrl_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 562 GearNtrl_No_Cnt 1; -BA_ "GenSigStartValueInteger" SG_ 562 GearNtrl_D_Stat 2; -BA_ "GenSigStartValue" SG_ 562 GearNtrl_D_Stat 2; -BA_ "GenSigSendType" SG_ 562 GearNtrl_D_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 562 GearNtrl_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 562 GearNtrl_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 523 EngAirFiltMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 EngAirFiltMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 523 WaterInFuel_B_Falt 1; -BA_ "UsedOnPgmDBC" SG_ 523 WaterInFuel_B_Falt 1; -BA_ "U_P702_MY2021_Tx" SG_ 523 WaterInFuel_B_Falt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 WaterInFuel_B_Falt 1; -BA_ "U_P702_MY2021_Tx" SG_ 523 UreaMnAdd_L2_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 UreaMnAdd_L2_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 523 VehUreaRnge3_L_DsplyMx 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 VehUreaRnge3_L_DsplyMx 1; -BA_ "ECGUsedRxSignal" SG_ 523 VehUreaRnge3_L_DsplyMx 1; -BA_ "GenSigStartValueInteger" SG_ 523 UreaMxAdd_L2_Actl 510; -BA_ "GenSigStartValue" SG_ 523 UreaMxAdd_L2_Actl 510; -BA_ "U_P702_MY2021_Tx" SG_ 523 UreaMxAdd_L2_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 UreaMxAdd_L2_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 517 FapLc_B_Err 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 517 FapLc_B_Err 1; -BA_ "U_CX727_MY2021_Rx" SG_ 517 BrkTot_Tq_RqFapLc 1; -BA_ "U_P702_MY2021_Rx" SG_ 517 BrkTot_Tq_RqFapLc 1; -BA_ "U_P702_MY2021_Tx" SG_ 517 BrkTot_Tq_RqFapLc 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 517 BrkTot_Tq_RqFapLc 1; -BA_ "U_P702_MY2021_Tx" SG_ 517 TrnAin_Pc_RqDrv 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 517 TrnAin_Pc_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "UsedOnPgmDBC" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "GenSigStartValueInteger" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "MetaData" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "GenSigStartValue" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "U_P702_MY2021_Rx" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 EngAoutNActl_D_QF 1; -BA_ "CrossOver_InfoCAN" SG_ 516 EngAout3_N_Actl 1; -BA_ "ContentDependant" SG_ 516 EngAout3_N_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 EngAout3_N_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 516 ApedPos_PcRate_ActlArb 1; -BA_ "UsedOnPgmDBC" SG_ 516 ApedPos_PcRate_ActlArb 1; -BA_ "U_P702_MY2021_Rx" SG_ 516 ApedPos_PcRate_ActlArb 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 ApedPos_PcRate_ActlArb 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPos_PcRate_ActlArb 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPos_PcRate_ActlArb 1; -BA_ "CrossOver_InfoCAN" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "UsedOnPgmDBC" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "U_P702_MY2021_Rx" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "U_CX727_MY2021_Rx" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "ECGUsedRxSignal" SG_ 516 ApedPos_Pc_ActlArb 1; -BA_ "CrossOver_InfoCAN" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "MetaData" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPosPcActl_D_Qf 1; -BA_ "CrossOver_InfoCAN" SG_ 516 EngAout_N_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 516 EngAout_N_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 516 EngAout_N_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 EngAout_N_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 516 EngAout_N_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 EngAout_N_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 EngAout_N_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 516 EngAout_N_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 516 ApedPosPcActl_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 516 ApedPosPcActl_No_Cnt 1; -BA_ "ContentDependant" SG_ 516 ApedPosPcActl_No_Cnt 1; -BA_ "MetaData" SG_ 516 ApedPosPcActl_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPosPcActl_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPosPcActl_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 516 ApedPosPcActl_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 516 ApedPosPcActl_No_Cs 1; -BA_ "ContentDependant" SG_ 516 ApedPosPcActl_No_Cs 1; -BA_ "MetaData" SG_ 516 ApedPosPcActl_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPosPcActl_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPosPcActl_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 StrtrMtrDlyStrt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 StrtrMtrDlyStrt_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 VehVTrlrAid_B_Avail 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 VehVTrlrAid_B_Avail 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVTrlrAid_B_Avail 1; -BA_ "CrossOver_InfoCAN" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "MetaData" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVActlEng_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "MetaData" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVActlEng_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 514 Veh_V_RqCcSet 1; -BA_ "UsedOnPgmDBC" SG_ 514 Veh_V_RqCcSet 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 Veh_V_RqCcSet 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 514 Veh_V_RqCcSet 1; -BA_ "U_CX727_MY2021_Rx" SG_ 514 Veh_V_RqCcSet 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 Veh_V_RqCcSet 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 Veh_V_RqCcSet 1; -BA_ "CrossOver_InfoCAN" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "MetaData" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVActlEng_D_Qf 1; -BA_ "CrossOver_InfoCAN" SG_ 514 Veh_V_ActlEng 1; -BA_ "UsedOnPgmDBC" SG_ 514 Veh_V_ActlEng 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 Veh_V_ActlEng 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 514 Veh_V_ActlEng 1; -BA_ "U_CX727_MY2021_Rx" SG_ 514 Veh_V_ActlEng 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 Veh_V_ActlEng 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 Veh_V_ActlEng 1; -BA_ "ECGUsedRxSignal" SG_ 514 Veh_V_ActlEng 1; -BA_ "CrossOver_InfoCAN" SG_ 514 GearRvrse_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 514 GearRvrse_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 514 GearRvrse_D_Actl 7; -BA_ "GenSigStartValue" SG_ 514 GearRvrse_D_Actl 7; -BA_ "U_CX727_MY2021_Rx" SG_ 514 GearRvrse_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 514 GearRvrse_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 GearRvrse_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 GearRvrse_D_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 514 GearRvrse_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D2_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D2_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTotTqRq_No_Cs 1; -BA_ "ContentDependant" SG_ 512 PrplWhlTotTqRq_No_Cs 1; -BA_ "MetaData" SG_ 512 PrplWhlTotTqRq_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTotTqRq_No_Cs 1; -BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTotTqRq_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; -BA_ "ContentDependant" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; -BA_ "MetaData" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; -BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTot_Tq_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTot_Tq_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 512 PrplWhlTot_Tq_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTot_Tq_LimMn 1; -BA_ "U_CX727_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_LimMn 1; -BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_LimMn 1; -BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTot_Tq_LimMn 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 512 PrplWhlTot_Tq_LimMn 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 512 PtDrvMde_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 512 PtDrvMde_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 381 EngOilLife_T_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 EngOilLife_T_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 381 EngOilSrvcMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 EngOilSrvcMsgTxt_D_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 381 EngOilSrvcMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 381 DistToNextOilChange 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 DistToNextOilChange 1; -BA_ "U_P702_MY2021_Tx" SG_ 381 RunDryPrevent_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 RunDryPrevent_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 381 WaterInFuel 1; -BA_ "UsedOnPgmDBC" SG_ 381 WaterInFuel 1; -BA_ "U_P702_MY2021_Tx" SG_ 381 WaterInFuel 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 WaterInFuel 1; -BA_ "ECGUsedRxSignal" SG_ 381 WaterInFuel 1; -BA_ "CrossOver_InfoCAN" SG_ 381 GlowIndication 1; -BA_ "UsedOnPgmDBC" SG_ 381 GlowIndication 1; -BA_ "U_P702_MY2021_Tx" SG_ 381 GlowIndication 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 GlowIndication 1; -BA_ "WakeupSignal" SG_ 380 EngOilLvlWarn_D_Rq1 1; -BA_ "CrossOver_InfoCAN" SG_ 380 EngOilLvlWarn_D_Rq1 1; -BA_ "U_P702_MY2021_Tx" SG_ 380 EngOilLvlWarn_D_Rq1 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngOilLvlWarn_D_Rq1 1; -BA_ "CrossOver_InfoCAN" SG_ 380 EngExhBrkOnLamp_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 380 EngExhBrkOnLamp_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngExhBrkOnLamp_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 380 EngExhBrkAutoLamp_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 380 EngExhBrkAutoLamp_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngExhBrkAutoLamp_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 380 EngAout_N_MxAllw 1; -BA_ "UsedOnPgmDBC" SG_ 380 EngAout_N_MxAllw 1; -BA_ "U_P702_MY2021_Tx" SG_ 380 EngAout_N_MxAllw 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngAout_N_MxAllw 1; -BA_ "CrossOver_InfoCAN" SG_ 380 EngExhBrkMde_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 380 EngExhBrkMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 380 EngExhBrkMde_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 380 EngExhBrkMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngExhBrkMde_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 377 HvacAirFullOut_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 HvacAirFullOut_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 377 FuelFlw_Vl_Dsply 1; -BA_ "UsedOnPgmDBC" SG_ 377 FuelFlw_Vl_Dsply 1; -BA_ "ContentDependant" SG_ 377 FuelFlw_Vl_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 FuelFlw_Vl_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 FuelFlw_Vl_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 377 FuelFlw_Vl_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 377 FuelFillInlet_B_Dsply 1; -BA_ "UsedOnPgmDBC" SG_ 377 FuelFillInlet_B_Dsply 1; -BA_ "ContentDependant" SG_ 377 FuelFillInlet_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 FuelFillInlet_B_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 FuelFillInlet_B_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 377 EngSrvcRqd_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 377 EngSrvcRqd_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 EngSrvcRqd_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 EngSrvcRqd_B_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 377 EngSrvcRqd_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 377 OdoCount 1; -BA_ "UsedOnPgmDBC" SG_ 377 OdoCount 1; -BA_ "ContentDependant" SG_ 377 OdoCount 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 OdoCount 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 OdoCount 1; -BA_ "CrossOver_InfoCAN" SG_ 377 EngOilLife_Pc_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 377 EngOilLife_Pc_Actl 1; -BA_ "ContentDependant" SG_ 377 EngOilLife_Pc_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 EngOilLife_Pc_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 EngOilLife_Pc_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 377 EngOilLife_Pc_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 377 FuelFilterLamp_B_Dsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 FuelFilterLamp_B_Dsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 FuelFilterLamp_B_Dsply 1; -BA_ "ECGUsedRxSignal" SG_ 377 FuelFilterLamp_B_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 377 AirCondRec_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 377 AirCondRec_B_Rq 1; -BA_ "ContentDependant" SG_ 377 AirCondRec_B_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 AirCondRec_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 AirCondRec_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 377 AirCondClutch_B_Stats 1; -BA_ "UsedOnPgmDBC" SG_ 377 AirCondClutch_B_Stats 1; -BA_ "ContentDependant" SG_ 377 AirCondClutch_B_Stats 1; -BA_ "U_P702_MY2021_Tx" SG_ 377 AirCondClutch_B_Stats 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 AirCondClutch_B_Stats 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 GasPrtc_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 GasPrtc_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 376 EngAout_Aa_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 376 EngAout_Aa_Actl 1; -BA_ "ContentDependant" SG_ 376 EngAout_Aa_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 376 EngAout_Aa_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 376 EngAout_Aa_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 EngAout_Aa_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 EngAout_Aa_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 376 DynoMde_B_Cmd 1; -BA_ "U_P702_MY2021_Rx" SG_ 376 DynoMde_B_Cmd 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 376 DynoMde_B_Cmd 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 DynoMde_B_Cmd 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 DynoMde_B_Cmd 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 AslIconDsply_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AslIconDsply_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 AslChime_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AslChime_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 376 HvacHtrCore2_Te_Actl 200; -BA_ "U_P702_MY2021_Tx" SG_ 376 HvacHtrCore2_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 EcssLamp_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 EcssLamp_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "MetaData" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "GenSigStartValue" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmbTe_D_Qf 1; -BA_ "CrossOver_InfoCAN" SG_ 376 AirAmb_Te_ActlFilt 1; -BA_ "UsedOnPgmDBC" SG_ 376 AirAmb_Te_ActlFilt 1; -BA_ "GenSigStartValueInteger" SG_ 376 AirAmb_Te_ActlFilt 512; -BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmb_Te_ActlFilt 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmb_Te_ActlFilt 1; -BA_ "ECGUsedRxSignal" SG_ 376 AirAmb_Te_ActlFilt 1; -BA_ "CrossOver_InfoCAN" SG_ 376 AirAmb_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 376 AirAmb_Te_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 376 AirAmb_Te_Actl 512; -BA_ "U_P702_MY2021_Rx" SG_ 376 AirAmb_Te_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 376 AirAmb_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmb_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmb_Te_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 376 AirAmb_P_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 376 AirAmb_P_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 376 AirAmb_P_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmb_P_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmb_P_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 373 DieslPrtc2_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 DieslPrtc2_D_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 373 DieslPrtc2_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 373 DieslPrtcRgen_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 373 DieslPrtcRgen_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 373 DieslPrtcRgen_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 373 DieslPrtcRgen_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 373 DieslPrtcRgen_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 DieslPrtcRgen_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 373 EngTeColdPrtct_D_Stats 1; -BA_ "UsedOnPgmDBC" SG_ 373 EngTeColdPrtct_D_Stats 1; -BA_ "U_P702_MY2021_Tx" SG_ 373 EngTeColdPrtct_D_Stats 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 EngTeColdPrtct_D_Stats 1; -BA_ "CrossOver_InfoCAN" SG_ 373 EngExhOvrTe_B_RqDsply 1; -BA_ "UsedOnPgmDBC" SG_ 373 EngExhOvrTe_B_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 373 EngExhOvrTe_B_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 EngExhOvrTe_B_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 373 EngExhOvrTe_B_RqDsply 1; -BA_ "GenSigStartValueInteger" SG_ 359 PrplWhlRgenMn_Tq_Actl 4095; -BA_ "U_CX727_MY2021_Rx" SG_ 359 PrplWhlRgenMn_Tq_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 PrplWhlRgenMn_Tq_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 PrplWhlRgenMn_Tq_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 359 ElPw_D_StatStrtStop 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 ElPw_D_StatStrtStop 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 ElPw_D_StatStrtStop 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 ElPw_D_StatStrtStop 1; -BA_ "CrossOver_InfoCAN" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "ContentDependant" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 TrnAin_Tq_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 359 PrplWhlTot2_Tq_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 359 PwPckTq_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 359 PwPckTq_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 PwPckTq_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 359 PwPckTq_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 359 PwPckTq_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 PwPckTq_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 PwPckTq_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 359 PwPckTq_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 359 Eng_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 359 Eng_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 359 Eng_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 Eng_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 Eng_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 Eng_D_Stat 1; -BA_ "ECGUsedRxSignal" SG_ 359 Eng_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 359 PlgActvArb_B_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 359 PlgActvArb_B_Actl 1; -BA_ "ContentDependant" SG_ 359 PlgActvArb_B_Actl 1; -BA_ "GenSigStartValue" SG_ 359 PlgActvArb_B_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 359 PlgActvArb_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 359 ElPw_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 359 ElPw_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 ElPw_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 359 ElPw_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 359 ElPw_D_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 ElPw_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 ElPw_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "ContentDependant" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "MetaData" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 TrnAinTq_D_Qf 1; -BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtStdby_D_Indic 1; -BA_ "GenSigStartValueInteger" SG_ 358 StopStrtStdby_D_Indic 0; -BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtStdby_D_Indic 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtStdby_D_Indic 1; -BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtIODTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtIODTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtIODTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtDrvMde_D_Indic 1; -BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtDrvMde_D_Indic 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtDrvMde_D_Indic 1; -BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtMsgTxt_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 358 OdoTripVerify_L_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 358 OdoTripVerify_L_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 OdoTripVerify_L_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 358 HiElPwInhbt_B_Stat 1; -BA_ "ContentDependant" SG_ 358 HiElPwInhbt_B_Stat 1; -BA_ "U_P702_MY2021_Tx" SG_ 358 HiElPwInhbt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 HiElPwInhbt_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 358 AutoStopPtDelta_I_Est 1; -BA_ "GenSigStartValueInteger" SG_ 358 AutoStopPtDelta_I_Est 127; -BA_ "ContentDependant" SG_ 358 AutoStopPtDelta_I_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 358 AutoStopPtDelta_I_Est 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 AutoStopPtDelta_I_Est 1; -BA_ "UsedOnPgmDBC" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "GenSigStartValueInteger" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "MetaData" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "GenSigStartValue" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "U_P702_MY2021_Rx" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "U_CX727_MY2021_Rx" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 BPedDrvAppl_D_QF 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 CmbbDeny_B_ActlPrpl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CmbbDeny_B_ActlPrpl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 PrplTqMnSat_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 PrplTqMnSat_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "GenSigStartValue" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 357 BpedDrvAppl_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 CmbbEngTqMn_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CmbbEngTqMn_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 357 Veh_V_DsplyCcSet 1; -BA_ "UsedOnPgmDBC" SG_ 357 Veh_V_DsplyCcSet 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 Veh_V_DsplyCcSet 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 Veh_V_DsplyCcSet 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 AccEngStat_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 AccEngStat_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 357 CcMde_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 357 CcMde_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 357 CcMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 CcMde_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 CcMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CcMde_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 357 CcStat_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 357 CcStat_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 357 CcStat_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 CcStat_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 357 CcStat_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 CcStat_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CcStat_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 EngAout_N_MnAllw 1; -BA_ "CrossOver_InfoCAN" SG_ 357 CcOvrrdActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 357 CcOvrrdActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 CcOvrrdActv_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 357 CcOvrrdActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 CcOvrrdActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CcOvrrdActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 357 AccStopMde_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 357 AccStopMde_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 357 AccStopMde_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 357 AccStopMde_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 AccStopMde_D_Rq 1; -BA_ "U_P702_MY2021_Tx" SG_ 355 AutoRgenTxt_B_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 AutoRgenTxt_B_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 355 AutoRgenTxt_B_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 355 AccFllwMdeActv_B_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 355 AccFllwMdeActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 AccFllwMdeActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 355 EngPtoMde_D_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 355 EngPtoMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 EngPtoMde_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 355 ManRgenTxt_D_RqDsply 1; -BA_ "UsedOnPgmDBC" SG_ 355 ManRgenTxt_D_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 355 ManRgenTxt_D_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 ManRgenTxt_D_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 355 ManRgenTxt_D_RqDsply 1; -BA_ "CrossOver_InfoCAN" SG_ 355 ManRgenSoot_Pc_RqDsply 1; -BA_ "UsedOnPgmDBC" SG_ 355 ManRgenSoot_Pc_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 355 ManRgenSoot_Pc_RqDsply 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 ManRgenSoot_Pc_RqDsply 1; -BA_ "ECGUsedRxSignal" SG_ 355 ManRgenSoot_Pc_RqDsply 1; -BA_ "U_P702_MY2021_Tx" SG_ 355 DieslMsgTxt_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 DieslMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 342 EngOvrhtMitgActv_D_Ind 1; -BA_ "UsedOnPgmDBC" SG_ 342 EngOvrhtMitgActv_D_Ind 1; -BA_ "ContentDependant" SG_ 342 EngOvrhtMitgActv_D_Ind 1; -BA_ "U_P702_MY2021_Tx" SG_ 342 EngOvrhtMitgActv_D_Ind 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngOvrhtMitgActv_D_Ind 1; -BA_ "CrossOver_InfoCAN" SG_ 342 EngClntTe_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 342 EngClntTe_D_Qf 1; -BA_ "MetaData" SG_ 342 EngClntTe_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 342 EngClntTe_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 342 EngClntTe_D_Qf 1; -BA_ "U_P702_MY2021_Tx" SG_ 342 EngClntTe_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngClntTe_D_Qf 1; -BA_ "CrossOver_InfoCAN" SG_ 342 EngGoutLss_Tq_Est 1; -BA_ "ContentDependant" SG_ 342 EngGoutLss_Tq_Est 1; -BA_ "U_P702_MY2021_Tx" SG_ 342 EngGoutLss_Tq_Est 1; -BA_ "CrossOver_InfoCAN" SG_ 342 EngOil_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 342 EngOil_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngOil_Te_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 342 EngClnt_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 342 EngClnt_Te_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 342 EngClnt_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 342 EngClnt_Te_Actl 1; -BA_ "U_P702_MY2021_Tx" SG_ 342 EngClnt_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngClnt_Te_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 342 EngClnt_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 71 immoTarget1Status 1; -BA_ "U_P702_MY2021_Rx" SG_ 71 immoTarget1Status 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 71 immoTarget1Status 1; -BA_ "U_CX727_MY2021_Rx" SG_ 71 immoTarget1Status 1; -BA_ "U_P702_MY2021_Tx" SG_ 71 immoTarget1Status 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 71 immoTarget1Status 1; -BA_ "UsedOnPgmDBC" SG_ 71 immoTarget1Data 1; -BA_ "U_CX727_MY2021_Rx" SG_ 71 immoTarget1Data 1; -BA_ "U_P702_MY2021_Rx" SG_ 71 immoTarget1Data 1; -BA_ "U_P702_MY2021_Tx" SG_ 71 immoTarget1Data 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 71 immoTarget1Data 1; -BA_ "UsedOnPgmDBC" SG_ 71 immoTarget1Cmd 1; -BA_ "U_CX727_MY2021_Rx" SG_ 71 immoTarget1Cmd 1; -BA_ "U_P702_MY2021_Rx" SG_ 71 immoTarget1Cmd 1; -BA_ "U_P702_MY2021_Tx" SG_ 71 immoTarget1Cmd 1; -BA_ "U_T6_MCA_MY2020_Tx" SG_ 71 immoTarget1Cmd 1; -BA_ "GenSigSendType" SG_ 1822 TesterPhysicalResGWM_F1 3; -BA_ "ECGUsedTxSignal" SG_ 1822 TesterPhysicalResGWM_F1 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1438 GWM_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_GWOnBoardTester 255; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1438 GWM_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_GWNMProxy 255; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_GWNMProxy 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved4 255; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved3 255; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved2 255; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved1 255; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMNodeId 158; -BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMNodeId 158; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMControl 1; -BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Rx" SG_ 954 GenericSwtch3_No_Actl 1; -BA_ "ContentDependant" SG_ 954 GenericSwtch2_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 954 GenericSwtch2_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 954 GenericSwtch1_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1006 PersIndexIpmb_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1006 PersIndexIpmb_D_Actl 4; -BA_ "GenSigStartValue" SG_ 1006 PersIndexIpmb_D_Actl 4; -BA_ "GenSigSendType" SG_ 1006 PersIndexIpmb_D_Actl 3; -BA_ "CrossOver_InfoCAN" SG_ 1006 FeatNoIpmbActl 1; -BA_ "GenSigSendType" SG_ 1006 FeatNoIpmbActl 3; -BA_ "CrossOver_InfoCAN" SG_ 1006 FeatConfigIpmbActl 1; -BA_ "GenSigSendType" SG_ 1006 FeatConfigIpmbActl 3; -BA_ "GenSigSendType" SG_ 820 AhbStatGfhbFdbk_D_Actl 3; -BA_ "U_P702_MY2021_Tx" SG_ 820 AhbStatGfhbFdbk_D_Actl 1; -BA_ "GenSigSendType" SG_ 820 HeadLghtDrvSide_B_Stat 3; -BA_ "U_P702_MY2021_Tx" SG_ 820 HeadLghtDrvSide_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 820 HeadLghtHiOn_B_StatHcm 1; -BA_ "GenSigSendType" SG_ 820 HeadLghtHiOn_B_StatHcm 3; -BA_ "U_P702_MY2021_Tx" SG_ 820 HeadLghtHiOn_B_StatHcm 1; -BA_ "CrossOver_InfoCAN" SG_ 820 Adaptive_Hdlmp_Fault 1; -BA_ "GenSigSendType" SG_ 820 Adaptive_Hdlmp_Fault 3; -BA_ "U_P702_MY2021_Tx" SG_ 820 Adaptive_Hdlmp_Fault 1; -BA_ "GenSigStartValueInteger" SG_ 137 SteWhlOffstRq_D_Stat 2; -BA_ "GenSigStartValue" SG_ 137 SteWhlOffstRq_D_Stat 2; -BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlOffstRq_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 137 SteWhlOffst_An_TotActl 32766; -BA_ "GenSigStartValue" SG_ 137 SteWhlOffst_An_TotActl 32765; -BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlOffst_An_TotActl 1; -BA_ "GenSigStartValueInteger" SG_ 137 SteWhlBrkOffst_An_Actl 32766; -BA_ "GenSigStartValue" SG_ 137 SteWhlBrkOffst_An_Actl 32765; -BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlBrkOffst_An_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 137 SteWhlBrkAnActl_No_Cs 1; -BA_ "MetaData" SG_ 137 SteWhlBrkAnActl_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlBrkAnActl_No_Cs 1; -BA_ "CrossOver_InfoCAN" SG_ 137 SteWhlBrkAnActl_No_Cnt 1; -BA_ "MetaData" SG_ 137 SteWhlBrkAnActl_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlBrkAnActl_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 129 SelDrvMdeSwtch_D_Stat4 1; -BA_ "U_P702_MY2021_Rx" SG_ 129 SelDrvMdeSwtch_D_Stat4 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchView_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchSet_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchPhon_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchNav_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchMed_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchIod_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchHud_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchBack_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchMenu_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchUp_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchRght_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchOk_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchLeft_B_Stat 1; -BA_ "WakeupSignal" SG_ 129 SteWhlSwtchDown_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 935 SodRight_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 935 SodRight_D_Stat 2; -BA_ "GenSigStartValue" SG_ 935 SodRight_D_Stat 2; -BA_ "GenSigSendType" SG_ 935 SodRight_D_Stat 3; -BA_ "GenSigSendType" SG_ 935 CtaAlrtRight2_D_Stat 3; -BA_ "GenSigSendType" SG_ 935 BttRight_D_Stat 3; -BA_ "GenSigSendType" SG_ 935 BttRight_D_RqDrv 3; -BA_ "GenSigSendType" SG_ 935 CtaBrkRightMsgTxt_B_Rq 3; -BA_ "GenSigSendType" SG_ 935 CtaRightBrkEnbl_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 935 CtaRightBrkEnbl_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 935 CtaRightBrkEnbl_B_Rq 1; -BA_ "GenSigSendType" SG_ 935 CtaRightBrkDecel_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 935 CtaRightBrkDecel_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 935 CtaRightBrkDecel_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 935 Side_Detect_R_Illum 1; -BA_ "GenSigStartValueInteger" SG_ 935 Side_Detect_R_Illum 100; -BA_ "GenSigStartValue" SG_ 935 Side_Detect_R_Illum 100; -BA_ "CrossOver_InfoCAN" SG_ 935 CtaSnsRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 935 CtaSnsRight_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 935 CtaAlrtRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 935 CtaAlrtRight_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 935 CtaRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 935 CtaRight_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 935 SodSnsRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 935 SodSnsRight_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 935 SodAlrtRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 935 SodAlrtRight_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 935 SodDetctRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 935 SodDetctRight_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 935 SodWarnRight_Prd_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 935 SodWarnRight_Prd_Rq 14; -BA_ "GenSigStartValue" SG_ 935 SodWarnRight_Prd_Rq 14; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte8 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte8 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte8 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte7 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte7 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte7 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte6 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte6 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte6 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte5 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte5 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte5 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte4 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte4 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte4 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte3 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte3 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte3 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte2 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte2 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte2 1; -BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte1 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte1 1; -BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte1 1; -BA_ "GenSigStartValueInteger" SG_ 261 ChrgStatDsply_D_Rq 1; -BA_ "GenSigStartValue" SG_ 261 ChrgStatDsply_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1146 TrlrAidSwtch_D_RqDrv 1; -BA_ "GenSigStartValueInteger" SG_ 1146 TrlrAidCtl_U_RqDrv 4094; -BA_ "GenSigStartValue" SG_ 1146 TrlrAidCtl_U_RqDrv 4093; -BA_ "U_P702_MY2021_Rx" SG_ 1146 TrlrAidCtl_U_RqDrv 1; -BA_ "U_P702_MY2021_Rx" SG_ 533 TrlrAidMde_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTOn_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 533 OnbChrgGoTOn_D_Rq 2; -BA_ "GenSigStartValue" SG_ 533 OnbChrgGoTOn_D_Rq 2; -BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTMnte_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 533 OnbChrgGoTMnte_D_Rq 1; -BA_ "MetaData" SG_ 533 OnbChrgGoTMnte_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 533 OnbChrgGoTHr_T_Rq 30; -BA_ "GenSigStartValue" SG_ 533 OnbChrgGoTHr_T_Rq 30; -BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTElement_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 533 OnbChrgGoTElement_D_Rq 1; -BA_ "MetaData" SG_ 533 OnbChrgGoTElement_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTDelete_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgClearAll_B_Rq 1; -BA_ "ECGUsedTxSignal" SG_ 533 OnbChrgClearAll_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTUpdate_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1041 ElCmpr_Pw_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAuxIsol_D_Rq 1; -BA_ "GenSigStartValue" SG_ 1067 BattULoAuxIsol_D_Rq 2; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_U_Rq 1; -BA_ "GenSigStartValue" SG_ 1067 BattULoAux_U_Rq 3296; -BA_ "GenSigStartValueInteger" SG_ 1067 BattULoAuxSoc_Pc_Actl 95; -BA_ "GenSigStartValue" SG_ 1067 BattULoAuxSoc_Pc_Actl 95; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAuxSoc_Pc_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1067 BattULoAux_I_Actl 2048; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_I_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_D_Qlty 1; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoCrnkStrt_U_Pred 1; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoCrnkBelt_U_Pred 1; -BA_ "GenSigStartValueInteger" SG_ 1067 BattULoAux_U_Actl 203; -BA_ "GenSigStartValue" SG_ 1067 BattULoAux_U_Actl 203; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_U_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_B_Falt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1112 BattTracChrgSustn_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1112 BattTracCnnct_D_Cmd 1; -BA_ "U_P702_MY2021_Rx" SG_ 1112 BattTracHvilOpen_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1112 BattTracDcdcDis_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1112 BattTracDelta_Te_Actl 164; -BA_ "GenSigStartValue" SG_ 1112 BattTracDelta_Te_Actl 120; -BA_ "ContentDependant" SG_ 1112 BattTracClntPmp_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 139 AfsPw_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 139 AfsPw_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 139 ActvFrontSteLck_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 139 ActvFrontSteLck_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 139 SelDrvMdeAdptSte_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_No_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1121 SelDrvMdeCnt_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1121 SelDrvMdeCnt_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1120 DrvSlipCtlMde_B_Rq3 1; -BA_ "UsedOnPgmDBC" SG_ 1120 DrvSlipCtlMde_B_Rq3 1; -BA_ "U_P702_MY2021_Rx" SG_ 1120 DrvSlipCtlMde_B_Rq3 1; -BA_ "U_P702_MY2021_Rx" SG_ 1120 HybMdeSwtch_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1120 RearDiffLck_D_RqDrv 2; -BA_ "GenSigStartValue" SG_ 1120 RearDiffLck_D_RqDrv 2; -BA_ "U_P702_MY2021_Rx" SG_ 1120 RearDiffLck_D_RqDrv 1; -BA_ "GenSigStartValueInteger" SG_ 1120 AwdMde_D_RqDrv 5; -BA_ "GenSigStartValue" SG_ 1120 AwdMde_D_RqDrv 5; -BA_ "U_P702_MY2021_Rx" SG_ 1120 AwdMde_D_RqDrv 1; -BA_ "UsedOnPgmDBC" SG_ 1120 HdcSwtchPos_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1120 HdcSwtchPos_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1050 Outside_Air_Temp_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1050 Outside_Air_Temp_Stat 254; -BA_ "GenSigStartValue" SG_ 1050 Outside_Air_Temp_Stat 254; -BA_ "U_P702_MY2021_Rx" SG_ 1050 Outside_Air_Temp_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1050 Outside_Air_Temp_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 1137 RngPerChrgAvg_L_Dsply 4094; -BA_ "GenSigStartValue" SG_ 1137 RngPerChrgAvg_L_Dsply 4093; -BA_ "U_P702_MY2021_Tx" SG_ 1137 RngPerChrgAvg_L_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev3X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev1X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1255 BalrRight4CurntX_L_Actl 0; -BA_ "GenSigSendType" SG_ 1254 BalrRight3Threat_D_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev3X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev1X_L_Actl 0; -BA_ "GenSigSendType" SG_ 1254 BalrRight3Fast_B_Stat 3; -BA_ "GenSigSendType" SG_ 1254 BalrRight3Dsply_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1254 BalrRight3CurntX_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev3X_L_Actl 0; -BA_ "GenSigSendType" SG_ 1253 BalrRight2Threat_D_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev1X_L_Actl 0; -BA_ "GenSigSendType" SG_ 1253 BalrRight2Fast_B_Stat 3; -BA_ "GenSigSendType" SG_ 1253 BalrRight2Dsply_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1253 BalrRight2CurntX_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev3X_L_Actl 0; -BA_ "GenSigSendType" SG_ 1252 BalrRight1Threat_D_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev1X_L_Actl 0; -BA_ "GenSigSendType" SG_ 1252 BalrRight1Fast_B_Stat 3; -BA_ "GenSigSendType" SG_ 1252 BalrRight1Dsply_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1252 BalrRight1CurntX_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev3X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev1X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1251 BalrLeft4CurntX_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev3X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev1X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1250 BalrLeft3CurntX_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev3X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev1X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1249 BalrLeft2CurntX_L_Actl 0; -BA_ "GenSigSendType" SG_ 1248 BalrLeft1Threat_D_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev3Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev3Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev3X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev3X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev2Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev2Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev2X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev2X_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev1Y_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev1Y_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev1X_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev1X_L_Actl 0; -BA_ "GenSigSendType" SG_ 1248 BalrLeft1Fast_B_Stat 3; -BA_ "GenSigSendType" SG_ 1248 BalrLeft1Dsply_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1CurntY_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1CurntY_L_Actl 0; -BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1CurntX_L_Actl 64; -BA_ "GenSigStartValue" SG_ 1248 BalrLeft1CurntX_L_Actl 0; -BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrTrgtAcquire_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrRvrse_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAid_D2_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAidTrgtId_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1113 TrlrAid_An3_Actl 720; -BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAid_An3_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1113 TrlrAid_AnRate2_Actl 400; -BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAid_AnRate2_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1113 HitchToVehAxle_L_Calc 255; -BA_ "GenSigStartValue" SG_ 1113 HitchToVehAxle_L_Calc 255; -BA_ "U_P702_MY2021_Rx" SG_ 1113 HitchToVehAxle_L_Calc 1; -BA_ "GenSigSendType" SG_ 1105 TrlrAidSwtchLamp_B_Rq 3; -BA_ "GenSigSendType" SG_ 1105 TrlrHitchMsgTxt_D_Rq 3; -BA_ "GenSigSendType" SG_ 1105 TrlrHitchIcon_D_Rq 3; -BA_ "GenSigSendType" SG_ 1105 TrlrHitchChime_D_Rq 3; -BA_ "GenSigSendType" SG_ 1105 TrlrAidEnbl_D_RqAdas 3; -BA_ "U_P702_MY2021_Rx" SG_ 1105 TrlrAidEnbl_D_RqAdas 1; -BA_ "GenSigSendType" SG_ 1105 TrlrRvrseMsgTxt_D2_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 1105 TrlrRvrseMsgTxt_D2_Rq 1; -BA_ "GenSigSendType" SG_ 1105 TrlrRvrseEnbl_D2_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 1105 TrlrRvrseEnbl_D2_Stat 1; -BA_ "GenSigSendType" SG_ 1105 RbaMsg_D_Rq 3; -BA_ "WakeupSignal" SG_ 1105 BrkDecel_B_RqRba 1; -BA_ "CrossOver_InfoCAN" SG_ 1105 BrkDecel_B_RqRba 1; -BA_ "UsedOnPgmDBC" SG_ 1105 BrkDecel_B_RqRba 1; -BA_ "GenSigSendType" SG_ 1105 BrkDecel_B_RqRba 3; -BA_ "U_P702_MY2021_Rx" SG_ 1105 BrkDecel_B_RqRba 1; -BA_ "WakeupSignal" SG_ 1105 BrkEnbl_B_RqRba 1; -BA_ "CrossOver_InfoCAN" SG_ 1105 BrkEnbl_B_RqRba 1; -BA_ "UsedOnPgmDBC" SG_ 1105 BrkEnbl_B_RqRba 1; -BA_ "GenSigSendType" SG_ 1105 BrkEnbl_B_RqRba 3; -BA_ "U_P702_MY2021_Rx" SG_ 1105 BrkEnbl_B_RqRba 1; -BA_ "GenSigStartValueInteger" SG_ 1105 Rba_D_Stat 1; -BA_ "GenSigStartValue" SG_ 1105 Rba_D_Stat 1; -BA_ "GenSigSendType" SG_ 1105 Rba_D_Stat 3; -BA_ "GenSigSendType" SG_ 1105 RbaAlrt_D_Dsply 3; -BA_ "GenSigSendType" SG_ 1105 RbaMnu_D_Rq 3; -BA_ "GenSigSendType" SG_ 1105 CamraFrntStat_D_Stat 3; -BA_ "GenSigSendType" SG_ 1105 TrlrHitchLamp_D_Rq2 3; -BA_ "GenSigSendType" SG_ 938 SidePrkSnsR2_D_Stat 3; -BA_ "GenSigSendType" SG_ 938 SidePrkSnsR1_D_Stat 3; -BA_ "GenSigSendType" SG_ 938 SidePrkSnsL2_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 ApaMde_D_Stat 1; -BA_ "GenSigSendType" SG_ 938 ApaMde_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 ApaActvSd_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 938 ApaActvSd_D_Actl 1; -BA_ "GenSigStartValue" SG_ 938 ApaActvSd_D_Actl 1; -BA_ "GenSigSendType" SG_ 938 ApaActvSd_D_Actl 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSwtch_B_Stat 1; -BA_ "GenSigSendType" SG_ 938 PrkAidSwtch_B_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 ApaMde_D_Avail 1; -BA_ "GenSigSendType" SG_ 938 ApaMde_D_Avail 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFrCrnr_D_Stat 1; -BA_ "GenSigSendType" SG_ 938 PrkAidSnsFrCrnr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFrCntr_D_Stat 1; -BA_ "GenSigSendType" SG_ 938 PrkAidSnsFrCntr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFlCrnr_D_Stat 1; -BA_ "GenSigSendType" SG_ 938 PrkAidSnsFlCrnr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFlCntr_D_Stat 1; -BA_ "GenSigSendType" SG_ 938 PrkAidSnsFlCntr_D_Stat 3; -BA_ "GenSigSendType" SG_ 938 PrkBrkEl_B_RqFap 3; -BA_ "U_CX727_MY2021_Rx" SG_ 938 PrkBrkEl_B_RqFap 1; -BA_ "U_P702_MY2021_Rx" SG_ 938 PrkBrkEl_B_RqFap 1; -BA_ "CrossOver_InfoCAN" SG_ 938 RpaChime_D_Rq 1; -BA_ "GenSigSendType" SG_ 938 RpaChime_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 938 FpaChime_D_Rq 1; -BA_ "GenSigSendType" SG_ 938 FpaChime_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 938 PrkAidMsgTxt_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 938 PrkAidMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 938 SidePrkSnsL1_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidAudioMute_B_Rq 1; -BA_ "GenSigSendType" SG_ 938 PrkAidAudioMute_B_Rq 3; -BA_ "GenSigSendType" SG_ 939 ApaBrk_D_Rq 3; -BA_ "GenSigSendType" SG_ 939 SidePrkSnsR4_D_Stat 3; -BA_ "GenSigSendType" SG_ 939 SidePrkSnsR3_D_Stat 3; -BA_ "GenSigSendType" SG_ 939 SidePrkSnsL4_D_Stat 3; -BA_ "GenSigSendType" SG_ 939 SidePrkSnsL3_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidChime_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidChime_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRlCntr_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidSnsRlCntr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRrCrnr_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidSnsRrCrnr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRrCntr_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidSnsRrCntr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRlCrnr_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidSnsRlCrnr_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidRear_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidRear_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidFront_D_Stat 1; -BA_ "GenSigSendType" SG_ 939 PrkAidFront_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 939 PrkAid_D_Falt 1; -BA_ "GenSigSendType" SG_ 939 PrkAid_D_Falt 3; -BA_ "GenSigSendType" SG_ 939 ApaLongCtrlEnbl_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 939 ApaLongCtrlEnbl_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 939 ApaLongCtrlEnbl_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 939 ApaLongCtrlEnbl_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 939 ApaBrk_A_Rq 255; -BA_ "U_P702_MY2021_Rx" SG_ 939 ApaBrk_A_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 939 ApaBrk_A_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 939 ApaBrk_A_Rq 1; -BA_ "GenSigSendType" SG_ 939 PrkAidLamp_D_Rq 3; -BA_ "GenSigStartValueInteger" SG_ 937 Veh_V_RqFap 0; -BA_ "U_P702_MY2021_Rx" SG_ 937 Veh_V_RqFap 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 Veh_V_RqFap 1; -BA_ "MetaData" SG_ 937 TrnRngDRqFap_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 937 TrnRngDRqFap_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 TrnRngDRqFap_No_Cs 1; -BA_ "MetaData" SG_ 937 TrnRngDRqFap_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 937 TrnRngDRqFap_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 TrnRngDRqFap_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 937 TrnRng_D_RqFap 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 TrnRng_D_RqFap 1; -BA_ "GenSigStartValueInteger" SG_ 937 FapLcDistToObj_L_Actl 254; -BA_ "GenSigStartValue" SG_ 937 FapLcDistToObj_L_Actl 254; -BA_ "U_P702_MY2021_Rx" SG_ 937 FapLcDistToObj_L_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 FapLcDistToObj_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 936 ApaSys_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 936 ApaSys_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 936 EPASExtAngleStatReq 1; -BA_ "U_P702_MY2021_Rx" SG_ 936 EPASExtAngleStatReq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 936 ExtSteeringAngleReq2 1; -BA_ "U_P702_MY2021_Rx" SG_ 936 ExtSteeringAngleReq2 1; -BA_ "GenSigStartValueInteger" SG_ 877 RngImpctDrv_L_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 877 RngImpctDrv_L_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 877 RngImpctClim_L_Dsply 255; -BA_ "U_P702_MY2021_Tx" SG_ 877 RngImpctClim_L_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 877 VehElEffAvg_No_Dsply 126; -BA_ "GenSigStartValue" SG_ 877 VehElEffAvg_No_Dsply 126; -BA_ "U_P702_MY2021_Tx" SG_ 877 VehElEffAvg_No_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwFuelDrv_D_Dsply 1; -BA_ "GenSigSendType" SG_ 877 PwFlwFuelDrv_D_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwFuelDrv_D_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwFuelClimt_B_Dsply 1; -BA_ "GenSigSendType" SG_ 877 PwFlwFuelClimt_B_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwFuelClimt_B_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwFuelBatt_B_Dsply 1; -BA_ "GenSigSendType" SG_ 877 PwFlwFuelBatt_B_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwFuelBatt_B_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwBattClimt_B_Dsply 1; -BA_ "GenSigSendType" SG_ 877 PwFlwBattClimt_B_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwBattClimt_B_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwBatt_D_Dsply 1; -BA_ "GenSigSendType" SG_ 877 PwFlwBatt_D_Dsply 3; -BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwBatt_D_Dsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_LimChrg 1; -BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_LimDchrg 1; -BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_DchrgInst 1; -BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_ChrgInst 1; -BA_ "GenSigStartValueInteger" SG_ 588 BattTracSoc2_Pc_Actl 16382; -BA_ "GenSigStartValue" SG_ 588 BattTracSoc2_Pc_Actl 16382; -BA_ "U_P702_MY2021_Rx" SG_ 588 BattTracSoc2_Pc_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 588 BattTrac_Te_Actl 150; -BA_ "GenSigStartValue" SG_ 588 BattTrac_Te_Actl 150; -BA_ "U_P702_MY2021_Rx" SG_ 588 BattTrac_Te_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 588 BattTracDiagClr_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 588 BattTracDiagClr_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 587 BattTracClnt_Te_Actl 164; -BA_ "GenSigStartValue" SG_ 587 BattTracClnt_Te_Actl 164; -BA_ "CrossOver_InfoCAN" SG_ 587 BattTracWarnLamp_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 587 BattTracSrvcRqd_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_MxPrtct 700; -BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_MxPrtct 700; -BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_MxPrtct 1; -BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_MnPrtct 300; -BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_MnPrtct 30; -BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_MnPrtct 1; -BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_LimLo 400; -BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_LimLo 400; -BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_LimLo 1; -BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_LimHi 600; -BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_LimHi 600; -BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_LimHi 1; -BA_ "CrossOver_InfoCAN" SG_ 389 HtrnOvrTeLamp_B_Dsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 389 HtrnAin_UHi_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 389 HtrnAin_UHi_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 389 HtrnSrvcRqd_B_Dsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 389 HtrnHvilOpen_B_Actl 1; -BA_ "ECGUsedRxSignal" SG_ 389 HtrnHvilOpen_B_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 389 BattTrac_I_EstVsc 15000; -BA_ "U_P702_MY2021_Rx" SG_ 1009 TrlrAidCancl_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1009 CenterStackRing_D_Actl 2; -BA_ "GenSigStartValue" SG_ 1009 CenterStackRing_D_Actl 2; -BA_ "CrossOver_InfoCAN" SG_ 1009 ValetMode_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 360 GsmSrvcRqd_B_Rq 1; -BA_ "ContentDependant" SG_ 360 GsmSrvcRqd_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 360 TrnGearPwmFalt_B_Actl 1; -BA_ "ContentDependant" SG_ 360 TrnGearPwmFalt_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 360 TrnGearPwmFalt_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 360 TrnGearPwmFalt_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 360 GearButtnStuck_B_Actl 1; -BA_ "ContentDependant" SG_ 360 GearButtnStuck_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 360 GearButtnStuck_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 360 GearButtnStuck_B_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_U_LimLo 88; -BA_ "GenSigStartValue" SG_ 122 BattTrac_U_LimLo 88; -BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_U_LimLo 1; -BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_U_LimHi 163; -BA_ "GenSigStartValue" SG_ 122 BattTrac_U_LimHi 163; -BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_U_LimHi 1; -BA_ "CrossOver_InfoCAN" SG_ 122 VehStrtInhbt_B_RqBatt 1; -BA_ "U_P702_MY2021_Rx" SG_ 122 VehStrtInhbt_B_RqBatt 1; -BA_ "U_P702_MY2021_Rx" SG_ 122 BattTracOffFst_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 122 BattTracOff_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 122 BattTracOff_B_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_U_Actl 1022; -BA_ "GenSigStartValue" SG_ 122 BattTrac_U_Actl 1022; -BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_U_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_I_Actl 15000; -BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_I_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 90 TrnGsmNtmState_D_Actl 1; -BA_ "ContentDependant" SG_ 90 TrnGsmNtmState_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGsmNtmState_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGsmNtmState_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 90 TrnGsmNtmState_D_Actl 1; -BA_ "ContentDependant" SG_ 90 DrQltyDrv_D_StatGsm 1; -BA_ "GenSigStartValue" SG_ 90 DrQltyDrv_D_StatGsm 6; -BA_ "U_P702_MY2021_Rx" SG_ 90 DrQltyDrv_D_StatGsm 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 DrQltyDrv_D_StatGsm 1; -BA_ "U_CX727_MY2021_Rx" SG_ 90 DrQltyDrv_D_StatGsm 1; -BA_ "ContentDependant" SG_ 90 TrnBtsiOvrrd_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnBtsiOvrrd_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnBtsiOvrrd_B_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 90 TrnRng_D_RqGsm 14; -BA_ "GenSigStartValue" SG_ 90 TrnRng_D_RqGsm 14; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnRng_D_RqGsm 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnRng_D_RqGsm 1; -BA_ "U_CX727_MY2021_Rx" SG_ 90 PrkBrkActv_D_RqGsmGear 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 PrkBrkActv_D_RqGsmGear 1; -BA_ "ContentDependant" SG_ 90 TrnValidGearRq_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnValidGearRq_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnValidGearRq_D_Stat 1; -BA_ "ContentDependant" SG_ 90 TrnGearRqCnt_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearRqCnt_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearRqCnt_B_Actl 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_U_Actl 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_U_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_U_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_U_Actl 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlR2 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlR2 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlR2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlR2 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlR1 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlR1 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlR1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlR1 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlR0 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlR0 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlR0 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlR0 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlP2 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlP2 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlP2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlP2 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlP1 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlP1 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlP1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlP1 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlP0 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlP0 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlP0 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlP0 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlN2 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlN2 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlN2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlN2 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlN1 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlN1 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlN1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlN1 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlN0 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlN0 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlN0 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlN0 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlM2 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlM2 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlM2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlM2 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlM1 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlM1 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlM1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlM1 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlM0 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlM0 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlM0 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlM0 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlD2 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlD2 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlD2 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlD2 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlD1 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlD1 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlD1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlD1 1; -BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlD0 1; -BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlD0 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlD0 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlD0 1; -BA_ "ContentDependant" SG_ 90 TrnGear_No_Cs 1; -BA_ "MetaData" SG_ 90 TrnGear_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGear_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGear_No_Cs 1; -BA_ "ContentDependant" SG_ 90 TrnGear_No_Cnt 1; -BA_ "MetaData" SG_ 90 TrnGear_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGear_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGear_No_Cnt 1; -BA_ "WakeupSignal" SG_ 90 TrnGear_D_RqDrv 1; -BA_ "ContentDependant" SG_ 90 TrnGear_D_RqDrv 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGear_D_RqDrv 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGear_D_RqDrv 1; -BA_ "ContentDependant" SG_ 90 BrkSwtchPos_B_ActlGsm 1; -BA_ "U_P702_MY2021_Rx" SG_ 90 BrkSwtchPos_B_ActlGsm 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 BrkSwtchPos_B_ActlGsm 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 ParkLampTrlrOut_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 TrlrLampCtl_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 TrlrBattChrg_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 StopLampTrlrOut_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 TurnLampTrlrRr_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 TurnLampTrlrRl_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1091 TrlrLampCnnct_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1091 TrlrLampCnnct_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1091 TrlrLampCnnct_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1091 TrlrLampCnnct_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1091 TrlrLampCnnct_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 138 SteWhlRelCalib_T_Actl 1; -BA_ "ContentDependant" SG_ 138 SteWhlRelCalib_An_Sns 1; -BA_ "U_P702_MY2021_Rx" SG_ 138 SteWhlRelCalib_An_Sns 1; -BA_ "U_CX727_MY2021_Rx" SG_ 138 SteWhlRelCalib_An_Sns 1; -BA_ "WakeupSignal" SG_ 131 HeadLghtHiCtrl_D_RqAhb 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 HeadLghtHiCtrl_D_RqAhb 1; -BA_ "GenSigStartValueInteger" SG_ 131 WiprFrontSwtch_D_Stat 9; -BA_ "GenSigStartValue" SG_ 131 WiprFrontSwtch_D_Stat 9; -BA_ "WakeupSignal" SG_ 131 HeadLghtHiOn_B_StatAhb 1; -BA_ "CrossOver_InfoCAN" SG_ 131 HeadLghtHiOn_B_StatAhb 1; -BA_ "WakeupSignal" SG_ 131 HeadLghtHiFlash_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 131 WiprFront_D_Stat 15; -BA_ "GenSigStartValue" SG_ 131 WiprFront_D_Stat 15; -BA_ "U_P702_MY2021_Rx" SG_ 131 WiprFront_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 WiprFront_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 131 WiprFront_D_Stat 1; -BA_ "WakeupSignal" SG_ 131 TurnLghtSwtch_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 131 TurnLghtSwtch_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 131 TurnLghtSwtch_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 TurnLghtSwtch_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 131 LghtAmb_D_Sns 7; -BA_ "GenSigStartValue" SG_ 131 LghtAmb_D_Sns 7; -BA_ "U_P702_MY2021_Rx" SG_ 131 LghtAmb_D_Sns 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 AslButtnOnOffPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 AslButtnOnOffPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 AslButtnOnOffCnclPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 AslButtnOnOffCnclPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOnPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOnPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOnOffPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOnOffPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOnOffCnclPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOnOffCnclPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOffPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOffPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAsllButtnResPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAsllButtnResPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnSetIncPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnSetIncPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnSetDecPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnSetDecPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnResIncPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnResIncPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnOnPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnOnPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnIndxIncPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnIndxIncPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnIndxDecPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnIndxDecPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnDeny_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnDeny_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnCnclResPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnCnclResPress 1; -BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnCnclPress 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnCnclPress 1; -BA_ "WakeupSignal" SG_ 787 DrLckCnt_No_ActlTgate 1; -BA_ "WakeupSignal" SG_ 787 DrTgateChime2_D_Rq 1; -BA_ "WakeupSignal" SG_ 787 DrTGate_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 787 DrTGate_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 787 DrTGate_D_Rq 1; -BA_ "WakeupSignal" SG_ 787 PwLftgtIntSw_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 787 Power_Liftgate_Mode_Stt 1; -BA_ "U_P702_MY2021_Rx" SG_ 953 BattRgenLoDChrg_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 953 BattRgenLoChrg_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm3_D_Stat 3; -BA_ "GenSigStartValue" SG_ 953 WakeAlarm3_D_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm2_D_Stat 3; -BA_ "GenSigStartValue" SG_ 953 WakeAlarm2_D_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm1_D_Stat 3; -BA_ "GenSigStartValue" SG_ 953 WakeAlarm1_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 953 WakeAlarm1_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 953 WakeAlarm1_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm0_D_Stat 3; -BA_ "GenSigStartValue" SG_ 953 WakeAlarm0_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 1093 TrlrBrkActCnnct_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1093 TrlrBrkActCnnct_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1093 TrlrBrkActCnnct_B_Actl 1; -BA_ "ContentDependant" SG_ 1093 StopLamp_B_RqTrlrBrk 1; -BA_ "U_P702_MY2021_Rx" SG_ 792 FuelRange_L_Dsply 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 792 FuelRange_L_Dsply 1; -BA_ "ContentDependant" SG_ 792 ElTrip_L_Dsply 1; -BA_ "ContentDependant" SG_ 792 ElLongTerm_L_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 968 SlMde_D_Rq 2; -BA_ "GenSigStartValue" SG_ 968 SlMde_D_Rq 2; -BA_ "U_P702_MY2021_Rx" SG_ 968 SlMde_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 968 SlMde_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 968 IsaOffst_D_Rq 14; -BA_ "GenSigStartValue" SG_ 968 IsaOffst_D_Rq 14; -BA_ "U_P702_MY2021_Rx" SG_ 968 IsaOffst_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 968 IsaOffst_D_Rq 1; -BA_ "WakeupSignal" SG_ 819 Memory_3_SwPsngr_Stat 1; -BA_ "WakeupSignal" SG_ 819 Memory_2_SwPsngr_Stat 1; -BA_ "WakeupSignal" SG_ 819 Memory_1_SwPsngr_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 819 WndwPsngrSide_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 819 WndwPsngrSide_D_Stat 1; -BA_ "WakeupSignal" SG_ 819 Pasngr_Lock_Sw_Stat 1; -BA_ "WakeupSignal" SG_ 819 Pasngr_Lock_Sw_Cnt 1; -BA_ "MetaData" SG_ 819 Pasngr_Lock_Sw_Cnt 1; -BA_ "WakeupSignal" SG_ 819 ChildLckFdbckRp_B_Stat 1; -BA_ "WakeupSignal" SG_ 818 ChildLckPw_N_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 818 WndwDrvSide_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 818 WndwDrvSide_D_Stat 1; -BA_ "WakeupSignal" SG_ 818 KeyCylSwDrvDr_D_Stat 1; -BA_ "GenSigInactiveValue" SG_ 818 Driver_Lock_Sw_Stat 0; -BA_ "WakeupSignal" SG_ 818 Driver_Lock_Sw_Stat 1; -BA_ "WakeupSignal" SG_ 818 Driver_Lock_Sw_Cnt 1; -BA_ "MetaData" SG_ 818 Driver_Lock_Sw_Cnt 1; -BA_ "WakeupSignal" SG_ 818 ChildLckPw_D_Rq 1; -BA_ "WakeupSignal" SG_ 818 ChildLckFdbckRd_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 818 RvrseMirrorChime_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 806 StopStrtDrvMde_B_RqBtn 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 StopStrtDrvMde_B_RqBtn 1; -BA_ "GenSigStartValueInteger" SG_ 806 HvacHtrCore_Te_Rq 0; -BA_ "U_P702_MY2021_Rx" SG_ 806 HvacHtrCore_Te_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacHtrCore_Te_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 806 ClimtHeat_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 ClimtHeat_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 806 ClimtCool_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 ClimtCool_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 806 HvacEvap_Te_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 806 HvacEvap_Te_Rq 400; -BA_ "U_P702_MY2021_Rx" SG_ 806 HvacEvap_Te_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacEvap_Te_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 806 HvacEvap_Te_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 806 HvacEvap_Te_Actl 400; -BA_ "U_P702_MY2021_Rx" SG_ 806 HvacEvap_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacEvap_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 806 HvacAirCond_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 806 HvacAirCond_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacAirCond_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 806 HvacEvap_Te_Offst 1; -BA_ "GenSigStartValueInteger" SG_ 806 HvacEvap_Te_Offst 400; -BA_ "U_P702_MY2021_Rx" SG_ 806 HvacEvap_Te_Offst 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacEvap_Te_Offst 1; -BA_ "U_P702_MY2021_Rx" SG_ 806 ClimtPw_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 ClimtPw_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 765 EngExhMdeQuiet_D2_Rq 0; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 765 EdmSailMde_B_RqDrv 1; -BA_ "WakeupSignal" SG_ 765 DrvInputRequired_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 765 AwdRnge_D_ActlIpc 1; -BA_ "UsedOnPgmDBC" SG_ 765 AwdRnge_D_ActlIpc 1; -BA_ "GenSigStartValueInteger" SG_ 765 AwdRnge_D_ActlIpc 7; -BA_ "GenSigStartValue" SG_ 765 AwdRnge_D_ActlIpc 7; -BA_ "U_P702_MY2021_Rx" SG_ 765 AwdRnge_D_ActlIpc 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 765 AwdRnge_D_ActlIpc 1; -BA_ "GenSigStartValueInteger" SG_ 765 BalrSwtch_D_Stat 1; -BA_ "GenSigStartValue" SG_ 765 BalrSwtch_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 765 BalrMde_D_Rq 0; -BA_ "GenSigStartValueInteger" SG_ 765 WaitToStartLamp_D_Falt 1; -BA_ "GenSigStartValue" SG_ 765 WaitToStartLamp_D_Falt 1; -BA_ "U_P702_MY2021_Rx" SG_ 765 WaitToStartLamp_D_Falt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 765 WaitToStartLamp_D_Falt 1; -BA_ "GenSigStartValueInteger" SG_ 765 EsaOn_B_Rq 1; -BA_ "GenSigStartValue" SG_ 765 EsaOn_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 765 EsaOn_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 765 Btt_L_Actl 126; -BA_ "GenSigStartValue" SG_ 765 Btt_L_Actl 126; -BA_ "U_P702_MY2021_Rx" SG_ 765 SelDrvMdeTxtReset_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 765 SelDrvMdeDsply_B_Avail 1; -BA_ "CrossOver_InfoCAN" SG_ 765 Mc_VehUnitTempUsrSel_St 1; -BA_ "CrossOver_InfoCAN" SG_ 559 EhData2_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 559 EhData2_No_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 559 EhData2_No_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 558 EhData1_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 558 EhData1_No_Actl 0; -BA_ "U_P702_MY2021_Rx" SG_ 558 EhData1_No_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 558 EhData1_No_Actl 1; -BA_ "GenSigSendType" SG_ 934 CtaAlrtLeft2_D_Stat 3; -BA_ "GenSigSendType" SG_ 934 CtaBrkLeftMsgTxt_B_Rq 3; -BA_ "GenSigSendType" SG_ 934 CtaLeftBrkDecel_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 934 CtaLeftBrkDecel_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 934 CtaLeftBrkDecel_B_Rq 1; -BA_ "GenSigSendType" SG_ 934 CtaLeftBrkEnbl_B_Rq 3; -BA_ "U_CX727_MY2021_Rx" SG_ 934 CtaLeftBrkEnbl_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 934 CtaLeftBrkEnbl_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 934 Side_Detect_L_Illum 1; -BA_ "GenSigStartValueInteger" SG_ 934 Side_Detect_L_Illum 100; -BA_ "GenSigStartValue" SG_ 934 Side_Detect_L_Illum 100; -BA_ "GenSigSendType" SG_ 934 BttLeft_D_Stat 3; -BA_ "GenSigSendType" SG_ 934 BttLeft_D_RqDrv 3; -BA_ "CrossOver_InfoCAN" SG_ 934 CtaSnsLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 934 CtaSnsLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 SodDetctLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 934 SodDetctLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 CtaLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 934 CtaLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 CtaAlrtLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 934 CtaAlrtLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 SodLeft_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 934 SodLeft_D_Stat 2; -BA_ "GenSigStartValue" SG_ 934 SodLeft_D_Stat 2; -BA_ "GenSigSendType" SG_ 934 SodLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 SodSnsLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 934 SodSnsLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 SodAlrtLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 934 SodAlrtLeft_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 934 SodWarnLeft_Prd_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 934 SodWarnLeft_Prd_Rq 14; -BA_ "GenSigStartValue" SG_ 934 SodWarnLeft_Prd_Rq 14; -BA_ "CrossOver_InfoCAN" SG_ 1072 DrvSlipCtlMde_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1072 DrvSlipCtlMde_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 DrvSlipCtlMde_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 EngIdlShutDown_B_RqDrv 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 EngIdlShutDown_B_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 HsaMde_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1072 HsaMde_D_Rq 1; -BA_ "GenSigStartValue" SG_ 1072 HsaMde_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 NtrlTowMdeEnbl_B_RqDrv 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 NtrlTowMdeEnbl_B_RqDrv 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 NtrlTowMdeEnbl_B_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 BulbChkActv_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 ParkDetect_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1072 ParkDetect_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 ReducedGuard_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 TRLR_SWAY_CONFIG_CMD 1; -BA_ "WakeupSignal" SG_ 1072 Power_Liftgate_Mode_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 Power_Liftgate_Mode_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 AccEnbl_B_RqDrv 1; -BA_ "GenSigStartValueInteger" SG_ 1072 AccEnbl_B_RqDrv 1; -BA_ "GenSigStartValue" SG_ 1072 AccEnbl_B_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 OdometerMasterValue 1; -BA_ "UsedOnPgmDBC" SG_ 1072 OdometerMasterValue 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 OdometerMasterValue 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 OdometerMasterValue 1; -BA_ "U_CX727_MY2021_Rx" SG_ 1072 OdometerMasterValue 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 EngOilLife_B_RqReset 1; -BA_ "UsedOnPgmDBC" SG_ 1072 EngOilLife_B_RqReset 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 EngOilLife_B_RqReset 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 EngOilLife_B_RqReset 1; -BA_ "WakeupSignal" SG_ 1072 ePRNDL_MODE 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 ePRNDL_MODE 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 ePRNDL_MODE 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 ePRNDL_MODE 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 DrvSlipCtlMde_B_Rq2 1; -BA_ "UsedOnPgmDBC" SG_ 1072 DrvSlipCtlMde_B_Rq2 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 DrvSlipCtlMde_B_Rq2 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 MetricActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1072 MetricActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 MetricActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 MetricActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 KeyTypeChngMykey_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 1072 ManRgen_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1072 ManRgen_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 ManRgen_D_Rq 1; -BA_ "WakeupSignal" SG_ 909 IgnPsswrdDsply_B_Rq 1; -BA_ "WakeupSignal" SG_ 909 ElPwPoint_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 909 SecurityMsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 909 HeadLghtHiPrmsn_D_Stat 3; -BA_ "GenSigStartValue" SG_ 909 HeadLghtHiPrmsn_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 909 HeadLghtHiPrmsn_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 909 SteWhlLckMsgTxt_D_Rq 1; -BA_ "WakeupSignal" SG_ 909 immoMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 909 immoMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 909 PEBackupSlot_Stats 1; -BA_ "CrossOver_InfoCAN" SG_ 909 KeyMykeyTot_No_Cnt 1; -BA_ "MetaData" SG_ 909 KeyMykeyTot_No_Cnt 1; -BA_ "CrossOver_InfoCAN" SG_ 909 Keycode_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 909 KeyAdmnTot_No_Cnt 1; -BA_ "MetaData" SG_ 909 KeyAdmnTot_No_Cnt 1; -BA_ "WakeupSignal" SG_ 963 ImpactEvntFdbck_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 ImpactEvntFdbck_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 963 ImpactEvntFdbck_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoOut_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 963 HeadLampLoOut_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 CrnrLghtRight_Pc_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 CrnrLghtRight_Pc_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 CrnrLghtLeft_Pc_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 CrnrLghtLeft_Pc_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLghtHiFdbck_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 TrnNotInPrkChime_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 963 TrnNotInPrkChime_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 PrkLightChime_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 963 PrkLightChime_B_Rq 1; -BA_ "WakeupSignal" SG_ 963 KeyInIgnWarn_B_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 963 KeyInIgnWarn_B_Cmd 1; -BA_ "UsedOnPgmDBC" SG_ 963 KeyInIgnWarn_B_Cmd 1; -BA_ "WakeupSignal" SG_ 963 HomeSafeLtChime_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HomeSafeLtChime_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 963 HomeSafeLtChime_B_Rq 1; -BA_ "WakeupSignal" SG_ 963 StopLghtOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 StopLghtOn_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 963 StopLghtOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 StopLghtOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 RvrseLghtOn_B_Stat 1; -BA_ "WakeupSignal" SG_ 963 PrkLght_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 PrkLght_D_Stat 1; -BA_ "WakeupSignal" SG_ 963 HeadLghtSwtch_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLghtSwtch_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 963 HeadLghtSwtch_D_Stat 2; -BA_ "GenSigStartValue" SG_ 963 HeadLghtSwtch_D_Stat 2; -BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLghtSwtch_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoFrOn_B_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 963 HeadLampLoFrOn_B_Stat 1; -BA_ "GenSigStartValue" SG_ 963 HeadLampLoFrOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLampLoFrOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoFlOn_B_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 963 HeadLampLoFlOn_B_Stat 1; -BA_ "GenSigStartValue" SG_ 963 HeadLampLoFlOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLampLoFlOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoActv_B_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 963 HeadLampLoActv_B_Stat 1; -BA_ "GenSigStartValue" SG_ 963 HeadLampLoActv_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLampLoActv_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 963 HeadLampLoActv_B_Stat 1; -BA_ "WakeupSignal" SG_ 963 Headlamp_On_Wrning_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 963 Headlamp_On_Wrning_Cmd 1; -BA_ "UsedOnPgmDBC" SG_ 963 Headlamp_On_Wrning_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 963 Park_Brake_Chime_Rqst 1; -BA_ "UsedOnPgmDBC" SG_ 963 Park_Brake_Chime_Rqst 1; -BA_ "WakeupSignal" SG_ 963 HeadLghtHiOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 HeadLghtHiOn_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 963 HeadLghtHiOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLghtHiOn_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 963 HeadLghtHiOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 BrkWarnInd_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 963 BrkWarnInd_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 Brk_Fluid_Lvl_Low 1; -BA_ "UsedOnPgmDBC" SG_ 963 Brk_Fluid_Lvl_Low 1; -BA_ "CrossOver_InfoCAN" SG_ 963 ReducedGuard_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 963 ReducedGuard_D_Stat 1; -BA_ "WakeupSignal" SG_ 963 Perimeter_Alarm_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 963 Perimeter_Alarm_Status 1; -BA_ "WakeupSignal" SG_ 963 Courtesy_BSave_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 963 Courtesy_BSave_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 963 Courtesy_BSave_Stat 1; -BA_ "GenSigStartValue" SG_ 963 Courtesy_BSave_Stat 1; -BA_ "WakeupSignal" SG_ 963 WndwGlbl_D_Cmd 1; -BA_ "CrossOver_InfoCAN" SG_ 963 WndwGlbl_D_Cmd 1; -BA_ "WakeupSignal" SG_ 963 PudLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 PudLamp_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 DayRnngLampOn_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 963 DayRnngLampOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 963 DayRnngLampOn_B_Stat 1; -BA_ "WakeupSignal" SG_ 963 PerimeterAlarmChimeRq 1; -BA_ "CrossOver_InfoCAN" SG_ 963 PerimeterAlarmChimeRq 1; -BA_ "UsedOnPgmDBC" SG_ 963 PerimeterAlarmChimeRq 1; -BA_ "UsedOnPgmDBC" SG_ 145 VehYawWActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 145 VehYawWActl_D_Qf 1; -BA_ "MetaData" SG_ 145 VehYawWActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 145 VehYawWActl_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 145 VehYawWActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 145 VehYawWActl_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 145 VehRolWActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 145 VehRolWActl_D_Qf 1; -BA_ "MetaData" SG_ 145 VehRolWActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 145 VehRolWActl_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRolWActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 145 VehRolWActl_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 145 VehRollYawW_No_Cs 1; -BA_ "MetaData" SG_ 145 VehRollYawW_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRollYawW_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 145 VehRollYawW_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 145 VehRollYaw_No_Cnt 1; -BA_ "MetaData" SG_ 145 VehRollYaw_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRollYaw_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 145 VehRollYaw_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 145 VehYaw_W_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 145 VehYaw_W_Actl 65534; -BA_ "GenSigStartValue" SG_ 145 VehYaw_W_Actl 65534; -BA_ "U_CX727_MY2021_Rx" SG_ 145 VehYaw_W_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 145 VehYaw_W_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 145 VehRol_W_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 145 VehRol_W_Actl 65534; -BA_ "GenSigStartValue" SG_ 145 VehRol_W_Actl 65534; -BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRol_W_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 145 VehRol_W_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 76 FirstRowBuckleMid 1; -BA_ "UsedOnPgmDBC" SG_ 76 FirstRowBuckleMid 1; -BA_ "GenSigStartValueInteger" SG_ 76 FirstRowBuckleMid 3; -BA_ "GenSigStartValue" SG_ 76 FirstRowBuckleMid 3; -BA_ "CrossOver_InfoCAN" SG_ 76 SecondRowBucklePsngr 1; -BA_ "GenSigStartValueInteger" SG_ 76 SecondRowBucklePsngr 3; -BA_ "GenSigStartValue" SG_ 76 SecondRowBucklePsngr 3; -BA_ "CrossOver_InfoCAN" SG_ 76 SecondRowBuckleMid 1; -BA_ "GenSigStartValueInteger" SG_ 76 SecondRowBuckleMid 3; -BA_ "GenSigStartValue" SG_ 76 SecondRowBuckleMid 3; -BA_ "CrossOver_InfoCAN" SG_ 76 SecondRowBuckleDriver 1; -BA_ "GenSigStartValueInteger" SG_ 76 SecondRowBuckleDriver 3; -BA_ "GenSigStartValue" SG_ 76 SecondRowBuckleDriver 3; -BA_ "CrossOver_InfoCAN" SG_ 76 FirstRowBuckleDriver 1; -BA_ "UsedOnPgmDBC" SG_ 76 FirstRowBuckleDriver 1; -BA_ "GenSigStartValueInteger" SG_ 76 FirstRowBuckleDriver 3; -BA_ "GenSigStartValue" SG_ 76 FirstRowBuckleDriver 3; -BA_ "U_P702_MY2021_Rx" SG_ 76 FirstRowBuckleDriver 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 76 FirstRowBuckleDriver 1; -BA_ "U_CX727_MY2021_Rx" SG_ 76 FirstRowBuckleDriver 1; -BA_ "CrossOver_InfoCAN" SG_ 76 RILReq 1; -BA_ "UsedOnPgmDBC" SG_ 76 RILReq 1; -BA_ "CrossOver_InfoCAN" SG_ 76 FirstRowBucklePsngr 1; -BA_ "UsedOnPgmDBC" SG_ 76 FirstRowBucklePsngr 1; -BA_ "GenSigStartValueInteger" SG_ 76 FirstRowBucklePsngr 3; -BA_ "GenSigStartValue" SG_ 76 FirstRowBucklePsngr 3; -BA_ "WakeupSignal" SG_ 76 RstrnImpactEvntStatus 1; -BA_ "CrossOver_InfoCAN" SG_ 76 RstrnImpactEvntStatus 1; -BA_ "UsedOnPgmDBC" SG_ 76 RstrnImpactEvntStatus 1; -BA_ "U_P702_MY2021_Rx" SG_ 76 RstrnImpactEvntStatus 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 76 RstrnImpactEvntStatus 1; -BA_ "U_CX727_MY2021_Rx" SG_ 76 RstrnImpactEvntStatus 1; -BA_ "CrossOver_InfoCAN" SG_ 76 PsngrFrntDetct_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 76 PsngrFrntDetct_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 76 PsngrFrntDetct_D_Actl 3; -BA_ "GenSigStartValue" SG_ 76 PsngrFrntDetct_D_Actl 3; -BA_ "CrossOver_InfoCAN" SG_ 76 EDRTriggerEvntSync 1; -BA_ "CrossOver_InfoCAN" SG_ 76 PassRstrnInd_Req 1; -BA_ "GenSigStartValueInteger" SG_ 76 PassRstrnInd_Req 3; -BA_ "GenSigStartValue" SG_ 76 PassRstrnInd_Req 3; -BA_ "UsedOnPgmDBC" SG_ 65 immoControlData_T1 1; -BA_ "U_P702_MY2021_Rx" SG_ 65 immoControlData_T1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 65 immoControlData_T1 1; -BA_ "UsedOnPgmDBC" SG_ 65 immoControlCmd_T1 1; -BA_ "U_P702_MY2021_Rx" SG_ 65 immoControlCmd_T1 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 65 immoControlCmd_T1 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 HILL_DESC_SW 1; -BA_ "UsedOnPgmDBC" SG_ 1076 HILL_DESC_SW 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 HILL_DESC_SW 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 HILL_DESC_SW 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 AutoRgen_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 AutoRgen_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1076 W2S_LAMP_OK 1; -BA_ "GenSigStartValue" SG_ 1076 W2S_LAMP_OK 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 OdoTripRx_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 OdoTripRx_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 OdoTripRx_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 Veh_V_CompLimMx 1; -BA_ "GenSigStartValueInteger" SG_ 1076 Veh_V_CompLimMx 4095; -BA_ "GenSigStartValue" SG_ 1076 Veh_V_CompLimMx 4093; -BA_ "U_P702_MY2021_Rx" SG_ 1076 Veh_V_CompLimMx 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 Veh_V_CompLimMx 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 DrvSlipCtlMde_B_RqMyKey 1; -BA_ "UsedOnPgmDBC" SG_ 1076 DrvSlipCtlMde_B_RqMyKey 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvlWarn_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 FuelSecndActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvlPssvSide_No_Raw 1; -BA_ "UsedOnPgmDBC" SG_ 1076 FuelLvlPssvSide_No_Raw 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 FuelLvlPssvSide_No_Raw 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FuelLvlPssvSide_No_Raw 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 FUEL_SENSOR_NUM 1; -BA_ "UsedOnPgmDBC" SG_ 1076 FUEL_SENSOR_NUM 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 FUEL_SENSOR_NUM 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FUEL_SENSOR_NUM 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvlActvSide_No_Raw 1; -BA_ "UsedOnPgmDBC" SG_ 1076 FuelLvlActvSide_No_Raw 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 FuelLvlActvSide_No_Raw 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FuelLvlActvSide_No_Raw 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvl_Pc_Dsply 1; -BA_ "UsedOnPgmDBC" SG_ 1076 FuelLvl_Pc_Dsply 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 FuelLvl_Pc_Dsply 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FuelLvl_Pc_Dsply 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 DISPLAY_SPEED_SCALING 1; -BA_ "UsedOnPgmDBC" SG_ 1076 DISPLAY_SPEED_SCALING 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 DISPLAY_SPEED_SCALING 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 DISPLAY_SPEED_SCALING 1; -BA_ "CrossOver_InfoCAN" SG_ 1076 DISPLAY_SPEED_OFFSET 1; -BA_ "UsedOnPgmDBC" SG_ 1076 DISPLAY_SPEED_OFFSET 1; -BA_ "U_P702_MY2021_Rx" SG_ 1076 DISPLAY_SPEED_OFFSET 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 DISPLAY_SPEED_OFFSET 1; -BA_ "GenSigStartValueInteger" SG_ 862 AutoStpHvacDelta_I_Est 192; -BA_ "U_P702_MY2021_Rx" SG_ 862 HvacBlwrFront_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 862 HvacBlwrFront_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 862 CabnAmb_Te_Actl 114; -BA_ "GenSigStartValue" SG_ 862 CabnAmb_Te_Actl 0; -BA_ "U_P702_MY2021_Rx" SG_ 862 CabnAmb_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 862 HvacRemoteStrt_N_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 862 HvacRemoteStrt_N_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 862 HvacRemoteStrt_N_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 862 ClimtThrmlLoad_No_Actl 255; -BA_ "GenSigStartValue" SG_ 862 ClimtThrmlLoad_No_Actl 255; -BA_ "U_P702_MY2021_Rx" SG_ 862 ClimtThrmlLoad_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 PtWakeReas_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 VehOnSrc_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 VehOnSrc_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 StrtrMtrCtlDStat_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 StrtrMtrCtlDStat_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 EngStrtActv_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 EngStrtActv_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 EngStrt_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 EngStrt_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 DrvInCtl_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 DrvInCtl_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 AdvStrt_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 AdvStrt_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 931 CrnkInhbt_No_Cs 1; -BA_ "ContentDependant" SG_ 931 CrnkInhbt_No_Cs 1; -BA_ "MetaData" SG_ 931 CrnkInhbt_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 CrnkInhbt_No_Cs 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 CrnkInhbt_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 931 CrnkInhbt_No_Cnt 1; -BA_ "ContentDependant" SG_ 931 CrnkInhbt_No_Cnt 1; -BA_ "MetaData" SG_ 931 CrnkInhbt_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 CrnkInhbt_No_Cnt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 CrnkInhbt_No_Cnt 1; -BA_ "GenSigStartValueInteger" SG_ 931 CrnkInhbt_B_Stat 1; -BA_ "GenSigStartValue" SG_ 931 CrnkInhbt_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 CrnkInhbt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 CrnkInhbt_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 931 IgnPreOffActv_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 IgnPreOffActv_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 PtLatchActv_B_RqBcm 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 PtLatchActv_B_RqBcm 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 immoSecureIdleMode 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 immoSecureIdleMode 1; -BA_ "WakeupSignal" SG_ 578 ReFuelSwtchStat_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 FuelPumpPwr_D_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 FuelPumpPwr_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 578 BattULo_U_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 578 BattULo_U_Actl 255; -BA_ "GenSigStartValue" SG_ 578 BattULo_U_Actl 255; -BA_ "U_P702_MY2021_Rx" SG_ 578 BattULo_U_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 BattULo_U_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 578 BattULo_U_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 578 PrkLckCtl_B_Enbl 1; -BA_ "WakeupSignal" SG_ 578 PrkLckCtlMsgTxt_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 578 PrkLckCtlMsgTxt_D_Rq 1; -BA_ "WakeupSignal" SG_ 578 PrkLckCtlAvail_T_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 578 PrkLckCtlAvail_T_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 BrkTrnShifLck_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 BrkTrnShifLck_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 578 DriverCrankingReq 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 DriverCrankingReq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 DriverCrankingReq 1; -BA_ "UsedOnPgmDBC" SG_ 578 EngOff_T_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 EngOff_T_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 EngOff_T_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 578 EngOff_T_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 578 DcacElPw_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 578 DcacElPw_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 DcacElPw_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 578 BattULo_I_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 578 BattULo_I_Actl 16383; -BA_ "GenSigStartValue" SG_ 578 BattULo_I_Actl 16383; -BA_ "U_P702_MY2021_Rx" SG_ 578 BattULo_I_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 BattULo_I_Actl 1; -BA_ "WakeupSignal" SG_ 947 DimmingLvlEvnt_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatDrvErrCnt_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 DrStatDrvErrCnt_B_Stat 1; -BA_ "WakeupSignal" SG_ 947 TurnLghtRight_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtRight_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 TurnLghtRight_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtRightOn_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 947 TurnLghtRightOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtLeftOn_B_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 947 TurnLghtLeftOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 947 FogLghtRearOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 FogLghtRearOn_B_Stat 1; -BA_ "WakeupSignal" SG_ 947 Backlit_LED_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Backlit_LED_Status 1; -BA_ "WakeupSignal" SG_ 947 TurnLghtLeft_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtLeft_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 TurnLghtLeft_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 947 FogLghtFrontOn_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 FogLghtFrontOn_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 947 IgnKeyType_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 947 IgnKeyType_D_Actl 14; -BA_ "GenSigStartValue" SG_ 947 IgnKeyType_D_Actl 14; -BA_ "U_P702_MY2021_Rx" SG_ 947 IgnKeyType_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 IgnKeyType_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 947 IgnKeyType_D_Actl 1; -BA_ "WakeupSignal" SG_ 947 Parklamp_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Parklamp_Status 1; -BA_ "UsedOnPgmDBC" SG_ 947 Parklamp_Status 1; -BA_ "GenSigStartValueInteger" SG_ 947 Parklamp_Status 1; -BA_ "GenSigStartValue" SG_ 947 Parklamp_Status 1; -BA_ "WakeupSignal" SG_ 947 Litval 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Litval 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 Litval 1; -BA_ "WakeupSignal" SG_ 947 Key_In_Ignition_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Key_In_Ignition_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 947 Key_In_Ignition_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 947 Key_In_Ignition_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 Key_In_Ignition_Stat 1; -BA_ "WakeupSignal" SG_ 947 Ignition_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Ignition_Status 1; -BA_ "UsedOnPgmDBC" SG_ 947 Ignition_Status 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 Ignition_Status 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 Ignition_Status 1; -BA_ "U_CX727_MY2021_Rx" SG_ 947 Ignition_Status 1; -BA_ "WakeupSignal" SG_ 947 Dimming_Lvl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Dimming_Lvl 1; -BA_ "GenSigStartValueInteger" SG_ 947 Dimming_Lvl 12; -BA_ "GenSigStartValue" SG_ 947 Dimming_Lvl 12; -BA_ "WakeupSignal" SG_ 947 Day_Night_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Day_Night_Status 1; -BA_ "UsedOnPgmDBC" SG_ 947 Day_Night_Status 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 Day_Night_Status 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 Day_Night_Status 1; -BA_ "WakeupSignal" SG_ 947 Remote_Start_Status 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Remote_Start_Status 1; -BA_ "WakeupSignal" SG_ 947 DrStatTgate_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatTgate_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 DrStatRr_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatRr_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatRr_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 DrStatRl_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatRl_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatRl_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 DrStatPsngr_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatPsngr_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatPsngr_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 DrStatInnrTgate_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatInnrTgate_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 DrStatHood_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatHood_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 DrStatDrv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 DrStatDrv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 947 DrStatDrv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatDrv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 DrStatDrv_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 947 DrStatDrv_B_Actl 1; -BA_ "WakeupSignal" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "ContentDependant" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 947 PrkBrkActv_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 947 LifeCycMde_D_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 947 LifeCycMde_D_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 947 LifeCycMde_D_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 LifeCycMde_D_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 947 LifeCycMde_D_Actl 1; -BA_ "WakeupSignal" SG_ 947 Delay_Accy 1; -BA_ "CrossOver_InfoCAN" SG_ 947 Delay_Accy 1; -BA_ "WakeupSignal" SG_ 947 CrashEvnt_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 947 CrashEvnt_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 947 CrashEvnt_D_Stat 3; -BA_ "GenSigStartValue" SG_ 947 CrashEvnt_D_Stat 3; -BA_ "CrossOver_InfoCAN" SG_ 947 FuelPmpInhbt_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 947 BodySrvcRqd_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BattULoChrg_URate_RqMx 1; -BA_ "GenSigStartValueInteger" SG_ 1084 BattULoChrg_URate_RqMx 5; -BA_ "GenSigStartValue" SG_ 1084 BattULoChrg_URate_RqMx 5; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoChrg_URate_RqMx 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoChrg_URate_RqMx 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BattULoChrg_U_RqMx 1; -BA_ "GenSigStartValueInteger" SG_ 1084 BattULoChrg_U_RqMx 34; -BA_ "GenSigStartValue" SG_ 1084 BattULoChrg_U_RqMx 34; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoChrg_U_RqMx 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoChrg_U_RqMx 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BattULoChrg_U_RqMn 1; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoChrg_U_RqMn 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoChrg_U_RqMn 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BattULoState_D_Qlty 1; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoState_D_Qlty 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoState_D_Qlty 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BSFault 1; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BSFault 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSFault 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BattULo2_Te_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 1084 BattULo2_Te_Actl 127; -BA_ "GenSigStartValue" SG_ 1084 BattULo2_Te_Actl 127; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULo2_Te_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULo2_Te_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BSBattSOC 1; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BSBattSOC 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSBattSOC 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BSBattQDeltaRideAh 1; -BA_ "GenSigStartValueInteger" SG_ 1084 BSBattQDeltaRideAh 12800; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BSBattQDeltaRideAh 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSBattQDeltaRideAh 1; -BA_ "UsedOnPgmDBC" SG_ 1084 BSBattQCapAh 1; -BA_ "U_P702_MY2021_Rx" SG_ 1084 BSBattQCapAh 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSBattQCapAh 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 EngStrtInhbt_B_RqBatt 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 EngStrtInhbt_B_RqBatt 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 BattULoChrg_D_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 BattULoChrg_D_Rq 1; -BA_ "WakeupSignal" SG_ 1068 PwSysULoFalt_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1068 PwSysULoFalt_D_Stat 1; -BA_ "UsedOnPgmDBC" SG_ 1068 PwSysULoFalt_D_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1068 Shed_T_Eng_Off_B 1; -BA_ "WakeupSignal" SG_ 1068 Shed_Feature_Group_ID 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 Shed_Feature_Group_ID 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 Shed_Feature_Group_ID 1; -BA_ "CrossOver_InfoCAN" SG_ 1068 Shed_Drain_Eng_Off_B 1; -BA_ "WakeupSignal" SG_ 1068 Shed_Level_Req 1; -BA_ "CrossOver_InfoCAN" SG_ 1068 Shed_Level_Req 1; -BA_ "UsedOnPgmDBC" SG_ 1068 Shed_Level_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 Shed_Level_Req 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 Shed_Level_Req 1; -BA_ "UsedOnPgmDBC" SG_ 1068 ULoRgenTestMde_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 ULoRgenTestMde_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 ULoRgenTestMde_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 ChargeMode 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 ChargeMode 1; -BA_ "CrossOver_InfoCAN" SG_ 1068 Batt_Lo_SoC_B 1; -BA_ "UsedOnPgmDBC" SG_ 1068 PeriodicElLoad_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 1068 PeriodicElLoad_B_Stat 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 PeriodicElLoad_B_Stat 1; -BA_ "CrossOver_InfoCAN" SG_ 1068 Batt_Crit_SoC_B 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehVert2_A_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 146 VehVert2_A_Actl 8190; -BA_ "GenSigStartValue" SG_ 146 VehVert2_A_Actl 8190; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehVert2_A_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehVert2_A_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehVert2_A_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehLatLongVertA_No_Cs 1; -BA_ "MetaData" SG_ 146 VehLatLongVertA_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLatLongVertA_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehLatLongVertA_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehLatLongVert_No_Cnt 1; -BA_ "MetaData" SG_ 146 VehLatLongVert_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLatLongVert_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehLatLongVert_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehLong2_A_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 146 VehLong2_A_Actl 8190; -BA_ "GenSigStartValue" SG_ 146 VehLong2_A_Actl 8190; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehLong2_A_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehLong2_A_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLong2_A_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehLat2_A_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 146 VehLat2_A_Actl 8190; -BA_ "GenSigStartValue" SG_ 146 VehLat2_A_Actl 8190; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehLat2_A_Actl 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehLat2_A_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLat2_A_Actl 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehVertAActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 146 VehVertAActl_D_Qf 1; -BA_ "MetaData" SG_ 146 VehVertAActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 146 VehVertAActl_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehVertAActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehVertAActl_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "MetaData" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLongAActl_D_Qf 1; -BA_ "UsedOnPgmDBC" SG_ 146 VehLatAActl_D_Qf 1; -BA_ "GenSigStartValueInteger" SG_ 146 VehLatAActl_D_Qf 1; -BA_ "MetaData" SG_ 146 VehLatAActl_D_Qf 1; -BA_ "GenSigStartValue" SG_ 146 VehLatAActl_D_Qf 1; -BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLatAActl_D_Qf 1; -BA_ "U_P702_MY2021_Rx" SG_ 146 VehLatAActl_D_Qf 1; -BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 3; -BA_ "GenSigSendType" SG_ 1806 TesterPhysicalResIPMA 3; -BA_ "CrossOver_InfoCAN" SG_ 997 PersIndexCcm_D_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 997 PersIndexCcm_D_Actl 4; -BA_ "GenSigStartValue" SG_ 997 PersIndexCcm_D_Actl 4; -BA_ "GenSigSendType" SG_ 997 PersIndexCcm_D_Actl 3; -BA_ "CrossOver_InfoCAN" SG_ 997 FeatNoCcmActl 1; -BA_ "GenSigSendType" SG_ 997 FeatNoCcmActl 3; -BA_ "CrossOver_InfoCAN" SG_ 997 FeatConfigCcmActl 1; -BA_ "GenSigSendType" SG_ 997 FeatConfigCcmActl 3; -BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjRelLong_V_Actl 1022; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjRelLong_V_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjRelLong_V_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjRelLat_V_Actl 510; -BA_ "GenSigStartValue" SG_ 983 CmbbObjRelLat_V_Actl 510; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjRelLat_V_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjRelLat_V_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjDistLong_L_Actl 1022; -BA_ "GenSigStartValue" SG_ 983 CmbbObjDistLong_L_Actl 1022; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjDistLong_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjDistLong_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjDistLat_L_Actl 510; -BA_ "GenSigStartValue" SG_ 983 CmbbObjDistLat_L_Actl 510; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjDistLat_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjDistLat_L_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjConfdnc_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjConfdnc_D_Stat 1; -BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjColl_T_Actl 126; -BA_ "GenSigStartValue" SG_ 983 CmbbObjColl_T_Actl 125; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjColl_T_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjColl_T_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjClass_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjClass_D_Stat 1; -BA_ "U_CX727_MY2021_Rx" SG_ 983 EsaEnbl_D2_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 983 EsaEnbl_D2_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1DistRigh_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1DistLeft_D_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbMde1_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbIntns1_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Up_An_Rq 510; -BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Up_An_Rq 509; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Up_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Right_An_Rq 2046; -BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Right_An_Rq 2046; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Right_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Low_An_Rq 510; -BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Low_An_Rq 509; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Low_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Left_An_Rq 2046; -BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Left_An_Rq 2046; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Left_An_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1CritRigh_T_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1CritLeft_T_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlRng_L_Max 1; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlRng_L_Max 1; -BA_ "U_CX727_MY2021_Rx" SG_ 979 HandsOffCnfm_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 HandsOffCnfm_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtl_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtl_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlRampType_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlRampType_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlPrecision_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlPrecision_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 979 LatCtlPathOffst_L_Actl 512; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlPathOffst_L_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlPathOffst_L_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 979 LatCtlPath_An_Actl 1000; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlPath_An_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlPath_An_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 979 LatCtlCurv_NoRate_Actl 4096; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlCurv_NoRate_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlCurv_NoRate_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 979 LatCtlCurv_No_Actl 1000; -BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlCurv_No_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlCurv_No_Actl 1; -BA_ "GenSigStartValueInteger" SG_ 976 SrpHghtRight_L_Actl 256; -BA_ "GenSigStartValueInteger" SG_ 976 SrpHghtLeft_L_Actl 256; -BA_ "GenSigSendType" SG_ 973 TsrVl2PrmntMsgTxt_D_Rq 3; -BA_ "GenSigSendType" SG_ 973 TsrVl1PrmntMsgTxt_D_Rq 3; -BA_ "GenSigStartValueInteger" SG_ 973 TsrVl2RstrcMsgTxt2_D_Rq 1; -BA_ "GenSigStartValue" SG_ 973 TsrVl2RstrcMsgTxt2_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrVl2RstrcMsgTxt2_D_Rq 3; -BA_ "GenSigStartValueInteger" SG_ 973 TsrVl1RstrcMsgTxt2_D_Rq 1; -BA_ "GenSigStartValue" SG_ 973 TsrVl1RstrcMsgTxt2_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrVl1RstrcMsgTxt2_D_Rq 3; -BA_ "GenSigSendType" SG_ 973 TsrOvtkMsgTxt2_D_Rq 3; -BA_ "GenSigSendType" SG_ 973 WwaWarn_B_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVlUnitMsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 973 TsrVlUnitMsgTxt_D_Rq 2; -BA_ "GenSigStartValue" SG_ 973 TsrVlUnitMsgTxt_D_Rq 2; -BA_ "GenSigSendType" SG_ 973 TsrVlUnitMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVLim2MsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 973 TsrVLim2MsgTxt_D_Rq 255; -BA_ "GenSigStartValue" SG_ 973 TsrVLim2MsgTxt_D_Rq 255; -BA_ "GenSigSendType" SG_ 973 TsrVLim2MsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVLim1MsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 973 TsrVLim1MsgTxt_D_Rq 255; -BA_ "GenSigStartValue" SG_ 973 TsrVLim1MsgTxt_D_Rq 255; -BA_ "GenSigSendType" SG_ 973 TsrVLim1MsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl2StatMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrVl2StatMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl2RstrcMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrVl2RstrcMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl1StatMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrVl1StatMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl1RstrcMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrVl1RstrcMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrStatMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrStatMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrOvtkStatMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrOvtkStatMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrOvtkMsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 973 TsrOvtkMsgTxt_D_Rq 1; -BA_ "GenSigStartValue" SG_ 973 TsrOvtkMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrOvtkMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrOswWarnMsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 973 TsrOswWarnMsgTxt_D_Rq 1; -BA_ "GenSigStartValue" SG_ 973 TsrOswWarnMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrOswWarnMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 973 TsrMsgTxt_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 973 TsrMsgTxt_D_Rq 1; -BA_ "GenSigStartValue" SG_ 973 TsrMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 973 TsrMsgTxt_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 970 LkaDrvOvrrd_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 970 LkaActvStats_D2_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 970 LkaActvStats_D2_Req 1; -BA_ "GenSigStartValueInteger" SG_ 970 LaRefAng_No_Req 2048; -BA_ "U_CX727_MY2021_Rx" SG_ 970 LaRefAng_No_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 970 LaRefAng_No_Req 1; -BA_ "U_CX727_MY2021_Rx" SG_ 970 LaRampType_B_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 970 LaRampType_B_Req 1; -BA_ "GenSigStartValueInteger" SG_ 970 LaCurvature_No_Calc 2048; -BA_ "U_CX727_MY2021_Rx" SG_ 970 LaCurvature_No_Calc 1; -BA_ "U_P702_MY2021_Rx" SG_ 970 LaCurvature_No_Calc 1; -BA_ "U_CX727_MY2021_Rx" SG_ 970 LdwActvStats_D_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 970 LdwActvStats_D_Req 1; -BA_ "CrossOver_InfoCAN" SG_ 970 LdwActvIntns_D_Req 1; -BA_ "U_CX727_MY2021_Rx" SG_ 970 LdwActvIntns_D_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 970 LdwActvIntns_D_Req 1; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3DistRigh_D_Stat 1; -BA_ "GenSigSendType" SG_ 962 AdbBrdr3DistRigh_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3DistLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 962 AdbBrdr3DistLeft_D_Stat 3; -BA_ "GenSigSendType" SG_ 962 AdbMde3_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbMde3_D_Rq 1; -BA_ "GenSigSendType" SG_ 962 AdbIntns3_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbIntns3_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Up_An_Rq 510; -BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Up_An_Rq 509; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Up_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Right_An_Rq 2046; -BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Right_An_Rq 2046; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Right_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Low_An_Rq 510; -BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Low_An_Rq 509; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Low_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Left_An_Rq 2046; -BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Left_An_Rq 2046; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Left_An_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3CritRigh_T_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3CritLeft_T_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2DistRigh_D_Stat 1; -BA_ "GenSigSendType" SG_ 961 AdbBrdr2DistRigh_D_Stat 3; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2DistLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 961 AdbBrdr2DistLeft_D_Stat 3; -BA_ "GenSigSendType" SG_ 961 AdbMde2_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbMde2_D_Rq 1; -BA_ "GenSigSendType" SG_ 961 AdbIntns2_D_Rq 3; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbIntns2_D_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Up_An_Rq 510; -BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Up_An_Rq 509; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Up_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Right_An_Rq 2046; -BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Right_An_Rq 2046; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Right_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Low_An_Rq 510; -BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Low_An_Rq 509; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Low_An_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Left_An_Rq 2046; -BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Left_An_Rq 2046; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Left_An_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2CritRigh_T_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2CritLeft_T_Stat 1; -BA_ "MetaData" SG_ 394 HaDsply_No_Cs 1; -BA_ "ContentDependant" SG_ 394 HaDsply_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 394 HaDsply_No_Cs 1; -BA_ "GenSigSendType" SG_ 394 HaDsply_No_Cs 3; -BA_ "MetaData" SG_ 394 HaDsply_No_Cnt 1; -BA_ "ContentDependant" SG_ 394 HaDsply_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 394 HaDsply_No_Cnt 1; -BA_ "GenSigSendType" SG_ 394 HaDsply_No_Cnt 3; -BA_ "GenSigSendType" SG_ 394 AccStopStat_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 AccTrgDist2_D_Dsply 1; -BA_ "GenSigSendType" SG_ 394 AccTrgDist2_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 AccStopRes_B_Dsply 1; -BA_ "GenSigSendType" SG_ 394 AccStopRes_B_Dsply 3; -BA_ "GenSigSendType" SG_ 394 TjaWarn_D_Rq 3; -BA_ "GenSigSendType" SG_ 394 Tja_D_Stat 3; -BA_ "GenSigSendType" SG_ 394 TjaMsgTxt_D_Dsply 3; -BA_ "GenSigSendType" SG_ 394 IaccLamp_D_Rq 3; -BA_ "GenSigSendType" SG_ 394 AccMsgTxt_D2_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 394 FcwDeny_B_Dsply 1; -BA_ "GenSigSendType" SG_ 394 FcwDeny_B_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 FcwMemStat_B_Actl 1; -BA_ "GenSigSendType" SG_ 394 FcwMemStat_B_Actl 3; -BA_ "ECGUsedRxSignal" SG_ 394 FcwMemStat_B_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 394 AccTGap_B_Dsply 1; -BA_ "GenSigSendType" SG_ 394 AccTGap_B_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 CadsAlignIncplt_B_Actl 1; -BA_ "GenSigSendType" SG_ 394 CadsAlignIncplt_B_Actl 3; -BA_ "CrossOver_InfoCAN" SG_ 394 AccFllwMde_B_Dsply 1; -BA_ "GenSigSendType" SG_ 394 AccFllwMde_B_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 CadsRadrBlck_B_Actl 1; -BA_ "GenSigSendType" SG_ 394 CadsRadrBlck_B_Actl 3; -BA_ "CrossOver_InfoCAN" SG_ 394 CmbbPostEvnt_B_Dsply 1; -BA_ "GenSigSendType" SG_ 394 CmbbPostEvnt_B_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 AccStopMde_B_Dsply 1; -BA_ "GenSigSendType" SG_ 394 AccStopMde_B_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 FcwMemSens_D_Actl 1; -BA_ "GenSigSendType" SG_ 394 FcwMemSens_D_Actl 3; -BA_ "ECGUsedRxSignal" SG_ 394 FcwMemSens_D_Actl 1; -BA_ "CrossOver_InfoCAN" SG_ 394 FcwMsgTxt_D_Rq 1; -BA_ "GenSigSendType" SG_ 394 FcwMsgTxt_D_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 394 AccWarn_D_Dsply 1; -BA_ "GenSigSendType" SG_ 394 AccWarn_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 FcwVisblWarn_B_Rq 1; -BA_ "GenSigSendType" SG_ 394 FcwVisblWarn_B_Rq 3; -BA_ "CrossOver_InfoCAN" SG_ 394 FcwAudioWarn_B_Rq 1; -BA_ "GenSigSendType" SG_ 394 FcwAudioWarn_B_Rq 3; -BA_ "ECGUsedRxSignal" SG_ 394 FcwAudioWarn_B_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 394 AccTGap_D_Dsply 1; -BA_ "GenSigStartValueInteger" SG_ 394 AccTGap_D_Dsply 3; -BA_ "GenSigStartValue" SG_ 394 AccTGap_D_Dsply 3; -BA_ "GenSigSendType" SG_ 394 AccTGap_D_Dsply 3; -BA_ "CrossOver_InfoCAN" SG_ 394 AccMemEnbl_B_RqDrv 1; -BA_ "GenSigStartValueInteger" SG_ 394 AccMemEnbl_B_RqDrv 1; -BA_ "GenSigStartValue" SG_ 394 AccMemEnbl_B_RqDrv 1; -BA_ "GenSigSendType" SG_ 394 AccMemEnbl_B_RqDrv 3; -BA_ "CrossOver_InfoCAN" SG_ 394 FdaMem_B_Stat 1; -BA_ "GenSigSendType" SG_ 394 FdaMem_B_Stat 3; -BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_No_Cnt 1; -BA_ "MetaData" SG_ 391 CmbbBrkDecel_No_Cnt 1; -BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cnt 1; -BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cnt 1; -BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_No_Cs 1; -BA_ "MetaData" SG_ 391 CmbbBrkDecel_No_Cs 1; -BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cs 1; -BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cs 1; -BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_A_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 391 CmbbBrkDecel_A_Rq 5129; -BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_A_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_A_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkPrchg_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkPrchg_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkPrchg_D_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 391 CmbbBrkPrchg_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_B_Rq 1; -BA_ "ECGUsedRxSignal" SG_ 391 CmbbBrkDecel_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 391 CmbbBaSens_D_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBaSens_D_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBaSens_D_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 390 AccBrkTot_A_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 390 AccBrkTot_A_Rq 5129; -BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkTot_A_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkTot_A_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccPrpl_A_Pred 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccPrpl_A_Pred 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccVeh_V_Trg 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccVeh_V_Trg 1; -BA_ "UsedOnPgmDBC" SG_ 390 AccBrkPrkEl_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkPrkEl_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkPrkEl_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 390 CmbbDeny_B_Actl 1; -BA_ "U_CX727_MY2021_Rx" SG_ 390 CmbbDeny_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 CmbbDeny_B_Actl 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 CmbbEngTqMn_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 CmbbEngTqMn_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccPrpl_A_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccPrpl_A_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccDeny_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccDeny_B_Rq 1; -BA_ "WakeupSignal" SG_ 390 AccResumEnbl_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccResumEnbl_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccResumEnbl_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 390 AccCancl_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccCancl_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccCancl_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 390 AccBrkPrchg_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkPrchg_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkPrchg_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 390 AccBrkDecel_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkDecel_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkDecel_B_Rq 1; -BA_ "UsedOnPgmDBC" SG_ 390 AccStopStat_B_Rq 1; -BA_ "U_CX727_MY2021_Rx" SG_ 390 AccStopStat_B_Rq 1; -BA_ "U_P702_MY2021_Rx" SG_ 390 AccStopStat_B_Rq 1; -BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccStopStat_B_Rq 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_GWOnBoardTester 255; -BA_ "ContentDependant" SG_ 1441 TCCM_GWOnBoardTester 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_GWOnBoardTester 255; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_GWOnBoardTester 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_GWNMProxy 255; -BA_ "ContentDependant" SG_ 1441 TCCM_GWNMProxy 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_GWNMProxy 255; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_GWNMProxy 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved4 255; -BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved4 255; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved4 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved3 255; -BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved3 255; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved3 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved2 255; -BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved2 255; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved2 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved1 255; -BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved1 255; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved1 1; -BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMNodeId 161; -BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMNodeId 1; -BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMNodeId 161; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMNodeId 1; -BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMControl 1; -BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMControl 1; -BA_ "GenSigSendType" SG_ 1787 TesterPhysicalResSODCMD 3; -BA_ "GenSigSendType" SG_ 1779 TesterPhysicalReqSODCMD 3; -BA_ "GenSigSendType" SG_ 1786 TesterPhysicalResSODCMC 3; -BA_ "GenSigSendType" SG_ 1778 TesterPhysicalReqSODCMC 3; -BA_ "CrossOver_InfoCAN" SG_ 1153 TerrMde_D_RqDrv 1; -BA_ "UsedOnPgmDBC" SG_ 1153 TerrMde_D_RqDrv 1; -BA_ "GenSigSendType" SG_ 942 PrkAidRdiusRight_L_Dsply 3; -BA_ "GenSigSendType" SG_ 942 PrkAidRdiusLeft_L_Dsply 3; -BA_ "GenSigSendType" SG_ 942 PrkAidDrvDir_D_Stat 3; -BA_ "GenSigSendType" SG_ 942 PrkAidAcsyRear_D_Stat 3; -BA_ "GenSigSendType" SG_ 942 PrkAidAcsyFront_D_Stat 3; -BA_ "GenSigSendType" SG_ 930 BalrWndwRight_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 930 BalrSnsRight_D_Falt 0; -BA_ "GenSigSendType" SG_ 930 BalrSnsRight_D_Falt 3; -BA_ "GenSigStartValueInteger" SG_ 930 WndwPsngrRear_D_RqBalrr 0; -BA_ "GenSigSendType" SG_ 930 WndwPsngrRear_D_RqBalrr 3; -BA_ "GenSigStartValueInteger" SG_ 930 WndwPsngr_D_RqBalrr 0; -BA_ "GenSigSendType" SG_ 930 WndwPsngr_D_RqBalrr 3; -BA_ "GenSigStartValueInteger" SG_ 930 WndwDrvRear_D_RqBalrr 0; -BA_ "GenSigSendType" SG_ 930 WndwDrvRear_D_RqBalrr 3; -BA_ "GenSigStartValueInteger" SG_ 930 WndwDrv_D_RqBalrr 0; -BA_ "GenSigSendType" SG_ 930 WndwDrv_D_RqBalrr 3; -BA_ "GenSigStartValueInteger" SG_ 930 BalrRight_D_Stat 2; -BA_ "GenSigStartValue" SG_ 930 BalrRight_D_Stat 2; -BA_ "GenSigSendType" SG_ 930 BalrRight_D_Stat 3; -BA_ "GenSigSendType" SG_ 930 BalrMdeSelRight_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 930 BalrMdeRight_D_Stat 1; -BA_ "GenSigStartValue" SG_ 930 BalrMdeRight_D_Stat 1; -BA_ "GenSigSendType" SG_ 930 BalrMdeRight_D_Stat 3; -BA_ "GenSigSendType" SG_ 930 BalrLckRight_B_Stat 3; -BA_ "GenSigSendType" SG_ 930 BalrChimeRight_D_Rq 3; -BA_ "GenSigSendType" SG_ 930 CamraRearOn_B_RqBalrr 3; -BA_ "GenSigSendType" SG_ 930 DrLckCnt_No_ActlBalrr 3; -BA_ "GenSigSendType" SG_ 930 DrLckActv_B_RqBalrr 3; -BA_ "GenSigSendType" SG_ 929 BalrChimeLeft_D_Rq 3; -BA_ "GenSigStartValueInteger" SG_ 929 BalrLeft_D_Stat 2; -BA_ "GenSigStartValue" SG_ 929 BalrLeft_D_Stat 2; -BA_ "GenSigSendType" SG_ 929 BalrLeft_D_Stat 3; -BA_ "GenSigSendType" SG_ 929 BalrWndwLeft_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 929 WndwPsngrRear_D_RqBalrl 0; -BA_ "GenSigSendType" SG_ 929 WndwPsngrRear_D_RqBalrl 3; -BA_ "GenSigStartValueInteger" SG_ 929 WndwPsngr_D_RqBalrl 0; -BA_ "GenSigSendType" SG_ 929 WndwPsngr_D_RqBalrl 3; -BA_ "GenSigStartValueInteger" SG_ 929 WndwDrvRear_D_RqBalrl 0; -BA_ "GenSigSendType" SG_ 929 WndwDrvRear_D_RqBalrl 3; -BA_ "GenSigStartValueInteger" SG_ 929 WndwDrv_D_RqBalrl 0; -BA_ "GenSigSendType" SG_ 929 WndwDrv_D_RqBalrl 3; -BA_ "GenSigStartValueInteger" SG_ 929 BalrSnsLeft_D_Falt 0; -BA_ "GenSigSendType" SG_ 929 BalrSnsLeft_D_Falt 3; -BA_ "GenSigSendType" SG_ 929 BalrMdeSelLeft_B_Stat 3; -BA_ "GenSigStartValueInteger" SG_ 929 BalrMdeLeft_D_Stat 1; -BA_ "GenSigStartValue" SG_ 929 BalrMdeLeft_D_Stat 1; -BA_ "GenSigSendType" SG_ 929 BalrMdeLeft_D_Stat 3; -BA_ "GenSigSendType" SG_ 929 BalrLckLeft_B_Stat 3; -BA_ "GenSigSendType" SG_ 929 CamraRearOn_B_RqBalrl 3; -BA_ "GenSigSendType" SG_ 929 DrLckCnt_No_ActlBalrl 3; -BA_ "GenSigSendType" SG_ 929 DrLckActv_B_RqBalrl 3; -BA_ "CrossOver_InfoCAN" SG_ 402 ApaMdeStat_D_RqDrv 1; -BA_ "CrossOver_InfoCAN" SG_ 402 CamraZoomMan_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 402 CamraOvrlStat_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 402 CamraOvrlDyn_D_Rq 1; -BA_ "CrossOver_InfoCAN" SG_ 402 CamAutoTowbarZoom 1; -BA_ "CrossOver_InfoCAN" SG_ 402 DistanceBarSetting 1; -BA_ "GenSigStartValue" SG_ 924 DcacOut_Pw_Mx 2046; -BA_ "U_P702_MY2021_Rx" SG_ 924 DcacOut_Pw_Mx 1; -BA_ "GenSigStartValue" SG_ 924 DcacOut2_Pw_Actl 8190; -BA_ "U_P702_MY2021_Rx" SG_ 924 DcacOut2_Pw_Actl 1; -BA_ "GenSigStartValue" SG_ 924 DcacOut1_Pw_Actl 8190; -BA_ "U_P702_MY2021_Rx" SG_ 924 DcacOut1_Pw_Actl 1; -BA_ "GenSigStartValue" SG_ 924 DcacIn_Pw_Mx 2046; -BA_ "U_P702_MY2021_Rx" SG_ 924 DcacIn_Pw_Mx 1; -BA_ "GenSigStartValue" SG_ 923 DcacIn_U2_Actl 4094; -BA_ "GenSigStartValue" SG_ 923 DcacIn_U_Actl 4094; -BA_ "U_P702_MY2021_Rx" SG_ 923 DcacIn_U_Actl 1; -BA_ "GenSigStartValue" SG_ 923 DcacIn_I_Actl 2046; -BA_ "U_P702_MY2021_Rx" SG_ 923 DcacIn_I_Actl 1; -BA_ "GenSigStartValue" SG_ 923 Dcac_Te_Actl 254; -BA_ "U_P702_MY2021_Rx" SG_ 923 Dcac_Te_Actl 1; -BA_ "GenSigSendType" SG_ 1998 TesterPhysicalResSODR 3; -BA_ "GenSigSendType" SG_ 1996 TesterPhysicalResSODL 3; -BA_ "GenSigSendType" SG_ 1988 TesterPhysicalReqSODL 3; -BA_ "U_P702_MY2021_Rx" SG_ 922 DcacRdy_D_Stat 1; -BA_ "GenSigStartValue" SG_ 922 DcacPlugPrsnt_B_Stat 1; -BA_ "U_P702_MY2021_Rx" SG_ 922 DcacPlugPrsnt_B_Stat 1; -VAL_ 823 DteAcceptNew_B_Rq 1 "Yes" 0 "No"; -VAL_ 824 DteCldTrlrOn_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldTrlrOff_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldTraffic_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldTerrain_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldRoute_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldPayload_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldExtTe_B_Stat 1 "Yes" 0 "No"; -VAL_ 824 DteCldDcac_B_Stat 1 "Yes" 0 "No"; -VAL_ 949 Tire_Press_RR_ORR_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; -VAL_ 949 Tire_Press_LR_OLR_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; -VAL_ 949 Tire_Press_LF_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; -VAL_ 949 Tire_Press_RF_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; -VAL_ 740 BattAuxCnnct_B_Cmd 1 "Close" 0 "Open"; -VAL_ 1160 DgtlCommPncReset_B_Req 1 "Yes" 0 "No"; -VAL_ 1160 DataMntrSustn_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 1160 PwSustnRdata_B_RqTelem 1 "Active" 0 "Inactive"; -VAL_ 776 ScChrgrPwMax_Pw_RqCld 4095 "Faulty"; -VAL_ 776 PrcondEdit_D_RqCld 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "High" 3 "Medium" 2 "Low" 1 "Off" 0 "Null"; -VAL_ 776 GoTEditMnte_T_RqCld 15 "Faulty" 14 "NoDataExists" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; -VAL_ 776 GoTEditHr_T_RqCld 31 "Faulty" 30 "NoDataExists"; -VAL_ 776 ChrgToPcEdit_Pc_RqCld 127 "Faulty" 126 "NoDataExists"; -VAL_ 776 ScFreshDataEnbl_B_Rq 1 "Yes" 0 "No"; -VAL_ 776 ScEnbl_D_RqCld 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 775 ScDayOfWeekId_D_RqCld 7 "Sunday" 6 "Saturday" 5 "Friday" 4 "Thursday" 3 "Wednesday" 2 "Tuesday" 1 "Monday" 0 "NotUsed"; -VAL_ 775 ScChrgDurSet_D_RqCld 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 775 ScChrgDur_T_RqCld 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 774 ScLocLongPostv_B_RqCld 1 "Yes" 0 "No"; -VAL_ 774 ScLocLattPostv_B_RqCld 1 "Yes" 0 "No"; -VAL_ 774 ScLocDelete_B_RqCld 1 "Request" 0 "NoRequest"; -VAL_ 811 DistToStopover_L_Actl 65535 "Faulty"; -VAL_ 811 ExtLghtDsply_D_Stat 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 811 ExtLghtRight_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 811 AutoLghtOvrrd_B_RqDrv 1 "Allowed" 0 "NotAllowed"; -VAL_ 811 ExtLghtRear_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 811 ExtLghtLeft_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 811 ExtLghtFront_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 811 GoTEditMnte_T_RqMnu 15 "Faulty" 14 "NoDataExists" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; -VAL_ 811 GoTEditHr_T_RqMnu 31 "Faulty" 30 "NoDataExists"; -VAL_ 850 VehElRngeNut_L_Dsply 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 850 NxtUsgSocEst_Pc_Dsply 255 "Faulty" 254 "NoDataExists"; -VAL_ 850 EstmChrgTimeLP_St 255 "Invalid"; -VAL_ 850 EstmChrgTimeHP_St 255 "Invalid"; -VAL_ 850 ChargeNowDuration_St 255 "Invalid"; -VAL_ 563 DrvBhavWarn_B_Rq 1 "On" 0 "Off"; -VAL_ 563 OfbChrgSetSync_D_Rq 3 "Fail" 2 "Success" 1 "InProgress" 0 "NoSyncInProgress"; -VAL_ 563 KeyOffPwMde_D_Stat 7 "NotUsed_6" 6 "NotUsed_5" 5 "NotUsed_4" 4 "NotUsed_3" 0 "Inactive" 1 "On" 2 "NotUsed_1" 3 "NotUsed_2"; -VAL_ 563 ModemReset_D_Stat 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "WifiHotSpotResetComplete" 4 "CcsResetComplete" 3 "OnlineTrafficResetComplete" 2 "PaakResetComplete" 1 "ResetNotComplete" 0 "Null"; -VAL_ 563 FactoryReset_St 3 "NotUsed_2" 2 "NotUsed_1" 1 "FactoryDefaultsRestored" 0 "Null"; -VAL_ 570 SuspClkSync_No_Rq 255 "Faulty" 254 "NoDataExists"; -VAL_ 570 SuspRearRight_L_Actl 511 "Faulty"; -VAL_ 570 SuspFrntRight_L_Actl 511 "Faulty"; -VAL_ 570 SuspRear_L_Prev 511 "Fault"; -VAL_ 570 SuspRear_L_Actl 511 "Fault"; -VAL_ 570 SuspFrnt_L_Prev 511 "Fault"; -VAL_ 570 SuspFrnt_L_Actl 511 "Fault"; -VAL_ 837 Ccd_B_Falt 1 "Yes" 0 "No"; -VAL_ 837 SelDrvMdeSusp_D_Stat 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; -VAL_ 837 AdptDrvMdePt_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Powertrain2Sport" 2 "Powertrain2Normal" 1 "Powertrain2Comfort" 0 "AdaptiveNotActive"; -VAL_ 837 AdptDrvMdeChassis_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Chassis2Sport" 2 "Chassis2Normal" 1 "Chassis2Comfort" 0 "AdaptiveNotActive"; -VAL_ 837 CcdMsgTxt_D_RqDsply 15 "Unused8" 14 "Unused7" 13 "Unused6" 12 "Unused5" 11 "Unused4" 10 "Unused3" 9 "Unused2" 8 "StationaryMode" 7 "Mode_Change_Unavailable" 6 "CCD_Temporarily_Off" 5 "CCD_Service_Required" 4 "Faulty" 3 "Sport" 2 "Normal" 1 "Comfort" 0 "No_Mode_Selected"; -VAL_ 885 BattULoChrg_D_RqOta 1 "Yes" 0 "No"; -VAL_ 885 VehStrtInhbt_T_Dsply 15 "NotUsed_12" 14 "NotUsed_11" 13 "NotUsed_10" 12 "NotUsed_9" 11 "NotUsed_8" 10 "NotUsed_7" 9 "NotUsed_6" 8 "NotUsed_5" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "PostOtaActivatePermFail" 2 "PostOtaActivateWarning" 1 "DuringOtaActivate" 0 "NoMessage"; -VAL_ 885 VehStrtInhbt_D_Dsply 15 "NotUsed_12" 14 "NotUsed_11" 13 "NotUsed_10" 12 "NotUsed_9" 11 "NotUsed_8" 10 "NotUsed_7" 9 "NotUsed_6" 8 "NotUsed_5" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "PostOtaActivatePermFail" 2 "PostOtaActivateWarning" 1 "DuringOtaActivate" 0 "NoMessage"; -VAL_ 885 VehOnRqstr_D_Stat 11 "NotUsed_8" 10 "NotUsed_7" 9 "NotUsed_6" 8 "NotUsed_5" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "FleetVehInhbt" 2 "StolenVehInhbt" 1 "OverTheAir" 0 "NoRequestor" 15 "NotUsed_12" 14 "NotUsed_11" 13 "NotUsed_10" 12 "NotUsed_9"; -VAL_ 885 VehStrtInhbt_D_RqCld 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 885 VehOn_D_RqCld 3 "NoControl" 2 "On" 1 "Off" 0 "Null"; -VAL_ 885 OtaActv_D_Stat 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "NonInterruptible_Pending" 4 "NonInterruptible_Config" 3 "NonInterruptible_ER" 2 "NonInterruptible_AB" 1 "Interruptible_AB" 0 "NoInVehicleOta"; -VAL_ 810 OBCCSerial_D_Rq 3 "PresentAndProvisioned" 2 "PresentAndProvAlertAck" 1 "PresentAndUnprovisioned" 0 "NotPresent"; -VAL_ 810 TlghtTest_D_RqArb 3 "TestEndAcknowledge" 2 "StartTest" 1 "StopTest" 0 "Null"; -VAL_ 810 ChrgrPncSustn_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 810 NtfyDrvTrgtDist_L_Rq 4095 "Trip_dist_alert_disabled" 0 "Inactive"; -VAL_ 810 NtfyDrvSocLvl1_Pc_Rq 127 "TargetSOCNotificationAlert" 0 "Inactive"; -VAL_ 810 PtRmtRprt_D_Stat 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "SettingUpdated" 10 "FastChargeComplete" 9 "ChargeNotOccurring" 8 "OneTimeSocReached" 7 "BatteryTemperatureRemind" 6 "ReducedPerformance" 5 "LimitedPerformance" 4 "ChargeFault" 3 "ChargeComplete" 2 "VehiclePreconditioned" 1 "TripDistanceAchieved" 0 "NoReportRequest"; -VAL_ 810 ChrgrPncEnbl_D_Rq 3 "NotUsed" 2 "Enable" 1 "Disable" 0 "Null"; -VAL_ 810 ExtLghtDsply_B_StatArb 1 "On" 0 "Off"; -VAL_ 810 ExtLghtRight_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 810 ExtLghtRear_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 810 ExtLghtLeft_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 810 ExtLghtFront_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; -VAL_ 550 PtWakeupActv1_B_Rq 1 "Wake_up_Powertrain_via_HW" 0 "Don_t_Wake_Up_Powertrain"; -VAL_ 639 OfbChrgPrflUpdate_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 639 OfbChrgClearAll_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 639 OfbChrgGoTTouch_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 639 OfbChrgGoTPrcond_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 639 OfbChrgGoTOn_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 639 OfbChrgGoTMnte_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; -VAL_ 639 OfbChrgGoTHr_T_Rq 31 "Faulty" 30 "NoDataExists"; -VAL_ 639 OfbChrgGoTExtHtr_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 639 OfbChrgGoTDelete_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 639 OfbChrgGoTUpdate_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 530 OfbChrgToPcWknd_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 530 OfbChrgToPcWkdy_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 530 OfbChrgSetNow_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 530 OfbChrgSetDelete_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 530 OfbChrgLocIdUns_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 1142 ConsTipV_No_Dsply 1023 "Faulty" 1022 "NoDataExists"; -VAL_ 817 ChildLckMde_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 817 VehLckInd_D_Rq 3 "NotUsed" 2 "On_Day" 1 "On_Night" 0 "Off"; -VAL_ 817 DrTgateOpen_B_Rq 1 "Open" 0 "Null"; -VAL_ 817 DrTgateExtSwMde_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 817 Remote_Device_Feedback 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "Shutdown" 3 "Running" 2 "Starting" 1 "Acknowledge" 0 "Null"; -VAL_ 817 Veh_Lock_Requestor 31 "Unused8" 30 "Unused7" 29 "Unused6" 28 "Rgtm_Shutlock_Switch" 27 "Boundary_Alert" 26 "Transit_Vehicle_Relock" 25 "Transit_Cargo_Relock" 24 "Transit_Ajar_Lock" 23 "Diagnostics" 22 "Console_Lock" 21 "Child_Lock" 20 "Double_Lock" 19 "Passive_Pasenger" 18 "Passive_Driver" 17 "Slam_Lock_Protect" 16 "SYNC" 15 "Passport" 14 "Passive_Smart_Unlock" 13 "Autorelock" 12 "RemoteStart" 0 "Null" 1 "Autolock" 11 "Smart_Unlock" 10 "Sliding_Door" 9 "Passive" 8 "Remote" 7 "Programming" 6 "Powerslide" 5 "Keypad" 4 "Key_Cylinder" 3 "Interior" 2 "Auto_Unlock"; -VAL_ 817 R_Pwr_Sliding_Dr_Rqst 1 "Active" 0 "Null"; -VAL_ 817 Power_Liftgate_Rqst 1 "Active" 0 "Null"; -VAL_ 817 Power_Decklid_Rqst 1 "Active" 0 "Null"; -VAL_ 817 L_Pwr_Sliding_Dr_Rqst 1 "Active" 0 "Null"; -VAL_ 817 Veh_Lock_Sub_Id 15 "Unused7" 14 "Unused6" 13 "Unused5" 12 "Unused4" 11 "Unused3" 10 "Unused2" 9 "Unused1" 8 "Customer_8" 7 "Customer_7" 6 "Customer_6" 5 "Customer_5" 4 "Customer_4" 3 "Customer_3" 2 "Customer_2" 1 "Customer_1" 0 "Null"; -VAL_ 817 Veh_Lock_Status 3 "UNLOCK_DRV" 2 "UNLOCK_ALL" 1 "LOCK_ALL" 0 "LOCK_DBL"; -VAL_ 817 ChildLck_D_Dsply 3 "NOT_SUPPORTED" 2 "ERROR" 1 "CHILD_UNLOCK" 0 "CHILD_LOCK"; -VAL_ 817 WindowLockout_B_Stat 1 "Locked" 0 "Unlock"; -VAL_ 817 Lockmsgtxt_D_Rq 7 "MSG7" 6 "MSG6" 5 "MSG5" 4 "MSG4" 3 "MSG3" 2 "MSG2" 1 "MSG1" 0 "NO_WARNING"; -VAL_ 817 FobComm_D_Stat 3 "NotUsed" 2 "RemEngStartOK" 1 "RemEngStartFail" 0 "Null"; -VAL_ 817 LockInhibit 1 "Inhibit" 0 "No_Inhibit"; -VAL_ 879 WndwRearHeat_I_Actl 2047 "Faulty"; -VAL_ 879 WndwRearHeat_D_Stat 7 "NotUsed" 6 "FetLiftLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; -VAL_ 878 DcacGfciTest_B_Rq 1 "Pressed" 0 "Not_Pressed"; -VAL_ 878 DcacOut_Pw_DsplyMx 1023 "Faulty"; -VAL_ 878 DcacOut1_Pw_Dsply 63 "Faulty"; -VAL_ 878 DcacOut2_Pw_Dsply 63 "Faulty"; -VAL_ 878 DcacHw_D_Confg 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Power_2300W" 3 "Power_7200W" 2 "Power_2400W" 1 "Power_2000W" 0 "NoDcacHardware"; -VAL_ 878 DcacFaltMsgTxt_D_Rq 15 "NotUsed" 14 "OvercurrentLP" 13 "EngineRun" 12 "Service" 11 "NotAvailable" 10 "PlugWarn" 9 "PlugWarnDrive" 8 "BreakerC" 7 "BreakerB" 6 "BreakerA" 5 "FuelLow" 4 "AcOnOutput" 3 "Temperature" 2 "Gfci" 1 "Overcurrent" 0 "Ok"; -VAL_ 878 DcacLoFuelMsgTxt_D_Rq 31 "Minute_31" 30 "Minute_30" 29 "Minute_29" 28 "Minute_28" 27 "Minute_27" 26 "Minute_26" 25 "Minute_25" 24 "Minute_24" 23 "Minute_23" 22 "Minute_22" 21 "Minute_21" 20 "Minute_20" 19 "Minute_19" 18 "Minute_18" 17 "Minute_17" 16 "Minute_16" 15 "Minute_15" 14 "Minute_14" 13 "Minute_13" 12 "Minute_12" 11 "Minute_11" 10 "Minute_10" 9 "Minute_9" 8 "Minute_8" 7 "Minute_7" 6 "Minute_6" 5 "Minute_5" 4 "Minute_4" 3 "Minute_3" 2 "Minute_2" 1 "Minute_1" 0 "Ok"; -VAL_ 878 DcacEngOnMsgTxt_D_Rq 3 "NotUsed" 2 "DisplayQuestion" 1 "DisplayWarning" 0 "Ok"; -VAL_ 878 DcacElPw_D_Stat 3 "NotUsed" 2 "High" 1 "Low" 0 "Off"; -VAL_ 878 PwBedPnlEnbl_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 878 DcacOn_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 878 DcacSys_B_Falt 1 "Yes" 0 "No"; -VAL_ 878 DcacLedCtl_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 395 SelDrvMdeCnfm_D_Stat 3 "NotUsed" 2 "Accepted" 1 "NotAccepted" 0 "Null"; -VAL_ 984 PersIndexIpma_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 984 AhbcRampingV_D_Rq 3 "Slow" 2 "Medium" 1 "Fast" 0 "Immediately"; -VAL_ 984 LaActvStats_D_Dsply 31 "Unused7" 30 "LA_Off" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 24 "InerveneLeft_InterveneRght" 23 "WarnLeft_InterveneRight" 22 "SuppressLeft_InterveneRght" 21 "AvailLeft_InterveneRhtt" 20 "NoLeft_InterveneRight" 19 "InterveneLeft_WarnRight" 18 "WarnLeft_WarnRight" 17 "SuppressLeft_WarnRight" 16 "AvailableLeft_WarnRight" 15 "NoLeft_WarnRight" 14 "InterveneLeft_SuppressRght" 13 "WarnLeft_SuppressRight" 12 "SuppressLeft_SuppressRight" 11 "AvailLeft_SuppressRight" 10 "NoLeft_SuppressRight" 9 "InterveneLeft_AvailRight" 8 "WarnLeft_AvailRight" 7 "SuppressLeft_AvailRight" 6 "AvailableLeft_AvailRight" 5 "NoLeft_AvailableRight" 4 "InterveneLeft_NoRight" 3 "WarnLeft_NoRight" 2 "SuppressLeft_NoRight" 1 "AvailableLeft_NoRight" 0 "NoLeft_NoRight"; -VAL_ 984 LaDenyStats_B_Dsply 1 "Unavailable" 0 "Available"; -VAL_ 984 LaHandsOff_D_Dsply 3 "Suppressed" 2 "Level2" 1 "Level1" 0 "HandsOn"; -VAL_ 984 CamraDefog_B_Req 1 "On" 0 "Off"; -VAL_ 984 CamraStats_D_Dsply 3 "FrtCam_TempUnavailOther" 2 "FrtCam_TempUnavailVisibile" 1 "Front_Camera_Service_Reqd" 0 "Front_Camera_OK"; -VAL_ 984 DasAlrtLvl_D_Dsply 5 "Alertness_Level_5" 4 "Alertness_Level_4" 3 "Alertness_Level_3" 2 "Alertness_Level_2" 1 "Alertness_Level_1" 0 "Undefined"; -VAL_ 984 DasStats_D_Dsply 3 "Available" 2 "Unavailable_Other" 1 "Feedback_due_to_Speed" 0 "Off"; -VAL_ 984 DasWarn_D_Dsply 3 "Undefined" 2 "Warning_Level_2" 1 "Warning_Level_1" 0 "No_Warning"; -VAL_ 984 AhbHiBeam_D_Rq 3 "NotUsed" 2 "HighBeamRecommended" 1 "LowBeamRecommended" 0 "DeactivatedUnavailable"; -VAL_ 985 LdwChime_B_Rq 1 "On" 0 "Off"; -VAL_ 985 TsrRegionTxt_D_Stat 31 "Faulty" 30 "NotUsed_8" 29 "NotUsed_7" 28 "NotUsed_6" 27 "NotUsed_5" 26 "NotUsed_4" 25 "NotUsed_3" 24 "NotUsed_2" 23 "NotUsed_1" 22 "Region_22" 21 "Region_21" 20 "Region_20" 19 "Region_19" 18 "Region_18" 17 "Region_17" 16 "Region_16" 15 "Region_15" 14 "Region_14" 13 "Region_13" 12 "Region_12" 11 "Region_11" 10 "Region_10" 9 "Region_09" 8 "Region_08" 7 "Region_07" 6 "Region_06" 5 "Region_05" 4 "Region_04" 3 "Region_03" 2 "Region_02" 1 "Region_01" 0 "NotDetermined"; -VAL_ 985 SblmPedCrossScnr_B_Stat 1 "Yes" 0 "No"; -VAL_ 985 LongCtrlEnbl_D_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "RemoteParking" 2 "Autohitch" 1 "AutomaticParking" 0 "None"; -VAL_ 985 SblmRndAbtScnr_B_Stat 1 "Yes" 0 "No"; -VAL_ 985 DasAlrtInfo_D_Dsply 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 985 IaccVLim_D_Rq 252 "NotUsed_2" 250 "LimitSpeed_250" 240 "LimitSpeed_240" 230 "LimitSpeed_230" 220 "LimitSpeed_220" 210 "LimitSpeed_210" 200 "LimitSpeed_200" 190 "LimitSpeed_190" 150 "LimitSpeed_150" 140 "LimitSpeed_140" 130 "LimitSpeed_130" 120 "LimitSpeed_120" 110 "LimitSpeed_110" 100 "LimitSpeed_100" 90 "LimitSpeed_90" 80 "LimitSpeed_80" 70 "LimitSpeed_70" 60 "LimitSpeed_60" 50 "LimitSpeed_50" 40 "LimitSpeed_40" 30 "LimitSpeed_30" 20 "LimtSpeed_20" 251 "NotUsed_1" 255 "Faulty" 254 "NoDataExists" 253 "NotUsed_3" 180 "LimitSpeed_180" 179 "LimitSpeed_179" 178 "LimitSpeed_178" 177 "LimitSpeed_177" 176 "LimitSpeed_176" 175 "LimitSpeed_175" 174 "LimitSpeed_174" 173 "LimitSpeed_173" 172 "LimitSpeed_172" 171 "LimitSpeed_171" 170 "LimitSpeed_170" 169 "LimitSpeed_169" 168 "LimitSpeed_168" 167 "LimitSpeed_167" 166 "LimitSpeed_166" 165 "LimitSpeed_165" 164 "LimitSpeed_164" 163 "LimitSpeed_163" 162 "LimitSpeed_162" 161 "LimitSpeed_161" 160 "LimitSpeed_160" 15 "LimitSpeed_15" 14 "LimitSpeed_14" 13 "LimitSpeed_13" 12 "LimitSpeed_12" 11 "LimitSpeed_11" 10 "LimitSpeed_10" 9 "LimitSpeed_9" 8 "LimitSpeed_8" 7 "LimitSpeed_7" 6 "LimitSpeed_6" 5 "LimitSpeed_5" 4 "LimitSpeed_4" 3 "LimitSpeed_3" 2 "LimitSpeed_2" 1 "LimitSpeed_1" 0 "LimitSpeed_0"; -VAL_ 985 IaccVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; -VAL_ 985 IsaVLim_D_Rq 252 "NotUsed_2" 250 "LimitSpeed_250" 240 "LimitSpeed_240" 230 "LimitSpeed_230" 220 "LimitSpeed_220" 210 "LimitSpeed_210" 200 "LimitSpeed_200" 190 "LimitSpeed_190" 150 "LimitSpeed_150" 140 "LimitSpeed_140" 130 "LimitSpeed_130" 120 "LimitSpeed_120" 110 "LimitSpeed_110" 100 "LimitSpeed_100" 90 "LimitSpeed_90" 80 "LimitSpeed_80" 70 "LimitSpeed_70" 60 "LimitSpeed_60" 50 "LimitSpeed_50" 40 "LimitSpeed_40" 30 "LimitSpeed_30" 20 "LimtSpeed_20" 251 "NotUsed_1" 255 "Faulty" 254 "NoDataExists" 253 "NotUsed_3" 180 "LimitSpeed_180" 179 "LimitSpeed_179" 178 "LimitSpeed_178" 177 "LimitSpeed_177" 176 "LimitSpeed_176" 175 "LimitSpeed_175" 174 "LimitSpeed_174" 173 "LimitSpeed_173" 172 "LimitSpeed_172" 171 "LimitSpeed_171" 170 "LimitSpeed_170" 169 "LimitSpeed_169" 168 "LimitSpeed_168" 167 "LimitSpeed_167" 166 "LimitSpeed_166" 165 "LimitSpeed_165" 164 "LimitSpeed_164" 163 "LimitSpeed_163" 162 "LimitSpeed_162" 161 "LimitSpeed_161" 160 "LimitSpeed_160" 15 "LimitSpeed_15" 14 "LimitSpeed_14" 13 "LimitSpeed_13" 12 "LimitSpeed_12" 11 "LimitSpeed_11" 10 "LimitSpeed_10" 9 "LimitSpeed_9" 8 "LimitSpeed_8" 7 "LimitSpeed_7" 6 "LimitSpeed_6" 5 "LimitSpeed_5" 4 "LimitSpeed_4" 3 "LimitSpeed_3" 2 "LimitSpeed_2" 1 "LimitSpeed_1" 0 "LimitSpeed_0"; -VAL_ 985 SblmStopScnr_B_Stat 1 "Yes" 0 "No"; -VAL_ 985 SblmYieldScnr_B_Stat 1 "Yes" 0 "No"; -VAL_ 985 IsaVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; -VAL_ 985 AdbDividedRoad_B_Stat 1 "Yes" 0 "No"; -VAL_ 985 LcwaMsgTxt_D_Stat 3 "SodXFaulty" 2 "SodXBlocked" 1 "TrailerConnected" 0 "NoMessage"; -VAL_ 985 AdbDrvSide_B_Stat 1 "Left_Hand_Traffic" 0 "Right_Hand_Traffic"; -VAL_ 992 MsgCntrDsplyOp_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Copy" 4 "Restore" 3 "Upload" 2 "Set" 1 "Query" 0 "Null"; -VAL_ 992 MsgCntrPersIndex_D_Rq 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 943 VehVActlAdas_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 943 AdasLcDistToObj_L_Actl 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 515 PtIgnSwtch_D_Stat 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; -VAL_ 1111 TrlrYawWActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 1111 TrlrYaw_W_Actl 65535 "Faulty" 65534 "NoDataExists"; -VAL_ 1111 TrlrHitYaw_AnRate_Actl 4095 "Fault" 4094 "NoDataExists"; -VAL_ 1111 TrlrHitchYaw_D_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "FaultyYrsuConnection" 9 "FaultyYrsu" 8 "HiConfdLrndAngle" 7 "LowConfdLrndAngle" 6 "HiConfdAngleMem" 5 "LowConfdAngleMem" 4 "InitNoTadAngle" 3 "InitInputs" 2 "TadTrlrDataOutOfRange" 1 "TadNotWithinSpecification" 0 "NoConnectionWithYrsu"; -VAL_ 1111 TrlrHitchYaw_An_Actl 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 1106 TrlrSnsId_No_Actl -1 "Faulty_FFFFFFFFFFFF" -2 "NoDataExists_FFFFFFFFFFFE"; -VAL_ 982 LatCtl_D2_Rq 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "SafeRampOut" 2 "PathFollowingExtendedMode" 1 "PathFollowingLimitedMode" 0 "NoLateralControl"; -VAL_ 982 HandsOffCnfm_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 982 LatCtlRampType_D_Rq 3 "Immediately" 2 "Fast" 1 "Medium" 0 "Slow"; -VAL_ 982 LatCtlPrecision_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "Precise" 0 "Comfortable"; -VAL_ 1104 DrvEngageLevel_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Disengaged" 3 "Distracted" 2 "Attentive" 1 "Invalid" 0 "NotDetermined"; -VAL_ 1104 DrvImpLvlConfid_D_Stat 7 "Faulty" 6 "NotUsed" 5 "High" 4 "MediumHigh" 3 "Medium" 2 "LowMedium" 1 "Low" 0 "NotDetermined"; -VAL_ 1104 DrvImpairLvl_D_Stat 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "Incapacitated" 8 "Asleep" 7 "Microsleep" 6 "MostDrowsy" 5 "Drowsy_4" 4 "Drowsy_3" 3 "Drowsy_2" 2 "LeastDrowsy" 1 "Alert" 0 "NotDetermined"; -VAL_ 1104 DrvEngLvlConfid_D_Stat 7 "Faulty" 6 "NotUsed" 5 "High" 4 "MediumHigh" 3 "Medium" 2 "LowMedium" 1 "Low" 0 "NotDetermined"; -VAL_ 1104 DrvCamPassIR_D_Stat 3 "Faulty" 2 "Blocked" 1 "Ok" 0 "TemporaryUnavailable"; -VAL_ 1104 DrvCamera_D_Stat 3 "Faulty" 2 "Blocked" 1 "Ok" 0 "TemporaryUnavailable"; -VAL_ 1104 DrvCamDrvIR_D_Stat 3 "Faulty" 2 "Blocked" 1 "Ok" 0 "TemporaryUnavailable"; -VAL_ 1104 DrvAttentZone_D_Stat 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "PassengerSideWindow" 8 "DriverSideWindow" 7 "DriverSideMirror" 6 "RearviewMirror" 5 "PassengerSideMirror" 4 "Infotainment" 3 "Cluster" 2 "FrontWindshield" 1 "Other" 0 "NotDetermined"; -VAL_ 1104 DrvAlertSt_D_Stat 3 "Faulty" 2 "EyesOffRoad" 1 "EyesOnRoad" 0 "NotDetermined"; -VAL_ 1114 TrailCtlSwtch_B_Stat2 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1114 TrlBrkInitOut_D_Rq 3 "Heavy" 2 "Medium" 1 "Light" 0 "Null"; -VAL_ 1116 TrlrAidSetup_D2_Rq 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "CompleteSetup" 5 "ReturnToSetup" 4 "StickerNotCircled" 3 "ConfirmSetup" 2 "EndSetup" 1 "BeginSetup" 0 "Inactive"; -VAL_ 1116 TrlrAidEnbl_D2_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Deactivate" 2 "ActivateTrg" 1 "ActivateTba" 0 "Inactive"; -VAL_ 1116 TrlrRvrseCancl_B_Rq 1 "Cancel" 0 "Null"; -VAL_ 1116 TrlrIdType_D_Stat 3 "Gooseneck" 2 "FifthWheel" 1 "Conventional" 0 "Null"; -VAL_ 1116 TrlrAnOffstDir_D_Mem 3 "NotUSed" 2 "Right" 1 "Left_or_Center" 0 "Null"; -VAL_ 1085 ULoRgenTestMde_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1085 PwSrcULoOvrTe_B_Actl 1 "Yes" 0 "No"; -VAL_ 1085 PwSrcULoFalt_D_Stat 3 "Fault_No_Output" 2 "Fault_Reduced_Output" 1 "Fault_NonSpecific" 0 "No_Fault"; -VAL_ 1085 PwSrcULoDcnnt_B_Stat 1 "Loose_or_Disconnected" 0 "Connected"; -VAL_ 1085 PwSrcULo_Pc_Mx 255 "Fault"; -VAL_ 1085 PwSrcULoComm_B_Falt 1 "Fault" 0 "No_Fault"; -VAL_ 1085 PwSrcULo_I_Mx 255 "Fault"; -VAL_ 1085 PwSrcULo_I_Actl 255 "Fault"; -VAL_ 981 AdbBrdrTop_An_Rq 255 "Faulty" 254 "NoDataExists"; -VAL_ 981 AdbBrdrRight_L_Stat 511 "Faulty" 510 "NoDataExists"; -VAL_ 981 AdbBrdrRight_An_Rq 1023 "Faulty" 1022 "NoDataExists"; -VAL_ 981 AdbBrdrLeft_L_Stat 511 "Faulty" 510 "NoDataExists"; -VAL_ 981 AdbBrdrLeft_An_Rq 1023 "Faulty" 1022 "NoDataExists"; -VAL_ 981 AdbBrdrBottom_An_Rq 63 "Faulty" 62 "NoDataExists"; -VAL_ 981 AdbBeam_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "FullHighBeam" 3 "Spot_BothSide" 2 "Spot_OnlyRightSide" 1 "Spot_OnlyLeftSide" 0 "NoHighBeam"; -VAL_ 791 EngAirFilt_B_RqReset 1 "Yes" 0 "No"; -VAL_ 791 GpsElMdeSel_B_Rq 1 "On" 0 "Off"; -VAL_ 791 LongTermReset_B_Rq 1 "On" 0 "Off"; -VAL_ 791 DrvEffLvl_No_Stat 63 "Fault" 62 "NoDataExists"; -VAL_ 868 BattRgenLoStat_D_Qlty 3 "OK" 2 "Not_Within_Spec" 1 "Eval_In_Progress" 0 "Faulty"; -VAL_ 868 BattRgenLoPrtct_B_Stat 1 "Yes" 0 "No"; -VAL_ 868 BattRgenLoDChrg_D_Stat 3 "StuckClosed" 2 "StuckOpen" 1 "Closed" 0 "Open"; -VAL_ 868 BattRgenLoDchrg_B_Rq 1 "Yes" 0 "No"; -VAL_ 868 BattRgenLoChrg_D_Stat 3 "StuckClosed" 2 "StuckOpen" 1 "Closed" 0 "Open"; -VAL_ 868 BattRgenLoChrg_B_Rq 1 "Yes" 0 "No"; -VAL_ 868 BattRgenLo_B_Falt 1 "Yes" 0 "No"; -VAL_ 867 BattRgenLoBalnc_B_Rq 1 "Yes" 0 "No"; -VAL_ 867 BattRgenLo_Te_Actl 255 "Fault"; -VAL_ 865 BattRgenLo_U_Actl 2047 "Faulty"; -VAL_ 865 BattRgenLo_I_Actl 65535 "Faulty"; -VAL_ 1144 WakeAlarm0_B_Typ 1 "CanAndEcuDriveCircuit" 0 "CanOnly"; -VAL_ 1144 PreCondBatt_B_Actl 1 "On" 0 "Off"; -VAL_ 1144 HtrnDcdcDis_B_Rq 1 "Yes" 0 "No"; -VAL_ 1144 ChrgNowEvnt_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1144 CabinDrvSustn_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 1144 BattChrgTrgtSoC_D_Rq 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 1144 CabnEvapSovFront_B_Rq 1 "On" 0 "Off"; -VAL_ 1144 HeatCoreSovRear_B_Rq 1 "On" 0 "Off"; -VAL_ 1144 BattChlrSov_B_Rq 1 "On" 0 "Off"; -VAL_ 1144 CabnEvapSovRear_B_Rq 1 "On" 0 "Off"; -VAL_ 1144 BrkAppl_D_RqPt 3 "BrakesSlowRelease" 2 "BrakesFastRelease" 1 "BrakesEngage" 0 "NotActive"; -VAL_ 1144 HtrnCnnctPwr_B_Stat 1 "Asserted" 0 "NotAsserted"; -VAL_ 1144 PtcHtr_D_Stat 3 "Faulty" 2 "NotUsed" 1 "On" 0 "Off"; -VAL_ 1144 HtrnClntFlw_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 1144 BattTracDrvSustn_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 1144 BattTracClntVlv_B_Rq 1 "On" 0 "Off"; -VAL_ 1141 OfbChrgSetSync_D_Stat 3 "Fail" 2 "Success" 1 "InProgress" 0 "NoSyncInProgress"; -VAL_ 1141 PtRmtRprt_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "PlugInToMaintain12vBattery" 11 "SettingUpdated" 10 "FastChargeComplete" 9 "ChargeNotOccurring" 8 "OneTimeSocReached" 7 "BatteryTemperatureReminder" 6 "ReducedPerformance" 5 "LimitedPerformance" 4 "ChargeFault" 3 "ChargeComplete" 2 "VehiclePreconditioned" 1 "TripDistanceAchieved" 0 "NoReportRequest"; -VAL_ 1141 NtfctnConflict1_D_Rq 7 "NotUsed5" 6 "NotUsed4" 5 "NotUsed3" 4 "NotUsed2" 3 "NotUsed1" 2 "Clonflict_Exists" 1 "No_Conflict" 0 "Invalid"; -VAL_ 1140 RgenEvntLvl_Pc_Dsply 1023 "Fault" 1022 "NoDataExists"; -VAL_ 1140 BrkEvntComplt_B_Dsply 1 "On" 0 "Off"; -VAL_ 1140 PreCondStat_D_Dsply 7 "Reserved3" 6 "Reserved2" 5 "Reserved1" 4 "Faulted" 3 "Complete" 2 "In_Progress" 1 "Scheduled" 0 "Not_Scheduled"; -VAL_ 1139 BattChrgTrgtLMax_T_Est 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 1139 ActChrgStrtYr_No_Actl 31 "Invalid"; -VAL_ 1139 ActChrgStrtMin_No_Actl 63 "Invalid" 62 "Unknown"; -VAL_ 1139 ActChrgStrtHr_No_Actl 31 "Invalid" 30 "Unknown"; -VAL_ 1139 ActChrgStrtDay_No_Actl 31 "Invalid"; -VAL_ 1139 ActChrgStrMnth_No_Actl 15 "Invalid"; -VAL_ 1138 BattChrgTrgtLMin_T_Est 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 1138 ActChrgEndYr_No_Actl 31 "Invalid"; -VAL_ 1138 ActChrgEndMnth_No_Actl 15 "Invalid"; -VAL_ 1138 ActChrgEndMin_No_Actl 63 "Invalid" 62 "Unknown"; -VAL_ 1138 ActChrgEndHr_No_Actl 31 "Invalid" 30 "Unknown"; -VAL_ 1138 ActChrgEndDay_No_Actl 31 "Invalid"; -VAL_ 1089 Mtr2Aout_W_ActlMntr 1023 "Faulty"; -VAL_ 1089 Inv1_Te_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 1089 MtrTrac2Coil_Te_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 1089 MtrTrac2Falt_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1089 MtrTrac2TeAlrm_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1089 Mtr2CntlTeAlrm_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1089 MtrTrac2Inv_Te_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 1089 MtrTrac2_I_Actl 65535 "Faulty"; -VAL_ 1088 ChrgTMatch_B_Stat 1 "True" 0 "False"; -VAL_ 1088 ChrgStat_D2_Dsply 15 "NotUsed_2" 14 "NotUsed_1" 13 "ChargeTargetReached" 12 "DriveConditioning" 11 "CabinPreconditioning" 10 "ChargingSystemMaintain" 9 "ChargingInductive" 8 "ChargingDCFastChange" 7 "ChargingAC" 6 "ChargeScheduled" 5 "EvsePaused" 4 "EvseNotDetected" 3 "EvseNotCompatible" 2 "FaultOutsideCar" 1 "FaultInsideCar" 0 "NotReady"; -VAL_ 1088 HvacPrecondRecirc_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "Recirc" 0 "Outside"; -VAL_ 1088 HvacPrecondMode2_D_Rq 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "Last_User_Settings" 10 "Auto" 9 "Max_Defrost" 8 "Windshield_Panel_Floor" 7 "Windshield_Panel" 6 "Windshield" 5 "Windshield_Floor" 4 "Floor" 3 "Panel_Floor" 2 "Panel" 1 "MAX_AC" 0 "Off"; -VAL_ 1088 HvacPrecondBlwr2_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Last_User_Setting" 8 "Auto" 7 "Speed7" 6 "Speed6" 5 "Speed5" 4 "Speed4" 3 "Speed3" 2 "Speed2" 1 "Speed1" 0 "Off"; -VAL_ 1088 HvacPrecondAC_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "On" 0 "Off"; -VAL_ 1088 BattChrgInhbt_D_Rq 3 "MaintainTargetSoc" 2 "NotUsed" 1 "InhibitChargingThermal" 0 "Enable_Charging"; -VAL_ 1040 ElCmprEnbl_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 1016 ChrgGoTElement_B_Dsply 1 "Yes" 0 "No"; -VAL_ 1016 ChrgGoTTouchEnbl_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 1016 ChrgGoTTouch_B_Stat 1 "On" 0 "Off"; -VAL_ 1016 ChrgGoTPrcond_D_Stat 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 1016 ChrgGoTMnte_D_Stat 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; -VAL_ 1016 ChrgGoTHr_T_Stat 31 "Faulty" 30 "NoDataExists"; -VAL_ 1016 ChrgGoTExtHtrEnbl_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 1016 ChrgGoTExtHtr_B_Stat 1 "On" 0 "Off"; -VAL_ 1016 ChrgGoTAllOn_B_Stat 1 "On" 0 "Off"; -VAL_ 1013 ChrgToPcWkndSav_D_Stat 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 1013 ChrgToPcWkdySav_D_Stat 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 1013 ChrgNowEnbl_B_Saved 1 "On" 0 "Off"; -VAL_ 1013 ChrgLocIdUnsAck_B_Stat 1 "Yes" 0 "No"; -VAL_ 1012 ChrgNowCurnt_B_Dsply 1 "On" 0 "Off"; -VAL_ 1012 ChrgLocSaved_B_Dsply 1 "Yes" 0 "No"; -VAL_ 1012 ChrgLocLongPostv_B_Sav 1 "Yes" 0 "No"; -VAL_ 1012 ChrgLocLattPostv_B_Sav 1 "Yes" 0 "No"; -VAL_ 1011 ChrgLocLongPostv_B_Uns 1 "Yes" 0 "No"; -VAL_ 1011 ChrgLocLattPostv_B_Uns 1 "Yes" 0 "No"; -VAL_ 871 BattElecPerf_D_Actl 7 "NotUsed" 6 "Hot_Batt_Severe_Lim_Perf" 5 "Hot_Batt_Reduced_Perf" 4 "Hot_Batt_Close_to_lim_Per" 3 "Cold_Batt_Severe_Lim_Perf" 2 "Cold_Batt_Reduced_Perf" 1 "Cold_Batt_Close_to_lim_Pe" 0 "Ok_no_message_displayed"; -VAL_ 871 BattChrgTrgtLPt_T_Est 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 871 BattChrgTrgSocPt_T_Est 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 871 BattChrgCmpltPt_T_Est 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 786 RgenTrip_L_Dsply 65535 "Fault" 65534 "NoDataExists"; -VAL_ 786 ChrgStat_D_Dsply 7 "NotUsed" 6 "Complete" 5 "Scheduled" 4 "In_Progress" 3 "Fault_Outside_Car" 2 "Fault_Inside_Car" 1 "Fault_Unknown_Location" 0 "Not_Ready"; -VAL_ 72 immoTarget2Status 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "DISABLED_RESET " 2 "ENABLED_NONMOTIVE_START" 1 "ENABLED_MOTIVE_START" 0 "DISABLED"; -VAL_ 72 immoTarget2Cmd 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "TARGET1_IDBLOCK2" 2 "TARGET1_IDBLOCK1" 1 "CHALLENGE" 0 "IDLE"; -VAL_ 912 CabnEvapSovFront_D_Stat 7 "NotUsed_1" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; -VAL_ 912 BattChlrSov_D_Stat 7 "NotUsed_1" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; -VAL_ 912 BattTracClntVlv_D_Stat 7 "NotUsed" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; -VAL_ 874 AirCondCluOpen_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 AirCondCluLife_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 AirCondCluGnd_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 AirCondClu_D_Stat 7 "NotUsed" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; -VAL_ 874 AirCondCluBatt_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattTracShrtGrnd_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattTracShrtBatt_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattTracOpnCirct_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattTracLifeLim_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattChlrShrtGrnd_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattChlrShrtBatt_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattChlrOpnCirct_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattChlrLifeLim_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 874 BattTracLow_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 651 TelematicsSrvc_D_St 7 "NotUsed" 6 "NotifyNotActivatedYet" 5 "NotActivatedYet" 4 "NotifyExpired" 3 "Expired" 2 "ExpiringSoon" 1 "Active" 0 "Null"; -VAL_ 651 EmgcyCallMute_D_Stat 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "ManualEmergencyCallMute" 2 "AutomaticEmergencyCallMute" 1 "EmergencyCallUnmute" 0 "Null"; -VAL_ 651 OfbChrgSetSync_D_Rq 3 "Fail" 2 "Success" 1 "InProgress" 0 "NoSyncInProgress"; -VAL_ 529 OnbChrgToPcWknd_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 529 OnbChrgToPcWkdy_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; -VAL_ 529 OnbChrgSetNow_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 529 OnbChrgSetDelete_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 529 OnbChrgPrflUpdate_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 529 OnbChrgLocIdUns_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 66 immoControlCmd_T2 0 "IDLE" 1 "MOTIVE_START_RQST" 2 "NONMOTIVE_START_RQST" 3 "RQST_TARGET2_IDBLOCK1" 4 "RQST_TARGET2_IDBLOCK2" 5 "Unused" 6 "ECHO_TARGET2_IDBLOCK2" 7 "SHUTDOWN"; -VAL_ 1124 GPS_Vdop 31 "Invalid" 30 "Unknown"; -VAL_ 1124 GPS_Speed 255 "Invalid" 254 "Unknown"; -VAL_ 1124 GPS_Sat_num_in_view 31 "Invalid" 30 "Unknown"; -VAL_ 1124 GPS_MSL_altitude 4095 "Fault" 4094 "Unknown"; -VAL_ 1124 GPS_Heading 65535 "Fault" 65534 "Unknown"; -VAL_ 1124 GPS_Hdop 31 "Invalid" 30 "Unknown"; -VAL_ 1124 GPS_dimension 2 "_3D" 1 "_2D" 0 "No_Fix"; -VAL_ 1119 CoolFanDcdc_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 1119 DcdcClntFlw_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 1123 GpsUtcYr_No_Actl 31 "Fault"; -VAL_ 1123 GpsUtcMnth_No_Actl 15 "Fault"; -VAL_ 1123 GPS_UTC_seconds 63 "Fault" 62 "Unknown"; -VAL_ 1123 GPS_UTC_minutes 63 "Fault" 62 "Unknown"; -VAL_ 1123 GPS_UTC_hours 31 "Invalid" 30 "Unknown"; -VAL_ 1123 GPS_Pdop 31 "Invalid" 30 "Unknown"; -VAL_ 1123 GPS_Compass_direction 7 "NorthWest" 6 "West" 5 "SouthWest" 4 "South" 3 "SouthEast" 2 "East" 1 "NorthEast" 0 "North"; -VAL_ 1123 GPS_Actual_vs_Infer_pos 1 "Inferred_Position" 0 "Actual_Postition"; -VAL_ 1123 Gps_B_Falt 1 "Yes" 0 "No"; -VAL_ 1122 GpsHsphLongEast_D_Actl 0 "Invalid" 1 "Eastern" 2 "Western" 3 "Fault"; -VAL_ 1122 GpsHsphLattSth_D_Actl 3 "Fault" 2 "Northern" 1 "Southern" 0 "Invalid"; -VAL_ 1122 GPS_Longitude_Minutes 63 "Fault" 62 "Unknown"; -VAL_ 1122 GPS_Longitude_Min_dec 16383 "Invalid" 16382 "Unknown"; -VAL_ 1122 GPS_Longitude_Degrees 511 "Fault" 510 "Unknown"; -VAL_ 1122 GPS_Latitude_Minutes 63 "Fault" 62 "Unknown"; -VAL_ 1122 GPS_Latitude_Min_dec 16383 "Invalid" 16382 "Unknown"; -VAL_ 1122 GPS_Latitude_Degrees 255 "Invalid" 254 "Unknown"; -VAL_ 1003 PersRecallSrc_D_Actl 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "MemorySwitch" 3 "RemoteStart" 2 "KeyFob" 1 "CenterStack" 0 "Null"; -VAL_ 1003 Pers4Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; -VAL_ 1003 Pers3Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; -VAL_ 1003 Pers2Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; -VAL_ 1003 Pers1Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; -VAL_ 1003 EmPrflNo_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; -VAL_ 1003 EmPrflKeyAssoc_D_Stat 7 "WrongDevice" 6 "KeyAssociateFailed" 5 "KeyAssociateSuccess" 4 "KeyAlreadyInUse" 3 "KeyDisassociated" 2 "KeyAssociationExited" 1 "KeyAssociationEntered" 0 "Null"; -VAL_ 1003 VehKeyActv_D_Stat 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Key8Active" 7 "Key7Active" 6 "Key6Active" 5 "Key5Active" 4 "Key4Active" 3 "Key3Active" 2 "Key2Active" 1 "Key1Active" 0 "NoKeyActive"; -VAL_ 1003 PersNoPos_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 1003 PersSetupRestr_D_Actl 3 "Non_Moveable_Person" 2 "Moveable_Person" 1 "Vehicle" 0 "Factory"; -VAL_ 1003 PersSetupAccessCtrl 1 "Limited" 0 "Full"; -VAL_ 1003 PersConflict_D_Actl 1 "Conflict" 0 "No_Conflict"; -VAL_ 1003 AssocConfirm_D_Actl 0 "None" 7 "Associate" 6 "Keycode_Rejected" 5 "Keycode_Accepted" 4 "In_Progress" 3 "Erase" 2 "Duplicate" 1 "Disassociate"; -VAL_ 1003 PersNo_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "NotDetermined" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 994 PersStore_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Vehicle" 4 "PERS_4" 3 "PERS_3" 2 "PERS_2" 1 "PERS_1" 0 "Null"; -VAL_ 994 Pers4OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; -VAL_ 994 Pers3OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; -VAL_ 994 Pers2OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; -VAL_ 994 Pers1OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; -VAL_ 994 CtrStkPersIndex_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 994 CtrStkDsplyOp_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Copy" 4 "Restore" 3 "Upload" 2 "Set" 1 "Query" 0 "Null"; -VAL_ 778 PrkAidFront_D_RqDrv 2 "Status" 3 "NotUsed" 1 "Enabled" 0 "Disabled"; -VAL_ 778 PrkAidAcsyRear_D_RqDrv 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 778 PrkAidAcsyFront_D_RqDrv 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 778 Cta_D_Rq 3 "Unused" 2 "NoDataExists" 1 "On" 0 "Off"; -VAL_ 778 PrkAidRear_D_RqDrv 2 "Status" 3 "NotUsed" 1 "Enabled" 0 "Disabled"; -VAL_ 778 SteEffort_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "SpecialMode_2" 3 "SpecialMode_1" 2 "Comfort" 1 "Sport" 0 "Normal"; -VAL_ 778 Sod_D_Rq 2 "BLIS_On_Second_Warning_ON" 1 "BLIS_On_Second_Warning_OFF" 0 "Off"; -VAL_ 549 IPC_MyKeyVolLimit_St 0 "Invalid" 1 "Off" 2 "On"; -VAL_ 549 HdcOn_B_Rq 1 "On" 0 "Off"; -VAL_ 549 IPC_Attn_Info_Audio 7 "Unknown" 6 "Attenuation_6" 5 "Attenuation_5" 4 "Attenuation_4" 3 "Attenuation_3" 2 "Attenuation_2" 1 "Attenuation_1" 0 "No_Attenuation_of_Audio"; -VAL_ 549 BeltminderAudioMute 2 "On" 1 "Off" 0 "Invalid"; -VAL_ 549 Power_Up_Chime_Modules 1 "Active" 0 "Inactive"; -VAL_ 549 Chime_Source 2 "Cluster" 1 "Infotainment_Sys" 0 "Invalid"; -VAL_ 549 IPC_New_Attn_Event 1 "Active" 0 "Inactive"; -VAL_ 551 PmCabnLvl_D_Stat 7 "NotUsed_1" 6 "Level_6_Worst" 5 "Level_5" 4 "Level_4" 3 "Level_3" 2 "Level_2" 1 "Level_1_Best" 0 "NotKnown"; -VAL_ 551 PmCabn_D_Stat 3 "FilteringComplete" 2 "FilteringOn" 1 "FilteringOff" 0 "NotKnown"; -VAL_ 551 Cntr_Plg_Mode_Cmd 1 "Enable" 0 "Disable"; -VAL_ 551 ChrgCrdLckEnbl_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 551 PwRnngBoardT_D_Rq 3 "NotUsed" 2 "Timer2" 1 "Timer1" 0 "Inactive"; -VAL_ 551 PwRnngBoardSwtch_D_Rq 3 "NotUsed" 2 "DeployUnlocked" 1 "AlwaysActive" 0 "Inactive"; -VAL_ 551 PwRnngBoardMde_D_Rq 0 "Inactive" 1 "Off" 2 "Out" 3 "Auto"; -VAL_ 551 Btt_L_Actl2 127 "Faulty" 126 "NoDataExists"; -VAL_ 551 Rba_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 551 EmPrflNo_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; -VAL_ 551 EmPrflButtnAssoc_D_Rq 3 "NotUsed" 2 "ExitButtonAssociation" 1 "EnterButtonAssociation" 0 "Null"; -VAL_ 551 EmPrflKeyAssoc_D_Rq 7 "NotUsed_3" 6 "DisassociatePhone" 5 "EnterPhoneAssociation" 4 "OverwriteKey" 3 "DisassociateKey" 2 "ExitKeyAssociation" 1 "EnterKeyAssociation" 0 "Null"; -VAL_ 551 Em_D_Stat 3 "NotSupported" 2 "ProfilesOff" 1 "ProfilesOn" 0 "Null"; -VAL_ 551 ChrgOvrdExitScrn_D_Rq 3 "NotUsed_1" 2 "Request_override" 1 "Do_not_request_override" 0 "Inactive"; -VAL_ 1010 MbdblActv_B_RqAdas 1 "Yes" 0 "No"; -VAL_ 1010 CbdblActv_B_RqAdas 1 "Yes" 0 "No"; -VAL_ 1010 AdbUrbanArea_B_Stat 1 "Yes" 0 "No"; -VAL_ 1070 BattULo24_D_Falt 3 "NotUsed" 2 "TemporaryFault" 1 "Fault" 0 "NoFault"; -VAL_ 1070 BattULo24_Te_Actl 127 "Fault"; -VAL_ 1070 BattULo24State_D_Qlty 3 "OK" 2 "Not_Within_Spec" 1 "Eval_In_Progress" 0 "Faulty"; -VAL_ 1070 BattULo24_I_Actl 16383 "Faulty"; -VAL_ 1070 BattULo24_B_Falt 1 "Yes" 0 "No"; -VAL_ 1186 SelDrvMdeAwd2_D_Stat 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; -VAL_ 1186 RearDiffLckMsg_D_Rq 7 "Locker_Disabled" 6 "Locker_Enabled" 5 "Locker_Accel_Pedal" 4 "Speed4" 3 "Speed3" 2 "Spee2" 1 "Speed1" 0 "Normal__No_Message "; -VAL_ 1186 RearDiffLckLamp_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 1186 RearDiffLck_Tq_Actl 4095 "Fault" 4094 "Unknown"; -VAL_ 1186 RearDiffFalt_D_Stat 3 "Diff_Failed_Closed" 2 "Diff_Failed_Open" 1 "Fault_Non_Specific" 0 "No_Fault"; -VAL_ 1186 LsdSrvcRqd_B_Rq 1 "On" 0 "Off"; -VAL_ 611 AwdSys_D_Stat 3 "Faulty" 2 "NotUsed" 1 "_4x4_L_H_Active" 0 "_4x4_L_H_Inactive"; -VAL_ 611 AwdStat_D_RqDsply 31 "NotUsed9" 30 "NotUsed8" 29 "NotUsed7" 28 "To_Engage_4x4_Release_Aped" 27 "To_Engage_4x4_Slow_To_3MPH" 26 "Shift_To_Neutral" 25 "Lkr_Mode_Unavail_TMS" 24 " _4x4_Mode_Unavail_TMS" 23 "Out_of_4Low_Crawl" 22 "AWD_PTU_Oil_Changed" 21 "Change_AWD_PTU_Oil" 20 "Neutral_Tow_Disabled" 19 "Neutral_Tow_Enabled" 18 "AWD_OFF" 17 "_4x4_Off_Road_Speed" 16 "_4x4_Extreme_Off_Road_Mode" 15 "_4x4_Exiting_Off_Road" 14 "_4x4_Off_Road_Mode" 10 "_4x4_Locked_Temporarily" 9 "Shift_In_Progress" 13 "Blocked_Shift_Assist" 12 "_4x4_Auto_Restored" 11 "_4x4_Disabled_Temporarily" 7 "Out_of_4Low__Neutral" 6 "Out_of_4Low__Brake" 5 "Out_of_4Low__Speed" 4 "Into_4Low__Clutch" 3 "Into_4Low__Neutral" 2 "Into_4Low__Brake" 1 "Into_4Low__Speed" 0 "Normal__No_Message" 8 "Out_of_4Low__Clutch"; -VAL_ 611 AwdLck_D_Stat 9 "Undefined" 8 "Under_External_Torque_Ctrl" 7 "Torque_Limited_by_Cmd" 6 "Fully_Locked_by_Cmd" 5 "Disabled" 4 "Warning" 3 "Fault" 2 "Inactive" 1 "Completely_Opened_by_Cmd" 0 "OK"; -VAL_ 611 AwdSrvcRqd_B_Rq 1 "On" 0 "Off"; -VAL_ 611 NtrlTowAvail_B_Stat 1 "Available" 0 "NotAvailable"; -VAL_ 611 AwdLck_Tq_Rq 4095 "Fault" 4094 "Unknown"; -VAL_ 611 AwdOffRoadMode_D_Stats 3 "Invalid" 2 "Extreme_Off_Road" 1 "Off_Road" 0 "Normal_Mode"; -VAL_ 611 AwdLoLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 611 AwdHiLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 611 AwdAutoLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 611 Awd2wdLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 611 AwdRnge_D_Actl 7 "Unknown" 6 "High_Range_2wd" 5 "High_Range_Auto" 4 "High_Range_Locked" 3 "Neutral" 2 "Low_Range_2wd" 1 "Low_Range_Auto" 0 "Low_Range_Locked"; -VAL_ 1047 TrlrAidSetup_D2_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "SetupAcquisitionSuccess" 4 "TbaTadMonitor" 3 "SetupStartAcquisition" 2 "SetupPrepForAcquisition" 1 "TbaActive" 0 "Null"; -VAL_ 1047 TrlrAidEnbl_D2_Stat 7 "NotUsed_1" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; -VAL_ 1047 TrlrAidMsgTxt_D2_Rq 63 "Message63" 62 "Message62" 61 "Message61" 60 "Message60" 55 "Message55" 50 "Message50" 45 "Message45" 40 "Message40" 35 "Message35" 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1047 EsaOn_B_Stat 1 "On" 0 "Off"; -VAL_ 1047 SelDrvMdeSte_D_Stat 0 "NotAvailable" 1 "Available" 2 "TemporarilyNotAvailable" 3 "Faulty"; -VAL_ 972 LatCtlSte_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Denied" 3 "RampOut" 2 "ContLatControlInProgress" 1 "Available" 0 "Unavailable"; -VAL_ 972 LatCtlLim_D_Stat 3 "LimitWithDriverActive" 2 "LimitReached" 1 "LimitClose" 0 "LimitNotReached"; -VAL_ 972 LatCtlCpblty_D_Stat 3 "Faulty" 2 "ExtendedModeAvailable" 1 "LimitedModeAvailable" 0 "NoModeAvailable"; -VAL_ 972 LsmcBrkDecelEnbl_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "On" 0 "Off"; -VAL_ 972 TjaHandsOnCnfdnc_B_Est 1 "High_Confidence" 0 "Low_Confidence"; -VAL_ 972 LaHandsOff_B_Actl 1 "Hands_Off" 0 "Hands_On"; -VAL_ 972 LaActDeny_B_Actl 1 "LA_Denied" 0 "LA_Not_Denied"; -VAL_ 972 LaActAvail_D_Actl 3 "LKA_LCA_LDW_Avail" 2 "LCA_LKA_Avail_LDW_Suppress" 1 "LCA_LKA_Suppress_LDW_Avail" 0 "LCA_LKA_LDW_Suppress"; -VAL_ 130 TrlrHitchLamp_D_Rqst 1 "On" 0 "Off"; -VAL_ 130 VehVTrlrAid_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 130 DrvSteActv_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 130 DrvSte_Tq_Actl 255 "Invalid" 254 "Unknown"; -VAL_ 130 SteMdule_D_Stat 7 "NotUsed" 6 "EPAS_Failure3" 5 "EPAS_Failure2" 4 "System_Failure" 3 "EPAS_Shutdown" 2 "Normal_Op_Full_Assist" 1 "Normal_Op_Limited_Assist" 0 "EPAS_Initialization"; -VAL_ 130 SteMdule_U_Meas 255 "Invalid"; -VAL_ 130 SteMdule_I_Est 4095 "Invalid"; -VAL_ 130 EPAS_Failure 3 "SERVICE_POWER_STEERING_NOW" 2 "SERVICE_POWER_STEERING" 1 "POWER_STRG_ASSIST_FAULT" 0 "EPAS_OK_NO_MESSAGE"; -VAL_ 130 SteeringColumnTorque 255 "Invalid" 254 "Unknown"; -VAL_ 130 SAPPAngleControlStat6 1 "RequestedAngleNotReached" 0 "RequestedAngleCanBeReached"; -VAL_ 130 SAPPAngleControlStat5 1 "StrgColTorqueExceed_EAROn" 0 "ExternalSigContentOKforEAC"; -VAL_ 130 SAPPAngleControlStat4 1 "SpeedLimitExceededEAROn" 0 "ExternalSigContentOKforEAC"; -VAL_ 130 SAPPAngleControlStat3 1 "EARactiveNoReverseEngage" 0 "ExternalSigContentOKforEAC"; -VAL_ 130 SAPPAngleControlStat2 1 "Rel_ExtSteeringAngleReqx" 0 "NoRel_ExtSteeringAngleReqx"; -VAL_ 130 SAPPAngleControlStat1 3 "Fault" 2 "Active" 1 "Open" 0 "Closed"; -VAL_ 126 StePw_B_Rq 1 "Yes" 0 "No"; -VAL_ 126 StePinRelInit_An_Sns 65535 "Faulty" 65534 "NoDataExists"; -VAL_ 126 StePinCompAnEst_D_Qf 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 133 StePw_B_Rq 1 "Yes" 0 "No"; -VAL_ 133 StePinRelInit_An_Sns 65535 "Faulty" 65534 "NoDataExists"; -VAL_ 133 StePinCompAnEst_D_Qf 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 1200 BrkHold_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "HeldSecondary" 3 "HeldSecure" 2 "Held" 1 "Inactive" 0 "Off"; -VAL_ 1200 HsaTrnAout_Tq_Rq 65535 "Fault" 65534 "Unknown"; -VAL_ 1200 BrkBstrVac_P_Actl 127 "Invalid"; -VAL_ 1200 YawStabilityIndex 511 "Fault" 510 "NoDataExists"; -VAL_ 1200 BrkTot_Tq_RqDrv 8191 "Fault"; -VAL_ 1200 HsaStat_D_Dsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "NotAvailable" 3 "SlowReleaseWithChime" 2 "SlowReleaseWithoutChime" 1 "Active" 0 "Inactive"; -VAL_ 1102 SelDrvMdePos12_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos11_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos10_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos09_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos08_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos07_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos06_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos05_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos04_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos03_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos02_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1102 SelDrvMdePos01_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1056 AutoEpbMsgTxt_D_Rq 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1056 AutoEpbDsply_D_Stat 1 "Available" 0 "NotAvailable"; -VAL_ 1056 AutoEpbButtnOn_B_Stat 1 "On" 0 "Off"; -VAL_ 1056 SelDrvMdePos12_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos11_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos10_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos09_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos08_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos07_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos06_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos05_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos04_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos03_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos02_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 SelDrvMdePos01_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 1056 ActvDrvMde_D2_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1056 SelDrvMde_D2_Rq 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; -VAL_ 1056 SelDrvMdePt_D_Rq 31 "Faulty" 30 "NotUsed15" 29 "NotUsed14" 28 "NotUsed13" 27 "NotUsed12" 26 "NotUsed11" 25 "NotUsed10" 24 "NotUsed9" 23 "NotUsed8" 22 "NotUsed7" 21 "NotUsed6" 20 "NotUsed5" 19 "NotUsed4" 18 "EvLaterChargerMode" 17 "EvNowMode" 16 "DragMode" 15 "HighSpeedDesertMode_Baja" 14 "SportAdaptiveMode" 13 "NotAvailable_13" 12 "NotAvailable_12" 11 "NotAvailable_11" 10 "NotAvailable_10" 9 "RockCrawlMode" 8 "MudRutsMode" 7 "SandMode" 6 "EconomyMode" 5 "GrassGravelSnow" 4 "NotAvailable_04" 3 "TowHaulMode" 2 "NotAvailable_02" 1 "SportMode" 0 "NormalMode"; -VAL_ 1056 SelDrvMdeMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1056 SelDrvMde_D_Stat 3 "NotUsed" 2 "DriveModeChangeRequest" 1 "DriveModeChangeSelection" 0 "NoDriveModeChangeRequest"; -VAL_ 1056 AwdMde_D_RqBrk 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; -VAL_ 1054 AirDamUp_B_RqBrk 1 "Up" 0 "NoRequest"; -VAL_ 1054 RbaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; -VAL_ 1054 SelDrvMdeChassis2_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "RoughRoadMode" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; -VAL_ 1054 TrailCtl_D_Stat 7 "Faulty" 6 "DescentOnly" 5 "EnabledDeny" 4 "StandbyOverThreshold" 3 "StandbyOverride" 2 "Active" 1 "EnabledDescent" 0 "Off"; -VAL_ 1054 TrailCtlMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1054 BrkBstrVac_D_Stat 3 "NotUsed" 2 "BoosterVacEstimator" 1 "BoosterVacSensor" 0 "NoBoosterVacuumMonitor"; -VAL_ 1054 DrvSlipCtlOffLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 1054 DrvSlipCtlMdeMsg_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1054 AutoHoldMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1054 CtaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; -VAL_ 1054 SelDrvMdeAwd_D_Rq 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; -VAL_ 1054 AutoHoldSwMde_B_Ind 1 "On" 0 "Off"; -VAL_ 1054 AutoHoldMde_D_Ind 3 "Indication_3" 2 "Indication_2" 1 "Indication_1" 0 "Off"; -VAL_ 1054 SelDrvMdeChassis_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "NotUsed1" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; -VAL_ 1054 ApaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; -VAL_ 1046 HsaMde_D_Mem 3 "Undefined" 2 "Manual" 1 "Automatic" 0 "Off"; -VAL_ 1046 BrkBstrVac_B_Rq 1 "Yes" 0 "No"; -VAL_ 1046 HdcMde_D_Actl 7 "Fault" 6 "Temporarily_Unavailable" 5 "NotEnabled_WrongGearSel" 4 "NotEnabled_SpdLimitExceed" 3 "Active_Braking" 2 "Not_Active_Braking" 1 "Off" 0 "Undefined"; -VAL_ 1046 RearDiffLck_Tq2_RqMx 4095 "Faulty"; -VAL_ 1046 TRLR_SWAY_EVNT_IN_PROG 1 "Yes" 0 "No"; -VAL_ 1046 TRLR_SWAY_CONFIG_STAT 1 "On" 0 "Off"; -VAL_ 1046 TCMode 1 "Active" 0 "Inactive"; -VAL_ 1046 DrvSlipCtlLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 1046 Abs_B_Falt 1 "Yes" 0 "No"; -VAL_ 1046 DrvSlipCtlMde_D_Ind 3 "App_Specific_Off_Mode_3" 2 "App_Specific_Off_Mode_2" 1 "App_Specific_Off_Mode_1" 0 "Default_Mode"; -VAL_ 1046 DrvAntiLckLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 1046 StabCtlBrk_B_Avail 1 "Yes" 0 "No"; -VAL_ 1046 DrvHdcWarnInfo_D_Rq 3 "Undefined" 2 "Lamp_On_Continuously" 1 "Lamp_Flashing" 0 "Lamp_Off_Continuously"; -VAL_ 1046 DrvHdcMsg_D_Rq 7 "Undefined" 6 "Speed_too_High" 5 "Temporarily_Unavailable" 4 "System_Fault" 3 "Select_Gear" 2 "Off" 1 "On" 0 "No_Message"; -VAL_ 1046 DrvHdcLampInfo_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 1046 BpedMove_D_Actl 3 "Unknown" 2 "DriverApplyingBrakePedal" 1 "NoAutonomousBrkPdlMovement" 0 "AutonomousBrkPedalMove"; -VAL_ 1046 ChimeBrk_B_Rq 1 "Yes" 0 "No"; -VAL_ 1046 BrkLamp_B_Rq 1 "Yes" 0 "No"; -VAL_ 1046 HILL_DESC_MC 7 "Fault_Detected" 6 "Cooling_Down" 5 "Abort_Apply_Brakes" 4 "Active" 3 "Disabled" 2 "Enabled" 1 "Off_Road" 0 "Normal"; -VAL_ 1046 RearDiffElckrOpen_B_Rq 1 "Yes" 0 "No"; -VAL_ 1045 VehStab_D_Stat 15 "Faulty" 14 "No_Data_Exists" 13 "NotUsed6" 12 "NotUsed5" 11 "NotUsed4" 10 "NotUsed3" 9 "NotUsed2" 8 "NotUsed1" 7 "High_SSRA_no_OS" 6 "Straight" 5 "Post_Oversteer" 4 "Post_Transition" 3 "Countersteer" 2 "Understeer" 1 "Oversteer" 0 "Linear"; -VAL_ 1045 BrkFluidLvl_D_Stat 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; -VAL_ 1045 LsmcBrkDecel_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Denied" 3 "FaultDegraded" 2 "FaultExt" 1 "On" 0 "Off"; -VAL_ 1045 VehYawNonLin_W_Rq 4095 "Fault" 4094 "Unknown"; -VAL_ 1045 VehYawLin_W_Rq 4095 "Fault" 4094 "Unknown"; -VAL_ 1045 VehVActlBrk_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 1044 StePinOffst_An_Est 65535 "Faulty" 65534 "NoDataExists"; -VAL_ 1044 StePinOffst_D_Stat 3 "FineOffset" 2 "CoarseOffset" 1 "StoredOffset" 0 "OffsetNotCalculated"; -VAL_ 1042 VehRol_An_Dsply 127 "Faulty" 126 "NoDataExists"; -VAL_ 1042 VehPtch_An_Dsply 127 "Faulty" 126 "NoDataExists"; -VAL_ 535 WhlRr_W_Meas 32767 "Fault" 32766 "Unknown"; -VAL_ 535 WhlRl_W_Meas 32767 "Fault" 32766 "Unknown"; -VAL_ 535 WhlFr_W_Meas 32767 "Fault" 32766 "Unknown"; -VAL_ 535 WhlFl_W_Meas 32767 "Fault" 32766 "Unknown"; -VAL_ 534 WhlDirRr_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; -VAL_ 534 WhlDirRl_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; -VAL_ 534 WhlDirFr_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; -VAL_ 534 WhlDirFl_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; -VAL_ 532 RgenTqFalt_B_Actl 1 "Fault" 0 "No_Fault"; -VAL_ 532 RgenBrkDynoMde_B_Actl 1 "TwoWheelDyno" 0 "NormalOperation"; -VAL_ 531 VehStop_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Yes" 0 "No"; -VAL_ 531 TracCtlPtActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 531 LscmbbMntr_B_Err 1 "DisplayMessage" 0 "NoMessage"; -VAL_ 531 LscmbbBrkDis_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 LscmbbDeny_B_ActlBrk 1 "Yes" 0 "No"; -VAL_ 531 PrkBrkYwLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 531 PrkBrkRedLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; -VAL_ 531 LscmbbBrkDecel_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AbsActv_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 StabCtlBrkActv_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 CmbbBrkPrchg_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 CmbbBrkDecel_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 CmbbBaSensInc_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AccBrkWarm_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AccBrkTotTqMn_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AccBrkPrchgActv_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AccBrkDis_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AccBrkDeny_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 AccBrkActv_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 PrplDrgCtlActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 531 LscmbbBaSensInc_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 CmbbBrkDis_B_Actl 1 "Yes" 0 "No"; -VAL_ 531 CmbbDeny_B_ActlBrk 1 "Yes" 0 "No"; -VAL_ 531 CcDis_B_Cmd 1 "Yes" 0 "No"; -VAL_ 531 VehLongOvrGnd_A_Est 1023 "Fault" 1022 "Unknown"; -VAL_ 531 LscmbBrkPrchg_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 531 AccStopActv_B_ActlBrk 1 "Yes" 0 "No"; -VAL_ 531 AccDis_B_ActlEpb 1 "Yes" 0 "No"; -VAL_ 531 PrkBrkMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "No_Message"; -VAL_ 531 PrkBrkStatus 7 "GeneralFault_MaintenceMode" 6 "ECD_by_Brake_ECU_Active" 5 "EPB_Limphome_Active" 4 "Rear_Caliper_Open" 3 "RWU_By_EPB_Active" 2 "Rear_Caliper_Transition" 1 "Rear_Caliper_Closed" 0 "Not_Supported"; -VAL_ 136 SteWhlBrkOffst_An_Rq 32767 "Faulty" 32766 "NoDataExists"; -VAL_ 125 VehRolComp_W_Actl 4094 "NoDataExists" 4095 "Fault"; -VAL_ 125 VehVertComp_A_Actl 1022 "NoDataExists" 1023 "Fault"; -VAL_ 125 BrkTot_Tq_RqArb 8191 "Fault" 8190 "Unknown"; -VAL_ 125 BrkTot_Tq_Actl 8191 "Fault" 8190 "Unknown"; -VAL_ 125 HsaStat_D_Actl 7 "Faulty" 6 "FaultyWithDriverIndication" 5 "SlowRelease" 4 "FastRelease" 3 "ActiveBrakePedalReleased" 2 "ActiveBrakePedalPressed" 1 "FindingGradient" 0 "Inactive"; -VAL_ 119 VehTrvlDir_D_Stat 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "Reverse" 2 "LikelyReverse" 1 "Forward" 0 "LikelyForward"; -VAL_ 119 VehOverGnd_V_Est 65535 "Invalid" 65534 "Unknown"; -VAL_ 119 VehLongComp_A_Actl 1023 "Fault" 1022 "NoDataExists"; -VAL_ 119 VehLatComp_A_Actl 1023 "Fault" 1022 "NoDataExists"; -VAL_ 119 VehYawComp_W_Actl 4095 "Fault" 4094 "NoDataExists"; -VAL_ 118 BrkCtrFnd_B_Stat 1 "Yes" 0 "No"; -VAL_ 118 DrvSte_D_Stat 15 "NotUsed10" 14 "NotUsed9" 13 "NotUsed8" 12 "NotUsed7" 11 "NotUsed6" 10 "NotUsed5" 9 "NotUsed4" 8 "NotUsed3" 7 "NotUsed2" 6 "NotUsed1" 5 "Request_Active" 4 "Ignition_Off" 3 "DSR_in_Normal_Idle_Mode" 2 "EPAS_Comm_Disturbed" 1 "DSR_Request_Not_Applicable" 0 "DSR_Deactivated"; -VAL_ 118 DrvSte_Tq_Rq 255 "Invalid" 254 "Unknown"; -VAL_ 118 EmgcyBrkLamp_D_Rq 3 "NotUsed" 2 "Active_at_standstill" 1 "Active_at_speed" 0 "Inactive"; -VAL_ 118 StopLamp_B_RqBrk 1 "Active" 0 "Inactive"; -VAL_ 73 immoSubTarget1Cmd_T1 7 "Unused3" 6 "Unused2" 5 "ECHO_TARGET1_IDBLOCK2" 4 "Unused1" 3 "RQST_TARGET1_IDBLOCK2" 2 "RQST_TARGET1_IDBLOCK1" 1 "RESPONSE" 0 "IDLE"; -VAL_ 561 TrnMsgTxt2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "TransTooHot_LoudChime" 3 "PressBrake_LoudChime" 2 "PressBrake_SoftChime" 1 "PressBrake_NoChime" 0 "NoText_NoChime"; -VAL_ 561 TrnMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; -VAL_ 330 TrnAout_W_ActlUnfilt 32767 "Fault" 32766 "Unknown"; -VAL_ 1090 Mtr2State_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_1" 4 "ReadinessState" 3 "DeactivationState" 2 "PowerGeneration" 1 "PowerConsumption" 0 "Null"; -VAL_ 1090 Inv1Ain_I_ActlMntr 32767 "Faulty" 32766 "NoDataExists"; -VAL_ 1090 HybVehMde_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Fuel" 2 "HybridElectric" 1 "AllElectric" 0 "Null"; -VAL_ 1090 ChrgStat_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed" 4 "ChargingCompleted" 3 "NotCharging" 2 "ChargingInDrivingState" 1 "ChargingInParkingState" 0 "Null"; -VAL_ 1090 VehElRnge_L_Dsply 4094 "NoDataExists" 4095 "Fault"; -VAL_ 870 EngMdeMsgTxt_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Charge" 3 "GlowingCharge" 2 "Hybrid" 1 "Ev" 0 "NoMessage"; -VAL_ 870 RngPerChrgInst_L_Dsply 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 869 PwrFlowTxt_D_Dsply 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "Disply_Rgen_Chrg_Txt" 10 "Disp_Fast_Charge_Txt" 9 "Disp_Fast_Charge_Cmplt_Txt" 8 "Disp_Charge_Cmplt_Txt" 7 "Disp_Remote_Start_Txt" 6 "Disp_Eng_Drv_Txt" 5 "Disp_Elec_Drv_Txt" 4 "Disp_Idle_with_Chrg_Txt" 3 "Disp_Idle_Txt" 2 "Disp_Charg_HV_Batt_Txt" 1 "Disp_Hyb_Drive_Txt" 0 "No_Text"; -VAL_ 869 EngOnMsg2_D_Dsply 14 "_0xE_to_1F_NotUsed" 12 "Battery_Temperature" 11 "Hill_Decent_Control" 10 "Fuel_Maintenance" 9 "Oil_Maintenance" 8 "Normal_Operation" 7 "Low_Gear" 6 "Batt_Charging" 5 "Engine_Cold" 4 "Neutral_Gear" 3 "Heater_Setting" 2 "High_Speed" 1 "Acceleration" 0 "No_Display" 13 "Drive_Mode_Selection"; -VAL_ 869 EngOnMsg1_D_Dsply 14 "_0xE_to_1F_NotUsed" 12 "Battery_Temperature" 11 "Hill_Decent_Control" 10 "Fuel_Maintenance" 9 "Oil_Maintenance" 8 "Normal_Operation" 7 "Low_Gear" 6 "Batt_Charging" 5 "Engine_Cold" 4 "Neutral_Gear" 3 "Heater_Setting" 2 "High_Speed" 1 "Acceleration" 0 "No_Display" 13 "Drive_Mode_Selection"; -VAL_ 869 FuelMaintMde_D_Dsply 3 "Feature_Not_Present" 2 "In_Fuel_Maint_Mode" 1 "Close_to_Fuel_Maint" 0 "OK"; -VAL_ 869 EngActv_B_Dsply 1 "On" 0 "Off"; -VAL_ 869 EffWhlThresOn_B_Dsply 1 "On" 0 "Off"; -VAL_ 606 ElVehLaterMde_D_Stat 3 "NotUsed" 2 "Available" 1 "NotAvailable" 0 "Null"; -VAL_ 606 ElVehNowMde_D_Stat 3 "NotUsed" 2 "Available" 1 "NotAvailable" 0 "Null"; -VAL_ 374 GearEngag_D_Actl 7 "Undefined" 6 "Fwd_Clutch_Fully_Engaged" 5 "Neutral_Idle" 4 "Disengaged_to_Neutral_Idle" 3 "Disengaged_to_Neutral_Park" 2 "Engagement_in_Progress" 1 "InitializeFwdClutchEngagmt" 0 "Park_Neutral"; -VAL_ 374 TrnRng_D_Rq 15 "Fault" 14 "Unknown_Position" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Range6" 10 "Range5" 9 "Range4" 8 "Range3_M3_L3" 7 "Range2_M2_L2" 6 "Range1_M1_L1" 5 "Low" 4 "Sport_DriveSport_Mposition" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_ 374 TrnPrkSys_D_Actl 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "FrequencyError" 8 "OutOfRangeHigh" 7 "OutOfRangeLow" 6 "Override" 5 "OutOfPark" 4 "TransitionCloseToOutOfPark" 3 "AtNoSpring" 2 "TransitionCloseToPark" 1 "Park" 0 "NotKnown"; -VAL_ 374 GearLvr_D_ActlDrv 15 "Fault" 14 "Unknown_Position" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Range6" 10 "Range5" 9 "Range4" 8 "Range3_M3_L3" 7 "Range2_M2_L2" 6 "Range1_M1_L1" 5 "Low" 4 "Sport_DriveSport_Mposition" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_ 374 GearPos_D_Trg 15 "Unknown" 14 "Reverse" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Tenth" 9 "Ninth" 8 "Eighth" 7 "Seventh" 6 "Sixth" 5 "Fifth" 4 "Fourth" 3 "Third" 2 "Second" 1 "First" 0 "Neutral"; -VAL_ 374 GearPos_D_Actl 15 "Unknown" 14 "Reverse" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Tenth" 9 "Ninth" 8 "Eighth" 7 "Seventh" 6 "Sixth" 5 "Fifth" 4 "Fourth" 3 "Third" 2 "Second" 1 "First" 0 "Neutral"; -VAL_ 603 WhlDirAvgDrv_D_Actl 3 "Failed" 2 "Unknown" 1 "Backward" 0 "Forward"; -VAL_ 603 PrplTqMnRgen_B_Actl 1 "Yes" 0 "No"; -VAL_ 603 BattTracCnnct_D_Rq 3 "Undefined" 2 "Retain" 1 "Close" 0 "Open"; -VAL_ 602 HtrnWarnLamp_B_Dsply 1 "On" 0 "Off"; -VAL_ 602 HybPwLimOn_B_Stat 1 "Yes" 0 "No"; -VAL_ 602 PwPckTqRdy_B_Dsply 1 "On" 0 "Off"; -VAL_ 1152 BattTracDiagClr_B_Stat 1 "On" 0 "Off"; -VAL_ 1152 EngTeHi_B_Actl 1 "EngineTempHigh" 0 "Normal"; -VAL_ 1152 DcdcOn_B_Rq 1 "On" 0 "Off"; -VAL_ 1152 ULoBattSpprtSustn_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 1152 VehElEff_No_Avg 127 "Faulty" 126 "NoDataExists"; -VAL_ 872 PlgActvArb_B_Dsply 1 "On" 0 "Off"; -VAL_ 872 HybMdeStat_D_Dsply 7 "NotUsed2" 6 "EV_Charge" 5 "EV_Override" 4 "Forced_EV_Mode" 3 "Forced_Charge_Sustain_Mode" 2 "Auto_Charge_Sustain_Mode" 1 "Auto_Charge_Deplete_Mode" 0 "Null_State"; -VAL_ 560 SelDrvMdeSwtch_D_Stat3 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; -VAL_ 560 TrnSrvcRqd_B_Rq 1 "On" 0 "Off"; -VAL_ 560 TrnShifActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 560 GearLvrPos_D_Actl 15 "Fault" 14 "Unknown_Position" 13 "Undefined_Treat_as__Fault" 12 "Undefined_Treat_as_Fault" 11 "sixth" 10 "fifth" 9 "fourth" 8 "third" 7 "second" 6 "first" 5 "Low" 4 "Sport_DriveSport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_ 560 GboxOil_Te_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 369 SeatWorkSrfc_B_Falt 1 "Active" 0 "Inactive"; -VAL_ 369 TrnIpcDsplyRng2_D_Actl 15 "No_Range_Selected" 14 "Range_14" 13 "Range_13" 12 "Range_12" 11 "Range_11" 10 "Range_10" 9 "Range_9" 8 "Range_8" 7 "Range_7" 6 "Range_6" 5 "Range_5" 4 "Range_4" 3 "Range_3" 2 "Range_2" 1 "Range_1" 0 "NotUsed"; -VAL_ 369 TrnIpcDsplyRng_D_Stat 3 "NotUsed" 2 "Flash" 1 "On" 0 "Blank_No_Display"; -VAL_ 369 TrnIpcDsplyGear_D_Actl 15 "No_Gear_Selected" 14 "_14th_Gear" 13 "_13th_Gear" 12 "_12th_Gear" 11 "_11th_Gear" 10 "_10th_Gear" 9 "_9th_Gear" 8 "_8th_Gear" 7 "_7th_Gear" 6 "_6th_Gear" 5 "_5th_Gear" 4 "_4th_Gear" 3 "_3rd_Gear" 2 "_2nd_Gear" 1 "_1st_Gear" 0 "Neutral"; -VAL_ 369 TrnIpcDsplyMde_D_Stat 3 "Reserved_Blank_No_Display" 2 "Flash" 1 "On" 0 "Blank_No_Display"; -VAL_ 369 TrnIpcDsplyMde_D_Actl 7 "Manual_3" 6 "Manual_2" 5 "Manual_1_Low" 4 "Sport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_ 369 TrnIpcDsplyGear_D_Stat 3 "Reserved_Blank_No_Display" 2 "Flash" 1 "On" 0 "Blank_No_Display"; -VAL_ 92 TrnLvrV_D_Rq 3 "Full_Speed" 2 "Aggressive" 1 "Normal" 0 "Quiet"; -VAL_ 92 TrnSbwSysHlth_D_Actl 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 92 TrnGearNtmAllow_B_Stat 1 "Yes" 0 "No"; -VAL_ 92 TrnDtpCmd_D_Actl 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "Relatch" 3 "Deploy" 2 "Self_Test" 1 "No_Command" 0 "NotUsed1"; -VAL_ 92 GearSelLck_D_Rq 3 "PreventionBlocker" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_ 92 TrnValidGear_D_Cnfm 3 "Accept" 2 "Reject" 1 "Internal_Request" 0 "No_Command"; -VAL_ 92 TrnNtrlTowCmd_D_Actl 3 "NotUsed" 2 "Neutral_Tow_Entry" 1 "Car_Wash_Mode" 0 "Normal_Mode"; -VAL_ 92 TrnGearCmd_Pc_ActlPt 1023 "Fault"; -VAL_ 92 TrnGear_D_RqPt 7 "Fault" 6 "NotUsed" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "No_Gear"; -VAL_ 92 TrnCmdState_B_Actl 1 "Yes" 0 "No"; -VAL_ 92 PrkBrkActv_D_RqTrnGear 3 "NotUsed2" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "NotUsed1"; -VAL_ 92 TrnGearMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; -VAL_ 1087 BattRgenLoChrg_D_RqEng 3 "Disable" 2 "Retain" 1 "Closed" 0 "Open"; -VAL_ 1087 AdasLcObtclAbrt_B_Stat 1 "Yes" 0 "No"; -VAL_ 1087 BattRgenLoDChrg_D_RqEng 3 "Disable" 2 "Retain" 1 "Closed" 0 "Open"; -VAL_ 1087 AirDamPos_D_Stat 3 "Faulty" 2 "NotUsed" 1 "Down" 0 "Up"; -VAL_ 1087 FapLcInhbt_B_Rq 1 "Yes" 0 "No"; -VAL_ 1087 FapLcStopHold_B_Rq 1 "Yes" 0 "No"; -VAL_ 1087 FapLcPrchgBrk_B_Rq 1 "Yes" 0 "No"; -VAL_ 1087 FapLcObstcl_B_Stat 1 "Yes" 0 "No"; -VAL_ 1087 FapLcMaxGrdInhbt_B_Stat 1 "Yes" 0 "No"; -VAL_ 1087 FapLcMaxGrdAbrt_B_Stat 1 "Yes" 0 "No"; -VAL_ 1087 FapLcActv_B_Stat 1 "Yes" 0 "No"; -VAL_ 332 UreaLvlQlty_D_RqDsply 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "FlashChime" 1 "On" 0 "Off"; -VAL_ 332 UreaLvlTxtWarn_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "System_Error" 10 "Engine_Idled_See_Manual" 9 "Engine_Idled_Upon_Refuel" 8 "Speed_Limited_To_XX_mph" 7 "XXmph_Max_Upon_Restart" 6 "Speed_Limited_To_YY_mph" 5 "YYmph_Max_Upon_Restart" 4 "SpdLimtd_YYmph_In_XXmiles" 3 "ExFlRange_XXMiles_ScndWarn" 2 "Exh_Fluid_Range_XX_Miles" 1 "Exh_Fluid_Under_Half_Full" 0 "Exh_Fluid_Over_Half_Full"; -VAL_ 332 UreaQltySysWarn_D_Rq 7 "Undefined" 6 "ZZ_Overrides" 5 "EngineIdled" 4 "Engine_Idle_Upon_Refuel" 3 "SPEED_LIMITED_to_YY_mph" 2 "YY_MPH_MAX_UPON_Restart" 1 "CONTAMINATED_ExhFluid" 0 "NoQualityProblem"; -VAL_ 332 DieslPrtcWarn_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_OverLoaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_OverLimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_OverLoaded" 0 "DPF_Normal_Operation"; -VAL_ 332 UreaQltyFlg_B_RqDsply 1 "True" 0 "False"; -VAL_ 332 UreaQltySys_D_RqDsply 7 "Undefined" 6 "ZZ_Overrides" 5 "EngineIdled" 4 "Engine_Idle_Upon_Refuel" 3 "SPEED_LIMITED_to_YY_mph" 2 "YY_MPH_MAX_UPON_Restart" 1 "CONTAMINATED_ExhFluid" 0 "NoQualityProblem"; -VAL_ 332 UreaLvlTxt_D_RqDsply 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "System_Error" 10 "Engine_Idled_See_Manual" 9 "Engine_Idled_Upon_Refuel" 8 "Speed_Limited_To_XX_mph" 7 "XXmph_Max_Upon_Restart" 6 "Speed_Limited_To_YY_mph" 5 "YYmph_Max_Upon_Restart" 4 "SpdLimtd_YYmph_In_XXmiles" 3 "ExFlRange_XXMiles_ScndWarn" 2 "Exh_Fluid_Range_XX_Miles" 1 "Exh_Fluid_Under_Half_Full" 0 "Exh_Fluid_Over_Half_Full"; -VAL_ 1100 EngExhMdeQuiet_D2_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; -VAL_ 1100 HvacCmprLim_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "CompressorHeadPressure" 4 "AvailableTorque" 3 "PedalPosition" 2 "RPM" 1 "ECT" 0 "NoLimit"; -VAL_ 1100 WakeAlarm1_B_Typ 1 "CanAndEcuDriveCircuit" 0 "CanOnly"; -VAL_ 1100 Veh_V_DsplyTrailCtlSet 63 "Faulty"; -VAL_ 1100 TrailCtlPt_B_Falt 1 "Fault" 0 "No_Fault"; -VAL_ 1100 AutoTowAllw_D_StatMnu 3 "TowHaulCommandedOn" 2 "AutoTowHaulEnabled" 1 "AutoTowHaulDisabled" 0 "NoSelection"; -VAL_ 1100 AutoTowActv_B_Stat 1 "Yes" 0 "No"; -VAL_ 1100 GrossTrainWeight_M_Est 255 "Faulty" 254 "NoDataExists"; -VAL_ 1098 EdmSailMdeOn_B_Stat 1 "On" 0 "Off"; -VAL_ 1098 EdmMsgTxt_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OverallGoodScore" 10 "WorkOnCompliance" 9 "GoodCompliance" 8 "WorkOnGearShifting" 7 "GoodGearShifting" 6 "WorkOnEfficientSpeed" 5 "GoodEfficientSpeed" 4 "WorkOnDeceleration" 3 "GoodDeceleration" 2 "WorkOnAcceleration" 1 "GoodAcceleration" 0 "NoMessage"; -VAL_ 1098 EdmLamp_D_Dsply 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "NotUsed_1" 8 "CoastingEngineBrake" 7 "CoastingShiftToNeutral" 6 "FreewayJunction" 5 "Curve2" 4 "Curve1" 3 "SpeedLimit" 2 "Crossing" 1 "FreewayExit" 0 "NoRecommendation"; -VAL_ 1098 EdmCmplnc_B_Dsply 1 "Yes" 0 "No"; -VAL_ 1086 FuelPumpPwr_B_Rq 1 "On" 0 "Off"; -VAL_ 1086 ElLoadCtl_D_Rq 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "HoldAllDrvrInvisibleLoads" 3 "StdDriverInvisibleLoadsOn" 2 "AllDriverInvisibleLoadsOn" 1 "All_Possible_Loads_Off" 0 "No_Request"; -VAL_ 1071 CluPdlPosPcMeas_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 1069 SlMde_D_Stat 3 "IsaNotConfigured" 2 "Manual_Mode" 1 "Auto_Mode" 0 "Null"; -VAL_ 1069 SlMde_D_RqDsply 3 "NotUsed" 2 "ManualSpeed_LimiterSymbol" 1 "AutoSpeed_LimiterSymbol" 0 "NoSpeed_LimiterSymbol"; -VAL_ 1069 IsaOffst_D_Stat 15 "Faulty" 14 "Null" 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero"; -VAL_ 1069 GrllShtrPos_D_Cmd 15 "Fully_Open" 14 "Position14" 13 "Position13" 12 "Position12" 11 "Position11" 10 "Position10" 9 "Position9" 8 "Position8" 7 "Position7" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Fully_Closed"; -VAL_ 1069 GrllShtrPos_B_Falt 1 "Fault" 0 "No_Fault"; -VAL_ 1069 ObdWarmUp_B_Complt 1 "Yes" 0 "No"; -VAL_ 1069 EngMsgTxt_D_Rq 3 "Undefined_2" 2 "Undefined_1" 1 "Power_Reduced_to_LowerTemp" 0 "No_Message"; -VAL_ 1069 EngAirIn_Te_Actl 1023 "Fault" 1022 "Unknown"; -VAL_ 1060 RearDiffOilTeWarn_B_Rq 1 "On" 0 "Off"; -VAL_ 1060 RearDiffOil_Te_Actl 511 "Faulty"; -VAL_ 1060 BpedDrvMsgTxt_B_Dsply 1 "On" 0 "Off"; -VAL_ 1060 FuelLvlWarn_D_ActlEng 7 "DteLevel5Lowest" 6 "DteLevel4" 5 "DteLevel3" 4 "DteLevel2NonMyKey" 3 "DteLevel1MyKey" 2 "VeryLow" 1 "Low" 0 "OK"; -VAL_ 1060 SelDrvMdePt_D_Stat 0 "NotAvailable" 1 "Available" 2 "TemporarilyNotAvailable" 3 "Faulty"; -VAL_ 1057 FohEng_D_Rq 3 "AutoEnable_ParkEnable" 2 "AutoDisable_ParkEnable" 1 "AutoEnable_ParkDisable" 0 "Disable_Stop"; -VAL_ 1057 EngIdlShutDwnTxt_D_Rq 3 "NotUsed" 2 "EngineShutdownOnPrevDrive" 1 "FeatureDisabledDueToFault" 0 "NoMessage"; -VAL_ 1057 EngIdlShutDown_D_Stat 3 "Not_used" 2 "Engine_Shutdown" 1 "Initiated_Countdown" 0 "Normal_Operation"; -VAL_ 1057 FUEL_ALCOHOL_PERCNT 255 "Invalid"; -VAL_ 1057 TrnTotTq_Rt_Est 65535 "Fault" 65534 "Unknown"; -VAL_ 1057 TrnTotLss_Tq_Est 255 "Fault" 254 "Unknown"; -VAL_ 1057 ECMMILRequest 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 1057 AirCondFluidHi_P_Actl 255 "Fault" 254 "Unknown"; -VAL_ 1057 OilPressureWarning 1 "Low_Pressure_Lamp_On" 0 "Normal_Pressure_Lamp_Off"; -VAL_ 1057 VehVLimStat_D_Actl 7 "Undefined_3" 6 "Undefined_2" 5 "Undefined_1" 4 "ASL_Fault_Condition" 3 "Active_and_Limiting" 2 "Active_but_Not_Limiting" 1 "Standby" 0 "Off"; -VAL_ 1057 VehVLimActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 1057 CoolantFanStepAct 31 "Unused7" 30 "Unused6" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 23 "Step23" 22 "Step22" 21 "Step21" 20 "Step20" 19 "Step19" 18 "Step18" 17 "Step17" 16 "Step16" 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 24 "Max_Fan_Speed_Req" 0 "Fan_Cmd_Off"; -VAL_ 1055 EcoCochInstNeg_B_Dsply 1 "True" 0 "False"; -VAL_ 562 GearNtrl_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Yes" 0 "No"; -VAL_ 523 EngAirFiltMsgTxt_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "EngineAirFilterMonitorFalt" 4 "ResetComplete" 3 "Clogged" 2 "ReplaceNow" 1 "ReplaceSoon" 0 "NoMessage"; -VAL_ 523 WaterInFuel_B_Falt 1 "Fault" 0 "No_Fault"; -VAL_ 523 UreaMnAdd_L2_Actl 255 "Faulty"; -VAL_ 523 UreaMxAdd_L2_Actl 511 "Faulty"; -VAL_ 517 FapLc_B_Err 1 "Yes" 0 "No"; -VAL_ 516 EngAoutNActl_D_QF 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 516 EngAout3_N_Actl 65535 "Invalid"; -VAL_ 516 ApedPos_PcRate_ActlArb 255 "Fault" 254 "Unknown"; -VAL_ 516 ApedPosPcActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 514 StrtrMtrDlyStrt_B_Stat 1 "Yes" 0 "No"; -VAL_ 514 VehVTrlrAid_B_Avail 1 "Yes" 0 "No"; -VAL_ 514 StrtrMtrCtlMsgTxt_D_Rq 7 "Start_In_Gear_Allowed" 6 "Pending_Start_Cancelled" 5 "Start_Pending_Please_Wait" 4 "Cranking_Limit_Exceeded" 3 "Press_Brk_and_Shift_to_P_N" 2 "Press_Clutch_and_Brake" 1 "Press_Clutch_To_Start" 0 "No_Display"; -VAL_ 514 VehVActlEng_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 514 GearRvrse_D_Actl 7 "Fault" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Active_confirmed" 2 "Active_not_confirmed" 1 "Inactive_confirmed" 0 "Inactive_not_confirmed"; -VAL_ 514 StrtrMtrCtlMsgTxt_D2_Rq 3 "NoRequestPcmStartingMsgCtl" 2 "ShiftToNeutralToStart" 1 "ShiftToParkToStart" 0 "NoRequestBcmStartingMsgCtl"; -VAL_ 512 PtDrvMde_D_Stat 15 "Faulty" 14 "NotUsed11" 13 "NotUsed10" 12 "NotUsed9" 11 "NotUsed8" 10 "NotUsed7" 9 "NotUsed6" 8 "NotUsed5" 7 "Drag" 6 "Rock" 5 "Baja" 4 "Sand" 3 "TowHaulGradeAssist" 2 "SnowWet" 1 "Sport" 0 "Normal"; -VAL_ 381 EngOilSrvcMsgTxt_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "ResetComplete" 3 "ResetInProgress" 2 "ChangeOilNow" 1 "ChangeOilSoon" 0 "NoText"; -VAL_ 381 RunDryPrevent_B_Stat 1 "True" 0 "False"; -VAL_ 381 WaterInFuel 1 "On" 0 "Off"; -VAL_ 381 GlowIndication 1 "On" 0 "Off"; -VAL_ 380 EngOilLvlWarn_D_Rq1 7 "Undefined_3" 6 "Undefined_2" 5 "Engine_Oil_Monitor_Fault" 3 "Engine_Oil_High" 2 "Engine_Oil_Critical_Low" 1 "Engine_Oil_Low" 0 "No_Message" 4 "Engine_Oil_Critical_High"; -VAL_ 380 EngExhBrkOnLamp_B_Rq 1 "On" 0 "Off"; -VAL_ 380 EngExhBrkAutoLamp_B_Rq 1 "On" 0 "Off"; -VAL_ 380 EngExhBrkMde_D_Actl 6 "ExhBrkDisable_NoError" 5 "ExhBrkActive_AUTO" 4 "ExhBrkActive_ON" 3 "ExhBrkRequest_AUTO" 2 "ExhBrkRequest_ON" 1 "ExhBrkNoRequest_OFF" 0 "ExhBrkUnavailable_Error"; -VAL_ 377 HvacAirFullOut_B_Rq 1 "Yes" 0 "No"; -VAL_ 377 FuelFillInlet_B_Dsply 1 "Yes" 0 "No"; -VAL_ 377 EngSrvcRqd_B_Rq 1 "Engine_Service_Required" 0 "No_engine_service_required"; -VAL_ 377 OdoCount 255 "Invalid"; -VAL_ 377 FuelFilterLamp_B_Dsply 1 "On" 0 "Off"; -VAL_ 377 AirCondRec_B_Rq 1 "Yes" 0 "No"; -VAL_ 377 AirCondClutch_B_Stats 1 "Yes" 0 "No"; -VAL_ 376 GasPrtc_D_RqDsply 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "GpfOverLimit" 1 "GpfAtLimit" 0 "NormalOperation"; -VAL_ 376 DynoMde_B_Cmd 1 "Two_Wheel_Dyno" 0 "Normal_Operation"; -VAL_ 376 AslIconDsply_D_Rq 3 "On_Passive_Overridden" 2 "On_Active" 1 "On_Passive" 0 "Off"; -VAL_ 376 AslChime_B_Rq 1 "Yes" 0 "No"; -VAL_ 376 HvacHtrCore2_Te_Actl 1023 "Faulty"; -VAL_ 376 EcssLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 376 AirAmbTe_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 376 AirAmb_P_Actl 63 "Fault" 62 "NoDataExists"; -VAL_ 373 DieslPrtc2_D_RqDsply 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_Overloaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_Overlimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_Overloaded" 0 "DPF_Normal_Operation"; -VAL_ 373 DieslPrtcRgen_D_Actl 3 "Undefined" 2 "Regen_Level_2" 1 "Regen_Level_1" 0 "No_regen"; -VAL_ 373 EngTeColdPrtct_D_Stats 3 "Engine_Warm_RdcPwr" 2 "OK_to_Drive" 1 "Engine_Warm_PlsWait" 0 "Normal_Operation"; -VAL_ 373 EngExhOvrTe_B_RqDsply 1 "Active" 0 "Inactive"; -VAL_ 359 PrplWhlRgenMn_Tq_Actl 8191 "Faulty"; -VAL_ 359 ElPw_D_StatStrtStop 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Supported_Level_4" 8 "Supported_Level_3" 7 "Supported_Level_2" 6 "Supported_Level_1" 5 "Limited_Support" 4 "Fault_Limited" 3 "LV_Event_in_Progress" 2 "Not_Supported_Imminent" 1 "Supported_All" 0 "Not_Supported"; -VAL_ 359 PrplWhlTot2_Tq_Actl 65535 "Fault" 65534 "NoDataExists"; -VAL_ 359 PwPckTq_D_Stat 3 "PwPckOn_TqAvailable" 2 "StartInPrgrss_TqNotAvail" 1 "PwPckOn_TqNotAvailable" 0 "PwPckOff_TqNotAvailable"; -VAL_ 359 Eng_D_Stat 3 "NotUsed" 2 "EngAutoStopped" 1 "EngOn" 0 "EngOff"; -VAL_ 359 PlgActvArb_B_Actl 1 "On" 0 "Off"; -VAL_ 359 ElPw_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Fault_Limited" 3 "LV_Event_In_Progress" 2 "Not_Supported_Imminent" 1 "Supported" 0 "Not_Supported"; -VAL_ 359 TrnAinTq_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 358 StopStrtStdby_D_Indic 6 "NotUsed2" 5 "Telltale_Struck_Out" 4 "Telltale_Flashing_Amber" 3 "Telltale_On_Amber" 2 "Telltale_Flashing_Green" 1 "Telltale_On_Green" 0 "Telltale_Off" 7 "NotUsed3"; -VAL_ 358 StopStrtIODTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 358 StopStrtDrvMde_D_Indic 3 "NotUsed" 2 "StartStop_IndirectDeselect" 1 "StopStart_Deselected" 0 "StopStart_Selected"; -VAL_ 358 StopStrtMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; -VAL_ 358 OdoTripVerify_L_Actl 16777215 "Fault"; -VAL_ 358 HiElPwInhbt_B_Stat 1 "Inhibit" 0 "No_Inibit"; -VAL_ 358 AutoStopPtDelta_I_Est 255 "Fault"; -VAL_ 357 BPedDrvAppl_D_QF 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 357 CmbbDeny_B_ActlPrpl 1 "Yes" 0 "No"; -VAL_ 357 PrplTqMnSat_B_Actl 1 "Yes" 0 "No"; -VAL_ 357 BpedDrvAppl_D_Actl 3 "_Not_Allowed" 2 "Driver_Braking" 1 "Driver_Not_Braking" 0 "Not_Allowed"; -VAL_ 357 CmbbEngTqMn_B_Actl 1 "Yes" 0 "No"; -VAL_ 357 Veh_V_DsplyCcSet 255 "Fault" 254 "Unknown"; -VAL_ 357 AccEngStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "ACCSoonCancel_due_Low_Spd" 4 "Shift_Down_Recommendation" 3 "Shift_Up_Recommendation" 2 "ACCNotAllowedToBeActivated" 1 "ACCStandby_due_Auto_Cancel" 0 "Normal_Operation"; -VAL_ 357 CcMde_D_Actl 7 "TapDownWaiting" 6 "TapUpWaiting" 5 "Resuming_Low" 4 "Resuming_High" 3 "Decelerating" 2 "Accelerating" 1 "Keeping_Speed" 0 "Not_Active"; -VAL_ 357 CcStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "Active" 4 "Active_Que_Assist" 3 "Standby" 2 "Standby_Denied" 1 "Denied" 0 "Off"; -VAL_ 357 CcOvrrdActv_B_Actl 1 "Cruise_Overridden" 0 "Cruise_Req_Not_Overridden"; -VAL_ 357 AccStopMde_D_Rq 3 "Stop_Mode_Active" 2 "EPBApplyOrBrakeReleaseWarn" 1 "Limit_Rolling_Speed" 0 "Stop_Mode_Not_Active"; -VAL_ 355 AutoRgenTxt_B_RqDsply 1 "AutExhFilterCleanOFF" 0 "AutExhFilterCleanON"; -VAL_ 355 AccFllwMdeActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 355 EngPtoMde_D_Actl 7 "Undefined" 6 "Split_Shaft_Stationary" 5 "Not_Used_2" 4 "PTO_Mobile" 3 "Not_Used_1" 2 "PTO_Stationary" 1 "BCP" 0 "Off"; -VAL_ 355 ManRgenTxt_D_RqDsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Cleaning_Aborted_Stopped" 3 "Cleaning_Completed" 2 "Cleaning_In_Progress" 1 "Cleaning_Allowed" 0 "Cleaning_Not_Allowed"; -VAL_ 355 ManRgenSoot_Pc_RqDsply 127 "Fault"; -VAL_ 355 DieslMsgTxt_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "ReducedEnginePower" 0 "NoMessage"; -VAL_ 342 EngOvrhtMitgActv_D_Ind 3 "Undefined" 2 "Mode2" 1 "Mode1" 0 "Normal_Mode"; -VAL_ 342 EngClntTe_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 342 EngOil_Te_Actl 255 "Fault" 254 "Unknown"; -VAL_ 71 immoTarget1Status 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "DISABLED_RESET " 2 "ENABLED_NONMOTIVE_START" 1 "ENABLED_MOTIVE_START" 0 "DISABLED"; -VAL_ 71 immoTarget1Cmd 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "TARGET1_IDBLOCK2" 2 "TARGET1_IDBLOCK1" 1 "CHALLENGE" 0 "IDLE"; -VAL_ 1006 PersIndexIpmb_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 820 AhbStatGfhbFdbk_D_Actl 3 "GfhbHighBeamFullyOn" 2 "GfhbHighBeamPartlyOn" 1 "GfhbHighBeamOff" 0 "GfhbUnavailable"; -VAL_ 820 HeadLghtDrvSide_B_Stat 1 "Left_Hand_Traffic" 0 "Right_Hand_Traffic"; -VAL_ 820 HeadLghtHiOn_B_StatHcm 1 "On" 0 "Off"; -VAL_ 820 Adaptive_Hdlmp_Fault 1 "Yes" 0 "No"; -VAL_ 137 SteWhlOffstRq_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Allow_External_Angle_Req" 0 "Deny_External_Angle_Req"; -VAL_ 137 SteWhlOffst_An_TotActl 32767 "Faulty" 32766 "NoDataExists"; -VAL_ 137 SteWhlBrkOffst_An_Actl 32767 "Faulty" 32766 "NoDataExists"; -VAL_ 129 SelDrvMdeSwtch_D_Stat4 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; -VAL_ 129 SteWhlSwtchView_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchSet_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchPhon_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchNav_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchMed_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchIod_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchHud_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchBack_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchMenu_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteEffortInc_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SelDrvMdeInc_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SelDrvMdeDec_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SuspDampInc_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchUp_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchRght_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchOk_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchLeft_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchDown_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchHome_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 129 SteWhlSwtchInfo_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 935 SodRight_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; -VAL_ 935 CtaAlrtRight2_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "AlertZone4" 3 "AlertZone3" 2 "AlertZone2" 1 "AlertZone1" 0 "Off"; -VAL_ 935 BttRight_D_Stat 7 "NotUsed" 6 "Disabled" 5 "Off" 4 "OffTemp" 3 "NotConnected" 2 "Pending" 1 "Connected" 0 "NotDetermined"; -VAL_ 935 BttRight_D_RqDrv 3 "NotUsed" 2 "Request" 1 "NoRequest" 0 "Null"; -VAL_ 935 CtaBrkRightMsgTxt_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 935 CtaRightBrkEnbl_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 935 CtaRightBrkDecel_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 935 CtaSnsRight_D_Stat 3 "Invalid" 2 "System_Failure" 1 "Blocked" 0 "Clear"; -VAL_ 935 CtaAlrtRight_D_Stat 1 "On" 0 "Off"; -VAL_ 935 CtaRight_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; -VAL_ 935 SodSnsRight_D_Stat 3 "Second_Warning_Audio" 2 "System_Failure" 1 "Blocked" 0 "Clear"; -VAL_ 935 SodAlrtRight_D_Stat 3 "Bulb_Proveout" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 935 SodDetctRight_D_Stat 4 "Sensor_Blocked" 3 "Sensor_Fault" 2 "Flash_On" 1 "Alert_On" 0 "AlertOff_FlashOff_SensrClr"; -VAL_ 1108 RCMSerialNoByte8 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte7 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte6 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte5 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte4 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte3 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte2 255 "Invalid" 254 "Unknown"; -VAL_ 1108 RCMSerialNoByte1 255 "Invalid" 254 "Unknown"; -VAL_ 261 ChrgStatDsply_D_Rq 3 "NotUsed_2" 2 "NotUsed_1" 1 "On" 0 "Off"; -VAL_ 261 NextUsageTimeToggle_Rq 0 "Inactive" 2 "Disable" 1 "Enable"; -VAL_ 261 LongTermParking_Rq 0 "Inactive" 1 "On" 2 "Off" 3 "NotUsed"; -VAL_ 261 ModemReset_D_Rq 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "BrandConnectReset2" 5 "BrandConnectReset1" 4 "CcsReset" 3 "OnlineTrafficReset" 2 "PaakReset" 1 "WifiHotspotReset" 0 "Null"; -VAL_ 261 StopStrtDrvMde_B_RqBtn3 1 "Pressed" 0 "Not_Pressed"; -VAL_ 261 TCU_ESN_D_Rq 3 "NotUsed" 2 "TCU_ESN_Request" 1 "NoRequest" 0 "Inactive"; -VAL_ 261 FactoryReset_Rq 1 "ResetFactoryDefaults" 0 "Inactive"; -VAL_ 1146 TrlrAidSwtch_D_RqDrv 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1146 TrlrAidCtl_U_RqDrv 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 533 DcacGfciTestBttn_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 533 DcacPwResetButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 533 DcacPwOffButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 533 DcacPwLoButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 533 DcacPwHiButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 533 DcacPwButtn_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 533 TrlrHitch_D_RqMnu 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "GoToTraileringDomain" 4 "Confirm" 3 "TurnOnTba" 2 "TurnOnAutohitch" 1 "CancelAutohitch" 0 "NoRequest"; -VAL_ 533 AutoEpbZoomView_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 533 AutoEpbButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 533 TrlrAidMde_D_Rq 3 "Mode_3" 2 "Mode_2" 1 "Mode_1" 0 "NoRequest"; -VAL_ 533 TCU_Init_Actvtn_St 3 "NotUsed" 2 "InitialActivateDeny" 1 "InitialActivateAccept" 0 "Invalid"; -VAL_ 533 TCU_Final_Actvtn_St 3 "NotUsed" 2 "FinalActivateDeny" 1 "FinalActivateAccept" 0 "Invalid"; -VAL_ 533 OtaTrg_D_Stat 3 "NotUsed_1" 2 "Accepted" 1 "NotAccepted" 0 "Null"; -VAL_ 533 OnbChrgGoTTouch_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 533 OnbChrgGoTPrcond_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 533 OnbChrgGoTOn_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 533 OnbChrgGoTMnte_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; -VAL_ 533 OnbChrgGoTHr_T_Rq 31 "Faulty" 30 "NoDataExists"; -VAL_ 533 OnbChrgGoTExtHtr_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 533 OnbChrgGoTDelete_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 533 OnbChrgClearAll_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 533 PaakMyKey_D_Rq 3 "NotUsed" 2 "ConfirmNewPaakMyKey" 1 "RequestNewPaakMyKey" 0 "None"; -VAL_ 533 OnbChrgGoTUpdate_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 1041 ElCmprUHi_D_Stat 3 "Overvoltage" 2 "Undervoltage" 1 "InRange" 0 "Undetermined"; -VAL_ 1041 ElCmprOverTe_D_Stat 3 "OverTempStop" 2 "OverTempWarning" 1 "Normal" 0 "Undefined"; -VAL_ 1041 ElCmpr_N_Actl 255 "Invalid"; -VAL_ 1041 ElCmpr_Pw_Actl 255 "Invalid"; -VAL_ 1041 ElCmpr_D_Stat 7 "Signal_Invalid" 6 "Comp_Off_ActlSpd_Abnormal" 5 "Comp_Off_TrgtSpd_OutRange" 4 "Comp_Shutdown" 3 "Comp_Stopped_Self_Protect" 2 "Comp_Degraded" 1 "Comp_On" 0 "Comp_Off"; -VAL_ 1041 ElCmprPerfErr_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprInnrErr_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprLostComm_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprOverLoad_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprOverTe_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprBattURng_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprBattSysU_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1041 ElCmprSysU_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; -VAL_ 1067 BattULoAuxIsol_D_Rq 3 "Undefined" 2 "Retain" 1 "Close" 0 "Open"; -VAL_ 1067 BattULoAux_U_Rq 4095 "Faulty"; -VAL_ 1067 BattULoAux_I_Actl 4095 "Faulty"; -VAL_ 1067 BattULoAux_D_Qlty 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Faulty"; -VAL_ 1067 BattULoAux_U_Actl 255 "Faulty"; -VAL_ 1067 BattULoAux_B_Falt 1 "Fault" 0 "No_Fault"; -VAL_ 1112 BattTracChrgSustn_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 1112 BattTracCnnct_D_Cmd 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "WeldCheck" 3 "OkToDischarge" 2 "Closed" 1 "Precharge" 0 "Open"; -VAL_ 1112 BattTracHvilOpen_B_Stat 1 "Open" 0 "Closed"; -VAL_ 1112 BattTracDcdcDis_B_Rq 1 "Yes" 0 "No"; -VAL_ 1112 HtrnClntPump_D_Stat 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; -VAL_ 1112 BattTracClntPmp_D_Stat 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; -VAL_ 139 AfsPw_B_Rq 1 "Yes" 0 "No"; -VAL_ 139 AccButtnGpTogglePress2 1 "Pressed" 0 "Not_Pressed"; -VAL_ 139 TjaButtnOnOffPress2 1 "Pressed" 0 "Not_Pressed"; -VAL_ 139 ActvFrontSteMsgTxt_D_Rq 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 139 ActvFrontSteLck_D_Stat 3 "Test_passed" 2 "Test_failed" 1 "Test_cannot_run" 0 "Test_incomplete"; -VAL_ 139 SelDrvMdeAdptSte_D_Stat 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; -VAL_ 139 AslButtnOnOffPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 AslButtnOnOffCnclPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcButtnOnPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcButtnOnOffPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcButtnOnOffCnclPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcButtnOffPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAsllButtnResPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnSetPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnSetIncPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnSetDecPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnResIncPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnResDecPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnOnPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnOnOffCncl2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnOffCnclPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnIndxIncPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnIndxDecPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnDeny_B_Actl2 1 "Yes" 0 "No"; -VAL_ 139 CcAslButtnCnclResPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 CcAslButtnCnclPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 AccButtnGapIncPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 139 AccButtnGapDecPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 1121 SelDrvMdeSwtch_D_Stat 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; -VAL_ 1121 SelDrvMdeCnt_D_Stat 4 "FourCounts" 3 "ThreeCounts" 2 "TwoCounts" 1 "OneCount" 0 "ZeroCounts" 7 "SevenOrMoreCounts" 6 "SixCounts" 5 "FiveCounts"; -VAL_ 1120 DrvSlipCtlMde_B_Rq3 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1120 HybMdeSwtch_B_Rq 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1120 TrailCtlSwtch_B_Stat3 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1120 RearDiffLck_D_RqDrv 3 "Faulty" 2 "NoRequest" 1 "On" 0 "Off"; -VAL_ 1120 AwdMde_D_RqDrv 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; -VAL_ 1120 HdcSwtchPos_B_Actl 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1050 AutoHoldSwtch_D_Stat 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1050 LpdbPtc3_B_Rq 1 "On" 0 "Off"; -VAL_ 1050 LpdbPtc2_B_Rq 1 "On" 0 "Off"; -VAL_ 1050 LpdbPtc1_B_Rq 1 "On" 0 "Off"; -VAL_ 1050 LpdbHeatWiprPrk_B_Rq 1 "On" 0 "Off"; -VAL_ 1050 LpdbDfrstRearOn_B_Rq 1 "On" 0 "Off"; -VAL_ 1050 SteWhlHeat_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Reserved_3" 8 "Reserved_2" 7 "Reserved_1" 6 "Level_3_Heating" 5 "Level_3_Heating_LS" 4 "Level_2_Heating" 3 "Level_2_Heating_LS" 2 "Level_1_Heating" 1 "Level_1_Heating_LS" 0 "Off"; -VAL_ 1050 MirrorHeatOn_B_Rq 1 "True" 0 "False"; -VAL_ 1050 Remote_Start_QuietMode 1 "Quiet" 0 "Not_Quiet"; -VAL_ 1050 Outside_Air_Temp_Stat 255 "Invalid" 254 "Unknown"; -VAL_ 1137 RngPerChrgAvg_L_Dsply 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 1255 BalrRight4Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1255 BalrRight4Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1255 BalrRight4Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1254 BalrRight3Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1254 BalrRight3Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1254 BalrRight3Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1253 BalrRight2Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1253 BalrRight2Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1253 BalrRight2Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1252 BalrRight1Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1252 BalrRight1Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1252 BalrRight1Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1251 BalrLeft4Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1251 BalrLeft4Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1251 BalrLeft4Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1250 BalrLeft3Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1250 BalrLeft3Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1250 BalrLeft3Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1249 BalrLeft2Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1249 BalrLeft2Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1249 BalrLeft2Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1248 BalrLeft1Threat_D_Stat 1 "Yes" 0 "No"; -VAL_ 1248 BalrLeft1Fast_B_Stat 1 "Yes" 0 "No"; -VAL_ 1248 BalrLeft1Dsply_B_Stat 1 "Yes" 0 "No"; -VAL_ 1113 TrlrTrgtAcquire_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "RVCforTBA_Activated" 3 "Processing" 2 "TargetNotAcquired" 1 "TargetAcquired" 0 "Null"; -VAL_ 1113 TrlrAnOffstDir_D_Calc 3 "NotUSed" 2 "Right" 1 "Left_or_Center" 0 "Null"; -VAL_ 1113 TrlrAnCalib_B_Complt 1 "Yes" 0 "No"; -VAL_ 1113 TrlrRvrse_D_Stat 3 "Faulty" 2 "TrailerReverseGuidanceLite" 1 "On" 0 "Off"; -VAL_ 1113 TrlrAid_D2_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "DirtyCamera" 9 "IncorrectLighting" 8 "TrackingLost" 7 "TrackingUnknownConfidence" 6 "TrackingHighConfidence" 5 "TrackingMediumConfidence" 4 "TrackingLowConfidence" 3 "TurnRequested" 2 "DriveStraighRequested" 1 "Initializing" 0 "NotTracking"; -VAL_ 1113 TrlrAid_An3_Actl 2047 "Faulty"; -VAL_ 1113 TrlrAid_AnRate2_Actl 1023 "Faulty"; -VAL_ 1113 HitchToVehAxle_L_Calc 255 "Faulty"; -VAL_ 1105 TrlrAidSwtchLamp_B_Rq 1 "On" 0 "Off"; -VAL_ 1105 TrlrHitchMsgTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage" 63 "Message63" 47 "Message47"; -VAL_ 1105 TrlrHitchIcon_D_Rq 15 "Icon15" 14 "Icon14" 13 "Icon13" 12 "Icon12" 11 "Icon11" 10 "Icon10" 9 "Icon9" 8 "Icon8" 7 "Icon7" 6 "Icon6" 5 "Icon5" 4 "Icon4" 3 "Icon3" 2 "Icon2" 1 "Icon1" 0 "NoIcon"; -VAL_ 1105 TrlrHitchChime_D_Rq 7 "NotUsed_1" 6 "NotUsed_1" 5 "WarningChime" 4 "NonCriticalAlertChime" 3 "StopNowChime" 2 "ManeuveringReadyChime" 1 "TrailerFoundChime" 0 "NoChime"; -VAL_ 1105 TrlrAidEnbl_D_RqAdas 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Deactivate" 2 "NotAvailable" 1 "ActiveTba" 0 "Inactive"; -VAL_ 1105 TrlrRvrseMsgTxt_D2_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 1105 TrlrRvrseEnbl_D2_Stat 7 "NotUsed" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; -VAL_ 1105 RbaMsg_D_Rq 3 "Faulty" 2 "Unavailable" 1 "Off" 0 "Null"; -VAL_ 1105 BrkDecel_B_RqRba 1 "Enable" 0 "Disable"; -VAL_ 1105 BrkEnbl_B_RqRba 1 "Enable" 0 "Disable"; -VAL_ 1105 Rba_D_Stat 3 "NotUsed" 2 "Disabled" 1 "On" 0 "Off"; -VAL_ 1105 RbaAlrt_D_Dsply 3 "Both" 2 "Text" 1 "Graphic" 0 "Off"; -VAL_ 1105 RbaMnu_D_Rq 3 "NotUsed" 2 "Active" 1 "Inactive" 0 "None"; -VAL_ 1105 CamraFrntStat_D_Stat 3 "No_Data_Present" 2 "NotUsed" 1 "On" 0 "Off"; -VAL_ 1105 TrlrHitchLamp_D_Rq2 1 "On" 0 "Off"; -VAL_ 938 SidePrkSnsR2_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 938 SidePrkSnsR1_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 938 SidePrkSnsL2_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 938 ApaMde_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "POA" 3 "PPA" 2 "SAPP" 1 "Off" 0 "Null"; -VAL_ 938 ApaActvSd_D_Actl 3 "Dirver_Side" 2 "Passenger_Side" 1 "No_Side" 0 "Null"; -VAL_ 938 PrkAidSwtch_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 938 ApaMde_D_Avail 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "PPA_POA" 7 "SAPP_POA" 6 "POA" 5 "PPA" 4 "SAPP" 3 "SAPP_PPA_POA" 2 "SAPP_PPA" 1 "None" 0 "Null"; -VAL_ 938 PrkAidSnsFrCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 938 PrkAidSnsFrCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 938 PrkAidSnsFlCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 938 PrkAidSnsFlCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 938 PrkBrkEl_B_RqFap 1 "Yes" 0 "No"; -VAL_ 938 RpaChime_D_Rq 15 "Zone15_Chime" 14 "Zone14_Chime" 13 "Zone13_Chime" 12 "Zone12_Chime" 11 "Zone11_Chime" 10 "Zone10_Chime" 9 "Zone9_Chime" 8 "Zone8_Chime" 7 "Zone7_Chime" 6 "Zone6_Chime" 5 "Zone5_Chime" 4 "Zone4_Chime" 3 "Zone3_Chime" 2 "Zone2_Chime" 1 "Zone1_Chime" 0 "No_Chime"; -VAL_ 938 FpaChime_D_Rq 15 "Zone15_Chime" 14 "Zone14_Chime" 13 "Zone13_Chime" 12 "Zone12_Chime" 11 "Zone11_Chime" 10 "Zone10_Chime" 9 "Zone9_Chime" 8 "Zone8_Chime" 7 "Zone7_Chime" 6 "Zone6_Chime" 5 "Zone5_Chime" 4 "Zone4_Chime" 3 "Zone3_Chime" 2 "Zone2_Chime" 1 "Zone1_Chime" 0 "No_Chime"; -VAL_ 938 PrkAidMsgTxt_D_Rq 15 "All_Sns_Blk" 14 "R_Sns_ON_F_Sns_Blk" 13 "R_Sns_Blk_F_Sns_ON" 12 "R_Sns_Inactive_Trlr_atch" 11 "Not_Avail_Trlr_attchd" 10 "Fail_Mode_no_Chime" 9 "Fail_Mode_with_Chime" 8 "R_Sns_Trlr_F_Sns_Blk" 7 "NotUsed3" 6 "Park_Sys_Alternate_Mode" 5 "R_Snsrs_On_F_Snsrs_On" 4 "NotUsed2" 3 "Reset_Message_Warn" 2 "R_Snsrs_Off_F_Snsrs_On" 1 "R_Snsrs_On_F_Snsrs_Off" 0 "All_Park_Sensors_Off"; -VAL_ 938 SidePrkSnsL1_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 938 PrkAidAudioMute_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 939 ApaBrk_D_Rq 3 "NotUsed" 2 "LowDecel" 1 "HighDecel" 0 "NoRequest"; -VAL_ 939 SidePrkSnsR4_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 939 SidePrkSnsR3_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 939 SidePrkSnsL4_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 939 SidePrkSnsL3_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; -VAL_ 939 PrkAidChime_D_Stat 3 "Fault" 2 "No_Data_Exists" 1 "On" 0 "Off"; -VAL_ 939 PrkAidSnsRlCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 939 PrkAidSnsRrCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 939 PrkAidSnsRrCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 939 PrkAidSnsRlCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; -VAL_ 939 PrkAidRear_D_Stat 3 "Faulted" 2 "Unused" 1 "Enabled" 0 "Disabled"; -VAL_ 939 PrkAidFront_D_Stat 3 "Faulted" 2 "Unused" 1 "Enabled" 0 "Disabled"; -VAL_ 939 PrkAid_D_Falt 7 "NotUsed2" 6 "NotUsed1" 5 "Failure_Front_PSM_Sensors" 4 "No_Data_Exists" 3 "Failure_Rear_Sensors" 2 "Speaker_Fault" 1 "ECU_Fault" 0 "No_Fault"; -VAL_ 939 ApaLongCtrlEnbl_D_Rq 1 "Enable" 0 "Disable"; -VAL_ 939 PrkAidLamp_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 937 TrnRng_D_RqFap 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Backwards" 3 "Forwards" 2 "NoMotion" 1 "Immobilize" 0 "NoRequest"; -VAL_ 937 FapLcDistToObj_L_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 936 ApaButtnPrssd_B_Stat 1 "Pressed" 0 "Not_Pressed"; -VAL_ 936 ApaSys_D_Stat 7 "Faulty" 6 "Finished" 5 "NotAccessible" 4 "ApaCancelled" 3 "Overspeed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 936 ApaSteWhl_D_RqDrv 3 "TakeControl" 2 "RemoveHands" 1 "NoRequest" 0 "Null"; -VAL_ 936 ApaSteScanMde_D_Stat 3 "Steering" 2 "Scanning" 1 "NotScanning" 0 "Null"; -VAL_ 936 ApaSelSapp_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; -VAL_ 936 ApaSelPpa_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; -VAL_ 936 ApaSelPoa_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; -VAL_ 936 ApaScan_D_Stat 3 "ParkSlotReady" 2 "ParkSlotFound" 1 "NoParkSlot" 0 "Null"; -VAL_ 936 ApaLongCtl_D_RqDrv 7 "NotUsed3" 6 "NotUsed2" 5 "ReleaseBrake" 4 "DriveBackward" 3 "DriveForward" 2 "Stop" 1 "NoRequest" 0 "Null"; -VAL_ 936 ApaGearShif_D_RqDrv 7 "NotUSed2" 6 "NotUsed1" 5 "ShiftToP" 4 "ShiftToN" 3 "ShiftToD" 2 "ShiftToR" 1 "NoRequest" 0 "Null"; -VAL_ 936 ApaActvSide2_D_Stat 3 "NoSide" 2 "Right" 1 "Left" 0 "Null"; -VAL_ 936 ApaAcsy_D_RqDrv 7 "CloseDoor" 6 "SelectSideRight" 5 "SelectSideLeft" 4 "CheckForObject" 3 "PressApaButton" 2 "SelectSide" 1 "NoRequest" 0 "Null"; -VAL_ 936 ApaTrgtDist_D_Stat 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 0 "Off"; -VAL_ 936 ApaChime_D_Rq 7 "NotUsed2" 6 "NotUsed1" 5 "Warning_Chime" 4 "Finish_Chime" 3 "Stop_Now_Chime" 2 "Spot_Ready_Chime" 1 "Spot_Found_Chime" 0 "No_Chime"; -VAL_ 936 EPASExtAngleStatReq 1 "Request" 0 "NoRequest"; -VAL_ 936 ExtSteeringAngleReq2 32767 "Invalid" 32766 "Unknown"; -VAL_ 877 VehElEffAvg_No_Dsply 127 "Faulty" 126 "NoDataExists"; -VAL_ 877 PwFlwFuelDrv_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "FlwFromFuelToAllWhls" 2 "FlwFromFuelToFrontWhls" 1 "FlwFromFuelToRearWhls" 0 "NoFlow"; -VAL_ 877 PwFlwFuelClimt_B_Dsply 1 "On" 0 "Off"; -VAL_ 877 PwFlwFuelBatt_B_Dsply 1 "On" 0 "Off"; -VAL_ 877 PwFlwBattClimt_B_Dsply 1 "On" 0 "Off"; -VAL_ 877 PwFlwBatt_D_Dsply 15 "NotUsed_8" 14 "NotUsed_7" 13 "NotUsed_6" 12 "NotUsed_5" 11 "NotUsed_4" 10 "NotUsed_3" 9 "NotUsed_2" 8 "NotUsed_1" 7 "FlwFromWallToBatt" 6 "FlwFromAllWhlsToBatt" 5 "FlwFromBattToAllWhls" 4 "FlwFromFrontWhlsToBatt" 3 "FlwFromBattToFrontWhls" 2 "FlwFromRearWhlsToBatt" 1 "FlwFromBattToRearWhls" 0 "NoFlow"; -VAL_ 588 BattTracSoc2_Pc_Actl 16383 "Faulty" 16382 "NoDataExists"; -VAL_ 588 BattTrac_Te_Actl 1023 "Fault" 1022 "Unknown"; -VAL_ 588 BattTracDiagClr_B_Rq 1 "On" 0 "Off"; -VAL_ 587 BattTracWarnLamp_B_Rq 1 "On" 0 "Off"; -VAL_ 587 BattTracSrvcRqd_B_Rq 1 "On" 0 "Off"; -VAL_ 389 HtrnOvrTeLamp_B_Dsply 1 "On" 0 "Off"; -VAL_ 389 HtrnMil_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 389 HtrnAin_UHi_Actl 1023 "Fault" 1022 "Unknown"; -VAL_ 389 HtrnSrvcRqd_B_Dsply 1 "On" 0 "Off"; -VAL_ 389 HtrnHvilOpen_B_Actl 1 "HVIL_is_Open" 0 "Normal_Operation"; -VAL_ 389 PtWakeupDeltaT_T_Rq 2047 "Fault" 2046 "NoDataExists"; -VAL_ 389 PreCondActv_B_Actl 1 "On" 0 "Off"; -VAL_ 389 DrvCondTpRrDefrs_B_Rq 1 "On" 0 "Off"; -VAL_ 389 BattTrac_I_EstVsc 32767 "Fault" 32766 "NoDataExists"; -VAL_ 1009 ChrgCordUnlock_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 1009 AutoHoldSwtch_D_Stat3 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1009 TrlrTrgtAcquire_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "ActivateRVCforTBA" 4 "CancelAcquisition" 3 "RetryAcquisition" 2 "AcquisitionSuccessful" 1 "StartAcquisition" 0 "Inactive"; -VAL_ 1009 TrlrAidCancl_B_Rq 1 "Cancel" 0 "Null"; -VAL_ 1009 CenterStackRing_D_Actl 3 "LimitedOn" 2 "On" 1 "Off" 0 "Null"; -VAL_ 1009 ValetMode_D_Stat 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 1009 TrlrAidSetup_D_Stat 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "EnterParameters" 2 "EndSetup" 1 "BeginSetup" 0 "Null"; -VAL_ 360 GsmSrvcRqd_B_Rq 1 "Yes" 0 "No"; -VAL_ 360 TrnGearPwmFalt_B_Actl 1 "Yes" 0 "No"; -VAL_ 360 GearButtnStuck_B_Actl 1 "Yes" 0 "No"; -VAL_ 122 VehStrtInhbt_B_RqBatt 1 "Yes" 0 "No"; -VAL_ 122 BattTracOffFst_D_Actl 3 "Unexpected_Contactor_Open" 2 "Restraints_Impact_Event" 1 "Interlock_Open" 0 "Normal"; -VAL_ 122 BattTracOff_B_Actl 1 "Yes" 0 "No"; -VAL_ 122 BattTracMil_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 122 BattTrac_U_Actl 1023 "Fault" 1022 "Unknown"; -VAL_ 122 BattTrac_I_Actl 32767 "Fault" 32766 "Unknown"; -VAL_ 90 TrnGsmNtmState_D_Actl 3 "Faulty" 2 "Neutral_Tow_Mode" 1 "Car_Wash_Mode" 0 "None"; -VAL_ 90 DrQltyDrv_D_StatGsm 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "ClosedDegraded" 2 "OpenDegraded" 1 "ClosedOkay" 0 "OpenOkay"; -VAL_ 90 TrnBtsiOvrrd_B_Stat 1 "Override" 0 "Null"; -VAL_ 90 GsmGearMsgTxt_D_Rq 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 90 TrnRng_D_RqGsm 15 "Fault" 14 "UnknownPosition" 13 "Undefined_2" 12 "Undefined_1" 11 "_6" 10 "_5" 9 "_4" 8 "_3" 7 "_2" 6 "_1" 5 "Low" 4 "Sport_DriveSport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; -VAL_ 90 PrkBrkActv_D_RqGsmGear 3 "NotUsed" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "Null"; -VAL_ 90 TrnValidGearRq_D_Stat 3 "Valid_Request" 2 "Valid_Degraded_Request" 1 "Invalid_Request" 0 "No_Request"; -VAL_ 90 TrnGearButtn_U_Actl 255 "Fault"; -VAL_ 90 TrnGearButtn_B_ActlR2 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlR1 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlR0 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlP2 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlP1 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlP0 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlN2 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlN1 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlN0 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlM2 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlM1 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlM0 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlD2 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlD1 1 "Yes" 0 "No"; -VAL_ 90 TrnGearButtn_B_ActlD0 1 "Yes" 0 "No"; -VAL_ 90 TrnGear_D_RqDrv 31 "Fault" 30 "NotUsed_25" 29 "NotUsed_24" 28 "NotUsed_23" 27 "NotUsed_22" 26 "Return_to_Park" 25 "NotUsed_20" 24 "NotUsed_19" 23 "NotUsed_18" 22 "NotUsed_17" 21 "Return_To_Park" 20 "NotUsed_15" 19 "NotUsed_14" 18 "NotUsed_13" 17 "NotUsed_12" 16 "Manual" 15 "Not_Used11" 14 "Not_Used10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "Drive" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "Neutral" 3 "NotUsed_1" 2 "Reverse" 1 "Park" 0 "No_Gear"; -VAL_ 90 BrkSwtchPos_B_ActlGsm 1 "Yes" 0 "No"; -VAL_ 1091 ParkLampTrlrOut_B_Stat 1 "Out" 0 "Null"; -VAL_ 1091 TrlrLampCtl_D_Stat 3 "NotUsed" 2 "TrlrLampCnnctDrvFailure" 1 "TrlrLampNotCnnctDrvFailure" 0 "Null"; -VAL_ 1091 TrlrBattChrg_D_Stat 3 "Reverse" 2 "Normal" 1 "Low" 0 "Null"; -VAL_ 1091 StopLampTrlrOut_B_Stat 1 "Out" 0 "Null"; -VAL_ 1091 TurnLampTrlrRr_B_Stat 1 "Out" 0 "Null"; -VAL_ 1091 TurnLampTrlrRl_B_Stat 1 "Out" 0 "Null"; -VAL_ 1091 TrlrLampCnnct_B_Actl 1 "Yes" 0 "No"; -VAL_ 138 SteWhlRelCalib_An_Sns 32767 "Fault" 32766 "NoDataExists"; -VAL_ 131 AccButtnGapDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 HeadLghtHiCtrl_D_RqAhb 7 "NotUsed2" 6 "NotUsed1" 5 "Auto_HiBeam" 4 "Auto_LoBeam" 3 "Flash" 2 "Man_HiBeam" 1 "Man_LoBeam" 0 "Null"; -VAL_ 131 AhbStat_B_Dsply 1 "On" 0 "Off"; -VAL_ 131 WiprFrontSwtch_D_Stat 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "PositionNotDetermined" 8 "High" 7 "Low" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Off"; -VAL_ 131 HeadLghtHiOn_B_StatAhb 1 "On" 0 "Off"; -VAL_ 131 HeadLghtHiFlash_D_Actl 3 "NotUsed" 2 "High" 1 "Flash_to_Pass" 0 "Null"; -VAL_ 131 TjaButtnOnOffPress 1 "Pressed" 0 "Not_Pressed"; -VAL_ 131 AccButtnGapTogglePress 1 "Pressed" 0 "Not_Pressed"; -VAL_ 131 HeadLghtHiFlash_D_Stat 3 "NotUsed" 2 "High" 1 "Flash_to_Pass" 0 "Null"; -VAL_ 131 WiprFront_D_Stat 15 "NO_DATA_EXISTS" 14 "STALLED" 13 "RESERVED" 12 "AUTO_ADJUST" 11 "COURTESYWIPE" 10 "AUTO_HIGH" 9 "AUTO_LOW" 8 "WASH" 7 "MIST_FLICK" 6 "MAN_HIGH" 5 "MAN_LOW" 4 "MAN_INT_ON" 3 "MAN_INT_OFF" 2 "OFF_MOVING" 1 "AUTO_OFF" 0 "OFF"; -VAL_ 131 TurnLghtSwtch_D_Stat 3 "Unused_Treat_As_Off" 2 "Right" 1 "Left" 0 "Off"; -VAL_ 131 LghtAmb_D_Sns 7 "No_Data_Exists" 6 "Unused2" 5 "Unused1" 4 "Tunnel_Off" 3 "Tunnel_On" 2 "Twilight" 1 "Light" 0 "Dark"; -VAL_ 131 AccButtnGapIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 AslButtnOnOffPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 AslButtnOnOffCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcButtnOnPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcButtnOnOffPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcButtnOnOffCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcButtnOffPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAsllButtnResPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnSetPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnSetIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnSetDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnResIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnResDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnOnPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnOnOffCncl 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnOffCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnIndxIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnIndxDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnDeny_B_Actl 1 "Yes" 0 "No"; -VAL_ 131 CcAslButtnCnclResPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 CcAslButtnCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; -VAL_ 131 LaSwtchPos_D_Stat 3 "Fault" 2 "Unused" 1 "Pressed" 0 "Open"; -VAL_ 787 DrTgateChime2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Long_Repeated" 3 "Fast" 2 "Short" 1 "Long" 0 "Off"; -VAL_ 787 DrTGate_D_Rq 3 "NotUsed" 2 "Closing" 1 "Opening" 0 "Not_Moving"; -VAL_ 787 PwLftgtIntSw_B_Stat 1 "Pressed" 0 "Null"; -VAL_ 787 Power_Liftgate_Mode_Stt 2 "Unused" 3 "Not_Supported" 1 "Enabled" 0 "Disabled"; -VAL_ 953 BattRgenLoDChrg_D_Rq 3 "DoNotCare" 2 "Retain" 1 "Closed" 0 "Open"; -VAL_ 953 BattRgenLoChrg_D_Rq 3 "DoNotCare" 2 "Retain" 1 "Closed" 0 "Open"; -VAL_ 953 ChrgCordLck_B_Stat 1 "Unlock" 0 "Null"; -VAL_ 953 WakeAlarm3_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; -VAL_ 953 WakeAlarm2_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; -VAL_ 953 WakeAlarm1_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; -VAL_ 953 WakeAlarm0_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; -VAL_ 1093 TrlBrkInitOut_D_Stat 3 "Heavy" 2 "Medium" 1 "Light" 0 "Null"; -VAL_ 1093 TrlrBrkMde_D_Actl 1 "Electric_Over_Hydraulic" 0 "Electric"; -VAL_ 1093 TrlrBrkDsply_B_Rq 1 "Yes" 0 "No"; -VAL_ 1093 TrlrBrkDcnnt_B_Actl 1 "Yes" 0 "No"; -VAL_ 1093 TrlrBrkActCnnct_B_Actl 1 "Yes" 0 "No"; -VAL_ 1093 StopLamp_B_RqTrlrBrk 1 "Yes" 0 "No"; -VAL_ 1093 TrlrBrkCtl_B_Falt 1 "Yes" 0 "No"; -VAL_ 1093 TrlrBrkActCirct_B_Falt 1 "Yes" 0 "No"; -VAL_ 792 ElTrip_L_Dsply 65535 "Fault" 65534 "No_Data_Exists"; -VAL_ 792 ElLongTerm_L_Dsply 16777215 "Fault" 16777214 "No_Data_Exists"; -VAL_ 968 SlMde_D_Rq 3 "IsaNotConfigured" 2 "Manual_Mode" 1 "Auto_Mode" 0 "Null"; -VAL_ 968 IsaOffst_D_Rq 15 "Faulty" 14 "Null" 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero"; -VAL_ 819 Memory_3_SwPsngr_Stat 1 "Pressed" 0 "Null"; -VAL_ 819 Memory_2_SwPsngr_Stat 1 "Pressed" 0 "Null"; -VAL_ 819 Memory_1_SwPsngr_Stat 1 "Pressed" 0 "Null"; -VAL_ 819 BLISLEDStatPassSide 3 "Fault" 2 "Unused" 1 "On" 0 "Off"; -VAL_ 819 WndwPsngrSide_D_Stat 3 "BothWindow_Operating" 2 "RearWindow_Operating" 1 "FrontWindow_Operating" 0 "NoWindows_Operating"; -VAL_ 819 Pasngr_Lock_Sw_Stat 3 "Invalid" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_ 819 ChildLckFdbckRp_B_Stat 1 "Locked" 0 "Unlock"; -VAL_ 818 BLISLEDStatDriverSide 3 "Fault" 2 "Unused" 1 "On" 0 "Off"; -VAL_ 818 WndwDrvSide_D_Stat 3 "BothWindow_Operating" 2 "RearWindow_Operating" 1 "FrontWindow_Operating" 0 "NoWindows_Operating"; -VAL_ 818 KeyCylSwDrvDr_D_Stat 3 "NotUsed" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_ 818 Driver_Lock_Sw_Stat 3 "Invalid" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_ 818 ChildLckPw_D_Rq 1 "Active" 0 "Null"; -VAL_ 818 ChildLckFdbckRd_B_Stat 1 "Locked" 0 "Unlock"; -VAL_ 818 RvrseMirrorChime_B_Rq 1 "Yes" 0 "No"; -VAL_ 806 SnowPlowMde_B_Enbl 1 "Enable" 0 "Disable"; -VAL_ 806 StopStrtDrvMde_B_RqBtn 1 "Pressed" 0 "Not_Pressed"; -VAL_ 806 ClimtHeat_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "PtcHtrTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownHeatingReq" 1 "OpportunisticHeatingReq" 0 "NoHeatingRequest"; -VAL_ 806 ClimtCool_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "ElACTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownCoolReq" 1 "OpportunisticCoolingReq" 0 "NoCoolingRequest"; -VAL_ 806 HvacEvap_Te_Actl 1023 "Fault"; -VAL_ 806 HvacAirCond_B_Rq 1 "Yes" 0 "No"; -VAL_ 806 ClimtPw_B_Rq 1 "Yes" 0 "No"; -VAL_ 765 Mc_VehTimeFrmtUsrSel_St 2 "24h_mode" 1 "12h_mode" 0 "Invalid"; -VAL_ 765 Running_Board_Cmd 3 "Unused" 2 "Manually_Deployed" 1 "All_Enabled" 0 "All_Disabled"; -VAL_ 765 EngExhMdeQuiet_D2_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; -VAL_ 765 EdmSailMde_B_RqDrv 1 "On" 0 "Off"; -VAL_ 765 DrvInputRequired_B_Rq 1 "Yes" 0 "No"; -VAL_ 765 AwdRnge_D_ActlIpc 7 "Unknown" 6 "High_Range_2wd" 5 "High_Range_Auto" 4 "High_Range_Locked" 3 "Neutral" 2 "Low_Range_2wd" 1 "Low_Range_Auto" 0 "Low_Range_Locked"; -VAL_ 765 BalrSwtch_D_Stat 3 "NotUsed" 2 "Pressed" 1 "NotPressed" 0 "Null"; -VAL_ 765 BalrMde_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Null"; -VAL_ 765 WaitToStartLamp_D_Falt 3 "NotUsed" 2 "Wait_to_start_lamp_failed" 1 "Diagnosis_not_ready" 0 "Wait_to_start_lamp_OK"; -VAL_ 765 EsaOn_B_Rq 1 "On" 0 "Off"; -VAL_ 765 BttOn_B_Rq 1 "On" 0 "Off"; -VAL_ 765 Btt_L_Actl 127 "Faulty" 126 "NoDataExists"; -VAL_ 765 SelDrvMdeTxtReset_B_Rq 1 "Yes" 0 "No"; -VAL_ 765 SelDrvMdeDsply_B_Avail 1 "Available" 0 "NotAvailable"; -VAL_ 765 Mc_VehUntTrpCoUsrSel_St 0 "TripComputer_metric" 1 "TripComputer_imperial"; -VAL_ 765 Mc_VehUnitTempUsrSel_St 0 "Temperature_deg_c" 1 "Temperature_deg_f"; -VAL_ 765 Mc_VehLangUsrSel_St 30 "Slovak" 29 "Arabic" 28 "Cantonese" 27 "Mandarin_Chinese" 26 "Korean" 25 "Japanese_Kanji" 24 "Japanese_Katakana" 23 "Braz_Portuguese" 22 "EU_Portuguese" 21 "Finish" 20 "Norwegian" 19 "Danish" 18 "Swedish" 17 "Hungarian" 16 "Greek" 15 "Czech" 14 "Polish" 13 "Flemish" 12 "Dutch" 11 "Russian" 10 "Turkish" 9 "Mex_Spanish" 8 "EU_Spanish" 7 "Cana_French" 6 "EU_French" 5 "Italian" 4 "German" 3 "NA_English" 2 "UK_English" 1 "Unknown" 0 "Invalid"; -VAL_ 934 CtaAlrtLeft2_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "AlertZone4" 3 "AlertZone3" 2 "AlertZone2" 1 "AlertZone1" 0 "Off"; -VAL_ 934 CtaBrkLeftMsgTxt_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 934 CtaLeftBrkDecel_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 934 CtaLeftBrkEnbl_B_Rq 1 "Enable" 0 "Disable"; -VAL_ 934 BttLeft_D_Stat 7 "NotUsed" 6 "Disabled" 5 "Off" 4 "OffTemp" 3 "NotConnected" 2 "Pending" 1 "Connected" 0 "NotDetermined"; -VAL_ 934 BttLeft_D_RqDrv 3 "NotUsed" 2 "Request" 1 "NoRequest" 0 "Null"; -VAL_ 934 CtaSnsLeft_D_Stat 3 "Invalid" 2 "System_Failure" 1 "Blocked" 0 "Clear"; -VAL_ 934 SodDetctLeft_D_Stat 4 "Sensor_Blocked" 3 "Sensor_Fault" 2 "Flash_On" 1 "Alert_On" 0 "AlertOff_FlashOff_SensrClr"; -VAL_ 934 CtaLeft_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; -VAL_ 934 CtaAlrtLeft_D_Stat 1 "On" 0 "Off"; -VAL_ 934 SodLeft_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; -VAL_ 934 SodSnsLeft_D_Stat 3 "Second_Warning_Audio" 2 "System_Failure" 1 "Blocked" 0 "Clear"; -VAL_ 934 SodAlrtLeft_D_Stat 3 "Bulb_Proveout" 2 "Flash" 1 "On" 0 "Off"; -VAL_ 1072 LscmbbStat_B_Actl 1 "On" 0 "Off"; -VAL_ 1072 HaDsplyCpblty_B_Stat 1 "Available" 0 "NotAvailable"; -VAL_ 1072 AccDeny_B_RqIpc 1 "Yes" 0 "No"; -VAL_ 1072 DrvSlipCtlMde_D_Rq 3 "App_Specific_Off_Mode_3" 2 "App_Specific_Off_Mode_2" 1 "App_Specific_Off_Mode_1" 0 "Default_Mode"; -VAL_ 1072 EngIdlShutDown_B_RqDrv 1 "Inhibit" 0 "No_Inibit"; -VAL_ 1072 HsaMde_D_Rq 3 "Undefined" 2 "Manual" 1 "Automatic" 0 "Off"; -VAL_ 1072 NtrlTowMdeEnbl_B_RqDrv 1 "Yes" 0 "No"; -VAL_ 1072 BulbChkActv_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1072 ParkDetect_Stat 1 "Park" 0 "Not_Park"; -VAL_ 1072 ReducedGuard_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 1072 TrlrBrkMde_D_Rq 1 "ElectricOverHydraulic" 0 "Electric"; -VAL_ 1072 TRLR_SWAY_CONFIG_CMD 1 "On" 0 "Off"; -VAL_ 1072 TRAILER_BRAKE_CONFIG 1 "Yes" 0 "No"; -VAL_ 1072 Power_Liftgate_Mode_Cmd 1 "Enable" 0 "Disable"; -VAL_ 1072 AccEnbl_B_RqDrv 1 "Adaptive_Cruise" 0 "Normal_Cruise"; -VAL_ 1072 OdometerMasterValue 16777215 "Invalid"; -VAL_ 1072 EngOilLife_B_RqReset 1 "Yes" 0 "No"; -VAL_ 1072 ePRNDL_MODE 1 "On" 0 "Off"; -VAL_ 1072 DrvSlipCtlMde_B_Rq2 1 "Pressed" 0 "Not_Pressed"; -VAL_ 1072 MetricActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 1072 KeyTypeChngMykey_D_Rq 3 "Search_PE_BackupSlot" 2 "Clear_All_MyKeys" 1 "Request_New_MyKey" 0 "None"; -VAL_ 1072 ManRgen_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "CustInitManExhFilterClean" 0 "No_Customer_Request"; -VAL_ 909 IgnPsswrdDsply_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 909 ElPwPoint_D_Rq 3 "On" 2 "Off2" 1 "Off1" 0 "Null"; -VAL_ 909 PoliceIdlMde_D_Stat 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "PepsActive" 8 "Decommissioned" 7 "ActiveFault" 6 "ArmFault" 5 "PrearmedFault" 4 "OffFault" 3 "Active" 2 "Arm" 1 "Prearmed" 0 "Off"; -VAL_ 909 DrLatchMsgTxt_D_Rq 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 909 SecurityMsgTxt_D_Rq 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; -VAL_ 909 PrmtrAlrmEvnt_D_Stat 15 "Diag_Tamper" 14 "Trailer" 13 "Shock_Sensor" 12 "Post_Crash" 11 "Panic" 10 "Intrusion" 9 "Inclination" 8 "Ign_Tamper" 7 "LG_Door" 6 "Decklid" 5 "Hood" 4 "PR_Door" 3 "PF_Door" 2 "DR_Door" 1 "DF_Door" 0 "Null"; -VAL_ 909 HeadLghtHiPrmsn_D_Stat 3 "CancelAndSuppress" 2 "Cancel" 1 "Hold" 0 "AllowChange"; -VAL_ 909 SteWhlLckMsgTxt_D_Rq 3 "NotUsed" 2 "Message_2" 1 "Message_1" 0 "No_Message"; -VAL_ 909 immoMsgTxt_D_Rq 15 "Immo_Msg_15" 14 "Immo_Msg_14" 13 "Immo_Msg_13" 12 "Immo_Msg_12" 11 "Immo_Msg_11" 10 "Immo_Msg_10" 9 "Immo_Msg_9" 8 "Immo_Msg_8" 7 "Immo_Msg_7" 6 "Immo_Msg_6" 5 "Immo_Msg_5" 4 "Immo_Msg_4" 3 "Immo_Msg_3" 2 "Immo_Msg_2" 1 "Immo_Msg_1" 0 "Immo_Msg_0_Null"; -VAL_ 909 PrsnlDevcChrgEnbl_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 909 TracKeyMde_D_Stat 3 "NotUsed" 2 "NotActive" 1 "Active" 0 "ModeNotDetermined"; -VAL_ 909 PEBackupSlot_Stats 3 "No_Valid_FOB_In_Slot" 2 "MyKey_FOB_In_Slot" 1 "Standard_FOB_In_Slot" 0 "Null"; -VAL_ 909 KeyMykeyTot_No_Cnt 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero" 15 "Invalid" 14 "Unlimited"; -VAL_ 909 KeyAdmnTot_No_Cnt 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero" 15 "Invalid" 14 "Unlimited"; -VAL_ 963 Illuminated_Entry_Stat 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; -VAL_ 963 Dr_Courtesy_Light_Stat 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; -VAL_ 963 Courtesy_Delay_Status 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; -VAL_ 963 ImpactEvntFdbck_D_Stat 3 "NotUsed" 2 "EventComplete" 1 "EventInProgress" 0 "Normal"; -VAL_ 963 WrlssAcsyChrgInhbt_B_Rq 1 "Yes" 0 "No"; -VAL_ 963 PudLampPsngr_D_Rq 3 "Ramp_Down" 2 "Ramp_Up" 1 "On" 0 "Off"; -VAL_ 963 HeadLampLoOut_B_Stat 1 "Out" 0 "Null"; -VAL_ 963 HeadLghtHiFdbck_D_Stat 3 "NotUsed" 2 "Cancel" 1 "Hold" 0 "Allow_Change"; -VAL_ 963 PudLampDrv_D_Rq 3 "Ramp_Down" 2 "Ramp_Up" 1 "On" 0 "Off"; -VAL_ 963 TrnNotInPrkChime_B_Rq 1 "On" 0 "Off"; -VAL_ 963 PrkLightChime_B_Rq 1 "On" 0 "Off"; -VAL_ 963 KeyInIgnWarn_B_Cmd 1 "On" 0 "Off"; -VAL_ 963 HomeSafeLtChime_B_Rq 1 "On" 0 "Off"; -VAL_ 963 StopLghtOn_B_Stat 1 "On" 0 "Off"; -VAL_ 963 RvrseLghtOn_B_Stat 1 "On" 0 "Off"; -VAL_ 963 PrkLght_D_Stat 3 "Park_Both" 2 "Park_Right" 1 "Park_Left" 0 "Off"; -VAL_ 963 HeadLghtSwtch_D_Stat 3 "Autolamp" 2 "Headlamp" 1 "Parklamp" 0 "Off"; -VAL_ 963 HeadLampLoFrOn_B_Stat 1 "Low" 0 "Not_Low"; -VAL_ 963 HeadLampLoFlOn_B_Stat 1 "Low" 0 "Not_Low"; -VAL_ 963 HeadLampLoActv_B_Stat 1 "On" 0 "Off"; -VAL_ 963 Headlamp_On_Wrning_Cmd 1 "On" 0 "Off"; -VAL_ 963 Park_Brake_Chime_Rqst 1 "On" 0 "Off"; -VAL_ 963 HeadLghtHiOn_B_Stat 1 "On" 0 "Off"; -VAL_ 963 BrkWarnInd_B_Rq 1 "On" 0 "Off"; -VAL_ 963 Brk_Fluid_Lvl_Low 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; -VAL_ 963 ReducedGuard_D_Stat 3 "NotUsed" 2 "Alarm_On" 1 "Alarm_Off_Previously_On" 0 "Alarm_Off"; -VAL_ 963 Perimeter_Alarm_Status 3 "Activated" 2 "Armed" 1 "Prearmed" 0 "Disarmed"; -VAL_ 963 Courtesy_BSave_Stat 3 "Invalid" 2 "Unknown" 1 "No_Effect" 0 "Off"; -VAL_ 963 DrTgateLck_D_Stat 3 "NotUsed" 2 "Unlock" 1 "Lock" 0 "Null"; -VAL_ 963 WndwGlbl_D_Cmd 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "GLEARN" 3 "GCLOSE" 2 "GOPEN" 1 "GSTOP" 0 "Null"; -VAL_ 963 PudLamp_D_Rq 3 "RAMP_DOWN" 2 "RAMP_UP" 1 "ON" 0 "OFF"; -VAL_ 963 DayRnngLampOn_B_Stat 1 "On" 0 "Off"; -VAL_ 963 PerimeterAlarmChimeRq 1 "On" 0 "Off"; -VAL_ 145 VehYawWActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 145 VehRolWActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 145 VehYaw_W_Actl 65535 "Faulty" 65534 "NoDataExists"; -VAL_ 145 VehRol_W_Actl 65535 "Faulty" 65534 "NoDataExists"; -VAL_ 76 FirstRowBuckleMid 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_ 76 SecondRowBucklePsngr 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_ 76 SecondRowBuckleMid 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_ 76 SecondRowBuckleDriver 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_ 76 FirstRowBuckleDriver 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_ 76 RILReq 3 "Not_Used" 2 "Plant_Mode" 1 "On" 0 "Off"; -VAL_ 76 FirstRowBucklePsngr 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; -VAL_ 76 RstrnImpactEvntStatus 7 "Invalid" 6 "Not_Used_4" 5 "Threshold_2_Exceeded" 4 "Not_Used_3" 3 "Threshold_1_Exceeded" 2 "Not_Used_2" 1 "Not_Used_1" 0 "Normal"; -VAL_ 76 PsngrFrntDetct_D_Actl 3 "Unknown" 2 "Empty" 0 "Faulty" 1 "Occupied"; -VAL_ 76 EDRTriggerEvntSync 1 "Threshold_Exceeded" 0 "Normal"; -VAL_ 76 PassRstrnInd_Req 3 "ABOnNotIllum_OffNotIllum" 2 "AirbagOnNot_Illum_OffIllum" 1 "AirbagOn_Illum_OffNotIllum" 0 "AirbagOn_Illum_Off_Illum"; -VAL_ 65 immoControlCmd_T1 0 "IDLE" 1 "MOTIVE_START_RQST" 2 "NONMOTIVE_START_RQST" 3 "RQST_TARGET1_IDBLOCK1" 4 "RQST_TARGET1_IDBLOCK2" 5 "Unused" 6 "ECHO_TARGET1_IDBLOCK2" 7 "SHUTDOWN"; -VAL_ 1076 HILL_DESC_SW 1 "On" 0 "Off"; -VAL_ 1076 AutoRgen_D_Rq 3 "NotUsed" 2 "AutExhFilterCleanOFF" 1 "AutExhFilterCleanON" 0 "No_Mode_Selected"; -VAL_ 1076 W2S_LAMP_OK 1 "Yes" 0 "No"; -VAL_ 1076 OdoTripRx_B_Actl 1 "Yes" 0 "No"; -VAL_ 1076 DrvSlipCtlMde_B_RqMyKey 1 "On" 0 "Off"; -VAL_ 1076 FuelLvlWarn_D_Actl 3 "NotUsed" 2 "VeryLow" 1 "Low" 0 "OK"; -VAL_ 1076 FuelSecndActv_B_Actl 1 "Yes" 0 "No"; -VAL_ 1076 FUEL_SENSOR_NUM 1 "Dual_Sensors" 0 "Single_Sensor"; -VAL_ 862 AutoStpHvacDelta_I_Est 255 "Fault"; -VAL_ 862 HvacBlwrFront_D_Stat 31 "Not_Used" 20 "Full_On" 19 "95_Percent" 18 "90_Percent" 17 "85_Percent" 16 "80_Percent" 15 "75_Percent" 14 "70_Percent" 13 "65_Percent" 12 "60_Percent" 11 "55_Percent" 10 "50_Percent" 9 "45_Percent" 8 "40_Percent" 7 "35_Percent" 6 "30_Percent" 5 "25_Percent" 4 "20_Percent" 3 "15_Percent" 2 "10_Percent" 1 "5_Percent" 0 "Off"; -VAL_ 862 CabnAmb_Te_Actl 255 "Fault"; -VAL_ 862 ClimtThrmlLoad_No_Actl 255 "Fault"; -VAL_ 931 PtWakeReas_D_Stat 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "ElapsedTime" 5 "ThirdPartyWakeup" 4 "DoorAjar" 3 "EarlyWake" 2 "NonMotiveStart" 1 "MotiveStart" 0 "Null"; -VAL_ 931 VehOnSrc_D_Stat 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "OverTheAir" 3 "RemoteParkAssist" 2 "RemoteStart" 1 "Manual" 0 "Off"; -VAL_ 931 EngStrtActv_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 931 EngStrt_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 931 DrvInCtl_B_Stat 1 "Yes" 0 "No"; -VAL_ 931 AdvStrt_D_Stat 15 "NotUsed_15" 14 "NotUsed_14" 13 "NotUsed_13" 12 "NotUsed_12" 11 "NotUsed_11" 10 "NotUsed_10" 9 "NotUsed_9" 8 "NotUsed_8" 7 "NotUsed_7" 6 "NotUsed_6" 5 "NotUsed_5" 4 "NotUsed_4" 3 "NotUsed_3" 2 "NotUsed_2" 1 "NotUsed_1" 0 "NoAction"; -VAL_ 931 CrnkInhbt_B_Stat 1 "Inhibit" 0 "NoInhibit"; -VAL_ 931 IgnPreOffActv_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 578 PtLatchActv_B_RqBcm 1 "On" 0 "Off"; -VAL_ 578 immoSecureIdleMode 3 "NotUsed2" 2 "NotUsed1" 1 "Active" 0 "Inactive"; -VAL_ 578 ReFuelSwtchStat_D_Actl 3 "NotUsed2" 2 "NotUsed1" 1 "On" 0 "Off"; -VAL_ 578 FuelPumpPwr_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Power_Off_Default" 3 "Power_Off_Command" 2 "Power_Off_Service" 1 "Power_Off_Impact" 0 "Power_On"; -VAL_ 578 BattULo_U_Actl 255 "Fault"; -VAL_ 578 PrkLckCtl_B_Enbl 1 "Enable" 0 "Disable"; -VAL_ 578 PrkLckCtlMsgTxt_D_Rq 3 "BTSI_DI_3" 2 "BTSI_DI_2" 1 "BTSI_DI_1" 0 "Null_BTSI_DI"; -VAL_ 578 BrkTrnShifLck_B_Stat 1 "Shift" 0 "NoShift"; -VAL_ 578 PrkLckCtlUnlck_D_Stat 3 "Trans_And_Steer_Unlckd" 2 "Steering_Unlckd" 1 "Transmission_Unlckd" 0 "Null"; -VAL_ 578 PrkLckCtlTow_B_Enbl 1 "Enable" 0 "Disable"; -VAL_ 578 DriverCrankingReq 1 "Crank_Request" 0 "No_Crank_Request"; -VAL_ 578 EngOff_T_Actl 65535 "Invalid"; -VAL_ 578 DcacElPw_D_Rq 3 "NotUsed" 2 "AC_HighPower_Requested" 1 "AC_LowPower_Requested" 0 "AC_Power_NotRequested"; -VAL_ 578 BattULo_I_Actl 16383 "Fault"; -VAL_ 947 ValetMode_D_Mem 1 "On" 0 "Off"; -VAL_ 947 DrStatDrvErrCnt_B_Stat 1 "Yes" 0 "No"; -VAL_ 947 TurnLghtRight_D_Rq 3 "Seq" 2 "On" 1 "Off" 0 "Null"; -VAL_ 947 TurnLghtRightOn_B_Stat 1 "On" 0 "Off"; -VAL_ 947 TurnLghtLeftOn_B_Stat 1 "On" 0 "Off"; -VAL_ 947 FogLghtRearOn_B_Stat 1 "On" 0 "Off"; -VAL_ 947 Backlit_LED_Status 15 "Unused3" 14 "Unused2" 13 "Unused1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; -VAL_ 947 TurnLghtLeft_D_Rq 3 "Seq" 2 "On" 1 "Off" 0 "Null"; -VAL_ 947 FogLghtFrontOn_B_Stat 1 "On" 0 "Off"; -VAL_ 947 IgnKeyType_D_Actl 15 "Invalid" 14 "Unknown" 3 "Key_Not_Prgrm_Read_Failure" 2 "Key_In_Ign_My_Key" 1 "Key_In_Ign_Standard_Key" 0 "Key_Read_In_Progress"; -VAL_ 947 Parklamp_Status 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; -VAL_ 947 Litval 255 "Invalid" 254 "Unknown" 5 "Day" 4 "Twilight_4" 3 "Twilight_3" 2 "Twilight_2" 1 "Twilight_1" 0 "Night"; -VAL_ 947 Key_In_Ignition_Stat 1 "In" 0 "Out"; -VAL_ 947 Ignition_Status 0 "Unknown" 1 "Off" 15 "Invalid" 8 "Start" 4 "Run" 2 "Accessory"; -VAL_ 947 Dimming_Lvl 255 "Invalid" 254 "Unknown" 18 "Day_6" 17 "Day_5" 16 "Day_4" 15 "Day_3" 14 "Day_2" 13 "Day_1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; -VAL_ 947 Day_Night_Status 3 "NotUsed" 2 "Night" 1 "Day" 0 "Null"; -VAL_ 947 Remote_Start_Status 3 "Invalid" 2 "Unknown" 1 "Remote" 0 "Null"; -VAL_ 947 DrStatTgate_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 DrStatRr_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 DrStatRl_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 DrStatPsngr_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 DrStatInnrTgate_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 DrStatHood_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 DrStatDrv_B_Actl 1 "Ajar" 0 "Closed"; -VAL_ 947 PrkBrkActv_B_Actl 1 "Active" 0 "Inactive"; -VAL_ 947 LifeCycMde_D_Actl 3 "Transport" 2 "NotUsed" 1 "Factory" 0 "Normal"; -VAL_ 947 Delay_Accy 1 "On" 0 "Off"; -VAL_ 947 CrashEvnt_D_Stat 3 "Invalid" 2 "Fuel_Cutoff_Event" 1 "Deploy_Event" 0 "No_Event"; -VAL_ 947 FuelPmpInhbt_B_Stat 1 "Inhibit" 0 "No_Inibit"; -VAL_ 947 BodySrvcRqd_B_Rq 1 "Yes" 0 "No"; -VAL_ 1084 BattULoState_D_Qlty 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Fault"; -VAL_ 1084 BSFault 1 "Fault" 0 "No_Fault"; -VAL_ 1084 BattULo2_Te_Actl 127 "Fault"; -VAL_ 1068 EngStrtInhbt_B_RqBatt 1 "Start_Inhibit" 0 "Dont_Care"; -VAL_ 1068 BattULoChrg_D_Rq 3 "Low_Battery_Temperature" 2 "Charging_Requested" 1 "Chrg_Requested_HighCurrent" 0 "No_Request"; -VAL_ 1068 PwSysULoFalt_D_Stat 15 "Not_Used_6" 14 "LowBatterySOC" 13 "PSS_Shed2_Contin" 12 "Not_Used_4" 11 "Not_Used_3" 10 "Not_Used_2" 9 "BattMonitoringSensorFault" 8 "LowBattVoltDuringPwSrcOn" 7 "LowBatt2_PowerSaveMode" 6 "LowBatt1_Warning" 5 "Overvoltage" 4 "Fault_NoOutput" 3 "Fault_ReducedOutput" 2 "Fault_Nonspecific" 1 "Cluster_Proveout" 0 "No_Fault"; -VAL_ 1068 Shed_T_Eng_Off_B 1 "Active" 0 "Inactive"; -VAL_ 1068 Shed_Feature_Group_ID 16 "PtcHeater" 14 "HtdMirr" 13 "HvacRearBlwr_Third" 12 "HvacRearBlwr_Second" 11 "HvacRearBlwr_First" 31 "All LSHED1 Features" 10 "Htd_Windscrn" 9 "SpltHtdBcklight_HtdMirr" 8 "HtdBcklight_HtdMirr" 7 "HtdCoolSeat_FrtDriver" 6 "HtdCoolSeat_FrtPass" 5 "HtdCoolSeat_RearPass" 4 "HtdCoolSeat_RearDriver" 3 "SmartTrlrTowBattCharge" 2 "Htd_StrWhl" 1 "Htd_Washer_Fluid" 0 "No_LSHED1_Features" 15 "Engine_Coolant_Fan"; -VAL_ 1068 Shed_Drain_Eng_Off_B 1 "Active" 0 "Inactive"; -VAL_ 1068 Shed_Level_Req 7 "Unused_2" 6 "Loads_On" 5 "SHED_ENG_OFF" 4 "SOON_ENG_OFF" 3 "SHED2_CONTIN" 2 "SHED2_TRANS" 1 "SHED1" 0 "NO_SHED"; -VAL_ 1068 ULoRgenTestMde_B_Rq 1 "Request" 0 "NoRequest"; -VAL_ 1068 ChargeMode 7 "Undefined_2" 6 "Undefined_1" 5 "Battery_Identify" 4 "Battery_Refresh" 3 "SlowRegenAllowNoDischarge" 2 "Fast_Regen_Allowed" 1 "Slow_Regen_Allowed" 0 "Conventional_Charging"; -VAL_ 1068 IdleSpeedIncrease_El 1 "Yes" 0 "No"; -VAL_ 1068 Batt_Lo_SoC_B 1 "Active" 0 "Inactive"; -VAL_ 1068 PeriodicElLoad_B_Stat 1 "Active" 0 "Inactive"; -VAL_ 1068 Batt_Crit_SoC_B 1 "Active" 0 "Inactive"; -VAL_ 146 VehVert2_A_Actl 8191 "Faulty" 8190 "NoDataExists"; -VAL_ 146 VehLong2_A_Actl 8191 "Faulty" 8190 "NoDataExists"; -VAL_ 146 VehLat2_A_Actl 8191 "Faulty" 8190 "NoDataExists"; -VAL_ 146 VehVertAActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 146 VehLongAActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 146 VehLatAActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; -VAL_ 997 PersIndexCcm_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; -VAL_ 983 CmbbObjRelLong_V_Actl 1023 "Faulty" 1022 "NoDataExists"; -VAL_ 983 CmbbObjRelLat_V_Actl 511 "Faulty" 510 "NoDataExists"; -VAL_ 983 CmbbObjDistLong_L_Actl 1023 "Faulty" 1022 "NoDataExists"; -VAL_ 983 CmbbObjDistLat_L_Actl 511 "Faulty" 510 "NoDataExists"; -VAL_ 983 CmbbObjConfdnc_D_Stat 3 "High" 2 "Medium" 1 "Low" 0 "NotDetermined"; -VAL_ 983 CmbbObjColl_T_Actl 127 "Faulty" 126 "NoDataExists"; -VAL_ 983 CmbbObjClass_D_Stat 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "Unclassified_Vehicle" 5 "Bicycle" 4 "Pedestrian" 3 "Truck" 2 "Motorcycle" 1 "Vehicle" 0 "Undetermined"; -VAL_ 983 EsaEnbl_D2_Rq 3 "NotConfigured" 2 "Enabled" 1 "Pending" 0 "Disabled"; -VAL_ 980 AdbBrdr1DistRigh_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_ 980 AdbBrdr1DistLeft_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_ 980 AdbMde1_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; -VAL_ 980 AdbIntns1_D_Rq 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 980 AdbBrdr1Up_An_Rq 511 "Faulty" 510 "NoDataExists"; -VAL_ 980 AdbBrdr1Right_An_Rq 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 980 AdbBrdr1Low_An_Rq 511 "Faulty" 510 "NoDataExists"; -VAL_ 980 AdbBrdr1Left_An_Rq 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 979 HandsOffCnfm_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 979 LatCtl_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "InterventionRight" 2 "InterventionLeft" 1 "ContinuousPathFollowing" 0 "NoLateralControl"; -VAL_ 979 LatCtlRampType_D_Rq 3 "Immediately" 2 "Fast" 1 "Medium" 0 "Slow"; -VAL_ 979 LatCtlPrecision_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "Precise" 0 "Comfortable"; -VAL_ 976 SuspClkSync_No_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 976 SrpSigValid_B_Stat 1 "True" 0 "False"; -VAL_ 976 SrpHghtRight_L_Actl 511 "Faulty" 510 "NoDataExists"; -VAL_ 976 SrpHghtLeft_L_Actl 511 "Faulty" 510 "NoDataExists"; -VAL_ 976 SrpEventRight_D_Stat 3 "Faulty" 2 "Bump" 1 "Pothole" 0 "NoEvent"; -VAL_ 976 SrpEventLeft_D_Stat 3 "Faulty" 2 "Bump" 1 "Pothole" 0 "NoEvent"; -VAL_ 976 SrpDistRight_L_Actl 511 "Faulty" 510 "NoDataExists"; -VAL_ 976 SrpDistLeft_L_Actl 511 "Faulty" 510 "NoDataExists"; -VAL_ 973 TsrVl2PrmntMsgTxt_D_Rq 3 "NotUsed" 2 "ShowPermanentlyWithSupp" 1 "ShowPermanentlyWithoutSupp" 0 "DoNotShowSignPermanent"; -VAL_ 973 TsrVl1PrmntMsgTxt_D_Rq 3 "NotUsed" 2 "ShowPermanentlyWithSupp" 1 "ShowPermanentlyWithoutSupp" 0 "DoNotShowSignPermanent"; -VAL_ 973 TsrVl2RstrcMsgTxt2_D_Rq 7 "NotUsed" 6 "Time" 5 "Trailer" 4 "Snow" 3 "RainWet" 2 "NoRecognizableRestrictn" 1 "NoSpeedLimitRestrictn" 0 "Null"; -VAL_ 973 TsrVl1RstrcMsgTxt2_D_Rq 7 "NotUsed" 6 "Time" 5 "Trailer" 4 "Snow" 3 "RainWet" 2 "NoRecognizableRestrictn" 1 "NoSpeedLimitRestrictn" 0 "Null"; -VAL_ 973 TsrOvtkMsgTxt2_D_Rq 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "LimForTrucksCancelled" 9 "LimForTrucksWoQlfdRstrc" 8 "LimForTrucksWithoutRstrc" 7 "LimAllCancelled" 6 "LimAllWithRstrcTime" 5 "LimAllWithRstrcTrailer" 4 "LimAllWithRstrcSnow" 3 "LimAllWithRstrcRain" 2 "LimAllWithoutQlfdRstrc" 1 "LimAllWithoutRestriction" 0 "OvertakingAllowed"; -VAL_ 973 WwaWarn_B_Rq 1 "On" 0 "Off"; -VAL_ 973 TsrVlUnitMsgTxt_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; -VAL_ 973 TsrVLim2MsgTxt_D_Rq 255 "NoLimit" 254 "NotUsed2" 253 "NotUsed1" 252 "NotToBeDisplayed" 251 "LimitCancelled" 31 "1F_FA_Message31_250" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "Null"; -VAL_ 973 TsrVLim1MsgTxt_D_Rq 255 "NoLimit" 254 "NotUsed2" 253 "NotUsed1" 252 "NotToBeDisplayed" 251 "LimitCancelled" 31 "1F_FA_Message31_250" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "Null"; -VAL_ 973 TsrVl2StatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; -VAL_ 973 TsrVl2RstrcMsgTxt_D_Rq 3 "NotUsed" 2 "NoRecognizableRestriction" 1 "NoSpeedLimitRestriction" 0 "Null"; -VAL_ 973 TsrVl1StatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; -VAL_ 973 TsrVl1RstrcMsgTxt_D_Rq 3 "NotUsed" 2 "NoRecognizableRestriction" 1 "NoSpeedLimitRestriction" 0 "Null"; -VAL_ 973 TsrStatMsgTxt_D_Rq 7 "NotUsed" 6 "NoDataExists" 5 "TSR_Error" 4 "Available_NavigationOnly" 3 "Available_CameraOnly" 2 "Available_FusionMode" 1 "TSR_Off" 0 "Null"; -VAL_ 973 TsrOvtkStatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; -VAL_ 973 TsrOvtkMsgTxt_D_Rq 7 "LimForTrucksCancelled" 6 "LimForTrucksWoQlfdRstrc" 5 "LimForTrucksWithoutRstrc" 4 "LimAllCancelled" 3 "LimAllWithoutQlfdRstrc" 2 "LimAllWithoutRestriction" 1 "OvertakingAllowed" 0 "Null"; -VAL_ 973 TsrOswWarnMsgTxt_D_Rq 3 "NotUsed" 2 "True" 1 "False" 0 "Null"; -VAL_ 973 TsrMsgTxt_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "RecgnzdSignNotUsblForDsply" 8 "LimitedSystemPerformance" 7 "OffRoad" 6 "RegionNotSupported" 5 "CountryNotSupported" 4 "WrngNavDatIncompDatCarrier" 3 "NoNavDataAvailable" 2 "NoNavAvailableSwitchedOff" 1 "NoInformationAllOK" 0 "Null"; -VAL_ 970 LkaDrvOvrrd_D_Rq 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Level_0"; -VAL_ 970 LkaActvStats_D2_Req 7 "NotUsed" 6 "LkaIncrIntervRight" 5 "LkaSupprRight" 4 "LkaStandIntervRight" 3 "LkaSupprLeft" 2 "LkaStandIntervLeft" 1 "LkaIncrIntervLeft" 0 "LkaNoInterv"; -VAL_ 970 LaRefAng_No_Req 4095 "Fault"; -VAL_ 970 LaRampType_B_Req 1 "Quick" 0 "Smooth"; -VAL_ 970 LaCurvature_No_Calc 4095 "Fault"; -VAL_ 970 LdwActvStats_D_Req 7 "LDW_Suppress_Right_Left" 6 "Not_Used2" 5 "LDW_Suppress_Right" 4 "LDW_Warning_Right" 3 "LDW_Suppress_Left" 2 "LDW_Warning_Left" 1 "LDW_DemoVibration" 0 "LDW_Idle"; -VAL_ 970 LdwActvIntns_D_Req 3 "High" 2 "Medium" 1 "Low" 0 "None"; -VAL_ 962 AdbBrdr3DistRigh_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_ 962 AdbBrdr3DistLeft_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_ 962 AdbMde3_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; -VAL_ 962 AdbIntns3_D_Rq 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 962 AdbBrdr3Up_An_Rq 511 "Faulty" 510 "NoDataExists"; -VAL_ 962 AdbBrdr3Right_An_Rq 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 962 AdbBrdr3Low_An_Rq 511 "Faulty" 510 "NoDataExists"; -VAL_ 962 AdbBrdr3Left_An_Rq 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 961 AdbBrdr2DistRigh_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_ 961 AdbBrdr2DistLeft_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; -VAL_ 961 AdbMde2_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; -VAL_ 961 AdbIntns2_D_Rq 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 961 AdbBrdr2Up_An_Rq 511 "Faulty" 510 "NoDataExists"; -VAL_ 961 AdbBrdr2Right_An_Rq 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 961 AdbBrdr2Low_An_Rq 511 "Faulty" 510 "NoDataExists"; -VAL_ 961 AdbBrdr2Left_An_Rq 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 394 AccStopStat_D_Dsply 3 "PressResume" 2 "Stopped" 1 "ResumeReady" 0 "NoDisplay"; -VAL_ 394 AccTrgDist2_D_Dsply 15 "DIST_ACTIVE_13_Farthest" 14 "DIST_ACTIVE_12" 13 "DIST_ACTIVE_11" 12 "DIST_ACTIVE_10" 11 "DIST_ACTIVE_9" 10 "DIST_ACTIVE_8" 9 "DIST_ACTIVE_7" 8 "DIST_ACTIVE_6" 7 "DIST_ACTIVE_5" 6 "DIST_ACTIVE_4" 5 "DIST_ACTIVE_3" 4 "DIST_ACTIVE_2" 3 "DIST_ACTIVE_1_Closest" 2 "DIST_ACTIVE_No_Target" 1 "DIST_STANDBY" 0 "DIST_OFF"; -VAL_ 394 AccStopRes_B_Dsply 1 "Yes" 0 "No"; -VAL_ 394 TjaWarn_D_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "HardTakeOverLevel2" 2 "HardTakeOverLevel1" 1 "TrafficJamAssistCancel" 0 "NoWarning"; -VAL_ 394 Tja_D_Stat 7 "NotUsed_1" 6 "ActiveWarningRight" 5 "ActiveWarningLeft" 4 "ActiveInterventionRight" 3 "ActiveInterventionLeft" 2 "Active" 1 "Standby" 0 "Off"; -VAL_ 394 TjaMsgTxt_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "TurnOnAdaptCruiseControl" 2 "TrafficJamAssistSelected" 1 "TrafficJamAssistUnavailabl" 0 "NoMessage"; -VAL_ 394 IaccLamp_D_Rq 3 "NotUsed_2" 2 "NotUsed_1" 1 "DisplayIaccIcon" 0 "DoNotDisplayIaccIcon"; -VAL_ 394 AccMsgTxt_D2_Rq 15 "NotUsed_1" 14 "NCC_Enabled_Warning" 13 "IACC_TJA_Selected" 12 "ACC_TJA_Selected" 11 "IACC_Selected" 10 "Press_Brake_To_Hold" 9 "Only_Following_In_Low_Spd" 8 "TJA_Unavailable" 7 "Shift_Down" 6 "IACC_Unavailable" 5 "ACC_Selected" 4 "ACC_Overridden" 3 "Brake_Capacity_Warning" 2 "ACC_Cancelled" 1 "ACC_Unavailable" 0 "No_Text"; -VAL_ 394 FcwDeny_B_Dsply 1 "Yes" 0 "No"; -VAL_ 394 FcwMemStat_B_Actl 1 "On" 0 "Off"; -VAL_ 394 AccTGap_B_Dsply 1 "Yes" 0 "No"; -VAL_ 394 CadsAlignIncplt_B_Actl 1 "Yes" 0 "No"; -VAL_ 394 AccFllwMde_B_Dsply 1 "Yes" 0 "No"; -VAL_ 394 CadsRadrBlck_B_Actl 1 "Yes" 0 "No"; -VAL_ 394 CmbbPostEvnt_B_Dsply 1 "Yes" 0 "No"; -VAL_ 394 AccStopMde_B_Dsply 1 "Yes" 0 "No"; -VAL_ 394 FcwMemSens_D_Actl 3 "FCW_Sensitivity_3" 2 "FCW_Sensitivity_2" 1 "FCW_Sensitivity_1" 0 "Not_Used"; -VAL_ 394 FcwMsgTxt_D_Rq 7 "Undefined_3" 6 "Undefined_2" 5 "Low_Visibility" 4 "Unavailable_DueTo_LowSpeed" 3 "Available" 2 "Unavailable" 1 "Off" 0 "No_Text"; -VAL_ 394 AccWarn_D_Dsply 3 "BrakeReleaseWarn_In_StopMd" 2 "Brake_Capacity_Warning" 1 "Cancel_Warning" 0 "No_Warning"; -VAL_ 394 FcwVisblWarn_B_Rq 1 "On" 0 "Off"; -VAL_ 394 FcwAudioWarn_B_Rq 1 "On" 0 "Off"; -VAL_ 394 AccTGap_D_Dsply 7 "Undefined_2" 6 "Undefined_1" 5 "Time_Gap_5" 4 "Time_Gap_4" 3 "Time_Gap_3" 2 "Time_Gap_2" 1 "Time_Gap_1" 0 "Not_Used"; -VAL_ 394 AccMemEnbl_B_RqDrv 1 "Adaptive_Cruise" 0 "Normal_Cruise"; -VAL_ 394 FdaMem_B_Stat 1 "On" 0 "Off"; -VAL_ 391 HudBlk3_B_Rq 1 "Yes" 0 "No"; -VAL_ 391 HudBlk2_B_Rq 1 "Yes" 0 "No"; -VAL_ 391 HudBlk1_B_Rq 1 "Yes" 0 "No"; -VAL_ 391 HudFlashRate_D_Actl 3 "Unused" 2 "Flash_4Hz_50Prct_DutyCycle" 1 "On" 0 "Off"; -VAL_ 391 CmbbBrkPrchg_D_Rq 3 "Undefined" 2 "Level_2_PreCharge_Request" 1 "Level_1_PreCharge_Request" 0 "No_PreCharge_Request"; -VAL_ 391 CmbbBrkDecel_B_Rq 1 "Yes" 0 "No"; -VAL_ 391 CmbbBaSens_D_Rq 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Normal"; -VAL_ 390 AccBrkPulse_B_Rq 1 "True" 0 "False"; -VAL_ 390 AccAutoResum_D_Rq 3 "NotUsed" 2 "Active" 1 "Pending" 0 "Off"; -VAL_ 390 AccBrkPrkEl_B_Rq 1 "Yes" 0 "No"; -VAL_ 390 Cmbb_B_Enbl 1 "Yes" 0 "No"; -VAL_ 390 CmbbOvrrd_B_RqDrv 1 "Yes" 0 "No"; -VAL_ 390 CmbbDeny_B_Actl 1 "Yes" 0 "No"; -VAL_ 390 CmbbEngTqMn_B_Rq 1 "Yes" 0 "No"; -VAL_ 390 AccDeny_B_Rq 1 "Yes" 0 "No"; -VAL_ 390 AccResumEnbl_B_Rq 1 "Yes" 0 "No"; -VAL_ 390 AccCancl_B_Rq 1 "Yes" 0 "No"; -VAL_ 390 AccBrkPrchg_B_Rq 1 "Yes" 0 "No"; -VAL_ 390 AccBrkDecel_B_Rq 1 "Active" 0 "Inactive"; -VAL_ 390 AccStopStat_B_Rq 1 "Yes" 0 "No"; -VAL_ 1153 TerrMde_D_RqDrv 7 "Fail_Safe_Default" 6 "Dynamic_Mode" 5 "Rock_Crawl_Mode" 4 "Mud_Ruts_Mode" 3 "Sand_Mode" 2 "Undefined" 1 "Low_Mu_Mode" 0 "Special_Operating_Mode_Off"; -VAL_ 942 PrkAidDrvDir_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "BackwardNegative" 4 "ForwardNegative" 3 "BackwardPositive" 2 "ForwardPositive" 1 "NoMotion" 0 "DirectionNotKnown"; -VAL_ 942 PrkAidAcsyRear_D_Stat 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 942 PrkAidAcsyFront_D_Stat 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; -VAL_ 930 BalrWndwRight_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 930 BalrSnsRight_D_Falt 3 "Invalid" 2 "SystemFailure" 1 "Blocked" 0 "Clear"; -VAL_ 930 WndwPsngrRear_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 930 WndwPsngr_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 930 WndwDrvRear_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 930 WndwDrv_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 930 BalrRight_D_Stat 3 "Inhibited" 2 "Disabled" 1 "On" 0 "Off"; -VAL_ 930 BalrMdeSelRight_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 930 BalrMdeRight_D_Stat 3 "NotUsed" 2 "High" 1 "Medium" 0 "Low"; -VAL_ 930 BalrLckRight_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 930 BalrChimeRight_D_Rq 3 "NotUsed" 2 "Soft" 1 "Normal" 0 "Off"; -VAL_ 930 CamraRearOn_B_RqBalrr 1 "Active" 0 "Inactive"; -VAL_ 930 DrLckActv_B_RqBalrr 1 "Active" 0 "Null"; -VAL_ 929 BalrChimeLeft_D_Rq 3 "NotUsed" 2 "Soft" 1 "Normal" 0 "Off"; -VAL_ 929 BalrLeft_D_Stat 3 "Inhibited" 2 "Disabled" 1 "On" 0 "Off"; -VAL_ 929 BalrWndwLeft_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 929 WndwPsngrRear_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 929 WndwPsngr_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 929 WndwDrvRear_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 929 WndwDrv_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; -VAL_ 929 BalrSnsLeft_D_Falt 3 "Invalid" 2 "SystemFailure" 1 "Blocked" 0 "Clear"; -VAL_ 929 BalrMdeSelLeft_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 929 BalrMdeLeft_D_Stat 3 "NotUsed" 2 "High" 1 "Medium" 0 "Low"; -VAL_ 929 BalrLckLeft_B_Stat 1 "Enable" 0 "Disable"; -VAL_ 929 CamraRearOn_B_RqBalrl 1 "Active" 0 "Inactive"; -VAL_ 929 DrLckActv_B_RqBalrl 1 "Active" 0 "Null"; -VAL_ 402 PrkAidSwtch_D_RqMnu 1 "Pressed" 0 "Not_Pressed"; -VAL_ 402 ApaSwtch_D_RqMnu 3 "NotUsed2" 2 "NotUsed1" 1 "Pressed" 0 "Not_Pressed"; -VAL_ 402 ApaMdeStat_D_RqDrv 7 "Faulty" 6 "Off" 5 "NotUsed2" 4 "NotUsed1" 3 "POA" 2 "PPA" 1 "SAPP" 0 "Inactive"; -VAL_ 402 CamraViewSplit_B_Rq 1 "On" 0 "Off"; -VAL_ 402 CamraZoomMan_D_Rq 7 "Unknown" 6 "Invalid" 5 "Zoom_Level_V" 4 "Zoom_Level_IV" 3 "Zoom_Level_III" 2 "Zoom_Level_II" 1 "Zoom_Level_I" 0 "Off"; -VAL_ 402 CamraOvrlStat_D_Rq 1 "On" 0 "Off"; -VAL_ 402 CamraOvrlDyn_D_Rq 1 "On" 0 "Off"; -VAL_ 402 CamAutoTowbarZoom 1 "On" 0 "Off"; -VAL_ 402 DistanceBarSetting 1 "On" 0 "Off"; -VAL_ 924 DcacOut_Pw_Mx 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 924 DcacOut2_Pw_Actl 8191 "Faulty" 8190 "NoDataExists"; -VAL_ 924 DcacOut1_Pw_Actl 8191 "Faulty" 8190 "NoDataExists"; -VAL_ 924 DcacIn_Pw_Mx 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 923 DcacIn_U2_Actl 4095 "Faulty" 4094 "NoDataExists"; -VAL_ 923 DcacIn_U_Actl 4095 "Fault" 4094 "NoDataExists"; -VAL_ 923 DcacIn_I_Actl 2047 "Faulty" 2046 "NoDataExists"; -VAL_ 923 Dcac_Te_Actl 255 "Faulty" 254 "NoDataExists"; -VAL_ 922 DcacBp2BrkrOpn_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacBp1BrkrOpn_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacIpRcBrkrOpn_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacRdy_D2_Stat 3 "Faulted" 2 "RecoverableFault" 1 "Active" 0 "Idle"; -VAL_ 922 DcacOvrld_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacOverTe_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacGfci_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacErr_B_Stat 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacAcUDetct_B_Falt 1 "Faulted" 0 "NotFaulted"; -VAL_ 922 DcacRdy_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "Faulted" 4 "ProtectionTempearture" 3 "ProtectionOverload" 2 "ProtectionGfci" 1 "Active" 0 "Idle"; -VAL_ 922 DcacPlugPrsnt_B_Stat 1 "Yes" 0 "No"; -VAL_ 922 DcacClntFlw_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; -VAL_ 922 CoolFanDcac_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore b/opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore deleted file mode 100644 index 46fc4e0d88..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore +++ /dev/null @@ -1 +0,0 @@ -_*generated.dbc diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc deleted file mode 100644 index df913561de..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc +++ /dev/null @@ -1,185 +0,0 @@ -BO_ 258 STEERING: 8 XXX - SG_ STEERING_ANGLE : 5|14@0+ (0.5,-2048) [-2048|2047] "deg" XXX - SG_ STEERING_RATE : 21|14@0+ (0.5,-2048) [-2048|2047] "deg/s" XXX - SG_ STEERING_ANGLE_HP : 48|4@1+ (0.1,-0.4) [-0.4|0.4] "deg" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 264 ECM_1: 8 XXX - SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ ENGINE_TORQUE : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX - SG_ EXPECTED_ENGINE_TORQUE : 36|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 280 ECM_TRQ: 8 XXX - SG_ ENGINE_TORQ_MAX : 4|13@0+ (.25,-500) [-500|1547.5] "NM" XXX - SG_ ENGINE_TORQ_MIN : 20|13@0+ (.25,-500) [-500|1547.5] "NM" XXX - -BO_ 284 ESP_8: 8 XXX - SG_ BRK_PRESSURE : 3|12@0+ (1,0) [0|1] "" XXX - SG_ Vehicle_Stopped : 7|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_PEDAL : 19|12@0+ (1,0) [0|1] "" XXX - SG_ Vehicle_Speed : 39|16@0+ (0.0078125,0) [0|511.984375] "km/h" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 288 ECM_2: 7 XXX - SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX - SG_ ESC_TORQUE_REQ_ENABLE : 6|1@1+ (1,0) [0|0] "" XXX - SG_ TCM_TORQUE_REQ_ENABLE : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Accelerator_Position : 16|8@1+ (0.4,0) [0|100] "%" XXX - SG_ CRUISE_OVERRIDE : 31|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 47|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 55|8@0+ (1,0) [0|0] "" XXX - -BO_ 320 ESP_1: 8 XXX - SG_ Brake_State : 0|2@1+ (1,0) [0|0] "" XXX - SG_ Brake_Pedal_State : 2|2@1+ (1,0) [0|0] "" XXX - SG_ ACC_Engaged : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Enabled : 23|1@0+ (1,0) [0|1] "" XXX - SG_ Vehicle_Speed : 33|10@0+ (0.5,0) [0|511] "km/h" XXX - SG_ ACC_OFF_REQ : 39|2@0+ (1,0) [0|0] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_PRESSED_ACC : 6|1@0+ (1,0) [0|3] "" XXX - -BO_ 268 ESP_2: 8 ESC - SG_ ESC_TORQUE_REQ : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX - SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX - SG_ ESC_TORQUE_REQ_MAX : 6|1@1+ (1,0) [0|0] "" XXX - SG_ ESC_TORQUE_REQ_MIN : 7|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_TORQUE_REQ : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX - SG_ TCS_ACTIVE : 21|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_TORQUE_REQ_MAX : 22|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_BRK_PREP : 40|1@1+ (1,0) [0|0] "" XXX - SG_ DISABLE_FUEL_SHUTOFF : 47|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_REQ_ACTIVE : 48|3@1+ (1,0) [0|0] "" XXX - SG_ COLLISION_BRK_PREP : 51|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" XXX - -BO_ 344 ESP_6: 8 XXX - SG_ WHEEL_SPEED_FL : 5|14@0+ (0.5,0) [0|8191] "rpm" XXX - SG_ WHEEL_SPEED_FR : 21|14@0+ (0.5,0) [0|8191] "rpm" XXX - SG_ WHEEL_SPEED_RL : 37|14@0+ (0.5,0) [0|8191] "rpm" XXX - SG_ WHEEL_SPEED_RR : 53|14@0+ (0.5,0) [0|8191] "rpm" XXX - -BO_ 368 Transmission_Status: 8 XXX - SG_ Gear_State : 2|3@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 464 ORC_1: 8 XXX - SG_ SEATBELT_DRIVER_UNLATCHED : 13|1@0+ (1,0) [0|1] "" XXX - -BO_ 500 DAS_3: 8 XXX - SG_ ENGINE_TORQUE_REQUEST : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX - SG_ ENGINE_TORQUE_REQUEST_MAX : 7|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_STANDSTILL : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_GO : 6|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_DECEL : 19|12@0+ (0.004885,-16) [-16|4] "m/s2" XXX - SG_ ACC_AVAILABLE : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_ACTIVE : 21|1@0+ (1,0) [0|1] "" XXX - SG_ DISABLE_FUEL_SHUTOFF : 23|1@1+ (1,0) [0|0] "" XXX - SG_ GR_MAX_REQ : 32|4@1+ (1,0) [0|0] "" XXX - SG_ ACC_DECEL_REQ : 36|3@1+ (1,0) [0|0] "" XXX - SG_ ACC_FAULTED : 46|2@1+ (1,0) [0|0] "" XXX - SG_ COLLISION_BRK_PREP : 48|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_BRK_PREP : 49|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 501 DAS_4: 8 XXX - SG_ ACC_SET_SPEED_KPH : 15|8@0+ (1,0) [0|3] "km/h" XXX - SG_ ACC_SET_SPEED_MPH : 23|8@0+ (1,0) [0|3] "mph" XXX - SG_ ACC_DISTANCE_CONFIG_1 : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ACC_DISTANCE_CONFIG_2 : 41|2@0+ (1,0) [0|3] "" XXX - SG_ SPEED_DIGITAL : 63|8@0+ (1,0) [0|255] "mph" XXX - SG_ ACC_STATE : 38|3@0+ (1,0) [0|7] "" XXX - SG_ FCW_OFF : 25|2@0+ (1,0) [0|3] "" XXX - SG_ FCW_ERROR : 27|2@0+ (1,0) [0|3] "" XXX - SG_ FCW_BRAKE_ENABLED : 29|1@0+ (1,0) [0|1] "" XXX - SG_ FCW_BRAKE_DISABLED : 47|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_FAULTED : 50|1@0+ (1,0) [0|1] "" XXX - -BO_ 544 EPS_2: 8 XXX - SG_ LKAS_STATE : 23|4@0+ (1,0) [0|15] "" XXX - SG_ COLUMN_TORQUE : 2|11@0+ (1,-1024) [-1024|1023] "" XXX - SG_ TORQUE_OVERLAY_STATUS : 6|4@0+ (1,0) [0|15] "" XXX - SG_ EPS_TORQUE_MOTOR_RAW : 19|12@0+ (1,-2048) [-2048|2047] "" XXX - SG_ EPS_TORQUE_MOTOR : 34|11@0+ (1,-1024) [-1024|1023] "" XXX - SG_ LKAS_TEMPORARY_FAULT : 38|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_PARK_HAS_CONTROL_2 : 51|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 559 ECM_5: 8 XXX - SG_ Accelerator_Position : 0|8@1+ (0.4,0) [0|100] "%" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 571 CRUISE_BUTTONS: 3 XXX - SG_ ACC_Cancel : 0|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_Distance_Dec : 1|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_Accel : 2|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_Decel : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_Resume : 4|1@0+ (1,0) [0|1] "" XXX - SG_ Cruise_OnOff : 6|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_OnOff : 7|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_Distance_Inc : 8|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 625 DAS_5: 8 XXX - SG_ FCW_STATE : 2|1@1+ (1,0) [0|0] "" XXX - SG_ FCW_DISTANCE : 3|2@1+ (1,0) [0|0] "" XXX - SG_ ACCFCW_MESSAGE : 12|4@1+ (1,0) [0|0] "" XXX - SG_ SET_SPEED_KPH : 24|8@1+ (1,0) [0|250] "km/h" XXX - SG_ WHEEL_TORQUE_REQUEST : 38|15@0+ (1,-7767) [-7767|24999] "Nm" XXX - SG_ WHEEL_TORQUE_REQUEST_ACTIVE : 39|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 669 EPB_1: 3 XXX - SG_ PARKING_BRAKE_STATUS : 11|3@0+ (1,0) [0|7] "" XXX - SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 678 DAS_6: 8 XXX - SG_ LKAS_ICON_COLOR : 1|2@0+ (1,0) [0|3] "" XXX - SG_ LKAS_LANE_LINES : 19|4@0+ (1,0) [0|1] "" XXX - SG_ LKAS_ALERTS : 27|4@0+ (1,0) [0|1] "" XXX - SG_ CAR_MODEL : 15|8@0+ (1,0) [0|255] "" XXX - SG_ AUTO_HIGH_BEAM_ON : 47|1@1+ (1,0) [0|0] "" XXX - SG_ LKAS_DISABLED : 56|1@1+ (1,0) [0|0] "" XXX - -BO_ 720 BSM_1: 6 XXX - SG_ RIGHT_STATUS : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_STATUS : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 792 STEERING_LEVERS: 8 XXX - SG_ TURN_SIGNALS : 0|2@1+ (1,0) [0|3] "" XXX - SG_ HIGH_BEAM_PRESSED : 2|1@0+ (1,0) [0|3] "" XXX - -BO_ 820 BCM_1: 8 XXX - SG_ DOOR_OPEN_FL : 17|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 18|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 19|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 20|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_TRUNK : 22|1@0+ (1,0) [0|1] "" XXX - SG_ PARKING_BRAKE_SWITCH : 23|1@0+ (1,0) [0|1] "" XXX - SG_ TURN_LIGHT_LEFT : 31|1@0+ (1,0) [0|1] "" XXX - SG_ TURN_LIGHT_RIGHT : 30|1@0+ (1,0) [0|1] "" XXX - SG_ HIGH_BEAM_DISPLAY : 58|1@0+ (1,0) [0|1] "" XXX - -VAL_ 320 ACC_OFF_REQ 2 "PERMANENT" 1 "TEMPORARY" 0 "NONE" -VAL_ 368 Gear_State 4 "D" 2 "N" 1 "R" 0 "P" ; -VAL_ 669 PARKING_BRAKE_STATUS 3 "RELEASING" 2 "APPLYING" 1 "APPLIED" 0 "OFF" ; - -CM_ SG_ 258 STEERING_ANGLE_HP "Steering angle high precision"; -CM_ SG_ 264 ENGINE_TORQUE "Effective engine torque"; -CM_ SG_ 264 EXPECTED_ENGINE_TORQUE "Expected Engine Torque based on target engine speed"; -CM_ SG_ 678 LKAS_ICON_COLOR "3 is yellow, 2 is green, 1 is white, 0 is null"; -CM_ SG_ 678 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null"; -CM_ SG_ 678 LKAS_ALERTS "(0x01, 0x02) lane sense off, (0x03, 0x04, 0x06) place hands on steering wheel, 0x07 lane departure detected + place hands on steering wheel, (0x08, 0x09) lane sense unavailable + clean front windshield, 0x0b lane sense and auto high beam unavailable + clean front windshield, 0x0c lane sense unavailable + service required, (0x00, 0x05, 0x0a, 0x0d, 0x0e, 0x0f) null"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py b/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py deleted file mode 100755 index fa408f1315..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/env python3 -import os - -chrysler_to_ram = { - "_stellantis_common_ram_dt_generated.dbc": { - 258: 35, - 264: 37, - 268: 113, - 280: 181, - 284: 121, - 288: 123, - 320: 131, - 344: 139, - 368: 147, - 464: 464, - 500: 153, - 501: 232, - 544: 49, - 571: 177, - 559: 157, - 625: 163, - 669: 213, - 678: 250, - 720: 720, - 792: 792, - 820: 657, - }, - "_stellantis_common_ram_hd_generated.dbc": { - 571: 570, - 678: 629, - }, -} - -if __name__ == "__main__": - src = '_stellantis_common.dbc' - chrysler_path = os.path.dirname(os.path.realpath(__file__)) - - for out, addr_lookup in chrysler_to_ram.items(): - with open(os.path.join(chrysler_path, src), encoding='utf-8') as in_f, open(os.path.join(chrysler_path, out), 'w', encoding='utf-8') as out_f: - out_f.write(f'CM_ "Generated from {src}"\n\n') - - wrote_addrs = set() - for line in in_f.readlines(): - if line.startswith(('BO_', 'VAL_')): - sl = line.split(' ') - addr = int(sl[1]) - wrote_addrs.add(addr) - - sl[1] = str(addr_lookup.get(addr, addr)) - line = ' '.join(sl) - out_f.write(line) - - missing_addrs = set(addr_lookup.keys()) - wrote_addrs - assert len(missing_addrs) == 0, f"Missing addrs from {src}: {missing_addrs}" diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc deleted file mode 100644 index 3f4b373843..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc +++ /dev/null @@ -1,172 +0,0 @@ -CM_ "IMPORT _stellantis_common.dbc"; - -BO_ 514 SPEED_1: 8 XXX - SG_ SPEED_LEFT : 7|12@0+ (0.071028,0) [0|65535] "m/s" XXX - SG_ SPEED_RIGHT : 23|12@0+ (0.071028,0) [0|1023] "m/s" XXX - -BO_ 653 BRAKE_MODULE: 2 XXX - SG_ BRAKE_PRESSURE : 15|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|4] "" XXX - -BO_ 746 GEAR: 5 XXX - SG_ PRNDL : 2|3@0+ (1,0) [0|7] "" XXX - SG_ GEAR_CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 31|4@0+ (1,0) [0|15] "" XXX - -BO_ 736 TRIP: 8 XXX - SG_ COUNTER : 7|16@0+ (1,0) [0|65535] "Meters" XXX - SG_ COUNTER_2 : 23|16@0+ (1,0) [0|65535] "Meters" XXX - -BO_ 658 LKAS_COMMAND: 6 XXX - SG_ COUNTER : 39|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - SG_ STEERING_TORQUE : 2|11@0+ (1,-1024) [0|1] "" XXX - SG_ LKAS_CONTROL_BIT : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 705 AUTO_PARK_BUTTON: 8 XXX - SG_ AUTO_PARK_TOGGLE_2 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_PARK_TOGGLE_1 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ INCREASING_UNKNOWN : 38|7@0+ (1,0) [0|15] "" XXX - -BO_ 719 AUTO_PARK_SIGNALS_1: 8 XXX - SG_ AUTO_PARK_UNKNOWN_1 : 7|16@0+ (1,0) [0|31] "" XXX - -BO_ 671 AUTO_PARK_REQUEST: 8 XXX - SG_ AUTO_PARK_CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ AUTO_PARK_STATUS : 7|5@0+ (1,0) [0|15] "" XXX - SG_ AUTO_PARK_COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ AUTO_PARK_MODE : 22|2@0+ (1,0) [0|3] "" XXX - SG_ AUTO_PARK_CMD : 2|11@0+ (1,-1024) [0|1] "NM" XXX - -BO_ 784 AUTO_PARK_LESS_INTERESTING: 8 XXX - SG_ INCREASING_UNKNOWN : 55|8@0+ (1,0) [0|7] "" XXX - SG_ AUTO_PARK_PERPENDICULAR_2 : 61|1@0+ (1,0) [0|255] "" XXX - -BO_ 826 AUTO_PARK_SIGNALS_3: 8 XXX - SG_ AUTO_PARK_HAS_CONTROL_3 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HUMAN_HAS_CONTROL : 2|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_PARK_GEAR_1 : 27|4@0+ (1,0) [0|255] "" XXX - SG_ AUTO_PARK_GEAR_2 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ AUTO_PARK_GEAR_3 : 51|4@0+ (1,0) [0|15] "" XXX - -BO_ 332 STEERING_2: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ ENERGY_RELATED : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ STEER_ANGLE_2 : 7|13@0+ (0.3187251,-1307.888) [-360|360] "deg" XXX - -BO_ 331 BRAKE_3: 8 XXX - SG_ BRAKE_RELATED_3 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 608 PARKSENSE_SIGNAL: 8 XXX - SG_ PARKSENSE_DISABLED : 34|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ IN_REVERSE : 10|1@0+ (1,0) [0|255] "" XXX - SG_ AUTO_PARK_HAS_CONTROL_1 : 16|1@0+ (1,0) [0|255] "" XXX - SG_ HUMAN_HAS_CONTROL : 17|1@0+ (1,0) [0|3] "" XXX - -BO_ 729 LKAS_HEARTBIT: 5 XXX - SG_ LKAS_STATUS_OK : 31|16@0+ (1,0) [0|65535] "" XXX - -BO_ 257 ACCEL_RELATED_101: 5 XXX - SG_ ENERGY_OR_RPM : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 825 AUDIBLE_BEEP_339: 2 XXX - SG_ BEEP_339 : 7|16@0+ (1,0) [0|65535] "" XXX - -BO_ 168 ACCEL_RELATED_a8: 8 XXX - SG_ ACCEL_RELATED : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 270 ACCEL_RELATED_10e: 8 XXX - SG_ ACCEL_OR_RPM : 7|16@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ ELECTRIC_MOTOR : 23|16@0+ (1,0) [0|65535] "" XXX - -BO_ 291 ENERGY_RELATED_123: 8 XXX - SG_ ENERGY_GAIN_LOSS : 18|11@0- (1,0) [0|255] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ ENERGY_SMOOTHER_CURVE : 35|12@0+ (1,0) [0|2047] "" XXX - -BO_ 294 ENERGY_RELATED_126: 8 XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_126_1 : 3|12@0+ (1,0) [0|4095] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ UNKNOWN_126_2 : 35|12@0+ (1,0) [0|4095] "" XXX - SG_ ENERGY_GAIN_LOSS_NOISY : 19|12@0+ (1,0) [0|2047] "" XXX - -BO_ 308 ACCEL_GAS_134: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ ACCEL_134 : 46|7@0+ (1,0) [0|127] "" XXX - -BO_ 532 ENERGY_RELATED_214: 8 XXX - SG_ NOISY_SLOWLY_DECREASING : 16|9@0+ (1,0) [0|255] "" XXX - SG_ ENERGY_RELATED : 0|9@0+ (1,0) [0|255] "" XXX - -BO_ 655 CHARGING_MAYBE_28F: 8 XXX - SG_ CHARGING : 1|2@0+ (1,0) [0|3] "" XXX - -BO_ 660 BRAKE_RELATED_294: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_PERHAPS_294 : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 764 ACCEL_RELATED_2FC: 8 XXX - SG_ ACCEL_2FC : 13|6@0+ (1,0) [0|255] "" XXX - -BO_ 816 TRACTION_BUTTON: 8 XXX - SG_ TRACTION_OFF : 19|1@0+ (1,0) [0|3] "" XXX - SG_ TOGGLE_PARKSENSE : 52|1@0+ (1,0) [0|3] "" XXX - -BO_ 878 ACCEL_RELATED_36E: 8 XXX - SG_ ACCEL_OR_RPM_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ACCEL_OR_RPM_1 : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 324 SPEED_2: 8 XXX - SG_ SPEED_2 : 31|16@0+ (0.01,0) [0|255] "m/s" XXX - -BO_ 832 UNKNOWN_340: 8 XXX - SG_ SPEED_DIGITAL : 63|8@0+ (1,0) [0|255] "mph" XXX - -CM_ SG_ 653 BRAKE_PRESSURE "max seems to be 148"; -CM_ SG_ 746 PRNDL "5=L, 4=D, 3=N, 2=R, 1=P"; -CM_ SG_ 320 BRAKE_PRESSED_2 "Value is 5 when brake is pressed by human, 1 when ACC brake"; -CM_ SG_ 320 BRAKE_PRESSED_ACC "set when ACC brakes"; -CM_ SG_ 792 TURN_SIGNALS "1=Left, 2=Right"; -CM_ SG_ 264 ACCEL_PEDAL "not in ACC so seems to be actual pedal. Use for gasPressed"; -CM_ SG_ 544 LKAS_STATE "2 when autopark has control, 8 when is actuatable by lkas, 4 when there is a fault"; -CM_ SG_ 658 LKAS_STEERING_TORQUE "Most sent by stock system is 1024+-230. + is left. typically changes by 2 or 3 each 0.01s"; -CM_ SG_ 678 LKAS_ICON_COLOR "3 is yellow, 2 is green, 1 is white, 0 is null"; -CM_ SG_ 678 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null"; -CM_ SG_ 678 LKAS_ALERTS "(0x01, 0x02) lane sense off, (0x03, 0x04, 0x06) place hands on steering wheel, 0x07 lane departure detected + place hands on steering wheel, (0x08, 0x09) lane sense unavailable + clean front windshield, 0x0b lane sense and auto high beam unavailable + clean front windshield, 0x0c lane sense unavailable + service required, (0x00, 0x05, 0x0a, 0x0d, 0x0e, 0x0f) null"; -CM_ SG_ 705 AUTO_PARK_TOGGLE_1 "set briefly when turning on or off self-parking"; -CM_ SG_ 671 AUTO_PARK_CMD "Request Appears to be in NM"; -CM_ SG_ 671 AUTO_PARK_STATUS "1 = IDLE / NO REQUEST 9 = START REQUEST 10 = REQUEST MODE 11 = REQUEST MODE"; -CM_ SG_ 826 AUTO_PARK_GEAR_1 "Reverse=0, Forward=f"; -CM_ SG_ 826 AUTO_PARK_GEAR_2 "Reverse=0, Forward=f"; -CM_ SG_ 826 AUTO_PARK_GEAR_3 "Reverse=0, Forward=f"; -CM_ SG_ 332 STEER_ANGLE_2 "slightly lags the other steer_angle signal. also more noisy."; -CM_ SG_ 608 PARKSENSE_DISABLED "set if parksense is disabled"; -CM_ SG_ 729 LKAS_STATUS_OK "Set to 0x0820 when LKAS system is plugged in."; -CM_ SG_ 825 BEEP_339 "sent every 0.5s. 0050 is no beep. To beep send 4355 or 4155. Used by ParkSense warning."; -CM_ SG_ 270 ELECTRIC_MOTOR "0x7fff indicates electric motor not in use"; -CM_ SG_ 291 ENERGY_GAIN_LOSS "unsure what this actually is"; -CM_ SG_ 291 ENERGY_SMOOTHER_CURVE "unsure what it is, but smoother"; -CM_ SG_ 308 ACCEL_134 "only set when human presses accel pedal"; -CM_ SG_ 532 NOISY_SLOWLY_DECREASING "perhaps battery but do not know"; -CM_ SG_ 816 TRACTION_OFF "set when traction off button is enabled"; -CM_ SG_ 816 TOGGLE_PARKSENSE "sending 3000071ec0ff9000 enables or disables parksense"; -CM_ SG_ 324 SPEED_2 "signal is approx half other speeds"; -CM_ SG_ 501 ACC_SPEED_CONFIG_KPH "speed configured for ACC"; -CM_ SG_ 501 ACC_SPEED_CONFIG_MPH "speed configured for ACC"; -CM_ SG_ 501 CRUISE_STATE "may just be an icon, but seems to indicate different cruise modes: ACC and Non-ACC and engaged state for both."; -CM_ SG_ 625 SPEED "zero on non-acc drives"; - -VAL_ 501 CRUISE_STATE 0 "Off" 1 "CC On" 2 "CC Engaged" 3 "ACC On" 4 "ACC Engaged"; -VAL_ 746 PRNDL 5 "L" 4 "D" 3 "N" 2 "R" 1 "P"; -VAL_ 792 TURN_SIGNALS 2 "Right" 1 "Left"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc deleted file mode 100644 index c9be635e10..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc +++ /dev/null @@ -1,57 +0,0 @@ -CM_ "IMPORT _stellantis_common_ram_dt_generated.dbc"; - -BO_ 53 PCM_2: 8 XXX - SG_ ENG_TORQUE_REQ : 3|12@0+ (1,0) [0|7] "" XXX - SG_ ENG_TORQUE_OUT : 19|12@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - -BO_ 133 TCM_1: 8 XXX - SG_ SHIFT_PENDING : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACTUAL_GEAR : 11|4@0+ (1,0) [0|15] "" XXX - SG_ DESIRED_GEAR : 15|4@0+ (1,0) [0|1] "" XXX - SG_ TC_LOCKED : 17|1@1+ (1,0) [0|0] "" XXX - SG_ OUTPUT_SPEED : 31|16@0+ (1,0) [0|65534] "rpm" XXX - SG_ INPUT_SPEED : 47|16@0+ (1,0) [0|65534] "rpm" XXX - SG_ OUTPUT_SPEED_SIGN : 57|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 61|4@0+ (1,0) [0|15] "" XXX - -BO_ 135 ABS_2: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX - SG_ DRIVER_BRAKE : 15|8@0+ (1,0) [0|1] "" XXX - -BO_ 137 ESP_4: 8 XXX - SG_ Yaw_Rate : 7|16@0+ (0.01,-327.68) [-327.68|327.66] "deg/s" XXX - SG_ Acceleration : 32|8@1+ (0.08,-10.24) [-10.24|10.08] "m/s2" XXX - -BO_ 164 EPS_3: 8 XXX - SG_ DASM_FAULT : 34|1@0+ (1,0) [0|1] "" XXX - SG_ Activation_Status : 48|3@1+ (1,0) [0|1] "" XXX - SG_ Driver_Override : 35|1@0+ (1,0) [0|1] "" XXX - SG_ Hands_on_Wheel : 51|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 166 LKAS_COMMAND: 8 XXX - SG_ STEERING_TORQUE : 10|11@0+ (1,-1024) [0|1] "" XXX - SG_ LKAS_CONTROL_BIT : 24|3@1+ (1,0) [0|1] "" XXX - SG_ DASM_FAULT : 51|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 221 Center_Stack_1: 8 XXX - SG_ LKAS_Button : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Traction_Button : 54|1@0+ (1,0) [0|1] "" XXX - -BO_ 650 Center_Stack_2: 8 XXX - SG_ LKAS_Button : 57|1@1+ (1,0) [0|0] "" XXX - - -CM_ SG_ 133 ACTUAL_GEAR "0xd = P, 0x1-8 = D (actual gear), 0xb = R or N?? TODO find R vs N"; -CM_ SG_ 153 ACC_Engaged "SENT BY FORWARD CAMERA 1 = ACTIVE, 3 = ENGAGED, 0 = DISENGAGED/OFF"; -CM_ SG_ 166 LKAS_CONTROL_BIT "0=IDLE, 1=HAS 2=LKAS 3=ABSD, 4=TJA, 7=SNA"; -CM_ SG_ 250 Auto_High_Beam "1 = HIGH BEAMS OK 0 = HIGH BEAMS OFF "; -CM_ SG_ 250 LKAS_LANE_LINES "9 = LEFT CAUTION, 11 = VERY LEFT CAUTION 10 = RIGHT CAUTION, 14 = VERY RIGHT, 4 = NO LINES DETECTED, 3 = LINES DETECTED, SYSTEM ACTIVE"; -CM_ SG_ 464 Driver_Seatbelt_Status "1 unbuckled 0 buckled"; -CM_ SG_ 792 High_Beam_Lever_Status "1 is high beam, 0 reg"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc deleted file mode 100644 index 373c041667..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc +++ /dev/null @@ -1,17 +0,0 @@ -CM_ "IMPORT _stellantis_common_ram_hd_generated.dbc"; - -BO_ 545 EPS_3: 8 XXX - SG_ DASM_FAULT : 34|1@0+ (1,0) [0|1] "" XXX - SG_ Activation_Status : 48|3@1+ (1,0) [0|1] "" XXX - SG_ Driver_Override : 35|1@0+ (1,0) [0|1] "" XXX - SG_ Hands_on_Wheel : 51|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 630 LKAS_COMMAND: 8 XXX - SG_ STEERING_TORQUE : 10|11@0+ (1,-1024) [0|1] "" XXX - SG_ LKAS_CONTROL_BIT : 24|3@1+ (1,0) [0|1] "" XXX - SG_ DASM_FAULT : 51|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - diff --git a/opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh b/opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh deleted file mode 100755 index 4732a854e5..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh +++ /dev/null @@ -1,2845 +0,0 @@ -#!/bin/bash - -OUT_FILENAME="../../FORD_CADS_64.dbc" - - -build_bo(){ -id=$1 -# bo=$(($id + 287)) -bo=$(expr $id + 287) - -len=64 -if [ "$id" = "22" ]; then - len=24 -fi - -cat <> ${OUT_FILENAME} -BO_ ${bo} MRR_Detection_0${id}: ${len} MRR -EOF - -build_bo_segment $id "01" -build_bo_segment $id "02" -build_bo_segment $id "03" -if [ "$id" != "22" ]; then - build_bo_segment $id "04" - build_bo_segment $id "05" - build_bo_segment $id "06" -fi -echo "" >> ${OUT_FILENAME} - -} - -build_bo_segment(){ - id=$1 - seg=$2 - base=$((($2 - 1)*72)) -cat <> ${OUT_FILENAME} - SG_ CAN_DET_CONFID_AZIMUTH_${id}_${seg} : $(expr $base + 33)|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_${id}_${seg} : $(expr $base + 56)|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_${id}_${seg} : $(expr $base + 48)|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_${id}_${seg} : $(expr $base + 49)|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_${id}_${seg} : $(expr $base + 0)|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_${id}_${seg} : $(expr $base + 47)|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_${id}_${seg} : $(expr $base + 31)|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_${id}_${seg} : $(expr $base + 15)|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_${id}_${seg} : $(expr $base + 7)|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_${id}_${seg} : $(expr $base + 17)|2@0+ (1,0) [0|3] "" IFV_VFP -EOF -} - - -build_ba(){ -id=$1 -# bo=$(($id + 287)) -ba=$(expr $id + 287) - -len=64 -if [ "$id" = "22" ]; then - len=24 -fi - -cat <> ${OUT_FILENAME} -BA_ "GenMsgSendType" BO_ ${ba} 1; -BA_ "GenMsgILSupport" BO_ ${ba} 1; -BA_ "GenMsgNrOfRepetition" BO_ ${ba} 0; -BA_ "GenMsgCycleTime" BO_ ${ba} 0; -BA_ "NetworkInitialization" BO_ ${ba} 0; -BA_ "GenMsgDelayTime" BO_ ${ba} 0; -EOF - -build_ba_segment $ba $id "01" -build_ba_segment $ba $id "02" -build_ba_segment $ba $id "03" -if [ "$id" != "22" ]; then - build_ba_segment $ba $id "04" - build_ba_segment $ba $id "05" - build_ba_segment $ba $id "06" -fi - -} - -build_ba_segment(){ - ba=$1 - id=$2 - seg=$3 - -cat <> ${OUT_FILENAME} -BA_ "GenSigVtEn" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} "CAN_DET_CONFID_AZIMUTH_${id}_${seg}"; -BA_ "GenSigVtName" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} "CAN_DET_CONFID_AZIMUTH_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} "CAN_DET_CONFID_AZIMUTH_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_SUPER_RES_TARGET_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_SUPER_RES_TARGET_${id}_${seg} "CAN_DET_SUPER_RES_TARGET_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_ND_TARGET_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_ND_TARGET_${id}_${seg} "CAN_DET_ND_TARGET_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_HOST_VEH_CLUTTER_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_HOST_VEH_CLUTTER_${id}_${seg} "CAN_DET_HOST_VEH_CLUTTER_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_VALID_LEVEL_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_VALID_LEVEL_${id}_${seg} "CAN_DET_VALID_LEVEL_${id}_${seg}"; -BA_ "GenSigStartValue" SG_ ${ba} CAN_DET_AZIMUTH_${id}_${seg} 0; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_AZIMUTH_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_AZIMUTH_${id}_${seg} "CAN_DET_AZIMUTH_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_RANGE_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_RANGE_${id}_${seg} "CAN_DET_RANGE_${id}_${seg}"; -BA_ "GenSigStartValue" SG_ ${ba} CAN_DET_RANGE_RATE_${id}_${seg} 0; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_RANGE_RATE_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_RANGE_RATE_${id}_${seg} "CAN_DET_RANGE_RATE_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_DET_AMPLITUDE_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_DET_AMPLITUDE_${id}_${seg} "CAN_DET_AMPLITUDE_${id}_${seg}"; -BA_ "GenSigSendType" SG_ ${ba} CAN_SCAN_INDEX_2LSB_${id}_${seg} 0; -BA_ "GenSigCmt" SG_ ${ba} CAN_SCAN_INDEX_2LSB_${id}_${seg} "CAN_SCAN_INDEX_2LSB_${id}_${seg}"; -EOF -} - -build_val(){ -id=$1 -# bo=$(($id + 287)) -val=$(expr $id + 287) - -cat <> ${OUT_FILENAME} -VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -EOF -if [ "$id" != "22" ]; then -cat <> ${OUT_FILENAME} -VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -EOF -fi - -} - - -cat < ${OUT_FILENAME} -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: -BU_: MRR -BO_ 1073741824 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX - SG_ New_Signal_943 : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ CAN_SENSOR_VANGLE_OFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_SENSOR_FOV_VER : 0|8@0+ (1,0) [0|255] "deg" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE_QF : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE_REF : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_AUTO_ALIGN_VANGLE : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_MMIC_Temp4 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_MMIC_Temp3 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_MMIC_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_Processor_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX - SG_ CAN_CHECKSUM : 0|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ CAN_COUNTER : 0|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_VEHICLE_MODE : 0|4@0+ (1,0) [0|15] "" Vector__XXX - SG_ CAN_USC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_USC_CAL_VER_MINOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_SMC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX - SG_ CAN_HW_VERSION : 0|32@0+ (1,0) [0|4.29497e+09] "" Vector__XXX - SG_ CAN_FAC_TGT_MTG_SPACE_VER : 0|8@0+ (1,-128) [-128|127] "cm" Vector__XXX - SG_ CAN_ANGLE_MISALIGNMENT_VER : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX - SG_ CAN_ANGLE_MOUNTING_VOFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX - SG_ CAN_LATCH_FAULTS : 0|64@0+ (1,0) [0|100] "" Vector__XXX - SG_ CAN_ACTIVE_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX - SG_ CAN_HISTORY_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX - SG_ CAN_SERV_ALIGN_ENABLE : 0|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ CAN_LONG_MOUNTING_OFFSET : 0|8@0+ (0.015625,-2) [-2|1.98438] "" Vector__XXX - SG_ CAN_BEAMWIDTH_VERT : 0|7@0+ (0.125,0) [0|15.875] "deg" Vector__XXX - SG_ CAN_VEHICLE_SPEED_CALC_QF : 0|2@0+ (1,0) [0|3] "" Vector__XXX - -BO_ 34 Active_Fault_Latched_2: 8 MRR - SG_ IPMA_PCAN_DataRangeCheck : 4|1@1+ (1,0) [0|1] "" External_Tool - SG_ IPMA_PCAN_MissingMsg : 3|1@1+ (1,0) [0|1] "" External_Tool - SG_ VINSignalCompareFailure : 2|1@1+ (1,0) [0|1] "" External_Tool - SG_ ModuleNotConfiguredError : 1|1@1+ (1,0) [0|1] "" External_Tool - SG_ CarCfgNotConfiguredError : 0|1@1+ (1,0) [0|1] "" External_Tool - -BO_ 33 Active_Fault_Latched_1: 8 MRR - SG_ Active_Flt_Latched_byte7_bit7 : 63|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit6 : 62|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit5 : 61|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte7_bit4 : 60|1@1+ (1,0) [0|1] "" External_Tool - SG_ ARMtoDSPChksumFault : 59|1@1+ (1,0) [0|1] "" External_Tool - SG_ DSPtoArmChksumFault : 58|1@1+ (1,0) [0|1] "" External_Tool - SG_ HostToArmChksumFault : 57|1@1+ (1,0) [0|1] "" External_Tool - SG_ ARMtoHostChksumFault : 56|1@1+ (1,0) [0|1] "" External_Tool - SG_ LoopBWOutOfRange : 55|1@1+ (1,0) [0|1] "" External_Tool - SG_ DSPOverrunFault : 54|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte6_bit5 : 53|1@1+ (1,0) [0|1] "" External_Tool - SG_ TuningSensitivityFault : 52|1@1+ (1,0) [0|1] "" External_Tool - SG_ SaturatedTuningFreqFault : 51|1@1+ (1,0) [0|1] "" External_Tool - SG_ LocalOscPowerFault : 50|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterPowerFault : 49|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte6_bit0 : 48|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit7 : 47|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit6 : 46|1@1+ (1,0) [0|1] "" External_Tool - SG_ XCVRDeviceSPIFault : 45|1@1+ (1,0) [0|1] "" External_Tool - SG_ FreqSynthesizerSPIFault : 44|1@1+ (1,0) [0|1] "" External_Tool - SG_ AnalogConverterDevicSPIFault : 43|1@1+ (1,0) [0|1] "" External_Tool - SG_ SidelobeBlockage : 42|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte5_bit1 : 41|1@1+ (1,0) [0|1] "" External_Tool - SG_ MNRBlocked : 40|1@1+ (1,0) [0|1] "" External_Tool - SG_ ECUTempHighFault : 39|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterTempHighFault : 38|1@1+ (1,0) [0|1] "" External_Tool - SG_ AlignmentRoutineFailedFault : 37|1@1+ (1,0) [0|1] "" External_Tool - SG_ UnreasonableRadarData : 36|1@1+ (1,0) [0|1] "" External_Tool - SG_ MicroprocessorTempHighFault : 35|1@1+ (1,0) [0|1] "" External_Tool - SG_ VerticalAlignmentOutOfRange : 34|1@1+ (1,0) [0|1] "" External_Tool - SG_ HorizontalAlignmentOutOfRange : 33|1@1+ (1,0) [0|1] "" External_Tool - SG_ FactoryAlignmentMode : 32|1@1+ (1,0) [0|1] "" External_Tool - SG_ BatteryLowFault : 31|1@1+ (1,0) [0|1] "" External_Tool - SG_ BatteryHighFault : 30|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_1p25SupplyOutOfRange : 29|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte3_bit4 : 28|1@1+ (1,0) [0|1] "" External_Tool - SG_ ThermistorOutOfRange : 27|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_3p3DACSupplyOutOfRange : 26|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_3p3RAWSupplyOutOfRange : 25|1@1+ (1,0) [0|1] "" External_Tool - SG_ v_5_SupplyOutOfRange : 24|1@1+ (1,0) [0|1] "" External_Tool - SG_ TransmitterIDFault : 23|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit6 : 22|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit5 : 21|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit4 : 20|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit3 : 19|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte2_bit2 : 18|1@1+ (1,0) [0|1] "" External_Tool - SG_ PCANMissingMsgFault : 17|1@1+ (1,0) [0|1] "" External_Tool - SG_ PCANBusOff : 16|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit7 : 15|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit6 : 14|1@1+ (1,0) [0|1] "" External_Tool - SG_ InstructionSetCheckFault : 13|1@1+ (1,0) [0|1] "" External_Tool - SG_ StackOverflowFault : 12|1@1+ (1,0) [0|1] "" External_Tool - SG_ WatchdogFault : 11|1@1+ (1,0) [0|1] "" External_Tool - SG_ PLLLockFault : 10|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte1_bit1 : 9|1@1+ (1,0) [0|1] "" External_Tool - SG_ RAMMemoryTestFault : 8|1@1+ (1,0) [0|1] "" External_Tool - SG_ USCValidationFault : 7|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit6 : 6|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit5 : 5|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit4 : 4|1@1+ (1,0) [0|1] "" External_Tool - SG_ Active_Flt_Latched_byte0_bit3 : 3|1@1+ (1,0) [0|1] "" External_Tool - SG_ KeepAliveChecksumFault : 2|1@1+ (1,0) [0|1] "" External_Tool - SG_ ProgramCalibrationFlashChecksum : 1|1@1+ (1,0) [0|1] "" External_Tool - SG_ ApplicationFlashChecksumFault : 0|1@1+ (1,0) [0|1] "" External_Tool - -BO_ 500 XCP_MRR_DAQ_RESP: 8 MRR - SG_ MRR_xcp_daq_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_daq_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 499 XCP_MRR_DTO_RESP: 8 MRR - SG_ MRR_xcp_dto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_dto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 497 XCP_MRR_CTO_RESP: 8 MRR - SG_ MRR_xcp_cto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ MRR_xcp_cto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 1900 Ford_Diag_Resp_Phys: 8 MRR - SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467e+19] "" IFV_Host - -BO_ 261 MRR_Status_SerialNumber: 8 MRR - SG_ CAN_SEQUENCE_NUMBER : 55|16@0+ (1,0) [0|65535] "" External_Tool - SG_ CAN_SERIAL_NUMBER : 7|40@0+ (1,0) [0|1.09951e+12] "" External_Tool - -BO_ 264 MRR_Status_SwVersion: 8 MRR - SG_ CAN_PBL_Field_Revision : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_PBL_Promote_Revision : 39|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Field_Revision : 23|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Promote_Revision : 15|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_SW_Release_Revision : 7|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_PBL_Release_Revision : 31|8@0+ (1,0) [0|255] "" External_Tool - -BO_ 373 MRR_Header_SensorPosition: 8 MRR - SG_ CAN_SENSOR_POLARITY : 55|1@0+ (1,0) [0|1] "" External_Tool - SG_ CAN_SENSOR_LAT_OFFSET : 39|16@0+ (0.01,0) [0|655.35] "cm" External_Tool - SG_ CAN_SENSOR_LONG_OFFSET : 23|16@0+ (0.01,0) [0|655.35] "cm" External_Tool - SG_ CAN_SENSOR_HANGLE_OFFSET : 7|8@0+ (0.0625,-8) [-8|7.9375] "deg" External_Tool - -BO_ 372 MRR_Header_SensorCoverage: 8 MRR - SG_ CAN_SENSOR_FOV_HOR : 39|8@0+ (1,0) [0|255] "deg" IFV_VFP - SG_ CAN_DOPPLER_COVERAGE : 23|8@0+ (1,-128) [-128|127] "m/s" IFV_VFP - SG_ CAN_RANGE_COVERAGE : 7|8@0+ (1,0) [0|255] "m" IFV_VFP - -BO_ 371 MRR_Header_AlignmentState: 8 MRR - SG_ CAN_AUTO_ALIGN_HANGLE_QF : 13|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_ALIGNMENT_STATUS : 51|4@0+ (1,0) [0|11] "" IFV_VFP - SG_ CAN_ALIGNMENT_STATE : 55|3@0+ (1,0) [0|7] "" IFV_VFP - SG_ CAN_AUTO_ALIGN_HANGLE_REF : 11|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP - SG_ CAN_AUTO_ALIGN_HANGLE : 7|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP - -BO_ 369 MRR_Header_Timestamps: 8 MRR - SG_ CAN_DET_TIME_SINCE_MEAS : 39|11@0+ (0.1,0) [0|204.7] "ms" IFV_Host - SG_ CAN_SENSOR_TIME_STAMP : 7|32@0+ (0.1,0) [0|4.29497e+08] "ms" IFV_VFP - -BO_ 368 MRR_Header_InformationDetections: 8 MRR - SG_ CAN_ALIGN_UPDATES_DONE : 55|16@0+ (1,0) [0|65535] "" IFV_VFP - SG_ CAN_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" IFV_VFP - SG_ CAN_NUMBER_OF_DET : 47|8@0+ (1,0) [0|255] "" External_Tool - SG_ CAN_LOOK_ID : 23|2@0+ (1,0) [0|3] "" External_Tool - SG_ CAN_LOOK_INDEX : 7|16@0+ (1,0) [0|65535] "" External_Tool - -BO_ 265 MRR_Status_Temp_Volt: 8 MRR - SG_ CAN_BATT_VOLTS : 63|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_1_25_V : 55|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_5_V : 47|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_3_3_V_RAW : 31|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_3_3_V_DAC : 15|8@0+ (0.08,0) [0|20.4] "V" External_Tool - SG_ CAN_MMIC_Temp1 : 39|8@0+ (1,-50) [-50|205] "C" External_Tool - SG_ CAN_Processor_Thermistor : 23|8@0+ (1,-50) [-50|205] "C" External_Tool - SG_ CAN_Processor_Temp1 : 7|8@0+ (1,-50) [-50|205] "C" External_Tool - -EOF - -build_bo "04" - -cat <> ${OUT_FILENAME} -BO_ 351 MRR_Detection_064: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_64 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_64 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_64 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_64 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_64 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_64 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_64 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_64 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_64 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_64 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 350 MRR_Detection_063: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_63 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_63 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_63 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_63 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_63 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_63 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_63 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_63 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_63 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_63 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 349 MRR_Detection_062: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_62 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_62 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_62 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_62 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_62 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_62 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_62 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_62 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_62 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_62 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 348 MRR_Detection_061: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_61 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_61 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_61 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_61 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_61 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_61 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_61 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_61 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_61 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_61 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 347 MRR_Detection_060: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_60 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_60 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_60 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_60 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_60 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_60 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_60 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_60 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_60 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_60 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 346 MRR_Detection_059: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_59 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_59 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_59 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_59 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_59 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_59 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_59 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_59 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_59 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_59 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 345 MRR_Detection_058: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_58 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_58 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_58 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_58 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_58 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_58 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_58 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_58 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_58 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_58 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 344 MRR_Detection_057: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_57 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_57 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_57 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_57 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_57 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_57 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_57 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_57 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_57 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_57 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 343 MRR_Detection_056: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_56 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_56 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_56 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_56 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_56 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_56 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_56 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_56 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_56 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_56 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 342 MRR_Detection_055: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_55 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_55 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_55 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_55 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_55 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_55 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_55 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_55 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_55 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_55 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 335 MRR_Detection_048: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_48 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_48 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_48 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_48 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_48 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_48 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_48 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_48 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_48 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_48 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 334 MRR_Detection_047: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_47 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_47 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_47 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_47 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_47 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_47 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_47 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_47 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_47 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_47 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 333 MRR_Detection_046: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_46 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_46 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_46 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_46 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_46 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_46 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_46 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_46 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_46 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_46 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 332 MRR_Detection_045: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_45 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_45 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_45 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_45 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_45 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_45 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_45 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_45 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_45 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_45 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 331 MRR_Detection_044: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_44 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_44 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_44 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_44 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_44 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_44 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_44 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_44 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_44 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_44 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 330 MRR_Detection_043: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_43 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_43 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_43 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_43 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_43 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_43 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_43 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_43 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_43 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_43 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 329 MRR_Detection_042: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_42 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_42 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_42 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_42 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_42 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_42 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_42 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_42 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_42 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_42 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 328 MRR_Detection_041: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_41 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_41 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_41 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_41 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_41 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_41 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_41 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_41 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_41 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_41 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 327 MRR_Detection_040: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_40 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_40 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_40 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_40 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_40 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_40 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_40 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_40 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_40 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_40 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 325 MRR_Detection_038: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_38 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_38 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_38 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_38 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_38 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_38 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_38 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_38 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_38 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_38 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 324 MRR_Detection_037: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_37 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_37 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_37 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_37 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_37 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_37 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_37 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_37 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_37 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_37 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 323 MRR_Detection_036: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_36 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_36 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_36 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_36 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_36 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_36 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_36 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_36 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_36 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_36 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 322 MRR_Detection_035: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_35 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_35 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_35 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_35 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_35 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_35 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_35 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_35 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_35 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_35 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 321 MRR_Detection_034: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_34 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_34 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_34 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_34 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_34 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_34 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_34 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_34 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_34 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_34 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 320 MRR_Detection_033: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_33 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_33 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_33 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_33 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_33 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_33 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_33 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_33 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_33 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_33 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 319 MRR_Detection_032: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_32 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_32 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_32 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_32 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_32 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_32 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_32 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_32 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_32 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_32 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 318 MRR_Detection_031: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_31 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_31 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_31 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_31 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_31 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_31 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_31 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_31 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_31 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_31 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 317 MRR_Detection_030: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_30 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_30 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_30 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_30 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_30 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_30 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_30 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_30 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_30 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_30 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 316 MRR_Detection_029: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_29 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_29 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_29 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_29 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_29 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_29 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_29 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_29 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_29 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_29 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 314 MRR_Detection_027: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_27 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_27 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_27 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_27 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_27 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_27 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_27 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_27 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_27 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_27 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 313 MRR_Detection_026: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_26 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_26 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_26 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_26 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_26 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_26 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_26 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_26 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_26 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_26 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 312 MRR_Detection_025: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_25 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_25 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_25 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_25 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_25 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_25 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_25 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_25 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_25 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_25 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 311 MRR_Detection_024: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_24 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_24 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_24 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_24 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_24 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_24 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_24 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_24 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_24 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_24 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 310 MRR_Detection_023: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_23 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_23 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_23 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_23 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_23 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_23 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_23 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_23 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_23 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_23 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -EOF - -build_bo "22" -build_bo "21" -build_bo "20" -build_bo "19" -build_bo "18" - -cat <> ${OUT_FILENAME} -BO_ 341 MRR_Detection_054: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_54 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_54 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_54 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_54 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_54 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_54 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_54 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_54 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_54 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_54 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 340 MRR_Detection_053: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_53 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_53 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_53 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_53 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_53 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_53 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_53 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_53 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_53 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_53 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 339 MRR_Detection_052: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_52 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_52 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_52 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_52 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_52 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_52 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_52 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_52 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_52 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_52 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 338 MRR_Detection_051: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_51 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_51 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_51 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_51 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_51 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_51 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_51 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_51 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_51 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_51 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 337 MRR_Detection_050: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_50 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_50 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_50 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_50 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_50 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_50 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_50 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_50 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_50 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_50 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 336 MRR_Detection_049: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_49 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_49 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_49 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_49 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_49 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_49 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_49 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_49 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_49 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_49 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 326 MRR_Detection_039: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_39 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_39 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_39 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_39 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_39 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_39 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_39 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_39 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_39 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_39 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -BO_ 315 MRR_Detection_028: 8 MRR - SG_ CAN_DET_CONFID_AZIMUTH_28 : 33|2@0+ (1,0) [0|3] "" IFV_VFP - SG_ CAN_DET_SUPER_RES_TARGET_28 : 56|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_ND_TARGET_28 : 48|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_HOST_VEH_CLUTTER_28 : 49|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_VALID_LEVEL_28 : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_DET_AZIMUTH_28 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP - SG_ CAN_DET_RANGE_28 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP - SG_ CAN_DET_RANGE_RATE_28 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP - SG_ CAN_DET_AMPLITUDE_28 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP - SG_ CAN_SCAN_INDEX_2LSB_28 : 17|2@0+ (1,0) [0|3] "" IFV_VFP - -EOF - -build_bo "17" -build_bo "16" -build_bo "15" -build_bo "14" -build_bo "13" -build_bo "12" -build_bo "11" -build_bo "10" -build_bo "09" -build_bo "08" -build_bo "07" -build_bo "06" -build_bo "05" -build_bo "03" -build_bo "02" - -cat <> ${OUT_FILENAME} -BO_ 256 MRR_Status_CANVersion: 8 MRR - SG_ CAN_USC_SECTION_COMPATIBILITY : 23|16@0+ (1,0) [0|65535] "" External_Tool - SG_ CAN_PCAN_MINOR_MRR : 7|8@0+ (1,0) [0|255] "" IFV_VFP - SG_ CAN_PCAN_MAJOR_MRR : 15|8@0+ (1,0) [0|255] "" IFV_VFP - -BO_ 257 MRR_Status_Radar: 8 MRR - SG_ CAN_INTERFERENCE_TYPE : 11|2@0+ (1,0) [0|3] "" IFV_Host - SG_ CAN_RECOMMEND_UNCONVERGE : 9|1@0+ (1,0) [0|1] "" IFV_Host - SG_ CAN_BLOCKAGE_SIDELOBE_FILTER_VAL : 15|4@0+ (1,0) [0|15] "" IFV_Host - SG_ CAN_RADAR_ALIGN_INCOMPLETE : 8|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_BLOCKAGE_SIDELOBE : 4|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_BLOCKAGE_MNR : 5|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_EXT_COND_NOK : 1|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_ALIGN_OUT_RANGE : 2|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_ALIGN_NOT_START : 0|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_OVERHEAT_ERROR : 3|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_RADAR_NOT_OP : 6|1@0+ (1,0) [0|1] "" IFV_VFP - SG_ CAN_XCVR_OPERATIONAL : 7|1@0+ (1,0) [0|1] "" IFV_VFP - -EOF - -build_bo "01" - -cat <> ${OUT_FILENAME} -BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; -BA_DEF_ SG_ "CrossOver_LIN" ENUM "No","Yes","No","Yes"; -BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes","No","Yes","No","Yes"; -BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ SG_ "GenSigTimeoutTime_RCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_OCS" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_CCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_IPMA" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_SCCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; -BA_DEF_ SG_ "GenSigTimeoutTime_Generic_BCM" INT 0 100000; -BA_DEF_ BO_ "NmMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "TpTxIndex" INT 0 255; -BA_DEF_ BO_ "DiagState" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "TpApplType" STRING ; -BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "Mulitplexer" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; -BA_DEF_ BO_ "GenMsgHandlingTypeDoc" STRING ; -BA_DEF_ BO_ "GenMsgHandlingTypeCode" STRING ; -BA_DEF_ BO_ "GenMsgMarked" STRING ; -BA_DEF_ SG_ "GenSigMarked" STRING ; -BA_DEF_ SG_ "GenSigVtIndex" STRING ; -BA_DEF_ SG_ "GenSigVtName" STRING ; -BA_DEF_ SG_ "GenSigVtEn" STRING ; -BA_DEF_ SG_ "GenSigSNA" STRING ; -BA_DEF_ SG_ "GenSigCmt" STRING ; -BA_DEF_ BO_ "GenMsgCmt" STRING ; -BA_DEF_ SG_ "GenSigSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; -BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; -BA_DEF_ SG_ "GenSigMissingSourceValue" INT 0 1e+09; -BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes"; -BA_DEF_ SG_ "GenSigStartValue" INT 0 1e+09; -BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes"; -BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BO_ "GenMsgSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; -BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; -BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; -BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; -BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; -BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; -BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes"; -BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes"; -BA_DEF_ BU_ "ILUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes"; -BA_DEF_ BU_ "PowerType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes","Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; -BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; -BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; -BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; -BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; -BA_ "GenMsgCycleTime" BO_ 34 1000; -BA_ "GenMsgSendType" BO_ 34 0; -BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; -BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; -BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; -BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; -BA_ "GenSigVtEn" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; -BA_ "GenSigVtName" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; -BA_ "GenSigVtEn" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; -BA_ "GenSigVtName" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; -BA_ "GenSigVtEn" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; -BA_ "GenSigVtName" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; -BA_ "GenMsgCycleTime" BO_ 33 1000; -BA_ "GenMsgSendType" BO_ 33 0; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; -BA_ "GenSigVtEn" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; -BA_ "GenSigVtName" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; -BA_ "GenSigVtEn" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; -BA_ "GenSigVtName" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; -BA_ "GenSigVtEn" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; -BA_ "GenSigVtName" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; -BA_ "GenSigVtEn" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; -BA_ "GenSigVtName" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; -BA_ "GenSigVtEn" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; -BA_ "GenSigVtName" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 DSPOverrunFault "DSPOverrunFault"; -BA_ "GenSigVtName" SG_ 33 DSPOverrunFault "DSPOverrunFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; -BA_ "GenSigVtEn" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; -BA_ "GenSigVtName" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; -BA_ "GenSigVtEn" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; -BA_ "GenSigVtName" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; -BA_ "GenSigVtEn" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; -BA_ "GenSigVtName" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; -BA_ "GenSigVtEn" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; -BA_ "GenSigVtEn" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; -BA_ "GenSigVtName" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; -BA_ "GenSigVtEn" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; -BA_ "GenSigVtName" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; -BA_ "GenSigVtEn" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; -BA_ "GenSigVtName" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; -BA_ "GenSigVtEn" SG_ 33 SidelobeBlockage "SidelobeBlockage"; -BA_ "GenSigVtName" SG_ 33 SidelobeBlockage "SidelobeBlockage"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; -BA_ "GenSigVtEn" SG_ 33 MNRBlocked "MNRBlocked"; -BA_ "GenSigVtName" SG_ 33 MNRBlocked "MNRBlocked"; -BA_ "GenSigVtEn" SG_ 33 ECUTempHighFault "ECUTempHighFault"; -BA_ "GenSigVtName" SG_ 33 ECUTempHighFault "ECUTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; -BA_ "GenSigVtName" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; -BA_ "GenSigVtEn" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; -BA_ "GenSigVtName" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; -BA_ "GenSigVtEn" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; -BA_ "GenSigVtName" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; -BA_ "GenSigVtEn" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; -BA_ "GenSigVtName" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; -BA_ "GenSigVtName" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; -BA_ "GenSigVtName" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; -BA_ "GenSigVtEn" SG_ 33 BatteryLowFault "BatteryLowFault"; -BA_ "GenSigVtName" SG_ 33 BatteryLowFault "BatteryLowFault"; -BA_ "GenSigVtEn" SG_ 33 BatteryHighFault "BatteryHighFault"; -BA_ "GenSigVtName" SG_ 33 BatteryHighFault "BatteryHighFault"; -BA_ "GenSigVtEn" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; -BA_ "GenSigVtEn" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; -BA_ "GenSigVtName" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; -BA_ "GenSigVtName" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; -BA_ "GenSigVtEn" SG_ 33 TransmitterIDFault "TransmitterIDFault"; -BA_ "GenSigVtName" SG_ 33 TransmitterIDFault "TransmitterIDFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; -BA_ "GenSigVtEn" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; -BA_ "GenSigVtName" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; -BA_ "GenSigVtEn" SG_ 33 PCANBusOff "PCANBusOff"; -BA_ "GenSigVtName" SG_ 33 PCANBusOff "PCANBusOff"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; -BA_ "GenSigVtEn" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; -BA_ "GenSigVtName" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; -BA_ "GenSigVtEn" SG_ 33 StackOverflowFault "StackOverflowFault"; -BA_ "GenSigVtName" SG_ 33 StackOverflowFault "StackOverflowFault"; -BA_ "GenSigVtEn" SG_ 33 WatchdogFault "WatchdogFault"; -BA_ "GenSigVtName" SG_ 33 WatchdogFault "WatchdogFault"; -BA_ "GenSigVtEn" SG_ 33 PLLLockFault "PLLLockFault"; -BA_ "GenSigVtName" SG_ 33 PLLLockFault "PLLLockFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; -BA_ "GenSigVtEn" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; -BA_ "GenSigVtName" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; -BA_ "GenSigVtName" SG_ 33 USCValidationFault "USCValidationFault"; -BA_ "GenSigVtEn" SG_ 33 USCValidationFault "USCValidationFault"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; -BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; -BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; -BA_ "GenSigVtEn" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; -BA_ "GenSigVtName" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; -BA_ "GenSigVtEn" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; -BA_ "GenSigVtName" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; -BA_ "GenSigVtEn" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; -BA_ "GenSigVtName" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; -BA_ "GenMsgNrOfRepetition" BO_ 500 0; -BA_ "GenMsgSendType" BO_ 500 1; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte7 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte7 "MRR_xcp_daq_resp_byte7"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte6 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte6 "MRR_xcp_daq_resp_byte6"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte5 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte5 "MRR_xcp_daq_resp_byte5"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte4 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte4 "MRR_xcp_daq_resp_byte4"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte3 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte3 "MRR_xcp_daq_resp_byte3"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte2 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte2 "MRR_xcp_daq_resp_byte2"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte1 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte1 "MRR_xcp_daq_resp_byte1"; -BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte0 0; -BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte0 "MRR_xcp_daq_resp_byte0"; -BA_ "GenMsgNrOfRepetition" BO_ 499 0; -BA_ "GenMsgSendType" BO_ 499 1; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte7 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte7 "MRR_xcp_dto_resp_byte7"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte6 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte6 "MRR_xcp_dto_resp_byte6"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte5 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte5 "MRR_xcp_dto_resp_byte5"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte4 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte4 "MRR_xcp_dto_resp_byte4"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte3 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte3 "MRR_xcp_dto_resp_byte3"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte2 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte2 "MRR_xcp_dto_resp_byte2"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte1 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte1 "MRR_xcp_dto_resp_byte1"; -BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte0 0; -BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte0 "MRR_xcp_dto_resp_byte0"; -BA_ "GenMsgNrOfRepetition" BO_ 497 0; -BA_ "GenMsgSendType" BO_ 497 1; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte7 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte7 "MRR_xcp_cto_resp_byte7"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte6 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte6 "MRR_xcp_cto_resp_byte6"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte5 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte5 "MRR_xcp_cto_resp_byte5"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte4 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte4 "MRR_xcp_cto_resp_byte4"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte3 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte3 "MRR_xcp_cto_resp_byte3"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte2 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte2 "MRR_xcp_cto_resp_byte2"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte1 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte1 "MRR_xcp_cto_resp_byte1"; -BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte0 0; -BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte0 "MRR_xcp_cto_resp_byte0"; -BA_ "GenMsgSendType" BO_ 1900 1; -BA_ "GenMsgNrOfRepetition" BO_ 1900 0; -BA_ "DiagResponse" BO_ 1900 1; -BA_ "GenSigCmt" SG_ 1900 TesterPhysicalResCCM "TesterPhysicalResCCM"; -BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 0; -BA_ "GenMsgSendType" BO_ 261 0; -BA_ "GenMsgCycleTime" BO_ 261 1000; -BA_ "GenMsgNrOfRepetition" BO_ 261 0; -BA_ "GenSigCmt" SG_ 261 CAN_SEQUENCE_NUMBER "CAN_SEQUENCE_NUMBER"; -BA_ "GenSigCmt" SG_ 261 CAN_SERIAL_NUMBER "CAN_SERIAL_NUMBER"; -BA_ "GenSigSendType" SG_ 261 CAN_SERIAL_NUMBER 0; -BA_ "GenMsgSendType" BO_ 264 1; -BA_ "GenMsgNrOfRepetition" BO_ 264 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Field_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Promote_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Field_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Promote_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_SW_Release_Revision 0; -BA_ "GenSigSendType" SG_ 264 CAN_PBL_Release_Revision 0; -BA_ "GenMsgSendType" BO_ 373 1; -BA_ "NetworkInitialization" BO_ 373 0; -BA_ "GenMsgNrOfRepetition" BO_ 373 0; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_POLARITY 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_POLARITY "CAN_SENSOR_POLARITY"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LAT_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LAT_OFFSET "CAN_SENSOR_LAT_OFFSET"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LONG_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LONG_OFFSET "CAN_SENSOR_LONG_OFFSET"; -BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; -BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_HANGLE_OFFSET "CAN_SENSOR_HANGLE_OFFSET"; -BA_ "GenSigStartValue" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; -BA_ "GenMsgSendType" BO_ 372 1; -BA_ "NetworkInitialization" BO_ 372 0; -BA_ "GenMsgNrOfRepetition" BO_ 372 0; -BA_ "GenSigSendType" SG_ 372 CAN_SENSOR_FOV_HOR 0; -BA_ "GenSigCmt" SG_ 372 CAN_SENSOR_FOV_HOR "CAN_SENSOR_FOV_HOR"; -BA_ "GenSigStartValue" SG_ 372 CAN_SENSOR_FOV_HOR 0; -BA_ "GenSigSendType" SG_ 372 CAN_DOPPLER_COVERAGE 0; -BA_ "GenSigCmt" SG_ 372 CAN_DOPPLER_COVERAGE "CAN_DOPPLER_COVERAGE"; -BA_ "GenSigStartValue" SG_ 372 CAN_DOPPLER_COVERAGE 0; -BA_ "GenSigSendType" SG_ 372 CAN_RANGE_COVERAGE 0; -BA_ "GenSigCmt" SG_ 372 CAN_RANGE_COVERAGE "CAN_RANGE_COVERAGE"; -BA_ "GenMsgSendType" BO_ 371 1; -BA_ "NetworkInitialization" BO_ 371 0; -BA_ "GenMsgNrOfRepetition" BO_ 371 0; -BA_ "GenSigVtEn" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigVtName" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; -BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATUS 0; -BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; -BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATE 0; -BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; -BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF "CAN_AUTO_ALIGN_HANGLE_REF"; -BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; -BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; -BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE "CAN_AUTO_ALIGN_HANGLE"; -BA_ "GenMsgSendType" BO_ 369 1; -BA_ "NetworkInitialization" BO_ 369 0; -BA_ "GenMsgNrOfRepetition" BO_ 369 0; -BA_ "GenSigCmt" SG_ 369 CAN_DET_TIME_SINCE_MEAS "CAN_DET_TIME_SINCE_MEAS"; -BA_ "GenSigSendType" SG_ 369 CAN_DET_TIME_SINCE_MEAS 0; -BA_ "GenSigSendType" SG_ 369 CAN_SENSOR_TIME_STAMP 0; -BA_ "GenSigCmt" SG_ 369 CAN_SENSOR_TIME_STAMP "CAN_SENSOR_TIME_STAMP"; -BA_ "GenMsgSendType" BO_ 368 1; -BA_ "NetworkInitialization" BO_ 368 0; -BA_ "GenMsgNrOfRepetition" BO_ 368 0; -BA_ "GenSigSendType" SG_ 368 CAN_ALIGN_UPDATES_DONE 0; -BA_ "GenSigCmt" SG_ 368 CAN_ALIGN_UPDATES_DONE "CAN_ALIGN_UPDATES_DONE"; -BA_ "GenSigSendType" SG_ 368 CAN_SCAN_INDEX 0; -BA_ "GenSigCmt" SG_ 368 CAN_SCAN_INDEX "CAN_SCAN_INDEX"; -BA_ "GenSigSendType" SG_ 368 CAN_NUMBER_OF_DET 0; -BA_ "GenSigCmt" SG_ 368 CAN_NUMBER_OF_DET "CAN_NUMBER_OF_DET"; -BA_ "GenSigSendType" SG_ 368 CAN_LOOK_ID 0; -BA_ "GenSigCmt" SG_ 368 CAN_LOOK_ID "CAN_LOOK_ID"; -BA_ "GenSigSendType" SG_ 368 CAN_LOOK_INDEX 0; -BA_ "GenSigCmt" SG_ 368 CAN_LOOK_INDEX "CAN_LOOK_INDEX"; -BA_ "GenMsgSendType" BO_ 265 1; -BA_ "NetworkInitialization" BO_ 265 0; -BA_ "GenMsgNrOfRepetition" BO_ 265 0; -BA_ "GenSigCmt" SG_ 265 CAN_BATT_VOLTS "CAN_BATT_VOLTS"; -BA_ "GenSigCmt" SG_ 265 CAN_1_25_V "CAN_1_25_V"; -BA_ "GenSigCmt" SG_ 265 CAN_5_V "CAN_5_V"; -BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_RAW "CAN_3_3_V_RAW"; -BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_DAC "CAN_3_3_V_DAC"; -BA_ "GenSigSendType" SG_ 265 CAN_MMIC_Temp1 0; -BA_ "GenSigCmt" SG_ 265 CAN_MMIC_Temp1 "CAN_MMIC_Temp1"; -BA_ "GenSigStartValue" SG_ 265 CAN_MMIC_Temp1 0; -BA_ "GenSigSendType" SG_ 265 CAN_Processor_Thermistor 0; -BA_ "GenSigCmt" SG_ 265 CAN_Processor_Thermistor "CAN_Processor_Thermistor"; -BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Thermistor 0; -BA_ "GenSigSendType" SG_ 265 CAN_Processor_Temp1 0; -BA_ "GenSigCmt" SG_ 265 CAN_Processor_Temp1 "CAN_Processor_Temp1"; -BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Temp1 0; -EOF - -build_ba "04" - -cat <> ${OUT_FILENAME} -BA_ "GenMsgSendType" BO_ 351 1; -BA_ "GenMsgILSupport" BO_ 351 1; -BA_ "GenMsgNrOfRepetition" BO_ 351 0; -BA_ "GenMsgCycleTime" BO_ 351 0; -BA_ "NetworkInitialization" BO_ 351 0; -BA_ "GenMsgDelayTime" BO_ 351 0; -BA_ "GenSigVtEn" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigVtName" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 "CAN_DET_SUPER_RES_TARGET_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_ND_TARGET_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_ND_TARGET_64 "CAN_DET_ND_TARGET_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 "CAN_DET_HOST_VEH_CLUTTER_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_VALID_LEVEL_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_VALID_LEVEL_64 "CAN_DET_VALID_LEVEL_64"; -BA_ "GenSigStartValue" SG_ 351 CAN_DET_AZIMUTH_64 0; -BA_ "GenSigSendType" SG_ 351 CAN_DET_AZIMUTH_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_AZIMUTH_64 "CAN_DET_AZIMUTH_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_64 "CAN_DET_RANGE_64"; -BA_ "GenSigStartValue" SG_ 351 CAN_DET_RANGE_RATE_64 0; -BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_RATE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_RATE_64 "CAN_DET_RANGE_RATE_64"; -BA_ "GenSigSendType" SG_ 351 CAN_DET_AMPLITUDE_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_DET_AMPLITUDE_64 "CAN_DET_AMPLITUDE_64"; -BA_ "GenSigSendType" SG_ 351 CAN_SCAN_INDEX_2LSB_64 0; -BA_ "GenSigCmt" SG_ 351 CAN_SCAN_INDEX_2LSB_64 "CAN_SCAN_INDEX_2LSB_64"; -BA_ "GenMsgSendType" BO_ 350 1; -BA_ "GenMsgILSupport" BO_ 350 1; -BA_ "GenMsgNrOfRepetition" BO_ 350 0; -BA_ "GenMsgCycleTime" BO_ 350 0; -BA_ "NetworkInitialization" BO_ 350 0; -BA_ "GenMsgDelayTime" BO_ 350 0; -BA_ "GenSigVtEn" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigVtName" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 "CAN_DET_SUPER_RES_TARGET_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_ND_TARGET_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_ND_TARGET_63 "CAN_DET_ND_TARGET_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 "CAN_DET_HOST_VEH_CLUTTER_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_VALID_LEVEL_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_VALID_LEVEL_63 "CAN_DET_VALID_LEVEL_63"; -BA_ "GenSigStartValue" SG_ 350 CAN_DET_AZIMUTH_63 0; -BA_ "GenSigSendType" SG_ 350 CAN_DET_AZIMUTH_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_AZIMUTH_63 "CAN_DET_AZIMUTH_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_63 "CAN_DET_RANGE_63"; -BA_ "GenSigStartValue" SG_ 350 CAN_DET_RANGE_RATE_63 0; -BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_RATE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_RATE_63 "CAN_DET_RANGE_RATE_63"; -BA_ "GenSigSendType" SG_ 350 CAN_DET_AMPLITUDE_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_DET_AMPLITUDE_63 "CAN_DET_AMPLITUDE_63"; -BA_ "GenSigSendType" SG_ 350 CAN_SCAN_INDEX_2LSB_63 0; -BA_ "GenSigCmt" SG_ 350 CAN_SCAN_INDEX_2LSB_63 "CAN_SCAN_INDEX_2LSB_63"; -BA_ "GenMsgSendType" BO_ 349 1; -BA_ "GenMsgILSupport" BO_ 349 1; -BA_ "GenMsgNrOfRepetition" BO_ 349 0; -BA_ "GenMsgCycleTime" BO_ 349 0; -BA_ "NetworkInitialization" BO_ 349 0; -BA_ "GenMsgDelayTime" BO_ 349 0; -BA_ "GenSigVtEn" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigVtName" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 "CAN_DET_SUPER_RES_TARGET_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_ND_TARGET_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_ND_TARGET_62 "CAN_DET_ND_TARGET_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 "CAN_DET_HOST_VEH_CLUTTER_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_VALID_LEVEL_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_VALID_LEVEL_62 "CAN_DET_VALID_LEVEL_62"; -BA_ "GenSigStartValue" SG_ 349 CAN_DET_AZIMUTH_62 0; -BA_ "GenSigSendType" SG_ 349 CAN_DET_AZIMUTH_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_AZIMUTH_62 "CAN_DET_AZIMUTH_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_62 "CAN_DET_RANGE_62"; -BA_ "GenSigStartValue" SG_ 349 CAN_DET_RANGE_RATE_62 0; -BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_RATE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_RATE_62 "CAN_DET_RANGE_RATE_62"; -BA_ "GenSigSendType" SG_ 349 CAN_DET_AMPLITUDE_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_DET_AMPLITUDE_62 "CAN_DET_AMPLITUDE_62"; -BA_ "GenSigSendType" SG_ 349 CAN_SCAN_INDEX_2LSB_62 0; -BA_ "GenSigCmt" SG_ 349 CAN_SCAN_INDEX_2LSB_62 "CAN_SCAN_INDEX_2LSB_62"; -BA_ "GenMsgSendType" BO_ 348 1; -BA_ "GenMsgILSupport" BO_ 348 1; -BA_ "GenMsgNrOfRepetition" BO_ 348 0; -BA_ "GenMsgCycleTime" BO_ 348 0; -BA_ "NetworkInitialization" BO_ 348 0; -BA_ "GenMsgDelayTime" BO_ 348 0; -BA_ "GenSigVtEn" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigVtName" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 "CAN_DET_SUPER_RES_TARGET_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_ND_TARGET_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_ND_TARGET_61 "CAN_DET_ND_TARGET_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 "CAN_DET_HOST_VEH_CLUTTER_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_VALID_LEVEL_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_VALID_LEVEL_61 "CAN_DET_VALID_LEVEL_61"; -BA_ "GenSigStartValue" SG_ 348 CAN_DET_AZIMUTH_61 0; -BA_ "GenSigSendType" SG_ 348 CAN_DET_AZIMUTH_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_AZIMUTH_61 "CAN_DET_AZIMUTH_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_61 "CAN_DET_RANGE_61"; -BA_ "GenSigStartValue" SG_ 348 CAN_DET_RANGE_RATE_61 0; -BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_RATE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_RATE_61 "CAN_DET_RANGE_RATE_61"; -BA_ "GenSigSendType" SG_ 348 CAN_DET_AMPLITUDE_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_DET_AMPLITUDE_61 "CAN_DET_AMPLITUDE_61"; -BA_ "GenSigSendType" SG_ 348 CAN_SCAN_INDEX_2LSB_61 0; -BA_ "GenSigCmt" SG_ 348 CAN_SCAN_INDEX_2LSB_61 "CAN_SCAN_INDEX_2LSB_61"; -BA_ "GenMsgSendType" BO_ 347 1; -BA_ "GenMsgILSupport" BO_ 347 1; -BA_ "GenMsgNrOfRepetition" BO_ 347 0; -BA_ "GenMsgCycleTime" BO_ 347 0; -BA_ "NetworkInitialization" BO_ 347 0; -BA_ "GenMsgDelayTime" BO_ 347 0; -BA_ "GenSigVtEn" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigVtName" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 "CAN_DET_SUPER_RES_TARGET_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_ND_TARGET_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_ND_TARGET_60 "CAN_DET_ND_TARGET_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 "CAN_DET_HOST_VEH_CLUTTER_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_VALID_LEVEL_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_VALID_LEVEL_60 "CAN_DET_VALID_LEVEL_60"; -BA_ "GenSigStartValue" SG_ 347 CAN_DET_AZIMUTH_60 0; -BA_ "GenSigSendType" SG_ 347 CAN_DET_AZIMUTH_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_AZIMUTH_60 "CAN_DET_AZIMUTH_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_60 "CAN_DET_RANGE_60"; -BA_ "GenSigStartValue" SG_ 347 CAN_DET_RANGE_RATE_60 0; -BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_RATE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_RATE_60 "CAN_DET_RANGE_RATE_60"; -BA_ "GenSigSendType" SG_ 347 CAN_DET_AMPLITUDE_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_DET_AMPLITUDE_60 "CAN_DET_AMPLITUDE_60"; -BA_ "GenSigSendType" SG_ 347 CAN_SCAN_INDEX_2LSB_60 0; -BA_ "GenSigCmt" SG_ 347 CAN_SCAN_INDEX_2LSB_60 "CAN_SCAN_INDEX_2LSB_60"; -BA_ "GenMsgSendType" BO_ 346 1; -BA_ "GenMsgILSupport" BO_ 346 1; -BA_ "GenMsgNrOfRepetition" BO_ 346 0; -BA_ "GenMsgCycleTime" BO_ 346 0; -BA_ "NetworkInitialization" BO_ 346 0; -BA_ "GenMsgDelayTime" BO_ 346 0; -BA_ "GenSigVtEn" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigVtName" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 "CAN_DET_SUPER_RES_TARGET_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_ND_TARGET_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_ND_TARGET_59 "CAN_DET_ND_TARGET_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 "CAN_DET_HOST_VEH_CLUTTER_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_VALID_LEVEL_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_VALID_LEVEL_59 "CAN_DET_VALID_LEVEL_59"; -BA_ "GenSigStartValue" SG_ 346 CAN_DET_AZIMUTH_59 0; -BA_ "GenSigSendType" SG_ 346 CAN_DET_AZIMUTH_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_AZIMUTH_59 "CAN_DET_AZIMUTH_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_59 "CAN_DET_RANGE_59"; -BA_ "GenSigStartValue" SG_ 346 CAN_DET_RANGE_RATE_59 0; -BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_RATE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_RATE_59 "CAN_DET_RANGE_RATE_59"; -BA_ "GenSigSendType" SG_ 346 CAN_DET_AMPLITUDE_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_DET_AMPLITUDE_59 "CAN_DET_AMPLITUDE_59"; -BA_ "GenSigSendType" SG_ 346 CAN_SCAN_INDEX_2LSB_59 0; -BA_ "GenSigCmt" SG_ 346 CAN_SCAN_INDEX_2LSB_59 "CAN_SCAN_INDEX_2LSB_59"; -BA_ "GenMsgSendType" BO_ 345 1; -BA_ "GenMsgILSupport" BO_ 345 1; -BA_ "GenMsgNrOfRepetition" BO_ 345 0; -BA_ "GenMsgCycleTime" BO_ 345 0; -BA_ "NetworkInitialization" BO_ 345 0; -BA_ "GenMsgDelayTime" BO_ 345 0; -BA_ "GenSigVtEn" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigVtName" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 "CAN_DET_SUPER_RES_TARGET_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_ND_TARGET_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_ND_TARGET_58 "CAN_DET_ND_TARGET_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 "CAN_DET_HOST_VEH_CLUTTER_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_VALID_LEVEL_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_VALID_LEVEL_58 "CAN_DET_VALID_LEVEL_58"; -BA_ "GenSigStartValue" SG_ 345 CAN_DET_AZIMUTH_58 0; -BA_ "GenSigSendType" SG_ 345 CAN_DET_AZIMUTH_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_AZIMUTH_58 "CAN_DET_AZIMUTH_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_58 "CAN_DET_RANGE_58"; -BA_ "GenSigStartValue" SG_ 345 CAN_DET_RANGE_RATE_58 0; -BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_RATE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_RATE_58 "CAN_DET_RANGE_RATE_58"; -BA_ "GenSigSendType" SG_ 345 CAN_DET_AMPLITUDE_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_DET_AMPLITUDE_58 "CAN_DET_AMPLITUDE_58"; -BA_ "GenSigSendType" SG_ 345 CAN_SCAN_INDEX_2LSB_58 0; -BA_ "GenSigCmt" SG_ 345 CAN_SCAN_INDEX_2LSB_58 "CAN_SCAN_INDEX_2LSB_58"; -BA_ "GenMsgSendType" BO_ 344 1; -BA_ "GenMsgILSupport" BO_ 344 1; -BA_ "GenMsgNrOfRepetition" BO_ 344 0; -BA_ "GenMsgCycleTime" BO_ 344 0; -BA_ "NetworkInitialization" BO_ 344 0; -BA_ "GenMsgDelayTime" BO_ 344 0; -BA_ "GenSigVtEn" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigVtName" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 "CAN_DET_SUPER_RES_TARGET_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_ND_TARGET_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_ND_TARGET_57 "CAN_DET_ND_TARGET_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 "CAN_DET_HOST_VEH_CLUTTER_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_VALID_LEVEL_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_VALID_LEVEL_57 "CAN_DET_VALID_LEVEL_57"; -BA_ "GenSigStartValue" SG_ 344 CAN_DET_AZIMUTH_57 0; -BA_ "GenSigSendType" SG_ 344 CAN_DET_AZIMUTH_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_AZIMUTH_57 "CAN_DET_AZIMUTH_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_57 "CAN_DET_RANGE_57"; -BA_ "GenSigStartValue" SG_ 344 CAN_DET_RANGE_RATE_57 0; -BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_RATE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_RATE_57 "CAN_DET_RANGE_RATE_57"; -BA_ "GenSigSendType" SG_ 344 CAN_DET_AMPLITUDE_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_DET_AMPLITUDE_57 "CAN_DET_AMPLITUDE_57"; -BA_ "GenSigSendType" SG_ 344 CAN_SCAN_INDEX_2LSB_57 0; -BA_ "GenSigCmt" SG_ 344 CAN_SCAN_INDEX_2LSB_57 "CAN_SCAN_INDEX_2LSB_57"; -BA_ "GenMsgSendType" BO_ 343 1; -BA_ "GenMsgILSupport" BO_ 343 1; -BA_ "GenMsgNrOfRepetition" BO_ 343 0; -BA_ "GenMsgCycleTime" BO_ 343 0; -BA_ "NetworkInitialization" BO_ 343 0; -BA_ "GenMsgDelayTime" BO_ 343 0; -BA_ "GenSigVtEn" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigVtName" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 "CAN_DET_SUPER_RES_TARGET_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_ND_TARGET_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_ND_TARGET_56 "CAN_DET_ND_TARGET_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 "CAN_DET_HOST_VEH_CLUTTER_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_VALID_LEVEL_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_VALID_LEVEL_56 "CAN_DET_VALID_LEVEL_56"; -BA_ "GenSigStartValue" SG_ 343 CAN_DET_AZIMUTH_56 0; -BA_ "GenSigSendType" SG_ 343 CAN_DET_AZIMUTH_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_AZIMUTH_56 "CAN_DET_AZIMUTH_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_56 "CAN_DET_RANGE_56"; -BA_ "GenSigStartValue" SG_ 343 CAN_DET_RANGE_RATE_56 0; -BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_RATE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_RATE_56 "CAN_DET_RANGE_RATE_56"; -BA_ "GenSigSendType" SG_ 343 CAN_DET_AMPLITUDE_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_DET_AMPLITUDE_56 "CAN_DET_AMPLITUDE_56"; -BA_ "GenSigSendType" SG_ 343 CAN_SCAN_INDEX_2LSB_56 0; -BA_ "GenSigCmt" SG_ 343 CAN_SCAN_INDEX_2LSB_56 "CAN_SCAN_INDEX_2LSB_56"; -BA_ "GenMsgSendType" BO_ 342 1; -BA_ "GenMsgILSupport" BO_ 342 1; -BA_ "GenMsgNrOfRepetition" BO_ 342 0; -BA_ "GenMsgCycleTime" BO_ 342 0; -BA_ "NetworkInitialization" BO_ 342 0; -BA_ "GenMsgDelayTime" BO_ 342 0; -BA_ "GenSigVtEn" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigVtName" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 "CAN_DET_SUPER_RES_TARGET_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_ND_TARGET_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_ND_TARGET_55 "CAN_DET_ND_TARGET_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 "CAN_DET_HOST_VEH_CLUTTER_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_VALID_LEVEL_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_VALID_LEVEL_55 "CAN_DET_VALID_LEVEL_55"; -BA_ "GenSigStartValue" SG_ 342 CAN_DET_AZIMUTH_55 0; -BA_ "GenSigSendType" SG_ 342 CAN_DET_AZIMUTH_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_AZIMUTH_55 "CAN_DET_AZIMUTH_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_55 "CAN_DET_RANGE_55"; -BA_ "GenSigStartValue" SG_ 342 CAN_DET_RANGE_RATE_55 0; -BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_RATE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_RATE_55 "CAN_DET_RANGE_RATE_55"; -BA_ "GenSigSendType" SG_ 342 CAN_DET_AMPLITUDE_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_DET_AMPLITUDE_55 "CAN_DET_AMPLITUDE_55"; -BA_ "GenSigSendType" SG_ 342 CAN_SCAN_INDEX_2LSB_55 0; -BA_ "GenSigCmt" SG_ 342 CAN_SCAN_INDEX_2LSB_55 "CAN_SCAN_INDEX_2LSB_55"; -BA_ "GenMsgSendType" BO_ 335 1; -BA_ "GenMsgILSupport" BO_ 335 1; -BA_ "GenMsgNrOfRepetition" BO_ 335 0; -BA_ "GenMsgCycleTime" BO_ 335 0; -BA_ "NetworkInitialization" BO_ 335 0; -BA_ "GenMsgDelayTime" BO_ 335 0; -BA_ "GenSigVtEn" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigVtName" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 "CAN_DET_SUPER_RES_TARGET_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_ND_TARGET_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_ND_TARGET_48 "CAN_DET_ND_TARGET_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 "CAN_DET_HOST_VEH_CLUTTER_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_VALID_LEVEL_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_VALID_LEVEL_48 "CAN_DET_VALID_LEVEL_48"; -BA_ "GenSigStartValue" SG_ 335 CAN_DET_AZIMUTH_48 0; -BA_ "GenSigSendType" SG_ 335 CAN_DET_AZIMUTH_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_AZIMUTH_48 "CAN_DET_AZIMUTH_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_48 "CAN_DET_RANGE_48"; -BA_ "GenSigStartValue" SG_ 335 CAN_DET_RANGE_RATE_48 0; -BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_RATE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_RATE_48 "CAN_DET_RANGE_RATE_48"; -BA_ "GenSigSendType" SG_ 335 CAN_DET_AMPLITUDE_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_DET_AMPLITUDE_48 "CAN_DET_AMPLITUDE_48"; -BA_ "GenSigSendType" SG_ 335 CAN_SCAN_INDEX_2LSB_48 0; -BA_ "GenSigCmt" SG_ 335 CAN_SCAN_INDEX_2LSB_48 "CAN_SCAN_INDEX_2LSB_48"; -BA_ "GenMsgSendType" BO_ 334 1; -BA_ "GenMsgILSupport" BO_ 334 1; -BA_ "GenMsgNrOfRepetition" BO_ 334 0; -BA_ "GenMsgCycleTime" BO_ 334 0; -BA_ "NetworkInitialization" BO_ 334 0; -BA_ "GenMsgDelayTime" BO_ 334 0; -BA_ "GenSigVtEn" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigVtName" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 "CAN_DET_SUPER_RES_TARGET_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_ND_TARGET_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_ND_TARGET_47 "CAN_DET_ND_TARGET_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 "CAN_DET_HOST_VEH_CLUTTER_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_VALID_LEVEL_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_VALID_LEVEL_47 "CAN_DET_VALID_LEVEL_47"; -BA_ "GenSigStartValue" SG_ 334 CAN_DET_AZIMUTH_47 0; -BA_ "GenSigSendType" SG_ 334 CAN_DET_AZIMUTH_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_AZIMUTH_47 "CAN_DET_AZIMUTH_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_47 "CAN_DET_RANGE_47"; -BA_ "GenSigStartValue" SG_ 334 CAN_DET_RANGE_RATE_47 0; -BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_RATE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_RATE_47 "CAN_DET_RANGE_RATE_47"; -BA_ "GenSigSendType" SG_ 334 CAN_DET_AMPLITUDE_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_DET_AMPLITUDE_47 "CAN_DET_AMPLITUDE_47"; -BA_ "GenSigSendType" SG_ 334 CAN_SCAN_INDEX_2LSB_47 0; -BA_ "GenSigCmt" SG_ 334 CAN_SCAN_INDEX_2LSB_47 "CAN_SCAN_INDEX_2LSB_47"; -BA_ "GenMsgSendType" BO_ 333 1; -BA_ "GenMsgILSupport" BO_ 333 1; -BA_ "GenMsgNrOfRepetition" BO_ 333 0; -BA_ "GenMsgCycleTime" BO_ 333 0; -BA_ "NetworkInitialization" BO_ 333 0; -BA_ "GenMsgDelayTime" BO_ 333 0; -BA_ "GenSigVtEn" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigVtName" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 "CAN_DET_SUPER_RES_TARGET_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_ND_TARGET_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_ND_TARGET_46 "CAN_DET_ND_TARGET_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 "CAN_DET_HOST_VEH_CLUTTER_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_VALID_LEVEL_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_VALID_LEVEL_46 "CAN_DET_VALID_LEVEL_46"; -BA_ "GenSigStartValue" SG_ 333 CAN_DET_AZIMUTH_46 0; -BA_ "GenSigSendType" SG_ 333 CAN_DET_AZIMUTH_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_AZIMUTH_46 "CAN_DET_AZIMUTH_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_46 "CAN_DET_RANGE_46"; -BA_ "GenSigStartValue" SG_ 333 CAN_DET_RANGE_RATE_46 0; -BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_RATE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_RATE_46 "CAN_DET_RANGE_RATE_46"; -BA_ "GenSigSendType" SG_ 333 CAN_DET_AMPLITUDE_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_DET_AMPLITUDE_46 "CAN_DET_AMPLITUDE_46"; -BA_ "GenSigSendType" SG_ 333 CAN_SCAN_INDEX_2LSB_46 0; -BA_ "GenSigCmt" SG_ 333 CAN_SCAN_INDEX_2LSB_46 "CAN_SCAN_INDEX_2LSB_46"; -BA_ "GenMsgSendType" BO_ 332 1; -BA_ "GenMsgILSupport" BO_ 332 1; -BA_ "GenMsgNrOfRepetition" BO_ 332 0; -BA_ "GenMsgCycleTime" BO_ 332 0; -BA_ "NetworkInitialization" BO_ 332 0; -BA_ "GenMsgDelayTime" BO_ 332 0; -BA_ "GenSigVtEn" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigVtName" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 "CAN_DET_SUPER_RES_TARGET_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_ND_TARGET_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_ND_TARGET_45 "CAN_DET_ND_TARGET_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 "CAN_DET_HOST_VEH_CLUTTER_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_VALID_LEVEL_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_VALID_LEVEL_45 "CAN_DET_VALID_LEVEL_45"; -BA_ "GenSigStartValue" SG_ 332 CAN_DET_AZIMUTH_45 0; -BA_ "GenSigSendType" SG_ 332 CAN_DET_AZIMUTH_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_AZIMUTH_45 "CAN_DET_AZIMUTH_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_45 "CAN_DET_RANGE_45"; -BA_ "GenSigStartValue" SG_ 332 CAN_DET_RANGE_RATE_45 0; -BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_RATE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_RATE_45 "CAN_DET_RANGE_RATE_45"; -BA_ "GenSigSendType" SG_ 332 CAN_DET_AMPLITUDE_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_DET_AMPLITUDE_45 "CAN_DET_AMPLITUDE_45"; -BA_ "GenSigSendType" SG_ 332 CAN_SCAN_INDEX_2LSB_45 0; -BA_ "GenSigCmt" SG_ 332 CAN_SCAN_INDEX_2LSB_45 "CAN_SCAN_INDEX_2LSB_45"; -BA_ "GenMsgSendType" BO_ 331 1; -BA_ "GenMsgILSupport" BO_ 331 1; -BA_ "GenMsgNrOfRepetition" BO_ 331 0; -BA_ "GenMsgCycleTime" BO_ 331 0; -BA_ "NetworkInitialization" BO_ 331 0; -BA_ "GenMsgDelayTime" BO_ 331 0; -BA_ "GenSigVtEn" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigVtName" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 "CAN_DET_SUPER_RES_TARGET_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_ND_TARGET_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_ND_TARGET_44 "CAN_DET_ND_TARGET_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 "CAN_DET_HOST_VEH_CLUTTER_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_VALID_LEVEL_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_VALID_LEVEL_44 "CAN_DET_VALID_LEVEL_44"; -BA_ "GenSigStartValue" SG_ 331 CAN_DET_AZIMUTH_44 0; -BA_ "GenSigSendType" SG_ 331 CAN_DET_AZIMUTH_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_AZIMUTH_44 "CAN_DET_AZIMUTH_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_44 "CAN_DET_RANGE_44"; -BA_ "GenSigStartValue" SG_ 331 CAN_DET_RANGE_RATE_44 0; -BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_RATE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_RATE_44 "CAN_DET_RANGE_RATE_44"; -BA_ "GenSigSendType" SG_ 331 CAN_DET_AMPLITUDE_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_DET_AMPLITUDE_44 "CAN_DET_AMPLITUDE_44"; -BA_ "GenSigSendType" SG_ 331 CAN_SCAN_INDEX_2LSB_44 0; -BA_ "GenSigCmt" SG_ 331 CAN_SCAN_INDEX_2LSB_44 "CAN_SCAN_INDEX_2LSB_44"; -BA_ "GenMsgSendType" BO_ 330 1; -BA_ "GenMsgILSupport" BO_ 330 1; -BA_ "GenMsgNrOfRepetition" BO_ 330 0; -BA_ "GenMsgCycleTime" BO_ 330 0; -BA_ "NetworkInitialization" BO_ 330 0; -BA_ "GenMsgDelayTime" BO_ 330 0; -BA_ "GenSigVtEn" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigVtName" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 "CAN_DET_SUPER_RES_TARGET_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_ND_TARGET_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_ND_TARGET_43 "CAN_DET_ND_TARGET_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 "CAN_DET_HOST_VEH_CLUTTER_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_VALID_LEVEL_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_VALID_LEVEL_43 "CAN_DET_VALID_LEVEL_43"; -BA_ "GenSigStartValue" SG_ 330 CAN_DET_AZIMUTH_43 0; -BA_ "GenSigSendType" SG_ 330 CAN_DET_AZIMUTH_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_AZIMUTH_43 "CAN_DET_AZIMUTH_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_43 "CAN_DET_RANGE_43"; -BA_ "GenSigStartValue" SG_ 330 CAN_DET_RANGE_RATE_43 0; -BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_RATE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_RATE_43 "CAN_DET_RANGE_RATE_43"; -BA_ "GenSigSendType" SG_ 330 CAN_DET_AMPLITUDE_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_DET_AMPLITUDE_43 "CAN_DET_AMPLITUDE_43"; -BA_ "GenSigSendType" SG_ 330 CAN_SCAN_INDEX_2LSB_43 0; -BA_ "GenSigCmt" SG_ 330 CAN_SCAN_INDEX_2LSB_43 "CAN_SCAN_INDEX_2LSB_43"; -BA_ "GenMsgSendType" BO_ 329 1; -BA_ "GenMsgILSupport" BO_ 329 1; -BA_ "GenMsgNrOfRepetition" BO_ 329 0; -BA_ "GenMsgCycleTime" BO_ 329 0; -BA_ "NetworkInitialization" BO_ 329 0; -BA_ "GenMsgDelayTime" BO_ 329 0; -BA_ "GenSigVtEn" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigVtName" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 "CAN_DET_SUPER_RES_TARGET_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_ND_TARGET_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_ND_TARGET_42 "CAN_DET_ND_TARGET_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 "CAN_DET_HOST_VEH_CLUTTER_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_VALID_LEVEL_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_VALID_LEVEL_42 "CAN_DET_VALID_LEVEL_42"; -BA_ "GenSigStartValue" SG_ 329 CAN_DET_AZIMUTH_42 0; -BA_ "GenSigSendType" SG_ 329 CAN_DET_AZIMUTH_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_AZIMUTH_42 "CAN_DET_AZIMUTH_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_42 "CAN_DET_RANGE_42"; -BA_ "GenSigStartValue" SG_ 329 CAN_DET_RANGE_RATE_42 0; -BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_RATE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_RATE_42 "CAN_DET_RANGE_RATE_42"; -BA_ "GenSigSendType" SG_ 329 CAN_DET_AMPLITUDE_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_DET_AMPLITUDE_42 "CAN_DET_AMPLITUDE_42"; -BA_ "GenSigSendType" SG_ 329 CAN_SCAN_INDEX_2LSB_42 0; -BA_ "GenSigCmt" SG_ 329 CAN_SCAN_INDEX_2LSB_42 "CAN_SCAN_INDEX_2LSB_42"; -BA_ "GenMsgSendType" BO_ 328 1; -BA_ "GenMsgILSupport" BO_ 328 1; -BA_ "GenMsgNrOfRepetition" BO_ 328 0; -BA_ "GenMsgCycleTime" BO_ 328 0; -BA_ "NetworkInitialization" BO_ 328 0; -BA_ "GenMsgDelayTime" BO_ 328 0; -BA_ "GenSigVtEn" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigVtName" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 "CAN_DET_SUPER_RES_TARGET_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_ND_TARGET_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_ND_TARGET_41 "CAN_DET_ND_TARGET_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 "CAN_DET_HOST_VEH_CLUTTER_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_VALID_LEVEL_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_VALID_LEVEL_41 "CAN_DET_VALID_LEVEL_41"; -BA_ "GenSigStartValue" SG_ 328 CAN_DET_AZIMUTH_41 0; -BA_ "GenSigSendType" SG_ 328 CAN_DET_AZIMUTH_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_AZIMUTH_41 "CAN_DET_AZIMUTH_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_41 "CAN_DET_RANGE_41"; -BA_ "GenSigStartValue" SG_ 328 CAN_DET_RANGE_RATE_41 0; -BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_RATE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_RATE_41 "CAN_DET_RANGE_RATE_41"; -BA_ "GenSigSendType" SG_ 328 CAN_DET_AMPLITUDE_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_DET_AMPLITUDE_41 "CAN_DET_AMPLITUDE_41"; -BA_ "GenSigSendType" SG_ 328 CAN_SCAN_INDEX_2LSB_41 0; -BA_ "GenSigCmt" SG_ 328 CAN_SCAN_INDEX_2LSB_41 "CAN_SCAN_INDEX_2LSB_41"; -BA_ "GenMsgSendType" BO_ 327 1; -BA_ "GenMsgILSupport" BO_ 327 1; -BA_ "GenMsgNrOfRepetition" BO_ 327 0; -BA_ "GenMsgCycleTime" BO_ 327 0; -BA_ "NetworkInitialization" BO_ 327 0; -BA_ "GenMsgDelayTime" BO_ 327 0; -BA_ "GenSigVtEn" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigVtName" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 "CAN_DET_SUPER_RES_TARGET_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_ND_TARGET_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_ND_TARGET_40 "CAN_DET_ND_TARGET_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 "CAN_DET_HOST_VEH_CLUTTER_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_VALID_LEVEL_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_VALID_LEVEL_40 "CAN_DET_VALID_LEVEL_40"; -BA_ "GenSigStartValue" SG_ 327 CAN_DET_AZIMUTH_40 0; -BA_ "GenSigSendType" SG_ 327 CAN_DET_AZIMUTH_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_AZIMUTH_40 "CAN_DET_AZIMUTH_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_40 "CAN_DET_RANGE_40"; -BA_ "GenSigStartValue" SG_ 327 CAN_DET_RANGE_RATE_40 0; -BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_RATE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_RATE_40 "CAN_DET_RANGE_RATE_40"; -BA_ "GenSigSendType" SG_ 327 CAN_DET_AMPLITUDE_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_DET_AMPLITUDE_40 "CAN_DET_AMPLITUDE_40"; -BA_ "GenSigSendType" SG_ 327 CAN_SCAN_INDEX_2LSB_40 0; -BA_ "GenSigCmt" SG_ 327 CAN_SCAN_INDEX_2LSB_40 "CAN_SCAN_INDEX_2LSB_40"; -BA_ "GenMsgSendType" BO_ 325 1; -BA_ "GenMsgILSupport" BO_ 325 1; -BA_ "GenMsgNrOfRepetition" BO_ 325 0; -BA_ "GenMsgCycleTime" BO_ 325 0; -BA_ "NetworkInitialization" BO_ 325 0; -BA_ "GenMsgDelayTime" BO_ 325 0; -BA_ "GenSigVtEn" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigVtName" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 "CAN_DET_SUPER_RES_TARGET_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_ND_TARGET_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_ND_TARGET_38 "CAN_DET_ND_TARGET_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 "CAN_DET_HOST_VEH_CLUTTER_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_VALID_LEVEL_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_VALID_LEVEL_38 "CAN_DET_VALID_LEVEL_38"; -BA_ "GenSigStartValue" SG_ 325 CAN_DET_AZIMUTH_38 0; -BA_ "GenSigSendType" SG_ 325 CAN_DET_AZIMUTH_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_AZIMUTH_38 "CAN_DET_AZIMUTH_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_38 "CAN_DET_RANGE_38"; -BA_ "GenSigStartValue" SG_ 325 CAN_DET_RANGE_RATE_38 0; -BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_RATE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_RATE_38 "CAN_DET_RANGE_RATE_38"; -BA_ "GenSigSendType" SG_ 325 CAN_DET_AMPLITUDE_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_DET_AMPLITUDE_38 "CAN_DET_AMPLITUDE_38"; -BA_ "GenSigSendType" SG_ 325 CAN_SCAN_INDEX_2LSB_38 0; -BA_ "GenSigCmt" SG_ 325 CAN_SCAN_INDEX_2LSB_38 "CAN_SCAN_INDEX_2LSB_38"; -BA_ "GenMsgSendType" BO_ 324 1; -BA_ "GenMsgILSupport" BO_ 324 1; -BA_ "GenMsgNrOfRepetition" BO_ 324 0; -BA_ "GenMsgCycleTime" BO_ 324 0; -BA_ "NetworkInitialization" BO_ 324 0; -BA_ "GenMsgDelayTime" BO_ 324 0; -BA_ "GenSigVtEn" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigVtName" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 "CAN_DET_SUPER_RES_TARGET_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_ND_TARGET_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_ND_TARGET_37 "CAN_DET_ND_TARGET_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 "CAN_DET_HOST_VEH_CLUTTER_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_VALID_LEVEL_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_VALID_LEVEL_37 "CAN_DET_VALID_LEVEL_37"; -BA_ "GenSigStartValue" SG_ 324 CAN_DET_AZIMUTH_37 0; -BA_ "GenSigSendType" SG_ 324 CAN_DET_AZIMUTH_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_AZIMUTH_37 "CAN_DET_AZIMUTH_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_37 "CAN_DET_RANGE_37"; -BA_ "GenSigStartValue" SG_ 324 CAN_DET_RANGE_RATE_37 0; -BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_RATE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_RATE_37 "CAN_DET_RANGE_RATE_37"; -BA_ "GenSigSendType" SG_ 324 CAN_DET_AMPLITUDE_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_DET_AMPLITUDE_37 "CAN_DET_AMPLITUDE_37"; -BA_ "GenSigSendType" SG_ 324 CAN_SCAN_INDEX_2LSB_37 0; -BA_ "GenSigCmt" SG_ 324 CAN_SCAN_INDEX_2LSB_37 "CAN_SCAN_INDEX_2LSB_37"; -BA_ "GenMsgSendType" BO_ 323 1; -BA_ "GenMsgILSupport" BO_ 323 1; -BA_ "GenMsgNrOfRepetition" BO_ 323 0; -BA_ "GenMsgCycleTime" BO_ 323 0; -BA_ "NetworkInitialization" BO_ 323 0; -BA_ "GenMsgDelayTime" BO_ 323 0; -BA_ "GenSigVtEn" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigVtName" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 "CAN_DET_SUPER_RES_TARGET_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_ND_TARGET_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_ND_TARGET_36 "CAN_DET_ND_TARGET_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 "CAN_DET_HOST_VEH_CLUTTER_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_VALID_LEVEL_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_VALID_LEVEL_36 "CAN_DET_VALID_LEVEL_36"; -BA_ "GenSigStartValue" SG_ 323 CAN_DET_AZIMUTH_36 0; -BA_ "GenSigSendType" SG_ 323 CAN_DET_AZIMUTH_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_AZIMUTH_36 "CAN_DET_AZIMUTH_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_36 "CAN_DET_RANGE_36"; -BA_ "GenSigStartValue" SG_ 323 CAN_DET_RANGE_RATE_36 0; -BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_RATE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_RATE_36 "CAN_DET_RANGE_RATE_36"; -BA_ "GenSigSendType" SG_ 323 CAN_DET_AMPLITUDE_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_DET_AMPLITUDE_36 "CAN_DET_AMPLITUDE_36"; -BA_ "GenSigSendType" SG_ 323 CAN_SCAN_INDEX_2LSB_36 0; -BA_ "GenSigCmt" SG_ 323 CAN_SCAN_INDEX_2LSB_36 "CAN_SCAN_INDEX_2LSB_36"; -BA_ "GenMsgSendType" BO_ 322 1; -BA_ "GenMsgILSupport" BO_ 322 1; -BA_ "GenMsgNrOfRepetition" BO_ 322 0; -BA_ "GenMsgCycleTime" BO_ 322 0; -BA_ "NetworkInitialization" BO_ 322 0; -BA_ "GenMsgDelayTime" BO_ 322 0; -BA_ "GenSigVtEn" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigVtName" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 "CAN_DET_SUPER_RES_TARGET_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_ND_TARGET_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_ND_TARGET_35 "CAN_DET_ND_TARGET_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 "CAN_DET_HOST_VEH_CLUTTER_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_VALID_LEVEL_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_VALID_LEVEL_35 "CAN_DET_VALID_LEVEL_35"; -BA_ "GenSigStartValue" SG_ 322 CAN_DET_AZIMUTH_35 0; -BA_ "GenSigSendType" SG_ 322 CAN_DET_AZIMUTH_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_AZIMUTH_35 "CAN_DET_AZIMUTH_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_35 "CAN_DET_RANGE_35"; -BA_ "GenSigStartValue" SG_ 322 CAN_DET_RANGE_RATE_35 0; -BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_RATE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_RATE_35 "CAN_DET_RANGE_RATE_35"; -BA_ "GenSigSendType" SG_ 322 CAN_DET_AMPLITUDE_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_DET_AMPLITUDE_35 "CAN_DET_AMPLITUDE_35"; -BA_ "GenSigSendType" SG_ 322 CAN_SCAN_INDEX_2LSB_35 0; -BA_ "GenSigCmt" SG_ 322 CAN_SCAN_INDEX_2LSB_35 "CAN_SCAN_INDEX_2LSB_35"; -BA_ "GenMsgSendType" BO_ 321 1; -BA_ "GenMsgILSupport" BO_ 321 1; -BA_ "GenMsgNrOfRepetition" BO_ 321 0; -BA_ "GenMsgCycleTime" BO_ 321 0; -BA_ "NetworkInitialization" BO_ 321 0; -BA_ "GenMsgDelayTime" BO_ 321 0; -BA_ "GenSigVtEn" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigVtName" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 "CAN_DET_SUPER_RES_TARGET_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_ND_TARGET_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_ND_TARGET_34 "CAN_DET_ND_TARGET_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 "CAN_DET_HOST_VEH_CLUTTER_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_VALID_LEVEL_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_VALID_LEVEL_34 "CAN_DET_VALID_LEVEL_34"; -BA_ "GenSigStartValue" SG_ 321 CAN_DET_AZIMUTH_34 0; -BA_ "GenSigSendType" SG_ 321 CAN_DET_AZIMUTH_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_AZIMUTH_34 "CAN_DET_AZIMUTH_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_34 "CAN_DET_RANGE_34"; -BA_ "GenSigStartValue" SG_ 321 CAN_DET_RANGE_RATE_34 0; -BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_RATE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_RATE_34 "CAN_DET_RANGE_RATE_34"; -BA_ "GenSigSendType" SG_ 321 CAN_DET_AMPLITUDE_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_DET_AMPLITUDE_34 "CAN_DET_AMPLITUDE_34"; -BA_ "GenSigSendType" SG_ 321 CAN_SCAN_INDEX_2LSB_34 0; -BA_ "GenSigCmt" SG_ 321 CAN_SCAN_INDEX_2LSB_34 "CAN_SCAN_INDEX_2LSB_34"; -BA_ "GenMsgSendType" BO_ 320 1; -BA_ "GenMsgILSupport" BO_ 320 1; -BA_ "GenMsgNrOfRepetition" BO_ 320 0; -BA_ "GenMsgCycleTime" BO_ 320 0; -BA_ "NetworkInitialization" BO_ 320 0; -BA_ "GenMsgDelayTime" BO_ 320 0; -BA_ "GenSigVtEn" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigVtName" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 "CAN_DET_SUPER_RES_TARGET_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_ND_TARGET_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_ND_TARGET_33 "CAN_DET_ND_TARGET_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 "CAN_DET_HOST_VEH_CLUTTER_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_VALID_LEVEL_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_VALID_LEVEL_33 "CAN_DET_VALID_LEVEL_33"; -BA_ "GenSigStartValue" SG_ 320 CAN_DET_AZIMUTH_33 0; -BA_ "GenSigSendType" SG_ 320 CAN_DET_AZIMUTH_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_AZIMUTH_33 "CAN_DET_AZIMUTH_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_33 "CAN_DET_RANGE_33"; -BA_ "GenSigStartValue" SG_ 320 CAN_DET_RANGE_RATE_33 0; -BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_RATE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_RATE_33 "CAN_DET_RANGE_RATE_33"; -BA_ "GenSigSendType" SG_ 320 CAN_DET_AMPLITUDE_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_DET_AMPLITUDE_33 "CAN_DET_AMPLITUDE_33"; -BA_ "GenSigSendType" SG_ 320 CAN_SCAN_INDEX_2LSB_33 0; -BA_ "GenSigCmt" SG_ 320 CAN_SCAN_INDEX_2LSB_33 "CAN_SCAN_INDEX_2LSB_33"; -BA_ "GenMsgSendType" BO_ 319 1; -BA_ "GenMsgILSupport" BO_ 319 1; -BA_ "GenMsgNrOfRepetition" BO_ 319 0; -BA_ "GenMsgCycleTime" BO_ 319 0; -BA_ "NetworkInitialization" BO_ 319 0; -BA_ "GenMsgDelayTime" BO_ 319 0; -BA_ "GenSigVtEn" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigVtName" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 "CAN_DET_SUPER_RES_TARGET_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_ND_TARGET_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_ND_TARGET_32 "CAN_DET_ND_TARGET_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 "CAN_DET_HOST_VEH_CLUTTER_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_VALID_LEVEL_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_VALID_LEVEL_32 "CAN_DET_VALID_LEVEL_32"; -BA_ "GenSigStartValue" SG_ 319 CAN_DET_AZIMUTH_32 0; -BA_ "GenSigSendType" SG_ 319 CAN_DET_AZIMUTH_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_AZIMUTH_32 "CAN_DET_AZIMUTH_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_32 "CAN_DET_RANGE_32"; -BA_ "GenSigStartValue" SG_ 319 CAN_DET_RANGE_RATE_32 0; -BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_RATE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_RATE_32 "CAN_DET_RANGE_RATE_32"; -BA_ "GenSigSendType" SG_ 319 CAN_DET_AMPLITUDE_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_DET_AMPLITUDE_32 "CAN_DET_AMPLITUDE_32"; -BA_ "GenSigSendType" SG_ 319 CAN_SCAN_INDEX_2LSB_32 0; -BA_ "GenSigCmt" SG_ 319 CAN_SCAN_INDEX_2LSB_32 "CAN_SCAN_INDEX_2LSB_32"; -BA_ "GenMsgSendType" BO_ 318 1; -BA_ "GenMsgILSupport" BO_ 318 1; -BA_ "GenMsgNrOfRepetition" BO_ 318 0; -BA_ "GenMsgCycleTime" BO_ 318 0; -BA_ "NetworkInitialization" BO_ 318 0; -BA_ "GenMsgDelayTime" BO_ 318 0; -BA_ "GenSigVtEn" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigVtName" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 "CAN_DET_SUPER_RES_TARGET_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_ND_TARGET_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_ND_TARGET_31 "CAN_DET_ND_TARGET_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 "CAN_DET_HOST_VEH_CLUTTER_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_VALID_LEVEL_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_VALID_LEVEL_31 "CAN_DET_VALID_LEVEL_31"; -BA_ "GenSigStartValue" SG_ 318 CAN_DET_AZIMUTH_31 0; -BA_ "GenSigSendType" SG_ 318 CAN_DET_AZIMUTH_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_AZIMUTH_31 "CAN_DET_AZIMUTH_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_31 "CAN_DET_RANGE_31"; -BA_ "GenSigStartValue" SG_ 318 CAN_DET_RANGE_RATE_31 0; -BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_RATE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_RATE_31 "CAN_DET_RANGE_RATE_31"; -BA_ "GenSigSendType" SG_ 318 CAN_DET_AMPLITUDE_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_DET_AMPLITUDE_31 "CAN_DET_AMPLITUDE_31"; -BA_ "GenSigSendType" SG_ 318 CAN_SCAN_INDEX_2LSB_31 0; -BA_ "GenSigCmt" SG_ 318 CAN_SCAN_INDEX_2LSB_31 "CAN_SCAN_INDEX_2LSB_31"; -BA_ "GenMsgSendType" BO_ 317 1; -BA_ "GenMsgILSupport" BO_ 317 1; -BA_ "GenMsgNrOfRepetition" BO_ 317 0; -BA_ "GenMsgCycleTime" BO_ 317 0; -BA_ "NetworkInitialization" BO_ 317 0; -BA_ "GenMsgDelayTime" BO_ 317 0; -BA_ "GenSigVtEn" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigVtName" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 "CAN_DET_SUPER_RES_TARGET_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_ND_TARGET_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_ND_TARGET_30 "CAN_DET_ND_TARGET_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 "CAN_DET_HOST_VEH_CLUTTER_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_VALID_LEVEL_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_VALID_LEVEL_30 "CAN_DET_VALID_LEVEL_30"; -BA_ "GenSigStartValue" SG_ 317 CAN_DET_AZIMUTH_30 0; -BA_ "GenSigSendType" SG_ 317 CAN_DET_AZIMUTH_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_AZIMUTH_30 "CAN_DET_AZIMUTH_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_30 "CAN_DET_RANGE_30"; -BA_ "GenSigStartValue" SG_ 317 CAN_DET_RANGE_RATE_30 0; -BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_RATE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_RATE_30 "CAN_DET_RANGE_RATE_30"; -BA_ "GenSigSendType" SG_ 317 CAN_DET_AMPLITUDE_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_DET_AMPLITUDE_30 "CAN_DET_AMPLITUDE_30"; -BA_ "GenSigSendType" SG_ 317 CAN_SCAN_INDEX_2LSB_30 0; -BA_ "GenSigCmt" SG_ 317 CAN_SCAN_INDEX_2LSB_30 "CAN_SCAN_INDEX_2LSB_30"; -BA_ "GenMsgSendType" BO_ 316 1; -BA_ "GenMsgILSupport" BO_ 316 1; -BA_ "GenMsgNrOfRepetition" BO_ 316 0; -BA_ "GenMsgCycleTime" BO_ 316 0; -BA_ "NetworkInitialization" BO_ 316 0; -BA_ "GenMsgDelayTime" BO_ 316 0; -BA_ "GenSigVtEn" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigVtName" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 "CAN_DET_SUPER_RES_TARGET_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_ND_TARGET_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_ND_TARGET_29 "CAN_DET_ND_TARGET_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 "CAN_DET_HOST_VEH_CLUTTER_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_VALID_LEVEL_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_VALID_LEVEL_29 "CAN_DET_VALID_LEVEL_29"; -BA_ "GenSigStartValue" SG_ 316 CAN_DET_AZIMUTH_29 0; -BA_ "GenSigSendType" SG_ 316 CAN_DET_AZIMUTH_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_AZIMUTH_29 "CAN_DET_AZIMUTH_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_29 "CAN_DET_RANGE_29"; -BA_ "GenSigStartValue" SG_ 316 CAN_DET_RANGE_RATE_29 0; -BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_RATE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_RATE_29 "CAN_DET_RANGE_RATE_29"; -BA_ "GenSigSendType" SG_ 316 CAN_DET_AMPLITUDE_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_DET_AMPLITUDE_29 "CAN_DET_AMPLITUDE_29"; -BA_ "GenSigSendType" SG_ 316 CAN_SCAN_INDEX_2LSB_29 0; -BA_ "GenSigCmt" SG_ 316 CAN_SCAN_INDEX_2LSB_29 "CAN_SCAN_INDEX_2LSB_29"; -BA_ "GenMsgSendType" BO_ 314 1; -BA_ "GenMsgILSupport" BO_ 314 1; -BA_ "GenMsgNrOfRepetition" BO_ 314 0; -BA_ "GenMsgCycleTime" BO_ 314 0; -BA_ "NetworkInitialization" BO_ 314 0; -BA_ "GenMsgDelayTime" BO_ 314 0; -BA_ "GenSigVtEn" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigVtName" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 "CAN_DET_SUPER_RES_TARGET_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_ND_TARGET_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_ND_TARGET_27 "CAN_DET_ND_TARGET_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 "CAN_DET_HOST_VEH_CLUTTER_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_VALID_LEVEL_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_VALID_LEVEL_27 "CAN_DET_VALID_LEVEL_27"; -BA_ "GenSigStartValue" SG_ 314 CAN_DET_AZIMUTH_27 0; -BA_ "GenSigSendType" SG_ 314 CAN_DET_AZIMUTH_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_AZIMUTH_27 "CAN_DET_AZIMUTH_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_27 "CAN_DET_RANGE_27"; -BA_ "GenSigStartValue" SG_ 314 CAN_DET_RANGE_RATE_27 0; -BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_RATE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_RATE_27 "CAN_DET_RANGE_RATE_27"; -BA_ "GenSigSendType" SG_ 314 CAN_DET_AMPLITUDE_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_DET_AMPLITUDE_27 "CAN_DET_AMPLITUDE_27"; -BA_ "GenSigSendType" SG_ 314 CAN_SCAN_INDEX_2LSB_27 0; -BA_ "GenSigCmt" SG_ 314 CAN_SCAN_INDEX_2LSB_27 "CAN_SCAN_INDEX_2LSB_27"; -BA_ "GenMsgSendType" BO_ 313 1; -BA_ "GenMsgILSupport" BO_ 313 1; -BA_ "GenMsgNrOfRepetition" BO_ 313 0; -BA_ "GenMsgCycleTime" BO_ 313 0; -BA_ "NetworkInitialization" BO_ 313 0; -BA_ "GenMsgDelayTime" BO_ 313 0; -BA_ "GenSigVtEn" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigVtName" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 "CAN_DET_SUPER_RES_TARGET_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_ND_TARGET_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_ND_TARGET_26 "CAN_DET_ND_TARGET_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 "CAN_DET_HOST_VEH_CLUTTER_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_VALID_LEVEL_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_VALID_LEVEL_26 "CAN_DET_VALID_LEVEL_26"; -BA_ "GenSigStartValue" SG_ 313 CAN_DET_AZIMUTH_26 0; -BA_ "GenSigSendType" SG_ 313 CAN_DET_AZIMUTH_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_AZIMUTH_26 "CAN_DET_AZIMUTH_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_26 "CAN_DET_RANGE_26"; -BA_ "GenSigStartValue" SG_ 313 CAN_DET_RANGE_RATE_26 0; -BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_RATE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_RATE_26 "CAN_DET_RANGE_RATE_26"; -BA_ "GenSigSendType" SG_ 313 CAN_DET_AMPLITUDE_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_DET_AMPLITUDE_26 "CAN_DET_AMPLITUDE_26"; -BA_ "GenSigSendType" SG_ 313 CAN_SCAN_INDEX_2LSB_26 0; -BA_ "GenSigCmt" SG_ 313 CAN_SCAN_INDEX_2LSB_26 "CAN_SCAN_INDEX_2LSB_26"; -BA_ "GenMsgSendType" BO_ 312 1; -BA_ "GenMsgILSupport" BO_ 312 1; -BA_ "GenMsgNrOfRepetition" BO_ 312 0; -BA_ "GenMsgCycleTime" BO_ 312 0; -BA_ "NetworkInitialization" BO_ 312 0; -BA_ "GenMsgDelayTime" BO_ 312 0; -BA_ "GenSigVtEn" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigVtName" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 "CAN_DET_SUPER_RES_TARGET_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_ND_TARGET_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_ND_TARGET_25 "CAN_DET_ND_TARGET_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 "CAN_DET_HOST_VEH_CLUTTER_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_VALID_LEVEL_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_VALID_LEVEL_25 "CAN_DET_VALID_LEVEL_25"; -BA_ "GenSigStartValue" SG_ 312 CAN_DET_AZIMUTH_25 0; -BA_ "GenSigSendType" SG_ 312 CAN_DET_AZIMUTH_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_AZIMUTH_25 "CAN_DET_AZIMUTH_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_25 "CAN_DET_RANGE_25"; -BA_ "GenSigStartValue" SG_ 312 CAN_DET_RANGE_RATE_25 0; -BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_RATE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_RATE_25 "CAN_DET_RANGE_RATE_25"; -BA_ "GenSigSendType" SG_ 312 CAN_DET_AMPLITUDE_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_DET_AMPLITUDE_25 "CAN_DET_AMPLITUDE_25"; -BA_ "GenSigSendType" SG_ 312 CAN_SCAN_INDEX_2LSB_25 0; -BA_ "GenSigCmt" SG_ 312 CAN_SCAN_INDEX_2LSB_25 "CAN_SCAN_INDEX_2LSB_25"; -BA_ "GenMsgSendType" BO_ 311 1; -BA_ "GenMsgILSupport" BO_ 311 1; -BA_ "GenMsgNrOfRepetition" BO_ 311 0; -BA_ "GenMsgCycleTime" BO_ 311 0; -BA_ "NetworkInitialization" BO_ 311 0; -BA_ "GenMsgDelayTime" BO_ 311 0; -BA_ "GenSigVtEn" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigVtName" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 "CAN_DET_SUPER_RES_TARGET_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_ND_TARGET_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_ND_TARGET_24 "CAN_DET_ND_TARGET_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 "CAN_DET_HOST_VEH_CLUTTER_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_VALID_LEVEL_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_VALID_LEVEL_24 "CAN_DET_VALID_LEVEL_24"; -BA_ "GenSigStartValue" SG_ 311 CAN_DET_AZIMUTH_24 0; -BA_ "GenSigSendType" SG_ 311 CAN_DET_AZIMUTH_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_AZIMUTH_24 "CAN_DET_AZIMUTH_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_24 "CAN_DET_RANGE_24"; -BA_ "GenSigStartValue" SG_ 311 CAN_DET_RANGE_RATE_24 0; -BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_RATE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_RATE_24 "CAN_DET_RANGE_RATE_24"; -BA_ "GenSigSendType" SG_ 311 CAN_DET_AMPLITUDE_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_DET_AMPLITUDE_24 "CAN_DET_AMPLITUDE_24"; -BA_ "GenSigSendType" SG_ 311 CAN_SCAN_INDEX_2LSB_24 0; -BA_ "GenSigCmt" SG_ 311 CAN_SCAN_INDEX_2LSB_24 "CAN_SCAN_INDEX_2LSB_24"; -BA_ "GenMsgSendType" BO_ 310 1; -BA_ "GenMsgILSupport" BO_ 310 1; -BA_ "GenMsgNrOfRepetition" BO_ 310 0; -BA_ "GenMsgCycleTime" BO_ 310 0; -BA_ "NetworkInitialization" BO_ 310 0; -BA_ "GenMsgDelayTime" BO_ 310 0; -BA_ "GenSigVtEn" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigVtName" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 "CAN_DET_SUPER_RES_TARGET_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_ND_TARGET_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_ND_TARGET_23 "CAN_DET_ND_TARGET_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 "CAN_DET_HOST_VEH_CLUTTER_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_VALID_LEVEL_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_VALID_LEVEL_23 "CAN_DET_VALID_LEVEL_23"; -BA_ "GenSigStartValue" SG_ 310 CAN_DET_AZIMUTH_23 0; -BA_ "GenSigSendType" SG_ 310 CAN_DET_AZIMUTH_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_AZIMUTH_23 "CAN_DET_AZIMUTH_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_23 "CAN_DET_RANGE_23"; -BA_ "GenSigStartValue" SG_ 310 CAN_DET_RANGE_RATE_23 0; -BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_RATE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_RATE_23 "CAN_DET_RANGE_RATE_23"; -BA_ "GenSigSendType" SG_ 310 CAN_DET_AMPLITUDE_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_DET_AMPLITUDE_23 "CAN_DET_AMPLITUDE_23"; -BA_ "GenSigSendType" SG_ 310 CAN_SCAN_INDEX_2LSB_23 0; -BA_ "GenSigCmt" SG_ 310 CAN_SCAN_INDEX_2LSB_23 "CAN_SCAN_INDEX_2LSB_23"; -EOF - -build_ba "22" -build_ba "21" -build_ba "20" -build_ba "19" -build_ba "18" - -cat <> ${OUT_FILENAME} -BA_ "GenMsgSendType" BO_ 341 1; -BA_ "GenMsgILSupport" BO_ 341 1; -BA_ "GenMsgNrOfRepetition" BO_ 341 0; -BA_ "GenMsgCycleTime" BO_ 341 0; -BA_ "NetworkInitialization" BO_ 341 0; -BA_ "GenMsgDelayTime" BO_ 341 0; -BA_ "GenSigVtEn" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigVtName" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 "CAN_DET_SUPER_RES_TARGET_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_ND_TARGET_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_ND_TARGET_54 "CAN_DET_ND_TARGET_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 "CAN_DET_HOST_VEH_CLUTTER_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_VALID_LEVEL_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_VALID_LEVEL_54 "CAN_DET_VALID_LEVEL_54"; -BA_ "GenSigStartValue" SG_ 341 CAN_DET_AZIMUTH_54 0; -BA_ "GenSigSendType" SG_ 341 CAN_DET_AZIMUTH_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_AZIMUTH_54 "CAN_DET_AZIMUTH_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_54 "CAN_DET_RANGE_54"; -BA_ "GenSigStartValue" SG_ 341 CAN_DET_RANGE_RATE_54 0; -BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_RATE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_RATE_54 "CAN_DET_RANGE_RATE_54"; -BA_ "GenSigSendType" SG_ 341 CAN_DET_AMPLITUDE_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_DET_AMPLITUDE_54 "CAN_DET_AMPLITUDE_54"; -BA_ "GenSigSendType" SG_ 341 CAN_SCAN_INDEX_2LSB_54 0; -BA_ "GenSigCmt" SG_ 341 CAN_SCAN_INDEX_2LSB_54 "CAN_SCAN_INDEX_2LSB_54"; -BA_ "GenMsgSendType" BO_ 340 1; -BA_ "GenMsgILSupport" BO_ 340 1; -BA_ "GenMsgNrOfRepetition" BO_ 340 0; -BA_ "GenMsgCycleTime" BO_ 340 0; -BA_ "NetworkInitialization" BO_ 340 0; -BA_ "GenMsgDelayTime" BO_ 340 0; -BA_ "GenSigVtEn" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigVtName" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 "CAN_DET_SUPER_RES_TARGET_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_ND_TARGET_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_ND_TARGET_53 "CAN_DET_ND_TARGET_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 "CAN_DET_HOST_VEH_CLUTTER_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_VALID_LEVEL_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_VALID_LEVEL_53 "CAN_DET_VALID_LEVEL_53"; -BA_ "GenSigStartValue" SG_ 340 CAN_DET_AZIMUTH_53 0; -BA_ "GenSigSendType" SG_ 340 CAN_DET_AZIMUTH_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_AZIMUTH_53 "CAN_DET_AZIMUTH_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_53 "CAN_DET_RANGE_53"; -BA_ "GenSigStartValue" SG_ 340 CAN_DET_RANGE_RATE_53 0; -BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_RATE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_RATE_53 "CAN_DET_RANGE_RATE_53"; -BA_ "GenSigSendType" SG_ 340 CAN_DET_AMPLITUDE_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_DET_AMPLITUDE_53 "CAN_DET_AMPLITUDE_53"; -BA_ "GenSigSendType" SG_ 340 CAN_SCAN_INDEX_2LSB_53 0; -BA_ "GenSigCmt" SG_ 340 CAN_SCAN_INDEX_2LSB_53 "CAN_SCAN_INDEX_2LSB_53"; -BA_ "GenMsgSendType" BO_ 339 1; -BA_ "GenMsgILSupport" BO_ 339 1; -BA_ "GenMsgNrOfRepetition" BO_ 339 0; -BA_ "GenMsgCycleTime" BO_ 339 0; -BA_ "NetworkInitialization" BO_ 339 0; -BA_ "GenMsgDelayTime" BO_ 339 0; -BA_ "GenSigVtEn" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigVtName" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 "CAN_DET_SUPER_RES_TARGET_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_ND_TARGET_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_ND_TARGET_52 "CAN_DET_ND_TARGET_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 "CAN_DET_HOST_VEH_CLUTTER_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_VALID_LEVEL_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_VALID_LEVEL_52 "CAN_DET_VALID_LEVEL_52"; -BA_ "GenSigStartValue" SG_ 339 CAN_DET_AZIMUTH_52 0; -BA_ "GenSigSendType" SG_ 339 CAN_DET_AZIMUTH_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_AZIMUTH_52 "CAN_DET_AZIMUTH_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_52 "CAN_DET_RANGE_52"; -BA_ "GenSigStartValue" SG_ 339 CAN_DET_RANGE_RATE_52 0; -BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_RATE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_RATE_52 "CAN_DET_RANGE_RATE_52"; -BA_ "GenSigSendType" SG_ 339 CAN_DET_AMPLITUDE_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_DET_AMPLITUDE_52 "CAN_DET_AMPLITUDE_52"; -BA_ "GenSigSendType" SG_ 339 CAN_SCAN_INDEX_2LSB_52 0; -BA_ "GenSigCmt" SG_ 339 CAN_SCAN_INDEX_2LSB_52 "CAN_SCAN_INDEX_2LSB_52"; -BA_ "GenMsgSendType" BO_ 338 1; -BA_ "GenMsgILSupport" BO_ 338 1; -BA_ "GenMsgNrOfRepetition" BO_ 338 0; -BA_ "GenMsgCycleTime" BO_ 338 0; -BA_ "NetworkInitialization" BO_ 338 0; -BA_ "GenMsgDelayTime" BO_ 338 0; -BA_ "GenSigVtEn" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigVtName" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 "CAN_DET_SUPER_RES_TARGET_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_ND_TARGET_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_ND_TARGET_51 "CAN_DET_ND_TARGET_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 "CAN_DET_HOST_VEH_CLUTTER_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_VALID_LEVEL_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_VALID_LEVEL_51 "CAN_DET_VALID_LEVEL_51"; -BA_ "GenSigStartValue" SG_ 338 CAN_DET_AZIMUTH_51 0; -BA_ "GenSigSendType" SG_ 338 CAN_DET_AZIMUTH_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_AZIMUTH_51 "CAN_DET_AZIMUTH_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_51 "CAN_DET_RANGE_51"; -BA_ "GenSigStartValue" SG_ 338 CAN_DET_RANGE_RATE_51 0; -BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_RATE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_RATE_51 "CAN_DET_RANGE_RATE_51"; -BA_ "GenSigSendType" SG_ 338 CAN_DET_AMPLITUDE_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_DET_AMPLITUDE_51 "CAN_DET_AMPLITUDE_51"; -BA_ "GenSigSendType" SG_ 338 CAN_SCAN_INDEX_2LSB_51 0; -BA_ "GenSigCmt" SG_ 338 CAN_SCAN_INDEX_2LSB_51 "CAN_SCAN_INDEX_2LSB_51"; -BA_ "GenMsgSendType" BO_ 337 1; -BA_ "GenMsgILSupport" BO_ 337 1; -BA_ "GenMsgNrOfRepetition" BO_ 337 0; -BA_ "GenMsgCycleTime" BO_ 337 0; -BA_ "NetworkInitialization" BO_ 337 0; -BA_ "GenMsgDelayTime" BO_ 337 0; -BA_ "GenSigVtEn" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigVtName" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 "CAN_DET_SUPER_RES_TARGET_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_ND_TARGET_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_ND_TARGET_50 "CAN_DET_ND_TARGET_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 "CAN_DET_HOST_VEH_CLUTTER_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_VALID_LEVEL_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_VALID_LEVEL_50 "CAN_DET_VALID_LEVEL_50"; -BA_ "GenSigStartValue" SG_ 337 CAN_DET_AZIMUTH_50 0; -BA_ "GenSigSendType" SG_ 337 CAN_DET_AZIMUTH_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_AZIMUTH_50 "CAN_DET_AZIMUTH_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_50 "CAN_DET_RANGE_50"; -BA_ "GenSigStartValue" SG_ 337 CAN_DET_RANGE_RATE_50 0; -BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_RATE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_RATE_50 "CAN_DET_RANGE_RATE_50"; -BA_ "GenSigSendType" SG_ 337 CAN_DET_AMPLITUDE_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_DET_AMPLITUDE_50 "CAN_DET_AMPLITUDE_50"; -BA_ "GenSigSendType" SG_ 337 CAN_SCAN_INDEX_2LSB_50 0; -BA_ "GenSigCmt" SG_ 337 CAN_SCAN_INDEX_2LSB_50 "CAN_SCAN_INDEX_2LSB_50"; -BA_ "GenMsgSendType" BO_ 336 1; -BA_ "GenMsgILSupport" BO_ 336 1; -BA_ "GenMsgNrOfRepetition" BO_ 336 0; -BA_ "GenMsgCycleTime" BO_ 336 0; -BA_ "NetworkInitialization" BO_ 336 0; -BA_ "GenMsgDelayTime" BO_ 336 0; -BA_ "GenSigVtEn" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigVtName" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 "CAN_DET_SUPER_RES_TARGET_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_ND_TARGET_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_ND_TARGET_49 "CAN_DET_ND_TARGET_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 "CAN_DET_HOST_VEH_CLUTTER_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_VALID_LEVEL_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_VALID_LEVEL_49 "CAN_DET_VALID_LEVEL_49"; -BA_ "GenSigStartValue" SG_ 336 CAN_DET_AZIMUTH_49 0; -BA_ "GenSigSendType" SG_ 336 CAN_DET_AZIMUTH_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_AZIMUTH_49 "CAN_DET_AZIMUTH_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_49 "CAN_DET_RANGE_49"; -BA_ "GenSigStartValue" SG_ 336 CAN_DET_RANGE_RATE_49 0; -BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_RATE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_RATE_49 "CAN_DET_RANGE_RATE_49"; -BA_ "GenSigSendType" SG_ 336 CAN_DET_AMPLITUDE_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_DET_AMPLITUDE_49 "CAN_DET_AMPLITUDE_49"; -BA_ "GenSigSendType" SG_ 336 CAN_SCAN_INDEX_2LSB_49 0; -BA_ "GenSigCmt" SG_ 336 CAN_SCAN_INDEX_2LSB_49 "CAN_SCAN_INDEX_2LSB_49"; -BA_ "GenMsgSendType" BO_ 326 1; -BA_ "GenMsgILSupport" BO_ 326 1; -BA_ "GenMsgNrOfRepetition" BO_ 326 0; -BA_ "GenMsgCycleTime" BO_ 326 0; -BA_ "NetworkInitialization" BO_ 326 0; -BA_ "GenMsgDelayTime" BO_ 326 0; -BA_ "GenSigVtEn" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigVtName" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 "CAN_DET_SUPER_RES_TARGET_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_ND_TARGET_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_ND_TARGET_39 "CAN_DET_ND_TARGET_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 "CAN_DET_HOST_VEH_CLUTTER_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_VALID_LEVEL_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_VALID_LEVEL_39 "CAN_DET_VALID_LEVEL_39"; -BA_ "GenSigStartValue" SG_ 326 CAN_DET_AZIMUTH_39 0; -BA_ "GenSigSendType" SG_ 326 CAN_DET_AZIMUTH_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_AZIMUTH_39 "CAN_DET_AZIMUTH_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_39 "CAN_DET_RANGE_39"; -BA_ "GenSigStartValue" SG_ 326 CAN_DET_RANGE_RATE_39 0; -BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_RATE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_RATE_39 "CAN_DET_RANGE_RATE_39"; -BA_ "GenSigSendType" SG_ 326 CAN_DET_AMPLITUDE_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_DET_AMPLITUDE_39 "CAN_DET_AMPLITUDE_39"; -BA_ "GenSigSendType" SG_ 326 CAN_SCAN_INDEX_2LSB_39 0; -BA_ "GenSigCmt" SG_ 326 CAN_SCAN_INDEX_2LSB_39 "CAN_SCAN_INDEX_2LSB_39"; -BA_ "GenMsgSendType" BO_ 315 1; -BA_ "GenMsgILSupport" BO_ 315 1; -BA_ "GenMsgNrOfRepetition" BO_ 315 0; -BA_ "GenMsgCycleTime" BO_ 315 0; -BA_ "NetworkInitialization" BO_ 315 0; -BA_ "GenMsgDelayTime" BO_ 315 0; -BA_ "GenSigVtEn" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigVtName" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 "CAN_DET_SUPER_RES_TARGET_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_ND_TARGET_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_ND_TARGET_28 "CAN_DET_ND_TARGET_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 "CAN_DET_HOST_VEH_CLUTTER_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_VALID_LEVEL_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_VALID_LEVEL_28 "CAN_DET_VALID_LEVEL_28"; -BA_ "GenSigStartValue" SG_ 315 CAN_DET_AZIMUTH_28 0; -BA_ "GenSigSendType" SG_ 315 CAN_DET_AZIMUTH_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_AZIMUTH_28 "CAN_DET_AZIMUTH_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_28 "CAN_DET_RANGE_28"; -BA_ "GenSigStartValue" SG_ 315 CAN_DET_RANGE_RATE_28 0; -BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_RATE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_RATE_28 "CAN_DET_RANGE_RATE_28"; -BA_ "GenSigSendType" SG_ 315 CAN_DET_AMPLITUDE_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_DET_AMPLITUDE_28 "CAN_DET_AMPLITUDE_28"; -BA_ "GenSigSendType" SG_ 315 CAN_SCAN_INDEX_2LSB_28 0; -BA_ "GenSigCmt" SG_ 315 CAN_SCAN_INDEX_2LSB_28 "CAN_SCAN_INDEX_2LSB_28"; -EOF - -build_ba "17" -build_ba "16" -build_ba "15" -build_ba "14" -build_ba "13" -build_ba "12" -build_ba "11" -build_ba "10" -build_ba "09" -build_ba "08" -build_ba "07" -build_ba "06" -build_ba "05" -build_ba "03" -build_ba "02" - -cat <> ${OUT_FILENAME} -BA_ "GenMsgSendType" BO_ 256 1; -BA_ "GenMsgILSupport" BO_ 256 1; -BA_ "GenMsgNrOfRepetition" BO_ 256 0; -BA_ "NetworkInitialization" BO_ 256 0; -BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MINOR_MRR "CAN_PCAN_MINOR_MRR"; -BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MINOR_MRR 0; -BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MAJOR_MRR "CAN_PCAN_MAJOR_MRR"; -BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MAJOR_MRR 0; -BA_ "GenMsgCycleTime" BO_ 257 30; -BA_ "GenMsgSendType" BO_ 257 0; -BA_ "GenMsgILSupport" BO_ 257 1; -BA_ "GenMsgNrOfRepetition" BO_ 257 0; -BA_ "NetworkInitialization" BO_ 257 0; -BA_ "GenSigCmt" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtEn" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtName" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; -BA_ "GenSigVtName" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigCmt" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; -BA_ "GenSigStartValue" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE 0; -BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; -BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_MNR 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_EXT_COND_NOK 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_NOT_START 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_OVERHEAT_ERROR 0; -BA_ "GenSigCmt" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigVtName" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; -BA_ "GenSigSendType" SG_ 257 CAN_RADAR_NOT_OP 0; -BA_ "GenSigCmt" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigVtEn" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigVtName" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; -BA_ "GenSigSendType" SG_ 257 CAN_XCVR_OPERATIONAL 0; -EOF - -build_ba "01" - -cat <> ${OUT_FILENAME} -BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; -BA_DEF_DEF_ "CrossOver_LIN" "No"; -BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; -BA_DEF_DEF_ "ContentDependant" "No"; -BA_DEF_DEF_ "GenSigTimeoutTime_RCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_OCS" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_CCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_IPMA" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_SCCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; -BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; -BA_DEF_DEF_ "GenSigTimeoutTime_Generic_BCM" 0; -BA_DEF_DEF_ "NmMessage" "No"; -BA_DEF_DEF_ "DiagResponse" "No"; -BA_DEF_DEF_ "DiagRequest" "No"; -BA_DEF_DEF_ "TpTxIndex" 0; -BA_DEF_DEF_ "DiagState" "No"; -BA_DEF_DEF_ "TpApplType" ""; -BA_DEF_DEF_ "NmAsrMessage" "No"; -BA_DEF_DEF_ "Mulitplexer" "No"; -BA_DEF_DEF_ "ConfiguredTransmitter" "No"; -BA_DEF_DEF_ "EventRateOfChange" 10000; -BA_DEF_DEF_ "GenMsgHandlingTypeDoc" ""; -BA_DEF_DEF_ "GenMsgHandlingTypeCode" ""; -BA_DEF_DEF_ "GenMsgMarked" ""; -BA_DEF_DEF_ "GenSigMarked" ""; -BA_DEF_DEF_ "GenSigVtIndex" ""; -BA_DEF_DEF_ "GenSigVtName" ""; -BA_DEF_DEF_ "GenSigVtEn" ""; -BA_DEF_DEF_ "GenSigSNA" ""; -BA_DEF_DEF_ "GenSigCmt" ""; -BA_DEF_DEF_ "GenMsgCmt" ""; -BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; -BA_DEF_DEF_ "GenSigInactiveValue" 0; -BA_DEF_DEF_ "GenSigMissingSourceValue" 0; -BA_DEF_DEF_ "WakeupSignal" "No"; -BA_DEF_DEF_ "GenSigStartValue" 0; -BA_DEF_DEF_ "GenMsgILSupport" "Yes"; -BA_DEF_DEF_ "NetworkInitializationCommand" "No"; -BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; -BA_DEF_DEF_ "GenMsgCycleTime" 0; -BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; -BA_DEF_DEF_ "GenMsgDelayTime" 0; -BA_DEF_DEF_ "GenMsgNrOfRepetition" 0; -BA_DEF_DEF_ "GenMsgStartDelayTime" 0; -BA_DEF_DEF_ "NetworkInitialization" "No"; -BA_DEF_DEF_ "MessageGateway" "No"; -BA_DEF_DEF_ "ILUsed" "Yes"; -BA_DEF_DEF_ "NetworkInitializationUsed" "No"; -BA_DEF_DEF_ "PowerType" "Switched"; -BA_DEF_DEF_ "NodeStartUpTime" 250; -BA_DEF_DEF_ "NodeWakeUpTime" 10; -BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; -BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; -VAL_ 34 IPMA_PCAN_DataRangeCheck 1 "Fault Present" 0 "No Fault"; -VAL_ 34 IPMA_PCAN_MissingMsg 1 "Fault Present" 0 "No Fault "; -VAL_ 34 VINSignalCompareFailure 1 "Fault Present" 0 "No Fault"; -VAL_ 34 ModuleNotConfiguredError 1 "Fault Present" 0 "No Fault"; -VAL_ 34 CarCfgNotConfiguredError 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte7_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ARMtoDSPChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 DSPtoArmChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 HostToArmChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ARMtoHostChksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 LoopBWOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 DSPOverrunFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte6_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TuningSensitivityFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 SaturatedTuningFreqFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 LocalOscPowerFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterPowerFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte6_bit0 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 XCVRDeviceSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 FreqSynthesizerSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 AnalogConverterDevicSPIFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 SidelobeBlockage 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte5_bit1 1 "Fault Present" 0 "No Fault"; -VAL_ 33 MNRBlocked 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ECUTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 AlignmentRoutineFailedFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 UnreasonableRadarData 1 "Fault Present" 0 "No Fault"; -VAL_ 33 MicroprocessorTempHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 VerticalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 HorizontalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 FactoryAlignmentMode 1 "Fault Present" 0 "No Fault"; -VAL_ 33 BatteryLowFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 BatteryHighFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_1p25SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte3_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ThermistorOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_3p3DACSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_3p3RAWSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 v_5_SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; -VAL_ 33 TransmitterIDFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit3 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte2_bit2 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PCANMissingMsgFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PCANBusOff 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit7 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 InstructionSetCheckFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 StackOverflowFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 WatchdogFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 PLLLockFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte1_bit1 1 "Fault Present" 0 "No Fault"; -VAL_ 33 RAMMemoryTestFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 USCValidationFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit6 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit5 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit4 1 "Fault Present" 0 "No Fault"; -VAL_ 33 Active_Flt_Latched_byte0_bit3 1 "Fault Present" 0 "No Fault"; -VAL_ 33 KeepAliveChecksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ProgramCalibrationFlashChecksum 1 "Fault Present" 0 "No Fault"; -VAL_ 33 ApplicationFlashChecksumFault 1 "Fault Present" 0 "No Fault"; -VAL_ 371 CAN_AUTO_ALIGN_HANGLE_QF 3 "Accurate" 2 "Inaccurate" 1 "Temporarily undefined" 0 "Undefined"; -VAL_ 371 CAN_ALIGNMENT_STATUS 15 "Undefined_2" 14 "Undefined_1" 13 "Low Amplitude (Flat-plate only)" 12 "No Peak (Flat-plate only)" 11 "Fail Ver and Hor OutOfRange" 10 "Fail Vertical Align OutOfRange" 9 "Fail Horizontal Align OutOfRange" 8 "Fail Time Out" 7 "Fail Only Right Target Found" 6 "Fail Only Left Target Found" 5 "Fail Variance Too Large" 4 "Fail Deviation Too Large" 3 "Fail No Target" 2 "Success" 1 "Busy" 0 "Off"; -VAL_ 371 CAN_ALIGNMENT_STATE 6 "Static alignment flat-plate" 5 "Static alignment 2-target" 4 "Static alignment 1-target" 3 "Service alignment" 2 "Short track alignment" 1 "Auto alignment" 0 "Off"; -EOF - -build_val "04" - -cat <> ${OUT_FILENAME} -VAL_ 351 CAN_DET_CONFID_AZIMUTH_64 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 350 CAN_DET_CONFID_AZIMUTH_63 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 349 CAN_DET_CONFID_AZIMUTH_62 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 348 CAN_DET_CONFID_AZIMUTH_61 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 347 CAN_DET_CONFID_AZIMUTH_60 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 346 CAN_DET_CONFID_AZIMUTH_59 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 345 CAN_DET_CONFID_AZIMUTH_58 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 344 CAN_DET_CONFID_AZIMUTH_57 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 343 CAN_DET_CONFID_AZIMUTH_56 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 342 CAN_DET_CONFID_AZIMUTH_55 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 335 CAN_DET_CONFID_AZIMUTH_48 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 334 CAN_DET_CONFID_AZIMUTH_47 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 333 CAN_DET_CONFID_AZIMUTH_46 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 332 CAN_DET_CONFID_AZIMUTH_45 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 331 CAN_DET_CONFID_AZIMUTH_44 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 330 CAN_DET_CONFID_AZIMUTH_43 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 329 CAN_DET_CONFID_AZIMUTH_42 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 328 CAN_DET_CONFID_AZIMUTH_41 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 327 CAN_DET_CONFID_AZIMUTH_40 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 325 CAN_DET_CONFID_AZIMUTH_38 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 324 CAN_DET_CONFID_AZIMUTH_37 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 323 CAN_DET_CONFID_AZIMUTH_36 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 322 CAN_DET_CONFID_AZIMUTH_35 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 321 CAN_DET_CONFID_AZIMUTH_34 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 320 CAN_DET_CONFID_AZIMUTH_33 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 319 CAN_DET_CONFID_AZIMUTH_32 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 318 CAN_DET_CONFID_AZIMUTH_31 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 317 CAN_DET_CONFID_AZIMUTH_30 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 316 CAN_DET_CONFID_AZIMUTH_29 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 314 CAN_DET_CONFID_AZIMUTH_27 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 313 CAN_DET_CONFID_AZIMUTH_26 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 312 CAN_DET_CONFID_AZIMUTH_25 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 311 CAN_DET_CONFID_AZIMUTH_24 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 310 CAN_DET_CONFID_AZIMUTH_23 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -EOF - -build_val "22" -build_val "21" -build_val "20" -build_val "19" -build_val "18" - -cat <> ${OUT_FILENAME} -VAL_ 341 CAN_DET_CONFID_AZIMUTH_54 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 340 CAN_DET_CONFID_AZIMUTH_53 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 339 CAN_DET_CONFID_AZIMUTH_52 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 338 CAN_DET_CONFID_AZIMUTH_51 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 337 CAN_DET_CONFID_AZIMUTH_50 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 336 CAN_DET_CONFID_AZIMUTH_49 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 326 CAN_DET_CONFID_AZIMUTH_39 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -VAL_ 315 CAN_DET_CONFID_AZIMUTH_28 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; -EOF - -build_val "17" -build_val "16" -build_val "15" -build_val "14" -build_val "13" -build_val "12" -build_val "11" -build_val "10" -build_val "09" -build_val "08" -build_val "07" -build_val "06" -build_val "05" -build_val "03" -build_val "02" - -cat <> ${OUT_FILENAME} -VAL_ 257 CAN_INTERFERENCE_TYPE 2 "Star PD-Like" 1 "Slow FMCW" 0 "No Interference"; -VAL_ 257 CAN_RECOMMEND_UNCONVERGE 1 "Recommended" 0 "Not Recommended"; -VAL_ 257 CAN_RADAR_ALIGN_INCOMPLETE 1 "Alignment Incomplete" 0 "Alignment Completed"; -VAL_ 257 CAN_BLOCKAGE_SIDELOBE 1 "Radar Blockage" 0 "No Radar Blockage"; -VAL_ 257 CAN_BLOCKAGE_MNR 1 "Radar Blockage" 0 "No Radar Blockage"; -VAL_ 257 CAN_RADAR_EXT_COND_NOK 1 "Too high temp or insufficient pw" 0 "External conditions OK"; -VAL_ 257 CAN_RADAR_ALIGN_OUT_RANGE 1 "Radar out of range" 0 "Radar within range"; -VAL_ 257 CAN_RADAR_ALIGN_NOT_START 1 "Radar align not started" 0 "Radar align started"; -VAL_ 257 CAN_RADAR_OVERHEAT_ERROR 1 "Radar overheat condition" 0 "No Overheat"; -VAL_ 257 CAN_RADAR_NOT_OP 1 "Radar not operational" 0 "Radar operational"; -VAL_ 257 CAN_XCVR_OPERATIONAL 1 "On" 0 "Off "; -EOF - -build_val "01" \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/generator.py b/opendbc_repo/opendbc/dbc/generator/generator.py deleted file mode 100755 index d0f41fc80a..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/generator.py +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env python3 -import os -import re -import glob -import subprocess - -generator_path = os.path.dirname(os.path.realpath(__file__)) -opendbc_root = os.path.join(generator_path, '../') -include_pattern = re.compile(r'CM_ "IMPORT (.*?)";\n') -generated_suffix = '_generated.dbc' - - -def read_dbc(src_dir: str, filename: str) -> str: - with open(os.path.join(src_dir, filename), encoding='utf-8') as file_in: - return file_in.read() - - -def create_dbc(src_dir: str, filename: str, output_path: str): - dbc_file_in = read_dbc(src_dir, filename) - - includes = include_pattern.findall(dbc_file_in) - - output_filename = filename.replace('.dbc', generated_suffix) - output_file_location = os.path.join(output_path, output_filename) - - with open(output_file_location, 'w', encoding='utf-8') as dbc_file_out: - dbc_file_out.write('CM_ "AUTOGENERATED FILE, DO NOT EDIT";\n') - - for include_filename in includes: - include_file_header = f'\n\nCM_ "Imported file {include_filename} starts here";\n' - dbc_file_out.write(include_file_header) - - include_file = read_dbc(src_dir, include_filename) - dbc_file_out.write(include_file) - - dbc_file_out.write(f'\nCM_ "{filename} starts here";\n') - - core_dbc = include_pattern.sub('', dbc_file_in) - dbc_file_out.write(core_dbc) - - -def create_all(output_path: str): - # clear out old DBCs - for f in glob.glob(f"{output_path}/*{generated_suffix}"): - os.remove(f) - - # run python generator scripts first - for f in glob.glob(f"{generator_path}/*/*.py"): - subprocess.check_call(f) - - for src_dir, _, filenames in os.walk(generator_path): - if src_dir == generator_path: - continue - - #print(src_dir) - for filename in filenames: - if filename.startswith('_') or not filename.endswith('.dbc'): - continue - - #print(filename) - create_dbc(src_dir, filename, output_path) - -if __name__ == "__main__": - create_all(opendbc_root) diff --git a/opendbc_repo/opendbc/dbc/generator/gm/_community.dbc b/opendbc_repo/opendbc/dbc/generator/gm/_community.dbc deleted file mode 100644 index d8855b3594..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/gm/_community.dbc +++ /dev/null @@ -1,15 +0,0 @@ -BO_ 512 GAS_COMMAND: 6 NEO - SG_ GAS_COMMAND : 7|16@0+ (0.125677,-75.909) [0|1] "" INTERCEPTOR - SG_ GAS_COMMAND2 : 23|16@0+ (0.251976,-76.601) [0|1] "" INTERCEPTOR - SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR - SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR - SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR - -BO_ 513 GAS_SENSOR: 6 INTERCEPTOR - SG_ INTERCEPTOR_GAS : 7|16@0+ (0.125677,-75.909) [0|1] "" NEO - SG_ INTERCEPTOR_GAS2 : 23|16@0+ (0.251976,-76.601) [0|1] "" NEO - SG_ STATE : 39|4@0+ (1,0) [0|15] "" NEO - SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" NEO - SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" NEO - -VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; diff --git a/opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc b/opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc deleted file mode 100644 index 4730a0f56d..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc +++ /dev/null @@ -1,353 +0,0 @@ - -CM_ "IMPORT _community.dbc"; -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: K16_BECM K73_TCIC K9_BCM K43_PSCM K17_EBCM K20_ECM K114B_HPCM NEO K124_ASCM EPB -VAL_TABLE_ TurnSignals 2 "Right Turn" 1 "Left Turn" 0 "None" ; -VAL_TABLE_ Intellibeam 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HighBeamsActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HighBeamsTemporary 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCLeadCar 1 "Present" 0 "Not Present" ; -VAL_TABLE_ ACCCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ BrakePedalPressed 1 "Pressed" 0 "Depressed" ; -VAL_TABLE_ DistanceButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ LKAButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_TABLE_ DriveModeButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; -VAL_TABLE_ ESPButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ DoorStatus 1 "Opened" 0 "Closed" ; -VAL_TABLE_ SeatBeltStatus 1 "Latched" 0 "Unlatched" ; -VAL_TABLE_ LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; -VAL_TABLE_ GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; -VAL_TABLE_ GasRegenCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HandsOffSWDetectionStatus 1 "Hands On" 0 "Hands Off" ; -VAL_TABLE_ HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; - - -BO_ 189 EBCMRegenPaddle: 7 K17_EBCM - SG_ RegenPaddle : 7|4@0+ (1,0) [0|0] "" NEO - -BO_ 190 ECMAcceleratorPos: 6 K20_ECM - SG_ BrakePedalPos : 15|8@0+ (1,0) [0|0] "sticky" NEO - SG_ GasPedalAndAcc : 23|8@0+ (1,0) [0|0] "" NEO - -BO_ 201 ECMEngineStatus: 8 K20_ECM - SG_ EngineTPS : 39|8@0+ (0.392156863,0) [0|100.000000065] "%" NEO - SG_ EngineRPM : 15|16@0+ (0.25,0) [0|0] "RPM" NEO - SG_ CruiseMainOn : 29|1@0+ (1,0) [0|1] "" NEO - SG_ BrakePressed : 40|1@0+ (1,0) [0|1] "" NEO - SG_ Standstill : 2|1@0+ (1,0) [0|1] "" NEO - SG_ CruiseActive : 31|2@0+ (1,0) [0|3] "" NEO - -BO_ 209 EBCMBrakePedalSensors: 7 K17_EBCM - SG_ Counter1 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ Counter2 : 23|2@0+ (1,0) [0|3] "" XXX - SG_ BrakePedalPosition1 : 5|14@0+ (1,0) [0|16383] "" XXX - SG_ BrakePedalPosition2 : 21|14@0- (-1,0) [0|16383] "" XXX - SG_ BrakeNormalized1 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ BrakeNormalized2 : 47|8@0- (-1,0) [0|255] "" XXX - -BO_ 241 EBCMBrakePedalPosition: 6 K17_EBCM - SG_ BrakePressed : 1|1@0+ (1,0) [0|1] "" XXX - SG_ BrakePedalPosition : 15|8@0+ (1,0) [0|255] "" NEO - -BO_ 298 BCMDoorBeltStatus: 8 K9_BCM - SG_ RearLeftDoor : 8|1@0+ (1,0) [0|0] "" NEO - SG_ FrontLeftDoor : 9|1@0+ (1,0) [0|0] "" NEO - SG_ FrontRightDoor : 10|1@0+ (1,0) [0|0] "" NEO - SG_ RearRightDoor : 23|1@0+ (1,0) [0|0] "" NEO - SG_ LeftSeatBelt : 12|1@0+ (1,0) [0|0] "" NEO - SG_ RightSeatBelt : 53|1@0+ (1,0) [0|0] "" NEO - -BO_ 309 ECMPRDNL: 8 K20_ECM - SG_ PRNDL : 2|3@0+ (1,0) [0|0] "" NEO - SG_ ESPButton : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 320 BCMTurnSignals: 3 K9_BCM - SG_ TurnSignals : 19|2@0+ (1,0) [0|0] "" NEO - SG_ Intellibeam : 13|1@0+ (1,0) [0|1] "" XXX - SG_ HighBeamsActive : 7|1@0+ (1,0) [0|1] "" XXX - SG_ HighBeamsTemporary : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 322 BCMBlindSpotMonitor: 7 K9_BCM - SG_ LeftBSM : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RightBSM : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 328 PSCM_148: 1 K43_PSCM - -BO_ 381 ESPStatus: 6 K20_ECM - SG_ TractionControlOn : 5|1@0+ (1,0) [0|0] "" NEO - SG_ MSG17D_AccPower : 35|12@0- (1,0) [0|0] "" NEO - -BO_ 384 ASCMLKASteeringCmd: 4 NEO - SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdChecksum : 19|12@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdActive : 3|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmd : 2|11@0- (1,0) [0|0] "" NEO - -BO_ 388 PSCMStatus: 8 K43_PSCM - SG_ HandsOffSWDetectionMode : 20|2@0+ (1,0) [0|3] "" NEO - SG_ HandsOffSWlDetectionStatus : 21|1@0+ (1,0) [0|1] "" NEO - SG_ LKATorqueDeliveredStatus : 5|3@0+ (1,0) [0|7] "" NEO - SG_ LKADriverAppldTrq : 50|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO - SG_ LKATorqueDelivered : 18|11@0- (0.01,0) [0|1] "" NEO - SG_ LKATotalTorqueDelivered : 2|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO - SG_ RollingCounter : 38|4@0+ (1,0) [0|15] "" XXX - SG_ PSCMStatusChecksum : 33|10@0+ (1,0) [0|1023] "" XXX - -BO_ 417 AcceleratorPedal: 7 XXX - SG_ AcceleratorPedal : 55|8@0+ (1,0) [0|0] "" NEO - -BO_ 451 GasAndAcc: 8 XXX - SG_ GasPedalAndAcc2 : 55|8@0+ (1,0) [0|0] "" NEO - -BO_ 452 AcceleratorPedal2: 8 XXX - SG_ CruiseState : 15|3@0+ (1,0) [0|7] "" NEO - SG_ AcceleratorPedal2 : 47|8@0+ (1,0) [0|0] "" NEO - -BO_ 481 ASCMSteeringButton: 7 K124_ASCM - SG_ DistanceButton : 22|1@0+ (1,0) [0|0] "" NEO - SG_ LKAButton : 23|1@0+ (1,0) [0|0] "" NEO - SG_ ACCAlwaysOne : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ACCButtons : 46|3@0+ (1,0) [0|0] "" NEO - SG_ DriveModeButton : 39|1@0+ (1,0) [0|1] "" XXX - SG_ RollingCounter : 33|2@0+ (1,0) [0|3] "" NEO - SG_ SteeringButtonChecksum : 43|12@0+ (1,0) [0|255] "" NEO - -BO_ 485 PSCMSteeringAngle: 8 K43_PSCM - SG_ SteeringWheelAngle : 15|16@0- (0.0625,0) [-2047|2047] "deg" NEO - SG_ SteeringWheelRate : 27|12@0- (1,0) [-2047|2047] "deg/s" NEO - -BO_ 489 EBCMVehicleDynamic: 8 K17_EBCM - SG_ BrakePedalPressed : 6|1@0+ (1,0) [0|0] "" NEO - SG_ LateralAcceleration : 3|10@0- (0.161,0) [-2047|2047] "m/s2" NEO - SG_ YawRate : 35|12@0- (0.625,0) [0|1] "" NEO - SG_ YawRate2 : 51|12@0- (0.0625,0) [-2047|2047] "grad/s" NEO - -BO_ 352 BCMImmobilizer: 5 K9_BCM - SG_ ImmobilizerInfo : 7|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 497 BCMGeneralPlatformStatus: 8 K9_BCM - SG_ SystemPowerMode : 1|2@0+ (1,0) [0|3] "" XXX - SG_ SystemBackUpPowerMode : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ParkBrakeSwActive : 36|1@0+ (1,0) [0|3] "" XXX - -BO_ 500 SportMode: 6 XXX - SG_ SnowIceMode : 9|1@0+ (1,0) [0|1] "" XXX - SG_ SportMode : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 501 ECMPRDNL2: 8 K20_ECM - SG_ TransmissionState : 48|4@1+ (1,0) [0|7] "" NEO - SG_ PRNDL2 : 27|4@0+ (1,0) [0|255] "" NEO - SG_ ManualMode : 41|1@0+ (1,0) [0|1] "" NEO - -BO_ 532 BRAKE_RELATED: 6 XXX - SG_ UserBrakePressure : 0|9@0+ (1,0) [0|511] "" XXX - -BO_ 560 EPBStatus: 8 EPB - SG_ EPBClosed : 12|1@0+ (1,0) [0|1] "" NEO - -BO_ 562 EBCMFrictionBrakeStatus: 8 K17_EBCM - SG_ FrictionBrakeUnavailable : 46|1@0+ (1,0) [0|1] "" XXX - -BO_ 608 SPEED_RELATED: 8 XXX - SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" XXX - SG_ ClusterSpeed : 31|8@0+ (1,0) [0|0] "" XXX - -BO_ 711 BECMBatteryVoltageCurrent: 6 K17_EBCM - SG_ HVBatteryVoltage : 31|12@0+ (0.125,0) [0|511.875] "V" NEO - SG_ HVBatteryCurrent : 12|13@0- (0.15,0) [-614.4|614.25] "A" NEO - -BO_ 715 ASCMGasRegenCmd: 8 K124_ASCM - SG_ GasRegenAccType : 15|2@0+ (1,0) [0|3] "" NEO - SG_ GasRegenChecksum : 32|25@0+ (1,0) [0|0] "" NEO - SG_ GasRegenFullStopActive : 13|1@0+ (1,0) [0|0] "" NEO - SG_ GasRegenCmdActive : 0|1@0+ (1,0) [0|0] "" NEO - SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" NEO - SG_ GasRegenCmd : 10|19@0+ (0.125,-22534) [-22534|43001.875] "Nm" NEO - -BO_ 717 ASCM_2CD: 5 K124_ASCM - -BO_ 761 BRAKE_RELATED_2: 7 XXX - SG_ UserBrakePressure2 : 47|9@0+ (1,0) [0|511] "" XXX - -BO_ 789 EBCMFrictionBrakeCmd: 5 K124_ASCM - SG_ RollingCounter : 33|2@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO - -BO_ 800 AEBCmd: 6 K124_ASCM - SG_ RollingCounter : 5|2@0+ (1,0) [0|3] "" NEO - SG_ AEBChecksum : 27|20@0+ (1,0) [0|0] "" NEO - SG_ AEBCmdActive : 3|1@1+ (1,0) [0|1] "" NEO - SG_ AEBCmd : 2|11@0+ (1,0) [0|0] "" NEO - SG_ AEBCmd2 : 23|8@0+ (1,0) [0|0] "" NEO - -BO_ 810 TCICOnStarGPSPosition: 8 K73_TCIC - SG_ GPSLongitude : 39|32@0+ (1,-2147483648) [0|0] "milliarcsecond" NEO - SG_ GPSLatitude : 7|32@0+ (1,0) [0|0] "milliarcsecond" NEO - -BO_ 840 EBCMWheelSpdFront: 5 K17_EBCM - SG_ FLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ FRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO - -BO_ 842 EBCMWheelSpdRear: 5 K17_EBCM - SG_ RLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ RRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ RRWheelDir : 34|3@0+ (1,0) [0|7] "" NEO - SG_ RLWheelDir : 37|3@0+ (1,0) [0|7] "" NEO - -BO_ 869 ASCM_365: 4 K124_ASCM - -BO_ 880 ASCMActiveCruiseControlStatus: 6 K124_ASCM - SG_ ACCCruiseState : 8|3@1+ (1,0) [0|7] "" XXX - SG_ ACCLeadCar : 44|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCAlwaysOne2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCAlwaysOne : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCSpeedSetpoint : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" NEO - SG_ ACCGapLevel : 21|2@0+ (1,0) [0|0] "" NEO - SG_ ACCResumeButton : 1|1@0+ (1,0) [0|0] "" NEO - SG_ ACCCmdActive : 23|1@0+ (1,0) [0|0] "" NEO - SG_ FCWAlert : 41|2@0+ (1,0) [0|3] "" XXX - -BO_ 967 EVDriveMode: 4 XXX - SG_ SinglePedalModeActive : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SinglePedalModeRisingEdge : 21|1@0+ (1,0) [0|1] "" XXX - SG_ SinglePedalModeFallingEdge : 22|1@0+ (1,0) [0|1] "" XXX - -BO_ 977 ECMCruiseControl: 8 K20_ECM - SG_ CruiseActive : 39|1@0+ (1,0) [0|3] "" NEO - SG_ CruiseSetSpeed : 19|12@0+ (0.0625,0) [0|0] "km/h" NEO - -BO_ 1001 ECMVehicleSpeed: 8 K20_ECM - SG_ VehicleSpeed : 7|16@0+ (0.01,0) [0|0] "mph" NEO - SG_ VehicleSpeedLeft : 39|16@0+ (0.01,0) [0|0] "mph" NEO - -BO_ 1033 ASCMKeepAlive: 7 NEO - SG_ ASCMKeepAliveAllZero : 7|56@0+ (1,0) [0|0] "" NEO - -BO_ 1034 ASCM_40A: 7 K124_ASCM - -BO_ 1217 ECMEngineCoolantTemp: 8 K20_ECM - SG_ EngineCoolantTemp : 23|8@0+ (1,-40) [0|0] "C" NEO - -BO_ 1249 VIN_Part2: 8 K20_ECM - SG_ VINPart2 : 7|64@0+ (1,0) [0|0] "" NEO - -BO_ 1296 ASCM_510: 4 K124_ASCM - -BO_ 1300 VIN_Part1: 8 K20_ECM - SG_ VINPart1 : 7|64@0+ (1,0) [0|0] "" NEO - -BO_ 1912 PSCM_778: 8 K43_PSCM - -BO_ 1930 ASCM_78A: 7 K124_ASCM - -BO_TX_BU_ 384 : K124_ASCM,NEO; -BO_TX_BU_ 880 : NEO,K124_ASCM; -BO_TX_BU_ 1033 : K124_ASCM,NEO; -BO_TX_BU_ 715 : NEO,K124_ASCM; -BO_TX_BU_ 789 : NEO,K124_ASCM; -BO_TX_BU_ 800 : NEO,K124_ASCM; - - -CM_ BU_ K16_BECM "Battery Energy Control Module"; -CM_ BU_ K73_TCIC "Telematics Communication Control Module"; -CM_ BU_ K9_BCM "Body Control Module"; -CM_ BU_ K43_PSCM "Power Steering Control Module"; -CM_ BU_ K17_EBCM "Electronic Brake Control Module"; -CM_ BU_ K20_ECM "Engine Control Module"; -CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; -CM_ BU_ NEO "Comma NEO"; -CM_ BU_ K124_ASCM "Active Safety Control Module"; -CM_ SG_ 381 MSG17D_AccPower "Need to investigate"; -CM_ BO_ 190 "Length varies from 6 to 8 bytes by car"; -CM_ SG_ 190 GasPedalAndAcc "ACC baseline is 62"; -CM_ SG_ 322 LeftBSM "For some cars, this can only be when the blinker is also active"; -CM_ SG_ 322 RightBSM "For some cars, this can only be when the blinker is also active"; -CM_ SG_ 352 ImmobilizerInfo "Non-zero when ignition or accessory mode"; -CM_ SG_ 451 GasPedalAndAcc2 "ACC baseline is 62"; -CM_ SG_ 481 ACCAlwaysOne "Usually 1 if the car is equipped with ACC"; -CM_ SG_ 562 FrictionBrakeUnavailable "1 when ACC brake control is unavailable. Stays high if brake command messages are blocked for a period of time"; -CM_ SG_ 497 SystemPowerMode "Describes ignition"; -CM_ SG_ 497 SystemBackUpPowerMode "Describes ignition + preconditioning mode, noisy"; -CM_ SG_ 501 PRNDL2 "When ManualMode is Active, Value is 13=L1 12=L2 11=L3 ... 4=L10"; -CM_ SG_ 532 UserBrakePressure "can be lower than other brake position signals when the brakes are pre-filled from ACC braking and the user presses on the brakes. user-only pressure?"; -CM_ SG_ 608 ClusterSpeed "Cluster speed signal seems to match dash on newer cars, but is a lower rate and can be noisier."; -CM_ SG_ 761 UserBrakePressure2 "Similar to BRAKE_RELATED->UserBrakePressure"; -CM_ SG_ 1001 VehicleSpeed "Spinouts show here on 2wd. Speed derived from right front wheel (drive tire)"; -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; -BA_ "UseGMParameterIDs" 0; -VAL_ 497 SystemPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; -VAL_ 497 SystemBackUpPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; -VAL_ 481 DistanceButton 1 "Active" 0 "Inactive" ; -VAL_ 481 LKAButton 1 "Active" 0 "Inactive" ; -VAL_ 481 ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_ 481 DriveModeButton 1 "Active" 0 "Inactive" ; -VAL_ 452 CruiseState 4 "Standstill" 3 "Faulted" 2 "Standby" 1 "Active" 0 "Off" ; -VAL_ 309 PRNDL 3 "R" 2 "D" 1 "N" 0 "P" ; -VAL_ 309 ESPButton 1 "Active" 0 "Inactive" ; -VAL_ 384 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 842 RRWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; -VAL_ 842 RLWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; -VAL_ 880 ACCCruiseState 2 "Adaptive" 3 "Adaptive" 4 "Non-adaptive" 5 "Non-adaptive" ; -VAL_ 880 ACCLeadCar 1 "Present" 0 "Not Present" ; -VAL_ 880 ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; -VAL_ 880 ACCResumeButton 1 "Pressed" 0 "Depressed" ; -VAL_ 880 ACCCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 388 HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; -VAL_ 388 HandsOffSWlDetectionStatus 1 "Hands On" 0 "Hands Off" ; -VAL_ 388 LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; -VAL_ 489 BrakePedalPressed 1 "Pressed" 0 "Depressed" ; -VAL_ 715 GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; -VAL_ 715 GasRegenCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 320 Intellibeam 1 "Active" 0 "Inactive" ; -VAL_ 320 HighBeamsActive 1 "Active" 0 "Inactive" ; -VAL_ 320 HighBeamsTemporary 1 "Active" 0 "Inactive" ; -VAL_ 501 PRNDL2 6 "L" 4 "D" 3 "N" 2 "R" 1 "P" 0 "Shifting"; -VAL_ 501 TransmissionState 11 "Shifting" 10 "Reverse" 9 "Forward" 8 "Disengaged"; -VAL_ 501 ManualMode 1 "Active" 0 "Inactive" diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc deleted file mode 100644 index b5e8c14d6c..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc +++ /dev/null @@ -1,232 +0,0 @@ -BO_ 148 KINEMATICS: 8 XXX - SG_ LAT_ACCEL : 7|10@0+ (-0.035,17.92) [-20|20] "m/s2" EON - SG_ LONG_ACCEL : 25|10@0+ (-0.035,17.92) [-20|20] "m/s2" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - -BO_ 228 STEERING_CONTROL: 5 EON - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-4096|4096] "" EPS - SG_ STEER_DOWN_TO_ZERO : 38|1@0+ (1,0) [0|1] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS - -BO_ 229 BOSCH_SUPPLEMENTAL_1: 8 XXX - SG_ SET_ME_X04 : 0|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_X80 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_X10 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 232 BRAKE_HOLD: 7 XXX - SG_ XMISSION_SPEED : 7|14@0- (1,0) [1|0] "" XXX - SG_ COMPUTER_BRAKE : 39|16@0+ (1,0) [0|0] "" XXX - SG_ COMPUTER_BRAKE_REQUEST : 29|1@0+ (1,0) [0|0] "" XXX - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" XXX - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 450 EPB_STATUS: 8 EPB - SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" EON - SG_ EPB_STATE : 29|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 545 XXX_16: 6 SCM - SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVE_MODE : 37|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" BDY - -BO_ 576 LEFT_LANE_LINE_1: 8 CAM - SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX - SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX - SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX - SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX - SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 577 LEFT_LANE_LINE_2: 8 CAM - SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX - SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX - SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX - SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 579 RIGHT_LANE_LINE_1: 8 CAM - SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX - SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX - SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX - SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX - SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 580 RIGHT_LANE_LINE_2: 8 CAM - SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX - SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX - SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX - SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 582 ADJACENT_LEFT_LANE_LINE_1: 8 CAM - SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX - SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX - SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX - SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX - SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 583 ADJACENT_LEFT_LANE_LINE_2: 8 CAM - SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX - SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX - SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX - SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 585 ADJACENT_RIGHT_LANE_LINE_1: 8 CAM - SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX - SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX - SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX - SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX - SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 586 ADJACENT_RIGHT_LANE_LINE_2: 8 CAM - SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX - SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX - SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX - SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX - -BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA - SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "mph" EON - SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "mph" EON - SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "mph" EON - SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "mph" EON - SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON - SG_ LONG_COUNTER : 55|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 662 SCM_BUTTONS: 4 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON - -BO_ 806 SCM_FEEDBACK: 8 SCM - SG_ DRIVERS_DOOR_OPEN : 17|1@0+ (1,0) [0|1] "" XXX - SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON - SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON - SG_ CMBS_STATES : 22|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 862 CAMERA_MESSAGES: 8 CAM - SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY - SG_ SPEED_LIMIT_SIGN : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ROAD_SIGN : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH_2 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 927 RADAR_HUD: 8 RADAR - SG_ ZEROS_BOH : 7|10@0+ (1,0) [0|127] "" BDY - SG_ CMBS_OFF : 12|1@0+ (1,0) [0|1] "" BDY - SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|1] "" XXX - SG_ SET_TO_1 : 13|1@0+ (1,0) [0|1] "" BDY - SG_ ZEROS_BOH2 : 11|4@0+ (1,0) [0|1] "" XXX - SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|1] "" BDY - SG_ SET_TO_0 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ HUD_LEAD : 40|1@0+ (1,0) [0|1] "" XXX - SG_ SET_TO_64 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ LEAD_DISTANCE : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH3 : 47|7@0+ (1,0) [0|127] "" XXX - SG_ ZEROS_BOH4 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 13274 LKAS_HUD_A: 5 ADAS - SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY - SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY - SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY - SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY - SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY - SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" BDY - SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY - SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" BDY - SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY - SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY - SG_ SET_ME_X01 : 20|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY - SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY - -BO_ 13275 LKAS_HUD_B: 8 ADAS - SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY - SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY - SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY - SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY - SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY - SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" BDY - SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY - SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" BDY - SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY - SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY - SG_ SET_ME_X01 : 20|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY - SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY - -CM_ SG_ 450 EPB_STATE "3: On, 2: Disengaging, 1: Engaging, 0: Off"; -CM_ SG_ 576 LINE_DISTANCE_VISIBLE "Length of line visible, undecoded"; -CM_ SG_ 577 LINE_FAR_EDGE_POSITION "Appears to be a measure of line thickness, indicates location of the portion of the line furthest from the car, undecoded"; -CM_ SG_ 577 LINE_PARAMETER "Unclear if this is low quality line curvature rate or if this is something else, but it is correlated with line curvature, undecoded"; -CM_ SG_ 577 LINE_DASHED "1 = line is dashed"; -CM_ SG_ 577 LINE_SOLID "1 = line is solid"; - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal"; -VAL_ 862 SPEED_LIMIT_SIGN 97 "SPEED_LIMIT_5" 98 "SPEED_LIMIT_10" 99 "SPEED_LIMIT_15" 100 "SPEED_LIMIT_20" 101 "SPEED_LIMIT_25" 102 "SPEED_LIMIT_30" 103 "SPEED_LIMIT_35" 104 "SPEED_LIMIT_40" 105 "SPEED_LIMIT_45" 106 "SPEED_LIMIT_50" 107 "SPEED_LIMIT_55" 108 "SPEED_LIMIT_60" 109 "SPEED_LIMIT_65" 110 "SPEED_LIMIT_70" 111 "SPEED_LIMIT_75" 112 "SPEED_LIMIT_80" 113 "SPEED_LIMIT_85" 125 "SPEED_LIMIT_NA" 0 "STOP_SIGN"; -VAL_ 862 ROAD_SIGN 0 "NO_SIGN" 89 "STOP_SIGN"; \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc deleted file mode 100644 index ec7c41ceec..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc +++ /dev/null @@ -1,57 +0,0 @@ -BO_ 479 ACC_CONTROL: 8 EON - SG_ SET_TO_0 : 20|5@0+ (1,0) [0|1] "" XXX - SG_ CONTROL_ON : 23|3@0+ (1,0) [0|5] "" XXX - SG_ GAS_COMMAND : 7|16@0- (1,0) [0|0] "" XXX - SG_ ACCEL_COMMAND : 31|11@0- (0.01,0) [0|0] "m/s2" XXX - SG_ BRAKE_LIGHTS : 62|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_REQUEST : 34|1@0+ (1,0) [0|1] "" XXX - SG_ STANDSTILL : 35|1@0+ (1,0) [0|1] "" XXX - SG_ STANDSTILL_RELEASE : 36|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_STATUS : 33|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 495 ACC_CONTROL_ON: 8 XXX - SG_ SET_TO_75 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_30 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH2 : 47|16@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_FF : 15|8@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_3 : 6|7@0+ (1,0) [0|4095] "" XXX - SG_ CONTROL_ON : 7|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 829 LKAS_HUD: 5 ADAS - SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY - SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY - SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY - SG_ CAMERA_OVERHEAT : 15|1@0+ (1,0) [0|1] "" BDY - SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY - SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY - SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY - SG_ LANE_DEPARTURE_ALERT : 9|1@0+ (1,0) [0|1] "" BDY - SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_ICON : 22|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY - SG_ BEEP : 18|3@0+ (1,0) [0|7] "" BDY - SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY - SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY - SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" BDY - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY - -CM_ SG_ 479 CONTROL_ON "Set to 5 when car is being controlled"; -CM_ SG_ 479 AEB_STATUS "set for the duration of AEB event"; -CM_ SG_ 479 AEB_BRAKING "set when braking is commanded during AEB event"; -CM_ SG_ 479 AEB_PREPARE "set 1s before AEB"; -CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnngs etc..."; -CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High"; -CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot"; - -VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_community.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_community.dbc deleted file mode 100644 index 8be69203ef..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_community.dbc +++ /dev/null @@ -1,15 +0,0 @@ -BO_ 512 GAS_COMMAND: 6 EON - SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR - SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR - SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR - SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR - SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR - -BO_ 513 GAS_SENSOR: 6 INTERCEPTOR - SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON - SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON - SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON - SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON - -VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc deleted file mode 100644 index 44a2ce4bcc..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc +++ /dev/null @@ -1,163 +0,0 @@ -BO_ 304 GAS_PEDAL_2: 8 PCM - SG_ ENGINE_TORQUE_ESTIMATE : 7|16@0- (1,0) [-1000|1000] "Nm" EON - SG_ ENGINE_TORQUE_REQUEST : 23|16@0- (1,0) [-1000|1000] "Nm" EON - SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 316 GAS_PEDAL: 8 PCM - SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 344 ENGINE_DATA: 8 PCM - SG_ XMISSION_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" EON - SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON - SG_ XMISSION_SPEED2 : 39|16@0+ (0.01,0) [0|250] "kph" EON - SG_ ODOMETER : 55|8@0+ (10,0) [0|2550] "m" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 380 POWERTRAIN_DATA: 8 PCM - SG_ PEDAL_GAS : 7|8@0+ (1,0) [0|255] "" EON - SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON - SG_ GAS_PRESSED : 39|1@0+ (1,0) [0|1] "" EON - SG_ ACC_STATUS : 38|1@0+ (1,0) [0|1] "" EON - SG_ BOH_17C : 37|5@0+ (1,0) [0|1] "" EON - SG_ BRAKE_SWITCH : 32|1@0+ (1,0) [0|1] "" EON - SG_ BOH2_17C : 47|10@0+ (1,0) [0|1] "" EON - SG_ BRAKE_PRESSED : 53|1@0+ (1,0) [0|1] "" EON - SG_ BOH3_17C : 52|5@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 420 VSA_STATUS: 8 VSA - SG_ USER_BRAKE : 7|16@0+ (0.015625,-1.609375) [0|1000] "" EON - SG_ COMPUTER_BRAKING : 23|1@0+ (1,0) [0|1] "" EON - SG_ ESP_DISABLED : 28|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_HOLD_RELATED : 52|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_HOLD_ACTIVE : 46|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_HOLD_ENABLED : 45|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 427 STEER_MOTOR_TORQUE: 3 EPS - SG_ CONFIG_VALID : 7|1@0+ (1,0) [0|1] "" EON - SG_ MOTOR_TORQUE : 1|10@0+ (1,0) [0|256] "" EON - SG_ OUTPUT_DISABLED : 22|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" EON - -BO_ 464 WHEEL_SPEEDS: 8 VSA - SG_ WHEEL_SPEED_FL : 7|15@0+ (0.01,0) [0|250] "kph" EON - SG_ WHEEL_SPEED_FR : 8|15@0+ (0.01,0) [0|250] "kph" EON - SG_ WHEEL_SPEED_RL : 25|15@0+ (0.01,0) [0|250] "kph" EON - SG_ WHEEL_SPEED_RR : 42|15@0+ (0.01,0) [0|250] "kph" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 490 VEHICLE_DYNAMICS: 8 VSA - SG_ LAT_ACCEL : 7|16@0- (0.0015,0) [-20|20] "m/s2" EON - SG_ LONG_ACCEL : 23|16@0- (0.0015,0) [-20|20] "m/s2" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 773 SEATBELT_STATUS: 7 BDY - SG_ SEATBELT_DRIVER_LAMP : 7|1@0+ (1,0) [0|1] "" EON - SG_ SEATBELT_PASS_UNLATCHED : 10|1@0+ (1,0) [0|1] "" EON - SG_ SEATBELT_PASS_LATCHED : 11|1@0+ (1,0) [0|1] "" EON - SG_ SEATBELT_DRIVER_UNLATCHED : 12|1@0+ (1,0) [0|1] "" EON - SG_ SEATBELT_DRIVER_LATCHED : 13|1@0+ (1,0) [0|1] "" EON - SG_ PASS_AIRBAG_OFF : 14|1@0+ (1,0) [0|1] "" EON - SG_ PASS_AIRBAG_ON : 15|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 777 CAR_SPEED: 8 PCM - SG_ ROUGH_CAR_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX - SG_ CAR_SPEED : 7|16@0+ (0.01,0) [0|65535] "kph" XXX - SG_ ROUGH_CAR_SPEED_3 : 39|16@0+ (0.01,0) [0|65535] "kph" XXX - SG_ ROUGH_CAR_SPEED_2 : 31|8@0+ (1,0) [0|255] "mph" XXX - SG_ LOCK_STATUS : 55|2@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ IMPERIAL_UNIT : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 780 ACC_HUD: 8 ADAS - SG_ PCM_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" BDY - SG_ PCM_GAS : 23|8@0+ (1,0) [0|127] "" BDY - SG_ CRUISE_SPEED : 31|8@0+ (1,0) [0|255] "kph" BDY - SG_ DTC_MODE : 39|1@0+ (1,0) [0|1] "" BDY - SG_ BRAKE_SYSTEM_ICON : 38|1@0+ (1,0) [0|1] "" BDY - SG_ ACC_PROBLEM : 37|1@0+ (1,0) [0|1] "" BDY - SG_ FCM_OFF : 35|1@0+ (1,0) [0|1] "" BDY - SG_ FCM_OFF_2 : 36|1@0+ (1,0) [0|1] "" BDY - SG_ FCM_PROBLEM : 34|1@0+ (1,0) [0|1] "" BDY - SG_ RADAR_OBSTRUCTED : 33|1@0+ (1,0) [0|1] "" BDY - SG_ ENABLE_MINI_CAR : 32|1@0+ (1,0) [0|1] "" BDY - SG_ HUD_DISTANCE : 47|2@0+ (1,0) [0|3] "" BDY - SG_ HUD_LEAD : 45|2@0+ (1,0) [0|3] "" BDY - SG_ BOH_3 : 43|1@0+ (1,0) [0|3] "" BDY - SG_ BOH_4 : 42|1@0+ (1,0) [0|3] "" BDY - SG_ BOH_5 : 41|1@0+ (1,0) [0|3] "" BDY - SG_ CRUISE_CONTROL_LABEL : 40|1@0+ (1,0) [0|3] "" BDY - SG_ SET_ME_X01_2 : 55|1@0+ (1,0) [0|1] "" BDY - SG_ IMPERIAL_UNIT : 54|1@0+ (1,0) [0|1] "" BDY - SG_ ACC_ON : 52|1@0+ (1,0) [0|1] "" BDY - SG_ CHIME : 51|3@0+ (1,0) [0|1] "" BDY - SG_ SET_ME_X01 : 48|1@0+ (1,0) [0|1] "" BDY - SG_ ICONS : 63|2@0+ (1,0) [0|1] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY - -BO_ 804 CRUISE: 8 PCM - SG_ HUD_SPEED_KPH : 7|8@0+ (1,0) [0|255] "kph" EON - SG_ HUD_SPEED_MPH : 15|8@0+ (1,0) [0|255] "mph" EON - SG_ TRIP_FUEL_CONSUMED : 23|16@0+ (1,0) [0|255] "" EON - SG_ CRUISE_SPEED_PCM : 39|8@0+ (1,0) [0|255] "" EON - SG_ BOH2 : 47|8@0- (1,0) [0|255] "" EON - SG_ BOH3 : 55|8@0+ (1,0) [0|255] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 884 STALK_STATUS: 8 XXX - SG_ DASHBOARD_ALERT : 39|8@0+ (1,0) [0|255] "" EON - SG_ AUTO_HEADLIGHTS : 46|1@0+ (1,0) [0|1] "" EON - SG_ HIGH_BEAM_HOLD : 47|1@0+ (1,0) [0|1] "" EON - SG_ HIGH_BEAM_FLASH : 45|1@0+ (1,0) [0|1] "" EON - SG_ HEADLIGHTS_ON : 54|1@0+ (1,0) [0|1] "" EON - SG_ WIPER_SWITCH : 53|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 891 STALK_STATUS_2: 8 XXX - SG_ WIPERS : 17|2@0+ (1,0) [0|3] "" EON - SG_ LOW_BEAMS : 35|1@0+ (1,0) [0|1] "" XXX - SG_ HIGH_BEAMS : 34|1@0+ (1,0) [0|1] "" XXX - SG_ PARK_LIGHTS : 36|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 1029 DOORS_STATUS: 8 BDY - SG_ DOOR_OPEN_FL : 37|1@0+ (1,0) [0|1] "" EON - SG_ DOOR_OPEN_FR : 38|1@0+ (1,0) [0|1] "" EON - SG_ DOOR_OPEN_RL : 39|1@0+ (1,0) [0|1] "" EON - SG_ DOOR_OPEN_RR : 40|1@0+ (1,0) [0|1] "" EON - SG_ TRUNK_OPEN : 41|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -CM_ SG_ 304 "Seems to be platform-agnostic"; -CM_ SG_ 316 "Should exist on Nidec"; -CM_ SG_ 420 BRAKE_HOLD_RELATED "On when Brake Hold engaged"; -CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping"; -CM_ SG_ 773 PASS_AIRBAG_ON "Might just be indicator light"; -CM_ SG_ 773 PASS_AIRBAG_OFF "Might just be indicator light"; -CM_ SG_ 780 CRUISE_SPEED "255 = no speed"; -CM_ SG_ 780 PCM_SPEED "Used by Nidec"; -CM_ SG_ 780 PCM_GAS "Used by Nidec"; -CM_ SG_ 804 CRUISE_SPEED_PCM "255 = no speed"; - -VAL_ 780 CRUISE_SPEED 255 "no_speed" 252 "stopped"; -VAL_ 780 HUD_LEAD 3 "acc_off" 2 "solid_car" 1 "dashed_car" 0 "no_car"; -VAL_ 884 DASHBOARD_ALERT 0 "none" 51 "acc_problem" 55 "cmbs_problem" 75 "key_not_detected" 79 "fasten_seatbelt" 111 "lkas_problem" 131 "brake_system_problem" 132 "brake_hold_problem" 139 "tbd" 161 "door_open"; -VAL_ 891 WIPERS 4 "High" 2 "Low" 0 "Off"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc deleted file mode 100644 index 36611eebcf..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc +++ /dev/null @@ -1,96 +0,0 @@ -BO_ 145 KINEMATICS: 8 XXX - SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 148 KINEMATICS_ALT: 8 XXX - SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON - SG_ LONG_ACCEL : 24|9@0- (-0.02,0) [-20|20] "m/s2" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - -BO_ 432 STANDSTILL: 7 VSA - SG_ CONTROLLED_STANDSTILL : 0|1@0+ (1,0) [0|1] "" EON - SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 487 BRAKE_PRESSURE: 4 VSA - SG_ BRAKE_PRESSURE1 : 7|10@0+ (0.015625,-103) [0|1000] "" EON - SG_ BRAKE_PRESSURE2 : 9|10@0+ (0.015625,-103) [0|1000] "" EON - SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON - -BO_ 506 BRAKE_COMMAND: 8 ADAS - SG_ COMPUTER_BRAKE : 7|10@0+ (1,0) [0|1] "" EBCM - SG_ BRAKE_PUMP_REQUEST : 8|1@0+ (1,0) [0|1] "" EBCM - SG_ BRAKE_PUMP_REQUEST_ALT : 11|1@0+ (1,0) [0|1] "" EBCM - SG_ SET_ME_X00 : 23|3@0+ (1,0) [0|1] "" EBCM - SG_ CRUISE_OVERRIDE : 20|1@0+ (1,0) [0|1] "" EBCM - SG_ SET_ME_X00_2 : 19|1@0+ (1,0) [0|1] "" EBCM - SG_ CRUISE_FAULT_CMD : 18|1@0+ (1,0) [0|1] "" EBCM - SG_ CRUISE_CANCEL_CMD : 17|1@0+ (1,0) [0|1] "" EBCM - SG_ COMPUTER_BRAKE_REQUEST : 16|1@0+ (1,0) [0|1] "" EBCM - SG_ SET_ME_1 : 31|1@0+ (1,0) [0|1] "" EBCM - SG_ AEB_REQ_1 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_REQ_2 : 26|3@0+ (1,0) [0|7] "" XXX - SG_ BRAKE_LIGHTS : 39|1@0+ (1,0) [0|1] "" EBCM - SG_ CRUISE_STATES : 38|7@0+ (1,0) [0|1] "" EBCM - SG_ CHIME : 47|3@0+ (1,0) [0|7] "" EBCM - SG_ SET_ME_X00_3 : 44|1@0+ (1,0) [0|1] "" EBCM - SG_ FCW : 43|2@0+ (1,0) [0|3] "" EBCM - SG_ AEB_STATUS : 41|2@0+ (1,0) [0|3] "" XXX - SG_ COMPUTER_BRAKE_ALT : 55|10@0+ (1,0) [0|0] "" EBCM - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EBCM - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EBCM - -BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA - SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "mph" EON - SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "mph" EON - SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "mph" EON - SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "mph" EON - SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" EON - SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 829 LKAS_HUD: 5 ADAS - SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY - SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY - SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY - SG_ CAMERA_OVERHEAT : 15|1@0+ (1,0) [0|1] "" BDY - SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY - SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY - SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY - SG_ LANE_DEPARTURE_ALERT : 9|1@0+ (1,0) [0|1] "" BDY - SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_ICON : 22|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY - SG_ BEEP : 18|3@0+ (1,0) [0|7] "" BDY - SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY - SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY - SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" BDY - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY - -BO_ 892 CRUISE_PARAMS: 8 PCM - SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - -CM_ SG_ 506 AEB_REQ_1 "set for duration of suspected AEB event"; -CM_ SG_ 506 COMPUTER_BRAKE_ALT "Used by dual-can Nidec"; -CM_ SG_ 506 BRAKE_PUMP_REQUEST_ALT "Used by dual-can Nidec"; -CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnngs etc..."; -CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High"; -CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot"; - -VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw"; -VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime"; -VAL_ 506 AEB_STATUS 3 "aeb_prepare" 2 "aeb_ready" 1 "aeb_braking" 0 "no_aeb"; -VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc deleted file mode 100644 index 52805d6227..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc +++ /dev/null @@ -1,9 +0,0 @@ -BO_ 330 STEERING_SENSORS: 8 EPS - SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON - SG_ STEER_SENSOR_STATUS_1 : 34|1@0+ (1,0) [0|1] "" EON - SG_ STEER_SENSOR_STATUS_2 : 33|1@0+ (1,0) [0|1] "" EON - SG_ STEER_SENSOR_STATUS_3 : 32|1@0+ (1,0) [0|1] "" EON - SG_ STEER_WHEEL_ANGLE : 47|16@0- (-0.1,0) [-500|500] "deg" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc deleted file mode 100644 index 35e9b27520..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc +++ /dev/null @@ -1,5 +0,0 @@ -BO_ 342 STEERING_SENSORS: 6 EPS - SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON diff --git a/opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc deleted file mode 100644 index 5a60a9c9e1..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc +++ /dev/null @@ -1,50 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_b.dbc"; - -BO_ 228 STEERING_CONTROL: 5 ADAS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EPS - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 419 GEARBOX: 8 PCM - SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON - SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - -CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; -CM_ SG_ 780 CRUISE_SPEED "255 = no speed"; - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; -VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime" ; -VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw" ; -VAL_ 780 HUD_LEAD 3 "no_car" 2 "solid_car" 1 "dashed_car" 0 "no_car" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc deleted file mode 100644 index 06327f928f..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc +++ /dev/null @@ -1,46 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_b.dbc"; - -BO_ 392 GEARBOX: 6 XXX - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX - SG_ GEAR_SHIFTER : 27|4@0+ (1,0) [0|15] "" EON - SG_ GEAR : 36|5@0+ (1,0) [0|31] "" EON - -BO_ 399 STEER_STATUS: 6 EPS - SG_ STEER_TORQUE_SENSOR : 7|12@0- (-1,0) [-2047.5|2047.5] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 35|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 36|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON - -BO_ 404 STEERING_CONTROL: 4 EON - SG_ STEER_TORQUE : 7|12@0- (1,0) [-768|768] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ PARKING_BRAKE_LIGHT : 2|1@0+ (1,0) [0|1] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -CM_ SG_ 422 PARKING_BRAKE_LIGHT "Believe this is just the dash light for the parking break"; -VAL_ 392 GEAR_SHIFTER 0 "S" 1 "P" 2 "R" 4 "N" 8 "D" ; -VAL_ 392 GEAR 26 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc deleted file mode 100644 index 38a312c311..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc +++ /dev/null @@ -1,32 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _bosch_adas_2018.dbc"; -CM_ "IMPORT _steering_sensors_b.dbc"; - -BO_ 419 GEARBOX: 8 PCM - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON - SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON - -BO_ 432 STANDSTILL: 7 VSA - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 446 BRAKE_MODULE: 3 VSA - SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -VAL_ 419 GEAR_SHIFTER 32 "D" 8 "R" 4 "P" ; -VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc deleted file mode 100644 index e9f2fb41aa..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc +++ /dev/null @@ -1,55 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _bosch_adas_2018.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 401 GEARBOX_15T: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX - SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX - SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 419 GEARBOX: 8 XXX - SG_ GEAR_SHIFTER : 24|8@1+ (1,0) [0|255] "" XXX - SG_ GEAR : 32|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 432 STANDSTILL: 7 VSA - SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 446 BRAKE_MODULE: 3 VSA - SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 506 LEGACY_BRAKE_COMMAND: 8 ADAS - SG_ CHIME : 40|8@1+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 892 CRUISE_PARAMS: 8 PCM - SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|15] "" EON - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P"; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P"; -VAL_ 419 GEAR_SHIFTER 2 "S" 32 "D" 16 "N" 8 "R" 4 "P"; -VAL_ 419 GEAR 26 "S" 20 "D" 19 "N" 18 "R" 17 "P"; -VAL_ 545 ECON_ON_2 0 "off" 3 "on"; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none"; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none"; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc deleted file mode 100644 index bbe3eadb31..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc +++ /dev/null @@ -1,107 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX - SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX - SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 419 GEARBOX_ALT: 8 PCM - SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON - SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 432 STANDSTILL: 7 VSA - SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 446 BRAKE_MODULE: 3 VSA - SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_FAULT : 22|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 456 ACC_CONTROL: 8 XXX - SG_ ACCEL_COMMAND : 7|12@0- (0.01,0) [0|0] "m/s^2" XXX - SG_ IDLESTOP_ALLOW : 8|1@0+ (1,0) [0|1] "" XXX - SG_ STANDSTILL : 9|1@0+ (1,0) [0|1] "" XXX - SG_ CONTROL_ON : 10|1@0+ (1,0) [0|1] "" XXX - SG_ BOH : 23|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_STATUS : 33|1@1+ (1,0) [0|7] "" XXX - SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX - SG_ FCW_1 : 24|1@1+ (1,0) [0|3] "" XXX - SG_ FCW_2 : 54|1@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 467 CRUISE_FAULT_STATUS: 8 XXX - SG_ CRUISE_FAULT : 3|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 477 GEARBOX_ALT_2: 8 XXX - SG_ GEAR_MT : 39|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 495 SPEED_LIMIT_DASH_DISPLAY: 8 ADAS - SG_ SPEED_LIMIT : 47|8@0+ (1,0) [0|255] "mph" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 829 LKAS_HUD: 8 ADAS - SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY - SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY - SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY - SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY - SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY - SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY - SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" BDY - SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY - SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" BDY - SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY - SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY - SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY - SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY - SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY - SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" BDY - SG_ LANE_LINES : 36|2@0+ (1,0) [0|3] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY - -BO_ 882 CRUISE_PARAMS: 8 PCM - SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|15] "" EON - -BO_ 254913108 LKAS_HUD_2: 8 ADAS - SG_ COUNTER_2 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ SET_ME_X01 : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_BOH_1 : 15|6@0+ (1,0) [0|63] "" XXX - SG_ LEFT_LANE : 23|2@0+ (1,0) [0|3] "" XXX - SG_ RIGHT_LANE : 21|2@0+ (1,0) [0|3] "" XXX - SG_ LKAS_BOH_2 : 30|5@0+ (1,0) [0|31] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -CM_ 446 "If exists, describes cruise faults and what the PCM uses for brake press detection."; -CM_ SG_ 456 IDLESTOP_ALLOW "allows car to turn off engine at a standstill"; -CM_ SG_ 456 STANDSTILL "set to 1 when camera requests -4.0 m/s^2"; -CM_ SG_ 495 SPEED_LIMIT "Defaults to 0xFF if no speed limit found"; - -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P"; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P"; -VAL_ 419 GEAR_SHIFTER 32 "D" 16 "N" 8 "R" 4 "P" 0 "B" ; -VAL_ 477 GEAR_MT 14 "reverse" 6 "6th" 5 "5th" 4 "4th" 3 "3rd" 2 "2nd" 1 "1st" 0 "Clutch"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc deleted file mode 100644 index dc14d2968a..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc +++ /dev/null @@ -1,37 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _bosch_adas_2018.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX - SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX - SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 432 STANDSTILL: 7 VSA - SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 506 LEGACY_BRAKE_COMMAND: 8 ADAS - SG_ CHIME : 40|8@1+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 892 CRUISE_PARAMS: 8 PCM - SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|15] "" EON - -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc deleted file mode 100644 index 89b6ceae35..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc +++ /dev/null @@ -1,95 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 228 STEERING_CONTROL: 5 ADAS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ GEAR : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 450 EPB_STATUS: 8 EPB - SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" EON - SG_ EPB_STATE : 29|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 493 HUD_SETTING: 5 XXX - SG_ IMPERIAL_UNIT : 5|1@0+ (1,0) [0|1] "" EON - -BO_ 545 ECON_STATUS: 6 XXX - SG_ ECON_ON_2 : 37|2@0+ (1,0) [0|3] "" EON - SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - -BO_ 662 SCM_BUTTONS: 4 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON - -BO_ 806 SCM_FEEDBACK: 8 SCM - SG_ CMBS_BUTTON : 22|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON - SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON - SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 862 HIGHBEAM_CONTROL: 8 ADAS - SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY - SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 927 RADAR_HUD: 8 ADAS - SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY - SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY - SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY - SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY - SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY - SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY - SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY - SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY - SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; -CM_ SG_ 806 REVERSE_LIGHT "Might be reverse gear selected and not the lights"; - -VAL_ 399 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ; -VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; -VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc deleted file mode 100644 index edeaa29993..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc +++ /dev/null @@ -1,113 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 228 STEERING_CONTROL: 5 ADAS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS - -BO_ 388 BRAKE_ERROR: 8 XXX - SG_ BRAKE_ERROR_1 : 32|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 34|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 419 GEARBOX: 8 PCM - SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON - SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 450 EPB_STATUS: 8 EPB - SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" EON - SG_ EPB_STATE : 29|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 545 ECON_STATUS: 6 XXX - SG_ ECON_ON_2 : 37|2@0+ (1,0) [0|3] "" EON - SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - -BO_ 662 SCM_BUTTONS: 4 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON - -BO_ 768 VEHICLE_STATE: 8 ADAS - SG_ SET_ME_XF9 : 7|8@0+ (1,0) [0|255] "" Vector__XXX - SG_ VEHICLE_SPEED : 15|8@0+ (1,0) [0|255] "kph" Vector__XXX - SG_ SET_ME_X8A : 23|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_XD0 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SALTED_WITH_IDX : 39|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 769 VEHICLE_STATE2: 8 ADAS - SG_ SET_ME_X5D : 23|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X02 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X5F : 39|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 806 SCM_FEEDBACK: 8 SCM - SG_ CMBS_BUTTON : 22|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON - SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON - SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 862 HIGHBEAM_CONTROL: 8 ADAS - SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY - SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 927 RADAR_HUD: 8 ADAS - SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY - SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY - SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY - SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY - SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY - SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY - SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY - SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY - SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY - -BO_ 1302 XXX_27: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; -CM_ SG_ 806 REVERSE_LIGHT "Might be reverse gear selected and not the lights"; - -VAL_ 399 STEER_STATUS 5 "tmp_fault" 4 "no_torque_alert_2" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ; -VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; -VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc deleted file mode 100644 index 363b595817..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc +++ /dev/null @@ -1,10 +0,0 @@ -BO_ 318291879 BSM_STATUS_RIGHT: 8 XXX - SG_ BSM_ALERT : 4|1@0+ (1,0) [0|1] "" XXX - SG_ BSM_MODE : 6|2@0+ (1,0) [0|3] "" XXX - -BO_ 318291615 BSM_STATUS_LEFT: 8 XXX - SG_ BSM_ALERT : 4|1@0+ (1,0) [0|1] "" XXX - SG_ BSM_MODE : 6|2@0+ (1,0) [0|3] "" XXX - -VAL_ 318291879 BSM_MODE 2 "blind_spot" 1 "cross_traffic" 0 "off"; -VAL_ 318291615 BSM_MODE 2 "blind_spot" 1 "cross_traffic" 0 "off"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc deleted file mode 100644 index fe2ae8f940..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc +++ /dev/null @@ -1,40 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _bosch_adas_2018.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX - SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX - SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 432 STANDSTILL: 7 VSA - SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 446 BRAKE_MODULE: 3 VSA - SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -CM_ SG_ 479 RELATED_TO_GAS "bits 7, 3, and 1 set to 1 when gas not applied"; -CM_ SG_ 479 GAS_BRAKE "Signed value, negative when braking and positive when applying gas"; - -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc deleted file mode 100644 index 7d0af49217..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc +++ /dev/null @@ -1,51 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; - -BO_ 342 STEERING_SENSORS: 6 EPS - SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON - -BO_ 399 STEER_STATUS: 6 EPS - SG_ STEER_TORQUE_SENSOR : 7|12@0- (-1,0) [-2047.5|2047.5] "tbd" EON - SG_ STEER_TORQUE_MOTOR : 23|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_CONTROL_ACTIVE : 36|1@0+ (1,0) [0|1] "" EON - SG_ STEER_STATUS : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON - -BO_ 419 GEARBOX: 8 PCM - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON - SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON - -BO_ 404 STEERING_CONTROL: 4 EON - SG_ STEER_TORQUE : 7|12@0- (1,0) [-768|768] "" EPS - SG_ SET_ME_X00 : 11|4@0+ (1,0) [0|15] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00_2 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 419 GEAR_SHIFTER 32 "D" 8 "R" 4 "P" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; -VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc deleted file mode 100644 index 75fd63f3b0..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc +++ /dev/null @@ -1,49 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_b.dbc"; - -BO_ 399 STEER_STATUS: 6 EPS - SG_ STEER_TORQUE_SENSOR : 7|12@0- (-1,0) [-2047.5|2047.5] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_CONTROL_ACTIVE : 36|1@0+ (1,0) [0|1] "" EON - SG_ STEER_STATUS : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ GEAR : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 404 STEERING_CONTROL: 4 EON - SG_ STEER_TORQUE : 7|12@0- (1,0) [-768|768] "" EPS - SG_ SET_ME_X00 : 11|4@0+ (1,0) [0|15] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00_2 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; -VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc deleted file mode 100644 index 371ddd19a8..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc +++ /dev/null @@ -1,59 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_b.dbc"; - -BO_ 228 STEERING_CONTROL: 5 ADAS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ GEAR : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 862 HIGHBEAM_CONTROL: 8 ADAS - SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY - SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; -VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc deleted file mode 100644 index fa445b3496..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc +++ /dev/null @@ -1,80 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; - -BO_ 228 STEERING_CONTROL: 5 ADAS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS - -BO_ 342 STEERING_SENSORS: 6 EPS - SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|3] "" EON - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 419 GEARBOX: 8 PCM - SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON - SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 545 ECON_STATUS: 5 XXX - SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" EON - SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EON - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 862 HIGHBEAM_CONTROL: 8 ADAS - SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY - SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 927 RADAR_HUD: 8 ADAS - SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY - SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY - SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY - SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY - SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY - SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY - SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY - SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY - SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY - -CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; -VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc deleted file mode 100644 index 79c6dc1617..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc +++ /dev/null @@ -1,19 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _bosch_adas_2018.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 419 GEARBOX: 8 PCM - SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON - SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 432 STANDSTILL: 7 VSA - SG_ BRAKE_ERROR_1 : 13|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 12|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -VAL_ 419 GEAR 10 "R" 1 "D" 0 "P"; -VAL_ 419 GEAR_SHIFTER 32 "D" 16 "N" 8 "R" 4 "P"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc deleted file mode 100644 index 7a37e0124f..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc +++ /dev/null @@ -1,86 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; -CM_ "IMPORT _steering_sensors_b.dbc"; - -BO_ 228 STEERING_CONTROL: 5 ADAS - SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|0] "" EPS - SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS - SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EPS - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON - -BO_ 419 GEARBOX: 8 PCM - SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON - SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 450 EPB_STATUS: 8 XXX - SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX - SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX - SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 662 SCM_BUTTONS: 4 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON - -BO_ 806 SCM_FEEDBACK: 8 SCM - SG_ CMBS_BUTTON : 22|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON - SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON - SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -BO_ 862 HIGHBEAM_CONTROL: 8 ADAS - SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY - SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 927 RADAR_HUD: 8 ADAS - SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY - SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY - SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY - SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY - SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY - SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY - SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY - SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY - SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; -CM_ SG_ 780 CRUISE_SPEED "255 = no speed"; -CM_ SG_ 806 REVERSE_LIGHT "Might be reverse gear selected and not the lights"; - -VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ; -VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; -VAL_ 780 HUD_LEAD 3 "no_car" 2 "solid_car" 1 "dashed_car" 0 "no_car" ; -VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ; -VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc deleted file mode 100644 index fed29d0664..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc +++ /dev/null @@ -1,74 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _nidec_common.dbc"; - -BO_ 342 STEERING_SENSORS: 6 EPS - SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON - SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON - SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON - -BO_ 399 STEER_STATUS: 7 EPS - SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-2985|2985] "tbd" EON - SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON - SG_ STEER_STATUS : 43|4@0+ (1,0) [0|15] "" EON - SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON - SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - -BO_ 401 GEARBOX: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ GEAR : 35|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 404 STEERING_CONTROL: 4 EON - SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS - SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS - SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS - SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS - SG_ STEER_TORQUE : 7|16@0- (-1,0) [-32767|32767] "" EPS - -BO_ 422 SCM_BUTTONS: 8 SCM - SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON - SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON - SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON - SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON - SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 450 EPB_STATUS: 8 XXX - SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX - SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX - SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 660 SCM_FEEDBACK: 8 SCM - SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON - SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON - SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 862 HIGHBEAM_CONTROL: 8 ADAS - SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY - SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; -VAL_ 399 STEER_STATUS 5 "fault" 4 "no_torque_alert_2" 2 "no_torque_alert_1" 0 "normal" ; -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; -VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; -VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; -VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; -VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc deleted file mode 100644 index 646245b74c..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc +++ /dev/null @@ -1,92 +0,0 @@ -CM_ "IMPORT _honda_common.dbc"; -CM_ "IMPORT _bosch_2018.dbc"; -CM_ "IMPORT _steering_sensors_a.dbc"; - -BO_ 401 GEARBOX_15T: 8 PCM - SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON - -BO_ 419 GEARBOX: 8 XXX - SG_ GEAR_SHIFTER : 24|8@1+ (1,0) [0|255] "" XXX - SG_ GEAR : 32|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 432 STANDSTILL: 7 VSA - SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON - SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON - SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON - -BO_ 446 BRAKE_MODULE: 3 VSA - SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 479 ACC_CONTROL: 8 EON - SG_ SET_TO_0 : 20|5@0+ (1,0) [0|1] "" XXX - SG_ CONTROL_ON : 23|3@0+ (1,0) [0|5] "" XXX - SG_ GAS_COMMAND : 7|16@0- (1,0) [0|0] "" XXX - SG_ ACCEL_COMMAND : 31|11@0- (0.01,0) [0|0] "m/s2" XXX - SG_ BRAKE_LIGHTS : 62|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_REQUEST : 34|1@0+ (1,0) [0|1] "" XXX - SG_ STANDSTILL : 35|1@0+ (1,0) [0|1] "" XXX - SG_ STANDSTILL_RELEASE : 36|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_STATUS : 33|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 495 ACC_CONTROL_ON: 8 XXX - SG_ SET_TO_75 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_30 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ZEROS_BOH2 : 47|16@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_FF : 15|8@0+ (1,0) [0|255] "" XXX - SG_ SET_TO_3 : 6|7@0+ (1,0) [0|4095] "" XXX - SG_ CONTROL_ON : 7|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 829 LKAS_HUD: 8 XXX - SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" XXX - SG_ BOH : 6|7@0+ (1,0) [0|127] "" XXX - SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" XXX - SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" XXX - SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" XXX - SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" XXX - SG_ DTC : 13|1@0+ (1,0) [0|1] "" XXX - SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" XXX - SG_ BEEP : 17|2@0+ (1,0) [0|1] "" XXX - SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" XXX - SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" XXX - SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" XXX - SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" XXX - SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ LANE_LINES : 36|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 1302 ODOMETER: 8 XXX - SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON - SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON - SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON - -CM_ SG_ 479 CONTROL_ON "Set to 5 when car is being controlled"; -CM_ SG_ 479 AEB_STATUS "set for the duration of AEB event"; -CM_ SG_ 479 AEB_BRAKING "set when braking is commanded during AEB event"; -CM_ SG_ 479 AEB_PREPARE "set 1s before AEB"; -CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnings etc..."; -CM_ SG_ 829 LANE_LINES "related to lane lines on cluster, left/right white/green"; - -VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P"; -VAL_ 419 GEAR_SHIFTER 2 "S" 32 "D" 16 "N" 8 "R" 4 "P"; -VAL_ 419 GEAR 26 "S" 20 "D" 19 "N" 18 "R" 17 "P"; -VAL_ 829 BEEP 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep"; -VAL_ 829 LANE_LINES 7 "both_lines_green" 6 "both_lines_white" 2 "left_line_white" 0 "no_lines"; diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore b/opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore deleted file mode 100644 index 81f73f3551..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -hyundai_kia_mando_front_radar.dbc -hyundai_kia_mando_corner_radar.dbc diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc deleted file mode 100644 index 52a06931f5..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc +++ /dev/null @@ -1,235 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX CAMERA FRONT_RADAR ADRV APRK - - -BO_ 80 LKAS: 16 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX - SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|255] "" XXX - SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX - SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX - SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX - SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX - SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX - SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX - SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX - SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX - SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX - SG_ VALUE104 : 104|8@1+ (1,0) [0|255] "" XXX - -BO_ 81 ADRV_0x51: 32 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" 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 - -BO_ 385 CAM_0x181: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 386 CAM_0x182: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 387 CAM_0x183: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 388 CAM_0x184: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 389 CAM_0x185: 8 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 438 CAM_0x1b6: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 439 CAM_0x1b7: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 440 CAM_0x1b8: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -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_ 513 RADAR_0x201: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 528 RADAR_0x210: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 529 RADAR_0x211: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 530 RADAR_0x212: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 531 RADAR_0x213: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 532 RADAR_0x214: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 533 RADAR_0x215: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 534 RADAR_0x216: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 535 RADAR_0x217: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 536 RADAR_0x218: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 537 RADAR_0x219: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 538 RADAR_0x21a: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 539 RADAR_0x21b: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 540 RADAR_0x21c: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 541 RADAR_0x21d: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 542 RADAR_0x21e: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 543 RADAR_0x21f: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 576 RADAR_0x240: 16 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 674 CAM_0x2a2: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 675 CAM_0x2a3: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 676 CAM_0x2a4: 24 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX - SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX - SG_ BYTE8 : 64|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE9 : 72|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE10 : 80|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE11 : 88|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE12 : 96|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE13 : 104|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE14 : 112|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE15 : 120|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE16 : 128|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE17 : 136|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE18 : 144|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE19 : 152|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE20 : 160|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE21 : 168|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE22 : 176|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE23 : 184|8@1+ (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 - -BO_ 700 CAM_0x2bc: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 701 CAM_0x2bd: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 702 CAM_0x2be: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -CM_ BO_ 676 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA."; - -CM_ SG_ 80 HAS_LANE_SAFETY "If 0, hides LKAS 'Lane Safety' menu from vehicle settings"; -CM_ SG_ 676 LEFT_LANE_LINE "Left lane line confidence"; -CM_ SG_ 676 RIGHT_LANE_LINE "Right lane line confidence"; -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_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; -VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc deleted file mode 100644 index 1b3b74b251..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc +++ /dev/null @@ -1,1077 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -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 - -BO_ 64 GEAR_ALT: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ GEAR : 32|3@1+ (1,0) [0|7] "" XXX - SG_ GEAR_STEP : 67|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 68|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 76|4@1+ (1,0) [0|15] "" XXX - -BO_ 69 GEAR: 24 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ GEAR : 44|3@1+ (1,0) [0|7] "" XXX - SG_ RIGHT_PADDLE : 57|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_PADDLE : 58|1@0+ (1,0) [0|1] "" XXX - SG_ GEAR_STEP : 146|5@1+ (1,0) [0|31] "" XXX - SG_ GEAR_STEP1 : 154|5@1+ (1,0) [0|31] "" XXX - -BO_ 80 LKAS: 16 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX - SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|255] "" XXX - SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX - SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX - SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX - SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX - SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX - SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX - SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX - SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX - SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX - SG_ VALUE104 : 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 - -BO_ 96 ESP_STATUS: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ TRACTION_AND_STABILITY_CONTROL : 42|3@1+ (1,0) [0|63] "" XXX - SG_ BRAKE_PRESSURE : 128|11@1+ (1,0) [0|2047] "" XXX - SG_ BRAKE_PRESSED : 148|1@1+ (1,0) [0|3] "" XXX - SG_ AUTO_HOLD : 192|1@0+ (1,0) [0|1] "" XXX - -BO_ 101 BRAKE: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ BRAKE_LIGHT : 29|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_POSITION : 40|16@1- (1,0) [0|65535] "" XXX - SG_ BRAKE_PRESSED : 57|1@1+ (1,0) [0|3] "" XXX - -BO_ 112 GEAR_ALT_2: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ GEAR : 60|3@1+ (1,0) [0|7] "" XXX - -BO_ 160 WHEEL_SPEEDS: 24 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ MOVING_FORWARD : 56|1@0+ (1,0) [0|1] "" XXX - SG_ MOVING_BACKWARD : 57|1@0+ (1,0) [0|1] "" XXX - SG_ MOVING_FORWARD2 : 58|1@0+ (1,0) [0|1] "" XXX - SG_ MOVING_BACKWARD2 : 59|1@0+ (1,0) [0|1] "" XXX - SG_ WHEEL_SPEED_1 : 64|16@1+ (0.03125,0) [0|65535] "kph" XXX - SG_ WHEEL_SPEED_2 : 80|16@1+ (0.03125,0) [0|65535] "kph" XXX - SG_ WHEEL_SPEED_3 : 96|16@1+ (0.03125,0) [0|65535] "kph" XXX - SG_ WHEEL_SPEED_4 : 112|16@1+ (0.03125,0) [0|65535] "kph" XXX - -BO_ 203 LFA_ALT: 24 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LKAS_ANGLE_ACTIVE : 29|2@0+ (1,0) [0|3] "" XXX - SG_ LKAS_ANGLE_CMD : 32|14@1- (-0.1,0) [0|511] "" XXX - SG_ LKAS_ANGLE_MAX_TORQUE : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 234 MDPS: 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_1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ LKA_ACTIVE : 48|1@0+ (1,0) [0|16777215] "" XXX - SG_ LKA_FAULT : 54|1@0+ (1,0) [0|1] "" XXX - SG_ STEERING_OUT_TORQUE : 64|12@1+ (0.1,-204.8) [0|65535] "" XXX - SG_ STEERING_COL_TORQUE : 80|13@1+ (1,-4095) [0|4095] "" XXX - SG_ STEERING_ANGLE : 96|16@1- (-0.1,0) [0|255] "deg" XXX - SG_ STEERING_ANGLE_2 : 128|16@1- (-0.1,0) [0|65535] "deg" XXX - SG_ LFA2_ACTIVE : 145|2@0+ (1,0) [0|3] "" XXX - SG_ LFA2_FAULT : 149|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 159|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 167|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 175|8@0+ (1,0) [0|255] "" XXX - -BO_ 256 ACCELERATOR_BRAKE_ALT: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ BRAKE_PRESSED : 32|1@1+ (1,0) [0|1] "" XXX - SG_ ACCELERATOR_PEDAL_PRESSED : 176|1@1+ (1,0) [0|1] "" XXX - -BO_ 261 ACCELERATOR_ALT: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ ACCELERATOR_PEDAL : 103|10@1+ (0.25,0) [0|1022] "" XXX - -BO_ 272 LKAS_ALT: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX - SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|3] "" XXX - SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX - SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX - SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX - SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX - SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX - SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|1] "" XXX - SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX - SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX - SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX - SG_ DampingGain : 104|8@1+ (1,0) [0|255] "" XXX - SG_ VALUE231 : 231|8@0+ (1,0) [0|255] "" XXX - SG_ VALUE239 : 239|8@0+ (1,0) [0|255] "" XXX - SG_ VALUE247 : 247|8@0+ (1,0) [0|255] "" XXX - SG_ VALUE255 : 255|8@0+ (1,0) [0|255] "" 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 - -BO_ 298 LFA: 16 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX - SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|3] "" XXX - SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX - SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX - SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX - SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX - SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX - SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|1] "" XXX - SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX - SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX - SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX - SG_ DampingGain : 104|8@1+ (1,0) [0|255] "" XXX - SG_ VALUE231 : 231|8@0+ (1,0) [0|255] "" XXX - SG_ VALUE239 : 239|8@0+ (1,0) [0|255] "" XXX - SG_ VALUE247 : 247|8@0+ (1,0) [0|255] "" XXX - SG_ VALUE255 : 255|8@0+ (1,0) [0|255] "" XXX - -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 - -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_ 352 ADRV_0x160: 16 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ AEB_SETTING : 24|2@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_2 : 56|8@1+ (1,0) [0|1] "" XXX - SG_ SET_ME_FF : 64|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_FC : 72|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_9 : 80|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 95|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 102|1@0+ (1,0) [0|1] "" XXX - -BO_ 353 ADRV_0x161: 32 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ FCA_ICON : 24|3@1+ (1,0) [0|7] "" XXX - SG_ FCA_ALT_ICON : 27|3@1+ (1,0) [0|7] "" XXX - SG_ LKA_ICON : 30|3@1+ (1,0) [0|3] "" XXX - SG_ HBA_ICON : 33|3@1+ (1,0) [0|7] "" XXX - SG_ FCA_IMAGE : 42|3@1+ (1,0) [0|7] "" XXX - SG_ BCA_LEFT : 51|3@1+ (1,0) [0|7] "" XXX - SG_ BCA_RIGHT : 54|3@1+ (1,0) [0|7] "" XXX - SG_ LCA_LEFT_ARROW : 57|3@1+ (1,0) [0|7] "" XXX - SG_ LCA_RIGHT_ARROW : 60|3@1+ (1,0) [0|7] "" XXX - SG_ CENTERLINE : 64|2@1+ (1,0) [0|3] "" XXX - SG_ TARGET : 66|3@1+ (1,0) [0|7] "" XXX - SG_ TARGET_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ LANELINE_LEFT : 80|4@1+ (1,0) [0|15] "" XXX - SG_ LANELINE_LEFT_POSITION : 84|6@1+ (1,0) [0|15] "" XXX - SG_ LANELINE_RIGHT : 90|4@1+ (1,0) [0|15] "" XXX - SG_ LANELINE_RIGHT_POSITION : 94|6@1+ (1,0) [0|15] "" XXX - SG_ LANELINE_CURVATURE : 100|4@1+ (1,0) [0|31] "" XXX - SG_ LANELINE_CURVATURE_DIRECTION : 104|1@0+ (1,0) [0|1] "" XXX - SG_ LANE_HIGHLIGHT : 105|4@1+ (1,0) [0|15] "" XXX - SG_ LANE_HIGHLIGHT_DISTANCE : 109|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ LANE_LEFT : 120|3@1+ (1,0) [0|7] "" XXX - SG_ LANE_RIGHT : 123|3@1+ (1,0) [0|7] "" XXX - SG_ LANE_ZOOM : 126|2@1+ (1,0) [0|3] "" XXX - SG_ ALERTS_1 : 128|6@1+ (1,0) [0|63] "" XXX - SG_ ALERTS_2 : 134|5@1+ (1,0) [0|31] "" XXX - SG_ ALERTS_3 : 139|5@1+ (1,0) [0|31] "" XXX - SG_ ALERTS_4 : 144|8@1+ (1,0) [0|255] "" XXX - SG_ ALERTS_5 : 152|5@1+ (1,0) [0|31] "" XXX - SG_ MUTE : 157|3@1+ (1,0) [0|7] "" XXX - SG_ SOUNDS_1 : 160|4@1+ (1,0) [0|3] "" XXX - SG_ SOUNDS_2 : 164|4@1+ (1,0) [0|3] "" XXX - SG_ SOUNDS_3 : 168|4@1+ (1,0) [0|15] "" XXX - SG_ SOUNDS_4 : 172|3@1+ (1,0) [0|7] "" XXX - SG_ SETSPEED_HUD : 181|3@1+ (1,0) [0|7] "" XXX - SG_ DISTANCE_LEAD : 184|5@1+ (1,0) [0|31] "" XXX - SG_ DISTANCE_CAR : 189|3@1+ (1,0) [0|7] "" XXX - SG_ DISTANCE_SPACING : 192|4@1+ (1,0) [0|15] "" XXX - SG_ DISTANCE : 196|4@1+ (1,0) [0|7] "" XXX - SG_ vSetDis : 200|8@1+ (1,0) [0|255] "" XXX - SG_ SETSPEED : 208|4@1+ (1,0) [0|7] "" XXX - SG_ HDA_ICON : 212|3@1+ (1,0) [0|7] "" XXX - SG_ SLA_ICON : 216|4@1+ (1,0) [0|15] "" XXX - SG_ NAV_ICON : 220|3@1+ (1,0) [0|7] "" XXX - SG_ LFA_ICON : 224|3@1+ (1,0) [0|7] "" XXX - SG_ LCA_LEFT_ICON : 228|3@1+ (1,0) [0|7] "" XXX - SG_ LCA_RIGHT_ICON : 232|3@1+ (1,0) [0|7] "" XXX - SG_ BACKGROUND : 236|4@1+ (1,0) [0|15] "" XXX - SG_ DAW_ICON : 240|3@1+ (1,0) [0|7] "" XXX - SG_ CAR_CIRCLE : 243|3@1+ (1,0) [0|7] "" XXX - -BO_ 354 CCNC_0x162: 32 CCNC - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTRY : 24|4@1+ (1,0) [0|7] "" XXX - SG_ SPEEDLIMIT_FLASH : 28|4@1+ (1,0) [0|15] "" XXX - SG_ SPEEDLIMIT : 32|8@1+ (1,0) [0|255] "" XXX - SG_ SIGNS : 40|8@1+ (1,0) [0|15] "" XXX - SG_ SPEEDLIMIT_WEATHER : 48|4@1+ (1,0) [0|15] "" XXX - SG_ VIBRATE : 52|1@0+ (1,0) [0|1] "" XXX - SG_ FF_DETECT : 64|5@1+ (1,0) [0|31] "" XXX - SG_ FF_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ FF_LATERAL : 80|7@1+ (0.1,0) [0|127] "m" XXX - SG_ FF_DETECT_ALT : 88|5@1+ (1,0) [0|31] "" XXX - SG_ FF_DISTANCE_ALT : 93|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ FF_LATERAL_ALT : 104|7@1+ (0.1,0) [0|127] "m" XXX - SG_ LF_DETECT : 112|5@1+ (1,0) [0|31] "" XXX - SG_ LF_DETECT_DISTANCE : 117|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ LF_DETECT_LATERAL : 128|7@1+ (0.1,0) [0|127] "m" XXX - SG_ RF_DETECT : 136|5@1+ (1,0) [0|31] "" XXX - SG_ RF_DETECT_DISTANCE : 141|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ RF_DETECT_LATERAL : 152|7@1+ (0.1,0) [0|127] "m" XXX - SG_ LR_DETECT : 163|5@1+ (1,0) [0|31] "" XXX - SG_ LR_DETECT_DISTANCE : 175|8@0+ (0.1,0) [0|255] "" XXX - SG_ LR_DETECT_LATERAL : 176|7@1+ (0.1,0) [0|127] "" XXX - SG_ RR_DETECT : 192|5@1+ (1,0) [0|31] "" XXX - SG_ RR_DETECT_DISTANCE : 197|8@1+ (0.1,0) [0|255] "" XXX - SG_ RR_DETECT_LATERAL : 205|7@1+ (0.1,0) [0|127] "" XXX - SG_ FAULT_FSS : 213|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_FCA : 216|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_LSS : 219|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_SLA : 222|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_DAW : 225|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_HBA : 228|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_SCC : 231|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_LFA : 234|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_HDA : 237|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_LCA : 240|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_HDP : 243|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_DAS : 246|3@1+ (1,0) [0|7] "" XXX - SG_ FAULT_ESS : 249|3@1+ (1,0) [0|7] "" 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 - -BO_ 385 CAM_0x181: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 386 CAM_0x182: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 387 CAM_0x183: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 388 CAM_0x184: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 389 CAM_0x185: 8 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 416 SCC_CONTROL: 32 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ ACC_ObjDist : 24|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ ACC_ObjRelSpd : 35|12@1+ (0.1,-170) [-16.4|34.7] "m/s" XXX - SG_ ACC_ObjLatPos : 47|9@1- (0.1,-20) [0|511] "" XXX - SG_ ZEROS_7 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ SysFailState : 64|2@1+ (1,0) [0|3] "" XXX - SG_ MainMode_ACC : 66|1@1+ (1,0) [0|1] "" XXX - SG_ ACCMode : 68|3@1+ (1,0) [0|7] "" XXX - SG_ TakeOverReq : 73|2@0+ (1,0) [0|3] "" XXX - SG_ InfoDisplay : 74|3@1+ (1,0) [0|7] "" XXX - SG_ DriverAlert : 77|2@1+ (1,0) [0|3] "" XXX - SG_ ObjDistLevel : 80|8@1+ (1,0) [0|255] "" XXX - SG_ DISTANCE_SETTING : 88|4@1+ (1,0) [0|15] "" XXX - SG_ VSetDis : 103|8@0+ (1,0) [0|255] "km/h or mph" XXX - SG_ NSCCOper : 104|2@1+ (1,0) [0|3] "" XXX - SG_ NSCCOnOff : 106|2@1+ (1,0) [0|3] "" XXX - SG_ HUD_LEAD_INFO : 108|3@1+ (1,0) [0|7] "" XXX - SG_ DriveMode : 112|3@1+ (1,0) [0|7] "" XXX - SG_ aReqValue : 128|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX - SG_ aReqRaw : 140|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX - SG_ JerkUpperLimit : 158|7@0+ (0.1,0) [0|0] "" XXX - SG_ JerkLowerLimit : 166|7@0+ (0.1,0) [0|12.7] "m/s^3" XXX - SG_ AccelLimitBandUpper : 173|6@0+ (0.02,0) [0|63] "" XXX - SG_ AccelLimitBandLower : 181|6@0+ (0.02,0) [0|63] "" XXX - SG_ StopReq : 185|2@0+ (1,0) [0|3] "" XXX - SG_ CRUSE_INFO_SET_2 : 189|2@0+ (1,0) [0|3] "" XXX - SG_ TARGET_DISTANCE : 192|11@1+ (0.1,0) [0|204.7] "m" XXX - SG_ ZEROS_2 : 207|5@0+ (1,0) [0|63] "" XXX - SG_ ZEROS : 215|48@0+ (1,0) [0|281474976710655] "" XXX - -BO_ 426 CRUISE_BUTTONS_ALT: 16 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 24|4@1+ (1,0) [0|15] "" XXX - SG_ SET_ME_1 : 28|2@1+ (1,0) [0|3] "" XXX - SG_ DISTANCE_UNIT : 30|1@1+ (1,0) [0|1] "" 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_ 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 - SG_ SET_ME_2 : 44|3@1+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_6 : 47|1@1+ (1,0) [0|1] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|255] "" XXX - SG_ CLU_SPEED : 64|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE9 : 72|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE10 : 80|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE11 : 88|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE12 : 96|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE13 : 104|8@1+ (1,0) [0|255] "" XXX - SG_ BYTE14 : 112|8@1+ (1,0) [0|255] "" 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 - -BO_ 438 CAM_0x1b6: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 439 CAM_0x1b7: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 440 CAM_0x1b8: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -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_ 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_ 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_ : 40|1@0+ (1,0) [0|1] "" XXX - -BO_ 474 ADRV_0x1da: 32 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_22 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_41 : 47|8@0+ (1,0) [0|255] "" XXX - -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 - -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 - SG_ NEW_SIGNAL_4 : 25|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_3 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_BLINK_HOLD : 29|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_BLINK_HOLD : 30|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ HDA_MODE2 : 32|3@1+ (1,0) [0|3] "" XXX - SG_ LANE_LEFT : 36|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_6 : 39|3@0+ (1,0) [0|7] "" XXX - SG_ LANE_RIGHT : 41|2@0+ (1,0) [0|3] "" XXX - SG_ LANE_CHANGING : 45|3@0+ (1,0) [0|1] "" XXX - SG_ LF_DETECT_DISTANCE : 46|11@1+ (0.1,0) [0|2047] "" XXX - SG_ LF_DETECT_LATERAL : 70|7@0+ (0.1,0) [0|127] "" XXX - SG_ LF_DETECT : 74|3@0+ (1,0) [0|7] "" XXX - SG_ RF_DETECT_DISTANCE : 75|11@1+ (0.1,0) [0|2047] "" XXX - SG_ RF_DETECT_LATERAL : 94|7@0+ (0.1,0) [0|127] "" XXX - SG_ RF_DETECT : 98|3@0+ (1,0) [0|7] "" XXX - SG_ SET_ME_FF : 120|8@1+ (1,0) [0|255] "" XXX - SG_ LR_DETECT_DISTANCE : 139|8@1+ (0.1,0) [0|511] "m" XXX - SG_ LR_DETECT_LATERAL : 152|6@1+ (0.1,0) [0|63] "" XXX - SG_ LR_DETECT : 162|3@0+ (1,0) [0|1] "" XXX - SG_ RR_DETECT_DISTANCE : 163|8@1+ (0.1,0) [0|511] "m" XXX - SG_ RR_DETECT_LATERAL : 172|6@1+ (0.1,0) [0|63] "" XXX - SG_ RR_DETECT : 186|3@0+ (1,0) [0|1] "" XXX - SG_ AUTOLANECHANGE_MSG : 207|4@0+ (1,0) [0|3] "" XXX - SG_ LANELINE_CURVATURE : 208|4@1+ (1,0) [0|31] "" XXX - SG_ LANELINE_CURVATURE_DIRECTION : 212|1@0+ (1,0) [0|1] "" XXX - SG_ LANELINE_LEFT_POSITION : 239|8@0+ (1,0) [0|255] "" XXX - 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_ 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 - -BO_ 512 ADRV_0x200: 8 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_E1 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ TauGapSet : 32|3@1+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_2 : 35|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_1 : 39|3@0+ (1,0) [0|7] "" XXX - SG_ TauGapSet_ : 42|3@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_3 : 47|5@0+ (1,0) [0|31] "" XXX - -BO_ 513 RADAR_0x201: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 528 RADAR_0x210: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 529 RADAR_0x211: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 530 RADAR_0x212: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 531 RADAR_0x213: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 532 RADAR_0x214: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 533 RADAR_0x215: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 534 RADAR_0x216: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 535 RADAR_0x217: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 536 RADAR_0x218: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 537 RADAR_0x219: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 538 RADAR_0x21a: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 539 RADAR_0x21b: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 540 RADAR_0x21c: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 541 RADAR_0x21d: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 542 RADAR_0x21e: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 543 RADAR_0x21f: 32 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 576 RADAR_0x240: 16 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 593 RADAR_0x251: 16 FRONT_RADAR - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 674 CAM_0x2a2: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 675 CAM_0x2a3: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 676 CAM_0x2a4: 24 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LEFT_LANE_PROB : 31|8@0+ (1,0) [0|255] "" XXX - SG_ RIGHT_LANE_PROB : 39|8@0+ (1,0) [0|255] "" XXX - SG_ LEFT_LANE_TYPE : 43|4@0+ (1,0) [0|15] "" XXX - SG_ RIGHT_LANE_TYPE : 47|4@0+ (1,0) [0|15] "" XXX - SG_ LEFT_LANE_COLOR : 48|4@1+ (1,0) [0|15] "" XXX - SG_ RIGHT_LANE_COLOR : 52|4@1+ (1,0) [0|15] "" XXX - SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX - SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 67|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 71|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 79|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 80|10@1- (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_6 : 96|10@1- (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_7 : 112|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_8 : 128|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_9 : 144|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_10 : 160|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_11 : 176|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_12 : 192|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_13 : 208|16@1+ (1,0) [0|65535] "" 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_ 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 - -BO_ 700 CAM_0x2bc: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 701 CAM_0x2bd: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 702 CAM_0x2be: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 736 MANUAL_SPEED_LIMIT_ASSIST: 32 XXX - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ MSLA_STATUS : 26|2@1+ (1,0) [0|3] "" XXX - SG_ MSLA_ENABLED : 38|1@1+ (1,0) [0|1] "" XXX - SG_ MAX_SPEED : 55|8@0+ (1,0) [0|255] "" XXX - SG_ MAX_SPEED_COPY : 144|8@1+ (1,0) [0|255] "" XXX - -BO_ 837 ADRV_0x345: 8 ADRV - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_15 : 24|8@1+ (1,0) [0|255] "" XXX - -BO_ 866 CAM_0x362: 32 CAMERA - SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LEFT_LANE_PROB : 31|8@0+ (1,0) [0|255] "" XXX - SG_ RIGHT_LANE_PROB : 39|8@0+ (1,0) [0|255] "" XXX - SG_ LEFT_LANE_TYPE : 43|4@0+ (1,0) [0|15] "" XXX - SG_ RIGHT_LANE_TYPE : 47|4@0+ (1,0) [0|15] "" XXX - SG_ LEFT_LANE_COLOR : 48|4@1+ (1,0) [0|15] "" XXX - SG_ RIGHT_LANE_COLOR : 52|4@1+ (1,0) [0|15] "" XXX - SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX - SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 67|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 71|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 75|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 79|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 80|10@1- (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_6 : 96|10@1- (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_7 : 112|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_8 : 128|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_9 : 144|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_10 : 160|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_11 : 176|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_12 : 192|16@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_13 : 208|16@1+ (1,0) [0|65535] "" 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_ 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 - SG_ PRESSURE_RL : 55|8@0+ (1,0) [0|255] "" XXX - SG_ PRESSURE_RR : 63|8@0+ (1,0) [0|255] "" XXX - SG_ STATUS_TPMS : 66|3@0+ (1,0) [0|3] "" XXX - SG_ UNIT : 68|2@0+ (1,0) [0|3] "" XXX - -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_ 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 - -BO_ 1041 DOORS_SEATBELTS: 8 XXX - SG_ CHECKSUM_MAYBE : 7|8@0+ (1,0) [0|65535] "" 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_ 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 - SG_ RIGHT_STALK : 10|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX - SG_ LEFT_LAMP : 20|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_LAMP : 22|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_LAMP_ALT : 59|1@0+ (1,0) [0|1] "" 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_ 1144 DRIVE_MODE: 8 XXX - SG_ DRIVE_MODE : 0|16@1+ (1,-61611) [0|61611] "" XXX - SG_ DRIVE_MODE2 : 28|3@1+ (1,0) [1|3] "" XXX - -BO_ 1151 HVAC_TOUCH_BUTTONS: 8 XXX - SG_ AUTO_BUTTON : 8|1@0+ (1,0) [0|1] "" XXX - SG_ SYNC_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX - SG_ FR_DEFROST_BUTTON : 20|1@0+ (1,0) [0|1] "" XXX - SG_ RR_DEFROST_BUTTON : 22|1@0+ (1,0) [0|1] "" XXX - SG_ FAN_SPEED_UP_BUTTON : 24|1@0+ (1,0) [0|1] "" XXX - SG_ FAN_SPEED_DOWN_BUTTON : 26|1@0+ (1,0) [0|1] "" XXX - SG_ AIR_DIRECTION_BUTTON : 28|1@0+ (1,0) [0|1] "" XXX - SG_ AC_BUTTON : 40|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVER_ONLY_BUTTON : 44|1@0+ (1,0) [0|1] "" XXX - SG_ RECIRC_BUTTON : 48|1@0+ (1,0) [0|1] "" XXX - SG_ HEAT_BUTTON : 52|1@0+ (1,0) [0|1] "" XXX - -BO_ 1187 HDA_INFO_4A3: 8 XXX - SG_ LinkClass : 0|3@1+ (1,0) [0|7] "" XXX - SG_ Frwinfo : 3|3@1+ (1,0) [0|7] "" XXX - SG_ SpeedUnit : 6|2@1+ (1,0) [0|3] "" XXX - SG_ SPEED_LIMIT : 15|8@0+ (1,0) [0|255] "" XXX - SG_ CountryCode : 16|10@1+ (1,0) [0|1023] "" XXX - SG_ MapSource : 27|3@1+ (1,0) [0|7] "" XXX - SG_ TollExist : 30|2@1+ (1,0) [0|3] "" XXX - SG_ TunnelExist : 38|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_6 : 47|24@0+ (1,0) [0|16777215] "" XXX - -BO_ 1204 NEW_MSG_4B4: 8 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_7 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1209 NEW_MSG_4B9: 8 XXX - SG_ BYTE_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_3 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_4 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_5 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_6 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_7 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_8 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1214 NEW_MSG_4BE: 8 XXX - SG_ BYTE_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_3 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_4 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_5 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_6 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_7 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ BYTE_8 : 63|8@0+ (1,0) [0|255] "" 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 - SG_ SECONDS : 24|6@1+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_3 : 39|1@0+ (1,0) [0|1] "" XXX - -BO_ 1264 LOCAL_TIME: 8 XXX - SG_ HOURS : 12|5@0+ (1,0) [0|31] "" XXX - SG_ MINUTES : 21|6@0+ (1,0) [0|63] "" XXX - SG_ SECONDS : 31|8@0+ (1,0) [0|59] "" XXX - SG_ MONTH : 37|4@0+ (1,0) [0|15] "" 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_ 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_ 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"; -CM_ SG_ 736 MAX_SPEED "Display units. Restricts car from driving above this speed unless accelerator pedal is depressed beyond pressure point"; -CM_ SG_ 866 LEFT_LANE_LINE "Left lane line confidence"; -CM_ SG_ 866 RIGHT_LANE_LINE "Right lane line confidence"; -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_ 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_ 96 TRACTION_AND_STABILITY_CONTROL 0 "On" 5 "Limited" 1 "Off"; -VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault" ; -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_ 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_ 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 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 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"; -VAL_ 353 ALERTS_4 0 "HIDDEN" 1 "TAKE_FOOT_OFF_THE_ACCELERATOR_PEDAL" 2 "TAKE_FOOT_OFF_THE_BRAKE_PEDAL" 3 "UNAVAILABLE_WHILE_HIGHWAY_DRIVING_PILOT_SYSTEM_IS_ACTIVE" 4 "TO_EXIT_HDP_GRASP_THE_STEERING_WHEEL_THEN_PRESS_AND_HOLD_THE_HDP_BUTTON" 5 "ACCELERATOR_PEDAL_OPERATION_LIMITED_FOR_SAFETY" 6 "TURN_OFF_HAZARD_WARNING_LIGHTS_AND_TURN_SIGNAL" 7 "KEEP_THE_DRIVERS_SEAT_IN_A_SAFE_DRIVING_POSITION" 16 "SET_SPEED_CHANGED" 17 "ACTIVATING_WINDSHIELD_DEFOG_TO_MAINTAIN_THE_DRIVERS_VIEW" 18 "SET_THE_WIPER_AND_LIGHT_CONTROLS_TO_AUTO" 19 "VEHICLE_SPEED_REDUCED_FOR_SAFETY_MERGING_LANES_AHEAD" 20 "SPEED_REDUCED_FOR_SAFETY_CONSTRUCTION_ZONE_DETECTED" 21 "VEHICLE_SPEED_LIMITED_SENSOR_DETECTION_RANGE_LIMITED" 22 "PREPARE_TO_TAKE_CONTROL_UNSUPPORTED_ROAD_TYPE_AHEAD" 23 "PREPARE_TO_TAKE_CONTROL_ENTRANCE_AND_EXIT_RAMPS_AHEAD" 24 "PREPARE_TO_TAKE_CONTROL_TOLLGATE_AHEAD" 25 "PREPARE_TO_TAKE_CONTROL_ROAD_EVENT_AHEAD" 26 "CLEARING_PATH_FOR_EMERGENCY_VEHICLE" 27 "VEHICLE_IS_TOO_SLOW_COMPARED_TO_TRAFFIC_FLOW" 28 "AFTER_SUNSET_HDP_IS_AVAILABLE_IN_AN_INSIDE_LANE_BEHIND_A_LEADING_VEHICLE" 29 "VEHICLE_SPEED_LIMITED_MERGING_LANES_AHEAD" 30 "VEHICLE_SPEED_LIMITED_CONSTRUCTION_ZONE_DETECTED" 31 "VEHICLE_SPEED_TEMPORARILY_LIMITED_FOR_SAFETY" 32 "PRESS_AND_HOLD_THE_BUTTON_TO_ACTIVATE_HIGHWAY_DRIVING_PILOT" 40 "HIGHWAY_DRIVING_PILOT_SYSTEM_IS_AVAILABLE" 64 "RESTART_VEHICLE_AFTER_EMERGENCY_STOP" 65 "CONNECTED_SERVICES_UNAVAILABLE" 66 "AVAILABLE_AFTER_VEHICLE_SOFTWARE_IS_UPDATED" 67 "ROAD_TYPE_NOT_SUPPORTED" 68 "ONLY_AVAILABLE_WHILE_DRIVING_ON_HIGHWAY_LANES" 69 "UNAVAILABLE_WHILE_OTHER_WARNINGS_ARE_ACTIVE" 70 "CANNOT_ACTIVATE_AT_ENTRANCE_EXIT_RAMPS" 71 "LANE_UNSUPPORTED" 72 "NOT_AVAILABLE_IN_THIS_COUNTRY" 79 "CHECKING_THE_DETECTION_RANGE_OF_THE_SENSOR" 80 "SHIFT_TO_D" 81 "ENGINE_STOPPED_BY_AUTO_STOP" 82 "INCREASE_DISTANCE_FROM_VEHICLE_AHEAD" 83 "VEHICLE_SPEED_IS_TOO_HIGH" 84 "CENTER_VEHICLE_IN_THE_LANE" 85 "PARKING_ASSIST_IS_ACTIVE" 86 "ESC_ACTIVIATION_REQUIRED" 87 "UNFOLD_SIDE_VIEW_MIRRORS" 88 "UNAVAILABLE_IN_THE_OUTER_LANE_AFTER_SUNSET" 89 "VEHICLE_SPEED_LIMITED_AFTER_SUNSET_FOR_SAFETY" 90 "LEADING_VEHICLE_NOT_DETECTED" 104 "AGGRESSIVE_BRAKING_OR_STEERING_DETECTED" 110 "SENSOR_AUTO_CALIBRATION_IN_PROGRESS_THIS_MAY_TAKE_SEVERAL_MINUTES" 111 "HIGHWAY_DRIVING_PILOT_WILL_BE_AVAILABLE_SHORTLY" 112 "IF_STEERING_WHEEL_IS_USED_HDP_WILL_BE_DEACTIVATED" 120 "IMPACT_DETECTED" 128 "UNSUITABLE_USE_OF_ACCELERATOR_PEDAL_DETECTED" 129 "GEAR_SHIFTER_USE_DETECTED" 130 "UNSUITABLE_BRAKE_PEDAL_USE_DETECTED" 131 "VEHICLE_START_BUTTON_PRESSED" 132 "VEHICLE_HAS_BEEN_STOPPED_FOR_TOO_LONG" 141 "TRAFFIC_CONGESTION_HAS_CLEARED" 142 "ENTRANCE_AND_EXIT_RAMPS_AHEAD" 143 "UNSUPPORTED_LANE_AHEAD" 144 "UNSUPPORTED_ROAD_TYPE_AHEAD" 145 "LANE_DEPARTURE_DETECTED" 146 "MAXIMUM_SPEED_EXCEEDED" 147 "HIGHWAY_DRIVING_PILOT_LIMITED_ABNORMAL_VEHICLE_CONTROLLER_STATUS" 148 "WIPER_LIGHT_CONTROL_SETTINGS_ARE_UNSUITABLE_FOR_USE_WITH_HDP" 149 "WINDSHIELD_DEFOG_SYSTEM_STATUS_IS_UNSUITABLE_FOR_USE_WITH_HDP" 150 "HAZARD_WARNING_LIGHTS_OR_TURN_SIGNAL_OPERATION_DETECTED" 151 "PERFORMING_EVASIVE_STEERING_OBSTACLES_DETECTED_AHEAD" 152 "HIGHWAY_DRIVING_PILOT_LIMITED_SENSOR_DETECTION_RANGE_LIMITED" 160 "CHECK_HIGHWAY_DRIVING_PILOT_SYSTEM" 161 "SAFETY_FUNCTION_ACTIVATED" 176 "CAMERA_OBSCURED" 177 "RADAR_BLOCKED" 178 "LIDAR_BLOCKED" 179 "AIRBAG_WARNING_LIGHT_IS_ON" 180 "ATTACHED_TRAILED_DETECTED" 181 "HIGH_OUTSIDE_TEMPERATURE" 182 "LOW_OUTSIDE_TEMPERATURE" 190 "UNAVAILABLE_DUE_TO_THE_ROAD_EVENT_INFORMATION_RECEIVED" 191 "UNAVAILABLE_NEAR_TOLLGATES" 192 "DRIVERS_SEAT_IS_NOT_IN_A_SAFE_DRIVING_POSITION" 193 "VEHICLE_DRIVING_THE_WRONG_WAY_DETECTED_AHEAD" 194 "EMERGENCY_VEHICLE_DETECTED" 195 "OBSTACLE_DETECTED_AHEAD" 196 "SENSOR_BLOCKED_DUE_TO_RAIN_SNOW_OR_ROAD_DEBRIS" 197 "SLIPPERY_ROAD_SURFACE_DETECTED" 198 "CONSTRUCTION_ZONE_DETECTED_AHEAD" 199 "PEDESTRIAN_DETECTED_AHEAD" 200 "UNSUITABLE_DRIVERS_SEAT_POSITION_DETECTED" 201 "FOLDED_SIDE_VIEW_MIRRORS_DETECTED" 208 "VEHICLE_POSITION_NOT_DETECTED" 209 "LANE_NOT_DETECTED" 210 "DRIVER_NOT_DETECTED" 211 "KEEP_YOUR_EYES_ON_THE_ROAD" 212 "LEADING_VEHICLE_REQUIRED_AFTER_SUNSET" 213 "TBD" 240 "LOW_FUEL" 241 "LOW_TIRE_PRESSURE" 242 "DOOR_OPEN" 243 "TRUNK_OPEN" 244 "HOOD_OPEN" 245 "SEAT_BELT_NOT_FASTENED" 246 "PARKING_BRAKE_ACTIVATED" 247 "LOW_EV_BATTERY" 248 "HDP_DEACTIVATION_DELAYED_RISK_OF_COLLISION_DETECTED" 249 "LIFTGATE_OPENED"; -VAL_ 353 ALERTS_5 0 "HIDDEN" 1 "DRIVERS_GRASP_NOT_DETECTED_DRIVING_SPEED_WILL_BE_LIMITED" 2 "WATCH_FOR_SURROUNDING_VEHICLES" 3 "SMART_CRUISE_CONTROL_DEACTIVATED" 4 "SMART_CRUISE_CONTROL_CONDITIONS_NOT_MET" 5 "USE_SWITCH_OR_PEDAL_TO_ACCELERATE" 6 "DRIVER_ASSISTNCE_SYSTEM_LIMITED_TRAILER_ATTACHED" 7 "DRIVER_ASSISTNCE_SYSTEM_LIMITED_DRIVER_FULL_FACE_NOT_VISIBLE" 11 "LEADING_VEHICLE_IS_DRIVING_AWAY" 12 "STOP_VEHICLE_THEN_TRY_AGAIN" 19 "ACTIVATING_HIGHWAY_DRIVING_PILOT_SYSTEM" 20 "CONTINUING_USE_OF_HIGHWAY_DRIVING_PILOT_WILL_RESULT_IN_DEVIATION_FROM_THE_NAVIGATION_ROUTE" 21 "HIGHWAY_DRIVING_PILOT_SYSTEM_DEACTIVATED_SILENT" 22 "HIGHWAY_DRIVING_PILOT_SYSTEM_NOT_APPLIED" 23 "HIGHWAY_DRIVING_PILOT_CONDITIONS_NOT_MET_SILENT"; -VAL_ 353 MUTE 0 "NONE" 1 "MUTED"; -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 BACKGROUND 0 "HIDDEN" 1 "BLUE" 3 "ORANGE" 4 "FLASHING ORANGE" 6 "FLASHING RED" 7 "GRAY"; -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 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 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"; -VAL_ 354 FAULT_LSS 0 "HIDDEN" 1 "CHECK_LANE_SAFETY_SYSTEM" 2 "LANE_SAFETY_SYSTEM_DISABLED_CAMERA_OBSCURED"; -VAL_ 354 FAULT_SLA 0 "HIDDEN" 1 "CHECK_SPEED_LIMIT_SYSTEM" 2 "SPEED_LIMIT_SYSTEM_DISABLED_CAMERA_OBSCURED"; -VAL_ 354 FAULT_DAW 0 "HIDDEN" 1 "CHECK_INATTENTIVE_DRIVING_WARNING_SYSTEM" 2 "INATTENTIVE_DRIVING_WARNING_SYSTEM_DISABLED_CAMERA_OBSCURED"; -VAL_ 354 FAULT_HBA 0 "HIDDEN" 1 "CHECK_HIGH_BEAM_ASSIST_SYSTEM"; -VAL_ 354 FAULT_SCC 0 "HIDDEN" 1 "CHECK_SMART_CRUISE_CONTROL_SYSTEM" 2 "SMART_CRUISE_CONTROL_DISABLED_RADAR_BLOCKED"; -VAL_ 354 FAULT_LFA 0 "HIDDEN" 1 "CHECK_LANE_FOLLOWING_SYSTEM_ASSIST_SYSTEM"; -VAL_ 354 FAULT_HDA 0 "HIDDEN" 1 "CHECK_HIGHWAY_DRIVING_ASSIST_SYSTEM"; -VAL_ 354 FAULT_LCA 0 "HIDDEN" 1 "CHECK_LANE_CHANGE_ASSIST_FUNCTION" 2 "LANE_CHANGE_ASSIST_FUNCTION_DISABLED_CAMERA_OBSCURED" 3 "LANE_CHANGE_ASSIST_FUNCTION_DISABLED_RADAR_BLOCKED"; -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 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_ 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_ 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"; -VAL_ 490 LANE_CHANGING 0 "IDLE" 1 "LEFT_CHECK" 3 "LEFT_CHANGING" 2 "RIGHT_CHECK" 4 "RIGHT_CHANGING"; -VAL_ 490 LF_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; -VAL_ 490 RF_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; -VAL_ 490 LR_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; -VAL_ 490 RR_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; -VAL_ 490 AUTOLANECHANGE_MSG 1 "Check surrounding conditions" 2 "Operating conditions not met" 3 "Analyzing driving lane" 4 "Sharp curve ahead" 5 "Current lane is too narrow" 6 "Not an operational section" 7 "Hazard lights are on" 8 "Vehicle speed is too low" 9 "Please hold the steering wheel" 10 "Not an operable lane" 11 "Steering input detected" 12 "Press the OK button to activate lane change assist"; -VAL_ 490 LANELINE_CURVATURE_DIRECTION 0 "LEFT" 1 "RIGHT"; -VAL_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; -VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; -VAL_ 736 MSLA_STATUS 0 "disabled" 1 "active" 2 "paused"; -VAL_ 866 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High 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 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_ 1144 DRIVE_MODE2 3 "Set Sport" 1 "Set Normal" 2 "Set Eco"; -VAL_ 1240 DISTANCE_UNIT 1 "Miles" 0 "Kilometers"; diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py deleted file mode 100755 index b3dd97987b..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/env python3 -import os - -if __name__ == "__main__": - dbc_name = os.path.basename(__file__).replace(".py", ".dbc") - hyundai_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(hyundai_path, dbc_name), "w", encoding='utf-8') as f: - f.write(""" -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - """) - - for a in range(0x210, 0x210 + 16): - f.write(f""" -BO_ {a} RADAR_TRACK_{a:x}: 32 RADAR - SG_ NEW_SIGNAL_25 : 26|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_24 : 28|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_21 : 36|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_20 : 39|3@0+ (1,0) [0|7] "" XXX - SG_ VALID_CNT1 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_15 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_14 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 63|8@0- (1,0) [0|255] "" XXX - SG_ LONG_DIST1 : 64|12@1+ (0.05,0) [0|4095] "" XXX - SG_ LAT_DIST1 : 76|12@1- (0.05,0) [0|4095] "" XXX - SG_ REL_SPEED1 : 88|14@1- (0.01,0) [0|16383] "" XXX - SG_ NEW_SIGNAL_16 : 103|2@0+ (1,0) [0|3] "" XXX - SG_ LAT_SPEED1 : 104|13@1- (0.01,0) [0|8191] "" XXX - SG_ REL_ACCEL1 : 118|10@1- (0.05,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_27 : 154|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_26 : 156|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_23 : 164|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_22 : 167|3@0+ (1,0) [0|7] "" XXX - SG_ VALID_CNT2 : 175|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_13 : 179|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_12 : 183|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_11 : 191|8@0- (1,0) [0|255] "" XXX - SG_ LONG_DIST2 : 192|12@1+ (0.05,0) [0|4095] "" XXX - SG_ LAT_DIST2 : 204|12@1- (0.05,0) [0|4095] "" XXX - SG_ REL_SPEED2 : 216|14@1- (0.01,0) [0|16383] "" XXX - SG_ NEW_SIGNAL_17 : 231|2@0+ (1,0) [0|3] "" XXX - SG_ LAT_SPEED2 : 232|13@1- (0.01,0) [0|8191] "" XXX - SG_ REL_ACCEL2 : 246|10@1- (0.05,0) [0|1023] "" XXX - """) - for a in range(0x3a5, 0x3a5 + 32): - f.write(f""" -BO_ {a} RADAR_TRACK_{a:x}: 24 RADAR - SG_ VALID : 25|2@0+ (1,0) [0|3] "" XXX - SG_ VALID2 : 28|2@0+ (1,0) [0|3] "" XXX - SG_ PROB : 30|10@1+ (1,0) [0|1023] "" XXX - SG_ VALID_CNT : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_6 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 62|7@0- (1,0) [0|127] "" XXX - SG_ LONG_DIST : 63|13@1+ (0.05,0) [0|8191] "" XXX - SG_ LAT_DIST : 76|12@1- (0.05,0) [0|4095] "" XXX - SG_ REL_SPEED : 88|14@1- (0.01,0) [0|16383] "" XXX - SG_ IN_MYLANE : 103|2@0+ (1,0) [0|3] "" XXX - SG_ LAT_SPEED : 104|13@1- (0.01,0) [0|8191] "" XXX - SG_ REL_ACCEL : 118|10@1- (0.05,0) [0|1023] "" XXX - """) diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py deleted file mode 100755 index aad417e32a..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py +++ /dev/null @@ -1,170 +0,0 @@ -#!/usr/bin/env python3 -from collections import namedtuple -import os - -if __name__ == "__main__": - dbc_name = os.path.basename(__file__).replace(".py", ".dbc") - hyundai_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(hyundai_path, dbc_name), "w", encoding='utf-8') as f: - f.write(""" -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX -""") - - for a in [0x100, 0x200]: - f.write(f""" -BO_ {a} RADAR_POINTS_METADATA_0x{a:x}: 64 RADAR - SG_ SIGNAL_1 : 0|32@1+ (1,0) [0|255] "" XXX - SG_ SIGNAL_2 : 32|32@1+ (1,0) [0|65535] "" XXX - SG_ SIGNAL_3 : 64|4@1+ (1,0) [0|15] "" XXX - SG_ SIGNAL_4 : 68|4@1+ (1,0) [0|15] "" XXX - SG_ RADAR_POINT_COUNT : 72|8@1+ (1,0) [0|255] "" XXX - SG_ SIGNAL_6 : 80|7@1+ (0.015625,0) [0|3] "" XXX - SG_ SIGNAL_7 : 87|1@1+ (1,0) [0|1] "" XXX - SG_ SIGNAL_8 : 88|3@1+ (1,0) [0|7] "" XXX - SG_ SIGNAL_9 : 91|5@1+ (0.0625,0) [0|31] "" XXX - SG_ SIGNAL_10 : 96|8@1+ (1,0) [0|255] "" XXX - SG_ SIGNAL_11 : 104|7@1+ (0.015625,0) [0|127] "" XXX - SG_ SIGNAL_12 : 111|2@1+ (1,0) [0|65535] "" XXX - SG_ SIGNAL_13 : 113|7@1+ (0.015625,0) [0|127] "" XXX - SG_ SIGNAL_14 : 120|7@1+ (0.015625,0) [0|127] "" XXX - SG_ SIGNAL_15 : 127|3@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_16 : 130|2@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_17 : 133|2@0+ (1,0) [0|3] "" XXX - SG_ SIGNAL_18 : 134|1@0+ (1,0) [0|3] "" XXX - SG_ SIGNAL_19 : 135|3@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_20 : 138|8@1+ (1,0) [0|63] "" XXX - SG_ SIGNAL_21 : 146|2@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_22 : 148|1@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_23 : 149|4@1+ (1,0) [0|7] "" XXX - SG_ SIGNAL_24 : 153|1@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_25 : 154|2@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_26 : 157|2@0+ (1,0) [0|3] "" XXX - SG_ SIGNAL_27 : 158|7@1+ (0.125,0) [0|3] "" XXX - SG_ SIGNAL_28 : 165|7@1+ (0.015625,0) [0|31] "" XXX - SG_ SIGNAL_29 : 172|7@1+ (0.125,0) [0|3] "" XXX - SG_ SIGNAL_30 : 179|7@1+ (0.015625,0) [0|1] "" XXX - SG_ SIGNAL_31 : 186|4@1+ (1,0) [0|7] "" XXX - SG_ SIGNAL_32 : 190|14@1+ (0.015625,0) [0|15] "" XXX - SG_ SIGNAL_33 : 204|11@1+ (0.03125,0) [0|8191] "" XXX - SG_ SIGNAL_34 : 215|2@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_35 : 217|7@1+ (1,0) [0|127] "" XXX - SG_ SIGNAL_36 : 224|6@1+ (1,0) [0|63] "" XXX - SG_ SIGNAL_37 : 230|6@1+ (0.2,0) [0|31] "" XXX - SG_ SIGNAL_38 : 236|6@1+ (0.2,0) [0|7] "" XXX - SG_ SIGNAL_39 : 242|8@1+ (1,-90) [0|255] "" XXX - SG_ SIGNAL_40 : 250|6@1+ (1,0) [0|63] "" XXX - SG_ SIGNAL_41 : 256|8@1+ (0.25,0) [0|255] "" XXX - SG_ SIGNAL_42 : 264|3@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_43 : 267|12@1+ (0.01,0) [0|31] "" XXX - SG_ SIGNAL_44 : 279|32@1+ (1,0) [0|63] "" XXX - SG_ SIGNAL_45 : 311|1@1+ (1,0) [0|1] "" XXX - SG_ SIGNAL_46 : 312|2@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_47 : 314|32@1+ (1,0) [0|255] "" XXX - SG_ SIGNAL_48 : 346|6@1+ (1,0) [0|63] "" XXX - SG_ SIGNAL_49 : 352|7@1+ (0.25,0) [0|127] "" XXX - SG_ SIGNAL_50 : 359|6@1+ (0.03125,0) [0|31] "" XXX - SG_ SIGNAL_51 : 365|10@1+ (0.125,0) [0|3] "" XXX - SG_ SIGNAL_52 : 375|10@1+ (0.125,0) [0|63] "" XXX - SG_ SIGNAL_53 : 385|7@1+ (1,0) [0|127] "" XXX - SG_ SIGNAL_54 : 392|7@1+ (1,0) [0|127] "" XXX - SG_ SIGNAL_55 : 399|8@1+ (0.00390625,0) [0|31] "" XXX - SG_ SIGNAL_56 : 407|10@1+ (0.125,0) [0|63] "" XXX - SG_ SIGNAL_57 : 417|1@1+ (1,0) [0|3] "" XXX - SG_ SIGNAL_58 : 418|1@1+ (1,0) [0|3] "" XXX -""") - - # radar points are sent at 20 Hz in groups of 1 to 13 messages - # each message has 5 radar points for a total of 65 points max - # each radar point is 101 bits so the alignment is not consistent - RadarPointSignal = namedtuple("RadarPointSignal", ["name", "start", "length", "scale", "offset"]) - radar_point_signals = ( - RadarPointSignal("DISTANCE", 7, 14, 1/64, 0), - RadarPointSignal("", 21, 2, 1, 0), - RadarPointSignal("", 23, 8, 1/512, -127/512), - RadarPointSignal("REL_VELOCITY", 31, 13, 1/32, -66), - RadarPointSignal("", 44, 2, 1, 0), - RadarPointSignal("", 46, 2, 1, 0), - RadarPointSignal("AZIMUTH", 48, 12, 1/512, -2047/512), - RadarPointSignal("", 60, 2, 1, 0), - RadarPointSignal("", 62, 1, 1, 0), - RadarPointSignal("", 63, 7, 1, 0), - RadarPointSignal("", 70, 1, 1, 0), - RadarPointSignal("", 71, 6, 1, 0), - RadarPointSignal("", 77, 2, 1, 0), - RadarPointSignal("", 79, 8, 1/512, -127/512), - RadarPointSignal("", 87, 1, 1, 0), - RadarPointSignal("", 88, 2, 1, 0), - RadarPointSignal("", 90, 3, 1, 0), - # last 15 bits are controlled by LAYOUT_ID (seems to always zero, so below is layout 0) - RadarPointSignal("", 93, 6, 1, 0), - RadarPointSignal("", 99, 8, 1, 0), - RadarPointSignal("", 107, 1, 1, 0), - ) - radar_point_bit_count = sum([s.length for s in radar_point_signals]) - - for a in [0x101, 0x201]: - f.write(f""" -BO_ {a} RADAR_POINTS_0x{a:x}: 64 RADAR - SG_ MESSAGE_ID : 0|5@1+ (1,0) [0|31] "" XXX - SG_ LAYOUT_ID : 5|2@1+ (1,0) [0|3] "" XXX -""") - bit_idx = radar_point_signals[0].start - for i in range(5): - signal_idx = 1 - for sig in radar_point_signals: - if sig.name: - sig_name = f"POINT_{i+1}_{sig.name}" - else: - sig_name = f"POINT_{i+1}_SIGNAL_{signal_idx}" - signal_idx += 1 - - sig_start_idx = i * radar_point_bit_count + sig.start - assert bit_idx == sig_start_idx, f"signal overlap or gap!!! {bit_idx} != {sig_start_idx}" - min_val = round(sig.offset, 10) - max_val = round((2**sig.length - 1) * sig.scale + sig.offset, 10) - - f.write(f" SG_ {sig_name} : {sig_start_idx}|{sig.length}@1+ ({sig.scale},{sig.offset}) [{min_val}|{max_val}] \"\" XXX\n") - bit_idx += sig.length - - # checksum is across a group of 0x100/200 and 0x101/201 messages (no checksums inside the other messages) - # ccitt_crc16 = mkCrcFun(0x11021, initCrc=0xffff, xorOut=0x0000, rev=False) - for a in [0x104, 0x204]: - f.write(f""" -BO_ {a} RADAR_POINTS_CHECKSUM_0x{a:x}: 3 RADAR - SG_ CRC16 : 0|16@1+ (1,0) [0|65535] "" XXX -""") diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py deleted file mode 100755 index ee8dde64d4..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py +++ /dev/null @@ -1,61 +0,0 @@ -#!/usr/bin/env python3 -import os - -if __name__ == "__main__": - dbc_name = os.path.basename(__file__).replace(".py", ".dbc") - hyundai_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(hyundai_path, dbc_name), "w", encoding='utf-8') as f: - f.write(""" -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - """) - - # note: 0x501/0x502 seem to be special in 0x5XX range - for a in range(0x500, 0x500 + 32): - f.write(f""" -BO_ {a} RADAR_TRACK_{a:x}: 8 RADAR - SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX - SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX - SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX - SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX - SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX - SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX - SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX - SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX - """) diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc deleted file mode 100644 index b8ecca7666..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc +++ /dev/null @@ -1,865 +0,0 @@ -CM_ "IMPORT _hyundai_common.dbc"; - -BO_ 67 DATC13: 8 XXX - SG_ CF_Datc_AcDisp : 22|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_AqsDisp : 20|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_AutoDefogBlink : 16|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_AutoDisp : 12|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_ChgReqDisp : 8|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_ClmScanDisp : 18|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_DualDisp : 30|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_FrDefLed : 14|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_FrontBlwDisp : 60|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_IntakeDisp : 10|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_IonClean : 6|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_ModDisp : 2|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_OpSts : 25|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_PSModDisp : 56|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_PwrInf : 32|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearAutoDisp : 40|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearBlwDisp : 52|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearChgReqDisp : 46|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearClimateScnDisp : 44|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearManual : 38|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearModDisp : 48|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_RearOffDisp : 42|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Datc_TempDispUnit : 0|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Mtc_MaxAcDisp : 28|2@1+ (1,0) [0|0] "" XXX - -BO_ 127 CGW5: 8 XXX - SG_ C_DRLLampLhOpenSts : 7|1@1+ (1,0) [0|0] "" XXX - SG_ C_DRLLampRhOpenSts : 8|1@1+ (1,0) [0|0] "" XXX - SG_ C_FrontEXTTailLhOpenSts : 15|1@1+ (1,0) [0|0] "" XXX - SG_ C_FrontEXTTailRhOpenSts : 16|1@1+ (1,0) [0|0] "" XXX - SG_ C_FrontFOGLhOpenSts : 11|1@1+ (1,0) [0|0] "" XXX - SG_ C_FrontFOGRhOpenSts : 12|1@1+ (1,0) [0|0] "" XXX - SG_ C_FrontTSIGLhOpenSts : 19|1@1+ (1,0) [0|0] "" XXX - SG_ C_FrontTSIGRhOpenSts : 20|1@1+ (1,0) [0|0] "" XXX - SG_ C_HLampHighLhOpenSts : 5|1@1+ (1,0) [0|0] "" XXX - SG_ C_HLampHighRhOpenSts : 6|1@1+ (1,0) [0|0] "" XXX - SG_ C_HLampLowLhOpenSts : 3|1@1+ (1,0) [0|0] "" XXX - SG_ C_HLampLowRhOpenSts : 4|1@1+ (1,0) [0|0] "" XXX - SG_ C_HMSLOpenSts : 2|1@1+ (1,0) [0|0] "" XXX - SG_ C_LicensePlateLhOpenSts : 23|1@1+ (1,0) [0|0] "" XXX - SG_ C_LicensePlateRhOpenSts : 24|1@1+ (1,0) [0|0] "" XXX - SG_ C_RearEXTTailLhOpenSts : 13|1@1+ (1,0) [0|0] "" XXX - SG_ C_RearEXTTailRhOpenSts : 14|1@1+ (1,0) [0|0] "" XXX - SG_ C_RearFOGLhOpenSts : 9|1@1+ (1,0) [0|0] "" XXX - SG_ C_RearFOGRhOpenSts : 10|1@1+ (1,0) [0|0] "" XXX - SG_ C_RearTSIGLhOpenSts : 17|1@1+ (1,0) [0|0] "" XXX - SG_ C_RearTSIGRhOpenSts : 18|1@1+ (1,0) [0|0] "" XXX - SG_ C_SBendingLhOpenSts : 21|1@1+ (1,0) [0|0] "" XXX - SG_ C_SBendingRhOpenSts : 22|1@1+ (1,0) [0|0] "" XXX - SG_ C_StopLampLhOpenSts : 0|1@1+ (1,0) [0|0] "" XXX - SG_ C_StopLampRhOpenSts : 1|1@1+ (1,0) [0|0] "" XXX - -BO_ 304 YRS11: 8 XXX - SG_ CF_Yrs_LatAcStat : 36|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Yrs_MCUStat : 40|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Yrs_YrStat : 32|4@1+ (1,0) [0|0] "" XXX - SG_ CR_Yrs_Crc1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ CR_Yrs_LatAc : 16|16@1+ (0.000127465,-4.17677312) [0|0] "" XXX - SG_ CR_Yrs_MsgCnt1 : 48|4@1+ (1,0) [0|0] "" XXX - SG_ CR_Yrs_Yr : 0|16@1+ (0.005,-163.84) [0|0] "" XXX - -BO_ 320 YRS12: 8 XXX - SG_ CF_IMU_ResetStat : 20|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Yrs_LongAcStat : 16|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Yrs_Type : 36|4@1+ (1,0) [0|0] "" XXX - SG_ CR_Yrs_Crc2 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ CR_Yrs_LongAc : 0|16@1+ (0.000127465,-4.17677312) [0|0] "" XXX - SG_ CR_Yrs_MsgCnt2 : 48|4@1+ (1,0) [0|0] "" XXX - SG_ YRS_Temp : 24|8@1+ (1,-68) [0|0] "" XXX - SG_ YRS_TempStat : 32|4@1+ (1,0) [0|0] "" XXX - -BO_ 339 TCS11: 8 XXX - SG_ ABS_ACT : 10|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_DEF : 7|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_DIAG : 6|1@1+ (1,0) [0|0] "" XXX - SG_ AliveCounter_TCS1 : 52|4@1+ (1,0) [0|0] "" XXX - SG_ BLA_CTL : 49|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Esc_BrkCtl : 48|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Esc_LimoInfo : 4|2@1+ (1,0) [0|0] "" XXX - SG_ CheckSum_TCS1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ DBC_CTL : 16|1@1+ (1,0) [0|0] "" XXX - SG_ DBC_DEF : 18|1@1+ (1,0) [0|0] "" XXX - SG_ DBC_PAS : 17|1@1+ (1,0) [0|0] "" XXX - SG_ EBD_DEF : 11|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_CTL : 14|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_DEF : 13|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_PAS : 12|1@1+ (1,0) [0|0] "" XXX - SG_ ESS_STAT : 22|2@1+ (1,0) [0|0] "" XXX - SG_ HAC_CTL : 19|1@1+ (1,0) [0|0] "" XXX - SG_ HAC_DEF : 21|1@1+ (1,0) [0|0] "" XXX - SG_ HAC_PAS : 20|1@1+ (1,0) [0|0] "" XXX - SG_ MSR_C_REQ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ TCS_CTL : 9|1@1+ (1,0) [0|0] "" XXX - SG_ TCS_DEF : 8|1@1+ (1,0) [0|0] "" XXX - SG_ TCS_GSC : 3|1@1+ (1,0) [0|0] "" XXX - SG_ TCS_MFRN : 15|1@1+ (1,0) [0|0] "" XXX - SG_ TCS_PAS : 2|1@1+ (1,0) [0|0] "" XXX - SG_ TCS_REQ : 0|1@1+ (1,0) [0|0] "" XXX - SG_ TQI_MSR : 32|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_TCS : 24|8@1+ (0.390625,0) [0|0] "" XXX - -BO_ 356 VSM11: 4 XXX - SG_ CF_Esc_Act : 12|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Esc_AliveCnt : 17|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Esc_Chksum : 24|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Esc_CtrMode : 13|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Esc_Def : 16|1@1+ (1,0) [0|0] "" XXX - SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [0|0] "" XXX - -BO_ 544 ESP12: 8 XXX - SG_ CYL_PRES : 26|12@1+ (0.1,0) [0|0] "" XXX - SG_ CYL_PRESS_DIAG : 39|1@1+ (1,0) [0|0] "" XXX - SG_ CYL_PRES_STAT : 38|1@1+ (1,0) [0|0] "" XXX - SG_ ESP12_AliveCounter : 60|4@1+ (1,0) [0|0] "" XXX - SG_ ESP12_Checksum : 56|4@1+ (1,0) [0|0] "" XXX - SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [0|0] "" XXX - SG_ LAT_ACCEL_DIAG : 12|1@1+ (1,0) [0|0] "" XXX - SG_ LAT_ACCEL_STAT : 11|1@1+ (1,0) [0|0] "" XXX - SG_ LONG_ACCEL : 13|11@1+ (0.01,-10.23) [0|0] "" XXX - SG_ LONG_ACCEL_DIAG : 25|1@1+ (1,0) [0|0] "" XXX - SG_ LONG_ACCEL_STAT : 24|1@1+ (1,0) [0|0] "" XXX - SG_ YAW_RATE : 40|13@1+ (0.01,-40.95) [0|0] "" XXX - SG_ YAW_RATE_DIAG : 54|1@1+ (1,0) [0|0] "" XXX - SG_ YAW_RATE_STAT : 53|1@1+ (1,0) [0|0] "" XXX - -BO_ 593 MDPS12: 8 XXX - SG_ CF_Mdps_Chksum2 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_Def : 11|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_FailStat : 15|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_MsgCount2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_SErr : 37|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_ToiActive : 13|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_ToiFlt : 14|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_ToiUnavail : 12|1@1+ (1,0) [0|0] "" XXX - SG_ CR_Mdps_OutTq : 52|12@1+ (0.1,-204.8) [0|0] "" XXX - SG_ CR_Mdps_StrColTq : 0|11@1+ (1,-1024) [0|0] "" XXX - SG_ CR_Mdps_StrTq : 40|12@1+ (0.01,-20.48) [0|0] "" XXX - -BO_ 608 EMS16: 8 XXX - SG_ AliveCounter : 60|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_AclAct : 62|2@1+ (1,0) [0|0] "" XXX - SG_ CRUISE_LAMP_M : 25|1@1+ (1,0) [0|0] "" XXX - SG_ CRUISE_LAMP_S : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Checksum : 56|4@1+ (1,0) [0|0] "" XXX - SG_ ENG_STAT : 28|3@1+ (1,0) [0|0] "" XXX - SG_ GLOW_STAT : 24|1@1+ (1,0) [0|0] "" XXX - SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1,0) [0|0] "" XXX - SG_ SOAK_TIME : 32|8@1+ (1,0) [0|0] "" XXX - SG_ SOAK_TIME_ERROR : 31|1@1+ (1,0) [0|0] "" XXX - SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [0|0] "" XXX - SG_ TQI : 8|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_MAX : 40|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_MIN : 0|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_TARGET : 16|8@1+ (0.390625,0) [0|0] "" XXX - -BO_ 625 LPI11: 8 XXX - SG_ BFS_CYL : 48|8@1+ (1,0) [0|0] "" XXX - SG_ ERR_GAS : 16|8@1+ (1,0) [0|0] "" XXX - SG_ FAC_TI_GAS_COR : 24|16@1+ (3.05e-05,0) [0|0] "" XXX - SG_ FTL_AFU : 40|8@1+ (0.392,0) [0|0] "" XXX - SG_ FUP_LPG_MMV : 0|8@1+ (128,0) [0|0] "" XXX - SG_ LPI_OBD : 12|4@1+ (1,0) [0|0] "" XXX - SG_ LV_BFS_IN_PROGRESS : 9|1@1+ (1,0) [0|0] "" XXX - SG_ LV_CONF_INJECTION_DELAY : 57|1@1+ (1,0) [0|0] "" XXX - SG_ LV_FUEL_TYPE_BOX : 8|1@1+ (1,0) [0|0] "" XXX - SG_ LV_FUP_ENA_THD : 11|1@1+ (1,0) [0|0] "" XXX - SG_ LV_GAS_OK : 10|1@1+ (1,0) [0|0] "" XXX - SG_ LV_LPG_SW_DRIVER_REQ : 58|1@1+ (1,0) [0|0] "" XXX - SG_ LV_PRE_CDN_LEAK : 56|1@1+ (1,0) [0|0] "" XXX - -BO_ 640 EMS13: 8 XXX - SG_ AMP : 56|8@1+ (21.22,0) [0|0] "" XXX - SG_ EOS : 16|8@1+ (1,0) [0|0] "" XXX - SG_ ERR_FUEL : 8|8@1+ (1,0) [0|0] "" XXX - SG_ LV_BFS_CFIRM : 1|1@1+ (1,0) [0|0] "" XXX - SG_ LV_CRASH : 2|1@1+ (1,0) [0|0] "" XXX - SG_ LV_ENG_TURN : 5|1@1+ (1,0) [0|0] "" XXX - SG_ LV_FUEL_TYPE_ECU : 0|1@1+ (1,0) [0|0] "" XXX - SG_ LV_GSL_MAP : 4|1@1+ (1,0) [0|0] "" XXX - SG_ LV_VB_OFF_ACT : 3|1@1+ (1,0) [0|0] "" XXX - SG_ MAF : 40|8@1+ (5.447,0) [0|0] "" XXX - SG_ MAP : 56|8@1+ (0.47058,0) [0|0] "" XXX - SG_ N_32 : 32|8@1+ (32,0) [0|0] "" XXX - SG_ TCO : 24|8@1+ (0.75,-48) [0|0] "" XXX - SG_ TIA : 48|8@1+ (0.75,-48) [0|0] "" XXX - -BO_ 688 SAS11: 5 XXX - SG_ CheckSum : 36|4@1+ (1,0) [0|0] "" XXX - SG_ MsgCount : 32|4@1+ (1,0) [0|0] "" XXX - SG_ SAS_Angle : 0|16@1- (0.1,0) [0|0] "" XXX - SG_ SAS_Speed : 16|8@1+ (4,0) [0|0] "" XXX - SG_ SAS_Stat : 24|8@1+ (1,0) [0|0] "" XXX - -BO_ 790 EMS11: 8 XXX - SG_ ACK_TCS : 2|1@1+ (1,0) [0|0] "" XXX - SG_ F_N_ENG : 1|1@1+ (1,0) [0|0] "" XXX - SG_ F_SUB_TQI : 7|1@1+ (1,0) [0|0] "" XXX - SG_ N : 16|16@1+ (0.25,0) [0|0] "" XXX - SG_ PUC_STAT : 3|1@1+ (1,0) [0|0] "" XXX - SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0) [0|0] "" XXX - SG_ RLY_AC : 6|1@1+ (1,0) [0|0] "" XXX - SG_ SWI_IGK : 0|1@1+ (1,0) [0|0] "" XXX - SG_ TQFR : 40|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI : 32|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_ACOR : 8|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQ_COR_STAT : 4|2@1+ (1,0) [0|0] "" XXX - SG_ VS : 48|8@1+ (1,0) [0|0] "" XXX - -BO_ 809 EMS12: 8 XXX - SG_ ACC_ACT : 30|1@1+ (1,0) [0|0] "" XXX - SG_ ACK_ES : 25|1@1+ (1,0) [0|0] "" XXX - SG_ BRAKE_ACT : 32|2@1+ (1,0) [0|0] "" XXX - SG_ CAN_VERS : 0|6@1+ (1,0) [0|0] "" XXX - SG_ CLU_ACK : 31|1@1+ (1,0) [0|0] "" XXX - SG_ CONF_MIL_FMY : 26|3@1+ (1,0) [0|0] "" XXX - SG_ CONF_TCU : 0|6@1+ (1,0) [0|0] "" XXX - SG_ ENG_CHR : 34|4@1+ (1,0) [0|0] "" XXX - SG_ ENG_VOL : 56|8@1+ (0.1,0) [0|0] "" XXX - SG_ GP_CTL : 38|2@1+ (1,0) [0|0] "" XXX - SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0) [0|0] "" XXX - SG_ MUL_CODE : 6|2@1+ (1,0) [0|0] "" XXX - SG_ OBD_FRF_ACK : 0|6@1+ (1,0) [0|0] "" XXX - SG_ OD_OFF_REQ : 29|1@1+ (1,0) [0|0] "" XXX - SG_ PV_AV_CAN : 48|8@1+ (0.3906,0) [0|0] "" XXX - SG_ TEMP_ENG : 8|8@1+ (0.75,-48) [0|0] "" XXX - SG_ TPS : 40|8@1+ (0.4694836,-15.0234742) [0|0] "" XXX - SG_ TQ_STND : 0|6@1+ (10,0) [0|0] "" XXX - SG_ VB_OFF_ACT : 24|1@1+ (1,0) [0|0] "" XXX - -BO_ 832 LKAS11: 8 XXX - SG_ CF_Lkas_ActToi : 27|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Lkas_Chksum : 0|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Lkas_FcwOpt_USM : 32|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Lkas_LdwsActivemode : 30|2@1+ (1,0) [0|3] "" CLU,IBOX,PSB - SG_ CF_Lkas_LdwsLHWarning : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB - SG_ CF_Lkas_LdwsRHWarning : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB - SG_ CF_Lkas_MsgCount : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,MDPS - SG_ CF_Lkas_ToiFlt : 28|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CR_Lkas_StrToqReq : 16|11@1+ (1.0,-1024.0) [-1024.0|1024.0] "" MDPS - SG_ NEW_SIGNAL_1 : 8|2@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_2 : 14|2@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_3 : 29|1@0+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_4 : 35|1@0+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 854 M_356: 8 XXX - SG_ PAINT1 : 32|1@0+ (1,0) [0|0] "" XXX - SG_ PAINT2 : 34|2@0+ (1,0) [0|0] "" XXX - SG_ PAINT3 : 36|2@0+ (1,0) [0|0] "" XXX - SG_ PAINT4 : 38|1@0+ (1,0) [0|0] "" XXX - -BO_ 867 RADAR_0x363: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ FCA_ESA : 8|2@1+ (1,0) [0|3] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 870 EMS_366: 8 XXX - SG_ N : 8|16@1+ (0.25,0) [0|0] "" XXX - SG_ SWI_IGK : 48|1@0+ (1,0) [0|0] "" XXX - SG_ TQI_1 : 0|8@1+ (0.390625,0) [0|0] "" XXX - SG_ TQI_2 : 24|8@1+ (0.390625,0) [0|0] "" XXX - SG_ VS : 40|8@1+ (1,0) [0|0] "" XXX - -BO_ 871 LVR12: 8 XXX - SG_ CF_Lvr_CruiseSet : 0|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_Gear : 32|4@1+ (1,0) [0|0] "" XXX - -BO_ 872 LVR11: 8 XXX - SG_ CF_Lvr_AC : 48|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_BkeAct : 5|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_CS : 52|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_GearInf : 0|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_NFnStat : 6|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_PNStat : 20|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_PRelStat : 4|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_PosCpl : 12|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_PosInf : 8|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_ShfErrInf : 28|20@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_ShtLkStat : 24|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Lvr_UlkButStat : 18|2@1+ (1,0) [0|0] "" XXX - -BO_ 897 MDPS11: 8 XXX - SG_ CF_MDPS_VSM_FUNC : 56|1@0+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_ALTRequest : 23|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_AliveCnt : 40|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_Chksum : 48|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_CurrMode : 59|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_Flex : 2|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_FlexDisp : 5|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_LKAS_FUNC : 58|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_SPAS_FUNC : 57|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_Stat : 7|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_Type : 61|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Mdps_WLmp : 0|2@1+ (1,0) [0|0] "" XXX - SG_ CR_Mdps_DrvTq : 11|12@1+ (1,-2048) [0|0] "" XXX - SG_ CR_Mdps_StrAng : 24|16@1- (0.1,0) [0|0] "" XXX - -BO_ 902 WHL_SPD11: 8 XXX - SG_ WHL_SPD_AliveCounter_LSB : 14|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_SPD_AliveCounter_MSB : 30|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_SPD_Checksum_LSB : 46|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_SPD_Checksum_MSB : 62|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0) [0|0] "" XXX - SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0) [0|0] "" XXX - SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0) [0|0] "" XXX - SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0) [0|0] "" XXX - -BO_ 903 WHL_PUL11: 6 XXX - SG_ WHL_DIR_FL : 32|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_DIR_FR : 34|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_DIR_RL : 36|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_DIR_RR : 38|2@1+ (1,0) [0|0] "" XXX - SG_ WHL_PUL_Chksum : 40|8@1+ (1,0) [0|0] "" XXX - SG_ WHL_PUL_FL : 0|8@1+ (0.5,0) [0|0] "" XXX - SG_ WHL_PUL_FR : 8|8@1+ (0.5,0) [0|0] "" XXX - SG_ WHL_PUL_RL : 16|8@1+ (0.5,0) [0|0] "" XXX - SG_ WHL_PUL_RR : 24|8@1+ (0.5,0) [0|0] "" XXX - -BO_ 905 SCC14: 8 XXX - SG_ ACC_ObjLatPos : 16|9@1+ (0.1,-20) [-20|31.1] "m" ABS,ESC - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ ObjGap : 51|3@1+ (1,0) [0|255] "" CLU,HUD,ESC - -BO_ 909 FCA11: 8 XXX - SG_ CR_FCA_ChkSum : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ CR_FCA_Alive : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 913 BCM_PO_11: 8 XXX - SG_ BCM_Door_Dri_Status : 5|1@0+ (1,0) [0|0] "" XXX - SG_ BCM_Shift_R_MT_SW_Status : 39|2@0+ (1,0) [0|0] "" XXX - SG_ LFA_Pressed : 4|1@0+ (1,0) [0|0] "" XXX - -BO_ 916 TCS13: 8 XXX - SG_ ACCEL_REF_ACC : 32|11@1+ (0.01,-10.23) [0|0] "" XXX - SG_ ACCEnable : 43|2@1+ (1,0) [0|0] "" XXX - SG_ ACC_EQUIP : 52|1@1+ (1,0) [0|0] "" XXX - SG_ ACC_REQ : 54|1@1+ (1,0) [0|0] "" XXX - SG_ AEB_EQUIP : 63|1@1+ (1,0) [0|0] "" XXX - SG_ AliveCounterTCS : 13|3@1+ (1,0) [0|0] "" XXX - SG_ BrakeLight : 11|1@1+ (1,0) [0|0] "" XXX - SG_ CF_DriBkeStat : 60|1@1+ (1,0) [0|0] "" XXX - SG_ CF_VSM_Avail : 57|2@1+ (1,0) [0|0] "" XXX - SG_ CF_VSM_Coded : 56|1@1+ (1,0) [0|0] "" XXX - SG_ CF_VSM_ConfSwi : 61|2@1+ (1,0) [0|0] "" XXX - SG_ CF_VSM_Handshake : 59|1@1+ (1,0) [0|0] "" XXX - SG_ CheckSum_TCS3 : 48|4@1+ (1,0) [0|0] "" XXX - SG_ DCEnable : 12|1@1+ (1,0) [0|0] "" XXX - SG_ DF_BF_STAT : 19|2@1+ (1,0) [0|0] "" XXX - SG_ DriverBraking : 55|1@1+ (1,0) [0|0] "" XXX - SG_ DriverOverride : 45|2@1+ (1,0) [0|0] "" XXX - SG_ EBA_ACK : 17|1@1+ (1,0) [0|0] "" XXX - SG_ FCA_ACK : 18|1@1+ (1,0) [0|0] "" XXX - SG_ PBRAKE_ACT : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Pre_TCS_CTL : 16|1@1+ (1,0) [0|0] "" XXX - SG_ SCCReqLim : 22|2@1+ (1,0) [0|0] "" XXX - SG_ StandStill : 47|1@1+ (1,0) [0|0] "" XXX - SG_ TQI_SCC : 24|8@1+ (0.390625,0) [0|0] "" XXX - SG_ aBasis : 0|11@1+ (0.01,-10.23) [0|0] "" XXX - -BO_ 920 RADAR_0x398: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 921 RADAR_0x399: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 922 RADAR_0x39a: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 923 RADAR_0x39b: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 924 RADAR_0x39c: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 1040 CGW_USM1: 8 XXX - SG_ CF_Gway_ADrLRValue : 8|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ADrURValue : 11|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ATTurnRValue : 0|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_AutoLightRValue : 35|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrLockSoundRValue : 24|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_EscortHLRValue : 4|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HAnBRValue : 27|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HfreeTrunkRValue : 32|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_MoodLpRValue : 30|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_OTTurnRValue : 21|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PSMRValue : 18|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PTGMRValue : 2|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PasSpkrLvRValue : 40|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RearWiperRValue : 38|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SCMRValue : 14|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_TTUnlockRValue : 6|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WlightRValue : 16|2@1+ (1,0) [0|0] "" XXX - -BO_ 1042 ICM_412h: 8 XXX - SG_ PopupMessageOutput_1Level : 48|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_2Level : 49|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_3Level : 50|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_4Level : 51|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_5Level : 52|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_6Level : 53|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_7Level : 54|1@0+ (1,0) [0|0] "" XXX - SG_ PopupMessageOutput_8Level : 55|1@0+ (1,0) [0|0] "" XXX - SG_ TRIP_A_DT_Display_clock : 22|7@0+ (1,0) [0|0] "" XXX - SG_ TRIP_A_DT_Display_minute : 29|6@0+ (1,0) [0|0] "" XXX - SG_ TRIP_B_DT_Display_clock : 38|7@0+ (1,0) [0|0] "" XXX - SG_ TRIP_B_DT_Display_minute : 45|6@0+ (1,0) [0|0] "" XXX - SG_ T_Outside_input : 0|9@0+ (0.01,0) [0|0] "" XXX - SG_ WarningSoundOutput_1Group : 5|1@0+ (1,0) [0|0] "" XXX - SG_ WarningSoundOutput_2Group : 6|1@0+ (1,0) [0|0] "" XXX - SG_ WarningSoundOutput_3Group : 7|1@0+ (1,0) [0|0] "" XXX - -BO_ 1056 SCC11: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ AliveCounterACC : 12|4@1+ (1,0) [0|15] "" CLU,EMS,ESC,TCU - SG_ JerkLowerLimit : 50|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC - SG_ JerkUpperLimit : 43|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC - SG_ ObjValid : 59|1@1+ (1,0) [0|1] "" CLU,ESC,TCU - SG_ aReqRaw : 27|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX - SG_ aReqValue : 16|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX - -BO_ 1057 SCC12: 8 XXX - SG_ ACCMode : 28|2@1+ (1,0) [0|3] "" CLU,HUD,LDWS_LKAS,ESC - SG_ ACCMode_Inactive : 30|1@1+ (1,0) [0|1] "" CLU,HUD,LDWS_LKAS,ESC - SG_ ACC_ObjDist : 16|11@1+ (0.1,0) [0|204.7] "m" ABS,ESC - SG_ CR_VSM_ChkSum : 0|8@1+ (1,0) [0|0] "" XXX - SG_ CR_VSM_Alive : 12|4@1+ (1,0) [0|15] "" ESC,PSB - SG_ MainMode_ACC : 27|1@1+ (1,0) [0|1] "" CLU,EMS,ESC - SG_ SCCInfoDisplay : 32|3@1+ (1,0) [0|7] "" CLU,ESC - SG_ TauGapSet : 37|3@1+ (1,0) [0|7] "" CLU,ESC,TCU - SG_ VSetDis : 41|8@1+ (1,0) [0|255] "km/h or MPH" CLU,ESC,TCU - SG_ StopReq : 49|1@1+ (1,0) [0|1] "" EPB,ESC - -BO_ 1064 _4WD11: 8 XXX - SG_ AUTO_ACT : 43|1@1+ (1,0) [0|0] "" XXX - SG_ CLU_DUTY : 16|8@1+ (1,0) [0|0] "" XXX - SG_ LOCK_ACT : 44|1@1+ (1,0) [0|0] "" XXX - SG_ LOW_ACT : 42|1@1+ (1,0) [0|0] "" XXX - SG_ R_TIRE : 24|8@1+ (1,200) [0|0] "" XXX - SG_ _2H_ACT : 40|1@1+ (1,0) [0|0] "" XXX - SG_ _4H_ACT : 41|1@1+ (1,0) [0|0] "" XXX - SG_ _4WD_ERR : 8|8@1+ (1,0) [0|0] "" XXX - SG_ _4WD_SUPPORT : 2|2@1+ (1,0) [0|0] "" XXX - SG_ _4WD_SW : 32|8@1+ (1,0) [0|0] "" XXX - SG_ _4WD_TQC_CUR : 48|16@1+ (1,0) [0|0] "" XXX - SG_ _4WD_TYPE : 0|2@1+ (1,0) [0|0] "" XXX - -BO_ 1078 PAS11: 4 XXX - SG_ CF_Gway_PASCheckSound : 22|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDisplayFCTR : 8|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDisplayFLH : 0|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDisplayFRH : 3|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDisplayRCTR : 11|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDisplayRLH : 16|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDisplayRRH : 19|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASDistance : 28|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASFsound : 14|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASOption : 26|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASRsound : 6|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PASSystemOn : 24|2@1+ (1,0) [0|0] "" XXX - -BO_ 1082 RADAR_0x43a: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 1136 P_STS: 8 XXX - SG_ Checksum : 62|2@1+ (1,0) [0|0] "" XXX - SG_ Counter : 58|4@1+ (1,0) [0|0] "" XXX - SG_ HCU1_STS : 6|2@1+ (1,0) [0|0] "" XXX - SG_ HCU5_STS : 8|2@1+ (1,0) [0|0] "" XXX - -BO_ 1151 ESP11: 6 XXX - SG_ AVH_STAT : 0|2@1+ (1,0) [0|0] "" XXX - SG_ ECD_ACT : 6|1@1+ (1,0) [0|0] "" XXX - SG_ LDM_STAT : 2|1@1+ (1,0) [0|0] "" XXX - SG_ REQ_EPB_ACT : 3|2@1+ (1,0) [0|0] "" XXX - SG_ REQ_EPB_STAT : 5|1@1+ (1,0) [0|0] "" XXX - SG_ ROL_CNT_ESP : 8|8@1+ (1,0) [0|0] "" XXX - SG_ _4WD_CLU_LIM : 32|8@1+ (0.390625,0) [0|0] "" XXX - SG_ _4WD_LIM_MODE : 42|1@1+ (1,0) [0|0] "" XXX - SG_ _4WD_LIM_REQ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ _4WD_OPEN : 40|2@1+ (1,0) [0|0] "" XXX - SG_ _4WD_TQC_LIM : 16|16@1+ (1,0) [0|0] "" XXX - -BO_ 1157 LFAHDA_MFC: 8 XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_2 : 16|1@0+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_3 : 17|1@0+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_4 : 18|1@0+ (1,0) [0|0] "" XXX - SG_ HDA_Icon_State : 19|2@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_5 : 21|3@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_6 : 24|1@0+ (1,0) [0|0] "" XXX - SG_ LFA_Icon_State : 25|2@1+ (1,0) [0|0] "" XXX - SG_ NEW_SIGNAL_7 : 27|37@1+ (1,0) [0|0] "" XXX - -BO_ 1162 BCA11: 8 XXX - SG_ AliveCounter : 21|4@1+ (1,0) [0|0] "" XXX - SG_ CF_BCA_State : 16|3@1+ (1,0) [0|0] "" XXX - SG_ CF_BCA_Warning : 19|2@1+ (1,0) [0|0] "" XXX - SG_ Check_Sum : 56|8@1+ (1,0) [0|0] "" XXX - SG_ RCCA_Brake_Command : 29|1@1+ (1,0) [0|0] "" XXX - -BO_ 1168 EPB11: 7 XXX - SG_ EPB_ALARM : 6|2@1+ (1,0) [0|0] "" XXX - SG_ EPB_CLU : 8|8@1+ (1,0) [0|0] "" XXX - SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0) [0|0] "" XXX - SG_ EPB_DBF_REQ : 26|1@1+ (1,0) [0|0] "" XXX - SG_ EPB_DBF_STAT : 24|1@1+ (1,0) [0|0] "" XXX - SG_ EPB_FAIL : 29|3@1+ (1,0) [0|0] "" XXX - SG_ EPB_FORCE : 32|12@1+ (1,-1000) [0|0] "" XXX - SG_ EPB_FRC_ERR : 22|2@1+ (1,0) [0|0] "" XXX - SG_ EPB_F_LAMP : 4|2@1+ (1,0) [0|0] "" XXX - SG_ EPB_I_LAMP : 0|4@1+ (1,0) [0|0] "" XXX - SG_ EPB_RBL : 18|1@1+ (1,0) [0|0] "" XXX - SG_ EPB_STATUS : 19|3@1+ (1,0) [0|0] "" XXX - SG_ EPB_SWITCH : 16|2@1+ (1,0) [0|0] "" XXX - SG_ ESP_ACK : 25|1@1+ (1,0) [0|0] "" XXX - -BO_ 1170 EMS19: 8 XXX - SG_ BAT_LAMP_STAT : 42|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_BrkReq : 0|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_DecelReq : 8|12@1+ (0.001,-4.094) [0|0] "" XXX - SG_ CF_Ems_DnShftReq : 1|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41) [0|0] "" XXX - SG_ CF_Ems_OPSFail : 56|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Ems_RepModChk : 5|2@1+ (1,0) [0|0] "" XXX - SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0) [0|0] "" XXX - SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40) [0|0] "" XXX - SG_ DPF_LAMP_STAT : 40|2@1+ (1,0) [0|0] "" XXX - -BO_ 1173 YRS13: 8 XXX - SG_ YRS_SeralNo : 16|48@1+ (1,0) [0|0] "" XXX - -BO_ 1186 FRT_RADAR11: 2 XXX - SG_ BYTE0 : 0|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE1 : 8|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 1265 CLU11: 4 XXX - SG_ CF_Clu_AliveCnt1 : 28|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_AmpInfo : 25|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_CluInfo : 24|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_CruiseSwMain : 3|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_CruiseSwState : 0|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_DetentOut : 18|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_ParityBit1 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_RheostatLevel : 19|5@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_SPEED_UNIT : 17|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_SldMainSW : 4|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0) [0|0] "" XXX - SG_ CF_Clu_VanzDecimal : 6|2@1+ (0.125,0) [0|0] "" XXX - -BO_ 1280 ACU14: 1 XXX - SG_ CF_SBR_Ind : 4|2@1+ (1,0) [0|0] "" XXX - SG_ CF_SWL_Ind : 0|2@1+ (1,0) [0|0] "" XXX - SG_ CF_TTL_Ind : 2|2@1+ (1,0) [0|0] "" XXX - -BO_ 1287 TCS15: 4 XXX - SG_ ABS_W_LAMP : 0|1@1+ (1,0) [0|0] "" XXX - SG_ AVH_ALARM : 27|2@1+ (1,0) [0|0] "" XXX - SG_ AVH_CLU : 16|8@1+ (1,0) [0|0] "" XXX - SG_ AVH_I_LAMP : 24|2@1+ (1,0) [0|0] "" XXX - SG_ AVH_LAMP : 29|3@1+ (1,0) [0|0] "" XXX - SG_ DBC_F_LAMP : 6|2@1+ (1,0) [0|0] "" XXX - SG_ DBC_W_LAMP : 5|1@1+ (1,0) [0|0] "" XXX - SG_ EBD_W_LAMP : 26|1@1+ (1,0) [0|0] "" XXX - SG_ ESC_Off_Step : 8|2@1+ (1,0) [0|0] "" XXX - SG_ TCS_LAMP : 3|2@1+ (1,0) [0|0] "" XXX - SG_ TCS_OFF_LAMP : 1|2@1+ (1,0) [0|0] "" XXX - -BO_ 1292 CLU13: 8 XXX - SG_ CF_Clu_ActiveEcoSW : 39|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_AliveCnt2 : 60|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_AltLStatus : 59|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_AvgFCI : 6|10@1+ (0.1,0) [0|0] "" XXX - SG_ CF_Clu_AvgFCU : 3|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_AvsmCur : 5|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_DTE : 24|10@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_DrivingModeSwi : 16|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_FlexSteerSW : 23|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_FuelDispLvl : 18|5@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_IsaMainSW : 43|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_LdwsLkasSW : 56|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_LowfuelWarn : 0|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_RefDetMod : 2|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_SWL_Stat : 36|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_TripUnit : 34|2@1+ (1,0) [0|0] "" XXX - -BO_ 1312 CGW3: 8 XXX - SG_ CF_Hoodsw_memory : 22|2@1+ (1,0) [0|0] "" XXX - SG_ CR_Photosensor_LH : 0|8@1+ (78.125,0) [0|0] "" XXX - SG_ CR_Photosensor_RH : 10|8@1+ (78.125,0) [0|0] "" XXX - SG_ C_MirOutTempSns : 24|8@1+ (0.5,-40.5) [0|0] "" XXX - -BO_ 1322 CLU15: 8 XXX - SG_ CF_Clu_ClusterSound : 38|1@1- (1,0) [0|0] "" XXX - SG_ CF_Clu_Gear : 9|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudBrightDnSW : 24|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudBrightUpSW : 22|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudFontColorSet : 20|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudFontSizeSet : 31|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudHeightDnSW : 28|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudHeightUpSW : 26|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudInfoSet : 13|7@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_HudSet : 30|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_LanguageInfo : 33|5@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_VehicleSpeed : 0|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Clu_VehicleSpeed2 : 48|8@1+ (1,0) [0|0] "" XXX - -BO_ 1342 LKAS12: 8 XXX - SG_ CF_LkasDawStatus : 40|3@1+ (1,0) [0|0] "" XXX - SG_ CF_LkasTsrSpeed_Display_Navi : 24|8@1+ (1,0) [0|0] "" XXX - SG_ CF_Lkas_Daw_USM : 37|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Lkas_TsrAddinfo_Display : 32|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Lkas_TsrSlifOpt : 10|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Lkas_TsrSpeed_Display_Clu : 16|8@1+ (1,0) [0|0] "" XXX - SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX - -BO_ 1345 CGW1: 8 XXX - SG_ CF_Gway_ALightStat : 37|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_AstDrSw : 35|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_AstSeatBeltSw : 14|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DefoggerRly : 36|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DriveTypeOption : 43|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvDrSw : 8|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvKeyLockSw : 6|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvKeyUnlockSw : 7|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvSeatBeltSw : 10|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_Frt_Fog_Act : 40|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HBAControlMode : 52|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HLpHighSw : 53|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HazardSw : 33|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HeadLampHigh : 32|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HeadLampLow : 31|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HoodSw : 17|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_IGNSw : 0|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_Ign1 : 58|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_Ign2 : 59|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_InhibitRMT : 54|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_LightSwState : 38|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ParkBrakeSw : 60|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PassingSW : 51|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PassiveAccessLock : 45|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PassiveAccessUnlock : 48|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RKECmd : 3|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RainSnsOption : 56|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RainSnsState : 28|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RrSunRoofOpenState : 50|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SMKOption : 16|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_StarterRlyState : 44|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_TSigLHSw : 42|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_TSigRHSw : 41|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_TrunkTgSw : 12|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_TurnSigLh : 19|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_TurnSigRh : 62|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperAutoSw : 27|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperHighSw : 26|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperIntSw : 24|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperIntT : 21|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperLowSw : 25|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperMistSw : 47|1@1+ (1,0) [0|0] "" XXX - SG_ C_SunRoofOpenState : 57|1@1+ (1,0) [0|0] "" XXX - -BO_ 1348 Navi_HU: 8 XXX - SG_ SpeedLim_Nav_Clu : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 1363 CGW2: 8 XXX - SG_ CF_Gway_AutoLightOption : 54|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_AutoLightValue : 16|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_AvTail : 20|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_BCMRKEID : 41|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_BrakeFluidSw : 17|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_CLUSwEnter : 15|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_CLUSwGroup : 13|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_CLUSwGuiCtrl : 10|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_CLUSwMode : 14|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_CountryCfg : 26|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DDMDiagState : 1|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DeactivationWarn : 45|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvSeatBeltInd : 18|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ESCLFailWarn : 35|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ESCLNotLockedWarn : 36|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ESCLNotUnlockWarn : 37|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ExtTailAct : 22|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_GwayDiagState : 0|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HLLowLHFail : 33|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_HLLowRHFail : 34|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_IDoutWarn : 38|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_IPMDiagState : 5|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_ImmoLp : 40|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_IntTailAct : 25|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_KeyBATDischargeWarn : 46|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_KeyoutLp : 56|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_LDMFail : 6|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PSMDiagState : 3|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RLDrSw : 24|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RRDrSw : 23|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RearFogAct : 21|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SCMDiagState : 2|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SJBDeliveryMode : 55|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SJBDiagState : 4|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SMKDispWarn : 57|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SMKFobID : 48|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SMKRKECmd : 51|3@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_SSBWarn : 47|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_VehicleNotPWarn : 44|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WiperParkPosition : 32|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_WngBuz : 61|3@1+ (1,0) [0|0] "" XXX - -BO_ 1369 CGW4: 8 XXX - SG_ CF_Gway_AstSeatBeltInd : 38|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_AstWdwStat : 11|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvSeatBeltInd : 36|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_DrvWdwStat : 8|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_IMSBuzzer : 15|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_MemoryEnable : 12|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_MemoryP1Cmd : 0|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_MemoryP2Cmd : 1|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PBACKStop : 14|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PBACKStopCmd : 13|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PBackP1Cmd : 2|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PBackP2Cmd : 3|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_PBackStopCmd : 5|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RCSeatBeltInd : 40|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RLSeatBeltInd : 42|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RLWdwState : 9|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RRSeatBeltInd : 44|2@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RRWdwState : 10|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RrWiperHighSw : 46|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_RrWiperLowSw : 47|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_StaticBendLhAct : 6|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_StaticBendRhAct : 7|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Gway_StrgWhlHeatedState : 4|1@1+ (1,0) [0|0] "" XXX - -BO_ 1370 HU_AVM_PE_00: 8 XXX - SG_ HU_AVM_Status : 0|2@1+ (1,0) [0|0] "" XXX - -BO_ 1371 AVM_HU_PE_00: 8 XXX - SG_ AVM_Display_Message : 8|8@1+ (1,0) [0|0] "" XXX - SG_ AVM_FrontBtn_Type : 28|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_HU_FrontViewPointOpt : 36|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_HU_FrontView_Option : 44|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_HU_RearView_Option : 40|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_Option : 32|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_ParkingAssist_BtnSts : 5|3@1+ (1,0) [0|0] "" XXX - SG_ AVM_ParkingAssist_Step : 24|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_Popup_Msg : 16|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_Ready : 20|4@1+ (1,0) [0|0] "" XXX - SG_ AVM_Version : 48|16@1+ (1,0) [0|0] "" XXX - SG_ AVM_View : 0|5@1+ (1,0) [0|0] "" XXX - -BO_ 1407 HU_MON_PE_01: 8 XXX - SG_ HU_Type : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1419 LCA11: 8 XXX - SG_ CF_Lca_IndLeft : 29|1@1+ (1,0) [0|0] "" XXX - SG_ CF_Lca_IndRight : 37|1@1+ (1,0) [0|0] "" XXX - -BO_ 1427 TPMS11: 6 XXX - SG_ POS_FL_W_LAMP : 4|1@1+ (1,0) [0|0] "" XXX - SG_ POS_FR_W_LAMP : 5|1@1+ (1,0) [0|0] "" XXX - SG_ POS_RL_W_LAMP : 6|1@1+ (1,0) [0|0] "" XXX - SG_ POS_RR_W_LAMP : 7|1@1+ (1,0) [0|0] "" XXX - SG_ PRESSURE_FL : 16|8@1+ (1,0) [0|0] "" XXX - SG_ PRESSURE_FR : 24|8@1+ (1,0) [0|0] "" XXX - SG_ PRESSURE_RL : 32|8@1+ (1,0) [0|0] "" XXX - SG_ PRESSURE_RR : 40|8@1+ (1,0) [0|0] "" XXX - SG_ STATUS_TPMS : 8|3@1+ (1,0) [0|0] "" XXX - SG_ TPMS_W_LAMP : 0|2@1+ (1,0) [0|0] "" XXX - SG_ TREAD_W_LAMP : 2|2@1+ (1,0) [0|0] "" XXX - SG_ UNIT : 11|2@1+ (1,0) [0|0] "" XXX - -BO_ 1456 CLU12: 4 XXX - SG_ CF_Clu_Odometer : 0|24@1+ (0.1,0) [0|0] "" XXX - - -CM_ SG_ 1348 SpeedLim_Nav_Clu "Speed limit displayed on Nav, Cluster and HUD"; - -VAL_ 871 CF_Lvr_Gear 12 "T" 5 "D" 8 "S" 6 "N" 7 "R" 0 "P"; -VAL_ 909 CF_VSM_Warn 2 "FCW" 3 "AEB"; -VAL_ 916 ACCEnable 0 "SCC ready" 1 "SCC temp fault" 2 "SCC permanent fault" 3 "SCC permanent fault, communication issue"; -VAL_ 1057 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled"; -VAL_ 1157 HDA_Icon_State 0 "no_hda" 1 "white_hda" 2 "green_hda"; -VAL_ 1157 LFA_SysWarning 0 "no_message" 1 "switching_to_hda" 2 "switching_to_scc" 3 "lfa_error" 4 "check_hda" 5 "keep_hands_on_wheel_orange" 6 "keep_hands_on_wheel_red"; -VAL_ 1157 LFA_Icon_State 0 "no_wheel" 1 "white_wheel" 2 "green_wheel" 3 "green_wheel_blink"; -VAL_ 1157 HDA_SysWarning 0 "no_message" 1 "driving_convenience_systems_cancelled" 2 "highway_drive_assist_system_cancelled"; -VAL_ 1322 CF_Clu_Gear 1 "P" 2 "R" 4 "N" 8 "D"; diff --git a/opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc b/opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc deleted file mode 100644 index 13da6361b6..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc +++ /dev/null @@ -1,113 +0,0 @@ -BO_ 2 STEER_ANGLE_SENSOR: 5 XXX - SG_ STEER_ANGLE_RATE : 16|8@1+ (1,0) [0|255] "" XXX - SG_ SET_ME_X07 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ STEER_ANGLE : 0|16@1- (-0.1,0) [0|65535] "" XXX - SG_ COUNTER : 32|4@1+ (1,0) [0|15] "" XXX - -BO_ 361 LKAS: 8 XXX - SG_ MAX_TORQUE : 39|8@0+ (0.01,0) [0|255] "Nm" XXX - SG_ SET_0x80 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ LKA_ACTIVE : 52|1@0+ (1,0) [0|15] "" XXX - SG_ SET_0x80_2 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ DESIRED_ANGLE : 7|18@0+ (-0.01,1310) [-1311.43|1310] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 389 STEER_TORQUE_SENSOR: 8 XXX - SG_ LKAS_ACTIVE : 37|1@0+ (1,0) [0|3] "" XXX - SG_ STEER_TORQUE_LKAS : 47|8@0+ (1,0) [0|255] "" XXX - SG_ STEER_ANGLE : 23|18@0+ (-0.01,1310) [0|262143] "" XXX - SG_ STEER_TORQUE_DRIVER : 7|12@0+ (-0.01,20.47) [0|4095] "Nm" XXX - SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|127] "" XXX - -BO_ 645 WHEEL_SPEEDS_REAR: 8 XXX - SG_ WHEEL_SPEED_RR : 7|16@0+ (0.005,0) [0|65535] "KPH" XXX - SG_ WHEEL_SPEED_RL : 23|16@0+ (0.005,0) [0|65535] "KPH" XXX - -BO_ 689 PROPILOT_HUD: 8 XXX - SG_ LARGE_WARNING_FLASHING : 9|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_ERROR_FLASHING1 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_ERROR_FLASHING2 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_LANE_YELLOW_FLASH : 12|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_LANE_YELLOW_FLASH : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LEAD_CAR : 14|1@0+ (1,0) [0|1] "" XXX - SG_ LEAD_CAR_ERROR : 15|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_RADAR_ERROR : 16|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_RADAR_ERROR_FLASHING : 17|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_LANE_GREEN : 24|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_LANE_GREEN : 25|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_ERROR_FLASHING3 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_ERROR_FLASHING : 29|1@0+ (1,0) [0|1] "" XXX - SG_ SAFETY_SHIELD_ACTIVE : 44|1@0+ (1,0) [0|1] "" XXX - SG_ LARGE_STEERING_WHEEL_ICON : 61|2@0+ (1,0) [0|3] "" XXX - SG_ RIGHT_LANE_GREEN_FLASH : 62|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_LANE_GREEN_FLASH : 63|1@0+ (1,0) [0|1] "" XXX - SG_ FOLLOW_DISTANCE : 3|2@0+ (1,0) [0|3] "" XXX - SG_ AUDIBLE_TONE : 47|3@0+ (1,0) [0|8] "" XXX - SG_ SPEED_SET_ICON : 7|2@0+ (1,0) [0|3] "" XXX - SG_ SMALL_STEERING_WHEEL_ICON : 42|3@0+ (1,0) [0|7] "" XXX - SG_ SET_SPEED : 39|8@0+ (1,0) [0|255] "" XXX - SG_ unknown02 : 1|2@0+ (1,0) [0|3] "" XXX - SG_ unknown05 : 5|2@0+ (1,0) [0|3] "" XXX - SG_ unknown08 : 8|7@0+ (1,0) [0|63] "" XXX - SG_ unknown26 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ unknown28 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ unknown31 : 31|2@0+ (1,0) [0|3] "" XXX - SG_ unknown43 : 43|1@0+ (1,0) [0|1] "" XXX - SG_ unknown55 : 55|8@0+ (1,0) [0|63] "" XXX - SG_ unknown59 : 59|4@0+ (1,0) [0|15] "" XXX - -BO_ 783 CRUISE_STATE: 3 XXX - SG_ CRUISE_ENABLED : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 1228 PROPILOT_HUD_INFO_MSG: 8 XXX - SG_ NA_HIGH_ACCEL_TEMP : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_NA_HIGH_CABIN_TEMP : 8|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_MALFUNCTION : 11|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_MALFUNCTION : 12|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_RADAR_MALFUNCTION : 13|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_NA_CLEAN_REAR_CAMERA : 14|1@0+ (1,0) [0|1] "" XXX - SG_ NA_POOR_ROAD_CONDITIONS : 16|1@0+ (1,0) [0|1] "" XXX - SG_ CURRENTLY_UNAVAILABLE : 17|1@0+ (1,0) [0|1] "" XXX - SG_ SAFETY_SHIELD_OFF : 18|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_COLLISION_NA_FRONT_RADAR_OBSTRUCTION : 20|1@0+ (1,0) [0|1] "" XXX - SG_ PEDAL_MISSAPPLICATION_SYSTEM_ACTIVATED : 24|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_IMPACT_NA_RADAR_OBSTRUCTION : 25|1@0+ (1,0) [0|1] "" XXX - SG_ WARNING_DO_NOT_ENTER : 33|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_IMPACT_SYSTEM_OFF : 34|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_IMPACT_MALFUNCTION : 35|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_COLLISION_MALFUNCTION : 36|1@0+ (1,0) [0|1] "" XXX - SG_ SIDE_RADAR_MALFUNCTION2 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_MALFUNCTION2 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_RADAR_MALFUNCTION2 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ PROPILOT_NA_MSGS : 42|3@0+ (1,0) [0|7] "" XXX - SG_ BOTTOM_MSG : 45|3@0+ (1,0) [0|7] "" XXX - SG_ HANDS_ON_WHEEL_WARNING : 47|1@0+ (1,0) [0|1] "" XXX - SG_ WARNING_STEP_ON_BRAKE_NOW : 51|1@0+ (1,0) [0|1] "" XXX - SG_ PROPILOT_NA_FRONT_CAMERA_OBSTRUCTED : 52|1@0+ (1,0) [0|1] "" XXX - SG_ PROPILOT_NA_HIGH_CABIN_TEMP : 53|1@0+ (1,0) [0|1] "" XXX - SG_ WARNING_PROPILOT_MALFUNCTION : 54|1@0+ (1,0) [0|3] "" XXX - SG_ ACC_UNAVAILABLE_HIGH_CABIN_TEMP : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_NA_FRONT_CAMERA_IMPARED : 63|1@0+ (1,0) [0|1] "" XXX - SG_ unknown07 : 7|7@0+ (1,0) [0|127] "" XXX - SG_ unknown10 : 10|2@0+ (1,0) [0|3] "" XXX - SG_ unknown15 : 15|1@0+ (1,0) [0|1] "" XXX - SG_ unknown23 : 23|3@0+ (1,0) [0|7] "" XXX - SG_ unknown19 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ unknown31 : 31|6@0+ (1,0) [0|63] "" XXX - SG_ unknown32 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ unknown46 : 46|1@0+ (1,0) [0|1] "" XXX - SG_ unknown50 : 50|3@0+ (1,0) [0|7] "" XXX - SG_ unknown55 : 55|1@0+ (1,0) [0|1] "" XXX - SG_ unknown61 : 61|6@0+ (1,0) [0|63] "" XXX - -BO_ 1227 LKAS_SETTINGS: 8 XXX - SG_ LKAS_ENABLED : 51|1@0+ (1,0) [0|1] "" XXX - -VAL_ 1228 PROPILOT_NA_MSGS 0 "NO_MSG" 1 "NA_FRONT_CAMERA_IMPARED" 2 "STEERING_ASSIST_ON_STANDBY" 3 "NA_PARKING_ASSIST_ENABLED" 4 "STEER_ASSIST_CURRENTLY_NA" 5 "NA_BAD_WEATHER" 6 "NA_PARK_BRAKE_ON" 7 "NA_SEATBELT_NOT_FASTENED" ; -VAL_ 1228 BOTTOM_MSG 0 "OK_STEER_ASSIST_SETTINGS" 1 "NO_MSG" 2 "PRESS_SET_TO_SET_SPEED" 3 "PRESS_RES_SET_TO_CHANGE_SPEED" 4 "PRESS_RES_TO_RESTART" 5 "NO_MSG" 6 "CRUISE_NOT_AVAIL" 7 "NO_MSG" ; -VAL_ 689 FOLLOW_DISTANCE 0 "NO_FOLLOW_DISTANCE" 1 "FOLLOW_DISTANCE_1" 2 "FOLLOW_DISTANCE_2" 3 "FOLLOW_DISTANCE_3" ; -VAL_ 689 AUDIBLE_TONE 0 "NO_TONE" 1 "CONT" 2 "FAST_BEEP_CONT" 3 "TRIPLE_FAST_BEEP_CONT" 4 "SLOW_BEEP_CONT" 5 "QUAD_SLOW_BEEP_CONT" 6 "SINGLE_BEEP_ONCE" 7 "DOUBLE_BEEP_ONCE" ; -VAL_ 689 SMALL_STEERING_WHEEL_ICON 0 "NO_ICON" 1 "GRAY_ICON" 2 "GRAY_ICON_FLASHING" 3 "GREEN_ICON" 4 "GREEN_ICON_FLASHING" 5 "RED_ICON" 6 "RED_ICON_FLASHING" 7 "YELLOW_ICON" ; -VAL_ 689 LARGE_STEERING_WHEEL_ICON 0 "NO_STEERINGWHEEL" 1 "GRAY_STEERINGWHEEL" 2 "GREEN_STEERINGWHEEL" 3 "GREEN_STEERINGWHEEL_FLASHING" ; diff --git a/opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc b/opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc deleted file mode 100644 index 3376c3784c..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc +++ /dev/null @@ -1,62 +0,0 @@ -CM_ "IMPORT _nissan_common.dbc"; - -BO_ 42 SEATBELT: 8 XXX - SG_ SEATBELT_DRIVER_LATCHED : 27|1@1+ (1,0) [0|3] "" XXX - SG_ SEATBELT_DRIVER_UNLATCHED : 26|1@0+ (1,0) [0|1] "" XXX - SG_ unknown2 : 31|4@0+ (1,0) [0|15] "" XXX - SG_ unknown3 : 24|2@1+ (1,0) [0|3] "" XXX - SG_ unknown1 : 7|24@0+ (1,0) [0|16777215] "" XXX - SG_ unknown4 : 39|16@0+ (1,0) [0|65535] "" XXX - -BO_ 460 BRAKE_PEDAL: 8 XXX - SG_ BRAKE_PEDAL : 7|8@0+ (1,0) [0|256] "" XXX - -BO_ 569 CRUISE_THROTTLE: 8 XXX - SG_ GAS_PEDAL_INVERTED : 15|8@0+ (1,0) [0|255] "" XXX - SG_ GAS_PEDAL : 7|8@0+ (1,0) [0|255] "" XXX - SG_ CRUISE_AVAILABLE : 17|1@0+ (1,0) [0|1] "" XXX - SG_ unsure1 : 23|6@0+ (1,0) [0|63] "" XXX - SG_ unsure2 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ unsure3 : 31|2@0+ (1,0) [0|3] "" XXX - SG_ NO_BUTTON_PRESSED : 29|1@0+ (1,0) [0|1] "" XXX - SG_ RES_BUTTON : 28|1@0+ (1,0) [0|1] "" XXX - SG_ SET_BUTTON : 27|1@0+ (1,0) [0|1] "" XXX - SG_ FOLLOW_DISTANCE_BUTTON : 26|1@0+ (1,0) [0|1] "" XXX - SG_ CANCEL_BUTTON : 25|1@0+ (1,0) [0|1] "" XXX - SG_ PROPILOT_BUTTON : 24|1@0+ (1,0) [0|1] "" XXX - SG_ USER_BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 32|2@1+ (1,0) [0|3] "" XXX - SG_ unsure5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ unsure6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ unsure7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 640 CANCEL_MSG: 8 XXX - SG_ CANCEL_SEATBELT : 1|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 7|6@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_2 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 15|56@0+ (1,0) [0|72057594037927940] "" XXX - -BO_ 644 WHEEL_SPEEDS_FRONT: 8 XXX - SG_ WHEEL_SPEED_FR : 7|16@0+ (0.005,0) [0|65535] "KPH" XXX - SG_ WHEEL_SPEED_FL : 23|16@0+ (0.005,0) [0|65535] "KPH" XXX - -BO_ 852 ESP: 8 XXX - SG_ ESP_DISABLED : 38|1@0+ (1,0) [0|1] "" XXX - -BO_ 853 HUD_SETTINGS: 8 XXX - SG_ SPEED_MPH : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 856 LIGHTS: 8 XXX - SG_ LEFT_BLINKER : 17|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_BLINKER : 18|1@0+ (1,0) [0|1] "" XXX - -BO_ 1057 GEARBOX: 3 XXX - SG_ GEAR_SHIFTER : 5|3@0+ (1,0) [0|255] "" XXX - -BO_ 1549 DOORS_LIGHTS: 8 XXX - SG_ DOOR_OPEN_FL : 3|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 5|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 6|1@0+ (1,0) [0|1] "" XXX - -VAL_ 1057 GEAR_SHIFTER 7 "B" 4 "D" 3 "N" 2 "R" 1 "P" ; diff --git a/opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc b/opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc deleted file mode 100644 index 46e6f9c99a..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc +++ /dev/null @@ -1,69 +0,0 @@ -CM_ "IMPORT _nissan_common.dbc"; - -BO_ 348 GAS_PEDAL: 8 XXX - SG_ GAS_PEDAL_RAW : 26|11@0+ (1,0) [0|2047] "" XXX - SG_ GAS_PEDAL : 47|10@0+ (1,0) [0|1023] "" XXX - -BO_ 438 PRO_PILOT: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X03 : 33|2@0+ (1,0) [0|15] "" XXX - SG_ CRUISE_ACTIVATED : 38|1@0+ (1,0) [0|3] "" XXX - SG_ CRUISE_ON : 36|1@0+ (1,0) [0|255] "" XXX - SG_ STEER_STATUS : 51|1@0+ (1,0) [0|3] "" XXX - -BO_ 523 CRUISE_THROTTLE: 6 XXX - SG_ PROPILOT_BUTTON : 8|1@0+ (1,0) [0|1] "" XXX - SG_ CANCEL_BUTTON : 9|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_PEDAL_INVERTED : 37|10@0+ (1,0) [0|1023] "" XXX - SG_ SET_BUTTON : 11|1@0+ (1,0) [0|1] "" XXX - SG_ RES_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX - SG_ FOLLOW_DISTANCE_BUTTON : 10|1@0+ (1,0) [0|1] "" XXX - SG_ NO_BUTTON_PRESSED : 13|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_PEDAL : 31|10@0+ (1,0) [0|255] "" XXX - SG_ USER_BRAKE_PRESSED : 21|1@0+ (1,0) [0|1] "" XXX - SG_ USER_BRAKE_PRESSED_INVERTED : 22|1@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_PRESSED_INVERTED : 20|1@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 17|2@0+ (1,0) [0|3] "" XXX - SG_ unsure1 : 7|10@0+ (1,0) [0|1023] "" XXX - SG_ unsure2 : 43|4@0+ (1,0) [0|1] "" XXX - SG_ unsure3 : 19|2@0+ (1,0) [0|3] "" XXX - -BO_ 665 ESP: 8 XXX - SG_ ESP_DISABLED : 24|1@0+ (1,0) [0|1] "" XXX - -BO_ 666 WHEEL_SPEEDS_FRONT: 8 XXX - SG_ WHEEL_SPEED_FR : 7|16@0+ (0.005,0) [0|65535] "KPH" XXX - SG_ WHEEL_SPEED_FL : 23|16@0+ (0.005,0) [0|65535] "KPH" XXX - -BO_ 768 STEER_TORQUE_SENSOR2: 2 XXX - SG_ STEERING_TORQUE : 6|7@0+ (1,0) [0|127] "" XXX - SG_ STEERING_PRESSED : 15|1@0+ (-1,1) [0|7] "" XXX - -BO_ 1055 GEARBOX: 2 XXX - SG_ SPORTS_MODE : 13|1@0+ (1,0) [0|1] "" XXX - SG_ GEAR_SHIFTER : 5|3@0+ (1,0) [0|255] "" XXX - -BO_ 1107 LIGHTS: 8 XXX - SG_ RIGHT_BLINKER : 12|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_BLINKER : 11|1@0+ (1,0) [0|1] "" XXX - SG_ HEADLIGHTS : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 1108 DOORS_LIGHTS: 8 XXX - SG_ DOOR_CLOSED_RR : 40|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 41|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_RL : 42|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 43|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_FL : 44|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FL : 45|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_FR : 46|1@0+ (1,0) [0|3] "" XXX - SG_ DOOR_OPEN_FR : 47|1@0+ (1,0) [0|3] "" XXX - SG_ BOOT_OPEN : 55|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_LIGHT : 54|1@0+ (1,0) [0|1] "" XXX - SG_ USER_BRAKE_PRESSED : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 1273 HUD: 7 XXX - SG_ SEATBELT_DRIVER_LATCHED : 25|1@0+ (1,0) [0|1] "" XXX - SG_ SPEED_MPH : 5|1@0+ (1,0) [0|1] "" XXX - -VAL_ 1055 GEAR_SHIFTER 6 "L" 4 "D" 3 "N" 2 "R" 1 "P" ; diff --git a/opendbc_repo/opendbc/dbc/generator/rivian/.gitignore b/opendbc_repo/opendbc/dbc/generator/rivian/.gitignore deleted file mode 100644 index c6687b3e56..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/rivian/.gitignore +++ /dev/null @@ -1 +0,0 @@ -rivian_mando_front_radar.dbc \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py b/opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py deleted file mode 100755 index cdddfd8f28..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env python3 -import os - -if __name__ == "__main__": - dbc_name = os.path.basename(__file__).replace(".py", ".dbc") - rivian_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(rivian_path, dbc_name), "w", encoding='utf-8') as f: - f.write(""" -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - """) - - # note: 0x501/0x502 seem to be special in 0x5XX range - for a in range(0x500, 0x500 + 32): - f.write(f""" -BO_ {a} RADAR_TRACK_{a:x}: 8 RADAR - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX - SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX - SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX - SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX - SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX - SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX - """) diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc deleted file mode 100644 index 69c8361938..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc +++ /dev/null @@ -1,302 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX X - - -BO_ 2 Steering: 8 XXX - SG_ Steering_Angle : 7|16@0- (0.1,0) [0|65535] "" XXX - SG_ COUNTER : 25|3@1+ (1,0) [0|7] "" XXX - SG_ CHECKSUM : 32|8@1+ (1,0) [0|255] "" XXX - -BO_ 64 Throttle: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Engine_RPM : 16|12@1+ (1,0) [0|4095] "" XXX - SG_ Signal2 : 28|4@1+ (1,0) [0|15] "" XXX - SG_ Throttle_Pedal : 32|8@1+ (1,0) [0|255] "" XXX - SG_ Throttle_Cruise : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Throttle_Combo : 48|8@1+ (1,0) [0|255] "" XXX - SG_ Signal3 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ Off_Accel : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 316 Brake_Status: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|46@1+ (1,0) [0|1] "" XXX - SG_ ES_Brake : 58|1@1+ (1,0) [0|1] "" XXX - SG_ Signal2 : 59|3@1+ (1,0) [0|1] "" XXX - SG_ Brake : 62|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 326 Cruise_Buttons: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|30@1+ (1,0) [0|1073741823] "" XXX - SG_ Main : 42|1@1+ (1,0) [0|1] "" XXX - SG_ Set : 43|1@1+ (1,0) [0|1] "" XXX - SG_ Resume : 44|1@1+ (1,0) [0|1] "" XXX - SG_ Signal2 : 45|19@1+ (1,0) [0|524287] "" XXX - -BO_ 315 G_Sensor: 8 XXX - SG_ Lateral : 48|8@1- (-0.1,0) [0|255] "m/s2" XXX - SG_ Longitudinal : 56|8@1- (-0.1,0) [0|255] "m/s2" XXX - -BO_ 314 Wheel_Speeds: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ FR : 12|13@1+ (0.057,0) [0|255] "kph" XXX - SG_ RR : 25|13@1+ (0.057,0) [0|255] "kph" XXX - SG_ FL : 51|13@1+ (0.057,0) [0|255] "kph" XXX - SG_ RL : 38|13@1+ (0.057,0) [0|255] "kph" XXX - -BO_ 280 Steering_Torque_2: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Steer_Torque_Output : 13|11@1- (-10,0) [0|255] "" XXX - SG_ Signal1 : 24|8@1+ (1,0) [0|511] "" XXX - SG_ Steer_Torque_Sensor : 45|11@1- (-1,0) [0|255] "" XXX - SG_ Steering_Active : 61|1@0+ (1,0) [0|1] "" XXX - SG_ Steering_Disabled : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 281 Steering_Torque: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Steer_Error_1 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ Steer_Torque_Sensor : 16|11@1- (-1,0) [-1000|1000] "" XXX - SG_ Steer_Error_2 : 28|1@1+ (1,0) [0|1] "" XXX - SG_ Steer_Warning : 29|1@1+ (1,0) [0|1] "" XXX - SG_ Steering_Angle : 32|16@1- (-0.0217,0) [-600|600] "" X - SG_ Steer_Torque_Output : 48|11@1- (-10,0) [-1000|1000] "" XXX - -BO_ 282 Steering_2: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|1] "" XXX - SG_ Steering_Angle : 24|17@1- (-0.01,0) [0|1] "" XXX - -BO_ 312 Brake_Pressure_L_R: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Brake_1 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ Brake_2 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 313 Brake_Pedal: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Speed : 16|12@1+ (0.05625,0) [0|255] "kph" XXX - SG_ Signal2 : 28|6@1+ (1,0) [0|63] "" XXX - SG_ Brake_Lights : 34|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 35|1@1+ (1,0) [0|1] "" XXX - SG_ Brake_Pedal : 36|12@1+ (1,0) [0|4095] "" XXX - SG_ Signal4 : 48|16@1+ (1,0) [0|65535] "" XXX - -BO_ 372 Engine_Stop_Start: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ Counter : 8|4@1+ (1,0) [0|15] "" XXX - SG_ STOP_START_STATE : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 290 ES_LKAS: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ SET_1 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_Output : 16|13@1- (-1,0) [-8191|8191] "" XXX - SG_ LKAS_Request : 29|1@0+ (1,0) [0|1] "" XXX - -BO_ 292 ES_LKAS_ANGLE: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Request : 12|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Output : 40|17@1- (-0.01,0) [0|1] "deg" XXX - SG_ SET_3 : 60|2@1+ (1,0) [0|1] "" XXX - -BO_ 544 ES_Brake: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Brake_Pressure : 16|16@1+ (1,0) [0|65535] "" XXX - SG_ AEB_Status : 32|4@1+ (1,0) [0|15] "" XXX - SG_ Cruise_Brake_Lights : 36|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Brake_Fault : 37|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Brake_Active : 38|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 39|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 40|24@1+ (1,0) [0|16777215] "" XXX - -BO_ 577 Cruise_Status: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Cruise_Set_Speed : 51|12@0+ (1,0) [0|120] "" XXX - SG_ Cruise_On : 54|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 55|1@1+ (1,0) [0|1] "" XXX - -BO_ 552 BSD_RCTA: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ R_ADJACENT : 48|1@1+ (1,0) [0|1] "" XXX - SG_ L_ADJACENT : 49|1@1+ (1,0) [0|1] "" XXX - SG_ R_APPROACHING : 58|1@1+ (1,0) [0|1] "" XXX - SG_ L_APPROACHING : 59|1@1+ (1,0) [0|1] "" XXX - -BO_ 912 Dashlights: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ UNITS : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ICY_ROAD : 32|2@1+ (1,0) [0|3] "" XXX - SG_ SEATBELT_FL : 48|1@1+ (1,0) [0|1] "" XXX - SG_ LEFT_BLINKER : 50|1@1+ (1,0) [0|1] "" XXX - SG_ RIGHT_BLINKER : 51|1@1+ (1,0) [0|1] "" XXX - SG_ STOP_START : 54|1@0+ (1,0) [0|1] "" XXX - -BO_ 940 BodyInfo: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ DOOR_OPEN_FL : 32|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 33|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 34|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 35|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_TRUNK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE : 54|1@1+ (1,0) [0|1] "" XXX - SG_ DASH_BTN_LIGHTS : 56|1@0+ (1,0) [0|1] "" XXX - SG_ LOWBEAM : 57|1@1+ (1,0) [0|1] "" XXX - SG_ HIGHBEAM : 58|1@1+ (1,0) [0|1] "" XXX - SG_ FOG_LIGHTS : 60|1@1+ (1,0) [0|1] "" XXX - SG_ WIPERS : 62|1@0+ (1,0) [0|1] "" XXX - -BO_ 801 ES_DashStatus: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ PCB_Off : 12|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Off : 13|1@1+ (1,0) [0|1] "" XXX - SG_ Signal1 : 14|2@1+ (1,0) [0|3] "" XXX - SG_ Cruise_State_Msg : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LKAS_State_Msg : 20|3@1+ (1,0) [0|7] "" XXX - SG_ Signal2 : 23|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Soft_Disable : 24|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Status_Msg : 25|2@1+ (1,0) [0|3] "" XXX - SG_ Signal3 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Distance : 28|3@1+ (1,0) [0|7] "" XXX - SG_ Signal4 : 31|1@1+ (1,0) [0|1] "" XXX - SG_ Conventional_Cruise : 32|1@1+ (1,0) [0|1] "" XXX - SG_ Signal5 : 33|2@1+ (1,0) [0|3] "" XXX - SG_ Cruise_Disengaged : 35|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 36|1@1+ (1,0) [0|1] "" XXX - SG_ Signal6 : 37|3@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Set_Speed : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Cruise_Fault : 48|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_On : 49|1@1+ (1,0) [0|1] "" XXX - SG_ Display_Own_Car : 50|1@1+ (1,0) [0|1] "" XXX - SG_ Brake_Lights : 51|1@1+ (1,0) [0|1] "" XXX - SG_ Car_Follow : 52|1@1+ (1,0) [0|1] "" XXX - SG_ Signal7 : 53|3@1+ (1,0) [0|1] "" XXX - SG_ Far_Distance : 56|4@1+ (5,0) [0|75] "m" XXX - SG_ Cruise_State : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 802 ES_LKAS_State: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ LKAS_Alert_Msg : 12|3@1+ (1,0) [0|7] "" XXX - SG_ Signal1 : 15|2@1+ (1,0) [0|3] "" XXX - SG_ LKAS_ACTIVE : 17|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Dash_State : 18|2@1+ (1,0) [0|2] "" XXX - SG_ Signal2 : 20|3@1+ (1,0) [0|7] "" XXX - SG_ Backward_Speed_Limit_Menu : 23|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Left_Line_Enable : 24|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Left_Line_Light_Blink : 25|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Right_Line_Enable : 26|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Right_Line_Light_Blink : 27|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Left_Line_Visible : 28|2@1+ (1,0) [0|3] "" XXX - SG_ LKAS_Right_Line_Visible : 30|2@1+ (1,0) [0|3] "" XXX - SG_ LKAS_Alert : 32|5@1+ (1,0) [0|31] "" XXX - SG_ Signal3 : 37|27@1+ (1,0) [0|1] "" XXX - -BO_ 803 ES_Infotainment: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ LKAS_Blue_Lines : 15|4@0+ (1,0) [0|15] "" XXX - SG_ Signal1 : 19|4@0+ (1,0) [0|15] "" XXX - SG_ LKAS_State_Infotainment : 22|3@0+ (1,0) [0|7] "" XXX - SG_ Signal2 : 24|1@0+ (1,0) [0|1] "" XXX - -BO_ 722 AC_State: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ AC_Mode : 37|3@1+ (1,0) [0|1] "" XXX - SG_ AC_ON : 24|2@1+ (1,0) [0|1] "" XXX - -BO_ 1677 Dash_State: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Units : 29|3@1+ (1,0) [0|7] "" XXX - -BO_ 554 ES_HighBeamAssist: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ HBA_Available : 13|1@0+ (1,0) [0|1] "" XXX - -BO_ 805 ES_STATIC_1: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ SET_3 : 23|2@0+ (1,0) [0|3] "" XXX - -BO_ 289 ES_STATIC_2: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ SET_3 : 15|2@1+ (1,0) [0|3] "" XXX - SG_ Cruise_Fault : 18|1@0+ (1,0) [0|1] "" XXX - -CM_ SG_ 64 Throttle_Combo "Throttle Cruise + Pedal"; -CM_ SG_ 313 Brake_Lights "Driver or Cruise Brake on"; -CM_ SG_ 544 Cruise_Brake_Lights "1 = switch on brake lights"; -CM_ SG_ 544 Brake_Pressure "Winds down after cruise disabled. Also can be non-zero when likely preparing for AEB"; -CM_ SG_ 544 Signal3 "Usually goes to 2 if AEB_Status is 4"; -CM_ SG_ 544 AEB_Status "Occasionally is 4 instead of 8 while Brake_Pressure is non-zero, unsure why"; -CM_ SG_ 801 PCB_Off "Pre-Collision Braking off"; -CM_ SG_ 801 Brake_Lights "Driver or Cruise brake on"; -CM_ SG_ 801 Cruise_State "0 = Normal, 1 = Hold+User Brake, 2 = Ready, 3 = Hold"; -CM_ SG_ 801 Far_Distance "1=0-5m, 2=5-10m, 3=10-15m, 4=15-20m, 5=20-25m, 6=25-30m, 7=30-35m, 8=35-40m, 9=40-45m, 10=45-50m, 11=50-55m, 12=55-60m, 13=60-65m, 14=65-70m, 15=75m+"; -CM_ SG_ 801 LKAS_State_Msg "1 = LKAS_Off_Sharp_Curve, 2 = Keep_Hands_On_Steering_wheel_disabled, 3 = LKAS_Off, 4 = LKAS_Off_Too_Slow, 5 = LKAS_Off_Too_Fast"; -CM_ SG_ 801 Cruise_State_Msg "1 = Cruise_Off_Steep_Slope, 2 = Cruise_lvl1_eco, 3 = Cruise_lvl2_comfort, 4 = Cruise_off_empty_reason, 5 = Cruise_off, 6 = Cruise_Unable_to_set, 7 = Cruise_Unable_to_set_brakes_applied, 8 = Eyesight_not_ready, 9 = Cruise_lvl3_standard, 10 = Cruise_lvl4_dynamic, 11 = Cruise_Unable_to_set_steep_slope"; -CM_ SG_ 801 Cruise_Soft_Disable "Eyesight soft disable (eg direct sunlight)"; -CM_ SG_ 801 Cruise_Status_Msg "1 = Disabled_Bad_Visibility, 2 = Disabled_Check_Manual"; -CM_ SG_ 802 LKAS_ACTIVE "Turns on the full LKAS dash display"; -CM_ SG_ 802 LKAS_Alert_Msg "1 = Keep_Hands_On_Wheel, 6 = Pre_Collision_Braking, 7 = Keep_Hands_On_Wheel_Off"; -CM_ SG_ 802 LKAS_Alert "1 = FCW_Cont_Beep, 2 = FCW_Repeated_Beep, 3 = Throttle_Management_Activated_Warning, 4 = Throttle_Management_Activated_Alert, 5 = Pre_Collision_Activated_Alert, 8 = Traffic_Light_Ahead, 9 = Apply_Brake_to_Hold Position, 11 = LDW_Right, 12 = LDW_Left, 13 = Stay_Alert, 14 = Lead_Vehicle_Start_Alert, 18 = Keep_Hands_On_Steering_Alert, 24 = Audio_Beep, 25 = Audio_Lead_Car_Change, 26 = Audio_ACC_Disengaged, 27 = Audio_LKAS_disabled, 28 = Audio_Ding_Ding, 30 = Audio_Repeated_Beep"; -CM_ SG_ 802 LKAS_Left_Line_Visible "0 = Off, 1 = White, 2 = Green, 3 = Orange"; -CM_ SG_ 802 LKAS_Dash_State "0 = Off, 1 = Ready, 2 = Active"; -CM_ SG_ 802 LKAS_Right_Line_Visible "0 = Off, 1 = White, 2 = Green, 3 = Orange"; -CM_ SG_ 912 UNITS "0 = Metric, 1 = Imperial"; -CM_ SG_ 912 ICY_ROAD "1 = DASHLIGHT ON, 2 = WARNING, 3 = OFF"; -VAL_ 544 AEB_Status 12 "AEB related" 8 "AEB actuation" 4 "AEB related" 0 "No AEB actuation"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc deleted file mode 100644 index 68481791fb..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc +++ /dev/null @@ -1,245 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX X - - -BO_ 2 Steering: 8 XXX - SG_ Steering_Angle : 7|16@0- (0.1,0) [-500|500] "degree" XXX - SG_ COUNTER : 27|3@0+ (1,0) [0|7] "" XXX - SG_ Checksum : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 208 G_Sensor: 8 XXX - SG_ Steering_Angle : 0|16@1- (-0.1,0) [-500|500] "" XXX - SG_ Lateral : 16|16@1- (-0.0035,1) [-255|255] "" XXX - SG_ Longitudinal : 48|16@1- (-0.00035,0) [-255|255] "" XXX - -BO_ 209 Brake_Pedal: 4 XXX - SG_ Speed : 0|16@1+ (0.05625,0) [0|255] "KPH" XXX - SG_ Brake_Pedal : 16|8@1+ (1,0) [0|255] "" XXX - -BO_ 210 Brake_2: 8 XXX - SG_ Brake_Light : 35|1@1+ (1,0) [0|1] "" XXX - SG_ Brake_Related : 36|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Brake : 48|8@1+ (1,0) [0|255] "" XXX - SG_ Left_Brake : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 211 Brake_Type: 8 XXX - SG_ Brake_Light : 21|1@1+ (1,0) [0|1] "" XXX - SG_ Speed_Counter : 32|8@1+ (1,0) [0|255] "" XXX - SG_ Brake_Cruise_On : 42|1@1+ (1,0) [0|1] "" XXX - SG_ Brake_Pedal_On : 46|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 48|8@1+ (1,0) [0|255] "" XXX - -BO_ 212 Wheel_Speeds: 8 XXX - SG_ FL : 0|16@1+ (0.0592,0) [0|255] "KPH" XXX - SG_ FR : 16|16@1+ (0.0592,0) [0|255] "KPH" XXX - SG_ RL : 32|16@1+ (0.0592,0) [0|255] "KPH" XXX - SG_ RR : 48|16@1+ (0.0592,0) [0|255] "KPH" XXX - -BO_ 320 Throttle: 8 XXX - SG_ Throttle_Pedal : 0|8@1+ (0.392157,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|2@1+ (1,0) [0|7] "" XXX - SG_ Not_Full_Throttle : 14|1@1+ (1,0) [0|1] "" XXX - SG_ Signal2 : 15|1@1+ (1,0) [0|1] "" XXX - SG_ Engine_RPM : 16|14@1+ (1,0) [0|32767] "" XXX - SG_ Off_Throttle : 30|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 31|1@1+ (1,0) [0|1] "" XXX - SG_ Throttle_Cruise : 32|8@1+ (1,0) [0|255] "" XXX - SG_ Throttle_Combo : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Throttle_Body : 48|8@1+ (1,0) [0|255] "" XXX - SG_ Off_Throttle_2 : 56|1@1+ (1,0) [0|1] "" XXX - SG_ Signal4 : 57|7@1+ (1,0) [0|127] "" XXX - -BO_ 321 Engine: 8 XXX - SG_ Engine_Torque : 0|15@1+ (1,0) [0|255] "" XXX - SG_ Engine_Stop : 15|1@1+ (1,0) [0|1] "" XXX - SG_ Wheel_Torque : 16|12@1+ (1,0) [0|4095] "" XXX - SG_ Engine_RPM : 32|12@1+ (1,0) [0|8191] "" XXX - -BO_ 324 CruiseControl: 8 XXX - SG_ OnOffButton : 2|1@1+ (1,0) [0|1] "" XXX - SG_ SET_BUTTON : 3|1@1+ (1,0) [0|1] "" XXX - SG_ RES_BUTTON : 4|1@1+ (1,0) [0|1] "" XXX - SG_ Button : 13|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_On : 48|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 49|1@1+ (1,0) [0|1] "" XXX - SG_ Brake_Pedal_On : 51|1@1+ (1,0) [0|1] "" XXX - -BO_ 328 Transmission: 8 XXX - SG_ Manual_Gear : 4|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Transmission_Engine : 16|15@1+ (1,0) [0|65535] "" XXX - SG_ Gear : 48|4@1+ (1,0) [0|15] "" XXX - SG_ Gear_2 : 52|4@1+ (1,0) [0|15] "" XXX - SG_ Paddle_Shift : 60|2@1+ (1,0) [0|3] "" XXX - -BO_ 329 CVT_Ratio: 8 XXX - -BO_ 336 Brake_Pressure: 8 XXX - SG_ Brake_Pressure_Right : 0|8@1+ (1,0) [0|255] "" XXX - SG_ Brake_Pressure_Left : 8|8@1+ (1,0) [0|255] "" XXX - -BO_ 338 Stalk: 8 XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Brake_Light : 52|1@1+ (1,0) [0|1] "" XXX - SG_ Runlights : 58|1@1+ (1,0) [0|1] "" XXX - SG_ Headlights : 59|1@1+ (1,0) [0|1] "" XXX - SG_ Highbeam : 60|1@1+ (1,0) [0|1] "" XXX - SG_ Wiper : 62|1@1+ (1,0) [0|1] "" XXX - -BO_ 352 ES_Brake: 8 XXX - SG_ Brake_Pressure : 0|16@1+ (1,0) [0|255] "" XXX - SG_ Cruise_Brake_Lights : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Fault : 21|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Brake_Active : 22|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 23|1@1+ (1,0) [0|1] "" XXX - SG_ SET_1 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 48|3@1+ (1,0) [0|7] "" XXX - SG_ Checksum : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 353 ES_Distance: 8 XXX - SG_ Cruise_Throttle : 0|12@1+ (1,0) [0|4095] "" XXX - SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Car_Follow : 16|1@1+ (1,0) [0|1] "" XXX - SG_ Signal2 : 17|3@1+ (1,0) [0|7] "" XXX - SG_ Cruise_Brake_Active : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Distance_Swap : 21|1@1+ (1,0) [0|1] "" XXX - SG_ Standstill : 22|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 23|1@1+ (1,0) [0|1] "" XXX - SG_ Close_Distance : 24|8@1+ (0.019607,0) [0|5] "m" XXX - SG_ Signal4 : 32|9@1+ (1,0) [0|255] "" XXX - SG_ Standstill_2 : 41|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Fault : 42|1@1+ (1,0) [0|1] "" XXX - SG_ Signal5 : 43|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 44|3@1+ (1,0) [0|7] "" XXX - SG_ Signal6 : 47|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Button : 48|3@1+ (1,0) [0|7] "" XXX - SG_ Signal7 : 51|5@1+ (1,0) [0|31] "" XXX - SG_ Checksum : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 354 ES_Status: 8 XXX - SG_ Brake : 8|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 9|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_RPM : 16|16@1+ (1,0) [0|65535] "" XXX - SG_ Checksum : 32|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 48|3@1+ (1,0) [0|7] "" XXX - -BO_ 356 ES_LKAS: 8 XXX - SG_ COUNTER : 0|3@1+ (1,0) [0|7] "" XXX - SG_ LKAS_Command : 8|13@1- (-1,0) [-4096|4096] "" XXX - SG_ LKAS_Active : 24|1@1+ (1,0) [0|1] "" XXX - SG_ Checksum : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 359 ES_LDW: 8 XXX - SG_ All_depart_2015 : 0|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Line_2017 : 24|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Line_2017 : 25|1@1+ (1,0) [0|1] "" XXX - SG_ Sig1All_Depart : 28|1@1+ (1,0) [0|1] "" XXX - SG_ Sig2All_Depart : 31|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Inactive_2017 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_Active : 37|1@1+ (1,0) [0|1] "" XXX - SG_ Sig1Right_Depart : 48|1@1+ (1,0) [0|1] "" XXX - SG_ Sig1Right_Depart_Front : 49|1@1+ (1,0) [0|1] "" XXX - SG_ Sig2Right_Depart : 50|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Depart_Front : 51|1@1+ (1,0) [0|1] "" XXX - SG_ Sig3All_Depart : 52|1@1+ (1,0) [0|1] "" XXX - -BO_ 604 BSD_RCTA: 8 XXX - SG_ COUNTER : 0|3@1+ (1,0) [0|7] "" XXX - SG_ State : 5|1@1+ (1,0) [0|1] "" XXX - SG_ R_ADJACENT : 32|1@1+ (1,0) [0|1] "" XXX - SG_ L_ADJACENT : 33|1@1+ (1,0) [0|1] "" XXX - SG_ R_APPROACHING : 42|1@1+ (1,0) [0|1] "" XXX - SG_ L_APPROACHING : 43|1@1+ (1,0) [0|1] "" XXX - SG_ R_RCTA : 46|1@1+ (1,0) [0|1] "" XXX - SG_ L_RCTA : 47|1@1+ (1,0) [0|1] "" XXX - -BO_ 642 Dashlights: 8 XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX - SG_ SEATBELT_FL : 40|1@1+ (1,0) [0|1] "" XXX - SG_ LEFT_BLINKER : 44|1@1+ (1,0) [0|1] "" XXX - SG_ RIGHT_BLINKER : 45|1@1+ (1,0) [0|1] "" XXX - -BO_ 880 Steering_Torque_2: 8 XXX - SG_ Steering_Voltage_Flat : 0|8@1+ (1,0) [0|255] "" XXX - SG_ Steer_Torque_Sensor : 29|11@1- (-1,0) [-1000|1000] "" XXX - SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" XXX - -BO_ 884 BodyInfo: 8 XXX - SG_ DOOR_OPEN_FR : 24|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FL : 25|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 26|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 27|1@1+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_Hatch : 28|1@1+ (1,0) [0|1] "" XXX - -BO_ 864 Engine_Temp: 8 XXX - SG_ Oil_Temp : 16|8@1+ (1,-40) [0|255] "" XXX - SG_ Coolant_Temp : 24|8@1+ (1,-40) [0|255] "" XXX - SG_ Cruise_Activated : 45|1@1+ (1,0) [0|1] "" XXX - SG_ Saved_Speed : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 866 Fuel: 8 XXX - -BO_ 977 Dash_State2: 8 XXX - SG_ UNITS : 15|1@1+ (1,0) [0|1] "" XXX - -BO_ 1745 Dash_State: 8 XXX - SG_ Units : 15|1@1+ (1,0) [0|1] "" XXX - -CM_ SG_ 320 Off_Throttle_2 "Less sensitive"; -CM_ SG_ 320 Throttle_Body "Throttle related"; -CM_ SG_ 328 Gear "15 = P, 14 = R, 0 = N, 1-6=gear"; -CM_ SG_ 328 Gear_2 "15 = P, 14 = R, 0 = N, 1-6=gear"; -CM_ SG_ 353 Cruise_Button "1 = main, 2 = set shallow, 3 = set deep, 4 = resume shallow, 5 resume deep"; -CM_ SG_ 354 RPM "20hz version of Transmission_Engine under Transmission"; -CM_ SG_ 359 Sig1Right_Depart "right depart, hill steep and seatbelt disengage"; -CM_ SG_ 359 LKAS_Inactive_2017 "1 when not steering, 0 when lkas steering"; -CM_ SG_ 359 Sig1Right_Depart_Front "object in front, right depart, hill steep and seatbelt disengage alert "; -CM_ SG_ 359 Left_Depart_Front "warning after acceleration into car in front and left depart"; -CM_ SG_ 359 Sig1All_Depart "Left and right depart"; -CM_ SG_ 359 Sig2All_Depart "Left and right depart"; -CM_ SG_ 359 All_depart_2015 "always 1 on 2017"; -CM_ SG_ 604 R_APPROACHING "Faster car approaching in far right lane"; -CM_ SG_ 604 L_APPROACHING "Faster car approaching in far left lane"; -CM_ SG_ 604 R_RCTA "Rear cross traffic alert, only when in R gear"; -CM_ SG_ 604 L_RCTA "Rear cross traffic alert, only when in R gear"; -CM_ SG_ 642 COUNTER "Affected by signals"; -CM_ SG_ 642 SEATBELT_FL "Driver seatbelt"; -CM_ SG_ 880 Steering_Voltage_Flat "receives later than 371"; -CM_ SG_ 977 UNITS "0 = Metric, 1 = Imperial"; - -VAL_ 328 Gear 0 "N" 1 "D" 2 "D" 3 "D" 4 "D" 5 "D" 6 "D" 14 "R" 15 "P"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc deleted file mode 100644 index 6d5d46bc9a..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc +++ /dev/null @@ -1,18 +0,0 @@ -CM_ "IMPORT _subaru_preglobal_2015.dbc"; - -BO_ 355 ES_DashStatus: 8 XXX - SG_ Not_Ready_Startup : 4|2@1+ (1,0) [0|3] "" XXX - SG_ Cruise_On : 16|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 17|1@0+ (1,0) [0|1] "" XXX - SG_ Cruise_Set_Speed : 24|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 40|3@1+ (1,0) [0|7] "" XXX - SG_ Brake : 43|1@1+ (1,0) [0|1] "" XXX - SG_ Car_Follow : 54|1@1+ (1,0) [0|1] "" XXX - SG_ Far_Distance : 56|4@1+ (5,0) [0|75] "m" XXX - -BO_ 881 Steering_Torque: 8 XXX - SG_ Steering_Motor_Flat : 0|10@1+ (32,0) [0|1000] "" XXX - SG_ Steer_Torque_Output : 16|11@1- (-32,0) [-1000|1000] "" XXX - SG_ Steer_Error_1 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Steer_Torque_Sensor : 29|11@1- (-1,0) [-1000|1000] "" XXX - SG_ Steering_Angle : 40|16@1- (-0.033,0) [-600|600] "" XXX diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc deleted file mode 100644 index 83a36ff8f7..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc +++ /dev/null @@ -1,65 +0,0 @@ -CM_ "IMPORT _subaru_global.dbc"; - -BO_ 72 Transmission: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Gear : 24|8@1+ (1,0) [0|255] "" XXX - SG_ RPM : 40|15@1+ (1,0) [0|65535] "" XXX - -BO_ 73 CVT: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ CVT_Gear : 24|8@1+ (1,0) [0|255] "" XXX - -BO_ 545 ES_Distance: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|3@1+ (1,0) [0|7] "" XXX - SG_ Cruise_Fault : 15|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Throttle : 16|13@1+ (1,0) [0|4095] "" XXX - SG_ Signal2 : 29|3@1+ (1,0) [0|15] "" XXX - SG_ Car_Follow : 32|1@1+ (1,0) [0|1] "" XXX - SG_ Low_Speed_Follow : 33|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Soft_Disable : 34|1@1+ (1,0) [0|1] "" XXX - SG_ Signal7 : 35|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Brake_Active : 36|1@1+ (1,0) [0|1] "" XXX - SG_ Distance_Swap : 37|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_EPB : 38|1@1+ (1,0) [0|1] "" XXX - SG_ Signal4 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ Close_Distance : 40|8@1+ (0.019607,0) [0|5] "m" XXX - SG_ Signal5 : 48|8@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Cancel : 56|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Set : 57|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Resume : 58|1@1+ (1,0) [0|1] "" XXX - SG_ Signal6 : 59|5@1+ (1,0) [0|1] "" XXX - -BO_ 546 ES_Status: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|3@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Fault : 15|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_RPM : 16|13@1+ (1,0) [0|4095] "" XXX - SG_ Cruise_Activated : 29|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_Lights : 30|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Hold : 31|1@1+ (1,0) [0|1] "" XXX - SG_ Signal3 : 32|32@1+ (1,0) [0|1] "" XXX - -BO_ 576 CruiseControl: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Signal1 : 12|28@1+ (1,0) [0|268435455] "" XXX - SG_ Cruise_On : 40|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 41|1@1+ (1,0) [0|1] "" XXX - SG_ Signal2 : 42|22@1+ (1,0) [0|4194303] "" XXX - -CM_ SG_ 545 Cruise_Throttle "RPM-like output signal"; -CM_ SG_ 545 Cruise_EPB "1 = Electric Parking Brake set"; -CM_ SG_ 545 Distance_Swap "Switch from Close to Far distance"; -CM_ SG_ 545 Cruise_Soft_Disable "Eyesight Temporary disable, sets CruiseControl Activated = 0"; -CM_ SG_ 546 Cruise_RPM "ES RPM output for ECM and TCM"; -CM_ SG_ 546 Signal3 "0 when cruise_activated = 1"; -CM_ SG_ 803 Signal1 "Seems to be static, set only on some cars"; -CM_ SG_ 803 Signal2 "Seems to be static, set only on some cars"; -VAL_ 803 LKAS_Blue_Lines 0 "no modifier" 2 "changes lines to blue"; -VAL_ 803 LKAS_State_Infotainment 0 "none" 2 "Obstacle Detected" 3 "Keep Hands On Wheel" 4 "Keep Hands On Wheel Off"; -VAL_ 72 Gear 2 "N" 3 "R" 4 "P" 121 "D" 137 "1" 145 "2" 153 "3" 161 "4" 169 "5" 177 "6"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc deleted file mode 100644 index a4dbe9c37d..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc +++ /dev/null @@ -1,18 +0,0 @@ -CM_ "IMPORT _subaru_global.dbc"; - -BO_ 39 Cruise_Status_2: 8 XXX - SG_ Cruise_Activated : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 295 Transmission: 8 XXX - SG_ Gear : 44|4@1+ (1,0) [0|15] "" XXX - -BO_ 360 Throttle_Hybrid: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Throttle_Pedal : 32|8@1+ (1,0) [0|255] "" XXX - -BO_ 550 Brake_Hybrid: 8 XXX - SG_ Brake_Pedal : 24|8@1+ (1,0) [0|1] "" XXX - SG_ Brake : 37|1@1+ (1,0) [0|1] "" XXX - -VAL_ 295 Gear 0 "P" 1 "R" 3 "D"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc deleted file mode 100644 index cc1fa16d19..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc +++ /dev/null @@ -1,30 +0,0 @@ -CM_ "IMPORT _subaru_preglobal_2015.dbc"; - -BO_ 358 ES_DashStatus: 8 XXX - SG_ Not_Ready_Startup : 0|3@1+ (1,0) [0|7] "" XXX - SG_ Seatbelt_Disengage : 12|2@1+ (1,0) [0|3] "" XXX - SG_ Disengage_Alert : 14|2@1+ (1,0) [0|3] "" XXX - SG_ Cruise_On : 16|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 17|1@1+ (1,0) [0|1] "" XXX - SG_ Signal1 : 18|1@1+ (1,0) [0|1] "" XXX - SG_ WHEELS_MOVING_2015 : 19|1@1+ (1,0) [0|1] "" XXX - SG_ Driver_Input : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Distance : 21|3@1+ (1,0) [0|7] "" XXX - SG_ Cruise_Set_Speed : 24|8@1+ (1,0) [0|255] "" XXX - SG_ Cruise_Fault : 32|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_On_2 : 34|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 37|3@1+ (1,0) [0|7] "" XXX - SG_ Steep_Hill_Disengage : 44|1@1+ (1,0) [0|3] "" XXX - SG_ Car_Follow : 46|1@1+ (1,0) [0|1] "" XXX - SG_ Far_Distance : 48|4@1+ (5,0) [0|75] "m" XXX - -BO_ 881 Steering_Torque: 8 XXX - SG_ Steering_Motor_Flat : 0|10@1+ (32,0) [0|1000] "" XXX - SG_ Steer_Torque_Output : 16|11@1- (-32,0) [-1000|1000] "" XXX - SG_ Steer_Error_1 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Steer_Torque_Sensor : 29|11@1- (1,0) [-1000|1000] "" XXX - SG_ Steering_Angle : 40|16@1- (-0.033,0) [-600|600] "" XXX - -CM_ SG_ 358 Disengage_Alert "seatbelt and steep hill disengage"; -CM_ SG_ 358 Cruise_Fault "No engagement until restart"; -CM_ SG_ 358 Car_Follow "lead car detected"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc deleted file mode 100644 index d886954cfe..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc +++ /dev/null @@ -1,30 +0,0 @@ -CM_ "IMPORT _subaru_preglobal_2015.dbc"; - -BO_ 358 ES_DashStatus: 8 XXX - SG_ Not_Ready_Startup : 0|3@1+ (1,0) [0|7] "" XXX - SG_ Seatbelt_Disengage : 12|2@1+ (1,0) [0|3] "" XXX - SG_ Disengage_Alert : 14|2@1+ (1,0) [0|3] "" XXX - SG_ Cruise_On : 16|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Activated : 17|1@1+ (1,0) [0|1] "" XXX - SG_ Signal1 : 18|1@1+ (1,0) [0|1] "" XXX - SG_ WHEELS_MOVING_2015 : 19|1@1+ (1,0) [0|1] "" XXX - SG_ Driver_Input : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Distance : 21|3@1+ (1,0) [0|7] "" XXX - SG_ Cruise_Set_Speed : 24|8@1+ (1,0) [0|255] "" XXX - SG_ Cruise_Fault : 32|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_On_2 : 34|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 37|3@1+ (1,0) [0|7] "" XXX - SG_ Steep_Hill_Disengage : 44|1@1+ (1,0) [0|3] "" XXX - SG_ Car_Follow : 46|1@1+ (1,0) [0|1] "" XXX - SG_ Far_Distance : 48|4@1+ (5,0) [0|75] "m" XXX - -BO_ 881 Steering_Torque: 8 XXX - SG_ Steering_Motor_Flat : 0|10@1+ (32,0) [0|1000] "" XXX - SG_ Steer_Torque_Output : 16|11@1- (-32,0) [-1000|1000] "" XXX - SG_ Steer_Error_1 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Steer_Torque_Sensor : 29|11@1- (-1,0) [-1000|1000] "" XXX - SG_ Steering_Angle : 40|16@1- (-0.033,0) [-600|600] "" XXX - -CM_ SG_ 358 Disengage_Alert "seatbelt and steep hill disengage"; -CM_ SG_ 358 Cruise_Fault "No engagement until restart"; -CM_ SG_ 358 Car_Follow "lead car detected"; diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/.gitignore b/opendbc_repo/opendbc/dbc/generator/tesla/.gitignore deleted file mode 100644 index 554aeeaf24..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/tesla/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.dbc \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py b/opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py deleted file mode 100755 index 737c203b02..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env python3 - -def get_radar_point_definition(base_id, base_name): - return f""" -BO_ {base_id} {base_name}_A: 8 Radar - SG_ LongDist : 0|12@1+ (0.0625,0) [0|255.9] "meters" Autopilot - SG_ LongSpeed : 12|12@1+ (0.0625,-128) [-128|128] "meters/sec" Autopilot - SG_ LatDist : 24|11@1+ (0.125,-128) [-128|128] "meters" Autopilot - SG_ ProbExist : 35|5@1+ (3.125,0) [0|96.875] "%" Autopilot - SG_ LongAccel : 40|10@1+ (0.03125,-16) [-16|16] "meters/sec/sec" Autopilot - SG_ ProbObstacle : 50|5@1+ (3.125,0) [0|96.875] "%" Autopilot - SG_ Valid : 55|1@1+ (1,0) [0|1] "" Autopilot - SG_ ProbNonObstacle : 56|5@1+ (3.125,0) [0|96.875] "%" Autopilot - SG_ Meas : 61|1@1+ (1,0) [0|1] "" Autopilot - SG_ Tracked : 62|1@1+ (1,0) [0|1] "" Autopilot - SG_ Index : 63|1@1+ (1,0) [0|1] "" Autopilot - -BO_ {base_id+1} {base_name}_B: 8 Radar - SG_ LatSpeed : 0|10@1+ (0.125,-64) [-64|64] "meters/sec" Autopilot - SG_ Length : 10|6@1+ (0.125,0) [0|7.875] "m" Autopilot - SG_ dZ : 16|6@1+ (0.25,-5) [-5|10.75] "m" Autopilot - SG_ MovingState : 22|2@1+ (1,0) [0|3] "" Autopilot - SG_ dxSigma : 24|6@1+ (1,0) [0|63] "" Autopilot - SG_ vxSigma : 30|6@1+ (1,0) [0|63] "" Autopilot - SG_ axSigma : 36|6@1+ (1,0) [0|63] "" Autopilot - SG_ dySigma : 42|6@1+ (1,0) [0|63] "" Autopilot - SG_ ProbClass : 48|5@1+ (3.125,0) [0|96.875] "%" Autopilot - SG_ Class : 53|3@1+ (1,0) [0|7] "" Autopilot - SG_ dxRearEndLoss : 56|6@1+ (1,0) [0|63] "" Autopilot - SG_ NotUsed : 62|1@1+ (1,0) [0|1] "" Autopilot - SG_ Index2 : 63|1@1+ (1,0) [0|1] "" Autopilot -""" - -def get_val_definition(base_id): - return f""" -VAL_ {base_id+1} MovingState 3 "RADAR_MOVESTATE_STANDING" 2 "RADAR_MOVESTATE_STOPPED" 1 "RADAR_MOVESTATE_MOVING" 0 "RADAR_MOVESTATE_INDETERMINATE" ; -VAL_ {base_id+1} Class 4 "RADAR_CLASS_CONSTRUCTION_ELEMENT" 3 "RADAR_CLASS_MOVING_PEDESTRIAN" 2 "RADAR_CLASS_MOVING_TWO_WHEEL_VEHICLE" 1 \ -"RADAR_CLASS_MOVING_FOUR_WHEEL_VEHICLE" 0 "RADAR_CLASS_UNKNOWN" ;""" \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py b/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py deleted file mode 100755 index 6586655ec0..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py +++ /dev/null @@ -1,282 +0,0 @@ -#!/usr/bin/env python3 - -import os -from opendbc.dbc.generator.tesla._radar_common import get_radar_point_definition, get_val_definition - -if __name__ == "__main__": - dbc_name = os.path.basename(__file__).replace(".py", ".dbc") - tesla_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(tesla_path, dbc_name), "w", encoding='utf-8') as f: - f.write(""" -VERSION "" - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: Autopilot Radar Diag - - -BO_ 769 TeslaRadarSguInfo: 8 Radar - SG_ RADC_VerticalMisalignment : 0|8@1+ (1,0) [0|255] "" Autopilot - SG_ RADC_SCUTemperature : 8|8@1+ (1,-128) [-128|127] "" Autopilot - SG_ RADC_VMA_Plaus : 16|8@1+ (1,0) [0|255] "" Autopilot - SG_ RADC_SGU_ITC : 24|8@1+ (1,0) [0|255] "" Autopilot - SG_ RADC_HorizontMisalignment : 32|12@1+ (1,0) [0|4096] "" Autopilot - SG_ RADC_SensorDirty : 44|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_HWFail : 45|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_SGUFail : 46|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_SGUInfoConsistBit : 47|1@1+ (1,0) [0|1] "" Autopilot - -BO_ 770 TeslaRadarTguInfo: 8 Radar - SG_ RADC_ACCTargObj1_sguIndex : 0|6@1+ (1,0) [0|63] "" Autopilot - SG_ RADC_ACCTargObj2_sguIndex : 6|6@1+ (1,0) [0|63] "" Autopilot - SG_ RADC_ACCTargObj3_sguIndex : 12|6@1+ (1,0) [0|63] "" Autopilot - SG_ RADC_ACCTargObj4_sguIndex : 18|6@1+ (1,0) [0|63] "" Autopilot - SG_ RADC_ACCTargObj5_sguIndex : 24|6@1+ (1,0) [0|63] "" Autopilot - SG_ unused30 : 30|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_TGUInfoConsistBit : 31|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_ACCTargObj1_dBPower : 32|16@1+ (1,0) [0|65535] "" Autopilot - SG_ RADC_ACCTargObj5_dBPower : 48|16@1+ (1,0) [0|65535] "" Autopilot - -BO_ 1281 TeslaRadarAlertMatrix: 8 Radar - SG_ RADC_a001_ecuInternalPerf : 0|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a002_flashPerformance : 1|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a003_vBatHigh : 2|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a004_adjustmentNotDone : 3|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a005_adjustmentReq : 4|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a006_adjustmentNotOk : 5|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a007_sensorBlinded : 6|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a008_plantModeActive : 7|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a009_configMismatch : 8|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a010_canBusOff : 9|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a011_bdyMIA : 10|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a012_espMIA : 11|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a013_gtwMIA : 12|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a014_sccmMIA : 13|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a015_adasMIA : 14|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a016_bdyInvalidCount : 15|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a017_adasInvalidCount : 16|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a018_espInvalidCount : 17|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a019_sccmInvalidCount : 18|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a020_bdyInvalidChkSm : 19|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a021_espInvalidChkSm : 20|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a022_sccmInvalidChkSm : 21|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a023_sccmInvalidChkSm : 22|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a024_absValidity : 23|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a025_ambTValidity : 24|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a026_brakeValidity : 25|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a027_CntryCdValidity : 26|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a028_espValidity : 27|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a029_longAccOffValidity : 28|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a030_longAccValidity : 29|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a031_odoValidity : 30|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a032_gearValidity : 31|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a033_steerAngValidity : 32|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a034_steerAngSpdValidity : 33|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a035_indctrValidity : 34|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a036_vehStandStillValidity : 35|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a037_vinValidity : 36|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a038_whlRotValidity : 37|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a039_whlSpdValidity : 38|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a040_whlStandStillValidity : 39|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a041_wiperValidity : 40|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a042_xwdValidity : 41|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a043_yawOffValidity : 42|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a044_yawValidity : 43|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a045_bsdSanity : 44|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a046_rctaSanity : 45|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a047_lcwSanity : 46|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a048_steerAngOffSanity : 47|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a049_tireSizeSanity : 48|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a050_velocitySanity : 49|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a051_yawSanity : 50|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a052_radomeHtrInop : 51|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a053_espmodValidity : 52|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a054_gtwmodValidity : 53|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a055_stwmodValidity : 54|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a056_bcmodValidity : 55|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a057_dimodValidity : 56|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a058_opmodValidity : 57|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a059_drmiInvalidChkSm : 58|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a060_drmiInvalidCount : 59|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a061_radPositionMismatch : 60|1@1+ (1,0) [0|1] "" Autopilot - SG_ RADC_a062_strRackMismatch : 61|1@1+ (1,0) [0|1] "" Autopilot - SG_ unused62 : 62|2@1+ (1,0) [0|3] "" Autopilot -""") - - M_RANGE = range(0x310, 0x36D + 1, 3) - for i, base_id in enumerate(M_RANGE): - f.write(get_radar_point_definition(base_id, f"RadarPoint{i}")) - - L_RANGE = range(0x371, 0x37D + 1, 3) - for i, base_id in enumerate(L_RANGE): - f.write(get_radar_point_definition(base_id, f"ProcessedRadarPoint{i+1}")) - - f.write(""" -BO_ 697 VIN_VIP_405HS: 8 Autopilot - SG_ VIN_MuxID M : 0|8@1+ (1,0) [0|0] "" Radar - SG_ VIN_Part1 m16 : 47|24@0+ (1,0) [0|16777215] "" Radar - SG_ VIN_Part2 m17 : 15|56@0+ (1,0) [0|7.2057594038E+16] "" Radar - SG_ VIN_Part3 m18 : 15|56@0+ (1,0) [0|7.2057594038E+16] "" Radar - -BO_ 681 Msg2A9_GTW_carConfig: 8 Autopilot - SG_ Msg2A9_Always0x02 : 48|8@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_Always0x10 : 56|8@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_Always0x16 : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_Always0x41 : 24|8@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_Value1_0x02 : 0|3@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_FourWheelDrive : 3|2@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_Value2_0x02 : 5|3@1+ (1,0) [0|0] "" Radar - SG_ Msg2A9_Always0x43 : 16|8@1+ (1,0) [0|0] "" Radar - -BO_ 409 Msg199_STW_ANGLHP_STAT: 8 Autopilot - SG_ Msg199Always0x04 : 32|8@1+ (1,0) [0|0] "" Radar - SG_ Msg199Always0x20 : 16|8@1+ (1,0) [0|0] "" Radar - SG_ Msg199Always0x2F : 0|8@1+ (1,0) [0|0] "" Radar - SG_ Msg199Always0x67 : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg199Always0xFF : 40|8@1+ (1,0) [0|0] "" Radar - SG_ Msg199Checksum : 56|8@1+ (1,0) [0|0] "" Radar - SG_ Msg199Counter : 52|4@1+ (1,0) [0|0] "" Radar - -BO_ 361 Msg169_ESP_wheelSpeeds: 8 Autopilot - SG_ ESP_wheelSpeedFrL_HS : 0|13@1+ (0.04,0) [0|327.64] "km/h" Radar - SG_ ESP_wheelSpeedFrR_HS : 13|13@1+ (0.04,0) [0|327.64] "km/h" Radar - SG_ ESP_wheelSpeedReL_HS : 26|13@1+ (0.04,0) [0|327.64] "km/h" Radar - SG_ ESP_wheelSpeedReR_HS : 39|13@1+ (0.04,0) [0|327.64] "km/h" Radar - SG_ Msg169Checksum : 56|8@1+ (1,0) [0|0] "" Radar - SG_ Msg169Counter : 52|4@1+ (1,0) [0|0] "" Radar - -BO_ 345 Msg159_ESP_C: 8 Autopilot - SG_ Msg159Always0x3A : 16|8@1+ (1,0) [0|0] "" Radar - SG_ Msg159Always0xA5 : 0|8@1+ (1,0) [0|0] "" Radar - SG_ Msg159Always0xCF : 32|8@1+ (1,0) [0|0] "" Radar - SG_ Msg159Always0xF4 : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg159Counter : 44|4@1+ (1,0) [0|0] "" Radar - SG_ Msg159Checksum : 24|8@1+ (1,0) [0|0] "" Radar - -BO_ 329 Msg149_ESP_145h: 8 Autopilot - SG_ Msg149Always0x02 : 16|8@1+ (1,0) [0|0] "" Radar - SG_ Msg149Always0x04 : 40|8@1+ (1,0) [0|0] "" Radar - SG_ Msg149Always0x26 : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg149Always0x6A : 24|8@1+ (1,0) [0|0] "" Radar - SG_ Msg149Always0xAA : 32|8@1+ (1,0) [0|0] "" Radar - SG_ Msg149Always0xF : 48|4@1+ (1,0) [0|0] "" Radar - SG_ Msg149Checksum : 56|8@1+ (1,0) [0|0] "" Radar - SG_ Msg149Counter : 52|4@1+ (1,0) [0|0] "" Radar - -BO_ 297 Msg129_ESP_115h: 6 Autopilot - SG_ Msg129Always0x20 : 24|8@1+ (1,0) [0|0] "" Radar - SG_ Msg129Checksum : 40|8@1+ (1,0) [0|0] "" Radar - SG_ Msg129Counter : 36|4@1+ (1,0) [0|0] "" Radar - -BO_ 281 Msg119_DI_torque2: 6 Autopilot - SG_ Msg119Always0x11 : 24|8@1+ (1,0) [0|0] "" Radar - SG_ Msg119Always0x1F : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg119Always0x8 : 36|4@1+ (1,0) [0|0] "" Radar - SG_ Msg119Always0xF4 : 16|8@1+ (1,0) [0|0] "" Radar - SG_ Msg119Always0xFF : 0|8@1+ (1,0) [0|0] "" Radar - SG_ Msg119Checksum : 40|8@1+ (1,0) [0|0] "" Radar - SG_ Msg119Counter : 32|4@1+ (1,0) [0|0] "" Radar - -BO_ 265 Msg109_DI_torque1: 8 Autopilot - SG_ Msg109Always0x80 : 24|8@1+ (1,0) [0|0] "" Radar - SG_ Msg109Checksum : 56|8@1+ (1,0) [0|0] "" Radar - SG_ Msg109Counter : 13|3@1+ (1,0) [0|0] "" Radar - -BO_ 521 Msg209_GTW_odo: 8 Autopilot - SG_ Msg209Always0x61 : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg209Always0x94 : 16|8@1+ (1,0) [0|0] "" Radar - SG_ Msg209Always0x52 : 24|8@1+ (1,0) [0|0] "" Radar - SG_ Msg209Always0x13 : 32|8@1+ (1,0) [0|0] "" Radar - SG_ Msg209Always0x03 : 40|8@1+ (1,0) [0|0] "" Radar - SG_ Msg209Always0x80 : 48|8@1+ (1,0) [0|0] "" Radar - -BO_ 537 Msg219_STW_ACTN_RQ: 8 Autopilot - SG_ Msg219Counter : 52|4@1+ (1,0) [0|15] "" Radar - SG_ Msg219CRC : 56|8@1+ (1,0) [0|0] "" Radar - -BO_ 425 Msg1A9_DI_espControl: 5 Autopilot - SG_ Msg1A9Always0x0C : 16|8@1+ (1,0) [0|0] "" Radar - SG_ Msg1A9Counter : 28|4@1+ (1,0) [0|0] "" Radar - SG_ Msg1A9Checksum : 32|8@1+ (1,0) [0|0] "" Radar - -BO_ 729 Msg2D9_BC_status : 8 Autopilot - SG_ Msg2D9Always0x80 : 0|8@1+ (1,0) [0|0] "" Radar - SG_ Msg2D9Always0x40 : 8|8@1+ (1,0) [0|0] "" Radar - SG_ Msg2D9Always0x83 : 16|8@1+ (1,0) [0|0] "" Radar - -BO_ 1601 UDS_radarRequest: 8 Diag - SG_ UDS_radarRequestData : 7|64@0+ (1,0) [0|0] "" Radar - -BO_ 1617 Radar_udsResponse: 8 Radar - SG_ Radar_udsResponseData : 7|64@0+ (1,0) [0|0] "" Diag - -CM_ BO_ 697 "Start with MuxID 0x12, then 0x11 and finally 0x10 (VIN is then transmitted in the reverse order)"; -CM_ BO_ 681 "Message sent every 1000 ms. All fixed bytes, no checksum, the byte for RWD or AWD needs to match VIN config"; -CM_ BO_ 409 "Message sent every 10ms. Checksum : use all first 7 bytes with the SAE J1850 CRC algo"; -CM_ BO_ 361 "Message sent every 10ms. Checksum : Sum of all first 7 bytes + 0x76"; -CM_ BO_ 345 "Message sent every 20ms. Checksum : Sum of all first bytes + 0xc; place checksum in 4th octet"; -CM_ BO_ 329 "Message sent every 20ms. Checksum : Sum of all first 7 bytes + 0x46"; -CM_ BO_ 297 "Message sent every 20ms. Checksum : Sum of all first 5 bytes + 0x16"; -CM_ BO_ 281 "Message sent every 10ms. Checksum : Sum of all first 5 bytes + 0x17"; -CM_ BO_ 265 "Message sent every 10ms. Checksum : Sum of all first 7 bytes + 0x7"; -CM_ BO_ 521 "Message sent every 100ms. All fixed bytes, no checksum."; -CM_ BO_ 537 "Message sent every 100ms. Checksum : use all first 7 bytes with the SAE J1850 CRC algo"; -CM_ BO_ 425 "Message sent every 20ms. Checksum : Sum of all first 4 bytes + 0x38"; -CM_ BO_ 729 "Message sent every 1000ms. All fixed bytes, no checksum."; - -BA_DEF_ "BusType" STRING ; -BA_DEF_ BO_ "GenMsgCycleTime" INT 0 0; -BA_DEF_ SG_ "FieldType" STRING ; - -BA_DEF_DEF_ "BusType" "CAN"; -BA_DEF_DEF_ "FieldType" ""; -BA_DEF_DEF_ "GenMsgCycleTime" 0; - -BA_ "GenMsgCycleTime" BO_ 697 250; -BA_ "GenMsgCycleTime" BO_ 681 1000; -BA_ "GenMsgCycleTime" BO_ 409 10; -BA_ "GenMsgCycleTime" BO_ 361 10; -BA_ "GenMsgCycleTime" BO_ 345 20; -BA_ "GenMsgCycleTime" BO_ 329 20; -BA_ "GenMsgCycleTime" BO_ 297 20; -BA_ "GenMsgCycleTime" BO_ 281 10; -BA_ "GenMsgCycleTime" BO_ 265 10; -BA_ "GenMsgCycleTime" BO_ 521 100; -BA_ "GenMsgCycleTime" BO_ 537 100; -BA_ "GenMsgCycleTime" BO_ 425 20; -BA_ "GenMsgCycleTime" BO_ 729 1000; - -VAL_ 681 Msg2A9_FourWheelDrive 3 "SNA" 2 "UNUSED" 1 "4WD" 0 "2WD" ;""") - - for base_id in list(M_RANGE) + list(L_RANGE): - f.write(get_val_definition(base_id)) diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py b/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py deleted file mode 100755 index 36355d4a03..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py +++ /dev/null @@ -1,77 +0,0 @@ -#!/usr/bin/env python3 - -import os -from opendbc.dbc.generator.tesla._radar_common import get_radar_point_definition, get_val_definition - -if __name__ == "__main__": - dbc_name = os.path.basename(__file__).replace(".py", ".dbc") - tesla_path = os.path.dirname(os.path.realpath(__file__)) - with open(os.path.join(tesla_path, dbc_name), "w", encoding='utf-8') as f: - f.write(""" -VERSION "" - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: Autopilot Radar Diag - -BO_ 1025 RadarStatus: 8 Radar - SG_ carparkDetected : 29|1@1+ (1,0) [0|1] "" Autopilot - SG_ decreaseBlockage : 25|1@1+ (1,0) [0|1] "" Autopilot - SG_ horizontMisalignment : 8|12@1+ (0.00012207,-0.25) [-0.25|0.249878] "rad" Autopilot - SG_ increaseBlockage : 24|1@1+ (1,0) [0|1] "" Autopilot - SG_ lowPowerMode : 20|2@1+ (1,0) [0|3] "" Autopilot - SG_ powerOnSelfTest : 22|1@1+ (1,0) [0|1] "" Autopilot - SG_ sensorBlocked : 26|1@1+ (1,0) [0|1] "" Autopilot - SG_ sensorInfoConsistBit : 30|1@1+ (1,0) [0|1] "" Autopilot - SG_ sensorReplace : 31|1@1+ (1,0) [0|1] "" Autopilot - SG_ shortTermUnavailable : 23|1@1+ (1,0) [0|1] "" Autopilot - SG_ tunnelDetected : 28|1@1+ (1,0) [0|1] "" Autopilot - SG_ vehDynamicsError : 27|1@1+ (1,0) [0|1] "" Autopilot - SG_ verticalMisalignment : 0|8@1+ (0.00195313,-0.25) [-0.25|0.248047] "rad" Autopilot - -BO_ 1617 Radar_udsResponse: 8 Radar - SG_ Radar_udsResponseData : 7|64@0+ (1,0) [0|1.84467e+19] "" Diag - -BO_ 1601 UDS_radcRequest: 8 Diag - SG_ UDS_radcRequestData : 7|64@0+ (1,0) [0|1.84467e+19] "" Radar -""") - - POINT_RANGE = range(0x410, 0x45E + 1, 2) - for i, base_id in enumerate(POINT_RANGE): - f.write(get_radar_point_definition(base_id, f"RadarPoint{i}")) - - f.write(""" -VAL_ 1025 lowPowerMode 1 "COMMANDED_LOW_POWER" 0 "DEFAULT_LOW_POWER" 2 "NORMAL_POWER" 3 "SNA";""") - - for base_id in list(POINT_RANGE): - f.write(get_val_definition(base_id)) diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc deleted file mode 100644 index 58bcfd3be4..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc +++ /dev/null @@ -1,41 +0,0 @@ -BO_ 359 STEERING_IPAS_COMMA: 8 IPAS - SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX - SG_ ANGLE : 3|12@0- (1.5,0) [-510|510] "deg" XXX - SG_ SET_ME_X10 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ DIRECTION_CMD : 38|2@0+ (1,0) [0|3] "" XXX - SG_ SET_ME_X40 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00_1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "BO_ STEERING_IPAS_COMMA: Copy of msg 614 so we can do angle control while the Park Assist ECU is connected (Panda spoofs 614 with 359 on connector J70). Note that addresses 0x266 and 0x167 are checksum-invariant"; - -BO_ 512 GAS_COMMAND: 6 EON - SG_ GAS_COMMAND : 7|16@0+ (0.159375,-75.555) [0|1] "" INTERCEPTOR - SG_ GAS_COMMAND2 : 23|16@0+ (0.159375,-151.111) [0|1] "" INTERCEPTOR - SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR - SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR - SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR - -BO_ 513 GAS_SENSOR: 6 INTERCEPTOR - SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON - SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON - SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON - SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON - SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON - -VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; - -BO_ 35 SECONDARY_STEER_ANGLE: 8 XXX - SG_ ZORRO_STEER : 7|24@0- (0.004901594652,0) [-500|500] "" XXX - -CM_ "BO_ SECONDARY_STEER_ANGLE: ZSS is a high-precision steering angle sensor that can replace the lower resolution sensor in most TSS1 Toyotas. Learn more: https://github.com/commaai/openpilot/wiki/Toyota-Lexus#zorro-steering-sensor-zss"; - -BO_ 767 SDSU: 8 XXX - SG_ FD_BUTTON : 7|1@0+ (1,0) [0|1] "" XXX - SG_ STATE : 23|4@0+ (1,0) [0|15] "" XXX - -CM_ "BO_ SDSU: The sDSU is a modified DSU for use in TSS-P Toyotas. Learn more: https://github.com/RetroPilot/ocelot/tree/main/firmware/smart_dsu"; -CM_ SG_ 767 FD_BUTTON "The follow distance button signal as forwarded by the sdsu"; - -VAL_ 767 STATE 7 "STATE_AEB_CTRL" 6 "FAULT_INVALID" 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc deleted file mode 100644 index 92ddd5fc16..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc +++ /dev/null @@ -1,548 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX DSU HCU EPS IPAS CGW BGM - -BO_ 36 KINEMATICS: 8 XXX - SG_ ACCEL_Y : 33|10@0+ (0.03589,-18.375) [0|65535] "m/s^2" XXX - SG_ YAW_RATE : 1|10@0+ (0.244,-125) [0|65535] "deg/s" XXX - SG_ ACCEL_X : 17|10@0+ (0.03589,-18.375) [0|65535] "m/s^2" XXX - -BO_ 37 STEER_ANGLE_SENSOR: 8 XXX - SG_ STEER_ANGLE : 3|12@0- (1.5,0) [-500|500] "deg" XXX - SG_ STEER_FRACTION : 39|4@0- (0.1,0) [-0.7|0.7] "deg" XXX - SG_ STEER_RATE : 35|12@0- (1,0) [-2000|2000] "deg/s" XXX - -BO_ 119 ENG2F41: 6 CGW - SG_ FDRV : 7|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ FDRVREAL : 23|13@0- (10,0) [0|0] "N" Vector__XXX - SG_ XAECT : 39|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XFDRVCOL : 38|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FDRVSELP : 34|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ ENG2F41S : 47|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 120 ENG2F42: 4 CGW - SG_ FAVLMCHH : 7|16@0- (2,0) [0|0] "N" Vector__XX228X - SG_ CCRNG : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FDRVTYPD : 22|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ GEARHD : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ENG2F42S : 31|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 166 BRAKE: 8 XXX - SG_ BRAKE_AMOUNT : 7|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_FORCE : 23|8@0+ (40,0) [0|10200] "N" XXX - -BO_ 170 WHEEL_SPEEDS: 8 XXX - SG_ WHEEL_SPEED_FR : 7|16@0+ (0.01,-67.67) [0|250] "km/h" XXX - SG_ WHEEL_SPEED_FL : 23|16@0+ (0.01,-67.67) [0|250] "km/h" XXX - SG_ WHEEL_SPEED_RR : 39|16@0+ (0.01,-67.67) [0|250] "km/h" XXX - SG_ WHEEL_SPEED_RL : 55|16@0+ (0.01,-67.67) [0|250] "km/h" XXX - -BO_ 180 SPEED: 8 XXX - SG_ ENCODER : 39|8@0+ (1,0) [0|255] "" XXX - SG_ SPEED : 47|16@0+ (0.01,0) [0|250] "km/h" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 295 GEAR_PACKET_HYBRID: 8 XXX - SG_ FDRVREAL : 26|11@0- (25,0) [-25600|25575] "N" XXX - SG_ UNKNOWN : 55|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ GEAR : 47|4@0+ (1,0) [0|15] "" XXX - -BO_ 353 DSU_SPEED: 7 XXX - SG_ FORWARD_SPEED : 15|16@0- (0.00390625,-30) [0|255] "km/h" XXX - -BO_ 452 ENGINE_RPM: 8 CGW - SG_ RPM : 7|16@0- (0.78125,0) [0|0] "rpm" SCS - SG_ ENGINE_RUNNING : 27|1@0+ (1,0) [0|1] "" XXX - -BO_ 467 PCM_CRUISE_2: 8 XXX - SG_ BRAKE_PRESSED : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PCM_FOLLOW_DISTANCE : 12|2@0+ (1,0) [0|3] "" XXX - SG_ LOW_SPEED_LOCKOUT : 14|2@0+ (1,0) [0|3] "" XXX - SG_ MAIN_ON : 15|1@0+ (1,0) [0|1] "" XXX - SG_ SET_SPEED : 23|8@0+ (1,0) [0|255] "km/h" XXX - SG_ ACC_FAULTED : 47|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 552 VSC1S29: 4 CGW - SG_ ICBACT : 7|1@0+ (1,0) [0|0] "" DS1 - SG_ DVS0PCS : 6|15@0- (0.001,0) [0|0] "m/s^2" DS1 - SG_ SM228 : 31|8@0+ (1,0) [0|0] "" DS1 - -BO_ 560 BRAKE_2: 7 XXX - SG_ BRAKE_PRESSED : 26|1@0+ (1,0) [0|1] "" XXX - -BO_ 581 GAS_PEDAL_HYBRID: 8 XXX - SG_ GAS_PEDAL : 23|8@0+ (0.005,0) [0|1] "" XXX - -BO_ 608 STEER_TORQUE_SENSOR: 8 XXX - SG_ STEER_TORQUE_EPS : 47|16@0- (1,0) [-32768|32767] "" XXX - SG_ STEER_TORQUE_DRIVER : 15|16@0- (1,0) [-32768|32767] "" XXX - SG_ STEER_ANGLE : 31|16@0- (0.0573,0) [-500|500] "" XXX - SG_ STEER_ANGLE_INITIALIZING : 3|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_OVERRIDE : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 614 STEERING_IPAS: 8 IPAS - SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX - SG_ ANGLE : 3|12@0- (1.5,0) [-510|510] "deg" XXX - SG_ SET_ME_X10 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ DIRECTION_CMD : 38|2@0+ (1,0) [0|3] "" XXX - SG_ SET_ME_X40 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00_1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 742 LEAD_INFO: 8 DSU - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" HCU - SG_ LEAD_REL_SPEED : 23|12@0- (0.025,0) [-100|100] "m/s" HCU - SG_ LEAD_LONG_DIST : 7|13@0+ (0.05,0) [0|300] "m" HCU - -BO_ 800 VSC1S07: 8 CGW - SG_ FBKRLY : 6|1@0+ (1,0) [0|0] "" DS1 - SG_ FVSCM : 4|1@0+ (1,0) [0|0] "" DS1 - SG_ FVSCSFT : 3|1@0+ (1,0) [0|0] "" DS1 - SG_ FABS : 2|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ TSVSC : 1|1@0+ (1,0) [0|0] "" DS1 - SG_ FVSCL : 0|1@0+ (1,0) [0|0] "" DS1 - SG_ RQCSTBKB : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PSBSTBY : 14|1@0+ (1,0) [0|0] "" DS1 - SG_ P2BRXMK : 13|1@0+ (1,0) [0|0] "" DS1 - SG_ MCC : 11|1@0+ (1,0) [0|0] "" DS1 - SG_ RQBKB : 10|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRSTOP : 9|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ BRKON : 8|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ ASLP : 23|8@0- (1,0) [0|0] "deg" DS1 - SG_ BRTYPACC : 31|2@0+ (1,0) [0|0] "" DS1 - SG_ BRKABT3 : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRKABT2 : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRKABT1 : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GVC : 39|8@0- (0.04,0) [0|0] "m/s^2" DS1 - SG_ XGVCINV : 43|1@0+ (1,0) [0|0] "" DS1 - SG_ S07CNT : 52|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSBRSTA : 50|2@0+ (1,0) [0|0] "" DS1 - SG_ VSC07SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 835 ACC_CONTROL: 8 DSU - SG_ ACCEL_CMD : 7|16@0- (0.001,0) [-20|20] "m/s^2" HCU - SG_ ALLOW_LONG_PRESS : 17|2@0+ (1,0) [0|2] "" XXX - SG_ ACC_MALFUNCTION : 18|1@0+ (1,0) [0|0] "" XXX - SG_ RADAR_DIRTY : 19|1@0+ (1,0) [0|1] "" XXX - SG_ DISTANCE : 20|1@0+ (1,0) [0|1] "" XXX - SG_ MINI_CAR : 21|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_TYPE : 23|2@0+ (1,0) [0|3] "" HCU - SG_ CANCEL_REQ : 24|1@0+ (1,0) [0|1] "" HCU - SG_ ACC_CUT_IN : 25|1@0+ (1,0) [0|1] "" XXX - SG_ LEAD_VEHICLE_STOPPED : 29|1@0+ (1,0) [0|0] "" DSU - SG_ PERMIT_BRAKING : 30|1@0+ (1,0) [0|1] "" HCU - SG_ RELEASE_STANDSTILL : 31|1@0+ (1,0) [0|1] "" HCU - SG_ ITS_CONNECT_LEAD : 39|8@0+ (1,0) [0|1] "" Vector__XXX - SG_ ACCEL_CMD_ALT : 47|8@0- (0.05,0) [0|0] "m/s^2" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 865 CLUTCH: 8 XXX - SG_ ACC_FAULTED : 32|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_PEDAL_ALT : 23|8@0+ (0.005,0) [0|1] "" XXX - SG_ CLUTCH_RELEASED : 38|1@0+ (1,0) [0|1] "" XXX - SG_ ACCEL_NET : 48|16@1+ (0.0002,-6.5536) [-6.5536|6.5534] "" XXX - -BO_ 869 DSU_CRUISE : 7 DSU - SG_ RES_BTN : 3|1@0+ (1,0) [0|0] "" XXX - SG_ SET_BTN : 2|1@0+ (1,0) [0|0] "" XXX - SG_ CANCEL_BTN : 1|1@0+ (1,0) [0|0] "" XXX - SG_ MAIN_ON : 0|1@0+ (1,0) [0|0] "" XXX - SG_ SET_SPEED : 15|8@0+ (1,0) [0|0] "km/h" XXX - SG_ CRUISE_REQUEST : 31|8@0+ (100,-12800) [0|0] "N" XXX - SG_ LEAD_DISTANCE : 39|8@0+ (1,0) [0|0] "m" XXX - -BO_ 921 PCM_CRUISE_SM: 8 XXX - SG_ MAIN_ON : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_STATE : 11|4@0+ (1,0) [0|15] "" XXX - SG_ DISTANCE_LINES : 14|2@0+ (1,0) [0|3] "" XXX - SG_ TEMP_ACC_FAULTED : 15|1@0+ (1,0) [0|1] "" XXX - SG_ UI_SET_SPEED : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 951 ESP_CONTROL: 8 ESP - SG_ TC_DISABLED : 13|1@0+ (1,0) [0|1] "" XXX - SG_ VSC_DISABLED : 12|2@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_LIGHTS_ACC : 18|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_HOLD_ENABLED : 33|1@1+ (1,0) [0|1] "" XXX - SG_ BRAKE_HOLD_ACTIVE : 36|1@0+ (1,0) [0|1] "" XXX - -BO_ 956 GEAR_PACKET: 8 XXX - SG_ SPORT_ON : 2|1@0+ (1,0) [0|1] "" XXX - SG_ GEAR : 13|6@0+ (1,0) [0|63] "" XXX - SG_ SPORT_GEAR_ON : 33|1@0+ (1,0) [0|1] "" XXX - SG_ SPORT_GEAR : 38|3@0+ (1,0) [0|7] "" XXX - SG_ ECON_ON : 40|1@0+ (1,0) [0|1] "" XXX - SG_ B_GEAR_ENGAGED : 41|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVE_ENGAGED : 47|1@0+ (1,0) [0|1] "" XXX - -BO_ 1005 REVERSE_CAMERA_STATE: 2 BGM - SG_ REVERSE_CAMERA_GUIDELINES : 9|2@0+ (1,0) [1|3] "" XXX - -BO_ 1009 PCM_CRUISE_ALT: 8 XXX - SG_ PCM_FOLLOW_DISTANCE : 4|2@1+ (1,0) [0|3] "" XXX - SG_ MAIN_ON : 13|1@0+ (1,0) [0|3] "" XXX - SG_ CRUISE_STATE : 10|1@0+ (1,0) [0|1] "" XXX - SG_ UI_SET_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX - -BO_ 1020 SOLAR_SENSOR: 8 XXX - SG_ LUX_SENSOR : 55|13@0+ (1,0) [0|0] "" XXX - -BO_ 1041 PCS_HUD: 8 DSU - SG_ PCS_INDICATOR : 7|2@0+ (1,0) [0|3] "" XXX - SG_ FCW : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_X20 : 15|8@0+ (1,0) [0|1] "" XXX - SG_ PCS_DUST : 34|1@0+ (1,0) [0|0] "" XXX - SG_ PCS_TEMP : 35|1@0+ (1,0) [0|0] "" XXX - SG_ PCS_DUST2 : 41|1@0+ (1,0) [0|0] "" XXX - SG_ PCS_TEMP2 : 42|1@0+ (1,0) [0|0] "" XXX - SG_ SET_ME_X10 : 39|8@0+ (1,0) [0|1] "" XXX - SG_ PCS_OFF : 40|1@0+ (1,0) [0|0] "" XXX - SG_ FRD_ADJ : 53|3@0+ (1,0) [0|0] "" XXX - SG_ PCS_SENSITIVITY : 55|8@0+ (1,0) [0|1] "" XXX - -BO_ 1042 LKAS_HUD: 8 DSU - SG_ BARRIERS : 1|2@0+ (1,0) [0|3] "" XXX - SG_ RIGHT_LINE : 3|2@0+ (1,0) [0|3] "" XXX - SG_ LEFT_LINE : 5|2@0+ (1,0) [0|3] "" XXX - SG_ LKAS_STATUS : 7|2@0+ (1,0) [0|3] "" XXX - SG_ LDA_ALERT : 9|2@0+ (1,0) [0|3] "" XXX - SG_ LDW_EXIST : 10|1@0+ (1,0) [0|1] "" XXX - SG_ TWO_BEEPS : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ADJUSTING_CAMERA : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_UNAVAILABLE_QUIET : 14|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_MALFUNCTION : 15|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_UNAVAILABLE : 16|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_SENSITIVITY : 18|2@0+ (1,0) [0|3] "" XXX - SG_ LDA_SA_TOGGLE : 20|2@0+ (1,0) [0|3] "" XXX - SG_ LDA_MESSAGES : 23|3@0+ (1,0) [0|1] "" XXX - SG_ LDA_ON_MESSAGE : 31|2@0+ (1,0) [0|3] "" XXX - SG_ REPEATED_BEEPS : 32|1@0+ (1,0) [0|1] "" XXX - SG_ LANE_SWAY_TOGGLE : 43|1@0+ (1,0) [0|1] "" XXX - SG_ LANE_SWAY_SENSITIVITY : 45|2@0+ (1,0) [0|3] "" XXX - SG_ TAKE_CONTROL : 46|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_FRONT_CAMERA_BLOCKED : 47|1@0+ (1,0) [0|1] "" XXX - SG_ LANE_SWAY_BUZZER : 50|2@0+ (1,0) [0|0] "" XXX - SG_ LANE_SWAY_FLD : 53|3@0+ (1,0) [0|7] "" XXX - SG_ LANE_SWAY_WARNING : 55|2@0+ (1,0) [0|3] "" XXX - SG_ SET_ME_X01 : 42|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_X02 : 63|8@0+ (1,0) [0|1] "" XXX - -BO_ 1043 TIME : 8 CGW - SG_ YEAR : 7|8@0+ (1,0) [0|0] "year" XXX - SG_ MONTH : 15|8@0+ (1,0) [0|0] "month" XXX - SG_ DAY : 23|8@0+ (1,0) [0|0] "day" XXX - SG_ HOUR : 31|8@0+ (1,0) [0|0] "hour" XXX - SG_ MINUTE : 39|8@0+ (1,0) [0|0] "minute" XXX - SG_ GMT_DIFF : 55|1@0+ (1,0) [0|0] "" XXX - SG_ GMTDIFF_HOURS : 54|4@0+ (1,0) [0|0] "hours" XXX - SG_ GMTDIFF_MINUTES : 50|6@0+ (1,0) [0|0] "minutes" XXX - SG_ SUMMER : 60|1@0+ (1,0) [0|0] "" XXX - -BO_ 1044 AUTO_HIGH_BEAM: 8 FCM - SG_ AHB_DUTY : 47|8@0+ (0.5,0) [0|0] "%" Vector__XXX - SG_ F_AHB : 55|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_AHB : 51|4@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1056 VSC1S08: 8 CGW - SG_ YR1Z : 7|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV - SG_ YR2Z : 23|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV - SG_ GL1Z : 39|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS - SG_ GL2Z : 47|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS - SG_ YRGSDIR : 55|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,SCS - SG_ GLZS : 51|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ YRZF : 50|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRZS : 49|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRZKS : 48|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ VSC08SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - -BO_ 1083 AUTOPARK_STATUS: 8 IPAS - SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX - -BO_ 1161 RSA1: 8 FCM - SG_ TSGN1 : 7|8@0+ (1,0) [0|0] "" XXX - SG_ TSGNGRY1 : 12|3@0+ (1,0) [0|0] "" XXX - SG_ TSGNHLT1 : 9|2@0+ (1,0) [0|0] "" XXX - SG_ SPDVAL1 : 23|8@0+ (1,0) [0|0] "km/h" XXX - SG_ SPLSGN1 : 31|4@0+ (1,0) [0|0] "" XXX - SG_ SPLSGN2 : 27|4@0+ (1,0) [0|0] "" XXX - SG_ TSGN2 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ TSGNGRY2 : 44|3@0+ (1,0) [0|0] "" XXX - SG_ TSGNHLT2 : 41|2@0+ (1,0) [0|0] "" XXX - SG_ SPDVAL2 : 55|8@0+ (1,0) [0|0] "" XXX - SG_ BZRRQ_P : 63|2@0+ (1,0) [0|0] "" XXX - SG_ BZRRQ_A : 61|2@0+ (1,0) [0|0] "" XXX - SG_ SYNCID1 : 59|4@0+ (1,0) [0|0] "" XXX - -BO_ 1162 RSA2: 8 FCM - SG_ TSGN3 : 7|8@0+ (1,0) [0|0] "" XXX - SG_ TSGNGRY3 : 12|3@0+ (1,0) [0|0] "" XXX - SG_ TSGNHLT3 : 9|2@0+ (1,0) [0|0] "" XXX - SG_ SPLSGN3 : 31|4@0+ (1,0) [0|0] "" XXX - SG_ SPLSGN4 : 27|4@0+ (1,0) [0|0] "" XXX - SG_ TSGN4 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ TSGNGRY4 : 44|3@0+ (1,0) [0|0] "" XXX - SG_ TSGNHLT4 : 41|2@0+ (1,0) [0|0] "" XXX - SG_ DPSGNREQ : 54|1@0+ (1,0) [0|0] "" XXX - SG_ SGNNUMP : 53|3@0+ (1,0) [0|0] "" XXX - SG_ SGNNUMA : 50|3@0+ (1,0) [0|0] "" XXX - SG_ SPDUNT : 63|2@0+ (1,0) [0|0] "" XXX - SG_ TSRWMSG : 61|2@0+ (1,0) [0|0] "" XXX - SG_ SYNCID2 : 59|4@0+ (1,0) [0|0] "" XXX - -BO_ 1163 RSA3: 8 FCM - SG_ TSREQPD : 7|1@0+ (1,0) [0|0] "" XXX - SG_ TSRMSW : 6|1@0+ (1,0) [0|0] "" XXX - SG_ OTSGNNTM : 5|2@0+ (1,0) [0|0] "" XXX - SG_ NTLVLSPD : 3|2@0+ (1,0) [0|0] "" XXX - SG_ OVSPNTM : 1|2@0+ (1,0) [0|0] "" XXX - SG_ OVSPVALL : 11|4@0+ (1,-5) [0|0] "" XXX - SG_ OVSPVALM : 19|4@0+ (1,-5) [0|0] "" XXX - SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX - SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX - -BO_ 1408 VIN_PART_1: 8 CGW - SG_ VIN_1 : 7|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_2 : 15|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_3 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_4 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_5 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_6 : 47|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_7 : 55|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_8 : 63|8@0+ (1,0) [0|0] "" XXX - -BO_ 1409 VIN_PART_2: 8 CGW - SG_ VIN_9 : 7|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_10 : 15|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_11 : 23|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_12 : 31|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_13 : 39|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_14 : 47|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_15 : 55|8@0+ (1,0) [0|0] "" XXX - SG_ VIN_16 : 63|8@0+ (1,0) [0|0] "" XXX - -BO_ 1410 VIN_PART_3: 8 CGW - SG_ VIN_17 : 7|8@0+ (1,0) [0|0] "" XXX - -BO_ 1552 BODY_CONTROL_STATE_2: 8 XXX - SG_ UI_SPEED : 23|8@0+ (1,0) [0|255] "" XXX - SG_ METER_SLIDER_BRIGHTNESS_PCT : 30|7@0+ (1,0) [12|100] "%" XXX - SG_ METER_SLIDER_LOW_BRIGHTNESS : 37|1@0+ (1,0) [0|1] "" XXX - SG_ METER_SLIDER_DIMMED : 38|1@0+ (1,0) [0|1] "" XXX - SG_ UNITS : 63|3@0+ (1,0) [1|4] "" XXX - -BO_ 1553 UI_SETTING: 8 XXX - SG_ UNITS : 26|2@0+ (1,0) [0|3] "" XXX - SG_ ODOMETER : 39|32@0+ (1,0) [0|1048575] "" XXX - -BO_ 1556 BLINKERS_STATE: 8 XXX - SG_ BLINKER_BUTTON_PRESSED : 15|1@0+ (1,0) [0|1] "" XXX - SG_ HAZARD_LIGHT : 27|1@0+ (1,0) [0|1] "" XXX - SG_ TURN_SIGNALS : 29|2@0+ (1,0) [0|3] "" XXX - -BO_ 1568 BODY_CONTROL_STATE: 8 XXX - SG_ METER_DIMMED : 38|1@0+ (1,0) [0|1] "" XXX - SG_ PARKING_BRAKE : 60|1@0+ (1,0) [0|1] "" XXX - SG_ SEATBELT_DRIVER_UNLATCHED : 62|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FL : 45|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 42|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 43|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 44|1@0+ (1,0) [0|1] "" XXX - -BO_ 1570 LIGHT_STALK: 8 SCM - SG_ AUTO_HIGH_BEAM : 37|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_FOG : 27|1@0+ (1,0) [0|1] "" XXX - SG_ PARKING_LIGHT : 28|1@0+ (1,0) [0|1] "" XXX - SG_ LOW_BEAM : 29|1@0+ (1,0) [0|1] "" XXX - SG_ HIGH_BEAM : 30|1@0+ (1,0) [0|1] "" XXX - SG_ DAYTIME_RUNNING_LIGHT : 31|1@0+ (1,0) [0|1] "" XXX - -BO_ 1571 CERTIFICATION_ECU: 8 CGW - SG_ DOOR_LOCK_FEEDBACK_LIGHT : 15|1@0+ (1,0) [0|0] "" XXX - SG_ KEYFOB_LOCKING_FEEDBACK_LIGHT : 61|1@0+ (1,0) [0|0] "" XXX - SG_ KEYFOB_UNLOCKING_FEEDBACK_LIGHT : 62|1@0+ (1,0) [0|0] "" XXX - -BO_ 1592 DOOR_LOCKS: 8 XXX - SG_ LOCK_STATUS_CHANGED : 15|1@0+ (1,0) [0|1] "" XXX - SG_ LOCK_STATUS : 20|1@0+ (1,0) [0|1] "" XXX - SG_ LOCKED_VIA_KEYFOB : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 1779 ADAS_TOGGLE_STATE: 8 XXX - SG_ OK_BUTTON_PRESSED : 15|1@0+ (1,0) [0|1] "" BCM - SG_ SWS_TOGGLE_CMD : 24|1@0+ (1,0) [0|1] "" XXX - SG_ SWS_SENSITIVITY_CMD : 26|2@0+ (1,0) [0|3] "" XXX - SG_ LKAS_ON_CMD : 28|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_OFF_CMD : 29|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_SENSITIVITY_HI_CMD : 30|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_SENSITIVITY_STD_CMD : 31|1@0+ (1,0) [0|1] "" XXX - SG_ IPAS_TOGGLE : 34|1@0+ (1,0) [0|1] "" XXX - SG_ BSM_TOGGLE_CMD : 37|1@0+ (1,0) [0|1] "" XXX - SG_ IPAS_SONAR_TOGGLE : 38|1@0+ (1,0) [0|1] "" XXX - SG_ PCS_TOGGLE_CMD : 40|1@0+ (1,0) [0|1] "" XXX - SG_ PCS_SENSITIVITY_CMD : 41|1@0+ (1,0) [0|1] "" XXX - -CM_ SG_ 36 YAW_RATE "verify"; -CM_ SG_ 36 ACCEL_X "x-axis accel"; -CM_ SG_ 37 STEER_FRACTION "1/15th of the signal STEER_ANGLE, which is 1.5 deg; note that 0x8 is never set"; -CM_ SG_ 37 STEER_RATE "factor is tbd"; -CM_ SG_ 119 FDRVREAL "ICE only: force applied by wheels from the engine. includes creeping force, regen, and engine braking"; -CM_ SG_ 166 BRAKE_FORCE "hybrid only: force applied by friction brakes from user or ACC command"; -CM_ SG_ 295 FDRVREAL "hybrid only: force applied by wheels from the engine and/or electric motors. includes creeping force, regen, and engine braking"; -CM_ SG_ 467 ACC_FAULTED "1 when ACC is faulted and the PCM disallows engagement"; -CM_ SG_ 467 SET_SPEED "43 km/h are shown as 28 mph, so conversion isn't perfect"; -CM_ SG_ 467 LOW_SPEED_LOCKOUT "in low speed lockout, system would always disengage below 28mph"; -CM_ SG_ 560 BRAKE_PRESSED "another brake pressed?"; -CM_ SG_ 581 GAS_PEDAL "it seems slightly filtered"; -CM_ SG_ 608 STEER_TORQUE_DRIVER "driver torque"; -CM_ SG_ 608 STEER_OVERRIDE "set when driver torque exceeds a certain value"; -CM_ SG_ 614 ANGLE "set to measured angle when ipas control isn't active"; -CM_ SG_ 800 SLOPE_ANGLE "potentially used by the PCM to compensate for road pitch"; -CM_ SG_ 800 ACCEL "filtered ego acceleration"; -CM_ SG_ 835 ACC_TYPE "if 2, car is likely to have a permanent low speed lockout. 1 is ok"; -CM_ SG_ 835 RADAR_DIRTY "Display Clean Radar Sensor message on HUD"; -CM_ SG_ 835 ACC_MALFUNCTION "display ACC fault on dash if set to 1"; -CM_ SG_ 835 ACC_CUT_IN "Display blinking yellow lead if set to 1"; -CM_ SG_ 835 DISTANCE "Cycle through ACC following distance from long, mid, short when set to 1"; -CM_ SG_ 835 ITS_CONNECT_LEAD "Displayed when lead car is capable of ITS Connect"; -CM_ SG_ 835 LEAD_VEHICLE_STOPPED "Set to 1 when lead is stopped, likely only used in older TSS-P vehicles"; -CM_ SG_ 835 ALLOW_LONG_PRESS "Enable Toyota's factory set speed increment behaviour, available on both metrics cars and imperial unit cars"; -CM_ SG_ 835 PERMIT_BRAKING "Original ACC has this going high when a car in front is detected. In openpilot and before the PERMIT_BRAKING name, this was 'SET_ME_1' and is hardcoded to be high. Unsure if only informational or has an effect though existing usage in openpilot is to always set it to 1. Originally 'PMTBRKG' in the leaked toyota_2017_ref_pt.dbc file and name expansion speculated to be PerMiT BRaKinG."; -CM_ SG_ 835 ACCEL_CMD_ALT "Copy of main ACCEL_CMD, but across 8 bits instead of 16 bits like ACCEL_CMD. Unsure if only informational or has an effect. Likely informational as existing openpilot sets this to 0 and no loss of functionality observed. Originally 'AT_RAW' in leaked toyota_2017_ref_pt.dbc file."; -CM_ SG_ 865 GAS_PEDAL_ALT "copy of main GAS_PEDAL. Both use 8 bits. Might indicate that this message is for pedals."; -CM_ SG_ 865 CLUTCH_RELEASED "boolean of clutch for 6MT."; -CM_ SG_ 865 ACCEL_NET "net positive acceleration (gas) applied by the system if on flat ground, may not include creeping force"; -CM_ SG_ 865 ACC_FAULTED "1 when ACC is faulted and the PCM disallows engagement. Also describes a lockout when the ACC_CONTROL->ACC_MALFUNCTION bit is set."; -CM_ SG_ 921 UI_SET_SPEED "set speed shown in the vehicle's UI with the vehicle's unit"; -CM_ SG_ 921 TEMP_ACC_FAULTED "1 when the UI is displaying or playing fault-related alerts or sounds. Also 1 when pressing main on."; -CM_ SG_ 951 BRAKE_LIGHTS_ACC "brake lights when ACC commands decel"; -CM_ SG_ 956 GEAR "on 6MT, only R shows."; -CM_ SG_ 1009 UI_SET_SPEED "units seem to be whatever the car is set to"; -CM_ SG_ 1041 PCS_INDICATOR "Pre-Collision System Indicator"; -CM_ SG_ 1041 PCS_SENSITIVITY "Pre-Collision System Sensitivity"; -CM_ SG_ 1041 PCS_DUST "alert: Front Camera Low Visibility Unavailable See Owner's Manual"; -CM_ SG_ 1041 PCS_DUST2 "alert: Pre-Collision System Radar Sensor Blocked Unavailable Clean Radar Sensor"; -CM_ SG_ 1041 PCS_TEMP "alert: Front Camera Out of Temperature Range Unavailable Wait until Normal Temperature"; -CM_ SG_ 1041 PCS_TEMP2 "alert: Pre-Collision System Out of Temperature Range Unavailable See Owner's Manual"; -CM_ SG_ 1041 FRD_ADJ "alert: ERROR ADJUSTING FRONT RADAR BEAM"; -CM_ SG_ 1042 LDA_SA_TOGGLE "LDA Steering Assist Toggle"; -CM_ SG_ 1042 LDW_EXIST "Unclear what this is, it's usually set to 0"; -CM_ SG_ 1042 LDA_SENSITIVITY "LDA Sensitivity"; -CM_ SG_ 1042 LDA_ON_MESSAGE "Display LDA Turned ON message"; -CM_ SG_ 1042 REPEATED_BEEPS "LDA audible warning"; -CM_ SG_ 1042 LDA_UNAVAILABLE_QUIET "LDA toggles and sensitivity settings are greyed out if set to 1"; -CM_ SG_ 1042 LDA_MESSAGES "Various LDA Messages"; -CM_ SG_ 1042 LDA_FRONT_CAMERA_BLOCKED "originally LDAFCVB, LDA related settings are greyed out if set to 1"; -CM_ SG_ 1042 TAKE_CONTROL "Please Control Steering Wheel warning"; -CM_ SG_ 1042 LANE_SWAY_TOGGLE "Lane Sway Warning System SWS Switch"; -CM_ SG_ 1042 LANE_SWAY_WARNING "Lane Sway Warning System Triggered"; -CM_ SG_ 1042 LANE_SWAY_FLD "Unknown signal for Lane Sway Warning System, set to 7 on stock system when SWS is enabled, 0 when SWS is disabled"; -CM_ SG_ 1042 LANE_SWAY_BUZZER "Similar to TWO_BEEPS"; -CM_ SG_ 1042 SET_ME_X01 "empty bit on leaked dbc, always set to 1 during normal operations"; -CM_ SG_ 1042 SET_ME_X02 "empty bit on leaked dbc, always set to 2 during normal operations"; -CM_ SG_ 1083 STATE "when the dashboard button is pressed, the value changes from zero to non-zero"; -CM_ SG_ 1161 SPDVAL1 "Numbers 0-199 is displayed, 200-254 displays circle without number and 255 is for no limit."; -CM_ SG_ 1161 SYNCID1 "counter from 1 to f at 1 Hz"; -CM_ SG_ 1161 SPDVAL2 "conditional speed value 70"; -CM_ SG_ 1162 SGNNUMP "1 if SPDVAL1 is set, otherwise 0"; -CM_ SG_ 1162 SYNCID2 "counter from 1 to f at 1 Hz"; -CM_ SG_ 1163 TSREQPD "always 1"; -CM_ SG_ 1163 TSRMSW "always 1"; -CM_ SG_ 1163 OTSGNNTM "always 3"; -CM_ SG_ 1163 NTLVLSPD "always 3"; -CM_ SG_ 1163 OVSPNTM "always 3"; -CM_ SG_ 1163 OVSPVALL "-5 at start then 2 after 2 seconds"; -CM_ SG_ 1163 OVSPVALM "-5 at start then 5 after 2 seconds"; -CM_ SG_ 1163 OVSPVALH "-5 at start then 10 after 2 seconds"; -CM_ SG_ 1163 TSRSPU "always 1"; -CM_ SG_ 1552 UI_SPEED "Does not appear to match dash"; -CM_ SG_ 1552 METER_SLIDER_BRIGHTNESS_PCT "Combination display brightness setting, scales from 12 per cent to 100 per cent, reflects combination meter settings only, not linked with headlight state"; -CM_ SG_ 1552 METER_SLIDER_LOW_BRIGHTNESS "Combination display low brightness mode, also controls footwell lighting"; -CM_ SG_ 1552 METER_SLIDER_DIMMED "Combination display slider not at max, reflects combination meter settings only, not linked with headlight state"; -CM_ SG_ 1553 ODOMETER "Unit is dependent upon units signal"; -CM_ SG_ 1592 LOCK_STATUS_CHANGED "1 on rising edge of lock/unlocking"; -CM_ SG_ 1592 LOCK_STATUS "The next 3 bits always seem to follow this signal."; -CM_ SG_ 1592 LOCKED_VIA_KEYFOB "1 for as long as car is locked with key fob or door handle touch"; - -VAL_ 295 GEAR 0 "P" 1 "R" 2 "N" 3 "D" 4 "B"; -VAL_ 467 LOW_SPEED_LOCKOUT 2 "low speed locked" 1 "ok"; -VAL_ 467 PCM_FOLLOW_DISTANCE 1 "far" 2 "medium" 3 "close"; -VAL_ 614 STATE 3 "enabled" 1 "disabled"; -VAL_ 614 DIRECTION_CMD 3 "right" 2 "center" 1 "left"; -VAL_ 835 ACC_TYPE 2 "permanent low speed lockout" 1 "ok"; -VAL_ 835 ACC_MALFUNCTION 1 "faulted" 0 "ok"; -VAL_ 835 ACC_CUT_IN 1 "CUT-IN Detected" 0 "clear"; -VAL_ 835 ALLOW_LONG_PRESS 2 "set speed increase by 5 speed units regardless" 1 "set speed increase by 1 speed unit on short press, 5 speed units on long press"; -VAL_ 865 CLUTCH_RELEASED 0 "clutch pressed any amount" 1 "clutch released"; -VAL_ 921 CRUISE_CONTROL_STATE 2 "disabled" 11 "hold" 10 "hold_waiting_user_cmd" 6 "enabled" 5 "faulted"; -VAL_ 921 DISTANCE_LINES 0 "not displayed" 1 "close" 2 "medium" 3 "far"; -VAL_ 956 SPORT_ON 0 "off" 1 "on"; -VAL_ 956 GEAR 0 "D" 1 "S" 8 "N" 16 "R" 32 "P"; -VAL_ 956 SPORT_GEAR_ON 0 "off" 1 "on"; -VAL_ 956 SPORT_GEAR 1 "S1" 2 "S2" 3 "S3" 4 "S4" 5 "S5" 6 "S6"; -VAL_ 956 ECON_ON 0 "off" 1 "on"; -VAL_ 956 B_GEAR_ENGAGED 0 "off" 1 "on"; -VAL_ 956 DRIVE_ENGAGED 0 "off" 1 "on"; -VAL_ 1005 REVERSE_CAMERA_GUIDELINES 3 "No guidelines" 2 "Static guidelines" 1 "Active guidelines"; -VAL_ 1009 PCM_FOLLOW_DISTANCE 1 "far" 2 "medium" 3 "close"; -VAL_ 1041 PCS_INDICATOR 2 "PCS Faulted" 1 "PCS Turned Off By User" 0 "PCS Enabled"; -VAL_ 1041 PCS_SENSITIVITY 64 "high sensitivity" 128 "mid sensitivity" 192 "low sensitivity" 0 "off"; -VAL_ 1042 LDA_ALERT 3 "hold with continuous beep" 2 "LDA unavailable" 1 "hold" 0 "none"; -VAL_ 1042 BARRIERS 3 "left" 2 "right" 1 "both" 0 "none"; -VAL_ 1042 RIGHT_LINE 3 "orange" 2 "faded" 1 "solid" 0 "none"; -VAL_ 1042 LKAS_STATUS 1 "on" 0 "off"; -VAL_ 1042 LEFT_LINE 3 "orange" 2 "faded" 1 "solid" 0 "none"; -VAL_ 1042 LDA_ON_MESSAGE 2 "Lane Departure Alert Turned ON, Steering Assist Inactive" 1 "Lane Departure Alert Turned ON, Steering Assist Active" 0 "clear"; -VAL_ 1042 LDA_SA_TOGGLE 2 "steering assist off" 1 "steering assist on"; -VAL_ 1042 LDA_SENSITIVITY 2 "standard" 1 "high" 0 "undefined"; -VAL_ 1042 LDA_MESSAGES 4 "lda unavailable at this speed" 1 "lda unavailable below approx 50km/h" 0 "ok"; -VAL_ 1042 LDA_FRONT_CAMERA_BLOCKED 1 "lda unavailable" 0 "ok"; -VAL_ 1042 TAKE_CONTROL 1 "take control" 0 "ok"; -VAL_ 1042 LANE_SWAY_WARNING 3 "ok" 2 "orange please take a break" 1 "prompt would you like to take a break" 0 "ok"; -VAL_ 1042 LANE_SWAY_BUZZER 3 "ok" 2 "beep twice" 1 "beep twice" 0 "ok"; -VAL_ 1161 TSGN1 1 "speed sign" 0 "none"; -VAL_ 1161 TSGN2 1 "speed sign" 0 "none"; -VAL_ 1161 SPLSGN2 15 "conditional blank" 4 "wet road" 5 "rain" 0 "none"; -VAL_ 1162 TSGN3 0 "none" 1 "speed sign" 2 "0 unlimited" 7 "unlimited" 16 "highway" 17 "no highway" 18 "motorway" 19 "no motorway" 20 "in city" 21 "outside city" 22 "pedestrian area" 23 "no pedestrian area" 65 "no overtaking left" 66 "no overtaking right" 67 "overtaking allowed again" 81 "no right turn" 97 "stop" 105 "yield" 113 "stop" 114 "yield us" 129 "no entry" 138 "no entry tss2" 145 "do not enter"; -VAL_ 1162 SPLSGN3 15 "conditional blank" 4 "wet road" 5 "rain" 0 "none"; -VAL_ 1552 METER_SLIDER_LOW_BRIGHTNESS 1 "Low brightness mode, footwell lights off" 0 "Normal mode, footwell lights on"; -VAL_ 1552 METER_SLIDER_DIMMED 1 "Dimmed" 0 "Not Dimmed"; -VAL_ 1552 UNITS 1 "km (km/L)" 2 "km (L/100km)" 3 "miles (MPG US)" 4 "miles (MPG Imperial)"; -VAL_ 1553 UNITS 1 "km" 2 "miles"; -VAL_ 1556 TURN_SIGNALS 3 "none" 2 "right" 1 "left"; -VAL_ 1556 BLINKER_BUTTON_PRESSED 1 "button pressed" 0 "not pressed"; -VAL_ 1592 LOCK_STATUS 0 "locked" 1 "unlocked"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc deleted file mode 100644 index 20680225aa..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc +++ /dev/null @@ -1,56 +0,0 @@ -BO_ 466 PCM_CRUISE: 8 XXX - SG_ GAS_RELEASED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_ACTIVE : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_BRAKING : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ACCEL_NET : 23|16@0- (0.0009765625,0) [-20|20] "m/s^2" XXX - SG_ NEUTRAL_FORCE : 39|16@0- (2,0) [-65536|65534] "N" XXX - SG_ CRUISE_STATE : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CANCEL_REQ : 49|1@1+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 643 PRE_COLLISION: 7 DSU - SG_ _COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ FORCE : 23|16@0- (2,0) [0|255] "N" XXX - SG_ SET_ME_X002 : 33|8@0+ (1,0) [0|3] "" XXX - SG_ BRAKE_STATUS : 39|3@0+ (1,0) [0|255] "" XXX - SG_ STATE : 36|3@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X003 : 40|1@0+ (1,0) [0|1] "" XXX - SG_ PRECOLLISION_ACTIVE : 41|1@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 705 GAS_PEDAL: 8 XXX - SG_ GAS_RELEASED : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ETQLVSC : 15|16@0- (0.03125,0) [0|0] "Nm" XXX - SG_ ETQREAL : 31|16@0- (0.03125,0) [0|0] "Nm" SCS - SG_ ETQISC : 47|8@0+ (1,-192) [0|0] "Nm" XXX - SG_ GAS_PEDAL : 55|8@0+ (0.5,0) [0|0] "%" DS1,FCM - SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 740 STEERING_LKA: 5 XXX - SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX - SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 6|6@0+ (1,0) [0|63] "" XXX - SG_ SET_ME_1 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_TORQUE_CMD : 15|16@0- (1,0) [0|65535] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 836 PRE_COLLISION_2: 8 DSU - SG_ DSS1GDRV : 7|10@0- (0.1,0) [0|0] "m/s^2" Vector__XXX - SG_ PCSALM : 17|1@0+ (1,0) [0|0] "" FCM - SG_ IBTRGR : 27|1@0+ (1,0) [0|0] "" FCM - SG_ PBATRGR : 30|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PREFILL : 33|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVSTRGR : 36|1@0+ (1,0) [0|0] "" SCS - SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" XXX - -CM_ SG_ 466 NEUTRAL_FORCE "force in newtons the engine/electric motors are applying without any acceleration commands or user input"; -CM_ SG_ 466 ACC_BRAKING "whether brakes are being actuated from ACC command"; -CM_ SG_ 466 ACCEL_NET "net negative acceleration (braking) applied by the system if on flat ground"; -CM_ SG_ 466 CRUISE_STATE "Active state is 8, if standstill is requested will switch to state 11(3 sec timer), after timer is elapsed will switch into state 7(standstill). If plus button was pressed - status 9, minus button pressed - status 10"; -CM_ SG_ 643 _COUNTER "only used on cars that use this msg for cruise control"; -CM_ SG_ 643 BRAKE_STATUS "only used on cars that use this msg for cruise control"; -CM_ SG_ 643 PRECOLLISION_ACTIVE "set 0.5s before any braking"; - -VAL_ 466 CRUISE_STATE 11 "timer_3sec" 10 "adaptive click down" 9 "adaptive click up" 8 "adaptive engaged" 7 "standstill" 6 "non-adaptive click up" 5 "non-adaptive click down" 4 "non-adaptive hold down" 3 "non-adaptive hold up" 2 "non-adaptive being engaged" 1 "non-adaptive engaged" 0 "off"; -VAL_ 643 STATE 0 "normal" 1 "adaptive_cruise_control" 3 "emergency_braking"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc deleted file mode 100644 index f1bf8f8b07..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc +++ /dev/null @@ -1,22 +0,0 @@ -CM_ "IMPORT _toyota_2017.dbc"; -CM_ "IMPORT _toyota_adas_standard.dbc"; - -BO_ 548 BRAKE_MODULE: 8 XXX - SG_ BRAKE_PRESSURE : 43|12@0+ (1,0) [0|4047] "" XXX - SG_ BRAKE_PRESSED : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 610 EPS_STATUS: 5 EPS - SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX - SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 1178 BRAKE_RELATED: 8 XXX - SG_ BRAKE_PRESSED : 48|1@0+ (1,0) [0|1] "" XXX - -CM_ SG_ 548 BRAKE_PRESSURE "seems prop to pedal force"; -CM_ SG_ 548 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; -CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; - -VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; -VAL_ 610 LKA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc deleted file mode 100644 index a7ffbf1564..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc +++ /dev/null @@ -1,78 +0,0 @@ -CM_ "IMPORT _toyota_2017.dbc"; -CM_ "IMPORT _toyota_adas_standard.dbc"; - -BO_ 401 STEERING_LTA: 8 XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ SETME_X3 : 29|2@0+ (1,0) [0|3] "" XXX - SG_ PERCENTAGE : 39|8@0+ (1,0) [0|255] "" XXX - SG_ TORQUE_WIND_DOWN : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ANGLE : 55|8@0- (0.5,0) [0|255] "" XXX - SG_ STEER_ANGLE_CMD : 15|16@0- (0.0573,0) [-540|540] "" XXX - SG_ STEER_REQUEST_2 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ LKA_ACTIVE : 26|1@0+ (1,0) [0|1] "" XXX - SG_ CLEAR_HOLD_STEERING_ALERT : 30|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 6|6@0+ (1,0) [0|255] "" XXX - SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SETME_X1 : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 550 BRAKE_MODULE: 8 XXX - SG_ BRAKE_PRESSURE : 0|9@0+ (1,0) [0|511] "" XXX - SG_ BRAKE_POSITION : 16|9@0+ (1,0) [0|511] "" XXX - SG_ BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 610 EPS_STATUS: 8 EPS - SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX - SG_ LTA_STATE : 15|5@0+ (1,0) [0|31] "" XXX - SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 881 LTA_RELATED: 8 FCM - SG_ GAS_PEDAL : 15|8@0+ (0.005,0) [0|1] "" XXX - SG_ STEER_ANGLE : 23|16@0- (0.0573,0) [-500|500] "" XXX - SG_ TURN_SIGNALS : 35|2@0+ (1,0) [0|3] "" XXX - SG_ UNKNOWN_2 : 58|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_SA_TOGGLE : 59|1@0+ (1,0) [0|1] "" XXX - SG_ LTA_STEER_REQUEST : 60|1@0+ (1,0) [0|1] "" XXX - SG_ UNKNOWN : 61|1@0+ (1,0) [0|1] "" XXX - SG_ STEERING_PRESSED : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 1014 BSM: 8 XXX - SG_ L_ADJACENT : 0|1@0+ (1,0) [0|1] "" XXX - SG_ L_APPROACHING : 8|1@0+ (1,0) [0|1] "" XXX - SG_ R_ADJACENT : 1|1@0+ (1,0) [0|1] "" XXX - SG_ R_APPROACHING : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ADJACENT_ENABLED : 7|1@0+ (1,0) [0|1] "" XXX - SG_ APPROACHING_ENABLED : 15|1@0+ (1,0) [0|1] "" XXX - -CM_ SG_ 401 PERCENTAGE "driver override percentage (0-100), very close to steeringPressed in OP"; -CM_ SG_ 401 TORQUE_WIND_DOWN "used to wind down torque on user override"; -CM_ SG_ 401 ANGLE "angle of car relative to lane center on LTA camera"; -CM_ SG_ 401 STEER_ANGLE_CMD "desired angle, OEM steers up to 95 degrees, no angle limit but torque will bottom out"; -CM_ SG_ 401 CLEAR_HOLD_STEERING_ALERT "set to 1 when user clears LKAS_HUD->LDA_ALERT ('Hold Steering') by applying torque to steering wheel"; -CM_ SG_ 401 STEER_REQUEST "enable bit for steering, 1 to steer, 0 to not"; -CM_ SG_ 401 STEER_REQUEST_2 "enable bit for steering, 1 to steer, 0 to not"; -CM_ SG_ 401 LKA_ACTIVE "1 when using LTA for LKA"; -CM_ SG_ 401 SETME_X1 "usually 1, seen at 0 on some South American Corollas indicating lack of stock Lane Tracing Assist"; -CM_ SG_ 401 SETME_X3 "almost completely correlates with Toyota Safety Sense version, but may instead describe max torque when using LTA. if TSS 2.5 or 2022 RAV4, this is always 1. if TSS 2.0 this is always 3 (or 0 on Alphard, Highlander, NX)"; -CM_ SG_ 550 BRAKE_PRESSURE "seems prop to pedal force"; -CM_ SG_ 550 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; -CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; -CM_ SG_ 881 GAS_PEDAL "not set on all cars, only seen on TSS 2.5 Camry Hybrid so far"; -CM_ SG_ 881 STEER_ANGLE "matches STEER_TORQUE_SENSOR->STEER_ANGLE"; -CM_ SG_ 881 TURN_SIGNALS "flipped on some cars"; -CM_ SG_ 881 LDA_SA_TOGGLE "not applicable for all cars"; -CM_ SG_ 881 LTA_STEER_REQUEST "only applicable for TSS 2.5: matches STEERING_LTA->STEER_REQUEST"; -CM_ SG_ 881 UNKNOWN "related to steering wheel angle"; -CM_ SG_ 881 STEERING_PRESSED "only applicable for TSS 2.5: low sensitivity steering wheel pressed by driver signal"; -CM_ SG_ 1014 L_ADJACENT "vehicle adjacent left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 L_APPROACHING "vehicle approaching from left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 R_ADJACENT "vehicle adjacent right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 R_APPROACHING "vehicle approaching from right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 ADJACENT_ENABLED "when BSM is enabled in settings, this is on along with APPROACHING_ENABLED. this controls bsm alert visibility"; -CM_ SG_ 1014 APPROACHING_ENABLED "when BSM is enabled in settings, this is on along with ADJACENT_ENABLED. this controls bsm alert visibility"; - -VAL_ 401 SETME_X3 3 "TSS 2.0" 1 "TSS 2.5 or 2022 RAV4" 0 "TSS 2.0 on Alphard, Highlander, NX"; -VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; -VAL_ 610 LKA_STATE 25 "temporary_fault" 17 "permanent_fault" 11 "lka_missing_unavailable2" 9 "temporary_fault2" 5 "active" 3 "lka_missing_unavailable" 1 "standby"; -VAL_ 610 LTA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 3 "lta_missing_unavailable" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc deleted file mode 100644 index eefe990667..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc +++ /dev/null @@ -1,156 +0,0 @@ -CM_ "IMPORT _toyota_2017.dbc"; - -BO_ 15 SECOC_SYNCHRONIZATION: 8 XXX - SG_ TRIP_CNT : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ RESET_CNT : 23|20@0+ (1,0) [0|65535] "" XXX - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - -BO_ 257 BRAKE_MODULE: 8 XXX - SG_ BRAKE_PRESSED : 3|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_PRESSURE_1 : 31|8@0+ (1,0) [0|15] "" XXX - SG_ BRAKE_PRESSURE_2 : 61|6@0+ (1,0) [0|63] "" XXX - -BO_ 278 GAS_PEDAL: 8 XXX - SG_ GAS_PEDAL_ACC : 7|8@0+ (0.005,0) [0|255] "" XXX - SG_ GAS_PEDAL_USER : 15|8@0+ (0.005,0) [0|255] "" XXX - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 305 STEERING_LTA_2: 8 XXX - SG_ STEER_REQUEST_2 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_REQUEST : 3|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 13|6@0+ (1,0) [0|63] "" XXX - SG_ STEER_ANGLE_CMD : 23|16@0- (0.0573,0) [0|65535] "" XXX - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 374 PCM_CRUISE: 8 XXX - SG_ CRUISE_ACTIVE : 5|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_STATE : 31|4@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 375 PCM_CRUISE_3: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0- (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 21|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ GAS_RELEASED : 30|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 387 ACC_CONTROL_2: 8 XXX - SG_ ACCEL_CMD : 7|16@0- (0.001,0) [-20|20] "m/s^2" HCU - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 401 STEERING_LTA: 8 XXX - SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 6|6@0+ (1,0) [0|255] "" XXX - SG_ SETME_X1 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_ANGLE_CMD : 15|16@0- (0.0573,0) [-540|540] "" XXX - SG_ STEER_REQUEST_2 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ LKA_ACTIVE : 26|1@0+ (1,0) [0|1] "" XXX - SG_ SETME_X3 : 29|2@0+ (1,0) [0|3] "" XXX - SG_ CLEAR_HOLD_STEERING_ALERT : 30|1@0+ (1,0) [0|1] "" XXX - SG_ PERCENTAGE : 39|8@0+ (1,0) [0|255] "" XXX - SG_ TORQUE_WIND_DOWN : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ANGLE : 55|8@0- (0.5,0) [0|255] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 418 CRUISE_RELATED: 8 XXX - SG_ CRUISE_ACTIVE : 7|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 589 PCM_CRUISE_4: 8 PCM - SG_ DISTANCE : 2|1@0+ (1,0) [0|1] "" XXX - SG_ CANCEL : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DECREASE : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ENABLE : 6|1@0+ (1,0) [0|1] "" XXX - SG_ INCREASE : 7|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 27|4@0+ (1,0) [0|15] "" XXX - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 610 EPS_STATUS: 8 EPS - SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LTA_STATE : 15|5@0+ (1,0) [0|31] "" XXX - SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX - SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 643 PRE_COLLISION: 8 DSU - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 740 STEERING_LKA: 8 XXX - SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 6|6@0+ (1,0) [0|63] "" XXX - SG_ SET_ME_1 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_TORQUE_CMD : 15|16@0- (1,0) [0|65535] "" XXX - SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 836 PRE_COLLISION_2: 8 DSU - SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX - SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX - SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 881 LTA_RELATED: 8 FCM - SG_ GAS_PEDAL : 15|8@0+ (0.005,0) [0|1] "" XXX - SG_ STEER_ANGLE : 23|16@0- (0.0573,0) [-500|500] "" XXX - SG_ TURN_SIGNALS : 35|2@0+ (1,0) [0|3] "" XXX - SG_ UNKNOWN_2 : 58|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_SA_TOGGLE : 59|1@0+ (1,0) [0|1] "" XXX - SG_ LTA_STEER_REQUEST : 60|1@0+ (1,0) [0|1] "" XXX - SG_ UNKNOWN : 61|1@0+ (1,0) [0|1] "" XXX - SG_ STEERING_PRESSED : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 1014 BSM: 8 XXX - SG_ L_ADJACENT : 0|1@0+ (1,0) [0|1] "" XXX - SG_ R_ADJACENT : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ADJACENT_ENABLED : 7|1@0+ (1,0) [0|1] "" XXX - SG_ L_APPROACHING : 8|1@0+ (1,0) [0|1] "" XXX - SG_ R_APPROACHING : 10|1@0+ (1,0) [0|1] "" XXX - SG_ APPROACHING_ENABLED : 15|1@0+ (1,0) [0|1] "" XXX - -CM_ SG_ 305 STEER_ANGLE_CMD "Used in place of STEERING_LTA.STEER_ANGLE_CMD on SecOC cars"; -CM_ SG_ 387 ACCEL_CMD "Used in place of ACC_CONTROL.ACCEL_CMD on SecOC cars"; -CM_ SG_ 401 STEER_REQUEST "enable bit for steering, 1 to steer, 0 to not"; -CM_ SG_ 401 SETME_X1 "usually 1, seen at 0 on some South American Corollas indicating lack of stock Lane Tracing Assist"; -CM_ SG_ 401 STEER_ANGLE_CMD "desired angle, OEM steers up to 95 degrees, no angle limit but torque will bottom out"; -CM_ SG_ 401 STEER_REQUEST_2 "enable bit for steering, 1 to steer, 0 to not"; -CM_ SG_ 401 LKA_ACTIVE "1 when using LTA for LKA"; -CM_ SG_ 401 SETME_X3 "almost completely correlates with Toyota Safety Sense version, but may instead describe max torque when using LTA. if TSS 2.5 or 2022 RAV4, this is always 1. if TSS 2.0 this is always 3 (or 0 on Alphard, Highlander, NX)"; -CM_ SG_ 401 CLEAR_HOLD_STEERING_ALERT "set to 1 when user clears LKAS_HUD->LDA_ALERT ('Hold Steering') by applying torque to steering wheel"; -CM_ SG_ 401 PERCENTAGE "driver override percentage (0-100), very close to steeringPressed in OP"; -CM_ SG_ 401 TORQUE_WIND_DOWN "used to wind down torque on user override"; -CM_ SG_ 401 ANGLE "angle of car relative to lane center on LTA camera"; -CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; -CM_ SG_ 881 GAS_PEDAL "not set on all cars, only seen on TSS 2.5 Camry Hybrid so far"; -CM_ SG_ 881 STEER_ANGLE "matches STEER_TORQUE_SENSOR->STEER_ANGLE"; -CM_ SG_ 881 TURN_SIGNALS "flipped on some cars"; -CM_ SG_ 881 LDA_SA_TOGGLE "not applicable for all cars"; -CM_ SG_ 881 LTA_STEER_REQUEST "only applicable for TSS 2.5: matches STEERING_LTA->STEER_REQUEST"; -CM_ SG_ 881 UNKNOWN "related to steering wheel angle"; -CM_ SG_ 881 STEERING_PRESSED "only applicable for TSS 2.5: low sensitivity steering wheel pressed by driver signal"; -CM_ SG_ 1014 L_ADJACENT "vehicle adjacent left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 R_ADJACENT "vehicle adjacent right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 ADJACENT_ENABLED "when BSM is enabled in settings, this is on along with APPROACHING_ENABLED. this controls bsm alert visibility"; -CM_ SG_ 1014 L_APPROACHING "vehicle approaching from left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 R_APPROACHING "vehicle approaching from right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; -CM_ SG_ 1014 APPROACHING_ENABLED "when BSM is enabled in settings, this is on along with ADJACENT_ENABLED. this controls bsm alert visibility"; - -VAL_ 401 SETME_X3 3 "TSS 2.0" 1 "TSS 2.5 or 2022 RAV4" 0 "TSS 2.0 on Alphard, Highlander, NX"; -VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; -VAL_ 610 LTA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 3 "lta_missing_unavailable" 1 "standby"; -VAL_ 610 LKA_STATE 25 "temporary_fault" 17 "permanent_fault" 11 "lka_missing_unavailable2" 9 "temporary_fault2" 5 "active" 3 "lka_missing_unavailable" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc deleted file mode 100644 index a8f071c368..0000000000 --- a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc +++ /dev/null @@ -1,20 +0,0 @@ -CM_ "IMPORT _toyota_2017.dbc"; -CM_ "IMPORT _toyota_adas_standard.dbc"; - -BO_ 550 BRAKE_MODULE: 8 XXX - SG_ BRAKE_PRESSURE : 0|9@0+ (1,0) [0|511] "" XXX - SG_ BRAKE_POSITION : 16|9@0+ (1,0) [0|511] "" XXX - SG_ BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 610 EPS_STATUS: 5 EPS - SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX - SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - -CM_ SG_ 550 BRAKE_PRESSURE "seems prop to pedal force"; -CM_ SG_ 550 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; -CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; - -VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; -VAL_ 610 LKA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc deleted file mode 100644 index e1fc1ccbff..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc +++ /dev/null @@ -1,75 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: K182_PACM K43_PSCM K17_EBCM NEO K124_ASCM - - - -BO_ 823 PACMParkAssitCmd: 7 NEO - SG_ RollingCounter : 35|2@0+ (1,0) [0|0] "" NEO - SG_ SteeringWheelChecksum : 47|16@0+ (1,0) [0|0] "" NEO - SG_ SteeringWheelCmd : 23|16@0+ (1,0) [0|0] "" NEO - -BO_ 560 EBCMRegen: 6 K17_EBCM - SG_ Regen : 1|10@0+ (1,0) [0|0] "" NEO - -BO_ 368 EBCMFrictionBrakeStatus: 8 K17_EBCM - SG_ FrictionBrakePressure : 23|16@0+ (1,0) [0|0] "" NEO - -BO_ 789 EBCMFrictionBrakeCmd: 5 K17_EBCM - SG_ RollingCounter : 33|2@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO - -BO_TX_BU_ 823 : K43_PSCM,NEO; -BO_TX_BU_ 789 : NEO,K17_EBCM; - - -CM_ BU_ K182_PACM "Parking Assist Control Module"; -CM_ BU_ K43_PSCM "Power Steering Control Module"; -CM_ BU_ K17_EBCM "Electronic Brake Control Module"; -CM_ BU_ NEO "Comma NEO"; -CM_ BU_ K124_ASCM "Active Safety Control Module"; -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "UseGMParameterIDs" 0; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; - diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc deleted file mode 100644 index 60729e5692..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc +++ /dev/null @@ -1,196 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: -BU_: K16_BECM K114B_HPCM T18_BatteryCharger -BO_ 512 Battery_Module_1: 8 K16_BECM - SG_ Voltage_1_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_1_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Cell_Bank_Number_1 M : 55|3@0+ (1,0) [0|0] "" K16_BECM - -BO_ 514 Battery_Module_2: 8 K16_BECM - SG_ Voltage_2_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_2_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Cell_Bank_Number_2 M : 55|3@0+ (1,0) [0|0] "" K16_BECM - -BO_ 516 Battery_Module_3: 8 K16_BECM - SG_ Voltage_3_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_3_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Cell_Bank_Number_3 M : 55|3@0+ (1,0) [0|0] "" K16_BECM - -BO_ 518 Battery_Module_4: 8 K16_BECM - SG_ Voltage_4_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Voltage_4_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM - SG_ Cell_Bank_Number_4 M : 55|3@0+ (1,0) [0|0] "" K16_BECM - -BO_ 528 Pack_Stats: 8 K16_BECM - SG_ Pack_Voltage : 7|12@0+ (0.125,0) [0|0] "V" K16_BECM - SG_ Pack_Current : 23|8@0- (0.1,-0.1) [0|0] "A" K16_BECM - -BO_ 530 Charger_stats: 6 T18_BatteryCharger - SG_ Charger_HV_Current : 7|13@0+ (0.05,0) [0|0] "A" K16_BECM - SG_ HV_Voltage : 10|10@0+ (0.5,0) [0|0] "V" K16_BECM - SG_ LV_Current : 16|8@0+ (0.2,0) [0|0] "A" K16_BECM - SG_ LV_Voltage : 24|8@0+ (0.1,0) [0|0] "V" K16_BECM - -BO_ 770 Battery_temp: 8 K16_BECM - SG_ Temp_A m0 : 8|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_B m0 : 16|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_C m0 : 24|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_D m0 : 32|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_E m0 : 40|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_F m0 : 48|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_G m1 : 8|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_H m1 : 16|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Temp_I m1 : 24|8@1+ (0.5,-40) [0|0] "C" K16_BECM - SG_ Switch M : 2|1@1+ (1,0) [0|0] "" K16_BECM - -BO_ 782 Charger_Command: 1 T18_BatteryCharger - SG_ Command : 0|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 772 Charger_parameters: 4 T18_BatteryCharger - SG_ Unknown : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ Current : 8|8@1+ (0.05,0) [0|0] "A" Vector__XXX - SG_ Voltage : 23|16@0+ (0.5,0) [0|0] "V" Vector__XXX - -BO_ 1120 Coolant_Temp: 4 K16_BECM - SG_ Inlet_Coolant_Temp : 1|10@0+ (0.125,-40) [0|0] "" Vector__XXX - SG_ Outlet_Coolant_Temp : 17|10@0+ (0.125,-40) [0|0] "" Vector__XXX - -BO_ 778 AC_Stats: 7 T18_BatteryCharger - SG_ Mains_Voltage : 10|2@0+ (1,0) [0|0] "V" Vector__XXX - SG_ Total_Charge : 19|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 776 Charger_status: 5 T18_BatteryCharger - SG_ Status : 20|3@1+ (1,0) [0|0] "" Vector__XXX - -BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; -BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; -BA_DEF_ BO_ "isj1939dbc" INT 0 0; -BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; -BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; -BA_DEF_DEF_ "isj1939dbc" 0; -CM_ BU_ K16_BECM "Battery Energy Control Module"; -CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; -CM_ BU_ T18_BatteryCharger "Battery Charger"; -VAL_ 782 Command 1 "12V_Only" 2 "HV_Only" 3 "12V_and_HV"; -VAL_ 778 Mains_Voltage 0 "Unplugged" 1 "110V" 3 "220V"; -VAL_ 776 Status 0 "Off" 5 "LV_Only" 7 "HV_and_LV" 3 "HV_Only"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc deleted file mode 100644 index 524eeed8be..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc +++ /dev/null @@ -1,118 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: GMLAN NEO -VAL_TABLE_ GearShifter 3 "Park" 0 "Drive/Low" ; -VAL_TABLE_ DriverDoorStatus 1 "Opened" 0 "Closed" ; -VAL_TABLE_ LKAGapButton 2 "???" 1 "??" 0 "None" ; -VAL_TABLE_ CruiseButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_TABLE_ CruiseControlActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ BlinkerStatus 1 "Active" 0 "Inactive" ; - - -BO_ 274923520 DriverDoorStatus: 1 GMLAN - SG_ DriverDoorOpened : 0|1@0+ (1,0) [0|0] "" NEO - -BO_ 272629760 Chime: 5 NEO - SG_ ChimeType : 7|8@0+ (1,0) [0|0] "" GMLAN - SG_ ChimeRepeat : 23|8@0+ (1,0) [0|0] "" GMLAN - SG_ ChimeDuration : 15|8@0+ (1,0) [0|0] "" GMLAN - SG_ ChimeByte5 : 39|8@0+ (1,0) [0|0] "" GMLAN - SG_ ChimeByte4 : 31|8@0+ (1,0) [0|0] "" GMLAN - -BO_ 270581760 BlinkerStatus: 5 GMLAN - SG_ RightBlinker : 6|1@0+ (1,0) [0|0] "" NEO - SG_ LeftBlinker : 7|1@0+ (1,0) [0|0] "" NEO - SG_ BlinkerLight : 25|1@0+ (1,0) [0|0] "" NEO - -BO_ 270794752 SteeringWheelAngle: 8 GMLAN - SG_ SteeringWheelAngle : 39|16@0- (0.0625,0) [-540|540] "deg" NEO - -BO_ 271368192 GearShifter: 8 GMLAN - SG_ GearShifter : 17|2@0+ (1,0) [0|3] "" NEO - -BO_ 271360000 GasPedalRegenCruise: 8 GMLAN - SG_ CruiseControlActive : 56|1@0+ (1,0) [0|0] "" GMLAN - SG_ MaxRegen : 12|1@0+ (1,0) [0|1] "" GMLAN,NEO - SG_ GasPedal : 47|8@0+ (1,0) [0|254] "" GMLAN,NEO - SG_ GearShifter2NotUsed : 55|8@0+ (1,0) [0|255] "" GMLAN,NEO - -BO_ 270860288 BrakePedal: 2 GMLAN - SG_ BrakeLevel : 2|2@0+ (1,0) [0|3] "" NEO - SG_ BrakeSensor : 15|8@0+ (1,0) [0|255] "" NEO - -BO_ 275480576 WheelSpeed: 8 GMLAN - SG_ WheelSpeedFL : 7|16@0+ (0.01,0) [0|70] "yd/s" NEO - SG_ WheelSpeedFR : 39|16@0+ (0.01,0) [0|70] "yd/s" NEO - SG_ WheelSpeedRL : 23|16@0+ (0.01,0) [0|70] "yd/s" NEO - SG_ WheelSpeedRR : 55|16@0+ (0.01,0) [0|70] "yd/s" NEO - -BO_ 270598144 VehicleSpeed: 8 GMLAN - SG_ VehicleSpeed1 : 7|16@0+ (0.01,0) [0|100] "mph" NEO - SG_ VehicleSpeed2 : 39|16@0+ (0.01,0) [0|100] "mph" NEO - -BO_ 276135936 CruiseButtons: 3 GMLAN - SG_ CruiseButtons : 3|3@0+ (1,0) [0|12] "" NEO - -BO_ 276127744 CruiseButtons2: 1 GMLAN - SG_ LKAGapButton : 1|2@0+ (1,0) [0|2] "" NEO - -BO_ 275955897 LeftRadar: 2 GMLAN - SG_ BSM_Indicator_Light : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 275980379 RightRadar: 2 GMLAN - SG_ BSM_Indicator_Light : 0|1@0+ (1,0) [0|1] "" XXX - - - -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; -VAL_ 274923520 DriverDoorOpened 1 "Opened" 0 "Closed" ; -VAL_ 270581760 RightBlinker 1 "Active" 0 "Inactive" ; -VAL_ 270581760 LeftBlinker 1 "Active" 0 "Inactive" ; -VAL_ 270581760 BlinkerLight 1 "Active" 0 "Inactive" ; -VAL_ 271368192 GearShifter 3 "Park" 0 "Drive/Low" ; -VAL_ 271360000 CruiseControlActive 1 "Active" 0 "Inactive" ; -VAL_ 276135936 CruiseButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_ 276127744 LKAGapButton 2 "???" 1 "??" 0 "None" ; -VAL_ 275955897 BSM_Indicator_Light 0 "Disabled" 1 "Enabled"; -VAL_ 275980379 BSM_Indicator_Right 0 "Disabled" 1 "Enabled"; - diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc deleted file mode 100644 index 3f5b15e6f2..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc +++ /dev/null @@ -1,3993 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 2152177664 OTA_Electric_Pwr_Readiness_LS: 1 XXX - SG_ RmtRflshElecPwrRdness : 7|8@0+ (0.025,0) [0|6.375] "AmpHour" XXX - -BO_ 2152013824 Smart_High_Beam_Cust_LS: 1 XXX - SG_ SmrtHgBmAstCstSetAvail : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SmrtHgBmAstCstCurrSetVal : 7|3@0+ (1,0) [0|7] "" XXX - -BO_ 2159255552 ODI_CenterStack_2_BCM_LS: 8 XXX - SG_ ODI_CntrStck2BCM : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159247360 ODI_BCM_2_CenterStack_LS: 8 XXX - SG_ ODI_BCM2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2152046592 Remote_Climate_Control_Req_LS: 5 XXX - SG_ RmClmCtrlHMIActIndReq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RmClmCtrlRcrcSetReq : 3|3@0+ (1,0) [0|7] "" XXX - SG_ RmClmCtrlACSetReq : 10|3@0+ (1,0) [0|7] "" XXX - SG_ RmClmCtrlFrntFanStReq : 15|5@0+ (1,0) [0|31] "" XXX - SG_ RmClmCtrlFLAirDtStReq : 19|4@0+ (1,0) [0|15] "" XXX - SG_ RmClmCtrlClmModSetReq : 23|4@0+ (1,0) [0|15] "" XXX - SG_ RmClmCtrlLtSTempStReq : 29|6@0+ (1,0) [0|63] "" XXX - SG_ RmClmCtrlRrDfgSetReq : 31|2@0+ (1,0) [0|3] "" XXX - SG_ RmClmCtrlRtSTempStReq : 37|6@0+ (1,0) [0|63] "" XXX - SG_ RmClmCtrlSyncSetReq : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152030208 Tuner_Frequency_Request_LS: 8 XXX - SG_ TnrFrqBndReq : 3|4@0+ (1,0) [0|15] "" XXX - SG_ TnrFrqChnlReq : 15|56@0+ (1,0) [0|1] "" XXX - -BO_ 2150531072 Regen_Power_Ind_LS: 4 XXX - SG_ RegPwrLmtdDspPrcnt : 0|9@0- (0.392157,0) [-100.392192|100.000035] "%" XXX - SG_ RegPwrLmtdDspPrcntVs : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RegPwrLmtdIO : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151833600 Heated_Wndshild_CstmrIhbt_Req_LS: 1 XXX - SG_ HtdFrntWSCustRqIhbt : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HtdFrntWSDispReq : 7|2@0+ (1,0) [0|3] "" XXX - -BO_ 2151817216 Heated_Wndshild_Cstmr_Req_LS: 1 XXX - SG_ HtdFrntWSCustRq : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151849984 Seat_Level_Setting_Request_LS: 2 XXX - SG_ AutoThrmlStPasLvlStRq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ AutoThrmlStDrvLvStRq : 5|3@0+ (1,0) [0|7] "" XXX - SG_ AutoThrmlStPassMdStRq : 7|2@0+ (1,0) [0|3] "" XXX - SG_ AutoThrmlStDrvMdStRq : 15|2@0+ (1,0) [0|3] "" XXX - -BO_ 2153897984 ARB_OpMode_Customization_LS: 1 XXX - SG_ RunBrdExtdFtrAvail : 3|1@0+ (1,0) [0|1] "" XXX - SG_ RunBrdOpMdCstCurrStVal : 6|3@0+ (1,0) [0|7] "" XXX - SG_ RunBrdOpMdCstStAvail : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151702528 Lane_Keeping_Assist_LS: 2 XXX - SG_ LnKpngAstRecfblIndRq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ LnMrkngIndLft : 4|2@0+ (1,0) [0|3] "" XXX - SG_ LnKepAsstStIndLft : 7|3@0+ (1,0) [0|7] "" XXX - SG_ LnMrkngIndRgt : 12|2@0+ (1,0) [0|3] "" XXX - SG_ LnKepAsstStIndRgt : 15|3@0+ (1,0) [0|7] "" XXX - -BO_ 2156986368 PassPhrase_3_AMM_LS: 8 XXX - SG_ WiFiPssPhrsDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156978176 PassPhrase_2_AMM_LS: 8 XXX - SG_ WiFiPssPhrsDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156969984 PassPhrase_1_AMM_LS: 8 XXX - SG_ WiFiPssPhrsDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2150236160 Unlock_Key_Store_Crypt_2_LS: 8 XXX - SG_ UlckKyStrCrptoDt2Group : 4|61@0+ (1,0) [0|0] "" XXX - SG_ UlckKyStrCrptoDt2 : 3|60@0+ (1,0) [0|1.15292150460685E+018] "" XXX - SG_ UlckKyStrCrptoDt2M : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150170624 Unlock_Key_Store_Crypt_1_LS: 8 XXX - SG_ UlckKyStrCrptoDt1Group : 4|61@0+ (1,0) [0|0] "" XXX - SG_ UlckKyStrCrptoDt1 : 3|60@0+ (1,0) [0|1.15292150460685E+018] "" XXX - SG_ UlckKyStrCrptoDt1M : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155126784 Drvr_Seat_Rearward_Movmnt_LS: 1 XXX - SG_ DrvrSetRrwrdMvmnt : 7|3@0+ (1,0) [0|7] "" XXX - -BO_ 2154725376 Auxiliary_Heater_LS: 1 XXX - SG_ AuxHtrAtv378 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ AuxHtrRq : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2157051904 WiFi_Station_AMM_LS: 5 XXX - SG_ WiFiStatnMpReq : 1|34@0+ (1,0) [0|0] "" XXX - SG_ WSMR_WiFiAssnReq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ WSMR_WiFiStnMpMACAddr : 15|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2156994560 WiFi_AP_Data_AMM_LS: 2 XXX - SG_ WiFiAccsPntData_Mp : 0|9@0+ (1,0) [0|0] "" XXX - SG_ WAPDM_WiFiEnStat : 0|1@0+ (1,0) [0|1] "" XXX - SG_ WAPDM_EncrptnType : 11|4@0+ (1,0) [0|15] "" XXX - SG_ WAPDM_SecurityType : 15|4@0+ (1,0) [0|15] "" XXX - -BO_ 2158133248 Hill_Top_Customization_LS: 6 XXX - SG_ HTRCsStAvail : 0|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCsAvail : 7|7@0+ (1,0) [0|0] "" XXX - SG_ HTRCA_Res3Avail : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCA_Res2Avail : 2|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCA_Res1Avail : 3|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCA_OnAwAvail : 4|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCA_OnHmAvail : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCA_OnAvail : 6|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCA_OffAvail : 7|1@0+ (1,0) [0|1] "" XXX - SG_ HTRCsCrStVal : 10|3@0+ (1,0) [0|7] "" XXX - SG_ HVDpltnMdMxCnfdcRgExt : 21|14@0+ (0.1,0) [0|1638.3] "km" XXX - SG_ HVDpltnMdMiCnfdcRgExt : 37|14@0+ (0.1,0) [0|1638.3] "km" XXX - -BO_ 2154651648 Telematics_Audio_Control_LS: 1 XXX - SG_ TeleAudCtl : 7|8@0+ (1,0) [0|0] "" XXX - SG_ TAC_AudConctOutcm : 3|4@0+ (1,0) [0|15] "" XXX - SG_ TAC_AudChConctStat : 7|4@0+ (1,0) [0|15] "" XXX - -BO_ 2154635264 Telematics_Audio_Request_LS: 1 XXX - SG_ TeleAudReq : 7|8@0+ (1,0) [0|0] "" XXX - SG_ TAR_AudSrcStat : 3|4@0+ (1,0) [0|15] "" XXX - SG_ TAR_AudConctReq : 7|4@0+ (1,0) [0|15] "" XXX - -BO_ 2152529920 LVM_Audio_Video_Command_LS: 2 XXX - SG_ LowVolModAudVidCmd : 5|14@0+ (1,0) [0|0] "" XXX - SG_ LVMAVC_StreoAudRsp : 0|2@0+ (1,0) [0|3] "" XXX - SG_ LVMAVC_PrmtAudRsp : 2|2@0+ (1,0) [0|3] "" XXX - SG_ LVMAVC_RemtEnbl : 5|3@0+ (1,0) [0|7] "" XXX - SG_ LVMAVC_SpchRcgnAval : 9|2@0+ (1,0) [0|3] "" XXX - SG_ LVMAVC_RemSpchRcgnActn : 11|2@0+ (1,0) [0|3] "" XXX - SG_ LVMAVC_RemSpchRcgnID : 14|3@0+ (1,0) [0|7] "" XXX - -BO_ 2152513536 LVM_Audio_Video_Req_LS: 2 XXX - SG_ LowVolModAudVidReq : 0|9@0+ (1,0) [0|0] "" XXX - SG_ LVMAVR_DispReq : 0|3@0+ (1,0) [0|7] "" XXX - SG_ LVMAVR_SpchRcgnAct : 9|2@0+ (1,0) [0|3] "" XXX - SG_ LVMAVR_PrmtAudReq : 11|2@0+ (1,0) [0|3] "" XXX - SG_ LVMAVR_StreoAudReq : 13|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154889216 Cluster_HMI_Animation_Req_LS: 1 XXX - SG_ ClstrHMIAnmReq : 7|3@0+ (1,0) [0|7] "" XXX - -BO_ 2154872832 Infotainment_Activation_Req_LS: 1 XXX - SG_ RmRflshUpdtAvail : 6|1@0+ (1,0) [0|1] "" XXX - SG_ InfoActvnReq : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2156961792 SSID_AMM_3_LS: 8 XXX - SG_ WiFiSSIDDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2154569728 Infotainment_System_State_LS: 1 XXX - SG_ InfotnmntSysSt : 7|5@0+ (1,0) [0|31] "" XXX - -BO_ 2151931904 Custom_Launch_Ctrl_LS: 8 XXX - SG_ LnchCtrlMdStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ LnchCtrlWhlSlpStat : 7|5@0+ (1,0) [0|31] "" XXX - SG_ PTExPrtclFltWrng3IO : 8|1@0+ (1,0) [0|1] "" XXX - SG_ AWDRecmndIO : 9|1@0+ (1,0) [0|1] "" XXX - SG_ LnchCtrlEngRPMStat : 15|6@0+ (1,0) [0|63] "" XXX - SG_ ACCSysSltdMd : 17|2@0+ (1,0) [0|3] "" XXX - SG_ VehSpdCntlSystmType : 20|3@0+ (1,0) [0|7] "" XXX - SG_ PTExPartFltManRegStat : 23|3@0+ (1,0) [0|7] "" XXX - SG_ TCSTempDsblReqIO : 24|1@0+ (1,0) [0|1] "" XXX - SG_ VehStbCmptvMdCstAvl : 25|1@0+ (1,0) [0|1] "" XXX - SG_ VehStbEnmntCstAvl : 26|1@0+ (1,0) [0|1] "" XXX - SG_ TCSysCstAvl : 27|1@0+ (1,0) [0|1] "" XXX - SG_ VehStbCmptvMdCurSt : 28|1@0+ (1,0) [0|1] "" XXX - SG_ ElctShfPriLtdPerfMdIO : 29|1@0+ (1,0) [0|1] "" XXX - SG_ RegVltCtlEngyRcvryAct : 30|1@0+ (1,0) [0|1] "" XXX - SG_ ACCSysSltdMdDispIO : 31|1@0+ (1,0) [0|1] "" XXX - SG_ LnchCtrlTmrVal : 35|4@0+ (1,0) [0|15] "" XXX - SG_ VehStbEnhmntCurSt : 36|1@0+ (1,0) [0|1] "" XXX - SG_ TCSysCurSt : 37|1@0+ (1,0) [0|1] "" XXX - SG_ TracAndStbScrnCnfg : 39|2@0+ (1,0) [0|3] "" XXX - SG_ BiFuelRflGaslinIndReq : 42|3@0+ (1,0) [0|7] "" XXX - SG_ AutoShtdwnIO : 43|1@0+ (1,0) [0|1] "" XXX - SG_ LnchCtrlBrkPresVal : 47|4@0+ (10,0) [0|150] "%" XXX - SG_ AutoShtdwnTmr : 55|8@0+ (1,0) [0|255] "min" XXX - SG_ FuelMdTrnstnIndReq : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2150244352 HMI_EngyConsmpHistGrph_1_LS: 8 XXX - SG_ EngyCnsHsGrphDspDtVal : 7|55@0+ (1,0) [0|0] "" XXX - SG_ ECHGDDV_Col1 : 2|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_EngyConsAvg : 7|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col3 : 8|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col2 : 13|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col4 : 19|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col6 : 25|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col5 : 30|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col7 : 36|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col9 : 42|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col8 : 47|5@0+ (1,0) [0|31] "" XXX - SG_ ECHGDDV_Col10 : 53|5@0+ (1,0) [0|31] "" XXX - -BO_ 2156953600 SSID_AMM_2_LS: 8 XXX - SG_ WiFiSSIDDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2151686144 SD_Card_LS: 2 XXX - SG_ SDCrdFullIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SDCrdErrIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ NoSDCrdPrIO : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155028480 Lane_Change_Threat_LS: 2 XXX - SG_ RgtLnChgThrt : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RtLnChngThrtAprchSpd : 15|8@0- (1,0) [-128|127] "km/h" XXX - -BO_ 2151915520 HMI_Display_LS: 8 XXX - SG_ AHDisbldDrOpnIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ AHDisbldStbltIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ AHAppBrkPedlIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ AHServcIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ShfToPrkBfExtngIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ AHEnbld : 5|1@0+ (1,0) [0|1] "" XXX - SG_ AHAct : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ESPDrvrIlkShfAtdIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ ESPTransMalfIO : 9|1@0+ (1,0) [0|1] "" XXX - SG_ ESPRngInvldReqIO : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ESPPrkInvldReqIO : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ESPHldShfLvrToEngRgIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ESPDrvrPrkIlkSftAtdIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ EngIntkArBstPrExtRngGroup : 14|15@0+ (1,0) [0|0] "" XXX - SG_ EngIntkArBstPrExtRng : 8|9@0+ (1,-110) [-110|401] "kPa" XXX - SG_ EngIntkArBstPrExtRngV : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ElcTransRngSlctVDA : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ElecShfRngDispRCExtd : 27|4@0+ (1,0) [0|15] "" XXX - SG_ ElecShfRngDisp : 31|4@0+ (1,0) [0|15] "" XXX - SG_ DrvEffInd : 39|8@0- (0.78125,0) [-100|99.21875] "%" XXX - SG_ ESPShfToDrvTryAgnIO : 43|1@0+ (1,0) [0|1] "" XXX - SG_ ESPTrnVehOffFrPrkIO : 44|1@0+ (1,0) [0|1] "" XXX - SG_ ESPTrnsCtlrMalfIO : 45|1@0+ (1,0) [0|1] "" XXX - SG_ ElcShfPriTwoGrsSlInRq : 47|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152153088 Right_Rear_Seat_Display_Stats_LS: 6 XXX - SG_ RRStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX - SG_ RRSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX - SG_ RRSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX - SG_ RRSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_HdrstFdRrUDn : 22|3@0+ (1,0) [0|7] "" XXX - SG_ RRSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX - SG_ RRSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX - SG_ RRSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX - SG_ RRSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX - SG_ RRSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX - SG_ RRSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152136704 Right_Rear_Seat_Massage_LS: 8 XXX - SG_ RRStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ RRSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ RRSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX - SG_ RRSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX - SG_ RRSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2152120320 Right_Rear_Seat_Actuator_LS: 8 XXX - SG_ RRStActPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ RRSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX - SG_ RRSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2152103936 Left_Rear_Seat_Display_Status_LS: 6 XXX - SG_ LRStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX - SG_ LRSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX - SG_ LRSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX - SG_ LRSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_HdrstFdRrUDn : 22|3@0+ (1,0) [0|7] "" XXX - SG_ LRSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX - SG_ LRSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX - SG_ LRSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX - SG_ LRSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX - SG_ LRSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX - SG_ LRSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152087552 Left_Rear_Seat_Massage_LS: 8 XXX - SG_ LRStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ LRSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ LRSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX - SG_ LRSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX - SG_ LRSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2152071168 Left_Rear_Seat_Actuator_LS: 8 XXX - SG_ LRStActPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ LRSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX - SG_ LRSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2153947136 Remote_Reflash_Stat_LS: 1 XXX - SG_ RmtRflshMdAct : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2152628224 OnBoard_Tester_Response_LS: 2 XXX - SG_ OBTCResp : 2|11@0+ (1,0) [0|0] "" XXX - SG_ OBTCR_Stat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ OBTCR_ReqstrID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ OBTCMstrStat : 5|3@0+ (1,0) [0|7] "" XXX - -BO_ 2152112128 Performanc_Mode_Vis_Scrn_Stat_LS: 5 XXX - SG_ PerfMdVislztnScrnStat : 0|33@0+ (1,0) [0|0] "" XXX - SG_ PMVSS_Snd : 0|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Trans : 10|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Eng : 13|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Drvln : 17|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Susp : 20|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Strng : 23|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_PsngrSeat : 24|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_DrvrSeat : 27|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_AdptCrsCnt : 30|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Disps : 34|3@0+ (1,0) [0|7] "" XXX - SG_ PMVSS_Exhst : 37|3@0+ (1,0) [0|7] "" XXX - SG_ PerfMdMainMenuType : 3|3@0+ (1,0) [0|7] "" XXX - -BO_ 2152775680 Front_360_Camera_On_LS: 3 XXX - SG_ DispFrt360CamOn : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RrPedDetCstStAvl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RrPedDetCstStVal : 4|3@0+ (1,0) [0|7] "" XXX - SG_ RrPdDetHptcStVbRqSeqN : 6|2@0+ (1,0) [0|3] "" XXX - SG_ TrgdVidRecFetrPrsnt : 7|1@0+ (1,0) [0|1] "" XXX - SG_ RrPdDetHptcStVbRq : 13|6@0+ (1,0) [0|63] "Pulse" XXX - SG_ DispTrgdVidOn : 14|1@0+ (1,0) [0|1] "" XXX - SG_ a_360DegVidFetrPrsnt : 15|1@0+ (1,0) [0|1] "" XXX - SG_ DispSmrtTwVidOn : 16|1@0+ (1,0) [0|1] "" XXX - SG_ RrPedDetCstAvail : 23|7@0+ (1,0) [0|0] "" XXX - SG_ RPDCA_Resrv3Avail : 17|1@0+ (1,0) [0|1] "" XXX - SG_ RPDCA_Resrv2Avail : 18|1@0+ (1,0) [0|1] "" XXX - SG_ RPDCA_Resrv1Avail : 19|1@0+ (1,0) [0|1] "" XXX - SG_ RPDCA_AlrtBrkAvail : 20|1@0+ (1,0) [0|1] "" XXX - SG_ RPDCA_AlrtAvail : 21|1@0+ (1,0) [0|1] "" XXX - SG_ RPDCA_OnAvail : 22|1@0+ (1,0) [0|1] "" XXX - SG_ RPDCA_OfAvail : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 2153857024 Teen_Driver_Event_Report_2_LS: 8 XXX - SG_ TnDrvRptCrdAvlDspDat : 6|13@0+ (1,0) [0|0] "" XXX - SG_ TDRCADD_FCHdwyAlrt : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_ABSAtvEvt : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_StCtrlEvnts : 2|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_TrCtrlEvnts : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_OvSpdEvnt : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_DistDrvn : 5|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_MaxSpd : 6|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_LDWEvnts : 10|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_WOTEvnts : 11|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_DrwDrvAlrt : 12|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_FCMBrEvts : 13|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_RCMBrEvts : 14|1@0+ (1,0) [0|1] "" XXX - SG_ TDRCADD_FCImntAlrts : 15|1@0+ (1,0) [0|1] "" XXX - SG_ TeenDrvWOTEvntsRpt : 9|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TnDrvABSAtvEvntsRpt : 31|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TnDrvStblCtrlEvntsRpt : 37|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TnDrvDrowDrvAlrtsRpt : 43|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TnDrvTrCtrlEvntsRpt : 49|10@0+ (1,0) [0|1023] "counts" XXX - -BO_ 2153865216 Teen_Driver_Customization_Req_LS: 4 XXX - SG_ TeenDrvReq : 3|4@0+ (1,0) [0|15] "" XXX - SG_ TDOvSpdWrnCstStReq : 12|5@0+ (1,0) [0|0] "" XXX - SG_ TDOWCSR_DecSwAct : 8|1@0+ (1,0) [0|1] "" XXX - SG_ TDOWCSR_IncSwAct : 9|1@0+ (1,0) [0|1] "" XXX - SG_ TDOWCSR_StatReq : 12|3@0+ (1,0) [0|7] "" XXX - SG_ TnDrvSpdLmtCstStReq : 15|3@0+ (1,0) [0|7] "" XXX - SG_ TeenDrvPinCd : 23|16@0+ (1,0) [0|39321] "" XXX - -BO_ 2153840640 Teen_Driver_Event_Report_1_LS: 8 XXX - SG_ TDFwdClnHdwyAlrtsRpt : 5|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TnDrvDRLOffUnbIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvALCOffUnbIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ TDFwdClnImntAlrtsRpt : 11|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TDFwdClnMtgnBrEvRpt : 17|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TDRevClnMtgnBrEvRpt : 39|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TeenDrvMaxSpdRpt : 45|12@0+ (0.0625,0) [0|255.9375] "km/h" XXX - SG_ TeenDrvLDWEvntsRpt : 49|10@0+ (1,0) [0|1023] "counts" XXX - -BO_ 2153824256 Teen_Driver_Control_Info_LS: 8 XXX - SG_ TnDrvSpdLmtCstCrStVl : 2|11@0+ (1,0) [0|0] "" XXX - SG_ TDSLCCSV_SpLmtStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ TDSLCCSV_SpLmDisVl : 15|8@0+ (2,0) [0|510] "km/h" XXX - SG_ TnDrvSpdLmtCstStAvl : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvOvrSpdIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvGapAdjUnbIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ TeenDrvPINStrd : 6|1@0+ (1,0) [0|1] "" XXX - SG_ TeenDrvFtrAvl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ TDOvSpdWrnCstCrStVl : 22|15@0+ (1,0) [0|0] "" XXX - SG_ TDOWCCSV_CrStVl : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" XXX - SG_ TDOWCCSV_CrStat : 22|3@0+ (1,0) [0|7] "" XXX - SG_ TDOvSpdWrnCstStAvl : 23|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvOvSpdEvntsRpt : 33|10@0+ (1,0) [0|1023] "counts" XXX - SG_ TeenDrvRsp : 37|4@0+ (1,0) [0|15] "" XXX - SG_ TeenDrvAct : 38|1@0+ (1,0) [0|1] "" XXX - SG_ TeenDrvAccelLimIO : 39|1@0+ (1,0) [0|1] "" XXX - SG_ TeenDrvDistDrvnRpt : 55|16@0+ (1,0) [0|65535] "km" XXX - -BO_ 2155151360 Psngr_Seat_Massage_Priority_LS: 8 XXX - SG_ PsngrStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ PSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ PSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX - SG_ PSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX - SG_ PSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2155134976 Psngr_Seat_Control_Disp_Stat_LS: 6 XXX - SG_ PsngrStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX - SG_ PSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX - SG_ PSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX - SG_ PSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_HdrstUDnFdRr : 22|3@0+ (1,0) [0|7] "" XXX - SG_ PSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX - SG_ PSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX - SG_ PSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX - SG_ PSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX - SG_ PSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX - SG_ PSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX - SG_ PsngrSetRrwdMvmnt : 6|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155118592 Psngr_Seat_Actuator_Priority_LS: 8 XXX - SG_ PsngrStActPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ PSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX - SG_ PSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2155102208 Driver_Seat_Massage_Priority_LS: 8 XXX - SG_ DrvStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ DSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ DSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX - SG_ DSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX - SG_ DSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2155085824 Driver_Seat_Control_Disp_Stat_LS: 8 XXX - SG_ DrvStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX - SG_ DSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX - SG_ DSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX - SG_ DSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_HdrstUDnFdRr : 22|3@0+ (1,0) [0|7] "" XXX - SG_ DSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX - SG_ DSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX - SG_ DSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX - SG_ DSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX - SG_ DSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX - SG_ DSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX - SG_ CPMAPINFO4 : 5|1@0+ (1,0) [0|1] "" XXX - SG_ StrgColCommsFlt : 7|2@0+ (1,0) [0|3] "" XXX - SG_ StrgColInOutPos : 55|8@0+ (1,0) [0|255] "" XXX - SG_ StrgColUpDwnPos : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2155069440 Driver_Seat_Actuator_Priority_LS: 8 XXX - SG_ DrvStActPrty : 7|64@0+ (1,0) [0|0] "" XXX - SG_ DSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX - SG_ DSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX - -BO_ 2156937216 PassPhrase_Digits_17_to_24_LS: 8 XXX - SG_ WiFiPssPhrsDgts17to24 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156929024 PassPhrase_Digits_9_to_16_LS: 8 XXX - SG_ WiFiPssPhrsDgts9to16 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156920832 PassPhrase_Digits_1_to_8_LS: 8 XXX - SG_ WiFiPssPhrsDgts1to8 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156871680 SSID_Digits_17_to_24_LS: 8 XXX - SG_ WiFiSSIDDgts17to24 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156863488 SSID_Digits_9_to_16_LS: 8 XXX - SG_ WiFiSSIDDgts9to16 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156855296 SSID_Digits_1_to_8_LS: 8 XXX - SG_ WiFiSSIDDgts1to8 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2152480768 Perfr_Data_Recorder_Lap_Info_LS: 6 XXX - SG_ PerfDatRecBstLpInfo : 2|19@0+ (1,0) [0|0] "" XXX - SG_ PDRBLI_BstLpTmMins : 2|6@0+ (1,0) [0|63] "min" XXX - SG_ PDRBLI_BstLpTmSecs : 12|6@0+ (1,0) [0|63] "sec" XXX - SG_ PDRBLI_BstLpTm100s : 22|7@0+ (0.01,0) [0|1.27] "sec" XXX - SG_ PerfDatRecLstLpInfo : 26|19@0+ (1,0) [0|0] "" XXX - SG_ PDRLLI_LstLpTmMins : 26|6@0+ (1,0) [0|63] "min" XXX - SG_ PDRLLI_LstLpTmSecs : 36|6@0+ (1,0) [0|63] "sec" XXX - SG_ PDRLLI_LstLpTm100s : 46|7@0+ (0.01,0) [0|1.27] "sec" XXX - -BO_ 2152497152 Perf_Data_Recroder_RT_Info_LS: 4 XXX - SG_ PerfDatRecRltmInfo : 1|26@0+ (1,0) [0|0] "" XXX - SG_ PDRRI_CrLpTmMins : 1|6@0+ (1,0) [0|63] "min" XXX - SG_ PDRRI_CrLpTmSecs : 11|6@0+ (1,0) [0|63] "" XXX - SG_ PDRRI_LpDiffTmSecs : 17|6@0+ (1,0) [0|63] "sec" XXX - SG_ PDRRI_CrLpTm10sSec : 21|4@0+ (0.1,0) [0|1.5] "sec" XXX - SG_ PDRRI_LpDiffTm10s : 27|4@0+ (0.1,0) [0|1.5] "sec" XXX - -BO_ 2153791488 ARB_State_LS: 1 XXX - SG_ ArtcldRngBrdSt : 2|3@0+ (1,0) [0|7] "" XXX - -BO_ 2149883904 BluetoothTetheringPairingRsp_LS: 7 XXX - SG_ BTTethrngPrngRsp : 4|53@0+ (1,0) [0|0] "" XXX - SG_ BTPR_RspInfoAvail : 0|1@0+ (1,0) [0|1] "" XXX - SG_ BTPR_RspStat : 4|4@0+ (1,0) [0|15] "" XXX - SG_ BTPR_RspVal : 15|48@0+ (1,0) [0|281474976710655] "" XXX - -BO_ 2150252544 HMI_EngyConsmpHistGrph_LS: 8 XXX - SG_ EngyConsmpHistGrph : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ECHG_EngyCnsmdAvg : 4|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_MeasUnit : 7|3@0+ (1,0) [0|7] "" XXX - SG_ ECHG_Column02 : 10|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column01 : 15|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column04 : 16|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column03 : 21|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column05 : 27|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column07 : 33|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column06 : 38|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column08 : 44|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column10 : 50|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_Column09 : 55|5@0+ (1,0) [0|31] "" XXX - SG_ ECHG_YAxisMaxVal : 58|3@0+ (1,0) [0|7] "" XXX - SG_ ECHG_XAxisTkMrkIntvl : 61|3@0+ (1,0) [0|7] "" XXX - -BO_ 2150391808 HMI_Hourmeter_Data_LS: 6 XXX - SG_ EngIdlAtvTm : 7|24@0+ (1,0) [0|16777215] "min" XXX - SG_ EngRunAtvTm : 31|24@0+ (1,0) [0|16777215] "min" XXX - -BO_ 2155913216 Diesel_Information_2_LS: 7 XXX - SG_ DslExhFldRmngDstHRsGroup : 7|16@0+ (1,0) [0|0] "" XXX - SG_ DslExhFldRmngDstHRs : 6|15@0+ (2,0) [0|65534] "km" XXX - SG_ DslExhFldRmngDstHRsV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ DslExhFluidLvlPrcntGroup : 16|9@0+ (1,0) [0|0] "" XXX - SG_ DslExhFluidLvlPrcntV : 16|1@0+ (1,0) [0|1] "" XXX - SG_ DslExhFluidLvlPrcnt : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DslEmnsOBDMrkt : 18|2@0+ (1,0) [0|3] "" XXX - SG_ PedFrndlyAlrtCsCrStVal : 21|3@0+ (1,0) [0|7] "" XXX - SG_ PedFrndlyAlrtCsSetAvl : 22|1@0+ (1,0) [0|1] "" XXX - SG_ PedFrndlyAlrtStat : 39|24@0+ (1,0) [0|0] "" XXX - SG_ PFAS_PFACrsOvrSpd : 34|8@0+ (1,0) [0|255] "km/h" XXX - SG_ PFAS_PFARevSnd : 36|2@0+ (1,0) [0|3] "" XXX - SG_ PFAS_PFAFwdSnd : 38|2@0+ (1,0) [0|3] "" XXX - SG_ PFAS_PFASndGenEn : 39|1@0+ (1,0) [0|1] "" XXX - SG_ PFAS_PFASndVolCtrl : 42|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ PFAS_SrvPedAlrtIO : 48|1@0+ (1,0) [0|1] "" XXX - SG_ PFAS_PFASysStat : 50|2@0+ (1,0) [0|3] "" XXX - -BO_ 2034 CCP_Data_Transmission_Object_LS: 8 XXX - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2032 CCP_Command_Receive_Object_LS: 8 XXX - SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2152095744 HSGMLAN_Customization_Setings_LS: 5 XXX - SG_ DrvlnPerfMdCustAvl : 5|6@0+ (1,0) [0|0] "" XXX - SG_ DPMCA_DrvlPrfMd6Avl : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DrvlPrfMd5Avl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DrvlPrfMd4Avl : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DrvlPrfMd3Avl : 3|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DrvlPrfMd2Avl : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DrvlPrfMd1Avl : 5|1@0+ (1,0) [0|1] "" XXX - SG_ DispPerfCustMdAvl : 13|6@0+ (1,0) [0|0] "" XXX - SG_ DPMCA_DispPrfMd6Avl : 8|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DispPrfMd5Avl : 9|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DispPrfMd4Avl : 10|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DispPrfMd3Avl : 11|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DispPrfMd2Avl : 12|1@0+ (1,0) [0|1] "" XXX - SG_ DPMCA_DispPrfMd1Avl : 13|1@0+ (1,0) [0|1] "" XXX - SG_ SndPerfMdCustAvl : 21|6@0+ (1,0) [0|0] "" XXX - SG_ SPMCA_SndPrfMd6Avl : 16|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SndPrfMd5Avl : 17|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SndPrfMd4Avl : 18|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SndPrfMd3Avl : 19|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SndPrfMd2Avl : 20|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SndPrfMd1Avl : 21|1@0+ (1,0) [0|1] "" XXX - SG_ StrPerfMdCustAvl : 29|6@0+ (1,0) [0|0] "" XXX - SG_ SPMCA_StrPrfMd6Avl : 24|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_StrPrfMd5Avl : 25|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_StrPrfMd4Avl : 26|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_StrPrfMd3Avl : 27|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_StrPrfMd2Avl : 28|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_StrPrfMd1Avl : 29|1@0+ (1,0) [0|1] "" XXX - SG_ SusPerfMdCustAvl : 37|6@0+ (1,0) [0|0] "" XXX - SG_ SPMCA_SusPrfMd6Avl : 32|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SusPrfMd5Avl : 33|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SusPrfMd4Avl : 34|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SusPrfMd3Avl : 35|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SusPrfMd2Avl : 36|1@0+ (1,0) [0|1] "" XXX - SG_ SPMCA_SusPrfMd1Avl : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 2156945408 SSID_AMM_1_LS: 8 XXX - SG_ WiFiSSIDDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2152611840 OnBoard_Tester_Request_LS: 2 XXX - SG_ OBTCReq : 4|5@0+ (1,0) [0|0] "" XXX - SG_ OBTCR_Prty : 3|4@0+ (1,0) [0|15] "" XXX - SG_ OBTCR_Actv : 4|1@0+ (1,0) [0|1] "" XXX - SG_ OBTCReqstrStat : 7|3@0+ (1,0) [0|7] "" XXX - SG_ OBTCReqstrID : 15|8@0+ (1,0) [0|255] "" XXX - -BO_ 2153308160 Hyb_Redundant_Batt_Data2_LS: 4 XXX - SG_ RdHVltBatPckCrntGroup : 6|15@0+ (1,0) [0|0] "" XXX - SG_ RdHVltBatPckCrnt : 4|13@0- (0.15,0) [-614.4|614.25] "A" XXX - SG_ RdHVltBatPckCrntV : 5|1@0+ (1,0) [0|1] "" XXX - SG_ RdHVltBatPckCrntM : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RdHVltBatPckVltGroup : 21|14@0+ (1,0) [0|0] "" XXX - SG_ RdHVltBatPckVlt : 19|12@0+ (0.125,0) [0|511.875] "V" XXX - SG_ RdHVltBatPckVltV : 20|1@0+ (1,0) [0|1] "" XXX - SG_ RdHVltBatPckVltM : 21|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155970560 HVAC_PowerManager_Status_LS: 1 XXX - SG_ ClmCntLdShdLvlRq : 3|4@0+ (1,0) [0|15] "" XXX - SG_ ClmCntBatSaverIO : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151178240 Lighting_Customization_Rqst_1_LS: 4 XXX - SG_ LtRtHnTrGPSCstStRq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ LtRtHnTrCstStReq : 5|3@0+ (1,0) [0|7] "" XXX - SG_ AutHgBmAsSnCsStRq : 10|3@0+ (1,0) [0|7] "" XXX - SG_ AutHgBmAstCstStRq : 13|3@0+ (1,0) [0|7] "" XXX - SG_ AdpHgBmAsSnCsStRq : 18|3@0+ (1,0) [0|7] "" XXX - SG_ AdpHgBmAstCstStRq : 21|3@0+ (1,0) [0|7] "" XXX - SG_ AFLGPSCstStReq : 26|3@0+ (1,0) [0|7] "" XXX - SG_ AFLCstStReq : 29|3@0+ (1,0) [0|7] "" XXX - -BO_ 2154790912 Lighting_Customization_Info_2_LS: 2 XXX - SG_ AutHgBmAsCsCrStVal : 2|3@0+ (1,0) [0|7] "" XXX - SG_ AutHgBmAsSnCsCrStVa : 5|3@0+ (1,0) [0|7] "" XXX - SG_ AutHgBmAsCsStAvl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ AutHgBmAsSnCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ AdpHgBmAsCsCrStVal : 10|3@0+ (1,0) [0|7] "" XXX - SG_ AdpHgBmAsSnCsCrStVal : 13|3@0+ (1,0) [0|7] "" XXX - SG_ AdpHgBmAsCsStAvl : 14|1@0+ (1,0) [0|1] "" XXX - SG_ AdpHgBmAsSnCsStAvl : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151292928 V2V_Customization_Menu_LS: 5 XXX - SG_ TrfRdsdInfCsStAvail : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CntdVehBrkAltCsStAvl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ IntrStopAlrtCsSetAvl : 2|1@0+ (1,0) [0|1] "" XXX - SG_ IntrStAlrtCsCrSetVal : 5|3@0+ (1,0) [0|7] "" XXX - SG_ TrfRdsdInfCsCrStVal : 10|3@0+ (1,0) [0|7] "" XXX - SG_ CntdVehBrAltCsCrStVal : 13|3@0+ (1,0) [0|7] "" XXX - SG_ IntrStAlrtCsAvail : 22|7@0+ (1,0) [0|0] "" XXX - SG_ ISACA_Resrv4Avail : 16|1@0+ (1,0) [0|1] "" XXX - SG_ ISACA_Resrv3Avail : 17|1@0+ (1,0) [0|1] "" XXX - SG_ ISACA_Resrv2Avail : 18|1@0+ (1,0) [0|1] "" XXX - SG_ ISACA_Resrv1Avail : 19|1@0+ (1,0) [0|1] "" XXX - SG_ ISACA_AlrtBrkAvail : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ISACA_AlrtAvail : 21|1@0+ (1,0) [0|1] "" XXX - SG_ ISACA_OfAvail : 22|1@0+ (1,0) [0|1] "" XXX - SG_ CntdVehBrkAlrtCsAvail : 30|7@0+ (1,0) [0|0] "" XXX - SG_ CVBACA_Resrv5Avail : 24|1@0+ (1,0) [0|1] "" XXX - SG_ CVBACA_Resrv4Avail : 25|1@0+ (1,0) [0|1] "" XXX - SG_ CVBACA_Resrv3Avail : 26|1@0+ (1,0) [0|1] "" XXX - SG_ CVBACA_Resrv2Avail : 27|1@0+ (1,0) [0|1] "" XXX - SG_ CVBACA_Resrv1Avail : 28|1@0+ (1,0) [0|1] "" XXX - SG_ CVBACA_OnAvail : 29|1@0+ (1,0) [0|1] "" XXX - SG_ CVBACA_OfAvail : 30|1@0+ (1,0) [0|1] "" XXX - SG_ TrfRdsdInfCsAvail : 38|7@0+ (1,0) [0|0] "" XXX - SG_ TRICA_Resrv5Avail : 32|1@0+ (1,0) [0|1] "" XXX - SG_ TRICA_Resrv4Avail : 33|1@0+ (1,0) [0|1] "" XXX - SG_ TRICA_Resrv3Avail : 34|1@0+ (1,0) [0|1] "" XXX - SG_ TRICA_Resrv2Avail : 35|1@0+ (1,0) [0|1] "" XXX - SG_ TRICA_Resrv1Avail : 36|1@0+ (1,0) [0|1] "" XXX - SG_ TRICA_OnAvail : 37|1@0+ (1,0) [0|1] "" XXX - SG_ TRICA_OfAvail : 38|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151464960 V2V_Warnings_LS: 5 XXX - SG_ V2VWrngIndReq : 4|5@0+ (1,0) [0|31] "" XXX - SG_ V2VWrngDirctn : 7|3@0+ (1,0) [0|7] "" XXX - SG_ V2VWrngDistRemng : 9|10@0+ (1,0) [0|1023] "" XXX - SG_ V2VTrfLghtInfo : 28|13@0+ (1,0) [0|0] "" XXX - SG_ V2VTLI_TrfLghtTmPhsSw : 28|6@0+ (1,0) [0|63] "" XXX - SG_ V2VTLI_TrfLghtMntngDirctn : 32|1@0+ (1,0) [0|1] "" XXX - SG_ V2VTLI_TrfLghtValDirctn : 34|2@0+ (1,0) [0|3] "" XXX - SG_ V2VTLI_TrfLghtPhsArivl : 36|2@0+ (1,0) [0|3] "" XXX - SG_ V2VTLI_TrfLghtActlPhs : 38|2@0+ (1,0) [0|3] "" XXX - SG_ V2VSrvIndReq : 30|2@0+ (1,0) [0|3] "" XXX - -BO_ 2151448576 V2V_Seat_Vib_Request_LS: 3 XXX - SG_ V2VSysHptcStVibReq : 5|6@0+ (1,0) [0|63] "" XXX - SG_ V2VSysHptStVibRqSN : 7|2@0+ (1,0) [0|3] "" XXX - SG_ V2VSyLftHptStVbRq : 13|6@0+ (1,0) [0|63] "" XXX - SG_ V2VSyLftHptStVbRqSN : 15|2@0+ (1,0) [0|3] "" XXX - SG_ V2VSyRghtHptStVbRq : 21|6@0+ (1,0) [0|63] "" XXX - SG_ V2VSyRghtHptStVbRqSN : 23|2@0+ (1,0) [0|3] "" XXX - -BO_ 2153930752 Lane_Centering_Convenience_LS: 3 XXX - SG_ LCWrnIndReq : 4|5@0+ (1,0) [0|31] "" XXX - SG_ LCCDrvrAwrnsIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LnCntrVhlStpd : 6|1@0+ (1,0) [0|1] "" XXX - SG_ LnCntrNonRspDrvrCnd : 7|1@0+ (1,0) [0|1] "" XXX - SG_ LCConvMsgIndreq : 12|5@0+ (1,0) [0|31] "" XXX - SG_ LCCIndReq : 15|3@0+ (1,0) [0|7] "" XXX - SG_ LnCntrEsclnStat : 17|2@0+ (1,0) [0|3] "" XXX - SG_ LnCntrSpchPrmtReq : 19|2@0+ (1,0) [0|3] "" XXX - SG_ LnCntrngCtlIcnLoctn : 23|4@0- (1,0) [-8|7] "" XXX - -BO_ 2153889792 Lane_Centering_Arrow_LS: 5 XXX - SG_ LCArrwBlk1Act : 0|1@0+ (1,0) [0|1] "" XXX - SG_ LCArrwBlk2Act : 1|1@0+ (1,0) [0|1] "" XXX - SG_ LCArrwBlk3Act : 2|1@0+ (1,0) [0|1] "" XXX - SG_ LCArrwBlk4Act : 3|1@0+ (1,0) [0|1] "" XXX - SG_ LCArrwBlk5Act : 4|1@0+ (1,0) [0|1] "" XXX - SG_ LCArrwBlk2Offst : 15|8@0- (1,0) [-128|127] "" XXX - SG_ LCArrwBlk3Offst : 23|8@0- (1,0) [-128|127] "" XXX - SG_ LCArrwBlk4Offst : 31|8@0- (1,0) [-128|127] "" XXX - SG_ LCArrwBlk5Offst : 39|8@0- (1,0) [-128|127] "" XXX - -BO_ 2153914368 Energy_Usage_LS: 7 XXX - SG_ EngyUsgScrScal : 7|56@0+ (1,0) [0|0] "" XXX - SG_ EUSS_OTEgUgScrMxScVal : 0|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_OTEgUgScrMnScVal : 7|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_ITEgUgScrMnScVal : 9|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_ITEgUgScrMxScVal : 18|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_TcEgUgScrMnScVal : 27|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_TcEgUgScrMxScVal : 36|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_TrEgUgScrMnScVal : 45|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUSS_TrEgUgScrMxScVal : 54|7@0- (0.1,0) [-5|5] "" XXX - -BO_ 2151882752 PTO_Customization_Request_LS: 3 XXX - SG_ PTOTpStpSpdCsStReq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ PTOEngRnTmrCsStRq : 11|4@0+ (1,0) [0|15] "" XXX - SG_ PTOStdbySpdCsStReq : 14|3@0+ (1,0) [0|7] "" XXX - SG_ PTOSet1SpdCsStReq : 19|4@0+ (1,0) [0|15] "" XXX - SG_ PTOSet2SpdCsStReq : 23|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151899136 PTO_Status_LS: 5 XXX - SG_ PTORelBrkPedIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ PTORelAccPedIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PTORedEngSpdIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PTOPrsRelCltPedIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PTOPrsRelBrkPedIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PTOEngmntStatInd : 6|2@0+ (1,0) [0|3] "" XXX - SG_ PTODisengCrsCntlIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ PTOSet1SpdCsStAvl : 8|1@0+ (1,0) [0|1] "" XXX - SG_ PTOSet2SpdCsStAvl : 9|1@0+ (1,0) [0|1] "" XXX - SG_ PTOTpStpSpdCsStAvl : 10|1@0+ (1,0) [0|1] "" XXX - SG_ PTOEngRnTmrCsStAvl : 11|1@0+ (1,0) [0|1] "" XXX - SG_ PTOStdbySpdCsStAvl : 12|1@0+ (1,0) [0|1] "" XXX - SG_ PTOTransInGearIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ PTOSetPrkBrkIO : 14|1@0+ (1,0) [0|1] "" XXX - SG_ PTORelCltPedIO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ PTOStdbSpdCsCrStVal : 18|3@0+ (1,0) [0|7] "" XXX - SG_ PTOGroup : 20|2@0+ (1,0) [0|0] "" XXX - SG_ PTOVDA : 19|1@0+ (1,0) [0|1] "" XXX - SG_ PTOVDM : 20|1@0+ (1,0) [0|1] "" XXX - SG_ PTOManTransInGrIO : 21|1@0+ (1,0) [0|1] "" XXX - SG_ PTOAccelUpnBrkRelIO : 22|1@0+ (1,0) [0|1] "" XXX - SG_ PTOEngUpnBrkRelIO : 23|1@0+ (1,0) [0|1] "" XXX - SG_ PTOTpStSpdCsCrStVal : 26|3@0+ (1,0) [0|7] "" XXX - SG_ PTOEnRnTmCsCrStVal : 30|4@0+ (1,0) [0|15] "" XXX - SG_ PTOServIndOn : 31|1@0+ (1,0) [0|1] "" XXX - SG_ PTOSet1SpdCsCrStVal : 35|4@0+ (1,0) [0|15] "" XXX - SG_ PTOSet2SpdCsCrStVal : 39|4@0+ (1,0) [0|15] "" XXX - -BO_ 2150580224 HMI_UtlChrgIntrfr_Indication_LS: 5 XXX - SG_ CstmrNonUsblSOCGroup : 1|10@0+ (1,0) [0|0] "" XXX - SG_ CstmrNonUsblSOCV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ CstmrNonUsblSOC : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ CstNonUsbSOCDspLvl : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ PrpDspTtlPwrLvlPct : 24|9@0- (0.392157,0) [-100.392192|100.000035] "%" XXX - -BO_ 2151735296 Rear_Cross_Traffic_Alert_Ind_LS: 1 XXX - SG_ RrCrsTrfcAlrtOffIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ LnChgAlrtOffIndOn : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RtRrCrsTrfcAlrtEnbld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RtSBZAlrtEnbld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ RtLnChgAlrtEnbld : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RtSdDetSysTmpDsbld : 5|1@0+ (1,0) [0|1] "" XXX - SG_ RtSdDetSysServDsbld : 6|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151792640 Rear_Cross_Traffic_Alert_Rght_LS: 5 XXX - SG_ RrCTfcRHptcStRqSqN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ RrCTfcRHptcStReq : 7|6@0+ (1,0) [0|63] "" XXX - SG_ RrCrsTrfAltRgtIndCtrl : 34|3@0+ (1,0) [0|0] "" XXX - SG_ RCTARIC_IndReq : 33|2@0+ (1,0) [0|3] "" XXX - SG_ RCTARIC_Indctr1Act : 34|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149826560 FCA_VisionBased_Info_2_LS: 4 XXX - SG_ FCAGpStng : 2|3@0+ (1,0) [0|7] "" XXX - SG_ FCAHdwyStngIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ FCACrusCtrlCnclReqd : 4|1@0+ (1,0) [0|1] "" XXX - SG_ FCABrkPrflReq : 5|1@0+ (1,0) [0|1] "" XXX - SG_ FwdClnAlrtOffIO11E : 6|1@0+ (1,0) [0|1] "" XXX - SG_ FwdClnAlrtPr11E : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtVsnFsdSpdGroup : 15|15@0+ (1,0) [0|0] "" XXX - SG_ SpdLmtVsnFsdSpd : 15|8@0+ (1,0) [0|255] "" XXX - SG_ SpdLmtVsnFsdSpdM : 17|1@0+ (1,0) [0|1] "" XXX - SG_ FwdObjAlrtInd11E : 16|9@0+ (1,0) [0|0] "" XXX - SG_ FOAI_AlrtChmIhbRq11E : 16|1@0+ (1,0) [0|1] "" XXX - SG_ FOAI_VehAhdIndRq11E : 27|4@0+ (1,0) [0|15] "" XXX - SG_ FOAI_AlrtWrnIndRq11E : 31|4@0+ (1,0) [0|15] "" XXX - SG_ SpdLmtVnFsSpdNwDet : 18|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtVsnFsdSpdUnt : 19|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149957632 Park_Assist_ESSprocess_Info_LS: 1 XXX - SG_ ClsnMtgtnInhbtd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstInhbtReq : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstRrObjSnsngRqAct : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstOprtrDsrdStat : 4|2@0+ (1,0) [0|3] "" XXX - -BO_ 2149941248 Park_Assist_ESSbased_Info_LS: 5 XXX - SG_ PrkAstRrExtdDstUnfltd : 3|12@0+ (0.01,0) [0|40.95] "m" XXX - SG_ PrkAstRrSysStatUnfltd : 5|2@0+ (1,0) [0|3] "" XXX - SG_ PrkAstFntnSnsDstrbdIO : 16|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstFntnSnrsBlkd : 17|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstFntnFld : 18|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstFntnDsbldIO : 19|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstFntnClnPrkAstIO : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ClsnMtgtnInhbtReqtd : 21|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstRrObjSnsngAct : 22|1@0+ (1,0) [0|1] "" XXX - SG_ PARrRgn3ObjStatUnfltd : 27|4@0+ (1,0) [0|15] "" XXX - SG_ PARrRgn4ObjStatUnfltd : 31|4@0+ (1,0) [0|15] "" XXX - SG_ PARrRgn1ObjStatUnfltd : 35|4@0+ (1,0) [0|15] "" XXX - SG_ PARrRgn2ObjStatUnfltd : 39|4@0+ (1,0) [0|15] "" XXX - -BO_ 2156314624 High_Volt_Time_Based_Chrg_LS: 8 XXX - SG_ TODCNxtPlnndDprtrTm : 5|14@0+ (1,0) [0|0] "" XXX - SG_ TODCNPDT_Hr : 2|5@0+ (1,0) [0|31] "Hour" XXX - SG_ TODCNPDT_DyOfWk : 5|3@0+ (1,0) [0|7] "" XXX - SG_ TODCNPDT_Min : 13|6@0+ (1,0) [0|63] "Minute" XXX - SG_ OffBrdCSFltDtctd : 6|1@0+ (1,0) [0|1] "" XXX - SG_ OBVhCsACChgRqBnVs : 7|1@0+ (1,0) [0|1] "" XXX - SG_ HVChgSyChgLvlPrfDt : 16|25@0+ (1,0) [0|0] "" XXX - SG_ HVCSCLPD_UsrIntTyp : 16|2@0+ (1,0) [0|3] "" XXX - SG_ HVCSCLPD_NrmChrgC : 27|5@0+ (1,0) [0|31] "A" XXX - SG_ HVCSCLPD_ChgLvlPfS : 30|3@0+ (1,0) [0|7] "" XXX - SG_ HVCSCLPD_RdCrntLv2 : 33|5@0+ (1,0) [0|31] "A" XXX - SG_ HVCSCLPD_RdCrntLv1 : 38|5@0+ (1,0) [0|31] "A" XXX - SG_ HVCSCLPD_RdCrntLv3 : 44|5@0+ (1,0) [0|31] "A" XXX - SG_ HVChrgAbrtRsn : 19|3@0+ (1,0) [0|7] "" XXX - SG_ TODCOpMd : 22|3@0+ (1,0) [0|7] "" XXX - SG_ HVChrgSysSplyFltIO : 23|1@0+ (1,0) [0|1] "" XXX - SG_ TODCDspMnPgTmpOr : 52|5@0+ (1,0) [0|0] "" XXX - SG_ TODCDMPTO_TpOvR : 51|4@0+ (1,0) [0|15] "" XXX - SG_ TODCDMPTO_CmPgR : 52|1@0+ (1,0) [0|1] "" XXX - SG_ HVChrgSysStNot : 55|3@0+ (1,0) [0|7] "" XXX - SG_ HVBatBlkSOC : 63|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2150449152 Engine_Information_5_LS: 4 XXX - SG_ SrvcFlSysPrkInOpnArIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvTrCtrlOffUnbIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvStblCtrlOffUnbIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ InActFuelMdFuelLvlIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ FuelSysNEmsRltMalfAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ EngInltSpcfcHmdtyGroup : 7|16@0+ (1,0) [0|0] "" XXX - SG_ EngInltSpcfcHmdtyM : 6|1@0+ (1,0) [0|1] "" XXX - SG_ EngInltSpcfcHmdtyV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EngInltSpcfcHmdty : 15|8@0+ (0.0196078,0) [0|4.999989] "% water" XXX - SG_ AutoStpInhbtRsnInd : 23|8@0+ (1,0) [0|0] "" XXX - SG_ ASIRI_Indication08 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication07 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication06 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication05 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication04 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication03 : 21|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication02 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ASIRI_Indication01 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtrSttngTypAct : 25|2@0+ (1,0) [0|3] "" XXX - SG_ ManTransIndReq : 28|3@0+ (1,0) [0|7] "" XXX - SG_ ESPDrvrExtIO : 29|1@0+ (1,0) [0|1] "" XXX - SG_ ESPDrvrDrStIndtrmntIO : 30|1@0+ (1,0) [0|1] "" XXX - SG_ ESPAutoPrkIO : 31|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149810176 FCA_VisionBased_Info_1_LS: 1 XXX - SG_ FCAHptcStVbnRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ FCAHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX - -BO_ 2149793792 FCA_VisionBased_Info_LS: 6 XXX - SG_ FwdClnAlrtCustCrntSetngVal : 3|3@0+ (1,0) [0|7] "" XXX - SG_ FCACustStngAvlbl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ VhlAhdDstIndReq : 26|19@0+ (1,0) [0|0] "" XXX - SG_ VADIR_IndLvl : 26|4@0+ (1,0) [0|15] "" XXX - SG_ VADIR_FlwTme : 38|7@0+ (0.1,0) [0|12.7] "s" XXX - SG_ VADIR_FlwDst : 47|8@0+ (1,0) [0|255] "m" XXX - -BO_ 2150080512 Aux_Coolant_Heater_Status_LS: 8 XXX - SG_ EngAstHtDfrdHtMdAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCsCrStVal : 2|2@0+ (1,0) [0|3] "" XXX - SG_ AuxClntHtrVlvStat : 5|3@0+ (1,0) [0|7] "" XXX - SG_ LBCChrgLvlPrfExpIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCstmrDaRstResp : 12|5@0+ (1,0) [0|0] "" XXX - SG_ LBCCDRR_PosNumbr : 10|3@0+ (1,0) [0|7] "" XXX - SG_ LBCCDRR_ClrStrdPosResp : 12|2@0+ (1,0) [0|3] "" XXX - SG_ LBCPosStgStat : 20|5@0+ (1,0) [0|0] "" XXX - SG_ LBCPSS_PosUpdtLct : 18|3@0+ (1,0) [0|7] "" XXX - SG_ LBCPSS_PosUpdtStat : 20|2@0+ (1,0) [0|3] "" XXX - SG_ LBCVehLctStat : 27|4@0+ (1,0) [0|0] "" XXX - SG_ LBCVLS_VehGPSLct : 26|3@0+ (1,0) [0|7] "" XXX - SG_ LBCVLS_VehGPSLctV : 27|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCstmrFdbk : 31|4@0+ (1,0) [0|0] "" XXX - SG_ LBCCF_Lct4PosStrdIO : 28|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCF_Lct3PosStrdIO : 29|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCF_Lct2PosStrdIO : 30|1@0+ (1,0) [0|1] "" XXX - SG_ LBCCF_Lct1PosStrdIO : 31|1@0+ (1,0) [0|1] "" XXX - SG_ ChrgCyclElecEngyEcnEq : 35|12@0+ (0.1,0) [0|409.5] "km/l" XXX - SG_ ChrgCyclOvrlEngyEcnEq : 51|12@0+ (0.1,0) [0|409.5] "km/l" XXX - -BO_ 2153873408 Heated_Steering_Whl_Rqsted_LS: 1 XXX - SG_ MnlHtdStWhlRqstd : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2152128512 Performance_Mode_Cust_Setings_LS: 4 XXX - SG_ ACCPerfMdCustAvl : 5|6@0+ (1,0) [0|0] "" XXX - SG_ ACCPMCA_ACCPrfMd6Avl : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ACCPMCA_ACCPrfMd5Avl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ACCPMCA_ACCPrfMd4Avl : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACCPMCA_ACCPrfMd3Avl : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ACCPMCA_ACCPrfMd2Avl : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ACCPMCA_ACCPrfMd1Avl : 5|1@0+ (1,0) [0|1] "" XXX - SG_ DrvrStPerfMdCustAvl : 13|6@0+ (1,0) [0|0] "" XXX - SG_ DSPMCA_DrvrStPrfMd6Avl : 8|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvrStPrfMd5Avl : 9|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvrStPrfMd4Avl : 10|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvrStPrfMd3Avl : 11|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvrStPrfMd2Avl : 12|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvrStPrfMd1Avl : 13|1@0+ (1,0) [0|1] "" XXX - SG_ PsngStPerfMdCustAvl : 21|6@0+ (1,0) [0|0] "" XXX - SG_ PSPMCA_PsngStPrfMd6Avl : 16|1@0+ (1,0) [0|1] "" XXX - SG_ PSPMCA_PsngStPrfMd5Avl : 17|1@0+ (1,0) [0|1] "" XXX - SG_ PSPMCA_PsngStPrfMd4Avl : 18|1@0+ (1,0) [0|1] "" XXX - SG_ PSPMCA_PsngStPrfMd3Avl : 19|1@0+ (1,0) [0|1] "" XXX - SG_ PSPMCA_PsngStPrfMd2Avl : 20|1@0+ (1,0) [0|1] "" XXX - SG_ PSPMCA_PsngStPrfMd1Avl : 21|1@0+ (1,0) [0|1] "" XXX - SG_ DrvStyPerfMdCustAvl : 30|7@0+ (1,0) [0|0] "" XXX - SG_ DSPMCA_DrvStyPrfMd7Avl : 24|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvStyPrfMd6Avl : 25|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvStyPrfMd5Avl : 26|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvStyPrfMd4Avl : 27|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvStyPrfMd3Avl : 28|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvStyPrfMd2Avl : 29|1@0+ (1,0) [0|1] "" XXX - SG_ DSPMCA_DrvStyPrfMd1Avl : 30|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151997440 Driver_Drowsiness_Dtctn_Stat_LS: 5 XXX - SG_ DrvDrowSysIndRq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ DrvDrwDetCsCrStVal : 5|3@0+ (1,0) [0|7] "" XXX - SG_ DrvDrowDetCstStAvl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ DrvDrsnHptcStRqSeqN : 9|2@0+ (1,0) [0|3] "" XXX - SG_ DrDrwSysHptcStVbnRq : 15|6@0+ (1,0) [0|63] "" XXX - -BO_ 2156331008 High_Voltage_EnergyMgmt_Ctrl_LS: 7 XXX - SG_ LwRngLVLdShdRq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ HVDpltnMdMxCnfdcRg : 11|12@0+ (0.1,0) [0|409.5] "km" XXX - SG_ HVDpltnMdMiCnfdcRg : 27|12@0+ (0.1,0) [0|409.5] "km" XXX - SG_ HVDpltnMdMxGugRg : 43|12@0+ (0.1,0) [0|409.5] "km" XXX - -BO_ 2151776256 Rear_Cross_Traffic_Alert_Left_LS: 5 XXX - SG_ RrCTfcLHptcStRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ RrCTfcLHptcStReq : 7|6@0+ (1,0) [0|63] "" XXX - SG_ RrCrsTrfAltLftIndCtrl : 34|3@0+ (1,0) [0|0] "" XXX - SG_ RCTALIC_IndReq : 33|2@0+ (1,0) [0|3] "" XXX - SG_ RCTALIC_Indctr1Act : 34|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154774528 Lighting_Customization_Info_1_LS: 1 XXX - SG_ LtRtHnTrCstStVal : 2|3@0+ (1,0) [0|7] "" XXX - SG_ LtRtHnTrGPCsCrStVal : 5|3@0+ (1,0) [0|7] "" XXX - SG_ LtRtHnTrCstStAvail : 6|1@0+ (1,0) [0|1] "" XXX - SG_ LtRtHnTrGPSCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150375424 Eng_Maintenance_Mode_Strt_Req_LS: 3 XXX - SG_ MntnceMdStEngRq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ EngAstHtCstStRq : 3|3@0+ (1,0) [0|7] "" XXX - SG_ EngAstHtPlgInCstStRq : 6|3@0+ (1,0) [0|7] "" XXX - SG_ DsplTrnsShftLvrLckRqd : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EngyCnsHistGrphRstRq : 8|1@0+ (1,0) [0|1] "" XXX - SG_ USBProgInPrgrs : 9|1@0+ (1,0) [0|1] "" XXX - SG_ LBCPosMdfcReq : 12|3@0+ (1,0) [0|7] "" XXX - SG_ LBCCsStReq : 14|2@0+ (1,0) [0|3] "" XXX - SG_ LBCCstmrDaRstReq : 20|5@0+ (1,0) [0|0] "" XXX - SG_ LBCCDRR_PosNum : 18|3@0+ (1,0) [0|7] "" XXX - SG_ LBCCDRR_ClrStrdPosReq : 20|2@0+ (1,0) [0|3] "" XXX - -BO_ 2150383616 Engine_Maintenance_Mode_Req_LS: 8 XXX - SG_ MntnceMdDsplyRq : 3|4@0+ (1,0) [0|15] "" XXX - SG_ EngMntnceMdAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ EngMntncePrcntCpl : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ EngPrpDspPwrLvlPct : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ EstElecPrpCap : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ PrpCapDspOpPs : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ PrpDspTtlPwr : 45|13@0+ (0.5,-326.6) [-326.6|3768.9] "kW" XXX - SG_ BatPrpDspPwrLvlPct : 48|9@0- (0.392157,0) [-100.392192|100.000035] "%" XXX - -BO_ 2151981056 Drive_Cycle_Efficiency_LS: 8 XXX - SG_ DstTrvldDt : 7|51@0+ (1,0) [0|0] "" XXX - SG_ DTD_BattPrpDstTrvld : 7|17@0+ (0.015625,0) [0|2047.984375] "km" XXX - SG_ DTD_FuelPrpDstTrvld : 22|17@0+ (0.015625,0) [0|2047.984375] "km" XXX - SG_ DTD_DrvCyclDstTrvld : 37|17@0+ (0.015625,0) [0|2047.984375] "km" XXX - SG_ DrvCyclBatPropRat : 50|11@0+ (0.048852,0) [0|100.000044] "%" XXX - -BO_ 2151964672 Drive_Cycle_Energy_Efficiency_LS: 8 XXX - SG_ DrvCyclBatCondEnrgEfncy : 7|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DrvCyclCbnCondEnrgEfncy : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DrvCyclDrvStEnrgEfncy : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DrvCyclTtlEnrgEfncy : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DrvCyclFuelEnmy : 47|12@0+ (0.1,0) [0|409.5] "km/liters" XXX - SG_ DrvCyclFuelUsd : 51|12@0+ (0.125,0) [0|511.875] "liters" XXX - -BO_ 2156298240 High_Volt_Batt_Time_Pwr_Chrg_LS: 8 XXX - SG_ HVBatCmpltTmHghPwrChrg : 7|14@0+ (1,0) [0|0] "" XXX - SG_ HVBCTHPC_HrOfDy : 4|5@0+ (1,0) [0|31] "Hour" XXX - SG_ HVBCTHPC_DyOfWk : 7|3@0+ (1,0) [0|7] "" XXX - SG_ HVBCTHPC_MntOfHr : 15|6@0+ (1,0) [0|63] "Minute" XXX - SG_ HVBatCmpltTmLwPwrChrg : 9|14@0+ (1,0) [0|0] "" XXX - SG_ HVBCTLPC_DyOfWk : 9|3@0+ (1,0) [0|7] "" XXX - SG_ HVBCTLPC_MntOfHr : 17|6@0+ (1,0) [0|63] "Minute" XXX - SG_ HVBCTLPC_HrOfDy : 22|5@0+ (1,0) [0|31] "Hour" XXX - SG_ HVBatStrTmHghPwrChrg : 27|14@0+ (1,0) [0|0] "" XXX - SG_ HVBSTHPC_HrOfDy : 24|5@0+ (1,0) [0|31] "Hour" XXX - SG_ HVBSTHPC_DyOfWk : 27|3@0+ (1,0) [0|7] "" XXX - SG_ HVBSTHPC_MntOfHr : 35|6@0+ (1,0) [0|63] "Minute" XXX - SG_ HVBatStrTmLwPwrChrg : 45|14@0+ (1,0) [0|0] "" XXX - SG_ HVBSTLPC_HrOfDy : 42|5@0+ (1,0) [0|31] "Hour" XXX - SG_ HVBSTLPC_DyOfWk : 45|3@0+ (1,0) [0|7] "" XXX - SG_ HVBSTLPC_MntOfHr : 53|6@0+ (1,0) [0|63] "Minute" XXX - SG_ HVChrgSysDpTmExdSt : 58|3@0+ (1,0) [0|0] "" XXX - SG_ HVCSDTES_NPDTIO : 56|1@0+ (1,0) [0|1] "" XXX - SG_ HVCSDTES_HiPwrCIO : 57|1@0+ (1,0) [0|1] "" XXX - SG_ HVCSDTES_LoPwrCIO : 58|1@0+ (1,0) [0|1] "" XXX - SG_ HTRActvIndOn : 59|1@0+ (1,0) [0|1] "" XXX - SG_ InsfcntTmTFlChrgIO : 60|1@0+ (1,0) [0|1] "" XXX - SG_ InvldHMIEtrIO : 61|1@0+ (1,0) [0|1] "" XXX - SG_ HVBatChrgCrdAlrtReq : 63|2@0+ (1,0) [0|3] "" XXX - -BO_ 2149924864 Drv_Pref_Mode_Switch_Status_LS: 8 XXX - SG_ DrvSelMd1Stat : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd1ReqDnd : 1|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd2Stat : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd2ReqDnd : 3|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd3Stat : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd3ReqDnd : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HilRlbkCtrlActIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ FwdClnMtgnBrkReqAct : 7|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMdSelnStat : 8|17@0+ (1,0) [0|0] "" XXX - SG_ DSMSS_DrvSelMd1Un : 8|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd1Pn : 16|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd8Un : 17|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd7Un : 18|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd6Un : 19|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd5Un : 20|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd4Un : 21|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd3Un : 22|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd2Un : 23|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd0Pn : 24|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd8Pn : 25|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd7Pn : 26|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd6Pn : 27|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd5Pn : 28|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd4Pn : 29|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd3Pn : 30|1@0+ (1,0) [0|1] "" XXX - SG_ DSMSS_DrvSelMd2Pn : 31|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd4Stat : 9|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd4ReqDnd : 10|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd5Stat : 11|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd5ReqDnd : 12|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd6Stat : 13|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd6ReqDnd : 14|1@0+ (1,0) [0|1] "" XXX - SG_ PTOMobModTrnsInGrIO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ECODrvAsstDsplyStat : 34|11@0+ (1,0) [0|0] "" XXX - SG_ EDADS_ShftIndStat : 33|2@0+ (1,0) [0|3] "" XXX - SG_ EDADS_EcoDrvShftIO : 34|1@0+ (1,0) [0|1] "" XXX - SG_ EDADS_RcmndtFwdGr : 43|4@0+ (1,0) [0|15] "" XXX - SG_ EDADS_CrntFwdMsdG : 47|4@0+ (1,0) [0|15] "" XXX - SG_ DrvSelMd7Stat : 35|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd7ReqDnd : 36|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd8Stat : 37|1@0+ (1,0) [0|1] "" XXX - SG_ DrvSelMd8ReqDnd : 38|1@0+ (1,0) [0|1] "" XXX - SG_ FstIdlMdAct : 39|1@0+ (1,0) [0|1] "" XXX - SG_ DsplyPerfMdRq : 50|3@0+ (1,0) [0|7] "" XXX - SG_ TireLFLowTracIO : 51|1@0+ (1,0) [0|1] "" XXX - SG_ TireLRLowTracIO : 52|1@0+ (1,0) [0|1] "" XXX - SG_ TireRFLowTracIO : 53|1@0+ (1,0) [0|1] "" XXX - SG_ TireRRLowTracIO : 54|1@0+ (1,0) [0|1] "" XXX - SG_ a_12VBatSysUnstab : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ColPrepSysCustAvail : 62|7@0+ (1,0) [0|0] "" XXX - SG_ CPSCA_Resrv3Avail : 56|1@0+ (1,0) [0|1] "" XXX - SG_ CPSCA_Resrv2Avail : 57|1@0+ (1,0) [0|1] "" XXX - SG_ CPSCA_Resrv1Avail : 58|1@0+ (1,0) [0|1] "" XXX - SG_ CPSCA_AlrtBrkStrAvail : 59|1@0+ (1,0) [0|1] "" XXX - SG_ CPSCA_AlrtBrkAvail : 60|1@0+ (1,0) [0|1] "" XXX - SG_ CPSCA_AlrtAvail : 61|1@0+ (1,0) [0|1] "" XXX - SG_ CPSCA_OffAvail : 62|1@0+ (1,0) [0|1] "" XXX - -BO_ 2152054784 HMI_Disp_Hyb_Animation_Status_LS: 1 XXX - SG_ AnmStrtReq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ IntPnlClstrAnmtStat : 5|3@0+ (1,0) [0|7] "" XXX - SG_ FuelEconMetDispUnts : 6|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150301696 HMI_Animation_Initiator_LS: 1 XXX - SG_ WlcAnmReq : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150563840 HMI_AnimationHybridRadio_LS: 3 XXX - SG_ RadAnmtStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ RadAudQueStat : 5|3@0+ (1,0) [0|7] "" XXX - SG_ DrStStatDispAct : 6|1@0+ (1,0) [0|1] "" XXX - SG_ PsStStatDispAct : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154758144 Auxiliary_Heater_Active_LS: 1 XXX - SG_ ChldLckOtSwAct : 1|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154577920 Amp_Sink_Stat_LS: 2 XXX - SG_ AmpSnkStat : 4|13@0+ (1,0) [0|0] "" XXX - SG_ ASS_SurndAvail : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPAvail : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_VehNoisCmpnAvail : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_PhLckdLpLckd : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_MtxSnkMutStat : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd7Prsnt : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd6Prsnt : 9|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd5Prsnt : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd4Prsnt : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd3Prsnt : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd2Prsnt : 13|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd1Prsnt : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ASS_DSPMd0Prsnt : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154594304 Amp_Settings_Tone_Ctrl_LS: 5 XXX - SG_ AmpSetTonCtrl : 1|34@0+ (1,0) [0|0] "" XXX - SG_ ASTC_ChimSnkLvl : 1|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX - SG_ ASTC_ChimSnkSpkrPos : 9|4@0+ (1,0) [0|15] "" XXX - SG_ ASTC_SurndLvl : 21|6@0- (1,0) [-32|31] "" XXX - SG_ ASTC_MtxSnkMutRmpTm : 25|8@0+ (5,0) [0|1275] "ms" XXX - SG_ ASTC_MtxSnkMut : 26|1@0+ (1,0) [0|1] "" XXX - SG_ ASTC_DSPMd : 30|4@0+ (1,0) [0|15] "" XXX - SG_ ASTC_VehNoisCmpnAct : 31|1@0+ (1,0) [0|1] "" XXX - SG_ ASTC_GblAudSnkMut : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ASTC_AmpLwPwrSt : 33|1@0+ (1,0) [0|1] "" XXX - SG_ InfotnBkltngConfigSt : 3|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154586112 Amp_Settings_Sink_Lvl_Ctrl_LS: 8 XXX - SG_ AmpSetSnkLvlCtrl : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ASSLC_MtxSnkLvl : 7|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX - SG_ ASSLC_MxPrmtSnkLvl : 15|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX - SG_ ASSLC_AudFdbkSnkLvl : 23|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX - SG_ ASSLC_FvSnkLvl : 31|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX - SG_ ASSLC_MtxSnkFd : 33|6@0- (1,0) [-32|31] "" XXX - SG_ ASSLC_MtxSnkBal : 39|6@0- (1,0) [-32|31] "" XXX - SG_ ASSLC_MtxSnkBass : 43|6@0- (1,0) [-32|31] "" XXX - SG_ ASSLC_MtxSnkMdrng : 53|6@0- (1,0) [-32|31] "" XXX - SG_ ASSLC_AutoLdnsCmpnAct : 56|1@0+ (1,0) [0|1] "" XXX - SG_ ASSLC_VcSrcActOnMtx : 57|1@0+ (1,0) [0|1] "" XXX - SG_ ASSLC_MtxSnkTrbl : 63|6@0- (1,0) [-32|31] "" XXX - -BO_ 2152857600 ACC_TrafficJam_RouteSpd_Stat_LS: 3 XXX - SG_ ACCRteSpdDrvIntvReq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ACCTrfcJamAstActStat : 10|3@0+ (1,0) [0|7] "" XXX - SG_ ACCRteSpdAdaptStat : 12|2@0+ (1,0) [0|3] "" XXX - SG_ ACCGrnMdStat : 14|2@0+ (1,0) [0|3] "" XXX - SG_ ACCTrfcJamAstRmnTm : 23|8@0+ (1,0) [0|255] "sec" XXX - -BO_ 2158149632 High_Volt_Bat_Time_Bsd_Rsp_1_LS: 7 XXX - SG_ HVBatTmBsSsnChRsp : 0|14@0+ (1,0) [0|0] "" XXX - SG_ HVBTBSCR_SsnStat : 0|2@0+ (1,0) [0|3] "" XXX - SG_ HVBTBSCR_SsnMthStat : 11|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBSCR_SsnSlctStat : 14|3@0+ (1,0) [0|7] "" XXX - SG_ HVBTBSCR_SsnDyStat : 23|5@0+ (1,0) [0|31] "day" XXX - SG_ HVBatTmBsChrgStRsp : 3|3@0+ (1,0) [0|7] "" XXX - SG_ HVBatCrgDspStat : 6|3@0+ (1,0) [0|7] "" XXX - SG_ HVBatTmBsChrgRtRsp : 17|10@0+ (1,0) [0|0] "" XXX - SG_ HVBTBCRS_ChRtEnblStat : 17|2@0+ (1,0) [0|3] "" XXX - SG_ HVBTBCRS_ChRtSlctStat : 27|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBCRS_ChRtDStat : 31|4@0+ (1,0) [0|15] "" XXX - SG_ EngyCnsHsGrphCnfgDt : 36|13@0+ (1,0) [0|0] "" XXX - SG_ ECHGCD_YAxMaxVal : 32|6@0+ (4,0) [0|252] "" XXX - SG_ ECHGCD_MeasUt : 36|4@0+ (1,0) [0|15] "" XXX - SG_ ECHGCD_XAxTkMrkInterv : 42|3@0+ (1,0) [0|7] "" XXX - SG_ EgyCnsHstGphInsEgyCns : 55|5@0+ (1,0) [0|31] "" XXX - -BO_ 2158116864 High_Volt_Bat_Time_Bsd_Rsp_LS: 8 XXX - SG_ OBHVBCMinsRmng : 5|6@0+ (1,0) [0|63] "" XXX - SG_ OBHVBCCompTmDispFrmt : 7|2@0+ (1,0) [0|3] "" XXX - SG_ HVBatTmBsDelChrgRsp : 12|21@0+ (1,0) [0|0] "" XXX - SG_ HVBTBDCRS_DlChHRsp : 12|5@0+ (1,0) [0|31] "hr" XXX - SG_ HVBTBDCRS_DlChSlctStat : 19|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBDCRS_DlChDStat : 23|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBDCRS_DlChMHRsp : 29|6@0+ (1,0) [0|63] "min" XXX - SG_ HVBTBDCRS_DlChSsnStat : 31|2@0+ (1,0) [0|3] "" XXX - SG_ HVBatTmBsRtChrgRsp : 34|27@0+ (1,0) [0|0] "" XXX - SG_ HVBTBRCR_RtChMHRsp : 32|6@0+ (1,0) [0|63] "min" XXX - SG_ HVBTBRCR_RtChSsnStat : 34|2@0+ (1,0) [0|3] "" XXX - SG_ HVBTBRCR_RtChSlctStat : 42|3@0+ (1,0) [0|7] "" XXX - SG_ HVBTBRCR_RtChDStat : 50|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBRCR_RtChHRsp : 55|5@0+ (1,0) [0|31] "hr" XXX - SG_ HVBTBRCR_RtCHSlctTblRwStat : 58|3@0+ (1,0) [0|7] "rows" XXX - SG_ HVBTBRCR_RtChSlRtStat : 62|4@0+ (1,0) [0|15] "" XXX - -BO_ 2156281856 High_Volt_Bat_Time_Bsd_Req_1_LS: 7 XXX - SG_ HVBatTmBsSsnChStReq : 0|14@0+ (1,0) [0|0] "" XXX - SG_ HVBTBSCSR_SsnStReq : 0|2@0+ (1,0) [0|3] "" XXX - SG_ HVBTBSCSR_SsnMthStReq : 11|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBSCSR_SsnSlStReq : 14|3@0+ (1,0) [0|7] "" XXX - SG_ HVBTBSCSR_SsnDayStReq : 23|5@0+ (1,0) [0|31] "day" XXX - SG_ HVBatTmBsChrgMdReq : 3|3@0+ (1,0) [0|7] "" XXX - SG_ HVChgSyChgLvlPrfSt : 6|3@0+ (1,0) [0|7] "" XXX - SG_ StTODChrgTmpOvrd : 7|1@0+ (1,0) [0|1] "" XXX - SG_ HVBatTmBsChrgRtStReq : 17|10@0+ (1,0) [0|0] "" XXX - SG_ HVBTBCRSR_ChRtEnblStReq : 17|2@0+ (1,0) [0|3] "" XXX - SG_ HVBTBCRSR_ChRtSlStReq : 27|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBCRSR_ChRtDStReq : 31|4@0+ (1,0) [0|15] "" XXX - SG_ TmpOvdNxtPlnDptTmRq : 32|17@0+ (1,0) [0|0] "" XXX - SG_ TONPDTR_StTmpOvrAtv : 32|2@0+ (1,0) [0|3] "" XXX - SG_ TONPDTR_HrOfDy : 42|5@0+ (1,0) [0|31] "Hour" XXX - SG_ TONPDTR_DyOfWk : 46|4@0+ (1,0) [0|15] "" XXX - SG_ TONPDTR_MntOfHr : 53|6@0+ (1,0) [0|63] "Minute" XXX - SG_ RtBsChrgCmplnTmPrfReq : 34|2@0+ (1,0) [0|3] "" XXX - SG_ HTRCsStReq : 37|3@0+ (1,0) [0|7] "" XXX - -BO_ 2156265472 High_Volt_Bat_Time_Bsd_Req_LS: 8 XXX - SG_ ChgCdTfAlCzStRq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ ChgPwLsAlCzStRq : 5|3@0+ (1,0) [0|7] "" XXX - SG_ PrtyChrgRq : 7|2@0+ (1,0) [0|3] "" XXX - SG_ HVBatTmBsDlChStReq : 12|21@0+ (1,0) [0|0] "" XXX - SG_ HVBTBDCSRQ_DlChHStReq : 12|5@0+ (1,0) [0|31] "hr" XXX - SG_ HVBTBDCSRQ_DlChSlStReq : 19|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBDCSRQ_DlChDStReq : 23|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBDCSRQ_DlChMHStReq : 29|6@0+ (1,0) [0|63] "min" XXX - SG_ HVBTBDCSRQ_DlChSsnStReq : 31|2@0+ (1,0) [0|3] "" XXX - SG_ ChgSysAudInCsStReq : 15|3@0+ (1,0) [0|7] "" XXX - SG_ HVBatTmBsRtChrgStReq : 34|27@0+ (1,0) [0|0] "" XXX - SG_ HVBTBRCSR_RtChDStReq : 34|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBRCSR_RtChSlStReq : 42|3@0+ (1,0) [0|7] "" XXX - SG_ HVBTBRCSR_RtChSlRtStReq : 46|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBRCSR_RtChMHStReq : 48|6@0+ (1,0) [0|63] "min" XXX - SG_ HVBTBRCSR_RtChSsnStReq : 50|2@0+ (1,0) [0|3] "" XXX - SG_ HVBTBRCSR_RtChHStReq : 55|5@0+ (1,0) [0|31] "hr" XXX - SG_ HVBTBRCSR_RtChSlTbRwReq : 58|3@0+ (1,0) [0|7] "rows" XXX - SG_ OffBrdHVCVehCsChRq : 35|1@0+ (1,0) [0|1] "" XXX - SG_ EngyUsgScrnMeasUtStat : 39|4@0+ (1,0) [0|15] "" XXX - -BO_ 2150113280 Energy_Storage_System_LS: 8 XXX - SG_ EngyStgSysActCoolEnb : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrvCycElEnrgUsd : 21|14@0+ (0.36,0) [0|5897.88] "MJ" XXX - SG_ DrvCyclElecEngyEcon : 32|9@0+ (0.1,0) [0|51.1] "" XXX - SG_ HVChrgInhbRsn : 36|4@0+ (1,0) [0|15] "" XXX - SG_ DrvCyclTrpDstTrvld : 54|15@0+ (0.1,0) [0|3276.7] "km" XXX - -BO_ 2150055936 Climate_Control_Status_LS: 5 XXX - SG_ ClmtCtrlUpprPwrLmt : 7|8@0+ (0.1,0) [0|25.5] "kW" XXX - SG_ ClmtCtrlLwrPwrLmt : 15|8@0+ (0.1,0) [0|25.5] "kW" XXX - SG_ ClimCtrlHVDvcShtdwnCmd : 16|1@0+ (1,0) [0|1] "" XXX - SG_ ClmCntCmpPwrUsdClc : 39|8@0+ (0.04,0) [0|10.2] "kW" XXX - -BO_ 2150039552 Thrml_Ref_Compressor_Status_LS: 5 XXX - SG_ ThrmlRefCompStat : 3|4@0+ (1,0) [0|15] "" XXX - SG_ EvpCorOtltAirTmpCalcdGroup : 4|13@0+ (1,0) [0|0] "" XXX - SG_ EvpCorOtltAirTmpCalcdV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ EvpCorOtltAirTmpCalcd : 15|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - SG_ ThrmlRefCompSpdGroup : 22|15@0+ (1,0) [0|0] "" XXX - SG_ ThrmlRefCompSpd : 21|14@0+ (1,0) [0|16383] "rpm" XXX - SG_ ThrmlRefCompSpdV : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ThrmlRfCmpOvTmpFltPr : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154856448 Humidity_Sensor_Status_LS: 5 XXX - SG_ HmdtySnsrGlssTemp : 1|10@0+ (0.146628,-50) [-50|100.000444] "deg C" XXX - SG_ HmdtySnsrTemp : 17|10@0+ (0.146628,-50) [-50|100.000444] "deg C" XXX - SG_ HmdtySnsrRltvHmdty : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2151342080 Park_Assistant_Right_Status_LS: 2 XXX - SG_ PARtRgn1ObjStat : 3|4@0+ (1,0) [0|15] "" XXX - SG_ PrkAstRtSysStat : 5|2@0+ (1,0) [0|3] "" XXX - SG_ PARtRgn3ObjStat : 11|4@0+ (1,0) [0|15] "" XXX - SG_ PARtRgn2ObjStat : 15|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151325696 Park_Assistant_Left_Status_LS: 2 XXX - SG_ PALtRgn1ObjStat : 3|4@0+ (1,0) [0|15] "" XXX - SG_ PrkAstLtSysStat : 5|2@0+ (1,0) [0|3] "" XXX - SG_ PALtRgn3ObjStat : 11|4@0+ (1,0) [0|15] "" XXX - SG_ PALtRgn2ObjStat : 15|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151809024 Drv_Cycl_Elec_Enrgy_Consumd_LS: 8 XXX - SG_ DrvCycElecEngySt5 : 5|14@0+ (0.36,0) [0|5897.88] "MJ" XXX - SG_ DrvCycElecEngyCnsmd : 23|32@0+ (1,0) [0|0] "" XXX - SG_ DCEEC_EngyPct1 : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DCEEC_EngyPct2 : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DCEEC_EngyPct3 : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ DCEEC_EngyPct4 : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ ElecEngyEconAvg : 48|9@0+ (0.1,0) [0|51.1] "" XXX - -BO_ 2151858176 Drv_Cycl_Elec_Enrgy_States_LS: 8 XXX - SG_ DrvCycElecEngySt1 : 5|14@0+ (0.36,0) [0|5897.88] "MJ" XXX - SG_ DrvCycElecEngySt2 : 21|14@0+ (0.36,0) [0|5897.88] "MJ" XXX - SG_ DrvCycElecEngySt3 : 37|14@0+ (0.36,0) [0|5897.88] "MJ" XXX - SG_ DrvCycElecEngySt4 : 53|14@0+ (0.36,0) [0|5897.88] "MJ" XXX - -BO_ 2150547456 HMI_Hybrid_Vehicle_Status_LS: 8 XXX - SG_ HVDpltnMdRng : 0|16@0+ (0.015625,0) [0|1023.984375] "km" XXX - SG_ VehChrgMdSt : 3|3@0+ (1,0) [0|7] "" XXX - SG_ GrnAudQueReq : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SvcHybChrgSysIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HVBatChrgCrdConnIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ CntrsOpnUndrTmpIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ OffBrdHVCVehCplrLkd : 16|1@0+ (1,0) [0|1] "" XXX - SG_ HVBatLimDTmpInd : 25|2@0+ (1,0) [0|3] "" XXX - SG_ OffBrdHVCVehPwrDrtd : 26|1@0+ (1,0) [0|1] "" XXX - SG_ HVChrgrSysStat : 29|3@0+ (1,0) [0|7] "" XXX - SG_ HVChrgrCplrStat : 31|2@0+ (1,0) [0|3] "" XXX - SG_ ChgrSysAdblIndReq : 33|2@0+ (1,0) [0|3] "" XXX - SG_ HVBatOutOfEnrgyInd : 36|3@0+ (1,0) [0|7] "" XXX - SG_ OffBrdHVBlkChrgCmp : 37|1@0+ (1,0) [0|1] "" XXX - SG_ ElecPrplsnMtrOvrSpdIO : 38|1@0+ (1,0) [0|1] "" XXX - SG_ HVBatCntctrsOpnIO : 39|1@0+ (1,0) [0|1] "" XXX - SG_ HVDpltnMdCnfdcTrndg : 47|8@0- (0.787402,0) [-100.787456|100.000054] "%" XXX - SG_ OffBrdHVBlkChgCpltTm : 53|14@0+ (1,0) [0|0] "" XXX - SG_ OBHVBCCT_HrofDay : 50|5@0+ (1,0) [0|31] "" XXX - SG_ OBHVBCCT_DayofWk : 53|3@0+ (1,0) [0|7] "" XXX - SG_ OBHVBCCT_MinofHr : 61|6@0+ (1,0) [0|63] "" XXX - SG_ OffBrdHVCVehPwrLvl : 55|2@0+ (1,0) [0|3] "" XXX - -BO_ 2151489536 CSV_EOCM_R_Indications_LS: 1 XXX - SG_ RVBShtToPrkBfExtngVehIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RVBAutoBrkRlsIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ NVSysStat : 4|3@0+ (1,0) [0|7] "" XXX - -BO_ 2149761024 Chassis_Information_2_LS: 6 XXX - SG_ PerfTrcCrnExStngVal : 4|5@0+ (1,0) [0|31] "" XXX - SG_ ActVehAccelGroup : 5|22@0+ (1,0) [0|0] "" XXX - SG_ ActVehAccelV : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ActVehAccel : 11|12@0- (0.01,0) [-20.48|20.47] "m/s^2" XXX - SG_ TrlrStabAstActIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ElvtdIdlCstStAvl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ ElvtdIdlCstCrStVal : 13|2@0+ (1,0) [0|3] "" XXX - SG_ TrnsCltchThrmlProtIndR : 27|20@0+ (1,0) [0|0] "" XXX - SG_ TCTPIR_DrvNotfn : 27|4@0+ (1,0) [0|15] "" XXX - SG_ TCTPIR_TnsEsClTmpD : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ TCTPIR_TnsEsClCDwT : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ PsngStPerfMdCsCrStVal : 30|3@0+ (1,0) [0|7] "" XXX - SG_ PsngStPerfMdCsStAvl : 31|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155012096 SBZA_Right_Status_LS: 1 XXX - SG_ SODTmpUnavlbleIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SODSnsClnRqdIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SODRtIndCntl : 6|5@0+ (1,0) [0|0] "" XXX - SG_ SODRIC_Ind3 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ SODRIC_Ind2 : 3|1@0+ (1,0) [0|1] "" XXX - SG_ SODRIC_Ind1 : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SODRIC_IndReq : 6|2@0+ (1,0) [0|3] "" XXX - SG_ SrvSODSysIO : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150514688 Power_Slidining_Door_Status_LS: 1 XXX - SG_ SldngDrRgtStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ SldngDrLftStat : 5|3@0+ (1,0) [0|7] "" XXX - SG_ PwrSldngDrUnavlblIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ SdClsrObstclDtctdStat : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2158067712 Video_Master_Info_2_LS: 5 XXX - SG_ TchScnDsplUsrActnExt : 1|34@0+ (1,0) [0|0] "" XXX - SG_ TSDUAE_RotBtnPsh : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TSDUAE_ScrnPrsdRq : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TSDUAE_GrphStrkInfRq : 15|8@0+ (1,0) [0|255] "" XXX - SG_ TSDUAE_XCoOdntRq : 23|8@0+ (1,0) [0|255] "" XXX - SG_ TSDUAE_YCoOdntRq : 31|8@0+ (1,0) [0|255] "" XXX - SG_ TSDUAE_RotEnc : 39|8@0- (1,0) [-128|127] "Detentions" XXX - -BO_ 2158051328 Video_Master_Info_1_LS: 5 XXX - SG_ RemRcvrSrcInpCmd : 3|4@0+ (1,0) [0|15] "" XXX - SG_ VidMstrDsplyMd : 5|2@0+ (1,0) [0|3] "" XXX - SG_ VidSrcUICntrlStat : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RmtRcvrTunCmnd : 12|5@0+ (1,0) [0|31] "" XXX - SG_ VidMstrArbCmd : 15|3@0+ (1,0) [0|7] "" XXX - SG_ RmtRcvrTunVal : 23|16@0- (1,0) [-32768|32767] "" XXX - SG_ VidMstrSrcType : 36|5@0+ (1,0) [0|31] "" XXX - SG_ TVDspCmd : 39|3@0+ (1,0) [0|7] "" XXX - -BO_ 2158034944 TV_Tuner_Info_LS: 6 XXX - SG_ VidSrcCompFormatER : 3|4@0+ (1,0) [0|15] "" XXX - SG_ CurntTVStnServc : 6|3@0+ (1,0) [0|7] "" XXX - SG_ CurntTVStnQual : 7|1@0+ (1,0) [0|1] "" XXX - SG_ RmtRcvrCmndStat : 10|3@0+ (1,0) [0|7] "" XXX - SG_ RmtRecvtDataTyp : 13|3@0+ (1,0) [0|7] "" XXX - SG_ RmtRcvrTunStat : 14|1@0+ (1,0) [0|1] "" XXX - SG_ TVTunerPres : 15|1@0+ (1,0) [0|1] "" XXX - SG_ RmtRcvrPrgrmServID : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ VidSrcStatCode : 35|4@0+ (1,0) [0|15] "" XXX - SG_ RemRcvrSrcInpStat : 39|4@0+ (1,0) [0|15] "" XXX - SG_ VidSrcType : 44|5@0+ (1,0) [0|31] "" XXX - -BO_ 2158018560 TV_Station_Name_LS: 8 XXX - SG_ TVStatNmeChar1_8 : 7|64@0+ (1,0) [0|0] "" XXX - -BO_ 2156838912 WiFi_Station_LS: 7 XXX - SG_ WiFiStationResp : 3|52@0+ (1,0) [0|0] "" XXX - SG_ WSR_WiFiAssnStat : 3|4@0+ (1,0) [0|15] "" XXX - SG_ WSR_WiFiStnMACAddr : 15|48@0+ (1,0) [0|281474976710655] "" XXX - -BO_ 2156822528 WiFi_AP_Data_LS: 2 XXX - SG_ WiFiAccsPntData : 0|9@0+ (1,0) [0|0] "" XXX - SG_ WAPD_IHUWiFiEnStat : 0|1@0+ (1,0) [0|1] "" XXX - SG_ WAPD_EncrptnType : 11|4@0+ (1,0) [0|15] "" XXX - SG_ WAPD_SecurityType : 15|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151948288 Driver_Drow_Det_Cst_Rqst_LS: 1 XXX - SG_ DrvDrowDetCstStRq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ RunBrdOpMdCstStReq : 7|3@0+ (1,0) [0|7] "" XXX - -BO_ 2158002176 XM_Radio_Service_LS: 1 XXX - SG_ CurntStnServc : 2|3@0+ (1,0) [0|7] "" XXX - SG_ SrvcPrvdr : 5|3@0+ (1,0) [0|7] "" XXX - -BO_ 2149728256 Charging_Sys_Trans_Shift_Lock_LS: 5 XXX - SG_ ChrgSysTrnsShftLckRq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ChrgPrtDrStat : 2|2@0+ (1,0) [0|3] "" XXX - SG_ PrtyChrgActIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PrtyChrgAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ HghVltgPropState : 7|3@0+ (1,0) [0|7] "" XXX - SG_ ChgCdTfAlCzCrStVal : 10|3@0+ (1,0) [0|7] "" XXX - SG_ ChgCdTfAlCzStAvbl : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ChgPwLsAlCzCrStVal : 14|3@0+ (1,0) [0|7] "" XXX - SG_ ChgPwLsAlCzStAvbl : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ChgSyAudInCsCrStVa : 18|3@0+ (1,0) [0|7] "" XXX - SG_ ChgSysAudInCsStAvl : 19|1@0+ (1,0) [0|1] "" XXX - SG_ HVChrgPwrLvl : 22|3@0+ (1,0) [0|7] "" XXX - SG_ EngAstHtCsCrStVal : 26|3@0+ (1,0) [0|7] "" XXX - SG_ EngAstHtCsStAvl : 27|1@0+ (1,0) [0|1] "" XXX - SG_ EngAstHtPlgInCsCrStVl : 30|3@0+ (1,0) [0|7] "" XXX - SG_ EngAstHtPlgInCsStAvl : 31|1@0+ (1,0) [0|1] "" XXX - SG_ PrtyChrgStPnt : 38|7@0+ (1,0) [0|127] "" XXX - -BO_ 2150023168 Hybrid_Information_LS: 5 XXX - SG_ HybChrgMdStat : 1|2@0+ (1,0) [0|3] "" XXX - SG_ HVInvRatVltGroup : 2|19@0+ (1,0) [0|0] "" XXX - SG_ HVInvRatVltV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ HVInvRatVlt : 8|9@0+ (1,0) [0|511] "volts" XXX - SG_ OffBrdVehImmbNot : 5|3@0+ (1,0) [0|7] "" XXX - SG_ ElecPrplsnMtrTach : 28|13@0+ (1,0) [0|8191] "rpm" XXX - -BO_ 2153988096 Power_Elec_Info_LS: 7 XXX - SG_ PwrElecCoolLpTempGroup : 1|10@0+ (1,0) [0|0] "" XXX - SG_ PwrElecCoolLpTempV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ PwrElecCoolLpTempM : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PwrElecCoolLpTemp : 15|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ EngyUsgScr : 20|37@0+ (1,0) [0|0] "" XXX - SG_ EUS_TcEngyUsgScrAvVal : 20|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUS_TrEngyUsgScrAvVal : 29|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUS_OTEngyUsgScrAvVal : 38|7@0- (0.1,0) [-5|5] "" XXX - SG_ EUS_TtEngyUsgScrAvVal : 40|9@0- (0.1,0) [-20|20] "" XXX - SG_ EUS_ITEngyUsgScrAvVal : 47|7@0- (0.1,0) [-5|5] "" XXX - -BO_ 2155945984 Jump_Start_Req_LS: 1 XXX - SG_ JmpStrtReq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TCSysCurStReq : 2|2@0+ (1,0) [0|3] "" XXX - SG_ VehStbEnhmntCurStRq : 4|2@0+ (1,0) [0|3] "" XXX - SG_ VehStbCmptvMdCurStRq : 6|2@0+ (1,0) [0|3] "" XXX - -BO_ 2155585536 MSB_Customization_Setting_Req_LS: 1 XXX - SG_ StBltTgtCSRq : 2|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155569152 CPS_Customization_Setting_Req_LS: 3 XXX - SG_ ColPrSysCustReq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ ExtHlStrAssCsStRq : 5|3@0+ (1,0) [0|7] "" XXX - SG_ IntDimSeldClrTypStReq : 12|5@0+ (1,0) [0|31] "" XXX - SG_ HLOCCstSetReq : 15|3@0+ (1,0) [0|7] "" XXX - SG_ IntDimSeldAnmTypStReq : 19|4@0+ (1,0) [0|15] "" XXX - SG_ SmPhRmFunCstStReq : 22|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155233280 VICM_Info_LS: 8 XXX - SG_ VehRefuelSt : 2|3@0+ (1,0) [0|7] "" XXX - SG_ FlDrOpenIndOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ UtlChrgPopUpAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ UtlChrgIntrfrIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ShftPrkIO_3B2 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ NtrlCstdwnCrtMdActvIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ RtBsChrgCmplnTmPrfRsp : 9|2@0+ (1,0) [0|3] "" XXX - SG_ EngRnngDutoVehSpdIO : 10|1@0+ (1,0) [0|1] "" XXX - SG_ NtrlGrWrngIO : 11|1@0+ (1,0) [0|1] "" XXX - SG_ LftmFuelEcon : 19|12@0+ (0.1,0) [0|409.5] "kilometers/liter" XXX - SG_ LiftimeFuelEcnEquiv : 35|12@0+ (0.1,0) [0|409.5] "km/l" XXX - SG_ ChrgCyclFuelEcn : 51|12@0+ (0.1,0) [0|409.5] "km/l" XXX - -BO_ 2152169472 Coolant_Heater_Status_LS: 3 XXX - SG_ ClntHtrSt : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ClntHtrPCBOvTmpFlt : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ClntHtrHtSnkOvTmpFlt : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ClntHtrElecPwrGroup : 4|13@0+ (1,0) [0|0] "" XXX - SG_ ClntHtrElecPwrV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ClntHtrElecPwr : 15|8@0+ (0.04,0) [0|10.2] "kW" XXX - SG_ ClntHtrFlt : 7|3@0+ (1,0) [0|7] "" XXX - SG_ ClntHtrInltClntTmp : 23|8@0+ (1,-40) [-40|215] "deg C" XXX - -BO_ 2152759296 SITM_Front_Sensor_IO_LS: 1 XXX - SG_ FrtCmrBlckdIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ FrtEOCMMdlFldIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ FrtCmrFldIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ FrtRdrFldIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PedWrnIndReq : 5|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152742912 SITM_Rear_Sensor_IO_LS: 1 XXX - SG_ RrEOCMMdlFldIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RrRdrBlckdIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RrRdrFldIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ShrtRngRdrOffIO : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150891520 Go_Notifier_Req_LS: 5 XXX - SG_ DgtlMapSpdCat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ FwdClnAlrtCustStngReq : 5|3@0+ (1,0) [0|7] "" XXX - SG_ GNCustStngReq : 7|2@0+ (1,0) [0|3] "" XXX - SG_ DgtlMapDrvngSd : 8|1@0+ (1,0) [0|1] "" XXX - SG_ DgtlMapPsgRstrctn : 11|3@0+ (1,0) [0|7] "" XXX - SG_ RrStRmndrCstSetReq : 14|3@0+ (1,0) [0|7] "" XXX - SG_ DgtlMapEffSpdLmt : 20|5@0+ (1,0) [0|31] "" XXX - SG_ DgtlMapEffSpdLmtTyp : 23|3@0+ (1,0) [0|7] "" XXX - SG_ DgtlMapVerYr : 29|6@0+ (1,0) [0|63] "" XXX - SG_ DgtlMapVerQtr : 31|2@0+ (1,0) [0|3] "" XXX - SG_ DgtlMapCndlSpdLmt : 36|5@0+ (1,0) [0|31] "" XXX - SG_ DgtlMapCndlSpdLmtTyp : 39|3@0+ (1,0) [0|7] "" XXX - -BO_ 2151751680 Haptic_Seat_Status_LS: 3 XXX - SG_ CrshAlrtDrvrSlctdType : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CrshAlrtStPrsnt : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HptcStVbnStat : 3|2@0+ (1,0) [0|3] "" XXX - SG_ HptcStFldIO : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155536384 Rear_Virtual_Bmper_Indication_LS: 1 XXX - SG_ RVBDsbldIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RVBEnbldIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RVBFldIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RVBUnblIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvRIMOffUnbIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RevClnMtgnBrkReqAct : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151481344 CSV_FSRACC_Indications_LS: 1 XXX - SG_ AutoBrkRlsIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ShtToPrkBfExtngVehIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HdUpDsplyUnblIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ FSRACCFrstRsmPrssIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ FrtRdrBlckdIO : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151432192 ACC_Drv_Seat_Vib_Req_IO_LS: 1 XXX - SG_ ACCHptcStVbnRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ACCHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX - -BO_ 2151415808 Ln_Dep_Wrn_Drv_Seat_Vib_Req_LS: 5 XXX - SG_ LDWLftHptcStRqSN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ LDWLftHptcStRq : 7|6@0+ (1,0) [0|63] "" XXX - SG_ LDWRghtHptcStRqSN : 9|2@0+ (1,0) [0|3] "" XXX - SG_ LDWRghtHptcStRq : 15|6@0+ (1,0) [0|63] "" XXX - SG_ LftLnChgThrtHptStRqSN : 17|2@0+ (1,0) [0|3] "" XXX - SG_ LftLnChgThrtHptStRq : 23|6@0+ (1,0) [0|63] "Pulse" XXX - SG_ RgtLnChgThrtHptStRqSN : 25|2@0+ (1,0) [0|3] "" XXX - SG_ RgtLnChgThrtHptStRq : 31|6@0+ (1,0) [0|63] "Pulse" XXX - SG_ FrPedDetCsStAvl : 32|1@0+ (1,0) [0|1] "" XXX - SG_ FrPedDetCsCrStVal : 35|3@0+ (1,0) [0|7] "" XXX - -BO_ 2151350272 Frnt_Prk_Ast_Drv_Seat_Vib_Req_LS: 3 XXX - SG_ FPAHptcStVbnRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ FPAHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX - SG_ APAIconDispRq : 10|3@0+ (1,0) [0|7] "" XXX - SG_ APAIconFilPctRq : 22|7@0+ (1,0) [0|127] "" XXX - -BO_ 2151333888 Rear_Prk_Ast_Drv_Seat_Vib_Req_LS: 1 XXX - SG_ RPAHptcStVbRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX - SG_ RPAHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX - -BO_ 2151522304 Reset_FuelLife_Request_LS: 1 XXX - SG_ FuelFltLfRstRqd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ElEngyEconAvgRstRq : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TCSTmpDsblReqConf : 3|2@0+ (1,0) [0|3] "" XXX - SG_ LnchCtrlRelLnLockReqd : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150629376 CV_System_Failure_LS: 1 XXX - SG_ CVSysFlrIO : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155929600 Diesel_Information_LS: 8 XXX - SG_ DslExFldTpWrngIndRq : 3|4@0+ (1,0) [0|15] "" XXX - SG_ DslExhFldDiagWrnIdRq : 6|3@0+ (1,0) [0|7] "" XXX - SG_ DslExhFldQlyWrngIReq : 11|4@0+ (1,0) [0|15] "" XXX - SG_ DslExhFldWrngIdRqER : 15|4@0+ (1,0) [0|15] "" XXX - SG_ DslExhFluidDistTIndcmt : 22|15@0+ (2,0) [0|65534] "km" XXX - SG_ DslExNxEmWrngIndRq : 35|4@0+ (1,0) [0|15] "" XXX - SG_ DslExFldCnWrngIndRq : 39|4@0+ (1,0) [0|15] "" XXX - SG_ DslExFldWrngVSpdLmt : 47|24@0+ (1,0) [0|0] "" XXX - SG_ DEFWVSL_S1SpdLmt : 47|8@0+ (1,0) [0|255] "km / h" XXX - SG_ DEFWVSL_S2SpdLmt : 55|8@0+ (1,0) [0|255] "km / h" XXX - SG_ DEFWVSL_S3SpdLmt : 63|8@0+ (1,0) [0|255] "km / h" XXX - -BO_ 2154741760 RSA_Status_LS: 1 XXX - SG_ RSAPrsnt : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154807296 Lighting_Customization_Info_3_LS: 4 XXX - SG_ AFLGPSCstCrStVal : 2|3@0+ (1,0) [0|7] "" XXX - SG_ AFLCstCrStVal : 5|3@0+ (1,0) [0|7] "" XXX - SG_ AFLGPSCstStAvl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ AFLCstStAvl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ AFLGPSMnu2CstStAvl : 8|1@0+ (1,0) [0|1] "" XXX - SG_ AFLMnu2CstStAvl : 9|1@0+ (1,0) [0|1] "" XXX - SG_ AFLMnu3CstStAvl : 10|1@0+ (1,0) [0|1] "" XXX - SG_ EngAutoStpNotProb : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ESCMHiEleclLdReqAct : 12|1@0+ (1,0) [0|1] "" XXX - SG_ EngAutoStrtStpInfo : 17|10@0+ (1,0) [0|0] "" XXX - SG_ EASSI_StrtStpSt : 17|2@0+ (1,0) [0|3] "" XXX - SG_ EASSI_UnsdRsrvd2 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ EASSI_TorqDetdIndet : 25|1@0+ (1,0) [0|1] "" XXX - SG_ EASSI_StlDetd : 26|1@0+ (1,0) [0|1] "" XXX - SG_ EASSI_TrqDetd : 27|1@0+ (1,0) [0|1] "" XXX - SG_ EASSI_FuelReqOn : 28|1@0+ (1,0) [0|1] "" XXX - SG_ EASSI_StrtTyp : 31|3@0+ (1,0) [0|7] "" XXX - -BO_ 2151079936 PDIM_Status_LS: 1 XXX - SG_ PDIMPrsnt : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155364352 Hybrid_Information_SuperSlow_LS: 5 XXX - SG_ SvcHybridSysIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ JmpStrtStat : 3|3@0+ (1,0) [0|7] "" XXX - SG_ HybMdDisp : 7|4@0+ (1,0) [0|15] "" XXX - SG_ CstmrUsblSOCGroup : 15|15@0+ (1,0) [0|0] "" XXX - SG_ CstmrUsblSOC : 15|8@0+ (0.39216,0) [0|100.0008] "%" XXX - SG_ CstmrUsblSOCV : 17|1@0+ (1,0) [0|1] "" XXX - SG_ BattCntrlPrcssrVDA : 16|1@0+ (1,0) [0|1] "" XXX - SG_ InstDrvEff : 31|8@0- (0.78125,0) [-100|99.21875] "%" XXX - SG_ ClntCrcFlwRtEst : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2154979328 Front_Seat_Heat_Cool_Req_LS: 1 XXX - SG_ FrntStVoltBstModReq : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155282432 RearSeat_HeatVent_Cool_LS: 1 XXX - SG_ RrStVoltBstModReq : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151505920 VehInfoTripComputer_LS: 7 XXX - SG_ SpdCurvAdvSysEnbld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrBrkDsplyAct : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ACCSettingType : 3|2@0+ (1,0) [0|3] "" XXX - SG_ AutoMdSpdLmtCnfrmd : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PTExPrtclFltManRgnRqd : 5|1@0+ (1,0) [0|1] "" XXX - SG_ Trp2OdomtrGroup : 6|55@0+ (1,0) [0|0] "" XXX - SG_ Trp2OdomtrV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ Trp2Odomtr : 38|23@0+ (0.015625,0) [0|131071.984375] "km" XXX - SG_ Trp1OdomtrGroup : 7|32@0+ (1,0) [0|0] "" XXX - SG_ Trp1OdomtrV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ Trp1Odomtr : 14|23@0+ (0.015625,0) [0|131071.984375] "km" XXX - -BO_ 2155896832 Alternative_Fuel_Information_LS: 5 XXX - SG_ FuelMdStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ AltFuelMdReqDndIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ FlLvlTank2PctGroup : 4|13@0+ (1,0) [0|0] "" XXX - SG_ FlLvlTank2PctV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ FlLvlTank2Pct : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ AltFuelAccWrnngAct : 5|1@0+ (1,0) [0|1] "" XXX - SG_ AltFuelLvlLo : 6|1@0+ (1,0) [0|1] "" XXX - SG_ AltFuelPHeatAct : 7|1@0+ (1,0) [0|1] "" XXX - SG_ FuelTotCapTnk2 : 19|12@0+ (0.125,0) [0|511.875] "liters" XXX - SG_ FuelAlchlCompAdptnPrg : 20|1@0+ (1,0) [0|1] "" XXX - SG_ FuelAlcoholCompGroup : 21|22@0+ (1,0) [0|0] "" XXX - SG_ FuelAlcoholCompV : 21|1@0+ (1,0) [0|1] "" XXX - SG_ FuelAlcoholComp : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2155552768 Exterior_Lock_Switch_Req_LS: 1 XXX - SG_ PsvEntCmftWndRq : 1|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154496000 Rear_Closure_Soft_Top_Info_LS: 1 XXX - SG_ CmpSftTopMotBfrOpTrnkIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TargaTopStateGroup : 2|2@0+ (1,0) [0|0] "" XXX - SG_ TargaTopState : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TargaTopStateV : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155208704 Power_Conv_Top_Info_LS: 3 XXX - SG_ SftTpAbvWrngSpdIndOn : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpFlrIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpLtcIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpMnlLtchIndOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpMchnOvhtIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpRmCrgCrrIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpStrIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpTmpLwIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpTneuCvrIO : 8|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpVehOvSpdIndOn : 9|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpVltLwIO : 10|1@0+ (1,0) [0|1] "" XXX - SG_ CkSoftTpIO : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ClsTrnkLidIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ FTUpdWndPsLmtEnbld : 13|1@0+ (1,0) [0|1] "" XXX - SG_ VltSwAtvIndOn : 14|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpTrnLmpsRqd : 15|1@0+ (1,0) [0|1] "" XXX - SG_ FldngTpSt : 18|3@0+ (1,0) [0|7] "" XXX - SG_ FldngTpWndCmftRq : 20|2@0+ (1,0) [0|3] "" XXX - SG_ SftTpPlsDnSrtdIndOn : 21|1@0+ (1,0) [0|1] "" XXX - SG_ SftTpPlsDnWrngIndOn : 22|1@0+ (1,0) [0|1] "" XXX - -BO_ 2153390080 Manual_Liftgate_Control_LS: 1 XXX - SG_ RrClosOpenSwAct_2D1Group : 3|3@0+ (1,0) [0|0] "" XXX - SG_ RrClosOpenSwAct_2D1 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RrClosOpenSwAct_2D1V : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155175936 CruiseControlGapSwitch_LS: 1 XXX - SG_ AdptCrsGapSwAct : 1|2@0+ (1,0) [0|3] "" XXX - SG_ AdptCrsLKALDWSwAct : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2156806144 Cellular_Network_Date_and_Time: 6 XXX - SG_ CldrDayCmpstdVal : 4|5@0+ (1,0) [0|31] "days" XXX - SG_ HrsCmpstdValGroup : 5|30@0+ (1,0) [0|0] "" XXX - SG_ HrsCmpstdValV : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HrsCmpstdVal : 28|5@0+ (1,0) [0|31] "h" XXX - SG_ MinsCmpstdValGroup : 6|39@0+ (1,0) [0|0] "" XXX - SG_ MinsCmpstdValV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ MinsCmpstdVal : 37|6@0+ (1,0) [0|63] "min" XXX - SG_ SecCmpstdValGroup : 7|48@0+ (1,0) [0|0] "" XXX - SG_ SecCmpstdValV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SecCmpstdVal : 45|6@0+ (1,0) [0|63] "secs" XXX - SG_ CldrMthCmpstdVal : 11|4@0+ (1,0) [0|15] "" XXX - SG_ CellNtwrkDtTmAvl : 12|1@0+ (1,0) [0|1] "" XXX - SG_ CldrYrCmpstdVal : 23|8@0+ (1,2000) [2000|2255] "year" XXX - -BO_ 2154078208 Window_Position_Status_LS: 2 XXX - SG_ DrvWndPosStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ LRWndPosStat : 5|3@0+ (1,0) [0|7] "" XXX - SG_ PsWndPosStat : 10|3@0+ (1,0) [0|7] "" XXX - SG_ RRWndPosStat : 13|3@0+ (1,0) [0|7] "" XXX - -BO_ 2159058944 ODIEvent_IPC_LS: 3 XXX - SG_ ODIEvntPkt_IPC : 5|22@0+ (1,0) [0|0] "" XXX - SG_ ODIEI_EvID : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ODIEI_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODIEI_MultiFrRetCh : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 2159042560 ODI_DynData_IPC_LS: 8 XXX - SG_ ODIDynData_IPC : 14|55@0+ (1,0) [0|0] "" XXX - SG_ ODDI_InvldData : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ODDI_DataType : 14|6@0+ (1,0) [0|63] "" XXX - SG_ ODDI_FUCID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDI_DataId : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDI_DataVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2150006784 System_Power_Mode_Pushbutton_LS: 1 XXX - SG_ SysPwrMdPshbtnActGroup : 1|2@0+ (1,0) [0|0] "" XXX - SG_ SysPwrMdPshbtnAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SysPwrMdPshbtnActV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PEPSRunCrnkRlyDctd : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155216896 Road_Type_Information_LS: 6 XXX - SG_ MpDataAvlbl : 0|1@0+ (1,0) [0|1] "" XXX - SG_ BldUpArDet : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SprtLnRd : 2|1@0+ (1,0) [0|1] "" XXX - SG_ CntrldAccRd : 3|1@0+ (1,0) [0|1] "" XXX - SG_ CurvAdvInd : 5|2@0+ (1,0) [0|3] "" XXX - SG_ SpdLmtPstdSpdGroup : 6|23@0+ (1,0) [0|0] "" XXX - SG_ SpdLmtPstdSpdM : 6|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtPstdSpd : 23|8@0+ (1,0) [0|255] "" XXX - SG_ DgtlMapPstdSpdLimAsrd : 7|1@0+ (1,0) [0|1] "" XXX - SG_ FncRdClass : 10|3@0+ (1,0) [0|7] "" XXX - SG_ RdSpdCatType : 12|2@0+ (1,0) [0|3] "" XXX - SG_ LnCat : 14|2@0+ (1,0) [0|3] "" XXX - SG_ SpdLmtUnits : 15|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtRecmndSpd : 31|8@0+ (1,0) [0|255] "" XXX - SG_ IntlStdAlph2CddCntryCd : 33|10@0+ (1,0) [0|0] "" XXX - SG_ ISA2CCC_FrstCdChr : 33|5@0+ (1,0) [0|31] "" XXX - SG_ ISA2CCC_ScndCdChr : 44|5@0+ (1,0) [0|31] "" XXX - -BO_ 2156216320 TTY_Status_LS: 1 XXX - SG_ TxtTelephoneDevPr : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2158813184 ODIIndication_IPC_LS: 8 XXX - SG_ ODIInd_IPC : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODIIIPC_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODIIIPC_ODIInd8 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd7 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd6 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd5 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd4 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd3 : 13|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd2 : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd1 : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd16 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd15 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd14 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd13 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd12 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd11 : 21|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd10 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd9 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd24 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd23 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd22 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd21 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd20 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd19 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd18 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd17 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd32 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd31 : 33|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd30 : 34|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd29 : 35|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd28 : 36|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd27 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd26 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd25 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd40 : 40|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd39 : 41|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd38 : 42|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd37 : 43|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd36 : 44|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd35 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd34 : 46|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd33 : 47|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd48 : 48|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd47 : 49|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd46 : 50|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd45 : 51|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd44 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd43 : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd42 : 54|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd41 : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd56 : 56|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd55 : 57|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd54 : 58|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd53 : 59|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd52 : 60|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd51 : 61|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd50 : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIIPC_ODIInd49 : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150277120 GPS_Geographical_Position_LS: 8 XXX - SG_ PsngSysLatGroup : 6|31@0+ (1,0) [0|0] "" XXX - SG_ PsngSysLat : 5|30@0- (1,0) [-536870912|536870911] "mas" XXX - SG_ PsngSysLatV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ PsngSysLongGroup : 39|32@0+ (1,0) [0|0] "" XXX - SG_ PsngSysLong : 38|31@0- (1,0) [-1073741824|1073741823] "mas" XXX - SG_ PsngSysLongV : 39|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150285312 GPS_Elevation_and_Heading_LS: 8 XXX - SG_ PsngSysHdingGroup : 3|37@0+ (1,0) [0|0] "" XXX - SG_ PsngSysHding : 3|12@0+ (0.1,0) [0|409.5] "deg" XXX - SG_ PsngSysHdingV : 47|1@0+ (1,0) [0|1] "" XXX - SG_ PsngSysDilPrcsGroup : 4|29@0+ (1,0) [0|0] "" XXX - SG_ PsngSysDilPrcsV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PsngSysDilPrcs : 17|10@0+ (0.1,0) [0|102.3] "" XXX - SG_ PsngSysCalcSpdGroup : 39|10@0+ (1,0) [0|0] "" XXX - SG_ PsngSysCalcSpd : 39|8@0+ (1,0) [0|255] "km / h" XXX - SG_ PsngSysCalcSpdV : 46|1@0+ (1,0) [0|1] "" XXX - SG_ PsngSysElvtnGroup : 45|22@0+ (1,0) [0|0] "" XXX - SG_ PsngSysElvtn : 44|21@0+ (1,-100000) [-100000|1997151] "cm" XXX - SG_ PsngSysElvtnV : 45|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151890944 Telematics_Indication_Request_LS: 4 XXX - SG_ TlmtcsIndCntrlReq : 15|24@0+ (1,0) [0|0] "" XXX - SG_ TICR_Ind1Cnt : 11|4@0+ (1,0) [0|15] "" XXX - SG_ TICR_Ind1 : 13|2@0+ (1,0) [0|3] "" XXX - SG_ TICR_Ind1Req : 15|2@0+ (1,0) [0|3] "" XXX - SG_ TICR_Ind1FlshRtOff : 23|8@0+ (10,0) [0|2550] "ms" XXX - SG_ TICR_Ind1FlshRtOn : 31|8@0+ (10,0) [0|2550] "ms" XXX - -BO_ 2151251968 Telematics_Indication_Control_LS: 4 XXX - SG_ TlmtcsIndCntrlStat : 12|21@0+ (1,0) [0|0] "" XXX - SG_ TICS_Ind1V : 8|1@0+ (1,0) [0|1] "" XXX - SG_ TICS_Ind1 : 10|2@0+ (1,0) [0|3] "" XXX - SG_ TICS_Ind1Stat : 12|2@0+ (1,0) [0|3] "" XXX - SG_ TICS_Ind1FlshRtOffSt : 23|8@0+ (10,0) [0|2550] "ms" XXX - SG_ TICS_Ind1FlshRtOnSt : 31|8@0+ (10,0) [0|2550] "ms" XXX - -BO_ 2155495424 Remote_Start_Seat_Request_LS: 1 XXX - SG_ RmStrCldStEnReq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RmStrHtdStEnRq : 1|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149990400 HS_Indications_Fast_LS: 8 XXX - SG_ ABSIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ StpOnBrkToRelPBIndOn : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrBrkngVDA : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DrvThrtlOvrdIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TreInfMonSysRstPrfmd : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ACCHdwayStngIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ACCDrvrSeltdSpdIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrWiringFltIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ AdvHlmpsVDA : 9|1@0+ (1,0) [0|1] "" XXX - SG_ SADmpVDA : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ScndryAxleVDA : 11|1@0+ (1,0) [0|1] "" XXX - SG_ SrvTrlrBrkngSysIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrBrkngGainSetIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrCnctdIO : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ChkTrlrIO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrBrkngFrcOtpt : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ TrlrBrkngGainSet : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ TrlrHtchSwAtv_ITBC : 32|1@0+ (1,0) [0|1] "" XXX - SG_ TransNtrlCntrlMdStat : 34|2@0+ (1,0) [0|3] "" XXX - SG_ MotStBltFldIO : 35|1@0+ (1,0) [0|1] "" XXX - SG_ MotStBltUnblIO : 36|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsfrCsRngShfSpdLmt : 47|8@0+ (1,0) [0|255] "km / h" XXX - SG_ InstFuelConsmpRate : 51|12@0+ (0.025,0) [0|102.375] "liters/hr" XXX - SG_ SecAxlOperMod : 55|4@0+ (1,0) [0|15] "" XXX - -BO_ 2155380736 HS_Indications_SuperSlow_LS: 6 XXX - SG_ VehOvrLdIndOn : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SrvLevSysIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HdLtLvlFlrIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RrLevVDA : 3|1@0+ (1,0) [0|1] "" XXX - SG_ AirCndOffIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilHotIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ PTExPrtclFltrWrnIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ DslGlwPlgIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EngHotFuelEnrchmntIO : 8|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilChngIO : 9|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilLvlLwIO : 10|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilPrsLwIO : 11|1@0+ (1,0) [0|1] "" XXX - SG_ EngWtrInFlIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ RdcdPwrIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ CkFlFilrCapIO : 14|1@0+ (1,0) [0|1] "" XXX - SG_ EngHt_StpEngIO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ StrAsstRdcdLvl2IO : 16|1@0+ (1,0) [0|1] "" XXX - SG_ PwrStrIO : 17|1@0+ (1,0) [0|1] "" XXX - SG_ PTExPrtclFltrWrn2IO : 18|1@0+ (1,0) [0|1] "" XXX - SG_ AdvFrntLghtSysIndRq : 21|3@0+ (1,0) [0|7] "" XXX - SG_ StrngAsstRdcdIO : 22|1@0+ (1,0) [0|1] "" XXX - SG_ StrAsstRdcdLvl3IO : 23|1@0+ (1,0) [0|1] "" XXX - SG_ PwrPckAirInTempFlt : 31|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ PwrPkFnSpd : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ ARSFlrIO : 40|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150498304 Analog_Values_Slow_LS: 8 XXX - SG_ EngCltTmpGroup : 0|57@0+ (1,0) [0|0] "" XXX - SG_ EngCltTmpV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ EngCltTmp : 63|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ EngIntAirTmpGroup : 1|50@0+ (1,0) [0|0] "" XXX - SG_ EngIntAirTmpV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ EngIntAirTmp : 55|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ EngOilTmpGroup : 2|43@0+ (1,0) [0|0] "" XXX - SG_ EngOilTmpV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilTmp : 47|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ OAT_PT_EstGroup : 4|37@0+ (1,0) [0|0] "" XXX - SG_ OAT_PT_EstV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ OAT_PT_EstM : 4|1@0+ (1,0) [0|1] "" XXX - SG_ OAT_PT_Est : 39|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - SG_ TrnOilTmpGroup : 5|30@0+ (1,0) [0|0] "" XXX - SG_ TrnOilTmpV : 5|1@0+ (1,0) [0|1] "" XXX - SG_ TrnOilTmp : 31|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ BarPrsAbsGroup : 6|23@0+ (1,0) [0|0] "" XXX - SG_ BarPrsAbsV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ BarPrsAbs : 23|8@0+ (0.5,0) [0|127.5] "kPa" XXX - SG_ EngOilPrsGroup : 7|16@0+ (1,0) [0|0] "" XXX - SG_ EngOilPrsV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilPrs : 15|8@0+ (4,0) [0|1020] "kPa" XXX - -BO_ 2151047168 HUD_Status_LS: 1 XXX - SG_ HUDActv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ HdUpDspAnmtStat : 3|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155331584 Wheel_Pulses_LS: 4 XXX - SG_ WhlPlsPerRevDrvn : 6|7@0+ (1,0) [0|127] "" XXX - SG_ WhlPlsPerRevNonDrvn : 14|7@0+ (1,0) [0|127] "" XXX - SG_ WhlRotStatTmstmpRes : 18|11@0+ (0.002,0) [0|4.094] "uSec" XXX - -BO_ 2154225664 Door_Handle_Switch_Status_LS: 1 XXX - SG_ DrvDrHndleSwAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ PasDrHndleSwAtv : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RCHndleSwAtv : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RRDrHndleSwAtv : 3|1@0+ (1,0) [0|1] "" XXX - SG_ RLDrHndleSwAtv : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149900288 Telematics_Contol_LS: 3 XXX - SG_ EnhSrvRClsRlsRq : 1|1@0+ (1,0) [0|1] "" XXX - SG_ EnhSrvVisAlRq : 3|2@0+ (1,0) [0|3] "" XXX - SG_ EnhSrvAudAlRq : 5|2@0+ (1,0) [0|3] "" XXX - SG_ EnhSrvRmStrtRq : 7|2@0+ (1,0) [0|3] "" XXX - SG_ EnhSrvLckRq : 10|3@0+ (1,0) [0|7] "" XXX - SG_ BTTethrngPrngReq : 14|4@0+ (1,0) [0|15] "" XXX - SG_ EnhSvVehTopSpdLim : 23|8@0+ (2,0) [0|510] "km / h" XXX - -BO_ 2159001600 ODIEnumDynamicData_IPC_LS: 8 XXX - SG_ ODIEnmDynData_IPC : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIEDDIPC_Data2Value : 2|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data1Value : 5|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data5Value : 9|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data4Value : 12|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data3Value : 15|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data8Value : 16|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data7Value : 19|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data6Value : 22|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data10Value : 26|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data9Value : 29|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data13Value : 33|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data12Value : 36|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data11Value : 39|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data16Value : 40|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data15Value : 43|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data14Value : 46|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data18Value : 50|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_Data17Value : 53|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDIPC_FUCID : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2158993408 ODIEnumDynamicData_CntrStack_LS: 8 XXX - SG_ ODIEnmDynData_CenterStack : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIEDDCS_Data2Value : 2|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data1Value : 5|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data5Value : 9|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data4Value : 12|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data3Value : 15|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data8Value : 16|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data7Value : 19|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data6Value : 22|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data10Value : 26|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data9Value : 29|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data13Value : 33|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data12Value : 36|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data11Value : 39|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data16Value : 40|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data15Value : 43|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data14Value : 46|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data18Value : 50|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_Data17Value : 53|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDDCS_FUCID : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2154708992 Audio_Master_Source_Status_LS: 2 XXX - SG_ AudSrcStat2 : 3|12@0+ (1,0) [0|0] "" XXX - SG_ ASS2AudSrcType : 3|5@0+ (1,0) [0|31] "" XXX - SG_ ASS2AudSrcStatCode : 11|4@0+ (1,0) [0|15] "" XXX - SG_ ASS2AudSrcChType : 14|3@0+ (1,0) [0|7] "" XXX - -BO_ 2158985216 ODIDynDataMultiReq_OTIM_LS: 8 XXX - SG_ ODIDynDataMltRq_OTIM : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODDMO_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMO_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMO_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMO_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMO_ReqType : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ODDMO_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMO_DispMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMO_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMO_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMO_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMO_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMO_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2154471424 Rear_Closure_Ajar_Switch_Status: 1 XXX - SG_ RrClosAjarSwAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RrClsrSnwLdIO : 1|1@0+ (1,0) [0|1] "" XXX - -BO_ 2159149056 ODI_TEL_2_CenterStack_LS: 8 XXX - SG_ ODI_TEL2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159116288 ODI_TEL_2_AuxIP_LS: 8 XXX - SG_ ODI_TEL2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2158796800 ODIIndication_LS: 8 XXX - SG_ ODIInd : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODII_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODII_ODIInd8 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd7 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd6 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd5 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd4 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd3 : 13|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd2 : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd1 : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd16 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd15 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd14 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd13 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd12 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd11 : 21|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd10 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd9 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd24 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd23 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd22 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd21 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd20 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd19 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd18 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd17 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd32 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd31 : 33|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd30 : 34|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd29 : 35|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd28 : 36|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd27 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd26 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd25 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd40 : 40|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd39 : 41|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd38 : 42|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd37 : 43|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd36 : 44|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd35 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd34 : 46|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd33 : 47|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd48 : 48|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd47 : 49|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd46 : 50|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd45 : 51|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd44 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd43 : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd42 : 54|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd41 : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd56 : 56|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd55 : 57|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd54 : 58|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd53 : 59|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd52 : 60|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd51 : 61|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd50 : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ODII_ODIInd49 : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 2158755840 ODIEvent_LS: 4 XXX - SG_ ODIEvntPkt : 13|22@0+ (1,0) [0|0] "" XXX - SG_ ODIE_EvID : 13|6@0+ (1,0) [0|63] "" XXX - SG_ ODIE_FUCID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIE_MultiFrRetCh : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 2159157248 ODI_CenterStack_2_TEL_LS: 8 XXX - SG_ ODI_CntrStck2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2153955328 Infrastructure_Timer_Status_LS: 5 XXX - SG_ EngOffTmExtRngGroup : 0|33@0+ (1,0) [0|0] "" XXX - SG_ EngOffTmExtRngV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ EngOffTmExtRng : 39|8@0+ (4,0) [0|1020] "min" XXX - SG_ ElpsdTimeCntRstOcc : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ElpsdTimeCnt : 15|24@0+ (1,0) [0|16777215] "min" XXX - -BO_ 2151063552 Infotainment_Operation_LS: 7 XXX - SG_ InftnOprAlwd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ValetMdAct : 1|1@0+ (1,0) [0|1] "" XXX - SG_ Frnt360CamSwAct : 2|1@0+ (1,0) [0|1] "" XXX - SG_ CamVideoICSDispAct : 3|1@0+ (1,0) [0|1] "" XXX - SG_ LRStStatDispAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RRStStatDispAct : 5|1@0+ (1,0) [0|1] "" XXX - SG_ TrgdVidRecSwAct : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RrPedDetCstStReq : 10|3@0+ (1,0) [0|7] "" XXX - SG_ IntrStopAlrtCsSetReq : 13|3@0+ (1,0) [0|7] "" XXX - SG_ ICSTchStat : 17|34@0+ (1,0) [0|0] "" XXX - SG_ ICSTS_TchPrxmty : 17|2@0+ (1,0) [0|3] "" XXX - SG_ ICSTS_X1TchCrdnt : 31|16@0+ (0.001526,0) [0|100] "" XXX - SG_ ICSTS_Y1TchCrdnt : 47|16@0+ (0.001526,0) [0|100] "" XXX - SG_ TrfRdsdInfCsStReq : 20|3@0+ (1,0) [0|7] "" XXX - SG_ CntdVehBrAltCsStReq : 23|3@0+ (1,0) [0|7] "" XXX - -BO_ 2157985792 Fob_Programming_Request_LS: 1 XXX - SG_ FobProgEvntRqd : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151284736 Park_Assistant_General_Status: 1 XXX - SG_ PrkAsstClnPrkAstIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAsstDisablIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstFld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstSnrsBlk : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstSnsDistrbdIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvPrkAstOffUnbIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAstOprtrDsrdStat_1D0 : 7|2@0+ (1,0) [0|3] "" XXX - -BO_ 2159099904 ODI_DAB_2_AuxIP_LS: 8 XXX - SG_ ODI_DAB2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159067136 ODI_DAB_2_IPC_LS: 8 XXX - SG_ ODI_DAB2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159206400 ODI_AuxIP_2_IPC_LS: 8 XXX - SG_ ODI_AxIP2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159198208 ODI_IPC_2_AuxIP_LS: 8 XXX - SG_ ODI_IPC2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159190016 ODI_AuxIP_2_CenterStack_LS: 8 XXX - SG_ ODI_AxIP2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159181824 ODI_CenterStack_2_AuxIP_LS: 8 XXX - SG_ ODI_CntrStck2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159173632 ODI_IPC_2_CenterStack_LS: 8 XXX - SG_ ODI_IPC2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159165440 ODI_CenterStack_2_IPC_LS: 8 XXX - SG_ ODI_CntrStck2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159108096 ODI_AuxIP_2_DAB_LS: 8 XXX - SG_ ODI_AxIP2DAB : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159075328 ODI_IPC_2_DAB_LS: 8 XXX - SG_ ODI_IPC2DAB : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2151718912 Chime_Active: 1 XXX - SG_ ChmAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ChmVolSt : 2|2@0+ (1,0) [0|3] "" XXX - -BO_ 2155479040 Customization_Setting_Request_LS: 5 XXX - SG_ DrvlnCustStngReq : 2|3@0+ (1,0) [0|7] "" XXX - SG_ RstrCustFctrDef : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PedFrndlyAlrtCsStReq : 6|3@0+ (1,0) [0|7] "" XXX - SG_ SusCustStngReq : 10|3@0+ (1,0) [0|7] "" XXX - SG_ StrCustStngReq : 13|3@0+ (1,0) [0|7] "" XXX - SG_ ElvtdIdlCstStReq : 15|2@0+ (1,0) [0|3] "" XXX - SG_ SndPerfMdCsStRq : 18|3@0+ (1,0) [0|7] "" XXX - SG_ DispPerfMdCsStRq : 21|3@0+ (1,0) [0|7] "" XXX - SG_ ACCPerfMdCsStReq : 26|3@0+ (1,0) [0|7] "" XXX - SG_ DrvrStPerfMdCsStReq : 29|3@0+ (1,0) [0|7] "" XXX - SG_ PsngStPerfMdCsStReq : 34|3@0+ (1,0) [0|7] "" XXX - SG_ DrvStyPerfMdCsStReq : 37|3@0+ (1,0) [0|7] "" XXX - -BO_ 2151383040 Reset_TP_request_LS: 1 XXX - SG_ TreInfMonSysRstReq : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155421696 Passive_Entry_Challenge_LS: 5 XXX - SG_ PsvEntChlng : 7|32@0+ (1,0) [0|4294967295] "passwrd" XXX - SG_ ServKylsStSysIO : 32|1@0+ (1,0) [0|1] "" XXX - SG_ PsvEntApprchDtcd : 33|1@0+ (1,0) [0|1] "" XXX - SG_ PsvEntAprchDrctn : 36|3@0+ (1,0) [0|7] "" XXX - SG_ PsvEntApprchCnfgReq : 39|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155413504 Drv_Dr_Key_Cyl_Status_LS: 3 XXX - SG_ DrvrDrKeyCylUlkSwActGroup : 1|2@0+ (1,0) [0|0] "" XXX - SG_ DrvrDrKeyCylUlkSwAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrvrDrKeyCylUlkSwActV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PsvLckngReqd : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PsvApprchVehId : 15|16@0+ (1,0) [0|65535] "" XXX - -BO_ 2159026176 ODIDynamicData_LS: 8 XXX - SG_ ODIDynData : 14|55@0+ (1,0) [0|0] "" XXX - SG_ ODD_InvldData : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ODD_DataType : 14|6@0+ (1,0) [0|63] "" XXX - SG_ ODD_FUCID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODD_DataId : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODD_DataVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2158936064 ODIEnumDynamicData_LS: 8 XXX - SG_ ODIEnmDynData : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIEDD_Data2Value : 2|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data1Value : 5|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data5Value : 9|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data4Value : 12|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data3Value : 15|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data8Value : 16|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data7Value : 19|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data6Value : 22|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data10Value : 26|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data9Value : 29|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data13Value : 33|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data12Value : 36|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data11Value : 39|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data16Value : 40|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data15Value : 43|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data14Value : 46|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data18Value : 50|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_Data17Value : 53|3@0+ (1,0) [0|7] "" XXX - SG_ ODIEDD_FUCID : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2158845952 ODIAction_CntrStack_LS: 8 XXX - SG_ ODIActn_CntrStck : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIAC_DaTy : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ODIAC_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAC_ActnID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAC_DspMID : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAC_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2158886912 ODIDynDataListRequest_IPC_LS: 8 XXX - SG_ ODIDynDataLstRq_IPC : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODDLI_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLI_DataId : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLI_DspMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLI_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLI_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX - SG_ ODDLI_Idx : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ ODDLI_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX - SG_ ODDLI_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLI_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLI_ReqType : 55|2@0+ (1,0) [0|3] "" XXX - -BO_ 2151366656 Man_Prk_Brk_LS: 1 XXX - SG_ RrAxlLckIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ FrntAxlLckIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PrkBrkSwAtv : 2|1@0+ (1,0) [0|1] "" XXX - SG_ AxlLcksServIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ AxlLckUnavailIndReq : 6|3@0+ (1,0) [0|7] "" XXX - SG_ AxlLcksVDA : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149842944 Vehicle_Stability_LS: 8 XXX - SG_ IMUProtLonAccGroup : 2|11@0+ (1,0) [0|0] "" XXX - SG_ IMUProtLonAcc : 1|10@0- (0.03,0) [-15.36|15.33] "m/s^2" XXX - SG_ IMUProtLonAccV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ TCSysAtv : 3|1@0+ (1,0) [0|1] "" XXX - SG_ BrkSysAutBrkFld : 4|1@0+ (1,0) [0|1] "" XXX - SG_ VSEAct : 5|1@0+ (1,0) [0|1] "" XXX - SG_ StrWhAngGroup : 6|47@0+ (1,0) [0|0] "" XXX - SG_ StrWhAngV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ StrWhAng : 39|16@0- (0.0625,0) [-2048|2047.9375] "deg" XXX - SG_ StWhAnVDA : 7|1@0+ (1,0) [0|1] "" XXX - SG_ VehStabEnhmntStat : 18|3@0+ (1,0) [0|7] "" XXX - SG_ VehStabEnhmntMd : 21|3@0+ (1,0) [0|7] "" XXX - SG_ StrWhlAngSenCalStat : 23|2@0+ (1,0) [0|3] "" XXX - SG_ TCSysOpMd : 26|3@0+ (1,0) [0|7] "" XXX - SG_ TCSysOpStat : 29|3@0+ (1,0) [0|7] "" XXX - SG_ VSELatAccGroup : 52|13@0+ (1,0) [0|0] "" XXX - SG_ VSELatAcc : 51|12@0- (0.015625,0) [-32|31.984375] "m/s^2" XXX - SG_ VSELatAccV : 52|1@0+ (1,0) [0|1] "" XXX - SG_ AdptDrvrSeatStng : 55|3@0+ (1,0) [0|7] "" XXX - -BO_ 2159132672 ODIAction_RearSeat_LS: 8 XXX - SG_ ODIActn_RSD : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIAR_DaTy : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ODIAR_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAR_ActnID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAR_DspMID : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAR_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2158968832 ODI_RearSeat_2_Centerstack_LS: 8 XXX - SG_ ODI_RSD2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2158960640 ODIIndication_Centerstack_LS: 8 XXX - SG_ ODIInd_CntrStck : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODIIC_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODIIC_ODIInd8 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd7 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd6 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd5 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd4 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd3 : 13|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd2 : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd1 : 15|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd16 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd15 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd14 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd13 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd12 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd11 : 21|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd10 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd9 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd24 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd23 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd22 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd21 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd20 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd19 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd18 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd17 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd32 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd31 : 33|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd30 : 34|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd29 : 35|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd28 : 36|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd27 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd26 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd25 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd40 : 40|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd39 : 41|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd38 : 42|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd37 : 43|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd36 : 44|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd35 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd34 : 46|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd33 : 47|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd48 : 48|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd47 : 49|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd46 : 50|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd45 : 51|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd44 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd43 : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd42 : 54|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd41 : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd56 : 56|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd55 : 57|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd54 : 58|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd53 : 59|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd52 : 60|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd51 : 61|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd50 : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ODIIC_ODIInd49 : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 2158977024 ODIEvent_Centerstack_LS: 4 XXX - SG_ ODIEvntPkt_CntrStck : 13|22@0+ (1,0) [0|0] "" XXX - SG_ ODIEC_EvID : 13|6@0+ (1,0) [0|63] "" XXX - SG_ ODIEC_FUCID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIEC_MultiFrRetCh : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 2158952448 ODIDynDataMultiReq_RearSeat_LS: 8 XXX - SG_ ODIDynDataMltRq_RSD : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODDMR_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMR_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMR_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMR_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMR_ReqType : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ODDMR_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMR_DispMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMR_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMR_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMR_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMR_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMR_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2158944256 ODIDynDataListReq_RearSeat_LS: 8 XXX - SG_ ODIDynDataLstRq_RSD : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODDLR_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLR_DataId : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLR_DspMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLR_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLR_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX - SG_ ODDLR_Idx : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ ODDLR_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX - SG_ ODDLR_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLR_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLR_ReqType : 55|2@0+ (1,0) [0|3] "" XXX - -BO_ 2158927872 ODI_DynData_CenterStack_LS: 8 XXX - SG_ ODIDynData_CntrStck : 14|55@0+ (1,0) [0|0] "" XXX - SG_ ODDC_InvldData : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ODDC_DataType : 14|6@0+ (1,0) [0|63] "" XXX - SG_ ODDC_FUCID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDC_DataId : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDC_DataVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2158895104 ODI_CenterStack_2_RearSeat_LS: 8 XXX - SG_ ODI_CntrStck2RSD : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2152038400 Infomatics_Response_Payload_LS: 8 XXX - SG_ InfMdRspPld : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2152022016 Infomatics_Metadata_Response_LS: 7 XXX - SG_ InfMdRspCmplt : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ InfMdRspInf : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ InfMdStRsp : 35|4@0+ (1,0) [0|15] "" XXX - SG_ AudSelctdSrcReq : 44|5@0+ (1,0) [0|31] "" XXX - SG_ AudSysVolSetCtrl : 55|8@0+ (1,0) [0|0] "" XXX - SG_ ASVSC_ReqEnbld : 48|1@0+ (1,0) [0|1] "" XXX - SG_ ASVSC_VolReq : 55|7@0+ (0.787402,0) [0|100.000054] "" XXX - -BO_ 2152005632 Infomatics_Request_Payload_LS: 8 XXX - SG_ InfMdRqstPld : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2151989248 Infomatics_Metadata_Request_LS: 5 XXX - SG_ InfMdRqstCmplt : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ InfMdRqstInt : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ InfMdStReq : 35|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151972864 Fuel_Level_Status_LS: 4 XXX - SG_ FuelLvlLwIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ LnchCtrlMdReq : 2|2@0+ (1,0) [0|3] "" XXX - SG_ LnchCtrlWhlSlpReq : 7|5@0+ (1,0) [0|31] "" XXX - SG_ VehFuelRngCalcGroup : 9|18@0+ (1,0) [0|0] "" XXX - SG_ VehFuelRngCalc : 8|17@0+ (0.015625,0) [0|2047.984375] "km" XXX - SG_ VehFuelRngCalcV : 9|1@0+ (1,0) [0|1] "" XXX - SG_ LnchCtrlEngRPMReq : 15|6@0+ (1,0) [0|63] "" XXX - -BO_ 2154528768 Wheel_Grnd_Velocity_LS: 8 XXX - SG_ WhlGrndVlctyLftDrvnGroup : 6|15@0+ (1,0) [0|0] "" XXX - SG_ WhlGrndVlctyLftDrvn : 5|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX - SG_ WhlGrndVlctyLftDrvnV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ WhlGrndVlctyLftNnDrvnGroup : 22|15@0+ (1,0) [0|0] "" XXX - SG_ WhlGrndVlctyLftNnDrvn : 21|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX - SG_ WhlGrndVlctyLftNnDrvnV : 22|1@0+ (1,0) [0|1] "" XXX - SG_ WhlGrndVlctyRtDrvnGroup : 38|15@0+ (1,0) [0|0] "" XXX - SG_ WhlGrndVlctyRtDrvn : 37|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX - SG_ WhlGrndVlctyRtDrvnV : 38|1@0+ (1,0) [0|1] "" XXX - SG_ WhlGrndVlctyRtNnDrvnGroup : 54|15@0+ (1,0) [0|0] "" XXX - SG_ WhlGrndVlctyRtNnDrvn : 53|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX - SG_ WhlGrndVlctyRtNnDrvnV : 54|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150916096 Park_Heater_Info_LS: 4 XXX - SG_ PrkHtrAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ClntCircPmpAct : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PrkHtrCoolntTempGroup : 2|11@0+ (1,0) [0|0] "" XXX - SG_ PrkHtrCoolntTempV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PrkHtrCoolntTemp : 15|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ PrkHtrFlCsmdRlCntRsOc : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PrkHtrFlCnsmdRolCntGroup : 4|29@0+ (1,0) [0|0] "" XXX - SG_ PrkHtrFlCnsmdRolCntV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PrkHtrFlCnsmdRolCnt : 23|16@0+ (3.05176E-006,0) [0|0.1999970916] "liters" XXX - SG_ PrkHtrPrhtAch : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150367232 Immobilizer_Identifier_LS: 5 XXX - SG_ ImoId : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ LrnEnvId : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ LrnEnvIdSt : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ImoIdSt : 33|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150621184 Keyless_Start_Auth_LS: 1 XXX - SG_ KylsStrAuthRslt : 7|8@0+ (1,0) [0|0] "" XXX - SG_ KSARUID8 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID7 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID6 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID5 : 3|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID4 : 4|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID3 : 5|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID2 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ KSARUID1 : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151309312 Inflatable_Restraints_Key_Id_LS: 2 XXX - SG_ InflRestId : 7|16@0+ (1,0) [0|39321] "" XXX - -BO_ 2154061824 Window_Normalized_Indication_LS: 1 XXX - SG_ PsWndNtNrmIndOn : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrWndNtNrmIndOn : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RLWndNtNrmIndOn : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RRWndNtNrmIndOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ RmtWndMvmntAtv : 4|1@0+ (1,0) [0|1] "" XXX - SG_ WndOprAlwd : 5|1@0+ (1,0) [0|1] "" XXX - SG_ RrDrUnlckIO : 6|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154512384 Rear_Closure_Rel_Sw_Sta_LS: 1 XXX - SG_ RrClosRelSwActGroup : 1|2@0+ (1,0) [0|0] "" XXX - SG_ RrClosRelSwAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RrClosRelSwActV : 1|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155347968 HS_Indications_Slow_LS: 8 XXX - SG_ ActVbnCtrlMlfIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ PedtrnProtSysDpl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TirePrsLowIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACCUnavlbleDTWthrIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilStrvtnIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ SecAxlNonEmMalfIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ BrkFldLvlLwGroup : 7|4@0+ (1,0) [0|0] "" XXX - SG_ BrkFldLvlLwV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ BrkFldLvlLw : 7|1@0+ (1,0) [0|1] "" XXX - SG_ ACCSnsClnRqdIO : 8|1@0+ (1,0) [0|1] "" XXX - SG_ ACCTmpUnavlbleIO : 9|1@0+ (1,0) [0|1] "" XXX - SG_ EngRecmndUpshftIO : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ServAdpCrsCtrlIndOn : 11|1@0+ (1,0) [0|1] "" XXX - SG_ SrvSuspSysIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ BrkPadWrnIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ BrkSysMalFuncIndOn : 15|1@0+ (1,0) [0|1] "" XXX - SG_ EngEmsRelMalfIndReq : 18|3@0+ (1,0) [0|7] "" XXX - SG_ RrAxlMalfIO : 19|1@0+ (1,0) [0|1] "" XXX - SG_ DrShftCntrlReqDndIO : 20|1@0+ (1,0) [0|1] "" XXX - SG_ CompOvrhtIndOn : 21|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsSkpShftIO : 22|1@0+ (1,0) [0|1] "" XXX - SG_ RrAxlTmpInhIO : 23|1@0+ (1,0) [0|1] "" XXX - SG_ SecAxlTmpInhIO : 24|1@0+ (1,0) [0|1] "" XXX - SG_ CPSAlrtOnlIO : 25|1@0+ (1,0) [0|1] "" XXX - SG_ EPBSysStatIndReq : 27|2@0+ (1,0) [0|3] "" XXX - SG_ EPBSysWrnIndReq : 29|2@0+ (1,0) [0|3] "" XXX - SG_ CPSFldIO : 30|1@0+ (1,0) [0|1] "" XXX - SG_ CPSOffIO : 31|1@0+ (1,0) [0|1] "" XXX - SG_ CPSUnblIO : 32|1@0+ (1,0) [0|1] "" XXX - SG_ SrvPedtrnProtSysIO : 33|1@0+ (1,0) [0|1] "" XXX - SG_ PedtrnProtSysDisbld : 34|1@0+ (1,0) [0|1] "" XXX - SG_ PedtrnProtVDA : 35|1@0+ (1,0) [0|1] "" XXX - SG_ AppCltchAutSrtIO : 36|1@0+ (1,0) [0|1] "" XXX - SG_ StBltTgtSetAvl : 37|1@0+ (1,0) [0|1] "" XXX - SG_ FourWhlDrvIndReq : 42|3@0+ (1,0) [0|7] "" XXX - SG_ EngRecDwnshftIO : 43|1@0+ (1,0) [0|1] "" XXX - SG_ StBltTgtCrtSetVal : 46|3@0+ (1,0) [0|7] "" XXX - SG_ HillDesCtrlRedVehSpIO : 47|1@0+ (1,0) [0|1] "" XXX - SG_ VehRollAngleGroup : 55|8@0+ (1,0) [0|0] "" XXX - SG_ VehRollAngle : 54|7@0+ (0.703125,-45) [-45|44.296875] "deg" XXX - SG_ VehRollAngleV : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ACCPerfMdCsCrStVal : 58|3@0+ (1,0) [0|7] "" XXX - SG_ ACCPerfMdCsStAvl : 59|1@0+ (1,0) [0|1] "" XXX - SG_ DrvrStPerfMdCsCrStVal : 62|3@0+ (1,0) [0|7] "" XXX - SG_ DrvrStPerfMdCsStAvl : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149777408 Non_Drvn_Whl_Rot_Status_LS: 8 XXX - SG_ WhlRotStatLftNDrvn : 7|32@0+ (1,0) [0|0] "" XXX - SG_ WRSLNDWhlDistPCntr : 1|10@0+ (1,0) [0|1023] "counts" XXX - SG_ WRSLNDWhlDistVal : 2|1@0+ (1,0) [0|1] "" XXX - SG_ WRSLNDWhlRotStRst : 3|1@0+ (1,0) [0|1] "" XXX - SG_ WRSLNDSeqNum : 5|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSLNDWhlDisTpRC : 7|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSLNDWhlDistTstm : 23|16@0+ (1,0) [0|65535] "counts" XXX - SG_ WhlRotStatRghtNDrvn : 39|32@0+ (1,0) [0|0] "" XXX - SG_ WRSRNDWhlDistPCntr : 33|10@0+ (1,0) [0|1023] "counts" XXX - SG_ WRSRNDWhlDistVal : 34|1@0+ (1,0) [0|1] "" XXX - SG_ WRSRNDWhlRotStRst : 35|1@0+ (1,0) [0|1] "" XXX - SG_ WRSRNDSeqNum : 37|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSRNDWhlDisTpRC : 39|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSRNDWhlDistTstm : 55|16@0+ (1,0) [0|65535] "counts" XXX - -BO_ 2149769216 Driven_Whl_Rotational_Stat_LS: 8 XXX - SG_ WhlRotatStatLftDrvn : 7|32@0+ (1,0) [0|0] "" XXX - SG_ WRSLDWhlDistPlsCntr : 1|10@0+ (1,0) [0|1023] "counts" XXX - SG_ WRSLDWhlDistVal : 2|1@0+ (1,0) [0|1] "" XXX - SG_ WRSLDWhlRotStatRst : 3|1@0+ (1,0) [0|1] "" XXX - SG_ WRSLDSeqNum : 5|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSLDWhlDisTpRC : 7|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSLDWhlDistTmstm : 23|16@0+ (1,0) [0|65535] "counts" XXX - SG_ WhlRotatStatRtDrvn : 39|32@0+ (1,0) [0|0] "" XXX - SG_ WRSRDWhlDistPlsCntr : 33|10@0+ (1,0) [0|1023] "counts" XXX - SG_ WRSRDWhlDistVal : 34|1@0+ (1,0) [0|1] "" XXX - SG_ WRSRDWhlRotStatRst : 35|1@0+ (1,0) [0|1] "" XXX - SG_ WRSRDSeqNum : 37|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSRDWhlDisTpRC : 39|2@0+ (1,0) [0|3] "counts" XXX - SG_ WRSRDWhlDistTmstm : 55|16@0+ (1,0) [0|65535] "counts" XXX - -BO_ 2156789760 Time_of_Day_LS: 6 XXX - SG_ CldrYr : 7|8@0+ (1,2000) [2000|2255] "year" XXX - SG_ CldrMth : 11|4@0+ (1,0) [0|15] "" XXX - SG_ FrPedDetCsStReq : 14|3@0+ (1,0) [0|7] "" XXX - SG_ CldrDay : 20|5@0+ (1,0) [0|31] "days" XXX - SG_ SmrtHgBmAstCstSetReq : 23|3@0+ (1,0) [0|7] "" XXX - SG_ TmofDay : 24|17@0+ (1,0) [0|0] "" XXX - SG_ TOD_HrofDay : 24|5@0+ (1,0) [0|31] "hr" XXX - SG_ TOD_MinofHr : 35|6@0+ (1,0) [0|63] "min" XXX - SG_ TOD_SecofMin : 45|6@0+ (1,0) [0|63] "s" XXX - SG_ TimeDispFormat : 25|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155020288 Language_Selection_LS: 1 XXX - SG_ LngSelExt : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ChVolRq2 : 7|2@0+ (1,0) [0|3] "" XXX - -BO_ 2150432768 Engine_Information_4_LS: 8 XXX - SG_ TransOilTempSensPres : 0|1@0+ (1,0) [0|1] "" XXX - SG_ GenFldDutCycGroup : 1|42@0+ (1,0) [0|0] "" XXX - SG_ GenFldDutCycV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ GenFldDutCyc : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ FuelFltLifRstPerf : 2|1@0+ (1,0) [0|1] "" XXX - SG_ TrnEmsMlfAtv : 3|1@0+ (1,0) [0|1] "" XXX - SG_ GrdBrkgAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsNEmsRltMalfActv : 5|1@0+ (1,0) [0|1] "" XXX - SG_ EngShtdwnPndgIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ EngManfldAirTempCrtdGroup : 7|16@0+ (1,0) [0|0] "" XXX - SG_ EngManfldAirTempCrtdV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EngManfldAirTempCrtd : 15|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ FuelTotCap : 19|12@0+ (0.125,0) [0|511.875] "liters" XXX - SG_ TrnsThrmlMngmntStat : 21|2@0+ (1,0) [0|3] "" XXX - SG_ PTHiElecLdReqd : 22|1@0+ (1,0) [0|1] "" XXX - SG_ EngOilRmnLf : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ FuelFltRmnLf : 63|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2155298816 Tire_Pressure_Sensor_Prog_Req_LS: 1 XXX - SG_ TrPrsSnsProgEvntRqd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TrPrsMntrTrLdRstRqstd : 2|2@0+ (1,0) [0|3] "" XXX - -BO_ 2158878720 ODIDynDataListReq_CntrStack_LS: 8 XXX - SG_ ODIDynDataLstRq_CntrStck : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODDLC_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLC_DataId : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLC_DspMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLC_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLC_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX - SG_ ODDLC_Idx : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ ODDLC_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX - SG_ ODDLC_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLC_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLC_ReqType : 55|2@0+ (1,0) [0|3] "" XXX - -BO_ 2158870528 ODIDynDataListRequest_AuxIP_LS: 8 XXX - SG_ ODIDynDataLstRq_AxIP : 7|64@0+ (1,0) [0|0] "" XXX - SG_ ODDLA_FUCID : 7|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLA_DataId : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLA_DspMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDLA_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLA_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX - SG_ ODDLA_Idx : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ ODDLA_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX - SG_ ODDLA_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLA_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX - SG_ ODDLA_ReqType : 55|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154692608 Audio_Source_Status_LS: 2 XXX - SG_ AudSrcStat : 3|12@0+ (1,0) [0|0] "" XXX - SG_ ASSAudSrcType : 3|5@0+ (1,0) [0|31] "" XXX - SG_ ASSAudSrcStatCode : 11|4@0+ (1,0) [0|15] "" XXX - SG_ ASSAudSrcChType : 14|3@0+ (1,0) [0|7] "" XXX - SG_ LgclAVChnl : 7|4@0+ (1,0) [0|15] "" XXX - -BO_ 2154627072 Audio_Master_Arbitration_Command: 2 XXX - SG_ AudMstrArbCom : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LgclAVChnl_368 : 7|4@0+ (1,0) [0|15] "" XXX - SG_ AudMstrSrcTyp : 12|5@0+ (1,0) [0|31] "" XXX - SG_ AudMstrChnnlTyp : 15|3@0+ (1,0) [0|7] "" XXX - -BO_ 2151112704 Occupant_Sensning_Status_LS: 2 XXX - SG_ FrntPassClass : 2|3@0+ (1,0) [0|7] "" XXX - SG_ FrPsSeatOccSnsOpMd : 5|3@0+ (1,0) [0|7] "N/A" XXX - SG_ FrPasSeatResCtrlOccStGroup : 7|14@0+ (1,0) [0|0] "" XXX - SG_ FrPasSeatResCtrlOccSt : 7|2@0+ (1,0) [0|3] "" XXX - SG_ FrPasSeatResCtrlOccStV : 10|1@0+ (1,0) [0|1] "" XXX - SG_ FrPsSeatOccFltSt : 9|2@0+ (1,0) [0|3] "N/A" XXX - SG_ FrPasSeatbltRemOccSt : 11|1@0+ (1,0) [0|1] "" XXX - -BO_ 2153938944 Remote_Reflash_Req_LS: 1 XXX - SG_ RmtRflshMdReqtd : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2159239168 ODI_TEL_2_OTIM_LS: 8 XXX - SG_ ODI_TEL2OTIM : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159230976 ODI_OTIM_2_TEL_LS: 8 XXX - SG_ ODI_OTIM2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159222784 ODI_PDIM_2_CenterStack_LS: 8 XXX - SG_ ODI_PDIM2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2159214592 ODI_CenterStack_2_PDIM_LS: 8 XXX - SG_ ODI_CntrStck2PDIM : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2158862336 ODIAction_OTIM_LS: 8 XXX - SG_ ODIActn_OTIM : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIAOT_DaTy : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ODIAOT_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAOT_ActnID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAOT_DspMID : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAOT_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2150662144 Environment_Id_Resp_3_LS: 3 XXX - SG_ EnvIdRsp3 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ EnvIdRspSt3 : 17|2@0+ (1,0) [0|3] "" XXX - -BO_ 2150653952 Environment_Id_Resp_2_LS: 3 XXX - SG_ EnvIdRsp2 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ EnvIdRspSt2 : 17|2@0+ (1,0) [0|3] "" XXX - -BO_ 2150850560 Seatbelt_Information_LS: 1 XXX - SG_ DrSbltAtcGroup : 1|2@0+ (1,0) [0|0] "" XXX - SG_ DrSbltAtc : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrSbltAtcV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PsSbltAtcGroup : 3|2@0+ (1,0) [0|0] "" XXX - SG_ PsSbltAtc : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PsSbltAtcV : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154659840 Column_Lock_Status_2: 2 XXX - SG_ UnlckRtryRotIndOn : 2|1@0+ (1,0) [0|1] "" XXX - SG_ UnlockRtryPshIndOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ StrgClmnLckVisNot : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ClmnLckStatGroup : 5|6@0+ (1,0) [0|0] "" XXX - SG_ ClmnLckStat : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ClmnLckStatV : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ClmSysFlrIndOn : 7|1@0+ (1,0) [0|1] "" XXX - SG_ StrngClmnLckTT : 9|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154938368 Fob_Programming_Mode_Status_LS: 1 XXX - SG_ FobProgMdStat : 1|2@0+ (1,0) [0|3] "" XXX - -BO_ 2155266048 Rear_Seat_Heat_Cool_Switches_LS: 1 XXX - SG_ RLHCSeatSw1Act : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSeatSw2Act : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSeatSw3Act : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSeatSw1Act : 3|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSeatSw2Act : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSeatSw3Act : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155249664 Rear_Seat_Heat_Cool_Control_LS: 4 XXX - SG_ RLHCSModeIndCtrl : 4|5@0+ (1,0) [0|0] "" XXX - SG_ RLHCSMInd3 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSMInd2 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSMInd1 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSMIndReq : 4|2@0+ (1,0) [0|3] "" XXX - SG_ RRHCSModeIndCtrl : 12|5@0+ (1,0) [0|0] "" XXX - SG_ RRHCSMInd3 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSMInd2 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSMInd1 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSMIndReq : 12|2@0+ (1,0) [0|3] "" XXX - SG_ RLHCSeatLevIndCtrl : 22|7@0+ (1,0) [0|0] "" XXX - SG_ RLHCSLSeatLev5 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSLSeatLev4 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSLSeatLev3 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSLSeatLev2 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSLSeatLev1 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ RLHCSLIndReq : 22|2@0+ (1,0) [0|3] "" XXX - SG_ RRHCSeatLevIndCtrl : 30|7@0+ (1,0) [0|0] "" XXX - SG_ RRHCSLSeatLev5 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSLSeatLev4 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSLSeatLev3 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSLSeatLev2 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSLSeatLev1 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ RRHCSLIndReq : 30|2@0+ (1,0) [0|3] "" XXX - -BO_ 2155184128 CruiseControl_LS: 3 XXX - SG_ CrsCntAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CrsSpdLmtrSwStat : 4|4@0+ (1,0) [0|15] "" XXX - SG_ TrnsShftLvrLckStat : 5|1@0+ (1,0) [0|1] "" XXX - SG_ RrStRmndrIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RrStRmndrCstSetAvail : 7|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntrlSwStat : 15|8@0+ (1,0) [0|0] "" XXX - SG_ CrsCntrlSwStSwDataIntgty : 9|2@0+ (1,0) [0|3] "" XXX - SG_ CrsCntrlSwStSpDcSwAct : 10|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntrlSwStSpdInSwAct : 11|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntrlSwStSetSwAct : 12|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntrlSwStResSwAct : 13|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntrlSwStOnSwAct : 14|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntrlSwStCanSwAct : 15|1@0+ (1,0) [0|1] "" XXX - SG_ SmPhRmFunCstCurStVal : 18|3@0+ (1,0) [0|7] "" XXX - SG_ SmPhRmFunCstStAval : 19|1@0+ (1,0) [0|1] "" XXX - SG_ IdlRecmndToClEngIO : 20|1@0+ (1,0) [0|1] "" XXX - SG_ RrStRmndrCstCurrSetVal : 23|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155167744 Power_Mode_Info_LS: 3 XXX - SG_ ShftPrkIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ShftToNtrlIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ Ky_IdDevPr : 2|1@0+ (1,0) [0|1] "" XXX - SG_ SecPwrMdPshBtnAtv : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TransModActIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TransModInactIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ KylsStrtUseTxPckIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ TrStLgMdAtv : 7|1@0+ (1,0) [0|1] "" XXX - SG_ VehMovState : 10|3@0+ (1,0) [0|7] "" XXX - SG_ AutoShtdwnDsblIO : 11|1@0+ (1,0) [0|1] "" XXX - SG_ AppPrkBrkIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ NRmtDtdPsCluRstIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ ApplyBrkPdlIO : 14|1@0+ (1,0) [0|1] "" XXX - SG_ ApplyCltPdlIO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ NoReDetInOn : 16|1@0+ (1,0) [0|1] "" XXX - SG_ NRmtDtdPsBrkRstIO : 17|1@0+ (1,0) [0|1] "" XXX - SG_ PrsBtnAgnTTrnEngOffIO : 18|1@0+ (1,0) [0|1] "" XXX - SG_ TSLgMdPwrCtOWAtv : 19|1@0+ (1,0) [0|1] "" XXX - SG_ NRmtDtctdRstrtAllwd : 20|1@0+ (1,0) [0|1] "" XXX - SG_ PrsStrtAgnIO : 21|1@0+ (1,0) [0|1] "" XXX - SG_ PrsCltchPrsStrtAgnIO : 22|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154921984 Fob_Status_LS: 2 XXX - SG_ RFAFnc : 1|10@0+ (1,0) [0|0] "" XXX - SG_ RFRmtCntFobNm : 1|3@0+ (1,0) [0|7] "" XXX - SG_ RFRmtCntFobBatLw : 8|1@0+ (1,0) [0|1] "" XXX - SG_ RFRmtCntrlFobFnc : 14|6@0+ (1,0) [0|63] "" XXX - SG_ FobPogLimRchdIndOn : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151317504 Park_Assistant_Rear_Status: 4 XXX - SG_ PrkAsstRrExtdDist : 3|12@0+ (0.01,0) [0|40.95] "m" XXX - SG_ PrkAstRrSysStat : 5|2@0+ (1,0) [0|3] "" XXX - SG_ PARrRgn1ObjStat : 19|4@0+ (1,0) [0|15] "" XXX - SG_ PARrRgn2ObjStat : 23|4@0+ (1,0) [0|15] "" XXX - SG_ PARrRgn3ObjStat : 27|4@0+ (1,0) [0|15] "" XXX - SG_ PARrRgn4ObjStat : 31|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151301120 Park_Assistant_Front_Status: 4 XXX - SG_ PrkAsstFrtExtdDist : 3|12@0+ (0.01,0) [0|40.95] "m" XXX - SG_ PrkAstFrSysStat : 5|2@0+ (1,0) [0|3] "" XXX - SG_ PrkAstAdvSysAct : 6|1@0+ (1,0) [0|1] "" XXX - SG_ PrkAsstRrOffIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ PAFrtRgn1ObjStat : 19|4@0+ (1,0) [0|15] "" XXX - SG_ PAFrtRgn2ObjStat : 23|4@0+ (1,0) [0|15] "" XXX - SG_ PAFrtRgn3ObjStat : 27|4@0+ (1,0) [0|15] "" XXX - SG_ PAFrtRgn4ObjStat : 31|4@0+ (1,0) [0|15] "" XXX - -BO_ 2159083520 ODI_TEL_2_IPC_LS: 8 XXX - SG_ ODI_TEL2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2153922560 Climate_Control_Voltage_LS: 3 XXX - SG_ ClimCtrlVoltBstModReq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ClmtCtrlHtrEngRunRq : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HtrVlvRqstdPstn : 3|2@0+ (1,0) [0|3] "" XXX - SG_ ClntHtrElecPwrRatGroup : 4|13@0+ (1,0) [0|0] "" XXX - SG_ ClntHtrElecPwrRatV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ClntHtrElecPwrRat : 15|8@0+ (0.04,0) [0|10.2] "kW" XXX - SG_ ClmCtrHiVltPwrRqtd : 23|8@0+ (0.1,0) [0|25.5] "kW" XXX - -BO_ 2153807872 Door_Open_Switch_Status_LS: 1 XXX - SG_ DrDoorOpenSwActGroup : 1|2@0+ (1,0) [0|0] "" XXX - SG_ DrDoorOpenSwAct : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrDoorOpenSwActV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ PsDoorOpenSwActGroup : 3|2@0+ (1,0) [0|0] "" XXX - SG_ PsDoorOpenSwAct : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PsDoorOpenSwActV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ClmSysAuxFlrIndOn : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PsvStrtStrngClmnLckTT : 6|2@0+ (1,0) [0|3] "" XXX - -BO_ 2150703104 Audio_Amplifier_Status: 1 XXX - SG_ AudSysDigSigProcPres : 0|1@0+ (1,0) [0|1] "" XXX - SG_ AudSysSurSndSysPres : 1|1@0+ (1,0) [0|1] "" XXX - SG_ AudSysVNoisCompPres : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151399424 Wash_Level_LS: 1 XXX - SG_ WshFldLw : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151956480 Driver_Workload_LS: 2 XXX - SG_ DrvWrkldLvl : 3|4@0+ (1,0) [0|15] "" XXX - SG_ ClstrHMIAnmSt : 6|3@0+ (1,0) [0|7] "" XXX - SG_ ClstrHMIRdy : 7|1@0+ (1,0) [0|1] "" XXX - SG_ StrWhlThbwhlCnts : 13|6@0- (1,0) [-32|31] "counts" XXX - -BO_ 2151940096 Alarm_2_Request_LS: 7 XXX - SG_ Alrm2ExtRngReq : 1|26@0+ (1,0) [0|0] "" XXX - SG_ A2ERRAlrmReq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ A2ERRAlrmTime : 15|24@0+ (1,0) [0|16777215] "min" XXX - SG_ EstBulkIntAirTmpGroup : 2|35@0+ (1,0) [0|0] "" XXX - SG_ EstBulkIntAirTmpV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ EstBulkIntAirTmp : 39|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - SG_ EstIntRfSrfcTmpGroup : 3|44@0+ (1,0) [0|0] "" XXX - SG_ EstIntRfSrfcTmpV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ EstIntRfSrfcTmp : 47|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - SG_ EstIntHorzDshSrfTmpGroup : 4|53@0+ (1,0) [0|0] "" XXX - SG_ EstIntHorzDshSrfTmpM : 4|1@0+ (1,0) [0|1] "" XXX - SG_ EstIntHorzDshSrfTmp : 55|8@0+ (1,-40) [-40|215] "deg C" XXX - -BO_ 2151923712 Alarm_1_Request_LS: 5 XXX - SG_ Alrm1ExtRngReq : 1|26@0+ (1,0) [0|0] "" XXX - SG_ A1ERRAlrmReq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ A1ERRAlrmTime : 15|24@0+ (1,0) [0|16777215] "min" XXX - SG_ HLOCCstCurrSetVal : 6|3@0+ (1,0) [0|7] "" XXX - SG_ HLOCCstSetAvail : 7|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCstAvail : 39|7@0+ (1,0) [0|0] "" XXX - SG_ HLOCCA_Res4Avail : 33|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCA_Res3Avail : 34|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCA_Res2Avail : 35|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCA_Res1Avail : 36|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCA_OnOpnOnlyAvail : 37|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCA_OnAvail : 38|1@0+ (1,0) [0|1] "" XXX - SG_ HLOCCA_OffAvail : 39|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150645760 Environment_Id_Resp_1_LS: 3 XXX - SG_ EnvIdRsp1 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ EnvIdRspSt1 : 17|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152464384 Lane_Departure_Warning_LS: 3 XXX - SG_ LaneDepWrnDisbldIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ LnKpAstDisbldIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SrvcLaneDepWrnSysIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ SrvcLnKpAstSysIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ HndsOffStrWhlDtIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TnDrvLDWOffUnbIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LftLnDepWrnSt : 7|2@0+ (1,0) [0|3] "" XXX - SG_ LaneDepWrnIndCntrl : 13|6@0+ (1,0) [0|0] "" XXX - SG_ LDWIC_LnDepWAWLn : 9|2@0+ (1,0) [0|3] "" XXX - SG_ LDWIC_Ind2 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ LDWIC_Ind1 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ LDWIC_IndReq : 13|2@0+ (1,0) [0|3] "" XXX - SG_ RtLnDepWrnSt : 15|2@0+ (1,0) [0|3] "" XXX - SG_ LnKpAstIndCntrl : 21|6@0+ (1,0) [0|0] "" XXX - SG_ LKAIC_AdbWngLn : 17|2@0+ (1,0) [0|3] "" XXX - SG_ LKAIC_Ind2 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ LKAIC_Ind1 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ LKAIC_IndReq : 21|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154971136 Front_Seat_Heat_Cool_Switches_LS: 1 XXX - SG_ DrvHCSeatSw1Act : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSeatSw2Act : 1|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSeatSw3Act : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSeatSw1Act : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSeatSw2Act : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSeatSw3Act : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154962944 Front_Seat_Heat_Cool_Control_LS: 4 XXX - SG_ DrvHCSModeIndCtrl : 4|5@0+ (1,0) [0|0] "" XXX - SG_ DrvHCSMInd3 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSMInd2 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSMInd1 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSMIndReq : 4|2@0+ (1,0) [0|3] "" XXX - SG_ PassHCSModeIndCtrl : 12|5@0+ (1,0) [0|0] "" XXX - SG_ PassHCSMInd3 : 8|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSMInd2 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSMInd1 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSMIndReq : 12|2@0+ (1,0) [0|3] "" XXX - SG_ DrvHCSLevIndCtrl : 22|7@0+ (1,0) [0|0] "" XXX - SG_ DrvHCSLSeatLev5 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSLSeatLev4 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSLSeatLev3 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSLSeatLev2 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSLSeatLev1 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ DrvHCSLIndReq : 22|2@0+ (1,0) [0|3] "" XXX - SG_ PassHCSeatLevIndCtrl : 30|7@0+ (1,0) [0|0] "" XXX - SG_ PassHCSLSeatLev5 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSLSeatLev4 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSLSeatLev3 : 26|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSLSeatLev2 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSLSeatLev1 : 28|1@0+ (1,0) [0|1] "" XXX - SG_ PassHCSLIndReq : 30|2@0+ (1,0) [0|3] "" XXX - -BO_ 2156232704 Alarm_Clock_Status_LS: 4 XXX - SG_ AlrmClkStat : 7|32@0+ (1,0) [0|0] "" XXX - SG_ ACSAlarm3 : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm2 : 3|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm1 : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm0 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm7 : 9|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm6 : 11|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm5 : 13|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm4 : 15|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm11 : 17|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm10 : 19|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm9 : 21|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm8 : 23|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm15 : 25|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm14 : 27|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm13 : 29|2@0+ (1,0) [0|3] "" XXX - SG_ ACSAlarm12 : 31|2@0+ (1,0) [0|3] "" XXX - -BO_ 2154987520 Hood_Status_LS: 1 XXX - SG_ HdStGroup : 2|3@0+ (1,0) [0|0] "" XXX - SG_ HdSt : 1|2@0+ (1,0) [0|3] "" XXX - SG_ HdStV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ WrlsChrgSysChrgStat : 5|3@0+ (1,0) [0|7] "" XXX - -BO_ 2154840064 Compass_Status_LS: 4 XXX - SG_ CmpsOctHdingDataSrc : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsModFltPrs : 1|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsModManCalInPrc : 2|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsZnNvrSet : 3|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsDecZone : 11|4@0+ (1,0) [0|15] "" XXX - SG_ CmpsOctHding : 14|3@0+ (1,0) [0|7] "" XXX - SG_ CmpsSatrtd : 15|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsCrHding : 23|16@0+ (0.0054932,0) [0|359.996862] "deg" XXX - -BO_ 2154676224 Compass_Request_LS: 1 XXX - SG_ CmpsDecZonCmndVal : 3|4@0+ (1,0) [0|15] "" XXX - SG_ CmpsDecZonSetReq : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsModManCalReq : 5|1@0+ (1,0) [0|1] "" XXX - SG_ CmpsModSlfTstReq : 6|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154643456 Auxiliary_Heater_Status_LS: 3 XXX - SG_ AuxHtrAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ HtrCoreInltClntTmpCalcGroup : 4|21@0+ (1,0) [0|0] "" XXX - SG_ HtrCoreInltClntTmpCalcV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ HtrCoreInltClntTmpCalc : 23|8@0+ (1,-40) [-40|215] "deg C" XXX - SG_ CCClntCrcFlwRtReq : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2154905600 Driver_Identifier_LS: 1 XXX - SG_ DrId : 2|3@0+ (1,0) [0|7] "" XXX - SG_ DrvSeatPrsMemID : 5|3@0+ (1,0) [0|7] "" XXX - -BO_ 2154954752 High_Volt_Climate_Pwr_Status_LS: 5 XXX - SG_ ClmtHtPwrRqd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ HtdStWhlCmd : 2|2@0+ (1,0) [0|3] "" XXX - SG_ HtdStWhlInd : 4|2@0+ (1,0) [0|3] "" XXX - SG_ HtdStWhlCtrlSrc : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ClntHtrElecPwrReq : 15|8@0+ (0.04,0) [0|10.2] "kW" XXX - SG_ EstACCompPwrRchCbnCmf : 23|8@0+ (0.04,0) [0|10.2] "kw" XXX - SG_ EstACCompPwrMtnCbnCmf : 31|8@0+ (0.04,0) [0|10.2] "kW" XXX - -BO_ 2153381888 Control_Power_Liftgate_LS: 4 XXX - SG_ FnshRrClsrMtnBfrDrvIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RrClsrObstclDtctd : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RrClsrInMtn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ RrClosOpenSwActGroup : 4|3@0+ (1,0) [0|0] "" XXX - SG_ RrClosOpenSwAct : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RrClosOpenSwActV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RrWprInhbRq : 5|1@0+ (1,0) [0|1] "" XXX - SG_ GrgPrgMdCmpl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ PwrLftgtInclAngGroup : 7|16@0+ (1,0) [0|0] "" XXX - SG_ PwrLftgtInclAngV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ PwrLftgtInclAng : 15|8@0+ (1,0) [0|255] "" XXX - SG_ VehIncAngEst : 23|8@0+ (1,0) [0|255] "deg" XXX - SG_ PwrLftgtMotStat : 26|3@0+ (1,0) [0|7] "" XXX - SG_ VltActRrAccUnavlIO : 27|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149752832 Chassis_Information_LS: 8 XXX - SG_ VehHghtStatGroup : 0|9@0+ (1,0) [0|0] "" XXX - SG_ VehHghtStatV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ VehHghtStat : 11|4@0+ (1,0) [0|15] "" XXX - SG_ IntBrkAssPreFilReq : 1|1@0+ (1,0) [0|1] "N/A" XXX - SG_ BksOvht : 2|1@0+ (1,0) [0|1] "" XXX - SG_ HalfSysFail : 3|1@0+ (1,0) [0|1] "" XXX - SG_ BrkSysRedBrkTlltlReq : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ABSAtv : 5|1@0+ (1,0) [0|1] "" XXX - SG_ DrvlnCustStngAvlbl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ StrCustStngAvlbl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ PrkBrkVDA : 12|1@0+ (1,0) [0|1] "" XXX - SG_ PowStVDA : 13|1@0+ (1,0) [0|1] "" XXX - SG_ RrDrCntVDA : 14|1@0+ (1,0) [0|1] "" XXX - SG_ BrkSysVDA : 15|1@0+ (1,0) [0|1] "" XXX - SG_ SprTireSt : 18|3@0+ (1,0) [0|7] "" XXX - SG_ EPBSysAudWarnReq : 20|2@0+ (1,0) [0|3] "" XXX - SG_ EPBSysDspMsgReq : 23|3@0+ (1,0) [0|7] "" XXX - SG_ DrvlnCustCurrStngVal : 26|3@0+ (1,0) [0|7] "" XXX - SG_ StrCustCurrStngVal : 29|3@0+ (1,0) [0|7] "" XXX - SG_ SusCustStngAvlbl : 30|1@0+ (1,0) [0|1] "" XXX - SG_ EBDFailed : 31|1@0+ (1,0) [0|1] "" XXX - SG_ SusCustCurrStngVal : 34|3@0+ (1,0) [0|7] "" XXX - SG_ HillDscntCntlSysStat : 37|3@0+ (1,0) [0|7] "" XXX - SG_ ElecPrkBrkStat : 39|2@0+ (1,0) [0|3] "" XXX - SG_ HlStrAssActIO : 41|1@0+ (1,0) [0|1] "" XXX - SG_ ColPrSysStngAvl : 42|1@0+ (1,0) [0|1] "" XXX - SG_ GNCustSetngAvlbl : 44|1@0+ (1,0) [0|1] "" XXX - SG_ GNCustCrntStngVal : 47|3@0+ (1,0) [0|7] "" XXX - SG_ CPSInfotmntMtReq : 49|2@0+ (1,0) [0|3] "" XXX - SG_ ColPrSysCrntStng : 52|3@0+ (1,0) [0|7] "" XXX - SG_ SndEnhcmtPerfMdRq : 55|3@0+ (1,0) [0|7] "" XXX - SG_ DispPerfMdCsCrStVal : 58|3@0+ (1,0) [0|7] "" XXX - SG_ DispPerfMdCsStAvl : 59|1@0+ (1,0) [0|1] "" XXX - SG_ SndPerfMdCsCrStVal : 62|3@0+ (1,0) [0|7] "" XXX - SG_ SndPerfMdCsStAvl : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151514112 Reset_OilLife_Request_LS: 1 XXX - SG_ EngOilLfRstRq : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2158903296 ODIDynDataMultiRequest_AuxIP_LS: 8 XXX - SG_ ODIDynDataMltRq_AuxIP : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODDMA_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMA_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMA_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMA_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMA_ReqType : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ODDMA_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMA_DispMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMA_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMA_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMA_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMA_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMA_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2158911488 ODIDynDataMultiReq_CntrStack_LS: 8 XXX - SG_ ODIDynDataMltRq_CntrStck : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODDMC_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMC_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMC_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMC_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMC_ReqType : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ODDMC_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMC_DispMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMC_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMC_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMC_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMC_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMC_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2158919680 ODIDynDataMultiRequest_IPC_LS: 8 XXX - SG_ ODIDynDataMltRq_IPC : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODDMI_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMI_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMI_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMI_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ODDMI_ReqType : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ODDMI_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMI_DispMID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMI_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMI_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMI_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMI_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ODDMI_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2151825408 Outside_Air_Temperature_LS: 3 XXX - SG_ OtsAirTmpCrValGroup : 0|9@0+ (1,0) [0|0] "" XXX - SG_ OtsAirTmpCrValV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ OtsAirTmpCrVal : 15|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - SG_ OtsAirTmpGroup : 1|18@0+ (1,0) [0|0] "" XXX - SG_ OtsAirTmpV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ OtsAirTmp : 23|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - SG_ OtsAirTmpCrValMsk : 2|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151153664 Rear_Window_Defog_Status_LS: 1 XXX - SG_ RrWndDfgOn : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151170048 Trailer_Status_LS: 2 XXX - SG_ TrlrHtchSwAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrBrkLtFld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrFgLtFld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrRvsLtFld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrTlLtFld : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrFgLtPrs : 5|1@0+ (1,0) [0|1] "" XXX - SG_ TrlrRtTrInLtFld : 6|1@0+ (1,0) [0|1] "" XXX - SG_ TrlLfTrInLtFld : 7|1@0+ (1,0) [0|1] "" XXX - SG_ LftSecTrnIndFld : 8|1@0+ (1,0) [0|1] "" XXX - SG_ RtSecTrnIndFld : 9|1@0+ (1,0) [0|1] "" XXX - SG_ DisRrPrmryLmps : 10|1@0+ (1,0) [0|1] "" XXX - SG_ RLftPrkLmpFld : 11|1@0+ (1,0) [0|1] "" XXX - SG_ RRPrkLmpFld : 12|1@0+ (1,0) [0|1] "" XXX - SG_ RrEndCrrStat : 13|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151841792 Wipe_Wash_Status_LS: 1 XXX - SG_ TurnWprIntIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RnSnsActIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RnSnsOffIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ WSWprAct : 3|1@0+ (1,0) [0|1] "" XXX - SG_ HtdFrntWSSt : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154995712 Air_Conditioning_Comp_Type_LS: 1 XXX - SG_ HVHtrOvrTmpIndOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ HVHtrFldIO : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154094592 Adjustable_Pedal_Motion_Inh_LS: 8 XXX - SG_ AdjPdlMotInhbtd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ IntDimSeldAnmTypStVal : 4|4@0+ (1,0) [0|15] "" XXX - SG_ IntDimSeldClrTypStVal : 12|5@0+ (1,0) [0|31] "" XXX - SG_ IntDimAnmTypAvl : 22|15@0+ (1,0) [0|0] "" XXX - SG_ IDATA_AnmTyp6Avl : 16|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp5Avl : 17|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp4Avl : 18|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp3Avl : 19|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp2Avl : 20|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp1Avl : 21|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_OffAvl : 22|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp14Avl : 24|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp13Avl : 25|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp12Avl : 26|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp11Avl : 27|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp10Avl : 28|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp9Avl : 29|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp8Avl : 30|1@0+ (1,0) [0|1] "" XXX - SG_ IDATA_AnmTyp7Avl : 31|1@0+ (1,0) [0|1] "" XXX - SG_ IntDimClrTypAvl : 38|31@0+ (1,0) [0|0] "" XXX - SG_ IDCTA_ClrTyp6Avl : 32|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp5Avl : 33|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp4Avl : 34|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp3Avl : 35|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp2Avl : 36|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp1Avl : 37|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_OffAvl : 38|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp14Avl : 40|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp13Avl : 41|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp12Avl : 42|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp11Avl : 43|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp10Avl : 44|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp9Avl : 45|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp8Avl : 46|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp7Avl : 47|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp22Avl : 48|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp21Avl : 49|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp20Avl : 50|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp19Avl : 51|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp18Avl : 52|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp17Avl : 53|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp16Avl : 54|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp15Avl : 55|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp30Avl : 56|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp29Avl : 57|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp28Avl : 58|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp27Avl : 59|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp26Avl : 60|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp25Avl : 61|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp24Avl : 62|1@0+ (1,0) [0|1] "" XXX - SG_ IDCTA_ClrTyp23Avl : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149711872 ACC_YawRate_Information_LS: 8 XXX - SG_ ACCDrvrSeltdSpd : 3|12@0+ (0.0625,0) [0|255.9375] "km / h" XXX - SG_ AdapCrsCntVDA : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ACCAct370 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ CrsCntlDrSelSpdAct : 7|1@0+ (1,0) [0|1] "" XXX - SG_ CrsSpdLmtrDrvSelSpd : 19|12@0+ (0.0625,0) [0|255.9375] "km / h" XXX - SG_ ACCHdwyStg : 22|3@0+ (1,0) [0|7] "" XXX - SG_ FwdClnAlrtPr : 23|1@0+ (1,0) [0|1] "" XXX - SG_ VehDynYawRateGroup : 36|13@0+ (1,0) [0|0] "" XXX - SG_ VehDynYawRate : 35|12@0- (0.0625,0) [-128|127.9375] "deg/sec" XXX - SG_ VehDynYawRateV : 36|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtrSpdWrngEnbld : 37|1@0+ (1,0) [0|1] "" XXX - SG_ SpdLmtrSpdWrngAct : 38|1@0+ (1,0) [0|1] "" XXX - SG_ FwdClnAlrtOffIO : 39|1@0+ (1,0) [0|1] "" XXX - SG_ FwdObjAlrtInd : 48|9@0+ (1,0) [0|0] "" XXX - SG_ FOAI_AlrtChmIhbRq : 48|1@0+ (1,0) [0|1] "" XXX - SG_ FOAI_AlrtWrnIndRq : 59|4@0+ (1,0) [0|15] "" XXX - SG_ FOAI_VehAhdIndRq : 63|4@0+ (1,0) [0|15] "" XXX - SG_ AutoMdSpdLmtStat : 50|2@0+ (1,0) [0|3] "" XXX - SG_ ACCAutoSetSpdStat : 52|2@0+ (1,0) [0|3] "" XXX - SG_ SetSpdLmtRchd : 54|2@0+ (1,0) [0|3] "" XXX - -BO_ 2153979904 BulbOutage_LS: 2 XXX - SG_ CHMSLFld : 0|1@0+ (1,0) [0|1] "" XXX - SG_ FLTrnIndLtFld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ FRTrnIndLtFld : 2|1@0+ (1,0) [0|1] "" XXX - SG_ LftBrkLtFld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ LftLwBmFld : 4|1@0+ (1,0) [0|1] "" XXX - SG_ LftPrkLtFld : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LicPltLtFld : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RLTrnIndLtFld : 7|1@0+ (1,0) [0|1] "" XXX - SG_ RRTrnIndLtFld : 8|1@0+ (1,0) [0|1] "" XXX - SG_ RtBrkLtFld : 9|1@0+ (1,0) [0|1] "" XXX - SG_ RtLwBmFld : 10|1@0+ (1,0) [0|1] "" XXX - SG_ RtPrkLtFld : 11|1@0+ (1,0) [0|1] "" XXX - SG_ RFgLtFld : 12|1@0+ (1,0) [0|1] "" XXX - SG_ RvsLtFld : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LftDytmRunLmpFld : 14|1@0+ (1,0) [0|1] "" XXX - SG_ RtDytmRunLmpFld : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150154240 Passive_Entry_Reply_LS: 8 XXX - SG_ PsvEntVehIdExt : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ PsvEntChlngRply : 39|32@0+ (1,0) [0|4294967295] "passwrd" XXX - -BO_ 2155003904 Side_Blind_Zone_Alert_Status: 2 XXX - SG_ SBZASysClnIndOn : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SBZASysOffIndOn : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SBZASysSrvIndOn : 2|1@0+ (1,0) [0|1] "" XXX - SG_ SBZATmpUnvIndOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ LftLnChgThrt : 4|1@0+ (1,0) [0|1] "" XXX - SG_ LfLnChngThrtAprchSpd : 15|8@0- (1,0) [-128|127] "km/h" XXX - -BO_ 2150817792 Airbag_Impact_Data_5: 3 XXX - SG_ ImpMaxLateralDeltaVel : 7|8@0- (1,0) [-128|127] "" XXX - SG_ ImpMaxLongDeltaVel : 15|8@0- (1,0) [-128|127] "" XXX - SG_ ImpTimeToMaxDeltaVel : 23|8@0+ (10,0) [0|2550] "ms" XXX - -BO_ 2150227968 Phone_Speech_Rec_Status_LS: 1 XXX - SG_ PhnSpRcgnApSt : 1|2@0+ (1,0) [0|3] "" XXX - -BO_ 2162982912 VIN_Digits_10_to_17: 8 XXX - SG_ VehIdNmDig10_17 : 7|64@0+ (1,0) [0|1] "" XXX - -BO_ 2162966528 VIN_Digits_2_to_9: 8 XXX - SG_ VehIdNmDig2_9 : 7|64@0+ (1,0) [0|1] "" XXX - -BO_ 2151497728 Tire_Pressure_Sensors_LS: 6 XXX - SG_ TireLFPrsGroup : 0|17@0+ (1,0) [0|0] "" XXX - SG_ TireLFPrsV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TireLFPrs : 23|8@0+ (4,0) [0|1020] "kPaG" XXX - SG_ TireRFPrsGroup : 1|34@0+ (1,0) [0|0] "" XXX - SG_ TireRFPrsV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TireRFPrs : 39|8@0+ (4,0) [0|1020] "kPaG" XXX - SG_ TireLFPrsStat : 4|3@0+ (1,0) [0|7] "" XXX - SG_ TireRFPrsStat : 7|3@0+ (1,0) [0|7] "" XXX - SG_ TireLRPrsGroup : 8|17@0+ (1,0) [0|0] "" XXX - SG_ TireLRPrsV : 8|1@0+ (1,0) [0|1] "" XXX - SG_ TireLRPrs : 31|8@0+ (4,0) [0|1020] "kPaG" XXX - SG_ TireRRPrsGroup : 9|34@0+ (1,0) [0|0] "" XXX - SG_ TireRRPrsV : 9|1@0+ (1,0) [0|1] "" XXX - SG_ TireRRPrs : 47|8@0+ (4,0) [0|1020] "kPaG" XXX - SG_ TireLRPrsStat : 12|3@0+ (1,0) [0|7] "" XXX - SG_ TireRRPrsStat : 15|3@0+ (1,0) [0|7] "" XXX - -BO_ 2151219200 Remote_Start_Status: 1 XXX - SG_ RemStrtSt : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RmVehStrRq : 1|1@0+ (1,0) [0|1] "" XXX - -BO_ 2153775104 DTC_Triggered: 7 XXX - SG_ DTCInfo : 7|56@0+ (1,0) [0|0] "" XXX - SG_ DTCI_DTCTriggered : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused1 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused2 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused3 : 3|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused4 : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused5 : 5|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused6 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ DTCIUnused7 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_DTCSource : 15|8@0+ (1,0) [0|255] "" XXX - SG_ DTCI_DTCNumber : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ DTCI_DTCFailType : 39|8@0+ (1,0) [0|255] "" XXX - SG_ DTCI_CodeSupported : 40|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_CurrentStatus : 41|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_TstNPsdCdClrdSt : 42|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_TstFldCdClrdStat : 43|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_HistStat : 44|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_TstNPsdPwrUpSt : 45|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_TstFldPwrUpSt : 46|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_WrnIndRqdSt : 47|1@0+ (1,0) [0|1] "" XXX - SG_ DTCI_DTCFaultType : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 2151235584 Vehicle_Theft_Notification_Stat: 5 XXX - SG_ DrIdDevLrnd : 0|1@0+ (1,0) [0|1] "" XXX - SG_ VehSecSysFldIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ VTDTmprDetected : 2|1@0+ (1,0) [0|1] "" XXX - SG_ EhnSrvEngImmStat : 3|1@0+ (1,0) [0|1] "" XXX - SG_ IllDrIdDevDtctd : 4|1@0+ (1,0) [0|1] "" XXX - SG_ AlcKyIIncmIndOn : 5|1@0+ (1,0) [0|1] "" XXX - SG_ VehSecStrgColLckPwdGroup : 6|31@0+ (1,0) [0|0] "" XXX - SG_ VehSecStrgColLckPwdV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ VehSecStrgColLckPwd : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ VehSecAuthnSesComp : 7|1@0+ (1,0) [0|1] "" XXX - SG_ VhSecNImmoIndRq : 9|2@0+ (1,0) [0|3] "" XXX - SG_ StrgColLckCmd : 11|2@0+ (1,0) [0|3] "" XXX - SG_ NmofPrgKFbExtd : 15|4@0+ (1,0) [0|15] "" XXX - SG_ VehStatStAtv : 32|1@0+ (1,0) [0|1] "" XXX - SG_ EhnSrvImmbComRst : 33|1@0+ (1,0) [0|1] "" XXX - SG_ ClmSysBkupFlrIndOn : 34|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150809600 Airbag_Impact_Data_4: 8 XXX - SG_ ImpDltVlcSamp12 : 7|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS12_Axis1 : 7|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS12_Axis2 : 15|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp13 : 23|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS13_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS13_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp14 : 39|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS14_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS14_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp15 : 55|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS15_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS15_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX - -BO_ 2150793216 Airbag_Impact_Data_2: 8 XXX - SG_ ImpDltVlcSamp4 : 7|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS4_Axis1 : 7|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS4_Axis2 : 15|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp5 : 23|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS5_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS5_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp6 : 39|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS6_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS6_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp7 : 55|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS7_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS7_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX - -BO_ 2150801408 Airbag_Impact_Data_3: 8 XXX - SG_ ImpDltVlcSamp8 : 7|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS8_Axis1 : 7|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS8_Axis2 : 15|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp9 : 23|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS9_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS9_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp10 : 39|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS10_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS10_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp11 : 55|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS11_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS11_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX - -BO_ 2150785024 Airbag_Impact_Data_1: 8 XXX - SG_ ImpDltVlcScal : 7|8@0+ (0.00245,0.706) [0.706|1.33075] "kph/cnt" XXX - SG_ AirbgAccelOrien : 10|3@0+ (45,0) [0|315] "deg" XXX - SG_ ImpDltVlcSamp1 : 23|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS1_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS1_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp2 : 39|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS2_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS2_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX - SG_ ImpDltVlcSamp3 : 55|16@0+ (1,0) [0|0] "" XXX - SG_ IDVS3_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX - SG_ IDVS3_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX - -BO_ 2151202816 Rear_Window_Defog_Inhibit: 5 XXX - SG_ RrWndDfgInhRq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RrWndDfgSwAtv : 1|1@0+ (1,0) [0|1] "" XXX - SG_ ILSSCommErr : 2|1@0+ (1,0) [0|1] "" XXX - SG_ IPSnsrRwSolrIntFltd : 3|1@0+ (1,0) [0|1] "" XXX - SG_ IPSnsrSolrAnglFltd : 4|1@0+ (1,0) [0|1] "" XXX - SG_ IPSnsrTpCvrTempFltd : 5|1@0+ (1,0) [0|1] "" XXX - SG_ AuxHtrAlwd : 6|1@0+ (1,0) [0|1] "" XXX - SG_ IPSnsrRwSolrInt : 15|8@0+ (3,0) [0|765] "W/m2" XXX - SG_ IPSnsrSolrAzmthAngl : 23|8@0+ (2,-180) [-180|330] "deg" XXX - SG_ IPSnsrSolrElvtnAngl : 31|8@0+ (1,0) [0|255] "deg" XXX - SG_ IPSnsrTpCvrTemp : 39|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX - -BO_ 2150825984 Airbag_Indications: 6 XXX - SG_ FsnDrvStbltIC : 7|8@0+ (1,0) [0|0] "" XXX - SG_ FDSIC_IndPer : 3|4@0+ (1,0) [0|15] "" XXX - SG_ FDSIC_IndDC : 6|3@0+ (12.5,12.5) [12.5|100] "%" XXX - SG_ FDSIC_IO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ FsnPsngStbltIC : 15|8@0+ (1,0) [0|0] "" XXX - SG_ FPSIC_IndPer : 11|4@0+ (1,0) [0|15] "" XXX - SG_ FPSIC_IndDtCyc : 14|3@0+ (12.5,12.5) [12.5|100] "%" XXX - SG_ FPSIC_IO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ AirbgIC : 23|8@0+ (1,0) [0|0] "" XXX - SG_ AirbgICIndPer : 19|4@0+ (1,0) [0|15] "" XXX - SG_ AirbgICDutCyc : 22|3@0+ (12.5,12.5) [12.5|100] "%" XXX - SG_ AirbgICIO : 23|1@0+ (1,0) [0|1] "" XXX - SG_ FstnSndRwLtPsStbtInR : 25|2@0+ (1,0) [0|3] "" XXX - SG_ FstnSndRwCtPsStbtInR : 27|2@0+ (1,0) [0|3] "" XXX - SG_ FstnSndRwRtPsStbtInR : 29|2@0+ (1,0) [0|3] "" XXX - SG_ FsnDrStbAuxIR : 31|2@0+ (1,0) [0|3] "" XXX - SG_ FsnPsStbAuxIR : 34|3@0+ (1,0) [0|7] "" XXX - SG_ AirbgFldIO : 35|1@0+ (1,0) [0|1] "" XXX - SG_ SndRwStbltRdIndMd : 37|2@0+ (1,0) [0|3] "" XXX - SG_ FstnThrdRwCtPsStbtInR : 39|2@0+ (1,0) [0|3] "" XXX - SG_ FstnThrdRwRtPsStbtInR : 41|2@0+ (1,0) [0|3] "" XXX - SG_ FstnThrdRwLtPsStbtInR : 43|2@0+ (1,0) [0|3] "" XXX - SG_ SrvIntdPdstProtSysIO : 44|1@0+ (1,0) [0|1] "" XXX - SG_ PdstIntdProtSysDsbld : 45|1@0+ (1,0) [0|1] "" XXX - SG_ PdstIntdProtSysDplyd : 46|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151759872 Door_Lock_Command: 4 XXX - SG_ CntrlLckRqwExtActFun : 9|18@0+ (1,0) [0|0] "" XXX - SG_ CLRAF_Unl_Lk : 9|3@0+ (1,0) [0|7] "" XXX - SG_ CLRAF_FuelD : 16|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_RrCls : 17|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_Hd : 18|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_RLD : 19|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_RRD : 20|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_PD : 21|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_DD : 22|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_ActFunc : 28|5@0+ (1,0) [0|31] "" XXX - SG_ CLRAF_UnandRsv3 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_UnandRsv2 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ CLRAF_UnandRsv1 : 31|1@0+ (1,0) [0|1] "" XXX - SG_ RrClsRelRq : 10|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149974016 Content_Theft_Sensor_Status: 3 XXX - SG_ SrvAlrmSysIO : 0|1@0+ (1,0) [0|1] "" XXX - SG_ IntrSnsDisbld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgDrvDr : 3|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgPsngDr : 4|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgRrRtDr : 5|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgRrLftDr : 6|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrigTonn : 7|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgTrnk : 8|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgTltSns : 9|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgIntMvmntSns : 10|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrggrdBattRcnctd : 11|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgGlsBrkSns : 12|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgNonOffPM : 13|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrigMidClsr : 14|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmTrgdIO : 15|1@0+ (1,0) [0|1] "" XXX - SG_ AlrmStat : 18|3@0+ (1,0) [0|7] "" XXX - SG_ AlrmTrgHd : 21|1@0+ (1,0) [0|1] "" XXX - -BO_ 2151907328 Steering_Wheel_Control_Switches: 1 XXX - SG_ StrgWhlUnit1SwStat : 3|4@0+ (1,0) [0|15] "" XXX - SG_ StrgWhlUnit2SwStat : 7|4@0+ (1,0) [0|15] "" XXX - -BO_ 2150219776 Voice_Recognition_Status: 1 XXX - SG_ PhnSpRcgnRq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ VcRecVcFdbckSt : 3|2@0+ (1,0) [0|3] "" XXX - -BO_ 2152685568 Radiomarks_Response: 8 XXX - SG_ RadBrdcstSrc : 3|4@0+ (1,0) [0|15] "" XXX - SG_ RadConInfReqSrc : 7|4@0+ (1,0) [0|15] "" XXX - SG_ RadConInfCmd : 11|4@0+ (1,0) [0|15] "" XXX - SG_ RadConInfID : 31|40@0+ (1,0) [0|1099511627775] "" XXX - -BO_ 2151874560 Vehicle_Theft_Notify_Reset_Req: 8 XXX - SG_ EhnSrvEngImmbCom : 0|57@0+ (1,0) [0|0] "" XXX - SG_ ESEIC_EngImmbRq : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ESEIC_EngImRqPsw : 15|56@0+ (1,0) [0|1] "" XXX - SG_ RstVTDTmprDtctd : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RstIllDrIdDevDtctd : 2|1@0+ (1,0) [0|1] "" XXX - SG_ RstDrIdDevLrnd : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150268928 GPS_Date_and_Time_LS: 6 XXX - SG_ CldrYr_154 : 7|8@0+ (1,2000) [2000|2255] "year" XXX - SG_ CldrMth_154 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ CldrDay_154 : 20|5@0+ (1,0) [0|31] "days" XXX - SG_ HrsGroup : 29|6@0+ (1,0) [0|0] "" XXX - SG_ Hrs : 28|5@0+ (1,0) [0|31] "h" XXX - SG_ HrsV : 29|1@0+ (1,0) [0|1] "" XXX - SG_ MinsGroup : 38|7@0+ (1,0) [0|0] "" XXX - SG_ Mins : 37|6@0+ (1,0) [0|63] "min" XXX - SG_ MinsV : 38|1@0+ (1,0) [0|1] "" XXX - SG_ SecGroup : 46|7@0+ (1,0) [0|0] "" XXX - SG_ Sec : 45|6@0+ (1,0) [0|63] "s" XXX - SG_ SecV : 46|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150137856 RFA_Status_LS: 3 XXX - SG_ FobPrevLrndIndOn : 0|1@0+ (1,0) [0|1] "" XXX - SG_ Ky_IdDevNotPrIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ FbProgCustActRqd : 2|1@0+ (1,0) [0|1] "" XXX - SG_ KeyInWrnIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ VehSecAtoLrnAtv : 4|1@0+ (1,0) [0|1] "" XXX - SG_ Ky_IdDevPrgmAuthReq : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LMTTCPrsnOffStat : 6|1@0+ (1,0) [0|1] "" XXX - SG_ VehSecAtoLrnDlyTmr : 12|5@0+ (1,0) [0|31] "min" XXX - SG_ FldTpMotReq : 15|3@0+ (1,0) [0|7] "" XXX - SG_ RemCtrlFobNumForProgER : 19|4@0+ (1,0) [0|15] "" XXX - -BO_ 2151677952 Chime_Command: 5 XXX - SG_ SndChrs : 3|28@0+ (1,0) [0|0] "" XXX - SG_ SC_SndTne : 3|4@0+ (1,0) [0|15] "" XXX - SG_ SC_SndCdnPrd : 15|8@0+ (10,0) [0|2550] "ms" XXX - SG_ SC_NmofRp : 23|8@0+ (1,0) [0|255] "reps" XXX - SG_ SC_SndDutCyc : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ SndLoc : 7|4@0+ (1,0) [0|0] "" XXX - SG_ SndLocRtRr : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SndLocLftRr : 5|1@0+ (1,0) [0|1] "" XXX - SG_ SndLocPasFr : 6|1@0+ (1,0) [0|1] "" XXX - SG_ SndLocDrFr : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SndPriority : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 2150776832 Airbag_Status: 6 XXX - SG_ ShfUlkBrToShftIndCtrl : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ShftLkdBuStbltIndCtrl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SbItlkTrnsShftLvLkRd : 2|1@0+ (1,0) [0|1] "" XXX - SG_ MmryRclImpctDisRq : 3|1@0+ (1,0) [0|1] "" XXX - SG_ EvntEnbld : 4|1@0+ (1,0) [0|1] "" XXX - SG_ SftyMuteRd : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HybVehHiVltInvDisRqd : 6|1@0+ (1,0) [0|1] "" XXX - SG_ HybImpSnsDsbld : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SIREvntSychCntr : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ FrPsngrStOccSnsngPriDat : 39|16@0+ (1,0) [0|39321] "" XXX - -BO_ 2150760448 Airbag_Impact_Data: 8 XXX - SG_ SIRDpl : 1|1@0+ (1,0) [0|1] "" XXX - SG_ NotPsSeatStat : 5|2@0+ (1,0) [0|3] "" XXX - SG_ NotDrvSeatStat : 7|2@0+ (1,0) [0|3] "" XXX - SG_ NotSecRowRtSeaOccStat : 9|2@0+ (1,0) [0|3] "" XXX - SG_ NotSndRwMdlSeatStat : 11|2@0+ (1,0) [0|3] "" XXX - SG_ NotSndRwRtSeatStat : 13|2@0+ (1,0) [0|3] "" XXX - SG_ NotSndRwLtSeatStat : 15|2@0+ (1,0) [0|3] "" XXX - SG_ NotEventStat : 17|2@0+ (1,0) [0|3] "" XXX - SG_ NotSecRowLeSeaOccStat : 25|2@0+ (1,0) [0|3] "" XXX - SG_ NotSecRowCtSeaOccStat : 27|2@0+ (1,0) [0|3] "" XXX - SG_ NotiFrntPasSeatOccSta : 34|3@0+ (1,0) [0|7] "" XXX - SG_ NoEvDeLoSt : 46|7@0+ (1,0) [0|0] "" XXX - SG_ NEDLSSdCrtnArbgDpld : 40|1@0+ (1,0) [0|1] "" XXX - SG_ NEDLSRtSdArbgDld : 41|1@0+ (1,0) [0|1] "" XXX - SG_ NEDLSLtSdArbgDld : 42|1@0+ (1,0) [0|1] "" XXX - SG_ NEDLSPaFrSt2De : 43|1@0+ (1,0) [0|1] "" XXX - SG_ NEDLSPaFrSt1De : 44|1@0+ (1,0) [0|1] "" XXX - SG_ NEDLSDrFrSt2De : 45|1@0+ (1,0) [0|1] "" XXX - SG_ NEDLSDrFrSt1De : 46|1@0+ (1,0) [0|1] "" XXX - SG_ NoEvSevSt : 54|7@0+ (1,0) [0|0] "" XXX - SG_ NESSRoSevSt : 48|1@0+ (1,0) [0|1] "" XXX - SG_ NESSRiSiSevSt : 49|1@0+ (1,0) [0|1] "" XXX - SG_ NESSReImpSevSt : 50|1@0+ (1,0) [0|1] "" XXX - SG_ NESSLeSiSevSt : 51|1@0+ (1,0) [0|1] "" XXX - SG_ NESSFrImpSt2SevSt : 52|1@0+ (1,0) [0|1] "" XXX - SG_ NESSFrImpSt1SevSt : 53|1@0+ (1,0) [0|1] "" XXX - SG_ NESSFrImpPreSevSt : 54|1@0+ (1,0) [0|1] "" XXX - SG_ NotiEventCount : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 2155872256 Fuel_Information: 6 XXX - SG_ FlLvlPctGroup : 0|9@0+ (1,0) [0|0] "" XXX - SG_ FlLvlPctV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ FlLvlPct : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ FlInjRlCtRstOcc : 1|1@0+ (1,0) [0|1] "" XXX - SG_ FuelFltChgNwIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DrvStyPerfMdCsCrStVal : 5|3@0+ (1,0) [0|7] "" XXX - SG_ DrvStyPerfMdCsStAvl : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RdWhlAngGroup : 23|8@0+ (1,0) [0|0] "" XXX - SG_ RdWhlAng : 22|7@0+ (0.703125,-45) [-45|44.296875] "deg" XXX - SG_ RdWhlAngV : 23|1@0+ (1,0) [0|1] "" XXX - SG_ VehPitchAngleGroup : 31|8@0+ (1,0) [0|0] "" XXX - SG_ VehPitchAngle : 30|7@0+ (0.703125,-45) [-45|44.296875] "deg" XXX - SG_ VehPitchAngleV : 31|1@0+ (1,0) [0|1] "" XXX - SG_ FlInjRlCt : 39|16@0+ (3.05176E-005,0) [0|1.999970916] "liters" XXX - -BO_ 2156175360 Display_Measurement_System_LS: 1 XXX - SG_ DispMeasSysExt : 1|2@0+ (1,0) [0|3] "" XXX - SG_ DispMeasSys : 2|1@0+ (1,0) [0|1] "" XXX - SG_ NtVsnSysEnbld : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149859328 System_Power_Mode_Backup_LS: 1 XXX - SG_ SysBkupPwrMdEn : 2|1@0+ (1,0) [0|1] "" XXX - SG_ SysBkUpPwrMdGroup : 3|4@0+ (1,0) [0|0] "" XXX - SG_ SysBkUpPwrMd : 1|2@0+ (1,0) [0|3] "" XXX - SG_ SysBkUpPwrMdV : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2158854144 ODIAction_IPC_LS: 8 XXX - SG_ ODIActn_IPC : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIAI_DaTy : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ODIAI_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAI_ActnID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAI_DspMID : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAI_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2158837760 ODIAction_AuxIP_LS: 8 XXX - SG_ ODIActn_AxIP : 5|62@0+ (1,0) [0|0] "" XXX - SG_ ODIAA_DaTy : 5|6@0+ (1,0) [0|63] "" XXX - SG_ ODIAA_FUCID : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAA_ActnID : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAA_DspMID : 31|8@0+ (1,0) [0|255] "" XXX - SG_ ODIAA_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2159091712 ODI_IPC_2_TEL_LS: 8 XXX - SG_ ODI_IPC2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2154561536 Vehicle_Odo_LS: 5 XXX - SG_ VehOdoGroup : 7|40@0+ (1,0) [0|0] "" XXX - SG_ VehOdo : 7|32@0+ (0.015625,0) [0|67108863.984375] "km" XXX - SG_ VehOdoV : 32|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149908480 Brake_Pedal_Status_LS: 2 XXX - SG_ BrkPedInitTrvlAchvdStat : 1|2@0+ (1,0) [0|0] "" XXX - SG_ BrkPedTrvlAchvdV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ BrkPedTrvlAchvd : 1|1@0+ (1,0) [0|1] "" XXX - SG_ BrkPdlModTrvlGroup : 3|2@0+ (1,0) [0|0] "" XXX - SG_ BrkPdlModTrvl : 2|1@0+ (1,0) [0|1] "" XXX - SG_ BrkPdlModTrvlV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ BrkPdlPos : 15|8@0+ (0.392157,0) [0|100.000035] "% full" XXX - -BO_ 2151268352 Column_Lock_Status: 1 XXX - SG_ ClmnLckTT : 1|2@0+ (1,0) [0|3] "" XXX - -BO_ 2150604800 Right_Rear_Door_Status: 1 XXX - SG_ RRDoorAjarSwAct : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150588416 Passenger_Door_Status_LS: 1 XXX - SG_ PDAjrSwAtv : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150596608 Left_Rear_Door_Status: 1 XXX - SG_ RLDoorAjarSwAct : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 2155036672 Climate_Control_General_Status: 6 XXX - SG_ ACCompNormLdGroup : 0|9@0+ (1,0) [0|0] "" XXX - SG_ ACCompNormLdV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ACCompNormLd : 15|8@0+ (0.1,0) [0|25.5] "l/min" XXX - SG_ ACCmEngRunReq : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACCmpsrFldOn : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ACCompModReq : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ClmtCtrlTrgtTemp : 17|10@0+ (0.1,-10) [-10|92.3] "deg C" XXX - -BO_ 2150424576 Engine_Information_3_LS: 8 XXX - SG_ TrnsEngdStateGroup : 2|3@0+ (1,0) [0|0] "" XXX - SG_ TrnsEngdState : 1|2@0+ (1,0) [0|3] "" XXX - SG_ TrnsEngdStateV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACRfHiSdFldPrsGroup : 3|20@0+ (1,0) [0|0] "" XXX - SG_ ACRfHiSdFldPrsV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ACRfHiSdFldPrs : 23|8@0+ (14,0) [0|3570] "kPaG" XXX - SG_ ACCompCmnd : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RrAxlELSDCplLwResGroup : 5|46@0+ (1,0) [0|0] "" XXX - SG_ RrAxlELSDCplLwResV : 5|1@0+ (1,0) [0|1] "" XXX - SG_ RrAxlELSDCplLwRes : 47|8@0+ (10,0) [0|2550] "Nm" XXX - SG_ EngAirIntBstPrGroup : 6|39@0+ (1,0) [0|0] "" XXX - SG_ EngAirIntBstPrV : 6|1@0+ (1,0) [0|1] "" XXX - SG_ EngAirIntBstPr : 39|8@0- (1,0) [-128|127] "kPaG" XXX - SG_ ExtHlStrAssCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsRngInhbtStat : 10|3@0+ (1,0) [0|7] "" XXX - SG_ DrvtShftCntrlTrgtGear : 14|4@0+ (1,0) [0|15] "" XXX - SG_ ACCmpNrmLdGrdAld : 31|8@0+ (0.1,0) [0|25.5] "dm3/m/s" XXX - SG_ EngTrqDrRqdExtRngGroup : 52|13@0+ (1,0) [0|0] "" XXX - SG_ EngTrqDrRqdExtRng : 51|12@0+ (0.5,-848) [-848|1199.5] "Nm" XXX - SG_ EngTrqDrRqdExtRngV : 52|1@0+ (1,0) [0|1] "" XXX - SG_ ExtHlStrAssCsCrStVal : 55|3@0+ (1,0) [0|7] "" XXX - -BO_ 2150416384 Engine_Information_2_LS: 8 XXX - SG_ EngBstPrsIndGroup : 0|33@0+ (1,0) [0|0] "" XXX - SG_ EngBstPrsIndV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ EngBstPrsInd : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ VaccBoostFailure : 2|1@0+ (1,0) [0|1] "" XXX - SG_ GenFld : 3|1@0+ (1,0) [0|1] "" XXX - SG_ EngSpdLmtnMdAct : 4|1@0+ (1,0) [0|1] "" XXX - SG_ PTWrmgWtToShftIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ EngNEmsnsRelMalfAct : 6|1@0+ (1,0) [0|1] "" XXX - SG_ EngCstFlCutAct : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EngRunAtv : 8|1@0+ (1,0) [0|1] "" XXX - SG_ EngIdlAtv : 11|1@0+ (1,0) [0|1] "" XXX - SG_ VehTopSpdLmtMdAct : 13|1@0+ (1,0) [0|1] "" XXX - SG_ EngCylDeactMd : 15|2@0+ (1,0) [0|3] "" XXX - SG_ TransEstGearGroup : 20|5@0+ (1,0) [0|0] "" XXX - SG_ TransEstGear : 19|4@0+ (1,0) [0|15] "" XXX - SG_ TransEstGearV : 20|1@0+ (1,0) [0|1] "" XXX - SG_ EngTrqActExtRngGroup : 21|46@0+ (1,0) [0|0] "" XXX - SG_ EngTrqActExtRngV : 21|1@0+ (1,0) [0|1] "" XXX - SG_ EngTrqActExtRng : 51|12@0+ (0.5,-848) [-848|1199.5] "Nm" XXX - SG_ EngVDA : 22|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsVDA : 23|1@0+ (1,0) [0|1] "" XXX - SG_ EngCoolFanSpd : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ VehTopSpdLmtArbVal : 47|8@0+ (2,0) [0|510] "km / h" XXX - SG_ EngSpdStat : 53|2@0+ (1,0) [0|3] "" XXX - SG_ RmVhStrtEngRng : 54|1@0+ (1,0) [0|1] "" XXX - SG_ TrnCrpMdAtv : 55|1@0+ (1,0) [0|1] "" XXX - -BO_ 2150408192 Engine_Information_1_LS: 8 XXX - SG_ TrnsSftMdStat : 2|3@0+ (1,0) [0|7] "" XXX - SG_ ThrPosGroup : 3|36@0+ (1,0) [0|0] "" XXX - SG_ ThrPosV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ThrPos : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ AccActPosGroup : 4|45@0+ (1,0) [0|0] "" XXX - SG_ AccActPosV : 4|1@0+ (1,0) [0|1] "" XXX - SG_ AccActPos : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ ElcRngSelDrvAct : 5|1@0+ (1,0) [0|1] "" XXX - SG_ TmpDrvrShftCtlAct : 6|1@0+ (1,0) [0|1] "" XXX - SG_ AccPdlOvrrdAtv : 7|1@0+ (1,0) [0|1] "" XXX - SG_ TrnShftPtrnActStat : 10|3@0+ (1,0) [0|7] "" XXX - SG_ TransTUDMdStat : 12|2@0+ (1,0) [0|3] "" XXX - SG_ Eng12vStrtrMtrCmmdOn : 13|1@0+ (1,0) [0|1] "" XXX - SG_ EngRunng : 14|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsShftLvrPosGroup : 15|48@0+ (1,0) [0|0] "" XXX - SG_ TrnsShftLvrPosV : 15|1@0+ (1,0) [0|1] "" XXX - SG_ TrnsShftLvrPos : 51|4@0+ (1,0) [0|15] "" XXX - SG_ EngSpd : 23|16@0+ (0.25,0) [0|16383.75] "rpm" XXX - SG_ AutoTransComndGear : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CrsCntEnbld : 56|1@0+ (1,0) [0|1] "" XXX - SG_ CltStartSwAtvGroup : 58|2@0+ (1,0) [0|0] "" XXX - SG_ CltStartSwAtv : 57|1@0+ (1,0) [0|1] "" XXX - SG_ CltStartSwAtvV : 58|1@0+ (1,0) [0|1] "" XXX - SG_ TopTrvlCltchSwActGroup : 60|2@0+ (1,0) [0|0] "" XXX - SG_ TopTrvlCltchSwAct : 59|1@0+ (1,0) [0|1] "" XXX - SG_ TopTrvlCltchSwActV : 60|1@0+ (1,0) [0|1] "" XXX - SG_ AdptPsngrSeatStng : 63|3@0+ (1,0) [0|7] "" XXX - -BO_ 2155954176 Climate_Control_Basic_Status_LS: 4 XXX - SG_ ACHtIdleBstLevReq : 1|2@0+ (1,0) [0|3] "" XXX - SG_ ClimCtrlAftBlowModActv : 2|1@0+ (1,0) [0|1] "" XXX - SG_ AirCndActIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ ClmCntlExtDefActIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ClntCircPmpRq : 7|1@0+ (1,0) [0|1] "" XXX - SG_ ClmCntFrBlwFnSp : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ AirCndCmptLdEst : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ ClmCntRrBlwFnSp : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2153971712 Driver_Door_Status: 1 XXX - SG_ LftglsAjrSwAct : 1|1@0+ (1,0) [0|1] "" XXX - SG_ LftglsRelSwAct : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DDAjrSwAtvGroup : 7|8@0+ (1,0) [0|0] "" XXX - SG_ DDAjrSwAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DDAjrSwAtvM : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149875712 Battery_Voltage: 7 XXX - SG_ BatVltGroup : 0|17@0+ (1,0) [0|0] "" XXX - SG_ BatVltV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ BatVlt : 23|8@0+ (0.1,3) [3|28.5] "volts" XXX - SG_ BatSaverIO : 1|1@0+ (1,0) [0|1] "" XXX - SG_ SrvBattChrgSysIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ BatSOCGroup : 3|28@0+ (1,0) [0|0] "" XXX - SG_ BatSOCV : 3|1@0+ (1,0) [0|1] "" XXX - SG_ BatSOC : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ BattStOfChrgCrtyLow : 4|1@0+ (1,0) [0|1] "" XXX - SG_ IntlgntBattSnsFldIO : 5|1@0+ (1,0) [0|1] "" XXX - SG_ BattStOfChrgLowIO : 6|1@0+ (1,0) [0|1] "" XXX - SG_ DCCnvStblznErrIO : 7|1@0+ (1,0) [0|1] "" XXX - SG_ EnrgMgtLdShdRq : 11|4@0+ (1,0) [0|15] "" XXX - SG_ BattVltIRq : 13|2@0+ (1,0) [0|3] "" XXX - SG_ PwrMdOffBattSOC : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ BattCrntFltrd : 47|8@0- (0.5,0) [-64|63.5] "A" XXX - SG_ BatSvrMdSevLvl : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 2151186432 Auto_High_Beam_Status: 1 XXX - SG_ AutoBmSlctStat : 1|2@0+ (1,0) [0|3] "" XXX - SG_ CtLghtDet : 2|1@0+ (1,0) [0|1] "" XXX - SG_ AutoHgBmCtrlInOn : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2149629952 Lighting_Status_LS: 5 XXX - SG_ OtsdAmbtLtLvlStatGroup : 0|23@0+ (1,0) [0|0] "" XXX - SG_ OtsdAmbtLtLvlStatV : 0|1@0+ (1,0) [0|1] "" XXX - SG_ OtsdAmbtLtLvlStat : 27|2@0+ (1,0) [0|3] "" XXX - SG_ DRLAct : 1|1@0+ (1,0) [0|1] "" XXX - SG_ HazSwAtv : 2|1@0+ (1,0) [0|1] "" XXX - SG_ PrkLtLeftIO : 3|1@0+ (1,0) [0|1] "" XXX - SG_ PrkLtRightIO : 4|1@0+ (1,0) [0|1] "" XXX - SG_ TrnSwAct : 6|2@0+ (1,0) [0|3] "" XXX - SG_ FrFogLmpsAct : 7|1@0+ (1,0) [0|1] "" XXX - SG_ PrkLtLeftOn : 8|1@0+ (1,0) [0|1] "" XXX - SG_ FrFgLtIO : 9|1@0+ (1,0) [0|1] "" XXX - SG_ AutoLtsInactIO : 10|1@0+ (1,0) [0|1] "" XXX - SG_ AutoLtsActIO : 11|1@0+ (1,0) [0|1] "" XXX - SG_ RrFgLtIO : 12|1@0+ (1,0) [0|1] "" XXX - SG_ HiBmIO : 13|1@0+ (1,0) [0|1] "" XXX - SG_ PrkLtIO : 14|1@0+ (1,0) [0|1] "" XXX - SG_ BrkLtsAtv : 15|1@0+ (1,0) [0|1] "" XXX - SG_ FlToPsSwAtv : 16|1@0+ (1,0) [0|1] "" XXX - SG_ RevLmpAtv : 17|1@0+ (1,0) [0|1] "N/A" XXX - SG_ PrkngLtsAct : 18|1@0+ (1,0) [0|1] "" XXX - SG_ RrFogLmpsAct : 19|1@0+ (1,0) [0|1] "" XXX - SG_ HiBmReqd : 20|1@0+ (1,0) [0|1] "" XXX - SG_ AutoBmSlctAllwd : 21|1@0+ (1,0) [0|1] "" XXX - SG_ PrkLtRightOn : 22|1@0+ (1,0) [0|1] "" XXX - SG_ SrvlnceMdAct : 23|1@0+ (1,0) [0|1] "" XXX - SG_ RtTrnLmpAtv : 25|2@0+ (1,0) [0|3] "" XXX - SG_ LftTrnLmpAtv : 29|2@0+ (1,0) [0|3] "" XXX - SG_ MainLghtSw : 31|2@0+ (1,0) [0|3] "N/A" XXX - SG_ HdlmpBmSelectStat : 33|2@0+ (1,0) [0|3] "" XXX - -BO_ 2149646336 Vehicle_Speed_Information: 8 XXX - SG_ VehSpdAvgDrvnGroup : 7|16@0+ (1,0) [0|0] "" XXX - SG_ VehSpdAvgDrvn : 6|15@0+ (0.015625,0) [0|511.984375] "km / h" XXX - SG_ VehSpdAvgDrvnV : 7|1@0+ (1,0) [0|1] "" XXX - SG_ DstRolCntAvgDrnRstOc : 21|1@0+ (1,0) [0|1] "" XXX - SG_ DistRollCntAvgDrvnGroup : 22|15@0+ (1,0) [0|0] "" XXX - SG_ DistRollCntAvgDrvn : 20|13@0+ (0.125,0) [0|1023.875] "m" XXX - SG_ DistRollCntAvgDrvnV : 22|1@0+ (1,0) [0|1] "" XXX - SG_ VehSpdAvgDrvnSrc : 23|1@0+ (1,0) [0|1] "" XXX - SG_ VehSpdAvgNDrvnGroup : 38|17@0+ (1,0) [0|0] "" XXX - SG_ VehSpdAvgNDrvn : 38|15@0+ (0.015625,0) [0|511.984375] "km / h" XXX - SG_ VehSpdAvgNDrvnV : 54|1@0+ (1,0) [0|1] "" XXX - SG_ DstRolCntAvgNonDrvnGroup : 39|32@0+ (1,0) [0|0] "" XXX - SG_ DstRolCntAvgNonDrvnV : 39|1@0+ (1,0) [0|1] "" XXX - SG_ DstRolCntAvgNonDrvn : 52|13@0+ (0.125,0) [0|1023.875] "m" XXX - SG_ DstRolCntAvNDrRstOc : 53|1@0+ (1,0) [0|1] "" XXX - SG_ DistRollCntAvgDrvnSrc : 55|1@0+ (1,0) [0|1] "" XXX - -BO_ 2154053632 Dimming_Information_LS: 3 XXX - SG_ IntDimNtPnlAtv : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DispNtSchmAtv : 1|1@0+ (1,0) [0|1] "" XXX - SG_ CargoLmpActIO : 2|1@0+ (1,0) [0|1] "" XXX - SG_ IntDimLvl : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX - SG_ IntDimDspLvl : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX - -BO_ 2149851136 System_Power_Mode_LS: 1 XXX - SG_ SysPwrMdGroup : 2|3@0+ (1,0) [0|0] "" XXX - SG_ SysPwrMd : 1|2@0+ (1,0) [0|3] "" XXX - SG_ SysPwrMdV : 2|1@0+ (1,0) [0|1] "" XXX - SG_ KylsStrtAuthRq : 3|1@0+ (1,0) [0|1] "" XXX - -BO_ 2159124480 ODI_AuxIP_2_TEL_LS: 8 XXX - SG_ ODI_AxIP2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX - -BO_ 2151530496 TPM_Display_Commands: 6 XXX - SG_ TPMTrLrnMdCmplt : 0|1@0+ (1,0) [0|1] "" XXX - SG_ TrPrsMntrAtLocFld : 1|1@0+ (1,0) [0|1] "" XXX - SG_ TrPrsMntrTrLdStat : 3|2@0+ (1,0) [0|3] "" XXX - SG_ TireTrdTmpStat : 6|3@0+ (1,0) [0|7] "" XXX - SG_ TrFrntAxlPresStat : 9|2@0+ (1,0) [0|3] "" XXX - SG_ TrRrAxlPresStat : 11|2@0+ (1,0) [0|3] "" XXX - SG_ WintTrRecIndOn : 12|1@0+ (1,0) [0|1] "" XXX - SG_ TrPrsMntrFld : 13|1@0+ (1,0) [0|1] "" XXX - SG_ TireLocatnWarnEn : 15|1@0+ (1,0) [0|1] "" XXX - SG_ HVChgSyChgLvPfStRmt1 : 18|3@0+ (1,0) [0|7] "" XXX - SG_ StTODChrgTmpOvrdRmt1 : 20|2@0+ (1,0) [0|3] "" XXX - SG_ PrtyChrgRqRmt1 : 22|2@0+ (1,0) [0|3] "" XXX - SG_ OfBrdHVCVhCsChRqRmt1 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ HVBatTmBsDlChStRqRmt1 : 28|21@0+ (1,0) [0|0] "" XXX - SG_ HVBTBDCSRR1_DChHStRq : 28|5@0+ (1,0) [0|31] "hr" XXX - SG_ HVBTBDCSRR1_DChSlSRq : 35|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBDCSRR1_DChDStRq : 39|4@0+ (1,0) [0|15] "" XXX - SG_ HVBTBDCSRR1_DChMHSRq : 45|6@0+ (1,0) [0|63] "min" XXX - SG_ HVBTBDCSRR1_DChSnSRq : 47|2@0+ (1,0) [0|3] "" XXX - SG_ HVBatTmBsChgMdRqRmt1 : 31|3@0+ (1,0) [0|7] "" XXX - - - -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "ProtocolType" "GMLAN"; -BA_ "BusType" "CAN"; - diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_object.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_object.dbc deleted file mode 100644 index 4643a640ac..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_object.dbc +++ /dev/null @@ -1,724 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: K109_FCM B233B_LRR NEO VIS_FO VIS2_FO K124_ASCM Vector__XXX EOCM_F_FO EOCM2A_IMX6_FO EOCM2A_K2_FO EOCM2A_K1_FO EOCM2B_IMX6_FO EOCM2B_K2_FO EOCM2B_K1_FO -VAL_TABLE_ RangeMode 1 "Active" 0 "Inactive" ; -VAL_TABLE_ TrkConf 3 "Confident" 2 "Speculative" 1 "Highly speculative" 0 "Invalid" ; -VAL_TABLE_ TrkMeasStatus 3 "Measured current cycle" 2 "Latent track not detected" 1 "New object" 0 "No object" ; -VAL_TABLE_ TrkDynProp 4 "Moving in opposite direction" 3 "Moving in same direction" 2 "Has moved but currently stopped" 1 "Has never moved," 0 "Unknown" ; -VAL_TABLE_ FrntVsnInPthVehBrkNwSt 10 "Active" 5 "Inactive" ; -VAL_TABLE_ FrntVsnClostPedBrkNwSt 10 "Active" 5 "Inactive" ; -VAL_TABLE_ LaneSnsLLnPosValid 1 "Invalid" 0 "Valid" ; -VAL_TABLE_ LnSnsRLnPosValid 1 "Invalid" 0 "Valid" ; -VAL_TABLE_ ObjectType 7 "no object present" 6 "fixed roadside object" 5 "fixed overhead object" 4 "pedestrian" 3 "motocycle / bicycle" 2 "Large vehicle (semi)" 1 "4 Wheel Vehicle (car, small trk)" 0 "Unknown" ; -VAL_TABLE_ FwVsnCinCoutPotT9Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT8Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT7Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT6Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT5Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT4Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT3Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT2Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT1Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT12Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT11Rev 2 "Right" 1 "Left" 0 "None" ; -VAL_TABLE_ FwVsnCinCoutPotT10Rev 2 "Right" 1 "Left" 0 "None" ; - - -BO_ 3221225472 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX - SG_ Always12 : 0|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TimeStatusChecksum : 0|12@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 161 ASCMTimeStatus: 7 NEO - SG_ TimeStatus : 7|28@0+ (1,0) [0|0] "" B233B_LRR - SG_ RollingCounter : 27|2@0+ (1,0) [0|0] "" B233B_LRR - -BO_ 774 ASCMSteeringStatus: 8 NEO - SG_ ASCMSterringStatusChecksum : 55|16@0+ (1,0) [0|0] "" B233B_LRR - SG_ AlwaysF0 : 15|8@0+ (1,0) [0|0] "" B233B_LRR - SG_ Always20 : 23|8@0+ (1,0) [0|0] "" B233B_LRR - SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" B233B_LRR - -BO_ 784 ASCMHeadlight: 2 NEO - SG_ Always42 : 7|8@0+ (1,0) [0|0] "" B233B_LRR - SG_ Always4 : 15|8@0+ (1,0) [0|0] "" B233B_LRR - -BO_ 776 ASCMAccSpeedStatus: 7 NEO - SG_ AccSpeedChecksum : 42|11@0+ (1,0) [0|0] "" B233B_LRR - SG_ RollingCounter : 46|2@0+ (1,0) [0|0] "" B233B_LRR - SG_ NearRangeMode : 43|1@0+ (1,0) [0|0] "" B233B_LRR - SG_ FarRangeMode : 44|1@0+ (1,0) [0|0] "" B233B_LRR - SG_ VehicleAcceleration : 19|12@0+ (1,0) [0|0] "" B233B_LRR - SG_ VehicleSpeed : 15|12@0+ (1,0) [0|0] "" B233B_LRR - SG_ AlwaysOne : 3|1@0+ (1,0) [0|0] "" B233B_LRR - -BO_ 1120 F_LRR_Obj_Header: 8 LRR_FO - SG_ FLRRRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FLRRModeCmdFdbk : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRNumValidTargets : 20|5@0+ (1,0) [0|31] "" EOCM_F_FO - SG_ FLRRTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRTimeStamp : 2|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ FLRRRoadTypeInfo : 5|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FLRRBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - SG_ FLRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRLonVelPlsblityFlt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRYawRtPlsblityFlt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRTunlDtctd : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FLRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1134 LRRObject14: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1132 LRRObject12: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1131 LRRObject11: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1130 LRRObject10: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1129 LRRObject09: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1128 LRRObject08: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1127 LRRObject07: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1126 LRRObject06: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1125 LRRObject05: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1124 LRRObject04: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1123 LRRObject03: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1140 LRRObject20: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1139 LRRObject19: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1138 LRRObject18: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1137 LRRObject17: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1136 LRRObject16: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1135 LRRObject15: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1133 LRRObject13: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1122 LRRObject02: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - -BO_ 1121 LRRObject01: 8 B233B_LRR - SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO - SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO - SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO - SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO - SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO - SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO - - BO_ 1094 F_Vision_Obj_Track_12: 8 VIS2_FO - SG_ FwdVsnObjTypTr12Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk12Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk12Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FVisionWidthTrk12 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FVisionMeasStatTrk12 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk12 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisionRelLaneTrk12 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk12 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO - SG_ FVisionConfTrk12 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ ObjDirTrk12 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk12 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk12 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1093 F_Vision_Obj_Track_11: 8 VIS2_FO - SG_ FwdVsnObjTypTr11Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk11Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk11Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FVisionWidthTrk11 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FVisionMeasStatTrk11 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk11 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisionRelLaneTrk11 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk11 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO - SG_ FVisionConfTrk11 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ ObjDirTrk11 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk11 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk11 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - -BO_ 1100 F_Vision_Obj_Track_12_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT12Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk12 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk12 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk12 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk12 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr12 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk12 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo12 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1099 F_Vision_Obj_Track_11_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT11Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk11 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk11 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk11 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk11 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr11 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk11 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo11 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1098 F_Vision_Obj_Track_10_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT10Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk10 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk10 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk10 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk10 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr10 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk10 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo10 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1097 F_Vision_Obj_Track_9_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT9Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk9 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk9 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk9 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk9 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr9 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk9 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo9 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1096 F_Vision_Obj_Track_8_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT8Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk8 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk8 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk8 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk8 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr8 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk8 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo8 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1095 F_Vision_Obj_Track_7_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT7Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk7 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk7 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk7 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk7 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr7 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk7 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo7 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1068 F_Vision_Obj_Track_6_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT6Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk6 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk6 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk6 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk6 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr6 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk6 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo6 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1067 F_Vision_Obj_Track_5_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT5Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk5 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk5 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk5 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk5 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr5 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk5 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo5 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1066 F_Vision_Obj_Track_4_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT4Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk4 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk4 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk4 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk4 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr4 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk4 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo4 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1065 F_Vision_Obj_Track_3_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT3Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk3 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk3 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk3 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk3 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr3 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk3 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo3 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1064 F_Vision_Obj_Track_2_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT2Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjAgeTrk2 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk2 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk2 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk2 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr2 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk2 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo2 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1063 F_Vision_Obj_Track_1_B: 8 VIS2_FO - SG_ FwVsnCinCoutPotT1Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnObjSclChgTrk1 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO - SG_ FwdVsnObjAgeTrk1 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO - SG_ FwdVsnLongVlctyTrk1 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO - SG_ FwdVsnLatOfstTrk1 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO - SG_ FwdVsnBrkLtStatTrk1 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FwdVsnTrnSigStatTr1 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FrtVsnBrstIDAddInfo1 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1088 F_Vision_Obj_Header_2: 8 VIS2_FO - SG_ FrntVsnInPthVehBrkNwSt : 35|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FrntVsnClostPedBrkNwSt : 39|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FrntVsnClostPedObjID : 29|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FrntVsnClostPedAlrtNwFlg : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrntVsnClostPedNotftnFlg : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrntVsnInPthVehAlrtNwFlg : 2|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnVldTgtNum2 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FrtVsnTmStmp2V : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnTmStmp2 : 10|11@0+ (1,0) [0|2047] "" EOCM_F_FO - SG_ FrtVsnRollCnt2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FrtVsnBrstChksum2 : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO - -BO_ 854 F_Vision_Environment_7: 3 VIS2_FO - SG_ FwdVsnCnstrctAreaDst : 13|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnCnstrctZnDet : 15|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnEgoVehLnPos : 17|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnRdTypDet : 9|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnTunnlDetd : 23|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ FwdVsnTunnlDst : 21|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBrstID5 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 853 F_Vision_Environment_6: 8 VIS2_FO - SG_ LnMrkg4LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvtGrad : 47|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnSnsLnCrvt : 31|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBrstID4 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 852 F_Vision_Environment_5: 8 VIS2_FO - SG_ LnMrkg3LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvtGrad : 47|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnSnsLnCrvt : 31|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBrstID3 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 309 LHT_CameraObjConfirmation_FO: 1 VIS_FO - SG_ HiBmRecmnd : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ CtLghtDet : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 848 F_Vision_Environment: 8 VIS_FO - SG_ FwdVsnEnvIllum : 37|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnRtV : 1|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnRt : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnChngStatus : 39|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseSystemOK : 4|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSnsLLnPosValid : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSenseDistToLLnEdge : 14|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsRLnPosValid : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsDistToRLnEdge : 22|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseTimeStampV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseTimeStamp : 34|11@0+ (1,0) [0|2047] "ms" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LaneSenseSystemOKV : 3|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 849 F_Vision_Environment_2: 8 VIS_FO - SG_ LnSnsLatVRelToRgtMrkg : 23|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO - SG_ LnSnsRtLnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntRtV : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnMrkgWdthRt : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsRtAnchrLn : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtAnchrLn : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrRghtV : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrRght : 47|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntRt : 31|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstID : 2|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLatVRelToLftMrkg : 15|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - -BO_ 1056 F_Vision_Obj_Header: 6 VIS_FO - SG_ FVsnSnsrBlckd : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ ClstInPathVehObjID : 30|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FrtVsnFld : 6|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnIniDiagSuccCmpt : 5|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnSrvAlgnInPrcs : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FrtVsnUnvlbl : 7|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVISModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO - SG_ FVisionNumValidTrgts : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FVisionTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO - SG_ VISBurstChecksum : 39|16@0+ (1,0) [0|65535] "" EOCM_F_FO - -BO_ 1057 F_Vision_Obj_Track_1: 8 VIS_FO - SG_ FwdVsnRngTrk1Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk1Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr1Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk1 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisBurstIDTrk1 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk1 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk1 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk1 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk1 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ ObjDirTrk1 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1058 F_Vision_Obj_Track_2: 8 VIS_FO - SG_ FwdVsnVertPosTrk2 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk2Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk2Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ ObjDirTrk2 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FwdVsnObjTypTr2Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FVisBurstIDTrk2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk2 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk2 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk2 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk2 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1059 F_Vision_Obj_Track_3: 8 VIS_FO - SG_ FwdVsnVertPosTrk3 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk3Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk3Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr3Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk3 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk3 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk3 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk3 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk3 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk3 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1060 F_Vision_Obj_Track_4: 8 VIS_FO - SG_ FwdVsnVertPosTrk4 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FVisionMeasStatTrk4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk4 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FwdVsnRngTrk4Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk4Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr4Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FVisBurstIDTrk4 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk4 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ ObjDirTrk4 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionConfTrk4 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk4 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - -BO_ 1061 F_Vision_Obj_Track_5: 8 VIS_FO - SG_ FwdVsnVertPosTrk5 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk5Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk5Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr5Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk5 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk5 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk5 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk5 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk5 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk5 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1062 F_Vision_Obj_Track_6: 8 VIS_FO - SG_ FwdVsnVertPosTrk6 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk6Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk6Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr6Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk6 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk6 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk6 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk6 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk6 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk6 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1089 F_Vision_Obj_Track_7: 8 VIS2_FO - SG_ FVisBurstIDTrk7 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk7 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk7 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk7 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk7 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - SG_ FwdVsnRngTrk7Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnObjTypTr7Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk7Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnVertPosTrk7 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ ObjDirTrk7 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - -BO_ 1090 F_Vision_Obj_Track_8: 8 VIS2_FO - SG_ FVisBurstIDTrk8 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk8 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FwdVsnAzmthTrk8Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnVertPosTrk8 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk8Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnObjTypTr8Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk8 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisionConfTrk8 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk8 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk8 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1091 F_Vision_Obj_Track_9: 8 VIS2_FO - SG_ FwdVsnVertPosTrk9 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ FwdVsnRngTrk9Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk9Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr9Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ ObjDirTrk9 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk9 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk9 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk9 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk9 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk9 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 1092 F_Vision_Obj_Track_10: 8 VIS2_FO - SG_ FwdVsnRngTrk10Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO - SG_ FwdVsnAzmthTrk10Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO - SG_ FwdVsnObjTypTr10Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO - SG_ FwdVsnVertPosTrk10 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO - SG_ ObjDirTrk10 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO - SG_ FVisBurstIDTrk10 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionObjectIDTrk10 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO - SG_ FVisionConfTrk10 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionAzRateTrk10 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO - SG_ FVisionRelLaneTrk10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionMeasStatTrk10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO - SG_ FVisionWidthTrk10 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO - -BO_ 851 F_Vision_Environment_4: 8 VIS_FO - SG_ LnMrkg3LnPrvwDst : 45|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTtlNmLnMrkgDetRt : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsRtLinCrsTm : 25|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsNumPrlLnsDetRt : 33|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsNumPrlLnsDetLt : 36|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntLftV : 31|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtLinCrsTm : 30|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnPrvwDst : 50|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMrkgTypChgDst : 40|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMrkgWdth : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4LnMarkrElvtd : 51|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg4AnchrLnLin : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMrkgWdth : 41|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3LnMarkrElvtd : 46|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkg3AnchrLnLin : 52|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstID2 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsCrvtGrdntLft : 15|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - - BO_ 850 F_Vision_Environment_3: 8 VIS_FO - SG_ LnSnsTtlNmLnMrkgDetLt : 58|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtLnMrkgWdth : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLtLnMrkgTypChgDst : 62|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnLftV : 23|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsTngtOfHdngLnLft : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrLftV : 15|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsLnCrvtrLft : 39|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrTypRght : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrTypLft : 53|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrElvtdRght : 54|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnMrkrElvtdLft : 55|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnSnsBurstID1 : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnQltyCnfdncLvlRght : 22|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnQltyCnfdncLvlLft : 14|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnPrvwDstncRght : 2|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - SG_ LnPrvwDstncLft : 5|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO - - -BO_TX_BU_ 161 : K124_ASCM,NEO; -BO_TX_BU_ 774 : K124_ASCM,NEO; -BO_TX_BU_ 784 : K124_ASCM,NEO; -BO_TX_BU_ 776 : K124_ASCM,NEO; - - -CM_ BU_ K109_FCM "Frontview Camera Module"; -CM_ BU_ B233B_LRR "Radar Sensor Module Long Range"; -CM_ BU_ NEO "Comma NEO"; -CM_ BU_ VIS_FO "Front Camera Data"; -CM_ BU_ VIS2_FO "Front Camera Data2"; -CM_ BU_ K124_ASCM "Active Safety Control Module"; -CM_ BO_ 3221225472 "This is a message for not used signals, created by Vector CANdb++ DBC OLE DB Provider."; -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; -BA_ "UseGMParameterIDs" 0; -VAL_ 776 NearRangeMode 1 "Active" 0 "Inactive"; -VAL_ 776 FarRangeMode 1 "Active" 0 "Inactive"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc deleted file mode 100644 index b18ac6974d..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc +++ /dev/null @@ -1,56 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: -BU_: K1_APM -BO_ 470 APM_Stats: 7 K1_APM - SG_ APM_Low_Voltage_Sensed : 16|8@1+ (0.0787402,0) [0|0] "V" Vector__XXX - SG_ APM_Temperature_1 : 24|8@1+ (1,-40) [0|0] "C" Vector__XXX - SG_ APM_Temperature_2 : 32|8@1+ (1,-40) [0|0] "C" Vector__XXX - SG_ APM_Low_Voltage_Current_Output : 40|8@1- (1,0) [0|0] "A" Vector__XXX - SG_ APM_Status : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ APM_High_Voltage_Input_Current : 8|8@1- (0.15,-7) [0|0] "A" Vector__XXX - SG_ APM_Counter : 48|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 468 APM_Command: 2 K1_APM - SG_ APM_Status : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ APM_Voltage_Requested : 8|8@1+ (0.0787402,0) [0|0] "V" Vector__XXX - -BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; -BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; -BA_DEF_ BO_ "isj1939dbc" INT 0 0; -BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; -BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; -BA_DEF_DEF_ "isj1939dbc" 0; -CM_ BU_ K1_APM "14V Power Module"; -VAL_ 468 APM_Status 0 "Off" 160 "On"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc deleted file mode 100644 index 75122aa2bf..0000000000 --- a/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc +++ /dev/null @@ -1,352 +0,0 @@ - -CM_ "IMPORT _community.dbc"; -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: K16_BECM K73_TCIC K9_BCM K43_PSCM K17_EBCM K20_ECM K114B_HPCM NEO K124_ASCM EPB -VAL_TABLE_ TurnSignals 2 "Right Turn" 1 "Left Turn" 0 "None" ; -VAL_TABLE_ Intellibeam 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HighBeamsActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HighBeamsTemporary 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCLeadCar 1 "Present" 0 "Not Present" ; -VAL_TABLE_ ACCCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ BrakePedalPressed 1 "Pressed" 0 "Depressed" ; -VAL_TABLE_ DistanceButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ LKAButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_TABLE_ DriveModeButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; -VAL_TABLE_ ESPButton 1 "Active" 0 "Inactive" ; -VAL_TABLE_ DoorStatus 1 "Opened" 0 "Closed" ; -VAL_TABLE_ SeatBeltStatus 1 "Latched" 0 "Unlatched" ; -VAL_TABLE_ LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; -VAL_TABLE_ GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; -VAL_TABLE_ GasRegenCmdActive 1 "Active" 0 "Inactive" ; -VAL_TABLE_ LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; -VAL_TABLE_ HandsOffSWDetectionStatus 1 "Hands On" 0 "Hands Off" ; -VAL_TABLE_ HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; - - -BO_ 189 EBCMRegenPaddle: 7 K17_EBCM - SG_ RegenPaddle : 7|4@0+ (1,0) [0|0] "" NEO - -BO_ 190 ECMAcceleratorPos: 6 K20_ECM - SG_ BrakePedalPos : 15|8@0+ (1,0) [0|0] "sticky" NEO - SG_ GasPedalAndAcc : 23|8@0+ (1,0) [0|0] "" NEO - -BO_ 201 ECMEngineStatus: 8 K20_ECM - SG_ EngineTPS : 39|8@0+ (0.392156863,0) [0|100.000000065] "%" NEO - SG_ EngineRPM : 15|16@0+ (0.25,0) [0|0] "RPM" NEO - SG_ CruiseMainOn : 29|1@0+ (1,0) [0|1] "" NEO - SG_ BrakePressed : 40|1@0+ (1,0) [0|1] "" NEO - SG_ Standstill : 2|1@0+ (1,0) [0|1] "" NEO - SG_ CruiseActive : 31|2@0+ (1,0) [0|3] "" NEO - -BO_ 209 EBCMBrakePedalSensors: 7 K17_EBCM - SG_ Counter1 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ Counter2 : 23|2@0+ (1,0) [0|3] "" XXX - SG_ BrakePedalPosition1 : 5|14@0+ (1,0) [0|16383] "" XXX - SG_ BrakePedalPosition2 : 21|14@0- (-1,0) [0|16383] "" XXX - SG_ BrakeNormalized1 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ BrakeNormalized2 : 47|8@0- (-1,0) [0|255] "" XXX - -BO_ 241 EBCMBrakePedalPosition: 6 K17_EBCM - SG_ BrakePressed : 1|1@0+ (1,0) [0|1] "" XXX - SG_ BrakePedalPosition : 15|8@0+ (1,0) [0|255] "" NEO - -BO_ 298 BCMDoorBeltStatus: 8 K9_BCM - SG_ RearLeftDoor : 8|1@0+ (1,0) [0|0] "" NEO - SG_ FrontLeftDoor : 9|1@0+ (1,0) [0|0] "" NEO - SG_ FrontRightDoor : 10|1@0+ (1,0) [0|0] "" NEO - SG_ RearRightDoor : 23|1@0+ (1,0) [0|0] "" NEO - SG_ LeftSeatBelt : 12|1@0+ (1,0) [0|0] "" NEO - SG_ RightSeatBelt : 53|1@0+ (1,0) [0|0] "" NEO - -BO_ 309 ECMPRDNL: 8 K20_ECM - SG_ PRNDL : 2|3@0+ (1,0) [0|0] "" NEO - SG_ ESPButton : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 320 BCMTurnSignals: 3 K9_BCM - SG_ TurnSignals : 19|2@0+ (1,0) [0|0] "" NEO - SG_ Intellibeam : 13|1@0+ (1,0) [0|1] "" XXX - SG_ HighBeamsActive : 7|1@0+ (1,0) [0|1] "" XXX - SG_ HighBeamsTemporary : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 322 BCMBlindSpotMonitor: 7 K9_BCM - SG_ LeftBSM : 6|1@0+ (1,0) [0|1] "" XXX - SG_ RightBSM : 7|1@0+ (1,0) [0|1] "" XXX - -BO_ 328 PSCM_148: 1 K43_PSCM - -BO_ 381 ESPStatus: 6 K20_ECM - SG_ TractionControlOn : 5|1@0+ (1,0) [0|0] "" NEO - SG_ MSG17D_AccPower : 35|12@0- (1,0) [0|0] "" NEO - -BO_ 384 ASCMLKASteeringCmd: 4 NEO - SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdChecksum : 19|12@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmdActive : 3|1@0+ (1,0) [0|0] "" NEO - SG_ LKASteeringCmd : 2|11@0- (1,0) [0|0] "" NEO - -BO_ 388 PSCMStatus: 8 K43_PSCM - SG_ HandsOffSWDetectionMode : 20|2@0+ (1,0) [0|3] "" NEO - SG_ HandsOffSWlDetectionStatus : 21|1@0+ (1,0) [0|1] "" NEO - SG_ LKATorqueDeliveredStatus : 5|3@0+ (1,0) [0|7] "" NEO - SG_ LKADriverAppldTrq : 50|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO - SG_ LKATorqueDelivered : 18|11@0- (0.01,0) [0|1] "" NEO - SG_ LKATotalTorqueDelivered : 2|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO - SG_ RollingCounter : 38|4@0+ (1,0) [0|15] "" XXX - SG_ PSCMStatusChecksum : 33|10@0+ (1,0) [0|1023] "" XXX - -BO_ 417 AcceleratorPedal: 7 XXX - SG_ AcceleratorPedal : 55|8@0+ (1,0) [0|0] "" NEO - -BO_ 451 GasAndAcc: 8 XXX - SG_ GasPedalAndAcc2 : 55|8@0+ (1,0) [0|0] "" NEO - -BO_ 452 AcceleratorPedal2: 8 XXX - SG_ CruiseState : 15|3@0+ (1,0) [0|7] "" NEO - SG_ AcceleratorPedal2 : 47|8@0+ (1,0) [0|0] "" NEO - -BO_ 481 ASCMSteeringButton: 7 K124_ASCM - SG_ DistanceButton : 22|1@0+ (1,0) [0|0] "" NEO - SG_ LKAButton : 23|1@0+ (1,0) [0|0] "" NEO - SG_ ACCAlwaysOne : 24|1@0+ (1,0) [0|1] "" XXX - SG_ ACCButtons : 46|3@0+ (1,0) [0|0] "" NEO - SG_ DriveModeButton : 39|1@0+ (1,0) [0|1] "" XXX - SG_ RollingCounter : 33|2@0+ (1,0) [0|3] "" NEO - SG_ SteeringButtonChecksum : 43|12@0+ (1,0) [0|255] "" NEO - -BO_ 485 PSCMSteeringAngle: 8 K43_PSCM - SG_ SteeringWheelAngle : 15|16@0- (0.0625,0) [-2047|2047] "deg" NEO - SG_ SteeringWheelRate : 27|12@0- (1,0) [-2047|2047] "deg/s" NEO - -BO_ 489 EBCMVehicleDynamic: 8 K17_EBCM - SG_ BrakePedalPressed : 6|1@0+ (1,0) [0|0] "" NEO - SG_ LateralAcceleration : 3|10@0- (0.161,0) [-2047|2047] "m/s2" NEO - SG_ YawRate : 35|12@0- (0.625,0) [0|1] "" NEO - SG_ YawRate2 : 51|12@0- (0.0625,0) [-2047|2047] "grad/s" NEO - -BO_ 352 BCMImmobilizer: 5 K9_BCM - SG_ ImmobilizerInfo : 7|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 497 BCMGeneralPlatformStatus: 8 K9_BCM - SG_ SystemPowerMode : 1|2@0+ (1,0) [0|3] "" XXX - SG_ SystemBackUpPowerMode : 5|2@0+ (1,0) [0|3] "" XXX - SG_ ParkBrakeSwActive : 36|1@0+ (1,0) [0|3] "" XXX - -BO_ 500 SportMode: 6 XXX - SG_ SportMode : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 501 ECMPRDNL2: 8 K20_ECM - SG_ TransmissionState : 48|4@1+ (1,0) [0|7] "" NEO - SG_ PRNDL2 : 27|4@0+ (1,0) [0|255] "" NEO - SG_ ManualMode : 41|1@0+ (1,0) [0|1] "" NEO - -BO_ 532 BRAKE_RELATED: 6 XXX - SG_ UserBrakePressure : 0|9@0+ (1,0) [0|511] "" XXX - -BO_ 560 EPBStatus: 8 EPB - SG_ EPBClosed : 12|1@0+ (1,0) [0|1] "" NEO - -BO_ 562 EBCMFrictionBrakeStatus: 8 K17_EBCM - SG_ FrictionBrakeUnavailable : 46|1@0+ (1,0) [0|1] "" XXX - -BO_ 608 SPEED_RELATED: 8 XXX - SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" XXX - SG_ ClusterSpeed : 31|8@0+ (1,0) [0|0] "" XXX - -BO_ 711 BECMBatteryVoltageCurrent: 6 K17_EBCM - SG_ HVBatteryVoltage : 31|12@0+ (0.125,0) [0|511.875] "V" NEO - SG_ HVBatteryCurrent : 12|13@0- (0.15,0) [-614.4|614.25] "A" NEO - -BO_ 715 ASCMGasRegenCmd: 8 K124_ASCM - SG_ GasRegenAccType : 15|2@0+ (1,0) [0|3] "" NEO - SG_ GasRegenChecksum : 32|25@0+ (1,0) [0|0] "" NEO - SG_ GasRegenFullStopActive : 13|1@0+ (1,0) [0|0] "" NEO - SG_ GasRegenCmdActive : 0|1@0+ (1,0) [0|0] "" NEO - SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" NEO - SG_ GasRegenCmd : 10|19@0+ (0.125,-22534) [-22534|43001.875] "Nm" NEO - -BO_ 717 ASCM_2CD: 5 K124_ASCM - -BO_ 761 BRAKE_RELATED_2: 7 XXX - SG_ UserBrakePressure2 : 47|9@0+ (1,0) [0|511] "" XXX - -BO_ 789 EBCMFrictionBrakeCmd: 5 K124_ASCM - SG_ RollingCounter : 33|2@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO - SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO - -BO_ 800 AEBCmd: 6 K124_ASCM - SG_ RollingCounter : 5|2@0+ (1,0) [0|3] "" NEO - SG_ AEBChecksum : 27|20@0+ (1,0) [0|0] "" NEO - SG_ AEBCmdActive : 3|1@1+ (1,0) [0|1] "" NEO - SG_ AEBCmd : 2|11@0+ (1,0) [0|0] "" NEO - SG_ AEBCmd2 : 23|8@0+ (1,0) [0|0] "" NEO - -BO_ 810 TCICOnStarGPSPosition: 8 K73_TCIC - SG_ GPSLongitude : 39|32@0+ (1,-2147483648) [0|0] "milliarcsecond" NEO - SG_ GPSLatitude : 7|32@0+ (1,0) [0|0] "milliarcsecond" NEO - -BO_ 840 EBCMWheelSpdFront: 5 K17_EBCM - SG_ FLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ FRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO - -BO_ 842 EBCMWheelSpdRear: 5 K17_EBCM - SG_ RLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ RRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO - SG_ RRWheelDir : 34|3@0+ (1,0) [0|7] "" NEO - SG_ RLWheelDir : 37|3@0+ (1,0) [0|7] "" NEO - -BO_ 869 ASCM_365: 4 K124_ASCM - -BO_ 880 ASCMActiveCruiseControlStatus: 6 K124_ASCM - SG_ ACCCruiseState : 8|3@1+ (1,0) [0|7] "" XXX - SG_ ACCLeadCar : 44|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCAlwaysOne2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCAlwaysOne : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCSpeedSetpoint : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" NEO - SG_ ACCGapLevel : 21|2@0+ (1,0) [0|0] "" NEO - SG_ ACCResumeButton : 1|1@0+ (1,0) [0|0] "" NEO - SG_ ACCCmdActive : 23|1@0+ (1,0) [0|0] "" NEO - SG_ FCWAlert : 41|2@0+ (1,0) [0|3] "" XXX - -BO_ 967 EVDriveMode: 4 XXX - SG_ SinglePedalModeActive : 7|1@0+ (1,0) [0|1] "" XXX - SG_ SinglePedalModeRisingEdge : 21|1@0+ (1,0) [0|1] "" XXX - SG_ SinglePedalModeFallingEdge : 22|1@0+ (1,0) [0|1] "" XXX - -BO_ 977 ECMCruiseControl: 8 K20_ECM - SG_ CruiseActive : 39|1@0+ (1,0) [0|3] "" NEO - SG_ CruiseSetSpeed : 19|12@0+ (0.0625,0) [0|0] "km/h" NEO - -BO_ 1001 ECMVehicleSpeed: 8 K20_ECM - SG_ VehicleSpeed : 7|16@0+ (0.01,0) [0|0] "mph" NEO - SG_ VehicleSpeedLeft : 39|16@0+ (0.01,0) [0|0] "mph" NEO - -BO_ 1033 ASCMKeepAlive: 7 NEO - SG_ ASCMKeepAliveAllZero : 7|56@0+ (1,0) [0|0] "" NEO - -BO_ 1034 ASCM_40A: 7 K124_ASCM - -BO_ 1217 ECMEngineCoolantTemp: 8 K20_ECM - SG_ EngineCoolantTemp : 23|8@0+ (1,-40) [0|0] "C" NEO - -BO_ 1249 VIN_Part2: 8 K20_ECM - SG_ VINPart2 : 7|64@0+ (1,0) [0|0] "" NEO - -BO_ 1296 ASCM_510: 4 K124_ASCM - -BO_ 1300 VIN_Part1: 8 K20_ECM - SG_ VINPart1 : 7|64@0+ (1,0) [0|0] "" NEO - -BO_ 1912 PSCM_778: 8 K43_PSCM - -BO_ 1930 ASCM_78A: 7 K124_ASCM - -BO_TX_BU_ 384 : K124_ASCM,NEO; -BO_TX_BU_ 880 : NEO,K124_ASCM; -BO_TX_BU_ 1033 : K124_ASCM,NEO; -BO_TX_BU_ 715 : NEO,K124_ASCM; -BO_TX_BU_ 789 : NEO,K124_ASCM; -BO_TX_BU_ 800 : NEO,K124_ASCM; - - -CM_ BU_ K16_BECM "Battery Energy Control Module"; -CM_ BU_ K73_TCIC "Telematics Communication Control Module"; -CM_ BU_ K9_BCM "Body Control Module"; -CM_ BU_ K43_PSCM "Power Steering Control Module"; -CM_ BU_ K17_EBCM "Electronic Brake Control Module"; -CM_ BU_ K20_ECM "Engine Control Module"; -CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; -CM_ BU_ NEO "Comma NEO"; -CM_ BU_ K124_ASCM "Active Safety Control Module"; -CM_ SG_ 381 MSG17D_AccPower "Need to investigate"; -CM_ BO_ 190 "Length varies from 6 to 8 bytes by car"; -CM_ SG_ 190 GasPedalAndAcc "ACC baseline is 62"; -CM_ SG_ 322 LeftBSM "For some cars, this can only be when the blinker is also active"; -CM_ SG_ 322 RightBSM "For some cars, this can only be when the blinker is also active"; -CM_ SG_ 352 ImmobilizerInfo "Non-zero when ignition or accessory mode"; -CM_ SG_ 451 GasPedalAndAcc2 "ACC baseline is 62"; -CM_ SG_ 481 ACCAlwaysOne "Usually 1 if the car is equipped with ACC"; -CM_ SG_ 562 FrictionBrakeUnavailable "1 when ACC brake control is unavailable. Stays high if brake command messages are blocked for a period of time"; -CM_ SG_ 497 SystemPowerMode "Describes ignition"; -CM_ SG_ 497 SystemBackUpPowerMode "Describes ignition + preconditioning mode, noisy"; -CM_ SG_ 501 PRNDL2 "When ManualMode is Active, Value is 13=L1 12=L2 11=L3 ... 4=L10"; -CM_ SG_ 532 UserBrakePressure "can be lower than other brake position signals when the brakes are pre-filled from ACC braking and the user presses on the brakes. user-only pressure?"; -CM_ SG_ 608 ClusterSpeed "Cluster speed signal seems to match dash on newer cars, but is a lower rate and can be noisier."; -CM_ SG_ 761 UserBrakePressure2 "Similar to BRAKE_RELATED->UserBrakePressure"; -CM_ SG_ 1001 VehicleSpeed "Spinouts show here on 2wd. Speed derived from right front wheel (drive tire)"; -BA_DEF_ "UseGMParameterIDs" INT 0 0; -BA_DEF_ "ProtocolType" STRING ; -BA_DEF_ "BusType" STRING ; -BA_DEF_DEF_ "UseGMParameterIDs" 1; -BA_DEF_DEF_ "ProtocolType" "GMLAN"; -BA_DEF_DEF_ "BusType" ""; -BA_ "BusType" "CAN"; -BA_ "ProtocolType" "GMLAN"; -BA_ "UseGMParameterIDs" 0; -VAL_ 497 SystemPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; -VAL_ 497 SystemBackUpPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; -VAL_ 481 DistanceButton 1 "Active" 0 "Inactive" ; -VAL_ 481 LKAButton 1 "Active" 0 "Inactive" ; -VAL_ 481 ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; -VAL_ 481 DriveModeButton 1 "Active" 0 "Inactive" ; -VAL_ 452 CruiseState 4 "Standstill" 3 "Faulted" 2 "Standby" 1 "Active" 0 "Off" ; -VAL_ 309 PRNDL 3 "R" 2 "D" 1 "N" 0 "P" ; -VAL_ 309 ESPButton 1 "Active" 0 "Inactive" ; -VAL_ 384 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 842 RRWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; -VAL_ 842 RLWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; -VAL_ 880 ACCCruiseState 2 "Adaptive" 3 "Adaptive" 4 "Non-adaptive" 5 "Non-adaptive" ; -VAL_ 880 ACCLeadCar 1 "Present" 0 "Not Present" ; -VAL_ 880 ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; -VAL_ 880 ACCResumeButton 1 "Pressed" 0 "Depressed" ; -VAL_ 880 ACCCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 388 HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; -VAL_ 388 HandsOffSWlDetectionStatus 1 "Hands On" 0 "Hands Off" ; -VAL_ 388 LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; -VAL_ 489 BrakePedalPressed 1 "Pressed" 0 "Depressed" ; -VAL_ 715 GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; -VAL_ 715 GasRegenCmdActive 1 "Active" 0 "Inactive" ; -VAL_ 320 Intellibeam 1 "Active" 0 "Inactive" ; -VAL_ 320 HighBeamsActive 1 "Active" 0 "Inactive" ; -VAL_ 320 HighBeamsTemporary 1 "Active" 0 "Inactive" ; -VAL_ 501 PRNDL2 6 "L" 4 "D" 3 "N" 2 "R" 1 "P" 0 "Shifting"; -VAL_ 501 TransmissionState 11 "Shifting" 10 "Reverse" 9 "Forward" 8 "Disengaged"; -VAL_ 501 ManualMode 1 "Active" 0 "Inactive" diff --git a/opendbc_repo/opendbc/dbc/hongqi_hs5.dbc b/opendbc_repo/opendbc/dbc/hongqi_hs5.dbc deleted file mode 100644 index 76b41d873c..0000000000 --- a/opendbc_repo/opendbc/dbc/hongqi_hs5.dbc +++ /dev/null @@ -1,160 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 146 ECM_1: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ THROTTLE_1 : 8|12@1+ (1,0) [0|255] "" XXX - SG_ THROTTLE_2 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ THROTTLE_3 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ DRIVER_THROTTLE : 40|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 192 ABS_1: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX - SG_ FRONT_LEFT : 8|16@1+ (0.01,0) [0|65535] "km/h" XXX - SG_ FRONT_RIGHT : 24|16@1+ (0.01,0) [0|65535] "km/h" XXX - SG_ VEHICLE_SPEED : 40|16@1+ (0.01,0) [0|65535] "km/h" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 194 ABS_2: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX - SG_ REAR_LEFT : 8|16@1+ (0.01,0) [0|65535] "km/h" XXX - SG_ REAR_RIGHT : 24|16@1+ (0.01,0) [0|65535] "km/h" XXX - SG_ BRAKE_PRESSURE : 40|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 208 EPS_1: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX - SG_ STEER_ANGLE : 8|15@1+ (0.0225,0) [0|65535] "" XXX - SG_ STEER_ANGLE_DIRECTION : 23|1@1+ (1,0) [0|1] "direction" XXX - SG_ STEER_RATE : 24|15@1+ (0.0225,0) [0|65535] "" XXX - SG_ STEER_RATE_DIRECTION : 39|1@1+ (1,0) [0|1] "direction" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 336 EPS_2: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ EPS_TORQUE : 8|10@1- (1,0) [0|255] "" XXX - SG_ EPS_TORQUE_DIRECTION : 18|1@1+ (1,0) [0|1] "direction" XXX - SG_ UNKNOWN : 22|2@1+ (1,0) [0|3] "" XXX - SG_ LKAS_STATUS : 24|4@1+ (1,0) [0|15] "" XXX - SG_ DRIVER_INPUT_TORQUE : 32|8@1+ (1,0) [0|255] "" XXX - SG_ LKAS_TORQUE : 40|10@1+ (1,0) [0|1023] "" XXX - SG_ LKAS_TORQUE_DIRECTION : 50|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 272 ACC: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_1 : 8|12@1+ (1,0) [0|4095] "" XXX - SG_ UNKNOWN_2 : 20|4@1+ (1,0) [0|15] "" XXX - SG_ ACCELERATION : 24|12@1+ (1,-300) [0|255] "" XXX - SG_ STATUS : 36|4@1+ (1,0) [0|31] "x" XXX - SG_ UNKNOWN_3 : 46|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 274 LKAS: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ LKAS_TORQUE : 8|10@1+ (1,0) [0|2047] "x" XXX - SG_ LKAS_TORQUE_DIRECTION : 18|1@1+ (1,0) [0|1] "" XXX - SG_ LKAS_TORQUE_ACTIVE : 19|1@1+ (1,0) [0|1] "" XXX - SG_ UNKNOWN_ACTIVE_STATE : 26|1@1+ (1,0) [0|1] "" XXX - SG_ MAYBE_HUD_LANE_STATES : 28|2@1+ (1,0) [0|3] "" XXX - SG_ LKAS_ACTIVE : 32|1@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 148 MAYBE_ABS: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ UNKNOWN_1 : 8|16@1+ (1,0) [0|15] "x" XXX - SG_ UNKNOWN_2 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ BRAKE_PRESSED : 35|1@1+ (1,0) [0|1] "x" XXX - SG_ UNKNOWN_3 : 46|2@1+ (1,0) [0|3] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 304 ABS_3: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 15|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 23|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 31|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 47|8@1+ (1,0) [0|255] "" XXX - SG_ DRIVER_BRAKE_PRESSURE : 48|12@1+ (1,0) [0|65535] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 144 MAYBE_ENGINE: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 8|12@1+ (1,0) [0|255] "" XXX - SG_ MAYBE_RPM : 20|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 46|14@1+ (1,0) [0|4095] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 422 MAYBE_ACC_BUTTONS: 8 XXX - SG_ NEW_SIGNAL_1 : 18|1@0+ (1,0) [0|1] "" XXX - -BO_ 560 TURN_SIGNALS: 8 XXX - SG_ RIGHT_TURN_SIGNALING : 45|1@1+ (1,0) [0|1] "" XXX - SG_ LEFT_TURN_SIGNALING : 44|1@1+ (1,0) [0|1] "" XXX - SG_ RIGHT_TURN_BULB_3 : 21|1@1+ (1,0) [0|1] "" XXX - SG_ LEFT_TURN_BULB_3 : 20|1@1+ (1,0) [0|1] "" XXX - SG_ RIGHT_TURN_BULB_2 : 19|1@1+ (1,0) [0|1] "" XXX - SG_ LEFT_TURN_BULB_2 : 18|1@1+ (1,0) [0|1] "" XXX - SG_ LEFT_TURN_BULB_1 : 16|1@1+ (1,0) [0|1] "" XXX - SG_ RIGHT_TURN_BULB_1 : 17|1@1+ (1,0) [0|1] "" XXX - -BO_ 586 DOOR_FL: 8 XXX - SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX - -BO_ 588 DOOR_FR: 8 XXX - SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX - -BO_ 590 DOOR_RL: 8 XXX - SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX - -BO_ 591 DOOR_RR: 8 XXX - SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX - - - - -CM_ SG_ 274 UNKNOWN_ACTIVE_STATE "Triggers changes from 8 to 9 in EPS_2.LKAS_STATUS"; -CM_ SG_ 560 RIGHT_TURN_SIGNALING "Includes 2.5 second convenience lane change interval"; -CM_ SG_ 560 LEFT_TURN_SIGNALING "Includes 2.5 second convenience lane change interval"; -VAL_ 336 LKAS_STATUS 1 "INITIALIZING" 5 "READY" 8 "ACTIVE_1" 9 "ACTIVE_2" 13 "FAULT" ; -VAL_ 586 OPEN 0 "CLOSED" 1 "OPEN" ; -VAL_ 588 OPEN 0 "CLOSED" 1 "OPEN" ; -VAL_ 590 OPEN 0 "CLOSED" 1 "OPEN" ; -VAL_ 591 OPEN 0 "CLOSED" 1 "OPEN" ; diff --git a/opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc b/opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc deleted file mode 100644 index fc1e173907..0000000000 --- a/opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc +++ /dev/null @@ -1,1416 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: IAP ODS _4WD BCM HUD DATC MDPS AAF_Tester AEMC SMK _4WD EPB CUBIS MTS TMU EVP CGW TPMS LPI DI_BOX SPAS EMS LCA TCU IBOX FATC AFLS FPCM SCC AHLS AVM ABS SNV OPI PGS SAS AAF Dummy LDWS_LKAS LVR ESC PSB CLU ECS ACU REA - -BO_ 1532 ODS13: 5 ODS - SG_ CR_Ods_ID : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_Chksum_H : 8|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - SG_ CR_Ods_Chksum_L : 16|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - SG_ CR_Ods_RomID_H : 24|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - SG_ CR_Ods_RomID_L : 32|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - -BO_ 1531 ODS12: 8 ODS - SG_ CR_Ods_SerNum0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum3 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum4 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum5 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum6 : 48|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum7 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - -BO_ 1530 ODS11: 8 ODS - SG_ CF_Ods_PrcCmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy - SG_ CF_Ods_BtsFail : 3|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy - SG_ CF_Ods_AcuRcvSN : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_EolCal : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_PsFail : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_EcuFail : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_WgtStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_OccStat : 16|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CR_Wcs_ErrStat : 32|8@1+ (1.0,0.0) [0.0|63.0] "" ACU - SG_ CR_Wcs_ClassStat : 40|8@1+ (1.0,0.0) [0.0|4.0] "" ACU,BCM - -BO_ 1017 ECS12: 4 ECS - SG_ Height_FL : 0|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - SG_ Height_FR : 8|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - SG_ Height_RL : 16|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - SG_ Height_RR : 24|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - -BO_ 1268 SPAS12: 8 SPAS - SG_ CF_Spas_HMI_Stat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_Spas_Disp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS - SG_ CF_Spas_FIL_Ind : 10|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FIR_Ind : 13|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FOL_Ind : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FOR_Ind : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_VolDown : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_RIL_Ind : 24|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_RIR_Ind : 27|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FLS_Alarm : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_ROL_Ind : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_ROR_Ind : 35|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FCS_Alarm : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_FI_Ind : 40|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_RI_Ind : 43|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FRS_Alarm : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_FR_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Spas_RR_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Spas_BEEP_Alarm : 52|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Spas_StatAlarm : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Spas_RLS_Alarm : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_RCS_Alarm : 59|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_RRS_Alarm : 61|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1265 CLU11: 4 CLU - SG_ CF_Clu_CruiseSwState : 0|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,LDWS_LKAS,SCC - SG_ CF_Clu_CruiseSwMain : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,LDWS_LKAS,SCC - SG_ CF_Clu_SldMainSW : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Clu_ParityBit1 : 5|1@1+ (1.0,0.0) [0.0|1.0] "pulse count" EMS - SG_ CF_Clu_VanzDecimal : 6|2@1+ (0.125,0.0) [0.0|0.375] "" EMS - SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0.0) [0.0|255.5] "km/h or MPH" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC - SG_ CF_Clu_SPEED_UNIT : 17|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC - SG_ CF_Clu_DetentOut : 18|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,BCM,LCA,PGS,SPAS - SG_ CF_Clu_RheostatLevel : 19|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,BCM,LCA,PGS,SPAS - SG_ CF_Clu_CluInfo : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_AmpInfo : 25|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_AliveCnt1 : 28|4@1+ (1.0,0.0) [0.0|15.0] "" AHLS,EMS,EPB,LDWS_LKAS,MDPS,SCC - -BO_ 1492 TMU_GW_PE_01: 8 CLU - SG_ TMU_IVRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ TMU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - -BO_ 1491 HU_DATC_PE_00: 8 CLU - SG_ HU_VRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ HU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ BlowerNoiseControl : 4|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - -BO_ 1490 HU_DATC_E_02: 8 CLU - SG_ HU_DATC_RearOnOffSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ HU_DATC_ADSOnOffSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - -BO_ 1479 EMS21: 8 EMS - SG_ SCR_LEVEL_WARN_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ SCR_LEVEL_WARN : 1|3@1+ (1.0,0.0) [0.0|4.0] "" CLU - SG_ SCR_SYS_ERROR_WARN : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ SCR_SYSTEM_WARN_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ SCR_INDUCEMENT_EXIT_COND : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ SCR_UREA_LEVEL : 16|8@1+ (0.5,0.0) [0.0|100.0] "%" CLU - SG_ SCR_NO_REMAINING_RESTARTS : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ SCR_REMAINING_DISTANCE : 32|16@1+ (1.0,0.0) [0.0|25000.0] "km" CLU - -BO_ 1472 GW_Warning_PE: 8 BCM - SG_ Audio_VolumeDown : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Flh_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Fcnt_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Frh_Alarm : 52|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Rlh_Alarm : 56|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS - SG_ Pas_Spkr_Rcnt_Alarm : 58|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Rrh_Alarm : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS - -BO_ 1984 CAL_SAS11: 2 ESC - SG_ CCW : 0|4@1+ (1.0,0.0) [0.0|15.0] "" SAS - SG_ SAS_CID : 4|11@1+ (1.0,0.0) [0.0|2047.0] "" SAS - -BO_ 1456 CLU12: 4 CLU - SG_ CF_Clu_Odometer : 0|24@1+ (0.1,0.0) [0.0|1677721.4] "km" _4WD,AAF,BCM,CUBIS,EMS,EPB,IBOX,LDWS_LKAS,SCC,TPMS - -BO_ 688 SAS11: 5 MDPS - SG_ SAS_Angle : 0|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" _4WD,ACU,AFLS,AVM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU,_4WD,ACU,AFLS,AVM,BCM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU - SG_ SAS_Speed : 16|8@1+ (4.0,0.0) [0.0|1016.0] "" AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU,AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU - SG_ SAS_Stat : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ MsgCount : 32|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS - SG_ CheckSum : 36|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS - -BO_ 1441 ACU12: 8 ACU - SG_ CR_Acu_SN : 0|64@1+ (1.0,0.0) [0.0|0.0] "" ODS - -BO_ 1440 ACU11: 8 ACU - SG_ CF_Ods_SNRcv : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Ods_IDRcv : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Ods_RZReq : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Abg_DepInhEnt : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Abg_DepEnt : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_PasBkl_FltStat : 28|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB - SG_ CF_DriBkl_FltStat : 29|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB - SG_ CF_PasBkl_Stat : 30|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,ODS,PSB,TMU - SG_ CF_DriBkl_Stat : 31|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB - SG_ CF_SWL_Ind : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX - SG_ CF_Acu_FltStat : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX - SG_ CF_Acu_ExtOfSab : 36|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,CUBIS,IBOX - SG_ CF_Acu_Dtc : 40|16@1+ (1.0,0.0) [0.0|65535.0] "" CUBIS,IBOX - SG_ CF_Acu_NumOfFlt : 56|8@1+ (1.0,0.0) [0.0|255.0] "" CUBIS,IBOX - -BO_ 1437 AHLS11: 8 AHLS - SG_ CF_Ahls_WarnLamp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Ahls_WarnMsg : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1434 PSB11: 2 PSB - SG_ PSB_LH_FAIL : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ PSB_LH_TGL : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ PSB_LH_ACT : 3|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy - SG_ PSB_RH_FAIL : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ PSB_RH_TGL : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ PSB_RH_ACT : 11|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy - -BO_ 916 TCS13: 8 ESC - SG_ aBasis : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC - SG_ BrakeLight : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,SCC - SG_ DCEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ AliveCounterTCS : 13|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,SCC - SG_ ACCReqLim : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC - SG_ TQI_ACC : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS - SG_ ACCEL_REF_ACC : 32|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC - SG_ ACCEnable : 43|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC - SG_ DriverOverride : 45|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC - SG_ StandStill : 47|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ CheckSum_TCS3 : 48|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,SCC - SG_ ACC_EQUIP : 52|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ PBRAKE_ACT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ ACC_REQ : 54|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ DriverBraking : 55|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ CF_VSM_Coded : 56|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - SG_ CF_VSM_Avail : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,SCC - SG_ CF_VSM_Handshake : 59|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - SG_ CF_DriBkeStat : 60|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - SG_ CF_VSM_ConfSwi : 61|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ AEB_EQUIP : 63|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - -BO_ 1427 TPMS11: 6 BCM - SG_ TPMS_W_LAMP : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX - SG_ TREAD_W_LAMP : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX - SG_ POS_FL_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ POS_FR_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ POS_RL_W_LAMP : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ POS_RR_W_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ STATUS_TPMS : 8|3@1+ (1.0,0.0) [0.0|0.0] "" CLU - SG_ UNIT : 11|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ PRESSURE_FL : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ PRESSURE_FR : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ PRESSURE_RL : 32|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ PRESSURE_RR : 40|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - -BO_ 915 TCS12: 4 ESC - SG_ SA_COUNT : 0|16@1+ (2.0,-32768.0) [-32768.0|98302.0] "" _4WD,ACU,MDPS - SG_ SA_Z_COUNT : 16|15@1+ (2.0,-32768.0) [-32768.0|32766.0] "" _4WD,ACU,MDPS - SG_ SA_Z_FLAG : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,MDPS - -BO_ 1170 EMS19: 8 EMS - SG_ CF_Ems_BrkReq : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,TCU - SG_ CF_Ems_DnShftReq : 1|4@1+ (1.0,0.0) [0.0|14.0] "" IBOX,TCU - SG_ CF_Ems_RepModChk : 5|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX - SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,IBOX - SG_ CF_Ems_DecelReq : 8|12@1+ (0.0010,-4.094) [-4.094|0.0] "m/s^2" ESC,IBOX,TCU - SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0.0) [0.0|4094.0] "hPa" CLU,IBOX - SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40.0) [0.0|254.0] "deg" CLU,IBOX - SG_ DPF_LAMP_STAT : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX - SG_ BAT_LAMP_STAT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41.0) [-41.0|85.5] "deg" AAF,IBOX - SG_ CF_Ems_OPSFail : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU - SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU - -BO_ 1425 AFLS11: 2 AFLS - SG_ AFLS_STAT : 1|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Afls_TrfChgStat : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Afls_LedHLStat : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 912 SPAS11: 7 SPAS - SG_ CF_Spas_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,MDPS - SG_ CF_Spas_TestMode : 4|2@1+ (1.0,0.0) [0.0|3.0] "" MDPS - SG_ CR_Spas_StrAngCmd : 8|16@1- (0.1,0.0) [-3276.8|3276.7] "" MDPS - SG_ CF_Spas_BeepAlarm : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Spas_Mode_Seq : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_AliveCnt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Spas_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Spas_PasVol : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CGW,CLU - -BO_ 1168 EPB11: 7 EPB - SG_ EPB_I_LAMP : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU,CUBIS,ESC,IBOX - SG_ EPB_F_LAMP : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,ESC,IBOX - SG_ EPB_ALARM : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC - SG_ EPB_CLU : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC - SG_ EPB_SWITCH : 16|2@1+ (1.0,0.0) [0.0|3.0] "" ESC,SCC - SG_ EPB_RBL : 18|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,ESC - SG_ EPB_STATUS : 19|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC,SCC,TCU - SG_ EPB_FRC_ERR : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,SCC,TCU - SG_ EPB_DBF_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ ESP_ACK : 25|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ EPB_DBF_REQ : 26|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ EPB_FAIL : 29|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,SCC - SG_ EPB_FORCE : 32|12@1+ (1.0,-1000.0) [-1000.0|3000.0] "" ESC - SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0.0) [0.0|2.54] "g" ESC - -BO_ 399 EMS_H12: 8 EMS - SG_ R_TqAcnApvC : 0|8@1+ (0.2,0.0) [0.0|51.0] "Nm" DATC,IBOX - SG_ R_PAcnC : 8|8@1+ (125.0,0.0) [0.0|31875.0] "hPa" DATC,IBOX - SG_ TQI_B : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ABS,ESC,IBOX - SG_ SLD_VS : 24|8@1+ (1.0,0.0) [0.0|255.0] "km/h" CLU,IBOX - SG_ CF_CdaStat : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AEMC,IBOX,TCU - SG_ CF_Ems_IsgStat : 35|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,MDPS,SMK,TCU - SG_ CF_Ems_OilChg : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_EtcLimpMod : 39|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ R_NEngIdlTgC : 40|8@1+ (10.0,0.0) [0.0|2550.0] "rpm" DATC,IBOX,TCU - SG_ CF_Ems_UpTarGr : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_DownTarGr : 49|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_DesCurGr : 50|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX - SG_ CF_Ems_SldAct : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_SldPosAct : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_HPresStat : 56|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ CF_Ems_IsgBuz : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_IdlStpFCO : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_FCopen : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_ActEcoAct : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU - SG_ CF_Ems_EngRunNorm : 61|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,IBOX,TCU - SG_ CF_Ems_IsgStat2 : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX,TCU - -BO_ 1419 LCA11: 8 LCA - SG_ CF_Lca_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Rcta_Stat : 4|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Lca_IndLeft : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Rcw_Stat : 10|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_RCW_Warning : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Lca_IndRight : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Lca_SndWan_Stat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_FR_SndWan : 20|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_FL_SndWan : 21|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_RR_SndWan : 22|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_RL_SndWan : 23|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_Lca_IndBriLeft : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_Lca_IndBriRight : 32|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_RCTA_IndBriLeft : 40|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_RCTA_IndBriRight : 48|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_RCTA_IndLeft : 56|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_RCTA_IndRight : 58|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_SndWarnForClu : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 906 ABS11: 8 ABS - SG_ ABS_DEF : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EMS,SPAS,TCU - SG_ EBD_DEF : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,SPAS,TCU - SG_ ABS_ACT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EPB,SPAS,TCU - SG_ ABS_W_LAMP : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,MTS,TMU - SG_ EBD_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ ABS_DIAG : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ ESS_STAT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS - -BO_ 903 WHL_PUL11: 6 ABS - SG_ WHL_PUL_FL : 0|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_PUL_FR : 8|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_PUL_RL : 16|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_PUL_RR : 24|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_DIR_FL : 32|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_DIR_FR : 34|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_DIR_RL : 36|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_DIR_RR : 38|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_PUL_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,SPAS,TPMS,EPB,LCA,LDWS_LKAS,SPAS,TPMS - -BO_ 1415 TMU11: 8 IBOX - SG_ CF_Tmu_VehSld : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Tmu_VehImmo : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Tmu_ReqRepCnd : 2|2@1+ (1.0,0.0) [0.0|3.0] "" EMS - SG_ CF_Tmu_AirconCtr : 4|1@1+ (1.0,0.0) [0.0|1.0] "" DATC - SG_ CF_Tmu_TempMd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" DATC - SG_ CF_Tmu_TempSet : 6|16@1+ (1.0,0.0) [0.0|20.0] "" DATC - SG_ CF_Tmu_DefrostCtr : 22|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,FATC - SG_ CF_Tmu_AliveCnt1 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" EMS - -BO_ 902 WHL_SPD11: 8 ABS - SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,ACU,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,BCM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,BCM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_AliveCounter_LSB : 14|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ WHL_SPD_AliveCounter_MSB : 30|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ WHL_SPD_Checksum_LSB : 46|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ WHL_SPD_Checksum_MSB : 62|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - -BO_ 1414 EVP11: 3 EVP - SG_ CF_Evp_Stat : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 1412 AAF11: 8 AAF - SG_ CF_Aaf_ActFlapStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester - SG_ CF_Aaf_ModeStatus : 2|3@1+ (1.0,0.0) [0.0|7.0] "" AAF_Tester - SG_ CF_Aaf_WrnLamp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Aaf_ErrStatus : 6|10@1+ (1.0,0.0) [0.0|1023.0] "" AAF_Tester,EMS - SG_ CF_Aaf_OpenRqSysAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester - SG_ CF_Aaf_PStatus : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" AAF_Tester - SG_ CF_Aaf_OpenRqSysSol : 32|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester - SG_ CF_Aaf_SolFlapStatus : 40|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester - SG_ CF_Aaf_MilOnReq : 42|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 900 EMS17: 8 EMS - SG_ CF_Ems_PkpCurMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_HolCurMSV : 8|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_InjVBnkAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_InjVActSet : 24|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_DiagFulHDEV : 32|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CF_Ems_SwiOffIC1 : 33|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CF_Ems_SwiOffIC2 : 34|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CF_Ems_DiagReqHDEV : 38|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CR_Ems_DutyCycMSV : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" DI_BOX - SG_ CR_Ems_BatVolRly : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" DI_BOX - -BO_ 387 REA11: 8 REA - SG_ CF_EndBst_PwmDuH : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PwmDuL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PwmFqOutRng : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_HbriOverCur : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_HbriOverTemp : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PosSnsKOR : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PosSnsOSOR : 7|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_EepFlt : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_RomFlt : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_RamFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_CanFlt : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_AgH : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_AgL : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_ORVol : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CR_EndBst_ActPos : 16|16@1+ (0.117,0.0) [1.989|118.053] "" EMS - SG_ CR_EndBst_DemPos : 32|16@1+ (0.117,0.0) [0.0|119.691] "" EMS - SG_ CR_EndBst_HbriPwr : 48|16@1+ (0.045,0.0) [0.0|99.99] "%" EMS - -BO_ 1411 CUBIS11: 8 CUBIS - SG_ CF_Cubis_HUDisp : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - -BO_ 899 FATC11: 8 DATC - SG_ CR_Fatc_TqAcnOut : 0|8@1+ (0.2,0.0) [0.0|50.8] "Nm" EMS,IBOX - SG_ CF_Fatc_AcnRqSwi : 8|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,EMS,IBOX - SG_ CF_Fatc_AcnCltEnRq : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_EcvFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_BlwrOn : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_FATC_Iden : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Fatc_BlwrMax : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX - SG_ CF_Fatc_EngStartReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_IsgStopReq : 16|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_CtrInf : 17|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX - SG_ CF_Fatc_MsgCnt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX - SG_ CR_Fatc_OutTemp : 24|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU,EMS,IBOX,SPAS,TCU,TPMS - SG_ CR_Fatc_OutTempSns : 32|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" AAF,AHLS,CLU,EMS,IBOX,SPAS,TCU - SG_ CF_Fatc_Compload : 40|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX - SG_ CF_Fatc_ActiveEco : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Fatc_AutoActivation : 44|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX - SG_ CF_Fatc_DefSw : 45|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,IBOX - SG_ CF_Fatc_PtcRlyStat : 46|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_ChkSum : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,IBOX,SPAS - -BO_ 129 EMS_DCT12: 8 EMS - SG_ CR_Ems_SoakTimeExt : 0|6@1+ (5.0,0.0) [0.0|315.0] "Min" TCU - SG_ BRAKE_ACT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" TCU - SG_ CF_Ems_EngOperStat : 8|8@1+ (1.0,0.0) [0.0|255.0] "" TCU - SG_ CR_Ems_IndAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" TCU - SG_ CF_Ems_Alive2 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Ems_ChkSum2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - -BO_ 897 MDPS11: 8 MDPS - SG_ CF_Mdps_WLmp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,EMS,IBOX,SPAS - SG_ CF_Mdps_Flex : 2|3@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS - SG_ CF_Mdps_FlexDisp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Mdps_Stat : 7|4@1+ (1.0,0.0) [0.0|15.0] "" SPAS - SG_ CR_Mdps_DrvTq : 11|12@1+ (0.01,-20.48) [-20.48|20.46] "" SPAS - SG_ CF_Mdps_ALTRequest : 23|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CR_Mdps_StrAng : 24|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" SPAS - SG_ CF_Mdps_AliveCnt : 40|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS - SG_ CF_Mdps_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS - SG_ CF_Mdps_SPAS_FUNC : 57|1@1+ (1.0,0.0) [0.0|1.0] "flag" SPAS - SG_ CF_Mdps_LKAS_FUNC : 58|1@1+ (1.0,0.0) [0.0|1.0] "flag" LDWS_LKAS - SG_ CF_Mdps_CurrMode : 59|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Mdps_Type : 61|2@1+ (1.0,0.0) [0.0|2.0] "" LDWS_LKAS,SPAS - -BO_ 896 DI_BOX13: 8 DI_BOX - SG_ CF_DiBox_HPreInjVConfStat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVStat1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVStat2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVPkp : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVBpt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_ErrRegFrtMSV : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_ErrRegSedMSV : 48|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SPIErrSedMSV : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_SPIErrFrtMSV : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_IDErrSedMSV : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_IDErrFrtMSV : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_IniStatMSV : 60|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 640 EMS13: 8 EMS - SG_ LV_FUEL_TYPE_ECU : 0|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,LPI,SMK - SG_ LV_BFS_CFIRM : 1|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_CRASH : 2|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_VB_OFF_ACT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_GSL_MAP M : 4|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_ENG_TURN : 5|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ ERR_FUEL : 8|8@1+ (1.0,0.0) [0.0|255.0] "" LPI - SG_ EOS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" LPI - SG_ TCO : 24|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI - SG_ N_32 : 32|8@1+ (32.0,0.0) [0.0|8160.0] "rpm" LPI - SG_ MAF : 40|8@1+ (5.447,0.0) [0.0|1388.985] "mg/TDC" LPI - SG_ TIA : 48|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI - SG_ MAP m1 : 56|8@1+ (0.47058,0.0) [0.0|119.9979] "kPa" LPI - SG_ AMP m0 : 56|8@1+ (21.22,0.0) [0.0|5411.1] "hPa" LPI - -BO_ 128 EMS_DCT11: 8 EMS - SG_ PV_AV_CAN : 0|8@1+ (0.3906,0.0) [0.0|99.603] "%" TCU - SG_ TQ_STND : 8|6@1+ (10.0,0.0) [0.0|630.0] "Nm" TCU - SG_ F_N_ENG : 14|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ F_SUB_TQI : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" TCU - SG_ TQI_ACOR : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" IBOX,TCU - SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" TCU - SG_ TQI : 48|8@1+ (0.390625,0.0) [0.0|99.609375] "%" TCU - SG_ CF_Ems_Alive : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Ems_ChkSum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - -BO_ 1407 HU_MON_PE_01: 8 CLU - SG_ HU_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" AVM,PGS - -BO_ 127 CGW5: 8 BCM - SG_ C_StopLampLhOpenSts : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_StopLampRhOpenSts : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HMSLOpenSts : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampLowLhOpenSts : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampLowRhOpenSts : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampHighLhOpenSts : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampHighRhOpenSts : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_DRLLampLhOpenSts : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_DRLLampRhOpenSts : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearFOGLhOpenSts : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearFOGRhOpenSts : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontFOGLhOpenSts : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontFOGRhOpenSts : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearEXTTailLhOpenSts : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearEXTTailRhOpenSts : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontEXTTailLhOpenSts : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontEXTTailRhOpenSts : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearTSIGLhOpenSts : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearTSIGRhOpenSts : 18|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontTSIGLhOpenSts : 19|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontTSIGRhOpenSts : 20|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_SBendingLhOpenSts : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_SBendingRhOpenSts : 22|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_LicensePlateLhOpenSts : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_LicensePlateRhOpenSts : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 1151 ESP11: 6 ESC - SG_ AVH_STAT : 0|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,TCU - SG_ LDM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EPB,TCU - SG_ REQ_EPB_ACT : 3|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,TCU - SG_ REQ_EPB_STAT : 5|1@1+ (1.0,0.0) [0.0|1.0] "" EPB - SG_ ECD_ACT : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EPB - SG_ _4WD_LIM_REQ : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS - SG_ ROL_CNT_ESP : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,TCU - SG_ _4WD_TQC_LIM : 16|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" _4WD,EMS - SG_ _4WD_CLU_LIM : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" _4WD,EMS - SG_ _4WD_OPEN : 40|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS - SG_ _4WD_LIM_MODE : 42|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD - -BO_ 1397 HU_AVM_E_00: 8 CLU - SG_ HU_AVM_Cal_Cmd : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_Cal_Method : 4|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - SG_ HU_AVM_Save_Controlpoint : 6|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - SG_ HU_AVM_PT_X : 8|12@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_RearViewPointOpt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_PT_Y : 24|12@1+ (1.0,0.0) [0.0|4095.0] "" AVM,PGS - SG_ HU_AVM_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_SelectedMenu : 40|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS - SG_ HU_AVM_CameraOff : 45|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - SG_ HU_AVM_Option : 48|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_CrossLineMove_Cmd : 52|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_RearView_Option : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_FrontView_Option : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - -BO_ 1395 HU_AVM_E_01: 8 CLU - SG_ HU_PGSSelectedMenu : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_PGSOption : 8|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS - SG_ HU_AVM_ParkingAssistMenu : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_ParkingAssistSB : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - -BO_ 1393 OPI11: 5 OPI - SG_ CR_Opi_Spd_Rpm : 0|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" TCU - SG_ CF_Opi_Over_Temp : 8|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Opi_Over_Cur : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU - SG_ CF_Opi_Over_Vol : 10|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Opi_Hall_Fail : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU - SG_ CF_Opi_Flt : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU - SG_ CF_Opi_Motor_Dir : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Opi_Romver : 16|8@1+ (1.0,0.0) [0.0|255.0] "" TCU - SG_ CF_Opi_PWM_Rate : 24|12@1+ (1.0,0.0) [0.0|100.0] "%" TCU - -BO_ 625 LPI11: 8 LPI - SG_ FUP_LPG_MMV : 0|8@1+ (128.0,0.0) [0.0|32640.0] "hPa" EMS - SG_ LV_FUEL_TYPE_BOX : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_BFS_IN_PROGRESS : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_GAS_OK : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_FUP_ENA_THD : 11|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,EMS,SMK - SG_ LPI_OBD : 12|4@1+ (1.0,0.0) [0.0|15.0] "" EMS - SG_ ERR_GAS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ FAC_TI_GAS_COR : 24|16@1+ (3.05E-5,0.0) [0.0|1.9988175] "" EMS - SG_ FTL_AFU : 40|8@1+ (0.392,0.0) [0.0|99.96] "%" EMS - SG_ BFS_CYL : 48|8@1+ (1.0,0.0) [0.0|6.0] "Cyl Nr." EMS - SG_ LV_PRE_CDN_LEAK : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_CONF_INJECTION_DELAY : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_LPG_SW_DRIVER_REQ : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 356 VSM11: 4 ESC - SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" MDPS - SG_ CF_Esc_Act : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,MDPS - SG_ CF_Esc_CtrMode : 13|3@1+ (1.0,0.0) [0.0|7.0] "" MDPS - SG_ CF_Esc_Def : 16|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Esc_AliveCnt : 17|4@1+ (1.0,0.0) [0.0|15.0] "" LDWS_LKAS,MDPS - SG_ CF_Esc_Chksum : 24|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,MDPS - -BO_ 1379 PGS_HU_PE_01: 8 PGS - SG_ PGS_State : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ PGS_ParkGuideState : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ PGS_Option : 16|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ PGS_Version : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU - -BO_ 354 TCU_DCT13: 3 TCU - SG_ Clutch_Driving_Tq : 0|10@1+ (1.0,-512.0) [0.0|0.0] "Nm" ESC - SG_ Cluster_Engine_RPM : 10|13@1+ (0.9766,0.0) [0.0|0.0] "" CLU - SG_ Cluster_Engine_RPM_Flag : 23|1@1+ (1.0,0.0) [0.0|0.0] "" CLU - -BO_ 1378 HUD11: 4 HUD - SG_ CF_Hud_HeightStaus : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ CF_Hud_PBackStatus : 6|2@1+ (1.0,0.0) [0.0|0.0] "" BCM,CLU - SG_ CF_Hud_Brightness : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - -BO_ 608 EMS16: 8 EMS - SG_ TQI_MIN : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU - SG_ TQI : 8|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU - SG_ TQI_TARGET : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EPB,ESC,IBOX,TCU - SG_ GLOW_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,IBOX,SMK - SG_ CRUISE_LAMP_M : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU - SG_ CRUISE_LAMP_S : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU - SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ ENG_STAT : 28|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,AHLS,AVM,BCM,CLU,EPB,ESC,EVP,FPCM,IBOX,LCA,LDWS_LKAS,MDPS,SCC,SMK,TCU - SG_ SOAK_TIME_ERROR : 31|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EPB,IBOX,TCU - SG_ SOAK_TIME : 32|8@1+ (1.0,0.0) [0.0|255.0] "Min" _4WD,DATC,EPB,IBOX,TCU - SG_ TQI_MAX : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU - SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [-35.625|60.0] "" IBOX,TCU - SG_ Checksum : 56|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,IBOX,LDWS_LKAS,MDPS,SCC - SG_ AliveCounter : 60|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,LDWS_LKAS,MDPS,SCC - SG_ CF_Ems_AclAct : 62|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,SCC - -BO_ 1371 AVM_HU_PE_00: 8 AVM - SG_ AVM_View : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ AVM_ParkingAssist_BtnSts : 5|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ AVM_Display_Message : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ AVM_Popup_Msg : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_Ready : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_ParkingAssist_Step : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_FrontBtn_Type : 28|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_Option : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_HU_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_HU_RearView_Option : 40|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_HU_FrontView_Option : 44|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_Version : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU - -BO_ 1370 HU_AVM_PE_00: 8 CLU - SG_ HU_AVM_Status : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - -BO_ 1369 CGW4: 8 BCM - SG_ CF_Gway_MemoryP1Cmd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_MemoryP2Cmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBackP1Cmd : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBackP2Cmd : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_StrgWhlHeatedState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBackStopCmd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD - SG_ CF_Gway_StaticBendLhAct : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_StaticBendRhAct : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_DrvWdwStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_RLWdwState : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_RRWdwState : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_AstWdwStat : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_MemoryEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBACKStopCmd : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBACKStop : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD - SG_ CF_Gway_IMSBuzzer : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_DrvSeatBeltInd : 36|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_AstSeatBeltInd : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RCSeatBeltInd : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RLSeatBeltInd : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RRSeatBeltInd : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RrWiperHighSw : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_RrWiperLowSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 1367 EngFrzFrm12: 8 EMS - SG_ PID_06h : 0|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_07h : 8|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_08h : 16|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_09h : 24|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_0Bh : 32|8@1+ (1.0,0.0) [0.0|255.0] "kPa" AAF,IBOX,TCU - SG_ PID_23h : 40|16@1+ (10.0,0.0) [0.0|655350.0] "kPa" AAF,IBOX,TCU - -BO_ 1366 EngFrzFrm11: 8 EMS - SG_ PID_04h : 0|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU - SG_ PID_05h : 8|8@1+ (1.0,-40.0) [-40.0|215.0] "deg" AAF,TCU - SG_ PID_0Ch : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" AAF,TCU - SG_ PID_0Dh : 32|8@1+ (1.0,0.0) [0.0|255.0] "km/h" AAF,TCU - SG_ PID_11h : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU - SG_ PID_03h : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" AAF,TCU - -BO_ 1365 FPCM11: 8 FPCM - SG_ CR_Fpcm_LPActPre : 0|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" EMS - SG_ CF_Fpcm_LPPumpOverCur : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrHi : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrDisc : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrShort : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_LPPumpDiscShort : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_LP_System_Error : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrSigErr : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_LPCtrCirFlt : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 852 LVR11: 7 LVR - SG_ CF_Lvr_GearInf : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,TCU - SG_ CF_Lvr_PRelStat : 4|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,SMK,TCU - SG_ CF_Lvr_BkeAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Lvr_NFnStat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Lvr_PosInf : 8|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_PosCpl : 12|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_UlkButStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" TCU - SG_ CF_Lvr_PNStat : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lvr_ShtLkStat : 24|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_ShfErrInf : 28|20@1+ (1.0,0.0) [0.0|8191.0] "" CLU,TCU - SG_ CF_Lvr_AC : 48|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_CS : 52|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - -BO_ 1363 CGW2: 8 BCM - SG_ CF_Gway_GwayDiagState : 0|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_DDMDiagState : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SCMDiagState : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_PSMDiagState : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SJBDiagState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_IPMDiagState : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_LDMFail : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS,LDWS_LKAS - SG_ CF_Gway_CLUSwGuiCtrl : 10|3@1+ (1.0,0.0) [0.0|63.0] "" CLU,Dummy - SG_ CF_Gway_CLUSwGroup : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_CLUSwMode : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_CLUSwEnter : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_AutoLightValue : 16|1@1+ (1.0,0.0) [0.0|1.0] "" LCA,LCA - SG_ CF_Gway_BrakeFluidSw : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_DrvSeatBeltInd : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_AvTail : 20|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,SNV,SNV - SG_ CF_Gway_RearFogAct : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ExtTailAct : 22|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,CLU,LCA,PGS,SPAS,AVM,LCA,PGS,SPAS - SG_ CF_Gway_RRDrSw : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_RLDrSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_IntTailAct : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_CountryCfg : 26|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,Dummy - SG_ CF_Gway_WiperParkPosition : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,EMS,LDWS_LKAS,AFLS,EMS,LDWS_LKAS - SG_ CF_Gway_HLLowLHFail : 33|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV - SG_ CF_Gway_HLLowRHFail : 34|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV - SG_ CF_Gway_ESCLFailWarn : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ESCLNotLockedWarn : 36|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ESCLNotUnlockWarn : 37|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_IDoutWarn : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ImmoLp : 40|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_BCMRKEID : 41|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - SG_ CF_Gway_VehicleNotPWarn : 44|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_DeactivationWarn : 45|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_KeyBATDischargeWarn : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SSBWarn : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SMKFobID : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - SG_ CF_Gway_SMKRKECmd : 51|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - SG_ CF_Gway_AutoLightOption : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_SJBDeliveryMode : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_KeyoutLp : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SMKDispWarn : 57|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,Dummy - SG_ CF_Gway_WngBuz : 61|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - -BO_ 339 TCS11: 8 ESC - SG_ TCS_REQ : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,TCU - SG_ MSR_C_REQ : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,SCC,TCU - SG_ TCS_PAS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,SCC,SPAS,TCU - SG_ TCS_GSC : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,TCU - SG_ CF_Esc_LimoInfo : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,SCC - SG_ ABS_DIAG : 6|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB - SG_ ABS_DEF : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,SCC,SPAS,TCU - SG_ TCS_DEF : 8|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU - SG_ TCS_CTL : 9|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU - SG_ ABS_ACT : 10|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU - SG_ EBD_DEF : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SPAS,TCU - SG_ ESP_PAS : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU,EMS,EPB,LDWS_LKAS,SCC,TCU - SG_ ESP_DEF : 13|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,TCU - SG_ ESP_CTL : 14|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU - SG_ TCS_MFRN : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,TCU - SG_ DBC_CTL : 16|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB - SG_ DBC_PAS : 17|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB - SG_ DBC_DEF : 18|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB - SG_ HAC_CTL : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU - SG_ HAC_PAS : 20|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU - SG_ HAC_DEF : 21|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU - SG_ ESS_STAT : 22|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS,EPB - SG_ TQI_TCS : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU - SG_ TQI_MSR : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU - SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU - SG_ CF_Esc_BrkCtl : 48|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ BLA_CTL : 49|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CGW,CLU - SG_ AliveCounter_TCS1 : 52|4@1+ (1.0,0.0) [0.0|14.0] "" EMS,EPB,LDWS_LKAS - SG_ CheckSum_TCS1 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,EPB,LDWS_LKAS - -BO_ 1362 SNV11: 4 SNV - SG_ CF_SNV_DisplayControl : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD - SG_ CF_Snv_BeepWarning : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD - SG_ CF_Snv_WarningMessage : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,HUD - SG_ CF_Snv_DetectionEnable : 7|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,HUD - SG_ CF_Snv_PedestrianDetect : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD - SG_ CF_Snv_IRLampControl : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD - -BO_ 593 MDPS12: 8 MDPS - SG_ CR_Mdps_StrColTq : 0|11@1+ (0.0078125,-8.0) [-8.0|7.9921875] "Nm" LDWS_LKAS - SG_ CF_Mdps_Def : 11|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ CF_Mdps_ToiUnavail : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_ToiActive : 13|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_ToiFlt : 14|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_FailStat : 15|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_MsgCount2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS - SG_ CF_Mdps_Chksum2 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS - SG_ CF_Mdps_SErr : 37|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ CR_Mdps_StrTq : 40|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" ESC - SG_ CR_Mdps_OutTq : 52|12@1+ (0.1,-204.8) [-204.8|204.7] "" ESC,LDWS_LKAS - -BO_ 1360 IAP11: 3 IAP - SG_ CF_Iap_EcoPmodSwi : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Iap_EcoPmodAct : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Iap_ReqWarn : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1356 TCU_DCT14: 8 TCU - SG_ Vehicle_Stop_Time : 0|5@1+ (1.0,0.0) [0.0|0.0] "" CLU - SG_ HILL_HOLD_WARNING : 5|1@1+ (1.0,0.0) [0.0|0.0] "" CLU - -BO_ 1353 BAT11: 8 EMS - SG_ BAT_SNSR_I : 0|16@1+ (0.01,-327.0) [-327.0|328.0] "A" CGW,CUBIS,IBOX,TMU - SG_ BAT_SOC : 16|8@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_V : 24|14@1+ (0.0010,6.0) [6.0|18.0] "V" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_Temp : 38|9@1- (0.5,-40.0) [-40.0|125.0] "deg" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_State : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU - SG_ BAT_SOH : 48|7@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_Invalid : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU - SG_ BAT_SOF : 56|7@1+ (0.1,0.0) [0.0|12.0] "V" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_Error : 63|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU - -BO_ 1351 EMS15: 8 EMS - SG_ ECGPOvrd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,SCC - SG_ QECACC : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ ECFail : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ SwitchOffCondExt : 3|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ BLECFail : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ CF_Ems_IsaAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ FA_PV_CAN : 8|8@1+ (0.3906,0.0) [0.0|99.2] "%" IBOX,LDWS_LKAS,TCU - SG_ IntAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,ECS,EPB,IBOX,TCU - SG_ STATE_DC_OBD : 24|7@1+ (1.0,0.0) [0.0|127.0] "" IBOX,TCU - SG_ INH_DC_OBD : 31|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ CTR_IG_CYC_OBD : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" ACU,IBOX,TCU - SG_ CTR_CDN_OBD : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" IBOX,TCU - -BO_ 1350 DI_BOX12: 8 DI_BOX - SG_ CF_DiBox_FrtInjVDiagReg0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_FrtInjVDiagReg1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_FrtInjVDiagReg2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SedInjVDiagReg0 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SedInjVDiagReg1 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SedInjVDiagReg2 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CR_DiBox_BatVol : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" EMS - SG_ CF_DiBox_SedInjVChg : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_FrtInjVChg : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_SedInjVErrSPI : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_FrtInjVErrSPI : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 1349 EMS14: 8 EMS - SG_ IMMO_LAMP_STAT : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ L_MIL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX - SG_ IM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ AMP_CAN : 3|5@1+ (10.731613,458.98) [458.98|791.660003] "mmHg" CLU,IBOX,TCU,TPMS - SG_ BAT_Alt_FR_Duty : 8|8@1+ (0.4,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU - SG_ VB : 24|8@1+ (0.1015625,0.0) [0.0|25.8984375] "V" CLU,CUBIS,DATC,EPB,FPCM,IBOX - SG_ EMS_VS : 32|12@1+ (0.0625,0.0) [0.0|255.875] "km/h" CLU - SG_ TEMP_FUEL : 56|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" FPCM - -BO_ 68 DATC11: 8 DATC - SG_ CF_Datc_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_Datc_VerMaj : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_Datc_VerMin : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CR_Datc_OutTempC : 24|8@1+ (0.5,-41.0) [-41.0|86.5] "deg" CLU,FPCM - SG_ CR_Datc_OutTempF : 32|8@1+ (1.0,-42.0) [-42.0|213.0] "deg" CLU - SG_ CF_Datc_IncarTemp : 40|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU - -BO_ 67 DATC13: 8 DATC - SG_ CF_Datc_TempDispUnit : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX - SG_ CF_Datc_ModDisp : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_IonClean : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_ChgReqDisp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_IntakeDisp : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_AutoDisp : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_FrDefLed : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX - SG_ CF_Datc_AutoDefogBlink : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_ClmScanDisp : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_AqsDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_AcDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_OpSts : 25|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Mtc_MaxAcDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_DualDisp : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_PwrInf : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_RearManual : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearAutoDisp : 40|2@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Datc_RearOffDisp : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearClimateScnDisp : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearChgReqDisp : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearModDisp : 48|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_RearBlwDisp : 52|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_PSModDisp : 56|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_FrontBlwDisp : 60|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX - -BO_ 66 DATC12: 8 DATC - SG_ CR_Datc_DrTempDispC : 0|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX - SG_ CR_Datc_DrTempDispF : 8|8@1+ (1.0,56.0) [58.0|90.0] "" CLU,IBOX - SG_ CR_Datc_PsTempDispC : 16|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX - SG_ CR_Datc_PsTempDispF : 24|8@1+ (1.0,56.0) [58.0|90.0] "" CLU,IBOX - SG_ CR_Datc_RearDrTempDispC : 40|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU - SG_ CR_Datc_RearDrTempDispF : 48|8@1+ (1.0,58.0) [58.0|90.0] "" CLU - SG_ CF_Datc_CO2_Warning : 56|8@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1345 CGW1: 8 BCM - SG_ CF_Gway_IGNSw : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC - SG_ CF_Gway_RKECmd : 3|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX - SG_ CF_Gway_DrvKeyLockSw : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX - SG_ CF_Gway_DrvKeyUnlockSw : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX - SG_ CF_Gway_DrvDrSw : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU - SG_ CF_Gway_DrvSeatBeltSw : 10|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,PSB,TCU,EMS,EPB,ESC,IBOX,PSB,TCU - SG_ CF_Gway_TrunkTgSw : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,ECS,EMS,EPB,ESC,IBOX - SG_ CF_Gway_AstSeatBeltSw : 14|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,PSB,IBOX,PSB - SG_ CF_Gway_SMKOption : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,EMS,IBOX,SMK - SG_ CF_Gway_HoodSw : 17|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,EPB,ESC,IBOX,EMS,EPB,ESC,IBOX - SG_ CF_Gway_TurnSigLh : 19|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC - SG_ CF_Gway_WiperIntT : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperIntSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperLowSw : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperHighSw : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperAutoSw : 27|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_RainSnsState : 28|3@1+ (1.0,0.0) [0.0|7.0] "" AFLS,EMS,IBOX,LDWS_LKAS,AFLS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_HeadLampLow : 31|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,SNV,AFLS,EMS,IBOX,LDWS_LKAS,SNV - SG_ CF_Gway_HeadLampHigh : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,AFLS,EMS,IBOX,LDWS_LKAS - SG_ CF_Gway_HazardSw : 33|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS,ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS - SG_ CF_Gway_AstDrSw : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,IBOX - SG_ CF_Gway_DefoggerRly : 36|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX - SG_ CF_Gway_ALightStat : 37|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_LightSwState : 38|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_Frt_Fog_Act : 40|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_TSigRHSw : 41|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_TSigLHSw : 42|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_DriveTypeOption : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_StarterRlyState : 44|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX,SMK - SG_ CF_Gway_PassiveAccessLock : 45|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK - SG_ CF_Gway_WiperMistSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS - SG_ CF_Gway_PassiveAccessUnlock : 48|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK - SG_ CF_Gway_RrSunRoofOpenState : 50|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX - SG_ CF_Gway_PassingSW : 51|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_HBAControlMode : 52|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_HLpHighSw : 53|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_InhibitRMT : 54|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,MDPS,PGS,SCC,SPAS,TPMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,PGS,SCC,SPAS,TPMS - SG_ CF_Gway_RainSnsOption : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_SunRoofOpenState : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX,DATC,IBOX - SG_ CF_Gway_Ign1 : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_Ign2 : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_ParkBrakeSw : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IBOX,SCC,ESC,IBOX,SCC - SG_ CF_Gway_TurnSigRh : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC - -BO_ 64 DATC14: 8 DATC - SG_ CF_Datc_AqsLevelOut : 0|4@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_DiagMode : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CR_Datc_SelfDiagCode : 8|8@1+ (1.0,-1.0) [0.0|254.0] "" CLU - SG_ DATC_SyncDisp : 16|4@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_OffDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_SmartVentDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_SmartVentOnOffStatus : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_AutoDefogSysOff_Disp : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_ADSDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 832 LKAS11: 8 LDWS_LKAS - SG_ CF_Lkas_LdwsSysState : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX,PSB - SG_ CF_Lkas_SysWarning : 6|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Lkas_LdwsLHWarning : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB - SG_ CF_Lkas_LdwsRHWarning : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB - SG_ CF_Lkas_HbaLamp : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Lkas_FcwBasReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC - SG_ CR_Lkas_StrToqReq : 16|11@1+ (0.0078125,-8.0) [-8.0|8.0] "Nm" MDPS - SG_ CF_Lkas_ActToi : 27|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Lkas_ToiFlt : 28|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Lkas_HbaSysState : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM,CLU - SG_ CF_Lkas_FcwOpt : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lkas_HbaOpt : 34|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CGW - SG_ CF_Lkas_MsgCount : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,MDPS - SG_ CF_Lkas_FcwSysState : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Lkas_FcwCollisionWarning : 43|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lkas_FusionState : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Lkas_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Lkas_FcwOpt_USM : 56|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Lkas_LdwsOpt_USM : 59|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,MDPS - -BO_ 1342 LKAS12: 6 LDWS_LKAS - SG_ CF_Lkas_TsrSlifOpt : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_LkasTsrStatus : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lkas_TsrSpeed_Display_Clu : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_LkasTsrSpeed_Display_Navi : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_Lkas_TsrAddinfo_Display : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1338 TMU_GW_E_01: 8 CLU - SG_ CF_Gway_TeleReqDrLock : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqDrUnlock : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqHazard : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqHorn : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqEngineOperate : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 1078 PAS11: 4 BCM - SG_ CF_Gway_PASDisplayFLH : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM - SG_ CF_Gway_PASDisplayFRH : 3|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM - SG_ CF_Gway_PASRsound : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASDisplayFCTR : 8|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM - SG_ CF_Gway_PASDisplayRCTR : 11|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM - SG_ CF_Gway_PASFsound : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASDisplayRLH : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM - SG_ CF_Gway_PASDisplayRRH : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM - SG_ CF_Gway_PASCheckSound : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASSystemOn : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASOption : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PASDistance : 28|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 48 EMS18: 6 EMS - SG_ CF_Ems_DC1NumPerMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_DC2NumPerMSV : 8|16@1+ (1.0,0.0) [0.0|65535.0] "" DI_BOX - SG_ CR_Ems_DutyCyc1MSV : 24|8@1+ (0.1953,0.0) [0.0|49.8] "%" DI_BOX - SG_ CR_Ems_DutyCyc2MSV : 32|8@1+ (0.13725,0.0) [0.0|35.0] "%" DI_BOX - SG_ CR_Ems_DutyCyc3MSV : 40|8@1+ (0.392,0.0) [0.0|100.0] "%" DI_BOX - -BO_ 1322 CLU15: 8 CLU - SG_ CF_Clu_VehicleSpeed : 0|8@1+ (1.0,0.0) [0.0|255.0] "" BCM - SG_ CF_Clu_InhibitP : 9|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_InhibitR : 10|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_InhibitN : 11|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_InhibitD : 12|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_HudInfoSet : 13|7@1+ (1.0,0.0) [0.0|127.0] "" HUD - SG_ CF_Clu_HudFontColorSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudBrightUpSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudBrightDnSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudHeightUpSW : 26|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudHeightDnSW : 28|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudSet : 30|1@1+ (1.0,0.0) [0.0|1.0] "" HUD - SG_ CF_Clu_HudFontSizeSet : 31|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_LanguageInfo : 33|5@1+ (1.0,0.0) [0.0|31.0] "" BCM,PGS - SG_ CF_Clu_ClusterSound : 38|1@1- (1.0,0.0) [0.0|0.0] "" BCM,CGW,FATC - -BO_ 1066 _4WD13: 6 _4WD - SG_ _4WD_CURRENT : 0|8@1+ (0.390625,0.0) [-50.0|50.0] "A" TCU - SG_ _4WD_POSITION : 8|16@1+ (0.015625,0.0) [-180.0|180.0] "Deg" TCU - SG_ _4WD_CLU_THERM_STR : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" TCU - SG_ _4WD_STATUS : 32|8@1+ (1.0,0.0) [0.0|15.0] "" ESC,TCU - -BO_ 1065 _4WD12: 8 _4WD - SG_ Ster_Pos : 0|16@1+ (1.0,-600.0) [-600.0|600.0] "Deg" ESC - SG_ FRSS : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ FLSS : 24|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ RRSS : 32|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ RLSS : 40|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ CLU_PRES : 48|16@1+ (0.0625,-50.0) [-50.0|50.0] "Bar" ESC - -BO_ 809 EMS12: 8 EMS - SG_ CONF_TCU m1 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LCA,SMK - SG_ CAN_VERS m0 : 0|6@1+ (1.0,0.0) [0.0|7.7] "" _4WD,ABS,ESC,IBOX - SG_ TQ_STND m3 : 0|6@1+ (10.0,0.0) [0.0|630.0] "Nm" _4WD,DATC,ECS,EPB,ESC,FATC,IBOX - SG_ OBD_FRF_ACK m2 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ESC,IBOX - SG_ MUL_CODE M : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,BCM,CLU,DATC,ECS,EPB,ESC,IBOX,LCA,SMK,TCU - SG_ TEMP_ENG : 8|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,BCM,CLU,DATC,EPB,ESC,IBOX,SMK,TCU - SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0.0) [0.0|1.99155] "" IBOX,TCU - SG_ VB_OFF_ACT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ ACK_ES : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,IBOX - SG_ CONF_MIL_FMY : 26|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,IBOX,TCU - SG_ OD_OFF_REQ : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ ACC_ACT : 30|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,CLU,ESC,IAP,IBOX,SCC,TCU - SG_ CLU_ACK : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EPB,ESC,IBOX - SG_ BRAKE_ACT : 32|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,AFLS,CLU,DATC,ECS,EPB,ESC,IBOX,LDWS_LKAS,TCU - SG_ ENG_CHR : 34|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,ABS,ACU,CLU,DATC,EPB,ESC,FATC,IBOX,SCC,SMK,TCU - SG_ GP_CTL : 38|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX - SG_ TPS : 40|8@1+ (0.4694836,-15.0234742) [-15.0234742|104.6948357] "%" _4WD,ABS,ACU,CLU,DATC,ECS,EPB,ESC,IBOX,TCU - SG_ PV_AV_CAN : 48|8@1+ (0.3906,0.0) [0.0|99.603] "%" _4WD,AAF,ABS,ACU,AFLS,CLU,DATC,EPB,ESC,IAP,IBOX,LDWS_LKAS,SCC,TCU - SG_ ENG_VOL : 56|8@1+ (0.1,0.0) [0.0|25.5] "liter" _4WD,ABS,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,SCC,SMK - -BO_ 1064 _4WD11: 8 _4WD - SG_ _4WD_TYPE : 0|2@1+ (1.0,0.0) [0.0|3.0] "" ACU,ESC,TPMS - SG_ _4WD_SUPPORT : 2|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,ESC,TPMS - SG_ _4WD_ERR : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC - SG_ CLU_DUTY : 16|8@1+ (1.0,0.0) [0.0|64.0] "%" ABS,ESC - SG_ R_TIRE : 24|8@1+ (1.0,200.0) [200.0|455.0] "mm" ABS,ESC,TPMS - SG_ _4WD_SW : 32|8@1+ (1.0,0.0) [0.0|9.9] "" ESC - SG_ _2H_ACT : 40|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC - SG_ _4H_ACT : 41|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS - SG_ LOW_ACT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TCU,TPMS - SG_ AUTO_ACT : 43|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TPMS - SG_ LOCK_ACT : 44|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS - SG_ _4WD_TQC_CUR : 48|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" ABS,ESC - -BO_ 1319 HU_GW_E_01: 8 CLU - SG_ C_ADrLNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ C_ADrUNValueSet : 4|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ C_TwUnNValueSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_ABuzzerNValueSet : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_ArmWKeyNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_PSMNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_SCMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_HLEscortNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_WELNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_TriTurnLNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_SNVWarnNValueSet : 24|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_LkasWarnNValueSet : 26|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 1318 HU_GW_E_00: 8 CLU - SG_ C_ADrLURValueReq : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_TwUnRValueReq : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_AlarmRValueReq : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_IMSRValueReq : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_HLEscortRValueReq : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_WELRValueReq : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_TriTurnLRValueReq : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_SNVWarnRValueReq : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_LkasWarnRValueReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 1317 GW_HU_E_01: 8 BCM - SG_ C_ADrLRValue : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_ADrURValue : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_TwUnRValue : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ABuzzerRValue : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ArmWKeyRValue : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_PSMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SCMRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_HLEscortRValue : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_WELRValue : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TriTurnLRValue : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1316 GW_HU_E_00: 8 BCM - SG_ C_ADrLUNValueConf : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TwUnNValueConf : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_AlarmNValueConf : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_PSMNValueConf : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SCMNValueConf : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_HLEscortNValueConf : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_WELNValueConf : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TriTurnLNValueConf : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1315 GW_SWRC_PE: 8 BCM - SG_ C_ModeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_MuteSW : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SeekDnSW : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SeekUpSW : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_BTPhoneCallSW : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_BTPhoneHangUpSW : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_DISCDownSW : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_DISCUpSW : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SdsSW : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_MTSSW : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_VolDnSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_VolUpSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1314 GW_IPM_PE_1: 8 BCM - SG_ C_AV_Tail : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ParkingBrakeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_RKECMD : 4|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ C_BAState : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_IGNSW : 12|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_CountryCfg : 16|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_TailLampActivity : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ RearSW_RSELockOnOff : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SMKTeleCrankingState : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SMKTeleCrankingFailRes : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1057 SCC12: 8 SCC - SG_ CF_VSM_Prefill : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ CF_VSM_DecCmdAct : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ CF_VSM_HBACmd : 2|2@1+ (1.0,0.0) [0.0|3.0] "" ESC - SG_ CF_VSM_Warn : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IAP - SG_ CF_VSM_Stat : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,PSB - SG_ CF_VSM_BeltCmd : 8|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,PSB - SG_ ACCFailInfo : 11|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,ESC,IBOX - SG_ ACCMode : 13|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IBOX,TCU - SG_ StopReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EPB,ESC - SG_ CR_VSM_DecCmd : 16|8@1+ (0.01,0.0) [0.0|2.55] "g" ESC - SG_ aReqMax : 24|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,ESC,TCU - SG_ TakeOverReq : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,ESC,TCU - SG_ PreFill : 36|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,TCU - SG_ aReqMin : 37|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,ESC,TCU - SG_ CF_VSM_ConfMode : 48|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC - SG_ AEB_Failinfo : 50|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC - SG_ AEB_Status : 52|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC - SG_ AEB_CmdAct : 54|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ AEB_StopReq : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,ESC - SG_ CR_VSM_Alive : 56|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,PSB - SG_ CR_VSM_ChkSum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,PSB - -BO_ 1313 GW_DDM_PE: 8 BCM - SG_ C_DRVDoorStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ASTDoorStatus : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_RLDoorStatus : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_RRDoorStatus : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TrunkStatus : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_OSMirrorStatus : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1056 SCC11: 8 SCC - SG_ MainMode_ACC : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,ESC - SG_ SCCInfoDisplay : 1|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ESC - SG_ AliveCounterACC : 4|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,EMS,ESC,TCU - SG_ VSetDis : 8|8@1+ (1.0,0.0) [0.0|255.0] "km/h or MPH" CLU,ESC,TCU - SG_ ObjValid : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,ESC,TCU - SG_ DriverAlertDisplay : 17|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC - SG_ TauGapSet : 19|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ESC,TCU - SG_ ACC_ObjStatus : 22|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,ESC - SG_ ACC_ObjLatPos : 24|9@1+ (0.1,-20.0) [-20.0|31.1] "m" ABS,ESC - SG_ ACC_ObjDist : 33|11@1+ (0.1,0.0) [0.0|204.7] "m" ABS,ESC - SG_ ACC_ObjRelSpd : 44|12@1+ (0.1,-170.0) [-170.0|239.5] "m/s" ABS,ESC - SG_ Navi_SCC_Curve_Status : 56|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Navi_SCC_Curve_Act : 58|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Navi_SCC_Camera_Act : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Navi_SCC_Camera_Status : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1312 CGW3: 8 BCM - SG_ CR_Photosensor_LH : 0|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC - SG_ CR_Photosensor_RH : 10|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC - SG_ CF_Hoodsw_memory : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EMS - SG_ C_MirOutTempSns : 24|8@1+ (0.5,-40.5) [-40.0|60.0] "deg" AAF,CLU,DATC,EMS,SPAS,AAF,DATC,EMS,SPAS - -BO_ 544 ESP12: 8 ESC - SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,TCU - SG_ LAT_ACCEL_STAT : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU - SG_ LAT_ACCEL_DIAG : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU - SG_ LONG_ACCEL : 13|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ LONG_ACCEL_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ LONG_ACCEL_DIAG : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ CYL_PRES : 26|12@1+ (0.1,0.0) [0.0|409.5] "Bar" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU - SG_ CYL_PRES_STAT : 38|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU - SG_ CYL_PRESS_DIAG : 39|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,PSB,SCC,TCU - SG_ YAW_RATE : 40|13@1+ (0.01,-40.95) [-40.95|40.96] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU - SG_ YAW_RATE_STAT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU - SG_ YAW_RATE_DIAG : 54|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU - SG_ ESP12_AliveCounter : 56|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ ESP12_Checksum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - -BO_ 1307 CLU16: 8 CLU - SG_ CF_Clu_TirePressUnitNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" TPMS - SG_ CF_Clu_SlifNValueSet : 3|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Clu_RearWiperNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 790 EMS11: 8 EMS - SG_ SWI_IGK : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,ACU,AHLS,CUBIS,DI_BOX,ECS,EPB,ESC,IBOX,LDWS_LKAS,MDPS,REA,SAS,SCC,TCU - SG_ F_N_ENG : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,IBOX,MDPS,SCC,TCU - SG_ ACK_TCS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ PUC_STAT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,DATC,IBOX,TCU - SG_ TQ_COR_STAT : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ESC,IBOX,TCU - SG_ RLY_AC : 6|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,IBOX,TCU - SG_ F_SUB_TQI : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EPB,ESC,IBOX,TCU - SG_ TQI_ACOR : 8|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU - SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,FPCM,IBOX,MDPS,SCC,TCU - SG_ TQI : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,ECS,EPB,ESC,IBOX,TCU - SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU - SG_ VS : 48|8@1+ (1.0,0.0) [0.0|254.0] "km/h" _4WD,AAF,ACU,AHLS,BCM,CLU,DATC,ECS,EPB,IBOX,LCA,LDWS_LKAS,LVR,MDPS,ODS,SCC,SMK,SPAS,TCU,TPMS - SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0.0) [0.0|2.0] "" _4WD,IBOX,TCU - -BO_ 1301 CLU14: 8 CLU - SG_ CF_Clu_ADrUNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_ADrLNValueSet : 3|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_EscortHLNValueSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_DoorLSNValueSet : 8|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_PSMNValueSet : 11|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_TTUnlockNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_PTGMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_SCMNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_WlightNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_TempUnitNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,DATC - SG_ CF_Clu_MoodLpNValueSet : 24|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_TrfChgSet : 27|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS - SG_ CF_Clu_OTTurnNValueSet : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_LcaNValueSet : 32|2@1+ (1.0,0.0) [0.0|3.0] "" LCA - SG_ CF_Clu_RctaNValueSet : 34|2@1+ (1.0,0.0) [0.0|3.0] "" LCA - SG_ CF_Clu_RcwNValueSet : 36|2@1+ (1.0,0.0) [0.0|3.0] "" LCA - SG_ CF_Clu_EscOffNValueSet : 38|3@1+ (1.0,0.0) [0.0|7.0] "" ESC - SG_ CF_Clu_SccNaviCrvNValueSet : 41|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Clu_SccNaviCamNValueSet : 43|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Clu_SccAebNValueSet : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Clu_LkasModeNValueSet : 47|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Clu_FcwNValueSet : 51|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Clu_PasSpkrLvNValueSet : 53|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_SccDrvModeNValueSet : 56|3@1+ (1.0,0.0) [0.0|7.0] "" SCC - SG_ CF_Clu_HAnBNValueSet : 59|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_HfreeTrunkTgNValueSet : 61|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - -BO_ 275 TCU13: 8 TCU - SG_ N_TGT_LUP : 0|8@1+ (10.0,500.0) [500.0|3040.0] "rpm" EMS,IBOX - SG_ SLOPE_TCU : 8|6@1+ (0.5,-16.0) [-16.0|15.5] "%" CLU,CUBIS,EMS,IBOX - SG_ CF_Tcu_InhCda : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_IsgInhib : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_BkeOnReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_NCStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_TarGr : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,DATC,EMS,EPB,ESC,IBOX,SCC - SG_ CF_Tcu_ShfPatt : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,CUBIS,EMS,IBOX - SG_ CF_Tcu_InhVis : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_PRelReq : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LVR - SG_ CF_Tcu_ITPhase : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_ActEcoRdy : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_TqGrdLim : 32|8@1+ (10.0,0.0) [0.0|2540.0] "Nm/s" EMS,IBOX - SG_ CR_Tcu_IsgTgtRPM : 40|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" EMS,IBOX - SG_ CF_Tcu_SptRdy : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Tcu_SbwPInfo : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_Alive3 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_ChkSum3 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX - -BO_ 274 TCU12: 8 TCU - SG_ ETL_TCU : 0|8@1+ (2.0,0.0) [0.0|508.0] "Nm" EMS,IBOX - SG_ CUR_GR : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,ESC,IBOX,SCC,TPMS - SG_ CF_Tcu_Alive : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC - SG_ CF_Tcu_ChkSum : 14|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC - SG_ VS_TCU : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" BCM,CLU,DATC,EMS,IBOX,LCA,LVR,PGS,SMK,SNV - SG_ FUEL_CUT_TCU : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ INH_FUEL_CUT : 29|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ IDLE_UP_TCU : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ N_INC_TCU : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15.0|15.0] "" EMS,IBOX - SG_ N_TC_RAW : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" EMS,IBOX - SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0.0) [0.0|0.9921875] "km/h" CLU,EMS,IBOX,LCA - -BO_ 273 TCU11: 8 TCU - SG_ TQI_TCU_INC : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX - SG_ G_SEL_DISP : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,AFLS,AVM,BCM,CGW,CLU,CUBIS,ECS,EMS,EPB,ESC,IAP,IBOX,LCA,LDWS_LKAS,LVR,MDPS,PGS,SCC,SMK,SNV,SPAS,TPMS - SG_ F_TCU : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX - SG_ TCU_TYPE : 14|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS,ESC,IBOX - SG_ TCU_OBD : 16|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,ESC,IBOX - SG_ SWI_GS : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,ESC,IBOX,SCC - SG_ GEAR_TYPE : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,EMS,ESC,IBOX,SCC - SG_ TQI_TCU : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX - SG_ TEMP_AT : 32|8@1+ (1.0,-40.0) [-40.0|214.0] "deg" AAF,CLU,CUBIS,EMS,ESC,IBOX - SG_ N_TC : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" _4WD,EMS,EPB,ESC,IBOX - SG_ SWI_CC : 56|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU,EMS,ESC,IBOX - SG_ CF_Tcu_Alive1 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_ChkSum1 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX - -BO_ 16 ACU13: 8 ACU - SG_ CF_Acu_CshAct : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CUBIS,IBOX,ODS - -BO_ 1040 CGW_USM1: 8 BCM - SG_ CF_Gway_ATTurnRValue : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PTGMRValue : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_EscortHLRValue : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_TTUnlockRValue : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_ADrLRValue : 8|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_ADrURValue : 11|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_SCMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_WlightRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PSMRValue : 18|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_OTTurnRValue : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_DrLockSoundRValue : 24|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_HAnBRValue : 27|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_MoodLpRValue : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_HfreeTrunkRValue : 32|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_AutoLightRValue : 35|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_RearWiperRValue : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PasSpkrLvRValue : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - -BO_ 1292 CLU13: 8 CLU - SG_ CF_Clu_LowfuelWarn : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,FPCM,IBOX - SG_ CF_Clu_RefDetMod : 2|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX - SG_ CF_Clu_AvgFCU : 3|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX - SG_ CF_Clu_AvsmCur : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,SCC - SG_ CF_Clu_AvgFCI : 6|10@1+ (0.1,0.0) [0.0|102.2] "" IBOX - SG_ CF_Clu_DrivingModeSwi : 16|2@1+ (1.0,0.0) [0.0|3.0] "" DATC,ECS,EMS,ESC,IAP,MDPS,TCU - SG_ CF_Clu_FuelDispLvl : 18|5@1+ (1.0,0.0) [0.0|31.0] "" CGW,IBOX - SG_ CF_Clu_FlexSteerSW : 23|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Clu_DTE : 24|10@1+ (1.0,0.0) [0.0|1023.0] "" DATC - SG_ CF_Clu_TripUnit : 34|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ CF_Clu_SWL_Stat : 36|3@1+ (1.0,0.0) [0.0|7.0] "" ACU,EMS - SG_ CF_Clu_ActiveEcoSW : 39|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EMS,TCU - SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CUBIS,EMS,IAP,IBOX - SG_ CF_Clu_IsaMainSW : 43|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Clu_LdwsLkasSW : 56|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Clu_AltLStatus : 59|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,DATC,EMS - SG_ CF_Clu_AliveCnt2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,LDWS_LKAS - -BO_ 1290 SCC13: 8 SCC - SG_ SCCDrvModeRValue : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ SCC_Equip : 3|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ AebDrvSetStatus : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ESC - -BO_ 1287 TCS15: 4 ESC - SG_ ABS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,IBOX - SG_ TCS_OFF_LAMP : 1|2@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU - SG_ TCS_LAMP : 3|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ACU,CLU,CUBIS,IBOX,SCC - SG_ DBC_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ DBC_F_LAMP : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU - SG_ ESC_Off_Step : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ AVH_CLU : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,EPB - SG_ AVH_I_LAMP : 24|2@1+ (1.0,0.0) [0.0|3.0] "" EPB - SG_ EBD_W_LAMP : 26|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ AVH_ALARM : 27|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ AVH_LAMP : 29|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EPB,SPAS - -BO_ 1282 TCU14: 4 TCU - SG_ CF_TCU_WarnMsg : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_TCU_WarnImg : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_TCU_WarnSnd : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Tcu_GSel_BlinkReq : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,LVR - SG_ CF_Tcu_StRelStat : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,ESC - SG_ CF_Tcu_DriWarn1 : 13|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC - SG_ CF_Tcu_DriWarn2 : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,ESC - -BO_ 1281 ECS11: 3 ECS - SG_ ECS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX - SG_ SYS_NA : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ ECS_DEF : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ ECS_DIAG : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ L_CHG_NA : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Leveling_Off : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ LC_overheat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Lifting : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Lowering : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Damping_Mode : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ REQ_Damping : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ REQ_Height : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ REQ_level : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ ACT_Height : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - -BO_ 1024 CLU_CFG11: 2 CLU - SG_ Vehicle_Type : 0|16@1+ (1.0,0.0) [0.0|65536.0] "" _4WD - -BO_ 1280 ACU14: 1 ACU - SG_ CF_SWL_Ind : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_TTL_Ind : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_SBR_Ind : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - -BO_ 512 EMS20: 6 EMS - SG_ FCO : 0|16@1+ (0.128,0.0) [0.0|8388.48] "ul" CLU,CUBIS,FPCM,IBOX - SG_ CF_Ems_PumpTPres : 16|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" FPCM,IBOX - SG_ Split_Stat : 32|1@1+ (1.0,0.0) [0.0|1.0] "" FPCM diff --git a/opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc b/opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc deleted file mode 100644 index 6bcd771e51..0000000000 --- a/opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc +++ /dev/null @@ -1,1564 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: CLOCK HUD H_U DATC CCP KMA_TMU CUBIS TMU IPM RSE_R RRC CGW RSE_L AMP EDT SWRC IBOX CLU FHCU ASD MON AVM KBD - - -BO_ 3221225472 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX - SG_ C_WHEEL_FL : 0|12@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_WHEEL_FR : 0|12@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_WHEEL_RL : 0|12@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_WHEEL_RR : 0|12@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 2046 TP_EDT_AMP: 8 EDT - SG_ Byte0_TCP_7FE : 7|8@0+ (1,0) [0|0] "" AMP - SG_ Byte1_Data_7FE : 15|8@0+ (1,0) [0|0] "" AMP - SG_ Byte2_Data_7FE : 23|8@0+ (1,0) [0|0] "" AMP - SG_ Byte3_Data_7FE : 31|8@0+ (1,0) [0|0] "" AMP - SG_ Byte4_Data_7FE : 39|8@0+ (1,0) [0|0] "" AMP - SG_ Byte5_Data_7FE : 47|8@0+ (1,0) [0|0] "" AMP - SG_ Byte6_Data_7FE : 55|8@0+ (1,0) [0|0] "" AMP - SG_ Byte7_Data_7FE : 63|8@0+ (1,0) [0|0] "" AMP - -BO_ 251 HU_TMU_E_02: 8 H_U - SG_ HU_GPS_Year : 7|8@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ HU_GPS_Month : 15|8@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ HU_GPS_Day : 23|8@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ HU_GPS_Hour : 31|8@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ HU_GPS_Minute : 39|8@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ HU_GPS_Second : 47|8@0+ (1,0) [0|0] "" CUBIS,TMU - -BO_ 250 HU_TMU_E_01: 8 H_U - SG_ HU_VoiceRecCom : 2|3@0+ (1,0) [0|0] "" TMU - SG_ HU_LangChgCom : 5|3@0+ (1,0) [0|0] "" TMU - SG_ HU_CallEndCmd : 9|2@0+ (1,0) [0|0] "" TMU - SG_ HU_ServiceReqtID : 13|4@0+ (1,0) [0|0] "" TMU - SG_ HU_MicReqCmd : 15|2@0+ (1,0) [0|0] "" TMU - SG_ HU_SeviceAction : 18|3@0+ (1,0) [0|0] "" TMU - SG_ HU_eCallStatus : 20|2@0+ (1,0) [0|0] "" TMU - -BO_ 1269 TP_CLU_ANDAUTO_HU: 8 CLU - SG_ Byte0_TCP_4F5 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4F5 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4F5 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4F5 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4F5 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4F5 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4F5 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4F5 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1268 TP_HU_ANDAUTO_CLU: 8 H_U - SG_ Byte0_TCP_4F4 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4F4 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4F4 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4F4 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4F4 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4F4 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4F4 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4F4 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1267 TP_CLU_CARPLAY_HU: 8 CLU - SG_ Byte0_TCP_4F3 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4F3 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4F3 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4F3 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4F3 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4F3 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4F3 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4F3 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1266 TP_HU_CARPLAY_CLU: 8 H_U - SG_ Byte0_TCP_4F2 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4F2 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4F2 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4F2 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4F2 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4F2 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4F2 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4F2 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1263 TP_CLU_IBOX_HU: 8 CLU - SG_ Byte0_TCP_4EF : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4EF : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4EF : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4EF : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4EF : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4EF : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4EF : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4EF : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1262 TP_HU_IBOX_CLU: 8 H_U - SG_ Byte0_TCP_4EE : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4EE : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4EE : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4EE : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4EE : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4EE : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4EE : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4EE : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1261 TP_CLU_DLNA_HU: 8 CLU - SG_ Byte0_TCP_4ED : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4ED : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4ED : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4ED : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4ED : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4ED : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4ED : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4ED : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1260 TP_HU_DLNA_CLU: 8 H_U - SG_ Byte0_TCP_4EC : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4EC : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4EC : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4EC : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4EC : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4EC : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4EC : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4EC : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 491 GW_DDM_PE: 8 CLU - SG_ C_DRVDoorStatus : 1|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ C_ASTDoorStatus : 3|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ C_RLDoorStatus : 5|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ C_RRDoorStatus : 7|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ C_TrunkStatus : 9|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ C_OSMirrorStatus : 11|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - -BO_ 1259 TP_CLU_MP_HU: 8 CLU - SG_ Byte0_TCP_4EB : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4EB : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4EB : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4EB : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4EB : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4EB : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4EB : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4EB : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1258 TP_HU_MP_CLU: 8 H_U - SG_ Byte0_TCP_4EA : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4EA : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4EA : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4EA : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4EA : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4EA : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4EA : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4EA : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1257 TP_CLU_FM_HU: 8 CLU - SG_ Byte0_TCP_4E9 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4E9 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4E9 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4E9 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4E9 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4E9 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4E9 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4E9 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1256 TP_HU_FM_CLU: 8 H_U - SG_ Byte0_TCP_4E8 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4E8 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4E8 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4E8 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4E8 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4E8 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4E8 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4E8 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1255 TP_CLU_MLT_HU: 8 CLU - SG_ Byte0_TCP_4E7 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4E7 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4E7 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4E7 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4E7 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4E7 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4E7 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4E7 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 487 HU_CLU_PE_13: 8 H_U - SG_ Navi_DistToPoint1_F : 11|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint1_I : 7|12@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint1_U : 23|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint2_I : 19|12@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint2_F : 35|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint2_U : 39|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint3_F : 51|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint3_I : 47|12@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToPoint3_U : 63|4@0+ (1,0) [0|0] "" CLU,HUD - -BO_ 1254 TP_HU_MLT_CLU: 8 H_U - SG_ Byte0_TCP_4E6 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4E6 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4E6 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4E6 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4E6 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4E6 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4E6 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4E6 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 486 HU_CLU_PE_12: 8 H_U - SG_ Navi_DistToDest_I : 7|16@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToDest_F : 19|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_DistToDest_U : 23|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_EstimHour : 31|8@0+ (1,0) [0|254] "hh" CLU,HUD - SG_ Navi_EstimMin : 37|6@0+ (1,0) [0|59] "mm" CLU,HUD - SG_ Navi_EstimTimeType : 39|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_Compass : 45|6@0+ (7.5,-7.5) [0|352.5] "Degree" CLU,HUD - -BO_ 229 HU_SYS_E_00: 8 H_U - SG_ SYS_SW_Ver_Req : 1|2@0+ (1,0) [0|0] "" AMP,CCP,CGW,CLOCK,CLU,HUD,IBOX,RRC,RSE_L - SG_ SYS_CAN_Ver_Req : 3|2@0+ (1,0) [0|0] "" AMP,CCP,CGW,CLOCK,CLU,HUD,IBOX,RRC,RSE_L - SG_ SYS_HW_Ver_Req : 5|2@0+ (1,0) [0|0] "" AMP,CCP,CGW,CLOCK,CLU,IBOX,RRC - SG_ SYS_RBD_Req : 9|2@0+ (1,0) [0|0] "" AMP,IBOX - SG_ SYS_MOSTErrorDiag_Req : 11|2@0+ (1,0) [0|0] "" AMP,IBOX - SG_ SYS_Reset_Req : 17|2@0+ (1,0) [0|0] "" AMP,IBOX - -BO_ 1253 TP_CLU_VCDC_HU: 8 CLU - SG_ Byte0_TCP_4E5 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4E5 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4E5 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4E5 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4E5 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4E5 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4E5 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4E5 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 485 HU_CLU_PE_11: 8 H_U - SG_ Navi_FixedSpdTrap : 3|4@0+ (10,0) [10|110] "Km/h" CLU,HUD - SG_ Navi_MobileSpdTrap : 7|4@0+ (10,0) [10|110] "Km/h" CLU,HUD - SG_ Navi_OverSpdAlarm : 11|2@0+ (1,0) [0|0] "" CGW,CLU,HUD - SG_ Navi_SpdRedlightTrap : 15|4@0+ (10,0) [10|110] "Km/h" CLU,HUD - SG_ Navi_NonSpdTrap : 20|5@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_WarningZone : 27|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_MergeWarning : 33|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_CurveWarning : 39|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_BusSpdTrap : 43|4@0+ (10,0) [10|110] "Km/h" CLU,HUD - SG_ Navi_SpdLimit_Type : 49|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_SpdLimit_Unit : 51|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_SpdInfo_Type : 55|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ Navi_SpdLimit : 63|8@0+ (1,0) [1|254] "" CLU,HUD - -BO_ 1252 TP_HU_VCDC_CLU: 8 H_U - SG_ Byte0_TCP_4E4 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4E4 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4E4 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4E4 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4E4 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4E4 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4E4 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4E4 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1251 TP_CLU_JB_HU: 8 CLU - SG_ Byte0_TCP_4E3 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4E3 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4E3 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4E3 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4E3 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4E3 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4E3 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4E3 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1250 TP_HU_JB_CLU: 8 H_U - SG_ Byte0_TCP_4E2 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4E2 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4E2 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4E2 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4E2 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4E2 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4E2 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4E2 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1248 TP_TMU_HU: 8 TMU - SG_ Byte0_TCP_4E0 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4E0 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4E0 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4E0 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4E0 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4E0 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4E0 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4E0 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 479 CLU_HU_PE_01: 8 CLU - SG_ CLU_Type : 7|8@0+ (1,0) [0|0] "" H_U - SG_ CLU_Region : 15|8@0+ (1,0) [0|0] "" H_U - SG_ CLU_VersionMinor : 23|8@0+ (1,0) [0|0] "" H_U - SG_ CLU_VersionMajor : 31|8@0+ (1,0) [0|0] "" H_U - SG_ CLU_CurrentDispState : 39|8@0+ (1,0) [0|0] "" H_U - SG_ C_DRVDRSW : 41|2@0+ (1,0) [0|0] "" H_U - SG_ CF_Clu_LowfuelWarning : 44|2@0+ (1,0) [0|0] "" H_U - SG_ CLU_PowerInfo : 46|2@0+ (1,0) [0|0] "" H_U - SG_ C_DrivingModeState : 50|3@0+ (1,0) [0|0] "" H_U - SG_ Clu_RheostatLvl : 55|5@0+ (1,0) [0|0] "" H_U,MON,SWRC - SG_ C_Clu_ActiveEcoSW : 57|2@0+ (1,0) [0|0] "" H_U - SG_ C_Detent : 59|2@0+ (1,0) [0|0] "" CCP,CLOCK,H_U,KBD,MON,RRC,RSE_L,RSE_R - SG_ C_DrivingModeOn : 61|2@0+ (1,0) [0|0] "" H_U - -BO_ 2015 TP_EDT_All_Req: 8 EDT - SG_ Byte0_TCP_7DF : 7|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte1_Data_7DF : 15|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte2_Data_7DF : 23|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte3_Data_7DF : 31|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte4_Data_7DF : 39|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte5_Data_7DF : 47|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte6_Data_7DF : 55|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - SG_ Byte7_Data_7DF : 63|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - -BO_ 474 CLU_HU_PE_02: 8 CLU - SG_ CF_Clu_AvgFCU : 1|2@0+ (1,0) [0|0] "" H_U - SG_ CF_Clu_AvgFCL : 9|10@0+ (1,0) [0|0] "" H_U - SG_ CF_Clu_TermAvgSync : 25|2@0+ (1,0) [0|0] "" H_U - SG_ CF_Clu_EcoDriveInf : 36|3@0+ (1,0) [0|0] "" H_U - SG_ CR_Clu_TermAvgFCI : 33|10@0+ (1,0) [0|0] "" H_U - SG_ CF_CLU_EcoScore : 55|16@0+ (1,0) [0|0] "" H_U - -BO_ 1495 CLU_HU_P_05: 8 CLU - SG_ Clu_TripUnit : 9|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ Clu_DTEWarn : 11|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ Clu_DTE : 7|12@0+ (1,0) [0|1500] "km" H_U,IBOX - SG_ Clu_AFC : 23|10@0+ (0.1,0) [0|99.9] "" H_U,IBOX - SG_ Clu_IFC : 29|10@0+ (0.1,0) [0|99.9] "" H_U,IBOX - SG_ Clu_Odometer : 47|24@0+ (1,0) [0|999999] "" H_U,IBOX - -BO_ 1494 CLU_HU_P_01: 8 CLU - SG_ CF_TripUnit : 13|2@0+ (1,0) [0|0] "" H_U - SG_ CF_DTE : 7|10@0+ (1,0) [0|0] "" H_U - -BO_ 214 AMP_HU_E_SYS: 8 AMP - SG_ AMP_SWVerMajor : 7|8@0+ (1,0) [0|254] "" H_U,IBOX - SG_ AMP_SWVerMinor : 15|8@0+ (1,0) [0|254] "" H_U,IBOX - SG_ AMP_CANVerMajor : 23|8@0+ (1,0) [0|254] "" H_U,IBOX - SG_ AMP_CANVerMinor : 31|8@0+ (1,0) [0|254] "" H_U,IBOX - SG_ AMP_RBDResult : 34|3@0+ (1,0) [0|0] "" H_U - SG_ AMP_MOSTErrorDiagResult : 38|3@0+ (1,0) [0|0] "" H_U - SG_ AMP_HWVerMajor : 55|8@0+ (1,0) [0|254] "" H_U,IBOX - SG_ AMP_HWVerMinor : 63|8@0+ (1,0) [0|254] "" H_U,IBOX - -BO_ 1492 CLU_HU_P_04: 8 CLU - SG_ MM_CR_Fatc_AcnComCst_W : 7|10@0+ (10,0) [0|8000] "W" H_U - SG_ MM_CR_Ldc_PwrMon_W : 12|8@0+ (10,0) [0|2550] "W" H_U - SG_ MM_CR_Fatc_PTCPwrCon_W : 17|10@0+ (10,0) [0|10000] "W" H_U - SG_ MM_CR_BmsChgExp_T_Fast : 39|16@0+ (1,0) [0|0] "minute" H_U - SG_ MM_CR_BmsChgExp_T_Slow : 55|16@0+ (1,0) [0|0] "minute" H_U - -BO_ 1491 CLU_HU_P_03: 8 CLU - SG_ MM_CF_Vcu_EvMod : 3|4@0+ (1,0) [0|0] "" H_U - SG_ MM_CF_Vcu_GarSelDisp : 7|4@0+ (999,0) [0|0] "" H_U - SG_ MM_CF_Vcu_ThiBatTir : 8|1@0+ (1,0) [0|0] "" H_U - SG_ CR_Mcu_MotEstTqPc : 23|10@0+ (0.2,-100) [-100|99.8] "%" H_U - SG_ CR_Mcu_MotActRotSpd_rpm : 39|16@0+ (1,-32768) [-32768|32767] "rpm" H_U - -BO_ 1490 CLU_HU_P_02: 8 CLU - SG_ MM_CR_Vcu_EcoSco : 3|4@0+ (1,0) [0|0] "" H_U - SG_ MM_CF_Vcu_PgmRun5 : 5|2@0+ (1,0) [0|0] "" H_U - SG_ MM_CR_Clu_Odometer_kph : 15|24@0+ (0.1,0) [0|0] "km" H_U - -BO_ 1489 DATC_P_B_01: 8 CLU - SG_ C_InhibitR_DATC : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_InhibitP_DATC : 50|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_InhibitN_DATC : 49|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_InhibitD_DATC : 48|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 465 CLU_HU_PE_03: 8 CLU - SG_ CF_Clu_EVDTEDisp : 0|9@0+ (1,0) [0|0] "" H_U,IBOX - SG_ CF_Clu_GasDTEDisp : 17|10@0+ (1,0) [0|0] "" H_U,IBOX - SG_ MM_CR_Clu_TotalDTEDisp : 34|11@0+ (1,0) [0|0] "" H_U,IBOX - SG_ CF_Clu_TripUnit : 49|2@0+ (1,0) [0|0] "" H_U,IBOX - -BO_ 1232 TP_HU_TMU: 8 H_U - SG_ Byte0_TCP_4D0 : 7|8@0+ (1,0) [0|0] "" TMU - SG_ Byte1_Data_4D0 : 15|8@0+ (1,0) [0|0] "" TMU - SG_ Byte2_Data_4D0 : 23|8@0+ (1,0) [0|0] "" TMU - SG_ Byte3_Data_4D0 : 31|8@0+ (1,0) [0|0] "" TMU - SG_ Byte4_Data_4D0 : 39|8@0+ (1,0) [0|0] "" TMU - SG_ Byte5_Data_4D0 : 47|8@0+ (1,0) [0|0] "" TMU - SG_ Byte6_Data_4D0 : 55|8@0+ (1,0) [0|0] "" TMU - SG_ Byte7_Data_4D0 : 63|8@0+ (1,0) [0|0] "" TMU - -BO_ 1488 CLU_HU_P_00: 8 CLU - SG_ MM_CR_Mcu_VehSpd_Kph : 7|8@0+ (1,0) [0|0] "" H_U - SG_ MM_CR_Mcu_VehSpdDec_Kph : 15|8@0+ (1,0) [0|0] "" H_U - SG_ MM_CR_Bms_Soc_Pc : 23|8@0+ (1,0) [0|0] "" H_U - SG_ MM_CR_Vcu_TqMotClu_Pc : 31|8@0+ (1,-127) [0|0] "" H_U - SG_ MM_CR_Bms_DrvEnaDist : 39|8@0+ (1,0) [0|0] "" H_U - SG_ MM_CR_Clu_Soc_Seg : 44|5@0+ (1,0) [0|0] "" H_U,IBOX - -BO_ 208 CLU_HU_E_SYS: 8 CLU - SG_ CLU_SWVerMajor : 7|8@0+ (1,0) [0|254] "" H_U - SG_ CLU_SWVerMinor : 15|8@0+ (1,0) [0|254] "" H_U - SG_ CLU_CANVerMajor : 23|8@0+ (1,0) [0|254] "" H_U - SG_ CLU_CANVerMinor : 31|8@0+ (1,0) [0|254] "" H_U - SG_ CLU_HWVerMajor : 55|8@0+ (1,0) [0|254] "" H_U - SG_ CLU_HWVerMinor : 63|8@0+ (1,0) [0|254] "" H_U - -BO_ 448 HU_DATC_PE_00: 8 H_U - SG_ DATC_AqsLevelChg : 3|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ RSELockOnOff : 7|2@0+ (1,0) [0|0] "" CGW,DATC,IPM,RRC - SG_ DATC_AqsMode : 9|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_Graphreset_Info : 17|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_VRActivity : 33|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_PhoneActivity : 35|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ BlowerNoiseControl : 37|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - -BO_ 1211 TP_HU_TBT_CLU: 8 H_U - SG_ Byte0_TCP_4BB : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4BB : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4BB : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4BB : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4BB : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4BB : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4BB : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4BB : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1207 TP_HU_DAB_CLU: 8 H_U - SG_ Byte0_TCP_4B7 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4B7 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4B7 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4B7 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4B7 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4B7 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4B7 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4B7 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1206 TP_HU_XM_CLU: 8 H_U - SG_ Byte0_TCP_4B6 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4B6 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4B6 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4B6 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4B6 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4B6 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4B6 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4B6 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1204 TP_HU_DMB_CLU: 8 H_U - SG_ Byte0_TCP_4B4 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_4B4 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_4B4 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_4B4 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_4B4 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_4B4 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_4B4 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_4B4 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 432 TMU_GW_PE_01: 8 TMU - SG_ C_DATCOnOffReq : 1|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM - SG_ C_DATCTempUnit : 3|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM - SG_ C_DATCTempSet : 15|8@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM - SG_ TMU_IVRActivity : 33|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM - SG_ TMU_PhoneActivity : 35|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM - -BO_ 1195 TP_CLU_TBT_HU: 8 CLU - SG_ Byte0_TCP_4AB : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4AB : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4AB : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4AB : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4AB : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4AB : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4AB : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4AB : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1191 TP_CLU_DAB_HU: 8 CLU - SG_ Byte0_TCP_4A7 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4A7 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4A7 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4A7 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4A7 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4A7 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4A7 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4A7 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1190 TP_CLU_XM_HU: 8 CLU - SG_ Byte0_TCP_4A6 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4A6 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4A6 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4A6 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4A6 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4A6 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4A6 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4A6 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1188 TP_CLU_DMB_HU: 8 CLU - SG_ Byte0_TCP_4A4 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_4A4 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_4A4 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_4A4 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_4A4 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_4A4 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_4A4 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_4A4 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1179 TP_HU_NAVI_CLU: 8 H_U - SG_ Byte0_TCP_49B : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_49B : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_49B : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_49B : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_49B : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_49B : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_49B : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_49B : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1178 TP_CLU_Ipod_HU: 8 CLU - SG_ Byte0_TCP_49A : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_49A : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_49A : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_49A : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_49A : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_49A : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_49A : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_49A : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 410 HU_CLU_PE_08: 8 H_U - SG_ VCDC_SelDiscNo : 11|4@0+ (1,0) [0|0] "" CLU - SG_ VCDC_TrackChapterNo : 7|10@0+ (1,0) [0|0] "" CLU - SG_ VCDC_PlayTime : 23|24@0+ (1,0) [0|0] "" CLU - SG_ MLT_PlayTime : 47|24@0+ (1,0) [0|0] "" CLU - -BO_ 1176 TP_CLU_DVD_HU: 8 CLU - SG_ Byte0_TCP_498 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_498 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_498 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_498 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_498 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_498 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_498 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_498 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 1175 TP_CLU_USB_HU: 8 CLU - SG_ Byte0_TCP_497 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_497 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_497 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_497 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_497 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_497 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_497 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_497 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 407 HU_CLU_PE_05: 8 H_U - SG_ HU_LanguageInfo : 7|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ HU_MuteStatus : 9|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ HU_VolumeStatus : 15|6@0+ (1,0) [0|0] "" CLU,HUD - SG_ HU_NaviDisp : 17|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ HU_NaviStatus : 19|2@0+ (1,0) [0|0] "" CGW,CLU,HUD,IPM - SG_ HU_DistanceUnit : 21|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ HU_Navigation_On_Off : 23|2@0+ (1,0) [0|0] "" AVM,CGW,CLU,DATC,HUD,IPM - -BO_ 1942 TP_AMP_HU_DiagRes: 8 AMP - SG_ Byte0_TCP_796 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_796 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_796 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_796 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_796 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_796 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_796 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_796 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 406 HU_CLU_PE_04: 8 H_U - SG_ C_SDARS_ChannelNo : 7|8@0+ (1,0) [0|0] "" CLU - SG_ C_NaviRouteGuidance : 11|2@0+ (1,0) [0|0] "" CLU - SG_ HD_SPS_ChannelNo : 15|4@0+ (1,0) [0|0] "" CLU - SG_ C_SDARS_PresetNo : 19|4@0+ (1,0) [0|0] "" CLU - SG_ DAB_ServiceFollowing : 21|2@0+ (1,0) [0|0] "" CLU - SG_ SXM_ChannelNo : 25|10@0+ (1,0) [0|999] "" AMP,CLU,HUD - -BO_ 1941 TP_HU_AMP_DiagReq: 8 H_U - SG_ Byte0_TCP_795 : 7|8@0+ (1,0) [0|0] "" AMP - SG_ Byte1_Data_795 : 15|8@0+ (1,0) [0|0] "" AMP - SG_ Byte2_Data_795 : 23|8@0+ (1,0) [0|0] "" AMP - SG_ Byte3_Data_795 : 31|8@0+ (1,0) [0|0] "" AMP - SG_ Byte4_Data_795 : 39|8@0+ (1,0) [0|0] "" AMP - SG_ Byte5_Data_795 : 47|8@0+ (1,0) [0|0] "" AMP - SG_ Byte6_Data_795 : 55|8@0+ (1,0) [0|0] "" AMP - SG_ Byte7_Data_795 : 63|8@0+ (1,0) [0|0] "" AMP - -BO_ 1173 TP_CLU_CD_HU: 8 CLU - SG_ Byte0_TCP_495 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_495 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_495 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_495 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_495 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_495 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_495 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_495 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 405 HU_CLU_PE_03: 8 H_U - SG_ HU_IntegPresetNum : 7|8@0+ (1,0) [0|0] "" AMP,CLU,HUD - SG_ Radio_Area : 10|8@0+ (1,0) [0|0] "" CLU - SG_ DMB_PresetNo : 29|5@0+ (1,0) [0|0] "" CLU - SG_ RADIO_PresetNo : 18|5@0+ (1,0) [0|0] "" CLU - SG_ HU_Opstate_DIS2 : 38|7@0+ (1,0) [0|0] "" AMP,CLU,HUD - -BO_ 1168 TP_HU_USB_CLU: 8 H_U - SG_ Byte0_TCP_490 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_490 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_490 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_490 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_490 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_490 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_490 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_490 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1936 TP_HU_All_Req: 8 H_U - SG_ Byte0_TCP_790 : 7|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte1_Data_790 : 15|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte2_Data_790 : 23|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte3_Data_790 : 31|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte4_Data_790 : 39|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte5_Data_790 : 47|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte6_Data_790 : 55|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - SG_ Byte7_Data_790 : 63|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU - -BO_ 1167 TP_HU_Ipod_CLU: 8 H_U - SG_ Byte0_TCP_48F : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_48F : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_48F : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_48F : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_48F : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_48F : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_48F : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_48F : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1166 TP_HU_DVD_CLU: 8 H_U - SG_ Byte0_TCP_48E : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_48E : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_48E : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_48E : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_48E : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_48E : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_48E : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_48E : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1165 TP_HU_CD_CLU: 8 H_U - SG_ Byte0_TCP_48D : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_48D : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_48D : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_48D : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_48D : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_48D : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_48D : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_48D : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 1164 TP_CLU_NAVI_HU: 8 CLU - SG_ Byte0_TCP_48C : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_48C : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_48C : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_48C : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_48C : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_48C : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_48C : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_48C : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 139 AMP_HU_E_12: 8 AMP - SG_ AMP_Beep2VolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep2FrequencyState : 15|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep2OutputMaskState : 31|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep2DOnState : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep2DOffState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep2NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 138 AMP_HU_E_11: 8 AMP - SG_ AMP_Beep1VolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep1FrequencyState : 15|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep1OutputMaskState : 31|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep1DOnState : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep1DOffState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep1NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 137 AMP_HU_E_10: 8 AMP - SG_ AMP_MTSOutputMaskSupport : 1|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_MTSMuteMaskSupport : 5|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_HFOutputMaskSupport : 9|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_HFMuteMaskSupport : 13|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_NaviOutputMaskSupport : 17|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_NaviMuteMaskSupport : 21|2@0+ (1,0) [0|0] "" H_U - -BO_ 1928 TP_HU_PhyRes: 8 H_U - SG_ Byte0_TCP_788 : 7|8@0+ (1,0) [0|0] "" EDT - SG_ Byte1_Data_788 : 15|8@0+ (1,0) [0|0] "" EDT - SG_ Byte2_Data_788 : 23|8@0+ (1,0) [0|0] "" EDT - SG_ Byte3_Data_788 : 31|8@0+ (1,0) [0|0] "" EDT - SG_ Byte4_Data_788 : 39|8@0+ (1,0) [0|0] "" EDT - SG_ Byte5_Data_788 : 47|8@0+ (1,0) [0|0] "" EDT - SG_ Byte6_Data_788 : 55|8@0+ (1,0) [0|0] "" EDT - SG_ Byte7_Data_788 : 63|8@0+ (1,0) [0|0] "" EDT - -BO_ 136 AMP_HU_E_09: 8 AMP - SG_ AMP_MaxBeep2VolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep2Freq_State : 15|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep2OutputMaskSup : 33|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep2DOnState : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep2DOffState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep2NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 135 AMP_HU_E_08: 8 AMP - SG_ AMP_MaxBeep1VolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep1Freq_State : 15|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_Beep1OutputMaskSup : 33|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep1DOnState : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep1DOffState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBeep1NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 134 AMP_HU_E_07: 8 AMP - SG_ ASD_SetValue : 2|3@0+ (1,0) [0|0] "" H_U,IBOX - SG_ ASD_Version : 15|8@0+ (1,0) [0|0] "" H_U,IBOX - -BO_ 1157 TP_HU_CLU_HF: 8 H_U - SG_ Byte0_TCP_485 : 7|8@0+ (1,0) [0|0] "" CLU - SG_ Byte1_Data_485 : 15|8@0+ (1,0) [0|0] "" CLU - SG_ Byte2_Data_485 : 23|8@0+ (1,0) [0|0] "" CLU - SG_ Byte3_Data_485 : 31|8@0+ (1,0) [0|0] "" CLU - SG_ Byte4_Data_485 : 39|8@0+ (1,0) [0|0] "" CLU - SG_ Byte5_Data_485 : 47|8@0+ (1,0) [0|0] "" CLU - SG_ Byte6_Data_485 : 55|8@0+ (1,0) [0|0] "" CLU - SG_ Byte7_Data_485 : 63|8@0+ (1,0) [0|0] "" CLU - -BO_ 133 AMP_HU_E_06: 8 AMP - SG_ AMP_MaxVolumeStep : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBalanceStep : 15|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxFadeStep : 23|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxBassStep : 31|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxMidStep : 39|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxTrebleStep : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_ASDMajorVer : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_ASDMinorVer : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 389 AMP_HU_PE_05: 8 AMP - SG_ AMP_EngOrderC2Setting : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_EngOrderC4Setting : 15|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_EngOrderC6Setting : 23|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_APSBand0Setting : 31|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_APSBand1Setting : 39|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_APSBand2Setting : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_APSBand3Setting : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_APSBand4Setting : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 132 AMP_HU_E_05: 8 AMP - SG_ AMP_HFVolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_HFAudioCutState : 15|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_HFOutputMaskState : 23|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_HFMuteMaskState : 39|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxHFVolumeState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxHFAudioCutState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 388 AMP_HU_PE_04: 8 AMP - SG_ AMP_PESSModeState : 1|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_PESSDesignSetting : 4|3@0+ (1,0) [0|0] "" H_U - SG_ AMP_PESSAPSSetting : 7|3@0+ (1,0) [0|0] "" H_U - SG_ AMP_PESSVolumeSetting : 15|8@0+ (1,0) [0|0] "" H_U - -BO_ 1156 TP_CLU_HF_HU: 8 CLU - SG_ Byte0_TCP_484 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_484 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_484 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_484 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_484 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_484 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_484 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_484 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 131 AMP_HU_E_04: 8 AMP - SG_ AMP_MTSVolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MTSAudioCutState : 15|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MTSOutputMaskState : 23|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_MTSMuteMaskState : 39|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxMTSVolumeState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxMTSAudioCutState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 387 AMP_HU_PE_03: 8 AMP - SG_ AMP_MainVolumeSetting : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_BalanceSetting : 15|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_FadeSetting : 23|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_BassSetting : 31|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MidSetting : 39|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_TrebleSetting : 47|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_VehicleSpeedamp : 55|8@0+ (1,0) [0|0] "" H_U - -BO_ 130 AMP_HU_E_03: 8 AMP - SG_ AMP_NaviVolumeState : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_NaviAudioCutState : 15|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_NaviOutputMaskState : 23|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_NaviMuteMaskState : 39|16@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxNaviVolumeState : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_MaxNaviAudioCutState : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 129 AMP_HU_E_02: 8 AMP - SG_ AMP_DriveState : 1|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_ConvertibleTopState : 5|2@0+ (1,0) [0|0] "" H_U - -BO_ 385 AMP_HU_PE_02: 8 AMP - SG_ AMP_MuteState : 1|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_RearSpMuteState : 3|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SurroundModeState : 9|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_EQState : 13|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SPDIFMuteSt : 17|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_BeatsModeState : 21|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_DefaultBeep1St : 25|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_DefaultBeep2St : 29|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_AudioSource : 39|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_VIPModeState : 41|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_QLSModeState : 43|2@0+ (1,0) [0|0] "" H_U - -BO_ 128 AMP_HU_E_01: 8 AMP - SG_ AMP_CurrentVehicleID : 7|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_SPDIFModeState : 11|4@0+ (1,0) [0|0] "" H_U - SG_ AMP_MajorVer : 23|8@0+ (1,0) [0|0] "" H_U,MON - SG_ AMP_MinorVer : 31|8@0+ (1,0) [0|0] "" H_U,MON - SG_ AMP_UpdateStartResp : 33|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_UpdateEndResp : 41|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_TuningMajorVer : 55|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_TuningMinorVer : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 384 AMP_HU_PE_01: 8 AMP - SG_ AMP_HFModeState : 1|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ HU_InitInfo : 3|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_ASDModeState : 6|3@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_NaviModeState : 9|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_SPDIFInfo : 12|3@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_MTSModeState : 17|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_VSCModeState : 25|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_SDVCStepState : 29|3@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_Beep1ModeState : 33|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_Beep2ModeState : 41|2@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_DistrInfoState : 55|8@0+ (1,0) [0|0] "" CLU,H_U - SG_ AMP_INFORM_TO_IPM : 57|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM - SG_ AMP_SignalDoctorState : 59|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_AutoVolumeState : 61|2@0+ (1,0) [0|0] "" H_U - -BO_ 1408 AMP_HU_P_01: 8 AMP - SG_ AMP_SupportMute : 1|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportHFMode : 3|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportCfgBeep1 : 5|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportCfgBeep2 : 7|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportSpeedAdjust : 9|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportSurroundMode : 11|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportNaviMode : 13|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportMTSMode : 15|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportTopState : 17|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportBothLHDandRHD : 19|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportEQState : 21|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportVehicleID : 23|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportAudioSource : 25|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportSPDIFModeState : 27|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportRearSpMute : 29|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportVEQMode : 31|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_MakerID : 39|8@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportASDMode : 41|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportBeatsMode : 43|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportVIPMode : 45|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportQLS : 47|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportSignalDoctor : 49|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportAutoVolume : 51|2@0+ (1,0) [0|0] "" H_U - SG_ AMP_SupportPESSMode : 53|2@0+ (1,0) [0|0] "" H_U - -BO_ 1920 TP_HU_PhyReq: 8 EDT - SG_ Byte0_TCP_780 : 7|8@0+ (1,0) [0|0] "" H_U - SG_ Byte1_Data_780 : 15|8@0+ (1,0) [0|0] "" H_U - SG_ Byte2_Data_780 : 23|8@0+ (1,0) [0|0] "" H_U - SG_ Byte3_Data_780 : 31|8@0+ (1,0) [0|0] "" H_U - SG_ Byte4_Data_780 : 39|8@0+ (1,0) [0|0] "" H_U - SG_ Byte5_Data_780 : 47|8@0+ (1,0) [0|0] "" H_U - SG_ Byte6_Data_780 : 55|8@0+ (1,0) [0|0] "" H_U - SG_ Byte7_Data_780 : 63|8@0+ (1,0) [0|0] "" H_U - -BO_ 371 HU_TMU_PE_01: 8 H_U - SG_ HU_AliveStatus : 1|2@0+ (1,0) [0|0] "" CLU,CGW,TMU - SG_ HU_DeviceType : 5|4@0+ (1,0) [0|0] "" TMU - SG_ HU_DistanceUnit : 7|2@0+ (1,0) [0|0] "" TMU - SG_ HU_AudAllocStatus : 9|2@0+ (1,0) [0|0] "" TMU - SG_ HU_PowerStatus : 12|3@0+ (1,0) [0|0] "" TMU - SG_ HU_BTCallStatus : 15|3@0+ (1,0) [0|0] "" TMU - SG_ HU_VoiceRecStatus : 17|2@0+ (1,0) [0|0] "" TMU - SG_ HU_LangStatus : 20|3@0+ (1,0) [0|0] "" TMU - -BO_ 369 HU_Car_PE_01: 8 H_U - SG_ HU_VehiclePwr : 3|4@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CLOCK,CLU,CUBIS,DATC,FHCU,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU - -BO_ 1392 HU_TMU_P_01: 8 H_U - SG_ HU_GPS_Signal : 7|64@0+ (1,0) [0|0] "" TMU - -BO_ 112 HU_AMP_E_09: 8 H_U - SG_ AMP_Beep1VolumeStep : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep1Frequency : 15|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep1Ch_OutputMask : 31|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep1DurationOn : 47|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep1DurationOff : 55|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep1NumberOfCycles : 63|8@0+ (1,0) [0|0] "" AMP - -BO_ 1390 GW_CLU_P: 8 CLU - SG_ C_VehicleSpeed : 7|8@0+ (1,0) [0|254] "" H_U,IBOX - SG_ C_Odometer : 15|24@0+ (1,0) [0|999999] "" H_U,IBOX - -BO_ 363 GW_IPM_PE_2: 8 CLU - SG_ C_DRVUnlockState : 1|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_ASTUnlockState : 3|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_RLUnlockstate : 5|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_RRUnlockState : 7|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_VehicleInfoTMU : 9|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_Engine_Status : 11|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_TMULockFeedBack : 23|2@0+ (1,0) [0|0] "" CUBIS,TMU - -BO_ 362 GW_IPM_PE_1: 8 CLU - SG_ C_AV_Tail : 1|2@0+ (1,0) [0|0] "" AMP,CCP,CLOCK,CLU,HUD,H_U,IBOX,RRC,RSE_L - SG_ C_ParkingBrakeSW : 3|2@0+ (1,0) [0|0] "" H_U - SG_ C_RKECMD : 7|4@0+ (1,0) [0|0] "" H_U - SG_ C_BAState : 9|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_IGNSW : 14|3@0+ (1,0) [0|0] "" AMP,AVM,CUBIS,EDT,H_U,MON,RRC,SWRC - SG_ C_CountryCfg : 18|3@0+ (1,0) [0|0] "" AVM,H_U - SG_ C_AltL : 25|2@0+ (1,0) [0|0] "" H_U - SG_ C_TailLampActivity : 27|2@0+ (1,0) [0|0] "" AMP,CCP,CLOCK,HUD,H_U,IBOX,RRC,RSE_L,SWRC - SG_ RearSW_RSELockOnOff : 29|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_TMULockFeedBack : 31|2@0+ (1,0) [0|0] "" CUBIS,TMU - SG_ C_SMKTeleCrankingState : 33|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_SMKTeleCrankingFailRes : 35|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_RKECMD_GEN2 : 39|3@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_Acu_CshAct : 41|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_IntTailAct : 43|2@0+ (1,0) [0|0] "" AMP,CCP,CLOCK,CLU,HUD,H_U,IBOX,RRC,RSE_L - SG_ C_PassiveAccessUnlock : 47|3@0+ (1,0) [0|0] "" H_U,IBOX - SG_ Lca_IndLeft : 49|2@0+ (1,0) [0|0] "" H_U - SG_ FL_SndWarn : 51|2@0+ (1,0) [0|0] "" AMP - SG_ FR_SndWarn : 53|2@0+ (1,0) [0|0] "" AMP - SG_ Lca_IndRight : 55|2@0+ (1,0) [0|0] "" H_U - SG_ RCTA_IndLeft : 57|2@0+ (1,0) [0|0] "" H_U - SG_ RL_SndWarn : 59|2@0+ (1,0) [0|0] "" AMP - SG_ RR_SndWarn : 61|2@0+ (1,0) [0|0] "" AMP - SG_ RCTA_IndRight : 63|2@0+ (1,0) [0|0] "" H_U - -BO_ 361 GW_CHASSIS_PE_1: 8 CLU - SG_ C_Inhibit_State : 3|4@0+ (1,0) [0|0] "" AVM,H_U - SG_ C_P_BrakeStatus : 5|2@0+ (1,0) [0|0] "" AVM,H_U - SG_ C_Clu_AltLStatus : 7|2@0+ (1,0) [0|0] "" AVM,H_U - -BO_ 359 GW_WARNING_PE_01: 8 CLU - SG_ Spas_BEEP_Alarm : 3|4@0+ (1,0) [0|0] "" AMP - SG_ Spas_Audio_VolumeDown : 5|2@0+ (1,0) [0|0] "" AMP - SG_ Spas_Spkr_Flh_Alarm : 9|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Spas_Spkr_Fcnt_Alarm : 11|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Spas_Spkr_Frh_Alarm : 13|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Spas_Spkr_Rlh_Alarm : 17|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Spas_Spkr_Rcnt_Alarm : 19|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Spas_Spkr_Rrh_Alarm : 21|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Lkas_SysStatus : 27|4@0+ (1,0) [0|0] "" AMP,H_U - SG_ Lkas_LH_Warning : 29|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Lkas_RH_Warning : 31|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Spas_Spkr_Level : 35|3@0+ (1,0) [0|0] "" AMP - SG_ Lkas_Audio_VolumeDown : 37|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Audio_VolumeDown : 39|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_BEEP_Alarm : 43|4@0+ (1,0) [0|0] "" AMP - SG_ Pas_Audio_VolumeDown : 45|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_Spkr_Level : 32|3@0+ (1,0) [0|0] "" AMP - SG_ Pas_Spkr_Flh_Alarm : 49|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_Spkr_Fcnt_Alarm : 51|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_Spkr_Frh_Alarm : 53|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_Spkr_Rlh_Alarm : 57|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_Spkr_Rcnt_Alarm : 59|2@0+ (1,0) [0|0] "" AMP,H_U - SG_ Pas_Spkr_Rrh_Alarm : 61|2@0+ (1,0) [0|0] "" AMP,H_U - -BO_ 1376 HU_TMU_P_02: 8 H_U - SG_ HU_GPS_Signal2 : 7|8@0+ (2,0) [0|0] "Degree" TMU - SG_ HU_GPS_Signal3 : 9|2@0+ (1,0) [0|0] "" TMU - SG_ HU_GPS_Signal4 : 12|3@0+ (1,0) [0|0] "" TMU - -BO_ 93 DATC_HU_E_SYS: 8 CLU - SG_ DATC_SWVerMajor : 7|8@0+ (1,0) [0|254] "" H_U - SG_ DATC_SWVerMinor : 15|8@0+ (1,0) [0|254] "" H_U - SG_ DATC_CANVerMajor : 23|8@0+ (1,0) [0|254] "" H_U - SG_ DATC_CANVerMinor : 31|8@0+ (1,0) [0|254] "" H_U - -BO_ 344 GW_CLU_PE: 8 CLU - SG_ C_InhibitP : 1|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_InhibitR : 3|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_InhibitN : 5|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_InhibitD : 7|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_P_BrakeStatus : 9|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_Clu_AltLStatus : 11|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ CF_Clu_LowfuelWarning : 13|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ C_InhibitRMT : 15|2@0+ (1,0) [0|0] "" H_U - SG_ CF_SMKRKECmd : 18|3@0+ (1,0) [0|0] "" H_U - -BO_ 87 HU_E_02: 8 H_U - SG_ NaviValidity : 1|2@0+ (1,0) [0|0] "" CGW,CLU - -BO_ 343 GW_WARNING_PE_02: 8 CLU - SG_ CF_Lkas_TsrSlifOpt : 1|2@0+ (1,0) [0|3] "" H_U - SG_ CF_Lkas_TsrStatus : 3|2@0+ (1,0) [0|3] "" H_U - SG_ CF_Lkas_TsrAddinfo_Disp : 7|2@0+ (1,0) [0|3] "" H_U - SG_ CF_Lkas_TsrSpeed_Display : 15|8@0+ (1,0) [0|255] "" H_U - -BO_ 75 HU_AMP_E_12: 8 H_U - SG_ AMP_EngOrderC2GainSet : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_EngOrderC4GainSet : 15|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_EngOrderC6GainSet : 23|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_APSBand0GainSet : 31|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_APSBand1GainSet : 39|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_APSBand2GainSet : 47|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_APSBand3GainSet : 55|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_APSBand4GainSet : 63|8@0+ (1,0) [0|0] "" AMP - -BO_ 74 HU_AMP_E_11: 8 H_U - SG_ AMP_PESSMode : 1|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_PESSDesignSet : 4|3@0+ (1,0) [0|0] "" AMP - SG_ AMP_PESSAPSSet : 7|3@0+ (1,0) [0|0] "" AMP - SG_ AMP_PESSVolumeSet : 15|8@0+ (1,0) [0|0] "" AMP - -BO_ 1864 TP_AMP_EDT: 8 AMP - SG_ Byte0_TCP_748 : 7|8@0+ (1,0) [0|0] "" EDT - SG_ Byte1_Data_748 : 15|8@0+ (1,0) [0|0] "" EDT - SG_ Byte2_Data_748 : 23|8@0+ (1,0) [0|0] "" EDT - SG_ Byte3_Data_748 : 31|8@0+ (1,0) [0|0] "" EDT - SG_ Byte4_Data_748 : 39|8@0+ (1,0) [0|0] "" EDT - SG_ Byte5_Data_748 : 47|8@0+ (1,0) [0|0] "" EDT - SG_ Byte6_Data_748 : 55|8@0+ (1,0) [0|0] "" EDT - SG_ Byte7_Data_748 : 63|8@0+ (1,0) [0|0] "" EDT - -BO_ 327 TMU_HU_PE_03: 8 TMU - SG_ TMU_TbT_TurnIcon : 7|8@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_CountDownBar : 11|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_Distance_Unit : 13|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_DestDistance_Unit : 15|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_DistanceLo : 27|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_DistanceHi : 23|12@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_DestDistanceLo : 43|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_DestDistanceHi : 39|12@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_ExpectRemainHour : 55|8@0+ (1,0) [0|0] "" H_U - SG_ TMU_TbT_ExpectRemainMin : 61|6@0+ (1,0) [0|0] "" H_U - -BO_ 326 TMU_HU_PE_02: 8 TMU - SG_ TMU_CallStatus : 3|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_CallType : 6|3@0+ (1,0) [0|0] "" H_U - SG_ TMU_CDMA_Streng : 11|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_PacketStatus : 13|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_TalkTimeHour : 20|5@0+ (1,0) [0|0] "" H_U - SG_ TMU_TalkTimeMinute : 29|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_TalkTimeSecond : 37|6@0+ (1,0) [0|0] "" H_U - -BO_ 325 TMU_HU_PE_01: 8 TMU - SG_ TMU_AliveStatus : 2|3@0+ (1,0) [0|0] "" H_U - SG_ TMU_AudioStatus : 4|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_UpdateStatus : 7|3@0+ (1,0) [0|0] "" H_U - SG_ TMU_LangStatus : 10|3@0+ (1,0) [0|0] "" H_U - SG_ TMU_VoiceRecStatus : 12|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_MicStatus : 14|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_ServCommuStatus : 19|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_PowerStatus : 21|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_EngineStatus : 23|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_DownProgress : 31|8@0+ (1,0) [0|0] "" H_U - -BO_ 69 TMU_HU_E_04: 8 TMU - SG_ TMU_eCall : 1|2@0+ (1,0) [0|0] "" H_U - -BO_ 67 TMU_GW_E_01: 8 TMU - SG_ C_ReqDrLock : 1|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ C_ReqDrUnlock : 3|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ C_ReqHazard : 5|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ C_ReqHorn : 7|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ C_ReqEngineOperate : 9|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - -BO_ 66 TMU_HU_E_03: 8 TMU - SG_ CDMA_SelfDiag : 1|2@0+ (1,0) [0|0] "" H_U - SG_ CDMA_Antena_SelfDiag : 3|2@0+ (1,0) [0|0] "" H_U - -BO_ 1345 TMU_HU_P_02: 8 TMU - SG_ TMU_SupVoiceTextService : 1|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_SupEcoCoachService : 3|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_SupSongTagService : 5|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_SupContentService : 7|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_MajorVersion : 15|8@0+ (1,0) [0|0] "" H_U - SG_ TMU_MinorVersion : 23|8@0+ (1,0) [0|0] "" H_U - SG_ TMU_DistributeInfo : 27|4@0+ (1,0) [0|0] "" H_U - -BO_ 65 TMU_HU_E_02: 8 TMU - SG_ TMU_BarLevel1 : 7|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel2 : 1|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel4 : 21|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel3 : 11|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel5 : 31|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel6 : 25|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel8 : 45|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel7 : 35|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel9 : 55|6@0+ (1,0) [0|0] "" H_U - SG_ TMU_BarLevel10 : 63|6@0+ (1,0) [0|0] "" H_U - -BO_ 1344 TMU_HU_P_01: 8 TMU - SG_ TMU_Arrow : 3|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_ReFill_Info : 5|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_AverageMPG : 1|10@0+ (1,0) [0|0] "" H_U - SG_ TMU_TotalMPG : 23|10@0+ (1,0) [0|0] "" H_U - SG_ TMU_RewardStar : 37|14@0+ (1,0) [0|0] "" H_U - -BO_ 64 TMU_HU_E_01: 8 TMU - SG_ TMU_DisMode : 3|4@0+ (1,0) [0|0] "" H_U - SG_ TMU_AudSrcType : 7|4@0+ (1,0) [0|0] "" CLU,DATC,H_U - SG_ TMU_AudReqCmd : 9|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_LangCmd : 12|3@0+ (1,0) [0|0] "" H_U - SG_ TMU_ServReq : 15|3@0+ (1,0) [0|0] "" H_U - SG_ TMU_ErrorEvent : 23|8@0+ (1,0) [0|0] "" H_U - SG_ TMU_BeepCmd : 25|2@0+ (1,0) [0|0] "" H_U - SG_ TMU_eCall : 28|3@0+ (1,0) [0|0] "" H_U - -BO_ 62 HU_Navi_E_00: 8 H_U - SG_ Navi_SLIF_SpdUnit : 1|2@0+ (1,0) [0|0] "" CGW,CLU,HUD - SG_ Navi_SLIF_Frwinfo : 4|3@0+ (1,0) [0|0] "" CGW,CLU,HUD - SG_ Navi_SLIF_LinkClass : 7|3@0+ (1,0) [0|0] "" CGW,CLU,HUD - SG_ Navi_SLIF_SpdLimit : 15|8@0+ (1,0) [1|254] "" CGW,CLU,HUD - SG_ Navi_SLIFMapSource : 29|4@0+ (1,0) [0|8] "" CGW,CLU,HUD - SG_ Navi_SLIF_CountryCode : 23|10@0+ (1,0) [0|0] "" CGW,CLU,HUD - -BO_ 52 HU_DATC_E_02: 8 H_U - SG_ HU_DATC_DrTempUpDn : 1|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_PsTempUpDn : 3|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_RlTempUpDn : 5|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_RrTempUpDn : 7|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_MainBlower : 11|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_SubBlower : 15|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_RearBlower : 19|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATCRearPsModeSet : 23|4@0+ (1,0) [0|0] "" CGW,CLU - SG_ HU_DATC_FrontModeSet : 27|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_RearModeSet : 31|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_AutoSet : 33|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_OffReq : 35|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_IntakeSet : 37|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_RearOnOffSet : 39|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_AcSet : 41|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_AqsSet : 43|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_FrontDefog : 45|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_RearDefog : 47|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_ZoneControl : 49|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ HU_DATC_CO2Set : 51|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ DATC_SmartVentOnOffSet : 53|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM - SG_ DATC_ADSOnOffSet : 55|2@0+ (1,0) [0|0] "" CGW,CLU - SG_ HU_DATC_RearAutoDisp : 57|2@0+ (1,0) [0|0] "" CGW,CLU - SG_ HU_DATC_RearOffDisp : 59|2@0+ (1,0) [0|0] "" CGW,CLU - -BO_ 308 DATC_PE_05: 8 CLU - SG_ DATC_PwrInfo : 3|4@0+ (1,0) [0|0] "" AMP,AVM,CUBIS,H_U,MON - SG_ DATC_AltL : 5|2@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_CarInfo : 7|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_ParkingBrake : 9|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_LowFuelWarn : 11|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_Rear_Off_Disp : 13|2@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_Rear_AutoDisp : 15|2@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_Rear_BlowerDisp : 19|4@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_DrSeatWarmerDisp : 22|3@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_SyncDisp : 27|4@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_RearDispCtrl : 31|4@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_RearDrModeDisp : 35|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_PsSeatWarmerDisp : 38|3@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_DrVentSeatDisp : 42|3@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_PSVentSeatDisp : 46|3@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_RrDefLed : 49|2@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_SmartVentOnOffStatus : 51|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_ADSOnOffStatus : 53|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_AcDisp_OSD : 55|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_PsModeDisp_OSD : 59|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_ModeDisp_OSD : 63|4@0+ (1,0) [0|0] "" H_U - -BO_ 307 DATC_PE_04: 8 CLU - SG_ DATC_DiagMode : 1|2@0+ (1,0) [0|0] "" H_U,IBOX,MON - SG_ DATC_Rear_ChangeReqDisp : 3|2@0+ (1,0) [0|0] "" H_U,IBOX,MON - SG_ DATC_Rear_ClimateScnDisp : 5|2@0+ (1,0) [0|0] "" H_U,IBOX,MON - SG_ DATC_CO2OnOffStatus : 7|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_SelfDiagDisp : 15|8@0+ (1,0) [0|0] "" H_U,IBOX,MON - SG_ DATC_RearBlwDisp_OSD : 19|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_AqsLevelOut : 23|4@0+ (1,0) [0|0] "" H_U,IBOX,MON - SG_ DATC_RearModeDisp : 27|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_RearPsModeDisp : 31|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_FrontBlwDisp_Ps : 35|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_AutoDisp_Ps : 39|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_RearModeDisp_OSD : 43|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_RearPSModeDisp_OSD : 47|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_FrontBlwDisp_OSD : 51|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_FrontBlwDispPs_OSD : 55|4@0+ (1,0) [0|0] "" H_U - SG_ DATC_Variant : 63|8@0+ (1,0) [0|0] "" H_U,IBOX,MON - -BO_ 306 DATC_PE_03: 8 CLU - SG_ DATC_ModeDisp : 3|4@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_TempUnit : 5|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_AutoDisp : 9|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_IntakeDisp : 11|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_ChangeReqDisp : 13|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_AcDisp : 17|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_AqsDisp : 19|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_ClimateScnDisp : 21|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_DualDisp : 25|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_OffDisp : 27|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_OpSts : 30|3@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_RearManual : 33|2@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_FrDefLed : 37|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_SmartVentDisp : 39|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_AutoDefogBlink : 41|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_ADSDisp : 43|2@0+ (1,0) [0|0] "" H_U - SG_ DATC_IonClean : 45|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_CO2Warning : 47|2@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_SubBlowerDisp : 51|4@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_BeepReq : 55|4@0+ (1,0) [0|0] "" H_U,KBD,MON - SG_ DATC_MainBlowerDisp : 59|4@0+ (1,0) [0|0] "" H_U,IBOX - SG_ DATC_PsModeDisp : 63|4@0+ (1,0) [0|0] "" H_U,IBOX - -BO_ 1329 DATC_P_02: 8 CLU - SG_ DATC_AmbientTemp_C : 7|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_AmbientTemp_F : 23|8@0+ (1,0) [0|0] "" H_U,MON - -BO_ 305 DATC_PE_02: 8 CLU - SG_ DATC_DrTempDispC : 7|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON - SG_ DATC_Rear_DrTempDispC : 15|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON - SG_ DATC_DrTempDispF : 23|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON - SG_ DATC_Rear_DrTempDispF : 31|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON - SG_ DATC_PsTempDispC : 39|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON - SG_ Datc_RearPsTempDispC : 47|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON - SG_ DATC_PsTempDispF : 55|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON - SG_ DATC_RearPsTempDispF : 63|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON - -BO_ 304 DATC_PE_01: 8 CLU - SG_ DATC_Type : 7|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_VerMMMajor : 15|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_VerMMMinor : 23|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_VerBDFMajor : 31|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_VerBDMinor : 39|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_VerCSMajor : 47|8@0+ (1,0) [0|0] "" H_U,MON - SG_ DATC_VerCSMinor : 55|8@0+ (1,0) [0|0] "" H_U,MON - -BO_ 291 HU_CLU_PE_07: 8 H_U - SG_ NV_DS_Curve : 3|4@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_Merge : 7|4@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_RailCross : 9|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_FallingRocks : 11|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_SchoolZone : 13|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_AccidentBlack : 15|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_SpeedBump : 17|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_RoadKill : 19|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_Downhill : 21|2@0+ (1,0) [0|0] "" CLU - SG_ NV_DS_Fog : 23|2@0+ (1,0) [0|0] "" CLU - SG_ NV_Display_TG : 31|2@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_Charge : 39|16@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_Charge_Unit : 55|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ TBT_BarGraph100Level : 63|8@0+ (1,0) [0|100] "%" CLU,HUD - -BO_ 290 HU_CLU_PE_06: 8 H_U - SG_ NV_SD_SpdLimit2 : 3|4@0+ (10,0) [0|0] "km/h" CLU - SG_ NV_SD_SpdLimit1 : 7|4@0+ (10,0) [0|0] "km/h" CLU - SG_ NV_SD_EtcCam : 11|4@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_SpdLimit3 : 15|4@0+ (10,0) [0|0] "km/h" CLU - SG_ NV_SD_SignCam : 17|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_SignOverCam : 19|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_MobileCam : 21|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_FixedCam : 23|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_OverLoadCam : 25|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_ParkCam : 27|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_CutInCam : 29|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_BusOnlyCam : 31|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_ShoulderCam : 35|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_TrafficCam : 37|2@0+ (1,0) [0|0] "" CLU - SG_ NV_SD_PlateRcgCam : 39|2@0+ (1,0) [0|0] "" CLU - -BO_ 286 HU_CLU_PE_10: 8 H_U - SG_ Navi_TBTInfo : 63|8@0+ (1,0) [0|0] "" CGW,CLU - -BO_ 29 CLU_HU_E_00: 8 CLU - SG_ SYS_CLUVer : 7|16@0+ (1,0) [0|0] "" CUBIS,H_U - SG_ CLU_ClockInfoReq : 17|2@0+ (1,0) [0|0] "" H_U - SG_ CLU_DateInfoReq : 19|2@0+ (1,0) [0|0] "" H_U - -BO_ 27 AMP_HU_E_00: 8 AMP - SG_ SYS_AMPVer : 7|16@0+ (1,0) [0|0] "" H_U - -BO_ 23 HU_IPM_E_00: 8 H_U - SG_ C_ADrLNValueSet : 2|3@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ADrUNValueSet : 5|3@0+ (1,0) [0|0] "" DATC,IPM - SG_ SYS_Ver_Req : 7|2@0+ (1,0) [0|0] "" AMP,AVM,CLU,CUBIS,DATC,IPM - SG_ C_IMSRValueReq : 9|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_PSMNValueSet : 11|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_SCMNValueSet : 13|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ADrLURValueReq : 15|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ABuzzerNValueSet : 17|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_AlarmRValueReq : 19|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ArmWKeyNValueSet : 21|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_TwUnRValueReq : 23|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_TwUnNValueSet : 25|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_AutoMRFoldRValueReq : 27|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_AutoMRFoldNValueSet : 29|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ADrLRValueReq : 31|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ArmWKeyRValueReq : 33|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ABuzzerRValueReq : 35|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_ADrURValueReq : 37|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_PSMRValueReq : 39|2@0+ (1,0) [0|0] "" DATC,IPM - SG_ C_SCMRValueReq : 47|2@0+ (1,0) [0|0] "" DATC,IPM - -BO_ 277 HU_CLU_PE_02: 8 H_U - SG_ TBT_Display_Type : 7|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ TBT_Side_Street : 15|16@0+ (1,0) [0|0] "" CLU,HUD - SG_ TBT_Direction : 31|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ TBT_Distance_Turn_Point : 39|16@0+ (1,0) [0|0] "m" CLU,HUD - SG_ TBT_Combined_Side_Street : 51|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ TBT_Scale : 55|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ TBT_DistancetoTurnPoint : 59|4@0+ (1,0) [0|0] "times" CLU,HUD - SG_ TBT_Bar_Graph_Level : 63|4@0+ (10,0) [0|100] "" CLU,HUD - -BO_ 276 HU_CLU_PE_01: 8 H_U - SG_ HU_OpState : 6|7@0+ (1,0) [0|0] "" AMP,CLU - SG_ HU_Navi_On_Off : 7|1@0+ (1,0) [0|0] "" CLU,HUD - SG_ HU_Preset_Number : 12|5@0+ (1,1) [1|30] "" AMP,CLU - SG_ HU_Tuner_Area : 15|3@0+ (1,0) [0|0] "" AMP,CLU - SG_ HU_Track_Number : 23|16@0+ (1,0) [0|0] "" CLU - SG_ HU_Play_time_Sec : 39|6@0+ (1,0) [0|0] "" CLU - SG_ HU_Play_time_Min : 33|7@0+ (1,0) [0|0] "" CLU - SG_ HU_Play_time_Hour : 42|6@0+ (1,0) [0|0] "" CLU - SG_ HU_Disc_select_No : 59|4@0+ (1,0) [0|0] "" CLU - SG_ HU_Frequency : 52|9@0+ (1,0) [0|0] "" AMP,CLU - -BO_ 17 HU_AMP_E_10: 8 H_U - SG_ AMP_Beep2VolumeStep : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep2Frequency : 15|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep2Ch_OutputMask : 31|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep2DurationOn : 47|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep2DurationOff : 55|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep2NumberOfCycles : 63|8@0+ (1,0) [0|0] "" AMP - -BO_ 15 HU_AMP_E_08: 8 H_U - SG_ AMP_MainVolumeSet : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_BalanceSet : 15|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_FadeSet : 23|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_BassSet : 31|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_MidSet : 39|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_TrebleSet : 47|8@0+ (1,0) [0|0] "" AMP - -BO_ 14 HU_AMP_E_07: 8 H_U - SG_ AMP_HFVolumeStep : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_HFMainAudioCut : 15|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_HFChannelOutputMask : 23|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_HFChannelMuteMask : 39|16@0+ (1,0) [0|0] "" AMP - -BO_ 13 HU_AMP_E_06: 8 H_U - SG_ AMP_MTSVolumeStep : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_MTSMainAudioCut : 15|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_MTSChannelOutputMask : 23|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_MTSChannelMuteMask : 39|16@0+ (1,0) [0|0] "" AMP - -BO_ 12 HU_AMP_E_05: 8 H_U - SG_ AMP_NaviVolumeStep : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_NaviMainAudioCut : 15|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_NaviChannelOutputMask : 23|16@0+ (1,0) [0|0] "" AMP - SG_ AMP_NaviChannelMuteMask : 39|16@0+ (1,0) [0|0] "" AMP - -BO_ 11 HU_AMP_E_04: 8 H_U - SG_ AMP_Drive : 1|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_ConvertibleTop : 5|2@0+ (1,0) [0|0] "" AMP - -BO_ 10 HU_AMP_E_03: 8 H_U - SG_ AMP_CrtVehicleID : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_SPDIFMode : 11|4@0+ (1,0) [0|0] "" AMP - SG_ AMP_VersionReq : 17|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_UpdateStart : 25|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_UpdateEnd : 33|2@0+ (1,0) [0|0] "" AMP - -BO_ 9 HU_AMP_E_02: 8 H_U - SG_ AMP_Mute : 1|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_RearSpMute : 3|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_SurroundMode : 5|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_VEQMode : 7|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_AudioMode : 15|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_EQ : 17|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_Reset : 19|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_SPDIFMute : 21|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_DefaultBeep1 : 25|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_DefaultBeep2 : 29|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_BeatsMode : 33|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_VIPMode : 35|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_QLSMode : 37|2@0+ (1,0) [0|0] "" AMP - -BO_ 1288 HU_CLU_P_02: 8 H_U - SG_ NV_TIME_TYPE : 3|4@0+ (1,0) [0|0] "" CLU - SG_ NV_Hour : 15|8@0+ (1,0) [0|0] "" CLU - SG_ NV_Min : 23|8@0+ (1,0) [0|0] "" CLU - -BO_ 8 HU_AMP_E_01: 8 H_U - SG_ AMP_HFMode : 1|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_NaviMode : 3|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_MTSMode : 5|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_VSCMode : 7|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep1Mode : 9|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_Beep2Mode : 11|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_SDVCStep : 14|3@0+ (1,0) [0|0] "" AMP - SG_ AMP_ASDMode : 18|3@0+ (1,0) [0|0] "" AMP - SG_ AMP_SignalDoctor : 20|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_AutoVolume : 22|2@0+ (1,0) [0|0] "" AMP - -BO_ 1287 HU_CLU_P_01: 8 H_U - SG_ NV_DistToTurn_F1 : 3|4@0+ (1,0) [0|0] "" CLU - SG_ NV_DistToTurn_Unit : 7|4@0+ (1,0) [0|0] "" CLU - SG_ NV_DistToTurn_F3 : 11|4@0+ (1,0) [0|0] "" CLU - SG_ NV_DistToTurn_F2 : 15|4@0+ (1,0) [0|0] "" CLU - SG_ NV_DistToTurn_I1 : 23|16@0+ (1,0) [0|0] "" CLU - SG_ NV_DistToTurn_I2 : 39|16@0+ (1,0) [0|0] "" CLU - SG_ NV_DistToTurn_I3 : 55|16@0+ (1,0) [0|0] "" CLU - -BO_ 1286 HU_CLU_P_00: 8 H_U - SG_ NV_EstDist_F : 3|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_EstDist_Unit : 7|4@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_EstHour : 15|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_EstMin : 23|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_Azimuth : 31|8@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_EstDist_I : 39|16@0+ (1,0) [0|0] "" CLU,HUD - SG_ NV_EstimTimeType : 49|2@0+ (1,0) [0|0] "" CGW,CLU,HUD - SG_ NV_EstimTimeFormat : 51|2@0+ (1,0) [0|0] "" CGW,CLU,HUD - -BO_ 1284 HU_AMP_P_01: 8 H_U - SG_ HU_VehicleSpeed : 7|8@0+ (1,0) [0|0] "" AMP - SG_ AMP_SetMaxMainVolStep : 9|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_LKASWarningOn : 21|2@0+ (1,0) [0|0] "" AMP - SG_ AMP_BSDWarningOn : 23|2@0+ (1,0) [0|0] "" AMP - -BO_ 256 HU_MON_PE_01: 8 H_U - SG_ HU_Type : 7|8@0+ (1,0) [0|0] "" AMP,CGW,CLU,HUD,KMA_TMU - SG_ HU_VerMajor : 15|8@0+ (1,0) [0|0] "" AMP,CLU,KMA_TMU,MON - SG_ HU_VerMinor : 23|8@0+ (1,0) [0|0] "" AMP,CLU,KMA_TMU,MON - SG_ HU_DistributeInfo : 31|8@0+ (1,0) [0|0] "" AMP,CGW,CLU,KMA_TMU,MON,RRC - SG_ HU_SubVerMajor : 39|8@0+ (1,0) [0|0] "" AMP,MON - SG_ HU_SubVerMinor : 47|8@0+ (1,0) [0|0] "" AMP,MON - SG_ HU_SDARSVersion : 55|8@0+ (1,0) [0|0] "" AMP,MON - SG_ HU_AdasSupport : 58|3@0+ (1,0) [0|0] "" CGW,CLU - -BO_ 1092 NM_CLOCK: 8 CLOCK - SG_ Destination_CLOCK : 7|8@0+ (1,0) [0|0] "" HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_CLOCK : 13|2@0+ (1,0) [0|0] "" HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_CLOCK : 10|3@0+ (1,0) [0|0] "" HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1108 NM_HUD: 8 HUD - SG_ Destination_HUD : 7|8@0+ (1,0) [0|0] "" CLOCK,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_HUD : 13|2@0+ (1,0) [0|0] "" CLOCK,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_HUD : 10|3@0+ (1,0) [0|0] "" CLOCK,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1088 NM_H_U: 8 H_U - SG_ Destination_H_U : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_H_U : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_H_U : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1091 NM_DATC: 8 DATC - SG_ Destination_DATC : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_DATC : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_DATC : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1105 NM_CCP: 8 CCP - SG_ Destination_CCP : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_CCP : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_CCP : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1100 NM_KMA_TMU: 8 KMA_TMU - SG_ Destination_KMA_TMU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_KMA_TMU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_KMA_TMU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1098 NM_CUBIS: 8 CUBIS - SG_ Destination_CUBIS : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_CUBIS : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_CUBIS : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1099 NM_TMU: 8 TMU - SG_ Destination_TMU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_TMU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_TMU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1095 NM_IPM: 8 IPM - SG_ Destination_IPM : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_IPM : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_IPM : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1107 NM_RSE_R: 8 RSE_R - SG_ Destination_RSE_R : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_RSE_R : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_RSE_R : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1093 NM_RRC: 8 RRC - SG_ Destination_RRC : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_RRC : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_RRC : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1109 NM_CGW: 8 CGW - SG_ Destination_CGW : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_CGW : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_CGW : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1106 NM_RSE_L: 8 RSE_L - SG_ Destination_RSE_L : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_RSE_L : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_RSE_L : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1096 NM_AMP: 8 AMP - SG_ Destination_AMP : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_AMP : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_AMP : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1103 NM_EDT: 8 EDT - SG_ Destination_EDT : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_EDT : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_EDT : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1110 NM_SWRC: 8 SWRC - SG_ Destination_SWRC : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_SWRC : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_SWRC : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,IBOX,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1102 NM_IBOX: 8 IBOX - SG_ Destination_IBOX : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_IBOX : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,CLU,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_IBOX : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,CLU,FHCU,ASD,MON,AVM,KBD - -BO_ 1101 NM_CLU: 8 CLU - SG_ Destination_CLU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,FHCU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_CLU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,FHCU,ASD,MON,AVM,KBD - SG_ NMCommandCode_CLU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,FHCU,ASD,MON,AVM,KBD - -BO_ 1097 NM_FHCU: 8 FHCU - SG_ Destination_FHCU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,ASD,MON,AVM,KBD - SG_ NMSleepFlag_FHCU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,ASD,MON,AVM,KBD - SG_ NMCommandCode_FHCU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,ASD,MON,AVM,KBD - -BO_ 1094 NM_ASD: 8 ASD - SG_ Destination_ASD : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,MON,AVM,KBD - SG_ NMSleepFlag_ASD : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,MON,AVM,KBD - SG_ NMCommandCode_ASD : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,MON,AVM,KBD - -BO_ 1089 NM_MON: 8 MON - SG_ Destination_MON : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,AVM,KBD - SG_ NMSleepFlag_MON : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,AVM,KBD - SG_ NMCommandCode_MON : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,AVM,KBD - -BO_ 1104 NM_AVM: 8 AVM - SG_ Destination_AVM : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,KBD - SG_ NMSleepFlag_AVM : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,KBD - SG_ NMCommandCode_AVM : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,KBD - -BO_ 1090 NM_KBD: 8 KBD - SG_ Destination_KBD : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM - SG_ NMSleepFlag_KBD : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM - SG_ NMCommandCode_KBD : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM - diff --git a/opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc b/opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc deleted file mode 100644 index 3524f9b21a..0000000000 --- a/opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc +++ /dev/null @@ -1,549 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 128 EMS_DCT1: 8 XXX - SG_ PV_AV_CAN : 0|8@1+ (0.3906,0) [0|99.603] "%" XXX - SG_ TQ_STND : 8|6@1+ (10,0) [0|630] "Nm" XXX - SG_ F_N_ENG : 14|1@1+ (1,0) [0|1] "" XXX - SG_ F_SUB_TQI : 15|1@1+ (1,0) [0|1] "" XXX - SG_ N : 16|16@1+ (0.25,0) [0|16383.8] "rpm" XXX - SG_ TQI_ACOR : 32|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQFR : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQI : 48|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ CF_Ems_Alive : 56|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Ems_ChkSum : 60|4@1+ (1,0) [0|15] "" XXX - - -BO_ 129 EMS_DCT2: 8 XXX - SG_ CR_Ems_SoakTimeExt : 0|6@1+ (5,0) [0|315] "Min" XXX - SG_ BRAKE_ACT : 6|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Ems_EngOperStat : 8|8@1+ (1,0) [0|255] "" XXX - SG_ CR_Ems_IndAirTemp : 16|8@1+ (0.75,-48) [-48|143.25] "" XXX - SG_ CF_Ems_Alive2 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Ems_ChkSum2 : 60|4@1+ (1,0) [0|15] "" XXX - - -BO_ 160 EngFrzFrm1: 8 XXX - SG_ PID_04h : 0|8@1+ (0.392157,0) [0|100] "%" XXX - SG_ PID_05h : 8|8@1+ (1,-40) [-40|215] "" XXX - SG_ PID_0Ch : 16|16@1+ (0.25,0) [0|16383.8] "rpm" XXX - SG_ PID_0Dh : 32|8@1+ (1,0) [0|255] "km/h" XXX - SG_ PID_11h : 40|8@1+ (0.392157,0) [0|100] "%" XXX - SG_ PID_03h : 48|16@1+ (1,0) [0|65535] "" XXX - - -BO_ 161 EngFrzFrm2: 8 XXX - SG_ PID_06h : 0|8@1+ (0.78125,-100) [-100|99.22] "%" XXX - SG_ PID_07h : 8|8@1+ (0.78125,-100) [-100|99.22] "%" XXX - SG_ PID_08h : 16|8@1+ (0.78125,-100) [-100|99.22] "%" XXX - SG_ PID_09h : 24|8@1+ (0.78125,-100) [-100|99.22] "%" XXX - SG_ PID_0Bh : 32|8@1+ (1,0) [0|255] "kPa" XXX - SG_ PID_23h : 40|16@1+ (10,0) [0|655350] "kPa" XXX - - -BO_ 304 YRS1: 8 XXX - SG_ CR_Yrs_Yr : 0|16@1+ (0.005,-163.84) [-163.84|163.83] "" XXX - SG_ CF_Yrs_SnsStat1 : 16|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Yrs_YrStat : 20|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Yrs_LatAc : 32|16@1+ (0.000127465,-4.17677) [-4.17677|4.17652] "g" XXX - SG_ CR_Yrs_MsgCnt1 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Yrs_LatAcStat1 : 52|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Yrs_Crc1 : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 305 YRS3: 8 XXX - SG_ CR_Yrs_YawAcc : 0|16@1+ (0.125,-4096) [-4096|4095.75] "" XXX - SG_ CF_Yrs_YawAccStat : 20|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Yrs_Ax : 32|16@1+ (0.000127465,-4.17677) [-4.17677|4.17652] "g" XXX - SG_ CR_Yrs_MsgCnt3 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Yrs_AxStat : 52|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Yrs_Crc3 : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 320 YRS2: 8 XXX - SG_ CF_Yrs_McuStat : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CF_Yrs_SnsStat2 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ CF_Yrs_ExtSysStat : 32|8@1+ (1,0) [0|255] "" XXX - SG_ CR_Yrs_Diag : 40|8@1+ (1,0) [0|255] "" XXX - SG_ CR_Yrs_MsgCnt2 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Yrs_Type : 52|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Yrs_Crc2 : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 339 TCS1: 8 XXX - SG_ TCS_REQ : 0|1@1+ (1,0) [0|1] "" XXX - SG_ MSR_C_REQ : 1|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_PAS : 2|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_GSC : 3|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Esc_LimoInfo : 4|2@1+ (1,0) [0|3] "" XXX - SG_ ABS_DIAG : 6|1@1+ (1,0) [0|1] "" XXX - SG_ ABS_DEF : 7|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_DEF : 8|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_CTL : 9|1@1+ (1,0) [0|1] "" XXX - SG_ ABS_ACT : 10|1@1+ (1,0) [0|1] "" XXX - SG_ EBD_DEF : 11|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_PAS : 12|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_DEF : 13|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_CTL : 14|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_MFRN : 15|1@1+ (1,0) [0|1] "" XXX - SG_ DBC_CTL : 16|1@1+ (1,0) [0|1] "" XXX - SG_ DBC_PAS : 17|1@1+ (1,0) [0|1] "" XXX - SG_ DBC_DEF : 18|1@1+ (1,0) [0|1] "" XXX - SG_ HAC_CTL : 19|1@1+ (1,0) [0|1] "" XXX - SG_ HAC_PAS : 20|1@1+ (1,0) [0|1] "" XXX - SG_ HAC_DEF : 21|1@1+ (1,0) [0|1] "" XXX - SG_ ESS_STAT : 22|2@1+ (1,0) [0|3] "" XXX - SG_ TQI_TCS : 24|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQI_MSR : 32|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ CF_Esc_BrkCtl : 48|1@1+ (1,0) [0|1] "" XXX - SG_ ESC_OFF_STEP : 49|2@1+ (1,0) [0|3] "" XXX - SG_ _4WD_Status : 51|1@1+ (1,0) [0|1] "" XXX - SG_ AliveCounter_TCS1 : 52|4@1+ (1,0) [0|1] "" XXX - SG_ CheckSum_TCS1 : 56|8@1+ (1,0) [0|1] "" XXX - - -BO_ 356 VSM1: 8 XXX - SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" XXX - SG_ CF_Esc_Act : 12|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Esc_CtrMode : 13|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Esc_Def : 16|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Esc_AliveCnt : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Esc_Chksum : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 357 VSM2: 8 XXX - SG_ CR_Mdps_StrTq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" XXX - SG_ CR_Mdps_OutTq : 12|12@1+ (0.1,-204.8) [-204.8|204.7] "" XXX - SG_ CF_Mdps_Def : 24|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Mdps_SErr : 25|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Mdps_AliveCnt : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Mdps_Chksum : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 399 EMS_H2: 8 XXX - SG_ R_TqAcnApvC : 0|8@1+ (0.2,0) [0|51] "Nm" XXX - SG_ R_PAcnC : 8|8@1+ (125,0) [0|31875] "hPa" XXX - SG_ TQI_B : 16|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ SLD_VS : 24|8@1+ (1,0) [0|255] "km/h" XXX - SG_ CF_CdaStat : 32|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Ems_IsgStat : 35|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Ems_OilChg : 38|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_EtcLimpMod : 39|1@1+ (1,0) [0|1] "" XXX - SG_ R_NEngIdlTgC : 40|8@1+ (10,0) [0|2550] "rpm" XXX - SG_ CF_Ems_UpTarGr : 48|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_DownTarGr : 49|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_DesCurGr : 50|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Ems_SldAct : 54|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_SldPosAct : 55|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_HPresStat : 56|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_IsgBuz : 57|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_IdlStpFCO : 58|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_FCopen : 59|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_ActEcoAct : 60|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_EngRunNorm : 61|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_IsgStat2 : 62|2@1+ (2,0) [0|3] "" XXX - - -BO_ 497 TCS5: 8 XXX - SG_ ABS_W_LAMP : 0|1@1+ (1,0) [0|1] "" XXX - SG_ EBD_W_LAMP : 1|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_OFF_LAMP : 2|1@1+ (1,0) [0|1] "" XXX - SG_ TCS_LAMP : 3|2@1+ (1,0) [0|3] "" XXX - SG_ DBC_W_LAMP : 5|1@1+ (1,0) [0|1] "" XXX - SG_ DBC_F_LAMP : 6|2@1+ (1,0) [0|3] "" XXX - SG_ ODOMETER_LEFT : 8|4@1+ (1,0) [0|15] "m" XXX - SG_ ODOMETER_RIGHT : 12|4@1+ (1,0) [0|15] "m" XXX - SG_ WHEEL_FL : 16|12@1+ (0.125,0) [0|511.875] "km/h" XXX - SG_ WHEEL_FR : 28|12@1+ (0.125,0) [0|511.875] "km/h" XXX - SG_ WHEEL_RL : 40|12@1+ (0.125,0) [0|511.875] "km/h" XXX - SG_ WHEEL_RR : 52|12@1+ (0.125,0) [0|511.875] "km/h" XXX - - -BO_ 544 ESP2: 8 XXX - SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX - SG_ ESP2_AliveCounter_LSB : 11|3@1+ (1,0) [0|7] "" XXX - SG_ LAT_ACCEL_STAT : 14|1@1+ (1,0) [0|1] "" XXX - SG_ LAT_ACCEL_DIAG : 15|1@1+ (1,0) [0|1] "" XXX - SG_ LONG_ACCEL : 16|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX - SG_ ESP2_AliveCounter_MSB : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ESP2_Checksum_LSB : 28|2@1+ (1,0) [0|3] "" XXX - SG_ LONG_ACCEL_STAT : 30|1@1+ (1,0) [0|1] "" XXX - SG_ LONG_ACCEL_DIAG : 31|1@1+ (1,0) [0|1] "" XXX - SG_ CYL_PRES : 32|12@1+ (0.1,0) [0|409.5] "Bar" XXX - SG_ ESP12_Checksum_MSB : 44|2@1+ (1,0) [0|3] "" XXX - SG_ CYL_PRES_STAT : 46|1@1+ (1,0) [0|1] "" XXX - SG_ CYL_PRESS_DIAG : 47|1@1+ (1,0) [0|1] "" XXX - SG_ YAW_RATE : 48|13@1+ (0.01,-40.95) [-40.95|40.96] "" XXX - SG_ CYL_PRES_FLAG : 61|1@1+ (1,0) [0|1] "" XXX - SG_ YAW_RATE_STAT : 62|1@1+ (1,0) [0|1] "" XXX - SG_ YAW_RATE_DIAG : 63|1@1+ (1,0) [0|1] "" XXX - - -BO_ 608 EMS6: 8 XXX - SG_ TQI_MIN : 0|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQI : 8|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQI_TARGET : 16|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ GLOW_STAT : 24|1@1+ (1,0) [0|1] "" XXX - SG_ CRUISE_LAMP_M : 25|1@1+ (1,0) [0|1] "" XXX - SG_ CRUISE_LAMP_S : 26|1@1+ (1,0) [0|1] "" XXX - SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ENG_STAT : 28|3@1+ (1,0) [0|7] "" XXX - SG_ SOAK_TIME_ERROR : 31|1@1+ (1,0) [0|1] "" XXX - SG_ SOAK_TIME : 32|8@1+ (1,0) [0|255] "Min" XXX - SG_ TQI_MAX : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [-35.625|60] "" XXX - SG_ Checksum : 56|4@1+ (1,0) [0|15] "" XXX - SG_ AliveCounter : 60|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Ems_AclAct : 62|2@1+ (1,0) [0|3] "" XXX - - -BO_ 672 EMS5: 8 XXX - SG_ ECGPOvrd : 0|1@1+ (1,0) [0|1] "" XXX - SG_ QECACC : 1|1@1+ (1,0) [0|1] "" XXX - SG_ ECFail : 2|1@1+ (1,0) [0|1] "" XXX - SG_ SwitchOffCondExt : 3|1@1+ (1,0) [0|1] "" XXX - SG_ BLECFail : 4|1@1+ (1,0) [0|1] "" XXX - SG_ AliveCounter : 5|2@1+ (1,0) [0|3] "" XXX - SG_ Byte0Parity : 7|1@1+ (1,0) [0|1] "" XXX - SG_ FA_PV_CAN : 8|8@1+ (0.3906,0) [0|99.2] "%" XXX - SG_ IntAirTemp : 16|8@1+ (0.75,-48) [-48|143.25] "" XXX - SG_ STATE_DC_OBD : 24|7@1+ (1,0) [0|127] "" XXX - SG_ INH_DC_OBD : 31|1@1+ (1,0) [0|1] "" XXX - SG_ CTR_IG_CYC_OBD : 32|16@1+ (1,0) [0|65535] "" XXX - SG_ CTR_CDN_OBD : 48|16@1+ (1,0) [0|65535] "" XXX - - -BO_ 688 SAS1: 8 XXX - SG_ SAS_Angle : 0|16@1+ (0.1,0) [-3276.8|3276.7] "Deg" XXX - SG_ SAS_Speed : 16|8@1+ (4,0) [0|1016] "" XXX - SG_ SAS_Stat : 24|8@1+ (1,0) [0|255] "" XXX - SG_ MsgCount : 32|4@1+ (1,0) [0|15] "" XXX - SG_ CheckSum : 36|4@1+ (1,0) [0|15] "" XXX - - -BO_ 790 EMS1: 8 XXX - SG_ SWI_IGK : 0|1@1+ (1,0) [0|1] "" XXX - SG_ F_N_ENG : 1|1@1+ (1,0) [0|1] "" XXX - SG_ ACK_TCS : 2|1@1+ (1,0) [0|1] "" XXX - SG_ PUC_STAT : 3|1@1+ (1,0) [0|1] "" XXX - SG_ TQ_COR_STAT : 4|2@1+ (1,0) [0|3] "" XXX - SG_ RLY_AC : 6|1@1+ (1,0) [0|1] "" XXX - SG_ F_SUB_TQI : 7|1@1+ (1,0) [0|1] "" XXX - SG_ TQI_ACOR : 8|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ N : 16|16@1+ (0.25,0) [0|16383.8] "rpm" XXX - SG_ TQI : 32|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ TQFR : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ VS : 48|8@1+ (1,0) [0|254] "km/h" XXX - SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0) [0|2] "" XXX - - -BO_ 809 EMS2: 8 XXX - SG_ TQ_STND : 0|6@1+ (10,0) [0|630] "Nm" XXX - SG_ CAN_VERS : 0|6@1+ (1,0) [0|7.7] "" XXX - SG_ CONF_TCU : 0|6@1+ (1,0) [0|63] "" XXX - SG_ OBD_FRF_ACK : 0|6@1+ (1,0) [0|63] "" XXX - SG_ MUL_CODE : 6|2@1+ (1,0) [0|3] "" XXX - SG_ TEMP_ENG : 8|8@1+ (0.75,-48) [-48|143.25] "" XXX - SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0) [0|1.99155] "" XXX - SG_ VB_OFF_ACT : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ACK_ES : 25|1@1+ (1,0) [0|1] "" XXX - SG_ CONF_MIL_FMY : 26|3@1+ (1,0) [0|7] "" XXX - SG_ OD_OFF_REQ : 29|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_ACT : 30|1@1+ (1,0) [0|1] "" XXX - SG_ CLU_ACK : 31|1@1+ (1,0) [0|1] "" XXX - SG_ BRAKE_ACT : 32|2@1+ (1,0) [0|3] "" XXX - SG_ ENG_CHR : 34|4@1+ (1,0) [0|15] "" XXX - SG_ GP_CTL : 38|2@1+ (1,0) [0|3] "" XXX - SG_ TPS : 40|8@1+ (0.469484,-15.0235) [-15.0235|104.695] "%" XXX - SG_ PV_AV_CAN : 48|8@1+ (0.3906,0) [0|99.603] "%" XXX - SG_ ENG_VOL : 56|8@1+ (0.1,0) [0|25.5] "liter" XXX - - -BO_ 848 FATC: 8 XXX - SG_ CR_Fatc_TqAcnOut : 0|8@1+ (0.2,0) [0|50.8] "Nm" XXX - SG_ CF_Fatc_AcnRqSwi : 8|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_AcnCltEnRq : 9|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_EcvFlt : 10|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_BlwrOn : 11|1@1+ (1,0) [0|1] "" XXX - SG_ CF_FATC_Iden : 12|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Fatc_BlwrMax : 14|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_EngStartReq : 15|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_IsgStopReq : 16|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_CtrInf : 17|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Fatc_MsgCnt : 20|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Fatc_OutTemp : 24|8@1+ (0.5,-40) [-40|60] "" XXX - SG_ CR_Fatc_OutTempSns : 32|8@1+ (0.5,-40) [-40|60] "" XXX - SG_ CF_Fatc_Compload : 40|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Fatc_ActiveEco : 43|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_AutoActivation : 44|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_DefSw : 45|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_PtcRlyStat : 46|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Fatc_ChkSum : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 880 TCU3: 8 XXX - SG_ N_TGT_LUP : 0|8@1+ (10,500) [500|3040] "rpm" XXX - SG_ SLOPE_TCU : 8|6@1+ (0.5,-16) [-16|15.5] "%" XXX - SG_ CF_Tcu_InhCda : 14|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_IsgInhib : 15|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_BkeOnReq : 16|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_NCStat : 18|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_TarGr : 20|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Tcu_ShfPatt : 24|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Tcu_InhVis : 28|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_PRelReq : 29|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_ITPhase : 30|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_ActEcoRdy : 31|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_TqGrdLim : 32|8@1+ (10,0) [0|2540] "Nm/s" XXX - SG_ CR_Tcu_IsgTgtRPM : 40|8@1+ (20,0) [0|3500] "rpm" XXX - SG_ TQI_TCU_INC : 48|8@1+ (0.390625,0) [0|99.6094] "%" XXX - SG_ CF_Tcu_SbwPInfo : 56|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_SptRdy : 57|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_Alive3 : 58|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_ChkSum3 : 60|4@1+ (1,0) [0|15] "" XXX - - -BO_ 898 EMS9: 8 XXX - SG_ CF_Ems_BrkReq : 0|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_DnShftReq : 1|4@1+ (1,0) [0|14] "" XXX - SG_ CF_Ems_RepModChk : 5|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_DecelReq : 8|12@1+ (0.001,-4.094) [-4.094|0] "m/s^2" XXX - SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0) [0|4094] "hPa" XXX - SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40) [0|254] "" XXX - SG_ CF_Ems_PumpTPres : 40|8@1+ (3.13725,0) [0|800] "kPa" XXX - SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41) [-40|60] "" XXX - SG_ CF_Ems_OPSFail : 56|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_ECTTRQLIM : 57|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1,0) [0|15] "" XXX - - -BO_ 1075 EPB1: 8 XXX - SG_ EPB_I_LAMP : 0|4@1+ (1,0) [0|15] "" XXX - SG_ EPB_F_LAMP : 4|2@1+ (1,0) [0|3] "" XXX - SG_ EPB_ALARM : 6|2@1+ (1,0) [0|3] "" XXX - SG_ EPB_CLU : 8|8@1+ (1,0) [0|255] "" XXX - SG_ EPB_SWITCH : 16|2@1+ (1,0) [0|3] "" XXX - SG_ EPB_RBL : 18|1@1+ (1,0) [0|1] "" XXX - SG_ EPB_STATUS : 19|3@1+ (1,0) [0|7] "" XXX - SG_ EPB_FRC_ERR : 22|2@1+ (1,0) [0|3] "" XXX - SG_ EPB_DBF_STAT : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_ACK : 25|1@1+ (1,0) [0|1] "" XXX - SG_ EPB_DBF_REQ : 26|1@1+ (1,0) [0|1] "" XXX - SG_ EPB_FAIL : 29|3@1+ (1,0) [0|7] "" XXX - SG_ EPB_FORCE : 32|12@1+ (1,-1000) [-1000|3000] "" XXX - SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0) [0|2.54] "g" XXX - - -BO_ 1087 TCU1: 8 XXX - SG_ ETL_TCU : 0|8@1+ (2,0) [0|508] "Nm" XXX - SG_ CUR_GR : 8|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Tcu_Alive : 12|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_ChkSum : 14|2@1+ (1,0) [0|3] "" XXX - SG_ VS_TCU : 16|8@1+ (1,0) [0|254] "km/h" XXX - SG_ FAN_CTRL_TCU : 24|2@1+ (1,0) [0|3] "" XXX - SG_ BRAKE_ACT_TCU : 26|2@1+ (1,0) [0|3] "" XXX - SG_ FUEL_CUT_TCU : 28|1@1+ (1,0) [0|1] "" XXX - SG_ INH_FUEL_CUT : 29|1@1+ (1,0) [0|1] "" XXX - SG_ IDLE_UP_TCU : 30|1@1+ (1,0) [0|1] "" XXX - SG_ N_INC_TCU : 31|1@1+ (1,0) [0|1] "" XXX - SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15|15] "" XXX - SG_ N_TC_RAW : 40|16@1+ (0.25,0) [0|16383.5] "rpm" XXX - SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0) [0|0.992188] "km/h" XXX - - -BO_ 1088 TCU2: 8 XXX - SG_ ETL_TCU : 0|8@1+ (2,0) [0|508] "Nm" XXX - SG_ CUR_GR : 8|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Tcu_Alive : 12|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_ChkSum : 14|2@1+ (1,0) [0|3] "" XXX - SG_ VS_TCU : 16|8@1+ (1,0) [0|254] "km/h" XXX - SG_ FAN_CTRL_TCU : 24|2@1+ (1,0) [0|3] "" XXX - SG_ BRAKE_ACT_TCU : 26|2@1+ (1,0) [0|3] "" XXX - SG_ FUEL_CUT_TCU : 28|1@1+ (1,0) [0|1] "" XXX - SG_ INH_FUEL_CUT : 29|1@1+ (1,0) [0|1] "" XXX - SG_ IDLE_UP_TCU : 30|1@1+ (1,0) [0|1] "" XXX - SG_ N_INC_TCU : 31|1@1+ (1,0) [0|1] "" XXX - SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15|15] "" XXX - SG_ N_TC_RAW : 40|16@1+ (0.25,0) [0|16383.5] "rpm" XXX - SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0) [0|0.992188] "km/h" XXX - - -BO_ 1200 WHL_SPD: 8 XXX - SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0) [0|511.969] "km/h" XXX - SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0) [0|511.969] "km/h" XXX - SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0) [0|511.969] "km/h" XXX - SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0) [0|511.969] "km/h" XXX - - -BO_ 1201 WHL_PUL: 8 XXX - SG_ WHL_PUL_FL : 0|8@1+ (0.5,0) [0|127.5] "pulse count" XXX - SG_ WHL_PUL_FR : 8|8@1+ (0.5,0) [0|127.5] "pulse count" XXX - SG_ WHL_PUL_RL : 16|8@1+ (0.5,0) [0|127.5] "pulse count" XXX - SG_ WHL_PUL_RR : 24|8@1+ (0.5,0) [0|127.5] "pulse count" XXX - SG_ WHL_DIR_FL : 32|2@1+ (1,0) [0|3] "" XXX - SG_ WHL_DIR_FR : 34|2@1+ (1,0) [0|3] "" XXX - SG_ WHL_DIR_RL : 36|2@1+ (1,0) [0|3] "" XXX - SG_ WHL_DIR_RR : 38|2@1+ (1,0) [0|3] "" XXX - SG_ WHL_PUL_Chksum : 56|8@1+ (1,0) [0|255] "" XXX - - -BO_ 1264 CLU1: 8 XXX - SG_ CF_Clu_CruiseSwState : 0|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Blr_MaxStat : 3|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_SldMainSW : 4|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_ParityBit1 : 5|1@1+ (1,0) [0|1] "pulse count" XXX - SG_ CF_Clu_SPEED_UNIT : 6|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_ParkBrakeSw : 7|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0) [0|255.5] "km/h or MPH" XXX - SG_ CF_Clu_AliveCounter : 17|7@1+ (1,0) [0|127] "" XXX - SG_ CF_Clu_CruiseSwMain : 24|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_VanzDecimal : 25|2@1+ (1,0) [0|0.375] "" XXX - SG_ VEHICLE_INFO : 27|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_StrRlyState : 30|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_SMKOption : 31|1@1+ (1,0) [0|1] "" XXX - SG_ R_TqAcnOutC : 32|8@1+ (1,0) [0|51] "Nm" XXX - SG_ CF_Clu_Odometer : 40|24@1+ (0.1,0) [0|1.67772e+006] "km" XXX - - -BO_ 1265 CLU3: 8 XXX - SG_ CF_Clu_AcnRqSwi : 0|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_AcnCltEnRq : 1|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_RefDetMod : 2|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_DefoggerRly : 5|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_LowfuelWarn : 16|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_SportsModeSwi : 18|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_ALightStat : 20|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_FrtFog : 21|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_DetentOut : 22|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HeadLampTail : 23|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_TrailerMode : 24|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_DTE : 25|10@1+ (1,0) [0|1023] "" XXX - SG_ CF_Clu_TripUnit : 35|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_IsaMainSW : 37|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_FlexSteerSW : 40|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_AvsmCur : 41|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HudSpeedset : 42|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HudTbtSet : 43|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HudSccSet : 44|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HudLdwsSet : 45|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HudDisSet : 46|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HudFontSizeSet : 47|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_HudFontColorSet : 49|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_HudBrightSet : 51|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_HudHeightSet : 53|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_CluInfo : 55|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_RheostatLevel : 56|5@1+ (1,0) [0|31] "" XXX - SG_ CF_Clu_DrivinglampStat : 61|3@1+ (1,0) [0|7] "" XXX - - -BO_ 1349 EMS4: 8 XXX - SG_ IMMO_LAMP_STAT : 0|1@1+ (1,0) [0|1] "" XXX - SG_ L_MIL : 1|1@1+ (1,0) [0|1] "" XXX - SG_ IM_STAT : 2|1@1+ (1,0) [0|1] "" XXX - SG_ AMP_CAN : 3|5@1+ (10.7316,458.98) [458.98|791.66] "mmHg" XXX - SG_ FCO : 8|16@1+ (0.128,0) [0|8388.48] "ul" XXX - SG_ VB : 24|8@1+ (0.101563,0) [0|25.8984] "V" XXX - SG_ TEMP_FUEL : 48|8@1+ (0.75,-48) [-48|143.25] "" XXX - SG_ Split_Stat : 56|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Ems_IsaAct : 57|1@1+ (1,0) [0|1] "" XXX - - -BO_ 1435 TCU4: 8 XXX - SG_ CF_TCU_WarnMsg : 0|3@1+ (1,0) [0|7] "" XXX - SG_ CF_TCU_WarnImg : 3|1@1+ (1,0) [0|1] "" XXX - SG_ CF_TCU_WarnSnd : 4|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_EolStat : 5|1@1+ (1,0) [0|1] "" XXX - SG_ CR_Tcu_GearSelDisp2 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Tcu_StRelStat : 12|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_DriWarn1 : 13|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Tcu_DriWarn2 : 16|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_DrivingModeReq : 18|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Tcu_DrivingModeDisp : 22|4@1+ (1,0) [0|0] "" XXX - SG_ CF_Tcu_SiCluster : 26|5@1+ (1,0) [0|0] "" XXX - SG_ CF_Tcu_DSmode_Inf : 31|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Tcu_Alive4 : 58|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Tcu_ChkSum4 : 60|4@1+ (1,0) [0|15] "" XXX - - -BO_ 1508 MDPS1: 8 XXX - SG_ CF_Mdps_WLmp : 1|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Mdps_ALTRequest : 5|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Mdps_Flex : 8|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Mdps_FlexDisp : 11|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Mdps_CurrMode : 12|2@1+ (1,0) [0|3] "" XXX - - -BO_ 1680 CLU2: 8 XXX - SG_ CF_Clu_IGNSw : 0|3@1+ (1,0) [0|7] "" XXX - SG_ RKE_CMD : 3|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_DrvDrSw : 6|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_DrvKeyLockSw : 8|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_DrvKeyUnlockSw : 9|1@1+ (1,0) [0|1] "" XXX - SG_ PIC_Lock : 10|3@1+ (1,0) [0|7] "" XXX - SG_ PIC_Unlock : 13|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_DrvSeatBeltSw : 16|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_TrunkTgSw : 18|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_AstSeatBeltSw : 20|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_HoodSw : 22|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_TurnSigLh : 24|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_TurnSigRh : 25|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_LdwsLkasSW : 26|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_WiperIntT : 27|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_WiperIntSW : 30|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_WiperLow : 31|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_WiperHigh : 32|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_WiperAuto : 33|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_RainSnsStat : 34|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_HeadLampLow : 37|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HeadLampHigh : 38|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_AltLStatus : 39|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_SwiGearR : 43|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_SWL_Stat : 45|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Clu_ActiveEcoSW : 48|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_HazardSW : 49|1@1+ (1,0) [0|1] "" XXX - SG_ CF_Clu_AliveCnt2 : 50|4@1+ (1,0) [0|15] "" XXX - SG_ CF_Clu_AstDrSw : 54|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_LkasDispMode : 56|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_AutoLightLevel : 58|2@1+ (1,0) [0|3] "" XXX - SG_ CF_Clu_SunRoofOpenState : 60|1@1+ (1,0) [0|1] "" XXX - - diff --git a/opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc b/opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc deleted file mode 100644 index b3bde5fd6b..0000000000 --- a/opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc +++ /dev/null @@ -1,1703 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: IAP ODS _4WD BCM HUD DATC MDPS AAF_Tester AEMC SMK _4WD EPB CUBIS MTS TMU EVP CGW TPMS LPI DI_BOX SPAS EMS LCA TCU IBOX FATC AFLS FPCM SCC AHLS AVM ABS SNV OPI PGS SAS AAF Dummy LDWS_LKAS LVR ESC PSB CLU ECS ACU REA - -BO_ 1532 ODS13: 5 ODS - SG_ CR_Ods_ID : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_Chksum_H : 8|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - SG_ CR_Ods_Chksum_L : 16|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - SG_ CR_Ods_RomID_H : 24|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - SG_ CR_Ods_RomID_L : 32|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy - -BO_ 1531 ODS12: 8 ODS - SG_ CR_Ods_SerNum0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum3 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum4 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum5 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum6 : 48|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - SG_ CR_Ods_SerNum7 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" ACU - -BO_ 1530 ODS11: 8 ODS - SG_ CF_Ods_PrcCmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy - SG_ CF_Ods_BtsFail : 3|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy - SG_ CF_Ods_AcuRcvSN : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_EolCal : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_PsFail : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_EcuFail : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_WgtStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CF_Ods_OccStat : 16|1@1+ (1.0,0.0) [0.0|1.0] "" ACU - SG_ CR_Wcs_ErrStat : 32|8@1+ (1.0,0.0) [0.0|63.0] "" ACU - SG_ CR_Wcs_ClassStat : 40|8@1+ (1.0,0.0) [0.0|4.0] "" ACU,BCM - -BO_ 1017 ECS12: 4 ECS - SG_ Height_FL : 0|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - SG_ Height_FR : 8|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - SG_ Height_RL : 16|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - SG_ Height_RR : 24|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS - -BO_ 1268 SPAS12: 8 SPAS - SG_ CF_Spas_HMI_Stat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_Spas_Disp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS - SG_ CF_Spas_FIL_Ind : 10|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FIR_Ind : 13|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FOL_Ind : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FOR_Ind : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_VolDown : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_RIL_Ind : 24|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_RIR_Ind : 27|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FLS_Alarm : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_ROL_Ind : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_ROR_Ind : 35|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FCS_Alarm : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_FI_Ind : 40|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_RI_Ind : 43|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU - SG_ CF_Spas_FRS_Alarm : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_FR_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Spas_RR_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Spas_BEEP_Alarm : 52|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Spas_StatAlarm : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Spas_RLS_Alarm : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_RCS_Alarm : 59|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_RRS_Alarm : 61|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1265 CLU11: 4 CLU - SG_ CF_Clu_CruiseSwState : 0|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,LDWS_LKAS,SCC - SG_ CF_Clu_CruiseSwMain : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,LDWS_LKAS,SCC - SG_ CF_Clu_SldMainSW : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Clu_ParityBit1 : 5|1@1+ (1.0,0.0) [0.0|1.0] "pulse count" EMS - SG_ CF_Clu_VanzDecimal : 6|2@1+ (0.125,0.0) [0.0|0.375] "" EMS - SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0.0) [0.0|255.5] "km/h or MPH" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC - SG_ CF_Clu_SPEED_UNIT : 17|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC - SG_ CF_Clu_DetentOut : 18|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,BCM,LCA,PGS,SPAS - SG_ CF_Clu_RheostatLevel : 19|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,BCM,LCA,PGS,SPAS - SG_ CF_Clu_CluInfo : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_AmpInfo : 25|1@1+ (1.0,0.0) [0.0|1.0] "" BCM - SG_ CF_Clu_AliveCnt1 : 28|4@1+ (1.0,0.0) [0.0|15.0] "" AHLS,EMS,EPB,LDWS_LKAS,MDPS,SCC - -BO_ 1260 Sign_Detection: 8 XXX - SG_ SpeedLim_Nav_Cam : 40|8@1+ (1,0) [0|255] "km/h / mph" XXX - SG_ SpeedLim_Nav_Cam2 : 48|8@1+ (1,0) [0|255] "km/h / mph" XXX - -BO_ 1492 TMU_GW_PE_01: 8 CLU - SG_ TMU_IVRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ TMU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - -BO_ 1491 HU_DATC_PE_00: 8 CLU - SG_ HU_VRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ HU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ BlowerNoiseControl : 4|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - -BO_ 1490 HU_DATC_E_02: 8 CLU - SG_ HU_DATC_RearOnOffSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ HU_DATC_ADSOnOffSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - -BO_ 1479 EMS21: 8 EMS - SG_ SCR_LEVEL_WARN_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ SCR_LEVEL_WARN : 1|3@1+ (1.0,0.0) [0.0|4.0] "" CLU - SG_ SCR_SYS_ERROR_WARN : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ SCR_SYSTEM_WARN_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ SCR_INDUCEMENT_EXIT_COND : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ SCR_UREA_LEVEL : 16|8@1+ (0.5,0.0) [0.0|100.0] "%" CLU - SG_ SCR_NO_REMAINING_RESTARTS : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ SCR_REMAINING_DISTANCE : 32|16@1+ (1.0,0.0) [0.0|25000.0] "km" CLU - -BO_ 1472 GW_Warning_PE: 8 BCM - SG_ Audio_VolumeDown : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Flh_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Fcnt_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Frh_Alarm : 52|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Rlh_Alarm : 56|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS - SG_ Pas_Spkr_Rcnt_Alarm : 58|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ Pas_Spkr_Rrh_Alarm : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS - -BO_ 1984 CAL_SAS11: 2 ESC - SG_ CCW : 0|4@1+ (1.0,0.0) [0.0|15.0] "" SAS - SG_ SAS_CID : 4|11@1+ (1.0,0.0) [0.0|2047.0] "" SAS - -BO_ 1456 CLU12: 4 CLU - SG_ CF_Clu_Odometer : 0|24@1+ (0.1,0.0) [0.0|1677721.4] "km" _4WD,AAF,BCM,CUBIS,EMS,EPB,IBOX,LDWS_LKAS,SCC,TPMS - -BO_ 688 SAS11: 5 MDPS - SG_ SAS_Angle : 0|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" _4WD,ACU,AFLS,AVM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU,_4WD,ACU,AFLS,AVM,BCM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU - SG_ SAS_Speed : 16|8@1+ (4.0,0.0) [0.0|1016.0] "" AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU,AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU - SG_ SAS_Stat : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ MsgCount : 32|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS - SG_ CheckSum : 36|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS - -BO_ 1441 ACU12: 8 ACU - SG_ CR_Acu_SN : 0|64@1+ (1.0,0.0) [0.0|0.0] "" ODS - -BO_ 1440 ACU11: 8 ACU - SG_ CF_Ods_SNRcv : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Ods_IDRcv : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Ods_RZReq : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Abg_DepInhEnt : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_Abg_DepEnt : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ODS - SG_ CF_PasBkl_FltStat : 28|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB - SG_ CF_DriBkl_FltStat : 29|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB - SG_ CF_PasBkl_Stat : 30|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,ODS,PSB,TMU - SG_ CF_DriBkl_Stat : 31|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB - SG_ CF_SWL_Ind : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX - SG_ CF_Acu_FltStat : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX - SG_ CF_Acu_ExtOfSab : 36|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,CUBIS,IBOX - SG_ CF_Acu_Dtc : 40|16@1+ (1.0,0.0) [0.0|65535.0] "" CUBIS,IBOX - SG_ CF_Acu_NumOfFlt : 56|8@1+ (1.0,0.0) [0.0|255.0] "" CUBIS,IBOX - -BO_ 1437 AHLS11: 8 AHLS - SG_ CF_Ahls_WarnLamp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Ahls_WarnMsg : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1434 PSB11: 2 PSB - SG_ PSB_LH_FAIL : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ PSB_LH_TGL : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ PSB_LH_ACT : 3|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy - SG_ PSB_RH_FAIL : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ PSB_RH_TGL : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ PSB_RH_ACT : 11|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy - -BO_ 916 TCS13: 8 ESC - SG_ aBasis : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC - SG_ BrakeLight : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,SCC - SG_ DCEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ AliveCounterTCS : 13|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,SCC - SG_ Pre_TCS_CTL : 16|1@1+ (1.0,0.0) [0.0|1.0] "" Vector__XXX - SG_ EBA_ACK : 17|1@1+ (1.0,0.0) [0.0|1.0] "" Vector__XXX - SG_ FCA_ACK : 18|1@1+ (1.0,0.0) [0.0|1.0] "" Vector__XXX - SG_ DF_BF_STAT : 19|2@1+ (1.0,0.0) [0.0|3.0] "" BCW - SG_ SCCReqLim : 22|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ TQI_SCC : 24|8@1+ (0.390625,0.0) [0.0|199.609375] "%" Vector__XXX - SG_ ACCEL_REF_ACC : 32|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC - SG_ ACCEnable : 43|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC - SG_ DriverOverride : 45|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC - SG_ StandStill : 47|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ CheckSum_TCS3 : 48|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,SCC - SG_ ACC_EQUIP : 52|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ PBRAKE_ACT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ ACC_REQ : 54|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ DriverBraking : 55|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC - SG_ CF_VSM_Coded : 56|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - SG_ CF_VSM_Avail : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,SCC - SG_ CF_VSM_Handshake : 59|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - SG_ CF_DriBkeStat : 60|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - SG_ CF_VSM_ConfSwi : 61|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ AEB_EQUIP : 63|1@1+ (1.0,0.0) [0.0|1.0] "" SCC - -BO_ 1427 TPMS11: 6 BCM - SG_ TPMS_W_LAMP : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX - SG_ TREAD_W_LAMP : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX - SG_ POS_FL_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ POS_FR_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ POS_RL_W_LAMP : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ POS_RR_W_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX - SG_ STATUS_TPMS : 8|3@1+ (1.0,0.0) [0.0|0.0] "" CLU - SG_ UNIT : 11|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ PRESSURE_FL : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ PRESSURE_FR : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ PRESSURE_RL : 32|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ PRESSURE_RR : 40|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - -BO_ 915 TCS12: 4 ESC - SG_ SA_COUNT : 0|16@1+ (2.0,-32768.0) [-32768.0|98302.0] "" _4WD,ACU,MDPS - SG_ SA_Z_COUNT : 16|15@1+ (2.0,-32768.0) [-32768.0|32766.0] "" _4WD,ACU,MDPS - SG_ SA_Z_FLAG : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,MDPS - -BO_ 1170 EMS19: 8 EMS - SG_ CF_Ems_BrkReq : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,TCU - SG_ CF_Ems_DnShftReq : 1|4@1+ (1.0,0.0) [0.0|14.0] "" IBOX,TCU - SG_ CF_Ems_RepModChk : 5|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX - SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,IBOX - SG_ CF_Ems_DecelReq : 8|12@1+ (0.0010,-4.094) [-4.094|0.0] "m/s^2" ESC,IBOX,TCU - SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0.0) [0.0|4094.0] "hPa" CLU,IBOX - SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40.0) [0.0|254.0] "deg" CLU,IBOX - SG_ DPF_LAMP_STAT : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX - SG_ BAT_LAMP_STAT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41.0) [-41.0|85.5] "deg" AAF,IBOX - SG_ CF_Ems_OPSFail : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU - SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU - -BO_ 1425 AFLS11: 2 AFLS - SG_ AFLS_STAT : 1|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Afls_TrfChgStat : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Afls_LedHLStat : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 912 SPAS11: 7 SPAS - SG_ CF_Spas_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,MDPS - SG_ CF_Spas_TestMode : 4|2@1+ (1.0,0.0) [0.0|3.0] "" MDPS - SG_ CR_Spas_StrAngCmd : 8|16@1- (0.1,0.0) [-3276.8|3276.7] "" MDPS - SG_ CF_Spas_BeepAlarm : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Spas_Mode_Seq : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Spas_AliveCnt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Spas_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Spas_PasVol : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CGW,CLU - -BO_ 1168 EPB11: 7 EPB - SG_ EPB_I_LAMP : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU,CUBIS,ESC,IBOX - SG_ EPB_F_LAMP : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,ESC,IBOX - SG_ EPB_ALARM : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC - SG_ EPB_CLU : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC - SG_ EPB_SWITCH : 16|2@1+ (1.0,0.0) [0.0|3.0] "" ESC,SCC - SG_ EPB_RBL : 18|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,ESC - SG_ EPB_STATUS : 19|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC,SCC,TCU - SG_ EPB_FRC_ERR : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,SCC,TCU - SG_ EPB_DBF_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ ESP_ACK : 25|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ EPB_DBF_REQ : 26|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ EPB_FAIL : 29|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,SCC - SG_ EPB_FORCE : 32|12@1+ (1.0,-1000.0) [-1000.0|3000.0] "" ESC - SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0.0) [0.0|2.54] "g" ESC - -BO_ 399 EMS_H12: 8 EMS - SG_ R_TqAcnApvC : 0|8@1+ (0.2,0.0) [0.0|51.0] "Nm" DATC,IBOX - SG_ R_PAcnC : 8|8@1+ (125.0,0.0) [0.0|31875.0] "hPa" DATC,IBOX - SG_ TQI_B : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ABS,ESC,IBOX - SG_ SLD_VS : 24|8@1+ (1.0,0.0) [0.0|255.0] "km/h" CLU,IBOX - SG_ CF_CdaStat : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AEMC,IBOX,TCU - SG_ CF_Ems_IsgStat : 35|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,MDPS,SMK,TCU - SG_ CF_Ems_OilChg : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_EtcLimpMod : 39|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ R_NEngIdlTgC : 40|8@1+ (10.0,0.0) [0.0|2550.0] "rpm" DATC,IBOX,TCU - SG_ CF_Ems_UpTarGr : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_DownTarGr : 49|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_DesCurGr : 50|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX - SG_ CF_Ems_SldAct : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_SldPosAct : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_HPresStat : 56|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ CF_Ems_IsgBuz : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_IdlStpFCO : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_FCopen : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Ems_ActEcoAct : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU - SG_ CF_Ems_EngRunNorm : 61|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,IBOX,TCU - SG_ CF_Ems_IsgStat2 : 62|2@1+ (2.0,0.0) [0.0|3.0] "" CLU,IBOX,TCU - -BO_ 1419 LCA11: 8 LCA - SG_ CF_Lca_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Rcta_Stat : 4|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Lca_IndLeft : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Rcw_Stat : 10|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_RCW_Warning : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Lca_IndRight : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_Lca_SndWan_Stat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_FR_SndWan : 20|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_FL_SndWan : 21|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_RR_SndWan : 22|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_RL_SndWan : 23|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU - SG_ CF_Lca_IndBriLeft : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_Lca_IndBriRight : 32|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_RCTA_IndBriLeft : 40|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_RCTA_IndBriRight : 48|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_RCTA_IndLeft : 56|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_RCTA_IndRight : 58|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - SG_ CF_SndWarnForClu : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 906 ABS11: 8 ABS - SG_ ABS_DEF : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EMS,SPAS,TCU - SG_ EBD_DEF : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,SPAS,TCU - SG_ ABS_ACT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EPB,SPAS,TCU - SG_ ABS_W_LAMP : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,MTS,TMU - SG_ EBD_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ ABS_DIAG : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ ESS_STAT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS - -BO_ 903 WHL_PUL11: 6 ABS - SG_ WHL_PUL_FL : 0|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_PUL_FR : 8|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_PUL_RL : 16|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_PUL_RR : 24|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS - SG_ WHL_DIR_FL : 32|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_DIR_FR : 34|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_DIR_RL : 36|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_DIR_RR : 38|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS - SG_ WHL_PUL_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,SPAS,TPMS,EPB,LCA,LDWS_LKAS,SPAS,TPMS - -BO_ 1415 TMU11: 8 IBOX - SG_ CF_Tmu_VehSld : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Tmu_VehImmo : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Tmu_ReqRepCnd : 2|2@1+ (1.0,0.0) [0.0|3.0] "" EMS - SG_ CF_Tmu_AirconCtr : 4|1@1+ (1.0,0.0) [0.0|1.0] "" DATC - SG_ CF_Tmu_TempMd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" DATC - SG_ CF_Tmu_TempSet : 6|16@1+ (1.0,0.0) [0.0|20.0] "" DATC - SG_ CF_Tmu_DefrostCtr : 22|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,FATC - SG_ CF_Tmu_AliveCnt1 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" EMS - -BO_ 902 WHL_SPD11: 8 ABS - SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,ACU,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,BCM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,BCM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS - SG_ WHL_SPD_AliveCounter_LSB : 14|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ WHL_SPD_AliveCounter_MSB : 30|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ WHL_SPD_Checksum_LSB : 46|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ WHL_SPD_Checksum_MSB : 62|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - -BO_ 1414 EVP11: 3 EVP - SG_ CF_Evp_Stat : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 1412 AAF11: 8 AAF - SG_ CF_Aaf_ActFlapStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester - SG_ CF_Aaf_ModeStatus : 2|3@1+ (1.0,0.0) [0.0|7.0] "" AAF_Tester - SG_ CF_Aaf_WrnLamp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Aaf_ErrStatus : 6|10@1+ (1.0,0.0) [0.0|1023.0] "" AAF_Tester,EMS - SG_ CF_Aaf_OpenRqSysAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester - SG_ CF_Aaf_PStatus : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" AAF_Tester - SG_ CF_Aaf_OpenRqSysSol : 32|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester - SG_ CF_Aaf_SolFlapStatus : 40|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester - SG_ CF_Aaf_MilOnReq : 42|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 900 EMS17: 8 EMS - SG_ CF_Ems_PkpCurMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_HolCurMSV : 8|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_InjVBnkAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_InjVActSet : 24|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_DiagFulHDEV : 32|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CF_Ems_SwiOffIC1 : 33|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CF_Ems_SwiOffIC2 : 34|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CF_Ems_DiagReqHDEV : 38|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX - SG_ CR_Ems_DutyCycMSV : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" DI_BOX - SG_ CR_Ems_BatVolRly : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" DI_BOX - -BO_ 387 REA11: 8 REA - SG_ CF_EndBst_PwmDuH : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PwmDuL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PwmFqOutRng : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_HbriOverCur : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_HbriOverTemp : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PosSnsKOR : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_PosSnsOSOR : 7|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_EepFlt : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_RomFlt : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_RamFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_CanFlt : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_AgH : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_AgL : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_EndBst_ORVol : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CR_EndBst_ActPos : 16|16@1+ (0.117,0.0) [1.989|118.053] "" EMS - SG_ CR_EndBst_DemPos : 32|16@1+ (0.117,0.0) [0.0|119.691] "" EMS - SG_ CR_EndBst_HbriPwr : 48|16@1+ (0.045,0.0) [0.0|99.99] "%" EMS - -BO_ 1411 CUBIS11: 8 CUBIS - SG_ CF_Cubis_HUDisp : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - -BO_ 899 FATC11: 8 DATC - SG_ CR_Fatc_TqAcnOut : 0|8@1+ (0.2,0.0) [0.0|50.8] "Nm" EMS,IBOX - SG_ CF_Fatc_AcnRqSwi : 8|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,EMS,IBOX - SG_ CF_Fatc_AcnCltEnRq : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_EcvFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_BlwrOn : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_FATC_Iden : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Fatc_BlwrMax : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX - SG_ CF_Fatc_EngStartReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_IsgStopReq : 16|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_CtrInf : 17|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX - SG_ CF_Fatc_MsgCnt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX - SG_ CR_Fatc_OutTemp : 24|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU,EMS,IBOX,SPAS,TCU,TPMS - SG_ CR_Fatc_OutTempSns : 32|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" AAF,AHLS,CLU,EMS,IBOX,SPAS,TCU - SG_ CF_Fatc_Compload : 40|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX - SG_ CF_Fatc_ActiveEco : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Fatc_AutoActivation : 44|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX - SG_ CF_Fatc_DefSw : 45|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,IBOX - SG_ CF_Fatc_PtcRlyStat : 46|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Fatc_ChkSum : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,IBOX,SPAS - -BO_ 129 EMS_DCT12: 8 EMS - SG_ CR_Ems_SoakTimeExt : 0|6@1+ (5.0,0.0) [0.0|315.0] "Min" TCU - SG_ BRAKE_ACT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" TCU - SG_ CF_Ems_EngOperStat : 8|8@1+ (1.0,0.0) [0.0|255.0] "" TCU - SG_ CR_Ems_IndAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" TCU - SG_ CF_Ems_Alive2 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Ems_ChkSum2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - -BO_ 145 FCEV_ACCELERATOR: 8 XXX - SG_ ACCELERATOR_PEDAL : 48|8@1+ (1,0) [0|255] "" XXX - -BO_ 897 MDPS11: 8 MDPS - SG_ CF_Mdps_WLmp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,EMS,IBOX,SPAS - SG_ CF_Mdps_Flex : 2|3@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS - SG_ CF_Mdps_FlexDisp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Mdps_Stat : 7|4@1+ (1.0,0.0) [0.0|15.0] "" SPAS - SG_ CR_Mdps_DrvTq : 11|12@1+ (1.0,-2048.0) [-2048.0|2046.0] "" SPAS - SG_ CF_Mdps_ALTRequest : 23|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CR_Mdps_StrAng : 24|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" SPAS - SG_ CF_Mdps_AliveCnt : 40|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS - SG_ CF_Mdps_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS - SG_ CF_Mdps_SPAS_FUNC : 57|1@1+ (1.0,0.0) [0.0|1.0] "flag" SPAS - SG_ CF_Mdps_LKAS_FUNC : 58|1@1+ (1.0,0.0) [0.0|1.0] "flag" LDWS_LKAS - SG_ CF_Mdps_CurrMode : 59|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Mdps_Type : 61|2@1+ (1.0,0.0) [0.0|2.0] "" LDWS_LKAS,SPAS - SG_ CF_MDPS_VSM_FUNC : 56|1@0+ (1.0,0.0) [0.0|1.0] "" XXX - -BO_ 896 DI_BOX13: 8 DI_BOX - SG_ CF_DiBox_HPreInjVConfStat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVStat1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVStat2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVPkp : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_HPreInjVBpt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_ErrRegFrtMSV : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_ErrRegSedMSV : 48|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SPIErrSedMSV : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_SPIErrFrtMSV : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_IDErrSedMSV : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_IDErrFrtMSV : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_IniStatMSV : 60|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 640 EMS13: 8 EMS - SG_ LV_FUEL_TYPE_ECU : 0|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,LPI,SMK - SG_ LV_BFS_CFIRM : 1|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_CRASH : 2|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_VB_OFF_ACT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_GSL_MAP M : 4|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ LV_ENG_TURN : 5|1@1+ (1.0,0.0) [0.0|1.0] "" LPI - SG_ ERR_FUEL : 8|8@1+ (1.0,0.0) [0.0|255.0] "" LPI - SG_ EOS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" LPI - SG_ TCO : 24|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI - SG_ N_32 : 32|8@1+ (32.0,0.0) [0.0|8160.0] "rpm" LPI - SG_ MAF : 40|8@1+ (5.447,0.0) [0.0|1388.985] "mg/TDC" LPI - SG_ TIA : 48|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI - SG_ MAP m1 : 56|8@1+ (0.47058,0.0) [0.0|119.9979] "kPa" LPI - SG_ AMP m0 : 56|8@1+ (21.22,0.0) [0.0|5411.1] "hPa" LPI - -BO_ 128 EMS_DCT11: 8 EMS - SG_ PV_AV_CAN : 0|8@1+ (0.3906,0.0) [0.0|99.603] "%" TCU - SG_ TQ_STND : 8|6@1+ (10.0,0.0) [0.0|630.0] "Nm" TCU - SG_ F_N_ENG : 14|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ F_SUB_TQI : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" TCU - SG_ TQI_ACOR : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" IBOX,TCU - SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" TCU - SG_ TQI : 48|8@1+ (0.390625,0.0) [0.0|99.609375] "%" TCU - SG_ CF_Ems_Alive : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Ems_ChkSum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - -BO_ 1407 HU_MON_PE_01: 8 CLU - SG_ HU_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" AVM,PGS - -BO_ 127 CGW5: 8 BCM - SG_ C_StopLampLhOpenSts : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_StopLampRhOpenSts : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HMSLOpenSts : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampLowLhOpenSts : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampLowRhOpenSts : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampHighLhOpenSts : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_HLampHighRhOpenSts : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_DRLLampLhOpenSts : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_DRLLampRhOpenSts : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearFOGLhOpenSts : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearFOGRhOpenSts : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontFOGLhOpenSts : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontFOGRhOpenSts : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearEXTTailLhOpenSts : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearEXTTailRhOpenSts : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontEXTTailLhOpenSts : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontEXTTailRhOpenSts : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearTSIGLhOpenSts : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_RearTSIGRhOpenSts : 18|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontTSIGLhOpenSts : 19|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_FrontTSIGRhOpenSts : 20|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_SBendingLhOpenSts : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_SBendingRhOpenSts : 22|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_LicensePlateLhOpenSts : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_LicensePlateRhOpenSts : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 1151 ESP11: 6 ESC - SG_ AVH_STAT : 0|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,TCU - SG_ LDM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EPB,TCU - SG_ REQ_EPB_ACT : 3|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,TCU - SG_ REQ_EPB_STAT : 5|1@1+ (1.0,0.0) [0.0|1.0] "" EPB - SG_ ECD_ACT : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EPB - SG_ _4WD_LIM_REQ : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS - SG_ ROL_CNT_ESP : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,TCU - SG_ _4WD_TQC_LIM : 16|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" _4WD,EMS - SG_ _4WD_CLU_LIM : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" _4WD,EMS - SG_ _4WD_OPEN : 40|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS - SG_ _4WD_LIM_MODE : 42|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD - -BO_ 1397 HU_AVM_E_00: 8 CLU - SG_ HU_AVM_Cal_Cmd : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_Cal_Method : 4|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - SG_ HU_AVM_Save_Controlpoint : 6|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - SG_ HU_AVM_PT_X : 8|12@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_RearViewPointOpt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_PT_Y : 24|12@1+ (1.0,0.0) [0.0|4095.0] "" AVM,PGS - SG_ HU_AVM_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_SelectedMenu : 40|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS - SG_ HU_AVM_CameraOff : 45|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - SG_ HU_AVM_Option : 48|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_CrossLineMove_Cmd : 52|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_RearView_Option : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_FrontView_Option : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - -BO_ 1395 HU_AVM_E_01: 8 CLU - SG_ HU_PGSSelectedMenu : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_PGSOption : 8|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS - SG_ HU_AVM_ParkingAssistMenu : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - SG_ HU_AVM_ParkingAssistSB : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS - -BO_ 1393 OPI11: 5 OPI - SG_ CR_Opi_Spd_Rpm : 0|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" TCU - SG_ CF_Opi_Over_Temp : 8|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Opi_Over_Cur : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU - SG_ CF_Opi_Over_Vol : 10|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Opi_Hall_Fail : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU - SG_ CF_Opi_Flt : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU - SG_ CF_Opi_Motor_Dir : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Opi_Romver : 16|8@1+ (1.0,0.0) [0.0|255.0] "" TCU - SG_ CF_Opi_PWM_Rate : 24|12@1+ (1.0,0.0) [0.0|100.0] "%" TCU - -BO_ 625 LPI11: 8 LPI - SG_ FUP_LPG_MMV : 0|8@1+ (128.0,0.0) [0.0|32640.0] "hPa" EMS - SG_ LV_FUEL_TYPE_BOX : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_BFS_IN_PROGRESS : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_GAS_OK : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_FUP_ENA_THD : 11|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,EMS,SMK - SG_ LPI_OBD : 12|4@1+ (1.0,0.0) [0.0|15.0] "" EMS - SG_ ERR_GAS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ FAC_TI_GAS_COR : 24|16@1+ (3.05E-5,0.0) [0.0|1.9988175] "" EMS - SG_ FTL_AFU : 40|8@1+ (0.392,0.0) [0.0|99.96] "%" EMS - SG_ BFS_CYL : 48|8@1+ (1.0,0.0) [0.0|6.0] "Cyl Nr." EMS - SG_ LV_PRE_CDN_LEAK : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_CONF_INJECTION_DELAY : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ LV_LPG_SW_DRIVER_REQ : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 356 VSM11: 4 ESC - SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" MDPS - SG_ CF_Esc_Act : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,MDPS - SG_ CF_Esc_CtrMode : 13|3@1+ (1.0,0.0) [0.0|7.0] "" MDPS - SG_ CF_Esc_Def : 16|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Esc_AliveCnt : 17|4@1+ (1.0,0.0) [0.0|15.0] "" LDWS_LKAS,MDPS - SG_ CF_Esc_Chksum : 24|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,MDPS - -BO_ 1379 PGS_HU_PE_01: 8 PGS - SG_ PGS_State : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ PGS_ParkGuideState : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ PGS_Option : 16|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ PGS_Version : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU - -BO_ 354 TCU_DCT13: 3 TCU - SG_ Clutch_Driving_Tq : 0|10@1+ (1.0,-512.0) [0.0|0.0] "Nm" ESC - SG_ Cluster_Engine_RPM : 10|13@1+ (0.9766,0.0) [0.0|0.0] "" CLU - SG_ Cluster_Engine_RPM_Flag : 23|1@1+ (1.0,0.0) [0.0|0.0] "" CLU - -BO_ 1378 HUD11: 4 HUD - SG_ CF_Hud_HeightStaus : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ CF_Hud_PBackStatus : 6|2@1+ (1.0,0.0) [0.0|0.0] "" BCM,CLU - SG_ CF_Hud_Brightness : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - -BO_ 608 EMS16: 8 EMS - SG_ TQI_MIN : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU - SG_ TQI : 8|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU - SG_ TQI_TARGET : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EPB,ESC,IBOX,TCU - SG_ GLOW_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,IBOX,SMK - SG_ CRUISE_LAMP_M : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU - SG_ CRUISE_LAMP_S : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU - SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ ENG_STAT : 28|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,AHLS,AVM,BCM,CLU,EPB,ESC,EVP,FPCM,IBOX,LCA,LDWS_LKAS,MDPS,SCC,SMK,TCU - SG_ SOAK_TIME_ERROR : 31|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EPB,IBOX,TCU - SG_ SOAK_TIME : 32|8@1+ (1.0,0.0) [0.0|255.0] "Min" _4WD,DATC,EPB,IBOX,TCU - SG_ TQI_MAX : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU - SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [-35.625|60.0] "" IBOX,TCU - SG_ Checksum : 56|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,IBOX,LDWS_LKAS,MDPS,SCC - SG_ AliveCounter : 60|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,LDWS_LKAS,MDPS,SCC - SG_ CF_Ems_AclAct : 62|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,SCC - -BO_ 1371 AVM_HU_PE_00: 8 AVM - SG_ AVM_View : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU - SG_ AVM_ParkingAssist_BtnSts : 5|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ AVM_Display_Message : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ AVM_Popup_Msg : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_Ready : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_ParkingAssist_Step : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_FrontBtn_Type : 28|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_Option : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_HU_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_HU_RearView_Option : 40|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_HU_FrontView_Option : 44|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ AVM_Version : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU - -BO_ 1370 HU_AVM_PE_00: 8 CLU - SG_ HU_AVM_Status : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS - -BO_ 1369 CGW4: 8 BCM - SG_ CF_Gway_MemoryP1Cmd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_MemoryP2Cmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBackP1Cmd : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBackP2Cmd : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_StrgWhlHeatedState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBackStopCmd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD - SG_ CF_Gway_StaticBendLhAct : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_StaticBendRhAct : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_DrvWdwStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_RLWdwState : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_RRWdwState : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_AstWdwStat : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_MemoryEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBACKStopCmd : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_PBACKStop : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD - SG_ CF_Gway_IMSBuzzer : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_DrvSeatBeltInd : 36|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_AstSeatBeltInd : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RCSeatBeltInd : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RLSeatBeltInd : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RRSeatBeltInd : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_RrWiperHighSw : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_RrWiperLowSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 1367 EngFrzFrm12: 8 EMS - SG_ PID_06h : 0|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_07h : 8|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_08h : 16|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_09h : 24|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU - SG_ PID_0Bh : 32|8@1+ (1.0,0.0) [0.0|255.0] "kPa" AAF,IBOX,TCU - SG_ PID_23h : 40|16@1+ (10.0,0.0) [0.0|655350.0] "kPa" AAF,IBOX,TCU - -BO_ 1366 EngFrzFrm11: 8 EMS - SG_ PID_04h : 0|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU - SG_ PID_05h : 8|8@1+ (1.0,-40.0) [-40.0|215.0] "deg" AAF,TCU - SG_ PID_0Ch : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" AAF,TCU - SG_ PID_0Dh : 32|8@1+ (1.0,0.0) [0.0|255.0] "km/h" AAF,TCU - SG_ PID_11h : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU - SG_ PID_03h : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" AAF,TCU - -BO_ 1365 FPCM11: 8 FPCM - SG_ CR_Fpcm_LPActPre : 0|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" EMS - SG_ CF_Fpcm_LPPumpOverCur : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrHi : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrDisc : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrShort : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_LPPumpDiscShort : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_LP_System_Error : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_PreSnrSigErr : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Fpcm_LPCtrCirFlt : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 871 LVR12: 8 LVR - SG_ CF_Lvr_CruiseSet : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,TCU - SG_ CF_Lvr_IsgState : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,TCU - SG_ CF_Lvr_Gear : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,TCU - -BO_ 872 LVR11: 8 LVR - SG_ CF_Lvr_GearInf : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,TCU - SG_ CF_Lvr_PRelStat : 4|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,SMK,TCU - SG_ CF_Lvr_BkeAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" TCU - SG_ CF_Lvr_NFnStat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Lvr_PosInf : 8|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_PosCpl : 12|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_UlkButStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" TCU - SG_ CF_Lvr_PNStat : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lvr_ShtLkStat : 24|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_ShfErrInf : 28|20@1+ (1.0,0.0) [0.0|8191.0] "" CLU,TCU - SG_ CF_Lvr_AC : 48|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - SG_ CF_Lvr_CS : 52|4@1+ (1.0,0.0) [0.0|15.0] "" TCU - -BO_ 1363 CGW2: 8 BCM - SG_ CF_Gway_GwayDiagState : 0|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_DDMDiagState : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SCMDiagState : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_PSMDiagState : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SJBDiagState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_IPMDiagState : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_LDMFail : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS,LDWS_LKAS - SG_ CF_Gway_CLUSwGuiCtrl : 10|3@1+ (1.0,0.0) [0.0|63.0] "" CLU,Dummy - SG_ CF_Gway_CLUSwGroup : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_CLUSwMode : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_CLUSwEnter : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_AutoLightValue : 16|1@1+ (1.0,0.0) [0.0|1.0] "" LCA,LCA - SG_ CF_Gway_BrakeFluidSw : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_DrvSeatBeltInd : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_AvTail : 20|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,SNV,SNV - SG_ CF_Gway_RearFogAct : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ExtTailAct : 22|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,CLU,LCA,PGS,SPAS,AVM,LCA,PGS,SPAS - SG_ CF_Gway_RRDrSw : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_RLDrSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_IntTailAct : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_CountryCfg : 26|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,Dummy - SG_ CF_Gway_WiperParkPosition : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,EMS,LDWS_LKAS,AFLS,EMS,LDWS_LKAS - SG_ CF_Gway_HLLowLHFail : 33|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV - SG_ CF_Gway_HLLowRHFail : 34|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV - SG_ CF_Gway_ESCLFailWarn : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ESCLNotLockedWarn : 36|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ESCLNotUnlockWarn : 37|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_IDoutWarn : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_ImmoLp : 40|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_BCMRKEID : 41|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - SG_ CF_Gway_VehicleNotPWarn : 44|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_DeactivationWarn : 45|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_KeyBATDischargeWarn : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SSBWarn : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SMKFobID : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - SG_ CF_Gway_SMKRKECmd : 51|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - SG_ CF_Gway_AutoLightOption : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_SJBDeliveryMode : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_KeyoutLp : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy - SG_ CF_Gway_SMKDispWarn : 57|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,Dummy - SG_ CF_Gway_WngBuz : 61|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy - -BO_ 339 TCS11: 8 ESC - SG_ TCS_REQ : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,TCU - SG_ MSR_C_REQ : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,SCC,TCU - SG_ TCS_PAS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,SCC,SPAS,TCU - SG_ TCS_GSC : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,TCU - SG_ CF_Esc_LimoInfo : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,SCC - SG_ ABS_DIAG : 6|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB - SG_ ABS_DEF : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,SCC,SPAS,TCU - SG_ TCS_DEF : 8|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU - SG_ TCS_CTL : 9|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU - SG_ ABS_ACT : 10|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU - SG_ EBD_DEF : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SPAS,TCU - SG_ ESP_PAS : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU,EMS,EPB,LDWS_LKAS,SCC,TCU - SG_ ESP_DEF : 13|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,TCU - SG_ ESP_CTL : 14|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU - SG_ TCS_MFRN : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,TCU - SG_ DBC_CTL : 16|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB - SG_ DBC_PAS : 17|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB - SG_ DBC_DEF : 18|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB - SG_ HAC_CTL : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU - SG_ HAC_PAS : 20|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU - SG_ HAC_DEF : 21|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU - SG_ ESS_STAT : 22|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS,EPB - SG_ TQI_TCS : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU - SG_ TQI_MSR : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU - SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU - SG_ CF_Esc_BrkCtl : 48|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ BLA_CTL : 49|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CGW,CLU - SG_ AliveCounter_TCS1 : 52|4@1+ (1.0,0.0) [0.0|14.0] "" EMS,EPB,LDWS_LKAS - SG_ CheckSum_TCS1 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,EPB,LDWS_LKAS - -BO_ 1362 SNV11: 4 SNV - SG_ CF_SNV_DisplayControl : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD - SG_ CF_Snv_BeepWarning : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD - SG_ CF_Snv_WarningMessage : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,HUD - SG_ CF_Snv_DetectionEnable : 7|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,HUD - SG_ CF_Snv_PedestrianDetect : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD - SG_ CF_Snv_IRLampControl : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD - -BO_ 593 MDPS12: 8 MDPS - SG_ CR_Mdps_StrColTq : 0|11@1+ (1.0,-1024.0) [-1024.0|1024.0] "" LDWS_LKAS - SG_ CF_Mdps_Def : 11|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ CF_Mdps_ToiUnavail : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_ToiActive : 13|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_ToiFlt : 14|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_FailStat : 15|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Mdps_MsgCount2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS - SG_ CF_Mdps_Chksum2 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS - SG_ CF_Mdps_SErr : 37|1@1+ (1.0,0.0) [0.0|1.0] "" ESC - SG_ CR_Mdps_StrTq : 40|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" ESC - SG_ CR_Mdps_OutTq : 52|12@1+ (0.1,-204.8) [-204.8|204.7] "" ESC,LDWS_LKAS - -BO_ 1360 IAP11: 3 IAP - SG_ CF_Iap_EcoPmodSwi : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Iap_EcoPmodAct : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Iap_ReqWarn : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1356 TCU_DCT14: 8 TCU - SG_ Vehicle_Stop_Time : 0|5@1+ (1.0,0.0) [0.0|0.0] "" CLU - SG_ HILL_HOLD_WARNING : 5|1@1+ (1.0,0.0) [0.0|0.0] "" CLU - -BO_ 1353 BAT11: 8 EMS - SG_ BAT_SNSR_I : 0|16@1+ (0.01,-327.0) [-327.0|328.0] "A" CGW,CUBIS,IBOX,TMU - SG_ BAT_SOC : 16|8@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_V : 24|14@1+ (0.0010,6.0) [6.0|18.0] "V" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_Temp : 38|9@1- (0.5,-40.0) [-40.0|125.0] "deg" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_State : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU - SG_ BAT_SOH : 48|7@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_Invalid : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU - SG_ BAT_SOF : 56|7@1+ (0.1,0.0) [0.0|12.0] "V" CGW,CUBIS,IBOX,TMU - SG_ BAT_SNSR_Error : 63|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU - -BO_ 1351 EMS15: 8 EMS - SG_ ECGPOvrd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,SCC - SG_ QECACC : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ ECFail : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ SwitchOffCondExt : 3|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ BLECFail : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ CF_Ems_IsaAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ FA_PV_CAN : 8|8@1+ (0.3906,0.0) [0.0|99.2] "%" IBOX,LDWS_LKAS,TCU - SG_ IntAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,ECS,EPB,IBOX,TCU - SG_ STATE_DC_OBD : 24|7@1+ (1.0,0.0) [0.0|127.0] "" IBOX,TCU - SG_ INH_DC_OBD : 31|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ CTR_IG_CYC_OBD : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" ACU,IBOX,TCU - SG_ CTR_CDN_OBD : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" IBOX,TCU - -BO_ 1350 DI_BOX12: 8 DI_BOX - SG_ CF_DiBox_FrtInjVDiagReg0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_FrtInjVDiagReg1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_FrtInjVDiagReg2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SedInjVDiagReg0 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SedInjVDiagReg1 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CF_DiBox_SedInjVDiagReg2 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS - SG_ CR_DiBox_BatVol : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" EMS - SG_ CF_DiBox_SedInjVChg : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_FrtInjVChg : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_SedInjVErrSPI : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_DiBox_FrtInjVErrSPI : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - -BO_ 1349 EMS14: 8 EMS - SG_ IMMO_LAMP_STAT : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ L_MIL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX - SG_ IM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ AMP_CAN : 3|5@1+ (10.731613,458.98) [458.98|791.660003] "mmHg" CLU,IBOX,TCU,TPMS - SG_ BAT_Alt_FR_Duty : 8|8@1+ (0.4,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU - SG_ VB : 24|8@1+ (0.1015625,0.0) [0.0|25.8984375] "V" CLU,CUBIS,DATC,EPB,FPCM,IBOX - SG_ EMS_VS : 32|12@1+ (0.0625,0.0) [0.0|255.875] "km/h" CLU - SG_ TEMP_FUEL : 56|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" FPCM - -BO_ 68 DATC11: 8 DATC - SG_ CF_Datc_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_Datc_VerMaj : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_Datc_VerMin : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CR_Datc_OutTempC : 24|8@1+ (0.5,-41.0) [-41.0|86.5] "deg" CLU,FPCM - SG_ CR_Datc_OutTempF : 32|8@1+ (1.0,-42.0) [-42.0|213.0] "deg" CLU - SG_ CF_Datc_IncarTemp : 40|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU - -BO_ 67 DATC13: 8 DATC - SG_ CF_Datc_TempDispUnit : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX - SG_ CF_Datc_ModDisp : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_IonClean : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_ChgReqDisp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_IntakeDisp : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_AutoDisp : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_FrDefLed : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX - SG_ CF_Datc_AutoDefogBlink : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_ClmScanDisp : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_AqsDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_AcDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_OpSts : 25|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Mtc_MaxAcDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_DualDisp : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_PwrInf : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_RearManual : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearAutoDisp : 40|2@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Datc_RearOffDisp : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearClimateScnDisp : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearChgReqDisp : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_RearModDisp : 48|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_RearBlwDisp : 52|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_PSModDisp : 56|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ CF_Datc_FrontBlwDisp : 60|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX - -BO_ 66 DATC12: 8 DATC - SG_ CR_Datc_DrTempDispC : 0|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX - SG_ CR_Datc_DrTempDispF : 8|8@1+ (1.0,56.0) [58.0|90.0] "deg" CLU,IBOX - SG_ CR_Datc_PsTempDispC : 16|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX - SG_ CR_Datc_PsTempDispF : 24|8@1+ (1.0,56.0) [58.0|90.0] "deg" CLU,IBOX - SG_ CR_Datc_RearDrTempDispC : 40|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU - SG_ CR_Datc_RearDrTempDispF : 48|8@1+ (1.0,58.0) [58.0|90.0] "deg" CLU - SG_ CF_Datc_CO2_Warning : 56|8@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1345 CGW1: 8 BCM - SG_ CF_Gway_IGNSw : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC - SG_ CF_Gway_RKECmd : 3|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX - SG_ CF_Gway_DrvKeyLockSw : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX - SG_ CF_Gway_DrvKeyUnlockSw : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX - SG_ CF_Gway_DrvDrSw : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU - SG_ CF_Gway_DrvSeatBeltSw : 10|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,PSB,TCU,EMS,EPB,ESC,IBOX,PSB,TCU - SG_ CF_Gway_TrunkTgSw : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,ECS,EMS,EPB,ESC,IBOX - SG_ CF_Gway_AstSeatBeltSw : 14|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,PSB,IBOX,PSB - SG_ CF_Gway_SMKOption : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,EMS,IBOX,SMK - SG_ CF_Gway_HoodSw : 17|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,EPB,ESC,IBOX,EMS,EPB,ESC,IBOX - SG_ CF_Gway_TurnSigLh : 19|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC - SG_ CF_Gway_WiperIntT : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperIntSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperLowSw : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperHighSw : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_WiperAutoSw : 27|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_RainSnsState : 28|3@1+ (1.0,0.0) [0.0|7.0] "" AFLS,EMS,IBOX,LDWS_LKAS,AFLS,EMS,ESC,IBOX,LDWS_LKAS - SG_ CF_Gway_HeadLampLow : 31|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,SNV,AFLS,EMS,IBOX,LDWS_LKAS,SNV - SG_ CF_Gway_HeadLampHigh : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,AFLS,EMS,IBOX,LDWS_LKAS - SG_ CF_Gway_HazardSw : 33|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS,ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS - SG_ CF_Gway_AstDrSw : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,IBOX - SG_ CF_Gway_DefoggerRly : 36|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX - SG_ CF_Gway_ALightStat : 37|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_LightSwState : 38|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_Frt_Fog_Act : 40|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_TSigRHSw : 41|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_TSigLHSw : 42|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_DriveTypeOption : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_StarterRlyState : 44|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX,SMK - SG_ CF_Gway_PassiveAccessLock : 45|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK - SG_ CF_Gway_WiperMistSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS - SG_ CF_Gway_PassiveAccessUnlock : 48|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK - SG_ CF_Gway_RrSunRoofOpenState : 50|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX - SG_ CF_Gway_PassingSW : 51|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS - SG_ CF_Gway_HBAControlMode : 52|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_HLpHighSw : 53|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS - SG_ CF_Gway_InhibitRMT : 54|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,MDPS,PGS,SCC,SPAS,TPMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,PGS,SCC,SPAS,TPMS - SG_ CF_Gway_RainSnsOption : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ C_SunRoofOpenState : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX,DATC,IBOX - SG_ CF_Gway_Ign1 : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_Ign2 : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Gway_ParkBrakeSw : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IBOX,SCC,ESC,IBOX,SCC - SG_ CF_Gway_TurnSigRh : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC - -BO_ 64 DATC14: 8 DATC - SG_ CF_Datc_AqsLevelOut : 0|4@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Datc_DiagMode : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CR_Datc_SelfDiagCode : 8|8@1+ (1.0,-1.0) [0.0|254.0] "" CLU - SG_ DATC_SyncDisp : 16|4@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_OffDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_SmartVentDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_SmartVentOnOffStatus : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_AutoDefogSysOff_Disp : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ DATC_ADSDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 832 LKAS11: 8 LDWS_LKAS - SG_ CF_Lkas_LdwsActivemode : 0|2@1+ (1,0) [0|3] "" CLU,IBOX,PSB - SG_ CF_Lkas_LdwsSysState : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX,PSB - SG_ CF_Lkas_SysWarning : 6|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU - SG_ CF_Lkas_LdwsLHWarning : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB - SG_ CF_Lkas_LdwsRHWarning : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB - SG_ CF_Lkas_HbaLamp : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Lkas_FcwBasReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC - SG_ CR_Lkas_StrToqReq : 16|11@1+ (1.0,-1024.0) [-1024.0|1024.0] "" MDPS - SG_ CF_Lkas_ActToi : 27|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Lkas_ToiFlt : 28|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Lkas_HbaSysState : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM,CLU - SG_ CF_Lkas_FcwOpt : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lkas_HbaOpt : 34|2@1+ (1.0,0.0) [0.0|1.0] "" BCM,CGW - SG_ CF_Lkas_MsgCount : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,MDPS - SG_ CF_Lkas_FcwSysState : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Lkas_FcwCollisionWarning : 43|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lkas_FusionState : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Lkas_Unknown1 : 47|1@1+ (1.0,0.0) [0.0|1.0] "" XXX - SG_ CF_Lkas_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS - SG_ CF_Lkas_FcwOpt_USM : 56|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Lkas_LdwsOpt_USM : 59|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,MDPS - SG_ CF_Lkas_Unknown2 : 62|2@1+ (1.0,0.0) [0.0|1.0] "" XXX - -BO_ 1342 LKAS12: 6 LDWS_LKAS - SG_ CF_Lkas_TsrSlifOpt : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_LkasTsrStatus : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Lkas_TsrSpeed_Display_Clu : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU - SG_ CF_LkasTsrSpeed_Display_Navi : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU - SG_ CF_Lkas_TsrAddinfo_Display : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_LkasDawStatus : 40|3@1+ (1,0) [0|7] "" CLU - SG_ CF_Lkas_Daw_USM : 37|3@1+ (1,0) [0|7] "" CLU - -BO_ 1338 TMU_GW_E_01: 8 CLU - SG_ CF_Gway_TeleReqDrLock : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqDrUnlock : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqHazard : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqHorn : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Gway_TeleReqEngineOperate : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 1078 PAS11: 4 BCM - SG_ CF_Gway_PASDisplayFLH : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM - SG_ CF_Gway_PASDisplayFRH : 3|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM - SG_ CF_Gway_PASRsound : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASDisplayFCTR : 8|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM - SG_ CF_Gway_PASDisplayRCTR : 11|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM - SG_ CF_Gway_PASFsound : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASDisplayRLH : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM - SG_ CF_Gway_PASDisplayRRH : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM - SG_ CF_Gway_PASCheckSound : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASSystemOn : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy - SG_ CF_Gway_PASOption : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PASDistance : 28|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - -BO_ 48 EMS18: 6 EMS - SG_ CF_Ems_DC1NumPerMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX - SG_ CF_Ems_DC2NumPerMSV : 8|16@1+ (1.0,0.0) [0.0|65535.0] "" DI_BOX - SG_ CR_Ems_DutyCyc1MSV : 24|8@1+ (0.1953,0.0) [0.0|49.8] "%" DI_BOX - SG_ CR_Ems_DutyCyc2MSV : 32|8@1+ (0.13725,0.0) [0.0|35.0] "%" DI_BOX - SG_ CR_Ems_DutyCyc3MSV : 40|8@1+ (0.392,0.0) [0.0|100.0] "%" DI_BOX - -BO_ 1322 CLU15: 8 CLU - SG_ CF_Clu_VehicleSpeed : 0|8@1+ (1.0,0.0) [0.0|255.0] "" BCM - SG_ CF_Clu_Gear : 9|4@1+ (1,0) [0|15] "" BCM - SG_ CF_Clu_HudInfoSet : 13|7@1+ (1.0,0.0) [0.0|127.0] "" HUD - SG_ CF_Clu_HudFontColorSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudBrightUpSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudBrightDnSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudHeightUpSW : 26|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudHeightDnSW : 28|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_HudSet : 30|1@1+ (1.0,0.0) [0.0|1.0] "" HUD - SG_ CF_Clu_HudFontSizeSet : 31|2@1+ (1.0,0.0) [0.0|3.0] "" HUD - SG_ CF_Clu_LanguageInfo : 33|5@1+ (1.0,0.0) [0.0|31.0] "" BCM,PGS - SG_ CF_Clu_ClusterSound : 38|1@1- (1.0,0.0) [0.0|0.0] "" BCM,CGW,FATC - SG_ CF_Clu_VehicleSpeed2 : 48|8@1+ (1,0) [0|255] "" XXX - -BO_ 1066 _4WD13: 6 _4WD - SG_ _4WD_CURRENT : 0|8@1+ (0.390625,0.0) [-50.0|50.0] "A" TCU - SG_ _4WD_POSITION : 8|16@1+ (0.015625,0.0) [-180.0|180.0] "Deg" TCU - SG_ _4WD_CLU_THERM_STR : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" TCU - SG_ _4WD_STATUS : 32|8@1+ (1.0,0.0) [0.0|15.0] "" ESC,TCU - -BO_ 1065 _4WD12: 8 _4WD - SG_ Ster_Pos : 0|16@1+ (1.0,-600.0) [-600.0|600.0] "Deg" ESC - SG_ FRSS : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ FLSS : 24|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ RRSS : 32|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ RLSS : 40|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC - SG_ CLU_PRES : 48|16@1+ (0.0625,-50.0) [-50.0|50.0] "Bar" ESC - -BO_ 809 EMS12: 8 EMS - SG_ CONF_TCU m1 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LCA,SMK - SG_ CAN_VERS m0 : 0|6@1+ (1.0,0.0) [0.0|7.7] "" _4WD,ABS,ESC,IBOX - SG_ TQ_STND m3 : 0|6@1+ (10.0,0.0) [0.0|630.0] "Nm" _4WD,DATC,ECS,EPB,ESC,FATC,IBOX - SG_ OBD_FRF_ACK m2 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ESC,IBOX - SG_ MUL_CODE M : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,BCM,CLU,DATC,ECS,EPB,ESC,IBOX,LCA,SMK,TCU - SG_ TEMP_ENG : 8|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,BCM,CLU,DATC,EPB,ESC,IBOX,SMK,TCU - SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0.0) [0.0|1.99155] "" IBOX,TCU - SG_ VB_OFF_ACT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ ACK_ES : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,IBOX - SG_ CONF_MIL_FMY : 26|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,IBOX,TCU - SG_ OD_OFF_REQ : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU - SG_ ACC_ACT : 30|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,CLU,ESC,IAP,IBOX,SCC,TCU - SG_ CLU_ACK : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EPB,ESC,IBOX - SG_ BRAKE_ACT : 32|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,AFLS,CLU,DATC,ECS,EPB,ESC,IBOX,LDWS_LKAS,TCU - SG_ ENG_CHR : 34|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,ABS,ACU,CLU,DATC,EPB,ESC,FATC,IBOX,SCC,SMK,TCU - SG_ GP_CTL : 38|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX - SG_ TPS : 40|8@1+ (0.4694836,-15.0234742) [-15.0234742|104.6948357] "%" _4WD,ABS,ACU,CLU,DATC,ECS,EPB,ESC,IBOX,TCU - SG_ PV_AV_CAN : 48|8@1+ (0.3906,0.0) [0.0|99.603] "%" _4WD,AAF,ABS,ACU,AFLS,CLU,DATC,EPB,ESC,IAP,IBOX,LDWS_LKAS,SCC,TCU - SG_ ENG_VOL : 56|8@1+ (0.1,0.0) [0.0|25.5] "liter" _4WD,ABS,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,SCC,SMK - -BO_ 1064 _4WD11: 8 _4WD - SG_ _4WD_TYPE : 0|2@1+ (1.0,0.0) [0.0|3.0] "" ACU,ESC,TPMS - SG_ _4WD_SUPPORT : 2|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,ESC,TPMS - SG_ _4WD_ERR : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC - SG_ CLU_DUTY : 16|8@1+ (1.0,0.0) [0.0|64.0] "%" ABS,ESC - SG_ R_TIRE : 24|8@1+ (1.0,200.0) [200.0|455.0] "mm" ABS,ESC,TPMS - SG_ _4WD_SW : 32|8@1+ (1.0,0.0) [0.0|9.9] "" ESC - SG_ _2H_ACT : 40|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC - SG_ _4H_ACT : 41|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS - SG_ LOW_ACT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TCU,TPMS - SG_ AUTO_ACT : 43|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TPMS - SG_ LOCK_ACT : 44|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS - SG_ _4WD_TQC_CUR : 48|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" ABS,ESC - -BO_ 1319 HU_GW_E_01: 8 CLU - SG_ C_ADrLNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ C_ADrUNValueSet : 4|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ C_TwUnNValueSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_ABuzzerNValueSet : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_ArmWKeyNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_PSMNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_SCMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_HLEscortNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_WELNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_TriTurnLNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_SNVWarnNValueSet : 24|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_LkasWarnNValueSet : 26|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 1318 HU_GW_E_00: 8 CLU - SG_ C_ADrLURValueReq : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_TwUnRValueReq : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_AlarmRValueReq : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_IMSRValueReq : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_HLEscortRValueReq : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_WELRValueReq : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_TriTurnLRValueReq : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_SNVWarnRValueReq : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ C_LkasWarnRValueReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 1317 GW_HU_E_01: 8 BCM - SG_ C_ADrLRValue : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_ADrURValue : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_TwUnRValue : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ABuzzerRValue : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ArmWKeyRValue : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_PSMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SCMRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_HLEscortRValue : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_WELRValue : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TriTurnLRValue : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1316 GW_HU_E_00: 8 BCM - SG_ C_ADrLUNValueConf : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TwUnNValueConf : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_AlarmNValueConf : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_PSMNValueConf : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SCMNValueConf : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_HLEscortNValueConf : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_WELNValueConf : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TriTurnLNValueConf : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1315 GW_SWRC_PE: 8 BCM - SG_ C_ModeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_MuteSW : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SeekDnSW : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SeekUpSW : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_BTPhoneCallSW : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_BTPhoneHangUpSW : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_DISCDownSW : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_DISCUpSW : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SdsSW : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_MTSSW : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_VolDnSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_VolUpSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1314 GW_IPM_PE_1: 8 BCM - SG_ C_AV_Tail : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ParkingBrakeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_RKECMD : 4|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ C_BAState : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_IGNSW : 12|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_CountryCfg : 16|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ C_TailLampActivity : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ RearSW_RSELockOnOff : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SMKTeleCrankingState : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_SMKTeleCrankingFailRes : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1057 SCC12: 8 SCC - SG_ CF_VSM_Prefill : 0|1@1+ (1,0) [0|1] "" ESC - SG_ CF_VSM_DecCmdAct : 1|1@1+ (1,0) [0|1] "" ESC - SG_ CF_VSM_HBACmd : 2|2@1+ (1,0) [0|3] "" ESC - SG_ CF_VSM_Warn : 4|2@1+ (1,0) [0|3] "" CLU,ESC,IAP - SG_ CF_VSM_Stat : 6|2@1+ (1,0) [0|3] "" CLU,ESC,PSB - SG_ CF_VSM_BeltCmd : 8|3@1+ (1,0) [0|7] "" ESC,PSB - SG_ ACCFailInfo : 11|2@1+ (1,0) [0|3] "" CLU,CUBIS,ESC,IBOX - SG_ ACCMode : 13|2@1+ (1,0) [0|3] "" CLU,ESC,IBOX,TCU - SG_ StopReq : 15|1@1+ (1,0) [0|1] "" EPB,ESC - SG_ CR_VSM_DecCmd : 16|8@1+ (0.01,0) [0|2.55] "g" ESC - SG_ TakeOverReq : 35|1@1+ (1,0) [0|1] "" CLU,ESC,TCU - SG_ PreFill : 36|1@1+ (1,0) [0|1] "" ESC,TCU - SG_ CF_VSM_ConfMode : 48|2@1+ (1,0) [0|3] "" CLU,ESC - SG_ AEB_Failinfo : 50|2@1+ (1,0) [0|3] "" CLU,ESC - SG_ AEB_Status : 52|2@1+ (1,0) [0|3] "" CLU,ESC - SG_ AEB_CmdAct : 54|1@1+ (1,0) [0|1] "" ESC - SG_ AEB_StopReq : 55|1@1+ (1,0) [0|1] "" CLU,ESC - SG_ CR_VSM_Alive : 56|4@1+ (1,0) [0|15] "" ESC,PSB - SG_ CR_VSM_ChkSum : 60|4@1+ (1,0) [0|15] "" ESC,PSB - SG_ aReqValue : 37|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX - SG_ aReqRaw : 24|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX - -BO_ 1313 GW_DDM_PE: 8 BCM - SG_ C_DRVDoorStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_ASTDoorStatus : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_RLDoorStatus : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_RRDoorStatus : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_TrunkStatus : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ C_OSMirrorStatus : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - -BO_ 1056 SCC11: 8 SCC - SG_ MainMode_ACC : 0|1@1+ (1,0) [0|1] "" CLU,EMS,ESC - SG_ SCCInfoDisplay : 1|3@1+ (1,0) [0|7] "" CLU,ESC - SG_ AliveCounterACC : 4|4@1+ (1,0) [0|15] "" CLU,EMS,ESC,TCU - SG_ VSetDis : 8|8@1+ (1,0) [0|255] "km/h or MPH" CLU,ESC,TCU - SG_ ObjValid : 16|1@1+ (1,0) [0|1] "" CLU,ESC,TCU - SG_ DriverAlertDisplay : 17|2@1+ (1,0) [0|3] "" CLU,ESC - SG_ TauGapSet : 19|3@1+ (1,0) [0|7] "" CLU,ESC,TCU - SG_ Navi_SCC_Curve_Status : 56|2@1+ (1,0) [0|3] "" CLU - SG_ Navi_SCC_Curve_Act : 58|2@1+ (1,0) [0|3] "" CLU - SG_ Navi_SCC_Camera_Act : 60|2@1+ (1,0) [0|3] "" CLU - SG_ Navi_SCC_Camera_Status : 62|2@1+ (1,0) [0|3] "" CLU - SG_ ACC_ObjStatus : 22|2@1+ (1,0) [0|3] "" ABS,ESC - SG_ ACC_ObjLatPos : 24|9@1+ (0.1,-20) [-20|31.1] "m" ABS,ESC - SG_ ACC_ObjRelSpd : 44|12@1+ (0.1,-170) [-170|239.5] "m/s" ABS,ESC - SG_ ACC_ObjDist : 33|11@1+ (0.1,0) [0|204.7] "m" ABS,ESC - -BO_ 1312 CGW3: 8 BCM - SG_ CR_Photosensor_LH : 0|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC - SG_ CR_Photosensor_RH : 10|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC - SG_ CF_Hoodsw_memory : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EMS - SG_ C_MirOutTempSns : 24|8@1+ (0.5,-40.5) [-40.0|60.0] "deg" AAF,CLU,DATC,EMS,SPAS,AAF,DATC,EMS,SPAS - -BO_ 544 ESP12: 8 ESC - SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,TCU - SG_ LAT_ACCEL_STAT : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU - SG_ LAT_ACCEL_DIAG : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU - SG_ LONG_ACCEL : 13|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ LONG_ACCEL_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ LONG_ACCEL_DIAG : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU - SG_ CYL_PRES : 26|12@1+ (0.1,0.0) [0.0|409.5] "Bar" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU - SG_ CYL_PRES_STAT : 38|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU - SG_ CYL_PRESS_DIAG : 39|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,PSB,SCC,TCU - SG_ YAW_RATE : 40|13@1+ (0.01,-40.95) [-40.95|40.96] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU - SG_ YAW_RATE_STAT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU - SG_ YAW_RATE_DIAG : 54|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU - SG_ ESP12_Checksum : 56|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - SG_ ESP12_AliveCounter : 60|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU - -BO_ 1307 CLU16: 8 CLU - SG_ CF_Clu_TirePressUnitNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" TPMS - SG_ CF_Clu_SlifNValueSet : 3|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Clu_RearWiperNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - -BO_ 790 EMS11: 8 EMS - SG_ SWI_IGK : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,ACU,AHLS,CUBIS,DI_BOX,ECS,EPB,ESC,IBOX,LDWS_LKAS,MDPS,REA,SAS,SCC,TCU - SG_ F_N_ENG : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,IBOX,MDPS,SCC,TCU - SG_ ACK_TCS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX - SG_ PUC_STAT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,DATC,IBOX,TCU - SG_ TQ_COR_STAT : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ESC,IBOX,TCU - SG_ RLY_AC : 6|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,IBOX,TCU - SG_ F_SUB_TQI : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EPB,ESC,IBOX,TCU - SG_ TQI_ACOR : 8|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU - SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,FPCM,IBOX,MDPS,SCC,TCU - SG_ TQI : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,ECS,EPB,ESC,IBOX,TCU - SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU - SG_ VS : 48|8@1+ (1.0,0.0) [0.0|254.0] "km/h" _4WD,AAF,ACU,AHLS,BCM,CLU,DATC,ECS,EPB,IBOX,LCA,LDWS_LKAS,LVR,MDPS,ODS,SCC,SMK,SPAS,TCU,TPMS - SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0.0) [0.0|2.0] "" _4WD,IBOX,TCU - -BO_ 1301 CLU14: 8 CLU - SG_ CF_Clu_ADrUNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_ADrLNValueSet : 3|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_EscortHLNValueSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_DoorLSNValueSet : 8|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_PSMNValueSet : 11|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_TTUnlockNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_PTGMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_SCMNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_WlightNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_TempUnitNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,DATC - SG_ CF_Clu_MoodLpNValueSet : 24|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_TrfChgSet : 27|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS - SG_ CF_Clu_OTTurnNValueSet : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_LcaNValueSet : 32|2@1+ (1.0,0.0) [0.0|3.0] "" LCA - SG_ CF_Clu_RctaNValueSet : 34|2@1+ (1.0,0.0) [0.0|3.0] "" LCA - SG_ CF_Clu_RcwNValueSet : 36|2@1+ (1.0,0.0) [0.0|3.0] "" LCA - SG_ CF_Clu_EscOffNValueSet : 38|3@1+ (1.0,0.0) [0.0|7.0] "" ESC - SG_ CF_Clu_SccNaviCrvNValueSet : 41|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Clu_SccNaviCamNValueSet : 43|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Clu_SccAebNValueSet : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC - SG_ CF_Clu_LkasModeNValueSet : 47|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Clu_FcwNValueSet : 51|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS - SG_ CF_Clu_PasSpkrLvNValueSet : 53|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - SG_ CF_Clu_SccDrvModeNValueSet : 56|3@1+ (1.0,0.0) [0.0|7.0] "" SCC - SG_ CF_Clu_HAnBNValueSet : 59|2@1+ (1.0,0.0) [0.0|3.0] "" BCM - SG_ CF_Clu_HfreeTrunkTgNValueSet : 61|3@1+ (1.0,0.0) [0.0|7.0] "" BCM - -BO_ 275 TCU13: 8 TCU - SG_ N_TGT_LUP : 0|8@1+ (10.0,500.0) [500.0|3040.0] "rpm" EMS,IBOX - SG_ SLOPE_TCU : 8|6@1+ (0.5,-16.0) [-16.0|15.5] "%" CLU,CUBIS,EMS,IBOX - SG_ CF_Tcu_InhCda : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_IsgInhib : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_BkeOnReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_NCStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_TarGr : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,DATC,EMS,EPB,ESC,IBOX,SCC - SG_ CF_Tcu_ShfPatt : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,CUBIS,EMS,IBOX - SG_ CF_Tcu_InhVis : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_PRelReq : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LVR - SG_ CF_Tcu_ITPhase : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_ActEcoRdy : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_TqGrdLim : 32|8@1+ (10.0,0.0) [0.0|2540.0] "Nm/s" EMS,IBOX - SG_ CR_Tcu_IsgTgtRPM : 40|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" EMS,IBOX - SG_ CF_Tcu_SptRdy : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX - SG_ CF_Tcu_SbwPInfo : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ CF_Tcu_Alive3 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_ChkSum3 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX - -BO_ 274 TCU12: 8 TCU - SG_ ETL_TCU : 0|8@1+ (2.0,0.0) [0.0|508.0] "Nm" EMS,IBOX - SG_ CUR_GR : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,ESC,IBOX,SCC,TPMS - SG_ CF_Tcu_Alive : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC - SG_ CF_Tcu_ChkSum : 14|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC - SG_ VS_TCU : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" BCM,CLU,DATC,EMS,IBOX,LCA,LVR,PGS,SMK,SNV - SG_ FUEL_CUT_TCU : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ INH_FUEL_CUT : 29|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ IDLE_UP_TCU : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ N_INC_TCU : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX - SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15.0|15.0] "" EMS,IBOX - SG_ N_TC_RAW : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" EMS,IBOX - SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0.0) [0.0|0.9921875] "km/h" CLU,EMS,IBOX,LCA - -BO_ 273 TCU11: 8 TCU - SG_ TQI_TCU_INC : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX - SG_ G_SEL_DISP : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,AFLS,AVM,BCM,CGW,CLU,CUBIS,ECS,EMS,EPB,ESC,IAP,IBOX,LCA,LDWS_LKAS,LVR,MDPS,PGS,SCC,SMK,SNV,SPAS,TPMS - SG_ F_TCU : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX - SG_ TCU_TYPE : 14|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS,ESC,IBOX - SG_ TCU_OBD : 16|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,ESC,IBOX - SG_ SWI_GS : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,ESC,IBOX,SCC - SG_ GEAR_TYPE : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,EMS,ESC,IBOX,SCC - SG_ TQI_TCU : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX - SG_ TEMP_AT : 32|8@1+ (1.0,-40.0) [-40.0|214.0] "deg" AAF,CLU,CUBIS,EMS,ESC,IBOX - SG_ N_TC : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" _4WD,EMS,EPB,ESC,IBOX - SG_ SWI_CC : 56|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU,EMS,ESC,IBOX - SG_ CF_Tcu_Alive1 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX - SG_ CF_Tcu_ChkSum1 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX - -BO_ 16 ACU13: 8 ACU - SG_ CF_Acu_CshAct : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CUBIS,IBOX,ODS - -BO_ 1007 CRUISE_BUTTON_ALT: 8 XXX - SG_ SET_ME_1 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseSwMain : 58|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseSwState : 60|3@1+ (1,0) [0|7] "" XXX - -BO_ 1046 CRUISE_BUTTON_LFA: 8 XXX - SG_ NEW_SIGNAL_2 : 49|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 54|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 57|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseSwLfa : 58|1@0+ (1,0) [0|1] "" XXX - -BO_ 1040 CGW_USM1: 8 BCM - SG_ CF_Gway_ATTurnRValue : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PTGMRValue : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_EscortHLRValue : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_TTUnlockRValue : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_ADrLRValue : 8|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_ADrURValue : 11|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_SCMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_WlightRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PSMRValue : 18|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_OTTurnRValue : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_DrLockSoundRValue : 24|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_HAnBRValue : 27|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_MoodLpRValue : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_HfreeTrunkRValue : 32|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_AutoLightRValue : 35|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_Gway_RearWiperRValue : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_Gway_PasSpkrLvRValue : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - -BO_ 1292 CLU13: 8 CLU - SG_ CF_Clu_LowfuelWarn : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,FPCM,IBOX - SG_ CF_Clu_RefDetMod : 2|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX - SG_ CF_Clu_AvgFCU : 3|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX - SG_ CF_Clu_AvsmCur : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,SCC - SG_ CF_Clu_AvgFCI : 6|10@1+ (0.1,0.0) [0.0|102.2] "" IBOX - SG_ CF_Clu_DrivingModeSwi : 16|2@1+ (1.0,0.0) [0.0|3.0] "" DATC,ECS,EMS,ESC,IAP,MDPS,TCU - SG_ CF_Clu_FuelDispLvl : 18|5@1+ (1.0,0.0) [0.0|31.0] "" CGW,IBOX - SG_ CF_Clu_FlexSteerSW : 23|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS - SG_ CF_Clu_DTE : 24|10@1+ (1.0,0.0) [0.0|1023.0] "" DATC - SG_ CF_Clu_TripUnit : 34|2@1+ (1.0,0.0) [0.0|3.0] "" DATC - SG_ CF_Clu_SWL_Stat : 36|3@1+ (1.0,0.0) [0.0|7.0] "" ACU,EMS - SG_ CF_Clu_ActiveEcoSW : 39|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EMS,TCU - SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CUBIS,EMS,IAP,IBOX - SG_ CF_Clu_IsaMainSW : 43|1@1+ (1.0,0.0) [0.0|1.0] "" EMS - SG_ CF_Clu_LdwsLkasSW : 56|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS - SG_ CF_Clu_AltLStatus : 59|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,DATC,EMS - SG_ CF_Clu_AliveCnt2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,LDWS_LKAS - -BO_ 1290 SCC13: 8 SCC - SG_ SCCDrvModeRValue : 0|3@1+ (1,0) [0|7] "" CLU - SG_ SCC_Equip : 3|1@1+ (1,0) [0|1] "" ESC - SG_ AebDrvSetStatus : 4|3@1+ (1,0) [0|7] "" CLU,ESC - SG_ Lead_Veh_Dep_Alert_USM : 13|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 1287 TCS15: 4 ESC - SG_ ABS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,IBOX - SG_ TCS_OFF_LAMP : 1|2@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU - SG_ TCS_LAMP : 3|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ACU,CLU,CUBIS,IBOX,SCC - SG_ DBC_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ DBC_F_LAMP : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU - SG_ ESC_Off_Step : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ AVH_CLU : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,EPB - SG_ AVH_I_LAMP : 24|2@1+ (1.0,0.0) [0.0|3.0] "" EPB - SG_ EBD_W_LAMP : 26|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU - SG_ AVH_ALARM : 27|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ AVH_LAMP : 29|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EPB,SPAS - -BO_ 1282 TCU14: 4 TCU - SG_ CF_TCU_WarnMsg : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU - SG_ CF_TCU_WarnImg : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_TCU_WarnSnd : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ CF_Tcu_GSel_BlinkReq : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,LVR - SG_ CF_Tcu_StRelStat : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,ESC - SG_ CF_Tcu_DriWarn1 : 13|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC - SG_ CF_Tcu_DriWarn2 : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,ESC - -BO_ 1281 ECS11: 3 ECS - SG_ ECS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX - SG_ SYS_NA : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ ECS_DEF : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ ECS_DIAG : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ L_CHG_NA : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Leveling_Off : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ LC_overheat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Lifting : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Lowering : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU - SG_ Damping_Mode : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ REQ_Damping : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ REQ_Height : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ REQ_level : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - SG_ ACT_Height : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU - -BO_ 1024 CLU_CFG11: 2 CLU - SG_ Vehicle_Type : 0|16@1+ (1.0,0.0) [0.0|65536.0] "" _4WD - -BO_ 1280 ACU14: 1 ACU - SG_ CF_SWL_Ind : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_TTL_Ind : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU - SG_ CF_SBR_Ind : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU - -BO_ 512 EMS20: 6 EMS - SG_ HYDROGEN_GEAR_SHIFTER : 11|3@1+ (1,0) [0|7] "" XXX - SG_ CF_Ems_PumpTPres : 16|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" FPCM,IBOX - SG_ Split_Stat : 32|1@1+ (1.0,0.0) [0.0|1.0] "" FPCM - -BO_ 909 FCA11: 8 FCA - SG_ CF_VSM_Prefill : 0|1@1+ (1,0) [0|1] "" ESC - SG_ CF_VSM_HBACmd : 1|2@1+ (1,0) [0|3] "" ESC - SG_ CF_VSM_Warn : 3|2@1+ (1,0) [0|3] "" ACU,CLU,ESC - SG_ CF_VSM_BeltCmd : 5|3@1+ (1,0) [0|7] "" ESC - SG_ CR_VSM_DecCmd : 8|8@1+ (0.01,0) [0|2.55] "g" ESC - SG_ FCA_Status : 18|2@1+ (1,0) [0|3] "" ACU,CLU,ESC - SG_ FCA_CmdAct : 20|1@1+ (1,0) [0|1] "" ESC - SG_ FCA_StopReq : 21|1@1+ (1,0) [0|1] "" CLU,ESC - SG_ FCA_DrvSetStatus : 22|3@1+ (1,0) [0|7] "" CLU,ESC - SG_ CF_VSM_DecCmdAct : 31|1@1+ (1,0) [0|1] "" ESC - SG_ FCA_Failinfo : 32|3@1+ (1,0) [0|7] "" ACU,CLU,ESC - SG_ CR_FCA_Alive : 35|4@1+ (1,0) [0|15] "" ESC - SG_ FCA_RelativeVelocity : 39|9@1+ (0.1,-25.5) [-25.5|25.5] "m/s" iBAU - SG_ FCA_TimetoCollision : 48|8@1+ (10,0) [0|2540] "ms" iBAU - SG_ CR_FCA_ChkSum : 56|8@1+ (1,0) [0|255] "" ESC - SG_ PAINT1_Status : 16|2@1+ (1,0) [0|1] "" XXX - -BO_ 1156 HDA11_MFC: 8 XXX - SG_ Counter : 5|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 1|2@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_3 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 16|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 18|14@1+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_6 : 33|2@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 34|14@1+ (1,0) [0|16383] "" XXX - SG_ NEW_SIGNAL_8 : 49|2@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_9 : 50|14@1- (1,-4095) [0|16383] "" XXX - -BO_ 1155 FCA12: 8 FCA - SG_ FCA_USM : 0|3@1+ (1,0) [0|7] "" CGW,CLU,ESC - SG_ FCA_DrvSetState : 3|3@1+ (1,0) [0|7] "" CGW - -BO_ 1186 FRT_RADAR11: 2 FCA - SG_ CF_FCA_Equip_Front_Radar : 0|3@1+ (1,0) [0|7] "" LDWS_LKAS,LDW_LKA,ESC - -BO_ 905 SCC14: 8 SCC - SG_ ComfortBandUpper : 0|6@1+ (0.02,0) [0|1.26] "m/s^2" ESC - SG_ ComfortBandLower : 6|6@1+ (0.02,0) [0|1.26] "m/s^2" ESC - SG_ JerkUpperLimit : 12|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC - SG_ JerkLowerLimit : 19|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC - SG_ NEW_SIGNAL_1 : 26|6@1+ (1,0) [0|63] "" XXX - SG_ ACCMode : 32|3@1+ (1,0) [0|7] "" CLU,HUD,LDWS_LKAS,ESC - SG_ ObjDistStat : 42|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ObjGap : 56|8@1+ (1,0) [0|255] "" CLU,HUD,ESC - -BO_ 1157 LFAHDA_MFC: 8 XXX - SG_ HDA_USM : 0|2@1+ (1,0) [0|3] "" XXX - SG_ HDA_Active : 2|1@1+ (1,0) [0|1] "" XXX - SG_ HDA_Icon_State : 3|2@1+ (1,0) [0|3] "" XXX - SG_ HDA_Chime : 7|1@1+ (1,0) [0|1] "" XXX - SG_ HDA_VSetReq : 8|8@1+ (1,0) [0|255] "km/h" XXX - SG_ LFA_SysWarning : 16|3@1+ (1,0) [0|7] "" XXX - SG_ HDA_Icon_Wheel : 20|1@1+ (1,0) [0|1] "" XXX - SG_ HDA_LdwSysState : 21|2@1+ (1,0) [0|3] "" XXX - SG_ LFA_Icon_State : 24|2@1+ (1,0) [0|3] "" XXX - SG_ LFA_USM : 27|2@1+ (1,0) [0|3] "" XXX - SG_ HDA_SysWarning : 29|2@1+ (1,0) [0|3] "" XXX - -BO_ 913 BCM_PO_11: 8 Vector__XXX - SG_ BCM_Door_Dri_Status : 5|1@0+ (1,0) [0|1] "" PT_ESC_ABS - SG_ BCM_Shift_R_MT_SW_Status : 39|2@0+ (1,0) [0|3] "" PT_ESC_ABS - SG_ LFA_Pressed : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 1426 LABEL11: 8 XXX - SG_ CC_React : 34|1@1+ (1,0) [0|1] "" XXX - -BO_ 910 WHL_SPD12_FS: 5 iBAU - SG_ CRC : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ WHL_SPD12_AliveCounter : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ WHL_SPD_FL : 12|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX - SG_ WHL_SPD_FR : 26|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX - -BO_ 911 WHL_SPD13_FS: 5 iBAU - SG_ CRC : 0|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ WHL_SPD13_AliveCounter : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ WHL_SPD_RL : 12|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX - SG_ WHL_SPD_RR : 26|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX - -BO_ 865 ADAS_PRK_11: 8 ADAS_PRK - SG_ CF_PCA_BrkReq : 24|1@1+ (1,0) [0|0] "" Vector__XXX - SG_ CF_PCA_DclTrgtVal : 28|4@1+ (0.04,0) [0|0] "g" Vector__XXX - SG_ PCA_ALIVE_CNT : 40|4@1+ (1,0) [0|0] "" Vector__XXX - SG_ PCA_CHECK_SUM : 48|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 882 ELECT_GEAR: 8 XXX - SG_ Elect_Gear_Shifter : 16|4@1+ (1,0) [0|7] "" CLU - SG_ Elect_Gear_Shifter_NEXO : 16|16@1+ (1,0) [0|65535] "" CLU - SG_ Elect_Gear_Step : 22|3@0+ (1,0) [0|7] "" XXX - SG_ Elect_Motor_Speed : 0|8@1+ (1,0) [0|255] "" XXX - SG_ SLC_ON : 31|1@0+ (1,0) [0|1] "" CLU - SG_ SLC_SET_SPEED : 32|8@1+ (1,0) [0|255] "" CLU - -BO_ 881 E_EMS11: 8 XXX - SG_ Brake_Pedal_Pos : 0|8@1+ (1,0) [0|127] "" XXX - SG_ IG_Reactive_Stat : 8|3@1+ (1,0) [0|3] "" XXX - SG_ Gear_Change : 12|1@0+ (1,0) [0|31] "" XXX - SG_ Cruise_Limit_Status : 13|1@1+ (1,0) [0|1] "" XXX - SG_ Cruise_Limit_Target : 23|8@1+ (1,0) [0|15] "" XXX - SG_ Accel_Pedal_Pos : 31|8@1+ (1,0) [0|254] "" XXX - SG_ CR_Vcu_AccPedDep_Pos : 56|8@1+ (1,0) [0|254] "" XXX - SG_ Engine_Run : 14|1@0+ (1,0) [0|1] "" XXX - SG_ N : 18|13@1+ (1,0) [0|15] "" XXX - -BO_ 1355 EV_PC6: 8 CGW - SG_ CF_Vcu_SbwWarnMsg : 16|3@1+ (1,0) [0|7] "" Vector__XXX - -BO_ 1430 EV_PC2: 8 CGW - SG_ CR_Ldc_ActVol_LS_V : 32|8@1+ (0.1,0) [0|0] "V" Vector__XXX - -BO_ 1535 EV_PC10: 8 CGW - SG_ CF_Vcu_EpbRequest : 37|1@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 908 RSPA11: 8 RSPA - SG_ CF_RSPA_State : 0|4@1+ (1,0) [0|15] "" XXX - SG_ CF_RSPA_Act : 4|2@1+ (1,0) [0|3] "" XXX - SG_ CF_RSPA_DecCmd : 6|2@1+ (1,0) [0|3] "" XXX - SG_ CF_RSPA_Trgt_Spd : 8|10@1+ (0.01,0) [0|10.23] "km/h" XXX - SG_ CF_RSPA_StopReq : 18|1@1+ (1,0) [0|2] "" XXX - SG_ CR_RSPA_EPB_Req : 22|2@1+ (1,0) [0|3] "" XXX - SG_ CF_RSPA_ACC_ACT : 50|1@1+ (1,0) [0|2] "" XXX - SG_ CF_RSPA_AliveCounter : 52|4@1+ (1,0) [0|15] "" XXX - SG_ CF_RSPA_CRC : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 914 S_MDPS11: 8 XXX - SG_ CF_Mdps_Stat : 0|4@1+ (1,0) [0|15] "" XXX - SG_ CR_Mdps_DrvTq : 8|12@1+ (1,0) [0|15] "" XXX - SG_ CR_Mdps_StrAng : 24|16@1- (1,0) [0|65535] "" XXX - SG_ CF_Mdps_AliveCnt : 47|8@0+ (1,0) [0|255] "" XXX - SG_ CF_Mdps_Chksum : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 357 S_MDPS12: 8 XXX - SG_ NEW_SIGNAL_1 : 0|12@1+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_2 : 12|12@1+ (1,0) [0|4095] "" XXX - SG_ Counter : 48|4@1+ (1,0) [0|15] "" XXX - SG_ Checksum : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 352 AHB1: 8 iBAU - SG_ CF_Ahb_SLmp : 0|2@1+ (1,0) [0|3] "" CLU - SG_ CF_Ahb_Def : 2|2@1+ (1,0) [0|3] "" CGW - SG_ CF_Ahb_Act : 4|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ CF_Ahb_Diag : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ CF_Ahb_WLmp : 7|1@1+ (1,0) [0|1] "" CLU - SG_ CR_Ahb_StDep_mm : 8|16@1- (0.1,0) [-3276.8|3276.7] "mm" Vector__XXX - SG_ CF_Ahb_SnsFail : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ CF_Ahb_PedalCalStat : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ CF_Ahb_Bzzr : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ CF_Ahb_ChkSum : 56|8@1+ (1,0) [0|255] "" Vector__XXX - -BO_ 1191 MFC_4a7: 2 XXX - SG_ PAINT1 : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 1162 BCA11: 8 BCW - SG_ CF_BCA_State : 16|3@1+ (1,0) [0|7] "" CLU,iBAU - SG_ CF_BCA_Warning : 19|2@1+ (1,0) [0|3] "" CLU,iBAU - SG_ AliveCounter : 21|4@1+ (1,0) [0|15] "" CLU,iBAU - SG_ RCCA_Brake_Command : 29|1@1+ (1,0) [0|1] "" iBAU - SG_ Check_Sum : 56|8@1+ (1,0) [0|16] "" iBAU - -BO_ 1136 P_STS: 8 CGW - SG_ HCU1_STS : 6|2@1+ (1,0) [0|3] "" BCW,EPB,FCA,MDPS,SCC,iBAU - SG_ HCU5_STS : 8|2@1+ (1,0) [0|3] "" EPB,FCA,MDPS,iBAU - SG_ Counter : 58|4@1+ (1,0) [0|15] "" MDPS - SG_ Checksum : 62|2@1+ (1,0) [0|3] "" MDPS - -BO_ 304 YRS11: 8 ACU - SG_ CR_Yrs_Yr : 0|16@1+ (0.005,-163.84) [-163.84|163.83] "deg/s" CGW,iBAU - SG_ CR_Yrs_LatAc : 16|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.17651819] "g" iBAU - SG_ CF_Yrs_YrStat : 32|4@1+ (1,0) [0|15] "" iBAU - SG_ CF_Yrs_LatAcStat : 36|4@1+ (1,0) [0|15] "" iBAU - SG_ CF_Yrs_MCUStat : 40|4@1+ (1,0) [0|15] "" iBAU - SG_ CR_Yrs_MsgCnt1 : 48|4@1+ (1,0) [0|15] "" iBAU - SG_ CR_Yrs_Crc1 : 56|8@1+ (1,0) [0|255] "" iBAU - -BO_ 320 YRS12: 8 ACU - SG_ CF_Yrs_LongAcStat : 16|4@1+ (1,0) [0|15] "" iBAU - SG_ CF_IMU_ResetStat : 20|4@1+ (1,0) [0|15] "" iBAU - SG_ YRS_Temp : 24|8@1+ (1,-68) [-68|187] "" iBAU - SG_ YRS_TempStat : 32|4@1+ (1,0) [0|15] "" iBAU - SG_ CF_Yrs_Type : 36|4@1+ (1,0) [0|15] "" iBAU - SG_ CR_Yrs_MsgCnt2 : 48|4@1+ (1,0) [0|15] "" iBAU - SG_ CR_Yrs_Crc2 : 56|8@1+ (1,0) [0|255] "" iBAU - SG_ CR_Yrs_LongAc : 0|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.17651819] "g" CGW,iBAU - -BO_ 1173 YRS13: 8 ACU - SG_ YRS_SeralNo : 16|48@1+ (1,0) [0|281474976710655] "" iBAU - -BO_ 870 EMS_366: 8 EMS - SG_ TQI_1 : 0|8@1+ (0.390625,0) [0|99.6094] "%" MDPS - SG_ N : 8|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" MDPS - SG_ TQI_2 : 24|8@1+ (0.390625,0) [0|99.6094] "%" MDPS - SG_ VS : 40|8@1+ (1,0) [0|255] "km/h" MDPS - SG_ SWI_IGK : 48|1@0+ (1,0) [0|1] "" XXX - -BO_ 854 M_356: 8 XXX - SG_ PAINT1 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ PAINT2 : 34|2@0+ (1,0) [0|1] "" XXX - SG_ PAINT3 : 36|2@0+ (1,0) [0|3] "" XXX - SG_ PAINT4 : 38|1@0+ (1,0) [0|1] "" XXX - -BO_ 1042 ICM_412h: 8 ICM - SG_ T_Outside_input : 0|9@0+ (0.01,0) [0|5] "V" Vector__XXX - SG_ WarningSoundOutput_1Group : 5|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ WarningSoundOutput_2Group : 6|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ WarningSoundOutput_3Group : 7|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ TRIP_A_DT_Display_clock : 22|7@0+ (1,0) [0|99] "clock" Vector__XXX - SG_ TRIP_A_DT_Display_minute : 29|6@0+ (1,0) [0|59] "minute" Vector__XXX - SG_ TRIP_B_DT_Display_clock : 38|7@0+ (1,0) [0|99] "clock" Vector__XXX - SG_ TRIP_B_DT_Display_minute : 45|6@0+ (1,0) [0|59] "minute" Vector__XXX - SG_ PopupMessageOutput_1Level : 48|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_2Level : 49|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_3Level : 50|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_4Level : 51|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_5Level : 52|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_6Level : 53|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_7Level : 54|1@0+ (1,0) [0|1] "" Vector__XXX - SG_ PopupMessageOutput_8Level : 55|1@0+ (1,0) [0|1] "" Vector__XXX - -BO_ 1348 Navi_HU: 8 XXX - SG_ SpeedLim_Nav_Clu : 7|8@0+ (1,0) [0|255] "" XXX - SG_ SpeedLim_Nav_General : 29|1@0+ (1,0) [0|1] "" XXX - SG_ SpeedLim_Nav_Cam : 30|1@0+ (1,0) [0|1] "" XXX - -BO_ 1291 EV_Info: 8 XXX - SG_ OPKR_EV_Charge_Level : 17|7@1+ (1,0) [0|100] "%" XXX -CM_ "BO_ E_EMS11: All (plug-in) hybrids use this gas signal: CR_Vcu_AccPedDep_Pos, and all EVs use the Accel_Pedal_Pos signal. See hyundai/values.py for a specific car list"; -CM_ 145 "Contains signal with accelerator pedal press. Used by fuel cell hydrogen-powered (FCEV) cars such as the 2021 Hyundai Nexo."; -CM_ 512 "Contains signal with gear shifter. Used by fuel cell hydrogen-powered (FCEV) cars such as the 2021 Hyundai Nexo."; -CM_ SG_ 871 CF_Lvr_IsgState "Idle Stop and Go"; -CM_ SG_ 1056 SCCInfoDisplay "Goes to 1 for a second while transitioning from Cruise Control to No Message"; -CM_ SG_ 1348 SpeedLim_Nav_Clu "Speed limit displayed on Nav, Cluster and HUD"; -CM_ SG_ 1348 SpeedLim_Nav_Cam "Speed limit if speed cam exist"; -VAL_ 882 Elect_Gear_Shifter_NEXO 1546 "D" 2314 "N" 2566 "R" 2569 "P"; - -VAL_ 274 CUR_GR 1 "D" 2 "D" 3 "D" 4 "D" 5 "D" 6 "D" 7 "D" 8 "D" 14 "R" 0 "P"; -VAL_ 512 HYDROGEN_GEAR_SHIFTER 5 "D" 8 "S" 6 "N" 7 "R" 0 "P"; -VAL_ 871 CF_Lvr_IsgState 0 "enabled" 1 "activated" 2 "unknown" 3 "disabled"; -VAL_ 871 CF_Lvr_Gear 12 "T" 5 "D" 8 "S" 6 "N" 7 "R" 0 "P"; -VAL_ 882 Elect_Gear_Shifter 4 "S" 5 "D" 8 "S" 6 "N" 7 "R" 0 "P" 12 "T"; -VAL_ 905 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled"; -VAL_ 905 ObjDistStat 0 "no_object" 1 "receding" 2 "approaching"; -VAL_ 909 CF_VSM_Warn 2 "FCW" 3 "AEB"; -VAL_ 916 ACCEnable 0 "SCC ready" 1 "SCC temp fault" 2 "SCC permanent fault" 3 "SCC permanent fault, communication issue"; -VAL_ 1056 SCCInfoDisplay 0 "No Message" 2 "Cruise Control" 3 "Lost Lead" 4 "Standstill"; -VAL_ 1057 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault"; -VAL_ 1157 HDA_Icon_State 0 "no_hda" 1 "white_hda" 2 "green_hda"; -VAL_ 1157 LFA_SysWarning 0 "no_message" 1 "switching_to_hda" 2 "switching_to_scc" 3 "lfa_error" 4 "check_hda" 5 "keep_hands_on_wheel_orange" 6 "keep_hands_on_wheel_red"; -VAL_ 1157 LFA_Icon_State 0 "no_wheel" 1 "white_wheel" 2 "green_wheel" 3 "green_wheel_blink"; -VAL_ 1157 HDA_SysWarning 0 "no_message" 1 "driving_convenience_systems_cancelled" 2 "highway_drive_assist_system_cancelled"; -VAL_ 1322 CF_Clu_Gear 1 "P" 2 "R" 4 "N" 8 "D"; diff --git a/opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc b/opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc deleted file mode 100644 index c0f4f7e180..0000000000 --- a/opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc +++ /dev/null @@ -1,118 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: AWD ECU TCU ESP SAS ABS - - -BO_ 339 ESP_Flags: 8 ESP - SG_ ABD_Active : 3|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU - SG_ TCS_Active : 9|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU - SG_ ABS_Active : 10|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU - SG_ ESP_Off : 12|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU - SG_ ESP_Active : 14|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU - SG_ VehicleSpeed : 16|8@1+ (1,0) [0|254] "km/h" AWD,ECU,TCU - SG_ TorqueRequestFast : 24|8@1+ (0.390625,0) [0|99.609375] "%" ECU,TCU - SG_ TorqueRequestSlow : 40|8@1+ (0.390625,0) [0|99.609375] "%" ECU,TCU - -BO_ 497 ESP_WheelSpeed: 8 ESP - SG_ FrontRightWheelSpeed : 16|12@1+ (0.125,0) [0|511.875] "km/h" AWD - SG_ FrontLeftWheelSpeed : 28|12@1+ (0.125,0) [0|511.875] "km/h" AWD - SG_ RearRightWheelSpeed : 40|12@1+ (0.125,0) [0|511.875] "km/h" AWD - SG_ RearLeftWheelSpeed : 52|12@1+ (0.125,0) [0|511.875] "km/h" AWD - -BO_ 608 ECU_Data1: 8 ECU - SG_ TorqueMin : 0|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU - SG_ Torque : 8|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU - SG_ TorqueTarget : 16|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU - SG_ CruiseEnabled : 25|1@1+ (1,0) [0|1] "yes/no" TCU - SG_ CruiseActive : 26|1@1+ (1,0) [0|1] "yes/no" TCU - SG_ TorqueMax : 40|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU - -BO_ 640 ECU_Data2: 8 ECU - SG_ RPM : 32|8@1+ (32,0) [0|8160] "rpm" TCU - SG_ MAF : 40|8@1+ (5.447,0) [0|1388.985] "mg/TDC" TCU - SG_ IAT : 48|8@1- (0.75,-48) [-48|143.25] "C" TCU - SG_ MAP : 56|8@1+ (0.47058,0) [0|119.9979] "KPa" TCU - -BO_ 688 SAS_Data: 5 SAS - SG_ SAS_Angle : 0|16@1- (0.1,0) [-3276.8|3276.7] "deg" AWD,ECU,ESP,TCU - SG_ SAS_Speed : 16|8@1+ (4,0) [0|1016] "deg/s" ESP,TCU - SG_ SAS_Status : 24|8@1+ (1,0) [0|255] "" ESP,TCU - SG_ Msg_Count : 32|4@1+ (1,0) [0|15] "" ESP - SG_ Check_Sum : 36|4@1+ (1,0) [0|15] "" ECU,ESP - -BO_ 809 ECU_Data5: 8 ECU - SG_ ECT : 8|8@1- (0.75,-48) [-48|143.25] "C" AWD,ABS,ESP,TCU - SG_ BrakeActive : 32|2@1+ (1,0) [0|3] "yes/no" AWD,ABS,ESP,TCU - SG_ TPS : 40|8@1+ (0.47265625,-15) [-15|105.52734375] "%" AWD,ABS,ESP,TCU - -BO_ 1064 AWD_Data1: 8 AWD - SG_ ClutchDuty : 16|8@1+ (1,0) [0|100] "%" ABS,ESP - SG_ ClutchLocked : 44|1@1+ (1,0) [0|1] "yes/no" ABS,ESP - -BO_ 1065 AWD_Data2: 8 AWD - SG_ SteeringWheelPosition : 0|16@1+ (1,-600) [-600|600] "deg" ABS - SG_ FrontRightWheelSpeed : 16|8@1+ (1,0) [0|254] "km/h" ABS - SG_ FrontLeftWheelSpeed : 24|8@1+ (1,0) [0|254] "km/h" ABS - SG_ RearRightWheelSpeed : 32|8@1+ (1,0) [0|254] "km/h" ABS - SG_ RearLeftWheelSpeed : 40|8@1+ (1,0) [0|254] "km/h" ABS - -BO_ 1087 TCU_Data: 8 TCU - SG_ CurrentGear : 0|3@1+ (1,0) [0|7] "" ECU - SG_ GearSwitch : 3|1@1+ (1,0) [0|1] "yes/no" ECU - SG_ SelectorPosition : 8|4@1+ (1,0) [0|15] "" ECU - SG_ InputShaftSpeed : 40|16@1+ (0.25,0) [0|16383.5] "rpm" ECU - -BO_ 1349 ECU_Data6: 8 ECU - SG_ BatteryVoltage : 24|8@1+ (0.1015625,0) [0|25.8984375] "V" ABS,ESP - -BO_ 1408 ABS_WheelSpeed: 8 ABS - SG_ FrontRightWheelSpeed : 16|12@1+ (0.125,0) [0|511.875] "km/h" AWD - SG_ FrontLeftWheelSpeed : 28|12@1+ (0.125,0) [0|511.875] "km/h" AWD - SG_ RearRightWheelSpeed : 40|12@1+ (0.125,0) [0|511.875] "km/h" AWD - SG_ RearLeftWheelSpeed : 52|12@1+ (0.125,0) [0|511.875] "km/h" AWD - -BO_ 1695 ECU_Data7: 8 ECU - SG_ ECU_Temperature : 8|8@1- (1,-28) [-28|227] "C" TCU - -BO_ 1984 SAS_Calibration: 2 ESP - SG_ CCW : 0|4@1+ (1,0) [0|15] "" SAS - SG_ CID : 4|11@1+ (1,0) [0|2047] "" SAS - - - -VAL_ 1087 CurrentGear 7 "R" 0 "N" 1 "1" 2 "2" 3 "3" 4 "4" ; -VAL_ 1087 SelectorPosition 7 "R" 6 "N" 5 "D" 8 "M" 15 "P" ; - diff --git a/opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc b/opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc deleted file mode 100644 index 34fe6b6460..0000000000 --- a/opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc +++ /dev/null @@ -1,153 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 928 EPB_STATUS: 8 XXX - SG_ EPB_BRAKE : 16|1@1+ (1,0) [0|3] "" XXX - -BO_ 1104 SEATBELT_STATUS: 8 XXX - SG_ DRIVER_SEAT_BELT_ONOFF : 21|1@0+ (1,0) [0|3] "" XXX - -BO_ 1056 BODY_ECU_STATUS: 8 XXX - SG_ DOOR_RL_STATUS : 18|1@0+ (1,0) [0|255] "" XXX - SG_ DOOR_FL_STATUS : 13|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_FR_STATUS : 12|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_RR_STATUS : 19|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_BACK_DOOR_STATUS : 22|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_SIGNAL_STATUS : 10|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_SIGNAL_STATUS : 9|1@0+ (1,0) [0|1] "" XXX - -BO_ 832 GEAR_RPM_SPEED_STATUS: 8 XXX - SG_ TRANS_MODE : 7|5@1+ (1,0) [0|0] "" XXX - SG_ TRANS_GEAR_POS : 2|3@0+ (1,0) [0|1] "" XXX - SG_ ENGINE_RPM1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ENGINE_TEMP : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 821 THROTTLE_STATUS: 8 XXX - SG_ CRUSE_ONOFF : 2|1@0+ (1,0) [0|1] "on/off" XXX - SG_ CRUSE_ENABLED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ THROTTLE_PEDAL_POS : 32|8@1+ (1,0) [0|255] "" XXX - SG_ THROTTLE_POS : 24|8@1+ (1,0) [0|255] "" XXX - SG_ RPM : 48|8@1- (1,0) [0|65535] "" XXX - -BO_ 922 STEERING_ANGLE_STATUS: 8 XXX - SG_ STEER_ANGLE_9000 : 7|16@0- (1,0) [0|65535] "" XXX - -BO_ 906 WHEEL_SPEEDS: 8 XXX - SG_ SPEED_FR : 24|8@1+ (1,0) [0|255] "" XXX - SG_ ABS_UNDEF1 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ SPEED_FL : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 848 ABS_WHEELS_STATUS: 8 XXX - SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 15|8@0+ (1,0) [0|255] "" XXX - -BO_ 1402 DASH_STATUS: 8 XXX - SG_ CAR_SPEED : 32|8@1+ (1,0) [0|255] "" XXX - SG_ DASH_INFO2 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ DASH_INFO0 : 0|8@1+ (1,0) [0|255] "" XXX - SG_ DASH_INFO_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ DASH_INFO_3 : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 1306 _SPEEDX: 8 XXX - SG_ DASH_CAR_SPEED : 7|9@0+ (1,0) [0|255] "" XXX - -BO_ 1296 undefined: 8 XXX - -BO_ 790 ENGINE_DATA: 8 XXX - SG_ _X2 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 1313 undefined_2: 8 XXX - -BO_ 1312 __trigger_every_range: 8 XXX - SG_ __SIGNAL_every_interval : 4|1@0+ (1,0) [0|1] "" XXX - -BO_ 896 undefined_3: 8 XXX - SG_ NEW_SIGNAL_1 : 32|4@1+ (1,0) [0|15] "" XXX - -BO_ 809 undefined_4: 8 XXX - -BO_ 864 BREAK_TCS_STATUS: 8 XXX - SG_ SPEED3 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ TCS_ON_FF : 45|1@0+ (1,0) [0|1] "" XXX - SG_ XXXX1 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_PRSSED : 42|1@0+ (1,0) [0|1] "" XXX - -BO_ 842 undefined_5: 8 XXX - -BO_ 880 WHEEL_RPM_STATUS: 8 XXX - SG_ WHEEL_RL_SPEED : 23|16@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_FR_SPEED : 39|16@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_FL_SPEED : 55|16@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_RR_SPEED : 7|16@0- (1,0) [0|255] "" XXX - -BO_ 1040 CONSOLE_STATUS: 8 XXX - SG_ LEFT_SIGNAL_SWITCH : 1|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_SIGNAL_SWITCH : 2|1@0+ (1,0) [0|1] "" XXX - SG_ HEAD_LIGHT_HANDLE_SWITCH : 3|1@0+ (1,0) [0|1] "" XXX - SG_ HID_LIGHT_SWITCH : 4|1@0+ (1,0) [0|1] "" XXX - SG_ YELLOW_WARN_TEMP_TRIGGER : 5|1@0+ (1,0) [0|1] "" XXX - SG_ HID_LIGHT_HANDLE_SWITCH : 6|1@0+ (1,0) [0|1] "" XXX - SG_ MIX_MODE : 7|1@0+ (1,0) [0|1] "" XXX - SG_ slider_rain_bar : 13|1@0+ (1,0) [0|1] "" XXX - SG_ temp_slider_rain_bar : 15|1@0+ (1,0) [0|1] "" XXX - SG_ temp_water_push : 11|1@0+ (1,0) [0|1] "" XXX - -BO_ 1120 HAVC_STATUS: 8 XXX - SG_ HAVC_TEMP : 32|8@1+ (1,0) [0|255] "" XXX - - -CM_ SG_ 1104 DRIVER_SEAT_BELT_ONOFF "0 - on , 1 = off"; -CM_ SG_ 1056 DOOR_RL_STATUS "04 - RL - open"; -CM_ SG_ 1056 DOOR_FL_STATUS "28 - FL open , 38 - FR"; -CM_ SG_ 1056 RIGHT_SIGNAL_STATUS "R,L shows at same time means hazard"; -CM_ SG_ 832 TRANS_MODE "AT - 85 / MT - 8D"; -CM_ SG_ 832 TRANS_GEAR_POS "R-7 , 0 - N"; -CM_ SG_ 821 CRUSE_ONOFF "Cruse Switch"; -CM_ SG_ 821 CRUSE_ENABLED "Cruse enabled"; -CM_ SG_ 821 THROTTLE_PEDAL_POS "Real Pedal Pos"; -CM_ SG_ 821 THROTTLE_POS "Throttle Pos for Cruse Mode"; -CM_ SG_ 906 ABS_UNDEF1 "ABS force"; -CM_ SG_ 906 SPEED_FL "used for car speed in dash board"; -CM_ SG_ 864 TCS_ON_FF "ON = 1, OFF =0"; diff --git a/opendbc_repo/opendbc/dbc/mazda_2017.dbc b/opendbc_repo/opendbc/dbc/mazda_2017.dbc deleted file mode 100644 index d2bb77b351..0000000000 --- a/opendbc_repo/opendbc/dbc/mazda_2017.dbc +++ /dev/null @@ -1,791 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 117 STEER_RELATED: 8 XXX - SG_ CTR : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 48|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 49|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 50|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 54|4@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_3 : 55|1@0+ (1,0) [0|63] "" XXX - SG_ STEER_ANGLE_2 : 39|16@0+ (0.1,-1800) [0|131071] "" XXX - SG_ STEER_TORQUE : 19|12@0+ (1,-2000) [0|255] "" XXX - -BO_ 118 RPM_RELATED: 8 XXX - SG_ CTR : 7|8@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_2 : 19|12@0+ (1,0) [0|4095] "" XXX - -BO_ 514 ENGINE_DATA: 8 XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|127] "" XXX - SG_ RPM : 7|16@0+ (0.25,0) [0|8500] "rpm" XXX - SG_ SPEED : 23|16@0+ (0.01,0) [0|32767] "kph" XXX - SG_ PEDAL_GAS : 39|12@0+ (1,0) [0|255] "%" XXX - -BO_ 357 PEDALS: 8 XXX - SG_ NEW_SIGNAL_6 : 31|4@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 8|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_OFF : 2|1@1+ (1,0) [0|15] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX - SG_ STANDSTILL : 26|1@0+ (1,0) [0|16777215] "" XXX - SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|3] "" XXX - SG_ BRAKE_ON : 4|1@0+ (1,0) [0|1] "" XXX - SG_ NO_BRAKE : 6|1@0+ (1,0) [0|7] "" XXX - SG_ BRAKE_ON_2 : 7|1@1+ (1,0) [0|255] "" XXX - SG_ NO_BRAKE_2 : 15|1@0+ (1,0) [0|7] "" XXX - SG_ GEAR : 48|5@1+ (1,0) [0|255] "" XXX - -BO_ 533 WHEEL_SPEEDS: 8 XXX - SG_ FL : 7|16@0+ (0.01,-100) [0|16383] "kph" XXX - SG_ FR : 23|16@0+ (0.01,-100) [0|65535] "kph" XXX - SG_ RL : 39|16@0+ (0.01,-100) [0|15] "kph" XXX - SG_ RR : 55|16@0+ (0.01,-100) [0|65535] "kph" XXX - -BO_ 134 STEER2: 8 XXX - SG_ CTR : 22|4@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_4 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ CTR_2 : 28|3@1+ (1,0) [0|7] "" XXX - SG_ STEER_ANGLE_ROUGH : 26|11@0+ (1,-1000) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 18|3@0+ (1,0) [0|1] "" XXX - SG_ STEER_ANGLE : 7|16@0+ (0.1,-1600) [-500|500] "deg" XXX - SG_ NEW_SIGNAL_1 : 63|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|7] "" XXX - -BO_ 576 STEER_TORQUE: 8 XXX - SG_ NEW_SIGNAL_1 : 23|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 47|1@0+ (1,0) [0|1] "" XXX - SG_ SENSOR1 : 39|8@0+ (1,-128) [0|127] "" XXX - SG_ STEER_TORQUE_MOTOR : 46|15@0- (0.1,0) [-3000|3000] "tbd" XXX - SG_ NEW_SIGNAL_2 : 62|4@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_4 : 15|8@0+ (1,0) [0|127] "" XXX - SG_ STEER_TORQUE_SENSOR : 7|8@0+ (1,-127) [-85|85] "" XXX - -BO_ 577 STEER_RATE: 8 XXX - SG_ STEER_ANGLE_RATE : 23|16@0+ (0.25,-8192) [0|1] "deg/s" XXX - SG_ CTR : 7|4@0+ (1,0) [0|15] "" XXX - SG_ LKAS_REQUEST : 3|12@0+ (1,-2048) [0|15] "" XXX - SG_ LKAS_EFFECTIVE : 39|12@0+ (1,-2048) [0|255] "" XXX - SG_ HANDS_OFF_5_SECONDS : 51|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_BLOCK : 50|1@1+ (1,0) [0|3] "" XXX - SG_ LKAS_TRACK_STATE : 52|1@0+ (1,0) [0|3] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 582 CAM_LANEMAYBE: 8 XXX - SG_ NEW_SIGNAL_4 : 40|8@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_1 : 31|16@0- (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 55|16@0+ (1,0) [0|65535] "" XXX - SG_ CTR : 7|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_3 : 15|16@0+ (1,0) [0|65535] "" XXX - -BO_ 541 CAM_EMPTY: 8 XXX - -BO_ 605 CAM_PEDESTRIAN: 8 XXX - SG_ CTR : 17|4@0+ (1,0) [0|255] "" XXX - SG_ AEB_NOT_ENGAGED : 13|1@0+ (1,0) [0|1] "" XXX - SG_ PED_WARNING : 9|1@0+ (1,0) [0|255] "" XXX - SG_ PED_BRAKE : 3|3@0+ (1,0) [0|7] "" XXX - SG_ RST_CTR : 23|6@0+ (1,0) [0|63] "" XXX - SG_ S1 : 29|4@0+ (1,0) [0|31] "" XXX - SG_ BRAKE_WARNING : 25|1@0+ (1,0) [0|1] "" XXX - -BO_ 578 CAM_LANETRACK: 8 XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ ZERO : 53|6@0+ (1,0) [0|63] "" XXX - SG_ CTR : 7|4@0+ (1,0) [0|15] "" XXX - SG_ LINE2 : 9|10@0+ (1,-686) [0|255] "" XXX - SG_ LANE_CURVE : 31|8@0+ (1,-127) [0|255] "" XXX - SG_ SIG1 : 39|8@0+ (1,-128) [0|255] "" XXX - SG_ SIG2 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ SIG3 : 55|2@0+ (1,0) [0|3] "" XXX - SG_ LINE1 : 3|10@0+ (1,-686) [0|1] "" XXX - -BO_ 579 CAM_LKAS: 8 XXX - SG_ CTR : 7|4@0+ (1,0) [0|15] "" XXX - SG_ ERR_BIT_1 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX - SG_ LINE_NOT_VISIBLE : 19|1@0+ (1,0) [0|1] "" XXX - SG_ BIT_1 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ LDW : 23|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_REQUEST : 3|12@0+ (1,-2048) [0|2048] "" XXX - SG_ ERR_BIT_2 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ ANGLE_ENABLED : 52|1@0+ (1,0) [0|1] "" XXX - SG_ STEERING_ANGLE : 33|12@0+ (1,-2048) [-2048|2047] "" XXX - -BO_ 580 CAM_DISTANCE: 8 XXX - SG_ S1 : 0|8@1+ (1,0) [0|127] "" XXX - SG_ S2 : 15|8@0+ (1,0) [0|1] "" XXX - SG_ S3 : 16|8@1+ (1,0) [0|3] "" XXX - SG_ S4 : 24|8@1+ (1,0) [0|31] "" XXX - SG_ S5 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ DISTANCE : 47|8@0+ (1,0) [0|65535] "" XXX - SG_ S6 : 55|16@0+ (1,0) [0|255] "" XXX - -BO_ 581 CAM_IDK3: 8 XXX - SG_ S1 : 0|8@1+ (1,0) [0|15] "" XXX - SG_ S2 : 8|6@1+ (1,0) [0|255] "" XXX - SG_ S3 : 15|2@0+ (1,0) [0|3] "" XXX - SG_ S4 : 16|8@1+ (1,0) [0|15] "" XXX - SG_ S5 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ S6 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ S7 : 40|8@1+ (1,0) [0|3] "" XXX - SG_ S8 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ S9 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 863 CAM_TRAFFIC_SIGNS: 8 XXX - SG_ NEW_SIGNAL_3 : 55|1@0+ (1,0) [0|127] "" XXX - SG_ FORWARD_COLLISION : 40|8@1+ (1,0) [0|7] "" XXX - SG_ SPEED_SIGN : 4|7@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 52|5@0+ (1,0) [0|31] "" XXX - SG_ SPEED_SIGN_CAM : 32|1@0+ (1,0) [0|32767] "" XXX - SG_ SPEED_SIGN_ON : 12|1@0+ (1,0) [0|3] "" XXX - SG_ STOP_SIGN : 31|4@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 33|1@0+ (1,0) [0|1] "" XXX - -BO_ 1157 CAM_SETTINGS: 8 XXX - SG_ SBS_WARNING_DISTANCE : 25|2@0+ (1,0) [0|127] "" XXX - SG_ SBS_SCBC : 28|2@0+ (1,0) [0|7] "" XXX - SG_ LKAS_ASSIT_TIMING : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LKAS_SENSETIVITY : 10|1@0+ (1,0) [0|1] "" XXX - SG_ ILKAS_NTERVENTION_ON2 : 17|1@0+ (1,0) [0|255] "" XXX - SG_ LANEE_DEPARTURE_ALERT : 16|2@0+ (1,0) [0|1] "" XXX - SG_ LKAS_INERVENTION_ON1 : 15|1@0+ (1,0) [0|1] "" XXX - SG_ WARNING : 11|1@0+ (1,0) [0|1] "" XXX - SG_ BIT1 : 12|1@0+ (1,0) [0|7] "" XXX - SG_ BIT2 : 14|1@0+ (1,0) [0|1] "" XXX - SG_ BIT3 : 18|1@0+ (1,0) [0|1] "" XXX - -BO_ 1160 CAM_Empty3: 8 XXX - SG_ NEW_SIGNAL_1 : 47|24@0+ (1,0) [0|16777215] "" XXX - -BO_ 1088 CAM_LANEINFO: 8 XXX - SG_ BIT3 : 62|1@0+ (1,0) [0|3] "" XXX - SG_ HANDS_ON_STEER_WARN_2 : 59|1@0+ (1,0) [0|1] "" XXX - SG_ HANDS_ON_STEER_WARN : 56|1@0+ (1,0) [0|3] "" XXX - SG_ S1_HBEAM : 54|1@0+ (1,0) [0|31] "" XXX - SG_ S1 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ HANDS_WARN_3_BITS : 51|3@0+ (1,0) [0|7] "" XXX - SG_ ERR_BIT : 40|1@0+ (1,0) [0|1] "" XXX - SG_ NO_ERR_BIT : 14|1@0+ (1,0) [0|1] "" XXX - SG_ BIT2 : 13|1@0+ (1,0) [0|15] "" XXX - SG_ LANE_LINES : 10|3@0+ (1,0) [0|3] "" XXX - SG_ BIT1 : 6|1@0+ (1,0) [0|65535] "" XXX - SG_ LINE_NOT_VISIBLE : 1|1@0+ (1,0) [0|1] "" XXX - SG_ LINE_VISIBLE : 0|1@0+ (1,0) [0|3] "" XXX - SG_ LDW_WARN_RL : 58|1@0+ (1,0) [0|1] "" XXX - SG_ LDW_WARN_LL : 57|1@0+ (1,0) [0|1] "" XXX - SG_ TJA : 38|3@0+ (1,0) [0|7] "" XXX - SG_ TJA_TRANSITION : 27|2@0+ (1,0) [0|63] "" XXX - -BO_ 1479 NEW_MSG_470: 8 XXX - -BO_ 1456 NEW_MSG_300: 8 XXX - -BO_ 1446 NEW_MSG_a600: 8 XXX - -BO_ 1416 MSG_18: 8 XXX - -BO_ 1086 DOORS: 8 XXX - SG_ LEFTGATE : 32|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 53|1@0+ (1,0) [0|255] "" XXX - SG_ KEYFOB_HORN : 2|1@0+ (1,0) [0|1] "" XXX - SG_ KEYFOB_LOCK : 3|1@0+ (1,0) [0|1] "" XXX - SG_ KEYFOB_UNLOCK : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CTR1 : 8|4@1+ (1,0) [0|3] "" XXX - SG_ CTR2 : 16|4@1+ (1,0) [0|15] "" XXX - SG_ BR : 34|1@0+ (1,0) [0|1] "" XXX - SG_ BL : 35|1@0+ (1,0) [0|1] "" XXX - SG_ FR : 36|1@0+ (1,0) [0|1] "" XXX - SG_ FL : 37|1@0+ (1,0) [0|255] "" XXX - SG_ DOORS_UNLOCKED : 30|1@0+ (1,0) [0|255] "" XXX - -BO_ 977 TWO_STATES: 8 XXX - SG_ NEW_SIGNAL_1 : 50|1@1+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_2 : 56|4@1+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_3 : 28|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 24|4@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 36|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 47|8@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 51|1@0+ (1,0) [0|1] "" XXX - -BO_ 1085 MSG_12: 8 XXX - SG_ NEW_SIGNAL_3 : 36|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 16|8@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 48|8@1+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 31|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 24|1@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_6 : 40|3@1+ (1,0) [0|7] "" XXX - -BO_ 159 MSG_11: 8 XXX - SG_ NEW_SIGNAL_1 : 50|4@1+ (1,0) [0|15] "" XXX - SG_ INCREASEING : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 1278 NEW_MSG_3: 8 XXX - SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ MILAGE_MAYBE : 7|16@0+ (1,0) [0|255] "" XXX - -BO_ 1277 NEW_MSG_10: 8 XXX - SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ counter : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 1275 2017_5: 8 XXX - SG_ counter : 4|5@0+ (1,0) [0|255] "" XXX - -BO_ 1274 NEW_MSG_12: 8 XXX - SG_ NEW_SIGNAL_1 : 24|4@1+ (1,0) [0|15] "" XXX - SG_ CTR : 55|4@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_2 : 35|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 32|3@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_4 : 48|4@1+ (1,0) [0|7] "" XXX - -BO_ 1180 last_byte_roughRPM: 8 XXX - SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1078 HVAC: 8 XXX - SG_ NEW_SIGNAL_1 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 8|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 23|1@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 56|5@0+ (1,0) [0|255] "" XXX - -BO_ 1056 CHECK_AND_TEMP: 8 XXX - SG_ NEW_SIGNAL_1 : 29|6@0+ (1,0) [0|255] "" XXX - SG_ counter_or_GEAR : 15|8@0+ (1,0) [0|255] "" XXX - SG_ CTR : 23|8@0+ (1,0) [0|255] "" XXX - SG_ STANDSTILL : 32|1@0+ (1,0) [0|255] "" XXX - SG_ COOLANT_TEMP : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LOW_ENGINE_OIL_PRESSURE : 43|1@0+ (1,0) [0|1] "" XXX - SG_ CHECK_FUEL_CAP : 40|1@0+ (1,0) [0|1] "" XXX - SG_ CHARGING_SYSTEM_MALFUNCTION : 38|1@0+ (1,0) [0|1] "" XXX - SG_ OUTDOOR_TEMP : 63|8@0+ (0.25,-63) [0|255] "cel" XXX - -BO_ 1045 TRACTION: 8 XXX - SG_ NEW_SIGNAL_2 : 20|1@0+ (1,0) [0|3] "" XXX - SG_ CTR2 : 19|4@0+ (1,0) [0|31] "" XXX - SG_ CTR3 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ IS_MOVING : 12|1@0+ (1,0) [0|3] "" XXX - SG_ CTR1 : 53|6@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 54|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE : 55|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_WARNING : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ABS_MALFUNCTION : 1|2@0+ (1,0) [0|3] "" XXX - SG_ DSC_OFF : 3|1@0+ (1,0) [0|1] "" XXX - SG_ TCS_DCS_MALFUNCTION : 6|2@0+ (1,0) [0|3] "" XXX - SG_ LOUD_BEEP : 28|1@0+ (1,0) [0|1] "" XXX - SG_ TPMS_WARNING_DOUBLE_BLINK : 31|1@0+ (1,0) [0|1] "" XXX - -BO_ 1034 MSG_07: 8 XXX - SG_ NEW_SIGNAL_1 : 6|3@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 0|4@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_3 : 15|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_9 : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 870 RADAR_366_STATIC: 8 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 867 RADAR_363: 8 XXX - SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX - SG_ STATIC_4 : 43|16@0+ (1,0) [0|255] "" XXX - SG_ FLIPPY_1 : 31|3@0+ (1,0) [0|7] "" XXX - SG_ FLIPPY_2 : 47|1@0+ (1,0) [0|15] "" XXX - SG_ FLIPPY_4 : 44|1@0+ (1,0) [0|3] "" XXX - SG_ FLIPPY_3 : 46|1@0+ (1,0) [0|3] "" XXX - SG_ CURVE_1 : 7|12@0+ (1,0) [0|255] "" XXX - SG_ CURVE_2 : 11|12@0+ (1,0) [0|255] "" XXX - SG_ CURVE_3 : 28|13@0+ (1,0) [0|255] "" XXX - -BO_ 130 STEER: 8 XXX - SG_ NEW_SIGNAL_5 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ CTR : 47|4@0+ (1,0) [0|255] "" XXX - SG_ STEER_ANGLE : 23|16@0+ (0.05,-1600) [500|-500] "deg" XXX - SG_ CHKSUM_MAYBE : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 120 BRAKE: 8 XXX - SG_ CTR : 55|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_PRESSURE : 39|8@0+ (1,0) [0|255] "" XXX - SG_ VEHICLE_ACC_X : 5|13@0+ (0.01,-40) [-40|40] "m/s^2" XXX - SG_ VEHICLE_ACC_Y : 8|13@0+ (0.001,-4.096) [-4.096|4.096] "m/s^2" XXX - -BO_ 304 GEAR_RELATED: 8 XXX - SG_ NEW_SIGNAL_1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 865 RADAR_DISTANCE: 8 XXX - SG_ CTR : 56|4@1+ (1,0) [0|15] "" XXX - SG_ STATIC : 36|3@0+ (1,0) [0|31] "" XXX - SG_ DISTANCE_RELATED : 33|4@0+ (1,0) [0|3] "" XXX - SG_ SPEED_INVERSE : 43|12@0- (-0.225,0) [0|255] "kph" XXX - SG_ DISTANCE_LEAD : 7|24@0+ (1,0) [0|31] "" XXX - SG_ RELATIVE_VEL_LEAD : 31|11@0- (1,0) [0|255] "" XXX - -BO_ 836 NEW_MSG_19: 8 XXX - SG_ CTR : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CTR2 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 832 SEATBELT: 8 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ PASSENGER_SEATBELT : 26|1@1+ (1,0) [0|7] "" XXX - SG_ CTR1 : 15|4@0+ (1,0) [0|15] "" XXX - SG_ CTR2 : 23|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 8|4@1+ (1,0) [0|3] "" XXX - SG_ DRIVER_SEATBELT : 27|1@0+ (1,0) [0|1] "" XXX - -BO_ 866 RADAR_TURN: 8 XXX - SG_ CTR : 59|4@0+ (1,0) [0|15] "" XXX - SG_ STEER_ANGLE : 43|12@0+ (-1,2048) [0|7] "" XXX - SG_ STATIC_2 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ CURVE_1 : 7|12@0+ (1,0) [0|131071] "" XXX - SG_ CURVE_2 : 11|12@0- (1,0) [0|127] "" XXX - SG_ FLIPPY_1 : 44|1@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 34|3@1+ (1,0) [0|3] "" XXX - SG_ CURVE_3 : 31|11@0- (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_1 : 33|4@0+ (1,0) [0|3] "" XXX - -BO_ 158 MSG_05: 8 XXX - SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 157 CRZ_BTNS: 8 XXX - SG_ BIT1 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ BIT2 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ BIT3 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ SET_P_INV : 21|1@0+ (1,0) [0|1] "" XXX - SG_ CAN_OFF_INV : 17|1@0+ (1,0) [0|1] "" XXX - SG_ CAN_OFF : 0|1@0+ (1,0) [0|1] "" XXX - SG_ SET_M_INV : 22|1@0+ (1,0) [0|1] "" XXX - SG_ SET_M : 5|1@0+ (1,0) [0|1] "" XXX - SG_ SET_P : 4|1@0+ (1,0) [0|1] "" XXX - SG_ RES_INV : 19|1@0+ (1,0) [0|1] "" XXX - SG_ RES : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DISTANCE_LESS : 7|1@0+ (1,0) [0|1] "" XXX - SG_ DISTANCE_LESS_INV : 8|1@0+ (1,0) [0|1] "" XXX - SG_ DISTANCE_MORE : 6|1@0+ (1,0) [0|1] "" XXX - SG_ DISTANCE_MORE_INV : 23|1@0+ (1,0) [0|1] "" XXX - SG_ MODE_Y : 13|1@0+ (1,0) [0|1] "" XXX - SG_ MODE_X : 14|1@0+ (1,0) [0|1] "" XXX - SG_ MODE_Y_INV : 30|1@0+ (1,0) [0|1] "" XXX - SG_ MODE_X_INV : 31|1@0+ (1,0) [0|1] "" XXX - SG_ CTR : 29|4@0+ (1,0) [0|15] "" XXX - -BO_ 154 BLINK_INFO: 8 XXX - SG_ LEFT_BLINK : 18|1@1+ (1,0) [0|3] "" XXX - SG_ RIGHT_BLINK : 19|1@0+ (1,0) [0|255] "" XXX - SG_ REAR_WIPER_ON : 0|1@0+ (1,0) [0|1] "" XXX - SG_ WIPER_LO : 33|1@1+ (1,0) [0|31] "" XXX - SG_ WIPER_HI : 34|1@0+ (1,0) [0|1] "" XXX - SG_ LOW_BEAMS : 5|2@0+ (1,0) [0|3] "" XXX - SG_ HIGH_BEAMS : 7|2@0+ (1,0) [0|3] "" XXX - SG_ LBEAM1 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ LBEAM2 : 50|1@0+ (1,0) [0|1] "" XXX - SG_ LBEAM3 : 60|1@0+ (1,0) [0|1] "" XXX - -BO_ 145 TURN_SWITCH: 8 XXX - SG_ HAZARD : 10|1@0+ (1,0) [0|1] "" XXX - SG_ TURN_RIGHT_SWITCH : 12|1@0+ (1,0) [0|3] "" XXX - SG_ TURN_LEFT_SWITCH : 13|1@0+ (1,0) [0|255] "" XXX - SG_ CTR : 27|4@0+ (1,0) [0|255] "" XXX - SG_ CHKSUM : 39|8@0+ (1,0) [0|15] "" XXX - -BO_ 80 MSG_04: 8 XXX - SG_ NEW_SIGNAL_1 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ SIGNAL : 24|1@0+ (1,0) [0|1] "" XXX - -BO_ 978 MSG_03: 8 XXX - SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ CTR : 1|2@0+ (1,0) [0|255] "" XXX - -BO_ 607 NEW_MSG_25: 8 XXX - -BO_ 1115 MSG_02: 8 XXX - SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 47|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 63|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ CTR : 2|3@0+ (1,0) [0|255] "" XXX - -BO_ 1067 NEW_MSG_27: 8 XXX - SG_ NEW_SIGNAL_2 : 3|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 11|1@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_7 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_9 : 8|1@0+ (1,0) [0|1] "" XXX - -BO_ 358 NEW_MSG_28: 8 XXX - -BO_ 608 NEW_MSG_29: 8 XXX - SG_ NEW_SIGNAL_1 : 8|5@1+ (1,0) [0|7] "" XXX - -BO_ 606 SPEED_TBD: 8 XXX - SG_ SPEED_TBD : 7|12@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 23|12@0- (1,0) [0|65535] "" XXX - -BO_ 552 GEAR: 8 XXX - SG_ NEW_SIGNAL_3 : 11|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 26|3@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 31|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_7 : 39|1@0+ (1,0) [0|255] "" XXX - SG_ MORE_GEAR : 7|4@0+ (1,0) [0|15] "" XXX - SG_ GEAR : 2|3@0+ (1,0) [0|7] "" XXX - SG_ GEAR_BOX : 36|4@0+ (1,0) [0|15] "" XXX - -BO_ 543 CRZ_EVENTS: 8 XXX - SG_ CTR : 51|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_21 : 23|1@0+ (1,0) [0|15] "" XXX - SG_ GAS_MAYBE : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ACCEL_CMD : 46|8@0- (1,0) [0|15] "" XXX - SG_ CRUISE_ACTIVE_CAR_MOVING : 16|1@0+ (1,0) [0|1] "" XXX - SG_ PLUS_ONE_CRZ : 17|1@0+ (1,0) [0|255] "" XXX - SG_ CRZ_STARTED : 18|1@0+ (1,0) [0|1] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX - SG_ PLUS_ONE_CRZ_2 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ ACCEL_CMD_LOW_RES : 29|8@0- (1,0) [0|255] "" XXX - SG_ CRZ_SPEED : 7|16@0+ (0.005,-0.5) [0|328] "kph" XXX - -BO_ 542 NEW_MSG_33: 8 XXX - SG_ CTR : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CTR2 : 56|4@1+ (1,0) [0|15] "" XXX - -BO_ 868 RADAR_364: 8 XXX - SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 7|12@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 11|12@0- (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 27|12@0- (1,0) [0|255] "" XXX - SG_ FLIPPERS_1 : 31|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 44|1@1+ (1,0) [0|3] "" XXX - SG_ FLIPPY_1 : 46|1@0+ (1,0) [0|3] "" XXX - SG_ STATIC_1 : 47|1@0+ (1,0) [0|15] "" XXX - SG_ STATIC_2 : 43|16@0+ (1,0) [0|7] "" XXX - -BO_ 869 RADAR_365: 8 XXX - SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|6@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_1 : 7|14@0+ (1,0) [0|65535] "" XXX - SG_ RELATED_1 : 9|18@0+ (1,0) [0|3] "" XXX - SG_ RELATED_2 : 33|18@0+ (1,0) [0|15] "" XXX - SG_ STATIC : 61|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 63|2@0+ (1,0) [0|15] "" XXX - -BO_ 1114 NEW_MSG_4: 8 XXX - -BO_ 535 CURVE_CTRS: 8 XXX - SG_ CTR_A_1 : 4|3@0+ (1,0) [0|31] "" XXX - SG_ CTR_A_2 : 7|3@0+ (1,0) [0|255] "" XXX - SG_ CTR_B_1 : 12|3@0+ (1,0) [0|7] "" XXX - SG_ CTR_B_2 : 15|3@0+ (1,0) [0|7] "" XXX - SG_ CTR_C_1 : 20|3@0+ (1,0) [0|7] "" XXX - SG_ CTR_C_2 : 23|3@0+ (1,0) [0|255] "" XXX - SG_ CTR_D_2 : 31|3@0+ (1,0) [0|7] "" XXX - SG_ CTR_D_1 : 28|3@0+ (1,0) [0|7] "" XXX - SG_ SPEED : 39|16@0+ (0.01,0) [0|7] "kph" XXX - SG_ CTR : 55|8@0+ (1,0) [0|255] "" XXX - SG_ CHK_MAYBE : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 17|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 25|1@0+ (1,0) [0|1] "" XXX - SG_ SEATBELT_MAYBE : 8|1@0+ (1,0) [0|1] "" XXX - SG_ NO_SEATBELT_MAYBE : 16|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 9|1@0+ (1,0) [0|1] "" XXX - -BO_ 540 CRZ_CTRL: 8 XXX - SG_ NEW_SIGNAL_6 : 10|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_9 : 31|1@0+ (1,0) [0|255] "" XXX - SG_ ACC_GAS_MAYBE2 : 29|1@0+ (1,0) [0|1] "" XXX - SG_ HANDS_OFF_STEERING : 48|1@0+ (1,0) [0|1] "" XXX - SG_ HANDS_ON_STEER_WARN : 59|4@0+ (1,0) [0|255] "" XXX - SG_ CRZ_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX - SG_ CRZ_AVAILABLE : 17|1@0+ (1,0) [0|255] "" XXX - SG_ DISTANCE_SETTING : 20|3@0+ (1,0) [0|7] "" XXX - SG_ MSG_1_INV : 1|1@0+ (1,0) [0|1] "" XXX - SG_ MSG_1_COPY : 9|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_GAS_MAYBE : 23|1@0+ (1,0) [0|31] "" XXX - SG_ ACC_ACTIVE_2 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_10 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ MSG_1 : 0|1@0+ (1,0) [0|3] "" XXX - SG_ 5_SEC_DISABLE_TIMER : 45|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_3 : 13|1@0+ (1,0) [0|3] "" XXX - SG_ MSG_1_INV_COPY : 8|1@0+ (1,0) [0|7] "" XXX - SG_ RADAR_HAS_LEAD : 23|1@0+ (1,0) [0|1] "" XXX - SG_ RADAR_LEAD_RELATIVE_DISTANCE : 31|3@0+ (1,0) [0|5] "" XXX - -BO_ 539 CRZ_INFO: 8 XXX - SG_ CTR1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ ACC_ACTIVE : 33|1@0+ (1,0) [0|1] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 47|1@0+ (1,0) [0|255] "" XXX - SG_ ACC_SET_ALLOWED : 34|1@0+ (1,0) [0|1] "" XXX - SG_ CRZ_ENDED : 36|1@0+ (1,0) [0|255] "" XXX - SG_ ACCEL_CMD : 17|13@0+ (1,-4096) [0|1] "" XXX - SG_ STATIC_1 : 15|11@0+ (1,0) [0|16383] "" XXX - SG_ STATIC_2 : 18|3@1+ (1,0) [0|3] "" XXX - SG_ ERROR_STATUS : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 121 EPB: 8 XXX - SG_ NEW_SIGNAL_1 : 4|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 25|2@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ CTR : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 41|2@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_9 : 47|1@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_10 : 46|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_11 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ EPB_ACTIVE : 29|1@0+ (1,0) [0|15] "" XXX - -BO_ 1070 2017_1: 8 XXX - -BO_ 1183 2017_2: 8 XXX - -BO_ 1243 2017_3: 8 XXX - SG_ NEW_SIGNAL_1 : 7|64@0+ (1,0) [0|18446744073709552000] "" XXX - -BO_ 1269 MSG_2017_4: 8 XXX - SG_ NEW_SIGNAL_1 : 55|16@0+ (1,0) [0|18446744073709552000] "" XXX - -BO_ 1178 2017_6: 8 XXX - SG_ NEW_SIGNAL_1 : 7|64@0+ (1,0) [0|18446744073709552000] "" XXX - -BO_ 1179 2017_7: 8 XXX - SG_ NEW_SIGNAL_1 : 7|64@0+ (1,0) [0|18446744073709552000] "" XXX - -BO_ 1435 2017_8: 8 XXX - -BO_ 253 GAS: 8 XXX - SG_ NEW_SIGNAL_1 : 16|1@0+ (1,0) [0|65535] "" XXX - SG_ CTR : 23|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 41|1@0+ (1,0) [0|255] "" XXX - SG_ CRZ_NOT_ACTIVE : 61|1@0+ (1,0) [0|255] "" XXX - SG_ GAS_CMD : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 359 MORE_GAS: 8 XXX - SG_ NEW_SIGNAL_1 : 15|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ CTR : 31|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 36|5@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 38|1@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 47|4@0+ (1,0) [0|255] "" XXX - -BO_ 512 NEW_MSG_30: 8 XXX - SG_ NEW_SIGNAL_1 : 6|7@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 23|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 22|7@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_6 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 38|7@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_9 : 40|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_10 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ CTR : 51|3@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_11 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 515 MSG_01: 8 XXX - SG_ CTR : 39|4@0+ (1,0) [0|65535] "" XXX - SG_ CHKSUM : 47|8@0+ (1,0) [0|255] "" XXX - SG_ START1 : 6|1@0+ (1,0) [0|1] "" XXX - SG_ START2 : 28|5@0+ (1,0) [0|255] "" XXX - -BO_ 529 NEW_MSG_36: 8 XXX - SG_ NEW_SIGNAL_1 : 22|5@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 32|4@1+ (1,0) [0|3] "" XXX - SG_ CTR : 39|4@0+ (1,0) [0|255] "" XXX - SG_ CTR_2 : 47|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 40|4@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 53|1@0+ (1,0) [0|255] "" XXX - -BO_ 1242 NEW_MSG_37: 8 XXX - -BO_ 1266 MSG_09: 8 XXX - SG_ NEW_SIGNAL_1 : 20|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 19|4@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 31|1@0+ (1,0) [0|255] "" XXX - -BO_ 976 MSG_15: 8 XXX - SG_ NEW_SIGNAL_1 : 55|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 61|6@0+ (1,0) [0|1] "" XXX - -BO_ 155 MSG_14: 8 XXX - -BO_ 1267 MSG_10: 8 XXX - SG_ NEW_SIGNAL_1 : 40|1@0+ (1,0) [0|16777215] "" XXX - SG_ NEW_SIGNAL_2 : 42|1@0+ (1,0) [0|1] "" XXX - -BO_ 305 NEW_MSG_6: 8 XXX - SG_ NEW_SIGNAL_1 : 8|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 9|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 10|1@0+ (1,0) [0|1] "" XXX - -BO_ 1238 TEMPERATURE: 8 XXX - SG_ TEMPERATURE_MAYBE : 47|8@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1087 NEW_MSG_1: 8 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 1143 BSM: 8 XXX - SG_ BSM_OFF : 0|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_BS_3 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ STANDSTILL : 8|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_BS_STATUS : 13|2@0+ (1,0) [0|3] "" XXX - SG_ RIGHT_BS_STATUS : 15|2@0+ (1,0) [0|3] "" XXX - SG_ LEFT_BS3 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_BS4 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_BS_SIDE : 36|1@0+ (1,0) [0|1] "" XXX - SG_ IS_MOVING : 9|1@0+ (1,0) [0|1] "" XXX - SG_ LEFT_BS_BEHIND : 46|2@1+ (1,0) [0|16777215] "" XXX - SG_ RIGHT_BS_DISTANCE : 35|3@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ REAR_CT_ALERT : 23|5@0+ (1,0) [0|63] "" XXX - -BO_ 480 ACCEL_TEST: 8 XXX - SG_ ACCEL_COMMAND : 7|32@0- (1,0) [-2147483647|2147483647] "" XXX - SG_ ENABLED : 32|1@0+ (1,0) [0|1] "" XXX - SG_ STARTING : 40|1@0+ (1,0) [0|1] "" XXX - SG_ STOPPING : 48|1@0+ (1,0) [0|1] "" XXX - -BO_ 1361 KEY_POSITION: 8 XXX - -BO_ 1283 KEY_POSITION2: 8 XXX - -BO_ 628 MSG_06: 8 XXX - -BO_ 1154 MSG_08: 8 XXX - -BO_ 1139 MSG_13: 8 XXX - -BO_ 1270 MSG_16: 8 XXX - -BO_ 1272 MSG_17: 8 XXX - -BO_ 1425 MSG_19: 8 XXX - -BO_ 70 MOB1: 8 XXX - SG_ NEW_SIGNAL_1 : 1|3@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 14|6@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 30|6@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 38|6@0+ (1,0) [0|7] "" XXX - -BO_ 64 MOB2: 8 XXX - SG_ NEW_SIGNAL_1 : 7|2@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 10|3@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 16|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 24|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 35|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 0|3@1+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_7 : 13|3@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_8 : 15|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_9 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_10 : 31|6@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_11 : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 1171 MOB3: 8 XXX - -BO_ 1248 MOB4: 8 XXX - -BO_ 1177 RADAR_499_STATIC: 8 XXX - - - - -CM_ SG_ 357 GEAR "13P, 26R, 13N, 24D"; -CM_ SG_ 605 PED_BRAKE "3: no brake, 4: brake"; -CM_ SG_ 605 BRAKE_WARNING "Flashing brake warning and audible alert for potential forward collision"; -CM_ SG_ 579 STEERING_ANGLE "steering angle aligns with 0.022 factor and -45.06 offset"; -CM_ SG_ 863 SPEED_SIGN "speed limit in MPH"; -CM_ SG_ 863 SPEED_SIGN_CAM "1: The speed limit is recognized by the camera. 0: speed limit is map based or is not available"; -CM_ SG_ 863 STOP_SIGN "value 9 when stop sign is active"; -CM_ SG_ 1157 SBS_WARNING_DISTANCE "1 far, 2 mid, 3 near"; -CM_ SG_ 1157 SBS_SCBC "1 off, 2 on"; -CM_ SG_ 1157 LKAS_ASSIT_TIMING "1 at, 0 before"; -CM_ SG_ 1157 LKAS_SENSETIVITY "0 low, 1 high"; -CM_ SG_ 1157 LANEE_DEPARTURE_ALERT "1 off, 2 on"; -CM_ SG_ 1157 WARNING "1 Rare, 0 often"; -CM_ SG_ 1088 LANE_LINES "0 LKAS disabled, 1 no lines, 2 two lines, 3 left line, 4 right line"; -CM_ SG_ 1088 TJA "2: crz not active, 3: TJA not allowed, 4: TJA allowed"; -CM_ SG_ 1088 TJA_TRANSITION "3: if TJA signal is 3, otherwise set to 0"; -CM_ SG_ 1045 ABS_MALFUNCTION "off: 0, solid: 1, slow blink: 2, fast blink: 3"; -CM_ SG_ 120 VEHICLE_ACC_X "Vehicle acceleration of X-axis wrt. NED frame."; -CM_ SG_ 120 VEHICLE_ACC_Y "Vehicle acceleration of Y-axis wrt. NED frame."; -CM_ SG_ 157 CAN_OFF "Disengage Cruise if enabled, if already disabled TURN it OFF "; -CM_ SG_ 552 MORE_GEAR ""; -CM_ SG_ 552 GEAR "0 Shifting, 1 P, 2 R, 3 N, 4 D"; -CM_ SG_ 552 GEAR_BOX "0 P, 14 R, 1 though 6 D for speeds, 15 Shift"; -CM_ SG_ 540 HANDS_ON_STEER_WARN "0 no warning, b warning"; -CM_ SG_ 540 DISTANCE_SETTING "Radar distance 0: disabled, 1: 4 bars, 2: 3 bars, 3: 2 bars, 4: 1 bar"; -CM_ SG_ 1143 REAR_CT_ALERT "Rear Cross Traffic Alert"; -VAL_ 552 GEAR 1 "P" 2 "R" 3 "N" 4 "D" ; -VAL_ 540 RADAR_HAS_LEAD 0 "NO LEAD" 1 "HAS LEAD" ; -VAL_ 540 RADAR_LEAD_RELATIVE_DISTANCE 0 "NO LEAD" 1 "FARTHEST" 2 "4" 3 "3" 4 "2" 5 "NEAREST" ; -VAL_ 1143 LEFT_BS_STATUS 0 "No object detected" 1 "Object detected in left blindspot" 2 "Object detected in left blindspot with blinker - warning" -VAL_ 1143 RIGHT_BS_STATUS 0 "No object detected" 1 "Object detected in right blindspot" 2 "Object detected in right blindspot with blinker - warning" diff --git a/opendbc_repo/opendbc/dbc/mazda_3_2019.dbc b/opendbc_repo/opendbc/dbc/mazda_3_2019.dbc deleted file mode 100644 index b23e7196bf..0000000000 --- a/opendbc_repo/opendbc/dbc/mazda_3_2019.dbc +++ /dev/null @@ -1,408 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 256 CAM_Start: 8 XXX - SG_ NEW_SIGNAL_7 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_8 : 61|2@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_10 : 44|12@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 63|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 24|12@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 2|2@0+ (1,0) [0|1] "" XXX - SG_ ACTIVE_TARGET : 4|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 20|12@0+ (1,0) [0|7] "" XXX - SG_ DISTANCE_LEAD_CAR : 0|12@0+ (1,0) [0|255] "" XXX - -BO_ 358 CAM_End: 8 XXX - SG_ NEW_SIGNAL_2 : 61|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_3 : 59|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 1216 CAM_69: 8 XXX - SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_5 : 55|12@0+ (1,0) [0|7] "" XXX - -BO_ 1120 CAM_KEEP_ALIVE_2: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 1436 CAM_71: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 18 STEER: 8 XXX - SG_ NEW_SIGNAL_3 : 55|2@0+ (1,0) [0|15] "" XXX - SG_ CTR : 41|2@0+ (1,0) [0|3] "" XXX - SG_ STEER_LEFT_BIT : 26|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_ANGLE : 25|14@0- (1,375) [0|65536] "" XXX - SG_ ENGINE_OFF : 43|2@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_2 : 53|6@0+ (1,0) [0|15] "" XXX - -BO_ 257 LKAS: 8 XXX - SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX - SG_ CTR_ACT : 61|2@0+ (1,0) [0|3] "" XXX - SG_ SET_0 : 48|1@1+ (1,0) [0|3] "" XXX - SG_ SET_0_1 : 63|2@0+ (1,0) [0|3] "" XXX - SG_ SET_19 : 2|2@0+ (1,0) [0|255] "" XXX - SG_ LEAD_DIST : 0|12@0+ (1,0) [0|255] "" XXX - SG_ ANGLE_TARGET : 20|12@0+ (1,0) [0|4095] "" XXX - SG_ UNKNOWN : 24|12@0+ (1,0) [0|4095] "" XXX - SG_ MAX_TORQUE__ : 44|12@0- (1,0) [0|4095] "" XXX - -BO_ 258 NEW_MSG_3: 8 XXX - SG_ NEW_SIGNAL_3 : 59|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 44|10@0- (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 1|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_4 : 39|10@0- (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 13|10@0- (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 18|10@0- (1,0) [0|255] "" XXX - -BO_ 28 WHEEL_SPEEDS: 8 XXX - SG_ RR : 55|16@0+ (0.01,-100) [0|65535] "" XXX - SG_ RL : 39|16@0+ (0.01,-102) [0|65535] "" XXX - SG_ FL : 7|16@0+ (0.01,-100) [0|65535] "" XXX - SG_ FR : 23|16@0+ (0.01,-100) [0|65535] "" XXX - -BO_ 259 NEW_MSG_5: 8 XXX - SG_ NEW_SIGNAL_3 : 39|10@0- (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 44|10@0- (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 0|12@0- (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 19|11@0- (1,0) [0|10000000] "" XXX - -BO_ 260 NEW_MSG_6: 8 XXX - SG_ NEW_SIGNAL_1 : 0|12@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 24|12@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 20|12@0- (1,0) [0|1] "" XXX - -BO_ 261 NEW_MSG_7: 8 XXX - SG_ NEW_SIGNAL_1 : 15|8@0+ (1,0) [0|255] "" XXX - -BO_ 262 NEW_MSG_8: 8 XXX - SG_ NEW_SIGNAL_1 : 15|8@0- (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 263 NEW_MSG_9: 8 XXX - SG_ NEW_SIGNAL_1 : 15|8@0+ (1,0) [0|255] "" XXX - -BO_ 310 NEW_MSG_10: 8 XXX - SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 308 ACC_POSSIBLY: 8 XXX - SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 4|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 54|7@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 0|7@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_7 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 18|7@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 36|7@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 55|1@0+ (1,0) [0|1] "" XXX - -BO_ 304 CAM_LANES: 8 XXX - SG_ NEW_SIGNAL_3 : 59|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 61|2@0+ (1,0) [0|3] "" XXX - SG_ LEFT_LANE_DETECTED : 7|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_LANE_DETECTED : 4|1@0+ (1,0) [0|255] "" XXX - SG_ DISTANCE_TO_LEFT_LANE_LOW_RES : 29|8@0+ (1,0) [0|4095] "" XXX - SG_ DISTANCE_TO_RIGHT_LANE_LOW_RES : 37|8@0+ (1,0) [0|15] "" XXX - SG_ DISTANCE_TO_RIGHT_LANE : 23|10@0- (1,0) [0|2047] "" XXX - SG_ DISTANCE_TO_LEFT_LANE : 1|10@0- (1,0) [0|1] "" XXX - -BO_ 305 CAM_LANES_2_MAYBE: 8 XXX - SG_ NEW_SIGNAL_1 : 1|10@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 37|8@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_6 : 61|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_4 : 29|8@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 4|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 23|10@0+ (1,0) [0|4095] "" XXX - -BO_ 352 NEW_MSG_14: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 355 NEW_MSG_15: 8 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|127] "" XXX - -BO_ 356 NEW_MSG_16: 8 XXX - SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 61|2@0+ (1,0) [0|3] "" XXX - -BO_ 357 NEW_MSG_17: 8 XXX - SG_ NEW_SIGNAL_1 : 61|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ NEW_SIGNAL_3 : 56|4@1+ (1,0) [0|15] "" XXX - -BO_ 59 STEER_RATE: 8 XXX - SG_ NEW_SIGNAL_2 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ STEER_ANGLE_RATE : 55|8@0+ (0.05,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_1 : 43|4@0+ (1,0) [0|15] "" XXX - SG_ STEER_ANGLE : 23|16@0+ (0.05,-1600) [-500|500] "" XXX - SG_ CHKSUM : 39|8@0+ (1,0) [0|15] "" XXX - -BO_ 24 BRAKE_PEDAL: 8 XXX - SG_ BRAKE_PEDAL_PRESSED_AND_ENGINE_ON : 0|1@0+ (1,0) [0|3] "" XXX - SG_ NOT_BRAKE_PEDAL_PRESSED : 6|1@0+ (1,0) [0|3] "" XXX - SG_ BRAKE_PEDAL_PRESSED : 7|1@0+ (1,0) [0|65535] "" XXX - SG_ NOT_BRAKE_PEDAL_PRESSED_AND_ENGINE_ON : 15|1@0+ (1,0) [0|7] "" XXX - -BO_ 26 ENGINE_DATA: 8 XXX - SG_ PEDAL_GAS : 39|10@0+ (1,0) [0|15] "" XXX - SG_ CHKSUM : 63|8@0- (1,0) [0|15] "" XXX - SG_ RPM : 7|13@0+ (1,0) [0|15] "" XXX - SG_ ENGINE_ON : 52|1@0+ (1,0) [0|15] "" XXX - -BO_ 145 BLINK_INFO: 8 XXX - SG_ RIGHT_BLINK : 12|1@0+ (1,0) [0|3] "" XXX - SG_ LEFT_BLINK : 13|1@0+ (1,0) [0|3] "" XXX - SG_ Speed : 27|12@0+ (1,0) [0|255] "" XXX - SG_ CTR : 51|4@0+ (1,0) [0|15] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX - -BO_ 16 STEER_TORQUE: 8 XXX - SG_ NEW_SIGNAL_12 : 7|2@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 43|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 51|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ STEER_TORQUE_SENSOR : 5|13@0+ (1,-4000) [0|15] "" XXX - SG_ CHKSUM : 63|8@0- (1,0) [0|15] "" XXX - SG_ STEER_TORQUE_MOTOR : 8|13@0+ (0.05,-205) [0|15] "" XXX - SG_ BRAKE_PREASURE : 27|12@0+ (1,0) [0|15] "" XXX - -BO_ 17 STEER_TORQUE_2: 8 XXX - SG_ CTR : 51|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ STEER_TORQUE_MOTOR : 7|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 27|14@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 45|6@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 23|12@0+ (1,0) [0|255] "" XXX - -BO_ 29 WHEEL: 8 XXX - SG_ STANDSTILL : 52|1@0+ (1,0) [0|15] "" XXX - SG_ SPEED : 39|16@0+ (1,0) [0|127] "" XXX - SG_ ENCODER_1 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ ENCODER_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_6 : 55|3@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 51|4@0+ (1,0) [0|15] "" XXX - -BO_ 31 GEAR: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX - SG_ GEAR : 36|4@0+ (1,0) [0|65535] "" XXX - -BO_ 96 STEER2: 8 XXX - SG_ NEW_SIGNAL_5 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ CTR : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ TURN_ON : 34|1@0+ (1,0) [0|1] "" XXX - SG_ TURN_OFF : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ENGINE_ON : 33|1@0+ (1,0) [0|1] "" XXX - SG_ CAR_MOVING_FORWARD : 21|1@0+ (1,0) [0|15] "" XXX - SG_ CAR_REVERSING : 22|1@0+ (1,0) [0|1] "" XXX - SG_ ENGINE_OFF : 23|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 45|1@0+ (1,0) [0|15] "" XXX - SG_ SPEED : 18|16@0- (0.00621371,-62.1371) [-65635|65635] "MPH" XXX - SG_ STEER__ : 7|16@0+ (1,0) [0|65535] "" XXX - -BO_ 1209 KEEP_ALIVE_1: 8 XXX - SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_6 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 4|5@0+ (1,0) [0|127] "" XXX - -BO_ 37 BLANK_1: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 44 BLANK_2: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|16777215] "" XXX - SG_ NEW_SIGNAL_3 : 55|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 39|16@0+ (1,0) [0|16777215] "" XXX - -BO_ 128 RADARS: 8 XXX - SG_ NEW_SIGNAL_1 : 59|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 15|1@0+ (1,0) [0|255] "" XXX - SG_ FRONT_LEFT : 19|1@0+ (1,0) [0|255] "" XXX - SG_ FRONT : 21|1@0+ (1,0) [0|1] "" XXX - SG_ FRONT_RIGHT : 18|1@0+ (1,0) [0|1] "" XXX - SG_ REAR_RIGHT : 20|1@0+ (1,0) [0|15] "" XXX - SG_ REAR_LEFT : 17|1@0+ (1,0) [0|1] "" XXX - -BO_ 129 NEW_MSG_19: 8 XXX - SG_ NEW_SIGNAL_2 : 15|1@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 31|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 47|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_5 : 56|8@1+ (1,0) [0|15] "" XXX - -BO_ 1034 KEEP_ALIVE_2: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 23|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 55|16@0+ (1,0) [0|255] "" XXX - -BO_ 1200 KEEP_ALIVE_3: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 55|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 39|16@0+ (1,0) [0|65535] "" XXX - -BO_ 354 CAM_KEEP_ALIVE_1: 8 XXX - SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_4 : 55|30@0+ (1,0) [0|65535] "" XXX - -BO_ 336 NEW_MSG_20: 8 XXX - SG_ NEW_SIGNAL_2 : 7|8@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_1 : 11|12@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 342 NEW_MSG_21: 8 XXX - SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 63|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 55|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 39|16@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 48|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_7 : 7|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 23|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_6 : 40|4@1+ (1,0) [0|15] "" XXX - -BO_ 264 NEW_MSG_2: 8 XXX - SG_ NEW_SIGNAL_1 : 56|8@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 49|3@1+ (1,0) [0|7] "" XXX - SG_ CRZ_CTRL_PRESSED : 48|1@0+ (1,0) [0|1] "" XXX - -BO_ 22 CRZ_CTRL_BTNS: 8 XXX - SG_ CRZ_CTRL_BTN_PRESSED : 48|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 51|3@0+ (1,0) [0|7] "" XXX - SG_ SIGNAL : 45|1@0+ (1,0) [0|15] "" XXX - SG_ NOT_SIGNAL : 46|1@0+ (1,0) [0|3] "" XXX - -BO_ 306 CAM_LANE_3_MAYBE: 8 XXX - SG_ NEW_SIGNAL_1 : 19|10@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_2 : 13|10@0+ (1,0) [0|255] "" XXX - SG_ LANE_DETECTED_1 : 44|1@0+ (1,0) [0|1] "" XXX - SG_ LANE_DETECTED_2 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 25|10@0+ (1,0) [0|1] "" XXX - SG_ STEER : 7|10@0+ (1,0) [0|1] "" XXX - -BO_ 307 NEW_MSG_1: 8 XXX - SG_ NEW_SIGNAL_2 : 13|10@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 61|6@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 25|10@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 7|10@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 19|10@0+ (1,0) [0|1] "" XXX - -BO_ 320 NEW_MSG_4: 8 XXX - SG_ NEW_SIGNAL_4 : 16|1@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 43|6@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 36|9@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 27|7@0+ (1,0) [0|1] "" XXX - -BO_ 321 NEW_MSG_11: 8 XXX - SG_ NEW_SIGNAL_1 : 5|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 32|1@0+ (1,0) [0|1] "" XXX - -BO_ 293 NEW_MSG_12: 8 XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 39|16@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 19|4@0+ (1,0) [0|1] "" XXX - -BO_ 294 NEW_MSG_13: 8 XXX - SG_ NEW_SIGNAL_1 : 59|4@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 61|2@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 7|16@0+ (1,0) [0|1] "" XXX - -BO_ 292 NEW_MSG_18: 8 XXX - SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 291 NEW_MSG_22: 8 XXX - SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 290 NEW_MSG_23: 8 XXX - SG_ NEW_SIGNAL_1 : 31|5@0+ (1,0) [0|255] "" XXX - -BO_ 277 NEW_MSG_24: 8 XXX - SG_ NEW_SIGNAL_1 : 47|8@0+ (1,0) [0|1] "" XXX - -BO_ 278 NEW_MSG_25: 8 XXX - -BO_ 273 NEW_MSG_26: 8 XXX - SG_ NEW_SIGNAL_1 : 23|4@0+ (1,0) [0|3] "" XXX - -BO_ 274 NEW_MSG_27: 8 XXX - SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|1] "" XXX - -BO_ 289 NEW_MSG_28: 8 XXX - SG_ NEW_SIGNAL_1 : 55|8@0+ (1,0) [0|1] "" XXX - -BO_ 20 NEW_MSG_29: 8 XXX - SG_ RIGHT_BLINK_CLOCK : 23|8@0+ (1,0) [0|1] "" XXX - -BO_ 288 NEW_MSG_30: 8 XXX - - - - -CM_ SG_ 31 GEAR "13-P, 12-R, 11-N, 1-6-D"; -CM_ SG_ 96 SPEED ""; -VAL_ 31 GEAR 13 "P" 12 "R" 11 "N" 1 "D" 2 "D" 3 "D" 4 "D" 5 "D" 6 "D"; diff --git a/opendbc_repo/opendbc/dbc/mazda_radar.dbc b/opendbc_repo/opendbc/dbc/mazda_radar.dbc deleted file mode 100644 index a4fe3b4b9e..0000000000 --- a/opendbc_repo/opendbc/dbc/mazda_radar.dbc +++ /dev/null @@ -1,73 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 540 CRZ_CTRL: 8 XXX - -BO_ 539 CRZ_INFO: 8 XXX - -BO_ 865 RADAR_TRACK_361: 8 XXX - SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX - SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX - -BO_ 866 RADAR_TRACK_362: 8 XXX - SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX - SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX - -BO_ 867 RADAR_TRACK_363: 8 XXX - SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX - SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX - -BO_ 868 RADAR_TRACK_364: 8 XXX - SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX - SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX - -BO_ 869 RADAR_TRACK_365: 8 XXX - SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX - SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX - -BO_ 870 RADAR_TRACK_366: 8 XXX - SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX - SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX - SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX - -BO_ 1177 RADAR_499: 8 XXX \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/mazda_rx8.dbc b/opendbc_repo/opendbc/dbc/mazda_rx8.dbc deleted file mode 100644 index f491a9698f..0000000000 --- a/opendbc_repo/opendbc/dbc/mazda_rx8.dbc +++ /dev/null @@ -1,77 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: PowertrainControlModule InstrumentCluster ElectricPowerSteering AntilockBrakeSystem - - -BO_ 129 steering: 8 ElectricPowerSteering - SG_ SteeringAngle : 23|16@0- (1,0) [0|0] "deg" Vector__XXX - -BO_ 513 speed: 8 PowertrainControlModule - SG_ EngineRPM : 7|16@0+ (0.25,0) [0|0] "rpm" Vector__XXX - SG_ VehicleSpeed : 39|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX - SG_ AcceleratorPos : 55|8@0+ (0.5,0) [0|0] "%" Vector__XXX - -BO_ 592 throttle_body: 8 PowertrainControlModule - SG_ IntakeAirTemperature : 31|8@0+ (1,-40) [0|0] "Cel" Vector__XXX - SG_ AcceleratorPedalSensorRaw : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ AcceleratorPedalSensorFiltered : 55|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 658 brake_controls: 8 PowertrainControlModule - SG_ BrakePedalSwitch : 43|1@1+ (1,0) [0|0] "" Vector__XXX - SG_ ParkingBrakeSwitch : 38|1@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 1056 coolant: 8 PowertrainControlModule - SG_ CoolantTemperature : 7|8@0+ (1,-40) [0|0] "Cel" Vector__XXX - -BO_ 1072 instrument_cluster: 8 InstrumentCluster - SG_ FuelLevel : 7|8@0+ (0.392156,0) [0|0] "%" Vector__XXX - SG_ FuelTankSensorLeft : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ FuelTankSensorRight : 23|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1200 wheel_speed: 8 AntilockBrakeSystem - SG_ WheelSpeedFL : 7|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX - SG_ WheelSpeedFR : 23|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX - SG_ WheelSpeedRL : 39|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX - SG_ WheelSpeedRR : 55|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX - -CM_ SG_ 129 SteeringAngle "Steering wheel angle: positive is right and negative is left"; -CM_ SG_ 513 AcceleratorPos "processed interpretation of AcceleratorPedalSensor values"; -CM_ SG_ 1072 FuelTankSensorLeft "lower sensor values indicate a more full tank"; -CM_ SG_ 1072 FuelTankSensorRight "lower sensor values indicate a more full tank"; - - - - diff --git a/opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc b/opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc deleted file mode 100644 index da6ae4c15e..0000000000 --- a/opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc +++ /dev/null @@ -1,176 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 3 STEER_SENSOR: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ STEER_RATE : 19|12@0- (0.5,0) [0|255] "" XXX - SG_ STEER_DIRECTION : 4|1@0+ (1,2) [0|1] "" XXX - SG_ STEER_ANGLE : 3|12@0- (-0.5,0) [-500|500] "degrees" XXX - -BO_ 5 BRAKE_MODULE: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_HOLD : 2|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_POSITION : 17|10@0+ (1,0) [0|65535] "" XXX - SG_ DRIVER_BRAKE : 4|1@0+ (1,0) [0|1] "" XXX - SG_ COMPUTER_BRAKE : 10|1@0+ (1,0) [0|1] "" XXX - SG_ BRAKE_PRESSED : 0|1@1+ (1,0) [0|1] "" XXX - -BO_ 69 DRIVER_CONTROLS: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ STEERING_WHEEL_BUTTONS : 32|16@1+ (1,0) [0|255] "4 directional, 2 volume control & 2 phone buttons" XXX - SG_ LEFT_BLINKER : 16|1@0+ (1,0) [0|1] "" XXX - SG_ RIGHT_BLINKER : 17|1@0+ (1,0) [0|1] "" XXX - SG_ HIGHBEAM_TOGGLE : 18|1@0+ (1,0) [0|1] "" XXX - SG_ HIGHBEAM_MOMENTARY : 19|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_CANCEL : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_RESUME : 1|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_ACCEL_HIGH : 2|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_DECEL_HIGH : 3|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_ACCEL_LOW : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_DECEL_LOW : 5|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_XFF : 15|8@0+ (1,0) [0|255] "" XXX - -BO_ 513 WHEEL_ENCODERS: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ WHEEL_ENCODER_2 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_ENCODER_3 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ WHEEL_ENCODER_4 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|255] "" XXX - SG_ WHEEL_ENCODER_1 : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 261 GAS_PEDAL: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ ENGINE_RPM : 4|5@0+ (1,0) [0|255] "" XXX - SG_ GAS_PEDAL : 39|8@0+ (1,0) [0|255] "" XXX - SG_ COMBINED_GAS : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 643 DOOR_SENSORS: 8 XXX - SG_ BRAKE_PRESSED : 27|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 3|1@1+ (1,0) [0|3] "" XXX - SG_ DOOR_OPEN_RL : 5|1@0+ (1,0) [0|3] "" XXX - SG_ DOOR_OPEN_RR : 7|1@0+ (1,0) [0|3] "" XXX - SG_ DOOR_OPEN_FL : 1|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_FL : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_FR : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_RL : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_CLOSED_RR : 6|1@0+ (1,0) [0|1] "" XXX - -BO_ 885 SEATBELT_SENSORS: 8 XXX - SG_ SEATBELT_DRIVER_LATCHED : 16|1@0+ (1,0) [0|1] "" XXX - SG_ SEATBELT_PASSENGER_LATCHED : 18|1@0+ (1,0) [0|1] "" XXX - -BO_ 257 CRUISE_CONTROL: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 6|1@0+ (1,0) [0|255] "" XXX - SG_ CRUISE_DISABLED : 23|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_X002 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X003 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_1 : 5|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_ACCELERATING : 22|1@0+ (1,0) [0|1] "" XXX - SG_ LONGITUDINAL_ACCEL_REQUEST : 15|8@0- (1,0) [0|127] "" XXX - -BO_ 260 CRUISE_CONTROL2: 8 XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_XFF : 31|8@0+ (1,0) [0|65535] "" XXX - SG_ SET_ME_X02 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_XFF2 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 7|4@0+ (1,0) [0|255] "" XXX - -BO_ 14 STEER_TORQUE: 8 XXX - SG_ STEER_TORQUE : 15|8@0+ (1,0) [0|255] "" XXX - SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 888 CRUISE_CONTROL3: 8 XXX - SG_ NEW_SIGNAL_2 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_DISABLED : 36|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_ENABLED : 34|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_X003 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X004 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X002 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ CRUISE_SET_SPEED : 15|8@0+ (1,0) [0|63] "mph" XXX - SG_ CRUISE_SPEED_CHANGE : 55|1@0+ (1,0) [0|1] "" XXX - -BO_ 307 POWER_SEATS: 8 XXX - SG_ DRIVER_FORWARD : 0|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVER_BACK : 1|1@0+ (1,0) [0|1] "" XXX - -BO_ 109 GEAR_LEVER: 8 XXX - SG_ PARK_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX - SG_ NEUTRAL_UP : 9|1@0+ (1,0) [0|1] "" XXX - SG_ NEUTRAL_DOWN : 10|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVE : 11|1@0+ (1,0) [0|1] "" XXX - SG_ REVERSE : 8|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 23|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 115 GEAR_PACKET: 8 XXX - SG_ GEAR : 0|4@1+ (1,0) [0|15] "" XXX - -BO_ 581 IGNITION: 8 XXX - -BO_ 515 WHEEL_SPEEDS: 8 XXX - SG_ WHEEL_MOVING_FR : 22|1@1+ (1,0) [0|15] "" XXX - SG_ WHEEL_MOVING_RL : 38|1@0+ (1,0) [0|1] "" XXX - SG_ WHEEL_MOVING_FL : 6|1@0+ (1,0) [0|1] "" XXX - SG_ WHEEL_MOVING_RR : 54|1@0+ (1,0) [0|1] "" XXX - SG_ WHEEL_SPEED_FL : 2|11@0+ (0.0375,0) [0|255] "mph" XXX - SG_ WHEEL_SPEED_FR : 18|11@0+ (0.0375,0) [0|255] "mph" XXX - SG_ WHEEL_SPEED_RL : 34|11@0+ (0.0375,0) [0|255] "mph" XXX - SG_ WHEEL_SPEED_RR : 50|11@0+ (0.0375,0) [0|255] "mph" XXX - - - - -CM_ SG_ 3 STEER_DIRECTION "0 = left, 1 = right"; -CM_ SG_ 5 BRAKE_POSITION "computer and driver"; -CM_ SG_ 5 BRAKE_PRESSED "computer and driver"; -CM_ SG_ 261 GAS_PEDAL "user gas input"; -CM_ SG_ 261 COMBINED_GAS "computer and driver gas"; -CM_ SG_ 257 CRUISE_ACCELERATING ""; \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc b/opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc deleted file mode 100644 index 1e7bd4c4ae..0000000000 --- a/opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc +++ /dev/null @@ -1,96 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - -BO_ 2 STEERING: 5 XXX - SG_ COUNTER : 35|4@0+ (1,0) [0|255] "" XXX - SG_ STEERING_ANGLE : 0|16@1- (0.1,0) [0|65535] "deg" XXX - SG_ POWER_STEER_RATE : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 505 ENGINE_1: 8 XXX - SG_ RPM : 16|16@1+ (0.125,0) [0|45000] "R/min" XXX - SG_ FAN_REQ : 6|2@1+ (1,0) [0|3] "" XXX - SG_ AC_REQ : 3|1@1+ (1,0) [0|1] "" XXX - -BO_ 561 ENGINE_2: 8 XXX - SG_ Pedal_position : 16|8@1+ (0.5,0) [0|200] "%" XXX - -BO_ 563 ENGINE_7: 8 XXX - SG_ CLT : 0|8@1+ (0.366666,0) [0|255] "C" XXX - SG_ RPMlow : 32|8@1+ (3.15,0) [0|45000] "R/min" XXX - SG_ RPMhi : 56|8@1+ (3.15,0) [0|45000] "R/min" XXX - -BO_ 573 ENGINE_3: 8 XXX - SG_ Pedal_position : 8|8@1+ (0.392,0) [0|255] "%" XXX - SG_ Throttle_position_capped : 16|8@1+ (0.392,0) [0|255] "%" XXX - SG_ RPM : 24|16@1+ (3.15,0) [0|45000] "R/min" XXX - SG_ CLT : 56|8@1+ (0.366666,0) [0|255] "C" XXX - -BO_ 574 ENGINE_4: 8 XXX - SG_ Throttle_position_inverted : 16|8@1+ (0.392,0) [0|255] "%" XXX - SG_ EstimatedTorque : 24|16@1+ (0.1,0) [0|45000] "nM" XXX - SG_ Throttle_position : 48|8@1+ (0.392,0) [0|255] "%" XXX - -BO_ 595 TCU_1: 8 XXX - SG_ SHAFT_1_SPEED : 32|16@1+ (1,0) [0|45000] "r/min" XXX - SG_ SHAFT_2_SPEED : 48|16@1+ (1,0) [0|45000] "r/min" XXX - -BO_ 640 SPEED: 8 XXX - SG_ SPEED : 32|16@1+ (0.01,0) [0|45000] "km/h" XXX - -BO_ 644 ABS_1: 8 XXX - SG_ WHEEL_1 : 0|16@1+ (0.01,0) [0|45000] "km/h" XXX - SG_ WHEEL_2 : 15|16@1+ (0.01,0) [0|45000] "km/h" XXX - -BO_ 645 ABS_2: 8 XXX - SG_ WHEEL_3 : 0|16@1+ (0.01,0) [0|45000] "km/h" XXX - SG_ WHEEL_4 : 15|16@1+ (0.01,0) [0|45000] "km/h" XXX - -BO_ 852 SPEED_BREAK: 8 XXX - SG_ BREAK_LIGHT : 52|1@0+ (1,0) [0|3] "" XXX - SG_ SPEED_MPH : 7|16@0+ (0.0066,0) [0|65535] "mph" XXX - SG_ TCS_OFF : 38|1@0+ (1,0) [0|255] "" XXX - -BO_ 861 BCM: 8 XXX - -BO_ 1361 ENGINE_5: 8 XXX - SG_ CLT : 0|8@1+ (1,-45) [-45|150] "" XXX - -BO_ 1408 ENGINE_6: 8 XXX - SG_ RPM : 7|16@0+ (1.5,0) [0|65535] "" XXX - SG_ OIL_TEMP : 32|8@1+ (1,-40) [-40|150] "" XXX - -BO_ 1477 MILEAGE: 8 XXX \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/ocelot_controls.dbc b/opendbc_repo/opendbc/dbc/ocelot_controls.dbc deleted file mode 100644 index aec1abfde9..0000000000 --- a/opendbc_repo/opendbc/dbc/ocelot_controls.dbc +++ /dev/null @@ -1,113 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: EON PED IBST SSC -VAL_TABLE_ BRAKEMODE 3 "Reserved" 2 "Position Control" 1 "Relative Control" 0 "Disengadged" ; -VAL_TABLE_ STATUS 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; -VAL_TABLE_ YESNO 1 "Yes" 0 "No" ; - -BO_ 512 PEDAL_GAS_COMMAND: 6 EON - SG_ GAS_COMMAND : 8|16@1+ (1,0) [0|1] "" PED - SG_ GAS_COMMAND2 : 24|16@1+ (1,0) [0|1] "" PED - SG_ ENABLE : 47|1@1+ (1,0) [0|1] "" PED - SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" PED - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" PED - -BO_ 513 PEDAL_GAS_SENSOR: 6 PED - SG_ PED_GAS : 8|16@1+ (1,0) [0|1] "" EON - SG_ PED_GAS2 : 24|16@1+ (1,0) [0|1] "" EON - SG_ STATE : 44|4@1+ (1,0) [0|15] "" EON - SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" EON - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON - -BO_ 526 OCELOT_BRAKE_COMMAND: 6 EON - SG_ BRAKE_POSITION_COMMAND : 32|12@1+ (0.015625,-5) [-5|47] "mm" IBST - SG_ BRAKE_RELATIVE_COMMAND : 16|16@1+ (0.0078125,-252) [-252|252] "" IBST - SG_ BRAKE_MODE : 12|2@1+ (1,0) [0|3] "" IBST - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" IBST - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" IBST - -BO_ 527 OCELOT_BRAKE_STATUS: 5 IBST - SG_ BRAKE_PEDAL_POSITION : 20|12@1+ (0.015625,-5) [-5|47] "mm" EON - SG_ BRAKE_APPLIED : 18|1@1+ (1,0) [0|1] "" EON - SG_ DRIVER_BRAKE_APPLIED : 17|1@1+ (1,0) [0|1] "" EON - SG_ BRAKE_OK : 16|1@1+ (1,0) [0|1] "" EON - SG_ STATUS : 12|4@1+ (1,0) [0|15] "" EON - SG_ EXT_STATUS1 : 32|4@1+ (1,0) [0|15] "" EON - SG_ EXT_STATUS2 : 36|4@1+ (1,0) [0|15] "" EON - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" EON - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON - -BO_ 558 STEERING_COMMAND: 5 EON - SG_ STEER_TORQUE : 32|8@1- (0.125,0) [-16|15.875] "Nm" SSC - SG_ STEER_ANGLE : 16|16@1- (0.125,0) [-4096|4095.875] "deg" SSC - SG_ STEER_MODE : 12|2@1+ (1,0) [0|3] "" SSC - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" SSC - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" SSC - -BO_ 559 STEERING_STATUS: 8 SSC - SG_ STEERING_ANGLE : 40|16@1- (0.125,0) [-4096|4095.875] "deg" EON - SG_ STEERING_SPEED : 24|8@1- (0.015625,0) [-2|1.984375] "rev/s" EON - SG_ STEERING_TORQUE : 16|8@1- (0.125,0) [-16|15.875] "Nm" EON - SG_ CONTROL_STATUS : 12|4@1+ (1,0) [0|15] "" EON - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" EON - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON - SG_ TEMPERATURE : 32|8@1+ (1,-60) [-60|195] "C" EON - SG_ DEBUG_STATES : 56|8@1+ (1,0) [0|255] "" EON - - - -CM_ SG_ 558 STEER_TORQUE "Steering torque request"; -CM_ SG_ 558 STEER_ANGLE "Steering relative angle request for internal close loop controller"; -CM_ SG_ 558 STEER_MODE "Control mode request. -Off - instant 0 torque -TorqueControl - use steer_torque, -AngleControl - use steer_angle as relative target and steer_torque as feedforward, -SoftOff - ramp torque down with constant rate, command Off after SoftOff to resume control"; -CM_ SG_ 558 COUNTER "Rolling counter"; -CM_ SG_ 558 CHECKSUM "8bit sum of all bytes and message id"; -CM_ SG_ 559 STEERING_ANGLE "Steering angle calculated from motor position sensor"; -CM_ SG_ 559 STEERING_SPEED "Steering speed calculated from motor position sensor"; -CM_ SG_ 559 STEERING_TORQUE "Motor torque calculated at the steering"; -CM_ SG_ 559 CONTROL_STATUS "Bitwise states: bit0 - sensored torque control is enabled, bit1 - sensor feedback enabled, bit2 - openloop soft off active, bit3 - internal closeloop mode enabled"; -CM_ SG_ 559 COUNTER "Rolling counter"; -CM_ SG_ 559 CHECKSUM "8bit sum of all bytes and message id"; -CM_ SG_ 559 TEMPERATURE "Motor PCB temperature"; -CM_ SG_ 559 DEBUG_STATES "Bitwise status. Refer to source"; -VAL_ 526 BRAKE_MODE 3 "Reserved" 2 "Position Control" 1 "Relative Control" 0 "Disengadged" ; -VAL_ 527 BRAKE_OK 1 "Yes" 0 "No" ; -VAL_ 527 STATUS 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; -VAL_ 558 STEER_MODE 0 "Off" 1 "TorqueControl" 2 "AngleControl" 3 "SoftOff" ; - diff --git a/opendbc_repo/opendbc/dbc/opel_omega_2001.dbc b/opendbc_repo/opendbc/dbc/opel_omega_2001.dbc deleted file mode 100644 index 8f8e0cfdea..0000000000 --- a/opendbc_repo/opendbc/dbc/opel_omega_2001.dbc +++ /dev/null @@ -1,104 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: ABS ESP ECU TCU SAS - - -BO_ 272 TCU_Data1: 8 TCU - SG_ TorqueRequest1 : 15|8@0+ (1,0) [0|255] "" ABS,ESP,ECU - SG_ TorqueRequest2 : 31|8@0+ (1,0) [0|255] "" ABS,ESP,ECU - SG_ OutputShaftSpeed : 55|16@0+ (1,0) [0|65535] "rpm" ABS,ESP,ECU - -BO_ 288 ESP_Data1: 8 ESP - SG_ ABD_Active : 4|1@0+ (1,0) [0|1] "yes/no" ECU,TCU - SG_ TorqueRequestFast : 15|8@0+ (1,0) [0|255] "" ECU,TCU - SG_ TorqueRequestSlow : 31|8@0+ (1,0) [0|255] "" ECU,TCU - -BO_ 384 SAS_Data: 8 SAS - SG_ SteeringAngle : 0|16@1- (0.1,0) [-3276.8|3276.7] "yes/no" ECU,TCU - SG_ SteeringSpeed : 16|8@1+ (1,0) [0|255] "" ECU,TCU - -BO_ 416 ECU_Data1: 8 ECU - SG_ RPM : 15|16@0+ (1,0) [0|65535] "rpm" ABS,ESP,TCU - SG_ TorqueResponse : 31|8@0+ (1,0) [0|255] "" ABS,ESP,TCU - SG_ TorqueLost : 39|8@0+ (1,0) [0|255] "" ABS,ESP,TCU - SG_ APP : 47|8@0+ (1,0) [0|102] "" ABS,ESP,TCU - SG_ TorqueRequest : 63|8@0+ (1,0) [0|255] "" ABS,ESP,TCU - -BO_ 448 ECU_Data2: 8 ECU - SG_ TPS : 23|8@0+ (1,0) [0|100] "" ABS,ESP,TCU - -BO_ 640 ECU_Data3: 8 ECU - SG_ BrakeActive : 18|1@0+ (1,0) [0|1] "yes/no" ABS,ESP,TCU - SG_ KickdownActive : 20|1@0+ (1,0) [0|1] "yes/no" ABS,ESP,TCU - SG_ CruiseActive : 22|1@0+ (1,0) [0|1] "yes/no" ABS,ESP,TCU - -BO_ 736 TCU_Data2: 8 TCU - SG_ TOT : 31|8@0- (1,-40) [-40|215] "" ECU - SG_ InputShaftSpeed : 47|16@0+ (1,0) [0|65535] "rpm" ECU - -BO_ 768 ABS_WheelSpeed: 8 ABS - SG_ FrontLeftWheelSpeed : 5|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU - SG_ FrontLeftWheelErrorFlag : 7|1@0+ (1,0) [0|1] "" ECU,TCU - SG_ FrontRightWheelSpeed : 21|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU - SG_ FrontRightWheelErrorFlag : 23|1@0+ (1,0) [0|1] "" ECU,TCU - SG_ RearLeftWheelSpeed : 37|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU - SG_ RearLeftWheelErrorFlag : 39|1@0+ (1,0) [0|1] "" ECU,TCU - SG_ RearRightWheelSpeed : 53|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU - SG_ RearRightWheelErrorFlag : 55|1@0+ (1,0) [0|1] "" ECU,TCU - -BO_ 792 ESP_Data2: 8 ESP - SG_ ABS_Active : 12|1@0+ (1,0) [0|1] "yes/no" ECU,TCU - SG_ ESP_Off : 20|1@0+ (1,0) [0|1] "yes/no" ECU,TCU - SG_ ESP_Active : 21|1@0+ (1,0) [0|1] "yes/no" ECU,TCU - -BO_ 992 TCU_Data3: 8 TCU - SG_ CurrentGear : 11|4@0+ (1,0) [0|15] "" ECU - SG_ SelectorPosition : 18|3@0+ (1,0) [0|7] "" ECU - SG_ AutoNeutralActive : 26|1@0+ (1,0) [0|1] "yes/no" ECU - SG_ WinterModeActive : 29|1@0+ (1,0) [0|1] "yes/no" ECU - SG_ SportModeActive : 30|1@0+ (1,0) [0|1] "yes/no" ECU - SG_ TCC_State : 37|2@0+ (1,0) [0|2] "" ECU - -BO_ 1472 ECU_Data4: 8 ECU - SG_ ECT : 15|8@0- (1,-40) [-40|215] "" TCU - SG_ IAT : 47|8@0- (1,-40) [-40|215] "" TCU - - - -VAL_ 992 CurrentGear 5 "1" 6 "2" 7 "3" 8 "4" ; -VAL_ 992 SelectorPosition 1 "P" 2 "R" 3 "N" 4 "D" 7 "3" 6 "2" 5 "1" ; -VAL_ 992 TCC_State 0 "Off" 1 "Partially Locked" 2 "Locked" ; - diff --git a/opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc b/opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc deleted file mode 100644 index 6422562d0d..0000000000 --- a/opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc +++ /dev/null @@ -1,1019 +0,0 @@ -VERSION "PrimaryActuatorCAN" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: ACM CGM EPAS_P ESP IBM OCS RCM SAS TestTool VDM Vector_XXX - - -BO_ 64 SAS_Status: 8 SAS - SG_ SAS_Status_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM,EPAS_P,ESP,RCM,VDM - SG_ SAS_Status_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM,EPAS_P,ESP,RCM,VDM - SG_ SAS_Status_AngleSafe : 23|15@0- (0.0009765625,0) [-14.5|14.5] "rad" ACM,EPAS_P,ESP,RCM,VDM - SG_ SAS_Status_Calibrated : 24|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,RCM,VDM - SG_ SAS_Status_AngleSpeedSafe : 39|14@0- (0.0078125,0) [-50|50] "rad/s" ACM,EPAS_P,ESP,RCM,VDM - SG_ SAS_StatusQ : 41|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,RCM,VDM - -BO_ 256 ACM_Status: 8 ACM - SG_ ACM_Status_Checksum : 7|8@0+ (1,0) [0|255] "-" EPAS_P,VDM - SG_ ACM_Status_Counter : 11|4@0+ (1,0) [0|15] "-" EPAS_P,VDM - SG_ ACM_Unkown1 : 18|1@0+ (1,0) [0|1] "" XXX - SG_ ACM_FeatureStatus : 23|3@0+ (1,0) [0|7] "" EPAS_P,VDM - SG_ ACM_FaultStatus : 26|3@0+ (1,0) [0|7] "" EPAS_P,VDM - SG_ ACM_Unkown2 : 41|2@0+ (1,0) [0|3] "" XXX - -BO_ 257 ACM_AebRequest: 8 ACM - SG_ ACM_AebRequest_Checksum : 7|8@0+ (1,0) [0|255] "" ESP,VDM - SG_ ACM_AebRequest_Counter : 11|4@0+ (1,0) [0|15] "" ESP,VDM - SG_ ACM_StopRequest : 17|1@0+ (1,0) [0|1] "" ESP,VDM - SG_ ACM_FailInfo : 19|2@0+ (1,0) [0|3] "" ESP,VDM - SG_ ACM_DbsLevel : 21|2@0+ (1,0) [0|3] "" ESP,VDM - SG_ ACM_OnOffStatus : 23|2@0+ (1,0) [0|3] "" ESP,VDM - SG_ ACM_DecelRequest : 27|12@0+ (0.004885,0) [0|15.998375] "m/s^2" ESP,VDM - SG_ ACM_WarnLevel : 44|2@0+ (1,0) [0|3] "" ESP,VDM - SG_ ACM_PrefillEnableRequest : 46|1@0+ (1,0) [0|1] "" ESP,VDM - SG_ ACM_EnableRequest : 47|1@0+ (1,0) [0|1] "" ESP,VDM - -BO_ 258 ESP_AebFb: 8 ESP - SG_ ESP_AebFeedback_Checksum : 7|8@0+ (1,0) [0|255] "" ACM - SG_ ESP_AebFeedback_Counter : 11|4@0+ (1,0) [0|15] "" ACM - SG_ iB_BrakePedalApplied_Q : 14|2@0+ (1,0) [0|3] "" ACM - SG_ iB_BrakePedalApplied : 15|1@0+ (1,0) [0|1] "" ACM - SG_ ESP_DecelFeedback : 23|12@0+ (0.004885,-16) [-16|3.99919] "m/s^2" ACM - SG_ ESP_AebActive : 24|1@0+ (1,0) [0|1] "" ACM - SG_ ESP_AebAvailable : 25|1@0+ (1,0) [0|1] "" ACM - SG_ ESP_DbsActive : 26|1@0+ (1,0) [0|1] "" ACM - SG_ ESP_PrefillActiveFeedback : 27|1@0+ (1,0) [0|1] "" ACM - SG_ ESP_PrefillAvailable : 32|1@0+ (1,0) [0|1] "" ACM - SG_ ESP_DbsAvailable : 33|1@0+ (1,0) [0|1] "" ACM - -BO_ 272 ACM_SteeringControl: 8 ACM - SG_ ACM_SteeringControl_Checksum : 7|8@0+ (1,0) [0|0] "" EPAS_P - SG_ ACM_SteeringControl_Counter : 11|4@0+ (1,0) [0|0] "" EPAS_P - SG_ ACM_EacEnabled : 13|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_HapticRequired : 15|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_SteeringAngleRequest : 23|15@0+ (0.1,-1638.4) [-1638.4|1638.3] "deg" EPAS_P - -BO_ 288 ACM_lkaHbaCmd: 8 ACM - SG_ ACM_lkaHbaCmd_Checksum : 7|8@0+ (1,0) [0|255] "" EPAS_P - SG_ ACM_lkaHbaCmd_Counter : 11|4@0+ (1,0) [0|15] "" EPAS_P - SG_ ACM_lkaElkRequest : 14|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_HapticRequest : 15|1@0+ (1,0) [0|1] "" EPAS_P - SG_ ACM_lkaStrToqReq : 23|11@0+ (1,-1024) [-1024|1024] "" EPAS_P - SG_ ACM_lkaSymbolState : 26|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_lkaToiFlt : 27|1@0+ (1,0) [0|1] "" EPAS_P - SG_ ACM_lkaActToi : 28|1@0+ (1,0) [0|1] "" EPAS_P - SG_ ACM_hbaSysState : 34|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_hbaLamp : 35|1@0+ (1,0) [0|1] "" EPAS_P - SG_ ACM_slifOnOffState : 37|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_elkOnOffState : 39|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_ldwLHWarning : 43|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_lkaLaneRecogState : 45|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_hbaOnOffState : 47|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_ldwlkaOnOffState : 48|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_ldwWarnTimingState : 51|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_lkaHandsoffSoundWarning : 53|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_lkaHandsoffDisplayWarning : 55|2@0+ (1,0) [0|3] "" EPAS_P - SG_ ACM_ldwRHWarning : 58|3@0+ (1,0) [0|7] "" EPAS_P - SG_ ACM_ldwWarnTypeState : 61|3@0+ (1,0) [0|7] "" EPAS_P - -BO_ 304 RCM_IMU_LatAccYaw: 8 RCM - SG_ RCM_LateralAccelYaw_Checksum : 7|8@0+ (1,0) [0|25] "" ACM,ESP,VDM - SG_ RCM_LateralAccelYaw_Counter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM - SG_ RCM_IMU_LatAcc_Stat_SensAvail : 12|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LatAcc_Stat_Fail : 13|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LatAcc_Stat_Init : 14|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LatAcc_Stat_Startup : 15|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_Yaw_Stat_SensAvail : 16|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_Yaw_Stat_Fail : 17|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_Yaw_Stat_Init : 18|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_Yaw_Stat_Startup : 19|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LatAcc : 39|16@0+ (0.004998293,-163.784065024) [-40.961|40.961] "m/s2" ACM,ESP,VDM - SG_ RCM_IMU_Yaw : 55|16@0+ (0.0125,-409.6) [-163.85|163.85] "deg/sec" ACM,ESP,VDM - -BO_ 309 RCM_IMU_HeaveRoll: 8 RCM - SG_ RCM_HeaveRoll_Checksum : 7|8@0+ (1,0) [0|25] "" VDM - SG_ RCM_HeaveRoll_Counter : 11|4@0+ (1,0) [0|15] "" VDM - SG_ RCM_IMU_Heave : 23|16@0+ (0.004998293,-163.784065024) [-34.32328|34.32328] "m/s2" VDM - SG_ RCM_IMU_Roll : 39|16@0+ (0.0125,-409.6) [-100.0125|100.0125] "deg/sec" VDM - SG_ RCM_IMU_Roll_Stat_SensAvail : 48|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Roll_Stat_Fail : 49|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Roll_Stat_Init : 50|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Roll_Stat_Startup : 51|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Heave_Stat_SensAvail : 52|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Heave_Stat_Fail : 53|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Heave_Stat_Init : 54|1@0+ (1,0) [0|1] "" VDM - SG_ RCM_IMU_Heave_Stat_Startup : 55|1@0+ (1,0) [0|1] "" VDM - -BO_ 320 RCM_IMU_LongAcc: 8 RCM - SG_ RCM_LongAcc_Checksum : 7|8@0+ (1,0) [0|25] "" ACM,ESP,VDM - SG_ RCM_LongAcc_Counter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM - SG_ RCM_IMU_LongAcc_Sig : 39|16@0+ (0.004998293,-163.784065024) [-40.961|40.961] "m/s2" ACM,ESP,VDM - SG_ RCM_IMU_LongAcc_Stat_SensAvail : 48|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LongAcc_Stat_Fail : 49|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LongAcc_Stat_Init : 50|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ RCM_IMU_LongAcc_Stat_Startup : 51|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - -BO_ 336 VDM_PropStatus: 7 VDM - SG_ VDM_PropStatus_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM,EPAS_P,ESP,RCM - SG_ VDM_PropStatus_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM,EPAS_P,ESP,RCM - SG_ VDM_PropsnActv : 13|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,RCM - SG_ VDM_VehicleSpeedQ : 15|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,RCM - SG_ VDM_Prndl_Status : 19|4@0+ (1,0) [0|15] "" ACM,EPAS_P,ESP,RCM - SG_ VDM_Prndl_Request : 23|4@0+ (1,0) [0|15] "" ACM,EPAS_P,ESP,RCM - SG_ VDM_AcceleratorPedalPosition : 31|10@0+ (0.1,0) [0|102.3] "" ACM,EPAS_P,ESP,RCM - SG_ VDM_VehicleSpeed : 47|16@0+ (0.01,0) [0|400] "Kph" ACM,EPAS_P,ESP,RCM - -BO_ 338 VDM_OutputSignals: 8 VDM - SG_ VDM_OutputSigs_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_OutputSigs_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_LfcRequestType : 13|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_LfcActiveRequest : 14|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_BrakeLightRequest : 15|1@0+ (1,0) [0|0] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_Lfc_BrakeTorqueRequest : 23|15@0+ (2,-65534) [-65534|0] "Nm" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_StcTorqueRequest : 39|11@0+ (0.0078125,-8) [-8|7.9921875] "Nm" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_StcFault : 43|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_StcActiveRequest : 44|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_EpbRequest : 49|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_ABSOffRoadModeRequest : 50|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_HhcActiveRequest : 51|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_EspPartialModeRequest : 53|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_SteeringModeRequest : 59|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM - SG_ VDM_EpasPowerMode : 61|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM - -BO_ 352 ACM_longitudinalRequest: 5 ACM - SG_ ACM_longitudinalRequest_Checksum : 7|8@0+ (1,0) [0|255] "-" VDM - SG_ ACM_longitudinalRequest_Counter : 11|4@0+ (1,0) [0|15] "-" VDM - SG_ ACM_AccelerationRequest : 23|11@0+ (0.01,-10.24) [-10.24|10.23] "m/s^2" VDM - SG_ ACM_VehicleHoldRequired : 24|1@0+ (1,0) [0|1] "" VDM - SG_ ACM_PrndRequired : 27|3@0+ (1,0) [0|7] "" VDM - SG_ ACM_longInterfaceEnable : 37|2@0+ (1,0) [0|3] "" VDM - SG_ ACM_AccelerationRequestType : 39|2@0+ (1,0) [0|3] "" VDM - -BO_ 354 VDM_AdasSts: 8 VDM - SG_ VDM_AdasStatus_Checksum : 7|8@0+ (1,0) [0|0] "" ACM - SG_ VDM_AdasStatus_Counter : 11|4@0+ (1,0) [0|0] "" ACM - SG_ VDM_AdasDecelLimit : 17|10@0+ (0.01,0) [0|10.23] "m/s^2" ACM - SG_ VDM_AdasDriverAccelPriorityStatus : 19|2@0+ (1,0) [0|3] "" ACM - SG_ VDM_AdasFaultStatus : 23|4@0+ (1,0) [0|15] "" ACM - SG_ VDM_AdasAccelLimit : 33|10@0+ (0.01,0) [0|10.23] "m/s^2" ACM - SG_ VDM_AdasDriverModeStatus : 36|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AdasAccelRequest : 50|11@0+ (0.01,-10.24) [-10.24|10.23] "m/s^2" ACM - SG_ VDM_AdasInterfaceStatus : 52|2@0+ (1,0) [0|3] "" ACM - SG_ VDM_AdasAccelRequestAcknowledged : 54|2@0+ (1,0) [0|3] "" ACM - SG_ VDM_AdasVehicleHoldStatus : 55|1@0+ (1,0) [0|1] "" ACM - -BO_ 357 VDM_AdasStalk: 4 VDM - SG_ VDM_AdasStalk_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM - SG_ VDM_AdasStalk_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM - SG_ VDM_AdasStalkGapAdjust : 17|2@0+ (1,0) [0|3] "" ACM - SG_ VDM_AdasStalkAccCancelRes : 19|2@0+ (1,0) [0|3] "" ACM - SG_ VDM_AdasStalkAutonomyButton : 20|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AdasStalkAccEnableAdj : 23|3@0+ (1,0) [0|7] "" ACM - -BO_ 384 VDM_CGM_GW: 8 CGM - SG_ VDM_CGM_GW_Checksum : 7|8@0+ (1,0) [0|0] "" ESP,IBM - SG_ VDM_CGM_GW_Counter : 11|4@0+ (1,0) [0|0] "" ESP,IBM - SG_ CGM_TrailerPresent : 13|2@0+ (1,0) [0|3] "" ESP,IBM - SG_ CGM_DriverPresent : 15|2@0+ (1,0) [0|3] "" ESP,IBM - SG_ CGM_TimeSinceLastIgnitionOn : 23|16@0+ (1,0) [0|65535] "s" ESP,IBM - SG_ CGM_IgnSwtState : 35|4@0+ (1,0) [0|15] "" ESP,IBM - -BO_ 432 ESP_TorqueLimit_Front: 8 ESP - SG_ ESP_Torque_Front_Checksum : 7|8@0+ (1,0) [0|255] "" VDM - SG_ ESP_Torque_Front_Counter : 11|4@0+ (1,0) [0|15] "" VDM - SG_ ESP_Torque_Front_MinQ : 14|1@0+ (1,0) [0|1] "" VDM - SG_ ESP_Torque_Front_MaxQ : 15|1@0+ (1,0) [0|1] "" VDM - SG_ ESP_Torque_Front_Max : 23|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM - SG_ ESP_Torque_Front_Min : 39|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM - -BO_ 448 ESP_TorqueLimit_Rear: 8 ESP - SG_ ESP_Torque_Rear_Checksum : 7|8@0+ (1,0) [0|255] "" VDM - SG_ ESP_Torque_Rear_Counter : 11|4@0+ (1,0) [0|15] "" VDM - SG_ ESP_Torque_Rear_MinQ : 14|1@0+ (1,0) [0|1] "" VDM - SG_ ESP_Torque_Rear_MaxQ : 15|1@0+ (1,0) [0|1] "" VDM - SG_ ESP_Torque_Rear_Max : 23|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM - SG_ ESP_Torque_Rear_Min : 39|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM - -BO_ 516 RCM_ALR_Status: 8 RCM - SG_ RCM_ALR_Status_Signal : 0|2@1+ (1,0) [0|3] "" OCS - -BO_ 520 ESP_Status: 8 ESP - SG_ ESP_Status_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Status_Counter : 11|4@0+ (1,0) [0|15] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_BrakeLightActive_Q : 12|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_BrakeLightActive : 13|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Hhc_Active : 14|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Hhc_Available : 15|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Abs_OffRoad_Mode : 16|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Tsm_Active : 17|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_FaultLamp_EBD : 18|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_FaultLamp_VDC : 19|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_FaultLamp_ABS : 20|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Esp_Active : 21|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Abs_Active : 23|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Partial_Mode : 25|2@0+ (1,0) [0|3] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Dtc_Active : 26|1@0+ (1,0) [0|1] "Enum" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Vehicle_Speed_Q : 28|2@0+ (1,0) [0|3] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Lfc_Available : 30|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Hba_Active : 31|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_BrkTrq : 38|15@0+ (2,-65534) [-65534|0] "Nm" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Lfc_Active : 39|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM - SG_ ESP_Vehicle_Speed : 55|16@0+ (0.01,0) [0|400] "kph" ACM,CGM,EPAS_P,RCM,VDM - -BO_ 521 ESP_WSpeed_Front: 8 ESP - SG_ ESP_WSpeed_Front_CRC : 7|8@0+ (1,0) [0|255] "" ACM,VDM - SG_ ESP_WSpeed_Front_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ ESP_Wheel_Speed_Left_Front_Q : 13|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Speed_Right_Front_Q : 15|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Speed_Left_Front : 23|16@0+ (0.01,0) [0|400] "kph" ACM,VDM - SG_ ESP_Wheel_Speed_Right_Front : 39|16@0+ (0.01,0) [0|400] "kph" ACM,VDM - SG_ ESP_Wheel_Dir_Right_Front : 53|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Dir_Left_Front : 55|2@0+ (1,0) [0|3] "" ACM,VDM - -BO_ 522 ESP_WSpeed_Rear: 8 ESP - SG_ ESP_WSpeed_Rear_CRC : 7|8@0+ (1,0) [0|255] "" ACM,VDM - SG_ ESP_WSpeed_Rear_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ ESP_Wheel_Speed_Left_Rear_Q : 13|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Speed_Right_Rear_Q : 15|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Speed_Left_Rear : 23|16@0+ (0.01,0) [0|400] "kph" ACM,VDM - SG_ ESP_Wheel_Speed_Right_Rear : 39|16@0+ (0.01,0) [0|400] "kph" ACM,VDM - SG_ ESP_Wheel_Dir_Right_Rear : 53|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Dir_Left_Rear : 55|2@0+ (1,0) [0|3] "" ACM,VDM - -BO_ 523 ESP_Wheel_Pulse_Veh: 8 ESP - SG_ ESP_Wheel_Pulse_CRC : 7|8@0+ (1,0) [0|255] "" ACM,VDM - SG_ ESP_Wheel_Pulse_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ ESP_Wheel_Pulse_Left_Front : 23|8@0+ (1,0) [0|255] "Pulse" ACM,VDM - SG_ ESP_Wheel_Pulse_Left_Rear : 31|8@0+ (1,0) [0|255] "Pulse" ACM,VDM - SG_ ESP_Wheel_Pulse_Right_Front : 39|8@0+ (1,0) [0|255] "Pulse" ACM,VDM - SG_ ESP_Wheel_Pulse_Right_Rear : 47|8@0+ (1,0) [0|255] "Pulse" ACM,VDM - SG_ ESP_Wheel_Pulse_Right_Front_Q : 49|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Pulse_Right_Rear_Q : 51|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Pulse_Left_Rear_Q : 53|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_Wheel_Pulse_Left_Front_Q : 55|2@0+ (1,0) [0|3] "" ACM,VDM - -BO_ 524 ESP_Brake_Pressure: 8 ESP - SG_ ESP_BrakeP_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,RCM,VDM - SG_ ESP_BrakeP_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,RCM,VDM - SG_ ESP_BrakePressure_RF_Q : 13|2@0+ (1,0) [0|3] "" ACM,RCM,VDM - SG_ ESP_BrakePressure_LF_Q : 15|2@0+ (1,0) [0|3] "" ACM,RCM,VDM - SG_ ESP_BrakePressure_LF : 23|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM - SG_ ESP_BrakePressure_LR : 31|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM - SG_ ESP_BrakePressure_RF : 39|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM - SG_ ESP_BrakePressure_RR : 47|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM - SG_ ESP_MasterCyl_Pressure : 55|10@0+ (0.25,0) [0|255] "bar" ACM,RCM,VDM - SG_ ESP_MasterCyl_Pressure_Q : 57|2@0+ (1,0) [0|3] "" ACM,RCM,VDM - SG_ ESP_BrakePressure_RR_Q : 59|2@0+ (1,0) [0|3] "" ACM,RCM,VDM - SG_ ESP_BrakePressure_LR_Q : 61|2@0+ (1,0) [0|3] "" ACM,RCM,VDM - -BO_ 529 VDM_Torque_Front: 8 VDM - SG_ VDM_Torque_Front_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ESP - SG_ VDM_Torque_Front_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ESP - SG_ VDM_Torque_Front_Max : 23|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_Torque_Front_Min : 26|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_Torque_Front_MaxQ : 28|1@0+ (1,0) [0|1] "" ESP - SG_ VDM_OutputTorqueFront : 47|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_DriverIntendedTorqueFront : 50|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_OutputTorqueFrontQ : 51|1@0+ (1,0) [0|1] "" ESP - SG_ VDM_Torque_Front_MinQ : 52|1@0+ (1,0) [0|1] "" ESP - -BO_ 530 VDM_Torque_Rear: 8 VDM - SG_ VDM_Torque_Rear_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ESP - SG_ VDM_Torque_Rear_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ESP - SG_ VDM_Torque_Rear_Max : 23|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_Torque_Rear_Min : 26|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_Torque_Rear_MaxQ : 28|1@0+ (1,0) [0|1] "" ESP - SG_ VDM_OutputTorqueRear : 47|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_DriverIntendedTorque_Rear : 50|11@0+ (1,-1023) [-1023|1024] "Nm" ESP - SG_ VDM_OutputTorqueRearQ : 51|1@0+ (1,0) [0|1] "" ESP - SG_ VDM_Torque_Rear_MinQ : 52|1@0+ (1,0) [0|1] "" ESP - -BO_ 565 IndicatorLights: 8 XXX - SG_ checksum : 0|8@1+ (1,0) [0|255] "" XXX - SG_ counter : 8|4@1+ (1,0) [0|15] "" XXX - SG_ RearDriverDoor : 24|2@0+ (1,0) [0|3] "" XXX - SG_ FrontPassengerDoor : 26|2@0+ (1,0) [0|3] "" XXX - SG_ DriverDoor : 28|2@0+ (1,0) [0|3] "" XXX - SG_ RearPassengerDoor : 38|2@0+ (1,0) [0|3] "" XXX - SG_ TurnLightLeft : 40|2@0+ (1,0) [0|3] "" XXX - SG_ TurnLightRight : 54|2@0+ (1,0) [0|3] "" XXX - -BO_ 592 VDM_EcasStatus: 8 VDM - SG_ VDM_EcasHeightFL : 7|8@0- (1,0) [-128|127] "mm" ACM - SG_ VDM_EcasHeightFR : 15|8@0- (1,0) [-128|127] "mm" ACM - SG_ VDM_EcasHeightRL : 23|8@0- (1,0) [-128|127] "mm" ACM - SG_ VDM_EcasHeightRR : 31|8@0- (1,0) [-128|127] "mm" ACM - -BO_ 789 BCM_Status: 8 VDM - SG_ BCM_AmbientAirTemperature : 15|8@0- (1,0) [-60|100] "degC" ESP - -BO_ 801 SCCM_WheelTouch: 7 SCCM - SG_ SCCM_WheelTouch_Checksum : 7|8@0+ (1,0) [0|255] "" XXX - SG_ SCCM_WheelTouch_Counter : 11|4@0+ (1,0) [0|15] "" XXX - SG_ SCCM_WheelTouch_HandsOn : 21|1@0+ (1,0) [0|1] "" XXX - SG_ SETME_X52 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ SCCM_WheelTouch_CapacitiveValue : 32|12@1+ (1,0) [0|4095] "" XXX - -BO_ 811 ESP_EpbStatus: 8 ESP - SG_ ESP_EpbStatus_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,VDM - SG_ ESP_EpbStatus_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ ESP_EpbAvailable : 12|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ ESP_EpbServiceMode : 13|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ ESP_EpbWarningLamp : 15|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ ESP_EpbMessageDisplayRequest : 20|5@0+ (1,0) [0|30] "" ACM,VDM - SG_ ESP_EpbStatus : 23|3@0+ (1,0) [0|7] "" ACM,VDM - SG_ ESP_EpbClampForce : 31|16@0+ (1,0) [0|65534] "N" ACM,VDM - SG_ ESP_EpbFunctionLamp : 47|2@0+ (1,0) [0|3] "" ACM,VDM - -BO_ 826 RCM_Status: 8 RCM - SG_ RCM_IMU_LongAcc_Checksum : 7|8@0+ (1,0) [0|25] "" ACM,ESP,VDM - SG_ RCM_IMU_LongAcc_MSG_Counter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM - SG_ RCM_Status_DETECT_CRUSH : 21|3@0+ (1,0) [0|7] "" ACM,ESP,VDM - SG_ RCM_Status_IND_WARN_RCM : 23|2@0+ (1,0) [0|3] "" ACM,ESP,VDM - SG_ RCM_Status_IND_ACT_RCM_PASS : 25|2@0+ (1,0) [0|3] "" ACM,ESP,VDM - SG_ RCM_Status_IND_WARN_BELT_DRIVER : 27|2@0+ (1,0) [0|3] "" ACM,ESP,VDM - SG_ RCM_Status_IND_WARN_BELT_PASS : 31|2@0+ (1,0) [0|3] "" ACM,ESP,VDM - -BO_ 848 EPASP_Status: 4 EPAS_P - SG_ EPAS_Ecu1Status_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,VDM - SG_ EPAS_Ecu1Status_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ EPAS_Ecu1EacSts : 14|3@0+ (1,0) [0|7] "" ACM,VDM - SG_ EPAS_Ecu1PowerMode : 18|3@0+ (1,0) [0|7] "" ACM,VDM - SG_ EPAS_Ecu1Role : 20|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ EPAS_Ecu1State : 31|4@0+ (1,0) [0|15] "" ACM,VDM - -BO_ 864 EPASS_Status: 4 VDM - SG_ EPASS_Ecu2Status_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,EPAS_P - SG_ EPASS_Ecu2Status_Counter : 11|4@0+ (1,0) [0|15] "" ACM,EPAS_P - SG_ EPAS_Ecu2EacSts : 14|3@0+ (1,0) [0|7] "" ACM,EPAS_P - SG_ EPAS_Ecu2PowerMode : 18|3@0+ (1,0) [0|7] "" ACM,EPAS_P - SG_ EPASS_Ecu2Role : 20|2@0+ (1,0) [0|3] "" ACM,EPAS_P - SG_ EPASS_Ecu2State : 31|4@0+ (1,0) [0|15] "" ACM,EPAS_P - -BO_ 880 ACM_tsrCmd: 8 ACM - SG_ ACM_tsrCmd_Checksum : 7|8@0+ (1,0) [0|0] "" Vector_XXX - SG_ ACM_tsrCmd_Counter : 11|4@0+ (1,0) [0|15] "" Vector_XXX - SG_ ACM_tsrConInfoStaCon2 : 19|4@0+ (1,0) [0|15] "" Vector_XXX - SG_ ACM_tsrConInfoStaCon1 : 23|4@0+ (1,0) [0|15] "" Vector_XXX - SG_ ACM_tsrSpdDisClsMain : 31|8@0+ (1,0) [0|255] "" Vector_XXX - SG_ ACM_tsrSpdDisCluCon1 : 39|8@0+ (1,0) [0|255] "" Vector_XXX - SG_ ACM_tsrSpdDisCluCon2 : 47|8@0+ (1,0) [0|255] "" Vector_XXX - SG_ ACM_tsrSpdDisCluConM : 55|8@0+ (1,0) [0|255] "" Vector_XXX - SG_ ACM_tsrAddInfoDisplay : 59|2@0+ (1,0) [0|3] "" Vector_XXX - SG_ ACM_tsrOvrlapSignDis : 61|2@0+ (1,0) [0|3] "" Vector_XXX - SG_ ACM_tsrStatus : 63|2@0+ (1,0) [0|3] "" Vector_XXX - -BO_ 896 EPAS_SystemStatus: 5 EPAS_P - SG_ EPAS_SytemStatus_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,VDM - SG_ EPAS_SystemStatus_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ EPAS_SteeringReduced : 12|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ EPAS_SteeringFault : 13|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ EPAS_SteeringMode : 15|2@0+ (1,0) [0|3] "" ACM,VDM - SG_ EPAS_TorsionBarTorque : 23|12@0+ (0.01,-20.5) [-20.49|20.43] "" ACM,VDM - SG_ EPAS_StcFault : 32|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ EPAS_StcActive : 33|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ EPAS_StcUnavailable : 34|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ H_CAN_EPSS_ToiFlt : 35|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ H_CAN_EPSS_ToiActive : 36|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ H_CAN_EPS_ToiUnavailable : 37|1@0+ (1,0) [0|1] "" ACM,VDM - SG_ EPAS_HandsOnLevel : 39|2@0+ (1,0) [0|3] "" ACM,VDM - -BO_ 907 ESPiB1: 6 ESP - SG_ ESPiB1_Checksum : 7|8@0+ (1,0) [0|255] "" IBM - SG_ ESPiB1_AliveCounter : 11|4@0+ (1,0) [0|15] "" IBM - SG_ ESPiB1_IgnitionOn : 12|1@0+ (1,0) [0|1] "" IBM - SG_ ESPiB1_VehicleSpeed_Q : 15|2@0+ (1,0) [0|3] "" IBM - SG_ ESPiB1_VehicleSpeed : 23|8@0+ (0.4,0) [0|100] "m/s" IBM - -BO_ 908 ESPiB2: 4 ESP - SG_ ESPiB2_Checksum : 7|8@0+ (1,0) [0|255] "" IBM - SG_ ESPiB2_Alive_Counter : 11|4@0+ (1,0) [0|15] "" IBM - SG_ ESPiB2_qTargetExternal_Q : 15|2@0+ (1,0) [0|3] "" IBM - SG_ ESPiB2_qTargetExternal : 23|16@0+ (0.0078125,-252) [-252|252] "ml/s" IBM - -BO_ 909 ESPiB3: 7 ESP - SG_ ESPiB3_Checksum : 7|8@0+ (1,0) [0|255] "" IBM - SG_ ESPiB3_AliveCounter : 11|4@0+ (1,0) [0|15] "" IBM - SG_ ESPiB3_ABSActive : 12|1@0+ (1,0) [0|1] "" IBM - SG_ ESPiB3_ForceBlendingActive : 15|2@0+ (1,0) [0|3] "" IBM - SG_ ESPiB3_pMcVirtual : 23|10@0+ (0.25,0) [0|250] "bar" IBM - SG_ ESPiB3_pMcVirtual_Q : 29|2@0+ (1,0) [0|3] "" IBM - SG_ ESPiB3_pForceBlendingMC : 39|10@0+ (0.25,0) [0|250] "" IBM - SG_ ESPiB3_pMC1 : 43|10@0+ (0.3,-30) [-30|276.6] "bar" IBM - SG_ ESPiB3_pForceBlendingMC_Q : 45|2@0+ (1,0) [0|3] "" IBM - SG_ ESPiB3_pMC1_Q : 49|2@0+ (1,0) [0|3] "" IBM - -BO_ 910 iBESP1: 7 IBM - SG_ iBESP1_Checksum : 7|8@0+ (1,0) [0|255] "" ESP,VDM - SG_ iBESP1_AliveCounter : 11|4@0+ (1,0) [0|15] "" ESP,VDM - SG_ iBESP1_ExtReqPrio : 12|1@0+ (1,0) [0|1] "" ESP,VDM - SG_ iBESP1_ExtReqStatus : 15|3@0+ (1,0) [0|7] "" ESP,VDM - SG_ iBESP1_sOutputRodDriver : 23|12@0+ (0.015625,-5) [-5|47] "mm" ESP,VDM - SG_ iBESP1_sOutputRodDriver_Q : 27|2@0+ (1,0) [0|3] "" ESP,VDM - SG_ iBESP1_sOutputRodAct : 39|12@0+ (0.015625,-5) [-5|47] "mm" ESP,VDM - SG_ iBESP1_sOutputRodAct_Q : 43|2@0+ (1,0) [0|3] "" ESP,VDM - -BO_ 911 iBESP2: 6 IBM - SG_ iBESP2_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,ESP,VDM - SG_ iBESP2_AliveCounter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM - SG_ iBESP2_CompatibilityIndex : 15|4@0+ (1,0) [0|15] "" ACM,ESP,VDM - SG_ iBESP2_pRunout_Q : 17|2@0+ (1,0) [0|3] "" ACM,ESP,VDM - SG_ iBESP2_iBDiagActive : 19|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ iBESP2_HbcRequest : 20|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ iBESP2_BrakePedalApplied_Q : 22|2@0+ (1,0) [0|3] "" ACM,ESP,VDM - SG_ iBESP2_BrakePedalApplied : 23|1@0+ (1,0) [0|1] "" ACM,ESP,VDM - SG_ iBESP2_pRunout : 31|8@0+ (1,0) [0|250] "bar" ACM,ESP,VDM - SG_ iBESP2_RprMode : 39|3@0+ (1,0) [0|7] "" ACM,ESP,VDM - -BO_ 912 EPAS_AdasStatus: 7 EPAS_P - SG_ EPAS_AdasStatus_Checksum : 7|8@0+ (1,0) [0|0] "" ACM,VDM - SG_ EPAS_AdasStatus_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ EPAS_SteeringAngleSpeed : 23|14@0+ (0.1,-819) [-819|819.3] "deg/s" ACM,VDM - SG_ EPAS_EacStatus : 35|3@0+ (1,0) [0|7] "" ACM,VDM - SG_ EPAS_EacErrorCode : 39|4@0+ (1,0) [0|15] "" ACM,VDM - SG_ EPAS_InternalSas : 47|14@0+ (0.1,-819.2) [-819.2|819] "deg" ACM,VDM - SG_ EPAS_InternalSasQ : 49|1@0+ (1,0) [0|1] "" ACM,VDM - -BO_ 929 VDM_ModSw_DrvModPosSts_GW: 8 VDM - SG_ VDM_AchDriveModeRequestConfirm : 0|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AchDriveModeRequestPullRearw : 1|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AchDriveModeRequestPushDown : 2|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AchDriveModeRequestPushForwa : 3|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AchDriveModeRequestPushUp : 4|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AchDriveModeRequestRest : 5|1@0+ (1,0) [0|1] "" ACM - SG_ VDM_AchDriveMode4x4 : 20|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveMode : 23|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeAirSuspension : 28|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeAbs : 31|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeDrivability : 36|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeDamping : 39|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeRollControl : 44|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeEsp : 47|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeEpas : 52|3@0+ (1,0) [0|7] "" ACM - SG_ VDM_AchDriveModeTcs : 55|3@0+ (1,0) [0|7] "" ACM - -BO_ 1024 VehicleConfig: 7 CGM - SG_ VCM_VehicleType : 7|8@0+ (1,0) [0|255] "" ACM,ESP - SG_ VCM_HandOfDrive : 9|1@0+ (1,0) [0|1] "" ACM,ESP - SG_ VCM_BatterySize : 15|6@0+ (1,0) [0|63] "" ACM,ESP - SG_ VCM_Market : 23|8@0+ (1,0) [0|255] "" ACM,ESP - -BO_ 1265 Cluster: 6 XXX - SG_ Cluster_VehicleSpeed : 8|8@1+ (1,0) [0|255] "mph" XXX - -BO_ 1280 RCM_Dtc: 8 RCM - SG_ RCM_Dtc_Checksum : 7|8@0+ (1,0) [0|25] "" VDM - SG_ RCM_Dtc_Counter : 11|4@0+ (1,0) [0|15] "" VDM - SG_ RCM_Dtc_HighByte : 23|8@0+ (1,0) [0|255] "" VDM - SG_ RCM_Dtc_MidByte : 31|8@0+ (1,0) [0|255] "" VDM - SG_ RCM_Dtc_LowByte : 39|8@0+ (1,0) [0|255] "" VDM - SG_ RCM_Dtc_Stat_Bit : 47|8@0+ (1,0) [0|255] "" VDM - SG_ RCM_Dtc_Number : 55|8@0+ (1,0) [0|255] "" VDM - -BO_ 1281 RCM_SerialIdentifier: 8 RCM - SG_ RCM_SerialNumber : 7|64@0+ (1,0) [0|1.84467440737096e+19] "" ESP,VDM - -BO_ 1328 Dummy_ACM_PrimaryActuatorCAN: 8 ACM - SG_ Dummy_ACM_PrimaryActuatorCAN : 7|8@0+ (1,0) [0|255] "" TestTool - -BO_ 1329 Dummy_CGM_PrimaryActuatorCAN: 1 CGM - SG_ Dummy_CGM_PrimaryActuatorCAN : 7|8@0+ (1,0) [0|255] "" TestTool - -BO_ 1330 Dummy_VDM_PrimaryActuatorCAN: 1 VDM - SG_ Dummy_VDM_PrimaryActuatorCAN : 7|8@0+ (1,0) [0|255] "" TestTool - -BO_ 1535 DoorStatus: 8 XXX - SG_ DoorOpen : 8|1@0+ (1,0) [0|1] "" XXX - -BO_ 1545 XCP_Cmd_VDM: 8 TestTool - -BO_ 1609 XCP_Resp_VDM: 8 VDM - -BO_ 1635 XCP_Cmd_EPAS_P: 8 TestTool - -BO_ 1636 XCP_Daq_EPAS_P: 8 EPAS_P - -BO_ 1637 XCP_Resp_EPAS_P: 8 EPAS_P - -BO_ 1640 OCS_PassSeatInfo: 8 OCS - SG_ OCS_Checksum : 0|8@1+ (1,0) [0|255] "-" RCM - SG_ OCS_Counter : 8|4@1+ (1,0) [0|15] "-" RCM - SG_ OCS_FrontPassClass : 16|4@1+ (1,0) [0|15] "" RCM - SG_ OCS_FrontPassClassValid : 20|1@1+ (1,0) [0|1] "" RCM - SG_ OCS_FrontPassFaultStatus : 21|2@1+ (1,0) [0|3] "" RCM - SG_ OCS_Reserved_1 : 23|1@1+ (1,0) [0|1] "" RCM - SG_ OCS_FrontPassSBRStatus : 24|4@1+ (1,0) [0|15] "" RCM - SG_ OCS_OperatingMode : 28|4@1+ (1,0) [0|15] "" RCM - SG_ OCS_Reserved_2 : 56|8@1+ (1,0) [0|255] "" RCM - -BO_ 1705 XCP_Daq_VDM: 8 VDM - -BO_ 1800 Diag_PhysReq_ACM_PrimaryActuator: 8 TestTool - -BO_ 1843 Diag_PhysReq_EPAS_P_PrimaryActua: 8 TestTool - -BO_ 1844 Diag_PhysReq_RCM_PrimaryActuator: 8 TestTool - -BO_ 1845 Diag_PhysReq_ESP_PrimaryActuator: 8 TestTool - -BO_ 1846 Diag_PhysReq_IBM_PrimaryActuator: 8 TestTool - -BO_ 1864 Diag_PhysResp_ACM_PrimaryActuato: 8 ACM - -BO_ 1907 Diag_PhysResp_EPAS_P_PrimaryActu: 8 EPAS_P - -BO_ 1908 Diag_PhysResp_RCM_PrimaryActuato: 8 RCM - -BO_ 1909 Diag_PhysResp_ESP_PrimaryActuato: 8 ESP - -BO_ 1910 Diag_PhysResp_IBM_PrimaryActuato: 8 IBM - -CM_ BO_ 64 "External steering angle sensor message."; -CM_ BO_ 801 "Not a reference message. Suspected ECU source is SCCM (Steering Column Control Module). Used by ACM to show hold wheel message on ACC engagement."; -CM_ SG_ 64 SAS_Status_Checksum "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Checksum for steering wheel sensor data."; -CM_ SG_ 64 SAS_Status_Counter "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Counter value for steering wheel sensor data."; -CM_ SG_ 64 SAS_Status_AngleSafe "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel"; -CM_ SG_ 64 SAS_Status_AngleSpeedSafe "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Steering angle speed with steering wheel rotation direction. Turning the steering wheel left (counterclockwise) is represented by positive values and"; -CM_ SG_ 64 SAS_StatusQ "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Qf for steering wheel sensor information"; -CM_ SG_ 256 ACM_Status_Checksum "Checksum signal for frame"; -CM_ SG_ 256 ACM_Status_Counter "Message counter signal for frame"; -CM_ SG_ 256 ACM_FeatureStatus "Current active ADAS feature"; -CM_ SG_ 256 ACM_FaultStatus "Reason for ACM fault"; -CM_ SG_ 257 ACM_AebRequest_Checksum "J1850"; -CM_ SG_ 257 ACM_AebRequest_Counter "Message Counter"; -CM_ SG_ 257 ACM_StopRequest "AEB Stop Request subsequent to AEB event"; -CM_ SG_ 257 ACM_FailInfo "AEB System Failure flags"; -CM_ SG_ 257 ACM_DbsLevel "Dynamic Braking Support (DBS) Level"; -CM_ SG_ 257 ACM_OnOffStatus "AEB System On/Off Status"; -CM_ SG_ 257 ACM_DecelRequest "AEB Target Deceleration command"; -CM_ SG_ 257 ACM_WarnLevel "AEB Warning Level"; -CM_ SG_ 257 ACM_PrefillEnableRequest "AEB Pre-fill Enable Request"; -CM_ SG_ 257 ACM_EnableRequest "AEB Enable Request"; -CM_ SG_ 258 ESP_AebFeedback_Checksum "J1850 Checksum"; -CM_ SG_ 258 ESP_AebFeedback_Counter "Message Counter"; -CM_ SG_ 258 iB_BrakePedalApplied_Q "Description: Qualifier for iBESP2_BrakePedalApplied signal"; -CM_ SG_ 258 iB_BrakePedalApplied "Description: Indicates whether the driver operates the brake pedal. Only active when the driver brakes, not when an external brake command implemented on iB - -Note: -1.Needed for HBB and HBC - -2. Monitoring for pMC (BSM)"; -CM_ SG_ 258 ESP_DecelFeedback "AEB Decel Feedback"; -CM_ SG_ 258 ESP_AebActive "AEB Active"; -CM_ SG_ 258 ESP_AebAvailable "AEB Available"; -CM_ SG_ 258 ESP_DbsActive "DBS Active"; -CM_ SG_ 258 ESP_PrefillActiveFeedback "Prefill Active Feedback"; -CM_ BO_ 272 "External steering angle control message for EPAS."; -CM_ SG_ 272 ACM_SteeringControl_Checksum "Checksum for DAS_steeringControl message. Refer to AUTOSAR E2E library Profile 1."; -CM_ SG_ 272 ACM_SteeringControl_Counter "Message counter for DAS_steeringControl message. It counts from 0 to 14 and rolls back to 0 after reaching14. Refer to AUTOSAR E2E library Profile 1."; -CM_ SG_ 272 ACM_EacEnabled "External angle control type for EPAS."; -CM_ SG_ 272 ACM_HapticRequired "External angle control type for EPAS."; -CM_ SG_ 272 ACM_SteeringAngleRequest "External angle control request for EPAS"; -CM_ SG_ 304 RCM_IMU_LatAcc "Inertial Measurement Unit Lateral Acceleration Primary"; -CM_ SG_ 320 RCM_IMU_LongAcc_Sig "Inertial Measurement Unit Longitudinal Accleration Primary"; -CM_ SG_ 338 VDM_EpbRequest "Apply and release request (EVIC, Shift to From Park/Stalk Switch Input)"; -CM_ SG_ 338 VDM_EpasPowerMode "EPAS power mode request."; -CM_ SG_ 352 ACM_longitudinalRequest_Checksum "Checksum signal for frame"; -CM_ SG_ 352 ACM_longitudinalRequest_Counter "Message counter signal for frame"; -CM_ SG_ 352 ACM_AccelerationRequest "Acceleration Request command from the ACM"; -CM_ SG_ 352 ACM_VehicleHoldRequired "Vehicle hold request flag"; -CM_ SG_ 352 ACM_PrndRequired "Drive state Request command from the ACM"; -CM_ SG_ 352 ACM_longInterfaceEnable "Acceleration Interface Enable Request from the ACM"; -CM_ SG_ 352 ACM_AccelerationRequestType "Acceleration Request type(positive/negative) from the ACM"; -CM_ SG_ 354 VDM_AdasStatus_Checksum "VDM_AdasSts message j1850 checksum."; -CM_ SG_ 354 VDM_AdasStatus_Counter "VDM_AdasSts message counter."; -CM_ SG_ 354 VDM_AdasFaultStatus "Fault status of ADAS requests from VDM."; -CM_ SG_ 354 VDM_AdasDriverModeStatus "Signal which describes who is commanding the torque - Human or ADAS"; -CM_ SG_ 354 VDM_AdasAccelRequestAcknowledged "An acknowleddge signal to the ADAS system to show that TQM is honoring their request"; -CM_ SG_ 432 ESP_Torque_Front_MinQ "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 432 ESP_Torque_Front_MaxQ "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 432 ESP_Torque_Front_Max "ESP intervention, ESP tractive torque limit per axle."; -CM_ SG_ 432 ESP_Torque_Front_Min "ESP intervention, ESP regen torque limit per axle."; -CM_ SG_ 448 ESP_Torque_Rear_Checksum "J1850 Checksum"; -CM_ SG_ 448 ESP_Torque_Rear_Counter "Message Counter"; -CM_ SG_ 448 ESP_Torque_Rear_MinQ "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 448 ESP_Torque_Rear_MaxQ "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 448 ESP_Torque_Rear_Max "ESP intervention, ESP tractive torque limit per axle."; -CM_ SG_ 448 ESP_Torque_Rear_Min "ESP intervention, ESP regen torque limit per axle."; -CM_ SG_ 520 ESP_Status_Checksum "J1850 Checksum"; -CM_ SG_ 520 ESP_Status_Counter "Message Counter"; -CM_ SG_ 520 ESP_BrakeLightActive_Q "Indication of whether ESP_BrakeLightActive signal is valid"; -CM_ SG_ 520 ESP_BrakeLightActive "ESP Request to Activate Rear Brake Lamps"; -CM_ SG_ 520 ESP_Hhc_Active "HHC Active"; -CM_ SG_ 520 ESP_Hhc_Available "HHC Available"; -CM_ SG_ 520 ESP_Tsm_Active "Trailer Sway Mitigation Active Flag"; -CM_ SG_ 520 ESP_FaultLamp_EBD "ESP request to display ABS-TC Fault Lamp"; -CM_ SG_ 520 ESP_FaultLamp_VDC "ESP request to display ABS/ESP Fault Lamp"; -CM_ SG_ 520 ESP_FaultLamp_ABS "ESP request to display ABS Fault Lamp"; -CM_ SG_ 520 ESP_Esp_Active "Vehicle Stability Control is actively managing a stability event"; -CM_ SG_ 520 ESP_Abs_Active "Anti-Lock Brakes is actively working to prevent the brakes from locking up"; -CM_ SG_ 520 ESP_Partial_Mode "ESP current PATA mode"; -CM_ SG_ 520 ESP_Dtc_Active "Drag Torque Control is actively requesting torque."; -CM_ SG_ 520 ESP_Vehicle_Speed_Q "Indication of whether ESP_VehicleSpeed signal is valid"; -CM_ SG_ 520 ESP_Lfc_Available "LFC Available"; -CM_ SG_ 520 ESP_Hba_Active "HBA Active"; -CM_ SG_ 520 ESP_BrkTrq "ESP Brake Torque"; -CM_ SG_ 520 ESP_Lfc_Active "LFC Active"; -CM_ SG_ 520 ESP_Vehicle_Speed "ESP calculated vehicle speed. Average of front wheels on rear wheel drive vehicles. Average of all four wheels on dual motor vehicles."; -CM_ SG_ 521 ESP_WSpeed_Front_CRC "J1850 Checksum"; -CM_ SG_ 521 ESP_WSpeed_Front_Message_Counter "Message Counter"; -CM_ SG_ 521 ESP_Wheel_Speed_Left_Front_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 521 ESP_Wheel_Speed_Right_Front_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 521 ESP_Wheel_Speed_Left_Front "Wheel Speed Left Front"; -CM_ SG_ 521 ESP_Wheel_Speed_Right_Front "Wheel Speed Right Front"; -CM_ SG_ 521 ESP_Wheel_Dir_Right_Front "Wheel Rotation Direction Right Front"; -CM_ SG_ 521 ESP_Wheel_Dir_Left_Front "Wheel Rotation Direction Left Front"; -CM_ SG_ 522 ESP_WSpeed_Rear_CRC "J1850 Checksum"; -CM_ SG_ 522 ESP_WSpeed_Rear_Message_Counter "Message Counter"; -CM_ SG_ 522 ESP_Wheel_Speed_Left_Rear_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 522 ESP_Wheel_Speed_Right_Rear_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 522 ESP_Wheel_Speed_Left_Rear "Wheel Speed Left Rear"; -CM_ SG_ 522 ESP_Wheel_Speed_Right_Rear "Wheel Speed Right Rear"; -CM_ SG_ 522 ESP_Wheel_Dir_Right_Rear "Wheel Rotation Direction Right Rear"; -CM_ SG_ 522 ESP_Wheel_Dir_Left_Rear "Wheel Rotation Direction Left Rear"; -CM_ SG_ 523 ESP_Wheel_Pulse_CRC "J1850 Checksum"; -CM_ SG_ 523 ESP_Wheel_Pulse_Message_Counter "Message Counter"; -CM_ SG_ 523 ESP_Wheel_Pulse_Left_Front "Wheel Pulse Left Front"; -CM_ SG_ 523 ESP_Wheel_Pulse_Left_Rear "Wheel Pule Left Rear"; -CM_ SG_ 523 ESP_Wheel_Pulse_Right_Front "Wheel Pulse Right Front"; -CM_ SG_ 523 ESP_Wheel_Pulse_Right_Rear "Wheel Pulse Right Rear"; -CM_ SG_ 523 ESP_Wheel_Pulse_Right_Front_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 523 ESP_Wheel_Pulse_Right_Rear_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 523 ESP_Wheel_Pulse_Left_Rear_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 523 ESP_Wheel_Pulse_Left_Front_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 524 ESP_BrakeP_Checksum "J1850 Checksum"; -CM_ SG_ 524 ESP_BrakeP_Message_Counter "Message Counter"; -CM_ SG_ 524 ESP_BrakePressure_RF_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 524 ESP_BrakePressure_LF_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 524 ESP_BrakePressure_LF "Brake Pressure Left Front"; -CM_ SG_ 524 ESP_BrakePressure_LR "Brake Pressure Left Rear"; -CM_ SG_ 524 ESP_BrakePressure_RF "Brake Pressure Right Front"; -CM_ SG_ 524 ESP_BrakePressure_RR "Brake Pressure Right Rear"; -CM_ SG_ 524 ESP_MasterCyl_Pressure "Master Cyclinder Brake Pressure"; -CM_ SG_ 524 ESP_MasterCyl_Pressure_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 524 ESP_BrakePressure_RR_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 524 ESP_BrakePressure_LR_Q "Indication of whether signal with corresponding name is valid"; -CM_ SG_ 529 VDM_OutputTorqueFront "Output torque which is currently provided by the electric machine"; -CM_ SG_ 529 VDM_DriverIntendedTorqueFront "Driver Requested Torque pre ESP limits being applied"; -CM_ SG_ 530 VDM_OutputTorqueRear "Output torque which is currently provided by the electric machine"; -CM_ SG_ 530 VDM_DriverIntendedTorque_Rear "Driver Requested Torque pre ESP limits being applied"; -CM_ SG_ 592 VDM_EcasHeightFL "Change in ride height, with zero referenced to normal/design ride height"; -CM_ SG_ 592 VDM_EcasHeightFR "Change in ride height, with zero referenced to normal/design ride height"; -CM_ SG_ 592 VDM_EcasHeightRL "Change in ride height, with zero referenced to normal/design ride height"; -CM_ SG_ 592 VDM_EcasHeightRR "Change in ride height, with zero referenced to normal/design ride height"; -CM_ SG_ 811 ESP_EpbStatus_Checksum "J1850 Checksum"; -CM_ SG_ 811 ESP_EpbStatus_Counter "Message Counter"; -CM_ SG_ 811 ESP_EpbAvailable "EPB Availability. Shows the availability of the EPB function."; -CM_ SG_ 811 ESP_EpbServiceMode "Indication whether EPB is in service mode."; -CM_ SG_ 811 ESP_EpbWarningLamp "Failure Driver Lamp indication for EPB."; -CM_ SG_ 811 ESP_EpbMessageDisplayRequest "EPB text message"; -CM_ SG_ 811 ESP_EpbStatus "Current EPB actuator state."; -CM_ SG_ 811 ESP_EpbClampForce "Currently applied clamp force of EPB."; -CM_ SG_ 811 ESP_EpbFunctionLamp "Driver Lamp indication for EPB (LED on button)."; -CM_ BO_ 848 "Forwarded Message from EPAS Primary to Secondary ECU via Public CAN."; -CM_ BO_ 864 "Forwarded Message from EPAS Secondary to Primary ECU via Public CAN ."; -CM_ BO_ 896 "EPAS status info."; -CM_ SG_ 896 EPAS_SytemStatus_Checksum "Checksum for EPAS_sysStatus message. Refer to AUTOSAR E2E library Profile 1."; -CM_ SG_ 896 EPAS_SystemStatus_Counter "Message counter for EPAS_sysStatus message. It counts from 0 to 14 and rolls back to 0 after reaching14. Refer to AUTOSAR E2E library Profile 1."; -CM_ SG_ 896 EPAS_SteeringReduced "Power steering is functional, but reduced."; -CM_ SG_ 896 EPAS_SteeringFault "Power steering is not-available."; -CM_ SG_ 896 EPAS_SteeringMode "ESP current PATA mode"; -CM_ BO_ 907 "Basic communication ESP iBooster"; -CM_ SG_ 907 ESPiB1_Checksum "J1850 Checksum"; -CM_ SG_ 907 ESPiB1_AliveCounter "Message Counter"; -CM_ SG_ 907 ESPiB1_IgnitionOn "Description: Indicates whether the key is turned or not in the car - -Note: Used in PostRun calculation in iBooster"; -CM_ SG_ 907 ESPiB1_VehicleSpeed_Q "Description: Qualifier of the signal : ESPiB1_VehicleSpeed_Q - -Note: Robert Bosch Standard qualifier"; -CM_ SG_ 907 ESPiB1_VehicleSpeed "Description: Averaged wheel speed (signal in m/s on CAN but monitored in km/h in dbc) - -Note: -for standstill detection in iBooster - -1. For HEV function in iBoosterhev - -2. For EBR -3. Logic for Pressure Reduction"; -CM_ SG_ 908 ESPiB2_Checksum "J1850 Checksum"; -CM_ SG_ 908 ESPiB2_Alive_Counter "Message Counter"; -CM_ SG_ 908 ESPiB2_qTargetExternal_Q "Description: Qualifier for the volume flow interface - -Note: Qualifier for the volume flow interface"; -CM_ SG_ 908 ESPiB2_qTargetExternal "Description: Target flow of the brake system to be applied by iBooster for EBR. - -Note: For EBR through iBooster, interface needs to be operated together with ESPiB_pTargetExternal."; -CM_ BO_ 909 "Extended communication ESP iBooster"; -CM_ SG_ 909 ESPiB3_Checksum "J1850 Checksum"; -CM_ SG_ 909 ESPiB3_AliveCounter "Message Counter"; -CM_ SG_ 909 ESPiB3_ABSActive "Description: Indicates that at least one wheel ABS is in control - -Note: -1. For ABS pressure limitation - -2. For HEV function"; -CM_ SG_ 909 ESPiB3_ForceBlendingActive "Description: Control state of force-blending interface - -Note: Used by PFC in iB"; -CM_ SG_ 909 ESPiB3_pMcVirtual "Description: Virtual master cylinder pressure determined in ESP from boost body position of iBooster. - -note: -1. to control the force-blending of recuperation in ESPhev. -2. For JumpIn/Gain Adjustment in iBooster"; -CM_ SG_ 909 ESPiB3_pMcVirtual_Q "Description: Qualifier for the ESPiB3_pMcVirtual_Q signal"; -CM_ SG_ 909 ESPiB3_pForceBlendingMC "Description : Master Cylinder pressure used by force blending function. Can differ from real master cylinder pressure, to avoid short peaks and disturbances which should not be compensated by force-blending - -Note: Used by PFC in iB"; -CM_ SG_ 909 ESPiB3_pMC1 "Description: Current pressure of the master cylinder pressure sensor in the ESP. Raw value without offset compensation. - - -Note: -1. For pressure reduction logic - -2. For HEV Function - -3. For EBR - -4. For runout definition"; -CM_ SG_ 909 ESPiB3_pForceBlendingMC_Q "Description: Qualifier for the ESPiB3_pForceBlendingMC"; -CM_ SG_ 909 ESPiB3_pMC1_Q "Description: Qualifier for ESPiB3_pMC1_Q signal"; -CM_ SG_ 910 iBESP1_ExtReqPrio "To determine driver's braking request for EBR together with sPushRod, eg for CDD"; -CM_ SG_ 910 iBESP1_ExtReqStatus "Status of external brake request (EBR) function"; -CM_ SG_ 910 iBESP1_sOutputRodDriver "Information of driver brake request. -Calculation of: -- target value for output rod in iBooster -Also shows pedal travel with active pressure increase via iBooster"; -CM_ SG_ 910 iBESP1_sOutputRodDriver_Q "Information about the signal quality of sOutputRodDriver"; -CM_ SG_ 910 iBESP1_sOutputRodAct "Current value for output rod in iBooster indicates the shifted volume in master cylinder. Gives information, if the compensation port is closed."; -CM_ SG_ 910 iBESP1_sOutputRodAct_Q "Information about the signal quality of sOutputRodAct"; -CM_ SG_ 911 iBESP2_CompatibilityIndex "Description: iB is sending an static number which which must fit to the same number monitored in ESP to ensure the compatibility of the two ECU."; -CM_ SG_ 911 iBESP2_pRunout_Q "Description: Qualifier for the iBESP2_pRunout signal"; -CM_ SG_ 911 iBESP2_iBDiagActive "iB is in extended Diag Session (iB_ActiveMode = Diagnosis)"; -CM_ SG_ 911 iBESP2_HbcRequest "request HBC if amplification of iB is not possible"; -CM_ SG_ 911 iBESP2_BrakePedalApplied_Q "Description: Qualifier for iBESP2_BrakePedalApplied signal"; -CM_ SG_ 911 iBESP2_BrakePedalApplied "Description: Indicates whether the driver operates the brake pedal. Only active when the driver brakes, not when an external brake command implemented on iB - -Note: -1.Needed for HBB and HBC - -2. Monitoring for pMC (BSM)"; -CM_ SG_ 911 iBESP2_pRunout "Description: In driver braking: maximum achievable master cylinder pressure with boost (runout.) -With an active pressure increase: maximum achievable brake master cylinder pressure. - -Note: -1. Required for HBB - -2. For LDM demand on iB (EBR)"; -CM_ SG_ 912 EPAS_EacStatus "Status of the EAC function of EPAS, to indicate what mode is active."; -CM_ SG_ 912 EPAS_EacErrorCode "EPAS external angle control error code."; -CM_ SG_ 912 EPAS_InternalSas "Steering wheel angle measured by EPAS"; -CM_ SG_ 912 EPAS_InternalSasQ "Steering angle sensor validity status"; -CM_ SG_ 1640 OCS_Checksum "Checksum signal for frame"; -VAL_ 64 SAS_Status_Calibrated 0 "SAS_Status_Calibrated_Not_Calibrated" 1 "SAS_Status_Calibrated_Calibrated"; -VAL_ 64 SAS_StatusQ 0 "SAS_Status_UndefinedDataACCur" 1 "SAS_Status_TmpUnDefinedData" 2 "SAS_Status_DataACCurrentNotWithinSpecification" 3 "SAS_Status_ACCurrentData"; -VAL_ 256 ACM_FeatureStatus 0 "ACM_FeatureStatus_Standby" 1 "ACM_FeatureStatus_Acc" 2 "ACM_FeatureStatus_Hwp" 3 "ACM_FeatureStatus_Uf" 4 "ACM_FeatureStatus_Faulted"; -VAL_ 256 ACM_FaultStatus 0 "ACM_FaultStatus_NoFault" 1 "ACM_FaultStatus_Faulted" 7 "ACM_FaultStatus_Sna"; -VAL_ 257 ACM_StopRequest 0 "ACM_StopRequest_No_Request" 1 "ACM_StopRequest_Request"; -VAL_ 257 ACM_FailInfo 0 "ACM_FailInfo_Normal" 1 "ACM_FailInfo_Temp_Unav_By_Camera" 2 "ACM_FailInfo_Temp_Unav_By_Radar" 3 "ACM_FailInfo_Service_Required"; -VAL_ 257 ACM_DbsLevel 0 "ACM_DbsLevel_No_Activation" 1 "ACM_DbsLevel_Level_1" 2 "ACM_DbsLevel_Level_2" 3 "ACM_DbsLevel_Level_3"; -VAL_ 257 ACM_OnOffStatus 0 "ACM_OnOffStatus_Off" 1 "ACM_OnOffStatus_On_Fcw" 2 "ACM_OnOffStatus_On_Aeb" 3 "ACM_OnOffStatus_Invalid"; -VAL_ 257 ACM_WarnLevel 0 "ACM_WarnLevel_No_Warning" 1 "ACM_WarnLevel_Warning_Level_1" 2 "ACM_WarnLevel_Warning_Level_2" 3 "ACM_WarnLevel_Warning_Level_3"; -VAL_ 257 ACM_PrefillEnableRequest 0 "ACM_PrefillEnableRequest_Disable" 1 "ACM_PrefillEnableRequest_Enable"; -VAL_ 257 ACM_EnableRequest 0 "ACM_EnableRequest_Disable" 1 "ACM_EnableRequest_Enable"; -VAL_ 258 iB_BrakePedalApplied_Q 0 "iB_BrakePedalApplied_Q_No_Init_Or_Off" 1 "iB_BrakePedalApplied_Q_Applied_Normal" 2 "iB_BrakePedalApplied_Q_Applied_Faulty"; -VAL_ 258 iB_BrakePedalApplied 0 "iB_BrakePedalApplied_NotApplied" 1 "iB_BrakePedalApplied_Applied"; -VAL_ 258 ESP_AebActive 0 "ESP_AebActive_Inactive" 1 "ESP_AebActive_Active"; -VAL_ 258 ESP_AebAvailable 0 "ESP_AebAvailable_Not_Available" 1 "ESP_AebAvailable_Available"; -VAL_ 258 ESP_DbsActive 0 "ESP_DbsActive_Dbs_Inactive" 1 "ESP_DbsActive_Dbs_Active"; -VAL_ 258 ESP_PrefillActiveFeedback 0 "ESP_PrefillActiveFeedback_Inactive" 1 "ESP_PrefillActiveFeedback_Active"; -VAL_ 258 ESP_PrefillAvailable 0 "ESP_PrefillAvailible_NotAvailable" 1 "ESP_PrefillAvailible_Available"; -VAL_ 258 ESP_DbsAvailable 0 "ESP_DbsAvailable_NotAvailable" 1 "ESP_DbsAvailable_Available"; -VAL_ 272 ACM_EacEnabled 0 "ACM_EacEnable_None" 1 "ACM_EacEnable_Enabled" 2 "ACM_EacEnable_Reserved"; -VAL_ 272 ACM_HapticRequired 0 "ACM_HapticRequired_Inactive" 1 "ACM_HapticRequired_Active"; -VAL_ 288 ACM_HapticRequest 0 "ACM_HapticRequest_No_Request" 1 "ACM_HapticRequest_Haptic_Request"; -VAL_ 288 ACM_lkaSymbolState 0 "ACM_LKASYMBOLSTATE_OFF" 1 "ACM_LKASYMBOLSTATE_WHITE_ON_LDW_STANDBY" 2 "ACM_LKASYMBOLSTATE_GREEN_ON_LDW_LKA_STANDBY" 3 "ACM_LKASYMBOLSTATE_GREEN_BLNK_LDW_WARN_OR_LKA_CNTRL" 4 "ACM_LKASYMBOLSTATE_ORANGE_ON_FAIL" 5 "ACM_LKASYMBOLSTATE_ORANGE_BLINK_NOT_CALIBRATED" 6 "ACM_LKASYMBOLSTATE_ORANGE_ON_REGULATION" 7 "ACM_LKASYMBOLSTATE_WHITE_BLINK"; -VAL_ 288 ACM_lkaToiFlt 0 "ACM_LKATOIFLT_NO_FAULT" 1 "ACM_LKATOIFLT_FAULT_PRESENT"; -VAL_ 288 ACM_lkaActToi 0 "ACM_LKAACTTOI_DE_ACTIVATE_TOI" 1 "ACM_LKAACTTOI_ACTIVATE_TOI"; -VAL_ 288 ACM_hbaSysState 0 "ACM_HBASYSSTATE_DEFAULT_DISABLE" 1 "ACM_HBASYSSTATE_HBA_ENABLE_HIGH_BEAM_OFF" 2 "ACM_HBASYSSTATE_HBA_ENABLE_HIGH_BEAM_ON" 7 "ACM_HBASYSSTATE_SYSTEM_FAIL"; -VAL_ 288 ACM_ldwRHWarning 0 "ACM_LKARHWARNING_NO_WARNING" 1 "ACM_LKARHWARNING_HAPTIC_WARNING_AND_DISPLAY" 2 "ACM_LKARHWARNING_ACOUSTIC_WARNING_AND_DISPLAY" 3 "ACM_LKARHWARNING_HAPTIC_ACOUSTIC_AND_DISPLAY"; -VAL_ 288 ACM_ldwLHWarning 0 "ACM_LKALHWARNING_NO_WARNING" 1 "ACM_LKALHWARNING_HAPTIC_WARNING_AND_DISPLAY" 2 "ACM_LKALHWARNING_ACOUSTIC_WARNING_AND_DISPLAY" 3 "ACM_LKALHWARNING_HAPTIC_ACOUSTIC_AND_DISPLAY"; -VAL_ 288 ACM_lkaLaneRecogState 0 "ACM_LKALANERECOGSTATE_NOT_RECOGNITION" 1 "ACM_LKALANERECOGSTATE_LEFT_LANE_RECOGNITION" 2 "ACM_LKALANERECOGSTATE_RIGHT_LANE_RECOGNITION" 3 "ACM_LKALANERECOGSTATE_FULL_LANE_RECOGNITION"; -VAL_ 288 ACM_hbaLamp 0 "ACM_HBALAMP_HBA_INDICATOR_LAMP_OFF" 1 "ACM_HBALAMP_HBA_INDICATOR_LAMP_ON"; -VAL_ 288 ACM_lkaHandsoffSoundWarning 0 "ACM_LKAHANDSOFFSOUNDWARNING_NO_INFO" 1 "ACM_LKAHANDSOFFSOUNDWARNING_WARNING" 2 "ACM_LKAHANDSOFFSOUNDWARNING_RESERVED_2" 3 "ACM_LKAHANDSOFFSOUNDWARNING_RESERVED_3"; -VAL_ 288 ACM_lkaHandsoffDisplayWarning 0 "ACM_LKAHANDSOFFDISPLAYWARNING_NO_INFO" 1 "ACM_LKAHANDSOFFDISPLAYWARNING_WARNING" 2 "ACM_LKAHANDSOFFDISPLAYWARNING_RESERVED_2" 3 "ACM_LKAHANDSOFFDISPLAYWARNING_RESERVED_3"; -VAL_ 288 ACM_lkaElkRequest 0 "off" 1 "applying torque right for left departure" 2 "applying torque left for right departure"; -VAL_ 288 ACM_ldwlkaOnOffState 1 "LDW on" 2 "LKAS+LDW on" 3 "all off"; -VAL_ 288 ACM_elkOnOffState 1 "LKAS toggled on" 2 "LKAS toggled off"; -VAL_ 304 RCM_IMU_LatAcc_Stat_SensAvail 0 "RCM_IMU_LatAcc_Stat_SensAvail_InSpec" 1 "RCM_IMU_LatAcc_Stat_SensAvail_NotInSpec"; -VAL_ 304 RCM_IMU_LatAcc_Stat_Fail 0 "RCM_IMU_LatAcc_Stat_Fail_NotFailed" 1 "RCM_IMU_LatAcc_Stat_Fail_Failed"; -VAL_ 304 RCM_IMU_LatAcc_Stat_Init 0 "RCM_IMU_LatAcc_Stat_Init_Finished" 1 "RCM_IMU_LatAcc_Stat_Init_Running"; -VAL_ 304 RCM_IMU_LatAcc_Stat_Startup 0 "RCM_IMU_LatAcc_Stat_Startup_Finished" 1 "RCM_IMU_LatAcc_Stat_Startup_Running"; -VAL_ 304 RCM_IMU_Yaw_Stat_SensAvail 0 "RCM_IMU_Yaw_Stat_SensAvail_InSpec" 1 "RCM_IMU_Yaw_Stat_SensAvail_NotInSpec"; -VAL_ 304 RCM_IMU_Yaw_Stat_Fail 0 "RCM_IMU_Yaw_Stat_Fail_NotFailed" 1 "RCM_IMU_Yaw_Stat_Fail_Failed"; -VAL_ 304 RCM_IMU_Yaw_Stat_Init 0 "RCM_IMU_Yaw_Stat_Init_Finish" 1 "RCM_IMU_Yaw_Stat_Init_Running"; -VAL_ 304 RCM_IMU_Yaw_Stat_Startup 0 "RCM_IMU_Yaw_Stat_Startup_Finished" 1 "RCM_IMU_Yaw_Stat_Startup_Running"; -VAL_ 309 RCM_IMU_Roll_Stat_SensAvail 0 "RCM_IMU_Roll_Stat_SensAvail_InSpec" 1 "RCM_IMU_Roll_Stat_SensAvail_NotInSpec"; -VAL_ 309 RCM_IMU_Roll_Stat_Fail 0 "RCM_IMU_Roll_Stat_Fail_NotFailed" 1 "RCM_IMU_Roll_Stat_Fail_Failed"; -VAL_ 309 RCM_IMU_Roll_Stat_Init 0 "RCM_IMU_Roll_Stat_Init_Finished" 1 "RCM_IMU_Roll_Stat_Init_Running"; -VAL_ 309 RCM_IMU_Roll_Stat_Startup 0 "RCM_IMU_Roll_Stat_Startup_Finished" 1 "RCM_IMU_Roll_Stat_Startup_Running"; -VAL_ 309 RCM_IMU_Heave_Stat_SensAvail 0 "RCM_IMU_Heave_Stat_SensAvail_InSpec" 1 "RCM_IMU_Heave_Stat_SensAvail_NotInSpec"; -VAL_ 309 RCM_IMU_Heave_Stat_Fail 0 "RCM_IMU_Heave_Stat_Fail_NotFailed" 1 "RCM_IMU_Heave_Stat_Fail_Failed"; -VAL_ 309 RCM_IMU_Heave_Stat_Init 0 "RCM_IMU_Heave_Stat_Init_Finished" 1 "RCM_IMU_Heave_Stat_Init_Running"; -VAL_ 309 RCM_IMU_Heave_Stat_Startup 0 "RCM_IMU_Heave_Stat_Startup_Finished" 1 "RCM_IMU_Heave_Stat_Startup_Running"; -VAL_ 320 RCM_IMU_LongAcc_Stat_SensAvail 0 "RCM_IMU_LongAcc_Stat_SensAvail_InSpec" 1 "RCM_IMU_LongAcc_Stat_SensAvail_NotInSpec"; -VAL_ 320 RCM_IMU_LongAcc_Stat_Fail 0 "RCM_IMU_LongAcc_Stat_Fail_NotFailed" 1 "RCM_IMU_LongAcc_Stat_Fail_Failed"; -VAL_ 320 RCM_IMU_LongAcc_Stat_Init 0 "RCM_IMU_LongAcc_Stat_Init_Finished" 1 "RCM_IMU_LongAcc_Stat_Init_Running"; -VAL_ 320 RCM_IMU_LongAcc_Stat_Startup 0 "RCM_IMU_LongAcc_Stat_Startup_Finished" 1 "RCM_IMU_LongAcc_Stat_Startup_Running"; -VAL_ 336 VDM_PropsnActv 0 "VDM_PropsnActv_Not_Defined" 1 "VDM_PropsnActv_Active" 2 "VDM_PropsnActv_Inactive"; -VAL_ 336 VDM_VehicleSpeedQ 0 "VDM_VehSpdQ_Inactive" 1 "VDM_VehSpdQ_Active"; -VAL_ 336 VDM_Prndl_Status 0 "VDM_Prndl_Status_Not_Defined" 1 "VDM_Prndl_Status_Park" 2 "VDM_Prndl_Status_Reverse" 3 "VDM_Prndl_Status_Neutral" 4 "VDM_Prndl_Status_Drive"; -VAL_ 336 VDM_Prndl_Request 0 "VDM_Prndl_Request_No_Req" 1 "VDM_Prndl_Request_Park" 2 "VDM_Prndl_Request_Reverse" 3 "VDM_Prndl_Request_Neutral" 4 "VDM_Prndl_Request_Drive"; -VAL_ 338 VDM_LfcRequestType 0 "LFC_Request_Type_No_Request" 1 "LFC_Request_Type_Brake_Torque_Request_Fx" 2 "LFC_Request_Type_Standstill_Hold_Request_Ssm" 3 "LFC_Request_Type_Release_Ssm"; -VAL_ 338 VDM_LfcActiveRequest 0 "VDM_LfcActiveRequest_Inactive" 1 "VDM_LfcActiveRequest_Active"; -VAL_ 338 VDM_StcFault 0 "Stc_NoFault" 1 "Stc_Fault"; -VAL_ 338 VDM_StcActiveRequest 0 "Stc_NotActive" 1 "Stc_Active"; -VAL_ 338 VDM_EpbRequest 0 "VDM_EpbRequest_No_Request" 1 "VDM_EpbRequest_Release_Req" 2 "VDM_EpbRequest_Apply_Req" 3 "VDM_EpbRequest_Sna"; -VAL_ 338 VDM_ABSOffRoadModeRequest 0 "VDM_ABSOffRoadModeRequest_Inactive" 1 "VDM_ABSOffRoadModeRequest_Active"; -VAL_ 338 VDM_HhcActiveRequest 0 "VDM_HhcActiveRequest_Inactive" 1 "VDM_HhcActiveRequest_Active"; -VAL_ 338 VDM_EspPartialModeRequest 0 "VDM_EspPartialModeRequest_Normal" 1 "VDM_EspPartialModeRequest_Sport" 2 "VDM_EspPartialModeRequest_Esc_Off" 3 "VDM_EspPartialModeRequest_Reserved"; -VAL_ 338 VDM_SteeringModeRequest 0 "VDM_SteeringModeRequest_Default" 1 "VDM_SteeringModeRequest_Normal" 2 "VDM_SteeringModeRequest_Sport" 3 "VDM_SteeringModeRequest_Comfort"; -VAL_ 338 VDM_EpasPowerMode 0 "VDM_EpasPowerMode_Drive_Off" 1 "VDM_EpasPowerMode_Drive_On" 2 "VDM_EpasPowerMode_Shutdown"; -VAL_ 352 ACM_VehicleHoldRequired 0 "ACM_VEHICLEHOLDREQ_NO_REQUEST" 1 "ACM_VEHICLEHOLDREQ_VEHICLE_HOLD_REQUEST"; -VAL_ 352 ACM_PrndRequired 0 "ACM_PRNDREQ_PARK" 1 "ACM_PRNDREQ_REVERSE" 2 "ACM_PRNDREQ_NEUTRAL" 3 "ACM_PRNDREQ_DRIVE" 4 "ACM_PRNDREQ_NOT_USED"; -VAL_ 352 ACM_longInterfaceEnable 0 "ACM_LONGIFEN_INIT" 1 "ACM_LONGIFEN_LONGITUDINAL_INTERFACE_ENABLE" 2 "ACM_LONGIFEN_LONGITUDINAL_INTERFACE_DISABLE" 3 "ACM_LONGIFEN_SNA"; -VAL_ 352 ACM_AccelerationRequestType 0 "ACM_ACCELREQTYPE_INIT" 1 "ACM_ACCELREQTYPE_ACCEL_NEGATIVE" 2 "ACM_ACCELREQTYPE_ACCEL_POSITIVE" 3 "ACM_ACCELREQTYPE_SNA"; -VAL_ 354 VDM_AdasDriverAccelPriorityStatus 0 "VDM_AdasDriverAccelPriorityStatus_Driver" 1 "VDM_AdasDriverAccelPriorityStatus_Adas"; -VAL_ 354 VDM_AdasFaultStatus 0 "VDM_AdasFlaultStatus_No_Fault" 1 "VDM_AdasFaultStatus_Brk_Intv" 2 "VDM_AdasFlaultStatus_Cntr_Fault" 3 "VDM_AdasFlaultStatus_Imps_Cmd" 15 "VDM_AdasFlaultStatus_Sna"; -VAL_ 354 VDM_AdasDriverModeStatus 0 "VDM_AdasDriverModeStatus_Human" 1 "VDM_AdasDriverModeStatus_Adas" 2 "VDM_AdasDriverModeStatus_Reserved" 3 "VDM_AdasDriverModeStatus_Sna"; -VAL_ 354 VDM_AdasInterfaceStatus 0 "VDM_AdasInterfaceStatus_Unavailable" 1 "VDM_AdasInterfaceStatus_Available" 2 "VDM_AdasInterfaceStatus_Enabled" 3 "VDM_AdasInterfaceStatus_Faulted"; -VAL_ 354 VDM_AdasAccelRequestAcknowledged 0 "VDM_AdasAccelRequestAcknowledged_Not_Acknowledged" 1 "VDM_AdasAccelRequestAcknowledged_Acknowledged" 2 "VDM_AdasAccelRequestAcknowledged_Fault_Ignored" 3 "VDM_AdasAccelRequestAcknowledged_Sna"; -VAL_ 354 VDM_AdasVehicleHoldStatus 0 "VDM_AdasVehicleHoldStatus_NotHold" 1 "VDM_AdasVehicleHoldStatus_Hold"; -VAL_ 357 VDM_AdasStalkGapAdjust 0 "VDM_AdasStalkGapAdjust_No_Required" 1 "VDM_AdasStalkGapAdjust_GapDecrement" 2 "VDM_AdasStalkGapAdjust_GapIncrement"; -VAL_ 357 VDM_AdasStalkAccCancelRes 0 "VDM_AdasStalkAccCancelRes_NoRequired" 1 "VDM_AdasStalkAccCancelRes_Cancel" 2 "VDM_AdasStalkAccCancelRes_Resume"; -VAL_ 357 VDM_AdasStalkAutonomyButton 0 "VDM_AdasStalkAutonomyButton_No_Required" 1 "VDM_AdasStalkAutonomyButton_Pressed"; -VAL_ 357 VDM_AdasStalkAccEnableAdj 0 "VDM_AdasStalkAccEnableAdj_No_Required" 1 "VDM_AdasStalkAccEnableAdj_UpDetent1" 2 "VDM_AdasStalkAccEnableAdj_UpDetent2" 3 "VDM_AdasStalkAccEnableAdj_DownDetent1" 4 "VDM_AdasStalkAccEnableAdj_DownDetent2"; -VAL_ 384 CGM_TrailerPresent 0 "CGM_TrailerPresent_Trailer_Not_Present" 1 "CGM_TrailerPresent_Trailer_Present" 3 "CGM_TrailerPresent_Invalid"; -VAL_ 384 CGM_DriverPresent 0 "CGM_DriverPresent_Driver_Not_Present" 1 "CGM_DriverPresent_Driver_Present" 3 "CGM_DriverPresent_Invalid"; -VAL_ 384 CGM_IgnSwtState 0 "IGNSWTSTATE_OFF" 1 "IGNSWTSTATE_STANDBY" 2 "IGNSWTSTATE_ACCESSORY" 3 "IGNSWTSTATE_RUN" 4 "IGNSWTSTATE_CRANK"; -VAL_ 432 ESP_Torque_Front_MinQ 0 "ESP_TorqueFront_MinQ_Invalid" 1 "ESP_TorqueFront_MinQ_Valid"; -VAL_ 432 ESP_Torque_Front_MaxQ 0 "ESP_TorqueFront_MaxQ_Invalid" 1 "ESP_TorqueFront_MaxQ_Valid"; -VAL_ 448 ESP_Torque_Rear_MinQ 0 "ESP_TorqueLimitRear_MinQ_Invalid" 1 "ESP_TorqueLimitRear_MinQ_Valid"; -VAL_ 448 ESP_Torque_Rear_MaxQ 0 "ESP_TorqueLimitRear_MaxQ_Invalid" 1 "ESP_TorqueLimitRear_MaxQ_Valid"; -VAL_ 516 RCM_ALR_Status_Signal 0 "ALR_Unknown" 1 "ALR_Not_Engaged" 2 "ALR_Engaged" 3 "ALR_Invalid"; -VAL_ 520 ESP_BrakeLightActive_Q 0 "ESP_BRAKELIGHTACTIVE_Q_INVALID" 1 "ESP_BRAKELIGHTACTIVE_Q_VALID"; -VAL_ 520 ESP_BrakeLightActive 0 "ESP_BRAKELIGHTACTIVE_INACTIVE" 1 "ESP_BRAKELIGHTACTIVE_ACTIVE"; -VAL_ 520 ESP_Hhc_Active 0 "ESP_HHCACTV_INACTIVE" 1 "ESP_HHCACTV_ACTIVE"; -VAL_ 520 ESP_Hhc_Available 0 "ESP_HHCAVL_NOT_INITIALIZED" 1 "ESP_HHCAVL_ACTIVE"; -VAL_ 520 ESP_Abs_OffRoad_Mode 0 "ABS_OFFROAD_NORMAL" 1 "ABS_OFFROAD_OFFROAD"; -VAL_ 520 ESP_Tsm_Active 0 "TSM_ACTIVE_INACTIVE" 1 "TSM_ACTIVE_ACTIVE"; -VAL_ 520 ESP_FaultLamp_EBD 0 "ESP_FAULTLAMP_EBD_OFF" 1 "ESP_FAULTLAMP_EBD_ON"; -VAL_ 520 ESP_FaultLamp_VDC 0 "ESP_FAULTLAMP_VDC_OFF" 1 "ESP_FAULTLAMP_VDC_ON"; -VAL_ 520 ESP_FaultLamp_ABS 0 "ESP_FAULTLAMP_ABS_OFF" 1 "ESP_FAULTLAMP_ABS_ON"; -VAL_ 520 ESP_Esp_Active 0 "ESP_ACTIVE_INACTIVE" 1 "ESP_ACTIVE_ACTIVE"; -VAL_ 520 ESP_Abs_Active 0 "ABS_ACTIVE_INACTIVE" 1 "ABS_ACTIVE_ACTIVE"; -VAL_ 520 ESP_Partial_Mode 0 "ESP_PATA_MODE_NORMAL" 1 "ESP_PATA_MODE_SPORT" 2 "ESP_PATA_MODE_ESC_OFF" 3 "ESP_PATA_MODE_RESERVED"; -VAL_ 520 ESP_Vehicle_Speed_Q 0 "ESP_VEHICLE_SPEED_Q_NOT_INITIALIZED" 1 "ESP_VEHICLE_SPEED_Q_NORMAL" 2 "ESP_VEHICLE_SPEED_Q_FAULT"; -VAL_ 520 ESP_Lfc_Available 0 "LFC_AVAILABLE_NOT_AVAILABLE" 1 "LFC_AVAILABLE_AVAILABLE"; -VAL_ 520 ESP_Hba_Active 0 "ESP_HBAACTV_INACTIVE" 1 "ESP_HBAACTV_ACTIVE"; -VAL_ 520 ESP_Lfc_Active 0 "LFC_ACTIVE_INACTIVE" 1 "LFC_ACTIVE_ACTIVE"; -VAL_ 521 ESP_Wheel_Speed_Left_Front_Q 0 "ESP_WHEEL_SPEED_LEFT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_LEFT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_SPEED_LEFT_FRONT_Q_FAULT"; -VAL_ 521 ESP_Wheel_Speed_Right_Front_Q 0 "ESP_WHEEL_SPEED_RIGHT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_RIGHT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_SPEED_RIGHT_FRONT_Q_FAULT"; -VAL_ 521 ESP_Wheel_Dir_Right_Front 0 "ESP_WHEEL_DIR_RIGHT_FRONT_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_RIGHT_FRONT_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_RIGHT_FRONT_STANDSTILL" 3 "ESP_WHEEL_DIR_RIGHT_FRONT_NOTDEFINABLE"; -VAL_ 521 ESP_Wheel_Dir_Left_Front 0 "ESP_WHEEL_DIR_LEFT_FRONT_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_LEFT_FRONT_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_LEFT_FRONT_STANDSTILL" 3 "ESP_WHEEL_DIR_LEFT_FRONT_NOTDEFINABLE"; -VAL_ 522 ESP_Wheel_Speed_Left_Rear_Q 0 "ESP_WHEEL_SPEED_LEFT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_LEFT_REAR_Q_NORMAL" 2 "ESP_WHEEL_SPEED_LEFT_REAR_Q_FAULT"; -VAL_ 522 ESP_Wheel_Speed_Right_Rear_Q 0 "ESP_WHEEL_SPEED_RIGHT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_RIGHT_REAR_Q_NORMAL" 2 "ESP_WHEEL_SPEED_RIGHT_REAR_Q_FAULT"; -VAL_ 522 ESP_Wheel_Dir_Right_Rear 0 "ESP_WHEEL_DIR_RIGHT_REAR_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_RIGHT_REAR_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_RIGHT_REAR_STANDSTILL" 3 "ESP_WHEEL_DIR_RIGHT_REAR_NOTDEFINABLE"; -VAL_ 522 ESP_Wheel_Dir_Left_Rear 0 "ESP_WHEEL_DIR_LEFT_REAR_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_LEFT_REAR_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_LEFT_REAR_STANDSTILL" 3 "ESP_WHEEL_DIR_LEFT_REAR_NOTDEFINABLE"; -VAL_ 523 ESP_Wheel_Pulse_Right_Front_Q 0 "ESP_WHEEL_PULSE_RIGHT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_RIGHT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_PULSE_RIGHT_FRONT_Q_FAULT"; -VAL_ 523 ESP_Wheel_Pulse_Right_Rear_Q 0 "ESP_WHEEL_PULSE_RIGHT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_RIGHT_REAR_Q_NORMAL" 2 "ESP_WHEEL_PULSE_RIGHT_REAR_Q_FAULT"; -VAL_ 523 ESP_Wheel_Pulse_Left_Rear_Q 0 "ESP_WHEEL_PULSE_LEFT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_LEFT_REAR_Q_NORMAL" 2 "ESP_WHEEL_PULSE_LEFT_REAR_Q_FAULT"; -VAL_ 523 ESP_Wheel_Pulse_Left_Front_Q 0 "ESP_WHEEL_PULSE_LEFT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_LEFT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_PULSE_LEFT_FRONT_Q_FAULT"; -VAL_ 524 ESP_BrakePressure_RF_Q 0 "ESP_BRAKEPRESSURE_RF_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_RF_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_RF_Q_FAULT"; -VAL_ 524 ESP_BrakePressure_LF_Q 0 "ESP_BRAKEPRESSURE_LF_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_LF_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_LF_Q_FAULT"; -VAL_ 524 ESP_MasterCyl_Pressure_Q 0 "ESP_MASTERCYL_PRESSURE_Q_NOT_INITIALIZED" 1 "ESP_MASTERCYL_PRESSURE_Q_NORMAL" 2 "ESP_MASTERCYL_PRESSURE_Q_FAULT"; -VAL_ 524 ESP_BrakePressure_RR_Q 0 "ESP_BRAKEPRESSURE_RR_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_RR_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_RR_Q_FAULT"; -VAL_ 524 ESP_BrakePressure_LR_Q 0 "ESP_BRAKEPRESSURE_LR_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_LR_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_LR_Q_FAULT"; -VAL_ 529 VDM_Torque_Front_MaxQ 0 "VDM_Torque_Front_MaxQ_Invalid" 1 "VDM_Torque_Front_MaxQ_Valid"; -VAL_ 529 VDM_OutputTorqueFrontQ 0 "VDM_OutputTorqueFrontQ_Invalid" 1 "VDM_OutputTorqueFrontQ_Valid"; -VAL_ 529 VDM_Torque_Front_MinQ 0 "VDM_Torque_Front_MinQ_Invalid" 1 "VDM_Torque_FrontinQ_Valid"; -VAL_ 530 VDM_Torque_Rear_MaxQ 0 "VDM_Torque_Rear_MaxQ_Invalid" 1 "VDM_Torque_Rear_MaxQ_Valid"; -VAL_ 530 VDM_OutputTorqueRearQ 0 "VDM_OutputTorqueRearQ_Invalid" 1 "VDM_OutputTorqueRearQ_Valid"; -VAL_ 530 VDM_Torque_Rear_MinQ 0 "VDM_Torque_Rear_MinQ_Invalid" 1 "VDM_Torque_Rear_MinQ_Valid"; -VAL_ 565 RearDriverDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; -VAL_ 565 FrontPassengerDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; -VAL_ 565 DriverDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; -VAL_ 565 RearPassengerDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; -VAL_ 811 ESP_EpbAvailable 0 "ESP_EpbAvailable_Not_Available" 1 "ESP_EpbAvailable_Available"; -VAL_ 811 ESP_EpbServiceMode 0 "ESP_EpbServiceMode_Not_Active" 1 "ESP_EpbServiceMode_Active"; -VAL_ 811 ESP_EpbWarningLamp 0 "ESP_EpbWarningLamp_Off" 1 "ESP_EpbWarningLamp_Continous" 2 "ESP_EpbWarningLamp_Blink" 3 "ESP_EpbWarningLamp_Sna"; -VAL_ 811 ESP_EpbStatus 0 "ESP_EpbStatus_Released" 1 "ESP_EpbStatus_Applied" 2 "ESP_EpbStatus_Releasing" 3 "ESP_EpbStatus_Applying" 4 "ESP_EpbStatus_Dynamic_Control" 5 "ESP_EpbStatus_Unknown" 7 "ESP_EpbStatus_Sna"; -VAL_ 811 ESP_EpbFunctionLamp 0 "ESP_EpbFunction_Lamp_Off" 1 "ESP_EpbFunctionLamp_Continous" 2 "ESP_EpbFunctionLamp_Blink" 3 "ESP_EpbFunctionLamp_Sna"; -VAL_ 826 RCM_Status_DETECT_CRUSH 0 "DETECT_CRUSH_Normal_Condition" 1 "DETECT_CRUSH_Collision_Detection"; -VAL_ 826 RCM_Status_IND_WARN_RCM 0 "IND_WARN_RCM_Off" 1 "IND_WARN_RCM_Lighting"; -VAL_ 826 RCM_Status_IND_ACT_RCM_PASS 0 "IWBP_On_Ind_onOFF_Ind_on" 1 "IWBP_On_Ind_offOFF_Ind_on" 2 "IWBP_On_Ind_onOFF_Ind_off" 3 "IWBP_On_Ind_offOFF_Ind_off"; -VAL_ 826 RCM_Status_IND_WARN_BELT_DRIVER 0 "IWBP_Equipped" 1 "IWBP_Not_Equipped" 2 "IWBP_Undetermined" 3 "IWBP_SW_Failure"; -VAL_ 826 RCM_Status_IND_WARN_BELT_PASS 0 "IWBP_Equipped" 1 "IWBP_Not_Equipped" 2 "IWBP_Undetermined" 3 "IWBP_SW_Failure"; -VAL_ 848 EPAS_Ecu1EacSts 0 "EPAS_Ecu1EacSts_Eac_Inhibited" 1 "EPAS_Ecu1EacSts_Eac_Available" 2 "EPAS_Ecu1EacSts_Eac_Active" 3 "EPAS_Ecu1EacSts_Eac_Fault" 7 "EPAS_Ecu1EacSts_Sna"; -VAL_ 848 EPAS_Ecu1PowerMode 0 "EPASP_powerMode_Drive_Off" 1 "EPASP_powerMode_Drive_On" 2 "EPASP_powerMode_Shutdown" 3 "EPASP_powerMode_Sna"; -VAL_ 848 EPAS_Ecu1Role 0 "EPASP_ROLE_MASTER" 1 "EPASP_ROLE_SLAVE" 2 "EPASP_ROLE_RESERVED"; -VAL_ 848 EPAS_Ecu1State 0 "EPAS_Ecu1State_Initialisation_Arbitration" 1 "EPAS_Ecu1State_Reserved" 2 "EPAS_Ecu1State_Reserved1" 3 "EPAS_Ecu1State_Initialisation_Complete" 4 "EPAS_Ecu1State_Passive" 5 "EPAS_Ecu1State_Passive_Faulted" 6 "EPAS_Ecu1State_Assist_Active" 7 "EPAS_Ecu1State_Assist_Standby" 8 "EPAS_Ecu1State_Eac_Active" 9 "EPAS_Ecu1State_Eac_Standby" 15 "EPAS_Ecu1State_Invalid"; -VAL_ 864 EPAS_Ecu2EacSts 0 "EPAS_Ecu2EacSts_Eac_Inhibited" 1 "EPAS_Ecu2EacSts_Eac_Available" 2 "EPAS_Ecu2EacSts_Eac_Active" 3 "EPAS_Ecu2EacSts_Eac_Fault" 7 "EPAS_Ecu2EacSts_Sna"; -VAL_ 864 EPAS_Ecu2PowerMode 0 "EPASS_powerMode_Drive_Off" 1 "EPASS_powerMode_Drive_On" 2 "EPASS_powerMode_Shutdown" 3 "EPASS_powerMode_Sna"; -VAL_ 864 EPASS_Ecu2Role 0 "EPASS_Ecu2Role_Master" 1 "EPASS_Ecu2Role_Slave" 2 "EPASS_Ecu2Role_Reserved"; -VAL_ 864 EPASS_Ecu2State 0 "EPASS_Ecu2State_Initialisation_Arbitration" 1 "EPASS_Ecu2State_Reserved" 2 "EPASS_Ecu2State_Reserved1" 3 "EPASS_Ecu2State_Initialisation_Complete" 4 "EPASS_Ecu2State_Passive" 5 "EPASS_Ecu2State_Passive_Faulted" 6 "EPASS_Ecu2State_Assist_Active" 7 "EPASS_Ecu2State_Assist_Standby" 8 "EPASS_Ecu2State_Eac_Active" 9 "EPASS_Ecu2State_Eac_Standby" 15 "EPASS_Ecu2State_Invalid"; -VAL_ 880 ACM_tsrConInfoStaCon2 0 "ACM_TSRCONINFOSTACON2_NONE_DEFAULT" 1 "ACM_TSRCONINFOSTACON2_RAIN" 2 "ACM_TSRCONINFOSTACON2_SNOW" 3 "ACM_TSRCONINFOSTACON2_SNOW_RAIN" 4 "ACM_TSRCONINFOSTACON2_TARILER" 5 "ACM_TSRCONINFOSTACON2_DISTANCE" 6 "ACM_TSRCONINFOSTACON2_TIME" 7 "ACM_TSRCONINFOSTACON2_FOG" 8 "ACM_TSRCONINFOSTACON2_RESERVED_8" 9 "ACM_TSRCONINFOSTACON2_RESERVED_9" 10 "ACM_TSRCONINFOSTACON2_RESERVED_10" 11 "ACM_TSRCONINFOSTACON2_RESERVED_11" 12 "ACM_TSRCONINFOSTACON2_RESERVED_12" 14 "ACM_TSRCONINFOSTACON2_GENERIC" 15 "ACM_TSRCONINFOSTACON2_RESERVED_15"; -VAL_ 880 ACM_tsrConInfoStaCon1 0 "ACM_TSRCONINFOSTACON1_NONE_DEFAULT" 1 "ACM_TSRCONINFOSTACON1_RAIN" 2 "ACM_TSRCONINFOSTACON1_SNOW" 3 "ACM_TSRCONINFOSTACON1_SNOW_RAIN" 4 "ACM_TSRCONINFOSTACON1_TARILER" 5 "ACM_TSRCONINFOSTACON1_DISTANCE" 6 "ACM_TSRCONINFOSTACON1_TIME" 7 "ACM_TSRCONINFOSTACON1_FOG" 8 "ACM_TSRCONINFOSTACON1_RESERVED_8" 9 "ACM_TSRCONINFOSTACON1_RESERVED_9" 10 "ACM_TSRCONINFOSTACON1_RESERVED_10" 11 "ACM_TSRCONINFOSTACON1_RESERVED_11" 12 "ACM_TSRCONINFOSTACON1_RESERVED_12" 14 "ACM_TSRCONINFOSTACON1_GENERIC" 15 "ACM_TSRCONINFOSTACON1_RESERVED_15"; -VAL_ 880 ACM_tsrSpdDisClsMain 0 "TSR_Speed_No_Recognition_Default" 253 "TSR_Speed_Unlimited_Speed" 254 "TSR_Speed_Reserved" 255 "TSR_Speed_Invalid"; -VAL_ 880 ACM_tsrSpdDisCluCon1 0 "ACM_TSRSPDDISCLUCON1_NO_RECOGNITION_DEFAULT" 1 "ACM_TSRSPDDISCLUCON1_A1_252_PH_1XHEX_KPHORMPH" 253 "ACM_TSRSPDDISCLUCON1_LHD_CONDITIONAL_NO_PASSING_ZONE" 254 "ACM_TSRSPDDISCLUCON1_RHD_CONDITIONAL_NO_PASSING_ZONE" 255 "ACM_TSRSPDDISCLUCON1_INVALID"; -VAL_ 880 ACM_tsrSpdDisCluCon2 0 "ACM_TSRSPDDISCLUCON2_NO_RECOGNITION_DEFAULT" 1 "ACM_TSRSPDDISCLUCON2_A1_252_PH_1XHEX_KPHORMPH" 253 "ACM_TSRSPDDISCLUCON2_LHD_CONDITIONAL_NO_PASSING_ZONE" 254 "ACM_TSRSPDDISCLUCON2_RHD_CONDITIONAL_NO_PASSING_ZONE" 255 "ACM_TSRSPDDISCLUCON2_INVALID"; -VAL_ 880 ACM_tsrSpdDisCluConM 0 "ACM_TSRSPDDISCLUCONM_NO_RECOGNITION_DEFAULT" 253 "ACM_TSRSPDDISCLUCONM_UNLIMITED_SPEED" 254 "ACM_TSRSPDDISCLUCONM_RESERVED" 255 "ACM_TSRSPDDISCLUCONM_INVALID"; -VAL_ 880 ACM_tsrAddInfoDisplay 0 "ACM_TSRADDINFODISPLAY_NONE_DISPLAY_DEFAULT" 1 "ACM_TSRADDINFODISPLAY_LHD_NO_PASSING_ZONE_DISPLAY" 2 "ACM_TSRADDINFODISPLAY_RHD_NO_PASSING_ZONE_DISPLAY" 3 "ACM_TSRADDINFODISPLAY_INVALID"; -VAL_ 880 ACM_tsrOvrlapSignDis 0 "ACM_TSROVRLAPSIGNDIS_NONE_DEFAULT" 1 "ACM_TSROVRLAPSIGNDIS_OVERLAP_SIGN" 2 "ACM_TSROVRLAPSIGNDIS_RESERVED"; -VAL_ 880 ACM_tsrStatus 0 "ACM_TSRSTATUS_TSR_INFORMATION_VALID_DEFAULT" 1 "ACM_TSRSTATUS_TSR_INFORMATION_INVALID_FAILURE" 2 "ACM_TSRSTATUS_TSR_INFORMATION_TEMPORARY_UNAVAILABLE"; -VAL_ 896 EPAS_SteeringReduced 0 "EPAS_EPAS_SteeringReduced_Normal_Assist" 1 "EPAS_EPAS_SteeringReduced_Reduced_Assist"; -VAL_ 896 EPAS_SteeringFault 0 "EPAS_SteeringFault_No_Fault" 1 "EPAS_SteeringFault_Fault"; -VAL_ 896 EPAS_SteeringMode 0 "EPASP_SteeringMode_Default" 1 "EPASP_SteeringMode_Normal" 2 "EPASP_SteeringMode_Sport" 3 "EPASP_SteeringMode_Comfort"; -VAL_ 896 EPAS_StcFault 0 "Stc_NoFault" 1 "Stc_Fault"; -VAL_ 896 EPAS_StcActive 0 "Stc_NotActive" 1 "Stc_Active"; -VAL_ 896 EPAS_StcUnavailable 0 "Stc_Available" 1 "Stc_Unavailable"; -VAL_ 896 H_CAN_EPSS_ToiFlt 0 "H_CAN_EPS_ToiFault_No_Fault" 1 "H_CAN_EPS_ToiFault_Fault"; -VAL_ 896 H_CAN_EPSS_ToiActive 0 "H_CAN_EPS_ToiActive_Deactivated" 1 "H_CAN_EPS_ToiActive_Activated"; -VAL_ 896 H_CAN_EPS_ToiUnavailable 0 "H_CAN_EPS_ToiUnavailable_Available" 1 "H_CAN_EPS_ToiUnavailable_Unavailable"; -VAL_ 896 EPAS_HandsOnLevel 0 "EPAS_HandsOnLevel_Level_0" 1 "EPAS_HandsOnLevel_Level_1" 2 "EPAS_HandsOnLevel_Level_2" 3 "EPAS_HandsOnLevel_Level_3"; -VAL_ 907 ESPiB1_IgnitionOn 0 "ESPIB1_IgnitionOn_Not_Initilized" 1 "ESPIB1_IgnitionOn_Normal"; -VAL_ 907 ESPiB1_VehicleSpeed_Q 0 "ESPiB1_VehicleSpeed_Q_VehicleSpeedQualifier_NotInit" 1 "ESPiB1_VehicleSpeed_Q_VehicleSpeedQualifier_Normal" 2 "ESPiB1_VehicleSpeed_Q_VehicleSpeedQualifier_Faulty"; -VAL_ 908 ESPiB2_qTargetExternal_Q 0 "ESPiB2_qTargetExternal_Q_QTarget_Off" 1 "ESPiB2_qTargetExternal_Q_QTarget_EBR" 2 "ESPiB2_qTargetExternal_Q_QTarget_EBRmaxPerformance"; -VAL_ 909 ESPiB3_ABSActive 0 "ESPIB3_ABSACTIVE_ABS_IS_INACTIVE" 1 "ESPIB3_ABSACTIVE_ABS_IS_ACTIVE"; -VAL_ 909 ESPiB3_ForceBlendingActive 0 "ESPIB3_FORCEBLENDINGACTIVE_PFC_INACTIVE" 1 "ESPIB3_FORCEBLENDINGACTIVE_PFC_HOLD" 2 "ESPIB3_FORCEBLENDINGACTIVE_PFC_ACTIVE"; -VAL_ 909 ESPiB3_pMcVirtual_Q 0 "ESPIB3_PMCVIRTUAL_Q_PMCVIRTUAL_NOTINITIALIZED" 1 "ESPIB3_PMCVIRTUAL_Q_PMCVIRTUAL_NORMAL" 2 "ESPIB3_PMCVIRTUAL_Q_PMCVIRTUAL_FAULTY"; -VAL_ 909 ESPiB3_pForceBlendingMC_Q 0 "ESPIB3_PFORCEBLENDINGMC_Q_PFORCEBLENDINGMC_NOTINITIALIZED" 1 "ESPIB3_PFORCEBLENDINGMC_Q_PFORCEBLENDINGMC_NORMAL" 2 "ESPIB3_PFORCEBLENDINGMC_Q_PFORCEBLENDINGMC_FAULTY"; -VAL_ 909 ESPiB3_pMC1_Q 0 "ESPIB3_PMC1_Q_MCPRESSUREQUALIFIER_NOTINIT" 1 "ESPIB3_PMC1_Q_MCPRESSUREQUALIFIER_NORMAL" 2 "ESPIB3_PMC1_Q_MCPRESSUREQUALIFIER_FAULTY"; -VAL_ 910 iBESP1_ExtReqStatus 0 "iBESP1_ExtReqStatus_NotInitialized" 1 "iBESP1_ExtReqStatus_EBR_NotAvailable" 2 "iBESP1_ExtReqStatus_EBR_Available"; -VAL_ 910 iBESP1_sOutputRodDriver_Q 0 "IBESP1_SOUTPUTRODDRIVER_Q_SOUTPUTRODDRIVER_NOTINITIALIZED" 1 "IBESP1_SOUTPUTRODDRIVER_Q_SOUTPUTRODDRIVER_NORMAL" 2 "IBESP1_SOUTPUTRODDRIVER_Q_SOUTPUTRODDRIVER_FAULTY"; -VAL_ 910 iBESP1_sOutputRodAct_Q 0 "IBESP1_SOUTPUTRODACT_Q_SOUTPUTRODACT_NOTINITIALIZED" 1 "IBESP1_SOUTPUTRODACT_Q_SOUTPUTRODACT_NORMAL" 2 "IBESP1_SOUTPUTRODACT_Q_SOUTPUTRODACT_FAULTY"; -VAL_ 911 iBESP2_pRunout_Q 0 "IBESP2_PRUNOUT_Q_P_RUNOUT_NOT_INITIALIZED" 1 "IBESP2_PRUNOUT_Q_P_RUNOUT_NORMAL" 2 "IBESP2_PRUNOUT_Q_P_RUNOUT_FAULTY"; -VAL_ 911 iBESP2_BrakePedalApplied_Q 0 "IBESP2_BRAKEPEDALAPPLIED_Q_BRAKE_PEDAL_APPLIED_NO_INIT_OR_OFF" 1 "IBESP2_BRAKEPEDALAPPLIED_Q_BRAKE_PEDAL_APPLIED_NORMAL" 2 "IBESP2_BRAKEPEDALAPPLIED_Q_BRAKE_PEDAL_APPLIED_FAULTY"; -VAL_ 911 iBESP2_BrakePedalApplied 0 "iBESP2_BrakePedalApplied_NotApplied" 1 "iBESP2_BrakePedalApplied_Applied"; -VAL_ 911 iBESP2_RprMode 0 "IBESP2_RPRMODE_RPR_PASSIVE" 1 "IBESP2_RPRMODE_RPR_PRELOAD" 2 "IBESP2_RPRMODE_RPR_HOLD" 3 "IBESP2_RPRMODE_RPR_SUCTION" 4 "IBESP2_RPRMODE_RPR_HOLDLOWPRESSURE" 5 "IBESP2_RPRMODE_RPR_ABORT"; -VAL_ 912 EPAS_EacStatus 0 "EPAS_EacStatus_Eac_Inhibited" 1 "EPAS_EacStatus_Eac_Available" 2 "EPAS_EacStatus_Eac_Active" 3 "EPAS_EacStatus_Eac_Standby" 4 "EPAS_EacStatus_Eac_Fault" 5 "EPAS_EacStatus_Sna"; -VAL_ 912 EPAS_EacErrorCode 0 "EPAS_No_Err" 1 "EPAS_High_Angle_Cmd_Err" 2 "EPAS_High_Actual_Angle_Err" 3 "EPAS_High_Actual_Angle_Rate_Err" 4 "EPAS_Feature_Fault_Err" 5 "EPAS_Feature_Status_Invalid_Err" 6 "EPAS_Feature_Angle_Thd_Err" 7 "EPAS_Angle_Control_Cntr_Err" 8 "EPAS_Angle_Control_Mia_Err" 9 "EPAS_Angle_Control_Crc_Err" 10 "EPAS_Vehspd_Corrln_Failr_Err" 11 "EPAS_Vehspd_Max_Thd_Err" 12 "EPAS_Hands_On_Detn_Err" 13 "EPAS_Ext_Angle_Plausibility_Err" 14 "EPAS_High_Delta_Angle_Err" 15 "EPAS_Max_Steady_State_Err"; -VAL_ 912 EPAS_InternalSasQ 0 "EPAS_INTERNALSASQF_VALID" 1 "EPAS_INTERNALSASQF_INVALID"; -VAL_ 929 VDM_AchDriveModeRequestConfirm 0 "VDM_AchDriveModeRequestConfirm_NoRequest" 1 "VDM_AchDriveModeRequestConfirm_Request"; -VAL_ 929 VDM_AchDriveModeRequestPullRearw 0 "VDM_AchDriveModeRequestPullRearward_NoRequired" 1 "VDM_AchDriveModeRequestPullRearward_Required"; -VAL_ 929 VDM_AchDriveModeRequestPushDown 0 "VDM_AchDriveModeRequestPushDown_NoRequired" 1 "VDM_AchDriveModeRequestPushDown_Required"; -VAL_ 929 VDM_AchDriveModeRequestPushForwa 0 "VDM_AchDriveModeRequestPushForward_NoRequired" 1 "VDM_AchDriveModeRequestPushForward_Required"; -VAL_ 929 VDM_AchDriveModeRequestPushUp 0 "VDM_AchDriveModeRequestPushUp_NoRequired" 1 "VDM_AchDriveModeRequestPushUp_Required"; -VAL_ 929 VDM_AchDriveModeRequestRest 0 "VDM_AchDriveModeRequestRest_NoRequired" 1 "VDM_AchDriveModeRequestRest_Required"; -VAL_ 929 VDM_AchDriveMode4x4 0 "VDM_AchDriveMode4x4_A4x4Auto" 1 "VDM_AchDriveMode4x4_P4x4Permenant" 6 "VDM_AchDriveMode4x4_I_Transition" 7 "VDM_AchDriveMode4x4_Fault"; -VAL_ 929 VDM_AchDriveMode 0 "VDM_AchDriveMode_Eco" 1 "VDM_AchDriveMode_OnRoadComford" 2 "VDM_AchDriveMode_OnRoadSport" 3 "VDM_AchDriveMode_OffRoad" 4 "VDM_AchDriveMode_OffRoadSport" 5 "VDM_AchDriveMode_Autonomy"; -VAL_ 929 VDM_AchDriveModeAirSuspension 0 "VDM_AchDriveModeAirSuspension_Kneel" 1 "VDM_AchDriveModeAirSuspension_Aero" 2 "VDM_AchDriveModeAirSuspension_Design" 3 "VDM_AchDriveModeAirSuspension_High" 4 "VDM_AchDriveModeAirSuspension_Max" 7 "VDM_AchDriveModeAirSuspension_Null"; -VAL_ 929 VDM_AchDriveModeAbs 0 "VDM_AchDriveModeAbs_OnRoad" 1 "VDM_AchDriveModeAbs_OffRoad" 6 "VDM_AchDriveModeAbs_InTransition" 7 "VDM_AchDriveModeAbs_Fault"; -VAL_ 929 VDM_AchDriveModeDrivability 0 "VDM_AchDriveModeDrivability_Eco" 1 "VDM_AchDriveModeDrivability_Sport" 2 "VDM_AchDriveModeDrivability_OffRoad" 6 "VDM_AchDriveModeDrivability_InTransition" 7 "VDM_AchDriveModeDrivability_Null"; -VAL_ 929 VDM_AchDriveModeDamping 0 "VDM_AchDriveModeDamping_Kneel" 1 "VDM_AchDriveModeDamping_Aero" 2 "VDM_AchDriveModeDamping_Design" 3 "VDM_AchDriveModeDamping_High" 4 "VDM_AchDriveModeDamping_AirSuspensionMax" 6 "VDM_AchDriveModeDamping_InTransition" 7 "VDM_AchDriveModeDamping_Fault"; -VAL_ 929 VDM_AchDriveModeRollControl 0 "VDM_AchDriveModeRollControl_Low" 1 "VDM_AchDriveModeRollControl_Middle" 2 "VDM_AchDriveModeRollControl_High" 6 "VDM_AchDriveModeRollControl_InTransition" 7 "VDM_AchDriveModeRollControl_Null"; -VAL_ 929 VDM_AchDriveModeEsp 0 "VDM_AchDriveModeEsp_EspOn" 1 "VDM_AchDriveModeEsp_EspReduced" 2 "VDM_AchDriveModeEsp_EspOff" 6 "VDM_AchDriveModeEsp_InTransition" 7 "VDM_AchDriveModeEsp_Null"; -VAL_ 929 VDM_AchDriveModeEpas 0 "VDM_AchDriveModeEpas_TcsStable" 1 "VDM_AchDriveModeEpas_TcsSportRoad" 2 "VDM_AchDriveModeEpas_TcsSportOffRoad" 3 "VDM_AchDriveModeEpas_TcsOff" 7 "VDM_AchDriveModeEpas_Null"; -VAL_ 929 VDM_AchDriveModeTcs 0 "VDM_AchDriveModeTcs_Stable" 1 "VDM_AchDriveModeTcs_SportRoad" 2 "VDM_AchDriveModeTcs_SportOffRoad" 3 "VDM_AchDriveModeTcs_Off" 7 "VDM_AchDriveModeTcs_Null"; -VAL_ 1024 VCM_VehicleType 0 "VCM_VehicleType_Sna" 1 "VCM_VehicleType_R1T" 2 "VCM_VehicleType_R1S" 3 "VCM_VehicleType_Reserved_AProj" 4 "VCM_VehicleType_Reserved_BProj" 5 "VCM_VehicleType_Reserved_CProj" 6 "VCM_VehicleType_Reserved_DProj" 7 "VCM_VehicleType_Reserved_EProj"; -VAL_ 1024 VCM_HandOfDrive 0 "VCM_HandOfDrive_Lhd" 1 "VCM_HandOfDrive_Rhd"; -VAL_ 1024 VCM_BatterySize 0 "VCM_BatterySize_Sna" 1 "VCM_BatterySize_A105kW" 2 "VCM_BatterySize_A130kW" 3 "VCM_BatterySize_A180kW" 4 "VCM_BatterySize_BxxxkW" 5 "VCM_BatterySize_CxxxkW" 6 "VCM_BatterySize_DxxxkW" 7 "VCM_BatterySize_ExxxkW"; -VAL_ 1024 VCM_Market 0 "VCM_Market_Sna" 1 "VCM_Market_RegionB" 2 "VCM_Market_RegionC" 3 "VCM_Market_RegionD" 4 "VCM_Market_RegionE" 5 "VCM_Market_RegionF" 6 "VCM_Market_RegionG" 7 "VCM_Market_RegionH"; -VAL_ 1640 OCS_FrontPassClass 0 "OCS_FrontPassClass_Classification_Unknown" 1 "OCS_FrontPassClass_Reserved_1" 2 "OCS_FrontPassClass_One_YO_CRS" 3 "OCS_FrontPassClass_Reserved_2" 4 "OCS_FrontPassClass_Reserved_3" 5 "OCS_FrontPassClass_Reserved_4" 6 "OCS_FrontPassClass_Small_Adult" 7 "OCS_FrontPassClass_Medium_Adult" 8 "OCS_FrontPassClass_Reserved_5" 9 "OCS_FrontPassClass_Reserved_6" 10 "OCS_FrontPassClass_Reserved_7" 11 "OCS_FrontPassClass_Reserved_8" 12 "OCS_FrontPassClass_Reserved_9" 13 "OCS_FrontPassClass_Reserved_10" 14 "OCS_FrontPassClass_Reserved_11" 15 "OCS_FrontPassClass_Reserved_12"; -VAL_ 1640 OCS_FrontPassClassValid 0 "Not_Valid" 1 "Valid"; -VAL_ 1640 OCS_FrontPassFaultStatus 0 "No_Fault_Present" 1 "Fault_Status" 2 "Reserved_1" 3 "Reserved_2"; -VAL_ 1640 OCS_Reserved_1 0 "OCS_Reserved_Reserved"; -VAL_ 1640 OCS_FrontPassSBRStatus 0 "Unknown" 1 "Empty" 2 "Occupied"; -VAL_ 1640 OCS_OperatingMode 0 "OCS_OperatingMode_Initialisation" 1 "OCS_OperatingMode_Normal_Mode" 2 "OCS_OperatingMode_Empty_Seat_Calibration_Active" 3 "OCS_OperatingMode_Barrier_Airbag_Test_Mode" 4 "OCS_OperatingMode_Voltage_Out_Of_Range" 5 "OCS_OperatingMode_Falut_Active" 6 "OCS_OperatingMode_Reserved_1" 7 "OCS_OperatingMode_Reserved_2" 8 "OCS_OperatingMode_Reserved_3" 9 "OCS_OperatingMode_Reserved_4" 10 "OCS_OperatingMode_Reserved_5" 11 "OCS_OperatingMode_Reserved_6" 12 "OCS_OperatingMode_Reserved_7" 13 "OCS_OperatingMode_Reserved_8" 14 "OCS_OperatingMode_Reserved_9" 15 "OCS_OperatingMode_Reserved_10"; -VAL_ 1640 OCS_Reserved_2 0 "OCS_Reserved_2_Reserved"; diff --git a/opendbc_repo/opendbc/dbc/tesla_can.dbc b/opendbc_repo/opendbc/dbc/tesla_can.dbc deleted file mode 100644 index 56624c3e54..0000000000 --- a/opendbc_repo/opendbc/dbc/tesla_can.dbc +++ /dev/null @@ -1,901 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: - NEO - MCU - GTW - EPAS - DI - ESP - SBW - STW - APP - DAS - XXX - -VAL_TABLE_ StW_AnglHP_Spd 16383 "SNA" ; -VAL_TABLE_ DI_aebFaultReason 15 "DI_AEB_FAULT_DAS_REQ_DI_UNAVAIL" 14 "DI_AEB_FAULT_ACCEL_REQ_INVALID" 13 "DI_AEB_FAULT_MIN_TIME_BTWN_EVENTS" 12 "DI_AEB_FAULT_ESP_MIA" 11 "DI_AEB_FAULT_ESP_FAULT" 10 "DI_AEB_FAULT_EPB_NOT_PARKED" 9 "DI_AEB_FAULT_ACCEL_OUT_OF_BOUNDS" 8 "DI_AEB_FAULT_PM_REQUEST" 7 "DI_AEB_FAULT_VEL_EST_ABNORMAL" 6 "DI_AEB_FAULT_DAS_SNA" 5 "DI_AEB_FAULT_DAS_CONTROL_MIA" 4 "DI_AEB_FAULT_SPEED_DELTA" 3 "DI_AEB_FAULT_EBR_FAULT" 2 "DI_AEB_FAULT_PM_MIA" 1 "DI_AEB_FAULT_EPB_MIA" 0 "DI_AEB_FAULT_NONE" ; -VAL_TABLE_ DI_aebLockState 3 "AEB_LOCK_STATE_SNA" 2 "AEB_LOCK_STATE_UNUSED" 1 "AEB_LOCK_STATE_UNLOCKED" 0 "AEB_LOCK_STATE_LOCKED" ; -VAL_TABLE_ DI_aebSmState 7 "DI_AEB_STATE_FAULT" 6 "DI_AEB_STATE_EXIT" 5 "DI_AEB_STATE_STANDSTILL" 4 "DI_AEB_STATE_STOPPING" 3 "DI_AEB_STATE_ENABLE" 2 "DI_AEB_STATE_ENABLE_INIT" 1 "DI_AEB_STATE_STANDBY" 0 "DI_AEB_STATE_UNAVAILABLE" ; -VAL_TABLE_ DI_aebState 7 "AEB_CAN_STATE_SNA" 4 "AEB_CAN_STATE_FAULT" 3 "AEB_CAN_STATE_STANDSTILL" 2 "AEB_CAN_STATE_ENABLED" 1 "AEB_CAN_STATE_STANDBY" 0 "AEB_CAN_STATE_UNAVAILABLE" ; -VAL_TABLE_ DI_epbInterfaceReady 1 "EPB_INTERFACE_READY" 0 "EPB_INTERFACE_NOT_READY" ; -VAL_TABLE_ DI_gear 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; -VAL_TABLE_ DI_gpoReason 8 "DI_GPO_NUMREASONS" 7 "DI_GPO_CAPACITOR_OVERTEMP" 6 "DI_GPO_NOT_ENOUGH_12V" 5 "DI_GPO_NO_BATTERY_POWER" 4 "DI_GPO_AMBIENT_OVERTEMP" 3 "DI_GPO_FLUID_DELTAT" 2 "DI_GPO_STATOR_OVERTEMP" 1 "DI_GPO_HEATSINK_OVERTEMP" 0 "DI_GPO_OUTLET_OVERTEMP" ; -VAL_TABLE_ DI_immobilizerCondition 1 "DI_IMM_CONDITION_LEARNED" 0 "DI_IMM_CONDITION_VIRGIN_SNA" ; -VAL_TABLE_ DI_immobilizerState 7 "DI_IMM_STATE_FAULT" 6 "DI_IMM_STATE_FAULTRETRY" 5 "DI_IMM_STATE_RESET" 4 "DI_IMM_STATE_LEARN" 3 "DI_IMM_STATE_DISARMED" 2 "DI_IMM_STATE_AUTHENTICATING" 1 "DI_IMM_STATE_REQUEST" 0 "DI_IMM_STATE_INIT_SNA" ; -VAL_TABLE_ DI_limpReason 24 "DI_LIMP_NUMREASONS" 23 "DI_LIMP_CAPACITOR_OVERTEMP" 22 "DI_LIMP_GTW_MIA" 21 "DI_LIMP_TRQCMD_VALIDITY_UNKNOWN" 20 "DI_LIMP_DI_MIA" 19 "DI_LIMP_CONFIG_MISMATCH" 18 "DI_LIMP_HEATSINK_TEMP" 17 "DI_LIMP_PMREQUEST" 16 "DI_LIMP_PMHEARTBEAT" 15 "DI_LIMP_TRQ_CROSS_CHECK" 14 "DI_LIMP_EXTERNAL_COMMAND" 13 "DI_LIMP_WRONG_CS_CALIBRATION" 12 "DI_LIMP_STATOR_TEMP" 11 "DI_LIMP_DELTAT_TOO_NEGATIVE" 10 "DI_LIMP_DELTAT_TOO_POSITIVE" 9 "DI_LIMP_AMBIENT_TEMP" 8 "DI_LIMP_OUTLET_TEMP" 7 "DI_LIMP_LOW_FLOW" 6 "DI_LIMP_BMS_MIA" 5 "DI_LIMP_12V_SUPPLY_UNDERVOLTAGE" 4 "DI_LIMP_NO_FLUID" 3 "DI_LIMP_NO_FUNC_HEATSINK_SENSOR" 2 "DI_LIMP_NO_FUNC_STATORT_SENSOR" 1 "DI_LIMP_BUSV_SENSOR_IRRATIONAL" 0 "DI_LIMP_PHASE_IMBALANCE" ; -VAL_TABLE_ DI_mode 2 "DI_MODE_DYNO" 1 "DI_MODE_DRIVE" 0 "DI_MODE_UNDEF" ; -VAL_TABLE_ DI_motorType 14 "DI_MOTOR_F2AE" 13 "DI_MOTOR_F2AD" 12 "DI_MOTOR_F2AC" 11 "DI_MOTOR_F2AB" 10 "DI_MOTOR_F1AC" 9 "DI_MOTOR_SSR1A" 8 "DI_MOTOR_F1A" 7 "DI_MOTOR_M7M6" 6 "DI_MOTOR_M8A" 5 "DI_MOTOR_M7M5" 4 "DI_MOTOR_M7M4" 3 "DI_MOTOR_M7M3" 2 "DI_MOTOR_ROADSTER_SPORT" 1 "DI_MOTOR_ROADSTER_BASE" 0 "DI_MOTOR_SNA" ; -VAL_TABLE_ DI_speedUnits 1 "DI_SPEED_KPH" 0 "DI_SPEED_MPH" ; -VAL_TABLE_ DI_state 4 "DI_STATE_ENABLE" 3 "DI_STATE_FAULT" 2 "DI_STATE_CLEAR_FAULT" 1 "DI_STATE_STANDBY" 0 "DI_STATE_PREAUTH" ; -VAL_TABLE_ DI_velocityEstimatorState 4 "VE_STATE_BACKUP_MOTOR" 3 "VE_STATE_BACKUP_WHEELS_B" 2 "VE_STATE_BACKUP_WHEELS_A" 1 "VE_STATE_WHEELS_NORMAL" 0 "VE_STATE_NOT_INITIALIZED" ; - - -BO_ 1160 DAS_steeringControl: 4 NEO - SG_ DAS_steeringControlType : 23|2@0+ (1,0) [0|0] "" EPAS - SG_ DAS_steeringControlChecksum : 31|8@0+ (1,0) [0|0] "" EPAS - SG_ DAS_steeringControlCounter : 19|4@0+ (1,0) [0|0] "" EPAS - SG_ DAS_steeringAngleRequest : 6|15@0+ (0.1,-1638.35) [-1638.35|1638.35] "deg" EPAS - SG_ DAS_steeringHapticRequest : 7|1@0+ (1,0) [0|0] "" EPAS - -BO_ 697 DAS_control: 8 NEO - SG_ DAS_setSpeed : 0|12@1+ (0.1,0) [0|409.4] "kph" NEO - SG_ DAS_accState : 12|4@1+ (1,0) [0|0] "" NEO - SG_ DAS_aebEvent : 16|2@1+ (1,0) [0|3] "" NEO - SG_ DAS_jerkMin : 18|9@1+ (0.03,-15.232) [-15.232|0.098] "m/s^3" NEO - SG_ DAS_jerkMax : 27|8@1+ (0.059,0) [0|15.045] "m/s^3" NEO - SG_ DAS_accelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO - SG_ DAS_accelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO - SG_ DAS_controlCounter : 53|3@1+ (1,0) [0|0] "" NEO - SG_ DAS_controlChecksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 521 DAS_longControl: 8 NEO - SG_ DAS_locMode : 0|2@1+ (1,0) [0|0] "" NEO - SG_ DAS_locState : 2|3@1+ (1,0) [0|0] "" NEO - SG_ DAS_locRequest : 5|3@1+ (1,0) [0|0] "" NEO - SG_ DAS_locJerkMin : 8|8@1+ (0.034,-8.67) [-8.67|0] "m/s^3" NEO - SG_ DAS_locJerkMax : 16|8@1+ (0.034,0) [0|8.67] "m/s^3" NEO - SG_ DAS_locSpeed : 24|11@1+ (0.1,0) [0|204.7] "kph" NEO - SG_ DAS_locAccelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO - SG_ DAS_locAccelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO - SG_ DAS_longControlCounter : 53|3@1+ (1,0) [0|0] "" NEO - SG_ DAS_longControlChecksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 569 DAS_lanes: 8 NEO - SG_ DAS_leftLaneExists : 0|1@1+ (1,0) [0|0] "" NEO - SG_ DAS_rightLaneExists : 1|1@1+ (1,0) [0|0] "" NEO - SG_ DAS_virtualLaneWidth : 4|4@1+ (0.3125,2) [2|7] "m" NEO - SG_ DAS_virtualLaneViewRange : 8|8@1+ (1,0) [0|160] "m" NEO - SG_ DAS_virtualLaneC0 : 16|8@1+ (0.035,-3.5) [-3.5|3.5] "m" NEO - SG_ DAS_virtualLaneC1 : 24|8@1+ (0.0016,-0.2) [-0.2|0.2] "rad" NEO - SG_ DAS_virtualLaneC2 : 32|8@1+ (2E-05,-0.0025) [-0.0025|0.0025] "m-1" NEO - SG_ DAS_virtualLaneC3 : 40|8@1+ (2.4E-07,-3E-05) [-3E-05|3E-05] "m-2" NEO - SG_ DAS_leftLineUsage : 48|2@1+ (1,0) [0|3] "" NEO - SG_ DAS_rightLineUsage : 50|2@1+ (1,0) [0|3] "" NEO - SG_ DAS_leftFork : 52|2@1+ (1,0) [0|3] "" NEO - SG_ DAS_rightFork : 54|2@1+ (1,0) [0|3] "" NEO - SG_ DAS_lanesCounter : 60|4@1+ (1,0) [0|0] "" NEO - -BO_ 257 GTW_epasControl: 3 NEO - SG_ GTW_epasControlChecksum : 23|8@0+ (1,0) [0|255] "" NEO - SG_ GTW_epasControlCounter : 11|4@0+ (1,0) [0|15] "" NEO - SG_ GTW_epasControlType : 15|2@0+ (1,0) [-1|4] "" NEO - SG_ GTW_epasEmergencyOn : 7|1@0+ (1,0) [-1|2] "" NEO - SG_ GTW_epasLDWEnabled : 12|1@0+ (1,0) [-1|2] "" NEO - SG_ GTW_epasPowerMode : 6|4@0+ (1,0) [4|14] "" NEO - SG_ GTW_epasTuneRequest : 2|3@0+ (1,0) [-1|8] "" NEO - -BO_ 880 EPAS_sysStatus: 8 EPAS - SG_ EPAS_currentTuneMode : 7|4@0+ (1,0) [8|15] "" NEO - SG_ EPAS_eacErrorCode : 23|4@0+ (1,0) [-1|16] "" NEO - SG_ EPAS_eacStatus : 55|3@0+ (1,0) [5|7] "" NEO - SG_ EPAS_handsOnLevel : 39|2@0+ (1,0) [-1|4] "" NEO - SG_ EPAS_internalSAS : 37|14@0+ (0.1,-819.200012) [0|0] "deg" NEO - SG_ EPAS_steeringFault : 2|1@0+ (1,0) [-1|2] "" NEO - SG_ EPAS_steeringRackForce : 1|10@0+ (50,-25575) [0|0] "N" NEO - SG_ EPAS_steeringReduced : 3|1@0+ (1,0) [-1|2] "" NEO - SG_ EPAS_sysStatusChecksum : 63|8@0+ (1,0) [0|255] "" NEO - SG_ EPAS_sysStatusCounter : 51|4@0+ (1,0) [0|15] "" NEO - SG_ EPAS_torsionBarTorque : 19|12@0+ (0.01,-20.5) [0|0] "Nm" NEO - -BO_ 305 EPAS3P_sysStatus: 8 NEO - SG_ EPAS_currentTuneMode : 7|4@0+ (1,0) [0|0] "" NEO - SG_ EPAS_eacErrorCode : 23|4@0+ (1,0) [0|15] "" NEO - SG_ EPAS_eacStatus : 55|3@0+ (1,0) [0|7] "" NEO - SG_ EPAS_handsOnLevel : 39|2@0+ (1,0) [0|3] "" NEO - SG_ EPAS_internalSAS : 37|14@0+ (0.1,-819.2) [-819.2|819] "deg" NEO - SG_ EPAS_steeringFault : 2|1@0+ (1,0) [0|1] "" NEO - SG_ EPAS_steeringRackForce : 1|10@0+ (50,-25575) [-25575|25575] "N" NEO - SG_ EPAS_steeringReduced : 3|1@0+ (1,0) [0|1] "" NEO - SG_ EPAS_sysStatusChecksum : 63|8@0+ (1,0) [0|255] "" NEO - SG_ EPAS_sysStatusCounter : 51|4@0+ (1,0) [0|15] "" NEO - SG_ EPAS_torsionBarTorque : 19|12@0+ (0.01,-20.5) [-20.5|20.45] "Nm" NEO - -BO_ 3 STW_ANGL_STAT: 8 STW - SG_ StW_Angl : 5|14@0+ (0.5,-2048) [0|0] "deg" NEO - SG_ StW_AnglSpd : 21|14@0+ (0.5,-2048) [0|0] "/s" NEO - SG_ StW_AnglSens_Stat : 33|2@0+ (1,0) [-1|4] "" NEO - SG_ StW_AnglSens_Id : 35|2@0+ (1,0) [3|3] "" NEO - SG_ MC_STW_ANGL_STAT : 55|4@0+ (1,0) [0|15] "" NEO - SG_ CRC_STW_ANGL_STAT : 63|8@0+ (1,0) [0|255] "" NEO - -BO_ 14 STW_ANGLHP_STAT: 8 STW - SG_ StW_AnglHP : 5|14@0+ (0.1,-819.2) [-819.2|819] "deg" NEO - SG_ StW_AnglHP_Spd : 21|14@0+ (0.5,-4096) [-4096|4095.5] "deg/s" NEO - SG_ StW_AnglHP_Sens_Stat : 33|2@0+ (1,0) [0|0] "" NEO - SG_ StW_AnglHP_Sens_Id : 35|2@0+ (1,0) [0|0] "" NEO - SG_ MC_STW_ANGLHP_STAT : 55|4@0+ (1,0) [0|15] "" NEO - SG_ CRC_STW_ANGLHP_STAT : 63|8@0+ (1,0) [0|0] "" NEO - -BO_ 264 DI_torque1: 8 DI - SG_ DI_torqueDriver : 0|13@1- (0.25,0) [-750|750] "Nm" NEO - SG_ DI_torque1Counter : 13|3@1+ (1,0) [0|0] "" NEO - SG_ DI_torqueMotor : 16|13@1- (0.25,0) [-750|750] "Nm" NEO - SG_ DI_soptState : 29|3@1+ (1,0) [0|0] "" NEO - SG_ DI_motorRPM : 32|16@1- (1,0) [-17000|17000] "RPM" NEO - SG_ DI_pedalPos : 48|8@1+ (0.4,0) [0|100] "%" NEO - SG_ DI_torque1Checksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 280 DI_torque2: 6 DI - SG_ DI_torqueEstimate : 0|12@1- (0.5,0) [-750|750] "Nm" NEO - SG_ DI_gear : 12|3@1+ (1,0) [0|0] "" NEO - SG_ DI_brakePedal : 15|1@1+ (1,0) [0|0] "" NEO - SG_ DI_vehicleSpeed : 16|12@1+ (0.05,-25) [-25|179.75] "MPH" NEO - SG_ DI_gearRequest : 28|3@1+ (1,0) [0|0] "" NEO - SG_ DI_torqueInterfaceFailure : 31|1@1+ (1,0) [0|0] "" NEO - SG_ DI_torque2Counter : 32|4@1+ (1,0) [0|0] "" NEO - SG_ DI_brakePedalState : 36|2@1+ (1,0) [0|0] "" NEO - SG_ DI_epbParkRequest : 38|1@1+ (1,0) [0|0] "" NEO - SG_ DI_epbInterfaceReady : 39|1@1+ (1,0) [0|0] "" NEO - SG_ DI_torque2Checksum : 40|8@1+ (1,0) [0|0] "" NEO - -BO_ 309 ESP_135h: 5 ESP - SG_ ESP_135hChecksum : 23|8@0+ (1,0) [0|255] "" NEO - SG_ ESP_135hCounter : 11|4@0+ (1,0) [0|15] "" NEO - SG_ ESP_absBrakeEvent : 2|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_brakeDiscWipingActive : 4|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_brakeLamp : 3|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_espFaultLamp : 6|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_espLampFlash : 7|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_hillStartAssistActive : 1|2@0+ (1,0) [-1|4] "" NEO - SG_ ESP_messagePumpService : 24|1@0+ (1,0) [0|1] "" NEO - SG_ ESP_messagePumpFailure : 25|1@0+ (1,0) [0|1] "" NEO - SG_ ESP_messageEBDFailure : 26|1@0+ (1,0) [0|1] "" NEO - SG_ ESP_absFaultLamp : 27|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_tcDisabledByFault : 28|1@0+ (1,0) [0|1] "" NEO - SG_ ESP_messageDynoModeActive : 29|1@0+ (1,0) [0|1] "" NEO - SG_ ESP_hydraulicBoostEnabled : 30|1@0+ (1,0) [0|1] "" NEO - SG_ ESP_espOffLamp : 31|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_stabilityControlSts : 14|3@0+ (1,0) [6|7] "" NEO - SG_ ESP_tcLampFlash : 5|1@0+ (1,0) [-1|2] "" NEO - SG_ ESP_tcOffLamp : 15|1@0+ (1,0) [0|1] "" NEO - -BO_ 341 ESP_B: 8 ESP - SG_ ESP_BChecksum : 39|8@0+ (1,0) [0|255] "" NEO,EPAS - SG_ ESP_BCounter : 62|4@0+ (1,0) [1|15] "" NEO,EPAS - SG_ ESP_vehicleSpeed : 47|16@0+ (0.00999999978,0) [0|0] "kph" NEO,EPAS - SG_ ESP_vehicleSpeedQF : 57|2@0+ (1,0) [1|2] "" NEO,EPAS - SG_ ESP_wheelPulseCountFrL : 7|8@0+ (1,0) [0|254] "" NEO,EPAS - SG_ ESP_wheelPulseCountFrR : 15|8@0+ (1,0) [0|254] "" NEO,EPAS - SG_ ESP_wheelPulseCountReL : 23|8@0+ (1,0) [0|254] "" NEO,EPAS - SG_ ESP_wheelPulseCountReR : 31|8@0+ (1,0) [0|254] "" NEO,EPAS - -BO_ 513 SDM1: 5 GTW - SG_ SDM_bcklPassStatus : 3|2@0+ (1,0) [0|3] "" NEO - SG_ SDM_bcklDrivStatus : 5|2@0+ (1,0) [0|3] "" NEO - -BO_ 532 EPB_epasControl: 3 EPB - SG_ EPB_epasControlChecksum : 23|8@0+ (1,0) [0|255] "" NEO,EPAS - SG_ EPB_epasControlCounter : 11|4@0+ (1,0) [0|15] "" NEO,EPAS - SG_ EPB_epasEACAllow : 2|3@0+ (1,0) [4|7] "" NEO,EPAS - -BO_ 792 GTW_carState: 8 GTW - SG_ YEAR : 0|7@1+ (1,2000) [2000|2127] "Year" NEO - SG_ CERRD : 7|1@1+ (1,0) [0|1] "" NEO - SG_ MONTH : 8|4@1+ (1,0) [1|12] "Month" NEO - SG_ DOOR_STATE_FL : 12|2@1+ (1,0) [0|3] "" NEO - SG_ DOOR_STATE_FR : 14|2@1+ (1,0) [0|3] "" NEO - SG_ SECOND : 16|6@1+ (1,0) [0|59] "s" NEO - SG_ DOOR_STATE_RL : 22|2@1+ (1,0) [0|3] "" NEO - SG_ Hour : 24|5@1+ (1,0) [0|23] "h" NEO - SG_ DOOR_STATE_RR : 29|2@1+ (1,0) [0|3] "" NEO - SG_ DAY : 32|5@1+ (1,0) [0|31] "" NEO - SG_ MINUTE : 40|6@1+ (1,0) [0|59] "min" NEO - SG_ BOOT_STATE : 46|2@1+ (1,0) [0|3] "" NEO - SG_ GTW_updateInProgress : 48|2@1+ (1,0) [0|3] "" NEO - SG_ DOOR_STATE_FrontTrunk : 50|2@1+ (1,0) [0|3] "" NEO - SG_ MCU_factoryMode : 52|1@1+ (1,0) [0|1] "" NEO - SG_ MCU_transportModeOn : 53|1@0+ (1,0) [0|1] "" NEO - SG_ BC_headLightLStatus : 55|2@0+ (1,0) [0|3] "" NEO - SG_ BC_headLightRStatus : 57|2@0+ (1,0) [0|3] "" NEO - SG_ BC_indicatorLStatus : 59|2@0+ (1,0) [0|3] "" NEO - SG_ BC_indicatorRStatus : 61|2@0+ (1,0) [0|3] "" NEO - -BO_ 872 DI_state: 8 DI - SG_ DI_systemState : 0|3@1+ (1,0) [0|0] "" NEO - SG_ DI_vehicleHoldState : 3|3@1+ (1,0) [0|0] "" NEO - SG_ DI_proximity : 6|1@1+ (1,0) [0|0] "" NEO - SG_ DI_driveReady : 7|1@1+ (1,0) [0|0] "" NEO - SG_ DI_regenLight : 8|1@1+ (1,0) [0|0] "" NEO - SG_ DI_state : 9|3@1+ (1,0) [0|0] "" NEO - SG_ DI_cruiseState : 12|4@1+ (1,0) [0|0] "" NEO - SG_ DI_analogSpeed : 16|12@1+ (0.1,0) [0|150] "speed" NEO - SG_ DI_immobilizerState : 28|3@1+ (1,0) [0|0] "" NEO - SG_ DI_speedUnits : 31|1@1+ (1,0) [0|1] "" NEO - SG_ DI_cruiseSet : 32|9@1+ (0.5,0) [0|255.5] "speed" NEO - SG_ DI_aebState : 41|3@1+ (1,0) [0|0] "" NEO - SG_ DI_stateCounter : 44|4@1+ (1,0) [0|0] "" NEO - SG_ DI_digitalSpeed : 48|8@1+ (1,0) [0|250] "" NEO - SG_ DI_stateChecksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 109 SBW_RQ_SCCM: 4 STW - SG_ StW_Sw_Stat3 : 0|3@1+ (1,0) [0|0] "" NEO - SG_ MsgTxmtId : 6|2@1+ (1,0) [0|0] "" NEO - SG_ TSL_RND_Posn_StW : 8|4@1+ (1,0) [0|0] "" NEO - SG_ TSL_P_Psd_StW : 12|2@1+ (1,0) [0|0] "" NEO - SG_ MC_SBW_RQ_SCCM : 20|4@1+ (1,0) [0|15] "" NEO - SG_ CRC_SBW_RQ_SCCM : 24|8@1+ (1,0) [0|0] "" NEO - -BO_ 69 STW_ACTN_RQ: 8 STW - SG_ SpdCtrlLvr_Stat : 0|6@1+ (1,0) [0|0] "" NEO - SG_ VSL_Enbl_Rq : 6|1@1+ (1,0) [0|0] "" NEO - SG_ SpdCtrlLvrStat_Inv : 7|1@1+ (1,0) [0|0] "" NEO - SG_ DTR_Dist_Rq : 8|8@1+ (1,0) [0|200] "" NEO - SG_ TurnIndLvr_Stat : 16|2@1+ (1,0) [0|0] "" NEO - SG_ HiBmLvr_Stat : 18|2@1+ (1,0) [0|0] "" NEO - SG_ WprWashSw_Psd : 20|2@1+ (1,0) [0|0] "" NEO - SG_ WprWash_R_Sw_Posn_V2 : 22|2@1+ (1,0) [0|0] "" NEO - SG_ StW_Lvr_Stat : 24|3@1+ (1,0) [0|0] "" NEO - SG_ StW_Cond_Flt : 27|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Cond_Psd : 28|2@1+ (1,0) [0|0] "" NEO - SG_ HrnSw_Psd : 30|2@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw00_Psd : 32|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw01_Psd : 33|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw02_Psd : 34|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw03_Psd : 35|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw04_Psd : 36|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw05_Psd : 37|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw06_Psd : 38|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw07_Psd : 39|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw08_Psd : 40|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw09_Psd : 41|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw10_Psd : 42|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw11_Psd : 43|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw12_Psd : 44|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw13_Psd : 45|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw14_Psd : 46|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw15_Psd : 47|1@1+ (1,0) [0|0] "" NEO - SG_ WprSw6Posn : 48|3@1+ (1,0) [0|0] "" NEO - SG_ MC_STW_ACTN_RQ : 52|4@1+ (1,0) [0|15] "" NEO - SG_ CRC_STW_ACTN_RQ : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 643 BODY_R1: 8 GTW - SG_ AirTemp_Insd : 47|8@0+ (0.25,0) [0|63.5] "C" NEO - SG_ AirTemp_Outsd : 63|8@0+ (0.5,-40) [-40|86.5] "C" NEO - SG_ Bckl_Sw_RL_Stat_SAM_R : 49|2@0+ (1,0) [-1|4] "" NEO - SG_ Bckl_Sw_RM_Stat_SAM_R : 53|2@0+ (1,0) [-1|4] "" NEO - SG_ Bckl_Sw_RR_Stat_SAM_R : 51|2@0+ (1,0) [-1|4] "" NEO - SG_ DL_RLtch_Stat : 9|2@0+ (1,0) [-1|4] "" NEO - SG_ DrRLtch_FL_Stat : 1|2@0+ (1,0) [-1|4] "" NEO - SG_ DrRLtch_FR_Stat : 3|2@0+ (1,0) [-1|4] "" NEO - SG_ DrRLtch_RL_Stat : 5|2@0+ (1,0) [-1|4] "" NEO - SG_ DrRLtch_RR_Stat : 7|2@0+ (1,0) [-1|4] "" NEO - SG_ EngHd_Stat : 11|2@0+ (1,0) [-1|4] "" NEO - SG_ LoBm_On_Rq : 32|1@0+ (1,0) [0|1] "" NEO - SG_ HiBm_On : 33|1@0+ (1,0) [0|1] "" NEO - SG_ Hrn_On : 26|1@0+ (1,0) [0|1] "" NEO - SG_ IrLmp_D_Lt_Flt : 34|1@0+ (1,0) [0|1] "" NEO - SG_ IrLmp_P_Rt_Flt : 35|1@0+ (1,0) [0|1] "" NEO - SG_ LgtSens_Twlgt : 18|3@0+ (1,0) [0|7] "Steps" NEO - SG_ LgtSens_SNA : 19|1@0+ (1,0) [0|1] "" NEO - SG_ LgtSens_Tunnel : 20|1@0+ (1,0) [0|1] "" NEO - SG_ LgtSens_Flt : 21|1@0+ (1,0) [0|1] "" NEO - SG_ LgtSens_Night : 22|1@0+ (1,0) [-1|2] "" NEO - SG_ ADL_LoBm_On_Rq : 23|1@0+ (1,0) [0|1] "" NEO - SG_ LoBm_D_Lt_Flt : 36|1@0+ (1,0) [0|1] "" NEO - SG_ LoBm_P_Rt_Flt : 37|1@0+ (1,0) [0|1] "" NEO - SG_ MPkBrk_Stat : 28|1@0+ (1,0) [-1|2] "" NEO - SG_ RevGr_Engg : 39|2@0+ (1,0) [-1|4] "" NEO - SG_ StW_Cond_Stat : 55|2@0+ (1,0) [-1|4] "" NEO - SG_ Term54_Actv : 27|1@0+ (1,0) [0|1] "" NEO - SG_ Trlr_Stat : 25|2@0+ (1,0) [-1|4] "" NEO - SG_ VTA_Alm_Actv : 13|1@0+ (1,0) [0|1] "" NEO - SG_ WprOutsdPkPosn : 29|1@0+ (1,0) [0|1] "" NEO - -BO_ 760 UI_gpsVehicleSpeed: 8 GTW - SG_ UI_gpsHDOP : 0|8@1+ (0.1,0) [0|25.5] "1" DAS - SG_ UI_gpsVehicleHeading : 8|16@1+ (0.0078125,0) [0|511.9921875] "deg" DAS - SG_ UI_gpsVehicleSpeed : 24|16@1+ (0.00390625,0) [0|250.996] "km/hr" Vector__XXX - SG_ UI_userSpeedOffset : 40|6@1+ (1,-30) [-30|33] "kph/mph" DAS - SG_ UI_mapSpeedLimitUnits : 46|1@1+ (1,0) [0|1] "" DAS - SG_ UI_userSpeedOffsetUnits : 47|1@1+ (1,0) [0|1] "" DAS - SG_ UI_mppSpeedLimit : 48|5@1+ (5,0) [0|155] "kph/mph" DAS - SG_ UI_gpsNmeaMIA : 53|1@1+ (1,0) [0|0] "" DAS - -BO_ 536 MCU_chassisControl: 8 GTW - SG_ MCU_dasDebugEnable : 0|1@1+ (1,0) [0|0] "" NEO - SG_ MCU_parkBrakeRequest : 1|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_trailerModeCH : 3|1@1+ (1,0) [0|0] "" NEO - SG_ MCU_fcwSensitivity : 4|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_fcwEnable : 6|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_latControlEnable : 8|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_accOvertakeEnable : 10|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_ldwEnable : 12|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_aebEnable : 14|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_bsdEnable : 16|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_ahlbEnable : 18|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_parkSetting : 20|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_pedalSafetyEnable : 22|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_frontDefrostReq_das : 24|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_autoParkRequest : 26|4@1+ (1,0) [0|0] "" NEO - SG_ MCU_redLightStopSignEnable : 30|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_enableCreepTorqueCH : 32|1@1+ (1,0) [0|0] "" NEO - SG_ MCU_narrowGarages : 33|1@1+ (1,0) [0|0] "" NEO - SG_ MCU_rebootAutopilot : 34|1@1+ (1,0) [0|0] "" NEO - SG_ MCU_enableAutowipers : 35|1@1+ (1,0) [0|0] "" NEO - SG_ MCU_overPaintedUSS : 38|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_selfParkTune : 40|4@1+ (1,0) [0|15] "" NEO - SG_ MCU_towModeEnable : 44|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_zeroSpeedConfirmed : 46|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_aesEnable : 48|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_autoLaneChangeEnable : 50|2@1+ (1,0) [0|0] "" NEO - SG_ MCU_chassisControlCounter : 52|4@1+ (1,0) [0|0] "" NEO - SG_ MCU_chassisControlChecksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 904 MCU_clusterBacklightRequest: 3 NEO - SG_ MCU_clusterBacklightOn : 7|1@1+ (1,0) [0|1] "" NEO - SG_ MCU_clusterBrightnessLevel : 8|8@1+ (0.5,0) [0|127.5] "%" NEO - SG_ MCU_clusterReadyForDrive : 6|1@1+ (1,0) [-1|2] "" NEO - SG_ MCU_clusterReadyForPowerOff : 5|1@1+ (1,0) [0|1] "" NEO - -BO_ 984 MCU_locationStatus: 8 MCU - SG_ MCU_gpsAccuracy : 57|7@1+ (0.2,0) [0|0] "m" NEO - SG_ MCU_latitude : 0|28@1- (1E-06,0) [0|0] "deg" NEO - SG_ MCU_longitude : 28|29@1- (1E-06,0) [0|0] "deg" NEO - -BO_ 104 MCU_locationStatus2: 8 MCU - SG_ MCU_elevation : 0|32@1- (0.1,0) [0|0] "m" GTW - SG_ MCU_navigonExpectedSpeed : 32|7@1+ (1,0) [0|126] "mph" GTW - -BO_ 840 GTW_status: 8 GTW - SG_ GTW_accGoingDown : 6|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_accRailReq : 8|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_brakePressed : 1|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_driveGoingDown : 7|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_driveRailReq : 0|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_driverIsLeaving : 5|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_driverPresent : 2|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_hvacGoingDown : 11|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_hvacRailReq : 9|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_icPowerOff : 4|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_notEnough12VForDrive : 3|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_preconditionRequest : 10|1@0+ (1,0) [0|1] "" NEO - SG_ GTW_statusChecksum : 63|8@0+ (1,0) [0|255] "" NEO - SG_ GTW_statusCounter : 51|4@0+ (1,0) [0|15] "" NEO - -BO_ 920 GTW_carConfig: 8 GTW - SG_ GTW_performanceConfig : 2|3@0+ (1,0) [0|0] "" NEO - SG_ GTW_fourWheelDrive : 4|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_unknown1 : 5|1@0+ (1,0) [0|0] "" NEO - SG_ GTW_dasHw : 7|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_parkAssistInstalled : 9|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_forwardRadarHw : 11|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_airSuspensionInstalled : 14|3@0+ (1,0) [0|0] "" NEO - SG_ GTW_unknown2 : 15|1@0+ (1,0) [0|0] "" NEO - SG_ GTW_country : 23|16@0+ (1,0) [0|0] "" NEO - SG_ GTW_parkSensorGeometryType : 33|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_rhd : 34|1@0+ (1,0) [0|0] "" NEO - SG_ GTW_bodyControlsType : 35|1@0+ (1,0) [0|0] "" NEO - SG_ GTW_radarPosition : 39|4@0+ (1,0) [0|0] "" NEO - SG_ GTW_rearCornerRadarHw : 41|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_frontCornerRadarHw : 43|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_epasType : 45|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_chassisType : 47|2@0+ (1,0) [0|2] "" NEO - SG_ GTW_wheelType : 52|5@0+ (1,0) [0|0] "" NEO - SG_ GTW_rearSeatControllerMask : 55|3@0+ (1,0) [0|7] "" NEO - SG_ GTW_euVehicle : 56|1@0+ (1,0) [0|0] "" NEO - SG_ GTW_foldingMirrorsInstalled : 57|1@0+ (1,0) [0|0] "" NEO - SG_ GTW_brakeHwType : 59|2@0+ (1,0) [0|2] "" NEO - SG_ GTW_autopilot : 61|2@0+ (1,0) [0|0] "" NEO - SG_ GTW_unknown3 : 63|2@0+ (1,0) [0|0] "" NEO - -BO_ 1006 UI_autopilotControl: 8 GTW - SG_ UI_autopilotControlIndex M : 0|3@1+ (1,0) [0|7] "" APP,APS - SG_ UI_hovEnabled m0 : 3|1@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donDisableAutoWiperDuration m0 : 4|3@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donDisableOnAutoWiperSpeed m0 : 7|4@1+ (1,0) [0|0] "" APP,APS - SG_ UI_blindspotMinSpeed m0 : 11|4@1+ (1,0) [0|0] "" APP,APS - SG_ UI_blindspotDistance m0 : 15|3@1+ (1,0) [0|0] "" APP,APS - SG_ UI_blindspotTTC m0 : 18|3@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donStopEndOfRampBuffer m0 : 21|3@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donDisableCutin m0 : 24|1@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donMinGoreWidthForAbortMap m0 : 25|4@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donAlcProgGoreAbortThres m0 : 29|4@1+ (1,0) [0|0] "" APP,APS - SG_ UI_donMinGoreWidthForAbortNotMap m0 : 33|4@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcDisableUltrasonicCheck m0 : 37|1@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcUltrasonicDistance m0 : 38|4@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcUltrasonicWaitTime m0 : 42|3@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcEgoLeadingReactionAccel m0 : 48|2@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcMergIntervalRearDHyst m0 : 50|2@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcMergingIntervalHeadwayHyst m0 : 52|2@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcAssertivenessRate m0 : 54|2@1+ (1,0) [0|0] "" APP,APS - SG_ UI_alcViewRangeSensitivity m0 : 56|2@1+ (1,0) [0|0] "" APP,APS - SG_ UI_camBlockLaneCheckDisable m1 : 3|1@1+ (1,0) [0|0] "" APP,APS - SG_ UI_camBlockLaneCheckThreshold m1 : 4|6@1+ (0.01587,0) [0|1] "%" APP,APS - SG_ UI_camBlockBlurDisable m1 : 10|1@1+ (1,0) [0|0] "" APP,APS - SG_ UI_camBlockBlurThreshold m1 : 11|6@1+ (0.01587,0) [0|1] "%" APP,APS - -BO_ 728 UI_csaOfframpCurvature: 8 GTW - SG_ UI_csaOfframpCurvC2 : 0|16@1- (1E-06,0) [-0.032768|0.032767] "1/m" DAS - SG_ UI_csaOfframpCurvC3 : 16|16@1- (4E-09,0) [-0.000131072|0.000131068] "1/m2" DAS - SG_ UI_csaOfframpCurvRange : 32|8@1+ (2,0) [0|510] "m" DAS - SG_ UI_csaOfframpCurvCounter : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ UI_csaOfframpCurvUsingTspline : 48|1@1+ (1,0) [0|1] "" DAS - SG_ UI_csaOfframpCurvReserved : 49|7@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_csaOfframpCurvChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 744 UI_csaRoadCurvature: 8 GTW - SG_ UI_csaRoadCurvC2 : 0|16@1- (1E-06,0) [-0.032768|0.032767] "1/m" DAS - SG_ UI_csaRoadCurvC3 : 16|16@1- (4E-09,0) [-0.000131072|0.000131068] "1/m2" DAS - SG_ UI_csaRoadCurvRange : 32|8@1+ (2,0) [0|510] "m" DAS - SG_ UI_csaRoadCurvCounter : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ UI_csaRoadCurvUsingTspline : 48|1@1+ (1,0) [0|1] "" DAS - SG_ UI_csaRoadCurvReserved : 49|7@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_csaRoadCurvChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 1080 UI_driverAssistAnonDebugParams: 8 GTW - SG_ UI_anonDebugParam1 : 0|7@1+ (1,0) [0|100] "" DAS - SG_ UI_anonDebugFlag1 : 7|1@1+ (1,0) [0|0] "" DAS - SG_ UI_anonDebugParam2 : 8|7@1+ (1,0) [0|100] "" DAS - SG_ UI_anonDebugFlag2 : 15|1@1+ (1,0) [0|0] "" DAS - SG_ UI_anonDebugParam3 : 16|7@1+ (1,0) [0|100] "" DAS - SG_ UI_anonDebugFlag3 : 23|1@1+ (1,0) [0|0] "" DAS - SG_ UI_anonDebugParam4 : 24|7@1+ (1,0) [0|100] "" DAS - SG_ UI_anonDebugFlag4 : 31|1@1+ (1,0) [0|0] "" DAS - SG_ UI_anonDebugParam5 : 32|7@1+ (1,0) [0|100] "" DAS - SG_ UI_anonDebugParam6 : 40|7@1+ (1,0) [0|100] "" DAS - SG_ UI_anonDebugParam7 : 48|7@1+ (1,0) [0|100] "" DAS - SG_ UI_visionSpeedSlider : 56|7@1+ (1,0) [0|100] "" DAS - -BO_ 1000 UI_driverAssistControl: 8 GTW - SG_ UI_autopilotControlRequest : 0|1@1+ (1,0) [1|0] "" DAS - SG_ UI_ulcStalkConfirm : 1|1@1+ (1,0) [1|0] "" DAS - SG_ UI_summonHeartbeat : 2|2@1+ (1,0) [0|0] "" DAS - SG_ UI_curvSpeedAdaptDisable : 4|1@1+ (1,0) [0|0] "" DAS - SG_ UI_dasDeveloper : 5|1@1+ (1,0) [0|0] "" DAS - SG_ UI_enableVinAssociation : 6|1@1+ (1,0) [0|0] "" DAS - SG_ UI_lssLkaEnabled : 7|1@1+ (1,0) [0|0] "" DAS - SG_ UI_lssLdwEnabled : 8|1@1+ (1,0) [0|0] "" DAS - SG_ UI_autoSummonEnable : 10|1@1+ (1,0) [0|1] "" DAS - SG_ UI_exceptionListEnable : 11|1@1+ (1,0) [0|1] "" APP - SG_ UI_roadCheckDisable : 12|1@1+ (1,0) [0|0] "" DAS - SG_ UI_driveOnMapsEnable : 13|1@1+ (1,0) [0|0] "" DAS - SG_ UI_handsOnRequirementDisable : 14|1@1+ (1,0) [0|0] "" DAS - SG_ UI_forksEnable : 15|1@1+ (1,0) [0|0] "" DAS - SG_ UI_fuseLanesDisable : 16|1@1+ (1,0) [0|0] "" DAS - SG_ UI_fuseHPPDisable : 17|1@1+ (1,0) [0|0] "" DAS - SG_ UI_fuseVehiclesDisable : 18|1@1+ (1,0) [0|0] "" DAS - SG_ UI_enableNextGenACC : 19|1@1+ (1,0) [0|1] "" APP - SG_ UI_visionSpeedType : 20|2@1+ (1,0) [0|0] "" APP - SG_ UI_curvatureDatabaseOnly : 22|1@1+ (1,0) [0|0] "" DAS - SG_ UI_lssElkEnabled : 23|1@1+ (1,0) [0|0] "" DAS - SG_ UI_summonExitType : 24|2@1+ (1,0) [0|3] "" DAS - SG_ UI_summonEntryType : 26|2@1+ (1,0) [0|3] "" DAS - SG_ UI_selfParkRequest : 28|4@1+ (1,0) [0|15] "" DAS,PARK - SG_ UI_summonReverseDist : 32|6@1+ (1,0) [0|63] "" DAS - SG_ UI_undertakeAssistEnable : 38|1@1+ (1,0) [0|0] "" DAS - SG_ UI_adaptiveSetSpeedEnable : 39|1@1+ (1,0) [0|0] "" DAS - SG_ UI_drivingSide : 40|2@1+ (1,0) [0|3] "" DAS - SG_ UI_enableClipTelemetry : 42|1@1+ (1,0) [0|0] "" APP - SG_ UI_enableTripTelemetry : 43|1@1+ (1,0) [0|0] "" APP - SG_ UI_enableRoadSegmentTelemetry : 44|1@1+ (1,0) [0|0] "" APP - SG_ UI_followNavRouteEnable : 46|1@1+ (1,0) [0|0] "" APP - SG_ UI_ulcSpeedConfig : 48|2@1+ (1,0) [0|3] "" APP - SG_ UI_ulcBlindSpotConfig : 50|2@1+ (1,0) [0|3] "" APP - SG_ UI_autopilotAlwaysOn : 52|1@1+ (1,0) [0|1] "" APP - SG_ UI_accFromZero : 53|1@1+ (1,0) [0|1] "" APP - SG_ UI_alcOffHighwayEnable : 54|1@1+ (1,0) [0|1] "" APP - SG_ UI_validationLoop : 55|1@1+ (1,0) [0|1] "" APP - SG_ UI_ulcOffHighway : 56|1@1+ (1,0) [0|1] "" APP - SG_ UI_enableNavRouteCSA : 57|1@1+ (1,0) [0|1] "" APP - SG_ UI_enableCutinExperiments : 58|1@1+ (1,0) [0|1] "" APP - SG_ UI_source3D : 60|3@1+ (1,0) [0|7] "" APP - SG_ UI_enableVisionOnlyStops : 63|1@1+ (1,0) [0|1] "" APP - -BO_ 968 UI_driverAssistMapData: 8 GTW - SG_ UI_mapSpeedLimitDependency : 0|3@1+ (1,0) [0|0] "" DAS - SG_ UI_roadClass : 3|3@1+ (1,0) [0|0] "" DAS - SG_ UI_inSuperchargerGeofence : 6|1@1+ (1,0) [0|0] "" DAS - SG_ UI_mapSpeedUnits : 7|1@1+ (1,0) [0|0] "" DAS - SG_ UI_mapSpeedLimit : 8|5@1+ (1,0) [0|0] "" DAS - SG_ UI_mapSpeedLimitType : 13|3@1+ (1,0) [0|0] "" DAS - SG_ UI_countryCode : 16|10@1+ (1,0) [0|0] "" DAS - SG_ UI_streetCount : 26|2@1+ (1,0) [0|0] "" DAS - SG_ UI_gpsRoadMatch : 28|1@1+ (1,0) [0|0] "" DAS - SG_ UI_navRouteActive : 29|1@1+ (1,0) [0|0] "" DAS - SG_ UI_parallelAutoparkEnabled : 30|1@1+ (1,0) [0|1] "" DAS - SG_ UI_perpendicularAutoparkEnabled : 31|1@1+ (1,0) [0|1] "" DAS - SG_ UI_nextBranchDist : 32|5@1+ (10,0) [0|300] "m" DAS - SG_ UI_controlledAccess : 37|1@1+ (1,0) [0|0] "" DAS - SG_ UI_nextBranchLeftOffRamp : 38|1@1+ (1,0) [0|0] "" DAS - SG_ UI_nextBranchRightOffRamp : 39|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectLeftLane : 40|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectRightLane : 41|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectHPP : 42|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectNav : 43|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectLeftFreeSpace : 44|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectRightFreeSpace : 45|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectAutosteer : 46|1@1+ (1,0) [0|0] "" DAS - SG_ UI_rejectHandsOn : 47|1@1+ (1,0) [0|0] "" DAS - SG_ UI_acceptBottsDots : 48|1@1+ (1,0) [0|0] "" DAS - SG_ UI_autosteerRestricted : 49|1@1+ (1,0) [0|0] "" DAS - SG_ UI_pmmEnabled : 50|1@1+ (1,0) [0|0] "" DAS - SG_ UI_scaEnabled : 51|1@1+ (1,0) [0|0] "" DAS - SG_ UI_mapDataCounter : 52|4@1+ (1,0) [0|0] "" DAS - SG_ UI_mapDataChecksum : 56|8@1+ (1,0) [0|0] "" DAS - -BO_ 568 UI_driverAssistRoadSign: 8 GTW - SG_ UI_roadSign M : 0|8@1+ (1,0) [0|0] "" DAS - SG_ UI_splineLocConfidence : 40|7@1+ (1,0) [0|100] "" DAS - SG_ UI_splineID : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ UI_roadSignCounter : 52|4@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_roadSignChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_dummyData m0 : 8|1@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_stopSignStopLineDist m1 : 8|10@1+ (0.25,-8) [-8|247.5] "m" Vector__XXX - SG_ UI_stopSignStopLineConf m1 : 18|7@1+ (1,0) [0|100] "" Vector__XXX - SG_ UI_trafficLightStopLineDist m2 : 8|10@1+ (0.25,-8) [-8|247.5] "m" Vector__XXX - SG_ UI_trafficLightStopLineConf m2 : 18|7@1+ (1,0) [0|100] "" Vector__XXX - SG_ UI_baseMapSpeedLimitMPS m3 : 8|8@1+ (0.25,0) [0|63.75] "m/s" DAS - SG_ UI_bottomQrtlFleetSpeedMPS m3 : 16|8@1+ (0.25,0) [0|63.75] "m/s" DAS - SG_ UI_topQrtlFleetSpeedMPS m3 : 24|8@1+ (0.25,0) [0|63.75] "m/s" DAS - SG_ UI_meanFleetSplineSpeedMPS m4 : 8|8@1+ (0.25,0) [0|63.75] "m/s" DAS - SG_ UI_medianFleetSpeedMPS m4 : 16|8@1+ (0.25,0) [0|63.75] "m/s" DAS - SG_ UI_meanFleetSplineAccelMPS2 m4 : 24|8@1+ (0.05,-6.35) [-6.35|6.4] "m/s^2" DAS - SG_ UI_rampType m4 : 32|3@1+ (1,0) [0|7] "" DAS - SG_ UI_currSplineIdFull m5 : 8|32@1+ (1,0) [0|1] "" APP - - -BO_ 696 UI_radarMapData: 8 GTW - SG_ UI_radarTargetDx : 0|8@1+ (1,-95) [-95|160] "m" DAS - SG_ UI_radarTargetDxEnd : 8|8@1+ (1,0) [0|255] "m" DAS - SG_ UI_radarTargetTrustMap : 16|1@1+ (1,0) [0|1] "" DAS - SG_ UI_radarEnableBraking : 17|1@1+ (1,0) [0|1] "" DAS - SG_ UI_radarMapDataCounter : 52|4@1+ (1,0) [0|0] "" DAS - SG_ UI_radarMapDataChecksum : 56|8@1+ (1,0) [0|0] "" DAS - -BO_ 712 UI_roadCurvature: 8 GTW - SG_ UI_roadCurvC0 : 0|11@1- (0.02,0) [-20.48|20.46] "m" DAS - SG_ UI_roadCurvC1 : 11|10@1- (0.00075,0) [-0.384|0.38325] "1" DAS - SG_ UI_roadCurvC2 : 21|14@1- (7.5E-06,0) [-0.03072|0.03071625] "1/m" DAS - SG_ UI_roadCurvC3 : 35|13@1- (3E-08,0) [-0.00012288|0.00012285] "1/m2" DAS - SG_ UI_roadCurvRange : 48|6@1+ (4,0) [0|252] "m" DAS - SG_ UI_roadCurvHealth : 54|2@1+ (1,0) [0|0] "" DAS - SG_ UI_roadCurvChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX - -BO_ 582 UI_solarData: 5 GTW - SG_ UI_solarAzimuthAngle : 0|16@1- (1,0) [0|360] "deg" APP - SG_ UI_solarAzimuthAngleCarRef : 16|9@1- (1,0) [-180|180] "deg" APP - SG_ UI_isSunUp : 25|1@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_solarElevationAngle : 32|8@1- (1,0) [-90|90] "deg" APP - -BO_ 824 UI_status: 8 GTW - SG_ UI_touchActive : 0|1@1+ (1,0) [0|0] "" IC - SG_ UI_audioActive : 1|1@1+ (1,0) [0|0] "" IC - SG_ UI_bluetoothActive : 2|1@1+ (1,0) [0|0] "" IC - SG_ UI_cellActive : 3|1@1+ (1,0) [0|0] "" IC - SG_ UI_displayReady : 4|1@1+ (1,0) [0|0] "" IC - SG_ UI_gpsActive : 5|1@1+ (1,0) [0|0] "" IC - SG_ UI_wifiConnected : 6|1@1+ (1,0) [0|0] "" IC,APP - SG_ UI_systemActive : 7|1@1+ (1,0) [0|0] "" IC - SG_ UI_xmActive : 8|1@1+ (1,0) [0|0] "" IC - SG_ UI_displayOn : 9|1@1+ (1,0) [0|0] "" IC,APP - SG_ UI_readyForDrive : 10|1@1+ (1,0) [0|0] "" IC - SG_ UI_cellConnected : 11|1@1+ (1,0) [0|0] "" IC,APP - SG_ UI_vpnActive : 12|1@1+ (1,0) [0|0] "" IC,APP - SG_ UI_wifiActive : 13|1@1+ (1,0) [0|0] "" IC - SG_ UI_cameraActive : 14|1@1+ (1,0) [0|0] "" IC,APP - SG_ UI_usbActive : 15|1@1+ (1,0) [0|0] "" IC - SG_ UI_screenshotActive : 16|1@1+ (1,0) [0|0] "" IC,APP - SG_ UI_monitorModemPower : 17|1@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_factoryReset : 18|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ UI_cellNetworkTechnology : 20|4@1+ (1,0) [0|15] "" APP - SG_ UI_tegraCoreTemperature : 24|8@1+ (1,-64) [0|0] "deg C" IC - SG_ UI_tegraAmbientTemperature : 32|8@1+ (1,-64) [0|0] "deg C" IC - SG_ UI_googleWifiUsages : 40|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_autopilotTrial : 48|2@1+ (1,0) [0|0] "" APP - SG_ UI_cellSignalBars : 50|3@1+ (1,0) [0|7] "" APP - SG_ UI_hardwareType : 53|2@1+ (1,0) [0|3] "" APP - SG_ UI_developmentCar : 55|1@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_cellReceiverPower : 56|8@1+ (1,-128) [-128|127] "dB" APP - -BO_ 1064 UI_telemetryControl: 8 GTW - SG_ UI_TCR_enable : 0|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_moveStateStanding : 1|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_moveStateStopped : 2|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_moveStateMoving : 3|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_moveStateIndeterm : 4|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_classConstElem : 5|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_classMovingPed : 6|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_classMovingTwoWheel : 7|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_classMovingFourWheel : 8|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_classUnknown : 9|1@1+ (1,0) [0|0] "" DAS - SG_ UI_TCR_downSampleFactor : 16|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ UI_TCR_wExist : 24|5@1+ (1,0) [0|31] "" Vector__XXX - SG_ UI_TCR_vehSpeed : 32|8@1+ (1,0) [0|0] "" Vector__XXX - SG_ UI_TCR_minRCS : 40|8@1+ (0.25,-14) [-14|49.75] "dB" Vector__XXX - SG_ UI_TCR_maxDy : 48|5@1+ (0.5,0) [0|15.5] "m" Vector__XXX - SG_ UI_TCR_maxObjects : 56|5@1+ (1,0) [0|31] "" Vector__XXX - SG_ UI_TCR_maxRoadClass : 61|3@1+ (1,0) [0|7] "" Vector__XXX - -BO_ 522 BrakeMessage: 8 XXX - SG_ driverBrakeStatus : 2|2@1+ (1,0) [0|3] "" XXX - -BO_ 921 AutopilotStatus: 8 XXX - SG_ autopilotStatus : 0|4@1+ (1,0) [0|0] "" XXX - SG_ DAS_blindSpotRearLeft : 4|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_blindSpotRearRight : 6|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_fusedSpeedLimit : 8|5@1+ (5,0) [0|150] "kph/mph" XXX - SG_ DAS_suppressSpeedWarning : 13|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_summonObstacle : 14|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_summonClearedGate : 15|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_visionOnlySpeedLimit : 16|5@1+ (5,0) [0|150] "kph/mph" XXX - SG_ DAS_heaterState : 21|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_forwardCollisionWarning : 22|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_autoparkReady : 24|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_autoParked : 25|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_autoparkWaitingForBrake : 26|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_summonFwdLeashReached : 28|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_summonRvsLeashReached : 29|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_sideCollisionAvoid : 30|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_sideCollisionWarning : 32|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_sideCollisionInhibit : 34|1@1+ (1,0) [0|0] "" XXX - SG_ DAS_csaState : 35|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_laneDepartureWarning : 37|3@1+ (1,0) [0|0] "" XXX - SG_ DAS_fleetSpeedState : 40|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_autopilotHandsOnState : 42|4@1+ (1,0) [0|0] "" XXX - SG_ DAS_autoLaneChangeState : 46|5@1+ (1,0) [0|0] "" XXX - SG_ DAS_summonAvailable : 51|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_statusCounter : 52|4@1+ (1,0) [0|0] "" XXX - SG_ DAS_statusChecksum : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 905 DAS_status2: 8 XXX - SG_ DAS_accSpeedLimit : 0|10@1+ (0.2,0) [0|204.6] "mph" XXX - SG_ DAS_pmmObstacleSeverity : 10|3@1+ (1,0) [0|7] "" XXX - SG_ DAS_pmmLoggingRequest : 13|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_activationFailureStatus : 14|2@1+ (1,0) [0|1] "" XXX - SG_ DAS_pmmUltrasonicsFaultReason : 16|3@1+ (1,0) [0|7] "" XXX - SG_ DAS_pmmRadarFaultReason : 19|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_pmmSysFaultReason : 21|3@1+ (1,0) [0|7] "" XXX - SG_ DAS_pmmCameraFaultReason : 24|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_ACC_report : 26|5@1+ (1,0) [0|0] "" XXX - SG_ DAS_lssState : 31|3@1+ (1,0) [0|0] "" XXX - SG_ DAS_radarTelemetry : 34|2@1+ (1,0) [0|0] "" XXX - SG_ DAS_robState : 36|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_driverInteractionLevel : 38|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_ppOffsetDesiredRamp : 40|8@1+ (0.01,-1.28) [-1.28|1.27] "m" XXX - SG_ DAS_longCollisionWarning : 48|4@1+ (1,0) [0|15] "" XXX - SG_ DAS_status2Counter : 52|4@1+ (1,0) [0|0] "" XXX - SG_ DAS_status2Checksum : 56|8@1+ (1,0) [0|0] "" XXX - -BO_ 1001 DAS_bodyControls: 8 XXX - SG_ DAS_headlightRequest : 0|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_hazardLightRequest : 2|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_wiperSpeed : 4|4@1+ (1,0) [0|15] "" XXX - SG_ DAS_turnIndicatorRequest : 8|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_highLowBeamDecision : 10|2@1+ (1,0) [0|3] "" XXX - SG_ DAS_highLowBeamOffReason : 12|3@1+ (1,0) [0|4] "" XXX - SG_ DAS_turnIndicatorRequestReason : 16|4@1+ (1,0) [0|15] "" XXX - SG_ DAS_bodyControlsCounter : 52|4@1+ (1,0) [0|15] "" XXX - SG_ DAS_bodyControlsChecksum : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 780 DriverSeat: 8 XXX - SG_ occupancyStatus : 16|3@1+ (1,0) [0|7] "" XXX - SG_ buckleStatus : 19|2@1+ (1,0) [0|3] "" XXX - -VAL_ 3 StW_Angl 16383 "SNA" ; -VAL_ 3 StW_AnglSens_Id 2 "MUST" 0 "PSBL" 1 "SELF" ; -VAL_ 3 StW_AnglSens_Stat 2 "ERR" 3 "ERR_INI" 1 "INI" 0 "OK" ; -VAL_ 3 StW_AnglSpd 16383 "SNA" ; -VAL_ 14 StW_AnglHP 16383 "SNA" ; -VAL_ 14 StW_AnglHP_Spd 16383 "SNA" ; -VAL_ 14 StW_AnglHP_Sens_Stat 3 "SNA" 2 "ERR" 1 "INI" 0 "OK" ; -VAL_ 14 StW_AnglHP_Sens_Id 3 "SNA" 2 "KOSTAL" 1 "DELPHI" 0 "TEST" ; -VAL_ 69 SpdCtrlLvr_Stat 32 "DN_1ST" 16 "UP_1ST" 8 "DN_2ND" 4 "UP_2ND" 2 "RWD" 1 "FWD" 0 "IDLE" ; -VAL_ 69 DTR_Dist_Rq 255 "SNA" 200 "ACC_DIST_7" 166 "ACC_DIST_6" 133 "ACC_DIST_5" 100 "ACC_DIST_4" 66 "ACC_DIST_3" 33 "ACC_DIST_2" 0 "ACC_DIST_1" ; -VAL_ 69 TurnIndLvr_Stat 3 "SNA" 2 "RIGHT" 1 "LEFT" 0 "IDLE" ; -VAL_ 69 HiBmLvr_Stat 3 "SNA" 2 "HIBM_FLSH_ON_PSD" 1 "HIBM_ON_PSD" 0 "IDLE" ; -VAL_ 69 WprWashSw_Psd 3 "SNA" 2 "WASH" 1 "TIPWIPE" 0 "NPSD" ; -VAL_ 69 WprWash_R_Sw_Posn_V2 3 "SNA" 2 "WASH" 1 "INTERVAL" 0 "OFF" ; -VAL_ 69 StW_Lvr_Stat 4 "STW_BACK" 3 "STW_FWD" 2 "STW_DOWN" 1 "STW_UP" 0 "NPSD" ; -VAL_ 69 StW_Cond_Psd 3 "SNA" 2 "DOWN" 1 "UP" 0 "NPSD" ; -VAL_ 69 HrnSw_Psd 3 "SNA" 2 "NDEF2" 1 "PSD" 0 "NPSD" ; -VAL_ 69 StW_Sw00_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 69 StW_Sw01_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 69 StW_Sw03_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 69 StW_Sw04_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 69 WprSw6Posn 7 "SNA" 6 "STAGE2" 5 "STAGE1" 4 "INTERVAL4" 3 "INTERVAL3" 2 "INTERVAL2" 1 "INTERVAL1" 0 "OFF" ; -VAL_ 257 GTW_epasControlType 0 "WITHOUT" 1 "WITH_ANGLE" 3 "WITH_BOTH" 2 "WITH_TORQUE" ; -VAL_ 109 StW_Sw_Stat3 7 "SNA" 6 "NDEF6" 5 "NDEF5" 4 "NDEF4" 3 "PLUS_MINUS" 2 "MINUS" 1 "PLUS" 0 "NPSD" ; -VAL_ 109 MsgTxmtId 3 "NDEF3" 2 "NDEF2" 1 "SCCM" 0 "EWM" ; -VAL_ 109 TSL_RND_Posn_StW 15 "SNA" 8 "D" 6 "INI" 4 "N_DOWN" 2 "N_UP" 1 "R" 0 "IDLE" ; -VAL_ 109 TSL_P_Psd_StW 3 "SNA" 2 "INI" 1 "PSD" 0 "IDLE" ; -VAL_ 257 GTW_epasEmergencyOn 1 "EMERGENCY_POWER" 0 "NONE" ; -VAL_ 257 GTW_epasLDWEnabled 1 "ALLOWED" 0 "INHIBITED" ; -VAL_ 257 GTW_epasPowerMode 0 "DRIVE_OFF" 1 "DRIVE_ON" 3 "LOAD_SHED" 2 "SHUTTING_DOWN" 15 "SNA" ; -VAL_ 257 GTW_epasTuneRequest 1 "DM_COMFORT" 3 "DM_SPORT" 2 "DM_STANDARD" 0 "FAIL_SAFE_DEFAULT" 4 "RWD_COMFORT" 6 "RWD_SPORT" 5 "RWD_STANDARD" 7 "SNA" ; -VAL_ 264 DI_torqueDriver -4096 "SNA" ; -VAL_ 264 DI_torqueMotor -4096 "SNA" ; -VAL_ 264 DI_soptState 7 "SOPT_TEST_SNA" 4 "SOPT_TEST_NOT_RUN" 3 "SOPT_TEST_PASSED" 2 "SOPT_TEST_FAILED" 1 "SOPT_TEST_IN_PROGRESS" 0 "SOPT_PRE_TEST" ; -VAL_ 264 DI_motorRPM -32768 "SNA" ; -VAL_ 264 DI_pedalPos 255 "SNA" ; -VAL_ 280 DI_torqueEstimate -2048 "SNA" ; -VAL_ 280 DI_gear 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; -VAL_ 280 DI_brakePedal 1 "Applied" 0 "Not_applied" ; -VAL_ 280 DI_vehicleSpeed 4095 "SNA" ; -VAL_ 280 DI_gearRequest 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; -VAL_ 280 DI_torqueInterfaceFailure 1 "TORQUE_INTERFACE_FAILED" 0 "TORQUE_INTERFACE_NORMAL" ; -VAL_ 280 DI_brakePedalState 3 "SNA" 2 "INVALID" 1 "ON" 0 "OFF" ; -VAL_ 280 DI_epbParkRequest 1 "Park_requested" 0 "No_request" ; -VAL_ 280 DI_epbInterfaceReady 1 "EPB_INTERFACE_READY" 0 "EPB_INTERFACE_NOT_READY" ; -VAL_ 309 ESP_absBrakeEvent 1 "ACTIVE" 0 "NOT_ACTIVE" ; -VAL_ 309 ESP_brakeDiscWipingActive 1 "ACTIVE" 0 "INACTIVE" ; -VAL_ 309 ESP_brakeLamp 0 "OFF" 1 "ON" ; -VAL_ 309 ESP_espFaultLamp 0 "OFF" 1 "ON" ; -VAL_ 309 ESP_espLampFlash 1 "FLASH" 0 "OFF" ; -VAL_ 309 ESP_hillStartAssistActive 1 "ACTIVE" 0 "INACTIVE" 2 "NOT_AVAILABLE" 3 "SNA" ; -VAL_ 309 ESP_absFaultLamp 0 "OFF" 1 "ON" ; -VAL_ 309 ESP_espOffLamp 0 "OFF" 1 "ON" ; -VAL_ 309 ESP_stabilityControlSts 2 "ENGAGED" 3 "FAULTED" 5 "INIT" 4 "NOT_CONFIGURED" 0 "OFF" 1 "ON" ; -VAL_ 309 ESP_tcLampFlash 1 "FLASH" 0 "OFF" ; -VAL_ 568 UI_mapSpeedLimit 31 "SNA" 30 "UNLIMITED" 29 "LESS_OR_EQ_160" 28 "LESS_OR_EQ_150" 27 "LESS_OR_EQ_140" 26 "LESS_OR_EQ_130" 25 "LESS_OR_EQ_120" 24 "LESS_OR_EQ_115" 23 "LESS_OR_EQ_110" 22 "LESS_OR_EQ_105" 21 "LESS_OR_EQ_100" 20 "LESS_OR_EQ_95" 19 "LESS_OR_EQ_90" 18 "LESS_OR_EQ_85" 17 "LESS_OR_EQ_80" 16 "LESS_OR_EQ_75" 15 "LESS_OR_EQ_70" 14 "LESS_OR_EQ_65" 13 "LESS_OR_EQ_60" 12 "LESS_OR_EQ_55" 11 "LESS_OR_EQ_50" 10 "LESS_OR_EQ_45" 9 "LESS_OR_EQ_40" 8 "LESS_OR_EQ_35" 7 "LESS_OR_EQ_30" 6 "LESS_OR_EQ_25" 5 "LESS_OR_EQ_20" 4 "LESS_OR_EQ_15" 3 "LESS_OR_EQ_10" 2 "LESS_OR_EQ_7" 1 "LESS_OR_EQ_5" 0 "UNKNOWN" ; -VAL_ 569 DAS_leftLineUsage 3 "BLACKLISTED" 2 "FUSED" 1 "AVAILABLE" 0 "REJECTED_UNAVAILABLE" ; -VAL_ 569 DAS_rightLineUsage 3 "BLACKLISTED" 2 "FUSED" 1 "AVAILABLE" 0 "REJECTED_UNAVAILABLE" ; -VAL_ 569 DAS_leftFork 3 "LEFT_FORK_UNAVAILABLE" 2 "LEFT_FORK_SELECTED" 1 "LEFT_FORK_AVAILABLE" 0 "LEFT_FORK_NONE" ; -VAL_ 569 DAS_rightFork 3 "RIGHT_FORK_UNAVAILABLE" 2 "RIGHT_FORK_SELECTED" 1 "RIGHT_FORK_AVAILABLE" 0 "RIGHT_FORK_NONE" ; -VAL_ 521 DAS_locMode 3 "DAS_LOC_DRIVERLESS" 2 "DAS_LOC_RESTRICTED" 1 "DAS_LOC_NORMAL" 0 "DAS_LOC_OFF" ; -VAL_ 521 DAS_locState 7 "DAS_LOC_FAULT_SNA" 6 "DAS_LOC_AEB_ACTIVE" 2 "DAS_LOC_CANCEL_SILENT" 1 "DAS_LOC_CANCEL_GENERIC" 0 "DAS_LOC_HEALTHY" ; -VAL_ 521 DAS_locRequest 4 "DAS_RQ_PARK" 3 "DAS_RQ_HOLD" 2 "DAS_RQ_BACKWARD" 1 "DAS_RQ_FORWARD" 0 "DAS_RQ_IDLE" ; -VAL_ 521 DAS_locJerkMin 255 "SNA" ; -VAL_ 521 DAS_locJerkMax 255 "SNA" ; -VAL_ 521 DAS_locSpeed 2047 "SNA" ; -VAL_ 521 DAS_locAccelMin 511 "SNA" ; -VAL_ 521 DAS_locAccelMax 511 "SNA" ; -VAL_ 522 driverBrakeStatus 2 "APPLIED" 1 "NOT_APPLIED" ; -VAL_ 760 UI_mapSpeedLimitUnits 1 "KPH" 0 "MPH" ; -VAL_ 760 UI_userSpeedOffsetUnits 1 "KPH" 0 "MPH" ; -VAL_ 643 AirTemp_Insd 255 "SNA" ; -VAL_ 643 AirTemp_Outsd 254 "INIT" 255 "SNA" ; -VAL_ 643 Bckl_Sw_RL_Stat_SAM_R 2 "FLT" 1 "NOT" 0 "OK" 3 "SNA" ; -VAL_ 643 Bckl_Sw_RM_Stat_SAM_R 2 "FLT" 1 "NOT" 0 "OK" 3 "SNA" ; -VAL_ 643 Bckl_Sw_RR_Stat_SAM_R 2 "FLT" 1 "NOT" 0 "OK" 3 "SNA" ; -VAL_ 643 DL_RLtch_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; -VAL_ 643 DrRLtch_FL_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; -VAL_ 643 DrRLtch_FR_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; -VAL_ 643 DrRLtch_RL_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; -VAL_ 643 DrRLtch_RR_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; -VAL_ 643 EngHd_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; -VAL_ 643 LgtSens_Night 0 "DAY" 1 "NIGHT" ; -VAL_ 643 MPkBrk_Stat 1 "ENGG" 0 "RELS" ; -VAL_ 643 RevGr_Engg 0 "DISENGG" 1 "ENGG" 2 "NDEF2" 3 "SNA" ; -VAL_ 643 StW_Cond_Stat 3 "BLINK" 1 "NDEF1" 0 "OFF" 2 "ON" ; -VAL_ 643 Trlr_Stat 2 "NDEF2" 0 "NONE" 1 "OK" 3 "SNA" ; -VAL_ 697 DAS_setSpeed 4095 "SNA" ; -VAL_ 697 DAS_accState 15 "FAULT_SNA" 13 "ACC_CANCEL_GENERIC_SILENT" 11 "APC_SELFPARK_START" 10 "APC_UNPARK_COMPLETE" 9 "APC_PAUSE" 8 "APC_ABORT" 7 "APC_COMPLETE" 6 "APC_FORWARD" 5 "APC_BACKWARD" 4 "ACC_ON" 3 "ACC_HOLD" 0 "ACC_CANCEL_GENERIC" ; -VAL_ 697 DAS_aebEvent 3 "AEB_SNA" 2 "AEB_FAULT" 1 "AEB_ACTIVE" 0 "AEB_NOT_ACTIVE" ; -VAL_ 697 DAS_jerkMin 511 "SNA" ; -VAL_ 697 DAS_jerkMax 255 "SNA" ; -VAL_ 697 DAS_accelMin 511 "SNA" ; -VAL_ 697 DAS_accelMax 511 "SNA" ; -VAL_ 780 occupancyStatus 1 "OCCUPIED" 0 "UNOCCUPIED" ; -VAL_ 780 buckleStatus 1 "LATCHED" 0 "UNLATCHED" ; -VAL_ 792 BOOT_STATE 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; -VAL_ 792 CERRD 1 "CAN error detect" 0 "no Can error detected" ; -VAL_ 792 DAY 1 "Init" 0 "SNA" ; -VAL_ 792 DOOR_STATE_FL 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; -VAL_ 792 DOOR_STATE_FR 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; -VAL_ 792 DOOR_STATE_FrontTrunk 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; -VAL_ 792 DOOR_STATE_RL 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; -VAL_ 792 DOOR_STATE_RR 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; -VAL_ 792 GTW_updateInProgress 1 "IN_PROGRESS" 2 "IN_PROGRESS_NOT_USED" 3 "IN_PROGRESS_SNA" 0 "NOT_IN_PROGRESS" ; -VAL_ 792 Hour 30 "Init" 31 "SNA" ; -VAL_ 792 MCU_factoryMode 1 "FACTORY_MODE" 0 "NORMAL_MODE" ; -VAL_ 792 MCU_transportModeOn 0 "NORMAL_MODE" ; -VAL_ 792 MINUTE 62 "Init" 63 "SNA" ; -VAL_ 792 MONTH 1 "Init" 15 "SNA" ; -VAL_ 792 SECOND 62 "Init" 63 "SNA" ; -VAL_ 792 YEAR 126 "Init" 127 "SNA" ; -VAL_ 872 DI_aebState 2 "ENABLED" 4 "FAULT" 7 "SNA" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; -VAL_ 872 DI_analogSpeed 4095 "SNA" ; -VAL_ 872 DI_cruiseState 2 "ENABLED" 5 "FAULT" 0 "OFF" 4 "OVERRIDE" 7 "PRE_CANCEL" 6 "PRE_FAULT" 1 "STANDBY" 3 "STANDSTILL" ; -VAL_ 872 DI_digitalSpeed 255 "SNA" ; -VAL_ 872 DI_immobilizerState 2 "AUTHENTICATING" 3 "DISARMED" 6 "FAULT" 4 "IDLE" 0 "INIT_SNA" 1 "REQUEST" 5 "RESET" ; -VAL_ 872 DI_speedUnits 1 "KPH" 0 "MPH" ; -VAL_ 872 DI_state 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; -VAL_ 872 DI_systemState 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; -VAL_ 872 DI_vehicleHoldState 2 "BLEND_IN" 4 "BLEND_OUT" 6 "FAULT" 7 "INIT" 5 "PARK" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; -VAL_ 880 EPAS_currentTuneMode 1 "DM_COMFORT" 3 "DM_SPORT" 2 "DM_STANDARD" 0 "FAIL_SAFE_DEFAULT" 4 "RWD_COMFORT" 6 "RWD_SPORT" 5 "RWD_STANDARD" 7 "UNAVAILABLE" ; -VAL_ 880 EPAS_eacErrorCode 14 "EAC_ERROR_EPB_INHIBIT" 3 "EAC_ERROR_HANDS_ON" 7 "EAC_ERROR_HIGH_ANGLE_RATE_REQ" 9 "EAC_ERROR_HIGH_ANGLE_RATE_SAFETY" 6 "EAC_ERROR_HIGH_ANGLE_REQ" 8 "EAC_ERROR_HIGH_ANGLE_SAFETY" 10 "EAC_ERROR_HIGH_MMOT_SAFETY" 11 "EAC_ERROR_HIGH_TORSION_SAFETY" 0 "EAC_ERROR_IDLE" 12 "EAC_ERROR_LOW_ASSIST" 2 "EAC_ERROR_MAX_SPEED" 1 "EAC_ERROR_MIN_SPEED" 13 "EAC_ERROR_PINION_VEL_DIFF" 4 "EAC_ERROR_TMP_FAULT" 5 "EAR_ERROR_MAX_STEER_DELTA" 15 "SNA" ; -VAL_ 880 EPAS_eacStatus 2 "EAC_ACTIVE" 1 "EAC_AVAILABLE" 3 "EAC_FAULT" 0 "EAC_INHIBITED" 4 "SNA" ; -VAL_ 880 EPAS_handsOnLevel 0 "0" 1 "1" 2 "2" 3 "3" ; -VAL_ 880 EPAS_steeringFault 1 "FAULT" 0 "NO_FAULT" ; -VAL_ 880 EPAS_steeringRackForce 1022 "NOT_IN_SPEC" 1023 "SNA" ; -VAL_ 880 EPAS_steeringReduced 0 "NORMAL_ASSIST" 1 "REDUCED_ASSIST" ; -VAL_ 880 EPAS_torsionBarTorque 0 "SEE_SPECIFICATION" 4095 "SNA" 4094 "UNDEFINABLE_DATA" ; -VAL_ 904 MCU_clusterReadyForDrive 0 "NO_SNA" 1 "YES" ; -VAL_ 905 DAS_accSpeedLimit 1023 "SNA" 0 "NONE" ; -VAL_ 905 DAS_pmmObstacleSeverity 7 "PMM_SNA" 6 "PMM_ACCEL_LIMIT" 5 "PMM_CRASH_FRONT" 4 "PMM_CRASH_REAR" 3 "PMM_BRAKE_REQUEST" 2 "PMM_IMMINENT_FRONT" 1 "PMM_IMMINENT_REAR" 0 "PMM_NONE" ; -VAL_ 905 DAS_pmmLoggingRequest 1 "TRUE" 0 "FALSE" ; -VAL_ 905 DAS_activationFailureStatus 2 "LC_ACTIVATION_FAILED_2" 1 "LC_ACTIVATION_FAILED_1" 0 "LC_ACTIVATION_IDLE" ; -VAL_ 905 DAS_pmmUltrasonicsFaultReason 4 "PMM_ULTRASONICS_INVALID_MIA" 3 "PMM_ULTRASONICS_BLOCKED_BOTH" 2 "PMM_ULTRASONICS_BLOCKED_REAR" 1 "PMM_ULTRASONICS_BLOCKED_FRONT" 0 "PMM_ULTRASONICS_NO_FAULT" ; -VAL_ 905 DAS_pmmRadarFaultReason 2 "PMM_RADAR_INVALID_MIA" 1 "PMM_RADAR_BLOCKED_FRONT" 0 "PMM_RADAR_NO_FAULT" ; -VAL_ 905 DAS_pmmSysFaultReason 7 "PMM_FAULT_BRAKE_PEDAL_INHIBIT" 6 "PMM_FAULT_ROAD_TYPE" 5 "PMM_FAULT_DISABLED_BY_USER" 4 "PMM_FAULT_STEERING_ANGLE_RATE" 3 "PMM_FAULT_DI_FAULT" 2 "PMM_FAULT_SPEED" 1 "PMM_FAULT_DAS_DISABLED" 0 "PMM_FAULT_NONE" ; -VAL_ 905 DAS_pmmCameraFaultReason 2 "PMM_CAMERA_INVALID_MIA" 1 "PMM_CAMERA_BLOCKED_FRONT" 0 "PMM_CAMERA_NO_FAULT" ; -VAL_ 905 DAS_ACC_report 24 "ACC_REPORT_BEHAVIOR_REPORT" 23 "ACC_REPORT_CAMERA_ONLY" 22 "ACC_REPORT_RADAR_OBJ_FIVE" 21 "ACC_REPORT_CIPV_CUTTING_OUT" 20 "ACC_REPORT_MCVLR_IN_PATH" 19 "ACC_REPORT_MCVLR_DPP" 18 "ACC_REPORT_FLEET_SPEEDS" 17 "ACC_REPORT_TARGET_MCP" 16 "ACC_REPORT_RADAR_OBJ_TWO" 15 "ACC_REPORT_RADAR_OBJ_ONE" 14 "ACC_REPORT_LC_EXTERNAL_STATE_ACTIVE_RESTRICTED" 13 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTED" 12 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTING" 11 "ACC_REPORT_LC_HANDS_ON_REQD_STRUCK_OUT" 10 "ACC_REPORT_CSA" 9 "ACC_REPORT_TARGET_TYPE_FAULT" 8 "ACC_REPORT_TARGET_TYPE_IPSO" 7 "ACC_REPORT_TARGET_TYPE_TRAFFIC_LIGHT" 6 "ACC_REPORT_TARGET_TYPE_STOP_SIGN" 5 "ACC_REPORT_TARGET_CUTIN" 4 "ACC_REPORT_TARGET_MCVR" 3 "ACC_REPORT_TARGET_MCVL" 2 "ACC_REPORT_TARGET_IN_FRONT_OF_CIPV" 1 "ACC_REPORT_TARGET_CIPV" 0 "ACC_REPORT_TARGET_NONE" ; -VAL_ 905 DAS_lssState 7 "LSS_STATE_OFF" 6 "LSS_STATE_ABORT" 5 "LSS_STATE_BLINDSPOT" 4 "LSS_STATE_MONITOR" 3 "LSS_STATE_ELK" 2 "LSS_STATE_LKA" 1 "LSS_STATE_LDW" 0 "LSS_STATE_FAULT" ; -VAL_ 905 DAS_radarTelemetry 2 "RADAR_TELEMETRY_URGENT" 1 "RADAR_TELEMETRY_NORMAL" 0 "RADAR_TELEMETRY_IDLE" ; -VAL_ 905 DAS_robState 3 "ROB_STATE_MAPLESS" 2 "ROB_STATE_ACTIVE" 1 "ROB_STATE_MEASURE" 0 "ROB_STATE_INHIBITED" ; -VAL_ 905 DAS_driverInteractionLevel 2 "CONTINUED_DRIVER_NOT_INTERACTING" 1 "DRIVER_NOT_INTERACTING" 0 "DRIVER_INTERACTING" ; -VAL_ 905 DAS_ppOffsetDesiredRamp 128 "PP_NO_OFFSET" ; -VAL_ 905 DAS_longCollisionWarning 15 "FCM_LONG_COLLISION_WARNING_SNA" 12 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV2" 11 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR2" 10 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR" 9 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL2" 8 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL" 7 "FCM_LONG_COLLISION_WARNING_VEHICLE_CUTIN" 6 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV" 5 "FCM_LONG_COLLISION_WARNING_TFL_STOPLINE" 4 "FCM_LONG_COLLISION_WARNING_STOPSIGN_STOPLINE" 3 "FCM_LONG_COLLISION_WARNING_IPSO" 2 "FCM_LONG_COLLISION_WARNING_PEDESTRIAN" 1 "FCM_LONG_COLLISION_WARNING_VEHICLE_UNKNOWN" 0 "FCM_LONG_COLLISION_WARNING_NONE" ; -VAL_ 921 autopilotStatus 5 "ACTIVE_NAVIGATE_ON_AUTOPILOT" 4 "ACTIVE_2" 3 "ACTIVE_1" 2 "AVAILABLE" 1 "UNAVAILABLE" 0 "DISABLED" ; -VAL_ 921 DAS_blindSpotRearLeft 3 "SNA" 2 "WARNING_LEVEL_2" 1 "WARNING_LEVEL_1" 0 "NO_WARNING" ; -VAL_ 921 DAS_blindSpotRearRight 3 "SNA" 2 "WARNING_LEVEL_2" 1 "WARNING_LEVEL_1" 0 "NO_WARNING" ; -VAL_ 921 DAS_fusedSpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; -VAL_ 921 DAS_suppressSpeedWarning 1 "Suppress_Speed_Warning" 0 "Do_Not_Suppress" ; -VAL_ 921 DAS_visionOnlySpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; -VAL_ 921 DAS_heaterState 1 "HEATER_ON" 0 "HEATER_OFF_SNA" ; -VAL_ 921 DAS_forwardCollisionWarning 3 "SNA" 1 "FORWARD_COLLISION_WARNING" 0 "NONE" ; -VAL_ 921 DAS_autoparkReady 1 "AUTOPARK_READY" 0 "AUTOPARK_UNAVAILABLE" ; -VAL_ 921 DAS_sideCollisionAvoid 3 "SNA" 2 "AVOID_RIGHT" 1 "AVOID_LEFT" 0 "NONE" ; -VAL_ 921 DAS_sideCollisionWarning 3 "WARN_LEFT_RIGHT" 2 "WARN_RIGHT" 1 "WARN_LEFT" 0 "NONE" ; -VAL_ 921 DAS_sideCollisionInhibit 1 "INHIBIT" 0 "NO_INHIBIT" ; -VAL_ 921 DAS_csaState 3 "CSA_EXTERNAL_STATE_HOLD" 2 "CSA_EXTERNAL_STATE_ENABLE" 1 "CSA_EXTERNAL_STATE_AVAILABLE" 0 "CSA_EXTERNAL_STATE_UNAVAILABLE" ; -VAL_ 921 DAS_laneDepartureWarning 5 "SNA" 4 "RIGHT_WARNING_SEVERE" 3 "LEFT_WARNING_SEVERE" 2 "RIGHT_WARNING" 1 "LEFT_WARNING" 0 "NONE" ; -VAL_ 921 DAS_fleetSpeedState 3 "FLEETSPEED_HOLD" 2 "FLEETSPEED_ACTIVE" 1 "FLEETSPEED_AVAILABLE" 0 "FLEETSPEED_UNAVAILABLE" ; -VAL_ 921 DAS_autopilotHandsOnState 15 "LC_HANDS_ON_SNA" 8 "LC_HANDS_ON_SUSPENDED" 7 "LC_HANDS_ON_REQD_STRUCK_OUT" 5 "LC_HANDS_ON_REQD_CHIME_2" 4 "LC_HANDS_ON_REQD_CHIME_1" 3 "LC_HANDS_ON_REQD_VISUAL" 2 "LC_HANDS_ON_REQD_NOT_DETECTED" 1 "LC_HANDS_ON_REQD_DETECTED" 0 "LC_HANDS_ON_NOT_REQD" ; -VAL_ 921 DAS_autoLaneChangeState 31 "ALC_SNA" 30 "ALC_ABORT_MISSION_PLAN_INVALID" 29 "ALC_ABORT_TIMEOUT" 28 "ALC_WAITING_HANDS_ON" 27 "ALC_BLOCKED_LANE_TYPE_R" 26 "ALC_BLOCKED_LANE_TYPE_L" 25 "ALC_BLOCKED_VEH_TTC_AND_USS_R" 24 "ALC_BLOCKED_VEH_TTC_R" 23 "ALC_BLOCKED_VEH_TTC_AND_USS_L" 22 "ALC_BLOCKED_VEH_TTC_L" 21 "ALC_UNAVAILABLE_SOLID_LANE_LINE" 20 "ALC_ABORT_OTHER_REASON" 19 "ALC_ABORT_BLINKER_TURNED_OFF" 18 "ALC_ABORT_LC_HEALTH_BAD" 17 "ALC_ABORT_POOR_VIEW_RANGE" 16 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_R" 15 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_L" 14 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_R" 13 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_L" 12 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_R" 11 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_L" 10 "ALC_IN_PROGRESS_R" 9 "ALC_IN_PROGRESS_L" 8 "ALC_AVAILABLE_BOTH" 7 "ALC_AVAILABLE_ONLY_R" 6 "ALC_AVAILABLE_ONLY_L" 5 "ALC_UNAVAILABLE_VEHICLE_SPEED" 4 "ALC_UNAVAILABLE_EXITING_HIGHWAY" 3 "ALC_UNAVAILABLE_TP_FOLLOW" 2 "ALC_UNAVAILABLE_SONICS_INVALID" 1 "ALC_UNAVAILABLE_NO_LANES" 0 "ALC_UNAVAILABLE_DISABLED" ; -VAL_ 1001 DAS_headlightRequest 3 "DAS_HEADLIGHT_REQUEST_INVALID" 1 "DAS_HEADLIGHT_REQUEST_ON" 0 "DAS_HEADLIGHT_REQUEST_OFF" ; -VAL_ 1001 DAS_hazardLightRequest 3 "DAS_REQUEST_HAZARDS_SNA" 2 "DAS_REQUEST_HAZARDS_UNUSED" 1 "DAS_REQUEST_HAZARDS_ON" 0 "DAS_REQUEST_HAZARDS_OFF" ; -VAL_ 1001 DAS_wiperSpeed 15 "DAS_WIPER_SPEED_INVALID" 14 "DAS_WIPER_SPEED_14" 13 "DAS_WIPER_SPEED_13" 12 "DAS_WIPER_SPEED_12" 11 "DAS_WIPER_SPEED_11" 10 "DAS_WIPER_SPEED_10" 9 "DAS_WIPER_SPEED_9" 8 "DAS_WIPER_SPEED_8" 7 "DAS_WIPER_SPEED_7" 6 "DAS_WIPER_SPEED_6" 5 "DAS_WIPER_SPEED_5" 4 "DAS_WIPER_SPEED_4" 3 "DAS_WIPER_SPEED_3" 2 "DAS_WIPER_SPEED_2" 1 "DAS_WIPER_SPEED_1" 0 "DAS_WIPER_SPEED_OFF" ; -VAL_ 1001 DAS_turnIndicatorRequest 3 "DAS_TURN_INDICATOR_CANCEL" 2 "DAS_TURN_INDICATOR_RIGHT" 1 "DAS_TURN_INDICATOR_LEFT" 0 "DAS_TURN_INDICATOR_NONE" ; -VAL_ 1001 DAS_highLowBeamDecision 3 "DAS_HIGH_BEAM_SNA" 2 "DAS_HIGH_BEAM_ON" 1 "DAS_HIGH_BEAM_OFF" 0 "DAS_HIGH_BEAM_UNDECIDED" ; -VAL_ 1001 DAS_highLowBeamOffReason 5 "HIGH_BEAM_OFF_REASON_SNA" 4 "HIGH_BEAM_OFF_REASON_HEAD_LIGHT" 3 "HIGH_BEAM_OFF_REASON_AMBIENT_LIGHT" 2 "HIGH_BEAM_OFF_REASON_MOVING_RADAR_TARGET" 1 "HIGH_BEAM_OFF_REASON_MOVING_VISION_TARGET" 0 "HIGH_BEAM_ON" ; -VAL_ 1001 DAS_turnIndicatorRequestReason 6 "DAS_ACTIVE_COMMANDED_LANE_CHANGE" 5 "DAS_CANCEL_FORK" 4 "DAS_CANCEL_LANE_CHANGE" 3 "DAS_ACTIVE_FORK" 2 "DAS_ACTIVE_SPEED_LANE_CHANGE" 1 "DAS_ACTIVE_NAV_LANE_CHANGE" 0 "DAS_NONE" ; -VAL_ 1160 DAS_steeringAngleRequest 16384 "ZERO_ANGLE" ; -VAL_ 1160 DAS_steeringControlType 1 "ANGLE_CONTROL" 3 "DISABLED" 0 "NONE" 2 "RESERVED" ; -VAL_ 1160 DAS_steeringHapticRequest 1 "ACTIVE" 0 "IDLE" ; - - diff --git a/opendbc_repo/opendbc/dbc/tesla_model3_party.dbc b/opendbc_repo/opendbc/dbc/tesla_model3_party.dbc deleted file mode 100644 index 2f7b67a0c4..0000000000 --- a/opendbc_repo/opendbc/dbc/tesla_model3_party.dbc +++ /dev/null @@ -1,429 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: CH DIPF DIPR ETH FC HVI HVS PARTY SDCV VEH VIRT - - -BO_ 905 DAS_status2: 8 PARTY - SG_ DAS_status2Checksum : 56|8@1+ (1,0) [0|255] "" aps - SG_ DAS_status2Counter : 52|4@1+ (1,0) [0|15] "" aps - SG_ DAS_longCollisionWarning : 48|4@1+ (1,0) [0|15] "" aps - SG_ DAS_ppOffsetDesiredRamp : 40|8@1+ (0.01,-1.28) [-1.28|1.27] "m" aps - SG_ DAS_driverInteractionLevel : 38|2@1+ (1,0) [0|2] "" aps - SG_ DAS_robState : 36|2@1+ (1,0) [0|3] "" aps - SG_ DAS_radarTelemetry : 34|2@1+ (1,0) [0|2] "" aps - SG_ DAS_lssState : 31|3@1+ (1,0) [0|7] "" aps - SG_ DAS_ACC_report : 26|5@1+ (1,0) [0|24] "" aps - SG_ DAS_pmmCameraFaultReason : 24|2@1+ (1,0) [0|2] "" aps - SG_ DAS_pmmSysFaultReason : 21|3@1+ (1,0) [0|7] "" aps - SG_ DAS_pmmRadarFaultReason : 19|2@1+ (1,0) [0|2] "" aps - SG_ DAS_pmmUltrasonicsFaultReason : 16|3@1+ (1,0) [0|4] "" aps - SG_ DAS_activationFailureStatus : 14|2@1+ (1,0) [0|2] "" aps - SG_ DAS_pmmLoggingRequest : 13|1@1+ (1,0) [0|1] "" aps - SG_ DAS_pmmObstacleSeverity : 10|3@1+ (1,0) [0|7] "" aps - SG_ DAS_accSpeedLimit : 0|10@1+ (0.4,0) [0|204.6] "mph" aps - -BO_ 264 DI_torque: 8 PARTY - SG_ DI_axleSpeed : 40|16@1- (0.1,0.0) [-2750|2750] "RPM" epas3s - SG_ DI_torqueActual : 27|13@1- (2,0) [-7500|7500] "Nm" X - SG_ DI_torqueCommand : 12|13@1- (2,0) [-7500|7500] "Nm" X - SG_ DI_torqueCounter : 8|4@1+ (1,0) [0|15] "" epas3s - SG_ DI_torqueChecksum : 0|8@1+ (1,0) [0|255] "" epas3s - -BO_ 585 SCCM_leftStalk: 3 PARTY - SG_ SCCM_leftStalkReserved1 : 19|5@1+ (1,0) [0|31] "" X - SG_ SCCM_turnIndicatorStalkStatus : 16|3@1+ (1,0) [0|5] "" park - SG_ SCCM_washWipeButtonStatus : 14|2@1+ (1,0) [0|3] "" X - SG_ SCCM_highBeamStalkStatus : 12|2@1+ (1,0) [0|3] "" X - SG_ SCCM_leftStalkCounter : 8|4@1+ (1,0) [0|15] "" X - SG_ SCCM_leftStalkCrc : 0|8@1+ (1,0) [0|255] "" X - -BO_ 280 DI_systemStatus: 8 PARTY - SG_ DI_trackModeState : 48|2@1+ (1,0) [0|2] "" X - SG_ DI_keepAliveRequest : 47|1@1+ (1,0) [0|1] "" X - SG_ DI_proximity : 46|1@1+ (1,0) [0|1] "" X - SG_ DI_epbRequest : 44|2@1+ (1,0) [0|2] "" X - SG_ DI_tractionControlMode : 40|3@1+ (1,0) [0|5] "" X - SG_ DI_accelPedalPos : 32|8@1+ (0.4,0) [0|100] "%" X - SG_ DI_immobilizerState : 27|3@1+ (1,0) [0|6] "" X - SG_ DI_regenLight : 26|1@1+ (1,0) [0|1] "" X - SG_ DI_gear : 21|3@1+ (1,0) [0|7] "" park - SG_ DI_brakePedalState : 19|2@1+ (1,0) [0|2] "" X - SG_ DI_systemState : 16|3@1+ (1,0) [0|5] "" X - SG_ DI_systemStatusCounter : 8|4@1+ (1,0) [0|15] "" X - SG_ DI_systemStatusChecksum : 0|8@1+ (1,0) [0|255] "" X - -BO_ 697 DAS_control: 8 PARTY - SG_ DAS_controlChecksum : 56|8@1+ (1,0) [0|255] "" aps - SG_ DAS_controlCounter : 53|3@1+ (1,0) [0|7] "" aps - SG_ DAS_accelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" aps - SG_ DAS_accelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" aps - SG_ DAS_jerkMax : 27|8@1+ (0.034,0) [0|8.67] "m/s^3" aps - SG_ DAS_jerkMin : 18|9@1+ (0.018,-9.1) [-9.1|0.097999999999999] "m/s^3" aps - SG_ DAS_aebEvent : 16|2@1+ (1,0) [0|3] "" aps - SG_ DAS_accState : 12|4@1+ (1,0) [0|15] "" aps - SG_ DAS_setSpeed : 0|12@1+ (0.1,0) [0|409.4] "kph" aps - -BO_ 341 ESP_B: 8 PARTY - SG_ ESP_wheelRotationChecksum : 56|8@1+ (1,0) [0|255] "" app - SG_ ESP_wheelRotationCounter : 52|4@1+ (1,0) [0|15] "" app - SG_ ESP_vehicleSpeed : 42|10@1+ (0.5,0) [0|511] "kph" app - SG_ ESP_vehicleStandstillSts : 41|1@1+ (1,0) [0|1] "" park - SG_ ESP_wheelSpeedsQF : 40|1@1+ (1,0) [0|1] "" epas3s - SG_ ESP_WheelRotationFrL : 38|2@1+ (1,0) [0|3] "" aps - SG_ ESP_WheelRotationFrR : 36|2@1+ (1,0) [0|3] "" aps - SG_ ESP_WheelRotationReL : 34|2@1+ (1,0) [0|3] "" aps - SG_ ESP_WheelRotationReR : 32|2@1+ (1,0) [0|3] "" aps - SG_ ESP_wheelPulseCountReR : 24|8@1+ (1,0) [0|254] "1" das - SG_ ESP_wheelPulseCountReL : 16|8@1+ (1,0) [0|254] "1" das - SG_ ESP_wheelPulseCountFrR : 8|8@1+ (1,0) [0|254] "1" app - SG_ ESP_wheelPulseCountFrL : 0|8@1+ (1,0) [0|254] "1" app - -BO_ 969 APS_status: 4 PARTY - SG_ APS_statusCounter : 22|4@1+ (1,0) [0|15] "" X - SG_ APS_apbGpioState : 20|2@1+ (1,0) [0|3] "" gtw - SG_ APS_apbStatusMonitorState : 16|3@1+ (1,0) [0|7] "" gtw - SG_ APS_switchState : 15|1@1+ (1,0) [0|1] "" X - SG_ APS_eacInternalState : 12|3@1+ (1,0) [0|7] "" gtw - SG_ APS_appGpioState : 10|2@1+ (1,0) [0|3] "" gtw - SG_ APS_canMaster : 8|2@1+ (1,0) [0|3] "" gtw - SG_ APS_vehBehaviorState : 4|3@1+ (1,0) [0|7] "" gtw - SG_ APS_appStatusMonitorState : 0|3@1+ (1,0) [0|7] "" gtw - -BO_ 925 IBST_status: 5 PARTY - SG_ IBST_sInputRodDriver : 21|12@1+ (0.015625,-5) [-5|47] "mm" gtw - SG_ IBST_internalState : 18|3@1+ (1,0) [0|6] "" gtw - SG_ IBST_driverBrakeApply : 16|2@1+ (1,0) [0|3] "" gtw - SG_ IBST_iBoosterStatus : 12|3@1+ (1,0) [0|6] "" gtw - SG_ IBST_statusCounter : 8|4@1+ (1,0) [0|15] "" X - SG_ IBST_statusChecksum : 0|8@1+ (1,0) [0|255] "" X - -BO_ 880 EPAS3S_sysStatus: 8 PARTY - SG_ EPAS3S_sysStatusChecksum : 63|8@0+ (1,0) [0|255] "" park - SG_ EPAS3S_sysStatusCounter : 51|4@0+ (1,0) [0|15] "" gtw - SG_ EPAS3S_eacStatus : 55|3@0+ (1,0) [0|7] "" das - SG_ EPAS3S_internalSAS : 37|14@0+ (0.1,-819.2) [-819.2|819] "deg" das - SG_ EPAS3S_handsOnLevel : 39|2@0+ (1,0) [0|3] "" das - SG_ EPAS3S_torsionBarTorque : 19|12@0+ (0.01,-20.5) [-20.5|20.45] "Nm" das - SG_ EPAS3S_eacErrorCode : 23|4@0+ (1,0) [0|15] "" das - SG_ EPAS3S_steeringRackForce : 1|10@0+ (50,-25575) [-25575|25575] "N" gtw - SG_ EPAS3S_steeringFault : 2|1@0+ (1,0) [0|1] "" das - SG_ EPAS3S_steeringReduced : 3|1@0+ (1,0) [0|1] "" das - SG_ EPAS3S_internalSASQF : 4|1@0+ (1,0) [0|1] "" gtw - SG_ EPAS3S_currentTuneMode : 7|3@0+ (1,0) [0|5] "" gtw - -BO_ 637 APS_eacMonitor: 3 PARTY - SG_ APS_eacAllow : 0|2@1+ (1,0) [0|0] "" X - SG_ APS_eacMonitorChecksum : 16|8@1+ (1,0) [0|0] "" X - SG_ APS_eacMonitorCounter : 8|4@1+ (1,0) [0|0] "" X - -BO_ 545 VCFRONT_LVPowerState: 8 CH - SG_ VCFRONT_LVPowerStateChecksum : 56|8@1+ (1,0) [0|255] "" ibst - SG_ VCFRONT_LVPowerStateCounter : 52|4@1+ (1,0) [0|15] "" ibst - SG_ VCFRONT_uiAudioLVState m0 : 50|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_uiHiCurrentLVState m0 : 48|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_vcrightHiCurrentLVState m0 : 46|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_vcleftHiCurrentLVState m0 : 44|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_ocsLVRequest m0 : 42|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_oilPumpRearLVRequest m0 : 40|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_oilPumpFrontLVState m0 : 38|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_disLVState m0 : 36|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_diLVRequest m0 : 34|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_das2HighCurrentLVState m0 : 32|2@1+ (1,0) [0|3] "" das - SG_ VCFRONT_das1HighCurrentLVState m0 : 30|2@1+ (1,0) [0|3] "" das - SG_ VCFRONT_amplifierLVRequest m0 : 28|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_tunerLVRequest m0 : 26|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_iBoosterLVState m0 : 24|2@1+ (1,0) [0|3] "" ibst - SG_ VCFRONT_rcmLVRequest m0 : 22|2@1+ (1,0) [0|3] "" rcm - SG_ VCFRONT_tpmsLVRequest m0 : 20|2@1+ (1,0) [0|3] "" tpms - SG_ VCFRONT_sccmLVRequest m0 : 18|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_pcsLVState m1 : 16|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_ptcLVRequest m0 : 16|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_hvacCompLVState m0 : 14|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_tasLVState m1 : 14|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_hvcLVRequest m1 : 12|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_radcLVState m0 : 12|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_epasLVState m1 : 10|2@1+ (1,0) [0|3] "" epas3s - SG_ VCFRONT_espLVState m0 : 10|2@1+ (1,0) [0|3] "" ibst - SG_ VCFRONT_parkLVState m0 : 8|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_cpLVRequest m1 : 8|2@1+ (1,0) [0|3] "" X - SG_ VCFRONT_vehiclePowerState : 5|2@1+ (1,0) [0|3] "" park - SG_ VCFRONT_LVPowerStateIndex M : 0|5@1+ (1,0) [0|1] "" epas3s - -BO_ 599 DI_speed: 8 PARTY - SG_ DI_uiSpeedUnits : 32|1@1+ (1,0) [0|1] "" das - SG_ DI_uiSpeed : 24|8@1+ (1,0) [0|254] "" das - SG_ DI_vehicleSpeed : 12|12@1+ (0.08,-40) [-40|285] "kph" park - SG_ DI_speedCounter : 8|4@1+ (1,0) [0|15] "" park - SG_ DI_speedChecksum : 0|8@1+ (1,0) [0|255] "" park - -BO_ 605 XXX_longitudinalRelated: 6 XXX - -BO_ 1160 DAS_steeringControl: 4 PARTY - SG_ DAS_steeringControlChecksum : 31|8@0+ (1,0) [0|255] "" aps - SG_ DAS_steeringControlCounter : 19|4@0+ (1,0) [0|15] "" aps - SG_ DAS_steeringControlType : 23|2@0+ (1,0) [0|3] "" aps - SG_ DAS_steeringAngleRequest : 6|15@0+ (0.1,-1638.35) [-1638.35|1638.35] "deg" aps - SG_ DAS_steeringHapticRequest : 7|1@0+ (1,0) [0|1] "" aps - -BO_ 297 SCCM_steeringAngleSensor: 8 PARTY - SG_ SCCM_steeringAngleSensorReservd3 : 56|8@1+ (1,0) [0|255] "" X - SG_ SCCM_steeringAngleSensorReservd2 : 48|8@1+ (1,0) [0|255] "" X - SG_ SCCM_steeringAngleSensorReservd1 : 46|2@1+ (1,0) [0|3] "" X - SG_ SCCM_steeringAngleSpeed : 32|14@1+ (0.5,-4096) [-4096|4095.5] "deg/s" park - SG_ SCCM_steeringAngleValidity : 30|2@1+ (1,0) [0|3] "" park - SG_ SCCM_steeringAngle : 16|14@1+ (0.1,-819.2) [-819.2|819] "deg" epas3s - SG_ SCCM_steeringAngleSensorStatus : 14|2@1+ (1,0) [0|3] "" epas3s - SG_ SCCM_supplierID : 12|2@1+ (1,0) [0|3] "" park - SG_ SCCM_steeringAngleCounter : 8|4@1+ (1,0) [0|15] "" epas3s - SG_ SCCM_steeringAngleCrc : 0|8@1+ (1,0) [0|255] "" epas3s - -BO_ 646 DI_state: 8 ETH - SG_ DI_summonInPanic : 48|1@1+ (1,0) [0|0] "" X - SG_ DI_rollPreventionState : 45|3@1+ (1,0) [0|0] "" X - SG_ DI_vehicleHoldState : 42|3@1+ (1,0) [0|0] "" X - SG_ DI_pmmStatus : 40|2@1+ (1,0) [0|0] "" X - SG_ DI_aebState : 37|3@1+ (1,0) [0|0] "" X - SG_ DI_autopilotRequest : 36|1@1+ (1,0) [0|0] "" X - SG_ DI_parkBrakeState : 32|4@1+ (1,0) [0|0] "" X - SG_ DI_autoparkState : 25|4@1+ (1,0) [0|0] "" X - SG_ DI_speedUnits : 24|1@1+ (1,0) [0|0] "" X - SG_ DI_digitalSpeed : 15|9@1+ (0.5,0) [0|0] "speed" X - SG_ DI_cruiseState : 12|3@1+ (1,0) [0|0] "" X - SG_ DI_locStatusCounter : 8|4@1+ (1,0) [0|0] "" X - SG_ DI_locStatusChecksum : 0|8@1+ (1,0) [0|0] "" X - -BO_ 659 DAS_settings: 8 XXX - SG_ DAS_driverSteeringWeight : 1|2@0+ (1,0) [0|255] "" XXX - SG_ DAS_slipStart : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DAS_offRoadAssist : 3|2@1+ (1,0) [0|63] "" XXX - SG_ DAS_distanceUnits : 13|1@1+ (1,0) [0|255] "" XXX - SG_ DAS_aebEnabled : 18|1@0+ (1,0) [0|255] "" XXX - SG_ DAS_adaptiveHeadlights : 22|1@1+ (1,0) [0|31] "" XXX - SG_ DAS_autosteerEnabled2 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ DAS_fcwEnabled : 34|1@0+ (1,0) [0|1] "" XXX - SG_ DAS_fcwSensitivity : 37|2@0+ (1,0) [0|63] "" XXX - SG_ DAS_autosteerEnabled : 38|1@0+ (1,0) [0|1] "" XXX - SG_ DAS_obstacleAwareAcceleration : 42|1@0+ (1,0) [0|1] "" XXX - SG_ DAS_driverAccelerationMode : 44|1@1+ (1,0) [0|127] "" XXX - SG_ DAS_settingCounter : 52|4@1+ (1,0) [0|15] "" XXX - SG_ DAS_settingChecksum : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 785 UI_warning: 7 XXX - SG_ buckleStatus : 13|1@0+ (1,0) [0|1] "" XXX - SG_ scrollWheelPressed : 21|1@0+ (1,0) [0|1] "" XXX - SG_ leftBlinkerOn : 22|1@0+ (1,0) [0|1] "" XXX - SG_ rightBlinkerOn : 23|1@0+ (1,0) [0|1] "" XXX - SG_ leftBlinkerBlinking : 25|2@0+ (1,0) [0|3] "" XXX - SG_ rightBlinkerBlinking : 26|2@1+ (1,0) [0|15] "" XXX - SG_ anyDoorOpen : 28|1@0+ (1,0) [0|1] "" XXX - SG_ wiperSettings : 39|8@0+ (1,0) [0|255] "" XXX - SG_ highBeam : 50|1@0+ (1,0) [0|1] "" XXX - -BO_ 923 DAS_status: 8 PARTY - SG_ DAS_statusChecksum : 56|8@1+ (1,0) [0|255] "" aps - SG_ DAS_statusCounter : 52|4@1+ (1,0) [0|15] "" aps - SG_ DAS_summonAvailable : 51|1@1+ (1,0) [0|1] "" aps - SG_ DAS_autoLaneChangeState : 46|5@1+ (1,0) [0|31] "" aps - SG_ DAS_autopilotHandsOnState : 42|4@1+ (1,0) [0|15] "" aps - SG_ DAS_fleetSpeedState : 40|2@1+ (1,0) [0|3] "" aps - SG_ DAS_laneDepartureWarning : 37|3@1+ (1,0) [0|5] "" aps - SG_ DAS_csaState : 35|2@1+ (1,0) [0|3] "" aps - SG_ DAS_sideCollisionInhibit : 34|1@1+ (1,0) [0|1] "" aps - SG_ DAS_sideCollisionWarning : 32|2@1+ (1,0) [0|3] "" aps - SG_ DAS_sideCollisionAvoid : 30|2@1+ (1,0) [0|3] "" aps - SG_ DAS_summonRvsLeashReached : 29|1@1+ (1,0) [0|1] "" aps - SG_ DAS_summonFwdLeashReached : 28|1@1+ (1,0) [0|1] "" aps - SG_ DAS_autoparkWaitingForBrake : 26|1@1+ (1,0) [0|1] "" gtw - SG_ DAS_autoParked : 25|1@1+ (1,0) [0|1] "" aps - SG_ DAS_autoparkReady : 24|1@1+ (1,0) [0|1] "" aps - SG_ DAS_forwardCollisionWarning : 22|2@1+ (1,0) [0|3] "" aps - SG_ DAS_heaterState : 21|1@1+ (1,0) [0|1] "" gtw - SG_ DAS_visionOnlySpeedLimit : 16|5@1+ (5,0) [0|150] "kph/mph" aps - SG_ DAS_summonClearedGate : 15|1@1+ (1,0) [0|1] "" aps - SG_ DAS_summonObstacle : 14|1@1+ (1,0) [0|1] "" aps - SG_ DAS_suppressSpeedWarning : 13|1@1+ (1,0) [0|1] "" aps - SG_ DAS_fusedSpeedLimit : 8|5@1+ (5,0) [0|150] "kph/mph" aps - SG_ DAS_blindSpotRearRight : 6|2@1+ (1,0) [0|3] "" aps - SG_ DAS_blindSpotRearLeft : 4|2@1+ (1,0) [0|3] "" aps - SG_ DAS_autopilotState : 0|4@1+ (1,0) [0|15] "" aps - - -CM_ BO_ 605 "Bytes change when toggling between FSD and AP, as well as Traffic Light and Stop Sign Control in TACC"; - -CM_ SG_ 659 DAS_autosteerEnabled "1 if Autosteer or FSD is enabled, 0 otherwise"; -CM_ SG_ 785 leftBlinkerOn "only describes stalk position if half pressed without auto-cancel blinkers. otherwise acts as expected"; -CM_ SG_ 785 rightBlinkerOn "only describes stalk position if half pressed without auto-cancel blinkers. otherwise acts as expected"; -CM_ SG_ 785 scrollWheelPressed "captures either scroll wheel left, right or down press"; - -VAL_ 545 VCFRONT_uiAudioLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_uiHiCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_vcrightHiCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_vcleftHiCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_ocsLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_oilPumpRearLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_oilPumpFrontLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_disLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_diLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_das2HighCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_das1HighCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_amplifierLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_tunerLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_iBoosterLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_rcmLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_tpmsLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_sccmLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_pcsLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_ptcLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_hvacCompLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_tasLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_hvcLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_radcLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_epasLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_espLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_parkLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_cpLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; -VAL_ 545 VCFRONT_vehiclePowerState 3 "VEHICLE_POWER_STATE_DRIVE" 1 "VEHICLE_POWER_STATE_CONDITIONING" 2 "VEHICLE_POWER_STATE_ACCESSORY" 0 "VEHICLE_POWER_STATE_OFF" ; -VAL_ 545 VCFRONT_LVPowerStateIndex 0 "Mux0" 1 "Mux1" ; -VAL_ 905 DAS_longCollisionWarning 7 "FCM_LONG_COLLISION_WARNING_VEHICLE_CUTIN" 0 "FCM_LONG_COLLISION_WARNING_NONE" 4 "FCM_LONG_COLLISION_WARNING_STOPSIGN_STOPLINE" 9 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL2" 15 "FCM_LONG_COLLISION_WARNING_SNA" 8 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL" 5 "FCM_LONG_COLLISION_WARNING_TFL_STOPLINE" 2 "FCM_LONG_COLLISION_WARNING_PEDESTRIAN" 12 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV2" 6 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV" 10 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR" 3 "FCM_LONG_COLLISION_WARNING_IPSO" 1 "FCM_LONG_COLLISION_WARNING_VEHICLE_UNKNOWN" 11 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR2" ; -VAL_ 905 DAS_ppOffsetDesiredRamp 128 "PP_NO_OFFSET" ; -VAL_ 905 DAS_driverInteractionLevel 0 "DRIVER_INTERACTING" 1 "DRIVER_NOT_INTERACTING" 2 "CONTINUED_DRIVER_NOT_INTERACTING" ; -VAL_ 905 DAS_robState 0 "ROB_STATE_INHIBITED" 2 "ROB_STATE_ACTIVE" 3 "ROB_STATE_MAPLESS" 1 "ROB_STATE_MEASURE" ; -VAL_ 905 DAS_radarTelemetry 0 "RADAR_TELEMETRY_IDLE" 1 "RADAR_TELEMETRY_NORMAL" 2 "RADAR_TELEMETRY_URGENT" ; -VAL_ 905 DAS_lssState 7 "LSS_STATE_OFF" 1 "LSS_STATE_LDW" 4 "LSS_STATE_MONITOR" 2 "LSS_STATE_LKA" 3 "LSS_STATE_ELK" 0 "LSS_STATE_FAULT" 5 "LSS_STATE_BLINDSPOT" 6 "LSS_STATE_ABORT" ; -VAL_ 905 DAS_ACC_report 12 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTING" 17 "ACC_REPORT_TARGET_MCP" 11 "ACC_REPORT_LC_HANDS_ON_REQD_STRUCK_OUT" 19 "ACC_REPORT_MCVLR_DPP" 1 "ACC_REPORT_TARGET_CIPV" 15 "ACC_REPORT_RADAR_OBJ_ONE" 16 "ACC_REPORT_RADAR_OBJ_TWO" 14 "ACC_REPORT_LC_EXTERNAL_STATE_ACTIVE_RESTRICTED" 4 "ACC_REPORT_TARGET_MCVR" 20 "ACC_REPORT_MCVLR_IN_PATH" 10 "ACC_REPORT_CSA" 5 "ACC_REPORT_TARGET_CUTIN" 9 "ACC_REPORT_TARGET_TYPE_FAULT" 7 "ACC_REPORT_TARGET_TYPE_TRAFFIC_LIGHT" 6 "ACC_REPORT_TARGET_TYPE_STOP_SIGN" 24 "ACC_REPORT_BEHAVIOR_REPORT" 18 "ACC_REPORT_FLEET_SPEEDS" 2 "ACC_REPORT_TARGET_IN_FRONT_OF_CIPV" 23 "ACC_REPORT_CAMERA_ONLY" 3 "ACC_REPORT_TARGET_MCVL" 22 "ACC_REPORT_RADAR_OBJ_FIVE" 0 "ACC_REPORT_TARGET_NONE" 8 "ACC_REPORT_TARGET_TYPE_IPSO" 21 "ACC_REPORT_CIPV_CUTTING_OUT" 13 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTED" ; -VAL_ 905 DAS_pmmCameraFaultReason 1 "PMM_CAMERA_BLOCKED_FRONT" 2 "PMM_CAMERA_INVALID_MIA" 0 "PMM_CAMERA_NO_FAULT" ; -VAL_ 905 DAS_pmmSysFaultReason 4 "PMM_FAULT_STEERING_ANGLE_RATE" 6 "PMM_FAULT_ROAD_TYPE" 5 "PMM_FAULT_DISABLED_BY_USER" 0 "PMM_FAULT_NONE" 1 "PMM_FAULT_DAS_DISABLED" 3 "PMM_FAULT_DI_FAULT" 2 "PMM_FAULT_SPEED" 7 "PMM_FAULT_BRAKE_PEDAL_INHIBIT" ; -VAL_ 905 DAS_pmmRadarFaultReason 2 "PMM_RADAR_INVALID_MIA" 1 "PMM_RADAR_BLOCKED_FRONT" 0 "PMM_RADAR_NO_FAULT" ; -VAL_ 905 DAS_pmmUltrasonicsFaultReason 2 "PMM_ULTRASONICS_BLOCKED_REAR" 0 "PMM_ULTRASONICS_NO_FAULT" 1 "PMM_ULTRASONICS_BLOCKED_FRONT" 3 "PMM_ULTRASONICS_BLOCKED_BOTH" 4 "PMM_ULTRASONICS_INVALID_MIA" ; -VAL_ 905 DAS_activationFailureStatus 0 "LC_ACTIVATION_IDLE" 2 "LC_ACTIVATION_FAILED_2" 1 "LC_ACTIVATION_FAILED_1" ; -VAL_ 905 DAS_pmmLoggingRequest 0 "FALSE" 1 "TRUE" ; -VAL_ 905 DAS_pmmObstacleSeverity 5 "PMM_CRASH_FRONT" 0 "PMM_NONE" 2 "PMM_IMMINENT_FRONT" 4 "PMM_CRASH_REAR" 1 "PMM_IMMINENT_REAR" 6 "PMM_ACCEL_LIMIT" 7 "PMM_SNA" 3 "PMM_BRAKE_REQUEST" ; -VAL_ 905 DAS_accSpeedLimit 1023 "SNA" 0 "NONE" ; -VAL_ 264 DI_axleSpeed -32768 "SNA" ; -VAL_ 264 DI_torqueActual -4096 "SNA" ; -VAL_ 264 DI_torqueCommand -4096 "SNA" ; -VAL_ 585 SCCM_turnIndicatorStalkStatus 3 "DOWN_1" 5 "SNA" 0 "IDLE" 1 "UP_1" 4 "DOWN_2" 2 "UP_2" ; -VAL_ 585 SCCM_washWipeButtonStatus 3 "SNA" 0 "NOT_PRESSED" 2 "2ND_DETENT" 1 "1ST_DETENT" ; -VAL_ 585 SCCM_highBeamStalkStatus 3 "SNA" 0 "IDLE" 1 "PULL" 2 "PUSH" ; -VAL_ 280 DI_trackModeState 0 "TRACK_MODE_UNAVAILABLE" 1 "TRACK_MODE_AVAILABLE" 2 "TRACK_MODE_ON" ; -VAL_ 280 DI_keepAliveRequest 1 "KEEP_ALIVE" 0 "NO_REQUEST" ; -VAL_ 280 DI_epbRequest 0 "DI_EPBREQUEST_NO_REQUEST" 1 "DI_EPBREQUEST_PARK" 2 "DI_EPBREQUEST_UNPARK" ; -VAL_ 280 DI_tractionControlMode 0 "TC_NORMAL" 1 "TC_SLIP_START" 4 "TC_ROLLS_MODE" 2 "TC_DEV_MODE_1" 5 "TC_DYNO_MODE" 3 "TC_DEV_MODE_2" ; -VAL_ 280 DI_accelPedalPos 255 "SNA" ; -VAL_ 280 DI_immobilizerState 2 "DI_IMM_STATE_AUTHENTICATING" 0 "DI_IMM_STATE_INIT_SNA" 3 "DI_IMM_STATE_DISARMED" 4 "DI_IMM_STATE_IDLE" 6 "DI_IMM_STATE_FAULT" 1 "DI_IMM_STATE_REQUEST" 5 "DI_IMM_STATE_RESET" ; -VAL_ 280 DI_gear 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" 7 "DI_GEAR_SNA" 2 "DI_GEAR_R" 3 "DI_GEAR_N" 4 "DI_GEAR_D" ; -VAL_ 280 DI_brakePedalState 2 "INVALID" 0 "OFF" 1 "ON" ; -VAL_ 280 DI_systemState 5 "DI_SYS_ENABLE" 1 "DI_SYS_IDLE" 2 "DI_SYS_STANDBY" 0 "DI_SYS_UNAVAILABLE" 3 "DI_SYS_FAULT" 4 "DI_SYS_ABORT" ; -VAL_ 697 DAS_accelMax 511 "SNA" ; -VAL_ 697 DAS_accelMin 511 "SNA" ; -VAL_ 697 DAS_jerkMax 255 "SNA" ; -VAL_ 697 DAS_jerkMin 511 "SNA" ; -VAL_ 697 DAS_aebEvent 2 "AEB_FAULT" 0 "AEB_NOT_ACTIVE" 3 "AEB_SNA" 1 "AEB_ACTIVE" ; -VAL_ 697 DAS_accState 4 "ACC_ON" 9 "APC_PAUSE" 14 "ACC_CANCEL_OUT_OF_CALIBRATION" 10 "APC_UNPARK_COMPLETE" 6 "APC_FORWARD" 3 "ACC_HOLD" 2 "ACC_CANCEL_RADAR_BLIND" 7 "APC_COMPLETE" 1 "ACC_CANCEL_CAMERA_BLIND" 8 "APC_ABORT" 13 "ACC_CANCEL_GENERIC_SILENT" 5 "APC_BACKWARD" 11 "APC_SELFPARK_START" 0 "ACC_CANCEL_GENERIC" 12 "ACC_CANCEL_PATH_NOT_CLEAR" 15 "FAULT_SNA" ; -VAL_ 697 DAS_setSpeed 4095 "SNA" ; -VAL_ 341 ESP_vehicleSpeed 1023 "ESP_VEHICLE_SPEED_SNA" ; -VAL_ 341 ESP_vehicleStandstillSts 1 "STANDSTILL" 0 "NOT_STANDSTILL" ; -VAL_ 341 ESP_wheelSpeedsQF 0 "ONE_OR_MORE_WSS_INVALID" 1 "ALL_WSS_VALID" ; -VAL_ 341 ESP_WheelRotationFrL 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; -VAL_ 341 ESP_WheelRotationFrR 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; -VAL_ 341 ESP_WheelRotationReL 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; -VAL_ 341 ESP_WheelRotationReR 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; -VAL_ 341 ESP_wheelPulseCountReR 255 "SNA" ; -VAL_ 341 ESP_wheelPulseCountReL 255 "SNA" ; -VAL_ 341 ESP_wheelPulseCountFrR 255 "SNA" ; -VAL_ 341 ESP_wheelPulseCountFrL 255 "SNA" ; -VAL_ 969 APS_apbGpioState 0 "AP_GPIO_STATE_PWR_DOWN_REBOOT" 3 "AP_GPIO_STATE_HEALTHY" 1 "AP_GPIO_STATE_DISABLED" 2 "AP_GPIO_STATE_CRITICAL" ; -VAL_ 969 APS_apbStatusMonitorState 1 "STATUS_MONITOR_STATE_PWR_OFF" 2 "STATUS_MONITOR_STATE_INIT" 7 "STATUS_MONITOR_NUM_STATES" 0 "STATUS_MONITOR_STATE_UNKNOWN" 4 "STATUS_MONITOR_STATE_CRITICAL" 6 "STATUS_MONITOR_STATE_RECOVERY" 5 "STATUS_MONITOR_STATE_SHUTTING_DOWN" 3 "STATUS_MONITOR_STATE_NOMINAL" ; -VAL_ 969 APS_eacInternalState 1 "APS_EAC_STATE_MOMENTARY" 3 "APS_EAC_STATE_AUTOPARK" 5 "APS_EAC_STATE_OVERRIDE" 4 "APS_EAC_STATE_INHIBIT" 0 "APS_EAC_STATE_INIT" 2 "APS_EAC_STATE_CONTINUOUS" 7 "APS_EAC_NUM_STATES" 6 "APS_EAC_STATE_LSS" ; -VAL_ 969 APS_appGpioState 0 "AP_GPIO_STATE_PWR_DOWN_REBOOT" 3 "AP_GPIO_STATE_HEALTHY" 1 "AP_GPIO_STATE_DISABLED" 2 "AP_GPIO_STATE_CRITICAL" ; -VAL_ 969 APS_canMaster 0 "CAN_MASTER_APS" 2 "CAN_MASTER_APB" 3 "CAN_MASTER_SNA" 1 "CAN_MASTER_APP" ; -VAL_ 969 APS_vehBehaviorState 0 "VEH_BEHAVIOR_STATE_UNKNOWN" 3 "VEH_BEHAVIOR_STATE_APS_BRIDGE_APP" 1 "VEH_BEHAVIOR_STATE_APS_AVAILABLE" 5 "VEH_BEHAVIOR_STATE_APS_FAIL_SAFE" 7 "VEH_BEHAVIOR_NUM_STATES" 2 "VEH_BEHAVIOR_STATE_APS_CONTROL" 6 "VEH_BEHAVIOR_STATE_APS_OVERRIDE" 4 "VEH_BEHAVIOR_STATE_APS_BRIDGE_APB" ; -VAL_ 969 APS_appStatusMonitorState 1 "STATUS_MONITOR_STATE_PWR_OFF" 2 "STATUS_MONITOR_STATE_INIT" 7 "STATUS_MONITOR_NUM_STATES" 0 "STATUS_MONITOR_STATE_UNKNOWN" 4 "STATUS_MONITOR_STATE_CRITICAL" 6 "STATUS_MONITOR_STATE_RECOVERY" 5 "STATUS_MONITOR_STATE_SHUTTING_DOWN" 3 "STATUS_MONITOR_STATE_NOMINAL" ; -VAL_ 925 IBST_internalState 5 "TRANSITION_TO_IDLE" 0 "NO_MODE_ACTIVE" 4 "DIAGNOSTIC" 6 "POST_DRIVE_CHECK" 1 "PRE_DRIVE_CHECK" 3 "EXTERNAL_BRAKE_REQUEST" 2 "LOCAL_BRAKE_REQUEST" ; -VAL_ 925 IBST_driverBrakeApply 1 "BRAKES_NOT_APPLIED" 2 "DRIVER_APPLYING_BRAKES" 3 "FAULT" 0 "NOT_INIT_OR_OFF" ; -VAL_ 925 IBST_iBoosterStatus 6 "IBOOSTER_ACTUATION" 4 "IBOOSTER_ACTIVE_GOOD_CHECK" 2 "IBOOSTER_FAILURE" 5 "IBOOSTER_READY" 3 "IBOOSTER_DIAGNOSTIC" 0 "IBOOSTER_OFF" 1 "IBOOSTER_INIT" ; -VAL_ 880 EPAS3S_eacStatus 7 "SNA" 2 "EAC_ACTIVE" 4 "LANE_KEEP_ASSIST" 3 "EAC_FAULT" 1 "EAC_AVAILABLE" 5 "EMERGENCY_LANE_KEEP" 0 "EAC_INHIBITED" ; -VAL_ 880 EPAS3S_handsOnLevel 1 "LEVEL_1" 0 "LEVEL_0" 3 "LEVEL_3" 2 "LEVEL_2" ; -VAL_ 880 EPAS3S_torsionBarTorque 4095 "SNA" 4094 "UNDEFINABLE_DATA" ; -VAL_ 880 EPAS3S_eacErrorCode 15 "SNA" 11 "EAC_ERROR_HIGH_TORSION_SAFETY" 4 "EAC_ERROR_TMP_FAULT" 2 "EAC_ERROR_MAX_SPEED" 7 "EAC_ERROR_HIGH_ANGLE_RATE_REQ" 0 "EAC_ERROR_IDLE" 10 "EAC_ERROR_HIGH_MMOT_SAFETY" 6 "EAC_ERROR_HIGH_ANGLE_REQ" 8 "EAC_ERROR_HIGH_ANGLE_SAFETY" 5 "EAR_ERROR_MAX_STEER_DELTA" 13 "EAC_ERROR_PINION_VEL_DIFF" 1 "EAC_ERROR_MIN_SPEED" 14 "EAC_EXTERNAL_MONITOR_INHIBIT" 12 "EAC_ERROR_LOW_ASSIST" 9 "EAC_ERROR_HIGH_ANGLE_RATE_SAFETY" 3 "EAC_ERROR_HANDS_ON" ; -VAL_ 880 EPAS3S_steeringRackForce 1023 "SNA" 1022 "NOT_IN_SPEC" ; -VAL_ 880 EPAS3S_steeringFault 0 "NO_FAULT" 1 "FAULT" ; -VAL_ 880 EPAS3S_steeringReduced 0 "NORMAL_ASSIST" 1 "REDUCED_ASSIST" ; -VAL_ 880 EPAS3S_internalSASQF 1 "IN_SPEC" 0 "UNDEFINABLE_ACCURACY" ; -VAL_ 880 EPAS3S_currentTuneMode 3 "STEERING_TUNE_RWD_COMFORT" 1 "STEERING_TUNE_DM_STANDARD" 5 "STEERING_TUNE_RWD_SPORT" 0 "STEERING_TUNE_DM_COMFORT" 4 "STEERING_TUNE_RWD_STANDARD" 2 "STEERING_TUNE_DM_SPORT" ; -VAL_ 599 DI_uiSpeedUnits 0 "DI_SPEED_MPH" 1 "DI_SPEED_KPH" ; -VAL_ 599 DI_uiSpeed 255 "DI_UI_SPEED_SNA" ; -VAL_ 599 DI_vehicleSpeed 4095 "SNA" ; -VAL_ 637 APS_eacAllow 0 "INHIBIT" 1 "ALLOW" 2 "RESERVED" 3 "SNA"; -VAL_ 1160 DAS_steeringControlType 2 "LANE_KEEP_ASSIST" 0 "NONE" 1 "ANGLE_CONTROL" 3 "EMERGENCY_LANE_KEEP" ; -VAL_ 1160 DAS_steeringAngleRequest 16384 "ZERO_ANGLE" ; -VAL_ 297 SCCM_steeringAngleValidity 3 "SNA" 2 "INIT" 0 "INVALID" 1 "VALID" ; -VAL_ 297 SCCM_steeringAngleSensorStatus 0 "OK" 1 "INIT" 2 "ERROR" 3 "ERROR_INIT" ; -VAL_ 646 DI_rollPreventionState 0 "UNAVAILABLE" 1 "STANDBY" 2 "READY" 3 "BUILD" 4 "HOLD" 5 "PARK" 6 "FAULT" 7 "INIT" ; -VAL_ 646 DI_vehicleHoldState 0 "UNAVAILABLE" 1 "STANDBY" 2 "BLEND_IN" 3 "STANDSTILL" 4 "BLEND_OUT" 5 "PARK" 6 "FAULT" 7 "INIT" ; -VAL_ 646 DI_pmmStatus 0 "INACTIVE" 1 "ACTIVE" 2 "LOGGING_ACTIVE" 3 "SNA" ; -VAL_ 646 DI_aebState 0 "UNAVAILABLE" 1 "STANDBY" 2 "ENABLED" 3 "STANDSTILL" 4 "FAULT" 7 "SNA" ; -VAL_ 646 DI_autopilotRequest 0 "IDLE" 1 "ACTIVATE" ; -VAL_ 646 DI_parkBrakeState 0 "UNAVAILABLE" 1 "RELEASED" 2 "REQUESTED" 3 "APPLIED" 4 "FAULTED" 5 "PANIC_EPB" 6 "PANIC_SKID" 7 "RELEASING" 15 "SNA" ; -VAL_ 646 DI_autoparkState 0 "UNAVAILABLE" 1 "STANDBY" 2 "STARTED" 3 "ACTIVE" 4 "COMPLETE" 5 "PAUSED" 6 "ABORTED" 7 "RESUMED" 8 "UNPARK_COMPLETE" 9 "SELFPARK_STARTED" 15 "SNA" ; -VAL_ 646 DI_speedUnits 0 "MPH" 1 "KPH" ; -VAL_ 646 DI_cruiseState 0 "UNAVAILABLE" 1 "STANDBY" 2 "ENABLED" 3 "STANDSTILL" 4 "OVERRIDE" 5 "FAULT" 6 "PRE_FAULT" 7 "PRE_CANCEL" ; -VAL_ 659 DAS_driverSteeringWeight 0 "light" 1 "standard" 2 "heavy"; -VAL_ 659 DAS_offRoadAssist 0 "disabled" 3 "enabled"; -VAL_ 659 DAS_distanceUnits 1 "miles" 0 "kilometers"; -VAL_ 659 DAS_fcwSensitivity 0 "early" 1 "medium" 2 "late" 3 "off"; -VAL_ 659 DAS_driverAccelerationMode 0 "chill" 1 "standard"; -VAL_ 785 buckleStatus 1 "LATCHED" 0 "UNLATCHED" ; -VAL_ 785 anyDoorOpen 1 "OPEN" 0 "CLOSED" ; -VAL_ 785 leftBlinkerBlinking 0 "off" 1 "blinking, off" 2 "blinking, on"; -VAL_ 785 rightBlinkerBlinking 0 "off" 1 "blinking, off" 2 "blinking, on"; -VAL_ 923 DAS_autoLaneChangeState 5 "ALC_UNAVAILABLE_VEHICLE_SPEED" 17 "ALC_ABORT_POOR_VIEW_RANGE" 23 "ALC_BLOCKED_VEH_TTC_AND_USS_L" 0 "ALC_UNAVAILABLE_DISABLED" 26 "ALC_BLOCKED_LANE_TYPE_L" 29 "ALC_ABORT_TIMEOUT" 9 "ALC_IN_PROGRESS_L" 4 "ALC_UNAVAILABLE_EXITING_HIGHWAY" 22 "ALC_BLOCKED_VEH_TTC_L" 12 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_R" 18 "ALC_ABORT_LC_HEALTH_BAD" 28 "ALC_WAITING_HANDS_ON" 8 "ALC_AVAILABLE_BOTH" 11 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_L" 3 "ALC_UNAVAILABLE_TP_FOLLOW" 2 "ALC_UNAVAILABLE_SONICS_INVALID" 21 "ALC_UNAVAILABLE_SOLID_LANE_LINE" 24 "ALC_BLOCKED_VEH_TTC_R" 1 "ALC_UNAVAILABLE_NO_LANES" 25 "ALC_BLOCKED_VEH_TTC_AND_USS_R" 30 "ALC_ABORT_MISSION_PLAN_INVALID" 27 "ALC_BLOCKED_LANE_TYPE_R" 19 "ALC_ABORT_BLINKER_TURNED_OFF" 31 "ALC_SNA" 13 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_L" 16 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_R" 6 "ALC_AVAILABLE_ONLY_L" 20 "ALC_ABORT_OTHER_REASON" 15 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_L" 7 "ALC_AVAILABLE_ONLY_R" 14 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_R" 10 "ALC_IN_PROGRESS_R" ; -VAL_ 923 DAS_autopilotHandsOnState 8 "LC_HANDS_ON_SUSPENDED" 15 "LC_HANDS_ON_SNA" 7 "LC_HANDS_ON_REQD_STRUCK_OUT" 3 "LC_HANDS_ON_REQD_VISUAL" 4 "LC_HANDS_ON_REQD_CHIME_1" 6 "LC_HANDS_ON_REQD_SLOWING" 1 "LC_HANDS_ON_REQD_DETECTED" 2 "LC_HANDS_ON_REQD_NOT_DETECTED" 5 "LC_HANDS_ON_REQD_CHIME_2" 0 "LC_HANDS_ON_NOT_REQD" ; -VAL_ 923 DAS_fleetSpeedState 0 "FLEETSPEED_UNAVAILABLE" 1 "FLEETSPEED_AVAILABLE" 2 "FLEETSPEED_ACTIVE" 3 "FLEETSPEED_HOLD" ; -VAL_ 923 DAS_laneDepartureWarning 5 "SNA" 0 "NONE" 2 "RIGHT_WARNING" 4 "RIGHT_WARNING_SEVERE" 3 "LEFT_WARNING_SEVERE" 1 "LEFT_WARNING" ; -VAL_ 923 DAS_csaState 1 "CSA_EXTERNAL_STATE_AVAILABLE" 3 "CSA_EXTERNAL_STATE_HOLD" 2 "CSA_EXTERNAL_STATE_ENABLE" 0 "CSA_EXTERNAL_STATE_UNAVAILABLE" ; -VAL_ 923 DAS_sideCollisionInhibit 0 "NO_INHIBIT" 1 "INHIBIT" ; -VAL_ 923 DAS_sideCollisionWarning 0 "NONE" 2 "WARN_RIGHT" 1 "WARN_LEFT" 3 "WARN_LEFT_RIGHT" ; -VAL_ 923 DAS_sideCollisionAvoid 3 "SNA" 0 "NONE" 1 "AVOID_LEFT" 2 "AVOID_RIGHT" ; -VAL_ 923 DAS_autoparkReady 0 "AUTOPARK_UNAVAILABLE" 1 "AUTOPARK_READY" ; -VAL_ 923 DAS_forwardCollisionWarning 3 "SNA" 0 "NONE" 1 "FORWARD_COLLISION_WARNING" ; -VAL_ 923 DAS_heaterState 0 "HEATER_OFF_SNA" 1 "HEATER_ON" ; -VAL_ 923 DAS_visionOnlySpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; -VAL_ 923 DAS_suppressSpeedWarning 1 "Suppress_Speed_Warning" 0 "Do_Not_Suppress" ; -VAL_ 923 DAS_fusedSpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; -VAL_ 923 DAS_blindSpotRearRight 3 "SNA" 0 "NO_WARNING" 1 "WARNING_LEVEL_1" 2 "WARNING_LEVEL_2" ; -VAL_ 923 DAS_blindSpotRearLeft 3 "SNA" 0 "NO_WARNING" 1 "WARNING_LEVEL_1" 2 "WARNING_LEVEL_2" ; -VAL_ 923 DAS_autopilotState 15 "SNA" 8 "ABORTING" 3 "ACTIVE_NOMINAL" 0 "DISABLED" 4 "ACTIVE_RESTRICTED" 5 "ACTIVE_NAV" 14 "FAULT" 1 "UNAVAILABLE" 9 "ABORTED" 2 "AVAILABLE" ; diff --git a/opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc b/opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc deleted file mode 100644 index 604db8fe27..0000000000 --- a/opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc +++ /dev/null @@ -1,339 +0,0 @@ -VERSION "" - - -BU_: CH DIPF DIPR ETH FC HVI HVS PARTY SDCV VEH VIRT - - -BO_ 962 VCLEFT_switchStatus: 8 VEH - SG_ VCLEFT_frontBuckleSwitch m0: 48|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_btnWindowSwPackUpLF m0: 32|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_frontSeatTrackBack m0: 8|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoDownLF m0: 35|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackDownRR m0: 46|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoUpRR m0: 45|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoDownRR m0: 47|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_rightMirrorTilt m0: 5|3@1+ (1,0) [0|4] "" vcright - SG_ VCLEFT_btnWindowSwPackUpRR m0: 44|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_frontOccupancySwitch m0: 50|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_swcRightTiltLeft m1: 8|2@1+ (1,0) [0|3] "" das - SG_ VCLEFT_rearRightOccupancySwitch m0: 58|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_btnWindowSwPackDownLF m0: 34|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoUpLF m0: 33|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_swcLeftTiltRight m1: 3|2@1+ (1,0) [0|3] "" das - SG_ VCLEFT_frontSeatBackrestForward m0: 22|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_swcRightTiltRight m1: 10|2@1+ (1,0) [0|3] "" das - SG_ VCLEFT_swcLeftScrollTicks m1: 16|6@1- (1,0) [-32|31] "" das - SG_ VCLEFT_btnWindowUpLR m1: 32|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowAutoDownLR m1: 35|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackDownRF m0: 42|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoUpRF m0: 41|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_frontSeatLumbarIn m0: 28|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_frontSeatLiftUp m0: 18|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_btnWindowSwPackDownLR m0: 38|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoUpLR m0: 37|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_frontSeatLumbarDown m0: 24|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_driverPresent m0: 4|1@1+ (1,0) [0|1] "" das - SG_ VCLEFT_frontSeatTiltDown m0: 12|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_frontSeatTrackForward m0: 10|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_rearLeftBuckleSwitch m0: 52|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_hazardButtonPressed m0: 3|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_swcRightScrollTicks m1: 24|6@1- (1,0) [-32|31] "" das - SG_ VCLEFT_swcRightPressed m1: 12|2@1+ (1,0) [0|3] "" das - SG_ VCLEFT_frontSeatLumbarOut m0: 30|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_brakePressed m0: 60|1@1+ (1,0) [0|1] "" di - SG_ VCLEFT_swcLeftTiltLeft m1: 14|2@1+ (1,0) [0|3] "" das - SG_ VCLEFT_swcLeftPressed m1: 5|2@1+ (1,0) [0|3] "" das - SG_ VCLEFT_btnWindowSwPackUpLR m0: 36|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_frontSeatTiltUp m0: 14|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_rearLeftOccupancySwitch m0: 56|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_frontSeatBackrestBack m0: 20|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoDownLR m0: 39|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_rearCenterOccupancySwitch m0: 54|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_frontSeatLumbarUp m0: 26|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_frontSeatLiftDown m0: 16|2@1+ (1,0) [0|3] "" gtw - SG_ VCLEFT_hornSwitchPressed m0: 2|1@1+ (1,0) [0|1] "" app - SG_ VCLEFT_btnWindowSwPackUpRF m0: 40|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowAutoUpLR m1: 33|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_btnWindowSwPackAutoDownRF m0: 43|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_switchStatusIndex M: 0|2@1+ (1,0) [0|2] "" X - SG_ VCLEFT_btnWindowDownLR m1: 34|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_rearHVACButtonPressed m0: 61|1@1+ (1,0) [0|1] "" gtw - -BO_ 259 VCRIGHT_doorStatus: 8 VEH - SG_ VCRIGHT_reservedForBackCompat : 28|2@1+ (1,0) [0|3] "" X - SG_ VCRIGHT_trunkLatchStatus : 56|4@1+ (1,0) [0|8] "" di - SG_ VCRIGHT_mirrorFoldState : 52|3@1+ (1,0) [0|4] "" gtw - SG_ VCRIGHT_rearLatchStatus : 4|4@1+ (1,0) [0|8] "" aps - SG_ VCRIGHT_mirrorTiltYPosition : 41|8@1+ (0.02,0) [0|5] "V" gtw - SG_ VCRIGHT_frontRelActuatorSwitch : 12|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_mirrorRecallState : 60|3@1+ (1,0) [0|5] "" gtw - SG_ VCRIGHT_frontIntSwitchPressed : 31|1@1+ (1,0) [0|1] "" aps - SG_ VCRIGHT_mirrorState : 49|3@1+ (1,0) [0|4] "" gtw - SG_ VCRIGHT_rearRelActuatorSwitch : 13|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_frontHandlePulledPersist : 30|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_mirrorTiltXPosition : 33|8@1+ (0.02,0) [0|5] "V" gtw - SG_ VCRIGHT_mirrorDipped : 63|1@1+ (1,0) [0|1] "" X - SG_ VCRIGHT_frontHandlePulled : 10|1@1+ (1,0) [0|1] "" aps - SG_ VCRIGHT_frontLatchStatus : 0|4@1+ (1,0) [0|8] "" aps - SG_ VCRIGHT_rearHandlePulled : 11|1@1+ (1,0) [0|1] "" aps - SG_ VCRIGHT_frontHandlePWM : 14|7@1+ (1,0) [0|100] "%" X - SG_ VCRIGHT_frontLatchSwitch : 8|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_rearLatchSwitch : 9|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_rearHandlePWM : 21|7@1+ (1,0) [0|100] "%" X - SG_ VCRIGHT_rearIntSwitchPressed : 32|1@1+ (1,0) [0|1] "" aps - -BO_ 585 SCCM_leftStalk: 3 VEH - SG_ SCCM_leftStalkCounter : 8|4@1+ (1,0) [0|15] "" X - SG_ SCCM_washWipeButtonStatus : 14|2@1+ (1,0) [0|3] "" das - SG_ SCCM_turnIndicatorStalkStatus : 16|3@1+ (1,0) [0|5] "" das - SG_ SCCM_leftStalkCrc : 0|8@1+ (1,0) [0|255] "" X - SG_ SCCM_leftStalkReserved1 : 19|5@1+ (1,0) [0|31] "" X - SG_ SCCM_highBeamStalkStatus : 12|2@1+ (1,0) [0|3] "" das - -BO_ 280 DI_systemStatus: 8 VEH - SG_ DI_epbRequest : 44|2@1+ (1,0) [0|2] "" epbl - SG_ DI_systemStatusCounter : 8|4@1+ (1,0) [0|15] "" X - SG_ DI_proximity : 46|1@1+ (1,0) [0|1] "" bms - SG_ DI_keepAliveRequest : 47|1@1+ (1,0) [0|1] "" bms - SG_ DI_accelPedalPos : 32|8@1+ (0.4,0) [0|100] "%" vcfront - SG_ DI_gear : 21|3@1+ (1,0) [0|7] "" gtw - SG_ DI_tractionControlMode : 40|3@1+ (1,0) [0|5] "" X - SG_ DI_trackModeState : 48|2@1+ (1,0) [0|2] "" gtw - SG_ DI_regenLight : 26|1@1+ (1,0) [0|1] "" vcleft - SG_ DI_systemState : 16|3@1+ (1,0) [0|5] "" epbl - SG_ DI_immobilizerState : 27|3@1+ (1,0) [0|6] "" X - SG_ DI_systemStatusChecksum : 0|8@1+ (1,0) [0|255] "" X - SG_ DI_brakePedalState : 19|2@1+ (1,0) [0|2] "" vcleft - -BO_ 835 VCRIGHT_status: 8 VEH - SG_ VCRIGHT_5AVoltage : 18|10@1+ (0.005443676098,0) [0|5.56888] "V" gtw - SG_ VCRIGHT_loadShedPriority : 0|8@1+ (1,0) [0|255] "" X - SG_ VCRIGHT_rearDefrostState : 11|3@1+ (1,0) [0|4] "" gtw - SG_ VCRIGHT_vbatProt : 28|12@1+ (0.005443676098,0) [0|22.29185] "V" gtw - SG_ VCRIGHT_vehiclePowerStateDBG : 8|2@1+ (1,0) [0|3] "" gtw - SG_ VCRIGHT_swEnStatus : 10|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_mirrorHeatState : 14|3@1+ (1,0) [0|4] "" X - SG_ VCRIGHT_OTAState : 17|1@1+ (1,0) [0|1] "" gtw - SG_ VCRIGHT_footwellLightCurrent : 40|12@1- (0.1,0) [-204.8|204.7] "mA" X - SG_ VCRIGHT_pcbaTemperature : 52|11@1+ (0.125,-40) [-40|150] "degC" gtw - -BO_ 553 SCCM_rightStalk: 3 VEH - SG_ SCCM_rightStalkCounter : 8|4@1+ (1,0) [0|15] "" X - SG_ SCCM_rightStalkCrc : 0|8@1+ (1,0) [0|255] "" X - SG_ SCCM_rightStalkReserved1 : 15|1@1+ (1,0) [0|1] "" X - SG_ SCCM_parkButtonStatus : 16|2@1+ (1,0) [0|3] "" das - SG_ SCCM_rightStalkReserved2 : 18|6@1+ (1,0) [0|63] "" X - SG_ SCCM_rightStalkStatus : 12|3@1+ (1,0) [0|6] "" das - -BO_ 297 SCCM_steeringAngleSensor: 8 VEH - SG_ SCCM_steeringAngleValidity : 30|2@1+ (1,0) [0|3] "" gtw - SG_ SCCM_supplierID : 12|2@1+ (1,0) [0|3] "" gtw - SG_ SCCM_steeringAngleSensorReservd1 : 46|2@1+ (1,0) [0|3] "" X - SG_ SCCM_steeringAngleCrc : 0|8@1+ (1,0) [0|255] "" gtw - SG_ SCCM_steeringAngleSensorStatus : 14|2@1+ (1,0) [0|3] "" aps - SG_ SCCM_steeringAngleSpeed : 32|14@1+ (0.5,-4096) [-4096|4095.5] "deg/s" das - SG_ SCCM_steeringAngle : 16|14@1+ (0.1,-819.2) [-819.2|819] "deg" aps - SG_ SCCM_steeringAngleSensorReservd2 : 48|8@1+ (1,0) [0|255] "" X - SG_ SCCM_steeringAngleCounter : 8|4@1+ (1,0) [0|15] "" gtw - SG_ SCCM_steeringAngleSensorReservd3 : 56|8@1+ (1,0) [0|255] "" X - -BO_ 258 VCLEFT_doorStatus: 8 VEH - SG_ VCLEFT_mirrorDipped : 61|1@1+ (1,0) [0|1] "" X - SG_ VCLEFT_frontHandlePulledPersist : 62|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_mirrorRecallState : 55|3@1+ (1,0) [0|5] "" gtw - SG_ VCLEFT_rearIntSwitchPressed : 32|1@1+ (1,0) [0|1] "" aps - SG_ VCLEFT_rearLatchSwitch : 9|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_rearHandlePWM : 24|7@1+ (1,0) [0|100] "%" X - SG_ VCLEFT_frontLatchSwitch : 8|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_frontHandlePWM : 16|7@1+ (1,0) [0|100] "%" X - SG_ VCLEFT_rearHandlePulled : 11|1@1+ (1,0) [0|1] "" aps - SG_ VCLEFT_rearLatchStatus : 4|4@1+ (1,0) [0|8] "" aps - SG_ VCLEFT_frontHandlePulled : 10|1@1+ (1,0) [0|1] "" aps - SG_ VCLEFT_mirrorTiltXPosition : 33|8@1+ (0.02,0) [0|5] "V" gtw - SG_ VCLEFT_mirrorState : 49|3@1+ (1,0) [0|4] "" gtw - SG_ VCLEFT_frontIntSwitchPressed : 31|1@1+ (1,0) [0|1] "" aps - SG_ VCLEFT_rearRelActuatorSwitch : 13|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_mirrorHeatState : 58|3@1+ (1,0) [0|4] "" X - SG_ VCLEFT_frontRelActuatorSwitch : 12|1@1+ (1,0) [0|1] "" gtw - SG_ VCLEFT_mirrorTiltYPosition : 41|8@1+ (0.02,0) [0|5] "V" gtw - SG_ VCLEFT_frontLatchStatus : 0|4@1+ (1,0) [0|8] "" aps - SG_ VCLEFT_mirrorFoldState : 52|3@1+ (1,0) [0|4] "" gtw - - -BO_ 568 STW_ACTN_RQ: 8 STW - SG_ SpdCtrlLvr_Stat : 0|6@1+ (1,0) [0|0] "" NEO - SG_ VSL_Enbl_Rq : 6|1@1+ (1,0) [0|0] "" NEO - SG_ SpdCtrlLvrStat_Inv : 7|1@1+ (1,0) [0|0] "" NEO - SG_ DTR_Dist_Rq : 8|8@1+ (1,0) [0|200] "" NEO - SG_ TurnIndLvr_Stat : 16|2@1+ (1,0) [0|0] "" NEO - SG_ HiBmLvr_Stat : 18|2@1+ (1,0) [0|0] "" NEO - SG_ WprWashSw_Psd : 20|2@1+ (1,0) [0|0] "" NEO - SG_ WprWash_R_Sw_Posn_V2 : 22|2@1+ (1,0) [0|0] "" NEO - SG_ StW_Lvr_Stat : 24|3@1+ (1,0) [0|0] "" NEO - SG_ StW_Cond_Flt : 27|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Cond_Psd : 28|2@1+ (1,0) [0|0] "" NEO - SG_ HrnSw_Psd : 30|2@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw00_Psd : 32|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw01_Psd : 33|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw02_Psd : 34|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw03_Psd : 35|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw04_Psd : 36|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw05_Psd : 37|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw06_Psd : 38|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw07_Psd : 39|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw08_Psd : 40|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw09_Psd : 41|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw10_Psd : 42|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw11_Psd : 43|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw12_Psd : 44|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw13_Psd : 45|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw14_Psd : 46|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw15_Psd : 47|1@1+ (1,0) [0|0] "" NEO - SG_ WprSw6Posn : 48|3@1+ (1,0) [0|0] "" NEO - SG_ MC_STW_ACTN_RQ : 52|4@1+ (1,0) [0|15] "" NEO - SG_ CRC_STW_ACTN_RQ : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 1001 DAS_bodyControls: 8 VEH - SG_ DAS_headlightRequest : 0|2@1+ (1,0) [0|3] "" aps - SG_ DAS_hazardLightRequest : 2|2@1+ (1,0) [0|3] "" aps - SG_ DAS_wiperSpeed : 4|4@1+ (1,0) [0|15] "" aps - SG_ DAS_turnIndicatorRequest : 8|2@1+ (1,0) [0|3] "" aps - SG_ DAS_highLowBeamDecision : 10|2@1+ (1,0) [0|3] "" aps - SG_ DAS_heaterRequest : 12|2@1+ (1,0) [0|2] "" aps - SG_ DAS_turnIndicatorRequestReason : 17|4@1+ (1,0) [0|8] "" aps - SG_ DAS_autopilotActive : 24|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_accActive : 29|1@1+ (1,0) [0|1] "" XXX - SG_ DAS_bodyControlsCounter : 52|4@1+ (1,0) [0|15] "" aps - SG_ DAS_bodyControlsChecksum : 56|8@1+ (1,0) [0|255] "" aps - -BO_ 1013 ID3F5VCFRONT_lighting: 8 VEH - SG_ VCFRONT_lowBeamsCalibrated : 62|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_lowBeamsOnForDRL : 61|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_simLatchingStalk : 59|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_highBeamSwitchActive : 58|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_parkRightStatus : 56|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_parkLeftStatus : 54|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_turnSignalRightStatus : 52|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_turnSignalLeftStatus : 50|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_sideRepeaterRightStatus : 48|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_sideRepeaterLeftStatus : 46|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_sideMarkersStatus : 44|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_fogRightStatus : 42|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_fogLeftStatus : 40|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_DRLRightStatus : 38|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_DRLLeftStatus : 36|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_highBeamRightStatus : 34|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_highBeamLeftStatus : 32|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_lowBeamRightStatus : 30|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_lowBeamLeftStatus : 28|2@1+ (1,0) [0|3] "" Receiver - SG_ VCFRONT_hazardSwitchBacklight : 27|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_seeYouHomeLightingReq : 26|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_approachLightingRequest : 25|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_courtesyLightingRequest : 24|1@1+ (1,0) [0|1] "" Receiver - SG_ VCFRONT_switchLightingBrightness : 16|8@1+ (0.5,0) [0|127] "%" Receiver - SG_ VCFRONT_ambientLightingBrightnes : 8|8@1+ (0.5,0) [0|127] "%" Receiver - SG_ VCFRONT_hazardLightRequest : 4|4@1+ (1,0) [0|8] "" Receiver - SG_ VCFRONT_indicatorRightRequest : 2|2@1+ (1,0) [0|2] "" Receiver - SG_ VCFRONT_indicatorLeftRequest : 0|2@1+ (1,0) [0|2] "" Receiver - -VAL_ 568 SpdCtrlLvr_Stat 32 "DN_1ST" 16 "UP_1ST" 8 "DN_2ND" 4 "UP_2ND" 2 "RWD" 1 "FWD" 0 "IDLE" ; -VAL_ 568 DTR_Dist_Rq 255 "SNA" 200 "ACC_DIST_7" 166 "ACC_DIST_6" 133 "ACC_DIST_5" 100 "ACC_DIST_4" 66 "ACC_DIST_3" 33 "ACC_DIST_2" 0 "ACC_DIST_1" ; -VAL_ 568 TurnIndLvr_Stat 3 "SNA" 2 "RIGHT" 1 "LEFT" 0 "IDLE" ; -VAL_ 568 HiBmLvr_Stat 3 "SNA" 2 "HIBM_FLSH_ON_PSD" 1 "HIBM_ON_PSD" 0 "IDLE" ; -VAL_ 568 WprWashSw_Psd 3 "SNA" 2 "WASH" 1 "TIPWIPE" 0 "NPSD" ; -VAL_ 568 WprWash_R_Sw_Posn_V2 3 "SNA" 2 "WASH" 1 "INTERVAL" 0 "OFF" ; -VAL_ 568 StW_Lvr_Stat 4 "STW_BACK" 3 "STW_FWD" 2 "STW_DOWN" 1 "STW_UP" 0 "NPSD" ; -VAL_ 568 StW_Cond_Psd 3 "SNA" 2 "DOWN" 1 "UP" 0 "NPSD" ; -VAL_ 568 HrnSw_Psd 3 "SNA" 2 "NDEF2" 1 "PSD" 0 "NPSD" ; -VAL_ 568 StW_Sw00_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 StW_Sw01_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 StW_Sw03_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 StW_Sw04_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 WprSw6Posn 7 "SNA" 6 "STAGE2" 5 "STAGE1" 4 "INTERVAL4" 3 "INTERVAL3" 2 "INTERVAL2" 1 "INTERVAL1" 0 "OFF" ; - -VAL_ 1001 DAS_headlightRequest 3 "DAS_HEADLIGHT_REQUEST_INVALID" 1 "DAS_HEADLIGHT_REQUEST_ON" 0 "DAS_HEADLIGHT_REQUEST_OFF"; -VAL_ 1001 DAS_hazardLightRequest 3 "DAS_REQUEST_HAZARDS_SNA" 2 "DAS_REQUEST_HAZARDS_UNUSED" 0 "DAS_REQUEST_HAZARDS_OFF" 1 "DAS_REQUEST_HAZARDS_ON"; -VAL_ 1001 DAS_wiperSpeed 3 "DAS_WIPER_SPEED_3" 12 "DAS_WIPER_SPEED_12" 8 "DAS_WIPER_SPEED_8" 14 "DAS_WIPER_SPEED_14" 5 "DAS_WIPER_SPEED_5" 13 "DAS_WIPER_SPEED_13" 2 "DAS_WIPER_SPEED_2" 0 "DAS_WIPER_SPEED_OFF" 4 "DAS_WIPER_SPEED_4" 1 "DAS_WIPER_SPEED_1" 15 "DAS_WIPER_SPEED_INVALID" 10 "DAS_WIPER_SPEED_10" 11 "DAS_WIPER_SPEED_11" 7 "DAS_WIPER_SPEED_7" 9 "DAS_WIPER_SPEED_9" 6 "DAS_WIPER_SPEED_6"; -VAL_ 1001 DAS_turnIndicatorRequest 0 "DAS_TURN_INDICATOR_NONE" 2 "DAS_TURN_INDICATOR_RIGHT" 3 "DAS_TURN_INDICATOR_CANCEL" 1 "DAS_TURN_INDICATOR_LEFT"; -VAL_ 1001 DAS_highLowBeamDecision 2 "DAS_HIGH_BEAM_ON" 1 "DAS_HIGH_BEAM_OFF" 3 "DAS_HIGH_BEAM_SNA" 0 "DAS_HIGH_BEAM_UNDECIDED"; -VAL_ 1001 DAS_heaterRequest 0 "DAS_HEATER_SNA" 2 "DAS_HEATER_ON" 1 "DAS_HEATER_OFF"; -VAL_ 1001 DAS_turnIndicatorRequestReason 8 "DAS_ACTIVE_COMMANDED_LANE_CHANGE" 4 "DAS_CANCEL_LANE_CHANGE" 6 "DAS_ACTIVE_MERGE" 2 "DAS_ACTIVE_SPEED_LANE_CHANGE" 5 "DAS_CANCEL_FORK" 0 "DAS_NONE" 3 "DAS_ACTIVE_FORK" 7 "DAS_CANCEL_MERGE" 1 "DAS_ACTIVE_NAV_LANE_CHANGE"; - -VAL_ 1013 VCFRONT_DRLLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_DRLRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_ambientLightingBrightnes 255 "SNA" ; -VAL_ 1013 VCFRONT_fogLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_fogRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_hazardLightRequest 1 "HAZARD_REQUEST_BUTTON" 6 "HAZARD_REQUEST_CAR_ALARM" 5 "HAZARD_REQUEST_CRASH" 7 "HAZARD_REQUEST_DAS" 2 "HAZARD_REQUEST_LOCK" 4 "HAZARD_REQUEST_MISLOCK" 0 "HAZARD_REQUEST_NONE" 8 "HAZARD_REQUEST_UDS" 3 "HAZARD_REQUEST_UNLOCK" ; -VAL_ 1013 VCFRONT_highBeamLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_highBeamRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_indicatorLeftRequest 2 "TURN_SIGNAL_ACTIVE_HIGH" 1 "TURN_SIGNAL_ACTIVE_LOW" 0 "TURN_SIGNAL_OFF" ; -VAL_ 1013 VCFRONT_indicatorRightRequest 2 "TURN_SIGNAL_ACTIVE_HIGH" 1 "TURN_SIGNAL_ACTIVE_LOW" 0 "TURN_SIGNAL_OFF" ; -VAL_ 1013 VCFRONT_lowBeamLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_lowBeamRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_parkLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_parkRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_sideMarkersStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_sideRepeaterLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_sideRepeaterRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_simLatchingStalk 0 "SIMULATED_LATCHING_STALK_IDLE" 1 "SIMULATED_LATCHING_STALK_LEFT" 2 "SIMULATED_LATCHING_STALK_RIGHT" 3 "SIMULATED_LATCHING_STALK_SNA" ; -VAL_ 1013 VCFRONT_switchLightingBrightness 255 "SNA" ; -VAL_ 1013 VCFRONT_turnSignalLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 1013 VCFRONT_turnSignalRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; -VAL_ 962 VCLEFT_frontBuckleSwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatTrackBack 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_rightMirrorTilt 4 "MIRROR_TILT_LEFT" 2 "MIRROR_TILT_UP" 3 "MIRROR_TILT_RIGHT" 0 "MIRROR_TILT_STOP" 1 "MIRROR_TILT_DOWN"; -VAL_ 962 VCLEFT_frontOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_swcRightTiltLeft 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_rearRightOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_swcLeftTiltRight 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatBackrestForward 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_swcRightTiltRight 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatLumbarIn 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatLiftUp 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatLumbarDown 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatTiltDown 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatTrackForward 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_rearLeftBuckleSwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_swcRightPressed 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatLumbarOut 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_swcLeftTiltLeft 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_swcLeftPressed 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatTiltUp 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_rearLeftOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatBackrestBack 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_rearCenterOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatLumbarUp 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_frontSeatLiftDown 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; -VAL_ 962 VCLEFT_switchStatusIndex 1 "VCLEFT_SWITCH_STATUS_INDEX_1" 2 "VCLEFT_SWITCH_STATUS_INDEX_INVALID" 0 "VCLEFT_SWITCH_STATUS_INDEX_0"; -VAL_ 259 VCRIGHT_trunkLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; -VAL_ 259 VCRIGHT_mirrorFoldState 4 "MIRROR_FOLD_STATE_UNFOLDING" 1 "MIRROR_FOLD_STATE_FOLDED" 3 "MIRROR_FOLD_STATE_FOLDING" 0 "MIRROR_FOLD_STATE_UNKNOWN" 2 "MIRROR_FOLD_STATE_UNFOLDED"; -VAL_ 259 VCRIGHT_rearLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; -VAL_ 259 VCRIGHT_mirrorRecallState 5 "MIRROR_RECALL_STATE_RECALLING_STOPPED" 2 "MIRROR_RECALL_STATE_RECALLING_AXIS_2" 0 "MIRROR_RECALL_STATE_INIT" 3 "MIRROR_RECALL_STATE_RECALLING_COMPLETE" 4 "MIRROR_RECALL_STATE_RECALLING_FAILED" 1 "MIRROR_RECALL_STATE_RECALLING_AXIS_1"; -VAL_ 259 VCRIGHT_mirrorState 3 "MIRROR_STATE_FOLD_UNFOLD" 1 "MIRROR_STATE_TILT_X" 0 "MIRROR_STATE_IDLE" 2 "MIRROR_STATE_TILT_Y" 4 "MIRROR_STATE_RECALL"; -VAL_ 259 VCRIGHT_frontLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; -VAL_ 585 SCCM_washWipeButtonStatus 3 "SNA" 0 "NOT_PRESSED" 2 "2ND_DETENT" 1 "1ST_DETENT"; -VAL_ 585 SCCM_turnIndicatorStalkStatus 3 "DOWN_1" 5 "SNA" 0 "IDLE" 1 "UP_1" 4 "DOWN_2" 2 "UP_2"; -VAL_ 585 SCCM_highBeamStalkStatus 3 "SNA" 0 "IDLE" 1 "PULL" 2 "PUSH"; -VAL_ 280 DI_epbRequest 0 "DI_EPBREQUEST_NO_REQUEST" 1 "DI_EPBREQUEST_PARK" 2 "DI_EPBREQUEST_UNPARK"; -VAL_ 280 DI_keepAliveRequest 1 "KEEP_ALIVE" 0 "NO_REQUEST"; -VAL_ 280 DI_accelPedalPos 255 "SNA"; -VAL_ 280 DI_gear 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" 7 "DI_GEAR_SNA" 2 "DI_GEAR_R" 3 "DI_GEAR_N" 4 "DI_GEAR_D"; -VAL_ 280 DI_tractionControlMode 0 "TC_NORMAL" 1 "TC_SLIP_START" 4 "TC_ROLLS_MODE" 2 "TC_DEV_MODE_1" 5 "TC_DYNO_MODE" 3 "TC_DEV_MODE_2"; -VAL_ 280 DI_trackModeState 0 "TRACK_MODE_UNAVAILABLE" 1 "TRACK_MODE_AVAILABLE" 2 "TRACK_MODE_ON"; -VAL_ 280 DI_systemState 5 "DI_SYS_ENABLE" 1 "DI_SYS_IDLE" 2 "DI_SYS_STANDBY" 0 "DI_SYS_UNAVAILABLE" 3 "DI_SYS_FAULT" 4 "DI_SYS_ABORT"; -VAL_ 280 DI_immobilizerState 2 "DI_IMM_STATE_AUTHENTICATING" 0 "DI_IMM_STATE_INIT_SNA" 3 "DI_IMM_STATE_DISARMED" 4 "DI_IMM_STATE_IDLE" 6 "DI_IMM_STATE_FAULT" 1 "DI_IMM_STATE_REQUEST" 5 "DI_IMM_STATE_RESET"; -VAL_ 280 DI_brakePedalState 2 "INVALID" 0 "OFF" 1 "ON"; -VAL_ 835 VCRIGHT_rearDefrostState 2 "HEATER_STATE_OFF" 4 "HEATER_STATE_FAULT" 1 "HEATER_STATE_ON" 0 "HEATER_STATE_SNA" 3 "HEATER_STATE_OFF_UNAVAILABLE"; -VAL_ 835 VCRIGHT_vehiclePowerStateDBG 3 "VEHICLE_POWER_STATE_DRIVE" 1 "VEHICLE_POWER_STATE_CONDITIONING" 2 "VEHICLE_POWER_STATE_ACCESSORY" 0 "VEHICLE_POWER_STATE_OFF"; -VAL_ 835 VCRIGHT_mirrorHeatState 2 "HEATER_STATE_OFF" 4 "HEATER_STATE_FAULT" 1 "HEATER_STATE_ON" 0 "HEATER_STATE_SNA" 3 "HEATER_STATE_OFF_UNAVAILABLE"; -VAL_ 553 SCCM_parkButtonStatus 3 "SNA" 0 "NOT_PRESSED" 2 "INIT" 1 "PRESSED"; -VAL_ 553 SCCM_rightStalkStatus 3 "DOWN_1" 6 "SNA" 0 "IDLE" 5 "INIT" 1 "UP_1" 4 "DOWN_2" 2 "UP_2"; -VAL_ 297 SCCM_steeringAngleValidity 3 "SNA" 2 "INIT" 0 "INVALID" 1 "VALID"; -VAL_ 297 SCCM_steeringAngleSensorStatus 0 "OK" 1 "INIT" 2 "ERROR" 3 "ERROR_INIT"; -VAL_ 258 VCLEFT_mirrorRecallState 5 "MIRROR_RECALL_STATE_RECALLING_STOPPED" 2 "MIRROR_RECALL_STATE_RECALLING_AXIS_2" 0 "MIRROR_RECALL_STATE_INIT" 3 "MIRROR_RECALL_STATE_RECALLING_COMPLETE" 4 "MIRROR_RECALL_STATE_RECALLING_FAILED" 1 "MIRROR_RECALL_STATE_RECALLING_AXIS_1"; -VAL_ 258 VCLEFT_rearLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; -VAL_ 258 VCLEFT_mirrorState 3 "MIRROR_STATE_FOLD_UNFOLD" 1 "MIRROR_STATE_TILT_X" 0 "MIRROR_STATE_IDLE" 2 "MIRROR_STATE_TILT_Y" 4 "MIRROR_STATE_RECALL"; -VAL_ 258 VCLEFT_mirrorHeatState 2 "HEATER_STATE_OFF" 4 "HEATER_STATE_FAULT" 1 "HEATER_STATE_ON" 0 "HEATER_STATE_SNA" 3 "HEATER_STATE_OFF_UNAVAILABLE"; -VAL_ 258 VCLEFT_frontLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; -VAL_ 258 VCLEFT_mirrorFoldState 4 "MIRROR_FOLD_STATE_UNFOLDING" 1 "MIRROR_FOLD_STATE_FOLDED" 3 "MIRROR_FOLD_STATE_FOLDING" 0 "MIRROR_FOLD_STATE_UNKNOWN" 2 "MIRROR_FOLD_STATE_UNFOLDED"; diff --git a/opendbc_repo/opendbc/dbc/tesla_powertrain.dbc b/opendbc_repo/opendbc/dbc/tesla_powertrain.dbc deleted file mode 100644 index 8572ee20f4..0000000000 --- a/opendbc_repo/opendbc/dbc/tesla_powertrain.dbc +++ /dev/null @@ -1,179 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: - NEO - MCU - GTW - EPAS - DI - ESP - SBW - STW - APP - DAS - XXX - -BO_ 262 DI_torque1: 8 DI - SG_ DI_torqueDriver : 0|13@1- (0.25,0) [-750|750] "Nm" NEO - SG_ DI_torque1Counter : 13|3@1+ (1,0) [0|0] "" NEO - SG_ DI_torqueMotor : 16|13@1- (0.25,0) [-750|750] "Nm" NEO - SG_ DI_soptState : 29|3@1+ (1,0) [0|0] "" NEO - SG_ DI_motorRPM : 32|16@1- (1,0) [-17000|17000] "RPM" NEO - SG_ DI_pedalPos : 48|8@1+ (0.4,0) [0|100] "%" NEO - SG_ DI_torque1Checksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 278 DI_torque2: 6 DI - SG_ DI_torqueEstimate : 0|12@1- (0.5,0) [-750|750] "Nm" NEO - SG_ DI_gear : 12|3@1+ (1,0) [0|0] "" NEO - SG_ DI_brakePedal : 15|1@1+ (1,0) [0|0] "" NEO - SG_ DI_vehicleSpeed : 16|12@1+ (0.05,-25) [-25|179.75] "MPH" NEO - SG_ DI_gearRequest : 28|3@1+ (1,0) [0|0] "" NEO - SG_ DI_torqueInterfaceFailure : 31|1@1+ (1,0) [0|0] "" NEO - SG_ DI_torque2Counter : 32|4@1+ (1,0) [0|0] "" NEO - SG_ DI_brakePedalState : 36|2@1+ (1,0) [0|0] "" NEO - SG_ DI_epbParkRequest : 38|1@1+ (1,0) [0|0] "" NEO - SG_ DI_epbInterfaceReady : 39|1@1+ (1,0) [0|0] "" NEO - SG_ DI_torque2Checksum : 40|8@1+ (1,0) [0|0] "" NEO - -BO_ 504 BrakeMessage: 8 XXX - SG_ driverBrakeStatus : 2|2@1+ (1,0) [0|3] "" XXX - -BO_ 568 STW_ACTN_RQ: 8 STW - SG_ SpdCtrlLvr_Stat : 0|6@1+ (1,0) [0|0] "" NEO - SG_ VSL_Enbl_Rq : 6|1@1+ (1,0) [0|0] "" NEO - SG_ SpdCtrlLvrStat_Inv : 7|1@1+ (1,0) [0|0] "" NEO - SG_ DTR_Dist_Rq : 8|8@1+ (1,0) [0|200] "" NEO - SG_ TurnIndLvr_Stat : 16|2@1+ (1,0) [0|0] "" NEO - SG_ HiBmLvr_Stat : 18|2@1+ (1,0) [0|0] "" NEO - SG_ WprWashSw_Psd : 20|2@1+ (1,0) [0|0] "" NEO - SG_ WprWash_R_Sw_Posn_V2 : 22|2@1+ (1,0) [0|0] "" NEO - SG_ StW_Lvr_Stat : 24|3@1+ (1,0) [0|0] "" NEO - SG_ StW_Cond_Flt : 27|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Cond_Psd : 28|2@1+ (1,0) [0|0] "" NEO - SG_ HrnSw_Psd : 30|2@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw00_Psd : 32|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw01_Psd : 33|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw02_Psd : 34|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw03_Psd : 35|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw04_Psd : 36|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw05_Psd : 37|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw06_Psd : 38|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw07_Psd : 39|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw08_Psd : 40|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw09_Psd : 41|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw10_Psd : 42|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw11_Psd : 43|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw12_Psd : 44|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw13_Psd : 45|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw14_Psd : 46|1@1+ (1,0) [0|0] "" NEO - SG_ StW_Sw15_Psd : 47|1@1+ (1,0) [0|0] "" NEO - SG_ WprSw6Posn : 48|3@1+ (1,0) [0|0] "" NEO - SG_ MC_STW_ACTN_RQ : 52|4@1+ (1,0) [0|15] "" NEO - SG_ CRC_STW_ACTN_RQ : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 598 DI_state: 8 DI - SG_ DI_systemState : 0|3@1+ (1,0) [0|0] "" NEO - SG_ DI_vehicleHoldState : 3|3@1+ (1,0) [0|0] "" NEO - SG_ DI_proximity : 6|1@1+ (1,0) [0|0] "" NEO - SG_ DI_driveReady : 7|1@1+ (1,0) [0|0] "" NEO - SG_ DI_regenLight : 8|1@1+ (1,0) [0|0] "" NEO - SG_ DI_state : 9|3@1+ (1,0) [0|0] "" NEO - SG_ DI_cruiseState : 12|4@1+ (1,0) [0|0] "" NEO - SG_ DI_analogSpeed : 16|12@1+ (0.1,0) [0|150] "speed" NEO - SG_ DI_immobilizerState : 28|3@1+ (1,0) [0|0] "" NEO - SG_ DI_speedUnits : 31|1@1+ (1,0) [0|1] "" NEO - SG_ DI_cruiseSet : 32|9@1+ (0.5,0) [0|255.5] "speed" NEO - SG_ DI_aebState : 41|3@1+ (1,0) [0|0] "" NEO - SG_ DI_stateCounter : 44|4@1+ (1,0) [0|0] "" NEO - SG_ DI_digitalSpeed : 48|8@1+ (1,0) [0|250] "" NEO - SG_ DI_stateChecksum : 56|8@1+ (1,0) [0|0] "" NEO - -BO_ 703 DAS_control: 8 GTW - SG_ DAS_setSpeed : 0|12@1+ (0.1,0) [0|409.4] "kph" DI,PM,APS - SG_ DAS_accState : 12|4@1+ (1,0) [0|0] "" DI,PM,APS - SG_ DAS_aebEvent : 16|2@1+ (1,0) [0|3] "" DI,PM,APS - SG_ DAS_jerkMin : 18|9@1+ (0.03,-15.232) [-15.232|0.098] "m/s^3" DI,PM,APS - SG_ DAS_jerkMax : 27|8@1+ (0.059,0) [0|15.045] "m/s^3" DI,PM,APS - SG_ DAS_accelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" DI,PM,APS - SG_ DAS_accelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" DI,PM,APS - SG_ DAS_controlCounter : 53|3@1+ (1,0) [0|0] "" DI,PM,APS - SG_ DAS_controlChecksum : 56|8@1+ (1,0) [0|0] "" DI,PM,APS - -VAL_ 262 DI_torqueDriver -4096 "SNA" ; -VAL_ 262 DI_torqueMotor -4096 "SNA" ; -VAL_ 262 DI_soptState 7 "SOPT_TEST_SNA" 4 "SOPT_TEST_NOT_RUN" 3 "SOPT_TEST_PASSED" 2 "SOPT_TEST_FAILED" 1 "SOPT_TEST_IN_PROGRESS" 0 "SOPT_PRE_TEST" ; -VAL_ 262 DI_motorRPM -32768 "SNA" ; -VAL_ 262 DI_pedalPos 255 "SNA" ; -VAL_ 278 DI_torqueEstimate -2048 "SNA" ; -VAL_ 278 DI_gear 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; -VAL_ 278 DI_brakePedal 1 "Applied" 0 "Not_applied" ; -VAL_ 278 DI_vehicleSpeed 4095 "SNA" ; -VAL_ 278 DI_gearRequest 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; -VAL_ 278 DI_torqueInterfaceFailure 1 "TORQUE_INTERFACE_FAILED" 0 "TORQUE_INTERFACE_NORMAL" ; -VAL_ 278 DI_brakePedalState 3 "SNA" 2 "INVALID" 1 "ON" 0 "OFF" ; -VAL_ 278 DI_epbParkRequest 1 "Park_requested" 0 "No_request" ; -VAL_ 278 DI_epbInterfaceReady 1 "EPB_INTERFACE_READY" 0 "EPB_INTERFACE_NOT_READY" ; -VAL_ 504 driverBrakeStatus 2 "APPLIED" 1 "NOT_APPLIED" ; -VAL_ 568 SpdCtrlLvr_Stat 32 "DN_1ST" 16 "UP_1ST" 8 "DN_2ND" 4 "UP_2ND" 2 "RWD" 1 "FWD" 0 "IDLE" ; -VAL_ 568 DTR_Dist_Rq 255 "SNA" 200 "ACC_DIST_7" 166 "ACC_DIST_6" 133 "ACC_DIST_5" 100 "ACC_DIST_4" 66 "ACC_DIST_3" 33 "ACC_DIST_2" 0 "ACC_DIST_1" ; -VAL_ 568 TurnIndLvr_Stat 3 "SNA" 2 "RIGHT" 1 "LEFT" 0 "IDLE" ; -VAL_ 568 HiBmLvr_Stat 3 "SNA" 2 "HIBM_FLSH_ON_PSD" 1 "HIBM_ON_PSD" 0 "IDLE" ; -VAL_ 568 WprWashSw_Psd 3 "SNA" 2 "WASH" 1 "TIPWIPE" 0 "NPSD" ; -VAL_ 568 WprWash_R_Sw_Posn_V2 3 "SNA" 2 "WASH" 1 "INTERVAL" 0 "OFF" ; -VAL_ 568 StW_Lvr_Stat 4 "STW_BACK" 3 "STW_FWD" 2 "STW_DOWN" 1 "STW_UP" 0 "NPSD" ; -VAL_ 568 StW_Cond_Psd 3 "SNA" 2 "DOWN" 1 "UP" 0 "NPSD" ; -VAL_ 568 HrnSw_Psd 3 "SNA" 2 "NDEF2" 1 "PSD" 0 "NPSD" ; -VAL_ 568 StW_Sw00_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 StW_Sw01_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 StW_Sw03_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 StW_Sw04_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; -VAL_ 568 WprSw6Posn 7 "SNA" 6 "STAGE2" 5 "STAGE1" 4 "INTERVAL4" 3 "INTERVAL3" 2 "INTERVAL2" 1 "INTERVAL1" 0 "OFF" ; -VAL_ 598 DI_aebState 2 "ENABLED" 4 "FAULT" 7 "SNA" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; -VAL_ 598 DI_analogSpeed 4095 "SNA" ; -VAL_ 598 DI_cruiseState 2 "ENABLED" 5 "FAULT" 0 "OFF" 4 "OVERRIDE" 7 "PRE_CANCEL" 6 "PRE_FAULT" 1 "STANDBY" 3 "STANDSTILL" ; -VAL_ 598 DI_digitalSpeed 255 "SNA" ; -VAL_ 598 DI_immobilizerState 2 "AUTHENTICATING" 3 "DISARMED" 6 "FAULT" 4 "IDLE" 0 "INIT_SNA" 1 "REQUEST" 5 "RESET" ; -VAL_ 598 DI_speedUnits 1 "KPH" 0 "MPH" ; -VAL_ 598 DI_state 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; -VAL_ 598 DI_systemState 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; -VAL_ 598 DI_vehicleHoldState 2 "BLEND_IN" 4 "BLEND_OUT" 6 "FAULT" 7 "INIT" 5 "PARK" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; -VAL_ 703 DAS_setSpeed 4095 "SNA" ; -VAL_ 703 DAS_accState 15 "FAULT_SNA" 13 "ACC_CANCEL_GENERIC_SILENT" 11 "APC_SELFPARK_START" 10 "APC_UNPARK_COMPLETE" 9 "APC_PAUSE" 8 "APC_ABORT" 7 "APC_COMPLETE" 6 "APC_FORWARD" 5 "APC_BACKWARD" 4 "ACC_ON" 3 "ACC_HOLD" 0 "ACC_CANCEL_GENERIC" ; -VAL_ 703 DAS_aebEvent 3 "AEB_SNA" 2 "AEB_FAULT" 1 "AEB_ACTIVE" 0 "AEB_NOT_ACTIVE" ; -VAL_ 703 DAS_jerkMin 511 "SNA" ; -VAL_ 703 DAS_jerkMax 255 "SNA" ; -VAL_ 703 DAS_accelMin 511 "SNA" ; -VAL_ 703 DAS_accelMax 511 "SNA" ; \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc b/opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc deleted file mode 100644 index 17cd8f1b36..0000000000 --- a/opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc +++ /dev/null @@ -1,1638 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: AFS BSR CGW CSR DS1 FCM FRD KSS MAV SCS Vector__XXX - - -BO_ 1196 ABG1D50: 8 CGW - SG_ DRABG01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1212 ABG1D51: 8 CGW - SG_ DRABG09 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG10 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG11 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG12 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG13 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG14 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG15 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRABG16 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 945 ABG1S01: 8 CGW - SG_ CDT : 22|3@0+ (1,0) [0|0] "" DS1 - SG_ AB : 19|2@0+ (1,0) [0|0] "" DS1 - SG_ DBKLAB : 17|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PODT : 27|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PBKLAB : 25|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ EDRTRG : 44|2@0+ (1,0) [0|0] "" DS1 - -BO_ 836 ACC1F01: 8 DS1 - SG_ DSS1GDRV : 7|10@0- (0.1,0) [0|0] "m/s^2" Vector__XXX - SG_ DS1STAT2 : 13|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ DS1STBK2 : 10|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSWAR : 18|1@0+ (1,0) [0|0] "" FCM - SG_ PCSALM : 17|1@0+ (1,0) [0|0] "" FCM - SG_ PCSOPR : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSABK : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PBATRGR : 30|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PPTRGR : 28|1@0+ (1,0) [0|0] "" FCM - SG_ IBTRGR : 27|1@0+ (1,0) [0|0] "" FCM - SG_ CLEXTRGR : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ IRLT_REQ : 25|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRKHLD : 37|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVSTRGR : 36|1@0+ (1,0) [0|0] "" SCS - SG_ VGRSTRGR : 35|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PREFILL : 33|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PBRTRGR : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSDIS : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PBPREPMP : 40|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCF01SM : 63|8@0+ (1,0) [0|0] "" FCM - -BO_ 1227 ACC1N01: 8 DS1 - SG_ ACCNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ ACCSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ ACCSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ ACCREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 835 ACC1S03: 8 DS1 - SG_ ATACC2 : 7|16@0- (0.001,0) [0|0] "m/s^2" Vector__XXX - SG_ ACCTYPE : 23|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ XTRGT2 : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XLTMD2 : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LCDT2 : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LCNG : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SMC : 17|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ STOKJD : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PMTBRKG : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LVSTP : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LCCWOK : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LCBW2 : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACC : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ AT_RAW : 47|8@0- (0.05,0) [0|0] "m/s^2" Vector__XXX - SG_ ACC03SUM : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 896 ACN1S01: 8 CGW - SG_ R_AC2 : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_HTR : 5|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECOSW : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_EGON : 1|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ BLWON : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SCAC : 13|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CGIH : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FAN_AC : 22|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACHI : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACMAX : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_VSCUS : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_SHTR : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_PTC : 29|2@0+ (1,0) [0|0] "piece" Vector__XXX - SG_ GNRTIH : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_COL_TM : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_HET_TM : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TAMOUT : 55|8@0- (0.625,0) [0|0] "" Vector__XXX - -BO_ 897 ACN1S04: 8 CGW - SG_ R_ACCALL : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_AC_WNG : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_SW_CON : 5|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_BEEP : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_RA_AUT : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_RA_AC : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_RA_LO : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_RA_HI : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_AUTO_D : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_AUTO_P : 14|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_DEF : 13|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_RRDEF : 12|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_RFAUT : 11|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_REC : 10|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_FRS : 9|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_AC : 8|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_MHTR : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_WIPD : 22|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_DUSY : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_SWNG : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_BLW_F : 19|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_OAUT_D : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_OLET_D : 30|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_OAUT_P : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_OLET_P : 26|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ ST_BMN_F : 39|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_AIRPR : 47|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_O2 : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_PLSM : 45|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_KAFUN : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_SAFS : 42|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_ACOFF : 41|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_ONSCRN : 40|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 944 ACN1S07: 6 CGW - SG_ RDEF : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MHTR : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TR_TEMP : 15|8@0+ (0.25,-6.5) [0|0] "" Vector__XXX - SG_ ACN_AMB : 31|8@0+ (1,0) [0|0] "" CSR,DS1,FCM - SG_ AC_AMB05 : 44|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AC_MODE : 43|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1250 AFS1N01: 8 AFS - SG_ AFSNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ AFSSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ AFSSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ AFSREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 913 AFS1S01: 8 AFS - SG_ HLLI : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AZB_ADV : 5|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ HEDH_AZB : 3|1@0+ (1,0) [0|0] "" FCM - SG_ AZB_IND : 13|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ AZB_HIND : 11|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AZB_PRE : 10|1@0+ (1,0) [0|0] "" FCM - SG_ LED_HLI : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LPECU_PR : 24|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 845 AFS1S02: 5 AFS - SG_ AHRR : 17|10@0+ (0.0048828125,0) [0|0] "V" Vector__XXX - SG_ AHVLD : 39|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AHFAIL : 38|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1044 AHB1S01: 8 FCM - SG_ AHB_DUTY : 47|8@0+ (0.5,0) [0|0] "%" Vector__XXX - SG_ F_AHB : 55|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_AHB : 51|4@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 900 AVN1S01: 6 CGW - SG_ RDC : 7|4@0+ (1,0) [0|0] "" SCS - SG_ CONFID01 : 3|2@0+ (1,0) [0|0] "" SCS - SG_ CONF : 1|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LYT : 15|4@0+ (1,0) [0|0] "" SCS - SG_ DRVW : 9|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MWMP : 8|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GRAD : 23|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ HARSHID : 19|4@0+ (1,0) [0|0] "" SCS - SG_ BRANCH : 27|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ HARSH : 35|2@0+ (1,0) [0|0] "" SCS - SG_ TOLLGATE : 33|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TUNL : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LEAVEOUT : 47|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MRGLANE : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LVLANE : 45|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 902 AVN1S03: 6 CGW - SG_ ANS : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CRS1 : 15|1@0+ (1,0) [0|0] "" SCS - SG_ RQAC : 14|7@0+ (0.02,0) [0|0] "G" Vector__XXX - SG_ GUID : 23|1@0+ (1,0) [0|0] "" SCS - SG_ GYRO : 22|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ NCRN : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CRN6 : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CRN5 : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CRN3 : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CRN2 : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CRN1 : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CONFID03 : 31|2@0+ (1,0) [0|0] "" SCS - SG_ CURV : 29|2@0+ (1,0) [0|0] "" SCS - SG_ CVST : 27|1@0+ (1,0) [0|0] "" SCS - SG_ NAVI_STR : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MIND : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ONOFF : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HWPB : 39|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RAD : 38|7@0+ (5,0) [0|0] "m" SCS - SG_ AFS_SW : 41|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVS_SW : 40|1@0+ (1,0) [0|0] "" SCS - -BO_ 911 AVN1S07: 8 CGW - SG_ TOFC_RST : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SL_CSTM : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SL_RMDG : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ST_RTCOM : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVN07VLD : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ST_UCST : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSCOM51 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSCOM52 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSCOM53 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSCOM54 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSCOM55 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSCOM56 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 905 AVN1S08: 8 CGW - SG_ VVSW : 7|3@0+ (1,0) [0|0] "" CSR - SG_ BZV : 4|3@0+ (1,0) [0|0] "" CSR - SG_ DFS : 1|2@0+ (1,0) [0|0] "" CSR - SG_ BZ_M_SW : 15|1@0+ (1,0) [0|0] "" CSR - SG_ VOL_SW : 14|1@0+ (1,0) [0|0] "" CSR - SG_ BM : 13|1@0+ (1,0) [0|0] "" CSR - SG_ DOFR : 12|1@0+ (1,0) [0|0] "" CSR - SG_ RDSW : 11|1@0+ (1,0) [0|0] "" CSR - SG_ FDSW : 10|1@0+ (1,0) [0|0] "" CSR - SG_ RBSW : 9|1@0+ (1,0) [0|0] "" CSR - SG_ FBSW : 8|1@0+ (1,0) [0|0] "" CSR - SG_ NVDP_OK : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DEVICE : 22|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ DISPSIZE : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HPTCSW_L : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HPTCSW_R : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HPTCSW_E : 28|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_MODE : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VARBGM : 26|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ WBGM : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ X_LL : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ Y_LL : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ X_RH : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ Y_RH : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 998 AVN1S11: 5 CGW - SG_ SENSPFM : 7|3@0+ (1,0) [0|0] "" SCS - SG_ SENSFAIL : 4|3@0+ (1,0) [0|0] "" SCS - SG_ CONFID11 : 1|2@0+ (1,0) [0|0] "" SCS - SG_ CONFMMC : 15|8@0+ (1,0) [0|0] "" SCS - SG_ DISTERR : 23|8@0+ (1,0) [0|0] "" SCS - SG_ CONFLANE : 31|8@0+ (1,0) [0|0] "" SCS - SG_ CONFDIR : 39|8@0+ (1,0) [0|0] "" SCS - -BO_ 933 AVN1S13: 8 CGW - SG_ HUD_DISP : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRVSIDE : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DT_GP : 5|6@0+ (1,0) [0|0] "" Vector__XXX - SG_ DT_UNIT : 15|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ DIR_TURN : 12|5@0+ (11.25,0) [0|0] "degree" Vector__XXX - SG_ ROTARY : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ROAD_TP1 : 22|15@0+ (1,0) [0|0] "" Vector__XXX - SG_ ROAD_TP2 : 39|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ N_H_UP : 55|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ COMPASS : 54|6@0+ (11.25,0) [0|0] "degree" Vector__XXX - SG_ DIR : 63|6@0+ (11.25,0) [0|0] "degree" Vector__XXX - -BO_ 936 AVN1S16: 5 CGW - SG_ NDADVSRY : 7|5@0+ (1,0) [0|0] "" Vector__XXX - SG_ NDCAUTON : 15|5@0+ (1,0) [0|0] "" Vector__XXX - SG_ NDSSLCT : 23|5@0+ (1,0) [0|0] "" Vector__XXX - SG_ NDCNFDID : 18|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ NDINDST : 25|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVN16SUM : 39|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 999 AVN1S17: 7 CGW - SG_ AVN17VLD : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANEID17 : 6|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRVLANE : 3|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRV_SIDE : 12|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE_NS : 11|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE1FLG : 23|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE2FLG : 19|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE1DIR : 31|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE2DIR : 47|16@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1000 AVN1S18: 8 CGW - SG_ AVN18VLD : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANEID18 : 6|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE3FLG : 3|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE4FLG : 15|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE5FLG : 11|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE3DIR : 23|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE4DIR : 39|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE5DIR : 55|16@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1001 AVN1S19: 8 CGW - SG_ AVN19VLD : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANEID19 : 6|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE6FLG : 3|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE7FLG : 15|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE8FLG : 11|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE6DIR : 23|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE7DIR : 39|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ LANE8DIR : 55|16@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1076 AVN1S20: 8 CGW - SG_ A_LNG_ST : 7|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LANG : 5|6@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB1 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB2 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB3 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB4 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB5 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB6 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGDB7 : 63|7@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_LNGCHG : 56|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1077 AVN1S21: 8 CGW - SG_ A_OPEN_S : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ OPENCHG : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CAPSW_S : 5|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_CLR_S : 3|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ DISP_BRT : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DISP_CNT : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MM_CLOCK : 31|11@0+ (1,0) [0|0] "" Vector__XXX - SG_ CLK_OFST : 36|4@0- (5,0) [0|0] "min" Vector__XXX - SG_ DST : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CLK_TYP : 47|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_UNTTMP : 45|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_UNTSP : 43|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_UNTDST : 41|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_UNTCSP : 55|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_CLRCHG : 52|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_TMPCHG : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_SPCHG : 50|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_DSTCHG : 49|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_CSPCHG : 48|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ A_SPLM : 63|6@0+ (5,0) [0|0] "" Vector__XXX - SG_ A_UTSPLM : 57|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1043 AVN1S31: 8 CGW - SG_ GPSTM_Y : 7|8@0+ (1,0) [0|0] "year" Vector__XXX - SG_ GPSTM_MO : 15|8@0+ (1,0) [0|0] "month" Vector__XXX - SG_ GPSTM_D : 23|8@0+ (1,0) [0|0] "day" Vector__XXX - SG_ GPSTM_H : 31|8@0+ (1,0) [0|0] "hour" Vector__XXX - SG_ GPSTM_MI : 39|8@0+ (1,0) [0|0] "minute" Vector__XXX - SG_ GMT_DIFF : 55|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GMTDIF_H : 54|4@0+ (1,0) [0|0] "hour" Vector__XXX - SG_ GMTDIF_M : 50|6@0+ (1,0) [0|0] "minute" Vector__XXX - SG_ SUMMERTM : 60|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075054137 BDB1F01_14: 8 CGW - SG_ BDBF01ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDBF01IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ SALR : 23|6@0+ (1,0) [0|0] "" Vector__XXX - SG_ HDCY_BDB : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AARE_B : 31|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ I_SEN_B : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ INTSET_B : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ INCSET_B : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ISSD_BDB : 39|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SEID : 37|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ WS_ID : 44|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ WS_SWON : 41|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ WS_DATA : 55|16@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075185211 BDB1F03_16: 8 CGW - SG_ BDBF03ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ BDBF03IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ TRIP_CNT : 23|16@0+ (1,0) [0|0] "trip" AFS,BSR,CSR,DS1,FCM,MAV - SG_ TIME_CNT : 39|32@0+ (100,0) [0|0] "ms" AFS,BSR,CSR,DS1,FCM,MAV - -BO_ 1074791968 BDB1S01_10: 8 CGW - SG_ BDB01_ID : 7|8@0+ (1,0) [0|0] "" FCM,MAV - SG_ BDB01_IF : 15|8@0+ (1,0) [0|0] "" FCM - SG_ LX : 23|16@0+ (0.2,0) [0|0] "ms" FCM - SG_ ADIM : 39|2@0+ (1,0) [0|0] "" AFS,BSR,CSR - SG_ IG_BDB : 37|1@0+ (1,0) [0|0] "" AFS,MAV - SG_ ACC_BDB : 36|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SKSW : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DCTY : 45|1@0+ (1,0) [0|0] "" FCM,MAV,SCS - SG_ PCTY : 44|1@0+ (1,0) [0|0] "" MAV,SCS - SG_ RRCY : 43|1@0+ (1,0) [0|0] "" MAV,SCS - SG_ RLCY : 42|1@0+ (1,0) [0|0] "" MAV,SCS - SG_ BCTY : 41|1@0+ (1,0) [0|0] "" MAV,SCS - SG_ PSW : 51|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SRBZ : 49|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DBKL : 63|2@0+ (1,0) [0|0] "" FCM - SG_ PKB_BDB : 60|1@0+ (1,0) [0|0] "" CSR - SG_ SREXIST : 59|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SRPOS : 58|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1074857505 BDB1S02_11: 8 CGW - SG_ BDB02_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB02_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ LUD : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRNKOPN : 45|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1074923042 BDB1S03_12: 8 CGW - SG_ BDB03_ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ BDB03_IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ LTS : 23|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ PANL : 19|1@0+ (1,0) [0|0] "" BSR,CSR - SG_ UDRL : 31|1@0+ (1,0) [0|0] "" AFS - SG_ HEDH : 30|1@0+ (1,0) [0|0] "" AFS,DS1,FCM - SG_ HEDL : 29|1@0+ (1,0) [0|0] "" AFS,DS1 - SG_ TAIL : 28|1@0+ (1,0) [0|0] "" AFS,BSR,CSR,DS1 - SG_ FFOG : 27|1@0+ (1,0) [0|0] "" DS1 - SG_ RFOG : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SB_IND : 39|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SB_OK : 37|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RTRRQ : 35|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SRWARN : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PWWARN : 50|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ WEL_REQ : 48|1@0+ (1,0) [0|0] "" AFS - SG_ DRPBZ_R : 62|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075381795 BDB1S04_19: 8 CGW - SG_ BDB04_ID : 7|8@0+ (1,0) [0|0] "" MAV - SG_ BDB04_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MRMV_R : 23|2@0+ (1,0) [0|0] "" MAV - SG_ RSEL : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LSEL : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MHR : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MHL : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MVU : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MVD : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GHSW : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GCTY : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GHOPN : 42|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ ABIF : 55|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ FLSHRQ : 63|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SB_ADV : 60|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1074988600 BDB1S05_13: 8 CGW - SG_ BDB05_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB05_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ PARK : 23|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSWB : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LSWD : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LSWP : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LSWR : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LSWL : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LSWB : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRVKS_R : 31|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ PWDRD : 39|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PWDRP : 37|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PWDRR : 35|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PWDRL : 33|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ DKLS : 43|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ BKLS : 54|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ KIDSCN_R : 51|7@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075250736 BDB1S06_17: 8 CGW - SG_ BDB06_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB06_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TBSW : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ WBZF : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ WVOL : 42|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075316273 BDB1S07_18: 8 CGW - SG_ BDB07_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB07_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ WCD : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ W1D : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ W2D : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ W3D : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB7SUM1 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB7SUM2 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075447332 BDB1S08_1A: 8 CGW - SG_ BDB08_ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ BDB08_IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ DEST_BDB : 23|8@0+ (1,0) [0|0] "" AFS,BSR,CSR,DS1,FCM,MAV - SG_ DS_PACK1 : 31|8@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,MAV - SG_ DS_PACK2 : 39|8@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,MAV - SG_ STRG_WHL : 47|2@0+ (1,0) [0|0] "" AFS,CSR,DS1,FCM,MAV - SG_ DEICER : 40|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ KEYPLATE : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DBLLCK : 62|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ U2OP_CST : 61|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ U2OP_DFT : 60|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075643943 BDB1S11_1D: 8 CGW - SG_ BDB11_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB11_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDBREQ11 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDBREQ12 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1083704892 BDB1S17_98: 8 CGW - SG_ BDB17_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB17_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ CHABASE1 : 23|8@0+ (1,0) [0|0] "" AFS - SG_ CHABASE2 : 31|8@0+ (1,0) [0|0] "" AFS - SG_ CHABASE3 : 39|8@0+ (1,0) [0|0] "" AFS - SG_ CHA_NO1 : 47|4@0+ (1,0) [0|0] "" AFS - SG_ CHA_NO2 : 43|4@0+ (1,0) [0|0] "" AFS - SG_ CHA_NO3 : 55|4@0+ (1,0) [0|0] "" AFS - SG_ SP_BODY : 63|5@0+ (1,0) [0|0] "" AFS - -BO_ 1083770429 BDB1S18_99: 8 CGW - SG_ BDB18_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB18_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ POP_NAME : 23|8@0+ (1,0) [0|0] "" AFS - SG_ BODY : 31|8@0+ (1,0) [0|0] "" AFS - SG_ GEAR : 39|8@0+ (1,0) [0|0] "" AFS - SG_ GRADE : 47|8@0+ (1,0) [0|0] "" AFS - SG_ ENGINE : 55|8@0+ (1,0) [0|0] "" AFS - -BO_ 1020 BDB1S19: 8 CGW - SG_ SOLAR_R : 23|9@0+ (100,0) [0|0] "" Vector__XXX - SG_ SOLAR_L : 39|9@0+ (100,0) [0|0] "" Vector__XXX - SG_ N_LX : 55|13@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1083835966 BDB1S20_9A: 8 CGW - SG_ BDB20_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB20_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RNBDYC : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RNBDYD : 39|32@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1083901503 BDB1S21_9B: 8 CGW - SG_ BDB21_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BDB21_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ RFOG_SW : 22|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FFOG_SW : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HF_SW : 20|1@0+ (1,0) [0|0] "" AFS - SG_ HU_SW : 19|1@0+ (1,0) [0|0] "" AFS - SG_ AUTO_SW : 18|1@0+ (1,0) [0|0] "" AFS - SG_ HEAD_SW : 17|1@0+ (1,0) [0|0] "" AFS - SG_ TAIL_SW : 16|1@0+ (1,0) [0|0] "" AFS - SG_ DRL_OFF : 24|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1005 BGM1S01: 2 CGW - SG_ WCAA : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ R_DISP : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BGM_BEEP : 11|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ BGM_MODE : 9|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1237 BSR1N01: 8 BSR - SG_ BSRNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ BSRSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ BSRSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ BSRREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 1014 BSR1S01: 8 BSR - SG_ BSD_STAT : 7|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ BSD_SW : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BSD_BUZ : 23|1@0+ (1,0) [0|0] "" CSR - -BO_ 1114 CGW1N02: 8 CGW - SG_ CGW2REV : 7|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1228 CSR1N01: 8 CSR - SG_ CSRNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ CSRSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ CSRSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ CSRREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 918 CSR1S01: 7 CSR - SG_ CSV : 7|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ CSSR : 4|2@0+ (1,0) [0|0] "" MAV - SG_ CSD : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CSME : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CSIN : 0|1@0+ (1,0) [0|0] "" MAV - SG_ FL_INFO : 15|4@0+ (1,0) [0|0] "" MAV - SG_ FR_INFO : 11|4@0+ (1,0) [0|0] "" MAV - SG_ RB_INFO : 23|4@0+ (1,0) [0|0] "" MAV - SG_ FC_INFO : 19|4@0+ (1,0) [0|0] "" MAV - SG_ RL_INFO : 31|4@0+ (1,0) [0|0] "" MAV - SG_ RR_INFO : 27|4@0+ (1,0) [0|0] "" MAV - SG_ CZV : 39|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ VOT : 47|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ FCZD : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RCZD : 42|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FCDD : 41|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RCDD : 40|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VOL : 55|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ CDG : 52|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ MUTE : 49|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BZ_OFF : 48|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1087768273 DMS1S02_D6: 8 CGW - SG_ SS_MODE : 25|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 869 DS11D70: 7 DS1 - SG_ D_TRGJDG : 7|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_RESSW : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_SETSW : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_CANSW : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_MAINSW : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_VMCC : 15|8@0+ (1,0) [0|0] "km/h" Vector__XXX - SG_ D_VNCC : 23|8@0+ (1,0) [0|0] "km/h" Vector__XXX - SG_ D_CCREQ : 31|8@0+ (100,-12800) [0|0] "N" Vector__XXX - SG_ D_TGTDST : 39|8@0+ (1,0) [0|0] "m" Vector__XXX - SG_ D_VRCC : 47|8@0- (1,0) [0|0] "km/h" Vector__XXX - SG_ D_WSTL : 55|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_DSW : 54|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_FDJDG : 52|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ D_DSSJDG : 51|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 870 DS11D71: 7 DS1 - SG_ XREQALM : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XREQABK : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TGT_DIST : 5|14@0+ (0.01,0) [0|0] "m" Vector__XXX - SG_ XREQPBA : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XREQFPB : 22|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XREQPB : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XREQEXT : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XREQPSB : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TGT_VGAP : 18|11@0+ (0.025,-51.175) [0|0] "m/s" Vector__XXX - SG_ PCSDISP : 39|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ XPCSRDY : 35|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TGT_NUMB : 34|3@0+ (1,1) [0|0] "" Vector__XXX - SG_ TGT_POSX : 47|8@0- (0.04,0) [0|0] "m" Vector__XXX - -BO_ 871 DS11D72: 2 FCM - SG_ LKADRTRG : 7|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKADRSHR : 5|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKADRSLK : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKADRSLD : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKADRCC : 2|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKADRTUR : 15|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKADRINV : 13|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 643 DS11F01: 7 DS1 - SG_ DSCOUNT : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DSLCCW1 : 15|1@0+ (1,0) [0|0] "" FCM - SG_ DSSTPBZ : 14|1@0+ (1,0) [0|0] "" FCM - SG_ PBRTRGR2 : 12|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DSSFTRQD : 11|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ DSS1FDRV : 23|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ DSS1STBK : 39|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ DSS1STAT : 36|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ DSBHOK : 33|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PPTRGR2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DSRQBH : 47|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ IBTRGR2 : 45|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSABK2 : 44|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSNOCHG : 41|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ DS1F01SM : 55|8@0+ (1,0) [0|0] "" FCM - -BO_ 1041 DS12F02: 8 DS1 - SG_ PCSINDI : 7|2@0+ (1,0) [0|0] "" FCM - SG_ PCSWM : 5|2@0+ (1,0) [0|0] "" FCM - SG_ PCSFCT : 3|1@0+ (1,0) [0|0] "" FCM - SG_ PCSTUCT : 2|1@0+ (1,0) [0|0] "" FCM - SG_ DS1LCCK : 1|2@0+ (1,0) [0|0] "" FCM - SG_ PBTUCT : 14|1@0+ (1,0) [0|0] "" FCM - SG_ PCSEXIST : 13|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSWDUCT : 11|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSWD : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSDW : 39|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSDSRF : 36|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSTEMP : 35|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSDUST : 34|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSLCCK : 33|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSPEDW : 47|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSPVSN : 44|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCTEMP2 : 42|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSDUST2 : 41|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSOFFS : 40|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSWDS : 55|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ FRDADJ : 53|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1042 DS12F03: 8 FCM - SG_ LKAINDI : 7|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKAWLSL : 5|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKAWLSR : 3|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKAFCT : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKATUCT : 14|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKACAMT : 13|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LDWEXIST : 10|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKASPCND : 23|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKAWTCS : 18|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKASAUT : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LDWBZ : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LDAFCVB : 47|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LDARDA : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SWSSENSD : 45|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SWSSWD : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SWSRAD : 55|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SWSFLD : 53|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SWSBUZ : 50|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1207 ECO1D50: 8 CGW - SG_ DRECO01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECO08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 355 ECO1S01: 5 CGW - SG_ ECOSTAON : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECOMODE : 18|3@0+ (1,0) [0|0] "" KSS,SCS - SG_ FCREQ : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SSVMREQ : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ E2MRXMK : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BPHLDRQ : 36|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BPHLDRQ2 : 35|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECOEGSTP : 33|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 922 ECO1S90: 8 CGW - SG_ ECOBZR : 23|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECOLMP : 21|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ TESTECO : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ OPLMPMSK : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MSTART : 28|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECOMODE3 : 27|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ INFSSCOP : 39|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ INFSSSTL : 36|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECLMP : 34|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ AUTOSTA : 47|1@0+ (1,0) [0|0] "" SCS - SG_ INFSSFAL : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ INFSSINH : 45|6@0+ (1,0) [0|0] "" Vector__XXX - SG_ SSACMODE : 52|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ INFSSADV : 50|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1182 ECT1D50: 8 CGW - SG_ DRECT01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1183 ECT1D51: 8 CGW - SG_ DRECT11 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT12 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT13 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT14 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT15 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT16 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT17 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT18 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1200 ECT1D52: 8 CGW - SG_ DRECT21 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT22 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT23 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT24 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT25 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT26 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT27 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT28 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1201 ECT1D53: 8 CGW - SG_ DRECT31 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT32 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT33 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT34 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT35 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT36 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT37 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT38 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1202 ECT1D54: 8 CGW - SG_ DRECT41 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT42 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT43 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT44 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT45 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT46 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT47 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT48 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1203 ECT1D55: 8 CGW - SG_ DRECT51 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT52 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT53 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT54 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT55 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT56 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT57 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRECT58 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 464 ECT1F03: 8 CGW - SG_ NT : 7|16@0- (0.390625,0) [0|0] "rpm" Vector__XXX - SG_ ACT : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XDMET : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XNTSW : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XNMET : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XRMET : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XPMET : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SFTOUT_S : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ X3MET : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ X2MET : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XLOMET : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ L4SW : 38|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SNOW : 36|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XFSFT : 35|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SFTOUT : 34|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ HSSLWN : 55|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HSINH : 54|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CLTMODBK : 53|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ LUOUT : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LUKG : 50|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ FBCOA : 48|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ECTF03SM : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 725 ECT1S10: 2 CGW - SG_ VTORATIO : 7|16@0+ (0.0009765625,0) [0|0] "" Vector__XXX - -BO_ 956 ECT1S92: 8 CGW - SG_ B_OILW : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_OILMD : 5|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_ISNW : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_RJTB : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_WNDL : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_LMULRJ : 14|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_P : 13|1@0+ (1,0) [0|0] "" AFS,CSR,MAV - SG_ B_R : 12|1@0+ (1,0) [0|0] "" AFS,BSR,CSR,DS1,FCM,MAV - SG_ B_N : 11|1@0+ (1,0) [0|0] "" AFS,CSR,MAV - SG_ B_ISPTM : 10|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ BV_THOCL : 23|16@0+ (0.625,-50) [0|0] "" Vector__XXX - SG_ B_GEAR : 39|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_SMDE : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_D : 47|1@0+ (1,0) [0|0] "" AFS,CSR,DS1,MAV - SG_ B_ECOMI : 40|1@0+ (1,0) [0|0] "" DS1 - SG_ B_SPTMI : 55|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_PWRM : 54|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_OILWM : 51|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_SPTMS : 49|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_DMODE : 61|3@0+ (1,0) [0|0] "" SCS - -BO_ 1176 ENG1D50: 8 CGW - SG_ DRENG01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1177 ENG1D51: 8 CGW - SG_ DRENG11 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG12 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG13 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG14 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG15 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG16 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG17 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG18 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1178 ENG1D52: 8 CGW - SG_ DRENG21 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG22 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG23 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG24 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG25 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG26 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG27 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG28 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1179 ENG1D53: 8 CGW - SG_ DRENG31 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG32 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG33 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG34 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG35 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG36 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG37 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG38 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1180 ENG1D54: 8 CGW - SG_ DRENG41 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG42 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG43 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG44 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG45 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG46 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG47 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG48 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1181 ENG1D55: 8 CGW - SG_ DRENG51 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG52 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG53 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG54 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG55 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG56 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG57 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG58 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1192 ENG1D56: 8 CGW - SG_ DRENG61 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG62 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG63 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG64 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG65 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG66 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG67 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG68 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1191 ENG1D57: 8 CGW - SG_ DRENG71 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG72 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG73 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG74 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG75 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG76 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG77 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG78 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1197 ENG1D58: 8 CGW - SG_ DRENG81 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG82 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG83 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG84 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG85 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG86 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG87 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG88 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1198 ENG1D59: 8 CGW - SG_ DRENG91 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG92 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG93 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG94 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG95 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG96 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG97 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG98 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1199 ENG1D60: 8 CGW - SG_ DRENG101 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG102 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG103 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG104 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG105 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG106 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG107 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRENG108 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1017 ENG1F03: 8 CGW - SG_ VARENG1 : 7|4@0+ (1,0) [0|0] "" AFS,SCS - SG_ VARENG2 : 3|4@0+ (1,0) [0|0] "" AFS,SCS - SG_ VARENG3 : 15|4@0+ (1,0) [0|0] "" AFS,SCS - SG_ VARENG4 : 11|1@0+ (1,0) [0|0] "" AFS,SCS - SG_ HVFLAG : 10|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,SCS - SG_ VARTRM1 : 23|4@0+ (1,0) [0|0] "" AFS,CSR,FCM,MAV,SCS - SG_ GEARINF : 19|4@0+ (1,0) [0|0] "" SCS - SG_ DVINF : 31|2@0+ (1,0) [0|0] "" AFS,DS1,FCM,SCS - SG_ OBDINF : 27|4@0+ (1,0) [0|0] "" BSR,DS1,FCM,SCS - SG_ ECOFLAG : 39|1@0+ (1,0) [0|0] "" FCM - SG_ CDYMD : 38|2@0+ (1,0) [0|0] "" DS1,FCM - SG_ ENGF03SM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - -BO_ 452 ENG1F07: 8 CGW - SG_ NE1 : 7|16@0- (0.78125,0) [0|0] "rpm" SCS - SG_ THA1 : 23|8@0+ (2.5,-40) [0|0] "" Vector__XXX - SG_ THWX : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ EGF : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ T2ERXF : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ T2ERXMK : 28|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ASTEFI : 27|1@0+ (1,0) [0|0] "" AFS - SG_ B2ERXMK : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PDLF : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ENTCAL2 : 39|8@0+ (12.5,0) [0|0] "rpm" Vector__XXX - SG_ EGFB : 46|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ PTFB : 45|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MILREQ : 43|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_ECOL : 55|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_IECOCR : 53|6@0+ (2,0) [0|0] "" Vector__XXX - SG_ ENGF07SM : 63|8@0+ (1,0) [0|0] "" AFS,DS1,FCM - -BO_ 114 ENG1F43: 5 CGW - SG_ FAVLMCHL : 7|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ FAVLMONL : 23|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ ENGF43SM : 39|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 705 ENG1S01: 8 CGW - SG_ ETCSFB : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ETCSF : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSCTH : 5|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ THF : 4|1@0+ (1,0) [0|0] "" DS1 - SG_ IDL1 : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XCCACT2 : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ STPSWF : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ WTC : 0|1@0+ (1,0) [0|0] "" KSS,SCS - SG_ ETQLVSC : 15|16@0- (0.03125,0) [0|0] "Nm" Vector__XXX - SG_ ETQREAL : 31|16@0- (0.03125,0) [0|0] "Nm" SCS - SG_ ETQISC : 47|8@0+ (1,-192) [0|0] "Nm" Vector__XXX - SG_ EACCP : 55|8@0+ (0.5,0) [0|0] "%" DS1,FCM - SG_ ENG01SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 961 ENG1S23: 3 CGW - SG_ EKLSM : 7|8@0+ (0.625,0) [0|0] "%" Vector__XXX - SG_ GATHW : 15|16@0- (0.625,0) [0|0] "" Vector__XXX - -BO_ 979 ENG1S28: 2 CGW - SG_ B_FC : 7|16@0+ (0.0005,0) [0|0] "ml" Vector__XXX - -BO_ 1408 ENG1S51: 8 CGW - SG_ VIN_1 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_2 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_3 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_4 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_5 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_6 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_7 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_8 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1409 ENG1S52: 8 CGW - SG_ VIN_9 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_10 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_11 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_12 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_13 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_14 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_15 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VIN_16 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1410 ENG1S54: 8 CGW - SG_ VIN_17 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ VC : 52|5@0+ (1,0) [0|0] "" Vector__XXX - SG_ TES : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 955 ENG1S92: 8 CGW - SG_ B_ST : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_TC : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_GLOW : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_STPE : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_OMWI : 15|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_SILUP : 13|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_SILDN : 12|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_WSTP : 11|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_LOUT : 10|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_OILPL : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_TMP : 23|8@0+ (0.5,0) [0|0] "" Vector__XXX - SG_ OGENETCS : 30|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_DPFW : 28|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ BOSLAMP : 37|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ BOSMINF : 34|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ GOSLAMP : 45|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ GOSMINF : 42|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 921 ENG1S95: 8 CGW - SG_ B_LLSP2 : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TLSTBZ : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_ASLBZ2 : 5|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_SPU2 : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACASID1 : 3|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACASID2 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_LSP2 : 31|8@0+ (1,0) [0|0] "km/h Emph" Vector__XXX - SG_ B_ASLSP2 : 39|8@0+ (1,0) [0|0] "km/h Emph" Vector__XXX - SG_ CACCTRN : 47|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCINF : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCFR2 : 45|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCFR1 : 44|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCFLD : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCCM3 : 42|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCCM2 : 41|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CACCCM1 : 40|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 238 ENG2F01: 4 CGW - SG_ STOFOK : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GROWIND : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_TMP3 : 15|8@0+ (0.5,0) [0|0] "" Vector__XXX - SG_ IMMINJST : 23|16@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 466 ENG2F04: 8 CGW - SG_ XLDR : 7|1@0+ (1,0) [0|0] "" DS1 - SG_ XACCACTV : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XACCACT : 5|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ XPAIDLV : 4|1@0+ (1,0) [0|0] "" DS1 - SG_ XPAIDL : 3|1@0+ (1,0) [0|0] "" DS1 - SG_ BHOK : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RQBH : 1|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCSTAT : 15|3@0+ (1,0) [0|0] "" DS1 - SG_ ACCSTBK : 12|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ STPBZ : 9|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ PLOCKF : 8|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ACCREQ : 23|16@0- (0.0009765625,0) [0|0] "m/s^2" DS1 - SG_ ACCAVL : 39|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ SPDSTAT : 55|4@0+ (1,0) [0|0] "" DS1 - SG_ SSTOK : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CANREQ : 49|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FCACT : 48|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SM1D2 : 63|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 467 ENG2F05: 8 CGW - SG_ LCCW2 : 4|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ WSTL2 : 3|1@0+ (1,0) [0|0] "" DS1 - SG_ LCCHK : 2|3@0+ (1,0) [0|0] "" DS1 - SG_ XCCOK2 : 15|1@0+ (1,0) [0|0] "" DS1 - SG_ SLTACC : 14|2@0+ (1,0) [0|0] "" DS1 - SG_ LTME2 : 12|2@0+ (1,0) [0|0] "" DS1 - SG_ STPSWF2 : 10|1@0+ (1,0) [0|0] "" DS1 - SG_ CCSF : 9|1@0+ (1,0) [0|0] "" DS1 - SG_ CCSNG : 8|1@0+ (1,0) [0|0] "" DS1 - SG_ VM : 23|16@0+ (0.00390625,0) [0|0] "km/h" DS1 - SG_ INTG : 39|8@0- (0.04,0) [0|0] "m/s^2" DS1 - SG_ D2PRXMK : 47|1@0+ (1,0) [0|0] "" DS1 - SG_ SM1D3 : 63|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 119 ENG2F41: 6 CGW - SG_ FDRV : 7|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ FDRVREAL : 23|13@0- (10,0) [0|0] "N" Vector__XXX - SG_ XAECT : 39|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ XFDRVCOL : 38|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FDRVSELP : 34|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ ENG2F41S : 47|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 120 ENG2F42: 4 CGW - SG_ FAVLMCHH : 7|16@0- (2,0) [0|0] "N" Vector__XXX - SG_ CCRNG : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FDRVTYPD : 22|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ GEARHD : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ENG2F42S : 31|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 916 EPS1S90: 1 CGW - SG_ B_WPS0 : 1|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1235 FCM1N01: 8 FCM - SG_ FCMNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ FCMSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ FCMSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ FCMREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 1161 FCM1S10: 8 FCM - SG_ TSGN1 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNGRY1 : 12|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNHLT1 : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPDVAL1 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPLSGN1 : 31|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPLSGN2 : 27|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGN2 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNGRY2 : 44|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNHLT2 : 41|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPDVAL2 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ BZRRQ_P : 63|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ BZRRQ_A : 61|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SYNCID1 : 59|4@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1162 FCM1S11: 8 FCM - SG_ TSGN3 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNGRY3 : 12|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNHLT3 : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPLSGN3 : 31|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPLSGN4 : 27|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGN4 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNGRY4 : 44|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSGNHLT4 : 41|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ DPSGNREQ : 54|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SGNNUMP : 53|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SGNNUMA : 50|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SPDUNT : 63|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSRWMSG : 61|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ SYNCID2 : 59|4@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1163 FCM1S12: 8 FCM - SG_ TSREQPD : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSRMSW : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ OTSGNNTM : 5|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ NTLVLSPD : 3|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ OVSPNTM : 1|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ OVSPVALL : 11|4@0+ (1,-5) [0|0] "" Vector__XXX - SG_ OVSPVALM : 19|4@0+ (1,-5) [0|0] "" Vector__XXX - SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" Vector__XXX - SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1279 FRD1N01: 8 FRD - SG_ FRDNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ FRDSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ FRDSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ FRDREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 737 FWM1S01: 2 CGW - SG_ ACTHLF : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MOT4WD : 6|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CCANCEL : 5|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AI4WD : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LOW4 : 3|1@0+ (1,0) [0|0] "" MAV,SCS - SG_ DLOCK : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RDLOCK : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HLN : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ F_SP4WD : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RQ_SP4WD : 14|7@0+ (1,73) [0|0] "km/h" Vector__XXX - -BO_ 1082263092 IDT1S03_82: 8 CGW - SG_ IDT03_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ IDT03_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ CO_IDT : 23|16@0+ (1,0) [0|0] "" Vector__XXX - SG_ UACK : 39|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ WRT : 38|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RSTP : 37|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1082328629 IDT1S04_83: 8 CGW - SG_ IDT04_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ IDT04_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ OSID : 47|16@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1257 KSS1N01: 8 KSS - SG_ KSSNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ KSSSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ KSSSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ KSSREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 927 KSS1S90: 1 KSS - SG_ LKSS0 : 1|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1263 MAV1N01: 8 MAV - SG_ MAVNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ MAVSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ MAVSPF : 23|16@0+ (1,0) [0|0] "" CGW - -BO_ 1075840528 MET1S01_20: 8 CGW - SG_ MET01_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET01_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET_SPD : 23|8@0+ (1,0) [0|0] "km/h" CSR - SG_ RHEOSTAT : 30|7@0+ (1,0) [0|0] "%" Vector__XXX - SG_ TAIL_CN : 39|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ILL_OF : 37|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ UNIT_TMP : 33|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ IN_FC : 47|16@0+ (0.1,0) [0|0] "Note" Vector__XXX - SG_ UNIT_0 : 63|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SP_TL : 60|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET_TC : 56|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075906065 MET1S02_21: 8 CGW - SG_ MET02_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET02_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET_DEST : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ ODO_UNIT : 29|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ OMRS : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ UNIT_CH : 26|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ ODO : 39|32@0+ (1,0) [0|0] "km/mile" Vector__XXX - -BO_ 1076037145 MET1S04_23: 8 CGW - SG_ MET04_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET04_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ AF_FC : 23|16@0+ (0.1,0) [0|0] "Note" Vector__XXX - SG_ UNIT_3 : 39|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ RANGE : 47|16@0+ (1,0) [0|0] "Note" Vector__XXX - SG_ UNIT_4 : 63|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1076102682 MET1S05_24: 8 CGW - SG_ MET05_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET05_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TO_SP : 23|16@0+ (0.1,0) [0|0] "km/h,MPH" Vector__XXX - SG_ UNIT_5 : 39|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ TO_FC : 47|16@0+ (0.1,0) [0|0] "MPG Ekm/l El/100km Ekm/gallon" Vector__XXX - SG_ UNIT_6 : 63|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1076299282 MET1S08_27: 8 CGW - SG_ MET08_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET08_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ TO_DT : 23|16@0+ (1,0) [0|0] "km,mile" Vector__XXX - SG_ UNIT_10 : 39|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1076364819 MET1S09_28: 8 CGW - SG_ MET09_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET09_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ WASH : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BLVW : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_CW : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ENGW : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ABSW : 28|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSCW : 27|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ OPW : 37|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ OLW : 36|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LW : 35|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FSRS : 33|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ HALW : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRW : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TIRW : 42|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FWW : 40|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SUSW : 53|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LKAW : 61|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET_PCSW : 59|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ WTPW : 57|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1076430356 MET1S10_29: 8 CGW - SG_ MET10_ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ MET10_IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ OM_MLG : 23|7@0+ (100,0) [0|0] "miles" Vector__XXX - SG_ PR_OM_FL : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TNS : 29|2@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM - SG_ HZS : 27|1@0+ (1,0) [0|0] "" AFS,FCM - -BO_ 1076495893 MET1S11_2A: 8 CGW - SG_ MET11_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET11_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ UNIT_CH2 : 23|2@0+ (1,0) [0|0] "" FCM - SG_ TOLER_A : 21|6@0+ (0.002,0.94) [0|0] "" FCM - SG_ CDISP_EX : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TOLER_B : 29|6@0- (0.2,0) [0|0] "km/h" FCM - SG_ TRIP_B : 39|32@0+ (0.1,0) [0|0] "km/MILE" Vector__XXX - -BO_ 1076561430 MET1S12_2B: 8 CGW - SG_ MET12_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ MET12_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ ESLW : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CSOW : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LHLW : 37|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SMBW : 33|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ KDSW : 32|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ OMRW : 46|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BSDW : 54|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ MTSW : 48|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ ATSW : 63|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 992 MET1S18: 8 CGW - SG_ M_LANG : 7|6@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNG_ST : 1|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB1 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB2 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB3 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB4 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB5 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB6 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ M_LNGDB7 : 63|7@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1075840755 MET1S22_20: 8 CGW - SG_ ID6F320 : 7|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ IF6F320 : 15|8@0+ (1,0) [0|0] "" DS1,FCM - SG_ TSR_OSM : 22|2@0+ (1,0) [0|0] "" FCM - SG_ TSR_OSL : 20|2@0+ (1,0) [0|0] "" FCM - SG_ TSR_SNM : 18|2@0+ (1,0) [0|0] "" FCM - SG_ TSR_MAIN : 16|1@0+ (1,0) [0|0] "" FCM - SG_ LDAMCUS : 31|2@0+ (1,0) [0|0] "" FCM - SG_ LDAMSW : 29|2@0+ (1,0) [0|0] "" FCM - SG_ FCMUSER : 27|1@0+ (1,0) [0|0] "" FCM - SG_ FCMMCUS : 26|2@0+ (1,0) [0|0] "" FCM - SG_ FCMMSW : 24|1@0+ (1,0) [0|0] "" FCM - SG_ BSMMSW : 37|1@0+ (1,0) [0|0] "" BSR - SG_ CSRMSW : 34|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSMCUS : 41|1@0+ (1,0) [0|0] "" DS1 - SG_ PCSMSW : 40|1@0+ (1,0) [0|0] "" DS1 - SG_ LKACTCSW : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ LDA_SFB : 50|3@0+ (1,0) [0|0] "" FCM - -BO_ 1088685760 PMN1F03_E4: 8 CGW - SG_ PMNF03ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ PMNF03IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ PSSW_PMN : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PSW_PMN : 31|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ KCC_PMN : 29|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PMOD_PMN : 27|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ MOD_EIG : 39|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SWBZ_EIG : 36|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1193 SCS1D50: 8 SCS - SG_ DRSCS01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ DRSCS08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1226 SCS1N01: 8 SCS - SG_ SCSNID : 7|8@0+ (1,0) [0|0] "" CGW - SG_ SCSSNG : 15|1@0+ (1,0) [0|0] "" CGW - SG_ SCSSPF : 23|16@0+ (1,0) [0|0] "" CGW - SG_ SCSREV : 39|32@0+ (1,0) [0|0] "" CGW - -BO_ 744 SCS1S01: 8 SCS - SG_ SELECTOR : 3|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVS_MD : 63|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 815 SCS1S06: 5 SCS - SG_ RRVH : 23|8@0- (1,0) [0|0] "mm" AFS - SG_ RLVH : 31|8@0- (1,0) [0|0] "mm" AFS - SG_ SCECOINH : 35|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 917 SCS1S90: 4 SCS - SG_ B_LSUS6 : 7|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_LSUS4 : 5|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_LSUS2 : 3|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_LSUS8 : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ DLR_HSID : 23|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LAR_HS : 18|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ AVSNI : 16|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 37 STR1S01: 8 CGW - SG_ STS3 : 7|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,MAV - SG_ STS2 : 6|1@0+ (1,0) [0|0] "" AFS,DS1,FCM,KSS,MAV,SCS - SG_ STS1 : 5|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,KSS,MAV,SCS - SG_ STS0 : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ SSA : 3|12@0- (1.5,0) [0|0] "deg" AFS,BSR,DS1,FCM,KSS,MAV,SCS - SG_ SAZS : 23|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM - SG_ SFRZ : 22|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ SSAZ : 19|12@0- (1.5,0) [0|0] "deg" AFS,BSR,DS1,FCM - SG_ SSAS : 39|4@0- (0.1,0) [0|0] "deg" FCM,KSS,SCS - SG_ SSAV : 35|12@0- (1,0) [0|0] "deg/s" FCM,KSS,SCS - SG_ STDID : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ STR01SUM : 63|8@0+ (1,0) [0|0] "" AFS,DS1,FCM,MAV - -BO_ 1059 STR1S02: 1 CGW - SG_ SFR : 5|1@0+ (1,0) [0|0] "" MAV - SG_ STRWVG : 4|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM - -BO_ 170 VSC1F01: 8 CGW - SG_ VXFREF : 7|1@0+ (1,0) [0|0] "" AFS,FCM,MAV - SG_ VXFR : 6|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS - SG_ VXFLEF : 23|1@0+ (1,0) [0|0] "" AFS,FCM,MAV - SG_ VXFL : 22|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS - SG_ VXRREF : 39|1@0+ (1,0) [0|0] "" AFS,FCM,MAV - SG_ VXRR : 38|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS - SG_ VXRLEF : 55|1@0+ (1,0) [0|0] "" AFS,FCM,MAV - SG_ VXRL : 54|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS - -BO_ 426 VSC1F02: 6 CGW - SG_ VXFRF : 7|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV - SG_ VXFRIGS : 6|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV - SG_ VXFRHDS : 5|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS - SG_ VXFLF : 2|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV - SG_ VXFLIGS : 1|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV - SG_ VXFLHDS : 0|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS - SG_ VXRRF : 13|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV - SG_ VXRRIGS : 12|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV - SG_ VXRRHDS : 11|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS - SG_ VXRLF : 8|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV - SG_ VXRLIGS : 23|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV - SG_ VXRLHDS : 22|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS - SG_ VSCF02SM : 47|8@0+ (1,0) [0|0] "" AFS,DS1,FCM,MAV - -BO_ 550 VSC1F06: 8 CGW - SG_ VSCF01FG : 7|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ AHCURQ : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PMCF : 3|1@0+ (1,0) [0|0] "" DS1 - SG_ PMCS : 2|1@0+ (1,0) [0|0] "" DS1 - SG_ PMC : 1|10@0+ (0.02,0) [0|0] "Mpa" DS1 - SG_ ECOEN : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ CCS : 22|1@0+ (1,0) [0|0] "" DS1 - SG_ FBA : 21|1@0+ (1,0) [0|0] "" DS1 - SG_ TRBRKSYS : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TS : 38|1@0+ (1,0) [0|0] "" KSS,SCS - SG_ WSTP : 37|1@0+ (1,0) [0|0] "" DS1,KSS,SCS - SG_ VSCACT : 36|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ BAEX : 35|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TEM : 34|3@0+ (1,0) [0|0] "" SCS - SG_ FSTP : 60|1@0+ (1,0) [0|0] "" DS1 - SG_ ABSACT : 59|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - -BO_ 180 VSC1S03: 8 CGW - SG_ SP1P : 39|6@0+ (1,0) [0|0] "" DS1,FCM - SG_ SP1S : 33|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV - SG_ SP1 : 47|16@0- (0.01,0) [0|0] "km/h" BSR,DS1,FCM,MAV - SG_ VSC03SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - -BO_ 800 VSC1S07: 8 CGW - SG_ FBKRLY : 6|1@0+ (1,0) [0|0] "" DS1 - SG_ FVSCM : 4|1@0+ (1,0) [0|0] "" DS1 - SG_ FVSCSFT : 3|1@0+ (1,0) [0|0] "" DS1 - SG_ FABS : 2|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ TSVSC : 1|1@0+ (1,0) [0|0] "" DS1 - SG_ FVSCL : 0|1@0+ (1,0) [0|0] "" DS1 - SG_ RQCSTBKB : 15|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PSBSTBY : 14|1@0+ (1,0) [0|0] "" DS1 - SG_ P2BRXMK : 13|1@0+ (1,0) [0|0] "" DS1 - SG_ MCC : 11|1@0+ (1,0) [0|0] "" DS1 - SG_ RQBKB : 10|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRSTOP : 9|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ BRKON : 8|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ ASLP : 23|8@0- (1,0) [0|0] "deg" DS1 - SG_ BRTYPACC : 31|2@0+ (1,0) [0|0] "" DS1 - SG_ BRKABT3 : 26|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRKABT2 : 25|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRKABT1 : 24|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ GVC : 39|8@0- (0.04,0) [0|0] "m/s^2" DS1 - SG_ XGVCINV : 43|1@0+ (1,0) [0|0] "" DS1 - SG_ S07CNT : 52|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ PCSBRSTA : 50|2@0+ (1,0) [0|0] "" DS1 - SG_ VSC07SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 1056 VSC1S08: 8 CGW - SG_ YR1Z : 7|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV - SG_ YR2Z : 23|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV - SG_ GL1Z : 39|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS - SG_ GL2Z : 47|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS - SG_ YRGSDIR : 55|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,SCS - SG_ GLZS : 51|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ YRZF : 50|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRZS : 49|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRZKS : 48|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ VSC08SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - -BO_ 186 VSC1S12: 4 CGW - SG_ HAC2ESRQ : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FHACHOLD : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSC12SUM : 31|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 562 VSC1S14: 6 CGW - SG_ VWPSUMFR : 7|8@0+ (1,0) [0|0] "" MAV - SG_ VWPSUMFL : 15|8@0+ (1,0) [0|0] "" MAV - SG_ VWPFRPM : 23|1@0+ (1,0) [0|0] "" MAV - SG_ VWPFLPM : 22|1@0+ (1,0) [0|0] "" MAV - SG_ S14CNT : 21|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ VWPFRPMS : 18|1@0+ (1,0) [0|0] "" MAV - SG_ VWPFLPMS : 17|1@0+ (1,0) [0|0] "" MAV - SG_ VWPSUMRR : 31|8@0+ (1,0) [0|0] "" MAV - SG_ VWPSUMRL : 39|8@0+ (1,0) [0|0] "" MAV - SG_ VSC14SUM : 47|8@0+ (1,0) [0|0] "" MAV - -BO_ 552 VSC1S29: 4 CGW - SG_ ICBACT : 7|1@0+ (1,0) [0|0] "" DS1 - SG_ DVS0PCS : 6|15@0- (0.001,0) [0|0] "m/s^2" DS1 - SG_ SM228 : 31|8@0+ (1,0) [0|0] "" DS1 - -BO_ 1168 VSC1S92: 1 CGW - SG_ C_DCMOD1 : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_DCMOD2 : 6|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ C_DCMOD3 : 3|4@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 951 VSC1S95: 8 CGW - SG_ B_BRKW : 7|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_ABS : 5|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_BRLV : 14|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRCOFF : 13|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ VSCOFF : 12|2@0+ (1,0) [0|0] "" DS1,FCM - SG_ SLP_WL : 10|3@0+ (1,0) [0|0] "" MAV - SG_ B_MCST : 19|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_BUZZER : 31|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_ALSD : 27|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_DACIND : 25|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ OGENVSC : 37|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_ATRC : 47|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_STRC : 46|3@0+ (1,0) [0|0] "" MAV - SG_ B_HZD : 43|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSCSWIH : 51|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ STRCDISP : 50|3@0+ (1,0) [0|0] "" Vector__XXX - SG_ STRCDSP2 : 60|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSCEXIST : 59|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1063 VSC1S96: 8 CGW - SG_ MTS_DISP : 5|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ B_MTS : 1|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRCCONRL : 11|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRCCONRR : 10|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRCCONFL : 9|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRCCONFR : 8|1@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 545 VSC2F05: 5 CGW - SG_ TQER : 7|16@0- (0.03125,0) [0|0] "Nm" Vector__XXX - SG_ REQC : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ REQ2 : 22|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ REQ1 : 21|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ AIDWI : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ RTD : 19|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ LOMUSFT : 31|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSC2F05S : 39|8@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 544 VSC2F07: 4 CGW - SG_ FSROT : 7|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRK2 : 4|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ BRK1 : 3|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ FCNG : 1|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TSLP : 0|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ TRCACT : 15|1@0+ (1,0) [0|0] "" DS1,FCM - SG_ ABSSLP : 14|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ VDMACT : 13|1@0+ (1,0) [0|0] "" FCM - SG_ DAC_CND : 9|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ VSC2F07S : 31|8@0+ (1,0) [0|0] "" DS1,FCM - -BO_ 36 YGS1S03: 8 CGW - SG_ YRS11S : 7|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRS14S : 6|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRS21S : 5|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YRS24S : 4|1@0+ (1,0) [0|0] "" DS1,FCM,MAV - SG_ YGS1 : 3|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ YGS0 : 2|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR : 1|10@0+ (0.244,-125) [0|0] "deg/sec" DS1,FCM,MAV - SG_ YR_CPUMN : 23|4@0+ (1,0) [0|0] "" Vector__XXX - SG_ GS4S : 19|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ GS1S : 18|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ GL1X : 17|10@0+ (0.03589,-18.375) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS - SG_ YG_ID : 39|4@0+ (1,0) [0|0] "" DS1,FCM,KSS,SCS - SG_ GS5S : 35|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ GS2S : 34|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS - SG_ GL2Y : 33|10@0+ (0.03589,-18.375) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS - SG_ YR_DIF : 55|8@0+ (0.244,-31) [0|0] "deg/sec" DS1,FCM,MAV - SG_ YGS03SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV - -BO_ 1073743490 YGW1S01_0: 8 CGW - SG_ YGW01_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ YGW01_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_STSW : 22|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_EGST : 20|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_DRLK : 18|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_KLEG : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_HZRD : 26|3@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1073743491 YGW1S02_0: 8 CGW - SG_ YGW02_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ YGW02_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_DEFOG : 19|2@0+ (1,0) [0|0] "" Vector__XXX - SG_ YR_ARCON : 17|2@0+ (1,0) [0|0] "" Vector__XXX - -BO_ 1073743494 YGW1S05_0: 8 CGW - SG_ YGW05_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ YGW05_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX - SG_ YI_IMO_E : 23|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YI_UREQ : 16|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ YI_RE : 47|16@0+ (1,0) [0|0] "" Vector__XXX diff --git a/opendbc_repo/opendbc/dbc/toyota_adas.dbc b/opendbc_repo/opendbc/dbc/toyota_adas.dbc deleted file mode 100644 index 4aae65aa40..0000000000 --- a/opendbc_repo/opendbc/dbc/toyota_adas.dbc +++ /dev/null @@ -1,276 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - -BO_ 528 TRACK_A_0: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 529 TRACK_A_1: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 530 TRACK_A_2: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 531 TRACK_A_3: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 532 TRACK_A_4: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 533 TRACK_A_5: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 534 TRACK_A_6: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 535 TRACK_A_7: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 536 TRACK_A_8: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 537 TRACK_A_9: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 538 TRACK_A_10: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 539 TRACK_A_11: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 540 TRACK_A_12: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 541 TRACK_A_13: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 542 TRACK_A_14: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 543 TRACK_A_15: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 544 TRACK_B_0: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 545 TRACK_B_1: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 546 TRACK_B_2: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 547 TRACK_B_3: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 548 TRACK_B_4: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 549 TRACK_B_5: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 550 TRACK_B_6: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 551 TRACK_B_7: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 552 TRACK_B_8: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 553 TRACK_B_9: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 554 TRACK_B_10: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 555 TRACK_B_11: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 556 TRACK_B_12: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 557 TRACK_B_13: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 558 TRACK_B_14: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 559 TRACK_B_15: 6 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc b/opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc deleted file mode 100644 index 2213e1ade2..0000000000 --- a/opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc +++ /dev/null @@ -1,196 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - -BO_ 1552 CONTAINS_LRES_SPEED: 8 XXX - SG_ SPEED_LOWRES : 16|8@1+ (1,0) [0|255] "km/h?" XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 452 ENGINE: 8 XXX - SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "rpm" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ DIFFERENT_EACH_RIDE : 23|8@0+ (1,0) [0|255] "" XXX - SG_ A_DECREASING_VALUE : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 37 STEERING: 8 XXX - SG_ STEER_DIRECTION : 3|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 42|2@0- (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 44|2@0- (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 46|2@0- (1,0) [0|3] "" XXX - SG_ STEER_ANGLE : 2|11@0- (1,0) [-350|350] "" XXX - -BO_ 36 ACCELERATIONS: 8 XXX - SG_ ACC_LAT_CLEAN : 2|11@0- (1,0) [0|255] "" XXX - SG_ ACC_LATERAL : 63|8@0- (1,0) [0|255] "" XXX - SG_ ACC_FRONT_BACK_1 : 31|8@0- (1,0) [0|255] "" XXX - SG_ ACC_FRONT_BACK_2 : 47|8@0- (1,0) [0|255] "" XXX - -BO_ 947 LOW_RES_INDICATORS: 8 XXX - SG_ LOW_RES_ACC_PEDAL : 23|7@0+ (1,0) [0|63] "" XXX - SG_ LOW_RES_RPM : 7|16@0+ (1,0) [0|255] "rpm" XXX - -BO_ 955 BRAKING_PLUS_OTHER: 8 XXX - SG_ IS_BRAKING_2 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ENGINE_TEMPERATURE : 23|8@0+ (1,0) [0|255] "" XXX - SG_ MAYBE_CLUTCH : 13|1@0+ (1,0) [0|1] "" XXX - -BO_ 1595 CONTAINS_TIME: 8 XXX - SG_ TIME_ON : 55|16@0+ (0.1,0) [0|65535] "s" XXX - SG_ BETWEEN_RIDES : 7|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 170 WHEELS_SPEEDS: 8 XXX - SG_ FRONT_LEFT_WHEEL_SPEED : 23|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX - SG_ REAR_RIGHT_WHEEL_SPEED : 39|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX - SG_ REAR_LEFT_WHEEL_SPEED : 55|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX - SG_ FRONT_RIGHT_WHEEL_SPEED : 7|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX - -BO_ 180 VEHICLE_DYNAMICS: 8 XXX - SG_ WIERD_STUFF : 8|2@1+ (1,0) [0|3] "" XXX - SG_ VEHICLE_SPEED : 47|16@0+ (0.01,0) [0|255] "km/h" XXX - SG_ SPEED_MOD_256 : 63|8@0- (1,0) [0|255] "" XXX - SG_ MAYBE_DISTANCE_MOD_256 : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 186 NEW_MSG_9: 8 XXX - SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 426 NEW_MSG_5: 8 XXX - SG_ CONSTANT : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 906 BOOLS: 8 XXX - SG_ MAY_CONTAIN_LIGHTS : 7|4@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_1 : 3|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ MOVEMENT_START_TRIGGER : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 979 LOW_RES_ACCELERATOR: 8 XXX - SG_ VERY_LRES_ACC : 7|16@0+ (1,0) [0|65535] "" XXX - -BO_ 1600 SLOW_VARIABLE_INFOS: 8 XXX - SG_ CHANGES_EACH_RIDE : 31|8@0+ (1,0) [0|255] "" XXX - SG_ INCREASING_VALUE_FUEL : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 1568 DOORS: 8 XXX - SG_ KEY_ACC : 36|1@0+ (1,0) [0|1] "" XXX - SG_ KEY_ON : 37|1@0+ (1,0) [0|1] "" XXX - SG_ KEY_INSERT : 46|1@0+ (1,0) [0|1] "" XXX - SG_ NOT_ON : 63|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_RIGHT : 44|1@0+ (1,0) [0|3] "" XXX - SG_ DOOR_TRUNK : 41|1@1+ (1,0) [0|3] "" XXX - SG_ DOOR_LEFT : 45|1@0+ (1,0) [0|255] "" XXX - SG_ HANDBRAKE : 60|1@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_1 : 4|1@0+ (1,0) [0|1] "" XXX - SG_ DRIVER_SEATBELT : 62|1@0+ (1,0) [0|1] "" XXX - SG_ TRIGGER_BOOL : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 705 COMMAND: 8 XXX - SG_ NOT_ACCELERATING_PEDAL : 3|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_PEDAL_SENSOR : 55|16@0+ (1,0) [0|65535] "" XXX - SG_ ACC_COMMAND : 31|16@0- (1,0) [0|7] "" XXX - SG_ ACC_PEDAL_MEAN : 15|16@0- (1,0) [0|255] "" XXX - SG_ NEGATIVE_COMMAND_OFFSET : 47|8@0- (1,0) [0|255] "" XXX - -BO_ 928 STEER2_MAYBE: 8 XXX - SG_ NEW_SIGNAL_1 : 13|6@0+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_2 : 60|5@0+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_4 : 5|6@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 46|7@0+ (1,0) [0|15] "" XXX - -BO_ 896 LONG_TERM_2: 8 XXX - SG_ NEW_SIGNAL_1 : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 944 LONG_TERM_MSG: 8 XXX - SG_ LONG_TERM_SIGN : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 1553 TOTAL_DIST: 8 XXX - SG_ TOTAL_DISTANCE : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 1572 WHY_THESE_VALUES: 8 XXX - -BO_ 1555 BETWEEN_RIDES_CHANGE_1: 8 XXX - SG_ BETWEEN_RIDES : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 1090 ASYNC_MSG_ACK: 8 XXX - SG_ NEW_SIGNAL_1 : 13|2@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 1592 NEW_MSG_14: 8 XXX - SG_ DOORS_LOCKED2 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ DOORS_LOCKED1 : 16|1@0+ (1,0) [0|1] "" XXX - -BO_ 608 NEW_MSG_6: 8 XXX - SG_ VERY_SMALL_SIGNAL2 : 56|1@0+ (1,0) [0|255] "" XXX - SG_ VERY_SMALL_SIGNAL1 : 0|1@0+ (1,0) [0|1] "" XXX - -BO_ 945 BETWEEN_RIDES_CHANGES_2: 8 XXX - SG_ BETWEEN_RIDES : 24|1@0+ (1,0) [0|65535] "" XXX - - - - -CM_ SG_ 1552 SPEED_LOWRES "Negative values to check"; -CM_ SG_ 452 CHECKSUM "Follows path of RPMs but more precise & 1 byte only"; -CM_ SG_ 452 A_DECREASING_VALUE "stabilizes to 62 after ~10 mins"; -CM_ SG_ 37 STEER_DIRECTION "Could be intended as 12 bit steering angle"; -CM_ SG_ 37 STEER_ANGLE "can convert to degrees (imprecise) or percentage of max amplitude"; -CM_ SG_ 36 ACC_FRONT_BACK_1 "more likely up-down"; -CM_ SG_ 36 ACC_FRONT_BACK_2 "more likely front-back"; -CM_ SG_ 947 LOW_RES_ACC_PEDAL "Follows rather closely other acceleration commands"; -CM_ SG_ 947 LOW_RES_RPM "Maybe used for onboard display?"; -CM_ SG_ 955 MAYBE_CLUTCH "might be related to shifting gears"; -CM_ SG_ 1595 TIME_ON "Time since last ignition, tenth of seconds"; -CM_ SG_ 1595 BETWEEN_RIDES "the fourth byte (at least) changes between rides"; -CM_ SG_ 180 WIERD_STUFF "Might be a signed value on the whole two bytes (sometimes all set)"; -CM_ SG_ 180 VEHICLE_SPEED "Roughly 2 seconds before wheel speeds"; -CM_ SG_ 180 SPEED_MOD_256 "One byte speed, a bit before vehicle speed"; -CM_ SG_ 180 MAYBE_DISTANCE_MOD_256 "Looks like measure for distance or wheel angle"; -CM_ SG_ 906 MOVEMENT_START_TRIGGER "trigger of when speed becomes != 0"; -CM_ SG_ 979 VERY_LRES_ACC "Power used by engine? moves alongside speed, very low res, goes from 0 to 9 max?"; -CM_ SG_ 1600 CHANGES_EACH_RIDE "Small decrementation during some rides, possibly long term fuel"; -CM_ SG_ 1600 INCREASING_VALUE_FUEL "Fuel/distance? Average fuel consumption?"; -CM_ SG_ 705 NOT_ACCELERATING_PEDAL "Looks like opposite of accelerating bit"; -CM_ SG_ 705 ACC_PEDAL_SENSOR "similar to pedal sensor maybe checksum."; -CM_ SG_ 705 ACC_COMMAND "Similar to other pedal indicator., cleaner, must be sent back to engine"; -CM_ SG_ 705 ACC_PEDAL_MEAN "Actual sensor for pedal (works when engine off)"; -CM_ SG_ 705 NEGATIVE_COMMAND_OFFSET "Mysterious for now"; -CM_ SG_ 928 NEW_SIGNAL_1 "Very slow changing noisy value, 45-49 in 10 min"; -CM_ SG_ 928 NEW_SIGNAL_2 "Other very slow changing 24-26 in 10 min"; -CM_ SG_ 928 NEW_SIGNAL_4 "Inconsistent across rides"; -CM_ SG_ 896 NEW_SIGNAL_1 "there is a difference at the beginning of 2017-10-31--12-04-05"; -CM_ SG_ 1553 TOTAL_DISTANCE "Probably also contains the previous/two previous bytes but can't confirm"; -CM_ SG_ 945 BETWEEN_RIDES "Might be others in the same message. at least this one"; - diff --git a/opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc b/opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc deleted file mode 100644 index 5c7df7d18b..0000000000 --- a/opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc +++ /dev/null @@ -1,203 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX DSU HCU EPS IPAS - - -BO_ 36 KINEMATICS: 8 XXX - SG_ ACCEL_Y : 33|10@0+ (1,-512) [0|65535] "" XXX - SG_ STEERING_TORQUE : 17|10@0+ (1,-512) [0|65535] "" XXX - SG_ YAW_RATE : 1|10@0+ (1,-512) [0|65535] "" XXX - -BO_ 166 BRAKE: 8 XXX - SG_ BRAKE_AMOUNT : 7|8@0+ (1,0) [0|255] "" XXX - SG_ BRAKE_PEDAL : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 170 WHEEL_SPEEDS: 8 XXX - SG_ WHEEL_SPEED_FR : 7|16@0+ (0.0062,-67.67) [0|250] "mph" XXX - SG_ WHEEL_SPEED_FL : 23|16@0+ (0.0062,-67.67) [0|250] "mph" XXX - SG_ WHEEL_SPEED_RR : 39|16@0+ (0.0062,-67.67) [0|250] "mph" XXX - SG_ WHEEL_SPEED_RL : 55|16@0+ (0.0062,-67.67) [0|250] "mph" XXX - -BO_ 180 SPEED: 8 XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ SPEED : 47|16@0+ (0.0062,0) [0|115] "mph" XXX - SG_ ENCODER : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 295 GEAR_PACKET: 8 XXX - SG_ CAR_MOVEMENT : 39|8@0- (1,0) [0|255] "" XXX - SG_ COUNTER : 55|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - SG_ GEAR : 47|4@0+ (1,0) [0|15] "" XXX - -BO_ 466 PCM_CRUISE: 8 XXX - SG_ GAS_RELEASED : 4|1@0+ (1,0) [0|1] "" XXX - SG_ ACCEL_NET : 23|16@0- (0.001,0) [-20|20] "m/s2" XXX - SG_ CRUISE_STATE : 55|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 550 BRAKE_MODULE: 8 XXX - SG_ BRAKE_PRESSURE : 0|9@0+ (1,0) [0|511] "" XXX - SG_ BRAKE_POSITION : 16|9@0+ (1,0) [0|511] "" XXX - SG_ BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX - -BO_ 552 ACCELEROMETER: 8 XXX - SG_ ACCEL_Z : 22|15@0- (1,0) [0|32767] "" XXX - SG_ ACCEL_X : 6|15@0- (0.001,0) [-20|20] "m/s2" XXX - -BO_ 560 BRAKE_MODULE2: 8 XXX - SG_ BRAKE_LIGHTS : 26|1@0+ (1,0) [0|1] "" XXX - -BO_ 581 GAS_PEDAL: 8 XXX - SG_ GAS_PEDAL : 23|8@0+ (0.005,0) [0|1] "" XXX - -BO_ 608 STEER_TORQUE_SENSOR: 8 XXX - SG_ STEER_TORQUE_EPS : 47|16@0- (0.66,0) [-20000|20000] "" XXX - SG_ STEER_TORQUE_DRIVER : 15|16@0- (1,0) [-32768|32767] "" XXX - SG_ STEER_OVERRIDE : 0|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 610 EPS_STATUS: 5 EPS - SG_ STATE : 3|4@0+ (1,0) [0|15] "" XXX - SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 614 STEERING_IPAS: 8 IPAS - SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX - SG_ ANGLE : 3|12@0- (1,0) [0|16777215] "" XXX - SG_ SET_ME_X10 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ SET_ME_X00_1 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ DIRECTION_CMD : 38|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 643 PRE_COLLISION: 8 XXX - -BO_ 740 STEERING_LKA: 8 XXX - SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX - SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX - SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 6|6@0+ (1,0) [0|63] "" XXX - SG_ SET_ME_1 : 7|1@0+ (1,0) [0|1] "" XXX - SG_ STEER_TORQUE_CMD : 15|16@0- (1,0) [0|65535] "" XXX - -BO_ 742 LEAD_INFO: 8 DSU - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" HCU - SG_ LEAD_REL_SPEED : 23|12@0- (0.025,0) [-100|100] "m/s" HCU - SG_ LEAD_LONG_DIST : 7|13@0+ (0.05,0) [0|300] "m" HCU - -BO_ 835 ACC_CONTROL: 8 DSU - SG_ ACCEL_CMD : 7|16@0- (0.001,0) [-20|20] "m/s2" HCU - -BO_ 1556 STEERING_LEVERS: 8 XXX - SG_ TURN_SIGNALS : 29|2@0+ (1,0) [0|3] "" XXX - -BO_ 37 STEER_ANGLE_SENSOR: 8 XXX - SG_ STEER_ANGLE : 3|12@0- (1.5,0) [-500|500] "deg" XXX - SG_ STEER_FRACTION : 39|4@0- (0.1,0) [-0.7|0.7] "deg" XXX - SG_ STEER_RATE : 35|12@0- (1,0) [-2000|2000] "deg/s" XXX - -BO_ 467 PCM_CRUISE_2: 8 XXX - SG_ MAIN_ON : 15|1@0+ (1,0) [0|1] "" XXX - SG_ LOW_SPEED_LOCKOUT : 14|2@0+ (1,0) [0|3] "kph" XXX - SG_ SET_SPEED : 23|8@0+ (1,0) [0|255] "kph" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 921 PCM_CRUISE_SM: 8 XXX - SG_ MAIN_ON : 4|1@0+ (1,0) [0|1] "" XXX - SG_ CRUISE_CONTROL_STATE : 11|4@0+ (1,0) [0|15] "" XXX - SG_ UI_SET_SPEED : 31|8@0+ (1,0) [0|255] "" XXX - -BO_ 951 ESP_CONTROL: 8 ESP - SG_ TC_DISABLED : 13|1@0+ (1,0) [0|1] "" XXX - -BO_ 1042 LKAS_HUD: 8 XXX - SG_ BARRIERS : 1|2@0+ (1,0) [0|3] "" XXX - SG_ RIGHT_LINE : 3|2@0+ (1,0) [0|3] "" XXX - SG_ LEFT_LINE : 5|2@0+ (1,0) [0|3] "" XXX - SG_ SET_ME_1 : 7|2@0+ (1,0) [0|3] "" XXX - SG_ LDA_ALERT : 9|2@0+ (1,0) [0|3] "" XXX - SG_ TWO_BEEPS : 12|1@0+ (1,0) [0|1] "" XXX - SG_ ADJUSTING_CAMERA : 13|1@0+ (1,0) [0|1] "" XXX - SG_ LDA_MALFUNCTION : 15|1@0+ (1,0) [0|1] "" XXX - -BO_ 1553 UI_SEETING: 8 XXX - SG_ UNITS : 26|2@0+ (1,0) [0|3] "" XXX - -BO_ 1568 SEATS_DOORS: 8 XXX - SG_ SEATBELT_DRIVER_UNLATCHED : 62|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FL : 45|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RL : 42|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_RR : 43|1@0+ (1,0) [0|1] "" XXX - SG_ DOOR_OPEN_FR : 44|1@0+ (1,0) [0|1] "" XXX - -BO_ 452 POWERTRAIN: 8 XXX - SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "rpm" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - - - - -CM_ SG_ 36 ACCEL_Y "unit is tbd"; -CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; -CM_ SG_ 36 YAW_RATE "verify"; -CM_ SG_ 466 ACCEL_NET "net acceleration produced by the system, given ACCEL_CMD, road grade and other factors"; -CM_ SG_ 466 CRUISE_STATE "Active state is 8, if standstill is requested will switch to state 11(3 sec timer), after timer is elapsed will switch into state 7(standstill). If plus button was pressed - status 9, minus button pressed - status 10"; -CM_ SG_ 550 BRAKE_PRESSURE "seems prop to pedal force"; -CM_ SG_ 550 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; -CM_ SG_ 560 BRAKE_LIGHTS "double check"; -CM_ SG_ 581 GAS_PEDAL "it seems slightly filtered"; -CM_ SG_ 608 STEER_TORQUE_DRIVER "driver torque"; -CM_ SG_ 608 STEER_OVERRIDE "set when driver torque exceeds a certain value"; -CM_ SG_ 614 ANGLE "set to measured angle when ipas control isn't active"; -CM_ SG_ 37 STEER_FRACTION "1/15th of the signal STEER_ANGLE, which is 1.5 deg; note that 0x8 is never set"; -CM_ SG_ 37 STEER_RATE "factor is tbd"; -CM_ SG_ 467 LOW_SPEED_LOCKOUT "in low speed lockout, system would always disengage below 28mph"; -CM_ SG_ 467 SET_SPEED "43 kph are shown as 28mph, so conversion isn't perfect"; -CM_ SG_ 921 UI_SET_SPEED "set speed shown in UI with user set unit"; -CM_ SG_ 1042 SET_ME_1 "unclear what this is, nut it's always 1 in drive traces"; -VAL_ 295 GEAR 0 "P" 1 "R" 2 "N" 3 "D" 4 "B" ; -VAL_ 466 CRUISE_STATE 11 "timer_3sec" 10 "setspeeddown" 9 "setspeedup" 8 "active" 7 "standstill" 1 "off" 0 "off"; -VAL_ 610 STATE 5 "override" 3 "enabled" 1 "disabled" ; -VAL_ 610 LKA_STATE 50 "temporary_fault" ; -VAL_ 614 STATE 3 "enabled" 1 "disabled" ; -VAL_ 614 DIRECTION_CMD 3 "right" 2 "center" 1 "left" ; -VAL_ 1556 TURN_SIGNALS 3 "none" 2 "right" 1 "left" ; -VAL_ 467 LOW_SPEED_LOCKOUT 2 "low speed locked" 1 "ok" ; -VAL_ 921 CRUISE_CONTROL_STATE 2 "disabled" 11 "hold" 10 "hold_waiting_user_cmd" 6 "enabled" 5 "faulted" ; -VAL_ 1042 BARRIERS 3 "both" 2 "right" 1 "left" 0 "none" ; -VAL_ 1042 RIGHT_LINE 3 "orange" 2 "double" 1 "solid" 0 "none" ; -VAL_ 1042 LEFT_LINE 3 "orange" 2 "double" 1 "solid" 0 "none" ; -VAL_ 1042 LDA_ALERT 3 "hold with continuous beep" 2 "LDA unavailable" 1 "hold" 0 "none" ; -VAL_ 1553 UNITS 1 "km" 2 "miles" ; diff --git a/opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc b/opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc deleted file mode 100644 index 168e589136..0000000000 --- a/opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc +++ /dev/null @@ -1,194 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX RADAR - -BO_ 768 BUTTONS: 8 RADAR - SG_ LKAS_PRESS : 2|1@0+ (1,0) [0|1] "" XXX - SG_ DISTANCE_PRESS : 5|1@0+ (1,0) [0|1] "" XXX - -BO_ 769 OBJECT_0: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 771 OBJECT_1: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 773 OBJECT_2: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 775 OBJECT_3: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 777 OBJECT_4: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 779 OBJECT_5: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 781 OBJECT_6: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 783 OBJECT_7: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 785 OBJECT_8: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 787 OBJECT_9: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 789 OBJECT_10: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 791 OBJECT_11: 8 RADAR - SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "Front target" -BO_ 1664 CLUSTER_F: 8 RADAR - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "Front target ahead" -BO_ 1665 CLUSTER_F_A: 8 RADAR - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "Left target" -BO_ 1666 CLUSTER_L: 8 RADAR - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "Right target" -BO_ 1667 CLUSTER_R: 8 RADAR - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "Left target ahead" -BO_ 1668 CLUSTER_L_A: 8 RADAR - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ "Right target ahead" -BO_ 1669 CLUSTER_R_A: 8 RADAR - SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX - SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX - SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX - SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX - SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX - SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX - SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc b/opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc deleted file mode 100644 index d472debd61..0000000000 --- a/opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc +++ /dev/null @@ -1,285 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX - - -BO_ 384 TRACK_A_0: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 385 TRACK_A_1: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 386 TRACK_A_2: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 387 TRACK_A_3: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 388 TRACK_A_4: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 389 TRACK_A_5: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 390 TRACK_A_6: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 391 TRACK_A_7: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 392 TRACK_A_8: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 393 TRACK_A_9: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 394 TRACK_A_10: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 395 TRACK_A_11: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 396 TRACK_A_12: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 397 TRACK_A_13: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 398 TRACK_A_14: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 399 TRACK_A_15: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX - SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX - SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX - SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX - SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 400 TRACK_B_0: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 401 TRACK_B_1: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 402 TRACK_B_2: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 403 TRACK_B_3: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 404 TRACK_B_4: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 405 TRACK_B_5: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 406 TRACK_B_6: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 407 TRACK_B_7: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 408 TRACK_B_8: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 409 TRACK_B_9: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 410 TRACK_B_10: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 411 TRACK_B_11: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 412 TRACK_B_12: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 413 TRACK_B_13: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 414 TRACK_B_14: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 415 TRACK_B_15: 8 XXX - SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX - SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX - SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX - SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 576 NEW_MSG_1: 8 XXX - SG_ NEW_SIGNAL_1 : 15|7@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 577 NEW_MSG_2: 8 XXX - SG_ NEW_SIGNAL_1 : 15|7@0+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc b/opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc deleted file mode 100644 index 3c04331649..0000000000 --- a/opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc +++ /dev/null @@ -1,363 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX BCM CEM CVM DIM ECM FSM PSCM SAS SRS TCM - -BO_ 8 SAS0: 8 SAS - SG_ SteeringDirection : 42|1@0+ (1,0) [0|1] "" XXX - SG_ RelativeTurnDirection : 43|1@0+ (1,0) [0|1] "" XXX - SG_ SteeringAngle : 53|14@0+ (0.04395,0) [0|65535] "degrees" XXX - SG_ NEW_SIGNAL_1 : 47|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ AngleRate : 21|14@0+ (0.075,0) [0|1500] "deg/S" XXX - -BO_ 16 CCButtons: 8 CEM - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|5@0+ (1,0) [0|31] "" XXX - SG_ B7b0 : 56|1@0+ (1,0) [0|1] "" XXX - SG_ B7b1 : 57|1@0+ (1,0) [0|1] "" XXX - SG_ B7b6 : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ACCOnOffBtn : 58|1@0+ (1,0) [0|1] "" XXX - SG_ ACCSetBtn : 63|1@0+ (1,0) [0|1] "" XXX - SG_ ACCStopBtn : 60|1@0+ (1,0) [0|1] "" XXX - SG_ ACCResumeBtn : 61|1@0+ (1,0) [0|1] "" XXX - SG_ ACCMinusBtn : 48|1@0+ (1,0) [0|1] "" XXX - SG_ TimeGapIncreaseBtn : 49|1@0+ (1,0) [0|1] "" XXX - SG_ TimeGapDecreaseBtn : 50|1@0+ (1,0) [0|1] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ B7b3 : 59|1@0+ (1,0) [0|1] "" XXX - -BO_ 48 FSM0: 8 FSM - SG_ ACCStatusTracking : 56|1@0+ (1,0) [0|1] "" XXX - SG_ ACCStatusOnOff : 57|1@0+ (1,0) [0|1] "" XXX - SG_ ACCStatusActive : 58|1@0+ (1,0) [0|1] "" XXX - SG_ FCWSomething : 25|3@0+ (1,0) [0|3] "" XXX - SG_ StatusSomething : 55|8@0+ (1,0) [0|255] "" XXX - -BO_ 64 TCM0: 8 TCM - SG_ RPMSomething : 42|11@0+ (1,0) [0|2047] "" XXX - SG_ GearShifter : 46|2@0+ (1,0) [0|3] "" XXX - -BO_ 85 PedalandBrake: 8 ECM - SG_ AccPedal : 9|10@0+ (0.1,0) [0|1023] "%" XXX - SG_ BrakePedalActive2 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 35|12@0+ (1,0) [0|4095] "" XXX - SG_ BrakePedalActive : 38|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 101 EngineInfo: 8 XXX - SG_ NEW_SIGNAL_1 : 17|10@0+ (1,-512) [0|1023] "" XXX - SG_ EngineSpeed : 52|13@0+ (1,0) [0|1023] "" XXX - -BO_ 112 NEW_MSG_4: 8 XXX - SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX - -BO_ 114 ECM1: 8 ECM1 - SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ ECM_ACC_ONOFF_INV : 43|1@0+ (1,0) [0|1] "" XXX - SG_ ECM_ACC_RESUME_INV : 45|1@0+ (1,0) [0|1] "" XXX - SG_ ECM_ACC_SET_INV : 47|1@0+ (1,0) [0|1] "" XXX - SG_ ECM_ACC_TIMEGAP_INC_INV : 33|1@0+ (1,0) [0|1] "" XXX - SG_ ECM_ACC_DEC_INV : 32|1@0+ (1,0) [0|1] "" XXX - SG_ ECM_ACC_TIMEGAP_DEC_INV : 34|1@0+ (1,0) [0|1] "" XXX - -BO_ 117 ECM1_2: 8 ECM - -BO_ 128 NEW_MSG_5: 8 XXX - SG_ NEW_SIGNAL_2 : 26|11@0+ (1,0) [0|2047] "" XXX - SG_ NEW_SIGNAL_1 : 52|13@0+ (1,0) [0|8191] "" XXX - -BO_ 176 ECM2: 8 ECM - SG_ NEW_SIGNAL_1 : 50|11@0+ (1,0) [0|2047] "" XXX - SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|63] "" XXX - -BO_ 192 Gear: 8 XXX - SG_ TransmissionGear : 36|3@0+ (1,1) [0|7] "" XXX - -BO_ 208 FSM1: 8 FSM - SG_ SET_X_E3 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ SET_X_B4 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ SET_X_08 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ TrqLim : 31|8@0+ (1,-128) [0|255] "" XXX - SG_ Checksum : 55|8@0+ (1,0) [0|255] "" XXX - SG_ LKASteerDirection : 57|2@0+ (1,0) [0|2] "" XXX - SG_ SET_X_25 : 63|6@0+ (1,0) [0|63] "" XXX - SG_ LKAAngleReq : 37|14@0+ (0.04395,-360.0384) [-360.0384|359.99445] "degrees" XXX - SG_ SET_X_02 : 39|2@0+ (1,0) [0|3] "" XXX - -BO_ 224 PSCM0: 8 PSCM - SG_ NEW_SIGNAL_2 : 12|5@0+ (1,0) [0|31] "" XXX - SG_ counter_07 : 15|3@0+ (1,0) [0|7] "" XXX - SG_ counter2_07 : 37|3@0+ (1,0) [0|16383] "" XXX - SG_ rate_of_something : 46|7@0+ (1,0) [0|62] "" XXX - SG_ OneDuringDriving : 49|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 245 wheelspeed0: 8 BCM - SG_ counter1 : 21|6@0+ (1,0) [0|65535] "" XXX - SG_ counter0 : 7|16@0+ (1,0) [0|65535] "" XXX - SG_ WhlSpdLF : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ WhlSpdRF : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 272 SpeedSignal0: 8 XXX - SG_ VehicleSpeedSignal : 55|16@0+ (0.01,0) [0|65535] "" XXX - -BO_ 288 wheel_speed1: 8 BCM - SG_ WhlSpdLR : 39|16@0+ (1,0) [0|65535] "" XXX - SG_ WhlSpdRR : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 293 PSCM1: 8 PSCM - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - SG_ LKATorque : 11|12@0+ (1,-2000) [0|4095] "" XXX - SG_ SteeringAngleServo : 47|16@0+ (0.04395,-1440.1536) [0|65535] "deg" XXX - SG_ LKAActive : 15|4@0+ (1,0) [0|15] "" XXX - -BO_ 304 VehicleSpeed0: 8 BCM - SG_ NEW_SIGNAL_2 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ VehicleSpeed : 31|16@0+ (0.01,0) [0|65535] "km/h" XXX - SG_ NEW_SIGNAL_1 : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 325 ECM3: 8 ECM - -BO_ 336 VehicleSpeed1: 8 BCM - SG_ NEW_SIGNAL_2 : 31|16@0+ (1,0) [0|65535] "" XXX - SG_ NEW_SIGNAL_1 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ VehicleSpeed : 55|16@0+ (0.01,0) [0|65535] "" XXX - -BO_ 352 FSM2: 8 FSM - SG_ LkaDimLine : 51|2@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_2 : 56|7@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 55|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 7|24@0+ (1,0) [0|16777215] "" XXX - SG_ NEW_SIGNAL_4 : 36|5@0+ (1,0) [0|31] "" XXX - -BO_ 432 BrakeMessages: 8 BCM - SG_ BrakePress0 : 1|10@0+ (1,0) [0|1023] "" XXX - SG_ BrakePress1 : 33|10@0+ (1,0) [0|1023] "" XXX - SG_ BrakeStatus : 18|3@0+ (1,0) [0|7] "" XXX - -BO_ 464 DIM0: 8 DIM - -BO_ 480 BCM0: 8 BCM - -BO_ 528 CEM0: 8 CEM - -BO_ 608 CVM0: 8 CVM - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 15|5@0+ (1,0) [0|32] "" XXX - SG_ Distance : 10|11@0+ (1,0) [0|2048] "" XXX - -BO_ 624 FSM3: 8 FSM - SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX - -BO_ 640 FSM4: 8 FSM - SG_ SpeedTarget : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_1 : 49|10@0+ (1,0) [0|255] "" XXX - -BO_ 648 SRS0: 8 SRS - -BO_ 652 ECM4: 8 ECM - -BO_ 656 ECM5: 8 ECM - -BO_ 657 ECM6: 8 ECM - -BO_ 681 MiscCarInfo: 8 CEM - SG_ TurnSignal : 1|2@0+ (1,0) [0|3] "" XXX - SG_ HighBeamOn : 52|1@0+ (1,0) [0|1] "" XX - -BO_ 693 ECM7: 8 ECM - -BO_ 709 ACC: 8 ECM - SG_ SpeedTargetACC : 0|9@0+ (0.5,0) [0|511] "" XXX - -BO_ 853 FSM5: 8 FSM - SG_ TargetSpeedOdo : 23|8@0+ (1,0) [0|63] "kph" XXX - SG_ SpeedSign : 36|5@0+ (5,0) [0|32] "" XXX - SG_ TextUnderSign : 37|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 39|3@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ LaneMarkingsOdo : 15|4@0+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_2 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX - -BO_ 864 CEM1: 8 CEM - -BO_ 912 DIM1: 8 DIM - -BO_ 968 SRS1: 8 SRS - SG_ PassengerSeatBelt : 22|1@0+ (1,0) [0|1] "" XXX - SG_ DriverSeatBelt : 19|1@0+ (1,0) [0|1] "" XXX - -BO_ 1029 CEMBCM0: 8 CEM - -BO_ 1344 NEW_MSG_1: 8 XXX - SG_ NEW_SIGNAL_1 : 4|13@0+ (1,0) [0|8191] "" XXX - -BO_ 1830 diagCEMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1838 diagCEMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1840 diagPSCMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1848 diagPSCMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1892 diagFSMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1900 diagFSMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1939 diagCVMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1947 diagCVMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2015 diagGlobalReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - - - - -CM_ SG_ 85 BrakePedalActive2 "Active during braking"; -CM_ SG_ 85 NEW_SIGNAL_1 "Not yet figured out."; -CM_ SG_ 85 BrakePedalActive "Brake pedal pushed"; -CM_ SG_ 8 SteeringDirection "1=Right turn, 0=Left turn. Steering wheel pointing left or right from center (0 deg)."; -CM_ SG_ 8 RelativeTurnDirection "1=Right turn, 0=Left turn. Steering wheel currently turning the way."; -CM_ SG_ 101 NEW_SIGNAL_1 "Rate of something?"; -CM_ SG_ 192 TransmissionGear "0 = 1st gear, 1= 2nd gear..."; -CM_ SG_ 681 TurnSignal "0 = Nothing, 1= Left, 3=Right"; -CM_ SG_ 681 HighBeamOn "1=HighBeam On, 0=HighBeam Off"; -CM_ SG_ 48 ACCStatusTracking "ACC Tracking vehicle, distance control."; -CM_ SG_ 48 ACCStatusOnOff "Turns one after pressing on/off button on steering wheeel"; -CM_ SG_ 48 ACCStatusActive "ACC Active"; -CM_ SG_ 48 FCWSomething "All bit set during fcw"; -CM_ SG_ 48 StatusSomething "Some status changes when zeroing DTCs"; -CM_ SG_ 208 TrqLim "Used in checksum calculation, Limit directional torque based on the number."; -CM_ SG_ 208 Checksum "Checksum calculated as a one-complement addition of LKAAngleRequest+LKADirection+Unkown, Zeros used to pad missing bits."; -CM_ SG_ 208 SET_X_02 "Bit 0 = Vibrate steering wheel., Bit 1 = Heartbeat"; -CM_ SG_ 352 LkaDimLine "Not true, but follows lka steer direction."; -CM_ SG_ 352 NEW_SIGNAL_1 "Turned one. Got LKA service needed can this be the one?"; -CM_ SG_ 640 SpeedTarget "SpeedTarget ACC (noisy bf starting acc Jumps from 0->252->0)"; -CM_ SG_ 853 TargetSpeedOdo "Probably target speed odo"; -CM_ SG_ 853 LaneMarkingsOdo "Bit 3=Left lane, Bit 2=Right lane, Bit 1=LKA on?, Bit 0=?"; -CM_ SG_ 709 SpeedTargetACC "SpeedTargetACC"; -CM_ SG_ 224 rate_of_something "Seems to be some kind of torque rather than rate."; -CM_ SG_ 224 OneDuringDriving "Set to 1 when vehicle is rolling."; -CM_ SG_ 293 byte7 "Bit0=0 when gearshift in park, else 1"; -CM_ SG_ 293 LKAActive "Bit0=0 when gear in park otherwise =1, Bit1=1 when LKA Active, 0 when not active. Bit2=? Bit3=?"; -CM_ SG_ 16 ACCOnOffBtn "Cruise control on/off button pressed"; -CM_ SG_ 16 ACCSetBtn "Acc Set button (+) pressed"; -CM_ SG_ 16 ACCStopBtn "ACC Stop button pressed"; -CM_ SG_ 16 ACCResumeBtn "ACC Resume button pressed"; -CM_ SG_ 16 ACCMinusBtn "ACC Minus (-) button pressed"; -CM_ SG_ 16 TimeGapIncreaseBtn "Increase the time gap on ACC"; -CM_ SG_ 16 TimeGapDecreaseBtn "Decrease the time gap on ACC"; -CM_ SG_ 245 counter0 "Speed based counter"; -CM_ SG_ 245 WhlSpdLF "Wheel speed left front"; -CM_ SG_ 245 WhlSpdRF "Wheel speed right front"; -CM_ SG_ 288 WhlSpdLR "Wheel speed left rear"; -CM_ SG_ 288 WhlSpdRR "Wheel speed right rear"; -CM_ SG_ 64 RPMSomething "TransmissionOutput?"; -CM_ SG_ 64 GearShifter "P=0, R=1, N=2, D=3"; -CM_ SG_ 272 VehicleSpeedSignal "km/h"; -CM_ SG_ 432 BrakePress0 "Brake being pressed"; -CM_ SG_ 432 BrakePress1 "Brake being pressed"; -CM_ SG_ 432 BrakeStatus "ACC brake?"; -CM_ SG_ 437 Counter0 "Related to braking? Maybe one per wheel?"; -CM_ SG_ 437 Counter1 "Related to braking? Maybe one per wheel?"; -CM_ SG_ 437 Counter2 "Related to braking? Maybe one per wheel?"; -CM_ SG_ 437 Counter3 "Related to braking? Maybe one per wheel?"; -CM_ SG_ 114 NEW_SIGNAL_1 "Jumped from 0 -> 120 during start. Makes triangle from time to time"; -CM_ SG_ 608 NEW_SIGNAL_1 "Status?"; -CM_ SG_ 608 NEW_SIGNAL_2 "Classification of object?"; -CM_ SG_ 608 Distance "Distance to object in front."; -CM_ SG_ 968 PassengerSeatBelt "1 = Seatbalt latched"; -CM_ SG_ 968 DriverSeatBelt "1=Seatbelt latched"; -VAL_ 64 GearShifter 0 "P" 1 "R" 2 "N" 3 "D" ; diff --git a/opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc b/opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc deleted file mode 100644 index 59e9b9ad93..0000000000 --- a/opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc +++ /dev/null @@ -1,298 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: XXX BCM CEM FSM PSCM SAS - -BO_ 16 SAS0: 8 SAS - SG_ Counter0 : 3|8@0+ (1,0) [0|511] "" XXX - SG_ SteeringDirection : 6|1@0+ (1,0) [0|1] "" XXX - SG_ SteeringRateOfChange2 : 22|15@0+ (1,0) [0|32767] "" XXX - SG_ SteeringPressureOnIt : 23|1@0+ (1,0) [0|1] "" XXX - SG_ SteeringRateOfChange : 39|16@0+ (1,-32768) [0|65535] "" XXX - SG_ SteeringAngle : 53|14@0+ (0.0445,0) [0|65535] "degrees" XXX - -BO_ 32 AccPedal: 8 XXX - SG_ AccPedal : 17|10@0+ (0.1,0) [0|100.0] "%" XXX - -BO_ 81 FSM0: 8 FSM - SG_ ACCStatus : 18|3@0+ (1,0) [0|7] "" XXX - -BO_ 277 NEW_MSG_7: 8 XXX - SG_ NEW_SIGNAL_1 : 39|16@0+ (1,0) [0|65535] "" XXX - -BO_ 295 CCButtons: 8 CEM - SG_ ACCMinusBtnInv : 32|1@0+ (1,0) [0|1] "" XXX - SG_ TimeGapIncreaseBtnInv : 33|1@0+ (1,0) [0|1] "" XXX - SG_ TimeGapDecreaseBtnInv : 34|1@0+ (1,0) [0|1] "" XXX - SG_ ACCOnOffBtnInv : 43|1@0+ (1,0) [0|1] "" XXX - SG_ ACCResumeBtnInv : 45|1@0+ (1,0) [0|1] "" XXX - SG_ ACCSetBtnInv : 47|1@0+ (1,0) [0|1] "" XXX - SG_ ACCMinusBtn : 48|1@0+ (1,0) [0|1] "" XXX - SG_ TimeGapIncreaseBtn : 49|1@0+ (1,0) [0|1] "" XXX - SG_ TimeGapDecreaseBtn : 50|1@0+ (1,0) [0|1] "" XXX - SG_ ACCOnOffBtn : 59|1@0+ (1,0) [0|1] "" XXX - SG_ ACCResumeBtn : 61|1@0+ (1,0) [0|1] "" XXX - SG_ ACCSetBtn : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 298 EngineData: 8 XXX - SG_ NEW_SIGNAL_1 : 1|10@0+ (1,0) [0|1023] "" XXX - SG_ BrakePressed2 : 2|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 25|2@0+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 33|10@0- (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_3 : 34|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 35|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 36|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 37|1@0+ (1,0) [0|1] "" XXX - SG_ BrakePressed : 38|1@0+ (1,0) [0|1] "" XXX - SG_ EngineRpm : 52|13@0+ (1,0) [0|8000] "" XXX - -BO_ 307 NEW_MSG_133: 8 XXX - SG_ Brake : 14|7@0+ (1,0) [0|127] "" XXX - -BO_ 328 VehicleSpeed1: 8 XXX - SG_ BrakePressure2 : 33|10@0+ (1,0) [0|63] "" XXX - SG_ COUNTER : 37|4@0+ (1,0) [0|15] "" XXX - SG_ VehicleSpeed : 55|16@0+ (0.01,0) [0|65535] "" XXX - -BO_ 336 NEW_MSG_8: 8 XXX - SG_ NEW_SIGNAL_1 : 3|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_2 : 19|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_3 : 35|12@0+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_4 : 51|12@0+ (1,0) [0|4095] "" XXX - -BO_ 359 ACC_Speed: 8 XXX - SG_ ACC_Speed : 0|8@0+ (1,0) [0|255] "km/h" XXX - SG_ GasPedal : 51|12@0- (1,0) [0|255] "" XXX - SG_ GasPressed : 52|1@0+ (1,0) [0|1] "" XXX - -BO_ 384 Accessories_02: 8 XXX - SG_ Park_Assist_State : 42|1@0+ (1,0) [0|1] "" XXX - SG_ StartStop_Inv : 44|1@0+ (1,0) [0|1] "" XXX - -BO_ 465 NEW_MSG_4: 8 XXX - SG_ BrakePressedInv : 3|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 55|16@0+ (1,0) [0|4095] "" XXX - -BO_ 522 Brake_Info: 8 XXX - SG_ NEW_SIGNAL_2 : 1|1@0+ (1,0) [0|1] "" XXX - SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX - SG_ BrakeCmd : 13|1@0+ (1,0) [0|1] "" XXX - SG_ BrakePressure : 17|10@0+ (1,0) [0|255] "" XXX - SG_ BrakePedal : 19|2@0+ (1,0) [0|3] "" XXX - SG_ BrakePedal2 : 33|2@0+ (1,0) [0|3] "" XXX - SG_ CHECKSUM : 39|4@0+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 544 wheelspeed1: 8 BCM - SG_ WhlSpdRR : 39|16@0+ (0.01,-327.68) [0|65535] "" XXX - SG_ WhlSpdLR : 55|16@0+ (0.01,-327.68) [0|65535] "" XXX - -BO_ 565 wheelspeed0: 8 BCM - SG_ WhlSpdRF : 39|16@0+ (0.01,-327.68) [0|65535] "" XXX - SG_ WhlSpdLF : 55|16@0+ (0.01,-327.68) [0|65535] "" XXX - -BO_ 582 PSCM1: 8 PSCM - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ SteeringWheelRateOfChange : 15|8@0+ (1,0) [0|255] "" XXX - SG_ SteeringAngleServo : 23|16@0+ (0.0447,-1464.8) [0|65535] "deg" XXX - SG_ LKATorque : 35|12@0+ (1,-2000) [0|65535] "" XXX - SG_ byte4 : 39|4@0+ (1,0) [0|15] "" XXX - SG_ LKAActive : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 608 FSM1: 8 FSM - SG_ ACC_Distance : 7|8@0+ (1,0) [0|255] "" XXX - -BO_ 609 fromWhere: 8 XXX - SG_ COUNTER : 3|4@0+ (1,0) [0|15] "" XXX - SG_ CHECKSUM : 15|4@0+ (1,0) [0|15] "" XXX - SG_ SteeringAngle : 21|14@0+ (0.1,-1021) [0|65535] "deg" XXX - -BO_ 610 FSM2: 8 FSM - SG_ SET_X_22 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ TrqLim : 23|8@0+ (1,-128) [0|255] "" PSCM - SG_ LKAAngleReq : 29|14@0+ (0.04,-327.68) [0|16383] "" PSCM - SG_ SET_X_02 : 31|2@0+ (1,0) [0|3] "" XXX - SG_ LKASteerDirection : 41|2@0+ (1,0) [0|3] "" PSCM - SG_ SET_X_10 : 47|6@0+ (1,0) [0|63] "" XXX - SG_ Checksum : 55|8@0+ (1,0) [0|255] "" PSCM - SG_ SET_X_A4 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 612 Accessories_03: 8 XXX - SG_ Park_Assist_Button : 60|1@0+ (1,0) [0|1] "" XXX - -BO_ 624 FSM3: 8 FSM - SG_ ACC_Standstill : 0|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Check : 2|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_AccelDecel : 15|8@0+ (1,0) [0|255] "" XXX - SG_ ACC_Some : 17|10@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 47|8@0+ (1,0) [0|255] "" XXX - -BO_ 648 BrakePedal: 8 XXX - SG_ Counter : 0|3@1+ (1,0) [0|6] "" XXX - SG_ BrakePressure : 17|10@0+ (1,0) [0|1023] "" XXX - -BO_ 750 HandBrake: 8 XXX - SG_ Hand_Brake_Button : 33|2@0+ (1,0) [0|3] "" XXX - SG_ Hand_Brake_State : 44|4@0+ (1,0) [0|15] "" XXX - -BO_ 794 FSM4: 8 FSM - SG_ ACC_LeadSpeed : 31|8@0+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 32|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 47|16@0+ (1,-46090) [0|16383] "" XXX - -BO_ 802 StartStop: 8 XXX - SG_ StartStop : 8|1@0+ (1,0) [0|1] "" XXX - -BO_ 923 Accessories_01: 8 XXX - SG_ NEW_SIGNAL_1 : 15|16@0+ (1,0) [0|65535] "" XXX - SG_ Wipers : 38|2@0+ (1,0) [0|3] "" XXX - -BO_ 1006 Doors: 8 XXX - SG_ DriverDoorClosed : 8|1@0+ (1,0) [0|1] "" XXX - SG_ PassengerDoorClosed : 9|1@0+ (1,0) [0|1] "" XXX - -BO_ 1021 FSM5: 8 FSM - SG_ TSR_Speed : 25|4@1+ (10,0) [0|15] "km/h" XXX - -BO_ 1024 NEW_MSG_400: 8 XXX - SG_ NEW_SIGNAL_1 : 25|8@0+ (1,0) [0|255] "" XXX - -BO_ 1039 MiscCarInfo: 8 XXX - SG_ TurnSignal : 33|2@0+ (1,0) [0|3] "" XXX - -BO_ 1174 Lights: 8 XXX - SG_ High_Beam : 23|1@0+ (1,0) [0|1] "" XXX - -BO_ 1279 PSCM3: 8 PSCM - -BO_ 1830 diagCEMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1838 diagCEMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1840 diagPSCMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1848 diagPSCMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1892 diagFSMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1900 diagFSMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 1939 diagCVMReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -BO_ 1947 diagCVMResp: 8 XXX - SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX - SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX - -BO_ 2015 diagGlobalReq: 8 XXX - SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX - SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX - SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX - SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX - SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX - SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX - SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX - -CM_ SG_ 16 SteeringDirection "0 = CCW, 1=CW (turning left or right of center)"; -CM_ SG_ 16 SteeringRateOfChange "Rate of change? Torque?"; -CM_ SG_ 81 ACCStatus "0=Acc Unavailable, 1=???, 2=Acc Ready, 3,4=???, 6= Acc Active, 7=Acc active tracking object (probably)"; -CM_ SG_ 295 ACCMinusBtnInv "Active zero when button pressed."; -CM_ SG_ 295 TimeGapIncreaseBtnInv "Active zero when button pressed."; -CM_ SG_ 295 TimeGapDecreaseBtnInv "Active zero when button pressed."; -CM_ SG_ 295 ACCOnOffBtnInv "Active zero when button pressed."; -CM_ SG_ 295 ACCResumeBtnInv "Active zero when button pressed."; -CM_ SG_ 295 ACCSetBtnInv "Active zero when button pressed."; -CM_ SG_ 295 ACCMinusBtn "ACC Minus (-) button pressed"; -CM_ SG_ 295 TimeGapIncreaseBtn "Increase the time gap on ACC"; -CM_ SG_ 295 TimeGapDecreaseBtn "Decrease the time gap on ACC"; -CM_ SG_ 295 ACCOnOffBtn "Cruise control on/off button pressed"; -CM_ SG_ 295 ACCResumeBtn "ACC Resume button pressed"; -CM_ SG_ 295 ACCSetBtn "Acc Set button (+) pressed"; -CM_ SG_ 298 NEW_SIGNAL_4 "related to gas pedal"; -CM_ SG_ 298 NEW_SIGNAL_5 "related to ACCStatus"; -CM_ SG_ 298 NEW_SIGNAL_6 "went high at same time as ACCStatus >= 2"; -CM_ SG_ 298 BrakePressed "driver"; -CM_ SG_ 298 EngineRpm "Might be engine rpm. But behaves abit weird."; -CM_ SG_ 582 byte0 "0=CCW, 1=CW, bit 2,"; -CM_ SG_ 582 SteeringWheelRateOfChange "Some rate of change for steering wheel? Torque?"; -CM_ SG_ 582 byte4 "High nibble"; -CM_ SG_ 582 LKAActive "Bit 1, 1 When LKA Active, Bit 3, 1 When denying?"; -CM_ SG_ 608 ACC_Distance "Seems to track distance, or speed of vehicle in front."; -CM_ SG_ 610 SET_X_22 "0x20 Heartbeat, VEgo <58kph = 0x03, VEgo >65kph = 0x04, 0x05"; -CM_ SG_ 624 ACC_AccelDecel "Might be some acc speed, moved abit after activating acc"; -CM_ SG_ 624 ACC_Some "Jumps to life after activating ACC, 0 when not active"; -CM_ SG_ 648 Counter "counts 0 to 6"; -CM_ SG_ 1021 TSR_Speed "Traffic Sign Recognition speed"; -CM_ SG_ 1039 TurnSignal "0 = Nothing, 1= Left, 3=Right"; -VAL_ 522 BrakePedal 1 "Not Pressed" 2 "Pressed"; diff --git a/opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc b/opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc deleted file mode 100644 index 6f14789135..0000000000 --- a/opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc +++ /dev/null @@ -1,1676 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - -BS_: - -BU_: XXX - - -BO_ 1394 ZAS_1: 2 XXX - SG_ Fehlerspeichereintrag__ZAS_ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_ZAS_1_3 : 8|7@1+ (1,0) [0|0] "" XXX - SG_ Frei_ZAS_1_2 : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_15_SV : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_ZAS_1_1 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_P__Parklichtstellung_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_50__Starten_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_X__Startvorgang_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_15__Z_ndung_ein_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ S_Kontakt__Schl_ssel_steckt_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1336 Wischer_1: 2 XXX - SG_ Blockierung_Heckwischer_erkannt : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Wischer_1_2 : 12|3@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag__Wischer_ : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Scheibenwischer_Hec : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Wascher_Heck : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Scheibenwischer_Heck_eingeschal : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Blockierung_Frontwischer_erkann : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Wischer_1_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Waschduesenheizung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Parklage_Frontwischer : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Frontwischer_Schnel : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Frontwischer_Normal : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Wascher_Front : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Frontwischer__eingeschaltet : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1464 WFS_1: 2 XXX - SG_ WFS_Textbits : 8|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_WFS_1_1 : 1|7@1+ (1,0) [0|0] "" XXX - SG_ WFS_LED : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1096 Waehlhebel_1: 4 XXX - SG_ Frei_Waehlhebel_1_1 : 29|3@1+ (1,0) [0|0] "" XXX - SG_ Test_aktiv_Flag : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Waehlhebel_1 : 24|4@1+ (1,0) [0|15] "" XXX - SG_ Waehlhebel_Testergebnis : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Fehler_Waehlhebel : 8|8@1+ (1,0) [0|0] "" XXX - SG_ Waehlhebelposition : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Waehlhebel_Initialisierung : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Shiftlock_Position : 0|3@1+ (1,0) [0|0] "" XXX - -BO_ 1496 Verbauliste_1: 8 XXX - SG_ TV_Tuner : 63|1@1+ (1,0) [0|0] "" XXX - SG_ DSP : 62|1@1+ (1,0) [0|0] "" XXX - SG_ CD_Wechsler : 61|1@1+ (1,0) [0|0] "" XXX - SG_ Spracheingabe : 60|1@1+ (1,0) [0|0] "" XXX - SG_ Telematik : 59|1@1+ (1,0) [0|0] "" XXX - SG_ Navigation : 58|1@1+ (1,0) [0|0] "" XXX - SG_ Telefon : 57|1@1+ (1,0) [0|0] "" XXX - SG_ Radio : 56|1@1+ (1,0) [0|0] "" XXX - SG_ MMI_vorne : 55|1@1+ (1,0) [0|0] "" XXX - SG_ MMI_hinten : 54|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_11 : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Klimabedienteil_HL : 52|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_10 : 50|2@1+ (1,0) [0|0] "" XXX - SG_ Tankgeber : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Assistenzfahrlicht : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Memory_hinter_Fahrer : 47|1@1+ (1,0) [0|0] "" XXX - SG_ Sitzmemory_hinten : 46|1@1+ (1,0) [0|0] "" XXX - SG_ Sitzmemory_Beifahrer : 45|1@1+ (1,0) [0|0] "" XXX - SG_ Anh_ngersteuergeraet : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Energiemanagement : 43|1@1+ (1,0) [0|0] "" XXX - SG_ Wischermodul : 42|1@1+ (1,0) [0|0] "" XXX - SG_ EZS___Kessy__Komfort_ : 41|1@1+ (1,0) [0|0] "" XXX - SG_ Verdecksteuergeraet : 40|1@1+ (1,0) [0|0] "" XXX - SG_ Standheizung : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_9 : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Einparkhilfe : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Klimasteuergeraet_Komfort : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Gateway : 35|1@1+ (1,0) [0|0] "" XXX - SG_ Lenksaeulenmodul : 34|1@1+ (1,0) [0|0] "" XXX - SG_ Reifendruck : 33|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstrument_Komfort : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Dachmodul : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Memory : 30|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_HR : 29|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_HL : 28|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_BT : 27|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_FT : 26|1@1+ (1,0) [0|0] "" XXX - SG_ ZKE : 25|1@1+ (1,0) [0|0] "" XXX - SG_ BSG_Komfort : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_8 : 19|5@1+ (1,0) [0|0] "" XXX - SG_ Stabi_Entkopplung : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Waehlhebel : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Batteriemanager : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Daempfer_SG : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Niveauregulierung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ EZS___Kessy__Antrieb_ : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsbooster : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Antrieb : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Einspritzpumpe : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Allrad : 7|1@1+ (1,0) [0|0] "" XXX - SG_ BSG_Antrieb : 6|1@1+ (1,0) [0|0] "" XXX - SG_ ADR : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Climatronic_Antrieb : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ABS : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Getriebesteuergeraet : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Motorsteuergeraet : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1488 Systeminfo_1: 6 XXX - SG_ CAN_Stand_4_1_Antrieb_Daten_Hau : 44|4@1+ (1,0) [0|15] "" XXX - SG_ CAN_Stand_4_1_Antrieb_Daten_Neb : 40|4@1+ (1,0) [0|15] "" XXX - SG_ CAN_Stand_4_1_Komfort_Daten_Hau : 36|4@1+ (1,0) [0|15] "" XXX - SG_ CAN_Stand_4_1_Komfort_Daten_Neb : 32|4@1+ (1,0) [0|15] "" XXX - SG_ Frei_Systeminfo_1_6 : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Viertuerer : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Rechtslenker : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrzeug_Index : 24|4@1+ (1,0) [0|0] "" XXX - SG_ Fahrzeug_Generation : 20|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrzeug_Derivat : 16|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrzeug_Marke_2 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrzeug_Klasse : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Verbauinformation_gueltig : 7|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Infotainment_verbaut : 6|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Infotainment_in_Diagnose : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Sleep_CAN_Infotainment : 4|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Komfort_in_Diagnose : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Sleep_CAN_Komfort : 2|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Antrieb_in_Diagnose : 1|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Extern_zugeschaltet : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 268 Slave_1: 8 XXX - SG_ Delta_reduziertes_Sollmoment : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Delta_Drosselklappenwinkel : 32|16@1+ (1,0) [0|0] "" XXX - SG_ Frei_Slave_1_1 : 25|7@1+ (1,0) [0|0] "" XXX - SG_ Delta_Zuendwinkelausgabe : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Ubat_Freigabe_DVE__Slave_ : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Drosselklappe_Sollwertbegrenzun : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Einspritzverbot_lernen__Slave_ : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Master_erkannt__Slave_ : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Momentenausgabe : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Getriebe_Moment : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Bremsenbotschaft : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Indiziertes_Istmoment__Slave_ : 0|16@1+ (0.0015259,0) [0|99.998] "%" XXX - SG_ Timeout_Bremsenbotschaft : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1332 Sitz_info: 2 XXX - SG_ Positionserkennung_Beifahrersit : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Beifahrersitz_im_vorderen_Dritt : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Positionserkennung_Fahrersitz_u : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrersitz_im_vorderen_Drittel : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Sitzinfo : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Checksumme_Sitzinfo : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1810 PSG_3: 2 XXX - SG_ Selbsttestergebnis : 0|16@1+ (1,0) [0|0] "" XXX - -BO_ 1298 PSG_2: 8 XXX - SG_ RAM_Inhalt_4 : 48|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Inhalt_3 : 32|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Inhalt_2 : 16|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Inhalt_1 : 0|16@1+ (1,0) [0|0] "" XXX - -BO_ 274 PSG_1: 8 XXX - SG_ Pumpentemperatur__2_1_ : 48|16@1+ (0.0625,0) [0|4096] "K" XXX - SG_ Pumpentemperatur__3_2_2_ : 44|12@1+ (1,0) [0|0] "" XXX - SG_ Zylinderzaehler__3_2_2_ : 43|3@1+ (1,0) [1|8] "Zaehler" XXX - SG_ Ansteuerdauer__3_2_2_ : 32|11@1+ (0.0469,0) [0|96] "NW" XXX - SG_ Nockenwellendrehzahl__3_2_2_ : 20|12@1+ (4,0) [0|16380] "upm" XXX - SG_ Pumpen_Statuswort__3_2_2_ : 0|20@1+ (1,0) [0|0] "" XXX - -BO_ 1300 NOX_1: 8 XXX - SG_ OBD_fuer_NOX : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_NOX1_4 : 53|3@1+ (1,0) [0|0] "" XXX - SG_ IP2 : 52|1@1+ (1,0) [0|0] "" XXX - SG_ IP1 : 51|1@1+ (1,0) [0|0] "" XXX - SG_ IP0 : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Sondenheizung_NOX : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Offsetkorrektur_NOX : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_NOX1_3 : 43|5@1+ (1,0) [0|0] "" XXX - SG_ Sauerstoff_binaer : 32|11@1+ (1,-200) [-200|1847] "mV" XXX - SG_ Frei_NOX1_2 : 27|5@1+ (1,0) [0|0] "" XXX - SG_ Sauerstoff_linear : 16|11@1+ (1,0) [0|2047] "1000/Lambd" XXX - SG_ Frei_NOX1_1 : 11|5@1+ (1,0) [0|0] "" XXX - SG_ NOX_Signal : 0|11@1+ (1,0) [0|2047] "ppm" XXX - -BO_ 1424 Niveau_1: 6 XXX - SG_ Beladungszustand : 40|8@1+ (1,0) [0|253] "Zuladung" XXX - SG_ Fehlerspeichereintrag__Niveau_1 : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Systemstatus__Niveau_1_ : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Reserve_Fahrzeugart : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrzeugart_Niveau : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Textbits__Niveau_1_ : 32|4@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_HL : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_HR : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_VL : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_VR : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Absenkung_Fahrzeug : 27|1@1+ (1,0) [0|0] "" XXX - SG_ Anhebung_Fahrzeug : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_aktiv : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Kompressorlauf_in_Kuerze : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Niveau_1_5 : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Taster_Niveau : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Parkniveau : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Zwischenniveau : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Niveaustati : 16|4@1+ (1,0) [0|0] "" XXX - SG_ MSG_Einschraenkung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_Beeinflussung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Warnlampe_Niveau_1 : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Niveau_1_1 : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Niveau_1 : 8|4@1+ (1,0) [0|15] "Zaehler" XXX - SG_ Checksumme_Niveau_1 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1328 Navigation_1: 7 XXX - SG_ Kreuzungstyp : 54|2@1+ (1,0) [0|3] "" XXX - SG_ Entfernung_bis_Kreuzung : 48|6@1+ (5,0) [0|315] "m" XXX - SG_ Entfernung_bis_Kurvenanfang : 40|8@1+ (1,0) [0|255] "m" XXX - SG_ Voarusliegende_Kurvenrichtung : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Vorausliegender_Kurvenverlauf : 32|7@1+ (50,0) [0|6350] "m" XXX - SG_ Fehler_Navigation : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Anzahl_Fahrbahnen__0_ist_unguel : 28|3@1+ (1,0) [1|7] "" XXX - SG_ Strassentyp : 24|4@1+ (1,0) [0|15] "" XXX - SG_ Laenderkennung : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Vorzeichen_Gierrate______ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Gierratenfehler : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Gierrate : 0|14@1+ (0.01,0) [0|100] "deg/sek" XXX - -BO_ 1792 MSG_3: 3 XXX - SG_ MSG_Konfiguration : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Lage_des_OT_Impuls : 0|16@1+ (0.01172,-384) [-384|384] "KW" XXX - -BO_ 1280 MSG_2: 8 XXX - SG_ RAM_Adresse_4 : 48|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Adresse_3 : 32|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Adresse_2 : 16|16@1+ (1,0) [0|0] "" XXX - SG_ Ram_Adresse_1 : 0|16@1+ (1,0) [0|0] "" XXX - -BO_ 256 MSG_1: 8 XXX - SG_ Kurbelwellendrehzahl__3_2_2_ : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Soll_Foerderbeginn_KW__3_2_2_ : 40|16@1+ (0.01172,-384) [-384|384] "KW" XXX - SG_ Soll_Foerderbeginn_NW__3_2_2_ : 28|12@1+ (0.01172,0) [0|768] "degNW" XXX - SG_ Soll_Voreinspritzung : 16|12@1+ (1,0) [0|0] "" XXX - SG_ Soll_Einspritzmenge : 0|16@1+ (0.03125,0) [0|2047] "mg/H" XXX - -BO_ 1796 Motor_NOX: 8 XXX - SG_ Frei_Motor_NOX_1_2 : 24|40@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_NOX_1_1 : 19|5@1+ (1,0) [0|0] "" XXX - SG_ Heizleistungsanforderung : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Offsetkorrektur_moeglich : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Betriebsbereich : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Abgastemperatur_NOX : 8|8@1+ (5,-40) [-40|1230] "C" XXX - SG_ Abgasdruck_NOX : 0|8@1+ (5,600) [600|1870] "mbar" XXX - -BO_ 900 Motor_Momente: 8 XXX - SG_ Momentenangaben_ungenau__Moment : 35|2@1+ (1,0) [0|0] "" XXX - -BO_ 1408 Motor_Flexia: 8 XXX - SG_ Ansaugsystem m0 : 63|1@1+ (1,0) [0|0] "" XXX - SG_ Hubraum m0 : 56|7@1+ (0.1,0) [0|12.7] "l" XXX - SG_ Steigung_der_Befuellungskennlin m1 : 56|8@1+ (0.001,0) [0|0.255] "l/mm" XXX - SG_ Anzahl_Zylinder m0 : 52|4@1+ (1,0) [0|15] "Vent./Zyl." XXX - SG_ Bewertungsfaktor_Russindex_Turb m1 : 50|6@1+ (0.1,0) [0|6.3] "" XXX - SG_ Anzahl_Ventile m0 : 49|3@1+ (1,0) [0|7] "Vent./Zyl." XXX - SG_ Bewertungsfaktor_Verschleissind m1 : 44|6@1+ (0.1,0) [0|6.3] "" XXX - SG_ Hersteller_Code m1 : 40|4@1+ (1,0) [0|15] "" XXX - SG_ Motorleistung m0 : 40|9@1+ (1,0) [0|512] "KW" XXX - SG_ Max_Drehmoment m0 : 32|8@1+ (10,0) [0|2550] "Nm" XXX - SG_ Normierter_Verbrauch m1 : 32|8@1+ (10,0) [0|2550] "l/Zyl." XXX - SG_ Oelniveauschwelle m1 : 24|8@1+ (0.25,0) [0|63.75] "cm" XXX - SG_ Drehzahl_MaxNorm m0 : 24|8@1+ (100,0) [0|25500] "U/min" XXX - SG_ Verschleissindex : 16|8@1+ (1,0) [0|254] "" XXX - SG_ Russindex : 8|8@1+ (1,0) [0|254] "" XXX - SG_ Verbrennungsart : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_Flexia_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Warm_Up_Cycle : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Driving_Cycle : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Motor_Flexia : 1|3@1+ (1,0) [0|15] "" XXX - SG_ Multiplex_Schalter_Motor_Flexia M : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1416 Motor_7: 8 XXX - SG_ Oltemperatur : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_7_3 : 40|16@1+ (1,0) [0|0] "" XXX - SG_ Ladedruck : 32|8@1+ (0.01,0) [0|2.54] "bar" XXX - SG_ Vorzeichen_Motordrehzahlgradien : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Motordrehzahlgradient : 24|7@1+ (1,0) [0|126] "U/min" XXX - SG_ Hoeheninfo__Motor_7_ : 16|8@1+ (0.00787,0) [0|2] "" XXX - SG_ Klemme_DFM : 8|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ PTC___Gluehstifte_ausgeschaltet : 5|3@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_7_1 : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag__Motor_7_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Statusbit_Geschwindikeitsbegren : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Geschwindigkegrenzung_aktivierb : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Leerlauf_Solldrehzahl_auf_Max_W : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1160 Motor_6: 8 XXX - SG_ Zaehler_Motor_6 : 60|4@1+ (1,0) [0|15] "" XXX - SG_ Frei_Motor_6_4 : 58|2@1+ (1,0) [0|0] "" XXX - SG_ ltemperaturschutz : 57|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_Bremseingriff_Freigabe : 56|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_6_3 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ Ruckmeldung_Momenten : 40|8@1+ (0.39,0) [0|100] "" XXX - SG_ GRA_Sollbeschleunigung : 32|8@1+ (0.024,-3.984) [-3.984|2.112] "m/s2" XXX - SG_ Hoeheninfo__Motor_6_ : 24|8@1+ (0.00787,0) [0|2] "" XXX - SG_ Istmoment_f_r_Getriebe : 16|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Sollmoment_f_r_Getriebe : 8|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Checksumme_Motor_6 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1152 Motor_5: 8 XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Motortext_Bits__4_1_ : 52|4@1+ (1,0) [0|0] "" XXX - SG_ Doppelte_Momente : 51|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_Hauptschalter : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Anlasser_Ausspuren : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Anlasser_Freigabe : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Klimadrucksignal__Motor_5_ : 40|8@1+ (0.2,0) [0|50.8] "bar" XXX - SG_ K_hlerluefteransteuerung : 32|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Verbrauch_Ueberlauf : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Kraftstoffverbrauchssignal : 16|15@1+ (1,0) [0|32767] "ul" XXX - SG_ Klimakompressor_Leistungsreduzi : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Kennfeldkuehlung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Klimakompressor_aus__Motor_5_ : 13|1@1+ (1,0) [0|0] "" XXX - SG_ CAT_Warnung : 12|1@1+ (1,0) [0|0] "" XXX - SG_ OBD_2_Lampe : 11|1@1+ (1,0) [0|0] "" XXX - SG_ E_Gas_Lampe : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Vorgluehlampe__Motor_5_ : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Ladekontroll_Lampe : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Code M : 6|2@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_norm__Verbrauch m3 : 0|6@1+ (20,0) [0|1260] "l/Zyl" XXX - SG_ Multiplex_Info_Motortyp m2 : 0|6@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Drehzahl_MD_Max m1 : 0|6@1+ (100,0) [0|6300] "U/min" XXX - SG_ Multiplex_Info_Max_Drehmoment m0 : 0|6@1+ (10,0) [0|630] "Nm" XXX - -BO_ 896 Motor_3: 8 XXX - SG_ Drosselklappenpoti : 56|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Motor_Wunschdrehzahl : 48|8@1+ (25,0) [0|6350] "U/min" XXX - SG_ Motordrehzahlbeeinflussung : 40|8@1+ (0.392,0) [0|100] "%" XXX - SG_ Kein_Start_Stop : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Kein_E_Gas : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Reserviert_Motor_3_1 : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Vorzeichen_Rad_Wunschmoment : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Rad_Wunschmoment : 24|12@1+ (0.39,0) [0|1597] "MDI" XXX - SG_ Fahrpedal_Rohsignal : 16|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Ansauglufttemperatur : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX - SG_ Fehlerstatus_Ansauglufttemperat : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Motorsteuerger_t_gesperrt : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Drosselklappenwinkel_ungenau : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrpedalwert_ungenau__Motor_3_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_3_1 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Motor_Wunschdrehzahl_Priorit_t : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Uebertemperaturschutz__Motor_3_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Vorgluehmeldung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 648 Motor_2: 8 XXX - SG_ Minimales_Motormoment_bei_Zuend : 56|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Begrenzungsmoment : 48|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Leerlaufsolldrehzahl__Motor_2_ : 40|8@1+ (10,0) [0|2540] "U/min" XXX - SG_ Soll_Geschwindigkeit_bei_GRA_Be : 32|8@1+ (1.28,0) [0|325] "km/h" XXX - SG_ Fahrzeuggeschwindigkeit : 24|8@1+ (1.28,0) [0|325] "km/h" XXX - SG_ GRA_Status : 22|2@1+ (1,0) [0|0] "" XXX - SG_ OBD_2_freeze_frame : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Normalbetrieb : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Klima__4_1_ : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kuhlmitteltempera : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Bremstestschalter : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Bremslichtschalter : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Kuehlmitteltemperatur__Motor_2_ : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX - SG_ Multiplex_Code_Motor_2 M : 6|2@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Motorcode__4_x_ m1 : 0|6@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Getriebecode m2 : 0|6@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Max_Moment__Norm m3 : 0|6@1+ (10,0) [0|630] "Nm" XXX - SG_ Multiplex_Info_CAN_Stand m0 : 0|6@1+ (1,0) [0|0] "" XXX - -BO_ 640 Motor_1: 8 XXX - SG_ Fahrerwunschmoment : 56|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ mechanisches_Motor_Verlustmomen : 48|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Fahrpedalwert_oder_Drosselklapp : 40|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ inneres_Motor_Moment_ohne_exter : 32|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Motordrehzahl : 16|16@1+ (0.25,0) [0|16256] "U/min" XXX - SG_ inneres_Motor_Moment : 8|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Momentenangaben_ungenau : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Getriebe_Momentene : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Brems_Momenteneing : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Time_Out_Bremsen_Botschaft : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Kupplungsschalter : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Kickdownschalter : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrpedalwert_ungenau__Motor_1_ M : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Leergasinformation : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 262 Master_3: 8 XXX - SG_ Frei_Master_3_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Motortemperatur_linearisiert : 48|8@1+ (0.75,-48) [-48|143.25] "" XXX - SG_ Indiziertes_Sollmoment_f_r_Vmax : 32|16@1+ (0.0015259,0) [0|100] "%" XXX - SG_ Relative_Momentenanforderung_de : 16|16@1+ (0.003052,0) [0|200] "%" XXX - SG_ Delta_Motormoment_aus_Verlustmo : 0|16@1+ (0.003052,-100) [-100|100] "%" XXX - -BO_ 260 Master_2: 8 XXX - SG_ Ubat_Freigabe_DVE : 45|1@1+ (1,0) [0|0] "" XXX - SG_ DK_Sollwertbegrenzung : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Einspritzverbot_DV_E_lernen : 43|1@1+ (1,0) [0|0] "" XXX - SG_ Master_erkannt : 42|1@1+ (1,0) [0|0] "" XXX - SG_ Vmax_Begrenzung_aktiv : 41|1@1+ (1,0) [0|0] "" XXX - SG_ SA_Verbot_von_FGR : 40|1@1+ (1,0) [0|0] "" XXX - SG_ Pedalwert_Komplement : 24|16@1+ (1,0) [0|0] "" XXX - SG_ Zaehler__Master_2_ : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Normierter_Fahrpedalwinkel : 0|16@1+ (0.001526,0) [0|100] "%" XXX - -BO_ 258 Master_1: 8 XXX - SG_ Stationaere_Solldrehzahl : 56|8@1+ (10,0) [0|2550] "Umin" XXX - SG_ Drehmoment_LLR__I_Anteil_ : 40|16@1+ (0.003052,-100) [-100|100] "%" XXX - SG_ Drehmoment_LLR__PD_Anteil_ : 24|16@1+ (0.003052,-100) [-100|100] "%" XXX - SG_ Drehmoment_LLR__Luftpfad_ : 8|16@1+ (0.003052,-100) [-100|100] "%" XXX - SG_ Frei_Master_1_1 : 4|4@1+ (1,0) [0|0] "" XXX - SG_ LLR_ist_aktiv : 3|1@1+ (1,0) [0|0] "" XXX - SG_ I_Anteil_der_LLR_aktiv : 2|1@1+ (1,0) [0|0] "" XXX - SG_ PD_Anteil_der_LLR_aktiv : 1|1@1+ (1,0) [0|0] "" XXX - SG_ LLR_Freigabe_nach_Start : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1984 LWS_Kalibrierung: 2 XXX - SG_ Frei_LWS_Kalibrierung_1_1 : 15|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Identifier : 8|7@1+ (1,0) [0|0] "" XXX - SG_ Frei_LWS_Kalibrierung_1_2 : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Command_Dode_Word : 0|4@1+ (1,0) [0|0] "" XXX - -BO_ 1986 Lenkwinkel_Init: 4 XXX - SG_ Kodierbytes : 8|24@1+ (1,0) [0|0] "" XXX - SG_ Identiifier_f_r_LWS_Init : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 192 Lenkwinkel_1__RB_: 2 XXX - SG_ Vorzeichen__RB_ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel__RB_ : 5|10@1+ (2.5,-720) [-720|720] "" XXX - SG_ LWS_OK__RB_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Abgleich__RB_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkwinkel_1_1__RB_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ FINE_CHECK__RB_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ COARSE_CHECK__RB_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 196 Lenkwinkel_1__ITT_: 2 XXX - SG_ Vorzeichen__ITT_ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel__ITT_ : 5|10@1+ (1.5,-768) [-768|766.5] "" XXX - SG_ LWS_OK : 4|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Abgleich__ITT_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Initialisierung__ITT_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ FINE_CHECK__ITT_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ COARSE_CHECK__ITT_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 194 Lenkwinkel_1: 8 XXX - SG_ Checksumme_Lenkwinkel_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Kodierdaten : 48|8@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Lenkwinkel_1 : 44|4@1+ (1,0) [0|15] "" XXX - SG_ Status_KL30_Ausfall__z_Zt__nur : 43|1@1+ (1,0) [0|0] "" XXX - SG_ Interner_Status : 41|2@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkwinkel_1_1 : 40|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel_ID : 32|8@1+ (1,0) [0|0] "" XXX - SG_ Lenkradwinkel_Geschwindigkeit_S : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkradwinkel_Geschwindigkeit : 16|15@1+ (0.04375,0) [0|1433.6] "Grad/Sek" XXX - SG_ Lenkradwinkel_Sign : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkradwinkel : 0|15@1+ (0.04375,0) [0|1433.6] "Grad" XXX - -BO_ 1502 Lenkhilfe_Fehler: 7 XXX - SG_ Werkstattcode : 48|8@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Signal : 45|3@1+ (1,0) [0|7] "" XXX - SG_ Sensorcodierung_Lenkhilfe : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Kennliniencodierung_Lenkhilfe : 40|4@1+ (1,0) [0|15] "Kennlinie" XXX - SG_ Geber_f__Lenkw__Speicher_ausles : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstr__Speicher_auslesen : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Steuerger__Speicher_auslesen : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Steuergeraet_defekt : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_3 : 32|4@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_4 : 30|2@1+ (1,0) [0|0] "" XXX - SG_ Geber_f__Lenkwi__k__CAN_Komm_sp : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Geber_f__Lenkwinkel_k__CAN_Komm : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstr__k__CAN_Kommunik__sp : 27|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstrument_k__CAN_Kommunik : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Steuergeraet_k__CAN_Kommunik__S : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Steuergeraet_keine_CAN_Kommunik : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks__nach_Mas : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks_nach_Mass : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks__nach___s : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks__nach__ : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Temperaturschutz_sp_ : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Temperaturschutz : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Betrieb_unpl__Sig__sp : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Betrieb_unpl__Signal : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_k__Kommunik__sp : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_keine_Kommunik_ : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_defekt_sp_ : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_defekt : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_Unterbrechung_s : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_Unterbrechung : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_Ks_nach_Masse_s : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhifesensor_Ks_nach_Masse : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_15_zu_klein_sp_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_15_zu_klein : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_5 : 4|2@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_klein_sp_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_klein : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_gro__sp_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_gro_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 976 Lenkhilfe_1: 2 XXX - SG_ Fehlerspeichereintrag__Lenkhilf : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_2 : 9|6@1+ (1,0) [0|0] "" XXX - SG_ Fehlerlampe_Lenkhilfe : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Lastinformation : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Lastinformation : 0|7@1+ (1,0) [0|127] "A" XXX - -BO_ 1312 Kombi_3: 8 XXX - SG_ Frei_Kombi_3_2 : 60|4@1+ (1,0) [0|0] "" XXX - SG_ Kilometerstand : 40|20@1+ (1,0) [0|1000000] "km" XXX - SG_ Fehlerstatus_Standzeit : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Standzeit : 24|15@1+ (4,0) [0|131068] "sec" XXX - SG_ Frei_Kombi_3_1 : 20|4@1+ (1,0) [0|0] "" XXX - SG_ Schluesselinfo : 16|4@1+ (1,0) [0|15] "" XXX - SG_ Kombi_Multiplex_Code M : 14|2@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Niveauregulie m3 : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Marke m1 : 11|3@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Lenkhilfe m3 : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Dieselpumpe m3 : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Lenkwinkel m3 : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Baureihe m1 : 8|3@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Laendervariante m0 : 8|6@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Allrad m3 : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Bordnetz m3 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_ACC m3 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Airbag m3 : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Generation m1 : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Klima m3 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_ABS m3 : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Motor m3 : 0|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Derivat m1 : 0|4@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Sprachvariante m0 : 0|8@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Reifenumfang m2 : 0|12@1+ (1,0) [0|4095] "mm" XXX - -BO_ 1056 Kombi_2: 8 XXX - SG_ Frei_Kombi_2_2 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kl__58_s : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58s__Kombi_2_ : 48|7@1+ (1,0) [0|100] "%" XXX - SG_ Fehlerstatus_Kl__58_d : 47|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58d__Kombi_2_ : 40|7@1+ (1,0) [0|100] "%" XXX - SG_ Kuehlmitteltemp__4_1__Kombi_2_ : 32|8@1+ (0.75,-48) [-48|142.5] "C" XXX - SG_ Oeltemperatur_4_1 : 24|8@1+ (1,-60) [-60|194] "C" XXX - SG_ Aussentemp__ungefiltert_4_1__Ko : 16|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Aussentemperatur_gefiltert : 8|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Fehlerspeichereintrag__Kombi_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Kombi_2_1 : 4|3@1+ (1,0) [0|0] "" XXX - SG_ Anhaenger_erkannt : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerst__Kuehlmitteltemp__4_1 : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Oeltemperatur_4_1 : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Aussentemp__4_1 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 800 Kombi_1: 8 XXX - SG_ Frei_Kombi_1_3 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Angezeigte_Geschwindigkeit : 46|10@1+ (0.32,0) [0|325] "km/h" XXX - SG_ Blinker_rechts_4_1 : 45|1@1+ (1,0) [0|0] "" XXX - SG_ Blinker_links_4_1 : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Gesetzte_Zeitluecke__Kombi_1_ : 43|1@1+ (1,0) [0|0] "" XXX - SG_ ADR_Summer_abgeschaltet : 42|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Kombi_1_2 : 40|2@1+ (1,0) [0|0] "" XXX - SG_ Geschwindigkeit__Kombi_1_ : 25|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Signalquelle_Geschwindigkeit_4_ : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Tankwarnung : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Tankinhalt : 16|7@1+ (1,0) [0|126] "l" XXX - SG_ Tankstop : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Kombi_1_7 : 12|3@1+ (1,0) [0|0] "" XXX - SG_ Kombi_im_Stellgliedtest : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Ladekontroll_Lampe__Kombi_ : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsinfo : 8|2@1+ (1,0) [0|0] "" XXX - SG_ Vorgluehlampe__Kombi_1_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Tankwarnlampe : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Heissleuchten_Vorwarnung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Kuehlmittelmangel : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Dynamische_Oeldruckwarnung : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Oeldruck : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Tank : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrertuer_4_1 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1504 Klima_1: 8 XXX - SG_ Aussentemp__ungef__Sto_f__4_1 : 56|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Fehlerspeichereintrag__Klima_ : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Klima_1_5 : 50|5@1+ (1,0) [0|0] "" XXX - SG_ AC_Schalter : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Temperatureinheit : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Kuehlerluefteransteuerung__Klim : 40|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Geblaeselast_4_1 : 32|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Kompressorlast : 24|8@1+ (0.25,0) [0|63.5] "Nm" XXX - SG_ Klimadrucksignal__Klima_1_ : 16|8@1+ (0.2,0) [0|50.8] "bar" XXX - SG_ Aussentemp__ungef__4_1__Klima_1 : 8|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Kaeltemitteldruck_veraltet : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Kompressormoment_veraltet_4_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Keine_Heizleistg_gewuenscht_4_1 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Kompressorzustand__4_1_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Frontscheibe : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Heckscheibe : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrerwunsch_Zuheizer : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Drehzahlanhebung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 906 GRA_Neu: 4 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ GRA_Hauptschalt : 8|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Abbrechen : 9|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Down_kurz : 10|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Up_kurz : 11|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Down_lang : 12|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Up_lang : 13|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Fehler_Bed : 14|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Kodierinfo : 15|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Neu_Setzen : 16|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Recall : 17|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Sender : 18|2@1+ (1,0) [0|3] "" XXX - SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX - SG_ GRA_Tip_Down : 24|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Tip_Up : 25|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Zeitluecke : 26|2@1+ (1,0) [0|3] "" XXX - SG_ GRA_Sta_Limiter : 28|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Typ_Hauptschalt : 29|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Sportschalter : 30|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Fehler_Tip : 31|1@1+ (1,0) [0|1] "" XXX - -BO_ 904 GRA: 3 XXX - SG_ Checksumme_GRA_alt : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_GRA_alt : 15|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR_Bedienteil_Fehler : 14|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR_beschleunigen : 13|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR_verzoegern : 12|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Tipschalter__Wie : 11|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Tipschalter__Set : 10|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Tipschalter__Aus : 9|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Hauptschalter : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_GRA_alt : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 1352 Getriebe_4: 3 XXX - SG_ Testparameter_2 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Testparameter_1 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ Waehlhebelausleuchtung : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Frei_Getriebe_4_1 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Testfreigabeflag : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Handbremserinnerung_s_Lampe : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Shiftlock_Getriebe_4 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1344 Getriebe_2: 8 XXX - SG_ eingelegte_Fahrstufe : 60|4@1+ (1,0) [0|0] "" XXX - SG_ Ganganzeige_Kombi___Getriebe_Va : 56|4@1+ (1,0) [0|15] "" XXX - SG_ Fehlerlampe_f_r_Kupplung_bei_VL : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Anforderung_Kriechadaption : 54|1@1+ (1,0) [0|0] "" XXX - SG_ ECO_Anzeige__4_1_ : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Shift_Lock_Lampe : 52|1@1+ (1,0) [0|0] "" XXX - SG_ Unterdrueckung_von_Warnungen : 51|1@1+ (1,0) [0|0] "" XXX - SG_ Gong : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Starter_wird_angesteuert : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Hochschaltlampe : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Synchronisationszeit : 40|8@1+ (20,0) [0|5080] "ms" XXX - SG_ invertierte_Synchronisations_Wu : 32|8@1+ (25,0) [0|6350] "U/min" XXX - SG_ Synchronisations_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "U/min" XXX - SG_ Gradientenbegrenzung : 16|8@1+ (10,0) [0|2540] "Nm/s" XXX - SG_ Leerlaufsolldrehzahl__Getriebe : 8|8@1+ (10,0) [0|2540] "U/min" XXX - SG_ Zahler_Getriebe_2 : 4|4@1+ (1,0) [0|15] "" XXX - SG_ Zwischengasflag : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Ecomatic__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Schubabschaltunterstuetzung : 1|1@1+ (1,0) [0|0] "" XXX - SG_ LFR_Adaption_Freigabeflag : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1088 Getriebe_1: 8 XXX - SG_ Wandlerverlustmoment : 56|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ Fehlerspeichereintrag__Getriebe : 55|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 51|4@1+ (1,0) [0|15] "" XXX - SG_ Gang_eingelegt : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltabsicht : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Motor_aus : 48|1@1+ (1,0) [0|0] "" XXX - SG_ OBD_Status__Getriebe_1___4_1_ : 46|2@1+ (1,0) [0|0] "" XXX - SG_ Kuehlleistung : 44|2@1+ (1,0) [0|0] "" XXX - SG_ Getriebe_Notlauf : 40|4@1+ (1,0) [0|0] "" XXX - SG_ Fahrwiderstandsindex : 32|8@1+ (0.249,-31.6) [-31.6|31.6] "" XXX - SG_ inneres_Soll_Motormoment : 24|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ Uebertragungsfunktion : 16|8@1+ (0.1,0) [0|25.4] "" XXX - SG_ Waehlhebelposition__Getriebe_1_ : 12|4@1+ (1,0) [0|0] "" XXX - SG_ Zielgang_oder_eingelegter_Gang : 8|4@1+ (1,0) [0|0] "" XXX - SG_ EGS_Anforderung : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Kodierung_im_MSG : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Leerlaufsolldrehzahlanhebung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Wandlerkupplung : 3|2@1+ (1,0) [0|0] "" XXX - SG_ Klimakompressor_aus__Getriebe_1 : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Getriebe_und_Wandlerschu : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltung_aktiv__Getriebe_1_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 912 Gate_Komf_1: 8 XXX - SG_ GK1_Sta_RDK_Warn : 0|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Anhaen : 1|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Licht3 : 3|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Tuerkont : 4|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Li_vorn : 5|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SleepAckn : 7|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_CharismaModus m1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ GK1_SamFktNr M : 12|4@1+ (1,0) [0|15] "" XXX - SG_ GK1_Fa_Tuerkont : 16|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_RueckfahrSch : 17|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_ELV_verrieg : 18|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Kessy_2 : 19|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Stdhzg : 20|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SH_Verbau : 21|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_ParkFrontWi : 22|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_KW_Warm : 23|1@1+ (1,0) [0|1] "" XXX - SG_ BCM_Remotestart_Betrieb : 24|1@1+ (1,0) [0|1] "" XXX - SG_ BSK_HL_geoeffnet : 26|1@1+ (1,0) [0|1] "" XXX - SG_ BSK_HR_geoeffnet : 27|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Rueckfahr : 28|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_links : 29|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_rechts : 30|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_mitte : 31|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BLS_ILM : 32|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_EDC_ILM : 33|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Blinker_li : 34|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Blinker_re : 35|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_def_P_verr : 36|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_LS1_Fernlicht : 37|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Licht2 : 38|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_LSM : 39|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Count_Anhaen : 40|4@1+ (1,0) [0|15] "" XXX - SG_ BSK_BT_geoeffnet : 41|1@1+ (1,0) [0|1] "" XXX - SG_ BSK_HD_Hauptraste : 43|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BLS_AAG : 44|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_EDC_AAG : 45|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Anhaenger : 46|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_Anhaen : 47|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Abblendlicht : 48|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Fernlicht : 49|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Wischer_vorn : 50|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_ILM_F_1 : 51|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Abbl_VL_def : 52|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Abbl_VR_def : 53|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Blink_Autob : 54|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Warnblk_Status : 55|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SH_laeuft : 56|1@1+ (1,0) [0|1] "" XXX - SG_ SH1_ein_Wasserpumpe : 57|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Nebel_ein : 58|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Bremslicht : 59|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Anh_abgesteckt : 60|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_AnhKonLamp : 61|1@1+ (1,0) [0|1] "" XXX - SG_ LDS_Stellung_AFL : 62|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SH_Zusatzfkt : 63|1@1+ (1,0) [0|1] "" XXX - - -BO_ 1340 Fahrwerk_1: 1 XXX - SG_ Frei_Fahrwerk_1_2 : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Fahrwerk_1_1 : 6|2@1+ (1,0) [0|0] "" XXX - SG_ Einstellung_Fahrwerkdaempfung_4 : 4|3@1+ (1,0) [0|7] "" XXX - SG_ Ansteuererung_Fahrzeugniveau : 0|4@1+ (1,0) [0|15] "" XXX - -BO_ 1472 EPB_1: 8 XXX - SG_ COUNTER : 0|4@1+ (1,0) [0|15] "" XXX - SG_ EP1_Fehler_Sta : 4|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EP1_Sta_EPB : 6|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Sta_Schalter : 7|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Spannkraft : 8|5@1+ (1,0) [0|30] "Unit_KiloNewto" XXX - SG_ EP1_Schalterinfo : 13|2@1+ (1,0) [0|3] "" XXX - SG_ EP1_Sta_NWS : 15|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Neig_winkel : 16|8@1+ (1,-128) [-128|127] "Unit_PerCentOfForceOfGravi" XXX - SG_ EP1_Verzoegerung : 24|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" XXX - SG_ EP1_Fehlereintr : 32|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Freigabe_Ver : 33|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_AutoHold_zul : 34|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_AutoHold_aktiv : 35|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_SleepInd : 36|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Status_Kl_15 : 37|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Lampe_AutoP : 38|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Bremslicht : 39|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Warnton1 : 40|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Warnton2 : 41|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_AnfShLock : 42|1@1+ (1,0) [0|1] "" XXX - SG_ EPB_Autoholdlampe : 43|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_QualNeigWi : 44|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_KuppModBer : 45|2@1+ (1,0) [0|3] "" XXX - SG_ EP1_HydrHalten : 47|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Fkt_Lampe : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EP1_Warnton : 49|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Fehler_BKL : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EP1_Fehler_gelb : 51|1@1+ (1,0) [0|1] "" XXX - SG_ EP1__Text : 52|4@1+ (1,0) [0|8] "" Vector__XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 1326 Diag_Lenkhilfe: 3 XXX - SG_ Werkstattcode__Diag_ : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Signal__Diag_ : 13|3@1+ (1,0) [0|7] "" XXX - SG_ Befehl_Sensorcodierung_Lenkhilf : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Befehl_Kennliniencodierung_Lenk : 8|4@1+ (1,0) [0|0] "" XXX - SG_ Befehl_Fehlerspeicher_loeschen : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1432 Daempfer_1: 2 XXX - SG_ Frei_Daempfer_1_4 : 12|4@1+ (1,0) [0|0] "" XXX - SG_ Textbits_Daempfer : 8|4@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeicherbit__Daempfer_1_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Systemstatus__Daempfer_1_ : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Daempfer_1_3 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Status_CDC_Taster : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Daempfer_1_2 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Daempferregelung_4_1 : 0|3@1+ (1,0) [0|7] "" XXX - -BO_ 1392 BSG_Last: 4 XXX - SG_ Klimaanlage_abschalten : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Sitzbelueftung_abschalten : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Wischwasserheizung_abschalten : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkradheizung_abschalten : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Sitze_abschalten : 27|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Aussenspiegel_abschalt : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Frontscheibe_abschalte : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Heckscheibe_abschalten : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Batteriespannung_Bordnetzbatter : 16|8@1+ (0.05,5) [5|17.7] "V" XXX - SG_ Motorhaubenkontakt : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Leuchtweitenregulierung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag__BSG_Last : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Zustand_der_Starterbatterie : 11|2@1+ (1,0) [0|0] "" XXX - SG_ Zustand_der_Bordnetzbatterie : 9|2@1+ (1,0) [0|0] "" XXX - SG_ LL_Drehzahlanhebung : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_L : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_BSG_Last_1_1 : 4|3@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_50 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_X : 2|1@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_15 : 1|1@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_S : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1136 BSG_Kombi: 5 XXX - SG_ Frei_BSG_Kombi_1_3 : 36|4@1+ (1,0) [0|0] "" XXX - SG_ Ruecksitzlehne_HR_verr__4_1 : 35|1@1+ (1,0) [0|0] "" XXX - SG_ Ruecksitzlehne_HL_verr__4_1 : 34|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerlampe_Lenkhilfe_veraltet : 33|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerlampe_Lenkhilfe__BSG_Komb : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kl__58s : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58s__BSG_Kombi_ : 24|7@1+ (1,0) [0|100] "%" XXX - SG_ Fehlerstatus_Kl__58d : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58d__BSG_Kombi_ : 16|7@1+ (1,0) [0|100] "%" XXX - SG_ Unterspannung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_BSG_Kombi_1_2 : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Heckdeckel_geoeffnet : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Motorhaube_geoeffnet : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Tuer_hinten_rechts_geoeffnet : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Tuer_hinten_links_geoeffnet : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Beifahrertuer_geoeffnet : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrertuer_geoeffnet : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Lade_Kontrollampe : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_BSG_Kombi_1_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Rueckfahrlicht : 5|1@1+ (1,0) [0|0] "" XXX - SG_ DWA_Akku : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Warnblink_Mode : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Anhaenger_Kontrollampe : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Blinker_rechts_Kontrollampe : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Blinker_links_Kontrollampe : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 424 Bremse_6: 3 XXX - SG_ Checksumme_Bremse_6 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Bremse_6 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Status_Bremsdruck__Bremse_6__du : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_6_1 : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsdruck__Bremse_6_ : 0|10@1+ (0.3255,-40) [-40|293] "bar" XXX - -BO_ 1192 Bremse_5: 8 XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 52|4@1+ (1,0) [0|15] "" XXX - SG_ Bremslicht_ECD : 51|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsentemperatur_vorn : 48|3@1+ (125,125) [125|1000] "C" XXX - SG_ Frei_Bremse_5_5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ Offset_Gierrate : 32|8@1+ (0.05,-6.375) [-6.375|6.375] "deg/s" XXX - SG_ Vorzeichen_Bremsdruck : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Bremsdruck_durch_ESP_Sys : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsdruck_ungueltig : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_5_3 : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsdruck : 16|12@1+ (0.1,0) [0|250] "bar" XXX - SG_ Vorzeichen_der_Giergeschwindigk : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Gierrate_ungueltig : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Giergeschwindigkeit : 0|14@1+ (0.01,0) [0|100] "Grad/sec" XXX - -BO_ 672 Bremse_4: 3 XXX - SG_ Frei_Bremse_4_1 : 17|7@1+ (1,0) [0|0] "" XXX - SG_ Einheit_Kupplungssteifigkeit : 16|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_Vorgabewert_hinten_Kupplung : 8|8@1+ (0.7874,0) [0|100] "%" XXX - SG_ ABS_Vorgabewert_mitte_Kupplungs : 0|8@1+ (3,-381) [-381|378] "Nm/min" XXX - -BO_ 1184 Bremse_3: 8 XXX - SG_ Radgeschw__HR_4_1 : 49|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_4 : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Radgeschw__HL_4_1 : 33|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_3 : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Radgeschw__VR_4_1 : 17|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_2 : 16|1@1+ (0.01,0) [0|325] "km/h" XXX - SG_ Radgeschw__VL_4_1 : 1|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_1 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1440 Bremse_2: 8 XXX - SG_ gemessene_Querbeschleunigung : 63|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_2_2 : 62|1@1+ (1,0) [0|0] "" XXX - SG_ Impulszahl : 56|6@1+ (1,0) [0|63] "" XXX - SG_ Fehlerstatus_Wegimpulse_4_1 : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_2_5 : 54|1@1+ (1,0) [0|0] "" XXX - SG_ Warnlampe_DDS : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag_Bremse : 52|1@1+ (1,0) [0|0] "" XXX - SG_ Wegimpulszaehlerstatus : 51|1@1+ (1,0) [0|0] "" XXX - SG_ Wegimpulse_Vorderachse : 40|11@1+ (1,0) [0|2047] "" XXX - SG_ Zeitstempel : 24|16@1+ (1,0) [0|65535] "tics" XXX - SG_ mittlere_Raddrehzahl__Bremse_2 : 9|15@1+ (0.002,0) [0|65.278] "U/sec" XXX - SG_ Querbeschl__TimerTic M : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Timer m1 : 0|8@1+ (0.04,0) [0|10.2] "usec" XXX - SG_ Querbeschleunigung m0 : 0|8@1+ (0.01,-1.27) [-1.27|1.27] "g" XXX - -BO_ 416 Bremse_1: 8 XXX - SG_ Geschwindigkeitsersatzwert : 63|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_Systemstatus_4_1 : 62|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_Passiv_getastet : 61|1@1+ (1,0) [0|0] "" XXX - SG_ ASR_Steuerger_t : 60|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 56|4@1+ (1,0) [0|15] "" XXX - SG_ MSR_Eingriffsmoment : 48|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ ASR_Eingriffsmoment_schnell : 40|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ ASR_Eingriffsmoment_langsam : 32|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ Geschwindigkeit_neu__Bremse_1_ : 17|15@1+ (0.01,0) [0|326.39] "km/h" XXX - SG_ Aktiver_Bremskraftverstaerker : 16|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_in_Diagnose : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Schlechtwegausblen : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Schlechtwegausblendung : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrer_bremst__Bremse_1___4_1_ : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Bremskontroll_Lampe : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Lampe_ASR___ESP : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Lampe_ABS : 8|1@1+ (1,0) [0|0] "" XXX - SG_ EBV_Eingriff : 7|1@1+ (1,0) [0|0] "" XXX - SG_ ASR_Schaltbeeinflussung : 5|2@1+ (1,0) [0|0] "" XXX - SG_ ESP_Eingriff : 4|1@1+ (1,0) [0|0] "" XXX - SG_ EDS_Eingriff : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_Bremsung__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ MSR_Anforderung : 1|1@1+ (1,0) [0|0] "" XXX - SG_ ASR_Anforderung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 680 Bremsbooster_1: 3 XXX - SG_ Fehlerspeichereintrag_Booster : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Loseschalter_unplausibel_Boost : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Position_Standby : 21|1@1+ (1,0) [0|0] "" XXX - SG_ ADR_Relais_ge_ffnet : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Bremsbooster_Steuerung : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsbooster_verf_gbar : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Eingriff_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Bremseingriff_Fahrer : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremsbooster_1_1 : 12|4@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Booster_1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Checksumme_Booster_1 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1400 BatMan_1: 1 XXX - SG_ Fehlerspeichereintrag__BatMan_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Leistungsrelais : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Messung_Starterleitung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Zustand_Starterleitung : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Umschaltrelais_Bordnetzbatterie : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Ladung_Starterbatterie : 1|2@1+ (1,0) [0|0] "" XXX - SG_ Startmodus : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 704 Allrad_1: 5 XXX - SG_ Kupplungssteifigkeit_Hinten__Is : 32|8@1+ (0.7874,0) [0|100] "%" XXX - SG_ Fehlerspeichereintrag_Allrad_1 : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Allrad_1_1 : 26|5@1+ (1,0) [0|0] "" XXX - SG_ Schaltung_Vorwarnung : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltung_aktiv__Allrad_1_ : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Ganginfo__PNG_ : 20|4@1+ (1,0) [0|0] "" XXX - SG_ PNG_Anzeige_blinkend : 19|1@1+ (1,0) [0|0] "" XXX - SG_ PNG_Status_4_1 : 16|3@1+ (1,0) [0|0] "" XXX - SG_ Kupplungssteifigkeit_Mitte__Ist : 8|8@1+ (3,-381) [-381|378] "Nm/min" XXX - SG_ Einheit_der_Kupplungssteifigkei : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Geschwindigkeitsbegrenzung : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Allrad_Warnlampe : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Notlauf : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Kupplung_komplett_offen : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kupplungssteifigke : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Ubertemperaturschutz__Allrad_1_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Allrad_Kupplung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1360 Airbag_2: 2 XXX - SG_ OOP_Beifahrer : 14|2@1+ (1,0) [0|0] "" XXX - SG_ OOP_Fahrer : 12|2@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_hinten_mitte : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_hinten_recht : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_hinten_links : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_Beifahrersit : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Checksumme_Airbag_2__reserviert : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 80 Airbag_1: 4 XXX - SG_ CHECKSUM : 24|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX - SG_ Fehlerspeichereintrag : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Airbag_1_2 : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_im_Stellgliedtest : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_in_Diagnose : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtwarnung_Beifahrer : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtschalter_Beifahrer : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtwarnung_Fahrer : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtschalter_Fahrer : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_Systemfehler : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Kindersitzerkennung : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_deaktiviert : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_Lampe : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Crash_Intensitaet : 5|3@1+ (1,0) [0|111] "B" XXX - SG_ Rollover : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Seiten_Crash_Beifahrer : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Seiten_Crash_Fahrer : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Heck_Crash : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Front_Crash : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 864 ADR_System: 8 XXX - SG_ S_Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ S_Frei_ADR_1_1 : 52|4@1+ (1,0) [0|0] "" XXX - SG_ S_Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX - SG_ S_Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX - SG_ S_Fehlerspeichereintrag_Bremsbo : 46|1@1+ (1,0) [0|0] "" XXX - SG_ S_ADR_Relais_geoeffnet : 45|1@1+ (1,0) [0|0] "" XXX - SG_ S_Bremsbooster_Status : 43|2@1+ (1,0) [0|0] "" XXX - SG_ S_Eingriff_Bremsbooster : 42|1@1+ (1,0) [0|0] "" XXX - SG_ S_Loeseschalter_unplausibel : 41|1@1+ (1,0) [0|0] "" XXX - SG_ S_Bremseingriff_Fahrer : 40|1@1+ (1,0) [0|0] "" XXX - SG_ S_Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX - SG_ S_Ansteuerung_optischer_Fahrerh : 38|1@1+ (1,0) [0|0] "" XXX - SG_ S_Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX - SG_ S_Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX - SG_ S_Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX - SG_ S_Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX - SG_ S_Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX - SG_ S_Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX - SG_ S_Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX - SG_ S_Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX - SG_ S_Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX - SG_ S_Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX - SG_ S_Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ S_Status_ADR_1__S_ : 13|2@1+ (1,0) [0|0] "" XXX - SG_ S_Fehler_ADR_1__S_ : 12|1@1+ (1,0) [0|0] "" XXX - SG_ S_Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ S_Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX - -BO_ 608 ADR_2: 4 XXX - SG_ Frei_ADR_2_2 : 27|5@1+ (1,0) [0|0] "" XXX - SG_ Anforderung_Bremsdruck : 16|11@1+ (0.0625,0) [0|127.9375] "bar" XXX - SG_ Frei_ADR_2_1 : 14|2@1+ (1,0) [0|0] "" XXX - SG_ Relais_Test_Fehler : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Standby : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_ADR_2 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Checksumme_ADR_2 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1324 ADR_1: 8 XXX - SG_ Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_ADR_1_5 : 52|4@1+ (1,0) [0|0] "" XXX - SG_ Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX - SG_ Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX - SG_ Reserviert_ADR_1_1 : 40|7@1+ (1,0) [0|0] "" XXX - SG_ Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_optischer_Fahrerhin : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX - SG_ Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX - SG_ Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX - SG_ Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX - SG_ Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX - SG_ Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Status_ADR_1 : 13|2@1+ (1,0) [0|0] "" XXX - SG_ Fehler_ADR_1 : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX - -BO_ 1550 Einheiten_1: 2 XXX - SG_ MFA_v_Einheit_02 : 0|1@1+ (1,0) [0|1] "" XXX - -BO_ 872 ACC_System: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACS_Sta_ADR : 12|2@1+ (1,0) [0|3] "" XXX - SG_ ACS_ADR_Schub : 14|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Schubabsch : 15|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_StSt_Info : 16|2@1+ (1,0) [0|3] "" XXX - SG_ ACS_MomEingriff : 18|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Typ_ACC : 19|2@1+ (1,0) [0|3] "" XXX - SG_ ACS_FreigSollB : 23|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Sollbeschl : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - SG_ ACS_Anhaltewunsch : 38|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Fehler : 39|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_zul_Regelabw : 40|8@1+ (0.005,0) [0|1.265] "Unit_MeterPerSeconSquar" XXX - SG_ ACS_max_AendGrad : 48|8@1+ (0.02,0) [0.02|5.06] "Unit_MeterPerSeconSquar" XXX - -BO_ 1386 ACC_GRA_Anzeige: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ACA_StaACC : 8|3@1+ (1,0) [0|7] "" XXX - SG_ ACA_ID_StaACC : 11|5@1+ (1,0) [0|31] "" XXX - SG_ ACA_Fahrerhinw : 16|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_AnzDisplay : 17|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Zeitluecke : 18|4@1+ (1,0) [0|15] "" XXX - SG_ ACA_V_Wunsch : 24|8@1+ (1,0) [0|255] "Unit_KiloMeterPerHour" XXX - SG_ ACA_kmh_mph : 32|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Akustik1 : 33|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Akustik2 : 34|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_PrioDisp : 35|2@1+ (1,0) [0|3] "" XXX - SG_ ACA_gemZeitl : 40|4@1+ (1,0) [0|15] "" XXX - SG_ ACA_ACC_Verz : 44|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_StaGRA : 48|3@1+ (1,0) [0|7] "" XXX - SG_ ACA_ID_StaGRA : 51|5@1+ (1,0) [0|31] "" XXX - SG_ ACA_Codierung : 56|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Tachokranz : 57|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Aend_Zeitluecke : 58|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 208 Lenkhilfe_3: 6 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ LH3_BS_Spiegel : 8|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX - SG_ LH3_LM : 16|10@1+ (1,0) [0|1023] "" XXX - SG_ LH3_LMSign : 26|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_LMValid : 27|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_Sta_DSR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ LH3_BLW : 32|12@1+ (0.15,0) [0|615] "" XXX - SG_ LH3_BLWSign : 44|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_BLWValid : 45|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_Lenkungstyp : 46|2@1+ (1,0) [0|3] "" XXX - -BO_ 978 Lenkhilfe_2: 7 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_Geradeaus : 12|1@1+ (1,0) [0|1] "" XXX - SG_ LH2_Sta_Charisma : 13|3@1+ (1,0) [0|7] "" XXX - SG_ LH2_Sta_HCA : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_Ausg_LW1 : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LH2_Ausg_LW1_gue : 21|1@1+ (1,0) [0|1] "" XXX - SG_ LH2_StatEPS_PLA : 24|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_aktLenkeingriff : 32|8@1+ (1,0) [0|255] "" XXX - SG_ LH2_PLA_Err : 48|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_PLA_Abbr : 52|4@1+ (1,0) [0|15] "" XXX - -BO_ 210 HCA_1: 5 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ HCA_Status : 12|4@1+ (1,0) [0|15] "" XXX - SG_ LM_Offset : 16|15@1+ (0.03125,0) [0|300] "cNm" XXX - SG_ LM_OffSign : 31|1@1+ (1,0) [0|1] "" XXX - SG_ Vib_Freq : 32|4@1+ (4,0) [0|60] "Hz" XXX - SG_ Vib_Amp : 36|4@1+ (0.5,0) [0|7.5] "Nm" XXX - -BO_ 644 Motor_Bremse: 6 XXX - SG_ MOB_Standby : 12|1@1+ (1,0) [0|1] "" XXX - SG_ MOB_Freigabe : 14|1@1+ (1,0) [0|1] "" BCM_Gateway,Bremse_MK25AESP,Gateway_separat - SG_ MOB_Anhaltewunsch : 13|1@1+ (1,0) [0|1] "" Bremse_MK25AESP,Getriebe_DQ - SG_ MOB_CHECKSUM : 0|8@1+ (1,0) [0|255] "" Bremse_MK25AESP - SG_ MOB_COUNTER : 8|4@1+ (1,0) [0|15] "" Bremse_MK25AESP - SG_ TSK_v_Begrenzung_aktiv : 15|1@0+ (1,0) [0|1] "" XXX - SG_ TSK_ax_Getriebe_01 : 40|8@1+ (0.048,0) [0|255] "m/s2" XXX - SG_ MOB_Bremsstgr : 16|11@1+ (0.048852,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ MOB_Bremsmom : 27|13@1+ (4,0) [0|32760] "Unit_NewtoMeter" Bremse_MK25AESP - -BO_ 870 AWV: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ AWV_Text : 12|4@1+ (1,0) [0|14] "" Vector__XXX - SG_ AWV_1_Freigabe : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_1_Prefill : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_1_Parameter : 18|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AWV_only : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_CityANB_Auspraegung : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Halten : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_Teilbremsung_Freigabe : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Status : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Fehler : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_SU_Warnzeit : 26|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AWV_2_SU_Bremsruck : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_SU_Gong : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_SU_Lampe : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Umfeldwarn : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Freigabe : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Ruckprofil : 33|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ AWV_2_Warnton : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Warnsymbol : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Infoton : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Gurtstraffer : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Menueanf : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Vorw_Menueanf : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Status : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Vorw_Status : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Abstandswarnung : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_Zielbremsung_Freigabe : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_CM_Anforderung : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_Ziel_Teilbrems_Verz_Anf : 54|10@1+ (0.024,-20.016) [0|1023] "Unit_MeterPerSeconSquar" Vector__XXX - -BO_ 1470 LDW_Status: 8 XXX - SG_ LDW_Lernmodus_rechts : 0|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus_links : 2|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus : 9|3@1+ (1,0) [0|3] "" XXX - SG_ LDW_Textbits : 12|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Gong : 16|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Kameratyp : 18|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lampe_gelb : 19|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lampe_gruen : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_links : 21|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_rechts : 22|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_KD_Fehler : 23|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_DLC : 24|8@1+ (0.01,-1.25) [-1.25|1.25] "" XXX - SG_ LDW_TLC : 32|5@1+ (0.1,0) [0|3] "" XXX - SG_ LDW_Seite_DLCTLC : 37|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Frueh_Spaet : 38|2@1+ (1,0) [0|3] "" XXX - -BO_ 428 Bremse_8: 8 XXX - SG_ BR8_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX - SG_ BR8_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BR8_Sta_ACC_Anf : 12|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Verz_EPB_akt : 13|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_Br_temp : 14|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_Br_Druck : 15|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_TolAbgl_HL : 16|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX - SG_ BR8_TolAbgl_HR : 24|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX - SG_ BR8_Istbeschl : 32|9@1+ (0.02,-7.22) [-7.22|2.98] "Unit_MeterPerSeconSquar" XXX - SG_ BR8_Sta_HW_BLS : 41|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_QB_LBeschl : 42|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_ESC_Mode : 43|2@1+ (1,0) [0|3] "" XXX - SG_ BR8_aktBrSyst : 45|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Fa_bremst : 46|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_StaBrSyst : 47|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Laengsbeschl : 48|10@1+ (0.03125,-16) [-15.96875|15.9375] "Unit_MeterPerSeconSquar" XXX - SG_ BR8_Sta_ADR_BR : 58|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Quattro : 59|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_VerzReg : 60|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_BLS : 61|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Verz_EPB : 62|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Check_EPB : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 928 Bremse_10: 8 XXX - SG_ B10_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX - SG_ B10_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX - SG_ B10_QB_Wegimp_VL : 12|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Wegimp_VR : 13|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Wegimp_HL : 14|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Wegimp_HR : 15|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Wegimp_VL : 16|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_Wegimp_VR : 26|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_Wegimp_HL : 36|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_Wegimp_HR : 46|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_QB_Fahrtr_VL : 56|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Fahrtr_VR : 57|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Fahrtr_HL : 58|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Fahrtr_HR : 59|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_VL : 60|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_VR : 61|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_HL : 62|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_HR : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 835 RDK_Status: 3 XXX - SG_ RKS_Reifen_VL : 0|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_VR : 1|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_HL : 2|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_HR : 3|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_RR : 4|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Warnung_2 : 5|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Warnung_1 : 6|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Systemfehler : 7|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Kalibrier_abgew : 8|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Druckdiff_Vorn : 9|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Druckdiff_Hinten : 10|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Befuellung_RR_low : 11|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Funkstoerung : 12|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_System_Aus : 13|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_KD_Fehler : 15|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Lampe : 16|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Ton : 17|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Gong : 18|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_RDK_Blinkbit : 19|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Teillast : 20|1@1+ (1,0) [0|1] "" XXX - -BO_ 914 Gate_Komf_2: 8 XXX - SG_ GK2_Sta_LSM : 0|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Lichtsensor : 1|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_VSG : 3|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Schluessel : 4|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Profil : 5|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Clima2 : 6|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_BSG4 : 7|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Kessy_4 : 8|1@1+ (1,0) [0|1] "" XXX - SG_ BS4_Gleitende_Leuchtw_Anf : 9|1@1+ (1,0) [0|1] "" XXX - SG_ BS4_GLW_Fernlicht_Anf : 10|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Blk_L_Kontrolle : 11|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Blk_R_Kontrolle : 12|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_LS_KomFehler : 14|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_LS_def : 15|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Helligkeit : 16|3@1+ (714.286,0) [0|5000.002] "Unit_Lux" XXX - SG_ GK2_VD_zu_ver : 19|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_VD_entriegelt : 20|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_VD_offen_ver : 21|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Verdeck_Anf : 22|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_VDKD_auf : 23|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Schluessel : 24|4@1+ (1,0) [0|15] "" XXX - SG_ GK2_Hardtop : 28|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_AFL_Schalter : 29|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Nebelschluss : 30|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_EM_LIN_ungueltig : 31|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Profil : 32|4@1+ (1,0) [0|15] "" XXX - SG_ GK2_Kl_StSt_Info : 36|2@1+ (1,0) [0|3] "" XXX - SG_ GK2_BSG_StSt_Info : 38|2@1+ (1,0) [0|3] "" XXX - SG_ GK2_BEM_P_Generator : 40|8@1+ (50,0) [0|12700] "Unit_Watt" XXX - SG_ GK2_BEM_Abschaltstufen : 48|3@1+ (1,0) [0|7] "" XXX - SG_ GK2_BEM_DFM : 51|5@1+ (3.225,0.025) [0.025|100] "Unit_PerCent" XXX - SG_ GK2_Kessy_StSt_Info : 56|2@1+ (1,0) [0|3] "" XXX - SG_ GK2_BEM_StSt_Info : 58|2@1+ (1,0) [0|3] "" XXX - -BO_ 954 SWA_1: 8 SWA - SG_ SWA_Textbits : 12|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Gong : 16|2@1+ (1,0) [0|3] "" XXX - SG_ SWA_Sta_passiv : 19|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Sta_aktiv : 20|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_KD_Fehler : 59|1@1+ (1,0) [0|1] "" XXX - -BO_ 1175 Parkhilfe_01: 8 XXX - SG_ PH_Abschaltursache : 13|3@1+ (1,0) [0|7] "" XXX - SG_ PH_Opt_Anzeige_V_ein : 16|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Opt_Anzeige_H_ein : 17|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Opt_Anz_V_Hindernis : 18|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Opt_Anz_H_Hindernis : 19|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Tongeber_V_aktiv : 20|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Tongeber_H_aktiv : 21|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Tongeber_mute : 22|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Anf_Audioabsenkung : 23|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Frequenz_hinten : 32|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Lautstaerke_hinten : 36|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Frequenz_vorn : 40|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Lautstaerke_vorn : 44|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Trigger_Bildaufschaltung : 48|1@1+ (1,0) [0|1] "" XXX - SG_ PH_StartStopp_Info : 49|2@1+ (1,0) [0|3] "" XXX - SG_ PH_Aufbauten_erk : 51|1@1+ (1,0) [0|1] "" XXX - SG_ PH_BerErk_vorn : 52|2@1+ (1,0) [0|3] "" XXX - SG_ PH_BerErk_hinten : 54|2@1+ (1,0) [0|3] "" XXX - SG_ PH_defekt : 56|1@1+ (1,0) [0|1] "" XXX - SG_ PH_gestoert : 57|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Systemzustand : 58|3@1+ (1,0) [0|7] "" XXX - SG_ PH_Display_Kundenwunsch : 61|2@1+ (1,0) [0|3] "" XXX - SG_ PH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 1463 Bremse_11: 8 XXX - SG_ B11_HydHalten : 13|1@1+ (1,0) [0|1] "" XXX - SG_ B11_Br_StSt_Info : 14|2@1+ (1,0) [0|3] "" XXX - SG_ B11_OBD_Nib_VL : 16|4@1+ (1,0) [0|15] "" XXX - SG_ B11_OBD_Nib_VR : 20|4@1+ (1,0) [0|15] "" XXX - SG_ B11_OBD_Nib_HL : 24|4@1+ (1,0) [0|15] "" XXX - SG_ B11_OBD_Nib_HR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ B11_EPB_Steller_akt : 32|1@1+ (1,0) [0|1] "" XXX - SG_ B11_EPB_Steller_gue : 33|1@1+ (1,0) [0|1] "" XXX - -BO_ 1500 Soll_Verbauliste_neu: 8 XXX - SG_ VL1_Motor_SG : 0|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Getr_SG : 1|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ABS : 2|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Kombi : 3|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_LSM : 4|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Airbag : 5|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Lenkhilfe : 6|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_dyn_LWR : 7|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_res_08 : 8|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Allrad : 9|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ADR : 10|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ADR_getrennt : 11|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_EPB : 12|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_res_13 : 13|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Daempfer : 14|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Quersperre : 15|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_MotorSlave : 16|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_SWA : 17|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_HCA : 18|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_RKA_Plus : 19|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_PLA : 20|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_WFS_KBI : 21|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Kombi_KBI : 22|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Soll_eq_Ist : 23|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_BSG_Komf : 24|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ZKE : 25|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_FT : 26|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_BT : 27|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_HL : 28|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_HR : 29|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Memory : 30|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Dachmodul_K : 31|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Zentralelektrik_II : 32|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_RDK : 33|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Lenksaeule : 34|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Gateway : 35|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Clima_Komf : 36|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Einparkhilfe : 37|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_PTC_Heizung : 38|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Standheiz : 39|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Verdeck : 40|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_RSE_I : 41|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_res_42 : 42|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_MDI_I : 43|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Anhaenger : 44|1@1+ (1,0) [0|1] "" SWA - SG_ VL1_Memory_BF : 45|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Easy_Entry_VF : 46|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Easy_Entry_VB : 47|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Heckdeckel : 48|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Rearview : 49|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Sonderfzg_SG : 50|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Tastenmodul : 51|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Kompass : 52|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_WFS_K : 53|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_GSM_Pager : 54|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_InfoElektronik : 55|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_DSP : 56|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_DAB : 57|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Telematik : 58|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Navigation : 59|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TV_Tuner : 60|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Neigungsmodul_I : 61|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Radio : 62|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Telefon : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 1490 Ident: 8 XXX - SG_ IDT_Mux M : 0|2@1+ (1,0) [0|2] "" XXX - SG_ IDT_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 2000 Diagnose_1: 8 XXX - SG_ DI1_VerlernZaehl : 0|8@1+ (1,0) [0|254] "" XXX - SG_ DI1_km_Stand : 8|20@1+ (1,0) [0|1048575] "Unit_KiloMeter" XXX - SG_ DI1_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" XXX - SG_ DI1_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" XXX - SG_ DI1_Tag : 39|5@1+ (1,0) [0|31] "Unit_Day" XXX - SG_ DI1_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" XXX - SG_ DI1_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" XXX - SG_ DI1_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" XXX - SG_ DI1_KM_Stand_alt : 62|1@1+ (1,0) [0|1] "" XXX - SG_ DI1_Zeit_alt : 63|1@1+ (1,0) [0|1] "" XXX - -CM_ SG_ 80 Checksumme_Airbag_1 "Checksum Airbag_1"; -CM_ SG_ 80 Zaehler_Airbag_1 "Counter Airbag_1"; - -CM_ SG_ 210 LM_Offset "centiNewton-meters for ease of calculation without FP math in Panda"; -CM_ SG_ 210 Vib_Amp "Steering wheel haptic, amplitude"; -CM_ SG_ 210 Vib_Freq "Steering wheel haptic, frequency"; - -CM_ SG_ 416 Zaehler_Bremse_1 "Counter Bremse_1"; - -CM_ SG_ 640 inneres_Motor_Moment "Engine Indicated Torque"; -CM_ SG_ 640 Fahrerwunschmoment "Driver Requested Torque"; -CM_ SG_ 640 mechanisches_Motor_Verlustmomen "Mechanical Torque Loss"; -CM_ SG_ 640 Fahrpedalwert_oder_Drosselklapp "Accelerator Pedal or Throttle Position"; -CM_ SG_ 640 Motordrehzahl "Engine Speed"; -CM_ SG_ 640 Momentenangaben_ungenau "Approximate Torque Values"; -CM_ SG_ 640 inneres_Motor_Moment_ohne_exter "Inner torque without external"; - -CM_ SG_ 644 MOB_CHECKSUM "Checksum MOB"; -CM_ SG_ 644 MOB_COUNTER "Counter MOB"; - -CM_ SG_ 648 Minimales_Motormoment_bei_Zuend "Minimum Torque Adjustment"; -CM_ SG_ 648 Begrenzungsmoment "Maximum Inner Torque"; -CM_ SG_ 648 Bremstestschalter "Brake Test Switch"; -CM_ SG_ 648 Soll_Geschwindigkeit_bei_GRA_Be "Desired Vehicle Speed"; -CM_ SG_ 648 Bremslichtschalter "Brake Light Switch"; -CM_ SG_ 648 Leerlaufsolldrehzahl__Motor_2_ "Target Idle Speed"; -CM_ SG_ 648 Fahrzeuggeschwindigkeit "Vehicle Speed"; -CM_ SG_ 648 Kuehlmitteltemperatur__Motor_2_ "Coolant Temperature"; - -CM_ SG_ 896 Drosselklappenpoti "Throttle Position"; -CM_ SG_ 896 Motor_Wunschdrehzahl "Desired engine speed"; -CM_ SG_ 896 Motordrehzahlbeeinflussung "Shift Target Influence"; -CM_ SG_ 896 Fahrpedal_Rohsignal "Accelerator Pedal Position"; -CM_ SG_ 896 Ansauglufttemperatur "Intake Air Temperature"; -CM_ SG_ 896 Kein_E_Gas "ETB flag"; -CM_ SG_ 896 Kein_Start_Stop "Start/stop flag"; -CM_ SG_ 896 Rad_Wunschmoment "Desired wheel torque"; - -CM_ SG_ 912 GK1_Fa_Tuerkont "Status of the driver's door rotary latch"; -CM_ SG_ 912 BSK_HL_geoeffnet "Status of the rear left door rotary latch"; -CM_ SG_ 912 BSK_HR_geoeffnet "Status of the rear right door rotary latch"; -CM_ SG_ 912 BSK_BT_geoeffnet "Status of the passenger door rotary latch"; -CM_ SG_ 912 BSK_HD_Hauptraste "Status of trunk lid main detent"; - -CM_ SG_ 1088 Zaehler_Getriebe_1 "Counter Getriebe_1"; -CM_ SG_ 1088 Waehlhebelposition__Getriebe_1_ "Gear Selector Position"; -CM_ SG_ 1088 inneres_Soll_Motormoment "Desired Inner Torque"; -CM_ SG_ 1088 Gang_eingelegt "Gear Engaged"; -CM_ SG_ 1088 Schaltabsicht "Shift Intent"; -CM_ SG_ 1088 Kuehlleistung "Cooling Power"; -CM_ SG_ 1088 Wandlerverlustmoment "Converter Torque Loss"; -CM_ SG_ 1088 Getriebe_Notlauf "Transmission_Notlauf"; -CM_ SG_ 1088 Zielgang_oder_eingelegter_Gang "target_gear_or_gear_in_engagement"; -CM_ SG_ 1088 Uebertragungsfunktion "transfer function"; -CM_ SG_ 1088 EGS_Anforderung "EGS Requirement"; -CM_ SG_ 1088 Schaltung_aktiv__Getriebe_1_ "Shift Activity"; - -CM_ SG_ 1056 Fehlerstatus_Aussentemp__4_1 "ambient temp error"; -CM_ SG_ 1056 Fehlerstatus_Oeltemperatur_4_1 "oil temp error"; -CM_ SG_ 1056 Fehlerst__Kuehlmitteltemp__4_1 "water temp error"; -CM_ SG_ 1056 Aussentemperatur_gefiltert "outside temp, filtered"; -CM_ SG_ 1056 Oeltemperatur_4_1 "kombi oil temperature"; -CM_ SG_ 1056 Kuehlmitteltemp__4_1__Kombi_2_ "kombi coolant temperature"; - -CM_ SG_ 1096 Zaehler_Waehlhebel_1 "Counter Waehlhebel_1"; - -CM_ SG_ 1152 CHECKSUM "Checksum Motor_5"; -CM_ SG_ 1152 Anlasser_Ausspuren "Starter Disable"; -CM_ SG_ 1152 Anlasser_Freigabe "Starter Release"; -CM_ SG_ 1152 Klimadrucksignal__Motor_5_ "Air conditioning pressure signal"; -CM_ SG_ 1152 Kraftstoffverbrauchssignal "Fuel consumption signal"; -CM_ SG_ 1152 K_hlerluefteransteuerung "Cooling fan control signal"; -CM_ SG_ 1152 Klimakompressor_Leistungsreduzi "Air conditioning compressor power reduction flag"; -CM_ SG_ 1152 Klimakompressor_aus__Motor_5_ "Air conditioning compressor"; -CM_ SG_ 1152 Anlasser_Freigabe "Starter release"; -CM_ SG_ 1152 OBD_2_Lampe "OBD light"; -CM_ SG_ 1152 E_Gas_Lampe "ETB light"; -CM_ SG_ 1152 Ladekontroll_Lampe "Charge light"; -CM_ SG_ 1152 Vorgluehlampe__Motor_5_ "Glow light"; - -CM_ SG_ 1160 Zaehler_Motor_6 "Counter Motor_6"; -CM_ SG_ 1160 Hoeheninfo__Motor_6_ "Altitude Correction"; -CM_ SG_ 1160 Istmoment_f_r_Getriebe "Actual torque for gear"; -CM_ SG_ 1160 Sollmoment_f_r_Getriebe "Target torque for gearbox"; -CM_ SG_ 1160 Checksumme_Motor_6 "Checksum Motor_6"; -CM_ SG_ 1160 GRA_Sollbeschleunigung "GRA target acceleration"; -CM_ SG_ 1160 Ruckmeldung_Momenten "Feedback torque-integral gear intervention"; - -CM_ SG_ 1344 Zahler_Getriebe_2 "Counter Getriebe_2"; -CM_ SG_ 1344 Hochschaltlampe "Upshift Flag"; - -CM_ SG_ 1386 ACA_V_Wunsch "255=unset"; - -CM_ SG_ 1408 Zaehler_Motor_Flexia "Counter Motor_Flexia"; -CM_ SG_ 1408 Verbrennungsart "Type of combustion"; -CM_ SG_ 1408 Max_Drehmoment "Maximum torque"; -CM_ SG_ 1408 Drehzahl_MaxNorm "RPM of maximum torque"; -CM_ SG_ 1408 Hubraum "Displacement"; -CM_ SG_ 1408 Anzahl_Zylinder "Number of cylinders"; -CM_ SG_ 1408 Anzahl_Ventile "Number of valves"; -CM_ SG_ 1408 Ansaugsystem "Induction System"; -CM_ SG_ 1408 Motorleistung "Maximum engine power"; - -CM_ SG_ 1416 Ladedruck "Boost Pressure"; -CM_ SG_ 1416 Motordrehzahlgradient "Engine speed gradient"; -CM_ SG_ 1416 Hoeheninfo__Motor_7_ "Altitude correction factor"; -CM_ SG_ 1416 Oltemperatur "Oil temperature"; - -CM_ SG_ 1470 LDW_Direction "0=right,1=left"; -CM_ SG_ 1470 XX_DLCORTLC1 "Might be DLC or TLC"; -CM_ SG_ 1470 XX_DLCORTLC2 "Might be DLC or TLC, might have wrong size"; - -CM_ SG_ 1550 MFA_v_Signal_02 "0=km/h, 1=mph"; - -VAL_ 870 AWV_Text 0 "kein_Text" 1 "FrontAssist_aus" 2 "FrontAssist_startet" 3 "FrontAssist_Warnung" 4 "FrontAssist_Sens_reinig" 5 "FrontAssist_Failure" 6 "FrontAssist_Demo" 7 "Vorhalt" 8 "Bremsung_wird_gerade_durchgefuehrt" 9 "Sensor_not_verfuegbar" 10 "Sensor_reinigen" 11 "Service_notwendig_Failure" 12 "Funktion_vom_Fahrer_deactivated" 13 "Funktion_vom_Fahrer_activated" 14 "FrontAssist_zur_Zeit_not_verfuegbar__rev_Failure"; -VAL_ 870 AWV_1_Freigabe 0 "nicht_freigegeben" 1 "freigegeben"; -VAL_ 870 AWV_1_Prefill 0 "keine_Prefill_Anf" 1 "Prefill_Anf"; -VAL_ 870 AWV_1_Parameter 0 "Defaultparametersatz" 1 "Par_leicht_erh_Empf" 2 "Par_erh_Empf" 3 "Par_hoechster_Empf"; -VAL_ 870 AWV_only 0 "ACC_und_AWV_verbaut" 1 "AWV_ohne_ACC_verbaut"; -VAL_ 870 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich"; -VAL_ 870 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten"; -VAL_ 870 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben"; -VAL_ 870 AWV_2_Status 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 870 AWV_2_Fehler 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 870 AWV_2_SU_Warnzeit 0 "frueh" 1 "normal" 2 "spaet" 3 "adaptiv"; -VAL_ 870 AWV_2_SU_Bremsruck 0 "Bremsruck_deaktiviert" 1 "Bremsruck_aktiviert"; -VAL_ 870 AWV_2_SU_Gong 0 "Gong_deaktiviert" 1 "Gong_aktiviert"; -VAL_ 870 AWV_2_SU_Lampe 0 "Lampe_deaktiviert" 1 "Lampe_aktiviert"; -VAL_ 870 AWV_2_Umfeldwarn 0 "keine_Warnung" 1 "Warnung"; -VAL_ 870 AWV_2_Freigabe 0 "keine_Ruckfreigabe" 1 "Ruckfreigabe"; -VAL_ 870 AWV_2_Ruckprofil 0 "kein_Ruck" 1 "Ruckprofil_1" 2 "Ruckprofil_2" 3 "Ruckprofil_3" 4 "Ruckprofil_4" 5 "Ruckprofil_5" 6 "not_erlaubt" 7 "not_erlaubt"; -VAL_ 870 AWV_2_Warnton 0 "Aus" 1 "Ein"; -VAL_ 870 AWV_2_Warnsymbol 0 "Aus" 1 "Ein"; -VAL_ 870 AWV_Infoton 0 "Aus" 1 "Ein"; -VAL_ 870 AWV_2_Gurtstraffer 0 "Gurt_not_straffen" 1 "Gurt_straffen"; -VAL_ 870 AWV_Konfiguration_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; -VAL_ 870 AWV_Konfiguration_Vorw_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; -VAL_ 870 AWV_Konfiguration_Status 0 "AWV_inaktiv" 1 "AWV_aktiv"; -VAL_ 870 AWV_Konfiguration_Vorw_Status 0 "AWV_Vorwarnung_inaktiv" 1 "AWV_Vorwarnung_aktiv"; -VAL_ 870 AWV_2_Abstandswarnung 0 "kein_Warnhinweis" 1 "Warnhinweis"; -VAL_ 870 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben"; -VAL_ 870 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv"; - -VAL_ 872 ACS_Sta_ADR 2 "ADR_passiv" 0 "ADR_nicht_aktiv" 1 "ADR_aktiv" 3 "irrev_Fehler" ; -VAL_ 872 ACS_ADR_Schub 1 "Verz_begr_auf_Schub" 0 "Verz_nicht_begr_auf_Schub" ; -VAL_ 872 ACS_Schubabsch 1 "SA_nicht_zulaessig" 0 "SA_zulaessig" ; -VAL_ 872 ACS_StSt_Info 3 "Systemfehler" 0 "Motorlauf_nn" 1 "Stoppverbot_Motoranlauf_nn" 2 "Motoranlauf_notwendig" ; -VAL_ 872 ACS_MomEingriff 1 "MomEingr_verhindern" 0 "keine_Beeinfl_MomEingr_Mot" ; -VAL_ 872 ACS_Typ_ACC 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 3 "frei" 2 "frei" ; -VAL_ 872 ACS_FreigSollB 0 "Sollbeschl_nicht_freigeg" 1 "Sollbeschl_freigeg" ; -VAL_ 872 ACS_Sollbeschl 2046 "ADR_nicht_aktiv" 2047 "Fehler" ; -VAL_ 872 ACS_Anhaltewunsch 0 "kein_Haltewunsch" 1 "Fzg_haelt_an" ; -VAL_ 872 ACS_Fehler 1 "Fehlerspeichereintrag" 0 "kein_Fehlerspeichereintrag" ; -VAL_ 872 ACS_zul_Regelabw 254 "ADR_nicht_aktiv" 255 "Fehler" ; -VAL_ 872 ACS_max_AendGrad 254 "Neutralwert" 0 "Neutralwert" 255 "Fehler" ; - -VAL_ 978 LH2_Sta_HCA 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active"; -VAL_ 1088 Waehlhebelposition__Getriebe_1_ 8 "P" 7 "R" 6 "N" 5 "D" 9 "U" 12 "S" 14 "T" 10 "T" 11 "T"; - -VAL_ 1386 ACA_StaACC 6 "ACC_rev_aus" 0 "Hauptschalter_aus" 4 "ACC_im_Hintergrund" 3 "ACC_aktiv" 1 "Reserve" 2 "ACC_passiv" 7 "ACC_irrev_aus" 5 "frei" ; -VAL_ 1386 ACA_ID_StaACC 0 "keine_Anzeige" ; -VAL_ 1386 ACA_Fahrerhinw 1 "Ein" 0 "Aus" ; -VAL_ 1386 ACA_AnzDisplay 1 "Anzeige_erw" 0 "Anzeige_nicht_erw" ; -VAL_ 1386 ACA_Zeitluecke 3 "Zeitluecke3" 10 "Zeitluecke10" 4 "Zeitluecke4" 14 "Zeitluecke14" 11 "Zeitluecke11" 2 "Zeitluecke2" 13 "Zeitluecke13" 9 "Zeitluecke9" 1 "Zeitluecke1" 8 "Zeitluecke8" 5 "Zeitluecke5" 15 "Zeitluecke15" 0 "nicht_definiert" 12 "Zeitluecke12" 6 "Zeitluecke6" 7 "Zeitluecke7" ; -VAL_ 1386 ACA_V_Wunsch 255 "kein_Wert_im_Speicher" ; -VAL_ 1386 ACA_kmh_mph 0 "km_h" 1 "mph" ; -VAL_ 1386 ACA_Akustik1 0 "kein_Gong" 1 "Gong" ; -VAL_ 1386 ACA_Akustik2 0 "kein_Summer" 1 "Summer" ; -VAL_ 1386 ACA_PrioDisp 1 "mittlere_Prio" 3 "keine_Anzeige_Anf" 0 "hohe_Prio" 2 "niedrige_Prio" ; -VAL_ 1386 ACA_gemZeitl 6 "Zeitluecke6" 2 "Zeitluecke2" 7 "Zeitluecke7" 13 "Zeitluecke13" 11 "Zeitluecke11" 4 "Zeitluecke4" 8 "Zeitluecke8" 12 "Zeitluecke12" 10 "Zeitluecke10" 0 "Kein_Objekt_erfasst" 1 "Zeitluecke1" 3 "Zeitluecke3" 9 "Zeitluecke9" 15 "Zeitluecke15" 14 "Zeitluecke14" 5 "Zeitluecke5" ; -VAL_ 1386 ACA_ACC_Verz 0 "ACC_verzoegert_nicht" 1 "ACC_verzoegert" ; -VAL_ 1386 ACA_StaGRA 3 "GRA_aktiv" 4 "GRA_uebertreten" 2 "GRA_passiv" 0 "Hauptschalter_aus" 6 "frei" 7 "GRA_Fehler" 1 "Reserve" 5 "frei" ; -VAL_ 1386 ACA_ID_StaGRA 0 "keine_Anzeige" ; -VAL_ 1386 ACA_Codierung 0 "ACC" 1 "GRA" ; -VAL_ 1386 ACA_Tachokranz 0 "nicht_beleuchtet" 1 "beleuchtet" ; -VAL_ 1386 ACA_Aend_Zeitluecke 1 "Anzeige_angef" 0 "keine_Anzeige" ; - -VAL_ 1472 EP1_Fehler_Sta 0 "volle_Funktion" 1 "linke_Seite_fehlerhaft" 2 "rechte_Seite_fehlerhaft" 3 "beide_Seiten_fehlerhaft"; -VAL_ 1472 EP1_Sta_EPB 0 "Bremse_geoeffnet" 1 "Bremse_geschlossen"; -VAL_ 1472 EP1_Sta_Schalter 0 "volle_Funktion" 1 "Schalter_ausser_Funktion"; -VAL_ 1472 EP1_Spannkraft 31 "Fehler"; -VAL_ 1472 EP1_Schalterinfo 0 "keine_Fahreranforderung" 1 "Fahreranforderung_oeffnen" 2 "Fahreranforderung_schliessen" 3 "Schalterfehler"; -VAL_ 1472 EP1_Sta_NWS 0 "volle_Funktion" 1 "keine_Funktion"; -VAL_ 1472 EP1_Fehlereintr 0 "kein_Fehlerspeichereintrag" 1 "Fehlerspeichereintrag"; -VAL_ 1472 EP1_Freigabe_Ver 0 "Verzoegerungsanf_nicht_freigegeb" 1 "Verzoegerungsanf_freigegeben"; -VAL_ 1472 EP1_AutoHold_zul 0 "Pers_nicht_zulaessig" 1 "Pers_zulaessig"; -VAL_ 1472 EP1_AutoHold_aktiv 0 "nein" 1 "ja"; -VAL_ 1472 EP1_SleepInd 0 "CAN_wird_benoetigt" 1 "Sleep_bereit"; -VAL_ 1472 EP1_Status_Kl_15 0 "Kl_15_aus" 1 "Kl_15_ein"; -VAL_ 1472 EP1_Lampe_AutoP 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1_Bremslicht 0 "Aus" 1 "Ein"; -VAL_ 1472 EP1_Warnton1 0 "Aus" 1 "Ein"; -VAL_ 1472 EP1_Warnton2 0 "Aus" 1 "Ein"; -VAL_ 1472 EP1_AnfShLock 0 "Aus" 1 "Ein"; -VAL_ 1472 EPB_Autoholdlampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1_QualNeigWi 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1472 EP1_KuppModBer 0 "Kuppsensor_aus_Modbereich" 1 "Kupplsensor_im_Modbereich" 2 "Sensorsignal_ungenau" 3 "Sensor_defekt"; -VAL_ 1472 EP1_HydrHalten 0 "Fzg_nicht_hydr_geh" 1 "Fzg_hydr_geh"; -VAL_ 1472 EP1_Fkt_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1_Warnton 0 "Warnton_aus" 1 "Warnton_an"; -VAL_ 1472 EP1_Fehler_BKL 0 "BKL_aus" 1 "BKL_an"; -VAL_ 1472 EP1_Fehler_gelb 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1__Text 0 "kein_Text" 1 "Text_1" 2 "Text_2" 3 "Text_3" 4 "Text_4" 5 "Text_5" 6 "reserviert" 7 "reserviert" 8 "Text_8"; diff --git a/opendbc_repo/opendbc/dbc/vw_meb.dbc b/opendbc_repo/opendbc/dbc/vw_meb.dbc deleted file mode 100644 index 98125aaa69..0000000000 --- a/opendbc_repo/opendbc/dbc/vw_meb.dbc +++ /dev/null @@ -1,3408 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: BAP_Tester BedienDisp_vo BedienSG_hi CGS DDA Gateway Gateway_PAG GurtMikrofon OTA_FC ZR_High ZR_LIMU ZR_MIB_TOP_ab_Gen3 ZR_Standard - - -BO_ 64 Airbag_01: 8 Gateway - SG_ Airbag_01_CRC : 0|8@1+ (1,0) [0|255] "" AWC,BMC_MLBevo,BMS_NV,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,DCDC_IHEV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,Sub_Gateway - SG_ Airbag_01_BZ : 8|4@1+ (1,0) [0|15] "" AWC,BMC_MLBevo,BMS_NV,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,DCDC_IHEV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,Sub_Gateway - SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" FCU_MLBevo_FCEV,Sub_Gateway,TME - SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway,TME - SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Deaktivierung_HV : 42|3@1+ (1,0) [0|7] "" AWC,BMC_MLBevo,BMS_NV,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,DCDC_IHEV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,Sub_Gateway,TME - SG_ AB_EDR_Trigger : 45|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ AB_Belegung_VF : 47|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ SC_Masterzeit_Offset : 53|2@1+ (5.08,0) [0|15.24] "Unit_Secon" FCU_MLBevo_FCEV,Sub_Gateway - SG_ SC_LowSpeedCrashErkannt : 55|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway - SG_ SC_Masterzeit : 57|7@1+ (0.04,0) [0|5.04] "Unit_Secon" FCU_MLBevo_FCEV,Sub_Gateway - -BO_ 134 LWI_01: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" ZR_High - SG_ LWI_MFL_Abschaltung : 14|1@1+ (1,0) [0|1] "" ZR_High - SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ LWI_Lenkradwinkel : 16|13@1+ (0.0843,0) [0|800] "Unit_DegreOfArc" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" OTA_FC,ZR_High - SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 159 LH_EPS_03: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX - SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX - SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 167 Motor_11: 8 Motor_Diesel_MQB - SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB - SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 168 Motor_12: 8 Motor_Diesel_MQB - SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - -BO_ 173 Getriebe_11: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "" Vector__XXX - SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "" Vector__XXX - SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" Vector__XXX - SG_ GE_Fahrstufe : 42|4@1+ (1,0) [0|15] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ GE_reserv_Fahrstufe : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GE_Schaltablauf : 47|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ GE_Uefkt_unplausibel : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GE_MMom_Status_02 : 50|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ GE_Status_Kraftschluss : 53|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" OTA_FC,ZR_High - -BO_ 184 EM1_HYB_13: 8 Gateway - SG_ EM1_Freigabe_Info_WFS : 12|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_Sperr_Info_WFS : 13|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_AR_aktiv : 14|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_Eta_Sys : 15|9@1+ (0.2,0) [0|101.8] "Unit_PerCent" Sub_Gateway - SG_ EM1_IstStrom : 24|11@1+ (1,-1023) [-1023|1022] "Unit_Amper" Sub_Gateway - SG_ EM1_Fehler_ElAntriebFreilauf_Anf : 35|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_Abregelung_Temperatur : 36|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_AnlernenElMotor_Anf : 43|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_Moment_HVVerbraucher : 44|10@1+ (1,-511) [-511|511] "Unit_NewtoMeter" Sub_Gateway - SG_ EM1_Freigabe_Verfallsinfo_WFS : 55|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ EM1_Parken_WFS_Status : 56|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ EM1_HV_betriebsbereit : 58|1@1+ (1,0) [0|1] "" Sub_Gateway - -BO_ 190 MEB_HVEM_01: 48 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Engine_RPM_Max : 12|14@1+ (2,-9658) [0|15] "RPM" XXX - SG_ Engine_RPM_Min : 26|14@1+ (2,-10300) [0|63] "RPM" XXX - SG_ In_Motion_04 : 48|3@1+ (1,0) [0|7] "" XXX - SG_ In_Motion_03 : 52|1@0+ (1,0) [0|1] "" XXX - SG_ In_Motion_02 : 54|1@0+ (1,0) [0|1] "" XXX - SG_ Engine_Power : 56|12@1+ (0.5,-1023) [0|255] "kW" XXX - SG_ In_Motion : 68|1@1+ (1,0) [0|3] "" XXX - SG_ Standstill : 71|1@0+ (1,0) [0|1] "" XXX - SG_ Unknown_04 : 72|10@1+ (1,0) [0|255] "" XXX - SG_ Battery_Voltage : 86|12@1+ (0.2,0) [0|3] "Volt" XXX - SG_ Unknown_01 : 100|9@1+ (1,0) [0|7] "" XXX - SG_ Battery_Voltage_02 : 113|11@1+ (0.24,0) [0|127] "Volt" XXX - SG_ Engine_Status : 296|2@1+ (1,0) [0|3] "" XXX - SG_ Inactive : 300|1@0+ (1,0) [0|1] "" XXX - SG_ Inactive_02 : 303|1@0+ (1,0) [0|1] "" XXX - -BO_ 192 EM1_01: 32 XXX - SG_ Schubbetrieb : 79|1@0+ (1,0) [0|1] "" XXX - -BO_ 219 AWV_03: 48 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ FCW_Active : 64|1@0+ (1,0) [0|1] "" XXX - SG_ Pre_Brake_Fill : 76|1@0+ (1,0) [0|1] "" XXX - -BO_ 247 MEB_HVEM_02: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_3 : 44|10@1+ (1,0) [0|7] "" XXX - SG_ NEW_SIGNAL_2 : 54|7@1+ (1,0) [0|3] "" XXX - -BO_ 252 ESC_51: 48 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ AEB_Breaking_01 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ AEB_Breaking_02 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ Accelerator_Higher_Speed : 40|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_Pressure : 42|9@1+ (0.195,0) [0|100] "Unit_Percent" XXX - SG_ HL_Radgeschw : 64|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX - SG_ HR_Radgeschw : 80|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX - SG_ VL_Radgeschw : 96|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX - SG_ VR_Radgeschw : 112|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX - SG_ HL_Brake_Pressure : 152|8@1+ (1,0) [0|100] "" XXX - SG_ HR_Brake_Pressure : 160|8@1+ (1,0) [0|100] "" XXX - SG_ VL_Brake_Pressure : 168|8@1+ (1,0) [0|100] "" XXX - SG_ VR_Brake_Pressure : 176|8@1+ (1,0) [0|100] "" XXX - SG_ Steering_Wheel_CW : 184|8@1+ (1.67,0) [0|255] "" XXX - SG_ Steering_Wheel_CCW : 192|8@1+ (1.67,0) [0|255] "" XXX - -BO_ 253 ESP_21: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "" Vector__XXX - SG_ ESP_Diagnose : 23|1@1+ (1,0) [0|1] "" ZR_High - SG_ ESC_v_Signal_Qualifier_High_Low : 24|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ ESP_Vorsteuerung : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ OBD_Schlechtweg : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ OBD_QBit_Schlechtweg : 31|1@1+ (1,0) [0|1] "" ZR_High - SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0|655.32] "Unit_KiloMeterPerHour" BedienSG_hi,DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ASR_Tastung_passiv : 48|1@1+ (1,0) [0|1] "" OTA_FC - SG_ ESP_Tastung_passiv : 49|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ ESP_Systemstatus : 50|1@1+ (1,0) [0|1] "" OTA_FC - SG_ ASR_Schalteingriff : 51|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_QBit_v_Signal : 55|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ABS_Bremsung : 56|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ ASR_Anf : 57|1@1+ (1,0) [0|1] "" ZR_High - SG_ MSR_Anf : 58|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ EBV_Eingriff : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EDS_Eingriff : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingriff : 61|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ ESP_ASP : 62|1@1+ (1,0) [0|1] "" ZR_High - SG_ ESC_Neutralschaltung : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 258 ESC_50: 48 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Lateral_Accel : 16|8@1+ (0.15,-18.9) [0|255] "Unit_MeterPerSquareSecond" XXX - SG_ Longitudinal_Accel : 24|10@1+ (0.03125,-16) [0|255] "Unit_MeterPerSquareSecond" XXX - SG_ Yaw_Rate : 40|14@1+ (0.01,0) [0|16383] "Unit_DegreePerSecond" XXX - SG_ Yaw_Rate_Sign : 54|1@0+ (1,0) [0|1] "" XXX - SG_ Regen_Braking : 123|1@1+ (1,0) [0|7] "" XXX - SG_ Standstill : 171|1@0+ (1,0) [0|1] "" XXX - SG_ Longitudinal_Speed : 181|10@1+ (0.25,0) [0|255] "Unit_KilometerPerHour" XXX - -BO_ 261 VMM_01: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 13|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 40|2@1+ (1,0) [0|3] "" XXX - SG_ Brake : 53|7@1+ (1,0) [0|3] "" XXX - -BO_ 267 Motor_51: 32 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Accel_Pedal_Pressure : 12|9@1+ (0.4,0) [0|255] "" XXX - SG_ Accel_Low_Pressed_Support : 21|1@1+ (1,0) [0|7] "" XXX - SG_ TSK_Status : 88|3@1+ (1,0) [0|7] "" XXX - SG_ TSK_Limiter_ausgewaehlt : 95|1@1+ (1,0) [0|3] "" XXX - -BO_ 278 ESP_10: 8 Gateway_MQB - SG_ ESP_10_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_10_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 285 LH_EPS_02: 8 Gateway_D4C7 - SG_ EPS_02_CRC : 0|8@1+ (1,0) [0|255] "" SCU_D4 - SG_ EPS_02_BZ : 8|4@1+ (1,0) [0|15] "" SCU_D4 - SG_ EPS_Notlauf : 12|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ EPS_Lastinfo : 16|8@1+ (1,0) [0|253] "Unit_Amper" Vector__XXX - SG_ EPS_Unterstuetzungsleistung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" SCU_D4 - SG_ EPS_Drehzahlreserve : 32|7@1+ (10,0) [0|1000] "Unit_DegreOfArcPerSecon" SCU_D4 - SG_ EPS_VZ_Drehzahlreserve : 39|1@1+ (1,0) [0|1] "" SCU_D4 - SG_ EPS_Leistungsanforderung : 40|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 294 HCA_01: 8 Frontsensorik - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [18|30] "Unit_Hertz" Vector__XXX - SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX - SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar - SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ HCA_01_Enable : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Available : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Standby : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Request : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX - SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar - -BO_ 299 GRA_ACC_01: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" ZR_High - SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" ZR_High - SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_LIM_Taste_verfuegbar : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_Tip_Stufe_2 : 26|1@1+ (1,0) [0|1] "" ZR_High - SG_ GRA_ButtonTypeInfo : 27|3@1+ (1,0) [0|7] "" ZR_High - SG_ GRA_TravelAssist : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GRA_reserveByte4 : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GRA_reserveByte5 : 32|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ GRA_reserveByte6 : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ GRA_reserveByte7 : 48|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ GRA_reserveByte8 : 56|8@1+ (1,0) [0|255] "" Vector__XXX - -BO_ 312 IPA_01: 32 XXX - -BO_ 313 VMM_02: 32 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Brake_Pressed_1 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_Pressed_2 : 27|1@0+ (1,0) [0|1] "" XXX - SG_ AEB_Active : 31|1@0+ (1,0) [0|1] "" XXX - SG_ ESP_Hold : 35|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_Pressed_3 : 48|1@0+ (1,0) [0|1] "" XXX - SG_ FCW_Active : 56|1@1+ (1,0) [0|1] "" XXX - SG_ Brake_Pressure : 76|11@1+ (1,0) [0|100] "" XXX - -BO_ 317 QFK_01: 32 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_5 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_9 : 14|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_8 : 16|1@0+ (1,0) [0|1] "" XXX - SG_ LatCon_HCA_Accept : 17|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_2 : 19|1@0+ (1,0) [0|1] "" XXX - SG_ LatCon_HCA_Status : 20|3@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 23|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_10 : 24|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 30|3@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_7 : 34|3@0+ (1,0) [0|1] "" XXX - SG_ Steering_Angle_VZ : 36|1@0+ (1,0) [0|1] "" XXX - SG_ Curvature : 40|15@1+ (6.7e-06,0) [0|65535] "" XXX - SG_ Curvature_VZ : 55|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 56|7@1+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_4 : 63|1@0+ (1,0) [0|1] "" XXX - SG_ Steering_Angle : 76|17@1+ (0.00906,0) [0|32767] "" XXX - -BO_ 319 PreCrash_02: 8 Gateway - SG_ PreCrash_02_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ PreCrash_02_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PreCrash_Charisma_FahrPr : 12|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PreCrash_Charisma_Status : 16|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ PreCrash_Schiebedach_schliessen : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PreCrash_Fenster_schliessen : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PreCrash_Blinken : 20|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ SC_PreSense_FCWP : 23|1@1+ (1,0) [0|1] "" NightVision - SG_ PreCrash_Tueren_Verriegeln : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PreCrash_Anforderung_AFR : 26|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ SC_PreCrash_LED : 29|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ PreCrash_FS_Pneumatik_ansteuern : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PreCrash_BFS_Pneumatik_ansteuern : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PreCrash_Fo_Pneumatik_ansteuern : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PreCrash_FS_Sitzlehne_verfahren : 34|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ PreCrash_BFS_Sitzlehne_verfahren : 37|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ PreCrash_Fo_Sitzlehne_verfahren : 40|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ PreCrash_FS_KSV_verfahren : 43|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PreCrash_BFS_KSV_verfahren : 47|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PreCrash_Fo_KSV_verfahren : 51|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ SC_PreCrash_Warnung : 56|4@1+ (1,0) [0|15] "" NightVision - SG_ SC_PreCrash_Texte : 60|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 332 Motor_54: 32 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Accelerator_Pressure : 175|8@0+ (0.391,-14.467) [0|100] "Unit_Percent" XXX - -BO_ 333 ACC_18: 32 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_DynErhoehung : 14|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anhalteweg : 64|11@1+ (0.01,0) [0|2046] "" XXX - SG_ ACC_Anforderung_HMS : 77|3@1+ (1,0) [0|7] "" XXX - SG_ SET_ME_0XFE : 80|8@1+ (1,0) [0|255] "" XXX - SG_ ACC_AKTIV_regelt : 90|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_0X1 : 92|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_0X9 : 232|4@1+ (1,0) [0|15] "" XXX - SG_ Speed : 236|11@1+ (0.1,0) [0|15] "" XXX - SG_ Accel_Boost : 248|6@1+ (1,0) [0|3] "" XXX - SG_ Reversing : 254|1@0+ (1,0) [0|1] "" XXX - -BO_ 339 MSG_HYB_30: 8 Gateway - SG_ MSG_HYB_30_CRC : 0|8@1+ (1,0) [0|255] "" Ladegeraet_Konzern - SG_ MSG_HYB_30_BZ : 8|4@1+ (1,0) [0|15] "" Ladegeraet_Konzern - SG_ MO_HVEM_Eskalation : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_ErwGrenzen_Anf : 13|1@1+ (1,0) [0|1] "" BMC_MLBevo - SG_ MO_Fehler_Notentladung_Anf : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_HVEM_MaxLeistung : 15|9@1+ (50,0) [0|25450] "Unit_Watt" Vector__XXX - SG_ MO_HVK_EmIstzustand : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ MO_HVK_AntriebFehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_MVK_Bordnetz_Anf : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_HVK_AntriebZustand : 41|3@1+ (1,0) [0|7] "" TME - SG_ MO_HVK_EmFehlerstatus : 44|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_MVK_AntriebFehlerstatus : 47|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_MVK_AntriebZustand : 50|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_MVK_EmFehlerstatus : 53|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_MVK_EmIstzustand : 56|8@1+ (1,0) [0|255] "" Vector__XXX - -BO_ 387 MEB_Camera_01: 64 XXX - SG_ NEW_SIGNAL_1 : 191|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 200|9@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 209|9@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_9 : 218|6@1+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_10 : 224|8@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_4 : 232|9@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_5 : 241|9@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_8 : 250|6@1+ (1,0) [0|63] "" XXX - SG_ Lane_Center_Offset : 256|12@1+ (0.001,-2.5) [0|255] "Unit_Meter" XXX - SG_ NEW_SIGNAL_6 : 268|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_7 : 280|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_11 : 292|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_12 : 304|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_13 : 320|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_14 : 332|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_15 : 344|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_16 : 356|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_17 : 368|10@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_18 : 384|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_19 : 396|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_20 : 408|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_21 : 420|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_22 : 432|5@1+ (1,0) [0|31] "" XXX - SG_ NEW_SIGNAL_23 : 448|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_24 : 460|12@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_25 : 472|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_26 : 484|12@1+ (1,0) [0|15] "" XXX - -BO_ 420 EA_01: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ EA_Parken_beibehalten_HMS : 12|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EA_Warnruckprofil : 28|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EA_eCall_Anf : 31|2@1+ (1,0) [0|3] "" ZR_High - SG_ EA_Funktionsstatus : 40|4@1+ (1,0) [0|15] "" ZR_High - SG_ EA_Gurtstraffer_Anf : 44|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EA_Anforderung_HMS : 48|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EA_Sollbeschleunigung : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" Vector__XXX - -BO_ 496 EA_02: 8 Gateway - SG_ EA_02_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ EA_02_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ EA_Texte : 12|4@1+ (1,0) [0|15] "" ZR_High - SG_ ACF_Lampe_Hands_Off : 16|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EA_Infotainment_Anf : 22|2@1+ (1,0) [0|3] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ EA_Tueren_Anf : 24|1@1+ (1,0) [0|1] "" ZR_High - SG_ EA_Innenraumlicht_Anf : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ zFAS_Warnblinken : 26|2@1+ (1,0) [0|3] "" ZR_High - SG_ STP_Primaeranz : 28|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EA_Bremslichtblinken : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EA_Blinken : 32|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EA_Unknown : 60|3@0+ (1,0) [0|7] "" XXX - -BO_ 517 SAM_01: 8 XXX - SG_ Brake_Light : 36|1@0+ (1,0) [0|1] "" XXX - SG_ Left_Blinker : 37|1@0+ (1,0) [0|1] "" XXX - SG_ Right_Blinker : 38|1@0+ (1,0) [0|1] "" XXX - -BO_ 518 Parken_01: 24 XXX - SG_ CHK : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX - SG_ AEB_Active : 16|1@0+ (1,0) [0|1] "" XXX - -BO_ 522 EML_06: 64 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Yaw_Rate_VZ : 33|1@1+ (1,0) [0|1] "" XXX - SG_ Yaw_Rate : 200|16@1+ (0.007,-229.34) [0|255] "" XXX - -BO_ 564 MEB_Camera_02: 64 XXX - SG_ NEW_SIGNAL_1 : 12|6@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_2 : 18|6@1+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_3 : 24|6@1+ (1,0) [0|63] "" XXX - SG_ NEW_SIGNAL_4 : 30|6@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_7 : 178|13@1+ (1,0) [0|127] "" XXX - SG_ NEW_SIGNAL_6 : 192|12@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_8 : 286|9@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_5 : 295|9@1+ (1,0) [0|255] "" XXX - -BO_ 588 MEB_Side_Assist_01: 16 XXX - SG_ Blind_Spot_Right : 12|7@1+ (1,0) [0|15] "" XXX - SG_ Blind_Spot_Left : 19|7@1+ (1,0) [0|15] "" XXX - SG_ Blind_Spot_Info_Right : 26|1@0+ (1,0) [0|1] "" XXX - SG_ Blind_Spot_Warn_Right : 27|1@0+ (1,0) [0|1] "" XXX - SG_ Blind_Spot_Info_Left : 29|1@0+ (1,0) [0|1] "" XXX - SG_ Blind_Spot_Warn_Left : 30|1@0+ (1,0) [0|1] "" XXX - SG_ Lower_Speed_01 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ Higher_Speed_01 : 33|1@0+ (1,0) [0|1] "" XXX - SG_ Higher_Speed_02 : 83|1@0+ (1,0) [0|1] "" XXX - SG_ Lower_Speed_02 : 84|1@0+ (1,0) [0|1] "" XXX - SG_ Standstill : 86|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 98|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_6 : 119|1@0+ (1,0) [0|1] "" XXX - -BO_ 589 MEB_Side_Assist_02: 64 XXX - SG_ Unknown_01 : 100|3@0+ (1,0) [0|7] "" XXX - SG_ Unknown_02 : 108|3@0+ (1,0) [0|7] "" XXX - -BO_ 591 MEB_Distance_01: 64 XXX - SG_ Unknown_01 : 12|1@0+ (1,0) [0|1] "" XXX - SG_ Distance_Status : 13|2@1+ (1,0) [0|3] "" XXX - SG_ Same_Lane_01_ObjectID : 16|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX - SG_ Left_Lane_01_ObjectID : 22|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX - SG_ Right_Lane_01_ObjectID : 28|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX - SG_ Same_Lane_02_ObjectID : 34|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX - SG_ Left_Lane_02_ObjectID : 40|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX - SG_ Right_Lane_02_ObjectID : 46|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX - SG_ Unknown_02 : 52|2@1+ (1,0) [0|3] "" XXX - SG_ Unknown_03 : 54|10@1+ (1,0) [0|3] "" XXX - SG_ Same_Lane_01_Long_Distance : 64|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX - SG_ Same_Lane_01_Lat_Distance : 76|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX - SG_ Same_Lane_01_Rel_Velo : 86|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX - SG_ Left_Lane_01_Long_Distance : 96|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX - SG_ Left_Lane_01_Lat_Distance : 108|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX - SG_ Left_Lane_01_Rel_Velo : 118|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX - SG_ Right_Lane_01_Long_Distance : 128|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX - SG_ Right_Lane_01_Lat_Distance : 140|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX - SG_ Right_Lane_01_Rel_Velo : 150|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX - SG_ Same_Lane_02_Long_Distance : 160|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX - SG_ Same_Lane_02_Lat_Distance : 172|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX - SG_ Same_Lane_02_Rel_Velo : 182|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX - SG_ Left_Lane_02_Long_Distance : 192|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX - SG_ Left_Lane_02_Lat_Distance : 204|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX - SG_ Left_Lane_02_Rel_Velo : 214|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX - SG_ Right_Lane_02_Long_Distance : 224|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX - SG_ Right_Lane_02_Lat_Distance : 236|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX - SG_ Right_Lane_02_Rel_Velo : 246|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX - SG_ Unknown_04 : 256|8@1+ (1,-128) [0|31] "" XXX - SG_ Unknown_05 : 264|6@1+ (1,-15) [0|31] "" XXX - SG_ Unknown_06 : 270|6@1+ (1,0) [0|127] "" XXX - SG_ Unknown_07 : 277|6@1+ (1,0) [0|7] "" XXX - SG_ Unknown_08 : 284|6@1+ (1,0) [0|1] "" XXX - -BO_ 605 KLR_01: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ KLR_Fehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KLR_ResponseError : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KLR_Lokalaktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KLR_Fehler_Codierung : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KLR_Touchintensitaet_1 : 16|8@1+ (1,0) [0|250] "Unit_None" Vector__XXX - SG_ KLR_Touchintensitaet_2 : 24|8@1+ (1,0) [0|250] "Unit_None" Vector__XXX - SG_ KLR_Touchintensitaet_3 : 32|8@1+ (1,0) [0|250] "Unit_None" Vector__XXX - SG_ KLR_Touchauswertung : 40|4@1+ (1,0) [0|15] "" ZR_High - -BO_ 619 TA_01: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Travel_Assist_Status : 13|3@1+ (1,0) [0|3] "" XXX - SG_ Travel_Assist_Request : 19|3@1+ (1,0) [0|7] "" XXX - SG_ Travel_Assist_Available : 23|1@1+ (1,0) [0|1] "" XXX - -BO_ 695 RCTA_01: 8 XXX - SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 706 Motor_41: 8 Gateway - SG_ MO_Anzeige_StSt_Text : 12|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MO_Anzeige_StSt_Symbol : 16|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_ADR_Status : 19|2@1+ (1,0) [0|3] "" ZR_High - SG_ MO_AGA_Sound_Texte : 21|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_Anzeige_FMAus_Text : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Fehler_MSpG : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PEA_Texte : 25|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_Ueberstimmt_vMax_FahrerInfo : 28|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_Avus_Motorschutz : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_Rekuperationsstufe : 32|3@1+ (1,0) [0|7] "" OTA_FC - SG_ TSK_Einheit_vMax_FahrerInfo : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_Status_vMax_FahrerInfo : 36|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_Red_Fahrleistung : 38|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_Anz_Kuehlerluefter : 47|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_im_Leerlauf : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Enable_Oeldr_Motor : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_OelMessung_Dauer : 52|4@1+ (15,15) [15|225] "Unit_Secon" Vector__XXX - SG_ TSK_vMax_FahrerInfo : 56|8@1+ (1,15) [16|270] "" Vector__XXX - -BO_ 768 MEB_ACC_01: 48 XXX - SG_ ACC_Tempolimit : 64|5@1+ (1,0) [0|31] "" OTA_FC - SG_ ACC_Wunschgeschw_Farbe : 69|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ACC_Warnung_Verkehrszeichen_1 : 70|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ACA_Querfuehrung : 71|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ Unknown_02 : 73|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Regelung_AIO : 75|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ ACC_Wunschgeschw_02 : 76|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Vector__XXX - SG_ ACC_Abstandsindex_02 : 86|10@1+ (1,0) [1|1021] "" Vector__XXX - SG_ ACC_Display_Prio : 96|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ACC_rel_Objekt_Zusatzanz : 98|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ACC_Gesetzte_Zeitluecke : 101|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ ACC_Optischer_Fahrerhinweis : 104|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ACC_Warnhinweis : 105|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ACC_EGO_Fahrzeug : 106|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ ACC_Relevantes_Objekt_02 : 109|2@1+ (1,0) [0|3] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ ACC_Wunschgeschw_erreicht : 112|1@1+ (1,0) [0|1] "" OTA_FC - SG_ ACC_Anzeige_Zeitluecke : 113|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ACC_Texte_Primaeranz_02 : 114|6@1+ (1,0) [0|63] "" Vector__XXX - SG_ ACC_Texte_Zusatzanz_02 : 120|6@1+ (1,0) [0|63] "" Vector__XXX - SG_ STA_Primaeranz : 126|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ SET_ME_0X3FF : 140|10@1+ (1,0) [0|15] "" XXX - SG_ Heartbeat : 150|9@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0XFFFF : 160|16@1+ (1,0) [0|65535] "" XXX - SG_ ACC_Enabled : 186|1@0+ (1,0) [0|1] "" XXX - SG_ Zeitluecke_Farbe : 189|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_0X1 : 199|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Status_ACC : 208|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Akustischer_Fahrerhinweis : 211|2@1+ (1,0) [0|1] "" XXX - SG_ Unknown_08 : 224|1@0+ (1,0) [0|1] "" XXX - SG_ Unknown_01 : 225|1@0+ (1,0) [0|1] "" XXX - SG_ Unknown_06 : 226|1@0+ (1,0) [0|1] "" XXX - SG_ Unknown_07 : 228|1@0+ (1,0) [0|1] "" XXX - SG_ SET_ME_0X7FFF : 240|16@1+ (1,0) [0|65535] "" XXX - SG_ Unknown_09 : 262|1@0+ (1,0) [0|3] "" XXX - SG_ Lead_Type_Detected : 265|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Standby_Override : 266|1@0+ (1,0) [0|1] "" XXX - SG_ Street_Color : 267|1@0+ (1,0) [0|1] "" XXX - SG_ ACC_Limiter_Mode : 268|1@0+ (1,0) [0|1] "" XXX - SG_ Lead_Brightness : 269|4@1+ (1,0) [0|7] "" XXX - SG_ SET_ME_0X6A : 273|8@1+ (1,0) [0|7] "" XXX - SG_ Lead_Type : 287|3@1+ (1,0) [0|3] "" XXX - SG_ Lead_Distance : 290|10@1+ (0.2,0) [0|7] "Unit_Meter" XXX - SG_ ACC_Events : 332|4@0+ (1,0) [0|3] "Unit_Meter" XXX - SG_ Zeitluecke_1 : 334|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX - SG_ Zeitluecke_2 : 344|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX - SG_ Zeitluecke_3 : 354|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX - SG_ Zeitluecke_4 : 364|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX - SG_ Zeitluecke_5 : 374|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX - -BO_ 771 HCA_03: 24 XXX - SG_ RequestStatus : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Power : 16|8@1+ (0.4,0) [0.0|100.0] "percent" XXX - SG_ Curvature : 24|15@1+ (6.7e-06,0) [0|0.219] "Unit_rad/m" XXX - SG_ Curvature_VZ : 39|1@1+ (1,0) [0|1] "" XXX - SG_ Unknown_01 : 53|1@0+ (1,0) [0|1] "" XXX - SG_ Vibration : 56|1@0+ (1,0) [0|1] "" XXX - SG_ HighSendRate : 66|1@1+ (1,0) [0|1] "" XXX - -BO_ 792 MEB_Camera_03: 8 XXX - -BO_ 795 ESP_24: 8 Gateway - SG_ ESP_Lampe : 12|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ABS_Lampe : 13|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ BK_Lampe_02 : 14|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ TC_Lampe : 16|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ESP_m_Raddrehz : 17|15@1+ (0.002,0) [0|65.278] "Unit_Hertz" Sub_Gateway - SG_ ESP_Textanzeigen_03 : 32|5@1+ (1,0) [0|31] "" Sub_Gateway - SG_ ESP_Meldungen : 37|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ ESP_Wegimp_VA : 40|11@1+ (1,0) [0|2047] "" Sub_Gateway - SG_ ESP_Fehlerstatus_Wegimp : 51|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ESP_Wegimp_Ueberlauf : 52|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ESP_QBit_Wegimp_VA : 53|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ESP_HDC_Geschw_Farbe : 54|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ESP_Off_Lampe : 55|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ ESP_HDC_Regelgeschw : 56|7@1+ (0.32,0) [0.32|39.68] "Unit_KiloMeterPerHour" Sub_Gateway - SG_ ESP_BKV_Warnung : 63|1@1+ (1,0) [0|1] "" Sub_Gateway - -BO_ 817 MFL_01: 8 Gateway - SG_ MFL_Zaehler : 0|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Toggle : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MFL_Lokalaktiv : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MFL_M_Taste : 6|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Paddle_Verbau : 7|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Tastencode_1 : 8|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ MFL_Tastencode_2 : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ MFL_Eventcode_1 : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Eventcode_2 : 28|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Marke : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Variante : 36|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Dummy_0_Signal_1 : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ MFL_Tip_Down : 48|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Tip_Up : 49|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_SatModul_links_Err : 50|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_SatModul_rechts_Err : 51|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Dummy_0_Signal_2 : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MFL_Dummy_0_Signal_3 : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MFL_LR_HZG_Status : 54|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_LR_HZG_Err : 55|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Signalhorn : 56|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ MFL_Signalhorn_Err : 57|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Tip_links_Err : 58|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Tip_rechts_Err : 59|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Taste_links_Err : 60|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Taste_rechts_Err : 61|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_ECU_Err : 62|1@1+ (1,0) [0|1] "" ZR_High - SG_ MFL_Response_Err : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 850 Parken_SM_03: 8 Gateway - SG_ Parken_SM_03_MUX M : 0|3@1+ (1,0) [0|7] "" DDA - SG_ Parken_SM_03_Traj_Trans_ID_00 m0 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P1_Pos_X m0 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P1_Pos_Y m0 : 20|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P1_Tangent m0 : 33|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_Traj_P2_Pos_X m0 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_SM_03_Traj_Trans_ID_01 m1 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P2_Pos_Y m1 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P2_Tangent m1 : 20|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_Traj_P3_Pos_X m1 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P3_Pos_Y m1 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_SM_03_Traj_Trans_ID_02 m2 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P3_Tangent m2 : 7|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_Traj_P4_Pos_X m2 : 17|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P4_Pos_Y m2 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P4_Tangent m2 : 43|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_SM_03_Traj_Trans_ID_03 m3 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P5_Pos_X m3 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P5_Pos_Y m3 : 20|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P5_Tangent m3 : 33|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_Traj_P6_Pos_X m3 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_SM_03_Traj_Trans_ID_04 m4 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P6_Pos_Y m4 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P6_Tangent m4 : 20|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_Traj_P7_Pos_X m4 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P7_Pos_Y m4 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_SM_03_Traj_Trans_ID_05 m5 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P7_Tangent m5 : 7|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_Traj_P8_Pos_X m5 : 17|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P8_Pos_Y m5 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P8_Tangent m5 : 43|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - SG_ Parken_SM_03_Traj_Trans_ID_06 m6 : 3|4@1+ (1,0) [0|15] "" DDA - SG_ Parken_Traj_P9_Pos_X m6 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P9_Pos_Y m6 : 20|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA - SG_ Parken_Traj_P9_Tangent m6 : 33|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA - -BO_ 869 NVEM_05: 8 Gateway - SG_ NVEM_05_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NVEM_05_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ NVEM_Pilot_Info : 12|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ NVEM_P_Generator_Status : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Vector__XXX - SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Vector__XXX - SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" DCDC_800V_PAG,DCDC_IHEV - SG_ BEM_Hybrid_Info : 44|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ NVEM_Red_KL : 46|2@1+ (1,0) [0|3] "" TME - SG_ NVEM_Freilauf_Info : 48|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" DCDC_800V_PAG,DCDC_HV,LE_MLBevo - SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Vector__XXX - -BO_ 870 Blinkmodi_02: 8 Gateway - SG_ BM_ZV_auf : 12|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_ZV_zu : 13|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_DWA_ein : 14|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_DWA_Alarm : 15|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Crash : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Panik : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Not_Bremsung : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_GDO : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BM_Warnblinken : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Taxi_Notalarm : 21|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Telematik : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_links : 23|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_rechts : 24|1@1+ (1,0) [0|1] "" ZR_High - SG_ Blinken_li_Fzg_Takt : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ Blinken_re_Fzg_Takt : 26|1@1+ (1,0) [0|1] "" ZR_High - SG_ Blinken_li_Kombi_Takt : 27|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ Blinken_re_Kombi_Takt : 28|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ BM_NBA_n_codiert_n_aktiv : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BM_NBA_Status : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BM_WBT_Beleuchtung : 32|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_HD_Oeffnung_angelernt : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BM_Autobahn : 34|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ BM_Rollenmodus_Blinken : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BM_Recas : 36|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Wischblinken : 37|1@1+ (1,0) [0|1] "" ZR_High - SG_ BM_Telematik_Abbruchgrund : 38|6@1+ (1,0) [0|63] "" Vector__XXX - SG_ BM_PiloPa : 44|1@1+ (1,0) [0|1] "" ZR_High - SG_ DWA_Alarmquelle : 59|5@1+ (1,0) [0|31] "" ZR_High - -BO_ 888 GNSS_04: 8 Gateway - SG_ GNSS_Nachrichtenpaket_ID4 : 0|2@1+ (1,0) [0|3] "Unit_Bit" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Ortung_Zeit_in_GPSWoche : 2|30@1+ (1,0) [0|604800001] "Unit_MilliSecon" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Ortung_Hoehe : 32|12@1+ (2,-500) [-500|7686] "Unit_Meter" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - -BO_ 891 GNSS_05: 8 Gateway - SG_ GNSS_UTC_Zeit : 0|32@1+ (1,0) [1|4294967295] "Unit_Secon" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Empfaenger_Status : 32|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_GPS_in_Nutzung : 33|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_GLONASS_in_Nutzung : 34|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Empfangbare_Satelliten : 35|5@1+ (1,0) [1|30] "Unit_None" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Sichtbare_Satelliten : 40|5@1+ (1,0) [1|30] "Unit_None" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Genutzte_Satelliten : 45|5@1+ (1,0) [1|30] "Unit_None" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GNSS_Nachrichtenpaket_ID5 : 50|2@1+ (1,0) [0|3] "Unit_Bit" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - -BO_ 896 APS_Master: 8 XXX - SG_ Active : 54|1@0+ (1,0) [0|1] "" XXX - SG_ Distance : 55|9@1+ (1,0) [0|255] "" XXX - -BO_ 916 WBA_03: 8 Gateway - SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Sub_Gateway - SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Sub_Gateway - SG_ WBA_GE_Zusatzwarnungen : 37|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ GE_Sollgang : 40|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ GE_Tipschaltempf_verfuegbar : 44|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ WBA_GE_Texte_02 : 45|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ WBA_GE_Texte_03 : 48|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ WBA_Blinken : 54|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Wiederstart_Anz_Std : 55|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_01 : 56|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_02 : 57|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_03 : 58|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_04 : 59|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_05 : 60|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_06 : 61|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_07 : 62|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ GE_Stoppverbot_Anz_Std : 63|1@1+ (1,0) [0|1] "" Sub_Gateway - -BO_ 919 LDW_02: 8 XXX - SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX - SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX - SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX - SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 949 Klima_11: 8 Gateway - SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" TME - SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" TME - SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" TME - SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" TME - SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" TME - SG_ KL_Kompressorkupplung_linear : 8|8@1+ (20,0) [0|4000] "Unit_MilliAmper" Vector__XXX - SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" TME - SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" TME - SG_ KL_nachtr_Stopp_Anf : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_T_Charge : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" TME - SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" TME - SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" TME - SG_ KL_Freilauf_Info : 38|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" TME - SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" TME - SG_ KL_Ausstattung_Klima : 51|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ KL_Variante_Standheizung : 54|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 958 Motor_14: 8 Gateway - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Sub_Gateway,TME - SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" BMS_NV,Sub_Gateway,TME - SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" BMS_NV,Sub_Gateway,TME - SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Sub_Gateway,TME - SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" DCDC_IHEV,Ladegeraet_Konzern,Sub_Gateway - SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" AWC,Sub_Gateway,TME - SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Sub_Gateway,TME - SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" AWC,BMS_NV,Ladegeraet_Konzern,Sub_Gateway,TME - SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Sub_Gateway,TME - SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_KomFehler_ESP : 32|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Sub_Gateway,TME - SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Sub_Gateway,TME - SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Sub_Gateway,TME - SG_ MO_QBit_KL_75 : 41|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Remotestart_moeglich : 53|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_FMAus_aktiv : 55|1@1+ (1,0) [0|1] "" BMS_NV,Sub_Gateway - SG_ MO_FMAus_Startvariante : 56|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_BMS_NV_Anf_stuetzen : 58|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Zylinderabschaltung : 59|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_HYB_VM_aktiv : 61|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_StartVorauss_erfuellt : 62|2@1+ (1,0) [0|3] "" AWC,Ladegeraet_Konzern,Sub_Gateway - -BO_ 960 Klemmen_Status_01: 4 Gateway - SG_ Klemmen_Status_01_CRC : 0|8@1+ (1,0) [0|255] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ Klemmen_Status_01_BZ : 8|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ RSt_Fahrerhinweise : 12|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,GurtMikrofon,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,GurtMikrofon,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZAS_Kl_50_Startanforderung : 19|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ BCM_Remotestart_Betrieb : 20|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZAS_Kl_Infotainment : 21|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ BCM_Remotestart_KL15_Anf : 22|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ BCM_Remotestart_MO_Start : 23|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Warn_P1_ZST_def : 24|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Warn_P2_ZST_def : 25|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Fahrerhinweis_1 : 26|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Fahrerhinweis_2 : 27|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ BCM_Ausparken_Betrieb : 28|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Fahrerhinweis_4 : 29|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Fahrerhinweis_5 : 30|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ KST_Fahrerhinweis_6 : 31|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - -BO_ 967 Motor_26: 8 Gateway - SG_ MO_Kuehlerluefter_MUX M : 0|1@1+ (1,0) [0|1] "" TME - SG_ MO_Kuehlerluefter_1 m0 : 1|7@1+ (1,0) [0|100] "Unit_PerCent" TME - SG_ MO_Kuehlerluefter_2 m1 : 1|7@1+ (1,0) [0|100] "Unit_PerCent" TME - SG_ MO_EFLEX_Lampe : 8|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_KJS_nicht_bereit : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_ITM_Warnung_Pumpe : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" TME - SG_ OLEV_Systemstoerung : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Oelwarnung_max : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_E_Warnungen : 28|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MO_E_Texte : 36|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ WIV_Oeldyn_avl : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ OLEV_Oelstand_nicht_vorhanden : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Vector__XXX - SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" TME - SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_RedFahrleistung_Lampe : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Vorglueh_Lampe : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_E_Mode : 61|3@1+ (1,0) [0|7] "" Vector__XXX - -BO_ 974 TSG_HFS_01: 8 Gateway - SG_ HFS_Tuer_geoeffnet : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_verriegelt : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_gesafet : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Heckrollotaster_betaetigt : 3|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Tuerschloss_defekt : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Unlock_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Lock_Taster : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Sperrklinke : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_TAG_betaetigt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_TIG_betaetigt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_HBFS_AutoHoch : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_HBFS_AutoTief : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_HBFS_ManHoch : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_HBFS_ManTief : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Tuer_Status : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ HFS_SAD_Schalter : 16|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HFS_FH_S_ManHoch : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_AutoHoch : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_ManTief : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_S_AutoTief : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_Oeffnung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ HFS_FH_Bew_hoch : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_Bew_tief : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_Fang : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_Block : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_Thermo : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_UEKB_aktiviert : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Tueroeffnen_Warnung : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_FH_normiert : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ASW_Warnung_aktiv_HFS : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Zuziehhilfe_aktiv : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Seitenrollo_hoch : 42|1@1+ (1,0) [0|1] "" TME - SG_ HFS_Seitenrollo_tief : 43|1@1+ (1,0) [0|1] "" TME - SG_ HFS_Status_KiSi : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SSR_HFS_Pos_Unten : 45|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Oben_Block_erw : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Unten_Block_erw : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHFS_M_Taste : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHFS_Pos1 : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHFS_Pos2 : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHFS_Pos3 : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_MRollo_Schalter : 52|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ HFS_Lock_Taster_inv : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_Status_eTAG : 56|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ HFS_Tuer_Status_QBit : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HFS_TCR_Mode_aktiv : 59|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 975 TSG_HBFS_01: 8 Gateway - SG_ HBFS_Tuer_geoeffnet : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_verriegelt : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_gesafet : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Heckrollotaster_betaetigt : 3|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Tuerschloss_defekt : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Unlock_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Lock_Taster : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Sperrklinke : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_TAG_betaetigt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_TIG_betaetigt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_HFS_AutoHoch : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_HFS_AutoTief : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_HFS_ManHoch : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_HFS_ManTief : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Tuer_Status : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ HBFS_SAD_Schalter : 16|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HBFS_FH_S_ManHoch : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_AutoHoch : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_ManTief : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_S_AutoTief : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_Oeffnung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ HBFS_FH_Bew_hoch : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_Bew_tief : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_Fang : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_Block : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_Thermo : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_UEKB_aktiviert : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Tueroeffnen_Warnung : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_FH_normiert : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ASW_Warnung_aktiv_HBFS : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Zuziehhilfe_aktiv : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Seitenrollo_hoch : 42|1@1+ (1,0) [0|1] "" TME - SG_ HBFS_Seitenrollo_tief : 43|1@1+ (1,0) [0|1] "" TME - SG_ HBFS_Status_KiSi : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SSR_HBFS_Pos_Unten : 45|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Oben_Block_erw : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Unten_Block_erw : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHBFS_M_Taste : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHBFS_Pos1 : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHBFS_Pos2 : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MTHBFS_Pos3 : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_MRollo_Schalter : 52|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ HBFS_Lock_Taster_inv : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Status_KiSi_inv : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_Status_eTAG : 57|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ HBFS_Tuer_Status_QBit : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_TIG_betaetigt_schliessen : 60|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 976 TSG_FT_01: 8 Gateway - SG_ FT_Tuer_geoeffnet : 0|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern,TME - SG_ FT_verriegelt : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_gesafet : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Schluesselschalter_auf : 3|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV - SG_ FT_Schluesselschalter_zu : 4|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV - SG_ FT_Unlock_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Lock_Taster : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Sperrklinke : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_TAG_betaetigt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_TIG_betaetigt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_IRUE_Taste : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_HD_Taste : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_TD_Taste_Fehler : 12|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern - SG_ FT_TD_Taste : 13|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Ladegeraet_Konzern - SG_ SSR_Temp_Freigabe : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Sp_Heizung_Anf : 15|1@1+ (100,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ FT_HD_Taste_2 : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_TSG_hinten_verbaut : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Sp_Blk_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_S_ManHoch : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_S_AutoHoch : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_S_ManTief : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_S_AutoTief : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_Oeffnung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" TME - SG_ FT_FH_Bew_hoch : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_Bew_tief : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_Fang : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_Block : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_Thermo : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_UEKB_aktiviert : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ASW_HMI_defekt : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_normiert : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Schliesstaster : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Zuziehhilfe_aktiv : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_SP_ausgerastet : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_SP_lr_aktiv : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_SP_ht_aktiv : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ASW_wakeup : 45|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Oben_Block_erw : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Unten_Block_erw : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Kisi_li_aktiv : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Kisi_re_aktiv : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Kisi_Taster_li : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Kisi_Taster_re : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_BFS_Fond_Freigabe : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Kisi_Fehler : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Daemmglas : 54|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_SP_Heizung_Status : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ASW_Warnung_aktiv_FS : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_FH_Pos_oben : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Tuerschloss_defekt : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_SWA_Taster : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_HMI_Diagnose : 60|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ FS_Status_eTAG : 62|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 980 SMLS_01: 8 Gateway - SG_ SMLS_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ SMLS_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BH_Blinker_li : 12|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ BH_Blinker_re : 13|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ BH_Lichthupe : 14|1@1+ (1,0) [0|1] "" ZR_High - SG_ BH_Fernlicht : 15|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_Tipwischen : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_Intervall : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_WischerStufe1 : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_WischerStufe2 : 19|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_Frontwaschen : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_Heckintervall : 21|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_Heckwaschen : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ WH_Intervallstufen : 23|4@1+ (1,0) [0|15] "" ZR_High - SG_ FAS_Taster : 27|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ FAS_Taster_Fehler : 28|1@1+ (1,0) [0|1] "" ZR_High - SG_ SMLS_Hupe : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LRH_On_Off : 30|2@1+ (1,0) [0|3] "" ZR_High - SG_ LRH_aktiv : 40|1@1+ (1,0) [0|1] "" ZR_High - SG_ SMLS_P_verriegelt_plausibel : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WH_SRA : 44|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ WH_Wischer_Fehler : 45|1@1+ (1,0) [0|1] "" ZR_High - SG_ BH_Blinker_Fehler : 46|1@1+ (1,0) [0|1] "" ZR_High - SG_ SMLS_PTT : 47|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ WH_Tipwischen_lang : 48|1@1+ (1,0) [0|1] "" ZR_High - -BO_ 981 Licht_Anf_01: 8 Gateway - SG_ Licht_Anf_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ Licht_Anf_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_Kurvenlicht_links_Anf : 12|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Kurvenlicht_rechts_Anf : 13|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Standlicht_Anf : 14|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Abblendlicht_Anf : 15|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ BCM1_Fernlicht_Anf : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Nebellicht_Anf : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Parklicht_li_Anf : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Parklicht_re_Anf : 19|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Nebelschluss_Ahg_Anf : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Nebelschluss_Fzg_Anf : 21|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Schlusslicht_Anf : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM_Rueckfahrlicht_Anf : 23|1@1+ (1,0) [0|1] "" ZR_High,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ BCM1_Signaturlicht_Anf : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Umfeldleuchten_Anf : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Tagfahrlicht_Anf : 26|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Regenlicht_Anf : 27|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Autobahnlicht_Anf : 28|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Touristen_Licht_Anf : 29|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_CH_aktiv : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_LH_aktiv : 31|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Gleitende_Leuchtw_Anf : 32|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_GLW_Fernlicht_Anf : 33|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Adaptive_Lichtvert_Anf : 34|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_FoD_Sperrung_WiBli : 35|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BCM1_FOD_Sperrung_Animationen_HL : 37|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BCM1_Animationssperrung : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_CH_LH_aktiv : 40|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Allwetterlicht_Anf : 41|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Schlusslicht_Signatur : 60|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 982 Licht_hinten_01: 8 Gateway - SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Zusatzschlussl_def : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Diag_Status_re_def : 28|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Diag_Status_li_def : 29|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Diag_LED_li_def : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Diag_LED_re_def : 31|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schluss_Brems_mi_def : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Schlusslicht_mi_def : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_mi_def : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" ZR_High - SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" ZR_High - -BO_ 987 Gateway_72: 8 Gateway_MQB - SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 988 Gateway_73: 8 XXX - SG_ UNKNOWN_1 : 15|2@0+ (1,0) [0|3] "" XXX - SG_ GE_Fahrstufe : 40|4@1+ (1,0) [0|15] "" XXX - SG_ EPB_Status : 53|3@1+ (1,0) [0|7] "" XXX - SG_ UNKNOWN_2 : 58|3@0+ (1,0) [0|7] "" XXX - -BO_ 997 TSG_FT_02: 8 Gateway - SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ FT_Tuer_Status : 12|2@1+ (1,0) [0|3] "" OTA_FC,ZR_High - SG_ FT_Tuer_Status_QBit : 14|1@1+ (1,0) [0|1] "" ZR_High - SG_ FT_Lock_Taster_02 : 15|1@1+ (1,0) [0|1] "" ZR_High - SG_ FT_Schluesselschalter_zu_02 : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ FT_BFS_Tuer_Status : 17|2@1+ (1,0) [0|3] "" ZR_High - SG_ FT_HBFS_Tuer_Status : 19|2@1+ (1,0) [0|3] "" ZR_High - SG_ FT_HFS_Tuer_Status : 21|2@1+ (1,0) [0|3] "" ZR_High - SG_ FT_Tueroeffnen_Warnung : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_SP_Heizung_ein : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FT_Kisi_Taster_li_02 : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ FT_Kisi_Taster_re_02 : 26|1@1+ (1,0) [0|1] "" ZR_High - SG_ FT_TD_Taste_Status : 27|2@1+ (1,0) [0|3] "" ZR_High - SG_ FT_TCR_Mode_aktiv : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FS_Push_Tuergriff : 36|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1004 MEB_TSK_01: 8 XXX - SG_ TSK_State : 53|3@1+ (1,0) [0|7] "" XXX - -BO_ 1031 PLA_04: 8 XXX - -BO_ 1122 PSD_04: 8 ZR_High - SG_ PSD_Segment_ID : 0|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Vorgaenger_Segment_ID : 6|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Segmentlaenge : 12|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG,OTA_FC - SG_ PSD_Strassenkategorie : 19|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,OTA_FC - SG_ PSD_Endkruemmung : 22|8@1+ (1,0) [0|254] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Endkruemmung_Vorz : 30|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Idenditaets_ID : 31|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_ADAS_Qualitaet : 37|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_wahrscheinlichster_Pfad : 38|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Geradester_Pfad : 39|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Fahrspuren_Anzahl : 40|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,OTA_FC - SG_ PSD_Bebauung : 43|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Segment_Komplett : 44|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Rampe : 45|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Anfangskruemmung : 47|8@1+ (1,0) [0|254] "" Gateway,Gateway_PAG - SG_ PSD_Anfangskruemmung_Vorz : 55|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Abzweigerichtung : 56|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Abzweigewinkel : 57|7@1+ (1.417323,0) [0|180.000021] "" Gateway,Gateway_PAG - -BO_ 1123 PSD_05: 8 ZR_High - SG_ PSD_Pos_Segment_ID : 0|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Pos_Segmentlaenge : 6|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Pos_Inhibitzeit : 13|5@1+ (10,0) [0|310] "Unit_MilliSecon" Gateway,Gateway_PAG - SG_ PSD_Pos_Standort_Eindeutig : 18|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Pos_Fehler_Laengsrichtung : 19|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Pos_Fahrspur : 22|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,OTA_FC - SG_ PSD_Attribut_Segment_ID_05 : 25|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_1_ID : 31|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_1_Wert : 36|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_1_Offset : 40|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Attribut_2_ID : 47|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_2_Wert : 52|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_2_Offset : 56|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Attribute_Komplett_05 : 63|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - -BO_ 1124 PSD_06: 8 ZR_High - SG_ PSD_06_Mux M : 0|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Segment_ID m0 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Laendercode m0 : 9|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Geschwindigkeit_Einheit m0 : 17|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Verkehrsrichtung m0 : 18|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Geometrieguete m0 : 19|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Mapmatchingguete m0 : 21|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Alter_Karte m0 : 23|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Zielfuehrung m0 : 26|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,OTA_FC - SG_ PSD_Sys_US_State m0 : 27|6@1+ (1,0) [0|63] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_Geometrien m0 : 33|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_Ortsinfo m0 : 36|2@1+ (1,0) [0|3] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_verfuegbar m0 : 38|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Zielfuehrung_geaendert m0 : 39|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Geometrieguete_erweitert m0 : 40|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_sonstige_Attribute m0 : 48|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_Steigungen m0 : 51|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_Strassenkennz m0 : 54|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_Tempolimits m0 : 57|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Sys_Quali_Vorfahrtsregelung m0 : 60|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG - SG_ PSD_Attribut_Segment_ID m1 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_3_ID m1 : 9|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_3_Offset m1 : 14|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Attribut_3_Wert m1 : 21|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_4_ID m1 : 25|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_4_Wert m1 : 30|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_4_Offset m1 : 34|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Attribut_5_ID m1 : 41|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG - SG_ PSD_Attribut_5_Offset m1 : 46|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Attribut_5_Wert m1 : 53|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ PSD_Attribute_Komplett_06 m1 : 57|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Segment_ID m2 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Offset m2 : 9|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit m2 : 16|5@1+ (1,0) [0|31] "" Gateway,Gateway_PAG,OTA_FC - SG_ PSD_Ges_Typ m2 : 21|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Spur_Geschw_Begrenzung m2 : 23|6@1+ (1,0) [0|63] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit_Gespann m2 : 29|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit_Witter m2 : 31|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit_Tag_Anf m2 : 33|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit_Tag_Ende m2 : 36|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit_Std_Anf m2 : 39|5@1+ (1,0) [0|24] "Unit_Hours" Gateway,Gateway_PAG - SG_ PSD_Ges_Geschwindigkeit_Std_Ende m2 : 44|5@1+ (1,0) [0|24] "Unit_Hours" Gateway,Gateway_PAG - SG_ PSD_Ges_Ueberholverbot m2 : 49|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Wechselverkehrszeichen m2 : 51|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Wechselverkehrszeichen_Typ m2 : 54|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Gesetzlich_Kategorie m2 : 56|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Gesetzlich_Zusatz m2 : 59|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Verkehrszeichen_Quelle m2 : 61|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ PSD_Ges_Attribute_Komplett m2 : 63|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Baum_Laenge_VZ m3 : 3|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Baum_Laenge m3 : 4|25@1+ (1e-05,0) [0|180] "Unit_DegreOfArc" Gateway,Gateway_PAG - SG_ PSD_Baum_Breite_VZ m3 : 29|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Baum_Breite m3 : 30|24@1+ (1e-05,0) [0|90] "Unit_DegreOfArc" Gateway,Gateway_PAG - SG_ PSD_Baum_Ausrichtung m3 : 54|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_Segment_ID m4 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_A_Steigung m4 : 9|7@1+ (0.12,0) [0|15] "Unit_PerCent" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_A_Vorz m4 : 16|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_A_Offset m4 : 17|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_B_Steigung m4 : 24|7@1+ (0.12,0) [0|15] "Unit_PerCent" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_B_Vorz m4 : 31|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_B_Offset m4 : 32|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Steigung_1_Attribute_kompl m4 : 39|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Steigung_2_Segment_ID m4 : 40|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG - SG_ PSD_Steigung_2_Steigung m4 : 46|7@1+ (0.12,0) [0|15] "Unit_PerCent" Gateway,Gateway_PAG - SG_ PSD_Steigung_2_Vorz m4 : 53|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ PSD_Steigung_2_Offset m4 : 54|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG - SG_ PSD_Steigung_2_Attribute_kompl m4 : 61|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - -BO_ 1153 MainUnit_01: 8 ZR_High - SG_ ZR_LoGeWa_Event_Kombiwarnung : 0|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ Nav_FoD_Status : 4|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ MIB_Tongenerator_PH_verfuegbar : 9|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ MMI_Counter_Bedienevent : 12|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ DSSS_Warning : 16|5@1+ (1,0) [0|31] "" Gateway,Gateway_PAG - SG_ ZR_Kindersicherung_RSE : 21|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ ZR_RSE_aktivieren : 22|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ MMI_SDS_aktiv : 23|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ MU_SecondDisplay : 24|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG - SG_ MMI_Telefon_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG - SG_ MMI_Gurt_Mic_ref : 28|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,GurtMikrofon - SG_ ZR_Sta_Inszenierung : 29|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ MMI_Gauges_active : 31|1@1+ (1,0) [0|1] "" BedienDisp_vo,Gateway,Gateway_PAG - SG_ MU_Update_Time : 32|8@1+ (0.1,0) [0|25.5] "Unit_Hours" Gateway,Gateway_PAG - SG_ ZR_MXB_Manoever_Ansage : 42|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ ZR_LAPP_Sondermodus_Status : 44|2@1+ (1,0) [0|3] "" DDA,Gateway,Gateway_PAG - SG_ MMI_StartStopp_Info : 46|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG - SG_ ZR_Parken_Sondermodus : 48|4@1+ (1,0) [0|15] "" DDA,Gateway,Gateway_PAG - SG_ ZR_Rundenbewertung : 52|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG - SG_ ZR_Rundenfortschritt : 56|8@1+ (0.5,0) [0|100] "Unit_PerCent" Gateway,Gateway_PAG - -BO_ 1155 Motor_Hybrid_06: 8 Gateway - SG_ Mo_Powermeter_Grenze : 0|12@1+ (1,0) [0|4092] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ MO_Text_Aktivierung_Antrieb : 12|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MO_Powermeter_Inszenierung_aktiv : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Powermeter_Charge_Grenze : 18|10@1+ (1,0) [0|1021] "Unit_None" Vector__XXX - SG_ MO_Powermeter_Grenze_strategisch : 28|12@1+ (1,0) [0|4093] "Unit_None" Vector__XXX - SG_ MO_Powermeter_untere_E_Grenze : 40|12@1+ (1,0) [0|4093] "Unit_None" Vector__XXX - SG_ MO_Powermeter_obere_E_Grenze : 52|12@1+ (1,0) [0|4093] "Unit_None" Vector__XXX - -BO_ 1163 BEM_06: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 1175 Parkhilfe_01: 8 Gateway - SG_ PH_Visualisierung : 0|3@1+ (1,0) [0|7] "" AWC - SG_ PDC_Tonausgabe_Front : 4|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PDC_Tonausgabe_Heck : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_nachtr_Stopp_Anf : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Abschaltursache : 13|3@1+ (1,0) [0|7] "" AWC - SG_ PH_Opt_Anzeige_V_ein : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Opt_Anzeige_H_ein : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Opt_Anz_V_Hindernis : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Opt_Anz_H_Hindernis : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Tongeber_V_aktiv : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Tongeber_H_aktiv : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Tongeber_mute : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Anf_Audioabsenkung : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Tongeber_H_verfuegbar : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PLA_Anf_Aufschaltung_RVC : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Taster : 28|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ PH_Anf_Verdeck : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ PH_Frequenz_hinten : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_Lautstaerke_hinten : 36|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_Frequenz_vorn : 40|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_Lautstaerke_vorn : 44|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_StartStopp_Info : 49|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ PH_Stoermeldung : 52|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_defekt : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_gestoert : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ PH_Systemzustand : 58|3@1+ (1,0) [0|7] "" AWC - SG_ PH_Display_Kundenwunsch : 61|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1283 HVK_01: 8 Gateway - SG_ HVK_01_CRC : 0|8@1+ (1,0) [0|255] "" BMC_MLBevo,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo,TME - SG_ HVK_01_BZ : 8|4@1+ (1,0) [0|15] "" BMC_MLBevo,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo,TME - SG_ HVK_Istmodus_Anf : 12|1@1+ (1,0) [0|1] "" BMC_MLBevo,DCDC_HV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo - SG_ HVK_TN1_Sollmodus : 13|2@1+ (1,0) [0|3] "" DCDC_HV_02,FCU_MLBevo_FCEV - SG_ HVK_MO_EmSollzustand : 16|8@1+ (1,0) [0|255] "" FCU_MLBevo_FCEV - SG_ HVK_BMS_Sollmodus : 24|3@1+ (1,0) [0|7] "" BMC_MLBevo,FCU_MLBevo_FCEV - SG_ HVK_DCDC_Sollmodus : 27|3@1+ (1,0) [0|7] "" DCDC_800V_PAG,DCDC_HV,FCU_MLBevo_FCEV,LE_MLBevo - SG_ HVK_EKK_Sollmodus : 30|3@1+ (1,0) [0|7] "" FCU_MLBevo_FCEV,TME - SG_ HVK_HVPTC_Sollmodus : 33|3@1+ (1,0) [0|7] "" FCU_MLBevo_FCEV,TME - SG_ HVK_HVLM_Sollmodus : 36|3@1+ (1,0) [0|7] "" DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_Konzern - SG_ HVK_HV_Netz_Warnungen : 39|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV - SG_ HV_Bordnetz_aktiv : 41|1@1+ (1,0) [0|1] "" DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo - SG_ HV_Bordnetz_Fehler : 42|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Ladegeraet_Konzern,TME - SG_ HVK_Gesamtst_Spgfreiheit : 43|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV - SG_ HVK_AktiveEntladung_Anf : 45|1@1+ (1,0) [0|1] "" DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,FCU_MLBevo_FCEV,LE1,LE2,LE_MLBevo - SG_ HVK_Iso_Messung_Start : 50|3@1+ (1,0) [0|7] "" BMC_MLBevo,FCU_MLBevo_FCEV - SG_ HVK_DCDC_EKK_Sollmodus : 62|2@1+ (1,0) [0|3] "" DCDC_800V_PAG,FCU_MLBevo_FCEV - -BO_ 1312 Airbag_02: 8 Gateway - SG_ LoGeWa_Event_Kombiwarnung : 12|4@1+ (1,0) [0|15] "" ZR_High - SG_ AB_Anforderung_eCall : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ AB_Anprall_Seite_Beifahrer : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Anprall_Rollover : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Anprall_FGS : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Anprall_Front_Beifahrer : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Anprall_Front_Fahrer : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Anprall_Heck_Beifahrer : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Anprall_Heck_Fahrer : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AB_Wickelklappung_Reihe2_MI : 24|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" BedienSG_hi,GurtMikrofon,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ AB_Abschaltanf_SIH_BF : 28|1@1+ (1,0) [0|1] "" ZR_High - SG_ AB_Anprall_Seite_Fahrer : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SC_PAO_Schriftzug_Anf : 30|2@1+ (1,0) [0|3] "" ZR_High - SG_ SC_PAO_ON_Anf : 32|2@1+ (1,0) [0|3] "" ZR_High - SG_ SC_PAO_OFF_Anf : 34|2@1+ (1,0) [0|3] "" ZR_High - SG_ AB_Crashschwere : 36|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ AB_Anforderung_USM : 39|1@1+ (1,0) [0|1] "" ZR_Standard - SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" BedienSG_hi,GurtMikrofon,ZR_High - SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" BedienSG_hi,GurtMikrofon,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High - SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High - SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High - SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" ZR_High - SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" ZR_High - SG_ AB_Wickelklappung_Reihe2_BF : 60|2@1+ (1,0) [0|3] "" ZR_High - SG_ AB_Wickelklappung_Reihe2_FA : 62|2@1+ (1,0) [0|3] "" ZR_High - -BO_ 1349 Airbag_04: 8 Gateway - SG_ AB_Gurtwarn_Reihe2_FA : 20|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AB_Gurtwarn_Reihe2_BF : 22|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AbstWarn_MV_FAS_Fkt_Status : 24|2@1+ (1,0) [0|3] "" ZR_High - SG_ WarnBrems_Charisma_Status : 26|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WarnBrems_Charisma_FahrPr : 28|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ AB_Gurtwarn_Reihe2_MI : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AB_Gurtwarn_Reihe3_FA : 34|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AB_Gurtwarn_Reihe3_MI : 36|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AB_Gurtwarn_Reihe3_BF : 38|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ LGI_FAS_Fkt_Status : 40|2@1+ (1,0) [0|3] "" ZR_High - SG_ PreCrash_FAS_Fkt_Status : 42|3@1+ (1,0) [0|7] "" ZR_High - SG_ AB_SBR_hinten_verbau : 48|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AWV_Einstellung_System_ASG : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Einstellung_Warnung_ASG : 52|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ SC_PreSense_Modus_Warnung_NV : 55|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ SC_PreSense_Modus_Warnung_MV : 58|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ SC_PreSense_Modus_System_MV : 61|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SC_PreSense_Modus_System_NV : 62|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SC_PreSense_Modus_System_KAS : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1355 Parkhilfe_04: 8 Gateway - SG_ PH_Verschmutzungsmeldung : 12|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ PH_Aufschaltursache : 16|5@1+ (1,0) [0|31] "" AWC - SG_ PH_Ton_Ausgabe : 21|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ PH_Ton_Pausenlaenge : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ PH_Ton_Richtung : 49|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ PH_Ton_Lautstaerke : 52|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ BCM_WAH_Meldung : 55|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ PDC_Charisma_Status : 58|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ PDC_Charisma_FahrPr : 60|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 1361 WFS_01: 8 Gateway - SG_ WFS_Schluessel_Fahrberecht : 0|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ WFS_ID_Geb_autorisiert : 5|1@1+ (1,0) [0|1] "" ZR_High - SG_ WFS_ID_Geb_autorisiert_in_Kl15 : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_ID_Geb_steckt : 7|1@1+ (1,0) [0|1] "" ZR_High - SG_ WFS_Schluessel_Soll : 8|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ WFS_Schluessel_Ist : 12|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ WFS_Safe : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_LZ : 17|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WFS_ELV_authorisiert : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_LF_Aktiv : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_Betrieb_Lesespule : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_Klemmenfreigabe : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_Fahrerhinweise : 34|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WFS_Parken_Status : 36|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1385 MEB_HVEM_03: 8 XXX - SG_ NEW_SIGNAL_12 : 0|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_1 : 1|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_10 : 3|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 4|2@1+ (1,0) [0|3] "" XXX - SG_ PTC_ON : 7|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 25|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_13 : 32|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_4 : 33|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_11 : 35|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_5 : 36|2@1+ (1,0) [0|3] "" XXX - SG_ NEW_SIGNAL_6 : 38|1@0+ (1,0) [0|1] "" XXX - SG_ PTC_ein_02 : 39|1@0+ (1,0) [0|1] "" XXX - SG_ PTC_ein_03 : 57|1@0+ (1,0) [0|1] "" XXX - SG_ PTC_ein_04 : 59|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_9 : 61|2@1+ (1,0) [0|3] "" XXX - -BO_ 1411 ZV_02: 8 Gateway - SG_ BCM_FH_Freigabe : 12|1@1+ (1,0) [0|1] "" BedienDisp_vo - SG_ BCM_Komfortfkt_Freigabe : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_HSK_Freigabe : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Verdeck_Freigabe : 15|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_verriegelt_intern_ist : 16|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High - SG_ ZV_verriegelt_extern_ist : 17|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High - SG_ ZV_verriegelt_intern_soll : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_verriegelt_extern_soll : 19|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZV_gesafet_extern_ist : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_gesafet_extern_soll : 21|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 - SG_ ZV_Einzeltuerentriegelung : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_Heckeinzelentriegelung : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_FT_offen : 24|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZV_BT_offen : 25|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZV_HFS_offen : 26|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZV_HBFS_offen : 27|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZV_HD_offen : 28|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ ZV_HS_offen : 29|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ IRUE_aktiv : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ DWA_aktiv : 31|1@1+ (1,0) [0|1] "" ZR_High - SG_ HD_Hauptraste : 32|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ HD_Vorraste : 33|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ FFB_CarFinder : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FFB_Komfortoeffnen : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ FFB_Komfortschliessen : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_Schluessel_Zugang : 42|4@1+ (1,0) [0|15] "" ZR_High - SG_ ZV_SafeFunktion_aktiv : 46|1@1+ (1,0) [0|1] "" ZR_High - SG_ FBS_Warn_Schluessel_Batt : 47|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_Oeffnungsmodus : 48|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ HFS_verriegelt : 50|1@1+ (1,0) [0|1] "" OTA_FC - SG_ HFS_gesafet : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HBFS_verriegelt : 52|1@1+ (1,0) [0|1] "" OTA_FC - SG_ HBFS_gesafet : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_ist_Zustand_verfuegbar : 54|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ IRUE_Taster_Fkts_LED : 55|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_Tankklappe_offen : 56|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_Rollo_auf : 57|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_Rollo_zu : 58|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_SAD_auf : 59|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_SAD_zu : 60|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM_Tankklappensteller_Fehler : 61|1@1+ (1,0) [0|1] "" ZR_High - SG_ ZV_verriegelt_soll : 62|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1413 Systeminfo_01: 8 Gateway - SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_Diagnose_Aktiv : 7|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" ZR_High,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_T_Schutz : 14|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_Bus_Identifikation : 32|8@1+ (1,0) [0|255] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - SG_ SI_CAB : 40|24@1+ (1,0) [0|16777215] "" BedienSG_hi,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard - -BO_ 1420 Klemmen_Steuerung_01: 8 Gateway - SG_ Klemmen_Steuerung_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ Klemmen_Steuerung_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ KST_Txt_P_Gang : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KST_Txt_Panikabschaltung : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KST_Anf_Klemmenfreigabe_ELV : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KST_Txt_Komfortabschaltung : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KST_ZAT_betaetigt : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ KST_Unterdr_Zuendungsmeldung : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KST_aut_Abschaltung_Zuendung : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KST_Anf_ZV_Verriegelung : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Relais_VoKo_angesteuert : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ RSt_Anforderung_HMS : 26|3@1+ (1,0) [0|7] "" Vector__XXX - -BO_ 1426 Kessy_04: 8 XXX - -BO_ 1440 RLS_01: 8 Gateway - SG_ LS_Helligkeit_IR : 0|8@1+ (400,0) [0|101200] "Unit_Lux" ZR_High - SG_ LS_Helligkeit_FW : 8|10@1+ (6,0) [0|6126] "Unit_Lux" ZR_High - SG_ LS_defekt : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ LS_Verbau : 23|1@1+ (1,0) [0|1] "" ZR_High - SG_ RS_Regenmenge : 24|4@1+ (10,0) [0|100] "Unit_PerCent" OTA_FC,ZR_High - SG_ RS_Verbau : 29|1@1+ (1,0) [0|1] "" ZR_High - SG_ RS_Verglasung_schliessen : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ RS_defekt : 31|1@1+ (1,0) [0|1] "" ZR_High - SG_ RS_Wischergeschwindigkeit : 32|3@1+ (1,0) [0|7] "" OTA_FC,ZR_High - SG_ RLS_Vorfeldhelligkeit_Boost : 35|4@1+ (1,0) [0|15] "" ZR_High - -BO_ 1442 BMS_04: 8 BMC_MLBevo - SG_ BMS_04_CRC : 0|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ BMS_04_BZ : 8|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ BMS_Status_ServiceDisconnect : 13|1@1+ (1,0) [0|1] "" DCDC_800V_PAG,DCDC_HV,Gateway,Gateway_PAG,Sub_Gateway - SG_ BMS_Status_Spgfreiheit : 14|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ BMS_OBD_Lampe_Anf : 16|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ BMS_IstModus : 17|3@1+ (1,0) [0|7] "" AWC,Gateway,Gateway_PAG,Ladegeraet_Konzern,LE1,LE2,LE2_3_MLBevo_LB,Sub_Gateway,TME - SG_ BMS_Fehlerstatus : 20|3@1+ (1,0) [0|7] "" AWC,DCDC_800V_PAG,DCDC_HV,Gateway,Gateway_PAG,Ladegeraet_Konzern,Sub_Gateway - SG_ BMS_Kapazitaet_02 : 23|11@1+ (0.2,0) [0|409.2] "Unit_AmperHour" Gateway,Gateway_PAG,Ladegeraet_Konzern,Sub_Gateway - SG_ BMS_Soll_SOC_HiRes : 53|11@1+ (0.05,0) [0|100] "Unit_PerCent" Gateway,Gateway_PAG,Sub_Gateway - -BO_ 1447 TM_01: 8 Gateway - SG_ TM_Spiegel_Anklappen : 47|1@1+ (1,0) [0|1] "" ZR_High - SG_ TM_Nur_Hupen : 48|1@1+ (1,0) [0|1] "" ZR_High - SG_ TM_Door_Lock : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TM_Door_Unlock : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TM_Warnblinken : 51|1@1+ (1,0) [0|1] "" ZR_High - SG_ TM_Panik_Alarm : 52|1@1+ (1,0) [0|1] "" ZR_High - SG_ TM_ZV_Signatur : 53|11@1+ (1,0) [1|2047] "Unit_None" Vector__XXX - -BO_ 1452 HVEM_02: 8 Gateway - SG_ HVEM_IstStrom_HVVerbraucher : 0|12@1+ (0.1,-204.7) [-204.7|204.6] "Unit_Amper" Vector__XXX - SG_ HVEM_Energie_Klima_Vorgabe_HighR : 12|3@1+ (10,0) [0|50] "Unit_WattHour" TME - SG_ HVEM_IstLeistungNA : 15|9@1+ (50,0) [0|25450] "Unit_Watt" Vector__XXX - SG_ HVEM_Leistung_Klima_Vorgabe : 24|8@1+ (50,0) [0|12650] "Unit_Watt" TME - SG_ HVEM_Nutzbare_Energie : 32|11@1+ (50,0) [0|102200] "Unit_WattHour" Ladegeraet_Konzern - SG_ HVEM_Energie_Klima_Vorgabe : 43|8@1+ (50,0) [0|12650] "Unit_WattHour" TME - SG_ HVEM_MO_MaxLeistungIgnoriert : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1485 DCDC_03: 8 DCDC_800V_PAG - SG_ DCDC_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ DCDC_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ DC_Fehlerstatus : 16|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ DC_Peakstrom_verfuegbar : 19|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ DC_Abregelung_Temperatur : 20|1@1+ (1,0) [0|1] "" Gateway_PAG,Sub_Gateway,TME - SG_ DC_IstModus_02 : 21|3@1+ (1,0) [0|7] "" DCDC_HV_02,Gateway,Gateway_PAG,Ladegeraet_Konzern,Sub_Gateway,TME - SG_ DC_HV_EKK_IstModus : 28|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,Sub_Gateway,TME - SG_ DC_Status_Spgfreiheit_HV : 46|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG,Sub_Gateway - SG_ DC_IstSpannung_EKK_HV : 48|8@1+ (2,0) [0|508] "Unit_Volt" Gateway,Gateway_PAG,Sub_Gateway - SG_ DC_Temperatur : 56|8@1+ (1,-40) [-40|213] "Unit_DegreCelsi" Gateway,Gateway_PAG,Sub_Gateway,TME - -BO_ 1505 Klima_Sensor_02: 8 Gateway - SG_ BCM1_Aussen_Temp_ungef : 0|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" BMC_MLBevo,BMS_NV,FCU_MLBevo_FCEV,Ladegeraet_Konzern,TME - SG_ BCM_Heizungsabsperrventil_Status : 8|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BCM_Heizungspumpe_Status : 10|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BCM_Kompressorkupplung_Status : 12|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BCM1_PTC_stufig_Status : 28|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ BCM1_FStatus_Aussentemp_ungef : 31|1@1+ (1,0) [0|1] "" TME - SG_ BCM1_Kompressorstrom_ist : 32|8@1+ (4,0) [0|1000] "Unit_MilliAmper" Vector__XXX - SG_ BCM1_OBD_FStatus_ATemp : 44|4@1+ (1,0) [0|15] "" BMC_MLBevo,Ladegeraet_Konzern,TME - -BO_ 1513 Klima_Sensor_04: 8 Gateway - SG_ DS_Kaeltemittel_P : 8|11@1+ (0.0161,0) [0|32.9245] "Unit_Bar" TME - SG_ DS_Status : 19|2@1+ (1,0) [0|3] "" TME - SG_ ION_Status : 21|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ION_Status_LED : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAU_Geblaese : 24|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ ION_Status_Taster : 31|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1520 Dimmung_01: 8 Gateway_MQB - SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB - SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 1524 Innenlicht_11: 8 Gateway - SG_ IL_Dimmung_V_Tuerkontur : 0|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High - SG_ IL_Dimmung_H_Tuerkontur : 8|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High - SG_ IL_Dimmung_Tuerinnengriff : 16|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High - SG_ IL_Dimmung_Umfeldbel : 24|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High - SG_ IL_Bel_FS_Ausstieg : 32|1@1+ (1,0) [0|1] "" ZR_High - SG_ IL_Bel_BFS_Ausstieg : 33|1@1+ (1,0) [0|1] "" ZR_High - SG_ IL_Bel_HFS_Ausstieg : 34|1@1+ (1,0) [0|1] "" ZR_High - SG_ IL_Bel_HBFS_Ausstieg : 35|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Innenlicht_gedimmt_V : 36|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Innenlicht_gedimmt_H : 37|1@1+ (1,0) [0|1] "" ZR_High - SG_ IL_Innenlicht_aktiv : 38|1@1+ (1,0) [0|1] "" ZR_High - SG_ IL_Klemme_30G_aktiv : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_DI_Rampe_Innenlicht : 40|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_DI_Rampe_Leselicht : 41|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Innenlicht_H : 42|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Innenlicht_V : 43|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Leselicht_Anf_hl : 44|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Leselicht_Anf_hr : 45|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Leselicht_Anf_vl : 46|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Leselicht_Anf_vr : 47|1@1+ (1,0) [0|1] "" ZR_High - SG_ BCM1_Leuchten_Aus : 48|1@1+ (1,0) [0|1] "" ZR_High - SG_ AMB_Charisma_FahrPr : 49|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ AMB_Charisma_Status : 53|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ IL_Dimmung_Lautspr : 56|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High - -BO_ 1600 Motor_07: 8 Motor_Diesel_MQB - SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB - SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB - -BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB - SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB - SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB - SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB - SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1603 Einheiten_01: 8 Gateway - SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern - SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" TME - SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern - SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Verbrauch_elektr : 12|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KBI_Einheit_Verbrauch_Gas : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ KBI_Einheit_Masse : 28|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1622 ELV_01: 8 Gateway - SG_ ELV_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ ELV_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ ELV_Anf_Klemme_S : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Anf_Klemme_15 : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Anf_Klemme_50 : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_01_Sendestatus : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Verriegelt : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ ELV_Entriegelt : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ ELV_ZAT_betaetigt : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Lebenszustand : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Anlernmodus : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Klemmenfreigabe : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Abbruch_Anf_Klemmenfreigabe : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_LED_Rot : 24|1@1+ (1,0) [0|1] "" ZR_High - SG_ ELV_LED_Gelb : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Txt_Panikabschaltung : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Txt_Lkg_Bewegen : 28|1@1+ (1,0) [0|1] "" ZR_High - SG_ ELV_Txt_Werkstatt : 29|1@1+ (1,0) [0|1] "" ZR_High - SG_ ELV_Txt_Defekt : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ ELV_Txt_P_Gang : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Txt_PN_Gang : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Txt_Kupplung : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_Txt_Bremse : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ELV_P_verriegelt : 35|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1624 Licht_vorne_01: 8 Gateway - SG_ Licht_Vorne_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ Licht_Vorne_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ LV_Standlicht_Anzeige : 12|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Abblendlicht_Anzeige : 13|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Fernlicht_Anzeige : 14|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Nebellicht_Anzeige : 15|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Nebelschlusslicht_Anzeige : 16|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Tagfahrlicht_Anzeige : 17|1@1+ (1,0) [0|1] "" BedienSG_hi,OTA_FC,ZR_High - SG_ LV_AFL_aktiv_Anzeige : 18|1@1+ (1,0) [0|1] "" BedienSG_hi,OTA_FC,ZR_High - SG_ LV_AFL_defekt : 19|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Blinker_li_def : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Standlicht_li_def : 21|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abblendlicht_li_def : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Fernlicht_li_def : 23|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Nebellicht_li_def : 24|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Blk_li_Seite_def : 25|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Tagfahrlicht_li_def : 26|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_FLA_aktiv_Anzeige : 27|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_FLA_defekt : 28|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_FLA_Sensor_blockiert : 29|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Blinker_re_def : 30|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Standlicht_re_def : 31|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abblendlicht_re_def : 32|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Fernlicht_re_def : 33|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Nebellicht_re_def : 34|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Blk_re_Seite_def : 35|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Tagfahrlicht_re_def : 36|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Aussenlicht_def : 37|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abblendlicht_TFL_li_def : 38|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Nebellicht_TFL_li_def : 39|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Standlicht_TFL_li_def : 40|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abblend_Fernlicht_li_def : 41|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abblendlicht_TFL_re_def : 42|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Nebellicht_TFL_re_def : 43|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Standlicht_TFL_re_def : 44|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abblend_Fernlicht_re_def : 45|1@1+ (1,0) [0|1] "" ZR_High - SG_ LV_Abbiegelicht_li_def : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LV_Abbiegelicht_re_def : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Linksverkehr : 48|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ BCM1_Licht_Dunkelheit_aktiv : 49|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_LED_Scheinwerfer_li_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LV_LED_Scheinwerfer_re_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LV_Blinker_VL_aktiv : 52|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_Blinker_VR_aktiv : 53|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ LV_MXB_Status_Anzeige : 54|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1629 ESP_20: 8 Gateway - SG_ ESP_20_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ ESP_20_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_Wiederstart_Anz_01 : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Wiederstart_Anz_02 : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Wiederstart_Anz_03 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Wiederstart_Anz_04 : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_01 : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_02 : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_03 : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_04 : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_05 : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_06 : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_07 : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_Std : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Dachrelingsensor : 42|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_Stoppverbot_Anz_08 : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HDC_Charisma_FahrPr : 45|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HDC_Charisma_Status : 49|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" AWC - SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" AWC - -BO_ 1631 Motor_16: 8 Gateway - SG_ TSK_Grundmasse : 0|8@1+ (32,0) [0|8128] "Unit_KiloGram" ZR_High - SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" ZR_High - SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Vector__XXX - SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Vector__XXX - SG_ MO_Anzeige_Kaltleuchte : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_P_Generator_ungefiltert_Anf : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_Getriebeinfo : 34|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ MO_Energieinhalt_BMS : 36|12@1+ (25,0) [0|102325] "Unit_WattHour" Vector__XXX - SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" OTA_FC,ZR_High - SG_ TSK_Steigung_02 : 56|8@1+ (0.8,-101.6) [-100.8|101.6] "Unit_PerCent" OTA_FC - -BO_ 1640 Klima_12: 8 Gateway - SG_ KL_LRH_Taster : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_LRH_Stufe : 1|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ HSH_Taster : 3|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ FSH_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zuheizer_Freigabe : 6|1@1+ (1,0) [0|1] "" TME - SG_ KL_Beschlagsgefahr : 7|1@1+ (1,0) [0|1] "" TME - SG_ KL_SIH_Soll_li : 8|3@1+ (1,0) [0|7] "" TME - SG_ KL_SIH_Soll_re : 11|3@1+ (1,0) [0|7] "" TME - SG_ KRH_Soll_li : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_SIL_Soll_li : 16|3@1+ (1,0) [0|7] "" TME - SG_ KL_SIL_Soll_re : 19|3@1+ (1,0) [0|7] "" TME - SG_ KRH_Soll_re : 22|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Geblspng_Soll : 24|8@1+ (0.05,1.45) [1.5|14] "Unit_Volt" Vector__XXX - SG_ KL_Geblspng_Fond_Soll : 32|8@1+ (0.05,1.45) [1.5|14] "Unit_Volt" Vector__XXX - SG_ KL_I_Geblaese : 40|8@1+ (0.25,0) [0|63.5] "Unit_Amper" Vector__XXX - SG_ KL_Kompressorstrom_soll : 48|10@1+ (1,0) [0|1021] "" TME - SG_ KL_Umluftklappe_Status : 58|4@1+ (1,0) [0|15] "" TME - SG_ KL_PTC_Verbauinfo : 62|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1648 Motor_18: 8 Gateway - SG_ MO_max_Ladedruck : 0|6@1+ (0.1,0) [0|6.3] "Unit_Bar" Sub_Gateway - SG_ MO_ANC_Kennfeld_Anf : 6|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_Bremslicht_Reku : 8|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_StartStopp_PopUp : 9|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO1_Sperr_Info_WFS : 11|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO1_Freigabe_Info_WFS : 12|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_EPCL : 13|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ MO_Zylabsch_Texte_02 : 16|4@1+ (1,0) [0|15] "" Sub_Gateway - SG_ MO_Fahrzeugtyp : 20|3@1+ (1,0) [0|7] "" BMS_NV,Sub_Gateway - SG_ MO_NMAX_Schaltanzeige : 23|9@1+ (25,0) [0|12775] "Unit_MinutInver" Sub_Gateway - SG_ MO_Abstellzeit : 32|8@1+ (8,0) [0|2024] "Unit_Minut" BMS_NV,Sub_Gateway,TME - SG_ MO_Abstellzeit_Status : 40|2@1+ (1,0) [0|3] "" BMS_NV,Sub_Gateway,TME - SG_ MO1_Freigabe_Verfallsinfo_WFS : 42|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_Fehler_Zylabsch : 45|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Sub_Gateway - SG_ MO_Ethanol_BS_Texte : 52|3@1+ (1,0) [0|7] "" Sub_Gateway - SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Sub_Gateway - SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Sub_Gateway - -BO_ 1710 Spiegel_01: 8 Gateway - SG_ SP_FT_oben : 0|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_FT_unten : 1|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_FT_links : 2|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_FT_rechts : 3|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_BT_oben : 4|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_BT_unten : 5|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_BT_links : 6|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_BT_rechts : 7|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_abklappen : 8|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_anklappen : 9|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_normieren : 10|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_Hzg_Taster : 12|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ SP_S_oben : 16|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_S_unten : 17|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_S_links : 18|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_S_rechts : 19|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_Auswahl_li : 20|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_Auswahl_re : 21|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_ARA_Status : 22|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_S_Klappen : 23|1@1+ (1,0) [0|1] "" ZR_High - SG_ SP_Verstellschalter_Fehler : 24|1@1+ (1,0) [0|1] "" ZR_High - -BO_ 1711 Rear_View_01: 8 Gateway - SG_ RV_Video_on : 0|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ RV_Dark_Screen : 1|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ RV_HMI_Mode : 2|2@1+ (1,0) [0|3] "" ZR_High,ZR_Standard - SG_ RV_GL_side : 4|2@1+ (1,0) [0|3] "" ZR_High,ZR_Standard - SG_ RV_System_aktiv : 6|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ RV_Reinigung_Anf : 7|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High - SG_ RV_Settings_enabled : 8|1@1+ (1,0) [0|1] "" ZR_High - SG_ RV_Menu_Item : 9|2@1+ (1,0) [0|3] "" ZR_High - SG_ SV_Video_on : 11|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ RV_Calib_Fehler : 12|1@1+ (1,0) [0|1] "" ZR_High - SG_ RV_GL_Trailer_connect : 13|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ RV_GL_Trunk_open : 14|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard - SG_ RV_GL_LWS_Fehler : 15|1@1+ (1,0) [0|1] "" ZR_High - SG_ RV_Helligkeit : 16|7@1+ (1,0) [0|100] "Unit_PerCent" ZR_High,ZR_Standard - SG_ ZFAS_Umfeldbeleuchtung_Anf : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ RV_Kontrast : 24|7@1+ (1,0) [0|100] "Unit_PerCent" ZR_High,ZR_Standard - SG_ RV_Farbe : 32|7@1+ (1,0) [0|100] "Unit_PerCent" ZR_High,ZR_Standard - -BO_ 1714 Diagnose_01: 8 Gateway_MQB - SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - -BO_ 1716 VIN_01: 8 Gateway_MQB - SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB - SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - -BO_ 316495015 MEB_Camera_04: 32 XXX - -BO_ 316495049 SAL_01: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Brake_Unknown : 18|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_Light_01 : 20|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_2 : 22|1@0+ (1,0) [0|1] "" XXX - SG_ Right_Blinker : 25|1@0+ (1,0) [0|1] "" XXX - SG_ Left_Blinker : 26|1@1+ (1,0) [0|3] "" XXX - SG_ Reverse_Light : 27|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_Light_02 : 30|1@0+ (1,0) [0|1] "" XXX - SG_ Right_Blinker_02 : 44|1@1+ (1,0) [0|3] "" XXX - SG_ Left_Blinker_02 : 45|1@0+ (1,0) [0|1] "" XXX - SG_ NEW_SIGNAL_3 : 52|8@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_4 : 63|1@0+ (1,0) [0|1] "" XXX - -BO_ 316495081 MEB_Camera_05: 8 XXX - -BO_ 316495106 AAA_01: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 316495140 MEB_Camera_06: 64 XXX - -BO_ 316495165 HVL_01: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 380195935 IPA_02: 8 XXX - -BO_ 380196019 MEB_Camera_07: 16 XXX - -BO_ 380196036 MEB_Camera_08: 8 XXX - -BO_ 389241616 MEB_Camera_09: 8 XXX - -BO_ 389241617 MEB_Camera_10: 8 XXX - -BO_ 401604687 MEB_Camera_11: 8 XXX - -BO_ 402522959 MEB_Camera_14: 8 XXX - -BO_ 441800001 EML_02: 8 XXX - SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 441800082 MEB_Camera_12: 8 XXX - -BO_ 452984911 MEB_Camera_13: 8 XXX - -CM_ BO_ 184 "Motorsteuergerät"; -CM_ BO_ 192 "Motorsteuergerät"; -CM_ BO_ 317 "Lenkungssteuergerät"; -CM_ BO_ 517 "Steuergerät für Motorstart"; -CM_ BO_ 522 "Steuergerät für Fahrzeugbewegung"; -CM_ BO_ 1622 "Steuergerät für Lenkungsverriegelung"; -CM_ BO_ 316495165 "Steuergerät ICAS1"; -CM_ BO_ 441800001 "Steuergerät für Fahrzeugbewegung"; -VAL_ 64 AB_RGS_Anst 4 "aktiv_Niveau_1" 5 "aktiv_Niveau_2" 6 "aktiv_Niveau_3" 7 "aktiv_Niveau_4" 8 "deaktiviert"; -VAL_ 64 AB_Front_Crash 0 "kein_Front_Crash" 1 "Front_Crash"; -VAL_ 64 AB_Heck_Crash 0 "kein_Heck_Crash" 1 "Heck_Crash"; -VAL_ 64 AB_SF_Crash 0 "kein_Seiten_Crash_Fahrer" 1 "Seiten_Crash_Fahrer"; -VAL_ 64 AB_SB_Crash 0 "kein_Seiten_Crash_Beifahrer" 1 "Seiten_Crash_Beifahrer"; -VAL_ 64 AB_Rollover_Crash 0 "kein_Rollover" 1 "Rollover"; -VAL_ 64 AB_Crash_Int 0 "kein_Crash" 1 "Crash_Intensitaet_1" 2 "Crash_Intensitaet_2_(nur_Stellgliedtest_MLB_B8)" 3 "Crash_Intensitaet_2_(nur_D4_C7_Colorado_NF_PAG__Crash_im_MLB_B8)" 4 "Crash_Intensitaet_3_(alt_VW/AUDI__Stellgliedtest_MLB_B8)" 5 "Crash_Intensitaet_3_(alt_PAG)" 7 "Crash_Intensitaet_3"; -VAL_ 64 AB_Lampe 0 "Aus" 1 "Ein"; -VAL_ 64 AB_Deaktiviert 0 "aktiv" 1 "deaktiviert"; -VAL_ 64 AB_VB_deaktiviert 0 "Beifahrerairbag_aktiv" 1 "Beifahrerairbag_deaktiviert"; -VAL_ 64 AB_Systemfehler 0 "kein_Fehler" 1 "Airbag_Systemfehler"; -VAL_ 64 AB_Diagnose 0 "nicht_in_Diagnose" 1 "in_Diagnose"; -VAL_ 64 AB_Stellgliedtest 0 "nicht_im_Stellgliedtest" 1 "Airbag_im_Stellgliedtest"; -VAL_ 64 AB_Erh_Auf_VB 0 "keine_Anzeige" 1 "Beifahrerairbag_deaktiviert" 2 "Beifahrerairbag_aktiviert" 3 "nicht_definiert"; -VAL_ 64 AB_Gurtwarn_VF 0 "keine_Warnung" 1 "Gurtwarnung_ausloesen"; -VAL_ 64 AB_Gurtwarn_VB 0 "keine_Warnung" 1 "Gurtwarnung_ausloesen"; -VAL_ 64 AB_Anzeige_Fussg 0 "keine_FSG_Aktion_ausgeloest" 1 "Motorhaube_offen" 2 "Systemfehler"; -VAL_ 64 AB_Texte_AKS 0 "keine_AKS_Ausloesung" 1 "AKS_ausgeloest" 2 "AKS_Systemfehler"; -VAL_ 64 AB_MKB_gueltig 0 "Multikollisionsbremsung_nicht_freigeschaltet" 1 "Multikollisionsbremsung_freigeschaltet"; -VAL_ 64 AB_MKB_Anforderung 0 "Multikollisionsbremsung_nicht_angefordert" 1 "Multikollisionsbremsung_angefordert"; -VAL_ 64 AB_Versorgungsspannung 0 "plausibel" 1 "unplausibel"; -VAL_ 64 AB_Deaktivierung_HV 0 "keine_Deaktivierung" 1 "Deaktivierung_1" 2 "Deaktivierung_2" 3 "Deaktivierung_3" 4 "Deaktivierung_4" 5 "Deaktivierung_5" 6 "Deaktivierung_6" 7 "Fehler"; -VAL_ 64 AB_EDR_Trigger 0 "No_Event" 1 "Start_Event" 2 "NonDeployment_Event" 3 "Deployment_Event"; -VAL_ 64 AB_Belegung_VF 0 "nicht_verfuegbar" 1 "Fehler" 2 "nicht_belegt" 3 "belegt"; -VAL_ 64 SC_LowSpeedCrashErkannt 0 "kein_Crash_erkannt" 1 "Crash_Frontbereich_erkannt" 2 "Crash_Heckbereich_erkannt" 3 "Crash_Front_und_Heckbereich_erkannt"; -VAL_ 64 SC_Masterzeit 127 "Init"; -VAL_ 134 LWI_Sensorstatus 0 "iO" 1 "nicht kalibriert"; -VAL_ 134 LWI_QBit_Sub_Daten 0 "LWS-Subinfo real (Lenkradwinkelinformation ADS-tauglich)" 1 "LWS-Subinfo simuliert (Lenkradwinkelinformation nicht ADS-tauglich )"; -VAL_ 134 LWI_MFL_Abschaltung 0 "inaktiv" 1 "aktiv"; -VAL_ 134 LWI_QBit_Lenkradwinkel 0 "gültiger Wert" 1 "ausserhalb der Spezifikation"; -VAL_ 134 LWI_Lenkradwinkel 8190 "Init" 8191 "Fehler"; -VAL_ 134 LWI_VZ_Lenkradwinkel 0 "positiv_links_von_der_Nullstellung" 1 "negativ"; -VAL_ 134 LWI_VZ_Lenkradw_Geschw 0 "positiv_links_von_der_Nullstellung" 1 "negativ"; -VAL_ 134 LWI_Lenkradw_Geschw 510 "Init" 511 "Fehler"; -VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active" 8 "preempted"; -VAL_ 167 MO_Mom_Soll_Roh 1022 "Init"; -VAL_ 167 MO_Mom_Ist_Summe 1022 "Init"; -VAL_ 167 MO_Mom_Traegheit_Summe 1022 "Init"; -VAL_ 167 MO_Mom_Soll_gefiltert 1022 "Init"; -VAL_ 167 MO_Mom_Schub 510 "Init"; -VAL_ 167 MO_Status_Normalbetrieb_01 0 "kein_Normalbetrieb" 1 "Normalbetrieb_erreicht"; -VAL_ 167 MO_erste_Ungenauschwelle 0 "genau" 1 "Momente ungenauer >8%"; -VAL_ 167 MO_QBit_Motormomente 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 168 MO_Mom_neg_verfuegbar 510 "Init" 511 "Fehler"; -VAL_ 168 MO_Mom_Begr_stat 510 "Init"; -VAL_ 168 MO_Mom_Begr_dyn 1022 "Init"; -VAL_ 168 MO_QBit_Drehzahl_01 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 173 GE_MMom_Soll_02 1022 "keine_Anforderung_Init" 1023 "Fehler"; -VAL_ 173 GE_MMom_Vorhalt_02 1022 "Init" 1023 "Fehler"; -VAL_ 173 GE_Uefkt 1023 "Fehler"; -VAL_ 173 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; -VAL_ 173 GE_Schaltablauf 0 "keine_Schaltung" 1 "Momentenueberschneidung" 2 "Befuellphase" 3 "Drehzahlueberfuehrung"; -VAL_ 173 GE_Uefkt_unplausibel 0 "Uefkt_plausibel" 1 "Uefkt_unplausibel"; -VAL_ 173 GE_MMom_Status_02 0 "kein_Eingriff" 1 "abs_reduzierender_Eingriff_auf_Gesamt_Antrieb_nur_schneller_Pfad" 2 "abs_erhoehender_Eingriff_auf_Gesamt_Antrieb" 3 "relativer_Eingriff_auf_Gesamt_Antrieb" 4 "relativer_Eingriff_auf_E_Maschine" 5 "abs_red_Eingr_auf_Gesamt_Antrieb_nur_Luftpfad" 6 "abs_red_Eingr_auf_Gesamt_Antrieb_Luft-_und_schnellen_Pfad" 7 "abs_Eingriff_auf_Gesamtantrieb_erhoehend_und_reduzierend"; -VAL_ 173 GE_Status_Kraftschluss 0 "offen_kein_Kraftschluss" 1 "offen_mit_Kraftschluss" 2 "schlupfend_geregelt" 3 "abgesichert_offen_kein_Kraftschl" 4 "geschlossen_mit_Mikroschlupf" 5 "geschlossen_mit_Ueberanpressung" 6 "sonstige_Fehler" 7 "fehlerhaft_geschlossen"; -VAL_ 173 GE_MMom_Status 0 "keine Anforderung" 1 "reduzierender Getriebeeingriff" 2 "erhöhender Getriebeeingriff" 3 "Įderung mit Sprung"; -VAL_ 173 GE_Freig_MMom_Vorhalt 0 "nicht_freigegeben" 1 "freigegeben"; -VAL_ 173 GE_Verbot_Ausblendung 0 "kein_Verbot" 1 "Verbot"; -VAL_ 173 GE_Zielgang 0 "Gang P/N (ausgekuppelt)" 1 "Gang 1" 2 "Gang 2" 3 "Gang 3" 4 "Gang 4" 5 "Gang 5" 6 "Gang 6" 7 "Gang 7" 8 "Gang R" 11 "Gang 8" 12 "Gang 9" 13 "Gang10" 14 "Istgang nicht definiert" 15 "Fehler"; -VAL_ 184 EM1_Freigabe_Info_WFS 0 "ungueltig" 1 "gueltig"; -VAL_ 184 EM1_Sperr_Info_WFS 0 "nicht_gesperrt" 1 "gesperrt"; -VAL_ 184 EM1_AR_aktiv 0 "Init" 1 "Ruckeldaempfer_aktiv"; -VAL_ 184 EM1_Eta_Sys 510 "Init" 511 "Fehler"; -VAL_ 184 EM1_IstStrom 2046 "Init" 2047 "Fehler"; -VAL_ 184 EM1_Fehler_ElAntriebFreilauf_Anf 0 "Init" 1 "Fehler_EM_im_Freilauf"; -VAL_ 184 EM1_Abregelung_Temperatur 0 "Init" 1 "Abregelung_Temperatur"; -VAL_ 184 EM1_AnlernenElMotor_Anf 0 "kein_Diagnose_Request" 1 "Diagnose_Request"; -VAL_ 184 EM1_Moment_HVVerbraucher 1023 "Init"; -VAL_ 184 EM1_Freigabe_Verfallsinfo_WFS 0 "Aus" 1 "Ein"; -VAL_ 184 EM1_Parken_WFS_Status 0 "Limitierung_Inaktiv" 1 "Limitierung_Aktiv" 2 "Abbruch"; -VAL_ 184 EM1_HV_betriebsbereit 0 "Init" 1 "Ready_HV"; -VAL_ 190 Engine_Status 1 "Ready" 2 "Online"; -VAL_ 253 BR_Eingriffsmoment 1022 "Init" 1023 "Fehler"; -VAL_ 253 ESP_Diagnose 0 "ESP_nicht_in_Diagnose" 1 "ESP_in_Diagnose"; -VAL_ 253 ESC_v_Signal_Qualifier_High_Low 0 "Gueteschwelle_kleiner_1kmh" 1 "Gueteschwelle_kleiner_3kmh" 2 "Gueteschwelle_kleiner_5kmh" 3 "Gueteschwelle_kleiner_10kmh" 4 "Gueteschwelle_kleiner_20kmh" 5 "Gueteschwelle_groessergleich_20kmh" 6 "Init" 7 "Fehler"; -VAL_ 253 ESP_Vorsteuerung 0 "keine_Vorsteuerung_aktiv" 1 "Vorsteuerung_aktiv"; -VAL_ 253 OBD_Schlechtweg 0 "kein_Schlechtweg_erkannt" 1 "Schlechtweg_erkannt"; -VAL_ 253 OBD_QBit_Schlechtweg 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 253 ESP_v_Signal 65533 "Unterspannung" 65534 "Init" 65535 "Fehler"; -VAL_ 253 ASR_Tastung_passiv 0 "ASR_aktiviert" 1 "ASR_passiv_getastet_oder_Schwellen_geaendert"; -VAL_ 253 ESP_Tastung_passiv 0 "ESP_aktiviert" 1 "ESP_passiv_getastet_oder_Schwellen_geaendert"; -VAL_ 253 ESP_Systemstatus 0 "iO" 1 "Fehler"; -VAL_ 253 ASR_Schalteingriff 0 "keine_Anforderung" 1 "ASR_Schaltkennfeld" 2 "Rueckschaltung" 3 "Schaltverbot"; -VAL_ 253 ESP_QBit_v_Signal 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 253 ABS_Bremsung 0 "keine_ABS_Regelung" 1 "ABS_Regelung_aktiv"; -VAL_ 253 ASR_Anf 0 "keine_Anforderung" 1 "ASR_Anforderung"; -VAL_ 253 MSR_Anf 0 "keine Anfoderung" 1 "MSR-Anforderung"; -VAL_ 253 EBV_Eingriff 0 "kein_EBV_Eingriff" 1 "EBV_Eingriff"; -VAL_ 253 EDS_Eingriff 0 "kein_EDS_Eingriff" 1 "EDS_Eingriff"; -VAL_ 253 ESP_Eingriff 0 "kein_ESP_Eingriff" 1 "ESP_Eingriff_aktiv"; -VAL_ 253 ESP_ASP 0 "inaktiv" 1 "aktiv"; -VAL_ 253 ESC_Neutralschaltung 0 "keine_Anforderung" 1 "Neutralschaltung_angefordert"; -VAL_ 267 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault"; -VAL_ 278 ESP_QBit_Wegimpuls_VL 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 278 ESP_QBit_Wegimpuls_VR 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 278 ESP_QBit_Wegimpuls_HL 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 278 ESP_QBit_Wegimpuls_HR 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 278 ESP_Wegimpuls_VL 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; -VAL_ 278 ESP_Wegimpuls_VR 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; -VAL_ 278 ESP_Wegimpuls_HL 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; -VAL_ 278 ESP_Wegimpuls_HR 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; -VAL_ 278 ESP_VL_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; -VAL_ 278 ESP_VR_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; -VAL_ 278 ESP_HL_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; -VAL_ 278 ESP_HR_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; -VAL_ 299 GRA_Hauptschalter 0 "Hauptschalter_aus__Taster_nicht_betaetigt" 1 "Hauptschalter_ein__Taster_betaetigt"; -VAL_ 299 GRA_Abbrechen 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 299 GRA_Typ_Hauptschalter 0 "gerasteter_Lenkstockschalter" 1 "getasteter_Lenkstockschalter"; -VAL_ 299 GRA_Limiter 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 299 GRA_Tip_Setzen 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 299 GRA_Tip_Hoch 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 299 GRA_Tip_Runter 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 299 GRA_Tip_Wiederaufnahme 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 299 GRA_Verstellung_Zeitluecke 0 "Taste_nicht_betaetigt" 1 "Dist_minus_1" 2 "Dist_plus_1" 3 "Dist_Toggle"; -VAL_ 299 GRA_Codierung 0 "kein_Hebel" 1 "GRA_Hebel" 2 "ACC_Hebel" 3 "Limiter_Only"; -VAL_ 299 GRA_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 299 GRA_LIM_Taste_verfuegbar 0 "Limiter_Taste_nicht_vorhanden" 1 "Limiter_Taste_vorhanden"; -VAL_ 299 GRA_Tip_Stufe_2 0 "Tip_Stufe_1__keine_Betaetigung" 1 "Tip_Stufe_2"; -VAL_ 299 GRA_TravelAssist 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 317 LatCon_HCA_Status 0 "disabled" 1 "initializing" 2 "ready" 3 "fault" 4 "active" 5 "preempted" 6 "fault" 7 "rejected"; -VAL_ 319 PreCrash_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 319 PreCrash_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 319 PreCrash_Schiebedach_schliessen 0 "keine_Schliessung" 1 "Schliessung_angefordert"; -VAL_ 319 PreCrash_Fenster_schliessen 0 "keine_Schliessung" 1 "Schliessung_angefordert"; -VAL_ 319 PreCrash_Blinken 0 "keine_Blinkanforderung" 1 "Warnblinken" 2 "RECAS_Blinken" 3 "Notbremsblinken"; -VAL_ 319 SC_PreSense_FCWP 0 "Warnung_gilt_fuer_Objekte" 1 "Warnung_gitl_fuer_Fussgaenger"; -VAL_ 319 PreCrash_Tueren_Verriegeln 0 "keine_Anforderung" 1 "Tueren_Verriegeln"; -VAL_ 319 PreCrash_Anforderung_AFR 0 "keine_Anforderung" 1 "linke_Seite" 2 "rechte_Seite" 3 "Vorderachse" 4 "Hinterachse" 5 "Vorwarnung" 7 "Init"; -VAL_ 319 SC_PreCrash_LED 0 "keine_Anzeige" 1 "Stufe_1_glimmen" 2 "Stufe_2_leuchten" 3 "Stufe_3_blinken"; -VAL_ 319 PreCrash_FS_Pneumatik_ansteuern 0 "keine_Anforderung" 1 "Pneumatik_ansteuern"; -VAL_ 319 PreCrash_BFS_Pneumatik_ansteuern 0 "keine_Anforderung" 1 "Pneumatik_ansteuern"; -VAL_ 319 PreCrash_Fo_Pneumatik_ansteuern 0 "keine_Anforderung" 1 "Pneumatik_ansteuern"; -VAL_ 319 PreCrash_FS_Sitzlehne_verfahren 0 "keine_Anforderung" 1 "Sitzlehne_in_pos_x-Richtung_verfahren(vor)" 2 "Sitzlehne_in_neg_x-Richtung_verfahren(zurueck)" 3 "Sitzlehnenkopf_in_pos_x-Richtung_verfahren(vor)" 4 "Sitzlehnenkopf_in_neg_x-Richtung_verfahren(zurueck)" 6 "Lehnenverstellung_ansteuern" 7 "Lehnenkopfverstellung_ansteuern"; -VAL_ 319 PreCrash_BFS_Sitzlehne_verfahren 0 "keine_Anforderung" 1 "Sitzlehne_in_pos_x-Richtung_verfahren(vor)" 2 "Sitzlehne_in_neg_x-Richtung_verfahren(zurueck)" 3 "Sitzlehnenkopf_in_pos_x-Richtung_verfahren(vor)" 4 "Sitzlehnenkopf_in_neg_x-Richtung_verfahren(zurueck)" 6 "Lehnenverstellung_ansteuern" 7 "Lehnenkopfverstellung_ansteuern"; -VAL_ 319 PreCrash_Fo_Sitzlehne_verfahren 0 "keine_Anforderung" 1 "Sitzlehne_in_pos_x-Richtung_verfahren(vor)" 2 "Sitzlehne_in_neg_x-Richtung_verfahren(zurueck)" 3 "Sitzlehnenkopf_in_pos_x-Richtung_verfahren(vor)" 4 "Sitzlehnenkopf_in_neg_x-Richtung_verfahren(zurueck)"; -VAL_ 319 PreCrash_FS_KSV_verfahren 0 "keine_Anforderung" 1 "in_pos_x-Richtung_verfahren" 2 "in_neg_x-Richung_verfahren" 3 "in_pos_z-Richtung_verfahren" 4 "in_neg_z-Richtung_verfahren" 5 "in_pos_x-Richtung_und_neg_z-Richtung_verfahren" 6 "in_pos_x_Richtung_und_pos_z-Richtung_verfahren" 7 "in_neg_x-Richtung_und_neg_z-Richtung_verfahren" 8 "in_neg_x-Richtung_und_pos_z-Richtung_verfahren" 9 "Kopfstuetze_ansteuern"; -VAL_ 319 PreCrash_BFS_KSV_verfahren 0 "keine_Anforderung" 1 "in_pos_x-Richtung_verfahren" 2 "in_neg_x-Richung_verfahren" 3 "in_pos_z-Richtung_verfahren" 4 "in_neg_z-Richtung_verfahren" 5 "in_pos_x-Richtung_und_neg_z-Richtung_verfahren" 6 "in_pos_x_Richtung_und_pos_z-Richtung_verfahren" 7 "in_neg_x-Richtung_und_neg_z-Richtung_verfahren" 8 "in_neg_x-Richtung_und_pos_z-Richtung_verfahren" 9 "Kopfstuetze_ansteuern"; -VAL_ 319 PreCrash_Fo_KSV_verfahren 0 "keine_Anforderung" 1 "in_pos_x-Richtung_verfahren" 2 "in_neg_x-Richung_verfahren" 3 "in_pos_z-Richtung_verfahren" 4 "in_neg_z-Richtung_verfahren" 5 "in_pos_x-Richtung_und_neg_z-Richtung_verfahren" 6 "in_pos_x_Richtung_und_pos_z-Richtung_verfahren" 7 "in_neg_x-Richtung_und_neg_z-Richtung_verfahren" 8 "in_neg_x-Richtung_und_pos_z-Richtung_verfahren"; -VAL_ 319 SC_PreCrash_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung" 7 "Basiseingriff" 8 "Heckeingriff"; -VAL_ 319 SC_PreCrash_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "Anhaengerbetrieb" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt" 8 "zurzeit_eingeschraenkt_ESP_Aus" 9 "Initialisierung"; -VAL_ 333 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert"; -VAL_ 333 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 333 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler"; -VAL_ 333 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler"; -VAL_ 333 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren"; -VAL_ 333 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht"; -VAL_ 333 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert"; -VAL_ 333 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System"; -VAL_ 333 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv"; -VAL_ 333 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler"; -VAL_ 333 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe"; -VAL_ 333 Accel_Boost 3 "Driving" 0 "Stop" 2 "Driving" 1 "Driving"; -VAL_ 339 MO_HVEM_Eskalation 0 "keine_Eskalation_HVEM" 1 "Eskalation_HVEM"; -VAL_ 339 MO_ErwGrenzen_Anf 0 "normal" 1 "erweitert"; -VAL_ 339 MO_Fehler_Notentladung_Anf 0 "Init"; -VAL_ 339 MO_HVEM_MaxLeistung 510 "Init"; -VAL_ 339 MO_HVK_EmIstzustand 0 "HvOff" 1 "HvStbyReq" 2 "HvStbyOk" 3 "HvBattOnReq" 4 "HvBattOnOk" 10 "HvOnIdle" 18 "HvOnDrvReq" 19 "HvOnDrvOk" 20 "HvOnDrvRdy" 28 "HvStepUpReq" 29 "HvStepUpOk" 30 "HvStepUp" 38 "HvStepDownReq" 39 "HvStepDownOk" 40 "HvStepDown" 46 "HvAcChPreReq" 47 "HvAcChPreOk" 48 "HvAcChReq" 49 "HvAcChOk" 50 "HvAcCh" 56 "HvDcChPreReq" 57 "HvDcChPreOk" 58 "HvDcChReq" 59 "HvDcChOk" 60 "HvDcCh" 67 "HvChOffReq" 68 "HvChOffOk" 69 "HvOnIdleReq" 70 "HvOnIdleOk" 96 "HvCpntOffReq" 97 "HvCpntOffOk" 98 "HvBattOffReq" 99 "HvBattOffOk" 109 "HvDcDcFailOffReq" 110 "HvDcDcFail" 119 "HvElmOffReq" 120 "HvElmOff" 126 "HvFailCpntOffReq" 127 "HvFailCpntOffOk" 128 "HvFailBattOffReq" 129 "HvFailBattOffOk" 130 "HvFailBattOff" 138 "HvFailUCtlReq" 139 "HvFailUCtlOk" 140 "HvFailUCtl" 150 "HvEmgcyOff" 255 "Init"; -VAL_ 339 MO_HVK_AntriebFehlerstatus 0 "Komponente_IO" 6 "Keine_Komponentenfunktion" 7 "Init"; -VAL_ 339 MO_MVK_Bordnetz_Anf 0 "keine_Anforderung" 1 "Bordnetzaktivitaet_gefordert"; -VAL_ 339 MO_HVK_AntriebZustand 0 "Antrieb_AUS" 1 "Antrieb_Startphase" 2 "E_Fahren" 3 "Hybrid_Fahren" 7 "Init"; -VAL_ 339 MO_HVK_EmFehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Teilbetrieb" 3 "Eingeschr_KompFkt_Interlock" 6 "Keine_Komponentenfunktion" 7 "Init"; -VAL_ 339 MO_MVK_AntriebFehlerstatus 0 "Komponente_IO" 6 "Keine_Komponentenfunktion" 7 "Init"; -VAL_ 339 MO_MVK_AntriebZustand 0 "Antrieb_AUS" 1 "Antrieb_Startphase" 2 "FreilaufMotorAus" 7 "Init"; -VAL_ 339 MO_MVK_EmFehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Teilbetrieb" 6 "Keine_Komponentenfunktion" 7 "Init"; -VAL_ 339 MO_MVK_EmIstzustand 0 "MvOff" 1 "MvStbyReq" 2 "MvStbyOk" 3 "MvBattOnReq" 4 "MvBattOnOk" 10 "MvOnIdle" 18 "MvOnDrvReq" 19 "MvOnDrvOk" 20 "MvOnDrv" 28 "MvStepUpReq" 29 "MvStepUpOk" 30 "MvStepUp" 38 "MvStepDownReq" 39 "MvStepDownOk" 40 "MvStepDown" 96 "MvCpntOffReq" 97 "MvCpntOffOk" 98 "MvBattOffReq" 99 "MvBattOffOk" 109 "MvDcDcFailOffReq" 110 "MvDcDcFail" 119 "MvElmFailOffReq" 120 "MvElmFail" 126 "MvFailCpntOffReq" 127 "MvFailCpntOffOk" 128 "MvFailBattOffReq" 129 "MvFailBattOffOk" 130 "MvFailBattOff" 138 "MvFailUCtlReq" 139 "MvFailUCtlOk" 140 "MvFailUCtl" 150 "MvEmgcyOff" 255 "Init"; -VAL_ 420 EA_Parken_beibehalten_HMS 0 "Parken_nicht_beibehalten" 1 "Parken_beibehalten" 2 "Init" 3 "Fehler"; -VAL_ 420 EA_Warnruckprofil 0 "keine_Ruckanforderung" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7"; -VAL_ 420 EA_eCall_Anf 0 "Keine_Anforderung" 1 "Ausloesen_eCall"; -VAL_ 420 EA_Funktionsstatus 0 "EA_INIT" 1 "EA_OFF" 2 "EA_STANDBY" 3 "EA_PHASE0_AKTIV" 4 "EA_PHASE1_AKTIV" 5 "EA_PHASE2_AKTIV" 6 "EA_PHASE3_AKTIV" 7 "EA_REVERSIBLER_FEHLER" 8 "EA_IRREVERSIBLER_FEHLER"; -VAL_ 420 EA_Gurtstraffer_Anf 0 "Keine_Anforderung" 1 "Haptik_1" 2 "Haptik_2" 3 "Haptik_3"; -VAL_ 420 EA_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" 6 "Parken_mit_P"; -VAL_ 420 EA_Sollbeschleunigung 2046 "Neutralwert" 2047 "Fehler"; -VAL_ 496 EA_Texte 0 "keine_Anzeige" 1 "Nothalteassistent_fehlende_Fahreraktivitaet" 2 "Nothalteassistent_aktiv_Fahrzeugfuehrung_uebernehmen" 3 "Nothalteassistent_automatischer_Nothalt_wird_durchgefuehrt" 4 "Nothalteassistent_automatischer_Nothalt_durchgefuehrt" 5 "Nothalteassistent_Verbindung_zum_Notruf_wird_aufgebaut" 6 "Nothalteassistent_deaktiviert" 7 "Nothalteassistent_Eingriff_abgebrochen" 8 "Nothalteassistent_fehlende_Fahreraktivitaet_2" 9 "Sekundenschlaf_erkannt" 10 "LaneAssist_Lenkung_uebernehmen" 11 "ACA_Fahrzeugfuehrung_uebernehmen" 12 "EA_Fahr_Standstreifenwechsel" 14 "Nothalteassistent_nicht_verfuegbar_reversibel" 15 "Nothalteassistent_Stoerung_irreversibel"; -VAL_ 496 ACF_Lampe_Hands_Off 0 "keine_Anzeige" 1 "Hands_Off_erkannt"; -VAL_ 496 EA_Infotainment_Anf 0 "Init" 1 "Keine_Absenkung" 2 "Absenkung" 3 "Mute"; -VAL_ 496 EA_Tueren_Anf 0 "Keine_Anforderung" 1 "Tueren_entriegeln"; -VAL_ 496 EA_Innenraumlicht_Anf 0 "Innenraumbeleuchtung_ausschalten" 1 "Innenraumbeleuchtung_einschalten"; -VAL_ 496 zFAS_Warnblinken 0 "Aus" 1 "Statisch" 2 "Taster" 3 "Statisch_ohne_WBT"; -VAL_ 496 STP_Primaeranz 0 "keine_Anzeige" 1 "Verfuegbar" 2 "Aktiv" 3 "Uebernahme" 4 "Aktiv_Warnung" 5 "Nicht_Verfuegbar"; -VAL_ 496 EA_Bremslichtblinken 0 "kein_Blinken" 1 "Anforderung_Bremslichtblinken"; -VAL_ 496 EA_Blinken 0 "Kein_Blinken" 1 "Wechselblinken_links" 2 "Wechselblinken_rechts" 3 "Warnblinken" 4 "Warnblinken_Taster"; -VAL_ 591 Distance_Status 0 "Valid" 3 "Invalid"; -VAL_ 619 Travel_Assist_Status 4 "enabled" 0 "disabled" 2 "ready" 3 "pre_ready"; -VAL_ 619 Travel_Assist_Request 4 "enable" 3 "disable" 0 "no_request" 1 "error"; -VAL_ 619 Travel_Assist_Available 0 "not_available" 1 "available"; -VAL_ 706 MO_Anzeige_StSt_Text 0 "keine_Anzeige" 1 "Systemfehler" 2 "Motor_manuell_starten" 3 "Rueckmeldung_durch_Fahrstufe_einlegen" 4 "Zuendungsabschaltwarnung_Timerstart" 5 "Zum_Motorstart_Bremse_treten" 6 "StSt_Aktivierung_nicht_moeglich_auf_Grund_Fahrprogramm"; -VAL_ 706 MO_Anzeige_StSt_Symbol 0 "keine_Anzeige" 1 "StSt_aktiv" 2 "Motorlauf_noetig" 3 "Fahrer_temporaer_abwesend" 4 "Fahrer_vielleicht_anwesend"; -VAL_ 706 MO_ADR_Status 0 "nicht_aktiv" 1 "ADR_angefordert" 2 "ADR_aktiv" 3 "ADR_Fehler"; -VAL_ 706 MO_AGA_Sound_Texte 0 "keine_Anzeige" 1 "Sound_off" 2 "Sound_on"; -VAL_ 706 MO_Anzeige_FMAus_Text 0 "keine_Anzeige" 1 "FMAus_Systemfehler"; -VAL_ 706 MO_Fehler_MSpG 0 "i.O." 1 "Gebl䳥 defekt oder Motorraumtemp. zu hoch"; -VAL_ 706 PEA_Texte 0 "Keine_Anzeige" 1 "PEA_Fahreruebernahme_noetig" 2 "PEA_Reku_nicht_verfuegbar"; -VAL_ 706 TSK_Ueberstimmt_vMax_FahrerInfo 0 "nicht_ueberstimmbar" 1 "ueberstimmbar" 2 "ueberstimmt"; -VAL_ 706 MO_Avus_Motorschutz 0 "keine Warnung" 1 "Drehzahlwarnung Stufe 1" 2 "Drehzahlwarnung Stufe 2" 3 "Drehzahlwarnung Stufe 3"; -VAL_ 706 MO_Rekuperationsstufe 0 "keine_Anzeige" 1 "Rekuperationsstufe_1" 2 "Rekuperationsstufe_2" 3 "Rekuperationsstufe_3" 4 "Rekuperationsstufe_4" 5 "Rekuperationsstufe_5" 6 "Rekuperationsstufe_auto" 7 "Init"; -VAL_ 706 TSK_Einheit_vMax_FahrerInfo 0 "km_h" 1 "mph"; -VAL_ 706 TSK_Status_vMax_FahrerInfo 0 "keine_Anzeige" 1 "Anzeige_im_Fahrzeugstatus" 2 "PopUp_ohne_Gong__Eintrag_FhzStat" 3 "PopUp_mit_Gong__Eintrag_FhzStat"; -VAL_ 706 MO_Red_Fahrleistung 0 "keine_Anzeige" 1 "kleine_Red" 2 "mittlere_Red_temp" 3 "mittlere_Red" 4 "grosse_Red_temp" 5 "grosse_Red"; -VAL_ 706 MO_Anz_Kuehlerluefter 0 "Kein_KuehlerluefterNachlauf" 1 "Text_Luefternachlauf_aktiv" 2 "Text_Luefternachlauf_DPF_aktiv" 3 "Platzhalter_weitere_Signale" 4 "Platzhalter_weitere_Signale" 5 "Platzhalter_weitere_Signale" 6 "Platzhalter_weitere_Signale" 7 "Platzhalter_weitere_Signale"; -VAL_ 706 MO_im_Leerlauf 0 "nicht_im_Leerlauf" 1 "im_Leerlauf"; -VAL_ 706 WIV_Enable_Oeldr_Motor 0 "Oeldruckauswertung_im_Kombi" 1 "Oeldruckauswertung_im_MSG"; -VAL_ 706 MO_OelMessung_Dauer 15 "keine_Messung_aktiv"; -VAL_ 706 TSK_vMax_FahrerInfo 0 "Init___kein_Wert"; -VAL_ 768 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw"; -VAL_ 768 ACC_Wunschgeschw_Farbe 0 "Grundfarbe" 1 "Farbe_1"; -VAL_ 768 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung"; -VAL_ 768 ACA_Querfuehrung 0 "keine_Anzeige_oder_init" 1 "passiv" 2 "aktiv" 3 "Warnung"; -VAL_ 768 ACC_Regelung_AIO 0 "Regelung_Ampel_nicht_aktiv" 1 "Regelung_Ampel_aktiv"; -VAL_ 768 ACC_Wunschgeschw_02 1023 "keine_Anzeige"; -VAL_ 768 ACC_Abstandsindex_02 0 "Audi (Init), VW (passiv/aktiv_Freifahrt)" 1022 "aus_passiv" 1023 "aktiv_Freifahrt"; -VAL_ 768 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio"; -VAL_ 768 ACC_rel_Objekt_Zusatzanz 0 "keine Anzeige" 1 "Relevantes_Objekt_erkannt" 2 "Relevantes_Objekt_Abstandswarnung"; -VAL_ 768 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert"; -VAL_ 768 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN"; -VAL_ 768 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis"; -VAL_ 768 ACC_EGO_Fahrzeug 0 "keine_Anzeige" 1 "aktiv" 2 "Warnung" 3 "aktiv_stop" 4 "passiv"; -VAL_ 768 ACC_Relevantes_Objekt_02 0 "keine_Anzeige" 1 "Relevantes_Objekt_erkannt" 2 "Relevantes_Objekt_Warnung" 3 "passiv"; -VAL_ 768 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht"; -VAL_ 768 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert"; -VAL_ 768 ACC_Texte_Primaeranz_02 0 "keine Anzeige" 1 "VDA_ACC_Symbol_YYY_kmh_mph" 2 "Kurven_Symbol_YYY_kmh_mph" 3 "Tempolimit_Symbol_YYY_kmh_mph" 4 "ACC_anfahrbereit" 5 "eingestellte_Zeitluecke" 6 "Tuer offen !" 7 "Stehendes Objekt voraus" 8 "o o o" 9 "ACC aus" 10 "ACC startet" 11 "ACC Sensor Sicht !" 12 "ACC nicht verfuegbar" 13 "ACC Fehler" 14 "ESP Eingriff" 15 "ESP PASSIV !" 16 "Parkbremse !" 17 "Geschwindigkeitsgrenze" 18 "Waehlhebelposition !" 19 "Fahrer Gurtschloss offen !" 20 "Schalthebelposition !" 21 "Drehzahl !" 22 "HDC aktiv" 23 "Kupplung betaetigt" 24 "Gang einlegen !" 25 "Bremse ueberhitzt !" 26 "Steigung_Gefaelle_zu_gross" 27 "ABSTAND" 28 "Rechtsueberholen_verhindert" 29 "Linksueberholen_verhindert" 30 "Kreuzungs_Symbol" 31 "Kreisverkehr_Symbol" 32 "Gefaelle_Symbol" 33 "Tempolimit_Kurvenassistent_ein" 34 "Kurvenassistent_ein" 35 "Tempolimitassistent_ein" 36 "Achtung_Geschwindigkeitsueberschreitung" 37 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar" 38 "Tempolimit_nicht_verfuegbar" 39 "Kurvenassistent_nicht_verfuegbar" 40 "Autobahnausfahrt_Symbol" 41 "Stauende_Symbol" 42 "Engstelle_Symbol" 43 "STP_verfuegbar" 44 "Ampel_vertikal" 45 "Ampel_horizontal" 46 "STA_verfuegbar"; -VAL_ 768 ACC_Texte_Zusatzanz_02 0 "keine_Anzeige" 1 "ACC_AUS" 2 "Standby" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_5" 10 "DISTANZ_1__dyn" 11 "DISTANZ_2__dyn" 12 "DISTANZ_3__dyn" 13 "DISTANZ_4__dyn" 14 "DISTANZ_5__dyn" 15 "DISTANZ_1__comf" 16 "DISTANZ_2__comf" 17 "DISTANZ_3__comf" 18 "DISTANZ_4__comf" 19 "DISTANZ_5__comf" 20 "DISTANZ_1__efficiency" 21 "DISTANZ_2__efficiency" 22 "DISTANZ_3__efficiency" 23 "DISTANZ_4__efficiency" 24 "DISTANZ_5__efficiency" 25 "DISTANZ_1__Stau" 26 "DISTANZ_2__Stau" 27 "DISTANZ_3__Stau" 28 "DISTANZ_4__Stau" 29 "DISTANZ_5__Stau" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanzeige_Warnung_aktiviert" 33 "STA_verfuegbar" 34 "Engstelle" 35 "RUV_aktiv_Rechtsverkehr" 36 "RUV_aktiv_Linksverkehr" 37 "STP_Verfuegbar" 38 "AW_Warnschwelle_1" 39 "AW_Warnschwelle_2" 40 "AW_Warnschwelle_3" 41 "AW_Warnung_1" 42 "AW_Warnung_2" 43 "AW_Warnung_3"; -VAL_ 768 STA_Primaeranz 0 "keine_Anzeige" 1 "STA_standby" 2 "STA_aktiv" 3 "STA_Warnung"; -VAL_ 768 Heartbeat 1 "ACC_Init_Low" 420 "ACC_Init_High" 221 "ACC_Available_Low" 360 "ACC_Available_High"; -VAL_ 768 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System"; -VAL_ 768 Lead_Type_Detected 1 "Lead_Detected" 0 "No_Lead_Detected"; -VAL_ 768 Lead_Type 5 "Bicycle" 3 "Car" 0 "None" 2 "Truck" 4 "Motorcycle"; -VAL_ 768 ACC_Events 3 "Starting_Available" 0 "None" 5 "Speed_Limit_Camera" 9 "Street_Type" 4 "Speed_Limit_in_Nav"; -VAL_ 768 Zeitluecke_1 0 "keine Anzeige"; -VAL_ 768 Zeitluecke_2 0 "keine Anzeige" 32 "Minimum"; -VAL_ 768 Zeitluecke_3 0 "keine Anzeige"; -VAL_ 768 Zeitluecke_4 0 "keine Anzeige" 40 "Minimum"; -VAL_ 768 Zeitluecke_5 0 "keine Anzeige"; -VAL_ 795 ESP_Lampe 0 "Aus" 1 "Ein"; -VAL_ 795 ABS_Lampe 0 "Aus" 1 "Ein"; -VAL_ 795 BK_Lampe_02 0 "aus" 1 "ein_statisch" 3 "Warnung"; -VAL_ 795 TC_Lampe 0 "Aus" 1 "Ein"; -VAL_ 795 ESP_m_Raddrehz 32765 "Unterspannung" 32766 "Init" 32767 "Fehler"; -VAL_ 795 ESP_Textanzeigen_03 0 "kein_Text" 1 "ESP_Stoerung" 2 "ABS_Stoerung" 3 "ESP_ABS_Stoerung" 4 "Werkstatt_Bremse" 5 "ASR_Stoerung" 6 "ESP_switched_off" 7 "ASR_off" 8 "ESP_ASR_on" 10 "keine_Bremskraftverstaerkung" 11 "ASR_aktiviert" 12 "ABS_ASR_Stoerung" 15 "ESP_offroad" 17 "ESP_sport" 18 "ESP_Zwangsaktivierung" 19 "ESP_Taster_Info" 20 "TC_aktiv" 21 "reserviert_fuer_Verlwarn" 22 "TC_switched_off" 23 "Verlwarn_akt_Rollsicher_inakt" 24 "ESP_SuperSport" 25 "ESP_Offroad_nicht_verfuegbar"; -VAL_ 795 ESP_Meldungen 0 "keine_Anzeige" 1 "Autohold_Hinweis_1" 2 "Stoerung_Autohold" 3 "Stoerung_Hillholder" 4 "Uebernehmen" 5 "Autohold_aus" 6 "Autohold_Hinweis_2"; -VAL_ 795 ESP_Fehlerstatus_Wegimp 0 "Wegimpulse_iO" 1 "Fehler"; -VAL_ 795 ESP_Wegimp_Ueberlauf 0 "Reset_und_kein_Ueberlauf" 1 "mindestens_1x_Ueberlauf"; -VAL_ 795 ESP_QBit_Wegimp_VA 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 795 ESP_HDC_Geschw_Farbe 0 "Standard_Farbe" 1 "abweichende_Farbe"; -VAL_ 795 ESP_Off_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 795 ESP_HDC_Regelgeschw 0 "nicht_verbaut" 125 "HDC_Standby" 126 "Init" 127 "Fehler"; -VAL_ 795 ESP_BKV_Warnung 0 "keine_Anzeige" 1 "keine_Bremskraftverstaerkung"; -VAL_ 817 MFL_Lokalaktiv 0 "war_nicht_lokal_aktiv" 1 "war_lokal_aktiv"; -VAL_ 817 MFL_M_Taste 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 817 MFL_Paddle_Verbau 0 "verbaut" 1 "nicht_verbaut"; -VAL_ 817 MFL_Tastencode_1 0 "Key_Released__No_Key" 1 "Context_Menu" 2 "Menu_Up__Next_Screen" 3 "Menu_Down__Previous_Screen" 4 "Up" 5 "Down" 6 "Up__Down_ThumbWheel" 7 "OK__ThumbWheel_Button" 8 "Cancel__Escape" 9 "Main_Menu" 10 "Side_Menu_left" 11 "Side_Menu_right" 12 "FAS_Menu" 13 "Left__Right_ThumbWheel" 14 "FAS_Menu_ThumbWheel" 16 "Volume_Up" 17 "Volume_Down" 18 "Volume_Up__Down_ThumbWheel" 19 "Volume_ThumbWheel_Button" 20 "Audio_Source" 21 "Arrow_A_Up__Right" 22 "Arrow_A_Down__Left" 23 "Arrow_B_Up__Right" 24 "Arrow_B_Down__Left" 25 "PTT__PushToTalk" 26 "PTT_Cancel" 27 "Route_Info" 28 "Hook" 29 "Hang_Up" 30 "Off_Hook" 31 "Light_On__Off" 32 "Mute" 33 "Joker1" 34 "Joker2" 35 "View" 36 "Arrow_A_Up__Down_ThumbWheel" 37 "Lenkradheizung" 38 "Rekuperation" 39 "Tube_Toggle" 40 "DRS_Drag_Reduction_System" 41 "Stopwatch_Start_Stop" 42 "Stopwatch_Nextlap" 100 "MAP" 101 "MAP_Boost" 102 "Turn_signal_left" 103 "Turn_signal_right" 104 "Turn_signal_off" 105 "Flashlight" 106 "Highbeam" 107 "Washer_button" 108 "Wiper_button_left" 109 "Wiper_button_right" 110 "Wiper_button_cancel" 111 "Exhaust_Sound" 112 "Drive_Select_button" 113 "Sport_button" 114 "ESP_Drift_Selection_ThumbWheel" 115 "PTT_special_vehicle" 116 "TravelAssist" 117 "Launch_Control" 118 "Drift_Mode_Button_Increase" 119 "Drift_Mode_Button_Decrease" 120 "Drift_Mode_Button_Select" 121 "Drive_Mode_Button_Increase" 122 "Drive_Mode_Button_Decrease" 123 "Drive_Mode_Button_Select" 124 "E_Boost_Button_Increase" 125 "E_Boost_Button_Decrease" 126 "E_Boost_Button_Select" 127 "PerformanceHybridButton_Increase" 128 "PerformanceHybridButton_Decrease" 129 "EV_Mode_Button" 130 "HUD_Button" 131 "PASM_Wheel" 132 "PASM_Button" 133 "PTV_Wheel" 134 "PTV_Button" 135 "TC_ESC_Wheel" 136 "TC_ESC_Button" 240 "Startup_Reset" 241 "Initialization"; -VAL_ 817 MFL_Tastencode_2 0 "Key_Released__No_Key" 1 "Context_Menu" 2 "Menu_Up__Next_Screen" 3 "Menu_Down__Previous_Screen" 4 "Up" 5 "Down" 6 "Up__Down_ThumbWheel" 7 "OK__ThumbWheel_Button" 8 "Cancel__Escape" 9 "Main_Menu" 10 "Side_Menu_left" 11 "Side_Menu_right" 12 "FAS_Menu" 13 "Left__Right_ThumbWheel" 14 "FAS_Menu_ThumbWheel" 16 "Volume_Up" 17 "Volume_Down" 18 "Volume_Up__Down_ThumbWheel" 19 "Volume_ThumbWheel_Button" 20 "Audio_Source" 21 "Arrow_A_Up__Right" 22 "Arrow_A_Down__Left" 23 "Arrow_B_Up__Right" 24 "Arrow_B_Down__Left" 25 "PTT__PushToTalk" 26 "PTT_Cancel" 27 "Route_Info" 28 "Hook" 29 "Hang_Up" 30 "Off_Hook" 31 "Light_On__Off" 32 "Mute" 33 "Joker1" 34 "Joker2" 35 "View" 36 "Arrow_A_Up_Right_Down_Left_ThumbWheel" 37 "Lenkradheizung" 38 "Rekuperation" 39 "Tube_Toggle" 40 "DRS_Drag_Reduction_System" 41 "Stopwatch_Start_Stop" 42 "Stopwatch_Nextlap" 100 "MAP" 101 "MAP_Boost" 102 "Turn_signal_left" 103 "Turn_signal_right" 104 "Turn_signal_off" 105 "Flashlight" 106 "Highbeam" 107 "Washer_button" 108 "Wiper_button_left" 109 "Wiper_button_right" 110 "Wiper_button_cancel" 111 "Exhaust_Sound" 112 "Drive_Select_button" 113 "Sport_button" 114 "ESP_Drift_Selection_ThumbWheel" 115 "PTT_special_vehicle" 116 "TravelAssist" 117 "Launch_Control" 118 "Drift_Mode_Button_Increase" 119 "Drift_Mode_Button_Decrease" 120 "Drift_Mode_Button_Select" 121 "Drive_Mode_Button_Increase" 122 "Drive_Mode_Button_Decrease" 123 "Drive_Mode_Button_Select" 124 "E_Boost_Button_Increase" 125 "E_Boost_Button_Decrease" 126 "E_Boost_Button_Select" 127 "PerformanceHybridButton_Increase" 128 "PerformanceHybridButton_Decrease" 129 "EV_Mode_Button" 130 "HUD_Button" 131 "PASM_Wheel" 132 "PASM_Button" 133 "PTV_Wheel" 134 "PTV_Button" 135 "TC_ESC_Wheel" 136 "TC_ESC_Button" 240 "Startup_Reset" 241 "Initialization"; -VAL_ 817 MFL_Eventcode_1 0 "W_no_event____T_no_event" 1 "W_1_Tick_up__T_pressed_normal" 2 "W_2_Ticks_up__T_touched" 3 "W_3_Ticks_up__T_double_click_nor" 4 "W_4_Ticks_up__T_long_press_nor_1" 5 "W_5_Ticks_up__T_long_press_nor_2" 6 "W_6_Ticks_up__T_long_press_nor_3" 7 "W_7_Ticks_up" 9 "W_7_Ticks_dn__T_pressed_strong" 10 "W_6_Ticks_dn" 11 "W_5_Ticks_dn__T_double_click_str" 12 "W_4_Ticks_dn__T_long_press_str_1" 13 "W_3_Ticks_dn__T_long_press_str_2" 14 "W_2_Ticks_dn__T_long_press_str_3" 15 "W_1_Tick_dn"; -VAL_ 817 MFL_Eventcode_2 0 "W_no_event____T_no_event" 1 "W_1_Tick_up__T_pressed_normal" 2 "W_2_Ticks_up__T_touched" 3 "W_3_Ticks_up__T_double_click_nor" 4 "W_4_Ticks_up__T_long_press_nor_1" 5 "W_5_Ticks_up__T_long_press_nor_2" 6 "W_6_Ticks_up__T_long_press_nor_3" 7 "W_7_Ticks_up" 9 "W_7_Ticks_dn__T_pressed_strong" 10 "W_6_Ticks_dn" 11 "W_5_Ticks_dn__T_double_click_str" 12 "W_4_Ticks_dn__T_long_press_str_1" 13 "W_3_Ticks_dn__T_long_press_str_2" 14 "W_2_Ticks_dn__T_long_press_str_3" 15 "W_1_Tick_dn"; -VAL_ 817 MFL_Marke 0 "VW" 1 "Audi" 2 "Seat" 3 "Skoda" 4 "VW_Nutzf" 5 "Bugatti" 6 "Lamborghini" 7 "Bentley" 8 "Rolls Royce" 9 "Quattro" 10 "kein_Hersteller_1" 11 "kein_Hersteller_2" 12 "kein_Hersteller_3" 13 "kein_Hersteller_4" 14 "Ford" 15 "Porsche"; -VAL_ 817 MFL_Tip_Down 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 817 MFL_Tip_Up 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 817 MFL_SatModul_links_Err 0 "kein_Fehler" 1 "Fehler"; -VAL_ 817 MFL_SatModul_rechts_Err 0 "kein_Fehler" 1 "Fehler"; -VAL_ 817 MFL_LR_HZG_Status 0 "inaktiv" 1 "aktiv"; -VAL_ 817 MFL_LR_HZG_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_Signalhorn 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 817 MFL_Signalhorn_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_Tip_links_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_Tip_rechts_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_Taste_links_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_Taste_rechts_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_ECU_Err 0 "normal" 1 "Fehler"; -VAL_ 817 MFL_Response_Err 0 "normal" 1 "Fehler"; -VAL_ 850 Parken_SM_03_MUX 0 "MUX_Gruppe_Punktinfo_0" 1 "MUX_Gruppe_Punktinfo_1" 2 "MUX_Gruppe_Punktinfo_2" 3 "MUX_Gruppe_Punktinfo_3" 4 "MUX_Gruppe_Punktinfo_4" 5 "MUX_Gruppe_Punktinfo_5" 6 "MUX_Gruppe_Punktinfo_6"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_00 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_01 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_02 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_03 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_04 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_05 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 850 Parken_SM_03_Traj_Trans_ID_06 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; -VAL_ 869 NVEM_Pilot_Info 0 "Init" 1 "keine_Einschraenkung" 2 "Veto_1" 3 "Veto_2"; -VAL_ 869 NVEM_P_Generator_Status 0 "gefiltert" 1 "ungefiltert"; -VAL_ 869 BEM_P_Generator 255 "Fehler"; -VAL_ 869 BEM_n_LLA 0 "keine_Erhoehung" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; -VAL_ 869 BEM_Anf_KL 0 "keine Anforderung" 1 "Anforderung Kühlerlüfter Ansteuerung"; -VAL_ 869 BEM_StartStopp_Info 0 "Motorlauf_nicht_notwendig_(Stoppfreigabe)" 1 "Motoranlauf_nicht_zwingend_notwendig_(Stoppverbot,keine_Startanforderung)" 2 "Motoranlauf_zwingend_notwendig_(Startanforderung)" 3 "Systemfehler"; -VAL_ 869 BEM_Batt_Ab 0 "verbunden" 1 "nicht_verbunden"; -VAL_ 869 BEM_Hybrid_Info 0 "keine_Einschraenkung_durch_Energiemanagement" 1 "Motorstart_ueber_12V_Starter_nur_bei_0kmh_moeglich" 2 "kein_Motorstart_ueber_12V_Starter_nach_el_Fahrtbetrieb" 3 "Systemfehler"; -VAL_ 869 NVEM_Red_KL 0 "Init" 1 "Abschaltung_KL" 2 "Reduzierung_KL"; -VAL_ 869 NVEM_Freilauf_Info 0 "Freilauf_freigegeben" 1 "Weiches_Veto_uebertippbar" 2 "Hartes_Veto_Abbruch" 3 "Freilauf_Anforderung"; -VAL_ 869 BEM_HYB_DC_uMinLV 254 "Init" 255 "Fehler"; -VAL_ 870 BM_ZV_auf 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_ZV_zu 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_DWA_ein 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_DWA_Alarm 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Crash 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Panik 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Not_Bremsung 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_GDO 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Warnblinken 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Taxi_Notalarm 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Telematik 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_links 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_rechts 0 "inaktiv" 1 "aktiv"; -VAL_ 870 Blinken_li_Fzg_Takt 0 "Blinker_links_ausgeschaltet" 1 "Blinker_links_eingeschaltet"; -VAL_ 870 Blinken_re_Fzg_Takt 0 "Blinker_rechts_ausgeschaltet" 1 "Blinker_rechts_eingeschaltet"; -VAL_ 870 Blinken_li_Kombi_Takt 0 "Blinkerkontrolllampe_links_ausgeschaltet" 1 "Blinkerkontrolllampe_links_eingeschaltet"; -VAL_ 870 Blinken_re_Kombi_Takt 0 "Blinkerkontrolllampe_rechts_ausgeschaltet" 1 "Blinkerkontrolllampe_rechts_eingeschaltet"; -VAL_ 870 BM_NBA_n_codiert_n_aktiv 0 "codiert_AND_kein_Fehler" 1 "nicht_codiert_OR_Fehler_erkannt"; -VAL_ 870 BM_NBA_Status 0 "NBA_nicht_aktiv" 1 "BRL_Dunkelphase" 3 "BRL_Hellphase"; -VAL_ 870 BM_WBT_Beleuchtung 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_HD_Oeffnung_angelernt 0 "keine_Quittierung" 1 "Quittierung"; -VAL_ 870 BM_Autobahn 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Rollenmodus_Blinken 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Recas 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Wischblinken 0 "inaktiv" 1 "aktiv"; -VAL_ 870 BM_Telematik_Abbruchgrund 0 "Init" 1 "speed_out_of_range" 2 "defect" 3 "clamp_s_on" 4 "clamp_15_on" 5 "door_open" 6 "engine_hood_open" 7 "trunk_open" 8 "convertible_top_not_locked" 9 "horn_activated_by_user" 10 "Higher_Prioritiy_Function_active" 11 "Central_Lock_status_changed" 12 "Request_Dropped_by_Requester" 13 "Service_Duration_Expired" 14 "not_possible_due_to_coding" 15 "no_reason_or_unknown_timeout"; -VAL_ 870 BM_PiloPa 0 "PiloPa_Blinkerquittierung_inaktiv" 1 "PiloPa_Blinkerquittierung_aktiv"; -VAL_ 870 DWA_Alarmquelle 0 "kein_Ausloesegrund" 1 "Tuerkontakt_Fahrertuer" 2 "Tuerkontakt_Beifahrertuer" 3 "Tuerkontakt_hinten_links" 4 "Tuerkontakt_hinten_rechts" 5 "Motorhaubenkontakt_vorne" 6 "Kofferraum_hinten" 7 "Masseschleife_der_Heckscheibe" 8 "Innenraumueberwachung" 9 "Alarm_durch_Noteinstieg" 10 "Sounder" 11 "Neigungssensor" 12 "TSG_FT_am_CAN_Bus" 13 "TSG_BT_am_CAN_Bus" 14 "TSG_HFS_am_CAN_Bus" 15 "TSG_HBFS_am_CAN_Bus" 16 "Klemme_15" 17 "Klemme_15sig" 18 "frei" 19 "Anhaengerueberwachung" 20 "Scheinwerferueberwachung_links" 21 "Scheinwerferueberwachung_rechts" 22 "Handschuhkasten" 23 "Verdeckueberwachung" 24 "OBD_Alarm" 25 "Power_on_Reset" 30 "Init" 31 "Fehler"; -VAL_ 888 GNSS_Ortung_Hoehe 4094 "Init" 4095 "Fehler"; -VAL_ 891 GNSS_UTC_Zeit 0 "Init"; -VAL_ 891 GNSS_Empfaenger_Status 0 "Backup_Mode" 1 "Live"; -VAL_ 891 GNSS_GPS_in_Nutzung 0 "unbenutzt" 1 "benutzt"; -VAL_ 891 GNSS_GLONASS_in_Nutzung 0 "unbenutzt" 1 "benutzt"; -VAL_ 891 GNSS_Empfangbare_Satelliten 0 "Init" 31 "31_oder_mehr"; -VAL_ 891 GNSS_Sichtbare_Satelliten 0 "Init" 31 "31_oder_mehr"; -VAL_ 891 GNSS_Genutzte_Satelliten 0 "Init" 31 "31_oder_mehr"; -VAL_ 916 WBA_Fahrstufe_02 0 "Zwischenstellung_keine_Position" 1 "Position_P" 2 "Position_R" 3 "Position_N" 4 "Position_D" 5 "Position_S" 6 "Position_M_Tippfunktion" 7 "Kurzzeit_M" 8 "Position_E" 9 "Position_MS" 10 "Position_S_Plus" 11 "Position_MS_Plus" 12 "Position_Offroad" 13 "Position_B"; -VAL_ 916 WBA_ZielFahrstufe 0 "keine_Gangempfehlung_kein_Gang_eingelegt" 1 "Pfeil_nach_S" 2 "Pfeil_nach_D" 3 "Pfeil_nach_M" 4 "Pfeil_nach_E"; -VAL_ 916 WBA_GE_Warnung_02 0 "keine_Anzeige" 1 "Fehlereskalationsstufe_I" 2 "Fehlereskalationsstufe_II" 3 "Weiterfahrt_nur_eingeschraenkt_moeglich__Kein_R_Gang" 4 "Getriebefehler_Weiterfahrt_nur_in_D_moeglich__P_bei_Motor_aus" 5 "Wegrollgefahr__P_nicht_moeglich" 6 "Paddlenotbetrieb_Schema+Warnung" 7 "Paddlenotbetrieb_Schema" 8 "Geschwindigkeitsbegrenzung_Notlauf" 9 "Fehlereskalationsst_o_Einschr" 10 "Fehlereskalationsstufe_v_Limit" 11 "Parksperre_Infostufe" 12 "Parksperre_Warnstufe_I" 13 "Parksperre_Warnstufe_II"; -VAL_ 916 WBA_eing_Gang_02 0 "keine_Ganganzeige" 1 "Gang_1" 2 "Gang_2" 3 "Gang_3" 4 "Gang_4" 5 "Gang_5" 6 "Gang_6" 7 "Gang_7" 8 "Gang_8" 9 "Gang_9" 10 "Funktion_Ganganzeigeunterdrueckung" 11 "Gang_10"; -VAL_ 916 WBA_GE_Texte 0 "keine_Anzeige" 1 "zum_Einlegen_einer_Fahrstufe_Fussbremse_betaetigen__ShiftLock_Information" 2 "zum_Einlegen_von_R_N_D_Fussbremse_betaetigen_und_Motor_starten" 3 "Wegrollgefahr_bitte_P_einlegen" 4 "Achtung_Zeitueberschreitung_P_wird_eingelegt" 5 "Wiederanmeldeprozedur_Bremse_betaetigen" 6 "P_nur_im_Stillstand_moeglich" 7 "Rennstart_aktiv"; -VAL_ 916 WBA_Segeln_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 916 WBA_Schaltschema 0 "kein_Schaltschema" 1 "xxxD(S)" 2 "xxxD_S" 3 "xxxS(D)" 4 "xxxS_D" 5 "xxxM(D)" 6 "xxxM_D" 7 "xxxM(S)" 8 "xxxM_S" 9 "xxxE(D)" 10 "xxxE_D" 11 "xxxE(S)" 12 "xxxE_S" 13 "xxxE(M)" 14 "xxxE_M"; -VAL_ 916 WBA_GE_Zusatzwarnungen 0 "keine_Anzeige" 1 "Getriebeueberhitzung_Warnstufe_I" 2 "Getriebeueberhitzung_Warnstufe_II" 3 "Getriebefehler_Bitte_anhalten_und_P_einlegen"; -VAL_ 916 GE_Sollgang 0 "keine_Empfehlung" 1 "Gang_1" 2 "Gang_2" 3 "Gang_3" 4 "Gang_4" 5 "Gang_5" 6 "Gang_6" 7 "Gang_7" 8 "Gang_8" 9 "Gang_9" 11 "Gang_10"; -VAL_ 916 GE_Tipschaltempf_verfuegbar 0 "nicht_verfuegbar" 1 "verfuegbar"; -VAL_ 916 WBA_GE_Texte_02 0 "Keine_Anzeige" 1 "Fahrtrichtungswechsel_nur_nach_Stillstandt" 2 "Ladestecker_gesteckt" 3 "zusaetzlicher_Service_erforderlich" 4 "eLaunch_Aktiv" 5 "eLaunch_nicht_moeglich" 6 "WH_S_nicht_moeglich_Offroad" 7 "WH_S_nicht_moeglich_RangeMode"; -VAL_ 916 WBA_GE_Texte_03 0 "init" 1 "LC_not_available" 2 "LCperformance_not_possible" 3 "LCperformance_possible" 4 "LCperformance_armed" 5 "LCperformance_preparation" 6 "LCperformance_launch" 7 "LCperformance_aborted" 8 "LCsmoke_not_possible" 9 "LCsmoke_possible" 10 "LCsmoke_armed" 11 "LCsmoke_launch" 12 "LCsmoke_aborted" 15 "Fehler"; -VAL_ 916 WBA_Blinken 0 "kein_WBA_Blinken" 1 "WBA_Blinken"; -VAL_ 916 GE_Wiederstart_Anz_Std 0 "keine_Anzeige" 1 "Standard_Wiederstartgrund"; -VAL_ 916 GE_Stoppverbot_Anz_01 0 "keine_Anzeige" 1 "Temperaturbedingung"; -VAL_ 916 GE_Stoppverbot_Anz_02 0 "keine_Anzeige" 1 "Drucksensorausfall"; -VAL_ 916 GE_Stoppverbot_Anz_03 0 "keine_Anzeige" 1 "Grundeinstellung"; -VAL_ 916 GE_Stoppverbot_Anz_04 0 "keine_Anzeige" 1 "Demontagestellung"; -VAL_ 916 GE_Stoppverbot_Anz_05 0 "keine_Anzeige" 1 "Eingeschraenkte_Fahrfunktion_Notlauf_Liegenbleiber"; -VAL_ 916 GE_Stoppverbot_Anz_06 0 "keine_Anzeige" 1 "Stoppverbot_ueber_Applikation"; -VAL_ 916 GE_Stoppverbot_Anz_07 0 "keine_Anzeige" 1 "Schaltung_aktiv"; -VAL_ 916 GE_Stoppverbot_Anz_Std 0 "keine_Anzeige" 1 "Standard_Stoppvetogrund"; -VAL_ 919 LDW_Gong 1 "Chime" 2 "Beep" 0 "None"; -VAL_ 919 LDW_Texte 8 "laneAssistTakeOver" 4 "laneAssistTakeOverUrgent" 0 "none"; -VAL_ 949 KL_Drehz_Anh 0 "keine_Anhebung" 1 "Drehzahlanhebung_vom_Motor_angefordert"; -VAL_ 949 KL_Vorwarn_Komp_ein 0 "Init" 1 "Vorwarnung_Kompressor_ein"; -VAL_ 949 KL_AC_Schalter 0 "aus" 1 "ein"; -VAL_ 949 KL_Komp_Moment_alt 1 "veraltet_bzw_Ermittlung_des_Moments_nicht_moeglich__zB_keine_Drehzahl_kein_Kaeltemitteldruck"; -VAL_ 949 KL_Vorwarn_Zuheizer_ein 0 "keine_Vorwarnung" 1 "Vorwarnung_Zuheizer_ein"; -VAL_ 949 KL_Zustand 0 "Aus" 1 "Ein"; -VAL_ 949 KL_Kompressorkupplung_linear 253 "volle_Ansteuerung" 254 "Init__nicht_bedient"; -VAL_ 949 KL_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 949 KL_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 949 KL_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 949 KL_T_Charge 0 "Taster_nicht_betaetigt" 1 "Taster_betaetigt"; -VAL_ 949 KL_Last_Kompr 255 "Fehler"; -VAL_ 949 KL_Spannungs_Anf 0 "keine_Anforderung" 1 "Anforderung_Stufe_1" 2 "Anforderung_Stufe_2" 3 "Anforderung_Stufe_3"; -VAL_ 949 KL_Thermomanagement 0 "keine_Freigabe_TMM__max_Heizbedarf" 1 "kleine_Freigabe_TMM" 2 "mittlere_Freigabe_TMM" 3 "volle_Freigabe_TMM__kein_Heizbedarf"; -VAL_ 949 KL_StartStopp_Info 0 "Motorlauf_nicht_notwendig_(Stoppfreigabe)" 1 "Motoranlauf_nicht_zwingend_notwendig_(Stoppverbot,keine_Startanforderung)" 2 "Motoranlauf_zwingend_notwendig_(Startanforderung)" 3 "Systemfehler"; -VAL_ 949 KL_Freilauf_Info 0 "Freilauf_freigegeben" 1 "Uebergang_in_Freilauf_unzulaessig" 2 "Freilauf_nicht_freigegeben_Abbruch" 3 "Freilauf_Anforderung"; -VAL_ 949 KL_Anf_KL 255 "Fehler"; -VAL_ 949 KL_el_Zuheizer_Stufe 0 "Aus" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; -VAL_ 949 KL_Ausstattung_Klima 0 "Heizung_elektrisch" 1 "Klimamanuell_elektrisch" 2 "Climatic__1_Zone" 3 "Climatronic__1_Zone" 4 "Climatronic__2_Zonen" 5 "Climatronic__3_Zonen" 6 "Climatronic__4_Zonen" 7 "reserviert"; -VAL_ 949 KL_Variante_Standheizung 0 "Wasserstandheizung_60_min_Laufzeit" 1 "Luftstandheizung_120_min_Laufzeit" 2 "Wasserstandheizung_120_min_Laufzeit" 3 "Wasser_und_Luftstandheizung_120_min_Laufzeit"; -VAL_ 958 MO_StartStopp_Status 0 "System_in_diesem_KL15_Zyklus_nicht_verfuegbar" 1 "System_aktiv_keine_Freigabe_durch_StartStop_Koordinator" 2 "System_aktiv_alle_Freigaben_liegen_vor" 3 "System_aktiv_mindestens_eine_Freigabe_fehlt"; -VAL_ 958 MO_StartStopp_Wiederstart 0 "Wiederstart_inaktiv" 1 "Wiederstart_aktiv"; -VAL_ 958 MO_StartStopp_Motorstopp 0 "Motor_Stop_inaktiv" 1 "Motor_Stop_aktiv"; -VAL_ 958 MO_Freig_Reku 0 "Rekuperations-Modus aus" 1 "Empfehlung Spannungsanhebung" 2 "Empfehlung Spannungsabsenkung" 3 "Rekuperationsmodus aktiv, Spannungsvariation nicht notwendig"; -VAL_ 958 MO_Kl_75 0 "Aus" 1 "Ein"; -VAL_ 958 MO_Kl_50 0 "aus" 1 "KL50_ein_Startausfuehrung_Fahrer"; -VAL_ 958 MO_Gangposition 0 "Gang_N" 1 "Gang_1" 2 "Gang_2" 3 "Gang_3" 4 "Gang_4" 5 "Gang_5" 6 "Gang_6" 7 "Gang_7" 8 "Gang_8" 9 "Automat_P" 10 "Automat_Vorwaerts_S" 11 "Automat_Vorwaerts_D/E" 12 "Zwischenstellung" 13 "Gang_R" 14 "Istgang_nicht_definiert" 15 "Fehler"; -VAL_ 958 MO_StartStopp_Fahrerwunsch 0 "Init" 1 "Stoppverbot_durch_Fahrer" 2 "Stoppfreigabe_durch_Fahrer" 3 "Stoppanforderung_durch_Fahrer"; -VAL_ 958 MO_HYB_Fahrbereitschaft 0 "keine_Fahrbereitschaft" 1 "Fahrbereitschaft"; -VAL_ 958 MO_Ext_E_Fahrt_aktiv 0 "Rueckmeldung_E_Taster_aus" 1 "Rueckmeldung_E_Taster_ein"; -VAL_ 958 MO_Fahrer_bremst 0 "kein_Bremsen" 1 "Bremse_betaetigt"; -VAL_ 958 MO_QBit_Fahrer_bremst 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 958 MO_BLS 0 "kein_Bremsen" 1 "Bremse_betaetigt"; -VAL_ 958 MO_Konsistenz_Bremsped 0 "Bremspedalinformation_plausibel" 1 "Bremspedalinformation_unplausibel"; -VAL_ 958 MO_KomFehler_ESP 0 "kein_Fehler" 1 "Fehler"; -VAL_ 958 MO_Klima_Eingr 0 "kein Eingriff" 1 "Klimakompressor ausschalten" 2 "Klimakompressor Leistungsreduzierung" 3 "Klimakompressor aufgrund der Heissleuchtenvorwarnung ausschalten"; -VAL_ 958 MO_Aussp_Anlass 0 "Anlasser_darf_angesteuert_werden" 1 "Anlasser_ausspuren__Ansteuerung_nicht_moeglich"; -VAL_ 958 MO_Freig_Anlass 0 "Start_nicht_zulaessig" 1 "Startfreigabe"; -VAL_ 958 MO_Kuppl_schalter 0 "Schalter_sagt_ausgekuppelt" 1 "Schalter_sagt_eingekuppelt"; -VAL_ 958 MO_Interlock 0 "Interlockschalter_nicht_betaetigt" 1 "Interlockschalter_betaetigt"; -VAL_ 958 MO_Motor_laeuft 0 "Motor_laeuft_nicht" 1 "Motor_laeuft_autark_und_stabil_und_darf_mechanisch_belastet_werden"; -VAL_ 958 MO_Kickdown 0 "kein_Kickdown" 1 "Kickdown"; -VAL_ 958 MO_QBit_KL_75 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 958 MO_EKlKomLeiRed 0 "keine_Leistungsbegr" 1 "Leistungsbegr_75" 2 "Leistungsbegr_50" 3 "Leistungsbegr_25"; -VAL_ 958 MO_Handshake_STH 0 "keine EKP-Ansteuerung durch STH-Anforderung" 1 "EKP-Ansteuerung durch STH-Anforderung"; -VAL_ 958 MO_BKV_Unterdruckwarnung 0 "Unterdruckhaushalt_iO" 1 "Unterdruckhaushalt_niO"; -VAL_ 958 MO_Freigabe_Segeln 0 "Segelbetrieb_nicht_freigegeben" 1 "Segelbetrieb_freigegeben"; -VAL_ 958 MO_PTC_Status 0 "nicht_unterstuetzt" 1 "Stufe_0" 2 "Stufe_1" 3 "Stufe_2" 4 "Stufe_3" 7 "PTC_am_BCM"; -VAL_ 958 MO_QBit_Gangposition 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 958 MO_Signalquelle_Gangposition 0 "Sensorsignal" 1 "Modellsignal"; -VAL_ 958 MO_Remotestart_Betrieb 0 "MSG_nicht_bereit_fuer_RS_Betrieb" 1 "MSG_bereit_fuer_oder_im_RS_Betrieb"; -VAL_ 958 MO_Remotestart_moeglich 0 "Remotestart_nicht_moeglich" 1 "Remotestart_moeglich"; -VAL_ 958 MO_FMAus_aktiv 0 "inaktiv" 1 "Segeln_mit_Motor_aus_aktiv"; -VAL_ 958 MO_FMAus_Startvariante 0 "kein_Motorstart" 1 "Motorstart_elektrischer_Starter" 2 "GetriebeAnschleppstart" 3 "GetriebeNotAnschleppstart"; -VAL_ 958 MO_BMS_NV_Anf_stuetzen 0 "nicht_notwendig" 1 "notwendig"; -VAL_ 958 MO_Zylinderabschaltung 0 "Vollmotorbetrieb_VMB" 1 "Uebergang_HMB_in_VMB" 2 "Uebergang_VMB_in_HMB" 3 "Halbmotorbetrieb_HMB"; -VAL_ 958 MO_HYB_VM_aktiv 0 "VM_nicht_aktiv" 1 "VM_aktiv"; -VAL_ 958 MO_StartVorauss_erfuellt 0 "Signal_nicht_bedient" 1 "StartVorauss_nicht_ueberpruefbar" 2 "StartVorauss_nicht_erfuellt" 3 "StartVorauss_erfuellt"; -VAL_ 960 RSt_Fahrerhinweise 0 "Init" 1 "Fahreruebernahme_Hinweis_ZAT_Automat_ohne_Gong" 2 "Fahreruebernahme_Hinweis_ZAT_Automat_mit_Gong" 3 "Fahreruebernahme_Hinweis_ZAT_Handschalter_ohne_Gong" 4 "Fahreruebernahme_Hinweis_ZAT_Handschalter_mit_Gong" 5 "Fahreruebernahme_Hinweis_ZAS_Automat_ohne_Gong" 6 "Fahreruebernahme_Hinweis_ZAS_Automat_mit_Gong" 7 "Fahreruebernahme_Hinweis_ZAS_Handschalter_ohne_Gong" 8 "Fahreruebernahme_Hinweis_ZAS_Handschalter_mit_Gong" 9 "RemoteStart_aktiv_ohne_Gong" 10 "RemoteStart_aktiv_mit_Gong" 11 "void" 12 "void" 13 "void" 14 "void" 15 "void"; -VAL_ 960 ZAS_Kl_S 0 "aus" 1 "S_Kontakt_ein"; -VAL_ 960 ZAS_Kl_15 0 "aus" 1 "ein"; -VAL_ 960 ZAS_Kl_X 0 "aus" 1 "ein"; -VAL_ 960 ZAS_Kl_50_Startanforderung 0 "aus" 1 "KL50_ein_Startwunsch_Fahrer"; -VAL_ 960 BCM_Remotestart_Betrieb 0 "kein_RS_Betrieb" 1 "RS_Betrieb"; -VAL_ 960 ZAS_Kl_Infotainment 0 "inaktiv" 1 "aktiv"; -VAL_ 960 BCM_Remotestart_KL15_Anf 0 "inaktiv" 1 "aktiv"; -VAL_ 960 BCM_Remotestart_MO_Start 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 960 KST_Warn_P1_ZST_def 0 "nicht_defekt" 1 "defekt"; -VAL_ 960 KST_Warn_P2_ZST_def 0 "nicht_defekt" 1 "defekt"; -VAL_ 960 KST_Fahrerhinweis_1 0 "inaktiv" 1 "aktiv"; -VAL_ 960 KST_Fahrerhinweis_2 0 "inaktiv" 1 "aktiv"; -VAL_ 960 BCM_Ausparken_Betrieb 0 "kein_Betrieb" 1 "Ausparkvorgang_aktiv"; -VAL_ 960 KST_Fahrerhinweis_4 0 "inaktiv" 1 "aktiv"; -VAL_ 960 KST_Fahrerhinweis_5 0 "inaktiv" 1 "aktiv"; -VAL_ 960 KST_Fahrerhinweis_6 0 "inaktiv" 1 "aktiv"; -VAL_ 967 MO_Kuehlerluefter_MUX 0 "Kuehlerluefter_1" 1 "Kuehlerluefter_2"; -VAL_ 967 MO_Kuehlerluefter_1 126 "Init" 127 "Fehler"; -VAL_ 967 MO_Kuehlerluefter_2 126 "Init" 127 "Fehler"; -VAL_ 967 MO_EFLEX_Lampe 0 "Lampe_aus" 1 "Lampe_ein" 2 "Lampe_blinkend" 3 "Lampe_blinkend_mit_Akustik"; -VAL_ 967 MO_KJS_nicht_bereit 0 "kein_Fehler" 1 "Fehler"; -VAL_ 967 MO_ITM_Warnung_Pumpe 0 "keine_Warnung" 1 "ITM_Warnung"; -VAL_ 967 WIV_Anzeige_aktiv 0 "Anzeige aus" 1 "WIV Anzeige aktiv"; -VAL_ 967 WIV_Oelmin_Warn 0 "in_Ordnung" 1 "Warnung"; -VAL_ 967 WIV_Sensorfehler 0 "in_Ordnung" 1 "Sensor_defekt"; -VAL_ 967 WIV_Schieflage 0 "Fahrzeug_gerade" 1 "Fahrzeug_in_Schieflage"; -VAL_ 967 MO_Zustand_HWP 0 "HWP_nicht_schaltbar" 1 "HWP_foerdert_nicht" 2 "HWP_foerdert" 3 "reserviert"; -VAL_ 967 OLEV_Systemstoerung 0 "֬system i.O." 1 "Systemstörung ֬system"; -VAL_ 967 MO_Oelwarnung_max 0 "keine_Warnung" 1 "Warnfall_aktiv"; -VAL_ 967 WIV_Oelsystem_aktiv 0 "Anzeige_aus" 1 "Anzeige_aktiv"; -VAL_ 967 WIV_nicht_betriebswarm 0 "Motor_warm" 1 "Motor_nicht_betriebswarm"; -VAL_ 967 WIV_Ueberfuell_Warn 0 "in_Ordnung" 1 "Ueberfuellwarnung"; -VAL_ 967 WIV_laufender_Motor 0 "Messung_moeglich" 1 "Messung_nicht_moeglich"; -VAL_ 967 MO_E_Warnungen 0 "keine_Anzeige" 1 "Fehler_Elektrosystem_Anhalten" 2 "Fehler_Elektrosystem_Werkstatt" 3 "Elektrosystem_ueberhitzt_Stopp" 4 "Fehler_Hybridsystem_Anhalten" 5 "Fehler_Hybridsystem_Werkstatt" 6 "Fehler_Wasserstoffsystem_Anhalte" 7 "Fehler_Wasserstoffsystem_Werksta" 8 "reserviert_keine_Anzeige" 9 "reserviert_keine_Anzeige" 10 "reserviert_keine_Anzeige" 11 "reserviert_keine_Anzeige" 12 "reserviert_keine_Anzeige" 13 "reserviert_keine_Anzeige" 14 "reserviert_keine_Anzeige" 15 "reserviert_keine_Anzeige"; -VAL_ 967 MO_Text_Motorstart 0 "keine_Anzeige" 1 "Motor_im_Stoppbetrieb" 2 "StartStopp_sicherheitsbedingt_deaktiviert" 3 "System_fordert_Wiederstart" 4 "Aufforderung_Motorstart" 5 "Motorlauf_noetig" 6 "Motorlaufwarnung" 9 "Unerwuenschter_Motorstillstand" 10 "Motorstart_nicht_moeglich" 11 "Fehler_Kupplungsschalter" 12 "Motor_startet" 13 "Kupplung_betaetigen" 14 "Waehlhebel_in_PN_Position" 15 "Bremse_treten"; -VAL_ 967 MO_E_Texte 0 "keine_Anzeige" 1 "Batterie_fast_leer" 2 "Ladestecker_nicht_fahrbereit" 3 "VM_Betrieb_erforderlich" 4 "Batterie_laedt_Nicht_ausschalten" 5 "Bitte_Bremse_treten" 6 "manueller_Neustart_erforderlich" 7 "Stopp_Fahrzeug_nicht_abschleppen" 8 "kein_Neustart_Haube_nicht_oeffnen" 9 "Motorstart_im_naechsten_Zyklus" 10 "VM_erforderlich_EVMode_abwaehlen" 11 "laengerer_VMBetrieb_Bordbuch" 12 "Tank_leer_VM_nicht_verfuegbar" 13 "Bitte_warten_Motor_startet" 14 "kein_Start_Batterietemperatur" 15 "Ende_elektrische_Reichweite_erreicht"; -VAL_ 967 WIV_Oeldyn_avl 0 "Oeldyn_nicht_vorhanden" 1 "Oeldyn_vorhanden"; -VAL_ 967 OLEV_Oelstand_nicht_vorhanden 0 "֬stand vorhanden" 1 "֬stand nicht vorhanden"; -VAL_ 967 MO_Systemlampe 0 "Lampe aus" 1 "Lampe ein"; -VAL_ 967 MO_OBD2_Lampe 0 "Lampe aus" 1 "Lampe ein"; -VAL_ 967 MO_Heissleuchte 0 "Lampe aus" 1 "Lampe ein"; -VAL_ 967 MO_Partikel_Lampe 0 "Lampe aus" 1 "Lampe ein"; -VAL_ 967 MO_RedFahrleistung_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 967 WIV_Oelstand_nicht_vorhanden 0 "֬stand vorhanden" 1 "֬stand nicht vorhanden"; -VAL_ 967 WIV_nachfuellanzeige_ein 0 "keine_Nachfuellanzeige" 1 "Nachfuellanzeige"; -VAL_ 967 WIV_Ueberfuell_deaktiv 0 "Ueberfuellwarnung_am_Kombi_aktiv" 1 "Ueberfuellwarnung_am_Kombi_deaktiv"; -VAL_ 967 WIV_Unterfuell_Warn 0 "in_Ordnung" 1 "Unterfuellwarnung"; -VAL_ 967 MO_Tankdeckel_Lampe 0 "Lampe aus" 1 "Lampe ein"; -VAL_ 967 MO_Text_Tankdeckelwarn 0 "kein_Text" 1 "Anzeige_Text_Tankdeckelwarnung_im_Kombi"; -VAL_ 967 MO_Vorglueh_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 967 WIV_Oeldr_Warn_Motor 0 "keine_Warnung" 1 "niedrige_Oeldruckstufe_nicht_erreicht"; -VAL_ 967 MO_E_Mode 0 "keine_Anzeige" 1 "E_Mode_passiv" 2 "E_Mode_aktiv" 3 "E_Mode_inaktiv_nicht_verfuegbar" 4 "E_Mode_aktiv_nicht_verfuegbar" 5 "reserviert_keine_Anzeige" 6 "reserviert_keine_Anzeige" 7 "reserviert_keine_Anzeige"; -VAL_ 974 HFS_Tuer_geoeffnet 0 "geschlossen" 1 "offen"; -VAL_ 974 HFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; -VAL_ 974 HFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; -VAL_ 974 HFS_Heckrollotaster_betaetigt 0 "keine_Verfahranweisung_in_Richtung_Hoch" 1 "In_Richtung_Hoch_Verfahren"; -VAL_ 974 HFS_Tuerschloss_defekt 0 "Tuerschloss_funktionsfaehig" 1 "Tuerschloss_defekt"; -VAL_ 974 HFS_Unlock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_Lock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_Sperrklinke 0 "Schloss_in_Vorraste_und_Hauptraste" 1 "Tuer_auf_oder_Tuer_Position_zwischen_Vor_und_Hauptraste"; -VAL_ 974 HFS_TAG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_TIG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_FH_S_HBFS_AutoHoch 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; -VAL_ 974 HFS_FH_S_HBFS_AutoTief 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; -VAL_ 974 HFS_FH_S_HBFS_ManHoch 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; -VAL_ 974 HFS_FH_S_HBFS_ManTief 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; -VAL_ 974 HFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; -VAL_ 974 HFS_SAD_Schalter 0 "nicht_betaetigt" 5 "AUF_manuell" 6 "AUF_automatik" 7 "ZU_manuell" 8 "ZU_automatik" 13 "nicht_verfuegbar" 14 "Init" 15 "Fehler"; -VAL_ 974 HFS_FH_S_ManHoch 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_FH_S_AutoHoch 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_FH_S_ManTief 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_FH_S_AutoTief 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_FH_Bew_hoch 0 "inaktiv" 1 "aktiv"; -VAL_ 974 HFS_FH_Bew_tief 0 "inaktiv" 1 "aktiv"; -VAL_ 974 HFS_FH_Fang 0 "ausserhalb_Fangbereich" 1 "innerhalb_Fangbereich"; -VAL_ 974 HFS_FH_Block 0 "inaktiv" 1 "aktiv"; -VAL_ 974 HFS_FH_Thermo 0 "inaktiv" 1 "aktiv"; -VAL_ 974 HFS_UEKB_aktiviert 0 "inaktiv" 1 "aktiv"; -VAL_ 974 HFS_Tueroeffnen_Warnung 0 "Tuerwarnung_nicht_aktiv" 1 "Tuerwarnung_aktiv"; -VAL_ 974 HFS_FH_normiert 0 "inaktiv" 1 "aktiv"; -VAL_ 974 ASW_Warnung_aktiv_HFS 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 974 HFS_Zuziehhilfe_aktiv 0 "Init" 1 "Zuziehhilfe_aktiv"; -VAL_ 974 HFS_Seitenrollo_hoch 1 "Seitenrollo_in_Bewegung_hoch"; -VAL_ 974 HFS_Seitenrollo_tief 1 "Seitenrollo_in_Bewegung_tief"; -VAL_ 974 HFS_Status_KiSi 0 "inaktiv" 1 "aktiv"; -VAL_ 974 SSR_HFS_Pos_Unten 0 "SSR_Oben" 1 "SSR_Unten"; -VAL_ 974 HFS_Oben_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_o"; -VAL_ 974 HFS_Unten_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_u"; -VAL_ 974 MTHFS_M_Taste 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 MTHFS_Pos1 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 MTHFS_Pos2 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 MTHFS_Pos3 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 974 HFS_MRollo_Schalter 0 "nicht_betaetigt" 1 "ZU_manuell" 2 "ZU_automatik" 3 "AUF_manuell" 4 "AUF_automatik" 5 "nicht_verfuegbar" 6 "Init" 7 "Fehler"; -VAL_ 974 HFS_Lock_Taster_inv 0 "Lock Taster bet䴧it" 1 "Lock Taster nicht bet䴩gt"; -VAL_ 974 HFS_Status_eTAG 0 "Init" 1 "Griff_ausgefahren" 2 "Griff_eingefahren" 3 "Fehler"; -VAL_ 974 HFS_Tuer_Status_QBit 0 "Status_Tuerkontakt_sicher" 1 "Status_Tuerkontakt_unsicher"; -VAL_ 974 HFS_TCR_Mode_aktiv 0 "TCR_Mode_deaktiv" 1 "TCR_Mode_aktiv"; -VAL_ 975 HBFS_Tuer_geoeffnet 0 "geschlossen" 1 "offen"; -VAL_ 975 HBFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; -VAL_ 975 HBFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; -VAL_ 975 HBFS_Heckrollotaster_betaetigt 0 "keine_Verfahranweisung_in_Richtung_Hoch" 1 "In_Richtung_Hoch_Verfahren"; -VAL_ 975 HBFS_Tuerschloss_defekt 0 "Tuerschloss_funktionsfaehig" 1 "Tuerschloss_defekt"; -VAL_ 975 HBFS_Unlock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_Lock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_Sperrklinke 0 "Schloss_in_Vorraste_und_Hauptraste" 1 "Tuer_auf_oder_Tuer_Position_zwischen_Vor_und_Hauptraste"; -VAL_ 975 HBFS_TAG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_TIG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_FH_S_HFS_AutoHoch 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; -VAL_ 975 HBFS_FH_S_HFS_AutoTief 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; -VAL_ 975 HBFS_FH_S_HFS_ManHoch 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; -VAL_ 975 HBFS_FH_S_HFS_ManTief 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; -VAL_ 975 HBFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; -VAL_ 975 HBFS_SAD_Schalter 0 "nicht_betaetigt" 5 "AUF_manuell" 6 "AUF_automatik" 7 "ZU_manuell" 8 "ZU_automatik" 13 "nicht_verfuegbar" 14 "Init" 15 "Fehler"; -VAL_ 975 HBFS_FH_S_ManHoch 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_FH_S_AutoHoch 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_FH_S_ManTief 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_FH_S_AutoTief 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_FH_Bew_hoch 0 "inaktiv" 1 "aktiv"; -VAL_ 975 HBFS_FH_Bew_tief 0 "inaktiv" 1 "aktiv"; -VAL_ 975 HBFS_FH_Fang 0 "ausserhalb_Fangbereich" 1 "innerhalb_Fangbereich"; -VAL_ 975 HBFS_FH_Block 0 "inaktiv" 1 "aktiv"; -VAL_ 975 HBFS_FH_Thermo 0 "inaktiv" 1 "aktiv"; -VAL_ 975 HBFS_UEKB_aktiviert 0 "inaktiv" 1 "aktiv"; -VAL_ 975 HBFS_Tueroeffnen_Warnung 0 "Tuerwarnung_nicht_aktiv" 1 "Tuerwarnung_aktiv"; -VAL_ 975 HBFS_FH_normiert 0 "inaktiv" 1 "aktiv"; -VAL_ 975 ASW_Warnung_aktiv_HBFS 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 975 HBFS_Zuziehhilfe_aktiv 0 "Init" 1 "Zuziehhilfe_aktiv"; -VAL_ 975 HBFS_Seitenrollo_hoch 1 "Seitenrollo_in_Bewegung_hoch"; -VAL_ 975 HBFS_Seitenrollo_tief 1 "Seitenrollo_in_Bewegung_tief"; -VAL_ 975 HBFS_Status_KiSi 0 "inaktiv" 1 "aktiv"; -VAL_ 975 SSR_HBFS_Pos_Unten 0 "SSR_Oben" 1 "SSR_Unten"; -VAL_ 975 HBFS_Oben_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_o"; -VAL_ 975 HBFS_Unten_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_u"; -VAL_ 975 MTHBFS_M_Taste 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 MTHBFS_Pos1 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 MTHBFS_Pos2 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 MTHBFS_Pos3 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 975 HBFS_MRollo_Schalter 0 "nicht_betaetigt" 1 "ZU_manuell" 2 "ZU_automatik" 3 "AUF_manuell" 4 "AUF_automatik" 5 "nicht_verfuegbar" 6 "Init" 7 "Fehler"; -VAL_ 975 HBFS_Lock_Taster_inv 0 "Lock Taster bet䴧it" 1 "Lock Taster nicht bet䴩gt"; -VAL_ 975 HBFS_Status_KiSi_inv 0 "aktiv" 1 "inaktiv"; -VAL_ 975 HBFS_Status_eTAG 0 "Init" 1 "Griff_ausgefahren" 2 "Griff_eingefahren" 3 "Fehler"; -VAL_ 975 HBFS_Tuer_Status_QBit 0 "Status_Tuerkontakt_sicher" 1 "Status_Tuerkontakt_unsicher"; -VAL_ 975 HBFS_TIG_betaetigt_schliessen 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 976 FT_Tuer_geoeffnet 0 "Init" 1 "Tuer offen"; -VAL_ 976 FT_verriegelt 0 "Init" 1 "verriegelt"; -VAL_ 976 FT_gesafet 0 "Init" 1 "gesafet"; -VAL_ 976 FT_Schluesselschalter_auf 0 "Init" 1 "Schluesselschalter_auf_betaetigt"; -VAL_ 976 FT_Schluesselschalter_zu 1 "Schluesselschalter zu betaetigt"; -VAL_ 976 FT_Unlock_Taster 0 "Init" 1 "Unlock_Taster_betaetigt"; -VAL_ 976 FT_Lock_Taster 0 "Init" 1 "Lock_Taster_betaetigt"; -VAL_ 976 FT_Sperrklinke 0 "Schloss_in_Vorraste_und_Hauptraste" 1 "Tuer_auf_oder_Tuer_Position_zwischen_Vor_und_Hauptraste"; -VAL_ 976 FT_TAG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 976 FT_TIG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 976 FT_IRUE_Taste 0 "Init" 1 "IRUE_Taste_betaetigt"; -VAL_ 976 FT_HD_Taste 0 "Init" 1 "Heckdeckel_oeffnen"; -VAL_ 976 FT_TD_Taste_Fehler 0 "iO" 1 "defekt"; -VAL_ 976 FT_TD_Taste 1 "Tankdeckelentriegelungs Taster gedrückt"; -VAL_ 976 SSR_Temp_Freigabe 0 "SSR_Deaktiviert" 1 "SSR_Freigegeben"; -VAL_ 976 FT_HD_Taste_2 0 "Taste_nicht_gedrueckt" 1 "Taste_gedrueckt"; -VAL_ 976 FT_TSG_hinten_verbaut 0 "nicht verbaut" 1 "verbaut"; -VAL_ 976 FT_Sp_Blk_def 0 "iO" 1 "defekt"; -VAL_ 976 FT_FH_S_ManHoch 0 "Init" 1 "FH_Schalter_man_hoch_betaetigt"; -VAL_ 976 FT_FH_S_AutoHoch 0 "Init" 1 "FH_Schalter_auto_hoch_betaetigt"; -VAL_ 976 FT_FH_S_ManTief 0 "Init" 1 "FH_Schalter_man_tief_betaetigt"; -VAL_ 976 FT_FH_S_AutoTief 0 "Init" 1 "FH_Schalter_auto_tief_betaetigt"; -VAL_ 976 FT_FH_Bew_hoch 0 "Init" 1 "FH_in_Bewegung_hoch"; -VAL_ 976 FT_FH_Bew_tief 0 "Init" 1 "FH_in_Bewegung_tief"; -VAL_ 976 FT_FH_Fang 0 "ausserhalb_Fangbereich" 1 "innerhalb_Fangbereich"; -VAL_ 976 FT_FH_Block 0 "Init" 1 "Fenster_Block"; -VAL_ 976 FT_FH_Thermo 0 "Init" 1 "Thermoschutz_aktiv"; -VAL_ 976 FT_UEKB_aktiviert 0 "Init" 1 "UEKB_aktiv"; -VAL_ 976 ASW_HMI_defekt 0 "iO" 1 "defekt"; -VAL_ 976 FT_FH_normiert 0 "Init" 1 "Fenster_normiert"; -VAL_ 976 FT_Schliesstaster 1 "Schliesstaster_betaetigt"; -VAL_ 976 FT_Zuziehhilfe_aktiv 0 "Init" 1 "Zuziehilfe_aktiv"; -VAL_ 976 FT_SP_ausgerastet 0 "Init" 1 "Spiegel_ausgerastet"; -VAL_ 976 FT_SP_lr_aktiv 0 "Init" 1 "Spiegel_xAchse_aktiv"; -VAL_ 976 FT_SP_ht_aktiv 0 "Init" 1 "Spiegel_yAchse_aktiv"; -VAL_ 976 ASW_wakeup 0 "Sleep" 1 "Wakeup"; -VAL_ 976 FT_Oben_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_o"; -VAL_ 976 FT_Unten_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_u"; -VAL_ 976 FT_Kisi_li_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 976 FT_Kisi_re_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 976 FT_Kisi_Taster_li 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 976 FT_Kisi_Taster_re 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 976 FT_BFS_Fond_Freigabe 0 "Init" 1 "Freigabe_fuer_Fondbedienung_BFS"; -VAL_ 976 FT_Kisi_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 976 FT_Daemmglas 0 "Normalglas_verbaut" 1 "Daemmglas_verbaut"; -VAL_ 976 FT_SP_Heizung_Status 0 "Init" 1 "Status_Spiegelheizung_ein"; -VAL_ 976 ASW_Warnung_aktiv_FS 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 976 FT_FH_Pos_oben 1 "Scheibe oben (nach Absenken auf Position)"; -VAL_ 976 FT_Tuerschloss_defekt 0 "Tuerschloss_funktionsfaehig" 1 "Tuerschloss_defekt"; -VAL_ 976 FT_SWA_Taster 0 "Taster_nicht_betaetigt" 1 "Taster_betaetigt"; -VAL_ 976 SWA_HMI_Diagnose 0 "kein_Fehler_erkannt" 1 "Fehler_Taster_erkannt" 2 "Fehler_LED_erkannt" 3 "Fehler_LED_und_Taster_erkannt"; -VAL_ 976 FS_Status_eTAG 0 "Init" 1 "Griff_ausgefahren" 2 "Griff_eingefahren" 3 "Fehler"; -VAL_ 980 BH_Blinker_li 0 "nicht_betaetigt" 1 "Blinkerhebel_Pos_li_betaetigt"; -VAL_ 980 BH_Blinker_re 0 "nicht_betaetigt" 1 "Blinkerhebel_Pos_re_betaetigt"; -VAL_ 980 BH_Lichthupe 0 "nicht_betaetigt" 1 "Blinkerhebel in Richtung Lichthupe betaetigt"; -VAL_ 980 BH_Fernlicht 0 "nicht_betaetigt" 1 "Blinkerhebel_in_Richtung_Fernlicht_betaetigt"; -VAL_ 980 WH_Tipwischen 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 980 WH_Intervall 0 "aus" 1 "Wischerhebel in Stellung Intervall"; -VAL_ 980 WH_WischerStufe1 0 "aus" 1 "Wischerhebel in Stufe Wischen 1"; -VAL_ 980 WH_WischerStufe2 0 "aus" 1 "Wischerhebel in Stufe Wischen 2"; -VAL_ 980 WH_Frontwaschen 0 "aus" 1 "Wischerhebel in Stellung Wisch Wasch vorne"; -VAL_ 980 WH_Heckintervall 0 "nicht_betaetigt" 1 "Wischerhebel in Stellung Heckintervall"; -VAL_ 980 WH_Heckwaschen 0 "nicht_betaetigt" 1 "Wischerhebel in Stellung Wisch Wasch hinten"; -VAL_ 980 WH_Intervallstufen 0 "Init / Default" 1 "Intervallstufe 1" 5 "Intervallstufe 2" 9 "Intervallstufe 3" 13 "Intervallstufe 4" 15 "Fehler"; -VAL_ 980 FAS_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 980 FAS_Taster_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 980 SMLS_Hupe 0 "nicht_betaetigt" 1 "Hupe_gedrueckt"; -VAL_ 980 LRH_On_Off 0 "LRH_aus__keine Anzeige" 1 "LRH_aus" 2 "LRH_ein" 3 "Fehler"; -VAL_ 980 LRH_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 980 SMLS_P_verriegelt_plausibel 0 "unplausibel" 1 "plausibel"; -VAL_ 980 WH_SRA 0 "SRA_Aus" 1 "SRA_Ein"; -VAL_ 980 WH_Wischer_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 980 BH_Blinker_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 980 SMLS_PTT 0 "nicht_betaetigt" 1 "PTT_gedrueckt"; -VAL_ 980 WH_Tipwischen_lang 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 981 BCM1_Kurvenlicht_links_Anf 0 "linkes_Kurvenlicht/Abbiegelicht_durch_BCM1_nicht_angesteuert" 1 "linkes_Kurven/Abbiegelicht_durch_BCM1_angesteuert"; -VAL_ 981 BCM1_Kurvenlicht_rechts_Anf 0 "rechtes_Kurvenlicht/Abbiegelicht_durch_BCM1_nicht_angesteuert" 1 "rechtes_Kurvenlicht/Abbiegelicht_durch_BCM1_angesteuert"; -VAL_ 981 BCM1_Standlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Abblendlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Fernlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Nebellicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Parklicht_li_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Parklicht_re_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Nebelschluss_Ahg_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Nebelschluss_Fzg_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Schlusslicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM_Rueckfahrlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht_angefordert"; -VAL_ 981 BCM1_Signaturlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht_ist_einzuschalten"; -VAL_ 981 BCM1_Umfeldleuchten_Anf 0 "Licht_nicht_angefordert" 1 "Licht_ist_einzuschalten"; -VAL_ 981 BCM1_Tagfahrlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Regenlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Autobahnlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; -VAL_ 981 BCM1_Touristen_Licht_Anf 0 "Licht_nicht_angefordert" 1 "Anforderung von Touristenlicht"; -VAL_ 981 BCM1_CH_aktiv 0 "Inaktiv" 1 "Aktiv"; -VAL_ 981 BCM1_LH_aktiv 0 "Inaktiv" 1 "Aktiv"; -VAL_ 981 BCM1_Gleitende_Leuchtw_Anf 0 "Aus" 1 "Ein"; -VAL_ 981 BCM1_GLW_Fernlicht_Anf 0 "Aus" 1 "Ein"; -VAL_ 981 BCM1_Adaptive_Lichtvert_Anf 0 "Aus" 1 "Ein"; -VAL_ 981 BCM1_FoD_Sperrung_WiBli 0 "Freigabe_WiBli" 1 "Sperrung_WiBli" 2 "Init"; -VAL_ 981 BCM1_FOD_Sperrung_Animationen_HL 0 "Freigabe_Animationen" 1 "Sperrung_Animationen" 2 "Init"; -VAL_ 981 BCM1_Animationssperrung 0 "keine_Sperrung" 1 "Sperrung"; -VAL_ 981 BCM1_CH_LH_aktiv 0 "Comming_Home_Bzw._Leaving_Home_nicht_aktiv" 1 "Comming Home bzw. Leaving Home aktiv"; -VAL_ 981 BCM1_Allwetterlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht_ist_einzuschalten"; -VAL_ 981 BCM1_Schlusslicht_Signatur 0 "keine_Signatur" 1 "Signatur_1" 2 "Signatur_2" 3 "Signatur_3" 4 "Signatur_4" 5 "Signatur_5" 6 "Signatur_6" 7 "Signatur_7" 8 "Signatur_8" 9 "Signatur_9" 10 "Signatur_10" 11 "Signatur_11" 12 "Signatur_12" 13 "Signatur_13" 14 "Signatur_14" 15 "Signatur_15"; -VAL_ 982 BCM2_Bremsl_durch_ECD 0 "Bremslicht_ist_aus" 1 "Bremslicht_durch_ECD_aktiv"; -VAL_ 982 LH_Aussenlicht_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Standlicht_H_aktiv 1 "Standlicht hinten aktiv"; -VAL_ 982 LH_Parklicht_HL_aktiv 0 "nicht aktiv" 1 "Parklicht hinten links aktiv"; -VAL_ 982 LH_Parklicht_HR_aktiv 0 "nicht aktiv" 1 "Parklicht hinten rechts aktiv"; -VAL_ 982 LH_Bremslicht_H_aktiv 1 "Bremslicht hinten aktiv"; -VAL_ 982 LH_Nebelschluss_aktiv 0 "nicht aktiv" 1 "aktiv"; -VAL_ 982 LH_Rueckfahrlicht_aktiv 0 "nicht aktiv" 1 "aktiv"; -VAL_ 982 LH_Blinker_HL_akt 1 "Blinker hinten links aktiv"; -VAL_ 982 LH_Blinker_HR_akt 1 "Blinker hinten rechts aktiv"; -VAL_ 982 LH_Blinker_li_def 0 "OK" 1 "Blinker hinten links defekt"; -VAL_ 982 LH_Bremsl_li_def 0 "OK" 1 "mindestens ein Bremslicht hinten links defekt"; -VAL_ 982 LH_Schlusslicht_li_def 0 "OK" 1 "mindestens ein Schlusslicht hinten links defekt"; -VAL_ 982 LH_Rueckf_li_def 0 "OK" 1 "Rückfahrlicht hinten links defekt"; -VAL_ 982 LH_Nebel_li_def 0 "OK" 1 "Nebelschlusslicht hinten links defekt"; -VAL_ 982 LH_Schluss_Brems_Nebel_li_def 0 "iO" 1 "defekt"; -VAL_ 982 LH_Schluss_Brems_Nebel_re_def 0 "iO" 1 "defekt"; -VAL_ 982 LH_Zusatzschlussl_def 0 "OK" 1 "mindestens_ein_Zusatzschlusslicht_defekt"; -VAL_ 982 LH_Schluss_Brems_li_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Schluss_Nebel_li_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_SL_BRL_BLK_li_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Brems_Blk_li_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Diag_Status_re_def 0 "OK" 1 "Aussenlict_Diagnose_Systemstoerung_rechts"; -VAL_ 982 LH_Diag_Status_li_def 0 "OK" 1 "Aussenlicht_Diagnose_Systemstoerung_links"; -VAL_ 982 LH_Diag_LED_li_def 0 "OK" 1 "Heckleuchte_links_defekt"; -VAL_ 982 LH_Diag_LED_re_def 0 "OK" 1 "Heckleuchte_rechts_defekt"; -VAL_ 982 LH_Blinker_re_def 0 "OK" 1 "Blinker hinten rechts defekt"; -VAL_ 982 LH_Bremsl_re_def 0 "OK" 1 "mindestens ein Bremslicht hinten rechts defekt"; -VAL_ 982 LH_Schlusslicht_re_def 0 "OK" 1 "mindestens ein Schlusslicht hinten rechts defekt"; -VAL_ 982 LH_Rueckf_re_def 0 "OK" 1 "Rückfahrlicht hinten rechts defekt"; -VAL_ 982 LH_Nebel_re_def 0 "OK" 1 "Nebelschlusslicht hinten rechts defekt"; -VAL_ 982 LH_Schluss_Brems_mi_def 0 "OK" 1 "Defekt"; -VAL_ 982 LH_Schluss_Brems_re_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Schluss_Nebel_re_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_SL_BRL_BLK_re_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Brems_Blk_re_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Kennzl_def 0 "OK" 1 "Kennzeichenbeleuchtung hinten defekt"; -VAL_ 982 LH_3_Bremsl_def 0 "OK" 1 "hochgesetzte Bremsleuchte defekt"; -VAL_ 982 LH_Nebel_mi_def 0 "OK" 1 "Nebelschlusslicht hinten Mitte defekt"; -VAL_ 982 LH_Rueckf_mi_def 0 "OK" 1 "Rückfahllicht Mitte defekt"; -VAL_ 982 LH_Schlusslicht_mi_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Bremsl_mi_def 0 "OK" 1 "defekt"; -VAL_ 982 LH_Bremsl_li_ges_def 0 "OK" 1 "Alle Bremslichter hinten links defekt"; -VAL_ 982 LH_Bremsl_re_ges_def 0 "OK" 1 "Alle Bremslichter hinten rechts defekt"; -VAL_ 988 EPB_Status 0 "offen" 1 "geschlossen_Parken" 2 "teilgespannt_Halten" 3 "im_Lauf_oeffnen" 4 "im_Lauf_schliessen" 5 "tbd" 6 "Init" 7 "unbekannt"; -VAL_ 988 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; -VAL_ 997 FT_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; -VAL_ 997 FT_Tuer_Status_QBit 0 "Status_Tuerkontakt_sicher" 1 "Status_Tuerkontakt_unsicher"; -VAL_ 997 FT_Lock_Taster_02 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 997 FT_Schluesselschalter_zu_02 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 997 FT_BFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; -VAL_ 997 FT_HBFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; -VAL_ 997 FT_HFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; -VAL_ 997 FT_Tueroeffnen_Warnung 0 "Tuerwarnung_nicht_aktiv" 1 "Tuerwarnung_aktiv"; -VAL_ 997 FT_SP_Heizung_ein 0 "Aus" 1 "Ein"; -VAL_ 997 FT_Kisi_Taster_li_02 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 997 FT_Kisi_Taster_re_02 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 997 FT_TD_Taste_Status 0 "kein_Fehler" 1 "Kurzschluss_nach_Minus" 2 "Kurzschluss_nach_Plus" 3 "Leitungsunterbrechung"; -VAL_ 997 FT_TCR_Mode_aktiv 0 "TCR_Mode_deaktiv" 1 "TCR_Mode_aktiv"; -VAL_ 997 FS_Push_Tuergriff 0 "nicht_erkannt" 1 "erkannt"; -VAL_ 1004 TSK_State 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault"; -VAL_ 1122 PSD_Segment_ID 0 "keine Segmentinformationen vorhanden" 1 "Fehlerwert"; -VAL_ 1122 PSD_Vorgaenger_Segment_ID 0 "keine Segmentinformation vorhanden" 1 "Fehlerwert"; -VAL_ 1122 PSD_Strassenkategorie 0 "Rest_Feldweg_Schotterweg_Privatweg" 1 "Ortsstraߥ" 2 "Kreisstraߥ" 3 "Landstraߥ" 4 "Bundesstraߥ" 5 "Autobahn" 7 "Init"; -VAL_ 1122 PSD_Endkruemmung 255 "Gerade"; -VAL_ 1122 PSD_Endkruemmung_Vorz 0 "Kruemmung_positiv" 1 "Kruemmung_negativ"; -VAL_ 1122 PSD_Idenditaets_ID 0 "keine_Segment_Informationen_vorhanden" 1 "Fehler"; -VAL_ 1122 PSD_ADAS_Qualitaet 0 "keine_ADAS_Qualitaet" 1 "ADAS_Qualitaet"; -VAL_ 1122 PSD_wahrscheinlichster_Pfad 0 "Pfad_mit_geringer_Wahrscheinlichkeit" 1 "wahrscheinlichster_Pfad"; -VAL_ 1122 PSD_Geradester_Pfad 0 "nicht_geradester_PFad" 1 "geradester_Pfad"; -VAL_ 1122 PSD_Fahrspuren_Anzahl 0 "Einbahnstrasse_in_falsche_Richtung" 1 "eine_Fahrspur" 2 "zwei_Fahrspuren" 3 "drei_Fahrspuren" 4 "vier_Fahrspuren" 5 "fuenf_Fahrspuren" 6 "sechs_Fahrspuren" 7 "mehr_als_sechs_Fahrspuren"; -VAL_ 1122 PSD_Bebauung 0 "ausserhalb_bebauten_Gebietes" 1 "innerhalb_bebauten_Gebietes"; -VAL_ 1122 PSD_Segment_Komplett 0 "Segment_Attribute_nicht_komplett" 1 "Segment_Attribute_komplett"; -VAL_ 1122 PSD_Rampe 0 "Strasse_mit_Gegenverkehr" 1 "Auffahrt_Einbahnstr" 2 "Abfahrt_Einbahnstr" 3 "Einbahnstrasse"; -VAL_ 1122 PSD_Anfangskruemmung 255 "Gerade"; -VAL_ 1122 PSD_Anfangskruemmung_Vorz 0 "positiv" 1 "negativ"; -VAL_ 1122 PSD_Abzweigerichtung 0 "rects_abzweigende_Strasse" 1 "links_abzweigende_Strasse"; -VAL_ 1123 PSD_Pos_Segment_ID 0 "keine Position gegeben" 1 "Fehlerwert"; -VAL_ 1123 PSD_Pos_Standort_Eindeutig 0 "mehrdeutiger_Standort" 1 "eindeutiger_Standort"; -VAL_ 1123 PSD_Pos_Fehler_Laengsrichtung 0 "Init" 1 "< 2m" 2 "< 5m" 3 "< 10m" 4 "< 20m" 5 "< 50m" 6 "> 50m" 7 "Off-Road"; -VAL_ 1123 PSD_Pos_Fahrspur 0 "unbekannt" 1 "Erste_Spur_von_rechts" 2 "Zweite_Spur_von_rechts" 3 "Dritte_Spur_von_rechts" 4 "Vierte_Spur_von_rechts" 5 "Fuenfte_Spur_von_rechts" 6 "Sechte_Spur_von_rechts" 7 "Siebte_oder_weitere_Spur_von_rechts"; -VAL_ 1123 PSD_Attribut_Segment_ID_05 0 "keine_Segment_Information" 1 "Fehler"; -VAL_ 1123 PSD_Attribut_1_ID 0 "keine_Information"; -VAL_ 1123 PSD_Attribut_2_ID 0 "keine_Information"; -VAL_ 1123 PSD_Attribute_Komplett_05 0 "Attribute_nicht_komplett" 1 "Attribute_komplett"; -VAL_ 1124 PSD_06_Mux 0 "Init"; -VAL_ 1124 PSD_Sys_Segment_ID 0 "keine Segmentinformationen vorhanden" 1 "nicht zulaessig"; -VAL_ 1124 PSD_Sys_Geschwindigkeit_Einheit 0 "km/h" 1 "mph"; -VAL_ 1124 PSD_Sys_Verkehrsrichtung 0 "Rechtsverkehr" 1 "Linksverkehr"; -VAL_ 1124 PSD_Sys_Geometrieguete 0 "Geringe_Guete" 1 "tbd" 2 "tbd" 3 "Hohe_Guete"; -VAL_ 1124 PSD_Sys_Mapmatchingguete 0 "geringe_Guete" 1 "res" 2 "res" 3 "hohe_Guete"; -VAL_ 1124 PSD_Sys_Alter_Karte 0 "kleiner_1_Jahr" 1 "1_Jahr" 2 "2_Jahre" 3 "3_Jahre" 4 "4_Jahre" 5 "5_Jahre" 6 "6_Jahre" 7 "groesser_7_Jahre"; -VAL_ 1124 PSD_Sys_Zielfuehrung 0 "Zielfuehrung nicht aktiv" 1 "Zielfuehrung aktiv"; -VAL_ 1124 PSD_Sys_US_State 0 "kein_US_State" 1 "Alabama" 2 "Alaska" 3 "Arkansas" 4 "Arizona" 5 "California" 6 "Colorado" 7 "Conneticut" 8 "District_of_Columbia" 9 "Delaware" 10 "Florida" 11 "Georgia" 12 "Hawaii" 13 "Idaho" 14 "Illinois" 15 "Iowa" 16 "Indiana" 17 "Kansas" 18 "Kentucky" 19 "Louisiana" 20 "Massachusetts" 21 "Maryland" 22 "Maine" 23 "Michigan" 24 "Minnesota" 25 "Missouri" 26 "Mississippi" 27 "Montana" 28 "North_Carolina" 29 "North_Dakota" 30 "Nebraska" 31 "Nevada" 32 "New_Hampshire" 33 "New_Jersey" 34 "New_Mexico" 35 "New_York" 36 "Ohio" 37 "Oklahoma" 38 "Oregon" 39 "Pennsylvania" 40 "Puerto_Rico" 41 "Rhode_Island" 42 "South_Carolina" 43 "South_Dakota" 44 "Tennessee" 45 "Texas" 46 "Utah" 47 "Virginia" 48 "Virgin_Islands" 49 "Vermont" 50 "Washington" 51 "Wisconsin" 52 "West_Virginia" 53 "Wyoming"; -VAL_ 1124 PSD_Sys_Quali_verfuegbar 0 "Qualitaetskriterien_nicht_verfuegbar" 1 "Qualitaetskriterien_verfuegbar"; -VAL_ 1124 PSD_Sys_Zielfuehrung_geaendert 0 "Zielfuehrung_nicht_geaendert" 1 "Zielfuehrung_geaendert"; -VAL_ 1124 PSD_Sys_Geometrieguete_erweitert 0 "Init"; -VAL_ 1124 PSD_Attribut_Segment_ID 0 "keine_Segment_Information_vorhanden" 1 "Fehler"; -VAL_ 1124 PSD_Attribut_3_ID 0 "keine_Information"; -VAL_ 1124 PSD_Attribut_4_ID 0 "keine_Information"; -VAL_ 1124 PSD_Attribut_5_ID 0 "keine_Information"; -VAL_ 1124 PSD_Attribute_Komplett_06 0 "Attribute_nicht_komplett" 1 "Attribute_komplett"; -VAL_ 1124 PSD_Ges_Segment_ID 0 "keine Segmentinformationen vorhanden" 1 "nicht zulaessig"; -VAL_ 1124 PSD_Ges_Geschwindigkeit 0 "Kein Geschwindigkeitsgebot" 1 "0 km/h < v_max < 5 km/h" 2 "5 km/h < v_max < 10km/h" 3 "10 km/h < v_max < 15 km/h" 4 "15 km/h < v_max < 20 km/h" 5 "20 km/h < v_max < 25 km/h" 6 "25 km/h < v_max < 30 km/h" 7 "30 km/h < v_max < 35 km/h" 8 "35 km/h < v_max < 40 km/h" 9 "40 km/h < v_max < 45 km/h" 10 "45 km/h < v_max < 50 km/h" 11 "50 km/h < v_max < 60 km/h" 12 "60 km/h < v_max < 70 km/h" 13 "70 km/h < v_max < 80 km/h" 14 "80 km/h < v_max < 90 km/h" 15 "90 km/h < v_max < 100 km/h" 16 "100 km/h < v_max < 110 km/h" 17 "110 km/h < v_max < 120 km/h" 18 "120 km/h < v_max < 130 km/h" 19 "130 km/h < v_max < 140 km/h" 20 "140 km/h < v_max < 150 km/h" 21 "150 km/h < v_max < 160 km/h" 22 "160 km/h < v_max" 23 "Geschwindigkeitsgebot aufgehoben" 24 "..0x1F ungültig"; -VAL_ 1124 PSD_Ges_Typ 0 "Geschw_Klasse_des_Kartendatensuppliers" 1 "Explizit_abgeleiteten_Begrenzung" 2 "Durch_Gesetzg_vorgeg_allgem_Gebot_fuer_uebertr_Rahmenbed" 3 "Init"; -VAL_ 1124 PSD_Ges_Spur_Geschw_Begrenzung 0 "Gebot_fuer_alle_spuren_gueltig"; -VAL_ 1124 PSD_Ges_Geschwindigkeit_Gespann 0 "alle Fahrzeuge" 1 "PKW mit Gespann" 2 "LKW, Busse, etc."; -VAL_ 1124 PSD_Ges_Geschwindigkeit_Witter 0 "Witterungsunabh䮧ig" 1 "N䳳e, Regen, Niederschlag" 2 "Gl䴴e" 3 "Nebel"; -VAL_ 1124 PSD_Ges_Geschwindigkeit_Tag_Anf 0 "kein Beginn definiert" 1 "Montag" 2 "Dienstag" 3 "Mittwoch" 4 "Donnerstag" 5 "Freitag" 6 "Samstag" 7 "Sonntag"; -VAL_ 1124 PSD_Ges_Geschwindigkeit_Tag_Ende 0 "kein Ende definiert" 1 "Montag" 2 "Dienstag" 3 "Mittwoch" 4 "Donnerstag" 5 "Freitag" 6 "Samstag" 7 "Sonntag"; -VAL_ 1124 PSD_Ges_Geschwindigkeit_Std_Anf 25 "kein Beginn für stundenweise Einschr䮫ungen"; -VAL_ 1124 PSD_Ges_Geschwindigkeit_Std_Ende 25 "kein Ende für stundenweise Einschr䮫ungen"; -VAL_ 1124 PSD_Ges_Ueberholverbot 0 "kein ܢerholverbot" 1 "alle Fahrzeuge" 2 "ܢerholverbot für PKW mit Gespann" 3 "ܢerholverbot für LKW, Busse, etc."; -VAL_ 1124 PSD_Ges_Wechselverkehrszeichen 0 "Kein Wechselverkehrszeichen" 1 "Wechselverkehrszeichen links" 2 "Wechselverkehrszeichen rechts" 3 "Wechselverkehrszeichen links und rechts" 4 "Wechselverkerhszeichen über der Fahrbahn"; -VAL_ 1124 PSD_Wechselverkehrszeichen_Typ 0 "kein_Wechselverkehrszeichen" 1 "LED_Wechselverkehrszeichen" 2 "nicht_LED_Wechselverkehrszeichen"; -VAL_ 1124 PSD_Ges_Gesetzlich_Kategorie 0 "kein_legales_Verbot" 1 "innerorts" 2 "ausserorts" 3 "Autobahn"; -VAL_ 1124 PSD_Ges_Gesetzlich_Zusatz 0 "kein_Zusatz_zu_legalem_Gebot" 1 "Anhaenger_Klasse_1" 2 "Anhaenger_Klasse_2"; -VAL_ 1124 PSD_Ges_Verkehrszeichen_Quelle 0 "VZA_kein_Onlinedienst" 1 "nur_VZA" 2 "nur_VZO" 3 "VZA_und_VZO"; -VAL_ 1124 PSD_Ges_Attribute_Komplett 0 "Attribute_nicht_komplett" 1 "Attribute_komplett"; -VAL_ 1124 PSD_Baum_Laenge_VZ 0 "Ost" 1 "West"; -VAL_ 1124 PSD_Baum_Breite_VZ 0 "Nord" 1 "Sued"; -VAL_ 1124 PSD_Steigung_1_Segment_ID 0 "keine_Segment_Information_vorhanden" 1 "Fehler"; -VAL_ 1124 PSD_Steigung_1_A_Steigung 126 "mehr_als_15_Prozent" 127 "Steigung_unbekannt"; -VAL_ 1124 PSD_Steigung_1_A_Vorz 0 "Gefaelle" 1 "Steigung"; -VAL_ 1124 PSD_Steigung_1_B_Steigung 126 "mehr_als_15_Prozent" 127 "Steigung_unbekannt"; -VAL_ 1124 PSD_Steigung_1_B_Vorz 0 "Gefaelle" 1 "Steigung"; -VAL_ 1124 PSD_Steigung_1_Attribute_kompl 0 "Steigungen_nicht_komplett" 1 "Steigungen_komplett"; -VAL_ 1124 PSD_Steigung_2_Segment_ID 0 "keine_Segment_Information_vorhanden" 1 "Fehler"; -VAL_ 1124 PSD_Steigung_2_Steigung 126 "mehr_als_15_Prozent" 127 "Steigung_unbekannt"; -VAL_ 1124 PSD_Steigung_2_Vorz 0 "Gefaelle" 1 "Steigung"; -VAL_ 1124 PSD_Steigung_2_Attribute_kompl 0 "Steigungen_nicht_komplett" 1 "Steigungen_komplett"; -VAL_ 1153 ZR_LoGeWa_Event_Kombiwarnung 0 "Init" 1 "Unfall" 2 "Traktionsverlust" 3 "Panne" 4 "Sichtbehinderung" 5 "Aquaplaning" 6 "EEBL" 7 "SEF_stat" 8 "SEF_dyn_allgemein" 9 "SEF_dyn_vorne" 10 "SEF_dyn_hinten" 11 "SEF_dyn_links" 12 "SEF_dyn_rechts" 13 "Stauende"; -VAL_ 1153 Nav_FoD_Status 0 "Init" 1 "Nav_permanently_available" 2 "FoD_Nav_not_activated" 3 "FoD_Nav_activated" 4 "R4N_Nav_not_activated"; -VAL_ 1153 MIB_Tongenerator_PH_verfuegbar 0 "Tongenerator_nicht_verfuegbar" 1 "Tongenerator_vorne_verfuegbar" 2 "Tongenerator_hinten_verfuegbar" 3 "Tongenerator_gesamt_verfuegbar" 4 "Tongenerator_im_AMP"; -VAL_ 1153 DSSS_Warning 0 "No_Warning" 1 "Red_traffic_light_guidance" 2 "Stop_sign_warning" 3 "Rear_end_collision_avoidance_warning" 4 "Intersection_collision_avoidance_warning_right" 5 "Intersection_collision_avoidance_warning_left" 6 "turn_right_collision_avoidance" 7 "turn_left_collision_avoidance" 8 "pedestrian_crossing_right" 9 "pedestrian_crossing_left" 10 "bicycle_collision_right" 11 "bicycle_collision_left"; -VAL_ 1153 ZR_Kindersicherung_RSE 0 "inaktiv" 1 "aktiv"; -VAL_ 1153 ZR_RSE_aktivieren 0 "inaktiv" 1 "aktiv"; -VAL_ 1153 MMI_SDS_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1153 MU_SecondDisplay 0 "Init" 1 "gueltige_Karte" 2 "ungueltiges_Signal" 3 "Nicht_Verbaut"; -VAL_ 1153 MMI_Telefon_aktiv 0 "Telefongespraech_nicht_aktiv" 1 "Telefongespraech_aktiv"; -VAL_ 1153 MMI_Gurt_Mic_ref 0 "Downlink_inaktiv" 1 "Downlink_aktiv"; -VAL_ 1153 ZR_Sta_Inszenierung 0 "Init" 1 "Inszenierung_deaktiviert" 2 "Inszenierung_Start" 3 "Inszenierung_Stop"; -VAL_ 1153 MMI_Gauges_active 0 "gauges_inactive" 1 "gauges_active"; -VAL_ 1153 ZR_MXB_Manoever_Ansage 0 "keine_Ansage" 1 "Ansage_ohne_Richtung" 2 "Ansage_rechte_Richtung" 3 "Ansage_linke_Richtung"; -VAL_ 1153 ZR_LAPP_Sondermodus_Status 0 "keine_Anforderung" 1 "Sondermodus_aktiv" 2 "Aktivierung_nicht_moeglich"; -VAL_ 1153 MMI_StartStopp_Info 0 "Stoppfreigabe" 1 "Stoppverbot" 2 "Startanforderung" 3 "Fehler"; -VAL_ 1153 ZR_Parken_Sondermodus 0 "Init" 1 "Sondermodus_aktiv" 2 "Sondermodus_nicht_verfuegbar" 3 "WLAN_aus" 4 "WLAN_auscodiert" 15 "keine_WLAN_HW"; -VAL_ 1153 ZR_Rundenbewertung 0 "Bewertung_nicht_aktiv" 1 "langsamer" 2 "gleich_schnell" 3 "schneller" 4 "reserviert" 5 "reserviert" 6 "reserviert" 7 "reserviert" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "Init" 15 "Funktion_nicht_verbaut"; -VAL_ 1153 ZR_Rundenfortschritt 254 "Init" 255 "Funktion_nicht_verbaut"; -VAL_ 1155 Mo_Powermeter_Grenze 4093 "OFF"; -VAL_ 1155 MO_Text_Aktivierung_Antrieb 0 "keine_Anzeige" 1 "Ladestecker_nicht_fahrbereit" 2 "erneute_Aktivierung_erforderlich" 3 "Warten_Antrieb_wird_aktiviert" 4 "zum_Fahren_Bremse_und_Fahrstufe" 5 "h2_Tankklappe_nicht_fahrbereit" 6 "zum_Starten_Bremse_treten" 7 "zum_Starten_Kupplung_treten" 15 "Init"; -VAL_ 1155 MO_Powermeter_Inszenierung_aktiv 0 "keine_Anzeige" 1 "Inszenierung_aktiv"; -VAL_ 1155 MO_Powermeter_Charge_Grenze 1022 "Init" 1023 "Fehler"; -VAL_ 1155 MO_Powermeter_Grenze_strategisch 4094 "Init" 4095 "Fehler"; -VAL_ 1155 MO_Powermeter_untere_E_Grenze 4094 "Init" 4095 "Fehler"; -VAL_ 1155 MO_Powermeter_obere_E_Grenze 4094 "Init" 4095 "Fehler"; -VAL_ 1175 PH_Visualisierung 0 "Aus" 1 "Angefragt" 2 "InAnzeige" 3 "Abgefordert" 6 "Init" 7 "Fehler"; -VAL_ 1175 PDC_Tonausgabe_Front 0 "kein_Ton" 1 "Intervallton_1" 2 "Intervallton_2" 3 "Intervallton_3" 4 "Intervallton_4" 5 "Intervallton_5" 6 "Dauerton" 7 "Fehlerton" 8 "RCTATon"; -VAL_ 1175 PDC_Tonausgabe_Heck 0 "kein_Ton" 1 "Intervallton_1" 2 "Intervallton_2" 3 "Intervallton_3" 4 "Intervallton_4" 5 "Intervallton_5" 6 "Dauerton" 7 "Fehlerton" 8 "Erstwarnton_hinten" 9 "RCTATon"; -VAL_ 1175 PH_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 1175 PH_Abschaltursache 0 "keine, bzw. System aktiv" 1 "Abschaltung durch Herausnahme R-Gang" 2 "Abschaltung ueber Geschwindigkeit" 3 "Abschaltung ueber PDC-Taster" 4 "Abschaltung wegen PLA" 5 "Abschaltung durch KL 15 Bit = 0" 6 "tbd." 7 "Fehler-/gestört Zustand, System noch aktiv"; -VAL_ 1175 PH_Opt_Anzeige_V_ein 0 "optische Anzeige vorne nicht aktiv" 1 "optische Anzeige vorne aktiviert"; -VAL_ 1175 PH_Opt_Anzeige_H_ein 0 "Optische Anzeige aus" 1 "optische Anzeige hinten aktiviert"; -VAL_ 1175 PH_Opt_Anz_V_Hindernis 0 "optische Anzeige vorne meldet kein Hindernis" 1 "optische Anzeige vorne meldet Hindernis im Warnbereich"; -VAL_ 1175 PH_Opt_Anz_H_Hindernis 0 "optische Anzeige hinten meldet kein Hindernis" 1 "optische Anzeige hinten meldet Hindernis im Warnbereich"; -VAL_ 1175 PH_Tongeber_V_aktiv 0 "Tongeber vorne nicht aktiv" 1 "Tongeber vorne aktiv"; -VAL_ 1175 PH_Tongeber_H_aktiv 0 "Tongeber hinten nicht aktiv" 1 "Tongeber hinten aktiv"; -VAL_ 1175 PH_Tongeber_mute 0 "Tongeber nicht stummgeschaltet" 1 "Tongeber stummgeschaltet"; -VAL_ 1175 PH_Anf_Audioabsenkung 0 "Keine_Audioabsenkung" 1 "Anforderung_Audioabsenkung"; -VAL_ 1175 PH_Tongeber_H_verfuegbar 0 "nicht verfügbar" 1 "verfügbar"; -VAL_ 1175 PLA_Anf_Aufschaltung_RVC 0 "Keine_RVC_Aufschalteanf" 1 "RVC_Aufschalteanforderung"; -VAL_ 1175 PH_Taster 0 "Taster_nicht_gedrueckt" 1 "Taster_gedrueckt" 2 "reserviert" 3 "Fehler"; -VAL_ 1175 PH_Anf_Verdeck 0 "Verdeckbetrieb_freigegeben" 1 "Verdeckbetrieb_sperren" 2 "reserviert" 3 "reserviert"; -VAL_ 1175 PH_StartStopp_Info 0 "Motorlauf_nicht_notwendig_(Stoppfreigabe)" 1 "Motoranlauf_nicht_zwingend_notwendig_(Stoppverbot,keine_Startanforderung)" 2 "Motoranlauf_zwingend_notwendig_(Startanforderung)" 3 "Systemfehler"; -VAL_ 1175 PH_Stoermeldung 0 "keine_Anzeige_kein_Gong" 1 "Textmeldung_PDC_hinten_gestoert_mit_Gong" 2 "Textmeldung_PDC_hinten_gestoert_ohne_Gong" 3 "Textmeldung_PDC_vorn_gestoert_mit_Gong" 4 "Textmeldung_PDC_vorn_gestoert_ohne_Gong" 5 "Textmeldung_PDC_gestoert_mit_Gong" 6 "Textmeldung_PDC_gestoert_ohne_Gong" 7 "Textmeldung_PDC_seitlich_gestoert_mit_Gong" 8 "Textmeldung_PDC_seitlich_gestoert_ohne_Gong"; -VAL_ 1175 PH_defekt 0 "PH aktiv" 1 "PH wurde aufgrund eines Defektes deaktiviert"; -VAL_ 1175 PH_gestoert 0 "PH aktiv" 1 "PH wurde auf Grund einer Stoerung tempraer deaktiviert"; -VAL_ 1175 PH_Systemzustand 0 "Anlage aus" 1 "Anlage durch einlegen R-Gang aktiviert" 2 "Anlage manuell durch Taster aktiviert" 3 "Anlage automatisch aktiviert" 4 "Anlage durch ARA aktiviert" 6 "Init - Initialisierungsphase nach Kl. 15 ein / Reset" 7 "Fehler-/gestört Zustand, System noch aktiv"; -VAL_ 1175 PH_Display_Kundenwunsch 0 "Anzeige aus" 1 "Grafik" 2 "Rear View" 3 "automatisch"; -VAL_ 1283 HVK_Istmodus_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 1283 HVK_TN1_Sollmodus 0 "HV_Off" 1 "HV_On" 2 "reserviert" 3 "Initialisierung"; -VAL_ 1283 HVK_MO_EmSollzustand 0 "HvOff" 1 "HvStbyReq" 2 "HvStbyWait" 3 "HvBattOnReq" 4 "HvBattOnWait" 10 "HvOnIdle" 18 "HvOnDrvReq" 19 "HvOnDrvWait" 20 "HvOnDrvRdy" 28 "HvStepUpReq" 29 "HvStepUpWait" 30 "HvStepUp" 38 "HvStepDownReq" 39 "HvStepDownWait" 40 "HvStepDown" 46 "HvAcChPreReq" 47 "HvAcChPreWait" 48 "HvAcChReq" 49 "HvAcChWait" 50 "HvAcCh" 56 "HvDcChPreReq" 57 "HvDcChPreWait" 58 "HvDcChReq" 59 "HvDcChWait" 60 "HvDcCh" 67 "HvChOffReq" 68 "HvChOffWait" 69 "HvOnIdleReq" 70 "HvOnIdleWait" 96 "HvCpntOffReq" 97 "HvCpntOffWait" 98 "HvBattOffReq" 99 "HvBattOffWait" 109 "HvDcDcFailOffReq" 110 "HvDcDcFail" 119 "HvElmOffReq" 120 "HvElmOff" 126 "HvFailCpntOffReq" 127 "HvFailCpntOffWait" 128 "HvFailBattOffReq" 129 "HvFailBattOffWait" 130 "HvFailBattOff" 138 "HvFailUCtlReq" 139 "HvFailUCtlWait" 140 "HvFailUCtl" 150 "HvEmgcyOff" 255 "Init"; -VAL_ 1283 HVK_BMS_Sollmodus 0 "HV_Off" 1 "HV_On" 3 "AC_Laden_erw" 4 "AC_Laden" 6 "DC_Laden" 7 "Init"; -VAL_ 1283 HVK_DCDC_Sollmodus 0 "Standby" 1 "HV_On_Vorladen" 2 "Tiefsetzen" 3 "Hochsetzen" 4 "Pruefpuls_12V" 7 "Initialisierung"; -VAL_ 1283 HVK_EKK_Sollmodus 0 "Keine_Freigabe" 1 "Freigabe" 2 "Freigabe_ausgesetzt" 7 "Init"; -VAL_ 1283 HVK_HVPTC_Sollmodus 0 "Keine_Freigabe" 1 "Freigabe" 2 "Freigabe_ausgesetzt" 7 "Init"; -VAL_ 1283 HVK_HVLM_Sollmodus 0 "keine_Freigabe" 1 "Freigabe_Lademanager" 2 "Vorladung_AC_Pfad" 7 "Init"; -VAL_ 1283 HVK_HV_Netz_Warnungen 0 "Keine_Warnung" 1 "Warntext_HV_Netz_Anf" 2 "Fehlertext_HV_Netz_Anf" 3 "Warnung_Kein_Wiederstart_moeglich"; -VAL_ 1283 HV_Bordnetz_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1283 HV_Bordnetz_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 1283 HVK_Gesamtst_Spgfreiheit 0 "Funktion_Init__ohne_Funktion" 1 "HV_System_spannungsfrei" 2 "HV_System_nicht_spannungsfrei" 3 "Fehler"; -VAL_ 1283 HVK_AktiveEntladung_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 1283 HVK_Iso_Messung_Start 0 "keine_Messung" 1 "Messung_HV_Netz_1" 2 "Messung_HV_Netz_2" 4 "deaktiviert"; -VAL_ 1283 HVK_DCDC_EKK_Sollmodus 0 "aus" 1 "ein" 2 "reserviert" 3 "Init"; -VAL_ 1312 LoGeWa_Event_Kombiwarnung 0 "Init" 1 "Unfall" 2 "Traktionsverlust" 3 "Panne" 4 "Sichtbehinderung" 5 "Aquaplaning"; -VAL_ 1312 AB_Anforderung_eCall 0 "keine_Anforderung" 1 "Anforderung"; -VAL_ 1312 AB_Anprall_Seite_Beifahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Anprall_Rollover 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Anprall_FGS 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Anprall_Front_Beifahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Anprall_Front_Fahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Anprall_Heck_Beifahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Anprall_Heck_Fahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 AB_Wickelklappung_Reihe2_MI 0 "nicht_verbaut" 1 "nicht_verfuegbar__Fehler_oder_Init" 2 "nicht_verriegelt" 3 "verriegelt"; -VAL_ 1312 AB_Belegung_VB 0 "nicht_verfuegbar" 1 "Fehler" 2 "nicht_belegt" 3 "belegt"; -VAL_ 1312 AB_Abschaltanf_SIH_BF 0 "Normalbetrieb" 1 "Abschaltung_angefordert"; -VAL_ 1312 AB_Anprall_Seite_Fahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; -VAL_ 1312 SC_PAO_Schriftzug_Anf 0 "LED aus" 1 "LED an" 2 "LED blinken" 3 "reserviert"; -VAL_ 1312 SC_PAO_ON_Anf 0 "LED aus" 1 "LED an" 2 "LED blinken" 3 "reserviert"; -VAL_ 1312 SC_PAO_OFF_Anf 0 "LED aus" 1 "LED an" 2 "LED blinken" 3 "reserviert"; -VAL_ 1312 AB_Crashschwere 0 "kein_Ereignis" 1 "Crashschwere_1" 2 "Crashschwere_2" 3 "Crashschwere_3" 4 "Crashschwere_4" 5 "Crashschwere_5" 6 "Crashschwere_2_bis_5" 7 "Fehler"; -VAL_ 1312 AB_Anforderung_USM 0 "keine_Anforderung" 1 "Anforderung"; -VAL_ 1312 AB_Gurtschloss_FA 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_BF 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_Reihe2_FA 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_Reihe2_MI 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_Reihe2_BF 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_Reihe3_FA 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_Reihe3_MI 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Gurtschloss_Reihe3_BF 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; -VAL_ 1312 AB_Sitzpos_Sens_FA 0 "nicht verfügbar" 1 "Fehler" 2 "Sitz nicht vorne" 3 "Sitz vorne"; -VAL_ 1312 AB_Sitzpos_Sens_BF 0 "nicht verfügbar" 1 "Fehler" 2 "Sitz nicht vorne" 3 "Sitz vorne"; -VAL_ 1312 AB_Wickelklappung_Reihe2_BF 0 "nicht_verbaut" 1 "nicht_verfuegbar__Fehler_oder_Init" 2 "nicht_verriegelt" 3 "verriegelt"; -VAL_ 1312 AB_Wickelklappung_Reihe2_FA 0 "nicht_verbaut" 1 "nicht_verfuegbar__Fehler_oder_Init" 2 "nicht_verriegelt" 3 "verriegelt"; -VAL_ 1349 AB_Gurtwarn_Reihe2_FA 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; -VAL_ 1349 AB_Gurtwarn_Reihe2_BF 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; -VAL_ 1349 AbstWarn_MV_FAS_Fkt_Status 0 "Init" 1 "Funktion_Ist_Ein" 2 "Funktion_Ist_Aus" 3 "Fehler"; -VAL_ 1349 WarnBrems_Charisma_Status 0 "Init" 1 "verfügbar" 2 "nicht verfügbar" 3 "asynchron durch Fahrerwunsch"; -VAL_ 1349 WarnBrems_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 1349 AB_Gurtwarn_Reihe2_MI 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; -VAL_ 1349 AB_Gurtwarn_Reihe3_FA 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; -VAL_ 1349 AB_Gurtwarn_Reihe3_MI 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; -VAL_ 1349 AB_Gurtwarn_Reihe3_BF 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; -VAL_ 1349 LGI_FAS_Fkt_Status 0 "Init" 1 "Funktion_Ist_Ein" 2 "Funktion_Ist_Aus" 3 "Fehler"; -VAL_ 1349 PreCrash_FAS_Fkt_Status 0 "Init" 1 "Funktion_Ist_Ein" 2 "Funktion_Ist_Aus" 3 "Fehler"; -VAL_ 1349 AB_SBR_hinten_verbau 0 "ohne_SBR_hinten" 1 "mit_SBR_hinten" 2 "nicht_definiert" 3 "Init"; -VAL_ 1349 AWV_Einstellung_System_ASG 0 "deaktiviert" 1 "aktiviert"; -VAL_ 1349 AWV_Einstellung_Warnung_ASG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; -VAL_ 1349 SC_PreSense_Modus_Warnung_NV 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; -VAL_ 1349 SC_PreSense_Modus_Warnung_MV 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; -VAL_ 1349 SC_PreSense_Modus_System_MV 0 "deaktiviert" 1 "aktiviert"; -VAL_ 1349 SC_PreSense_Modus_System_NV 0 "deaktiviert" 1 "aktiviert"; -VAL_ 1349 SC_PreSense_Modus_System_KAS 0 "deaktiviert" 1 "aktiviert"; -VAL_ 1355 PH_Verschmutzungsmeldung 0 "keine_Anzeige_kein_Gong" 1 "Textmeldung_PDC_hinten_verschmutzt_mit_Gong" 2 "Textmeldung_PDC_hinten_verschmutzt_ohne_Gong" 3 "Textmeldung_PDC_vorn_verschmutzt_mit_Gong" 4 "Textmeldung_PDC_vorn_verschmutzt_ohne_Gong" 5 "Textmeldung_PDC_verschmutzt_mit_Gong" 6 "Textmeldung_PDC_verschmutzt_ohne_Gong" 7 "Textmeldung_PDC_seitlich_verschmutzt_mit_Gong" 8 "Textmeldung_PDC_seitlich_verschmutzt_ohne_Gong"; -VAL_ 1355 PH_Aufschaltursache 0 "Anlage aus" 1 "Anlage durch einlegen R-Gang aktiviert" 2 "Anlage manuell durch Taster aktiviert" 3 "Anlage automatisch aktiviert" 4 "Anlage durch ARA aktiviert" 5 "Rueckwaertsrollen" 6 "Anlage_durch_PLA_aktiviert" 7 "Anlage_durch_IPA_aktiviert" 8 "Anlage_durch_FA_aktiviert" 9 "Anlage_durch_RBF_oder_MA_aktiviert" 10 "Anlage_durch_Smartphone_aktiviert" 11 "Anlage_durch_Jokertaste_aktiviert" 12 "Anlage_durch_Favoritentasten_aktiviert" 13 "Anlage_durch_SideViewTaster_aktiviert" 14 "Anlage_durch_RCTA_aktiviert" 15 "Anlage_durch_KAS_aktiviert" 16 "Anlage_durch_AWC_aktiviert" 30 "Init_Initialisierungsphase_nach_Kl_15_ein_oder_Reset" 31 "Fehler_gestoerter_Zustand_System_noch_aktiv"; -VAL_ 1355 PH_Ton_Ausgabe 0 "Init" 1 "Intervallton_vorne" 2 "Intervallton_hinten" 3 "Dauerton_vorne" 4 "Dauerton_hinten" 5 "Quittierungston" 6 "Reserviert" 7 "Fehler"; -VAL_ 1355 PH_Ton_Pausenlaenge 0 "Init" 1 "Pause_5ms" 2 "Pause_10ms" 3 "Pause_15ms" 100 "Pause_500ms" 101 "Reserviert" 126 "Reserviert" 127 "Fehler"; -VAL_ 1355 PH_Ton_Richtung 0 "vorne" 1 "vorne_rechts" 2 "rechts" 3 "rechts_hinten" 4 "hinten" 5 "hinten_links" 6 "links" 7 "vorne_links"; -VAL_ 1355 PH_Ton_Lautstaerke 0 "Minimallautstaerke" 1 "Lautstaerke_1" 2 "Lautstaerke_2" 3 "Lautstaerke_3" 4 "Lautstaerke_4" 5 "Lautstaerke_5" 6 "Lautstaerke_6" 7 "Maximallautstaerke"; -VAL_ 1355 BCM_WAH_Meldung 0 "Init" 1 "Fehlermeldung_bei_Nichtverfuegbarkeit_mit_Gong" 2 "Fehlermeldung_bei_Nichtverfuegbarkeit_ohne_Gong" 3 "Anzeige_dass_Fahrzeug_erkannt_wurde_und_Funktion_aktiv_ist" 4 "Wiederanfahrhinweis_mit_Gong" 5 "Wiederanfahrhinweis_ohne_Gong"; -VAL_ 1355 PDC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 1355 PDC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 1361 WFS_Schluessel_Fahrberecht 0 "kein authorisierter Schluessel erkannt" 1 "aktive_Funkschluessel_Nr_01" 2 "aktive_Funkschluessel_Nr_02" 3 "aktive_Funkschluessel_Nr_03" 4 "aktive_Funkschluessel_Nr_04" 5 "aktive_Funkschluessel_Nr_05" 6 "aktive_Funkschluessel_Nr_06" 7 "aktive_Funkschluessel_Nr_07" 8 "aktive_Funkschluessel_Nr_08" 9 "ungueltig_09" 10 "ungueltig_10" 11 "ungueltig_11" 12 "ungueltig_12" 13 "ungueltig_13" 14 "ungueltig_14" 15 "digitaler_Schluessel_aktiv"; -VAL_ 1361 WFS_ID_Geb_autorisiert 0 "Schluessel_nicht_authorisiert" 1 "Schluessel authorisiert"; -VAL_ 1361 WFS_ID_Geb_autorisiert_in_Kl15 0 "nicht_authorisiert_in_Kl15" 1 "authorisiert_in_Kl15"; -VAL_ 1361 WFS_ID_Geb_steckt 0 "kein_Schluessel_im_Zuendschloss" 1 "Schluessel steckt im Zuendschloss"; -VAL_ 1361 WFS_Schluessel_Soll 0 "Init"; -VAL_ 1361 WFS_Schluessel_Ist 0 "Init"; -VAL_ 1361 WFS_Safe 0 "Init" 1 "WFS nicht deaktiviert"; -VAL_ 1361 WFS_LZ 0 "nicht def." 1 "LZ 1" 2 "LZ 2" 3 "LZ 3"; -VAL_ 1361 WFS_ELV_authorisiert 0 "ELV_nicht_authorisiert" 1 "ELV_authorisiert"; -VAL_ 1361 WFS_LF_Aktiv 0 "Funktempfang_nicht_aktiv" 1 "LF_Funkempfang_aktiv"; -VAL_ 1361 WFS_Betrieb_Lesespule 0 "keine_Schluesselkomm_Lesespule" 1 "Schluesselkomm_Lesespule"; -VAL_ 1361 WFS_Klemmenfreigabe 0 "keine_Freigabe" 1 "Freigabe"; -VAL_ 1361 WFS_Fahrerhinweise 0 "Keine_Anzeigeanforderung" 1 "Schuessel_Auth_niO" 2 "Notlauf_aktiv" 3 "Schluessel_Kessy_nicht_gefunden"; -VAL_ 1361 WFS_Parken_Status 0 "Limitierung_inaktiv" 1 "Limitierung_aktiv" 2 "Abbruch"; -VAL_ 1411 BCM_FH_Freigabe 1 "Funktionsfreigabe Fensterheber"; -VAL_ 1411 BCM_Komfortfkt_Freigabe 0 "Komfortfunktion gesperrt" 1 "globale Freigabe der Komfortfunktion erteilt"; -VAL_ 1411 BCM_HSK_Freigabe 0 "erlauben" 1 "sperren"; -VAL_ 1411 BCM_Verdeck_Freigabe 0 "Verdeckbetrieb nicht erlaubt" 1 "Verdeckbetrieb erlaubt"; -VAL_ 1411 ZV_verriegelt_intern_ist 1 "Fahrzeug innen verriegelt; Istzustand"; -VAL_ 1411 ZV_verriegelt_extern_ist 1 "Fahrzeug_aussen_verriegelt_Istzustand"; -VAL_ 1411 ZV_verriegelt_intern_soll 1 "Fahrzeug verriegelt intern; Sollzusstand"; -VAL_ 1411 ZV_verriegelt_extern_soll 1 "Fahrzeug verriegelt extern; Sollzusstand"; -VAL_ 1411 ZV_gesafet_extern_ist 1 "Fahrzeug aussen gesafet; Istzustand"; -VAL_ 1411 ZV_gesafet_extern_soll 1 "Fahrzeug_aussen_gesafet_Sollzustand"; -VAL_ 1411 ZV_Einzeltuerentriegelung 1 "Fahrzeug an Einzeltuer entriegelt"; -VAL_ 1411 ZV_Heckeinzelentriegelung 1 "Heckdeckeleinzelentriegelung"; -VAL_ 1411 ZV_FT_offen 0 "FT_geschlossen" 1 "FT_geoeffnet"; -VAL_ 1411 ZV_BT_offen 0 "BT_geschlossen" 1 "BT_geoeffnet"; -VAL_ 1411 ZV_HFS_offen 0 "geschlossen" 1 "offen"; -VAL_ 1411 ZV_HBFS_offen 0 "geschlossen" 1 "offen"; -VAL_ 1411 ZV_HD_offen 1 "Heckdeckel_auf"; -VAL_ 1411 ZV_HS_offen 0 "Heckscheibe_geschlossen" 1 "Heckscheibe auf"; -VAL_ 1411 IRUE_aktiv 0 "unscharf" 1 "scharf"; -VAL_ 1411 DWA_aktiv 0 "unscharf" 1 "scharf"; -VAL_ 1411 HD_Hauptraste 0 "geschlossen" 1 "offen"; -VAL_ 1411 HD_Vorraste 0 "geschlossen" 1 "offen"; -VAL_ 1411 FFB_CarFinder 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1411 FFB_Komfortoeffnen 0 "kein_Komfortoeffnen_empfangen" 1 "Komfortoeffnen ueber Funk empfangen"; -VAL_ 1411 FFB_Komfortschliessen 0 "kein_Komfortschliessen_empfangen" 1 "Komfortschliessen ueber Funk empfangen"; -VAL_ 1411 ZV_Schluessel_Zugang 0 "kein_auth_Schluessel_erkannt" 1 "aktive_Funkschluessel_Nr_01" 2 "aktive_Funkschluessel_Nr_02" 3 "aktive_Funkschluessel_Nr_03" 4 "aktive_Funkschluessel_Nr_04" 5 "aktive_Funkschluessel_Nr_05" 6 "aktive_Funkschluessel_Nr_06" 7 "aktive_Funkschluessel_Nr_07" 8 "aktive_Funkschluessel_Nr_08" 9 "ungueltig_09" 10 "ungueltig_10" 11 "ungueltig_11" 12 "ungueltig_12" 13 "ungueltig_13" 14 "ungueltig_14" 15 "ungueltig_15"; -VAL_ 1411 ZV_SafeFunktion_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1411 FBS_Warn_Schluessel_Batt 0 "i.O." 1 "defekt"; -VAL_ 1411 ZV_Oeffnungsmodus 0 "globale_Oeffnung" 1 "ZV_mit_Einzeltuerentr" 2 "ZV_individuell_selektiv" 3 "ZV_seitenselektiv"; -VAL_ 1411 HFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; -VAL_ 1411 HFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; -VAL_ 1411 HBFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; -VAL_ 1411 HBFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; -VAL_ 1411 ZV_ist_Zustand_verfuegbar 0 "nicht_verfuegbar" 1 "verfuegbar_alle_TSGs_am_Bus"; -VAL_ 1411 IRUE_Taster_Fkts_LED 0 "LED_aus" 1 "LED_ein"; -VAL_ 1411 ZV_Tankklappe_offen 0 "Tankklappe_geschlossen" 1 "Tankklappe_offen"; -VAL_ 1411 ZV_Rollo_auf 0 "inaktiv" 1 "aktiv"; -VAL_ 1411 ZV_Rollo_zu 0 "inaktiv" 1 "aktiv"; -VAL_ 1411 ZV_SAD_auf 0 "inaktiv" 1 "aktiv"; -VAL_ 1411 ZV_SAD_zu 0 "inaktiv" 1 "aktiv"; -VAL_ 1411 BCM_Tankklappensteller_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 1411 ZV_verriegelt_soll 0 "Init" 1 "nicht_verriegelt" 2 "verriegelt"; -VAL_ 1413 SI_Sammel_SG_Fehler 61 "Reserviert" 62 "Overflow" 63 "ungueltig"; -VAL_ 1413 SI_Diagnose_Aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1413 SI_QRS_Mode 0 "QRS_Messmodus_nicht_aktiv" 1 "QRS_Messmodus_aktiv"; -VAL_ 1413 SI_T_Mode 0 "Transportmodus_nicht_aktiv" 1 "Transportmodus_aktiv"; -VAL_ 1413 SI_NWDF 0 "Ueberwachung_nicht_freigegeben" 1 "Ueberwachung_freigegeben"; -VAL_ 1413 SI_NWDF_gueltig 0 "NWDF_wird_nicht_unterstuetzt" 1 "NWDF_wird_unterstuetzt"; -VAL_ 1413 SI_Sammelfehler 0 "kein_Sammelfehler" 1 "Sammelfehler"; -VAL_ 1413 GW_KD_Fehler 0 "kein_KD_Fehler" 1 "KD_Fehler"; -VAL_ 1413 SI_T_Schutz 0 "Transportschutz_nicht_aktiv" 1 "Transportschutz_aktiv"; -VAL_ 1413 SI_BUS_01 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_02 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_03 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_04 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_05 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_06 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_07 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_08 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_09 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_10 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_11 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_12 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_13 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_14 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_BUS_15 0 "keine_Busruhe" 1 "Busruhe"; -VAL_ 1413 SI_Bus_Identifikation 16 "CAN_Diagnose" 17 "CAN_Antrieb" 18 "CAN_Komfort" 19 "CAN_Infotainment" 20 "CAN_Fahrwerk" 21 "CAN_Extended" 22 "CAN_Hybrid" 23 "CAN_Lade" 24 "CAN_Kombi" 25 "CAN_Komfort_2" 26 "CAN_AFS" 33 "CAN_FahrerAssistenzSysteme" 34 "CAN_Migration" 35 "CAN_Connect" 36 "CAN_AnzeigeBedienung" 37 "CAN_ElectricalVehicle" 40 "CAN_Telematik" 41 "CAN_MFL" 42 "CAN_FahrerAssistenzSysteme_2" 48 "FlexRay_A" 49 "FlexRay_B" 97 "VLAN_FAS" 98 "VLAN_Infotainment" 99 "VLAN_Connect" 100 "VLAN_Komfort" 101 "VLAN_Antrieb" 102 "VLAN_Diagnose" 103 "VLAN_Internet" 104 "VLAN_Gateway" 105 "VLAN_Remote_FC" 106 "VLAN_Connect_2" 107 "VLAN_Licht" 108 "VLAN_Charge" 109 "VLAN_Cockpit" 176 "HCP1_CANFD01" 177 "HCP1_CANFD02" 178 "HCP1_CANFD03" 179 "HCP1_CANFD04" 180 "HCP1_CANFD05" 181 "HCP1_CANFD06" 182 "HCP1_CANFD07" 183 "HCP1_CANFD08" 186 "HCP4_CANFD03" 187 "HCP4_CANFD04" 188 "HCP1_CANFD09" 189 "HCP4_CANFD06" 190 "HCP4_CANFD07" 191 "HCP4_CANFD08" 192 "HCP4_CANFD09" 193 "HCP4_CANFD10" 194 "HCP1_CANFD10" 195 "ICAS1_CANFD2_HCP5_CANFD02" 196 "HCP1_CANFD11" 197 "WU_HCP1_CANFD" 198 "WU_HCP2_1_CANFD" 199 "WU_HCP_2_CANFD" 200 "WU_HCP_3_CANFD" 201 "WU_HCP4_CANFD" 202 "WU_HCP3_CANFD02" 204 "ESC_CANFD" 205 "HCP4_CANFD11" 206 "HCP4_CANFD12" 207 "HCP5_CANFD04" 208 "HCP5_CANFD05" 212 "WU_ConMod_CANFD" 213 "WU_PASD_CANFD"; -VAL_ 1413 SI_CAB 0 "inaktiv" 1 "CAB_01__Tueren" 2 "CAB_02__Anhaenger" 4 "CAB_03__Nightvision" 8 "CAB_04__Sitzverstellung" 16 "CAB_05__Klappen" 32 "CAB_06__Infotainment" 64 "CAB_07__Sub_Infotainment" 128 "CAB_08__Anzeige" 256 "CAB_09__Laden" 512 "CAB_10__Klima" 1024 "CAB_11__FlexRay" 262144 "CAB_19_VLAN_Remote_FC" 524288 "CAB_20_VLAN_Komfort"; -VAL_ 1420 KST_Txt_P_Gang 0 "Aus" 1 "Ein"; -VAL_ 1420 KST_Txt_Panikabschaltung 0 "Aus" 1 "Ein"; -VAL_ 1420 KST_Anf_Klemmenfreigabe_ELV 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 1420 KST_Txt_Komfortabschaltung 0 "inaktiv" 1 "aktiv"; -VAL_ 1420 KST_ZAT_betaetigt 0 "Aus" 1 "Ein"; -VAL_ 1420 KST_Unterdr_Zuendungsmeldung 0 "keine_Unterdr_der_Zuendungsmeldung" 1 "Unterdr_der_Zuendungsmeldung_aktiv"; -VAL_ 1420 KST_aut_Abschaltung_Zuendung 0 "Zuendung_wird_bei_Verl_nicht_deaktiviert" 1 "Zuendung_wird_bei_Verl_deaktiviert"; -VAL_ 1420 KST_Anf_ZV_Verriegelung 0 "inaktiv" 1 "aktiv"; -VAL_ 1420 Relais_VoKo_angesteuert 0 "nicht_angesteuert" 1 "angesteuert"; -VAL_ 1420 RSt_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" 6 "Parken_mit_P"; -VAL_ 1440 LS_Helligkeit_IR 254 "Init" 255 "Fehler"; -VAL_ 1440 LS_Helligkeit_FW 1022 "Init" 1023 "Fehler"; -VAL_ 1440 LS_defekt 0 "OK" 1 "defekt"; -VAL_ 1440 LS_Verbau 0 "Init" 1 "Lichtsensor_verbaut"; -VAL_ 1440 RS_Regenmenge 14 "Init" 15 "Fehler"; -VAL_ 1440 RS_Verbau 0 "Init" 1 "Regensensor verbaut"; -VAL_ 1440 RS_Verglasung_schliessen 0 "Verglasung nicht schliessen" 1 "Verglasung schliessen"; -VAL_ 1440 RS_defekt 0 "OK" 1 "defekt"; -VAL_ 1440 RS_Wischergeschwindigkeit 0 "kein Wischen" 1 "42 Huebe/min" 2 "45 Huebe/min" 3 "48 Huebe/min" 4 "51 Huebe/min" 5 "54 Huebe/min" 6 "57 Huebe/min" 7 "60 Huebe/min"; -VAL_ 1440 RLS_Vorfeldhelligkeit_Boost 0 "groesser_24413_Lux" 1 "bis_24413_Lux" 2 "bis_22193_Lux" 3 "bis_20176_Lux" 4 "bis_18342_Lux" 5 "bis_16647_Lux" 6 "bis_15158_Lux" 7 "bis_13780_Lux" 8 "bis_12527_Lux" 9 "bis_11388_Lux" 10 "bis_10353_Lux" 11 "bis_9412_Lux" 12 "bis_8556_Lux" 13 "bis_7778_Lux" 14 "bis_7071_Lux" 15 "bis_6428_Lux"; -VAL_ 1442 BMS_Status_ServiceDisconnect 0 "gesteckt" 1 "gezogen"; -VAL_ 1442 BMS_Status_Spgfreiheit 0 "Init" 1 "HV_Komponente_spannungsfrei" 2 "HV_Komp_nicht_spannungsfrei" 3 "Fehler_nicht_spannungsfrei"; -VAL_ 1442 BMS_OBD_Lampe_Anf 0 "kein_MIL_Request" 1 "MIL_Request"; -VAL_ 1442 BMS_IstModus 0 "HV_inaktiv" 1 "Fahren_HV_aktiv" 2 "stBalancing" 3 "externes_Laden" 4 "AC_Laden" 5 "Error_Batt" 6 "DC_Laden" 7 "Init"; -VAL_ 1442 BMS_Fehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Isofehler_I" 2 "Eingeschr_KompFkt_Isofehler_II" 3 "Eingeschr_KompFkt_Interlock" 4 "Eingeschr_KompFkt_SD" 5 "Eingeschr_KompFkt_Leistungsred" 6 "Keine_Komponentenfunktion" 7 "Init"; -VAL_ 1442 BMS_Kapazitaet_02 2047 "Init"; -VAL_ 1442 BMS_Soll_SOC_HiRes 2046 "Init" 2047 "Fehler"; -VAL_ 1447 TM_Spiegel_Anklappen 0 "Init" 1 "Spiegel_anklappen"; -VAL_ 1447 TM_Nur_Hupen 0 "inaktiv" 1 "aktiv"; -VAL_ 1447 TM_Door_Lock 0 "Init" 1 "door_lock"; -VAL_ 1447 TM_Door_Unlock 0 "Init" 1 "door_unlock"; -VAL_ 1447 TM_Warnblinken 0 "Init" 1 "Warnblinken_on"; -VAL_ 1447 TM_Panik_Alarm 0 "Init" 1 "panik_alarm_on"; -VAL_ 1447 TM_ZV_Signatur 0 "Init"; -VAL_ 1452 HVEM_IstStrom_HVVerbraucher 4094 "Init" 4095 "Fehler"; -VAL_ 1452 HVEM_Energie_Klima_Vorgabe_HighR 6 "Init" 7 "Fehler"; -VAL_ 1452 HVEM_IstLeistungNA 510 "Init" 511 "Fehler"; -VAL_ 1452 HVEM_Leistung_Klima_Vorgabe 254 "Init" 255 "Fehler"; -VAL_ 1452 HVEM_Nutzbare_Energie 2045 "Max" 2046 "Init" 2047 "Fehler"; -VAL_ 1452 HVEM_Energie_Klima_Vorgabe 254 "Init" 255 "Fehler"; -VAL_ 1452 HVEM_MO_MaxLeistungIgnoriert 0 "Max_Leistung_nicht_ignoriert" 1 "Max_Leistung_ignoriert"; -VAL_ 1485 DC_Fehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Entlad_defekt" 3 "Eingeschr_KompFkt_Interlock" 6 "Keine_Komponentenfunktion" 7 "Init"; -VAL_ 1485 DC_Peakstrom_verfuegbar 0 "Peakstrom_nicht_verfuegbar" 1 "Peakstrom_verfuegbar"; -VAL_ 1485 DC_Abregelung_Temperatur 0 "keine_Abregelung" 1 "Abregelung_Temp"; -VAL_ 1485 DC_IstModus_02 0 "Standby" 1 "HV_On_Vorladen" 2 "Tiefsetzen" 3 "Hochsetzen" 4 "Pruefimpuls_12V" 5 "Fehler" 7 "Initialisierung"; -VAL_ 1485 DC_HV_EKK_IstModus 0 "Standby" 2 "Tiefsetzen" 3 "Hochsetzen" 5 "Fehler" 7 "Initialisierung"; -VAL_ 1485 DC_Status_Spgfreiheit_HV 0 "Init" 1 "HV_Komponente_spannungsfrei" 2 "HV_Komp_nicht_spannungsfrei" 3 "Fehler_nicht_spannungsfrei"; -VAL_ 1485 DC_IstSpannung_EKK_HV 255 "Init"; -VAL_ 1485 DC_Temperatur 254 "Init" 255 "Fehler"; -VAL_ 1505 BCM1_Aussen_Temp_ungef 253 "nicht_verbaut" 254 "Initwert" 255 "Fehler"; -VAL_ 1505 BCM_Heizungsabsperrventil_Status 0 "HAV_offen" 1 "HAV_geschlossen" 2 "Init_oder_nicht_verbaut" 3 "Fehler"; -VAL_ 1505 BCM_Heizungspumpe_Status 0 "Pumpe_aus" 1 "Pumpe_aktiv_und_Stauts_iO" 2 "Init_oder_nicht_verbaut" 3 "Fehler"; -VAL_ 1505 BCM_Kompressorkupplung_Status 0 "Kupplung_offen" 1 "Kupplung_geschlossen" 2 "Init_oder_nicht_verbaut" 3 "Fehler"; -VAL_ 1505 BCM1_PTC_stufig_Status 0 "Aus" 1 "Stufe_1_aktiv" 2 "Stufe_2_aktiv" 3 "Stufe_3_aktiv" 6 "Init_oder_nicht_verbaut" 7 "Fehler"; -VAL_ 1505 BCM1_FStatus_Aussentemp_ungef 0 "iO" 1 "niO"; -VAL_ 1505 BCM1_Kompressorstrom_ist 254 "Init, bzw. nicht verfuegbar" 255 "Fehler"; -VAL_ 1505 BCM1_OBD_FStatus_ATemp 0 "kein Fehler / Init / nicht verbaut" 1 "KS- (Kurzschluss nach minus)" 2 "KS+ (Kurzschluss nach plus)" 3 "OC (Leitungsunterbrechung)" 4 "OOR+ (Signal zu gross)" 5 "OOR- (Signal zu klein)" 6 "RC+ (Signal unplausibel zu gross)" 7 "RC- (Signal unplausibel zu klein)" 8 "KS+/OC (Kurzschluss nach plus/Unterbrechung)" 9 "KS-/OC (Kurzschluss nach minus/Unterbrechung)" 10 "KS-/KS+ (Kurzschluss nach minus/plus)" 11 "KS-/KS+/OC (Kurzschluss nach minus/plus/Unterbrechung)" 12 "frei" 13 "frei" 14 "frei" 15 "frei"; -VAL_ 1513 DS_Kaeltemittel_P 2046 "Init" 2047 "Fehler"; -VAL_ 1513 DS_Status 0 "i.O." 1 "t.b.d." 2 "Init bzw. nicht verfügbar" 3 "Fehler"; -VAL_ 1513 ION_Status 0 "Hochspannung_ausgeschaltet" 1 "Hochspannung_eingeschaltet" 2 "Init"; -VAL_ 1513 ION_Status_LED 0 "Aus" 1 "Ein"; -VAL_ 1513 AAU_Geblaese 126 "Init" 127 "Fehler"; -VAL_ 1513 ION_Status_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1520 DI_KL_58xd 254 "Init" 255 "Fehler"; -VAL_ 1520 DI_KL_58xs 126 "Init" 127 "Fehler"; -VAL_ 1520 DI_KL_58xt 126 "Init" 127 "Fehler"; -VAL_ 1524 IL_Bel_FS_Ausstieg 0 "inaktiv" 1 "aktiv"; -VAL_ 1524 IL_Bel_BFS_Ausstieg 0 "inaktiv" 1 "aktiv"; -VAL_ 1524 IL_Bel_HFS_Ausstieg 0 "inaktiv" 1 "aktiv"; -VAL_ 1524 IL_Bel_HBFS_Ausstieg 0 "inaktiv" 1 "aktiv"; -VAL_ 1524 BCM1_Innenlicht_gedimmt_V 0 "100% Innenlicht" 1 "gedimmtes Innenlicht"; -VAL_ 1524 BCM1_Innenlicht_gedimmt_H 0 "100% Innenlicht" 1 "gedimmtes Innenlicht"; -VAL_ 1524 IL_Innenlicht_aktiv 0 "Innenlicht inaktiv" 1 "Innenlicht aktiv"; -VAL_ 1524 IL_Klemme_30G_aktiv 0 "Kl_30G_abgeschaltet" 1 "eingeschaltet"; -VAL_ 1524 BCM1_DI_Rampe_Innenlicht 0 "Dimmrampe 0" 1 "Dimmrampe 1"; -VAL_ 1524 BCM1_DI_Rampe_Leselicht 0 "Dimmrampe 0" 1 "Dimmrampe 1"; -VAL_ 1524 BCM1_Innenlicht_H 0 "Aus" 1 "Ein"; -VAL_ 1524 BCM1_Innenlicht_V 0 "Aus" 1 "Ein"; -VAL_ 1524 BCM1_Leselicht_Anf_hl 0 "Aus" 1 "Ein"; -VAL_ 1524 BCM1_Leselicht_Anf_hr 0 "Aus" 1 "Ein"; -VAL_ 1524 BCM1_Leselicht_Anf_vl 0 "Aus" 1 "Ein"; -VAL_ 1524 BCM1_Leselicht_Anf_vr 0 "Aus" 1 "Ein"; -VAL_ 1524 BCM1_Leuchten_Aus 0 "keine Aenderung" 1 "Aus"; -VAL_ 1524 AMB_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 1524 AMB_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 1600 MO_QBit_Ansaugluft_Temp 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1600 MO_QBit_Oel_Temp 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1600 MO_QBit_Kuehlmittel_Temp 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1600 MO_HYB_Fehler_HV_Netz 0 "i_O" 1 "kein_generatorischer_Betrieb_moeglich"; -VAL_ 1600 MO_aktives_Getriebeheizen 0 "kein_Ventil_ansteuern" 1 "Ventil_muss_angesteuert_werden"; -VAL_ 1600 MO_Absperrventil_oeffnen 0 "nicht_verfuegbar" 1 "Ansteuerung_Ventil_zulaessig" 2 "Ventil_oeffnen_oder_geoeffnet" 3 "Ventil_schliessen_oder_geschlossen"; -VAL_ 1600 MO_Ansaugluft_Temp 254 "Init" 255 "Fehler"; -VAL_ 1600 MO_Oel_Temp 253 "nicht_verbaut" 254 "Init" 255 "Fehler"; -VAL_ 1600 MO_Kuehlmittel_Temp 254 "Init" 255 "Fehler"; -VAL_ 1600 MO_Hoeheninfo 255 "Fehler"; -VAL_ 1600 MO_Kennfeldk 0 "keine Kennfeldkühlung vorhanden" 1 "Kennfeldkühlung vorhanden"; -VAL_ 1600 MO_Getriebe_kuehlen 0 "nicht_kuehlen" 1 "kuehlen"; -VAL_ 1600 MO_Heizungspumpenansteuerung 13 "Fehler" 14 "Init" 15 "nicht_verbaut"; -VAL_ 1600 MO_SpannungsAnf 0 "keine_Anforderung" 1 "Anforderung"; -VAL_ 1601 MO_Faktor_Momente_02 0 "nicht_belegt"; -VAL_ 1601 MO_Hybridfahrzeug 0 "kein_Hybridfahrzeug" 1 "Mild_Hybrid" 2 "Full_Hybrid" 3 "PlugIn_Hybrid"; -VAL_ 1601 MO_Getriebe_Code 0 "Init" 2 "DL501" 3 "DL800" 4 "VL381" 5 "DL382_Front" 6 "DL382_Allrad" 7 "DL702" 8 "AL552_Allrad" 9 "AL552_Front" 10 "AL651" 11 "AL551__AL951__AL1000_8A" 12 "PDK_PAG" 13 "AL551_Hybrid" 15 "Handschalter_konventionell" 16 "AQ250_160" 17 "AQ450" 18 "DQ200" 19 "DQ250" 20 "DQ500" 21 "SQ100" 22 "SQ200" 23 "DQ400E" 24 "DQ381" 25 "AL550" 26 "AQ300" 31 "DL800E" 32 "Single_Gear__ohne_GSG_WH_am_MSG" 33 "EQ550_2P"; -VAL_ 1601 MO_StartStopp_Codiert 0 "Start_Stopp_nicht_verbaut" 1 "Start_Stopp_verbaut"; -VAL_ 1601 MO_Anzahl_Zyl 0 "kein_Zylinder" 1 "1_Zylinder" 2 "2_Zylinder" 3 "3_Zylinder" 4 "4_Zylinder" 5 "5_Zylinder" 6 "6_Zylinder" 7 "7_Zylinder" 8 "8_Zylinder" 9 "9_Zylinder" 10 "10_Zylinder" 11 "11_Zylinder" 12 "12_Zylinder" 13 "15_Zylinder" 14 "16_Zylinder" 15 "18_Zylinder"; -VAL_ 1601 MO_Kraftstoffart 0 "Diesel" 1 "Benzin_inkl_E25_E85" 2 "CNG" 3 "LPG" 4 "Wasserstoff" 5 "E100_Ethanol" 15 "kein_Verbrennungskraftstoff"; -VAL_ 1601 MO_Ansaugsystem 0 "Turbo" 1 "Sauger"; -VAL_ 1601 MO_DPF_verbaut 0 "kein_DPF_verbaut" 1 "DPF_verbaut"; -VAL_ 1601 TSK_Codierung 0 "kein_Fahrgeschwindigkeitsregler" 1 "GRA" 2 "GRA_Plus" 3 "Basis_ACC" 4 "ACC_Follow_to_Stop" 5 "ACC_Stop_and_Go" 7 "Codierung_in_Plausibilisierungsphase"; -VAL_ 1603 KBI_Einheit_Datum 0 "Tag/Monat/Jahr" 1 "Monat/Tag/Jahr" 2 "Jahr/Monat/Tag" 3 "reserviert"; -VAL_ 1603 KBI_Einheit_Druck 0 "Druckangabe in bar" 1 "Druckangabe in psi" 2 "Druckangabe in kPa" 3 "tbd."; -VAL_ 1603 KBI_Einheit_Streckenanz 0 "Kilometer" 1 "Meilen"; -VAL_ 1603 KBI_MFA_v_Einheit_02 0 "kmh" 1 "mph"; -VAL_ 1603 KBI_Einheit_Temp 0 "Grad Celsius °C" 1 "Grad Fahrenheit °F"; -VAL_ 1603 KBI_Einheit_Uhrzeit 0 "24h" 1 "12h AM/PM"; -VAL_ 1603 KBI_Einheit_Verbrauch 0 "mpg UK" 1 "mpg USA" 2 "Liter/100km" 3 "km/Liter"; -VAL_ 1603 KBI_Einheit_Volumen 0 "Liter" 1 "Gallonen UK" 2 "Gallonen USA" 3 "reserviert"; -VAL_ 1603 KBI_Einheit_Verbrauch_elektr 0 "kWh_pro_100km" 1 "km_pro_kWh" 2 "kWh_pro_100mls" 3 "mls_pro_kWh" 4 "MPGe"; -VAL_ 1603 KBI_Einheit_Verbrauch_Gas 0 "kg_per_100km" 1 "km_per_kg" 2 "m3_per_100km" 3 "km_per_m3" 4 "miles_per_lbs" 5 "miles_per_yard3" 6 "miles_per_kg" 7 "miles_per_m3" 8 "miles_per_gallon_equivalent_US"; -VAL_ 1603 KBI_Einheit_Masse 0 "kg" 1 "lbs" 2 "reserviert"; -VAL_ 1622 ELV_Anf_Klemme_S 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Anf_Klemme_15 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Anf_Klemme_50 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_01_Sendestatus 0 "ELV_sendet_mit_1000ms" 1 "ELV_sendet_mit_50ms"; -VAL_ 1622 ELV_Verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; -VAL_ 1622 ELV_Entriegelt 0 "ELV_nicht_entriegelt" 1 "ELV_entriegelt"; -VAL_ 1622 ELV_ZAT_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1622 ELV_Lebenszustand 0 "Lebenszustand_0" 1 "Lebenszustand_4"; -VAL_ 1622 ELV_Anlernmodus 0 "Normalbetrieb" 1 "Anlernmodus"; -VAL_ 1622 ELV_Klemmenfreigabe 0 "keine_Freigabe" 1 "Freigabe"; -VAL_ 1622 ELV_Abbruch_Anf_Klemmenfreigabe 0 "kein_Abbruch" 1 "Abbruch"; -VAL_ 1622 ELV_LED_Rot 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_LED_Gelb 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_Panikabschaltung 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_Lkg_Bewegen 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_Werkstatt 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_Defekt 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_P_Gang 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_PN_Gang 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_Kupplung 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_Txt_Bremse 0 "Aus" 1 "Ein"; -VAL_ 1622 ELV_P_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; -VAL_ 1624 LV_Standlicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1624 LV_Abblendlicht_Anzeige 0 "inaktiv" 1 "aktiv"; -VAL_ 1624 LV_Fernlicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1624 LV_Nebellicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1624 LV_Nebelschlusslicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1624 LV_Tagfahrlicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1624 LV_AFL_aktiv_Anzeige 0 "nicht aktiv" 1 "aktiv"; -VAL_ 1624 LV_AFL_defekt 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Blinker_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Standlicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abblendlicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Fernlicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Nebellicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Blk_li_Seite_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Tagfahrlicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_FLA_aktiv_Anzeige 0 "aus" 1 "ein"; -VAL_ 1624 LV_FLA_defekt 0 "i.O." 1 "FLA defekt"; -VAL_ 1624 LV_FLA_Sensor_blockiert 0 "i.O." 1 "FLA-Sensor blockiert"; -VAL_ 1624 LV_Blinker_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Standlicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abblendlicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Fernlicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Nebellicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Blk_re_Seite_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Tagfahrlicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Aussenlicht_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abblendlicht_TFL_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Nebellicht_TFL_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Standlicht_TFL_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abblend_Fernlicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abblendlicht_TFL_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Nebellicht_TFL_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Standlicht_TFL_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abblend_Fernlicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abbiegelicht_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Abbiegelicht_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 BCM1_Linksverkehr 0 "Rechtsverkehr" 1 "Linksverkehr"; -VAL_ 1624 BCM1_Licht_Dunkelheit_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1624 LV_LED_Scheinwerfer_li_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_LED_Scheinwerfer_re_def 0 "OK" 1 "defekt"; -VAL_ 1624 LV_Blinker_VL_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1624 LV_Blinker_VR_aktiv 0 "inaktiv" 1 "aktiv"; -VAL_ 1624 LV_MXB_Status_Anzeige 0 "MXB_aus" 1 "MXB_regelt" 2 "MXB_volles_Fernlicht" 3 "MXB_und_Laser_aktiv"; -VAL_ 1629 BR_Systemart 0 "ABS" 1 "ABS_ASR" 2 "ESP" 3 "ESP_mit_integrierter_EPB"; -VAL_ 1629 ESP_SpannungsAnf_02 0 "keine_Anforderung" 1 "Anforderung_Stufe1" 2 "Anforderung_Stufe2" 3 "Anforderung_Stufe3"; -VAL_ 1629 ESP_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 1629 ESP_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 1629 ESP_Wiederstart_Anz_01 0 "keine_Anzeige" 1 "Rueckwaertsrollen"; -VAL_ 1629 ESP_Wiederstart_Anz_02 0 "keine_Anzeige" 1 "Autohold_Rutschen"; -VAL_ 1629 ESP_Wiederstart_Anz_03 0 "keine_Anzeige" 1 "Offroad_HDC"; -VAL_ 1629 ESP_Wiederstart_Anz_04 0 "keine_Anzeige" 1 "ESC_Off"; -VAL_ 1629 ESP_Stoppverbot_Anz_01 0 "keine_Anzeige" 1 "Notbremsung_aktiv"; -VAL_ 1629 ESP_Stoppverbot_Anz_02 0 "keine_Anzeige" 1 "Autohold_AVH_Rutschen"; -VAL_ 1629 ESP_Stoppverbot_Anz_03 0 "keine_Anzeige" 1 "Rueckwaertsrollen"; -VAL_ 1629 ESP_Stoppverbot_Anz_04 0 "keine_Anzeige" 1 "ESP_Pumpenlauf"; -VAL_ 1629 ESP_Stoppverbot_Anz_05 0 "keine_Anzeige" 1 "ESP_OFF"; -VAL_ 1629 ESP_Stoppverbot_Anz_06 0 "keine_Anzeige" 1 "Offroad_HDC"; -VAL_ 1629 ESP_Stoppverbot_Anz_07 0 "keine_Anzeige" 1 "ESP_Haltefunktion_nicht_verfuegbar"; -VAL_ 1629 ESP_Stoppverbot_Anz_Std 0 "keine_Anzeige" 1 "Standard_Stoppvetogrund"; -VAL_ 1629 ESP_Dachrelingsensor 0 "Sensor_nicht_verbaut" 1 "Quertraeger_montiert" 2 "Quertraeger_nicht_montiert" 3 "Fehler"; -VAL_ 1629 ESP_Stoppverbot_Anz_08 0 "keine_Anzeige" 1 "Neigungsbegrenzung"; -VAL_ 1629 HDC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 1629 HDC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 1629 BR_QBit_Reifenumfang 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1631 TSK_QBit_Steigung 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1631 TSK_QBit_Fahrzeugmasse 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1631 MO_SpannungsAnf_02 0 "keine_Anforderung" 1 "Anforderung_Stufe_1" 2 "Anforderung_Stufe_2" 3 "Anforderung_Stufe_3"; -VAL_ 1631 MO_DPF_reg 0 "DPF_regeneriert_nicht" 1 "DPF_regeneriert"; -VAL_ 1631 MO_Heizstrom_EKAT 127 "Fehler"; -VAL_ 1631 MO_Heizstrom_SCR 63 "Fehler"; -VAL_ 1631 MO_Anzeige_Kaltleuchte 0 "Lampe_aus" 1 "Lampe_an"; -VAL_ 1631 MO_P_Generator_ungefiltert_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 1631 TSK_Getriebeinfo 0 "Handschalter" 1 "AL_AQ_Getriebe" 2 "DL_DQ_Getriebe" 3 "CVT_Getriebe"; -VAL_ 1631 MO_Energieinhalt_BMS 4094 "Init" 4095 "Fehler"; -VAL_ 1631 TSK_Fahrzeugmasse_02 255 "Fehler"; -VAL_ 1631 TSK_Steigung_02 0 "Init_oder_nicht_verbaut" 255 "Fehler"; -VAL_ 1640 KL_LRH_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1640 KL_LRH_Stufe 0 "Stufe_niedrig" 1 "Stufe_mittel" 2 "Stufe_hoch" 3 "AUS"; -VAL_ 1640 HSH_Taster 0 "nicht_betaetigt" 1 "short_push" 2 "long_push" 3 "tbd"; -VAL_ 1640 FSH_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1640 KL_Zuheizer_Freigabe 0 "keine_Freigabe_Zuheizer" 1 "Zuheizerfreigabe"; -VAL_ 1640 KL_Beschlagsgefahr 0 "keine_Beschlagsgefahr" 1 "Beschlagsgefahr"; -VAL_ 1640 KRH_Soll_li 0 "aus" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; -VAL_ 1640 KRH_Soll_re 0 "aus" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; -VAL_ 1640 KL_Geblspng_Soll 0 "0V_Motorspannung" 252 "0V_sofort_Abschalten" 253 "0V_senken_mit_Rampe" 254 "reserviert" 255 "Fehler"; -VAL_ 1640 KL_Geblspng_Fond_Soll 0 "0V_Motorspannung" 252 "0V_sofort_Abschalten" 253 "0V_senken_mit_Rampe" 254 "reserviert" 255 "Fehler"; -VAL_ 1640 KL_I_Geblaese 255 "Fehler"; -VAL_ 1640 KL_Kompressorstrom_soll 1022 "Init" 1023 "Fehler"; -VAL_ 1640 KL_Umluftklappe_Status 0 "Frischluft" 1 "Teilumluft_10" 2 "Teilumluft_20" 3 "Teilumluft_30" 4 "Teilumluft_40" 5 "Teilumluft_50" 6 "Teilumluft_60" 7 "Teilumluft_70" 8 "Teilumluft_80" 9 "Teilumluft_90" 10 "Umluft" 14 "Init" 15 "Fehler"; -VAL_ 1640 KL_PTC_Verbauinfo 0 "kein_PTC" 1 "600W_geschaltet" 2 "1000W_geschaltet" 3 "1400W_LIN"; -VAL_ 1648 MO_ANC_Kennfeld_Anf 0 "Kennfeld_1" 1 "Uebergang_Kennfeld_2_nach_1" 2 "Uebergang_Kennfeld_1_nach_2" 3 "Kennfeld_2"; -VAL_ 1648 MO_Bremslicht_Reku 0 "Aus" 1 "Ein"; -VAL_ 1648 MO_StartStopp_PopUp 0 "Statuswechsel_ohne_Taster (Init)" 1 "StSt_per_Taster_deaktiviert" 2 "StSt_per_Taster_aktiviert" 3 "nicht verwendet"; -VAL_ 1648 MO1_Sperr_Info_WFS 0 "nicht_gesperrt" 1 "gesperrt"; -VAL_ 1648 MO1_Freigabe_Info_WFS 0 "ungueltig" 1 "gueltig"; -VAL_ 1648 MO_EPCL 0 "EPCL_aus_kein_Text" 1 "EPCL_gelb_Stoerung" 2 "EPCL_gelb_Leistungsbeschraenkung" 3 "EPCL_rot_Fzg_sicher_abstellen"; -VAL_ 1648 MO_Zylabsch_Texte_02 0 "ein_ZAS_generell_keine_ZAS_Anzeigen" 1 "ZAS_im_VMB" 2 "ZAS_im_ASB_1_Zyl_aktiv" 3 "ZAS_im_ASB_2_Zyl_aktiv" 4 "ZAS_im_ASB_3_Zyl_aktiv" 5 "ZAS_im_ASB_4_Zyl_aktiv" 6 "ZAS_im_ASB_5_Zyl_aktiv" 7 "ZAS_im_ASB_6_Zyl_aktiv" 8 "ZAS_im_ASB_8_Zyl_aktiv" 9 "ZAS_im_ASB_12_Zyl_aktiv" 13 "Uebergangsbetrieb" 14 "keine_ZAS_Anzeige_ggf_Stopp_Schub_Betrieb" 15 "ZAS_Stoerungs_Anzeige"; -VAL_ 1648 MO_Fahrzeugtyp 0 "Verbrenner_Fahrzeug" 1 "Hybrid" 2 "E_Fahrzeug" 3 "E_Fahrzeug_mit_Range_Extender" 4 "Brennstoffzellenfahrzeug" 5 "tbd" 6 "tbd" 7 "tbd"; -VAL_ 1648 MO_Abstellzeit 254 "Init" 255 "reserviert"; -VAL_ 1648 MO_Abstellzeit_Status 0 "Abstellzeit_nicht_berechnet" 1 "Abstellzeit_berechnet" 2 "Abstellzeit_Minimalwert" 3 "Abstellzeit_ungueltig"; -VAL_ 1648 MO1_Freigabe_Verfallsinfo_WFS 0 "verfaellt_nicht" 1 "verfaellt"; -VAL_ 1648 MO_Hybrid_StartStopp_LED 0 "LED_aus_und_Blinken_aus" 1 "LED_ein_und_Blinken_aus" 2 "LED_ein_und_Blinken_ein_50_percent" 3 "reserviert"; -VAL_ 1648 MO_Fehler_Zylabsch 0 "kein_Fehler" 1 "Notlauf_Vollmotorbetrieb" 2 "Notlauf_mindestens_einem_abgesch_Zylinder"; -VAL_ 1648 MO_Anzahl_Abgesch_Zyl 0 "Vollmotorbetrieb" 1 "1_Zylinder_abgeschaltet" 2 "2_Zylinder_abgeschaltet" 3 "3_Zylinder_abgeschaltet" 4 "4_Zylinder_abgeschaltet" 5 "5_Zylinder_abgeschaltet" 6 "6_Zylinder_abgeschaltet" 7 "8_Zylinder_abgeschaltet"; -VAL_ 1648 MO_Zylabsch_Texte 0 "keine_Texte" 1 "Zylinderabschaltung_deaktivieren" 2 "Zylinderabschaltung_aktivieren" 3 "Zylinderabschaltung_unruhig"; -VAL_ 1648 MO_Ethanol_BS_Texte 0 "kein_Text" 1 "E85_Warm_Up" 2 "FlexFuel_Warnung_Stufe_3" 3 "Warmfahrempfehlung_MQB__FlexFuel_Warnung_Stufe_1" 4 "FlexFuel_Warnung_Stufe_2" 5 "FlexFuel_Warnung_Stufe_4" 6 "E25_Warm_Up"; -VAL_ 1648 MO_Drehzahl_Warnung 0 "keinen_Warnhinweis_anzeigen" 1 "Warnhinweis_anzeigen"; -VAL_ 1648 MO_obere_Drehzahlgrenze 0 "Init"; -VAL_ 1710 SP_FT_oben 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_FT_unten 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_FT_links 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_FT_rechts 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_BT_oben 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_BT_unten 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_BT_links 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_BT_rechts 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_abklappen 0 "Spiegel_abklappen_nicht_aktiv" 1 "Spiegel_abklappen_aktiv"; -VAL_ 1710 SP_anklappen 0 "Spiegle_anklappen_nicht_aktiv" 1 "Spiegel_anklappen_aktiv"; -VAL_ 1710 SP_normieren 0 "Spiegel_nicht_normiert" 1 "Spiegel_normiert"; -VAL_ 1710 SP_Hzg_Taster 0 "nicht_betaetigt" 1 "betaetigt"; -VAL_ 1710 SP_S_oben 1 "Spiegelschalter in Stellung oben"; -VAL_ 1710 SP_S_unten 1 "Spiegelschalter in Stellung unten"; -VAL_ 1710 SP_S_links 1 "Spiegelschalter in Stellung links"; -VAL_ 1710 SP_S_rechts 1 "Spiegelschalter in Stellung rechts"; -VAL_ 1710 SP_Auswahl_li 1 "Spiegelschalter in Stellung Auswahl links"; -VAL_ 1710 SP_Auswahl_re 1 "Spiegelschalter in Stellung Auswahl rechts"; -VAL_ 1710 SP_ARA_Status 0 "TSG nicht im ARA-Modus" 1 "TSG im ARA-Modus"; -VAL_ 1710 SP_S_Klappen 1 "Spiegelschalter in Stellung Klappen"; -VAL_ 1710 SP_Verstellschalter_Fehler 0 "kein_Fehler" 1 "Fehler"; -VAL_ 1711 RV_Video_on 0 "Kamerabild wird nicht angezeigt" 1 "Kamerabild wird angezeigt"; -VAL_ 1711 RV_Dark_Screen 0 "Kamerabild nicht verdunkeln" 1 "Kamerabild verdunkeln"; -VAL_ 1711 RV_HMI_Mode 0 "Parkluecke (Modus 1)" 1 "Parallel zur Straߥ (Modus 2)" 2 "reserviert" 3 "Kalibrierung (nur Diagnose)"; -VAL_ 1711 RV_GL_side 0 "Guidelines_abgeschaltet" 1 "Guidelines_Anzeige_rechte_Seite" 2 "Guiedelines_Anzeige_linke_Seite" 3 "Guiedelines_Anzeige_beide_Seiten"; -VAL_ 1711 RV_System_aktiv 0 "System nicht betriebsbereit" 1 "System betriebsbereit"; -VAL_ 1711 RV_Reinigung_Anf 0 "nicht_reinigen" 1 "reinigen"; -VAL_ 1711 RV_Settings_enabled 0 "Menu 'Einstellungen' nicht aktiviert" 1 "Menu 'Einstellungen' aktiviert"; -VAL_ 1711 RV_Menu_Item 0 "HMI Mode als ausgewaehlt markiert" 1 "Helligkeit als ausgewaehlt markiert" 2 "Kontrast als ausgewaehlt markiert" 3 "Farbsaettigung als ausgewaehlt markiert"; -VAL_ 1711 SV_Video_on 0 "SideView_aus_/_nicht_verbaut" 1 "SideView_an"; -VAL_ 1711 RV_Calib_Fehler 0 "Kalibrierung_i.O." 1 "RearView_nicht_kalibriert"; -VAL_ 1711 RV_GL_Trailer_connect 0 "Guidelines_werden_angezeigt" 1 "Guidelines_wegen_angekoppeltem_Anh䮧er_deaktiviert"; -VAL_ 1711 RV_GL_Trunk_open 0 "Guidelines_werden_angezeigt" 1 "Guidelines_wegen_geöffneter_Heckklappe_deaktiviert"; -VAL_ 1711 RV_GL_LWS_Fehler 0 "Guidelines_werden_angezeigt" 1 "Guidelines_wegen_nicht_kalibriertem_Lenkwinkelsensor_deaktiviert"; -VAL_ 1711 ZFAS_Umfeldbeleuchtung_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 1714 DGN_Verlernzaehler 255 "ungültiger Z䨬erstand oder kein gültiger Fahrzyklus"; -VAL_ 1714 UH_Monat 0 "Init" 14 "Relatives_Datum" 15 "Fehler"; -VAL_ 1714 UH_Tag 0 "Init"; -VAL_ 1714 Kombi_02_alt 0 "aktuell" 1 "veraltet"; -VAL_ 1714 Uhrzeit_01_alt 0 "aktuell" 1 "veraltet"; diff --git a/opendbc_repo/opendbc/dbc/vw_mqb.dbc b/opendbc_repo/opendbc/dbc/vw_mqb.dbc deleted file mode 100644 index 500f7c5367..0000000000 --- a/opendbc_repo/opendbc/dbc/vw_mqb.dbc +++ /dev/null @@ -1,1773 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: Airbag_MQB BAP_Tester_MQB BMS_MQB Datenlogger_MQB Gateway_MQB Getriebe_DQ_Hybrid_MQB Getriebe_DQ_MQB LEH_MQB Motor_Diesel_MQB Motor_Hybrid_MQB Motor_Otto_MQB SAK_MQB Waehlhebel_MQB Vector__XXX l c i XXX - - -BO_ 290 ACC_06: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_DynErhoehung : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 279 ACC_10: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ AWV1_Anf_Prefill : 16|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_CM_Info : 17|1@1+ (1,0) [0|1] "" XXX - SG_ AWV2_Freigabe : 18|1@1+ (1,0) [0|1] "" XXX - SG_ AWV1_HBA_Param : 19|2@1+ (1,0) [0|3] "" XXX - SG_ AWV2_Ruckprofil : 21|3@1+ (1,0) [0|7] "" XXX - SG_ AWV2_Priowarnung : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_CM_Anforderung : 25|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Info_Teilbremsung : 26|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Notfallblinken : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Teilbremsung_Freigabe : 28|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Zielbrems_Teilbrems_Verz_Anf : 29|10@1+ (0.024,-20.016) [-20.016|4.536] "Unit_MeterPerSeconSquar" XXX - SG_ ANB_Zielbremsung_Freigabe : 39|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Vorstufe : 40|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Halten : 41|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_CityANB_Auspraegung : 42|1@1+ (1,0) [0|1] "" XXX - SG_ PCF_Freigabe : 43|1@1+ (1,0) [0|1] "" XXX - SG_ AWV1_ECD_Anlauf : 44|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_AWA_VZ_Anf_Lenkmomoffset : 46|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ AWV_AWA_Anf_Lenkmomoffset : 47|9@1+ (0.01,0) [0.00|5.11] "Unit_NewtoMeter" XXX - SG_ PCF_Time_to_collision : 56|8@1+ (0.01,0) [0|2.5] "Unit_Secon" XXX - -BO_ 679 ACC_13: 8 XXX - SG_ ACC_Regelgeschw : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Einheit_maxSetzgeschw : 22|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_maxSetzgeschw : 23|9@1+ (1,0) [0|510] "" XXX - SG_ ACC_minRegelgeschw : 32|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX - SG_ ACC_maxRegelgeschw : 40|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Tempolimitassistent : 48|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Kurvenassistent : 52|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_RUV : 56|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Tachokranz : 58|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz_unten : 59|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_ENG_Texte : 60|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_ADAPTIVE : 63|2@0+ (1,0) [0|3] "" XXX - -BO_ 681 ACC_15: 8 XXX - SG_ AWV_Warnung : 16|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Texte : 24|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Status_Anzeige : 32|2@1+ (1,0) [0|3] "" XXX - SG_ AWV_Einstellung_System_FSG : 34|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Einstellung_Warnung_FSG : 36|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Warnlevel : 58|6@1+ (1,0) [0|63] "" XXX - -BO_ 64 Airbag_01: 8 Airbag_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_PAO_Leuchte_Anf : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Deaktivierung_HV : 42|3@1+ (1.0,0.0) [0.0|7] "" BMS,Gateway_MQB,LEH_MQB,Motor_Hybrid_MQB - SG_ AB_EDR_Trigger : 45|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB - SG_ AB_Gurtwarn_HFS : 47|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ AB_Gurtwarn_HBFS : 48|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ SC_Masterzeit_Offset : 53|2@1+ (5.08,0) [0.00|15.24] "Unit_Secon" Gateway_MQB - SG_ SC_Masterzeit : 57|7@1+ (0.04,0) [0.00|5.04] "Unit_Secon" Gateway_MQB - -BO_ 1312 Airbag_02: 8 Airbag_MQB - SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 65 Airbag_03: 8 Airbag_MQB - SG_ Airbag_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Airbag_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_MKB_Safing : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1633 Anhaenger_01: 8 Gateway_MQB - SG_ AAG_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_abgesteckt : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_NSL_aktiv : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Anhaenger_erkannt : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Blinker_H_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Blinker_HL_def : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Blinker_HR_def : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Bremslicht_H_def : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Schlusslicht_HL_def : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Schlusslicht_HR_def : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_AVS_Fehler_02 : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_AVS_Stati : 20|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 1626 BCM_01: 8 Gateway_MQB - SG_ BCM_Bremsbelag_Sensor : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Bremsfluessigkeit_Sensor : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Licht_Warn : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Waschwasser_Sensor : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Kuehlmittel_Sensor : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_Kl_15_HW_erkannt : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Eis_Offroad_Taste : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZZH_Endlage_oben : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZZH_Endlage_unten : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZZH_Endlage_unplausibel : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM2_EZS_gedrueckt : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM2_SST_gedrueckt : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Hybrid_StartStopp_Taste : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Warnblink_Taster : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Valet_Parking_Taster : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Remotestart_Betrieb : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_HSK_Taster : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Heckrollo_Taster : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_MH_Schalter : 31|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_MH_WIV_Schalter : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Eco_Charisma_Taste : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Thermomanagement_Fehler : 36|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Thermomanagement_gueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Lichtwarn_Texte : 38|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 869 BEM_05: 8 Gateway_MQB - SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_01_Abschaltstufen : 26|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_EMLIN_ungueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Segel_Info : 48|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" LEH_MQB - SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" LEH_MQB - -BO_ 1628 BMS_Hybrid_01: 8 BMS_MQB - SG_ BMS_HYB_ASV_hinten_Status : 13|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_ASV_vorne_Status : 14|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_BattFanSpd : 16|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ BMS_HYB_VentilationReq : 20|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_Spuelbetrieb_Status : 21|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_Kuehlung_Anf : 22|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ BMS_HYB_Temp_vor_Verd : 24|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_HYB_Temp_nach_Verd : 32|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_Temperatur : 40|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_Temperatur_Ansaugluft : 48|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_IstSpannung_HV : 56|8@1+ (1,100) [100|350] "Unit_Volt" Gateway_MQB - -BO_ 901 Charisma_01: 8 Gateway_MQB - SG_ CHA_Ziel_FahrPr_ALR : 0|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_ESP : 4|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_FL : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Fahrer_Umschaltung : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ CHA_Ziel_FahrPr_MO : 16|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ CHA_Ziel_FahrPr_GE : 20|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ CHA_Ziel_FahrPr_ST : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_SCU : 28|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_DR : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_QS : 36|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_AFS : 40|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_RGS : 44|4@1+ (1,0) [0|15] "" Airbag_MQB - SG_ CHA_Ziel_FahrPr_EPS : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_ACC : 52|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_SAK : 56|4@1+ (1,0) [0|15] "" SAK_MQB - SG_ CHA_Ziel_FahrPr_MStSt : 60|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 945 DC_Hybrid_01: 8 LEH_MQB - SG_ DC_HYB_iAktLV : 12|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB - SG_ DC_HYB_iAktReserveLV : 22|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB - SG_ DC_HYB_uAktLV : 32|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Gateway_MQB - SG_ DC_HYB_LangsRegelung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Abregelung_Temperatur : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_RedLeistung : 42|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_intern : 43|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_Spannung : 44|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Auslastungsgrad : 56|8@1+ (0.4,0) [0|100] "Unit_PerCent" Gateway_MQB - -BO_ 1714 Diagnose_01: 8 Gateway_MQB - SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - -BO_ 1520 Dimmung_01: 8 Gateway_MQB - SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB - SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 1603 Einheiten_01: 8 Gateway_MQB - SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX - -BO_ 260 EPB_01: 8 Gateway_MQB - SG_ EPB_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_01_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_QBit_Laengsbeschleunigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_QBit_Pedalweg_Kuppl : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_BCM2_Motor_Wakeup : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_Freig_Verzoeg_Anf : 15|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_Verzoeg_Anf : 16|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" Vector__XXX - SG_ EPB_Laengsbeschleunigung : 24|8@1+ (1,-128) [-128|126] "Unit_PerCentOfForceOfGravi" Vector__XXX - SG_ EPB_Pedalweg_Kuppl : 32|8@1+ (0.4,0) [8|92] "Unit_PerCent" Vector__XXX - SG_ EPB_Anfahrwunsch_erkannt : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_DAA_Randbed_erf : 49|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ EPB_Fehlerstatus : 50|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EPB_Schalterposition : 52|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_QBit_Schalterpos : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_Konsistenz_ACC : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_Spannkraft : 56|5@1+ (1,0) [0|29] "Unit_KiloNewto" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ EPB_Status : 61|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 257 ESP_02: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Gierrate : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_QBit_Laengsbeschl : 13|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Querb : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Stillstandsflag : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Querbeschleunigung : 16|8@1+ (0.01,-1.27) [-1.27|1.27] "Unit_ForceOfGravi" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Laengsbeschl : 24|10@1+ (0.03125,-16) [-16|15.90625] "Unit_MeterPerSeconSquar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verteil_Wankmom : 34|5@1+ (0.1,-1) [-1|1] "" Vector__XXX - SG_ ESP_QBit_Anf_Vert_Wank : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Gierrate : 40|14@1+ (0.01,0) [0|163.82] "Unit_DegreOfArcPerSecon" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_VZ_Gierrate : 54|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Notbremsanzeige : 55|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_SpannungsAnf : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_PLA_Abbruch : 57|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ ESP_Status_ESP_PLA : 60|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 262 ESP_05: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Bremsdruck : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Fahrer_bremst : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Schwelle_Unterdruck : 14|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Bremsdruck : 16|10@1+ (0.3,-30) [-30|276.6] "Unit_Bar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Fahrer_bremst : 26|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verz_TSK_aktiv : 27|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Lenkeingriff_ADS : 28|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Konsistenz_TSK : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Bremsruck_AWV2 : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Konsistenz_AWV2 : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ECD_Fehler : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ECD_nicht_verfuegbar : 33|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Status_Bremsentemp : 34|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Autohold_Standby : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_HDC_Standby : 36|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_HBA_aktiv : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Prefill_ausgeloest : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Rueckwaertsfahrt_erkannt : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Status_Anfahrhilfe : 40|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HDC_aktiv : 41|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_StartStopp_Info : 42|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ESP_Eingr_HL : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_HR : 45|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_VL : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_VR : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_BKV_Unterdruck : 48|8@1+ (4,0) [0|1012] "Unit_MilliBar" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Autohold_aktiv : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_FStatus_Anfahrhilfe : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Verz_EPB_aktiv : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ECD_Bremslicht : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verzoeg_EPB_verf : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Status_Bremsdruck : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Anforderung_EPB : 62|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 914 ESP_07: 8 Gateway_MQB - SG_ ESP_07_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_07_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_ACC_LDE : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Quattro_Antrieb : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Codierung_ADS : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_RTA_HL : 16|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ ESP_RTA_HR : 24|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ ESP_RTA_VR : 32|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ OBD_Fehler_Radsensor_HL : 40|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_HR : 44|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_VL : 48|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_VR : 52|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Qualifizierung_Antriebsart : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Offroad_Modus : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_MKB_ausloesbar : 58|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_MKB_Status : 59|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_CM_Variante : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_OBD_Status : 61|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 278 ESP_10: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 178 ESP_19: 8 Gateway_MQB - SG_ ESP_HL_Radgeschw_02 : 0|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Radgeschw_02 : 16|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Radgeschw_02 : 32|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Radgeschw_02 : 48|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1629 ESP_20: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" XXX - SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_Wiederstart_Anz_01 : 30|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Wiederstart_Anz_02 : 31|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Wiederstart_Anz_03 : 32|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Wiederstart_Anz_04 : 33|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_01 : 34|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_02 : 35|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_03 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_04 : 37|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_05 : 38|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_06 : 39|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_07 : 40|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_Std : 41|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Dachrelingsensor : 42|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_Stoppverbot_Anz_08 : 44|1@1+ (1,0) [0|1] "" XXX - SG_ HDC_Charisma_FahrPr : 45|4@1+ (1,0) [0|15] "" XXX - SG_ HDC_Charisma_Status : 49|2@1+ (1,0) [0|3] "" XXX - SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" XXX - SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - -BO_ 253 ESP_21: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "" XXX - SG_ ESP_PLA_Bremseingriff : 22|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Diagnose : 23|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESC_Reku_Freigabe : 24|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESC_v_Signal_Qualifier_High_Low : 25|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ ESP_Vorsteuerung : 28|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_AWV3_Brems_aktiv : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ OBD_Schlechtweg : 30|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ OBD_QBit_Schlechtweg : 31|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0.00|655.32] "Unit_KiloMeterPerHour" XXX - SG_ ASR_Tastung_passiv : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Tastung_passiv : 49|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Systemstatus : 50|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ASR_Schalteingriff : 51|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ ESP_Haltebestaetigung : 53|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_MKB_Abbruch_Geschw : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_QBit_v_Signal : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ABS_Bremsung : 56|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ASR_Anf : 57|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MSR_Anf : 58|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ EBV_Eingriff : 59|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ EDS_Eingriff : 60|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Eingriff : 61|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_ASP : 62|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Anhaltevorgang_ACC_aktiv : 63|1@1+ (1.0,0.0) [0.0|1] "" XXX - -BO_ 987 Gateway_72: 8 Gateway_MQB - SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 989 Gateway_74: 8 Gateway_MQB - SG_ LH_EPS_01_alt : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ Kessy_04_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ LIN_2_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MFG_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ GW_74_va_14 : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Klima_02_alt : 5|1@1+ (1,0) [0|1] "" BMS_MQB - SG_ Parkhilfe_01_alt : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ELV_01_alt : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KY_StartStopp_Info : 16|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ PH_StartStopp_Info : 18|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ EPS_Lenkerposition : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB - SG_ ELV_Anf_Klemme_50 : 22|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ MF_StartStopp_Info : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ KL_Geblaesespannung_Soll : 40|8@1+ (0.05,0.5) [2|13] "Unit_Volt" BMS_MQB - SG_ KL_Umluftklappe_Status : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Tip_Down : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MFL_Tip_Up : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ LS_Tiptronic_Fehler : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 296 Getriebe_06: 3 Getriebe_DQ_Hybrid_MQB - SG_ GE_WH_Sperre : 0|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Ausleuchtungsmode : 1|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Test_Freigabe : 2|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Ist_Fahrstufe : 4|4@1+ (1,0) [0|15] "" Waehlhebel_MQB - SG_ GE_Testparameter_1 : 8|8@1+ (1,0) [0|255] "" Waehlhebel_MQB - SG_ GE_Testparameter_2 : 16|8@1+ (1,0) [0|255] "" Waehlhebel_MQB - -BO_ 173 Getriebe_11: 8 Getriebe_DQ_Hybrid_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER_DISABLED : 8|4@1+ (1,0) [0|15] "" XXX - SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "" XXX - SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "" XXX - SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" XXX - SG_ GE_Fahrstufe : 42|4@1+ (1,0) [0|15] "" XXX - SG_ GE_reserv_Fahrstufe : 46|1@1+ (1,0) [0|1] "" XXX - SG_ GE_Schaltablauf : 47|2@1+ (1,0) [0|3] "" XXX - SG_ GE_Uefkt_unplausibel : 49|1@1+ (1,0) [0|1] "" XXX - SG_ GE_MMom_Status_02 : 50|3@1+ (1,0) [0|7] "" XXX - SG_ GE_Status_Kraftschluss : 53|3@1+ (1,0) [0|7] "" XXX - SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" XXX - SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" XXX - SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" XXX - SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 174 Getriebe_12: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_12_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Getriebe_12_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Drehzahlmesser_Daempfung : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Schubabschalt_Unt : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freigabe_Synchro : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Synchro_Wunschdrehz : 15|9@1+ (25,0) [0|12750] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Synchro_Zeit : 24|8@1+ (20,0) [0|5080] "Unit_MilliSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Mom_Begr_Gradient : 32|8@1+ (10,0) [0|2540] "Unit_NewtoMeterPerSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Anheb_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Aufnahmemoment : 48|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Anf_Zylabsch : 58|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ GE_HYB_DZ_Eingriff : 62|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB - -BO_ 301 Getriebe_13: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_13_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Getriebe_13_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_StartStopp_Info : 12|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ GE_Langfr_Schutzmom_02 : 14|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Eingangsdrehz : 48|14@1+ (1,0) [0|16381] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Notlauf : 62|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freig_Langfr_Schutzmom : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 968 Getriebe_14: 8 Getriebe_DQ_Hybrid_MQB - SG_ GE_OBD_AbsperrVent : 12|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_amax_moeglich : 16|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Charisma_FahrPr : 25|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ GE_Charisma_Status : 29|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ GE_Verlustmoment : 32|8@1+ (1,0) [0|254] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freigabe_Verfallsinfo_WFS : 49|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_Codierung_MSG : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_LaunchControl : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_Heizwunsch : 52|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_OBD_Status : 54|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_LFR_Adaption : 55|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Sumpftemperatur : 56|8@1+ (1,-58) [-58|196] "Unit_DegreCelsi" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 158 Getriebe_Hybrid_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB - SG_ Getriebe_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB - SG_ GE_HYB_Fehlerstatus : 12|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freigabe_K0 : 16|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freigabe_LL_Reg : 17|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freig_sSchl_K0 : 18|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freig_VM_EM_Stop : 19|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Wiederstart : 20|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Filt_MomAufbau : 21|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB - SG_ GE_HYB_nK0 : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Vector__XXX - SG_ GE_HYB_MomEingriff_EM : 32|6@1+ (0.5,0) [0|31.5] "Unit_NewtoMeter" LEH_MQB - SG_ GE_HYB_VZ_MomEingriff_EM : 38|1@1+ (1,0) [0|1] "" LEH_MQB - SG_ GE_HYB_Sportfaktor : 56|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB - SG_ GE_HYB_VM_akt_halten : 61|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_StartAnf : 62|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_VM_Startkontr : 63|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - -BO_ 299 GRA_ACC_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Typ468 : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Stufe_2 : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_ButtonTypeInfo : 28|2@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 960 Klemmen_Status_01: 4 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZAS_Kl_50 : 19|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 949 Klima_11: 8 Gateway_MQB - SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zonen : 4|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Comp_rev_rq : 8|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX - SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Comp_enable : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB - -BO_ 1625 Klimakomp_01: 8 Gateway_MQB - SG_ EKL_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EKL_Comp_SCI_com_stat : 16|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_output_stat : 18|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_main_stat : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EKL_Comp_ovld_stat : 21|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EKL_Comp_Inv_stat : 24|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_photo_temp_stat : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_photo_temp : 32|8@1+ (1,0) [0|254] "Unit_DegreCelsi" Vector__XXX - SG_ EKL_Comp_current : 40|8@1+ (0.1,0) [0|25.4] "Unit_Amper" Motor_Hybrid_MQB - SG_ EKL_Comp_rev_stat : 48|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX - -BO_ 2549088277 KN_Airbag_01: 8 Airbag_MQB - SG_ Airbag_01_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Airbag_01_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088380 KN_EMotor_01: 8 LEH_MQB - SG_ EMotor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EMotor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ EM_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088375 KN_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Getriebe_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ GE_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088379 KN_Hybrid_01: 8 BMS_MQB - SG_ Hybrid_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Hybrid_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ BMS_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088374 KN_MO_01: 8 Motor_Diesel_MQB - SG_ Motor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Motor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088284 KN_SAK: 8 SAK_MQB - SG_ SAK_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SAK_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ SAK_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 779 Kombi_01: 8 Gateway_MQB - SG_ KBI_ABS_Lampe : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_ESP_Lampe : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_BKL_Lampe : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Airbag_Lampe : 3|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_SILA_gueltig : 4|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_Lenkung_Lampe : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Vorglueh_System_Lampe : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ KBI_NV_in_Anzeige : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Kombi_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Anzeigestatus_ACC : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigestatus_GRA : 13|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Oeldruck_Schalter : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Tankwarnung : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_MFA_v_Einheit_01 : 17|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_im_Stellgliedtest : 18|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_Anzeigefehler_LDW : 19|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Variante_USA : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Oeldruckwarnung : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Handbremse : 23|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ KBI_V_Digital : 24|9@1+ (1,0) [0|511] "" Vector__XXX - SG_ KBI_PLA_in_Anzeige : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigefehler_NV : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigestatus_LIM : 35|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_angez_Geschw : 48|10@1+ (0.32,0) [0|325.12] "Unit_KiloMeterPerHour" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Einheit_Tacho : 58|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Konsistenz_ACC : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Fehler_Anzeige_ACC : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigefehler_SWA : 61|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1719 Kombi_02: 8 Gateway_MQB - SG_ KBI_Kilometerstand : 0|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Vector__XXX - SG_ KBI_Standzeit_02 : 20|17@1+ (1,0) [0|131068] "Unit_Secon" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Inhalt_Tank : 40|7@1+ (1,0) [0|125] "Unit_Liter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_FStatus_Tank : 47|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_QBit_Aussen_Temp_gef : 55|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Aussen_Temp_gef : 56|8@1+ (0.5,-50) [-50|75] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 982 Licht_hinten_01: 8 Gateway_MQB - SG_ Licht_hinten_01_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 134 LWI_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_Lenkradwinkel : 16|13@1+ (0.1,0) [0|800] "Unit_DegreOfArc" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" Vector__XXX - SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 263 Motor_04: 8 Motor_Diesel_MQB - SG_ MO_Istgang : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Sollgang : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Oeldruck : 16|8@1+ (0.04,0) [0|10] "Unit_Bar" Gateway_MQB - SG_ MO_Anzeigedrehz : 24|12@1+ (3,0) [0|12282] "Unit_MinutInver" Gateway_MQB - SG_ MO_Schaltempf_verfbar : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Ladedruck : 39|9@1+ (0.01,0) [0|5.1] "Unit_Bar" Gateway_MQB - SG_ MO_KVS : 48|15@1+ (1,0) [0|32767] "Unit_MicroLiter" Gateway_MQB - SG_ MO_KVS_Ueberlauf : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1600 Motor_07: 8 Motor_Diesel_MQB - SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB - SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB - -BO_ 1607 Motor_09: 8 Motor_Diesel_MQB - SG_ MO_ITM_Kuehlmittel_Temp : 0|8@1+ (0.75,-48) [-45.75|143.25] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_E85_Sensor : 8|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ SCR_Anz_Motorstarts : 12|4@1+ (1,0) [0|8] "" Gateway_MQB - SG_ SCR_Reichweite : 16|15@1+ (1,0) [0|32766] "" Gateway_MQB - SG_ SCR_Warnstufe_1 : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Warnstufe_2 : 33|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Text : 34|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ SCR_Akustik : 37|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Kraftstofffilter_Wasser : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Systemfehler : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Inducement_Strategie : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_CO2_Faktor : 44|12@1+ (1,0) [1|4094] "Unit_GramPerLiter" Gateway_MQB - -BO_ 167 Motor_11: 8 Motor_Diesel_MQB - SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB - SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 168 Motor_12: 8 Motor_Diesel_MQB - SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - -BO_ 958 Motor_14: 8 Motor_Diesel_MQB - SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" Gateway_MQB,LEH_MQB - SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB - SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Timeout_ESP : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Zylabschalt_01 : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1631 Motor_16: 8 Motor_Diesel_MQB - SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Gateway_MQB - SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Gateway_MQB - SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Steigung : 56|8@1+ (0.8,-101.6) [-101.6|101.6] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 812 Motor_17: 8 Motor_Diesel_MQB - SG_ MO_Prio_MAX_Wunschdrehzahl : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Prio_MIN_Wunschdrehzahl : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Luftpfad_aktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_v_Begrenz_Aktivierbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Drehzahlbeeinflussung : 16|8@1+ (0.39,0) [0|99.45] "Unit_PerCent" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_MIN_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_MAX_Wunschdrehzahl : 32|9@1+ (25,0) [0|12750] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Charisma_FahrPr : 41|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Charisma_Status : 45|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 1648 Motor_18: 8 Motor_Diesel_MQB - SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Eis_Offroad_LED : 45|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_E85_BS_Texte : 52|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 289 Motor_20: 8 Motor_Diesel_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|255] "" XXX - SG_ MO_Fahrpedalrohwert_01 : 12|8@1+ (0.4,0) [0.0|101.6] "Unit_PerCent" XXX - SG_ MO_QBit_Fahrpedalwerte_01 : 20|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Fahrpedalgradient : 21|8@1+ (25,0) [0|6350] "Unit_PerCentPerSecon" XXX - SG_ MO_Sig_Fahrpedalgradient : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_rel_Saugrohrdruck : 30|6@1+ (18,0) [0|1116] "Unit_MilliBar" XXX - SG_ MO_rel_Saugrohrdruck_gem_err : 36|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Moment_im_Leerlauf : 37|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Schubabschaltung : 38|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_StartStopp_StoppVorbereitung : 39|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" XXX - SG_ MO_Entkopplung_Sollschlupf : 48|7@1+ (20,0) [0|2480] "Unit_MinutInver" XXX - SG_ MO_temporaere_Fahrerabwesenheit : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ TSK_a_Soll_gradientenbegrenzt : 57|7@1+ (0.1,-7.2) [-7.2|5.4] "Unit_MeterPerSeconSquar" XXX - -BO_ 967 Motor_26: 8 Motor_Diesel_MQB - SG_ MO_HYB_Status_HV_Ladung : 8|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_1 : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_2 : 29|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_3 : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_4 : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_HYB_Text_5 : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_6 : 37|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_7 : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Gateway_MQB - SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Winterfahrprog : 52|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB - SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB - SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB - SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB - SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 157 Motor_Hybrid_01: 8 Motor_Hybrid_MQB - SG_ Motor_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB - SG_ Motor_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_IstStatusK0 : 12|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_max_ind_VM_Mom : 16|10@1+ (1,0) [0|1021] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Zielzustand : 26|3@1+ (1,0) [0|7] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Startmodus : 29|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_HYB_Startmodus_PQ3x : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Stoppmodus : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_VM_Mom_oE : 40|10@1+ (1,-100) [-100|922] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_VM_aktiv : 50|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Schaltverhinderung : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - -BO_ 811 Motor_Hybrid_02: 8 Motor_Hybrid_MQB - SG_ MO_HYB_E_Faktor : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Drehzahl_VM : 16|16@1+ (0.25,0) [0|16256] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_LowSpeedModus : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - -BO_ 2600468501 NMH_Airbag_01: 8 Airbag_MQB - SG_ NM_Airbag_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Airbag_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Airbag_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Airbag_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468604 NMH_EMotor_01: 8 LEH_MQB - SG_ NM_EMotor_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_EMotor_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_EMotor_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_EMotor_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468496 NMH_Gateway: 8 Gateway_MQB - SG_ NM_Gateway_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Gateway_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Gateway_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ACAN_Aktivitaet : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_FCAN_Aktivitaet : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_KCAN_Aktivitaet : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ICAN_Aktivitaet : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_DiagCAN_Aktivitaet : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ECAN_Aktivitaet : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Energie_LIN_Aktivi000 : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Bedien_LIN_Aktivitaet : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_EM_Aktivitaet : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_EM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Shutdown : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Spg_Messung : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Wakeup_Monitor : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468599 NMH_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ NM_Getriebe_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Getriebe_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Getriebe_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Getriebe_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_v_gr_0 : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Pos_Erk : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Umg_Bed : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468603 NMH_Hybrid_01: 8 BMS_MQB - SG_ NM_Hybrid_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Hybrid_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Hybrid_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Hybrid_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NL_Luefter : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468598 NMH_MO_01: 8 Motor_Diesel_MQB - SG_ NM_MO_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_MO_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_MO_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_MO_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_HV_Abschaltung : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_EKP_Vorlauf : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_STH_Betrieb : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Kuehlerluefter : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Diagnose : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_WFS : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_EEPROM : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Sonstige : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 913 OBD_01: 8 Motor_Diesel_MQB - SG_ OBD_Calc_Load_Val : 0|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Eng_Cool_Temp : 8|8@1+ (1,-40) [-40|215] "Unit_DegreCelsi" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Throttle_Pos : 16|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Load_Val : 24|16@1+ (0.39215686275,0) [0|25700] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Pedal_Pos : 40|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Kaltstart_Denominator : 59|1@1+ (1,0) [0|1] "" BMS_MQB,LEH_MQB - SG_ OBD_Minimum_Trip : 60|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Driving_Cycle : 61|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Warm_Up_Cycle : 62|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Normed_Trip : 63|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - -BO_ 1630 OBD_Tankgeber_01: 8 Gateway_MQB - SG_ OBD_TG_F_Status_1 : 0|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_2 : 4|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_3 : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_4 : 12|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_1 : 16|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_2 : 28|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_3 : 40|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_4 : 52|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1437 Remotestart_FFB: 8 Gateway_MQB - SG_ RSF_Tastencode_1 : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ RSF_Tastencode_2 : 8|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ RSF_Tastencode_Maske : 16|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - -BO_ 984 RGS_VL_01: 8 Airbag_MQB - SG_ RGS_VL_Texte : 12|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ RGS_VL_Charisma_FahrPr : 14|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ RGS_VL_Charisma_Status : 18|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ RGS_VL_aktiv : 21|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Sitz : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Schiebedach : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Fenster : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Warnblinken : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_Precrash_Basis : 32|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ RGS_VL_Precrash_Front : 40|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ RGS_VL_Precrash_Rear : 48|8@1+ (1,0) [0|255] "" Gateway_MQB - -BO_ 1528 SAK_01: 8 SAK_MQB - SG_ SAK_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ SAK_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 1313 STH_01: 8 Gateway_MQB - SG_ STH_Funk_ein : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Funk_aus : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Zusatzheizung : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_LED : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Pumpe_ein : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Geblaese : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_EKP_Anst : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Start_folgt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Ventiloeffnungszeit : 8|6@1+ (1,0) [0|63] "Unit_Minut" Vector__XXX - SG_ STH_Ventil_Status : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Waermeeintrag : 16|6@1+ (1,0) [0|63] "" Vector__XXX - SG_ STH_KVS : 24|13@1+ (1,0) [0|8191] "Unit_MilliLiter" Vector__XXX - SG_ STH_Fehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ STH_Heizleistung : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ STH_Wassertemp : 48|8@1+ (0.75,-40) [-40|142.25] "Unit_DegreCelsi" Vector__XXX - SG_ STH_Motorvorwaermung : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Servicemode : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_war_aktiv : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_KVS_Ueberlauf : 62|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1172 STS_01: 8 Gateway_MQB - SG_ STS_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STS_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STS_Car_not_under_theft : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Car_under_theft : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Anlassersperre : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Typencodierung : 16|5@1+ (1,0) [0|31] "" Vector__XXX - SG_ STS_LIN_aktiv : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Standlicht : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Fahrlicht : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Alarm_still : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Texte : 27|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ STS_Laderelais : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Summer : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Alarm_Blinker : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Notstart : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Signalhorn : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Leerlaufschaltung : 56|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1413 Systeminfo_01: 8 Gateway_MQB - SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" Vector__XXX - SG_ SI_Rollenmode : 6|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" SAK_MQB - SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" SAK_MQB - SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 288 TSK_06: 8 Motor_Diesel_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Radbremsmom : 12|12@1+ (8,0) [0|32760] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Status : 24|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_v_Begrenzung_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Standby_Anf_ESP : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Freig_WU : 29|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Freig_Verzoeg_Anf : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Limiter_ausgewaehlt : 31|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Wunsch_Uebersetz : 32|10@1+ (0.0245,0) [0.0245|25.0635] "" Gateway_MQB - SG_ TSK_Hauptschalter_GRA_ACC : 42|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB - SG_ TSK_SRBM_Anf_ASIL : 44|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB - SG_ TSK_ax_Getriebe_02 : 48|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Zwangszusch_ESP : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_zul_Regelabw : 58|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 798 TSK_07: 8 Motor_Diesel_MQB - SG_ TSK_07_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_AQ - SG_ TSK_07_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_AQ - SG_ TSK_Wunschgeschw : 12|10@1+ (0.32,0) [0.00|326.72] "Unit_KiloMeterPerHour" Gateway_MQB,Getriebe_AQ - SG_ TSK_Texte : 40|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB - SG_ TSK_Akustik : 45|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB - SG_ TSK_Texte_Primaeranz : 48|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB - SG_ TSK_Limiter_Fahrerinfo : 53|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB - SG_ TSK_Limiter_Anzeige : 55|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Fahrzeugstatus_GRA : 56|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Fahrzeugstatus_Limiter : 57|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ MO_Motorlaufwarnung : 58|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Status_Anzeige : 61|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB - -BO_ 346 TSK_08: 8 Motor_Diesel_MQB - SG_ TSK_08_CRC : 0|8@1+ (1,0) [0|255] "" Frontradar - SG_ TSK_08_BZ : 8|4@1+ (1,0) [0|15] "" Frontradar - SG_ MO_Anforderung_HMS : 12|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_Status_EA : 32|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_vMax_Fahrerassistenz : 40|9@1+ (1,0) [0|510] "" Frontradar - SG_ TSK_Einheit_vMax_Fahrerassistenz : 49|1@1+ (1,0) [0|1] "" Frontradar - SG_ TSK_Status_PLA : 50|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_aktives_System : 53|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_erhoehter_Fahrwiderstand : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_Anf_Antriebsmoment : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_Status_ARA : 58|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_Status_IPA : 61|3@1+ (1,0) [0|7] "" Vector__XXX - -BO_ 1716 VIN_01: 8 Gateway_MQB - SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB - SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - -BO_ 175 Waehlhebel_03: 4 Waehlhebel_MQB - SG_ WH_Status_Sperre : 0|3@1+ (1,0) [0|7] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Initialisierung : 3|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_SensorPos_roh : 4|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_03_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_SensorPos_roh_inv : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Testergebnis : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Test_Aktiv : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Status : 25|7@1+ (1,0) [0|127] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 916 WBA_03: 8 Getriebe_DQ_Hybrid_MQB - SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Gateway_MQB - -BO_ 1602 WIV_01: 8 Motor_Diesel_MQB - SG_ WIV_Verschleissindex : 0|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB - SG_ WIV_Russindex : 16|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB - SG_ WIV_t_min : 32|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB - SG_ WIV_t_max : 40|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB - SG_ WIV_W_min : 48|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB - SG_ WIV_W_max : 56|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB - -BO_ 294 HCA_01: 8 Frontsensorik - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [15|30] "Unit_Hertz" Vector__XXX - SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX - SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar - SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ HCA_01_Sendestatus : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Status_HCA : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX - SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar - -BO_ 159 LH_EPS_03: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX - SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX - SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 286 ESP_08: 8 Gateway_MQB - SG_ ESP_08_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_08_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ESP_ANB_CM_Rueckk_Umsetz : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Konsistenz_ACC_Botschaft : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Stillstandsphase_erschoepft : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_ZT_Rueckk_Umsetz : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Tuerkontakt_Fahrertuer : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Abrutschen_Stillstand : 18|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Fahrer_tritt_ZBR_Schw : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_QBit_v_ref : 41|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_v_ref_Fahrtrichtung : 42|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ ESC_Bremsdruckgradient : 44|8@1+ (10,0) [0|2500] "Unit_BarPerSecon" XXX - SG_ ESP_v_ref : 52|12@1+ (0.125,0) [0.000|511.500] "Unit_KiloMeterPerHour" XXX - -BO_ 919 LDW_02: 8 XXX - SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX - SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX - SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX - SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 780 ACC_02: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Wunschgeschw_02 : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Status_Prim_Anz : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Abstandsindex : 24|10@1+ (1,0) [1|1021] "" XXX - SG_ ACC_Akustik_02 : 34|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Warnung_Verkehrszeichen_1 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Gesetzte_Zeitluecke : 37|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Optischer_Fahrerhinweis : 40|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz : 41|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anzeige_Zeitluecke : 42|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Tachokranz : 43|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Display_Prio : 44|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Relevantes_Objekt : 46|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Texte_Primaeranz : 48|7@1+ (1,0) [0|127] "" XXX - SG_ ACC_Wunschgeschw_erreicht : 55|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz_unten : 60|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" XXX - -BO_ 302 ACC_07: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Anhalteweg : 12|11@1+ (0.01,0) [0|20.45] "Unit_Meter" XXX - SG_ ACC_Anhalten : 23|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Boost_Anf : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilauf_Anf : 25|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilauf_Info : 26|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Anforderung_HMS : 28|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Anfahren : 31|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Folgebeschl : 32|8@1+ (0.03,-4.6) [-4.6|2.99] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_Sollbeschleunigung_02 : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - -BO_ 264 Fahrwerk_01: 8 XXX - SG_ Fahrwerk_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrwerk_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 695 RCTA_01: 8 XXX - SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 783 SWA_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Anzeigen : 12|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Blindheit_erkannt : 16|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_rel_Nichtverf : 17|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_rel_Fehler : 18|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Sta_aktiv : 19|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Sta_passiv : 20|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_FT_RueckLED : 21|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Status : 22|2@1+ (1,0) [0|3] "" XXX - SG_ SWA_Standziele_li : 24|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Kolonne_li : 25|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Warnung_FS : 28|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Warnung_BFS : 29|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Kombitexte : 30|3@1+ (1,0) [0|7] "" XXX - SG_ SWA_Kolonne_mi : 33|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Standziele_re : 40|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Kolonne_re : 41|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX - SG_ HRE_Anzeigetexte : 44|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Gischtzaehler : 48|7@1+ (1,0) [0|100] "Unit_PerCent" XXX - SG_ Heckradar_Kombitexte : 56|5@1+ (1,0) [0|31] "" XXX - SG_ RCTA_Kombitexte : 61|3@1+ (1,0) [0|7] "" XXX - -BO_ 804 ACC_04: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Texte_Sekundaeranz : 12|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Texte_Zusatzanz : 16|6@1+ (1,0) [0|63] "" XXX - SG_ ACC_Status_Zusatzanz : 22|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Texte : 27|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Texte_braking_guard : 32|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Warnhinweis : 35|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Zeitluecke_Abstandswarner : 36|6@1+ (0.1,0) [0|6] "Unit_Secon" XXX - SG_ ACC_Abstand_Abstandswarner : 42|9@1+ (1,0) [0|508] "" XXX - SG_ ACC_Tempolimit : 51|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Charisma_FahrPr : 56|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Charisma_Status : 60|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Texte_Abstandswarner : 62|2@1+ (1,0) [0|3] "" XXX - -BO_ 917 LWR_AFS_01: 8 XXX - -BO_ 991 Gateway_76: 8 XXX - -BO_ 997 TSG_FT_02: 8 XXX - SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 1175 Parkhilfe_01: 8 XXX - -BO_ 427 ESP_33: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_AHW_aktiv : 12|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_AHW_nicht_verfuegbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_ANB_CM_aktiv : 16|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_ANB_CM_nicht_verfuegbar : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Warnruck_aktiv : 19|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Warnruck_nicht_verfuegbar : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Prefill_aktiv : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Prefill_nicht_verfuegbar : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_HBA_aktiv : 26|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESC_HBA_nicht_verfuegbar : 27|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESC_TSK_SRBM_Anf : 28|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_TSK_SRBM_nicht_verfuegbar : 29|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Verz_Reg_aktiv : 30|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Verz_Reg_nicht_verfuegbar : 34|1@1+ (1,0) [0|1] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Verz_Reg_TB_nicht_verfuegbar : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Verz_Reg_ZB_nicht_verfuegbar : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Bremslicht_unplausibel : 37|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Konsistenz_ACC : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_AWV : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_ARA : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_IPA : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_FCW : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_NV : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_RCTA : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_TSK : 45|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Konsistenz_vFGS : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_STA : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Fahrer_Bremsdruck_bestimmend : 48|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Konsistenz_EA : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_BFF : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_MKB : 51|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESC_Verz_ASIL_Verfuegbarkeit : 52|3@1+ (1,0) [0|7] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Pumpenanlauf_aktiv : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_AGW : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_KAS : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_PCF : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_FAS_VK : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Verz_Begrenzung : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_AWA : 61|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 418 ESP_15: 8 XXX - SG_ ESP_15_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_15_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 1122 PSD_04: 8 XXX - SG_ PSD_Object_Index : 0|6@1+ (1,0) [0|63] "" XXX - -BO_ 1123 PSD_05: 8 XXX - SG_ PSD_Current_Route_Index : 0|6@1+ (1,0) [0|63] "" XXX - SG_ Route_Distance_Remaining : 8|5@1+ (1,0) [0|31] "" XXX - -BO_ 1124 PSD_06: 8 XXX - -BO_ 988 Gateway_73: 8 XXX - SG_ UNKNOWN_1 : 15|2@0+ (1,0) [0|3] "" XXX - SG_ GE_Fahrstufe : 40|4@1+ (1,0) [0|15] "" XXX - SG_ EPB_Status : 53|3@1+ (1,0) [0|7] "" XXX - SG_ UNKNOWN_2 : 58|3@0+ (1,0) [0|7] "" XXX - -BO_ 792 Kamera_Status: 8 XXX - -BO_ 981 Licht_Anf_01: 8 Vector__XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_Kurvenlicht_links_Anf : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Kurvenlicht_rechts_Anf : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Standlicht_Anf : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Abblendlicht_Anf : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Fernlicht_Anf : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Nebellicht_Anf : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Parklicht_li_Anf : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Parklicht_re_Anf : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Nebelschluss_Ahg_Anf : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Nebelschluss_Fzg_Anf : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Schlusslicht_Anf : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Rueckfahrlicht_Anf : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Signaturlicht_Anf : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Umfeldleuchten_Anf : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Tagfahrlicht_Anf : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Regenlicht_Anf : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Autobahnlicht_Anf : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Touristen_Licht_Anf : 29|1@1+ (1,0) [0|1] "" Frontradar - SG_ BCM1_CH_aktiv : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_LH_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Gleitende_Leuchtw_Anf : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_GLW_Fernlicht_Anf : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Adaptive_Lichtvert_Anf : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_CH_LH_aktiv : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Allwetterlicht_Anf : 41|1@1+ (1,0) [0|1] "" Frontradar - -BO_ 1440 RLS_01: 8 XXX - -BO_ 870 Blinkmodi_02: 8 XXX - SG_ Hazard_Switch : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Comfort_Signal_Left : 23|1@1+ (1,0) [0|1] "" XXX - SG_ Comfort_Signal_Right : 24|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Turn_Exterior_Bulb_1 : 25|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Turn_Exterior_Bulb_1 : 26|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Turn_Exterior_Bulb_2 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Turn_Exterior_Bulb_2 : 28|1@1+ (1,0) [0|1] "" XXX - SG_ Fast_Send_Rate_Active : 37|1@1+ (1,0) [0|1] "" XXX - -BO_ 1385 HVEM_04: 8 XXX - -BO_ 1605 FLA_01: 8 XXX - -BO_ 1624 Licht_vorne_01: 8 XXX - -BO_ 1646 Klima_03: 8 XXX - -BO_ 1720 Kombi_03: 8 XXX - SG_ KBI_Reifenumfang : 0|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - SG_ KBI_Variante_USA : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Variante : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_BCmE_aktiv : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Sparhinweis_quittiert : 17|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Tankfuellstand_Prozent : 18|7@1+ (1,0) [0|100] "Unit_PerCent" XXX - SG_ KBI_Nachtanken_erkannt : 25|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Tankinhalt_hochaufl : 26|14@1+ (0.01,0) [0.00|163.81] "Unit_Liter" XXX - SG_ KBI_Max_Tankinhalt : 40|8@1+ (0.5,0) [0.0|126.5] "" XXX - SG_ KBI_Reifenumfang_Sekundaer : 48|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - -BO_ 391 Motor_EV_01: 8 Motor_MQB_BEV - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EV_Rekuperationsstufe : 12|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ HV_Bordnetz_aktiv : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Waehlpos : 16|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ MO_Fehler_NTKreis : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Fehler_Notabschaltung_Klima : 20|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ MO_KLE_FStatus : 22|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ MO_WH_Texte : 24|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ MO_Drehzahl_VM : 32|16@1+ (0.25,0) [0.00|16383.00] "Unit_MinutInver" XXX - SG_ HV_Bordnetz_Fehler : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Tankbereitschaft_Status : 49|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ MO_Tankklappensteuerung : 52|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ MO_HVEM_Eskalation : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_HVEM_MaxLeistung : 55|9@1+ (50,0) [0|25450] "Unit_Watt" XXX - -CM_ SG_ 134 LWI_Lenkradwinkel "Steering angle WITH variable ratio effect included"; -CM_ SG_ 159 EPS_HCA_Status "Status of Heading Control Assist feature"; -CM_ SG_ 159 EPS_Lenkmoment "Steering input by driver, torque"; -CM_ SG_ 159 EPS_VZ_Lenkmoment "Steering input by driver, direction"; -CM_ SG_ 159 EPS_Berechneter_LW "Raw steering angle, degrees"; -CM_ SG_ 159 EPS_VZ_BLW "Raw steering angle, direction"; -CM_ SG_ 173 COUNTER_DISABLED "Message not renamed to COUNTER because J533 rate-limiting makes it look like messages are being lost"; -CM_ SG_ 294 HCA_01_Vib_Freq "Frequenz der Lenkradvibration"; -CM_ SG_ 294 HCA_01_LM_Offset "Von HCA angefordertes Lenkmoment (Betrag)"; -CM_ SG_ 294 EA_ACC_Sollstatus "Status-Anforderung ACC von Emergency Alert. Statuswechsel bei Flanke. Solange Wert=1, wird EA_ACC_Wunschgeschwindigkeit übernommen. Wert=2 führt zu Zustand ¿ACC_GRA_passiv¿"; -CM_ SG_ 294 EA_Ruckprofil "Emergency Alert Anforderung an ESP, welcher Ruck verwendet werden soll. Eine Umsetzung der Ruckanforderung im ESP erfolgt nur mit gesetztem Bit 'EA_Ruckfreigabe'."; -CM_ SG_ 294 HCA_01_Sendestatus "Gibt den Sendestatus der HCA_01 an (notwendig für IL-Unterstützung)"; -CM_ SG_ 294 HCA_01_LM_OffSign "Vorzeichen des HCA-Lenkmoments"; -CM_ SG_ 294 HCA_01_Status_HCA "Statusinformation vom HCA und Manoevrierassistent für Handshakemechanismus mit der Lenkung"; -CM_ SG_ 294 HCA_01_Vib_Amp "Momentenamplitude der Lenkradvibration"; -CM_ SG_ 294 EA_Ruckfreigabe "Emergency Alert Freigabit für die Warnruck-Anforderung an das ESP"; -CM_ SG_ 294 EA_ACC_Wunschgeschwindigkeit "Emergency Alert Anforderung neue Wunschgeschwindigkeit"; -CM_ SG_ 302 ACC_Hold_Request "Active request for ABS brake hold in ACC_Hold_Type"; -CM_ SG_ 302 ACC_Boost_Request "Hybrid engine start related"; -CM_ SG_ 302 ACC_Freewheel_Request "Active request for DSG sailing/coasting in ACC_Freewheel_Type"; -CM_ SG_ 302 ACC_Hold_Release "Request to ABS to release brake hold"; -CM_ SG_ 302 ACC_Accel_Secondary "Target acceleration of the secondary controller"; -CM_ SG_ 302 ACC_Accel_TSK "Mirror of request to TSK to implement a target acceleration"; -CM_ SG_ 870 Hazard_Switch "Four-way flashers active"; -CM_ SG_ 870 Comfort_Signal_Left "Comfort turn signal active, left"; -CM_ SG_ 870 Comfort_Signal_Right "Comfort turn signal active, right"; -CM_ SG_ 870 Left_Turn_Exterior_Bulb_1 "Probably front"; -CM_ SG_ 870 Right_Turn_Exterior_Bulb_1 "Probably front"; -CM_ SG_ 870 Left_Turn_Exterior_Bulb_2 "Probably rear"; -CM_ SG_ 870 Right_Turn_Exterior_Bulb_2 "Probably rear"; -CM_ SG_ 870 Fast_Send_Rate_Active "CAN message send rate"; -CM_ SG_ 919 LDW_DLC "Probable DLC (distance to line crossing)"; -CM_ SG_ 919 LDW_TLC "Probable TLC (time to line crossing)"; -CM_ SG_ 919 LDW_Unknown "Might be a steering pressed / driver active flag"; -CM_ SG_ 919 Alert_Message "Static table of alert messages to be invoked in the instrument cluster, some with or without beeps, 0 = no current message"; -CM_ SG_ 919 LDW_Direction "Left/right indicator for DLC and TLC"; -CM_ SG_ 919 Right_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; -CM_ SG_ 919 Left_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; -CM_ SG_ 919 Kombi_Lamp_Orange "Enables orange LDW light in instrument cluster"; -CM_ SG_ 919 Kombi_Lamp_Green "Enables green LDW light in instrument cluster"; -CM_ SG_ 780 Folgefahrt "Following another vehicle"; -CM_ SG_ 780 SetAbstand "Set following distance"; -CM_ SG_ 780 Abstand "Following distance"; -CM_ SG_ 780 SetSpeed "ACC set speed"; -CM_ SG_ 391 MO_Waehlpos "Traditional PRND plus B-mode aggressive regen, B-mode mapped to Drive"; -CM_ SG_ 679 ACC_ADAPTIVE "TSK_06.TSK_Limiter_ausgewaehlt seems to take precedence"; -CM_ SG_ 960 ZAS_Kl_15 "Indicates ignition on"; -CM_ SG_ 1720 KBI_BCmE_aktiv "Anzeige BCmE aktiv (BCmE-Screen oder Einsparhinweis in der Anzeige)"; -CM_ SG_ 1720 KBI_Max_Tankinhalt "Mitteilung des maximalen Tankinhalts an das Reichweitenmodul"; -CM_ SG_ 1720 KBI_Nachtanken_erkannt "Statusinformation Nachtankmodus"; -CM_ SG_ 1720 KBI_Reifenumfang "Mittlerer Radumfang aus der K-Zahl gerechnet in Millimeter. Byte 2 Bit 5,4 reserviert, Byte 2 Bit 3..0 und Byte 1 Bit 7..0; Wertebereich 0..4096 mm -"; -CM_ SG_ 1720 KBI_Reifenumfang_Sekundaer "Fahrzeuge mit unterschiedlichen Reifenumfängen Vorderachse / Hinterachse: - -Primärachse: KBI_Reifenumfang -Sekundärachse: KBI_Reifenumfang_Sekundaer -"; -CM_ SG_ 1720 KBI_Sparhinweis_quittiert "angezeigter Sparhinweis ist quittiert. Signal wird nach zwei Sendebotschaften wieder auf '0' gesetzt."; -CM_ SG_ 1720 KBI_Tankfuellstand_Prozent "Tankfüllstand in %"; -CM_ SG_ 1720 KBI_Tankinhalt_hochaufl "angezeigter Tankinhalt hochauflösend zur Restreichweitenberechnung"; -CM_ SG_ 1720 KBI_Variante "Zeigt an ob es sich um ein konventionelles Zeiger-Kombiinstrument handelt oder um eine Volldisplay-Kombiinstrument"; -CM_ SG_ 1720 KBI_Variante_USA "In diesem Signal wird die HW-Variante des Kombis ausgegeben, ACC plausibilisiert auf dieses Signal hin seine US-Codierung"; - - -VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active" 8 "preempted" ; -VAL_ 173 GE_Fahrstufe 5 "P" 6 "R" 7 "N" 8 "D" 9 "S" 10 "E" 13 "T" 14 "T" ; -VAL_ 288 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault" ; -VAL_ 288 TSK_v_Begrenzung_aktiv 0 "inaktiv" 1 "aktiv" ; -VAL_ 288 TSK_Standby_Anf_ESP 0 "keine_Standby_Anforderung" 1 "Standby_Anforderung" ; -VAL_ 288 TSK_Freig_WU 0 "TSK_Uebersetzungswunsch_nicht_freigegeben" 1 "TSK_Uebersetzungswunsch_freigegeben" ; -VAL_ 288 TSK_Freig_Verzoeg_Anf 0 "Verzoegerungsanforderung_nicht_freigegeben" 1 "Verzoegerungsanforderung_freigegeben" ; -VAL_ 288 TSK_Limiter_ausgewaehlt 0 "kein_Limiter_ausgewaehlt" 1 "Limiter_ausgewaehlt" ; -VAL_ 288 TSK_Wunsch_Uebersetz 0 "Init" ; -VAL_ 288 TSK_Hauptschalter_GRA_ACC 0 "Init" 1 "Aus" 2 "Ein" 3 "Fehler" ; -VAL_ 288 TSK_ax_Getriebe_02 511 "Neutralwert" ; -VAL_ 288 TSK_Zwangszusch_ESP 0 "keine_ESP_ASR_Beeinflussung" 1 "ESP_ASR_Beeinflussung" ; -VAL_ 294 EA_ACC_Sollstatus 0 "Init" 1 "ACC_aktivieren" 2 "ACC_deaktivieren" ; -VAL_ 294 EA_Ruckprofil 0 "Init" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7" ; -VAL_ 294 HCA_01_Sendestatus 0 "HCA_sendet_mit_1000ms" 1 "HCA_sendet_mit_20ms" ; -VAL_ 294 HCA_01_LM_OffSign 0 "positives_Vorzeichen" 1 "negatives_Vorzeichen" ; -VAL_ 294 HCA_01_Status_HCA 0 "deaktiviert" 1 "reserviert" 2 "reserviert" 3 "funktionsbereit" 4 "reserviert" 5 "HCA_Momenteneingriff_1" 6 "MA_Aktiv" 7 "HCA_Momenteneingriff_2" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "reserviert" 15 "reserviert" ; -VAL_ 294 EA_Ruckfreigabe 0 "keine_Freigabe" 1 "Freigabe" ; -VAL_ 294 EA_ACC_Wunschgeschwindigkeit 1023 "Init" ; -VAL_ 346 MO_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; -VAL_ 346 TSK_Status_EA 0 "Aus" 1 "Init_oder_nicht_verbaut" 3 "Aktiv" 4 "Uebertreten" 5 "Abschaltung_laeuft" 6 "Reversibel_aus" 7 "Irreversibel_Aus" ; -VAL_ 346 TSK_vMax_Fahrerassistenz 511 "Init_ungueltig_keine_Beschraenkung" ; -VAL_ 346 TSK_Einheit_vMax_Fahrerassistenz 0 "kmh" 1 "mph" ; -VAL_ 346 TSK_Status_PLA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; -VAL_ 346 TSK_aktives_System 0 "keine_Funktion_aktiv" 1 "GRA_ACC" 2 "ARA" 3 "Speedlimiter" 4 "IPA" 5 "PLA" 6 "PEA_Ausrollassistent" 7 "EA" ; -VAL_ 346 TSK_erhoehter_Fahrwiderstand 0 "kein_erhoehter_Fahrwiderstand" 1 "erhoehter_Fahrwiderstand" ; -VAL_ 346 TSK_Anf_Antriebsmoment 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; -VAL_ 346 TSK_Status_ARA 0 "Aus" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; -VAL_ 346 TSK_Status_IPA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laueft" 6 "reversibel_aus" 7 "Fehler" ; -VAL_ 798 TSK_Wunschgeschw 1022 "keine_Anzeige" 1023 "kein_Wert_im_Speicher" ; -VAL_ 798 TSK_Texte 0 "kein_Text" 1 "GRA_Modus_ausgewaehlt" 2 "ACC_Modus_ausgewaehlt" 3 "Lim_Modus_ausgewaehlt" 4 "Lim_nicht_verfuegbar_ESC_passiv" 5 "GRA_nicht_verfuegbar_ESC_passiv" 6 "Lim_nicht_verfuegbar_Charisma" 7 "GRA_nicht_verfuegbar_Charisma" 8 "Lim_nicht_verfuegbar_HDC" 9 "GRA_nicht_verfuegbar_HDC" ; -VAL_ 798 TSK_Akustik 0 "keine_Akustik" 1 "einzelner_Warnton" 2 "dauerhafter_Warnton" ; -VAL_ 798 TSK_Texte_Primaeranz 0 "keine_Anzeige" 1 "GRA_Symbol_passiv_xxx_kmh_mph" 2 "GRA_Symbol_aktiv_xxx_kmh_mph" 3 "Bremse_ueberhitzt" 4 "Limiter_Modus_aktiviert" 5 "GRA_Modus_aktiviert" 6 "ACC_Modus_aktiviert" 7 "Opt_Geschwindigkeitswarnung" 8 "Opt_und_akustische_GeschwWarnung" 9 "Opt_GeschwWarnung_dauerhaft_mit_einmal_Akustik" 10 "Limiter_passiv_mit_Akustik" 11 "Limiter_Fehler_mit_Akustik" 12 "Limiter_Symbol_passiv_xxx_kmh_mph" 13 "Limiter_Symbol_aktiv_xxx_kmh_mph" 14 "Popup_Geschw_zu_hoch__Resume_unzulaessig" ; -VAL_ 798 TSK_Limiter_Fahrerinfo 0 "keine_Info" 1 "Limit_erreicht" 2 "Ueberschritten" 3 "Vom_Fahrer_Ueberstimmt" ; -VAL_ 798 TSK_Limiter_Anzeige 0 "Display_Anzeige_GRA_ACC" 1 "Display_Anzeige_Limiter" ; -VAL_ 798 TSK_Fahrzeugstatus_GRA 0 "GRA_verfuegbar" 1 "GRA_nicht_verfuegbar" ; -VAL_ 798 TSK_Fahrzeugstatus_Limiter 0 "Limiter_verfuegbar" 1 "Limiter_nicht_verfuegbar" ; -VAL_ 798 MO_Motorlaufwarnung 0 "keine_Anzeige" 1 "Anforderung_Motorlaufwarnung" ; -VAL_ 798 TSK_Status_Anzeige 0 "Hauptschalter_aus" 1 "Init" 2 "passiv" 3 "aktiv" 4 "Uebertreten" 5 "Limitiierung_aktiv" 6 "reversibel_aus" 7 "irreversibel_aus" ; -VAL_ 780 ACC_Wunschgeschw_02 1023 "keine_Anzeige" ; -VAL_ 780 ACC_Status_Prim_Anz 0 "Symbol nicht beleuchtet" 1 "Farbe 1 (typisch 'gruen')" 2 "Farbe 2 (typisch 'rot')" 3 "Farbe 3 (typisch 'gelb')" ; -VAL_ 780 ACC_Abstandsindex 0 "Sonderanzeige_graue_Fahrbahn" 1022 "Sonderanzeige_graue_Fahrbahn" 1023 "Sonderanzeige_Fahrbahn_mit_gruenem_roten_Bereich" ; -VAL_ 780 ACC_Akustik_02 0 "keine_Akustik" 1 "hochpriore_Akustik" 2 "niederpriore_Akustik" 3 "hochpriore_Dauerakustik" ; -VAL_ 780 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung" ; -VAL_ 780 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert" ; -VAL_ 780 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN" ; -VAL_ 780 ACC_Typ_Tachokranz 0 "Tachokranz_lang" 1 "Tachokranz_kurz" ; -VAL_ 780 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert" ; -VAL_ 780 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; -VAL_ 780 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio" ; -VAL_ 780 ACC_Relevantes_Objekt 0 "Symbol_nicht_beleuchtet" 1 "Farbe_1_typisch_gruen" 2 "Farbe_2_typisch_rot" 3 "Farbe_3_typisch_gelb" ; -VAL_ 780 ACC_Texte_Primaeranz 0 "keine Anzeige" 1 "ACC nicht verfuegbar !" 2 "Auto_Auto_ _ _" 3 "Auto_ _Auto_ _" 4 "Auto_ _ _Auto_" 5 "Auto_ _ _ _Auto" 6 "Auto_Auto_ _ _ Gong (durchgestrichen)" 7 "Auto_ _Auto_ _ Gong (durchgestrichen)" 8 "Auto_ _ _Auto_ Gong (durchgestrichen)" 9 "Auto_ _ _ _Auto Gong (durchgestrichen)" 10 "ACC bereit" 11 "keine Abstandsregelung" 12 "ACC Sensor Sicht !" 13 "ACC nicht verfuegbar" 14 "o o o" 15 "Hochschalten" 16 "ESP Eingriff" 17 "Herunterschalten" 18 "Parkbremse !" 19 "Geschwindigkeitsgrenze" 20 "Waehlhebelposition !" 21 "VDA ACC-Symbol YYY km/h / mph" 22 "Tempolimit XXX km/h / mph" 23 "Kurve XXX km/h / mph" 24 "ACC Abschaltung" 25 "Symbol 'Eieruhr'" 26 "!" 27 "--- km/h / mph" 28 "XXX km/h / mph (Schriftart 2)" 29 "Lenkradwinkel" 30 "Anfahren bestaetigen" 31 "Fahrzeug verloren" 32 "Im Stand nicht moeglich" 33 "Ungueltiger Anfahrbefehl" 34 "Tuer offen !" 35 "Fahrer Gurtschloss offen !" 36 "Schalthebelposition !" 37 "Drehzahl !" 38 "Kurvenassistent aus" 39 "Tempolimit aus" 40 "Abbiegeassistent" 41 "Ortsanfang XXX km/h / mph" 42 "Ortsende XXX km/h / mph" 43 "Tempolimit Ende XXX km/h / mph" 44 "HDC aktiv" 45 "braking guard Bremsruck" 46 "braking guard aus" 47 "braking guard aus" 48 "Uebernehmen !" 49 "Steigung zu gross" 50 "Stehendes Objekt voraus" 51 "SET / 'GRA Symbol'___xxx km/h / mph" 52 "SET / 'GRA Symbol' xxx km/h / mph" 53 "ACC aus" 54 "ACC startet" 55 "ACC reinigen" 56 "ACC Fehler" 57 "ACC haelt an !" 58 "Bremse betaetigen !" 59 "Kupplung betaetigt" 60 "LIM AUS" 61 "LIM AKTIV" 62 "LIM PASSIV" 63 "LIM FEHLER" 64 "Bremse ueberhitzt !" 65 "Bremse haelt !" 66 "ESP PASSIV !" 67 "ACC_anfahrbereit" 68 "Gang_einlegen" 69 "Rechtsueberholen_verhindert" 70 "Linksueberholen_verhindert" 71 "Achtung_Geschwindigkeitsueberschreitung" 72 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar" ; -VAL_ 780 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht" ; -VAL_ 780 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; -VAL_ 780 ACC_Status_Anzeige 0 "ACC_GRA_Hauptschalter_aus" 1 "ACC_in_Init_nicht_bei_GRA" 2 "ACC_GRA_passiv" 3 "ACC_GRA_aktiv" 4 "ACC_GRA_im_Hintergrund_uebertreten" 5 "ACC_GRA_Abschaltreaktion" 6 "ACC_reversibel_aus_nicht_bei_GRA" 7 "ACC_GRA_irreversibel_aus" ; -VAL_ 804 ACC_Texte_Sekundaeranz 0 "keine_Anzeige" 1 "Zielfahrzeug_erkannt" 2 "Rechtskurve_voraus" 3 "Linkskurve_voraus" 4 "Tempolimit_voraus" 5 "Sensorsicht" 6 "Anfahrbereit" 7 "Tempolimit_erkannt" 8 "Kreuzung_voraus" 9 "Kreisverkehr_voraus" ; -VAL_ 804 ACC_Texte_Zusatzanz 0 "keine_Anzeige" 1 "ACC_AUS" 2 "ACC_BEREIT" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_1__dyn" 10 "DISTANZ_2__dyn" 11 "DISTANZ_3__dyn" 12 "DISTANZ_4__dyn" 13 "DISTANZ_1__stand" 14 "DISTANZ_2__stand" 15 "DISTANZ_3__stand" 16 "DISTANZ_4__stand" 17 "DISTANZ_1__comf" 18 "DISTANZ_2__comf" 19 "DISTANZ_3__comf" 20 "DISTANZ_4__comf" 21 "DISTANZ_1__efficiency" 22 "DISTANZ_2__efficiency" 23 "DISTANZ_3__efficiency" 24 "DISTANZ_4__efficiency" 25 "DISTANZ_5" 26 "DISTANZ_5__dyn" 27 "DISTANZ_5__stand" 28 "DISTANZ_5__comf" 29 "DISTANZ_5__efficiency" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanz_Warnung_aktiviert" ; -VAL_ 804 ACC_Status_Zusatzanz 0 "keine Anzeige" 1 "Bild 1 (Fzg. Silhouette, typ. farblos)" 2 "Bild 2 (Fzg. Farbe 1, typ. grau)" 3 "Bild 3 (Fzg. Farbe 2, typ. rot)" 4 "Bild 4 (Symbol 1 ACCplus, typ. Doppelfzg. gelb)" 5 "Bild 5 (Symbol 2 ACCplus, typ. Doppelfzg. grau)" 6 "Bild 6 (Fzg. Farbe 2, typ. rot) mit Priorität im Kombi (Pop-up)" ; -VAL_ 804 ACC_Texte 0 "keine_Anzeige" 1 "ACC_nicht_verfuegbar" 2 "ACC_und_AWV_nicht_verfuegbar" 3 "ACC_keine_Sensorsicht" 4 "ACC_und_AWV_keine_Sensorsicht" 5 "ACC_Steigung_zu_gross" 6 "ACC_nur_in_Fahrstufe_verfuegbar" 7 "ACC_Parkbremse_betaetigt" 8 "ACC_ESP_Eingriff" 9 "ACC_Bitte_uebernehmen" 10 "ACC_HDC_betaetigt" 11 "ACC_Geschwindigkeitsgrenze" 12 "ACC_Schalthebelposition" 13 "ACC_Drehzahl" 14 "ACC_Kupplung_betaetigt" 15 "ACC_Aktivierverhinderung" 16 "ACC_Abschaltung" 17 "ACC_Parkassistent_aktiv" 18 "ACC_ESC_aus" 19 "ACC_Charisma_Modus_inkompatibel" 20 "ACC_Stehendes_Objekt_voraus" 21 "ACA_Fahreruebernahme" 22 "ACA_Querfuehrung_nicht_verfuegbar" ; -VAL_ 804 ACC_Texte_braking_guard 0 "keine_Anzeige" 1 "AWV_aus" 2 "AWV_Warnung" 3 "AWV_Demomodus" 4 "AWV_Systemstoerung" 5 "AWV_Eingriff" 6 "AWV_Vorwarnung_aus" 7 "AWV_keine_Sensorsicht" ; -VAL_ 804 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis" ; -VAL_ 804 ACC_Zeitluecke_Abstandswarner 61 "Freifahrt" 62 "nicht_definiert" 63 "keine_Anzeige" ; -VAL_ 804 ACC_Abstand_Abstandswarner 509 "Freifahrt" 510 "nicht_definiert" 511 "keine_Anzeige" ; -VAL_ 804 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw" ; -VAL_ 804 ACC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15" ; -VAL_ 804 ACC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch" ; -VAL_ 804 ACC_Texte_Abstandswarner 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "zurzeit_eingeschraenkt" ; -VAL_ 290 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert" ; -VAL_ 290 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert" ; -VAL_ 290 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler" ; -VAL_ 290 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; -VAL_ 290 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; -VAL_ 290 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; -VAL_ 290 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert" ; -VAL_ 290 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System" ; -VAL_ 290 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv" ; -VAL_ 302 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler" ; -VAL_ 302 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; -VAL_ 302 ACC_Freilauf_Anf 0 "keine Freilauf-Anforderung" 1 "Freilauf-Anforderung" ; -VAL_ 302 ACC_Freilauf_Info 0 "Freilauf_freigegeben" 1 "kein_Uebergang_in_Freilauf_zulaessig" 2 "Freilauf_nicht_freigegeben" 3 "Freilauf_Anforderung" ; -VAL_ 302 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; -VAL_ 302 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; -VAL_ 302 ACC_Folgebeschl 254 "Neutralwert" ; -VAL_ 302 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; -VAL_ 279 AWV1_Anf_Prefill 0 "Prefill_nicht_aktivieren" 1 "Prefill_aktivieren" ; -VAL_ 279 ANB_CM_Info 0 "Standard" 1 "Erweitert" ; -VAL_ 279 AWV2_Freigabe 0 "keine_Freigabe" 1 "Freigabe" ; -VAL_ 279 AWV1_HBA_Param 0 "Defaultparametersatz" 1 "Parametersatz_mit_leicht_erhoehter_Empfindlichkeit" 2 "Parametersatz_mit_erhoehter_Empfindlichkeit" 3 "Parametersatz_mit_hoechster_Empfindlichkeit" ; -VAL_ 279 AWV2_Priowarnung 0 "Anzeige_Verlassen_der_Fahrspur_wird_nicht_unterdrueckt" 1 "Anzeige_Verlassen_der_Fahrspur_wird_unterdrueckt" ; -VAL_ 279 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; -VAL_ 279 ANB_Info_Teilbremsung 0 "Auspraegung_Standard" 1 "Auspraegung_Erweitert" ; -VAL_ 279 ANB_Notfallblinken 0 "kein_ANB_Notfallblinken" 1 "Notfallblinken_ANB_angefordert" ; -VAL_ 279 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben" ; -VAL_ 279 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben" ; -VAL_ 279 AWV_Vorstufe 0 "keine_Notbremsung_erwartet" 1 "Notbremsung_in_Kuerze" ; -VAL_ 279 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten" ; -VAL_ 279 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich" ; -VAL_ 279 PCF_Freigabe 0 "keine_Freigabe_PreCrashFront" 1 "Freigabe_PreCrashFront" ; -VAL_ 279 AWV1_ECD_Anlauf 0 "ECD_Anlauf_nicht_aktivieren" 1 "ECD_Anlauf_aktivieren" ; -VAL_ 279 PCF_Time_to_collision 255 "Objektstatus=0x0__oder_berechneter_TTC_Wert_groesser_als_Maximalwert" ; -VAL_ 679 ACC_Regelgeschw 1023 "keine_Anzeige" ; -VAL_ 679 ACC_Einheit_maxSetzgeschw 0 "kmh" 1 "mph" ; -VAL_ 679 ACC_maxSetzgeschw 511 "Init_Neutralwert" ; -VAL_ 679 ACC_minRegelgeschw 255 "keine_Anzeige" ; -VAL_ 679 ACC_maxRegelgeschw 255 "keine_Anzeige" ; -VAL_ 679 ACC_Tempolimitassistent 0 "keine_Anzeige" 1 "Tempolimitassistent_aktiv" 2 "Tempolimitassistent_nicht_verfuegbar" 3 "Tempolimitassistent_Fahreruebernahme" ; -VAL_ 679 ACC_Kurvenassistent 0 "keine_Anzeige" 1 "Kreuzung" 2 "Rechtskurve" 3 "Linkskurve" 4 "Kreisverkehr" ; -VAL_ 679 ACC_RUV 0 "keine_Anzeige" 1 "RUV_aktiv_Rechtsverkehr" 2 "RUV_aktiv_Linksverkehr" ; -VAL_ 679 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; -VAL_ 679 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; -VAL_ 679 ACC_ENG_Texte 0 "keine_Anzeige" 1 "keine_Laenderverfuegbarkeit" 2 "nicht_verfuegbar" 3 "Geschwindigkeitsgrenze" ; -VAL_ 679 ACC_ADAPTIVE 1 "adaptive" 2 "non-adaptive" ; -VAL_ 681 AWV_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung" ; -VAL_ 681 AWV_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "nicht_definiert" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt" ; -VAL_ 681 AWV_Status_Anzeige 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" ; -VAL_ 681 AWV_Einstellung_System_FSG 0 "deaktiviert" 1 "aktiviert" ; -VAL_ 681 AWV_Einstellung_Warnung_FSG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein" ; -VAL_ 681 AWV_Warnlevel 0 "keine_Gefaehrdung" 63 "max_Gefaehrdung" ; -VAL_ 391 MO_Waehlpos 2 "P" 3 "R" 4 "N" 5 "D" 6 "D" ; -VAL_ 391 EV_Rekuperationsstufe 0 "default" 1 "B1" 2 "B2" 3 "B3" ; -VAL_ 870 Fast_Send_Rate_Active 0 "1 Hz" 1 "50 Hz" ; -VAL_ 988 EPB_Status 0 "offen" 1 "geschlossen_Parken" 2 "teilgespannt_Halten" 3 "im_Lauf_oeffnen" 4 "im_Lauf_schliessen" 5 "tbd" 6 "Init" 7 "unbekannt"; -VAL_ 988 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; -VAL_ 1720 KBI_Variante_USA 0 "keine USA-Variante" 1 "USA-Variante" ; -VAL_ 1720 KBI_Variante 0 "Zeiger Kombiinstrument" 1 "Volldisplay Kombiinstrument" ; -VAL_ 1720 KBI_BCmE_aktiv 0 "Anzeige_nicht_aktiv" 1 "Anzeige_aktiv" ; -VAL_ 1720 KBI_Sparhinweis_quittiert 0 "nicht_quittiert" 1 "quittiert" ; -VAL_ 1720 KBI_Tankfuellstand_Prozent 126 "Init" 127 "Fehler" ; -VAL_ 1720 KBI_Nachtanken_erkannt 0 "Geberbetrieb" 1 "Nachtankmodus" ; -VAL_ 1720 KBI_Tankinhalt_hochaufl 16382 "Init" 16383 "Fehler" ; -VAL_ 1720 KBI_Max_Tankinhalt 254 "Init" 255 "Fehler" ; diff --git a/opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc b/opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc deleted file mode 100644 index 500f7c5367..0000000000 --- a/opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc +++ /dev/null @@ -1,1773 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - BO_TX_BU_ - BA_DEF_REL_ - BA_REL_ - BA_DEF_DEF_REL_ - BU_SG_REL_ - BU_EV_REL_ - BU_BO_REL_ - SG_MUL_VAL_ - -BS_: - -BU_: Airbag_MQB BAP_Tester_MQB BMS_MQB Datenlogger_MQB Gateway_MQB Getriebe_DQ_Hybrid_MQB Getriebe_DQ_MQB LEH_MQB Motor_Diesel_MQB Motor_Hybrid_MQB Motor_Otto_MQB SAK_MQB Waehlhebel_MQB Vector__XXX l c i XXX - - -BO_ 290 ACC_06: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_DynErhoehung : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 279 ACC_10: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ AWV1_Anf_Prefill : 16|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_CM_Info : 17|1@1+ (1,0) [0|1] "" XXX - SG_ AWV2_Freigabe : 18|1@1+ (1,0) [0|1] "" XXX - SG_ AWV1_HBA_Param : 19|2@1+ (1,0) [0|3] "" XXX - SG_ AWV2_Ruckprofil : 21|3@1+ (1,0) [0|7] "" XXX - SG_ AWV2_Priowarnung : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_CM_Anforderung : 25|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Info_Teilbremsung : 26|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Notfallblinken : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Teilbremsung_Freigabe : 28|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Zielbrems_Teilbrems_Verz_Anf : 29|10@1+ (0.024,-20.016) [-20.016|4.536] "Unit_MeterPerSeconSquar" XXX - SG_ ANB_Zielbremsung_Freigabe : 39|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Vorstufe : 40|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Halten : 41|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_CityANB_Auspraegung : 42|1@1+ (1,0) [0|1] "" XXX - SG_ PCF_Freigabe : 43|1@1+ (1,0) [0|1] "" XXX - SG_ AWV1_ECD_Anlauf : 44|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_AWA_VZ_Anf_Lenkmomoffset : 46|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ AWV_AWA_Anf_Lenkmomoffset : 47|9@1+ (0.01,0) [0.00|5.11] "Unit_NewtoMeter" XXX - SG_ PCF_Time_to_collision : 56|8@1+ (0.01,0) [0|2.5] "Unit_Secon" XXX - -BO_ 679 ACC_13: 8 XXX - SG_ ACC_Regelgeschw : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Einheit_maxSetzgeschw : 22|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_maxSetzgeschw : 23|9@1+ (1,0) [0|510] "" XXX - SG_ ACC_minRegelgeschw : 32|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX - SG_ ACC_maxRegelgeschw : 40|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Tempolimitassistent : 48|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Kurvenassistent : 52|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_RUV : 56|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Tachokranz : 58|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz_unten : 59|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_ENG_Texte : 60|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_ADAPTIVE : 63|2@0+ (1,0) [0|3] "" XXX - -BO_ 681 ACC_15: 8 XXX - SG_ AWV_Warnung : 16|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Texte : 24|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Status_Anzeige : 32|2@1+ (1,0) [0|3] "" XXX - SG_ AWV_Einstellung_System_FSG : 34|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Einstellung_Warnung_FSG : 36|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Warnlevel : 58|6@1+ (1,0) [0|63] "" XXX - -BO_ 64 Airbag_01: 8 Airbag_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_PAO_Leuchte_Anf : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Deaktivierung_HV : 42|3@1+ (1.0,0.0) [0.0|7] "" BMS,Gateway_MQB,LEH_MQB,Motor_Hybrid_MQB - SG_ AB_EDR_Trigger : 45|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB - SG_ AB_Gurtwarn_HFS : 47|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ AB_Gurtwarn_HBFS : 48|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ SC_Masterzeit_Offset : 53|2@1+ (5.08,0) [0.00|15.24] "Unit_Secon" Gateway_MQB - SG_ SC_Masterzeit : 57|7@1+ (0.04,0) [0.00|5.04] "Unit_Secon" Gateway_MQB - -BO_ 1312 Airbag_02: 8 Airbag_MQB - SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 65 Airbag_03: 8 Airbag_MQB - SG_ Airbag_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Airbag_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_MKB_Safing : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1633 Anhaenger_01: 8 Gateway_MQB - SG_ AAG_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_abgesteckt : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_NSL_aktiv : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Anhaenger_erkannt : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Blinker_H_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Blinker_HL_def : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Blinker_HR_def : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Bremslicht_H_def : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Schlusslicht_HL_def : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Schlusslicht_HR_def : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_AVS_Fehler_02 : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_AVS_Stati : 20|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 1626 BCM_01: 8 Gateway_MQB - SG_ BCM_Bremsbelag_Sensor : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Bremsfluessigkeit_Sensor : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Licht_Warn : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Waschwasser_Sensor : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Kuehlmittel_Sensor : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_Kl_15_HW_erkannt : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Eis_Offroad_Taste : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZZH_Endlage_oben : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZZH_Endlage_unten : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZZH_Endlage_unplausibel : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM2_EZS_gedrueckt : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM2_SST_gedrueckt : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Hybrid_StartStopp_Taste : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Warnblink_Taster : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Valet_Parking_Taster : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Remotestart_Betrieb : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_HSK_Taster : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Heckrollo_Taster : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_MH_Schalter : 31|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_MH_WIV_Schalter : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Eco_Charisma_Taste : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Thermomanagement_Fehler : 36|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Thermomanagement_gueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Lichtwarn_Texte : 38|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 869 BEM_05: 8 Gateway_MQB - SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_01_Abschaltstufen : 26|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_EMLIN_ungueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Segel_Info : 48|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" LEH_MQB - SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" LEH_MQB - -BO_ 1628 BMS_Hybrid_01: 8 BMS_MQB - SG_ BMS_HYB_ASV_hinten_Status : 13|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_ASV_vorne_Status : 14|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_BattFanSpd : 16|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ BMS_HYB_VentilationReq : 20|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_Spuelbetrieb_Status : 21|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_Kuehlung_Anf : 22|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ BMS_HYB_Temp_vor_Verd : 24|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_HYB_Temp_nach_Verd : 32|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_Temperatur : 40|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_Temperatur_Ansaugluft : 48|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_IstSpannung_HV : 56|8@1+ (1,100) [100|350] "Unit_Volt" Gateway_MQB - -BO_ 901 Charisma_01: 8 Gateway_MQB - SG_ CHA_Ziel_FahrPr_ALR : 0|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_ESP : 4|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_FL : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Fahrer_Umschaltung : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ CHA_Ziel_FahrPr_MO : 16|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ CHA_Ziel_FahrPr_GE : 20|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ CHA_Ziel_FahrPr_ST : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_SCU : 28|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_DR : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_QS : 36|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_AFS : 40|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_RGS : 44|4@1+ (1,0) [0|15] "" Airbag_MQB - SG_ CHA_Ziel_FahrPr_EPS : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_ACC : 52|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_SAK : 56|4@1+ (1,0) [0|15] "" SAK_MQB - SG_ CHA_Ziel_FahrPr_MStSt : 60|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 945 DC_Hybrid_01: 8 LEH_MQB - SG_ DC_HYB_iAktLV : 12|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB - SG_ DC_HYB_iAktReserveLV : 22|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB - SG_ DC_HYB_uAktLV : 32|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Gateway_MQB - SG_ DC_HYB_LangsRegelung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Abregelung_Temperatur : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_RedLeistung : 42|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_intern : 43|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_Spannung : 44|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Auslastungsgrad : 56|8@1+ (0.4,0) [0|100] "Unit_PerCent" Gateway_MQB - -BO_ 1714 Diagnose_01: 8 Gateway_MQB - SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - -BO_ 1520 Dimmung_01: 8 Gateway_MQB - SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB - SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 1603 Einheiten_01: 8 Gateway_MQB - SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX - -BO_ 260 EPB_01: 8 Gateway_MQB - SG_ EPB_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_01_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_QBit_Laengsbeschleunigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_QBit_Pedalweg_Kuppl : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_BCM2_Motor_Wakeup : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_Freig_Verzoeg_Anf : 15|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_Verzoeg_Anf : 16|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" Vector__XXX - SG_ EPB_Laengsbeschleunigung : 24|8@1+ (1,-128) [-128|126] "Unit_PerCentOfForceOfGravi" Vector__XXX - SG_ EPB_Pedalweg_Kuppl : 32|8@1+ (0.4,0) [8|92] "Unit_PerCent" Vector__XXX - SG_ EPB_Anfahrwunsch_erkannt : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_DAA_Randbed_erf : 49|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ EPB_Fehlerstatus : 50|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EPB_Schalterposition : 52|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_QBit_Schalterpos : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_Konsistenz_ACC : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_Spannkraft : 56|5@1+ (1,0) [0|29] "Unit_KiloNewto" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ EPB_Status : 61|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 257 ESP_02: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Gierrate : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_QBit_Laengsbeschl : 13|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Querb : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Stillstandsflag : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Querbeschleunigung : 16|8@1+ (0.01,-1.27) [-1.27|1.27] "Unit_ForceOfGravi" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Laengsbeschl : 24|10@1+ (0.03125,-16) [-16|15.90625] "Unit_MeterPerSeconSquar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verteil_Wankmom : 34|5@1+ (0.1,-1) [-1|1] "" Vector__XXX - SG_ ESP_QBit_Anf_Vert_Wank : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Gierrate : 40|14@1+ (0.01,0) [0|163.82] "Unit_DegreOfArcPerSecon" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_VZ_Gierrate : 54|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Notbremsanzeige : 55|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_SpannungsAnf : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_PLA_Abbruch : 57|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ ESP_Status_ESP_PLA : 60|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 262 ESP_05: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Bremsdruck : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Fahrer_bremst : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Schwelle_Unterdruck : 14|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Bremsdruck : 16|10@1+ (0.3,-30) [-30|276.6] "Unit_Bar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Fahrer_bremst : 26|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verz_TSK_aktiv : 27|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Lenkeingriff_ADS : 28|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Konsistenz_TSK : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Bremsruck_AWV2 : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Konsistenz_AWV2 : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ECD_Fehler : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ECD_nicht_verfuegbar : 33|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Status_Bremsentemp : 34|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Autohold_Standby : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_HDC_Standby : 36|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_HBA_aktiv : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Prefill_ausgeloest : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Rueckwaertsfahrt_erkannt : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Status_Anfahrhilfe : 40|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HDC_aktiv : 41|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_StartStopp_Info : 42|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ESP_Eingr_HL : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_HR : 45|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_VL : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_VR : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_BKV_Unterdruck : 48|8@1+ (4,0) [0|1012] "Unit_MilliBar" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Autohold_aktiv : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_FStatus_Anfahrhilfe : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Verz_EPB_aktiv : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ECD_Bremslicht : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verzoeg_EPB_verf : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Status_Bremsdruck : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Anforderung_EPB : 62|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 914 ESP_07: 8 Gateway_MQB - SG_ ESP_07_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_07_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_ACC_LDE : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Quattro_Antrieb : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Codierung_ADS : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_RTA_HL : 16|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ ESP_RTA_HR : 24|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ ESP_RTA_VR : 32|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ OBD_Fehler_Radsensor_HL : 40|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_HR : 44|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_VL : 48|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_VR : 52|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Qualifizierung_Antriebsart : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Offroad_Modus : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_MKB_ausloesbar : 58|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_MKB_Status : 59|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_CM_Variante : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_OBD_Status : 61|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 278 ESP_10: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 178 ESP_19: 8 Gateway_MQB - SG_ ESP_HL_Radgeschw_02 : 0|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Radgeschw_02 : 16|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Radgeschw_02 : 32|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Radgeschw_02 : 48|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1629 ESP_20: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" XXX - SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_Wiederstart_Anz_01 : 30|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Wiederstart_Anz_02 : 31|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Wiederstart_Anz_03 : 32|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Wiederstart_Anz_04 : 33|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_01 : 34|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_02 : 35|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_03 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_04 : 37|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_05 : 38|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_06 : 39|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_07 : 40|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Stoppverbot_Anz_Std : 41|1@1+ (1,0) [0|1] "" XXX - SG_ ESP_Dachrelingsensor : 42|2@1+ (1,0) [0|3] "" XXX - SG_ ESP_Stoppverbot_Anz_08 : 44|1@1+ (1,0) [0|1] "" XXX - SG_ HDC_Charisma_FahrPr : 45|4@1+ (1,0) [0|15] "" XXX - SG_ HDC_Charisma_Status : 49|2@1+ (1,0) [0|3] "" XXX - SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" XXX - SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - -BO_ 253 ESP_21: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "" XXX - SG_ ESP_PLA_Bremseingriff : 22|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Diagnose : 23|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESC_Reku_Freigabe : 24|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESC_v_Signal_Qualifier_High_Low : 25|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ ESP_Vorsteuerung : 28|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_AWV3_Brems_aktiv : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ OBD_Schlechtweg : 30|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ OBD_QBit_Schlechtweg : 31|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0.00|655.32] "Unit_KiloMeterPerHour" XXX - SG_ ASR_Tastung_passiv : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Tastung_passiv : 49|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Systemstatus : 50|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ASR_Schalteingriff : 51|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ ESP_Haltebestaetigung : 53|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_MKB_Abbruch_Geschw : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_QBit_v_Signal : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ABS_Bremsung : 56|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ASR_Anf : 57|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MSR_Anf : 58|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ EBV_Eingriff : 59|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ EDS_Eingriff : 60|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Eingriff : 61|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_ASP : 62|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Anhaltevorgang_ACC_aktiv : 63|1@1+ (1.0,0.0) [0.0|1] "" XXX - -BO_ 987 Gateway_72: 8 Gateway_MQB - SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 989 Gateway_74: 8 Gateway_MQB - SG_ LH_EPS_01_alt : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ Kessy_04_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ LIN_2_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MFG_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ GW_74_va_14 : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Klima_02_alt : 5|1@1+ (1,0) [0|1] "" BMS_MQB - SG_ Parkhilfe_01_alt : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ELV_01_alt : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KY_StartStopp_Info : 16|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ PH_StartStopp_Info : 18|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ EPS_Lenkerposition : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB - SG_ ELV_Anf_Klemme_50 : 22|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ MF_StartStopp_Info : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ KL_Geblaesespannung_Soll : 40|8@1+ (0.05,0.5) [2|13] "Unit_Volt" BMS_MQB - SG_ KL_Umluftklappe_Status : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Tip_Down : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MFL_Tip_Up : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ LS_Tiptronic_Fehler : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 296 Getriebe_06: 3 Getriebe_DQ_Hybrid_MQB - SG_ GE_WH_Sperre : 0|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Ausleuchtungsmode : 1|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Test_Freigabe : 2|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Ist_Fahrstufe : 4|4@1+ (1,0) [0|15] "" Waehlhebel_MQB - SG_ GE_Testparameter_1 : 8|8@1+ (1,0) [0|255] "" Waehlhebel_MQB - SG_ GE_Testparameter_2 : 16|8@1+ (1,0) [0|255] "" Waehlhebel_MQB - -BO_ 173 Getriebe_11: 8 Getriebe_DQ_Hybrid_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER_DISABLED : 8|4@1+ (1,0) [0|15] "" XXX - SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "" XXX - SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "" XXX - SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" XXX - SG_ GE_Fahrstufe : 42|4@1+ (1,0) [0|15] "" XXX - SG_ GE_reserv_Fahrstufe : 46|1@1+ (1,0) [0|1] "" XXX - SG_ GE_Schaltablauf : 47|2@1+ (1,0) [0|3] "" XXX - SG_ GE_Uefkt_unplausibel : 49|1@1+ (1,0) [0|1] "" XXX - SG_ GE_MMom_Status_02 : 50|3@1+ (1,0) [0|7] "" XXX - SG_ GE_Status_Kraftschluss : 53|3@1+ (1,0) [0|7] "" XXX - SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" XXX - SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" XXX - SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" XXX - SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 174 Getriebe_12: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_12_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Getriebe_12_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Drehzahlmesser_Daempfung : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Schubabschalt_Unt : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freigabe_Synchro : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Synchro_Wunschdrehz : 15|9@1+ (25,0) [0|12750] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Synchro_Zeit : 24|8@1+ (20,0) [0|5080] "Unit_MilliSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Mom_Begr_Gradient : 32|8@1+ (10,0) [0|2540] "Unit_NewtoMeterPerSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Anheb_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Aufnahmemoment : 48|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Anf_Zylabsch : 58|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ GE_HYB_DZ_Eingriff : 62|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB - -BO_ 301 Getriebe_13: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_13_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Getriebe_13_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_StartStopp_Info : 12|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ GE_Langfr_Schutzmom_02 : 14|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Eingangsdrehz : 48|14@1+ (1,0) [0|16381] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Notlauf : 62|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freig_Langfr_Schutzmom : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 968 Getriebe_14: 8 Getriebe_DQ_Hybrid_MQB - SG_ GE_OBD_AbsperrVent : 12|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_amax_moeglich : 16|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Charisma_FahrPr : 25|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ GE_Charisma_Status : 29|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ GE_Verlustmoment : 32|8@1+ (1,0) [0|254] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freigabe_Verfallsinfo_WFS : 49|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_Codierung_MSG : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_LaunchControl : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_Heizwunsch : 52|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_OBD_Status : 54|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_LFR_Adaption : 55|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Sumpftemperatur : 56|8@1+ (1,-58) [-58|196] "Unit_DegreCelsi" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 158 Getriebe_Hybrid_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB - SG_ Getriebe_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB - SG_ GE_HYB_Fehlerstatus : 12|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freigabe_K0 : 16|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freigabe_LL_Reg : 17|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freig_sSchl_K0 : 18|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freig_VM_EM_Stop : 19|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Wiederstart : 20|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Filt_MomAufbau : 21|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB - SG_ GE_HYB_nK0 : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Vector__XXX - SG_ GE_HYB_MomEingriff_EM : 32|6@1+ (0.5,0) [0|31.5] "Unit_NewtoMeter" LEH_MQB - SG_ GE_HYB_VZ_MomEingriff_EM : 38|1@1+ (1,0) [0|1] "" LEH_MQB - SG_ GE_HYB_Sportfaktor : 56|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB - SG_ GE_HYB_VM_akt_halten : 61|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_StartAnf : 62|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_VM_Startkontr : 63|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - -BO_ 299 GRA_ACC_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Typ468 : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Stufe_2 : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_ButtonTypeInfo : 28|2@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 960 Klemmen_Status_01: 4 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZAS_Kl_50 : 19|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 949 Klima_11: 8 Gateway_MQB - SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zonen : 4|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Comp_rev_rq : 8|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX - SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Comp_enable : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB - -BO_ 1625 Klimakomp_01: 8 Gateway_MQB - SG_ EKL_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EKL_Comp_SCI_com_stat : 16|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_output_stat : 18|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_main_stat : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EKL_Comp_ovld_stat : 21|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EKL_Comp_Inv_stat : 24|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_photo_temp_stat : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_photo_temp : 32|8@1+ (1,0) [0|254] "Unit_DegreCelsi" Vector__XXX - SG_ EKL_Comp_current : 40|8@1+ (0.1,0) [0|25.4] "Unit_Amper" Motor_Hybrid_MQB - SG_ EKL_Comp_rev_stat : 48|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX - -BO_ 2549088277 KN_Airbag_01: 8 Airbag_MQB - SG_ Airbag_01_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Airbag_01_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088380 KN_EMotor_01: 8 LEH_MQB - SG_ EMotor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EMotor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ EM_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088375 KN_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Getriebe_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ GE_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088379 KN_Hybrid_01: 8 BMS_MQB - SG_ Hybrid_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Hybrid_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ BMS_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088374 KN_MO_01: 8 Motor_Diesel_MQB - SG_ Motor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Motor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088284 KN_SAK: 8 SAK_MQB - SG_ SAK_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SAK_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ SAK_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 779 Kombi_01: 8 Gateway_MQB - SG_ KBI_ABS_Lampe : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_ESP_Lampe : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_BKL_Lampe : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Airbag_Lampe : 3|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_SILA_gueltig : 4|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_Lenkung_Lampe : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Vorglueh_System_Lampe : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ KBI_NV_in_Anzeige : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Kombi_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Anzeigestatus_ACC : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigestatus_GRA : 13|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Oeldruck_Schalter : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Tankwarnung : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_MFA_v_Einheit_01 : 17|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_im_Stellgliedtest : 18|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_Anzeigefehler_LDW : 19|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Variante_USA : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Oeldruckwarnung : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Handbremse : 23|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ KBI_V_Digital : 24|9@1+ (1,0) [0|511] "" Vector__XXX - SG_ KBI_PLA_in_Anzeige : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigefehler_NV : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigestatus_LIM : 35|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_angez_Geschw : 48|10@1+ (0.32,0) [0|325.12] "Unit_KiloMeterPerHour" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Einheit_Tacho : 58|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Konsistenz_ACC : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Fehler_Anzeige_ACC : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigefehler_SWA : 61|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1719 Kombi_02: 8 Gateway_MQB - SG_ KBI_Kilometerstand : 0|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Vector__XXX - SG_ KBI_Standzeit_02 : 20|17@1+ (1,0) [0|131068] "Unit_Secon" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Inhalt_Tank : 40|7@1+ (1,0) [0|125] "Unit_Liter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_FStatus_Tank : 47|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_QBit_Aussen_Temp_gef : 55|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Aussen_Temp_gef : 56|8@1+ (0.5,-50) [-50|75] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 982 Licht_hinten_01: 8 Gateway_MQB - SG_ Licht_hinten_01_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 134 LWI_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_Lenkradwinkel : 16|13@1+ (0.1,0) [0|800] "Unit_DegreOfArc" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" Vector__XXX - SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 263 Motor_04: 8 Motor_Diesel_MQB - SG_ MO_Istgang : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Sollgang : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Oeldruck : 16|8@1+ (0.04,0) [0|10] "Unit_Bar" Gateway_MQB - SG_ MO_Anzeigedrehz : 24|12@1+ (3,0) [0|12282] "Unit_MinutInver" Gateway_MQB - SG_ MO_Schaltempf_verfbar : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Ladedruck : 39|9@1+ (0.01,0) [0|5.1] "Unit_Bar" Gateway_MQB - SG_ MO_KVS : 48|15@1+ (1,0) [0|32767] "Unit_MicroLiter" Gateway_MQB - SG_ MO_KVS_Ueberlauf : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1600 Motor_07: 8 Motor_Diesel_MQB - SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB - SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB - -BO_ 1607 Motor_09: 8 Motor_Diesel_MQB - SG_ MO_ITM_Kuehlmittel_Temp : 0|8@1+ (0.75,-48) [-45.75|143.25] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_E85_Sensor : 8|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ SCR_Anz_Motorstarts : 12|4@1+ (1,0) [0|8] "" Gateway_MQB - SG_ SCR_Reichweite : 16|15@1+ (1,0) [0|32766] "" Gateway_MQB - SG_ SCR_Warnstufe_1 : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Warnstufe_2 : 33|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Text : 34|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ SCR_Akustik : 37|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Kraftstofffilter_Wasser : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Systemfehler : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Inducement_Strategie : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_CO2_Faktor : 44|12@1+ (1,0) [1|4094] "Unit_GramPerLiter" Gateway_MQB - -BO_ 167 Motor_11: 8 Motor_Diesel_MQB - SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB - SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 168 Motor_12: 8 Motor_Diesel_MQB - SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - -BO_ 958 Motor_14: 8 Motor_Diesel_MQB - SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" Gateway_MQB,LEH_MQB - SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB - SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Timeout_ESP : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Zylabschalt_01 : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1631 Motor_16: 8 Motor_Diesel_MQB - SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Gateway_MQB - SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Gateway_MQB - SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Steigung : 56|8@1+ (0.8,-101.6) [-101.6|101.6] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 812 Motor_17: 8 Motor_Diesel_MQB - SG_ MO_Prio_MAX_Wunschdrehzahl : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Prio_MIN_Wunschdrehzahl : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Luftpfad_aktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_v_Begrenz_Aktivierbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Drehzahlbeeinflussung : 16|8@1+ (0.39,0) [0|99.45] "Unit_PerCent" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_MIN_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_MAX_Wunschdrehzahl : 32|9@1+ (25,0) [0|12750] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Charisma_FahrPr : 41|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Charisma_Status : 45|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 1648 Motor_18: 8 Motor_Diesel_MQB - SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Eis_Offroad_LED : 45|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_E85_BS_Texte : 52|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 289 Motor_20: 8 Motor_Diesel_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|255] "" XXX - SG_ MO_Fahrpedalrohwert_01 : 12|8@1+ (0.4,0) [0.0|101.6] "Unit_PerCent" XXX - SG_ MO_QBit_Fahrpedalwerte_01 : 20|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Fahrpedalgradient : 21|8@1+ (25,0) [0|6350] "Unit_PerCentPerSecon" XXX - SG_ MO_Sig_Fahrpedalgradient : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_rel_Saugrohrdruck : 30|6@1+ (18,0) [0|1116] "Unit_MilliBar" XXX - SG_ MO_rel_Saugrohrdruck_gem_err : 36|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Moment_im_Leerlauf : 37|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Schubabschaltung : 38|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_StartStopp_StoppVorbereitung : 39|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" XXX - SG_ MO_Entkopplung_Sollschlupf : 48|7@1+ (20,0) [0|2480] "Unit_MinutInver" XXX - SG_ MO_temporaere_Fahrerabwesenheit : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ TSK_a_Soll_gradientenbegrenzt : 57|7@1+ (0.1,-7.2) [-7.2|5.4] "Unit_MeterPerSeconSquar" XXX - -BO_ 967 Motor_26: 8 Motor_Diesel_MQB - SG_ MO_HYB_Status_HV_Ladung : 8|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_1 : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_2 : 29|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_3 : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_4 : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_HYB_Text_5 : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_6 : 37|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_7 : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Gateway_MQB - SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Winterfahrprog : 52|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB - SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB - SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB - SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB - SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 157 Motor_Hybrid_01: 8 Motor_Hybrid_MQB - SG_ Motor_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB - SG_ Motor_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_IstStatusK0 : 12|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_max_ind_VM_Mom : 16|10@1+ (1,0) [0|1021] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Zielzustand : 26|3@1+ (1,0) [0|7] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Startmodus : 29|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_HYB_Startmodus_PQ3x : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Stoppmodus : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_VM_Mom_oE : 40|10@1+ (1,-100) [-100|922] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_VM_aktiv : 50|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Schaltverhinderung : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - -BO_ 811 Motor_Hybrid_02: 8 Motor_Hybrid_MQB - SG_ MO_HYB_E_Faktor : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Drehzahl_VM : 16|16@1+ (0.25,0) [0|16256] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_LowSpeedModus : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - -BO_ 2600468501 NMH_Airbag_01: 8 Airbag_MQB - SG_ NM_Airbag_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Airbag_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Airbag_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Airbag_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468604 NMH_EMotor_01: 8 LEH_MQB - SG_ NM_EMotor_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_EMotor_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_EMotor_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_EMotor_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468496 NMH_Gateway: 8 Gateway_MQB - SG_ NM_Gateway_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Gateway_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Gateway_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ACAN_Aktivitaet : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_FCAN_Aktivitaet : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_KCAN_Aktivitaet : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ICAN_Aktivitaet : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_DiagCAN_Aktivitaet : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ECAN_Aktivitaet : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Energie_LIN_Aktivi000 : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Bedien_LIN_Aktivitaet : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_EM_Aktivitaet : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_EM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Shutdown : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Spg_Messung : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Wakeup_Monitor : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468599 NMH_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ NM_Getriebe_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Getriebe_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Getriebe_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Getriebe_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_v_gr_0 : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Pos_Erk : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Umg_Bed : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468603 NMH_Hybrid_01: 8 BMS_MQB - SG_ NM_Hybrid_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Hybrid_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Hybrid_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Hybrid_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NL_Luefter : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468598 NMH_MO_01: 8 Motor_Diesel_MQB - SG_ NM_MO_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_MO_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_MO_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_MO_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_HV_Abschaltung : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_EKP_Vorlauf : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_STH_Betrieb : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Kuehlerluefter : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Diagnose : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_WFS : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_EEPROM : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Sonstige : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 913 OBD_01: 8 Motor_Diesel_MQB - SG_ OBD_Calc_Load_Val : 0|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Eng_Cool_Temp : 8|8@1+ (1,-40) [-40|215] "Unit_DegreCelsi" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Throttle_Pos : 16|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Load_Val : 24|16@1+ (0.39215686275,0) [0|25700] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Pedal_Pos : 40|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Kaltstart_Denominator : 59|1@1+ (1,0) [0|1] "" BMS_MQB,LEH_MQB - SG_ OBD_Minimum_Trip : 60|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Driving_Cycle : 61|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Warm_Up_Cycle : 62|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Normed_Trip : 63|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - -BO_ 1630 OBD_Tankgeber_01: 8 Gateway_MQB - SG_ OBD_TG_F_Status_1 : 0|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_2 : 4|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_3 : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_4 : 12|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_1 : 16|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_2 : 28|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_3 : 40|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_4 : 52|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1437 Remotestart_FFB: 8 Gateway_MQB - SG_ RSF_Tastencode_1 : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ RSF_Tastencode_2 : 8|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ RSF_Tastencode_Maske : 16|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - -BO_ 984 RGS_VL_01: 8 Airbag_MQB - SG_ RGS_VL_Texte : 12|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ RGS_VL_Charisma_FahrPr : 14|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ RGS_VL_Charisma_Status : 18|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ RGS_VL_aktiv : 21|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Sitz : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Schiebedach : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Fenster : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Warnblinken : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_Precrash_Basis : 32|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ RGS_VL_Precrash_Front : 40|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ RGS_VL_Precrash_Rear : 48|8@1+ (1,0) [0|255] "" Gateway_MQB - -BO_ 1528 SAK_01: 8 SAK_MQB - SG_ SAK_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ SAK_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 1313 STH_01: 8 Gateway_MQB - SG_ STH_Funk_ein : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Funk_aus : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Zusatzheizung : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_LED : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Pumpe_ein : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Geblaese : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_EKP_Anst : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Start_folgt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Ventiloeffnungszeit : 8|6@1+ (1,0) [0|63] "Unit_Minut" Vector__XXX - SG_ STH_Ventil_Status : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Waermeeintrag : 16|6@1+ (1,0) [0|63] "" Vector__XXX - SG_ STH_KVS : 24|13@1+ (1,0) [0|8191] "Unit_MilliLiter" Vector__XXX - SG_ STH_Fehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ STH_Heizleistung : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ STH_Wassertemp : 48|8@1+ (0.75,-40) [-40|142.25] "Unit_DegreCelsi" Vector__XXX - SG_ STH_Motorvorwaermung : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Servicemode : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_war_aktiv : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_KVS_Ueberlauf : 62|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1172 STS_01: 8 Gateway_MQB - SG_ STS_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STS_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STS_Car_not_under_theft : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Car_under_theft : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Anlassersperre : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Typencodierung : 16|5@1+ (1,0) [0|31] "" Vector__XXX - SG_ STS_LIN_aktiv : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Standlicht : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Fahrlicht : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Alarm_still : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Texte : 27|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ STS_Laderelais : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Summer : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Alarm_Blinker : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Notstart : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Signalhorn : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Leerlaufschaltung : 56|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1413 Systeminfo_01: 8 Gateway_MQB - SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" Vector__XXX - SG_ SI_Rollenmode : 6|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" SAK_MQB - SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" SAK_MQB - SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 288 TSK_06: 8 Motor_Diesel_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Radbremsmom : 12|12@1+ (8,0) [0|32760] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Status : 24|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_v_Begrenzung_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Standby_Anf_ESP : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Freig_WU : 29|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Freig_Verzoeg_Anf : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Limiter_ausgewaehlt : 31|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Wunsch_Uebersetz : 32|10@1+ (0.0245,0) [0.0245|25.0635] "" Gateway_MQB - SG_ TSK_Hauptschalter_GRA_ACC : 42|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB - SG_ TSK_SRBM_Anf_ASIL : 44|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB - SG_ TSK_ax_Getriebe_02 : 48|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Zwangszusch_ESP : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_zul_Regelabw : 58|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 798 TSK_07: 8 Motor_Diesel_MQB - SG_ TSK_07_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_AQ - SG_ TSK_07_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_AQ - SG_ TSK_Wunschgeschw : 12|10@1+ (0.32,0) [0.00|326.72] "Unit_KiloMeterPerHour" Gateway_MQB,Getriebe_AQ - SG_ TSK_Texte : 40|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB - SG_ TSK_Akustik : 45|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB - SG_ TSK_Texte_Primaeranz : 48|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB - SG_ TSK_Limiter_Fahrerinfo : 53|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB - SG_ TSK_Limiter_Anzeige : 55|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Fahrzeugstatus_GRA : 56|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Fahrzeugstatus_Limiter : 57|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ MO_Motorlaufwarnung : 58|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB - SG_ TSK_Status_Anzeige : 61|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB - -BO_ 346 TSK_08: 8 Motor_Diesel_MQB - SG_ TSK_08_CRC : 0|8@1+ (1,0) [0|255] "" Frontradar - SG_ TSK_08_BZ : 8|4@1+ (1,0) [0|15] "" Frontradar - SG_ MO_Anforderung_HMS : 12|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_Status_EA : 32|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_vMax_Fahrerassistenz : 40|9@1+ (1,0) [0|510] "" Frontradar - SG_ TSK_Einheit_vMax_Fahrerassistenz : 49|1@1+ (1,0) [0|1] "" Frontradar - SG_ TSK_Status_PLA : 50|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_aktives_System : 53|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_erhoehter_Fahrwiderstand : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_Anf_Antriebsmoment : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ TSK_Status_ARA : 58|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ TSK_Status_IPA : 61|3@1+ (1,0) [0|7] "" Vector__XXX - -BO_ 1716 VIN_01: 8 Gateway_MQB - SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB - SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - -BO_ 175 Waehlhebel_03: 4 Waehlhebel_MQB - SG_ WH_Status_Sperre : 0|3@1+ (1,0) [0|7] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Initialisierung : 3|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_SensorPos_roh : 4|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_03_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_SensorPos_roh_inv : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Testergebnis : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Test_Aktiv : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Status : 25|7@1+ (1,0) [0|127] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 916 WBA_03: 8 Getriebe_DQ_Hybrid_MQB - SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Gateway_MQB - -BO_ 1602 WIV_01: 8 Motor_Diesel_MQB - SG_ WIV_Verschleissindex : 0|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB - SG_ WIV_Russindex : 16|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB - SG_ WIV_t_min : 32|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB - SG_ WIV_t_max : 40|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB - SG_ WIV_W_min : 48|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB - SG_ WIV_W_max : 56|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB - -BO_ 294 HCA_01: 8 Frontsensorik - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [15|30] "Unit_Hertz" Vector__XXX - SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX - SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar - SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ HCA_01_Sendestatus : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Status_HCA : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX - SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar - -BO_ 159 LH_EPS_03: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX - SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX - SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 286 ESP_08: 8 Gateway_MQB - SG_ ESP_08_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_08_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ESP_ANB_CM_Rueckk_Umsetz : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Konsistenz_ACC_Botschaft : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Stillstandsphase_erschoepft : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_ZT_Rueckk_Umsetz : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Tuerkontakt_Fahrertuer : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Abrutschen_Stillstand : 18|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_Fahrer_tritt_ZBR_Schw : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_QBit_v_ref : 41|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ ESP_v_ref_Fahrtrichtung : 42|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ ESC_Bremsdruckgradient : 44|8@1+ (10,0) [0|2500] "Unit_BarPerSecon" XXX - SG_ ESP_v_ref : 52|12@1+ (0.125,0) [0.000|511.500] "Unit_KiloMeterPerHour" XXX - -BO_ 919 LDW_02: 8 XXX - SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX - SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX - SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX - SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 780 ACC_02: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Wunschgeschw_02 : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Status_Prim_Anz : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Abstandsindex : 24|10@1+ (1,0) [1|1021] "" XXX - SG_ ACC_Akustik_02 : 34|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Warnung_Verkehrszeichen_1 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Gesetzte_Zeitluecke : 37|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Optischer_Fahrerhinweis : 40|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz : 41|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anzeige_Zeitluecke : 42|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Tachokranz : 43|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Display_Prio : 44|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Relevantes_Objekt : 46|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Texte_Primaeranz : 48|7@1+ (1,0) [0|127] "" XXX - SG_ ACC_Wunschgeschw_erreicht : 55|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz_unten : 60|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" XXX - -BO_ 302 ACC_07: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Anhalteweg : 12|11@1+ (0.01,0) [0|20.45] "Unit_Meter" XXX - SG_ ACC_Anhalten : 23|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Boost_Anf : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilauf_Anf : 25|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilauf_Info : 26|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Anforderung_HMS : 28|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Anfahren : 31|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Folgebeschl : 32|8@1+ (0.03,-4.6) [-4.6|2.99] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_Sollbeschleunigung_02 : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - -BO_ 264 Fahrwerk_01: 8 XXX - SG_ Fahrwerk_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrwerk_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 695 RCTA_01: 8 XXX - SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 783 SWA_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Anzeigen : 12|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Blindheit_erkannt : 16|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_rel_Nichtverf : 17|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_rel_Fehler : 18|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Sta_aktiv : 19|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Sta_passiv : 20|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_FT_RueckLED : 21|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Status : 22|2@1+ (1,0) [0|3] "" XXX - SG_ SWA_Standziele_li : 24|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Kolonne_li : 25|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Warnung_FS : 28|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Warnung_BFS : 29|1@1+ (1,0) [0|1] "" XXX - SG_ ASW_Kombitexte : 30|3@1+ (1,0) [0|7] "" XXX - SG_ SWA_Kolonne_mi : 33|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Standziele_re : 40|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Kolonne_re : 41|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX - SG_ HRE_Anzeigetexte : 44|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Gischtzaehler : 48|7@1+ (1,0) [0|100] "Unit_PerCent" XXX - SG_ Heckradar_Kombitexte : 56|5@1+ (1,0) [0|31] "" XXX - SG_ RCTA_Kombitexte : 61|3@1+ (1,0) [0|7] "" XXX - -BO_ 804 ACC_04: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Texte_Sekundaeranz : 12|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Texte_Zusatzanz : 16|6@1+ (1,0) [0|63] "" XXX - SG_ ACC_Status_Zusatzanz : 22|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Texte : 27|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Texte_braking_guard : 32|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Warnhinweis : 35|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Zeitluecke_Abstandswarner : 36|6@1+ (0.1,0) [0|6] "Unit_Secon" XXX - SG_ ACC_Abstand_Abstandswarner : 42|9@1+ (1,0) [0|508] "" XXX - SG_ ACC_Tempolimit : 51|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Charisma_FahrPr : 56|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Charisma_Status : 60|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Texte_Abstandswarner : 62|2@1+ (1,0) [0|3] "" XXX - -BO_ 917 LWR_AFS_01: 8 XXX - -BO_ 991 Gateway_76: 8 XXX - -BO_ 997 TSG_FT_02: 8 XXX - SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 1175 Parkhilfe_01: 8 XXX - -BO_ 427 ESP_33: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_AHW_aktiv : 12|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_AHW_nicht_verfuegbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_ANB_CM_aktiv : 16|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_ANB_CM_nicht_verfuegbar : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Warnruck_aktiv : 19|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Warnruck_nicht_verfuegbar : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Prefill_aktiv : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Prefill_nicht_verfuegbar : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_HBA_aktiv : 26|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESC_HBA_nicht_verfuegbar : 27|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESC_TSK_SRBM_Anf : 28|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_TSK_SRBM_nicht_verfuegbar : 29|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Verz_Reg_aktiv : 30|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Verz_Reg_nicht_verfuegbar : 34|1@1+ (1,0) [0|1] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Verz_Reg_TB_nicht_verfuegbar : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Verz_Reg_ZB_nicht_verfuegbar : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Bremslicht_unplausibel : 37|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Konsistenz_ACC : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_AWV : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_ARA : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_IPA : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_FCW : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_NV : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_RCTA : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_TSK : 45|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Konsistenz_vFGS : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_STA : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Fahrer_Bremsdruck_bestimmend : 48|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Konsistenz_EA : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_BFF : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_MKB : 51|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESC_Verz_ASIL_Verfuegbarkeit : 52|3@1+ (1,0) [0|7] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESC_Pumpenanlauf_aktiv : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_AGW : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_KAS : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_PCF : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_FAS_VK : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Verz_Begrenzung : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESC_Konsistenz_AWA : 61|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 418 ESP_15: 8 XXX - SG_ ESP_15_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_15_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 1122 PSD_04: 8 XXX - SG_ PSD_Object_Index : 0|6@1+ (1,0) [0|63] "" XXX - -BO_ 1123 PSD_05: 8 XXX - SG_ PSD_Current_Route_Index : 0|6@1+ (1,0) [0|63] "" XXX - SG_ Route_Distance_Remaining : 8|5@1+ (1,0) [0|31] "" XXX - -BO_ 1124 PSD_06: 8 XXX - -BO_ 988 Gateway_73: 8 XXX - SG_ UNKNOWN_1 : 15|2@0+ (1,0) [0|3] "" XXX - SG_ GE_Fahrstufe : 40|4@1+ (1,0) [0|15] "" XXX - SG_ EPB_Status : 53|3@1+ (1,0) [0|7] "" XXX - SG_ UNKNOWN_2 : 58|3@0+ (1,0) [0|7] "" XXX - -BO_ 792 Kamera_Status: 8 XXX - -BO_ 981 Licht_Anf_01: 8 Vector__XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_Kurvenlicht_links_Anf : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Kurvenlicht_rechts_Anf : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Standlicht_Anf : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Abblendlicht_Anf : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Fernlicht_Anf : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Nebellicht_Anf : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Parklicht_li_Anf : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Parklicht_re_Anf : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Nebelschluss_Ahg_Anf : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Nebelschluss_Fzg_Anf : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Schlusslicht_Anf : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Rueckfahrlicht_Anf : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Signaturlicht_Anf : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Umfeldleuchten_Anf : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Tagfahrlicht_Anf : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Regenlicht_Anf : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Autobahnlicht_Anf : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Touristen_Licht_Anf : 29|1@1+ (1,0) [0|1] "" Frontradar - SG_ BCM1_CH_aktiv : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_LH_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Gleitende_Leuchtw_Anf : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_GLW_Fernlicht_Anf : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Adaptive_Lichtvert_Anf : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_CH_LH_aktiv : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Allwetterlicht_Anf : 41|1@1+ (1,0) [0|1] "" Frontradar - -BO_ 1440 RLS_01: 8 XXX - -BO_ 870 Blinkmodi_02: 8 XXX - SG_ Hazard_Switch : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Comfort_Signal_Left : 23|1@1+ (1,0) [0|1] "" XXX - SG_ Comfort_Signal_Right : 24|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Turn_Exterior_Bulb_1 : 25|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Turn_Exterior_Bulb_1 : 26|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Turn_Exterior_Bulb_2 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Turn_Exterior_Bulb_2 : 28|1@1+ (1,0) [0|1] "" XXX - SG_ Fast_Send_Rate_Active : 37|1@1+ (1,0) [0|1] "" XXX - -BO_ 1385 HVEM_04: 8 XXX - -BO_ 1605 FLA_01: 8 XXX - -BO_ 1624 Licht_vorne_01: 8 XXX - -BO_ 1646 Klima_03: 8 XXX - -BO_ 1720 Kombi_03: 8 XXX - SG_ KBI_Reifenumfang : 0|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - SG_ KBI_Variante_USA : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Variante : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_BCmE_aktiv : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Sparhinweis_quittiert : 17|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Tankfuellstand_Prozent : 18|7@1+ (1,0) [0|100] "Unit_PerCent" XXX - SG_ KBI_Nachtanken_erkannt : 25|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ KBI_Tankinhalt_hochaufl : 26|14@1+ (0.01,0) [0.00|163.81] "Unit_Liter" XXX - SG_ KBI_Max_Tankinhalt : 40|8@1+ (0.5,0) [0.0|126.5] "" XXX - SG_ KBI_Reifenumfang_Sekundaer : 48|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - -BO_ 391 Motor_EV_01: 8 Motor_MQB_BEV - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EV_Rekuperationsstufe : 12|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ HV_Bordnetz_aktiv : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Waehlpos : 16|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ MO_Fehler_NTKreis : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Fehler_Notabschaltung_Klima : 20|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ MO_KLE_FStatus : 22|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ MO_WH_Texte : 24|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ MO_Drehzahl_VM : 32|16@1+ (0.25,0) [0.00|16383.00] "Unit_MinutInver" XXX - SG_ HV_Bordnetz_Fehler : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_Tankbereitschaft_Status : 49|3@1+ (1.0,0.0) [0.0|7] "" XXX - SG_ MO_Tankklappensteuerung : 52|2@1+ (1.0,0.0) [0.0|3] "" XXX - SG_ MO_HVEM_Eskalation : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX - SG_ MO_HVEM_MaxLeistung : 55|9@1+ (50,0) [0|25450] "Unit_Watt" XXX - -CM_ SG_ 134 LWI_Lenkradwinkel "Steering angle WITH variable ratio effect included"; -CM_ SG_ 159 EPS_HCA_Status "Status of Heading Control Assist feature"; -CM_ SG_ 159 EPS_Lenkmoment "Steering input by driver, torque"; -CM_ SG_ 159 EPS_VZ_Lenkmoment "Steering input by driver, direction"; -CM_ SG_ 159 EPS_Berechneter_LW "Raw steering angle, degrees"; -CM_ SG_ 159 EPS_VZ_BLW "Raw steering angle, direction"; -CM_ SG_ 173 COUNTER_DISABLED "Message not renamed to COUNTER because J533 rate-limiting makes it look like messages are being lost"; -CM_ SG_ 294 HCA_01_Vib_Freq "Frequenz der Lenkradvibration"; -CM_ SG_ 294 HCA_01_LM_Offset "Von HCA angefordertes Lenkmoment (Betrag)"; -CM_ SG_ 294 EA_ACC_Sollstatus "Status-Anforderung ACC von Emergency Alert. Statuswechsel bei Flanke. Solange Wert=1, wird EA_ACC_Wunschgeschwindigkeit übernommen. Wert=2 führt zu Zustand ¿ACC_GRA_passiv¿"; -CM_ SG_ 294 EA_Ruckprofil "Emergency Alert Anforderung an ESP, welcher Ruck verwendet werden soll. Eine Umsetzung der Ruckanforderung im ESP erfolgt nur mit gesetztem Bit 'EA_Ruckfreigabe'."; -CM_ SG_ 294 HCA_01_Sendestatus "Gibt den Sendestatus der HCA_01 an (notwendig für IL-Unterstützung)"; -CM_ SG_ 294 HCA_01_LM_OffSign "Vorzeichen des HCA-Lenkmoments"; -CM_ SG_ 294 HCA_01_Status_HCA "Statusinformation vom HCA und Manoevrierassistent für Handshakemechanismus mit der Lenkung"; -CM_ SG_ 294 HCA_01_Vib_Amp "Momentenamplitude der Lenkradvibration"; -CM_ SG_ 294 EA_Ruckfreigabe "Emergency Alert Freigabit für die Warnruck-Anforderung an das ESP"; -CM_ SG_ 294 EA_ACC_Wunschgeschwindigkeit "Emergency Alert Anforderung neue Wunschgeschwindigkeit"; -CM_ SG_ 302 ACC_Hold_Request "Active request for ABS brake hold in ACC_Hold_Type"; -CM_ SG_ 302 ACC_Boost_Request "Hybrid engine start related"; -CM_ SG_ 302 ACC_Freewheel_Request "Active request for DSG sailing/coasting in ACC_Freewheel_Type"; -CM_ SG_ 302 ACC_Hold_Release "Request to ABS to release brake hold"; -CM_ SG_ 302 ACC_Accel_Secondary "Target acceleration of the secondary controller"; -CM_ SG_ 302 ACC_Accel_TSK "Mirror of request to TSK to implement a target acceleration"; -CM_ SG_ 870 Hazard_Switch "Four-way flashers active"; -CM_ SG_ 870 Comfort_Signal_Left "Comfort turn signal active, left"; -CM_ SG_ 870 Comfort_Signal_Right "Comfort turn signal active, right"; -CM_ SG_ 870 Left_Turn_Exterior_Bulb_1 "Probably front"; -CM_ SG_ 870 Right_Turn_Exterior_Bulb_1 "Probably front"; -CM_ SG_ 870 Left_Turn_Exterior_Bulb_2 "Probably rear"; -CM_ SG_ 870 Right_Turn_Exterior_Bulb_2 "Probably rear"; -CM_ SG_ 870 Fast_Send_Rate_Active "CAN message send rate"; -CM_ SG_ 919 LDW_DLC "Probable DLC (distance to line crossing)"; -CM_ SG_ 919 LDW_TLC "Probable TLC (time to line crossing)"; -CM_ SG_ 919 LDW_Unknown "Might be a steering pressed / driver active flag"; -CM_ SG_ 919 Alert_Message "Static table of alert messages to be invoked in the instrument cluster, some with or without beeps, 0 = no current message"; -CM_ SG_ 919 LDW_Direction "Left/right indicator for DLC and TLC"; -CM_ SG_ 919 Right_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; -CM_ SG_ 919 Left_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; -CM_ SG_ 919 Kombi_Lamp_Orange "Enables orange LDW light in instrument cluster"; -CM_ SG_ 919 Kombi_Lamp_Green "Enables green LDW light in instrument cluster"; -CM_ SG_ 780 Folgefahrt "Following another vehicle"; -CM_ SG_ 780 SetAbstand "Set following distance"; -CM_ SG_ 780 Abstand "Following distance"; -CM_ SG_ 780 SetSpeed "ACC set speed"; -CM_ SG_ 391 MO_Waehlpos "Traditional PRND plus B-mode aggressive regen, B-mode mapped to Drive"; -CM_ SG_ 679 ACC_ADAPTIVE "TSK_06.TSK_Limiter_ausgewaehlt seems to take precedence"; -CM_ SG_ 960 ZAS_Kl_15 "Indicates ignition on"; -CM_ SG_ 1720 KBI_BCmE_aktiv "Anzeige BCmE aktiv (BCmE-Screen oder Einsparhinweis in der Anzeige)"; -CM_ SG_ 1720 KBI_Max_Tankinhalt "Mitteilung des maximalen Tankinhalts an das Reichweitenmodul"; -CM_ SG_ 1720 KBI_Nachtanken_erkannt "Statusinformation Nachtankmodus"; -CM_ SG_ 1720 KBI_Reifenumfang "Mittlerer Radumfang aus der K-Zahl gerechnet in Millimeter. Byte 2 Bit 5,4 reserviert, Byte 2 Bit 3..0 und Byte 1 Bit 7..0; Wertebereich 0..4096 mm -"; -CM_ SG_ 1720 KBI_Reifenumfang_Sekundaer "Fahrzeuge mit unterschiedlichen Reifenumfängen Vorderachse / Hinterachse: - -Primärachse: KBI_Reifenumfang -Sekundärachse: KBI_Reifenumfang_Sekundaer -"; -CM_ SG_ 1720 KBI_Sparhinweis_quittiert "angezeigter Sparhinweis ist quittiert. Signal wird nach zwei Sendebotschaften wieder auf '0' gesetzt."; -CM_ SG_ 1720 KBI_Tankfuellstand_Prozent "Tankfüllstand in %"; -CM_ SG_ 1720 KBI_Tankinhalt_hochaufl "angezeigter Tankinhalt hochauflösend zur Restreichweitenberechnung"; -CM_ SG_ 1720 KBI_Variante "Zeigt an ob es sich um ein konventionelles Zeiger-Kombiinstrument handelt oder um eine Volldisplay-Kombiinstrument"; -CM_ SG_ 1720 KBI_Variante_USA "In diesem Signal wird die HW-Variante des Kombis ausgegeben, ACC plausibilisiert auf dieses Signal hin seine US-Codierung"; - - -VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active" 8 "preempted" ; -VAL_ 173 GE_Fahrstufe 5 "P" 6 "R" 7 "N" 8 "D" 9 "S" 10 "E" 13 "T" 14 "T" ; -VAL_ 288 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault" ; -VAL_ 288 TSK_v_Begrenzung_aktiv 0 "inaktiv" 1 "aktiv" ; -VAL_ 288 TSK_Standby_Anf_ESP 0 "keine_Standby_Anforderung" 1 "Standby_Anforderung" ; -VAL_ 288 TSK_Freig_WU 0 "TSK_Uebersetzungswunsch_nicht_freigegeben" 1 "TSK_Uebersetzungswunsch_freigegeben" ; -VAL_ 288 TSK_Freig_Verzoeg_Anf 0 "Verzoegerungsanforderung_nicht_freigegeben" 1 "Verzoegerungsanforderung_freigegeben" ; -VAL_ 288 TSK_Limiter_ausgewaehlt 0 "kein_Limiter_ausgewaehlt" 1 "Limiter_ausgewaehlt" ; -VAL_ 288 TSK_Wunsch_Uebersetz 0 "Init" ; -VAL_ 288 TSK_Hauptschalter_GRA_ACC 0 "Init" 1 "Aus" 2 "Ein" 3 "Fehler" ; -VAL_ 288 TSK_ax_Getriebe_02 511 "Neutralwert" ; -VAL_ 288 TSK_Zwangszusch_ESP 0 "keine_ESP_ASR_Beeinflussung" 1 "ESP_ASR_Beeinflussung" ; -VAL_ 294 EA_ACC_Sollstatus 0 "Init" 1 "ACC_aktivieren" 2 "ACC_deaktivieren" ; -VAL_ 294 EA_Ruckprofil 0 "Init" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7" ; -VAL_ 294 HCA_01_Sendestatus 0 "HCA_sendet_mit_1000ms" 1 "HCA_sendet_mit_20ms" ; -VAL_ 294 HCA_01_LM_OffSign 0 "positives_Vorzeichen" 1 "negatives_Vorzeichen" ; -VAL_ 294 HCA_01_Status_HCA 0 "deaktiviert" 1 "reserviert" 2 "reserviert" 3 "funktionsbereit" 4 "reserviert" 5 "HCA_Momenteneingriff_1" 6 "MA_Aktiv" 7 "HCA_Momenteneingriff_2" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "reserviert" 15 "reserviert" ; -VAL_ 294 EA_Ruckfreigabe 0 "keine_Freigabe" 1 "Freigabe" ; -VAL_ 294 EA_ACC_Wunschgeschwindigkeit 1023 "Init" ; -VAL_ 346 MO_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; -VAL_ 346 TSK_Status_EA 0 "Aus" 1 "Init_oder_nicht_verbaut" 3 "Aktiv" 4 "Uebertreten" 5 "Abschaltung_laeuft" 6 "Reversibel_aus" 7 "Irreversibel_Aus" ; -VAL_ 346 TSK_vMax_Fahrerassistenz 511 "Init_ungueltig_keine_Beschraenkung" ; -VAL_ 346 TSK_Einheit_vMax_Fahrerassistenz 0 "kmh" 1 "mph" ; -VAL_ 346 TSK_Status_PLA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; -VAL_ 346 TSK_aktives_System 0 "keine_Funktion_aktiv" 1 "GRA_ACC" 2 "ARA" 3 "Speedlimiter" 4 "IPA" 5 "PLA" 6 "PEA_Ausrollassistent" 7 "EA" ; -VAL_ 346 TSK_erhoehter_Fahrwiderstand 0 "kein_erhoehter_Fahrwiderstand" 1 "erhoehter_Fahrwiderstand" ; -VAL_ 346 TSK_Anf_Antriebsmoment 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; -VAL_ 346 TSK_Status_ARA 0 "Aus" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; -VAL_ 346 TSK_Status_IPA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laueft" 6 "reversibel_aus" 7 "Fehler" ; -VAL_ 798 TSK_Wunschgeschw 1022 "keine_Anzeige" 1023 "kein_Wert_im_Speicher" ; -VAL_ 798 TSK_Texte 0 "kein_Text" 1 "GRA_Modus_ausgewaehlt" 2 "ACC_Modus_ausgewaehlt" 3 "Lim_Modus_ausgewaehlt" 4 "Lim_nicht_verfuegbar_ESC_passiv" 5 "GRA_nicht_verfuegbar_ESC_passiv" 6 "Lim_nicht_verfuegbar_Charisma" 7 "GRA_nicht_verfuegbar_Charisma" 8 "Lim_nicht_verfuegbar_HDC" 9 "GRA_nicht_verfuegbar_HDC" ; -VAL_ 798 TSK_Akustik 0 "keine_Akustik" 1 "einzelner_Warnton" 2 "dauerhafter_Warnton" ; -VAL_ 798 TSK_Texte_Primaeranz 0 "keine_Anzeige" 1 "GRA_Symbol_passiv_xxx_kmh_mph" 2 "GRA_Symbol_aktiv_xxx_kmh_mph" 3 "Bremse_ueberhitzt" 4 "Limiter_Modus_aktiviert" 5 "GRA_Modus_aktiviert" 6 "ACC_Modus_aktiviert" 7 "Opt_Geschwindigkeitswarnung" 8 "Opt_und_akustische_GeschwWarnung" 9 "Opt_GeschwWarnung_dauerhaft_mit_einmal_Akustik" 10 "Limiter_passiv_mit_Akustik" 11 "Limiter_Fehler_mit_Akustik" 12 "Limiter_Symbol_passiv_xxx_kmh_mph" 13 "Limiter_Symbol_aktiv_xxx_kmh_mph" 14 "Popup_Geschw_zu_hoch__Resume_unzulaessig" ; -VAL_ 798 TSK_Limiter_Fahrerinfo 0 "keine_Info" 1 "Limit_erreicht" 2 "Ueberschritten" 3 "Vom_Fahrer_Ueberstimmt" ; -VAL_ 798 TSK_Limiter_Anzeige 0 "Display_Anzeige_GRA_ACC" 1 "Display_Anzeige_Limiter" ; -VAL_ 798 TSK_Fahrzeugstatus_GRA 0 "GRA_verfuegbar" 1 "GRA_nicht_verfuegbar" ; -VAL_ 798 TSK_Fahrzeugstatus_Limiter 0 "Limiter_verfuegbar" 1 "Limiter_nicht_verfuegbar" ; -VAL_ 798 MO_Motorlaufwarnung 0 "keine_Anzeige" 1 "Anforderung_Motorlaufwarnung" ; -VAL_ 798 TSK_Status_Anzeige 0 "Hauptschalter_aus" 1 "Init" 2 "passiv" 3 "aktiv" 4 "Uebertreten" 5 "Limitiierung_aktiv" 6 "reversibel_aus" 7 "irreversibel_aus" ; -VAL_ 780 ACC_Wunschgeschw_02 1023 "keine_Anzeige" ; -VAL_ 780 ACC_Status_Prim_Anz 0 "Symbol nicht beleuchtet" 1 "Farbe 1 (typisch 'gruen')" 2 "Farbe 2 (typisch 'rot')" 3 "Farbe 3 (typisch 'gelb')" ; -VAL_ 780 ACC_Abstandsindex 0 "Sonderanzeige_graue_Fahrbahn" 1022 "Sonderanzeige_graue_Fahrbahn" 1023 "Sonderanzeige_Fahrbahn_mit_gruenem_roten_Bereich" ; -VAL_ 780 ACC_Akustik_02 0 "keine_Akustik" 1 "hochpriore_Akustik" 2 "niederpriore_Akustik" 3 "hochpriore_Dauerakustik" ; -VAL_ 780 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung" ; -VAL_ 780 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert" ; -VAL_ 780 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN" ; -VAL_ 780 ACC_Typ_Tachokranz 0 "Tachokranz_lang" 1 "Tachokranz_kurz" ; -VAL_ 780 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert" ; -VAL_ 780 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; -VAL_ 780 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio" ; -VAL_ 780 ACC_Relevantes_Objekt 0 "Symbol_nicht_beleuchtet" 1 "Farbe_1_typisch_gruen" 2 "Farbe_2_typisch_rot" 3 "Farbe_3_typisch_gelb" ; -VAL_ 780 ACC_Texte_Primaeranz 0 "keine Anzeige" 1 "ACC nicht verfuegbar !" 2 "Auto_Auto_ _ _" 3 "Auto_ _Auto_ _" 4 "Auto_ _ _Auto_" 5 "Auto_ _ _ _Auto" 6 "Auto_Auto_ _ _ Gong (durchgestrichen)" 7 "Auto_ _Auto_ _ Gong (durchgestrichen)" 8 "Auto_ _ _Auto_ Gong (durchgestrichen)" 9 "Auto_ _ _ _Auto Gong (durchgestrichen)" 10 "ACC bereit" 11 "keine Abstandsregelung" 12 "ACC Sensor Sicht !" 13 "ACC nicht verfuegbar" 14 "o o o" 15 "Hochschalten" 16 "ESP Eingriff" 17 "Herunterschalten" 18 "Parkbremse !" 19 "Geschwindigkeitsgrenze" 20 "Waehlhebelposition !" 21 "VDA ACC-Symbol YYY km/h / mph" 22 "Tempolimit XXX km/h / mph" 23 "Kurve XXX km/h / mph" 24 "ACC Abschaltung" 25 "Symbol 'Eieruhr'" 26 "!" 27 "--- km/h / mph" 28 "XXX km/h / mph (Schriftart 2)" 29 "Lenkradwinkel" 30 "Anfahren bestaetigen" 31 "Fahrzeug verloren" 32 "Im Stand nicht moeglich" 33 "Ungueltiger Anfahrbefehl" 34 "Tuer offen !" 35 "Fahrer Gurtschloss offen !" 36 "Schalthebelposition !" 37 "Drehzahl !" 38 "Kurvenassistent aus" 39 "Tempolimit aus" 40 "Abbiegeassistent" 41 "Ortsanfang XXX km/h / mph" 42 "Ortsende XXX km/h / mph" 43 "Tempolimit Ende XXX km/h / mph" 44 "HDC aktiv" 45 "braking guard Bremsruck" 46 "braking guard aus" 47 "braking guard aus" 48 "Uebernehmen !" 49 "Steigung zu gross" 50 "Stehendes Objekt voraus" 51 "SET / 'GRA Symbol'___xxx km/h / mph" 52 "SET / 'GRA Symbol' xxx km/h / mph" 53 "ACC aus" 54 "ACC startet" 55 "ACC reinigen" 56 "ACC Fehler" 57 "ACC haelt an !" 58 "Bremse betaetigen !" 59 "Kupplung betaetigt" 60 "LIM AUS" 61 "LIM AKTIV" 62 "LIM PASSIV" 63 "LIM FEHLER" 64 "Bremse ueberhitzt !" 65 "Bremse haelt !" 66 "ESP PASSIV !" 67 "ACC_anfahrbereit" 68 "Gang_einlegen" 69 "Rechtsueberholen_verhindert" 70 "Linksueberholen_verhindert" 71 "Achtung_Geschwindigkeitsueberschreitung" 72 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar" ; -VAL_ 780 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht" ; -VAL_ 780 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; -VAL_ 780 ACC_Status_Anzeige 0 "ACC_GRA_Hauptschalter_aus" 1 "ACC_in_Init_nicht_bei_GRA" 2 "ACC_GRA_passiv" 3 "ACC_GRA_aktiv" 4 "ACC_GRA_im_Hintergrund_uebertreten" 5 "ACC_GRA_Abschaltreaktion" 6 "ACC_reversibel_aus_nicht_bei_GRA" 7 "ACC_GRA_irreversibel_aus" ; -VAL_ 804 ACC_Texte_Sekundaeranz 0 "keine_Anzeige" 1 "Zielfahrzeug_erkannt" 2 "Rechtskurve_voraus" 3 "Linkskurve_voraus" 4 "Tempolimit_voraus" 5 "Sensorsicht" 6 "Anfahrbereit" 7 "Tempolimit_erkannt" 8 "Kreuzung_voraus" 9 "Kreisverkehr_voraus" ; -VAL_ 804 ACC_Texte_Zusatzanz 0 "keine_Anzeige" 1 "ACC_AUS" 2 "ACC_BEREIT" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_1__dyn" 10 "DISTANZ_2__dyn" 11 "DISTANZ_3__dyn" 12 "DISTANZ_4__dyn" 13 "DISTANZ_1__stand" 14 "DISTANZ_2__stand" 15 "DISTANZ_3__stand" 16 "DISTANZ_4__stand" 17 "DISTANZ_1__comf" 18 "DISTANZ_2__comf" 19 "DISTANZ_3__comf" 20 "DISTANZ_4__comf" 21 "DISTANZ_1__efficiency" 22 "DISTANZ_2__efficiency" 23 "DISTANZ_3__efficiency" 24 "DISTANZ_4__efficiency" 25 "DISTANZ_5" 26 "DISTANZ_5__dyn" 27 "DISTANZ_5__stand" 28 "DISTANZ_5__comf" 29 "DISTANZ_5__efficiency" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanz_Warnung_aktiviert" ; -VAL_ 804 ACC_Status_Zusatzanz 0 "keine Anzeige" 1 "Bild 1 (Fzg. Silhouette, typ. farblos)" 2 "Bild 2 (Fzg. Farbe 1, typ. grau)" 3 "Bild 3 (Fzg. Farbe 2, typ. rot)" 4 "Bild 4 (Symbol 1 ACCplus, typ. Doppelfzg. gelb)" 5 "Bild 5 (Symbol 2 ACCplus, typ. Doppelfzg. grau)" 6 "Bild 6 (Fzg. Farbe 2, typ. rot) mit Priorität im Kombi (Pop-up)" ; -VAL_ 804 ACC_Texte 0 "keine_Anzeige" 1 "ACC_nicht_verfuegbar" 2 "ACC_und_AWV_nicht_verfuegbar" 3 "ACC_keine_Sensorsicht" 4 "ACC_und_AWV_keine_Sensorsicht" 5 "ACC_Steigung_zu_gross" 6 "ACC_nur_in_Fahrstufe_verfuegbar" 7 "ACC_Parkbremse_betaetigt" 8 "ACC_ESP_Eingriff" 9 "ACC_Bitte_uebernehmen" 10 "ACC_HDC_betaetigt" 11 "ACC_Geschwindigkeitsgrenze" 12 "ACC_Schalthebelposition" 13 "ACC_Drehzahl" 14 "ACC_Kupplung_betaetigt" 15 "ACC_Aktivierverhinderung" 16 "ACC_Abschaltung" 17 "ACC_Parkassistent_aktiv" 18 "ACC_ESC_aus" 19 "ACC_Charisma_Modus_inkompatibel" 20 "ACC_Stehendes_Objekt_voraus" 21 "ACA_Fahreruebernahme" 22 "ACA_Querfuehrung_nicht_verfuegbar" ; -VAL_ 804 ACC_Texte_braking_guard 0 "keine_Anzeige" 1 "AWV_aus" 2 "AWV_Warnung" 3 "AWV_Demomodus" 4 "AWV_Systemstoerung" 5 "AWV_Eingriff" 6 "AWV_Vorwarnung_aus" 7 "AWV_keine_Sensorsicht" ; -VAL_ 804 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis" ; -VAL_ 804 ACC_Zeitluecke_Abstandswarner 61 "Freifahrt" 62 "nicht_definiert" 63 "keine_Anzeige" ; -VAL_ 804 ACC_Abstand_Abstandswarner 509 "Freifahrt" 510 "nicht_definiert" 511 "keine_Anzeige" ; -VAL_ 804 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw" ; -VAL_ 804 ACC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15" ; -VAL_ 804 ACC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch" ; -VAL_ 804 ACC_Texte_Abstandswarner 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "zurzeit_eingeschraenkt" ; -VAL_ 290 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert" ; -VAL_ 290 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert" ; -VAL_ 290 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler" ; -VAL_ 290 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; -VAL_ 290 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; -VAL_ 290 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; -VAL_ 290 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert" ; -VAL_ 290 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System" ; -VAL_ 290 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv" ; -VAL_ 302 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler" ; -VAL_ 302 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; -VAL_ 302 ACC_Freilauf_Anf 0 "keine Freilauf-Anforderung" 1 "Freilauf-Anforderung" ; -VAL_ 302 ACC_Freilauf_Info 0 "Freilauf_freigegeben" 1 "kein_Uebergang_in_Freilauf_zulaessig" 2 "Freilauf_nicht_freigegeben" 3 "Freilauf_Anforderung" ; -VAL_ 302 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; -VAL_ 302 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; -VAL_ 302 ACC_Folgebeschl 254 "Neutralwert" ; -VAL_ 302 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; -VAL_ 279 AWV1_Anf_Prefill 0 "Prefill_nicht_aktivieren" 1 "Prefill_aktivieren" ; -VAL_ 279 ANB_CM_Info 0 "Standard" 1 "Erweitert" ; -VAL_ 279 AWV2_Freigabe 0 "keine_Freigabe" 1 "Freigabe" ; -VAL_ 279 AWV1_HBA_Param 0 "Defaultparametersatz" 1 "Parametersatz_mit_leicht_erhoehter_Empfindlichkeit" 2 "Parametersatz_mit_erhoehter_Empfindlichkeit" 3 "Parametersatz_mit_hoechster_Empfindlichkeit" ; -VAL_ 279 AWV2_Priowarnung 0 "Anzeige_Verlassen_der_Fahrspur_wird_nicht_unterdrueckt" 1 "Anzeige_Verlassen_der_Fahrspur_wird_unterdrueckt" ; -VAL_ 279 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; -VAL_ 279 ANB_Info_Teilbremsung 0 "Auspraegung_Standard" 1 "Auspraegung_Erweitert" ; -VAL_ 279 ANB_Notfallblinken 0 "kein_ANB_Notfallblinken" 1 "Notfallblinken_ANB_angefordert" ; -VAL_ 279 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben" ; -VAL_ 279 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben" ; -VAL_ 279 AWV_Vorstufe 0 "keine_Notbremsung_erwartet" 1 "Notbremsung_in_Kuerze" ; -VAL_ 279 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten" ; -VAL_ 279 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich" ; -VAL_ 279 PCF_Freigabe 0 "keine_Freigabe_PreCrashFront" 1 "Freigabe_PreCrashFront" ; -VAL_ 279 AWV1_ECD_Anlauf 0 "ECD_Anlauf_nicht_aktivieren" 1 "ECD_Anlauf_aktivieren" ; -VAL_ 279 PCF_Time_to_collision 255 "Objektstatus=0x0__oder_berechneter_TTC_Wert_groesser_als_Maximalwert" ; -VAL_ 679 ACC_Regelgeschw 1023 "keine_Anzeige" ; -VAL_ 679 ACC_Einheit_maxSetzgeschw 0 "kmh" 1 "mph" ; -VAL_ 679 ACC_maxSetzgeschw 511 "Init_Neutralwert" ; -VAL_ 679 ACC_minRegelgeschw 255 "keine_Anzeige" ; -VAL_ 679 ACC_maxRegelgeschw 255 "keine_Anzeige" ; -VAL_ 679 ACC_Tempolimitassistent 0 "keine_Anzeige" 1 "Tempolimitassistent_aktiv" 2 "Tempolimitassistent_nicht_verfuegbar" 3 "Tempolimitassistent_Fahreruebernahme" ; -VAL_ 679 ACC_Kurvenassistent 0 "keine_Anzeige" 1 "Kreuzung" 2 "Rechtskurve" 3 "Linkskurve" 4 "Kreisverkehr" ; -VAL_ 679 ACC_RUV 0 "keine_Anzeige" 1 "RUV_aktiv_Rechtsverkehr" 2 "RUV_aktiv_Linksverkehr" ; -VAL_ 679 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; -VAL_ 679 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; -VAL_ 679 ACC_ENG_Texte 0 "keine_Anzeige" 1 "keine_Laenderverfuegbarkeit" 2 "nicht_verfuegbar" 3 "Geschwindigkeitsgrenze" ; -VAL_ 679 ACC_ADAPTIVE 1 "adaptive" 2 "non-adaptive" ; -VAL_ 681 AWV_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung" ; -VAL_ 681 AWV_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "nicht_definiert" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt" ; -VAL_ 681 AWV_Status_Anzeige 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" ; -VAL_ 681 AWV_Einstellung_System_FSG 0 "deaktiviert" 1 "aktiviert" ; -VAL_ 681 AWV_Einstellung_Warnung_FSG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein" ; -VAL_ 681 AWV_Warnlevel 0 "keine_Gefaehrdung" 63 "max_Gefaehrdung" ; -VAL_ 391 MO_Waehlpos 2 "P" 3 "R" 4 "N" 5 "D" 6 "D" ; -VAL_ 391 EV_Rekuperationsstufe 0 "default" 1 "B1" 2 "B2" 3 "B3" ; -VAL_ 870 Fast_Send_Rate_Active 0 "1 Hz" 1 "50 Hz" ; -VAL_ 988 EPB_Status 0 "offen" 1 "geschlossen_Parken" 2 "teilgespannt_Halten" 3 "im_Lauf_oeffnen" 4 "im_Lauf_schliessen" 5 "tbd" 6 "Init" 7 "unbekannt"; -VAL_ 988 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; -VAL_ 1720 KBI_Variante_USA 0 "keine USA-Variante" 1 "USA-Variante" ; -VAL_ 1720 KBI_Variante 0 "Zeiger Kombiinstrument" 1 "Volldisplay Kombiinstrument" ; -VAL_ 1720 KBI_BCmE_aktiv 0 "Anzeige_nicht_aktiv" 1 "Anzeige_aktiv" ; -VAL_ 1720 KBI_Sparhinweis_quittiert 0 "nicht_quittiert" 1 "quittiert" ; -VAL_ 1720 KBI_Tankfuellstand_Prozent 126 "Init" 127 "Fehler" ; -VAL_ 1720 KBI_Nachtanken_erkannt 0 "Geberbetrieb" 1 "Nachtankmodus" ; -VAL_ 1720 KBI_Tankinhalt_hochaufl 16382 "Init" 16383 "Fehler" ; -VAL_ 1720 KBI_Max_Tankinhalt 254 "Init" 255 "Fehler" ; diff --git a/opendbc_repo/opendbc/dbc/vw_mqbevo.dbc b/opendbc_repo/opendbc/dbc/vw_mqbevo.dbc deleted file mode 100644 index 91be4a2465..0000000000 --- a/opendbc_repo/opendbc/dbc/vw_mqbevo.dbc +++ /dev/null @@ -1,1612 +0,0 @@ -BO_ 64 Airbag_01: 8 Airbag_MQB - SG_ Airbag_01_CRC : 0|8@1+ (1,0) [0|255] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Airbag_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_PAO_Leuchte_Anf : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 65 Airbag_03: 8 Airbag_MQB - SG_ Airbag_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Airbag_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_MKB_Safing : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 134 LWI_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_Lenkradwinkel : 16|13@1+ (0.1,0) [0|800] "Unit_DegreOfArc" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" Vector__XXX - SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 157 Motor_Hybrid_01: 8 Motor_Hybrid_MQB - SG_ Motor_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB - SG_ Motor_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_IstStatusK0 : 12|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_max_ind_VM_Mom : 16|10@1+ (1,0) [0|1021] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Zielzustand : 26|3@1+ (1,0) [0|7] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Startmodus : 29|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ MO_HYB_Startmodus_PQ3x : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Stoppmodus : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_VM_Mom_oE : 40|10@1+ (1,-100) [-100|922] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_VM_aktiv : 50|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Schaltverhinderung : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - -BO_ 158 Getriebe_Hybrid_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB - SG_ Getriebe_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB - SG_ GE_HYB_Fehlerstatus : 12|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freigabe_K0 : 16|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freigabe_LL_Reg : 17|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freig_sSchl_K0 : 18|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Freig_VM_EM_Stop : 19|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Wiederstart : 20|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_Filt_MomAufbau : 21|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB - SG_ GE_HYB_nK0 : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Vector__XXX - SG_ GE_HYB_MomEingriff_EM : 32|6@1+ (0.5,0) [0|31.5] "Unit_NewtoMeter" LEH_MQB - SG_ GE_HYB_VZ_MomEingriff_EM : 38|1@1+ (1,0) [0|1] "" LEH_MQB - SG_ GE_HYB_Sportfaktor : 56|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB - SG_ GE_HYB_VM_akt_halten : 61|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_StartAnf : 62|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - SG_ GE_HYB_VM_Startkontr : 63|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB - -BO_ 159 LH_EPS_03: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX - SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX - SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX - SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX - SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 167 Motor_11: 8 Motor_Diesel_MQB - SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB - SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 168 Motor_12: 8 Motor_Diesel_MQB - SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB - SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - -BO_ 173 Getriebe_11: 8 Getriebe_DQ_Hybrid_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTERXX : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Fahrstufe : 42|5@1+ (1,0) [0|31] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Schaltvorgang : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Status_Kupplung : 54|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 174 Getriebe_12: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_12_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Getriebe_12_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Drehzahlmesser_Daempfung : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Schubabschalt_Unt : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freigabe_Synchro : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Synchro_Wunschdrehz : 15|9@1+ (25,0) [0|12750] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Synchro_Zeit : 24|8@1+ (20,0) [0|5080] "Unit_MilliSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Mom_Begr_Gradient : 32|8@1+ (10,0) [0|2540] "Unit_NewtoMeterPerSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Anheb_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Aufnahmemoment : 48|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Anf_Zylabsch : 58|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ GE_HYB_DZ_Eingriff : 62|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB - -BO_ 175 Waehlhebel_03: 4 Waehlhebel_MQB - SG_ WH_Status_Sperre : 0|3@1+ (1,0) [0|7] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Initialisierung : 3|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_SensorPos_roh : 4|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_03_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_SensorPos_roh_inv : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Testergebnis : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Test_Aktiv : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WH_Status : 25|7@1+ (1,0) [0|127] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 178 ESP_19: 8 Gateway_MQB - SG_ ESP_HL_Radgeschw_02 : 0|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Radgeschw_02 : 16|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Radgeschw_02 : 32|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Radgeschw_02 : 48|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 252 ESP_NEW_1: 48 XXX - SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ WHEEL_SPEED_RL : 64|16@1+ (0.0075,0) [0|65535] "" XXX - SG_ WHEEL_SPEED_RR : 80|16@1+ (0.0075,0) [0|65535] "" XXX - SG_ WHEEL_SPEED_FL : 96|16@1+ (0.0075,0) [0|65535] "" XXX - SG_ WHEEL_SPEED_FR : 112|16@1+ (0.0075,0) [0|65535] "" XXX - -BO_ 253 ESP_21: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0|655.32] "Unit_KiloMeterPerHour" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ ASR_Tastung_passiv : 48|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Tastung_passiv : 49|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Systemstatus : 50|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ASR_Schalteingriff : 51|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Haltebestaetigung : 53|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_v_Signal : 55|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ABS_Bremsung : 56|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ASR_Anf : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ MSR_Anf : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EBV_Eingriff : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EDS_Eingriff : 60|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Eingriff : 61|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_ASP : 62|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Anhaltevorgang_ACC_aktiv : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 257 ESP_02: 8 Gateway_MQB - SG_ ESP_02_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_02_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Gierrate : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_QBit_Laengsbeschl : 13|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Querb : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Stillstandsflag : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Querbeschleunigung : 16|8@1+ (0.01,-1.27) [-1.27|1.27] "Unit_ForceOfGravi" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Laengsbeschl : 24|10@1+ (0.03125,-16) [-16|15.90625] "Unit_MeterPerSeconSquar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verteil_Wankmom : 34|5@1+ (0.1,-1) [-1|1] "" Vector__XXX - SG_ ESP_QBit_Anf_Vert_Wank : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Gierrate : 40|14@1+ (0.01,0) [0|163.82] "Unit_DegreOfArcPerSecon" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_VZ_Gierrate : 54|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Notbremsanzeige : 55|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_SpannungsAnf : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_PLA_Abbruch : 57|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ ESP_Status_ESP_PLA : 60|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 258 ESP_NEW_2: 48 XXX - SG_ LATERAL_ACCEL : 16|8@1+ (1,0) [0|255] "" XXX - SG_ LONGITUDINAL_ACCEL : 24|8@1- (1,0) [0|255] "" XXX - SG_ YAW_RATE : 40|14@1+ (1,0) [0|16383] "" XXX - SG_ YAW_RATE_SIGN : 54|1@1+ (1,0) [0|1] "" XXX - -BO_ 260 EPB_01: 8 Gateway_MQB - SG_ EPB_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_01_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_QBit_Laengsbeschleunigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_QBit_Pedalweg_Kuppl : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_BCM2_Motor_Wakeup : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_Freig_Verzoeg_Anf : 15|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_Verzoeg_Anf : 16|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" Vector__XXX - SG_ EPB_Laengsbeschleunigung : 24|8@1+ (1,-128) [-128|126] "Unit_PerCentOfForceOfGravi" Vector__XXX - SG_ EPB_Pedalweg_Kuppl : 32|8@1+ (0.4,0) [8|92] "Unit_PerCent" Vector__XXX - SG_ EPB_Anfahrwunsch_erkannt : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_DAA_Randbed_erf : 49|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ EPB_Fehlerstatus : 50|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EPB_Schalterposition : 52|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_QBit_Schalterpos : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ EPB_Konsistenz_ACC : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EPB_Spannkraft : 56|5@1+ (1,0) [0|29] "Unit_KiloNewto" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ EPB_Status : 61|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 262 ESP_05: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Bremsdruck : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Fahrer_bremst : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Schwelle_Unterdruck : 14|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Bremsdruck : 16|10@1+ (0.3,-30) [-30|276.6] "Unit_Bar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Fahrer_bremst : 26|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verz_TSK_aktiv : 27|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Lenkeingriff_ADS : 28|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Konsistenz_TSK : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Bremsruck_AWV2 : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Konsistenz_AWV2 : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ECD_Fehler : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ECD_nicht_verfuegbar : 33|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Status_Bremsentemp : 34|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Autohold_Standby : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_HDC_Standby : 36|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_HBA_aktiv : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Prefill_ausgeloest : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Rueckwaertsfahrt_erkannt : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Status_Anfahrhilfe : 40|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HDC_aktiv : 41|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_StartStopp_Info : 42|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ESP_Eingr_HL : 44|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_HR : 45|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_VL : 46|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Eingr_VR : 47|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_BKV_Unterdruck : 48|8@1+ (4,0) [0|1012] "Unit_MilliBar" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Autohold_aktiv : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_FStatus_Anfahrhilfe : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Verz_EPB_aktiv : 58|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ECD_Bremslicht : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Verzoeg_EPB_verf : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Status_Bremsdruck : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Anforderung_EPB : 62|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 263 Motor_04: 8 Motor_Diesel_MQB - SG_ MO_Istgang : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Sollgang : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Oeldruck : 16|8@1+ (0.04,0) [0|10] "Unit_Bar" Gateway_MQB - SG_ MO_Anzeigedrehz : 24|12@1+ (3,0) [0|12282] "Unit_MinutInver" Gateway_MQB - SG_ MO_Schaltempf_verfbar : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Ladedruck : 39|9@1+ (0.01,0) [0|5.1] "Unit_Bar" Gateway_MQB - SG_ MO_KVS : 48|15@1+ (1,0) [0|32767] "Unit_MicroLiter" Gateway_MQB - SG_ MO_KVS_Ueberlauf : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 264 Fahrwerk_01: 8 XXX - SG_ Fahrwerk_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ Fahrwerk_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 267 MOTOR_NEW_1: 32 XXX - SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACCEL_PEDAL : 12|8@1+ (0.4,0) [0|255] "" XXX - SG_ TSK_STATUS : 88|3@1+ (1,0) [0|7] "" XXX - -BO_ 278 ESP_10: 8 Gateway_MQB - SG_ ESP_10_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_10_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 279 ACC_10: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ AWV1_Anf_Prefill : 16|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_CM_Info : 17|1@1+ (1,0) [0|1] "" XXX - SG_ AWV2_Freigabe : 18|1@1+ (1,0) [0|1] "" XXX - SG_ AWV1_HBA_Param : 19|2@1+ (1,0) [0|3] "" XXX - SG_ AWV2_Ruckprofil : 21|3@1+ (1,0) [0|7] "" XXX - SG_ AWV2_Priowarnung : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_CM_Anforderung : 25|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Info_Teilbremsung : 26|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Notfallblinken : 27|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Teilbremsung_Freigabe : 28|1@1+ (1,0) [0|1] "" XXX - SG_ ANB_Zielbrems_Teilbrems_Verz_Anf : 29|10@1+ (0.024,-20.016) [-20.016|4.536] "Unit_MeterPerSeconSquar" XXX - SG_ ANB_Zielbremsung_Freigabe : 39|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Vorstufe : 40|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Halten : 41|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_CityANB_Auspraegung : 42|1@1+ (1,0) [0|1] "" XXX - SG_ PCF_Freigabe : 43|1@1+ (1,0) [0|1] "" XXX - SG_ AWV1_ECD_Anlauf : 44|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_AWA_VZ_Anf_Lenkmomoffset : 46|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_AWA_Anf_Lenkmomoffset : 47|9@1+ (0.01,0) [0|5.11] "Unit_NewtoMeter" XXX - SG_ PCF_Time_to_collision : 56|8@1+ (0.01,0) [0|2.5] "Unit_Secon" XXX - -BO_ 286 VehicleSpeed: 8 XXX - SG_ VehicleSpeed_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ VehicleSpeed_BZ : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Speed : 52|12@1+ (0.125,0) [0|1] "" XXX - -BO_ 288 TSK_06: 8 Motor_Diesel_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Radbremsmom : 12|12@1+ (8,0) [0|32760] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Status : 24|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_v_Begrenzung_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Standby_Anf_ESP : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Freig_Verzoeg_Anf : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Limiter_ausgewaehlt : 31|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_ax_Getriebe_02 : 48|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Zwangszusch_ESP : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_zul_Regelabw : 58|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 289 Motor_20: 8 Motor_Diesel_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|255] "" XXX - SG_ MO_Fahrpedalrohwert_01 : 12|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Fahrpedalwerte_01 : 20|1@1+ (1,0) [0|1] "" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Fahrpedalgradient : 21|8@1+ (25,0) [0|6350] "Unit_PerCentPerSecon" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Sig_Fahrpedalgradient : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_rel_Saugrohrdruck : 30|6@1+ (18,0) [0|1116] "Unit_MilliBar" Gateway_MQB - SG_ MO_rel_Saugrohrdruck_gem_err : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Moment_im_Leerlauf : 37|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Schubabschaltung : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 290 ACC_06: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_DynErhoehung : 14|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX - SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 294 HCA_01: 8 Frontsensorik - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [15|30] "Unit_Hertz" Vector__XXX - SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX - SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar - SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ HCA_01_Sendestatus : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ HCA_01_Status_HCA : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX - SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar - -BO_ 296 Getriebe_06: 3 Getriebe_DQ_Hybrid_MQB - SG_ GE_WH_Sperre : 0|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Ausleuchtungsmode : 1|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Test_Freigabe : 2|1@1+ (1,0) [0|1] "" Waehlhebel_MQB - SG_ GE_Ist_Fahrstufe : 4|4@1+ (1,0) [0|15] "" Waehlhebel_MQB - SG_ GE_Testparameter_1 : 8|8@1+ (1,0) [0|255] "" Waehlhebel_MQB - SG_ GE_Testparameter_2 : 16|8@1+ (1,0) [0|255] "" Waehlhebel_MQB - -BO_ 299 GRA_ACC_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Typ468 : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_Tip_Stufe_2 : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GRA_ButtonTypeInfo : 28|2@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ MAYBE_TRAVEL_ASSIST : 30|1@1+ (1,0) [0|1] "" XXX - -BO_ 301 Getriebe_13: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_13_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Getriebe_13_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_StartStopp_Info : 12|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ GE_Langfr_Schutzmom_02 : 14|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Eingangsdrehz : 48|14@1+ (1,0) [0|16381] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Notlauf : 62|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freig_Langfr_Schutzmom : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 302 ACC_07: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Anhalteweg : 12|11@1+ (0.01,0) [0|20.45] "Unit_Meter" XXX - SG_ ACC_Anhalten : 23|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Boost_Anf : 24|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilauf_Anf : 25|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Freilauf_Info : 26|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Anforderung_HMS : 28|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Anfahren : 31|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Folgebeschl : 32|8@1+ (0.03,-4.6) [-4.6|2.99] "Unit_MeterPerSeconSquar" XXX - SG_ ACC_Sollbeschleunigung_02 : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - -BO_ 313 ESP_NEW_3: 32 XXX - SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BRAKE_PRESSED_1 : 16|1@1+ (1,0) [0|1] "" XXX - SG_ BRAKE_PRESSED_2 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ BRAKE_PRESSED_3 : 48|1@1+ (1,0) [0|1] "" XXX - SG_ BRAKE_PRESSURE : 76|10@1+ (1,0) [0|1023] "" XXX - -BO_ 317 MOTOR_NEW_2: 32 XXX - SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ NEW_SIGNAL_1 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ UNKNOWN : 76|10@1+ (1,0) [0|1023] "" XXX - -BO_ 333 ACC_NEW_1: 32 XXX - SG_ NEW_SIGNAL_1 : 24|12@1+ (1,0) [0|4095] "" XXX - SG_ NEW_SIGNAL_2 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_3 : 248|8@1+ (1,0) [0|255] "" XXX - -BO_ 387 CAMERA_NEW_3_HF: 64 XXX - SG_ NEW_SIGNAL_1 : 28|12@1+ (1,0) [0|15] "" XXX - -BO_ 391 EV_Gearshift: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ RegenBrakingMode : 12|2@1+ (1,0) [0|3] "" XXX - SG_ GearPosition : 16|4@1+ (1,0) [0|255] "" XXX - -BO_ 418 ESP_15: 8 XXX - SG_ ESP_15_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_15_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 420 CAMERA_NEW_11: 8 XXX - -BO_ 427 ESP_33: 8 XXX - SG_ ESP_33_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ESP_33_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 496 CAMERA_NEW_10: 8 XXX - -BO_ 519 CAMERA_NEW_1_HF: 64 XXX - SG_ NEW_SIGNAL_2 : 36|11@1+ (1,0) [0|2047] "" XXX - SG_ NEW_SIGNAL_1 : 48|12@1+ (1,0) [0|4095] "" XXX - -BO_ 564 CAMERA_NEW_2_HF: 64 XXX - -BO_ 589 NEW_MSG_24D: 64 XXX - SG_ NEW_SIGNAL_1 : 24|12@1+ (1,0) [0|4095] "" XXX - -BO_ 619 CAMERA_NEW_5: 8 XXX - -BO_ 679 ACC_13: 8 XXX - SG_ ACC_Regelgeschw : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Einheit_maxSetzgeschw : 22|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_maxSetzgeschw : 23|9@1+ (1,0) [0|510] "" XXX - SG_ ACC_minRegelgeschw : 32|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX - SG_ ACC_maxRegelgeschw : 40|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Tempolimitassistent : 48|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Kurvenassistent : 52|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_RUV : 56|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Tachokranz : 58|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz_unten : 59|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_ENG_Texte : 60|2@1+ (1,0) [0|3] "" XXX - -BO_ 681 ACC_15: 8 XXX - SG_ AWV_Warnung : 16|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Texte : 24|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Status_Anzeige : 32|2@1+ (1,0) [0|3] "" XXX - SG_ AWV_Einstellung_System_FSG : 34|1@1+ (1,0) [0|1] "" XXX - SG_ AWV_Einstellung_Warnung_FSG : 36|3@1+ (1,0) [0|7] "" XXX - SG_ AWV_Warnlevel : 58|6@1+ (1,0) [0|63] "" XXX - -BO_ 695 RCTA_01: 8 XXX - SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 768 ACC_NEW_2: 48 XXX - SG_ SET_SPEED : 76|10@1+ (0.32,0) [0|163.51] "kmh" XXX - SG_ NEW_SIGNAL_2 : 86|10@1+ (1,0) [0|1023] "" XXX - SG_ NEW_SIGNAL_3 : 96|8@1+ (1,0) [0|255] "" XXX - -BO_ 771 HCA_NEW: 24 XXX - SG_ ENABLED_1 : 13|2@1+ (1,0) [0|3] "" XXX - SG_ SET_ME_0X54 : 16|7@1+ (1,0) [0|127] "" XXX - SG_ ASSIST_TORQUE : 24|10@1+ (1,0) [0|1023] "" XXX - SG_ ASSIST_DIRECTION : 39|1@1+ (1,0) [0|1] "" XXX - SG_ ENABLED_2 : 66|1@1+ (1,0) [0|1] "" XXX - -BO_ 779 Kombi_01: 8 Gateway_MQB - SG_ KBI_ABS_Lampe : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_ESP_Lampe : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_BKL_Lampe : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Airbag_Lampe : 3|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_SILA_gueltig : 4|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_Lenkung_Lampe : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Vorglueh_System_Lampe : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ KBI_NV_in_Anzeige : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Kombi_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Anzeigestatus_ACC : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigestatus_GRA : 13|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Oeldruck_Schalter : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Tankwarnung : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_MFA_v_Einheit_01 : 17|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_im_Stellgliedtest : 18|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ KBI_Anzeigefehler_LDW : 19|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Variante_USA : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Oeldruckwarnung : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Handbremse : 23|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ KBI_V_Digital : 24|9@1+ (1,0) [0|511] "" Vector__XXX - SG_ KBI_PLA_in_Anzeige : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigefehler_NV : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigestatus_LIM : 35|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_angez_Geschw : 48|10@1+ (0.32,0) [0|325.12] "Unit_KiloMeterPerHour" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Einheit_Tacho : 58|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Konsistenz_ACC : 59|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Fehler_Anzeige_ACC : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Anzeigefehler_SWA : 61|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 780 ACC_02: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Wunschgeschw_02 : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX - SG_ ACC_Status_Prim_Anz : 22|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Abstandsindex : 24|10@1+ (1,0) [1|1021] "" XXX - SG_ ACC_Akustik_02 : 34|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Warnung_Verkehrszeichen_1 : 36|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Gesetzte_Zeitluecke : 37|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Optischer_Fahrerhinweis : 40|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz : 41|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Anzeige_Zeitluecke : 42|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Tachokranz : 43|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Display_Prio : 44|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Relevantes_Objekt : 46|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Texte_Primaeranz : 48|7@1+ (1,0) [0|127] "" XXX - SG_ ACC_Wunschgeschw_erreicht : 55|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Typ_Tachokranz_unten : 60|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" XXX - -BO_ 783 SWA_01: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ SWA_Anzeigen : 12|4@1+ (1,0) [0|15] "" Kombi_D4 - SG_ SWA_Blindheit_erkannt : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_rel_Nichtverf : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_rel_Fehler : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Sta_aktiv : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Sta_passiv : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Standziele_li : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Kolonne_li : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Kolonne_mi : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Standziele_re : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Kolonne_re : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SWA_Gischtzaehler : 48|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ SWA_KD_Fehler : 59|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 792 Kamera_Status: 8 XXX - -BO_ 798 TSK_07: 8 Motor_Diesel_MQB - SG_ TSK_07_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ TSK_07_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ TSK_Wunschgeschw : 12|10@1+ (0.32,0) [0|326.72] "Unit_KiloMeterPerHour" Gateway_MQB - SG_ TSK_Texte_Primaeranz : 48|5@1+ (1,0) [0|31] "" Gateway_MQB - SG_ TSK_Limiter_Anzeige : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" Gateway_MQB - -BO_ 804 ACC_04: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Texte_Sekundaeranz : 12|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Texte_Zusatzanz : 16|6@1+ (1,0) [0|63] "" XXX - SG_ ACC_Status_Zusatzanz : 22|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Texte : 27|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Texte_braking_guard : 32|3@1+ (1,0) [0|7] "" XXX - SG_ ACC_Warnhinweis : 35|1@1+ (1,0) [0|1] "" XXX - SG_ ACC_Zeitluecke_Abstandswarner : 36|6@1+ (0.1,0) [0|6] "Unit_Secon" XXX - SG_ ACC_Abstand_Abstandswarner : 42|9@1+ (1,0) [0|508] "" XXX - SG_ ACC_Tempolimit : 51|5@1+ (1,0) [0|31] "" XXX - SG_ ACC_Charisma_FahrPr : 56|4@1+ (1,0) [0|15] "" XXX - SG_ ACC_Charisma_Status : 60|2@1+ (1,0) [0|3] "" XXX - SG_ ACC_Texte_Abstandswarner : 62|2@1+ (1,0) [0|3] "" XXX - -BO_ 811 Motor_Hybrid_02: 8 Motor_Hybrid_MQB - SG_ MO_HYB_E_Faktor : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_Drehzahl_VM : 16|16@1+ (0.25,0) [0|16256] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB - SG_ MO_HYB_LowSpeedModus : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB - -BO_ 812 Motor_17: 8 Motor_Diesel_MQB - SG_ MO_Prio_MAX_Wunschdrehzahl : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Prio_MIN_Wunschdrehzahl : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Luftpfad_aktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_v_Begrenz_Aktivierbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ MO_Drehzahlbeeinflussung : 16|8@1+ (0.39,0) [0|99.45] "Unit_PerCent" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_MIN_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_MAX_Wunschdrehzahl : 32|9@1+ (25,0) [0|12750] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Charisma_FahrPr : 41|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Charisma_Status : 45|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 869 BEM_05: 8 Gateway_MQB - SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_01_Abschaltstufen : 26|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_EMLIN_ungueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_Segel_Info : 48|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" LEH_MQB - SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" LEH_MQB - -BO_ 870 Blinkmodi_02: 8 XXX - SG_ Hazard_Switch : 20|1@1+ (1,0) [0|1] "" XXX - SG_ Comfort_Signal_Left : 23|1@1+ (1,0) [0|1] "" XXX - SG_ Comfort_Signal_Right : 24|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Turn_Exterior_Bulb_1 : 25|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Turn_Exterior_Bulb_1 : 26|1@1+ (1,0) [0|1] "" XXX - SG_ Left_Turn_Exterior_Bulb_2 : 27|1@1+ (1,0) [0|1] "" XXX - SG_ Right_Turn_Exterior_Bulb_2 : 28|1@1+ (1,0) [0|1] "" XXX - SG_ Fast_Send_Rate_Active : 37|1@1+ (1,0) [0|1] "" XXX - -BO_ 873 CAMERA_NEW_4: 8 XXX - -BO_ 901 Charisma_01: 8 Gateway_MQB - SG_ CHA_Ziel_FahrPr_ALR : 0|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_ESP : 4|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_FL : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Fahrer_Umschaltung : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ CHA_Ziel_FahrPr_MO : 16|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ CHA_Ziel_FahrPr_GE : 20|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ CHA_Ziel_FahrPr_ST : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_SCU : 28|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_DR : 32|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_QS : 36|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_AFS : 40|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_RGS : 44|4@1+ (1,0) [0|15] "" Airbag_MQB - SG_ CHA_Ziel_FahrPr_EPS : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_ACC : 52|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ CHA_Ziel_FahrPr_SAK : 56|4@1+ (1,0) [0|15] "" SAK_MQB - SG_ CHA_Ziel_FahrPr_MStSt : 60|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 913 OBD_01: 8 Motor_Diesel_MQB - SG_ OBD_Calc_Load_Val : 0|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Eng_Cool_Temp : 8|8@1+ (1,-40) [-40|215] "Unit_DegreCelsi" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Throttle_Pos : 16|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Load_Val : 24|16@1+ (0.39215686275,0) [0|25700] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Abs_Pedal_Pos : 40|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Kaltstart_Denominator : 59|1@1+ (1,0) [0|1] "" BMS_MQB,LEH_MQB - SG_ OBD_Minimum_Trip : 60|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Driving_Cycle : 61|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Warm_Up_Cycle : 62|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ OBD_Normed_Trip : 63|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - -BO_ 914 ESP_07: 8 Gateway_MQB - SG_ ESP_07_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_07_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_ACC_LDE : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Quattro_Antrieb : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Codierung_ADS : 14|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_RTA_HL : 16|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ ESP_RTA_HR : 24|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ ESP_RTA_VR : 32|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX - SG_ OBD_Fehler_Radsensor_HL : 40|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_HR : 44|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_VL : 48|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_Fehler_Radsensor_VR : 52|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ESP_Qualifizierung_Antriebsart : 56|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_Offroad_Modus : 57|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_MKB_ausloesbar : 58|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_MKB_Status : 59|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ESP_CM_Variante : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ESP_OBD_Status : 61|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 916 WBA_03: 8 Getriebe_DQ_Hybrid_MQB - SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Gateway_MQB - -BO_ 917 LWR_AFS_01: 8 XXX - -BO_ 919 LDW_02: 8 XXX - SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX - SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX - SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX - SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 945 DC_Hybrid_01: 8 LEH_MQB - SG_ DC_HYB_iAktLV : 12|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB - SG_ DC_HYB_iAktReserveLV : 22|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB - SG_ DC_HYB_uAktLV : 32|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Gateway_MQB - SG_ DC_HYB_LangsRegelung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Abregelung_Temperatur : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_RedLeistung : 42|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_intern : 43|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Fehler_Spannung : 44|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ DC_HYB_Auslastungsgrad : 56|8@1+ (0.4,0) [0|100] "Unit_PerCent" Gateway_MQB - -BO_ 949 Klima_11: 8 Gateway_MQB - SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zonen : 4|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Comp_rev_rq : 8|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX - SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Comp_enable : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB - -BO_ 958 Motor_14: 8 Motor_Diesel_MQB - SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" Gateway_MQB,LEH_MQB - SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB - SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Timeout_ESP : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Status_Zylabschalt_01 : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 960 Klemmen_Status_01: 4 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZAS_Kl_50 : 19|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 967 Motor_26: 8 Motor_Diesel_MQB - SG_ MO_HYB_Status_HV_Ladung : 8|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_1 : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_2 : 29|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_3 : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_4 : 31|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_HYB_Text_5 : 36|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_6 : 37|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Text_7 : 38|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Gateway_MQB - SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Winterfahrprog : 52|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 968 Getriebe_14: 8 Getriebe_DQ_Hybrid_MQB - SG_ GE_OBD_AbsperrVent : 12|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_amax_moeglich : 16|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Charisma_FahrPr : 25|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ GE_Charisma_Status : 29|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ GE_Verlustmoment : 32|8@1+ (1,0) [0|254] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Freigabe_Verfallsinfo_WFS : 49|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_Codierung_MSG : 50|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_LaunchControl : 51|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ GE_Heizwunsch : 52|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_OBD_Status : 54|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_LFR_Adaption : 55|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ GE_Sumpftemperatur : 56|8@1+ (1,-58) [-58|196] "Unit_DegreCelsi" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 981 Licht_Anf_01: 8 XXX - -BO_ 982 Licht_hinten_01: 8 Gateway_MQB - SG_ Licht_hinten_01_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 984 RGS_VL_01: 8 Airbag_MQB - SG_ RGS_VL_Texte : 12|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ RGS_VL_Charisma_FahrPr : 14|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ RGS_VL_Charisma_Status : 18|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ RGS_VL_aktiv : 21|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Sitz : 25|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Schiebedach : 26|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Fenster : 27|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_PC_Aktuator_Warnblinken : 28|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ RGS_VL_Precrash_Basis : 32|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ RGS_VL_Precrash_Front : 40|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ RGS_VL_Precrash_Rear : 48|8@1+ (1,0) [0|255] "" Gateway_MQB - -BO_ 987 Gateway_72: 8 Gateway_MQB - SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB - SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 988 Gateway_73: 8 XXX - -BO_ 989 Gateway_74: 8 Gateway_MQB - SG_ LH_EPS_01_alt : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ Kessy_04_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ LIN_2_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MFG_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ GW_74_va_14 : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Klima_02_alt : 5|1@1+ (1,0) [0|1] "" BMS_MQB - SG_ Parkhilfe_01_alt : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ELV_01_alt : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KY_StartStopp_Info : 16|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ PH_StartStopp_Info : 18|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ EPS_Lenkerposition : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB - SG_ ELV_Anf_Klemme_50 : 22|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ MF_StartStopp_Info : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ KL_Geblaesespannung_Soll : 40|8@1+ (0.05,0.5) [2|13] "Unit_Volt" BMS_MQB - SG_ KL_Umluftklappe_Status : 48|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ MFL_Tip_Down : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MFL_Tip_Up : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ LS_Tiptronic_Fehler : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 991 Gateway_76: 8 XXX - -BO_ 997 TSG_FT_02: 8 XXX - SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" XXX - SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 1122 PSD_04: 8 XXX - SG_ PSD_Object_Index : 0|6@1+ (1,0) [0|63] "" XXX - -BO_ 1123 PSD_05: 8 XXX - SG_ PSD_Current_Route_Index : 0|6@1+ (1,0) [0|63] "" XXX - SG_ Route_Distance_Remaining : 8|5@1+ (1,0) [0|31] "" XXX - -BO_ 1124 PSD_06: 8 XXX - -BO_ 1172 STS_01: 8 Gateway_MQB - SG_ STS_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STS_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STS_Car_not_under_theft : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Car_under_theft : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Anlassersperre : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Typencodierung : 16|5@1+ (1,0) [0|31] "" Vector__XXX - SG_ STS_LIN_aktiv : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Standlicht : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Fahrlicht : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Alarm_still : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Texte : 27|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ STS_Laderelais : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Summer : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Alarm_Blinker : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Notstart : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Signalhorn : 55|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STS_Leerlaufschaltung : 56|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1175 Parkhilfe_01: 8 XXX - -BO_ 1312 Airbag_02: 8 Airbag_MQB - SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 1313 STH_01: 8 Gateway_MQB - SG_ STH_Funk_ein : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Funk_aus : 1|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Zusatzheizung : 2|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_LED : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Pumpe_ein : 4|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Geblaese : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_EKP_Anst : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Start_folgt : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Ventiloeffnungszeit : 8|6@1+ (1,0) [0|63] "Unit_Minut" Vector__XXX - SG_ STH_Ventil_Status : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_Waermeeintrag : 16|6@1+ (1,0) [0|63] "" Vector__XXX - SG_ STH_KVS : 24|13@1+ (1,0) [0|8191] "Unit_MilliLiter" Vector__XXX - SG_ STH_Fehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ STH_Heizleistung : 40|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ STH_Wassertemp : 48|8@1+ (0.75,-40) [-40|142.25] "Unit_DegreCelsi" Vector__XXX - SG_ STH_Motorvorwaermung : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_Servicemode : 60|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_war_aktiv : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ STH_KVS_Ueberlauf : 62|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ STH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1385 HVEM_04: 8 XXX - -BO_ 1413 Systeminfo_01: 8 Gateway_MQB - SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" Vector__XXX - SG_ SI_Rollenmode : 6|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" SAK_MQB - SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" SAK_MQB - SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 1437 Remotestart_FFB: 8 Gateway_MQB - SG_ RSF_Tastencode_1 : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ RSF_Tastencode_2 : 8|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ RSF_Tastencode_Maske : 16|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB - -BO_ 1440 RLS_01: 8 XXX - -BO_ 1520 Dimmung_01: 8 Gateway_MQB - SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB - SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX - -BO_ 1528 SAK_01: 8 SAK_MQB - SG_ SAK_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ SAK_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Gateway_MQB - -BO_ 1600 Motor_07: 8 Motor_Diesel_MQB - SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB - SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB - SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB - -BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB - SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB - SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB - SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB - SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB - SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB - SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB - SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 1602 WIV_01: 8 Motor_Diesel_MQB - SG_ WIV_Verschleissindex : 0|16@1+ (2e-08,0) [0|0.00131068] "" Gateway_MQB - SG_ WIV_Russindex : 16|16@1+ (2e-08,0) [0|0.00131068] "" Gateway_MQB - SG_ WIV_t_min : 32|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB - SG_ WIV_t_max : 40|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB - SG_ WIV_W_min : 48|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB - SG_ WIV_W_max : 56|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB - -BO_ 1603 Einheiten_01: 8 Gateway_MQB - SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB - SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX - -BO_ 1605 FLA_01: 8 XXX - -BO_ 1607 Motor_09: 8 Motor_Diesel_MQB - SG_ MO_ITM_Kuehlmittel_Temp : 0|8@1+ (0.75,-48) [-45.75|143.25] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_E85_Sensor : 8|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ SCR_Anz_Motorstarts : 12|4@1+ (1,0) [0|8] "" Gateway_MQB - SG_ SCR_Reichweite : 16|15@1+ (1,0) [0|32766] "" Gateway_MQB - SG_ SCR_Warnstufe_1 : 32|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Warnstufe_2 : 33|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Text : 34|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ SCR_Akustik : 37|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Kraftstofffilter_Wasser : 40|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Systemfehler : 41|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ SCR_Inducement_Strategie : 42|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_CO2_Faktor : 44|12@1+ (1,0) [1|4094] "Unit_GramPerLiter" Gateway_MQB - -BO_ 1624 Licht_vorne_01: 8 XXX - -BO_ 1625 Klimakomp_01: 8 Gateway_MQB - SG_ EKL_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EKL_Comp_SCI_com_stat : 16|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_output_stat : 18|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_main_stat : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EKL_Comp_ovld_stat : 21|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ EKL_Comp_Inv_stat : 24|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_photo_temp_stat : 30|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EKL_Comp_photo_temp : 32|8@1+ (1,0) [0|254] "Unit_DegreCelsi" Vector__XXX - SG_ EKL_Comp_current : 40|8@1+ (0.1,0) [0|25.4] "Unit_Amper" Motor_Hybrid_MQB - SG_ EKL_Comp_rev_stat : 48|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX - -BO_ 1626 BCM_01: 8 Gateway_MQB - SG_ BCM_Bremsbelag_Sensor : 12|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Bremsfluessigkeit_Sensor : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Licht_Warn : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Waschwasser_Sensor : 15|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Kuehlmittel_Sensor : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_Kl_15_HW_erkannt : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Eis_Offroad_Taste : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Otto_MQB - SG_ ZZH_Endlage_oben : 19|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZZH_Endlage_unten : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ZZH_Endlage_unplausibel : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM2_EZS_gedrueckt : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM2_SST_gedrueckt : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Hybrid_StartStopp_Taste : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Warnblink_Taster : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Valet_Parking_Taster : 26|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM_Remotestart_Betrieb : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_HSK_Taster : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Heckrollo_Taster : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ BCM1_Rueckfahrlicht_Schalter : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_MH_Schalter : 31|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB - SG_ BCM1_MH_WIV_Schalter : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Eco_Charisma_Taste : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BCM_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Thermomanagement_Fehler : 36|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM_Thermomanagement_gueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ BCM1_Lichtwarn_Texte : 38|2@1+ (1,0) [0|3] "" Vector__XXX - -BO_ 1628 BMS_Hybrid_01: 8 BMS_MQB - SG_ BMS_HYB_ASV_hinten_Status : 13|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_ASV_vorne_Status : 14|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_BattFanSpd : 16|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB - SG_ BMS_HYB_VentilationReq : 20|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_Spuelbetrieb_Status : 21|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ BMS_HYB_Kuehlung_Anf : 22|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ BMS_HYB_Temp_vor_Verd : 24|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_HYB_Temp_nach_Verd : 32|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_Temperatur : 40|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_Temperatur_Ansaugluft : 48|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB - SG_ BMS_IstSpannung_HV : 56|8@1+ (1,100) [100|350] "Unit_Volt" Gateway_MQB - -BO_ 1629 ESP_20: 8 Gateway_MQB - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 1630 OBD_Tankgeber_01: 8 Gateway_MQB - SG_ OBD_TG_F_Status_1 : 0|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_2 : 4|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_3 : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_F_Status_4 : 12|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_1 : 16|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_2 : 28|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_3 : 40|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ OBD_TG_Sens_Rohwert_4 : 52|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1631 Motor_16: 8 Motor_Diesel_MQB - SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Gateway_MQB - SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Gateway_MQB - SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - SG_ TSK_Steigung : 56|8@1+ (0.8,-101.6) [-101.6|101.6] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 1633 Anhaenger_01: 8 Gateway_MQB - SG_ AAG_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Anhaenger_abgesteckt : 6|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_NSL_aktiv : 7|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Anhaenger_erkannt : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Blinker_H_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Blinker_HL_def : 10|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Blinker_HR_def : 11|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Bremslicht_H_def : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ AAG_Schlusslicht_HL_def : 13|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_Schlusslicht_HR_def : 14|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_AVS_Fehler_02 : 18|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AAG_AVS_Stati : 20|4@1+ (1,0) [0|15] "" Vector__XXX - -BO_ 1646 Klima_03: 8 XXX - -BO_ 1648 Motor_18: 8 Motor_Diesel_MQB - SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Eis_Offroad_LED : 45|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Gateway_MQB - SG_ MO_E85_BS_Texte : 52|3@1+ (1,0) [0|7] "" Gateway_MQB - SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB - -BO_ 1714 Diagnose_01: 8 Gateway_MQB - SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB - SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB - SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB - -BO_ 1716 VIN_01: 8 Gateway_MQB - SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB - SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB - SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB - -BO_ 1719 Kombi_02: 8 Gateway_MQB - SG_ KBI_Kilometerstand : 0|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Vector__XXX - SG_ KBI_Standzeit_02 : 20|17@1+ (1,0) [0|131068] "Unit_Secon" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Inhalt_Tank : 40|7@1+ (1,0) [0|125] "Unit_Liter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_FStatus_Tank : 47|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_QBit_Aussen_Temp_gef : 55|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ KBI_Aussen_Temp_gef : 56|8@1+ (0.5,-50) [-50|75] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - -BO_ 1720 Kombi_03: 8 XXX - SG_ KBI_Reifenumfang : 0|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - SG_ KBI_Variante_USA : 12|1@1+ (1,0) [0|1] "" XXX - SG_ KBI_Variante : 13|1@1+ (1,0) [0|1] "" XXX - SG_ KBI_BCmE_aktiv : 16|1@1+ (1,0) [0|1] "" XXX - SG_ KBI_Sparhinweis_quittiert : 17|1@1+ (1,0) [0|1] "" XXX - SG_ KBI_Tankfuellstand_Prozent : 18|7@1+ (1,0) [0|100] "Unit_PerCent" XXX - SG_ KBI_Nachtanken_erkannt : 25|1@1+ (1,0) [0|1] "" XXX - SG_ KBI_Tankinhalt_hochaufl : 26|14@1+ (0.01,0) [0|163.81] "Unit_Liter" XXX - SG_ KBI_Max_Tankinhalt : 40|8@1+ (0.5,0) [0|126.5] "" XXX - SG_ KBI_Reifenumfang_Sekundaer : 48|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX - -BO_ 316495015 CAMERA_NEW_6: 32 XXX - -BO_ 380196019 CAMERA_NEW_16: 16 XXX - -BO_ 380196036 CAMERA_NEW_18: 8 XXX - -BO_ 389224720 CAMERA_NEW_13: 3 XXX - -BO_ 389226768 CAMERA_NEW_12: 2 XXX - -BO_ 389241616 CAMERA_NEW_14: 5 XXX - -BO_ 401604687 CAMERA_NEW_9: 8 XXX - -BO_ 441800082 CAMERA_NEW_15: 8 XXX - -BO_ 441800100 CAMERA_NEW_8: 64 XXX - -BO_ 441800101 CAMERA_NEW_7: 64 XXX - -BO_ 2549088277 KN_Airbag_01: 8 Airbag_MQB - SG_ Airbag_01_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Airbag_01_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ AB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088284 KN_SAK: 8 SAK_MQB - SG_ SAK_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ SAK_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ SAK_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088374 KN_MO_01: 8 Motor_Diesel_MQB - SG_ Motor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Motor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ MO_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088375 KN_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ Getriebe_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Getriebe_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ GE_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088379 KN_Hybrid_01: 8 BMS_MQB - SG_ Hybrid_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ Hybrid_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ BMS_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2549088380 KN_EMotor_01: 8 LEH_MQB - SG_ EMotor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EMotor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB - SG_ EM_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB - -BO_ 2600468496 NMH_Gateway: 8 Gateway_MQB - SG_ NM_Gateway_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Gateway_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Gateway_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ACAN_Aktivitaet : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_FCAN_Aktivitaet : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_KCAN_Aktivitaet : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ICAN_Aktivitaet : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_DiagCAN_Aktivitaet : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_ECAN_Aktivitaet : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Energie_LIN_Aktivi000 : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_Bedien_LIN_Aktivitaet : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_EM_Aktivitaet : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_EM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Shutdown : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Spg_Messung : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_NL_Wakeup_Monitor : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Gateway_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468501 NMH_Airbag_01: 8 Airbag_MQB - SG_ NM_Airbag_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Airbag_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Airbag_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Airbag_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Airbag_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468598 NMH_MO_01: 8 Motor_Diesel_MQB - SG_ NM_MO_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_MO_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_MO_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_MO_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_HV_Abschaltung : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_EKP_Vorlauf : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NM_aktiv_STH_Betrieb : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Kuehlerluefter : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Diagnose : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_WFS : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_EEPROM : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_NL_Sonstige : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_MO_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468599 NMH_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB - SG_ NM_Getriebe_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Getriebe_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Getriebe_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Getriebe_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_v_gr_0 : 35|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Pos_Erk : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NM_aktiv_Umg_Bed : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Getriebe_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468603 NMH_Hybrid_01: 8 BMS_MQB - SG_ NM_Hybrid_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Hybrid_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_Hybrid_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_Hybrid_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_NL_Luefter : 49|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_Hybrid_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -BO_ 2600468604 NMH_EMotor_01: 8 LEH_MQB - SG_ NM_EMotor_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_EMotor_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB - SG_ NM_EMotor_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB - SG_ NM_EMotor_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ NM_EMotor_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX - -CM_ SG_ 134 LWI_Lenkradwinkel "Steering angle WITH variable ratio effect included"; -CM_ SG_ 159 EPS_Berechneter_LW "Raw steering angle, degrees"; -CM_ SG_ 159 EPS_VZ_BLW "Raw steering angle, direction"; -CM_ SG_ 159 EPS_HCA_Status "Status of Heading Control Assist feature"; -CM_ SG_ 159 EPS_Lenkmoment "Steering input by driver, torque"; -CM_ SG_ 159 EPS_VZ_Lenkmoment "Steering input by driver, direction"; -CM_ SG_ 173 COUNTERXX "Message not renamed to COUNTER because J533 rate-limiting makes it look like messages are being lost"; -CM_ SG_ 294 HCA_01_Vib_Freq "Frequenz der Lenkradvibration"; -CM_ SG_ 294 HCA_01_LM_Offset "Von HCA angefordertes Lenkmoment (Betrag)"; -CM_ SG_ 294 EA_ACC_Sollstatus "Status-Anforderung ACC von Emergency Alert. Statuswechsel bei Flanke. Solange Wert=1, wird EA_ACC_Wunschgeschwindigkeit übernommen. Wert=2 führt zu Zustand ¿ACC_GRA_passiv¿"; -CM_ SG_ 294 EA_Ruckprofil "Emergency Alert Anforderung an ESP, welcher Ruck verwendet werden soll. Eine Umsetzung der Ruckanforderung im ESP erfolgt nur mit gesetztem Bit 'EA_Ruckfreigabe'."; -CM_ SG_ 294 HCA_01_Sendestatus "Gibt den Sendestatus der HCA_01 an (notwendig für IL-Unterstützung)"; -CM_ SG_ 294 HCA_01_LM_OffSign "Vorzeichen des HCA-Lenkmoments"; -CM_ SG_ 294 HCA_01_Status_HCA "Statusinformation vom HCA und Manoevrierassistent für Handshakemechanismus mit der Lenkung"; -CM_ SG_ 294 HCA_01_Vib_Amp "Momentenamplitude der Lenkradvibration"; -CM_ SG_ 294 EA_Ruckfreigabe "Emergency Alert Freigabit für die Warnruck-Anforderung an das ESP"; -CM_ SG_ 294 EA_ACC_Wunschgeschwindigkeit "Emergency Alert Anforderung neue Wunschgeschwindigkeit"; -CM_ SG_ 391 GearPosition "Traditional PRND plus B-mode aggressive regen, B-mode mapped to Drive"; -CM_ SG_ 771 SET_ME_0X54 "Varies but not sure how, may indicate path or curvature"; -CM_ SG_ 870 Hazard_Switch "Four-way flashers active"; -CM_ SG_ 870 Comfort_Signal_Left "Comfort turn signal active, left"; -CM_ SG_ 870 Comfort_Signal_Right "Comfort turn signal active, right"; -CM_ SG_ 870 Left_Turn_Exterior_Bulb_1 "Probably front"; -CM_ SG_ 870 Right_Turn_Exterior_Bulb_1 "Probably front"; -CM_ SG_ 870 Left_Turn_Exterior_Bulb_2 "Probably rear"; -CM_ SG_ 870 Right_Turn_Exterior_Bulb_2 "Probably rear"; -CM_ SG_ 870 Fast_Send_Rate_Active "CAN message send rate"; -CM_ SG_ 919 LDW_DLC "Probable DLC (distance to line crossing)"; -CM_ SG_ 919 LDW_TLC "Probable TLC (time to line crossing)"; -CM_ SG_ 960 ZAS_Kl_15 "Indicates ignition on"; -CM_ SG_ 1720 KBI_Reifenumfang "Mittlerer Radumfang aus der K-Zahl gerechnet in Millimeter. Byte 2 Bit 5,4 reserviert, Byte 2 Bit 3..0 und Byte 1 Bit 7..0; Wertebereich 0..4096 mm"; -CM_ SG_ 1720 KBI_Variante_USA "In diesem Signal wird die HW-Variante des Kombis ausgegeben, ACC plausibilisiert auf dieses Signal hin seine US-Codierung"; -CM_ SG_ 1720 KBI_Variante "Zeigt an ob es sich um ein konventionelles Zeiger-Kombiinstrument handelt oder um eine Volldisplay-Kombiinstrument"; -CM_ SG_ 1720 KBI_BCmE_aktiv "Anzeige BCmE aktiv (BCmE-Screen oder Einsparhinweis in der Anzeige)"; -CM_ SG_ 1720 KBI_Sparhinweis_quittiert "angezeigter Sparhinweis ist quittiert. Signal wird nach zwei Sendebotschaften wieder auf '0' gesetzt."; -CM_ SG_ 1720 KBI_Tankfuellstand_Prozent "Tankfüllstand in %"; -CM_ SG_ 1720 KBI_Nachtanken_erkannt "Statusinformation Nachtankmodus"; -CM_ SG_ 1720 KBI_Tankinhalt_hochaufl "angezeigter Tankinhalt hochauflösend zur Restreichweitenberechnung"; -CM_ SG_ 1720 KBI_Max_Tankinhalt "Mitteilung des maximalen Tankinhalts an das Reichweitenmodul"; -CM_ SG_ 1720 KBI_Reifenumfang_Sekundaer "Fahrzeuge mit unterschiedlichen Reifenumfängen Vorderachse / Hinterachse: - -Primärachse: KBI_Reifenumfang -Sekundärachse: KBI_Reifenumfang_Sekundaer"; -VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active"; -VAL_ 173 GE_Fahrstufe 5 "P" 6 "R" 7 "N" 8 "D" 9 "S" 10 "E" 13 "T" 14 "T"; -VAL_ 279 AWV1_Anf_Prefill 0 "Prefill_nicht_aktivieren" 1 "Prefill_aktivieren"; -VAL_ 279 ANB_CM_Info 0 "Standard" 1 "Erweitert"; -VAL_ 279 AWV2_Freigabe 0 "keine_Freigabe" 1 "Freigabe"; -VAL_ 279 AWV1_HBA_Param 0 "Defaultparametersatz" 1 "Parametersatz_mit_leicht_erhoehter_Empfindlichkeit" 2 "Parametersatz_mit_erhoehter_Empfindlichkeit" 3 "Parametersatz_mit_hoechster_Empfindlichkeit"; -VAL_ 279 AWV2_Priowarnung 0 "Anzeige_Verlassen_der_Fahrspur_wird_nicht_unterdrueckt" 1 "Anzeige_Verlassen_der_Fahrspur_wird_unterdrueckt"; -VAL_ 279 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv"; -VAL_ 279 ANB_Info_Teilbremsung 0 "Auspraegung_Standard" 1 "Auspraegung_Erweitert"; -VAL_ 279 ANB_Notfallblinken 0 "kein_ANB_Notfallblinken" 1 "Notfallblinken_ANB_angefordert"; -VAL_ 279 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben"; -VAL_ 279 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben"; -VAL_ 279 AWV_Vorstufe 0 "keine_Notbremsung_erwartet" 1 "Notbremsung_in_Kuerze"; -VAL_ 279 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten"; -VAL_ 279 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich"; -VAL_ 279 PCF_Freigabe 0 "keine_Freigabe_PreCrashFront" 1 "Freigabe_PreCrashFront"; -VAL_ 279 AWV1_ECD_Anlauf 0 "ECD_Anlauf_nicht_aktivieren" 1 "ECD_Anlauf_aktivieren"; -VAL_ 279 PCF_Time_to_collision 255 "Objektstatus=0x0__oder_berechneter_TTC_Wert_groesser_als_Maximalwert"; -VAL_ 288 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault"; -VAL_ 290 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert"; -VAL_ 290 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; -VAL_ 290 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler"; -VAL_ 290 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler"; -VAL_ 290 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren"; -VAL_ 290 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht"; -VAL_ 290 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert"; -VAL_ 290 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System"; -VAL_ 290 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv"; -VAL_ 294 EA_ACC_Sollstatus 0 "Init" 1 "ACC_aktivieren" 2 "ACC_deaktivieren"; -VAL_ 294 EA_Ruckprofil 0 "Init" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7"; -VAL_ 294 HCA_01_Sendestatus 0 "HCA_sendet_mit_1000ms" 1 "HCA_sendet_mit_20ms"; -VAL_ 294 HCA_01_LM_OffSign 0 "positives_Vorzeichen" 1 "negatives_Vorzeichen"; -VAL_ 294 HCA_01_Status_HCA 0 "deaktiviert" 1 "reserviert" 2 "reserviert" 3 "funktionsbereit" 4 "reserviert" 5 "HCA_Momenteneingriff_1" 6 "MA_Aktiv" 7 "HCA_Momenteneingriff_2" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "reserviert" 15 "reserviert"; -VAL_ 294 EA_Ruckfreigabe 0 "keine_Freigabe" 1 "Freigabe"; -VAL_ 294 EA_ACC_Wunschgeschwindigkeit 1023 "Init"; -VAL_ 302 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler"; -VAL_ 302 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht"; -VAL_ 302 ACC_Freilauf_Anf 0 "keine Freilauf-Anforderung" 1 "Freilauf-Anforderung"; -VAL_ 302 ACC_Freilauf_Info 0 "Freilauf_freigegeben" 1 "kein_Uebergang_in_Freilauf_zulaessig" 2 "Freilauf_nicht_freigegeben" 3 "Freilauf_Anforderung"; -VAL_ 302 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe"; -VAL_ 302 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren"; -VAL_ 302 ACC_Folgebeschl 254 "Neutralwert"; -VAL_ 302 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler"; -VAL_ 391 RegenBrakingMode 0 "default" 1 "B1" 2 "B2" 3 "B3"; -VAL_ 391 GearPosition 2 "P" 3 "R" 4 "N" 5 "D" 6 "D"; -VAL_ 679 ACC_Regelgeschw 1023 "keine_Anzeige"; -VAL_ 679 ACC_Einheit_maxSetzgeschw 0 "kmh" 1 "mph"; -VAL_ 679 ACC_maxSetzgeschw 511 "Init_Neutralwert"; -VAL_ 679 ACC_minRegelgeschw 255 "keine_Anzeige"; -VAL_ 679 ACC_maxRegelgeschw 255 "keine_Anzeige"; -VAL_ 679 ACC_Tempolimitassistent 0 "keine_Anzeige" 1 "Tempolimitassistent_aktiv" 2 "Tempolimitassistent_nicht_verfuegbar" 3 "Tempolimitassistent_Fahreruebernahme"; -VAL_ 679 ACC_Kurvenassistent 0 "keine_Anzeige" 1 "Kreuzung" 2 "Rechtskurve" 3 "Linkskurve" 4 "Kreisverkehr"; -VAL_ 679 ACC_RUV 0 "keine_Anzeige" 1 "RUV_aktiv_Rechtsverkehr" 2 "RUV_aktiv_Linksverkehr"; -VAL_ 679 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet"; -VAL_ 679 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus"; -VAL_ 679 ACC_ENG_Texte 0 "keine_Anzeige" 1 "keine_Laenderverfuegbarkeit" 2 "nicht_verfuegbar" 3 "Geschwindigkeitsgrenze"; -VAL_ 681 AWV_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung"; -VAL_ 681 AWV_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "nicht_definiert" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt"; -VAL_ 681 AWV_Status_Anzeige 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar"; -VAL_ 681 AWV_Einstellung_System_FSG 0 "deaktiviert" 1 "aktiviert"; -VAL_ 681 AWV_Einstellung_Warnung_FSG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; -VAL_ 681 AWV_Warnlevel 0 "keine_Gefaehrdung" 63 "max_Gefaehrdung"; -VAL_ 780 ACC_Wunschgeschw_02 1023 "keine_Anzeige"; -VAL_ 780 ACC_Status_Prim_Anz 0 "Symbol nicht beleuchtet" 1 "Farbe 1 (typisch 'gruen')" 2 "Farbe 2 (typisch 'rot')" 3 "Farbe 3 (typisch 'gelb')"; -VAL_ 780 ACC_Abstandsindex 0 "Sonderanzeige_graue_Fahrbahn" 1022 "Sonderanzeige_graue_Fahrbahn" 1023 "Sonderanzeige_Fahrbahn_mit_gruenem_roten_Bereich"; -VAL_ 780 ACC_Akustik_02 0 "keine_Akustik" 1 "hochpriore_Akustik" 2 "niederpriore_Akustik" 3 "hochpriore_Dauerakustik"; -VAL_ 780 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung"; -VAL_ 780 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert"; -VAL_ 780 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN"; -VAL_ 780 ACC_Typ_Tachokranz 0 "Tachokranz_lang" 1 "Tachokranz_kurz"; -VAL_ 780 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert"; -VAL_ 780 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet"; -VAL_ 780 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio"; -VAL_ 780 ACC_Relevantes_Objekt 0 "Symbol_nicht_beleuchtet" 1 "Farbe_1_typisch_gruen" 2 "Farbe_2_typisch_rot" 3 "Farbe_3_typisch_gelb"; -VAL_ 780 ACC_Texte_Primaeranz 0 "keine Anzeige" 1 "ACC nicht verfuegbar !" 2 "Auto_Auto_ _ _" 3 "Auto_ _Auto_ _" 4 "Auto_ _ _Auto_" 5 "Auto_ _ _ _Auto" 6 "Auto_Auto_ _ _ Gong (durchgestrichen)" 7 "Auto_ _Auto_ _ Gong (durchgestrichen)" 8 "Auto_ _ _Auto_ Gong (durchgestrichen)" 9 "Auto_ _ _ _Auto Gong (durchgestrichen)" 10 "ACC bereit" 11 "keine Abstandsregelung" 12 "ACC Sensor Sicht !" 13 "ACC nicht verfuegbar" 14 "o o o" 15 "Hochschalten" 16 "ESP Eingriff" 17 "Herunterschalten" 18 "Parkbremse !" 19 "Geschwindigkeitsgrenze" 20 "Waehlhebelposition !" 21 "VDA ACC-Symbol YYY km/h / mph" 22 "Tempolimit XXX km/h / mph" 23 "Kurve XXX km/h / mph" 24 "ACC Abschaltung" 25 "Symbol 'Eieruhr'" 26 "!" 27 "--- km/h / mph" 28 "XXX km/h / mph (Schriftart 2)" 29 "Lenkradwinkel" 30 "Anfahren bestaetigen" 31 "Fahrzeug verloren" 32 "Im Stand nicht moeglich" 33 "Ungueltiger Anfahrbefehl" 34 "Tuer offen !" 35 "Fahrer Gurtschloss offen !" 36 "Schalthebelposition !" 37 "Drehzahl !" 38 "Kurvenassistent aus" 39 "Tempolimit aus" 40 "Abbiegeassistent" 41 "Ortsanfang XXX km/h / mph" 42 "Ortsende XXX km/h / mph" 43 "Tempolimit Ende XXX km/h / mph" 44 "HDC aktiv" 45 "braking guard Bremsruck" 46 "braking guard aus" 47 "braking guard aus" 48 "Uebernehmen !" 49 "Steigung zu gross" 50 "Stehendes Objekt voraus" 51 "SET / 'GRA Symbol'___xxx km/h / mph" 52 "SET / 'GRA Symbol' xxx km/h / mph" 53 "ACC aus" 54 "ACC startet" 55 "ACC reinigen" 56 "ACC Fehler" 57 "ACC haelt an !" 58 "Bremse betaetigen !" 59 "Kupplung betaetigt" 60 "LIM AUS" 61 "LIM AKTIV" 62 "LIM PASSIV" 63 "LIM FEHLER" 64 "Bremse ueberhitzt !" 65 "Bremse haelt !" 66 "ESP PASSIV !" 67 "ACC_anfahrbereit" 68 "Gang_einlegen" 69 "Rechtsueberholen_verhindert" 70 "Linksueberholen_verhindert" 71 "Achtung_Geschwindigkeitsueberschreitung" 72 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar"; -VAL_ 780 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht"; -VAL_ 780 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus"; -VAL_ 780 ACC_Status_Anzeige 0 "ACC_GRA_Hauptschalter_aus" 1 "ACC_in_Init_nicht_bei_GRA" 2 "ACC_GRA_passiv" 3 "ACC_GRA_aktiv" 4 "ACC_GRA_im_Hintergrund_uebertreten" 5 "ACC_GRA_Abschaltreaktion" 6 "ACC_reversibel_aus_nicht_bei_GRA" 7 "ACC_GRA_irreversibel_aus"; -VAL_ 804 ACC_Texte_Sekundaeranz 0 "keine_Anzeige" 1 "Zielfahrzeug_erkannt" 2 "Rechtskurve_voraus" 3 "Linkskurve_voraus" 4 "Tempolimit_voraus" 5 "Sensorsicht" 6 "Anfahrbereit" 7 "Tempolimit_erkannt" 8 "Kreuzung_voraus" 9 "Kreisverkehr_voraus"; -VAL_ 804 ACC_Texte_Zusatzanz 0 "keine_Anzeige" 1 "ACC_AUS" 2 "ACC_BEREIT" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_1__dyn" 10 "DISTANZ_2__dyn" 11 "DISTANZ_3__dyn" 12 "DISTANZ_4__dyn" 13 "DISTANZ_1__stand" 14 "DISTANZ_2__stand" 15 "DISTANZ_3__stand" 16 "DISTANZ_4__stand" 17 "DISTANZ_1__comf" 18 "DISTANZ_2__comf" 19 "DISTANZ_3__comf" 20 "DISTANZ_4__comf" 21 "DISTANZ_1__efficiency" 22 "DISTANZ_2__efficiency" 23 "DISTANZ_3__efficiency" 24 "DISTANZ_4__efficiency" 25 "DISTANZ_5" 26 "DISTANZ_5__dyn" 27 "DISTANZ_5__stand" 28 "DISTANZ_5__comf" 29 "DISTANZ_5__efficiency" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanz_Warnung_aktiviert"; -VAL_ 804 ACC_Status_Zusatzanz 0 "keine Anzeige" 1 "Bild 1 (Fzg. Silhouette, typ. farblos)" 2 "Bild 2 (Fzg. Farbe 1, typ. grau)" 3 "Bild 3 (Fzg. Farbe 2, typ. rot)" 4 "Bild 4 (Symbol 1 ACCplus, typ. Doppelfzg. gelb)" 5 "Bild 5 (Symbol 2 ACCplus, typ. Doppelfzg. grau)" 6 "Bild 6 (Fzg. Farbe 2, typ. rot) mit Priorität im Kombi (Pop-up)"; -VAL_ 804 ACC_Texte 0 "keine_Anzeige" 1 "ACC_nicht_verfuegbar" 2 "ACC_und_AWV_nicht_verfuegbar" 3 "ACC_keine_Sensorsicht" 4 "ACC_und_AWV_keine_Sensorsicht" 5 "ACC_Steigung_zu_gross" 6 "ACC_nur_in_Fahrstufe_verfuegbar" 7 "ACC_Parkbremse_betaetigt" 8 "ACC_ESP_Eingriff" 9 "ACC_Bitte_uebernehmen" 10 "ACC_HDC_betaetigt" 11 "ACC_Geschwindigkeitsgrenze" 12 "ACC_Schalthebelposition" 13 "ACC_Drehzahl" 14 "ACC_Kupplung_betaetigt" 15 "ACC_Aktivierverhinderung" 16 "ACC_Abschaltung" 17 "ACC_Parkassistent_aktiv" 18 "ACC_ESC_aus" 19 "ACC_Charisma_Modus_inkompatibel" 20 "ACC_Stehendes_Objekt_voraus" 21 "ACA_Fahreruebernahme" 22 "ACA_Querfuehrung_nicht_verfuegbar"; -VAL_ 804 ACC_Texte_braking_guard 0 "keine_Anzeige" 1 "AWV_aus" 2 "AWV_Warnung" 3 "AWV_Demomodus" 4 "AWV_Systemstoerung" 5 "AWV_Eingriff" 6 "AWV_Vorwarnung_aus" 7 "AWV_keine_Sensorsicht"; -VAL_ 804 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis"; -VAL_ 804 ACC_Zeitluecke_Abstandswarner 61 "Freifahrt" 62 "nicht_definiert" 63 "keine_Anzeige"; -VAL_ 804 ACC_Abstand_Abstandswarner 509 "Freifahrt" 510 "nicht_definiert" 511 "keine_Anzeige"; -VAL_ 804 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw"; -VAL_ 804 ACC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; -VAL_ 804 ACC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; -VAL_ 804 ACC_Texte_Abstandswarner 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "zurzeit_eingeschraenkt"; -VAL_ 870 Fast_Send_Rate_Active 0 "1 Hz" 1 "50 Hz"; -VAL_ 1720 KBI_Variante_USA 0 "keine USA-Variante" 1 "USA-Variante"; -VAL_ 1720 KBI_Variante 0 "Zeiger Kombiinstrument" 1 "Volldisplay Kombiinstrument"; -VAL_ 1720 KBI_BCmE_aktiv 0 "Anzeige_nicht_aktiv" 1 "Anzeige_aktiv"; -VAL_ 1720 KBI_Sparhinweis_quittiert 0 "nicht_quittiert" 1 "quittiert"; -VAL_ 1720 KBI_Tankfuellstand_Prozent 126 "Init" 127 "Fehler"; -VAL_ 1720 KBI_Nachtanken_erkannt 0 "Geberbetrieb" 1 "Nachtankmodus"; -VAL_ 1720 KBI_Tankinhalt_hochaufl 16382 "Init" 16383 "Fehler"; -VAL_ 1720 KBI_Max_Tankinhalt 254 "Init" 255 "Fehler"; diff --git a/opendbc_repo/opendbc/dbc/vw_pq.dbc b/opendbc_repo/opendbc/dbc/vw_pq.dbc deleted file mode 100644 index 6f14789135..0000000000 --- a/opendbc_repo/opendbc/dbc/vw_pq.dbc +++ /dev/null @@ -1,1676 +0,0 @@ -VERSION "" - - -NS_ : - NS_DESC_ - CM_ - BA_DEF_ - BA_ - VAL_ - CAT_DEF_ - CAT_ - FILTER - BA_DEF_DEF_ - EV_DATA_ - ENVVAR_DATA_ - SGTYPE_ - SGTYPE_VAL_ - BA_DEF_SGTYPE_ - BA_SGTYPE_ - SIG_TYPE_REF_ - VAL_TABLE_ - SIG_GROUP_ - SIG_VALTYPE_ - SIGTYPE_VALTYPE_ - -BS_: - -BU_: XXX - - -BO_ 1394 ZAS_1: 2 XXX - SG_ Fehlerspeichereintrag__ZAS_ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_ZAS_1_3 : 8|7@1+ (1,0) [0|0] "" XXX - SG_ Frei_ZAS_1_2 : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_15_SV : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_ZAS_1_1 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_P__Parklichtstellung_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_50__Starten_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_X__Startvorgang_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_15__Z_ndung_ein_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ S_Kontakt__Schl_ssel_steckt_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1336 Wischer_1: 2 XXX - SG_ Blockierung_Heckwischer_erkannt : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Wischer_1_2 : 12|3@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag__Wischer_ : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Scheibenwischer_Hec : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Wascher_Heck : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Scheibenwischer_Heck_eingeschal : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Blockierung_Frontwischer_erkann : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Wischer_1_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Waschduesenheizung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Parklage_Frontwischer : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Frontwischer_Schnel : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Frontwischer_Normal : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Wascher_Front : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Frontwischer__eingeschaltet : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1464 WFS_1: 2 XXX - SG_ WFS_Textbits : 8|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_WFS_1_1 : 1|7@1+ (1,0) [0|0] "" XXX - SG_ WFS_LED : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1096 Waehlhebel_1: 4 XXX - SG_ Frei_Waehlhebel_1_1 : 29|3@1+ (1,0) [0|0] "" XXX - SG_ Test_aktiv_Flag : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Waehlhebel_1 : 24|4@1+ (1,0) [0|15] "" XXX - SG_ Waehlhebel_Testergebnis : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Fehler_Waehlhebel : 8|8@1+ (1,0) [0|0] "" XXX - SG_ Waehlhebelposition : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Waehlhebel_Initialisierung : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Shiftlock_Position : 0|3@1+ (1,0) [0|0] "" XXX - -BO_ 1496 Verbauliste_1: 8 XXX - SG_ TV_Tuner : 63|1@1+ (1,0) [0|0] "" XXX - SG_ DSP : 62|1@1+ (1,0) [0|0] "" XXX - SG_ CD_Wechsler : 61|1@1+ (1,0) [0|0] "" XXX - SG_ Spracheingabe : 60|1@1+ (1,0) [0|0] "" XXX - SG_ Telematik : 59|1@1+ (1,0) [0|0] "" XXX - SG_ Navigation : 58|1@1+ (1,0) [0|0] "" XXX - SG_ Telefon : 57|1@1+ (1,0) [0|0] "" XXX - SG_ Radio : 56|1@1+ (1,0) [0|0] "" XXX - SG_ MMI_vorne : 55|1@1+ (1,0) [0|0] "" XXX - SG_ MMI_hinten : 54|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_11 : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Klimabedienteil_HL : 52|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_10 : 50|2@1+ (1,0) [0|0] "" XXX - SG_ Tankgeber : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Assistenzfahrlicht : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Memory_hinter_Fahrer : 47|1@1+ (1,0) [0|0] "" XXX - SG_ Sitzmemory_hinten : 46|1@1+ (1,0) [0|0] "" XXX - SG_ Sitzmemory_Beifahrer : 45|1@1+ (1,0) [0|0] "" XXX - SG_ Anh_ngersteuergeraet : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Energiemanagement : 43|1@1+ (1,0) [0|0] "" XXX - SG_ Wischermodul : 42|1@1+ (1,0) [0|0] "" XXX - SG_ EZS___Kessy__Komfort_ : 41|1@1+ (1,0) [0|0] "" XXX - SG_ Verdecksteuergeraet : 40|1@1+ (1,0) [0|0] "" XXX - SG_ Standheizung : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_9 : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Einparkhilfe : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Klimasteuergeraet_Komfort : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Gateway : 35|1@1+ (1,0) [0|0] "" XXX - SG_ Lenksaeulenmodul : 34|1@1+ (1,0) [0|0] "" XXX - SG_ Reifendruck : 33|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstrument_Komfort : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Dachmodul : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Memory : 30|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_HR : 29|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_HL : 28|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_BT : 27|1@1+ (1,0) [0|0] "" XXX - SG_ TSG_FT : 26|1@1+ (1,0) [0|0] "" XXX - SG_ ZKE : 25|1@1+ (1,0) [0|0] "" XXX - SG_ BSG_Komfort : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Verbauliste_1_8 : 19|5@1+ (1,0) [0|0] "" XXX - SG_ Stabi_Entkopplung : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Waehlhebel : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Batteriemanager : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Daempfer_SG : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Niveauregulierung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ EZS___Kessy__Antrieb_ : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsbooster : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Antrieb : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Einspritzpumpe : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Allrad : 7|1@1+ (1,0) [0|0] "" XXX - SG_ BSG_Antrieb : 6|1@1+ (1,0) [0|0] "" XXX - SG_ ADR : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Climatronic_Antrieb : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ABS : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Getriebesteuergeraet : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Motorsteuergeraet : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1488 Systeminfo_1: 6 XXX - SG_ CAN_Stand_4_1_Antrieb_Daten_Hau : 44|4@1+ (1,0) [0|15] "" XXX - SG_ CAN_Stand_4_1_Antrieb_Daten_Neb : 40|4@1+ (1,0) [0|15] "" XXX - SG_ CAN_Stand_4_1_Komfort_Daten_Hau : 36|4@1+ (1,0) [0|15] "" XXX - SG_ CAN_Stand_4_1_Komfort_Daten_Neb : 32|4@1+ (1,0) [0|15] "" XXX - SG_ Frei_Systeminfo_1_6 : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Viertuerer : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Rechtslenker : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrzeug_Index : 24|4@1+ (1,0) [0|0] "" XXX - SG_ Fahrzeug_Generation : 20|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrzeug_Derivat : 16|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrzeug_Marke_2 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Fahrzeug_Klasse : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Verbauinformation_gueltig : 7|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Infotainment_verbaut : 6|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Infotainment_in_Diagnose : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Sleep_CAN_Infotainment : 4|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Komfort_in_Diagnose : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Sleep_CAN_Komfort : 2|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Antrieb_in_Diagnose : 1|1@1+ (1,0) [0|0] "" XXX - SG_ CAN_Extern_zugeschaltet : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 268 Slave_1: 8 XXX - SG_ Delta_reduziertes_Sollmoment : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Delta_Drosselklappenwinkel : 32|16@1+ (1,0) [0|0] "" XXX - SG_ Frei_Slave_1_1 : 25|7@1+ (1,0) [0|0] "" XXX - SG_ Delta_Zuendwinkelausgabe : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Ubat_Freigabe_DVE__Slave_ : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Drosselklappe_Sollwertbegrenzun : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Einspritzverbot_lernen__Slave_ : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Master_erkannt__Slave_ : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Momentenausgabe : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Getriebe_Moment : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Bremsenbotschaft : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Indiziertes_Istmoment__Slave_ : 0|16@1+ (0.0015259,0) [0|99.998] "%" XXX - SG_ Timeout_Bremsenbotschaft : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1332 Sitz_info: 2 XXX - SG_ Positionserkennung_Beifahrersit : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Beifahrersitz_im_vorderen_Dritt : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Positionserkennung_Fahrersitz_u : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrersitz_im_vorderen_Drittel : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Sitzinfo : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Checksumme_Sitzinfo : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1810 PSG_3: 2 XXX - SG_ Selbsttestergebnis : 0|16@1+ (1,0) [0|0] "" XXX - -BO_ 1298 PSG_2: 8 XXX - SG_ RAM_Inhalt_4 : 48|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Inhalt_3 : 32|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Inhalt_2 : 16|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Inhalt_1 : 0|16@1+ (1,0) [0|0] "" XXX - -BO_ 274 PSG_1: 8 XXX - SG_ Pumpentemperatur__2_1_ : 48|16@1+ (0.0625,0) [0|4096] "K" XXX - SG_ Pumpentemperatur__3_2_2_ : 44|12@1+ (1,0) [0|0] "" XXX - SG_ Zylinderzaehler__3_2_2_ : 43|3@1+ (1,0) [1|8] "Zaehler" XXX - SG_ Ansteuerdauer__3_2_2_ : 32|11@1+ (0.0469,0) [0|96] "NW" XXX - SG_ Nockenwellendrehzahl__3_2_2_ : 20|12@1+ (4,0) [0|16380] "upm" XXX - SG_ Pumpen_Statuswort__3_2_2_ : 0|20@1+ (1,0) [0|0] "" XXX - -BO_ 1300 NOX_1: 8 XXX - SG_ OBD_fuer_NOX : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_NOX1_4 : 53|3@1+ (1,0) [0|0] "" XXX - SG_ IP2 : 52|1@1+ (1,0) [0|0] "" XXX - SG_ IP1 : 51|1@1+ (1,0) [0|0] "" XXX - SG_ IP0 : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Sondenheizung_NOX : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Offsetkorrektur_NOX : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_NOX1_3 : 43|5@1+ (1,0) [0|0] "" XXX - SG_ Sauerstoff_binaer : 32|11@1+ (1,-200) [-200|1847] "mV" XXX - SG_ Frei_NOX1_2 : 27|5@1+ (1,0) [0|0] "" XXX - SG_ Sauerstoff_linear : 16|11@1+ (1,0) [0|2047] "1000/Lambd" XXX - SG_ Frei_NOX1_1 : 11|5@1+ (1,0) [0|0] "" XXX - SG_ NOX_Signal : 0|11@1+ (1,0) [0|2047] "ppm" XXX - -BO_ 1424 Niveau_1: 6 XXX - SG_ Beladungszustand : 40|8@1+ (1,0) [0|253] "Zuladung" XXX - SG_ Fehlerspeichereintrag__Niveau_1 : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Systemstatus__Niveau_1_ : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Reserve_Fahrzeugart : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrzeugart_Niveau : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Textbits__Niveau_1_ : 32|4@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_HL : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_HR : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_VL : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_VR : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Absenkung_Fahrzeug : 27|1@1+ (1,0) [0|0] "" XXX - SG_ Anhebung_Fahrzeug : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Verstellung_aktiv : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Kompressorlauf_in_Kuerze : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Niveau_1_5 : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Taster_Niveau : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Parkniveau : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Zwischenniveau : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Niveaustati : 16|4@1+ (1,0) [0|0] "" XXX - SG_ MSG_Einschraenkung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_Beeinflussung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Warnlampe_Niveau_1 : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Niveau_1_1 : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Niveau_1 : 8|4@1+ (1,0) [0|15] "Zaehler" XXX - SG_ Checksumme_Niveau_1 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1328 Navigation_1: 7 XXX - SG_ Kreuzungstyp : 54|2@1+ (1,0) [0|3] "" XXX - SG_ Entfernung_bis_Kreuzung : 48|6@1+ (5,0) [0|315] "m" XXX - SG_ Entfernung_bis_Kurvenanfang : 40|8@1+ (1,0) [0|255] "m" XXX - SG_ Voarusliegende_Kurvenrichtung : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Vorausliegender_Kurvenverlauf : 32|7@1+ (50,0) [0|6350] "m" XXX - SG_ Fehler_Navigation : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Anzahl_Fahrbahnen__0_ist_unguel : 28|3@1+ (1,0) [1|7] "" XXX - SG_ Strassentyp : 24|4@1+ (1,0) [0|15] "" XXX - SG_ Laenderkennung : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Vorzeichen_Gierrate______ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Gierratenfehler : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Gierrate : 0|14@1+ (0.01,0) [0|100] "deg/sek" XXX - -BO_ 1792 MSG_3: 3 XXX - SG_ MSG_Konfiguration : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Lage_des_OT_Impuls : 0|16@1+ (0.01172,-384) [-384|384] "KW" XXX - -BO_ 1280 MSG_2: 8 XXX - SG_ RAM_Adresse_4 : 48|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Adresse_3 : 32|16@1+ (1,0) [0|0] "" XXX - SG_ RAM_Adresse_2 : 16|16@1+ (1,0) [0|0] "" XXX - SG_ Ram_Adresse_1 : 0|16@1+ (1,0) [0|0] "" XXX - -BO_ 256 MSG_1: 8 XXX - SG_ Kurbelwellendrehzahl__3_2_2_ : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Soll_Foerderbeginn_KW__3_2_2_ : 40|16@1+ (0.01172,-384) [-384|384] "KW" XXX - SG_ Soll_Foerderbeginn_NW__3_2_2_ : 28|12@1+ (0.01172,0) [0|768] "degNW" XXX - SG_ Soll_Voreinspritzung : 16|12@1+ (1,0) [0|0] "" XXX - SG_ Soll_Einspritzmenge : 0|16@1+ (0.03125,0) [0|2047] "mg/H" XXX - -BO_ 1796 Motor_NOX: 8 XXX - SG_ Frei_Motor_NOX_1_2 : 24|40@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_NOX_1_1 : 19|5@1+ (1,0) [0|0] "" XXX - SG_ Heizleistungsanforderung : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Offsetkorrektur_moeglich : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Betriebsbereich : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Abgastemperatur_NOX : 8|8@1+ (5,-40) [-40|1230] "C" XXX - SG_ Abgasdruck_NOX : 0|8@1+ (5,600) [600|1870] "mbar" XXX - -BO_ 900 Motor_Momente: 8 XXX - SG_ Momentenangaben_ungenau__Moment : 35|2@1+ (1,0) [0|0] "" XXX - -BO_ 1408 Motor_Flexia: 8 XXX - SG_ Ansaugsystem m0 : 63|1@1+ (1,0) [0|0] "" XXX - SG_ Hubraum m0 : 56|7@1+ (0.1,0) [0|12.7] "l" XXX - SG_ Steigung_der_Befuellungskennlin m1 : 56|8@1+ (0.001,0) [0|0.255] "l/mm" XXX - SG_ Anzahl_Zylinder m0 : 52|4@1+ (1,0) [0|15] "Vent./Zyl." XXX - SG_ Bewertungsfaktor_Russindex_Turb m1 : 50|6@1+ (0.1,0) [0|6.3] "" XXX - SG_ Anzahl_Ventile m0 : 49|3@1+ (1,0) [0|7] "Vent./Zyl." XXX - SG_ Bewertungsfaktor_Verschleissind m1 : 44|6@1+ (0.1,0) [0|6.3] "" XXX - SG_ Hersteller_Code m1 : 40|4@1+ (1,0) [0|15] "" XXX - SG_ Motorleistung m0 : 40|9@1+ (1,0) [0|512] "KW" XXX - SG_ Max_Drehmoment m0 : 32|8@1+ (10,0) [0|2550] "Nm" XXX - SG_ Normierter_Verbrauch m1 : 32|8@1+ (10,0) [0|2550] "l/Zyl." XXX - SG_ Oelniveauschwelle m1 : 24|8@1+ (0.25,0) [0|63.75] "cm" XXX - SG_ Drehzahl_MaxNorm m0 : 24|8@1+ (100,0) [0|25500] "U/min" XXX - SG_ Verschleissindex : 16|8@1+ (1,0) [0|254] "" XXX - SG_ Russindex : 8|8@1+ (1,0) [0|254] "" XXX - SG_ Verbrennungsart : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_Flexia_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Warm_Up_Cycle : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Driving_Cycle : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Motor_Flexia : 1|3@1+ (1,0) [0|15] "" XXX - SG_ Multiplex_Schalter_Motor_Flexia M : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1416 Motor_7: 8 XXX - SG_ Oltemperatur : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_7_3 : 40|16@1+ (1,0) [0|0] "" XXX - SG_ Ladedruck : 32|8@1+ (0.01,0) [0|2.54] "bar" XXX - SG_ Vorzeichen_Motordrehzahlgradien : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Motordrehzahlgradient : 24|7@1+ (1,0) [0|126] "U/min" XXX - SG_ Hoeheninfo__Motor_7_ : 16|8@1+ (0.00787,0) [0|2] "" XXX - SG_ Klemme_DFM : 8|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ PTC___Gluehstifte_ausgeschaltet : 5|3@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_7_1 : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag__Motor_7_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Statusbit_Geschwindikeitsbegren : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Geschwindigkegrenzung_aktivierb : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Leerlauf_Solldrehzahl_auf_Max_W : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1160 Motor_6: 8 XXX - SG_ Zaehler_Motor_6 : 60|4@1+ (1,0) [0|15] "" XXX - SG_ Frei_Motor_6_4 : 58|2@1+ (1,0) [0|0] "" XXX - SG_ ltemperaturschutz : 57|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_Bremseingriff_Freigabe : 56|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_6_3 : 48|8@1+ (1,0) [0|0] "" XXX - SG_ Ruckmeldung_Momenten : 40|8@1+ (0.39,0) [0|100] "" XXX - SG_ GRA_Sollbeschleunigung : 32|8@1+ (0.024,-3.984) [-3.984|2.112] "m/s2" XXX - SG_ Hoeheninfo__Motor_6_ : 24|8@1+ (0.00787,0) [0|2] "" XXX - SG_ Istmoment_f_r_Getriebe : 16|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Sollmoment_f_r_Getriebe : 8|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Checksumme_Motor_6 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1152 Motor_5: 8 XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Motortext_Bits__4_1_ : 52|4@1+ (1,0) [0|0] "" XXX - SG_ Doppelte_Momente : 51|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_Hauptschalter : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Anlasser_Ausspuren : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Anlasser_Freigabe : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Klimadrucksignal__Motor_5_ : 40|8@1+ (0.2,0) [0|50.8] "bar" XXX - SG_ K_hlerluefteransteuerung : 32|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Verbrauch_Ueberlauf : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Kraftstoffverbrauchssignal : 16|15@1+ (1,0) [0|32767] "ul" XXX - SG_ Klimakompressor_Leistungsreduzi : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Kennfeldkuehlung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Klimakompressor_aus__Motor_5_ : 13|1@1+ (1,0) [0|0] "" XXX - SG_ CAT_Warnung : 12|1@1+ (1,0) [0|0] "" XXX - SG_ OBD_2_Lampe : 11|1@1+ (1,0) [0|0] "" XXX - SG_ E_Gas_Lampe : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Vorgluehlampe__Motor_5_ : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Ladekontroll_Lampe : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Code M : 6|2@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_norm__Verbrauch m3 : 0|6@1+ (20,0) [0|1260] "l/Zyl" XXX - SG_ Multiplex_Info_Motortyp m2 : 0|6@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Drehzahl_MD_Max m1 : 0|6@1+ (100,0) [0|6300] "U/min" XXX - SG_ Multiplex_Info_Max_Drehmoment m0 : 0|6@1+ (10,0) [0|630] "Nm" XXX - -BO_ 896 Motor_3: 8 XXX - SG_ Drosselklappenpoti : 56|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Motor_Wunschdrehzahl : 48|8@1+ (25,0) [0|6350] "U/min" XXX - SG_ Motordrehzahlbeeinflussung : 40|8@1+ (0.392,0) [0|100] "%" XXX - SG_ Kein_Start_Stop : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Kein_E_Gas : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Reserviert_Motor_3_1 : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Vorzeichen_Rad_Wunschmoment : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Rad_Wunschmoment : 24|12@1+ (0.39,0) [0|1597] "MDI" XXX - SG_ Fahrpedal_Rohsignal : 16|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Ansauglufttemperatur : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX - SG_ Fehlerstatus_Ansauglufttemperat : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Motorsteuerger_t_gesperrt : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Drosselklappenwinkel_ungenau : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrpedalwert_ungenau__Motor_3_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Motor_3_1 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Motor_Wunschdrehzahl_Priorit_t : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Uebertemperaturschutz__Motor_3_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Vorgluehmeldung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 648 Motor_2: 8 XXX - SG_ Minimales_Motormoment_bei_Zuend : 56|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Begrenzungsmoment : 48|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Leerlaufsolldrehzahl__Motor_2_ : 40|8@1+ (10,0) [0|2540] "U/min" XXX - SG_ Soll_Geschwindigkeit_bei_GRA_Be : 32|8@1+ (1.28,0) [0|325] "km/h" XXX - SG_ Fahrzeuggeschwindigkeit : 24|8@1+ (1.28,0) [0|325] "km/h" XXX - SG_ GRA_Status : 22|2@1+ (1,0) [0|0] "" XXX - SG_ OBD_2_freeze_frame : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Normalbetrieb : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Klima__4_1_ : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kuhlmitteltempera : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Bremstestschalter : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Bremslichtschalter : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Kuehlmitteltemperatur__Motor_2_ : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX - SG_ Multiplex_Code_Motor_2 M : 6|2@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Motorcode__4_x_ m1 : 0|6@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Getriebecode m2 : 0|6@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Info_Max_Moment__Norm m3 : 0|6@1+ (10,0) [0|630] "Nm" XXX - SG_ Multiplex_Info_CAN_Stand m0 : 0|6@1+ (1,0) [0|0] "" XXX - -BO_ 640 Motor_1: 8 XXX - SG_ Fahrerwunschmoment : 56|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ mechanisches_Motor_Verlustmomen : 48|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Fahrpedalwert_oder_Drosselklapp : 40|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ inneres_Motor_Moment_ohne_exter : 32|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Motordrehzahl : 16|16@1+ (0.25,0) [0|16256] "U/min" XXX - SG_ inneres_Motor_Moment : 8|8@1+ (0.39,0) [0|99] "MDI" XXX - SG_ Momentenangaben_ungenau : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Getriebe_Momentene : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Brems_Momenteneing : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Time_Out_Bremsen_Botschaft : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Kupplungsschalter : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Kickdownschalter : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrpedalwert_ungenau__Motor_1_ M : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Leergasinformation : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 262 Master_3: 8 XXX - SG_ Frei_Master_3_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Motortemperatur_linearisiert : 48|8@1+ (0.75,-48) [-48|143.25] "" XXX - SG_ Indiziertes_Sollmoment_f_r_Vmax : 32|16@1+ (0.0015259,0) [0|100] "%" XXX - SG_ Relative_Momentenanforderung_de : 16|16@1+ (0.003052,0) [0|200] "%" XXX - SG_ Delta_Motormoment_aus_Verlustmo : 0|16@1+ (0.003052,-100) [-100|100] "%" XXX - -BO_ 260 Master_2: 8 XXX - SG_ Ubat_Freigabe_DVE : 45|1@1+ (1,0) [0|0] "" XXX - SG_ DK_Sollwertbegrenzung : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Einspritzverbot_DV_E_lernen : 43|1@1+ (1,0) [0|0] "" XXX - SG_ Master_erkannt : 42|1@1+ (1,0) [0|0] "" XXX - SG_ Vmax_Begrenzung_aktiv : 41|1@1+ (1,0) [0|0] "" XXX - SG_ SA_Verbot_von_FGR : 40|1@1+ (1,0) [0|0] "" XXX - SG_ Pedalwert_Komplement : 24|16@1+ (1,0) [0|0] "" XXX - SG_ Zaehler__Master_2_ : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Normierter_Fahrpedalwinkel : 0|16@1+ (0.001526,0) [0|100] "%" XXX - -BO_ 258 Master_1: 8 XXX - SG_ Stationaere_Solldrehzahl : 56|8@1+ (10,0) [0|2550] "Umin" XXX - SG_ Drehmoment_LLR__I_Anteil_ : 40|16@1+ (0.003052,-100) [-100|100] "%" XXX - SG_ Drehmoment_LLR__PD_Anteil_ : 24|16@1+ (0.003052,-100) [-100|100] "%" XXX - SG_ Drehmoment_LLR__Luftpfad_ : 8|16@1+ (0.003052,-100) [-100|100] "%" XXX - SG_ Frei_Master_1_1 : 4|4@1+ (1,0) [0|0] "" XXX - SG_ LLR_ist_aktiv : 3|1@1+ (1,0) [0|0] "" XXX - SG_ I_Anteil_der_LLR_aktiv : 2|1@1+ (1,0) [0|0] "" XXX - SG_ PD_Anteil_der_LLR_aktiv : 1|1@1+ (1,0) [0|0] "" XXX - SG_ LLR_Freigabe_nach_Start : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1984 LWS_Kalibrierung: 2 XXX - SG_ Frei_LWS_Kalibrierung_1_1 : 15|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Identifier : 8|7@1+ (1,0) [0|0] "" XXX - SG_ Frei_LWS_Kalibrierung_1_2 : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Command_Dode_Word : 0|4@1+ (1,0) [0|0] "" XXX - -BO_ 1986 Lenkwinkel_Init: 4 XXX - SG_ Kodierbytes : 8|24@1+ (1,0) [0|0] "" XXX - SG_ Identiifier_f_r_LWS_Init : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 192 Lenkwinkel_1__RB_: 2 XXX - SG_ Vorzeichen__RB_ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel__RB_ : 5|10@1+ (2.5,-720) [-720|720] "" XXX - SG_ LWS_OK__RB_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Abgleich__RB_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkwinkel_1_1__RB_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ FINE_CHECK__RB_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ COARSE_CHECK__RB_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 196 Lenkwinkel_1__ITT_: 2 XXX - SG_ Vorzeichen__ITT_ : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel__ITT_ : 5|10@1+ (1.5,-768) [-768|766.5] "" XXX - SG_ LWS_OK : 4|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Abgleich__ITT_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ LWS_Initialisierung__ITT_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ FINE_CHECK__ITT_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ COARSE_CHECK__ITT_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 194 Lenkwinkel_1: 8 XXX - SG_ Checksumme_Lenkwinkel_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Kodierdaten : 48|8@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Lenkwinkel_1 : 44|4@1+ (1,0) [0|15] "" XXX - SG_ Status_KL30_Ausfall__z_Zt__nur : 43|1@1+ (1,0) [0|0] "" XXX - SG_ Interner_Status : 41|2@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkwinkel_1_1 : 40|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkwinkel_ID : 32|8@1+ (1,0) [0|0] "" XXX - SG_ Lenkradwinkel_Geschwindigkeit_S : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkradwinkel_Geschwindigkeit : 16|15@1+ (0.04375,0) [0|1433.6] "Grad/Sek" XXX - SG_ Lenkradwinkel_Sign : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkradwinkel : 0|15@1+ (0.04375,0) [0|1433.6] "Grad" XXX - -BO_ 1502 Lenkhilfe_Fehler: 7 XXX - SG_ Werkstattcode : 48|8@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Signal : 45|3@1+ (1,0) [0|7] "" XXX - SG_ Sensorcodierung_Lenkhilfe : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Kennliniencodierung_Lenkhilfe : 40|4@1+ (1,0) [0|15] "Kennlinie" XXX - SG_ Geber_f__Lenkw__Speicher_ausles : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstr__Speicher_auslesen : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Steuerger__Speicher_auslesen : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Steuergeraet_defekt : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_3 : 32|4@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_4 : 30|2@1+ (1,0) [0|0] "" XXX - SG_ Geber_f__Lenkwi__k__CAN_Komm_sp : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Geber_f__Lenkwinkel_k__CAN_Komm : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstr__k__CAN_Kommunik__sp : 27|1@1+ (1,0) [0|0] "" XXX - SG_ Kombiinstrument_k__CAN_Kommunik : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Steuergeraet_k__CAN_Kommunik__S : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Steuergeraet_keine_CAN_Kommunik : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks__nach_Mas : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks_nach_Mass : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks__nach___s : 21|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Spannung_Ks__nach__ : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Temperaturschutz_sp_ : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Temperaturschutz : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Betrieb_unpl__Sig__sp : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfe_Betrieb_unpl__Signal : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_k__Kommunik__sp : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_keine_Kommunik_ : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_defekt_sp_ : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_defekt : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_Unterbrechung_s : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_Unterbrechung : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhilfesensor_Ks_nach_Masse_s : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkhifesensor_Ks_nach_Masse : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_15_zu_klein_sp_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_15_zu_klein : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_5 : 4|2@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_klein_sp_ : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_klein : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_gro__sp_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Spannung_Kl_30_zu_gro_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 976 Lenkhilfe_1: 2 XXX - SG_ Fehlerspeichereintrag__Lenkhilf : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Lenkhilfe_1_2 : 9|6@1+ (1,0) [0|0] "" XXX - SG_ Fehlerlampe_Lenkhilfe : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Lastinformation : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Lastinformation : 0|7@1+ (1,0) [0|127] "A" XXX - -BO_ 1312 Kombi_3: 8 XXX - SG_ Frei_Kombi_3_2 : 60|4@1+ (1,0) [0|0] "" XXX - SG_ Kilometerstand : 40|20@1+ (1,0) [0|1000000] "km" XXX - SG_ Fehlerstatus_Standzeit : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Standzeit : 24|15@1+ (4,0) [0|131068] "sec" XXX - SG_ Frei_Kombi_3_1 : 20|4@1+ (1,0) [0|0] "" XXX - SG_ Schluesselinfo : 16|4@1+ (1,0) [0|15] "" XXX - SG_ Kombi_Multiplex_Code M : 14|2@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Niveauregulie m3 : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Marke m1 : 11|3@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Lenkhilfe m3 : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Dieselpumpe m3 : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Lenkwinkel m3 : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Baureihe m1 : 8|3@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Laendervariante m0 : 8|6@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Allrad m3 : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Bordnetz m3 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_ACC m3 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Airbag m3 : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Generation m1 : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Klima m3 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_ABS m3 : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Verbauliste_Motor m3 : 0|1@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Derivat m1 : 0|4@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Sprachvariante m0 : 0|8@1+ (1,0) [0|0] "" XXX - SG_ Kombi_Multiplex_Reifenumfang m2 : 0|12@1+ (1,0) [0|4095] "mm" XXX - -BO_ 1056 Kombi_2: 8 XXX - SG_ Frei_Kombi_2_2 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kl__58_s : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58s__Kombi_2_ : 48|7@1+ (1,0) [0|100] "%" XXX - SG_ Fehlerstatus_Kl__58_d : 47|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58d__Kombi_2_ : 40|7@1+ (1,0) [0|100] "%" XXX - SG_ Kuehlmitteltemp__4_1__Kombi_2_ : 32|8@1+ (0.75,-48) [-48|142.5] "C" XXX - SG_ Oeltemperatur_4_1 : 24|8@1+ (1,-60) [-60|194] "C" XXX - SG_ Aussentemp__ungefiltert_4_1__Ko : 16|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Aussentemperatur_gefiltert : 8|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Fehlerspeichereintrag__Kombi_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Kombi_2_1 : 4|3@1+ (1,0) [0|0] "" XXX - SG_ Anhaenger_erkannt : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerst__Kuehlmitteltemp__4_1 : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Oeltemperatur_4_1 : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Aussentemp__4_1 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 800 Kombi_1: 8 XXX - SG_ Frei_Kombi_1_3 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Angezeigte_Geschwindigkeit : 46|10@1+ (0.32,0) [0|325] "km/h" XXX - SG_ Blinker_rechts_4_1 : 45|1@1+ (1,0) [0|0] "" XXX - SG_ Blinker_links_4_1 : 44|1@1+ (1,0) [0|0] "" XXX - SG_ Gesetzte_Zeitluecke__Kombi_1_ : 43|1@1+ (1,0) [0|0] "" XXX - SG_ ADR_Summer_abgeschaltet : 42|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Kombi_1_2 : 40|2@1+ (1,0) [0|0] "" XXX - SG_ Geschwindigkeit__Kombi_1_ : 25|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Signalquelle_Geschwindigkeit_4_ : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Tankwarnung : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Tankinhalt : 16|7@1+ (1,0) [0|126] "l" XXX - SG_ Tankstop : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Kombi_1_7 : 12|3@1+ (1,0) [0|0] "" XXX - SG_ Kombi_im_Stellgliedtest : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Ladekontroll_Lampe__Kombi_ : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsinfo : 8|2@1+ (1,0) [0|0] "" XXX - SG_ Vorgluehlampe__Kombi_1_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Tankwarnlampe : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Heissleuchten_Vorwarnung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Kuehlmittelmangel : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Dynamische_Oeldruckwarnung : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Oeldruck : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Tank : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrertuer_4_1 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1504 Klima_1: 8 XXX - SG_ Aussentemp__ungef__Sto_f__4_1 : 56|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Fehlerspeichereintrag__Klima_ : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Klima_1_5 : 50|5@1+ (1,0) [0|0] "" XXX - SG_ AC_Schalter : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Temperatureinheit : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Kuehlerluefteransteuerung__Klim : 40|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Geblaeselast_4_1 : 32|8@1+ (0.4,0) [0|101.6] "%" XXX - SG_ Kompressorlast : 24|8@1+ (0.25,0) [0|63.5] "Nm" XXX - SG_ Klimadrucksignal__Klima_1_ : 16|8@1+ (0.2,0) [0|50.8] "bar" XXX - SG_ Aussentemp__ungef__4_1__Klima_1 : 8|8@1+ (0.5,-50) [-50|77] "C" XXX - SG_ Kaeltemitteldruck_veraltet : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Kompressormoment_veraltet_4_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Keine_Heizleistg_gewuenscht_4_1 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Kompressorzustand__4_1_ : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Frontscheibe : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Heckscheibe : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrerwunsch_Zuheizer : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Drehzahlanhebung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 906 GRA_Neu: 4 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ GRA_Hauptschalt : 8|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Abbrechen : 9|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Down_kurz : 10|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Up_kurz : 11|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Down_lang : 12|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Up_lang : 13|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Fehler_Bed : 14|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Kodierinfo : 15|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Neu_Setzen : 16|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Recall : 17|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Sender : 18|2@1+ (1,0) [0|3] "" XXX - SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX - SG_ GRA_Tip_Down : 24|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Tip_Up : 25|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Zeitluecke : 26|2@1+ (1,0) [0|3] "" XXX - SG_ GRA_Sta_Limiter : 28|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Typ_Hauptschalt : 29|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Sportschalter : 30|1@1+ (1,0) [0|1] "" XXX - SG_ GRA_Fehler_Tip : 31|1@1+ (1,0) [0|1] "" XXX - -BO_ 904 GRA: 3 XXX - SG_ Checksumme_GRA_alt : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_GRA_alt : 15|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR_Bedienteil_Fehler : 14|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR_beschleunigen : 13|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR_verzoegern : 12|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Tipschalter__Wie : 11|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Tipschalter__Set : 10|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Tipschalter__Aus : 9|1@1+ (1,0) [0|0] "" XXX - SG_ GRA_alt__ADR___Hauptschalter : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_GRA_alt : 0|8@1+ (1,0) [0|255] "" XXX - -BO_ 1352 Getriebe_4: 3 XXX - SG_ Testparameter_2 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Testparameter_1 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ Waehlhebelausleuchtung : 4|4@1+ (1,0) [0|0] "" XXX - SG_ Frei_Getriebe_4_1 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Testfreigabeflag : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Handbremserinnerung_s_Lampe : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Shiftlock_Getriebe_4 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1344 Getriebe_2: 8 XXX - SG_ eingelegte_Fahrstufe : 60|4@1+ (1,0) [0|0] "" XXX - SG_ Ganganzeige_Kombi___Getriebe_Va : 56|4@1+ (1,0) [0|15] "" XXX - SG_ Fehlerlampe_f_r_Kupplung_bei_VL : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Anforderung_Kriechadaption : 54|1@1+ (1,0) [0|0] "" XXX - SG_ ECO_Anzeige__4_1_ : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Shift_Lock_Lampe : 52|1@1+ (1,0) [0|0] "" XXX - SG_ Unterdrueckung_von_Warnungen : 51|1@1+ (1,0) [0|0] "" XXX - SG_ Gong : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Starter_wird_angesteuert : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Hochschaltlampe : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Synchronisationszeit : 40|8@1+ (20,0) [0|5080] "ms" XXX - SG_ invertierte_Synchronisations_Wu : 32|8@1+ (25,0) [0|6350] "U/min" XXX - SG_ Synchronisations_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "U/min" XXX - SG_ Gradientenbegrenzung : 16|8@1+ (10,0) [0|2540] "Nm/s" XXX - SG_ Leerlaufsolldrehzahl__Getriebe : 8|8@1+ (10,0) [0|2540] "U/min" XXX - SG_ Zahler_Getriebe_2 : 4|4@1+ (1,0) [0|15] "" XXX - SG_ Zwischengasflag : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Ecomatic__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Schubabschaltunterstuetzung : 1|1@1+ (1,0) [0|0] "" XXX - SG_ LFR_Adaption_Freigabeflag : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1088 Getriebe_1: 8 XXX - SG_ Wandlerverlustmoment : 56|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ Fehlerspeichereintrag__Getriebe : 55|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 51|4@1+ (1,0) [0|15] "" XXX - SG_ Gang_eingelegt : 50|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltabsicht : 49|1@1+ (1,0) [0|0] "" XXX - SG_ Motor_aus : 48|1@1+ (1,0) [0|0] "" XXX - SG_ OBD_Status__Getriebe_1___4_1_ : 46|2@1+ (1,0) [0|0] "" XXX - SG_ Kuehlleistung : 44|2@1+ (1,0) [0|0] "" XXX - SG_ Getriebe_Notlauf : 40|4@1+ (1,0) [0|0] "" XXX - SG_ Fahrwiderstandsindex : 32|8@1+ (0.249,-31.6) [-31.6|31.6] "" XXX - SG_ inneres_Soll_Motormoment : 24|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ Uebertragungsfunktion : 16|8@1+ (0.1,0) [0|25.4] "" XXX - SG_ Waehlhebelposition__Getriebe_1_ : 12|4@1+ (1,0) [0|0] "" XXX - SG_ Zielgang_oder_eingelegter_Gang : 8|4@1+ (1,0) [0|0] "" XXX - SG_ EGS_Anforderung : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Kodierung_im_MSG : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Leerlaufsolldrehzahlanhebung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Wandlerkupplung : 3|2@1+ (1,0) [0|0] "" XXX - SG_ Klimakompressor_aus__Getriebe_1 : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Getriebe_und_Wandlerschu : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltung_aktiv__Getriebe_1_ : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 912 Gate_Komf_1: 8 XXX - SG_ GK1_Sta_RDK_Warn : 0|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Anhaen : 1|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Licht3 : 3|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Tuerkont : 4|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Li_vorn : 5|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SleepAckn : 7|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_CharismaModus m1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ GK1_SamFktNr M : 12|4@1+ (1,0) [0|15] "" XXX - SG_ GK1_Fa_Tuerkont : 16|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_RueckfahrSch : 17|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_ELV_verrieg : 18|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Kessy_2 : 19|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Stdhzg : 20|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SH_Verbau : 21|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_ParkFrontWi : 22|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_KW_Warm : 23|1@1+ (1,0) [0|1] "" XXX - SG_ BCM_Remotestart_Betrieb : 24|1@1+ (1,0) [0|1] "" XXX - SG_ BSK_HL_geoeffnet : 26|1@1+ (1,0) [0|1] "" XXX - SG_ BSK_HR_geoeffnet : 27|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Rueckfahr : 28|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_links : 29|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_rechts : 30|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_mitte : 31|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BLS_ILM : 32|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_EDC_ILM : 33|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Blinker_li : 34|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Blinker_re : 35|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_def_P_verr : 36|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_LS1_Fernlicht : 37|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_Licht2 : 38|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_LSM : 39|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Count_Anhaen : 40|4@1+ (1,0) [0|15] "" XXX - SG_ BSK_BT_geoeffnet : 41|1@1+ (1,0) [0|1] "" XXX - SG_ BSK_HD_Hauptraste : 43|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BLS_AAG : 44|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_EDC_AAG : 45|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Anhaenger : 46|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_BrLi_Anhaen : 47|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Abblendlicht : 48|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Fernlicht : 49|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Wischer_vorn : 50|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Sta_ILM_F_1 : 51|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Abbl_VL_def : 52|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Abbl_VR_def : 53|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Blink_Autob : 54|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Warnblk_Status : 55|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SH_laeuft : 56|1@1+ (1,0) [0|1] "" XXX - SG_ SH1_ein_Wasserpumpe : 57|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Nebel_ein : 58|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Bremslicht : 59|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_Anh_abgesteckt : 60|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_AnhKonLamp : 61|1@1+ (1,0) [0|1] "" XXX - SG_ LDS_Stellung_AFL : 62|1@1+ (1,0) [0|1] "" XXX - SG_ GK1_SH_Zusatzfkt : 63|1@1+ (1,0) [0|1] "" XXX - - -BO_ 1340 Fahrwerk_1: 1 XXX - SG_ Frei_Fahrwerk_1_2 : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Fahrwerk_1_1 : 6|2@1+ (1,0) [0|0] "" XXX - SG_ Einstellung_Fahrwerkdaempfung_4 : 4|3@1+ (1,0) [0|7] "" XXX - SG_ Ansteuererung_Fahrzeugniveau : 0|4@1+ (1,0) [0|15] "" XXX - -BO_ 1472 EPB_1: 8 XXX - SG_ COUNTER : 0|4@1+ (1,0) [0|15] "" XXX - SG_ EP1_Fehler_Sta : 4|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ EP1_Sta_EPB : 6|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Sta_Schalter : 7|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Spannkraft : 8|5@1+ (1,0) [0|30] "Unit_KiloNewto" XXX - SG_ EP1_Schalterinfo : 13|2@1+ (1,0) [0|3] "" XXX - SG_ EP1_Sta_NWS : 15|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Neig_winkel : 16|8@1+ (1,-128) [-128|127] "Unit_PerCentOfForceOfGravi" XXX - SG_ EP1_Verzoegerung : 24|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" XXX - SG_ EP1_Fehlereintr : 32|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Freigabe_Ver : 33|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_AutoHold_zul : 34|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_AutoHold_aktiv : 35|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_SleepInd : 36|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Status_Kl_15 : 37|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Lampe_AutoP : 38|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Bremslicht : 39|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Warnton1 : 40|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Warnton2 : 41|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_AnfShLock : 42|1@1+ (1,0) [0|1] "" XXX - SG_ EPB_Autoholdlampe : 43|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_QualNeigWi : 44|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_KuppModBer : 45|2@1+ (1,0) [0|3] "" XXX - SG_ EP1_HydrHalten : 47|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Fkt_Lampe : 48|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EP1_Warnton : 49|1@1+ (1,0) [0|1] "" XXX - SG_ EP1_Fehler_BKL : 50|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ EP1_Fehler_gelb : 51|1@1+ (1,0) [0|1] "" XXX - SG_ EP1__Text : 52|4@1+ (1,0) [0|8] "" Vector__XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 1326 Diag_Lenkhilfe: 3 XXX - SG_ Werkstattcode__Diag_ : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Multiplex_Signal__Diag_ : 13|3@1+ (1,0) [0|7] "" XXX - SG_ Befehl_Sensorcodierung_Lenkhilf : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Befehl_Kennliniencodierung_Lenk : 8|4@1+ (1,0) [0|0] "" XXX - SG_ Befehl_Fehlerspeicher_loeschen : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1432 Daempfer_1: 2 XXX - SG_ Frei_Daempfer_1_4 : 12|4@1+ (1,0) [0|0] "" XXX - SG_ Textbits_Daempfer : 8|4@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeicherbit__Daempfer_1_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Systemstatus__Daempfer_1_ : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Daempfer_1_3 : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Status_CDC_Taster : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Daempfer_1_2 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Daempferregelung_4_1 : 0|3@1+ (1,0) [0|7] "" XXX - -BO_ 1392 BSG_Last: 4 XXX - SG_ Klimaanlage_abschalten : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Sitzbelueftung_abschalten : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Wischwasserheizung_abschalten : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Lenkradheizung_abschalten : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Sitze_abschalten : 27|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Aussenspiegel_abschalt : 26|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Frontscheibe_abschalte : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Heizbare_Heckscheibe_abschalten : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Batteriespannung_Bordnetzbatter : 16|8@1+ (0.05,5) [5|17.7] "V" XXX - SG_ Motorhaubenkontakt : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Leuchtweitenregulierung : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag__BSG_Last : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Zustand_der_Starterbatterie : 11|2@1+ (1,0) [0|0] "" XXX - SG_ Zustand_der_Bordnetzbatterie : 9|2@1+ (1,0) [0|0] "" XXX - SG_ LL_Drehzahlanhebung : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_L : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_BSG_Last_1_1 : 4|3@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_50 : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_X : 2|1@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_15 : 1|1@1+ (1,0) [0|0] "" XXX - SG_ ZAS_Klemme_S : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1136 BSG_Kombi: 5 XXX - SG_ Frei_BSG_Kombi_1_3 : 36|4@1+ (1,0) [0|0] "" XXX - SG_ Ruecksitzlehne_HR_verr__4_1 : 35|1@1+ (1,0) [0|0] "" XXX - SG_ Ruecksitzlehne_HL_verr__4_1 : 34|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerlampe_Lenkhilfe_veraltet : 33|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerlampe_Lenkhilfe__BSG_Komb : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kl__58s : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58s__BSG_Kombi_ : 24|7@1+ (1,0) [0|100] "%" XXX - SG_ Fehlerstatus_Kl__58d : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Klemme_58d__BSG_Kombi_ : 16|7@1+ (1,0) [0|100] "%" XXX - SG_ Unterspannung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_BSG_Kombi_1_2 : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Heckdeckel_geoeffnet : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Motorhaube_geoeffnet : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Tuer_hinten_rechts_geoeffnet : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Tuer_hinten_links_geoeffnet : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Beifahrertuer_geoeffnet : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrertuer_geoeffnet : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Lade_Kontrollampe : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_BSG_Kombi_1_1 : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Rueckfahrlicht : 5|1@1+ (1,0) [0|0] "" XXX - SG_ DWA_Akku : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Warnblink_Mode : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Anhaenger_Kontrollampe : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Blinker_rechts_Kontrollampe : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Blinker_links_Kontrollampe : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 424 Bremse_6: 3 XXX - SG_ Checksumme_Bremse_6 : 16|8@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Bremse_6 : 12|4@1+ (1,0) [0|15] "" XXX - SG_ Status_Bremsdruck__Bremse_6__du : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_6_1 : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsdruck__Bremse_6_ : 0|10@1+ (0.3255,-40) [-40|293] "bar" XXX - -BO_ 1192 Bremse_5: 8 XXX - SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 52|4@1+ (1,0) [0|15] "" XXX - SG_ Bremslicht_ECD : 51|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsentemperatur_vorn : 48|3@1+ (125,125) [125|1000] "C" XXX - SG_ Frei_Bremse_5_5 : 40|8@1+ (1,0) [0|0] "" XXX - SG_ Offset_Gierrate : 32|8@1+ (0.05,-6.375) [-6.375|6.375] "deg/s" XXX - SG_ Vorzeichen_Bremsdruck : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Bremsdruck_durch_ESP_Sys : 30|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsdruck_ungueltig : 29|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_5_3 : 28|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsdruck : 16|12@1+ (0.1,0) [0|250] "bar" XXX - SG_ Vorzeichen_der_Giergeschwindigk : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Gierrate_ungueltig : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Giergeschwindigkeit : 0|14@1+ (0.01,0) [0|100] "Grad/sec" XXX - -BO_ 672 Bremse_4: 3 XXX - SG_ Frei_Bremse_4_1 : 17|7@1+ (1,0) [0|0] "" XXX - SG_ Einheit_Kupplungssteifigkeit : 16|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_Vorgabewert_hinten_Kupplung : 8|8@1+ (0.7874,0) [0|100] "%" XXX - SG_ ABS_Vorgabewert_mitte_Kupplungs : 0|8@1+ (3,-381) [-381|378] "Nm/min" XXX - -BO_ 1184 Bremse_3: 8 XXX - SG_ Radgeschw__HR_4_1 : 49|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_4 : 48|1@1+ (1,0) [0|0] "" XXX - SG_ Radgeschw__HL_4_1 : 33|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_3 : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Radgeschw__VR_4_1 : 17|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_2 : 16|1@1+ (0.01,0) [0|325] "km/h" XXX - SG_ Radgeschw__VL_4_1 : 1|15@1+ (0.01,0) [0|326] "km/h" XXX - SG_ Frei_Bremse_3_1 : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1440 Bremse_2: 8 XXX - SG_ gemessene_Querbeschleunigung : 63|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_2_2 : 62|1@1+ (1,0) [0|0] "" XXX - SG_ Impulszahl : 56|6@1+ (1,0) [0|63] "" XXX - SG_ Fehlerstatus_Wegimpulse_4_1 : 55|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremse_2_5 : 54|1@1+ (1,0) [0|0] "" XXX - SG_ Warnlampe_DDS : 53|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerspeichereintrag_Bremse : 52|1@1+ (1,0) [0|0] "" XXX - SG_ Wegimpulszaehlerstatus : 51|1@1+ (1,0) [0|0] "" XXX - SG_ Wegimpulse_Vorderachse : 40|11@1+ (1,0) [0|2047] "" XXX - SG_ Zeitstempel : 24|16@1+ (1,0) [0|65535] "tics" XXX - SG_ mittlere_Raddrehzahl__Bremse_2 : 9|15@1+ (0.002,0) [0|65.278] "U/sec" XXX - SG_ Querbeschl__TimerTic M : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Timer m1 : 0|8@1+ (0.04,0) [0|10.2] "usec" XXX - SG_ Querbeschleunigung m0 : 0|8@1+ (0.01,-1.27) [-1.27|1.27] "g" XXX - -BO_ 416 Bremse_1: 8 XXX - SG_ Geschwindigkeitsersatzwert : 63|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_Systemstatus_4_1 : 62|1@1+ (1,0) [0|0] "" XXX - SG_ ESP_Passiv_getastet : 61|1@1+ (1,0) [0|0] "" XXX - SG_ ASR_Steuerger_t : 60|1@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 56|4@1+ (1,0) [0|15] "" XXX - SG_ MSR_Eingriffsmoment : 48|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ ASR_Eingriffsmoment_schnell : 40|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ ASR_Eingriffsmoment_langsam : 32|8@1+ (0.39,0) [0|99.06] "MDI" XXX - SG_ Geschwindigkeit_neu__Bremse_1_ : 17|15@1+ (0.01,0) [0|326.39] "km/h" XXX - SG_ Aktiver_Bremskraftverstaerker : 16|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_in_Diagnose : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Schlechtwegausblen : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Schlechtwegausblendung : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Fahrer_bremst__Bremse_1___4_1_ : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Bremskontroll_Lampe : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Lampe_ASR___ESP : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Lampe_ABS : 8|1@1+ (1,0) [0|0] "" XXX - SG_ EBV_Eingriff : 7|1@1+ (1,0) [0|0] "" XXX - SG_ ASR_Schaltbeeinflussung : 5|2@1+ (1,0) [0|0] "" XXX - SG_ ESP_Eingriff : 4|1@1+ (1,0) [0|0] "" XXX - SG_ EDS_Eingriff : 3|1@1+ (1,0) [0|0] "" XXX - SG_ ABS_Bremsung__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX - SG_ MSR_Anforderung : 1|1@1+ (1,0) [0|0] "" XXX - SG_ ASR_Anforderung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 680 Bremsbooster_1: 3 XXX - SG_ Fehlerspeichereintrag_Booster : 23|1@1+ (1,0) [0|0] "" XXX - SG_ Loseschalter_unplausibel_Boost : 22|1@1+ (1,0) [0|0] "" XXX - SG_ Position_Standby : 21|1@1+ (1,0) [0|0] "" XXX - SG_ ADR_Relais_ge_ffnet : 20|1@1+ (1,0) [0|0] "" XXX - SG_ Status_Bremsbooster_Steuerung : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Bremsbooster_verf_gbar : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Eingriff_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Bremseingriff_Fahrer : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Bremsbooster_1_1 : 12|4@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_Booster_1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Checksumme_Booster_1 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1400 BatMan_1: 1 XXX - SG_ Fehlerspeichereintrag__BatMan_ : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Leistungsrelais : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Messung_Starterleitung : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Zustand_Starterleitung : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Umschaltrelais_Bordnetzbatterie : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Ladung_Starterbatterie : 1|2@1+ (1,0) [0|0] "" XXX - SG_ Startmodus : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 704 Allrad_1: 5 XXX - SG_ Kupplungssteifigkeit_Hinten__Is : 32|8@1+ (0.7874,0) [0|100] "%" XXX - SG_ Fehlerspeichereintrag_Allrad_1 : 31|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Allrad_1_1 : 26|5@1+ (1,0) [0|0] "" XXX - SG_ Schaltung_Vorwarnung : 25|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltung_aktiv__Allrad_1_ : 24|1@1+ (1,0) [0|0] "" XXX - SG_ Ganginfo__PNG_ : 20|4@1+ (1,0) [0|0] "" XXX - SG_ PNG_Anzeige_blinkend : 19|1@1+ (1,0) [0|0] "" XXX - SG_ PNG_Status_4_1 : 16|3@1+ (1,0) [0|0] "" XXX - SG_ Kupplungssteifigkeit_Mitte__Ist : 8|8@1+ (3,-381) [-381|378] "Nm/min" XXX - SG_ Einheit_der_Kupplungssteifigkei : 7|1@1+ (1,0) [0|0] "" XXX - SG_ Geschwindigkeitsbegrenzung : 6|1@1+ (1,0) [0|0] "" XXX - SG_ Allrad_Warnlampe : 5|1@1+ (1,0) [0|0] "" XXX - SG_ Notlauf : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Kupplung_komplett_offen : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Fehlerstatus_Kupplungssteifigke : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Ubertemperaturschutz__Allrad_1_ : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Fehler_Allrad_Kupplung : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 1360 Airbag_2: 2 XXX - SG_ OOP_Beifahrer : 14|2@1+ (1,0) [0|0] "" XXX - SG_ OOP_Fahrer : 12|2@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_hinten_mitte : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_hinten_recht : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_hinten_links : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Belegungserkennung_Beifahrersit : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Checksumme_Airbag_2__reserviert : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 80 Airbag_1: 4 XXX - SG_ CHECKSUM : 24|8@1+ (1,0) [0|0] "" XXX - SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX - SG_ Fehlerspeichereintrag : 19|1@1+ (1,0) [0|0] "" XXX - SG_ Frei_Airbag_1_2 : 18|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_im_Stellgliedtest : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_in_Diagnose : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtwarnung_Beifahrer : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtschalter_Beifahrer : 14|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtwarnung_Fahrer : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Gurtschalter_Fahrer : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_Systemfehler : 11|1@1+ (1,0) [0|0] "" XXX - SG_ Kindersitzerkennung : 10|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_deaktiviert : 9|1@1+ (1,0) [0|0] "" XXX - SG_ Airbag_Lampe : 8|1@1+ (1,0) [0|0] "" XXX - SG_ Crash_Intensitaet : 5|3@1+ (1,0) [0|111] "B" XXX - SG_ Rollover : 4|1@1+ (1,0) [0|0] "" XXX - SG_ Seiten_Crash_Beifahrer : 3|1@1+ (1,0) [0|0] "" XXX - SG_ Seiten_Crash_Fahrer : 2|1@1+ (1,0) [0|0] "" XXX - SG_ Heck_Crash : 1|1@1+ (1,0) [0|0] "" XXX - SG_ Front_Crash : 0|1@1+ (1,0) [0|0] "" XXX - -BO_ 864 ADR_System: 8 XXX - SG_ S_Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ S_Frei_ADR_1_1 : 52|4@1+ (1,0) [0|0] "" XXX - SG_ S_Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX - SG_ S_Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX - SG_ S_Fehlerspeichereintrag_Bremsbo : 46|1@1+ (1,0) [0|0] "" XXX - SG_ S_ADR_Relais_geoeffnet : 45|1@1+ (1,0) [0|0] "" XXX - SG_ S_Bremsbooster_Status : 43|2@1+ (1,0) [0|0] "" XXX - SG_ S_Eingriff_Bremsbooster : 42|1@1+ (1,0) [0|0] "" XXX - SG_ S_Loeseschalter_unplausibel : 41|1@1+ (1,0) [0|0] "" XXX - SG_ S_Bremseingriff_Fahrer : 40|1@1+ (1,0) [0|0] "" XXX - SG_ S_Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX - SG_ S_Ansteuerung_optischer_Fahrerh : 38|1@1+ (1,0) [0|0] "" XXX - SG_ S_Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX - SG_ S_Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX - SG_ S_Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX - SG_ S_Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX - SG_ S_Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX - SG_ S_Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX - SG_ S_Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX - SG_ S_Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX - SG_ S_Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX - SG_ S_Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX - SG_ S_Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ S_Status_ADR_1__S_ : 13|2@1+ (1,0) [0|0] "" XXX - SG_ S_Fehler_ADR_1__S_ : 12|1@1+ (1,0) [0|0] "" XXX - SG_ S_Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ S_Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX - -BO_ 608 ADR_2: 4 XXX - SG_ Frei_ADR_2_2 : 27|5@1+ (1,0) [0|0] "" XXX - SG_ Anforderung_Bremsdruck : 16|11@1+ (0.0625,0) [0|127.9375] "bar" XXX - SG_ Frei_ADR_2_1 : 14|2@1+ (1,0) [0|0] "" XXX - SG_ Relais_Test_Fehler : 13|1@1+ (1,0) [0|0] "" XXX - SG_ Standby : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_ADR_2 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Checksumme_ADR_2 : 0|8@1+ (1,0) [0|0] "" XXX - -BO_ 1324 ADR_1: 8 XXX - SG_ Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX - SG_ Frei_ADR_1_5 : 52|4@1+ (1,0) [0|0] "" XXX - SG_ Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX - SG_ Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX - SG_ Reserviert_ADR_1_1 : 40|7@1+ (1,0) [0|0] "" XXX - SG_ Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_optischer_Fahrerhin : 38|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX - SG_ Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX - SG_ Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX - SG_ Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX - SG_ Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX - SG_ Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX - SG_ Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX - SG_ Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX - SG_ Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX - SG_ Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX - SG_ Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX - SG_ Status_ADR_1 : 13|2@1+ (1,0) [0|0] "" XXX - SG_ Fehler_ADR_1 : 12|1@1+ (1,0) [0|0] "" XXX - SG_ Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX - -BO_ 1550 Einheiten_1: 2 XXX - SG_ MFA_v_Einheit_02 : 0|1@1+ (1,0) [0|1] "" XXX - -BO_ 872 ACC_System: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ ACS_Sta_ADR : 12|2@1+ (1,0) [0|3] "" XXX - SG_ ACS_ADR_Schub : 14|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Schubabsch : 15|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_StSt_Info : 16|2@1+ (1,0) [0|3] "" XXX - SG_ ACS_MomEingriff : 18|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Typ_ACC : 19|2@1+ (1,0) [0|3] "" XXX - SG_ ACS_FreigSollB : 23|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Sollbeschl : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX - SG_ ACS_Anhaltewunsch : 38|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_Fehler : 39|1@1+ (1,0) [0|1] "" XXX - SG_ ACS_zul_Regelabw : 40|8@1+ (0.005,0) [0|1.265] "Unit_MeterPerSeconSquar" XXX - SG_ ACS_max_AendGrad : 48|8@1+ (0.02,0) [0.02|5.06] "Unit_MeterPerSeconSquar" XXX - -BO_ 1386 ACC_GRA_Anzeige: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ ACA_StaACC : 8|3@1+ (1,0) [0|7] "" XXX - SG_ ACA_ID_StaACC : 11|5@1+ (1,0) [0|31] "" XXX - SG_ ACA_Fahrerhinw : 16|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_AnzDisplay : 17|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Zeitluecke : 18|4@1+ (1,0) [0|15] "" XXX - SG_ ACA_V_Wunsch : 24|8@1+ (1,0) [0|255] "Unit_KiloMeterPerHour" XXX - SG_ ACA_kmh_mph : 32|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Akustik1 : 33|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Akustik2 : 34|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_PrioDisp : 35|2@1+ (1,0) [0|3] "" XXX - SG_ ACA_gemZeitl : 40|4@1+ (1,0) [0|15] "" XXX - SG_ ACA_ACC_Verz : 44|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_StaGRA : 48|3@1+ (1,0) [0|7] "" XXX - SG_ ACA_ID_StaGRA : 51|5@1+ (1,0) [0|31] "" XXX - SG_ ACA_Codierung : 56|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Tachokranz : 57|1@1+ (1,0) [0|1] "" XXX - SG_ ACA_Aend_Zeitluecke : 58|1@1+ (1,0) [0|1] "" XXX - SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX - -BO_ 208 Lenkhilfe_3: 6 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ LH3_BS_Spiegel : 8|4@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX - SG_ LH3_LM : 16|10@1+ (1,0) [0|1023] "" XXX - SG_ LH3_LMSign : 26|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_LMValid : 27|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_Sta_DSR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ LH3_BLW : 32|12@1+ (0.15,0) [0|615] "" XXX - SG_ LH3_BLWSign : 44|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_BLWValid : 45|1@1+ (1,0) [0|1] "" XXX - SG_ LH3_Lenkungstyp : 46|2@1+ (1,0) [0|3] "" XXX - -BO_ 978 Lenkhilfe_2: 7 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_Geradeaus : 12|1@1+ (1,0) [0|1] "" XXX - SG_ LH2_Sta_Charisma : 13|3@1+ (1,0) [0|7] "" XXX - SG_ LH2_Sta_HCA : 16|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_Ausg_LW1 : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LH2_Ausg_LW1_gue : 21|1@1+ (1,0) [0|1] "" XXX - SG_ LH2_StatEPS_PLA : 24|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_aktLenkeingriff : 32|8@1+ (1,0) [0|255] "" XXX - SG_ LH2_PLA_Err : 48|4@1+ (1,0) [0|15] "" XXX - SG_ LH2_PLA_Abbr : 52|4@1+ (1,0) [0|15] "" XXX - -BO_ 210 HCA_1: 5 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX - SG_ HCA_Status : 12|4@1+ (1,0) [0|15] "" XXX - SG_ LM_Offset : 16|15@1+ (0.03125,0) [0|300] "cNm" XXX - SG_ LM_OffSign : 31|1@1+ (1,0) [0|1] "" XXX - SG_ Vib_Freq : 32|4@1+ (4,0) [0|60] "Hz" XXX - SG_ Vib_Amp : 36|4@1+ (0.5,0) [0|7.5] "Nm" XXX - -BO_ 644 Motor_Bremse: 6 XXX - SG_ MOB_Standby : 12|1@1+ (1,0) [0|1] "" XXX - SG_ MOB_Freigabe : 14|1@1+ (1,0) [0|1] "" BCM_Gateway,Bremse_MK25AESP,Gateway_separat - SG_ MOB_Anhaltewunsch : 13|1@1+ (1,0) [0|1] "" Bremse_MK25AESP,Getriebe_DQ - SG_ MOB_CHECKSUM : 0|8@1+ (1,0) [0|255] "" Bremse_MK25AESP - SG_ MOB_COUNTER : 8|4@1+ (1,0) [0|15] "" Bremse_MK25AESP - SG_ TSK_v_Begrenzung_aktiv : 15|1@0+ (1,0) [0|1] "" XXX - SG_ TSK_ax_Getriebe_01 : 40|8@1+ (0.048,0) [0|255] "m/s2" XXX - SG_ MOB_Bremsstgr : 16|11@1+ (0.048852,0) [0|100] "Unit_PerCent" Vector__XXX - SG_ MOB_Bremsmom : 27|13@1+ (4,0) [0|32760] "Unit_NewtoMeter" Bremse_MK25AESP - -BO_ 870 AWV: 8 XXX - SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX - SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX - SG_ AWV_Text : 12|4@1+ (1,0) [0|14] "" Vector__XXX - SG_ AWV_1_Freigabe : 16|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_1_Prefill : 17|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_1_Parameter : 18|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AWV_only : 20|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_CityANB_Auspraegung : 21|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Halten : 22|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_Teilbremsung_Freigabe : 23|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Status : 24|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Fehler : 25|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_SU_Warnzeit : 26|2@1+ (1,0) [0|3] "" Vector__XXX - SG_ AWV_2_SU_Bremsruck : 28|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_SU_Gong : 29|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_SU_Lampe : 30|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Umfeldwarn : 31|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Freigabe : 32|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Ruckprofil : 33|3@1+ (1,0) [0|7] "" Vector__XXX - SG_ AWV_2_Warnton : 36|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Warnsymbol : 37|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Infoton : 38|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Gurtstraffer : 39|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Menueanf : 40|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Vorw_Menueanf : 41|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Status : 42|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_Konfiguration_Vorw_Status : 43|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ AWV_2_Abstandswarnung : 51|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_Zielbremsung_Freigabe : 52|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_CM_Anforderung : 53|1@1+ (1,0) [0|1] "" Vector__XXX - SG_ ANB_Ziel_Teilbrems_Verz_Anf : 54|10@1+ (0.024,-20.016) [0|1023] "Unit_MeterPerSeconSquar" Vector__XXX - -BO_ 1470 LDW_Status: 8 XXX - SG_ LDW_Lernmodus_rechts : 0|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus_links : 2|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Lernmodus : 9|3@1+ (1,0) [0|3] "" XXX - SG_ LDW_Textbits : 12|4@1+ (1,0) [0|15] "" XXX - SG_ LDW_Gong : 16|2@1+ (1,0) [0|3] "" XXX - SG_ LDW_Kameratyp : 18|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lampe_gelb : 19|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Lampe_gruen : 20|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_links : 21|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_SW_Warnung_rechts : 22|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_KD_Fehler : 23|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_DLC : 24|8@1+ (0.01,-1.25) [-1.25|1.25] "" XXX - SG_ LDW_TLC : 32|5@1+ (0.1,0) [0|3] "" XXX - SG_ LDW_Seite_DLCTLC : 37|1@1+ (1,0) [0|1] "" XXX - SG_ LDW_Frueh_Spaet : 38|2@1+ (1,0) [0|3] "" XXX - -BO_ 428 Bremse_8: 8 XXX - SG_ BR8_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX - SG_ BR8_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX - SG_ BR8_Sta_ACC_Anf : 12|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Verz_EPB_akt : 13|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_Br_temp : 14|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_Br_Druck : 15|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_TolAbgl_HL : 16|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX - SG_ BR8_TolAbgl_HR : 24|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX - SG_ BR8_Istbeschl : 32|9@1+ (0.02,-7.22) [-7.22|2.98] "Unit_MeterPerSeconSquar" XXX - SG_ BR8_Sta_HW_BLS : 41|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_QB_LBeschl : 42|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_ESC_Mode : 43|2@1+ (1,0) [0|3] "" XXX - SG_ BR8_aktBrSyst : 45|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Fa_bremst : 46|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_StaBrSyst : 47|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Laengsbeschl : 48|10@1+ (0.03125,-16) [-15.96875|15.9375] "Unit_MeterPerSeconSquar" XXX - SG_ BR8_Sta_ADR_BR : 58|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Quattro : 59|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_VerzReg : 60|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Sta_BLS : 61|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Verz_EPB : 62|1@1+ (1,0) [0|1] "" XXX - SG_ BR8_Check_EPB : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 928 Bremse_10: 8 XXX - SG_ B10_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX - SG_ B10_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX - SG_ B10_QB_Wegimp_VL : 12|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Wegimp_VR : 13|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Wegimp_HL : 14|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Wegimp_HR : 15|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Wegimp_VL : 16|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_Wegimp_VR : 26|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_Wegimp_HL : 36|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_Wegimp_HR : 46|10@1+ (1,0) [0|1000] "" XXX - SG_ B10_QB_Fahrtr_VL : 56|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Fahrtr_VR : 57|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Fahrtr_HL : 58|1@1+ (1,0) [0|1] "" XXX - SG_ B10_QB_Fahrtr_HR : 59|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_VL : 60|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_VR : 61|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_HL : 62|1@1+ (1,0) [0|1] "" XXX - SG_ B10_Fahrtr_HR : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 835 RDK_Status: 3 XXX - SG_ RKS_Reifen_VL : 0|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_VR : 1|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_HL : 2|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_HR : 3|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Reifen_RR : 4|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Warnung_2 : 5|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Warnung_1 : 6|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Systemfehler : 7|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Kalibrier_abgew : 8|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Druckdiff_Vorn : 9|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Druckdiff_Hinten : 10|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Befuellung_RR_low : 11|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Funkstoerung : 12|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_System_Aus : 13|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_KD_Fehler : 15|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Lampe : 16|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Ton : 17|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Gong : 18|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_RDK_Blinkbit : 19|1@1+ (1,0) [0|1] "" XXX - SG_ RKS_Teillast : 20|1@1+ (1,0) [0|1] "" XXX - -BO_ 914 Gate_Komf_2: 8 XXX - SG_ GK2_Sta_LSM : 0|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Lichtsensor : 1|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_VSG : 3|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Schluessel : 4|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Profil : 5|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Clima2 : 6|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_BSG4 : 7|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Sta_Kessy_4 : 8|1@1+ (1,0) [0|1] "" XXX - SG_ BS4_Gleitende_Leuchtw_Anf : 9|1@1+ (1,0) [0|1] "" XXX - SG_ BS4_GLW_Fernlicht_Anf : 10|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Blk_L_Kontrolle : 11|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Blk_R_Kontrolle : 12|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_LS_KomFehler : 14|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_LS_def : 15|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Helligkeit : 16|3@1+ (714.286,0) [0|5000.002] "Unit_Lux" XXX - SG_ GK2_VD_zu_ver : 19|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_VD_entriegelt : 20|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_VD_offen_ver : 21|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Verdeck_Anf : 22|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_VDKD_auf : 23|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Schluessel : 24|4@1+ (1,0) [0|15] "" XXX - SG_ GK2_Hardtop : 28|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_AFL_Schalter : 29|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Nebelschluss : 30|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_EM_LIN_ungueltig : 31|1@1+ (1,0) [0|1] "" XXX - SG_ GK2_Profil : 32|4@1+ (1,0) [0|15] "" XXX - SG_ GK2_Kl_StSt_Info : 36|2@1+ (1,0) [0|3] "" XXX - SG_ GK2_BSG_StSt_Info : 38|2@1+ (1,0) [0|3] "" XXX - SG_ GK2_BEM_P_Generator : 40|8@1+ (50,0) [0|12700] "Unit_Watt" XXX - SG_ GK2_BEM_Abschaltstufen : 48|3@1+ (1,0) [0|7] "" XXX - SG_ GK2_BEM_DFM : 51|5@1+ (3.225,0.025) [0.025|100] "Unit_PerCent" XXX - SG_ GK2_Kessy_StSt_Info : 56|2@1+ (1,0) [0|3] "" XXX - SG_ GK2_BEM_StSt_Info : 58|2@1+ (1,0) [0|3] "" XXX - -BO_ 954 SWA_1: 8 SWA - SG_ SWA_Textbits : 12|4@1+ (1,0) [0|15] "" XXX - SG_ SWA_Gong : 16|2@1+ (1,0) [0|3] "" XXX - SG_ SWA_Sta_passiv : 19|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Sta_aktiv : 20|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX - SG_ SWA_KD_Fehler : 59|1@1+ (1,0) [0|1] "" XXX - -BO_ 1175 Parkhilfe_01: 8 XXX - SG_ PH_Abschaltursache : 13|3@1+ (1,0) [0|7] "" XXX - SG_ PH_Opt_Anzeige_V_ein : 16|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Opt_Anzeige_H_ein : 17|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Opt_Anz_V_Hindernis : 18|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Opt_Anz_H_Hindernis : 19|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Tongeber_V_aktiv : 20|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Tongeber_H_aktiv : 21|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Tongeber_mute : 22|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Anf_Audioabsenkung : 23|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Frequenz_hinten : 32|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Lautstaerke_hinten : 36|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Frequenz_vorn : 40|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Lautstaerke_vorn : 44|4@1+ (1,0) [0|15] "" XXX - SG_ PH_Trigger_Bildaufschaltung : 48|1@1+ (1,0) [0|1] "" XXX - SG_ PH_StartStopp_Info : 49|2@1+ (1,0) [0|3] "" XXX - SG_ PH_Aufbauten_erk : 51|1@1+ (1,0) [0|1] "" XXX - SG_ PH_BerErk_vorn : 52|2@1+ (1,0) [0|3] "" XXX - SG_ PH_BerErk_hinten : 54|2@1+ (1,0) [0|3] "" XXX - SG_ PH_defekt : 56|1@1+ (1,0) [0|1] "" XXX - SG_ PH_gestoert : 57|1@1+ (1,0) [0|1] "" XXX - SG_ PH_Systemzustand : 58|3@1+ (1,0) [0|7] "" XXX - SG_ PH_Display_Kundenwunsch : 61|2@1+ (1,0) [0|3] "" XXX - SG_ PH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 1463 Bremse_11: 8 XXX - SG_ B11_HydHalten : 13|1@1+ (1,0) [0|1] "" XXX - SG_ B11_Br_StSt_Info : 14|2@1+ (1,0) [0|3] "" XXX - SG_ B11_OBD_Nib_VL : 16|4@1+ (1,0) [0|15] "" XXX - SG_ B11_OBD_Nib_VR : 20|4@1+ (1,0) [0|15] "" XXX - SG_ B11_OBD_Nib_HL : 24|4@1+ (1,0) [0|15] "" XXX - SG_ B11_OBD_Nib_HR : 28|4@1+ (1,0) [0|15] "" XXX - SG_ B11_EPB_Steller_akt : 32|1@1+ (1,0) [0|1] "" XXX - SG_ B11_EPB_Steller_gue : 33|1@1+ (1,0) [0|1] "" XXX - -BO_ 1500 Soll_Verbauliste_neu: 8 XXX - SG_ VL1_Motor_SG : 0|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Getr_SG : 1|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ABS : 2|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Kombi : 3|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_LSM : 4|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Airbag : 5|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Lenkhilfe : 6|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_dyn_LWR : 7|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_res_08 : 8|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Allrad : 9|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ADR : 10|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ADR_getrennt : 11|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_EPB : 12|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_res_13 : 13|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Daempfer : 14|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Quersperre : 15|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_MotorSlave : 16|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_SWA : 17|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_HCA : 18|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_RKA_Plus : 19|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_PLA : 20|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_WFS_KBI : 21|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Kombi_KBI : 22|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Soll_eq_Ist : 23|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_BSG_Komf : 24|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_ZKE : 25|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_FT : 26|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_BT : 27|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_HL : 28|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TSG_HR : 29|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Memory : 30|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Dachmodul_K : 31|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Zentralelektrik_II : 32|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_RDK : 33|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Lenksaeule : 34|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Gateway : 35|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Clima_Komf : 36|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Einparkhilfe : 37|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_PTC_Heizung : 38|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Standheiz : 39|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Verdeck : 40|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_RSE_I : 41|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_res_42 : 42|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_MDI_I : 43|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Anhaenger : 44|1@1+ (1,0) [0|1] "" SWA - SG_ VL1_Memory_BF : 45|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Easy_Entry_VF : 46|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Easy_Entry_VB : 47|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Heckdeckel : 48|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Rearview : 49|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Sonderfzg_SG : 50|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Tastenmodul : 51|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Kompass : 52|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_WFS_K : 53|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_GSM_Pager : 54|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_InfoElektronik : 55|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_DSP : 56|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_DAB : 57|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Telematik : 58|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Navigation : 59|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_TV_Tuner : 60|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Neigungsmodul_I : 61|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Radio : 62|1@1+ (1,0) [0|1] "" XXX - SG_ VL1_Telefon : 63|1@1+ (1,0) [0|1] "" XXX - -BO_ 1490 Ident: 8 XXX - SG_ IDT_Mux M : 0|2@1+ (1,0) [0|2] "" XXX - SG_ IDT_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" XXX - SG_ IDT_VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 2000 Diagnose_1: 8 XXX - SG_ DI1_VerlernZaehl : 0|8@1+ (1,0) [0|254] "" XXX - SG_ DI1_km_Stand : 8|20@1+ (1,0) [0|1048575] "Unit_KiloMeter" XXX - SG_ DI1_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" XXX - SG_ DI1_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" XXX - SG_ DI1_Tag : 39|5@1+ (1,0) [0|31] "Unit_Day" XXX - SG_ DI1_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" XXX - SG_ DI1_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" XXX - SG_ DI1_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" XXX - SG_ DI1_KM_Stand_alt : 62|1@1+ (1,0) [0|1] "" XXX - SG_ DI1_Zeit_alt : 63|1@1+ (1,0) [0|1] "" XXX - -CM_ SG_ 80 Checksumme_Airbag_1 "Checksum Airbag_1"; -CM_ SG_ 80 Zaehler_Airbag_1 "Counter Airbag_1"; - -CM_ SG_ 210 LM_Offset "centiNewton-meters for ease of calculation without FP math in Panda"; -CM_ SG_ 210 Vib_Amp "Steering wheel haptic, amplitude"; -CM_ SG_ 210 Vib_Freq "Steering wheel haptic, frequency"; - -CM_ SG_ 416 Zaehler_Bremse_1 "Counter Bremse_1"; - -CM_ SG_ 640 inneres_Motor_Moment "Engine Indicated Torque"; -CM_ SG_ 640 Fahrerwunschmoment "Driver Requested Torque"; -CM_ SG_ 640 mechanisches_Motor_Verlustmomen "Mechanical Torque Loss"; -CM_ SG_ 640 Fahrpedalwert_oder_Drosselklapp "Accelerator Pedal or Throttle Position"; -CM_ SG_ 640 Motordrehzahl "Engine Speed"; -CM_ SG_ 640 Momentenangaben_ungenau "Approximate Torque Values"; -CM_ SG_ 640 inneres_Motor_Moment_ohne_exter "Inner torque without external"; - -CM_ SG_ 644 MOB_CHECKSUM "Checksum MOB"; -CM_ SG_ 644 MOB_COUNTER "Counter MOB"; - -CM_ SG_ 648 Minimales_Motormoment_bei_Zuend "Minimum Torque Adjustment"; -CM_ SG_ 648 Begrenzungsmoment "Maximum Inner Torque"; -CM_ SG_ 648 Bremstestschalter "Brake Test Switch"; -CM_ SG_ 648 Soll_Geschwindigkeit_bei_GRA_Be "Desired Vehicle Speed"; -CM_ SG_ 648 Bremslichtschalter "Brake Light Switch"; -CM_ SG_ 648 Leerlaufsolldrehzahl__Motor_2_ "Target Idle Speed"; -CM_ SG_ 648 Fahrzeuggeschwindigkeit "Vehicle Speed"; -CM_ SG_ 648 Kuehlmitteltemperatur__Motor_2_ "Coolant Temperature"; - -CM_ SG_ 896 Drosselklappenpoti "Throttle Position"; -CM_ SG_ 896 Motor_Wunschdrehzahl "Desired engine speed"; -CM_ SG_ 896 Motordrehzahlbeeinflussung "Shift Target Influence"; -CM_ SG_ 896 Fahrpedal_Rohsignal "Accelerator Pedal Position"; -CM_ SG_ 896 Ansauglufttemperatur "Intake Air Temperature"; -CM_ SG_ 896 Kein_E_Gas "ETB flag"; -CM_ SG_ 896 Kein_Start_Stop "Start/stop flag"; -CM_ SG_ 896 Rad_Wunschmoment "Desired wheel torque"; - -CM_ SG_ 912 GK1_Fa_Tuerkont "Status of the driver's door rotary latch"; -CM_ SG_ 912 BSK_HL_geoeffnet "Status of the rear left door rotary latch"; -CM_ SG_ 912 BSK_HR_geoeffnet "Status of the rear right door rotary latch"; -CM_ SG_ 912 BSK_BT_geoeffnet "Status of the passenger door rotary latch"; -CM_ SG_ 912 BSK_HD_Hauptraste "Status of trunk lid main detent"; - -CM_ SG_ 1088 Zaehler_Getriebe_1 "Counter Getriebe_1"; -CM_ SG_ 1088 Waehlhebelposition__Getriebe_1_ "Gear Selector Position"; -CM_ SG_ 1088 inneres_Soll_Motormoment "Desired Inner Torque"; -CM_ SG_ 1088 Gang_eingelegt "Gear Engaged"; -CM_ SG_ 1088 Schaltabsicht "Shift Intent"; -CM_ SG_ 1088 Kuehlleistung "Cooling Power"; -CM_ SG_ 1088 Wandlerverlustmoment "Converter Torque Loss"; -CM_ SG_ 1088 Getriebe_Notlauf "Transmission_Notlauf"; -CM_ SG_ 1088 Zielgang_oder_eingelegter_Gang "target_gear_or_gear_in_engagement"; -CM_ SG_ 1088 Uebertragungsfunktion "transfer function"; -CM_ SG_ 1088 EGS_Anforderung "EGS Requirement"; -CM_ SG_ 1088 Schaltung_aktiv__Getriebe_1_ "Shift Activity"; - -CM_ SG_ 1056 Fehlerstatus_Aussentemp__4_1 "ambient temp error"; -CM_ SG_ 1056 Fehlerstatus_Oeltemperatur_4_1 "oil temp error"; -CM_ SG_ 1056 Fehlerst__Kuehlmitteltemp__4_1 "water temp error"; -CM_ SG_ 1056 Aussentemperatur_gefiltert "outside temp, filtered"; -CM_ SG_ 1056 Oeltemperatur_4_1 "kombi oil temperature"; -CM_ SG_ 1056 Kuehlmitteltemp__4_1__Kombi_2_ "kombi coolant temperature"; - -CM_ SG_ 1096 Zaehler_Waehlhebel_1 "Counter Waehlhebel_1"; - -CM_ SG_ 1152 CHECKSUM "Checksum Motor_5"; -CM_ SG_ 1152 Anlasser_Ausspuren "Starter Disable"; -CM_ SG_ 1152 Anlasser_Freigabe "Starter Release"; -CM_ SG_ 1152 Klimadrucksignal__Motor_5_ "Air conditioning pressure signal"; -CM_ SG_ 1152 Kraftstoffverbrauchssignal "Fuel consumption signal"; -CM_ SG_ 1152 K_hlerluefteransteuerung "Cooling fan control signal"; -CM_ SG_ 1152 Klimakompressor_Leistungsreduzi "Air conditioning compressor power reduction flag"; -CM_ SG_ 1152 Klimakompressor_aus__Motor_5_ "Air conditioning compressor"; -CM_ SG_ 1152 Anlasser_Freigabe "Starter release"; -CM_ SG_ 1152 OBD_2_Lampe "OBD light"; -CM_ SG_ 1152 E_Gas_Lampe "ETB light"; -CM_ SG_ 1152 Ladekontroll_Lampe "Charge light"; -CM_ SG_ 1152 Vorgluehlampe__Motor_5_ "Glow light"; - -CM_ SG_ 1160 Zaehler_Motor_6 "Counter Motor_6"; -CM_ SG_ 1160 Hoeheninfo__Motor_6_ "Altitude Correction"; -CM_ SG_ 1160 Istmoment_f_r_Getriebe "Actual torque for gear"; -CM_ SG_ 1160 Sollmoment_f_r_Getriebe "Target torque for gearbox"; -CM_ SG_ 1160 Checksumme_Motor_6 "Checksum Motor_6"; -CM_ SG_ 1160 GRA_Sollbeschleunigung "GRA target acceleration"; -CM_ SG_ 1160 Ruckmeldung_Momenten "Feedback torque-integral gear intervention"; - -CM_ SG_ 1344 Zahler_Getriebe_2 "Counter Getriebe_2"; -CM_ SG_ 1344 Hochschaltlampe "Upshift Flag"; - -CM_ SG_ 1386 ACA_V_Wunsch "255=unset"; - -CM_ SG_ 1408 Zaehler_Motor_Flexia "Counter Motor_Flexia"; -CM_ SG_ 1408 Verbrennungsart "Type of combustion"; -CM_ SG_ 1408 Max_Drehmoment "Maximum torque"; -CM_ SG_ 1408 Drehzahl_MaxNorm "RPM of maximum torque"; -CM_ SG_ 1408 Hubraum "Displacement"; -CM_ SG_ 1408 Anzahl_Zylinder "Number of cylinders"; -CM_ SG_ 1408 Anzahl_Ventile "Number of valves"; -CM_ SG_ 1408 Ansaugsystem "Induction System"; -CM_ SG_ 1408 Motorleistung "Maximum engine power"; - -CM_ SG_ 1416 Ladedruck "Boost Pressure"; -CM_ SG_ 1416 Motordrehzahlgradient "Engine speed gradient"; -CM_ SG_ 1416 Hoeheninfo__Motor_7_ "Altitude correction factor"; -CM_ SG_ 1416 Oltemperatur "Oil temperature"; - -CM_ SG_ 1470 LDW_Direction "0=right,1=left"; -CM_ SG_ 1470 XX_DLCORTLC1 "Might be DLC or TLC"; -CM_ SG_ 1470 XX_DLCORTLC2 "Might be DLC or TLC, might have wrong size"; - -CM_ SG_ 1550 MFA_v_Signal_02 "0=km/h, 1=mph"; - -VAL_ 870 AWV_Text 0 "kein_Text" 1 "FrontAssist_aus" 2 "FrontAssist_startet" 3 "FrontAssist_Warnung" 4 "FrontAssist_Sens_reinig" 5 "FrontAssist_Failure" 6 "FrontAssist_Demo" 7 "Vorhalt" 8 "Bremsung_wird_gerade_durchgefuehrt" 9 "Sensor_not_verfuegbar" 10 "Sensor_reinigen" 11 "Service_notwendig_Failure" 12 "Funktion_vom_Fahrer_deactivated" 13 "Funktion_vom_Fahrer_activated" 14 "FrontAssist_zur_Zeit_not_verfuegbar__rev_Failure"; -VAL_ 870 AWV_1_Freigabe 0 "nicht_freigegeben" 1 "freigegeben"; -VAL_ 870 AWV_1_Prefill 0 "keine_Prefill_Anf" 1 "Prefill_Anf"; -VAL_ 870 AWV_1_Parameter 0 "Defaultparametersatz" 1 "Par_leicht_erh_Empf" 2 "Par_erh_Empf" 3 "Par_hoechster_Empf"; -VAL_ 870 AWV_only 0 "ACC_und_AWV_verbaut" 1 "AWV_ohne_ACC_verbaut"; -VAL_ 870 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich"; -VAL_ 870 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten"; -VAL_ 870 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben"; -VAL_ 870 AWV_2_Status 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 870 AWV_2_Fehler 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 870 AWV_2_SU_Warnzeit 0 "frueh" 1 "normal" 2 "spaet" 3 "adaptiv"; -VAL_ 870 AWV_2_SU_Bremsruck 0 "Bremsruck_deaktiviert" 1 "Bremsruck_aktiviert"; -VAL_ 870 AWV_2_SU_Gong 0 "Gong_deaktiviert" 1 "Gong_aktiviert"; -VAL_ 870 AWV_2_SU_Lampe 0 "Lampe_deaktiviert" 1 "Lampe_aktiviert"; -VAL_ 870 AWV_2_Umfeldwarn 0 "keine_Warnung" 1 "Warnung"; -VAL_ 870 AWV_2_Freigabe 0 "keine_Ruckfreigabe" 1 "Ruckfreigabe"; -VAL_ 870 AWV_2_Ruckprofil 0 "kein_Ruck" 1 "Ruckprofil_1" 2 "Ruckprofil_2" 3 "Ruckprofil_3" 4 "Ruckprofil_4" 5 "Ruckprofil_5" 6 "not_erlaubt" 7 "not_erlaubt"; -VAL_ 870 AWV_2_Warnton 0 "Aus" 1 "Ein"; -VAL_ 870 AWV_2_Warnsymbol 0 "Aus" 1 "Ein"; -VAL_ 870 AWV_Infoton 0 "Aus" 1 "Ein"; -VAL_ 870 AWV_2_Gurtstraffer 0 "Gurt_not_straffen" 1 "Gurt_straffen"; -VAL_ 870 AWV_Konfiguration_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; -VAL_ 870 AWV_Konfiguration_Vorw_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; -VAL_ 870 AWV_Konfiguration_Status 0 "AWV_inaktiv" 1 "AWV_aktiv"; -VAL_ 870 AWV_Konfiguration_Vorw_Status 0 "AWV_Vorwarnung_inaktiv" 1 "AWV_Vorwarnung_aktiv"; -VAL_ 870 AWV_2_Abstandswarnung 0 "kein_Warnhinweis" 1 "Warnhinweis"; -VAL_ 870 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben"; -VAL_ 870 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv"; - -VAL_ 872 ACS_Sta_ADR 2 "ADR_passiv" 0 "ADR_nicht_aktiv" 1 "ADR_aktiv" 3 "irrev_Fehler" ; -VAL_ 872 ACS_ADR_Schub 1 "Verz_begr_auf_Schub" 0 "Verz_nicht_begr_auf_Schub" ; -VAL_ 872 ACS_Schubabsch 1 "SA_nicht_zulaessig" 0 "SA_zulaessig" ; -VAL_ 872 ACS_StSt_Info 3 "Systemfehler" 0 "Motorlauf_nn" 1 "Stoppverbot_Motoranlauf_nn" 2 "Motoranlauf_notwendig" ; -VAL_ 872 ACS_MomEingriff 1 "MomEingr_verhindern" 0 "keine_Beeinfl_MomEingr_Mot" ; -VAL_ 872 ACS_Typ_ACC 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 3 "frei" 2 "frei" ; -VAL_ 872 ACS_FreigSollB 0 "Sollbeschl_nicht_freigeg" 1 "Sollbeschl_freigeg" ; -VAL_ 872 ACS_Sollbeschl 2046 "ADR_nicht_aktiv" 2047 "Fehler" ; -VAL_ 872 ACS_Anhaltewunsch 0 "kein_Haltewunsch" 1 "Fzg_haelt_an" ; -VAL_ 872 ACS_Fehler 1 "Fehlerspeichereintrag" 0 "kein_Fehlerspeichereintrag" ; -VAL_ 872 ACS_zul_Regelabw 254 "ADR_nicht_aktiv" 255 "Fehler" ; -VAL_ 872 ACS_max_AendGrad 254 "Neutralwert" 0 "Neutralwert" 255 "Fehler" ; - -VAL_ 978 LH2_Sta_HCA 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active"; -VAL_ 1088 Waehlhebelposition__Getriebe_1_ 8 "P" 7 "R" 6 "N" 5 "D" 9 "U" 12 "S" 14 "T" 10 "T" 11 "T"; - -VAL_ 1386 ACA_StaACC 6 "ACC_rev_aus" 0 "Hauptschalter_aus" 4 "ACC_im_Hintergrund" 3 "ACC_aktiv" 1 "Reserve" 2 "ACC_passiv" 7 "ACC_irrev_aus" 5 "frei" ; -VAL_ 1386 ACA_ID_StaACC 0 "keine_Anzeige" ; -VAL_ 1386 ACA_Fahrerhinw 1 "Ein" 0 "Aus" ; -VAL_ 1386 ACA_AnzDisplay 1 "Anzeige_erw" 0 "Anzeige_nicht_erw" ; -VAL_ 1386 ACA_Zeitluecke 3 "Zeitluecke3" 10 "Zeitluecke10" 4 "Zeitluecke4" 14 "Zeitluecke14" 11 "Zeitluecke11" 2 "Zeitluecke2" 13 "Zeitluecke13" 9 "Zeitluecke9" 1 "Zeitluecke1" 8 "Zeitluecke8" 5 "Zeitluecke5" 15 "Zeitluecke15" 0 "nicht_definiert" 12 "Zeitluecke12" 6 "Zeitluecke6" 7 "Zeitluecke7" ; -VAL_ 1386 ACA_V_Wunsch 255 "kein_Wert_im_Speicher" ; -VAL_ 1386 ACA_kmh_mph 0 "km_h" 1 "mph" ; -VAL_ 1386 ACA_Akustik1 0 "kein_Gong" 1 "Gong" ; -VAL_ 1386 ACA_Akustik2 0 "kein_Summer" 1 "Summer" ; -VAL_ 1386 ACA_PrioDisp 1 "mittlere_Prio" 3 "keine_Anzeige_Anf" 0 "hohe_Prio" 2 "niedrige_Prio" ; -VAL_ 1386 ACA_gemZeitl 6 "Zeitluecke6" 2 "Zeitluecke2" 7 "Zeitluecke7" 13 "Zeitluecke13" 11 "Zeitluecke11" 4 "Zeitluecke4" 8 "Zeitluecke8" 12 "Zeitluecke12" 10 "Zeitluecke10" 0 "Kein_Objekt_erfasst" 1 "Zeitluecke1" 3 "Zeitluecke3" 9 "Zeitluecke9" 15 "Zeitluecke15" 14 "Zeitluecke14" 5 "Zeitluecke5" ; -VAL_ 1386 ACA_ACC_Verz 0 "ACC_verzoegert_nicht" 1 "ACC_verzoegert" ; -VAL_ 1386 ACA_StaGRA 3 "GRA_aktiv" 4 "GRA_uebertreten" 2 "GRA_passiv" 0 "Hauptschalter_aus" 6 "frei" 7 "GRA_Fehler" 1 "Reserve" 5 "frei" ; -VAL_ 1386 ACA_ID_StaGRA 0 "keine_Anzeige" ; -VAL_ 1386 ACA_Codierung 0 "ACC" 1 "GRA" ; -VAL_ 1386 ACA_Tachokranz 0 "nicht_beleuchtet" 1 "beleuchtet" ; -VAL_ 1386 ACA_Aend_Zeitluecke 1 "Anzeige_angef" 0 "keine_Anzeige" ; - -VAL_ 1472 EP1_Fehler_Sta 0 "volle_Funktion" 1 "linke_Seite_fehlerhaft" 2 "rechte_Seite_fehlerhaft" 3 "beide_Seiten_fehlerhaft"; -VAL_ 1472 EP1_Sta_EPB 0 "Bremse_geoeffnet" 1 "Bremse_geschlossen"; -VAL_ 1472 EP1_Sta_Schalter 0 "volle_Funktion" 1 "Schalter_ausser_Funktion"; -VAL_ 1472 EP1_Spannkraft 31 "Fehler"; -VAL_ 1472 EP1_Schalterinfo 0 "keine_Fahreranforderung" 1 "Fahreranforderung_oeffnen" 2 "Fahreranforderung_schliessen" 3 "Schalterfehler"; -VAL_ 1472 EP1_Sta_NWS 0 "volle_Funktion" 1 "keine_Funktion"; -VAL_ 1472 EP1_Fehlereintr 0 "kein_Fehlerspeichereintrag" 1 "Fehlerspeichereintrag"; -VAL_ 1472 EP1_Freigabe_Ver 0 "Verzoegerungsanf_nicht_freigegeb" 1 "Verzoegerungsanf_freigegeben"; -VAL_ 1472 EP1_AutoHold_zul 0 "Pers_nicht_zulaessig" 1 "Pers_zulaessig"; -VAL_ 1472 EP1_AutoHold_aktiv 0 "nein" 1 "ja"; -VAL_ 1472 EP1_SleepInd 0 "CAN_wird_benoetigt" 1 "Sleep_bereit"; -VAL_ 1472 EP1_Status_Kl_15 0 "Kl_15_aus" 1 "Kl_15_ein"; -VAL_ 1472 EP1_Lampe_AutoP 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1_Bremslicht 0 "Aus" 1 "Ein"; -VAL_ 1472 EP1_Warnton1 0 "Aus" 1 "Ein"; -VAL_ 1472 EP1_Warnton2 0 "Aus" 1 "Ein"; -VAL_ 1472 EP1_AnfShLock 0 "Aus" 1 "Ein"; -VAL_ 1472 EPB_Autoholdlampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1_QualNeigWi 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; -VAL_ 1472 EP1_KuppModBer 0 "Kuppsensor_aus_Modbereich" 1 "Kupplsensor_im_Modbereich" 2 "Sensorsignal_ungenau" 3 "Sensor_defekt"; -VAL_ 1472 EP1_HydrHalten 0 "Fzg_nicht_hydr_geh" 1 "Fzg_hydr_geh"; -VAL_ 1472 EP1_Fkt_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1_Warnton 0 "Warnton_aus" 1 "Warnton_an"; -VAL_ 1472 EP1_Fehler_BKL 0 "BKL_aus" 1 "BKL_an"; -VAL_ 1472 EP1_Fehler_gelb 0 "Lampe_aus" 1 "Lampe_ein"; -VAL_ 1472 EP1__Text 0 "kein_Text" 1 "Text_1" 2 "Text_2" 3 "Text_3" 4 "Text_4" 5 "Text_5" 6 "reserviert" 7 "reserviert" 8 "Text_8"; diff --git a/opendbc_repo/opendbc/safety/__init__.py b/opendbc_repo/opendbc/safety/__init__.py deleted file mode 100644 index ef90de3c5c..0000000000 --- a/opendbc_repo/opendbc/safety/__init__.py +++ /dev/null @@ -1,11 +0,0 @@ -# constants from panda/python/__init__.py -DLC_TO_LEN = [0, 1, 2, 3, 4, 5, 6, 7, 8, 12, 16, 20, 24, 32, 48, 64] -LEN_TO_DLC = {length: dlc for (dlc, length) in enumerate(DLC_TO_LEN)} - - -class ALTERNATIVE_EXPERIENCE: - DEFAULT = 0 - DISABLE_DISENGAGE_ON_GAS = 1 - DISABLE_STOCK_AEB = 2 - RAISE_LONGITUDINAL_LIMITS_TO_ISO_MAX = 8 - ALLOW_AEB = 16 diff --git a/opendbc_repo/opendbc/safety/board/can.h b/opendbc_repo/opendbc/safety/board/can.h deleted file mode 100644 index b2fe0ca39f..0000000000 --- a/opendbc_repo/opendbc/safety/board/can.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once -#include "can_declarations.h" - -static const unsigned char dlc_to_len[] = {0U, 1U, 2U, 3U, 4U, 5U, 6U, 7U, 8U, 12U, 16U, 20U, 24U, 32U, 48U, 64U}; diff --git a/opendbc_repo/opendbc/safety/board/can_declarations.h b/opendbc_repo/opendbc/safety/board/can_declarations.h deleted file mode 100644 index 186cba1fc2..0000000000 --- a/opendbc_repo/opendbc/safety/board/can_declarations.h +++ /dev/null @@ -1,27 +0,0 @@ -#pragma once - -#define CANPACKET_HEAD_SIZE 6U - -// TODO: this is always CANFD -#if !defined(STM32F4) - #define CANFD - #define CANPACKET_DATA_SIZE_MAX 64U -#else - #define CANPACKET_DATA_SIZE_MAX 8U -#endif - -typedef struct { - unsigned char fd : 1; - unsigned char bus : 3; - unsigned char data_len_code : 4; // lookup length with dlc_to_len - unsigned char rejected : 1; - unsigned char returned : 1; - unsigned char extended : 1; - unsigned int addr : 29; - unsigned char checksum; - unsigned char data[CANPACKET_DATA_SIZE_MAX]; -} __attribute__((packed, aligned(4))) CANPacket_t; - -#define GET_BUS(msg) ((msg)->bus) -#define GET_LEN(msg) (dlc_to_len[(msg)->data_len_code]) -#define GET_ADDR(msg) ((msg)->addr) diff --git a/opendbc_repo/opendbc/safety/board/drivers/can_common.h b/opendbc_repo/opendbc/safety/board/drivers/can_common.h deleted file mode 100644 index 52a980cf1d..0000000000 --- a/opendbc_repo/opendbc/safety/board/drivers/can_common.h +++ /dev/null @@ -1,18 +0,0 @@ -#include "can_common_declarations.h" - -uint8_t calculate_checksum(const uint8_t *dat, uint32_t len) { - uint8_t checksum = 0U; - for (uint32_t i = 0U; i < len; i++) { - checksum ^= dat[i]; - } - return checksum; -} - -void can_set_checksum(CANPacket_t *packet) { - packet->checksum = 0U; - packet->checksum = calculate_checksum((uint8_t *) packet, CANPACKET_HEAD_SIZE + GET_LEN(packet)); -} - -bool can_check_checksum(CANPacket_t *packet) { - return (calculate_checksum((uint8_t *) packet, CANPACKET_HEAD_SIZE + GET_LEN(packet)) == 0U); -} diff --git a/opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h b/opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h deleted file mode 100644 index c05df042ef..0000000000 --- a/opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h +++ /dev/null @@ -1,4 +0,0 @@ -#pragma once - -uint8_t calculate_checksum(const uint8_t *dat, uint32_t len); -void can_set_checksum(CANPacket_t *packet); diff --git a/opendbc_repo/opendbc/safety/board/fake_stm.h b/opendbc_repo/opendbc/safety/board/fake_stm.h deleted file mode 100644 index 8f94e79edc..0000000000 --- a/opendbc_repo/opendbc/safety/board/fake_stm.h +++ /dev/null @@ -1,29 +0,0 @@ -// minimal code to fake a panda for tests -#include -#include -#include - -#include "utils.h" - -#define ALLOW_DEBUG -#define PANDA - -void print(const char *a) { - printf("%s", a); -} - -void puth(unsigned int i) { - printf("%u", i); -} - -typedef struct { - uint32_t CNT; -} TIM_TypeDef; - -TIM_TypeDef timer; -TIM_TypeDef *MICROSECOND_TIMER = &timer; -uint32_t microsecond_timer_get(void); - -uint32_t microsecond_timer_get(void) { - return MICROSECOND_TIMER->CNT; -} diff --git a/opendbc_repo/opendbc/safety/board/faults.h b/opendbc_repo/opendbc/safety/board/faults.h deleted file mode 100644 index 0fc9d2c5cf..0000000000 --- a/opendbc_repo/opendbc/safety/board/faults.h +++ /dev/null @@ -1,25 +0,0 @@ -#include "faults_declarations.h" - -uint8_t fault_status = FAULT_STATUS_NONE; -uint32_t faults = 0U; - -void fault_occurred(uint32_t fault) { - if ((faults & fault) == 0U) { - if ((PERMANENT_FAULTS & fault) != 0U) { - print("Permanent fault occurred: 0x"); puth(fault); print("\n"); - fault_status = FAULT_STATUS_PERMANENT; - } else { - print("Temporary fault occurred: 0x"); puth(fault); print("\n"); - fault_status = FAULT_STATUS_TEMPORARY; - } - } - faults |= fault; -} - -void fault_recovered(uint32_t fault) { - if ((PERMANENT_FAULTS & fault) == 0U) { - faults &= ~fault; - } else { - print("Cannot recover from a permanent fault!\n"); - } -} diff --git a/opendbc_repo/opendbc/safety/board/faults_declarations.h b/opendbc_repo/opendbc/safety/board/faults_declarations.h deleted file mode 100644 index a023d7e717..0000000000 --- a/opendbc_repo/opendbc/safety/board/faults_declarations.h +++ /dev/null @@ -1,18 +0,0 @@ -#pragma once - -#define FAULT_STATUS_NONE 0U -#define FAULT_STATUS_TEMPORARY 1U -#define FAULT_STATUS_PERMANENT 2U - -// Fault types, excerpt from cereal.log.PandaState.FaultType for safety tests -#define FAULT_RELAY_MALFUNCTION (1UL << 0) -// ... - -// Permanent faults -#define PERMANENT_FAULTS 0U - -extern uint8_t fault_status; -extern uint32_t faults; - -void fault_occurred(uint32_t fault); -void fault_recovered(uint32_t fault); diff --git a/opendbc_repo/opendbc/safety/board/utils.h b/opendbc_repo/opendbc/safety/board/utils.h deleted file mode 100644 index f355ce8c2f..0000000000 --- a/opendbc_repo/opendbc/safety/board/utils.h +++ /dev/null @@ -1,47 +0,0 @@ -// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension -#define MIN(a, b) ({ \ - __typeof__ (a) _a = (a); \ - __typeof__ (b) _b = (b); \ - (_a < _b) ? _a : _b; \ -}) - -// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension -#define MAX(a, b) ({ \ - __typeof__ (a) _a = (a); \ - __typeof__ (b) _b = (b); \ - (_a > _b) ? _a : _b; \ -}) - -// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension -#define CLAMP(x, low, high) ({ \ - __typeof__(x) __x = (x); \ - __typeof__(low) __low = (low);\ - __typeof__(high) __high = (high);\ - (__x > __high) ? __high : ((__x < __low) ? __low : __x); \ -}) - -// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension -#define ABS(a) ({ \ - __typeof__ (a) _a = (a); \ - (_a > 0) ? _a : (-_a); \ -}) - -#ifndef NULL -// this just provides a standard implementation of NULL -// in lieu of including libc in the panda build -// cppcheck-suppress [misra-c2012-21.1] -#define NULL ((void*)0) -#endif - -// STM32 HAL defines this -#ifndef UNUSED -#define UNUSED(x) ((void)(x)) -#endif - -#define COMPILE_TIME_ASSERT(pred) ((void)sizeof(char[1 - (2 * (!(pred) ? 1 : 0))])) - -// compute the time elapsed (in microseconds) from 2 counter samples -// case where ts < ts_last is ok: overflow is properly re-casted into uint32_t -uint32_t get_ts_elapsed(uint32_t ts, uint32_t ts_last) { - return ts - ts_last; -} diff --git a/opendbc_repo/opendbc/safety/main.c b/opendbc_repo/opendbc/safety/main.c deleted file mode 100644 index 3c873f84c2..0000000000 --- a/opendbc_repo/opendbc/safety/main.c +++ /dev/null @@ -1,12 +0,0 @@ -#include "safety.h" - -// this file is checked by cppcheck - -// Ignore misra-c2012-8.7 as these functions are only called from panda and libsafety -UNUSED(heartbeat_engaged); - -UNUSED(safety_rx_hook); -UNUSED(safety_tx_hook); -UNUSED(safety_fwd_hook); -UNUSED(safety_tick); -UNUSED(set_safety_hooks); diff --git a/opendbc_repo/opendbc/safety/safety.h b/opendbc_repo/opendbc/safety/safety.h deleted file mode 100644 index fda1bfff03..0000000000 --- a/opendbc_repo/opendbc/safety/safety.h +++ /dev/null @@ -1,851 +0,0 @@ -#pragma once - -#include "safety_declarations.h" -#include "can.h" - -// include the safety policies. -#include "safety/safety_defaults.h" -#include "safety/safety_honda.h" -#include "safety/safety_toyota.h" -#include "safety/safety_tesla.h" -#include "safety/safety_gm.h" -#include "safety/safety_ford.h" -#include "safety/safety_hyundai.h" -#include "safety/safety_chrysler.h" -#include "safety/safety_rivian.h" -#include "safety/safety_subaru.h" -#include "safety/safety_subaru_preglobal.h" -#include "safety/safety_mazda.h" -#include "safety/safety_nissan.h" -#include "safety/safety_volkswagen_mqb.h" -#include "safety/safety_volkswagen_pq.h" -#include "safety/safety_elm327.h" -#include "safety/safety_body.h" - -// CAN-FD only safety modes -#ifdef CANFD -#include "safety/safety_hyundai_canfd.h" -#endif - -// from cereal.car.CarParams.SafetyModel -#define SAFETY_SILENT 0U -#define SAFETY_HONDA_NIDEC 1U -#define SAFETY_TOYOTA 2U -#define SAFETY_ELM327 3U -#define SAFETY_GM 4U -#define SAFETY_HONDA_BOSCH_GIRAFFE 5U -#define SAFETY_FORD 6U -#define SAFETY_HYUNDAI 8U -#define SAFETY_CHRYSLER 9U -#define SAFETY_TESLA 10U -#define SAFETY_SUBARU 11U -#define SAFETY_MAZDA 13U -#define SAFETY_NISSAN 14U -#define SAFETY_VOLKSWAGEN_MQB 15U -#define SAFETY_ALLOUTPUT 17U -#define SAFETY_GM_ASCM 18U -#define SAFETY_NOOUTPUT 19U -#define SAFETY_HONDA_BOSCH 20U -#define SAFETY_VOLKSWAGEN_PQ 21U -#define SAFETY_SUBARU_PREGLOBAL 22U -#define SAFETY_HYUNDAI_LEGACY 23U -#define SAFETY_HYUNDAI_COMMUNITY 24U -#define SAFETY_STELLANTIS 25U -#define SAFETY_FAW 26U -#define SAFETY_BODY 27U -#define SAFETY_HYUNDAI_CANFD 28U -#define SAFETY_RIVIAN 33U -#define SAFETY_VOLKSWAGEN_MEB 34U - -uint32_t GET_BYTES(const CANPacket_t *msg, int start, int len) { - uint32_t ret = 0U; - for (int i = 0; i < len; i++) { - const uint32_t shift = i * 8; - ret |= (((uint32_t)msg->data[start + i]) << shift); - } - return ret; -} - -const int MAX_WRONG_COUNTERS = 5; - -// This can be set by the safety hooks -bool controls_allowed = false; -bool relay_malfunction = false; -bool enable_gas_interceptor = false; -int gas_interceptor_prev = 0; -bool gas_pressed = false; -bool gas_pressed_prev = false; -bool brake_pressed = false; -bool brake_pressed_prev = false; -bool regen_braking = false; -bool regen_braking_prev = false; -bool cruise_engaged_prev = false; -struct sample_t vehicle_speed; -bool vehicle_moving = false; -bool acc_main_on = false; // referred to as "ACC off" in ISO 15622:2018 -int cruise_button_prev = 0; -int cruise_main_prev = 0; -bool safety_rx_checks_invalid = false; - -// for safety modes with torque steering control -int desired_torque_last = 0; // last desired steer torque -int rt_torque_last = 0; // last desired torque for real time check -int valid_steer_req_count = 0; // counter for steer request bit matching non-zero torque -int invalid_steer_req_count = 0; // counter to allow multiple frames of mismatching torque request bit -struct sample_t torque_meas; // last 6 motor torques produced by the eps -struct sample_t torque_driver; // last 6 driver torques measured -uint32_t ts_torque_check_last = 0; -uint32_t ts_steer_req_mismatch_last = 0; // last timestamp steer req was mismatched with torque - -// state for controls_allowed timeout logic -bool heartbeat_engaged = false; // openpilot enabled, passed in heartbeat USB command -uint32_t heartbeat_engaged_mismatches = 0; // count of mismatches between heartbeat_engaged and controls_allowed - -// for safety modes with angle steering control -uint32_t ts_angle_last = 0; -int desired_angle_last = 0; -struct sample_t angle_meas; // last 6 steer angles/curvatures - - -int alternative_experience = 0; - -// time since safety mode has been changed -uint32_t safety_mode_cnt = 0U; - -uint16_t current_safety_mode = SAFETY_SILENT; -uint16_t current_safety_param = 0; -static const safety_hooks *current_hooks = &nooutput_hooks; -safety_config current_safety_config; - -static bool is_msg_valid(RxCheck addr_list[], int index) { - bool valid = true; - if (index != -1) { - if (!addr_list[index].status.valid_checksum || !addr_list[index].status.valid_quality_flag || (addr_list[index].status.wrong_counters >= MAX_WRONG_COUNTERS)) { - valid = false; - controls_allowed = false; - print("controls_allowed(msgvalid) = false\n"); - } - } - return valid; -} - -static int get_addr_check_index(const CANPacket_t *to_push, RxCheck addr_list[], const int len) { - int bus = GET_BUS(to_push); - int addr = GET_ADDR(to_push); - int length = GET_LEN(to_push); - - int index = -1; - for (int i = 0; i < len; i++) { - // if multiple msgs are allowed, determine which one is present on the bus - if (!addr_list[i].status.msg_seen) { - for (uint8_t j = 0U; (j < MAX_ADDR_CHECK_MSGS) && (addr_list[i].msg[j].addr != 0); j++) { - if ((addr == addr_list[i].msg[j].addr) && (bus == addr_list[i].msg[j].bus) && - (length == addr_list[i].msg[j].len)) { - addr_list[i].status.index = j; - addr_list[i].status.msg_seen = true; - break; - } - } - } - - if (addr_list[i].status.msg_seen) { - int idx = addr_list[i].status.index; - if ((addr == addr_list[i].msg[idx].addr) && (bus == addr_list[i].msg[idx].bus) && - (length == addr_list[i].msg[idx].len)) { - index = i; - break; - } - } - } - return index; -} - -static void update_addr_timestamp(RxCheck addr_list[], int index) { - if (index != -1) { - uint32_t ts = microsecond_timer_get(); - addr_list[index].status.last_timestamp = ts; - } -} - -static void update_counter(RxCheck addr_list[], int index, uint8_t counter) { - if (index != -1) { - uint8_t expected_counter = (addr_list[index].status.last_counter + 1U) % (addr_list[index].msg[addr_list[index].status.index].max_counter + 1U); - addr_list[index].status.wrong_counters += (expected_counter == counter) ? -1 : 1; - addr_list[index].status.wrong_counters = CLAMP(addr_list[index].status.wrong_counters, 0, MAX_WRONG_COUNTERS); - addr_list[index].status.last_counter = counter; - } -} - -static bool rx_msg_safety_check(const CANPacket_t *to_push, - const safety_config *cfg, - const safety_hooks *safety_hooks) { - - int index = get_addr_check_index(to_push, cfg->rx_checks, cfg->rx_checks_len); - update_addr_timestamp(cfg->rx_checks, index); - - if (index != -1) { - // checksum check - if ((safety_hooks->get_checksum != NULL) && (safety_hooks->compute_checksum != NULL) && !cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].ignore_checksum) { - uint32_t checksum = safety_hooks->get_checksum(to_push); - uint32_t checksum_comp = safety_hooks->compute_checksum(to_push); - cfg->rx_checks[index].status.valid_checksum = checksum_comp == checksum; - } else { - cfg->rx_checks[index].status.valid_checksum = cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].ignore_checksum; - } - - // counter check - if ((safety_hooks->get_counter != NULL) && (cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].max_counter > 0U)) { - uint8_t counter = safety_hooks->get_counter(to_push); - update_counter(cfg->rx_checks, index, counter); - } else { - cfg->rx_checks[index].status.wrong_counters = cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].ignore_counter ? 0 : MAX_WRONG_COUNTERS; - } - - // quality flag check - if ((safety_hooks->get_quality_flag_valid != NULL) && cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].quality_flag) { - cfg->rx_checks[index].status.valid_quality_flag = safety_hooks->get_quality_flag_valid(to_push); - } else { - cfg->rx_checks[index].status.valid_quality_flag = true; - } - } - return is_msg_valid(cfg->rx_checks, index); -} - -bool safety_rx_hook(const CANPacket_t *to_push) { - bool controls_allowed_prev = controls_allowed; - - bool valid = rx_msg_safety_check(to_push, ¤t_safety_config, current_hooks); - if (valid) { - current_hooks->rx(to_push); - } - - // reset mismatches on rising edge of controls_allowed to avoid rare race condition - if (controls_allowed && !controls_allowed_prev) { - heartbeat_engaged_mismatches = 0; - } - - return valid; -} - -int _prev_not_allowed_addr = -1; -static bool tx_msg_safety_check(const CANPacket_t *to_send, const CanMsg msg_list[], int len) { - int addr = GET_ADDR(to_send); - int bus = GET_BUS(to_send); - int length = GET_LEN(to_send); - - bool allowed = false; - for (int i = 0; i < len; i++) { - if ((addr == msg_list[i].addr) && (bus == msg_list[i].bus) && (length == msg_list[i].len)) { - allowed = true; - break; - } - } - if (!allowed && _prev_not_allowed_addr != addr && len > 0) { - print("allowed addr = "); - for(int i=0;itx(to_send); - - int addr = GET_ADDR(to_send); - if ((!allowed || !safety_allowed) && (addr!=_prev_error_addr)) { - int bus = GET_BUS(to_send); - int length = GET_LEN(to_send); - print("not allowed:"); - if (!allowed) print("nowallowed,"); - if (!safety_allowed) print("safety_allowed,"); - print("addr = "); - putui((uint32_t)addr); - print(" bus="); - putui((uint32_t)bus); - print(" len="); - putui((uint32_t)length); - print(" ctrl="); - putui((uint32_t)controls_allowed); - print(" main="); - putui((uint32_t)acc_main_on); - print(" rely="); - putui((uint32_t)relay_malfunction); - print("\n"); - _prev_error_addr = addr; - } - - return !relay_malfunction && allowed && safety_allowed; -} - -int safety_fwd_hook(int bus_num, int addr) { - return (relay_malfunction ? -1 : current_hooks->fwd(bus_num, addr)); -} - -bool get_longitudinal_allowed(void) { - return controls_allowed && !gas_pressed_prev; -} - -// Given a CRC-8 poly, generate a static lookup table to use with a fast CRC-8 -// algorithm. Called at init time for safety modes using CRC-8. -void gen_crc_lookup_table_8(uint8_t poly, uint8_t crc_lut[]) { - for (uint16_t i = 0U; i <= 0xFFU; i++) { - uint8_t crc = (uint8_t)i; - for (int j = 0; j < 8; j++) { - if ((crc & 0x80U) != 0U) { - crc = (uint8_t)((crc << 1) ^ poly); - } else { - crc <<= 1; - } - } - crc_lut[i] = crc; - } -} - -#ifdef CANFD -void gen_crc_lookup_table_16(uint16_t poly, uint16_t crc_lut[]) { - for (uint16_t i = 0; i < 256U; i++) { - uint16_t crc = i << 8U; - for (uint16_t j = 0; j < 8U; j++) { - if ((crc & 0x8000U) != 0U) { - crc = (uint16_t)((crc << 1) ^ poly); - } else { - crc <<= 1; - } - } - crc_lut[i] = crc; - } -} -#endif - -// 1Hz safety function called by main. Now just a check for lagging safety messages -void safety_tick(const safety_config *cfg) { - const uint8_t MAX_MISSED_MSGS = 10U; - bool rx_checks_invalid = false; - uint32_t ts = microsecond_timer_get(); - if (cfg != NULL) { - for (int i=0; i < cfg->rx_checks_len; i++) { - uint32_t elapsed_time = get_ts_elapsed(ts, cfg->rx_checks[i].status.last_timestamp); - // lag threshold is max of: 1s and MAX_MISSED_MSGS * expected timestep. - // Quite conservative to not risk false triggers. - // 2s of lag is worse case, since the function is called at 1Hz - uint32_t timestep = 1e6 / cfg->rx_checks[i].msg[cfg->rx_checks[i].status.index].frequency; - bool lagging = elapsed_time > MAX(timestep * MAX_MISSED_MSGS, 1e6); - cfg->rx_checks[i].status.lagging = lagging; - if (lagging) { - controls_allowed = false; - } - - if (lagging || !is_msg_valid(cfg->rx_checks, i)) { - rx_checks_invalid = true; - } - } - } - - safety_rx_checks_invalid = rx_checks_invalid; -} - -static void relay_malfunction_set(void) { - relay_malfunction = true; - fault_occurred(FAULT_RELAY_MALFUNCTION); -} - -void generic_rx_checks(bool stock_ecu_detected) { - // allow 1s of transition timeout after relay changes state before assessing malfunctioning - const uint32_t RELAY_TRNS_TIMEOUT = 1U; - - // exit controls on rising edge of gas press - if (gas_pressed && !gas_pressed_prev && !(alternative_experience & ALT_EXP_DISABLE_DISENGAGE_ON_GAS)) { - controls_allowed = false; - } - gas_pressed_prev = gas_pressed; - - // exit controls on rising edge of brake press - if (brake_pressed && (!brake_pressed_prev || vehicle_moving)) { - controls_allowed = false; - } - brake_pressed_prev = brake_pressed; - - // exit controls on rising edge of regen paddle - if (regen_braking && (!regen_braking_prev || vehicle_moving)) { - controls_allowed = false; - } - regen_braking_prev = regen_braking; - - // check if stock ECU is on bus broken by car harness - if ((safety_mode_cnt > RELAY_TRNS_TIMEOUT) && stock_ecu_detected && !gm_skip_relay_check) { - relay_malfunction_set(); - } -} - -static void relay_malfunction_reset(void) { - relay_malfunction = false; - fault_recovered(FAULT_RELAY_MALFUNCTION); -} - -// resets values and min/max for sample_t struct -static void reset_sample(struct sample_t *sample) { - for (int i = 0; i < MAX_SAMPLE_VALS; i++) { - sample->values[i] = 0; - } - update_sample(sample, 0); -} - -int set_safety_hooks(uint16_t mode, uint16_t param) { - const safety_hook_config safety_hook_registry[] = { - {SAFETY_SILENT, &nooutput_hooks}, - {SAFETY_HONDA_NIDEC, &honda_nidec_hooks}, - {SAFETY_TOYOTA, &toyota_hooks}, - {SAFETY_ELM327, &elm327_hooks}, - {SAFETY_GM, &gm_hooks}, - {SAFETY_HONDA_BOSCH, &honda_bosch_hooks}, - {SAFETY_HYUNDAI, &hyundai_hooks}, - {SAFETY_CHRYSLER, &chrysler_hooks}, - {SAFETY_SUBARU, &subaru_hooks}, - {SAFETY_VOLKSWAGEN_MQB, &volkswagen_mqb_hooks}, - {SAFETY_NISSAN, &nissan_hooks}, - {SAFETY_NOOUTPUT, &nooutput_hooks}, - {SAFETY_HYUNDAI_LEGACY, &hyundai_legacy_hooks}, - {SAFETY_MAZDA, &mazda_hooks}, - {SAFETY_BODY, &body_hooks}, - {SAFETY_FORD, &ford_hooks}, - {SAFETY_RIVIAN, &rivian_hooks}, -#ifdef CANFD - {SAFETY_HYUNDAI_CANFD, &hyundai_canfd_hooks}, -#endif -#ifdef ALLOW_DEBUG - {SAFETY_TESLA, &tesla_hooks}, - {SAFETY_SUBARU_PREGLOBAL, &subaru_preglobal_hooks}, - {SAFETY_VOLKSWAGEN_PQ, &volkswagen_pq_hooks}, - {SAFETY_ALLOUTPUT, &alloutput_hooks}, -#endif - }; - - // reset state set by safety mode - safety_mode_cnt = 0U; - relay_malfunction = false; - enable_gas_interceptor = false; - gas_interceptor_prev = 0; - gas_pressed = false; - gas_pressed_prev = false; - brake_pressed = false; - brake_pressed_prev = false; - regen_braking = false; - regen_braking_prev = false; - cruise_engaged_prev = false; - vehicle_moving = false; - acc_main_on = false; - cruise_button_prev = 0; - desired_torque_last = 0; - rt_torque_last = 0; - ts_angle_last = 0; - desired_angle_last = 0; - ts_torque_check_last = 0; - ts_steer_req_mismatch_last = 0; - valid_steer_req_count = 0; - invalid_steer_req_count = 0; - - // reset samples - reset_sample(&vehicle_speed); - reset_sample(&torque_meas); - reset_sample(&torque_driver); - reset_sample(&angle_meas); - - controls_allowed = false; - relay_malfunction_reset(); - safety_rx_checks_invalid = false; - - current_safety_config.rx_checks = NULL; - current_safety_config.rx_checks_len = 0; - current_safety_config.tx_msgs = NULL; - current_safety_config.tx_msgs_len = 0; - - int set_status = -1; // not set - int hook_config_count = sizeof(safety_hook_registry) / sizeof(safety_hook_config); - for (int i = 0; i < hook_config_count; i++) { - if (safety_hook_registry[i].id == mode) { - current_hooks = safety_hook_registry[i].hooks; - current_safety_mode = mode; - current_safety_param = param; - set_status = 0; // set - } - } - if ((set_status == 0) && (current_hooks->init != NULL)) { - safety_config cfg = current_hooks->init(param); - current_safety_config.rx_checks = cfg.rx_checks; - current_safety_config.rx_checks_len = cfg.rx_checks_len; - current_safety_config.tx_msgs = cfg.tx_msgs; - current_safety_config.tx_msgs_len = cfg.tx_msgs_len; - // reset all dynamic fields in addr struct - for (int j = 0; j < current_safety_config.rx_checks_len; j++) { - current_safety_config.rx_checks[j].status = (RxStatus){0}; - } - } - return set_status; -} - -// convert a trimmed integer to signed 32 bit int -int to_signed(int d, int bits) { - int d_signed = d; - int max_value = (1 << MAX((bits - 1), 0)); - if (d >= max_value) { - d_signed = d - (1 << MAX(bits, 0)); - } - return d_signed; -} - -// given a new sample, update the sample_t struct -void update_sample(struct sample_t *sample, int sample_new) { - for (int i = MAX_SAMPLE_VALS - 1; i > 0; i--) { - sample->values[i] = sample->values[i-1]; - } - sample->values[0] = sample_new; - - // get the minimum and maximum measured samples - sample->min = sample->values[0]; - sample->max = sample->values[0]; - for (int i = 1; i < MAX_SAMPLE_VALS; i++) { - if (sample->values[i] < sample->min) { - sample->min = sample->values[i]; - } - if (sample->values[i] > sample->max) { - sample->max = sample->values[i]; - } - } -} - -static bool max_limit_check(int val, const int MAX_VAL, const int MIN_VAL) { - return (val > MAX_VAL) || (val < MIN_VAL); -} - -// check that commanded torque value isn't too far from measured -static bool dist_to_meas_check(int val, int val_last, struct sample_t *val_meas, - const int MAX_RATE_UP, const int MAX_RATE_DOWN, const int MAX_ERROR) { - - // *** val rate limit check *** - int highest_allowed_rl = MAX(val_last, 0) + MAX_RATE_UP; - int lowest_allowed_rl = MIN(val_last, 0) - MAX_RATE_UP; - - // if we've exceeded the meas val, we must start moving toward 0 - int highest_allowed = MIN(highest_allowed_rl, MAX(val_last - MAX_RATE_DOWN, MAX(val_meas->max, 0) + MAX_ERROR)); - int lowest_allowed = MAX(lowest_allowed_rl, MIN(val_last + MAX_RATE_DOWN, MIN(val_meas->min, 0) - MAX_ERROR)); - - // check for violation - return max_limit_check(val, highest_allowed, lowest_allowed); -} - -// check that commanded value isn't fighting against driver -static bool driver_limit_check(int val, int val_last, const struct sample_t *val_driver, - const int MAX_VAL, const int MAX_RATE_UP, const int MAX_RATE_DOWN, - const int MAX_ALLOWANCE, const int DRIVER_FACTOR) { - - // torque delta/rate limits - int highest_allowed_rl = MAX(val_last, 0) + MAX_RATE_UP; - int lowest_allowed_rl = MIN(val_last, 0) - MAX_RATE_UP; - - // driver - int driver_max_limit = MAX_VAL + (MAX_ALLOWANCE + val_driver->max) * DRIVER_FACTOR; - int driver_min_limit = -MAX_VAL + (-MAX_ALLOWANCE + val_driver->min) * DRIVER_FACTOR; - - // if we've exceeded the applied torque, we must start moving toward 0 - int highest_allowed = MIN(highest_allowed_rl, MAX(val_last - MAX_RATE_DOWN, - MAX(driver_max_limit, 0))); - int lowest_allowed = MAX(lowest_allowed_rl, MIN(val_last + MAX_RATE_DOWN, - MIN(driver_min_limit, 0))); - - // check for violation - return max_limit_check(val, highest_allowed, lowest_allowed); -} - - -// real time check, mainly used for steer torque rate limiter -static bool rt_rate_limit_check(int val, int val_last, const int MAX_RT_DELTA) { - - // *** torque real time rate limit check *** - int highest_val = MAX(val_last, 0) + MAX_RT_DELTA; - int lowest_val = MIN(val_last, 0) - MAX_RT_DELTA; - - // check for violation - return max_limit_check(val, highest_val, lowest_val); -} - - -// interp function that holds extreme values -static float interpolate(struct lookup_t xy, float x) { - - int size = sizeof(xy.x) / sizeof(xy.x[0]); - float ret = xy.y[size - 1]; // default output is last point - - // x is lower than the first point in the x array. Return the first point - if (x <= xy.x[0]) { - ret = xy.y[0]; - - } else { - // find the index such that (xy.x[i] <= x < xy.x[i+1]) and linearly interp - for (int i=0; i < (size - 1); i++) { - if (x < xy.x[i+1]) { - float x0 = xy.x[i]; - float y0 = xy.y[i]; - float dx = xy.x[i+1] - x0; - float dy = xy.y[i+1] - y0; - // dx should not be zero as xy.x is supposed to be monotonic - dx = MAX(dx, 0.0001); - ret = (dy * (x - x0) / dx) + y0; - break; - } - } - } - return ret; -} - -int ROUND(float val) { - return val + ((val > 0.0) ? 0.5 : -0.5); -} - -// Safety checks for longitudinal actuation -bool longitudinal_accel_checks(int desired_accel, const LongitudinalLimits limits) { - if(desired_accel != 0) { - if(!controls_allowed) print("@@@@@@@@ longitudinal_accel_checks... auto controls_allowed enabled...\n"); - controls_allowed = true; - } - //bool accel_valid = get_longitudinal_allowed() && !max_limit_check(desired_accel, limits.max_accel, limits.min_accel); - bool accel_valid = !max_limit_check(desired_accel, limits.max_accel, limits.min_accel); - bool accel_inactive = desired_accel == limits.inactive_accel; - return !(accel_valid || accel_inactive); -} - -bool longitudinal_speed_checks(int desired_speed, const LongitudinalLimits limits) { - return !get_longitudinal_allowed() && (desired_speed != limits.inactive_speed); -} - -bool longitudinal_transmission_rpm_checks(int desired_transmission_rpm, const LongitudinalLimits limits) { - bool transmission_rpm_valid = get_longitudinal_allowed() && !max_limit_check(desired_transmission_rpm, limits.max_transmission_rpm, limits.min_transmission_rpm); - bool transmission_rpm_inactive = desired_transmission_rpm == limits.inactive_transmission_rpm; - return !(transmission_rpm_valid || transmission_rpm_inactive); -} - -bool longitudinal_gas_checks(int desired_gas, const LongitudinalLimits limits) { - bool gas_valid = get_longitudinal_allowed() && !max_limit_check(desired_gas, limits.max_gas, limits.min_gas); - bool gas_inactive = desired_gas == limits.inactive_gas; - return !(gas_valid || gas_inactive); -} - -bool longitudinal_brake_checks(int desired_brake, const LongitudinalLimits limits) { - bool violation = false; - violation |= !get_longitudinal_allowed() && (desired_brake != 0); - violation |= desired_brake > limits.max_brake; - return violation; -} - -bool longitudinal_interceptor_checks(const CANPacket_t *to_send) { - return (!get_longitudinal_allowed() || brake_pressed_prev) && (GET_BYTE(to_send, 0) || GET_BYTE(to_send, 1)); -} - -// Safety checks for torque-based steering commands -bool steer_torque_cmd_checks(int desired_torque, int steer_req, const TorqueSteeringLimits limits) { - bool violation = false; - uint32_t ts = microsecond_timer_get(); - - bool aol_allowed = true; - if (controls_allowed) acc_main_on = controls_allowed; - - if (controls_allowed || aol_allowed) { - // *** global torque limit check *** - violation |= max_limit_check(desired_torque, limits.max_steer, -limits.max_steer); - - // *** torque rate limit check *** - if (limits.type == TorqueDriverLimited) { - violation |= driver_limit_check(desired_torque, desired_torque_last, &torque_driver, - limits.max_steer, limits.max_rate_up, limits.max_rate_down, - limits.driver_torque_allowance, limits.driver_torque_multiplier); - } else { - violation |= dist_to_meas_check(desired_torque, desired_torque_last, &torque_meas, - limits.max_rate_up, limits.max_rate_down, limits.max_torque_error); - } - desired_torque_last = desired_torque; - - // *** torque real time rate limit check *** - violation |= rt_rate_limit_check(desired_torque, rt_torque_last, limits.max_rt_delta); - - // every RT_INTERVAL set the new limits - uint32_t ts_elapsed = get_ts_elapsed(ts, ts_torque_check_last); - if (ts_elapsed > limits.max_rt_interval) { - rt_torque_last = desired_torque; - ts_torque_check_last = ts; - } - } - - // no torque if controls is not allowed - if (!(controls_allowed || aol_allowed) && (desired_torque != 0)) { - violation = true; - } - - // certain safety modes set their steer request bit low for one or more frame at a - // predefined max frequency to avoid steering faults in certain situations - bool steer_req_mismatch = (steer_req == 0) && (desired_torque != 0); - if (!limits.has_steer_req_tolerance) { - if (steer_req_mismatch) { - violation = true; - } - - } else { - if (steer_req_mismatch) { - if (invalid_steer_req_count == 0) { - // disallow torque cut if not enough recent matching steer_req messages - if (valid_steer_req_count < limits.min_valid_request_frames) { - violation = true; - } - - // or we've cut torque too recently in time - uint32_t ts_elapsed = get_ts_elapsed(ts, ts_steer_req_mismatch_last); - if (ts_elapsed < limits.min_valid_request_rt_interval) { - violation = true; - } - } else { - // or we're cutting more frames consecutively than allowed - if (invalid_steer_req_count >= limits.max_invalid_request_frames) { - violation = true; - } - } - - valid_steer_req_count = 0; - ts_steer_req_mismatch_last = ts; - invalid_steer_req_count = MIN(invalid_steer_req_count + 1, limits.max_invalid_request_frames); - } else { - valid_steer_req_count = MIN(valid_steer_req_count + 1, limits.min_valid_request_frames); - invalid_steer_req_count = 0; - } - } - - // reset to 0 if either controls is not allowed or there's a violation - if (violation || !(controls_allowed || aol_allowed)) { - valid_steer_req_count = 0; - invalid_steer_req_count = 0; - desired_torque_last = 0; - rt_torque_last = 0; - ts_torque_check_last = ts; - ts_steer_req_mismatch_last = ts; - } - - return violation; -} - -// Safety checks for angle-based steering commands -bool steer_angle_cmd_checks(int desired_angle, bool steer_control_enabled, const AngleSteeringLimits limits) { - bool violation = false; - - bool aol_allowed = true; - if (controls_allowed) acc_main_on = controls_allowed; - if ((controls_allowed || aol_allowed) && steer_control_enabled) { - // convert floating point angle rate limits to integers in the scale of the desired angle on CAN, - // add 1 to not false trigger the violation. also fudge the speed by 1 m/s so rate limits are - // always slightly above openpilot's in case we read an updated speed in between angle commands - // TODO: this speed fudge can be much lower, look at data to determine the lowest reasonable offset - const float fudged_speed = (vehicle_speed.min / VEHICLE_SPEED_FACTOR) - 1.; - int delta_angle_up = (interpolate(limits.angle_rate_up_lookup, fudged_speed) * limits.angle_deg_to_can) + 1.; - int delta_angle_down = (interpolate(limits.angle_rate_down_lookup, fudged_speed) * limits.angle_deg_to_can) + 1.; - - // allow down limits at zero since small floats from openpilot will be rounded to 0 - // TODO: openpilot should be cognizant of this and not send small floats - int highest_desired_angle = desired_angle_last + ((desired_angle_last > 0) ? delta_angle_up : delta_angle_down); - int lowest_desired_angle = desired_angle_last - ((desired_angle_last >= 0) ? delta_angle_down : delta_angle_up); - - // check that commanded angle value isn't too far from measured, used to limit torque for some safety modes - // ensure we start moving in direction of meas while respecting relaxed rate limits if error is exceeded - if (limits.enforce_angle_error && ((vehicle_speed.values[0] / VEHICLE_SPEED_FACTOR) > limits.angle_error_min_speed)) { - // flipped fudge to avoid false positives - const float fudged_speed_error = (vehicle_speed.max / VEHICLE_SPEED_FACTOR) + 1.; - const int delta_angle_up_relaxed = (interpolate(limits.angle_rate_up_lookup, fudged_speed_error) * limits.angle_deg_to_can) - 1.; - const int delta_angle_down_relaxed = (interpolate(limits.angle_rate_down_lookup, fudged_speed_error) * limits.angle_deg_to_can) - 1.; - - // the minimum and maximum angle allowed based on the measured angle - const int lowest_desired_angle_error = angle_meas.min - limits.max_angle_error - 1; - const int highest_desired_angle_error = angle_meas.max + limits.max_angle_error + 1; - - // the MAX is to allow the desired angle to hit the edge of the bounds and not require going under it - if (desired_angle_last > highest_desired_angle_error) { - const int delta = (desired_angle_last >= 0) ? delta_angle_down_relaxed : delta_angle_up_relaxed; - highest_desired_angle = MAX(desired_angle_last - delta, highest_desired_angle_error); - - } else if (desired_angle_last < lowest_desired_angle_error) { - const int delta = (desired_angle_last <= 0) ? delta_angle_down_relaxed : delta_angle_up_relaxed; - lowest_desired_angle = MIN(desired_angle_last + delta, lowest_desired_angle_error); - - } else { - // already inside error boundary, don't allow commanding outside it - highest_desired_angle = MIN(highest_desired_angle, highest_desired_angle_error); - lowest_desired_angle = MAX(lowest_desired_angle, lowest_desired_angle_error); - } - - // don't enforce above the max steer - // TODO: this should always be done - lowest_desired_angle = CLAMP(lowest_desired_angle, -limits.max_angle, limits.max_angle); - highest_desired_angle = CLAMP(highest_desired_angle, -limits.max_angle, limits.max_angle); - } - - // check not above ISO 11270 lateral accel assuming worst case road roll - if (limits.angle_is_curvature) { - // ISO 11270 - static const float ISO_LATERAL_ACCEL = 3.0; // m/s^2 - - // Limit to average banked road since safety doesn't have the roll - static const float EARTH_G = 9.81; - static const float AVERAGE_ROAD_ROLL = 0.06; // ~3.4 degrees, 6% superelevation - static const float MAX_LATERAL_ACCEL = ISO_LATERAL_ACCEL - (EARTH_G * AVERAGE_ROAD_ROLL); // ~2.4 m/s^2 - - // Allow small tolerance by using minimum speed and rounding curvature up - const float speed_lower = MAX(vehicle_speed.min / VEHICLE_SPEED_FACTOR, 1.0); - const float speed_upper = MAX(vehicle_speed.max / VEHICLE_SPEED_FACTOR, 1.0); - const int max_curvature_upper = (MAX_LATERAL_ACCEL / (speed_lower * speed_lower) * limits.angle_deg_to_can) + 1.; - const int max_curvature_lower = (MAX_LATERAL_ACCEL / (speed_upper * speed_upper) * limits.angle_deg_to_can) - 1.; - - // ensure that the curvature error doesn't try to enforce above this limit - if (desired_angle_last > 0) { - lowest_desired_angle = CLAMP(lowest_desired_angle, -max_curvature_lower, max_curvature_lower); - highest_desired_angle = CLAMP(highest_desired_angle, -max_curvature_upper, max_curvature_upper); - } else { - lowest_desired_angle = CLAMP(lowest_desired_angle, -max_curvature_upper, max_curvature_upper); - highest_desired_angle = CLAMP(highest_desired_angle, -max_curvature_lower, max_curvature_lower); - } - } - - // check for violation; - violation |= max_limit_check(desired_angle, highest_desired_angle, lowest_desired_angle); - } - desired_angle_last = desired_angle; - - // Angle should either be 0 or same as current angle while not steering - if (!steer_control_enabled) { - const int max_inactive_angle = CLAMP(angle_meas.max, -limits.max_angle, limits.max_angle) + 1; - const int min_inactive_angle = CLAMP(angle_meas.min, -limits.max_angle, limits.max_angle) - 1; - violation |= (limits.inactive_angle_is_zero ? (desired_angle != 0) : - max_limit_check(desired_angle, max_inactive_angle, min_inactive_angle)); - } - - // No angle control allowed when controls are not allowed - violation |= !(controls_allowed || aol_allowed) && steer_control_enabled; - - return violation; -} - -void pcm_cruise_check(bool cruise_engaged) { - // Enter controls on rising edge of stock ACC, exit controls if stock ACC disengages - if (!cruise_engaged) { - controls_allowed = false; - //print("controls_allowed(pcm) = false\n"); - } - if (cruise_engaged && !cruise_engaged_prev) { - controls_allowed = true; - } - cruise_engaged_prev = cruise_engaged; -} diff --git a/opendbc_repo/opendbc/safety/safety/safety_body.h b/opendbc_repo/opendbc/safety/safety/safety_body.h deleted file mode 100644 index 79d4b475ac..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_body.h +++ /dev/null @@ -1,50 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -static void body_rx_hook(const CANPacket_t *to_push) { - // body is never at standstill - vehicle_moving = true; - - if (GET_ADDR(to_push) == 0x201U) { - controls_allowed = true; - } -} - -static bool body_tx_hook(const CANPacket_t *to_send) { - bool tx = true; - int addr = GET_ADDR(to_send); - int len = GET_LEN(to_send); - - if (!controls_allowed && (addr != 0x1)) { - tx = false; - } - - // Allow going into CAN flashing mode for base & knee even if controls are not allowed - bool flash_msg = ((addr == 0x250) || (addr == 0x350)) && (len == 8); - if (!controls_allowed && (GET_BYTES(to_send, 0, 4) == 0xdeadfaceU) && (GET_BYTES(to_send, 4, 4) == 0x0ab00b1eU) && flash_msg) { - tx = true; - } - - return tx; -} - -static safety_config body_init(uint16_t param) { - static RxCheck body_rx_checks[] = { - {.msg = {{0x201, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - }; - - static const CanMsg BODY_TX_MSGS[] = {{0x250, 0, 8}, {0x250, 0, 6}, {0x251, 0, 5}, // body - {0x350, 0, 8}, {0x350, 0, 6}, {0x351, 0, 5}, // knee - {0x1, 0, 8}}; // CAN flasher - - UNUSED(param); - return BUILD_SAFETY_CFG(body_rx_checks, BODY_TX_MSGS); -} - -const safety_hooks body_hooks = { - .init = body_init, - .rx = body_rx_hook, - .tx = body_tx_hook, - .fwd = default_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_chrysler.h b/opendbc_repo/opendbc/safety/safety/safety_chrysler.h deleted file mode 100644 index 985a8c1084..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_chrysler.h +++ /dev/null @@ -1,304 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -typedef struct { - const int EPS_2; - const int ESP_1; - const int ESP_8; - const int ECM_5; - const int DAS_3; - const int DAS_6; - const int LKAS_COMMAND; - const int CRUISE_BUTTONS; -} ChryslerAddrs; - -typedef enum { - CHRYSLER_RAM_DT, - CHRYSLER_RAM_HD, - CHRYSLER_PACIFICA, // plus Jeep -} ChryslerPlatform; -static ChryslerPlatform chrysler_platform; -static const ChryslerAddrs *chrysler_addrs; - -static uint32_t chrysler_get_checksum(const CANPacket_t *to_push) { - int checksum_byte = GET_LEN(to_push) - 1U; - return (uint8_t)(GET_BYTE(to_push, checksum_byte)); -} - -static uint32_t chrysler_compute_checksum(const CANPacket_t *to_push) { - // TODO: clean this up - // http://illmatics.com/Remote%20Car%20Hacking.pdf - uint8_t checksum = 0xFFU; - int len = GET_LEN(to_push); - for (int j = 0; j < (len - 1); j++) { - uint8_t shift = 0x80U; - uint8_t curr = (uint8_t)GET_BYTE(to_push, j); - for (int i=0; i<8; i++) { - uint8_t bit_sum = curr & shift; - uint8_t temp_chk = checksum & 0x80U; - if (bit_sum != 0U) { - bit_sum = 0x1C; - if (temp_chk != 0U) { - bit_sum = 1; - } - checksum = checksum << 1; - temp_chk = checksum | 1U; - bit_sum ^= temp_chk; - } else { - if (temp_chk != 0U) { - bit_sum = 0x1D; - } - checksum = checksum << 1; - bit_sum ^= checksum; - } - checksum = bit_sum; - shift = shift >> 1; - } - } - return (uint8_t)(~checksum); -} - -static uint8_t chrysler_get_counter(const CANPacket_t *to_push) { - return (uint8_t)(GET_BYTE(to_push, 6) >> 4); -} - -static void chrysler_rx_hook(const CANPacket_t *to_push) { - const int bus = GET_BUS(to_push); - const int addr = GET_ADDR(to_push); - - // Measured EPS torque - if ((bus == 0) && (addr == chrysler_addrs->EPS_2)) { - int torque_meas_new = ((GET_BYTE(to_push, 4) & 0x7U) << 8) + GET_BYTE(to_push, 5) - 1024U; - update_sample(&torque_meas, torque_meas_new); - } - - // enter controls on rising edge of ACC, exit controls on ACC off - const int das_3_bus = (chrysler_platform == CHRYSLER_PACIFICA) ? 0 : 2; - if ((bus == das_3_bus) && (addr == chrysler_addrs->DAS_3)) { - bool cruise_engaged = GET_BIT(to_push, 21U); - pcm_cruise_check(cruise_engaged); - } - - // TODO: use the same message for both - // update vehicle moving - if ((chrysler_platform != CHRYSLER_PACIFICA) && (bus == 0) && (addr == chrysler_addrs->ESP_8)) { - vehicle_moving = ((GET_BYTE(to_push, 4) << 8) + GET_BYTE(to_push, 5)) != 0U; - } - if ((chrysler_platform == CHRYSLER_PACIFICA) && (bus == 0) && (addr == 514)) { - int speed_l = (GET_BYTE(to_push, 0) << 4) + (GET_BYTE(to_push, 1) >> 4); - int speed_r = (GET_BYTE(to_push, 2) << 4) + (GET_BYTE(to_push, 3) >> 4); - vehicle_moving = (speed_l != 0) || (speed_r != 0); - } - - // exit controls on rising edge of gas press - if ((bus == 0) && (addr == chrysler_addrs->ECM_5)) { - gas_pressed = GET_BYTE(to_push, 0U) != 0U; - } - - // exit controls on rising edge of brake press - if ((bus == 0) && (addr == chrysler_addrs->ESP_1)) { - brake_pressed = ((GET_BYTE(to_push, 0U) & 0xFU) >> 2U) == 1U; - } - - generic_rx_checks((bus == 0) && (addr == chrysler_addrs->LKAS_COMMAND)); -} - -static bool chrysler_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits CHRYSLER_STEERING_LIMITS = { - .max_steer = 261, - .max_rt_delta = 112, - .max_rt_interval = 250000, - .max_rate_up = 3, - .max_rate_down = 3, - .max_torque_error = 80, - .type = TorqueMotorLimited, - }; - - const TorqueSteeringLimits CHRYSLER_RAM_DT_STEERING_LIMITS = { - .max_steer = 350, - .max_rt_delta = 112, - .max_rt_interval = 250000, - .max_rate_up = 6, - .max_rate_down = 6, - .max_torque_error = 80, - .type = TorqueMotorLimited, - }; - - const TorqueSteeringLimits CHRYSLER_RAM_HD_STEERING_LIMITS = { - .max_steer = 361, - .max_rt_delta = 182, - .max_rt_interval = 250000, - .max_rate_up = 14, - .max_rate_down = 14, - .max_torque_error = 80, - .type = TorqueMotorLimited, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - - // STEERING - if (addr == chrysler_addrs->LKAS_COMMAND) { - int start_byte = (chrysler_platform == CHRYSLER_PACIFICA) ? 0 : 1; - int desired_torque = ((GET_BYTE(to_send, start_byte) & 0x7U) << 8) | GET_BYTE(to_send, start_byte + 1); - desired_torque -= 1024; - - const TorqueSteeringLimits limits = (chrysler_platform == CHRYSLER_PACIFICA) ? CHRYSLER_STEERING_LIMITS : - (chrysler_platform == CHRYSLER_RAM_DT) ? CHRYSLER_RAM_DT_STEERING_LIMITS : CHRYSLER_RAM_HD_STEERING_LIMITS; - - bool steer_req = (chrysler_platform == CHRYSLER_PACIFICA) ? GET_BIT(to_send, 4U) : (GET_BYTE(to_send, 3) & 0x7U) == 2U; - if (steer_torque_cmd_checks(desired_torque, steer_req, limits)) { - tx = false; - } - } - - // FORCE CANCEL: only the cancel button press is allowed - if (addr == chrysler_addrs->CRUISE_BUTTONS) { - const bool is_cancel = GET_BYTE(to_send, 0) == 1U; - const bool is_resume = GET_BYTE(to_send, 0) == 0x10U; - const bool allowed = is_cancel || (is_resume && controls_allowed); - if (!allowed) { - tx = false; - } - } - - return tx; -} - -static int chrysler_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - // forward to camera - if (bus_num == 0) { - bus_fwd = 2; - } - - // forward all messages from camera except LKAS messages - const bool is_lkas = ((addr == chrysler_addrs->LKAS_COMMAND) || (addr == chrysler_addrs->DAS_6)); - if ((bus_num == 2) && !is_lkas){ - bus_fwd = 0; - } - - return bus_fwd; -} - -static safety_config chrysler_init(uint16_t param) { - - const uint32_t CHRYSLER_PARAM_RAM_DT = 1U; // set for Ram DT platform - - // CAN messages for Chrysler/Jeep platforms - static const ChryslerAddrs CHRYSLER_ADDRS = { - .EPS_2 = 0x220, // EPS driver input torque - .ESP_1 = 0x140, // Brake pedal and vehicle speed - .ESP_8 = 0x11C, // Brake pedal and vehicle speed - .ECM_5 = 0x22F, // Throttle position sensor - .DAS_3 = 0x1F4, // ACC engagement states from DASM - .DAS_6 = 0x2A6, // LKAS HUD and auto headlight control from DASM - .LKAS_COMMAND = 0x292, // LKAS controls from DASM - .CRUISE_BUTTONS = 0x23B, // Cruise control buttons - }; - - // CAN messages for the 5th gen RAM DT platform - static const ChryslerAddrs CHRYSLER_RAM_DT_ADDRS = { - .EPS_2 = 0x31, // EPS driver input torque - .ESP_1 = 0x83, // Brake pedal and vehicle speed - .ESP_8 = 0x79, // Brake pedal and vehicle speed - .ECM_5 = 0x9D, // Throttle position sensor - .DAS_3 = 0x99, // ACC engagement states from DASM - .DAS_6 = 0xFA, // LKAS HUD and auto headlight control from DASM - .LKAS_COMMAND = 0xA6, // LKAS controls from DASM - .CRUISE_BUTTONS = 0xB1, // Cruise control buttons - }; - - static RxCheck chrysler_ram_dt_rx_checks[] = { - {.msg = {{CHRYSLER_RAM_DT_ADDRS.EPS_2, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_DT_ADDRS.ESP_1, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_DT_ADDRS.ESP_8, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_DT_ADDRS.ECM_5, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_DT_ADDRS.DAS_3, 2, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - }; - - static RxCheck chrysler_rx_checks[] = { - {.msg = {{CHRYSLER_ADDRS.EPS_2, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_ADDRS.ESP_1, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - //{.msg = {{ESP_8, 0, 8, .max_counter = 15U, .frequency = 50U}}}, - {.msg = {{514, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_ADDRS.ECM_5, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_ADDRS.DAS_3, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - }; - - static const CanMsg CHRYSLER_TX_MSGS[] = { - {CHRYSLER_ADDRS.CRUISE_BUTTONS, 0, 3}, - {CHRYSLER_ADDRS.LKAS_COMMAND, 0, 6}, - {CHRYSLER_ADDRS.DAS_6, 0, 8}, - }; - - static const CanMsg CHRYSLER_RAM_DT_TX_MSGS[] = { - {CHRYSLER_RAM_DT_ADDRS.CRUISE_BUTTONS, 2, 3}, - {CHRYSLER_RAM_DT_ADDRS.LKAS_COMMAND, 0, 8}, - {CHRYSLER_RAM_DT_ADDRS.DAS_6, 0, 8}, - }; - -#ifdef ALLOW_DEBUG - // CAN messages for the 5th gen RAM HD platform - static const ChryslerAddrs CHRYSLER_RAM_HD_ADDRS = { - .EPS_2 = 0x220, // EPS driver input torque - .ESP_1 = 0x140, // Brake pedal and vehicle speed - .ESP_8 = 0x11C, // Brake pedal and vehicle speed - .ECM_5 = 0x22F, // Throttle position sensor - .DAS_3 = 0x1F4, // ACC engagement states from DASM - .DAS_6 = 0x275, // LKAS HUD and auto headlight control from DASM - .LKAS_COMMAND = 0x276, // LKAS controls from DASM - .CRUISE_BUTTONS = 0x23A, // Cruise control buttons - }; - - static RxCheck chrysler_ram_hd_rx_checks[] = { - {.msg = {{CHRYSLER_RAM_HD_ADDRS.EPS_2, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_HD_ADDRS.ESP_1, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_HD_ADDRS.ESP_8, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_HD_ADDRS.ECM_5, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{CHRYSLER_RAM_HD_ADDRS.DAS_3, 2, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - }; - - static const CanMsg CHRYSLER_RAM_HD_TX_MSGS[] = { - {CHRYSLER_RAM_HD_ADDRS.CRUISE_BUTTONS, 2, 3}, - {CHRYSLER_RAM_HD_ADDRS.LKAS_COMMAND, 0, 8}, - {CHRYSLER_RAM_HD_ADDRS.DAS_6, 0, 8}, - }; - - const uint32_t CHRYSLER_PARAM_RAM_HD = 2U; // set for Ram HD platform - bool enable_ram_hd = GET_FLAG(param, CHRYSLER_PARAM_RAM_HD); -#endif - - safety_config ret; - - bool enable_ram_dt = GET_FLAG(param, CHRYSLER_PARAM_RAM_DT); - - if (enable_ram_dt) { - chrysler_platform = CHRYSLER_RAM_DT; - chrysler_addrs = &CHRYSLER_RAM_DT_ADDRS; - ret = BUILD_SAFETY_CFG(chrysler_ram_dt_rx_checks, CHRYSLER_RAM_DT_TX_MSGS); -#ifdef ALLOW_DEBUG - } else if (enable_ram_hd) { - chrysler_platform = CHRYSLER_RAM_HD; - chrysler_addrs = &CHRYSLER_RAM_HD_ADDRS; - ret = BUILD_SAFETY_CFG(chrysler_ram_hd_rx_checks, CHRYSLER_RAM_HD_TX_MSGS); -#endif - } else { - chrysler_platform = CHRYSLER_PACIFICA; - chrysler_addrs = &CHRYSLER_ADDRS; - ret = BUILD_SAFETY_CFG(chrysler_rx_checks, CHRYSLER_TX_MSGS); - } - return ret; -} - -const safety_hooks chrysler_hooks = { - .init = chrysler_init, - .rx = chrysler_rx_hook, - .tx = chrysler_tx_hook, - .fwd = chrysler_fwd_hook, - .get_counter = chrysler_get_counter, - .get_checksum = chrysler_get_checksum, - .compute_checksum = chrysler_compute_checksum, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_defaults.h b/opendbc_repo/opendbc/safety/safety/safety_defaults.h deleted file mode 100644 index ca7a18c6f0..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_defaults.h +++ /dev/null @@ -1,76 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -void default_rx_hook(const CANPacket_t *to_push) { - UNUSED(to_push); -} - -// *** no output safety mode *** - -static safety_config nooutput_init(uint16_t param) { - UNUSED(param); - return (safety_config){NULL, 0, NULL, 0}; -} - -// GCOV_EXCL_START -// Unreachable by design (doesn't define any tx msgs) -static bool nooutput_tx_hook(const CANPacket_t *to_send) { - UNUSED(to_send); - return false; -} -// GCOV_EXCL_STOP - -static int default_fwd_hook(int bus_num, int addr) { - UNUSED(bus_num); - UNUSED(addr); - return -1; -} - -const safety_hooks nooutput_hooks = { - .init = nooutput_init, - .rx = default_rx_hook, - .tx = nooutput_tx_hook, - .fwd = default_fwd_hook, -}; - -// *** all output safety mode *** - -// Enables passthrough mode where relay is open and bus 0 gets forwarded to bus 2 and vice versa -static bool alloutput_passthrough = false; - -static safety_config alloutput_init(uint16_t param) { - // Enables passthrough mode where relay is open and bus 0 gets forwarded to bus 2 and vice versa - const uint16_t ALLOUTPUT_PARAM_PASSTHROUGH = 1; - controls_allowed = true; - alloutput_passthrough = GET_FLAG(param, ALLOUTPUT_PARAM_PASSTHROUGH); - return (safety_config){NULL, 0, NULL, 0}; -} - -static bool alloutput_tx_hook(const CANPacket_t *to_send) { - UNUSED(to_send); - return true; -} - -static int alloutput_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - UNUSED(addr); - - if (alloutput_passthrough) { - if (bus_num == 0) { - bus_fwd = 2; - } - if (bus_num == 2) { - bus_fwd = 0; - } - } - - return bus_fwd; -} - -const safety_hooks alloutput_hooks = { - .init = alloutput_init, - .rx = default_rx_hook, - .tx = alloutput_tx_hook, - .fwd = alloutput_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_elm327.h b/opendbc_repo/opendbc/safety/safety/safety_elm327.h deleted file mode 100644 index 83efd826b9..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_elm327.h +++ /dev/null @@ -1,42 +0,0 @@ -#pragma once - -#include "safety_declarations.h" -#include "safety_defaults.h" - -static bool elm327_tx_hook(const CANPacket_t *to_send) { - const int GM_CAMERA_DIAG_ADDR = 0x24B; - - bool tx = true; - int addr = GET_ADDR(to_send); - int len = GET_LEN(to_send); - - // All ISO 15765-4 messages must be 8 bytes long - if (len != 8) { - tx = false; - } - - // Check valid 29 bit send addresses for ISO 15765-4 - // Check valid 11 bit send addresses for ISO 15765-4 - if ((addr != 0x18DB33F1) && ((addr & 0x1FFF00FF) != 0x18DA00F1) && - ((addr & 0x1FFFFF00) != 0x600) && ((addr & 0x1FFFFF00) != 0x700) && - (addr != GM_CAMERA_DIAG_ADDR)) { - tx = false; - } - - // GM camera uses non-standard diagnostic address, this has no control message address collisions - if ((addr == GM_CAMERA_DIAG_ADDR) && (len == 8)) { - // Only allow known frame types for ISO 15765-2 - if ((GET_BYTE(to_send, 0) & 0xF0U) > 0x30U) { - tx = false; - } - } - return tx; -} - -// If current_board->has_obd and safety_param == 0, bus 1 is multiplexed to the OBD-II port -const safety_hooks elm327_hooks = { - .init = nooutput_init, - .rx = default_rx_hook, - .tx = elm327_tx_hook, - .fwd = default_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_ford.h b/opendbc_repo/opendbc/safety/safety/safety_ford.h deleted file mode 100644 index 897a90a41e..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_ford.h +++ /dev/null @@ -1,434 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -// Safety-relevant CAN messages for Ford vehicles. -#define FORD_EngBrakeData 0x165 // RX from PCM, for driver brake pedal and cruise state -#define FORD_EngVehicleSpThrottle 0x204 // RX from PCM, for driver throttle input -#define FORD_DesiredTorqBrk 0x213 // RX from ABS, for standstill state -#define FORD_BrakeSysFeatures 0x415 // RX from ABS, for vehicle speed -#define FORD_EngVehicleSpThrottle2 0x202 // RX from PCM, for second vehicle speed -#define FORD_Yaw_Data_FD1 0x91 // RX from RCM, for yaw rate -#define FORD_Steering_Data_FD1 0x083 // TX by OP, various driver switches and LKAS/CC buttons -#define FORD_ACCDATA 0x186 // TX by OP, ACC controls -#define FORD_ACCDATA_3 0x18A // TX by OP, ACC/TJA user interface -#define FORD_Lane_Assist_Data1 0x3CA // TX by OP, Lane Keep Assist -#define FORD_LateralMotionControl 0x3D3 // TX by OP, Lateral Control message -#define FORD_LateralMotionControl2 0x3D6 // TX by OP, alternate Lateral Control message -#define FORD_IPMA_Data 0x3D8 // TX by OP, IPMA and LKAS user interface - -// CAN bus numbers. -#define FORD_MAIN_BUS 0U -#define FORD_CAM_BUS 2U - -static uint8_t ford_get_counter(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - uint8_t cnt = 0; - if (addr == FORD_BrakeSysFeatures) { - // Signal: VehVActlBrk_No_Cnt - cnt = (GET_BYTE(to_push, 2) >> 2) & 0xFU; - } else if (addr == FORD_Yaw_Data_FD1) { - // Signal: VehRollYaw_No_Cnt - cnt = GET_BYTE(to_push, 5); - } else { - } - return cnt; -} - -static uint32_t ford_get_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - uint8_t chksum = 0; - if (addr == FORD_BrakeSysFeatures) { - // Signal: VehVActlBrk_No_Cs - chksum = GET_BYTE(to_push, 3); - } else if (addr == FORD_Yaw_Data_FD1) { - // Signal: VehRollYawW_No_Cs - chksum = GET_BYTE(to_push, 4); - } else { - } - return chksum; -} - -static uint32_t ford_compute_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - uint8_t chksum = 0; - if (addr == FORD_BrakeSysFeatures) { - chksum += GET_BYTE(to_push, 0) + GET_BYTE(to_push, 1); // Veh_V_ActlBrk - chksum += GET_BYTE(to_push, 2) >> 6; // VehVActlBrk_D_Qf - chksum += (GET_BYTE(to_push, 2) >> 2) & 0xFU; // VehVActlBrk_No_Cnt - chksum = 0xFFU - chksum; - } else if (addr == FORD_Yaw_Data_FD1) { - chksum += GET_BYTE(to_push, 0) + GET_BYTE(to_push, 1); // VehRol_W_Actl - chksum += GET_BYTE(to_push, 2) + GET_BYTE(to_push, 3); // VehYaw_W_Actl - chksum += GET_BYTE(to_push, 5); // VehRollYaw_No_Cnt - chksum += GET_BYTE(to_push, 6) >> 6; // VehRolWActl_D_Qf - chksum += (GET_BYTE(to_push, 6) >> 4) & 0x3U; // VehYawWActl_D_Qf - chksum = 0xFFU - chksum; - } else { - } - - return chksum; -} - -static bool ford_get_quality_flag_valid(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - bool valid = false; - if (addr == FORD_BrakeSysFeatures) { - valid = (GET_BYTE(to_push, 2) >> 6) == 0x3U; // VehVActlBrk_D_Qf - } else if (addr == FORD_EngVehicleSpThrottle2) { - valid = ((GET_BYTE(to_push, 4) >> 5) & 0x3U) == 0x3U; // VehVActlEng_D_Qf - } else if (addr == FORD_Yaw_Data_FD1) { - valid = ((GET_BYTE(to_push, 6) >> 4) & 0x3U) == 0x3U; // VehYawWActl_D_Qf - } else { - } - return valid; -} - -static bool ford_longitudinal = false; - -#define FORD_INACTIVE_CURVATURE 1000U -#define FORD_INACTIVE_CURVATURE_RATE 4096U -#define FORD_INACTIVE_PATH_OFFSET 512U -#define FORD_INACTIVE_PATH_ANGLE 1000U - -#define FORD_CANFD_INACTIVE_CURVATURE_RATE 1024U - -#define FORD_MAX_SPEED_DELTA 2.0 // m/s - -static bool ford_lkas_msg_check(int addr) { - return (addr == FORD_ACCDATA_3) - || (addr == FORD_Lane_Assist_Data1) - || (addr == FORD_LateralMotionControl) - || (addr == FORD_LateralMotionControl2) - || (addr == FORD_IPMA_Data); -} - -// Curvature rate limits -#define FORD_LIMITS(limit_lateral_acceleration) { \ - .max_angle = 1000, /* 0.02 curvature */ \ - .angle_deg_to_can = 50000, /* 1 / (2e-5) rad to can */ \ - .max_angle_error = 100, /* 0.002 * FORD_STEERING_LIMITS.angle_deg_to_can */ \ - .angle_rate_up_lookup = { \ - {5., 25., 25.}, \ - {0.00045, 0.0001, 0.0001} \ - }, \ - .angle_rate_down_lookup = { \ - {5., 25., 25.}, \ - {0.00045, 0.00015, 0.00015} \ - }, \ - \ - /* no blending at low speed due to lack of torque wind-up and inaccurate current curvature */ \ - .angle_error_min_speed = 10.0, /* m/s */ \ - \ - .angle_is_curvature = (limit_lateral_acceleration), \ - .enforce_angle_error = true, \ - .inactive_angle_is_zero = true, \ -} - -static const AngleSteeringLimits FORD_STEERING_LIMITS = FORD_LIMITS(false); - -static void ford_rx_hook(const CANPacket_t *to_push) { - if (GET_BUS(to_push) == FORD_MAIN_BUS) { - int addr = GET_ADDR(to_push); - - // Update in motion state from standstill signal - if (addr == FORD_DesiredTorqBrk) { - // Signal: VehStop_D_Stat - vehicle_moving = ((GET_BYTE(to_push, 3) >> 3) & 0x3U) != 1U; - } - - // Update vehicle speed - if (addr == FORD_BrakeSysFeatures) { - // Signal: Veh_V_ActlBrk - UPDATE_VEHICLE_SPEED(((GET_BYTE(to_push, 0) << 8) | GET_BYTE(to_push, 1)) * 0.01 / 3.6); - } - - // Check vehicle speed against a second source - if (addr == FORD_EngVehicleSpThrottle2) { - // Disable controls if speeds from ABS and PCM ECUs are too far apart. - // Signal: Veh_V_ActlEng - float filtered_pcm_speed = ((GET_BYTE(to_push, 6) << 8) | GET_BYTE(to_push, 7)) * 0.01 / 3.6; - bool is_invalid_speed = ABS(filtered_pcm_speed - ((float)vehicle_speed.values[0] / VEHICLE_SPEED_FACTOR)) > FORD_MAX_SPEED_DELTA; - if (is_invalid_speed) { - controls_allowed = false; - } - } - - // Update vehicle yaw rate - if (addr == FORD_Yaw_Data_FD1) { - // Signal: VehYaw_W_Actl - // TODO: we should use the speed which results in the closest angle measurement to the desired angle - float ford_yaw_rate = (((GET_BYTE(to_push, 2) << 8U) | GET_BYTE(to_push, 3)) * 0.0002) - 6.5; - float current_curvature = ford_yaw_rate / MAX(vehicle_speed.values[0] / VEHICLE_SPEED_FACTOR, 0.1); - // convert current curvature into units on CAN for comparison with desired curvature - update_sample(&angle_meas, ROUND(current_curvature * FORD_STEERING_LIMITS.angle_deg_to_can)); - } - - // Update gas pedal - if (addr == FORD_EngVehicleSpThrottle) { - // Pedal position: (0.1 * val) in percent - // Signal: ApedPos_Pc_ActlArb - gas_pressed = (((GET_BYTE(to_push, 0) & 0x03U) << 8) | GET_BYTE(to_push, 1)) > 0U; - } - - // Update brake pedal and cruise state - if (addr == FORD_EngBrakeData) { - // Signal: BpedDrvAppl_D_Actl - brake_pressed = ((GET_BYTE(to_push, 0) >> 4) & 0x3U) == 2U; - - // Signal: CcStat_D_Actl - unsigned int cruise_state = GET_BYTE(to_push, 1) & 0x07U; - bool cruise_engaged = (cruise_state == 4U) || (cruise_state == 5U); - pcm_cruise_check(cruise_engaged); - } - - // If steering controls messages are received on the destination bus, it's an indication - // that the relay might be malfunctioning. - bool stock_ecu_detected = ford_lkas_msg_check(addr); - if (ford_longitudinal) { - stock_ecu_detected = stock_ecu_detected || (addr == FORD_ACCDATA); - } - generic_rx_checks(stock_ecu_detected); - } - -} - -static bool ford_tx_hook(const CANPacket_t *to_send) { - const LongitudinalLimits FORD_LONG_LIMITS = { - // acceleration cmd limits (used for brakes) - // Signal: AccBrkTot_A_Rq - .max_accel = 5641, // 1.9999 m/s^s - .min_accel = 4231, // -3.4991 m/s^2 - .inactive_accel = 5128, // -0.0008 m/s^2 - - // gas cmd limits - // Signal: AccPrpl_A_Rq & AccPrpl_A_Pred - .max_gas = 700, // 2.0 m/s^2 - .min_gas = 450, // -0.5 m/s^2 - .inactive_gas = 0, // -5.0 m/s^2 - }; - - bool tx = true; - - int addr = GET_ADDR(to_send); - - // Safety check for ACCDATA accel and brake requests - if (addr == FORD_ACCDATA) { - // Signal: AccPrpl_A_Rq - int gas = ((GET_BYTE(to_send, 6) & 0x3U) << 8) | GET_BYTE(to_send, 7); - // Signal: AccPrpl_A_Pred - int gas_pred = ((GET_BYTE(to_send, 2) & 0x3U) << 8) | GET_BYTE(to_send, 3); - // Signal: AccBrkTot_A_Rq - int accel = ((GET_BYTE(to_send, 0) & 0x1FU) << 8) | GET_BYTE(to_send, 1); - // Signal: CmbbDeny_B_Actl - bool cmbb_deny = GET_BIT(to_send, 37U); - - // Signal: AccBrkPrchg_B_Rq & AccBrkDecel_B_Rq - bool brake_actuation = GET_BIT(to_send, 54U) || GET_BIT(to_send, 55U); - - bool violation = false; - violation |= longitudinal_accel_checks(accel, FORD_LONG_LIMITS); - violation |= longitudinal_gas_checks(gas, FORD_LONG_LIMITS); - violation |= longitudinal_gas_checks(gas_pred, FORD_LONG_LIMITS); - - // Safety check for stock AEB - violation |= cmbb_deny; // do not prevent stock AEB actuation - - violation |= !get_longitudinal_allowed() && brake_actuation; - - if (violation) { - tx = false; - } - } - - // Safety check for Steering_Data_FD1 button signals - // Note: Many other signals in this message are not relevant to safety (e.g. blinkers, wiper switches, high beam) - // which we passthru in OP. - if (addr == FORD_Steering_Data_FD1) { - // Violation if resume button is pressed while controls not allowed, or - // if cancel button is pressed when cruise isn't engaged. - bool violation = false; - violation |= GET_BIT(to_send, 8U) && !cruise_engaged_prev; // Signal: CcAslButtnCnclPress (cancel) - violation |= GET_BIT(to_send, 25U) && !controls_allowed; // Signal: CcAsllButtnResPress (resume) - - if (violation) { - tx = false; - } - } - - // Safety check for Lane_Assist_Data1 action - if (addr == FORD_Lane_Assist_Data1) { - // Do not allow steering using Lane_Assist_Data1 (Lane-Departure Aid). - // This message must be sent for Lane Centering to work, and can include - // values such as the steering angle or lane curvature for debugging, - // but the action (LkaActvStats_D2_Req) must be set to zero. - unsigned int action = GET_BYTE(to_send, 0) >> 5; - if (action != 0U) { - tx = false; - } - } - - // Safety check for LateralMotionControl action - if (addr == FORD_LateralMotionControl) { - // Signal: LatCtl_D_Rq - bool steer_control_enabled = ((GET_BYTE(to_send, 4) >> 2) & 0x7U) != 0U; - unsigned int raw_curvature = (GET_BYTE(to_send, 0) << 3) | (GET_BYTE(to_send, 1) >> 5); - unsigned int raw_curvature_rate = ((GET_BYTE(to_send, 1) & 0x1FU) << 8) | GET_BYTE(to_send, 2); - unsigned int raw_path_angle = (GET_BYTE(to_send, 3) << 3) | (GET_BYTE(to_send, 4) >> 5); - unsigned int raw_path_offset = (GET_BYTE(to_send, 5) << 2) | (GET_BYTE(to_send, 6) >> 6); - - // These signals are not yet tested with the current safety limits - bool violation = (raw_curvature_rate != FORD_INACTIVE_CURVATURE_RATE) || (raw_path_angle != FORD_INACTIVE_PATH_ANGLE) || (raw_path_offset != FORD_INACTIVE_PATH_OFFSET); - - // Check angle error and steer_control_enabled - int desired_curvature = raw_curvature - FORD_INACTIVE_CURVATURE; // /FORD_STEERING_LIMITS.angle_deg_to_can to get real curvature - violation |= steer_angle_cmd_checks(desired_curvature, steer_control_enabled, FORD_STEERING_LIMITS); - - if (violation) { - tx = false; - } - } - - // Safety check for LateralMotionControl2 action - if (addr == FORD_LateralMotionControl2) { - static const AngleSteeringLimits FORD_CANFD_STEERING_LIMITS = FORD_LIMITS(true); - - // Signal: LatCtl_D2_Rq - bool steer_control_enabled = ((GET_BYTE(to_send, 0) >> 4) & 0x7U) != 0U; - unsigned int raw_curvature = (GET_BYTE(to_send, 2) << 3) | (GET_BYTE(to_send, 3) >> 5); - unsigned int raw_curvature_rate = (GET_BYTE(to_send, 6) << 3) | (GET_BYTE(to_send, 7) >> 5); - unsigned int raw_path_angle = ((GET_BYTE(to_send, 3) & 0x1FU) << 6) | (GET_BYTE(to_send, 4) >> 2); - unsigned int raw_path_offset = ((GET_BYTE(to_send, 4) & 0x3U) << 8) | GET_BYTE(to_send, 5); - - // These signals are not yet tested with the current safety limits - bool violation = (raw_curvature_rate != FORD_CANFD_INACTIVE_CURVATURE_RATE) || (raw_path_angle != FORD_INACTIVE_PATH_ANGLE) || (raw_path_offset != FORD_INACTIVE_PATH_OFFSET); - - // Check angle error and steer_control_enabled - int desired_curvature = raw_curvature - FORD_INACTIVE_CURVATURE; // /FORD_STEERING_LIMITS.angle_deg_to_can to get real curvature - violation |= steer_angle_cmd_checks(desired_curvature, steer_control_enabled, FORD_CANFD_STEERING_LIMITS); - - if (violation) { - tx = false; - } - } - - return tx; -} - -static int ford_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - switch (bus_num) { - case FORD_MAIN_BUS: { - // Forward all traffic from bus 0 onward - bus_fwd = FORD_CAM_BUS; - break; - } - case FORD_CAM_BUS: { - if (ford_lkas_msg_check(addr)) { - // Block stock LKAS and UI messages - bus_fwd = -1; - } else if (ford_longitudinal && (addr == FORD_ACCDATA)) { - // Block stock ACC message - bus_fwd = -1; - } else { - // Forward remaining traffic - bus_fwd = FORD_MAIN_BUS; - } - break; - } - default: { - // No other buses should be in use; fallback to do-not-forward - bus_fwd = -1; - break; - } - } - - return bus_fwd; -} - -static safety_config ford_init(uint16_t param) { - bool ford_canfd = false; - - // warning: quality flags are not yet checked in openpilot's CAN parser, - // this may be the cause of blocked messages - static RxCheck ford_rx_checks[] = { - {.msg = {{FORD_BrakeSysFeatures, 0, 8, .max_counter = 15U, .quality_flag=true, .frequency = 50U}, { 0 }, { 0 }}}, - // FORD_EngVehicleSpThrottle2 has a counter that either randomly skips or by 2, likely ECU bug - // Some hybrid models also experience a bug where this checksum mismatches for one or two frames under heavy acceleration with ACC - // It has been confirmed that the Bronco Sport's camera only disallows ACC for bad quality flags, not counters or checksums, so we match that - {.msg = {{FORD_EngVehicleSpThrottle2, 0, 8, .ignore_checksum = true, .ignore_counter = true, .quality_flag=true, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{FORD_Yaw_Data_FD1, 0, 8, .max_counter = 255U, .quality_flag=true, .frequency = 100U}, { 0 }, { 0 }}}, - // These messages have no counter or checksum - {.msg = {{FORD_EngBrakeData, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, - {.msg = {{FORD_EngVehicleSpThrottle, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{FORD_DesiredTorqBrk, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, - }; - - #define FORD_COMMON_TX_MSGS \ - {FORD_Steering_Data_FD1, 0, 8}, \ - {FORD_Steering_Data_FD1, 2, 8}, \ - {FORD_ACCDATA_3, 0, 8}, \ - {FORD_Lane_Assist_Data1, 0, 8}, \ - {FORD_IPMA_Data, 0, 8}, \ - - static const CanMsg FORD_CANFD_LONG_TX_MSGS[] = { - FORD_COMMON_TX_MSGS - {FORD_ACCDATA, 0, 8}, - {FORD_LateralMotionControl2, 0, 8}, - }; - - static const CanMsg FORD_CANFD_STOCK_TX_MSGS[] = { - FORD_COMMON_TX_MSGS - {FORD_LateralMotionControl2, 0, 8}, - }; - - static const CanMsg FORD_STOCK_TX_MSGS[] = { - FORD_COMMON_TX_MSGS - {FORD_LateralMotionControl, 0, 8}, - }; - - static const CanMsg FORD_LONG_TX_MSGS[] = { - FORD_COMMON_TX_MSGS - {FORD_ACCDATA, 0, 8}, - {FORD_LateralMotionControl, 0, 8}, - }; - - const uint16_t FORD_PARAM_CANFD = 2; - ford_canfd = GET_FLAG(param, FORD_PARAM_CANFD); - - ford_longitudinal = false; - -#ifdef ALLOW_DEBUG - const uint16_t FORD_PARAM_LONGITUDINAL = 1; - ford_longitudinal = GET_FLAG(param, FORD_PARAM_LONGITUDINAL); -#endif - - // Longitudinal is the default for CAN, and optional for CAN FD w/ ALLOW_DEBUG - ford_longitudinal = !ford_canfd || ford_longitudinal; - - safety_config ret; - if (ford_canfd) { - ret = ford_longitudinal ? BUILD_SAFETY_CFG(ford_rx_checks, FORD_CANFD_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(ford_rx_checks, FORD_CANFD_STOCK_TX_MSGS); - } else { - ret = ford_longitudinal ? BUILD_SAFETY_CFG(ford_rx_checks, FORD_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(ford_rx_checks, FORD_STOCK_TX_MSGS); - } - return ret; -} - -const safety_hooks ford_hooks = { - .init = ford_init, - .rx = ford_rx_hook, - .tx = ford_tx_hook, - .fwd = ford_fwd_hook, - .get_counter = ford_get_counter, - .get_checksum = ford_get_checksum, - .compute_checksum = ford_compute_checksum, - .get_quality_flag_valid = ford_get_quality_flag_valid, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_gm.h b/opendbc_repo/opendbc/safety/safety/safety_gm.h deleted file mode 100644 index ebb7dfd854..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_gm.h +++ /dev/null @@ -1,383 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -// TODO: do checksum and counter checks. Add correct timestep, 0.1s for now. -#define GM_COMMON_RX_CHECKS \ - {.msg = {{0x184, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ - {.msg = {{0x34A, 0, 5, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ - {.msg = {{0x1E1, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ - {.msg = {{0x1C4, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ - {.msg = {{0xC9, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ - -#define GM_ACC_RX_CHECKS \ - {.msg = {{0xBE, 0, 6, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, /* Volt, Silverado, Acadia Denali */ \ - {0xBE, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, /* Bolt EUV */ \ - {0xBE, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}}}, /* Escalade */ \ - -static const LongitudinalLimits *gm_long_limits; - -enum { - GM_BTN_UNPRESS = 1, - GM_BTN_RESUME = 2, - GM_BTN_SET = 3, - GM_BTN_MAIN = 5, - GM_BTN_CANCEL = 6, -}; - -typedef enum { - GM_ASCM, - GM_CAM -} GmHardware; -static GmHardware gm_hw = GM_ASCM; -static bool gm_cam_long = false; -static bool gm_pcm_cruise = false; -static bool gm_has_acc = true; -static bool gm_pedal_long = false; -static bool gm_cc_long = false; -static bool gm_skip_relay_check = false; -static bool gm_force_ascm = false; - -static void gm_rx_hook(const CANPacket_t *to_push) { - - const int GM_STANDSTILL_THRSLD = 10; // 0.311kph - // panda interceptor threshold needs to be equivalent to openpilot threshold to avoid controls mismatches - // If thresholds are mismatched then it is possible for panda to see the gas fall and rise while openpilot is in the pre-enabled state - const int GM_GAS_INTERCEPTOR_THRESHOLD = 550; // (675 + 355) / 2 ratio between offset and gain from dbc file - #define GM_GET_INTERCEPTOR(msg) (((GET_BYTE((msg), 0) << 8) + GET_BYTE((msg), 1) + (GET_BYTE((msg), 2) << 8) + GET_BYTE((msg), 3)) / 2U) // avg between 2 tracks - - - - if (GET_BUS(to_push) == 0U) { - int addr = GET_ADDR(to_push); - - if (addr == 0x184) { - int torque_driver_new = ((GET_BYTE(to_push, 6) & 0x7U) << 8) | GET_BYTE(to_push, 7); - torque_driver_new = to_signed(torque_driver_new, 11); - // update array of samples - update_sample(&torque_driver, torque_driver_new); - } - - // sample rear wheel speeds - if (addr == 0x34A) { - int left_rear_speed = (GET_BYTE(to_push, 0) << 8) | GET_BYTE(to_push, 1); - int right_rear_speed = (GET_BYTE(to_push, 2) << 8) | GET_BYTE(to_push, 3); - vehicle_moving = (left_rear_speed > GM_STANDSTILL_THRSLD) || (right_rear_speed > GM_STANDSTILL_THRSLD); - } - - // ACC steering wheel buttons (GM_CAM is tied to the PCM) - if ((addr == 0x1E1) && (!gm_pcm_cruise || gm_cc_long)) { - int button = (GET_BYTE(to_push, 5) & 0x70U) >> 4; - - // enter controls on falling edge of set or rising edge of resume (avoids fault) - bool set = (button != GM_BTN_SET) && (cruise_button_prev == GM_BTN_SET); - bool res = (button == GM_BTN_RESUME) && (cruise_button_prev != GM_BTN_RESUME); - if (set || res) { - controls_allowed = true; - } - - // exit controls on cancel press - if (button == GM_BTN_CANCEL) { - controls_allowed = false; - } - - cruise_button_prev = button; - } - - // Reference for brake pressed signals: - // https://github.com/commaai/openpilot/blob/master/selfdrive/car/gm/carstate.py - if ((addr == 0xBE) && (gm_hw == GM_ASCM)) { - brake_pressed = GET_BYTE(to_push, 1) >= 10U; - } - if (addr == 0xC9) { - if (gm_hw == GM_CAM) { - brake_pressed = (GET_BYTE(to_push, 5) & 0x01U) != 0U; - } - acc_main_on = (GET_BYTE(to_push, 3) & 0x20U) != 0U; - } - - if (addr == 0x1C4) { - if (!enable_gas_interceptor) { - gas_pressed = GET_BYTE(to_push, 5) != 0U; - } - - // enter controls on rising edge of ACC, exit controls when ACC off - if (gm_pcm_cruise && gm_has_acc) { - bool cruise_engaged = (GET_BYTE(to_push, 1) >> 5) != 0U; - pcm_cruise_check(cruise_engaged); - } - } - - // Cruise check for CC only cars - if ((addr == 0x3D1) && !gm_has_acc) { - bool cruise_engaged = (GET_BYTE(to_push, 4) >> 7) != 0U; - if (gm_cc_long) { - pcm_cruise_check(cruise_engaged); - } else { - cruise_engaged_prev = cruise_engaged; - } - } - - if (addr == 0xBD) { - regen_braking = (GET_BYTE(to_push, 0) >> 4) != 0U; - } - - // Pedal Interceptor - if ((addr == 0x201) && enable_gas_interceptor) { - int gas_interceptor = GM_GET_INTERCEPTOR(to_push); - gas_pressed = gas_interceptor > GM_GAS_INTERCEPTOR_THRESHOLD; - gas_interceptor_prev = gas_interceptor; - // gm_pcm_cruise = false; - } - - bool stock_ecu_detected = (addr == 0x180); // ASCMLKASteeringCmd - - // Check ASCMGasRegenCmd only if we're blocking it - if (!gm_pcm_cruise && (addr == 0x2CB)) { - stock_ecu_detected = true; - } - generic_rx_checks(stock_ecu_detected); - } -} - -static bool gm_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits GM_STEERING_LIMITS = { - .max_steer = 300, - .max_rate_up = 20, - .max_rate_down = 25, - .driver_torque_allowance = 65, - .driver_torque_multiplier = 4, - .max_rt_delta = 128, - .max_rt_interval = 250000, - .type = TorqueDriverLimited, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - - // BRAKE: safety check - if (addr == 0x315) { - int brake = ((GET_BYTE(to_send, 0) & 0xFU) << 8) + GET_BYTE(to_send, 1); - brake = (0x1000 - brake) & 0xFFF; - if (longitudinal_brake_checks(brake, *gm_long_limits)) { - tx = false; - } - } - - // LKA STEER: safety check - if (addr == 0x180) { - int desired_torque = ((GET_BYTE(to_send, 0) & 0x7U) << 8) + GET_BYTE(to_send, 1); - desired_torque = to_signed(desired_torque, 11); - - bool steer_req = GET_BIT(to_send, 3U); - - if (steer_torque_cmd_checks(desired_torque, steer_req, GM_STEERING_LIMITS)) { - //tx = false; - } - } - - // GAS: safety check (interceptor) - if (addr == 0x200) { - if (longitudinal_interceptor_checks(to_send)) { - tx = 0; - } - } - - // GAS/REGEN: safety check - if (addr == 0x2CB) { - bool apply = GET_BIT(to_send, 0U); - if (apply && !controls_allowed) { - controls_allowed = true; - } - // convert float CAN signal to an int for gas checks: 22534 / 0.125 = 180272 - int gas_regen = (((GET_BYTE(to_send, 1) & 0x7U) << 16) | (GET_BYTE(to_send, 2) << 8) | GET_BYTE(to_send, 3)) - 180272U; - - bool violation = false; - // Allow apply bit in pre-enabled and overriding states - violation |= !controls_allowed && apply; - violation |= longitudinal_gas_checks(gas_regen, *gm_long_limits); - - if (violation) { - tx = false; - } - } - - // BUTTONS: used for resume spamming and cruise cancellation with stock longitudinal - if (addr == 0x1E1) { - int button = (GET_BYTE(to_send, 5) >> 4) & 0x7U; - bool allowed_btn = (button == GM_BTN_CANCEL) && cruise_engaged_prev; - - if (!gm_pcm_cruise) { - allowed_btn |= (button == GM_BTN_SET || button == GM_BTN_RESUME || button == GM_BTN_UNPRESS); - } - if (gm_cc_long) { - allowed_btn |= cruise_engaged_prev && (button == GM_BTN_SET || button == GM_BTN_RESUME || button == GM_BTN_UNPRESS); - } - - if (!allowed_btn) { - tx = false; - } - } - - return tx; -} - -static int gm_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - if (gm_hw == GM_CAM) { - if (bus_num == 0) { - // block PSCMStatus; forwarded through openpilot to hide an alert from the camera - bool is_pscm_msg = (addr == 0x184); - if (!is_pscm_msg) { - bus_fwd = 2; - } - } - - if (bus_num == 2) { - // block lkas message and acc messages if gm_cam_long, forward all others - bool is_lkas_msg = (addr == 0x180); - bool is_acc_msg = (addr == 0x315) || (addr == 0x2CB) || (addr == 0x370); - bool block_msg = is_lkas_msg || (is_acc_msg && gm_cam_long); - if (!block_msg) { - bus_fwd = 0; - } - } - } - - return bus_fwd; -} - -static safety_config gm_init(uint16_t param) { - const uint16_t GM_PARAM_HW_CAM = 1; - const uint16_t GM_PARAM_CC_LONG = 4; - const uint16_t GM_PARAM_NO_CAMERA = 8; - const uint16_t GM_PARAM_HW_ASCM_LONG = 16; - const uint16_t GM_PARAM_NO_ACC = 32; - const uint16_t GM_PARAM_PEDAL_LONG = 64; // TODO: this can be inferred - const uint16_t GM_PARAM_EV = 256; - - // common safety checks assume unscaled integer values - static const int GM_GAS_TO_CAN = 8; // 1 / 0.125 - - static const LongitudinalLimits GM_ASCM_LONG_LIMITS = { - .max_gas = 1018 * GM_GAS_TO_CAN, - .min_gas = -650 * GM_GAS_TO_CAN, - .inactive_gas = -650 * GM_GAS_TO_CAN, - .max_brake = 400, - }; - - static const CanMsg GM_ASCM_TX_MSGS[] = {{0x180, 0, 4}, {0x409, 0, 7}, {0x40A, 0, 7}, {0x2CB, 0, 8}, {0x370, 0, 6}, {0x200, 0, 6}, {0x1E1, 0, 7}, {0xBD, 0, 7},// pt bus - {0xA1, 1, 7}, {0x306, 1, 8}, {0x308, 1, 7}, {0x310, 1, 2}, // obs bus - {0x315, 2, 5}}; // ch bus - - - static const LongitudinalLimits GM_CAM_LONG_LIMITS = { - .max_gas = 1346 * GM_GAS_TO_CAN, - .min_gas = -540 * GM_GAS_TO_CAN, - .inactive_gas = -500 * GM_GAS_TO_CAN, - .max_brake = 400, - }; - - static const CanMsg GM_CAM_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x315, 0, 5}, {0x2CB, 0, 8}, {0x370, 0, 6}, {0x200, 0, 6}, {0x1E1, 0, 7}, // pt bus - {0x184, 2, 8}}; // camera bus - - // TODO: do checksum and counter checks. Add correct timestep, 0.1s for now. - static RxCheck gm_rx_checks[] = { - GM_COMMON_RX_CHECKS - GM_ACC_RX_CHECKS - }; - - static RxCheck gm_ev_rx_checks[] = { - GM_COMMON_RX_CHECKS - GM_ACC_RX_CHECKS - {.msg = {{0xBD, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, { 0 }, { 0 }}}, - }; - - static RxCheck gm_no_acc_rx_checks[] = { - GM_COMMON_RX_CHECKS - {.msg = {{0x3D1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // Non-ACC PCM - }; - - static RxCheck gm_no_acc_ev_rx_checks[] = { - GM_COMMON_RX_CHECKS - {.msg = {{0xBD, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, { 0 }, { 0 }}}, - {.msg = {{0x3D1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // Non-ACC PCM - }; - - static RxCheck gm_pedal_rx_checks[] = { - GM_COMMON_RX_CHECKS - {.msg = {{0xBD, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, { 0 }, { 0 }}}, - {.msg = {{0x3D1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // Non-ACC PCM - {.msg = {{0x201, 0, 6, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // pedal - }; - - static const CanMsg GM_CAM_TX_MSGS[] = {{0x180, 0, 4}, {0x200, 0, 6}, {0x1E1, 0, 7}, // pt bus - {0x1E1, 2, 7}, {0x184, 2, 8}}; // camera bus - - - static const CanMsg GM_CC_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x1E1, 0, 7}, // pt bus - {0x184, 2, 8}, {0x1E1, 2, 7}}; // camera bus - gm_hw = GET_FLAG(param, GM_PARAM_HW_CAM) ? GM_CAM : GM_ASCM; - gm_force_ascm = GET_FLAG(param, GM_PARAM_HW_ASCM_LONG); - - if ((gm_hw == GM_ASCM) || gm_force_ascm) { - gm_long_limits = &GM_ASCM_LONG_LIMITS; - } else if (gm_hw == GM_CAM) { - gm_long_limits = &GM_CAM_LONG_LIMITS; - } else { - } - -#ifdef ALLOW_DEBUG - const uint16_t GM_PARAM_HW_CAM_LONG = 2; - gm_cam_long = GET_FLAG(param, GM_PARAM_HW_CAM_LONG) && !gm_cc_long; -#endif - gm_pedal_long = GET_FLAG(param, GM_PARAM_PEDAL_LONG); - gm_cc_long = GET_FLAG(param, GM_PARAM_CC_LONG); - gm_pcm_cruise = (gm_hw == GM_CAM) && (!gm_cam_long || gm_cc_long) && !gm_force_ascm && !gm_pedal_long; - gm_skip_relay_check = GET_FLAG(param, GM_PARAM_NO_CAMERA); - gm_has_acc = !GET_FLAG(param, GM_PARAM_NO_ACC); - - const uint16_t GM_PARAM_PEDAL_INTERCEPTOR = 128; - enable_gas_interceptor = GET_FLAG(param, GM_PARAM_PEDAL_INTERCEPTOR); - if (enable_gas_interceptor) { - print("GM Pedal Interceptor Enabled\n"); - } - else print("GM Pedal Interceptor Disabled\n"); - - safety_config ret; - if (gm_hw == GM_CAM) { - if (gm_cc_long) { - ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_CC_LONG_TX_MSGS); - print("GM CC Long\n"); - } else if (gm_cam_long) { - ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_CAM_LONG_TX_MSGS); - print("GM CAM Long\n"); - } else { - ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_CAM_TX_MSGS); - print("GM CAM\n"); - } - } else { - ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_ASCM_TX_MSGS); - } - - const bool gm_ev = GET_FLAG(param, GM_PARAM_EV); - if (enable_gas_interceptor) { - SET_RX_CHECKS(gm_pedal_rx_checks, ret); - } else if (!gm_has_acc && gm_ev) { - SET_RX_CHECKS(gm_no_acc_ev_rx_checks, ret); - } else if (!gm_has_acc && !gm_ev) { - SET_RX_CHECKS(gm_no_acc_rx_checks, ret); - } else if (gm_ev) { - SET_RX_CHECKS(gm_ev_rx_checks, ret); - } else {} - - return ret; -} - -const safety_hooks gm_hooks = { - .init = gm_init, - .rx = gm_rx_hook, - .tx = gm_tx_hook, - .fwd = gm_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_honda.h b/opendbc_repo/opendbc/safety/safety/safety_honda.h deleted file mode 100644 index f1bb8b793a..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_honda.h +++ /dev/null @@ -1,461 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -// All common address checks except SCM_BUTTONS which isn't on one Nidec safety configuration -#define HONDA_COMMON_NO_SCM_FEEDBACK_RX_CHECKS(pt_bus) \ - {.msg = {{0x1A6, (pt_bus), 8, .max_counter = 3U, .frequency = 25U}, /* SCM_BUTTONS */ \ - {0x296, (pt_bus), 4, .max_counter = 3U, .frequency = 25U}, { 0 }}}, \ - {.msg = {{0x158, (pt_bus), 8, .max_counter = 3U, .frequency = 100U}, { 0 }, { 0 }}}, /* ENGINE_DATA */ \ - {.msg = {{0x17C, (pt_bus), 8, .max_counter = 3U, .frequency = 100U}, { 0 }, { 0 }}}, /* POWERTRAIN_DATA */ \ - -#define HONDA_COMMON_RX_CHECKS(pt_bus) \ - HONDA_COMMON_NO_SCM_FEEDBACK_RX_CHECKS(pt_bus) \ - {.msg = {{0x326, (pt_bus), 8, .max_counter = 3U, .frequency = 10U}, { 0 }, { 0 }}}, /* SCM_FEEDBACK */ \ - -// Alternate brake message is used on some Honda Bosch, and Honda Bosch radarless (where PT bus is 0) -#define HONDA_ALT_BRAKE_ADDR_CHECK(pt_bus) \ - {.msg = {{0x1BE, (pt_bus), 3, .max_counter = 3U, .frequency = 50U}, { 0 }, { 0 }}}, /* BRAKE_MODULE */ \ - - -// Nidec and bosch radarless has the powertrain bus on bus 0 -static RxCheck honda_common_rx_checks[] = { - HONDA_COMMON_RX_CHECKS(0) -}; - -enum { - HONDA_BTN_NONE = 0, - HONDA_BTN_MAIN = 1, - HONDA_BTN_CANCEL = 2, - HONDA_BTN_SET = 3, - HONDA_BTN_RESUME = 4, -}; - -static int honda_brake = 0; -static bool honda_brake_switch_prev = false; -static bool honda_alt_brake_msg = false; -static bool honda_fwd_brake = false; -static bool honda_bosch_long = false; -static bool honda_bosch_radarless = false; -typedef enum {HONDA_NIDEC, HONDA_BOSCH} HondaHw; -static HondaHw honda_hw = HONDA_NIDEC; - - -static int honda_get_pt_bus(void) { - return ((honda_hw == HONDA_BOSCH) && !honda_bosch_radarless) ? 1 : 0; -} - -static uint32_t honda_get_checksum(const CANPacket_t *to_push) { - int checksum_byte = GET_LEN(to_push) - 1U; - return (uint8_t)(GET_BYTE(to_push, checksum_byte)) & 0xFU; -} - -static uint32_t honda_compute_checksum(const CANPacket_t *to_push) { - int len = GET_LEN(to_push); - uint8_t checksum = 0U; - unsigned int addr = GET_ADDR(to_push); - while (addr > 0U) { - checksum += (uint8_t)(addr & 0xFU); addr >>= 4; - } - for (int j = 0; j < len; j++) { - uint8_t byte = GET_BYTE(to_push, j); - checksum += (uint8_t)(byte & 0xFU) + (byte >> 4U); - if (j == (len - 1)) { - checksum -= (byte & 0xFU); // remove checksum in message - } - } - return (uint8_t)((8U - checksum) & 0xFU); -} - -static uint8_t honda_get_counter(const CANPacket_t *to_push) { - int counter_byte = GET_LEN(to_push) - 1U; - return (GET_BYTE(to_push, counter_byte) >> 4U) & 0x3U; -} - -static void honda_rx_hook(const CANPacket_t *to_push) { - const bool pcm_cruise = ((honda_hw == HONDA_BOSCH) && !honda_bosch_long) || (honda_hw == HONDA_NIDEC); - int pt_bus = honda_get_pt_bus(); - - int addr = GET_ADDR(to_push); - int bus = GET_BUS(to_push); - - // sample speed - if (addr == 0x158) { - // first 2 bytes - vehicle_moving = GET_BYTE(to_push, 0) | GET_BYTE(to_push, 1); - } - - // check ACC main state - // 0x326 for all Bosch and some Nidec, 0x1A6 for some Nidec - if ((addr == 0x326) || (addr == 0x1A6)) { - acc_main_on = GET_BIT(to_push, ((addr == 0x326) ? 28U : 47U)); - if (!acc_main_on) { - controls_allowed = false; - } - } - - // enter controls when PCM enters cruise state - if (pcm_cruise && (addr == 0x17C)) { - const bool cruise_engaged = GET_BIT(to_push, 38U); - // engage on rising edge - if (cruise_engaged && !cruise_engaged_prev) { - controls_allowed = true; - } - - // Since some Nidec cars can brake down to 0 after the PCM disengages, - // we don't disengage when the PCM does. - if (!cruise_engaged && (honda_hw != HONDA_NIDEC)) { - controls_allowed = false; - } - cruise_engaged_prev = cruise_engaged; - } - - // state machine to enter and exit controls for button enabling - // 0x1A6 for the ILX, 0x296 for the Civic Touring - if (((addr == 0x1A6) || (addr == 0x296)) && (bus == pt_bus)) { - int button = (GET_BYTE(to_push, 0) & 0xE0U) >> 5; - - // enter controls on the falling edge of set or resume - bool set = (button != HONDA_BTN_SET) && (cruise_button_prev == HONDA_BTN_SET); - bool res = (button != HONDA_BTN_RESUME) && (cruise_button_prev == HONDA_BTN_RESUME); - if (acc_main_on && !pcm_cruise && (set || res)) { - controls_allowed = true; - } - - // exit controls once main or cancel are pressed - if ((button == HONDA_BTN_MAIN) || (button == HONDA_BTN_CANCEL)) { - controls_allowed = false; - } - cruise_button_prev = button; - } - - // user brake signal on 0x17C reports applied brake from computer brake on accord - // and crv, which prevents the usual brake safety from working correctly. these - // cars have a signal on 0x1BE which only detects user's brake being applied so - // in these cases, this is used instead. - // most hondas: 0x17C - // accord, crv: 0x1BE - if (honda_alt_brake_msg) { - if (addr == 0x1BE) { - brake_pressed = GET_BIT(to_push, 4U); - } - } else { - if (addr == 0x17C) { - // also if brake switch is 1 for two CAN frames, as brake pressed is delayed - const bool brake_switch = GET_BIT(to_push, 32U); - brake_pressed = (GET_BIT(to_push, 53U)) || (brake_switch && honda_brake_switch_prev); - honda_brake_switch_prev = brake_switch; - } - } - - if (addr == 0x17C) { - gas_pressed = GET_BYTE(to_push, 0) != 0U; - } - - // disable stock Honda AEB in alternative experience - if (!(alternative_experience & ALT_EXP_DISABLE_STOCK_AEB)) { - if ((bus == 2) && (addr == 0x1FA)) { - bool honda_stock_aeb = GET_BIT(to_push, 29U); - int honda_stock_brake = (GET_BYTE(to_push, 0) << 2) | (GET_BYTE(to_push, 1) >> 6); - - // Forward AEB when stock braking is higher than openpilot braking - // only stop forwarding when AEB event is over - if (!honda_stock_aeb) { - honda_fwd_brake = false; - } else if (honda_stock_brake >= honda_brake) { - honda_fwd_brake = true; - } else { - // Leave Honda forward brake as is - } - } - } - - int bus_rdr_car = (honda_hw == HONDA_BOSCH) ? 0 : 2; // radar bus, car side - bool stock_ecu_detected = false; - - // If steering controls messages are received on the destination bus, it's an indication - // that the relay might be malfunctioning - if ((addr == 0xE4) || (addr == 0x194)) { - if (((honda_hw != HONDA_NIDEC) && (bus == bus_rdr_car)) || ((honda_hw == HONDA_NIDEC) && (bus == 0))) { - stock_ecu_detected = true; - } - } - // If Honda Bosch longitudinal mode is selected we need to ensure the radar is turned off - // Verify this by ensuring ACC_CONTROL (0x1DF) is not received on the PT bus - if (honda_bosch_long && !honda_bosch_radarless && (bus == pt_bus) && (addr == 0x1DF)) { - stock_ecu_detected = true; - } - - generic_rx_checks(stock_ecu_detected); - -} - -static bool honda_tx_hook(const CANPacket_t *to_send) { - - const LongitudinalLimits HONDA_BOSCH_LONG_LIMITS = { - .max_accel = 200, // accel is used for brakes - .min_accel = -350, - - .max_gas = 2000, - .inactive_gas = -30000, - }; - - const LongitudinalLimits HONDA_NIDEC_LONG_LIMITS = { - .max_gas = 198, // 0xc6 - .max_brake = 255, - - .inactive_speed = 0, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - int bus = GET_BUS(to_send); - - int bus_pt = honda_get_pt_bus(); - int bus_buttons = (honda_bosch_radarless) ? 2 : bus_pt; // the camera controls ACC on radarless Bosch cars - - // ACC_HUD: safety check (nidec w/o pedal) - if ((addr == 0x30C) && (bus == bus_pt)) { - int pcm_speed = (GET_BYTE(to_send, 0) << 8) | GET_BYTE(to_send, 1); - int pcm_gas = GET_BYTE(to_send, 2); - - bool violation = false; - violation |= longitudinal_speed_checks(pcm_speed, HONDA_NIDEC_LONG_LIMITS); - violation |= longitudinal_gas_checks(pcm_gas, HONDA_NIDEC_LONG_LIMITS); - if (violation) { - tx = false; - } - } - - // BRAKE: safety check (nidec) - if ((addr == 0x1FA) && (bus == bus_pt)) { - honda_brake = (GET_BYTE(to_send, 0) << 2) + ((GET_BYTE(to_send, 1) >> 6) & 0x3U); - if (longitudinal_brake_checks(honda_brake, HONDA_NIDEC_LONG_LIMITS)) { - tx = false; - } - if (honda_fwd_brake) { - tx = false; - } - } - - // BRAKE/GAS: safety check (bosch) - if ((addr == 0x1DF) && (bus == bus_pt)) { - int accel = (GET_BYTE(to_send, 3) << 3) | ((GET_BYTE(to_send, 4) >> 5) & 0x7U); - accel = to_signed(accel, 11); - - int gas = (GET_BYTE(to_send, 0) << 8) | GET_BYTE(to_send, 1); - gas = to_signed(gas, 16); - - bool violation = false; - violation |= longitudinal_accel_checks(accel, HONDA_BOSCH_LONG_LIMITS); - violation |= longitudinal_gas_checks(gas, HONDA_BOSCH_LONG_LIMITS); - if (violation) { - tx = false; - } - } - - // ACCEL: safety check (radarless) - if ((addr == 0x1C8) && (bus == bus_pt)) { - int accel = (GET_BYTE(to_send, 0) << 4) | (GET_BYTE(to_send, 1) >> 4); - accel = to_signed(accel, 12); - - bool violation = false; - violation |= longitudinal_accel_checks(accel, HONDA_BOSCH_LONG_LIMITS); - if (violation) { - tx = false; - } - } - - // STEER: safety check - if ((addr == 0xE4) || (addr == 0x194)) { - if (!controls_allowed) { - bool steer_applied = GET_BYTE(to_send, 0) | GET_BYTE(to_send, 1); - if (steer_applied) { - //tx = false; - } - } - } - - // Bosch supplemental control check - if (addr == 0xE5) { - if ((GET_BYTES(to_send, 0, 4) != 0x10800004U) || ((GET_BYTES(to_send, 4, 4) & 0x00FFFFFFU) != 0x0U)) { - tx = false; - } - } - - // FORCE CANCEL: safety check only relevant when spamming the cancel button in Bosch HW - // ensuring that only the cancel button press is sent (VAL 2) when controls are off. - // This avoids unintended engagements while still allowing resume spam - if ((addr == 0x296) && !controls_allowed && (bus == bus_buttons)) { - if (((GET_BYTE(to_send, 0) >> 5) & 0x7U) != 2U) { - tx = false; - } - } - - // Only tester present ("\x02\x3E\x80\x00\x00\x00\x00\x00") allowed on diagnostics address - if (addr == 0x18DAB0F1) { - if ((GET_BYTES(to_send, 0, 4) != 0x00803E02U) || (GET_BYTES(to_send, 4, 4) != 0x0U)) { - tx = false; - } - } - - return tx; -} - -static safety_config honda_nidec_init(uint16_t param) { - static CanMsg HONDA_N_TX_MSGS[] = {{0xE4, 0, 5}, {0x194, 0, 4}, {0x1FA, 0, 8}, {0x30C, 0, 8}, {0x33D, 0, 5}}; - - const uint16_t HONDA_PARAM_NIDEC_ALT = 4; - - honda_hw = HONDA_NIDEC; - honda_brake = 0; - honda_brake_switch_prev = false; - honda_fwd_brake = false; - honda_alt_brake_msg = false; - honda_bosch_long = false; - honda_bosch_radarless = false; - - safety_config ret; - - bool enable_nidec_alt = GET_FLAG(param, HONDA_PARAM_NIDEC_ALT); - - if (enable_nidec_alt) { - // For Nidecs with main on signal on an alternate msg (missing 0x326) - static RxCheck honda_nidec_alt_rx_checks[] = { - HONDA_COMMON_NO_SCM_FEEDBACK_RX_CHECKS(0) - }; - - SET_RX_CHECKS(honda_nidec_alt_rx_checks, ret); - } else { - SET_RX_CHECKS(honda_common_rx_checks, ret); - } - - SET_TX_MSGS(HONDA_N_TX_MSGS, ret); - - return ret; -} - -static safety_config honda_bosch_init(uint16_t param) { - static CanMsg HONDA_BOSCH_TX_MSGS[] = {{0xE4, 0, 5}, {0xE5, 0, 8}, {0x296, 1, 4}, {0x33D, 0, 5}, {0x33DA, 0, 5}, {0x33DB, 0, 8}}; // Bosch - static CanMsg HONDA_BOSCH_LONG_TX_MSGS[] = {{0xE4, 1, 5}, {0x1DF, 1, 8}, {0x1EF, 1, 8}, {0x1FA, 1, 8}, {0x30C, 1, 8}, {0x33D, 1, 5}, {0x33DA, 1, 5}, {0x33DB, 1, 8}, {0x39F, 1, 8}, {0x18DAB0F1, 1, 8}}; // Bosch w/ gas and brakes - static CanMsg HONDA_RADARLESS_TX_MSGS[] = {{0xE4, 0, 5}, {0x296, 2, 4}, {0x33D, 0, 8}}; // Bosch radarless - static CanMsg HONDA_RADARLESS_LONG_TX_MSGS[] = {{0xE4, 0, 5}, {0x33D, 0, 8}, {0x1C8, 0, 8}, {0x30C, 0, 8}}; // Bosch radarless w/ gas and brakes - - const uint16_t HONDA_PARAM_ALT_BRAKE = 1; - const uint16_t HONDA_PARAM_RADARLESS = 8; - - static RxCheck honda_common_alt_brake_rx_checks[] = { - HONDA_COMMON_RX_CHECKS(0) - HONDA_ALT_BRAKE_ADDR_CHECK(0) - }; - - static RxCheck honda_bosch_alt_brake_rx_checks[] = { - HONDA_COMMON_RX_CHECKS(1) - HONDA_ALT_BRAKE_ADDR_CHECK(1) - }; - - // Bosch has pt on bus 1, verified 0x1A6 does not exist - static RxCheck honda_bosch_rx_checks[] = { - HONDA_COMMON_RX_CHECKS(1) - }; - - honda_hw = HONDA_BOSCH; - honda_brake_switch_prev = false; - honda_bosch_radarless = GET_FLAG(param, HONDA_PARAM_RADARLESS); - // Checking for alternate brake override from safety parameter - honda_alt_brake_msg = GET_FLAG(param, HONDA_PARAM_ALT_BRAKE); - - // radar disabled so allow gas/brakes -#ifdef ALLOW_DEBUG - const uint16_t HONDA_PARAM_BOSCH_LONG = 2; - honda_bosch_long = GET_FLAG(param, HONDA_PARAM_BOSCH_LONG); -#endif - - safety_config ret; - if (honda_bosch_radarless && honda_alt_brake_msg) { - SET_RX_CHECKS(honda_common_alt_brake_rx_checks, ret); - } else if (honda_bosch_radarless) { - SET_RX_CHECKS(honda_common_rx_checks, ret); - } else if (honda_alt_brake_msg) { - SET_RX_CHECKS(honda_bosch_alt_brake_rx_checks, ret); - } else { - SET_RX_CHECKS(honda_bosch_rx_checks, ret); - } - - if (honda_bosch_radarless) { - if (honda_bosch_long) { - SET_TX_MSGS(HONDA_RADARLESS_LONG_TX_MSGS, ret); - } else { - SET_TX_MSGS(HONDA_RADARLESS_TX_MSGS, ret); - } - } else { - if (honda_bosch_long) { - SET_TX_MSGS(HONDA_BOSCH_LONG_TX_MSGS, ret); - } else { - SET_TX_MSGS(HONDA_BOSCH_TX_MSGS, ret); - } - } - return ret; -} - -static int honda_nidec_fwd_hook(int bus_num, int addr) { - // fwd from car to camera. also fwd certain msgs from camera to car - // 0xE4 is steering on all cars except CRV and RDX, 0x194 for CRV and RDX, - // 0x1FA is brake control, 0x30C is acc hud, 0x33D is lkas hud - int bus_fwd = -1; - - if (bus_num == 0) { - bus_fwd = 2; - } - - if (bus_num == 2) { - // block stock lkas messages and stock acc messages (if OP is doing ACC) - bool is_lkas_msg = (addr == 0xE4) || (addr == 0x194) || (addr == 0x33D); - bool is_acc_hud_msg = addr == 0x30C; - bool is_brake_msg = addr == 0x1FA; - bool block_fwd = is_lkas_msg || is_acc_hud_msg || (is_brake_msg && !honda_fwd_brake); - if (!block_fwd) { - bus_fwd = 0; - } - } - - return bus_fwd; -} - -static int honda_bosch_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - if (bus_num == 0) { - bus_fwd = 2; - } - if (bus_num == 2) { - bool is_lkas_msg = (addr == 0xE4) || (addr == 0xE5) || (addr == 0x33D) || (addr == 0x33DA) || (addr == 0x33DB); - bool is_acc_msg = ((addr == 0x1C8) || (addr == 0x30C)) && honda_bosch_radarless && honda_bosch_long; - bool block_msg = is_lkas_msg || is_acc_msg; - if (!block_msg) { - bus_fwd = 0; - } - } - - return bus_fwd; -} - -const safety_hooks honda_nidec_hooks = { - .init = honda_nidec_init, - .rx = honda_rx_hook, - .tx = honda_tx_hook, - .fwd = honda_nidec_fwd_hook, - .get_counter = honda_get_counter, - .get_checksum = honda_get_checksum, - .compute_checksum = honda_compute_checksum, -}; - -const safety_hooks honda_bosch_hooks = { - .init = honda_bosch_init, - .rx = honda_rx_hook, - .tx = honda_tx_hook, - .fwd = honda_bosch_fwd_hook, - .get_counter = honda_get_counter, - .get_checksum = honda_get_checksum, - .compute_checksum = honda_compute_checksum, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_hyundai.h b/opendbc_repo/opendbc/safety/safety/safety_hyundai.h deleted file mode 100644 index cb16ed9f5d..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_hyundai.h +++ /dev/null @@ -1,522 +0,0 @@ -#pragma once - -#include "safety_declarations.h" -#include "safety_hyundai_common.h" - -#define HYUNDAI_LIMITS(steer, rate_up, rate_down) { \ - .max_steer = (steer), \ - .max_rate_up = (rate_up), \ - .max_rate_down = (rate_down), \ - .max_rt_delta = 112, \ - .max_rt_interval = 250000, \ - .driver_torque_allowance = 50, \ - .driver_torque_multiplier = 2, \ - .type = TorqueDriverLimited, \ - /* the EPS faults when the steering angle is above a certain threshold for too long. to prevent this, */ \ - /* we allow setting CF_Lkas_ActToi bit to 0 while maintaining the requested torque value for two consecutive frames */ \ - .min_valid_request_frames = 89, \ - .max_invalid_request_frames = 2, \ - .min_valid_request_rt_interval = 810000, /* 810ms; a ~10% buffer on cutting every 90 frames */ \ - .has_steer_req_tolerance = true, \ -} - -extern const LongitudinalLimits HYUNDAI_LONG_LIMITS; -const LongitudinalLimits HYUNDAI_LONG_LIMITS = { - .max_accel = 250, // 1/100 m/s2 - .min_accel = -400, // 1/100 m/s2 -}; - -static const CanMsg HYUNDAI_TX_MSGS[] = { - {0x340, 0, 8}, // LKAS11 Bus 0 - {0x4F1, 0, 4}, // CLU11 Bus 0 - {0x485, 0, 8}, // LFAHDA_MFC Bus 0 - {593, 2, 8}, // MDPS12, Bus 2 - {1056, 0, 8}, // SCC11, Bus 0 - {1057, 0, 8}, // SCC12, Bus 0 - {1290, 0, 8}, // SCC13, Bus 0 - {905, 0, 8}, // SCC14, Bus 0 - {909, 0, 8}, // FCA11 Bus 0 - {1155, 0, 8}, // FCA12 Bus 0 - {1186, 0, 8}, // FRT_RADAR11, Bus 0 - {1265, 2, 4}, // CLU11, Bus 0, 2 - {0x7D0, 0, 8}, // radar UDS TX addr Bus 0 (for radar disable) // 2000 - {0x7b1, 0, 8}, -}; - -#define HYUNDAI_COMMON_RX_CHECKS(legacy) \ - {.msg = {{0x260, 0, 8, .max_counter = 3U, .frequency = 100U}, \ - {0x371, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, \ - {0x91, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}}}, \ - {.msg = {{0x386, 0, 8, .ignore_checksum = (legacy), .ignore_counter = (legacy), .max_counter = (legacy) ? 0U : 15U, .frequency = 100U}, { 0 }, { 0 }}}, \ - {.msg = {{0x394, 0, 8, .ignore_checksum = (legacy), .ignore_counter = (legacy), .max_counter = (legacy) ? 0U : 7U, .frequency = 100U}, { 0 }, { 0 }}}, \ - -#define HYUNDAI_SCC12_ADDR_CHECK(scc_bus) \ - {.msg = {{0x421, (scc_bus), 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ - -static bool hyundai_legacy = false; -static bool hyundai_cruise_buttons_alt = false; - -static uint8_t hyundai_get_counter(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - uint8_t cnt = 0; - if (addr == 0x260) { - cnt = (GET_BYTE(to_push, 7) >> 4) & 0x3U; - } else if (addr == 0x386) { - cnt = ((GET_BYTE(to_push, 3) >> 6) << 2) | (GET_BYTE(to_push, 1) >> 6); - } else if (addr == 0x394) { - cnt = (GET_BYTE(to_push, 1) >> 5) & 0x7U; - } else if (addr == 0x421) { - cnt = GET_BYTE(to_push, 7) & 0xFU; - } else if (addr == 0x4F1) { - cnt = (GET_BYTE(to_push, 3) >> 4) & 0xFU; - } else { - } - return cnt; -} - -static uint32_t hyundai_get_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - uint8_t chksum = 0; - if (addr == 0x260) { - chksum = GET_BYTE(to_push, 7) & 0xFU; - } else if (addr == 0x386) { - chksum = ((GET_BYTE(to_push, 7) >> 6) << 2) | (GET_BYTE(to_push, 5) >> 6); - } else if (addr == 0x394) { - chksum = GET_BYTE(to_push, 6) & 0xFU; - } else if (addr == 0x421) { - chksum = GET_BYTE(to_push, 7) >> 4; - } else { - } - return chksum; -} - -static uint32_t hyundai_compute_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - uint8_t chksum = 0; - if (addr == 0x386) { - // count the bits - for (int i = 0; i < 8; i++) { - uint8_t b = GET_BYTE(to_push, i); - for (int j = 0; j < 8; j++) { - uint8_t bit = 0; - // exclude checksum and counter - if (((i != 1) || (j < 6)) && ((i != 3) || (j < 6)) && ((i != 5) || (j < 6)) && ((i != 7) || (j < 6))) { - bit = (b >> (uint8_t)j) & 1U; - } - chksum += bit; - } - } - chksum = (chksum ^ 9U) & 15U; - } else { - // sum of nibbles - for (int i = 0; i < 8; i++) { - if ((addr == 0x394) && (i == 7)) { - continue; // exclude - } - uint8_t b = GET_BYTE(to_push, i); - if (((addr == 0x260) && (i == 7)) || ((addr == 0x394) && (i == 6)) || ((addr == 0x421) && (i == 7))) { - b &= (addr == 0x421) ? 0x0FU : 0xF0U; // remove checksum - } - chksum += (b % 16U) + (b / 16U); - } - chksum = (16U - (chksum % 16U)) % 16U; - } - - return chksum; -} - -static void hyundai_rx_hook(const CANPacket_t *to_push) { - int bus = GET_BUS(to_push); - int addr = GET_ADDR(to_push); - - // SCC12 is on bus 2 for camera-based SCC cars, bus 0 on all others - if (addr == 0x421) { - if (((bus == 0) && !hyundai_camera_scc) || ((bus == 2) && hyundai_camera_scc)) { - // 2 bits: 13-14 - int cruise_engaged = (GET_BYTES(to_push, 0, 4) >> 13) & 0x3U; - hyundai_common_cruise_state_check(cruise_engaged); - } - } - - if (bus == 0) { - if (addr == 0x251) { - int torque_driver_new = (GET_BYTES(to_push, 0, 2) & 0x7ffU) - 1024U; - // update array of samples - update_sample(&torque_driver, torque_driver_new); - } - - // ACC steering wheel buttons - if (addr == 1007) hyundai_cruise_buttons_alt = true; // CASPER_EV: 1007 - if (addr == 1007) { - int cruise_button = (GET_BYTE(to_push, 7) >> 4) & 0x07U; - bool main_button = GET_BIT(to_push, 58U); - hyundai_common_cruise_buttons_check(cruise_button, main_button); - } - else if (addr == 0x4F1 && !hyundai_cruise_buttons_alt) { - int cruise_button = GET_BYTE(to_push, 0) & 0x7U; - bool main_button = GET_BIT(to_push, 3U); - hyundai_common_cruise_buttons_check(cruise_button, main_button); - } - - // gas press, different for EV, hybrid, and ICE models - if ((addr == 0x371) && hyundai_ev_gas_signal) { - gas_pressed = (((GET_BYTE(to_push, 4) & 0x7FU) << 1) | GET_BYTE(to_push, 3) >> 7) != 0U; - } else if ((addr == 0x371) && hyundai_hybrid_gas_signal) { - gas_pressed = GET_BYTE(to_push, 7) != 0U; - } else if ((addr == 0x91) && hyundai_fcev_gas_signal) { - gas_pressed = GET_BYTE(to_push, 6) != 0U; - } else if ((addr == 0x260) && !hyundai_ev_gas_signal && !hyundai_hybrid_gas_signal) { - gas_pressed = (GET_BYTE(to_push, 7) >> 6) != 0U; - } else { - } - - // sample wheel speed, averaging opposite corners - if (addr == 0x386) { - uint32_t front_left_speed = GET_BYTES(to_push, 0, 2) & 0x3FFFU; - uint32_t rear_right_speed = GET_BYTES(to_push, 6, 2) & 0x3FFFU; - vehicle_moving = (front_left_speed > HYUNDAI_STANDSTILL_THRSLD) || (rear_right_speed > HYUNDAI_STANDSTILL_THRSLD); - } - - if (addr == 0x394) { - brake_pressed = ((GET_BYTE(to_push, 5) >> 5U) & 0x3U) == 0x2U; - } - - bool stock_ecu_detected = (addr == 0x340); - - // If openpilot is controlling longitudinal we need to ensure the radar is turned off - // Enforce by checking we don't see SCC12 - if (hyundai_longitudinal && (addr == 0x421)) { - stock_ecu_detected = true; - } - generic_rx_checks(stock_ecu_detected); - } -} - -uint32_t last_ts_lkas11_from_op = 0; -uint32_t last_ts_scc12_from_op = 0; -uint32_t last_ts_scc13_from_op = 0; -uint32_t last_ts_mdps12_from_op = 0; -uint32_t last_ts_fca11_from_op = 0; -uint32_t last_ts_fca12_from_op = 0; - -static bool hyundai_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits HYUNDAI_STEERING_LIMITS = HYUNDAI_LIMITS(512, 10, 10); - const TorqueSteeringLimits HYUNDAI_STEERING_LIMITS_ALT = HYUNDAI_LIMITS(512, 10, 10); - const TorqueSteeringLimits HYUNDAI_STEERING_LIMITS_ALT_2 = HYUNDAI_LIMITS(170, 2, 3); - - bool tx = true; - int addr = GET_ADDR(to_send); - - // FCA11: Block any potential actuation - if (false && addr == 0x38D) { - int CR_VSM_DecCmd = GET_BYTE(to_send, 1); - bool FCA_CmdAct = GET_BIT(to_send, 20U); - bool CF_VSM_DecCmdAct = GET_BIT(to_send, 31U); - - if ((CR_VSM_DecCmd != 0) || FCA_CmdAct || CF_VSM_DecCmdAct) { - tx = false; - } - } - - // ACCEL: safety check - if (addr == 0x421) { - int cruise_engaged = (GET_BYTES(to_send, 0, 4) >> 13) & 0x3U; - if (cruise_engaged) { - if(!controls_allowed) print("auto engage controls_allowed....\n"); - controls_allowed = true; - } - int desired_accel_raw = (((GET_BYTE(to_send, 4) & 0x7U) << 8) | GET_BYTE(to_send, 3)) - 1023U; - int desired_accel_val = ((GET_BYTE(to_send, 5) << 3) | (GET_BYTE(to_send, 4) >> 5)) - 1023U; - - //int aeb_decel_cmd = GET_BYTE(to_send, 2); - //bool aeb_req = GET_BIT(to_send, 54U); - - bool violation = false; - - violation |= longitudinal_accel_checks(desired_accel_raw, HYUNDAI_LONG_LIMITS); - violation |= longitudinal_accel_checks(desired_accel_val, HYUNDAI_LONG_LIMITS); - //violation |= (aeb_decel_cmd != 0); - //violation |= aeb_req; - - if (violation) { - tx = false; - } - } - - // LKA STEER: safety check - if (addr == 0x340) { - int desired_torque = ((GET_BYTES(to_send, 0, 4) >> 16) & 0x7ffU) - 1024U; - bool steer_req = GET_BIT(to_send, 27U); - - const TorqueSteeringLimits limits = hyundai_alt_limits_2 ? HYUNDAI_STEERING_LIMITS_ALT_2 : - hyundai_alt_limits ? HYUNDAI_STEERING_LIMITS_ALT : HYUNDAI_STEERING_LIMITS; - - if (steer_torque_cmd_checks(desired_torque, steer_req, limits)) { - //tx = false; - } - } - - // UDS: Only tester present ("\x02\x3E\x80\x00\x00\x00\x00\x00") allowed on diagnostics address - if (addr == 0x7D0) { - if ((GET_BYTES(to_send, 0, 4) != 0x00803E02U) || (GET_BYTES(to_send, 4, 4) != 0x0U)) { - tx = false; - } - } - - // BUTTONS: used for resume spamming and cruise cancellation - if ((addr == 0x4F1) && !hyundai_longitudinal) { - int button = GET_BYTE(to_send, 0) & 0x7U; - - bool allowed_resume = (button == 1);// && controls_allowed; - bool allowed_set_decel = (button == 2) && controls_allowed; - bool allowed_cancel = (button == 4) && cruise_engaged_prev; - bool allowed_gap_dist = (button == 3) && controls_allowed; - if (!(allowed_resume || allowed_set_decel || allowed_cancel || allowed_gap_dist)) { - tx = false; - } - } - uint32_t now = microsecond_timer_get(); - if(addr == 832) - last_ts_lkas11_from_op = (tx == 0 ? 0 : now); - else if(addr == 1057) - last_ts_scc12_from_op = (tx == 0 ? 0 : now); - else if(addr == 593) - last_ts_mdps12_from_op = (tx == 0 ? 0 : now); - else if (addr == 909) - last_ts_fca11_from_op = (tx == 0 ? 0 : now); - else if (addr == 1155) - last_ts_fca12_from_op = (tx == 0 ? 0 : now); - else if(addr == 1290) - last_ts_scc13_from_op = (tx == 0 ? 0 : now); - - return tx; -} - -static int hyundai_fwd_hook(int bus_num, int addr) { - - int bus_fwd = -1; - - uint32_t now = microsecond_timer_get(); - - // forward cam to ccan and viceversa, except lkas cmd - if (bus_num == 0) { - bus_fwd = 2; - - if(addr == 593) { - if(now - last_ts_mdps12_from_op < 200000) { - bus_fwd = -1; - } - } - } - - if (bus_num == 2) { - bool is_lkas_msg = addr == 832; - bool is_lfahda_msg = addr == 1157; - bool is_scc_msg = addr == 1056 || addr == 1057 || addr == 905; - bool is_scc13_msg = addr == 1290; - bool is_fca11_msg = addr == 909; - bool is_fca12_msg = addr == 1155; - - bool block_msg = is_lkas_msg || is_lfahda_msg || is_scc_msg || is_scc13_msg || is_fca11_msg || is_fca12_msg; - if (!block_msg) { - bus_fwd = 0; - } - else { - if(is_lkas_msg || is_lfahda_msg) { - if(now - last_ts_lkas11_from_op >= 200000) { - bus_fwd = 0; - } - } - else if (is_scc_msg) { - if (now - last_ts_scc12_from_op >= 400000) - bus_fwd = 0; - } - else if (is_scc13_msg) { - if (now - last_ts_scc13_from_op >= 800000) - bus_fwd = 0; - } - else if (is_fca11_msg) { - if (now - last_ts_fca11_from_op >= 400000) - bus_fwd = 0; - } - else if (is_fca12_msg) { - if (now - last_ts_fca12_from_op >= 400000) - bus_fwd = 0; - } - } - } - - return bus_fwd; -} - -/* case - - legacy(on/off) + camera_scc(allways longitudinal on) + longitudinal(scc off) -*/ -static safety_config hyundai_init_carrot(bool legacy_car) { - static const CanMsg HYUNDAI_LONG_TX_MSGS[] = { - {0x340, 0, 8}, // LKAS11 Bus 0 - {0x4F1, 0, 4}, // CLU11 Bus 0 - {0x485, 0, 8}, // LFAHDA_MFC Bus 0 - {0x420, 0, 8}, // SCC11 Bus 0 - {0x421, 0, 8}, // SCC12 Bus 0 - {0x50A, 0, 8}, // SCC13 Bus 0 - {0x389, 0, 8}, // SCC14 Bus 0 - {0x4A2, 0, 2}, // FRT_RADAR11 Bus 0 - {0x38D, 0, 8}, // FCA11 Bus 0 - {0x483, 0, 8}, // FCA12 Bus 0 - {0x7D0, 0, 8}, // radar UDS TX addr Bus 0 (for radar disable) - }; - - static const CanMsg HYUNDAI_CAMERA_SCC_TX_MSGS[] = { - {0x340, 0, 8}, // LKAS11 Bus 0 - {0x4F1, 2, 4}, // CLU11 Bus 2 - {0x485, 0, 8}, // LFAHDA_MFC Bus 0 - {593, 2, 8}, // MDPS12, Bus 2 - {1056, 0, 8}, // SCC11, Bus 0 - {1057, 0, 8}, // SCC12, Bus 0 - {1290, 0, 8}, // SCC13, Bus 0 - {905, 0, 8}, // SCC14, Bus 0 - {909, 0, 8}, // FCA11 Bus 0 - {1155, 0, 8}, // FCA12 Bus 0 - {1186, 0, 8}, // FRT_RADAR11, Bus 0 - {0x4F1, 0, 4}, // CLU11 Bus 0 - }; - - safety_config ret; - if (hyundai_camera_scc) { - static RxCheck hyundai_cam_scc_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(false) - HYUNDAI_SCC12_ADDR_CHECK(2) - }; - static RxCheck hyundai_cam_scc_rx_checks_legacy[] = { - HYUNDAI_COMMON_RX_CHECKS(true) - HYUNDAI_SCC12_ADDR_CHECK(2) - }; - if(legacy_car) ret = BUILD_SAFETY_CFG(hyundai_cam_scc_rx_checks_legacy, HYUNDAI_CAMERA_SCC_TX_MSGS); - else ret = BUILD_SAFETY_CFG(hyundai_cam_scc_rx_checks, HYUNDAI_CAMERA_SCC_TX_MSGS); - } - else if (hyundai_longitudinal) { - static RxCheck hyundai_long_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(false) - // Use CLU11 (buttons) to manage controls allowed instead of SCC cruise state - {.msg = {{0x4F1, 0, 4, .ignore_checksum = true, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }} -}, - }; - static RxCheck hyundai_long_rx_checks_legacy[] = { - HYUNDAI_COMMON_RX_CHECKS(true) - // Use CLU11 (buttons) to manage controls allowed instead of SCC cruise state - {.msg = {{0x4F1, 0, 4, .ignore_checksum = true, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }} -}, - }; - - if(legacy_car) ret = BUILD_SAFETY_CFG(hyundai_long_rx_checks_legacy, HYUNDAI_LONG_TX_MSGS); - else ret = BUILD_SAFETY_CFG(hyundai_long_rx_checks, HYUNDAI_LONG_TX_MSGS); - } - else { - static RxCheck hyundai_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(false) - HYUNDAI_SCC12_ADDR_CHECK(0) - }; - static RxCheck hyundai_rx_checks_legacy[] = { - HYUNDAI_COMMON_RX_CHECKS(true) - //HYUNDAI_SCC12_ADDR_CHECK(0) - }; - - if(legacy_car) ret = BUILD_SAFETY_CFG(hyundai_rx_checks_legacy, HYUNDAI_TX_MSGS); - else ret = BUILD_SAFETY_CFG(hyundai_rx_checks, HYUNDAI_TX_MSGS); - } - return ret; -} - - -static safety_config hyundai_init(uint16_t param) { - static const CanMsg HYUNDAI_LONG_TX_MSGS[] = { - {0x340, 0, 8}, // LKAS11 Bus 0 - {0x4F1, 0, 4}, // CLU11 Bus 0 - {0x485, 0, 8}, // LFAHDA_MFC Bus 0 - {0x420, 0, 8}, // SCC11 Bus 0 - {0x421, 0, 8}, // SCC12 Bus 0 - {0x50A, 0, 8}, // SCC13 Bus 0 - {0x389, 0, 8}, // SCC14 Bus 0 - {0x4A2, 0, 2}, // FRT_RADAR11 Bus 0 - {0x38D, 0, 8}, // FCA11 Bus 0 - {0x483, 0, 8}, // FCA12 Bus 0 - {0x7D0, 0, 8}, // radar UDS TX addr Bus 0 (for radar disable) - }; - - static const CanMsg HYUNDAI_CAMERA_SCC_TX_MSGS[] = { - {0x340, 0, 8}, // LKAS11 Bus 0 - {0x4F1, 2, 4}, // CLU11 Bus 2 - {0x485, 0, 8}, // LFAHDA_MFC Bus 0 - }; - - hyundai_common_init(param); - hyundai_legacy = false; - return hyundai_init_carrot(hyundai_legacy); - - safety_config ret; - if (hyundai_longitudinal) { - static RxCheck hyundai_long_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(false) - // Use CLU11 (buttons) to manage controls allowed instead of SCC cruise state - {.msg = {{0x4F1, 0, 4, .ignore_checksum = true, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - }; - - ret = BUILD_SAFETY_CFG(hyundai_long_rx_checks, HYUNDAI_LONG_TX_MSGS); - } else if (hyundai_camera_scc) { - static RxCheck hyundai_cam_scc_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(false) - HYUNDAI_SCC12_ADDR_CHECK(2) - }; - - ret = BUILD_SAFETY_CFG(hyundai_cam_scc_rx_checks, HYUNDAI_CAMERA_SCC_TX_MSGS); - } else { - static RxCheck hyundai_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(false) - HYUNDAI_SCC12_ADDR_CHECK(0) - }; - - ret = BUILD_SAFETY_CFG(hyundai_rx_checks, HYUNDAI_TX_MSGS); - } - return ret; -} - -static safety_config hyundai_legacy_init(uint16_t param) { - // older hyundai models have less checks due to missing counters and checksums - static RxCheck hyundai_legacy_rx_checks[] = { - HYUNDAI_COMMON_RX_CHECKS(true) - //HYUNDAI_SCC12_ADDR_CHECK(0) - }; - - hyundai_common_init(param); - hyundai_legacy = true; - - return hyundai_init_carrot(hyundai_legacy); - - hyundai_longitudinal = false; - hyundai_camera_scc = false; - return BUILD_SAFETY_CFG(hyundai_legacy_rx_checks, HYUNDAI_TX_MSGS); -} - -const safety_hooks hyundai_hooks = { - .init = hyundai_init, - .rx = hyundai_rx_hook, - .tx = hyundai_tx_hook, - .fwd = hyundai_fwd_hook, - .get_counter = hyundai_get_counter, - .get_checksum = hyundai_get_checksum, - .compute_checksum = hyundai_compute_checksum, -}; - -const safety_hooks hyundai_legacy_hooks = { - .init = hyundai_legacy_init, - .rx = hyundai_rx_hook, - .tx = hyundai_tx_hook, - .fwd = hyundai_fwd_hook, - .get_counter = hyundai_get_counter, - .get_checksum = hyundai_get_checksum, - .compute_checksum = hyundai_compute_checksum, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h b/opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h deleted file mode 100644 index bc56c2b596..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h +++ /dev/null @@ -1,627 +0,0 @@ -#pragma once - -#include "safety_declarations.h" -#include "safety_hyundai_common.h" - -const TorqueSteeringLimits HYUNDAI_CANFD_STEERING_LIMITS = { - .max_steer = 512, //270, - .max_rt_delta = 112, - .max_rt_interval = 250000, - .max_rate_up = 2, - .max_rate_down = 3, - .driver_torque_allowance = 250, - .driver_torque_multiplier = 2, - .type = TorqueDriverLimited, - - // the EPS faults when the steering angle is above a certain threshold for too long. to prevent this, - // we allow setting torque actuation bit to 0 while maintaining the requested torque value for two consecutive frames - .min_valid_request_frames = 89, - .max_invalid_request_frames = 2, - .min_valid_request_rt_interval = 810000, // 810ms; a ~10% buffer on cutting every 90 frames - .has_steer_req_tolerance = true, -}; - -const CanMsg HYUNDAI_CANFD_HDA2_TX_MSGS[] = { - {0x50, 0, 16}, // LKAS - {0x1CF, 1, 8}, // CRUISE_BUTTON - {0x2A4, 0, 24}, // CAM_0x2A4 -}; - -const CanMsg HYUNDAI_CANFD_HDA2_ALT_STEERING_TX_MSGS[] = { - {0x110, 0, 32}, // LKAS_ALT - {0x1CF, 1, 8}, // CRUISE_BUTTON - {0x362, 0, 32}, // CAM_0x362 - {0x1AA, 1, 16}, // CRUISE_ALT_BUTTONS , carrot -}; - -const CanMsg HYUNDAI_CANFD_HDA2_LONG_TX_MSGS[] = { - {0x50, 0, 16}, // LKAS - {0x1CF, 0, 8}, // CRUISE_BUTTON - {0x1CF, 1, 8}, // CRUISE_BUTTON - {0x1CF, 2, 8}, // CRUISE_BUTTON - {0x1AA, 0, 16}, // CRUISE_ALT_BUTTONS , carrot - {0x1AA, 1, 16}, // CRUISE_ALT_BUTTONS , carrot - {0x1AA, 2, 16}, // CRUISE_ALT_BUTTONS , carrot - {0x2A4, 0, 24}, // CAM_0x2A4 - {0x51, 0, 32}, // ADRV_0x51 - {0x730, 1, 8}, // tester present for ADAS ECU disable - {0x12A, 1, 16}, // LFA - {0x160, 1, 16}, // ADRV_0x160 - {0x1E0, 1, 16}, // LFAHDA_CLUSTER - {0x1A0, 1, 32}, // CRUISE_INFO - {0x1EA, 1, 32}, // ADRV_0x1ea - {0x200, 1, 8}, // ADRV_0x200 - {0x345, 1, 8}, // ADRV_0x345 - {0x1DA, 1, 32}, // ADRV_0x1da - - {0x12A, 0, 16}, // LFA - {0x1E0, 0, 16}, // LFAHDA_CLUSTER - {0x160, 0, 16}, // ADRV_0x160 - {0x1EA, 0, 32}, // ADRV_0x1ea - {0x200, 0, 8}, // ADRV_0x200 - {0x1A0, 0, 32}, // CRUISE_INFO - {0x345, 0, 8}, // ADRV_0x345 - {0x1DA, 0, 32}, // ADRV_0x1da - - {0x362, 0, 32}, // CAM_0x362 - {0x362, 1, 32}, // CAM_0x362 - {0x2a4, 1, 24}, // CAM_0x2a4 - - {0x110, 0, 32}, // LKAS_ALT (272) - {0x110, 1, 32}, // LKAS_ALT (272) - - {0x50, 1, 16}, // - {0x51, 1, 32}, // - - {353, 0, 32}, // ADRV_353 - {354, 0, 32}, // CORNER_RADAR_HIGHWAY - {512, 0, 8}, // ADRV_0x200 - {1187, 2, 8}, // 4A3 - {1204, 2, 8}, // 4B4 - - {203, 0, 24}, // CB - {373, 2, 24}, // TCS(0x175) - {506, 2, 32}, // CLUSTER_SPEED_LIMIT - {234, 2, 24}, // MDPS - {687, 2, 8}, // STEER_TOUCH_2AF - - {0x4BE, 2, 8}, // NEW_MSG_4BE (may be corner radar enabler x) - {0x4B9, 2, 8}, // NEW_MSG_4B9 (may be corner radar enabler) -}; - -const CanMsg HYUNDAI_CANFD_HDA1_TX_MSGS[] = { - {0x12A, 0, 16}, // LFA - {0x1A0, 0, 32}, // CRUISE_INFO - {0x1CF, 2, 8}, // CRUISE_BUTTON - {0x1E0, 0, 16}, // LFAHDA_CLUSTER - {0x160, 0, 16}, // ADRV_0x160 - {0x7D0, 0, 8}, // tester present for radar ECU disable - {0x1AA, 2, 16}, // CRUISE_ALT_BUTTONS , carrot - {203, 0, 24}, // CB - {373, 2, 24}, // TCS(0x175) - - {353, 0, 32}, // ADRV_353 - {354, 0, 32}, // CORNER_RADAR_HIGHWAY - {512, 0, 8}, // ADRV_0x200 - {1187, 2, 8}, // 4A3 - {1204, 2, 8}, // 4B4 - {373, 2, 24}, // TCS(0x175) - {234, 2, 24}, // MDPS - {687, 2, 8}, // STEER_TOUCH_2AF - -}; - - -// *** Addresses checked in rx hook *** -// EV, ICE, HYBRID: ACCELERATOR (0x35), ACCELERATOR_BRAKE_ALT (0x100), ACCELERATOR_ALT (0x105) -#define HYUNDAI_CANFD_COMMON_RX_CHECKS(pt_bus) \ - {.msg = {{0x35, (pt_bus), 32, .max_counter = 0xffU, .frequency = 100U}, \ - {0x100, (pt_bus), 32, .max_counter = 0xffU, .frequency = 100U}, \ - {0x105, (pt_bus), 32, .max_counter = 0xffU, .frequency = 100U}}}, \ - {.msg = {{0x175, (pt_bus), 24, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ - {.msg = {{0xa0, (pt_bus), 24, .max_counter = 0xffU, .frequency = 100U}, { 0 }, { 0 }}}, \ - {.msg = {{0xea, (pt_bus), 24, .max_counter = 0xffU, .frequency = 100U}, { 0 }, { 0 }}}, \ - -#define HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(pt_bus) \ - {.msg = {{0x1cf, (pt_bus), 8, .ignore_checksum = true, .max_counter = 0xfU, .frequency = 50U}, { 0 }, { 0 }}}, \ - -#define HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(pt_bus) \ - {.msg = {{0x1aa, (pt_bus), 16, .ignore_checksum = true, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ - -// SCC_CONTROL (from ADAS unit or camera) -#define HYUNDAI_CANFD_SCC_ADDR_CHECK(scc_bus) \ - {.msg = {{0x1a0, (scc_bus), 32, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ - -//static bool hyundai_canfd_alt_buttons = false; -//static bool hyundai_canfd_hda2_alt_steering = false; - -// *** Non-HDA2 checks *** -// Camera sends SCC messages on HDA1. -// Both button messages exist on some platforms, so we ensure we track the correct one using flag -RxCheck hyundai_canfd_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(2) -}; -RxCheck hyundai_canfd_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(2) -}; - -// Longitudinal checks for HDA1 -RxCheck hyundai_canfd_long_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) -}; -RxCheck hyundai_canfd_long_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) -}; - -// Radar sends SCC messages on these cars instead of camera -RxCheck hyundai_canfd_radar_scc_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(0) -}; -RxCheck hyundai_canfd_radar_scc_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(0) -}; - - -// *** HDA2 checks *** -// E-CAN is on bus 1, ADAS unit sends SCC messages on HDA2. -// Does not use the alt buttons message -RxCheck hyundai_canfd_hda2_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(1) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(1) // TODO: carrot: canival no 0x1cf - HYUNDAI_CANFD_SCC_ADDR_CHECK(1) -}; -RxCheck hyundai_canfd_hda2_rx_checks_scc2[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) // TODO: carrot: canival no 0x1cf - HYUNDAI_CANFD_SCC_ADDR_CHECK(2) -}; -RxCheck hyundai_canfd_hda2_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(1) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(1) - HYUNDAI_CANFD_SCC_ADDR_CHECK(1) -}; -RxCheck hyundai_canfd_hda2_alt_buttons_rx_checks_scc2[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(2) -}; -RxCheck hyundai_canfd_hda2_long_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(1) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(1) // TODO: carrot: canival no 0x1cf -}; -RxCheck hyundai_canfd_hda2_long_rx_checks_scc2[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) -}; -RxCheck hyundai_canfd_hda2_long_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(1) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(1) -}; -RxCheck hyundai_canfd_hda2_long_alt_buttons_rx_checks_scc2[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) -}; - - -const int HYUNDAI_PARAM_CANFD_ALT_BUTTONS = 32; -const int HYUNDAI_PARAM_CANFD_HDA2_ALT_STEERING = 128; -bool hyundai_canfd_alt_buttons = false; -bool hyundai_canfd_hda2_alt_steering = false; - -int canfd_tx_addr[32] = { 80, 81, 272, 282, 298, 352, 353, 354, 442, 485, 416, 437, 506, 474, 480, 490, 512, 676, 866, 837, 1402, 908, 1848, 1187, 1204, 203, 0, }; -int canfd_tx_hz[32] = { 100,100, 100, 100, 100, 50, 20, 20, 20, 20, 50, 20, 10, 1, 20, 20, 20, 20, 10, 5, 10, 5, 10, 5, 10, 100, 0, }; -uint32_t canfd_tx_timeout[32] = { 0, }; -int canfd_tx_addr2[32] = { 0x4a3, 373, 506, 463, 426, 234, 687, 0 }; -int canfd_tx_hz2[32] = { 5, 50, 10, 50, 50, 100, 10, 0 }; -uint32_t canfd_tx_timeout2[32] = { 0, }; -uint32_t canfd_tx_time[32] = { 0, }; -uint32_t canfd_tx_time2[32] = { 0, }; - -int hyundai_canfd_hda2_get_lkas_addr(void) { - return hyundai_canfd_hda2_alt_steering ? 0x110 : 0x50; -} - -static uint8_t hyundai_canfd_get_counter(const CANPacket_t *to_push) { - uint8_t ret = 0; - if (GET_LEN(to_push) == 8U) { - ret = GET_BYTE(to_push, 1) >> 4; - } else { - ret = GET_BYTE(to_push, 2); - } - return ret; -} - -static uint32_t hyundai_canfd_get_checksum(const CANPacket_t *to_push) { - uint32_t chksum = GET_BYTE(to_push, 0) | (GET_BYTE(to_push, 1) << 8); - return chksum; -} - -static void hyundai_canfd_rx_hook(const CANPacket_t *to_push) { - int bus = GET_BUS(to_push); - int addr = GET_ADDR(to_push); - - int pt_bus = hyundai_canfd_hda2 ? 1 : 0; - const int scc_bus = hyundai_camera_scc ? 2 : pt_bus; - - if (hyundai_camera_scc) pt_bus = 0; - - if (bus == pt_bus) { - // driver torque - if (addr == 0xea) { - int torque_driver_new = ((GET_BYTE(to_push, 11) & 0x1fU) << 8U) | GET_BYTE(to_push, 10); - torque_driver_new -= 4095; - update_sample(&torque_driver, torque_driver_new); - } - - // cruise buttons - const int button_addr = hyundai_canfd_alt_buttons ? 0x1aa : 0x1cf; - if (addr == button_addr) { - bool main_button = false; - int cruise_button = 0; - if (addr == 0x1cf) { - cruise_button = GET_BYTE(to_push, 2) & 0x7U; - main_button = GET_BIT(to_push, 19U); - } else { - cruise_button = (GET_BYTE(to_push, 4) >> 4) & 0x7U; - main_button = GET_BIT(to_push, 34U); - } - hyundai_common_cruise_buttons_check(cruise_button, main_button); - } - - // gas press, different for EV, hybrid, and ICE models - if ((addr == 0x35) && hyundai_ev_gas_signal) { - gas_pressed = GET_BYTE(to_push, 5) != 0U; - } else if ((addr == 0x105) && hyundai_hybrid_gas_signal) { - gas_pressed = GET_BIT(to_push, 103U) || (GET_BYTE(to_push, 13) != 0U) || GET_BIT(to_push, 112U); - } else if ((addr == 0x100) && !hyundai_ev_gas_signal && !hyundai_hybrid_gas_signal) { - gas_pressed = GET_BIT(to_push, 176U); - } else { - } - - // brake press - if (addr == 0x175) { - brake_pressed = GET_BIT(to_push, 81U); - } - - // vehicle moving - if (addr == 0xa0) { - uint32_t fl = (GET_BYTES(to_push, 8, 2)) & 0x3FFFU; - uint32_t fr = (GET_BYTES(to_push, 10, 2)) & 0x3FFFU; - uint32_t rl = (GET_BYTES(to_push, 12, 2)) & 0x3FFFU; - uint32_t rr = (GET_BYTES(to_push, 14, 2)) & 0x3FFFU; - vehicle_moving = (fl > HYUNDAI_STANDSTILL_THRSLD) || (fr > HYUNDAI_STANDSTILL_THRSLD) || - (rl > HYUNDAI_STANDSTILL_THRSLD) || (rr > HYUNDAI_STANDSTILL_THRSLD); - - // average of all 4 wheel speeds. Conversion: raw * 0.03125 / 3.6 = m/s - UPDATE_VEHICLE_SPEED((fr + rr + rl + fl) / 4.0 * 0.03125 / 3.6); - } - } - - if (bus == scc_bus) { - // cruise state - if ((addr == 0x1a0) && !hyundai_longitudinal) { - // 1=enabled, 2=driver override - int cruise_status = ((GET_BYTE(to_push, 8) >> 4) & 0x7U); - bool cruise_engaged = (cruise_status == 1) || (cruise_status == 2); - hyundai_common_cruise_state_check(cruise_engaged); - } - } - - const int steer_addr = hyundai_canfd_hda2 ? hyundai_canfd_hda2_get_lkas_addr() : 0x12a; - bool stock_ecu_detected = (addr == steer_addr) && (bus == 0); - if (hyundai_longitudinal) { - // on HDA2, ensure ADRV ECU is still knocked out - // on others, ensure accel msg is blocked from camera - const int stock_scc_bus = hyundai_canfd_hda2 ? 1 : 0; - stock_ecu_detected = stock_ecu_detected || ((addr == 0x1a0) && (bus == stock_scc_bus)); - } - generic_rx_checks(stock_ecu_detected); - -} - -static bool hyundai_canfd_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits HYUNDAI_CANFD_STEERING_LIMITS = { - .max_steer = 512, - .max_rt_delta = 112, - .max_rt_interval = 250000, - .max_rate_up = 10, - .max_rate_down = 10, - .driver_torque_allowance = 250, - .driver_torque_multiplier = 2, - .type = TorqueDriverLimited, - - // the EPS faults when the steering angle is above a certain threshold for too long. to prevent this, - // we allow setting torque actuation bit to 0 while maintaining the requested torque value for two consecutive frames - .min_valid_request_frames = 89, - .max_invalid_request_frames = 2, - .min_valid_request_rt_interval = 810000, // 810ms; a ~10% buffer on cutting every 90 frames - .has_steer_req_tolerance = true, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - - // steering - const int steer_addr = (hyundai_canfd_hda2 && !hyundai_longitudinal) ? hyundai_canfd_hda2_get_lkas_addr() : 0x12a; - if (addr == steer_addr) { - int desired_torque = (((GET_BYTE(to_send, 6) & 0xFU) << 7U) | (GET_BYTE(to_send, 5) >> 1U)) - 1024U; - bool steer_req = GET_BIT(to_send, 52U); - - if (steer_torque_cmd_checks(desired_torque, steer_req, HYUNDAI_CANFD_STEERING_LIMITS)) { - //tx = false; - } - } - -#if 0 - // cruise buttons check - if (addr == 0x1cf) { - int button = GET_BYTE(to_send, 2) & 0x7U; - bool is_cancel = (button == HYUNDAI_BTN_CANCEL); - bool is_resume = (button == HYUNDAI_BTN_RESUME); - bool is_set = (button == HYUNDAI_BTN_SET); - - bool allowed = (is_cancel && cruise_engaged_prev) || (is_resume && controls_allowed) || (is_set && controls_allowed); - if (!allowed) { - tx = false; - } - } -#endif - - // UDS: only tester present ("\x02\x3E\x80\x00\x00\x00\x00\x00") allowed on diagnostics address - if ((addr == 0x730) && hyundai_canfd_hda2) { - if ((GET_BYTES(to_send, 0, 4) != 0x00803E02U) || (GET_BYTES(to_send, 4, 4) != 0x0U)) { - tx = false; - } - } - - // ACCEL: safety check - if (addr == 0x1a0) { - int desired_accel_raw = (((GET_BYTE(to_send, 17) & 0x7U) << 8) | GET_BYTE(to_send, 16)) - 1023U; - int desired_accel_val = ((GET_BYTE(to_send, 18) << 4) | (GET_BYTE(to_send, 17) >> 4)) - 1023U; - - bool violation = false; - - if (hyundai_longitudinal) { - int cruise_status = ((GET_BYTE(to_send, 8) >> 4) & 0x7U); - bool cruise_engaged = (cruise_status == 1) || (cruise_status == 2) || (cruise_status == 4); - if (cruise_engaged) { - if (!controls_allowed) print("automatic controls_allowed enabled....\n"); - controls_allowed = true; - } - violation |= longitudinal_accel_checks(desired_accel_raw, HYUNDAI_LONG_LIMITS); - violation |= longitudinal_accel_checks(desired_accel_val, HYUNDAI_LONG_LIMITS); - if (violation) { - print("long violation"); putui((uint32_t)desired_accel_raw); print(","); putui((uint32_t)desired_accel_val); print("\n"); - } - - } else { - // only used to cancel on here - if ((desired_accel_raw != 0) || (desired_accel_val != 0)) { - violation = true; - print("no long violation\n"); - } - } - - if (violation) { - tx = false; - } - } - - for (int i = 0; canfd_tx_addr[i] > 0; i++) { - if (addr == canfd_tx_addr[i]) canfd_tx_time[i] = (tx) ? microsecond_timer_get() : 0; - } - for (int i = 0; canfd_tx_addr2[i] > 0; i++) { - if (addr == canfd_tx_addr2[i]) canfd_tx_time2[i] = (tx) ? microsecond_timer_get() : 0; - } - - return tx; -} - -int addr_list1[128] = { 0, }; -int addr_list_count1 = 0; -int addr_list2[128] = { 0, }; -int addr_list_count2 = 0; -#define OP_CAN_SEND_TIMEOUT 100000 - -static int hyundai_canfd_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - uint32_t now = microsecond_timer_get(); - - if (bus_num == 0) { - bus_fwd = 2; - for (int i = 0; canfd_tx_addr2[i] > 0; i++) { - if (addr == canfd_tx_addr2[i] && (now - canfd_tx_time2[i]) < canfd_tx_timeout2[i]) { - bus_fwd = -1; - break; - } - } - if(addr == 0x4b9) bus_fwd = -1; // maybe corner rara disabler. - } - if (bus_num == 1) { - int i; - for (i = 0; i < addr_list_count1 && i < 127; i++) { - if (addr_list1[i] == addr) { - break; - } - } - if (i == addr_list_count1 && i!=127) { - addr_list1[addr_list_count1] = addr; - addr_list_count1++; - print("!!!!! bus1_list="); - for (int j = 0; j < addr_list_count1; j++) { putui((uint32_t)addr_list1[j]); print(","); } - print("\n"); - } - } - if (bus_num == 2) { - int i; - for (i = 0; i < addr_list_count2 && i < 127; i++) { - if (addr_list2[i] == addr) { - break; - } - } - if (i == addr_list_count2 && i != 127) { - addr_list2[addr_list_count2] = addr; - addr_list_count2++; - print("@@@@ bus2_list="); - for (int j = 0; j < addr_list_count2; j++) { putui((uint32_t)addr_list2[j]); print(","); } - print("\n"); - } -#if 1 - bus_fwd = 0; - for (int i = 0; canfd_tx_addr[i] > 0; i++) { - if (addr == canfd_tx_addr[i] && (now - canfd_tx_time[i]) < canfd_tx_timeout[i]) { - bus_fwd = -1; - break; - } - } - //if (addr == 353) bus_fwd = -1; - //else if (addr == 354) bus_fwd = -1; - //if (addr == 908) bus_fwd = -1; - //else if (addr == 1402) bus_fwd = -1; - // - // Ʒڵ ڵ .. - //if (addr == 698) bus_fwd = -1; - //if (addr == 1848) bus_fwd = -1; - //if (addr == 1996) bus_fwd = -1; -#else - // LKAS for HDA2, LFA for HDA1 - int hda2_lfa_block_addr = hyundai_canfd_hda2_alt_steering ? 0x362 : 0x2a4; - bool is_lkas_msg = ((addr == hyundai_canfd_hda2_get_lkas_addr()) || (addr == hda2_lfa_block_addr)) && hyundai_canfd_hda2; - bool is_lfa_msg = ((addr == 0x12a) && !hyundai_canfd_hda2); - - // HUD icons - bool is_lfahda_msg = ((addr == 0x1e0) && !hyundai_canfd_hda2); - - // CRUISE_INFO for non-HDA2, we send our own longitudinal commands - bool is_scc_msg = ((addr == 0x1a0) && hyundai_longitudinal && !hyundai_canfd_hda2); - - bool block_msg = is_lkas_msg || is_lfa_msg || is_lfahda_msg || is_scc_msg; - if (!block_msg) { - bus_fwd = 0; - } -#endif - } - - return bus_fwd; -} - -static safety_config hyundai_canfd_init(uint16_t param) { - - for (int i = 0; i < 32; i++) { - if (canfd_tx_addr[i] > 0) canfd_tx_timeout[i] = 1. / canfd_tx_hz[i] * 1000000 + 20000; // add 20ms for safety - if (canfd_tx_addr2[i] > 0) canfd_tx_timeout2[i] = 1. / canfd_tx_hz2[i] * 1000000 + 20000; // add 20ms for safety - } - - hyundai_common_init(param); - - gen_crc_lookup_table_16(0x1021, hyundai_canfd_crc_lut); - hyundai_canfd_alt_buttons = GET_FLAG(param, HYUNDAI_PARAM_CANFD_ALT_BUTTONS); - hyundai_canfd_hda2_alt_steering = GET_FLAG(param, HYUNDAI_PARAM_CANFD_HDA2_ALT_STEERING); - - // no long for radar-SCC HDA1 yet - //if (!hyundai_canfd_hda2 && !hyundai_camera_scc) { - // hyundai_longitudinal = false; - //} - safety_config ret; - if (hyundai_longitudinal) { - if (hyundai_canfd_hda2) { - print("hyundai safety canfd_hda2 long-"); - if(hyundai_camera_scc) print("camera_scc \n"); - else print("no camera_scc \n"); - if (hyundai_canfd_alt_buttons) { // carrot : for CANIVAL 4TH HDA2 - print("hyundai safety canfd_hda2 long_alt_buttons\n"); - if (hyundai_camera_scc) ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_alt_buttons_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - else ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - } - else { - if (hyundai_camera_scc) ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - else ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - } - } else { - if(hyundai_canfd_alt_buttons) print("hyundai safety canfd_hda1 long alt_buttons\n"); - else print("hyundai safety canfd_hda1 long general_buttons\n"); - - ret = hyundai_canfd_alt_buttons ? BUILD_SAFETY_CFG(hyundai_canfd_long_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_long_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS); - } - } else { - print("hyundai safety canfd_hda2 stock"); - if (hyundai_camera_scc) print("camera_scc \n"); - else print("no camera_scc \n"); - if (hyundai_canfd_hda2 && hyundai_camera_scc) { - if (hyundai_canfd_alt_buttons) { // carrot : for CANIVAL 4TH HDA2 - ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - } - else { - ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - } - }else if (hyundai_canfd_hda2) { - if (hyundai_canfd_alt_buttons) { // carrot : for CANIVAL 4TH HDA2 - ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - } - else { - ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); - } - } else if (!hyundai_camera_scc) { - static RxCheck hyundai_canfd_radar_scc_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(0) - }; - - // Radar sends SCC messages on these cars instead of camera - static RxCheck hyundai_canfd_radar_scc_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(0) - }; - - ret = hyundai_canfd_alt_buttons ? BUILD_SAFETY_CFG(hyundai_canfd_radar_scc_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_radar_scc_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS); - } else { - // *** Non-HDA2 checks *** - static RxCheck hyundai_canfd_alt_buttons_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(2) - }; - - // Camera sends SCC messages on HDA1. - // Both button messages exist on some platforms, so we ensure we track the correct one using flag - static RxCheck hyundai_canfd_rx_checks[] = { - HYUNDAI_CANFD_COMMON_RX_CHECKS(0) - HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) - HYUNDAI_CANFD_SCC_ADDR_CHECK(2) - }; - - ret = hyundai_canfd_alt_buttons ? BUILD_SAFETY_CFG(hyundai_canfd_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS) : \ - BUILD_SAFETY_CFG(hyundai_canfd_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS); - } - } - - return ret; -} - -const safety_hooks hyundai_canfd_hooks = { - .init = hyundai_canfd_init, - .rx = hyundai_canfd_rx_hook, - .tx = hyundai_canfd_tx_hook, - .fwd = hyundai_canfd_fwd_hook, - .get_counter = hyundai_canfd_get_counter, - .get_checksum = hyundai_canfd_get_checksum, - .compute_checksum = hyundai_common_canfd_compute_checksum, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h b/opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h deleted file mode 100644 index 34a48db20e..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h +++ /dev/null @@ -1,148 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -extern uint16_t hyundai_canfd_crc_lut[256]; -uint16_t hyundai_canfd_crc_lut[256]; - -static const uint8_t HYUNDAI_PREV_BUTTON_SAMPLES = 8; // roughly 160 ms - // -extern const uint32_t HYUNDAI_STANDSTILL_THRSLD; -const uint32_t HYUNDAI_STANDSTILL_THRSLD = 12; // 0.375 kph - -enum { - HYUNDAI_BTN_NONE = 0, - HYUNDAI_BTN_RESUME = 1, - HYUNDAI_BTN_SET = 2, - HYUNDAI_BTN_CANCEL = 4, -}; - -// common state -extern bool hyundai_ev_gas_signal; -bool hyundai_ev_gas_signal = false; - -extern bool hyundai_hybrid_gas_signal; -bool hyundai_hybrid_gas_signal = false; - -extern bool hyundai_longitudinal; -bool hyundai_longitudinal = false; - -extern bool hyundai_camera_scc; -bool hyundai_camera_scc = false; - -extern bool hyundai_canfd_hda2; -bool hyundai_canfd_hda2 = false; - -extern bool hyundai_alt_limits; -bool hyundai_alt_limits = false; - -extern bool hyundai_fcev_gas_signal; -bool hyundai_fcev_gas_signal = false; - -extern bool hyundai_alt_limits_2; -bool hyundai_alt_limits_2 = false; - -static uint8_t hyundai_last_button_interaction; // button messages since the user pressed an enable button - -void hyundai_common_init(uint16_t param) { - const int HYUNDAI_PARAM_EV_GAS = 1; - const int HYUNDAI_PARAM_HYBRID_GAS = 2; - const int HYUNDAI_PARAM_CAMERA_SCC = 8; - const int HYUNDAI_PARAM_CANFD_HDA2 = 16; - const int HYUNDAI_PARAM_ALT_LIMITS = 64; // TODO: shift this down with the rest of the common flags - const int HYUNDAI_PARAM_FCEV_GAS = 256; - const int HYUNDAI_PARAM_ALT_LIMITS_2 = 512; - - hyundai_ev_gas_signal = GET_FLAG(param, HYUNDAI_PARAM_EV_GAS); - hyundai_hybrid_gas_signal = !hyundai_ev_gas_signal && GET_FLAG(param, HYUNDAI_PARAM_HYBRID_GAS); - hyundai_camera_scc = GET_FLAG(param, HYUNDAI_PARAM_CAMERA_SCC); - hyundai_canfd_hda2 = GET_FLAG(param, HYUNDAI_PARAM_CANFD_HDA2); - hyundai_alt_limits = GET_FLAG(param, HYUNDAI_PARAM_ALT_LIMITS); - hyundai_fcev_gas_signal = GET_FLAG(param, HYUNDAI_PARAM_FCEV_GAS); - hyundai_alt_limits_2 = GET_FLAG(param, HYUNDAI_PARAM_ALT_LIMITS_2); - - hyundai_last_button_interaction = HYUNDAI_PREV_BUTTON_SAMPLES; - -#ifdef ALLOW_DEBUG - const int HYUNDAI_PARAM_LONGITUDINAL = 4; - hyundai_longitudinal = GET_FLAG(param, HYUNDAI_PARAM_LONGITUDINAL); -#else - hyundai_longitudinal = false; -#endif -} - -void hyundai_common_cruise_state_check(const bool cruise_engaged) { - // some newer HKG models can re-enable after spamming cancel button, - // so keep track of user button presses to deny engagement if no interaction - - // enter controls on rising edge of ACC and recent user button press, exit controls when ACC off - if (!hyundai_longitudinal) { - hyundai_last_button_interaction = 0U; // carrot - //if (cruise_engaged && !cruise_engaged_prev && (hyundai_last_button_interaction < HYUNDAI_PREV_BUTTON_SAMPLES)) { - if (cruise_engaged) { - controls_allowed = true; - } - - if (!cruise_engaged) { - if(controls_allowed) print("controls_allowed1 = false\n"); - controls_allowed = false; - - } - cruise_engaged_prev = cruise_engaged; - } -} - -void hyundai_common_cruise_buttons_check(const int cruise_button, const bool main_button) { - if(main_button && main_button != cruise_main_prev) { - acc_main_on = !acc_main_on; - } - cruise_main_prev = main_button; - if ((cruise_button == HYUNDAI_BTN_RESUME) || (cruise_button == HYUNDAI_BTN_SET) || (cruise_button == HYUNDAI_BTN_CANCEL) || - (main_button)) { - hyundai_last_button_interaction = 0U; - } else { - hyundai_last_button_interaction = MIN(hyundai_last_button_interaction + 1U, HYUNDAI_PREV_BUTTON_SAMPLES); - } - - if (hyundai_longitudinal) { - // enter controls on falling edge of resume or set - bool set = (cruise_button != HYUNDAI_BTN_SET) && (cruise_button_prev == HYUNDAI_BTN_SET); - bool res = (cruise_button != HYUNDAI_BTN_RESUME) && (cruise_button_prev == HYUNDAI_BTN_RESUME); - if (set || res) { - controls_allowed = true; - } - - // exit controls on cancel press - if (cruise_button == HYUNDAI_BTN_CANCEL) { - controls_allowed = false; - print("controls_allowed2 = false\n"); - } - - cruise_button_prev = cruise_button; - } -} - -uint32_t hyundai_common_canfd_compute_checksum(const CANPacket_t *to_push) { - int len = GET_LEN(to_push); - uint32_t address = GET_ADDR(to_push); - - uint16_t crc = 0; - - for (int i = 2; i < len; i++) { - crc = (crc << 8U) ^ hyundai_canfd_crc_lut[(crc >> 8U) ^ GET_BYTE(to_push, i)]; - } - - // Add address to crc - crc = (crc << 8U) ^ hyundai_canfd_crc_lut[(crc >> 8U) ^ ((address >> 0U) & 0xFFU)]; - crc = (crc << 8U) ^ hyundai_canfd_crc_lut[(crc >> 8U) ^ ((address >> 8U) & 0xFFU)]; - - if (len == 24) { - crc ^= 0x819dU; - } else if (len == 32) { - crc ^= 0x9f5bU; - } else { - - } - - return crc; -} diff --git a/opendbc_repo/opendbc/safety/safety/safety_mazda.h b/opendbc_repo/opendbc/safety/safety/safety_mazda.h deleted file mode 100644 index 43857192d5..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_mazda.h +++ /dev/null @@ -1,131 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -// CAN msgs we care about -#define MAZDA_LKAS 0x243 -#define MAZDA_LKAS_HUD 0x440 -#define MAZDA_CRZ_CTRL 0x21c -#define MAZDA_CRZ_BTNS 0x09d -#define MAZDA_STEER_TORQUE 0x240 -#define MAZDA_ENGINE_DATA 0x202 -#define MAZDA_PEDALS 0x165 - -// CAN bus numbers -#define MAZDA_MAIN 0 -#define MAZDA_CAM 2 - -// track msgs coming from OP so that we know what CAM msgs to drop and what to forward -static void mazda_rx_hook(const CANPacket_t *to_push) { - if ((int)GET_BUS(to_push) == MAZDA_MAIN) { - int addr = GET_ADDR(to_push); - - if (addr == MAZDA_ENGINE_DATA) { - // sample speed: scale by 0.01 to get kph - int speed = (GET_BYTE(to_push, 2) << 8) | GET_BYTE(to_push, 3); - vehicle_moving = speed > 10; // moving when speed > 0.1 kph - } - - if (addr == MAZDA_STEER_TORQUE) { - int torque_driver_new = GET_BYTE(to_push, 0) - 127U; - // update array of samples - update_sample(&torque_driver, torque_driver_new); - } - - // enter controls on rising edge of ACC, exit controls on ACC off - if (addr == MAZDA_CRZ_CTRL) { - bool cruise_engaged = GET_BYTE(to_push, 0) & 0x8U; - pcm_cruise_check(cruise_engaged); - } - - if (addr == MAZDA_ENGINE_DATA) { - gas_pressed = (GET_BYTE(to_push, 4) || (GET_BYTE(to_push, 5) & 0xF0U)); - } - - if (addr == MAZDA_PEDALS) { - brake_pressed = (GET_BYTE(to_push, 0) & 0x10U); - } - - generic_rx_checks((addr == MAZDA_LKAS)); - } -} - -static bool mazda_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits MAZDA_STEERING_LIMITS = { - .max_steer = 800, - .max_rate_up = 10, - .max_rate_down = 25, - .max_rt_delta = 300, - .max_rt_interval = 250000, - .driver_torque_multiplier = 1, - .driver_torque_allowance = 15, - .type = TorqueDriverLimited, - }; - - bool tx = true; - int bus = GET_BUS(to_send); - // Check if msg is sent on the main BUS - if (bus == MAZDA_MAIN) { - int addr = GET_ADDR(to_send); - - // steer cmd checks - if (addr == MAZDA_LKAS) { - int desired_torque = (((GET_BYTE(to_send, 0) & 0x0FU) << 8) | GET_BYTE(to_send, 1)) - 2048U; - - if (steer_torque_cmd_checks(desired_torque, -1, MAZDA_STEERING_LIMITS)) { - tx = false; - } - } - - // cruise buttons check - if (addr == MAZDA_CRZ_BTNS) { - // allow resume spamming while controls allowed, but - // only allow cancel while contrls not allowed - bool cancel_cmd = (GET_BYTE(to_send, 0) == 0x1U); - if (!controls_allowed && !cancel_cmd) { - //tx = false; - } - } - } - - return tx; -} - -static int mazda_fwd_hook(int bus, int addr) { - int bus_fwd = -1; - - if (bus == MAZDA_MAIN) { - bus_fwd = MAZDA_CAM; - } else if (bus == MAZDA_CAM) { - bool block = (addr == MAZDA_LKAS) || (addr == MAZDA_LKAS_HUD); - if (!block) { - bus_fwd = MAZDA_MAIN; - } - } else { - // don't fwd - } - - return bus_fwd; -} - -static safety_config mazda_init(uint16_t param) { - static const CanMsg MAZDA_TX_MSGS[] = {{MAZDA_LKAS, 0, 8}, {MAZDA_CRZ_BTNS, 0, 8}, {MAZDA_LKAS_HUD, 0, 8}}; - - static RxCheck mazda_rx_checks[] = { - {.msg = {{MAZDA_CRZ_CTRL, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MAZDA_CRZ_BTNS, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, - {.msg = {{MAZDA_STEER_TORQUE, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 83U}, { 0 }, { 0 }}}, - {.msg = {{MAZDA_ENGINE_DATA, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MAZDA_PEDALS, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, - }; - - UNUSED(param); - return BUILD_SAFETY_CFG(mazda_rx_checks, MAZDA_TX_MSGS); -} - -const safety_hooks mazda_hooks = { - .init = mazda_init, - .rx = mazda_rx_hook, - .tx = mazda_tx_hook, - .fwd = mazda_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_nissan.h b/opendbc_repo/opendbc/safety/safety/safety_nissan.h deleted file mode 100644 index 78a051df18..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_nissan.h +++ /dev/null @@ -1,164 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -static bool nissan_alt_eps = false; - -static void nissan_rx_hook(const CANPacket_t *to_push) { - int bus = GET_BUS(to_push); - int addr = GET_ADDR(to_push); - - if (bus == (nissan_alt_eps ? 1 : 0)) { - if (addr == 0x2) { - // Current steering angle - // Factor -0.1, little endian - int angle_meas_new = (GET_BYTES(to_push, 0, 4) & 0xFFFFU); - // Multiply by -10 to match scale of LKAS angle - angle_meas_new = to_signed(angle_meas_new, 16) * -10; - - // update array of samples - update_sample(&angle_meas, angle_meas_new); - } - - if (addr == 0x285) { - // Get current speed and standstill - uint16_t right_rear = (GET_BYTE(to_push, 0) << 8) | (GET_BYTE(to_push, 1)); - uint16_t left_rear = (GET_BYTE(to_push, 2) << 8) | (GET_BYTE(to_push, 3)); - vehicle_moving = (right_rear | left_rear) != 0U; - UPDATE_VEHICLE_SPEED((right_rear + left_rear) / 2.0 * 0.005 / 3.6); - } - - // X-Trail 0x15c, Leaf 0x239 - if ((addr == 0x15c) || (addr == 0x239)) { - if (addr == 0x15c){ - gas_pressed = ((GET_BYTE(to_push, 5) << 2) | ((GET_BYTE(to_push, 6) >> 6) & 0x3U)) > 3U; - } else { - gas_pressed = GET_BYTE(to_push, 0) > 3U; - } - } - - // X-trail 0x454, Leaf 0x239 - if ((addr == 0x454) || (addr == 0x239)) { - if (addr == 0x454){ - brake_pressed = (GET_BYTE(to_push, 2) & 0x80U) != 0U; - } else { - brake_pressed = ((GET_BYTE(to_push, 4) >> 5) & 1U) != 0U; - } - } - } - - // Handle cruise enabled - if ((addr == 0x30f) && (bus == (nissan_alt_eps ? 1 : 2))) { - bool cruise_engaged = (GET_BYTE(to_push, 0) >> 3) & 1U; - pcm_cruise_check(cruise_engaged); - } - - generic_rx_checks((addr == 0x169) && (bus == 0)); -} - - -static bool nissan_tx_hook(const CANPacket_t *to_send) { - const AngleSteeringLimits NISSAN_STEERING_LIMITS = { - .max_angle = 60000, // 600 deg, reasonable limit - .angle_deg_to_can = 100, - .angle_rate_up_lookup = { - {0., 5., 15.}, - {5., .8, .15} - }, - .angle_rate_down_lookup = { - {0., 5., 15.}, - {5., 3.5, .4} - }, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - bool violation = false; - - // steer cmd checks - if (addr == 0x169) { - int desired_angle = ((GET_BYTE(to_send, 0) << 10) | (GET_BYTE(to_send, 1) << 2) | ((GET_BYTE(to_send, 2) >> 6) & 0x3U)); - bool lka_active = (GET_BYTE(to_send, 6) >> 4) & 1U; - - // Factor is -0.01, offset is 1310. Flip to correct sign, but keep units in CAN scale - desired_angle = -desired_angle + (1310.0f * NISSAN_STEERING_LIMITS.angle_deg_to_can); - - if (steer_angle_cmd_checks(desired_angle, lka_active, NISSAN_STEERING_LIMITS)) { - violation = true; - } - } - - // acc button check, only allow cancel button to be sent - if (addr == 0x20b) { - // Violation of any button other than cancel is pressed - violation |= ((GET_BYTE(to_send, 1) & 0x3dU) > 0U); - } - - if (violation) { - tx = false; - } - - return tx; -} - - -static int nissan_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - if (bus_num == 0) { - bool block_msg = (addr == 0x280); // CANCEL_MSG - if (!block_msg) { - bus_fwd = 2; // ADAS - } - } - - if (bus_num == 2) { - // 0x169 is LKAS, 0x2b1 LKAS_HUD, 0x4cc LKAS_HUD_INFO_MSG - bool block_msg = ((addr == 0x169) || (addr == 0x2b1) || (addr == 0x4cc)); - if (!block_msg) { - bus_fwd = 0; // V-CAN - } - } - - return bus_fwd; -} - -static safety_config nissan_init(uint16_t param) { - static const CanMsg NISSAN_TX_MSGS[] = { - {0x169, 0, 8}, // LKAS - {0x2b1, 0, 8}, // PROPILOT_HUD - {0x4cc, 0, 8}, // PROPILOT_HUD_INFO_MSG - {0x20b, 2, 6}, // CRUISE_THROTTLE (X-Trail) - {0x20b, 1, 6}, // CRUISE_THROTTLE (Altima) - {0x280, 2, 8} // CANCEL_MSG (Leaf) - }; - - // Signals duplicated below due to the fact that these messages can come in on either CAN bus, depending on car model. - static RxCheck nissan_rx_checks[] = { - {.msg = {{0x2, 0, 5, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, - {0x2, 1, 5, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }}}, // STEER_ANGLE_SENSOR - {.msg = {{0x285, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, - {0x285, 1, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }}}, // WHEEL_SPEEDS_REAR - {.msg = {{0x30f, 2, 3, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, - {0x30f, 1, 3, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }}}, // CRUISE_STATE - {.msg = {{0x15c, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, - {0x15c, 1, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, - {0x239, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}}}, // GAS_PEDAL - {.msg = {{0x454, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, - {0x454, 1, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, - {0x1cc, 0, 4, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}}}, // DOORS_LIGHTS / BRAKE - }; - - // EPS Location. false = V-CAN, true = C-CAN - const int NISSAN_PARAM_ALT_EPS_BUS = 1; - - nissan_alt_eps = GET_FLAG(param, NISSAN_PARAM_ALT_EPS_BUS); - return BUILD_SAFETY_CFG(nissan_rx_checks, NISSAN_TX_MSGS); -} - -const safety_hooks nissan_hooks = { - .init = nissan_init, - .rx = nissan_rx_hook, - .tx = nissan_tx_hook, - .fwd = nissan_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_rivian.h b/opendbc_repo/opendbc/safety/safety/safety_rivian.h deleted file mode 100644 index 9f1f908b85..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_rivian.h +++ /dev/null @@ -1,162 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -static bool rivian_longitudinal = false; - -static void rivian_rx_hook(const CANPacket_t *to_push) { - int bus = GET_BUS(to_push); - int addr = GET_ADDR(to_push); - - if (bus == 0) { - // Vehicle speed - if (addr == 0x208) { - vehicle_moving = GET_BYTE(to_push, 6) | GET_BYTE(to_push, 7); - } - - // Driver torque - if (addr == 0x380) { - int torque_driver_new = (((GET_BYTE(to_push, 2) << 4) | (GET_BYTE(to_push, 3) >> 4))) - 2050U; - update_sample(&torque_driver, torque_driver_new); - } - - // Gas pressed - if (addr == 0x150) { - gas_pressed = GET_BYTE(to_push, 3) | (GET_BYTE(to_push, 4) & 0xC0U); - } - - // Brake pressed - if (addr == 0x38f) { - brake_pressed = GET_BIT(to_push, 23U); - } - - generic_rx_checks(addr == 0x120); // ACM_lkaHbaCmd - if (rivian_longitudinal) { - generic_rx_checks(addr == 0x160); // ACM_longitudinalRequest - } - } - - if (bus == 2) { - // Cruise state - if (addr == 0x100) { - const int feature_status = GET_BYTE(to_push, 2) >> 5U; - pcm_cruise_check(feature_status == 1); - } - } -} - -static bool rivian_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits RIVIAN_STEERING_LIMITS = { - .max_steer = 250, - .max_rate_up = 3, - .max_rate_down = 5, - .max_rt_delta = 125, - .max_rt_interval = 250000, - .driver_torque_multiplier = 2, - .driver_torque_allowance = 100, - .type = TorqueDriverLimited, - }; - - const LongitudinalLimits RIVIAN_LONG_LIMITS = { - .max_accel = 200, - .min_accel = -350, - .inactive_accel = 0, - }; - - bool tx = true; - int bus = GET_BUS(to_send); - - if (bus == 0) { - int addr = GET_ADDR(to_send); - - // Steering control - if (addr == 0x120) { - int desired_torque = ((GET_BYTE(to_send, 2) << 3U) | (GET_BYTE(to_send, 3) >> 5U)) - 1024U; - bool steer_req = GET_BIT(to_send, 28U); - - if (steer_torque_cmd_checks(desired_torque, steer_req, RIVIAN_STEERING_LIMITS)) { - tx = false; - } - } - - // Longitudinal control - if (addr == 0x160) { - int raw_accel = ((GET_BYTE(to_send, 2) << 3) | (GET_BYTE(to_send, 3) >> 5)) - 1024U; - if (longitudinal_accel_checks(raw_accel, RIVIAN_LONG_LIMITS)) { - tx = false; - } - } - } - - return tx; -} - -static int rivian_fwd_hook(int bus, int addr) { - int bus_fwd = -1; - bool block_msg = false; - - if (bus == 0) { - // SCCM_WheelTouch: for hiding hold wheel alert - if (addr == 0x321) { - block_msg = true; - } - - // VDM_AdasSts: for canceling stock ACC - if ((addr == 0x162) && !rivian_longitudinal) { - block_msg = true; - } - - if (!block_msg) { - bus_fwd = 2; - } - } - - if (bus == 2) { - // ACM_lkaHbaCmd: lateral control message - if (addr == 0x120) { - block_msg = true; - } - - // ACM_longitudinalRequest: longitudinal control message - if (rivian_longitudinal && (addr == 0x160)) { - block_msg = true; - } - - if (!block_msg) { - bus_fwd = 0; - } - } - - return bus_fwd; -} - -static safety_config rivian_init(uint16_t param) { - // 0x120 = ACM_lkaHbaCmd, 0x321 = SCCM_WheelTouch, 0x162 = VDM_AdasSts - static const CanMsg RIVIAN_TX_MSGS[] = {{0x120, 0, 8}, {0x321, 2, 7}, {0x162, 2, 8}}; - // 0x160 = ACM_longitudinalRequest - static const CanMsg RIVIAN_LONG_TX_MSGS[] = {{0x120, 0, 8}, {0x321, 2, 7}, {0x160, 0, 5}}; - - static RxCheck rivian_rx_checks[] = { - {.msg = {{0x208, 0, 8, .frequency = 50U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // ESP_Status (speed) - {.msg = {{0x380, 0, 5, .frequency = 100U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // EPAS_SystemStatus (driver torque) - {.msg = {{0x150, 0, 7, .frequency = 50U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // VDM_PropStatus (gas pedal) - {.msg = {{0x38f, 0, 6, .frequency = 50U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // iBESP2 (brakes) - {.msg = {{0x100, 2, 8, .frequency = 100U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // ACM_Status (cruise state) - }; - - UNUSED(param); - #ifdef ALLOW_DEBUG - const int FLAG_RIVIAN_LONG_CONTROL = 1; - rivian_longitudinal = GET_FLAG(param, FLAG_RIVIAN_LONG_CONTROL); - #endif - - return rivian_longitudinal ? BUILD_SAFETY_CFG(rivian_rx_checks, RIVIAN_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(rivian_rx_checks, RIVIAN_TX_MSGS); -} - -const safety_hooks rivian_hooks = { - .init = rivian_init, - .rx = rivian_rx_hook, - .tx = rivian_tx_hook, - .fwd = rivian_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_subaru.h b/opendbc_repo/opendbc/safety/safety/safety_subaru.h deleted file mode 100644 index 3185270b1e..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_subaru.h +++ /dev/null @@ -1,293 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -#define SUBARU_STEERING_LIMITS_GENERATOR(steer_max, rate_up, rate_down) \ - { \ - .max_steer = (steer_max), \ - .max_rt_delta = 940, \ - .max_rt_interval = 250000, \ - .max_rate_up = (rate_up), \ - .max_rate_down = (rate_down), \ - .driver_torque_multiplier = 50, \ - .driver_torque_allowance = 60, \ - .type = TorqueDriverLimited, \ - /* the EPS will temporary fault if the steering rate is too high, so we cut the \ - the steering torque every 7 frames for 1 frame if the steering rate is high */ \ - .min_valid_request_frames = 7, \ - .max_invalid_request_frames = 1, \ - .min_valid_request_rt_interval = 144000, /* 10% tolerance */ \ - .has_steer_req_tolerance = true, \ - } - -#define MSG_SUBARU_Brake_Status 0x13c -#define MSG_SUBARU_CruiseControl 0x240 -#define MSG_SUBARU_Throttle 0x40 -#define MSG_SUBARU_Steering_Torque 0x119 -#define MSG_SUBARU_Wheel_Speeds 0x13a - -#define MSG_SUBARU_ES_LKAS 0x122 -#define MSG_SUBARU_ES_Brake 0x220 -#define MSG_SUBARU_ES_Distance 0x221 -#define MSG_SUBARU_ES_Status 0x222 -#define MSG_SUBARU_ES_DashStatus 0x321 -#define MSG_SUBARU_ES_LKAS_State 0x322 -#define MSG_SUBARU_ES_Infotainment 0x323 - -#define MSG_SUBARU_ES_UDS_Request 0x787 - -#define MSG_SUBARU_ES_HighBeamAssist 0x121 -#define MSG_SUBARU_ES_STATIC_1 0x22a -#define MSG_SUBARU_ES_STATIC_2 0x325 - -#define SUBARU_MAIN_BUS 0 -#define SUBARU_ALT_BUS 1 -#define SUBARU_CAM_BUS 2 - -#define SUBARU_COMMON_TX_MSGS(alt_bus, lkas_msg) \ - {lkas_msg, SUBARU_MAIN_BUS, 8}, \ - {MSG_SUBARU_ES_Distance, alt_bus, 8}, \ - {MSG_SUBARU_ES_DashStatus, SUBARU_MAIN_BUS, 8}, \ - {MSG_SUBARU_ES_LKAS_State, SUBARU_MAIN_BUS, 8}, \ - {MSG_SUBARU_ES_Infotainment, SUBARU_MAIN_BUS, 8}, \ - -#define SUBARU_COMMON_LONG_TX_MSGS(alt_bus) \ - {MSG_SUBARU_ES_Brake, alt_bus, 8}, \ - {MSG_SUBARU_ES_Status, alt_bus, 8}, \ - -#define SUBARU_GEN2_LONG_ADDITIONAL_TX_MSGS() \ - {MSG_SUBARU_ES_UDS_Request, SUBARU_CAM_BUS, 8}, \ - {MSG_SUBARU_ES_HighBeamAssist, SUBARU_MAIN_BUS, 8}, \ - {MSG_SUBARU_ES_STATIC_1, SUBARU_MAIN_BUS, 8}, \ - {MSG_SUBARU_ES_STATIC_2, SUBARU_MAIN_BUS, 8}, \ - -#define SUBARU_COMMON_RX_CHECKS(alt_bus) \ - {.msg = {{MSG_SUBARU_Throttle, SUBARU_MAIN_BUS, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, \ - {.msg = {{MSG_SUBARU_Steering_Torque, SUBARU_MAIN_BUS, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ - {.msg = {{MSG_SUBARU_Wheel_Speeds, alt_bus, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ - {.msg = {{MSG_SUBARU_Brake_Status, alt_bus, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ - {.msg = {{MSG_SUBARU_CruiseControl, alt_bus, 8, .max_counter = 15U, .frequency = 20U}, { 0 }, { 0 }}}, \ - -static bool subaru_gen2 = false; -static bool subaru_longitudinal = false; - -static uint32_t subaru_get_checksum(const CANPacket_t *to_push) { - return (uint8_t)GET_BYTE(to_push, 0); -} - -static uint8_t subaru_get_counter(const CANPacket_t *to_push) { - return (uint8_t)(GET_BYTE(to_push, 1) & 0xFU); -} - -static uint32_t subaru_compute_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - int len = GET_LEN(to_push); - uint8_t checksum = (uint8_t)(addr) + (uint8_t)((unsigned int)(addr) >> 8U); - for (int i = 1; i < len; i++) { - checksum += (uint8_t)GET_BYTE(to_push, i); - } - return checksum; -} - -static void subaru_rx_hook(const CANPacket_t *to_push) { - const int bus = GET_BUS(to_push); - const int alt_main_bus = subaru_gen2 ? SUBARU_ALT_BUS : SUBARU_MAIN_BUS; - - int addr = GET_ADDR(to_push); - if ((addr == MSG_SUBARU_Steering_Torque) && (bus == SUBARU_MAIN_BUS)) { - int torque_driver_new; - torque_driver_new = ((GET_BYTES(to_push, 0, 4) >> 16) & 0x7FFU); - torque_driver_new = -1 * to_signed(torque_driver_new, 11); - update_sample(&torque_driver, torque_driver_new); - - int angle_meas_new = (GET_BYTES(to_push, 4, 2) & 0xFFFFU); - // convert Steering_Torque -> Steering_Angle to centidegrees, to match the ES_LKAS_ANGLE angle request units - angle_meas_new = ROUND(to_signed(angle_meas_new, 16) * -2.17); - update_sample(&angle_meas, angle_meas_new); - } - - // enter controls on rising edge of ACC, exit controls on ACC off - if ((addr == MSG_SUBARU_CruiseControl) && (bus == alt_main_bus)) { - bool cruise_engaged = GET_BIT(to_push, 41U); - pcm_cruise_check(cruise_engaged); - } - - // update vehicle moving with any non-zero wheel speed - if ((addr == MSG_SUBARU_Wheel_Speeds) && (bus == alt_main_bus)) { - uint32_t fr = (GET_BYTES(to_push, 1, 3) >> 4) & 0x1FFFU; - uint32_t rr = (GET_BYTES(to_push, 3, 3) >> 1) & 0x1FFFU; - uint32_t rl = (GET_BYTES(to_push, 4, 3) >> 6) & 0x1FFFU; - uint32_t fl = (GET_BYTES(to_push, 6, 2) >> 3) & 0x1FFFU; - - vehicle_moving = (fr > 0U) || (rr > 0U) || (rl > 0U) || (fl > 0U); - - UPDATE_VEHICLE_SPEED((fr + rr + rl + fl) / 4.0 * 0.057 / 3.6); - } - - if ((addr == MSG_SUBARU_Brake_Status) && (bus == alt_main_bus)) { - brake_pressed = GET_BIT(to_push, 62U); - } - - if ((addr == MSG_SUBARU_Throttle) && (bus == SUBARU_MAIN_BUS)) { - gas_pressed = GET_BYTE(to_push, 4) != 0U; - } - - generic_rx_checks((addr == MSG_SUBARU_ES_LKAS) && (bus == SUBARU_MAIN_BUS)); -} - -static bool subaru_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits SUBARU_STEERING_LIMITS = SUBARU_STEERING_LIMITS_GENERATOR(2047, 50, 70); - const TorqueSteeringLimits SUBARU_GEN2_STEERING_LIMITS = SUBARU_STEERING_LIMITS_GENERATOR(1000, 40, 40); - - const LongitudinalLimits SUBARU_LONG_LIMITS = { - .min_gas = 808, // appears to be engine braking - .max_gas = 3400, // approx 2 m/s^2 when maxing cruise_rpm and cruise_throttle - .inactive_gas = 1818, // this is zero acceleration - .max_brake = 600, // approx -3.5 m/s^2 - - .min_transmission_rpm = 0, - .max_transmission_rpm = 3600, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - bool violation = false; - - // steer cmd checks - if (addr == MSG_SUBARU_ES_LKAS) { - int desired_torque = ((GET_BYTES(to_send, 0, 4) >> 16) & 0x1FFFU); - desired_torque = -1 * to_signed(desired_torque, 13); - - bool steer_req = GET_BIT(to_send, 29U); - - const TorqueSteeringLimits limits = subaru_gen2 ? SUBARU_GEN2_STEERING_LIMITS : SUBARU_STEERING_LIMITS; - violation |= steer_torque_cmd_checks(desired_torque, steer_req, limits); - } - - // check es_brake brake_pressure limits - if (addr == MSG_SUBARU_ES_Brake) { - int es_brake_pressure = GET_BYTES(to_send, 2, 2); - violation |= longitudinal_brake_checks(es_brake_pressure, SUBARU_LONG_LIMITS); - } - - // check es_distance cruise_throttle limits - if (addr == MSG_SUBARU_ES_Distance) { - int cruise_throttle = (GET_BYTES(to_send, 2, 2) & 0x1FFFU); - bool cruise_cancel = GET_BIT(to_send, 56U); - - if (subaru_longitudinal) { - violation |= longitudinal_gas_checks(cruise_throttle, SUBARU_LONG_LIMITS); - } else { - // If openpilot is not controlling long, only allow ES_Distance for cruise cancel requests, - // (when Cruise_Cancel is true, and Cruise_Throttle is inactive) - violation |= (cruise_throttle != SUBARU_LONG_LIMITS.inactive_gas); - violation |= (!cruise_cancel); - } - } - - // check es_status transmission_rpm limits - if (addr == MSG_SUBARU_ES_Status) { - int transmission_rpm = (GET_BYTES(to_send, 2, 2) & 0x1FFFU); - violation |= longitudinal_transmission_rpm_checks(transmission_rpm, SUBARU_LONG_LIMITS); - } - - if (addr == MSG_SUBARU_ES_UDS_Request) { - // tester present ('\x02\x3E\x80\x00\x00\x00\x00\x00') is allowed for gen2 longitudinal to keep eyesight disabled - bool is_tester_present = (GET_BYTES(to_send, 0, 4) == 0x00803E02U) && (GET_BYTES(to_send, 4, 4) == 0x0U); - - // reading ES button data by identifier (b'\x03\x22\x11\x30\x00\x00\x00\x00') is also allowed (DID 0x1130) - bool is_button_rdbi = (GET_BYTES(to_send, 0, 4) == 0x30112203U) && (GET_BYTES(to_send, 4, 4) == 0x0U); - - violation |= !(is_tester_present || is_button_rdbi); - } - - if (violation){ - tx = false; - } - return tx; -} - -static int subaru_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - if (bus_num == SUBARU_MAIN_BUS) { - bus_fwd = SUBARU_CAM_BUS; // to the eyesight camera - } - - if (bus_num == SUBARU_CAM_BUS) { - // Global platform - bool block_lkas = ((addr == MSG_SUBARU_ES_LKAS) || - (addr == MSG_SUBARU_ES_DashStatus) || - (addr == MSG_SUBARU_ES_LKAS_State) || - (addr == MSG_SUBARU_ES_Infotainment)); - - bool block_long = ((addr == MSG_SUBARU_ES_Brake) || - (addr == MSG_SUBARU_ES_Distance) || - (addr == MSG_SUBARU_ES_Status)); - - bool block_msg = block_lkas || (subaru_longitudinal && block_long); - if (!block_msg) { - bus_fwd = SUBARU_MAIN_BUS; // Main CAN - } - } - - return bus_fwd; -} - -static safety_config subaru_init(uint16_t param) { - static const CanMsg SUBARU_TX_MSGS[] = { - SUBARU_COMMON_TX_MSGS(SUBARU_MAIN_BUS, MSG_SUBARU_ES_LKAS) - }; - - static const CanMsg SUBARU_LONG_TX_MSGS[] = { - SUBARU_COMMON_TX_MSGS(SUBARU_MAIN_BUS, MSG_SUBARU_ES_LKAS) - SUBARU_COMMON_LONG_TX_MSGS(SUBARU_MAIN_BUS) - }; - - static const CanMsg SUBARU_GEN2_TX_MSGS[] = { - SUBARU_COMMON_TX_MSGS(SUBARU_ALT_BUS, MSG_SUBARU_ES_LKAS) - }; - - static const CanMsg SUBARU_GEN2_LONG_TX_MSGS[] = { - SUBARU_COMMON_TX_MSGS(SUBARU_ALT_BUS, MSG_SUBARU_ES_LKAS) - SUBARU_COMMON_LONG_TX_MSGS(SUBARU_ALT_BUS) - SUBARU_GEN2_LONG_ADDITIONAL_TX_MSGS() - }; - - static RxCheck subaru_rx_checks[] = { - SUBARU_COMMON_RX_CHECKS(SUBARU_MAIN_BUS) - }; - - static RxCheck subaru_gen2_rx_checks[] = { - SUBARU_COMMON_RX_CHECKS(SUBARU_ALT_BUS) - }; - - const uint16_t SUBARU_PARAM_GEN2 = 1; - - subaru_gen2 = GET_FLAG(param, SUBARU_PARAM_GEN2); - -#ifdef ALLOW_DEBUG - const uint16_t SUBARU_PARAM_LONGITUDINAL = 2; - subaru_longitudinal = GET_FLAG(param, SUBARU_PARAM_LONGITUDINAL); -#endif - - safety_config ret; - if (subaru_gen2) { - ret = subaru_longitudinal ? BUILD_SAFETY_CFG(subaru_gen2_rx_checks, SUBARU_GEN2_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(subaru_gen2_rx_checks, SUBARU_GEN2_TX_MSGS); - } else { - ret = subaru_longitudinal ? BUILD_SAFETY_CFG(subaru_rx_checks, SUBARU_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(subaru_rx_checks, SUBARU_TX_MSGS); - } - return ret; -} - -const safety_hooks subaru_hooks = { - .init = subaru_init, - .rx = subaru_rx_hook, - .tx = subaru_tx_hook, - .fwd = subaru_fwd_hook, - .get_counter = subaru_get_counter, - .get_checksum = subaru_get_checksum, - .compute_checksum = subaru_compute_checksum, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h b/opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h deleted file mode 100644 index da5bbb82ec..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h +++ /dev/null @@ -1,129 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -// Preglobal platform -// 0x161 is ES_CruiseThrottle -// 0x164 is ES_LKAS - -#define MSG_SUBARU_PG_CruiseControl 0x144 -#define MSG_SUBARU_PG_Throttle 0x140 -#define MSG_SUBARU_PG_Wheel_Speeds 0xD4 -#define MSG_SUBARU_PG_Brake_Pedal 0xD1 -#define MSG_SUBARU_PG_ES_LKAS 0x164 -#define MSG_SUBARU_PG_ES_Distance 0x161 -#define MSG_SUBARU_PG_Steering_Torque 0x371 - -#define SUBARU_PG_MAIN_BUS 0 -#define SUBARU_PG_CAM_BUS 2 - -static bool subaru_pg_reversed_driver_torque = false; - -static void subaru_preglobal_rx_hook(const CANPacket_t *to_push) { - const int bus = GET_BUS(to_push); - - if (bus == SUBARU_PG_MAIN_BUS) { - int addr = GET_ADDR(to_push); - if (addr == MSG_SUBARU_PG_Steering_Torque) { - int torque_driver_new; - torque_driver_new = (GET_BYTE(to_push, 3) >> 5) + (GET_BYTE(to_push, 4) << 3); - torque_driver_new = to_signed(torque_driver_new, 11); - torque_driver_new = subaru_pg_reversed_driver_torque ? -torque_driver_new : torque_driver_new; - update_sample(&torque_driver, torque_driver_new); - } - - // enter controls on rising edge of ACC, exit controls on ACC off - if (addr == MSG_SUBARU_PG_CruiseControl) { - bool cruise_engaged = GET_BIT(to_push, 49U); - pcm_cruise_check(cruise_engaged); - } - - // update vehicle moving with any non-zero wheel speed - if (addr == MSG_SUBARU_PG_Wheel_Speeds) { - vehicle_moving = ((GET_BYTES(to_push, 0, 4) >> 12) != 0U) || (GET_BYTES(to_push, 4, 4) != 0U); - } - - if (addr == MSG_SUBARU_PG_Brake_Pedal) { - brake_pressed = ((GET_BYTES(to_push, 0, 4) >> 16) & 0xFFU) > 0U; - } - - if (addr == MSG_SUBARU_PG_Throttle) { - gas_pressed = GET_BYTE(to_push, 0) != 0U; - } - - generic_rx_checks((addr == MSG_SUBARU_PG_ES_LKAS)); - } -} - -static bool subaru_preglobal_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits SUBARU_PG_STEERING_LIMITS = { - .max_steer = 2047, - .max_rt_delta = 940, - .max_rt_interval = 250000, - .max_rate_up = 50, - .max_rate_down = 70, - .driver_torque_multiplier = 10, - .driver_torque_allowance = 75, - .type = TorqueDriverLimited, - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - - // steer cmd checks - if (addr == MSG_SUBARU_PG_ES_LKAS) { - int desired_torque = ((GET_BYTES(to_send, 0, 4) >> 8) & 0x1FFFU); - desired_torque = -1 * to_signed(desired_torque, 13); - - bool steer_req = GET_BIT(to_send, 24U); - - if (steer_torque_cmd_checks(desired_torque, steer_req, SUBARU_PG_STEERING_LIMITS)) { - tx = false; - } - - } - return tx; -} - -static int subaru_preglobal_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - if (bus_num == SUBARU_PG_MAIN_BUS) { - bus_fwd = SUBARU_PG_CAM_BUS; // Camera CAN - } - - if (bus_num == SUBARU_PG_CAM_BUS) { - bool block_msg = ((addr == MSG_SUBARU_PG_ES_Distance) || (addr == MSG_SUBARU_PG_ES_LKAS)); - if (!block_msg) { - bus_fwd = SUBARU_PG_MAIN_BUS; // Main CAN - } - } - - return bus_fwd; -} - -static safety_config subaru_preglobal_init(uint16_t param) { - static const CanMsg SUBARU_PG_TX_MSGS[] = { - {MSG_SUBARU_PG_ES_Distance, SUBARU_PG_MAIN_BUS, 8}, - {MSG_SUBARU_PG_ES_LKAS, SUBARU_PG_MAIN_BUS, 8} - }; - - // TODO: do checksum and counter checks after adding the signals to the outback dbc file - static RxCheck subaru_preglobal_rx_checks[] = { - {.msg = {{MSG_SUBARU_PG_Throttle, SUBARU_PG_MAIN_BUS, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MSG_SUBARU_PG_Steering_Torque, SUBARU_PG_MAIN_BUS, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MSG_SUBARU_PG_CruiseControl, SUBARU_PG_MAIN_BUS, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 20U}, { 0 }, { 0 }}}, - }; - - const int SUBARU_PG_PARAM_REVERSED_DRIVER_TORQUE = 4; - - subaru_pg_reversed_driver_torque = GET_FLAG(param, SUBARU_PG_PARAM_REVERSED_DRIVER_TORQUE); - return BUILD_SAFETY_CFG(subaru_preglobal_rx_checks, SUBARU_PG_TX_MSGS); -} - -const safety_hooks subaru_preglobal_hooks = { - .init = subaru_preglobal_init, - .rx = subaru_preglobal_rx_hook, - .tx = subaru_preglobal_tx_hook, - .fwd = subaru_preglobal_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_tesla.h b/opendbc_repo/opendbc/safety/safety/safety_tesla.h deleted file mode 100644 index 611a4edeb4..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_tesla.h +++ /dev/null @@ -1,214 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -static bool tesla_longitudinal = false; -static bool tesla_stock_aeb = false; - -static void tesla_rx_hook(const CANPacket_t *to_push) { - int bus = GET_BUS(to_push); - int addr = GET_ADDR(to_push); - - if (bus == 0) { - // Steering angle: (0.1 * val) - 819.2 in deg. - if (addr == 0x370) { - // Store it 1/10 deg to match steering request - int angle_meas_new = (((GET_BYTE(to_push, 4) & 0x3FU) << 8) | GET_BYTE(to_push, 5)) - 8192U; - update_sample(&angle_meas, angle_meas_new); - } - - // Vehicle speed - if (addr == 0x257) { - // Vehicle speed: ((val * 0.08) - 40) / MS_TO_KPH - float speed = ((((GET_BYTE(to_push, 2) << 4) | (GET_BYTE(to_push, 1) >> 4)) * 0.08) - 40) / 3.6; - UPDATE_VEHICLE_SPEED(speed); - } - - // Gas pressed - if (addr == 0x118) { - gas_pressed = (GET_BYTE(to_push, 4) != 0U); - } - - // Brake pressed - if (addr == 0x39d) { - brake_pressed = (GET_BYTE(to_push, 2) & 0x03U) == 2U; - } - - // Cruise state - if (addr == 0x286) { - int cruise_state = (GET_BYTE(to_push, 1) >> 4) & 0x07U; - bool cruise_engaged = (cruise_state == 2) || // ENABLED - (cruise_state == 3) || // STANDSTILL - (cruise_state == 4) || // OVERRIDE - (cruise_state == 6) || // PRE_FAULT - (cruise_state == 7); // PRE_CANCEL - - vehicle_moving = cruise_state != 3; // STANDSTILL - pcm_cruise_check(cruise_engaged); - } - } - - if (bus == 2) { - if (tesla_longitudinal && (addr == 0x2b9)) { - // "AEB_ACTIVE" - tesla_stock_aeb = (GET_BYTE(to_push, 2) & 0x03U) == 1U; - } - } - - generic_rx_checks((addr == 0x488) && (bus == 0)); // DAS_steeringControl - generic_rx_checks((addr == 0x27d) && (bus == 0)); // APS_eacMonitor - - if (tesla_longitudinal) { - generic_rx_checks((addr == 0x2b9) && (bus == 0)); - } -} - - -static bool tesla_tx_hook(const CANPacket_t *to_send) { - const AngleSteeringLimits TESLA_STEERING_LIMITS = { - .max_angle = 3600, // 360 deg, EPAS faults above this - .angle_deg_to_can = 10, - .angle_rate_up_lookup = { - {0., 5., 25.}, - {2.5, 1.5, 0.2} - }, - .angle_rate_down_lookup = { - {0., 5., 25.}, - {5., 2.0, 0.3} - }, - }; - - const LongitudinalLimits TESLA_LONG_LIMITS = { - .max_accel = 425, // 2 m/s^2 - .min_accel = 288, // -3.48 m/s^2 - .inactive_accel = 375, // 0. m/s^2 - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - bool violation = false; - - // Steering control: (0.1 * val) - 1638.35 in deg. - if (addr == 0x488) { - // We use 1/10 deg as a unit here - int raw_angle_can = ((GET_BYTE(to_send, 0) & 0x7FU) << 8) | GET_BYTE(to_send, 1); - int desired_angle = raw_angle_can - 16384; - int steer_control_type = GET_BYTE(to_send, 2) >> 6; - bool steer_control_enabled = (steer_control_type != 0) && // NONE - (steer_control_type != 3); // DISABLED - - if (steer_angle_cmd_checks(desired_angle, steer_control_enabled, TESLA_STEERING_LIMITS)) { - violation = true; - } - } - - // DAS_control: longitudinal control message - if (addr == 0x2b9) { - // No AEB events may be sent by openpilot - int aeb_event = GET_BYTE(to_send, 2) & 0x03U; - if (aeb_event != 0) { - violation = true; - } - - int raw_accel_max = ((GET_BYTE(to_send, 6) & 0x1FU) << 4) | (GET_BYTE(to_send, 5) >> 4); - int raw_accel_min = ((GET_BYTE(to_send, 5) & 0x0FU) << 5) | (GET_BYTE(to_send, 4) >> 3); - int acc_state = GET_BYTE(to_send, 1) >> 4; - - if (tesla_longitudinal) { - // Don't send messages when the stock AEB system is active - if (tesla_stock_aeb) { - violation = true; - } - - // Prevent both acceleration from being negative, as this could cause the car to reverse after coming to standstill - if ((raw_accel_max < TESLA_LONG_LIMITS.inactive_accel) && (raw_accel_min < TESLA_LONG_LIMITS.inactive_accel)) { - violation = true; - } - - // Don't allow any acceleration limits above the safety limits - violation |= longitudinal_accel_checks(raw_accel_max, TESLA_LONG_LIMITS); - violation |= longitudinal_accel_checks(raw_accel_min, TESLA_LONG_LIMITS); - } else { - // does allowing cancel here disrupt stock AEB? TODO: find out and add safety or remove comment - // Can only send cancel longitudinal messages when not controlling longitudinal - if (acc_state != 13) { // ACC_CANCEL_GENERIC_SILENT - violation = true; - } - - // No actuation is allowed when not controlling longitudinal - if ((raw_accel_max != TESLA_LONG_LIMITS.inactive_accel) || (raw_accel_min != TESLA_LONG_LIMITS.inactive_accel)) { - violation = true; - } - } - } - - if (violation) { - tx = false; - } - - return tx; -} - -static int tesla_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - if (bus_num == 0) { - // Party to autopilot - bus_fwd = 2; - } - - if (bus_num == 2) { - bool block_msg = false; - // DAS_steeringControl, APS_eacMonitor - if ((addr == 0x488) || (addr == 0x27d)) { - block_msg = true; - } - - // DAS_control - if (tesla_longitudinal && (addr == 0x2b9) && !tesla_stock_aeb) { - block_msg = true; - } - - if (!block_msg) { - bus_fwd = 0; - } - } - - return bus_fwd; -} - -static safety_config tesla_init(uint16_t param) { - - static const CanMsg TESLA_M3_Y_TX_MSGS[] = { - {0x488, 0, 4}, // DAS_steeringControl - {0x2b9, 0, 8}, // DAS_control - {0x27D, 0, 3}, // APS_eacMonitor - }; - - UNUSED(param); -#ifdef ALLOW_DEBUG - const int TESLA_FLAG_LONGITUDINAL_CONTROL = 1; - tesla_longitudinal = GET_FLAG(param, TESLA_FLAG_LONGITUDINAL_CONTROL); -#endif - - tesla_stock_aeb = false; - - static RxCheck tesla_model3_y_rx_checks[] = { - {.msg = {{0x2b9, 2, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 25U}, { 0 }, { 0 }}}, // DAS_control - {.msg = {{0x257, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 50U}, { 0 }, { 0 }}}, // DI_speed (speed in kph) - {.msg = {{0x370, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 100U}, { 0 }, { 0 }}}, // EPAS3S_internalSAS (steering angle) - {.msg = {{0x118, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 100U}, { 0 }, { 0 }}}, // DI_systemStatus (gas pedal) - {.msg = {{0x39d, 0, 5, .ignore_checksum = true, .ignore_counter = true,.frequency = 25U}, { 0 }, { 0 }}}, // IBST_status (brakes) - {.msg = {{0x286, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 10U}, { 0 }, { 0 }}}, // DI_state (acc state) - {.msg = {{0x311, 0, 7, .ignore_checksum = true, .ignore_counter = true,.frequency = 10U}, { 0 }, { 0 }}}, // UI_warning (blinkers, buckle switch & doors) - }; - - return BUILD_SAFETY_CFG(tesla_model3_y_rx_checks, TESLA_M3_Y_TX_MSGS); -} - -const safety_hooks tesla_hooks = { - .init = tesla_init, - .rx = tesla_rx_hook, - .tx = tesla_tx_hook, - .fwd = tesla_fwd_hook, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_toyota.h b/opendbc_repo/opendbc/safety/safety/safety_toyota.h deleted file mode 100644 index 4326ca32ef..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_toyota.h +++ /dev/null @@ -1,414 +0,0 @@ -#pragma once - -#include "safety_declarations.h" - -// Stock longitudinal -#define TOYOTA_BASE_TX_MSGS \ - {0x191, 0, 8}, {0x412, 0, 8}, {0x343, 0, 8}, {0x1D2, 0, 8}, /* LKAS + LTA + ACC & PCM cancel cmds */ \ - -#define TOYOTA_COMMON_TX_MSGS \ - TOYOTA_BASE_TX_MSGS \ - {0x2E4, 0, 5}, \ - -#define TOYOTA_COMMON_SECOC_TX_MSGS \ - TOYOTA_BASE_TX_MSGS \ - {0x2E4, 0, 8}, {0x131, 0, 8}, \ - -#define TOYOTA_COMMON_LONG_TX_MSGS \ - TOYOTA_COMMON_TX_MSGS \ - {0x283, 0, 7}, {0x2E6, 0, 8}, {0x2E7, 0, 8}, {0x33E, 0, 7}, {0x344, 0, 8}, {0x365, 0, 7}, {0x366, 0, 7}, {0x4CB, 0, 8}, /* DSU bus 0 */ \ - {0x128, 1, 6}, {0x141, 1, 4}, {0x160, 1, 8}, {0x161, 1, 7}, {0x470, 1, 4}, /* DSU bus 1 */ \ - {0x411, 0, 8}, /* PCS_HUD */ \ - {0x750, 0, 8}, /* radar diagnostic address */ \ - -#define TOYOTA_COMMON_RX_CHECKS(lta) \ - {.msg = {{ 0xaa, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 83U}, { 0 }, { 0 }}}, \ - {.msg = {{0x260, 0, 8, .ignore_counter = true, .quality_flag = (lta), .frequency = 50U}, { 0 }, { 0 }}}, \ - {.msg = {{0x1D2, 0, 8, .ignore_counter = true, .frequency = 33U}, \ - {0x176, 0, 8, .ignore_counter = true, .frequency = 32U}, { 0 }}}, \ - {.msg = {{0x101, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, \ - {0x224, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, \ - {0x226, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}}}, \ - -static bool toyota_secoc = false; -static bool toyota_alt_brake = false; -static bool toyota_stock_longitudinal = false; -static bool toyota_lta = false; -static int toyota_dbc_eps_torque_factor = 100; // conversion factor for STEER_TORQUE_EPS in %: see dbc file - -static uint32_t toyota_compute_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - int len = GET_LEN(to_push); - uint8_t checksum = (uint8_t)(addr) + (uint8_t)((unsigned int)(addr) >> 8U) + (uint8_t)(len); - for (int i = 0; i < (len - 1); i++) { - checksum += (uint8_t)GET_BYTE(to_push, i); - } - return checksum; -} - -static uint32_t toyota_get_checksum(const CANPacket_t *to_push) { - int checksum_byte = GET_LEN(to_push) - 1U; - return (uint8_t)(GET_BYTE(to_push, checksum_byte)); -} - -static bool toyota_get_quality_flag_valid(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - bool valid = false; - if (addr == 0x260) { - valid = !GET_BIT(to_push, 3U); // STEER_ANGLE_INITIALIZING - } - return valid; -} - -static void toyota_rx_hook(const CANPacket_t *to_push) { - if (GET_BUS(to_push) == 0U) { - int addr = GET_ADDR(to_push); - - // get eps motor torque (0.66 factor in dbc) - if (addr == 0x260) { - int torque_meas_new = (GET_BYTE(to_push, 5) << 8) | GET_BYTE(to_push, 6); - torque_meas_new = to_signed(torque_meas_new, 16); - - // scale by dbc_factor - torque_meas_new = (torque_meas_new * toyota_dbc_eps_torque_factor) / 100; - - // update array of sample - update_sample(&torque_meas, torque_meas_new); - - // increase torque_meas by 1 to be conservative on rounding - torque_meas.min--; - torque_meas.max++; - - // driver torque for angle limiting - int torque_driver_new = (GET_BYTE(to_push, 1) << 8) | GET_BYTE(to_push, 2); - torque_driver_new = to_signed(torque_driver_new, 16); - update_sample(&torque_driver, torque_driver_new); - - // LTA request angle should match current angle while inactive, clipped to max accepted angle. - // note that angle can be relative to init angle on some TSS2 platforms, LTA has the same offset - bool steer_angle_initializing = GET_BIT(to_push, 3U); - if (!steer_angle_initializing) { - int angle_meas_new = (GET_BYTE(to_push, 3) << 8U) | GET_BYTE(to_push, 4); - angle_meas_new = to_signed(angle_meas_new, 16); - update_sample(&angle_meas, angle_meas_new); - } - } - - // enter controls on rising edge of ACC, exit controls on ACC off - // exit controls on rising edge of gas press, if not alternative experience - // exit controls on rising edge of brake press - if (toyota_secoc) { - if (addr == 0x176) { - bool cruise_engaged = GET_BIT(to_push, 5U); // PCM_CRUISE.CRUISE_ACTIVE - pcm_cruise_check(cruise_engaged); - } - if (addr == 0x116) { - gas_pressed = GET_BYTE(to_push, 1) != 0U; // GAS_PEDAL.GAS_PEDAL_USER - } - if (addr == 0x101) { - brake_pressed = GET_BIT(to_push, 3U); // BRAKE_MODULE.BRAKE_PRESSED (toyota_rav4_prime_generated.dbc) - } - } else { - if (addr == 0x1D2) { - bool cruise_engaged = GET_BIT(to_push, 5U); // PCM_CRUISE.CRUISE_ACTIVE - pcm_cruise_check(cruise_engaged); - gas_pressed = !GET_BIT(to_push, 4U); // PCM_CRUISE.GAS_RELEASED - } - if (!toyota_alt_brake && (addr == 0x226)) { - brake_pressed = GET_BIT(to_push, 37U); // BRAKE_MODULE.BRAKE_PRESSED (toyota_nodsu_pt_generated.dbc) - } - if (toyota_alt_brake && (addr == 0x224)) { - brake_pressed = GET_BIT(to_push, 5U); // BRAKE_MODULE.BRAKE_PRESSED (toyota_new_mc_pt_generated.dbc) - } - } - - // sample speed - if (addr == 0xaa) { - int speed = 0; - // sum 4 wheel speeds. conversion: raw * 0.01 - 67.67 - for (uint8_t i = 0U; i < 8U; i += 2U) { - int wheel_speed = (GET_BYTE(to_push, i) << 8U) | GET_BYTE(to_push, (i + 1U)); - speed += wheel_speed - 6767; - } - // check that all wheel speeds are at zero value - vehicle_moving = speed != 0; - - UPDATE_VEHICLE_SPEED(speed / 4.0 * 0.01 / 3.6); - } - - bool stock_ecu_detected = addr == 0x2E4; // STEERING_LKA - if (!toyota_stock_longitudinal && (addr == 0x343)) { - stock_ecu_detected = true; // ACC_CONTROL - } - generic_rx_checks(stock_ecu_detected); - } -} - -static bool toyota_tx_hook(const CANPacket_t *to_send) { - const TorqueSteeringLimits TOYOTA_TORQUE_STEERING_LIMITS = { - .max_steer = 1500, - .max_rate_up = 15, // ramp up slow - .max_rate_down = 25, // ramp down fast - .max_torque_error = 350, // max torque cmd in excess of motor torque - .max_rt_delta = 450, // the real time limit is 1800/sec, a 20% buffer - .max_rt_interval = 250000, - .type = TorqueMotorLimited, - - // the EPS faults when the steering angle rate is above a certain threshold for too long. to prevent this, - // we allow setting STEER_REQUEST bit to 0 while maintaining the requested torque value for a single frame - .min_valid_request_frames = 18, - .max_invalid_request_frames = 1, - .min_valid_request_rt_interval = 170000, // 170ms; a ~10% buffer on cutting every 19 frames - .has_steer_req_tolerance = true, - }; - - static const AngleSteeringLimits TOYOTA_ANGLE_STEERING_LIMITS = { - // LTA angle limits - // factor for STEER_TORQUE_SENSOR->STEER_ANGLE and STEERING_LTA->STEER_ANGLE_CMD (1 / 0.0573) - .max_angle = 1657, // EPS only accepts up to 94.9461 - .angle_deg_to_can = 17.452007, - .angle_rate_up_lookup = { - {5., 25., 25.}, - {0.3, 0.15, 0.15} - }, - .angle_rate_down_lookup = { - {5., 25., 25.}, - {0.36, 0.26, 0.26} - }, - }; - - const int TOYOTA_LTA_MAX_MEAS_TORQUE = 1500; - const int TOYOTA_LTA_MAX_DRIVER_TORQUE = 150; - - // longitudinal limits - const LongitudinalLimits TOYOTA_LONG_LIMITS = { - .max_accel = 2000, // 2.0 m/s2 - .min_accel = -3500, // -3.5 m/s2 - }; - - bool tx = true; - int addr = GET_ADDR(to_send); - int bus = GET_BUS(to_send); - - // Check if msg is sent on BUS 0 - if (bus == 0) { - // ACCEL: safety check on byte 1-2 - if (addr == 0x343) { - int desired_accel = (GET_BYTE(to_send, 0) << 8) | GET_BYTE(to_send, 1); - desired_accel = to_signed(desired_accel, 16); - - bool violation = false; - violation |= longitudinal_accel_checks(desired_accel, TOYOTA_LONG_LIMITS); - - // only ACC messages that cancel are allowed when openpilot is not controlling longitudinal - if (toyota_stock_longitudinal) { - bool cancel_req = GET_BIT(to_send, 24U); - if (!cancel_req) { - violation = true; - } - if (desired_accel != TOYOTA_LONG_LIMITS.inactive_accel) { - violation = true; - } - } - - if (violation) { - tx = false; - } - } - - // AEB: block all actuation. only used when DSU is unplugged - if (addr == 0x283) { - // only allow the checksum, which is the last byte - bool block = (GET_BYTES(to_send, 0, 4) != 0U) || (GET_BYTE(to_send, 4) != 0U) || (GET_BYTE(to_send, 5) != 0U); - if (block) { - tx = false; - } - } - - // STEERING_LTA angle steering check - if (addr == 0x191) { - // check the STEER_REQUEST, STEER_REQUEST_2, TORQUE_WIND_DOWN, STEER_ANGLE_CMD signals - bool lta_request = GET_BIT(to_send, 0U); - bool lta_request2 = GET_BIT(to_send, 25U); - int torque_wind_down = GET_BYTE(to_send, 5); - int lta_angle = (GET_BYTE(to_send, 1) << 8) | GET_BYTE(to_send, 2); - lta_angle = to_signed(lta_angle, 16); - - bool steer_control_enabled = lta_request || lta_request2; - if (!toyota_lta) { - // using torque (LKA), block LTA msgs with actuation requests - if (steer_control_enabled || (lta_angle != 0) || (torque_wind_down != 0)) { - tx = false; - } - } else { - // check angle rate limits and inactive angle - if (steer_angle_cmd_checks(lta_angle, steer_control_enabled, TOYOTA_ANGLE_STEERING_LIMITS)) { - tx = false; - } - - if (lta_request != lta_request2) { - tx = false; - } - - // TORQUE_WIND_DOWN is gated on steer request - if (!steer_control_enabled && (torque_wind_down != 0)) { - tx = false; - } - - // TORQUE_WIND_DOWN can only be no or full torque - if ((torque_wind_down != 0) && (torque_wind_down != 100)) { - tx = false; - } - - // check if we should wind down torque - int driver_torque = MIN(ABS(torque_driver.min), ABS(torque_driver.max)); - if ((driver_torque > TOYOTA_LTA_MAX_DRIVER_TORQUE) && (torque_wind_down != 0)) { - tx = false; - } - - int eps_torque = MIN(ABS(torque_meas.min), ABS(torque_meas.max)); - if ((eps_torque > TOYOTA_LTA_MAX_MEAS_TORQUE) && (torque_wind_down != 0)) { - tx = false; - } - } - } - - // STEERING_LTA_2 angle steering check (SecOC) - if (toyota_secoc && (addr == 0x131)) { - // SecOC cars block any form of LTA actuation for now - bool lta_request = GET_BIT(to_send, 3U); // STEERING_LTA_2.STEER_REQUEST - bool lta_request2 = GET_BIT(to_send, 0U); // STEERING_LTA_2.STEER_REQUEST_2 - int lta_angle_msb = GET_BYTE(to_send, 2); // STEERING_LTA_2.STEER_ANGLE_CMD (MSB) - int lta_angle_lsb = GET_BYTE(to_send, 3); // STEERING_LTA_2.STEER_ANGLE_CMD (LSB) - - bool actuation = lta_request || lta_request2 || (lta_angle_msb != 0) || (lta_angle_lsb != 0); - if (actuation) { - tx = false; - } - } - - // STEER: safety check on bytes 2-3 - if (addr == 0x2E4) { - int desired_torque = (GET_BYTE(to_send, 1) << 8) | GET_BYTE(to_send, 2); - desired_torque = to_signed(desired_torque, 16); - bool steer_req = GET_BIT(to_send, 0U); - // When using LTA (angle control), assert no actuation on LKA message - if (!toyota_lta) { - if (steer_torque_cmd_checks(desired_torque, steer_req, TOYOTA_TORQUE_STEERING_LIMITS)) { - tx = false; - } - } else { - if ((desired_torque != 0) || steer_req) { - tx = false; - } - } - } - } - - // UDS: Only tester present ("\x0F\x02\x3E\x00\x00\x00\x00\x00") allowed on diagnostics address - if (addr == 0x750) { - // this address is sub-addressed. only allow tester present to radar (0xF) - bool invalid_uds_msg = (GET_BYTES(to_send, 0, 4) != 0x003E020FU) || (GET_BYTES(to_send, 4, 4) != 0x0U); - if (invalid_uds_msg) { - tx = 0; - } - } - - return tx; -} - -static safety_config toyota_init(uint16_t param) { - static const CanMsg TOYOTA_TX_MSGS[] = { - TOYOTA_COMMON_TX_MSGS - }; - - static const CanMsg TOYOTA_SECOC_TX_MSGS[] = { - TOYOTA_COMMON_SECOC_TX_MSGS - }; - - static const CanMsg TOYOTA_LONG_TX_MSGS[] = { - TOYOTA_COMMON_LONG_TX_MSGS - }; - - // safety param flags - // first byte is for EPS factor, second is for flags - const uint32_t TOYOTA_PARAM_OFFSET = 8U; - const uint32_t TOYOTA_EPS_FACTOR = (1UL << TOYOTA_PARAM_OFFSET) - 1U; - const uint32_t TOYOTA_PARAM_ALT_BRAKE = 1UL << TOYOTA_PARAM_OFFSET; - const uint32_t TOYOTA_PARAM_STOCK_LONGITUDINAL = 2UL << TOYOTA_PARAM_OFFSET; - const uint32_t TOYOTA_PARAM_LTA = 4UL << TOYOTA_PARAM_OFFSET; - -#ifdef ALLOW_DEBUG - const uint32_t TOYOTA_PARAM_SECOC = 8UL << TOYOTA_PARAM_OFFSET; - toyota_secoc = GET_FLAG(param, TOYOTA_PARAM_SECOC); -#endif - - toyota_alt_brake = GET_FLAG(param, TOYOTA_PARAM_ALT_BRAKE); - toyota_stock_longitudinal = GET_FLAG(param, TOYOTA_PARAM_STOCK_LONGITUDINAL); - toyota_lta = GET_FLAG(param, TOYOTA_PARAM_LTA); - toyota_dbc_eps_torque_factor = param & TOYOTA_EPS_FACTOR; - - safety_config ret; - if (toyota_stock_longitudinal) { - if (toyota_secoc) { - SET_TX_MSGS(TOYOTA_SECOC_TX_MSGS, ret); - } else { - SET_TX_MSGS(TOYOTA_TX_MSGS, ret); - } - } else { - SET_TX_MSGS(TOYOTA_LONG_TX_MSGS, ret); - } - - if (toyota_lta) { - // Check the quality flag for angle measurement when using LTA, since it's not set on TSS-P cars - static RxCheck toyota_lta_rx_checks[] = { - TOYOTA_COMMON_RX_CHECKS(true) - }; - - SET_RX_CHECKS(toyota_lta_rx_checks, ret); - } else { - static RxCheck toyota_lka_rx_checks[] = { - TOYOTA_COMMON_RX_CHECKS(false) - }; - - SET_RX_CHECKS(toyota_lka_rx_checks, ret); - } - - return ret; -} - -static int toyota_fwd_hook(int bus_num, int addr) { - - int bus_fwd = -1; - - if (bus_num == 0) { - bus_fwd = 2; - } - - if (bus_num == 2) { - // block stock lkas messages and stock acc messages (if OP is doing ACC) - // in TSS2, 0x191 is LTA which we need to block to avoid controls collision - bool is_lkas_msg = ((addr == 0x2E4) || (addr == 0x412) || (addr == 0x191)); - // on SecOC cars 0x131 is also LTA - is_lkas_msg |= toyota_secoc && (addr == 0x131); - // in TSS2 the camera does ACC as well, so filter 0x343 - bool is_acc_msg = (addr == 0x343); - bool block_msg = is_lkas_msg || (is_acc_msg && !toyota_stock_longitudinal); - if (!block_msg) { - bus_fwd = 0; - } - } - - return bus_fwd; -} - -const safety_hooks toyota_hooks = { - .init = toyota_init, - .rx = toyota_rx_hook, - .tx = toyota_tx_hook, - .fwd = toyota_fwd_hook, - .get_checksum = toyota_get_checksum, - .compute_checksum = toyota_compute_checksum, - .get_quality_flag_valid = toyota_get_quality_flag_valid, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h deleted file mode 100644 index 1285bb883e..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h +++ /dev/null @@ -1,71 +0,0 @@ -#pragma once - -extern const uint16_t FLAG_VOLKSWAGEN_LONG_CONTROL; -const uint16_t FLAG_VOLKSWAGEN_LONG_CONTROL = 1; - -static uint8_t volkswagen_crc8_lut_8h2f[256]; // Static lookup table for CRC8 poly 0x2F, aka 8H2F/AUTOSAR - -extern bool volkswagen_longitudinal; -bool volkswagen_longitudinal = false; - -extern bool volkswagen_set_button_prev; -bool volkswagen_set_button_prev = false; - -extern bool volkswagen_resume_button_prev; -bool volkswagen_resume_button_prev = false; - - -#define MSG_LH_EPS_03 0x09F // RX from EPS, for driver steering torque -#define MSG_ESP_19 0x0B2 // RX from ABS, for wheel speeds -#define MSG_ESP_05 0x106 // RX from ABS, for brake switch state -#define MSG_TSK_06 0x120 // RX from ECU, for ACC status from drivetrain coordinator -#define MSG_MOTOR_20 0x121 // RX from ECU, for driver throttle input -#define MSG_ACC_06 0x122 // TX by OP, ACC control instructions to the drivetrain coordinator -#define MSG_HCA_01 0x126 // TX by OP, Heading Control Assist steering torque -#define MSG_GRA_ACC_01 0x12B // TX by OP, ACC control buttons for cancel/resume -#define MSG_ACC_07 0x12E // TX by OP, ACC control instructions to the drivetrain coordinator -#define MSG_ACC_02 0x30C // TX by OP, ACC HUD data to the instrument cluster -#define MSG_LDW_02 0x397 // TX by OP, Lane line recognition and text alerts -#define MSG_MOTOR_14 0x3BE // RX from ECU, for brake switch status - - -static uint32_t volkswagen_mqb_meb_get_checksum(const CANPacket_t *to_push) { - return (uint8_t)GET_BYTE(to_push, 0); -} - -static uint8_t volkswagen_mqb_meb_get_counter(const CANPacket_t *to_push) { - // MQB/MEB message counters are consistently found at LSB 8. - return (uint8_t)GET_BYTE(to_push, 1) & 0xFU; -} - -static uint32_t volkswagen_mqb_meb_compute_crc(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - int len = GET_LEN(to_push); - - // This is CRC-8H2F/AUTOSAR with a twist. See the OpenDBC implementation - // of this algorithm for a version with explanatory comments. - - uint8_t crc = 0xFFU; - for (int i = 1; i < len; i++) { - crc ^= (uint8_t)GET_BYTE(to_push, i); - crc = volkswagen_crc8_lut_8h2f[crc]; - } - - uint8_t counter = volkswagen_mqb_meb_get_counter(to_push); - if (addr == MSG_LH_EPS_03) { - crc ^= (uint8_t[]){0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5}[counter]; - } else if (addr == MSG_ESP_05) { - crc ^= (uint8_t[]){0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07}[counter]; - } else if (addr == MSG_TSK_06) { - crc ^= (uint8_t[]){0xC4,0xE2,0x4F,0xE4,0xF8,0x2F,0x56,0x81,0x9F,0xE5,0x83,0x44,0x05,0x3F,0x97,0xDF}[counter]; - } else if (addr == MSG_MOTOR_20) { - crc ^= (uint8_t[]){0xE9,0x65,0xAE,0x6B,0x7B,0x35,0xE5,0x5F,0x4E,0xC7,0x86,0xA2,0xBB,0xDD,0xEB,0xB4}[counter]; - } else if (addr == MSG_GRA_ACC_01) { - crc ^= (uint8_t[]){0x6A,0x38,0xB4,0x27,0x22,0xEF,0xE1,0xBB,0xF8,0x80,0x84,0x49,0xC7,0x9E,0x1E,0x2B}[counter]; - } else { - // Undefined CAN message, CRC check expected to fail - } - crc = volkswagen_crc8_lut_8h2f[crc]; - - return (uint8_t)(crc ^ 0xFFU); -} diff --git a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h deleted file mode 100644 index be13c6fd9c..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h +++ /dev/null @@ -1,248 +0,0 @@ -#pragma once - -#include "safety_declarations.h" -#include "safety_volkswagen_common.h" - -static bool volkswagen_mqb_brake_pedal_switch = false; -static bool volkswagen_mqb_brake_pressure_detected = false; - - -static safety_config volkswagen_mqb_init(uint16_t param) { - // Transmit of GRA_ACC_01 is allowed on bus 0 and 2 to keep compatibility with gateway and camera integration - static const CanMsg VOLKSWAGEN_MQB_STOCK_TX_MSGS[] = {{MSG_HCA_01, 0, 8}, {MSG_GRA_ACC_01, 0, 8}, {MSG_GRA_ACC_01, 2, 8}, - {MSG_LDW_02, 0, 8}, {MSG_LH_EPS_03, 2, 8}}; - - static const CanMsg VOLKSWAGEN_MQB_LONG_TX_MSGS[] = {{MSG_HCA_01, 0, 8}, {MSG_LDW_02, 0, 8}, {MSG_LH_EPS_03, 2, 8}, - {MSG_ACC_02, 0, 8}, {MSG_ACC_06, 0, 8}, {MSG_ACC_07, 0, 8}}; - - static RxCheck volkswagen_mqb_rx_checks[] = { - {.msg = {{MSG_ESP_19, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MSG_LH_EPS_03, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MSG_ESP_05, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MSG_TSK_06, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MSG_MOTOR_20, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MSG_MOTOR_14, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, - {.msg = {{MSG_GRA_ACC_01, 0, 8, .max_counter = 15U, .frequency = 33U}, { 0 }, { 0 }}}, - }; - - UNUSED(param); - - volkswagen_set_button_prev = false; - volkswagen_resume_button_prev = false; - volkswagen_mqb_brake_pedal_switch = false; - volkswagen_mqb_brake_pressure_detected = false; - -#ifdef ALLOW_DEBUG - volkswagen_longitudinal = GET_FLAG(param, FLAG_VOLKSWAGEN_LONG_CONTROL); -#endif - gen_crc_lookup_table_8(0x2F, volkswagen_crc8_lut_8h2f); - return volkswagen_longitudinal ? BUILD_SAFETY_CFG(volkswagen_mqb_rx_checks, VOLKSWAGEN_MQB_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(volkswagen_mqb_rx_checks, VOLKSWAGEN_MQB_STOCK_TX_MSGS); -} - -static void volkswagen_mqb_rx_hook(const CANPacket_t *to_push) { - if (GET_BUS(to_push) == 0U) { - int addr = GET_ADDR(to_push); - - // Update in-motion state by sampling wheel speeds - if (addr == MSG_ESP_19) { - // sum 4 wheel speeds - int speed = 0; - for (uint8_t i = 0U; i < 8U; i += 2U) { - int wheel_speed = GET_BYTE(to_push, i) | (GET_BYTE(to_push, i + 1U) << 8); - speed += wheel_speed; - } - // Check all wheel speeds for any movement - vehicle_moving = speed > 0; - } - - // Update driver input torque samples - // Signal: LH_EPS_03.EPS_Lenkmoment (absolute torque) - // Signal: LH_EPS_03.EPS_VZ_Lenkmoment (direction) - if (addr == MSG_LH_EPS_03) { - int torque_driver_new = GET_BYTE(to_push, 5) | ((GET_BYTE(to_push, 6) & 0x1FU) << 8); - int sign = (GET_BYTE(to_push, 6) & 0x80U) >> 7; - if (sign == 1) { - torque_driver_new *= -1; - } - update_sample(&torque_driver, torque_driver_new); - } - - if (addr == MSG_TSK_06) { - // When using stock ACC, enter controls on rising edge of stock ACC engage, exit on disengage - // Always exit controls on main switch off - // Signal: TSK_06.TSK_Status - int acc_status = (GET_BYTE(to_push, 3) & 0x7U); - bool cruise_engaged = (acc_status == 3) || (acc_status == 4) || (acc_status == 5); - acc_main_on = cruise_engaged || (acc_status == 2); - - if (!volkswagen_longitudinal) { - pcm_cruise_check(cruise_engaged); - } - - if (!acc_main_on) { - controls_allowed = false; - } - } - - if (addr == MSG_GRA_ACC_01) { - // If using openpilot longitudinal, enter controls on falling edge of Set or Resume with main switch on - // Signal: GRA_ACC_01.GRA_Tip_Setzen - // Signal: GRA_ACC_01.GRA_Tip_Wiederaufnahme - if (volkswagen_longitudinal) { - bool set_button = GET_BIT(to_push, 16U); - bool resume_button = GET_BIT(to_push, 19U); - if ((volkswagen_set_button_prev && !set_button) || (volkswagen_resume_button_prev && !resume_button)) { - controls_allowed = acc_main_on; - } - volkswagen_set_button_prev = set_button; - volkswagen_resume_button_prev = resume_button; - } - // Always exit controls on rising edge of Cancel - // Signal: GRA_ACC_01.GRA_Abbrechen - if (GET_BIT(to_push, 13U)) { - controls_allowed = false; - } - } - - // Signal: Motor_20.MO_Fahrpedalrohwert_01 - if (addr == MSG_MOTOR_20) { - gas_pressed = ((GET_BYTES(to_push, 0, 4) >> 12) & 0xFFU) != 0U; - } - - // Signal: Motor_14.MO_Fahrer_bremst (ECU detected brake pedal switch F63) - if (addr == MSG_MOTOR_14) { - volkswagen_mqb_brake_pedal_switch = (GET_BYTE(to_push, 3) & 0x10U) >> 4; - } - - // Signal: ESP_05.ESP_Fahrer_bremst (ESP detected driver brake pressure above platform specified threshold) - if (addr == MSG_ESP_05) { - volkswagen_mqb_brake_pressure_detected = (GET_BYTE(to_push, 3) & 0x4U) >> 2; - } - - brake_pressed = volkswagen_mqb_brake_pedal_switch || volkswagen_mqb_brake_pressure_detected; - - generic_rx_checks((addr == MSG_HCA_01)); - } -} - -static bool volkswagen_mqb_tx_hook(const CANPacket_t *to_send) { - // lateral limits - const TorqueSteeringLimits VOLKSWAGEN_MQB_STEERING_LIMITS = { - .max_steer = 300, // 3.0 Nm (EPS side max of 3.0Nm with fault if violated) - .max_rt_delta = 75, // 4 max rate up * 50Hz send rate * 250000 RT interval / 1000000 = 50 ; 50 * 1.5 for safety pad = 75 - .max_rt_interval = 250000, // 250ms between real time checks - .max_rate_up = 4, // 2.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) - .max_rate_down = 10, // 5.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) - .driver_torque_allowance = 80, - .driver_torque_multiplier = 3, - .type = TorqueDriverLimited, - }; - - // longitudinal limits - // acceleration in m/s2 * 1000 to avoid floating point math - const LongitudinalLimits VOLKSWAGEN_MQB_LONG_LIMITS = { - .max_accel = 2000, - .min_accel = -3500, - .inactive_accel = 3010, // VW sends one increment above the max range when inactive - }; - - int addr = GET_ADDR(to_send); - bool tx = true; - - // Safety check for HCA_01 Heading Control Assist torque - // Signal: HCA_01.HCA_01_LM_Offset (absolute torque) - // Signal: HCA_01.HCA_01_LM_OffSign (direction) - if (addr == MSG_HCA_01) { - int desired_torque = GET_BYTE(to_send, 2) | ((GET_BYTE(to_send, 3) & 0x1U) << 8); - bool sign = GET_BIT(to_send, 31U); - if (sign) { - desired_torque *= -1; - } - - bool steer_req = GET_BIT(to_send, 30U); - - if (steer_torque_cmd_checks(desired_torque, steer_req, VOLKSWAGEN_MQB_STEERING_LIMITS)) { - tx = false; - } - } - - // Safety check for both ACC_06 and ACC_07 acceleration requests - // To avoid floating point math, scale upward and compare to pre-scaled safety m/s2 boundaries - if ((addr == MSG_ACC_06) || (addr == MSG_ACC_07)) { - bool violation = false; - int desired_accel = 0; - - if (addr == MSG_ACC_06) { - // Signal: ACC_06.ACC_Sollbeschleunigung_02 (acceleration in m/s2, scale 0.005, offset -7.22) - desired_accel = ((((GET_BYTE(to_send, 4) & 0x7U) << 8) | GET_BYTE(to_send, 3)) * 5U) - 7220U; - } else { - // Signal: ACC_07.ACC_Folgebeschl (acceleration in m/s2, scale 0.03, offset -4.6) - int secondary_accel = (GET_BYTE(to_send, 4) * 30U) - 4600U; - violation |= (secondary_accel != 3020); // enforce always inactive (one increment above max range) at this time - // Signal: ACC_07.ACC_Sollbeschleunigung_02 (acceleration in m/s2, scale 0.005, offset -7.22) - desired_accel = (((GET_BYTE(to_send, 7) << 3) | ((GET_BYTE(to_send, 6) & 0xE0U) >> 5)) * 5U) - 7220U; - } - - violation |= longitudinal_accel_checks(desired_accel, VOLKSWAGEN_MQB_LONG_LIMITS); - - if (violation) { - tx = false; - } - } - - // FORCE CANCEL: ensuring that only the cancel button press is sent when controls are off. - // This avoids unintended engagements while still allowing resume spam - if ((addr == MSG_GRA_ACC_01) && !controls_allowed) { - // disallow resume and set: bits 16 and 19 - if ((GET_BYTE(to_send, 2) & 0x9U) != 0U) { - tx = false; - } - } - - return tx; -} - -static int volkswagen_mqb_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - switch (bus_num) { - case 0: - if (addr == MSG_LH_EPS_03) { - // openpilot needs to replace apparent driver steering input torque to pacify VW Emergency Assist - bus_fwd = -1; - } else { - // Forward all remaining traffic from Extended CAN onward - bus_fwd = 2; - } - break; - case 2: - if ((addr == MSG_HCA_01) || (addr == MSG_LDW_02)) { - // openpilot takes over LKAS steering control and related HUD messages from the camera - bus_fwd = -1; - } else if (volkswagen_longitudinal && ((addr == MSG_ACC_02) || (addr == MSG_ACC_06) || (addr == MSG_ACC_07))) { - // openpilot takes over acceleration/braking control and related HUD messages from the stock ACC radar - bus_fwd = -1; - } else { - // Forward all remaining traffic from Extended CAN devices to J533 gateway - bus_fwd = 0; - } - break; - default: - // No other buses should be in use; fallback to do-not-forward - bus_fwd = -1; - break; - } - - return bus_fwd; -} - -const safety_hooks volkswagen_mqb_hooks = { - .init = volkswagen_mqb_init, - .rx = volkswagen_mqb_rx_hook, - .tx = volkswagen_mqb_tx_hook, - .fwd = volkswagen_mqb_fwd_hook, - .get_counter = volkswagen_mqb_meb_get_counter, - .get_checksum = volkswagen_mqb_meb_get_checksum, - .compute_checksum = volkswagen_mqb_meb_compute_crc, -}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h deleted file mode 100644 index 672edba781..0000000000 --- a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h +++ /dev/null @@ -1,259 +0,0 @@ -#pragma once - -#include "safety_declarations.h" -#include "safety_volkswagen_common.h" - -#define MSG_LENKHILFE_3 0x0D0 // RX from EPS, for steering angle and driver steering torque -#define MSG_HCA_1 0x0D2 // TX by OP, Heading Control Assist steering torque -#define MSG_BREMSE_1 0x1A0 // RX from ABS, for ego speed -#define MSG_MOTOR_2 0x288 // RX from ECU, for CC state and brake switch state -#define MSG_ACC_SYSTEM 0x368 // TX by OP, longitudinal acceleration controls -#define MSG_MOTOR_3 0x380 // RX from ECU, for driver throttle input -#define MSG_GRA_NEU 0x38A // TX by OP, ACC control buttons for cancel/resume -#define MSG_MOTOR_5 0x480 // RX from ECU, for ACC main switch state -#define MSG_ACC_GRA_ANZEIGE 0x56A // TX by OP, ACC HUD -#define MSG_LDW_1 0x5BE // TX by OP, Lane line recognition and text alerts - -static uint32_t volkswagen_pq_get_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - - return (uint32_t)GET_BYTE(to_push, (addr == MSG_MOTOR_5) ? 7 : 0); -} - -static uint8_t volkswagen_pq_get_counter(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - uint8_t counter = 0U; - - if (addr == MSG_LENKHILFE_3) { - counter = (uint8_t)(GET_BYTE(to_push, 1) & 0xF0U) >> 4; - } else if (addr == MSG_GRA_NEU) { - counter = (uint8_t)(GET_BYTE(to_push, 2) & 0xF0U) >> 4; - } else { - } - - return counter; -} - -static uint32_t volkswagen_pq_compute_checksum(const CANPacket_t *to_push) { - int addr = GET_ADDR(to_push); - int len = GET_LEN(to_push); - uint8_t checksum = 0U; - int checksum_byte = (addr == MSG_MOTOR_5) ? 7 : 0; - - // Simple XOR over the payload, except for the byte where the checksum lives. - for (int i = 0; i < len; i++) { - if (i != checksum_byte) { - checksum ^= (uint8_t)GET_BYTE(to_push, i); - } - } - - return checksum; -} - -static safety_config volkswagen_pq_init(uint16_t param) { - // Transmit of GRA_Neu is allowed on bus 0 and 2 to keep compatibility with gateway and camera integration - static const CanMsg VOLKSWAGEN_PQ_STOCK_TX_MSGS[] = {{MSG_HCA_1, 0, 5}, {MSG_LDW_1, 0, 8}, - {MSG_GRA_NEU, 0, 4}, {MSG_GRA_NEU, 2, 4}}; - - static const CanMsg VOLKSWAGEN_PQ_LONG_TX_MSGS[] = {{MSG_HCA_1, 0, 5}, {MSG_LDW_1, 0, 8}, - {MSG_ACC_SYSTEM, 0, 8}, {MSG_ACC_GRA_ANZEIGE, 0, 8}}; - - static RxCheck volkswagen_pq_rx_checks[] = { - {.msg = {{MSG_LENKHILFE_3, 0, 6, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MSG_BREMSE_1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MSG_MOTOR_2, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MSG_MOTOR_3, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, - {.msg = {{MSG_MOTOR_5, 0, 8, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, - {.msg = {{MSG_GRA_NEU, 0, 4, .max_counter = 15U, .frequency = 30U}, { 0 }, { 0 }}}, - }; - - UNUSED(param); - - volkswagen_set_button_prev = false; - volkswagen_resume_button_prev = false; - -#ifdef ALLOW_DEBUG - volkswagen_longitudinal = GET_FLAG(param, FLAG_VOLKSWAGEN_LONG_CONTROL); -#endif - return volkswagen_longitudinal ? BUILD_SAFETY_CFG(volkswagen_pq_rx_checks, VOLKSWAGEN_PQ_LONG_TX_MSGS) : \ - BUILD_SAFETY_CFG(volkswagen_pq_rx_checks, VOLKSWAGEN_PQ_STOCK_TX_MSGS); -} - -static void volkswagen_pq_rx_hook(const CANPacket_t *to_push) { - if (GET_BUS(to_push) == 0U) { - int addr = GET_ADDR(to_push); - - // Update in-motion state from speed value. - // Signal: Bremse_1.Geschwindigkeit_neu__Bremse_1_ - if (addr == MSG_BREMSE_1) { - int speed = ((GET_BYTE(to_push, 2) & 0xFEU) >> 1) | (GET_BYTE(to_push, 3) << 7); - vehicle_moving = speed > 0; - } - - // Update driver input torque samples - // Signal: Lenkhilfe_3.LH3_LM (absolute torque) - // Signal: Lenkhilfe_3.LH3_LMSign (direction) - if (addr == MSG_LENKHILFE_3) { - int torque_driver_new = GET_BYTE(to_push, 2) | ((GET_BYTE(to_push, 3) & 0x3U) << 8); - int sign = (GET_BYTE(to_push, 3) & 0x4U) >> 2; - if (sign == 1) { - torque_driver_new *= -1; - } - update_sample(&torque_driver, torque_driver_new); - } - - if (volkswagen_longitudinal) { - if (addr == MSG_MOTOR_5) { - // ACC main switch on is a prerequisite to enter controls, exit controls immediately on main switch off - // Signal: Motor_5.GRA_Hauptschalter - acc_main_on = GET_BIT(to_push, 50U); - if (!acc_main_on) { - controls_allowed = false; - } - } - - if (addr == MSG_GRA_NEU) { - // If ACC main switch is on, enter controls on falling edge of Set or Resume - // Signal: GRA_Neu.GRA_Neu_Setzen - // Signal: GRA_Neu.GRA_Neu_Recall - bool set_button = GET_BIT(to_push, 16U); - bool resume_button = GET_BIT(to_push, 17U); - if ((volkswagen_set_button_prev && !set_button) || (volkswagen_resume_button_prev && !resume_button)) { - controls_allowed = acc_main_on; - } - volkswagen_set_button_prev = set_button; - volkswagen_resume_button_prev = resume_button; - // Exit controls on rising edge of Cancel, override Set/Resume if present simultaneously - // Signal: GRA_ACC_01.GRA_Abbrechen - if (GET_BIT(to_push, 9U)) { - controls_allowed = false; - } - } - } else { - if (addr == MSG_MOTOR_2) { - // Enter controls on rising edge of stock ACC, exit controls if stock ACC disengages - // Signal: Motor_2.GRA_Status - int acc_status = (GET_BYTE(to_push, 2) & 0xC0U) >> 6; - bool cruise_engaged = (acc_status == 1) || (acc_status == 2); - pcm_cruise_check(cruise_engaged); - } - } - - // Signal: Motor_3.Fahrpedal_Rohsignal - if (addr == MSG_MOTOR_3) { - gas_pressed = (GET_BYTE(to_push, 2)); - } - - // Signal: Motor_2.Bremslichtschalter - if (addr == MSG_MOTOR_2) { - brake_pressed = (GET_BYTE(to_push, 2) & 0x1U); - } - - generic_rx_checks((addr == MSG_HCA_1)); - } -} - -static bool volkswagen_pq_tx_hook(const CANPacket_t *to_send) { - // lateral limits - const TorqueSteeringLimits VOLKSWAGEN_PQ_STEERING_LIMITS = { - .max_steer = 300, // 3.0 Nm (EPS side max of 3.0Nm with fault if violated) - .max_rt_delta = 113, // 6 max rate up * 50Hz send rate * 250000 RT interval / 1000000 = 75 ; 125 * 1.5 for safety pad = 113 - .max_rt_interval = 250000, // 250ms between real time checks - .max_rate_up = 6, // 3.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) - .max_rate_down = 10, // 5.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) - .driver_torque_multiplier = 3, - .driver_torque_allowance = 80, - .type = TorqueDriverLimited, - }; - - // longitudinal limits - // acceleration in m/s2 * 1000 to avoid floating point math - const LongitudinalLimits VOLKSWAGEN_PQ_LONG_LIMITS = { - .max_accel = 2000, - .min_accel = -3500, - .inactive_accel = 3010, // VW sends one increment above the max range when inactive - }; - - int addr = GET_ADDR(to_send); - bool tx = true; - - // Safety check for HCA_1 Heading Control Assist torque - // Signal: HCA_1.LM_Offset (absolute torque) - // Signal: HCA_1.LM_Offsign (direction) - if (addr == MSG_HCA_1) { - int desired_torque = GET_BYTE(to_send, 2) | ((GET_BYTE(to_send, 3) & 0x7FU) << 8); - desired_torque = desired_torque / 32; // DBC scale from PQ network to centi-Nm - int sign = (GET_BYTE(to_send, 3) & 0x80U) >> 7; - if (sign == 1) { - desired_torque *= -1; - } - - uint32_t hca_status = ((GET_BYTE(to_send, 1) >> 4) & 0xFU); - bool steer_req = ((hca_status == 5U) || (hca_status == 7U)); - - if (steer_torque_cmd_checks(desired_torque, steer_req, VOLKSWAGEN_PQ_STEERING_LIMITS)) { - tx = false; - } - } - - // Safety check for acceleration commands - // To avoid floating point math, scale upward and compare to pre-scaled safety m/s2 boundaries - if (addr == MSG_ACC_SYSTEM) { - // Signal: ACC_System.ACS_Sollbeschl (acceleration in m/s2, scale 0.005, offset -7.22) - int desired_accel = ((((GET_BYTE(to_send, 4) & 0x7U) << 8) | GET_BYTE(to_send, 3)) * 5U) - 7220U; - - if (longitudinal_accel_checks(desired_accel, VOLKSWAGEN_PQ_LONG_LIMITS)) { - tx = false; - } - } - - // FORCE CANCEL: ensuring that only the cancel button press is sent when controls are off. - // This avoids unintended engagements while still allowing resume spam - if ((addr == MSG_GRA_NEU) && !controls_allowed) { - // Signal: GRA_Neu.GRA_Neu_Setzen - // Signal: GRA_Neu.GRA_Neu_Recall - if (GET_BIT(to_send, 16U) || GET_BIT(to_send, 17U)) { - tx = false; - } - } - - return tx; -} - -static int volkswagen_pq_fwd_hook(int bus_num, int addr) { - int bus_fwd = -1; - - switch (bus_num) { - case 0: - // Forward all traffic from the Extended CAN onward - bus_fwd = 2; - break; - case 2: - if ((addr == MSG_HCA_1) || (addr == MSG_LDW_1)) { - // openpilot takes over LKAS steering control and related HUD messages from the camera - bus_fwd = -1; - } else if (volkswagen_longitudinal && ((addr == MSG_ACC_SYSTEM) || (addr == MSG_ACC_GRA_ANZEIGE))) { - // openpilot takes over acceleration/braking control and related HUD messages from the stock ACC radar - } else { - // Forward all remaining traffic from Extended CAN devices to J533 gateway - bus_fwd = 0; - } - break; - default: - // No other buses should be in use; fallback to do-not-forward - bus_fwd = -1; - break; - } - - return bus_fwd; -} - -const safety_hooks volkswagen_pq_hooks = { - .init = volkswagen_pq_init, - .rx = volkswagen_pq_rx_hook, - .tx = volkswagen_pq_tx_hook, - .fwd = volkswagen_pq_fwd_hook, - .get_counter = volkswagen_pq_get_counter, - .get_checksum = volkswagen_pq_get_checksum, - .compute_checksum = volkswagen_pq_compute_checksum, -}; diff --git a/opendbc_repo/opendbc/safety/safety_declarations.h b/opendbc_repo/opendbc/safety/safety_declarations.h deleted file mode 100644 index b9939343c8..0000000000 --- a/opendbc_repo/opendbc/safety/safety_declarations.h +++ /dev/null @@ -1,294 +0,0 @@ -#pragma once - -#include -#include - -#define GET_BIT(msg, b) ((bool)!!(((msg)->data[((b) / 8U)] >> ((b) % 8U)) & 0x1U)) -#define GET_BYTE(msg, b) ((msg)->data[(b)]) -#define GET_FLAG(value, mask) (((__typeof__(mask))(value) & (mask)) == (mask)) // cppcheck-suppress misra-c2012-1.2; allow __typeof__ - -#define BUILD_SAFETY_CFG(rx, tx) ((safety_config){(rx), (sizeof((rx)) / sizeof((rx)[0])), \ - (tx), (sizeof((tx)) / sizeof((tx)[0]))}) -#define SET_RX_CHECKS(rx, config) \ - do { \ - (config).rx_checks = (rx); \ - (config).rx_checks_len = sizeof((rx)) / sizeof((rx)[0]); \ - } while (0); - -#define SET_TX_MSGS(tx, config) \ - do { \ - (config).tx_msgs = (tx); \ - (config).tx_msgs_len = sizeof((tx)) / sizeof((tx)[0]); \ - } while(0); - -#define UPDATE_VEHICLE_SPEED(val_ms) (update_sample(&vehicle_speed, ROUND((val_ms) * VEHICLE_SPEED_FACTOR))) - -uint32_t GET_BYTES(const CANPacket_t *msg, int start, int len); - -extern const int MAX_WRONG_COUNTERS; -#define MAX_ADDR_CHECK_MSGS 3U -#define MAX_SAMPLE_VALS 6 -// used to represent floating point vehicle speed in a sample_t -#define VEHICLE_SPEED_FACTOR 1000.0 - - -// sample struct that keeps 6 samples in memory -struct sample_t { - int values[MAX_SAMPLE_VALS]; - int min; - int max; -}; - -// safety code requires floats -struct lookup_t { - float x[3]; - float y[3]; -}; - -typedef struct { - int addr; - int bus; - int len; -} CanMsg; - -typedef enum { - TorqueMotorLimited, // torque steering command, limited by EPS output torque - TorqueDriverLimited, // torque steering command, limited by driver's input torque -} SteeringControlType; - -typedef struct { - // torque cmd limits - const int max_steer; - const int max_rate_up; - const int max_rate_down; - const int max_rt_delta; - const uint32_t max_rt_interval; - - const SteeringControlType type; - - // driver torque limits - const int driver_torque_allowance; - const int driver_torque_multiplier; - - // motor torque limits - const int max_torque_error; - - // safety around steer req bit - const int min_valid_request_frames; - const int max_invalid_request_frames; - const uint32_t min_valid_request_rt_interval; - const bool has_steer_req_tolerance; -} TorqueSteeringLimits; - -typedef struct { - // angle cmd limits (also used by curvature control cars) - const int max_angle; - - const float angle_deg_to_can; - const struct lookup_t angle_rate_up_lookup; - const struct lookup_t angle_rate_down_lookup; - const int max_angle_error; // used to limit error between meas and cmd while enabled - const float angle_error_min_speed; // minimum speed to start limiting angle error - - const bool angle_is_curvature; // if true, we can apply max lateral acceleration limits - const bool enforce_angle_error; // enables max_angle_error check - const bool inactive_angle_is_zero; // if false, enforces angle near meas when disabled (default) -} AngleSteeringLimits; - -typedef struct { - // acceleration cmd limits - const int max_accel; - const int min_accel; - const int inactive_accel; - - // gas & brake cmd limits - // inactive and min gas are 0 on most safety modes - const int max_gas; - const int min_gas; - const int inactive_gas; - const int max_brake; - - // transmission rpm limits - const int max_transmission_rpm; - const int min_transmission_rpm; - const int inactive_transmission_rpm; - - // speed cmd limits - const int inactive_speed; -} LongitudinalLimits; - -typedef struct { - const int addr; - const int bus; - const int len; - const bool ignore_checksum; // checksum check is not performed when set to true - const bool ignore_counter; // counter check is not performed when set to true - const uint8_t max_counter; // maximum value of the counter. 0 means that the counter check is skipped - const bool quality_flag; // true is quality flag check is performed - const uint32_t frequency; // expected frequency of the message [Hz] -} CanMsgCheck; - -typedef struct { - // dynamic flags, reset on safety mode init - bool msg_seen; - int index; // if multiple messages are allowed to be checked, this stores the index of the first one seen. only msg[msg_index] will be used - bool valid_checksum; // true if and only if checksum check is passed - int wrong_counters; // counter of wrong counters, saturated between 0 and MAX_WRONG_COUNTERS - bool valid_quality_flag; // true if the message's quality/health/status signals are valid - uint8_t last_counter; // last counter value - uint32_t last_timestamp; // micro-s - bool lagging; // true if and only if the time between updates is excessive -} RxStatus; - -// params and flags about checksum, counter and frequency checks for each monitored address -typedef struct { - const CanMsgCheck msg[MAX_ADDR_CHECK_MSGS]; // check either messages (e.g. honda steer) - RxStatus status; -} RxCheck; - -typedef struct { - RxCheck *rx_checks; - int rx_checks_len; - const CanMsg *tx_msgs; - int tx_msgs_len; -} safety_config; - -typedef uint32_t (*get_checksum_t)(const CANPacket_t *to_push); -typedef uint32_t (*compute_checksum_t)(const CANPacket_t *to_push); -typedef uint8_t (*get_counter_t)(const CANPacket_t *to_push); -typedef bool (*get_quality_flag_valid_t)(const CANPacket_t *to_push); - -typedef safety_config (*safety_hook_init)(uint16_t param); -typedef void (*rx_hook)(const CANPacket_t *to_push); -typedef bool (*tx_hook)(const CANPacket_t *to_send); -typedef int (*fwd_hook)(int bus_num, int addr); - -typedef struct { - safety_hook_init init; - rx_hook rx; - tx_hook tx; - fwd_hook fwd; - get_checksum_t get_checksum; - compute_checksum_t compute_checksum; - get_counter_t get_counter; - get_quality_flag_valid_t get_quality_flag_valid; -} safety_hooks; - -bool safety_rx_hook(const CANPacket_t *to_push); -bool safety_tx_hook(CANPacket_t *to_send); -uint32_t get_ts_elapsed(uint32_t ts, uint32_t ts_last); -int to_signed(int d, int bits); -void update_sample(struct sample_t *sample, int sample_new); -bool get_longitudinal_allowed(void); -int ROUND(float val); -void gen_crc_lookup_table_8(uint8_t poly, uint8_t crc_lut[]); -#ifdef CANFD -void gen_crc_lookup_table_16(uint16_t poly, uint16_t crc_lut[]); -#endif -void generic_rx_checks(bool stock_ecu_detected); -bool steer_torque_cmd_checks(int desired_torque, int steer_req, const TorqueSteeringLimits limits); -bool steer_angle_cmd_checks(int desired_angle, bool steer_control_enabled, const AngleSteeringLimits limits); -bool longitudinal_accel_checks(int desired_accel, const LongitudinalLimits limits); -bool longitudinal_speed_checks(int desired_speed, const LongitudinalLimits limits); -bool longitudinal_gas_checks(int desired_gas, const LongitudinalLimits limits); -bool longitudinal_transmission_rpm_checks(int desired_transmission_rpm, const LongitudinalLimits limits); -bool longitudinal_brake_checks(int desired_brake, const LongitudinalLimits limits); -bool longitudinal_interceptor_checks(const CANPacket_t *to_send); -void pcm_cruise_check(bool cruise_engaged); - -void safety_tick(const safety_config *safety_config); - -// This can be set by the safety hooks -extern bool controls_allowed; -extern bool relay_malfunction; -extern bool enable_gas_interceptor; -extern int gas_interceptor_prev; -extern bool gas_pressed; -extern bool gas_pressed_prev; -extern bool brake_pressed; -extern bool brake_pressed_prev; -extern bool regen_braking; -extern bool regen_braking_prev; -extern bool cruise_engaged_prev; -extern struct sample_t vehicle_speed; -extern bool vehicle_moving; -extern bool acc_main_on; // referred to as "ACC off" in ISO 15622:2018 -extern int cruise_button_prev; -extern int cruise_main_prev; -extern bool safety_rx_checks_invalid; - -// for safety modes with torque steering control -extern int desired_torque_last; // last desired steer torque -extern int rt_torque_last; // last desired torque for real time check -extern int valid_steer_req_count; // counter for steer request bit matching non-zero torque -extern int invalid_steer_req_count; // counter to allow multiple frames of mismatching torque request bit -extern struct sample_t torque_meas; // last 6 motor torques produced by the eps -extern struct sample_t torque_driver; // last 6 driver torques measured -extern uint32_t ts_torque_check_last; -extern uint32_t ts_steer_req_mismatch_last; // last timestamp steer req was mismatched with torque - -// state for controls_allowed timeout logic -extern bool heartbeat_engaged; // openpilot enabled, passed in heartbeat USB command -extern uint32_t heartbeat_engaged_mismatches; // count of mismatches between heartbeat_engaged and controls_allowed - -// for safety modes with angle steering control -extern uint32_t ts_angle_last; -extern int desired_angle_last; -extern struct sample_t angle_meas; // last 6 steer angles/curvatures - -// This can be set with a USB command -// It enables features that allow alternative experiences, like not disengaging on gas press -// It is only either 0 or 1 on mainline comma.ai openpilot - -#define ALT_EXP_DISABLE_DISENGAGE_ON_GAS 1 - -// If using this flag, make sure to communicate to your users that a stock safety feature is now disabled. -#define ALT_EXP_DISABLE_STOCK_AEB 2 - -// If using this flag, be aware that harder braking is more likely to lead to rear endings, -// and that alone this flag doesn't make braking compliant because there's also a time element. -// Setting this flag is used for allowing the full -5.0 to +4.0 m/s^2 at lower speeds -// See ISO 15622:2018 for more information. -#define ALT_EXP_RAISE_LONGITUDINAL_LIMITS_TO_ISO_MAX 8 - -// This flag allows AEB to be commanded from openpilot. -#define ALT_EXP_ALLOW_AEB 16 - -extern int alternative_experience; - -// time since safety mode has been changed -extern uint32_t safety_mode_cnt; - -typedef struct { - uint16_t id; - const safety_hooks *hooks; -} safety_hook_config; - -extern uint16_t current_safety_mode; -extern uint16_t current_safety_param; -extern safety_config current_safety_config; - -int safety_fwd_hook(int bus_num, int addr); -int set_safety_hooks(uint16_t mode, uint16_t param); - -extern const safety_hooks body_hooks; -extern const safety_hooks chrysler_hooks; -extern const safety_hooks elm327_hooks; -extern const safety_hooks nooutput_hooks; -extern const safety_hooks alloutput_hooks; -extern const safety_hooks ford_hooks; -extern const safety_hooks gm_hooks; -extern const safety_hooks honda_nidec_hooks; -extern const safety_hooks honda_bosch_hooks; -extern const safety_hooks hyundai_canfd_hooks; -extern const safety_hooks hyundai_hooks; -extern const safety_hooks hyundai_legacy_hooks; -extern const safety_hooks mazda_hooks; -extern const safety_hooks nissan_hooks; -extern const safety_hooks subaru_hooks; -extern const safety_hooks subaru_preglobal_hooks; -extern const safety_hooks tesla_hooks; -extern const safety_hooks toyota_hooks; -extern const safety_hooks volkswagen_mqb_hooks; -extern const safety_hooks volkswagen_pq_hooks; -extern const safety_hooks rivian_hooks; diff --git a/opendbc_repo/opendbc/safety/tests/__init__.py b/opendbc_repo/opendbc/safety/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/safety/tests/common.py b/opendbc_repo/opendbc/safety/tests/common.py deleted file mode 100644 index 9fded87af0..0000000000 --- a/opendbc_repo/opendbc/safety/tests/common.py +++ /dev/null @@ -1,993 +0,0 @@ -import os -import abc -import unittest -import importlib -import numpy as np -from collections.abc import Callable - -from opendbc.can.packer import CANPacker # pylint: disable=import-error -from opendbc.safety import ALTERNATIVE_EXPERIENCE -from opendbc.safety.tests.libsafety import libsafety_py - -MAX_WRONG_COUNTERS = 5 -MAX_SAMPLE_VALS = 6 - -MessageFunction = Callable[[float], libsafety_py.CANPacket] - -def sign_of(a): - return 1 if a > 0 else -1 - - -def make_msg(bus, addr, length=8, dat=None): - if dat is None: - dat = b'\x00' * length - return libsafety_py.make_CANPacket(addr, bus, dat) - - -class CANPackerPanda(CANPacker): - def make_can_msg_panda(self, name_or_addr, bus, values, fix_checksum=None): - msg = self.make_can_msg(name_or_addr, bus, values) - if fix_checksum is not None: - msg = fix_checksum(msg) - addr, dat, bus = msg - return libsafety_py.make_CANPacket(addr, bus, dat) - - -def add_regen_tests(cls): - """Dynamically adds regen tests for all user brake tests.""" - - # only rx/user brake tests, not brake command - found_tests = [func for func in dir(cls) if func.startswith("test_") and "user_brake" in func] - assert len(found_tests) >= 3, "Failed to detect known brake tests" - - for test in found_tests: - def _make_regen_test(brake_func): - def _regen_test(self): - # only for safety modes with a regen message - if self._user_regen_msg(0) is None: - raise unittest.SkipTest("Safety mode implements no _user_regen_msg") - - getattr(self, brake_func)(self._user_regen_msg, self.safety.get_regen_braking_prev) - return _regen_test - - setattr(cls, test.replace("brake", "regen"), _make_regen_test(test)) - - return cls - - -class PandaSafetyTestBase(unittest.TestCase): - safety: libsafety_py.Panda - - @classmethod - def setUpClass(cls): - if cls.__name__ == "PandaSafetyTestBase": - cls.safety = None - raise unittest.SkipTest - - def _reset_safety_hooks(self): - self.safety.set_safety_hooks(self.safety.get_current_safety_mode(), - self.safety.get_current_safety_param()) - - def _rx(self, msg): - return self.safety.safety_rx_hook(msg) - - def _tx(self, msg): - return self.safety.safety_tx_hook(msg) - - def _generic_limit_safety_check(self, msg_function: MessageFunction, min_allowed_value: float, max_allowed_value: float, - min_possible_value: float, max_possible_value: float, test_delta: float = 1, inactive_value: float = 0, - msg_allowed = True, additional_setup: Callable[[float], None] | None = None): - """ - Enforces that a signal within a message is only allowed to be sent within a specific range, min_allowed_value -> max_allowed_value. - Tests the range of min_possible_value -> max_possible_value with a delta of test_delta. - Message is also only allowed to be sent when controls_allowed is true, unless the value is equal to inactive_value. - Message is never allowed if msg_allowed is false, for example when stock longitudinal is enabled and you are sending acceleration requests. - additional_setup is used for extra setup before each _tx, ex: for setting the previous torque for rate limits - """ - - # Ensure that we at least test the allowed_value range - self.assertGreater(max_possible_value, max_allowed_value) - self.assertLessEqual(min_possible_value, min_allowed_value) - - for controls_allowed in [False, True]: - # enforce we don't skip over 0 or inactive - for v in np.concatenate((np.arange(min_possible_value, max_possible_value, test_delta), np.array([0, inactive_value]))): - v = round(v, 2) # floats might not hit exact boundary conditions without rounding - self.safety.set_controls_allowed(controls_allowed) - if additional_setup is not None: - additional_setup(v) - should_tx = controls_allowed and min_allowed_value <= v <= max_allowed_value - should_tx = (should_tx or v == inactive_value) and msg_allowed - self.assertEqual(self._tx(msg_function(v)), should_tx, (controls_allowed, should_tx, v)) - - def _common_measurement_test(self, msg_func: Callable, min_value: float, max_value: float, factor: float, - meas_min_func: Callable[[], int], meas_max_func: Callable[[], int]): - """Tests accurate measurement parsing, and that the struct is reset on safety mode init""" - for val in np.arange(min_value, max_value, 0.5): - for i in range(MAX_SAMPLE_VALS): - self.assertTrue(self._rx(msg_func(val + i * 0.1))) - - # assert close by one decimal place - self.assertAlmostEqual(meas_min_func() / factor, val, delta=0.1) - self.assertAlmostEqual(meas_max_func() / factor - 0.5, val, delta=0.1) - - # ensure sample_t is reset on safety init - self._reset_safety_hooks() - self.assertEqual(meas_min_func(), 0) - self.assertEqual(meas_max_func(), 0) - - -class LongitudinalAccelSafetyTest(PandaSafetyTestBase, abc.ABC): - - LONGITUDINAL = True - MAX_ACCEL: float = 2.0 - MIN_ACCEL: float = -3.5 - INACTIVE_ACCEL: float = 0.0 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "LongitudinalAccelSafetyTest": - cls.safety = None - raise unittest.SkipTest - - @abc.abstractmethod - def _accel_msg(self, accel: float): - pass - - def test_accel_limits_correct(self): - self.assertGreater(self.MAX_ACCEL, 0) - self.assertLess(self.MIN_ACCEL, 0) - - def test_accel_actuation_limits(self): - limits = ((self.MIN_ACCEL, self.MAX_ACCEL, ALTERNATIVE_EXPERIENCE.DEFAULT), - (self.MIN_ACCEL, self.MAX_ACCEL, ALTERNATIVE_EXPERIENCE.RAISE_LONGITUDINAL_LIMITS_TO_ISO_MAX)) - - for min_accel, max_accel, alternative_experience in limits: - # enforce we don't skip over 0 or inactive accel - for accel in np.concatenate((np.arange(min_accel - 1, max_accel + 1, 0.05), [0, self.INACTIVE_ACCEL])): - accel = round(accel, 2) # floats might not hit exact boundary conditions without rounding - for controls_allowed in [True, False]: - self.safety.set_controls_allowed(controls_allowed) - self.safety.set_alternative_experience(alternative_experience) - if self.LONGITUDINAL: - should_tx = controls_allowed and min_accel <= accel <= max_accel - should_tx = should_tx or accel == self.INACTIVE_ACCEL - else: - should_tx = False - self.assertEqual(should_tx, self._tx(self._accel_msg(accel))) - - -class LongitudinalGasBrakeSafetyTest(PandaSafetyTestBase, abc.ABC): - - MIN_BRAKE: int = 0 - MAX_BRAKE: int | None = None - MAX_POSSIBLE_BRAKE: int | None = None - - MIN_GAS: int = 0 - MAX_GAS: int | None = None - INACTIVE_GAS = 0 - MAX_POSSIBLE_GAS: int | None = None - - def test_gas_brake_limits_correct(self): - self.assertIsNotNone(self.MAX_POSSIBLE_BRAKE) - self.assertIsNotNone(self.MAX_POSSIBLE_GAS) - - self.assertGreater(self.MAX_BRAKE, self.MIN_BRAKE) - self.assertGreater(self.MAX_GAS, self.MIN_GAS) - - @abc.abstractmethod - def _send_gas_msg(self, gas: int): - pass - - @abc.abstractmethod - def _send_brake_msg(self, brake: int): - pass - - def test_brake_safety_check(self): - self._generic_limit_safety_check(self._send_brake_msg, self.MIN_BRAKE, self.MAX_BRAKE, 0, self.MAX_POSSIBLE_BRAKE, 1) - - def test_gas_safety_check(self): - self._generic_limit_safety_check(self._send_gas_msg, self.MIN_GAS, self.MAX_GAS, 0, self.MAX_POSSIBLE_GAS, 1, self.INACTIVE_GAS) - - -class TorqueSteeringSafetyTestBase(PandaSafetyTestBase, abc.ABC): - - MAX_RATE_UP = 0 - MAX_RATE_DOWN = 0 - MAX_TORQUE = 0 - MAX_RT_DELTA = 0 - RT_INTERVAL = 0 - - NO_STEER_REQ_BIT = False - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TorqueSteeringSafetyTestBase": - cls.safety = None - raise unittest.SkipTest - - @abc.abstractmethod - def _torque_cmd_msg(self, torque, steer_req=1): - pass - - def _set_prev_torque(self, t): - self.safety.set_desired_torque_last(t) - self.safety.set_rt_torque_last(t) - - def test_steer_safety_check(self): - for enabled in [0, 1]: - for t in range(int(-self.MAX_TORQUE * 1.5), int(self.MAX_TORQUE * 1.5)): - self.safety.set_controls_allowed(enabled) - self._set_prev_torque(t) - if abs(t) > self.MAX_TORQUE or (not enabled and abs(t) > 0): - self.assertFalse(self._tx(self._torque_cmd_msg(t))) - else: - self.assertTrue(self._tx(self._torque_cmd_msg(t))) - - def test_non_realtime_limit_up(self): - self.safety.set_controls_allowed(True) - - self._set_prev_torque(0) - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_RATE_UP))) - self._set_prev_torque(0) - self.assertTrue(self._tx(self._torque_cmd_msg(-self.MAX_RATE_UP))) - - self._set_prev_torque(0) - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_RATE_UP + 1))) - self.safety.set_controls_allowed(True) - self._set_prev_torque(0) - self.assertFalse(self._tx(self._torque_cmd_msg(-self.MAX_RATE_UP - 1))) - - def test_steer_req_bit(self): - """Asserts all torque safety modes check the steering request bit""" - if self.NO_STEER_REQ_BIT: - raise unittest.SkipTest("No steering request bit") - - self.safety.set_controls_allowed(True) - self._set_prev_torque(self.MAX_TORQUE) - - # Send torque successfully, then only drop the request bit and ensure it stays blocked - for _ in range(10): - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, 1))) - - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, 0))) - for _ in range(10): - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, 1))) - - -class SteerRequestCutSafetyTest(TorqueSteeringSafetyTestBase, abc.ABC): - - @classmethod - def setUpClass(cls): - if cls.__name__ == "SteerRequestCutSafetyTest": - cls.safety = None - raise unittest.SkipTest - - # Safety around steering request bit mismatch tolerance - MIN_VALID_STEERING_FRAMES: int - MAX_INVALID_STEERING_FRAMES: int - MIN_VALID_STEERING_RT_INTERVAL: int - - def test_steer_req_bit_frames(self): - """ - Certain safety modes implement some tolerance on their steer request bits matching the - requested torque to avoid a steering fault or lockout and maintain torque. This tests: - - We can't cut torque for more than one frame - - We can't cut torque until at least the minimum number of matching steer_req messages - - We can always recover from violations if steer_req=1 - """ - - for min_valid_steer_frames in range(self.MIN_VALID_STEERING_FRAMES * 2): - # Reset match count and rt timer to allow cut (valid_steer_req_count, ts_steer_req_mismatch_last) - self.safety.init_tests() - self.safety.set_timer(self.MIN_VALID_STEERING_RT_INTERVAL) - - # Allow torque cut - self.safety.set_controls_allowed(True) - self._set_prev_torque(self.MAX_TORQUE) - for _ in range(min_valid_steer_frames): - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) - - # should tx if we've sent enough valid frames, and we're not cutting torque for too many frames consecutively - should_tx = min_valid_steer_frames >= self.MIN_VALID_STEERING_FRAMES - for idx in range(self.MAX_INVALID_STEERING_FRAMES * 2): - tx = self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0)) - self.assertEqual(should_tx and idx < self.MAX_INVALID_STEERING_FRAMES, tx) - - # Keep blocking after one steer_req mismatch - for _ in range(100): - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) - - # Make sure we can recover - self.assertTrue(self._tx(self._torque_cmd_msg(0, steer_req=1))) - self._set_prev_torque(self.MAX_TORQUE) - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) - - def test_steer_req_bit_multi_invalid(self): - """ - For safety modes allowing multiple consecutive invalid frames, this ensures that once a valid frame - is sent after an invalid frame (even without sending the max number of allowed invalid frames), - all counters are reset. - """ - for max_invalid_steer_frames in range(1, self.MAX_INVALID_STEERING_FRAMES * 2): - self.safety.init_tests() - self.safety.set_timer(self.MIN_VALID_STEERING_RT_INTERVAL) - - # Allow torque cut - self.safety.set_controls_allowed(True) - self._set_prev_torque(self.MAX_TORQUE) - for _ in range(self.MIN_VALID_STEERING_FRAMES): - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) - - # Send partial amount of allowed invalid frames - for idx in range(max_invalid_steer_frames): - should_tx = idx < self.MAX_INVALID_STEERING_FRAMES - self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) - - # Send one valid frame, and subsequent invalid should now be blocked - self._set_prev_torque(self.MAX_TORQUE) - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) - for _ in range(self.MIN_VALID_STEERING_FRAMES + 1): - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) - - def test_steer_req_bit_realtime(self): - """ - Realtime safety for cutting steer request bit. This tests: - - That we allow messages with mismatching steer request bit if time from last is >= MIN_VALID_STEERING_RT_INTERVAL - - That frame mismatch safety does not interfere with this test - """ - for rt_us in np.arange(self.MIN_VALID_STEERING_RT_INTERVAL - 50000, self.MIN_VALID_STEERING_RT_INTERVAL + 50000, 10000): - # Reset match count and rt timer (valid_steer_req_count, ts_steer_req_mismatch_last) - self.safety.init_tests() - - # Make sure valid_steer_req_count doesn't affect this test - self.safety.set_controls_allowed(True) - self._set_prev_torque(self.MAX_TORQUE) - for _ in range(self.MIN_VALID_STEERING_FRAMES): - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) - - # Normally, sending MIN_VALID_STEERING_FRAMES valid frames should always allow - self.safety.set_timer(max(rt_us, 0)) - should_tx = rt_us >= self.MIN_VALID_STEERING_RT_INTERVAL - for _ in range(self.MAX_INVALID_STEERING_FRAMES): - self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) - - # Keep blocking after one steer_req mismatch - for _ in range(100): - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) - - # Make sure we can recover - self.assertTrue(self._tx(self._torque_cmd_msg(0, steer_req=1))) - self._set_prev_torque(self.MAX_TORQUE) - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) - - -class DriverTorqueSteeringSafetyTest(TorqueSteeringSafetyTestBase, abc.ABC): - - DRIVER_TORQUE_ALLOWANCE = 0 - DRIVER_TORQUE_FACTOR = 0 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "DriverTorqueSteeringSafetyTest": - cls.safety = None - raise unittest.SkipTest - - @abc.abstractmethod - def _torque_driver_msg(self, torque): - pass - - def _reset_torque_driver_measurement(self, torque): - for _ in range(MAX_SAMPLE_VALS): - self._rx(self._torque_driver_msg(torque)) - - def test_non_realtime_limit_up(self): - self._reset_torque_driver_measurement(0) - super().test_non_realtime_limit_up() - - def test_against_torque_driver(self): - # Tests down limits and driver torque blending - self.safety.set_controls_allowed(True) - - # Cannot stay at MAX_TORQUE if above DRIVER_TORQUE_ALLOWANCE - for sign in [-1, 1]: - for driver_torque in np.arange(0, self.DRIVER_TORQUE_ALLOWANCE * 2, 1): - self._reset_torque_driver_measurement(-driver_torque * sign) - self._set_prev_torque(self.MAX_TORQUE * sign) - should_tx = abs(driver_torque) <= self.DRIVER_TORQUE_ALLOWANCE - self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(self.MAX_TORQUE * sign))) - - # arbitrary high driver torque to ensure max steer torque is allowed - max_driver_torque = int(self.MAX_TORQUE / self.DRIVER_TORQUE_FACTOR + self.DRIVER_TORQUE_ALLOWANCE + 1) - - # spot check some individual cases - for sign in [-1, 1]: - # Ensure we wind down factor units for every unit above allowance - driver_torque = (self.DRIVER_TORQUE_ALLOWANCE + 10) * sign - torque_desired = (self.MAX_TORQUE - 10 * self.DRIVER_TORQUE_FACTOR) * sign - delta = 1 * sign - self._set_prev_torque(torque_desired) - self._reset_torque_driver_measurement(-driver_torque) - self.assertTrue(self._tx(self._torque_cmd_msg(torque_desired))) - self._set_prev_torque(torque_desired + delta) - self._reset_torque_driver_measurement(-driver_torque) - self.assertFalse(self._tx(self._torque_cmd_msg(torque_desired + delta))) - - # If we're well past the allowance, minimum wind down is MAX_RATE_DOWN - self._set_prev_torque(self.MAX_TORQUE * sign) - self._reset_torque_driver_measurement(-max_driver_torque * sign) - self.assertTrue(self._tx(self._torque_cmd_msg((self.MAX_TORQUE - self.MAX_RATE_DOWN) * sign))) - self._set_prev_torque(self.MAX_TORQUE * sign) - self._reset_torque_driver_measurement(-max_driver_torque * sign) - self.assertTrue(self._tx(self._torque_cmd_msg(0))) - self._set_prev_torque(self.MAX_TORQUE * sign) - self._reset_torque_driver_measurement(-max_driver_torque * sign) - self.assertFalse(self._tx(self._torque_cmd_msg((self.MAX_TORQUE - self.MAX_RATE_DOWN + 1) * sign))) - - def test_realtime_limits(self): - self.safety.set_controls_allowed(True) - - for sign in [-1, 1]: - self.safety.init_tests() - self._set_prev_torque(0) - self._reset_torque_driver_measurement(0) - for t in np.arange(0, self.MAX_RT_DELTA, 1): - t *= sign - self.assertTrue(self._tx(self._torque_cmd_msg(t))) - self.assertFalse(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) - - self._set_prev_torque(0) - for t in np.arange(0, self.MAX_RT_DELTA, 1): - t *= sign - self.assertTrue(self._tx(self._torque_cmd_msg(t))) - - # Increase timer to update rt_torque_last - self.safety.set_timer(self.RT_INTERVAL + 1) - self.assertTrue(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA - 1)))) - self.assertTrue(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) - - def test_reset_driver_torque_measurements(self): - # Tests that the driver torque measurement sample_t is reset on safety mode init - for t in np.linspace(-self.MAX_TORQUE, self.MAX_TORQUE, MAX_SAMPLE_VALS): - self.assertTrue(self._rx(self._torque_driver_msg(t))) - - self.assertNotEqual(self.safety.get_torque_driver_min(), 0) - self.assertNotEqual(self.safety.get_torque_driver_max(), 0) - - self._reset_safety_hooks() - self.assertEqual(self.safety.get_torque_driver_min(), 0) - self.assertEqual(self.safety.get_torque_driver_max(), 0) - - -class MotorTorqueSteeringSafetyTest(TorqueSteeringSafetyTestBase, abc.ABC): - - MAX_TORQUE_ERROR = 0 - TORQUE_MEAS_TOLERANCE = 0 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "MotorTorqueSteeringSafetyTest": - cls.safety = None - raise unittest.SkipTest - - @abc.abstractmethod - def _torque_meas_msg(self, torque): - pass - - def _set_prev_torque(self, t): - super()._set_prev_torque(t) - self.safety.set_torque_meas(t, t) - - def test_torque_absolute_limits(self): - for controls_allowed in [True, False]: - for torque in np.arange(-self.MAX_TORQUE - 1000, self.MAX_TORQUE + 1000, self.MAX_RATE_UP): - self.safety.set_controls_allowed(controls_allowed) - self.safety.set_rt_torque_last(torque) - self.safety.set_torque_meas(torque, torque) - self.safety.set_desired_torque_last(torque - self.MAX_RATE_UP) - - if controls_allowed: - send = (-self.MAX_TORQUE <= torque <= self.MAX_TORQUE) - else: - send = torque == 0 - - self.assertEqual(send, self._tx(self._torque_cmd_msg(torque))) - - def test_non_realtime_limit_down(self): - self.safety.set_controls_allowed(True) - - torque_meas = self.MAX_TORQUE - self.MAX_TORQUE_ERROR - 50 - - self.safety.set_rt_torque_last(self.MAX_TORQUE) - self.safety.set_torque_meas(torque_meas, torque_meas) - self.safety.set_desired_torque_last(self.MAX_TORQUE) - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE - self.MAX_RATE_DOWN))) - - self.safety.set_rt_torque_last(self.MAX_TORQUE) - self.safety.set_torque_meas(torque_meas, torque_meas) - self.safety.set_desired_torque_last(self.MAX_TORQUE) - self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE - self.MAX_RATE_DOWN + 1))) - - def test_exceed_torque_sensor(self): - self.safety.set_controls_allowed(True) - - for sign in [-1, 1]: - self._set_prev_torque(0) - for t in np.arange(0, self.MAX_TORQUE_ERROR + 2, 2): # step needs to be smaller than MAX_TORQUE_ERROR - t *= sign - self.assertTrue(self._tx(self._torque_cmd_msg(t))) - - self.assertFalse(self._tx(self._torque_cmd_msg(sign * (self.MAX_TORQUE_ERROR + 2)))) - - def test_realtime_limit_up(self): - self.safety.set_controls_allowed(True) - - for sign in [-1, 1]: - self.safety.init_tests() - self._set_prev_torque(0) - for t in np.arange(0, self.MAX_RT_DELTA + 1, 1): - t *= sign - self.safety.set_torque_meas(t, t) - self.assertTrue(self._tx(self._torque_cmd_msg(t))) - self.assertFalse(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) - - self._set_prev_torque(0) - for t in np.arange(0, self.MAX_RT_DELTA + 1, 1): - t *= sign - self.safety.set_torque_meas(t, t) - self.assertTrue(self._tx(self._torque_cmd_msg(t))) - - # Increase timer to update rt_torque_last - self.safety.set_timer(self.RT_INTERVAL + 1) - self.assertTrue(self._tx(self._torque_cmd_msg(sign * self.MAX_RT_DELTA))) - self.assertTrue(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) - - def test_torque_measurements(self): - trq = 50 - for t in [trq, -trq, 0, 0, 0, 0]: - self._rx(self._torque_meas_msg(t)) - - max_range = range(trq, trq + self.TORQUE_MEAS_TOLERANCE + 1) - min_range = range(-(trq + self.TORQUE_MEAS_TOLERANCE), -trq + 1) - self.assertTrue(self.safety.get_torque_meas_min() in min_range) - self.assertTrue(self.safety.get_torque_meas_max() in max_range) - - max_range = range(self.TORQUE_MEAS_TOLERANCE + 1) - min_range = range(-(trq + self.TORQUE_MEAS_TOLERANCE), -trq + 1) - self._rx(self._torque_meas_msg(0)) - self.assertTrue(self.safety.get_torque_meas_min() in min_range) - self.assertTrue(self.safety.get_torque_meas_max() in max_range) - - max_range = range(self.TORQUE_MEAS_TOLERANCE + 1) - min_range = range(-self.TORQUE_MEAS_TOLERANCE, 0 + 1) - self._rx(self._torque_meas_msg(0)) - self.assertTrue(self.safety.get_torque_meas_min() in min_range) - self.assertTrue(self.safety.get_torque_meas_max() in max_range) - - def test_reset_torque_measurements(self): - # Tests that the torque measurement sample_t is reset on safety mode init - for t in np.linspace(-self.MAX_TORQUE, self.MAX_TORQUE, MAX_SAMPLE_VALS): - self.assertTrue(self._rx(self._torque_meas_msg(t))) - - self.assertNotEqual(self.safety.get_torque_meas_min(), 0) - self.assertNotEqual(self.safety.get_torque_meas_max(), 0) - - self._reset_safety_hooks() - self.assertEqual(self.safety.get_torque_meas_min(), 0) - self.assertEqual(self.safety.get_torque_meas_max(), 0) - - -class AngleSteeringSafetyTest(PandaSafetyTestBase): - - STEER_ANGLE_MAX: float = 300 - DEG_TO_CAN: float - ANGLE_RATE_BP: list[float] - ANGLE_RATE_UP: list[float] # windup limit - ANGLE_RATE_DOWN: list[float] # unwind limit - - @classmethod - def setUpClass(cls): - if cls.__name__ == "AngleSteeringSafetyTest": - cls.safety = None - raise unittest.SkipTest - - @abc.abstractmethod - def _speed_msg(self, speed): - pass - - @abc.abstractmethod - def _angle_cmd_msg(self, angle: float, enabled: bool): - pass - - @abc.abstractmethod - def _angle_meas_msg(self, angle: float): - pass - - def _set_prev_desired_angle(self, t): - t = round(t * self.DEG_TO_CAN) - self.safety.set_desired_angle_last(t) - - def _reset_angle_measurement(self, angle): - for _ in range(MAX_SAMPLE_VALS): - self._rx(self._angle_meas_msg(angle)) - - def _reset_speed_measurement(self, speed): - for _ in range(MAX_SAMPLE_VALS): - self._rx(self._speed_msg(speed)) - - def test_vehicle_speed_measurements(self): - # TODO: lower tolerance on these tests - self._common_measurement_test(self._speed_msg, 0, 80, 1, self.safety.get_vehicle_speed_min, self.safety.get_vehicle_speed_max) - - def test_steering_angle_measurements(self): - self._common_measurement_test(self._angle_meas_msg, -self.STEER_ANGLE_MAX, self.STEER_ANGLE_MAX, self.DEG_TO_CAN, - self.safety.get_angle_meas_min, self.safety.get_angle_meas_max) - - def test_angle_cmd_when_enabled(self): - # when controls are allowed, angle cmd rate limit is enforced - speeds = [0., 1., 5., 10., 15., 50.] - angles = np.concatenate((np.arange(-self.STEER_ANGLE_MAX * 2, self.STEER_ANGLE_MAX * 2, 5), [0])) - for a in angles: - for s in speeds: - max_delta_up = np.interp(s, self.ANGLE_RATE_BP, self.ANGLE_RATE_UP) - max_delta_down = np.interp(s, self.ANGLE_RATE_BP, self.ANGLE_RATE_DOWN) - - # first test against false positives - self._reset_angle_measurement(a) - self._reset_speed_measurement(s) - - self._set_prev_desired_angle(a) - self.safety.set_controls_allowed(1) - - # Stay within limits - # Up - self.assertTrue(self._tx(self._angle_cmd_msg(a + sign_of(a) * max_delta_up, True))) - self.assertTrue(self.safety.get_controls_allowed()) - - # Don't change - self.assertTrue(self._tx(self._angle_cmd_msg(a, True))) - self.assertTrue(self.safety.get_controls_allowed()) - - # Down - self.assertTrue(self._tx(self._angle_cmd_msg(a - sign_of(a) * max_delta_down, True))) - self.assertTrue(self.safety.get_controls_allowed()) - - # Inject too high rates - # Up - self.assertFalse(self._tx(self._angle_cmd_msg(a + sign_of(a) * (max_delta_up + 1.1), True))) - - # Don't change - self.safety.set_controls_allowed(1) - self._set_prev_desired_angle(a) - self.assertTrue(self.safety.get_controls_allowed()) - self.assertTrue(self._tx(self._angle_cmd_msg(a, True))) - self.assertTrue(self.safety.get_controls_allowed()) - - # Down - self.assertFalse(self._tx(self._angle_cmd_msg(a - sign_of(a) * (max_delta_down + 1.1), True))) - - # Check desired steer should be the same as steer angle when controls are off - self.safety.set_controls_allowed(0) - should_tx = abs(a) <= abs(self.STEER_ANGLE_MAX) - self.assertEqual(should_tx, self._tx(self._angle_cmd_msg(a, False))) - - def test_angle_cmd_when_disabled(self): - # Tests that only angles close to the meas are allowed while - # steer actuation bit is 0, regardless of controls allowed. - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - - for steer_control_enabled in (True, False): - for angle_meas in np.arange(-90, 91, 10): - self._reset_angle_measurement(angle_meas) - - for angle_cmd in np.arange(-90, 91, 10): - self._set_prev_desired_angle(angle_cmd) - - # controls_allowed is checked if actuation bit is 1, else the angle must be close to meas (inactive) - should_tx = controls_allowed if steer_control_enabled else angle_cmd == angle_meas - self.assertEqual(should_tx, self._tx(self._angle_cmd_msg(angle_cmd, steer_control_enabled))) - - -class PandaSafetyTest(PandaSafetyTestBase): - TX_MSGS: list[list[int]] | None = None - SCANNED_ADDRS = [*range(0x800), # Entire 11-bit CAN address space - *range(0x18DA00F1, 0x18DB00F1, 0x100), # 29-bit UDS physical addressing - *range(0x18DB00F1, 0x18DC00F1, 0x100), # 29-bit UDS functional addressing - *range(0x3300, 0x3400)] # Honda - FWD_BLACKLISTED_ADDRS: dict[int, list[int]] = {} # {bus: [addr]} - FWD_BUS_LOOKUP: dict[int, int] = {0: 2, 2: 0} - - @classmethod - def setUpClass(cls): - if cls.__name__ == "PandaSafetyTest" or cls.__name__.endswith('Base'): - cls.safety = None - raise unittest.SkipTest - - # ***** standard tests for all safety modes ***** - - def test_tx_msg_in_scanned_range(self): - # the relay malfunction, fwd hook, and spam can tests don't exhaustively - # scan the entire 29-bit address space, only some known important ranges - # make sure SCANNED_ADDRS stays up to date with car port TX_MSGS; new - # model ports should expand the range if needed - for msg in self.TX_MSGS: - self.assertTrue(msg[0] in self.SCANNED_ADDRS, f"{msg[0]=:#x}") - - def test_fwd_hook(self): - # some safety modes don't forward anything, while others blacklist msgs - for bus in range(3): - for addr in self.SCANNED_ADDRS: - # assume len 8 - fwd_bus = self.FWD_BUS_LOOKUP.get(bus, -1) - if bus in self.FWD_BLACKLISTED_ADDRS and addr in self.FWD_BLACKLISTED_ADDRS[bus]: - fwd_bus = -1 - self.assertEqual(fwd_bus, self.safety.safety_fwd_hook(bus, addr), f"{addr=:#x} from {bus=} to {fwd_bus=}") - - def test_spam_can_buses(self): - for bus in range(4): - for addr in self.SCANNED_ADDRS: - if [addr, bus] not in self.TX_MSGS: - self.assertFalse(self._tx(make_msg(bus, addr, 8)), f"allowed TX {addr=} {bus=}") - - def test_default_controls_not_allowed(self): - self.assertFalse(self.safety.get_controls_allowed()) - - def test_manually_enable_controls_allowed(self): - self.safety.set_controls_allowed(1) - self.assertTrue(self.safety.get_controls_allowed()) - self.safety.set_controls_allowed(0) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_tx_hook_on_wrong_safety_mode(self): - files = os.listdir(os.path.dirname(os.path.realpath(__file__))) - test_files = [f for f in files if f.startswith("test_") and f.endswith(".py")] - - current_test = self.__class__.__name__ - - all_tx = [] - for tf in test_files: - test = importlib.import_module("opendbc.safety.tests."+tf[:-3]) - for attr in dir(test): - if attr.startswith("Test") and attr != current_test: - tc = getattr(test, attr) - tx = tc.TX_MSGS - if tx is not None and not attr.endswith('Base'): - # No point in comparing different Tesla safety modes - if 'Tesla' in attr and 'Tesla' in current_test: - continue - # No point in comparing to ALLOUTPUT which allows all messages - if attr.startswith('TestAllOutput'): - continue - if attr.startswith('TestToyota') and current_test.startswith('TestToyota'): - continue - if attr.startswith('TestSubaruGen') and current_test.startswith('TestSubaruGen'): - continue - if attr.startswith('TestSubaruPreglobal') and current_test.startswith('TestSubaruPreglobal'): - continue - if {attr, current_test}.issubset({'TestVolkswagenPqSafety', 'TestVolkswagenPqStockSafety', 'TestVolkswagenPqLongSafety'}): - continue - if {attr, current_test}.issubset({'TestGmCameraSafety', 'TestGmCameraLongitudinalSafety'}): - continue - if attr.startswith('TestFord') and current_test.startswith('TestFord'): - continue - if attr.startswith('TestHyundaiCanfd') and current_test.startswith('TestHyundaiCanfd'): - continue - if {attr, current_test}.issubset({'TestVolkswagenMqbSafety', 'TestVolkswagenMqbStockSafety', 'TestVolkswagenMqbLongSafety'}): - continue - - # overlapping TX addrs, but they're not actuating messages for either car - if attr == 'TestHyundaiCanfdLKASteeringLongEV' and current_test.startswith('TestToyota'): - tx = list(filter(lambda m: m[0] not in [0x160, ], tx)) - - # Volkswagen MQB longitudinal actuating message overlaps with the Subaru lateral actuating message - if attr == 'TestVolkswagenMqbLongSafety' and current_test.startswith('TestSubaru'): - tx = list(filter(lambda m: m[0] not in [0x122, ], tx)) - - # Volkswagen MQB and Honda Nidec ACC HUD messages overlap - if attr == 'TestVolkswagenMqbLongSafety' and current_test.startswith('TestHondaNidec'): - tx = list(filter(lambda m: m[0] not in [0x30c, ], tx)) - - # Volkswagen MQB and Honda Bosch Radarless ACC HUD messages overlap - if attr == 'TestVolkswagenMqbLongSafety' and current_test.startswith('TestHondaBoschRadarless'): - tx = list(filter(lambda m: m[0] not in [0x30c, ], tx)) - - # TODO: Temporary, should be fixed in panda firmware, safety_honda.h - if attr.startswith('TestHonda'): - # exceptions for common msgs across different hondas - tx = list(filter(lambda m: m[0] not in [0x1FA, 0x30C, 0x33D, 0x33DB], tx)) - - if attr.startswith('TestHyundaiLongitudinal'): - # exceptions for common msgs across different Hyundai CAN platforms - tx = list(filter(lambda m: m[0] not in [0x420, 0x50A, 0x389, 0x4A2], tx)) - all_tx.append([[m[0], m[1], attr] for m in tx]) - - # make sure we got all the msgs - self.assertTrue(len(all_tx) >= len(test_files)-1) - - for tx_msgs in all_tx: - for addr, bus, test_name in tx_msgs: - msg = make_msg(bus, addr) - self.safety.set_controls_allowed(1) - # TODO: this should be blocked - if current_test in ["TestNissanSafety", "TestNissanSafetyAltEpsBus", "TestNissanLeafSafety"] and [addr, bus] in self.TX_MSGS: - continue - self.assertFalse(self._tx(msg), f"transmit of {addr=:#x} {bus=} from {test_name} during {current_test} was allowed") - - -@add_regen_tests -class PandaCarSafetyTest(PandaSafetyTest): - STANDSTILL_THRESHOLD: float = 0.0 - GAS_PRESSED_THRESHOLD = 0 - RELAY_MALFUNCTION_ADDRS: dict[int, tuple[int, ...]] | None = None - - @classmethod - def setUpClass(cls): - if cls.__name__ == "PandaCarSafetyTest" or cls.__name__.endswith('Base'): - cls.safety = None - raise unittest.SkipTest - - @abc.abstractmethod - def _user_brake_msg(self, brake): - pass - - def _user_regen_msg(self, regen): - pass - - @abc.abstractmethod - def _speed_msg(self, speed): - pass - - # Safety modes can override if vehicle_moving is driven by a different message - def _vehicle_moving_msg(self, speed: float): - return self._speed_msg(speed) - - @abc.abstractmethod - def _user_gas_msg(self, gas): - pass - - @abc.abstractmethod - def _pcm_status_msg(self, enable): - pass - - # ***** standard tests for all car-specific safety modes ***** - - def test_relay_malfunction(self): - # each car has an addr that is used to detect relay malfunction - # if that addr is seen on specified bus, triggers the relay malfunction - # protection logic: both tx_hook and fwd_hook are expected to return failure - self.assertFalse(self.safety.get_relay_malfunction()) - for bus in range(3): - for addr in self.SCANNED_ADDRS: - self.safety.set_relay_malfunction(False) - self._rx(make_msg(bus, addr, 8)) - should_relay_malfunction = addr in self.RELAY_MALFUNCTION_ADDRS.get(bus, ()) - self.assertEqual(should_relay_malfunction, self.safety.get_relay_malfunction(), (bus, addr)) - - # test relay malfunction protection logic - self.safety.set_relay_malfunction(True) - for bus in range(3): - for addr in self.SCANNED_ADDRS: - self.assertFalse(self._tx(make_msg(bus, addr, 8))) - self.assertEqual(-1, self.safety.safety_fwd_hook(bus, addr)) - - def test_prev_gas(self): - self.assertFalse(self.safety.get_gas_pressed_prev()) - for pressed in [self.GAS_PRESSED_THRESHOLD + 1, 0]: - self._rx(self._user_gas_msg(pressed)) - self.assertEqual(bool(pressed), self.safety.get_gas_pressed_prev()) - - def test_allow_engage_with_gas_pressed(self): - self._rx(self._user_gas_msg(1)) - self.safety.set_controls_allowed(True) - self._rx(self._user_gas_msg(1)) - self.assertTrue(self.safety.get_controls_allowed()) - self._rx(self._user_gas_msg(1)) - self.assertTrue(self.safety.get_controls_allowed()) - - def test_disengage_on_gas(self): - self._rx(self._user_gas_msg(0)) - self.safety.set_controls_allowed(True) - self._rx(self._user_gas_msg(self.GAS_PRESSED_THRESHOLD + 1)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_alternative_experience_no_disengage_on_gas(self): - self._rx(self._user_gas_msg(0)) - self.safety.set_controls_allowed(True) - self.safety.set_alternative_experience(ALTERNATIVE_EXPERIENCE.DISABLE_DISENGAGE_ON_GAS) - self._rx(self._user_gas_msg(self.GAS_PRESSED_THRESHOLD + 1)) - # Test we allow lateral, but not longitudinal - self.assertTrue(self.safety.get_controls_allowed()) - self.assertFalse(self.safety.get_longitudinal_allowed()) - # Make sure we can re-gain longitudinal actuation - self._rx(self._user_gas_msg(0)) - self.assertTrue(self.safety.get_longitudinal_allowed()) - - def test_prev_user_brake(self, _user_brake_msg=None, get_brake_pressed_prev=None): - if _user_brake_msg is None: - _user_brake_msg = self._user_brake_msg - get_brake_pressed_prev = self.safety.get_brake_pressed_prev - - self.assertFalse(get_brake_pressed_prev()) - for pressed in [True, False]: - self._rx(_user_brake_msg(not pressed)) - self.assertEqual(not pressed, get_brake_pressed_prev()) - self._rx(_user_brake_msg(pressed)) - self.assertEqual(pressed, get_brake_pressed_prev()) - - def test_enable_control_allowed_from_cruise(self): - self._rx(self._pcm_status_msg(False)) - self.assertFalse(self.safety.get_controls_allowed()) - self._rx(self._pcm_status_msg(True)) - self.assertTrue(self.safety.get_controls_allowed()) - - def test_disable_control_allowed_from_cruise(self): - self.safety.set_controls_allowed(1) - self._rx(self._pcm_status_msg(False)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_cruise_engaged_prev(self): - for engaged in [True, False]: - self._rx(self._pcm_status_msg(engaged)) - self.assertEqual(engaged, self.safety.get_cruise_engaged_prev()) - self._rx(self._pcm_status_msg(not engaged)) - self.assertEqual(not engaged, self.safety.get_cruise_engaged_prev()) - - def test_allow_user_brake_at_zero_speed(self, _user_brake_msg=None, get_brake_pressed_prev=None): - if _user_brake_msg is None: - _user_brake_msg = self._user_brake_msg - - # Brake was already pressed - self._rx(self._vehicle_moving_msg(0)) - self._rx(_user_brake_msg(1)) - self.safety.set_controls_allowed(1) - self._rx(_user_brake_msg(1)) - self.assertTrue(self.safety.get_controls_allowed()) - self.assertTrue(self.safety.get_longitudinal_allowed()) - self._rx(_user_brake_msg(0)) - self.assertTrue(self.safety.get_controls_allowed()) - self.assertTrue(self.safety.get_longitudinal_allowed()) - # rising edge of brake should disengage - self._rx(_user_brake_msg(1)) - self.assertFalse(self.safety.get_controls_allowed()) - self.assertFalse(self.safety.get_longitudinal_allowed()) - self._rx(_user_brake_msg(0)) # reset no brakes - - def test_not_allow_user_brake_when_moving(self, _user_brake_msg=None, get_brake_pressed_prev=None): - if _user_brake_msg is None: - _user_brake_msg = self._user_brake_msg - - # Brake was already pressed - self._rx(_user_brake_msg(1)) - self.safety.set_controls_allowed(1) - self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD)) - self._rx(_user_brake_msg(1)) - self.assertTrue(self.safety.get_controls_allowed()) - self.assertTrue(self.safety.get_longitudinal_allowed()) - self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD + 1)) - self._rx(_user_brake_msg(1)) - self.assertFalse(self.safety.get_controls_allowed()) - self.assertFalse(self.safety.get_longitudinal_allowed()) - self._rx(self._vehicle_moving_msg(0)) - - def test_vehicle_moving(self): - self.assertFalse(self.safety.get_vehicle_moving()) - - # not moving - self._rx(self._vehicle_moving_msg(0)) - self.assertFalse(self.safety.get_vehicle_moving()) - - # speed is at threshold - self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD)) - self.assertFalse(self.safety.get_vehicle_moving()) - - # past threshold - self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD + 1)) - self.assertTrue(self.safety.get_vehicle_moving()) - - def test_safety_tick(self): - self.safety.set_timer(int(2e6)) - self.safety.set_controls_allowed(True) - self.safety.safety_tick_current_safety_config() - self.assertFalse(self.safety.get_controls_allowed()) - self.assertFalse(self.safety.safety_config_valid()) diff --git a/opendbc_repo/opendbc/safety/tests/hyundai_common.py b/opendbc_repo/opendbc/safety/tests/hyundai_common.py deleted file mode 100644 index 354c781e91..0000000000 --- a/opendbc_repo/opendbc/safety/tests/hyundai_common.py +++ /dev/null @@ -1,155 +0,0 @@ -import unittest - -import opendbc.safety.tests.common as common -from opendbc.safety.tests.libsafety import libsafety_py -from opendbc.safety.tests.common import make_msg - - -class Buttons: - NONE = 0 - RESUME = 1 - SET = 2 - CANCEL = 4 - - -PREV_BUTTON_SAMPLES = 8 -ENABLE_BUTTONS = (Buttons.RESUME, Buttons.SET, Buttons.CANCEL) - - -class HyundaiButtonBase: - # pylint: disable=no-member,abstract-method - BUTTONS_TX_BUS = 0 # tx on this bus, rx on 0 - SCC_BUS = 0 # rx on this bus - - def test_button_sends(self): - """ - Only RES and CANCEL buttons are allowed - - RES allowed while controls allowed - - CANCEL allowed while cruise is enabled - """ - self.safety.set_controls_allowed(0) - self.assertFalse(self._tx(self._button_msg(Buttons.RESUME, bus=self.BUTTONS_TX_BUS))) - self.assertFalse(self._tx(self._button_msg(Buttons.SET, bus=self.BUTTONS_TX_BUS))) - - self.safety.set_controls_allowed(1) - self.assertTrue(self._tx(self._button_msg(Buttons.RESUME, bus=self.BUTTONS_TX_BUS))) - self.assertFalse(self._tx(self._button_msg(Buttons.SET, bus=self.BUTTONS_TX_BUS))) - - for enabled in (True, False): - self._rx(self._pcm_status_msg(enabled)) - self.assertEqual(enabled, self._tx(self._button_msg(Buttons.CANCEL, bus=self.BUTTONS_TX_BUS))) - - def test_enable_control_allowed_from_cruise(self): - """ - Hyundai non-longitudinal only enables on PCM rising edge and recent button press. Tests PCM enabling with: - - disallowed: No buttons - - disallowed: Buttons that don't enable cruise - - allowed: Buttons that do enable cruise - - allowed: Main button with all above combinations - """ - for main_button in (0, 1): - for btn in range(8): - for _ in range(PREV_BUTTON_SAMPLES): # reset - self._rx(self._button_msg(Buttons.NONE)) - - self._rx(self._pcm_status_msg(False)) - self.assertFalse(self.safety.get_controls_allowed()) - self._rx(self._button_msg(btn, main_button=main_button)) - self._rx(self._pcm_status_msg(True)) - controls_allowed = btn in ENABLE_BUTTONS or main_button - self.assertEqual(controls_allowed, self.safety.get_controls_allowed()) - - def test_sampling_cruise_buttons(self): - """ - Test that we allow controls on recent button press, but not as button leaves sliding window - """ - self._rx(self._button_msg(Buttons.SET)) - for i in range(2 * PREV_BUTTON_SAMPLES): - self._rx(self._pcm_status_msg(False)) - self.assertFalse(self.safety.get_controls_allowed()) - self._rx(self._pcm_status_msg(True)) - controls_allowed = i < PREV_BUTTON_SAMPLES - self.assertEqual(controls_allowed, self.safety.get_controls_allowed()) - self._rx(self._button_msg(Buttons.NONE)) - - -class HyundaiLongitudinalBase(common.LongitudinalAccelSafetyTest): - # pylint: disable=no-member,abstract-method - - DISABLED_ECU_UDS_MSG: tuple[int, int] - DISABLED_ECU_ACTUATION_MSG: tuple[int, int] - - @classmethod - def setUpClass(cls): - if cls.__name__ == "HyundaiLongitudinalBase": - cls.safety = None - raise unittest.SkipTest - - # override these tests from PandaCarSafetyTest, hyundai longitudinal uses button enable - def test_disable_control_allowed_from_cruise(self): - pass - - def test_enable_control_allowed_from_cruise(self): - pass - - def test_sampling_cruise_buttons(self): - pass - - def test_cruise_engaged_prev(self): - pass - - def test_button_sends(self): - pass - - def _pcm_status_msg(self, enable): - raise Exception - - def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): - raise NotImplementedError - - def test_set_resume_buttons(self): - """ - SET and RESUME enter controls allowed on their falling edge. - """ - for btn_prev in range(8): - for btn_cur in range(8): - self._rx(self._button_msg(Buttons.NONE)) - self.safety.set_controls_allowed(0) - for _ in range(10): - self._rx(self._button_msg(btn_prev)) - self.assertFalse(self.safety.get_controls_allowed()) - - # should enter controls allowed on falling edge and not transitioning to cancel - should_enable = btn_cur != btn_prev and \ - btn_cur != Buttons.CANCEL and \ - btn_prev in (Buttons.RESUME, Buttons.SET) - - self._rx(self._button_msg(btn_cur)) - self.assertEqual(should_enable, self.safety.get_controls_allowed()) - - def test_cancel_button(self): - self.safety.set_controls_allowed(1) - self._rx(self._button_msg(Buttons.CANCEL)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_tester_present_allowed(self, ecu_disable: bool = True): - """ - Ensure tester present diagnostic message is allowed to keep ECU knocked out - for longitudinal control. - """ - - addr, bus = self.DISABLED_ECU_UDS_MSG - for should_tx, msg in ((True, b"\x02\x3E\x80\x00\x00\x00\x00\x00"), - (False, b"\x03\xAA\xAA\x00\x00\x00\x00\x00")): - tester_present = libsafety_py.make_CANPacket(addr, bus, msg) - self.assertEqual(should_tx and ecu_disable, self._tx(tester_present)) - - def test_disabled_ecu_alive(self): - """ - If the ECU knockout failed, make sure the relay malfunction is shown - """ - - addr, bus = self.DISABLED_ECU_ACTUATION_MSG - self.assertFalse(self.safety.get_relay_malfunction()) - self._rx(make_msg(bus, addr, 8)) - self.assertTrue(self.safety.get_relay_malfunction()) diff --git a/opendbc_repo/opendbc/safety/tests/install_mull.sh b/opendbc_repo/opendbc/safety/tests/install_mull.sh deleted file mode 100755 index 75b1042ec3..0000000000 --- a/opendbc_repo/opendbc/safety/tests/install_mull.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" -cd $DIR - -if ! command -v "mull-runner-17" > /dev/null 2>&1; then - sudo apt-get update && sudo apt-get install -y curl clang-17 - curl -1sLf 'https://dl.cloudsmith.io/public/mull-project/mull-stable/setup.deb.sh' | sudo -E bash - sudo apt-get update && sudo apt-get install -y mull-17 -fi diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/SConscript b/opendbc_repo/opendbc/safety/tests/libsafety/SConscript deleted file mode 100644 index 0582e5c256..0000000000 --- a/opendbc_repo/opendbc/safety/tests/libsafety/SConscript +++ /dev/null @@ -1,56 +0,0 @@ -import platform - -CC = 'gcc' -system = platform.system() -if system == 'Darwin': - # gcc installed by homebrew has version suffix (e.g. gcc-12) in order to be - # distinguishable from system one - which acts as a symlink to clang - CC += '-13' - -env = Environment( - CC=CC, - CFLAGS=[ - '-Wall', - '-Werror', - '-nostdlib', - '-fno-builtin', - '-std=gnu11', - '-Wfatal-errors', - '-Wno-pointer-to-int-cast', - ], - CPPPATH=[".", "../../board/", "../../"], -) -if system == "Darwin": - env.PrependENVPath('PATH', '/opt/homebrew/bin') - -if GetOption('mutation'): - env['CC'] = 'clang-17' - flags = [ - '-fprofile-instr-generate', - '-fcoverage-mapping', - '-fpass-plugin=/usr/lib/mull-ir-frontend-17', - '-g', - '-grecord-command-line', - ] - env['CFLAGS'] += flags - env['LINKFLAGS'] += flags - -if GetOption('ubsan'): - flags = [ - "-fsanitize=undefined", - "-fno-sanitize-recover=undefined", - ] - env['CFLAGS'] += flags - env['LINKFLAGS'] += flags - -safety = env.SharedObject("safety.os", "safety.c") -libsafety = env.SharedLibrary("libsafety.so", [safety]) - -if GetOption('coverage'): - env.Append( - CFLAGS=["-fprofile-arcs", "-ftest-coverage", "-fprofile-abs-path",], - LIBS=["gcov"], - ) - # GCC note file is generated by compiler, ensure we build it, and allow scons to clean it up - AlwaysBuild(safety) - env.SideEffect("safety.gcno", safety) diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/__init__.py b/opendbc_repo/opendbc/safety/tests/libsafety/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py b/opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py deleted file mode 100644 index e851c6bca8..0000000000 --- a/opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py +++ /dev/null @@ -1,75 +0,0 @@ -import os -from cffi import FFI -from typing import Protocol - -from opendbc.safety import LEN_TO_DLC -from opendbc.safety.tests.libsafety.safety_helpers import PandaSafety, setup_safety_helpers - -libsafety_dir = os.path.dirname(os.path.abspath(__file__)) -libsafety_fn = os.path.join(libsafety_dir, "libsafety.so") - -ffi = FFI() - -ffi.cdef(""" -typedef struct { - unsigned char fd : 1; - unsigned char bus : 3; - unsigned char data_len_code : 4; - unsigned char rejected : 1; - unsigned char returned : 1; - unsigned char extended : 1; - unsigned int addr : 29; - unsigned char checksum; - unsigned char data[64]; -} CANPacket_t; -""", packed=True) - -ffi.cdef(""" -bool safety_rx_hook(CANPacket_t *to_send); -bool safety_tx_hook(CANPacket_t *to_push); -int safety_fwd_hook(int bus_num, int addr); -int set_safety_hooks(uint16_t mode, uint16_t param); -""") - -ffi.cdef(""" -void can_set_checksum(CANPacket_t *packet); -""") - -setup_safety_helpers(ffi) - -class CANPacket: - reserved: int - bus: int - data_len_code: int - rejected: int - returned: int - extended: int - addr: int - data: list[int] - -class Panda(PandaSafety, Protocol): - # CAN - def can_set_checksum(self, p: CANPacket) -> None: ... - - # safety - def safety_rx_hook(self, to_send: CANPacket) -> int: ... - def safety_tx_hook(self, to_push: CANPacket) -> int: ... - def safety_fwd_hook(self, bus_num: int, addr: int) -> int: ... - def set_safety_hooks(self, mode: int, param: int) -> int: ... - - -libsafety: Panda = ffi.dlopen(libsafety_fn) - - -# helpers - -def make_CANPacket(addr: int, bus: int, dat): - ret = ffi.new('CANPacket_t *') - ret[0].extended = 1 if addr >= 0x800 else 0 - ret[0].addr = addr - ret[0].data_len_code = LEN_TO_DLC[len(dat)] - ret[0].bus = bus - ret[0].data = bytes(dat) - libsafety.can_set_checksum(ret) - - return ret diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/safety.c b/opendbc_repo/opendbc/safety/tests/libsafety/safety.c deleted file mode 100644 index bdb63596b1..0000000000 --- a/opendbc_repo/opendbc/safety/tests/libsafety/safety.c +++ /dev/null @@ -1,13 +0,0 @@ -#include - -#include "fake_stm.h" -#include "can.h" - -//int safety_tx_hook(CANPacket_t *to_send) { return 1; } - -#include "faults.h" -#include "safety.h" -#include "drivers/can_common.h" - -// libsafety stuff -#include "safety_helpers.h" diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h b/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h deleted file mode 100644 index 84e7eb736b..0000000000 --- a/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h +++ /dev/null @@ -1,183 +0,0 @@ -void safety_tick_current_safety_config() { - safety_tick(¤t_safety_config); -} - -bool safety_config_valid() { - if (current_safety_config.rx_checks_len <= 0) { - printf("missing RX checks\n"); - return false; - } - - for (int i = 0; i < current_safety_config.rx_checks_len; i++) { - const RxCheck addr = current_safety_config.rx_checks[i]; - bool valid = addr.status.msg_seen && !addr.status.lagging && addr.status.valid_checksum && (addr.status.wrong_counters < MAX_WRONG_COUNTERS) && addr.status.valid_quality_flag; - if (!valid) { - // printf("i %d seen %d lagging %d valid checksum %d wrong counters %d valid quality flag %d\n", i, addr.status.msg_seen, addr.status.lagging, addr.status.valid_checksum, addr.status.wrong_counters, addr.status.valid_quality_flag); - return false; - } - } - return true; -} - -void set_controls_allowed(bool c){ - controls_allowed = c; -} - -void set_alternative_experience(int mode){ - alternative_experience = mode; -} - -void set_relay_malfunction(bool c){ - relay_malfunction = c; -} - -bool get_controls_allowed(void){ - return controls_allowed; -} - -int get_alternative_experience(void){ - return alternative_experience; -} - -bool get_relay_malfunction(void){ - return relay_malfunction; -} - -bool get_gas_pressed_prev(void){ - return gas_pressed_prev; -} - -void set_gas_pressed_prev(bool c){ - gas_pressed_prev = c; -} - -bool get_brake_pressed_prev(void){ - return brake_pressed_prev; -} - -bool get_regen_braking_prev(void){ - return regen_braking_prev; -} - -bool get_cruise_engaged_prev(void){ - return cruise_engaged_prev; -} - -void set_cruise_engaged_prev(bool engaged){ - cruise_engaged_prev = engaged; -} - -bool get_vehicle_moving(void){ - return vehicle_moving; -} - -bool get_acc_main_on(void){ - return acc_main_on; -} - -float get_vehicle_speed_min(void){ - return vehicle_speed.min / VEHICLE_SPEED_FACTOR; -} - -float get_vehicle_speed_max(void){ - return vehicle_speed.max / VEHICLE_SPEED_FACTOR; -} - -int get_current_safety_mode(void){ - return current_safety_mode; -} - -int get_current_safety_param(void){ - return current_safety_param; -} - -void set_timer(uint32_t t){ - timer.CNT = t; -} - -void set_torque_meas(int min, int max){ - torque_meas.min = min; - torque_meas.max = max; -} - -int get_torque_meas_min(void){ - return torque_meas.min; -} - -int get_torque_meas_max(void){ - return torque_meas.max; -} - -void set_torque_driver(int min, int max){ - torque_driver.min = min; - torque_driver.max = max; -} - -int get_torque_driver_min(void){ - return torque_driver.min; -} - -int get_torque_driver_max(void){ - return torque_driver.max; -} - -void set_rt_torque_last(int t){ - rt_torque_last = t; -} - -void set_desired_torque_last(int t){ - desired_torque_last = t; -} - -void set_desired_angle_last(int t){ - desired_angle_last = t; -} - -int get_desired_angle_last(void){ - return desired_angle_last; -} - -void set_angle_meas(int min, int max){ - angle_meas.min = min; - angle_meas.max = max; -} - -int get_angle_meas_min(void){ - return angle_meas.min; -} - -int get_angle_meas_max(void){ - return angle_meas.max; -} - - -// ***** car specific helpers ***** - -void set_honda_alt_brake_msg(bool c){ - honda_alt_brake_msg = c; -} - -void set_honda_bosch_long(bool c){ - honda_bosch_long = c; -} - -int get_honda_hw(void) { - return honda_hw; -} - -void set_honda_fwd_brake(bool c){ - honda_fwd_brake = c; -} - -bool get_honda_fwd_brake(void){ - return honda_fwd_brake; -} - -void init_tests(void){ - safety_mode_cnt = 2U; // avoid ignoring relay_malfunction logic - alternative_experience = 0; - set_timer(0); - ts_steer_req_mismatch_last = 0; - valid_steer_req_count = 0; - invalid_steer_req_count = 0; -} diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py b/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py deleted file mode 100644 index cd116fb59a..0000000000 --- a/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py +++ /dev/null @@ -1,102 +0,0 @@ -# panda safety helpers, from safety_helpers.c -from typing import Protocol - -def setup_safety_helpers(ffi): - ffi.cdef(""" - void set_controls_allowed(bool c); - bool get_controls_allowed(void); - bool get_longitudinal_allowed(void); - void set_alternative_experience(int mode); - int get_alternative_experience(void); - void set_relay_malfunction(bool c); - bool get_relay_malfunction(void); - bool get_gas_pressed_prev(void); - void set_gas_pressed_prev(bool); - bool get_brake_pressed_prev(void); - bool get_regen_braking_prev(void); - bool get_acc_main_on(void); - float get_vehicle_speed_min(void); - float get_vehicle_speed_max(void); - int get_current_safety_mode(void); - int get_current_safety_param(void); - - void set_torque_meas(int min, int max); - int get_torque_meas_min(void); - int get_torque_meas_max(void); - void set_torque_driver(int min, int max); - int get_torque_driver_min(void); - int get_torque_driver_max(void); - void set_desired_torque_last(int t); - void set_rt_torque_last(int t); - void set_desired_angle_last(int t); - int get_desired_angle_last(); - void set_angle_meas(int min, int max); - int get_angle_meas_min(void); - int get_angle_meas_max(void); - - bool get_cruise_engaged_prev(void); - void set_cruise_engaged_prev(bool engaged); - bool get_vehicle_moving(void); - void set_timer(uint32_t t); - - void safety_tick_current_safety_config(); - bool safety_config_valid(); - - void init_tests(void); - - void set_honda_fwd_brake(bool c); - bool get_honda_fwd_brake(void); - void set_honda_alt_brake_msg(bool c); - void set_honda_bosch_long(bool c); - int get_honda_hw(void); - """) - -class PandaSafety(Protocol): - def set_controls_allowed(self, c: bool) -> None: ... - def get_controls_allowed(self) -> bool: ... - def get_longitudinal_allowed(self) -> bool: ... - def set_alternative_experience(self, mode: int) -> None: ... - def get_alternative_experience(self) -> int: ... - def set_relay_malfunction(self, c: bool) -> None: ... - def get_relay_malfunction(self) -> bool: ... - def get_gas_pressed_prev(self) -> bool: ... - def set_gas_pressed_prev(self, c: bool) -> None: ... - def get_brake_pressed_prev(self) -> bool: ... - def get_regen_braking_prev(self) -> bool: ... - def get_acc_main_on(self) -> bool: ... - def get_vehicle_speed_min(self) -> int: ... - def get_vehicle_speed_max(self) -> int: ... - def get_current_safety_mode(self) -> int: ... - def get_current_safety_param(self) -> int: ... - - def set_torque_meas(self, min: int, max: int) -> None: ... # noqa: A002 - def get_torque_meas_min(self) -> int: ... - def get_torque_meas_max(self) -> int: ... - def set_torque_driver(self, min: int, max: int) -> None: ... # noqa: A002 - def get_torque_driver_min(self) -> int: ... - def get_torque_driver_max(self) -> int: ... - def set_desired_torque_last(self, t: int) -> None: ... - def set_rt_torque_last(self, t: int) -> None: ... - def set_desired_angle_last(self, t: int) -> None: ... - def get_desired_angle_last(self) -> int: ... - def set_angle_meas(self, min: int, max: int) -> None: ... # noqa: A002 - def get_angle_meas_min(self) -> int: ... - def get_angle_meas_max(self) -> int: ... - - def get_cruise_engaged_prev(self) -> bool: ... - def set_cruise_engaged_prev(self, enabled: bool) -> None: ... - def get_vehicle_moving(self) -> bool: ... - def set_timer(self, t: int) -> None: ... - - def safety_tick_current_safety_config(self) -> None: ... - def safety_config_valid(self) -> bool: ... - - def init_tests(self) -> None: ... - - def set_honda_fwd_brake(self, c: bool) -> None: ... - def get_honda_fwd_brake(self) -> bool: ... - def set_honda_alt_brake_msg(self, c: bool) -> None: ... - def set_honda_bosch_long(self, c: bool) -> None: ... - def get_honda_hw(self) -> int: ... - - diff --git a/opendbc_repo/opendbc/safety/tests/misra/.gitignore b/opendbc_repo/opendbc/safety/tests/misra/.gitignore deleted file mode 100644 index fc9ac228cb..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -*.pdf -*.txt -.output.log -new_table -cppcheck/ diff --git a/opendbc_repo/opendbc/safety/tests/misra/checkers.txt b/opendbc_repo/opendbc/safety/tests/misra/checkers.txt deleted file mode 100644 index 4e6f517e8c..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/checkers.txt +++ /dev/null @@ -1,911 +0,0 @@ -Cppcheck checkers list from test_misra.sh: - - - - - -TEST variant options: ---enable=all --disable=unusedFunction -DPANDA --addon=misra -DSTM32F4 -DSTM32F413xx /opendbc/safety/main.c - - -Critical errors ---------------- -No critical errors encountered. -Note: There might still have been non-critical bailouts which might lead to false negatives. - - -Open source checkers --------------------- -Yes Check64BitPortability::pointerassignment -Yes CheckAssert::assertWithSideEffects -Yes CheckAutoVariables::assignFunctionArg -Yes CheckAutoVariables::autoVariables -Yes CheckAutoVariables::checkVarLifetime -No CheckBool::checkAssignBoolToFloat require:style,c++ -Yes CheckBool::checkAssignBoolToPointer -No CheckBool::checkBitwiseOnBoolean require:style,inconclusive -Yes CheckBool::checkComparisonOfBoolExpressionWithInt -No CheckBool::checkComparisonOfBoolWithBool require:style,c++ -No CheckBool::checkComparisonOfBoolWithInt require:warning,c++ -No CheckBool::checkComparisonOfFuncReturningBool require:style,c++ -Yes CheckBool::checkIncrementBoolean -Yes CheckBool::pointerArithBool -Yes CheckBool::returnValueOfFunctionReturningBool -No CheckBoost::checkBoostForeachModification -Yes CheckBufferOverrun::analyseWholeProgram -Yes CheckBufferOverrun::argumentSize -Yes CheckBufferOverrun::arrayIndex -Yes CheckBufferOverrun::arrayIndexThenCheck -Yes CheckBufferOverrun::bufferOverflow -Yes CheckBufferOverrun::negativeArraySize -Yes CheckBufferOverrun::objectIndex -Yes CheckBufferOverrun::pointerArithmetic -No CheckBufferOverrun::stringNotZeroTerminated require:warning,inconclusive -Yes CheckClass::analyseWholeProgram -No CheckClass::checkConst require:style,inconclusive -No CheckClass::checkConstructors require:style,warning -No CheckClass::checkCopyConstructors require:warning -No CheckClass::checkDuplInheritedMembers require:warning -No CheckClass::checkExplicitConstructors require:style -No CheckClass::checkMemset -No CheckClass::checkMissingOverride require:style,c++03 -No CheckClass::checkReturnByReference require:performance -No CheckClass::checkSelfInitialization -No CheckClass::checkThisUseAfterFree require:warning -No CheckClass::checkUnsafeClassRefMember require:warning,safeChecks -No CheckClass::checkUselessOverride require:style -No CheckClass::checkVirtualFunctionCallInConstructor require:warning -No CheckClass::initializationListUsage require:performance -No CheckClass::initializerListOrder require:style,inconclusive -No CheckClass::operatorEqRetRefThis require:style -No CheckClass::operatorEqToSelf require:warning -No CheckClass::privateFunctions require:style -No CheckClass::thisSubtraction require:warning -No CheckClass::virtualDestructor -Yes CheckCondition::alwaysTrueFalse -Yes CheckCondition::assignIf -Yes CheckCondition::checkAssignmentInCondition -Yes CheckCondition::checkBadBitmaskCheck -Yes CheckCondition::checkCompareValueOutOfTypeRange -Yes CheckCondition::checkDuplicateConditionalAssign -Yes CheckCondition::checkIncorrectLogicOperator -Yes CheckCondition::checkInvalidTestForOverflow -Yes CheckCondition::checkModuloAlwaysTrueFalse -Yes CheckCondition::checkPointerAdditionResultNotNull -Yes CheckCondition::clarifyCondition -Yes CheckCondition::comparison -Yes CheckCondition::duplicateCondition -Yes CheckCondition::multiCondition -Yes CheckCondition::multiCondition2 -No CheckExceptionSafety::checkCatchExceptionByValue require:style -No CheckExceptionSafety::checkRethrowCopy require:style -No CheckExceptionSafety::deallocThrow require:warning -No CheckExceptionSafety::destructors require:warning -No CheckExceptionSafety::nothrowThrows -No CheckExceptionSafety::rethrowNoCurrentException -No CheckExceptionSafety::unhandledExceptionSpecification require:style,inconclusive -Yes CheckFunctions::checkIgnoredReturnValue -Yes CheckFunctions::checkMathFunctions -Yes CheckFunctions::checkMissingReturn -Yes CheckFunctions::checkProhibitedFunctions -Yes CheckFunctions::invalidFunctionUsage -Yes CheckFunctions::memsetInvalid2ndParam -Yes CheckFunctions::memsetZeroBytes -No CheckFunctions::returnLocalStdMove require:performance,c++11 -Yes CheckFunctions::useStandardLibrary -No CheckIO::checkCoutCerrMisusage require:c -Yes CheckIO::checkFileUsage -Yes CheckIO::checkWrongPrintfScanfArguments -Yes CheckIO::invalidScanf -Yes CheckLeakAutoVar::check -No CheckMemoryLeakInClass::check -Yes CheckMemoryLeakInFunction::checkReallocUsage -Yes CheckMemoryLeakNoVar::check -No CheckMemoryLeakNoVar::checkForUnsafeArgAlloc -Yes CheckMemoryLeakStructMember::check -Yes CheckNullPointer::analyseWholeProgram -Yes CheckNullPointer::arithmetic -Yes CheckNullPointer::nullConstantDereference -Yes CheckNullPointer::nullPointer -No CheckOther::checkAccessOfMovedVariable require:c++11,warning -Yes CheckOther::checkCastIntToCharAndBack -Yes CheckOther::checkCharVariable -Yes CheckOther::checkComparePointers -Yes CheckOther::checkComparisonFunctionIsAlwaysTrueOrFalse -Yes CheckOther::checkConstPointer -No CheckOther::checkConstVariable require:style,c++ -No CheckOther::checkDuplicateBranch require:style,inconclusive -Yes CheckOther::checkDuplicateExpression -Yes CheckOther::checkEvaluationOrder -Yes CheckOther::checkFuncArgNamesDifferent -No CheckOther::checkIncompleteArrayFill require:warning,portability,inconclusive -Yes CheckOther::checkIncompleteStatement -No CheckOther::checkInterlockedDecrement require:windows-platform -Yes CheckOther::checkInvalidFree -Yes CheckOther::checkKnownArgument -Yes CheckOther::checkKnownPointerToBool -No CheckOther::checkMisusedScopedObject require:style,c++ -Yes CheckOther::checkModuloOfOne -Yes CheckOther::checkNanInArithmeticExpression -Yes CheckOther::checkNegativeBitwiseShift -Yes CheckOther::checkOverlappingWrite -No CheckOther::checkPassByReference require:performance,c++ -Yes CheckOther::checkRedundantAssignment -No CheckOther::checkRedundantCopy require:c++,performance,inconclusive -Yes CheckOther::checkRedundantPointerOp -Yes CheckOther::checkShadowVariables -Yes CheckOther::checkSignOfUnsignedVariable -No CheckOther::checkSuspiciousCaseInSwitch require:warning,inconclusive -No CheckOther::checkSuspiciousSemicolon require:warning,inconclusive -Yes CheckOther::checkUnreachableCode -Yes CheckOther::checkUnusedLabel -Yes CheckOther::checkVarFuncNullUB -Yes CheckOther::checkVariableScope -Yes CheckOther::checkZeroDivision -Yes CheckOther::clarifyCalculation -Yes CheckOther::clarifyStatement -Yes CheckOther::invalidPointerCast -Yes CheckOther::redundantBitwiseOperationInSwitch -Yes CheckOther::suspiciousFloatingPointCast -No CheckOther::warningOldStylePointerCast require:style,c++ -No CheckPostfixOperator::postfixOperator require:performance -Yes CheckSizeof::checkSizeofForArrayParameter -Yes CheckSizeof::checkSizeofForNumericParameter -Yes CheckSizeof::checkSizeofForPointerSize -Yes CheckSizeof::sizeofCalculation -Yes CheckSizeof::sizeofFunction -Yes CheckSizeof::sizeofVoid -Yes CheckSizeof::sizeofsizeof -No CheckSizeof::suspiciousSizeofCalculation require:warning,inconclusive -No CheckStl::checkDereferenceInvalidIterator require:warning -No CheckStl::checkDereferenceInvalidIterator2 -No CheckStl::checkFindInsert require:performance -No CheckStl::checkMutexes require:warning -No CheckStl::erase -No CheckStl::eraseIteratorOutOfBounds -No CheckStl::if_find require:warning,performance -No CheckStl::invalidContainer -No CheckStl::iterators -No CheckStl::knownEmptyContainer require:style -No CheckStl::misMatchingContainerIterator -No CheckStl::misMatchingContainers -No CheckStl::missingComparison require:warning -No CheckStl::negativeIndex -No CheckStl::outOfBounds -No CheckStl::outOfBoundsIndexExpression -No CheckStl::redundantCondition require:style -No CheckStl::size require:performance,c++03 -No CheckStl::stlBoundaries -No CheckStl::stlOutOfBounds -No CheckStl::string_c_str -No CheckStl::useStlAlgorithm require:style -No CheckStl::uselessCalls require:performance,warning -Yes CheckString::checkAlwaysTrueOrFalseStringCompare -Yes CheckString::checkIncorrectStringCompare -Yes CheckString::checkSuspiciousStringCompare -Yes CheckString::overlappingStrcmp -Yes CheckString::sprintfOverlappingData -Yes CheckString::strPlusChar -Yes CheckString::stringLiteralWrite -Yes CheckType::checkFloatToIntegerOverflow -Yes CheckType::checkIntegerOverflow -Yes CheckType::checkLongCast -Yes CheckType::checkSignConversion -Yes CheckType::checkTooBigBitwiseShift -Yes CheckUninitVar::check -Yes CheckUninitVar::valueFlowUninit -No CheckUnusedFunctions::check require:unusedFunction -Yes CheckUnusedVar::checkFunctionVariableUsage -Yes CheckUnusedVar::checkStructMemberUsage -Yes CheckVaarg::va_list_usage -Yes CheckVaarg::va_start_argument - - -Premium checkers ----------------- -Not available, Cppcheck Premium is not used - - -Autosar -------- -Not available, Cppcheck Premium is not used - - -Cert C ------- -Not available, Cppcheck Premium is not used - - -Cert C++ --------- -Not available, Cppcheck Premium is not used - - -Misra C 2012 ------------- -No Misra C 2012: Dir 1.1 -No Misra C 2012: Dir 2.1 -No Misra C 2012: Dir 3.1 -No Misra C 2012: Dir 4.1 -No Misra C 2012: Dir 4.2 -No Misra C 2012: Dir 4.3 -No Misra C 2012: Dir 4.4 -No Misra C 2012: Dir 4.5 -No Misra C 2012: Dir 4.6 amendment:3 -No Misra C 2012: Dir 4.7 -No Misra C 2012: Dir 4.8 -No Misra C 2012: Dir 4.9 amendment:3 -No Misra C 2012: Dir 4.10 -No Misra C 2012: Dir 4.11 amendment:3 -No Misra C 2012: Dir 4.12 -No Misra C 2012: Dir 4.13 -No Misra C 2012: Dir 4.14 amendment:2 -No Misra C 2012: Dir 4.15 amendment:3 -No Misra C 2012: Dir 5.1 amendment:4 -No Misra C 2012: Dir 5.2 amendment:4 -No Misra C 2012: Dir 5.3 amendment:4 -Yes Misra C 2012: 1.1 -Yes Misra C 2012: 1.2 -Yes Misra C 2012: 1.3 -Yes Misra C 2012: 1.4 amendment:2 -No Misra C 2012: 1.5 amendment:3 require:premium -Yes Misra C 2012: 2.1 -Yes Misra C 2012: 2.2 -Yes Misra C 2012: 2.3 -Yes Misra C 2012: 2.4 -Yes Misra C 2012: 2.5 -Yes Misra C 2012: 2.6 -Yes Misra C 2012: 2.7 -Yes Misra C 2012: 2.8 -Yes Misra C 2012: 3.1 -Yes Misra C 2012: 3.2 -Yes Misra C 2012: 4.1 -Yes Misra C 2012: 4.2 -Yes Misra C 2012: 5.1 -Yes Misra C 2012: 5.2 -Yes Misra C 2012: 5.3 -Yes Misra C 2012: 5.4 -Yes Misra C 2012: 5.5 -Yes Misra C 2012: 5.6 -Yes Misra C 2012: 5.7 -Yes Misra C 2012: 5.8 -Yes Misra C 2012: 5.9 -Yes Misra C 2012: 6.1 -Yes Misra C 2012: 6.2 -No Misra C 2012: 6.3 -Yes Misra C 2012: 7.1 -Yes Misra C 2012: 7.2 -Yes Misra C 2012: 7.3 -Yes Misra C 2012: 7.4 -No Misra C 2012: 7.5 -No Misra C 2012: 7.6 -Yes Misra C 2012: 8.1 -Yes Misra C 2012: 8.2 -No Misra C 2012: 8.3 -Yes Misra C 2012: 8.4 -Yes Misra C 2012: 8.5 -Yes Misra C 2012: 8.6 -Yes Misra C 2012: 8.7 -Yes Misra C 2012: 8.8 -Yes Misra C 2012: 8.9 -Yes Misra C 2012: 8.10 -Yes Misra C 2012: 8.11 -Yes Misra C 2012: 8.12 -Yes Misra C 2012: 8.13 -Yes Misra C 2012: 8.14 -No Misra C 2012: 8.15 -No Misra C 2012: 8.16 -No Misra C 2012: 8.17 -Yes Misra C 2012: 9.1 -Yes Misra C 2012: 9.2 -Yes Misra C 2012: 9.3 -Yes Misra C 2012: 9.4 -Yes Misra C 2012: 9.5 -No Misra C 2012: 9.6 -No Misra C 2012: 9.7 -Yes Misra C 2012: 10.1 -Yes Misra C 2012: 10.2 -Yes Misra C 2012: 10.3 -Yes Misra C 2012: 10.4 -Yes Misra C 2012: 10.5 -Yes Misra C 2012: 10.6 -Yes Misra C 2012: 10.7 -Yes Misra C 2012: 10.8 -Yes Misra C 2012: 11.1 -Yes Misra C 2012: 11.2 -Yes Misra C 2012: 11.3 -Yes Misra C 2012: 11.4 -Yes Misra C 2012: 11.5 -Yes Misra C 2012: 11.6 -Yes Misra C 2012: 11.7 -Yes Misra C 2012: 11.8 -Yes Misra C 2012: 11.9 -No Misra C 2012: 11.10 -Yes Misra C 2012: 12.1 -Yes Misra C 2012: 12.2 -Yes Misra C 2012: 12.3 -Yes Misra C 2012: 12.4 -Yes Misra C 2012: 12.5 amendment:1 -No Misra C 2012: 12.6 amendment:4 require:premium -Yes Misra C 2012: 13.1 -No Misra C 2012: 13.2 -Yes Misra C 2012: 13.3 -Yes Misra C 2012: 13.4 -Yes Misra C 2012: 13.5 -Yes Misra C 2012: 13.6 -Yes Misra C 2012: 14.1 -Yes Misra C 2012: 14.2 -Yes Misra C 2012: 14.3 -Yes Misra C 2012: 14.4 -Yes Misra C 2012: 15.1 -Yes Misra C 2012: 15.2 -Yes Misra C 2012: 15.3 -Yes Misra C 2012: 15.4 -Yes Misra C 2012: 15.5 -Yes Misra C 2012: 15.6 -Yes Misra C 2012: 15.7 -Yes Misra C 2012: 16.1 -Yes Misra C 2012: 16.2 -Yes Misra C 2012: 16.3 -Yes Misra C 2012: 16.4 -Yes Misra C 2012: 16.5 -Yes Misra C 2012: 16.6 -Yes Misra C 2012: 16.7 -Yes Misra C 2012: 17.1 -Yes Misra C 2012: 17.2 -Yes Misra C 2012: 17.3 -No Misra C 2012: 17.4 -Yes Misra C 2012: 17.5 -Yes Misra C 2012: 17.6 -Yes Misra C 2012: 17.7 -Yes Misra C 2012: 17.8 -No Misra C 2012: 17.9 -No Misra C 2012: 17.10 -No Misra C 2012: 17.11 -No Misra C 2012: 17.12 -No Misra C 2012: 17.13 -Yes Misra C 2012: 18.1 -Yes Misra C 2012: 18.2 -Yes Misra C 2012: 18.3 -Yes Misra C 2012: 18.4 -Yes Misra C 2012: 18.5 -Yes Misra C 2012: 18.6 -Yes Misra C 2012: 18.7 -Yes Misra C 2012: 18.8 -No Misra C 2012: 18.9 -No Misra C 2012: 18.10 -Yes Misra C 2012: 19.1 -Yes Misra C 2012: 19.2 -Yes Misra C 2012: 20.1 -Yes Misra C 2012: 20.2 -Yes Misra C 2012: 20.3 -Yes Misra C 2012: 20.4 -Yes Misra C 2012: 20.5 -Yes Misra C 2012: 20.6 -Yes Misra C 2012: 20.7 -Yes Misra C 2012: 20.8 -Yes Misra C 2012: 20.9 -Yes Misra C 2012: 20.10 -Yes Misra C 2012: 20.11 -Yes Misra C 2012: 20.12 -Yes Misra C 2012: 20.13 -Yes Misra C 2012: 20.14 -Yes Misra C 2012: 21.1 -Yes Misra C 2012: 21.2 -Yes Misra C 2012: 21.3 -Yes Misra C 2012: 21.4 -Yes Misra C 2012: 21.5 -Yes Misra C 2012: 21.6 -Yes Misra C 2012: 21.7 -Yes Misra C 2012: 21.8 -Yes Misra C 2012: 21.9 -Yes Misra C 2012: 21.10 -Yes Misra C 2012: 21.11 -Yes Misra C 2012: 21.12 -Yes Misra C 2012: 21.13 amendment:1 -Yes Misra C 2012: 21.14 amendment:1 -Yes Misra C 2012: 21.15 amendment:1 -Yes Misra C 2012: 21.16 amendment:1 -Yes Misra C 2012: 21.17 amendment:1 -Yes Misra C 2012: 21.18 amendment:1 -Yes Misra C 2012: 21.19 amendment:1 -Yes Misra C 2012: 21.20 amendment:1 -Yes Misra C 2012: 21.21 amendment:3 -No Misra C 2012: 21.22 amendment:3 require:premium -No Misra C 2012: 21.23 amendment:3 require:premium -No Misra C 2012: 21.24 amendment:3 require:premium -No Misra C 2012: 21.25 amendment:4 require:premium -No Misra C 2012: 21.26 amendment:4 require:premium -Yes Misra C 2012: 22.1 -Yes Misra C 2012: 22.2 -Yes Misra C 2012: 22.3 -Yes Misra C 2012: 22.4 -Yes Misra C 2012: 22.5 -Yes Misra C 2012: 22.6 -Yes Misra C 2012: 22.7 amendment:1 -Yes Misra C 2012: 22.8 amendment:1 -Yes Misra C 2012: 22.9 amendment:1 -Yes Misra C 2012: 22.10 amendment:1 -No Misra C 2012: 22.11 amendment:4 require:premium -No Misra C 2012: 22.12 amendment:4 require:premium -No Misra C 2012: 22.13 amendment:4 require:premium -No Misra C 2012: 22.14 amendment:4 require:premium -No Misra C 2012: 22.15 amendment:4 require:premium -No Misra C 2012: 22.16 amendment:4 require:premium -No Misra C 2012: 22.17 amendment:4 require:premium -No Misra C 2012: 22.18 amendment:4 require:premium -No Misra C 2012: 22.19 amendment:4 require:premium -No Misra C 2012: 22.20 amendment:4 require:premium -No Misra C 2012: 23.1 amendment:3 require:premium -No Misra C 2012: 23.2 amendment:3 require:premium -No Misra C 2012: 23.3 amendment:3 require:premium -No Misra C 2012: 23.4 amendment:3 require:premium -No Misra C 2012: 23.5 amendment:3 require:premium -No Misra C 2012: 23.6 amendment:3 require:premium -No Misra C 2012: 23.7 amendment:3 require:premium -No Misra C 2012: 23.8 amendment:3 require:premium - - -Misra C++ 2008 --------------- -Not available, Cppcheck Premium is not used - - -Misra C++ 2023 --------------- -Not available, Cppcheck Premium is not used - - - - - -TEST variant options: ---enable=all --disable=unusedFunction -DPANDA --addon=misra -DSTM32H7 -DSTM32H725xx /opendbc/safety/main.c - - -Critical errors ---------------- -No critical errors encountered. -Note: There might still have been non-critical bailouts which might lead to false negatives. - - -Open source checkers --------------------- -Yes Check64BitPortability::pointerassignment -Yes CheckAssert::assertWithSideEffects -Yes CheckAutoVariables::assignFunctionArg -Yes CheckAutoVariables::autoVariables -Yes CheckAutoVariables::checkVarLifetime -No CheckBool::checkAssignBoolToFloat require:style,c++ -Yes CheckBool::checkAssignBoolToPointer -No CheckBool::checkBitwiseOnBoolean require:style,inconclusive -Yes CheckBool::checkComparisonOfBoolExpressionWithInt -No CheckBool::checkComparisonOfBoolWithBool require:style,c++ -No CheckBool::checkComparisonOfBoolWithInt require:warning,c++ -No CheckBool::checkComparisonOfFuncReturningBool require:style,c++ -Yes CheckBool::checkIncrementBoolean -Yes CheckBool::pointerArithBool -Yes CheckBool::returnValueOfFunctionReturningBool -No CheckBoost::checkBoostForeachModification -Yes CheckBufferOverrun::analyseWholeProgram -Yes CheckBufferOverrun::argumentSize -Yes CheckBufferOverrun::arrayIndex -Yes CheckBufferOverrun::arrayIndexThenCheck -Yes CheckBufferOverrun::bufferOverflow -Yes CheckBufferOverrun::negativeArraySize -Yes CheckBufferOverrun::objectIndex -Yes CheckBufferOverrun::pointerArithmetic -No CheckBufferOverrun::stringNotZeroTerminated require:warning,inconclusive -Yes CheckClass::analyseWholeProgram -No CheckClass::checkConst require:style,inconclusive -No CheckClass::checkConstructors require:style,warning -No CheckClass::checkCopyConstructors require:warning -No CheckClass::checkDuplInheritedMembers require:warning -No CheckClass::checkExplicitConstructors require:style -No CheckClass::checkMemset -No CheckClass::checkMissingOverride require:style,c++03 -No CheckClass::checkReturnByReference require:performance -No CheckClass::checkSelfInitialization -No CheckClass::checkThisUseAfterFree require:warning -No CheckClass::checkUnsafeClassRefMember require:warning,safeChecks -No CheckClass::checkUselessOverride require:style -No CheckClass::checkVirtualFunctionCallInConstructor require:warning -No CheckClass::initializationListUsage require:performance -No CheckClass::initializerListOrder require:style,inconclusive -No CheckClass::operatorEqRetRefThis require:style -No CheckClass::operatorEqToSelf require:warning -No CheckClass::privateFunctions require:style -No CheckClass::thisSubtraction require:warning -No CheckClass::virtualDestructor -Yes CheckCondition::alwaysTrueFalse -Yes CheckCondition::assignIf -Yes CheckCondition::checkAssignmentInCondition -Yes CheckCondition::checkBadBitmaskCheck -Yes CheckCondition::checkCompareValueOutOfTypeRange -Yes CheckCondition::checkDuplicateConditionalAssign -Yes CheckCondition::checkIncorrectLogicOperator -Yes CheckCondition::checkInvalidTestForOverflow -Yes CheckCondition::checkModuloAlwaysTrueFalse -Yes CheckCondition::checkPointerAdditionResultNotNull -Yes CheckCondition::clarifyCondition -Yes CheckCondition::comparison -Yes CheckCondition::duplicateCondition -Yes CheckCondition::multiCondition -Yes CheckCondition::multiCondition2 -No CheckExceptionSafety::checkCatchExceptionByValue require:style -No CheckExceptionSafety::checkRethrowCopy require:style -No CheckExceptionSafety::deallocThrow require:warning -No CheckExceptionSafety::destructors require:warning -No CheckExceptionSafety::nothrowThrows -No CheckExceptionSafety::rethrowNoCurrentException -No CheckExceptionSafety::unhandledExceptionSpecification require:style,inconclusive -Yes CheckFunctions::checkIgnoredReturnValue -Yes CheckFunctions::checkMathFunctions -Yes CheckFunctions::checkMissingReturn -Yes CheckFunctions::checkProhibitedFunctions -Yes CheckFunctions::invalidFunctionUsage -Yes CheckFunctions::memsetInvalid2ndParam -Yes CheckFunctions::memsetZeroBytes -No CheckFunctions::returnLocalStdMove require:performance,c++11 -Yes CheckFunctions::useStandardLibrary -No CheckIO::checkCoutCerrMisusage require:c -Yes CheckIO::checkFileUsage -Yes CheckIO::checkWrongPrintfScanfArguments -Yes CheckIO::invalidScanf -Yes CheckLeakAutoVar::check -No CheckMemoryLeakInClass::check -Yes CheckMemoryLeakInFunction::checkReallocUsage -Yes CheckMemoryLeakNoVar::check -No CheckMemoryLeakNoVar::checkForUnsafeArgAlloc -Yes CheckMemoryLeakStructMember::check -Yes CheckNullPointer::analyseWholeProgram -Yes CheckNullPointer::arithmetic -Yes CheckNullPointer::nullConstantDereference -Yes CheckNullPointer::nullPointer -No CheckOther::checkAccessOfMovedVariable require:c++11,warning -Yes CheckOther::checkCastIntToCharAndBack -Yes CheckOther::checkCharVariable -Yes CheckOther::checkComparePointers -Yes CheckOther::checkComparisonFunctionIsAlwaysTrueOrFalse -Yes CheckOther::checkConstPointer -No CheckOther::checkConstVariable require:style,c++ -No CheckOther::checkDuplicateBranch require:style,inconclusive -Yes CheckOther::checkDuplicateExpression -Yes CheckOther::checkEvaluationOrder -Yes CheckOther::checkFuncArgNamesDifferent -No CheckOther::checkIncompleteArrayFill require:warning,portability,inconclusive -Yes CheckOther::checkIncompleteStatement -No CheckOther::checkInterlockedDecrement require:windows-platform -Yes CheckOther::checkInvalidFree -Yes CheckOther::checkKnownArgument -Yes CheckOther::checkKnownPointerToBool -No CheckOther::checkMisusedScopedObject require:style,c++ -Yes CheckOther::checkModuloOfOne -Yes CheckOther::checkNanInArithmeticExpression -Yes CheckOther::checkNegativeBitwiseShift -Yes CheckOther::checkOverlappingWrite -No CheckOther::checkPassByReference require:performance,c++ -Yes CheckOther::checkRedundantAssignment -No CheckOther::checkRedundantCopy require:c++,performance,inconclusive -Yes CheckOther::checkRedundantPointerOp -Yes CheckOther::checkShadowVariables -Yes CheckOther::checkSignOfUnsignedVariable -No CheckOther::checkSuspiciousCaseInSwitch require:warning,inconclusive -No CheckOther::checkSuspiciousSemicolon require:warning,inconclusive -Yes CheckOther::checkUnreachableCode -Yes CheckOther::checkUnusedLabel -Yes CheckOther::checkVarFuncNullUB -Yes CheckOther::checkVariableScope -Yes CheckOther::checkZeroDivision -Yes CheckOther::clarifyCalculation -Yes CheckOther::clarifyStatement -Yes CheckOther::invalidPointerCast -Yes CheckOther::redundantBitwiseOperationInSwitch -Yes CheckOther::suspiciousFloatingPointCast -No CheckOther::warningOldStylePointerCast require:style,c++ -No CheckPostfixOperator::postfixOperator require:performance -Yes CheckSizeof::checkSizeofForArrayParameter -Yes CheckSizeof::checkSizeofForNumericParameter -Yes CheckSizeof::checkSizeofForPointerSize -Yes CheckSizeof::sizeofCalculation -Yes CheckSizeof::sizeofFunction -Yes CheckSizeof::sizeofVoid -Yes CheckSizeof::sizeofsizeof -No CheckSizeof::suspiciousSizeofCalculation require:warning,inconclusive -No CheckStl::checkDereferenceInvalidIterator require:warning -No CheckStl::checkDereferenceInvalidIterator2 -No CheckStl::checkFindInsert require:performance -No CheckStl::checkMutexes require:warning -No CheckStl::erase -No CheckStl::eraseIteratorOutOfBounds -No CheckStl::if_find require:warning,performance -No CheckStl::invalidContainer -No CheckStl::iterators -No CheckStl::knownEmptyContainer require:style -No CheckStl::misMatchingContainerIterator -No CheckStl::misMatchingContainers -No CheckStl::missingComparison require:warning -No CheckStl::negativeIndex -No CheckStl::outOfBounds -No CheckStl::outOfBoundsIndexExpression -No CheckStl::redundantCondition require:style -No CheckStl::size require:performance,c++03 -No CheckStl::stlBoundaries -No CheckStl::stlOutOfBounds -No CheckStl::string_c_str -No CheckStl::useStlAlgorithm require:style -No CheckStl::uselessCalls require:performance,warning -Yes CheckString::checkAlwaysTrueOrFalseStringCompare -Yes CheckString::checkIncorrectStringCompare -Yes CheckString::checkSuspiciousStringCompare -Yes CheckString::overlappingStrcmp -Yes CheckString::sprintfOverlappingData -Yes CheckString::strPlusChar -Yes CheckString::stringLiteralWrite -Yes CheckType::checkFloatToIntegerOverflow -Yes CheckType::checkIntegerOverflow -Yes CheckType::checkLongCast -Yes CheckType::checkSignConversion -Yes CheckType::checkTooBigBitwiseShift -Yes CheckUninitVar::check -Yes CheckUninitVar::valueFlowUninit -No CheckUnusedFunctions::check require:unusedFunction -Yes CheckUnusedVar::checkFunctionVariableUsage -Yes CheckUnusedVar::checkStructMemberUsage -Yes CheckVaarg::va_list_usage -Yes CheckVaarg::va_start_argument - - -Premium checkers ----------------- -Not available, Cppcheck Premium is not used - - -Autosar -------- -Not available, Cppcheck Premium is not used - - -Cert C ------- -Not available, Cppcheck Premium is not used - - -Cert C++ --------- -Not available, Cppcheck Premium is not used - - -Misra C 2012 ------------- -No Misra C 2012: Dir 1.1 -No Misra C 2012: Dir 2.1 -No Misra C 2012: Dir 3.1 -No Misra C 2012: Dir 4.1 -No Misra C 2012: Dir 4.2 -No Misra C 2012: Dir 4.3 -No Misra C 2012: Dir 4.4 -No Misra C 2012: Dir 4.5 -No Misra C 2012: Dir 4.6 amendment:3 -No Misra C 2012: Dir 4.7 -No Misra C 2012: Dir 4.8 -No Misra C 2012: Dir 4.9 amendment:3 -No Misra C 2012: Dir 4.10 -No Misra C 2012: Dir 4.11 amendment:3 -No Misra C 2012: Dir 4.12 -No Misra C 2012: Dir 4.13 -No Misra C 2012: Dir 4.14 amendment:2 -No Misra C 2012: Dir 4.15 amendment:3 -No Misra C 2012: Dir 5.1 amendment:4 -No Misra C 2012: Dir 5.2 amendment:4 -No Misra C 2012: Dir 5.3 amendment:4 -Yes Misra C 2012: 1.1 -Yes Misra C 2012: 1.2 -Yes Misra C 2012: 1.3 -Yes Misra C 2012: 1.4 amendment:2 -No Misra C 2012: 1.5 amendment:3 require:premium -Yes Misra C 2012: 2.1 -Yes Misra C 2012: 2.2 -Yes Misra C 2012: 2.3 -Yes Misra C 2012: 2.4 -Yes Misra C 2012: 2.5 -Yes Misra C 2012: 2.6 -Yes Misra C 2012: 2.7 -Yes Misra C 2012: 2.8 -Yes Misra C 2012: 3.1 -Yes Misra C 2012: 3.2 -Yes Misra C 2012: 4.1 -Yes Misra C 2012: 4.2 -Yes Misra C 2012: 5.1 -Yes Misra C 2012: 5.2 -Yes Misra C 2012: 5.3 -Yes Misra C 2012: 5.4 -Yes Misra C 2012: 5.5 -Yes Misra C 2012: 5.6 -Yes Misra C 2012: 5.7 -Yes Misra C 2012: 5.8 -Yes Misra C 2012: 5.9 -Yes Misra C 2012: 6.1 -Yes Misra C 2012: 6.2 -No Misra C 2012: 6.3 -Yes Misra C 2012: 7.1 -Yes Misra C 2012: 7.2 -Yes Misra C 2012: 7.3 -Yes Misra C 2012: 7.4 -No Misra C 2012: 7.5 -No Misra C 2012: 7.6 -Yes Misra C 2012: 8.1 -Yes Misra C 2012: 8.2 -No Misra C 2012: 8.3 -Yes Misra C 2012: 8.4 -Yes Misra C 2012: 8.5 -Yes Misra C 2012: 8.6 -Yes Misra C 2012: 8.7 -Yes Misra C 2012: 8.8 -Yes Misra C 2012: 8.9 -Yes Misra C 2012: 8.10 -Yes Misra C 2012: 8.11 -Yes Misra C 2012: 8.12 -Yes Misra C 2012: 8.13 -Yes Misra C 2012: 8.14 -No Misra C 2012: 8.15 -No Misra C 2012: 8.16 -No Misra C 2012: 8.17 -Yes Misra C 2012: 9.1 -Yes Misra C 2012: 9.2 -Yes Misra C 2012: 9.3 -Yes Misra C 2012: 9.4 -Yes Misra C 2012: 9.5 -No Misra C 2012: 9.6 -No Misra C 2012: 9.7 -Yes Misra C 2012: 10.1 -Yes Misra C 2012: 10.2 -Yes Misra C 2012: 10.3 -Yes Misra C 2012: 10.4 -Yes Misra C 2012: 10.5 -Yes Misra C 2012: 10.6 -Yes Misra C 2012: 10.7 -Yes Misra C 2012: 10.8 -Yes Misra C 2012: 11.1 -Yes Misra C 2012: 11.2 -Yes Misra C 2012: 11.3 -Yes Misra C 2012: 11.4 -Yes Misra C 2012: 11.5 -Yes Misra C 2012: 11.6 -Yes Misra C 2012: 11.7 -Yes Misra C 2012: 11.8 -Yes Misra C 2012: 11.9 -No Misra C 2012: 11.10 -Yes Misra C 2012: 12.1 -Yes Misra C 2012: 12.2 -Yes Misra C 2012: 12.3 -Yes Misra C 2012: 12.4 -Yes Misra C 2012: 12.5 amendment:1 -No Misra C 2012: 12.6 amendment:4 require:premium -Yes Misra C 2012: 13.1 -No Misra C 2012: 13.2 -Yes Misra C 2012: 13.3 -Yes Misra C 2012: 13.4 -Yes Misra C 2012: 13.5 -Yes Misra C 2012: 13.6 -Yes Misra C 2012: 14.1 -Yes Misra C 2012: 14.2 -Yes Misra C 2012: 14.3 -Yes Misra C 2012: 14.4 -Yes Misra C 2012: 15.1 -Yes Misra C 2012: 15.2 -Yes Misra C 2012: 15.3 -Yes Misra C 2012: 15.4 -Yes Misra C 2012: 15.5 -Yes Misra C 2012: 15.6 -Yes Misra C 2012: 15.7 -Yes Misra C 2012: 16.1 -Yes Misra C 2012: 16.2 -Yes Misra C 2012: 16.3 -Yes Misra C 2012: 16.4 -Yes Misra C 2012: 16.5 -Yes Misra C 2012: 16.6 -Yes Misra C 2012: 16.7 -Yes Misra C 2012: 17.1 -Yes Misra C 2012: 17.2 -Yes Misra C 2012: 17.3 -No Misra C 2012: 17.4 -Yes Misra C 2012: 17.5 -Yes Misra C 2012: 17.6 -Yes Misra C 2012: 17.7 -Yes Misra C 2012: 17.8 -No Misra C 2012: 17.9 -No Misra C 2012: 17.10 -No Misra C 2012: 17.11 -No Misra C 2012: 17.12 -No Misra C 2012: 17.13 -Yes Misra C 2012: 18.1 -Yes Misra C 2012: 18.2 -Yes Misra C 2012: 18.3 -Yes Misra C 2012: 18.4 -Yes Misra C 2012: 18.5 -Yes Misra C 2012: 18.6 -Yes Misra C 2012: 18.7 -Yes Misra C 2012: 18.8 -No Misra C 2012: 18.9 -No Misra C 2012: 18.10 -Yes Misra C 2012: 19.1 -Yes Misra C 2012: 19.2 -Yes Misra C 2012: 20.1 -Yes Misra C 2012: 20.2 -Yes Misra C 2012: 20.3 -Yes Misra C 2012: 20.4 -Yes Misra C 2012: 20.5 -Yes Misra C 2012: 20.6 -Yes Misra C 2012: 20.7 -Yes Misra C 2012: 20.8 -Yes Misra C 2012: 20.9 -Yes Misra C 2012: 20.10 -Yes Misra C 2012: 20.11 -Yes Misra C 2012: 20.12 -Yes Misra C 2012: 20.13 -Yes Misra C 2012: 20.14 -Yes Misra C 2012: 21.1 -Yes Misra C 2012: 21.2 -Yes Misra C 2012: 21.3 -Yes Misra C 2012: 21.4 -Yes Misra C 2012: 21.5 -Yes Misra C 2012: 21.6 -Yes Misra C 2012: 21.7 -Yes Misra C 2012: 21.8 -Yes Misra C 2012: 21.9 -Yes Misra C 2012: 21.10 -Yes Misra C 2012: 21.11 -Yes Misra C 2012: 21.12 -Yes Misra C 2012: 21.13 amendment:1 -Yes Misra C 2012: 21.14 amendment:1 -Yes Misra C 2012: 21.15 amendment:1 -Yes Misra C 2012: 21.16 amendment:1 -Yes Misra C 2012: 21.17 amendment:1 -Yes Misra C 2012: 21.18 amendment:1 -Yes Misra C 2012: 21.19 amendment:1 -Yes Misra C 2012: 21.20 amendment:1 -Yes Misra C 2012: 21.21 amendment:3 -No Misra C 2012: 21.22 amendment:3 require:premium -No Misra C 2012: 21.23 amendment:3 require:premium -No Misra C 2012: 21.24 amendment:3 require:premium -No Misra C 2012: 21.25 amendment:4 require:premium -No Misra C 2012: 21.26 amendment:4 require:premium -Yes Misra C 2012: 22.1 -Yes Misra C 2012: 22.2 -Yes Misra C 2012: 22.3 -Yes Misra C 2012: 22.4 -Yes Misra C 2012: 22.5 -Yes Misra C 2012: 22.6 -Yes Misra C 2012: 22.7 amendment:1 -Yes Misra C 2012: 22.8 amendment:1 -Yes Misra C 2012: 22.9 amendment:1 -Yes Misra C 2012: 22.10 amendment:1 -No Misra C 2012: 22.11 amendment:4 require:premium -No Misra C 2012: 22.12 amendment:4 require:premium -No Misra C 2012: 22.13 amendment:4 require:premium -No Misra C 2012: 22.14 amendment:4 require:premium -No Misra C 2012: 22.15 amendment:4 require:premium -No Misra C 2012: 22.16 amendment:4 require:premium -No Misra C 2012: 22.17 amendment:4 require:premium -No Misra C 2012: 22.18 amendment:4 require:premium -No Misra C 2012: 22.19 amendment:4 require:premium -No Misra C 2012: 22.20 amendment:4 require:premium -No Misra C 2012: 23.1 amendment:3 require:premium -No Misra C 2012: 23.2 amendment:3 require:premium -No Misra C 2012: 23.3 amendment:3 require:premium -No Misra C 2012: 23.4 amendment:3 require:premium -No Misra C 2012: 23.5 amendment:3 require:premium -No Misra C 2012: 23.6 amendment:3 require:premium -No Misra C 2012: 23.7 amendment:3 require:premium -No Misra C 2012: 23.8 amendment:3 require:premium - - -Misra C++ 2008 --------------- -Not available, Cppcheck Premium is not used - - -Misra C++ 2023 --------------- -Not available, Cppcheck Premium is not used diff --git a/opendbc_repo/opendbc/safety/tests/misra/coverage_table b/opendbc_repo/opendbc/safety/tests/misra/coverage_table deleted file mode 100644 index 0395aba0d6..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/coverage_table +++ /dev/null @@ -1,156 +0,0 @@ -1.1 -1.2 X (Addon) -1.3 X (Cppcheck) -2.1 X (Cppcheck) -2.2 X (Addon) -2.3 X (Addon) -2.4 X (Addon) -2.5 X (Addon) -2.6 X (Cppcheck) -2.7 X (Addon) -3.1 X (Addon) -3.2 X (Addon) -4.1 X (Addon) -4.2 X (Addon) -5.1 X (Addon) -5.2 X (Addon) -5.3 X (Cppcheck) -5.4 X (Addon) -5.5 X (Addon) -5.6 X (Addon) -5.7 X (Addon) -5.8 X (Addon) -5.9 X (Addon) -6.1 X (Addon) -6.2 X (Addon) -7.1 X (Addon) -7.2 X (Addon) -7.3 X (Addon) -7.4 X (Addon) -8.1 X (Addon) -8.2 X (Addon) -8.3 X (Cppcheck) -8.4 X (Addon) -8.5 X (Addon) -8.6 X (Addon) -8.7 X (Addon) -8.8 X (Addon) -8.9 X (Addon) -8.10 X (Addon) -8.11 X (Addon) -8.12 X (Addon) -8.13 X (Cppcheck) -8.14 X (Addon) -9.1 X (Cppcheck) -9.2 X (Addon) -9.3 X (Addon) -9.4 X (Addon) -9.5 X (Addon) -10.1 X (Addon) -10.2 X (Addon) -10.3 X (Addon) -10.4 X (Addon) -10.5 X (Addon) -10.6 X (Addon) -10.7 X (Addon) -10.8 X (Addon) -11.1 X (Addon) -11.2 X (Addon) -11.3 X (Addon) -11.4 X (Addon) -11.5 X (Addon) -11.6 X (Addon) -11.7 X (Addon) -11.8 X (Addon) -11.9 X (Addon) -12.1 X (Addon) -12.2 X (Addon) -12.3 X (Addon) -12.4 X (Addon) -13.1 X (Addon) -13.2 X (Cppcheck) -13.3 X (Addon) -13.4 X (Addon) -13.5 X (Addon) -13.6 X (Addon) -14.1 X (Addon) -14.2 X (Addon) -14.3 X (Cppcheck) -14.4 X (Addon) -15.1 X (Addon) -15.2 X (Addon) -15.3 X (Addon) -15.4 X (Addon) -15.5 X (Addon) -15.6 X (Addon) -15.7 X (Addon) -16.1 X (Addon) -16.2 X (Addon) -16.3 X (Addon) -16.4 X (Addon) -16.5 X (Addon) -16.6 X (Addon) -16.7 X (Addon) -17.1 X (Addon) -17.2 X (Addon) -17.3 X (Addon) -17.4 X (Cppcheck) -17.5 X (Cppcheck) -17.6 X (Addon) -17.7 X (Addon) -17.8 X (Addon) -18.1 X (Cppcheck) -18.2 X (Cppcheck) -18.3 X (Cppcheck) -18.4 X (Addon) -18.5 X (Addon) -18.6 X (Cppcheck) -18.7 X (Addon) -18.8 X (Addon) -19.1 X (Cppcheck) -19.2 X (Addon) -20.1 X (Addon) -20.2 X (Addon) -20.3 X (Addon) -20.4 X (Addon) -20.5 X (Addon) -20.6 X (Cppcheck) -20.7 X (Addon) -20.8 X (Addon) -20.9 X (Addon) -20.10 X (Addon) -20.11 X (Addon) -20.12 X (Addon) -20.13 X (Addon) -20.14 X (Addon) -21.1 X (Addon) -21.2 X (Addon) -21.3 X (Addon) -21.4 X (Addon) -21.5 X (Addon) -21.6 X (Addon) -21.7 X (Addon) -21.8 X (Addon) -21.9 X (Addon) -21.10 X (Addon) -21.11 X (Addon) -21.12 X (Addon) -21.13 X (Cppcheck) -21.14 X (Addon) -21.15 X (Addon) -21.16 X (Addon) -21.17 X (Cppcheck) -21.18 X (Cppcheck) -21.19 X (Addon) -21.20 X (Addon) -21.21 X (Addon) -22.1 X (Cppcheck) -22.2 X (Cppcheck) -22.3 X (Cppcheck) -22.4 X (Cppcheck) -22.5 X (Addon) -22.6 X (Cppcheck) -22.7 X (Addon) -22.8 X (Addon) -22.9 X (Addon) -22.10 X (Addon) diff --git a/opendbc_repo/opendbc/safety/tests/misra/install.sh b/opendbc_repo/opendbc/safety/tests/misra/install.sh deleted file mode 100755 index 9c8fd385c8..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/install.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" -: "${CPPCHECK_DIR:=$DIR/cppcheck/}" - -if [ ! -d "$CPPCHECK_DIR" ]; then - git clone https://github.com/danmar/cppcheck.git $CPPCHECK_DIR -fi - -cd $CPPCHECK_DIR - -VERS="2.16.0" -git fetch --all --tags --force -git checkout $VERS - -#make clean -make MATCHCOMPILTER=yes CXXFLAGS="-O2" -j8 diff --git a/opendbc_repo/opendbc/safety/tests/misra/suppressions.txt b/opendbc_repo/opendbc/safety/tests/misra/suppressions.txt deleted file mode 100644 index 4800a270bc..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/suppressions.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Advisory: casting from void pointer to type pointer is ok. Done by STM libraries as well -misra-c2012-11.4 -# Advisory: casting from void pointer to type pointer is ok. Done by STM libraries as well -misra-c2012-11.5 -# Advisory: as stated in the Misra document, use of goto statements in accordance to 15.2 and 15.3 is ok -misra-c2012-15.1 -# Advisory: union types can be used -misra-c2012-19.2 -# Advisory: The # and ## preprocessor operators should not be used -misra-c2012-20.10 - -# needed since not all of these suppressions are applicable to all builds -unmatchedSuppression - -# All interrupt handlers are defined, including ones we don't use -unusedFunction:*/interrupt_handlers*.h - -# all of the below suppressions are from new checks introduced after updating -# cppcheck from 2.5 -> 2.13. they are listed here to separate the update from -# fixing the violations and all are intended to be removed soon after -misra-c2012-2.5 # unused macros. a few legit, rest aren't common between F4/H7 builds. should we do this in the unusedFunction pass? diff --git a/opendbc_repo/opendbc/safety/tests/misra/test_misra.sh b/opendbc_repo/opendbc/safety/tests/misra/test_misra.sh deleted file mode 100755 index 0ff97d712f..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/test_misra.sh +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" -cd $DIR - -source ../../../../setup.sh - -GREEN="\e[1;32m" -YELLOW="\e[1;33m" -RED="\e[1;31m" -NC='\033[0m' - -: "${CPPCHECK_DIR:=$DIR/cppcheck/}" - -# install cppcheck if missing -if [ -z "${SKIP_CPPCHECK_INSTALL}" ]; then - $DIR/install.sh -fi - -# ensure checked in coverage table is up to date -if [ -z "$SKIP_TABLES_DIFF" ]; then - python3 $CPPCHECK_DIR/addons/misra.py -generate-table > coverage_table - if ! git diff --quiet coverage_table; then - echo -e "${YELLOW}MISRA coverage table doesn't match. Update and commit:${NC}" - exit 3 - fi -fi - -cd $BASEDIR -if [ -z "${SKIP_BUILD}" ]; then - scons -j8 -fi - -CHECKLIST=$DIR/checkers.txt -echo "Cppcheck checkers list from test_misra.sh:" > $CHECKLIST - -cppcheck() { - # get all gcc defines: arm-none-eabi-gcc -dM -E - < /dev/null - COMMON_DEFINES="-D__GNUC__=9 -UCMSIS_NVIC_VIRTUAL -UCMSIS_VECTAB_VIRTUAL" - - # note that cppcheck build cache results in inconsistent results as of v2.13.0 - OUTPUT=$DIR/.output.log - - echo -e "\n\n\n\n\nTEST variant options:" >> $CHECKLIST - echo -e ""${@//$BASEDIR/}"\n\n" >> $CHECKLIST # (absolute path removed) - - $CPPCHECK_DIR/cppcheck --inline-suppr -I $BASEDIR/opendbc/safety/ \ - -I $BASEDIR/opendbc/safety/safety/ -I $BASEDIR/opendbc/safety/board/ \ - -I "$(arm-none-eabi-gcc -print-file-name=include)" \ - --suppressions-list=$DIR/suppressions.txt --suppress=*:*inc/* \ - --suppress=*:*include/* --error-exitcode=2 --check-level=exhaustive --safety \ - --platform=arm32-wchar_t4 $COMMON_DEFINES --checkers-report=$CHECKLIST.tmp \ - --std=c11 "$@" 2>&1 | tee $OUTPUT - - cat $CHECKLIST.tmp >> $CHECKLIST - rm $CHECKLIST.tmp - # cppcheck bug: some MISRA errors won't result in the error exit code, - # so check the output (https://trac.cppcheck.net/ticket/12440#no1) - if grep -e "misra violation" -e "error" -e "style: " $OUTPUT > /dev/null; then - printf "${RED}** FAILED: MISRA violations found!${NC}\n" - exit 1 - fi -} - -PANDA_OPTS="--enable=all --disable=unusedFunction -DPANDA --addon=misra" - -printf "\n${GREEN}** PANDA F4 CODE **${NC}\n" -cppcheck $PANDA_OPTS -DSTM32F4 -DSTM32F413xx $BASEDIR/opendbc/safety/main.c - -printf "\n${GREEN}** PANDA H7 CODE **${NC}\n" -cppcheck $PANDA_OPTS -DSTM32H7 -DSTM32H725xx $BASEDIR/opendbc/safety/main.c - -# unused needs to run globally -#printf "\n${GREEN}** UNUSED ALL CODE **${NC}\n" -#cppcheck --enable=unusedFunction --quiet $BASEDIR/opendbc/safety/board/ - -printf "\n${GREEN}Success!${NC} took $SECONDS seconds\n" - - -# ensure list of checkers is up to date -cd $DIR -if [ -z "$SKIP_TABLES_DIFF" ] && ! git diff --quiet $CHECKLIST; then - echo -e "\n${YELLOW}WARNING: Cppcheck checkers.txt report has changed. Review and commit...${NC}" - exit 4 -fi diff --git a/opendbc_repo/opendbc/safety/tests/misra/test_mutation.py b/opendbc_repo/opendbc/safety/tests/misra/test_mutation.py deleted file mode 100755 index 1caf51a864..0000000000 --- a/opendbc_repo/opendbc/safety/tests/misra/test_mutation.py +++ /dev/null @@ -1,69 +0,0 @@ -#!/usr/bin/env python3 -import os -import glob -import pytest -import shutil -import subprocess -import tempfile -import random - -HERE = os.path.abspath(os.path.dirname(__file__)) -ROOT = os.path.join(HERE, "../../../../") - -IGNORED_PATHS = ( - 'opendbc/safety/tests/', - 'opendbc/safety/board/', -) - -mutations = [ - # default - (None, None, False), - # general safety - ("opendbc/safety/safety/safety_toyota.h", "s/is_lkas_msg =.*;/is_lkas_msg = addr == 1 || addr == 2;/g", True), -] - -patterns = [ - # misra-c2012-13.3 - "$a void test(int tmp) { int tmp2 = tmp++ + 2; if (tmp2) {;}}", - # misra-c2012-13.4 - "$a int test(int x, int y) { return (x=2) && (y=2); }", - # misra-c2012-13.5 - "$a void test(int tmp) { if (true && tmp++) {;} }", - # misra-c2012-13.6 - "$a void test(int tmp) { if (sizeof(tmp++)) {;} }", - # misra-c2012-14.1 - "$a void test(float len) { for (float j = 0; j < len; j++) {;} }", - # misra-c2012-14.4 - "$a void test(int len) { if (len - 8) {;} }", - # misra-c2012-16.4 - r"$a void test(int temp) {switch (temp) { case 1: ; }}\n", - # misra-c2012-17.8 - "$a void test(int cnt) { for (cnt=0;;cnt++) {;} }", - # misra-c2012-20.4 - r"$a #define auto 1\n", - # misra-c2012-20.5 - r"$a #define TEST 1\n#undef TEST\n", -] - -all_files = glob.glob('opendbc/safety/**', root_dir=ROOT, recursive=True) -files = [f for f in all_files if f.endswith(('.c', '.h')) and not f.startswith(IGNORED_PATHS)] -assert len(files) > 20, files - -for p in patterns: - mutations.append((random.choice(files), p, True)) - -@pytest.mark.parametrize("fn, patch, should_fail", mutations) -def test_misra_mutation(fn, patch, should_fail): - with tempfile.TemporaryDirectory() as tmp: - shutil.copytree(ROOT, tmp, dirs_exist_ok=True) - shutil.rmtree(os.path.join(tmp, '.venv'), ignore_errors=True) - - # apply patch - if fn is not None: - r = os.system(f"cd {tmp} && sed -i '{patch}' {fn}") - assert r == 0 - - # run test - r = subprocess.run("SKIP_TABLES_DIFF=1 SKIP_BUILD=1 opendbc/safety/tests/misra/test_misra.sh", cwd=tmp, shell=True) - failed = r.returncode != 0 - assert failed == should_fail diff --git a/opendbc_repo/opendbc/safety/tests/mutation.sh b/opendbc_repo/opendbc/safety/tests/mutation.sh deleted file mode 100755 index 67bd396110..0000000000 --- a/opendbc_repo/opendbc/safety/tests/mutation.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" -cd $DIR - -$DIR/install_mull.sh - -GIT_REF="${GIT_REF:-origin/master}" -GIT_ROOT=$(git rev-parse --show-toplevel) -MULL_OPS="mutators: [cxx_increment, cxx_decrement, cxx_comparison, cxx_boundary, cxx_bitwise_assignment, cxx_bitwise, cxx_arithmetic_assignment, cxx_arithmetic, cxx_remove_negation]" -echo -e "$MULL_OPS" > $GIT_ROOT/mull.yml -scons --mutation -j$(nproc) -D -echo -e "timeout: 10000\ngitDiffRef: $GIT_REF\ngitProjectRoot: $GIT_ROOT" >> $GIT_ROOT/mull.yml - -mull-runner-17 --ld-search-path /lib/x86_64-linux-gnu/ ./libsafety/libsafety.so -test-program=pytest -- -n8 diff --git a/opendbc_repo/opendbc/safety/tests/safety_replay/__init__.py b/opendbc_repo/opendbc/safety/tests/safety_replay/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py b/opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py deleted file mode 100644 index c56a15270f..0000000000 --- a/opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py +++ /dev/null @@ -1,98 +0,0 @@ -from opendbc.car.ford.values import FordSafetyFlags -from opendbc.car.toyota.values import ToyotaSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py - -def to_signed(d, bits): - ret = d - if d >= (1 << (bits - 1)): - ret = d - (1 << bits) - return ret - -def is_steering_msg(mode, param, addr): - ret = False - if mode in (CarParams.SafetyModel.hondaNidec, CarParams.SafetyModel.hondaBosch): - ret = (addr == 0xE4) or (addr == 0x194) or (addr == 0x33D) or (addr == 0x33DA) or (addr == 0x33DB) - elif mode == CarParams.SafetyModel.toyota: - ret = addr == (0x191 if param & ToyotaSafetyFlags.LTA else 0x2E4) - elif mode == CarParams.SafetyModel.gm: - ret = addr == 384 - elif mode == CarParams.SafetyModel.hyundai: - ret = addr == 832 - elif mode == CarParams.SafetyModel.hyundaiCanfd: - # TODO: other params - ret = addr == 0x50 - elif mode == CarParams.SafetyModel.chrysler: - ret = addr == 0x292 - elif mode == CarParams.SafetyModel.subaru: - ret = addr == 0x122 - elif mode == CarParams.SafetyModel.ford: - ret = addr == 0x3d6 if param & FordSafetyFlags.CANFD else addr == 0x3d3 - elif mode == CarParams.SafetyModel.nissan: - ret = addr == 0x169 - elif mode == CarParams.SafetyModel.rivian: - ret = addr == 0x120 - return ret - -def get_steer_value(mode, param, to_send): - # TODO: use CANParser - torque, angle = 0, 0 - if mode in (CarParams.SafetyModel.hondaNidec, CarParams.SafetyModel.hondaBosch): - torque = (to_send.data[0] << 8) | to_send.data[1] - torque = to_signed(torque, 16) - elif mode == CarParams.SafetyModel.toyota: - if param & ToyotaSafetyFlags.LTA: - angle = (to_send.data[1] << 8) | to_send.data[2] - angle = to_signed(angle, 16) - else: - torque = (to_send.data[1] << 8) | (to_send.data[2]) - torque = to_signed(torque, 16) - elif mode == CarParams.SafetyModel.gm: - torque = ((to_send.data[0] & 0x7) << 8) | to_send.data[1] - torque = to_signed(torque, 11) - elif mode == CarParams.SafetyModel.hyundai: - torque = (((to_send.data[3] & 0x7) << 8) | to_send.data[2]) - 1024 - elif mode == CarParams.SafetyModel.hyundaiCanfd: - torque = ((to_send.data[5] >> 1) | (to_send.data[6] & 0xF) << 7) - 1024 - elif mode == CarParams.SafetyModel.chrysler: - torque = (((to_send.data[0] & 0x7) << 8) | to_send.data[1]) - 1024 - elif mode == CarParams.SafetyModel.subaru: - torque = ((to_send.data[3] & 0x1F) << 8) | to_send.data[2] - torque = -to_signed(torque, 13) - elif mode == CarParams.SafetyModel.ford: - if param & FordSafetyFlags.CANFD: - angle = ((to_send.data[2] << 3) | (to_send.data[3] >> 5)) - 1000 - else: - angle = ((to_send.data[0] << 3) | (to_send.data[1] >> 5)) - 1000 - elif mode == CarParams.SafetyModel.nissan: - angle = (to_send.data[0] << 10) | (to_send.data[1] << 2) | (to_send.data[2] >> 6) - angle = -angle + (1310 * 100) - elif mode == CarParams.SafetyModel.rivian: - torque = ((to_send.data[2] << 3) | (to_send.data[3] >> 5)) - 1024 - return torque, angle - -def package_can_msg(msg): - return libsafety_py.make_CANPacket(msg.address, msg.src % 4, msg.dat) - -def init_segment(safety, msgs, mode, param): - sendcan = (msg for msg in msgs if msg.which() == 'sendcan') - steering_msgs = (can for msg in sendcan for can in msg.sendcan if is_steering_msg(mode, param, can.address)) - - msg = next(steering_msgs, None) - if msg is None: - print("no steering msgs found!") - return - - to_send = package_can_msg(msg) - torque, angle = get_steer_value(mode, param, to_send) - if torque != 0: - safety.set_controls_allowed(1) - safety.set_desired_torque_last(torque) - safety.set_rt_torque_last(torque) - safety.set_torque_meas(torque, torque) - safety.set_torque_driver(torque, torque) - elif angle != 0: - safety.set_controls_allowed(1) - safety.set_desired_angle_last(angle) - safety.set_angle_meas(angle, angle) - assert safety.safety_tx_hook(to_send), "failed to initialize panda safety for segment" diff --git a/opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py b/opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py deleted file mode 100755 index 36e958c7a9..0000000000 --- a/opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py +++ /dev/null @@ -1,96 +0,0 @@ -#!/usr/bin/env python3 -import argparse -from collections import Counter -from tqdm import tqdm - -from opendbc.car.carlog import carlog -from opendbc.safety.tests.libsafety import libsafety_py -from opendbc.safety.tests.safety_replay.helpers import package_can_msg, init_segment - -# replay a drive to check for safety violations -def replay_drive(msgs, safety_mode, param, alternative_experience): - safety = libsafety_py.libsafety - msgs.sort(key=lambda m: m.logMonoTime) - - err = safety.set_safety_hooks(safety_mode, param) - assert err == 0, "invalid safety mode: %d" % safety_mode - safety.set_alternative_experience(alternative_experience) - - init_segment(safety, msgs, safety_mode, param) - - rx_tot, rx_invalid, tx_tot, tx_blocked, tx_controls, tx_controls_blocked = 0, 0, 0, 0, 0, 0 - safety_tick_rx_invalid = False - blocked_addrs = Counter() - invalid_addrs = set() - - can_msgs = [m for m in msgs if m.which() in ('can', 'sendcan')] - start_t = can_msgs[0].logMonoTime - end_t = can_msgs[-1].logMonoTime - for msg in tqdm(can_msgs): - safety.set_timer((msg.logMonoTime // 1000) % 0xFFFFFFFF) - - # skip start and end of route, warm up/down period - if msg.logMonoTime - start_t > 1e9 and end_t - msg.logMonoTime > 1e9: - safety.safety_tick_current_safety_config() - safety_tick_rx_invalid |= not safety.safety_config_valid() or safety_tick_rx_invalid - - if msg.which() == 'sendcan': - for canmsg in msg.sendcan: - to_send = package_can_msg(canmsg) - sent = safety.safety_tx_hook(to_send) - if not sent: - tx_blocked += 1 - tx_controls_blocked += safety.get_controls_allowed() - blocked_addrs[canmsg.address] += 1 - - carlog.debug("blocked bus %d msg %d at %f" % (canmsg.src, canmsg.address, (msg.logMonoTime - start_t) / 1e9)) - tx_controls += safety.get_controls_allowed() - tx_tot += 1 - elif msg.which() == 'can': - # ignore msgs we sent - for canmsg in filter(lambda m: m.src < 128, msg.can): - to_push = package_can_msg(canmsg) - recv = safety.safety_rx_hook(to_push) - if not recv: - rx_invalid += 1 - invalid_addrs.add(canmsg.address) - rx_tot += 1 - - print("\nRX") - print("total rx msgs:", rx_tot) - print("invalid rx msgs:", rx_invalid) - print("safety tick rx invalid:", safety_tick_rx_invalid) - print("invalid addrs:", invalid_addrs) - print("\nTX") - print("total openpilot msgs:", tx_tot) - print("total msgs with controls allowed:", tx_controls) - print("blocked msgs:", tx_blocked) - print("blocked with controls allowed:", tx_controls_blocked) - print("blocked addrs:", blocked_addrs) - - return tx_controls_blocked == 0 and rx_invalid == 0 and not safety_tick_rx_invalid - -if __name__ == "__main__": - from openpilot.tools.lib.logreader import LogReader - - parser = argparse.ArgumentParser(description="Replay CAN messages from a route or segment through a safety mode", - formatter_class=argparse.ArgumentDefaultsHelpFormatter) - parser.add_argument("route_or_segment_name", nargs='+') - parser.add_argument("--mode", type=int, help="Override the safety mode from the log") - parser.add_argument("--param", type=int, help="Override the safety param from the log") - parser.add_argument("--alternative-experience", type=int, help="Override the alternative experience from the log") - args = parser.parse_args() - - lr = LogReader(args.route_or_segment_name[0]) - - if None in (args.mode, args.param, args.alternative_experience): - CP = lr.first('carParams') - if args.mode is None: - args.mode = CP.safetyConfigs[-1].safetyModel.raw - if args.param is None: - args.param = CP.safetyConfigs[-1].safetyParam - if args.alternative_experience is None: - args.alternative_experience = CP.alternativeExperience - - print(f"replaying {args.route_or_segment_name[0]} with safety mode {args.mode}, param {args.param}, alternative experience {args.alternative_experience}") - replay_drive(list(lr), args.mode, args.param, args.alternative_experience) diff --git a/opendbc_repo/opendbc/safety/tests/test.sh b/opendbc_repo/opendbc/safety/tests/test.sh deleted file mode 100755 index af695bb7fa..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env bash -set -e - -DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" -cd $DIR - -source ../../../setup.sh - -# reset coverage data and generate gcc note file -rm -f ./libsafety/*.gcda -if [ "$1" == "--ubsan" ]; then - scons -j$(nproc) -D --coverage --ubsan -else - scons -j$(nproc) -D --coverage -fi - -# run safety tests and generate coverage data -pytest -n8 - -# generate and open report -if [ "$1" == "--report" ]; then - mkdir -p coverage-out - gcovr -r ../ --html-nested coverage-out/index.html - sensible-browser coverage-out/index.html -fi - -# test coverage -GCOV="gcovr -r ../ --fail-under-line=100 -e ^libsafety -e ^../board" -if ! GCOV_OUTPUT="$($GCOV)"; then - echo -e "FAILED:\n$GCOV_OUTPUT" - exit 1 -else - echo "SUCCESS: All checked files have 100% coverage!" -fi diff --git a/opendbc_repo/opendbc/safety/tests/test_body.py b/opendbc_repo/opendbc/safety/tests/test_body.py deleted file mode 100755 index 91b68187d2..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_body.py +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.structs import CarParams -import opendbc.safety.tests.common as common -from opendbc.safety.tests.libsafety import libsafety_py -from opendbc.safety.tests.common import CANPackerPanda - - -class TestBody(common.PandaSafetyTest): - TX_MSGS = [[0x250, 0], [0x251, 0], [0x350, 0], [0x351, 0], - [0x1, 0], [0x1, 1], [0x1, 2], [0x1, 3]] - FWD_BUS_LOOKUP = {} - - def setUp(self): - self.packer = CANPackerPanda("comma_body") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.body, 0) - self.safety.init_tests() - - def _motors_data_msg(self, speed_l, speed_r): - values = {"SPEED_L": speed_l, "SPEED_R": speed_r} - return self.packer.make_can_msg_panda("MOTORS_DATA", 0, values) - - def _torque_cmd_msg(self, torque_l, torque_r): - values = {"TORQUE_L": torque_l, "TORQUE_R": torque_r} - return self.packer.make_can_msg_panda("TORQUE_CMD", 0, values) - - def _knee_torque_cmd_msg(self, torque_l, torque_r): - values = {"TORQUE_L": torque_l, "TORQUE_R": torque_r} - return self.packer.make_can_msg_panda("KNEE_TORQUE_CMD", 0, values) - - def _max_motor_rpm_cmd_msg(self, max_rpm_l, max_rpm_r): - values = {"MAX_RPM_L": max_rpm_l, "MAX_RPM_R": max_rpm_r} - return self.packer.make_can_msg_panda("MAX_MOTOR_RPM_CMD", 0, values) - - def test_rx_hook(self): - self.assertFalse(self.safety.get_controls_allowed()) - self.assertFalse(self.safety.get_vehicle_moving()) - - # controls allowed when we get MOTORS_DATA message - self.assertTrue(self._rx(self._torque_cmd_msg(0, 0))) - self.assertTrue(self.safety.get_vehicle_moving()) # always moving - self.assertFalse(self.safety.get_controls_allowed()) - - self.assertTrue(self._rx(self._motors_data_msg(0, 0))) - self.assertTrue(self.safety.get_vehicle_moving()) # always moving - self.assertTrue(self.safety.get_controls_allowed()) - - def test_tx_hook(self): - self.assertFalse(self._tx(self._torque_cmd_msg(0, 0))) - self.assertFalse(self._tx(self._knee_torque_cmd_msg(0, 0))) - self.safety.set_controls_allowed(True) - self.assertTrue(self._tx(self._torque_cmd_msg(0, 0))) - self.assertTrue(self._tx(self._knee_torque_cmd_msg(0, 0))) - - def test_can_flasher(self): - # CAN flasher always allowed - self.safety.set_controls_allowed(False) - self.assertTrue(self._tx(common.make_msg(0, 0x1, 8))) - - # 0xdeadfaceU enters CAN flashing mode for base & knee - for addr in (0x250, 0x350): - self.assertTrue(self._tx(common.make_msg(0, addr, dat=b'\xce\xfa\xad\xde\x1e\x0b\xb0\x0a'))) - self.assertFalse(self._tx(common.make_msg(0, addr, dat=b'\xce\xfa\xad\xde\x1e\x0b\xb0'))) # not correct data/len - self.assertFalse(self._tx(common.make_msg(0, addr + 1, dat=b'\xce\xfa\xad\xde\x1e\x0b\xb0\x0a'))) # wrong address - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_chrysler.py b/opendbc_repo/opendbc/safety/tests/test_chrysler.py deleted file mode 100755 index 854c2f5f73..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_chrysler.py +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.chrysler.values import ChryslerSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - - -class TestChryslerSafety(common.PandaCarSafetyTest, common.MotorTorqueSteeringSafetyTest): - TX_MSGS = [[0x23B, 0], [0x292, 0], [0x2A6, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0x292,)} - FWD_BLACKLISTED_ADDRS = {2: [0x292, 0x2A6]} - - MAX_RATE_UP = 3 - MAX_RATE_DOWN = 3 - MAX_TORQUE = 261 - MAX_RT_DELTA = 112 - RT_INTERVAL = 250000 - MAX_TORQUE_ERROR = 80 - - LKAS_ACTIVE_VALUE = 1 - - DAS_BUS = 0 - - def setUp(self): - self.packer = CANPackerPanda("chrysler_pacifica_2017_hybrid_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.chrysler, 0) - self.safety.init_tests() - - def _button_msg(self, cancel=False, resume=False): - values = {"ACC_Cancel": cancel, "ACC_Resume": resume} - return self.packer.make_can_msg_panda("CRUISE_BUTTONS", self.DAS_BUS, values) - - def _pcm_status_msg(self, enable): - values = {"ACC_ACTIVE": enable} - return self.packer.make_can_msg_panda("DAS_3", self.DAS_BUS, values) - - def _speed_msg(self, speed): - values = {"SPEED_LEFT": speed, "SPEED_RIGHT": speed} - return self.packer.make_can_msg_panda("SPEED_1", 0, values) - - def _user_gas_msg(self, gas): - values = {"Accelerator_Position": gas} - return self.packer.make_can_msg_panda("ECM_5", 0, values) - - def _user_brake_msg(self, brake): - values = {"Brake_Pedal_State": 1 if brake else 0} - return self.packer.make_can_msg_panda("ESP_1", 0, values) - - def _torque_meas_msg(self, torque): - values = {"EPS_TORQUE_MOTOR": torque} - return self.packer.make_can_msg_panda("EPS_2", 0, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"STEERING_TORQUE": torque, "LKAS_CONTROL_BIT": self.LKAS_ACTIVE_VALUE if steer_req else 0} - return self.packer.make_can_msg_panda("LKAS_COMMAND", 0, values) - - def test_buttons(self): - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - - # resume only while controls allowed - self.assertEqual(controls_allowed, self._tx(self._button_msg(resume=True))) - - # can always cancel - self.assertTrue(self._tx(self._button_msg(cancel=True))) - - # only one button at a time - self.assertFalse(self._tx(self._button_msg(cancel=True, resume=True))) - self.assertFalse(self._tx(self._button_msg(cancel=False, resume=False))) - - -class TestChryslerRamDTSafety(TestChryslerSafety): - TX_MSGS = [[0xB1, 2], [0xA6, 0], [0xFA, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0xA6,)} - FWD_BLACKLISTED_ADDRS = {2: [0xA6, 0xFA]} - - MAX_RATE_UP = 6 - MAX_RATE_DOWN = 6 - MAX_TORQUE = 350 - - DAS_BUS = 2 - - LKAS_ACTIVE_VALUE = 2 - - def setUp(self): - self.packer = CANPackerPanda("chrysler_ram_dt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.chrysler, ChryslerSafetyFlags.RAM_DT) - self.safety.init_tests() - - def _speed_msg(self, speed): - values = {"Vehicle_Speed": speed} - return self.packer.make_can_msg_panda("ESP_8", 0, values) - -class TestChryslerRamHDSafety(TestChryslerSafety): - TX_MSGS = [[0x275, 0], [0x276, 0], [0x23A, 2]] - RELAY_MALFUNCTION_ADDRS = {0: (0x276,)} - FWD_BLACKLISTED_ADDRS = {2: [0x275, 0x276]} - - MAX_TORQUE = 361 - MAX_RATE_UP = 14 - MAX_RATE_DOWN = 14 - MAX_RT_DELTA = 182 - - DAS_BUS = 2 - - LKAS_ACTIVE_VALUE = 2 - - def setUp(self): - self.packer = CANPackerPanda("chrysler_ram_hd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.chrysler, ChryslerSafetyFlags.RAM_HD) - self.safety.init_tests() - - def _speed_msg(self, speed): - values = {"Vehicle_Speed": speed} - return self.packer.make_can_msg_panda("ESP_8", 0, values) - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_defaults.py b/opendbc_repo/opendbc/safety/tests/test_defaults.py deleted file mode 100755 index e44a1cd0a4..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_defaults.py +++ /dev/null @@ -1,74 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -import opendbc.safety.tests.common as common -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py - - -class TestDefaultRxHookBase(common.PandaSafetyTest): - FWD_BUS_LOOKUP = {} - - def test_rx_hook(self): - # default rx hook allows all msgs - for bus in range(4): - for addr in self.SCANNED_ADDRS: - self.assertTrue(self._rx(common.make_msg(bus, addr, 8)), f"failed RX {addr=}") - - -class TestNoOutput(TestDefaultRxHookBase): - TX_MSGS = [] - - def setUp(self): - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.noOutput, 0) - self.safety.init_tests() - - -class TestSilent(TestNoOutput): - """SILENT uses same hooks as NOOUTPUT""" - - def setUp(self): - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.silent, 0) - self.safety.init_tests() - - -class TestAllOutput(TestDefaultRxHookBase): - # Allow all messages - TX_MSGS = [[addr, bus] for addr in common.PandaSafetyTest.SCANNED_ADDRS - for bus in range(4)] - - def setUp(self): - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.allOutput, 0) - self.safety.init_tests() - - def test_spam_can_buses(self): - # asserts tx allowed for all scanned addrs - for bus in range(4): - for addr in self.SCANNED_ADDRS: - should_tx = [addr, bus] in self.TX_MSGS - self.assertEqual(should_tx, self._tx(common.make_msg(bus, addr, 8)), f"allowed TX {addr=} {bus=}") - - def test_default_controls_not_allowed(self): - # controls always allowed - self.assertTrue(self.safety.get_controls_allowed()) - - def test_tx_hook_on_wrong_safety_mode(self): - # No point, since we allow all messages - pass - - -class TestAllOutputPassthrough(TestAllOutput): - FWD_BLACKLISTED_ADDRS = {} - FWD_BUS_LOOKUP = {0: 2, 2: 0} - - def setUp(self): - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.allOutput, 1) - self.safety.init_tests() - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_elm327.py b/opendbc_repo/opendbc/safety/tests/test_elm327.py deleted file mode 100755 index a499a051c4..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_elm327.py +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -import opendbc.safety.tests.common as common -from opendbc.car.structs import CarParams -from opendbc.safety import DLC_TO_LEN -from opendbc.safety.tests.libsafety import libsafety_py -from opendbc.safety.tests.test_defaults import TestDefaultRxHookBase - -GM_CAMERA_DIAG_ADDR = 0x24B - - -class TestElm327(TestDefaultRxHookBase): - TX_MSGS = [[addr, bus] for addr in [GM_CAMERA_DIAG_ADDR, *range(0x600, 0x800), - *range(0x18DA00F1, 0x18DB00F1, 0x100), # 29-bit UDS physical addressing - *[0x18DB33F1], # 29-bit UDS functional address - ] for bus in range(4)] - FWD_BUS_LOOKUP = {} - - def setUp(self): - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.elm327, 0) - self.safety.init_tests() - - def test_tx_hook(self): - # ensure we can transmit arbitrary data on allowed addresses - for bus in range(4): - for addr in self.SCANNED_ADDRS: - should_tx = [addr, bus] in self.TX_MSGS - self.assertEqual(should_tx, self._tx(common.make_msg(bus, addr, 8))) - - # ELM only allows 8 byte UDS/KWP messages under ISO 15765-4 - for msg_len in DLC_TO_LEN: - should_tx = msg_len == 8 - self.assertEqual(should_tx, self._tx(common.make_msg(0, 0x700, msg_len))) - - # TODO: perform this check for all addresses - # 4 to 15 are reserved ISO-TP frame types (https://en.wikipedia.org/wiki/ISO_15765-2) - for byte in range(0xff): - should_tx = (byte >> 4) <= 3 - self.assertEqual(should_tx, self._tx(common.make_msg(0, GM_CAMERA_DIAG_ADDR, dat=bytes([byte] * 8)))) - - def test_tx_hook_on_wrong_safety_mode(self): - # No point, since we allow many diagnostic addresses - pass - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_ford.py b/opendbc_repo/opendbc/safety/tests/test_ford.py deleted file mode 100755 index 744112fd66..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_ford.py +++ /dev/null @@ -1,514 +0,0 @@ -#!/usr/bin/env python3 -import numpy as np -import random -import unittest - -import opendbc.safety.tests.common as common -from opendbc.car.ford.carcontroller import MAX_LATERAL_ACCEL -from opendbc.car.ford.values import FordSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -from opendbc.safety.tests.common import CANPackerPanda - -MSG_EngBrakeData = 0x165 # RX from PCM, for driver brake pedal and cruise state -MSG_EngVehicleSpThrottle = 0x204 # RX from PCM, for driver throttle input -MSG_BrakeSysFeatures = 0x415 # RX from ABS, for vehicle speed -MSG_EngVehicleSpThrottle2 = 0x202 # RX from PCM, for second vehicle speed -MSG_Yaw_Data_FD1 = 0x91 # RX from RCM, for yaw rate -MSG_Steering_Data_FD1 = 0x083 # TX by OP, various driver switches and LKAS/CC buttons -MSG_ACCDATA = 0x186 # TX by OP, ACC controls -MSG_ACCDATA_3 = 0x18A # TX by OP, ACC/TJA user interface -MSG_Lane_Assist_Data1 = 0x3CA # TX by OP, Lane Keep Assist -MSG_LateralMotionControl = 0x3D3 # TX by OP, Lateral Control message -MSG_LateralMotionControl2 = 0x3D6 # TX by OP, alternate Lateral Control message -MSG_IPMA_Data = 0x3D8 # TX by OP, IPMA and LKAS user interface - - -def checksum(msg): - addr, dat, bus = msg - ret = bytearray(dat) - - if addr == MSG_Yaw_Data_FD1: - chksum = dat[0] + dat[1] # VehRol_W_Actl - chksum += dat[2] + dat[3] # VehYaw_W_Actl - chksum += dat[5] # VehRollYaw_No_Cnt - chksum += dat[6] >> 6 # VehRolWActl_D_Qf - chksum += (dat[6] >> 4) & 0x3 # VehYawWActl_D_Qf - chksum = 0xff - (chksum & 0xff) - ret[4] = chksum - - elif addr == MSG_BrakeSysFeatures: - chksum = dat[0] + dat[1] # Veh_V_ActlBrk - chksum += (dat[2] >> 2) & 0xf # VehVActlBrk_No_Cnt - chksum += dat[2] >> 6 # VehVActlBrk_D_Qf - chksum = 0xff - (chksum & 0xff) - ret[3] = chksum - - elif addr == MSG_EngVehicleSpThrottle2: - chksum = (dat[2] >> 3) & 0xf # VehVActlEng_No_Cnt - chksum += (dat[4] >> 5) & 0x3 # VehVActlEng_D_Qf - chksum += dat[6] + dat[7] # Veh_V_ActlEng - chksum = 0xff - (chksum & 0xff) - ret[1] = chksum - - return addr, ret, bus - - -class Buttons: - CANCEL = 0 - RESUME = 1 - TJA_TOGGLE = 2 - - -# Ford safety has four different configurations tested here: -# * CAN with openpilot longitudinal -# * CAN FD with stock longitudinal -# * CAN FD with openpilot longitudinal - -class TestFordSafetyBase(common.PandaCarSafetyTest): - STANDSTILL_THRESHOLD = 1 - RELAY_MALFUNCTION_ADDRS = {0: (MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, - MSG_LateralMotionControl2, MSG_IPMA_Data)} - - FWD_BLACKLISTED_ADDRS = {2: [MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, - MSG_LateralMotionControl2, MSG_IPMA_Data]} - - # Max allowed delta between car speeds - MAX_SPEED_DELTA = 2.0 # m/s - - STEER_MESSAGE = 0 - - # Curvature control limits - DEG_TO_CAN = 50000 # 1 / (2e-5) rad to can - MAX_CURVATURE = 0.02 - MAX_CURVATURE_ERROR = 0.002 - CURVATURE_ERROR_MIN_SPEED = 10.0 # m/s - - ANGLE_RATE_BP = [5., 25., 25.] - ANGLE_RATE_UP = [0.00045, 0.0001, 0.0001] # windup limit - ANGLE_RATE_DOWN = [0.00045, 0.00015, 0.00015] # unwind limit - - cnt_speed = 0 - cnt_speed_2 = 0 - cnt_yaw_rate = 0 - - packer: CANPackerPanda - safety: libsafety_py.Panda - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestFordSafetyBase": - raise unittest.SkipTest - - def get_canfd_curvature_limits(self, speed): - # Round it in accordance with the safety - curvature_accel_limit = MAX_LATERAL_ACCEL / (max(speed, 1) ** 2) - curvature_accel_limit_lower = int(curvature_accel_limit * self.DEG_TO_CAN - 1) / self.DEG_TO_CAN - curvature_accel_limit_upper = int(curvature_accel_limit * self.DEG_TO_CAN + 1) / self.DEG_TO_CAN - return curvature_accel_limit_lower, curvature_accel_limit_upper - - def _set_prev_desired_angle(self, t): - t = round(t * self.DEG_TO_CAN) - self.safety.set_desired_angle_last(t) - - def _reset_curvature_measurement(self, curvature, speed): - for _ in range(6): - self._rx(self._speed_msg(speed)) - self._rx(self._yaw_rate_msg(curvature, speed)) - - # Driver brake pedal - def _user_brake_msg(self, brake: bool): - # brake pedal and cruise state share same message, so we have to send - # the other signal too - enable = self.safety.get_controls_allowed() - values = { - "BpedDrvAppl_D_Actl": 2 if brake else 1, - "CcStat_D_Actl": 5 if enable else 0, - } - return self.packer.make_can_msg_panda("EngBrakeData", 0, values) - - # ABS vehicle speed - def _speed_msg(self, speed: float, quality_flag=True): - values = {"Veh_V_ActlBrk": speed * 3.6, "VehVActlBrk_D_Qf": 3 if quality_flag else 0, "VehVActlBrk_No_Cnt": self.cnt_speed % 16} - self.__class__.cnt_speed += 1 - return self.packer.make_can_msg_panda("BrakeSysFeatures", 0, values, fix_checksum=checksum) - - # PCM vehicle speed - def _speed_msg_2(self, speed: float, quality_flag=True): - values = {"Veh_V_ActlEng": speed * 3.6, "VehVActlEng_D_Qf": 3 if quality_flag else 0, "VehVActlEng_No_Cnt": self.cnt_speed_2 % 16} - self.__class__.cnt_speed_2 += 1 - return self.packer.make_can_msg_panda("EngVehicleSpThrottle2", 0, values, fix_checksum=checksum) - - # Standstill state - def _vehicle_moving_msg(self, speed: float): - values = {"VehStop_D_Stat": 1 if speed <= self.STANDSTILL_THRESHOLD else random.choice((0, 2, 3))} - return self.packer.make_can_msg_panda("DesiredTorqBrk", 0, values) - - # Current curvature - def _yaw_rate_msg(self, curvature: float, speed: float, quality_flag=True): - values = {"VehYaw_W_Actl": curvature * speed, "VehYawWActl_D_Qf": 3 if quality_flag else 0, - "VehRollYaw_No_Cnt": self.cnt_yaw_rate % 256} - self.__class__.cnt_yaw_rate += 1 - return self.packer.make_can_msg_panda("Yaw_Data_FD1", 0, values, fix_checksum=checksum) - - # Drive throttle input - def _user_gas_msg(self, gas: float): - values = {"ApedPos_Pc_ActlArb": gas} - return self.packer.make_can_msg_panda("EngVehicleSpThrottle", 0, values) - - # Cruise status - def _pcm_status_msg(self, enable: bool): - # brake pedal and cruise state share same message, so we have to send - # the other signal too - brake = self.safety.get_brake_pressed_prev() - values = { - "BpedDrvAppl_D_Actl": 2 if brake else 1, - "CcStat_D_Actl": 5 if enable else 0, - } - return self.packer.make_can_msg_panda("EngBrakeData", 0, values) - - # LKAS command - def _lkas_command_msg(self, action: int): - values = { - "LkaActvStats_D2_Req": action, - } - return self.packer.make_can_msg_panda("Lane_Assist_Data1", 0, values) - - # LCA command - def _lat_ctl_msg(self, enabled: bool, path_offset: float, path_angle: float, curvature: float, curvature_rate: float): - if self.STEER_MESSAGE == MSG_LateralMotionControl: - values = { - "LatCtl_D_Rq": 1 if enabled else 0, - "LatCtlPathOffst_L_Actl": path_offset, # Path offset [-5.12|5.11] meter - "LatCtlPath_An_Actl": path_angle, # Path angle [-0.5|0.5235] radians - "LatCtlCurv_NoRate_Actl": curvature_rate, # Curvature rate [-0.001024|0.00102375] 1/meter^2 - "LatCtlCurv_No_Actl": curvature, # Curvature [-0.02|0.02094] 1/meter - } - return self.packer.make_can_msg_panda("LateralMotionControl", 0, values) - elif self.STEER_MESSAGE == MSG_LateralMotionControl2: - values = { - "LatCtl_D2_Rq": 1 if enabled else 0, - "LatCtlPathOffst_L_Actl": path_offset, # Path offset [-5.12|5.11] meter - "LatCtlPath_An_Actl": path_angle, # Path angle [-0.5|0.5235] radians - "LatCtlCrv_NoRate2_Actl": curvature_rate, # Curvature rate [-0.001024|0.001023] 1/meter^2 - "LatCtlCurv_No_Actl": curvature, # Curvature [-0.02|0.02094] 1/meter - } - return self.packer.make_can_msg_panda("LateralMotionControl2", 0, values) - - # Cruise control buttons - def _acc_button_msg(self, button: int, bus: int): - values = { - "CcAslButtnCnclPress": 1 if button == Buttons.CANCEL else 0, - "CcAsllButtnResPress": 1 if button == Buttons.RESUME else 0, - "TjaButtnOnOffPress": 1 if button == Buttons.TJA_TOGGLE else 0, - } - return self.packer.make_can_msg_panda("Steering_Data_FD1", bus, values) - - def test_rx_hook(self): - # checksum, counter, and quality flag checks - for quality_flag in [True, False]: - for msg in ["speed", "speed_2", "yaw"]: - self.safety.set_controls_allowed(True) - # send multiple times to verify counter checks - for _ in range(10): - if msg == "speed": - to_push = self._speed_msg(0, quality_flag=quality_flag) - elif msg == "speed_2": - to_push = self._speed_msg_2(0, quality_flag=quality_flag) - elif msg == "yaw": - to_push = self._yaw_rate_msg(0, 0, quality_flag=quality_flag) - - self.assertEqual(quality_flag, self._rx(to_push)) - self.assertEqual(quality_flag, self.safety.get_controls_allowed()) - - # Mess with checksum to make it fail, checksum is not checked for 2nd speed - to_push[0].data[3] = 0 # Speed checksum & half of yaw signal - should_rx = msg == "speed_2" and quality_flag - self.assertEqual(should_rx, self._rx(to_push)) - self.assertEqual(should_rx, self.safety.get_controls_allowed()) - - def test_rx_hook_speed_mismatch(self): - # Ford relies on speed for driver curvature limiting, so it checks two sources - for speed in np.arange(0, 40, 0.5): - for speed_delta in np.arange(-5, 5, 0.1): - speed_2 = round(max(speed + speed_delta, 0), 1) - # Set controls allowed in between rx since first message can reset it - self._rx(self._speed_msg(speed)) - self.safety.set_controls_allowed(True) - self._rx(self._speed_msg_2(speed_2)) - - within_delta = abs(speed - speed_2) <= self.MAX_SPEED_DELTA - self.assertEqual(self.safety.get_controls_allowed(), within_delta) - - def test_angle_measurements(self): - """Tests rx hook correctly parses the curvature measurement from the vehicle speed and yaw rate""" - for speed in np.arange(0.5, 40, 0.5): - for curvature in np.arange(0, self.MAX_CURVATURE * 2, 2e-3): - self._rx(self._speed_msg(speed)) - for c in (curvature, -curvature, 0, 0, 0, 0): - self._rx(self._yaw_rate_msg(c, speed)) - - self.assertEqual(self.safety.get_angle_meas_min(), round(-curvature * self.DEG_TO_CAN)) - self.assertEqual(self.safety.get_angle_meas_max(), round(curvature * self.DEG_TO_CAN)) - - self._rx(self._yaw_rate_msg(0, speed)) - self.assertEqual(self.safety.get_angle_meas_min(), round(-curvature * self.DEG_TO_CAN)) - self.assertEqual(self.safety.get_angle_meas_max(), 0) - - self._rx(self._yaw_rate_msg(0, speed)) - self.assertEqual(self.safety.get_angle_meas_min(), 0) - self.assertEqual(self.safety.get_angle_meas_max(), 0) - - def test_max_lateral_acceleration(self): - # Ford CAN FD can achieve a higher max lateral acceleration than CAN so we limit curvature based on speed - for speed in np.arange(0, 40, 0.5): - # Clip so we test curvature limiting at low speed due to low max curvature - _, curvature_accel_limit_upper = self.get_canfd_curvature_limits(speed) - curvature_accel_limit_upper = np.clip(curvature_accel_limit_upper, -self.MAX_CURVATURE, self.MAX_CURVATURE) - - for sign in (-1, 1): - # Test above and below the lateral by 20%, max is clipped since - # max curvature at low speed is higher than the signal max - for curvature in np.arange(curvature_accel_limit_upper * 0.8, min(curvature_accel_limit_upper * 1.2, self.MAX_CURVATURE), 1 / self.DEG_TO_CAN): - curvature = sign * round(curvature * self.DEG_TO_CAN) / self.DEG_TO_CAN # fix np rounding errors - self.safety.set_controls_allowed(True) - self._set_prev_desired_angle(curvature) - self._reset_curvature_measurement(curvature, speed) - - should_tx = abs(curvature) <= curvature_accel_limit_upper - self.assertEqual(should_tx, self._tx(self._lat_ctl_msg(True, 0, 0, curvature, 0))) - - def test_steer_allowed(self): - path_offsets = np.arange(-5.12, 5.11, 2.5).round() - path_angles = np.arange(-0.5, 0.5235, 0.25).round(1) - curvature_rates = np.arange(-0.001024, 0.00102375, 0.001).round(3) - curvatures = np.arange(-0.02, 0.02094, 0.01).round(2) - - for speed in (self.CURVATURE_ERROR_MIN_SPEED - 1, - self.CURVATURE_ERROR_MIN_SPEED + 1): - _, curvature_accel_limit_upper = self.get_canfd_curvature_limits(speed) - for controls_allowed in (True, False): - for steer_control_enabled in (True, False): - for path_offset in path_offsets: - for path_angle in path_angles: - for curvature_rate in curvature_rates: - for curvature in curvatures: - self.safety.set_controls_allowed(controls_allowed) - self._set_prev_desired_angle(curvature) - self._reset_curvature_measurement(curvature, speed) - - should_tx = path_offset == 0 and path_angle == 0 and curvature_rate == 0 - # when request bit is 0, only allow curvature of 0 since the signal range - # is not large enough to enforce it tracking measured - should_tx = should_tx and (controls_allowed if steer_control_enabled else curvature == 0) - - # Only CAN FD has the max lateral acceleration limit - if self.STEER_MESSAGE == MSG_LateralMotionControl2: - should_tx = should_tx and abs(curvature) <= curvature_accel_limit_upper - - with self.subTest(controls_allowed=controls_allowed, steer_control_enabled=steer_control_enabled, - path_offset=path_offset, path_angle=path_angle, curvature_rate=curvature_rate, - curvature=curvature): - self.assertEqual(should_tx, self._tx(self._lat_ctl_msg(steer_control_enabled, path_offset, path_angle, curvature, curvature_rate))) - - def test_curvature_rate_limits(self): - """ - When the curvature error is exceeded, commanded curvature must start moving towards meas respecting rate limits. - Since panda allows higher rate limits to avoid false positives, we need to allow a lower rate to move towards meas. - """ - self.safety.set_controls_allowed(True) - # safety fudges the speed (1 m/s) and rate limits (1 CAN unit) to avoid false positives - small_curvature = 1 / self.DEG_TO_CAN # significant small amount of curvature to cross boundary - - for speed in np.arange(0, 40, 0.5): - curvature_accel_limit_lower, curvature_accel_limit_upper = self.get_canfd_curvature_limits(speed) - limit_command = speed > self.CURVATURE_ERROR_MIN_SPEED - # ensure our limits match the safety's rounded limits - max_delta_up = int(np.interp(speed - 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_UP) * self.DEG_TO_CAN + 1) / self.DEG_TO_CAN - max_delta_up_lower = int(np.interp(speed + 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_UP) * self.DEG_TO_CAN - 1) / self.DEG_TO_CAN - - max_delta_down = int(np.interp(speed - 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_DOWN) * self.DEG_TO_CAN + 1 + 1e-3) / self.DEG_TO_CAN - max_delta_down_lower = int(np.interp(speed + 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_DOWN) * self.DEG_TO_CAN - 1 + 1e-3) / self.DEG_TO_CAN - - up_cases = (self.MAX_CURVATURE_ERROR * 2, [ - (not limit_command, 0, 0), - (not limit_command, 0, max_delta_up_lower - small_curvature), - (True, 1e-9, max_delta_down), # TODO: safety should not allow down limits at 0 - (not limit_command, 1e-9, max_delta_up_lower), # TODO: safety should not allow down limits at 0 - (True, 0, max_delta_up_lower), - (True, 0, max_delta_up), - (False, 0, max_delta_up + small_curvature), - # stay at boundary limit - (True, self.MAX_CURVATURE_ERROR - small_curvature, self.MAX_CURVATURE_ERROR - small_curvature), - # 1 unit below boundary limit - (not limit_command, self.MAX_CURVATURE_ERROR - small_curvature * 2, self.MAX_CURVATURE_ERROR - small_curvature * 2), - # shouldn't allow command to move outside the boundary limit if last was inside - (not limit_command, self.MAX_CURVATURE_ERROR - small_curvature, self.MAX_CURVATURE_ERROR - small_curvature * 2), - ]) - - down_cases = (self.MAX_CURVATURE - self.MAX_CURVATURE_ERROR * 2, [ - (not limit_command, self.MAX_CURVATURE, self.MAX_CURVATURE), - (not limit_command, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down_lower + small_curvature), - (True, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down_lower), - (True, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down), - (False, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down - small_curvature), - ]) - - for sign in (-1, 1): - for angle_meas, cases in (up_cases, down_cases): - self._reset_curvature_measurement(sign * angle_meas, speed) - for should_tx, initial_curvature, desired_curvature in cases: - - # Only CAN FD has the max lateral acceleration limit - if self.STEER_MESSAGE == MSG_LateralMotionControl2: - if should_tx: - # can not send if the curvature is above the max lateral acceleration - should_tx = should_tx and abs(desired_curvature) <= curvature_accel_limit_upper - else: - # if desired curvature violates driver curvature error, it can only send if - # the curvature is being limited by max lateral acceleration - should_tx = should_tx or curvature_accel_limit_lower <= abs(desired_curvature) <= curvature_accel_limit_upper - - # small curvature ensures we're using up limits. at 0, safety allows down limits to allow to account for rounding errors - curvature_offset = small_curvature if initial_curvature == 0 else 0 - self._set_prev_desired_angle(sign * (curvature_offset + initial_curvature)) - self.assertEqual(should_tx, self._tx(self._lat_ctl_msg(True, 0, 0, sign * (curvature_offset + desired_curvature), 0))) - - def test_prevent_lkas_action(self): - self.safety.set_controls_allowed(1) - self.assertFalse(self._tx(self._lkas_command_msg(1))) - - self.safety.set_controls_allowed(0) - self.assertFalse(self._tx(self._lkas_command_msg(1))) - - def test_acc_buttons(self): - for allowed in (0, 1): - self.safety.set_controls_allowed(allowed) - for enabled in (True, False): - self._rx(self._pcm_status_msg(enabled)) - self.assertTrue(self._tx(self._acc_button_msg(Buttons.TJA_TOGGLE, 2))) - - for allowed in (0, 1): - self.safety.set_controls_allowed(allowed) - for bus in (0, 2): - self.assertEqual(allowed, self._tx(self._acc_button_msg(Buttons.RESUME, bus))) - - for enabled in (True, False): - self._rx(self._pcm_status_msg(enabled)) - for bus in (0, 2): - self.assertEqual(enabled, self._tx(self._acc_button_msg(Buttons.CANCEL, bus))) - - -class TestFordCANFDStockSafety(TestFordSafetyBase): - STEER_MESSAGE = MSG_LateralMotionControl2 - - TX_MSGS = [ - [MSG_Steering_Data_FD1, 0], [MSG_Steering_Data_FD1, 2], [MSG_ACCDATA_3, 0], [MSG_Lane_Assist_Data1, 0], - [MSG_LateralMotionControl2, 0], [MSG_IPMA_Data, 0], - ] - - def setUp(self): - self.packer = CANPackerPanda("ford_lincoln_base_pt") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.ford, FordSafetyFlags.CANFD) - self.safety.init_tests() - - -class TestFordLongitudinalSafetyBase(TestFordSafetyBase): - RELAY_MALFUNCTION_ADDRS = {0: (MSG_ACCDATA, MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, - MSG_LateralMotionControl2, MSG_IPMA_Data)} - - FWD_BLACKLISTED_ADDRS = {2: [MSG_ACCDATA, MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, - MSG_LateralMotionControl2, MSG_IPMA_Data]} - - MAX_ACCEL = 2.0 # accel is used for brakes, but openpilot can set positive values - MIN_ACCEL = -3.5 - INACTIVE_ACCEL = 0.0 - - MAX_GAS = 2.0 - MIN_GAS = -0.5 - INACTIVE_GAS = -5.0 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestFordLongitudinalSafetyBase": - raise unittest.SkipTest - - # ACC command - def _acc_command_msg(self, gas: float, brake: float, brake_actuation: bool, cmbb_deny: bool = False): - values = { - "AccPrpl_A_Rq": gas, # [-5|5.23] m/s^2 - "AccPrpl_A_Pred": gas, # [-5|5.23] m/s^2 - "AccBrkTot_A_Rq": brake, # [-20|11.9449] m/s^2 - "AccBrkPrchg_B_Rq": 1 if brake_actuation else 0, # Pre-charge brake request: 0=No, 1=Yes - "AccBrkDecel_B_Rq": 1 if brake_actuation else 0, # Deceleration request: 0=Inactive, 1=Active - "CmbbDeny_B_Actl": 1 if cmbb_deny else 0, # [0|1] deny AEB actuation - } - return self.packer.make_can_msg_panda("ACCDATA", 0, values) - - def test_stock_aeb(self): - # Test that CmbbDeny_B_Actl is never 1, it prevents the ABS module from actuating AEB requests from ACCDATA_2 - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - for cmbb_deny in (True, False): - should_tx = not cmbb_deny - self.assertEqual(should_tx, self._tx(self._acc_command_msg(self.INACTIVE_GAS, self.INACTIVE_ACCEL, controls_allowed, cmbb_deny))) - should_tx = controls_allowed and not cmbb_deny - self.assertEqual(should_tx, self._tx(self._acc_command_msg(self.MAX_GAS, self.MAX_ACCEL, controls_allowed, cmbb_deny))) - - def test_gas_safety_check(self): - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - for gas in np.concatenate((np.arange(self.MIN_GAS - 2, self.MAX_GAS + 2, 0.05), [self.INACTIVE_GAS])): - gas = round(gas, 2) # floats might not hit exact boundary conditions without rounding - should_tx = (controls_allowed and self.MIN_GAS <= gas <= self.MAX_GAS) or gas == self.INACTIVE_GAS - self.assertEqual(should_tx, self._tx(self._acc_command_msg(gas, self.INACTIVE_ACCEL, controls_allowed))) - - def test_brake_safety_check(self): - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - for brake_actuation in (True, False): - for brake in np.arange(self.MIN_ACCEL - 2, self.MAX_ACCEL + 2, 0.05): - brake = round(brake, 2) # floats might not hit exact boundary conditions without rounding - should_tx = (controls_allowed and self.MIN_ACCEL <= brake <= self.MAX_ACCEL) or brake == self.INACTIVE_ACCEL - should_tx = should_tx and (controls_allowed or not brake_actuation) - self.assertEqual(should_tx, self._tx(self._acc_command_msg(self.INACTIVE_GAS, brake, brake_actuation))) - - -class TestFordLongitudinalSafety(TestFordLongitudinalSafetyBase): - STEER_MESSAGE = MSG_LateralMotionControl - - TX_MSGS = [ - [MSG_Steering_Data_FD1, 0], [MSG_Steering_Data_FD1, 2], [MSG_ACCDATA, 0], [MSG_ACCDATA_3, 0], [MSG_Lane_Assist_Data1, 0], - [MSG_LateralMotionControl, 0], [MSG_IPMA_Data, 0], - ] - - def setUp(self): - self.packer = CANPackerPanda("ford_lincoln_base_pt") - self.safety = libsafety_py.libsafety - # Make sure we enforce long safety even without long flag for CAN - self.safety.set_safety_hooks(CarParams.SafetyModel.ford, 0) - self.safety.init_tests() - - def test_max_lateral_acceleration(self): - # CAN does not limit curvature from lateral acceleration - pass - - -class TestFordCANFDLongitudinalSafety(TestFordLongitudinalSafetyBase): - STEER_MESSAGE = MSG_LateralMotionControl2 - - TX_MSGS = [ - [MSG_Steering_Data_FD1, 0], [MSG_Steering_Data_FD1, 2], [MSG_ACCDATA, 0], [MSG_ACCDATA_3, 0], [MSG_Lane_Assist_Data1, 0], - [MSG_LateralMotionControl2, 0], [MSG_IPMA_Data, 0], - ] - - def setUp(self): - self.packer = CANPackerPanda("ford_lincoln_base_pt") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.ford, FordSafetyFlags.LONG_CONTROL | FordSafetyFlags.CANFD) - self.safety.init_tests() - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_gm.py b/opendbc_repo/opendbc/safety/tests/test_gm.py deleted file mode 100755 index 988be81a9c..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_gm.py +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.gm.values import GMSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - - -class Buttons: - UNPRESS = 1 - RES_ACCEL = 2 - DECEL_SET = 3 - CANCEL = 6 - - -class GmLongitudinalBase(common.PandaCarSafetyTest, common.LongitudinalGasBrakeSafetyTest): - # pylint: disable=no-member,abstract-method - - RELAY_MALFUNCTION_ADDRS = {0: (0x180, 0x2CB)} # ASCMLKASteeringCmd, ASCMGasRegenCmd - - MAX_POSSIBLE_BRAKE = 2 ** 12 - MAX_BRAKE = 400 - - MAX_POSSIBLE_GAS = 2 ** 12 - - PCM_CRUISE = False # openpilot can control the PCM state if longitudinal - - def _send_brake_msg(self, brake): - values = {"FrictionBrakeCmd": -brake} - return self.packer_chassis.make_can_msg_panda("EBCMFrictionBrakeCmd", self.BRAKE_BUS, values) - - def _send_gas_msg(self, gas): - values = {"GasRegenCmd": gas} - return self.packer.make_can_msg_panda("ASCMGasRegenCmd", 0, values) - - # override these tests from PandaCarSafetyTest, GM longitudinal uses button enable - def _pcm_status_msg(self, enable): - raise NotImplementedError - - def test_disable_control_allowed_from_cruise(self): - pass - - def test_enable_control_allowed_from_cruise(self): - pass - - def test_cruise_engaged_prev(self): - pass - - def test_set_resume_buttons(self): - """ - SET and RESUME enter controls allowed on their falling and rising edges, respectively. - """ - for btn_prev in range(8): - for btn_cur in range(8): - with self.subTest(btn_prev=btn_prev, btn_cur=btn_cur): - self._rx(self._button_msg(btn_prev)) - self.safety.set_controls_allowed(0) - for _ in range(10): - self._rx(self._button_msg(btn_cur)) - - should_enable = btn_cur != Buttons.DECEL_SET and btn_prev == Buttons.DECEL_SET - should_enable = should_enable or (btn_cur == Buttons.RES_ACCEL and btn_prev != Buttons.RES_ACCEL) - should_enable = should_enable and btn_cur != Buttons.CANCEL - self.assertEqual(should_enable, self.safety.get_controls_allowed()) - - def test_cancel_button(self): - self.safety.set_controls_allowed(1) - self._rx(self._button_msg(Buttons.CANCEL)) - self.assertFalse(self.safety.get_controls_allowed()) - - -class TestGmSafetyBase(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): - STANDSTILL_THRESHOLD = 10 * 0.0311 - # Ensures ASCM is off on ASCM cars, and relay is not malfunctioning for camera-ACC cars - RELAY_MALFUNCTION_ADDRS = {0: (0x180,)} # ASCMLKASteeringCmd - BUTTONS_BUS = 0 # rx or tx - BRAKE_BUS = 0 # tx only - - MAX_RATE_UP = 10 - MAX_RATE_DOWN = 15 - MAX_TORQUE = 300 - MAX_RT_DELTA = 128 - RT_INTERVAL = 250000 - DRIVER_TORQUE_ALLOWANCE = 65 - DRIVER_TORQUE_FACTOR = 4 - - PCM_CRUISE = True # openpilot is tied to the PCM state if not longitudinal - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestGmSafetyBase": - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def setUp(self): - self.packer = CANPackerPanda("gm_global_a_powertrain_generated") - self.packer_chassis = CANPackerPanda("gm_global_a_chassis") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.gm, 0) - self.safety.init_tests() - - def _pcm_status_msg(self, enable): - if self.PCM_CRUISE: - values = {"CruiseState": enable} - return self.packer.make_can_msg_panda("AcceleratorPedal2", 0, values) - else: - raise NotImplementedError - - def _speed_msg(self, speed): - values = {"%sWheelSpd" % s: speed for s in ["RL", "RR"]} - return self.packer.make_can_msg_panda("EBCMWheelSpdRear", 0, values) - - def _user_brake_msg(self, brake): - # GM safety has a brake threshold of 8 - values = {"BrakePedalPos": 8 if brake else 0} - return self.packer.make_can_msg_panda("ECMAcceleratorPos", 0, values) - - def _user_regen_msg(self, regen): - values = {"RegenPaddle": 2 if regen else 0} - return self.packer.make_can_msg_panda("EBCMRegenPaddle", 0, values) - - def _user_gas_msg(self, gas): - values = {"AcceleratorPedal2": 1 if gas else 0} - if self.PCM_CRUISE: - # Fill CruiseState with expected value if the safety mode reads cruise state from gas msg - values["CruiseState"] = self.safety.get_controls_allowed() - return self.packer.make_can_msg_panda("AcceleratorPedal2", 0, values) - - def _torque_driver_msg(self, torque): - # Safety tests assume driver torque is an int, use DBC factor - values = {"LKADriverAppldTrq": torque * 0.01} - return self.packer.make_can_msg_panda("PSCMStatus", 0, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"LKASteeringCmd": torque, "LKASteeringCmdActive": steer_req} - return self.packer.make_can_msg_panda("ASCMLKASteeringCmd", 0, values) - - def _button_msg(self, buttons): - values = {"ACCButtons": buttons} - return self.packer.make_can_msg_panda("ASCMSteeringButton", self.BUTTONS_BUS, values) - - -class TestGmAscmSafety(GmLongitudinalBase, TestGmSafetyBase): - TX_MSGS = [[0x180, 0], [0x409, 0], [0x40A, 0], [0x2CB, 0], [0x370, 0], # pt bus - [0xA1, 1], [0x306, 1], [0x308, 1], [0x310, 1], # obs bus - [0x315, 2]] # ch bus - FWD_BLACKLISTED_ADDRS: dict[int, list[int]] = {} - FWD_BUS_LOOKUP: dict[int, int] = {} - BRAKE_BUS = 2 - - MAX_GAS = 3072 - MIN_GAS = 1404 # maximum regen - INACTIVE_GAS = 1404 - - def setUp(self): - self.packer = CANPackerPanda("gm_global_a_powertrain_generated") - self.packer_chassis = CANPackerPanda("gm_global_a_chassis") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.gm, 0) - self.safety.init_tests() - - -class TestGmCameraSafetyBase(TestGmSafetyBase): - - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestGmCameraSafetyBase": - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def _user_brake_msg(self, brake): - values = {"BrakePressed": brake} - return self.packer.make_can_msg_panda("ECMEngineStatus", 0, values) - - -class TestGmCameraSafety(TestGmCameraSafetyBase): - TX_MSGS = [[0x180, 0], # pt bus - [0x184, 2]] # camera bus - FWD_BLACKLISTED_ADDRS = {2: [0x180], 0: [0x184]} # block LKAS message and PSCMStatus - BUTTONS_BUS = 2 # tx only - - def setUp(self): - self.packer = CANPackerPanda("gm_global_a_powertrain_generated") - self.packer_chassis = CANPackerPanda("gm_global_a_chassis") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.gm, GMSafetyFlags.HW_CAM) - self.safety.init_tests() - - def test_buttons(self): - # Only CANCEL button is allowed while cruise is enabled - self.safety.set_controls_allowed(0) - for btn in range(8): - self.assertFalse(self._tx(self._button_msg(btn))) - - self.safety.set_controls_allowed(1) - for btn in range(8): - self.assertFalse(self._tx(self._button_msg(btn))) - - for enabled in (True, False): - self._rx(self._pcm_status_msg(enabled)) - self.assertEqual(enabled, self._tx(self._button_msg(Buttons.CANCEL))) - - -class TestGmCameraLongitudinalSafety(GmLongitudinalBase, TestGmCameraSafetyBase): - TX_MSGS = [[0x180, 0], [0x315, 0], [0x2CB, 0], [0x370, 0], # pt bus - [0x184, 2]] # camera bus - FWD_BLACKLISTED_ADDRS = {2: [0x180, 0x2CB, 0x370, 0x315], 0: [0x184]} # block LKAS, ACC messages and PSCMStatus - BUTTONS_BUS = 0 # rx only - - MAX_GAS = 3400 - MIN_GAS = 1514 # maximum regen - INACTIVE_GAS = 1554 - - def setUp(self): - self.packer = CANPackerPanda("gm_global_a_powertrain_generated") - self.packer_chassis = CANPackerPanda("gm_global_a_chassis") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.gm, GMSafetyFlags.HW_CAM | GMSafetyFlags.HW_CAM_LONG) - self.safety.init_tests() - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_honda.py b/opendbc_repo/opendbc/safety/tests/test_honda.py deleted file mode 100755 index 7585ce2e2a..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_honda.py +++ /dev/null @@ -1,573 +0,0 @@ -#!/usr/bin/env python3 -import unittest -import numpy as np - -from opendbc.car.honda.values import HondaSafetyFlags -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.car.structs import CarParams -from opendbc.safety.tests.common import CANPackerPanda, MAX_WRONG_COUNTERS - -HONDA_N_COMMON_TX_MSGS = [[0xE4, 0], [0x194, 0], [0x1FA, 0], [0x30C, 0], [0x33D, 0]] - -class Btn: - NONE = 0 - MAIN = 1 - CANCEL = 2 - SET = 3 - RESUME = 4 - -HONDA_NIDEC = 0 -HONDA_BOSCH = 1 - - -# Honda safety has several different configurations tested here: -# * Nidec -# * normal (PCM-enable) -# * alt SCM messages (PCM-enable) -# * Bosch -# * Bosch with Longitudinal Support -# * Bosch Radarless -# * Bosch Radarless with Longitudinal Support - - -class HondaButtonEnableBase(common.PandaCarSafetyTest): - # pylint: disable=no-member,abstract-method - - # override these inherited tests since we're using button enable - def test_disable_control_allowed_from_cruise(self): - pass - - def test_enable_control_allowed_from_cruise(self): - pass - - def test_cruise_engaged_prev(self): - pass - - def test_buttons_with_main_off(self): - for btn in (Btn.SET, Btn.RESUME, Btn.CANCEL): - self.safety.set_controls_allowed(1) - self._rx(self._acc_state_msg(False)) - self._rx(self._button_msg(btn, main_on=False)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_set_resume_buttons(self): - """ - Both SET and RES should enter controls allowed on their falling edge. - """ - for main_on in (True, False): - self._rx(self._acc_state_msg(main_on)) - for btn_prev in range(8): - for btn_cur in range(8): - self._rx(self._button_msg(Btn.NONE)) - self.safety.set_controls_allowed(0) - for _ in range(10): - self._rx(self._button_msg(btn_prev)) - self.assertFalse(self.safety.get_controls_allowed()) - - # should enter controls allowed on falling edge and not transitioning to cancel or main - should_enable = (main_on and - btn_cur != btn_prev and - btn_prev in (Btn.RESUME, Btn.SET) and - btn_cur not in (Btn.CANCEL, Btn.MAIN)) - - self._rx(self._button_msg(btn_cur, main_on=main_on)) - self.assertEqual(should_enable, self.safety.get_controls_allowed(), msg=f"{main_on=} {btn_prev=} {btn_cur=}") - - def test_main_cancel_buttons(self): - """ - Both MAIN and CANCEL should exit controls immediately. - """ - for btn in (Btn.MAIN, Btn.CANCEL): - self.safety.set_controls_allowed(1) - self._rx(self._button_msg(btn, main_on=True)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_disengage_on_main(self): - self.safety.set_controls_allowed(1) - self._rx(self._acc_state_msg(True)) - self.assertTrue(self.safety.get_controls_allowed()) - self._rx(self._acc_state_msg(False)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_rx_hook(self): - - # TODO: move this test to common - # checksum checks - for msg in ["btn", "gas", "speed"]: - self.safety.set_controls_allowed(1) - if msg == "btn": - to_push = self._button_msg(Btn.SET) - if msg == "gas": - to_push = self._user_gas_msg(0) - if msg == "speed": - to_push = self._speed_msg(0) - self.assertTrue(self._rx(to_push)) - if msg != "btn": - to_push[0].data[4] = 0 # invalidate checksum - to_push[0].data[5] = 0 - to_push[0].data[6] = 0 - to_push[0].data[7] = 0 - self.assertFalse(self._rx(to_push)) - self.assertFalse(self.safety.get_controls_allowed()) - - # counter - # reset wrong_counters to zero by sending valid messages - for i in range(MAX_WRONG_COUNTERS + 1): - self.__class__.cnt_speed += 1 - self.__class__.cnt_button += 1 - self.__class__.cnt_powertrain_data += 1 - if i < MAX_WRONG_COUNTERS: - self.safety.set_controls_allowed(1) - self._rx(self._button_msg(Btn.SET)) - self._rx(self._speed_msg(0)) - self._rx(self._user_gas_msg(0)) - else: - self.assertFalse(self._rx(self._button_msg(Btn.SET))) - self.assertFalse(self._rx(self._speed_msg(0))) - self.assertFalse(self._rx(self._user_gas_msg(0))) - self.assertFalse(self.safety.get_controls_allowed()) - - # restore counters for future tests with a couple of good messages - for _ in range(2): - self.safety.set_controls_allowed(1) - self._rx(self._button_msg(Btn.SET, main_on=True)) - self._rx(self._speed_msg(0)) - self._rx(self._user_gas_msg(0)) - self._rx(self._button_msg(Btn.SET, main_on=True)) - self.assertTrue(self.safety.get_controls_allowed()) - - -class HondaPcmEnableBase(common.PandaCarSafetyTest): - # pylint: disable=no-member,abstract-method - - def test_buttons(self): - """ - Buttons should only cancel in this configuration, - since our state is tied to the PCM's cruise state. - """ - for controls_allowed in (True, False): - for main_on in (True, False): - # not a valid state - if controls_allowed and not main_on: - continue - - for btn in (Btn.SET, Btn.RESUME, Btn.CANCEL): - self.safety.set_controls_allowed(controls_allowed) - self._rx(self._acc_state_msg(main_on)) - - # btn + none for falling edge - self._rx(self._button_msg(btn, main_on=main_on)) - self._rx(self._button_msg(Btn.NONE, main_on=main_on)) - - if btn == Btn.CANCEL: - self.assertFalse(self.safety.get_controls_allowed()) - else: - self.assertEqual(controls_allowed, self.safety.get_controls_allowed()) - - -class HondaBase(common.PandaCarSafetyTest): - MAX_BRAKE = 255 - PT_BUS: int | None = None # must be set when inherited - STEER_BUS: int | None = None # must be set when inherited - BUTTONS_BUS: int | None = None # must be set when inherited, tx on this bus, rx on PT_BUS - - RELAY_MALFUNCTION_ADDRS = {0: (0xE4, 0x194)} # STEERING_CONTROL - - cnt_speed = 0 - cnt_button = 0 - cnt_brake = 0 - cnt_powertrain_data = 0 - cnt_acc_state = 0 - - @classmethod - def setUpClass(cls): - if cls.__name__.endswith("Base"): - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def _powertrain_data_msg(self, cruise_on=None, brake_pressed=None, gas_pressed=None): - # preserve the state - if cruise_on is None: - # or'd with controls allowed since the tests use it to "enable" cruise - cruise_on = self.safety.get_cruise_engaged_prev() or self.safety.get_controls_allowed() - if brake_pressed is None: - brake_pressed = self.safety.get_brake_pressed_prev() - if gas_pressed is None: - gas_pressed = self.safety.get_gas_pressed_prev() - - values = { - "ACC_STATUS": cruise_on, - "BRAKE_PRESSED": brake_pressed, - "PEDAL_GAS": gas_pressed, - "COUNTER": self.cnt_powertrain_data % 4 - } - self.__class__.cnt_powertrain_data += 1 - return self.packer.make_can_msg_panda("POWERTRAIN_DATA", self.PT_BUS, values) - - def _pcm_status_msg(self, enable): - return self._powertrain_data_msg(cruise_on=enable) - - def _speed_msg(self, speed): - values = {"XMISSION_SPEED": speed, "COUNTER": self.cnt_speed % 4} - self.__class__.cnt_speed += 1 - return self.packer.make_can_msg_panda("ENGINE_DATA", self.PT_BUS, values) - - def _acc_state_msg(self, main_on): - values = {"MAIN_ON": main_on, "COUNTER": self.cnt_acc_state % 4} - self.__class__.cnt_acc_state += 1 - return self.packer.make_can_msg_panda("SCM_FEEDBACK", self.PT_BUS, values) - - def _button_msg(self, buttons, main_on=False, bus=None): - bus = self.PT_BUS if bus is None else bus - values = {"CRUISE_BUTTONS": buttons, "COUNTER": self.cnt_button % 4} - self.__class__.cnt_button += 1 - return self.packer.make_can_msg_panda("SCM_BUTTONS", bus, values) - - def _user_brake_msg(self, brake): - return self._powertrain_data_msg(brake_pressed=brake) - - def _user_gas_msg(self, gas): - return self._powertrain_data_msg(gas_pressed=gas) - - def _send_steer_msg(self, steer): - values = {"STEER_TORQUE": steer} - return self.packer.make_can_msg_panda("STEERING_CONTROL", self.STEER_BUS, values) - - def _send_brake_msg(self, brake): - # must be implemented when inherited - raise NotImplementedError - - def test_disengage_on_brake(self): - self.safety.set_controls_allowed(1) - self._rx(self._user_brake_msg(1)) - self.assertFalse(self.safety.get_controls_allowed()) - - def test_steer_safety_check(self): - self.safety.set_controls_allowed(0) - self.assertTrue(self._tx(self._send_steer_msg(0x0000))) - self.assertFalse(self._tx(self._send_steer_msg(0x1000))) - - -# ********************* Honda Nidec ********************** - - -class TestHondaNidecSafetyBase(HondaBase): - TX_MSGS = HONDA_N_COMMON_TX_MSGS - FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0x194, 0x33D, 0x30C]} - - PT_BUS = 0 - STEER_BUS = 0 - BUTTONS_BUS = 0 - - MAX_GAS = 198 - - def setUp(self): - self.packer = CANPackerPanda("honda_civic_touring_2016_can_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaNidec, 0) - self.safety.init_tests() - - def _send_brake_msg(self, brake, aeb_req=0, bus=0): - values = {"COMPUTER_BRAKE": brake, "AEB_REQ_1": aeb_req} - return self.packer.make_can_msg_panda("BRAKE_COMMAND", bus, values) - - def _rx_brake_msg(self, brake, aeb_req=0): - return self._send_brake_msg(brake, aeb_req, bus=2) - - def _send_acc_hud_msg(self, pcm_gas, pcm_speed): - # Used to control ACC on Nidec without pedal - values = {"PCM_GAS": pcm_gas, "PCM_SPEED": pcm_speed} - return self.packer.make_can_msg_panda("ACC_HUD", 0, values) - - def test_acc_hud_safety_check(self): - for controls_allowed in [True, False]: - self.safety.set_controls_allowed(controls_allowed) - for pcm_gas in range(255): - for pcm_speed in range(100): - send = (controls_allowed and pcm_gas <= self.MAX_GAS) or (pcm_gas == 0 and pcm_speed == 0) - self.assertEqual(send, self._tx(self._send_acc_hud_msg(pcm_gas, pcm_speed))) - - def test_fwd_hook(self): - # normal operation, not forwarding AEB - self.FWD_BLACKLISTED_ADDRS[2].append(0x1FA) - self.safety.set_honda_fwd_brake(False) - super().test_fwd_hook() - - # forwarding AEB brake signal - self.FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0x194, 0x33D, 0x30C]} - self.safety.set_honda_fwd_brake(True) - super().test_fwd_hook() - - def test_honda_fwd_brake_latching(self): - # Shouldn't fwd stock Honda requesting brake without AEB - self.assertTrue(self._rx(self._rx_brake_msg(self.MAX_BRAKE, aeb_req=0))) - self.assertFalse(self.safety.get_honda_fwd_brake()) - - # Now allow controls and request some brake - openpilot_brake = round(self.MAX_BRAKE / 2.0) - self.safety.set_controls_allowed(True) - self.assertTrue(self._tx(self._send_brake_msg(openpilot_brake))) - - # Still shouldn't fwd stock Honda brake until it's more than openpilot's - for stock_honda_brake in range(self.MAX_BRAKE + 1): - self.assertTrue(self._rx(self._rx_brake_msg(stock_honda_brake, aeb_req=1))) - should_fwd_brake = stock_honda_brake >= openpilot_brake - self.assertEqual(should_fwd_brake, self.safety.get_honda_fwd_brake()) - - # Shouldn't stop fwding until AEB event is over - for stock_honda_brake in range(self.MAX_BRAKE + 1)[::-1]: - self.assertTrue(self._rx(self._rx_brake_msg(stock_honda_brake, aeb_req=1))) - self.assertTrue(self.safety.get_honda_fwd_brake()) - - self.assertTrue(self._rx(self._rx_brake_msg(0, aeb_req=0))) - self.assertFalse(self.safety.get_honda_fwd_brake()) - - def test_brake_safety_check(self): - for fwd_brake in [False, True]: - self.safety.set_honda_fwd_brake(fwd_brake) - for brake in np.arange(0, self.MAX_BRAKE + 10, 1): - for controls_allowed in [True, False]: - self.safety.set_controls_allowed(controls_allowed) - if fwd_brake: - send = False # block openpilot brake msg when fwd'ing stock msg - elif controls_allowed: - send = self.MAX_BRAKE >= brake >= 0 - else: - send = brake == 0 - self.assertEqual(send, self._tx(self._send_brake_msg(brake))) - - -class TestHondaNidecPcmSafety(HondaPcmEnableBase, TestHondaNidecSafetyBase): - """ - Covers the Honda Nidec safety mode - """ - - # Nidec doesn't disengage on falling edge of cruise. See comment in safety_honda.h - def test_disable_control_allowed_from_cruise(self): - pass - - -class TestHondaNidecPcmAltSafety(TestHondaNidecPcmSafety): - """ - Covers the Honda Nidec safety mode with alt SCM messages - """ - def setUp(self): - self.packer = CANPackerPanda("acura_ilx_2016_can_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaNidec, HondaSafetyFlags.NIDEC_ALT) - self.safety.init_tests() - - def _acc_state_msg(self, main_on): - values = {"MAIN_ON": main_on, "COUNTER": self.cnt_acc_state % 4} - self.__class__.cnt_acc_state += 1 - return self.packer.make_can_msg_panda("SCM_BUTTONS", self.PT_BUS, values) - - def _button_msg(self, buttons, main_on=False, bus=None): - bus = self.PT_BUS if bus is None else bus - values = {"CRUISE_BUTTONS": buttons, "MAIN_ON": main_on, "COUNTER": self.cnt_button % 4} - self.__class__.cnt_button += 1 - return self.packer.make_can_msg_panda("SCM_BUTTONS", bus, values) - - -# ********************* Honda Bosch ********************** - - -class TestHondaBoschSafetyBase(HondaBase): - PT_BUS = 1 - STEER_BUS = 0 - BUTTONS_BUS = 1 - - TX_MSGS = [[0xE4, 0], [0xE5, 0], [0x296, 1], [0x33D, 0], [0x33DA, 0], [0x33DB, 0]] - FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB]} - - def setUp(self): - self.packer = CANPackerPanda("honda_accord_2018_can_generated") - self.safety = libsafety_py.libsafety - - def _alt_brake_msg(self, brake): - values = {"BRAKE_PRESSED": brake, "COUNTER": self.cnt_brake % 4} - self.__class__.cnt_brake += 1 - return self.packer.make_can_msg_panda("BRAKE_MODULE", self.PT_BUS, values) - - def _send_brake_msg(self, brake): - pass - - def test_alt_disengage_on_brake(self): - self.safety.set_honda_alt_brake_msg(1) - self.safety.set_controls_allowed(1) - self._rx(self._alt_brake_msg(1)) - self.assertFalse(self.safety.get_controls_allowed()) - - self.safety.set_honda_alt_brake_msg(0) - self.safety.set_controls_allowed(1) - self._rx(self._alt_brake_msg(1)) - self.assertTrue(self.safety.get_controls_allowed()) - - def test_spam_cancel_safety_check(self): - self.safety.set_controls_allowed(0) - self.assertTrue(self._tx(self._button_msg(Btn.CANCEL, bus=self.BUTTONS_BUS))) - self.assertFalse(self._tx(self._button_msg(Btn.RESUME, bus=self.BUTTONS_BUS))) - self.assertFalse(self._tx(self._button_msg(Btn.SET, bus=self.BUTTONS_BUS))) - # do not block resume if we are engaged already - self.safety.set_controls_allowed(1) - self.assertTrue(self._tx(self._button_msg(Btn.RESUME, bus=self.BUTTONS_BUS))) - - -class TestHondaBoschAltBrakeSafetyBase(TestHondaBoschSafetyBase): - """ - Base Bosch safety test class with an alternate brake message - """ - def setUp(self): - super().setUp() - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.ALT_BRAKE) - self.safety.init_tests() - - def _user_brake_msg(self, brake): - return self._alt_brake_msg(brake) - - def test_alt_brake_rx_hook(self): - self.safety.set_honda_alt_brake_msg(1) - self.safety.set_controls_allowed(1) - to_push = self._alt_brake_msg(0) - self.assertTrue(self._rx(to_push)) - to_push[0].data[2] = to_push[0].data[2] & 0xF0 # invalidate checksum - self.assertFalse(self._rx(to_push)) - self.assertFalse(self.safety.get_controls_allowed()) - - -class TestHondaBoschSafety(HondaPcmEnableBase, TestHondaBoschSafetyBase): - """ - Covers the Honda Bosch safety mode with stock longitudinal - """ - def setUp(self): - super().setUp() - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, 0) - self.safety.init_tests() - - -class TestHondaBoschAltBrakeSafety(HondaPcmEnableBase, TestHondaBoschAltBrakeSafetyBase): - """ - Covers the Honda Bosch safety mode with stock longitudinal and an alternate brake message - """ - - -class TestHondaBoschLongSafety(HondaButtonEnableBase, TestHondaBoschSafetyBase): - """ - Covers the Honda Bosch safety mode with longitudinal control - """ - NO_GAS = -30000 - MAX_GAS = 2000 - MAX_ACCEL = 2.0 # accel is used for brakes, but openpilot can set positive values - MIN_ACCEL = -3.5 - - STEER_BUS = 1 - TX_MSGS = [[0xE4, 1], [0x1DF, 1], [0x1EF, 1], [0x1FA, 1], [0x30C, 1], [0x33D, 1], [0x33DA, 1], [0x33DB, 1], [0x39F, 1], [0x18DAB0F1, 1]] - FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB]} - # 0x1DF is to test that radar is disabled - RELAY_MALFUNCTION_ADDRS = {0: (0xE4, 0x194), 1: (0x1DF,)} # STEERING_CONTROL, ACC_CONTROL - - def setUp(self): - super().setUp() - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.BOSCH_LONG) - self.safety.init_tests() - - def _send_gas_brake_msg(self, gas, accel): - values = { - "GAS_COMMAND": gas, - "ACCEL_COMMAND": accel, - "BRAKE_REQUEST": accel < 0, - } - return self.packer.make_can_msg_panda("ACC_CONTROL", self.PT_BUS, values) - - # Longitudinal doesn't need to send buttons - def test_spam_cancel_safety_check(self): - pass - - def test_diagnostics(self): - tester_present = libsafety_py.make_CANPacket(0x18DAB0F1, self.PT_BUS, b"\x02\x3E\x80\x00\x00\x00\x00\x00") - self.assertTrue(self._tx(tester_present)) - - not_tester_present = libsafety_py.make_CANPacket(0x18DAB0F1, self.PT_BUS, b"\x03\xAA\xAA\x00\x00\x00\x00\x00") - self.assertFalse(self._tx(not_tester_present)) - - def test_gas_safety_check(self): - for controls_allowed in [True, False]: - for gas in np.arange(self.NO_GAS, self.MAX_GAS + 2000, 100): - accel = 0 if gas < 0 else gas / 1000 - self.safety.set_controls_allowed(controls_allowed) - send = (controls_allowed and 0 <= gas <= self.MAX_GAS) or gas == self.NO_GAS - self.assertEqual(send, self._tx(self._send_gas_brake_msg(gas, accel)), (controls_allowed, gas, accel)) - - def test_brake_safety_check(self): - for controls_allowed in [True, False]: - for accel in np.arange(self.MIN_ACCEL - 1, self.MAX_ACCEL + 1, 0.01): - accel = round(accel, 2) # floats might not hit exact boundary conditions without rounding - self.safety.set_controls_allowed(controls_allowed) - send = self.MIN_ACCEL <= accel <= self.MAX_ACCEL if controls_allowed else accel == 0 - self.assertEqual(send, self._tx(self._send_gas_brake_msg(self.NO_GAS, accel)), (controls_allowed, accel)) - - -class TestHondaBoschRadarlessSafetyBase(TestHondaBoschSafetyBase): - """Base class for radarless Honda Bosch""" - PT_BUS = 0 - STEER_BUS = 0 - BUTTONS_BUS = 2 # camera controls ACC, need to send buttons on bus 2 - - TX_MSGS = [[0xE4, 0], [0x296, 2], [0x33D, 0]] - FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB]} - - def setUp(self): - self.packer = CANPackerPanda("honda_civic_ex_2022_can_generated") - self.safety = libsafety_py.libsafety - - -class TestHondaBoschRadarlessSafety(HondaPcmEnableBase, TestHondaBoschRadarlessSafetyBase): - """ - Covers the Honda Bosch Radarless safety mode with stock longitudinal - """ - - def setUp(self): - super().setUp() - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.RADARLESS) - self.safety.init_tests() - - -class TestHondaBoschRadarlessAltBrakeSafety(HondaPcmEnableBase, TestHondaBoschRadarlessSafetyBase, TestHondaBoschAltBrakeSafetyBase): - """ - Covers the Honda Bosch Radarless safety mode with stock longitudinal and an alternate brake message - """ - - def setUp(self): - super().setUp() - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.RADARLESS | HondaSafetyFlags.ALT_BRAKE) - self.safety.init_tests() - - -class TestHondaBoschRadarlessLongSafety(common.LongitudinalAccelSafetyTest, HondaButtonEnableBase, - TestHondaBoschRadarlessSafetyBase): - """ - Covers the Honda Bosch Radarless safety mode with longitudinal control - """ - TX_MSGS = [[0xE4, 0], [0x33D, 0], [0x1C8, 0], [0x30C, 0]] - FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB, 0x1C8, 0x30C]} - - def setUp(self): - super().setUp() - self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.RADARLESS | HondaSafetyFlags.BOSCH_LONG) - self.safety.init_tests() - - def _accel_msg(self, accel): - values = { - "ACCEL_COMMAND": accel, - } - return self.packer.make_can_msg_panda("ACC_CONTROL", self.PT_BUS, values) - - # Longitudinal doesn't need to send buttons - def test_spam_cancel_safety_check(self): - pass - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_hyundai.py b/opendbc_repo/opendbc/safety/tests/test_hyundai.py deleted file mode 100755 index e35962108a..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_hyundai.py +++ /dev/null @@ -1,273 +0,0 @@ -#!/usr/bin/env python3 -import random -import unittest - -from opendbc.car.hyundai.values import HyundaiSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda -from opendbc.safety.tests.hyundai_common import HyundaiButtonBase, HyundaiLongitudinalBase - - -# 4 bit checkusm used in some hyundai messages -# lives outside the can packer because we never send this msg -def checksum(msg): - addr, dat, bus = msg - - chksum = 0 - if addr == 0x386: - for i, b in enumerate(dat): - for j in range(8): - # exclude checksum and counter bits - if (i != 1 or j < 6) and (i != 3 or j < 6) and (i != 5 or j < 6) and (i != 7 or j < 6): - bit = (b >> j) & 1 - else: - bit = 0 - chksum += bit - chksum = (chksum ^ 9) & 0xF - ret = bytearray(dat) - ret[5] |= (chksum & 0x3) << 6 - ret[7] |= (chksum & 0xc) << 4 - else: - for i, b in enumerate(dat): - if addr in [0x260, 0x421] and i == 7: - b &= 0x0F if addr == 0x421 else 0xF0 - elif addr == 0x394 and i == 6: - b &= 0xF0 - elif addr == 0x394 and i == 7: - continue - chksum += sum(divmod(b, 16)) - chksum = (16 - chksum) % 16 - ret = bytearray(dat) - ret[6 if addr == 0x394 else 7] |= chksum << (4 if addr == 0x421 else 0) - - return addr, ret, bus - - -class TestHyundaiSafety(HyundaiButtonBase, common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): - TX_MSGS = [[0x340, 0], [0x4F1, 0], [0x485, 0]] - STANDSTILL_THRESHOLD = 12 # 0.375 kph - RELAY_MALFUNCTION_ADDRS = {0: (0x340,)} # LKAS11 - FWD_BLACKLISTED_ADDRS = {2: [0x340, 0x485]} - - MAX_RATE_UP = 3 - MAX_RATE_DOWN = 7 - MAX_TORQUE = 384 - MAX_RT_DELTA = 112 - RT_INTERVAL = 250000 - DRIVER_TORQUE_ALLOWANCE = 50 - DRIVER_TORQUE_FACTOR = 2 - - # Safety around steering req bit - MIN_VALID_STEERING_FRAMES = 89 - MAX_INVALID_STEERING_FRAMES = 2 - MIN_VALID_STEERING_RT_INTERVAL = 810000 # a ~10% buffer, can send steer up to 110Hz - - cnt_gas = 0 - cnt_speed = 0 - cnt_brake = 0 - cnt_cruise = 0 - cnt_button = 0 - - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, 0) - self.safety.init_tests() - - def _button_msg(self, buttons, main_button=0, bus=0): - values = {"CF_Clu_CruiseSwState": buttons, "CF_Clu_CruiseSwMain": main_button, "CF_Clu_AliveCnt1": self.cnt_button} - self.__class__.cnt_button += 1 - return self.packer.make_can_msg_panda("CLU11", bus, values) - - def _user_gas_msg(self, gas): - values = {"CF_Ems_AclAct": gas, "AliveCounter": self.cnt_gas % 4} - self.__class__.cnt_gas += 1 - return self.packer.make_can_msg_panda("EMS16", 0, values, fix_checksum=checksum) - - def _user_brake_msg(self, brake): - values = {"DriverOverride": 2 if brake else random.choice((0, 1, 3)), - "AliveCounterTCS": self.cnt_brake % 8} - self.__class__.cnt_brake += 1 - return self.packer.make_can_msg_panda("TCS13", 0, values, fix_checksum=checksum) - - def _speed_msg(self, speed): - # panda safety doesn't scale, so undo the scaling - values = {"WHL_SPD_%s" % s: speed * 0.03125 for s in ["FL", "FR", "RL", "RR"]} - values["WHL_SPD_AliveCounter_LSB"] = (self.cnt_speed % 16) & 0x3 - values["WHL_SPD_AliveCounter_MSB"] = (self.cnt_speed % 16) >> 2 - self.__class__.cnt_speed += 1 - return self.packer.make_can_msg_panda("WHL_SPD11", 0, values, fix_checksum=checksum) - - def _pcm_status_msg(self, enable): - values = {"ACCMode": enable, "CR_VSM_Alive": self.cnt_cruise % 16} - self.__class__.cnt_cruise += 1 - return self.packer.make_can_msg_panda("SCC12", self.SCC_BUS, values, fix_checksum=checksum) - - def _torque_driver_msg(self, torque): - values = {"CR_Mdps_StrColTq": torque} - return self.packer.make_can_msg_panda("MDPS12", 0, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"CR_Lkas_StrToqReq": torque, "CF_Lkas_ActToi": steer_req} - return self.packer.make_can_msg_panda("LKAS11", 0, values) - - -class TestHyundaiSafetyAltLimits(TestHyundaiSafety): - MAX_RATE_UP = 2 - MAX_RATE_DOWN = 3 - MAX_TORQUE = 270 - - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.ALT_LIMITS) - self.safety.init_tests() - - -class TestHyundaiSafetyAltLimits2(TestHyundaiSafety): - MAX_RATE_UP = 2 - MAX_RATE_DOWN = 3 - MAX_TORQUE = 170 - - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.ALT_LIMITS_2) - self.safety.init_tests() - - -class TestHyundaiSafetyCameraSCC(TestHyundaiSafety): - BUTTONS_TX_BUS = 2 # tx on 2, rx on 0 - SCC_BUS = 2 # rx on 2 - - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.CAMERA_SCC) - self.safety.init_tests() - - -class TestHyundaiSafetyFCEV(TestHyundaiSafety): - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.FCEV_GAS) - self.safety.init_tests() - - def _user_gas_msg(self, gas): - values = {"ACCELERATOR_PEDAL": gas} - return self.packer.make_can_msg_panda("FCEV_ACCELERATOR", 0, values) - - -class TestHyundaiLegacySafety(TestHyundaiSafety): - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiLegacy, 0) - self.safety.init_tests() - - -class TestHyundaiLegacySafetyEV(TestHyundaiSafety): - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiLegacy, 1) - self.safety.init_tests() - - def _user_gas_msg(self, gas): - values = {"Accel_Pedal_Pos": gas} - return self.packer.make_can_msg_panda("E_EMS11", 0, values, fix_checksum=checksum) - - -class TestHyundaiLegacySafetyHEV(TestHyundaiSafety): - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiLegacy, 2) - self.safety.init_tests() - - def _user_gas_msg(self, gas): - values = {"CR_Vcu_AccPedDep_Pos": gas} - return self.packer.make_can_msg_panda("E_EMS11", 0, values, fix_checksum=checksum) - -class TestHyundaiLongitudinalSafety(HyundaiLongitudinalBase, TestHyundaiSafety): - TX_MSGS = [[0x340, 0], [0x4F1, 0], [0x485, 0], [0x420, 0], [0x421, 0], [0x50A, 0], [0x389, 0], [0x4A2, 0], [0x38D, 0], [0x483, 0], [0x7D0, 0]] - - RELAY_MALFUNCTION_ADDRS = {0: (0x340, 0x421)} # LKAS11, SCC12 - - DISABLED_ECU_UDS_MSG = (0x7D0, 0) - DISABLED_ECU_ACTUATION_MSG = (0x421, 0) - - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.LONG) - self.safety.init_tests() - - def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): - values = { - "aReqRaw": accel, - "aReqValue": accel, - "AEB_CmdAct": int(aeb_req), - "CR_VSM_DecCmd": aeb_decel, - } - return self.packer.make_can_msg_panda("SCC12", self.SCC_BUS, values) - - def _fca11_msg(self, idx=0, vsm_aeb_req=False, fca_aeb_req=False, aeb_decel=0): - values = { - "CR_FCA_Alive": idx % 0xF, - "FCA_Status": 2, - "CR_VSM_DecCmd": aeb_decel, - "CF_VSM_DecCmdAct": int(vsm_aeb_req), - "FCA_CmdAct": int(fca_aeb_req), - } - return self.packer.make_can_msg_panda("FCA11", 0, values) - - def test_no_aeb_fca11(self): - self.assertTrue(self._tx(self._fca11_msg())) - self.assertFalse(self._tx(self._fca11_msg(vsm_aeb_req=True))) - self.assertFalse(self._tx(self._fca11_msg(fca_aeb_req=True))) - self.assertFalse(self._tx(self._fca11_msg(aeb_decel=1.0))) - - def test_no_aeb_scc12(self): - self.assertTrue(self._tx(self._accel_msg(0))) - self.assertFalse(self._tx(self._accel_msg(0, aeb_req=True))) - self.assertFalse(self._tx(self._accel_msg(0, aeb_decel=1.0))) - - -class TestHyundaiLongitudinalSafetyCameraSCC(HyundaiLongitudinalBase, TestHyundaiSafety): - TX_MSGS = [[0x340, 0], [0x4F1, 2], [0x485, 0], [0x420, 0], [0x421, 0], [0x50A, 0], [0x389, 0], [0x4A2, 0]] - - FWD_BLACKLISTED_ADDRS = {2: [0x340, 0x485, 0x420, 0x421, 0x50A, 0x389]} - - def setUp(self): - self.packer = CANPackerPanda("hyundai_kia_generic") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.LONG | HyundaiSafetyFlags.CAMERA_SCC) - self.safety.init_tests() - - def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): - values = { - "aReqRaw": accel, - "aReqValue": accel, - "AEB_CmdAct": int(aeb_req), - "CR_VSM_DecCmd": aeb_decel, - } - return self.packer.make_can_msg_panda("SCC12", self.SCC_BUS, values) - - def test_no_aeb_scc12(self): - self.assertTrue(self._tx(self._accel_msg(0))) - self.assertFalse(self._tx(self._accel_msg(0, aeb_req=True))) - self.assertFalse(self._tx(self._accel_msg(0, aeb_decel=1.0))) - - def test_tester_present_allowed(self): - pass - - def test_disabled_ecu_alive(self): - pass - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py b/opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py deleted file mode 100755 index 7b6fdd8bbf..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py +++ /dev/null @@ -1,286 +0,0 @@ -#!/usr/bin/env python3 -from parameterized import parameterized_class -import unittest - -from opendbc.car.hyundai.values import HyundaiSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda -from opendbc.safety.tests.hyundai_common import HyundaiButtonBase, HyundaiLongitudinalBase - - -class TestHyundaiCanfdBase(HyundaiButtonBase, common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): - - TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0]] - STANDSTILL_THRESHOLD = 12 # 0.375 kph - FWD_BLACKLISTED_ADDRS = {2: [0x50, 0x2a4]} - - MAX_RATE_UP = 2 - MAX_RATE_DOWN = 3 - MAX_TORQUE = 270 - - MAX_RT_DELTA = 112 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 250 - DRIVER_TORQUE_FACTOR = 2 - - # Safety around steering req bit - MIN_VALID_STEERING_FRAMES = 89 - MAX_INVALID_STEERING_FRAMES = 2 - MIN_VALID_STEERING_RT_INTERVAL = 810000 # a ~10% buffer, can send steer up to 110Hz - - PT_BUS = 0 - SCC_BUS = 2 - STEER_BUS = 0 - STEER_MSG = "" - GAS_MSG = ("", "") - BUTTONS_TX_BUS = 1 - - @classmethod - def setUpClass(cls): - super().setUpClass() - if cls.__name__ == "TestHyundaiCanfdBase": - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def _torque_driver_msg(self, torque): - values = {"STEERING_COL_TORQUE": torque} - return self.packer.make_can_msg_panda("MDPS", self.PT_BUS, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"TORQUE_REQUEST": torque, "STEER_REQ": steer_req} - return self.packer.make_can_msg_panda(self.STEER_MSG, self.STEER_BUS, values) - - def _speed_msg(self, speed): - values = {f"WHL_Spd{pos}Val": speed * 0.03125 for pos in ["FL", "FR", "RL", "RR"]} - return self.packer.make_can_msg_panda("WHEEL_SPEEDS", self.PT_BUS, values) - - def _user_brake_msg(self, brake): - values = {"DriverBraking": brake} - return self.packer.make_can_msg_panda("TCS", self.PT_BUS, values) - - def _user_gas_msg(self, gas): - values = {self.GAS_MSG[1]: gas} - return self.packer.make_can_msg_panda(self.GAS_MSG[0], self.PT_BUS, values) - - def _pcm_status_msg(self, enable): - values = {"ACCMode": 1 if enable else 0} - return self.packer.make_can_msg_panda("SCC_CONTROL", self.SCC_BUS, values) - - def _button_msg(self, buttons, main_button=0, bus=None): - if bus is None: - bus = self.PT_BUS - values = { - "CRUISE_BUTTONS": buttons, - "ADAPTIVE_CRUISE_MAIN_BTN": main_button, - } - return self.packer.make_can_msg_panda("CRUISE_BUTTONS", bus, values) - - -class TestHyundaiCanfdLFASteeringBase(TestHyundaiCanfdBase): - - TX_MSGS = [[0x12A, 0], [0x1A0, 1], [0x1CF, 0], [0x1E0, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0x12A,)} # LFA - FWD_BLACKLISTED_ADDRS = {2: [0x12A, 0x1E0]} - - STEER_MSG = "LFA" - BUTTONS_TX_BUS = 2 - SAFETY_PARAM: int - - @classmethod - def setUpClass(cls): - super().setUpClass() - if cls.__name__ in ("TestHyundaiCanfdLFASteering", "TestHyundaiCanfdLFASteeringAltButtons"): - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def setUp(self): - self.packer = CANPackerPanda("hyundai_canfd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, self.SAFETY_PARAM) - self.safety.init_tests() - - -@parameterized_class([ - # Radar SCC - {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 0, "SAFETY_PARAM": 0}, - {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS}, - {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS}, - # Camera SCC - {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.CAMERA_SCC}, - {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS | - HyundaiSafetyFlags.CAMERA_SCC}, - {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS | - HyundaiSafetyFlags.CAMERA_SCC}, -]) -class TestHyundaiCanfdLFASteering(TestHyundaiCanfdLFASteeringBase): - pass - - -@parameterized_class([ - # Radar SCC - {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 0, "SAFETY_PARAM": 0}, - {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS}, - {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS}, - # Camera SCC - {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.CAMERA_SCC}, - {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS | - HyundaiSafetyFlags.CAMERA_SCC}, - {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS | - HyundaiSafetyFlags.CAMERA_SCC}, -]) -class TestHyundaiCanfdLFASteeringAltButtons(TestHyundaiCanfdLFASteeringBase): - - SAFETY_PARAM: int - - def setUp(self): - self.packer = CANPackerPanda("hyundai_canfd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_ALT_BUTTONS | self.SAFETY_PARAM) - self.safety.init_tests() - - def _button_msg(self, buttons, main_button=0, bus=1): - values = { - "CRUISE_BUTTONS": buttons, - "ADAPTIVE_CRUISE_MAIN_BTN": main_button, - } - return self.packer.make_can_msg_panda("CRUISE_BUTTONS_ALT", self.PT_BUS, values) - - def _acc_cancel_msg(self, cancel, accel=0): - values = {"ACCMode": 4 if cancel else 0, "aReqRaw": accel, "aReqValue": accel} - return self.packer.make_can_msg_panda("SCC_CONTROL", self.PT_BUS, values) - - def test_button_sends(self): - """ - No button send allowed with alt buttons. - """ - for enabled in (True, False): - for btn in range(8): - self.safety.set_controls_allowed(enabled) - self.assertFalse(self._tx(self._button_msg(btn))) - - def test_acc_cancel(self): - # FIXME: the CANFD_ALT_BUTTONS cars are the only ones that use SCC_CONTROL to cancel, why can't we use buttons? - for enabled in (True, False): - self.safety.set_controls_allowed(enabled) - self.assertTrue(self._tx(self._acc_cancel_msg(True))) - self.assertFalse(self._tx(self._acc_cancel_msg(True, accel=1))) - self.assertFalse(self._tx(self._acc_cancel_msg(False))) - - -class TestHyundaiCanfdLKASteeringEV(TestHyundaiCanfdBase): - - TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0x50,)} # LKAS - FWD_BLACKLISTED_ADDRS = {2: [0x50, 0x2a4]} - - PT_BUS = 1 - SCC_BUS = 1 - STEER_MSG = "LKAS" - GAS_MSG = ("ACCELERATOR", "ACCELERATOR_PEDAL") - - def setUp(self): - self.packer = CANPackerPanda("hyundai_canfd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | HyundaiSafetyFlags.EV_GAS) - self.safety.init_tests() - - -# TODO: Handle ICE and HEV configurations once we see cars that use the new messages -class TestHyundaiCanfdLKASteeringAltEV(TestHyundaiCanfdBase): - - TX_MSGS = [[0x110, 0], [0x1CF, 1], [0x362, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0x110,)} # LKAS_ALT - FWD_BLACKLISTED_ADDRS = {2: [0x110, 0x362]} - - PT_BUS = 1 - SCC_BUS = 1 - STEER_MSG = "LKAS_ALT" - GAS_MSG = ("ACCELERATOR", "ACCELERATOR_PEDAL") - - def setUp(self): - self.packer = CANPackerPanda("hyundai_canfd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | HyundaiSafetyFlags.EV_GAS | - HyundaiSafetyFlags.CANFD_LKA_STEERING_ALT) - self.safety.init_tests() - - -class TestHyundaiCanfdLKASteeringLongEV(HyundaiLongitudinalBase, TestHyundaiCanfdLKASteeringEV): - - TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0], [0x51, 0], [0x730, 1], [0x12a, 1], [0x160, 1], - [0x1e0, 1], [0x1a0, 1], [0x1ea, 1], [0x200, 1], [0x345, 1], [0x1da, 1]] - - RELAY_MALFUNCTION_ADDRS = {0: (0x50,), 1: (0x1a0,)} # LKAS, SCC_CONTROL - - DISABLED_ECU_UDS_MSG = (0x730, 1) - DISABLED_ECU_ACTUATION_MSG = (0x1a0, 1) - - STEER_MSG = "LFA" - GAS_MSG = ("ACCELERATOR", "ACCELERATOR_PEDAL") - STEER_BUS = 1 - - def setUp(self): - self.packer = CANPackerPanda("hyundai_canfd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | - HyundaiSafetyFlags.LONG | HyundaiSafetyFlags.EV_GAS) - self.safety.init_tests() - - def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): - values = { - "aReqRaw": accel, - "aReqValue": accel, - } - return self.packer.make_can_msg_panda("SCC_CONTROL", 1, values) - - -# Tests longitudinal for ICE, hybrid, EV cars with LFA steering -@parameterized_class([ - # Radar SCC - {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 0, "SAFETY_PARAM": 0}, - {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS}, - {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS}, - # Camera SCC - {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.CAMERA_SCC}, - {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS | HyundaiSafetyFlags.CAMERA_SCC}, - {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS | HyundaiSafetyFlags.CAMERA_SCC}, -]) -class TestHyundaiCanfdLFASteeringLong(HyundaiLongitudinalBase, TestHyundaiCanfdLFASteeringBase): - - FWD_BLACKLISTED_ADDRS = {2: [0x12a, 0x1e0, 0x1a0, 0x160]} - - RELAY_MALFUNCTION_ADDRS = {0: (0x12A, 0x1a0)} # LFA, SCC_CONTROL - - DISABLED_ECU_UDS_MSG = (0x7D0, 0) - DISABLED_ECU_ACTUATION_MSG = (0x1a0, 0) - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestHyundaiCanfdLFASteeringLong": - cls.safety = None - raise unittest.SkipTest - - def setUp(self): - self.packer = CANPackerPanda("hyundai_canfd_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.LONG | self.SAFETY_PARAM) - self.safety.init_tests() - - def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): - values = { - "aReqRaw": accel, - "aReqValue": accel, - } - return self.packer.make_can_msg_panda("SCC_CONTROL", 0, values) - - def test_tester_present_allowed(self, ecu_disable: bool = True): - super().test_tester_present_allowed(ecu_disable=not self.SAFETY_PARAM & HyundaiSafetyFlags.CAMERA_SCC) - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_mazda.py b/opendbc_repo/opendbc/safety/tests/test_mazda.py deleted file mode 100755 index e60248d2d1..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_mazda.py +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - - -class TestMazdaSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): - - TX_MSGS = [[0x243, 0], [0x09d, 0], [0x440, 0]] - STANDSTILL_THRESHOLD = .1 - RELAY_MALFUNCTION_ADDRS = {0: (0x243,)} - FWD_BLACKLISTED_ADDRS = {2: [0x243, 0x440]} - - MAX_RATE_UP = 10 - MAX_RATE_DOWN = 25 - MAX_TORQUE = 800 - - MAX_RT_DELTA = 300 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 15 - DRIVER_TORQUE_FACTOR = 1 - - # Mazda actually does not set any bit when requesting torque - NO_STEER_REQ_BIT = True - - def setUp(self): - self.packer = CANPackerPanda("mazda_2017") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.mazda, 0) - self.safety.init_tests() - - def _torque_meas_msg(self, torque): - values = {"STEER_TORQUE_MOTOR": torque} - return self.packer.make_can_msg_panda("STEER_TORQUE", 0, values) - - def _torque_driver_msg(self, torque): - values = {"STEER_TORQUE_SENSOR": torque} - return self.packer.make_can_msg_panda("STEER_TORQUE", 0, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"LKAS_REQUEST": torque} - return self.packer.make_can_msg_panda("CAM_LKAS", 0, values) - - def _speed_msg(self, speed): - values = {"SPEED": speed} - return self.packer.make_can_msg_panda("ENGINE_DATA", 0, values) - - def _user_brake_msg(self, brake): - values = {"BRAKE_ON": brake} - return self.packer.make_can_msg_panda("PEDALS", 0, values) - - def _user_gas_msg(self, gas): - values = {"PEDAL_GAS": gas} - return self.packer.make_can_msg_panda("ENGINE_DATA", 0, values) - - def _pcm_status_msg(self, enable): - values = {"CRZ_ACTIVE": enable} - return self.packer.make_can_msg_panda("CRZ_CTRL", 0, values) - - def _button_msg(self, resume=False, cancel=False): - values = { - "CAN_OFF": cancel, - "CAN_OFF_INV": (cancel + 1) % 2, - "RES": resume, - "RES_INV": (resume + 1) % 2, - } - return self.packer.make_can_msg_panda("CRZ_BTNS", 0, values) - - def test_buttons(self): - # only cancel allows while controls not allowed - self.safety.set_controls_allowed(0) - self.assertTrue(self._tx(self._button_msg(cancel=True))) - self.assertFalse(self._tx(self._button_msg(resume=True))) - - # do not block resume if we are engaged already - self.safety.set_controls_allowed(1) - self.assertTrue(self._tx(self._button_msg(cancel=True))) - self.assertTrue(self._tx(self._button_msg(resume=True))) - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_nissan.py b/opendbc_repo/opendbc/safety/tests/test_nissan.py deleted file mode 100755 index 22f556f4dc..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_nissan.py +++ /dev/null @@ -1,118 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.nissan.values import NissanSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - - -class TestNissanSafety(common.PandaCarSafetyTest, common.AngleSteeringSafetyTest): - - TX_MSGS = [[0x169, 0], [0x2b1, 0], [0x4cc, 0], [0x20b, 2], [0x280, 2]] - GAS_PRESSED_THRESHOLD = 3 - RELAY_MALFUNCTION_ADDRS = {0: (0x169,)} - FWD_BLACKLISTED_ADDRS = {0: [0x280], 2: [0x169, 0x2b1, 0x4cc]} - - EPS_BUS = 0 - CRUISE_BUS = 2 - - # Angle control limits - STEER_ANGLE_MAX = 600 # deg, reasonable limit - DEG_TO_CAN = 100 - - ANGLE_RATE_BP = [0., 5., 15.] - ANGLE_RATE_UP = [5., .8, .15] # windup limit - ANGLE_RATE_DOWN = [5., 3.5, .4] # unwind limit - - def setUp(self): - self.packer = CANPackerPanda("nissan_x_trail_2017_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.nissan, 0) - self.safety.init_tests() - - def _angle_cmd_msg(self, angle: float, enabled: bool): - values = {"DESIRED_ANGLE": angle, "LKA_ACTIVE": 1 if enabled else 0} - return self.packer.make_can_msg_panda("LKAS", 0, values) - - def _angle_meas_msg(self, angle: float): - values = {"STEER_ANGLE": angle} - return self.packer.make_can_msg_panda("STEER_ANGLE_SENSOR", self.EPS_BUS, values) - - def _pcm_status_msg(self, enable): - values = {"CRUISE_ENABLED": enable} - return self.packer.make_can_msg_panda("CRUISE_STATE", self.CRUISE_BUS, values) - - def _speed_msg(self, speed): - values = {"WHEEL_SPEED_%s" % s: speed * 3.6 for s in ["RR", "RL"]} - return self.packer.make_can_msg_panda("WHEEL_SPEEDS_REAR", self.EPS_BUS, values) - - def _user_brake_msg(self, brake): - values = {"USER_BRAKE_PRESSED": brake} - return self.packer.make_can_msg_panda("DOORS_LIGHTS", self.EPS_BUS, values) - - def _user_gas_msg(self, gas): - values = {"GAS_PEDAL": gas} - return self.packer.make_can_msg_panda("GAS_PEDAL", self.EPS_BUS, values) - - def _acc_button_cmd(self, cancel=0, propilot=0, flw_dist=0, _set=0, res=0): - no_button = not any([cancel, propilot, flw_dist, _set, res]) - values = {"CANCEL_BUTTON": cancel, "PROPILOT_BUTTON": propilot, - "FOLLOW_DISTANCE_BUTTON": flw_dist, "SET_BUTTON": _set, - "RES_BUTTON": res, "NO_BUTTON_PRESSED": no_button} - return self.packer.make_can_msg_panda("CRUISE_THROTTLE", 2, values) - - def test_acc_buttons(self): - btns = [ - ("cancel", True), - ("propilot", False), - ("flw_dist", False), - ("_set", False), - ("res", False), - (None, False), - ] - for controls_allowed in (True, False): - for btn, should_tx in btns: - self.safety.set_controls_allowed(controls_allowed) - args = {} if btn is None else {btn: 1} - tx = self._tx(self._acc_button_cmd(**args)) - self.assertEqual(tx, should_tx) - - -class TestNissanSafetyAltEpsBus(TestNissanSafety): - """Altima uses different buses""" - - EPS_BUS = 1 - CRUISE_BUS = 1 - - def setUp(self): - self.packer = CANPackerPanda("nissan_x_trail_2017_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.nissan, NissanSafetyFlags.ALT_EPS_BUS) - self.safety.init_tests() - - -class TestNissanLeafSafety(TestNissanSafety): - - def setUp(self): - self.packer = CANPackerPanda("nissan_leaf_2018_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.nissan, 0) - self.safety.init_tests() - - def _user_brake_msg(self, brake): - values = {"USER_BRAKE_PRESSED": brake} - return self.packer.make_can_msg_panda("CRUISE_THROTTLE", 0, values) - - def _user_gas_msg(self, gas): - values = {"GAS_PEDAL": gas} - return self.packer.make_can_msg_panda("CRUISE_THROTTLE", 0, values) - - # TODO: leaf should use its own safety param - def test_acc_buttons(self): - pass - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_rivian.py b/opendbc_repo/opendbc/safety/tests/test_rivian.py deleted file mode 100755 index 7dc4072415..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_rivian.py +++ /dev/null @@ -1,109 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda -from opendbc.car.rivian.values import RivianSafetyFlags - - -class TestRivianSafetyBase(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.LongitudinalAccelSafetyTest): - - TX_MSGS = [[0x120, 0], [0x321, 2], [0x162, 2]] - RELAY_MALFUNCTION_ADDRS = {0: (0x120,)} - FWD_BLACKLISTED_ADDRS = {0: [0x321, 0x162], 2: [0x120]} - - MAX_TORQUE = 250 - MAX_RATE_UP = 3 - MAX_RATE_DOWN = 5 - - MAX_RT_DELTA = 125 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 100 - DRIVER_TORQUE_FACTOR = 2 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestRivianSafetyBase": - raise unittest.SkipTest - - def _torque_driver_msg(self, torque): - values = {"EPAS_TorsionBarTorque": torque / 100.0} - return self.packer.make_can_msg_panda("EPAS_SystemStatus", 0, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"ACM_lkaStrToqReq": torque, "ACM_lkaActToi": steer_req} - return self.packer.make_can_msg_panda("ACM_lkaHbaCmd", 0, values) - - def _speed_msg(self, speed): - values = {"ESP_Status": speed * 3.6} - return self.packer.make_can_msg_panda("ESP_Vehicle_Speed", 0, values) - - def _user_brake_msg(self, brake): - values = {"iBESP2_BrakePedalApplied": brake} - return self.packer.make_can_msg_panda("iBESP2", 0, values) - - def _user_gas_msg(self, gas): - values = {"VDM_AcceleratorPedalPosition": gas} - return self.packer.make_can_msg_panda("VDM_PropStatus", 0, values) - - def _pcm_status_msg(self, enable): - values = {"ACM_FeatureStatus": enable, "ACM_Unkown1": 1} - return self.packer.make_can_msg_panda("ACM_Status", 2, values) - - def _vehicle_moving_msg(self, speed: float): - values = {"ESP_Vehicle_Speed": speed} - return self.packer.make_can_msg_panda("ESP_Status", 0, values) - - def _accel_msg(self, accel: float): - values = {"ACM_AccelerationRequest": accel} - return self.packer.make_can_msg_panda("ACM_longitudinalRequest", 0, values) - - def test_wheel_touch(self): - # For hiding hold wheel alert on engage - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - values = { - "SCCM_WheelTouch_HandsOn": 1 if controls_allowed else 0, - "SCCM_WheelTouch_CapacitiveValue": 100 if controls_allowed else 0, - "SETME_X52": 100, - } - self.assertTrue(self._tx(self.packer.make_can_msg_panda("SCCM_WheelTouch", 2, values))) - - -class TestRivianStockSafety(TestRivianSafetyBase): - - LONGITUDINAL = False - - def setUp(self): - self.packer = CANPackerPanda("rivian_primary_actuator") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.rivian, 0) - self.safety.init_tests() - - def test_adas_status(self): - # For canceling stock ACC - for controls_allowed in (True, False): - self.safety.set_controls_allowed(controls_allowed) - for interface_status in range(4): - values = {"VDM_AdasInterfaceStatus": interface_status} - self.assertTrue(self._tx(self.packer.make_can_msg_panda("VDM_AdasSts", 2, values))) - - -class TestRivianLongitudinalSafety(TestRivianSafetyBase): - - TX_MSGS = [[0x120, 0], [0x321, 2], [0x160, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0x120, 0x160)} - FWD_BLACKLISTED_ADDRS = {0: [0x321], 2: [0x120, 0x160]} - - def setUp(self): - self.packer = CANPackerPanda("rivian_primary_actuator") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.rivian, RivianSafetyFlags.LONG_CONTROL) - self.safety.init_tests() - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_subaru.py b/opendbc_repo/opendbc/safety/tests/test_subaru.py deleted file mode 100755 index 8727732400..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_subaru.py +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env python3 -import enum -import unittest - -from opendbc.car.subaru.values import SubaruSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda -from functools import partial - -class SubaruMsg(enum.IntEnum): - Brake_Status = 0x13c - CruiseControl = 0x240 - Throttle = 0x40 - Steering_Torque = 0x119 - Wheel_Speeds = 0x13a - ES_LKAS = 0x122 - ES_LKAS_ANGLE = 0x124 - ES_Brake = 0x220 - ES_Distance = 0x221 - ES_Status = 0x222 - ES_DashStatus = 0x321 - ES_LKAS_State = 0x322 - ES_Infotainment = 0x323 - ES_UDS_Request = 0x787 - ES_HighBeamAssist = 0x121 - ES_STATIC_1 = 0x22a - ES_STATIC_2 = 0x325 - - -SUBARU_MAIN_BUS = 0 -SUBARU_ALT_BUS = 1 -SUBARU_CAM_BUS = 2 - - -def lkas_tx_msgs(alt_bus, lkas_msg=SubaruMsg.ES_LKAS): - return [[lkas_msg, SUBARU_MAIN_BUS], - [SubaruMsg.ES_Distance, alt_bus], - [SubaruMsg.ES_DashStatus, SUBARU_MAIN_BUS], - [SubaruMsg.ES_LKAS_State, SUBARU_MAIN_BUS], - [SubaruMsg.ES_Infotainment, SUBARU_MAIN_BUS]] - -def long_tx_msgs(alt_bus): - return [[SubaruMsg.ES_Brake, alt_bus], - [SubaruMsg.ES_Status, alt_bus]] - -def gen2_long_additional_tx_msgs(): - return [[SubaruMsg.ES_UDS_Request, SUBARU_CAM_BUS], - [SubaruMsg.ES_HighBeamAssist, SUBARU_MAIN_BUS], - [SubaruMsg.ES_STATIC_1, SUBARU_MAIN_BUS], - [SubaruMsg.ES_STATIC_2, SUBARU_MAIN_BUS]] - -def fwd_blacklisted_addr(lkas_msg=SubaruMsg.ES_LKAS): - return {SUBARU_CAM_BUS: [lkas_msg, SubaruMsg.ES_DashStatus, SubaruMsg.ES_LKAS_State, SubaruMsg.ES_Infotainment]} - -class TestSubaruSafetyBase(common.PandaCarSafetyTest): - FLAGS = 0 - RELAY_MALFUNCTION_ADDRS = {SUBARU_MAIN_BUS: (SubaruMsg.ES_LKAS,)} - FWD_BLACKLISTED_ADDRS = fwd_blacklisted_addr() - - MAX_RT_DELTA = 940 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 60 - DRIVER_TORQUE_FACTOR = 50 - - ALT_MAIN_BUS = SUBARU_MAIN_BUS - ALT_CAM_BUS = SUBARU_CAM_BUS - - DEG_TO_CAN = 100 - - INACTIVE_GAS = 1818 - - def setUp(self): - self.packer = CANPackerPanda("subaru_global_2017_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.subaru, self.FLAGS) - self.safety.init_tests() - - def _set_prev_torque(self, t): - self.safety.set_desired_torque_last(t) - self.safety.set_rt_torque_last(t) - - def _torque_driver_msg(self, torque): - values = {"Steer_Torque_Sensor": torque} - return self.packer.make_can_msg_panda("Steering_Torque", 0, values) - - def _speed_msg(self, speed): - values = {s: speed for s in ["FR", "FL", "RR", "RL"]} - return self.packer.make_can_msg_panda("Wheel_Speeds", self.ALT_MAIN_BUS, values) - - def _angle_meas_msg(self, angle): - values = {"Steering_Angle": angle} - return self.packer.make_can_msg_panda("Steering_Torque", 0, values) - - def _user_brake_msg(self, brake): - values = {"Brake": brake} - return self.packer.make_can_msg_panda("Brake_Status", self.ALT_MAIN_BUS, values) - - def _user_gas_msg(self, gas): - values = {"Throttle_Pedal": gas} - return self.packer.make_can_msg_panda("Throttle", 0, values) - - def _pcm_status_msg(self, enable): - values = {"Cruise_Activated": enable} - return self.packer.make_can_msg_panda("CruiseControl", self.ALT_MAIN_BUS, values) - - -class TestSubaruStockLongitudinalSafetyBase(TestSubaruSafetyBase): - def _cancel_msg(self, cancel, cruise_throttle=0): - values = {"Cruise_Cancel": cancel, "Cruise_Throttle": cruise_throttle} - return self.packer.make_can_msg_panda("ES_Distance", self.ALT_MAIN_BUS, values) - - def test_cancel_message(self): - # test that we can only send the cancel message (ES_Distance) with inactive throttle (1818) and Cruise_Cancel=1 - for cancel in [True, False]: - self._generic_limit_safety_check(partial(self._cancel_msg, cancel), self.INACTIVE_GAS, self.INACTIVE_GAS, 0, 2**12, 1, self.INACTIVE_GAS, cancel) - - -class TestSubaruLongitudinalSafetyBase(TestSubaruSafetyBase, common.LongitudinalGasBrakeSafetyTest): - MIN_GAS = 808 - MAX_GAS = 3400 - INACTIVE_GAS = 1818 - MAX_POSSIBLE_GAS = 2**13 - - MIN_BRAKE = 0 - MAX_BRAKE = 600 - MAX_POSSIBLE_BRAKE = 2**16 - - MIN_RPM = 0 - MAX_RPM = 3600 - MAX_POSSIBLE_RPM = 2**13 - - FWD_BLACKLISTED_ADDRS = {2: [SubaruMsg.ES_LKAS, SubaruMsg.ES_Brake, SubaruMsg.ES_Distance, - SubaruMsg.ES_Status, SubaruMsg.ES_DashStatus, - SubaruMsg.ES_LKAS_State, SubaruMsg.ES_Infotainment]} - - def test_rpm_safety_check(self): - self._generic_limit_safety_check(self._send_rpm_msg, self.MIN_RPM, self.MAX_RPM, 0, self.MAX_POSSIBLE_RPM, 1) - - def _send_brake_msg(self, brake): - values = {"Brake_Pressure": brake} - return self.packer.make_can_msg_panda("ES_Brake", self.ALT_MAIN_BUS, values) - - def _send_gas_msg(self, gas): - values = {"Cruise_Throttle": gas} - return self.packer.make_can_msg_panda("ES_Distance", self.ALT_MAIN_BUS, values) - - def _send_rpm_msg(self, rpm): - values = {"Cruise_RPM": rpm} - return self.packer.make_can_msg_panda("ES_Status", self.ALT_MAIN_BUS, values) - - -class TestSubaruTorqueSafetyBase(TestSubaruSafetyBase, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): - MAX_RATE_UP = 50 - MAX_RATE_DOWN = 70 - MAX_TORQUE = 2047 - - # Safety around steering req bit - MIN_VALID_STEERING_FRAMES = 7 - MAX_INVALID_STEERING_FRAMES = 1 - MIN_VALID_STEERING_RT_INTERVAL = 144000 - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"LKAS_Output": torque, "LKAS_Request": steer_req} - return self.packer.make_can_msg_panda("ES_LKAS", SUBARU_MAIN_BUS, values) - - -class TestSubaruGen1TorqueStockLongitudinalSafety(TestSubaruStockLongitudinalSafetyBase, TestSubaruTorqueSafetyBase): - FLAGS = 0 - TX_MSGS = lkas_tx_msgs(SUBARU_MAIN_BUS) - - -class TestSubaruGen2TorqueSafetyBase(TestSubaruTorqueSafetyBase): - ALT_MAIN_BUS = SUBARU_ALT_BUS - ALT_CAM_BUS = SUBARU_ALT_BUS - - MAX_RATE_UP = 40 - MAX_RATE_DOWN = 40 - MAX_TORQUE = 1000 - - -class TestSubaruGen2TorqueStockLongitudinalSafety(TestSubaruStockLongitudinalSafetyBase, TestSubaruGen2TorqueSafetyBase): - FLAGS = SubaruSafetyFlags.GEN2 - TX_MSGS = lkas_tx_msgs(SUBARU_ALT_BUS) - - -class TestSubaruGen1LongitudinalSafety(TestSubaruLongitudinalSafetyBase, TestSubaruTorqueSafetyBase): - FLAGS = SubaruSafetyFlags.LONG - TX_MSGS = lkas_tx_msgs(SUBARU_MAIN_BUS) + long_tx_msgs(SUBARU_MAIN_BUS) - - -class TestSubaruGen2LongitudinalSafety(TestSubaruLongitudinalSafetyBase, TestSubaruGen2TorqueSafetyBase): - FLAGS = SubaruSafetyFlags.LONG | SubaruSafetyFlags.GEN2 - TX_MSGS = lkas_tx_msgs(SUBARU_ALT_BUS) + long_tx_msgs(SUBARU_ALT_BUS) + gen2_long_additional_tx_msgs() - - def _rdbi_msg(self, did: int): - return b'\x03\x22' + did.to_bytes(2) + b'\x00\x00\x00\x00' - - def _es_uds_msg(self, msg: bytes): - return libsafety_py.make_CANPacket(SubaruMsg.ES_UDS_Request, 2, msg) - - def test_es_uds_message(self): - tester_present = b'\x02\x3E\x80\x00\x00\x00\x00\x00' - not_tester_present = b"\x03\xAA\xAA\x00\x00\x00\x00\x00" - - button_did = 0x1130 - - # Tester present is allowed for gen2 long to keep eyesight disabled - self.assertTrue(self._tx(self._es_uds_msg(tester_present))) - - # Non-Tester present is not allowed - self.assertFalse(self._tx(self._es_uds_msg(not_tester_present))) - - # Only button_did is allowed to be read via UDS - for did in range(0xFFFF): - should_tx = (did == button_did) - self.assertEqual(self._tx(self._es_uds_msg(self._rdbi_msg(did))), should_tx) - - # any other msg is not allowed - for sid in range(0xFF): - msg = b'\x03' + sid.to_bytes(1) + b'\x00' * 6 - self.assertFalse(self._tx(self._es_uds_msg(msg))) - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py b/opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py deleted file mode 100755 index b2f482bf57..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.structs import CarParams -from opendbc.car.subaru.values import SubaruSafetyFlags -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - - -class TestSubaruPreglobalSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): - FLAGS = 0 - DBC = "subaru_outback_2015_generated" - TX_MSGS = [[0x161, 0], [0x164, 0]] - RELAY_MALFUNCTION_ADDRS = {0: (0x164,)} - FWD_BLACKLISTED_ADDRS = {2: [0x161, 0x164]} - - MAX_RATE_UP = 50 - MAX_RATE_DOWN = 70 - MAX_TORQUE = 2047 - - MAX_RT_DELTA = 940 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 75 - DRIVER_TORQUE_FACTOR = 10 - - def setUp(self): - self.packer = CANPackerPanda(self.DBC) - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.subaruPreglobal, self.FLAGS) - self.safety.init_tests() - - def _set_prev_torque(self, t): - self.safety.set_desired_torque_last(t) - self.safety.set_rt_torque_last(t) - - def _torque_driver_msg(self, torque): - values = {"Steer_Torque_Sensor": torque} - return self.packer.make_can_msg_panda("Steering_Torque", 0, values) - - def _speed_msg(self, speed): - # subaru safety doesn't use the scaled value, so undo the scaling - values = {s: speed*0.0592 for s in ["FR", "FL", "RR", "RL"]} - return self.packer.make_can_msg_panda("Wheel_Speeds", 0, values) - - def _user_brake_msg(self, brake): - values = {"Brake_Pedal": brake} - return self.packer.make_can_msg_panda("Brake_Pedal", 0, values) - - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"LKAS_Command": torque, "LKAS_Active": steer_req} - return self.packer.make_can_msg_panda("ES_LKAS", 0, values) - - def _user_gas_msg(self, gas): - values = {"Throttle_Pedal": gas} - return self.packer.make_can_msg_panda("Throttle", 0, values) - - def _pcm_status_msg(self, enable): - values = {"Cruise_Activated": enable} - return self.packer.make_can_msg_panda("CruiseControl", 0, values) - - -class TestSubaruPreglobalReversedDriverTorqueSafety(TestSubaruPreglobalSafety): - FLAGS = SubaruSafetyFlags.PREGLOBAL_REVERSED_DRIVER_TORQUE - DBC = "subaru_outback_2019_generated" - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_tesla.py b/opendbc_repo/opendbc/safety/tests/test_tesla.py deleted file mode 100755 index 654a815bfb..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_tesla.py +++ /dev/null @@ -1,174 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.tesla.values import TeslaSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.can.can_define import CANDefine -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - -MSG_DAS_steeringControl = 0x488 -MSG_APS_eacMonitor = 0x27d -MSG_DAS_Control = 0x2b9 - - -class TestTeslaSafetyBase(common.PandaCarSafetyTest, common.AngleSteeringSafetyTest, common.LongitudinalAccelSafetyTest): - RELAY_MALFUNCTION_ADDRS = {0: (MSG_DAS_steeringControl, MSG_APS_eacMonitor)} - FWD_BLACKLISTED_ADDRS = {2: [MSG_DAS_steeringControl, MSG_APS_eacMonitor]} - TX_MSGS = [[MSG_DAS_steeringControl, 0], [MSG_APS_eacMonitor, 0], [MSG_DAS_Control, 0]] - - STANDSTILL_THRESHOLD = 0.1 - GAS_PRESSED_THRESHOLD = 3 - - # Angle control limits - STEER_ANGLE_MAX = 360 # deg - DEG_TO_CAN = 10 - - ANGLE_RATE_BP = [0., 5., 25.] - ANGLE_RATE_UP = [2.5, 1.5, 0.2] # windup limit - ANGLE_RATE_DOWN = [5., 2.0, 0.3] # unwind limit - - # Long control limits - MAX_ACCEL = 2.0 - MIN_ACCEL = -3.48 - INACTIVE_ACCEL = 0.0 - - packer: CANPackerPanda - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestTeslaSafetyBase": - raise unittest.SkipTest - - def setUp(self): - self.packer = CANPackerPanda("tesla_model3_party") - self.define = CANDefine("tesla_model3_party") - self.acc_states = {d: v for v, d in self.define.dv["DAS_control"]["DAS_accState"].items()} - - def _angle_cmd_msg(self, angle: float, enabled: bool): - values = {"DAS_steeringAngleRequest": angle, "DAS_steeringControlType": 1 if enabled else 0} - return self.packer.make_can_msg_panda("DAS_steeringControl", 0, values) - - def _angle_meas_msg(self, angle: float): - values = {"EPAS3S_internalSAS": angle} - return self.packer.make_can_msg_panda("EPAS3S_sysStatus", 0, values) - - def _user_brake_msg(self, brake): - values = {"IBST_driverBrakeApply": 2 if brake else 1} - return self.packer.make_can_msg_panda("IBST_status", 0, values) - - def _speed_msg(self, speed): - values = {"DI_vehicleSpeed": speed * 3.6} - return self.packer.make_can_msg_panda("DI_speed", 0, values) - - def _vehicle_moving_msg(self, speed: float): - values = {"DI_cruiseState": 3 if speed <= self.STANDSTILL_THRESHOLD else 2} - return self.packer.make_can_msg_panda("DI_state", 0, values) - - def _user_gas_msg(self, gas): - values = {"DI_accelPedalPos": gas} - return self.packer.make_can_msg_panda("DI_systemStatus", 0, values) - - def _pcm_status_msg(self, enable): - values = {"DI_cruiseState": 2 if enable else 0} - return self.packer.make_can_msg_panda("DI_state", 0, values) - - def _long_control_msg(self, set_speed, acc_state=0, jerk_limits=(0, 0), accel_limits=(0, 0), aeb_event=0, bus=0): - values = { - "DAS_setSpeed": set_speed, - "DAS_accState": acc_state, - "DAS_aebEvent": aeb_event, - "DAS_jerkMin": jerk_limits[0], - "DAS_jerkMax": jerk_limits[1], - "DAS_accelMin": accel_limits[0], - "DAS_accelMax": accel_limits[1], - } - return self.packer.make_can_msg_panda("DAS_control", bus, values) - - def _accel_msg(self, accel: float): - # For common.LongitudinalAccelSafetyTest - return self._long_control_msg(10, accel_limits=(accel, max(accel, 0))) - - def test_vehicle_speed_measurements(self): - # OVERRIDDEN: 79.1667 is the max speed in m/s - self._common_measurement_test(self._speed_msg, 0, 285 / 3.6, 1, - self.safety.get_vehicle_speed_min, self.safety.get_vehicle_speed_max) - - -class TestTeslaStockSafety(TestTeslaSafetyBase): - - LONGITUDINAL = False - - def setUp(self): - super().setUp() - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.tesla, 0) - self.safety.init_tests() - - def test_cancel(self): - for acc_state in range(16): - self.safety.set_controls_allowed(True) - should_tx = acc_state == self.acc_states["ACC_CANCEL_GENERIC_SILENT"] - self.assertFalse(self._tx(self._long_control_msg(0, acc_state=acc_state, accel_limits=(self.MIN_ACCEL, self.MAX_ACCEL)))) - self.assertEqual(should_tx, self._tx(self._long_control_msg(0, acc_state=acc_state))) - - def test_no_aeb(self): - for aeb_event in range(4): - self.assertEqual(self._tx(self._long_control_msg(10, acc_state=self.acc_states["ACC_CANCEL_GENERIC_SILENT"], aeb_event=aeb_event)), aeb_event == 0) - - -class TestTeslaLongitudinalSafety(TestTeslaSafetyBase): - RELAY_MALFUNCTION_ADDRS = {0: (MSG_DAS_steeringControl, MSG_APS_eacMonitor, MSG_DAS_Control)} - FWD_BLACKLISTED_ADDRS = {2: [MSG_DAS_steeringControl, MSG_APS_eacMonitor, MSG_DAS_Control]} - - def setUp(self): - super().setUp() - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.tesla, TeslaSafetyFlags.LONG_CONTROL) - self.safety.init_tests() - - def test_no_aeb(self): - for aeb_event in range(4): - self.assertEqual(self._tx(self._long_control_msg(10, aeb_event=aeb_event)), aeb_event == 0) - - def test_stock_aeb_passthrough(self): - no_aeb_msg = self._long_control_msg(10, aeb_event=0) - no_aeb_msg_cam = self._long_control_msg(10, aeb_event=0, bus=2) - aeb_msg_cam = self._long_control_msg(10, aeb_event=1, bus=2) - - # stock system sends no AEB -> no forwarding, and OP is allowed to TX - self.assertEqual(1, self._rx(no_aeb_msg_cam)) - self.assertEqual(-1, self.safety.safety_fwd_hook(2, no_aeb_msg_cam.addr)) - self.assertTrue(self._tx(no_aeb_msg)) - - # stock system sends AEB -> forwarding, and OP is not allowed to TX - self.assertEqual(1, self._rx(aeb_msg_cam)) - self.assertEqual(0, self.safety.safety_fwd_hook(2, aeb_msg_cam.addr)) - self.assertFalse(self._tx(no_aeb_msg)) - - def test_prevent_reverse(self): - # Note: Tesla can reverse while at a standstill if both accel_min and accel_max are negative. - self.safety.set_controls_allowed(True) - - # accel_min and accel_max are positive - self.assertTrue(self._tx(self._long_control_msg(set_speed=10, accel_limits=(1.1, 0.8)))) - self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(1.1, 0.8)))) - - # accel_min and accel_max are both zero - self.assertTrue(self._tx(self._long_control_msg(set_speed=10, accel_limits=(0, 0)))) - self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(0, 0)))) - - # accel_min and accel_max have opposing signs - self.assertTrue(self._tx(self._long_control_msg(set_speed=10, accel_limits=(-0.8, 1.3)))) - self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(0.8, -1.3)))) - self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(0, -1.3)))) - - # accel_min and accel_max are negative - self.assertFalse(self._tx(self._long_control_msg(set_speed=10, accel_limits=(-1.1, -0.6)))) - self.assertFalse(self._tx(self._long_control_msg(set_speed=0, accel_limits=(-0.6, -1.1)))) - self.assertFalse(self._tx(self._long_control_msg(set_speed=0, accel_limits=(-0.1, -0.1)))) - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_toyota.py b/opendbc_repo/opendbc/safety/tests/test_toyota.py deleted file mode 100755 index 035c4dc09a..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_toyota.py +++ /dev/null @@ -1,356 +0,0 @@ -#!/usr/bin/env python3 -import numpy as np -import random -import unittest -import itertools - -from opendbc.car.toyota.values import ToyotaSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - -TOYOTA_COMMON_TX_MSGS = [[0x2E4, 0], [0x191, 0], [0x412, 0], [0x343, 0], [0x1D2, 0]] # LKAS + LTA + ACC & PCM cancel cmds -TOYOTA_SECOC_TX_MSGS = [[0x131, 0]] + TOYOTA_COMMON_TX_MSGS -TOYOTA_COMMON_LONG_TX_MSGS = [[0x283, 0], [0x2E6, 0], [0x2E7, 0], [0x33E, 0], [0x344, 0], [0x365, 0], [0x366, 0], [0x4CB, 0], # DSU bus 0 - [0x128, 1], [0x141, 1], [0x160, 1], [0x161, 1], [0x470, 1], # DSU bus 1 - [0x411, 0], # PCS_HUD - [0x750, 0]] # radar diagnostic address - - -class TestToyotaSafetyBase(common.PandaCarSafetyTest, common.LongitudinalAccelSafetyTest): - - TX_MSGS = TOYOTA_COMMON_TX_MSGS + TOYOTA_COMMON_LONG_TX_MSGS - RELAY_MALFUNCTION_ADDRS = {0: (0x2E4, 0x343)} - FWD_BLACKLISTED_ADDRS = {2: [0x2E4, 0x412, 0x191, 0x343]} - EPS_SCALE = 73 - - packer: CANPackerPanda - safety: libsafety_py.Panda - - @classmethod - def setUpClass(cls): - if cls.__name__.endswith("Base"): - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def _torque_meas_msg(self, torque: int, driver_torque: int | None = None): - values = {"STEER_TORQUE_EPS": (torque / self.EPS_SCALE) * 100.} - if driver_torque is not None: - values["STEER_TORQUE_DRIVER"] = driver_torque - return self.packer.make_can_msg_panda("STEER_TORQUE_SENSOR", 0, values) - - # Both torque and angle safety modes test with each other's steering commands - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"STEER_TORQUE_CMD": torque, "STEER_REQUEST": steer_req} - return self.packer.make_can_msg_panda("STEERING_LKA", 0, values) - - def _angle_meas_msg(self, angle: float, steer_angle_initializing: bool = False): - # This creates a steering torque angle message. Not set on all platforms, - # relative to init angle on some older TSS2 platforms. Only to be used with LTA - values = {"STEER_ANGLE": angle, "STEER_ANGLE_INITIALIZING": int(steer_angle_initializing)} - return self.packer.make_can_msg_panda("STEER_TORQUE_SENSOR", 0, values) - - def _angle_cmd_msg(self, angle: float, enabled: bool): - return self._lta_msg(int(enabled), int(enabled), angle, torque_wind_down=100 if enabled else 0) - - def _lta_msg(self, req, req2, angle_cmd, torque_wind_down=100): - values = {"STEER_REQUEST": req, "STEER_REQUEST_2": req2, "STEER_ANGLE_CMD": angle_cmd, "TORQUE_WIND_DOWN": torque_wind_down} - return self.packer.make_can_msg_panda("STEERING_LTA", 0, values) - - def _accel_msg(self, accel, cancel_req=0): - values = {"ACCEL_CMD": accel, "CANCEL_REQ": cancel_req} - return self.packer.make_can_msg_panda("ACC_CONTROL", 0, values) - - def _speed_msg(self, speed): - values = {("WHEEL_SPEED_%s" % n): speed * 3.6 for n in ["FR", "FL", "RR", "RL"]} - return self.packer.make_can_msg_panda("WHEEL_SPEEDS", 0, values) - - def _user_brake_msg(self, brake): - values = {"BRAKE_PRESSED": brake} - return self.packer.make_can_msg_panda("BRAKE_MODULE", 0, values) - - def _user_gas_msg(self, gas): - cruise_active = self.safety.get_controls_allowed() - values = {"GAS_RELEASED": not gas, "CRUISE_ACTIVE": cruise_active} - return self.packer.make_can_msg_panda("PCM_CRUISE", 0, values) - - def _pcm_status_msg(self, enable): - values = {"CRUISE_ACTIVE": enable} - return self.packer.make_can_msg_panda("PCM_CRUISE", 0, values) - - def test_diagnostics(self, stock_longitudinal: bool = False): - for should_tx, msg in ((False, b"\x6D\x02\x3E\x00\x00\x00\x00\x00"), # fwdCamera tester present - (False, b"\x0F\x03\xAA\xAA\x00\x00\x00\x00"), # non-tester present - (True, b"\x0F\x02\x3E\x00\x00\x00\x00\x00")): - tester_present = libsafety_py.make_CANPacket(0x750, 0, msg) - self.assertEqual(should_tx and not stock_longitudinal, self._tx(tester_present)) - - def test_block_aeb(self, stock_longitudinal: bool = False): - for controls_allowed in (True, False): - for bad in (True, False): - for _ in range(10): - self.safety.set_controls_allowed(controls_allowed) - dat = [random.randint(1, 255) for _ in range(7)] - if not bad: - dat = [0]*6 + dat[-1:] - msg = libsafety_py.make_CANPacket(0x283, 0, bytes(dat)) - self.assertEqual(not bad and not stock_longitudinal, self._tx(msg)) - - # Only allow LTA msgs with no actuation - def test_lta_steer_cmd(self): - for engaged, req, req2, torque_wind_down, angle in itertools.product([True, False], - [0, 1], [0, 1], - [0, 50, 100], - np.linspace(-20, 20, 5)): - self.safety.set_controls_allowed(engaged) - - should_tx = not req and not req2 and angle == 0 and torque_wind_down == 0 - self.assertEqual(should_tx, self._tx(self._lta_msg(req, req2, angle, torque_wind_down)), - f"{req=} {req2=} {angle=} {torque_wind_down=}") - - def test_rx_hook(self): - # checksum checks - for msg in ["trq", "pcm"]: - self.safety.set_controls_allowed(1) - if msg == "trq": - to_push = self._torque_meas_msg(0) - if msg == "pcm": - to_push = self._pcm_status_msg(True) - self.assertTrue(self._rx(to_push)) - to_push[0].data[4] = 0 - to_push[0].data[5] = 0 - to_push[0].data[6] = 0 - to_push[0].data[7] = 0 - self.assertFalse(self._rx(to_push)) - self.assertFalse(self.safety.get_controls_allowed()) - - -class TestToyotaSafetyTorque(TestToyotaSafetyBase, common.MotorTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): - - MAX_RATE_UP = 15 - MAX_RATE_DOWN = 25 - MAX_TORQUE = 1500 - MAX_RT_DELTA = 450 - RT_INTERVAL = 250000 - MAX_TORQUE_ERROR = 350 - TORQUE_MEAS_TOLERANCE = 1 # toyota safety adds one to be conservative for rounding - - # Safety around steering req bit - MIN_VALID_STEERING_FRAMES = 18 - MAX_INVALID_STEERING_FRAMES = 1 - MIN_VALID_STEERING_RT_INTERVAL = 170000 # a ~10% buffer, can send steer up to 110Hz - - def setUp(self): - self.packer = CANPackerPanda("toyota_nodsu_pt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE) - self.safety.init_tests() - - -class TestToyotaSafetyAngle(TestToyotaSafetyBase, common.AngleSteeringSafetyTest): - - # Angle control limits - STEER_ANGLE_MAX = 94.9461 # deg - DEG_TO_CAN = 17.452007 # 1 / 0.0573 deg to can - - ANGLE_RATE_BP = [5., 25., 25.] - ANGLE_RATE_UP = [0.3, 0.15, 0.15] # windup limit - ANGLE_RATE_DOWN = [0.36, 0.26, 0.26] # unwind limit - - MAX_LTA_ANGLE = 94.9461 # PCS faults if commanding above this, deg - MAX_MEAS_TORQUE = 1500 # max allowed measured EPS torque before wind down - MAX_LTA_DRIVER_TORQUE = 150 # max allowed driver torque before wind down - - def setUp(self): - self.packer = CANPackerPanda("toyota_nodsu_pt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE | ToyotaSafetyFlags.LTA) - self.safety.init_tests() - - # Only allow LKA msgs with no actuation - def test_lka_steer_cmd(self): - for engaged, steer_req, torque in itertools.product([True, False], - [0, 1], - np.linspace(-1500, 1500, 7)): - self.safety.set_controls_allowed(engaged) - torque = int(torque) - self.safety.set_rt_torque_last(torque) - self.safety.set_torque_meas(torque, torque) - self.safety.set_desired_torque_last(torque) - - should_tx = not steer_req and torque == 0 - self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(torque, steer_req))) - - def test_lta_steer_cmd(self): - """ - Tests the LTA steering command message - controls_allowed: - * STEER_REQUEST and STEER_REQUEST_2 do not mismatch - * TORQUE_WIND_DOWN is only set to 0 or 100 when STEER_REQUEST and STEER_REQUEST_2 are both 1 - * Full torque messages are blocked if either EPS torque or driver torque is above the threshold - - not controls_allowed: - * STEER_REQUEST, STEER_REQUEST_2, and TORQUE_WIND_DOWN are all 0 - """ - for controls_allowed in (True, False): - for angle in np.arange(-90, 90, 1): - self.safety.set_controls_allowed(controls_allowed) - self._reset_angle_measurement(angle) - self._set_prev_desired_angle(angle) - - self.assertTrue(self._tx(self._lta_msg(0, 0, angle, 0))) - if controls_allowed: - # Test the two steer request bits and TORQUE_WIND_DOWN torque wind down signal - for req, req2, torque_wind_down in itertools.product([0, 1], [0, 1], [0, 50, 100]): - mismatch = not (req or req2) and torque_wind_down != 0 - should_tx = req == req2 and (torque_wind_down in (0, 100)) and not mismatch - self.assertEqual(should_tx, self._tx(self._lta_msg(req, req2, angle, torque_wind_down))) - - # Test max EPS torque and driver override thresholds - cases = itertools.product( - (0, self.MAX_MEAS_TORQUE - 1, self.MAX_MEAS_TORQUE, self.MAX_MEAS_TORQUE + 1, self.MAX_MEAS_TORQUE * 2), - (0, self.MAX_LTA_DRIVER_TORQUE - 1, self.MAX_LTA_DRIVER_TORQUE, self.MAX_LTA_DRIVER_TORQUE + 1, self.MAX_LTA_DRIVER_TORQUE * 2) - ) - - for eps_torque, driver_torque in cases: - for sign in (-1, 1): - for _ in range(6): - self._rx(self._torque_meas_msg(sign * eps_torque, sign * driver_torque)) - - # Toyota adds 1 to EPS torque since it is rounded after EPS factor - should_tx = (eps_torque - 1) <= self.MAX_MEAS_TORQUE and driver_torque <= self.MAX_LTA_DRIVER_TORQUE - self.assertEqual(should_tx, self._tx(self._lta_msg(1, 1, angle, 100))) - self.assertTrue(self._tx(self._lta_msg(1, 1, angle, 0))) # should tx if we wind down torque - - else: - # Controls not allowed - for req, req2, torque_wind_down in itertools.product([0, 1], [0, 1], [0, 50, 100]): - should_tx = not (req or req2) and torque_wind_down == 0 - self.assertEqual(should_tx, self._tx(self._lta_msg(req, req2, angle, torque_wind_down))) - - def test_angle_measurements(self): - """ - * Tests angle meas quality flag dictates whether angle measurement is parsed, and if rx is valid - * Tests rx hook correctly clips the angle measurement, since it is to be compared to LTA cmd when inactive - """ - for steer_angle_initializing in (True, False): - for angle in np.arange(0, self.STEER_ANGLE_MAX * 2, 1): - # If init flag is set, do not rx or parse any angle measurements - for a in (angle, -angle, 0, 0, 0, 0): - self.assertEqual(not steer_angle_initializing, - self._rx(self._angle_meas_msg(a, steer_angle_initializing))) - - final_angle = 0 if steer_angle_initializing else round(angle * self.DEG_TO_CAN) - self.assertEqual(self.safety.get_angle_meas_min(), -final_angle) - self.assertEqual(self.safety.get_angle_meas_max(), final_angle) - - self._rx(self._angle_meas_msg(0)) - self.assertEqual(self.safety.get_angle_meas_min(), -final_angle) - self.assertEqual(self.safety.get_angle_meas_max(), 0) - - self._rx(self._angle_meas_msg(0)) - self.assertEqual(self.safety.get_angle_meas_min(), 0) - self.assertEqual(self.safety.get_angle_meas_max(), 0) - - -class TestToyotaAltBrakeSafety(TestToyotaSafetyTorque): - - def setUp(self): - self.packer = CANPackerPanda("toyota_new_mc_pt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE | ToyotaSafetyFlags.ALT_BRAKE) - self.safety.init_tests() - - def _user_brake_msg(self, brake): - values = {"BRAKE_PRESSED": brake} - return self.packer.make_can_msg_panda("BRAKE_MODULE", 0, values) - - # No LTA message in the DBC - def test_lta_steer_cmd(self): - pass - - -class TestToyotaStockLongitudinalBase(TestToyotaSafetyBase): - - TX_MSGS = TOYOTA_COMMON_TX_MSGS - # Base addresses minus ACC_CONTROL (0x343) - RELAY_MALFUNCTION_ADDRS = {0: (0x2E4,)} - FWD_BLACKLISTED_ADDRS = {2: [0x2E4, 0x412, 0x191]} - - LONGITUDINAL = False - - def test_diagnostics(self, stock_longitudinal: bool = True): - super().test_diagnostics(stock_longitudinal=stock_longitudinal) - - def test_block_aeb(self, stock_longitudinal: bool = True): - super().test_block_aeb(stock_longitudinal=stock_longitudinal) - - def test_acc_cancel(self): - """ - Regardless of controls allowed, never allow ACC_CONTROL if cancel bit isn't set - """ - for controls_allowed in [True, False]: - self.safety.set_controls_allowed(controls_allowed) - for accel in np.arange(self.MIN_ACCEL - 1, self.MAX_ACCEL + 1, 0.1): - self.assertFalse(self._tx(self._accel_msg(accel))) - should_tx = np.isclose(accel, 0, atol=0.0001) - self.assertEqual(should_tx, self._tx(self._accel_msg(accel, cancel_req=1))) - - -class TestToyotaStockLongitudinalTorque(TestToyotaStockLongitudinalBase, TestToyotaSafetyTorque): - - def setUp(self): - self.packer = CANPackerPanda("toyota_nodsu_pt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE | ToyotaSafetyFlags.STOCK_LONGITUDINAL) - self.safety.init_tests() - - -class TestToyotaStockLongitudinalAngle(TestToyotaStockLongitudinalBase, TestToyotaSafetyAngle): - - def setUp(self): - self.packer = CANPackerPanda("toyota_nodsu_pt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, - self.EPS_SCALE | ToyotaSafetyFlags.STOCK_LONGITUDINAL | ToyotaSafetyFlags.LTA) - self.safety.init_tests() - - -class TestToyotaSecOcSafety(TestToyotaStockLongitudinalBase): - - TX_MSGS = TOYOTA_SECOC_TX_MSGS - RELAY_MALFUNCTION_ADDRS = {0: (0x2E4,)} - FWD_BLACKLISTED_ADDRS = {2: [0x2E4, 0x412, 0x191, 0x131]} - - def setUp(self): - self.packer = CANPackerPanda("toyota_secoc_pt_generated") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, - self.EPS_SCALE | ToyotaSafetyFlags.STOCK_LONGITUDINAL | ToyotaSafetyFlags.SECOC) - self.safety.init_tests() - - # This platform also has alternate brake and PCM messages, but same naming in the DBC, so same packers work - - def _user_gas_msg(self, gas): - values = {"GAS_PEDAL_USER": gas} - return self.packer.make_can_msg_panda("GAS_PEDAL", 0, values) - - # This platform sends both STEERING_LTA (same as other Toyota) and STEERING_LTA_2 (SecOC signed) - # STEERING_LTA is checked for no-actuation by the base class, STEERING_LTA_2 is checked for no-actuation below - - def _lta_2_msg(self, req, req2, angle_cmd, torque_wind_down=100): - values = {"STEER_REQUEST": req, "STEER_REQUEST_2": req2, "STEER_ANGLE_CMD": angle_cmd} - return self.packer.make_can_msg_panda("STEERING_LTA_2", 0, values) - - def test_lta_2_steer_cmd(self): - for engaged, req, req2, angle in itertools.product([True, False], [0, 1], [0, 1], np.linspace(-20, 20, 5)): - self.safety.set_controls_allowed(engaged) - - should_tx = not req and not req2 and angle == 0 - self.assertEqual(should_tx, self._tx(self._lta_2_msg(req, req2, angle)), f"{req=} {req2=} {angle=}") - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py b/opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py deleted file mode 100755 index 1d66fbd745..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py +++ /dev/null @@ -1,223 +0,0 @@ -#!/usr/bin/env python3 -import unittest -import numpy as np -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda -from opendbc.car.volkswagen.values import VolkswagenSafetyFlags - -MAX_ACCEL = 2.0 -MIN_ACCEL = -3.5 - -MSG_ESP_19 = 0xB2 # RX from ABS, for wheel speeds -MSG_LH_EPS_03 = 0x9F # RX from EPS, for driver steering torque -MSG_ESP_05 = 0x106 # RX from ABS, for brake light state -MSG_TSK_06 = 0x120 # RX from ECU, for ACC status from drivetrain coordinator -MSG_MOTOR_20 = 0x121 # RX from ECU, for driver throttle input -MSG_ACC_06 = 0x122 # TX by OP, ACC control instructions to the drivetrain coordinator -MSG_HCA_01 = 0x126 # TX by OP, Heading Control Assist steering torque -MSG_GRA_ACC_01 = 0x12B # TX by OP, ACC control buttons for cancel/resume -MSG_ACC_07 = 0x12E # TX by OP, ACC control instructions to the drivetrain coordinator -MSG_ACC_02 = 0x30C # TX by OP, ACC HUD data to the instrument cluster -MSG_LDW_02 = 0x397 # TX by OP, Lane line recognition and text alerts - - -class TestVolkswagenMqbSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): - RELAY_MALFUNCTION_ADDRS = {0: (MSG_HCA_01,)} - - MAX_RATE_UP = 4 - MAX_RATE_DOWN = 10 - MAX_TORQUE = 300 - MAX_RT_DELTA = 75 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 80 - DRIVER_TORQUE_FACTOR = 3 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestVolkswagenMqbSafety": - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - # Wheel speeds _esp_19_msg - def _speed_msg(self, speed): - values = {"ESP_%s_Radgeschw_02" % s: speed for s in ["HL", "HR", "VL", "VR"]} - return self.packer.make_can_msg_panda("ESP_19", 0, values) - - # Driver brake pressure over threshold - def _esp_05_msg(self, brake): - values = {"ESP_Fahrer_bremst": brake} - return self.packer.make_can_msg_panda("ESP_05", 0, values) - - # Brake pedal switch - def _motor_14_msg(self, brake): - values = {"MO_Fahrer_bremst": brake} - return self.packer.make_can_msg_panda("Motor_14", 0, values) - - def _user_brake_msg(self, brake): - return self._motor_14_msg(brake) - - # Driver throttle input - def _user_gas_msg(self, gas): - values = {"MO_Fahrpedalrohwert_01": gas} - return self.packer.make_can_msg_panda("Motor_20", 0, values) - - # ACC engagement status - def _tsk_status_msg(self, enable, main_switch=True): - if main_switch: - tsk_status = 3 if enable else 2 - else: - tsk_status = 0 - values = {"TSK_Status": tsk_status} - return self.packer.make_can_msg_panda("TSK_06", 0, values) - - def _pcm_status_msg(self, enable): - return self._tsk_status_msg(enable) - - # Driver steering input torque - def _torque_driver_msg(self, torque): - values = {"EPS_Lenkmoment": abs(torque), "EPS_VZ_Lenkmoment": torque < 0} - return self.packer.make_can_msg_panda("LH_EPS_03", 0, values) - - # openpilot steering output torque - def _torque_cmd_msg(self, torque, steer_req=1): - values = {"HCA_01_LM_Offset": abs(torque), "HCA_01_LM_OffSign": torque < 0, "HCA_01_Sendestatus": steer_req} - return self.packer.make_can_msg_panda("HCA_01", 0, values) - - # Cruise control buttons - def _gra_acc_01_msg(self, cancel=0, resume=0, _set=0, bus=2): - values = {"GRA_Abbrechen": cancel, "GRA_Tip_Setzen": _set, "GRA_Tip_Wiederaufnahme": resume} - return self.packer.make_can_msg_panda("GRA_ACC_01", bus, values) - - # Acceleration request to drivetrain coordinator - def _acc_06_msg(self, accel): - values = {"ACC_Sollbeschleunigung_02": accel} - return self.packer.make_can_msg_panda("ACC_06", 0, values) - - # Acceleration request to drivetrain coordinator - def _acc_07_msg(self, accel, secondary_accel=3.02): - values = {"ACC_Sollbeschleunigung_02": accel, "ACC_Folgebeschl": secondary_accel} - return self.packer.make_can_msg_panda("ACC_07", 0, values) - - # Verify brake_pressed is true if either the switch or pressure threshold signals are true - def test_redundant_brake_signals(self): - test_combinations = [(True, True, True), (True, True, False), (True, False, True), (False, False, False)] - for brake_pressed, motor_14_signal, esp_05_signal in test_combinations: - self._rx(self._motor_14_msg(False)) - self._rx(self._esp_05_msg(False)) - self.assertFalse(self.safety.get_brake_pressed_prev()) - self._rx(self._motor_14_msg(motor_14_signal)) - self._rx(self._esp_05_msg(esp_05_signal)) - self.assertEqual(brake_pressed, self.safety.get_brake_pressed_prev(), - f"expected {brake_pressed=} with {motor_14_signal=} and {esp_05_signal=}") - - def test_torque_measurements(self): - # TODO: make this test work with all cars - self._rx(self._torque_driver_msg(50)) - self._rx(self._torque_driver_msg(-50)) - self._rx(self._torque_driver_msg(0)) - self._rx(self._torque_driver_msg(0)) - self._rx(self._torque_driver_msg(0)) - self._rx(self._torque_driver_msg(0)) - - self.assertEqual(-50, self.safety.get_torque_driver_min()) - self.assertEqual(50, self.safety.get_torque_driver_max()) - - self._rx(self._torque_driver_msg(0)) - self.assertEqual(0, self.safety.get_torque_driver_max()) - self.assertEqual(-50, self.safety.get_torque_driver_min()) - - self._rx(self._torque_driver_msg(0)) - self.assertEqual(0, self.safety.get_torque_driver_max()) - self.assertEqual(0, self.safety.get_torque_driver_min()) - - -class TestVolkswagenMqbStockSafety(TestVolkswagenMqbSafety): - TX_MSGS = [[MSG_HCA_01, 0], [MSG_LDW_02, 0], [MSG_LH_EPS_03, 2], [MSG_GRA_ACC_01, 0], [MSG_GRA_ACC_01, 2]] - FWD_BLACKLISTED_ADDRS = {0: [MSG_LH_EPS_03], 2: [MSG_HCA_01, MSG_LDW_02]} - - def setUp(self): - self.packer = CANPackerPanda("vw_mqb_2010") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagen, 0) - self.safety.init_tests() - - def test_spam_cancel_safety_check(self): - self.safety.set_controls_allowed(0) - self.assertTrue(self._tx(self._gra_acc_01_msg(cancel=1))) - self.assertFalse(self._tx(self._gra_acc_01_msg(resume=1))) - self.assertFalse(self._tx(self._gra_acc_01_msg(_set=1))) - # do not block resume if we are engaged already - self.safety.set_controls_allowed(1) - self.assertTrue(self._tx(self._gra_acc_01_msg(resume=1))) - - -class TestVolkswagenMqbLongSafety(TestVolkswagenMqbSafety): - TX_MSGS = [[MSG_HCA_01, 0], [MSG_LDW_02, 0], [MSG_LH_EPS_03, 2], [MSG_ACC_02, 0], [MSG_ACC_06, 0], [MSG_ACC_07, 0]] - FWD_BLACKLISTED_ADDRS = {0: [MSG_LH_EPS_03], 2: [MSG_HCA_01, MSG_LDW_02, MSG_ACC_02, MSG_ACC_06, MSG_ACC_07]} - INACTIVE_ACCEL = 3.01 - - def setUp(self): - self.packer = CANPackerPanda("vw_mqb_2010") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagen, VolkswagenSafetyFlags.LONG_CONTROL) - self.safety.init_tests() - - # stock cruise controls are entirely bypassed under openpilot longitudinal control - def test_disable_control_allowed_from_cruise(self): - pass - - def test_enable_control_allowed_from_cruise(self): - pass - - def test_cruise_engaged_prev(self): - pass - - def test_set_and_resume_buttons(self): - for button in ["set", "resume"]: - # ACC main switch must be on, engage on falling edge - self.safety.set_controls_allowed(0) - self._rx(self._tsk_status_msg(False, main_switch=False)) - self._rx(self._gra_acc_01_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) - self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} with main switch off") - self._rx(self._tsk_status_msg(False, main_switch=True)) - self._rx(self._gra_acc_01_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) - self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} rising edge") - self._rx(self._gra_acc_01_msg(bus=0)) - self.assertTrue(self.safety.get_controls_allowed(), f"controls not allowed on {button} falling edge") - - def test_cancel_button(self): - # Disable on rising edge of cancel button - self._rx(self._tsk_status_msg(False, main_switch=True)) - self.safety.set_controls_allowed(1) - self._rx(self._gra_acc_01_msg(cancel=True, bus=0)) - self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after cancel") - - def test_main_switch(self): - # Disable as soon as main switch turns off - self._rx(self._tsk_status_msg(False, main_switch=True)) - self.safety.set_controls_allowed(1) - self._rx(self._tsk_status_msg(False, main_switch=False)) - self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after ACC main switch off") - - def test_accel_safety_check(self): - for controls_allowed in [True, False]: - # enforce we don't skip over 0 or inactive accel - for accel in np.concatenate((np.arange(MIN_ACCEL - 2, MAX_ACCEL + 2, 0.03), [0, self.INACTIVE_ACCEL])): - accel = round(accel, 2) # floats might not hit exact boundary conditions without rounding - is_inactive_accel = accel == self.INACTIVE_ACCEL - send = (controls_allowed and MIN_ACCEL <= accel <= MAX_ACCEL) or is_inactive_accel - self.safety.set_controls_allowed(controls_allowed) - # primary accel request used by ECU - self.assertEqual(send, self._tx(self._acc_06_msg(accel)), (controls_allowed, accel)) - # additional accel request used by ABS/ESP - self.assertEqual(send, self._tx(self._acc_07_msg(accel)), (controls_allowed, accel)) - # ensure the optional secondary accel field remains inactive for now - self.assertEqual(is_inactive_accel, self._tx(self._acc_07_msg(accel, secondary_accel=accel)), (controls_allowed, accel)) - - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py b/opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py deleted file mode 100755 index 72d0876426..0000000000 --- a/opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py +++ /dev/null @@ -1,198 +0,0 @@ -#!/usr/bin/env python3 -import unittest - -from opendbc.car.volkswagen.values import VolkswagenSafetyFlags -from opendbc.car.structs import CarParams -from opendbc.safety.tests.libsafety import libsafety_py -import opendbc.safety.tests.common as common -from opendbc.safety.tests.common import CANPackerPanda - -MSG_LENKHILFE_3 = 0x0D0 # RX from EPS, for steering angle and driver steering torque -MSG_HCA_1 = 0x0D2 # TX by OP, Heading Control Assist steering torque -MSG_BREMSE_1 = 0x1A0 # RX from ABS, for ego speed -MSG_MOTOR_2 = 0x288 # RX from ECU, for CC state and brake switch state -MSG_ACC_SYSTEM = 0x368 # TX by OP, longitudinal acceleration controls -MSG_MOTOR_3 = 0x380 # RX from ECU, for driver throttle input -MSG_GRA_NEU = 0x38A # TX by OP, ACC control buttons for cancel/resume -MSG_MOTOR_5 = 0x480 # RX from ECU, for ACC main switch state -MSG_ACC_GRA_ANZEIGE = 0x56A # TX by OP, ACC HUD -MSG_LDW_1 = 0x5BE # TX by OP, Lane line recognition and text alerts - - -class TestVolkswagenPqSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): - cruise_engaged = False - - RELAY_MALFUNCTION_ADDRS = {0: (MSG_HCA_1,)} - - MAX_RATE_UP = 6 - MAX_RATE_DOWN = 10 - MAX_TORQUE = 300 - MAX_RT_DELTA = 113 - RT_INTERVAL = 250000 - - DRIVER_TORQUE_ALLOWANCE = 80 - DRIVER_TORQUE_FACTOR = 3 - - @classmethod - def setUpClass(cls): - if cls.__name__ == "TestVolkswagenPqSafety": - cls.packer = None - cls.safety = None - raise unittest.SkipTest - - def _set_prev_torque(self, t): - self.safety.set_desired_torque_last(t) - self.safety.set_rt_torque_last(t) - - # Ego speed (Bremse_1) - def _speed_msg(self, speed): - values = {"Geschwindigkeit_neu__Bremse_1_": speed} - return self.packer.make_can_msg_panda("Bremse_1", 0, values) - - # Brake light switch (shared message Motor_2) - def _user_brake_msg(self, brake): - # since this signal is used for engagement status, preserve current state - return self._motor_2_msg(brake_pressed=brake, cruise_engaged=self.safety.get_controls_allowed()) - - # ACC engaged status (shared message Motor_2) - def _pcm_status_msg(self, enable): - self.__class__.cruise_engaged = enable - return self._motor_2_msg(cruise_engaged=enable) - - # Acceleration request to drivetrain coordinator - def _accel_msg(self, accel): - values = {"ACS_Sollbeschl": accel} - return self.packer.make_can_msg_panda("ACC_System", 0, values) - - # Driver steering input torque - def _torque_driver_msg(self, torque): - values = {"LH3_LM": abs(torque), "LH3_LMSign": torque < 0} - return self.packer.make_can_msg_panda("Lenkhilfe_3", 0, values) - - # openpilot steering output torque - def _torque_cmd_msg(self, torque, steer_req=1, hca_status=5): - values = {"LM_Offset": abs(torque), "LM_OffSign": torque < 0, "HCA_Status": hca_status if steer_req else 3} - return self.packer.make_can_msg_panda("HCA_1", 0, values) - - # ACC engagement and brake light switch status - # Called indirectly for compatibility with common.py tests - def _motor_2_msg(self, brake_pressed=False, cruise_engaged=False): - values = {"Bremslichtschalter": brake_pressed, - "GRA_Status": cruise_engaged} - return self.packer.make_can_msg_panda("Motor_2", 0, values) - - # ACC main switch status - def _motor_5_msg(self, main_switch=False): - values = {"GRA_Hauptschalter": main_switch} - return self.packer.make_can_msg_panda("Motor_5", 0, values) - - # Driver throttle input (Motor_3) - def _user_gas_msg(self, gas): - values = {"Fahrpedal_Rohsignal": gas} - return self.packer.make_can_msg_panda("Motor_3", 0, values) - - # Cruise control buttons (GRA_Neu) - def _button_msg(self, _set=False, resume=False, cancel=False, bus=2): - values = {"GRA_Neu_Setzen": _set, "GRA_Recall": resume, "GRA_Abbrechen": cancel} - return self.packer.make_can_msg_panda("GRA_Neu", bus, values) - - def test_torque_measurements(self): - # TODO: make this test work with all cars - self._rx(self._torque_driver_msg(50)) - self._rx(self._torque_driver_msg(-50)) - self._rx(self._torque_driver_msg(0)) - self._rx(self._torque_driver_msg(0)) - self._rx(self._torque_driver_msg(0)) - self._rx(self._torque_driver_msg(0)) - - self.assertEqual(-50, self.safety.get_torque_driver_min()) - self.assertEqual(50, self.safety.get_torque_driver_max()) - - self._rx(self._torque_driver_msg(0)) - self.assertEqual(0, self.safety.get_torque_driver_max()) - self.assertEqual(-50, self.safety.get_torque_driver_min()) - - self._rx(self._torque_driver_msg(0)) - self.assertEqual(0, self.safety.get_torque_driver_max()) - self.assertEqual(0, self.safety.get_torque_driver_min()) - - -class TestVolkswagenPqStockSafety(TestVolkswagenPqSafety): - # Transmit of GRA_Neu is allowed on bus 0 and 2 to keep compatibility with gateway and camera integration - TX_MSGS = [[MSG_HCA_1, 0], [MSG_GRA_NEU, 0], [MSG_GRA_NEU, 2], [MSG_LDW_1, 0]] - FWD_BLACKLISTED_ADDRS = {2: [MSG_HCA_1, MSG_LDW_1]} - - def setUp(self): - self.packer = CANPackerPanda("vw_golf_mk4") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagenPq, 0) - self.safety.init_tests() - - def test_spam_cancel_safety_check(self): - self.safety.set_controls_allowed(0) - self.assertTrue(self._tx(self._button_msg(cancel=True))) - self.assertFalse(self._tx(self._button_msg(resume=True))) - self.assertFalse(self._tx(self._button_msg(_set=True))) - # do not block resume if we are engaged already - self.safety.set_controls_allowed(1) - self.assertTrue(self._tx(self._button_msg(resume=True))) - - -class TestVolkswagenPqLongSafety(TestVolkswagenPqSafety, common.LongitudinalAccelSafetyTest): - TX_MSGS = [[MSG_HCA_1, 0], [MSG_LDW_1, 0], [MSG_ACC_SYSTEM, 0], [MSG_ACC_GRA_ANZEIGE, 0]] - FWD_BLACKLISTED_ADDRS = {2: [MSG_HCA_1, MSG_LDW_1, MSG_ACC_SYSTEM, MSG_ACC_GRA_ANZEIGE]} - INACTIVE_ACCEL = 3.01 - - def setUp(self): - self.packer = CANPackerPanda("vw_golf_mk4") - self.safety = libsafety_py.libsafety - self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagenPq, VolkswagenSafetyFlags.LONG_CONTROL) - self.safety.init_tests() - - # stock cruise controls are entirely bypassed under openpilot longitudinal control - def test_disable_control_allowed_from_cruise(self): - pass - - def test_enable_control_allowed_from_cruise(self): - pass - - def test_cruise_engaged_prev(self): - pass - - def test_set_and_resume_buttons(self): - for button in ["set", "resume"]: - # ACC main switch must be on, engage on falling edge - self.safety.set_controls_allowed(0) - self._rx(self._motor_5_msg(main_switch=False)) - self._rx(self._button_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) - self._rx(self._button_msg(bus=0)) - self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} with main switch off") - self._rx(self._motor_5_msg(main_switch=True)) - self._rx(self._button_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) - self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} rising edge") - self._rx(self._button_msg(bus=0)) - self.assertTrue(self.safety.get_controls_allowed(), f"controls not allowed on {button} falling edge") - - def test_cancel_button(self): - # Disable on rising edge of cancel button - self._rx(self._motor_5_msg(main_switch=True)) - self.safety.set_controls_allowed(1) - self._rx(self._button_msg(cancel=True, bus=0)) - self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after cancel") - - def test_main_switch(self): - # Disable as soon as main switch turns off - self._rx(self._motor_5_msg(main_switch=True)) - self.safety.set_controls_allowed(1) - self._rx(self._motor_5_msg(main_switch=False)) - self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after ACC main switch off") - - def test_torque_cmd_enable_variants(self): - # The EPS rack accepts either 5 or 7 for an enabled status, with different low speed tuning behavior - self.safety.set_controls_allowed(1) - for enabled_status in (5, 7): - self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_RATE_UP, steer_req=1, hca_status=enabled_status)), - f"torque cmd rejected with {enabled_status=}") - -if __name__ == "__main__": - unittest.main() diff --git a/opendbc_repo/pyproject.toml b/opendbc_repo/pyproject.toml deleted file mode 100644 index 119cdfe262..0000000000 --- a/opendbc_repo/pyproject.toml +++ /dev/null @@ -1,124 +0,0 @@ -[project] -name = "opendbc" -version = "0.2.1" -description = "CAN bus databases and tools" -license = { file = "LICENSE" } -authors = [{ name = "Vehicle Researcher", email = "user@comma.ai" }] -readme = "README.md" -requires-python = ">=3.9,<3.13" # pycapnp doesn't work with 3.13 - -urls = { "homepage" = "https://github.com/commaai/opendbc" } - -dependencies = [ - "scons", - "numpy", - "crcmod", - "tqdm", - "pycapnp", - "pycryptodome", -] - -[project.optional-dependencies] -testing = [ - "cffi", - "gcovr", - "pytest", - "pytest-coverage", - "pytest-mock", - "pytest-randomly", - "pytest-xdist", - "pytest-subtests", - "hypothesis==6.47.*", - "parameterized>=0.8,<0.9", - - # static analysis - "ruff", - "ty", - "lefthook", - "cpplint", - "codespell", -] -docs = [ - "Jinja2", - "natsort", -] -examples = [ - "inputs", - "matplotlib", -] - -[build-system] -requires = ["setuptools"] -build-backend = "setuptools.build_meta" - -[tool.pytest.ini_options] -addopts = "-Werror --strict-config --strict-markers --durations=10 -n auto" -python_files = "test_*.py" -testpaths = [ - "opendbc" -] - -[tool.codespell] -quiet-level = 3 -ignore-words-list = "alo,ba,bu,deque,hda,grey,arange" -builtin = "clear,rare,informal,code,names,en-GB_to_en-US" -check-hidden = true - -[tool.mypy] -# helpful warnings -warn_redundant_casts=true -warn_unreachable=true -warn_unused_ignores=true - -# restrict dynamic typing -warn_return_any=true - -# allow implicit optionals for default args -implicit_optional = true - -explicit_package_bases=true - -# https://beta.ruff.rs/docs/configuration/#using-pyprojecttoml -[tool.ruff] -line-length = 160 -indent-width = 2 -target-version="py311" - -[tool.ruff.lint] -select = [ - "E", "F", "W", "PIE", "C4", "ISC", "A", "B", - "NPY", # numpy - "UP", # pyupgrade - "TRY203", "TRY400", "TRY401", # try/excepts - "RUF008", "RUF100", - "TID251", - "PLR1704", - "INP001", -] -ignore = [ - "W292", - "E741", - "E402", - "C408", - "ISC003", - "B027", - "B024", - "UP031", - "NPY002", # new numpy random syntax is worse - "C420", -] -flake8-implicit-str-concat.allow-multiline=false - -[tool.ruff.lint.per-file-ignores] -"site_scons/*" = ["ALL"] - -[tool.ruff.lint.flake8-tidy-imports.banned-api] -"pytest.main".msg = "pytest.main requires special handling that is easy to mess up!" -# TODO: re-enable when all tests are converted to pytest -#"unittest".msg = "Use pytest" - -[tool.setuptools] -include-package-data = true - -[tool.setuptools.package-data] -"opendbc.safety" = ["*.h", "board/*.h", "board/drivers/*.h", "modes/*.h"] diff --git a/opendbc_repo/setup.sh b/opendbc_repo/setup.sh deleted file mode 100755 index 29c5bf2cd1..0000000000 --- a/opendbc_repo/setup.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -set -e - -BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" - -# TODO: why doesn't uv do this? -export PYTHONPATH=$BASEDIR - -# *** dependencies install *** -if ! command -v uv &>/dev/null; then - echo "'uv' is not installed. Installing 'uv'..." - curl -LsSf https://astral.sh/uv/install.sh | sh -fi - -export UV_PROJECT_ENVIRONMENT="$BASEDIR/.venv" -uv sync --all-extras -source "$PYTHONPATH/.venv/bin/activate" - -$BASEDIR/opendbc/safety/tests/misra/install.sh diff --git a/opendbc_repo/site_scons/site_tools/cython.py b/opendbc_repo/site_scons/site_tools/cython.py deleted file mode 100644 index c291475533..0000000000 --- a/opendbc_repo/site_scons/site_tools/cython.py +++ /dev/null @@ -1,72 +0,0 @@ -import re -import SCons -from SCons.Action import Action -from SCons.Scanner import Scanner - -pyx_from_import_re = re.compile(r'^from\s+(\S+)\s+cimport', re.M) -pyx_import_re = re.compile(r'^cimport\s+(\S+)', re.M) -cdef_import_re = re.compile(r'^cdef extern from\s+.(\S+).:', re.M) - - -def pyx_scan(node, env, path, arg=None): - contents = node.get_text_contents() - - # from cimport ... - matches = pyx_from_import_re.findall(contents) - # cimport - matches += pyx_import_re.findall(contents) - - # Modules can be either .pxd or .pyx files - files = [m.replace('.', '/') + '.pxd' for m in matches] - files += [m.replace('.', '/') + '.pyx' for m in matches] - - # cdef extern from - files += cdef_import_re.findall(contents) - - # Handle relative imports - cur_dir = str(node.get_dir()) - files = [cur_dir + f if f.startswith('/') else f for f in files] - - # Filter out non-existing files (probably system imports) - files = [f for f in files if env.File(f).exists()] - return env.File(files) - - -pyxscanner = Scanner(function=pyx_scan, skeys=['.pyx', '.pxd'], recursive=True) -cythonAction = Action("$CYTHONCOM") - - -def create_builder(env): - try: - cython = env['BUILDERS']['Cython'] - except KeyError: - cython = SCons.Builder.Builder( - action=cythonAction, - emitter={}, - suffix=cython_suffix_emitter, - single_source=1 - ) - env.Append(SCANNERS=pyxscanner) - env['BUILDERS']['Cython'] = cython - return cython - -def cython_suffix_emitter(env, source): - return "$CYTHONCFILESUFFIX" - -def generate(env): - env["CYTHON"] = "cythonize" - env["CYTHONCOM"] = "$CYTHON $CYTHONFLAGS $SOURCE" - env["CYTHONCFILESUFFIX"] = ".cpp" - - c_file, _ = SCons.Tool.createCFileBuilders(env) - - c_file.suffix['.pyx'] = cython_suffix_emitter - c_file.add_action('.pyx', cythonAction) - - c_file.suffix['.py'] = cython_suffix_emitter - c_file.add_action('.py', cythonAction) - - create_builder(env) - -def exists(env): - return True diff --git a/opendbc_repo/test.sh b/opendbc_repo/test.sh deleted file mode 100755 index d91afb0356..0000000000 --- a/opendbc_repo/test.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -set -e - -DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" -cd $DIR - -source ./setup.sh - -# *** build *** -scons -j8 - -# *** lint + test *** -lefthook run test - -# *** all done *** -GREEN='\033[0;32m' -NC='\033[0m' -printf "\n${GREEN}All good!${NC} Finished build, lint, and test in ${SECONDS}s\n" diff --git a/selfdrive/car/bmw/__init__.py b/selfdrive/car/bmw/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/selfdrive/car/bmw/bmwcan.py b/selfdrive/car/bmw/bmwcan.py deleted file mode 100644 index 03458e7ee5..0000000000 --- a/selfdrive/car/bmw/bmwcan.py +++ /dev/null @@ -1,75 +0,0 @@ -from enum import Enum -from opendbc.can.packer import CANPacker -from openpilot.selfdrive.car.bmw.values import CanBus - -class SteeringModes(Enum): - Off = 0 - TorqueControl = 1 - AngleControl = 2 - SoftOff = 3 - -class CruiseStalk(Enum): - plus1 = "plus1" - plus5 = "plus5" - minus1 = "minus1" - minus5 = "minus5" - cancel = "cancel" - resume = "resume" - cancel_lever_up = "cancel_lever_up" - -# *** StepperServoCAN *** -def create_steer_command(frame: int, mode: SteeringModes, steer_tq: float = 0, steer_delta: float = 0): - """Creates a CAN message for the actuator STEERING_COMMAND""" - packer = CANPacker('ocelot_controls') - values = { - "COUNTER": frame % 16, - "STEER_MODE": mode.value, - "STEER_ANGLE": steer_delta, - "STEER_TORQUE": steer_tq, - } - msg = packer.make_can_msg("STEERING_COMMAND", 0, values) - addr = msg[0] - dat = msg[1] - values["CHECKSUM"] = calc_checksum_8bit(dat, addr) - - return packer.make_can_msg("STEERING_COMMAND", CanBus.SERVO_CAN, values) - - -def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 - checksum = msg_id - for byte in work_data: #checksum is stripped from the dat - checksum += byte #add up all the bytes - - checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes - checksum &= 0xFF #throw away anything in upper Byte - - checksum = (checksum & 0xF) + (checksum >> 4) #add first and second nibble - checksum &= 0xF #throw away anything in upper nibble - return checksum - -def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf - checksum = msg_id - for byte in work_data: #checksum is stripped from the data - checksum += byte #add up all the bytes - - checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes - checksum &= 0xFF #throw away anything in upper Byte - return checksum - -def calc_checksum_cruise(work_data: bytearray):# 0x194 this checksum is special - initialized with 0 - return calc_checksum_8bit(work_data, 0) - - -def create_accel_command(packer, action: CruiseStalk, bus: int, cnt): - values = { - "setMe_0xFC": 0xFC, - "requests_0xF": 0xF, - "Counter_0x194": cnt % 0xF # counts from 0 to 14 - } - values[action.value] = 1 - - dat = packer.make_can_msg("CruiseControlStalk", bus, values)[1] - values["Checksum_0x194"] = calc_checksum_cruise(dat) - - return packer.make_can_msg("CruiseControlStalk", bus, values) - diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py deleted file mode 100644 index 77745af43b..0000000000 --- a/selfdrive/car/bmw/carcontroller.py +++ /dev/null @@ -1,193 +0,0 @@ -from cereal import car -from openpilot.selfdrive.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis -from openpilot.selfdrive.car.bmw import bmwcan -from openpilot.selfdrive.car.bmw.bmwcan import SteeringModes, CruiseStalk -from openpilot.selfdrive.car.bmw.values import CarControllerParams, CanBus, BmwFlags -from openpilot.selfdrive.car.interfaces import CarControllerBase -from opendbc.can.packer import CANPacker -from openpilot.selfdrive.car.conversions import Conversions as CV - -VisualAlert = car.CarControl.HUDControl.VisualAlert - -# DO NOT CHANGE: Cruise control step size -CC_STEP = 1 # cruise single click jump - always 1 - interpreted as km or miles depending on DSC or DME set units -CRUISE_STALK_IDLE_TICK_STOCK = 0.2 # stock cruise stalk CAN frequency when stalk is not pressed is 5Hz -CRUISE_STALK_HOLD_TICK_STOCK = 0.05 # stock cruise stalk CAN frequency when stalk is pressed is 20Hz - -CRUISE_STALK_SINGLE_TICK = CRUISE_STALK_IDLE_TICK_STOCK # we will send also at 5Hz in between stock messages to emulate single presses -CRUISE_STALK_HOLD_TICK = 0.01 # emulate held stalk, 100Hz makes stock messages be ignored - -CRUISE_SPEED_HYST_GAP = CC_STEP * 0.6 # between >0.5 and <1 to avoid cruise speed toggling. More than 0.5 to add some phase lead -ACCEL_HYST_GAP = 0.05 # m/s^2 - -ACCEL_HOLD_MEDIUM = 0.4 -DECEL_HOLD_MEDIUM = -0.6 -ACCEL_HOLD_STRONG = 1.2 -DECEL_HOLD_STRONG = -1.2 - -class CarController(CarControllerBase): - def __init__(self, dbc_name, CP): - super().__init__(dbc_name, CP) - self.flags = CP.flags - self.min_cruise_speed = CP.minEnableSpeed - self.cruise_units = None - - self.cruise_cancel = False # local cruise control cancel - self.cruise_enabled_prev = False - # redundant safety check with the board - self.apply_steer_last = 0 - self.last_cruise_rx_timestamp = 0 # stock cruise buttons - self.last_cruise_tx_timestamp = 0 # openpilot commands - self.tx_cruise_stalk_counter_last = 0 - self.rx_cruise_stalk_counter_last = -1 - self.cruise_speed_with_hyst = 0 - self.accel_with_hyst = 0 - self.accel_with_hyst_last = 0 - self.calc_desired_speed = 0 - - self.cruise_bus = CanBus.PT_CAN - if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - self.cruise_bus = CanBus.F_CAN - - - self.packer = CANPacker(dbc_name) - - - def update(self, CC, CS, now_nanos): - - actuators = CC.actuators - can_sends = [] - - self.cruise_units = (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - - - # *** hysteresis - trend is your friend *** - # avoids cruise speed toggling and biases next request toward the direction of the previous one - self.cruise_speed_with_hyst = apply_hysteresis(CS.out.cruiseState.speed, self.cruise_speed_with_hyst, CRUISE_SPEED_HYST_GAP / self.cruise_units) - if not CS.out.cruiseState.enabled: - self.cruise_speed_with_hyst = CS.out.vEgoCluster - - # acceleration target hysteresis - avoids entering / leaving hold stalk emulation to frequently, etc - self.accel_with_hyst = apply_hysteresis(actuators.accel, self.accel_with_hyst, ACCEL_HYST_GAP) - - - # *** desired speed model *** - # detect filtered acceleration sign change and reset speed calc on change - accel_zero_cross = self.accel_with_hyst * self.accel_with_hyst_last < 0 - self.accel_with_hyst_last = self.accel_with_hyst - if accel_zero_cross or not CC.enabled or CS.out.gasPressed: - self.calc_desired_speed = CS.out.vEgoCluster - self.calc_desired_speed = self.calc_desired_speed + actuators.accel * DT_CTRL - speed_err_req = (self.calc_desired_speed - self.cruise_speed_with_hyst) * self.cruise_units - speed_err_act = self.calc_desired_speed - CS.out.vEgoCluster - - # detect incoming CruiseControlStalk message by observing counter change (message arrives at only 5Hz when nothing pressed) - if CS.cruise_stalk_counter != self.rx_cruise_stalk_counter_last: - self.tx_cruise_stalk_counter_last = CS.cruise_stalk_counter - # stock message was sent some time in between control samples: - self.last_cruise_rx_timestamp = now_nanos - self.rx_cruise_stalk_counter_last = CS.cruise_stalk_counter - - - - - - # *** send cruise control stalk message at different rates and manage counters *** - def cruise_cmd(cmd, hold=False): - time_since_cruise_sent = (now_nanos - self.last_cruise_tx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency - time_since_cruise_received = (now_nanos - self.last_cruise_rx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency - # send single cmd with an effective rate slower than held stalk rate - if not hold: - send = time_since_cruise_sent > CRUISE_STALK_SINGLE_TICK \ - and time_since_cruise_received > CRUISE_STALK_HOLD_TICK_STOCK/2 - DT_CTRL \ - and time_since_cruise_received < CRUISE_STALK_IDLE_TICK_STOCK/2 + DT_CTRL - else: - # use faster rate to emulate held stalk. Time first message such that subsequent one will nullify stock message: - send = hold and time_since_cruise_sent > CRUISE_STALK_HOLD_TICK - if send: - tx_cruise_stalk_counter = self.tx_cruise_stalk_counter_last + 1 - # avoid counter clash with a potential upcoming message from stock cruise - if tx_cruise_stalk_counter == CS.cruise_stalk_counter + 1: - # avoid clashing with upcoming stock message - # sometimes upcoming stock message is overshadowed by us, so also avoid clashing with one after that - tx_cruise_stalk_counter = tx_cruise_stalk_counter + 2 - tx_cruise_stalk_counter = tx_cruise_stalk_counter % 0xF - can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) - self.tx_cruise_stalk_counter_last = tx_cruise_stalk_counter - self.last_cruise_tx_timestamp = now_nanos - - # *** cruise control cancel signal *** - # CC.cruiseControl.cancel can't be used because it is always false because pcmCruise = False because we need OP speed tracker - # CC.enabled appears after cruiseState.enabled, so we need to check rising edge to prevent instantaneous cancel after cruise is enabled - # This is because CC.enabled comes from controld and CS.out.cruiseState.enabled is from card threads - if not CC.enabled and self.cruise_enabled_prev: - self.cruise_cancel = True - # if we need to go below cruise speed, request cancel and coast while steering turns off softly - if (CS.out.cruiseState.speedCluster - self.min_cruise_speed) < 0.1 and actuators.accel < -0.1 \ - and speed_err_act < -1 and CS.out.vEgoCluster - self.min_cruise_speed < 0.4: - self.cruise_cancel = True - # keep requesting cancel until the cruise is disabled - if not CS.out.cruiseState.enabled: - self.cruise_cancel = False - - cruise_stalk_human_pressing = CS.cruise_stalk_resume or CS.cruise_stalk_cancel or CS.cruise_stalk_speed != 0 - - if not cruise_stalk_human_pressing and CS.out.cruiseState.enabled: - if self.cruise_cancel: - cruise_cmd(CruiseStalk.cancel) - print("cancel") - elif CC.enabled: - if (self.accel_with_hyst > ACCEL_HOLD_STRONG or (self.accel_with_hyst > ACCEL_HOLD_MEDIUM and speed_err_act > 3.0)) \ - and not speed_err_req < -10*CV.KPH_TO_MS*self.cruise_units: - cruise_cmd(CruiseStalk.plus5, hold=True) # produces up to 1.2 m/s2 - elif (self.accel_with_hyst < DECEL_HOLD_STRONG or (self.accel_with_hyst < DECEL_HOLD_MEDIUM and speed_err_act < -3.0)) \ - and not speed_err_req > 10*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: - cruise_cmd(CruiseStalk.minus5, hold=True) # produces down to -1.4 m/s2 - elif (self.accel_with_hyst > ACCEL_HOLD_MEDIUM or speed_err_act > 2.0) \ - and not speed_err_req < -5*CV.KPH_TO_MS*self.cruise_units: - cruise_cmd(CruiseStalk.plus1, hold=True) # produces up to 0.8 m/s2 - elif (self.accel_with_hyst < DECEL_HOLD_MEDIUM or speed_err_act < -2.0) \ - and not speed_err_req > 5*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: - cruise_cmd(CruiseStalk.minus1, hold=True) # produces down to -0.8 m/s2 - elif speed_err_req > max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and (self.accel_with_hyst > 0.0 or CS.out.gasPressed): - cruise_cmd(CruiseStalk.plus1) - elif speed_err_req < -max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and self.accel_with_hyst < 0.0 and not CS.out.gasPressed: - cruise_cmd(CruiseStalk.minus1) - - - - if self.flags & BmwFlags.STEPPER_SERVO_CAN: - steer_error = not CC.latActive and CC.enabled - if not steer_error: # don't send steer CAN tx if steering is unavailable - # *** apply steering torque *** - if CC.enabled: - new_steer = actuators.steer * CarControllerParams.STEER_MAX - # explicitly clip torque before sending on CAN - apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, - CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, - CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) - elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) - apply_steer = CS.out.steeringTorqueEps - else: - apply_steer = 0 - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) - self.apply_steer_last = apply_steer - - # debug - if CC.enabled and (self.frame % 10) == 0: #slow print - frame_number = self.frame - print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") - - self.cruise_enabled_prev = CC.enabled - - new_actuators = actuators.as_builder() - new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX - new_actuators.steerOutputCan = self.apply_steer_last - - new_actuators.speed = self.calc_desired_speed - new_actuators.accel = speed_err_req - - self.frame += 1 - return new_actuators, can_sends diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py deleted file mode 100644 index 433ee72bb5..0000000000 --- a/selfdrive/car/bmw/carstate.py +++ /dev/null @@ -1,189 +0,0 @@ -from cereal import car -from opendbc.can.can_define import CANDefine -from opendbc.can.parser import CANParser -from openpilot.selfdrive.car.conversions import Conversions as CV -from openpilot.selfdrive.car.interfaces import CarStateBase -from openpilot.selfdrive.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint]['pt']) - self.shifter_values = can_define.dv["TransmissionDataDisplay"]['ShiftLeverPosition'] - self.steer_angle_delta = 0. - self.gas_kickdown = False - - self.cluster_min_speed = CruiseSettings.CLUSTER_OFFSET - - self.is_metric = None - self.cruise_stalk_speed = 0 - self.cruise_stalk_resume = False - self.cruise_stalk_cancel = False - self.cruise_stalk_cancel_up = False - self.cruise_stalk_cancel_dn = False - self.cruise_stalk_counter = 0 - self.prev_cruise_stalk_speed = 0 - self.prev_cruise_stalk_resume = self.cruise_stalk_resume - self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel - - self.right_blinker_pressed = False - self.left_blinker_pressed = False - self.other_buttons = False - self.prev_gas_pressed = False - self.dtc_mode = False - - def update(self, cp_PT, cp_F, cp_aux): - # set these prev states at the beginning because they are used outside the update() - self.prev_cruise_stalk_speed = self.cruise_stalk_speed - self.prev_cruise_stalk_resume = self.cruise_stalk_resume - self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel - - ret = car.CarState.new_message() - - ret.doorOpen = False # not any([cp.vl["SEATS_DOORS"]['DOOR_OPEN_FL'], cp.vl["SEATS_DOORS"]['DOOR_OPEN_FR'] - ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] - - ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 - ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 - ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] - # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop - ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 - self.gas_kickdown = cp_PT.vl['AccPedal']["KickDownPressed"] != 0 #BMW has kickdown button at the bottom of the pedal - - ret.wheelSpeeds = self.get_wheel_speeds( - cp_PT.vl["WheelSpeeds"]["Wheel_FL"], - cp_PT.vl["WheelSpeeds"]["Wheel_FR"], - cp_PT.vl["WheelSpeeds"]["Wheel_RL"], - cp_PT.vl["WheelSpeeds"]["Wheel_RR"], - ) - ret.vEgoRaw = cp_PT.vl['Speed']["VehicleSpeed"] * CV.KPH_TO_MS - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.vEgoCluster = ret.vEgo + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS - ret.standstill = not cp_PT.vl['Speed']["MovingForward"] and not cp_PT.vl['Speed']["MovingReverse"] - ret.yawRate = cp_PT.vl['Speed']["YawRate"] * CV.DEG_TO_RAD - ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] - can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - blinker_on = cp_PT.vl["TurnSignals"]['TurnSignalActive'] != 0 and cp_PT.vl["TurnSignals"]['TurnSignalIdle'] == 0 - ret.leftBlinker = blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] !=0 # blinking - ret.rightBlinker = blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] !=0 # blinking - self.right_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] != 0 - self.left_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] != 0 - - self.dtc_mode = cp_PT.vl['StatusDSC_KCAN']['DTC_on'] != 0 # drifty traction control ;) - - # other buttons help determine driver is paying attention in case the face is not visible - self.other_buttons = \ - cp_PT.vl["SteeringButtons"]['Volume_DOWN'] !=0 or cp_PT.vl["SteeringButtons"]['Volume_UP'] !=0 or \ - cp_PT.vl["SteeringButtons"]['Previous_down'] !=0 or cp_PT.vl["SteeringButtons"]['Next_up'] !=0 or \ - cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or \ - self.prev_gas_pressed and not ret.gasPressed # treat gas pedal tap as a button - button events indicate driver engagement - useful if face not visible - - # E-series doesn't have torque sensor - # use Voice button or gas pedal to fake steeringPressed to confirm a lane change - ret.steeringPressed = cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or ret.gasPressed - if ret.steeringPressed and ret.leftBlinker: - ret.steeringTorque = 1 - elif ret.steeringPressed and ret.rightBlinker: - ret.steeringTorque = -1 - else: - ret.steeringTorque = 0 - - ret.espDisabled = cp_PT.vl['StatusDSC_KCAN']['DSC_full_off'] != 0 - ret.cruiseState.available = not ret.espDisabled #cruise not available when DSC fully off - ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch - - # Read openpilot engagement signal from CAN address 0x100 byte 0 - openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - - cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] - if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC - ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 - # DCC implies that cruise control is done on F-CAN - # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages - cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] - elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] - ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 - - # Override enabled state with external engagement signal from 0x100 byte 0 - if openpilot_engage_signal != 0: - ret.cruiseState.enabled = True - - ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False - if cruise_control_stal_msg['plus1'] != 0: - self.cruise_stalk_speed = 1 - elif cruise_control_stal_msg['minus1'] != 0: - self.cruise_stalk_speed = -1 - elif cruise_control_stal_msg['plus5'] != 0: - self.cruise_stalk_speed = 5 - elif cruise_control_stal_msg['minus5'] != 0: - self.cruise_stalk_speed = -5 - else: - self.cruise_stalk_speed = 0 - self.cruise_stalk_resume = cruise_control_stal_msg['resume'] != 0 - self.cruise_stalk_cancel = cruise_control_stal_msg['cancel'] != 0 - self.cruise_stalk_cancel_up = cruise_control_stal_msg['cancel_lever_up'] != 0 - self.cruise_stalk_counter = cruise_control_stal_msg['Counter_0x194'] - self.cruise_stalk_cancel_dn = self.cruise_stalk_cancel and not self.cruise_stalk_cancel_up - - - ret.genericToggle = self.dtc_mode - - if self.CP.flags & BmwFlags.STEPPER_SERVO_CAN: - ret.steeringTorqueEps = cp_aux.vl['STEERING_STATUS']['STEERING_TORQUE'] - self.steer_angle_delta = cp_aux.vl['STEERING_STATUS']['STEERING_ANGLE'] - ret.steerFaultTemporary = int(cp_aux.vl['STEERING_STATUS']['CONTROL_STATUS']) & 0x4 != 0 - - self.prev_gas_pressed = ret.gasPressed - return ret - - @staticmethod - def get_can_parser(CP): #PT-CAN - messages = [ # message, frequency - ("EngineAndBrake", 100), - ("TransmissionDataDisplay", 5), - ("AccPedal", 100), - ("Speed", 50), - ("SteeringWheelAngle", 100), - ("TurnSignals", 0), - ("SteeringButtons", 0), - ("WheelSpeeds", 50), # 100 on F-CAN - ("CruiseControlStalk", 5), - ("StatusDSC_KCAN", 50), - ("Status_contact_handbrake", 0), - ("TerminalStatus", 10), - ("OpenpilotEngage", 10), - ] - - if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - messages.append(("DynamicCruiseControlStatus", 5)) - if CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - messages.append(("CruiseControlStatus", 5)) - - return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.PT_CAN) # 0: PT-CAN - - @staticmethod # $540 vehicle option could use just PT_CAN, but $544 requires sending and receiving cruise commands on F-CAN. Use F-can. Works for both options - def get_F_can_parser(CP): - if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - messages = [ # message, frequency - ("SteeringWheelAngle_DSC", 100), - ("CruiseControlStalk", 5), - ] - else: - messages = [] - - return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.F_CAN) - - @staticmethod - def get_actuator_can_parser(CP): - if CP.flags & BmwFlags.STEPPER_SERVO_CAN: - messages = [ # message, frequency - ("STEERING_STATUS", 100), - ] - else: - messages = [] - return CANParser('ocelot_controls', messages, CanBus.SERVO_CAN) diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py deleted file mode 100644 index c5e34bc8a6..0000000000 --- a/selfdrive/car/bmw/fingerprints.py +++ /dev/null @@ -1,35 +0,0 @@ -from openpilot.selfdrive.car.bmw.values import CAR - -BMW_E8x_E9x_common_per_bus = { - "PT-CAN": { - 256: 8, 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, - 209: 8,212: 8, 266: 6, 304: 5, 309: 2, 373: 3, 404: 4, 408: 5, 414: 8, 416: 8, 418: 8, 422: 8, 436: 8, 437: 7, 438: 7, 464: 8, 466: 6, 470: 2, 481: 6, - 502: 2, 514: 2, 538: 3, 550: 5, 570: 4, 578: 5, 594: 2, 678: 2, 690: 8, 691: 5, 704: 3, 719: 2, 722: 3, 753: 3, 758: 2, 760: 8, 762: 5, 764: 7, 784: 7, - 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, - 1152: 8, 1170: 8, 1175: 8, 1176: 8, 1193: 8, 1246: 8, 1408: 8, 1426: 8, 1432: 8, 1449: 8, 1472: 8, 1494: 8, 1504: 8, 1506: 8, 1517: 8, 1522: 8, 1528: 8 - }, - "STEPPER_SERVO_CAN": { - 559: 8 - } -} - -# Minimal fingerprint with just 0x200 (512 decimal) for car recognition -BMW_MINIMAL_FINGERPRINT = { - 512: 8, # 0x200 - all bytes FF for recognition -} - -BMW_E8x_E9x_common = {k: v for d in BMW_E8x_E9x_common_per_bus.values() for k, v in d.items()} # flatten - -FINGERPRINTS = { - CAR.BMW_E82: [ - BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition - {**BMW_E8x_E9x_common, 899: 4}, - {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 - ], - CAR.BMW_E90: [ - BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition - {**BMW_E8x_E9x_common, 899: 4}, - {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 - {**BMW_E8x_E9x_common}, # Full fingerprint for testing - ], -} diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py deleted file mode 100755 index 9abf0382f2..0000000000 --- a/selfdrive/car/bmw/interface.py +++ /dev/null @@ -1,173 +0,0 @@ -#!/usr/bin/env python3 -from cereal import car -from openpilot.selfdrive.car import create_button_events -from openpilot.selfdrive.car.helpers import interp -from openpilot.selfdrive.car.conversions import Conversions as CV -from openpilot.selfdrive.car import get_safety_config -from openpilot.selfdrive.car.bmw.values import CanBus, BmwFlags, CarControllerParams -from openpilot.selfdrive.car.interfaces import CarInterfaceBase - -ButtonType = car.CarState.ButtonEvent.Type -EventName = car.CarEvent.EventName -TransmissionType = car.CarParams.TransmissionType -GearShifter = car.CarState.GearShifter - -# certain driver intervention can be distinguished from maximum estimated wheel turning force -def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): - # when steering released (or lost steps), what angle will it return to - # if we are above that angle, we can detect things - release_angle = steer_friction_torque / (max(v_ego, 1) ** 2 * centering_coeff) - - override = False - margin_value = 1 - if abs(steer_cmd) > release_angle: # for higher angles we steering will not move outward by itself with stepper on - if steer_cmd > 0: - override |= steer_act - steer_cmd > margin_value # driver overrode from right to more right - override |= steer_act < 0 # releaseAngle -3 # driver overrode from right to opposite direction - else: - override |= steer_act - steer_cmd < -margin_value # driver overrode from left to more left - override |= steer_act > 0 # -releaseAngle +3 # driver overrode from left to opposite direction - # else: - # override |= abs(steerAct) > releaseAngle + marginVal # driver overrode to an angle where steering will not go by itself - return override - - -class CarInterface(CarInterfaceBase): - def __init__(self, CP, CarController, CarState): - super().__init__(CP, CarController, CarState) - - self.cp_F = self.CS.get_F_can_parser(CP) - self.can_parsers.append(self.cp_F) - self.cp_aux = self.CS.get_actuator_can_parser(CP) - self.can_parsers.append(self.cp_aux) - - @staticmethod - # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 - def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = interp(desired_angle, angle_bp, hold_torque_v) - return hold_torque # todo add speed component - - @staticmethod - def get_steer_feedforward(desired_angle, v_ego): - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = interp(desired_angle, angle_bp, hold_torque_v) - return hold_torque # todo add speed component - - def get_steer_feedforward_function(self): - if self.CP.flags & BmwFlags.SERVOTRONIC: - return self.get_steer_feedforward_servotronic - else: - return self.get_steer_feedforward - - @staticmethod - def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): - if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status - ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value - - ret.openpilotLongitudinalControl = False - ret.radarUnavailable = True - ret.pcmCruise = False # openpilot handles engagement via cruise stalk - - ret.autoResumeSng = False - if 0x200 in fingerprint[CanBus.PT_CAN]: # Enigne controls speed and reports cruise control status - ret.flags |= BmwFlags.NORMAL_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests - elif 0x193 in fingerprint[CanBus.PT_CAN]: # either DSC or LDM reports cruise control status - if 0x0D5 not in fingerprint[CanBus.PT_CAN]: # DSC itself applies brakes - ret.flags |= BmwFlags.DYNAMIC_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests on F-CAN - else: # LDM sends brake commands - ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_ACC.value # openpilot will switch between OP and LDM - ret.autoResumeSng = True #! hopefully - else: # DSC/DME not sending cruise status and LDM not present - openpilot will be the only requester - ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_LDM.value - ret.autoResumeSng = True #! hopefully - - if 0xb8 in fingerprint[CanBus.PT_CAN] or 0xb5 in fingerprint[CanBus.PT_CAN]: # transmission: engine torque requests - ret.transmissionType = TransmissionType.automatic - else: - ret.transmissionType = TransmissionType.manual - - # Detect all wheel drive BMW E90 XI - if 0xbc in fingerprint[CanBus.PT_CAN]: # XI has a transfer case - ret.steerRatio = 18.5 # XI has slower steering rack - - if ret.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: # DCC imperial has higher threshold - ret.minEnableSpeed = 0. * CV.KPH_TO_MS # if self.CS.is_metric else 20. * CV.MPH_TO_MS - if ret.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.minEnableSpeed = 0. * CV.KPH_TO_MS - - ret.brand = "bmw" - ret.carName = "bmw" - ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] - - ret.steerControlType = car.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 - ret.steerLimitTimer = 0.4 - - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.23 #live parameters - ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters - ret.lateralTuning.torque.useSteeringAngle = False - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? - - ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [.1] - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [0.] - - ret.centerToFront = ret.wheelbase * 0.44 - - ret.startAccel = 0.0 - print("Controller: " + ret.lateralTuning.which()) - - # has_servotronic = False - # for fw in car_fw: # todo check JBBF firmware for $216A - # if fw.ecu == "eps" and b"," in fw.fwVersion: - # has_servotronic = True - - return ret - - def _update(self, c): - # ******************* do can recv ******************* - ret = self.CS.update(self.cp, self.cp_F, self.cp_aux) - - # events - events = self.create_common_events(ret, pcm_enable=False) - - # *** cruise control units detection *** - # when cruise is enabled the car sets cruiseState.speed = vEgo, so we can detect the ratio - # with resume this wouldn't work, but op will not engage on first resume anyway - if self.CS.is_metric is None and c.enabled and ret.vEgo > 0: - # note, when is_metric is None, cruiseState.speed is already scaled by CV.MPH_TO_MS by default - speed_ratio = ret.cruiseState.speed / ret.vEgo # 1 if imperial, 1.6 if metric - if 0.8 < speed_ratio < 1.2: - self.CS.is_metric = False - elif 0.8 * CV.MPH_TO_KPH < speed_ratio < 1.2 * CV.MPH_TO_KPH: - self.CS.is_metric = True - else: - events.add(EventName.accFaulted) - - - ret.buttonEvents = [ - *create_button_events(self.CS.cruise_stalk_speed > 0, self.CS.prev_cruise_stalk_speed > 0, {1: ButtonType.accelCruise}), - *create_button_events(self.CS.cruise_stalk_speed < 0, self.CS.prev_cruise_stalk_speed < 0, {1: ButtonType.decelCruise}), - *create_button_events(self.CS.cruise_stalk_cancel, self.CS.prev_cruise_stalk_cancel, {1: ButtonType.cancel}), - *create_button_events(self.CS.other_buttons, not self.CS.other_buttons, {1: ButtonType.altButton1}), - *create_button_events(self.CS.cruise_stalk_resume, self.CS.prev_cruise_stalk_resume, { - 1: ButtonType.resumeCruise if not c.enabled else ButtonType.gapAdjustCruise}) # repurpose resume button to adjust driver personality when engaged - ] - - if ret.vEgoCluster < self.CP.minEnableSpeed: - events.add(EventName.belowEngageSpeed) - if c.actuators.accel > 0.2: - events.add(EventName.speedTooLow) # can't restart cruise anymore - - ret.events = events.to_msg() - - return ret diff --git a/selfdrive/car/bmw/radar_interface.py b/selfdrive/car/bmw/radar_interface.py deleted file mode 100644 index e654bd61fd..0000000000 --- a/selfdrive/car/bmw/radar_interface.py +++ /dev/null @@ -1,4 +0,0 @@ -from openpilot.selfdrive.car.interfaces import RadarInterfaceBase - -class RadarInterface(RadarInterfaceBase): - pass diff --git a/selfdrive/car/bmw/tests/__init__.py b/selfdrive/car/bmw/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/selfdrive/car/bmw/tests/test_bmw.py b/selfdrive/car/bmw/tests/test_bmw.py deleted file mode 100644 index dcbe8c239d..0000000000 --- a/selfdrive/car/bmw/tests/test_bmw.py +++ /dev/null @@ -1,37 +0,0 @@ -from parameterized import parameterized - -from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS - -N55_ENGINE_MSG = {899: 4} -N52_ENGINE_MSG = {899: 2} -CRUISE_STATUS_MSG = {0x200: 8} -DYNAMIC_CRUISE_STATUS_MSG = {0x193: 8} -STEPPER_MSG = {0x22F: 8} - - - - -class TestBMWFingerprint: - @parameterized.expand(FINGERPRINTS.items()) - def test_can_fingerprints(self, car_model, fingerprints): - assert len(fingerprints) > 0 - - assert all(len(finger) for finger in fingerprints) - - for car_config in ((STEPPER_MSG, N55_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), - (STEPPER_MSG, N52_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), - (N55_ENGINE_MSG, CRUISE_STATUS_MSG, DYNAMIC_CRUISE_STATUS_MSG), - ): - failed_fingers = {} - for i, finger in enumerate(fingerprints): - failed_addrs = [] - for msg in (car_config): - for addr, length in msg.items(): - found_length = finger.get(addr) - if found_length != length: - failed_addrs.append((addr, length, found_length)) - if failed_addrs: - failed_fingers[i] = failed_addrs - - if len(failed_fingers) == len(fingerprints): - raise AssertionError(f"All {len(fingerprints)} fingerprints failed: {failed_fingers}") diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py deleted file mode 100644 index 9ba58da8bb..0000000000 --- a/selfdrive/car/bmw/values.py +++ /dev/null @@ -1,91 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag -from cereal import car -from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.conversions import Conversions as CV - -# Steer torque limits -class CarControllerParams: #controls running @ 100hz - STEER_STEP = 1 # 100Hz - STEER_MAX = 12 # Nm - STEER_DELTA_UP = 10 / 100 # 10Nm/s - STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit - STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor - - # STEER_BACKLASH = 1 #deg - def __init__(self, CP): - pass - -class BmwFlags(IntFlag): - # Detected Flags - STEPPER_SERVO_CAN = 2 ** 0 - NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 - DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 - ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported - ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 - ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 - SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query - -class CruiseSettings: - CLUSTER_OFFSET = 2 # kph - -class CanBus: - PT_CAN = 0 - SERVO_CAN = 0 # required for steering - F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging - K_CAN = 0 # not used - only logging - - -class Footnote(Enum): - StepperServoCAN = CarFootnote( - "Requires StepperServoCAN", - Column.FSR_STEERING) - DCC = CarFootnote( - "Minimum speed with CC or DCC is 30 kph", - Column.FSR_LONGITUDINAL) - CC = CarFootnote( - "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", - Column.PACKAGE) - ACC = CarFootnote( - "ACC is required. Also LDM module to take over when OP is off.", - Column.AUTO_RESUME) - DIY = CarFootnote( - "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", - Column.HARDWARE) - -@dataclass -class BmwCarDocs(CarDocs): - package: str = "Cruise Control - VO540, VO544, VO541" - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) - - def init_make(self, CP: car.CarParams): - self.car_parts = CarParts.common([CarHarness.custom]) - -@dataclass -class BmwPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) - - -class CAR(Platforms): - BMW_E82 = BmwPlatformConfig( - [BmwCarDocs("BMW E82 2004-13")], - CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) - ) - BMW_E90 = BmwPlatformConfig( - [BmwCarDocs("BMW E90 2005-11")], - CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) - ) - - -DBC = CAR.create_dbc_map() - - -if __name__ == '__main__': - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) From 42c1e4036563f890f232d90dbcd108a0dc8c4646 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:19:10 +0100 Subject: [PATCH 023/155] Revert "fix" This reverts commit 76f5de387efee81b038a9a0720a737ed609fc2b7. --- opendbc_repo/.github/labeler.yaml | 76 + .../.github/workflows/auto_pr_review.yaml | 50 + opendbc_repo/.github/workflows/release.yml | 34 + opendbc_repo/.github/workflows/repo.yml | 28 + opendbc_repo/.github/workflows/stale.yml | 30 + .../workflows/test_models_trigger.yaml | 60 + opendbc_repo/.github/workflows/tests.yml | 105 + .../.github/workflows/update-cars-docs.yml | 25 + opendbc_repo/.gitignore | 36 + opendbc_repo/LICENSE | 7 + opendbc_repo/MANIFEST.in | 3 + opendbc_repo/README.md | 196 + opendbc_repo/RELEASES.md | 13 + opendbc_repo/SConscript | 7 + opendbc_repo/SConstruct | 64 + opendbc_repo/conftest.py | 5 + opendbc_repo/docs/CARS.md | 439 + opendbc_repo/examples/joystick.py | 113 + opendbc_repo/examples/kbhit.py | 59 + opendbc_repo/lefthook.yml | 28 + opendbc_repo/opendbc/__init__.py | 6 + opendbc_repo/opendbc/can/__init__.py | 8 + opendbc_repo/opendbc/can/dbc.py | 212 + opendbc_repo/opendbc/can/packer.py | 67 + opendbc_repo/opendbc/can/parser.py | 283 + opendbc_repo/opendbc/can/tests/.gitignore | 1 + opendbc_repo/opendbc/can/tests/__init__.py | 8 + opendbc_repo/opendbc/can/tests/benchmark.py | 45 + opendbc_repo/opendbc/can/tests/test.dbc | 27 + .../opendbc/can/tests/test_checksums.py | 555 + .../opendbc/can/tests/test_dbc_exceptions.py | 29 + .../opendbc/can/tests/test_dbc_parser.py | 21 + opendbc_repo/opendbc/can/tests/test_define.py | 26 + .../opendbc/can/tests/test_packer_parser.py | 367 + opendbc_repo/opendbc/car/CARS_template.md | 78 + opendbc_repo/opendbc/car/__init__.py | 391 + opendbc_repo/opendbc/car/bmw/__init__.py | 0 opendbc_repo/opendbc/car/bmw/values.py | 91 + opendbc_repo/opendbc/car/body/__init__.py | 0 opendbc_repo/opendbc/car/body/bodycan.py | 20 + .../opendbc/car/body/carcontroller.py | 82 + opendbc_repo/opendbc/car/body/carstate.py | 35 + opendbc_repo/opendbc/car/body/fingerprints.py | 28 + opendbc_repo/opendbc/car/body/interface.py | 30 + opendbc_repo/opendbc/car/body/values.py | 40 + opendbc_repo/opendbc/car/can_definitions.py | 15 + opendbc_repo/opendbc/car/car.capnp | 813 + opendbc_repo/opendbc/car/car_helpers.py | 234 + opendbc_repo/opendbc/car/carlog.py | 12 + opendbc_repo/opendbc/car/ccp.py | 373 + opendbc_repo/opendbc/car/chrysler/__init__.py | 0 .../opendbc/car/chrysler/carcontroller.py | 83 + opendbc_repo/opendbc/car/chrysler/carstate.py | 115 + .../opendbc/car/chrysler/chryslercan.py | 112 + .../opendbc/car/chrysler/fingerprints.py | 783 + .../opendbc/car/chrysler/interface.py | 80 + .../opendbc/car/chrysler/radar_interface.py | 83 + opendbc_repo/opendbc/car/chrysler/values.py | 159 + opendbc_repo/opendbc/car/common/__init__.py | 0 opendbc_repo/opendbc/car/common/basedir.py | 4 + .../opendbc/car/common/conversions.py | 19 + .../opendbc/car/common/filter_simple.py | 18 + opendbc_repo/opendbc/car/common/pid.py | 70 + .../opendbc/car/common/simple_kalman.py | 54 + opendbc_repo/opendbc/car/crc.py | 30 + .../opendbc/car/debug/format_fingerprints.py | 82 + opendbc_repo/opendbc/car/disable_ecu.py | 36 + opendbc_repo/opendbc/car/docs.py | 105 + opendbc_repo/opendbc/car/docs_definitions.py | 419 + opendbc_repo/opendbc/car/ecu_addrs.py | 55 + opendbc_repo/opendbc/car/extra_cars.py | 72 + opendbc_repo/opendbc/car/fingerprints.py | 362 + opendbc_repo/opendbc/car/ford/__init__.py | 0 .../opendbc/car/ford/carcontroller.py | 179 + opendbc_repo/opendbc/car/ford/carstate.py | 127 + opendbc_repo/opendbc/car/ford/fingerprints.py | 223 + opendbc_repo/opendbc/car/ford/fordcan.py | 342 + opendbc_repo/opendbc/car/ford/interface.py | 98 + .../opendbc/car/ford/radar_interface.py | 274 + .../opendbc/car/ford/tests/__init__.py | 0 .../car/ford/tests/print_platform_codes.py | 28 + .../opendbc/car/ford/tests/test_ford.py | 142 + opendbc_repo/opendbc/car/ford/values.py | 316 + .../opendbc/car/fw_query_definitions.py | 152 + opendbc_repo/opendbc/car/fw_versions.py | 327 + opendbc_repo/opendbc/car/gm/__init__.py | 0 opendbc_repo/opendbc/car/gm/carcontroller.py | 332 + opendbc_repo/opendbc/car/gm/carstate.py | 228 + opendbc_repo/opendbc/car/gm/fingerprints.py | 216 + opendbc_repo/opendbc/car/gm/gmcan.py | 239 + opendbc_repo/opendbc/car/gm/interface.py | 399 + .../opendbc/car/gm/radar_interface.py | 100 + opendbc_repo/opendbc/car/gm/tests/__init__.py | 0 opendbc_repo/opendbc/car/gm/tests/test_gm.py | 20 + opendbc_repo/opendbc/car/gm/values.py | 365 + opendbc_repo/opendbc/car/honda/__init__.py | 0 .../opendbc/car/honda/carcontroller.py | 266 + opendbc_repo/opendbc/car/honda/carstate.py | 231 + .../opendbc/car/honda/fingerprints.py | 929 ++ opendbc_repo/opendbc/car/honda/hondacan.py | 229 + opendbc_repo/opendbc/car/honda/interface.py | 228 + .../opendbc/car/honda/radar_interface.py | 80 + .../opendbc/car/honda/tests/__init__.py | 0 .../opendbc/car/honda/tests/test_honda.py | 14 + opendbc_repo/opendbc/car/honda/values.py | 347 + opendbc_repo/opendbc/car/hyundai/__init__.py | 0 .../opendbc/car/hyundai/carcontroller.py | 638 + opendbc_repo/opendbc/car/hyundai/carstate.py | 694 + .../opendbc/car/hyundai/fingerprints.py | 1322 ++ .../opendbc/car/hyundai/hyundaican.py | 383 + .../opendbc/car/hyundai/hyundaicanfd.py | 1113 ++ opendbc_repo/opendbc/car/hyundai/interface.py | 284 + .../opendbc/car/hyundai/radar_interface.py | 247 + .../opendbc/car/hyundai/tests/__init__.py | 0 .../car/hyundai/tests/print_platform_codes.py | 21 + .../opendbc/car/hyundai/tests/test_hyundai.py | 247 + opendbc_repo/opendbc/car/hyundai/values.py | 1011 ++ opendbc_repo/opendbc/car/include/c++.capnp | 26 + opendbc_repo/opendbc/car/interfaces.py | 762 + opendbc_repo/opendbc/car/isotp.py | 140 + .../opendbc/car/isotp_parallel_query.py | 170 + opendbc_repo/opendbc/car/mazda/__init__.py | 0 .../opendbc/car/mazda/carcontroller.py | 113 + opendbc_repo/opendbc/car/mazda/carstate.py | 152 + .../opendbc/car/mazda/fingerprints.py | 267 + opendbc_repo/opendbc/car/mazda/interface.py | 33 + opendbc_repo/opendbc/car/mazda/mazdacan.py | 130 + opendbc_repo/opendbc/car/mazda/values.py | 113 + opendbc_repo/opendbc/car/mock/__init__.py | 0 .../opendbc/car/mock/carcontroller.py | 6 + opendbc_repo/opendbc/car/mock/carstate.py | 7 + opendbc_repo/opendbc/car/mock/interface.py | 21 + opendbc_repo/opendbc/car/mock/values.py | 9 + opendbc_repo/opendbc/car/nissan/__init__.py | 0 .../opendbc/car/nissan/carcontroller.py | 75 + opendbc_repo/opendbc/car/nissan/carstate.py | 143 + .../opendbc/car/nissan/fingerprints.py | 123 + opendbc_repo/opendbc/car/nissan/interface.py | 29 + opendbc_repo/opendbc/car/nissan/nissancan.py | 154 + opendbc_repo/opendbc/car/nissan/values.py | 124 + opendbc_repo/opendbc/car/panda_runner.py | 57 + opendbc_repo/opendbc/car/rivian/__init__.py | 0 .../opendbc/car/rivian/carcontroller.py | 57 + opendbc_repo/opendbc/car/rivian/carstate.py | 103 + .../opendbc/car/rivian/fingerprints.py | 12 + opendbc_repo/opendbc/car/rivian/interface.py | 37 + .../opendbc/car/rivian/radar_interface.py | 71 + opendbc_repo/opendbc/car/rivian/riviancan.py | 100 + .../opendbc/car/rivian/tests/__init__.py | 0 .../opendbc/car/rivian/tests/test_rivian.py | 23 + opendbc_repo/opendbc/car/rivian/values.py | 138 + opendbc_repo/opendbc/car/secoc.py | 47 + opendbc_repo/opendbc/car/structs.py | 20 + opendbc_repo/opendbc/car/subaru/__init__.py | 0 .../opendbc/car/subaru/carcontroller.py | 143 + opendbc_repo/opendbc/car/subaru/carstate.py | 138 + .../opendbc/car/subaru/fingerprints.py | 572 + opendbc_repo/opendbc/car/subaru/interface.py | 104 + opendbc_repo/opendbc/car/subaru/subarucan.py | 332 + .../opendbc/car/subaru/tests/__init__.py | 0 .../opendbc/car/subaru/tests/test_subaru.py | 10 + opendbc_repo/opendbc/car/subaru/values.py | 282 + opendbc_repo/opendbc/car/tesla/__init__.py | 0 .../opendbc/car/tesla/carcontroller.py | 55 + opendbc_repo/opendbc/car/tesla/carstate.py | 101 + .../opendbc/car/tesla/fingerprints.py | 37 + opendbc_repo/opendbc/car/tesla/interface.py | 34 + opendbc_repo/opendbc/car/tesla/teslacan.py | 66 + opendbc_repo/opendbc/car/tesla/values.py | 111 + opendbc_repo/opendbc/car/tests/__init__.py | 0 opendbc_repo/opendbc/car/tests/routes.py | 319 + .../opendbc/car/tests/test_can_fingerprint.py | 55 + .../opendbc/car/tests/test_car_interfaces.py | 148 + opendbc_repo/opendbc/car/tests/test_docs.py | 77 + .../opendbc/car/tests/test_fw_fingerprint.py | 327 + .../opendbc/car/tests/test_lateral_limits.py | 96 + .../car/tests/test_platform_configs.py | 17 + opendbc_repo/opendbc/car/tests/test_routes.py | 11 + .../opendbc/car/tests/test_vehicle_model.py | 67 + .../torque_data/lat_models/ACURA_RDX_3G.json | 1 + .../torque_data/lat_models/AUDI_A3_MK3.json | 1 + .../torque_data/lat_models/AUDI_Q3_MK2.json | 1 + .../lat_models/BUICK_LACROSSE.json | 1 + .../lat_models/CHEVROLET_EQUINOX.json | 1 + .../lat_models/CHEVROLET_EQUINOX_CC.json | 1 + .../lat_models/CHEVROLET_SILVERADO.json | 1 + .../lat_models/CHEVROLET_SUBURBAN.json | 1 + .../lat_models/CHEVROLET_SUBURBAN_CC.json | 1 + .../lat_models/CHEVROLET_TRAILBLAZER.json | 1 + .../lat_models/CHEVROLET_VOLT.json | 1 + .../CHRYSLER_PACIFICA_2017_HYBRID.json | 1 + .../CHRYSLER_PACIFICA_2018_HYBRID.json | 1 + .../CHRYSLER_PACIFICA_2019_HYBRID.json | 1 + .../lat_models/CHRYSLER_PACIFICA_2020.json | 1 + .../torque_data/lat_models/GENESIS_G70.json | 1 + .../lat_models/GENESIS_GV60_EV_1ST_GEN.json | 1 + .../lat_models/GENESIS_GV70_1ST_GEN.json | 1 + .../torque_data/lat_models/GMC_ACADIA.json | 1 + .../torque_data/lat_models/HONDA_ACCORD.json | 1 + .../torque_data/lat_models/HONDA_CIVIC.json | 1 + .../lat_models/HONDA_CIVIC_2022.json | 1 + .../lat_models/HONDA_CIVIC_BOSCH.json | 1 + .../torque_data/lat_models/HONDA_CLARITY.json | 1 + .../torque_data/lat_models/HONDA_CRV_5G.json | 1 + .../lat_models/HONDA_CRV_HYBRID.json | 1 + .../car/torque_data/lat_models/HONDA_HRV.json | 1 + .../torque_data/lat_models/HONDA_INSIGHT.json | 1 + .../torque_data/lat_models/HONDA_ODYSSEY.json | 1 + .../torque_data/lat_models/HONDA_PILOT.json | 1 + .../lat_models/HONDA_RIDGELINE.json | 1 + .../lat_models/HYUNDAI_ELANTRA_2021.json | 1 + .../lat_models/HYUNDAI_ELANTRA_HEV_2021.json | 1 + .../lat_models/HYUNDAI_GENESIS.json | 1 + .../lat_models/HYUNDAI_IONIQ_5.json | 1 + .../lat_models/HYUNDAI_IONIQ_EV_LTD.json | 1 + .../lat_models/HYUNDAI_IONIQ_PHEV.json | 1 + .../lat_models/HYUNDAI_KONA_EV.json | 1 + .../lat_models/HYUNDAI_KONA_EV_2022.json | 1 + .../lat_models/HYUNDAI_KONA_HEV.json | 1 + .../lat_models/HYUNDAI_PALISADE.json | 1 + .../lat_models/HYUNDAI_SANTA_FE.json | 1 + .../lat_models/HYUNDAI_SANTA_FE_2022.json | 1 + .../lat_models/HYUNDAI_SANTA_FE_HEV_2022.json | 1 + .../HYUNDAI_SANTA_FE_PHEV_2022.json | 1 + .../lat_models/HYUNDAI_SONATA.json | 1 + .../lat_models/HYUNDAI_SONATA_HYBRID.json | 1 + .../lat_models/HYUNDAI_SONATA_LF.json | 1 + .../lat_models/HYUNDAI_TUCSON_4TH_GEN.json | 1 + .../lat_models/JEEP_GRAND_CHEROKEE.json | 1 + .../lat_models/JEEP_GRAND_CHEROKEE_2019.json | 1 + .../car/torque_data/lat_models/KIA_CEED.json | 1 + .../car/torque_data/lat_models/KIA_EV6.json | 1 + .../torque_data/lat_models/KIA_K5_2021.json | 1 + .../torque_data/lat_models/KIA_NIRO_EV.json | 1 + .../lat_models/KIA_NIRO_HEV_2021.json | 1 + .../lat_models/KIA_NIRO_HEV_2ND_GEN.json | 1 + .../lat_models/KIA_OPTIMA_G4_FL.json | 1 + .../torque_data/lat_models/KIA_SELTOS.json | 1 + .../torque_data/lat_models/KIA_SORENTO.json | 1 + .../lat_models/KIA_SORENTO_4TH_GEN.json | 1 + .../lat_models/KIA_SORENTO_HEV_4TH_GEN.json | 1 + .../lat_models/KIA_SPORTAGE_5TH_GEN.json | 1 + .../torque_data/lat_models/KIA_STINGER.json | 1 + .../lat_models/KIA_STINGER_2022.json | 1 + .../torque_data/lat_models/LEXUS_ES_TSS2.json | 1 + .../car/torque_data/lat_models/LEXUS_IS.json | 1 + .../car/torque_data/lat_models/LEXUS_NX.json | 1 + .../torque_data/lat_models/LEXUS_NX_TSS2.json | 1 + .../car/torque_data/lat_models/LEXUS_RX.json | 1 + .../torque_data/lat_models/LEXUS_RX_TSS2.json | 1 + .../car/torque_data/lat_models/MAZDA_3.json | 1 + .../lat_models/MAZDA_CX5_2022.json | 1 + .../lat_models/MAZDA_CX9 2021.json | 1 + .../car/torque_data/lat_models/MAZDA_CX9.json | 1 + .../lat_models/RAM_1500_5TH_GEN.json | 1 + .../lat_models/RAM_HD_5TH_GEN.json | 1 + .../lat_models/SKODA_KAROQ_MK1.json | 1 + .../lat_models/SKODA_KODIAQ_MK1.json | 1 + .../lat_models/SKODA_OCTAVIA_MK3.json | 1 + .../lat_models/SKODA_SUPERB_MK3.json | 1 + .../torque_data/lat_models/SUBARU_ASCENT.json | 1 + .../lat_models/SUBARU_FORESTER.json | 1 + .../lat_models/SUBARU_IMPREZA.json | 1 + .../lat_models/SUBARU_IMPREZA_2020.json | 1 + .../torque_data/lat_models/SUBARU_LEGACY.json | 1 + .../lat_models/SUBARU_LEGACY_PREGLOBAL.json | 1 + .../lat_models/SUBARU_OUTBACK.json | 1 + .../lat_models/SUBARU_OUTBACK_PREGLOBAL.json | 1 + .../torque_data/lat_models/TOYOTA_AVALON.json | 1 + .../lat_models/TOYOTA_AVALON_2019.json | 1 + .../lat_models/TOYOTA_AVALON_TSS2.json | 1 + .../torque_data/lat_models/TOYOTA_CAMRY.json | 1 + .../lat_models/TOYOTA_CAMRY_TSS2.json | 1 + .../torque_data/lat_models/TOYOTA_CHR.json | 1 + .../lat_models/TOYOTA_CHR_TSS2.json | 1 + .../lat_models/TOYOTA_COROLLA.json | 1 + .../lat_models/TOYOTA_COROLLA_TSS2.json | 120 + .../lat_models/TOYOTA_HIGHLANDER.json | 1 + .../lat_models/TOYOTA_HIGHLANDER_TSS2.json | 1 + .../torque_data/lat_models/TOYOTA_MIRAI.json | 1 + .../torque_data/lat_models/TOYOTA_PRIUS.json | 1 + ..._2017_b'8965B47070x00x00x00x00x00x00'.json | 1 + .../lat_models/TOYOTA_PRIUS_TSS2.json | 1 + .../lat_models/TOYOTA_PRIUS_V.json | 1 + .../torque_data/lat_models/TOYOTA_RAV4.json | 1 + .../torque_data/lat_models/TOYOTA_RAV4H.json | 1 + .../lat_models/TOYOTA_RAV4_TSS2.json | 1 + .../lat_models/TOYOTA_RAV4_TSS2_2022.json | 1 + .../torque_data/lat_models/TOYOTA_SIENNA.json | 1 + .../lat_models/VOLKSWAGEN_ARTEON_MK1.json | 1 + .../lat_models/VOLKSWAGEN_ATLAS_MK1.json | 1 + .../lat_models/VOLKSWAGEN_GOLF_MK7.json | 1 + .../lat_models/VOLKSWAGEN_JETTA_MK7.json | 1 + .../lat_models/VOLKSWAGEN_PASSAT_MK8.json | 1 + .../lat_models/VOLKSWAGEN_PASSAT_NMS.json | 1 + .../lat_models/VOLKSWAGEN_TIGUAN_MK2.json | 1 + .../car/torque_data/neural_ff_weights.json | 5 + .../opendbc/car/torque_data/override.toml | 115 + .../opendbc/car/torque_data/params.toml | 89 + .../opendbc/car/torque_data/substitute.toml | 100 + opendbc_repo/opendbc/car/toyota/__init__.py | 0 .../opendbc/car/toyota/carcontroller.py | 299 + opendbc_repo/opendbc/car/toyota/carstate.py | 204 + .../opendbc/car/toyota/fingerprints.py | 1803 +++ opendbc_repo/opendbc/car/toyota/interface.py | 160 + .../opendbc/car/toyota/radar_interface.py | 93 + .../opendbc/car/toyota/tests/__init__.py | 0 .../car/toyota/tests/print_platform_codes.py | 31 + .../opendbc/car/toyota/tests/test_toyota.py | 167 + opendbc_repo/opendbc/car/toyota/toyotacan.py | 159 + opendbc_repo/opendbc/car/toyota/values.py | 632 + opendbc_repo/opendbc/car/uds.py | 941 ++ opendbc_repo/opendbc/car/values.py | 22 + opendbc_repo/opendbc/car/vehicle_model.py | 230 + opendbc_repo/opendbc/car/vin.py | 75 + .../opendbc/car/volkswagen/__init__.py | 0 .../opendbc/car/volkswagen/carcontroller.py | 126 + .../opendbc/car/volkswagen/carstate.py | 280 + .../opendbc/car/volkswagen/fingerprints.py | 1247 ++ .../opendbc/car/volkswagen/interface.py | 90 + opendbc_repo/opendbc/car/volkswagen/mqbcan.py | 258 + opendbc_repo/opendbc/car/volkswagen/pqcan.py | 105 + .../opendbc/car/volkswagen/tests/__init__.py | 0 .../car/volkswagen/tests/test_volkswagen.py | 60 + opendbc_repo/opendbc/car/volkswagen/values.py | 528 + opendbc_repo/opendbc/car/xcp.py | 258 + opendbc_repo/opendbc/dbc/ESR.dbc | 1080 ++ opendbc_repo/opendbc/dbc/FORD_CADS.dbc | 3544 +++++ opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc | 7289 +++++++++ opendbc_repo/opendbc/dbc/README.md | 49 + opendbc_repo/opendbc/dbc/SConscript | 30 + opendbc_repo/opendbc/dbc/__init__.py | 0 .../opendbc/dbc/acura_ilx_2016_nidec.dbc | 185 + opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 916 ++ .../opendbc/dbc/cadillac_ct6_chassis.dbc | 95 + .../opendbc/dbc/cadillac_ct6_object.dbc | 3470 +++++ .../opendbc/dbc/cadillac_ct6_powertrain.dbc | 248 + opendbc_repo/opendbc/dbc/chrysler_cusw.dbc | 192 + ...er_pacifica_2017_hybrid_private_fusion.dbc | 230 + opendbc_repo/opendbc/dbc/comma_body.dbc | 89 + opendbc_repo/opendbc/dbc/fca_giorgio.dbc | 243 + .../opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc | 1070 ++ .../opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc | 1487 ++ .../opendbc/dbc/ford_fusion_2018_adas.dbc | 421 + .../opendbc/dbc/ford_fusion_2018_pt.dbc | 139 + .../opendbc/dbc/ford_lincoln_base_pt.dbc | 12717 ++++++++++++++++ .../opendbc/dbc/generator/chrysler/.gitignore | 1 + .../generator/chrysler/_stellantis_common.dbc | 185 + .../chrysler/_stellantis_common_ram.py | 54 + .../chrysler_pacifica_2017_hybrid.dbc | 172 + .../generator/chrysler/chrysler_ram_dt.dbc | 57 + .../generator/chrysler/chrysler_ram_hd.dbc | 17 + .../dbc/generator/ford/FORD_CADS_64.sh | 2845 ++++ .../opendbc/dbc/generator/generator.py | 64 + .../opendbc/dbc/generator/gm/_community.dbc | 15 + .../generator/gm/gm_global_a_powertrain.dbc | 353 + .../dbc/generator/honda/_bosch_2018.dbc | 232 + .../dbc/generator/honda/_bosch_adas_2018.dbc | 57 + .../dbc/generator/honda/_community.dbc | 15 + .../dbc/generator/honda/_honda_common.dbc | 163 + .../dbc/generator/honda/_nidec_common.dbc | 96 + .../generator/honda/_steering_sensors_a.dbc | 9 + .../generator/honda/_steering_sensors_b.dbc | 5 + .../generator/honda/acura_ilx_2016_can.dbc | 50 + .../generator/honda/acura_rdx_2018_can.dbc | 46 + .../generator/honda/acura_rdx_2020_can.dbc | 32 + .../generator/honda/honda_accord_2018_can.dbc | 55 + .../honda/honda_civic_ex_2022_can.dbc | 107 + .../honda_civic_hatchback_ex_2017_can.dbc | 37 + .../honda/honda_civic_touring_2016_can.dbc | 95 + .../honda/honda_clarity_hybrid_2018_can.dbc | 113 + .../honda/honda_crv_ex_2017_body.dbc | 10 + .../generator/honda/honda_crv_ex_2017_can.dbc | 40 + .../honda/honda_crv_executive_2016_can.dbc | 51 + .../honda/honda_crv_touring_2016_can.dbc | 49 + .../generator/honda/honda_fit_ex_2018_can.dbc | 59 + .../honda/honda_fit_hybrid_2018_can.dbc | 80 + .../honda/honda_insight_ex_2019_can.dbc | 19 + .../honda/honda_odyssey_exl_2018.dbc | 86 + ...odyssey_extreme_edition_2018_china_can.dbc | 74 + .../generator/honda/honda_pilot_2023_can.dbc | 92 + .../opendbc/dbc/generator/hyundai/.gitignore | 2 + .../dbc/generator/hyundai/_hyundai_common.dbc | 235 + .../dbc/generator/hyundai/hyundai_canfd.dbc | 1077 ++ .../generator/hyundai/hyundai_canfd_radar.py | 95 + .../hyundai/hyundai_kia_mando_corner_radar.py | 170 + .../hyundai/hyundai_kia_mando_front_radar.py | 61 + .../hyundai/hyundai_palisade_2023.dbc | 865 ++ .../dbc/generator/nissan/_nissan_common.dbc | 113 + .../dbc/generator/nissan/nissan_leaf_2018.dbc | 62 + .../generator/nissan/nissan_x_trail_2017.dbc | 69 + .../opendbc/dbc/generator/rivian/.gitignore | 1 + .../rivian/rivian_mando_front_radar.py | 59 + .../dbc/generator/subaru/_subaru_global.dbc | 302 + .../subaru/_subaru_preglobal_2015.dbc | 245 + .../generator/subaru/subaru_forester_2017.dbc | 18 + .../generator/subaru/subaru_global_2017.dbc | 65 + .../subaru/subaru_global_2020_hybrid.dbc | 18 + .../generator/subaru/subaru_outback_2015.dbc | 30 + .../generator/subaru/subaru_outback_2019.dbc | 30 + .../opendbc/dbc/generator/tesla/.gitignore | 1 + .../dbc/generator/tesla/_radar_common.py | 38 + .../dbc/generator/tesla/tesla_radar_bosch.py | 282 + .../tesla/tesla_radar_continental.py | 77 + .../dbc/generator/toyota/_community.dbc | 41 + .../dbc/generator/toyota/_toyota_2017.dbc | 548 + .../toyota/_toyota_adas_standard.dbc | 56 + .../dbc/generator/toyota/toyota_new_mc_pt.dbc | 22 + .../dbc/generator/toyota/toyota_nodsu_pt.dbc | 78 + .../dbc/generator/toyota/toyota_secoc_pt.dbc | 156 + .../dbc/generator/toyota/toyota_tnga_k_pt.dbc | 20 + .../opendbc/dbc/gm_global_a_chassis.dbc | 75 + .../gm_global_a_high_voltage_management.dbc | 196 + .../opendbc/dbc/gm_global_a_lowspeed.dbc | 118 + .../dbc/gm_global_a_lowspeed_1818125.dbc | 3993 +++++ .../opendbc/dbc/gm_global_a_object.dbc | 724 + .../dbc/gm_global_a_powertrain_expansion.dbc | 56 + .../dbc/gm_global_a_powertrain_volt.dbc | 352 + opendbc_repo/opendbc/dbc/hongqi_hs5.dbc | 160 + .../opendbc/dbc/hyundai_2015_ccan.dbc | 1416 ++ .../opendbc/dbc/hyundai_2015_mcan.dbc | 1564 ++ opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc | 549 + .../opendbc/dbc/hyundai_kia_generic.dbc | 1703 +++ .../opendbc/dbc/hyundai_santafe_2007.dbc | 118 + opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc | 153 + opendbc_repo/opendbc/dbc/mazda_2017.dbc | 791 + opendbc_repo/opendbc/dbc/mazda_3_2019.dbc | 408 + opendbc_repo/opendbc/dbc/mazda_radar.dbc | 73 + opendbc_repo/opendbc/dbc/mazda_rx8.dbc | 77 + .../opendbc/dbc/mercedes_benz_e350_2010.dbc | 176 + .../opendbc/dbc/nissan_xterra_2011.dbc | 96 + opendbc_repo/opendbc/dbc/ocelot_controls.dbc | 113 + opendbc_repo/opendbc/dbc/opel_omega_2001.dbc | 104 + .../opendbc/dbc/rivian_primary_actuator.dbc | 1019 ++ opendbc_repo/opendbc/dbc/tesla_can.dbc | 901 ++ .../opendbc/dbc/tesla_model3_party.dbc | 429 + .../opendbc/dbc/tesla_model3_vehicle.dbc | 339 + opendbc_repo/opendbc/dbc/tesla_powertrain.dbc | 179 + .../opendbc/dbc/toyota_2017_ref_pt.dbc | 1638 ++ opendbc_repo/opendbc/dbc/toyota_adas.dbc | 276 + .../opendbc/dbc/toyota_iQ_2009_can.dbc | 196 + .../opendbc/dbc/toyota_prius_2010_pt.dbc | 203 + .../opendbc/dbc/toyota_radar_dsu_tssp.dbc | 194 + opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc | 285 + .../opendbc/dbc/volvo_v40_2017_pt.dbc | 363 + .../opendbc/dbc/volvo_v60_2015_pt.dbc | 298 + opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc | 1676 ++ opendbc_repo/opendbc/dbc/vw_meb.dbc | 3408 +++++ opendbc_repo/opendbc/dbc/vw_mqb.dbc | 1773 +++ opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc | 1773 +++ opendbc_repo/opendbc/dbc/vw_mqbevo.dbc | 1612 ++ opendbc_repo/opendbc/dbc/vw_pq.dbc | 1676 ++ opendbc_repo/opendbc/safety/__init__.py | 11 + opendbc_repo/opendbc/safety/board/can.h | 4 + .../opendbc/safety/board/can_declarations.h | 27 + .../opendbc/safety/board/drivers/can_common.h | 18 + .../board/drivers/can_common_declarations.h | 4 + opendbc_repo/opendbc/safety/board/fake_stm.h | 29 + opendbc_repo/opendbc/safety/board/faults.h | 25 + .../safety/board/faults_declarations.h | 18 + opendbc_repo/opendbc/safety/board/utils.h | 47 + opendbc_repo/opendbc/safety/main.c | 12 + opendbc_repo/opendbc/safety/safety.h | 851 ++ .../opendbc/safety/safety/safety_body.h | 50 + .../opendbc/safety/safety/safety_chrysler.h | 304 + .../opendbc/safety/safety/safety_defaults.h | 76 + .../opendbc/safety/safety/safety_elm327.h | 42 + .../opendbc/safety/safety/safety_ford.h | 434 + .../opendbc/safety/safety/safety_gm.h | 383 + .../opendbc/safety/safety/safety_honda.h | 461 + .../opendbc/safety/safety/safety_hyundai.h | 522 + .../safety/safety/safety_hyundai_canfd.h | 627 + .../safety/safety/safety_hyundai_common.h | 148 + .../opendbc/safety/safety/safety_mazda.h | 131 + .../opendbc/safety/safety/safety_nissan.h | 164 + .../opendbc/safety/safety/safety_rivian.h | 162 + .../opendbc/safety/safety/safety_subaru.h | 293 + .../safety/safety/safety_subaru_preglobal.h | 129 + .../opendbc/safety/safety/safety_tesla.h | 214 + .../opendbc/safety/safety/safety_toyota.h | 414 + .../safety/safety/safety_volkswagen_common.h | 71 + .../safety/safety/safety_volkswagen_mqb.h | 248 + .../safety/safety/safety_volkswagen_pq.h | 259 + .../opendbc/safety/safety_declarations.h | 294 + opendbc_repo/opendbc/safety/tests/__init__.py | 0 opendbc_repo/opendbc/safety/tests/common.py | 993 ++ .../opendbc/safety/tests/hyundai_common.py | 155 + .../opendbc/safety/tests/install_mull.sh | 11 + .../opendbc/safety/tests/libsafety/SConscript | 56 + .../safety/tests/libsafety/__init__.py | 0 .../safety/tests/libsafety/libsafety_py.py | 75 + .../opendbc/safety/tests/libsafety/safety.c | 13 + .../safety/tests/libsafety/safety_helpers.h | 183 + .../safety/tests/libsafety/safety_helpers.py | 102 + .../opendbc/safety/tests/misra/.gitignore | 5 + .../opendbc/safety/tests/misra/checkers.txt | 911 ++ .../opendbc/safety/tests/misra/coverage_table | 156 + .../opendbc/safety/tests/misra/install.sh | 18 + .../safety/tests/misra/suppressions.txt | 21 + .../opendbc/safety/tests/misra/test_misra.sh | 86 + .../safety/tests/misra/test_mutation.py | 69 + opendbc_repo/opendbc/safety/tests/mutation.sh | 16 + .../safety/tests/safety_replay/__init__.py | 0 .../safety/tests/safety_replay/helpers.py | 98 + .../tests/safety_replay/replay_drive.py | 96 + opendbc_repo/opendbc/safety/tests/test.sh | 34 + .../opendbc/safety/tests/test_body.py | 70 + .../opendbc/safety/tests/test_chrysler.py | 125 + .../opendbc/safety/tests/test_defaults.py | 74 + .../opendbc/safety/tests/test_elm327.py | 49 + .../opendbc/safety/tests/test_ford.py | 514 + opendbc_repo/opendbc/safety/tests/test_gm.py | 228 + .../opendbc/safety/tests/test_honda.py | 573 + .../opendbc/safety/tests/test_hyundai.py | 273 + .../safety/tests/test_hyundai_canfd.py | 286 + .../opendbc/safety/tests/test_mazda.py | 86 + .../opendbc/safety/tests/test_nissan.py | 118 + .../opendbc/safety/tests/test_rivian.py | 109 + .../opendbc/safety/tests/test_subaru.py | 228 + .../safety/tests/test_subaru_preglobal.py | 70 + .../opendbc/safety/tests/test_tesla.py | 174 + .../opendbc/safety/tests/test_toyota.py | 356 + .../safety/tests/test_volkswagen_mqb.py | 223 + .../safety/tests/test_volkswagen_pq.py | 198 + opendbc_repo/pyproject.toml | 124 + opendbc_repo/setup.sh | 19 + opendbc_repo/site_scons/site_tools/cython.py | 72 + opendbc_repo/test.sh | 18 + selfdrive/car/bmw/__init__.py | 0 selfdrive/car/bmw/bmwcan.py | 75 + selfdrive/car/bmw/carcontroller.py | 193 + selfdrive/car/bmw/carstate.py | 189 + selfdrive/car/bmw/fingerprints.py | 35 + selfdrive/car/bmw/interface.py | 173 + selfdrive/car/bmw/radar_interface.py | 4 + selfdrive/car/bmw/tests/__init__.py | 0 selfdrive/car/bmw/tests/test_bmw.py | 37 + selfdrive/car/bmw/values.py | 91 + 538 files changed, 124456 insertions(+) create mode 100644 opendbc_repo/.github/labeler.yaml create mode 100644 opendbc_repo/.github/workflows/auto_pr_review.yaml create mode 100644 opendbc_repo/.github/workflows/release.yml create mode 100644 opendbc_repo/.github/workflows/repo.yml create mode 100644 opendbc_repo/.github/workflows/stale.yml create mode 100644 opendbc_repo/.github/workflows/test_models_trigger.yaml create mode 100644 opendbc_repo/.github/workflows/tests.yml create mode 100644 opendbc_repo/.github/workflows/update-cars-docs.yml create mode 100644 opendbc_repo/.gitignore create mode 100644 opendbc_repo/LICENSE create mode 100644 opendbc_repo/MANIFEST.in create mode 100644 opendbc_repo/README.md create mode 100644 opendbc_repo/RELEASES.md create mode 100644 opendbc_repo/SConscript create mode 100644 opendbc_repo/SConstruct create mode 100644 opendbc_repo/conftest.py create mode 100644 opendbc_repo/docs/CARS.md create mode 100755 opendbc_repo/examples/joystick.py create mode 100755 opendbc_repo/examples/kbhit.py create mode 100644 opendbc_repo/lefthook.yml create mode 100644 opendbc_repo/opendbc/__init__.py create mode 100644 opendbc_repo/opendbc/can/__init__.py create mode 100644 opendbc_repo/opendbc/can/dbc.py create mode 100644 opendbc_repo/opendbc/can/packer.py create mode 100644 opendbc_repo/opendbc/can/parser.py create mode 100644 opendbc_repo/opendbc/can/tests/.gitignore create mode 100644 opendbc_repo/opendbc/can/tests/__init__.py create mode 100644 opendbc_repo/opendbc/can/tests/benchmark.py create mode 100644 opendbc_repo/opendbc/can/tests/test.dbc create mode 100644 opendbc_repo/opendbc/can/tests/test_checksums.py create mode 100644 opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py create mode 100644 opendbc_repo/opendbc/can/tests/test_dbc_parser.py create mode 100644 opendbc_repo/opendbc/can/tests/test_define.py create mode 100644 opendbc_repo/opendbc/can/tests/test_packer_parser.py create mode 100644 opendbc_repo/opendbc/car/CARS_template.md create mode 100644 opendbc_repo/opendbc/car/__init__.py create mode 100644 opendbc_repo/opendbc/car/bmw/__init__.py create mode 100644 opendbc_repo/opendbc/car/bmw/values.py create mode 100644 opendbc_repo/opendbc/car/body/__init__.py create mode 100644 opendbc_repo/opendbc/car/body/bodycan.py create mode 100644 opendbc_repo/opendbc/car/body/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/body/carstate.py create mode 100644 opendbc_repo/opendbc/car/body/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/body/interface.py create mode 100644 opendbc_repo/opendbc/car/body/values.py create mode 100644 opendbc_repo/opendbc/car/can_definitions.py create mode 100644 opendbc_repo/opendbc/car/car.capnp create mode 100644 opendbc_repo/opendbc/car/car_helpers.py create mode 100644 opendbc_repo/opendbc/car/carlog.py create mode 100644 opendbc_repo/opendbc/car/ccp.py create mode 100644 opendbc_repo/opendbc/car/chrysler/__init__.py create mode 100644 opendbc_repo/opendbc/car/chrysler/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/chrysler/carstate.py create mode 100644 opendbc_repo/opendbc/car/chrysler/chryslercan.py create mode 100644 opendbc_repo/opendbc/car/chrysler/fingerprints.py create mode 100755 opendbc_repo/opendbc/car/chrysler/interface.py create mode 100755 opendbc_repo/opendbc/car/chrysler/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/chrysler/values.py create mode 100644 opendbc_repo/opendbc/car/common/__init__.py create mode 100644 opendbc_repo/opendbc/car/common/basedir.py create mode 100644 opendbc_repo/opendbc/car/common/conversions.py create mode 100644 opendbc_repo/opendbc/car/common/filter_simple.py create mode 100644 opendbc_repo/opendbc/car/common/pid.py create mode 100644 opendbc_repo/opendbc/car/common/simple_kalman.py create mode 100644 opendbc_repo/opendbc/car/crc.py create mode 100644 opendbc_repo/opendbc/car/debug/format_fingerprints.py create mode 100644 opendbc_repo/opendbc/car/disable_ecu.py create mode 100755 opendbc_repo/opendbc/car/docs.py create mode 100644 opendbc_repo/opendbc/car/docs_definitions.py create mode 100644 opendbc_repo/opendbc/car/ecu_addrs.py create mode 100644 opendbc_repo/opendbc/car/extra_cars.py create mode 100644 opendbc_repo/opendbc/car/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/ford/__init__.py create mode 100644 opendbc_repo/opendbc/car/ford/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/ford/carstate.py create mode 100644 opendbc_repo/opendbc/car/ford/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/ford/fordcan.py create mode 100644 opendbc_repo/opendbc/car/ford/interface.py create mode 100644 opendbc_repo/opendbc/car/ford/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/ford/tests/__init__.py create mode 100755 opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py create mode 100644 opendbc_repo/opendbc/car/ford/tests/test_ford.py create mode 100644 opendbc_repo/opendbc/car/ford/values.py create mode 100644 opendbc_repo/opendbc/car/fw_query_definitions.py create mode 100644 opendbc_repo/opendbc/car/fw_versions.py create mode 100644 opendbc_repo/opendbc/car/gm/__init__.py create mode 100644 opendbc_repo/opendbc/car/gm/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/gm/carstate.py create mode 100644 opendbc_repo/opendbc/car/gm/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/gm/gmcan.py create mode 100644 opendbc_repo/opendbc/car/gm/interface.py create mode 100755 opendbc_repo/opendbc/car/gm/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/gm/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/gm/tests/test_gm.py create mode 100644 opendbc_repo/opendbc/car/gm/values.py create mode 100644 opendbc_repo/opendbc/car/honda/__init__.py create mode 100644 opendbc_repo/opendbc/car/honda/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/honda/carstate.py create mode 100644 opendbc_repo/opendbc/car/honda/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/honda/hondacan.py create mode 100755 opendbc_repo/opendbc/car/honda/interface.py create mode 100755 opendbc_repo/opendbc/car/honda/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/honda/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/honda/tests/test_honda.py create mode 100644 opendbc_repo/opendbc/car/honda/values.py create mode 100644 opendbc_repo/opendbc/car/hyundai/__init__.py create mode 100644 opendbc_repo/opendbc/car/hyundai/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/hyundai/carstate.py create mode 100644 opendbc_repo/opendbc/car/hyundai/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/hyundai/hyundaican.py create mode 100644 opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py create mode 100644 opendbc_repo/opendbc/car/hyundai/interface.py create mode 100644 opendbc_repo/opendbc/car/hyundai/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/hyundai/tests/__init__.py create mode 100755 opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py create mode 100644 opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py create mode 100644 opendbc_repo/opendbc/car/hyundai/values.py create mode 100644 opendbc_repo/opendbc/car/include/c++.capnp create mode 100644 opendbc_repo/opendbc/car/interfaces.py create mode 100644 opendbc_repo/opendbc/car/isotp.py create mode 100644 opendbc_repo/opendbc/car/isotp_parallel_query.py create mode 100644 opendbc_repo/opendbc/car/mazda/__init__.py create mode 100644 opendbc_repo/opendbc/car/mazda/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/mazda/carstate.py create mode 100644 opendbc_repo/opendbc/car/mazda/fingerprints.py create mode 100755 opendbc_repo/opendbc/car/mazda/interface.py create mode 100644 opendbc_repo/opendbc/car/mazda/mazdacan.py create mode 100644 opendbc_repo/opendbc/car/mazda/values.py create mode 100644 opendbc_repo/opendbc/car/mock/__init__.py create mode 100644 opendbc_repo/opendbc/car/mock/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/mock/carstate.py create mode 100755 opendbc_repo/opendbc/car/mock/interface.py create mode 100644 opendbc_repo/opendbc/car/mock/values.py create mode 100644 opendbc_repo/opendbc/car/nissan/__init__.py create mode 100644 opendbc_repo/opendbc/car/nissan/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/nissan/carstate.py create mode 100644 opendbc_repo/opendbc/car/nissan/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/nissan/interface.py create mode 100644 opendbc_repo/opendbc/car/nissan/nissancan.py create mode 100644 opendbc_repo/opendbc/car/nissan/values.py create mode 100644 opendbc_repo/opendbc/car/panda_runner.py create mode 100644 opendbc_repo/opendbc/car/rivian/__init__.py create mode 100644 opendbc_repo/opendbc/car/rivian/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/rivian/carstate.py create mode 100644 opendbc_repo/opendbc/car/rivian/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/rivian/interface.py create mode 100644 opendbc_repo/opendbc/car/rivian/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/rivian/riviancan.py create mode 100644 opendbc_repo/opendbc/car/rivian/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/rivian/tests/test_rivian.py create mode 100644 opendbc_repo/opendbc/car/rivian/values.py create mode 100644 opendbc_repo/opendbc/car/secoc.py create mode 100644 opendbc_repo/opendbc/car/structs.py create mode 100644 opendbc_repo/opendbc/car/subaru/__init__.py create mode 100644 opendbc_repo/opendbc/car/subaru/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/subaru/carstate.py create mode 100644 opendbc_repo/opendbc/car/subaru/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/subaru/interface.py create mode 100644 opendbc_repo/opendbc/car/subaru/subarucan.py create mode 100644 opendbc_repo/opendbc/car/subaru/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/subaru/tests/test_subaru.py create mode 100644 opendbc_repo/opendbc/car/subaru/values.py create mode 100644 opendbc_repo/opendbc/car/tesla/__init__.py create mode 100644 opendbc_repo/opendbc/car/tesla/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/tesla/carstate.py create mode 100644 opendbc_repo/opendbc/car/tesla/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/tesla/interface.py create mode 100644 opendbc_repo/opendbc/car/tesla/teslacan.py create mode 100644 opendbc_repo/opendbc/car/tesla/values.py create mode 100644 opendbc_repo/opendbc/car/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/tests/routes.py create mode 100644 opendbc_repo/opendbc/car/tests/test_can_fingerprint.py create mode 100644 opendbc_repo/opendbc/car/tests/test_car_interfaces.py create mode 100644 opendbc_repo/opendbc/car/tests/test_docs.py create mode 100644 opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py create mode 100755 opendbc_repo/opendbc/car/tests/test_lateral_limits.py create mode 100644 opendbc_repo/opendbc/car/tests/test_platform_configs.py create mode 100644 opendbc_repo/opendbc/car/tests/test_routes.py create mode 100644 opendbc_repo/opendbc/car/tests/test_vehicle_model.py create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json create mode 100644 opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json create mode 100644 opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json create mode 100644 opendbc_repo/opendbc/car/torque_data/override.toml create mode 100644 opendbc_repo/opendbc/car/torque_data/params.toml create mode 100644 opendbc_repo/opendbc/car/torque_data/substitute.toml create mode 100644 opendbc_repo/opendbc/car/toyota/__init__.py create mode 100644 opendbc_repo/opendbc/car/toyota/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/toyota/carstate.py create mode 100644 opendbc_repo/opendbc/car/toyota/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/toyota/interface.py create mode 100755 opendbc_repo/opendbc/car/toyota/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/toyota/tests/__init__.py create mode 100755 opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py create mode 100644 opendbc_repo/opendbc/car/toyota/tests/test_toyota.py create mode 100644 opendbc_repo/opendbc/car/toyota/toyotacan.py create mode 100644 opendbc_repo/opendbc/car/toyota/values.py create mode 100644 opendbc_repo/opendbc/car/uds.py create mode 100644 opendbc_repo/opendbc/car/values.py create mode 100755 opendbc_repo/opendbc/car/vehicle_model.py create mode 100644 opendbc_repo/opendbc/car/vin.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/__init__.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/carstate.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/fingerprints.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/interface.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/mqbcan.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/pqcan.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py create mode 100644 opendbc_repo/opendbc/car/volkswagen/values.py create mode 100644 opendbc_repo/opendbc/car/xcp.py create mode 100644 opendbc_repo/opendbc/dbc/ESR.dbc create mode 100644 opendbc_repo/opendbc/dbc/FORD_CADS.dbc create mode 100644 opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc create mode 100644 opendbc_repo/opendbc/dbc/README.md create mode 100644 opendbc_repo/opendbc/dbc/SConscript create mode 100644 opendbc_repo/opendbc/dbc/__init__.py create mode 100644 opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc create mode 100644 opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc create mode 100644 opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc create mode 100644 opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc create mode 100644 opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc create mode 100644 opendbc_repo/opendbc/dbc/chrysler_cusw.dbc create mode 100644 opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc create mode 100644 opendbc_repo/opendbc/dbc/comma_body.dbc create mode 100644 opendbc_repo/opendbc/dbc/fca_giorgio.dbc create mode 100644 opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc create mode 100644 opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc create mode 100644 opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc create mode 100644 opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore create mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc create mode 100755 opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py create mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc create mode 100755 opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh create mode 100755 opendbc_repo/opendbc/dbc/generator/generator.py create mode 100644 opendbc_repo/opendbc/dbc/generator/gm/_community.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_community.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore create mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc create mode 100755 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py create mode 100755 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py create mode 100755 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py create mode 100644 opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/rivian/.gitignore create mode 100755 opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/tesla/.gitignore create mode 100755 opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py create mode 100755 opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py create mode 100755 opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_object.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc create mode 100644 opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc create mode 100644 opendbc_repo/opendbc/dbc/hongqi_hs5.dbc create mode 100644 opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc create mode 100644 opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc create mode 100644 opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc create mode 100644 opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc create mode 100644 opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc create mode 100644 opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc create mode 100644 opendbc_repo/opendbc/dbc/mazda_2017.dbc create mode 100644 opendbc_repo/opendbc/dbc/mazda_3_2019.dbc create mode 100644 opendbc_repo/opendbc/dbc/mazda_radar.dbc create mode 100644 opendbc_repo/opendbc/dbc/mazda_rx8.dbc create mode 100644 opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc create mode 100644 opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc create mode 100644 opendbc_repo/opendbc/dbc/ocelot_controls.dbc create mode 100644 opendbc_repo/opendbc/dbc/opel_omega_2001.dbc create mode 100644 opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc create mode 100644 opendbc_repo/opendbc/dbc/tesla_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/tesla_model3_party.dbc create mode 100644 opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc create mode 100644 opendbc_repo/opendbc/dbc/tesla_powertrain.dbc create mode 100644 opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/toyota_adas.dbc create mode 100644 opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc create mode 100644 opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc create mode 100644 opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc create mode 100644 opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc create mode 100644 opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc create mode 100644 opendbc_repo/opendbc/dbc/vw_meb.dbc create mode 100644 opendbc_repo/opendbc/dbc/vw_mqb.dbc create mode 100644 opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc create mode 100644 opendbc_repo/opendbc/dbc/vw_mqbevo.dbc create mode 100644 opendbc_repo/opendbc/dbc/vw_pq.dbc create mode 100644 opendbc_repo/opendbc/safety/__init__.py create mode 100644 opendbc_repo/opendbc/safety/board/can.h create mode 100644 opendbc_repo/opendbc/safety/board/can_declarations.h create mode 100644 opendbc_repo/opendbc/safety/board/drivers/can_common.h create mode 100644 opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h create mode 100644 opendbc_repo/opendbc/safety/board/fake_stm.h create mode 100644 opendbc_repo/opendbc/safety/board/faults.h create mode 100644 opendbc_repo/opendbc/safety/board/faults_declarations.h create mode 100644 opendbc_repo/opendbc/safety/board/utils.h create mode 100644 opendbc_repo/opendbc/safety/main.c create mode 100644 opendbc_repo/opendbc/safety/safety.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_body.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_chrysler.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_defaults.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_elm327.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_ford.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_gm.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_honda.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_hyundai.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_mazda.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_nissan.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_rivian.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_subaru.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_tesla.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_toyota.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h create mode 100644 opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h create mode 100644 opendbc_repo/opendbc/safety/safety_declarations.h create mode 100644 opendbc_repo/opendbc/safety/tests/__init__.py create mode 100644 opendbc_repo/opendbc/safety/tests/common.py create mode 100644 opendbc_repo/opendbc/safety/tests/hyundai_common.py create mode 100755 opendbc_repo/opendbc/safety/tests/install_mull.sh create mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/SConscript create mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/__init__.py create mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py create mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/safety.c create mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h create mode 100644 opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py create mode 100644 opendbc_repo/opendbc/safety/tests/misra/.gitignore create mode 100644 opendbc_repo/opendbc/safety/tests/misra/checkers.txt create mode 100644 opendbc_repo/opendbc/safety/tests/misra/coverage_table create mode 100755 opendbc_repo/opendbc/safety/tests/misra/install.sh create mode 100644 opendbc_repo/opendbc/safety/tests/misra/suppressions.txt create mode 100755 opendbc_repo/opendbc/safety/tests/misra/test_misra.sh create mode 100755 opendbc_repo/opendbc/safety/tests/misra/test_mutation.py create mode 100755 opendbc_repo/opendbc/safety/tests/mutation.sh create mode 100644 opendbc_repo/opendbc/safety/tests/safety_replay/__init__.py create mode 100644 opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py create mode 100755 opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py create mode 100755 opendbc_repo/opendbc/safety/tests/test.sh create mode 100755 opendbc_repo/opendbc/safety/tests/test_body.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_chrysler.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_defaults.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_elm327.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_ford.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_gm.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_honda.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_hyundai.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_mazda.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_nissan.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_rivian.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_subaru.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_tesla.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_toyota.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py create mode 100755 opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py create mode 100644 opendbc_repo/pyproject.toml create mode 100755 opendbc_repo/setup.sh create mode 100644 opendbc_repo/site_scons/site_tools/cython.py create mode 100755 opendbc_repo/test.sh create mode 100644 selfdrive/car/bmw/__init__.py create mode 100644 selfdrive/car/bmw/bmwcan.py create mode 100644 selfdrive/car/bmw/carcontroller.py create mode 100644 selfdrive/car/bmw/carstate.py create mode 100644 selfdrive/car/bmw/fingerprints.py create mode 100755 selfdrive/car/bmw/interface.py create mode 100644 selfdrive/car/bmw/radar_interface.py create mode 100644 selfdrive/car/bmw/tests/__init__.py create mode 100644 selfdrive/car/bmw/tests/test_bmw.py create mode 100644 selfdrive/car/bmw/values.py diff --git a/opendbc_repo/.github/labeler.yaml b/opendbc_repo/.github/labeler.yaml new file mode 100644 index 0000000000..520e2d12a5 --- /dev/null +++ b/opendbc_repo/.github/labeler.yaml @@ -0,0 +1,76 @@ +CI / testing: + - changed-files: + - any-glob-to-any-file: '.github/**' + +car: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/**' + +car safety: + - changed-files: + - any-glob-to-any-file: 'opendbc/safety/**' + +can: + - changed-files: + - any-glob-to-any-file: 'opendbc/can/**' + +DBC signals: + - changed-files: + - any-glob-to-any-file: 'opendbc/dbc/**' + + +body: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/body/**' + +chrysler: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/chrysler/**' + +ford: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/ford/**' + +gm: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/gm/**' + +honda: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/honda/**' + +hyundai: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/hyundai/**' + +mazda: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/mazda/**' + +nissan: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/nissan/**' + +rivian: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/rivian/**' + +subaru: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/subaru/**' + +tesla: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/tesla/**' + +toyota: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/toyota/**' + +volkswagen: + - changed-files: + - any-glob-to-any-file: 'opendbc/car/volkswagen/**' + +fingerprint: + - changed-files: + - any-glob-to-all-files: 'opendbc/car/*/fingerprints.py' diff --git a/opendbc_repo/.github/workflows/auto_pr_review.yaml b/opendbc_repo/.github/workflows/auto_pr_review.yaml new file mode 100644 index 0000000000..ffe380a8b2 --- /dev/null +++ b/opendbc_repo/.github/workflows/auto_pr_review.yaml @@ -0,0 +1,50 @@ +name: "PR review" +on: + pull_request_target: + types: [opened, reopened, synchronize, edited, edited] + +jobs: + labeler: + name: review + permissions: + contents: read + pull-requests: write + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + # Label PRs + - uses: actions/labeler@v5.0.0 + with: + dot: true + sync-labels: true + configuration-path: .github/labeler.yaml + + # Check PR target branch + - name: check branch + uses: Vankka/pr-target-branch-action@def32ec9d93514138d6ac0132ee62e120a72aed5 + if: github.repository == 'commaai/opendbc' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + target: /^(?!master$).*/ + exclude: /commaai:.*/ + change-to: ${{ github.base_ref }} + already-exists-action: close_this + already-exists-comment: "Your PR should be made against the `master` branch" + + # Welcome comment + - name: "First timers PR" + uses: actions/first-interaction@v1 + if: github.event.pull_request.head.repo.full_name != 'commaai/opendbc' + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + pr-message: | + + Thanks for contributing to opendbc! In order for us to review your PR as quickly as possible, check the following: + * Convert your PR to a draft unless it's ready to review + * Read the [contributing docs](https://github.com/commaai/openpilot/blob/master/docs/CONTRIBUTING.md) + * Before marking as "ready for review", ensure: + * the goal is clearly stated in the description + * all the tests are passing + * include a route or your device' dongle ID if relevant diff --git a/opendbc_repo/.github/workflows/release.yml b/opendbc_repo/.github/workflows/release.yml new file mode 100644 index 0000000000..5e9a3a706c --- /dev/null +++ b/opendbc_repo/.github/workflows/release.yml @@ -0,0 +1,34 @@ +name: Publish to PyPI +on: + release: + types: [published] + workflow_dispatch: + +jobs: + pypi-publish: + name: Upload release to PyPI + runs-on: ubuntu-latest + environment: + name: pypi + url: https://pypi.org/p/opendbc + permissions: + id-token: write # trusted publishing + steps: + - uses: actions/checkout@v4 + + - name: Build distribution + run: | + ./test.sh + source .venv/bin/activate + uv pip install build + python -m build + + - name: Publish to Test PyPI + if: github.event_name == 'workflow_dispatch' + uses: pypa/gh-action-pypi-publish@v1.12.4 + with: + repository-url: https://test.pypi.org/legacy/ + + - name: Publish to Production PyPI + if: github.event_name == 'release' + uses: pypa/gh-action-pypi-publish@v1.12.4 diff --git a/opendbc_repo/.github/workflows/repo.yml b/opendbc_repo/.github/workflows/repo.yml new file mode 100644 index 0000000000..37ca09c923 --- /dev/null +++ b/opendbc_repo/.github/workflows/repo.yml @@ -0,0 +1,28 @@ +name: repo + +on: + schedule: + - cron: "0 15 1 * *" + workflow_dispatch: + +jobs: + pre-commit-autoupdate: + name: pre-commit autoupdate + runs-on: ubuntu-latest + container: + image: ghcr.io/commaai/opendbc:latest + steps: + - uses: actions/checkout@v4 + - name: pre-commit autoupdate + run: | + git config --global --add safe.directory '*' + pre-commit autoupdate + - name: Create Pull Request + uses: peter-evans/create-pull-request@5b4a9f6a9e2af26e5f02351490b90d01eb8ec1e5 + with: + token: ${{ secrets.ACTIONS_CREATE_PR_PAT }} + commit-message: Update pre-commit hook versions + title: 'pre-commit: autoupdate hooks' + branch: pre-commit-updates + base: master + delete-branch: true diff --git a/opendbc_repo/.github/workflows/stale.yml b/opendbc_repo/.github/workflows/stale.yml new file mode 100644 index 0000000000..34a7f7aed0 --- /dev/null +++ b/opendbc_repo/.github/workflows/stale.yml @@ -0,0 +1,30 @@ +name: stale +on: + schedule: + - cron: '30 1 * * *' + workflow_dispatch: + +env: + DAYS_BEFORE_PR_CLOSE: 7 + DAYS_BEFORE_PR_STALE: 60 + +jobs: + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v9 + with: + exempt-all-milestones: true + + # pull request config + stale-pr-message: 'This PR has had no activity for ${{ env.DAYS_BEFORE_PR_STALE }} days. It will be automatically closed in ${{ env.DAYS_BEFORE_PR_CLOSE }} days if there is no activity.' + close-pr-message: 'This PR has been automatically closed due to inactivity. Feel free to re-open once activity resumes.' + stale-pr-label: stale + delete-branch: ${{ github.event.pull_request.head.repo.full_name == 'commaai/opendbc' }} # only delete branches on the main repo + exempt-draft-pr: true + exempt-pr-labels: "ignore stale" # if wip, don't mark as stale + days-before-pr-stale: ${{ env.DAYS_BEFORE_PR_STALE }} + days-before-pr-close: ${{ env.DAYS_BEFORE_PR_CLOSE }} + + # issue config + days-before-issue-stale: -1 # ignore issues for now diff --git a/opendbc_repo/.github/workflows/test_models_trigger.yaml b/opendbc_repo/.github/workflows/test_models_trigger.yaml new file mode 100644 index 0000000000..c93469a6f6 --- /dev/null +++ b/opendbc_repo/.github/workflows/test_models_trigger.yaml @@ -0,0 +1,60 @@ +name: test models trigger + +on: + issue_comment: + types: [created, edited] + +jobs: + scan-comments: + runs-on: ubuntu-latest + if: ${{ github.event.issue.pull_request }} + steps: + - name: Check for trigger phrase + id: check_comment + uses: actions/github-script@v7 + with: + script: | + const triggerPhrase = "trigger-test-models"; + const comment = context.payload.comment.body; + const commenter = context.payload.comment.user.login; + + const { data: permissions } = await github.rest.repos.getCollaboratorPermissionLevel({ + owner: context.repo.owner, + repo: context.repo.repo, + username: commenter + }); + + const hasWriteAccess = permissions.permission === 'write' || permissions.permission === 'admin'; + + return (hasWriteAccess && comment.includes(triggerPhrase)); + result-encoding: json + + - name: Checkout openpilot + if: steps.check_comment.outputs.result == 'true' + uses: actions/checkout@v4 + with: + repository: 'commaai/openpilot' + submodules: 'true' + + - name: bump opendbc + if: steps.check_comment.outputs.result == 'true' + run: | + cd opendbc_repo + git fetch origin pull/${{ github.event.issue.number }}/head + git checkout FETCH_HEAD + cd .. + git add . + + - name: Create Pull Request + if: steps.check_comment.outputs.result == 'true' + uses: peter-evans/create-pull-request@9153d834b60caba6d51c9b9510b087acf9f33f83 + with: + author: Vehicle Researcher + token: ${{ secrets.ACTIONS_CREATE_PR_PAT }} + commit-message: test models + title: '[opendbc] test_models run from ${{ github.event.issue.number }}' + branch: test_models_${{ github.event.issue.number }} + base: master + delete-branch: true + body: 'Testing some opendbc changes from https://github.com/commaai/opendbc/pull/${{ github.event.issue.number }}' + labels: bot diff --git a/opendbc_repo/.github/workflows/tests.yml b/opendbc_repo/.github/workflows/tests.yml new file mode 100644 index 0000000000..be3c882887 --- /dev/null +++ b/opendbc_repo/.github/workflows/tests.yml @@ -0,0 +1,105 @@ +name: tests + +on: + push: + branches: + - master + pull_request: + +jobs: + tests: + name: ./test.sh + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + include: + - os: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-24.04' }} + - os: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-macos-8x14' || 'macos-latest' }} + steps: + - uses: commaai/timeout@v1 + - uses: actions/checkout@v4 + - run: ./test.sh + + safety_tests: + name: safety + runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} + strategy: + fail-fast: false + matrix: + flags: ['', '--ubsan'] + steps: + - uses: commaai/timeout@v1 + - uses: actions/checkout@v4 + - name: Run safety tests + run: ./opendbc/safety/tests/test.sh ${{ matrix.flags }} + + misra_linter: + name: MISRA C:2012 Linter + runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} + timeout-minutes: 20 + steps: + - name: Set up + run: sudo apt-get install -y --no-install-recommends gcc-arm-none-eabi libnewlib-arm-none-eabi + - uses: actions/checkout@v4 + - name: Restore cached cppcheck + uses: actions/cache@v4 + with: + path: opendbc/safety/tests/misra/cppcheck/ + key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} + restore-keys: | + cppcheck-cache-${{ runner.os }}-${{ github.ref }} + cppcheck-cache-${{ runner.os }}- + - name: Run MISRA C:2012 analysis + timeout-minutes: ${{ ((steps.restore-scons-cache.outputs.cache-hit == 'true') && 1 || 2) }} + run: cd opendbc/safety/tests/misra && ./test_misra.sh + - name: Save cppcheck cache + uses: actions/cache@v4 + with: + path: opendbc/safety/tests/misra/cppcheck/ + key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} + + misra_mutation: + name: MISRA C:2012 Mutation + runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} + timeout-minutes: 20 + steps: + - name: Set up + run: sudo apt-get install -y --no-install-recommends gcc-arm-none-eabi libnewlib-arm-none-eabi + - uses: actions/checkout@v4 + - name: Restore cached cppcheck + uses: actions/cache@v4 + with: + path: opendbc/safety/tests/misra/cppcheck/ + key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} + restore-keys: | + cppcheck-cache-${{ runner.os }}-${{ github.ref }} + cppcheck-cache-${{ runner.os }}- + - name: MISRA mutation tests + timeout-minutes: 1 + run: | + source setup.sh + scons -j8 + cd opendbc/safety/tests/misra + ./install.sh # cppcheck + pytest -s -n8 --randomly-seed $RANDOM test_mutation.py + - name: Save cppcheck cache + uses: actions/cache@v4 + with: + path: opendbc/safety/tests/misra/cppcheck/ + key: cppcheck-cache-${{ runner.os }}-${{ github.ref }} + + mutation: + name: Safety mutation tests + runs-on: ${{ github.repository == 'commaai/opendbc' && 'namespace-profile-amd64-8x16' || 'ubuntu-latest' }} + timeout-minutes: 20 + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 # need master to get diff + - name: Run mutation tests + timeout-minutes: 5 + run: | + source setup.sh + scons -j8 + GIT_REF=${{ github.event_name == 'push' && github.ref == 'refs/heads/master' && github.event.before || 'origin/master' }} cd opendbc/safety/tests && ./mutation.sh diff --git a/opendbc_repo/.github/workflows/update-cars-docs.yml b/opendbc_repo/.github/workflows/update-cars-docs.yml new file mode 100644 index 0000000000..bf72e5280f --- /dev/null +++ b/opendbc_repo/.github/workflows/update-cars-docs.yml @@ -0,0 +1,25 @@ +name: Update CARS.md + +on: + schedule: + - cron: '0 8 * * *' # 12am PST (8am UTC) + workflow_dispatch: + +jobs: + update-cars: + runs-on: ubuntu-24.04 + permissions: + contents: write + steps: + - uses: actions/checkout@v4 + - name: Generate Car Docs + run: | + pip install -e . + scons -c && scons -j$(nproc) + python -m pip install jinja2==3.1.4 natsort==8.4.0 + python opendbc/car/docs.py + - uses: stefanzweifel/git-auto-commit-action@8621497c8c39c72f3e2a999a26b4ca1b5058a842 + with: + commit_message: 'docs: Scheduled auto-update CARS.md' + file_pattern: 'docs/CARS.md' + \ No newline at end of file diff --git a/opendbc_repo/.gitignore b/opendbc_repo/.gitignore new file mode 100644 index 0000000000..53830d4fdb --- /dev/null +++ b/opendbc_repo/.gitignore @@ -0,0 +1,36 @@ +.cache/ +/build/ +.mypy_cache/ +*.pyc +*.os +*.o +*.so +*.a +*.tmp +*.dylib +.*.swp +.DS_Store +.sconsign.dblite +.hypothesis +*.egg-info/ +*.html +*.gcda +*.gcno +*.dump +uv.lock +/dist/ +.vscode/ +__pycache__/ + +opendbc/can/build/ +opendbc/can/obj/ +opendbc/can/packer_pyx.cpp +opendbc/can/parser_pyx.cpp +opendbc/can/packer_pyx.html +opendbc/can/parser_pyx.html +opendbc/dbc/*_generated.dbc + +cppcheck-addon-ctu-file-list +opendbc/safety/tests/coverage-out + +compile_commands.json diff --git a/opendbc_repo/LICENSE b/opendbc_repo/LICENSE new file mode 100644 index 0000000000..f1fd199c63 --- /dev/null +++ b/opendbc_repo/LICENSE @@ -0,0 +1,7 @@ +Copyright (c) 2020, Comma.ai, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/opendbc_repo/MANIFEST.in b/opendbc_repo/MANIFEST.in new file mode 100644 index 0000000000..a8583dc97b --- /dev/null +++ b/opendbc_repo/MANIFEST.in @@ -0,0 +1,3 @@ +include opendbc/car/car.capnp +include opendbc/car/include/c++.capnp +recursive-include opendbc/safety *.h diff --git a/opendbc_repo/README.md b/opendbc_repo/README.md new file mode 100644 index 0000000000..5ce4591c18 --- /dev/null +++ b/opendbc_repo/README.md @@ -0,0 +1,196 @@ +
+ +

opendbc

+

+ opendbc is a Python API for your car. +
+ Control the gas, brake, steering, and more. Read the speed, steering angle, and more. +

+ +

+ Docs + · + Contribute + · + Discord +

+ +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) +[![X Follow](https://img.shields.io/twitter/follow/comma_ai)](https://x.com/comma_ai) +[![Discord](https://img.shields.io/discord/469524606043160576)](https://discord.comma.ai) + +
+ +--- + +Most cars since 2016 have electronically-actuatable steering, gas, and brakes thanks to [LKAS](https://en.wikipedia.org/wiki/Lane_departure_warning_system#Lane_keeping_and_next_technologies) and [ACC](https://en.wikipedia.org/wiki/Adaptive_cruise_control). +The goal of this project is to support controlling the steering, gas, and brakes on every single one of those cars. + +While the primary focus is on supporting ADAS interfaces for [openpilot](https://github.com/commaai/openpilot), we're also interested in reading and writing as many things as we can (EV charge status, lock/unlocking doors, etc) such that we can build the best vehicle management app ever. + +--- + +This README and the [supported cars list](docs/CARS.md) are all the docs for the opendbc project. +Everything you need to know to use, contribute, and extend opendbc are in these docs. + +## Quick start + +```bash +git clone https://github.com/commaai/opendbc.git +cd opendbc + +# you probably just want to use this. it's an all-in-one for dependency +# installation, compiling, linting, and tests. it's also what runs in CI +./test.sh + +# here are the individual commands it runs +pip3 install -e .[testing,docs] # install dependencies +scons -j8 # build with 8 cores +pytest . # run the tests +lefthook run lint # run the linter +``` + +[`examples/`](examples/) contains small example programs that can read state from the car and control the steering, gas, and brakes. +[`examples/joystick.py`](examples/joystick.py) allows you to control a car with a joystick. + +### Project Structure +* [`opendbc/dbc/`](opendbc/dbc/) is a repository of [DBC](https://en.wikipedia.org/wiki/CAN_bus#DBC) files +* [`opendbc/can/`](opendbc/can/) is a library for parsing and building CAN messages from DBC files +* [`opendbc/car/`](opendbc/car/) is a high-level library for interfacing with cars using Python +* [`opendbc/safety/`](opendbc/safety/) is the functional safety for all the cars supported by `opendbc/car/` + +## How to Port a Car + +This guide covers everything from adding support to a new car all the way to improving existing cars (e.g. adding longitudinal control or radar parsing). If similar cars to yours are already compatible, most of this work is likely already done for you. + +At its most basic, a car port will control the steering on a car. A "complete" car port will have all of: lateral control, longitudinal control, good tuning for both lateral and longitudinal, radar parsing (if equipped), fuzzy fingerprinting, and more. The new car support docs will clearly communicate each car's support level. + +### Connect to the Car + +The first step is to get connected to the car with a comma 3X and a car harness. +The car harness gets you connected to two different CAN buses and splits one of those buses to send our own actuation messages. + +If you're lucky, a harness compatible with your car will already be designed and sold on comma.ai/shop. +If you're not so lucky, start with a "developer harness" from comma.ai/shop and crimp on whatever connector you need. + +### Structure of a port + +Depending on the brand, most of this basic structure will already be in place. + +The entirety of a car port lives in `opendbc/car//`: +* `carstate.py`: parses out the relevant information from the CAN stream using the car's DBC file +* `carcontroller.py`: outputs CAN messages to control the car +* `can.py`: thin Python helpers around the DBC file to build CAN messages +* `fingerprints.py`: database of ECU firmware versions for identifying car models +* `interface.py`: high level class for interfacing with the car +* `radar_interface.py`: parses out the radar +* `values.py`: enumerates the brand's supported cars + +### Reverse Engineer CAN messages + +Start off by recording a route with lots of interesting events: enable LKAS and ACC, turn the steering wheel both extremes, etc. Then, load up that route in [cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana). + +### Tuning + +#### Longitudinal + +Use the [longitudinal maneuvers](https://github.com/commaai/openpilot/tree/master/tools/longitudinal_maneuvers) report to evaluate your car's longitudinal control and tune it. + +## Contributing + +All opendbc development is coordinated on GitHub and [Discord](https://discord.comma.ai). Check out the `#dev-opendbc-cars` channel and `Vehicle Specific` section. + +### Roadmap + +Short term +- [ ] `pip install opendbc` +- [ ] 100% type coverage +- [ ] 100% line coverage +- [ ] Make car ports easier: refactors, tools, tests, and docs +- [ ] Expose the state of all supported cars better: https://github.com/commaai/opendbc/issues/1144 + +Longer term +- [ ] Extend support to every car with LKAS + ACC interfaces +- [ ] Automatic lateral and longitudinal control/tuning evaluation +- [ ] Auto-tuning for [lateral](https://blog.comma.ai/090release/#torqued-an-auto-tuner-for-lateral-control) and longitudinal control +- [ ] [Automatic Emergency Braking](https://en.wikipedia.org/wiki/Automated_emergency_braking_system) + +Contributions towards anything here are welcome. + +## Safety Model + +When a [panda](https://comma.ai/shop/panda) powers up with [opendbc safety firmware](opendbc/safety), by default it's in `SAFETY_SILENT` mode. While in `SAFETY_SILENT` mode, the CAN buses are forced to be silent. In order to send messages, you have to select a safety mode. Some of safety modes (for example `SAFETY_ALLOUTPUT`) are disabled in release firmwares. In order to use them, compile and flash your own build. + +Safety modes optionally support `controls_allowed`, which allows or blocks a subset of messages based on a customizable state in the board. + +## Code Rigor + +The opendbc safety firmware is written for its use in conjunction with [openpilot](https://github.com/commaai/openpilot) and [panda](https://github.com/commaai/panda). The safety firmware, through its safety model, provides and enforces the +[openpilot safety](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md). Due to its critical function, it's important that the application code rigor within the `safety` folder is held to high standards. + +These are the [CI regression tests](https://github.com/commaai/opendbc/actions) we have in place: +* A generic static code analysis is performed by [cppcheck](https://github.com/danmar/cppcheck/). +* In addition, [cppcheck](https://github.com/danmar/cppcheck/) has a specific addon to check for [MISRA C:2012](https://misra.org.uk/) violations. See [current coverage](opendbc/safety/tests/misra/coverage_table). +* Compiler options are relatively strict: the flags `-Wall -Wextra -Wstrict-prototypes -Werror` are enforced. +* The [safety logic](opendbc/safety) is tested and verified by [unit tests](opendbc/safety/tests) for each supported car variant. + +The above tests are themselves tested by: +* a [mutation test](opendbc/safety/tests/misra/test_mutation.py) on the MISRA coverage +* 100% line coverage enforced on the safety unit tests + +In addition, we run the [ruff linter](https://github.com/astral-sh/ruff) and [mypy](https://mypy-lang.org/) on the car interface library. + +### Bounties + +Every car port is eligible for a bounty: +* $2000 - [Any car brand / platform port](https://github.com/orgs/commaai/projects/26/views/1?pane=issue&itemId=47913774) +* $250 - [Any car model port](https://github.com/orgs/commaai/projects/26/views/1?pane=issue&itemId=47913790) +* $300 - [Reverse Engineering a new Actuation Message](https://github.com/orgs/commaai/projects/26/views/1?pane=issue&itemId=73445563) + +In addition to the standard bounties, we also offer higher value bounties for more popular cars. See those at [comma.ai/bounties](comma.ai/bounties). + +## FAQ + +***How do I use this?*** A [comma 3X](https://comma.ai/shop/comma-3x) is custom-designed to be the best way to run and develop opendbc and openpilot. + +***Which cars are supported?*** See the [supported cars list](docs/CARS.md). + +***Can I add support for my car?*** Yes, most car support comes from the community. Read the guide [here](https://github.com/commaai/opendbc/blob/docs/README.md#how-to-port-a-car). + +***Which cars can be supported?*** Any car with LKAS and ACC. More info [here](https://github.com/commaai/openpilot/blob/master/docs/CARS.md#dont-see-your-car-here). + +***How does this work?*** In short, we designed hardware to replace your car's built-in lane keep and adaptive cruise features. See [this talk](https://www.youtube.com/watch?v=FL8CxUSfipM) for an in-depth explanation. + +***Is there a timeline or roadmap for adding car support?*** No, most car support comes from the community, with comma doing final safety and quality validation. The more complete the community car port is and the more popular the car is, the more likely we are to pick it up as the next one to validate. + +### Terms + +* **port**: refers to the integration and support of a specific car +* **lateral control**: aka steering control +* **longitudinal control**: aka gas/brakes control +* **fingerprinting**: automatic process for identifying the car +* **[LKAS](https://en.wikipedia.org/wiki/Lane_departure_warning_system)**: lane keeping assist +* **[ACC](https://en.wikipedia.org/wiki/Adaptive_cruise_control)**: adaptive cruise control +* **[harness](https://comma.ai/shop/car-harness)**: car-specific hardware to attach to the car and intercept the ADAS messages +* **[panda](https://github.com/commaai/panda)**: hardware used to get on a car's CAN bus +* **[ECU](https://en.wikipedia.org/wiki/Electronic_control_unit)**: computers or control modules inside the car +* **[CAN bus](https://en.wikipedia.org/wiki/CAN_bus)**: a bus that connects the ECUs in a car +* **[cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana#readme)**: our tool for reverse engineering CAN messages +* **[DBC file](https://en.wikipedia.org/wiki/CAN_bus#DBC)**: contains definitions for messages on a CAN bus +* **[openpilot](https://github.com/commaai/openpilot)**: an ADAS system for cars supported by opendbc +* **[comma](https://github.com/commaai)**: the company behind opendbc +* **[comma 3X](https://comma.ai/shop/comma-3x)**: the hardware used to run openpilot + +### More resources + +* [*How Do We Control The Car?*](https://www.youtube.com/watch?v=nNU6ipme878&pp=ygUoY29tbWEgY29uIDIwMjEgaG93IGRvIHdlIGNvbnRyb2wgdGhlIGNhcg%3D%3D) by [@robbederks](https://github.com/robbederks) from COMMA_CON 2021 +* [*How to Port a Car*](https://www.youtube.com/watch?v=XxPS5TpTUnI&t=142s&pp=ygUPamFzb24gY29tbWEgY29u) by [@jyoung8607](https://github.com/jyoung8607) from COMMA_CON 2023 +* [commaCarSegments](https://huggingface.co/datasets/commaai/commaCarSegments): a massive dataset of CAN data from 300 different car models +* [cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana#readme): our tool for reverse engineering CAN messages +* [can_print_changes.py](https://github.com/commaai/openpilot/blob/master/selfdrive/debug/can_print_changes.py): diff the whole CAN bus across two drives, such as one without any LKAS and one with LKAS +* [longitudinal maneuvers](https://github.com/commaai/openpilot/tree/master/tools/longitudinal_maneuvers): a tool for evaluating and tuning longitudinal control +* [opendbc data](https://commaai.github.io/opendbc-data/): a repository of longitudinal maneuver evaluations + +## Come work with us -- [comma.ai/jobs](https://comma.ai/jobs) + +comma is hiring engineers to work on opendbc and [openpilot](https://github.com/commaai/openpilot). We love hiring contributors. diff --git a/opendbc_repo/RELEASES.md b/opendbc_repo/RELEASES.md new file mode 100644 index 0000000000..2eab19fe84 --- /dev/null +++ b/opendbc_repo/RELEASES.md @@ -0,0 +1,13 @@ +Version 0.2.1 (2025-02-10) +======================== +* Fix missing files making car/ package not importable + +Version 0.2.0 (2025-02-10) +======================== +* Moved car/ directory from openpilot to opendbc. It comprises the APIs necessary to communicate with 275+ car models + * opendbc is moving towards being a complete self-contained car API package + * Soon all opendbc-related tests from openpilot will be migrated as well + +Version 0.1.0 (2024-08-01) +======================== +* Initial pre-release package with can/ and dbc/ directories diff --git a/opendbc_repo/SConscript b/opendbc_repo/SConscript new file mode 100644 index 0000000000..86c47fb3fa --- /dev/null +++ b/opendbc_repo/SConscript @@ -0,0 +1,7 @@ +Import("env") + +SConscript(['opendbc/dbc/SConscript'], exports={'env': env}) + +# test files +if GetOption('extras'): + SConscript('opendbc/safety/tests/libsafety/SConscript') diff --git a/opendbc_repo/SConstruct b/opendbc_repo/SConstruct new file mode 100644 index 0000000000..c43351a6ae --- /dev/null +++ b/opendbc_repo/SConstruct @@ -0,0 +1,64 @@ +import os +import subprocess +import platform + +arch = subprocess.check_output(["uname", "-m"], encoding='utf8').rstrip() +if platform.system() == "Darwin": + arch = "Darwin" + +cpppath = [ + '#', + '/usr/lib/include', +] + +AddOption('--minimal', + action='store_false', + dest='extras', + default=True, + help='the minimum build. no tests, tools, etc.') + +AddOption('--asan', + action='store_true', + help='turn on ASAN') + +# safety options +AddOption('--ubsan', + action='store_true', + help='turn on UBSan') + +AddOption('--mutation', + action='store_true', + help='generate mutation-ready code') + +ccflags_asan = ["-fsanitize=address", "-fno-omit-frame-pointer"] if GetOption('asan') else [] +ldflags_asan = ["-fsanitize=address"] if GetOption('asan') else [] + +env = Environment( + ENV=os.environ, + CC='gcc', + CXX='g++', + CCFLAGS=[ + "-g", + "-fPIC", + "-O2", + "-Wunused", + "-Werror", + "-Wshadow", + "-Wno-vla-cxx-extension", + "-Wno-unknown-warning-option", # for compatibility across compiler versions + ] + ccflags_asan, + LDFLAGS=ldflags_asan, + LINKFLAGS=ldflags_asan, + CFLAGS="-std=gnu11", + CXXFLAGS=["-std=c++1z"], + CPPPATH=cpppath, + tools=["default", "compilation_db"] +) +if arch != "Darwin": + env.Append(CCFLAGS=["-fmax-errors=1", ]) + +env.CompilationDatabase('compile_commands.json') + +Export('env', 'arch') + +SConscript(['SConscript']) diff --git a/opendbc_repo/conftest.py b/opendbc_repo/conftest.py new file mode 100644 index 0000000000..952972531b --- /dev/null +++ b/opendbc_repo/conftest.py @@ -0,0 +1,5 @@ +# pytest attempts to execute shell scripts while collecting +collect_ignore_glob = [ + "opendbc/safety/tests/misra/*.sh", + "opendbc/safety/tests/misra/cppcheck/", +] diff --git a/opendbc_repo/docs/CARS.md b/opendbc_repo/docs/CARS.md new file mode 100644 index 0000000000..aad2f2ceef --- /dev/null +++ b/opendbc_repo/docs/CARS.md @@ -0,0 +1,439 @@ + + +# Support Information for 365 Known Cars + +|Make|Model|Package|Support Level| +|---|---|---|:---:| +|Acura|ILX 2016-18|Technology Plus Package or AcuraWatch Plus|[Upstream](#upstream)| +|Acura|ILX 2019|All|[Upstream](#upstream)| +|Acura|Integra 2024|All|[Community](#community)| +|Acura|RDX 2016-18|AcuraWatch Plus or Advance Package|[Upstream](#upstream)| +|Acura|RDX 2019-21|All|[Upstream](#upstream)| +|Audi|A3 2014-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Audi|A3 Sportback e-tron 2017-18|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Audi|A4 2016-24|All|[Not compatible](#flexray)| +|Audi|A5 2016-24|All|[Not compatible](#flexray)| +|Audi|Q2 2018|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Audi|Q3 2019-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Audi|Q5 2017-24|All|[Not compatible](#flexray)| +|Audi|RS3 2018|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Audi|S3 2015-17|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Chevrolet|Bolt EUV 2022-23|Premier or Premier Redline Trim without Super Cruise Package|[Upstream](#upstream)| +|Chevrolet|Bolt EV 2022-23|2LT Trim with Adaptive Cruise Control Package|[Upstream](#upstream)| +|Chevrolet|Equinox 2019-22|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Chevrolet|Silverado 1500 2020-21|Safety Package II|[Upstream](#upstream)| +|Chevrolet|Trailblazer 2021-22|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Chrysler|Pacifica 2017-18|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Chrysler|Pacifica 2019-20|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Chrysler|Pacifica 2021-23|All|[Upstream](#upstream)| +|Chrysler|Pacifica Hybrid 2017-18|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Chrysler|Pacifica Hybrid 2019-25|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|comma|body|All|[Upstream](#upstream)| +|CUPRA|Ateca 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Dodge|Durango 2020-21|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Ford|Bronco Sport 2021-24|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Escape 2020-22|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Escape 2023-24|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Escape Hybrid 2020-22|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Escape Hybrid 2023-24|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Escape Plug-in Hybrid 2020-22|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Escape Plug-in Hybrid 2023-24|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Expedition 2022-24|Co-Pilot360 Assist 2.0|[Upstream](#upstream)| +|Ford|Explorer 2020-24|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|Explorer Hybrid 2020-24|Co-Pilot360 Assist+|[Upstream](#upstream)| +|Ford|F-150 2021-23|Co-Pilot360 Assist 2.0|[Upstream](#upstream)| +|Ford|F-150 Hybrid 2021-23|Co-Pilot360 Assist 2.0|[Upstream](#upstream)| +|Ford|Focus 2018|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| +|Ford|Focus Hybrid 2018|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| +|Ford|Kuga 2020-23|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| +|Ford|Kuga Hybrid 2020-23|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| +|Ford|Kuga Hybrid 2024|All|[Upstream](#upstream)| +|Ford|Kuga Plug-in Hybrid 2020-23|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| +|Ford|Kuga Plug-in Hybrid 2024|All|[Upstream](#upstream)| +|Ford|Maverick 2022|LARIAT Luxury|[Upstream](#upstream)| +|Ford|Maverick 2023-24|Co-Pilot360 Assist|[Upstream](#upstream)| +|Ford|Maverick Hybrid 2022|LARIAT Luxury|[Upstream](#upstream)| +|Ford|Maverick Hybrid 2023-24|Co-Pilot360 Assist|[Upstream](#upstream)| +|Ford|Mustang Mach-E 2021-24|All|[Upstream](#upstream)| +|Ford|Ranger 2024|Adaptive Cruise Control with Lane Centering|[Upstream](#upstream)| +|Genesis|G70 2018|All|[Upstream](#upstream)| +|Genesis|G70 2019-21|All|[Upstream](#upstream)| +|Genesis|G70 2022-23|All|[Upstream](#upstream)| +|Genesis|G80 2017|All|[Upstream](#upstream)| +|Genesis|G80 2018-19|All|[Upstream](#upstream)| +|Genesis|G80 (2.5T Advanced Trim, with HDA II) 2024|Highway Driving Assist II|[Upstream](#upstream)| +|Genesis|G90 2017-20|All|[Upstream](#upstream)| +|Genesis|GV60 (Advanced Trim) 2023|All|[Upstream](#upstream)| +|Genesis|GV60 (Performance Trim) 2022-23|All|[Upstream](#upstream)| +|Genesis|GV70 (2.5T Trim, without HDA II) 2022-24|All|[Upstream](#upstream)| +|Genesis|GV70 (3.5T Trim, without HDA II) 2022-23|All|[Upstream](#upstream)| +|Genesis|GV70 Electrified (Australia Only) 2022|All|[Upstream](#upstream)| +|Genesis|GV70 Electrified (with HDA II) 2023-24|Highway Driving Assist II|[Upstream](#upstream)| +|Genesis|GV80 2023|All|[Upstream](#upstream)| +|GMC|Sierra 1500 2020-21|Driver Alert Package II|[Upstream](#upstream)| +|GMC|Yukon 2019-20|Adaptive Cruise Control (ACC) & LKAS|[Dashcam mode](#dashcam)| +|Honda|Accord 2018-22|All|[Upstream](#upstream)| +|Honda|Accord 2023-24|All|[Community](#community)| +|Honda|Accord Hybrid 2018-22|All|[Upstream](#upstream)| +|Honda|Civic 2016-18|Honda Sensing|[Upstream](#upstream)| +|Honda|Civic 2019-21|All|[Upstream](#upstream)| +|Honda|Civic 2022-24|All|[Upstream](#upstream)| +|Honda|Civic Hatchback 2017-21|Honda Sensing|[Upstream](#upstream)| +|Honda|Civic Hatchback 2022-24|All|[Upstream](#upstream)| +|Honda|Civic Hatchback Hybrid 2025|All|[Upstream](#upstream)| +|Honda|Civic Hatchback Hybrid (Europe only) 2023|All|[Upstream](#upstream)| +|Honda|Civic Hybrid 2025|All|[Upstream](#upstream)| +|Honda|Clarity 2018-21|All|[Community](#community)| +|Honda|CR-V 2015-16|Touring Trim|[Upstream](#upstream)| +|Honda|CR-V 2017-22|Honda Sensing|[Upstream](#upstream)| +|Honda|CR-V 2024|All|[Community](#community)| +|Honda|CR-V Hybrid 2017-22|Honda Sensing|[Upstream](#upstream)| +|Honda|CR-V Hybrid 2024|All|[Community](#community)| +|Honda|e 2020|All|[Upstream](#upstream)| +|Honda|Fit 2018-20|Honda Sensing|[Upstream](#upstream)| +|Honda|Freed 2020|Honda Sensing|[Upstream](#upstream)| +|Honda|HR-V 2019-22|Honda Sensing|[Upstream](#upstream)| +|Honda|HR-V 2023-25|All|[Upstream](#upstream)| +|Honda|Insight 2019-22|All|[Upstream](#upstream)| +|Honda|Inspire 2018|All|[Upstream](#upstream)| +|Honda|Odyssey 2018-20|Honda Sensing|[Upstream](#upstream)| +|Honda|Odyssey 2021-25|All|[Community](#community)| +|Honda|Passport 2019-25|All|[Upstream](#upstream)| +|Honda|Pilot 2016-22|Honda Sensing|[Upstream](#upstream)| +|Honda|Pilot 2023|All|[Dashcam mode](#dashcam)| +|Honda|Pilot 2023-24|All|[Community](#community)| +|Honda|Ridgeline 2017-25|Honda Sensing|[Upstream](#upstream)| +|Hyundai|Azera 2022|All|[Upstream](#upstream)| +|Hyundai|Azera Hybrid 2019|All|[Upstream](#upstream)| +|Hyundai|Azera Hybrid 2020|All|[Upstream](#upstream)| +|Hyundai|Custin 2023|All|[Upstream](#upstream)| +|Hyundai|Elantra 2017-18|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Elantra 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Elantra 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Elantra GT 2017-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Elantra Hybrid 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Genesis 2015-16|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|i30 2017-19|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Ioniq 5 (Southeast Asia and Europe only) 2022-24|All|[Upstream](#upstream)| +|Hyundai|Ioniq 5 (with HDA II) 2022-24|Highway Driving Assist II|[Upstream](#upstream)| +|Hyundai|Ioniq 5 (without HDA II) 2022-24|Highway Driving Assist|[Upstream](#upstream)| +|Hyundai|Ioniq 6 (with HDA II) 2023-24|Highway Driving Assist II|[Upstream](#upstream)| +|Hyundai|Ioniq Electric 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Ioniq Electric 2020|All|[Upstream](#upstream)| +|Hyundai|Ioniq Hybrid 2017-19|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Ioniq Hybrid 2020-22|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Ioniq Plug-in Hybrid 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Ioniq Plug-in Hybrid 2020-22|All|[Upstream](#upstream)| +|Hyundai|Kona 2020|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Kona 2022|Smart Cruise Control (SCC)|[Dashcam mode](#dashcam)| +|Hyundai|Kona Electric 2018-21|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Kona Electric 2022-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Kona Electric (with HDA II, Korea only) 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Kona Hybrid 2020|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Nexo 2021|All|[Upstream](#upstream)| +|Hyundai|Palisade 2020-22|All|[Upstream](#upstream)| +|Hyundai|Palisade 2023-24|HDA2|[Community](#community)| +|Hyundai|Santa Cruz 2022-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Santa Fe 2019-20|All|[Upstream](#upstream)| +|Hyundai|Santa Fe 2021-23|All|[Upstream](#upstream)| +|Hyundai|Santa Fe Hybrid 2022-23|All|[Upstream](#upstream)| +|Hyundai|Santa Fe Plug-in Hybrid 2022-23|All|[Upstream](#upstream)| +|Hyundai|Sonata 2018-19|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Sonata 2020-23|All|[Upstream](#upstream)| +|Hyundai|Sonata Hybrid 2020-23|All|[Upstream](#upstream)| +|Hyundai|Staria 2023|All|[Upstream](#upstream)| +|Hyundai|Tucson 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Tucson 2022|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Tucson 2023-24|All|[Upstream](#upstream)| +|Hyundai|Tucson Diesel 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Hyundai|Tucson Hybrid 2022-24|All|[Upstream](#upstream)| +|Hyundai|Tucson Plug-in Hybrid 2024|All|[Upstream](#upstream)| +|Hyundai|Veloster 2019-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Jeep|Grand Cherokee 2016-18|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Jeep|Grand Cherokee 2019-21|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Kia|Carnival 2022-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Carnival (China only) 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Ceed 2019-21|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|EV6 (Southeast Asia only) 2022-24|All|[Upstream](#upstream)| +|Kia|EV6 (with HDA II) 2022-24|Highway Driving Assist II|[Upstream](#upstream)| +|Kia|EV6 (without HDA II) 2022-24|Highway Driving Assist|[Upstream](#upstream)| +|Kia|Forte 2019-21|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Forte 2022-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|K5 2021-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|K5 Hybrid 2020-22|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|K8 Hybrid (with HDA II) 2023|Highway Driving Assist II|[Upstream](#upstream)| +|Kia|Niro EV 2019|All|[Upstream](#upstream)| +|Kia|Niro EV 2020|All|[Upstream](#upstream)| +|Kia|Niro EV 2021|All|[Upstream](#upstream)| +|Kia|Niro EV 2022|All|[Upstream](#upstream)| +|Kia|Niro EV (with HDA II) 2025|Highway Driving Assist II|[Upstream](#upstream)| +|Kia|Niro EV (without HDA II) 2023-25|All|[Upstream](#upstream)| +|Kia|Niro Hybrid 2018|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Niro Hybrid 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Niro Hybrid 2022|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Niro Hybrid 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Niro Plug-in Hybrid 2018-19|All|[Upstream](#upstream)| +|Kia|Niro Plug-in Hybrid 2020|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Niro Plug-in Hybrid 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Niro Plug-in Hybrid 2022|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Optima 2017|Advanced Smart Cruise Control|[Upstream](#upstream)| +|Kia|Optima 2019-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Optima Hybrid 2017|Advanced Smart Cruise Control|[Dashcam mode](#dashcam)| +|Kia|Optima Hybrid 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Seltos 2021|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Sorento 2018|Advanced Smart Cruise Control & LKAS|[Upstream](#upstream)| +|Kia|Sorento 2019|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Sorento 2021-23|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Sorento Hybrid 2021-23|All|[Upstream](#upstream)| +|Kia|Sorento Plug-in Hybrid 2022-23|All|[Upstream](#upstream)| +|Kia|Sportage 2023-24|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Sportage Hybrid 2023|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Stinger 2018-20|Smart Cruise Control (SCC)|[Upstream](#upstream)| +|Kia|Stinger 2022-23|All|[Upstream](#upstream)| +|Kia|Telluride 2020-22|All|[Upstream](#upstream)| +|Kia|Telluride 2023-24|HDA2|[Community](#community)| +|Lexus|CT Hybrid 2017-18|Lexus Safety System+|[Upstream](#upstream)| +|Lexus|ES 2017-18|All|[Upstream](#upstream)| +|Lexus|ES 2019-25|All|[Upstream](#upstream)| +|Lexus|ES Hybrid 2017-18|All|[Upstream](#upstream)| +|Lexus|ES Hybrid 2019-25|All|[Upstream](#upstream)| +|Lexus|GS F 2016|All|[Upstream](#upstream)| +|Lexus|IS 2017-19|All|[Upstream](#upstream)| +|Lexus|IS 2022-24|All|[Upstream](#upstream)| +|Lexus|LC 2024-25|All|[Upstream](#upstream)| +|Lexus|NS 2022-25|Any|[Not compatible](#can-bus-security)| +|Lexus|NX 2018-19|All|[Upstream](#upstream)| +|Lexus|NX 2020-21|All|[Upstream](#upstream)| +|Lexus|NX Hybrid 2018-19|All|[Upstream](#upstream)| +|Lexus|NX Hybrid 2020-21|All|[Upstream](#upstream)| +|Lexus|RC 2018-20|All|[Upstream](#upstream)| +|Lexus|RC 2023|All|[Upstream](#upstream)| +|Lexus|RX 2016|Lexus Safety System+|[Upstream](#upstream)| +|Lexus|RX 2017-19|All|[Upstream](#upstream)| +|Lexus|RX 2020-22|All|[Upstream](#upstream)| +|Lexus|RX Hybrid 2016|Lexus Safety System+|[Upstream](#upstream)| +|Lexus|RX Hybrid 2017-19|All|[Upstream](#upstream)| +|Lexus|RX Hybrid 2020-22|All|[Upstream](#upstream)| +|Lexus|UX Hybrid 2019-24|All|[Upstream](#upstream)| +|Lincoln|Aviator 2020-24|Co-Pilot360 Plus|[Upstream](#upstream)| +|Lincoln|Aviator Plug-in Hybrid 2020-24|Co-Pilot360 Plus|[Upstream](#upstream)| +|MAN|eTGE 2020-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|MAN|TGE 2017-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Mazda|3 2017-18|All|[Dashcam mode](#dashcam)| +|Mazda|6 2017-20|All|[Dashcam mode](#dashcam)| +|Mazda|CX-5 2017-21|All|[Dashcam mode](#dashcam)| +|Mazda|CX-5 2022-25|All|[Upstream](#upstream)| +|Mazda|CX-9 2016-20|All|[Dashcam mode](#dashcam)| +|Mazda|CX-9 2021-23|All|[Upstream](#upstream)| +|Nissan|Altima 2019-20|ProPILOT Assist|[Upstream](#upstream)| +|Nissan|Leaf 2018-23|ProPILOT Assist|[Upstream](#upstream)| +|Nissan|Rogue 2018-20|ProPILOT Assist|[Upstream](#upstream)| +|Nissan|X-Trail 2017|ProPILOT Assist|[Upstream](#upstream)| +|Ram|1500 2019-24|Adaptive Cruise Control (ACC)|[Upstream](#upstream)| +|Ram|2500 2020-24|Adaptive Cruise Control (ACC)|[Dashcam mode](#dashcam)| +|Ram|3500 2019-22|Adaptive Cruise Control (ACC)|[Dashcam mode](#dashcam)| +|Rivian|R1S 2022-24|All|[Upstream](#upstream)| +|Rivian|R1T 2022-24|All|[Upstream](#upstream)| +|SEAT|Alhambra 2018-20|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| +|SEAT|Ateca 2016-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|SEAT|Leon 2014-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Subaru|Ascent 2019-21|All|[Upstream](#upstream)| +|Subaru|Ascent 2023|All|[Dashcam mode](#dashcam)| +|Subaru|Crosstrek 2018-19|EyeSight Driver Assistance|[Upstream](#upstream)| +|Subaru|Crosstrek 2020-23|EyeSight Driver Assistance|[Upstream](#upstream)| +|Subaru|Crosstrek Hybrid 2020|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| +|Subaru|Forester 2017-18|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| +|Subaru|Forester 2019-21|All|[Upstream](#upstream)| +|Subaru|Forester 2022-24|All|[Dashcam mode](#dashcam)| +|Subaru|Forester Hybrid 2020|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| +|Subaru|Impreza 2017-19|EyeSight Driver Assistance|[Upstream](#upstream)| +|Subaru|Impreza 2020-22|EyeSight Driver Assistance|[Upstream](#upstream)| +|Subaru|Legacy 2015-18|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| +|Subaru|Legacy 2020-22|All|[Upstream](#upstream)| +|Subaru|Outback 2015-17|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| +|Subaru|Outback 2018-19|EyeSight Driver Assistance|[Dashcam mode](#dashcam)| +|Subaru|Outback 2020-22|All|[Upstream](#upstream)| +|Subaru|Outback 2023|All|[Dashcam mode](#dashcam)| +|Subaru|Solterra 2023-25|Any|[Not compatible](#can-bus-security)| +|Subaru|XV 2018-19|EyeSight Driver Assistance|[Upstream](#upstream)| +|Subaru|XV 2020-21|EyeSight Driver Assistance|[Upstream](#upstream)| +|Škoda|Fabia 2022-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Kamiq 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Karoq 2019-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Kodiaq 2017-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Octavia 2015-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Octavia RS 2016|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Octavia Scout 2017-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Scala 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Škoda|Superb 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Tesla|Model 3 (with HW3) 2019-23|All|[Upstream](#upstream)| +|Tesla|Model 3 (with HW4) 2024-25|All|[Upstream](#upstream)| +|Tesla|Model X (with HW4) 2024|All|[Dashcam mode](#dashcam)| +|Tesla|Model Y (with HW3) 2020-23|All|[Upstream](#upstream)| +|Tesla|Model Y (with HW4) 2024|All|[Upstream](#upstream)| +|Toyota|Alphard 2019-20|All|[Upstream](#upstream)| +|Toyota|Alphard Hybrid 2021|All|[Upstream](#upstream)| +|Toyota|Avalon 2016|Toyota Safety Sense P|[Upstream](#upstream)| +|Toyota|Avalon 2017-18|All|[Upstream](#upstream)| +|Toyota|Avalon 2019-21|All|[Upstream](#upstream)| +|Toyota|Avalon 2022|All|[Upstream](#upstream)| +|Toyota|Avalon Hybrid 2019-21|All|[Upstream](#upstream)| +|Toyota|Avalon Hybrid 2022|All|[Upstream](#upstream)| +|Toyota|bZ4x 2023-25|Any|[Not compatible](#can-bus-security)| +|Toyota|C-HR 2017-20|All|[Upstream](#upstream)| +|Toyota|C-HR 2021|All|[Upstream](#upstream)| +|Toyota|C-HR Hybrid 2017-20|All|[Upstream](#upstream)| +|Toyota|C-HR Hybrid 2021-22|All|[Upstream](#upstream)| +|Toyota|Camry 2018-20|All|[Upstream](#upstream)| +|Toyota|Camry 2021-24|All|[Upstream](#upstream)| +|Toyota|Camry 2025|Any|[Not compatible](#can-bus-security)| +|Toyota|Camry Hybrid 2018-20|All|[Upstream](#upstream)| +|Toyota|Camry Hybrid 2021-24|All|[Upstream](#upstream)| +|Toyota|Corolla 2017-19|All|[Upstream](#upstream)| +|Toyota|Corolla 2020-22|All|[Upstream](#upstream)| +|Toyota|Corolla Cross 2022-25|Any|[Not compatible](#can-bus-security)| +|Toyota|Corolla Cross (Non-US only) 2020-23|All|[Upstream](#upstream)| +|Toyota|Corolla Cross Hybrid (Non-US only) 2020-22|All|[Upstream](#upstream)| +|Toyota|Corolla Hatchback 2019-22|All|[Upstream](#upstream)| +|Toyota|Corolla Hybrid 2020-22|All|[Upstream](#upstream)| +|Toyota|Corolla Hybrid (South America only) 2020-23|All|[Upstream](#upstream)| +|Toyota|Highlander 2017-19|All|[Upstream](#upstream)| +|Toyota|Highlander 2020-23|All|[Upstream](#upstream)| +|Toyota|Highlander 2025|Any|[Not compatible](#can-bus-security)| +|Toyota|Highlander Hybrid 2017-19|All|[Upstream](#upstream)| +|Toyota|Highlander Hybrid 2020-23|All|[Upstream](#upstream)| +|Toyota|Mirai 2021|All|[Upstream](#upstream)| +|Toyota|Prius 2016|Toyota Safety Sense P|[Upstream](#upstream)| +|Toyota|Prius 2017-20|All|[Upstream](#upstream)| +|Toyota|Prius 2021-22|All|[Upstream](#upstream)| +|Toyota|Prius Prime 2017-20|All|[Upstream](#upstream)| +|Toyota|Prius Prime 2021-22|All|[Upstream](#upstream)| +|Toyota|Prius v 2017|Toyota Safety Sense P|[Upstream](#upstream)| +|Toyota|RAV4 2016|Toyota Safety Sense P|[Upstream](#upstream)| +|Toyota|RAV4 2017-18|All|[Upstream](#upstream)| +|Toyota|RAV4 2019-21|All|[Upstream](#upstream)| +|Toyota|RAV4 2022|All|[Upstream](#upstream)| +|Toyota|RAV4 2023-25|All|[Upstream](#upstream)| +|Toyota|RAV4 Hybrid 2016|Toyota Safety Sense P|[Upstream](#upstream)| +|Toyota|RAV4 Hybrid 2017-18|All|[Upstream](#upstream)| +|Toyota|RAV4 Hybrid 2019-21|All|[Upstream](#upstream)| +|Toyota|RAV4 Hybrid 2022|All|[Upstream](#upstream)| +|Toyota|RAV4 Hybrid 2023-25|All|[Upstream](#upstream)| +|Toyota|RAV4 Prime 2021-23|All|[Community](#community)| +|Toyota|RAV4 Prime 2024-25|Any|[Not compatible](#can-bus-security)| +|Toyota|Sequoia 2023-25|Any|[Not compatible](#can-bus-security)| +|Toyota|Sienna 2018-20|All|[Upstream](#upstream)| +|Toyota|Sienna 2021-23|All|[Community](#community)| +|Toyota|Sienna 2024-25|Any|[Not compatible](#can-bus-security)| +|Toyota|Tundra 2022-25|Any|[Not compatible](#can-bus-security)| +|Toyota|Venza 2021-25|Any|[Not compatible](#can-bus-security)| +|Toyota|Yaris (Non-US only) 2023|All|[Community](#community)| +|Volkswagen|Arteon 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Arteon eHybrid 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Arteon R 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Arteon Shooting Brake 2020-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Atlas 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Atlas Cross Sport 2020-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Caddy 2019|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| +|Volkswagen|Caddy Maxi 2019|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| +|Volkswagen|California 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Caravelle 2020|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|CC 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Crafter 2017-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|e-Crafter 2018-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|e-Golf 2014-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf Alltrack 2015-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf GTD 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf GTE 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf GTI 2015-21|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf R 2015-19|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Golf SportsVan 2015-20|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Grand California 2019-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Jetta 2015-18|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| +|Volkswagen|Jetta 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Jetta GLI 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Passat 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Passat Alltrack 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Passat GTE 2015-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Passat NMS 2017-22|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| +|Volkswagen|Polo 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Polo GTI 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Sharan 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Dashcam mode](#dashcam)| +|Volkswagen|T-Cross 2021|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|T-Roc 2018-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Taos 2022-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Teramont 2018-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Teramont Cross Sport 2021-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Teramont X 2021-22|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Tiguan 2018-24|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Tiguan eHybrid 2021-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| +|Volkswagen|Touran 2016-23|Adaptive Cruise Control (ACC) & Lane Assist|[Upstream](#upstream)| + +# Types of Support + +**opendbc can support many more cars than it currently does.** There are a few reasons your car may not be supported. +If your car doesn't fit into any of the incompatibility criteria here, then there's a good chance it can be supported! +We're adding support for new cars all the time. **We don't have a roadmap for car support**, and in fact, most car +support comes from users like you! + +## Upstream + +A supported vehicle is one that just works when you install a comma device. All supported cars provide a better +experience than any stock system. Supported vehicles reference the US market unless otherwise specified. + +## Under Review + +A vehicle under review is one for which software support has been merged into upstream openpilot, but hasn't yet been +tested for drive quality and conformance with [comma safety guidelines](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md). +This is a normal part of the development and quality assurance process. This vehicle will not work when upstream +openpilot is installed, but custom forks may allow their use. + +## Custom + +Vehicles in this category are not considered plug-and-play. Software support is included in upstream openpilot, but +these vehicles might not have a harness in the comma store, or the physical install might be at an unusual or cumbersome +location, or they might need unusual configuration after install. + +## Dashcam + +Dashcam vehicles have software support in upstream openpilot, but will go into "dashcam mode" at startup and will not +engage. This may be due to known issues with driving safety or quality, or it may be a work in progress that isn't yet +ready for safety and quality review. + +## Community + +Although they're not upstream, the community has openpilot running on other makes and models. See the 'Community +Supported Models' section of each make [on our wiki](https://wiki.comma.ai/). + +Some notable works-in-progress: +* Honda + * 2024 Acura Integra, commaai/openpilot#32056 + * 2023-24 Honda Accord (CAN-FD), commaai/openpilot#32229 + * 2024 Honda CR-V (CAN-FD), commaai/openpilot#32806 + * 2024 Honda CR-V Hybrid (CAN-FD), commaai/openpilot#31527 + * Depends on commaai/opendbc#1100 + * 2021-25 Honda Odyssey, commaai/opendbc#1330 + * 2023-24 Honda Pilot (CAN-FD), commaai/openpilot#30324 + * Camera ACC stability improvements, commaai/openpilot#31022 + * Depends on commaai/panda#1814 + * Depends on commaai/opendbc#998 + * These are being reworked for full-time proxy through openpilot + * Manual transmission support (Civic, Integra) + * Depends on commaai/opendbc#1034 (merged) + * Car port support PR not yet filed + +## Incompatible + +### CAN Bus Security + +Vehicles with CAN security measures, such as AUTOSAR Secure Onboard Communication (SecOC) are not usable with openpilot +unless the owner can recover the message signing key and implement CAN message signing. Examples include certain newer +Toyota, and the GM Global B platform. + +### FlexRay + +All the cars that openpilot supports use a [CAN bus](https://en.wikipedia.org/wiki/CAN_bus) for communication between all the car's computers, however a +CAN bus isn't the only way that the computers in your car can communicate. Most, if not all, vehicles from the following +manufacturers use [FlexRay](https://en.wikipedia.org/wiki/FlexRay) instead of a CAN bus: **BMW, Mercedes, Audi, Land Rover, and some Volvo**. These cars +may one day be supported, but we have no immediate plans to support FlexRay. \ No newline at end of file diff --git a/opendbc_repo/examples/joystick.py b/opendbc_repo/examples/joystick.py new file mode 100755 index 0000000000..c34878f360 --- /dev/null +++ b/opendbc_repo/examples/joystick.py @@ -0,0 +1,113 @@ +#!/usr/bin/env python3 +import time +import threading +import argparse +import numpy as np +from pprint import pprint +from inputs import get_gamepad + +from kbhit import KBHit + +from opendbc.car.structs import CarControl +from opendbc.car.panda_runner import PandaRunner + +class Keyboard: + def __init__(self): + self.kb = KBHit() + self.axis_increment = 0.05 # 5% of full actuation each key press + self.axes_map = {'w': 'gb', 's': 'gb', + 'a': 'steer', 'd': 'steer'} + self.axes_values = {'gb': 0., 'steer': 0.} + self.axes_order = ['gb', 'steer'] + self.cancel = False + + def update(self): + key = self.kb.getch().lower() + print(key) + self.cancel = False + if key == 'r': + self.axes_values = {ax: 0. for ax in self.axes_values} + elif key == 'c': + self.cancel = True + elif key in self.axes_map: + axis = self.axes_map[key] + incr = self.axis_increment if key in ['w', 'a'] else -self.axis_increment + self.axes_values[axis] = float(np.clip(self.axes_values[axis] + incr, -1, 1)) + else: + return False + return True + +class Joystick: + def __init__(self, gamepad=False): + # TODO: find a way to get this from API, perhaps "inputs" doesn't support it + if gamepad: + self.cancel_button = 'BTN_NORTH' # (BTN_NORTH=X, ABS_RZ=Right Trigger) + accel_axis = 'ABS_Y' + steer_axis = 'ABS_RX' + else: + self.cancel_button = 'BTN_TRIGGER' + accel_axis = 'ABS_Y' + steer_axis = 'ABS_RX' + self.min_axis_value = {accel_axis: 0., steer_axis: 0.} + self.max_axis_value = {accel_axis: 255., steer_axis: 255.} + self.axes_values = {accel_axis: 0., steer_axis: 0.} + self.axes_order = [accel_axis, steer_axis] + self.cancel = False + + def update(self): + joystick_event = get_gamepad()[0] + event = (joystick_event.code, joystick_event.state) + if event[0] == self.cancel_button: + if event[1] == 1: + self.cancel = True + elif event[1] == 0: # state 0 is falling edge + self.cancel = False + elif event[0] in self.axes_values: + self.max_axis_value[event[0]] = max(event[1], self.max_axis_value[event[0]]) + self.min_axis_value[event[0]] = min(event[1], self.min_axis_value[event[0]]) + + norm = -float(np.interp(event[1], [self.min_axis_value[event[0]], self.max_axis_value[event[0]]], [-1., 1.])) + self.axes_values[event[0]] = norm if abs(norm) > 0.05 else 0. # center can be noisy, deadzone of 5% + else: + return False + return True + +def joystick_thread(joystick): + while True: + joystick.update() + +def main(joystick): + threading.Thread(target=joystick_thread, args=(joystick,), daemon=True).start() + with PandaRunner() as p: + CC = CarControl(enabled=False) + while True: + CC.actuators.accel = float(4.0*np.clip(joystick.axes_values['gb'], -1, 1)) + CC.actuators.torque = float(np.clip(joystick.axes_values['steer'], -1, 1)) + pprint(CC) + + p.read() + p.write(CC) + + # 100Hz + time.sleep(0.01) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='Test the car interface with a joystick. Uses keyboard by default.', + formatter_class=argparse.ArgumentDefaultsHelpFormatter) + + parser.add_argument('--mode', choices=['keyboard', 'gamepad', 'joystick'], default='keyboard') + args = parser.parse_args() + + print() + joystick: Keyboard | Joystick + if args.mode == 'keyboard': + print('Gas/brake control: `W` and `S` keys') + print('Steering control: `A` and `D` keys') + print('Buttons') + print('- `R`: Resets axes') + print('- `C`: Cancel cruise control') + joystick = Keyboard() + else: + joystick = Joystick(gamepad=(args.mode == 'gamepad')) + main(joystick) diff --git a/opendbc_repo/examples/kbhit.py b/opendbc_repo/examples/kbhit.py new file mode 100755 index 0000000000..35f67b4771 --- /dev/null +++ b/opendbc_repo/examples/kbhit.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 +import sys +import termios +import atexit +from select import select + +STDIN_FD = sys.stdin.fileno() + +class KBHit: + def __init__(self) -> None: + self.set_kbhit_terminal() + + def set_kbhit_terminal(self) -> None: + # Save the terminal settings + self.old_term = termios.tcgetattr(STDIN_FD) + self.new_term = self.old_term.copy() + + # New terminal setting unbuffered + self.new_term[3] &= ~(termios.ICANON | termios.ECHO) + termios.tcsetattr(STDIN_FD, termios.TCSAFLUSH, self.new_term) + + # Support normal-terminal reset at exit + atexit.register(self.set_normal_term) + + def set_normal_term(self) -> None: + termios.tcsetattr(STDIN_FD, termios.TCSAFLUSH, self.old_term) + + @staticmethod + def getch() -> str: + return sys.stdin.read(1) + + @staticmethod + def getarrow() -> int: + c = sys.stdin.read(3)[2] + vals = [65, 67, 66, 68] + return vals.index(ord(c)) + + @staticmethod + def kbhit(): + ''' Returns True if keyboard character was hit, False otherwise. + ''' + return select([sys.stdin], [], [], 0)[0] != [] + + +if __name__ == "__main__": + + kb = KBHit() + + print('Hit any key, or ESC to exit') + + while True: + + if kb.kbhit(): + c = kb.getch() + if c == '\x1b': # ESC + break + print(c) + + kb.set_normal_term() diff --git a/opendbc_repo/lefthook.yml b/opendbc_repo/lefthook.yml new file mode 100644 index 0000000000..91d1378433 --- /dev/null +++ b/opendbc_repo/lefthook.yml @@ -0,0 +1,28 @@ +output: + - meta # Print lefthook version + - summary # Print summary block (successful and failed steps) + - empty_summary # Print summary heading when there are no steps to run + - success # Print successful steps + - failure # Print failed steps printing + - execution # Print any execution logs + #- execution_out # Print execution output + #- execution_info # Print `EXECUTE > ...` logging + - skips # Print "skip" (i.e. no files matched) + +test: + parallel: true + commands: + # *** static analysis + ruff: + run: ruff check . + codespell: + run: codespell {files} -L tge,stdio -S *.dbc + files: git ls-tree -r HEAD --name-only + cpplint: + run: cpplint --exclude=opendbc/safety/tests/misra/cppcheck/ --exclude=opendbc/can/*_pyx.cpp --recursive --quiet --counting=detailed --linelength=240 --filter=-build,-legal,-readability,-runtime,-whitespace,+build/include_subdir,+build/forward_decl,+build/include_what_you_use,+build/deprecated,+whitespace/comma,+whitespace/line_length,+whitespace/empty_if_body,+whitespace/empty_loop_body,+whitespace/empty_conditional_body,+whitespace/forcolon,+whitespace/parens,+whitespace/semicolon,+whitespace/tab,+readability/braces opendbc/ + misra: + run: opendbc/safety/tests/misra/test_misra.sh + + # *** tests *** + pytest: + run: pytest -n8 diff --git a/opendbc_repo/opendbc/__init__.py b/opendbc_repo/opendbc/__init__.py new file mode 100644 index 0000000000..9f4ee6588b --- /dev/null +++ b/opendbc_repo/opendbc/__init__.py @@ -0,0 +1,6 @@ +import os + +DBC_PATH = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'dbc') + +# -I include path for e.g. "#include " +INCLUDE_PATH = os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)), "../")) diff --git a/opendbc_repo/opendbc/can/__init__.py b/opendbc_repo/opendbc/can/__init__.py new file mode 100644 index 0000000000..d9979457e4 --- /dev/null +++ b/opendbc_repo/opendbc/can/__init__.py @@ -0,0 +1,8 @@ +from opendbc.can.packer import CANPacker +from opendbc.can.parser import CANParser, CANDefine + +__all__ = [ + "CANDefine", + "CANParser", + "CANPacker", +] diff --git a/opendbc_repo/opendbc/can/dbc.py b/opendbc_repo/opendbc/can/dbc.py new file mode 100644 index 0000000000..f8a819801a --- /dev/null +++ b/opendbc_repo/opendbc/can/dbc.py @@ -0,0 +1,212 @@ +import re +import os +from dataclasses import dataclass +from collections.abc import Callable + +from opendbc import DBC_PATH + +# TODO: these should just be passed in along with the DBC file +from opendbc.car.honda.hondacan import honda_checksum +from opendbc.car.toyota.toyotacan import toyota_checksum +from opendbc.car.subaru.subarucan import subaru_checksum +from opendbc.car.chrysler.chryslercan import chrysler_checksum, fca_giorgio_checksum +from opendbc.car.hyundai.hyundaicanfd import hkg_can_fd_checksum +from opendbc.car.volkswagen.mqbcan import volkswagen_mqb_meb_checksum, xor_checksum +from opendbc.car.tesla.teslacan import tesla_checksum +from opendbc.car.body.bodycan import body_checksum + + + +class SignalType: + DEFAULT = 0 + COUNTER = 1 + HONDA_CHECKSUM = 2 + TOYOTA_CHECKSUM = 3 + BODY_CHECKSUM = 4 + VOLKSWAGEN_MQB_MEB_CHECKSUM = 5 + XOR_CHECKSUM = 6 + SUBARU_CHECKSUM = 7 + CHRYSLER_CHECKSUM = 8 + HKG_CAN_FD_CHECKSUM = 9 + FCA_GIORGIO_CHECKSUM = 10 + TESLA_CHECKSUM = 11 + + +@dataclass +class Signal: + name: str + start_bit: int + msb: int + lsb: int + size: int + is_signed: bool + factor: float + offset: float + is_little_endian: bool + type: int = SignalType.DEFAULT + calc_checksum: 'Callable[[int, Signal, bytearray], int] | None' = None + + + +@dataclass +class Msg: + name: str + address: int + size: int + sigs: dict[str, Signal] + + +@dataclass +class Val: + name: str + address: int + def_val: str + sigs: dict[str, Signal] | None = None + + +BO_RE = re.compile(r"^BO_ (\w+) (\w+) *: (\w+) (\w+)") +SG_RE = re.compile(r"^SG_ (\w+) : (\d+)\|(\d+)@(\d)([+-]) \(([0-9.+\-eE]+),([0-9.+\-eE]+)\) \[[0-9.+\-eE]+\|[0-9.+\-eE]+\] \".*\" .*") +SGM_RE = re.compile(r"^SG_ (\w+) (\w+) *: (\d+)\|(\d+)@(\d)([+-]) \(([0-9.+\-eE]+),([0-9.+\-eE]+)\) \[[0-9.+\-eE]+\|[0-9.+\-eE]+\] \".*\" .*") +VAL_RE = re.compile(r"^VAL_ (\w+) (\w+) (.*);") +VAL_SPLIT_RE = re.compile(r'["]+') + +@dataclass +class DBC: + name: str + msgs: dict[int, Msg] + addr_to_msg: dict[int, Msg] + name_to_msg: dict[str, Msg] + vals: list[Val] + + def __init__(self, name: str): + dbc_path = name + if not os.path.exists(dbc_path): + dbc_path = os.path.join(DBC_PATH, name + ".dbc") + + self._parse(dbc_path) + + def _parse(self, path: str): + self.name = os.path.basename(path).replace(".dbc", "") + with open(path) as f: + lines = f.readlines() + + checksum_state = get_checksum_state(self.name) + be_bits = [j + i * 8 for i in range(64) for j in range(7, -1, -1)] + self.msgs: dict[int, Msg] = {} + self.addr_to_msg: dict[int, Msg] = {} + self.name_to_msg: dict[str, Msg] = {} + self.vals: list[Val] = [] + address = 0 + signals_temp: dict[int, dict[str, Signal]] = {} + for line_num, line in enumerate(lines, 1): + line = line.strip() + if line.startswith("BO_ "): + m = BO_RE.match(line) + if not m: + continue + address = int(m.group(1), 0) + msg_name = m.group(2) + size = int(m.group(3), 0) + sigs = {} + self.msgs[address] = Msg(msg_name, address, size, sigs) + self.addr_to_msg[address] = self.msgs[address] + self.name_to_msg[msg_name] = self.msgs[address] + signals_temp[address] = sigs + elif line.startswith("SG_ "): + m = SG_RE.search(line) + offset = 0 + if not m: + m = SGM_RE.search(line) + if not m: + continue + offset = 1 + sig_name = m.group(1) + start_bit = int(m.group(2 + offset)) + size = int(m.group(3 + offset)) + is_little_endian = m.group(4 + offset) == "1" + is_signed = m.group(5 + offset) == "-" + factor = float(m.group(6 + offset)) + offset_val = float(m.group(7 + offset)) + + if is_little_endian: + lsb = start_bit + msb = start_bit + size - 1 + else: + idx = be_bits.index(start_bit) + lsb = be_bits[idx + size - 1] + msb = start_bit + + sig = Signal(sig_name, start_bit, msb, lsb, size, is_signed, factor, offset_val, is_little_endian) + set_signal_type(sig, checksum_state, self.name, line_num) + signals_temp[address][sig_name] = sig + elif line.startswith("VAL_ "): + m = VAL_RE.search(line) + if not m: + continue + val_addr = int(m.group(1), 0) + sgname = m.group(2) + defs = m.group(3) + words = [w.strip() for w in VAL_SPLIT_RE.split(defs) if w.strip()] + words = [w.upper().replace(" ", "_") for w in words] + val_def = " ".join(words).strip() + self.vals.append(Val(sgname, val_addr, val_def)) + for addr, sigs in signals_temp.items(): + self.msgs[addr].sigs = sigs + + +# ***** checksum functions ***** + +def tesla_setup_signal(sig: Signal, dbc_name: str, line_num: int) -> None: + if sig.name.endswith("Counter"): + sig.type = SignalType.COUNTER + elif sig.name.endswith("Checksum"): + sig.type = SignalType.TESLA_CHECKSUM + sig.calc_checksum = tesla_checksum + + +@dataclass +class ChecksumState: + checksum_size: int + counter_size: int + checksum_start_bit: int + counter_start_bit: int + little_endian: bool + checksum_type: int + calc_checksum: Callable[[int, Signal, bytearray], int] | None + setup_signal: Callable[[Signal, str, int], None] | None = None + + +def get_checksum_state(dbc_name: str) -> ChecksumState | None: + if dbc_name.startswith(("honda_", "acura_")): + return ChecksumState(4, 2, 3, 5, False, SignalType.HONDA_CHECKSUM, honda_checksum) + elif dbc_name.startswith(("toyota_", "lexus_")): + return ChecksumState(8, -1, 7, -1, False, SignalType.TOYOTA_CHECKSUM, toyota_checksum) + elif dbc_name.startswith("hyundai_canfd_generated"): + return ChecksumState(16, -1, 0, -1, True, SignalType.HKG_CAN_FD_CHECKSUM, hkg_can_fd_checksum) + elif dbc_name.startswith(("vw_mqb", "vw_mqbevo", "vw_meb")): + return ChecksumState(8, 4, 0, 0, True, SignalType.VOLKSWAGEN_MQB_MEB_CHECKSUM, volkswagen_mqb_meb_checksum) + elif dbc_name.startswith("vw_pq"): + return ChecksumState(8, 4, 0, -1, True, SignalType.XOR_CHECKSUM, xor_checksum) + elif dbc_name.startswith("subaru_global_"): + return ChecksumState(8, -1, 0, -1, True, SignalType.SUBARU_CHECKSUM, subaru_checksum) + elif dbc_name.startswith("chrysler_"): + return ChecksumState(8, -1, 7, -1, False, SignalType.CHRYSLER_CHECKSUM, chrysler_checksum) + elif dbc_name.startswith("fca_giorgio"): + return ChecksumState(8, -1, 7, -1, False, SignalType.FCA_GIORGIO_CHECKSUM, fca_giorgio_checksum) + elif dbc_name.startswith("comma_body"): + return ChecksumState(8, 4, 7, 3, False, SignalType.BODY_CHECKSUM, body_checksum) + elif dbc_name.startswith("tesla_model3_party"): + return ChecksumState(8, -1, 0, -1, True, SignalType.TESLA_CHECKSUM, tesla_checksum, tesla_setup_signal) + return None + + +def set_signal_type(sig: Signal, chk: ChecksumState | None, dbc_name: str, line_num: int) -> None: + sig.calc_checksum = None + if chk: + if chk.setup_signal: + chk.setup_signal(sig, dbc_name, line_num) + if sig.name == "CHECKSUM": + sig.type = chk.checksum_type + sig.calc_checksum = chk.calc_checksum + elif sig.name == "COUNTER": + sig.type = SignalType.COUNTER diff --git a/opendbc_repo/opendbc/can/packer.py b/opendbc_repo/opendbc/can/packer.py new file mode 100644 index 0000000000..882dc0b669 --- /dev/null +++ b/opendbc_repo/opendbc/can/packer.py @@ -0,0 +1,67 @@ +import math + +from opendbc.can.dbc import DBC, Signal, SignalType + + +class CANPacker: + def __init__(self, dbc_name: str): + self.dbc = DBC(dbc_name) + self.counters: dict[int, int] = {} + + def pack(self, address: int, values: dict[str, float]) -> bytearray: + msg = self.dbc.addr_to_msg.get(address) + if msg is None: + return bytearray() + dat = bytearray(msg.size) + counter_set = False + for name, value in values.items(): + sig = msg.sigs.get(name) + if sig is None: + continue + ival = int(math.floor((value - sig.offset) / sig.factor + 0.5)) + if ival < 0: + ival = (1 << sig.size) + ival + set_value(dat, sig, ival) + if sig.type == SignalType.COUNTER or sig.name == "COUNTER": + self.counters[address] = int(value) + counter_set = True + sig_counter = next((s for s in msg.sigs.values() if s.type == SignalType.COUNTER or s.name == "COUNTER"), None) + if sig_counter and not counter_set: + if address not in self.counters: + self.counters[address] = 0 + set_value(dat, sig_counter, self.counters[address]) + self.counters[address] = (self.counters[address] + 1) % (1 << sig_counter.size) + sig_checksum = next((s for s in msg.sigs.values() if s.type > SignalType.COUNTER), None) + if sig_checksum and sig_checksum.calc_checksum: + checksum = sig_checksum.calc_checksum(address, sig_checksum, dat) + set_value(dat, sig_checksum, checksum) + return dat + + def make_can_msg(self, name_or_addr, bus: int, values: dict[str, float]): + if isinstance(name_or_addr, int): + addr = name_or_addr + else: + msg = self.dbc.name_to_msg.get(name_or_addr) + if msg is None: + return 0, b'', bus + addr = msg.address + dat = self.pack(addr, values) + if len(dat) == 0: + return 0, b'', bus + return addr, bytes(dat), bus + + +def set_value(msg: bytearray, sig: Signal, ival: int) -> None: + i = sig.lsb // 8 + bits = sig.size + if sig.size < 64: + ival &= (1 << sig.size) - 1 + while 0 <= i < len(msg) and bits > 0: + shift = sig.lsb % 8 if (sig.lsb // 8) == i else 0 + size = min(bits, 8 - shift) + mask = ((1 << size) - 1) << shift + msg[i] &= ~mask + msg[i] |= (ival & ((1 << size) - 1)) << shift + bits -= size + ival >>= size + i = i + 1 if sig.is_little_endian else i - 1 diff --git a/opendbc_repo/opendbc/can/parser.py b/opendbc_repo/opendbc/can/parser.py new file mode 100644 index 0000000000..1402c80b11 --- /dev/null +++ b/opendbc_repo/opendbc/can/parser.py @@ -0,0 +1,283 @@ +import time +import math +import numbers +from collections import defaultdict, deque +from dataclasses import dataclass, field + +from opendbc.can.dbc import DBC, Signal + + +MAX_BAD_COUNTER = 5 +CAN_INVALID_CNT = 5 + + + +def get_raw_value(dat: bytes | bytearray, sig: Signal) -> int: + ret = 0 + i = sig.msb // 8 + bits = sig.size + while 0 <= i < len(dat) and bits > 0: + lsb = sig.lsb if (sig.lsb // 8) == i else i * 8 + msb = sig.msb if (sig.msb // 8) == i else (i + 1) * 8 - 1 + size = msb - lsb + 1 + d = (dat[i] >> (lsb - (i * 8))) & ((1 << size) - 1) + ret |= d << (bits - size) + bits -= size + i = i - 1 if sig.is_little_endian else i + 1 + return ret + + +@dataclass +class MessageState: + address: int + name: str + size: int + signals: list[Signal] + ignore_alive: bool = False + ignore_checksum: bool = False + ignore_counter: bool = False + frequency: float = 0.0 + timeout_threshold: float = 1e5 # default to 1Hz threshold + vals: list[float] = field(default_factory=list) + all_vals: list[list[float]] = field(default_factory=list) + timestamps: deque[int] = field(default_factory=deque) + counter: int = 0 + counter_fail: int = 0 + first_seen_nanos: int = 0 + + def parse(self, nanos: int, dat: bytes) -> bool: + tmp_vals: list[float] = [0.0] * len(self.signals) + checksum_failed = False + counter_failed = False + + if self.first_seen_nanos == 0: + self.first_seen_nanos = nanos + + for i, sig in enumerate(self.signals): + tmp = get_raw_value(dat, sig) + if sig.is_signed: + tmp -= ((tmp >> (sig.size - 1)) & 0x1) * (1 << sig.size) + + if not self.ignore_checksum and sig.calc_checksum is not None: + if sig.calc_checksum(self.address, sig, bytearray(dat)) != tmp: + checksum_failed = True + + if not self.ignore_counter and sig.type == 1: # COUNTER + if not self.update_counter(tmp, sig.size): + counter_failed = True + + tmp_vals[i] = tmp * sig.factor + sig.offset + + # must have good counter and checksum to update data + if checksum_failed or counter_failed: + return False + + if not self.vals: + self.vals = [0.0] * len(self.signals) + self.all_vals = [[] for _ in self.signals] + + for i, v in enumerate(tmp_vals): + self.vals[i] = v + self.all_vals[i].append(v) + + self.timestamps.append(nanos) + max_buffer = 500 + while len(self.timestamps) > max_buffer: + self.timestamps.popleft() + + if self.frequency < 1e-5 and len(self.timestamps) >= 3: + dt = (self.timestamps[-1] - self.timestamps[0]) * 1e-9 + if (dt > 1.0 or len(self.timestamps) >= max_buffer) and dt != 0: + self.frequency = min(len(self.timestamps) / dt, 100.0) + self.timeout_threshold = (1_000_000_000 / self.frequency) * 10 + return True + + def update_counter(self, cur_count: int, cnt_size: int) -> bool: + if ((self.counter + 1) & ((1 << cnt_size) - 1)) != cur_count: + self.counter_fail = min(self.counter_fail + 1, MAX_BAD_COUNTER) + elif self.counter_fail > 0: + self.counter_fail -= 1 + self.counter = cur_count + return self.counter_fail < MAX_BAD_COUNTER + + def valid(self, current_nanos: int, bus_timeout: bool) -> bool: + if self.ignore_alive: + return True + if not self.timestamps: + if self.first_seen_nanos != 0 and (current_nanos - self.first_seen_nanos) < 2e9: # 2초 유예 + return True + #print(f"Not Seen {self.name} on bus {self.address} has no timestamps yet, first seen at {self.first_seen_nanos} ns") + return False + if (current_nanos - self.timestamps[-1]) > self.timeout_threshold: + #print(f"Timeout {self.name} on bus {self.address} timed out: {current_nanos - self.timestamps[-1]} ns since last update") + return False + return True + + +class VLDict(dict): + def __init__(self, parser): + super().__init__() + self.parser = parser + + def __getitem__(self, key): + if key not in self: + self.parser._add_message(key) + return super().__getitem__(key) + +class CANParser: + def __init__(self, dbc_name: str, messages: list[tuple[str | int, int]], bus: int): + self.dbc_name: str = dbc_name + self.bus: int = bus + self.dbc: DBC = DBC(dbc_name) + + self.vl: dict[int | str, dict[str, float]] = VLDict(self) + self.vl_all: dict[int | str, dict[str, list[float]]] = {} + self.ts_nanos: dict[int | str, dict[str, int]] = {} + self.addresses: set[int] = set() + self.message_states: dict[int, MessageState] = {} + self.seen_addresses: set[int] = set() + self.controls_ready = False + + for name_or_addr, freq in messages: + if isinstance(name_or_addr, numbers.Number): + msg = self.dbc.addr_to_msg.get(int(name_or_addr)) + else: + msg = self.dbc.name_to_msg.get(name_or_addr) + if msg is None: + raise RuntimeError(f"could not find message {name_or_addr!r} in DBC {dbc_name}") + if msg.address in self.addresses: + raise RuntimeError("Duplicate Message Check: %d" % msg.address) + + self._add_message(name_or_addr, freq) + + self.can_valid: bool = False + self.bus_timeout: bool = False + self.can_invalid_cnt: int = CAN_INVALID_CNT + self.last_nonempty_nanos: int = 0 + + self.invalid_name = None + self.invalid_time_counter = 0 + self.invalid_print_counter = 0 + + def _add_message(self, name_or_addr: str | int, freq: int = None) -> None: + if isinstance(name_or_addr, numbers.Number): + msg = self.dbc.addr_to_msg.get(int(name_or_addr)) + else: + msg = self.dbc.name_to_msg.get(name_or_addr) + assert msg is not None + assert msg.address not in self.addresses + + self.addresses.add(msg.address) + signal_names = list(msg.sigs.keys()) + signals_dict = {s: 0.0 for s in signal_names} + dict.__setitem__(self.vl, msg.address, signals_dict) + dict.__setitem__(self.vl, msg.name, signals_dict) + self.vl_all[msg.address] = defaultdict(list) + self.vl_all[msg.name] = self.vl_all[msg.address] + self.ts_nanos[msg.address] = {s: 0 for s in signal_names} + self.ts_nanos[msg.name] = self.ts_nanos[msg.address] + + state = MessageState( + address=msg.address, + name=msg.name, + size=msg.size, + signals=list(msg.sigs.values()), + ignore_alive=freq is not None and math.isnan(freq), + ) + state.first_seen_nanos = time.monotonic_ns() # 등록시 즉시 타임스탬프 설정 + if freq is not None and freq > 0: + state.frequency = freq + state.timeout_threshold = (1_000_000_000 / freq) * 10 + else: + # if frequency not specified, assume 1Hz until we learn it + freq = 1 + state.timeout_threshold = (1_000_000_000 / freq) * 10 + + self.message_states[msg.address] = state + + def update_valid(self, nanos: int) -> None: + valid = True + counters_valid = True + for state in self.message_states.values(): + if state.counter_fail >= MAX_BAD_COUNTER: + counters_valid = False + if not state.valid(nanos, self.bus_timeout): + valid = False + self.invalid_time_counter += 1 + if self.controls_ready and self.invalid_name is None or state.name != self.invalid_name or self.invalid_time_counter > 100: + if self.invalid_print_counter < 100: + print(f"CAN_INVALID = {state.name}, bus = {self.bus}") + self.invalid_print_counter += 1 + self.invalid_name = state.name + self.invalid_time_counter = 0 + + self.can_invalid_cnt = 0 if valid else min(self.can_invalid_cnt + 1, CAN_INVALID_CNT) + self.can_valid = self.can_invalid_cnt < CAN_INVALID_CNT and counters_valid + + def update(self, strings, sendcan: bool = False): + if strings and not isinstance(strings[0], list | tuple): + strings = [strings] + + for addr in self.addresses: + for k in self.vl_all[addr]: + self.vl_all[addr][k].clear() + + updated_addrs: set[int] = set() + for entry in strings: + t = entry[0] + frames = entry[1] + bus_empty = True + for address, dat, src in frames: + if src != self.bus: + continue + if self.controls_ready: + self.seen_addresses.add(address) + bus_empty = False + state = self.message_states.get(address) + if state is None or len(dat) > 64: + continue + if state.parse(t, dat): + updated_addrs.add(address) + msgname = state.name + for i, sig in enumerate(state.signals): + val = state.vals[i] + self.vl[address][sig.name] = val + self.vl[msgname][sig.name] = val + self.vl_all[address][sig.name] = state.all_vals[i] + self.vl_all[msgname][sig.name] = state.all_vals[i] + self.ts_nanos[address][sig.name] = state.timestamps[-1] + self.ts_nanos[msgname][sig.name] = state.timestamps[-1] + + if not bus_empty: + self.last_nonempty_nanos = t + + ignore_alive = all(s.ignore_alive for s in self.message_states.values()) + bus_timeout_threshold = 500 * 1_000_000 + for st in self.message_states.values(): + if st.timeout_threshold > 0: + bus_timeout_threshold = min(bus_timeout_threshold, st.timeout_threshold) + self.bus_timeout = ((t - self.last_nonempty_nanos) > bus_timeout_threshold) and not ignore_alive + self.update_valid(t) + + return updated_addrs + + +class CANDefine: + def __init__(self, dbc_name: str): + dbc = DBC(dbc_name) + + dv = defaultdict(dict) + for val in dbc.vals: + sgname = val.name + address = val.address + msg = dbc.addr_to_msg.get(address) + if msg is None: + raise KeyError(address) + msgname = msg.name + parts = val.def_val.split() + values = [int(v) for v in parts[::2]] + defs = parts[1::2] + dv[address][sgname] = dict(zip(values, defs, strict=True)) + dv[msgname][sgname] = dv[address][sgname] + + self.dv = dict(dv) diff --git a/opendbc_repo/opendbc/can/tests/.gitignore b/opendbc_repo/opendbc/can/tests/.gitignore new file mode 100644 index 0000000000..192fb0945e --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/.gitignore @@ -0,0 +1 @@ +*.bz2 diff --git a/opendbc_repo/opendbc/can/tests/__init__.py b/opendbc_repo/opendbc/can/tests/__init__.py new file mode 100644 index 0000000000..3bf02fdae0 --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/__init__.py @@ -0,0 +1,8 @@ +import glob +import os + +from opendbc import DBC_PATH + +ALL_DBCS = [os.path.basename(dbc).split('.')[0] for dbc in + glob.glob(f"{DBC_PATH}/*.dbc")] +TEST_DBC = os.path.abspath(os.path.join(os.path.dirname(__file__), "test.dbc")) diff --git a/opendbc_repo/opendbc/can/tests/benchmark.py b/opendbc_repo/opendbc/can/tests/benchmark.py new file mode 100644 index 0000000000..54f2037864 --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/benchmark.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python3 +import time +from opendbc.can import CANPacker, CANParser + + +def _benchmark(checks, n): + parser = CANParser('toyota_new_mc_pt_generated', checks, 0) + packer = CANPacker('toyota_new_mc_pt_generated') + + t1 = time.process_time_ns() + can_msgs = [] + for i in range(10000): + values = {"ACC_CONTROL": {"ACC_TYPE": 1, "ALLOW_LONG_PRESS": 3}} + msgs = [packer.make_can_msg(k, 0, v) for k, v in values.items()] + can_msgs.append([int(0.01 * i * 1e9), msgs]) + t2 = time.process_time_ns() + pack_dt = t2 - t1 + + ets = [] + for _ in range(25): + if n > 1: + strings = [] + for i in range(0, len(can_msgs), n): + strings.append(can_msgs[i:i + n]) + t1 = time.process_time_ns() + for m in strings: + parser.update(m) + t2 = time.process_time_ns() + else: + t1 = time.process_time_ns() + for m in can_msgs: + parser.update([m]) + t2 = time.process_time_ns() + + ets.append(t2 - t1) + + et = sum(ets) / len(ets) + avg_nanos = et / len(can_msgs) + print('[%d] %.1fms to pack, %.1fms to parse %s messages, avg: %dns' % (n, pack_dt/1e6, et/1e6, len(can_msgs), avg_nanos)) + +if __name__ == "__main__": + # python -m cProfile -s cumulative benchmark.py + _benchmark([('ACC_CONTROL', 10)], 1) + _benchmark([('ACC_CONTROL', 10)], 5) + _benchmark([('ACC_CONTROL', 10)], 10) diff --git a/opendbc_repo/opendbc/can/tests/test.dbc b/opendbc_repo/opendbc/can/tests/test.dbc new file mode 100644 index 0000000000..05104fb068 --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/test.dbc @@ -0,0 +1,27 @@ +CM_ "This DBC is used for the CAN parser and packer tests."; + +BO_ 228 STEERING_CONTROL: 5 EON + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-4096|4096] "" EPS + SG_ STEER_DOWN_TO_ZERO : 38|1@0+ (1,0) [0|1] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS + +BO_ 316 Brake_Status: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|46@1+ (1,0) [0|1] "" XXX + SG_ ES_Brake : 58|1@1+ (1,0) [0|1] "" XXX + SG_ Signal2 : 59|3@1+ (1,0) [0|1] "" XXX + SG_ Brake : 62|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 245 CAN_FD_MESSAGE: 32 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|1] "" XXX + SG_ SIGNED : 22|16@0- (1,0) [0|1] "" XXX + SG_ 64_BIT_LE : 159|64@1+ (1,0) [0|1] "" XXX + SG_ 64_BIT_BE : 80|64@0+ (1,0) [0|1] "" XXX + +VAL_ 80 NON_EXISTENT_ADDR 0 "test"; diff --git a/opendbc_repo/opendbc/can/tests/test_checksums.py b/opendbc_repo/opendbc/can/tests/test_checksums.py new file mode 100644 index 0000000000..b06ab3262c --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/test_checksums.py @@ -0,0 +1,555 @@ +import copy +from opendbc.can import CANPacker, CANParser + + +class TestCanChecksums: + + def verify_checksum(self, subtests, dbc_file: str, msg_name: str, msg_addr: int, test_messages: list[bytes], + checksum_field: str = 'CHECKSUM', counter_field = 'COUNTER'): + """ + Verify that opendbc calculates payload CRCs/checksums matching those received in known-good sample messages + Depends on all non-zero bits in the sample message having a corresponding DBC signal, add UNKNOWN signals if needed + """ + parser = CANParser(dbc_file, [(msg_name, 0)], 0) + packer = CANPacker(dbc_file) + + for data in test_messages: + expected_msg = (msg_addr, data, 0) + parser.update([0, [expected_msg]]) + expected = copy.deepcopy(parser.vl[msg_name]) + + modified = copy.deepcopy(expected) + modified.pop(checksum_field, None) + modified_msg = packer.make_can_msg(msg_name, 0, modified) + + parser.update([0, [modified_msg]]) + tested = parser.vl[msg_name] + with subtests.test(counter=expected[counter_field]): + assert tested[checksum_field] == expected[checksum_field] + + def verify_fca_giorgio_crc(self, subtests, msg_name: str, msg_addr: int, test_messages: list[bytes]): + """Test modified SAE J1850 CRCs, with special final XOR cases for EPS messages""" + assert len(test_messages) == 3 + self.verify_checksum(subtests, "fca_giorgio", msg_name, msg_addr, test_messages) + + def test_fca_giorgio_eps_1(self, subtests): + self.verify_fca_giorgio_crc(subtests, "EPS_1", 0xDE, [ + b'\x17\x51\x97\xcc\x00\xdf', + b'\x17\x51\x97\xc9\x01\xa3', + b'\x17\x51\x97\xcc\x02\xe5', + ]) + + def test_fca_giorgio_eps_2(self, subtests): + self.verify_fca_giorgio_crc(subtests, "EPS_2", 0x106, [ + b'\x7c\x43\x57\x60\x00\x00\xa1', + b'\x7c\x63\x58\xe0\x00\x01\xd5', + b'\x7c\x63\x58\xe0\x00\x02\xf2', + ]) + + def test_fca_giorgio_eps_3(self, subtests): + self.verify_fca_giorgio_crc(subtests, "EPS_3", 0x122, [ + b'\x7b\x30\x00\xf8', + b'\x7b\x10\x01\x90', + b'\x7b\xf0\x02\x6e', + ]) + + def test_fca_giorgio_abs_2(self, subtests): + self.verify_fca_giorgio_crc(subtests, "ABS_2", 0xFE, [ + b'\x7e\x38\x00\x7d\x10\x31\x80\x32', + b'\x7e\x38\x00\x7d\x10\x31\x81\x2f', + b'\x7e\x38\x00\x7d\x20\x31\x82\x20', + ]) + + def test_honda_checksum(self): + """Test checksums for Honda standard and extended CAN ids""" + # TODO: refactor to use self.verify_checksum() + dbc_file = "honda_accord_2018_can_generated" + msgs = [("LKAS_HUD", 0), ("LKAS_HUD_A", 0)] + parser = CANParser(dbc_file, msgs, 0) + packer = CANPacker(dbc_file) + + values = { + 'SET_ME_X41': 0x41, + 'STEERING_REQUIRED': 1, + 'SOLID_LANES': 1, + 'BEEP': 0, + } + + # known correct checksums according to the above values + checksum_std = [11, 10, 9, 8] + checksum_ext = [4, 3, 2, 1] + + for std, ext in zip(checksum_std, checksum_ext, strict=True): + msgs = [ + packer.make_can_msg("LKAS_HUD", 0, values), + packer.make_can_msg("LKAS_HUD_A", 0, values), + ] + parser.update([0, msgs]) + + assert parser.vl['LKAS_HUD']['CHECKSUM'] == std + assert parser.vl['LKAS_HUD_A']['CHECKSUM'] == ext + + def verify_volkswagen_mqb_crc(self, subtests, msg_name: str, msg_addr: int, test_messages: list[bytes], counter_field: str = 'COUNTER'): + """Test AUTOSAR E2E Profile 2 CRCs""" + assert len(test_messages) == 16 # All counter values must be tested + self.verify_checksum(subtests, "vw_mqb", msg_name, msg_addr, test_messages, counter_field=counter_field) + + def test_volkswagen_mqb_crc_lwi_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "LWI_01", 0x86, [ + b'\x6b\x00\xbd\x00\x00\x00\x00\x00', + b'\xee\x01\x0a\x00\x00\x00\x00\x00', + b'\xd8\x02\xa9\x00\x00\x00\x00\x00', + b'\x03\x03\xbe\xa2\x12\x00\x00\x00', + b'\x7b\x04\x31\x20\x03\x00\x00\x00', + b'\x8b\x05\xe2\x85\x09\x00\x00\x00', + b'\x63\x06\x13\x21\x00\x00\x00\x00', + b'\x66\x07\x05\x00\x00\x00\x00\x00', + b'\x49\x08\x0d\x00\x00\x00\x00\x00', + b'\x5f\x09\x7e\x60\x01\x00\x00\x00', + b'\xaf\x0a\x72\x20\x00\x00\x00\x00', + b'\x59\x0b\x1b\x00\x00\x00\x00\x00', + b'\xa8\x0c\x06\x00\x00\x00\x00\x00', + b'\xbc\x0d\x72\x20\x00\x00\x00\x00', + b'\xf9\x0e\x0f\x00\x00\x00\x00\x00', + b'\x60\x0f\x62\xc0\x00\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_airbag_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "Airbag_01", 0x40, [ + b'\xaf\x00\x00\x80\xc0\x00\x20\x3e', + b'\x54\x01\x00\x80\xc0\x00\x20\x1a', + b'\x54\x02\x00\x80\xc0\x00\x60\x00', + b'\x31\x03\x00\x80\xc0\x00\x60\xf2', + b'\xe0\x04\x00\x80\xc0\x00\x60\xcc', + b'\xb3\x05\x00\x80\xc0\x00\x40\xde', + b'\xa4\x06\x00\x80\xc0\x00\x40\x18', + b'\x94\x07\x00\x80\xc0\x00\x20\x38', + b'\x2d\x08\x00\x80\xc0\x00\x60\xae', + b'\xc2\x09\x00\x80\xc0\x00\x00\x1c', + b'\x1f\x0a\x00\x80\xc0\x00\x60\x2c', + b'\x7f\x0b\x00\x80\xc0\x00\x00\x00', + b'\x03\x0c\x00\x80\xc0\x00\x40\xd6', + b'\x56\x0d\x00\x80\xc0\x00\x20\x50', + b'\x4a\x0e\x00\x80\xc0\x00\x20\xf2', + b'\xe5\x0f\x00\x80\xc0\x00\x40\xf6', + ]) + + def test_volkswagen_mqb_crc_lh_eps_03(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "LH_EPS_03", 0x9F, [ + b'\x11\x30\x2e\x00\x05\x1c\x80\x30', + b'\x5b\x31\x8e\x03\x05\x53\x00\x30', + b'\xcb\x32\xd3\x06\x05\x73\x00\x30', + b'\xf2\x33\x28\x00\x05\x26\x00\x30', + b'\x0b\x34\x44\x00\x05\x5b\x80\x30', + b'\xed\x35\x80\x00\x03\x34\x00\x30', + b'\xf0\x36\x88\x00\x05\x3d\x80\x30', + b'\x9e\x37\x44\x03\x05\x41\x00\x30', + b'\x68\x38\x06\x01\x05\x18\x80\x30', + b'\x87\x39\x51\x00\x05\x11\x80\x30', + b'\x8c\x3a\x29\x00\x05\xac\x00\x30', + b'\x08\x3b\xbd\x00\x05\x8e\x00\x30', + b'\xd4\x3c\x19\x00\x05\x05\x80\x30', + b'\x29\x3d\x54\x00\x05\x5b\x00\x30', + b'\xa1\x3e\x49\x01\x03\x04\x80\x30', + b'\xe2\x3f\x05\x00\x05\x0a\x00\x30', + ]) + + def test_volkswagen_mqb_crc_getriebe_11(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "Getriebe_11", 0xAD, [ + b'\xf8\xe0\xbf\xff\x5f\x20\x20\x20', + b'\xb0\xe1\xbf\xff\xc6\x98\x21\x80', + b'\xd2\xe2\xbf\xff\x5f\x20\x20\x20', + b'\x00\xe3\xbf\xff\xaa\x20\x20\x10', + b'\xf1\xe4\xbf\xff\x5f\x20\x20\x20', + b'\xc4\xe5\xbf\xff\x5f\x20\x20\x20', + b'\xda\xe6\xbf\xff\x5f\x20\x20\x20', + b'\x85\xe7\xbf\xff\x5f\x20\x20\x20', + b'\x12\xe8\xbf\xff\x5f\x20\x20\x20', + b'\x45\xe9\xbf\xff\xaa\x20\x20\x10', + b'\x03\xea\xbf\xff\xcc\x20\x20\x10', + b'\xfc\xeb\xbf\xff\x5f\x20\x21\x20', + b'\xfe\xec\xbf\xff\xad\x20\x20\x10', + b'\xbd\xed\xbf\xff\xaa\x20\x20\x10', + b'\x67\xee\xbf\xff\xaa\x20\x20\x10', + b'\x36\xef\xbf\xff\xaa\x20\x20\x10', + ], counter_field="COUNTER_DISABLED") # see opendbc#1235 + + def test_volkswagen_mqb_crc_esp_21(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ESP_21", 0xFD, [ + b'\x66\xd0\x1f\x80\x45\x05\x00\x00', + b'\x87\xd1\x1f\x80\x52\x05\x00\x00', + b'\xcd\xd2\x1f\x80\x50\x06\x00\x00', + b'\xfd\xd3\x1f\x80\x35\x02\x00\x00', + b'\xfa\xd4\x1f\x80\x22\x05\x00\x00', + b'\xfd\xd5\x1f\x80\x84\x04\x00\x00', + b'\x2e\xd6\x1f\x80\xf0\x03\x00\x00', + b'\x9f\xd7\x1f\x80\x00\x00\x00\x00', + b'\x1e\xd8\x1f\x80\xb3\x03\x00\x00', + b'\x61\xd9\x1f\x80\x6d\x05\x00\x00', + b'\x44\xda\x1f\x80\x47\x02\x00\x00', + b'\x86\xdb\x1f\x80\x3a\x02\x00\x00', + b'\x39\xdc\x1f\x80\xcb\x01\x00\x00', + b'\x19\xdd\x1f\x80\x00\x00\x00\x00', + b'\x8c\xde\x1f\x80\xba\x04\x00\x00', + b'\xfb\xdf\x1f\x80\x46\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_esp_02(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ESP_02", 0x101, [ + b'\xf2\x00\x7e\xff\xa1\x2a\x40\x00', + b'\xd3\x01\x7d\x00\xa2\x0c\x02\x00', + b'\x03\x02\x7a\x06\xa2\x49\x42\x00', + b'\xfd\x03\x70\xfb\xa1\xde\x00\x00', + b'\x8e\x04\x7b\xf7\xa1\xd2\x01\x00', + b'\x0f\x05\x7d\xfd\xa1\x31\x40\x00', + b'\xb6\x06\x7d\x01\xa2\x0a\x40\x00', + b'\xe8\x07\x7e\xfd\xa1\x12\x40\x00', + b'\x74\x08\x7a\x01\xa2\x40\x01\x00', + b'\xe3\x09\x81\x00\xa2\xb5\x01\x00', + b'\xab\x0a\x74\x09\xa2\x9f\x42\x00', + b'\xf3\x0b\x80\x12\xa2\x94\x00\x00', + b'\x88\x0c\x7f\x07\xa2\x46\x00\x00', + b'\x6f\x0d\x7f\xff\xa1\x53\x40\x00', + b'\x38\x0e\x73\xd6\xa1\x6a\x40\x00', + b'\x49\x0f\x85\x12\xa2\xf6\x01\x00', + ]) + + def test_volkswagen_mqb_crc_esp_05(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ESP_05", 0x106, [ + b'\x90\x80\x64\x00\x00\x00\xe7\x10', + b'\xf4\x81\x64\x00\x00\x00\xe7\x10', + b'\x90\x82\x63\x00\x00\x00\xe8\x10', + b'\xa0\x83\x63\x00\x00\x00\xe6\x10', + b'\xe7\x84\x63\x00\x00\x00\xe8\x10', + b'\x2e\x85\x78\x04\x00\x00\xea\x30', + b'\x7b\x86\x63\x00\x00\x00\xe6\x10', + b'\x71\x87\x79\x04\x00\x00\xd0\x30', + b'\x50\x88\x79\x04\x00\x00\xea\x30', + b'\x81\x89\x64\x00\x00\x00\xe1\x10', + b'\x6a\x8a\x68\x00\x00\x04\xd0\x10', + b'\x17\x8b\x6a\x04\x00\x00\xe6\x10', + b'\xc7\x8c\x63\x00\x00\x00\xd1\x10', + b'\x53\x8d\x64\x04\x00\x00\xe2\x10', + b'\x24\x8e\x63\x00\x00\x00\xe7\x10', + b'\x3f\x8f\x82\x04\x00\x00\xe6\x30', + ]) + + def test_volkswagen_mqb_crc_esp_10(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ESP_10", 0x116, [ + b'\x2d\x00\xd5\x98\x9f\x26\x25\x0f', + b'\x24\x01\x60\x63\x2c\x5e\x3b\x0f', + b'\x08\x02\xb2\x2f\xee\x9a\x29\x0f', + b'\x7c\x03\x17\x07\x1d\xe5\x8c\x0f', + b'\xaa\x04\xd6\xe3\xeb\x98\xe8\x0f', + b'\x4e\x05\xbb\xd9\x65\x43\xca\x0f', + b'\x59\x06\x78\xbd\x25\xc6\xf2\xff', + b'\xaf\x07\x42\x85\x53\xbe\xbe\x0f', + b'\x2a\x08\xa6\xcd\x95\x8c\x12\x0f', + b'\xce\x09\x6e\x17\x6d\x1b\x2f\x0f', + b'\x60\x0a\xd3\xe6\x3a\x8d\xf0\x0f', + b'\xc5\x0b\xfc\x69\x57\x50\x21\x0f', + b'\x70\x0c\xde\xf3\x9d\xe9\x6b\xff', + b'\x62\x0d\xc4\x1a\xdb\x61\x7a\x0f', + b'\x76\x0e\x79\x69\xe3\x32\x67\x0f', + b'\x15\x0f\x51\x59\x56\x35\xb1\x0f', + ]) + + def test_volkswagen_mqb_crc_acc_10(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ACC_10", 0x117, [ + b'\x9b\x00\x00\x40\x68\x00\x00\xff', + b'\xff\x01\x00\x40\x68\x00\x00\xff', + b'\x53\x02\x00\x40\x68\x00\x00\xff', + b'\x37\x03\x00\x40\x68\x00\x00\xff', + b'\x24\x04\x00\x40\x68\x00\x00\xff', + b'\x40\x05\x00\x40\x68\x00\x00\xff', + b'\xec\x06\x00\x40\x68\x00\x00\xff', + b'\x88\x07\x00\x40\x68\x00\x00\xff', + b'\xca\x08\x00\x40\x68\x00\x00\xff', + b'\xae\x09\x00\x40\x68\x00\x00\xff', + b'\x02\x0a\x00\x40\x68\x00\x00\xff', + b'\x66\x0b\x00\x40\x68\x00\x00\xff', + b'\x75\x0c\x00\x40\x68\x00\x00\xff', + b'\x11\x0d\x00\x40\x68\x00\x00\xff', + b'\xbd\x0e\x00\x40\x68\x00\x00\xff', + b'\xd9\x0f\x00\x40\x68\x00\x00\xff', + ]) + + def test_volkswagen_mqb_crc_tsk_06(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "TSK_06", 0x120, [ + b'\xc1\x00\x00\x02\x00\x08\xff\x21', + b'\x34\x01\x00\x02\x00\x08\xff\x21', + b'\xcc\x02\x00\x02\x00\x08\xff\x21', + b'\x1e\x03\x00\x02\x00\x08\xff\x21', + b'\x48\x04\x00\x02\x00\x08\xff\x21', + b'\x4a\x05\x00\x02\x00\x08\xff\x21', + b'\xa5\x06\x00\x02\x00\x08\xff\x21', + b'\xa7\x07\x00\x02\x00\x08\xff\x21', + b'\xfe\x08\x00\x02\x00\x08\xff\x21', + b'\xa8\x09\x00\x02\x00\x08\xff\x21', + b'\x73\x0a\x00\x02\x00\x08\xff\x21', + b'\xdf\x0b\x00\x02\x00\x08\xff\x21', + b'\x05\x0c\x00\x02\x00\x08\xff\x21', + b'\xb5\x0d\x00\x02\x00\x08\xff\x21', + b'\xde\x0e\x00\x02\x00\x08\xff\x21', + b'\x0b\x0f\x00\x02\x00\x08\xff\x21', + ]) + + def test_volkswagen_mqb_crc_motor_20(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "Motor_20", 0x121, [ + b'\xb9\x00\x00\xc0\x39\x46\x7e\xfe', + b'\x85\x31\x20\x00\x1a\x46\x7e\xfe', + b'\xc7\x12\x00\x40\x1a\x46\x7e\xfe', + b'\x53\x93\x00\x00\x19\x46\x7e\xfe', + b'\xa4\x34\x00\x80\x1a\x46\x7e\xfe', + b'\x0e\x55\x20\x60\x18\x46\x7e\xfe', + b'\x3f\x06\x00\xc0\x37\x4c\x7e\xfe', + b'\x0c\x07\x00\x40\x39\x46\x7e\xfe', + b'\x2a\x08\x00\x00\x3a\x46\x7e\xfe', + b'\x7f\x49\x20\x80\x1a\x46\x7e\xfe', + b'\x2f\x0a\x00\xc0\x39\x46\x7e\xfe', + b'\x70\xbb\x00\x00\x17\x46\x7e\xfe', + b'\x06\x0c\x00\x00\x39\x46\x7e\xfe', + b'\x4b\x9d\x20\xe0\x16\x4c\x7e\xfe', + b'\x73\xfe\x00\x40\x16\x46\x7e\xfe', + b'\xaf\x0f\x20\x80\x39\x4c\x7e\xfe', + ]) + + def test_volkswagen_mqb_crc_acc_06(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ACC_06", 0x122, [ + b'\x14\x80\x00\xfe\x07\x00\x00\x18', + b'\x9f\x81\x00\xfe\x07\x00\x00\x18', + b'\x0a\x82\x00\xfe\x07\x00\x00\x28', + b'\x40\x83\x00\xfe\x07\x00\x00\x18', + b'\x2d\x84\x00\xfe\x07\x00\x00\x28', + b'\xdb\x85\x00\xfe\x07\x00\x00\x18', + b'\x4d\x86\x00\xfe\x07\x00\x00\x28', + b'\x35\x87\x00\xfe\x07\x00\x00\x18', + b'\x23\x88\x00\xfe\x07\x00\x00\x28', + b'\x4a\x89\x00\xfe\x07\x00\x00\x28', + b'\xe1\x8a\x00\xfe\x07\x00\x00\x28', + b'\x30\x8b\x00\xfe\x07\x00\x00\x28', + b'\x60\x8c\x00\xfe\x07\x00\x00\x28', + b'\x0d\x8d\x00\xfe\x07\x00\x00\x18', + b'\x8c\x8e\x00\xfe\x07\x00\x00\x18', + b'\x6f\x8f\x00\xfe\x07\x00\x00\x28', + ]) + + def test_volkswagen_mqb_crc_hca_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "HCA_01", 0x126, [ + b'\x00\x30\x0d\xc0\x05\xfe\x07\x00', + b'\x3e\x31\x54\xc0\x05\xfe\x07\x00', + b'\xa7\x32\xbb\x40\x05\xfe\x07\x00', + b'\x96\x33\x29\xc0\x05\xfe\x07\x00', + b'\x5f\x34\x00\x00\x03\xfe\x07\x00', + b'\x3b\x35\xae\x40\x05\xfe\x07\x00', + b'\xc7\x36\x7a\x40\x05\xfe\x07\x00', + b'\x6f\x37\x76\x40\x05\xfe\x07\x00', + b'\xb1\x38\x00\x00\x03\xfe\x07\x00', + b'\xd5\x39\x00\x00\x03\xfe\x07\x00', + b'\xba\x3a\x69\xc0\x05\xfe\x07\x00', + b'\x65\x3b\x10\x40\x05\xfe\x07\x00', + b'\x49\x3c\x72\xc0\x05\xfe\x07\x00', + b'\xc6\x3d\xdf\x40\x05\xfe\x07\x00', + b'\x1d\x3e\x2c\xc1\x05\xfe\x07\x00', + b'\x9b\x3f\x20\x40\x05\xfe\x07\x00', + ]) + + def test_volkswagen_mqb_crc_gra_acc_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "GRA_ACC_01", 0x12B, [ + b'\x86\x40\x80\x2a\x00\x00\x00\x00', + b'\xf4\x41\x80\x2a\x00\x00\x00\x00', + b'\x50\x42\x80\x2a\x00\x00\x00\x00', + b'\x08\x43\x80\x2a\x00\x00\x00\x00', + b'\x88\x44\x80\x2a\x00\x00\x00\x00', + b'\x2d\x45\x80\x2a\x00\x00\x00\x00', + b'\x34\x46\x80\x2a\x00\x00\x00\x00', + b'\x11\x47\x80\x2a\x00\x00\x00\x00', + b'\xc4\x48\x80\x2a\x00\x00\x00\x00', + b'\xcc\x49\x80\x2a\x00\x00\x00\x00', + b'\xdc\x4a\x80\x2a\x00\x00\x00\x00', + b'\x79\x4b\x80\x2a\x00\x00\x00\x00', + b'\x3c\x4c\x80\x2a\x00\x00\x00\x00', + b'\x68\x4d\x80\x2a\x00\x00\x00\x00', + b'\x27\x4e\x80\x2a\x00\x00\x00\x00', + b'\x0d\x4f\x80\x2a\x00\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_acc_07(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ACC_07", 0x12E, [ + b'\xac\xe0\x7f\x00\xfe\x00\xc0\xff', + b'\xa2\xe1\x7f\x00\xfe\x00\xc0\xff', + b'\x6b\xe2\x7f\x00\xfe\x00\xc0\xff', + b'\xf2\xe3\x7f\x00\xfe\x00\xc0\xff', + b'\xd5\xe4\x7f\x00\xfe\x00\xc0\xff', + b'\x35\xe5\x7f\x00\xfe\x00\xc0\xff', + b'\x7f\xe6\x7f\x00\xfe\x00\xc0\xff', + b'\x6c\xe7\x7f\x00\xfe\x00\xc0\xff', + b'\x05\xe8\x7f\x00\xfe\x00\xc0\xff', + b'\x79\xe9\x7f\x00\xfe\x00\xc0\xff', + b'\x25\xea\x7f\x00\xfe\x00\xc0\xff', + b'\xd1\xeb\x7f\x00\xfe\x00\xc0\xff', + b'\x72\xec\x7f\x00\xfe\x00\xc0\xff', + b'\x58\xed\x7f\x00\xfe\x00\xc0\xff', + b'\x82\xee\x7f\x00\xfe\x00\xc0\xff', + b'\x85\xef\x7f\x00\xfe\x00\xc0\xff', + ]) + + def test_volkswagen_mqb_crc_motor_ev_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "Motor_EV_01", 0x187, [ + b'\x70\x80\x15\x00\x00\x00\x00\xF0', + b'\x07\x81\x15\x00\x00\x00\x00\xF0', + b'\x7A\x82\x15\x00\x00\x00\x00\xF0', + b'\x26\x83\x15\x00\x00\x00\x00\xF0', + b'\xBE\x84\x15\x00\x00\x00\x00\xF0', + b'\x5A\x85\x15\x00\x00\x00\x00\xF0', + b'\xFC\x86\x15\x00\x00\x00\x00\xF0', + b'\x9E\x87\x15\x00\x00\x00\x00\xF0', + b'\xAF\x88\x15\x00\x00\x00\x00\xF0', + b'\x35\x89\x15\x00\x00\x00\x00\xF0', + b'\xC5\x8A\x15\x00\x00\x00\x00\xF0', + b'\x11\x8B\x15\x00\x00\x00\x00\xF0', + b'\xD0\x8C\x15\x00\x00\x00\x00\xF0', + b'\xE8\x8D\x15\x00\x00\x00\x00\xF0', + b'\xF5\x8E\x15\x00\x00\x00\x00\xF0', + b'\x00\x8F\x15\x00\x00\x00\x00\xF0', + ]) + + def test_volkswagen_mqb_crc_esp_33(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ESP_33", 0x1AB, [ + b'\x64\x00\x80\x02\x00\x00\x00\x00', + b'\x19\x01\x00\x00\x00\x00\x00\x00', + b'\xfc\x02\x00\x10\x01\x00\x00\x00', + b'\x8b\x03\x80\x02\x00\x00\x00\x00', + b'\xa4\x04\x00\x10\x01\x00\x00\x00', + b'\x97\x05\x00\x02\x00\x00\x01\x00', + b'\xd5\x06\x80\x02\x00\x00\x01\x00', + b'\xa0\x07\x80\x02\x00\x00\x01\x00', + b'\x89\x08\x00\x00\x00\x00\x00\x00', + b'\xe3\x09\x00\x00\x00\x00\x00\x00', + b'\x0e\x0a\x00\x00\x00\x00\x00\x00', + b'\x90\x0b\x00\x00\x00\x00\x00\x00', + b'\x32\x0c\x00\x10\x01\x00\x00\x00', + b'\x30\x0d\x00\x00\x00\x00\x00\x00', + b'\xc2\x0e\x00\x10\x01\x00\x00\x00', + b'\x68\x0f\x80\x02\x00\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_acc_02(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ACC_02", 0x30C, [ + b'\x82\xf0\x3f\x00\x40\x30\x00\x40', + b'\xe6\xf1\x3f\x00\x40\x30\x00\x40', + b'\x4a\xf2\x3f\x00\x40\x30\x00\x40', + b'\x2e\xf3\x3f\x00\x40\x30\x00\x40', + b'\x3d\xf4\x3f\x00\x40\x30\x00\x40', + b'\x59\xf5\x3f\x00\x40\x30\x00\x40', + b'\xf5\xf6\x3f\x00\x40\x30\x00\x40', + b'\x91\xf7\x3f\x00\x40\x30\x00\x40', + b'\xd3\xf8\x3f\x00\x40\x30\x00\x40', + b'\xb7\xf9\x3f\x00\x40\x30\x00\x40', + b'\x1b\xfa\x3f\x00\x40\x30\x00\x40', + b'\x7f\xfb\x3f\x00\x40\x30\x00\x40', + b'\x6c\xfc\x3f\x00\x40\x30\x00\x40', + b'\x08\xfd\x3f\x00\x40\x30\x00\x40', + b'\xa4\xfe\x3f\x00\x40\x30\x00\x40', + b'\xc0\xff\x3f\x00\x40\x30\x00\x40', + ]) + + def test_volkswagen_mqb_crc_swa_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "SWA_01", 0x30F, [ + b'\x10\x00\x10\x00\x00\x00\x00\x00', + b'\x74\x01\x10\x00\x00\x00\x00\x00', + b'\xD8\x02\x10\x00\x00\x00\x00\x00', + b'\xBC\x03\x10\x00\x00\x00\x00\x00', + b'\xAF\x04\x10\x00\x00\x00\x00\x00', + b'\xCB\x05\x10\x00\x00\x00\x00\x00', + b'\x67\x06\x10\x00\x00\x00\x00\x00', + b'\x03\x07\x10\x00\x00\x00\x00\x00', + b'\x41\x08\x10\x00\x00\x00\x00\x00', + b'\x25\x09\x10\x00\x00\x00\x00\x00', + b'\x89\x0A\x10\x00\x00\x00\x00\x00', + b'\xED\x0B\x10\x00\x00\x00\x00\x00', + b'\xFE\x0C\x10\x00\x00\x00\x00\x00', + b'\x9A\x0D\x10\x00\x00\x00\x00\x00', + b'\x36\x0E\x10\x00\x00\x00\x00\x00', + b'\x52\x0F\x10\x00\x00\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_acc_04(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ACC_04", 0x324, [ + b'\xba\x00\x00\x00\x00\x00\x00\x10', + b'\xde\x01\x00\x00\x00\x00\x00\x10', + b'\x72\x02\x00\x00\x00\x00\x00\x10', + b'\x16\x03\x00\x00\x00\x00\x00\x10', + b'\x05\x04\x00\x00\x00\x00\x00\x10', + b'\x44\x05\x00\x00\x00\x00\x00\x00', + b'\xe8\x06\x00\x00\x00\x00\x00\x00', + b'\xa9\x07\x00\x00\x00\x00\x00\x10', + b'\xeb\x08\x00\x00\x00\x00\x00\x10', + b'\x8f\x09\x00\x00\x00\x00\x00\x10', + b'\x06\x0a\x00\x00\x00\x00\x00\x00', + b'\x47\x0b\x00\x00\x00\x00\x00\x10', + b'\x71\x0c\x00\x00\x00\x00\x00\x00', + b'\x15\x0d\x00\x00\x00\x00\x00\x00', + b'\xb9\x0e\x00\x00\x00\x00\x00\x00', + b'\xdd\x0f\x00\x00\x00\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_klemmen_status_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "Klemmen_Status_01", 0x3C0, [ + b'\x74\x00\x03\x00', + b'\xc1\x01\x03\x00', + b'\x31\x02\x03\x00', + b'\x84\x03\x03\x00', + b'\xfe\x04\x03\x00', + b'\x4b\x05\x03\x00', + b'\xbb\x06\x03\x00', + b'\x0e\x07\x03\x00', + b'\x4f\x08\x03\x00', + b'\xfa\x09\x03\x00', + b'\x0a\x0a\x03\x00', + b'\xbf\x0b\x03\x00', + b'\xc5\x0c\x03\x00', + b'\x70\x0d\x03\x00', + b'\x80\x0e\x03\x00', + b'\x35\x0f\x03\x00', + ]) + + def test_volkswagen_mqb_crc_licht_anf_01(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "Licht_Anf_01", 0x3D5, [ + b'\xc8\x00\x00\x04\x00\x00\x00\x00', + b'\x9f\x01\x00\x04\x00\x00\x00\x00', + b'\x5e\x02\x00\x04\x00\x00\x00\x00', + b'\x52\x03\x00\x04\x00\x00\x00\x00', + b'\xf2\x04\x00\x04\x00\x00\x00\x00', + b'\x79\x05\x00\x04\x00\x00\x00\x00', + b'\xe6\x06\x00\x04\x00\x00\x00\x00', + b'\xfd\x07\x00\x04\x00\x00\x00\x00', + b'\xf8\x08\x00\x04\x00\x00\x00\x00', + b'\xc6\x09\x00\x04\x00\x00\x00\x00', + b'\xf5\x0a\x00\x04\x00\x00\x00\x00', + b'\x1a\x0b\x00\x04\x00\x00\x00\x00', + b'\x65\x0c\x00\x04\x00\x00\x00\x00', + b'\x41\x0d\x00\x04\x00\x00\x00\x00', + b'\x7f\x0e\x00\x04\x00\x00\x00\x00', + b'\x98\x0f\x00\x04\x00\x00\x00\x00', + ]) + + def test_volkswagen_mqb_crc_esp_20(self, subtests): + self.verify_volkswagen_mqb_crc(subtests, "ESP_20", 0x65D, [ + b'\x98\x30\x2b\x10\x00\x00\x22\x81', + b'\xc8\x31\x2b\x10\x00\x00\x22\x81', + b'\x9d\x32\x2b\x10\x00\x00\x22\x81', + b'\x1f\x33\x2b\x10\x00\x00\x22\x81', + b'\x6e\x34\x2b\x10\x00\x00\x22\x81', + b'\x61\x35\x2b\x10\x00\x00\x22\x81', + b'\x6f\x36\x2b\x10\x00\x00\x22\x81', + b'\xe5\x37\x2b\x10\x00\x00\x22\x81', + b'\xf8\x38\x2b\x10\x00\x00\x22\x81', + b'\xe1\x39\x2b\x10\x00\x00\x22\x81', + b'\xaa\x3a\x2b\x10\x00\x00\x22\x81', + b'\xe6\x3b\x2b\x10\x00\x00\x22\x81', + b'\xef\x3c\x2b\x10\x00\x00\x22\x81', + b'\xbb\x3d\x2b\x10\x00\x00\x22\x81', + b'\x9b\x3e\x2b\x10\x00\x00\x22\x81', + b'\x72\x3f\x2b\x10\x00\x00\x22\x81', + ]) diff --git a/opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py b/opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py new file mode 100644 index 0000000000..858a643720 --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/test_dbc_exceptions.py @@ -0,0 +1,29 @@ +import pytest + +from opendbc.can import CANDefine, CANPacker, CANParser +from opendbc.can.tests import TEST_DBC + + +class TestCanParserPackerExceptions: + def test_civic_exceptions(self): + dbc_file = "honda_civic_touring_2016_can_generated" + dbc_invalid = dbc_file + "abcdef" + msgs = [("STEERING_CONTROL", 50)] + with pytest.raises(FileNotFoundError): + CANParser(dbc_invalid, msgs, 0) + with pytest.raises(FileNotFoundError): + CANPacker(dbc_invalid) + with pytest.raises(FileNotFoundError): + CANDefine(dbc_invalid) + with pytest.raises(KeyError): + CANDefine(TEST_DBC) + + parser = CANParser(dbc_file, msgs, 0) + with pytest.raises(IndexError): + parser.update([b'']) + + # Everything is supposed to work below + CANParser(dbc_file, msgs, 0) + CANParser(dbc_file, [], 0) + CANPacker(dbc_file) + CANDefine(dbc_file) diff --git a/opendbc_repo/opendbc/can/tests/test_dbc_parser.py b/opendbc_repo/opendbc/can/tests/test_dbc_parser.py new file mode 100644 index 0000000000..508b80b95e --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/test_dbc_parser.py @@ -0,0 +1,21 @@ +from opendbc.can import CANParser +from opendbc.can.tests import ALL_DBCS + + +class TestDBCParser: + def test_enough_dbcs(self): + # sanity check that we're running on the real DBCs + assert len(ALL_DBCS) > 20 + + def test_parse_all_dbcs(self, subtests): + """ + Dynamic DBC parser checks: + - Checksum and counter length, start bit, endianness + - Duplicate message addresses and names + - Signal out of bounds + - All BO_, SG_, VAL_ lines for syntax errors + """ + + for dbc in ALL_DBCS: + with subtests.test(dbc=dbc): + CANParser(dbc, [], 0) diff --git a/opendbc_repo/opendbc/can/tests/test_define.py b/opendbc_repo/opendbc/can/tests/test_define.py new file mode 100644 index 0000000000..a61b18c9c5 --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/test_define.py @@ -0,0 +1,26 @@ +from opendbc.can import CANDefine +from opendbc.can.tests import ALL_DBCS + + +class TestCANDefine: + def test_civic(self): + + dbc_file = "honda_civic_touring_2016_can_generated" + defs = CANDefine(dbc_file) + + assert defs.dv[399] == defs.dv['STEER_STATUS'] + assert defs.dv[399] == {'STEER_STATUS': + {7: 'PERMANENT_FAULT', + 6: 'TMP_FAULT', + 5: 'FAULT_1', + 4: 'NO_TORQUE_ALERT_2', + 3: 'LOW_SPEED_LOCKOUT', + 2: 'NO_TORQUE_ALERT_1', + 0: 'NORMAL'} + } + + def test_all_dbcs(self, subtests): + # Asserts no exceptions on all DBCs + for dbc in ALL_DBCS: + with subtests.test(dbc=dbc): + CANDefine(dbc) diff --git a/opendbc_repo/opendbc/can/tests/test_packer_parser.py b/opendbc_repo/opendbc/can/tests/test_packer_parser.py new file mode 100644 index 0000000000..d7a7821963 --- /dev/null +++ b/opendbc_repo/opendbc/can/tests/test_packer_parser.py @@ -0,0 +1,367 @@ +import pytest +import random + +from opendbc.can import CANPacker, CANParser +from opendbc.can.tests import TEST_DBC + +MAX_BAD_COUNTER = 5 + + +class TestCanParserPacker: + def test_packer(self): + packer = CANPacker(TEST_DBC) + + for b in range(6): + for i in range(256): + values = {"COUNTER": i} + addr, dat, bus = packer.make_can_msg("CAN_FD_MESSAGE", b, values) + assert addr == 245 + assert bus == b + assert dat[0] == i + + def test_packer_counter(self): + msgs = [("CAN_FD_MESSAGE", 0), ] + packer = CANPacker(TEST_DBC) + parser = CANParser(TEST_DBC, msgs, 0) + + # packer should increment the counter + for i in range(1000): + msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) + parser.update([0, [msg]]) + assert parser.vl["CAN_FD_MESSAGE"]["COUNTER"] == (i % 256) + + # setting COUNTER should override + for _ in range(100): + cnt = random.randint(0, 255) + msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, { + "COUNTER": cnt, + "SIGNED": 0 + }) + parser.update([0, [msg]]) + assert parser.vl["CAN_FD_MESSAGE"]["COUNTER"] == cnt + + # then, should resume counting from the override value + cnt = parser.vl["CAN_FD_MESSAGE"]["COUNTER"] + for i in range(100): + msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) + parser.update([0, [msg]]) + assert parser.vl["CAN_FD_MESSAGE"]["COUNTER"] == ((cnt + i) % 256) + + def test_parser_can_valid(self): + msgs = [("CAN_FD_MESSAGE", 10), ] + packer = CANPacker(TEST_DBC) + parser = CANParser(TEST_DBC, msgs, 0) + + # shouldn't be valid initially + assert not parser.can_valid + + # not valid until the message is seen + for _ in range(100): + parser.update([0, []]) + assert not parser.can_valid + + # valid once seen + for i in range(1, 100): + t = int(0.01 * i * 1e9) + msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) + parser.update([t, [msg]]) + assert parser.can_valid + + def test_parser_updated_list(self): + msgs = [("CAN_FD_MESSAGE", 10), ] + parser = CANParser(TEST_DBC, msgs, 0) + packer = CANPacker(TEST_DBC) + + msg = packer.make_can_msg("CAN_FD_MESSAGE", 0, {}) + ret = parser.update([0, [msg]]) + assert ret == {245} + + ret = parser.update([]) + assert len(ret) == 0 + + def test_parser_counter_can_valid(self): + """ + Tests number of allowed bad counters + ensures CAN stays invalid + while receiving invalid messages + that we can recover + """ + msgs = [ + ("STEERING_CONTROL", 0), + ] + packer = CANPacker("honda_civic_touring_2016_can_generated") + parser = CANParser("honda_civic_touring_2016_can_generated", msgs, 0) + + msg = packer.make_can_msg("STEERING_CONTROL", 0, {"COUNTER": 0}) + + # bad static counter, invalid once it's seen MAX_BAD_COUNTER messages + for idx in range(0x1000): + parser.update([0, [msg]]) + assert ((idx + 1) < MAX_BAD_COUNTER) == parser.can_valid + + # one to recover + msg = packer.make_can_msg("STEERING_CONTROL", 0, {"COUNTER": 1}) + parser.update([0, [msg]]) + assert parser.can_valid + + def test_parser_no_partial_update(self): + """ + Ensure that the CANParser doesn't partially update messages with invalid signals (COUNTER/CHECKSUM). + Previously, the signal update loop would only break once it got to one of these invalid signals, + after already updating most/all of the signals. + """ + msgs = [ + ("STEERING_CONTROL", 0), + ] + packer = CANPacker("honda_civic_touring_2016_can_generated") + parser = CANParser("honda_civic_touring_2016_can_generated", msgs, 0) + + def rx_steering_msg(values, bad_checksum=False): + msg = packer.make_can_msg("STEERING_CONTROL", 0, values) + if bad_checksum: + # add 1 to checksum + dat = bytearray(msg[1]) + dat[4] = (dat[4] & 0xF0) | ((dat[4] & 0x0F) + 1) + msg = (msg[0], bytes(dat), msg[2]) + + parser.update([0, [msg]]) + + rx_steering_msg({"STEER_TORQUE": 100}, bad_checksum=False) + assert parser.vl["STEERING_CONTROL"]["STEER_TORQUE"] == 100 + assert parser.vl_all["STEERING_CONTROL"]["STEER_TORQUE"] == [100] + + for _ in range(5): + rx_steering_msg({"STEER_TORQUE": 200}, bad_checksum=True) + assert parser.vl["STEERING_CONTROL"]["STEER_TORQUE"] == 100 + assert parser.vl_all["STEERING_CONTROL"]["STEER_TORQUE"] == [] + + # Even if CANParser doesn't update instantaneous vl, make sure it didn't add invalid values to vl_all + rx_steering_msg({"STEER_TORQUE": 300}, bad_checksum=False) + assert parser.vl["STEERING_CONTROL"]["STEER_TORQUE"] == 300 + assert parser.vl_all["STEERING_CONTROL"]["STEER_TORQUE"] == [300] + + def test_packer_parser(self): + msgs = [ + ("Brake_Status", 0), + ("CAN_FD_MESSAGE", 0), + ("STEERING_CONTROL", 0), + ] + packer = CANPacker(TEST_DBC) + parser = CANParser(TEST_DBC, msgs, 0) + + for steer in range(-256, 255): + for active in (1, 0): + values = { + "STEERING_CONTROL": { + "STEER_TORQUE": steer, + "STEER_TORQUE_REQUEST": active, + }, + "Brake_Status": { + "Signal1": 61042322657536.0, + }, + "CAN_FD_MESSAGE": { + "SIGNED": steer, + "64_BIT_LE": random.randint(0, 100), + "64_BIT_BE": random.randint(0, 100), + }, + } + + msgs = [packer.make_can_msg(k, 0, v) for k, v in values.items()] + parser.update([0, msgs]) + + for k, v in values.items(): + for key, val in v.items(): + assert parser.vl[k][key] == pytest.approx(val) + + # also check address + for sig in ("STEER_TORQUE", "STEER_TORQUE_REQUEST", "COUNTER", "CHECKSUM"): + assert parser.vl["STEERING_CONTROL"][sig] == parser.vl[228][sig] + + def test_scale_offset(self): + """Test that both scale and offset are correctly preserved""" + dbc_file = "honda_civic_touring_2016_can_generated" + msgs = [("VSA_STATUS", 50)] + parser = CANParser(dbc_file, msgs, 0) + packer = CANPacker(dbc_file) + + for brake in range(100): + values = {"USER_BRAKE": brake} + msgs = packer.make_can_msg("VSA_STATUS", 0, values) + parser.update([0, [msgs]]) + + assert parser.vl["VSA_STATUS"]["USER_BRAKE"] == pytest.approx(brake) + + def test_subaru(self): + # Subaru is little endian + + dbc_file = "subaru_global_2017_generated" + + msgs = [("ES_LKAS", 50)] + + parser = CANParser(dbc_file, msgs, 0) + packer = CANPacker(dbc_file) + + idx = 0 + for steer in range(-256, 255): + for active in [1, 0]: + values = { + "LKAS_Output": steer, + "LKAS_Request": active, + "SET_1": 1 + } + + msgs = packer.make_can_msg("ES_LKAS", 0, values) + parser.update([0, [msgs]]) + + assert parser.vl["ES_LKAS"]["LKAS_Output"] == pytest.approx(steer) + assert parser.vl["ES_LKAS"]["LKAS_Request"] == pytest.approx(active) + assert parser.vl["ES_LKAS"]["SET_1"] == pytest.approx(1) + assert parser.vl["ES_LKAS"]["COUNTER"] == pytest.approx(idx % 16) + idx += 1 + + def test_bus_timeout(self): + """Test CAN bus timeout detection""" + dbc_file = "honda_civic_touring_2016_can_generated" + + freq = 100 + msgs = [("VSA_STATUS", freq), ("STEER_MOTOR_TORQUE", freq/2)] + + parser = CANParser(dbc_file, msgs, 0) + packer = CANPacker(dbc_file) + + i = 0 + def send_msg(blank=False): + nonlocal i + i += 1 + t = i*((1 / freq) * 1e9) + + if blank: + msgs = [] + else: + msgs = [packer.make_can_msg("VSA_STATUS", 0, {}), ] + + parser.update([t, msgs]) + + # all good, no timeout + for _ in range(1000): + send_msg() + assert not parser.bus_timeout, str(_) + + # timeout after 10 blank msgs + for n in range(200): + send_msg(blank=True) + assert (n >= 10) == parser.bus_timeout + + # no timeout immediately after seen again + send_msg() + assert not parser.bus_timeout + + def test_updated(self): + """Test updated value dict""" + dbc_file = "honda_civic_touring_2016_can_generated" + msgs = [("VSA_STATUS", 50)] + parser = CANParser(dbc_file, msgs, 0) + packer = CANPacker(dbc_file) + + # Make sure nothing is updated + assert len(parser.vl_all["VSA_STATUS"]["USER_BRAKE"]) == 0 + + idx = 0 + for _ in range(10): + # Ensure CANParser holds the values of any duplicate messages over multiple frames + user_brake_vals = [random.randrange(100) for _ in range(random.randrange(5, 10))] + half_idx = len(user_brake_vals) // 2 + can_msgs = [[], []] + for frame, brake_vals in enumerate((user_brake_vals[:half_idx], user_brake_vals[half_idx:])): + for user_brake in brake_vals: + values = {"USER_BRAKE": user_brake} + can_msgs[frame].append(packer.make_can_msg("VSA_STATUS", 0, values)) + idx += 1 + + parser.update([[0, m] for m in can_msgs]) + vl_all = parser.vl_all["VSA_STATUS"]["USER_BRAKE"] + + assert vl_all == user_brake_vals + if len(user_brake_vals): + assert vl_all[-1] == parser.vl["VSA_STATUS"]["USER_BRAKE"] + + def test_timestamp_nanos(self): + """Test message timestamp dict""" + dbc_file = "honda_civic_touring_2016_can_generated" + + msgs = [ + ("VSA_STATUS", 50), + ("POWERTRAIN_DATA", 100), + ] + + parser = CANParser(dbc_file, msgs, 0) + packer = CANPacker(dbc_file) + + # Check the default timestamp is zero + for msg in ("VSA_STATUS", "POWERTRAIN_DATA"): + ts_nanos = parser.ts_nanos[msg].values() + assert set(ts_nanos) == {0} + + # Check: + # - timestamp is only updated for correct messages + # - timestamp is correct for multiple runs + # - timestamp is from the latest message if updating multiple strings + for _ in range(10): + can_strings = [] + log_mono_time = 0 + for i in range(10): + log_mono_time = int(0.01 * i * 1e+9) + can_msg = packer.make_can_msg("VSA_STATUS", 0, {}) + can_strings.append((log_mono_time, [can_msg])) + parser.update(can_strings) + + ts_nanos = parser.ts_nanos["VSA_STATUS"].values() + assert set(ts_nanos) == {log_mono_time} + ts_nanos = parser.ts_nanos["POWERTRAIN_DATA"].values() + assert set(ts_nanos) == {0} + + def test_nonexistent_messages(self): + # Ensure we don't allow messages not in the DBC + existing_messages = ("STEERING_CONTROL", 228, "CAN_FD_MESSAGE", 245) + + for msg in existing_messages: + CANParser(TEST_DBC, [(msg, 0)], 0) + with pytest.raises(RuntimeError): + new_msg = msg + "1" if isinstance(msg, str) else msg + 1 + CANParser(TEST_DBC, [(new_msg, 0)], 0) + + def test_track_all_signals(self): + parser = CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 0)], 0) + assert parser.vl["ACC_CONTROL"] == { + "ACCEL_CMD": 0, + "ALLOW_LONG_PRESS": 0, + "ACC_MALFUNCTION": 0, + "RADAR_DIRTY": 0, + "DISTANCE": 0, + "MINI_CAR": 0, + "ACC_TYPE": 0, + "CANCEL_REQ": 0, + "ACC_CUT_IN": 0, + "LEAD_VEHICLE_STOPPED": 0, + "PERMIT_BRAKING": 0, + "RELEASE_STANDSTILL": 0, + "ITS_CONNECT_LEAD": 0, + "ACCEL_CMD_ALT": 0, + "CHECKSUM": 0, + } + + def test_disallow_duplicate_messages(self): + CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 5)], 0) + + with pytest.raises(RuntimeError): + CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 5), ("ACC_CONTROL", 10)], 0) + + with pytest.raises(RuntimeError): + CANParser("toyota_nodsu_pt_generated", [("ACC_CONTROL", 10), ("ACC_CONTROL", 10)], 0) + + def test_allow_undefined_msgs(self): + # TODO: we should throw an exception for these, but we need good + # discovery tests in openpilot first + packer = CANPacker("toyota_nodsu_pt_generated") + + assert packer.make_can_msg("ACC_CONTROL", 0, {"UNKNOWN_SIGNAL": 0}) == (835, b'\x00\x00\x00\x00\x00\x00\x00N', 0) + assert packer.make_can_msg("UNKNOWN_MESSAGE", 0, {"UNKNOWN_SIGNAL": 0}) == (0, b'', 0) + assert packer.make_can_msg(0, 0, {"UNKNOWN_SIGNAL": 0}) == (0, b'', 0) diff --git a/opendbc_repo/opendbc/car/CARS_template.md b/opendbc_repo/opendbc/car/CARS_template.md new file mode 100644 index 0000000000..c08b191f84 --- /dev/null +++ b/opendbc_repo/opendbc/car/CARS_template.md @@ -0,0 +1,78 @@ + + +# Support Information for {{all_car_docs | length}} Known Cars + +|{{ExtraCarsColumn | map(attribute='value') | join('|') | replace(hardware_col_name, wide_hardware_col_name)}}| +|---|---|---|{% for _ in range((ExtraCarsColumn | length) - 3) %}{{':---:|'}}{% endfor +%} +{% for car_docs in all_car_docs %} +|{% for column in ExtraCarsColumn %}{{car_docs.get_extra_cars_column(column)}}|{% endfor %} + +{% endfor %} + +# Types of Support + +**opendbc can support many more cars than it currently does.** There are a few reasons your car may not be supported. +If your car doesn't fit into any of the incompatibility criteria here, then there's a good chance it can be supported! +We're adding support for new cars all the time. **We don't have a roadmap for car support**, and in fact, most car +support comes from users like you! + +## Upstream + +A supported vehicle is one that just works when you install a comma device. All supported cars provide a better +experience than any stock system. Supported vehicles reference the US market unless otherwise specified. + +## Under Review + +A vehicle under review is one for which software support has been merged into upstream openpilot, but hasn't yet been +tested for drive quality and conformance with [comma safety guidelines](https://github.com/commaai/openpilot/blob/master/docs/SAFETY.md). +This is a normal part of the development and quality assurance process. This vehicle will not work when upstream +openpilot is installed, but custom forks may allow their use. + +## Custom + +Vehicles in this category are not considered plug-and-play. Software support is included in upstream openpilot, but +these vehicles might not have a harness in the comma store, or the physical install might be at an unusual or cumbersome +location, or they might need unusual configuration after install. + +## Dashcam + +Dashcam vehicles have software support in upstream openpilot, but will go into "dashcam mode" at startup and will not +engage. This may be due to known issues with driving safety or quality, or it may be a work in progress that isn't yet +ready for safety and quality review. + +## Community + +Although they're not upstream, the community has openpilot running on other makes and models. See the 'Community +Supported Models' section of each make [on our wiki](https://wiki.comma.ai/). + +Some notable works-in-progress: +* Honda + * 2024 Acura Integra, commaai/openpilot#32056 + * 2023-24 Honda Accord (CAN-FD), commaai/openpilot#32229 + * 2024 Honda CR-V (CAN-FD), commaai/openpilot#32806 + * 2024 Honda CR-V Hybrid (CAN-FD), commaai/openpilot#31527 + * Depends on commaai/opendbc#1100 + * 2021-25 Honda Odyssey, commaai/opendbc#1330 + * 2023-24 Honda Pilot (CAN-FD), commaai/openpilot#30324 + * Camera ACC stability improvements, commaai/openpilot#31022 + * Depends on commaai/panda#1814 + * Depends on commaai/opendbc#998 + * These are being reworked for full-time proxy through openpilot + * Manual transmission support (Civic, Integra) + * Depends on commaai/opendbc#1034 (merged) + * Car port support PR not yet filed + +## Incompatible + +### CAN Bus Security + +Vehicles with CAN security measures, such as AUTOSAR Secure Onboard Communication (SecOC) are not usable with openpilot +unless the owner can recover the message signing key and implement CAN message signing. Examples include certain newer +Toyota, and the GM Global B platform. + +### FlexRay + +All the cars that openpilot supports use a [CAN bus](https://en.wikipedia.org/wiki/CAN_bus) for communication between all the car's computers, however a +CAN bus isn't the only way that the computers in your car can communicate. Most, if not all, vehicles from the following +manufacturers use [FlexRay](https://en.wikipedia.org/wiki/FlexRay) instead of a CAN bus: **BMW, Mercedes, Audi, Land Rover, and some Volvo**. These cars +may one day be supported, but we have no immediate plans to support FlexRay. diff --git a/opendbc_repo/opendbc/car/__init__.py b/opendbc_repo/opendbc/car/__init__.py new file mode 100644 index 0000000000..60359dfceb --- /dev/null +++ b/opendbc_repo/opendbc/car/__init__.py @@ -0,0 +1,391 @@ +# functions common among cars +import numpy as np +from dataclasses import dataclass, field +from enum import IntFlag, ReprEnum, StrEnum, EnumType, auto +from dataclasses import replace + +from opendbc.car import structs, uds +from opendbc.car.can_definitions import CanData +from opendbc.car.docs_definitions import CarDocs, ExtraCarDocs + +DT_CTRL = 0.01 # car state and control loop timestep (s) + +# kg of standard extra cargo to count for drive, gas, etc... +STD_CARGO_KG = 136. + +ACCELERATION_DUE_TO_GRAVITY = 9.81 # m/s^2 + +ButtonType = structs.CarState.ButtonEvent.Type + + +@dataclass +class AngleSteeringLimits: + STEER_ANGLE_MAX: float + ANGLE_RATE_LIMIT_UP: tuple[list[float], list[float]] + ANGLE_RATE_LIMIT_DOWN: tuple[list[float], list[float]] + + +def apply_hysteresis(val: float, val_steady: float, hyst_gap: float) -> float: + if val > val_steady + hyst_gap: + val_steady = val - hyst_gap + elif val < val_steady - hyst_gap: + val_steady = val + hyst_gap + return val_steady + + +def create_button_events(cur_btn: int, prev_btn: int, buttons_dict: dict[int, structs.CarState.ButtonEvent.Type], + unpressed_btn: int = 0) -> list[structs.CarState.ButtonEvent]: + events: list[structs.CarState.ButtonEvent] = [] + + if cur_btn == prev_btn: + return events + + # Add events for button presses, multiple when a button switches without going to unpressed + for pressed, btn in ((False, prev_btn), (True, cur_btn)): + if btn != unpressed_btn: + events.append(structs.CarState.ButtonEvent(pressed=pressed, + type=buttons_dict.get(btn, ButtonType.unknown))) + return events + + +def gen_empty_fingerprint(): + return {i: {} for i in range(8)} + + +# these params were derived for the Civic and used to calculate params for other cars +class VehicleDynamicsParams: + MASS = 1326. + STD_CARGO_KG + WHEELBASE = 2.70 + CENTER_TO_FRONT = WHEELBASE * 0.4 + CENTER_TO_REAR = WHEELBASE - CENTER_TO_FRONT + ROTATIONAL_INERTIA = 2500 + TIRE_STIFFNESS_FRONT = 192150 + TIRE_STIFFNESS_REAR = 202500 + + +# TODO: get actual value, for now starting with reasonable value for +# civic and scaling by mass and wheelbase +def scale_rot_inertia(mass, wheelbase): + return VehicleDynamicsParams.ROTATIONAL_INERTIA * mass * wheelbase ** 2 / (VehicleDynamicsParams.MASS * VehicleDynamicsParams.WHEELBASE ** 2) + + +# TODO: start from empirically derived lateral slip stiffness for the civic and scale by +# mass and CG position, so all cars will have approximately similar dyn behaviors +def scale_tire_stiffness(mass, wheelbase, center_to_front, tire_stiffness_factor): + center_to_rear = wheelbase - center_to_front + tire_stiffness_front = (VehicleDynamicsParams.TIRE_STIFFNESS_FRONT * tire_stiffness_factor) * mass / VehicleDynamicsParams.MASS * \ + (center_to_rear / wheelbase) / (VehicleDynamicsParams.CENTER_TO_REAR / VehicleDynamicsParams.WHEELBASE) + + tire_stiffness_rear = (VehicleDynamicsParams.TIRE_STIFFNESS_REAR * tire_stiffness_factor) * mass / VehicleDynamicsParams.MASS * \ + (center_to_front / wheelbase) / (VehicleDynamicsParams.CENTER_TO_FRONT / VehicleDynamicsParams.WHEELBASE) + + return tire_stiffness_front, tire_stiffness_rear + + +DbcDict = dict[StrEnum, str] + +class Bus(StrEnum): + pt = auto() + cam = auto() + radar = auto() + adas = auto() + alt = auto() + body = auto() + chassis = auto() + loopback = auto() + main = auto() + party = auto() + ap_party = auto() + + +def apply_driver_steer_torque_limits(apply_torque: int, apply_torque_last: int, driver_torque: float, LIMITS, steer_max: int = None): + # some safety modes utilize a dynamic max steer + if steer_max is None: + steer_max = LIMITS.STEER_MAX + + # limits due to driver torque + driver_max_torque = steer_max + (LIMITS.STEER_DRIVER_ALLOWANCE + driver_torque * LIMITS.STEER_DRIVER_FACTOR) * LIMITS.STEER_DRIVER_MULTIPLIER + driver_min_torque = -steer_max + (-LIMITS.STEER_DRIVER_ALLOWANCE + driver_torque * LIMITS.STEER_DRIVER_FACTOR) * LIMITS.STEER_DRIVER_MULTIPLIER + max_steer_allowed = max(min(steer_max, driver_max_torque), 0) + min_steer_allowed = min(max(-steer_max, driver_min_torque), 0) + apply_torque = np.clip(apply_torque, min_steer_allowed, max_steer_allowed) + + # slow rate if steer torque increases in magnitude + if apply_torque_last > 0: + apply_torque = np.clip(apply_torque, max(apply_torque_last - LIMITS.STEER_DELTA_DOWN, -LIMITS.STEER_DELTA_UP), + apply_torque_last + LIMITS.STEER_DELTA_UP) + else: + apply_torque = np.clip(apply_torque, apply_torque_last - LIMITS.STEER_DELTA_UP, + min(apply_torque_last + LIMITS.STEER_DELTA_DOWN, LIMITS.STEER_DELTA_UP)) + + return int(round(float(apply_torque))) + + +def apply_dist_to_meas_limits(val, val_last, val_meas, + STEER_DELTA_UP, STEER_DELTA_DOWN, + STEER_ERROR_MAX, STEER_MAX): + # limits due to comparison of commanded val VS measured val (torque/angle/curvature) + max_lim = min(max(val_meas + STEER_ERROR_MAX, STEER_ERROR_MAX), STEER_MAX) + min_lim = max(min(val_meas - STEER_ERROR_MAX, -STEER_ERROR_MAX), -STEER_MAX) + + val = np.clip(val, min_lim, max_lim) + + # slow rate if val increases in magnitude + if val_last > 0: + val = np.clip(val, + max(val_last - STEER_DELTA_DOWN, -STEER_DELTA_UP), + val_last + STEER_DELTA_UP) + else: + val = np.clip(val, + val_last - STEER_DELTA_UP, + min(val_last + STEER_DELTA_DOWN, STEER_DELTA_UP)) + + return float(val) + + +def apply_meas_steer_torque_limits(apply_torque, apply_torque_last, motor_torque, LIMITS): + return int(round(apply_dist_to_meas_limits(apply_torque, apply_torque_last, motor_torque, + LIMITS.STEER_DELTA_UP, LIMITS.STEER_DELTA_DOWN, + LIMITS.STEER_ERROR_MAX, LIMITS.STEER_MAX))) + + +def apply_std_steer_angle_limits(apply_angle: float, apply_angle_last: float, v_ego: float, steering_angle: float, + lat_active: bool, limits: AngleSteeringLimits) -> float: + # pick angle rate limits based on wind up/down + steer_up = apply_angle_last * apply_angle >= 0. and abs(apply_angle) > abs(apply_angle_last) + rate_limits = limits.ANGLE_RATE_LIMIT_UP if steer_up else limits.ANGLE_RATE_LIMIT_DOWN + + angle_rate_lim = np.interp(v_ego, rate_limits[0], rate_limits[1]) + new_apply_angle = np.clip(apply_angle, apply_angle_last - angle_rate_lim, apply_angle_last + angle_rate_lim) + + # angle is current steering wheel angle when inactive on all angle cars + if not lat_active: + new_apply_angle = steering_angle + + return float(np.clip(new_apply_angle, -limits.STEER_ANGLE_MAX, limits.STEER_ANGLE_MAX)) + + +def common_fault_avoidance(fault_condition: bool, request: bool, above_limit_frames: int, + max_above_limit_frames: int, max_mismatching_frames: int = 1): + """ + Several cars have the ability to work around their EPS limits by cutting the + request bit of their LKAS message after a certain number of frames above the limit. + """ + + # Count up to max_above_limit_frames, at which point we need to cut the request for above_limit_frames to avoid a fault + if request and fault_condition: + above_limit_frames += 1 + else: + above_limit_frames = 0 + + # Once we cut the request bit, count additionally to max_mismatching_frames before setting the request bit high again. + # Some brands do not respect our workaround without multiple messages on the bus, for example + if above_limit_frames > max_above_limit_frames: + request = False + + if above_limit_frames >= max_above_limit_frames + max_mismatching_frames: + above_limit_frames = 0 + + return above_limit_frames, request + + +def crc8_pedal(data): + crc = 0xFF # standard init value + poly = 0xD5 # standard crc8: x8+x7+x6+x4+x2+1 + size = len(data) + for i in range(size - 1, -1, -1): + crc ^= data[i] + for _ in range(8): + if ((crc & 0x80) != 0): + crc = ((crc << 1) ^ poly) & 0xFF + else: + crc <<= 1 + return crc + + +def create_gas_interceptor_command(packer, gas_amount, idx): + # Common gas pedal msg generator + enable = gas_amount > 0.001 + + values = { + "ENABLE": enable, + "COUNTER_PEDAL": idx & 0xF, + } + + if enable: + values["GAS_COMMAND"] = gas_amount * 255. + values["GAS_COMMAND2"] = gas_amount * 255. + + dat = packer.make_can_msg("GAS_COMMAND", 0, values)[1] + + checksum = crc8_pedal(dat[:-1]) + values["CHECKSUM_PEDAL"] = checksum + + return packer.make_can_msg("GAS_COMMAND", 0, values) + + +def apply_center_deadzone(error, deadzone): + if (error > - deadzone) and (error < deadzone): + error = 0. + return error + + +def rate_limit(new_value, last_value, dw_step, up_step): + return float(np.clip(new_value, last_value + dw_step, last_value + up_step)) + + +def get_friction(lateral_accel_error: float, lateral_accel_deadzone: float, friction_threshold: float, + torque_params: structs.CarParams.LateralTorqueTuning, friction_compensation: bool) -> float: + friction_interp = np.interp( + apply_center_deadzone(lateral_accel_error, lateral_accel_deadzone), + [-friction_threshold, friction_threshold], + [-torque_params.friction, torque_params.friction] + ) + friction = float(friction_interp) if friction_compensation else 0.0 + return friction + + +def make_tester_present_msg(addr, bus, subaddr=None, suppress_response=False): + dat = [0x02, uds.SERVICE_TYPE.TESTER_PRESENT] + if subaddr is not None: + dat.insert(0, subaddr) + dat.append(0x80 if suppress_response else 0x0) # sub-function + + dat.extend([0x0] * (8 - len(dat))) + return CanData(addr, bytes(dat), bus) + + +def get_safety_config(safety_model: structs.CarParams.SafetyModel, safety_param: int = None) -> structs.CarParams.SafetyConfig: + ret = structs.CarParams.SafetyConfig() + ret.safetyModel = safety_model + if safety_param is not None: + ret.safetyParam = safety_param + return ret + + +class CanBusBase: + offset: int + + def __init__(self, CP, fingerprint: dict[int, dict[int, int]] | None) -> None: + if CP is None: + assert fingerprint is not None + num = max([k for k, v in fingerprint.items() if len(v)], default=0) // 4 + 1 + else: + num = len(CP.safetyConfigs) + self.offset = 4 * (num - 1) + + +class CanSignalRateCalculator: + """ + Calculates the instantaneous rate of a CAN signal by using the counter + variable and the known frequency of the CAN message that contains it. + """ + def __init__(self, frequency): + self.frequency = frequency + self.previous_counter = 0 + self.previous_value = 0 + self.rate = 0 + + def update(self, current_value, current_counter): + if current_counter != self.previous_counter: + self.rate = (current_value - self.previous_value) * self.frequency + + self.previous_counter = current_counter + self.previous_value = current_value + + return self.rate + + +@dataclass(frozen=True, kw_only=True) +class CarSpecs: + mass: float # kg, curb weight + wheelbase: float # meters + steerRatio: float + centerToFrontRatio: float = 0.5 + minSteerSpeed: float = 0.0 # m/s + minEnableSpeed: float = -1.0 # m/s + tireStiffnessFactor: float = 1.0 + + def override(self, **kwargs): + return replace(self, **kwargs) + + +class Freezable: + _frozen: bool = False + + def freeze(self): + if not self._frozen: + self._frozen = True + + def __setattr__(self, *args, **kwargs): + if self._frozen: + raise Exception("cannot modify frozen object") + super().__setattr__(*args, **kwargs) + + +@dataclass(order=True) +class PlatformConfigBase(Freezable): + car_docs: list[CarDocs] | list[ExtraCarDocs] + specs: CarSpecs + + dbc_dict: DbcDict + + flags: int = 0 + + platform_str: str | None = None + + def __hash__(self) -> int: + return hash(self.platform_str) + + def override(self, **kwargs): + return replace(self, **kwargs) + + def init(self): + pass + + def __post_init__(self): + self.init() + + +@dataclass(order=True) +class PlatformConfig(PlatformConfigBase): + car_docs: list[CarDocs] + specs: CarSpecs + dbc_dict: DbcDict + + +@dataclass(order=True) +class ExtraPlatformConfig(PlatformConfigBase): + car_docs: list[ExtraCarDocs] + specs: CarSpecs = CarSpecs(mass=0., wheelbase=0., steerRatio=0.) + dbc_dict: DbcDict = field(default_factory=lambda: dict()) + + +class PlatformsType(EnumType): + def __new__(metacls, cls, bases, classdict, *, boundary=None, _simple=False, **kwds): + for key in classdict._member_names.keys(): + cfg: PlatformConfig = classdict[key] + cfg.platform_str = key + cfg.freeze() + return super().__new__(metacls, cls, bases, classdict, boundary=boundary, _simple=_simple, **kwds) + + +class Platforms(str, ReprEnum, metaclass=PlatformsType): + config: PlatformConfigBase + + def __new__(cls, platform_config: PlatformConfig): + member = str.__new__(cls, platform_config.platform_str) + member.config = platform_config + member._value_ = platform_config.platform_str + return member + + def __repr__(self): + return f"<{self.__class__.__name__}.{self.name}>" + + @classmethod + def create_dbc_map(cls) -> dict[str, DbcDict]: + return {p: p.config.dbc_dict for p in cls} + + @classmethod + def with_flags(cls, flags: IntFlag) -> set['Platforms']: + return {p for p in cls if p.config.flags & flags} diff --git a/opendbc_repo/opendbc/car/bmw/__init__.py b/opendbc_repo/opendbc/car/bmw/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py new file mode 100644 index 0000000000..d672e7e8c2 --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -0,0 +1,91 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag +from cereal import car +from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from opendbc.car.common.conversions import Conversions as CV + +# Steer torque limits +class CarControllerParams: #controls running @ 100hz + STEER_STEP = 1 # 100Hz + STEER_MAX = 12 # Nm + STEER_DELTA_UP = 10 / 100 # 10Nm/s + STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit + STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor + + # STEER_BACKLASH = 1 #deg + def __init__(self, CP): + pass + +class BmwFlags(IntFlag): + # Detected Flags + STEPPER_SERVO_CAN = 2 ** 0 + NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 + DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 + ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported + ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 + ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 + SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query + +class CruiseSettings: + CLUSTER_OFFSET = 2 # kph + +class CanBus: + PT_CAN = 0 + SERVO_CAN = 0 # required for steering + F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging + K_CAN = 0 # not used - only logging + + +class Footnote(Enum): + StepperServoCAN = CarFootnote( + "Requires StepperServoCAN", + Column.FSR_STEERING) + DCC = CarFootnote( + "Minimum speed with CC or DCC is 30 kph", + Column.FSR_LONGITUDINAL) + CC = CarFootnote( + "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", + Column.PACKAGE) + ACC = CarFootnote( + "ACC is required. Also LDM module to take over when OP is off.", + Column.AUTO_RESUME) + DIY = CarFootnote( + "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", + Column.HARDWARE) + +@dataclass +class BmwCarDocs(CarDocs): + package: str = "Cruise Control - VO540, VO544, VO541" + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) + + def init_make(self, CP: car.CarParams): + self.car_parts = CarParts.common([CarHarness.custom]) + +@dataclass +class BmwPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) + + +class CAR(Platforms): + BMW_E82 = BmwPlatformConfig( + [BmwCarDocs("BMW E82 2004-13")], + CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + BMW_E90 = BmwPlatformConfig( + [BmwCarDocs("BMW E90 2005-11")], + CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + + +DBC = CAR.create_dbc_map() + + +if __name__ == '__main__': + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) diff --git a/opendbc_repo/opendbc/car/body/__init__.py b/opendbc_repo/opendbc/car/body/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/body/bodycan.py b/opendbc_repo/opendbc/car/body/bodycan.py new file mode 100644 index 0000000000..201bfe718f --- /dev/null +++ b/opendbc_repo/opendbc/car/body/bodycan.py @@ -0,0 +1,20 @@ +def create_control(packer, torque_l, torque_r): + values = { + "TORQUE_L": torque_l, + "TORQUE_R": torque_r, + } + + return packer.make_can_msg("TORQUE_CMD", 0, values) + + +def body_checksum(address: int, sig, d: bytearray) -> int: + crc = 0xFF + poly = 0xD5 + for i in range(len(d) - 2, -1, -1): + crc ^= d[i] + for _ in range(8): + if crc & 0x80: + crc = ((crc << 1) ^ poly) & 0xFF + else: + crc = (crc << 1) & 0xFF + return crc diff --git a/opendbc_repo/opendbc/car/body/carcontroller.py b/opendbc_repo/opendbc/car/body/carcontroller.py new file mode 100644 index 0000000000..3739af24f2 --- /dev/null +++ b/opendbc_repo/opendbc/car/body/carcontroller.py @@ -0,0 +1,82 @@ +import numpy as np + +from opendbc.can import CANPacker +from opendbc.car import Bus, DT_CTRL +from opendbc.car.common.pid import PIDController +from opendbc.car.body import bodycan +from opendbc.car.body.values import SPEED_FROM_RPM +from opendbc.car.interfaces import CarControllerBase + +MAX_TORQUE = 500 +MAX_TORQUE_RATE = 50 +MAX_ANGLE_ERROR = np.radians(7) +MAX_POS_INTEGRATOR = 0.2 # meters +MAX_TURN_INTEGRATOR = 0.1 # meters + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.packer = CANPacker(dbc_names[Bus.main]) + + # PIDs + self.turn_pid = PIDController(110, k_i=11.5, rate=1 / DT_CTRL) + self.wheeled_speed_pid = PIDController(110, k_i=11.5, rate=1 / DT_CTRL) + + self.torque_r_filtered = 0. + self.torque_l_filtered = 0. + + @staticmethod + def deadband_filter(torque, deadband): + if torque > 0: + torque += deadband + else: + torque -= deadband + return torque + + def update(self, CC, CS, now_nanos): + + torque_l = 0 + torque_r = 0 + + if CC.enabled: + # Read these from the joystick + # TODO: this isn't acceleration, okay? + speed_desired = CC.actuators.accel / 5. + speed_diff_desired = -CC.actuators.torque / 2. + + speed_measured = SPEED_FROM_RPM * (CS.out.wheelSpeeds.fl + CS.out.wheelSpeeds.fr) / 2. + speed_error = speed_desired - speed_measured + + torque = self.wheeled_speed_pid.update(speed_error, freeze_integrator=False) + + speed_diff_measured = SPEED_FROM_RPM * (CS.out.wheelSpeeds.fl - CS.out.wheelSpeeds.fr) + turn_error = speed_diff_measured - speed_diff_desired + freeze_integrator = ((turn_error < 0 and self.turn_pid.error_integral <= -MAX_TURN_INTEGRATOR) or + (turn_error > 0 and self.turn_pid.error_integral >= MAX_TURN_INTEGRATOR)) + torque_diff = self.turn_pid.update(turn_error, freeze_integrator=freeze_integrator) + + # Combine 2 PIDs outputs + torque_r = torque + torque_diff + torque_l = torque - torque_diff + + # Torque rate limits + self.torque_r_filtered = np.clip(self.deadband_filter(torque_r, 10), + self.torque_r_filtered - MAX_TORQUE_RATE, + self.torque_r_filtered + MAX_TORQUE_RATE) + self.torque_l_filtered = np.clip(self.deadband_filter(torque_l, 10), + self.torque_l_filtered - MAX_TORQUE_RATE, + self.torque_l_filtered + MAX_TORQUE_RATE) + torque_r = int(np.clip(self.torque_r_filtered, -MAX_TORQUE, MAX_TORQUE)) + torque_l = int(np.clip(self.torque_l_filtered, -MAX_TORQUE, MAX_TORQUE)) + + can_sends = [] + can_sends.append(bodycan.create_control(self.packer, torque_l, torque_r)) + + new_actuators = CC.actuators.as_builder() + new_actuators.accel = torque_l + new_actuators.torque = torque_r + new_actuators.torqueOutputCan = torque_r + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/body/carstate.py b/opendbc_repo/opendbc/car/body/carstate.py new file mode 100644 index 0000000000..b346a3df01 --- /dev/null +++ b/opendbc_repo/opendbc/car/body/carstate.py @@ -0,0 +1,35 @@ +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import CarStateBase +from opendbc.car.body.values import DBC + + +class CarState(CarStateBase): + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.main] + ret = structs.CarState() + + ret.wheelSpeeds.fl = cp.vl['MOTORS_DATA']['SPEED_L'] + ret.wheelSpeeds.fr = cp.vl['MOTORS_DATA']['SPEED_R'] + + ret.vEgoRaw = ((ret.wheelSpeeds.fl + ret.wheelSpeeds.fr) / 2.) * self.CP.wheelSpeedFactor + + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = False + + ret.steerFaultPermanent = any([cp.vl['VAR_VALUES']['MOTOR_ERR_L'], cp.vl['VAR_VALUES']['MOTOR_ERR_R'], + cp.vl['VAR_VALUES']['FAULT']]) + + ret.charging = cp.vl["BODY_DATA"]["CHARGER_CONNECTED"] == 1 + ret.fuelGauge = cp.vl["BODY_DATA"]["BATT_PERCENTAGE"] / 100 + + # irrelevant for non-car + ret.gearShifter = structs.CarState.GearShifter.drive + ret.cruiseState.enabled = True + ret.cruiseState.available = True + + return ret + + @staticmethod + def get_can_parsers(CP): + return {Bus.main: CANParser(DBC[CP.carFingerprint][Bus.main], [], 0)} diff --git a/opendbc_repo/opendbc/car/body/fingerprints.py b/opendbc_repo/opendbc/car/body/fingerprints.py new file mode 100644 index 0000000000..5806112fb1 --- /dev/null +++ b/opendbc_repo/opendbc/car/body/fingerprints.py @@ -0,0 +1,28 @@ +""" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.""" +from opendbc.car.structs import CarParams +from opendbc.car.body.values import CAR + +Ecu = CarParams.Ecu + +# debug ecu fw version is the git hash of the firmware + + +FINGERPRINTS = { + CAR.COMMA_BODY: [{ + 513: 8, 516: 8, 514: 3, 515: 4 + }], +} + +FW_VERSIONS = { + CAR.COMMA_BODY: { + (Ecu.engine, 0x720, None): [ + b'0.0.01', + b'0.3.00a', + b'02/27/2022', + ], + (Ecu.debug, 0x721, None): [ + b'166bd860', + b'dc780f85', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/body/interface.py b/opendbc_repo/opendbc/car/body/interface.py new file mode 100644 index 0000000000..24e571ee95 --- /dev/null +++ b/opendbc_repo/opendbc/car/body/interface.py @@ -0,0 +1,30 @@ +import math +from opendbc.car import get_safety_config, structs +from opendbc.car.body.carcontroller import CarController +from opendbc.car.body.carstate import CarState +from opendbc.car.body.values import SPEED_FROM_RPM +from opendbc.car.interfaces import CarInterfaceBase + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.notCar = True + ret.brand = "body" + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.body)] + + ret.minSteerSpeed = -math.inf + ret.maxLateralAccel = math.inf # TODO: set to a reasonable value + ret.steerLimitTimer = 1.0 + ret.steerActuatorDelay = 0. + + ret.wheelSpeedFactor = SPEED_FROM_RPM + + ret.radarUnavailable = True + ret.openpilotLongitudinalControl = True + ret.steerControlType = structs.CarParams.SteerControlType.angle + + return ret diff --git a/opendbc_repo/opendbc/car/body/values.py b/opendbc_repo/opendbc/car/body/values.py new file mode 100644 index 0000000000..ca47e09f02 --- /dev/null +++ b/opendbc_repo/opendbc/car/body/values.py @@ -0,0 +1,40 @@ +from opendbc.car import Bus, CarSpecs, PlatformConfig, Platforms +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarDocs +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries + +Ecu = CarParams.Ecu + +SPEED_FROM_RPM = 0.008587 + + +class CarControllerParams: + ANGLE_DELTA_BP = [0., 5., 15.] + ANGLE_DELTA_V = [5., .8, .15] # windup limit + ANGLE_DELTA_VU = [5., 3.5, 0.4] # unwind limit + LKAS_MAX_TORQUE = 1 # A value of 1 is easy to overpower + STEER_THRESHOLD = 1.0 + + def __init__(self, CP): + pass + + +class CAR(Platforms): + COMMA_BODY = PlatformConfig( + [CarDocs("comma body", package="All")], + CarSpecs(mass=9, wheelbase=0.406, steerRatio=0.5, centerToFrontRatio=0.44), + {Bus.main: 'comma_body'}, + ) + + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.UDS_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.UDS_VERSION_RESPONSE], + bus=0, + ), + ], +) + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/can_definitions.py b/opendbc_repo/opendbc/car/can_definitions.py new file mode 100644 index 0000000000..2dba7f26a8 --- /dev/null +++ b/opendbc_repo/opendbc/car/can_definitions.py @@ -0,0 +1,15 @@ +from collections.abc import Callable +from typing import NamedTuple, Protocol + + +class CanData(NamedTuple): + address: int + dat: bytes + src: int + + +CanSendCallable = Callable[[list[CanData]], None] + + +class CanRecvCallable(Protocol): + def __call__(self, wait_for_one: bool = False) -> list[list[CanData]]: ... diff --git a/opendbc_repo/opendbc/car/car.capnp b/opendbc_repo/opendbc/car/car.capnp new file mode 100644 index 0000000000..f20cb6b770 --- /dev/null +++ b/opendbc_repo/opendbc/car/car.capnp @@ -0,0 +1,813 @@ +using Cxx = import "./include/c++.capnp"; +$Cxx.namespace("cereal"); + +@0x8e2af1e708af8b8d; + +# ******* events causing controls state machine transition ******* + +# IMPORTANT: This struct is to not be modified so old logs can be parsed +struct OnroadEventDEPRECATED @0x9b1657f34caf3ad3 { + name @0 :EventName; + + # event types + enable @1 :Bool; + noEntry @2 :Bool; + warning @3 :Bool; # alerts presented only when enabled or soft disabling + userDisable @4 :Bool; + softDisable @5 :Bool; + immediateDisable @6 :Bool; + preEnable @7 :Bool; + permanent @8 :Bool; # alerts presented regardless of openpilot state + overrideLateral @10 :Bool; + overrideLongitudinal @9 :Bool; + + enum EventName @0xbaa8c5d505f727de { + canError @0; + steerUnavailable @1; + wrongGear @4; + doorOpen @5; + seatbeltNotLatched @6; + espDisabled @7; + wrongCarMode @8; + steerTempUnavailable @9; + reverseGear @10; + buttonCancel @11; + buttonEnable @12; + pedalPressed @13; # exits active state + preEnableStandstill @73; # added during pre-enable state with brake + gasPressedOverride @108; # added when user is pressing gas with no disengage on gas + steerOverride @114; + cruiseDisabled @14; + speedTooLow @17; + outOfSpace @18; + overheat @19; + calibrationIncomplete @20; + calibrationInvalid @21; + calibrationRecalibrating @117; + controlsMismatch @22; + pcmEnable @23; + pcmDisable @24; + radarFault @26; + brakeHold @28; + parkBrake @29; + manualRestart @30; + joystickDebug @34; + longitudinalManeuver @124; + steerTempUnavailableSilent @35; + resumeRequired @36; + preDriverDistracted @37; + promptDriverDistracted @38; + driverDistracted @39; + preDriverUnresponsive @43; + promptDriverUnresponsive @44; + driverUnresponsive @45; + belowSteerSpeed @46; + lowBattery @48; + accFaulted @51; + sensorDataInvalid @52; + commIssue @53; + commIssueAvgFreq @109; + tooDistracted @54; + posenetInvalid @55; + preLaneChangeLeft @57; + preLaneChangeRight @58; + laneChange @59; + lowMemory @63; + stockAeb @64; + ldw @65; + carUnrecognized @66; + invalidLkasSetting @69; + speedTooHigh @70; + laneChangeBlocked @71; + relayMalfunction @72; + stockFcw @74; + startup @75; + startupNoCar @76; + startupNoControl @77; + startupNoSecOcKey @125; + startupMaster @78; + fcw @79; + steerSaturated @80; + belowEngageSpeed @84; + noGps @85; + wrongCruiseMode @87; + modeldLagging @89; + deviceFalling @90; + fanMalfunction @91; + cameraMalfunction @92; + cameraFrameRate @110; + processNotRunning @95; + dashcamMode @96; + selfdriveInitializing @98; + usbError @99; + cruiseMismatch @106; + canBusMissing @111; + selfdrivedLagging @112; + resumeBlocked @113; + steerTimeLimit @115; + vehicleSensorsInvalid @116; + locationdTemporaryError @103; + locationdPermanentError @118; + paramsdTemporaryError @50; + paramsdPermanentError @119; + actuatorsApiUnavailable @120; + espActive @121; + personalityChanged @122; + aeb @123; + + radarCanErrorDEPRECATED @15; + communityFeatureDisallowedDEPRECATED @62; + radarCommIssueDEPRECATED @67; + driverMonitorLowAccDEPRECATED @68; + gasUnavailableDEPRECATED @3; + dataNeededDEPRECATED @16; + modelCommIssueDEPRECATED @27; + ipasOverrideDEPRECATED @33; + geofenceDEPRECATED @40; + driverMonitorOnDEPRECATED @41; + driverMonitorOffDEPRECATED @42; + calibrationProgressDEPRECATED @47; + invalidGiraffeHondaDEPRECATED @49; + invalidGiraffeToyotaDEPRECATED @60; + internetConnectivityNeededDEPRECATED @61; + whitePandaUnsupportedDEPRECATED @81; + commIssueWarningDEPRECATED @83; + focusRecoverActiveDEPRECATED @86; + neosUpdateRequiredDEPRECATED @88; + modelLagWarningDEPRECATED @93; + startupOneplusDEPRECATED @82; + startupFuzzyFingerprintDEPRECATED @97; + noTargetDEPRECATED @25; + brakeUnavailableDEPRECATED @2; + plannerErrorDEPRECATED @32; + gpsMalfunctionDEPRECATED @94; + roadCameraErrorDEPRECATED @100; + driverCameraErrorDEPRECATED @101; + wideRoadCameraErrorDEPRECATED @102; + highCpuUsageDEPRECATED @105; + startupNoFwDEPRECATED @104; + lowSpeedLockoutDEPRECATED @31; + lkasDisabledDEPRECATED @107; + soundsUnavailableDEPRECATED @56; + } +} + +# ******* main car state @ 100hz ******* +# all speeds in m/s + +struct CarState { + # CAN health + canValid @26 :Bool; # invalid counter/checksums + canTimeout @40 :Bool; # CAN bus dropped out + canErrorCounter @48 :UInt32; + + # car speed + vEgo @1 :Float32; # best estimate of speed + aEgo @16 :Float32; # best estimate of aCAN cceleration + vEgoRaw @17 :Float32; # unfiltered speed from wheel speed sensors + vEgoCluster @44 :Float32; # best estimate of speed shown on car's instrument cluster, used for UI + + vCruise @53 :Float32; # actual set speed + vCruiseCluster @54 :Float32; # set speed to display in the UI + + yawRate @22 :Float32; # best estimate of yaw rate + standstill @18 :Bool; + wheelSpeeds @2 :WheelSpeeds; + + # gas pedal, 0.0-1.0 + gas @3 :Float32; # this is user pedal only + gasPressed @4 :Bool; # this is user pedal only + + engineRpm @46 :Float32; + + # brake pedal, 0.0-1.0 + brake @5 :Float32; # this is user pedal only + brakePressed @6 :Bool; # this is user pedal only + regenBraking @45 :Bool; # this is user pedal only + parkingBrake @39 :Bool; + brakeHoldActive @38 :Bool; + + # steering wheel + steeringAngleDeg @7 :Float32; + steeringAngleOffsetDeg @37 :Float32; # Offset betweens sensors in case there multiple + steeringRateDeg @15 :Float32; + steeringTorque @8 :Float32; # TODO: standardize units + steeringTorqueEps @27 :Float32; # TODO: standardize units + steeringPressed @9 :Bool; # if the user is using the steering wheel + steerFaultTemporary @35 :Bool; # temporary EPS fault + steerFaultPermanent @36 :Bool; # permanent EPS fault + invalidLkasSetting @55 :Bool; # stock LKAS is incorrectly configured (i.e. on or off) + stockAeb @30 :Bool; + stockFcw @31 :Bool; + espDisabled @32 :Bool; + accFaulted @42 :Bool; + carFaultedNonCritical @47 :Bool; # some ECU is faulted, but car remains controllable + espActive @51 :Bool; + vehicleSensorsInvalid @52 :Bool; # invalid steering angle readings, etc. + lowSpeedAlert @56 :Bool; # lost steering control due to a dynamic min steering speed + + # cruise state + cruiseState @10 :CruiseState; + + # gear + gearShifter @14 :GearShifter; + + # button presses + buttonEvents @11 :List(ButtonEvent); + buttonEnable @57 :Bool; # user is requesting enable, usually one frame. set if pcmCruise=False + leftBlinker @20 :Bool; + rightBlinker @21 :Bool; + genericToggle @23 :Bool; + + # lock info + doorOpen @24 :Bool; + seatbeltUnlatched @25 :Bool; + + # clutch (manual transmission only) + clutchPressed @28 :Bool; + + # blindspot sensors + leftBlindspot @33 :Bool; # Is there something blocking the left lane change + rightBlindspot @34 :Bool; # Is there something blocking the right lane change + + fuelGauge @41 :Float32; # battery or fuel tank level from 0.0 to 1.0 + charging @43 :Bool; + + # process meta + cumLagMs @50 :Float32; + + vCluRatio @58 :Float32; + logCarrot @59 :Text; + softHoldActive @60 :Int16; #0: not active, 1: active ready, 2: activated + activateCruise @61 :Int16; + latEnabled @62 :Bool; + pcmCruiseGap @63 :Int16; #0: can't read, 1,2,3,4: gap setting + speedLimit @64 :Float32; + speedLimitDistance @65 :Float32; + gearStep @66 :Int16; + tpms @67 : Tpms; + useLaneLineSpeed @68 : Float32; + leftLatDist @69 : Float32; # distance to left lane line + rightLatDist @70 : Float32; # distance to right lane line + leftLongDist @71 : Float32; # distance to left lane line in the direction of travel + rightLongDist @72 : Float32; # distance to right lane line in the direction of travel + carrotCruise @73 : Int16; + leftLaneLine @74 : Int16; # -1: no lane, 0: dashed, 1: solid, +10: white, +20: yellow, ex) 21: solid yellow + rightLaneLine @75 : Int16; # -1: no lane, 0: dashed, 1: solid, +10: white, +20: yellow, ex) 21: solid yellow + datetime @76 :UInt64; # timestamp in milliseconds since epoch + + struct Tpms { + fl @0 :Float32; + fr @1 :Float32; + rl @2 :Float32; + rr @3 :Float32; + } + + struct WheelSpeeds { + # optional wheel speeds + fl @0 :Float32; + fr @1 :Float32; + rl @2 :Float32; + rr @3 :Float32; + } + + struct CruiseState { + enabled @0 :Bool; + speed @1 :Float32; + speedCluster @6 :Float32; # Set speed as shown on instrument cluster + available @2 :Bool; + speedOffset @3 :Float32; + standstill @4 :Bool; + nonAdaptive @5 :Bool; + } + + enum GearShifter { + unknown @0; + park @1; + drive @2; + neutral @3; + reverse @4; + sport @5; + low @6; + brake @7; + eco @8; + manumatic @9; + } + + # send on change + struct ButtonEvent { + pressed @0 :Bool; + type @1 :Type; + + enum Type { + unknown @0; + leftBlinker @1; + rightBlinker @2; + accelCruise @3; + decelCruise @4; + cancel @5; + lkas @6; + altButton2 @7; + mainCruise @8; + setCruise @9; + resumeCruise @10; + gapAdjustCruise @11; + + lfaButton @12; + paddleLeft @13; + paddleRight @14; + } + } + + # deprecated + errorsDEPRECATED @0 :List(OnroadEventDEPRECATED.EventName); + brakeLights @19 :Bool; + steeringRateLimitedDEPRECATED @29 :Bool; + canMonoTimesDEPRECATED @12: List(UInt64); + canRcvTimeoutDEPRECATED @49 :Bool; + eventsDEPRECATED @13 :List(OnroadEventDEPRECATED); +} + +# ******* radar state @ 20hz ******* + +struct RadarData @0x888ad6581cf0aacb { + errors @3 :Error; + points @1 :List(RadarPoint); + + struct Error { + canError @0 :Bool; + radarFault @1 :Bool; + wrongConfig @2 :Bool; + radarUnavailableTemporary @3 :Bool; # radar data is temporarily unavailable due to conditions the car sets + } + + # similar to LiveTracks + # is one timestamp valid for all? I think so + struct RadarPoint { + trackId @0 :UInt64; # no trackId reuse + + # these 3 are the minimum required + dRel @1 :Float32; # m from the front bumper of the car + yRel @2 :Float32; # m + vRel @3 :Float32; # m/s + + # these are optional and valid if they are not NaN + aRel @4 :Float32; # m/s^2 + yvRel @5 :Float32; # m/s + + # some radars flag measurements VS estimates + measured @6 :Bool; + + vLead @7 :Float32; # m/s + aLead @8 :Float32; # m/s^2 + jLead @9 :Float32; # m/s^3 + } + + enum ErrorDEPRECATED { + canError @0; + fault @1; + wrongConfig @2; + } + + # deprecated + canMonoTimesDEPRECATED @2 :List(UInt64); + errorsDEPRECATED @0 :List(ErrorDEPRECATED); +} + +# ******* car controls @ 100hz ******* + +struct CarControl { + # must be true for any actuator commands to work + enabled @0 :Bool; + latActive @11: Bool; + longActive @12: Bool; + + # Final actuator commands + actuators @6 :Actuators; + + # Blinker controls + leftBlinker @15: Bool; + rightBlinker @16: Bool; + + orientationNED @13 :List(Float32); + angularVelocity @14 :List(Float32); + currentCurvature @17 :Float32; # From vehicle model + + cruiseControl @4 :CruiseControl; + hudControl @5 :HUDControl; + + struct Actuators { + # lateral commands, mutually exclusive + torque @2: Float32; # [0.0, 1.0] + steeringAngleDeg @3: Float32; + curvature @7: Float32; + + # longitudinal commands + accel @4: Float32; # m/s^2 + longControlState @5: LongControlState; + + # these are only for logging the actual values sent to the car over CAN + gas @0: Float32; # [0.0, 1.0] + brake @1: Float32; # [0.0, 1.0] + torqueOutputCan @8: Float32; # value sent over can to the car + speed @6: Float32; # m/s + + jerk @9: Float32; # m/s^3 + aTarget @10: Float32; # m/s^2 + + enum LongControlState @0xe40f3a917d908282{ + off @0; + pid @1; + stopping @2; + starting @3; + } + } + + struct CruiseControl { + cancel @0: Bool; + resume @1: Bool; + override @4: Bool; + speedOverrideDEPRECATED @2: Float32; + accelOverrideDEPRECATED @3: Float32; + } + + struct HUDControl { + speedVisible @0: Bool; + setSpeed @1: Float32; + lanesVisible @2: Bool; + leadVisible @3: Bool; + visualAlert @4: VisualAlert; + rightLaneVisible @6: Bool; + leftLaneVisible @7: Bool; + rightLaneDepart @8: Bool; + leftLaneDepart @9: Bool; + leadDistanceBars @10: Int8; # 1-3: 1 is closest, 3 is farthest. some ports may utilize 2-4 bars instead + + activeCarrot @11: Int16; + leadDistance @12: Float32; + leadRelSpeed @13: Float32; + leadDPath @14: Float32; + leadRadar @15: Int16; + modelDesire @16: Int16; + atcDistance @17: Float32; + + # not used with the dash, TODO: separate structs for dash UI and device UI + audibleAlert @5: AudibleAlert; + + enum VisualAlert { + # these are the choices from the Honda + # map as good as you can for your car + none @0; + fcw @1; + steerRequired @2; + brakePressed @3; + wrongGear @4; + seatbeltUnbuckled @5; + speedTooHigh @6; + ldw @7; + } + + enum AudibleAlert { + none @0; + + engage @1; + disengage @2; + refuse @3; + + warningSoft @4; + warningImmediate @5; + + prompt @6; + promptRepeat @7; + promptDistracted @8; + + longEngaged @10; + longDisengaged @11; + trafficSignGreen @12; + trafficSignChanged @13; + laneChange @14; + stopping @15; + autoHold @16; + engage2 @17; + disengage2 @18; + trafficError @19; + bsdWarning @20; + speedDown @21; + stopStop @22; + audioTurn @9; + reverseGear @23; + audio1 @24; + audio2 @25; + audio3 @26; + audio4 @27; + audio5 @28; + audio6 @29; + audio7 @30; + audio8 @31; + audio9 @32; + audio10 @33; + + nnff @34; + } + } + + gasDEPRECATED @1 :Float32; + brakeDEPRECATED @2 :Float32; + steeringTorqueDEPRECATED @3 :Float32; + activeDEPRECATED @7 :Bool; + rollDEPRECATED @8 :Float32; + pitchDEPRECATED @9 :Float32; + actuatorsOutputDEPRECATED @10 :Actuators; +} + +struct CarOutput { + # Any car specific rate limits or quirks applied by + # the CarController are reflected in actuatorsOutput + # and matches what is sent to the car + actuatorsOutput @0 :CarControl.Actuators; +} + +# ****** car param ****** + +struct CarParams { + brand @0 :Text; # Designates which group a platform falls under. Each folder in opendbc/car is assigned one brand string + carFingerprint @1 :Text; + fuzzyFingerprint @55 :Bool; + + notCar @66 :Bool; # flag for non-car robotics platforms + + pcmCruise @3 :Bool; # is openpilot's state tied to the PCM's cruise state? + enableDsu @5 :Bool; # driving support unit + enableBsm @56 :Bool; # blind spot monitoring + flags @64 :UInt32; # flags for car specific quirks + alphaLongitudinalAvailable @71 :Bool; + extFlags @78 :UInt32; # carrot ext car flags + + minEnableSpeed @7 :Float32; + minSteerSpeed @8 :Float32; + steerAtStandstill @77 :Bool; # is steering available at standstill? just check if it faults + safetyConfigs @62 :List(SafetyConfig); + alternativeExperience @65 :Int16; # panda flag for features like no disengage on gas + + # Car docs fields, not used for control + maxLateralAccel @68 :Float32; + autoResumeSng @69 :Bool; # describes whether car can resume from a stop automatically + + # things about the car in the manual + mass @17 :Float32; # [kg] curb weight: all fluids no cargo + wheelbase @18 :Float32; # [m] distance from rear axle to front axle + centerToFront @19 :Float32; # [m] distance from center of mass to front axle + steerRatio @20 :Float32; # [] ratio of steering wheel angle to front wheel angle + steerRatioRear @21 :Float32; # [] ratio of steering wheel angle to rear wheel angle (usually 0) + + # things we can derive + rotationalInertia @22 :Float32; # [kg*m2] body rotational inertia + tireStiffnessFactor @72 :Float32; # scaling factor used in calculating tireStiffness[Front,Rear] + tireStiffnessFront @23 :Float32; # [N/rad] front tire coeff of stiff + tireStiffnessRear @24 :Float32; # [N/rad] rear tire coeff of stiff + + longitudinalTuning @25 :LongitudinalPIDTuning; + lateralParams @48 :LateralParams; + lateralTuning :union { + pid @26 :LateralPIDTuning; + indiDEPRECATED @27 :LateralINDITuning; + lqrDEPRECATED @40 :LateralLQRTuning; + torque @67 :LateralTorqueTuning; + } + + steerLimitAlert @28 :Bool; + steerLimitTimer @47 :Float32; # time before steerLimitAlert is issued + + vEgoStopping @29 :Float32; # Speed at which the car goes into stopping state + vEgoStarting @59 :Float32; # Speed at which the car goes into starting state + steerControlType @34 :SteerControlType; + radarUnavailable @35 :Bool; # True when radar objects aren't visible on CAN or aren't parsed out + stopAccel @60 :Float32; # Required acceleration to keep vehicle stationary + stoppingDecelRate @52 :Float32; # m/s^2/s while trying to stop + startAccel @32 :Float32; # Required acceleration to get car moving + startingState @70 :Bool; # Does this car make use of special starting state + + steerActuatorDelay @36 :Float32; # Steering wheel actuator delay in seconds + longitudinalActuatorDelay @58 :Float32; # Gas/Brake actuator delay in seconds + openpilotLongitudinalControl @37 :Bool; # is openpilot doing the longitudinal control? + carVin @38 :Text; # VIN number queried during fingerprinting + dashcamOnly @41: Bool; + passive @73: Bool; # is openpilot in control? + transmissionType @43 :TransmissionType; + carFw @44 :List(CarFw); + + radarDelay @74 :Float32; + fingerprintSource @49: FingerprintSource; + networkLocation @50 :NetworkLocation; # Where Panda/C2 is integrated into the car's CAN network + + wheelSpeedFactor @63 :Float32; # Multiplier on wheels speeds to computer actual speeds + + secOcRequired @75 :Bool; # Car requires SecOC message authentication to operate + secOcKeyAvailable @76 :Bool; # Stored SecOC key loaded from params + + struct SafetyConfig { + safetyModel @0 :SafetyModel; + safetyParam @3 :UInt16; + safetyParamDEPRECATED @1 :Int16; + safetyParam2DEPRECATED @2 :UInt32; + } + + struct LateralParams { + torqueBP @0 :List(Int32); + torqueV @1 :List(Int32); + } + + struct LateralPIDTuning { + kpBP @0 :List(Float32); + kpV @1 :List(Float32); + kiBP @2 :List(Float32); + kiV @3 :List(Float32); + kf @4 :Float32; + } + + struct LateralTorqueTuning { + useSteeringAngle @0 :Bool; + kp @1 :Float32; + ki @2 :Float32; + friction @3 :Float32; + kf @4 :Float32; + steeringAngleDeadzoneDeg @5 :Float32; + latAccelFactor @6 :Float32; + latAccelOffset @7 :Float32; + } + + struct LongitudinalPIDTuning { + kpBP @0 :List(Float32); + kpV @1 :List(Float32); + kiBP @2 :List(Float32); + kiV @3 :List(Float32); + kf @6 :Float32; + deadzoneBPDEPRECATED @4 :List(Float32); + deadzoneVDEPRECATED @5 :List(Float32); + } + + struct LateralINDITuning { + outerLoopGainBP @4 :List(Float32); + outerLoopGainV @5 :List(Float32); + innerLoopGainBP @6 :List(Float32); + innerLoopGainV @7 :List(Float32); + timeConstantBP @8 :List(Float32); + timeConstantV @9 :List(Float32); + actuatorEffectivenessBP @10 :List(Float32); + actuatorEffectivenessV @11 :List(Float32); + + outerLoopGainDEPRECATED @0 :Float32; + innerLoopGainDEPRECATED @1 :Float32; + timeConstantDEPRECATED @2 :Float32; + actuatorEffectivenessDEPRECATED @3 :Float32; + } + + struct LateralLQRTuning { + scale @0 :Float32; + ki @1 :Float32; + dcGain @2 :Float32; + + # State space system + a @3 :List(Float32); + b @4 :List(Float32); + c @5 :List(Float32); + + k @6 :List(Float32); # LQR gain + l @7 :List(Float32); # Kalman gain + } + + enum SafetyModel { + silent @0; + hondaNidec @1; + toyota @2; + elm327 @3; + gm @4; + hondaBoschGiraffe @5; + ford @6; + cadillac @7; + hyundai @8; + chrysler @9; + tesla @10; + subaru @11; + gmPassive @12; + mazda @13; + nissan @14; + volkswagen @15; + toyotaIpas @16; + allOutput @17; + gmAscm @18; + noOutput @19; # like silent but without silent CAN TXs + hondaBosch @20; + volkswagenPq @21; + subaruPreglobal @22; # pre-Global platform + hyundaiLegacy @23; + hyundaiCommunity @24; + volkswagenMlb @25; + hongqi @26; + body @27; + hyundaiCanfd @28; + volkswagenMqbEvo @29; + chryslerCusw @30; + psa @31; + fcaGiorgio @32; + rivian @33; + volkswagenMeb @34; + bmw @35; + } + + enum SteerControlType { + torque @0; + angle @1; + + curvatureDEPRECATED @2; + } + + enum TransmissionType { + unknown @0; + automatic @1; # Traditional auto, including DSG + manual @2; # True "stick shift" only + direct @3; # Electric vehicle or other direct drive + cvt @4; + } + + struct CarFw { + ecu @0 :Ecu; + fwVersion @1 :Data; + address @2 :UInt32; + subAddress @3 :UInt8; + responseAddress @4 :UInt32; + request @5 :List(Data); + brand @6 :Text; + bus @7 :UInt8; + logging @8 :Bool; + obdMultiplexing @9 :Bool; + } + + enum Ecu { + eps @0; + abs @1; + fwdRadar @2; + fwdCamera @3; + engine @4; + unknown @5; + transmission @8; # Transmission Control Module + hybrid @18; # hybrid control unit, e.g. Chrysler's HCP, Honda's IMA Control Unit, Toyota's hybrid control computer + srs @9; # airbag + gateway @10; # can gateway + hud @11; # heads up display + combinationMeter @12; # instrument cluster + electricBrakeBooster @15; + shiftByWire @16; + adas @19; + cornerRadar @21; + hvac @20; + parkingAdas @7; # parking assist system ECU, e.g. Toyota's IPAS, Hyundai's RSPA, etc. + epb @22; # electronic parking brake + telematics @23; + body @24; # body control module + + # Toyota only + dsu @6; + + # Honda only + vsa @13; # Vehicle Stability Assist + programmedFuelInjection @14; + + debug @17; + } + + enum FingerprintSource { + can @0; + fw @1; + fixed @2; + } + + enum NetworkLocation { + fwdCamera @0; # Standard/default integration at LKAS camera + gateway @1; # Integration at vehicle's CAN gateway + } + + enableGasInterceptorDEPRECATED @2 :Bool; + enableCameraDEPRECATED @4 :Bool; + enableApgsDEPRECATED @6 :Bool; + steerRateCostDEPRECATED @33 :Float32; + isPandaBlackDEPRECATED @39 :Bool; + hasStockCameraDEPRECATED @57 :Bool; + safetyParamDEPRECATED @10 :Int16; + safetyModelDEPRECATED @9 :SafetyModel; + safetyModelPassiveDEPRECATED @42 :SafetyModel = silent; + minSpeedCanDEPRECATED @51 :Float32; + communityFeatureDEPRECATED @46: Bool; + startingAccelRateDEPRECATED @53 :Float32; + steerMaxBPDEPRECATED @11 :List(Float32); + steerMaxVDEPRECATED @12 :List(Float32); + gasMaxBPDEPRECATED @13 :List(Float32); + gasMaxVDEPRECATED @14 :List(Float32); + brakeMaxBPDEPRECATED @15 :List(Float32); + brakeMaxVDEPRECATED @16 :List(Float32); + directAccelControlDEPRECATED @30 :Bool; + maxSteeringAngleDegDEPRECATED @54 :Float32; + longitudinalActuatorDelayLowerBoundDEPRECATED @61 :Float32; + stoppingControlDEPRECATED @31 :Bool; # Does the car allow full control even at lows speeds when stopping + radarTimeStep @45: Float32; # time delta between radar updates, 20Hz is very standard +} diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py new file mode 100644 index 0000000000..a846a743ea --- /dev/null +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -0,0 +1,234 @@ +import os +import time + +from opendbc.car import gen_empty_fingerprint +from opendbc.car.can_definitions import CanRecvCallable, CanSendCallable +from opendbc.car.carlog import carlog +from opendbc.car.structs import CarParams, CarParamsT +from opendbc.car.fingerprints import eliminate_incompatible_cars, all_legacy_fingerprint_cars +from opendbc.car.fw_versions import ObdCallback, get_fw_versions_ordered, get_present_ecus, match_fw_to_car +from opendbc.car.mock.values import CAR as MOCK +from opendbc.car.values import BRANDS +from opendbc.car.vin import get_vin, is_valid_vin, VIN_UNKNOWN + +from common.params import Params + + +FRAME_FINGERPRINT = 100 # 1s + + +def load_interfaces(brand_names): + ret = {} + for brand_name in brand_names: + # BMW is in selfdrive, not opendbc + if brand_name == 'bmw': + path = f'openpilot.selfdrive.car.{brand_name}' + else: + path = f'opendbc.car.{brand_name}' + try: + CarInterface = __import__(path + '.interface', fromlist=['CarInterface']).CarInterface + for model_name in brand_names[brand_name]: + ret[model_name] = CarInterface + except ImportError as e: + carlog.warning(f"Failed to load interface for {brand_name}: {e}") + return ret + + +def _get_interface_names() -> dict[str, list[str]]: + # returns a dict of brand name and its respective models + brand_names = {} + for brand in BRANDS: + brand_name = brand.__module__.split('.')[-2] + brand_names[brand_name] = [model.value for model in brand] + + return brand_names + + +# imports from directory opendbc/car// +interface_names = _get_interface_names() +interfaces = load_interfaces(interface_names) + + +def can_fingerprint(can_recv: CanRecvCallable) -> tuple[str | None, dict[int, dict]]: + finger = gen_empty_fingerprint() + candidate_cars = {i: all_legacy_fingerprint_cars() for i in [0, 1]} # attempt fingerprint on both bus 0 and 1 + frame = 0 + car_fingerprint = None + done = False + + while not done: + # can_recv(wait_for_one=True) may return zero or multiple packets, so we increment frame for each one we receive + can_packets = can_recv(wait_for_one=True) + for can_packet in can_packets: + for can in can_packet: + # The fingerprint dict is generated for all buses, this way the car interface + # can use it to detect a (valid) multipanda setup and initialize accordingly + if can.src < 128: + if can.src not in finger: + finger[can.src] = {} + finger[can.src][can.address] = len(can.dat) + + for b in candidate_cars: + # Ignore extended messages and VIN query response. + if can.src == b and can.address < 0x800 and can.address not in (0x7df, 0x7e0, 0x7e8): + candidate_cars[b] = eliminate_incompatible_cars(can, candidate_cars[b]) + + # if we only have one car choice and the time since we got our first + # message has elapsed, exit + for b in candidate_cars: + if len(candidate_cars[b]) == 1 and frame > FRAME_FINGERPRINT: + # fingerprint done + car_fingerprint = candidate_cars[b][0] + + # bail if no cars left or we've been waiting for more than 2s + failed = (all(len(cc) == 0 for cc in candidate_cars.values()) and frame > FRAME_FINGERPRINT) or frame > 200 + succeeded = car_fingerprint is not None + done = failed or succeeded + + frame += 1 + + return car_fingerprint, finger + + +# **** for use live only **** +def fingerprint(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, num_pandas: int, + cached_params: CarParamsT | None) -> tuple[str | None, dict, str, list[CarParams.CarFw], CarParams.FingerprintSource, bool]: + fixed_fingerprint = os.environ.get('FINGERPRINT', "") + skip_fw_query = os.environ.get('SKIP_FW_QUERY', False) + disable_fw_cache = os.environ.get('DISABLE_FW_CACHE', False) + ecu_rx_addrs = set() + + start_time = time.monotonic() + if not skip_fw_query: + if cached_params is not None and cached_params.brand != "mock" and len(cached_params.carFw) > 0 and \ + cached_params.carVin is not VIN_UNKNOWN and not disable_fw_cache: + carlog.warning("Using cached CarParams") + vin_rx_addr, vin_rx_bus, vin = -1, -1, cached_params.carVin + car_fw = list(cached_params.carFw) + cached = True + else: + carlog.warning("Getting VIN & FW versions") + # enable OBD multiplexing for VIN query + # NOTE: this takes ~0.1s and is relied on to allow sendcan subscriber to connect in time + set_obd_multiplexing(True) + # VIN query only reliably works through OBDII + vin_rx_addr, vin_rx_bus, vin = get_vin(can_recv, can_send, (0, 1)) + ecu_rx_addrs = get_present_ecus(can_recv, can_send, set_obd_multiplexing, num_pandas=num_pandas) + car_fw = get_fw_versions_ordered(can_recv, can_send, set_obd_multiplexing, vin, ecu_rx_addrs, num_pandas=num_pandas) + cached = False + + exact_fw_match, fw_candidates = match_fw_to_car(car_fw, vin) + else: + vin_rx_addr, vin_rx_bus, vin = -1, -1, VIN_UNKNOWN + exact_fw_match, fw_candidates, car_fw = True, set(), [] + cached = False + + if not is_valid_vin(vin): + carlog.error({"event": "Malformed VIN", "vin": vin}) + vin = VIN_UNKNOWN + carlog.warning("VIN %s", vin) + + # disable OBD multiplexing for CAN fingerprinting and potential ECU knockouts + set_obd_multiplexing(False) + + fw_query_time = time.monotonic() - start_time + + # CAN fingerprint + # drain CAN socket so we get the latest messages + can_recv() + car_fingerprint, finger = can_fingerprint(can_recv) + + exact_match = True + source = CarParams.FingerprintSource.can + + # If FW query returns exactly 1 candidate, use it + if len(fw_candidates) == 1: + car_fingerprint = list(fw_candidates)[0] + source = CarParams.FingerprintSource.fw + exact_match = exact_fw_match + + if fixed_fingerprint: + car_fingerprint = fixed_fingerprint + source = CarParams.FingerprintSource.fixed + + carlog.error({"event": "fingerprinted", "car_fingerprint": str(car_fingerprint), "source": source, "fuzzy": not exact_match, + "cached": cached, "fw_count": len(car_fw), "ecu_responses": list(ecu_rx_addrs), "vin_rx_addr": vin_rx_addr, + "vin_rx_bus": vin_rx_bus, "fingerprints": repr(finger), "fw_query_time": fw_query_time}) + + return car_fingerprint, finger, vin, car_fw, source, exact_match + + +def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, alpha_long_allowed: bool, + is_release: bool, num_pandas: int = 1, cached_params: CarParamsT | None = None): + candidate, fingerprints, vin, car_fw, source, exact_match = fingerprint(can_recv, can_send, set_obd_multiplexing, num_pandas, cached_params) + + if candidate is None: + carlog.error({"event": "car doesn't match any fingerprints", "fingerprints": repr(fingerprints)}) + candidate = "MOCK" + + # Force BMW car selection if not already set + selected_car = Params().get("CarSelected3") + if not selected_car: + # Default to BMW E90 on first boot + Params().put("CarSelected3", "BMW_E90") + selected_car = b"BMW_E90" + + if selected_car: + def find_car(name: str): + from opendbc.car.hyundai.values import CAR as HYUNDAI + from opendbc.car.gm.values import CAR as GM + from opendbc.car.toyota.values import CAR as TOYOTA + from opendbc.car.mazda.values import CAR as MAZDA + try: + from openpilot.selfdrive.car.bmw.values import CAR as BMW + except ImportError: + BMW = [] + for platform in GM: + for doc in platform.config.car_docs: + if name == doc.name: + return platform + for platform in TOYOTA: + for doc in platform.config.car_docs: + if name == doc.name: + return platform + for platform in HYUNDAI: + for doc in platform.config.car_docs: + if name == doc.name: + return platform + for platform in MAZDA: + for doc in platform.config.car_docs: + if name == doc.name: + return platform + for platform in BMW: + # Check both platform name and doc names + if name == str(platform): + return platform + for doc in platform.config.car_docs: + if name == doc.name: + return platform + return None + found_car = find_car(selected_car.decode() if isinstance(selected_car, bytes) else selected_car) + if found_car is not None: + candidate = found_car + + print(f"SelectedCar = {candidate}") + Params().put("CarName", str(candidate)) + + Params().put("FingerPrints", str(fingerprints)) + CarInterface = interfaces[candidate] + CP: CarParams = CarInterface.get_params(candidate, fingerprints, car_fw, alpha_long_allowed, is_release, docs=False) + CP.carVin = vin + CP.carFw = car_fw + CP.fingerprintSource = source + CP.fuzzyFingerprint = not exact_match + + print("Carrot GitBranch = {}, {}".format(Params().get("GitBranch"), Params().get("GitCommitDate"))) + + return interfaces[CP.carFingerprint](CP) + + +def get_demo_car_params(): + platform = MOCK.MOCK + CarInterface = interfaces[platform] + CP = CarInterface.get_non_essential_params(platform) + return CP diff --git a/opendbc_repo/opendbc/car/carlog.py b/opendbc_repo/opendbc/car/carlog.py new file mode 100644 index 0000000000..5683d2a394 --- /dev/null +++ b/opendbc_repo/opendbc/car/carlog.py @@ -0,0 +1,12 @@ +import os +import logging + +# set up logging +LOGPRINT = os.environ.get('LOGPRINT', 'INFO').upper() +carlog = logging.getLogger('carlog') +carlog.setLevel(LOGPRINT) +carlog.propagate = False + +handler = logging.StreamHandler() +handler.setFormatter(logging.Formatter('%(message)s')) +carlog.addHandler(handler) diff --git a/opendbc_repo/opendbc/car/ccp.py b/opendbc_repo/opendbc/car/ccp.py new file mode 100644 index 0000000000..52ba484637 --- /dev/null +++ b/opendbc_repo/opendbc/car/ccp.py @@ -0,0 +1,373 @@ +import sys +import time +import struct +from enum import IntEnum, Enum +from dataclasses import dataclass + +@dataclass +class ExchangeStationIdsReturn: + id_length: int + data_type: int + available: int + protected: int + +@dataclass +class GetDaqListSizeReturn: + list_size: int + first_pid: int + +@dataclass +class GetSessionStatusReturn: + status: int + info: int | None + +@dataclass +class DiagnosticServiceReturn: + length: int + type: int + +@dataclass +class ActionServiceReturn: + length: int + type: int + +class COMMAND_CODE(IntEnum): + CONNECT = 0x01 + SET_MTA = 0x02 + DNLOAD = 0x03 + UPLOAD = 0x04 + TEST = 0x05 + START_STOP = 0x06 + DISCONNECT = 0x07 + START_STOP_ALL = 0x08 + GET_ACTIVE_CAL_PAGE = 0x09 + SET_S_STATUS = 0x0C + GET_S_STATUS = 0x0D + BUILD_CHKSUM = 0x0E + SHORT_UP = 0x0F + CLEAR_MEMORY = 0x10 + SELECT_CAL_PAGE = 0x11 + GET_SEED = 0x12 + UNLOCK = 0x13 + GET_DAQ_SIZE = 0x14 + SET_DAQ_PTR = 0x15 + WRITE_DAQ = 0x16 + EXCHANGE_ID = 0x17 + PROGRAM = 0x18 + MOVE = 0x19 + GET_CCP_VERSION = 0x1B + DIAG_SERVICE = 0x20 + ACTION_SERVICE = 0x21 + PROGRAM_6 = 0x22 + DNLOAD_6 = 0x23 + +COMMAND_RETURN_CODES = { + 0x00: "acknowledge / no error", + 0x01: "DAQ processor overload", + 0x10: "command processor busy", + 0x11: "DAQ processor busy", + 0x12: "internal timeout", + 0x18: "key request", + 0x19: "session status request", + 0x20: "cold start request", + 0x21: "cal. data init. request", + 0x22: "DAQ list init. request", + 0x23: "code update request", + 0x30: "unknown command", + 0x31: "command syntax", + 0x32: "parameter(s) out of range", + 0x33: "access denied", + 0x34: "overload", + 0x35: "access locked", + 0x36: "resource/function not available", +} + +class BYTE_ORDER(Enum): + LITTLE_ENDIAN = '<' + BIG_ENDIAN = '>' + +class CommandTimeoutError(Exception): + pass + +class CommandCounterError(Exception): + pass + +class CommandResponseError(Exception): + def __init__(self, message, return_code): + super().__init__() + self.message = message + self.return_code = return_code + + def __str__(self): + return self.message + +class CcpClient: + def __init__(self, panda, tx_addr: int, rx_addr: int, bus: int=0, byte_order: BYTE_ORDER=BYTE_ORDER.BIG_ENDIAN, debug=False): + self.tx_addr = tx_addr + self.rx_addr = rx_addr + self.can_bus = bus + self.byte_order = byte_order + self.debug = debug + self._panda = panda + self._command_counter = -1 + + def _send_cro(self, cmd: int, dat: bytes = b"") -> None: + self._command_counter = (self._command_counter + 1) & 0xFF + tx_data = (bytes([cmd, self._command_counter]) + dat).ljust(8, b"\x00") + if self.debug: + print(f"CAN-TX: {hex(self.tx_addr)} - 0x{bytes.hex(tx_data)}") + assert len(tx_data) == 8, "data is not 8 bytes" + self._panda.can_clear(self.can_bus) + self._panda.can_clear(0xFFFF) + self._panda.can_send(self.tx_addr, tx_data, self.can_bus) + + def _recv_dto(self, timeout: float) -> bytes: + start_time = time.time() + while time.time() - start_time < timeout: + msgs = self._panda.can_recv() or [] + if len(msgs) >= 256: + print("CAN RX buffer overflow!!!", file=sys.stderr) + for rx_addr, rx_data_bytearray, rx_bus in msgs: + if rx_bus == self.can_bus and rx_addr == self.rx_addr: + rx_data = bytes(rx_data_bytearray) + if self.debug: + print(f"CAN-RX: {hex(rx_addr)} - 0x{bytes.hex(rx_data)}") + assert len(rx_data) == 8, f"message length not 8: {len(rx_data)}" + + pid = rx_data[0] + if pid == 0xFF or pid == 0xFE: + err = rx_data[1] + err_desc = COMMAND_RETURN_CODES.get(err, "unknown error") + ctr = rx_data[2] + dat = rx_data[3:] + + if pid == 0xFF and self._command_counter != ctr: + raise CommandCounterError(f"counter invalid: {ctr} != {self._command_counter}") + + if err >= 0x10 and err <= 0x12: + if self.debug: + print(f"CCP-WAIT: {hex(err)} - {err_desc}") + start_time = time.time() + continue + + if err >= 0x30: + raise CommandResponseError(f"{hex(err)} - {err_desc}", err) + else: + dat = rx_data[1:] + + return dat + time.sleep(0.001) + + raise CommandTimeoutError("timeout waiting for response") + + # commands + def connect(self, station_addr: int) -> None: + if station_addr > 65535: + raise ValueError("station address must be less than 65536") + # NOTE: station address is always little endian + self._send_cro(COMMAND_CODE.CONNECT, struct.pack(" ExchangeStationIdsReturn: + self._send_cro(COMMAND_CODE.EXCHANGE_ID, device_id_info) + resp = self._recv_dto(0.025) + return ExchangeStationIdsReturn(id_length=resp[0], data_type=resp[1], available=resp[2], protected=resp[3]) + + def get_seed(self, resource_mask: int) -> bytes: + if resource_mask > 255: + raise ValueError("resource mask must be less than 256") + self._send_cro(COMMAND_CODE.GET_SEED, bytes([resource_mask])) + resp = self._recv_dto(0.025) + # protected = resp[0] == 0 + seed = resp[1:] + return seed + + def unlock(self, key: bytes) -> int: + if len(key) > 6: + raise ValueError("max key size is 6 bytes") + self._send_cro(COMMAND_CODE.UNLOCK, key) + resp = self._recv_dto(0.025) + status = resp[0] + return status + + def set_memory_transfer_address(self, mta_num: int, addr_ext: int, addr: int) -> None: + if mta_num > 255: + raise ValueError("MTA number must be less than 256") + if addr_ext > 255: + raise ValueError("address extension must be less than 256") + self._send_cro(COMMAND_CODE.SET_MTA, bytes([mta_num, addr_ext]) + struct.pack(f"{self.byte_order.value}I", addr)) + self._recv_dto(0.025) + + def download(self, data: bytes) -> int: + if len(data) > 5: + raise ValueError("max data size is 5 bytes") + self._send_cro(COMMAND_CODE.DNLOAD, bytes([len(data)]) + data) + resp = self._recv_dto(0.025) + # mta_addr_ext = resp[0] + mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] + return mta_addr # type: ignore + + def download_6_bytes(self, data: bytes) -> int: + if len(data) != 6: + raise ValueError("data size must be 6 bytes") + self._send_cro(COMMAND_CODE.DNLOAD_6, data) + resp = self._recv_dto(0.025) + # mta_addr_ext = resp[0] + mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] + return mta_addr # type: ignore + + def upload(self, size: int) -> bytes: + if size > 5: + raise ValueError("size must be less than 6") + self._send_cro(COMMAND_CODE.UPLOAD, bytes([size])) + return self._recv_dto(0.025)[:size] + + def short_upload(self, size: int, addr_ext: int, addr: int) -> bytes: + if size > 5: + raise ValueError("size must be less than 6") + if addr_ext > 255: + raise ValueError("address extension must be less than 256") + self._send_cro(COMMAND_CODE.SHORT_UP, bytes([size, addr_ext]) + struct.pack(f"{self.byte_order.value}I", addr)) + return self._recv_dto(0.025)[:size] + + def select_calibration_page(self) -> None: + self._send_cro(COMMAND_CODE.SELECT_CAL_PAGE) + self._recv_dto(0.025) + + def get_daq_list_size(self, list_num: int, can_id: int = 0) -> GetDaqListSizeReturn: + if list_num > 255: + raise ValueError("list number must be less than 256") + self._send_cro(COMMAND_CODE.GET_DAQ_SIZE, bytes([list_num, 0]) + struct.pack(f"{self.byte_order.value}I", can_id)) + resp = self._recv_dto(0.025) + return GetDaqListSizeReturn(list_size=resp[0], first_pid=resp[1]) + + def set_daq_list_pointer(self, list_num: int, odt_num: int, element_num: int) -> None: + if list_num > 255: + raise ValueError("list number must be less than 256") + if odt_num > 255: + raise ValueError("ODT number must be less than 256") + if element_num > 255: + raise ValueError("element number must be less than 256") + self._send_cro(COMMAND_CODE.SET_DAQ_PTR, bytes([list_num, odt_num, element_num])) + self._recv_dto(0.025) + + def write_daq_list_entry(self, size: int, addr_ext: int, addr: int) -> None: + if size > 255: + raise ValueError("size must be less than 256") + if addr_ext > 255: + raise ValueError("address extension must be less than 256") + self._send_cro(COMMAND_CODE.WRITE_DAQ, bytes([size, addr_ext]) + struct.pack(f"{self.byte_order.value}I", addr)) + self._recv_dto(0.025) + + def start_stop_transmission(self, mode: int, list_num: int, odt_num: int, channel_num: int, rate_prescaler: int = 0) -> None: + if mode > 255: + raise ValueError("mode must be less than 256") + if list_num > 255: + raise ValueError("list number must be less than 256") + if odt_num > 255: + raise ValueError("ODT number must be less than 256") + if channel_num > 255: + raise ValueError("channel number must be less than 256") + if rate_prescaler > 65535: + raise ValueError("rate prescaler must be less than 65536") + self._send_cro(COMMAND_CODE.START_STOP, bytes([mode, list_num, odt_num, channel_num]) + struct.pack(f"{self.byte_order.value}H", rate_prescaler)) + self._recv_dto(0.025) + + def disconnect(self, station_addr: int, temporary: bool = False) -> None: + if station_addr > 65535: + raise ValueError("station address must be less than 65536") + # NOTE: station address is always little endian + self._send_cro(COMMAND_CODE.DISCONNECT, bytes([int(not temporary), 0x00]) + struct.pack(" None: + if status > 255: + raise ValueError("status must be less than 256") + self._send_cro(COMMAND_CODE.SET_S_STATUS, bytes([status])) + self._recv_dto(0.025) + + def get_session_status(self) -> GetSessionStatusReturn: + self._send_cro(COMMAND_CODE.GET_S_STATUS) + resp = self._recv_dto(0.025) + info = resp[2] if resp[1] else None + return GetSessionStatusReturn(status=resp[0], info=info) + + def build_checksum(self, size: int) -> bytes: + self._send_cro(COMMAND_CODE.BUILD_CHKSUM, struct.pack(f"{self.byte_order.value}I", size)) + resp = self._recv_dto(30.0) + chksum_size = resp[0] + assert chksum_size <= 4, "checksum more than 4 bytes" + chksum = resp[1:1+chksum_size] + return chksum + + def clear_memory(self, size: int) -> None: + self._send_cro(COMMAND_CODE.CLEAR_MEMORY, struct.pack(f"{self.byte_order.value}I", size)) + self._recv_dto(30.0) + + def program(self, size: int, data: bytes) -> int: + if size > 5: + raise ValueError("size must be less than 6") + if len(data) > 5: + raise ValueError("max data size is 5 bytes") + self._send_cro(COMMAND_CODE.PROGRAM, bytes([size]) + data) + resp = self._recv_dto(0.1) + # mta_addr_ext = resp[0] + mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] + return mta_addr # type: ignore + + def program_6_bytes(self, data: bytes) -> int: + if len(data) != 6: + raise ValueError("data size must be 6 bytes") + self._send_cro(COMMAND_CODE.PROGRAM_6, data) + resp = self._recv_dto(0.1) + # mta_addr_ext = resp[0] + mta_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] + return mta_addr # type: ignore + + def move_memory_block(self, size: int) -> None: + self._send_cro(COMMAND_CODE.MOVE, struct.pack(f"{self.byte_order.value}I", size)) + self._recv_dto(0.025) + + def diagnostic_service(self, service_num: int, data: bytes = b"") -> DiagnosticServiceReturn: + if service_num > 65535: + raise ValueError("service number must be less than 65536") + if len(data) > 4: + raise ValueError("max data size is 4 bytes") + self._send_cro(COMMAND_CODE.DIAG_SERVICE, struct.pack(f"{self.byte_order.value}H", service_num) + data) + resp = self._recv_dto(0.025) + return DiagnosticServiceReturn(length=resp[0], type=resp[1]) + + def action_service(self, service_num: int, data: bytes = b"") -> ActionServiceReturn: + if service_num > 65535: + raise ValueError("service number must be less than 65536") + if len(data) > 4: + raise ValueError("max data size is 4 bytes") + self._send_cro(COMMAND_CODE.ACTION_SERVICE, struct.pack(f"{self.byte_order.value}H", service_num) + data) + resp = self._recv_dto(0.025) + return ActionServiceReturn(length=resp[0], type=resp[1]) + + def test_availability(self, station_addr: int) -> None: + if station_addr > 65535: + raise ValueError("station address must be less than 65536") + # NOTE: station address is always little endian + self._send_cro(COMMAND_CODE.TEST, struct.pack(" None: + if mode > 255: + raise ValueError("mode must be less than 256") + self._send_cro(COMMAND_CODE.START_STOP_ALL, bytes([mode])) + self._recv_dto(0.025) + + def get_active_calibration_page(self): + self._send_cro(COMMAND_CODE.GET_ACTIVE_CAL_PAGE) + resp = self._recv_dto(0.025) + # cal_addr_ext = resp[0] + cal_addr = struct.unpack(f"{self.byte_order.value}I", resp[1:5])[0] + return cal_addr + + def get_version(self, desired_version: float = 2.1) -> float: + major, minor = map(int, str(desired_version).split(".")) + self._send_cro(COMMAND_CODE.GET_CCP_VERSION, bytes([major, minor])) + resp = self._recv_dto(0.025) + return float(f"{resp[0]}.{resp[1]}") diff --git a/opendbc_repo/opendbc/car/chrysler/__init__.py b/opendbc_repo/opendbc/car/chrysler/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/chrysler/carcontroller.py b/opendbc_repo/opendbc/car/chrysler/carcontroller.py new file mode 100644 index 0000000000..a11018fc71 --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/carcontroller.py @@ -0,0 +1,83 @@ +from opendbc.can import CANPacker +from opendbc.car import Bus, DT_CTRL, apply_meas_steer_torque_limits +from opendbc.car.chrysler import chryslercan +from opendbc.car.chrysler.values import RAM_CARS, CarControllerParams, ChryslerFlags +from opendbc.car.interfaces import CarControllerBase + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.apply_torque_last = 0 + + self.hud_count = 0 + self.last_lkas_falling_edge = 0 + self.lkas_control_bit_prev = False + self.last_button_frame = 0 + + self.packer = CANPacker(dbc_names[Bus.pt]) + self.params = CarControllerParams(CP) + + def update(self, CC, CS, now_nanos): + can_sends = [] + + lkas_active = CC.latActive and self.lkas_control_bit_prev + + # cruise buttons + if (self.frame - self.last_button_frame) * DT_CTRL > 0.05: + das_bus = 2 if self.CP.carFingerprint in RAM_CARS else 0 + + # ACC cancellation + if CC.cruiseControl.cancel: + self.last_button_frame = self.frame + can_sends.append(chryslercan.create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, cancel=True)) + + # ACC resume from standstill + elif CC.cruiseControl.resume: + self.last_button_frame = self.frame + can_sends.append(chryslercan.create_cruise_buttons(self.packer, CS.button_counter + 1, das_bus, resume=True)) + + # HUD alerts + if self.frame % 25 == 0: + if CS.lkas_car_model != -1: + can_sends.append(chryslercan.create_lkas_hud(self.packer, self.CP, lkas_active, CC.hudControl.visualAlert, + self.hud_count, CS.lkas_car_model, CS.auto_high_beam)) + self.hud_count += 1 + + # steering + if self.frame % self.params.STEER_STEP == 0: + + # TODO: can we make this more sane? why is it different for all the cars? + lkas_control_bit = self.lkas_control_bit_prev + if CS.out.vEgo > self.CP.minSteerSpeed: + lkas_control_bit = True + elif self.CP.flags & ChryslerFlags.HIGHER_MIN_STEERING_SPEED: + if CS.out.vEgo < (self.CP.minSteerSpeed - 3.0): + lkas_control_bit = False + elif self.CP.carFingerprint in RAM_CARS: + if CS.out.vEgo < (self.CP.minSteerSpeed - 0.5): + lkas_control_bit = False + + # EPS faults if LKAS re-enables too quickly + lkas_control_bit = lkas_control_bit and (self.frame - self.last_lkas_falling_edge > 200) + + if not lkas_control_bit and self.lkas_control_bit_prev: + self.last_lkas_falling_edge = self.frame + self.lkas_control_bit_prev = lkas_control_bit + + # steer torque + new_torque = int(round(CC.actuators.torque * self.params.STEER_MAX)) + apply_torque = apply_meas_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorqueEps, self.params) + if not lkas_active or not lkas_control_bit: + apply_torque = 0 + self.apply_torque_last = apply_torque + + can_sends.append(chryslercan.create_lkas_command(self.packer, self.CP, int(apply_torque), lkas_control_bit)) + + self.frame += 1 + + new_actuators = CC.actuators.as_builder() + new_actuators.torque = self.apply_torque_last / self.params.STEER_MAX + new_actuators.torqueOutputCan = self.apply_torque_last + + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/chrysler/carstate.py b/opendbc_repo/opendbc/car/chrysler/carstate.py new file mode 100644 index 0000000000..51a0822428 --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/carstate.py @@ -0,0 +1,115 @@ +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, create_button_events, structs +from opendbc.car.chrysler.values import DBC, STEER_THRESHOLD, RAM_CARS +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase + +ButtonType = structs.CarState.ButtonEvent.Type + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + self.CP = CP + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + + self.auto_high_beam = 0 + self.button_counter = 0 + self.lkas_car_model = -1 + + if CP.carFingerprint in RAM_CARS: + self.shifter_values = can_define.dv["Transmission_Status"]["Gear_State"] + else: + self.shifter_values = can_define.dv["GEAR"]["PRNDL"] + + self.distance_button = 0 + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + + ret = structs.CarState() + + prev_distance_button = self.distance_button + self.distance_button = cp.vl["CRUISE_BUTTONS"]["ACC_Distance_Dec"] + + # lock info + ret.doorOpen = any([cp.vl["BCM_1"]["DOOR_OPEN_FL"], + cp.vl["BCM_1"]["DOOR_OPEN_FR"], + cp.vl["BCM_1"]["DOOR_OPEN_RL"], + cp.vl["BCM_1"]["DOOR_OPEN_RR"]]) + ret.seatbeltUnlatched = cp.vl["ORC_1"]["SEATBELT_DRIVER_UNLATCHED"] == 1 + + # brake pedal + ret.brake = 0 + ret.brakePressed = cp.vl["ESP_1"]['Brake_Pedal_State'] == 1 # Physical brake pedal switch + + # gas pedal + ret.gas = cp.vl["ECM_5"]["Accelerator_Position"] + ret.gasPressed = ret.gas > 1e-5 + + # car speed + if self.CP.carFingerprint in RAM_CARS: + ret.vEgoRaw = cp.vl["ESP_8"]["Vehicle_Speed"] * CV.KPH_TO_MS + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(cp.vl["Transmission_Status"]["Gear_State"], None)) + else: + ret.vEgoRaw = (cp.vl["SPEED_1"]["SPEED_LEFT"] + cp.vl["SPEED_1"]["SPEED_RIGHT"]) / 2. + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(cp.vl["GEAR"]["PRNDL"], None)) + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = not ret.vEgoRaw > 0.001 + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["ESP_6"]["WHEEL_SPEED_FL"], + cp.vl["ESP_6"]["WHEEL_SPEED_FR"], + cp.vl["ESP_6"]["WHEEL_SPEED_RL"], + cp.vl["ESP_6"]["WHEEL_SPEED_RR"], + unit=1, + ) + + # button presses + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_stalk(200, cp.vl["STEERING_LEVERS"]["TURN_SIGNALS"] == 1, + cp.vl["STEERING_LEVERS"]["TURN_SIGNALS"] == 2) + ret.genericToggle = cp.vl["STEERING_LEVERS"]["HIGH_BEAM_PRESSED"] == 1 + + # steering wheel + ret.steeringAngleDeg = cp.vl["STEERING"]["STEERING_ANGLE"] + cp.vl["STEERING"]["STEERING_ANGLE_HP"] + ret.steeringRateDeg = cp.vl["STEERING"]["STEERING_RATE"] + ret.steeringTorque = cp.vl["EPS_2"]["COLUMN_TORQUE"] + ret.steeringTorqueEps = cp.vl["EPS_2"]["EPS_TORQUE_MOTOR"] + ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD + + # cruise state + cp_cruise = cp_cam if self.CP.carFingerprint in RAM_CARS else cp + + ret.cruiseState.available = cp_cruise.vl["DAS_3"]["ACC_AVAILABLE"] == 1 + ret.cruiseState.enabled = cp_cruise.vl["DAS_3"]["ACC_ACTIVE"] == 1 + ret.cruiseState.speed = cp_cruise.vl["DAS_4"]["ACC_SET_SPEED_KPH"] * CV.KPH_TO_MS + ret.cruiseState.nonAdaptive = cp_cruise.vl["DAS_4"]["ACC_STATE"] in (1, 2) # 1 NormalCCOn and 2 NormalCCSet + ret.cruiseState.standstill = cp_cruise.vl["DAS_3"]["ACC_STANDSTILL"] == 1 + ret.accFaulted = cp_cruise.vl["DAS_3"]["ACC_FAULTED"] != 0 + + if self.CP.carFingerprint in RAM_CARS: + # Auto High Beam isn't Located in this message on chrysler or jeep currently located in 729 message + self.auto_high_beam = cp_cam.vl["DAS_6"]['AUTO_HIGH_BEAM_ON'] + ret.steerFaultTemporary = cp.vl["EPS_3"]["DASM_FAULT"] == 1 + else: + ret.steerFaultTemporary = cp.vl["EPS_2"]["LKAS_TEMPORARY_FAULT"] == 1 + ret.steerFaultPermanent = cp.vl["EPS_2"]["LKAS_STATE"] == 4 + + # blindspot sensors + if self.CP.enableBsm: + ret.leftBlindspot = cp.vl["BSM_1"]["LEFT_STATUS"] == 1 + ret.rightBlindspot = cp.vl["BSM_1"]["RIGHT_STATUS"] == 1 + + self.lkas_car_model = cp_cam.vl["DAS_6"]["CAR_MODEL"] + self.button_counter = cp.vl["CRUISE_BUTTONS"]["COUNTER"] + + ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) + + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + } diff --git a/opendbc_repo/opendbc/car/chrysler/chryslercan.py b/opendbc_repo/opendbc/car/chrysler/chryslercan.py new file mode 100644 index 0000000000..76d05d6240 --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/chryslercan.py @@ -0,0 +1,112 @@ +from opendbc.car import structs +from opendbc.car.crc import CRC8J1850 +from opendbc.car.chrysler.values import RAM_CARS + +GearShifter = structs.CarState.GearShifter +VisualAlert = structs.CarControl.HUDControl.VisualAlert + +def create_lkas_hud(packer, CP, lkas_active, hud_alert, hud_count, car_model, auto_high_beam): + # LKAS_HUD - Controls what lane-keeping icon is displayed + + # == Color == + # 0 hidden? + # 1 white + # 2 green + # 3 ldw + + # == Lines == + # 03 white Lines + # 04 grey lines + # 09 left lane close + # 0A right lane close + # 0B left Lane very close + # 0C right Lane very close + # 0D left cross cross + # 0E right lane cross + + # == Alerts == + # 7 Normal + # 6 lane departure place hands on wheel + + color = 2 if lkas_active else 1 + lines = 3 if lkas_active else 0 + alerts = 7 if lkas_active else 0 + + if hud_count < (1 * 4): # first 3 seconds, 4Hz + alerts = 1 + + if hud_alert in (VisualAlert.ldw, VisualAlert.steerRequired): + color = 4 + lines = 0 + alerts = 6 + + values = { + "LKAS_ICON_COLOR": color, + "CAR_MODEL": car_model, + "LKAS_LANE_LINES": lines, + "LKAS_ALERTS": alerts, + } + + if CP.carFingerprint in RAM_CARS: + values['AUTO_HIGH_BEAM_ON'] = auto_high_beam + + return packer.make_can_msg("DAS_6", 0, values) + + +def create_lkas_command(packer, CP, apply_torque, lkas_control_bit): + # LKAS_COMMAND Lane-keeping signal to turn the wheel + enabled_val = 2 if CP.carFingerprint in RAM_CARS else 1 + values = { + "STEERING_TORQUE": apply_torque, + "LKAS_CONTROL_BIT": enabled_val if lkas_control_bit else 0, + } + return packer.make_can_msg("LKAS_COMMAND", 0, values) + + +def create_cruise_buttons(packer, frame, bus, cancel=False, resume=False): + values = { + "ACC_Cancel": cancel, + "ACC_Resume": resume, + "COUNTER": frame % 0x10, + } + return packer.make_can_msg("CRUISE_BUTTONS", bus, values) + + +def chrysler_checksum(address: int, sig, d: bytearray) -> int: + checksum = 0xFF + for j in range(len(d) - 1): + curr = d[j] + shift = 0x80 + for _ in range(8): + bit_sum = curr & shift + temp_chk = checksum & 0x80 + if bit_sum: + bit_sum = 0x1C + if temp_chk: + bit_sum = 1 + checksum = (checksum << 1) & 0xFF + temp_chk = checksum | 1 + bit_sum ^= temp_chk + else: + if temp_chk: + bit_sum = 0x1D + checksum = (checksum << 1) & 0xFF + bit_sum ^= checksum + checksum = bit_sum & 0xFF + shift >>= 1 + return (~checksum) & 0xFF + + +def fca_giorgio_checksum(address: int, sig, d: bytearray) -> int: + crc = 0 + for i in range(len(d) - 1): + crc ^= d[i] + crc = CRC8J1850[crc] + if address == 0xDE: + return crc ^ 0x10 + elif address == 0x106: + return crc ^ 0xF6 + elif address == 0x122: + return crc ^ 0xF1 + else: + return crc ^ 0x0A diff --git a/opendbc_repo/opendbc/car/chrysler/fingerprints.py b/opendbc_repo/opendbc/car/chrysler/fingerprints.py new file mode 100644 index 0000000000..7cd90dcb13 --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/fingerprints.py @@ -0,0 +1,783 @@ +""" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.""" +from opendbc.car.structs import CarParams +from opendbc.car.chrysler.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.CHRYSLER_PACIFICA_2018: { + (Ecu.combinationMeter, 0x742, None): [ + b'68227902AF', + b'68227902AG', + b'68227902AH', + b'68227905AG', + b'68360252AC', + ], + (Ecu.srs, 0x744, None): [ + b'68211617AF', + b'68211617AG', + b'68358974AC', + b'68405937AA', + ], + (Ecu.abs, 0x747, None): [ + b'68222747AG', + b'68330876AA', + b'68330876AB', + b'68352227AA', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672758AA', + b'04672758AB', + b'68226356AF', + b'68226356AH', + b'68226356AI', + ], + (Ecu.eps, 0x75a, None): [ + b'68288891AE', + b'68378884AA', + b'68525338AA', + b'68525338AB', + ], + (Ecu.engine, 0x7e0, None): [ + b'68267018AO ', + b'68267020AJ ', + b'68303534AG ', + b'68303534AJ ', + b'68340762AD ', + b'68340764AD ', + b'68352652AE ', + b'68352654AE ', + b'68366851AH ', + b'68366853AE ', + b'68366853AG ', + b'68372861AF ', + ], + (Ecu.transmission, 0x7e1, None): [ + b'68277370AJ', + b'68277370AM', + b'68277372AD', + b'68277372AE', + b'68277372AN', + b'68277374AA', + b'68277374AB', + b'68277374AD', + b'68277374AN', + b'68367471AC', + b'68367471AD', + b'68380571AB', + ], + }, + CAR.CHRYSLER_PACIFICA_2020: { + (Ecu.combinationMeter, 0x742, None): [ + b'68405327AC', + b'68436233AB', + b'68436233AC', + b'68436234AB', + b'68436250AE', + b'68529067AA', + b'68594993AB', + b'68594994AB', + ], + (Ecu.srs, 0x744, None): [ + b'68405565AB', + b'68405565AC', + b'68444299AC', + b'68480707AC', + b'68480708AC', + b'68526663AB', + ], + (Ecu.abs, 0x747, None): [ + b'68397394AA', + b'68433480AB', + b'68453575AF', + b'68577676AA', + b'68593395AA', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672758AA', + b'04672758AB', + b'68417813AF', + b'68540436AA', + b'68540436AB', + b'68540436AC', + b'68540436AD', + b'68598670AB', + b'68598670AC', + ], + (Ecu.eps, 0x75a, None): [ + b'68416742AA', + b'68460393AA', + b'68460393AB', + b'68494461AB', + b'68494461AC', + b'68524936AA', + b'68524936AB', + b'68525338AB', + b'68594337AB', + b'68594340AB', + ], + (Ecu.engine, 0x7e0, None): [ + b'68413871AD ', + b'68413871AE ', + b'68413871AH ', + b'68413871AI ', + b'68413871AJ ', + b'68413873AH ', + b'68413873AI ', + b'68443120AE ', + b'68443123AC ', + b'68443125AC ', + b'68496647AI ', + b'68496647AJ ', + b'68496650AH ', + b'68496650AI ', + b'68496650AL ', + b'68496652AH ', + b'68526752AD ', + b'68526752AE ', + b'68526754AD ', + b'68526754AE ', + b'68536264AE ', + b'68700304AB ', + b'68700306AB ', + ], + (Ecu.transmission, 0x7e1, None): [ + b'68414271AC', + b'68414271AD', + b'68414275AC', + b'68414275AD', + b'68443154AB', + b'68443154AC', + b'68443155AC', + b'68443158AB', + b'68501050AD', + b'68501051AD', + b'68501055AD', + b'68527221AB', + b'68527223AB', + b'68586231AD', + b'68586233AD', + ], + }, + CAR.CHRYSLER_PACIFICA_2018_HYBRID: { + (Ecu.combinationMeter, 0x742, None): [ + b'68239262AH', + b'68239262AI', + b'68239262AJ', + b'68239263AH', + b'68239263AJ', + b'68358439AE', + b'68358439AG', + ], + (Ecu.srs, 0x744, None): [ + b'68238840AH', + b'68358990AC', + b'68405939AA', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672758AA', + b'68226356AI', + ], + (Ecu.eps, 0x75a, None): [ + b'68288309AC', + b'68288309AD', + b'68525339AA', + ], + (Ecu.engine, 0x7e0, None): [ + b'68277480AV ', + b'68277480AX ', + b'68277480AZ ', + b'68366580AI ', + b'68366580AK ', + b'68366580AM ', + ], + (Ecu.hybrid, 0x7e2, None): [ + b'05190175BF', + b'05190175BH', + b'05190226AI', + b'05190226AK', + b'05190226AM', + ], + }, + CAR.CHRYSLER_PACIFICA_2019_HYBRID: { + (Ecu.combinationMeter, 0x742, None): [ + b'68405292AC', + b'68434956AC', + b'68434956AD', + b'68434960AE', + b'68434960AF', + b'68529064AB', + b'68594990AB', + b'68594990AD', + b'68594990AE', + b'68594991AB', + ], + (Ecu.srs, 0x744, None): [ + b'68405567AB', + b'68405567AC', + b'68453076AD', + b'68480710AC', + b'68526665AB', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672758AB', + b'68417813AF', + b'68540436AA', + b'68540436AB', + b'68540436AC', + b'68540436AD', + b'68598670AB', + b'68598670AC', + b'68645752AA', + ], + (Ecu.eps, 0x75a, None): [ + b'68416741AA', + b'68460392AA', + b'68525339AA', + b'68525339AB', + b'68594341AB', + b'68594341AC', + ], + (Ecu.engine, 0x7e0, None): [ + b'05190392AB ', + b'68416680AD ', + b'68416680AE ', + b'68416680AF ', + b'68416680AG ', + b'68444228AC ', + b'68444228AD ', + b'68444228AE ', + b'68444228AF ', + b'68499122AD ', + b'68499122AE ', + b'68499122AF ', + b'68526772AD ', + b'68526772AH ', + b'68599493AC ', + b'68657433AA ', + b'68700317AC ', + ], + (Ecu.hybrid, 0x7e2, None): [ + b'05185116AF', + b'05185116AJ', + b'05185116AK', + b'05185116AL', + b'05190240AP', + b'05190240AQ', + b'05190240AR', + b'05190265AG', + b'05190265AH', + b'05190289AE', + b'68540977AH', + b'68540977AK', + b'68540977AL', + b'68597647AE', + b'68597647AF', + b'68632416AB', + b'68632416AC', + b'68676877AB', + ], + }, + CAR.JEEP_GRAND_CHEROKEE: { + (Ecu.combinationMeter, 0x742, None): [ + b'68243549AG', + b'68302211AC', + b'68302212AD', + b'68302214AC', + b'68302223AC', + b'68302246AC', + b'68331511AC', + b'68331574AC', + b'68331687AC', + b'68331690AC', + b'68340272AD', + ], + (Ecu.srs, 0x744, None): [ + b'68309533AA', + b'68316742AB', + b'68355363AB', + ], + (Ecu.abs, 0x747, None): [ + b'68252642AG', + b'68306178AD', + b'68336275AB', + b'68336276AB', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672627AB', + b'68251506AF', + b'68332015AB', + ], + (Ecu.eps, 0x75a, None): [ + b'68276201AG', + b'68321644AB', + b'68321644AC', + b'68321646AC', + b'68321648AC', + b'68321650AC', + ], + (Ecu.engine, 0x7e0, None): [ + b'05035920AE ', + b'68252272AG ', + b'68284455AI ', + b'68284456AI ', + b'68284456AJ ', + b'68284477AF ', + b'68325564AH ', + b'68325564AI ', + b'68325565AH ', + b'68325565AI ', + b'68325565AJ ', + b'68325618AD ', + ], + (Ecu.transmission, 0x7e1, None): [ + b'05035517AH', + b'68253222AF', + b'68311218AC', + b'68311218AD', + b'68311223AF', + b'68311223AG', + b'68361911AE', + b'68361911AF', + b'68361911AH', + b'68361914AE', + b'68361916AD', + ], + }, + CAR.JEEP_GRAND_CHEROKEE_2019: { + (Ecu.combinationMeter, 0x742, None): [ + b'68402703AB', + b'68402704AB', + b'68402707AB', + b'68402708AB', + b'68402714AB', + b'68402971AD', + b'68454144AD', + b'68454145AB', + b'68454152AB', + b'68454156AB', + b'68516650AB', + b'68516651AB', + b'68516669AB', + b'68516671AB', + b'68516683AB', + ], + (Ecu.srs, 0x744, None): [ + b'68355363AB', + b'68355364AB', + ], + (Ecu.abs, 0x747, None): [ + b'68408639AC', + b'68408639AD', + b'68499978AB', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672788AA', + b'68456722AC', + ], + (Ecu.eps, 0x75a, None): [ + b'68417279AA', + b'68417280AA', + b'68417281AA', + b'68453431AA', + b'68453433AA', + b'68453435AA', + b'68499171AA', + b'68499171AB', + b'68501183AA', + b'68501186AA', + ], + (Ecu.engine, 0x7e0, None): [ + b'05035674AB ', + b'68412635AE ', + b'68412635AG ', + b'68412660AD ', + b'68412660AF ', + b'68422860AB', + b'68449435AE ', + b'68496223AA ', + b'68504959AD ', + b'68504959AE ', + b'68504960AD ', + b'68504993AC ', + ], + (Ecu.transmission, 0x7e1, None): [ + b'05035707AA', + b'68419672AC', + b'68419678AB', + b'68423905AB', + b'68449258AC', + b'68495807AA', + b'68495807AB', + b'68503641AC', + b'68503644AC', + b'68503664AC', + ], + }, + CAR.RAM_1500_5TH_GEN: { + (Ecu.combinationMeter, 0x742, None): [ + b'68294051AG', + b'68294051AI', + b'68294052AG', + b'68294052AH', + b'68294059AI', + b'68294063AG', + b'68294063AH', + b'68294063AI', + b'68434846AC', + b'68434847AC', + b'68434849AC', + b'68434850AC', + b'68434855AC', + b'68434856AC', + b'68434858AC', + b'68434859AC', + b'68434860AC', + b'68453471AD', + b'68453483AC', + b'68453483AD', + b'68453487AD', + b'68453491AC', + b'68453491AD', + b'68453499AD', + b'68453502AC', + b'68453503AC', + b'68453503AD', + b'68453505AC', + b'68453505AD', + b'68453511AC', + b'68453513AC', + b'68453513AD', + b'68453514AD', + b'68505633AB', + b'68510277AG', + b'68510277AH', + b'68510280AG', + b'68510280AH', + b'68510282AG', + b'68510282AH', + b'68510283AG', + b'68527346AE', + b'68527361AD', + b'68527375AD', + b'68527381AD', + b'68527381AE', + b'68527382AE', + b'68527383AD', + b'68527383AE', + b'68527387AE', + b'68527397AD', + b'68527403AC', + b'68527403AD', + b'68527404AD', + b'68546047AF', + b'68631938AA', + b'68631939AA', + b'68631940AA', + b'68631940AB', + b'68631941AB', + b'68631942AA', + b'68631943AB', + ], + (Ecu.srs, 0x744, None): [ + b'68428609AB', + b'68441329AA', + b'68441329AB', + b'68473844AB', + b'68490898AA', + b'68500728AA', + b'68615033AA', + b'68615034AA', + ], + (Ecu.abs, 0x747, None): [ + b'68292406AG', + b'68292406AH', + b'68432418AB', + b'68432418AC', + b'68432418AD', + b'68436004AD', + b'68436004AE', + b'68438454AC', + b'68438454AD', + b'68438456AE', + b'68438456AF', + b'68535469AB', + b'68535470AC', + b'68548900AB', + b'68548900AC', + b'68586307AB', + b'68586307AC', + b'68728724AA', + b'68728727AA', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672892AB', + b'04672932AB', + b'04672932AC', + b'22DTRHD_AA', + b'68320950AH', + b'68320950AI', + b'68320950AJ', + b'68320950AL', + b'68320950AM', + b'68454268AB', + b'68454268AC', + b'68475160AE', + b'68475160AF', + b'68475160AG', + ], + (Ecu.eps, 0x75a, None): [ + b'21590101AA', + b'21590101AB', + b'22490101AB', + b'68273275AF', + b'68273275AG', + b'68273275AH', + b'68312176AE', + b'68312176AF', + b'68312176AG', + b'68440789AC', + b'68466110AA', + b'68466110AB', + b'68466113AA', + b'68466116AA', + b'68469901AA', + b'68469904AA', + b'68469907AA', + b'68522583AA', + b'68522583AB', + b'68522584AA', + b'68522585AB', + b'68552788AA', + b'68552789AA', + b'68552790AA', + b'68552791AB', + b'68552794AA', + b'68552794AD', + b'68585106AB', + b'68585107AB', + b'68585108AB', + b'68585109AB', + b'68585112AB', + ], + (Ecu.engine, 0x7e0, None): [ + b'05035699AG ', + b'05035841AC ', + b'05035841AD ', + b'05036026AB ', + b'05036030AC ', + b'05036065AE ', + b'05036066AE ', + b'05036067AE ', + b'05036193AA ', + b'05149368AA ', + b'05149374AA ', + b'05149591AD ', + b'05149591AE ', + b'05149592AE ', + b'05149599AE ', + b'05149600AD ', + b'05149600AE ', + b'05149605AE ', + b'05149846AA ', + b'05149848AA ', + b'05149848AC ', + b'05190341AD', + b'05190346AD', + b'68378695AI ', + b'68378695AJ ', + b'68378695AK ', + b'68378696AJ ', + b'68378696AK ', + b'68378701AI ', + b'68378702AI ', + b'68378710AL ', + b'68378742AI ', + b'68378742AK ', + b'68378743AI ', + b'68378743AM ', + b'68378748AL ', + b'68378758AM ', + b'68378759AM ', + b'68448163AJ', + b'68448163AK', + b'68448163AL', + b'68448165AG', + b'68448165AK', + b'68455111AC ', + b'68455119AC ', + b'68455137AC ', + b'68455142AC ', + b'68455142AE ', + b'68455145AC ', + b'68455145AE ', + b'68455146AC ', + b'68460927AA ', + b'68467909AB ', + b'68467909AC ', + b'68467915AC ', + b'68467916AC ', + b'68467936AC ', + b'68500630AD', + b'68500630AE', + b'68500630AF', + b'68500631AE', + b'68502719AC ', + b'68502722AC ', + b'68502733AC ', + b'68502734AF ', + b'68502737AF ', + b'68502740AF ', + b'68502741AF ', + b'68502742AC ', + b'68502742AF ', + b'68539650AD', + b'68539650AF', + b'68539651AD', + b'68586101AA ', + b'68586102AA ', + b'68586105AB ', + b'68629917AC ', + b'68629919AC ', + b'68629919AD ', + b'68629922AC ', + b'68629925AC ', + b'68629926AC ', + ], + (Ecu.transmission, 0x7e1, None): [ + b'05035706AD', + b'05035842AB', + b'05036069AA', + b'05036181AA', + b'05149536AC', + b'05149537AC', + b'05149543AC', + b'68360078AL', + b'68360080AL', + b'68360080AM', + b'68360081AM', + b'68360081AN', + b'68360085AH', + b'68360085AJ', + b'68360085AK', + b'68360085AL', + b'68360085AO', + b'68360086AH', + b'68360086AK', + b'68360086AN', + b'68384328AD', + b'68384332AD', + b'68445531AC', + b'68445532AB', + b'68445533AB', + b'68445536AB', + b'68445537AB', + b'68466081AB', + b'68466086AB', + b'68466087AB', + b'68484466AC', + b'68484467AC', + b'68484471AC', + b'68502994AC', + b'68502994AD', + b'68502996AD', + b'68520867AE', + b'68520867AF', + b'68520870AC', + b'68520871AC', + b'68528325AE', + b'68540431AB', + b'68540433AB', + b'68551676AA', + b'68629935AB', + b'68629936AC', + ], + }, + CAR.RAM_HD_5TH_GEN: { + (Ecu.combinationMeter, 0x742, None): [ + b'68361606AH', + b'68437735AC', + b'68492693AD', + b'68525485AB', + b'68525487AB', + b'68525498AB', + b'68528791AF', + b'68628474AB', + ], + (Ecu.srs, 0x744, None): [ + b'68399794AC', + b'68428503AA', + b'68428505AA', + b'68428507AA', + ], + (Ecu.abs, 0x747, None): [ + b'68334977AH', + b'68455481AC', + b'68504022AA', + b'68504022AB', + b'68504022AC', + b'68530686AB', + b'68530686AC', + b'68544596AC', + b'68641704AA', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'04672895AB', + b'04672934AB', + b'56029827AG', + b'56029827AH', + b'68462657AE', + b'68484694AD', + b'68484694AE', + b'68615489AB', + ], + (Ecu.eps, 0x761, None): [ + b'68421036AC', + b'68507906AB', + b'68534023AC', + ], + (Ecu.engine, 0x7e0, None): [ + b'52370131AF', + b'52370231AF', + b'52370231AG', + b'52370491AA', + b'52370931CT', + b'52401032AE', + b'52421132AF', + b'52421332AF', + b'68527616AD ', + b'M2370131MB', + b'M2421132MB', + ], + }, + CAR.DODGE_DURANGO: { + (Ecu.combinationMeter, 0x742, None): [ + b'68454261AD', + b'68471535AE', + ], + (Ecu.srs, 0x744, None): [ + b'68355362AB', + b'68492238AD', + ], + (Ecu.abs, 0x747, None): [ + b'68408639AD', + b'68499978AB', + ], + (Ecu.fwdRadar, 0x753, None): [ + b'68440581AE', + b'68456722AC', + ], + (Ecu.eps, 0x75a, None): [ + b'68453435AA', + b'68498477AA', + ], + (Ecu.engine, 0x7e0, None): [ + b'05035786AE ', + b'68449476AE ', + ], + (Ecu.transmission, 0x7e1, None): [ + b'05035826AC', + b'68449265AC', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/chrysler/interface.py b/opendbc_repo/opendbc/car/chrysler/interface.py new file mode 100755 index 0000000000..23ece3befd --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/interface.py @@ -0,0 +1,80 @@ +#!/usr/bin/env python3 +from opendbc.car import get_safety_config, structs +from opendbc.car.chrysler.carcontroller import CarController +from opendbc.car.chrysler.carstate import CarState +from opendbc.car.chrysler.radar_interface import RadarInterface +from opendbc.car.chrysler.values import CAR, RAM_HD, RAM_DT, RAM_CARS, ChryslerFlags, ChryslerSafetyFlags +from opendbc.car.interfaces import CarInterfaceBase + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "chrysler" + ret.dashcamOnly = candidate in RAM_HD + + # radar parsing needs some work, see https://github.com/commaai/openpilot/issues/26842 + ret.radarUnavailable = True # Bus.radar not in DBC[candidate][Bus.radar] + ret.steerActuatorDelay = 0.1 + ret.steerLimitTimer = 0.4 + + # safety config + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.chrysler)] + if candidate in RAM_HD: + ret.safetyConfigs[0].safetyParam |= ChryslerSafetyFlags.RAM_HD.value + elif candidate in RAM_DT: + ret.safetyConfigs[0].safetyParam |= ChryslerSafetyFlags.RAM_DT.value + + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + if candidate not in RAM_CARS: + # Newer FW versions standard on the following platforms, or flashed by a dealer onto older platforms have a higher minimum steering speed. + new_eps_platform = candidate in (CAR.CHRYSLER_PACIFICA_2019_HYBRID, CAR.CHRYSLER_PACIFICA_2020, CAR.JEEP_GRAND_CHEROKEE_2019, CAR.DODGE_DURANGO) + new_eps_firmware = any(fw.ecu == 'eps' and fw.fwVersion[:4] >= b"6841" for fw in car_fw) + if new_eps_platform or new_eps_firmware: + ret.flags |= ChryslerFlags.HIGHER_MIN_STEERING_SPEED.value + + # Chrysler + if candidate in (CAR.CHRYSLER_PACIFICA_2018, CAR.CHRYSLER_PACIFICA_2018_HYBRID, CAR.CHRYSLER_PACIFICA_2019_HYBRID, + CAR.CHRYSLER_PACIFICA_2020, CAR.DODGE_DURANGO): + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kpBP, ret.lateralTuning.pid.kiBP = [[9., 20.], [9., 20.]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.15, 0.30], [0.03, 0.05]] + ret.lateralTuning.pid.kf = 0.00006 + + # Jeep + elif candidate in (CAR.JEEP_GRAND_CHEROKEE, CAR.JEEP_GRAND_CHEROKEE_2019): + ret.steerActuatorDelay = 0.2 + + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kpBP, ret.lateralTuning.pid.kiBP = [[9., 20.], [9., 20.]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.15, 0.30], [0.03, 0.05]] + ret.lateralTuning.pid.kf = 0.00006 + + # Ram + elif candidate == CAR.RAM_1500_5TH_GEN: + ret.steerActuatorDelay = 0.2 + ret.wheelbase = 3.88 + # Older EPS FW allow steer to zero + if any(fw.ecu == 'eps' and b"68" < fw.fwVersion[:4] <= b"6831" for fw in car_fw): + ret.minSteerSpeed = 0. + + elif candidate == CAR.RAM_HD_5TH_GEN: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning, 1.0, False) + + else: + raise ValueError(f"Unsupported car: {candidate}") + + if ret.flags & ChryslerFlags.HIGHER_MIN_STEERING_SPEED: + # TODO: allow these cars to steer down to 13 m/s if already engaged. + # TODO: Durango 2020 may be able to steer to zero once above 38 kph + ret.minSteerSpeed = 17.5 # m/s 17 on the way up, 13 on the way down once engaged. + + ret.centerToFront = ret.wheelbase * 0.44 + ret.enableBsm = 720 in fingerprint[0] + + return ret diff --git a/opendbc_repo/opendbc/car/chrysler/radar_interface.py b/opendbc_repo/opendbc/car/chrysler/radar_interface.py new file mode 100755 index 0000000000..02fc52a5ba --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/radar_interface.py @@ -0,0 +1,83 @@ +#!/usr/bin/env python3 +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import RadarInterfaceBase +from opendbc.car.chrysler.values import DBC + +RADAR_MSGS_C = list(range(0x2c2, 0x2d4+2, 2)) # c_ messages 706,...,724 +RADAR_MSGS_D = list(range(0x2a2, 0x2b4+2, 2)) # d_ messages +LAST_MSG = max(RADAR_MSGS_C + RADAR_MSGS_D) +NUMBER_MSGS = len(RADAR_MSGS_C) + len(RADAR_MSGS_D) + +def _create_radar_can_parser(car_fingerprint): + if Bus.radar not in DBC[car_fingerprint]: + return None + + msg_n = len(RADAR_MSGS_C) + # list of [(signal name, message name or number), (...)] + # [('RADAR_STATE', 1024), + # ('LONG_DIST', 1072), + # ('LONG_DIST', 1073), + # ('LONG_DIST', 1074), + # ('LONG_DIST', 1075), + + messages = list(zip(RADAR_MSGS_C + + RADAR_MSGS_D, + [20] * msg_n + # 20Hz (0.05s) + [20] * msg_n, strict=True)) # 20Hz (0.05s) + + return CANParser(DBC[car_fingerprint][Bus.radar], messages, 1) + +def _address_to_track(address): + if address in RADAR_MSGS_C: + return (address - RADAR_MSGS_C[0]) // 2 + if address in RADAR_MSGS_D: + return (address - RADAR_MSGS_D[0]) // 2 + raise ValueError("radar received unexpected address %d" % address) + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + self.rcp = _create_radar_can_parser(CP.carFingerprint) + self.updated_messages = set() + self.trigger_msg = LAST_MSG + + def update(self, can_strings): + if self.rcp is None or self.CP.radarUnavailable: + return super().update(None) + + vls = self.rcp.update(can_strings) + self.updated_messages.update(vls) + + if self.trigger_msg not in self.updated_messages: + return None + + ret = structs.RadarData() + if not self.rcp.can_valid: + ret.errors.canError = True + + for ii in self.updated_messages: # ii should be the message ID as a number + cpt = self.rcp.vl[ii] + trackId = _address_to_track(ii) + + if trackId not in self.pts: + self.pts[trackId] = structs.RadarData.RadarPoint() + self.pts[trackId].trackId = trackId + self.pts[trackId].aRel = float('nan') + self.pts[trackId].yvRel = 0 #float('nan') + self.pts[trackId].measured = True + + if 'LONG_DIST' in cpt: # c_* message + self.pts[trackId].dRel = cpt['LONG_DIST'] # from front of car + # our lat_dist is positive to the right in car's frame. + # TODO what does yRel want? + self.pts[trackId].yRel = cpt['LAT_DIST'] # in car frame's y axis, left is positive + else: # d_* message + self.pts[trackId].vRel = cpt['REL_SPEED'] + self.pts[trackId].vLead = self.pts[trackId].vRel + self.v_ego + + # We want a list, not a dictionary. Filter out LONG_DIST==0 because that means it's not valid. + ret.points = [x for x in self.pts.values() if x.dRel != 0] + + self.updated_messages.clear() + return ret diff --git a/opendbc_repo/opendbc/car/chrysler/values.py b/opendbc_repo/opendbc/car/chrysler/values.py new file mode 100644 index 0000000000..a729d68ebe --- /dev/null +++ b/opendbc_repo/opendbc/car/chrysler/values.py @@ -0,0 +1,159 @@ +from enum import IntFlag +from dataclasses import dataclass, field + +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, p16 + +Ecu = CarParams.Ecu + + +class ChryslerSafetyFlags(IntFlag): + RAM_DT = 1 + RAM_HD = 2 + + +class ChryslerFlags(IntFlag): + # Detected flags + HIGHER_MIN_STEERING_SPEED = 1 + +@dataclass +class ChryslerCarDocs(CarDocs): + package: str = "Adaptive Cruise Control (ACC)" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.fca])) + + +@dataclass +class ChryslerPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: { + Bus.pt: 'chrysler_pacifica_2017_hybrid_generated', + Bus.radar: 'chrysler_pacifica_2017_hybrid_private_fusion', + }) + + +@dataclass(frozen=True) +class ChryslerCarSpecs(CarSpecs): + minSteerSpeed: float = 3.8 # m/s + + +class CAR(Platforms): + # Chrysler + CHRYSLER_PACIFICA_2018_HYBRID = ChryslerPlatformConfig( + [ChryslerCarDocs("Chrysler Pacifica Hybrid 2017-18")], + ChryslerCarSpecs(mass=2242., wheelbase=3.089, steerRatio=16.2), + ) + CHRYSLER_PACIFICA_2019_HYBRID = ChryslerPlatformConfig( + [ChryslerCarDocs("Chrysler Pacifica Hybrid 2019-25")], + CHRYSLER_PACIFICA_2018_HYBRID.specs, + ) + CHRYSLER_PACIFICA_2018 = ChryslerPlatformConfig( + [ChryslerCarDocs("Chrysler Pacifica 2017-18")], + CHRYSLER_PACIFICA_2018_HYBRID.specs, + ) + CHRYSLER_PACIFICA_2020 = ChryslerPlatformConfig( + [ + ChryslerCarDocs("Chrysler Pacifica 2019-20"), + ChryslerCarDocs("Chrysler Pacifica 2021-23", package="All"), + ], + CHRYSLER_PACIFICA_2018_HYBRID.specs, + ) + + # Dodge + DODGE_DURANGO = ChryslerPlatformConfig( + [ChryslerCarDocs("Dodge Durango 2020-21")], + CHRYSLER_PACIFICA_2018_HYBRID.specs, + ) + + # Jeep + JEEP_GRAND_CHEROKEE = ChryslerPlatformConfig( # includes 2017 Trailhawk + [ChryslerCarDocs("Jeep Grand Cherokee 2016-18", video="https://www.youtube.com/watch?v=eLR9o2JkuRk")], + ChryslerCarSpecs(mass=1778., wheelbase=2.71, steerRatio=16.7), + ) + + JEEP_GRAND_CHEROKEE_2019 = ChryslerPlatformConfig( # includes 2020 Trailhawk + [ChryslerCarDocs("Jeep Grand Cherokee 2019-21", video="https://www.youtube.com/watch?v=jBe4lWnRSu4")], + JEEP_GRAND_CHEROKEE.specs, + ) + + # Ram + RAM_1500_5TH_GEN = ChryslerPlatformConfig( + [ChryslerCarDocs("Ram 1500 2019-24", car_parts=CarParts.common([CarHarness.ram]))], + ChryslerCarSpecs(mass=2493., wheelbase=3.88, steerRatio=16.3, minSteerSpeed=14.5), + {Bus.pt: 'chrysler_ram_dt_generated'}, + ) + RAM_HD_5TH_GEN = ChryslerPlatformConfig( + [ + ChryslerCarDocs("Ram 2500 2020-24", car_parts=CarParts.common([CarHarness.ram])), + ChryslerCarDocs("Ram 3500 2019-22", car_parts=CarParts.common([CarHarness.ram])), + ], + ChryslerCarSpecs(mass=3405., wheelbase=3.785, steerRatio=15.61, minSteerSpeed=16.), + {Bus.pt: 'chrysler_ram_hd_generated'}, + ) + + +class CarControllerParams: + def __init__(self, CP): + self.STEER_STEP = 2 # 50 Hz + self.STEER_ERROR_MAX = 80 + if CP.carFingerprint in RAM_HD: + self.STEER_DELTA_UP = 14 + self.STEER_DELTA_DOWN = 14 + self.STEER_MAX = 361 # higher than this faults the EPS + elif CP.carFingerprint in RAM_DT: + self.STEER_DELTA_UP = 6 + self.STEER_DELTA_DOWN = 6 + self.STEER_MAX = 261 # EPS allows more, up to 350? + else: + self.STEER_DELTA_UP = 3 + self.STEER_DELTA_DOWN = 3 + self.STEER_MAX = 261 # higher than this faults the EPS + + +STEER_THRESHOLD = 120 + +RAM_DT = {CAR.RAM_1500_5TH_GEN, } +RAM_HD = {CAR.RAM_HD_5TH_GEN, } +RAM_CARS = RAM_DT | RAM_HD + + +CHRYSLER_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(0xf132) +CHRYSLER_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(0xf132) + +CHRYSLER_SOFTWARE_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_NUMBER) +CHRYSLER_SOFTWARE_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_NUMBER) + +CHRYSLER_RX_OFFSET = -0x280 + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + Request( + [CHRYSLER_VERSION_REQUEST], + [CHRYSLER_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.srs, Ecu.fwdRadar, Ecu.combinationMeter], + rx_offset=CHRYSLER_RX_OFFSET, + bus=0, + ), + Request( + [CHRYSLER_VERSION_REQUEST], + [CHRYSLER_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.hybrid, Ecu.engine, Ecu.transmission], + bus=0, + ), + Request( + [CHRYSLER_SOFTWARE_VERSION_REQUEST], + [CHRYSLER_SOFTWARE_VERSION_RESPONSE], + whitelist_ecus=[Ecu.engine, Ecu.transmission], + bus=0, + ), + ], + extra_ecus=[ + (Ecu.abs, 0x7e4, None), # alt address for abs on hybrids, NOTE: not on all hybrid platforms + ], +) + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/common/__init__.py b/opendbc_repo/opendbc/car/common/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/common/basedir.py b/opendbc_repo/opendbc/car/common/basedir.py new file mode 100644 index 0000000000..6b4811e53c --- /dev/null +++ b/opendbc_repo/opendbc/car/common/basedir.py @@ -0,0 +1,4 @@ +import os + + +BASEDIR = os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)), "../")) diff --git a/opendbc_repo/opendbc/car/common/conversions.py b/opendbc_repo/opendbc/car/common/conversions.py new file mode 100644 index 0000000000..b02b33c625 --- /dev/null +++ b/opendbc_repo/opendbc/car/common/conversions.py @@ -0,0 +1,19 @@ +import numpy as np + +class Conversions: + # Speed + MPH_TO_KPH = 1.609344 + KPH_TO_MPH = 1. / MPH_TO_KPH + MS_TO_KPH = 3.6 + KPH_TO_MS = 1. / MS_TO_KPH + MS_TO_MPH = MS_TO_KPH * KPH_TO_MPH + MPH_TO_MS = MPH_TO_KPH * KPH_TO_MS + MS_TO_KNOTS = 1.9438 + KNOTS_TO_MS = 1. / MS_TO_KNOTS + + # Angle + DEG_TO_RAD = np.pi / 180. + RAD_TO_DEG = 1. / DEG_TO_RAD + + # Mass + LB_TO_KG = 0.453592 diff --git a/opendbc_repo/opendbc/car/common/filter_simple.py b/opendbc_repo/opendbc/car/common/filter_simple.py new file mode 100644 index 0000000000..0ec7a51562 --- /dev/null +++ b/opendbc_repo/opendbc/car/common/filter_simple.py @@ -0,0 +1,18 @@ +class FirstOrderFilter: + # first order filter + def __init__(self, x0, rc, dt, initialized=True): + self.x = x0 + self.dt = dt + self.update_alpha(rc) + self.initialized = initialized + + def update_alpha(self, rc): + self.alpha = self.dt / (rc + self.dt) + + def update(self, x): + if self.initialized: + self.x = (1. - self.alpha) * self.x + self.alpha * x + else: + self.initialized = True + self.x = x + return self.x diff --git a/opendbc_repo/opendbc/car/common/pid.py b/opendbc_repo/opendbc/car/common/pid.py new file mode 100644 index 0000000000..f2ab935f45 --- /dev/null +++ b/opendbc_repo/opendbc/car/common/pid.py @@ -0,0 +1,70 @@ +import numpy as np +from numbers import Number + +class PIDController: + def __init__(self, k_p, k_i, k_f=0., k_d=0., pos_limit=1e308, neg_limit=-1e308, rate=100): + self._k_p = k_p + self._k_i = k_i + self._k_d = k_d + self.k_f = k_f # feedforward gain + if isinstance(self._k_p, Number): + self._k_p = [[0], [self._k_p]] + if isinstance(self._k_i, Number): + self._k_i = [[0], [self._k_i]] + if isinstance(self._k_d, Number): + self._k_d = [[0], [self._k_d]] + + self.pos_limit = pos_limit + self.neg_limit = neg_limit + + self.i_unwind_rate = 0.3 / rate + self.i_rate = 1.0 / rate + self.speed = 0.0 + + self.reset() + + @property + def k_p(self): + return np.interp(self.speed, self._k_p[0], self._k_p[1]) + + @property + def k_i(self): + return np.interp(self.speed, self._k_i[0], self._k_i[1]) + + @property + def k_d(self): + return np.interp(self.speed, self._k_d[0], self._k_d[1]) + + @property + def error_integral(self): + return self.i/self.k_i + + def reset(self): + self.p = 0.0 + self.i = 0.0 + self.d = 0.0 + self.f = 0.0 + self.control = 0 + + def update(self, error, error_rate=0.0, speed=0.0, override=False, feedforward=0., freeze_integrator=False): + self.speed = speed + + self.p = float(error) * self.k_p + self.f = feedforward * self.k_f + self.d = error_rate * self.k_d + + if override: + self.i -= self.i_unwind_rate * float(np.sign(self.i)) + else: + if not freeze_integrator: + self.i = self.i + error * self.k_i * self.i_rate + + # Clip i to prevent exceeding control limits + control_no_i = self.p + self.d + self.f + control_no_i = np.clip(control_no_i, self.neg_limit, self.pos_limit) + self.i = np.clip(self.i, self.neg_limit - control_no_i, self.pos_limit - control_no_i) + + control = self.p + self.i + self.d + self.f + + self.control = np.clip(control, self.neg_limit, self.pos_limit) + return self.control diff --git a/opendbc_repo/opendbc/car/common/simple_kalman.py b/opendbc_repo/opendbc/car/common/simple_kalman.py new file mode 100644 index 0000000000..194b27204b --- /dev/null +++ b/opendbc_repo/opendbc/car/common/simple_kalman.py @@ -0,0 +1,54 @@ +import numpy as np + + +def get_kalman_gain(dt, A, C, Q, R, iterations=100): + P = np.zeros_like(Q) + for _ in range(iterations): + P = A.dot(P).dot(A.T) + dt * Q + S = C.dot(P).dot(C.T) + R + K = P.dot(C.T).dot(np.linalg.inv(S)) + P = (np.eye(len(P)) - K.dot(C)).dot(P) + return K + + +class KF1D: + # this EKF assumes constant covariance matrix, so calculations are much simpler + # the Kalman gain also needs to be precomputed using the control module + + def __init__(self, x0, A, C, K): + self.x0_0 = x0[0][0] + self.x1_0 = x0[1][0] + self.A0_0 = A[0][0] + self.A0_1 = A[0][1] + self.A1_0 = A[1][0] + self.A1_1 = A[1][1] + self.C0_0 = C[0] + self.C0_1 = C[1] + self.K0_0 = K[0][0] + self.K1_0 = K[1][0] + + self.A_K_0 = self.A0_0 - self.K0_0 * self.C0_0 + self.A_K_1 = self.A0_1 - self.K0_0 * self.C0_1 + self.A_K_2 = self.A1_0 - self.K1_0 * self.C0_0 + self.A_K_3 = self.A1_1 - self.K1_0 * self.C0_1 + + # K matrix needs to be pre-computed as follow: + # import control + # (x, l, K) = control.dare(np.transpose(self.A), np.transpose(self.C), Q, R) + # self.K = np.transpose(K) + + def update(self, meas): + #self.x = np.dot(self.A_K, self.x) + np.dot(self.K, meas) + x0_0 = self.A_K_0 * self.x0_0 + self.A_K_1 * self.x1_0 + self.K0_0 * meas + x1_0 = self.A_K_2 * self.x0_0 + self.A_K_3 * self.x1_0 + self.K1_0 * meas + self.x0_0 = x0_0 + self.x1_0 = x1_0 + return [self.x0_0, self.x1_0] + + @property + def x(self): + return [[self.x0_0], [self.x1_0]] + + def set_x(self, x): + self.x0_0 = x[0][0] + self.x1_0 = x[1][0] diff --git a/opendbc_repo/opendbc/car/crc.py b/opendbc_repo/opendbc/car/crc.py new file mode 100644 index 0000000000..2518286d8f --- /dev/null +++ b/opendbc_repo/opendbc/car/crc.py @@ -0,0 +1,30 @@ + +def _gen_crc8_table(poly: int) -> list[int]: + table = [] + for i in range(256): + crc = i + for _ in range(8): + if crc & 0x80: + crc = ((crc << 1) ^ poly) & 0xFF + else: + crc = (crc << 1) & 0xFF + table.append(crc) + return table + + +def _gen_crc16_table(poly: int) -> list[int]: + table = [] + for i in range(256): + crc = i << 8 + for _ in range(8): + if crc & 0x8000: + crc = ((crc << 1) ^ poly) & 0xFFFF + else: + crc = (crc << 1) & 0xFFFF + table.append(crc) + return table + + +CRC8H2F = _gen_crc8_table(0x2F) +CRC8J1850 = _gen_crc8_table(0x1D) +CRC16_XMODEM = _gen_crc16_table(0x1021) diff --git a/opendbc_repo/opendbc/car/debug/format_fingerprints.py b/opendbc_repo/opendbc/car/debug/format_fingerprints.py new file mode 100644 index 0000000000..43b59bf2e0 --- /dev/null +++ b/opendbc_repo/opendbc/car/debug/format_fingerprints.py @@ -0,0 +1,82 @@ +#!/usr/bin/env python3 +import jinja2 +import os + +from opendbc.car.common.basedir import BASEDIR +from opendbc.car.interfaces import get_interface_attr +from opendbc.car.structs import CarParams + +Ecu = CarParams.Ecu + +CARS = get_interface_attr('CAR') +FW_VERSIONS = get_interface_attr('FW_VERSIONS') +FINGERPRINTS = get_interface_attr('FINGERPRINTS') +ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()} + +FINGERPRINTS_PY_TEMPLATE = jinja2.Template(""" +{%- if FINGERPRINTS[brand] and brand != 'body' %} +# ruff: noqa: E501 +{% endif %} +\"\"\" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.\"\"\" +{% if FW_VERSIONS[brand] %} +from opendbc.car.structs import CarParams +{% endif %} +from opendbc.car.{{brand}}.values import CAR +{% if FW_VERSIONS[brand] %} + +Ecu = CarParams.Ecu +{% endif %} +{% if comments +%} +{{ comments | join() }} +{% endif %} +{% if FINGERPRINTS[brand] %} + +FINGERPRINTS = { +{% for car, fingerprints in FINGERPRINTS[brand].items() %} + CAR.{{car.name}}: [{ +{% for fingerprint in fingerprints %} +{% if not loop.first %} + {{ "{" }} +{% endif %} + {% for key, value in fingerprint.items() %}{{key}}: {{value}}{% if not loop.last %}, {% endif %}{% endfor %} + + }{% if loop.last %}]{% endif %}, +{% endfor %} +{% endfor %} +} +{% endif %} + +FW_VERSIONS{% if not FW_VERSIONS[brand] %}: dict[str, dict[tuple, list[bytes]]]{% endif %} = { +{% for car, _ in FW_VERSIONS[brand].items() %} + CAR.{{car.name}}: { +{% for key, fw_versions in FW_VERSIONS[brand][car].items() %} + (Ecu.{{ECU_NAME[key[0]]}}, 0x{{"%0x" | format(key[1] | int)}}, \ +{% if key[2] %}0x{{"%0x" | format(key[2] | int)}}{% else %}{{key[2]}}{% endif %}): [ + {% for fw_version in (fw_versions + extra_fw_versions.get(car, {}).get(key, [])) | unique | sort %} + {{fw_version}}, + {% endfor %} + ], +{% endfor %} + }, +{% endfor %} +} + +""", trim_blocks=True) + + +def format_brand_fw_versions(brand, extra_fw_versions: None | dict[str, dict[tuple, list[bytes]]] = None): + extra_fw_versions = extra_fw_versions or {} + + fingerprints_file = os.path.join(BASEDIR, f"{brand}/fingerprints.py") + with open(fingerprints_file) as f: + comments = [line for line in f.readlines() if line.startswith("#") and "noqa" not in line] + + with open(fingerprints_file, "w") as f: + f.write(FINGERPRINTS_PY_TEMPLATE.render(brand=brand, comments=comments, ECU_NAME=ECU_NAME, + FINGERPRINTS=FINGERPRINTS, FW_VERSIONS=FW_VERSIONS, + extra_fw_versions=extra_fw_versions)) + + +if __name__ == "__main__": + for brand in FW_VERSIONS.keys(): + format_brand_fw_versions(brand) diff --git a/opendbc_repo/opendbc/car/disable_ecu.py b/opendbc_repo/opendbc/car/disable_ecu.py new file mode 100644 index 0000000000..797b40649f --- /dev/null +++ b/opendbc_repo/opendbc/car/disable_ecu.py @@ -0,0 +1,36 @@ +from opendbc.car.carlog import carlog +from opendbc.car.isotp_parallel_query import IsoTpParallelQuery + +EXT_DIAG_REQUEST = b'\x10\x03' +EXT_DIAG_RESPONSE = b'\x50\x03' + +COM_CONT_RESPONSE = b'' + + +def disable_ecu(can_recv, can_send, bus=0, addr=0x7d0, sub_addr=None, com_cont_req=b'\x28\x83\x01', timeout=0.1, retry=10): + """Silence an ECU by disabling sending and receiving messages using UDS 0x28. + The ECU will stay silent as long as openpilot keeps sending Tester Present. + + This is used to disable the radar in some cars. Openpilot will emulate the radar. + WARNING: THIS DISABLES AEB!""" + carlog.warning(f"ecu disable {hex(addr), sub_addr} ...") + + for i in range(retry): + try: + query = IsoTpParallelQuery(can_send, can_recv, bus, [(addr, sub_addr)], [EXT_DIAG_REQUEST], [EXT_DIAG_RESPONSE]) + + for _, _ in query.get_data(timeout).items(): + carlog.warning("communication control disable tx/rx ...") + + query = IsoTpParallelQuery(can_send, can_recv, bus, [(addr, sub_addr)], [com_cont_req], [COM_CONT_RESPONSE]) + query.get_data(0) + + carlog.warning("ecu disabled") + return True + + except Exception: + carlog.exception("ecu disable exception") + + carlog.error(f"ecu disable retry ({i + 1}) ...") + carlog.error("ecu disable failed") + return False diff --git a/opendbc_repo/opendbc/car/docs.py b/opendbc_repo/opendbc/car/docs.py new file mode 100755 index 0000000000..901b889d50 --- /dev/null +++ b/opendbc_repo/opendbc/car/docs.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python3 +import argparse +import os +from typing import get_args + +from collections import defaultdict +import jinja2 +from enum import Enum +from natsort import natsorted + +from opendbc.car.common.basedir import BASEDIR +from opendbc.car import gen_empty_fingerprint +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import BaseCarHarness, CarDocs, Device, ExtraCarDocs, Column, ExtraCarsColumn, CommonFootnote, PartType, SupportType +from opendbc.car.car_helpers import interfaces +from opendbc.car.interfaces import get_interface_attr +from opendbc.car.values import Platform +from opendbc.car.mock.values import CAR as MOCK +from opendbc.car.extra_cars import CAR as EXTRA + + +EXTRA_CARS_MD_OUT = os.path.join(BASEDIR, "../", "../", "docs", "CARS.md") +EXTRA_CARS_MD_TEMPLATE = os.path.join(BASEDIR, "CARS_template.md") + +# TODO: merge these platforms into normal car ports with SupportType flag +ExtraPlatform = Platform | EXTRA +EXTRA_BRANDS = get_args(ExtraPlatform) +EXTRA_PLATFORMS: dict[str, ExtraPlatform] = {str(platform): platform for brand in EXTRA_BRANDS for platform in brand} + + +def get_params_for_docs(platform) -> CarParams: + cp_platform = platform if platform in interfaces else MOCK.MOCK + CP: CarParams = interfaces[cp_platform].get_params(cp_platform, fingerprint=gen_empty_fingerprint(), + car_fw=[CarParams.CarFw(ecu=CarParams.Ecu.unknown)], + alpha_long=True, is_release=False, docs=True) + return CP + + +def get_all_footnotes() -> dict[Enum, int]: + all_footnotes = list(CommonFootnote) + for footnotes in get_interface_attr("Footnote", ignore_none=True).values(): + all_footnotes.extend(footnotes) + return {fn: idx + 1 for idx, fn in enumerate(all_footnotes)} + + +def build_sorted_car_docs_list(platforms, footnotes=None): + collected_car_docs: list[CarDocs | ExtraCarDocs] = [] + for platform in platforms.values(): + car_docs = platform.config.car_docs + CP = get_params_for_docs(platform) + + if not len(car_docs): + continue + + # A platform can include multiple car models + for _car_docs in car_docs: + if not hasattr(_car_docs, "row"): + _car_docs.init_make(CP) + _car_docs.init(CP, footnotes) + collected_car_docs.append(_car_docs) + + # Sort cars by make and model + year + sorted_cars = natsorted(collected_car_docs, key=lambda car: car.name.lower()) + return sorted_cars + + +# CAUTION: This function is imported by shop.comma.ai and comma.ai/vehicles, test changes carefully +def get_all_car_docs() -> list[CarDocs]: + collected_footnotes = get_all_footnotes() + sorted_list: list[CarDocs] = build_sorted_car_docs_list(EXTRA_PLATFORMS, footnotes=collected_footnotes) + return sorted_list + + +def group_by_make(all_car_docs: list[CarDocs]) -> dict[str, list[CarDocs]]: + sorted_car_docs = defaultdict(list) + for car_docs in all_car_docs: + sorted_car_docs[car_docs.make].append(car_docs) + return dict(sorted_car_docs) + + +# CAUTION: This function is imported by shop.comma.ai and comma.ai/vehicles, test changes carefully +def generate_cars_md(all_car_docs: list[CarDocs], template_fn: str, **kwargs) -> str: + with open(template_fn) as f: + template = jinja2.Template(f.read(), trim_blocks=True, lstrip_blocks=True) + + footnotes = [fn.value.text for fn in get_all_footnotes()] + cars_md: str = template.render(all_car_docs=all_car_docs, PartType=PartType, + group_by_make=group_by_make, footnotes=footnotes, + Device=Device, Column=Column, ExtraCarsColumn=ExtraCarsColumn, + BaseCarHarness=BaseCarHarness, SupportType=SupportType, + **kwargs) + return cars_md + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Auto generates supportability info docs for all known cars", + formatter_class=argparse.ArgumentDefaultsHelpFormatter) + + parser.add_argument("--template", default=EXTRA_CARS_MD_TEMPLATE, help="Override default template filename") + parser.add_argument("--out", default=EXTRA_CARS_MD_OUT, help="Override default generated filename") + args = parser.parse_args() + + with open(args.out, 'w') as f: + f.write(generate_cars_md(get_all_car_docs(), args.template)) + print(f"Generated and written to {args.out}") diff --git a/opendbc_repo/opendbc/car/docs_definitions.py b/opendbc_repo/opendbc/car/docs_definitions.py new file mode 100644 index 0000000000..04a7155822 --- /dev/null +++ b/opendbc_repo/opendbc/car/docs_definitions.py @@ -0,0 +1,419 @@ +import re +from collections import namedtuple +import copy +from dataclasses import dataclass, field +from enum import Enum + +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.structs import CarParams + +GOOD_TORQUE_THRESHOLD = 1.0 # m/s^2 +MODEL_YEARS_RE = r"(?<= )((\d{4}-\d{2})|(\d{4}))(,|$)" + + +class Column(Enum): + MAKE = "Make" + MODEL = "Model" + PACKAGE = "Supported Package" + LONGITUDINAL = "ACC" + FSR_LONGITUDINAL = "No ACC accel below" + FSR_STEERING = "No ALC below" + STEERING_TORQUE = "Steering Torque" + AUTO_RESUME = "Resume from stop" + HARDWARE = "Hardware Needed" + VIDEO = "Video" + SETUP_VIDEO = "Setup Video" + + +class ExtraCarsColumn(Enum): + MAKE = "Make" + MODEL = "Model" + PACKAGE = "Package" + SUPPORT = "Support Level" + + +class SupportType(Enum): + UPSTREAM = "Upstream" # Actively maintained by comma, plug-and-play in release versions of openpilot + REVIEW = "Under review" # Dashcam, but planned for official support after safety validation + DASHCAM = "Dashcam mode" # Dashcam, but may be drivable in a community fork + COMMUNITY = "Community" # Not upstream, but available in a custom community fork, not validated by comma + CUSTOM = "Custom" # Upstream, but don't have a harness available or need an unusual custom install + INCOMPATIBLE = "Not compatible" # Known fundamental incompatibility such as Flexray or hydraulic power steering + + +class Star(Enum): + FULL = "full" + HALF = "half" + EMPTY = "empty" + + +# A part + its comprised parts +@dataclass +class BasePart: + name: str + parts: list[Enum] = field(default_factory=list) + + def all_parts(self): + # Recursively get all parts + _parts = 'parts' + parts = [] + parts.extend(getattr(self, _parts)) + for part in getattr(self, _parts): + parts.extend(part.value.all_parts()) + + return parts + + +class EnumBase(Enum): + @property + def part_type(self): + return PartType(self.__class__) + + +class Mount(EnumBase): + mount = BasePart("mount") + angled_mount_8_degrees = BasePart("angled mount (8 degrees)") + + +class Cable(EnumBase): + long_obdc_cable = BasePart("long OBD-C cable (9.5 ft)") + usb_a_2_a_cable = BasePart("USB A-A cable") + usbc_otg_cable = BasePart("USB C OTG cable") + usbc_coupler = BasePart("USB-C coupler") + obd_c_cable_1_5ft = BasePart("OBD-C cable (1.5 ft)") + right_angle_obd_c_cable_1_5ft = BasePart("right angle OBD-C cable (1.5 ft)") + + +class Accessory(EnumBase): + harness_box = BasePart("harness box") + comma_power = BasePart("comma power v3") + + +class Tool(EnumBase): + socket_8mm_deep = BasePart("Socket Wrench 8mm or 5/16\" (deep)") + pry_tool = BasePart("Pry Tool") + + +@dataclass +class BaseCarHarness(BasePart): + parts: list[Enum] = field(default_factory=lambda: [Accessory.harness_box, Accessory.comma_power]) + has_connector: bool = True # without are hidden on the harness connector page + + +class CarHarness(EnumBase): + nidec = BaseCarHarness("Honda Nidec connector") + bosch_a = BaseCarHarness("Honda Bosch A connector") + bosch_b = BaseCarHarness("Honda Bosch B connector") + bosch_c = BaseCarHarness("Honda Bosch C connector") + toyota_a = BaseCarHarness("Toyota A connector") + toyota_b = BaseCarHarness("Toyota B connector") + subaru_a = BaseCarHarness("Subaru A connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) + subaru_b = BaseCarHarness("Subaru B connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) + subaru_c = BaseCarHarness("Subaru C connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) + subaru_d = BaseCarHarness("Subaru D connector", parts=[Accessory.harness_box, Accessory.comma_power, Tool.socket_8mm_deep, Tool.pry_tool]) + fca = BaseCarHarness("FCA connector") + ram = BaseCarHarness("Ram connector") + vw_a = BaseCarHarness("VW A connector") + vw_j533 = BaseCarHarness("VW J533 connector", parts=[Accessory.harness_box, Cable.long_obdc_cable, Cable.usbc_coupler]) + hyundai_a = BaseCarHarness("Hyundai A connector") + hyundai_b = BaseCarHarness("Hyundai B connector") + hyundai_c = BaseCarHarness("Hyundai C connector") + hyundai_d = BaseCarHarness("Hyundai D connector") + hyundai_e = BaseCarHarness("Hyundai E connector") + hyundai_f = BaseCarHarness("Hyundai F connector") + hyundai_g = BaseCarHarness("Hyundai G connector") + hyundai_h = BaseCarHarness("Hyundai H connector") + hyundai_i = BaseCarHarness("Hyundai I connector") + hyundai_j = BaseCarHarness("Hyundai J connector") + hyundai_k = BaseCarHarness("Hyundai K connector") + hyundai_l = BaseCarHarness("Hyundai L connector") + hyundai_m = BaseCarHarness("Hyundai M connector") + hyundai_n = BaseCarHarness("Hyundai N connector") + hyundai_o = BaseCarHarness("Hyundai O connector") + hyundai_p = BaseCarHarness("Hyundai P connector") + hyundai_q = BaseCarHarness("Hyundai Q connector") + hyundai_r = BaseCarHarness("Hyundai R connector") + custom = BaseCarHarness("Developer connector") + obd_ii = BaseCarHarness("OBD-II connector", parts=[Cable.long_obdc_cable, Cable.usbc_coupler], has_connector=False) + gm = BaseCarHarness("GM connector", parts=[Accessory.harness_box]) + gmsdgm = BaseCarHarness("GM SDGM connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + nissan_a = BaseCarHarness("Nissan A connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + nissan_b = BaseCarHarness("Nissan B connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + mazda = BaseCarHarness("Mazda connector") + ford_q3 = BaseCarHarness("Ford Q3 connector") + ford_q4 = BaseCarHarness("Ford Q4 connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + rivian = BaseCarHarness("Rivian A connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + tesla_a = BaseCarHarness("Tesla A connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + tesla_b = BaseCarHarness("Tesla B connector", parts=[Accessory.harness_box, Accessory.comma_power, Cable.long_obdc_cable, Cable.usbc_coupler]) + + +class Device(EnumBase): + threex = BasePart("comma 3X", parts=[Mount.mount, Cable.right_angle_obd_c_cable_1_5ft]) + # variant of comma 3X with angled mounts + threex_angled_mount = BasePart("comma 3X", parts=[Mount.angled_mount_8_degrees, Cable.right_angle_obd_c_cable_1_5ft]) + red_panda = BasePart("red panda") + + +class Kit(EnumBase): + red_panda_kit = BasePart("CAN FD panda kit", parts=[Device.red_panda, Accessory.harness_box, + Cable.usb_a_2_a_cable, Cable.usbc_otg_cable, Cable.obd_c_cable_1_5ft]) + + +class PartType(Enum): + accessory = Accessory + cable = Cable + connector = CarHarness + device = Device + kit = Kit + mount = Mount + tool = Tool + + +DEFAULT_CAR_PARTS: list[EnumBase] = [Device.threex] + + +@dataclass +class CarParts: + parts: list[EnumBase] = field(default_factory=list) + + def __call__(self): + return copy.deepcopy(self) + + @classmethod + def common(cls, add: list[EnumBase] = None, remove: list[EnumBase] = None): + p = [part for part in (add or []) + DEFAULT_CAR_PARTS if part not in (remove or [])] + return cls(p) + + def all_parts(self): + parts = [] + for part in self.parts: + parts.extend(part.value.all_parts()) + return self.parts + parts + + +CarFootnote = namedtuple("CarFootnote", ["text", "column", "docs_only", "setup_note"], defaults=(False, False)) + + +class CommonFootnote(Enum): + EXP_LONG_AVAIL = CarFootnote( + "openpilot Longitudinal Control (Alpha) is available behind a toggle; " + + "the toggle is only available in non-release branches such as `devel` or `nightly-dev`.", + Column.LONGITUDINAL, docs_only=True) + EXP_LONG_DSU = CarFootnote( + "By default, this car will use the stock Adaptive Cruise Control (ACC) for longitudinal control. " + + "If the Driver Support Unit (DSU) is disconnected, openpilot ACC will replace " + + "stock ACC. NOTE: disconnecting the DSU disables Automatic Emergency Braking (AEB).", + Column.LONGITUDINAL) + + +def get_footnotes(footnotes: list[Enum], column: Column) -> list[Enum]: + # Returns applicable footnotes given current column + return [fn for fn in footnotes if fn.value.column == column] + + +# TODO: store years as a list +def get_year_list(years): + years_list = [] + if len(years) == 0: + return years_list + + for year in years.split(','): + year = year.strip() + if len(year) == 4: + years_list.append(str(year)) + elif "-" in year and len(year) == 7: + start, end = year.split("-") + years_list.extend(map(str, range(int(start), int(f"20{end}") + 1))) + else: + raise Exception(f"Malformed year string: {years}") + return years_list + + +def split_name(name: str) -> tuple[str, str, str]: + make, model = name.split(" ", 1) + years = "" + match = re.search(MODEL_YEARS_RE, model) + if match is not None: + years = model[match.start():] + model = model[:match.start() - 1] + return make, model, years + + +@dataclass +class CarDocs: + # make + model + model years + name: str + + # the simplest description of the requirements for the US market + package: str + + video: str | None = None + setup_video: str | None = None + footnotes: list[Enum] = field(default_factory=list) + min_steer_speed: float | None = None + min_enable_speed: float | None = None + auto_resume: bool | None = None + + # all the parts needed for the supported car + car_parts: CarParts = field(default_factory=CarParts) + + merged: bool = True + support_type: SupportType = SupportType.UPSTREAM + support_link: str | None = "#upstream" + + def __post_init__(self): + self.make, self.model, self.years = split_name(self.name) + self.year_list = get_year_list(self.years) + + def init(self, CP: CarParams, all_footnotes=None): + self.brand = CP.brand + self.car_fingerprint = CP.carFingerprint + + if self.merged and CP.dashcamOnly: + if self.support_type != SupportType.REVIEW: + self.support_type = SupportType.DASHCAM + self.support_link = "#dashcam" + else: + self.support_link = "#under-review" + + # longitudinal column + op_long = "Stock" + if CP.alphaLongitudinalAvailable or CP.enableDsu: + op_long = "openpilot available" + if CP.enableDsu: + self.footnotes.append(CommonFootnote.EXP_LONG_DSU) + else: + self.footnotes.append(CommonFootnote.EXP_LONG_AVAIL) + elif CP.openpilotLongitudinalControl and not CP.enableDsu: + op_long = "openpilot" + + # min steer & enable speed columns + # TODO: set all the min steer speeds in carParams and remove this + if self.min_steer_speed is not None: + assert CP.minSteerSpeed < 0.5, f"{CP.carFingerprint}: Minimum steer speed set in both CarDocs and CarParams" + else: + self.min_steer_speed = CP.minSteerSpeed + + # TODO: set all the min enable speeds in carParams correctly and remove this + if self.min_enable_speed is None: + self.min_enable_speed = CP.minEnableSpeed + + if self.auto_resume is None: + self.auto_resume = CP.autoResumeSng and self.min_enable_speed <= 0 + + # hardware column + hardware_col = "None" + if self.car_parts.parts: + buy_link = f'Buy Here' + + tools_docs = [part for part in self.car_parts.all_parts() if isinstance(part, Tool)] + parts_docs = [part for part in self.car_parts.all_parts() if not isinstance(part, Tool)] + + def display_func(parts): + return '
'.join([f"- {parts.count(part)} {part.value.name}" for part in sorted(set(parts), key=lambda part: str(part.value.name))]) + + hardware_col = f'
Parts{display_func(parts_docs)}
{buy_link}
' + if len(tools_docs): + hardware_col += f'
Tools{display_func(tools_docs)}
' + + self.row: dict[Enum, str | Star] = { + Column.MAKE: self.make, + Column.MODEL: self.model, + Column.PACKAGE: self.package, + Column.LONGITUDINAL: op_long, + Column.FSR_LONGITUDINAL: f"{max(self.min_enable_speed * CV.MS_TO_MPH, 0):.0f} mph", + Column.FSR_STEERING: f"{max(self.min_steer_speed * CV.MS_TO_MPH, 0):.0f} mph", + Column.STEERING_TORQUE: Star.EMPTY, + Column.AUTO_RESUME: Star.FULL if self.auto_resume else Star.EMPTY, + Column.HARDWARE: hardware_col, + Column.VIDEO: self.video or "", # replaced with an image and link from template in get_column + Column.SETUP_VIDEO: self.setup_video or "", # replaced with an image and link from template in get_column + } + + if self.support_link is not None: + support_info = f"[{self.support_type.value}]({self.support_link})" + else: + support_info = self.support_type.value + + self.extra_cars_row: dict[Enum, str] = { + ExtraCarsColumn.MAKE: self.make, + ExtraCarsColumn.MODEL: self.model, + ExtraCarsColumn.PACKAGE: self.package, + ExtraCarsColumn.SUPPORT: support_info, + } + + # Set steering torque star from max lateral acceleration + assert CP.maxLateralAccel > 0.1 + if CP.maxLateralAccel >= GOOD_TORQUE_THRESHOLD: + self.row[Column.STEERING_TORQUE] = Star.FULL + + self.all_footnotes = all_footnotes + self.detail_sentence = self.get_detail_sentence(CP) + + return self + + def init_make(self, CP: CarParams): + """CarDocs subclasses can add make-specific logic for harness selection, footnotes, etc.""" + + def get_detail_sentence(self, CP): + if not CP.notCar: + sentence_builder = "openpilot upgrades your {car_model} with automated lane centering{alc} and adaptive cruise control{acc}." + + if self.min_steer_speed > self.min_enable_speed: + alc = f" above {self.min_steer_speed * CV.MS_TO_MPH:.0f} mph," if self.min_steer_speed > 0 else " at all speeds," + else: + alc = "" + + # Exception for cars which do not auto-resume yet + acc = "" + if self.min_enable_speed > 0: + acc = f" while driving above {self.min_enable_speed * CV.MS_TO_MPH:.0f} mph" + elif self.auto_resume: + acc = " that automatically resumes from a stop" + + if self.row[Column.STEERING_TORQUE] != Star.FULL: + sentence_builder += " This car may not be able to take tight turns on its own." + + # experimental mode + exp_link = "Experimental mode" + if CP.openpilotLongitudinalControl and not CP.alphaLongitudinalAvailable: + sentence_builder += f" Traffic light and stop sign handling is also available in {exp_link}." + + return sentence_builder.format(car_model=f"{self.make} {self.model}", alc=alc, acc=acc) + + else: + if CP.carFingerprint == "COMMA_BODY": + return "The body is a robotics dev kit that can run openpilot. Learn more." + else: + raise Exception(f"This notCar does not have a detail sentence: {CP.carFingerprint}") + + def get_column(self, column: Column, star_icon: str, video_icon: str, footnote_tag: str) -> str: + item: str | Star = self.row[column] + if isinstance(item, Star): + item = star_icon.format(item.value) + elif column == Column.MODEL and len(self.years): + item += f" {self.years}" + elif column in (Column.VIDEO, Column.SETUP_VIDEO) and len(item) > 0: + item = video_icon.format(item) + + footnotes = get_footnotes(self.footnotes, column) + if len(footnotes): + sups = sorted([self.all_footnotes[fn] for fn in footnotes]) + item += footnote_tag.format(f'{",".join(map(str, sups))}') + + return item + + def get_extra_cars_column(self, column: ExtraCarsColumn) -> str: + item: str = self.extra_cars_row[column] + if column == ExtraCarsColumn.MODEL and len(self.years): + item += f" {self.years}" + + return item + + +@dataclass +class ExtraCarDocs(CarDocs): + package: str = "Any" + merged: bool = False + support_type: SupportType = SupportType.INCOMPATIBLE + support_link: str | None = "#incompatible" diff --git a/opendbc_repo/opendbc/car/ecu_addrs.py b/opendbc_repo/opendbc/car/ecu_addrs.py new file mode 100644 index 0000000000..82141fca3e --- /dev/null +++ b/opendbc_repo/opendbc/car/ecu_addrs.py @@ -0,0 +1,55 @@ +import time + +from opendbc.car import make_tester_present_msg, uds +from opendbc.car.can_definitions import CanData, CanRecvCallable, CanSendCallable +from opendbc.car.carlog import carlog +from opendbc.car.fw_query_definitions import EcuAddrBusType + + +def _is_tester_present_response(msg: CanData, subaddr: int = None) -> bool: + # ISO-TP messages are always padded to 8 bytes + # tester present response is always a single frame + dat_offset = 1 if subaddr is not None else 0 + if len(msg.dat) == 8 and 1 <= msg.dat[dat_offset] <= 7: + # success response + if msg.dat[dat_offset + 1] == (uds.SERVICE_TYPE.TESTER_PRESENT + 0x40): + return True + # error response + if msg.dat[dat_offset + 1] == 0x7F and msg.dat[dat_offset + 2] == uds.SERVICE_TYPE.TESTER_PRESENT: + return True + return False + + +def get_all_ecu_addrs(can_recv: CanRecvCallable, can_send: CanSendCallable, bus: int, timeout: float = 1) -> set[EcuAddrBusType]: + addr_list = [0x700 + i for i in range(256)] + [0x18da00f1 + (i << 8) for i in range(256)] + queries: set[EcuAddrBusType] = {(addr, None, bus) for addr in addr_list} + responses = queries + return get_ecu_addrs(can_recv, can_send, queries, responses, timeout=timeout) + + +def get_ecu_addrs(can_recv: CanRecvCallable, can_send: CanSendCallable, queries: set[EcuAddrBusType], + responses: set[EcuAddrBusType], timeout: float = 1) -> set[EcuAddrBusType]: + ecu_responses: set[EcuAddrBusType] = set() # set((addr, subaddr, bus),) + try: + msgs = [make_tester_present_msg(addr, bus, subaddr) for addr, subaddr, bus in queries] + + can_recv() + can_send(msgs) + start_time = time.monotonic() + while time.monotonic() - start_time < timeout: + can_packets = can_recv(wait_for_one=True) + for packet in can_packets: + for msg in packet: + if not len(msg.dat): + carlog.warning("ECU addr scan: skipping empty remote frame") + continue + + subaddr = None if (msg.address, None, msg.src) in responses else msg.dat[0] + if (msg.address, subaddr, msg.src) in responses and _is_tester_present_response(msg, subaddr): + carlog.debug(f"CAN-RX: {hex(msg.address)} - 0x{bytes.hex(msg.dat)}") + if (msg.address, subaddr, msg.src) in ecu_responses: + carlog.debug(f"Duplicate ECU address: {hex(msg.address)}") + ecu_responses.add((msg.address, subaddr, msg.src)) + except Exception: + carlog.exception("ECU addr scan exception") + return ecu_responses diff --git a/opendbc_repo/opendbc/car/extra_cars.py b/opendbc_repo/opendbc/car/extra_cars.py new file mode 100644 index 0000000000..da20140a6c --- /dev/null +++ b/opendbc_repo/opendbc/car/extra_cars.py @@ -0,0 +1,72 @@ +from dataclasses import dataclass + +from opendbc.car import structs, Platforms, ExtraPlatformConfig +from opendbc.car.docs_definitions import ExtraCarDocs, SupportType + + +@dataclass +class CommunityCarDocs(ExtraCarDocs): + def init_make(self, CP: structs.CarParams): + self.support_type = SupportType.COMMUNITY + self.support_link = "#community" + + +@dataclass +class ToyotaSecurityCarDocs(ExtraCarDocs): + def init_make(self, CP: structs.CarParams): + self.support_type = SupportType.INCOMPATIBLE + self.support_link = "#can-bus-security" + + +@dataclass +class FlexRayCarDocs(ExtraCarDocs): + def init_make(self, CP: structs.CarParams): + self.support_type = SupportType.INCOMPATIBLE + self.support_link = "#flexray" + + +class CAR(Platforms): + config: ExtraPlatformConfig + + EXTRA_HONDA = ExtraPlatformConfig( + [ + CommunityCarDocs("Acura Integra 2024", "All"), + CommunityCarDocs("Honda Accord 2023-24", "All"), + CommunityCarDocs("Honda Clarity 2018-21", "All"), + CommunityCarDocs("Honda CR-V 2024", "All"), + CommunityCarDocs("Honda CR-V Hybrid 2024", "All"), + CommunityCarDocs("Honda Odyssey 2021-25", "All"), + CommunityCarDocs("Honda Pilot 2023-24", "All"), + ], + ) + + EXTRA_HYUNDAI = ExtraPlatformConfig( + [ + CommunityCarDocs("Hyundai Palisade 2023-24", package="HDA2"), + CommunityCarDocs("Kia Telluride 2023-24", package="HDA2"), + ], + ) + + EXTRA_TOYOTA = ExtraPlatformConfig( + [ + ToyotaSecurityCarDocs("Subaru Solterra 2023-25"), + ToyotaSecurityCarDocs("Lexus NS 2022-25"), + ToyotaSecurityCarDocs("Toyota bZ4x 2023-25"), + ToyotaSecurityCarDocs("Toyota Camry 2025"), + ToyotaSecurityCarDocs("Toyota Corolla Cross 2022-25"), + ToyotaSecurityCarDocs("Toyota Highlander 2025"), + ToyotaSecurityCarDocs("Toyota RAV4 Prime 2024-25"), + ToyotaSecurityCarDocs("Toyota Sequoia 2023-25"), + ToyotaSecurityCarDocs("Toyota Sienna 2024-25"), + ToyotaSecurityCarDocs("Toyota Tundra 2022-25"), + ToyotaSecurityCarDocs("Toyota Venza 2021-25"), + ], + ) + + EXTRA_VOLKSWAGEN = ExtraPlatformConfig( + [ + FlexRayCarDocs("Audi A4 2016-24", package="All"), + FlexRayCarDocs("Audi A5 2016-24", package="All"), + FlexRayCarDocs("Audi Q5 2017-24", package="All"), + ], + ) diff --git a/opendbc_repo/opendbc/car/fingerprints.py b/opendbc_repo/opendbc/car/fingerprints.py new file mode 100644 index 0000000000..a3d5227b25 --- /dev/null +++ b/opendbc_repo/opendbc/car/fingerprints.py @@ -0,0 +1,362 @@ +from opendbc.car.interfaces import get_interface_attr +from opendbc.car.body.values import CAR as BODY +from opendbc.car.chrysler.values import CAR as CHRYSLER +from opendbc.car.ford.values import CAR as FORD +from opendbc.car.gm.values import CAR as GM +from opendbc.car.honda.values import CAR as HONDA +from opendbc.car.hyundai.values import CAR as HYUNDAI +from opendbc.car.mazda.values import CAR as MAZDA +from opendbc.car.mock.values import CAR as MOCK +from opendbc.car.nissan.values import CAR as NISSAN +from opendbc.car.subaru.values import CAR as SUBARU +from opendbc.car.toyota.values import CAR as TOYOTA +from opendbc.car.volkswagen.values import CAR as VW + +FW_VERSIONS = get_interface_attr('FW_VERSIONS', combine_brands=True, ignore_none=True) +_FINGERPRINTS = get_interface_attr('FINGERPRINTS', combine_brands=True, ignore_none=True) + +# Add BMW fingerprints from selfdrive (not in opendbc yet) +try: + from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS as BMW_FINGERPRINTS + _FINGERPRINTS.update(BMW_FINGERPRINTS) +except ImportError: + pass + +_DEBUG_ADDRESS = {1880: 8} # reserved for debug purposes + + +def is_valid_for_fingerprint(msg, car_fingerprint: dict[int, int]): + adr = msg.address + # ignore addresses that are more than 11 bits + return (adr in car_fingerprint and car_fingerprint[adr] == len(msg.dat)) or adr >= 0x800 + + +def eliminate_incompatible_cars(msg, candidate_cars): + """Removes cars that could not have sent msg. + + Inputs: + msg: A cereal/log CanData message from the car. + candidate_cars: A list of cars to consider. + + Returns: + A list containing the subset of candidate_cars that could have sent msg. + """ + compatible_cars = [] + + for car_name in candidate_cars: + car_fingerprints = _FINGERPRINTS[car_name] + + for fingerprint in car_fingerprints: + # add alien debug address + if is_valid_for_fingerprint(msg, fingerprint | _DEBUG_ADDRESS): + compatible_cars.append(car_name) + break + + return compatible_cars + + +def all_legacy_fingerprint_cars(): + """Returns a list of all known car strings, FPv1 only.""" + return list(_FINGERPRINTS.keys()) + + +# A dict that maps old platform strings to their latest representations +MIGRATION = { + "ACURA ILX 2016 ACURAWATCH PLUS": HONDA.ACURA_ILX, + "ACURA RDX 2018 ACURAWATCH PLUS": HONDA.ACURA_RDX, + "ACURA RDX 2020 TECH": HONDA.ACURA_RDX_3G, + "AUDI A3": VW.AUDI_A3_MK3, + "HONDA ACCORD 2018 HYBRID TOURING": HONDA.HONDA_ACCORD, + "HONDA ACCORD 1.5T 2018": HONDA.HONDA_ACCORD, + "HONDA ACCORD 2018 LX 1.5T": HONDA.HONDA_ACCORD, + "HONDA ACCORD 2018 SPORT 2T": HONDA.HONDA_ACCORD, + "HONDA ACCORD 2T 2018": HONDA.HONDA_ACCORD, + "HONDA ACCORD HYBRID 2018": HONDA.HONDA_ACCORD, + "HONDA CIVIC 2016 TOURING": HONDA.HONDA_CIVIC, + "HONDA CIVIC HATCHBACK 2017 SEDAN/COUPE 2019": HONDA.HONDA_CIVIC_BOSCH, + "HONDA CIVIC SEDAN 1.6 DIESEL": HONDA.HONDA_CIVIC_BOSCH_DIESEL, + "HONDA CR-V 2016 EXECUTIVE": HONDA.HONDA_CRV_EU, + "HONDA CR-V 2016 TOURING": HONDA.HONDA_CRV, + "HONDA CR-V 2017 EX": HONDA.HONDA_CRV_5G, + "HONDA CR-V 2019 HYBRID": HONDA.HONDA_CRV_HYBRID, + "HONDA FIT 2018 EX": HONDA.HONDA_FIT, + "HONDA HRV 2019 TOURING": HONDA.HONDA_HRV, + "HONDA INSIGHT 2019 TOURING": HONDA.HONDA_INSIGHT, + "HONDA ODYSSEY 2018 EX-L": HONDA.HONDA_ODYSSEY, + "HONDA ODYSSEY 2019 EXCLUSIVE CHN": HONDA.HONDA_ODYSSEY_CHN, + "HONDA PILOT 2017 TOURING": HONDA.HONDA_PILOT, + "HONDA PILOT 2019 ELITE": HONDA.HONDA_PILOT, + "HONDA PILOT 2019": HONDA.HONDA_PILOT, + "HONDA PASSPORT 2021": HONDA.HONDA_PILOT, + "HONDA RIDGELINE 2017 BLACK EDITION": HONDA.HONDA_RIDGELINE, + "HYUNDAI ELANTRA LIMITED ULTIMATE 2017": HYUNDAI.HYUNDAI_ELANTRA, + "HYUNDAI SANTA FE LIMITED 2019": HYUNDAI.HYUNDAI_SANTA_FE, + "HYUNDAI TUCSON DIESEL 2019": HYUNDAI.HYUNDAI_TUCSON, + "KIA OPTIMA 2016": HYUNDAI.KIA_OPTIMA_G4, + "KIA OPTIMA 2019": HYUNDAI.KIA_OPTIMA_G4_FL, + "KIA OPTIMA SX 2019 & 2016": HYUNDAI.KIA_OPTIMA_G4_FL, + "LEXUS CT 200H 2018": TOYOTA.LEXUS_CTH, + "LEXUS ES 300H 2018": TOYOTA.LEXUS_ES, + "LEXUS ES 300H 2019": TOYOTA.LEXUS_ES_TSS2, + "LEXUS IS300 2018": TOYOTA.LEXUS_IS, + "LEXUS NX300 2018": TOYOTA.LEXUS_NX, + "LEXUS NX300H 2018": TOYOTA.LEXUS_NX, + "LEXUS RX 350 2016": TOYOTA.LEXUS_RX, + "LEXUS RX350 2020": TOYOTA.LEXUS_RX_TSS2, + "LEXUS RX450 HYBRID 2020": TOYOTA.LEXUS_RX_TSS2, + "TOYOTA SIENNA XLE 2018": TOYOTA.TOYOTA_SIENNA, + "TOYOTA C-HR HYBRID 2018": TOYOTA.TOYOTA_CHR, + "TOYOTA COROLLA HYBRID TSS2 2019": TOYOTA.TOYOTA_COROLLA_TSS2, + "TOYOTA RAV4 HYBRID 2019": TOYOTA.TOYOTA_RAV4_TSS2, + "LEXUS ES HYBRID 2019": TOYOTA.LEXUS_ES_TSS2, + "LEXUS NX HYBRID 2018": TOYOTA.LEXUS_NX, + "LEXUS NX HYBRID 2020": TOYOTA.LEXUS_NX_TSS2, + "LEXUS RX HYBRID 2020": TOYOTA.LEXUS_RX_TSS2, + "TOYOTA ALPHARD HYBRID 2021": TOYOTA.TOYOTA_ALPHARD_TSS2, + "TOYOTA AVALON HYBRID 2019": TOYOTA.TOYOTA_AVALON_2019, + "TOYOTA AVALON HYBRID 2022": TOYOTA.TOYOTA_AVALON_TSS2, + "TOYOTA CAMRY HYBRID 2018": TOYOTA.TOYOTA_CAMRY, + "TOYOTA CAMRY HYBRID 2021": TOYOTA.TOYOTA_CAMRY_TSS2, + "TOYOTA C-HR HYBRID 2022": TOYOTA.TOYOTA_CHR_TSS2, + "TOYOTA HIGHLANDER HYBRID 2020": TOYOTA.TOYOTA_HIGHLANDER_TSS2, + "TOYOTA RAV4 HYBRID 2022": TOYOTA.TOYOTA_RAV4_TSS2_2022, + "TOYOTA RAV4 HYBRID 2023": TOYOTA.TOYOTA_RAV4_TSS2_2023, + "TOYOTA HIGHLANDER HYBRID 2018": TOYOTA.TOYOTA_HIGHLANDER, + "LEXUS ES HYBRID 2018": TOYOTA.LEXUS_ES, + "LEXUS RX HYBRID 2017": TOYOTA.LEXUS_RX, + "HYUNDAI TUCSON HYBRID 4TH GEN": HYUNDAI.HYUNDAI_TUCSON_4TH_GEN, + "KIA SPORTAGE HYBRID 5TH GEN": HYUNDAI.KIA_SPORTAGE_5TH_GEN, + "KIA SORENTO PLUG-IN HYBRID 4TH GEN": HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, + "CADILLAC ESCALADE ESV PLATINUM 2019": GM.CADILLAC_ESCALADE_ESV_2019, + + # Removal of platform_str, see https://github.com/commaai/openpilot/pull/31868/ + "COMMA BODY": BODY.COMMA_BODY, + "CHRYSLER PACIFICA HYBRID 2017": CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID, + "CHRYSLER_PACIFICA_2017_HYBRID": CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID, + "CHRYSLER PACIFICA HYBRID 2018": CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID, + "CHRYSLER PACIFICA HYBRID 2019": CHRYSLER.CHRYSLER_PACIFICA_2019_HYBRID, + "CHRYSLER PACIFICA 2018": CHRYSLER.CHRYSLER_PACIFICA_2018, + "CHRYSLER PACIFICA 2020": CHRYSLER.CHRYSLER_PACIFICA_2020, + "DODGE DURANGO 2021": CHRYSLER.DODGE_DURANGO, + "JEEP GRAND CHEROKEE V6 2018": CHRYSLER.JEEP_GRAND_CHEROKEE, + "JEEP GRAND CHEROKEE 2019": CHRYSLER.JEEP_GRAND_CHEROKEE_2019, + "RAM 1500 5TH GEN": CHRYSLER.RAM_1500_5TH_GEN, + "RAM HD 5TH GEN": CHRYSLER.RAM_HD_5TH_GEN, + "FORD BRONCO SPORT 1ST GEN": FORD.FORD_BRONCO_SPORT_MK1, + "FORD ESCAPE 4TH GEN": FORD.FORD_ESCAPE_MK4, + "FORD EXPLORER 6TH GEN": FORD.FORD_EXPLORER_MK6, + "FORD F-150 14TH GEN": FORD.FORD_F_150_MK14, + "FORD F-150 LIGHTNING 1ST GEN": FORD.FORD_F_150_LIGHTNING_MK1, + "FORD FOCUS 4TH GEN": FORD.FORD_FOCUS_MK4, + "FORD MAVERICK 1ST GEN": FORD.FORD_MAVERICK_MK1, + "FORD MUSTANG MACH-E 1ST GEN": FORD.FORD_MUSTANG_MACH_E_MK1, + "HOLDEN ASTRA RS-V BK 2017": GM.HOLDEN_ASTRA, + "CHEVROLET VOLT PREMIER 2017": GM.CHEVROLET_VOLT, + "CADILLAC ATS Premium Performance 2018": GM.CADILLAC_ATS, + "CHEVROLET MALIBU PREMIER 2017": GM.CHEVROLET_MALIBU, + "GMC ACADIA DENALI 2018": GM.GMC_ACADIA, + "BUICK LACROSSE 2017": GM.BUICK_LACROSSE, + "BUICK REGAL ESSENCE 2018": GM.BUICK_REGAL, + "CADILLAC ESCALADE 2017": GM.CADILLAC_ESCALADE, + "CADILLAC ESCALADE ESV 2016": GM.CADILLAC_ESCALADE_ESV, + "CADILLAC ESCALADE ESV 2019": GM.CADILLAC_ESCALADE_ESV_2019, + "CHEVROLET BOLT EUV 2022": GM.CHEVROLET_BOLT_EUV, + "CHEVROLET SILVERADO 1500 2020": GM.CHEVROLET_SILVERADO, + "CHEVROLET EQUINOX 2019": GM.CHEVROLET_EQUINOX, + "CHEVROLET TRAILBLAZER 2021": GM.CHEVROLET_TRAILBLAZER, + "HONDA ACCORD 2018": HONDA.HONDA_ACCORD, + "HONDA CIVIC (BOSCH) 2019": HONDA.HONDA_CIVIC_BOSCH, + "HONDA CIVIC SEDAN 1.6 DIESEL 2019": HONDA.HONDA_CIVIC_BOSCH_DIESEL, + "HONDA CIVIC 2022": HONDA.HONDA_CIVIC_2022, + "HONDA CR-V 2017": HONDA.HONDA_CRV_5G, + "HONDA CR-V HYBRID 2019": HONDA.HONDA_CRV_HYBRID, + "HONDA HR-V 2023": HONDA.HONDA_HRV_3G, + "ACURA RDX 2020": HONDA.ACURA_RDX_3G, + "HONDA INSIGHT 2019": HONDA.HONDA_INSIGHT, + "HONDA E 2020": HONDA.HONDA_E, + "ACURA ILX 2016": HONDA.ACURA_ILX, + "HONDA CR-V 2016": HONDA.HONDA_CRV, + "HONDA CR-V EU 2016": HONDA.HONDA_CRV_EU, + "HONDA FIT 2018": HONDA.HONDA_FIT, + "HONDA FREED 2020": HONDA.HONDA_FREED, + "HONDA HRV 2019": HONDA.HONDA_HRV, + "HONDA ODYSSEY 2018": HONDA.HONDA_ODYSSEY, + "HONDA ODYSSEY CHN 2019": HONDA.HONDA_ODYSSEY_CHN, + "ACURA RDX 2018": HONDA.ACURA_RDX, + "HONDA PILOT 2017": HONDA.HONDA_PILOT, + "HONDA RIDGELINE 2017": HONDA.HONDA_RIDGELINE, + "HONDA CIVIC 2016": HONDA.HONDA_CIVIC, + "HYUNDAI AZERA 7TH GEN": HYUNDAI.HYUNDAI_AZERA_7TH_GEN, + "HYUNDAI AZERA 6TH GEN": HYUNDAI.HYUNDAI_AZERA_6TH_GEN, + "HYUNDAI AZERA HYBRID 6TH GEN": HYUNDAI.HYUNDAI_AZERA_HEV_6TH_GEN, + "HYUNDAI ELANTRA 2017": HYUNDAI.HYUNDAI_ELANTRA, + "HYUNDAI I30 N LINE 2019 & GT 2018 DCT": HYUNDAI.HYUNDAI_ELANTRA_GT_I30, + "HYUNDAI ELANTRA 2021": HYUNDAI.HYUNDAI_ELANTRA_2021, + "HYUNDAI ELANTRA HYBRID 2021": HYUNDAI.HYUNDAI_ELANTRA_HEV_2021, + "HYUNDAI GENESIS 2015-2016": HYUNDAI.HYUNDAI_GENESIS, + "HYUNDAI IONIQ HYBRID 2017-2019": HYUNDAI.HYUNDAI_IONIQ, + "HYUNDAI IONIQ HYBRID 2020-2022": HYUNDAI.HYUNDAI_IONIQ_HEV_2022, + "HYUNDAI IONIQ ELECTRIC LIMITED 2019": HYUNDAI.HYUNDAI_IONIQ_EV_LTD, + "HYUNDAI IONIQ ELECTRIC 2020": HYUNDAI.HYUNDAI_IONIQ_EV_2020, + "HYUNDAI IONIQ PLUG-IN HYBRID 2019": HYUNDAI.HYUNDAI_IONIQ_PHEV_2019, + "HYUNDAI IONIQ PHEV 2020": HYUNDAI.HYUNDAI_IONIQ_PHEV, + "HYUNDAI KONA 2020": HYUNDAI.HYUNDAI_KONA, + "HYUNDAI KONA ELECTRIC 2019": HYUNDAI.HYUNDAI_KONA_EV, + "HYUNDAI KONA ELECTRIC 2022": HYUNDAI.HYUNDAI_KONA_EV_2022, + "HYUNDAI KONA ELECTRIC 2ND GEN": HYUNDAI.HYUNDAI_KONA_EV_2ND_GEN, + "HYUNDAI KONA HYBRID 2020": HYUNDAI.HYUNDAI_KONA_HEV, + "HYUNDAI KONA HYBRID 2ND GEN": HYUNDAI.HYUNDAI_KONA_HEV_2ND_GEN, + "HYUNDAI SANTA FE 2019": HYUNDAI.HYUNDAI_SANTA_FE, + "HYUNDAI SANTA FE 2022": HYUNDAI.HYUNDAI_SANTA_FE_2022, + "HYUNDAI SANTA FE HYBRID 2022": HYUNDAI.HYUNDAI_SANTA_FE_HEV_2022, + "HYUNDAI SANTA FE PlUG-IN HYBRID 2022": HYUNDAI.HYUNDAI_SANTA_FE_PHEV_2022, + "HYUNDAI SONATA 2020": HYUNDAI.HYUNDAI_SONATA, + "HYUNDAI SONATA 2019": HYUNDAI.HYUNDAI_SONATA_LF, + "HYUNDAI STARIA 4TH GEN": HYUNDAI.HYUNDAI_STARIA_4TH_GEN, + "HYUNDAI TUCSON 2019": HYUNDAI.HYUNDAI_TUCSON, + "HYUNDAI PALISADE 2020": HYUNDAI.HYUNDAI_PALISADE, + "HYUNDAI VELOSTER 2019": HYUNDAI.HYUNDAI_VELOSTER, + "HYUNDAI SONATA HYBRID 2021": HYUNDAI.HYUNDAI_SONATA_HYBRID, + "HYUNDAI SONATA 2024": HYUNDAI.HYUNDAI_SONATA_2024, + "HYUNDAI IONIQ 5 2022": HYUNDAI.HYUNDAI_IONIQ_5, + "HYUNDAI IONIQ 5 PE (NE1)": HYUNDAI.HYUNDAI_IONIQ_5_PE, + "HYUNDAI IONIQ 6 2023": HYUNDAI.HYUNDAI_IONIQ_6, + "HYUNDAI IONIQ 9 2025": HYUNDAI.HYUNDAI_IONIQ_9, + "HYUNDAI TUCSON 4TH GEN": HYUNDAI.HYUNDAI_TUCSON_4TH_GEN, + "HYUNDAI SANTA CRUZ 1ST GEN": HYUNDAI.HYUNDAI_SANTA_CRUZ_1ST_GEN, + "HYUNDAI CUSTIN 1ST GEN": HYUNDAI.HYUNDAI_CUSTIN_1ST_GEN, + "HYUNDAI CASPER (AX1)": HYUNDAI.HYUNDAI_CASPER, + "HYUNDAI SANTAFE (MX5)": HYUNDAI.HYUNDAI_SANTAFE_MX5, + "HYUNDAI SANTAFE HYBRID (MX5)": HYUNDAI.HYUNDAI_SANTAFE_MX5_HEV, + "HYUNDAI PORTER II EV 2024": HYUNDAI.HYUNDAI_PORTER_II_EV, + "HYUNDAI NEXO 1ST GEN": HYUNDAI.HYUNDAI_NEXO_1ST_GEN, + "KIA FORTE E 2018 & GT 2021": HYUNDAI.KIA_FORTE, + "KIA K5 2021": HYUNDAI.KIA_K5_2021, + "KIA K5 HYBRID 2020": HYUNDAI.KIA_K5_HEV_2020, + "KIA K5 2024 (DL3)": HYUNDAI.KIA_K5_DL3_24, + "KIA K5 HYBRID 2024 (DL3)": HYUNDAI.KIA_K5_DL3_24_HEV, + "KIA K8 HYBRID 1ST GEN": HYUNDAI.KIA_K8_HEV_1ST_GEN, + "KIA NIRO EV 2020": HYUNDAI.KIA_NIRO_EV, + "KIA NIRO EV 2ND GEN": HYUNDAI.KIA_NIRO_EV_2ND_GEN, + "KIA NIRO HYBRID 2019": HYUNDAI.KIA_NIRO_PHEV, + "KIA NIRO PLUG-IN HYBRID 2022": HYUNDAI.KIA_NIRO_PHEV_2022, + "KIA NIRO HYBRID 2021": HYUNDAI.KIA_NIRO_HEV_2021, + "KIA NIRO HYBRID 2ND GEN": HYUNDAI.KIA_NIRO_HEV_2ND_GEN, + "KIA OPTIMA 4TH GEN": HYUNDAI.KIA_OPTIMA_G4, + "KIA OPTIMA 4TH GEN FACELIFT": HYUNDAI.KIA_OPTIMA_G4_FL, + "KIA OPTIMA HYBRID 2017 & SPORTS 2019": HYUNDAI.KIA_OPTIMA_H, + "KIA OPTIMA HYBRID 4TH GEN FACELIFT": HYUNDAI.KIA_OPTIMA_H_G4_FL, + "KIA SELTOS 2021": HYUNDAI.KIA_SELTOS, + "KIA SPORTAGE 5TH GEN": HYUNDAI.KIA_SPORTAGE_5TH_GEN, + "KIA SORENTO GT LINE 2018": HYUNDAI.KIA_SORENTO, + "KIA SORENTO 4TH GEN": HYUNDAI.KIA_SORENTO_4TH_GEN, + "KIA SORENTO HYBRID 4TH GEN": HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, + "KIA STINGER GT2 2018": HYUNDAI.KIA_STINGER, + "KIA STINGER 2022": HYUNDAI.KIA_STINGER_2022, + "KIA CEED INTRO ED 2019": HYUNDAI.KIA_CEED, + "KIA EV6 2022": HYUNDAI.KIA_EV6, + "KIA EV6 PE (CV1)": HYUNDAI.KIA_EV6_PE, + "KIA CARNIVAL 4TH GEN": HYUNDAI.KIA_CARNIVAL_4TH_GEN, + "KIA EV9 (MV)": HYUNDAI.KIA_EV9, + "KIA EV3 (SV1)": HYUNDAI.KIA_EV3, + "GENESIS GV60 ELECTRIC 1ST GEN": HYUNDAI.GENESIS_GV60_EV_1ST_GEN, + "GENESIS G70 2018": HYUNDAI.GENESIS_G70, + "GENESIS G70 2020": HYUNDAI.GENESIS_G70_2020, + "GENESIS GV70 1ST GEN": HYUNDAI.GENESIS_GV70_1ST_GEN, + "GENESIS G80 2017": HYUNDAI.GENESIS_G80, + "GENESIS G90 2017": HYUNDAI.GENESIS_G90, + "GENESIS GV80 2023": HYUNDAI.GENESIS_GV80, + "MAZDA CX-5": MAZDA.MAZDA_CX5, + "MAZDA CX-9": MAZDA.MAZDA_CX9, + "MAZDA 3": MAZDA.MAZDA_3, + "MAZDA 6": MAZDA.MAZDA_6, + "MAZDA CX-9 2021": MAZDA.MAZDA_CX9_2021, + "MAZDA CX-5 2022": MAZDA.MAZDA_CX5_2022, + "NISSAN X-TRAIL 2017": NISSAN.NISSAN_XTRAIL, + "NISSAN LEAF 2018": NISSAN.NISSAN_LEAF, + "NISSAN LEAF 2018 Instrument Cluster": NISSAN.NISSAN_LEAF_IC, + "NISSAN ROGUE 2019": NISSAN.NISSAN_ROGUE, + "NISSAN ALTIMA 2020": NISSAN.NISSAN_ALTIMA, + "SUBARU ASCENT LIMITED 2019": SUBARU.SUBARU_ASCENT, + "SUBARU OUTBACK 6TH GEN": SUBARU.SUBARU_OUTBACK, + "SUBARU LEGACY 7TH GEN": SUBARU.SUBARU_LEGACY, + "SUBARU IMPREZA LIMITED 2019": SUBARU.SUBARU_IMPREZA, + "SUBARU IMPREZA SPORT 2020": SUBARU.SUBARU_IMPREZA_2020, + "SUBARU CROSSTREK HYBRID 2020": SUBARU.SUBARU_CROSSTREK_HYBRID, + "SUBARU FORESTER 2019": SUBARU.SUBARU_FORESTER, + "SUBARU FORESTER HYBRID 2020": SUBARU.SUBARU_FORESTER_HYBRID, + "SUBARU FORESTER 2017 - 2018": SUBARU.SUBARU_FORESTER_PREGLOBAL, + "SUBARU LEGACY 2015 - 2018": SUBARU.SUBARU_LEGACY_PREGLOBAL, + "SUBARU OUTBACK 2015 - 2017": SUBARU.SUBARU_OUTBACK_PREGLOBAL, + "SUBARU OUTBACK 2018 - 2019": SUBARU.SUBARU_OUTBACK_PREGLOBAL_2018, + "SUBARU FORESTER 2022": SUBARU.SUBARU_FORESTER_2022, + "SUBARU OUTBACK 7TH GEN": SUBARU.SUBARU_OUTBACK_2023, + "SUBARU ASCENT 2023": SUBARU.SUBARU_ASCENT_2023, + "TOYOTA ALPHARD 2020": TOYOTA.TOYOTA_ALPHARD_TSS2, + "TOYOTA AVALON 2016": TOYOTA.TOYOTA_AVALON, + "TOYOTA AVALON 2019": TOYOTA.TOYOTA_AVALON_2019, + "TOYOTA AVALON 2022": TOYOTA.TOYOTA_AVALON_TSS2, + "TOYOTA CAMRY 2018": TOYOTA.TOYOTA_CAMRY, + "TOYOTA CAMRY 2021": TOYOTA.TOYOTA_CAMRY_TSS2, + "TOYOTA C-HR 2018": TOYOTA.TOYOTA_CHR, + "TOYOTA C-HR 2021": TOYOTA.TOYOTA_CHR_TSS2, + "TOYOTA COROLLA 2017": TOYOTA.TOYOTA_COROLLA, + "TOYOTA COROLLA TSS2 2019": TOYOTA.TOYOTA_COROLLA_TSS2, + "TOYOTA HIGHLANDER 2017": TOYOTA.TOYOTA_HIGHLANDER, + "TOYOTA HIGHLANDER 2020": TOYOTA.TOYOTA_HIGHLANDER_TSS2, + "TOYOTA PRIUS 2017": TOYOTA.TOYOTA_PRIUS, + "TOYOTA PRIUS v 2017": TOYOTA.TOYOTA_PRIUS_V, + "TOYOTA PRIUS TSS2 2021": TOYOTA.TOYOTA_PRIUS_TSS2, + "TOYOTA RAV4 2017": TOYOTA.TOYOTA_RAV4, + "TOYOTA RAV4 HYBRID 2017": TOYOTA.TOYOTA_RAV4H, + "TOYOTA RAV4 2019": TOYOTA.TOYOTA_RAV4_TSS2, + "TOYOTA RAV4 2022": TOYOTA.TOYOTA_RAV4_TSS2_2022, + "TOYOTA RAV4 2023": TOYOTA.TOYOTA_RAV4_TSS2_2023, + "TOYOTA MIRAI 2021": TOYOTA.TOYOTA_MIRAI, + "TOYOTA SIENNA 2018": TOYOTA.TOYOTA_SIENNA, + "LEXUS CT HYBRID 2018": TOYOTA.LEXUS_CTH, + "LEXUS ES 2018": TOYOTA.LEXUS_ES, + "LEXUS ES 2019": TOYOTA.LEXUS_ES_TSS2, + "LEXUS IS 2018": TOYOTA.LEXUS_IS, + "LEXUS IS 2023": TOYOTA.LEXUS_IS_TSS2, + "LEXUS NX 2018": TOYOTA.LEXUS_NX, + "LEXUS NX 2020": TOYOTA.LEXUS_NX_TSS2, + "LEXUS LC 2024": TOYOTA.LEXUS_LC_TSS2, + "LEXUS RC 2020": TOYOTA.LEXUS_RC, + "LEXUS RX 2016": TOYOTA.LEXUS_RX, + "LEXUS RX 2020": TOYOTA.LEXUS_RX_TSS2, + "LEXUS GS F 2016": TOYOTA.LEXUS_GS_F, + "VOLKSWAGEN ARTEON 1ST GEN": VW.VOLKSWAGEN_ARTEON_MK1, + "VOLKSWAGEN ATLAS 1ST GEN": VW.VOLKSWAGEN_ATLAS_MK1, + "VOLKSWAGEN CADDY 3RD GEN": VW.VOLKSWAGEN_CADDY_MK3, + "VOLKSWAGEN CRAFTER 2ND GEN": VW.VOLKSWAGEN_CRAFTER_MK2, + "VOLKSWAGEN GOLF 7TH GEN": VW.VOLKSWAGEN_GOLF_MK7, + "VOLKSWAGEN JETTA 6TH GEN": VW.VOLKSWAGEN_JETTA_MK6, + "VOLKSWAGEN JETTA 7TH GEN": VW.VOLKSWAGEN_JETTA_MK7, + "VOLKSWAGEN PASSAT 8TH GEN": VW.VOLKSWAGEN_PASSAT_MK8, + "VOLKSWAGEN PASSAT NMS": VW.VOLKSWAGEN_PASSAT_NMS, + "VOLKSWAGEN POLO 6TH GEN": VW.VOLKSWAGEN_POLO_MK6, + "VOLKSWAGEN SHARAN 2ND GEN": VW.VOLKSWAGEN_SHARAN_MK2, + "VOLKSWAGEN TAOS 1ST GEN": VW.VOLKSWAGEN_TAOS_MK1, + "VOLKSWAGEN T-CROSS 1ST GEN": VW.VOLKSWAGEN_TCROSS_MK1, + "VOLKSWAGEN TIGUAN 2ND GEN": VW.VOLKSWAGEN_TIGUAN_MK2, + "VOLKSWAGEN TOURAN 2ND GEN": VW.VOLKSWAGEN_TOURAN_MK2, + "VOLKSWAGEN TRANSPORTER T6.1": VW.VOLKSWAGEN_TRANSPORTER_T61, + "VOLKSWAGEN T-ROC 1ST GEN": VW.VOLKSWAGEN_TROC_MK1, + "AUDI A3 3RD GEN": VW.AUDI_A3_MK3, + "AUDI Q2 1ST GEN": VW.AUDI_Q2_MK1, + "AUDI Q3 2ND GEN": VW.AUDI_Q3_MK2, + "SEAT ATECA 1ST GEN": VW.SEAT_ATECA_MK1, + "SEAT LEON 3RD GEN": VW.SEAT_ATECA_MK1, + "SEAT_LEON_MK3": VW.SEAT_ATECA_MK1, + "SKODA FABIA 4TH GEN": VW.SKODA_FABIA_MK4, + "SKODA KAMIQ 1ST GEN": VW.SKODA_KAMIQ_MK1, + "SKODA KAROQ 1ST GEN": VW.SKODA_KAROQ_MK1, + "SKODA KODIAQ 1ST GEN": VW.SKODA_KODIAQ_MK1, + "SKODA OCTAVIA 3RD GEN": VW.SKODA_OCTAVIA_MK3, + "SKODA SCALA 1ST GEN": VW.SKODA_KAMIQ_MK1, + "SKODA_SCALA_MK1": VW.SKODA_KAMIQ_MK1, + "SKODA SUPERB 3RD GEN": VW.SKODA_SUPERB_MK3, + + "mock": MOCK.MOCK, +} diff --git a/opendbc_repo/opendbc/car/ford/__init__.py b/opendbc_repo/opendbc/car/ford/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/ford/carcontroller.py b/opendbc_repo/opendbc/car/ford/carcontroller.py new file mode 100644 index 0000000000..1f5644cbe0 --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/carcontroller.py @@ -0,0 +1,179 @@ +import math +import numpy as np +from opendbc.can.packer import CANPacker +from opendbc.car import ACCELERATION_DUE_TO_GRAVITY, Bus, DT_CTRL, apply_std_steer_angle_limits, structs +from opendbc.car.ford import fordcan +from opendbc.car.ford.values import CarControllerParams, FordFlags +from opendbc.car.interfaces import CarControllerBase, V_CRUISE_MAX + +LongCtrlState = structs.CarControl.Actuators.LongControlState +VisualAlert = structs.CarControl.HUDControl.VisualAlert + +# ISO 11270 +ISO_LATERAL_ACCEL = 3.0 # m/s^2 # TODO: import from test lateral limits file? + +# Limit to average banked road since safety doesn't have the roll +EARTH_G = 9.81 +AVERAGE_ROAD_ROLL = 0.06 # ~3.4 degrees, 6% superelevation +MAX_LATERAL_ACCEL = ISO_LATERAL_ACCEL - (EARTH_G * AVERAGE_ROAD_ROLL) # ~2.4 m/s^2 + + +def apply_ford_curvature_limits(apply_curvature, apply_curvature_last, current_curvature, v_ego_raw, steering_angle, lat_active, CP): + # No blending at low speed due to lack of torque wind-up and inaccurate current curvature + if v_ego_raw > 9: + apply_curvature = np.clip(apply_curvature, current_curvature - CarControllerParams.CURVATURE_ERROR, + current_curvature + CarControllerParams.CURVATURE_ERROR) + + # Curvature rate limit after driver torque limit + apply_curvature = apply_std_steer_angle_limits(apply_curvature, apply_curvature_last, v_ego_raw, steering_angle, lat_active, CarControllerParams.ANGLE_LIMITS) + + # Ford Q4/CAN FD has more torque available compared to Q3/CAN so we limit it based on lateral acceleration. + # Safety is not aware of the road roll so we subtract a conservative amount at all times + if CP.flags & FordFlags.CANFD: + # Limit curvature to conservative max lateral acceleration + curvature_accel_limit = MAX_LATERAL_ACCEL / (max(v_ego_raw, 1) ** 2) + apply_curvature = float(np.clip(apply_curvature, -curvature_accel_limit, curvature_accel_limit)) + + return apply_curvature + + +def apply_creep_compensation(accel: float, v_ego: float) -> float: + creep_accel = np.interp(v_ego, [1., 3.], [0.6, 0.]) + creep_accel = np.interp(accel, [0., 0.2], [creep_accel, 0.]) + accel -= creep_accel + return float(accel) + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.packer = CANPacker(dbc_names[Bus.pt]) + self.CAN = fordcan.CanBus(CP) + + self.apply_curvature_last = 0 + self.accel = 0.0 + self.gas = 0.0 + self.brake_request = False + self.main_on_last = False + self.lkas_enabled_last = False + self.steer_alert_last = False + self.lead_distance_bars_last = None + self.distance_bar_frame = 0 + + def update(self, CC, CS, now_nanos): + can_sends = [] + + actuators = CC.actuators + hud_control = CC.hudControl + + main_on = CS.out.cruiseState.available + steer_alert = hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw) + fcw_alert = hud_control.visualAlert == VisualAlert.fcw + + ### acc buttons ### + if CC.cruiseControl.cancel: + can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.camera, CS.buttons_stock_values, cancel=True)) + can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.main, CS.buttons_stock_values, cancel=True)) + elif CC.cruiseControl.resume and (self.frame % CarControllerParams.BUTTONS_STEP) == 0: + can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.camera, CS.buttons_stock_values, resume=True)) + can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.main, CS.buttons_stock_values, resume=True)) + # if stock lane centering isn't off, send a button press to toggle it off + # the stock system checks for steering pressed, and eventually disengages cruise control + elif CS.acc_tja_status_stock_values["Tja_D_Stat"] != 0 and (self.frame % CarControllerParams.ACC_UI_STEP) == 0: + can_sends.append(fordcan.create_button_msg(self.packer, self.CAN.camera, CS.buttons_stock_values, tja_toggle=True)) + + ### lateral control ### + # send steer msg at 20Hz + if (self.frame % CarControllerParams.STEER_STEP) == 0: + # apply rate limits, curvature error limit, and clip to signal range + current_curvature = -CS.out.yawRate / max(CS.out.vEgoRaw, 0.1) + self.apply_curvature_last = apply_ford_curvature_limits(actuators.curvature, self.apply_curvature_last, current_curvature, + CS.out.vEgoRaw, 0., CC.latActive, self.CP) + + if self.CP.flags & FordFlags.CANFD: + # TODO: extended mode + # Ford uses four individual signals to dictate how to drive to the car. Curvature alone (limited to 0.02m/s^2) + # can actuate the steering for a large portion of any lateral movements. However, in order to get further control on + # steer actuation, the other three signals are necessary. Ford controls vehicles differently than most other makes. + # A detailed explanation on ford control can be found here: + # https://www.f150gen14.com/forum/threads/introducing-bluepilot-a-ford-specific-fork-for-comma3x-openpilot.24241/#post-457706 + mode = 1 if CC.latActive else 0 + counter = (self.frame // CarControllerParams.STEER_STEP) % 0x10 + can_sends.append(fordcan.create_lat_ctl2_msg(self.packer, self.CAN, mode, 0., 0., -self.apply_curvature_last, 0., counter)) + else: + can_sends.append(fordcan.create_lat_ctl_msg(self.packer, self.CAN, CC.latActive, 0., 0., -self.apply_curvature_last, 0.)) + + # send lka msg at 33Hz + if (self.frame % CarControllerParams.LKA_STEP) == 0: + can_sends.append(fordcan.create_lka_msg(self.packer, self.CAN)) + + ### longitudinal control ### + # send acc msg at 50Hz + if self.CP.openpilotLongitudinalControl and (self.frame % CarControllerParams.ACC_CONTROL_STEP) == 0: + accel = actuators.accel + gas = accel + + if CC.longActive: + # Compensate for engine creep at low speed. + # Either the ABS does not account for engine creep, or the correction is very slow + # TODO: verify this applies to EV/hybrid + accel = apply_creep_compensation(accel, CS.out.vEgo) + + # The stock system has been seen rate limiting the brake accel to 5 m/s^3, + # however even 3.5 m/s^3 causes some overshoot with a step response. + accel = max(accel, self.accel - (3.5 * CarControllerParams.ACC_CONTROL_STEP * DT_CTRL)) + + accel = float(np.clip(accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) + gas = float(np.clip(gas, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) + + # Both gas and accel are in m/s^2, accel is used solely for braking + if not CC.longActive or gas < CarControllerParams.MIN_GAS: + gas = CarControllerParams.INACTIVE_GAS + + # PCM applies pitch compensation to gas/accel, but we need to compensate for the brake/pre-charge bits + accel_due_to_pitch = 0.0 + if len(CC.orientationNED) == 3: + accel_due_to_pitch = math.sin(CC.orientationNED[1]) * ACCELERATION_DUE_TO_GRAVITY + + accel_pitch_compensated = accel + accel_due_to_pitch + if accel_pitch_compensated > 0.3 or not CC.longActive: + self.brake_request = False + elif accel_pitch_compensated < 0.0: + self.brake_request = True + + stopping = CC.actuators.longControlState == LongCtrlState.stopping + # TODO: look into using the actuators packet to send the desired speed + can_sends.append(fordcan.create_acc_msg(self.packer, self.CAN, CC.longActive, gas, accel, stopping, self.brake_request, v_ego_kph=V_CRUISE_MAX)) + + self.accel = accel + self.gas = gas + + ### ui ### + send_ui = (self.main_on_last != main_on) or (self.lkas_enabled_last != CC.latActive) or (self.steer_alert_last != steer_alert) + # send lkas ui msg at 1Hz or if ui state changes + if (self.frame % CarControllerParams.LKAS_UI_STEP) == 0 or send_ui: + can_sends.append(fordcan.create_lkas_ui_msg(self.packer, self.CAN, main_on, CC.latActive, steer_alert, hud_control, CS.lkas_status_stock_values)) + + # send acc ui msg at 5Hz or if ui state changes + if hud_control.leadDistanceBars != self.lead_distance_bars_last: + send_ui = True + self.distance_bar_frame = self.frame + + if (self.frame % CarControllerParams.ACC_UI_STEP) == 0 or send_ui: + show_distance_bars = self.frame - self.distance_bar_frame < 400 + can_sends.append(fordcan.create_acc_ui_msg(self.packer, self.CAN, self.CP, main_on, CC.latActive, + fcw_alert, CS.out.cruiseState.standstill, show_distance_bars, + hud_control, CS.acc_tja_status_stock_values)) + + self.main_on_last = main_on + self.lkas_enabled_last = CC.latActive + self.steer_alert_last = steer_alert + self.lead_distance_bars_last = hud_control.leadDistanceBars + + new_actuators = actuators.as_builder() + new_actuators.curvature = self.apply_curvature_last + new_actuators.accel = self.accel + new_actuators.gas = self.gas + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/ford/carstate.py b/opendbc_repo/opendbc/car/ford/carstate.py new file mode 100644 index 0000000000..b40ec3ebf7 --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/carstate.py @@ -0,0 +1,127 @@ +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, create_button_events, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.ford.fordcan import CanBus +from opendbc.car.ford.values import DBC, CarControllerParams, FordFlags +from opendbc.car.interfaces import CarStateBase + +ButtonType = structs.CarState.ButtonEvent.Type +GearShifter = structs.CarState.GearShifter +TransmissionType = structs.CarParams.TransmissionType + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + if CP.transmissionType == TransmissionType.automatic: + self.shifter_values = can_define.dv["PowertrainData_10"]["TrnRng_D_Rq"] + + self.distance_button = 0 + self.lc_button = 0 + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + + ret = structs.CarState() + + # Occasionally on startup, the ABS module recalibrates the steering pinion offset, so we need to block engagement + # The vehicle usually recovers out of this state within a minute of normal driving + ret.vehicleSensorsInvalid = cp.vl["SteeringPinion_Data"]["StePinCompAnEst_D_Qf"] != 3 + + # car speed + ret.vEgoRaw = cp.vl["BrakeSysFeatures"]["Veh_V_ActlBrk"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.yawRate = cp.vl["Yaw_Data_FD1"]["VehYaw_W_Actl"] + ret.standstill = cp.vl["DesiredTorqBrk"]["VehStop_D_Stat"] == 1 + + # gas pedal + ret.gas = cp.vl["EngVehicleSpThrottle"]["ApedPos_Pc_ActlArb"] / 100. + ret.gasPressed = ret.gas > 1e-6 + + # brake pedal + ret.brake = cp.vl["BrakeSnData_4"]["BrkTot_Tq_Actl"] / 32756. # torque in Nm + ret.brakePressed = cp.vl["EngBrakeData"]["BpedDrvAppl_D_Actl"] == 2 + ret.parkingBrake = cp.vl["DesiredTorqBrk"]["PrkBrkStatus"] in (1, 2) + + # steering wheel + ret.steeringAngleDeg = cp.vl["SteeringPinion_Data"]["StePinComp_An_Est"] + ret.steeringTorque = cp.vl["EPAS_INFO"]["SteeringColumnTorque"] + ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > CarControllerParams.STEER_DRIVER_ALLOWANCE, 5) + ret.steerFaultTemporary = cp.vl["EPAS_INFO"]["EPAS_Failure"] == 1 + ret.steerFaultPermanent = cp.vl["EPAS_INFO"]["EPAS_Failure"] in (2, 3) + ret.espDisabled = cp.vl["Cluster_Info1_FD1"]["DrvSlipCtlMde_D_Rq"] != 0 # 0 is default mode + + if self.CP.flags & FordFlags.CANFD: + # this signal is always 0 on non-CAN FD cars + ret.steerFaultTemporary |= cp.vl["Lane_Assist_Data3_FD1"]["LatCtlSte_D_Stat"] not in (1, 2, 3) + + # cruise state + is_metric = cp.vl["INSTRUMENT_PANEL"]["METRIC_UNITS"] == 1 if not self.CP.flags & FordFlags.CANFD else False + ret.cruiseState.speed = cp.vl["EngBrakeData"]["Veh_V_DsplyCcSet"] * (CV.KPH_TO_MS if is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp.vl["EngBrakeData"]["CcStat_D_Actl"] in (4, 5) + ret.cruiseState.available = cp.vl["EngBrakeData"]["CcStat_D_Actl"] in (3, 4, 5) + 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: + gear = self.shifter_values.get(cp.vl["PowertrainData_10"]["TrnRng_D_Rq"]) + ret.gearShifter = self.parse_gear_shifter(gear) + elif self.CP.transmissionType == TransmissionType.manual: + ret.clutchPressed = cp.vl["Engine_Clutch_Data"]["CluPdlPos_Pc_Meas"] > 0 + if bool(cp.vl["BCM_Lamp_Stat_FD1"]["RvrseLghtOn_B_Stat"]): + ret.gearShifter = GearShifter.reverse + else: + ret.gearShifter = GearShifter.drive + + ret.engineRpm = cp.vl["EngVehicleSpThrottle"]["EngAout_N_Actl"] + + # safety + ret.stockFcw = bool(cp_cam.vl["ACCDATA_3"]["FcwVisblWarn_B_Rq"]) + ret.stockAeb = bool(cp_cam.vl["ACCDATA_2"]["CmbbBrkDecel_B_Rq"]) + + # button presses + ret.leftBlinker = cp.vl["Steering_Data_FD1"]["TurnLghtSwtch_D_Stat"] == 1 + ret.rightBlinker = cp.vl["Steering_Data_FD1"]["TurnLghtSwtch_D_Stat"] == 2 + # 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"], + cp.vl["BodyInfo_3_FD1"]["DrStatRl_B_Actl"], cp.vl["BodyInfo_3_FD1"]["DrStatRr_B_Actl"]]) + ret.seatbeltUnlatched = cp.vl["RCMStatusMessage2_FD1"]["FirstRowBuckleDriver"] == 2 + + # blindspot sensors + if self.CP.enableBsm: + cp_bsm = cp_cam if self.CP.flags & FordFlags.CANFD else cp + ret.leftBlindspot = cp_bsm.vl["Side_Detect_L_Stat"]["SodDetctLeft_D_Stat"] != 0 + ret.rightBlindspot = cp_bsm.vl["Side_Detect_R_Stat"]["SodDetctRight_D_Stat"] != 0 + + # Stock steering buttons so that we can passthru blinkers etc. + self.buttons_stock_values = cp.vl["Steering_Data_FD1"] + # Stock values from IPMA so that we can retain some stock functionality + 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}), + *create_button_events(self.lc_button, prev_lc_button, {1: ButtonType.lkas}), + ] + + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).main), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).camera), + } diff --git a/opendbc_repo/opendbc/car/ford/fingerprints.py b/opendbc_repo/opendbc/car/ford/fingerprints.py new file mode 100644 index 0000000000..6b3e33701f --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/fingerprints.py @@ -0,0 +1,223 @@ +""" AUTO-FORMATTED USING opendbc/car/debug/format_fingerprints.py, EDIT STRUCTURE THERE.""" +from opendbc.car.structs import CarParams +from opendbc.car.ford.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.FORD_BRONCO_SPORT_MK1: { + (Ecu.eps, 0x730, None): [ + b'LX6C-14D003-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'LX6C-2D053-RD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-2D053-RE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-2D053-RF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'M1PT-14F397-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'M1PT-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_ESCAPE_MK4: { + (Ecu.eps, 0x730, None): [ + b'LX6C-14D003-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-14D003-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'LX6C-2D053-NS\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-2D053-NT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-2D053-NY\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-2D053-SA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LX6C-2D053-SD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'LJ6T-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LJ6T-14F397-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LV4T-14F397-GG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_ESCAPE_MK4_5: { + (Ecu.eps, 0x730, None): [ + b'PZ11-14D003-EA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'PZ1C-2D053-EJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'PJ6T-14H102-ABL\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_EXPLORER_MK6: { + (Ecu.eps, 0x730, None): [ + b'L1MC-14D003-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'M1MC-14D003-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'M1MC-14D003-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'P1MC-14D003-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'L1MC-2D053-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-2D053-BB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-2D053-BF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-2D053-BJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'L1MC-2D053-KB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'LB5T-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LB5T-14F397-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LB5T-14F397-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LC5T-14F397-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LC5T-14F397-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_EXPEDITION_MK4: { + (Ecu.eps, 0x730, None): [ + b'NL14-14D003-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'RL14-2D053-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'ML3T-14H102-ABT\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_F_150_MK14: { + (Ecu.eps, 0x730, None): [ + b'ML3V-14D003-BC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'ML3V-14D003-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'NL34-2D053-CA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PL34-2D053-CA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PL34-2D053-CC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PL3V-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PL3V-2D053-BB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'ML3T-14D049-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'ML3T-14H102-ABR\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'ML3T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'ML3T-14H102-ABT\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PJ6T-14H102-ABJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PJ6T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RJ6T-14H102-ACJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RJ6T-14H102-BBC\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_F_150_LIGHTNING_MK1: { + (Ecu.abs, 0x760, None): [ + b'PL38-2D053-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RL38-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'ML3T-14H102-ABT\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RJ6T-14H102-ACJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RJ6T-14H102-BBC\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x730, None): [ + b'RL38-14D003-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_MUSTANG_MACH_E_MK1: { + (Ecu.eps, 0x730, None): [ + b'LJ9C-14D003-AM\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LJ9C-14D003-CC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LJ9C-14D003-FA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LJ9C-14D003-GA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LJ9C-14D003-HA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'LK9C-2D053-CK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'LK9C-2D053-CN\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'ML3T-14H102-ABS\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RJ6T-14H102-BAE\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_FOCUS_MK4: { + (Ecu.eps, 0x730, None): [ + b'JX6C-14D003-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'JX61-2D053-CJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'JX7T-14D049-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'JX7T-14F397-AH\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_MAVERICK_MK1: { + (Ecu.eps, 0x730, None): [ + b'NZ6C-14D003-AK\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'NZ6C-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'NZ6C-2D053-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'NZ6C-2D053-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'NZ6C-2D053-AG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PZ6C-2D053-ED\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PZ6C-2D053-EE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PZ6C-2D053-EF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'NZ6T-14D049-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'NZ6T-14F397-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.FORD_RANGER_MK2: { + (Ecu.eps, 0x730, None): [ + b'NB3C-14D003-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'NL14-14D003-AE\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RB3C-14D003-AA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'PB3C-2D053-ZD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PB3C-2D053-ZG\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PB3C-2D053-ZJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'ML3T-14D049-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'PJ6T-14H102-ABJ\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'RJ6T-14H102-BBB\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/ford/fordcan.py b/opendbc_repo/opendbc/car/ford/fordcan.py new file mode 100644 index 0000000000..2ac68c4427 --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/fordcan.py @@ -0,0 +1,342 @@ +from opendbc.car import CanBusBase, structs + +HUDControl = structs.CarControl.HUDControl + + +class CanBus(CanBusBase): + def __init__(self, CP=None, fingerprint=None) -> None: + super().__init__(CP, fingerprint) + + @property + def main(self) -> int: + return self.offset + + @property + def radar(self) -> int: + return self.offset + 1 + + @property + def camera(self) -> int: + return self.offset + 2 + + +def calculate_lat_ctl2_checksum(mode: int, counter: int, dat: bytearray) -> int: + curvature = (dat[2] << 3) | ((dat[3]) >> 5) + curvature_rate = (dat[6] << 3) | ((dat[7]) >> 5) + path_angle = ((dat[3] & 0x1F) << 6) | ((dat[4]) >> 2) + path_offset = ((dat[4] & 0x3) << 8) | dat[5] + + checksum = mode + counter + for sig_val in (curvature, curvature_rate, path_angle, path_offset): + checksum += sig_val + (sig_val >> 8) + + return 0xFF - (checksum & 0xFF) + + +def create_lka_msg(packer, CAN: CanBus): + """ + Creates an empty CAN message for the Ford LKA Command. + + This command can apply "Lane Keeping Aid" maneuvers, which are subject to the PSCM lockout. + + Frequency is 33Hz. + """ + + return packer.make_can_msg("Lane_Assist_Data1", CAN.main, {}) + + +def create_lat_ctl_msg(packer, CAN: CanBus, lat_active: bool, path_offset: float, path_angle: float, curvature: float, + curvature_rate: float): + """ + Creates a CAN message for the Ford TJA/LCA Command. + + This command can apply "Lane Centering" maneuvers: continuous lane centering for traffic jam assist and highway + driving. It is not subject to the PSCM lockout. + + Ford lane centering command uses a third order polynomial to describe the road centerline. The polynomial is defined + by the following coefficients: + c0: lateral offset between the vehicle and the centerline (positive is right) + c1: heading angle between the vehicle and the centerline (positive is right) + c2: curvature of the centerline (positive is left) + c3: rate of change of curvature of the centerline + As the PSCM combines this information with other sensor data, such as the vehicle's yaw rate and speed, the steering + angle cannot be easily controlled. + + The PSCM should be configured to accept TJA/LCA commands before these commands will be processed. This can be done + using tools such as Forscan. + + Frequency is 20Hz. + """ + + values = { + "LatCtlRng_L_Max": 0, # Unknown [0|126] meter + "HandsOffCnfm_B_Rq": 0, # Unknown: 0=Inactive, 1=Active [0|1] + "LatCtl_D_Rq": 1 if lat_active else 0, # Mode: 0=None, 1=ContinuousPathFollowing, 2=InterventionLeft, + # 3=InterventionRight, 4-7=NotUsed [0|7] + "LatCtlRampType_D_Rq": 0, # Ramp speed: 0=Slow, 1=Medium, 2=Fast, 3=Immediate [0|3] + # Makes no difference with curvature control + "LatCtlPrecision_D_Rq": 1, # Precision: 0=Comfortable, 1=Precise, 2/3=NotUsed [0|3] + # The stock system always uses comfortable + "LatCtlPathOffst_L_Actl": path_offset, # Path offset [-5.12|5.11] meter + "LatCtlPath_An_Actl": path_angle, # Path angle [-0.5|0.5235] radians + "LatCtlCurv_NoRate_Actl": curvature_rate, # Curvature rate [-0.001024|0.00102375] 1/meter^2 + "LatCtlCurv_No_Actl": curvature, # Curvature [-0.02|0.02094] 1/meter + } + return packer.make_can_msg("LateralMotionControl", CAN.main, values) + + +def create_lat_ctl2_msg(packer, CAN: CanBus, mode: int, path_offset: float, path_angle: float, curvature: float, + curvature_rate: float, counter: int): + """ + Create a CAN message for the new Ford Lane Centering command. + + This message is used on the CAN FD platform and replaces the old LateralMotionControl message. It is similar but has + additional signals for a counter and checksum. + + Frequency is 20Hz. + """ + + values = { + "LatCtl_D2_Rq": mode, # Mode: 0=None, 1=PathFollowingLimitedMode, 2=PathFollowingExtendedMode, + # 3=SafeRampOut, 4-7=NotUsed [0|7] + "LatCtlRampType_D_Rq": 0, # 0=Slow, 1=Medium, 2=Fast, 3=Immediate [0|3] + "LatCtlPrecision_D_Rq": 1, # 0=Comfortable, 1=Precise, 2/3=NotUsed [0|3] + "LatCtlPathOffst_L_Actl": path_offset, # [-5.12|5.11] meter + "LatCtlPath_An_Actl": path_angle, # [-0.5|0.5235] radians + "LatCtlCurv_No_Actl": curvature, # [-0.02|0.02094] 1/meter + "LatCtlCrv_NoRate2_Actl": curvature_rate, # [-0.001024|0.001023] 1/meter^2 + "HandsOffCnfm_B_Rq": 0, # 0=Inactive, 1=Active [0|1] + "LatCtlPath_No_Cnt": counter, # [0|15] + "LatCtlPath_No_Cs": 0, # [0|255] + } + + # calculate checksum + dat = packer.make_can_msg("LateralMotionControl2", 0, values)[1] + values["LatCtlPath_No_Cs"] = calculate_lat_ctl2_checksum(mode, counter, dat) + + return packer.make_can_msg("LateralMotionControl2", CAN.main, values) + + +def create_acc_msg(packer, CAN: CanBus, long_active: bool, gas: float, accel: float, stopping: bool, brake_request, v_ego_kph: float): + """ + Creates a CAN message for the Ford ACC Command. + + This command can be used to enable ACC, to set the ACC gas/brake/decel values + and to disable ACC. + + Frequency is 50Hz. + """ + values = { + "AccBrkTot_A_Rq": accel, # Brake total accel request: [-20|11.9449] m/s^2 + "Cmbb_B_Enbl": 1 if long_active else 0, # Enabled: 0=No, 1=Yes + "AccPrpl_A_Rq": gas, # Acceleration request: [-5|5.23] m/s^2 + # No observed acceleration seen from this signal alone. During stock system operation, it appears to + # be the raw acceleration request (AccPrpl_A_Rq when positive, AccBrkTot_A_Rq when negative) + "AccPrpl_A_Pred": -5.0, # Acceleration request: [-5|5.23] m/s^2 + "AccResumEnbl_B_Rq": 1 if long_active else 0, + # No observed acceleration seen from this signal alone + "AccVeh_V_Trg": v_ego_kph, # Target speed: [0|255] km/h + # TODO: we may be able to improve braking response by utilizing pre-charging better + # When setting these two bits without AccBrkTot_A_Rq, an initial jerk is observed and car may be able to brake temporarily with AccPrpl_A_Rq + "AccBrkPrchg_B_Rq": 1 if brake_request else 0, # Pre-charge brake request: 0=No, 1=Yes + "AccBrkDecel_B_Rq": 1 if brake_request else 0, # Deceleration request: 0=Inactive, 1=Active + "AccStopStat_B_Rq": 1 if stopping else 0, + } + return packer.make_can_msg("ACCDATA", CAN.main, values) + + +def create_acc_ui_msg(packer, CAN: CanBus, CP, main_on: bool, enabled: bool, fcw_alert: bool, standstill: bool, + show_distance_bars: bool, hud_control, stock_values: dict): + """ + Creates a CAN message for the Ford IPC adaptive cruise, forward collision warning and traffic jam + assist status. + + Stock functionality is maintained by passing through unmodified signals. + + Frequency is 5Hz. + """ + + # Tja_D_Stat + if enabled: + if hud_control.leftLaneDepart: + status = 3 # ActiveInterventionLeft + elif hud_control.rightLaneDepart: + status = 4 # ActiveInterventionRight + else: + status = 2 # Active + elif main_on: + if hud_control.leftLaneDepart: + status = 5 # ActiveWarningLeft + elif hud_control.rightLaneDepart: + status = 6 # ActiveWarningRight + else: + status = 1 # Standby + else: + status = 0 # Off + + values = {s: stock_values[s] for s in [ + "HaDsply_No_Cs", + "HaDsply_No_Cnt", + "AccStopStat_D_Dsply", # ACC stopped status message + "AccTrgDist2_D_Dsply", # ACC target distance + "AccStopRes_B_Dsply", + "TjaWarn_D_Rq", # TJA warning + "TjaMsgTxt_D_Dsply", # TJA text + "IaccLamp_D_Rq", # iACC status icon + "AccMsgTxt_D2_Rq", # ACC text + "FcwDeny_B_Dsply", # FCW disabled + "FcwMemStat_B_Actl", # FCW enabled setting + "AccTGap_B_Dsply", # ACC time gap display setting + "CadsAlignIncplt_B_Actl", + "AccFllwMde_B_Dsply", # ACC follow mode display setting + "CadsRadrBlck_B_Actl", + "CmbbPostEvnt_B_Dsply", # AEB event status + "AccStopMde_B_Dsply", # ACC stop mode display setting + "FcwMemSens_D_Actl", # FCW sensitivity setting + "FcwMsgTxt_D_Rq", # FCW text + "AccWarn_D_Dsply", # ACC warning + "FcwVisblWarn_B_Rq", # FCW visible alert + "FcwAudioWarn_B_Rq", # FCW audio alert + "AccTGap_D_Dsply", # ACC time gap + "AccMemEnbl_B_RqDrv", # ACC adaptive/normal setting + "FdaMem_B_Stat", # FDA enabled setting + ]} + + values.update({ + "Tja_D_Stat": status, # TJA status + }) + + if CP.openpilotLongitudinalControl: + values.update({ + "AccStopStat_D_Dsply": 2 if standstill else 0, # Stopping status text + "AccMsgTxt_D2_Rq": 0, # ACC text + "AccTGap_B_Dsply": 1 if show_distance_bars else 0, # Show time gap control UI + "AccFllwMde_B_Dsply": 1 if hud_control.leadVisible else 0, # Lead indicator + "AccStopMde_B_Dsply": 1 if standstill else 0, + "AccWarn_D_Dsply": 0, # ACC warning + "AccTGap_D_Dsply": hud_control.leadDistanceBars, # Time gap + }) + + # Forwards FCW alert from IPMA + if fcw_alert: + values["FcwVisblWarn_B_Rq"] = 1 # FCW visible alert + + return packer.make_can_msg("ACCDATA_3", CAN.main, values) + + +def create_lkas_ui_msg(packer, CAN: CanBus, main_on: bool, enabled: bool, steer_alert: bool, hud_control, + stock_values: dict): + """ + Creates a CAN message for the Ford IPC IPMA/LKAS status. + + Show the LKAS status with the "driver assist" lines in the IPC. + + Stock functionality is maintained by passing through unmodified signals. + + Frequency is 1Hz. + """ + + # LaActvStats_D_Dsply + # R Intvn Warn Supprs Avail No + # L + # Intvn 24 19 14 9 4 + # Warn 23 18 13 8 3 + # Supprs 22 17 12 7 2 + # Avail 21 16 11 6 1 + # No 20 15 10 5 0 + # + # TODO: test suppress state + if enabled: + lines = 0 # NoLeft_NoRight + if hud_control.leftLaneDepart: + lines += 4 + elif hud_control.leftLaneVisible: + lines += 1 + if hud_control.rightLaneDepart: + lines += 20 + elif hud_control.rightLaneVisible: + lines += 5 + elif main_on: + lines = 0 + else: + if hud_control.leftLaneDepart: + lines = 3 # WarnLeft_NoRight + elif hud_control.rightLaneDepart: + lines = 15 # NoLeft_WarnRight + else: + lines = 30 # LA_Off + + hands_on_wheel_dsply = 1 if steer_alert else 0 + + values = {s: stock_values[s] for s in [ + "FeatConfigIpmaActl", + "FeatNoIpmaActl", + "PersIndexIpma_D_Actl", + "AhbcRampingV_D_Rq", # AHB ramping + "LaDenyStats_B_Dsply", # LKAS error + "CamraDefog_B_Req", # Windshield heater? + "CamraStats_D_Dsply", # Camera status + "DasAlrtLvl_D_Dsply", # DAS alert level + "DasStats_D_Dsply", # DAS status + "DasWarn_D_Dsply", # DAS warning + "AhbHiBeam_D_Rq", # AHB status + "Passthru_63", + "Passthru_48", + ]} + + values.update({ + "LaActvStats_D_Dsply": lines, # LKAS status (lines) [0|31] + "LaHandsOff_D_Dsply": hands_on_wheel_dsply, # 0=HandsOn, 1=Level1 (w/o chime), 2=Level2 (w/ chime), 3=Suppressed + }) + return packer.make_can_msg("IPMA_Data", CAN.main, values) + + +def create_button_msg(packer, bus: int, stock_values: dict, cancel=False, resume=False, tja_toggle=False): + """ + Creates a CAN message for the Ford SCCM buttons/switches. + + Includes cruise control buttons, turn lights and more. + + Frequency is 10Hz. + """ + + values = {s: stock_values[s] for s in [ + "HeadLghtHiFlash_D_Stat", # SCCM Passthrough the remaining buttons + "TurnLghtSwtch_D_Stat", # SCCM Turn signal switch + "WiprFront_D_Stat", + "LghtAmb_D_Sns", + "AccButtnGapDecPress", + "AccButtnGapIncPress", + "AslButtnOnOffCnclPress", + "AslButtnOnOffPress", + "LaSwtchPos_D_Stat", + "CcAslButtnCnclResPress", + "CcAslButtnDeny_B_Actl", + "CcAslButtnIndxDecPress", + "CcAslButtnIndxIncPress", + "CcAslButtnOffCnclPress", + "CcAslButtnOnOffCncl", + "CcAslButtnOnPress", + "CcAslButtnResDecPress", + "CcAslButtnResIncPress", + "CcAslButtnSetDecPress", + "CcAslButtnSetIncPress", + "CcAslButtnSetPress", + "CcButtnOffPress", + "CcButtnOnOffCnclPress", + "CcButtnOnOffPress", + "CcButtnOnPress", + "HeadLghtHiFlash_D_Actl", + "HeadLghtHiOn_B_StatAhb", + "AhbStat_B_Dsply", + "AccButtnGapTogglePress", + "WiprFrontSwtch_D_Stat", + "HeadLghtHiCtrl_D_RqAhb", + ]} + + values.update({ + "CcAslButtnCnclPress": 1 if cancel else 0, # CC cancel button + "CcAsllButtnResPress": 1 if resume else 0, # CC resume button + "TjaButtnOnOffPress": 1 if tja_toggle else 0, # LCA/TJA toggle button + }) + return packer.make_can_msg("Steering_Data_FD1", bus, values) diff --git a/opendbc_repo/opendbc/car/ford/interface.py b/opendbc_repo/opendbc/car/ford/interface.py new file mode 100644 index 0000000000..97685df58c --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/interface.py @@ -0,0 +1,98 @@ +import numpy as np +from opendbc.car import Bus, get_safety_config, structs +from opendbc.car.carlog import carlog +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.ford.carcontroller import CarController +from opendbc.car.ford.carstate import CarState +from opendbc.car.ford.fordcan import CanBus +from opendbc.car.ford.radar_interface import RadarInterface +from opendbc.car.ford.values import CarControllerParams, DBC, Ecu, FordFlags, RADAR, FordSafetyFlags +from opendbc.car.interfaces import CarInterfaceBase + +TransmissionType = structs.CarParams.TransmissionType + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def get_pid_accel_limits(CP, current_speed, cruise_speed): + # PCM doesn't allow acceleration near cruise_speed, + # so limit limits of pid to prevent windup + ACCEL_MAX_VALS = [CarControllerParams.ACCEL_MAX, 0.2] + ACCEL_MAX_BP = [cruise_speed - 2., cruise_speed - .4] + return CarControllerParams.ACCEL_MIN, np.interp(current_speed, ACCEL_MAX_BP, ACCEL_MAX_VALS) + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "ford" + + ret.radarUnavailable = Bus.radar not in DBC[candidate] + ret.steerControlType = structs.CarParams.SteerControlType.angle + ret.steerActuatorDelay = 0.2 + ret.steerLimitTimer = 1.0 + ret.steerAtStandstill = True + + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [0.5] + + if not ret.radarUnavailable and DBC[candidate][Bus.radar] == RADAR.DELPHI_MRR: + # average of 33.3 Hz radar timestep / 4 scan modes = 60 ms + # MRR_Header_Timestamps->CAN_DET_TIME_SINCE_MEAS reports 61.3 ms + ret.radarDelay = 0.06 + + CAN = CanBus(fingerprint=fingerprint) + cfgs = [get_safety_config(structs.CarParams.SafetyModel.ford)] + if CAN.main >= 4: + cfgs.insert(0, get_safety_config(structs.CarParams.SafetyModel.noOutput)) + ret.safetyConfigs = cfgs + + ret.alphaLongitudinalAvailable = ret.radarUnavailable + if alpha_long or not ret.radarUnavailable: + ret.safetyConfigs[-1].safetyParam |= FordSafetyFlags.LONG_CONTROL.value + ret.openpilotLongitudinalControl = True + + if ret.flags & FordFlags.CANFD: + ret.safetyConfigs[-1].safetyParam |= FordSafetyFlags.CANFD.value + + # TRON (SecOC) platforms are not supported + # LateralMotionControl2, ACCDATA are 16 bytes on these platforms + if len(fingerprint[CAN.camera]): + if fingerprint[CAN.camera].get(0x3d6) != 8 or fingerprint[CAN.camera].get(0x186) != 8: + carlog.error('dashcamOnly: SecOC is unsupported') + ret.dashcamOnly = True + else: + # Lock out if the car does not have needed lateral and longitudinal control APIs. + # Note that we also check CAN for adaptive cruise, but no known signal for LCA exists + pscm_config = next((fw for fw in car_fw if fw.ecu == Ecu.eps and b'\x22\xDE\x01' in fw.request), None) + if pscm_config: + if len(pscm_config.fwVersion) != 24: + carlog.error('dashcamOnly: Invalid EPS FW version') + ret.dashcamOnly = True + else: + config_tja = pscm_config.fwVersion[7] # Traffic Jam Assist + config_lca = pscm_config.fwVersion[8] # Lane Centering Assist + if config_tja != 0xFF or config_lca != 0xFF: + carlog.error('dashcamOnly: Car lacks required lateral control APIs') + ret.dashcamOnly = True + + # Auto Transmission: 0x732 ECU or Gear_Shift_by_Wire_FD1 + found_ecus = [fw.ecu for fw in car_fw] + if Ecu.shiftByWire in found_ecus or 0x5A in fingerprint[CAN.main] or docs: + ret.transmissionType = TransmissionType.automatic + else: + ret.transmissionType = TransmissionType.manual + ret.minEnableSpeed = 20.0 * CV.MPH_TO_MS + + # BSM: Side_Detect_L_Stat, Side_Detect_R_Stat + # TODO: detect bsm in car_fw? + ret.enableBsm = 0x3A6 in fingerprint[CAN.main] and 0x3A7 in fingerprint[CAN.main] + + # LCA can steer down to zero + ret.minSteerSpeed = 0. + + ret.autoResumeSng = ret.minEnableSpeed == -1. + ret.centerToFront = ret.wheelbase * 0.44 + return ret diff --git a/opendbc_repo/opendbc/car/ford/radar_interface.py b/opendbc_repo/opendbc/car/ford/radar_interface.py new file mode 100644 index 0000000000..7bb44a2230 --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/radar_interface.py @@ -0,0 +1,274 @@ +import numpy as np +from typing import cast +from collections import defaultdict +from math import cos, sin +from dataclasses import dataclass +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.ford.fordcan import CanBus +from opendbc.car.ford.values import DBC, RADAR +from opendbc.car.interfaces import RadarInterfaceBase + +DELPHI_ESR_RADAR_MSGS = list(range(0x500, 0x540)) + +DELPHI_MRR_RADAR_START_ADDR = 0x120 +DELPHI_MRR_RADAR_HEADER_ADDR = 0x174 # MRR_Header_SensorCoverage +DELPHI_MRR_RADAR_MSG_COUNT = 64 + +DELPHI_MRR_RADAR_RANGE_COVERAGE = {0: 42, 1: 164, 2: 45, 3: 175} # scan index to detection range (m) +DELPHI_MRR_MIN_LONG_RANGE_DIST = 30 # meters +DELPHI_MRR_CLUSTER_THRESHOLD = 5 # meters, lateral distance and relative velocity are weighted + + +@dataclass +class Cluster: + dRel: float = 0.0 + yRel: float = 0.0 + vRel: float = 0.0 + trackId: int = 0 + + +def cluster_points(pts_l: list[list[float]], pts2_l: list[list[float]], max_dist: float) -> list[int]: + """ + Clusters a collection of points based on another collection of points. This is useful for correlating clusters through time. + Points in pts2 not close enough to any point in pts are assigned -1. + Args: + pts_l: List of points to base the new clusters on + pts2_l: List of points to cluster using pts + max_dist: Max distance from cluster center to candidate point + + Returns: + List of cluster indices for pts2 that correspond to pts + """ + + if not len(pts2_l): + return [] + + if not len(pts_l): + return [-1] * len(pts2_l) + + max_dist_sq = max_dist ** 2 + pts = np.array(pts_l) + pts2 = np.array(pts2_l) + + # Compute squared norms + pts_norm_sq = np.sum(pts ** 2, axis=1) + pts2_norm_sq = np.sum(pts2 ** 2, axis=1) + + # Compute squared Euclidean distances using the identity + # dist_sq[i, j] = ||pts2[i]||^2 + ||pts[j]||^2 - 2 * pts2[i] . pts[j] + dist_sq = pts2_norm_sq[:, np.newaxis] + pts_norm_sq[np.newaxis, :] - 2 * np.dot(pts2, pts.T) + dist_sq = np.maximum(dist_sq, 0.0) + + # Find the closest cluster for each point and assign its index + closest_clusters = np.argmin(dist_sq, axis=1) + closest_dist_sq = dist_sq[np.arange(len(pts2)), closest_clusters] + cluster_idxs = np.where(closest_dist_sq < max_dist_sq, closest_clusters, -1) + + return cast(list[int], cluster_idxs.tolist()) + + +def _create_delphi_esr_radar_can_parser(CP) -> CANParser: + msg_n = len(DELPHI_ESR_RADAR_MSGS) + messages = list(zip(DELPHI_ESR_RADAR_MSGS, [20] * msg_n, strict=True)) + + return CANParser(RADAR.DELPHI_ESR, messages, CanBus(CP).radar) + + +def _create_delphi_mrr_radar_can_parser(CP) -> CANParser: + messages = [ + ("MRR_Header_InformationDetections", 33), + ("MRR_Header_SensorCoverage", 33), + ] + + for i in range(1, DELPHI_MRR_RADAR_MSG_COUNT + 1): + msg = f"MRR_Detection_{i:03d}" + messages += [(msg, 33)] + + return CANParser(RADAR.DELPHI_MRR, messages, CanBus(CP).radar) + + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + + self.points: list[list[float]] = [] + self.clusters: list[Cluster] = [] + + self.updated_messages = set() + self.track_id = 0 + self.radar = DBC[CP.carFingerprint].get(Bus.radar) + self.scan_index_invalid_cnt = 0 + self.radar_unavailable_cnt = 0 + self.prev_headerScanIndex = 0 + if CP.radarUnavailable: + self.rcp = None + elif self.radar == RADAR.DELPHI_ESR: + self.rcp = _create_delphi_esr_radar_can_parser(CP) + self.trigger_msg = DELPHI_ESR_RADAR_MSGS[-1] + self.valid_cnt = {key: 0 for key in DELPHI_ESR_RADAR_MSGS} + elif self.radar == RADAR.DELPHI_MRR: + self.rcp = _create_delphi_mrr_radar_can_parser(CP) + self.trigger_msg = DELPHI_MRR_RADAR_HEADER_ADDR + else: + raise ValueError(f"Unsupported radar: {self.radar}") + + def update(self, can_strings): + if self.rcp is None: + return super().update(None) + + vls = self.rcp.update(can_strings) + self.updated_messages.update(vls) + + if self.trigger_msg not in self.updated_messages: + return None + self.updated_messages.clear() + + ret = structs.RadarData() + if not self.rcp.can_valid: + ret.errors.canError = True + + if self.radar == RADAR.DELPHI_ESR: + self._update_delphi_esr() + elif self.radar == RADAR.DELPHI_MRR: + _update = self._update_delphi_mrr(ret) + if not _update: + return None + + ret.points = list(self.pts.values()) + return ret + + def _update_delphi_esr(self): + for ii in sorted(self.updated_messages): + cpt = self.rcp.vl[ii] + + if cpt['X_Rel'] > 0.00001: + self.valid_cnt[ii] = 0 # reset counter + + if cpt['X_Rel'] > 0.00001: + self.valid_cnt[ii] += 1 + else: + self.valid_cnt[ii] = max(self.valid_cnt[ii] - 1, 0) + #print ii, self.valid_cnt[ii], cpt['VALID'], cpt['X_Rel'], cpt['Angle'] + + # radar point only valid if there have been enough valid measurements + if self.valid_cnt[ii] > 0: + if ii not in self.pts: + self.pts[ii] = structs.RadarData.RadarPoint() + self.pts[ii].trackId = self.track_id + self.track_id += 1 + self.pts[ii].dRel = cpt['X_Rel'] # from front of car + self.pts[ii].yRel = cpt['X_Rel'] * cpt['Angle'] * CV.DEG_TO_RAD # in car frame's y axis, left is positive + self.pts[ii].vRel = cpt['V_Rel'] + self.pts[ii].vLead = self.pts[ii].vRel + self.v_ego + self.pts[ii].aRel = float('nan') + self.pts[ii].yvRel = 0# float('nan') + self.pts[ii].measured = True + else: + if ii in self.pts: + del self.pts[ii] + + def _update_delphi_mrr(self, ret: structs.RadarData): + headerScanIndex = int(self.rcp.vl["MRR_Header_InformationDetections"]['CAN_SCAN_INDEX']) & 0b11 + + # In reverse, the radar continually sends the last messages. Mark this as invalid + if (self.prev_headerScanIndex + 1) % 4 != headerScanIndex: + self.radar_unavailable_cnt += 1 + else: + self.radar_unavailable_cnt = 0 + self.prev_headerScanIndex = headerScanIndex + + if self.radar_unavailable_cnt >= 5: + self.pts.clear() + self.points.clear() + self.clusters.clear() + ret.errors.radarUnavailableTemporary = True + return True + + # Use points with Doppler coverage of +-60 m/s, reduces similar points + if headerScanIndex not in (2, 3): + return False + + if DELPHI_MRR_RADAR_RANGE_COVERAGE[headerScanIndex] != int(self.rcp.vl["MRR_Header_SensorCoverage"]["CAN_RANGE_COVERAGE"]): + self.scan_index_invalid_cnt += 1 + else: + self.scan_index_invalid_cnt = 0 + + # Rarely MRR_Header_InformationDetections can fail to send a message. The scan index is skipped in this case + if self.scan_index_invalid_cnt >= 5: + ret.errors.wrongConfig = True + + for ii in range(1, DELPHI_MRR_RADAR_MSG_COUNT + 1): + msg = self.rcp.vl[f"MRR_Detection_{ii:03d}"] + + # SCAN_INDEX rotates through 0..3 on each message for different measurement modes + # Indexes 0 and 2 have a max range of ~40m, 1 and 3 are ~170m (MRR_Header_SensorCoverage->CAN_RANGE_COVERAGE) + # Indexes 0 and 1 have a Doppler coverage of +-71 m/s, 2 and 3 have +-60 m/s + scanIndex = msg[f"CAN_SCAN_INDEX_2LSB_{ii:02d}"] + + # Throw out old measurements. Very unlikely to happen, but is proper behavior + if scanIndex != headerScanIndex: + continue + + valid = bool(msg[f"CAN_DET_VALID_LEVEL_{ii:02d}"]) + + # Long range measurement mode is more sensitive and can detect the road surface + dist = msg[f"CAN_DET_RANGE_{ii:02d}"] # m [0|255.984] + if scanIndex in (1, 3) and dist < DELPHI_MRR_MIN_LONG_RANGE_DIST: + valid = False + + if valid: + azimuth = msg[f"CAN_DET_AZIMUTH_{ii:02d}"] # rad [-3.1416|3.13964] + distRate = msg[f"CAN_DET_RANGE_RATE_{ii:02d}"] # m/s [-128|127.984] + dRel = cos(azimuth) * dist # m from front of car + yRel = -sin(azimuth) * dist # in car frame's y axis, left is positive + + self.points.append([dRel, yRel * 2, distRate * 2]) + + # Cluster and publish using stored points once we've cycled through all 4 scan modes + if headerScanIndex != 3: + return False + + # Cluster points from this cycle against the centroids from the previous cycle + prev_keys = [[p.dRel, p.yRel * 2, p.vRel * 2] for p in self.clusters] + labels = cluster_points(prev_keys, self.points, DELPHI_MRR_CLUSTER_THRESHOLD) + + points_by_track_id = defaultdict(list) + for idx, label in enumerate(labels): + if label != -1: + points_by_track_id[self.clusters[label].trackId].append(self.points[idx]) + else: + points_by_track_id[self.track_id].append(self.points[idx]) + self.track_id += 1 + + self.clusters = [] + for idx, (track_id, pts) in enumerate(points_by_track_id.items()): + dRel = [p[0] for p in pts] + min_dRel = min(dRel) + dRel = sum(dRel) / len(dRel) + + yRel = [p[1] for p in pts] + yRel = sum(yRel) / len(yRel) / 2 + + vRel = [p[2] for p in pts] + vRel = sum(vRel) / len(vRel) / 2 + + # FIXME: creating capnp RadarPoint and accessing attributes are both expensive, so we store a dataclass and reuse the RadarPoint + self.clusters.append(Cluster(dRel=dRel, yRel=yRel, vRel=vRel, trackId=track_id)) + + if idx not in self.pts: + self.pts[idx] = structs.RadarData.RadarPoint(measured=True, aRel=float('nan'), yvRel=0) + + self.pts[idx].dRel = min_dRel + self.pts[idx].yRel = yRel + self.pts[idx].vRel = vRel + self.pts[idx].vLead = vRel + self.v_ego + self.pts[idx].trackId = track_id + + for idx in range(len(points_by_track_id), len(self.pts)): + del self.pts[idx] + + self.points = [] + + return True diff --git a/opendbc_repo/opendbc/car/ford/tests/__init__.py b/opendbc_repo/opendbc/car/ford/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py b/opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py new file mode 100755 index 0000000000..dfb93c06fd --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/tests/print_platform_codes.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 +from collections import defaultdict + +from opendbc.car.structs import CarParams +from opendbc.car.ford.values import get_platform_codes +from opendbc.car.ford.fingerprints import FW_VERSIONS + +Ecu = CarParams.Ecu + +if __name__ == "__main__": + cars_for_code: defaultdict = defaultdict(lambda: defaultdict(set)) + + for car_model, ecus in FW_VERSIONS.items(): + print(car_model) + for ecu in sorted(ecus): + platform_codes = get_platform_codes(ecus[ecu]) + for code in platform_codes: + cars_for_code[ecu][code].add(car_model) + + print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') + print(f' Codes: {sorted(platform_codes)}') + print() + + print('\nCar models vs. platform codes:') + for ecu, codes in cars_for_code.items(): + print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') + for code, cars in codes.items(): + print(f' {code!r}: {sorted(map(str, cars))}') diff --git a/opendbc_repo/opendbc/car/ford/tests/test_ford.py b/opendbc_repo/opendbc/car/ford/tests/test_ford.py new file mode 100644 index 0000000000..5e3cc420b4 --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/tests/test_ford.py @@ -0,0 +1,142 @@ +import random +from collections.abc import Iterable + +from hypothesis import settings, given, strategies as st +from parameterized import parameterized + +from opendbc.car.structs import CarParams +from opendbc.car.fw_versions import build_fw_dict +from opendbc.car.ford.values import CAR, FW_QUERY_CONFIG, FW_PATTERN, get_platform_codes +from opendbc.car.ford.fingerprints import FW_VERSIONS + +Ecu = CarParams.Ecu + + +ECU_ADDRESSES = { + Ecu.eps: 0x730, # Power Steering Control Module (PSCM) + Ecu.abs: 0x760, # Anti-Lock Brake System (ABS) + Ecu.fwdRadar: 0x764, # Cruise Control Module (CCM) + Ecu.fwdCamera: 0x706, # Image Processing Module A (IPMA) + Ecu.engine: 0x7E0, # Powertrain Control Module (PCM) + Ecu.shiftByWire: 0x732, # Gear Shift Module (GSM) + Ecu.debug: 0x7D0, # Accessory Protocol Interface Module (APIM) +} + + +ECU_PART_NUMBER = { + Ecu.eps: [ + b"14D003", + ], + Ecu.abs: [ + b"2D053", + ], + Ecu.fwdRadar: [ + b"14D049", + ], + Ecu.fwdCamera: [ + b"14F397", # Ford Q3 + b"14H102", # Ford Q4 + ], +} + + +class TestFordFW: + def test_fw_query_config(self): + for (ecu, addr, subaddr) in FW_QUERY_CONFIG.extra_ecus: + assert ecu in ECU_ADDRESSES, "Unknown ECU" + assert addr == ECU_ADDRESSES[ecu], "ECU address mismatch" + assert subaddr is None, "Unexpected ECU subaddress" + + @parameterized.expand(FW_VERSIONS.items()) + def test_fw_versions(self, car_model: str, fw_versions: dict[tuple[int, int, int | None], Iterable[bytes]]): + for (ecu, addr, subaddr), fws in fw_versions.items(): + assert ecu in ECU_PART_NUMBER, "Unexpected ECU" + assert addr == ECU_ADDRESSES[ecu], "ECU address mismatch" + assert subaddr is None, "Unexpected ECU subaddress" + + for fw in fws: + assert len(fw) == 24, "Expected ECU response to be 24 bytes" + + match = FW_PATTERN.match(fw) + assert match is not None, f"Unable to parse FW: {fw!r}" + if match: + part_number = match.group("part_number") + assert part_number in ECU_PART_NUMBER[ecu], f"Unexpected part number for {fw!r}" + + codes = get_platform_codes([fw]) + assert 1 == len(codes), f"Unable to parse FW: {fw!r}" + + @settings(max_examples=100) + @given(data=st.data()) + def test_platform_codes_fuzzy_fw(self, data): + """Ensure function doesn't raise an exception""" + fw_strategy = st.lists(st.binary()) + fws = data.draw(fw_strategy) + get_platform_codes(fws) + + def test_platform_codes_spot_check(self): + # Asserts basic platform code parsing behavior for a few cases + results = get_platform_codes([ + b"JX6A-14C204-BPL\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"NZ6T-14F397-AC\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"PJ6T-14H102-ABJ\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"LB5A-14C204-EAC\x00\x00\x00\x00\x00\x00\x00\x00\x00", + ]) + assert results == {(b"X6A", b"J"), (b"Z6T", b"N"), (b"J6T", b"P"), (b"B5A", b"L")} + + def test_fuzzy_match(self): + for platform, fw_by_addr in FW_VERSIONS.items(): + # Ensure there's no overlaps in platform codes + for _ in range(20): + car_fw = [] + for ecu, fw_versions in fw_by_addr.items(): + ecu_name, addr, sub_addr = ecu + fw = random.choice(fw_versions) + car_fw.append(CarParams.CarFw(ecu=ecu_name, fwVersion=fw, address=addr, + subAddress=0 if sub_addr is None else sub_addr)) + + CP = CarParams(carFw=car_fw) + matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, FW_VERSIONS) + assert matches == {platform} + + def test_match_fw_fuzzy(self): + offline_fw = { + (Ecu.eps, 0x730, None): [ + b"L1MC-14D003-AJ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"L1MC-14D003-AL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + ], + (Ecu.abs, 0x760, None): [ + b"L1MC-2D053-BA\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"L1MC-2D053-BD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + ], + (Ecu.fwdRadar, 0x764, None): [ + b"LB5T-14D049-AB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"LB5T-14D049-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + ], + # We consider all model year hints for ECU, even with different platform codes + (Ecu.fwdCamera, 0x706, None): [ + b"LB5T-14F397-AD\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + b"NC5T-14F397-AF\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + ], + } + expected_fingerprint = CAR.FORD_EXPLORER_MK6 + + # ensure that we fuzzy match on all non-exact FW with changed revisions + live_fw = { + (0x730, None): {b"L1MC-14D003-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, + (0x760, None): {b"L1MC-2D053-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, + (0x764, None): {b"LB5T-14D049-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, + (0x706, None): {b"LB5T-14F397-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"}, + } + candidates = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fw, '', {expected_fingerprint: offline_fw}) + assert candidates == {expected_fingerprint} + + # model year hint in between the range should match + live_fw[(0x706, None)] = {b"MB5T-14F397-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"} + candidates = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fw, '', {expected_fingerprint: offline_fw,}) + assert candidates == {expected_fingerprint} + + # unseen model year hint should not match + live_fw[(0x760, None)] = {b"M1MC-2D053-XX\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"} + candidates = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fw, '', {expected_fingerprint: offline_fw}) + assert len(candidates) == 0, "Should not match new model year hint" diff --git a/opendbc_repo/opendbc/car/ford/values.py b/opendbc_repo/opendbc/car/ford/values.py new file mode 100644 index 0000000000..796fbecd50 --- /dev/null +++ b/opendbc_repo/opendbc/car/ford/values.py @@ -0,0 +1,316 @@ +import copy +import re +from dataclasses import dataclass, field, replace +from enum import Enum, IntFlag + +from opendbc.car import AngleSteeringLimits, Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column, \ + Device +from opendbc.car.fw_query_definitions import FwQueryConfig, LiveFwVersions, OfflineFwVersions, Request, StdQueries, p16 + +Ecu = CarParams.Ecu + + +class CarControllerParams: + STEER_STEP = 5 # LateralMotionControl, 20Hz + LKA_STEP = 3 # Lane_Assist_Data1, 33Hz + ACC_CONTROL_STEP = 2 # ACCDATA, 50Hz + LKAS_UI_STEP = 100 # IPMA_Data, 1Hz + ACC_UI_STEP = 20 # ACCDATA_3, 5Hz + BUTTONS_STEP = 5 # Steering_Data_FD1, 10Hz, but send twice as fast + + STEER_DRIVER_ALLOWANCE = 1.0 # Driver intervention threshold, Nm + + ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( + 0.02, # Max curvature for steering command, m^-1 + # Curvature rate limits + # Max curvature is limited by the EPS to an equivalent of ~2.0 m/s^2 at all speeds, + # however max curvature rate linearly decreases as speed increases: + # ~0.009 m^-1/sec at 7 m/s, ~0.002 m^-1/sec at 35 m/s + # Limit to ~2 m/s^3 up, ~3.3 m/s^3 down at 75 mph and match EPS limit at low speed + ([5, 25], [0.00045, 0.0001]), + ([5, 25], [0.00045, 0.00015]) + ) + CURVATURE_ERROR = 0.002 # ~6 degrees at 10 m/s, ~10 degrees at 35 m/s + + ACCEL_MAX = 2.0 # m/s^2 max acceleration + ACCEL_MIN = -3.5 # m/s^2 max deceleration + MIN_GAS = -0.5 + INACTIVE_GAS = -5.0 + + def __init__(self, CP): + pass + + +class FordSafetyFlags(IntFlag): + LONG_CONTROL = 1 + CANFD = 2 + + +class FordFlags(IntFlag): + # Static flags + CANFD = 1 + + +class RADAR: + DELPHI_ESR = 'ford_fusion_2018_adas' + DELPHI_MRR = 'FORD_CADS' + + +class Footnote(Enum): + FOCUS = CarFootnote( + "Refers only to the Focus Mk4 (C519) available in Europe/China/Taiwan/Australasia, not the Focus Mk3 (C346) in " + + "North and South America/Southeast Asia.", + Column.MODEL, + ) + + +@dataclass +class FordCarDocs(CarDocs): + package: str = "Co-Pilot360 Assist+" + hybrid: bool = False + plug_in_hybrid: bool = False + + def init_make(self, CP: CarParams): + harness = CarHarness.ford_q4 if CP.flags & FordFlags.CANFD else CarHarness.ford_q3 + if CP.carFingerprint in (CAR.FORD_BRONCO_SPORT_MK1, CAR.FORD_MAVERICK_MK1, CAR.FORD_F_150_MK14, CAR.FORD_F_150_LIGHTNING_MK1): + self.car_parts = CarParts([Device.threex_angled_mount, harness]) + else: + self.car_parts = CarParts([Device.threex, harness]) + + if harness == CarHarness.ford_q4: + self.setup_video = "https://www.youtube.com/watch?v=uUGkH6C_EQU" + + if CP.carFingerprint in (CAR.FORD_F_150_MK14, CAR.FORD_F_150_LIGHTNING_MK1, CAR.FORD_EXPEDITION_MK4): + self.setup_video = "https://www.youtube.com/watch?v=MewJc9LYp9M" + +@dataclass +class FordPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: { + Bus.pt: 'ford_lincoln_base_pt', + Bus.radar: RADAR.DELPHI_MRR, + }) + + def init(self): + for car_docs in list(self.car_docs): + if car_docs.hybrid: + name = f"{car_docs.make} {car_docs.model} Hybrid {car_docs.years}" + self.car_docs.append(replace(copy.deepcopy(car_docs), name=name)) + if car_docs.plug_in_hybrid: + name = f"{car_docs.make} {car_docs.model} Plug-in Hybrid {car_docs.years}" + self.car_docs.append(replace(copy.deepcopy(car_docs), name=name)) + + +@dataclass +class FordCANFDPlatformConfig(FordPlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: { + Bus.pt: 'ford_lincoln_base_pt', + }) + + def init(self): + super().init() + self.flags |= FordFlags.CANFD + +@dataclass +class FordF150LightningPlatform(FordCANFDPlatformConfig): + def init(self): + super().init() + + # Don't show in docs until this issue is resolved. See https://github.com/commaai/openpilot/issues/30302 + self.car_docs = [] + + +class CAR(Platforms): + FORD_BRONCO_SPORT_MK1 = FordPlatformConfig( + [FordCarDocs("Ford Bronco Sport 2021-24")], + CarSpecs(mass=1625, wheelbase=2.67, steerRatio=17.7), + ) + FORD_ESCAPE_MK4 = FordPlatformConfig( + [ + FordCarDocs("Ford Escape 2020-22", hybrid=True, plug_in_hybrid=True), + FordCarDocs("Ford Kuga 2020-23", "Adaptive Cruise Control with Lane Centering", hybrid=True, plug_in_hybrid=True), + ], + CarSpecs(mass=1750, wheelbase=2.71, steerRatio=16.7), + ) + FORD_ESCAPE_MK4_5 = FordCANFDPlatformConfig( + [ + FordCarDocs("Ford Escape 2023-24", hybrid=True, plug_in_hybrid=True, setup_video="https://www.youtube.com/watch?v=M6uXf4b2SHM"), + FordCarDocs("Ford Kuga Hybrid 2024", "All"), + FordCarDocs("Ford Kuga Plug-in Hybrid 2024", "All"), + ], + CarSpecs(mass=1750, wheelbase=2.71, steerRatio=16.7), + ) + FORD_EXPLORER_MK6 = FordPlatformConfig( + [ + FordCarDocs("Ford Explorer 2020-24", hybrid=True), # Hybrid: Limited and Platinum only + FordCarDocs("Lincoln Aviator 2020-24", "Co-Pilot360 Plus", plug_in_hybrid=True), # Hybrid: Grand Touring only + ], + CarSpecs(mass=2050, wheelbase=3.025, steerRatio=16.8), + ) + FORD_EXPEDITION_MK4 = FordCANFDPlatformConfig( + [FordCarDocs("Ford Expedition 2022-24", "Co-Pilot360 Assist 2.0", hybrid=False)], + CarSpecs(mass=2000, wheelbase=3.69, steerRatio=17.0), + ) + FORD_F_150_MK14 = FordCANFDPlatformConfig( + [FordCarDocs("Ford F-150 2021-23", "Co-Pilot360 Assist 2.0", hybrid=True)], + CarSpecs(mass=2000, wheelbase=3.69, steerRatio=17.0), + ) + FORD_F_150_LIGHTNING_MK1 = FordF150LightningPlatform( + [FordCarDocs("Ford F-150 Lightning 2022-23", "Co-Pilot360 Assist 2.0")], + CarSpecs(mass=2948, wheelbase=3.70, steerRatio=16.9), + ) + FORD_FOCUS_MK4 = FordPlatformConfig( + [FordCarDocs("Ford Focus 2018", "Adaptive Cruise Control with Lane Centering", footnotes=[Footnote.FOCUS], hybrid=True)], # mHEV only + CarSpecs(mass=1350, wheelbase=2.7, steerRatio=15.0), + ) + FORD_MAVERICK_MK1 = FordPlatformConfig( + [ + FordCarDocs("Ford Maverick 2022", "LARIAT Luxury", hybrid=True), + FordCarDocs("Ford Maverick 2023-24", "Co-Pilot360 Assist", hybrid=True), + ], + CarSpecs(mass=1650, wheelbase=3.076, steerRatio=17.0), + ) + FORD_MUSTANG_MACH_E_MK1 = FordCANFDPlatformConfig( + [FordCarDocs("Ford Mustang Mach-E 2021-24", "All", setup_video="https://www.youtube.com/watch?v=AR4_eTF3b_A")], + CarSpecs(mass=2200, wheelbase=2.984, steerRatio=17.0), # TODO: check steer ratio + ) + FORD_RANGER_MK2 = FordCANFDPlatformConfig( + [FordCarDocs("Ford Ranger 2024", "Adaptive Cruise Control with Lane Centering", setup_video="https://www.youtube.com/watch?v=2oJlXCKYOy0")], + CarSpecs(mass=2000, wheelbase=3.27, steerRatio=17.0), + ) + + +# FW response contains a combined software and part number +# A-Z except no I, O or W +# e.g. NZ6A-14C204-AAA +# 1222-333333-444 +# 1 = Model year hint (approximates model year/generation) +# 2 = Platform hint +# 3 = Part number +# 4 = Software version +FW_ALPHABET = b'A-HJ-NP-VX-Z' +FW_PATTERN = re.compile(b'^(?P[' + FW_ALPHABET + b'])' + + b'(?P[0-9' + FW_ALPHABET + b']{3})-' + + b'(?P[0-9' + FW_ALPHABET + b']{5,6})-' + + b'(?P[' + FW_ALPHABET + b']{2,})\x00*$') + + +def get_platform_codes(fw_versions: list[bytes] | set[bytes]) -> set[tuple[bytes, bytes]]: + codes = set() + for fw in fw_versions: + match = FW_PATTERN.match(fw) + if match is not None: + codes.add((match.group('platform_hint'), match.group('model_year_hint'))) + + return codes + + +def match_fw_to_car_fuzzy(live_fw_versions: LiveFwVersions, vin: str, offline_fw_versions: OfflineFwVersions) -> set[str]: + candidates: set[str] = set() + + for candidate, fws in offline_fw_versions.items(): + # Keep track of ECUs which pass all checks (platform hint, within model year hint range) + valid_found_ecus = set() + valid_expected_ecus = {ecu[1:] for ecu in fws if ecu[0] in PLATFORM_CODE_ECUS} + for ecu, expected_versions in fws.items(): + addr = ecu[1:] + # Only check ECUs expected to have platform codes + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + # Expected platform codes & model year hints + codes = get_platform_codes(expected_versions) + expected_platform_codes = {code for code, _ in codes} + expected_model_year_hints = {model_year_hint for _, model_year_hint in codes} + + # Found platform codes & model year hints + codes = get_platform_codes(live_fw_versions.get(addr, set())) + found_platform_codes = {code for code, _ in codes} + found_model_year_hints = {model_year_hint for _, model_year_hint in codes} + + # Check platform code matches for any found versions + if not any(found_platform_code in expected_platform_codes for found_platform_code in found_platform_codes): + break + + # Check any model year hint within range in the database. Note that some models have more than one + # platform code per ECU which we don't consider as separate ranges + if not any(min(expected_model_year_hints) <= found_model_year_hint <= max(expected_model_year_hints) for + found_model_year_hint in found_model_year_hints): + break + + valid_found_ecus.add(addr) + + # If all live ECUs pass all checks for candidate, add it as a match + if valid_expected_ecus.issubset(valid_found_ecus): + candidates.add(candidate) + + return candidates + + +# All of these ECUs must be present and are expected to have platform codes we can match +PLATFORM_CODE_ECUS = (Ecu.abs, Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps) + +DATA_IDENTIFIER_FORD_ASBUILT = 0xDE00 + +ASBUILT_BLOCKS: list[tuple[int, list]] = [ + (1, [Ecu.debug, Ecu.fwdCamera, Ecu.eps]), + (2, [Ecu.abs, Ecu.debug, Ecu.eps]), + (3, [Ecu.abs, Ecu.debug, Ecu.eps]), + (4, [Ecu.debug, Ecu.fwdCamera]), + (5, [Ecu.debug]), + (6, [Ecu.debug]), + (7, [Ecu.debug]), + (8, [Ecu.debug]), + (9, [Ecu.debug]), + (16, [Ecu.debug, Ecu.fwdCamera]), + (18, [Ecu.fwdCamera]), + (20, [Ecu.fwdCamera]), + (21, [Ecu.fwdCamera]), +] + + +def ford_asbuilt_block_request(block_id: int): + return bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + p16(DATA_IDENTIFIER_FORD_ASBUILT + block_id - 1) + + +def ford_asbuilt_block_response(block_id: int): + return bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + p16(DATA_IDENTIFIER_FORD_ASBUILT + block_id - 1) + + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + # CAN and CAN FD queries are combined. + # FIXME: For CAN FD, ECUs respond with frames larger than 8 bytes on the powertrain bus + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.debug, Ecu.engine, Ecu.eps, Ecu.fwdCamera, Ecu.fwdRadar, Ecu.shiftByWire], + logging=True, + ), + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.debug, Ecu.engine, Ecu.eps, Ecu.fwdCamera, Ecu.fwdRadar, Ecu.shiftByWire], + bus=0, + auxiliary=True, + ), + *[Request( + [StdQueries.TESTER_PRESENT_REQUEST, ford_asbuilt_block_request(block_id)], + [StdQueries.TESTER_PRESENT_RESPONSE, ford_asbuilt_block_response(block_id)], + whitelist_ecus=ecus, + bus=0, + logging=True, + ) for block_id, ecus in ASBUILT_BLOCKS], + ], + extra_ecus=[ + (Ecu.engine, 0x7e0, None), # Powertrain Control Module + # Note: We are unlikely to get a response from behind the gateway + (Ecu.shiftByWire, 0x732, None), # Gear Shift Module + (Ecu.debug, 0x7d0, None), # Accessory Protocol Interface Module + ], + # Custom fuzzy fingerprinting function using platform and model year hints + match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, +) + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/fw_query_definitions.py b/opendbc_repo/opendbc/car/fw_query_definitions.py new file mode 100644 index 0000000000..5c48fed6a1 --- /dev/null +++ b/opendbc_repo/opendbc/car/fw_query_definitions.py @@ -0,0 +1,152 @@ +import copy +from dataclasses import dataclass, field +import struct +from collections.abc import Callable + +from opendbc.car import uds +from opendbc.car.structs import CarParams + +Ecu = CarParams.Ecu + +AddrType = tuple[int, int | None] +EcuAddrBusType = tuple[int, int | None, int] +EcuAddrSubAddr = tuple[Ecu, int, int | None] + +LiveFwVersions = dict[AddrType, set[bytes]] +OfflineFwVersions = dict[str, dict[EcuAddrSubAddr, list[bytes]]] + +# A global list of addresses we will only ever consider for VIN responses +# engine, hybrid controller, Ford abs, Hyundai CAN FD cluster, 29-bit engine, PGM-FI +# TODO: move these to each brand's FW query config +STANDARD_VIN_ADDRS = [0x7e0, 0x7e2, 0x760, 0x7c6, 0x18da10f1, 0x18da0ef1] + +ESSENTIAL_ECUS = [Ecu.engine, Ecu.eps, Ecu.abs, Ecu.fwdRadar, Ecu.fwdCamera, Ecu.vsa] +ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()} + + +def p16(val): + return struct.pack("!H", val) + + +class StdQueries: + # FW queries + TESTER_PRESENT_REQUEST = bytes([uds.SERVICE_TYPE.TESTER_PRESENT, 0x0]) + TESTER_PRESENT_RESPONSE = bytes([uds.SERVICE_TYPE.TESTER_PRESENT + 0x40, 0x0]) + + SHORT_TESTER_PRESENT_REQUEST = bytes([uds.SERVICE_TYPE.TESTER_PRESENT]) + SHORT_TESTER_PRESENT_RESPONSE = bytes([uds.SERVICE_TYPE.TESTER_PRESENT + 0x40]) + + DEFAULT_DIAGNOSTIC_REQUEST = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, + uds.SESSION_TYPE.DEFAULT]) + DEFAULT_DIAGNOSTIC_RESPONSE = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, + uds.SESSION_TYPE.DEFAULT, 0x0, 0x32, 0x1, 0xf4]) + + EXTENDED_DIAGNOSTIC_REQUEST = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, + uds.SESSION_TYPE.EXTENDED_DIAGNOSTIC]) + EXTENDED_DIAGNOSTIC_RESPONSE = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, + uds.SESSION_TYPE.EXTENDED_DIAGNOSTIC, 0x0, 0x32, 0x1, 0xf4]) + + MANUFACTURER_SOFTWARE_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_SOFTWARE_NUMBER) + MANUFACTURER_SOFTWARE_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_SOFTWARE_NUMBER) + + SUPPLIER_SOFTWARE_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_VERSION_NUMBER) + SUPPLIER_SOFTWARE_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.SYSTEM_SUPPLIER_ECU_SOFTWARE_VERSION_NUMBER) + + MANUFACTURER_ECU_HARDWARE_NUMBER_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_HARDWARE_NUMBER) + MANUFACTURER_ECU_HARDWARE_NUMBER_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_HARDWARE_NUMBER) + + UDS_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_SOFTWARE_IDENTIFICATION) + UDS_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_SOFTWARE_IDENTIFICATION) + + OBD_VERSION_REQUEST = b'\x09\x04' + OBD_VERSION_RESPONSE = b'\x49\x04' + + # VIN queries + OBD_VIN_REQUEST = b'\x09\x02' + OBD_VIN_RESPONSE = b'\x49\x02\x01' + + UDS_VIN_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + p16(uds.DATA_IDENTIFIER_TYPE.VIN) + UDS_VIN_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + p16(uds.DATA_IDENTIFIER_TYPE.VIN) + + GM_VIN_REQUEST = b'\x1a\x90' + GM_VIN_RESPONSE = b'\x5a\x90' + + KWP_VIN_REQUEST = b'\x21\x81' + KWP_VIN_RESPONSE = b'\x61\x81' + + +@dataclass +class Request: + request: list[bytes] + response: list[bytes] + whitelist_ecus: list[Ecu] = field(default_factory=list) + rx_offset: int = 0x8 + bus: int = 1 + # Whether this query should be run on the first auxiliary panda (CAN FD cars for example) + auxiliary: bool = False + # FW responses from these queries will not be used for fingerprinting + logging: bool = False + # pandad toggles OBD multiplexing on/off as needed + obd_multiplexing: bool = True + + +@dataclass +class FwQueryConfig: + requests: list[Request] + # TODO: make this automatic and remove hardcoded lists, or do fingerprinting with ecus + # Overrides and removes from essential ecus for specific models and ecus (exact matching) + non_essential_ecus: dict[Ecu, list[str]] = field(default_factory=dict) + # Ecus added for data collection, not to be fingerprinted on + extra_ecus: list[tuple[Ecu, int, int | None]] = field(default_factory=list) + # Function a brand can implement to provide better fuzzy matching. Takes in FW versions and VIN, + # returns set of candidates. Only will match if one candidate is returned + match_fw_to_car_fuzzy: Callable[[LiveFwVersions, str, OfflineFwVersions], set[str]] | None = None + + def __post_init__(self): + # Asserts that a request exists if extra ecus are used + if len(self.extra_ecus): + assert len(self.requests), "Must define a request with extra ecus" + + # All extra ecus should be used in a request + for ecu, _, _ in self.extra_ecus: + assert (any(ecu in request.whitelist_ecus for request in self.requests) or + any(not request.whitelist_ecus for request in self.requests)), f"Ecu.{ECU_NAME[ecu]} not in any request" + + # These ECUs are already not in ESSENTIAL_ECUS which the fingerprint functions give a pass if missing + unnecessary_non_essential_ecus = set(self.non_essential_ecus) - set(ESSENTIAL_ECUS) + assert unnecessary_non_essential_ecus == set(), ("Declaring non-essential ECUs non-essential is not required: " + + f"{', '.join([f'Ecu.{ECU_NAME[ecu]}' for ecu in unnecessary_non_essential_ecus])}") + + # Asserts equal length request and response lists + for request_obj in self.requests: + assert len(request_obj.request) == len(request_obj.response), ("Request and response lengths do not match: " + + f"{request_obj.request} vs. {request_obj.response}") + + # No request on the OBD port (bus 1, multiplexed) should be run on an aux panda + assert not (request_obj.auxiliary and request_obj.bus == 1 and request_obj.obd_multiplexing), ("OBD multiplexed request should not " + + f"be marked auxiliary: {request_obj}") + + # Add aux requests (second panda) for all requests that are marked as auxiliary + for i in range(len(self.requests)): + if self.requests[i].auxiliary: + new_request = copy.deepcopy(self.requests[i]) + new_request.bus += 4 + self.requests.append(new_request) + + def get_all_ecus(self, offline_fw_versions: OfflineFwVersions, + include_extra_ecus: bool = True) -> set[EcuAddrSubAddr]: + # Add ecus in database + extra ecus + brand_ecus = {ecu for ecus in offline_fw_versions.values() for ecu in ecus} + + if include_extra_ecus: + brand_ecus |= set(self.extra_ecus) + + return brand_ecus diff --git a/opendbc_repo/opendbc/car/fw_versions.py b/opendbc_repo/opendbc/car/fw_versions.py new file mode 100644 index 0000000000..09d83b5276 --- /dev/null +++ b/opendbc_repo/opendbc/car/fw_versions.py @@ -0,0 +1,327 @@ +from collections import defaultdict +from collections.abc import Callable, Iterator +from typing import Protocol, TypeVar + +from tqdm import tqdm + +from opendbc.car import uds +from opendbc.car.can_definitions import CanRecvCallable, CanSendCallable +from opendbc.car.carlog import carlog +from opendbc.car.structs import CarParams +from opendbc.car.ecu_addrs import get_ecu_addrs +from opendbc.car.fingerprints import FW_VERSIONS +from opendbc.car.fw_query_definitions import ESSENTIAL_ECUS, AddrType, EcuAddrBusType, FwQueryConfig, LiveFwVersions, OfflineFwVersions +from opendbc.car.interfaces import get_interface_attr +from opendbc.car.isotp_parallel_query import IsoTpParallelQuery + +Ecu = CarParams.Ecu +FUZZY_EXCLUDE_ECUS = [Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps, Ecu.debug] + +FW_QUERY_CONFIGS: dict[str, FwQueryConfig] = get_interface_attr('FW_QUERY_CONFIG', ignore_none=True) +VERSIONS = get_interface_attr('FW_VERSIONS', ignore_none=True) + +MODEL_TO_BRAND = {c: b for b, e in VERSIONS.items() for c in e} +REQUESTS = [(brand, config, r) for brand, config in FW_QUERY_CONFIGS.items() for r in config.requests] + +T = TypeVar('T') +ObdCallback = Callable[[bool], None] + + +def chunks(l: list[T], n: int = 128) -> Iterator[list[T]]: + for i in range(0, len(l), n): + yield l[i:i + n] + + +def is_brand(brand: str, filter_brand: str | None) -> bool: + """Returns if brand matches filter_brand or no brand filter is specified""" + return filter_brand is None or brand == filter_brand + + +def build_fw_dict(fw_versions: list[CarParams.CarFw], filter_brand: str = None) -> dict[AddrType, set[bytes]]: + fw_versions_dict: defaultdict[AddrType, set[bytes]] = defaultdict(set) + for fw in fw_versions: + if is_brand(fw.brand, filter_brand) and not fw.logging: + sub_addr = fw.subAddress if fw.subAddress != 0 else None + fw_versions_dict[(fw.address, sub_addr)].add(fw.fwVersion) + return dict(fw_versions_dict) + + +class MatchFwToCar(Protocol): + def __call__(self, live_fw_versions: LiveFwVersions, match_brand: str = None, log: bool = True) -> set[str]: + ... + + +def match_fw_to_car_fuzzy(live_fw_versions: LiveFwVersions, match_brand: str = None, log: bool = True, exclude: str = None) -> set[str]: + """Do a fuzzy FW match. This function will return a match, and the number of firmware version + that were matched uniquely to that specific car. If multiple ECUs uniquely match to different cars + the match is rejected.""" + + # Build lookup table from (addr, sub_addr, fw) to list of candidate cars + all_fw_versions = defaultdict(list) + for candidate, fw_by_addr in FW_VERSIONS.items(): + if not is_brand(MODEL_TO_BRAND[candidate], match_brand): + continue + + if candidate == exclude: + continue + + for addr, fws in fw_by_addr.items(): + # These ECUs are known to be shared between models (EPS only between hybrid/ICE version) + # Getting this exactly right isn't crucial, but excluding camera and radar makes it almost + # impossible to get 3 matching versions, even if two models with shared parts are released at the same + # time and only one is in our database. + if addr[0] in FUZZY_EXCLUDE_ECUS: + continue + for f in fws: + all_fw_versions[(addr[1], addr[2], f)].append(candidate) + + matched_ecus = set() + match: str | None = None + for addr, versions in live_fw_versions.items(): + ecu_key = (addr[0], addr[1]) + for version in versions: + # All cars that have this FW response on the specified address + candidates = all_fw_versions[(*ecu_key, version)] + + if len(candidates) == 1: + matched_ecus.add(ecu_key) + if match is None: + match = candidates[0] + # We uniquely matched two different cars. No fuzzy match possible + elif match != candidates[0]: + return set() + + # Note that it is possible to match to a candidate without all its ECUs being present + # if there are enough matches. FIXME: parameterize this or require all ECUs to exist like exact matching + if match and len(matched_ecus) >= 2: + if log: + carlog.error(f"Fingerprinted {match} using fuzzy match. {len(matched_ecus)} matching ECUs") + return {match} + else: + return set() + + +def match_fw_to_car_exact(live_fw_versions: LiveFwVersions, match_brand: str = None, log: bool = True, extra_fw_versions: dict = None) -> set[str]: + """Do an exact FW match. Returns all cars that match the given + FW versions for a list of "essential" ECUs. If an ECU is not considered + essential the FW version can be missing to get a fingerprint, but if it's present it + needs to match the database.""" + if extra_fw_versions is None: + extra_fw_versions = {} + + invalid = set() + candidates = {c: f for c, f in FW_VERSIONS.items() if + is_brand(MODEL_TO_BRAND[c], match_brand)} + + for candidate, fws in candidates.items(): + config = FW_QUERY_CONFIGS[MODEL_TO_BRAND[candidate]] + for ecu, expected_versions in fws.items(): + expected_versions = expected_versions + extra_fw_versions.get(candidate, {}).get(ecu, []) + ecu_type = ecu[0] + addr = ecu[1:] + + found_versions = live_fw_versions.get(addr, set()) + if not len(found_versions): + # Some models can sometimes miss an ecu, or show on two different addresses + # FIXME: this logic can be improved to be more specific, should require one of the two addresses + if candidate in config.non_essential_ecus.get(ecu_type, []): + continue + + # Ignore non essential ecus + if ecu_type not in ESSENTIAL_ECUS: + continue + + # Virtual debug ecu doesn't need to match the database + if ecu_type == Ecu.debug: + continue + + if not any(found_version in expected_versions for found_version in found_versions): + invalid.add(candidate) + break + + return set(candidates.keys()) - invalid + + +def match_fw_to_car(fw_versions: list[CarParams.CarFw], vin: str, allow_exact: bool = True, + allow_fuzzy: bool = True, log: bool = True) -> tuple[bool, set[str]]: + # Try exact matching first + exact_matches: list[tuple[bool, MatchFwToCar]] = [] + if allow_exact: + exact_matches = [(True, match_fw_to_car_exact)] + if allow_fuzzy: + exact_matches.append((False, match_fw_to_car_fuzzy)) + + for exact_match, match_func in exact_matches: + # For each brand, attempt to fingerprint using all FW returned from its queries + matches: set[str] = set() + for brand in VERSIONS.keys(): + fw_versions_dict = build_fw_dict(fw_versions, filter_brand=brand) + matches |= match_func(fw_versions_dict, match_brand=brand, log=log) + + # If specified and no matches so far, fall back to brand's fuzzy fingerprinting function + config = FW_QUERY_CONFIGS[brand] + if not exact_match and not len(matches) and config.match_fw_to_car_fuzzy is not None: + matches |= config.match_fw_to_car_fuzzy(fw_versions_dict, vin, VERSIONS[brand]) + + if len(matches): + return exact_match, matches + + return True, set() + + +def get_present_ecus(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, num_pandas: int = 1) -> set[EcuAddrBusType]: + # queries are split by OBD multiplexing mode + queries: dict[bool, list[list[EcuAddrBusType]]] = {True: [], False: []} + parallel_queries: dict[bool, list[EcuAddrBusType]] = {True: [], False: []} + responses: set[EcuAddrBusType] = set() + + for brand, config, r in REQUESTS: + # Skip query if no panda available + if r.bus > num_pandas * 4 - 1: + continue + + for ecu_type, addr, sub_addr in config.get_all_ecus(VERSIONS[brand]): + # Only query ecus in whitelist if whitelist is not empty + if len(r.whitelist_ecus) == 0 or ecu_type in r.whitelist_ecus: + a = (addr, sub_addr, r.bus) + # Build set of queries + if sub_addr is None: + if a not in parallel_queries[r.obd_multiplexing]: + parallel_queries[r.obd_multiplexing].append(a) + else: # subaddresses must be queried one by one + if [a] not in queries[r.obd_multiplexing]: + queries[r.obd_multiplexing].append([a]) + + # Build set of expected responses to filter + response_addr = uds.get_rx_addr_for_tx_addr(addr, r.rx_offset) + responses.add((response_addr, sub_addr, r.bus)) + + for obd_multiplexing in queries: + queries[obd_multiplexing].insert(0, parallel_queries[obd_multiplexing]) + + ecu_responses = set() + for obd_multiplexing in queries: + set_obd_multiplexing(obd_multiplexing) + for query in queries[obd_multiplexing]: + ecu_responses.update(get_ecu_addrs(can_recv, can_send, set(query), responses, timeout=0.1)) + return ecu_responses + + +def get_brand_ecu_matches(ecu_rx_addrs: set[EcuAddrBusType]) -> dict[str, list[bool]]: + """Returns dictionary of brands and matches with ECUs in their FW versions""" + + brand_rx_addrs = {brand: set() for brand in FW_QUERY_CONFIGS} + brand_matches = {brand: [] for brand, _, _ in REQUESTS} + + # Since we can't know what request an ecu responded to, add matches for all possible rx offsets + for brand, config, r in REQUESTS: + for ecu in config.get_all_ecus(VERSIONS[brand]): + if len(r.whitelist_ecus) == 0 or ecu[0] in r.whitelist_ecus: + brand_rx_addrs[brand].add((uds.get_rx_addr_for_tx_addr(ecu[1], r.rx_offset), ecu[2])) + + for brand, addrs in brand_rx_addrs.items(): + for addr in addrs: + # TODO: check bus from request as well + brand_matches[brand].append(addr in [addr[:2] for addr in ecu_rx_addrs]) + + return brand_matches + + +def get_fw_versions_ordered(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, vin: str, + ecu_rx_addrs: set[EcuAddrBusType], timeout: float = 0.1, num_pandas: int = 1, progress: bool = False) -> list[CarParams.CarFw]: + """Queries for FW versions ordering brands by likelihood, breaks when exact match is found""" + + all_car_fw = [] + brand_matches = get_brand_ecu_matches(ecu_rx_addrs) + + # Sort brands by number of matching ECUs first, then percentage of matching ECUs in the database + # This allows brands with only one ECU to be queried first (e.g. Tesla) + for brand in sorted(brand_matches, key=lambda b: (brand_matches[b].count(True), brand_matches[b].count(True) / len(brand_matches[b])), reverse=True): + # Skip this brand if there are no matching present ECUs + if True not in brand_matches[brand]: + continue + + car_fw = get_fw_versions(can_recv, can_send, set_obd_multiplexing, query_brand=brand, timeout=timeout, num_pandas=num_pandas, progress=progress) + all_car_fw.extend(car_fw) + + # If there is a match using this brand's FW alone, finish querying early + _, matches = match_fw_to_car(car_fw, vin, log=False) + if len(matches) == 1: + break + + return all_car_fw + + +def get_fw_versions(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, query_brand: str = None, + extra: OfflineFwVersions = None, timeout: float = 0.1, num_pandas: int = 1, progress: bool = False) -> list[CarParams.CarFw]: + versions = VERSIONS.copy() + + if query_brand is not None: + versions = {query_brand: versions[query_brand]} + + if extra is not None: + versions.update(extra) + + # Extract ECU addresses to query from fingerprints + # ECUs using a subaddress need be queried one by one, the rest can be done in parallel + addrs = [] + parallel_addrs = [] + ecu_types = {} + + for brand, brand_versions in versions.items(): + config = FW_QUERY_CONFIGS[brand] + for ecu_type, addr, sub_addr in config.get_all_ecus(brand_versions): + a = (brand, addr, sub_addr) + if a not in ecu_types: + ecu_types[a] = ecu_type + + if sub_addr is None: + if a not in parallel_addrs: + parallel_addrs.append(a) + else: + if [a] not in addrs: + addrs.append([a]) + + addrs.insert(0, parallel_addrs) + + # Get versions and build capnp list to put into CarParams + car_fw = [] + requests = [(brand, config, r) for brand, config, r in REQUESTS if is_brand(brand, query_brand)] + for addr_group in tqdm(addrs, disable=not progress): # split by subaddr, if any + for addr_chunk in chunks(addr_group): + for brand, config, r in requests: + # Skip query if no panda available + if r.bus > num_pandas * 4 - 1: + continue + + # Toggle OBD multiplexing for each request + if r.bus % 4 == 1: + set_obd_multiplexing(r.obd_multiplexing) + + try: + query_addrs = [(a, s) for (b, a, s) in addr_chunk if b in (brand, 'any') and + (len(r.whitelist_ecus) == 0 or ecu_types[(b, a, s)] in r.whitelist_ecus)] + + if query_addrs: + query = IsoTpParallelQuery(can_send, can_recv, r.bus, query_addrs, r.request, r.response, r.rx_offset) + for (tx_addr, sub_addr), version in query.get_data(timeout).items(): + f = CarParams.CarFw() + + f.ecu = ecu_types.get((brand, tx_addr, sub_addr), Ecu.unknown) + f.fwVersion = version + f.address = tx_addr + f.responseAddress = uds.get_rx_addr_for_tx_addr(tx_addr, r.rx_offset) + f.request = r.request + f.brand = brand + f.bus = r.bus + f.logging = r.logging or (f.ecu, tx_addr, sub_addr) in config.extra_ecus + f.obdMultiplexing = r.obd_multiplexing + + if sub_addr is not None: + f.subAddress = sub_addr + + car_fw.append(f) + except Exception: + carlog.exception("FW query exception") + + return car_fw diff --git a/opendbc_repo/opendbc/car/gm/__init__.py b/opendbc_repo/opendbc/car/gm/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/gm/carcontroller.py b/opendbc_repo/opendbc/car/gm/carcontroller.py new file mode 100644 index 0000000000..627b339a49 --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/carcontroller.py @@ -0,0 +1,332 @@ +from openpilot.common.params import Params +from openpilot.common.filter_simple import FirstOrderFilter + +import numpy as np +from opendbc.can.packer import CANPacker +from opendbc.car import Bus, DT_CTRL, apply_driver_steer_torque_limits, structs, create_gas_interceptor_command +from opendbc.car.gm import gmcan +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.gm.values import DBC, CanBus, CarControllerParams, CruiseButtons, GMFlags, CC_ONLY_CAR, EV_CAR, AccState, CC_REGEN_PADDLE_CAR, CAR +from opendbc.car.interfaces import CarControllerBase +from openpilot.selfdrive.controls.lib.drive_helpers import apply_deadzone +from opendbc.car.vehicle_model import ACCELERATION_DUE_TO_GRAVITY +from openpilot.selfdrive.car.cruise import VCruiseCarrot + +VisualAlert = structs.CarControl.HUDControl.VisualAlert +NetworkLocation = structs.CarParams.NetworkLocation +LongCtrlState = structs.CarControl.Actuators.LongControlState + +# Camera cancels up to 0.1s after brake is pressed, ECM allows 0.5s +CAMERA_CANCEL_DELAY_FRAMES = 10 +# Enforce a minimum interval between steering messages to avoid a fault +MIN_STEER_MSG_INTERVAL_MS = 15 + +# constants for pitch compensation +PITCH_DEADZONE = 0.01 # [radians] 0.01 ? 1% grade +BRAKE_PITCH_FACTOR_BP = [5., 10.] # [m/s] smoothly revert to planned accel at low speeds +BRAKE_PITCH_FACTOR_V = [0., 1.] # [unitless in [0,1]]; don't touch + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.start_time = 0. + self.apply_torque_last = 0 + self.apply_gas = 0 + self.apply_brake = 0 + self.apply_speed = 0 # kans: button spam + self.frame = 0 + self.last_steer_frame = 0 + self.last_button_frame = 0 + self.cancel_counter = 0 + self.pedal_steady = 0. + + self.lka_steering_cmd_counter = 0 + self.lka_icon_status_last = (False, False) + + self.params = CarControllerParams(self.CP) + self.params_ = Params() # kans: button spam + + self.packer_pt = CANPacker(DBC[self.CP.carFingerprint][Bus.pt]) + self.packer_obj = CANPacker(DBC[self.CP.carFingerprint][Bus.radar]) + self.packer_ch = CANPacker(DBC[self.CP.carFingerprint][Bus.chassis]) + + self.long_pitch = False + self.use_ev_tables = False + + self.pitch = FirstOrderFilter(0., 0.09 * 4, DT_CTRL * 4) # runs at 25 Hz + self.accel_g = 0.0 + # GM: AutoResume + self.activateCruise_after_brake = False + self.v_cruise_carrot = VCruiseCarrot(self.CP) + + @staticmethod + def calc_pedal_command(accel: float, long_active: bool, car_velocity) -> tuple[float, bool]: + if not long_active: return 0., False + press_regen_paddle = False + + if accel < -0.3: #-0.15: + press_regen_paddle = True + pedal_gas = 0 + else: + # pedaloffset = 0.24 + pedaloffset = np.interp(car_velocity, [0., 3, 6, 30], [0.08, 0.175, 0.240, 0.240]) + pedal_gas = np.clip((pedaloffset + accel * 0.6), 0.0, 1.0) + + ####for safety. + pedal_gas_max = np.interp(car_velocity, [0.0, 5, 30], [0.21, 0.3175, 0.3525]) + pedal_gas = np.clip(pedal_gas, 0.0, pedal_gas_max) + ####for safety. end. + + return pedal_gas, press_regen_paddle + + def update(self, CC, CS, now_nanos): + + if self.frame % 50 == 0: + params = Params() + steerMax = params.get_int("CustomSteerMax") + steerDeltaUp = params.get_int("CustomSteerDeltaUp") + steerDeltaDown = params.get_int("CustomSteerDeltaDown") + if steerMax > 0: + self.params.STEER_MAX = steerMax + if steerDeltaUp > 0: + self.params.STEER_DELTA_UP = steerDeltaUp + if steerDeltaDown > 0: + self.params.STEER_DELTA_DOWN = steerDeltaDown + self.long_pitch = Params().get_bool("LongPitch") + self.use_ev_tables = Params().get_bool("EVTable") + + actuators = CC.actuators + accel = brake_accel = actuators.accel + hud_control = CC.hudControl + hud_alert = hud_control.visualAlert + hud_v_cruise = hud_control.setSpeed + if hud_v_cruise > 70: + hud_v_cruise = 0 + + + # Send CAN commands. + can_sends = [] + + # Steering (Active: 50Hz, inactive: 10Hz) + steer_step = self.params.STEER_STEP if CC.latActive else self.params.INACTIVE_STEER_STEP + + if self.CP.networkLocation == NetworkLocation.fwdCamera: + # Also send at 50Hz: + # - on startup, first few msgs are blocked + # - until we're in sync with camera so counters align when relay closes, preventing a fault. + # openpilot can subtly drift, so this is activated throughout a drive to stay synced + out_of_sync = self.lka_steering_cmd_counter % 4 != (CS.cam_lka_steering_cmd_counter + 1) % 4 + if CS.loopback_lka_steering_cmd_ts_nanos == 0 or out_of_sync: + steer_step = self.params.STEER_STEP + + self.lka_steering_cmd_counter += 1 if CS.loopback_lka_steering_cmd_updated else 0 + + # Avoid GM EPS faults when transmitting messages too close together: skip this transmit if we + # received the ASCMLKASteeringCmd loopback confirmation too recently + last_lka_steer_msg_ms = (now_nanos - CS.loopback_lka_steering_cmd_ts_nanos) * 1e-6 + if (self.frame - self.last_steer_frame) >= steer_step and last_lka_steer_msg_ms > MIN_STEER_MSG_INTERVAL_MS: + # Initialize ASCMLKASteeringCmd counter using the camera until we get a msg on the bus + if CS.loopback_lka_steering_cmd_ts_nanos == 0: + self.lka_steering_cmd_counter = CS.pt_lka_steering_cmd_counter + 1 + + if CC.latActive: + new_torque = int(round(actuators.torque * self.params.STEER_MAX)) + apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.params) + else: + apply_torque = 0 + + self.last_steer_frame = self.frame + self.apply_torque_last = apply_torque + idx = self.lka_steering_cmd_counter % 4 + can_sends.append(gmcan.create_steering_control(self.packer_pt, CanBus.POWERTRAIN, apply_torque, idx, CC.latActive)) + + if self.CP.openpilotLongitudinalControl: + + if self.CP.carFingerprint in (CAR.CHEVROLET_VOLT): + button_counter = (CS.buttons_counter + 1) % 4 + # Auto Cruise + if CS.out.activateCruise and not CS.out.cruiseState.enabled: + self.activateCruise_after_brake = False # 오토크루즈가 되기 위해 브레이크 신호는 OFF여야 함. + if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: # 25Hz(40ms 버튼주기) + self.last_button_frame = self.frame + can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, button_counter, CruiseButtons.DECEL_SET)) + + # GM: AutoResume + elif actuators.longControlState == LongCtrlState.starting: + if CS.out.cruiseState.enabled and not self.activateCruise_after_brake: #브레이크신호 한번만 보내기 위한 조건. + idx = (self.frame // 4) % 4 + brake_force = -0.5 #롱컨캔슬을 위한 브레이크값(0.0 이하) + apply_brake = self.brake_input(brake_force) + # 브레이크신호 전송(롱컨 꺼짐) + can_sends.append(gmcan.create_brake_command(self.packer_ch, CanBus.CHASSIS, apply_brake, idx)) + Params().put_bool_nonblocking("ActivateCruiseAfterBrake", True) # cruise.py에 브레이크 ON신호 전달 + self.activateCruise_after_brake = True # 브레이크신호는 한번만 보내고 초기화 + else: + auto_cruise_control = self.v_cruise_carrot.autoCruiseControl + if (CS.out.activateCruise or auto_cruise_control > 0) and \ + not CS.out.cruiseState.enabled: + if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: + self.last_button_frame = self.frame + can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, (CS.buttons_counter + 1) % 4, CruiseButtons.DECEL_SET)) + + # Gas/regen, brakes, and UI commands - all at 25Hz + if self.frame % 4 == 0: + # GM: softHold + stopping = actuators.longControlState == LongCtrlState.stopping or CS.out.softHoldActive > 0 + + # Pitch compensated acceleration; + # TODO: include future pitch (sm['modelDataV2'].orientation.y) to account for long actuator delay + if self.long_pitch and len(CC.orientationNED) > 1: + self.pitch.update(CC.orientationNED[1]) + self.accel_g = ACCELERATION_DUE_TO_GRAVITY * apply_deadzone(self.pitch.x, PITCH_DEADZONE) # driving uphill is positive pitch + accel += self.accel_g + brake_accel = actuators.accel + self.accel_g * np.interp(CS.out.vEgo, BRAKE_PITCH_FACTOR_BP, BRAKE_PITCH_FACTOR_V) + + at_full_stop = CC.longActive and CS.out.standstill + near_stop = CC.longActive and (abs(CS.out.vEgo) < self.params.NEAR_STOP_BRAKE_PHASE) + interceptor_gas_cmd = 0 + press_regen_paddle = False + if not CC.longActive: + # ASCM sends max regen when not enabled + self.apply_gas = self.params.INACTIVE_REGEN + self.apply_brake = 0 + elif near_stop and stopping and not CC.cruiseControl.resume: + self.apply_gas = self.params.INACTIVE_REGEN + self.apply_brake = int(min(-100 * self.CP.stopAccel, self.params.MAX_BRAKE)) + press_regen_paddle = False + else: + # Normal operation + if self.CP.carFingerprint in EV_CAR and self.use_ev_tables: + self.params.update_ev_gas_brake_threshold(CS.out.vEgo) + self.apply_gas = int(round(np.interp(accel if self.long_pitch else actuators.accel, self.params.EV_GAS_LOOKUP_BP, self.params.GAS_LOOKUP_V))) + self.apply_brake = int(round(np.interp(brake_accel if self.long_pitch else actuators.accel, self.params.EV_BRAKE_LOOKUP_BP, self.params.BRAKE_LOOKUP_V))) + else: + self.apply_gas = int(round(np.interp(accel if self.long_pitch else actuators.accel, self.params.GAS_LOOKUP_BP, self.params.GAS_LOOKUP_V))) + self.apply_brake = int(round(np.interp(brake_accel if self.long_pitch else actuators.accel, self.params.BRAKE_LOOKUP_BP, self.params.BRAKE_LOOKUP_V))) + # Don't allow any gas above inactive regen while stopping + # FIXME: brakes aren't applied immediately when enabling at a stop + if stopping: + self.apply_gas = self.params.INACTIVE_REGEN + if self.CP.carFingerprint in CC_ONLY_CAR: + # gas interceptor only used for full long control on cars without ACC + interceptor_gas_cmd, press_regen_paddle = self.calc_pedal_command(actuators.accel, CC.longActive, CS.out.vEgo) + + if self.CP.enableGasInterceptorDEPRECATED and self.apply_gas > self.params.INACTIVE_REGEN and CS.out.cruiseState.standstill: + # "Tap" the accelerator pedal to re-engage ACC + interceptor_gas_cmd = self.params.SNG_INTERCEPTOR_GAS + self.apply_brake = 0 + press_regen_paddle = False + self.apply_gas = self.params.INACTIVE_REGEN + + idx = (self.frame // 4) % 4 + + if self.CP.flags & GMFlags.CC_LONG.value: + if CC.longActive and CS.out.vEgo > self.CP.minEnableSpeed: + # Using extend instead of append since the message is only sent intermittently + can_sends.extend(gmcan.create_gm_cc_spam_command(self.packer_pt, self, CS, actuators)) + if self.CP.enableGasInterceptorDEPRECATED: + can_sends.append(create_gas_interceptor_command(self.packer_pt, interceptor_gas_cmd, idx)) + if self.CP.carFingerprint in CC_REGEN_PADDLE_CAR and press_regen_paddle: + can_sends.append(gmcan.create_regen_paddle_command(self.packer_pt, CanBus.POWERTRAIN)) + if self.CP.carFingerprint not in CC_ONLY_CAR: + at_full_stop = CC.longActive and CS.out.standstill + near_stop = CC.longActive and (abs(CS.out.vEgo) < self.params.NEAR_STOP_BRAKE_PHASE) + friction_brake_bus = CanBus.CHASSIS + # GM Camera exceptions + # TODO: can we always check the longControlState? + if self.CP.networkLocation == NetworkLocation.fwdCamera and self.CP.carFingerprint not in CC_ONLY_CAR: + at_full_stop = at_full_stop and stopping + friction_brake_bus = CanBus.POWERTRAIN + + + if self.CP.autoResumeSng: + resume = actuators.longControlState != LongCtrlState.starting or CC.cruiseControl.resume + at_full_stop = at_full_stop and not resume + + if CC.cruiseControl.resume and CS.pcm_acc_status == AccState.STANDSTILL: + acc_engaged = False + else: + acc_engaged = CC.enabled + + if actuators.longControlState in [LongCtrlState.stopping, LongCtrlState.starting]: + if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: + self.last_button_frame = self.frame + can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, (CS.buttons_counter + 1) % 4, CruiseButtons.RES_ACCEL)) + # GasRegenCmdActive needs to be 1 to avoid cruise faults. It describes the ACC state, not actuation + can_sends.append(gmcan.create_gas_regen_command(self.packer_pt, CanBus.POWERTRAIN, self.apply_gas, idx, acc_engaged, at_full_stop)) + can_sends.append(gmcan.create_friction_brake_command(self.packer_ch, friction_brake_bus, self.apply_brake, + idx, CC.enabled, near_stop, at_full_stop, self.CP)) + + # Send dashboard UI commands (ACC status) + send_fcw = hud_alert == VisualAlert.fcw + can_sends.append(gmcan.create_acc_dashboard_command(self.packer_pt, CanBus.POWERTRAIN, CC.enabled, + hud_v_cruise * CV.MS_TO_KPH, hud_control, send_fcw)) + else: + # to keep accel steady for logs when not sending gas + accel += self.accel_g + + # Radar needs to know current speed and yaw rate (50hz), + # and that ADAS is alive (10hz) + if not self.CP.radarUnavailable: + tt = self.frame * DT_CTRL + time_and_headlights_step = 10 + if self.frame % time_and_headlights_step == 0: + idx = (self.frame // time_and_headlights_step) % 4 + can_sends.append(gmcan.create_adas_time_status(CanBus.OBSTACLE, int((tt - self.start_time) * 60), idx)) + can_sends.append(gmcan.create_adas_headlights_status(self.packer_obj, CanBus.OBSTACLE)) + + speed_and_accelerometer_step = 2 + if self.frame % speed_and_accelerometer_step == 0: + idx = (self.frame // speed_and_accelerometer_step) % 4 + can_sends.append(gmcan.create_adas_steering_status(CanBus.OBSTACLE, idx)) + can_sends.append(gmcan.create_adas_accelerometer_speed_status(CanBus.OBSTACLE, abs(CS.out.vEgo), idx)) + + if self.CP.networkLocation == NetworkLocation.gateway and self.frame % self.params.ADAS_KEEPALIVE_STEP == 0: + can_sends += gmcan.create_adas_keepalive(CanBus.POWERTRAIN) + + # TODO: integrate this with the code block below? + if ( + (self.CP.flags & GMFlags.PEDAL_LONG.value) # Always cancel stock CC when using pedal interceptor + or (self.CP.flags & GMFlags.CC_LONG.value and not CC.enabled) # Cancel stock CC if OP is not active + ) and CS.out.cruiseState.enabled: + if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: + self.last_button_frame = self.frame + can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.POWERTRAIN, (CS.buttons_counter + 1) % 4, CruiseButtons.CANCEL)) + + else: + # While car is braking, cancel button causes ECM to enter a soft disable state with a fault status. + # A delayed cancellation allows camera to cancel and avoids a fault when user depresses brake quickly + self.cancel_counter = self.cancel_counter + 1 if CC.cruiseControl.cancel else 0 + + # Stock longitudinal, integrated at camera + if (self.frame - self.last_button_frame) * DT_CTRL > 0.04: + if self.cancel_counter > CAMERA_CANCEL_DELAY_FRAMES: + self.last_button_frame = self.frame + can_sends.append(gmcan.create_buttons(self.packer_pt, CanBus.CAMERA, (CS.buttons_counter + 1) % 4, CruiseButtons.CANCEL)) + + if self.CP.networkLocation == NetworkLocation.fwdCamera: + # Silence "Take Steering" alert sent by camera, forward PSCMStatus with HandsOffSWlDetectionStatus=1 + if self.frame % 10 == 0: + can_sends.append(gmcan.create_pscm_status(self.packer_pt, CanBus.CAMERA, CS.pscm_status)) + + new_actuators = actuators.as_builder() + new_actuators.accel = accel + new_actuators.torque = self.apply_torque_last / self.params.STEER_MAX + new_actuators.torqueOutputCan = self.apply_torque_last + new_actuators.gas = self.apply_gas + new_actuators.brake = self.apply_brake + new_actuators.speed = self.apply_speed # kans: button spam + + self.frame += 1 + return new_actuators, can_sends + + # GM: AutoResume + def brake_input(self, brake_force): + MAX_BRAKE = 400 + ZERO_GAS = 0.0 + + if brake_force > 0.0: + raise ValueError("brake_force는 0.0이하라야 됨.") + + scaled_brake = max(0, min(MAX_BRAKE, int(brake_force * -100))) # -를 +로 변환 + return -scaled_brake diff --git a/opendbc_repo/opendbc/car/gm/carstate.py b/opendbc_repo/opendbc/car/gm/carstate.py new file mode 100644 index 0000000000..5dd7c5147f --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/carstate.py @@ -0,0 +1,228 @@ +import copy +from opendbc.can import CANDefine, CANParser +from cereal import car +from openpilot.common.params import Params #kans +import numpy as np +from opendbc.car import Bus, create_button_events, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase +from opendbc.car.gm.values import DBC, AccState, CruiseButtons, STEER_THRESHOLD, CAR, DBC, CanBus, GMFlags, CC_ONLY_CAR, CAMERA_ACC_CAR + +ButtonType = structs.CarState.ButtonEvent.Type +TransmissionType = structs.CarParams.TransmissionType +NetworkLocation = structs.CarParams.NetworkLocation +GearShifter = structs.CarState.GearShifter +STANDSTILL_THRESHOLD = 10 * 0.0311 * CV.KPH_TO_MS + +BUTTONS_DICT = {CruiseButtons.RES_ACCEL: ButtonType.accelCruise, CruiseButtons.DECEL_SET: ButtonType.decelCruise, + CruiseButtons.MAIN: ButtonType.mainCruise, CruiseButtons.CANCEL: ButtonType.cancel, + CruiseButtons.GAP_DIST: ButtonType.gapAdjustCruise} + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + self.shifter_values = can_define.dv["ECMPRDNL2"]["PRNDL2"] + self.cluster_speed_hyst_gap = CV.KPH_TO_MS / 2. + self.cluster_min_speed = CV.KPH_TO_MS / 2. + + self.loopback_lka_steering_cmd_updated = False + self.loopback_lka_steering_cmd_ts_nanos = 0 + self.pt_lka_steering_cmd_counter = 0 + self.cam_lka_steering_cmd_counter = 0 + self.is_metric = False + + self.buttons_counter = 0 + self.single_pedal_mode = False + self.pedal_steady = 0. + self.cruise_buttons = 0 + # GAP_DIST + self.distance_button = 0 + + # cruiseMain default(test from nd0706-vision) + self.cruiseMain_on = True if Params().get_int("AutoEngage") == 2 else False + + def update_button_enable(self, buttonEvents: list[structs.CarState.ButtonEvent]): + if not self.CP.pcmCruise: + for b in buttonEvents: + # The ECM allows enabling on falling edge of set, but only rising edge of resume + if (b.type == ButtonType.accelCruise and b.pressed) or \ + (b.type == ButtonType.decelCruise and not b.pressed): + return True + return False + + def update(self, can_parsers) -> structs.CarState: + pt_cp = can_parsers[Bus.pt] + cam_cp = can_parsers[Bus.cam] + loopback_cp = can_parsers[Bus.loopback] + + ret = structs.CarState() + + prev_cruise_buttons = self.cruise_buttons + prev_distance_button = self.distance_button + self.cruise_buttons = pt_cp.vl["ASCMSteeringButton"]["ACCButtons"] + self.distance_button = pt_cp.vl["ASCMSteeringButton"]["DistanceButton"] + self.buttons_counter = pt_cp.vl["ASCMSteeringButton"]["RollingCounter"] + + self.pscm_status = copy.copy(pt_cp.vl["PSCMStatus"]) + # GAP_DIST + if self.cruise_buttons in [CruiseButtons.UNPRESS, CruiseButtons.INIT] and self.distance_button: + self.cruise_buttons = CruiseButtons.GAP_DIST + + if self.CP.enableBsm: + ret.leftBlindspot = pt_cp.vl["BCMBlindSpotMonitor"]["LeftBSM"] == 1 + ret.rightBlindspot = pt_cp.vl["BCMBlindSpotMonitor"]["RightBSM"] == 1 + + # Variables used for avoiding LKAS faults + self.loopback_lka_steering_cmd_updated = len(loopback_cp.vl_all["ASCMLKASteeringCmd"]["RollingCounter"]) > 0 + if self.loopback_lka_steering_cmd_updated: + self.loopback_lka_steering_cmd_ts_nanos = loopback_cp.ts_nanos["ASCMLKASteeringCmd"]["RollingCounter"] + if self.CP.networkLocation == NetworkLocation.fwdCamera and not self.CP.flags & GMFlags.NO_CAMERA.value: + self.pt_lka_steering_cmd_counter = pt_cp.vl["ASCMLKASteeringCmd"]["RollingCounter"] + self.cam_lka_steering_cmd_counter = cam_cp.vl["ASCMLKASteeringCmd"]["RollingCounter"] + + # This is to avoid a fault where you engage while still moving backwards after shifting to D. + # An Equinox has been seen with an unsupported status (3), so only check if either wheel is in reverse (2) + left_whl_sign = -1 if pt_cp.vl["EBCMWheelSpdRear"]["RLWheelDir"] == 2 else 1 + right_whl_sign = -1 if pt_cp.vl["EBCMWheelSpdRear"]["RRWheelDir"] == 2 else 1 + ret.wheelSpeeds = self.get_wheel_speeds( + left_whl_sign * pt_cp.vl["EBCMWheelSpdFront"]["FLWheelSpd"], + right_whl_sign * pt_cp.vl["EBCMWheelSpdFront"]["FRWheelSpd"], + left_whl_sign * pt_cp.vl["EBCMWheelSpdRear"]["RLWheelSpd"], + right_whl_sign * pt_cp.vl["EBCMWheelSpdRear"]["RRWheelSpd"], + ) + ret.vEgoRaw = float(np.mean([ret.wheelSpeeds.fl, ret.wheelSpeeds.fr, ret.wheelSpeeds.rl, ret.wheelSpeeds.rr])) + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + # sample rear wheel speeds, standstill=True if ECM allows engagement with brake + ret.standstill = abs(ret.wheelSpeeds.rl) <= STANDSTILL_THRESHOLD and abs(ret.wheelSpeeds.rr) <= STANDSTILL_THRESHOLD + + if pt_cp.vl["ECMPRDNL2"]["ManualMode"] == 1: + ret.gearShifter = self.parse_gear_shifter("T") + else: + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(pt_cp.vl["ECMPRDNL2"]["PRNDL2"], None)) + + if self.CP.flags & GMFlags.NO_ACCELERATOR_POS_MSG.value: + ret.brake = pt_cp.vl["EBCMBrakePedalPosition"]["BrakePedalPosition"] / 0xd0 + else: + ret.brake = pt_cp.vl["ECMAcceleratorPos"]["BrakePedalPos"] + if self.CP.networkLocation == NetworkLocation.fwdCamera: + ret.brakePressed = pt_cp.vl["ECMEngineStatus"]["BrakePressed"] != 0 + else: + # Some Volt 2016-17 have loose brake pedal push rod retainers which causes the ECM to believe + # that the brake is being intermittently pressed without user interaction. + # To avoid a cruise fault we need to use a conservative brake position threshold + # https://static.nhtsa.gov/odi/tsbs/2017/MC-10137629-9999.pdf + ret.brakePressed = ret.brake >= 10 + + # Regen braking is braking + if self.CP.transmissionType == TransmissionType.direct: + ret.regenBraking = pt_cp.vl["EBCMRegenPaddle"]["RegenPaddle"] != 0 + self.single_pedal_mode = ret.gearShifter == GearShifter.low or pt_cp.vl["EVDriveMode"]["SinglePedalModeActive"] == 1 + + if self.CP.enableGasInterceptorDEPRECATED: + ret.gas = (pt_cp.vl["GAS_SENSOR"]["INTERCEPTOR_GAS"] + pt_cp.vl["GAS_SENSOR"]["INTERCEPTOR_GAS2"]) / 2. + threshold = 20 if self.CP.carFingerprint in CAMERA_ACC_CAR else 4 + ret.gasPressed = ret.gas > threshold + else: + ret.gas = pt_cp.vl["AcceleratorPedal2"]["AcceleratorPedal2"] / 254. + ret.gasPressed = ret.gas > 1e-5 + + ret.steeringAngleDeg = pt_cp.vl["PSCMSteeringAngle"]["SteeringWheelAngle"] + ret.steeringRateDeg = pt_cp.vl["PSCMSteeringAngle"]["SteeringWheelRate"] + ret.steeringTorque = pt_cp.vl["PSCMStatus"]["LKADriverAppldTrq"] + ret.steeringTorqueEps = pt_cp.vl["PSCMStatus"]["LKATorqueDelivered"] + ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD + + # 0 inactive, 1 active, 2 temporarily limited, 3 failed + self.lkas_status = pt_cp.vl["PSCMStatus"]["LKATorqueDeliveredStatus"] + ret.steerFaultTemporary = self.lkas_status == 2 + ret.steerFaultPermanent = self.lkas_status == 3 + + # 1 - open, 0 - closed + ret.doorOpen = (pt_cp.vl["BCMDoorBeltStatus"]["FrontLeftDoor"] == 1 or + pt_cp.vl["BCMDoorBeltStatus"]["FrontRightDoor"] == 1 or + pt_cp.vl["BCMDoorBeltStatus"]["RearLeftDoor"] == 1 or + pt_cp.vl["BCMDoorBeltStatus"]["RearRightDoor"] == 1) + + # 1 - latched + ret.seatbeltUnlatched = pt_cp.vl["BCMDoorBeltStatus"]["LeftSeatBelt"] == 0 + ret.leftBlinker = pt_cp.vl["BCMTurnSignals"]["TurnSignals"] == 1 + ret.rightBlinker = pt_cp.vl["BCMTurnSignals"]["TurnSignals"] == 2 + + ret.parkingBrake = pt_cp.vl["BCMGeneralPlatformStatus"]["ParkBrakeSwActive"] == 1 + + ret.cruiseState.available = pt_cp.vl["ECMEngineStatus"]["CruiseMainOn"] != 0 + self.cruiseMain_on = ret.cruiseState.available + ret.espDisabled = pt_cp.vl["ESPStatus"]["TractionControlOn"] != 1 + ret.accFaulted = (pt_cp.vl["AcceleratorPedal2"]["CruiseState"] == AccState.FAULTED or + pt_cp.vl["EBCMFrictionBrakeStatus"]["FrictionBrakeUnavailable"] == 1) + + ret.cruiseState.enabled = pt_cp.vl["AcceleratorPedal2"]["CruiseState"] != AccState.OFF + ret.cruiseState.standstill = pt_cp.vl["AcceleratorPedal2"]["CruiseState"] == AccState.STANDSTILL + # kans: avoid to accFault + if self.CP.carFingerprint not in CAR.CHEVROLET_VOLT: + ret.cruiseState.standstill = False + if self.CP.networkLocation == NetworkLocation.fwdCamera and not self.CP.flags & GMFlags.NO_CAMERA.value: + if self.CP.carFingerprint not in CC_ONLY_CAR: + ret.cruiseState.speed = cam_cp.vl["ASCMActiveCruiseControlStatus"]["ACCSpeedSetpoint"] * CV.KPH_TO_MS + ret.stockAeb = False + # openpilot controls nonAdaptive when not pcmCruise + if self.CP.pcmCruise and self.CP.carFingerprint not in CC_ONLY_CAR: + ret.cruiseState.nonAdaptive = cam_cp.vl["ASCMActiveCruiseControlStatus"]["ACCCruiseState"] not in (2, 3) + if self.CP.carFingerprint in CC_ONLY_CAR: + ret.accFaulted = False + ret.cruiseState.speed = pt_cp.vl["ECMCruiseControl"]["CruiseSetSpeed"] * CV.KPH_TO_MS + ret.cruiseState.enabled = pt_cp.vl["ECMCruiseControl"]["CruiseActive"] != 0 + prev_lkas_enabled = self.lkas_enabled + self.lkas_enabled = pt_cp.vl["ASCMSteeringButton"]["LKAButton"] + + self.pcm_acc_status = pt_cp.vl["AcceleratorPedal2"]["CruiseState"] + if self.CP.carFingerprint in (CAR.CHEVROLET_TRAX, CAR.CHEVROLET_TRAILBLAZER, CAR.CHEVROLET_TRAILBLAZER_CC): + ret.vCluRatio = 0.96 + elif self.CP.flags & GMFlags.SPEED_RELATED_MSG.value: + # kans: use cluster speed & vCluRatio(longitudialPlanner) + self.is_metric = Params().get_bool("IsMetric") + speed_conv = CV.MPH_TO_MS if self.is_metric else CV.KPH_TO_MS + cluSpeed = pt_cp.vl["SPEED_RELATED"]["ClusterSpeed"] + ret.vEgoCluster = cluSpeed * speed_conv + vEgoClu, aEgoClu = self.update_clu_speed_kf(ret.vEgoCluster) + if self.CP.carFingerprint in CAR.CHEVROLET_VOLT: + ret.vCluRatio = 1.0 #(ret.vEgo / vEgoClu) if (vEgoClu > 3. and ret.vEgo > 3.) else 1.0 + else: + ret.vCluRatio = 0.96 + + # Don't add event if transitioning from INIT, unless it's to an actual button + if self.cruise_buttons != CruiseButtons.UNPRESS or prev_cruise_buttons != CruiseButtons.INIT: + ret.buttonEvents = [ + *create_button_events(self.cruise_buttons, prev_cruise_buttons, BUTTONS_DICT, + unpressed_btn=CruiseButtons.UNPRESS), + *create_button_events(self.distance_button, prev_distance_button, + {1: ButtonType.gapAdjustCruise}), + *create_button_events(self.lkas_enabled, prev_lkas_enabled, + {1: ButtonType.lkas}) + ] + + return ret + + @staticmethod + def get_can_parsers(CP): + pt_messages = [] + if CP.networkLocation == NetworkLocation.fwdCamera: + pt_messages += [ + ("ASCMLKASteeringCmd", float('nan')), + ] + if CP.transmissionType == TransmissionType.direct: + pt_messages += [ + ("EBCMRegenPaddle", 50), + ("EVDriveMode", float('nan')), + ] + loopback_messages = [ + ("ASCMLKASteeringCmd", float('nan')), + ] + + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], pt_messages, 0), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + Bus.loopback: CANParser(DBC[CP.carFingerprint][Bus.pt], loopback_messages, 128), + } + diff --git a/opendbc_repo/opendbc/car/gm/fingerprints.py b/opendbc_repo/opendbc/car/gm/fingerprints.py new file mode 100644 index 0000000000..ae10f80e76 --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/fingerprints.py @@ -0,0 +1,216 @@ +# ruff: noqa: E501 +from opendbc.car.gm.values import CAR + +# Trailblazer also matches as a SILVERADO, TODO: split with fw versions +# FIXME: There are Equinox users with different message lengths, specifically 304 and 320 + + +FINGERPRINTS = { + CAR.CADILLAC_CT6_ACC: [{ + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 4, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 460: 5, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 723: 2, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 977: 8, 979: 7, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 1, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 7, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 4, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1919: 7, 1920: 8, 1924: 8, 1927: 8, 1928: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2004: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 + }], + CAR.HOLDEN_ASTRA: [{ + 190: 8, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 8, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 401: 8, 413: 8, 417: 8, 419: 8, 422: 1, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 8, 455: 7, 456: 8, 458: 5, 479: 8, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 8, 501: 8, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 647: 5, 707: 8, 715: 8, 723: 8, 753: 5, 761: 7, 806: 1, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1009: 8, 1011: 6, 1017: 8, 1019: 3, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 8, 1280: 4, 1300: 8, 1328: 4, 1417: 8, 1906: 7, 1907: 7, 1908: 7, 1912: 7, 1919: 7 + }], + CAR.CHEVROLET_VOLT: [{ + 170: 8, 171: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 289: 8, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 577: 8, 647: 3, 707: 8, 711: 6, 715: 8, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 961: 8, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1928: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 + }, + { + 170: 8, 171: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 577: 8, 578: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 715: 8, 717: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1516: 8, 1601: 8, 1618: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1930: 7, 2016: 8, 2018: 8, 2020: 8, 2024: 8, 2028: 8 + }, + { + 170: 8, 171: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 199: 4, 201: 6, 209: 7, 211: 2, 241: 6, 288: 5, 289: 1, 290: 1, 298: 2, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 368: 8, 381: 2, 384: 8, 386: 5, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 3, 508: 8, 512: 3, 528: 4, 530: 8, 532: 6, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 761: 7, 810: 8, 821: 4, 823: 7, 832: 8, 840: 5, 842: 5, 844: 8, 853: 8, 866: 4, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7 + }, + # Volt Premier 2017 w/ flashed firmware, cam harness + pedal + { + 189: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 386: 8, 388: 8, 451: 8, 452: 8, 453: 6, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 497: 8, 500: 6, 501: 8, 513: 6, 528: 4, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 566: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1922: 7 + }, + # jfkoz + { + 170: 8, 171: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 5, 567: 3, 568: 1, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1930: 7, 2017: 8, 2020: 8, 2025: 8, 2028: 8 + }], + CAR.BUICK_LACROSSE: [{ + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 510: 8, 528: 5, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 5, 707: 8, 753: 5, 761: 7, 801: 8, 804: 3, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 872: 1, 882: 8, 890: 1, 892: 2, 893: 1, 894: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1904: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1914: 7, 1916: 7, 1918: 7, 1919: 7, 1937: 8, 1953: 8, 1968: 8, 2001: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 + }], + CAR.CHEVROLET_VOLT_CC: [ + # FIXME: Need a message to distinguish flashed from non-flashed + # Volt Premier w/o acc 2016 + # { + # 170: 8, 171: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 199: 4, 201: 6, 209: 7, 211: 2, 241: 6, 288: 5, 289: 1, 290: 1, 298: 2, 304: 8, 308: 4, 309: 8, 311: 8, 313: 8, 320: 8, 328: 1, 352: 5, 368: 8, 381: 6, 384: 8, 386: 5, 388: 8, 389: 2, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 3, 508: 8, 512: 3, 528: 4, 530: 8, 532: 6, 537: 4, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 8, 563: 5, 564: 5, 565: 8, 566: 5, 567: 3, 568: 1, 577: 8, 578: 8, 594: 8, 647: 3, 707: 8, 711: 6, 717: 5, 761: 7, 800: 6, 810: 8, 821: 4, 823: 7, 832: 8, 840: 5, 842: 6, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1273: 3, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1602: 8, 1618: 8, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1922: 7, 1927: 7, 1928: 7, 1930: 7, 2016: 8, 2017: 8, 2018: 8, 2019: 8, 2020: 8, 2024: 8, 2025: 8, 2028: 8 + # }, + # { + # 201: 8, 493: 8, 495: 4, 193: 8, 197: 8, 209: 7, 171: 8, 456: 8, 199: 4, 489: 8, 211: 2, 499: 3, 390: 7, 532: 6, 568: 1, 761: 7, 381: 6, 485: 8, 189: 7, 479: 3, 711: 6, 501: 8, 241: 6, 717: 5, 869: 4, 389: 2, 454: 8, 170: 8, 190: 6, 497: 8, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 500: 6, 508: 8, 528: 4, 647: 3, 1105: 6, 1005: 6, 481: 7, 844: 8, 866: 4, 564: 5, 969: 8, 388: 8, 352: 5, 562: 8, 961: 8, 386: 8, 707: 8, 977: 8, 979: 7, 298: 8, 840: 5, 842: 5, 988: 6, 1001: 8, 560: 8, 546: 7, 558: 8, 309: 8, 995: 7, 311: 8, 566: 5, 567:3, 989: 8, 384: 4, 800: 6, 1033: 7, 1034: 7, 313: 8, 554: 3, 810: 8, 1017: 8, 1019: 2, 1020: 8, 1217: 8, 1223: 3, 1233: 8, 1227: 4, 1417: 8, 1009: 8, 1221: 5, 1275: 3, 1225: 7, 289: 8, 550: 8, 1273: 3, 1928: 7, 1187: 4, 1265: 8, 1927: 7, 1267: 1, 1906: 7, 288: 5, 304: 1, 328: 1, 1912: 7, 320: 3, 1910: 7, 563: 5, 1249: 8, 1930: 7, 1257: 6, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 565: 5, 1280: 4, 1907: 7 + # }, + # # Volt Premier w/o ACC 2018 + Pedal + # { + # 189: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 451: 8, 452: 8, 453: 6, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 497: 8, 500: 6, 501: 8, 513: 6, 528: 4, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 566: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1922: 7, 1930: 7 + # } + ], + CAR.BUICK_REGAL: [{ + 190: 8, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 8, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 8, 419: 8, 422: 4, 426: 8, 431: 8, 442: 8, 451: 8, 452: 8, 453: 8, 455: 7, 456: 8, 463: 3, 479: 8, 481: 7, 485: 8, 487: 8, 489: 8, 495: 8, 497: 8, 499: 3, 500: 8, 501: 8, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 578: 8, 579: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 882: 8, 884: 8, 890: 1, 892: 2, 893: 2, 894: 1, 961: 8, 967: 8, 969: 8, 977: 8, 979: 8, 985: 8, 1001: 8, 1005: 6, 1009: 8, 1011: 8, 1013: 3, 1017: 8, 1020: 8, 1024: 8, 1025: 8, 1026: 8, 1027: 8, 1028: 8, 1029: 8, 1030: 8, 1031: 8, 1032: 2, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 8, 1225: 7, 1233: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 8, 1263: 8, 1265: 8, 1267: 8, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1601: 8, 1602: 8, 1603: 7, 1611: 8, 1618: 8, 1906: 8, 1907: 7, 1912: 7, 1914: 7, 1916: 7, 1919: 7, 1930: 7, 2016: 8, 2018: 8, 2019: 8, 2024: 8, 2026: 8 + }], + CAR.CADILLAC_ATS: [{ + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 368: 3, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 462: 4, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 491: 2, 493: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 528: 5, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 719: 5, 723: 2, 753: 5, 761: 7, 801: 8, 804: 3, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 882: 8, 890: 1, 892: 2, 893: 2, 894: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1241: 3, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1904: 7, 1906: 7, 1907: 7, 1912: 7, 1916: 7, 1917: 7, 1918: 7, 1919: 7, 1920: 7, 1930: 7, 2016: 8, 2024: 8 + }], + CAR.CHEVROLET_MALIBU: [{ + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1930: 7, 2016: 8, 2024: 8 + }], + CAR.GMC_ACADIA: [{ + 190: 6, 192: 5, 193: 8, 197: 8, 199: 4, 201: 6, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 7, 368: 8, 381: 8, 384: 8, 386: 8, 388: 8, 393: 8, 398: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 458: 8, 460: 4, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 512: 3, 530: 8, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 568: 2, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 801: 8, 803: 8, 804: 3, 805: 8, 832: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1003: 5, 1005: 6, 1009: 8, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1918: 7, 1919: 7, 1920: 7, 1930: 7 + }, + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 313: 8, 320: 3, 322: 7, 328: 1, 338: 6, 340: 6, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1919: 7, 1920: 7, 1930: 7, 2016: 8, 2024: 8 + }], + CAR.CADILLAC_ESCALADE: [{ + 170: 8, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 4, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 460: 5, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 534: 2, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 719: 5, 761: 7, 801: 8, 804: 3, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1917: 7, 1918: 7, 1919: 7, 1920: 7, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 2001: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 + }], + CAR.CADILLAC_ESCALADE_ESV: [{ + 309: 1, 848: 8, 849: 8, 850: 8, 851: 8, 852: 8, 853: 8, 854: 3, 1056: 6, 1057: 8, 1058: 8, 1059: 8, 1060: 8, 1061: 8, 1062: 8, 1063: 8, 1064: 8, 1065: 8, 1066: 8, 1067: 8, 1068: 8, 1120: 8, 1121: 8, 1122: 8, 1123: 8, 1124: 8, 1125: 8, 1126: 8, 1127: 8, 1128: 8, 1129: 8, 1130: 8, 1131: 8, 1132: 8, 1133: 8, 1134: 8, 1135: 8, 1136: 8, 1137: 8, 1138: 8, 1139: 8, 1140: 8, 1141: 8, 1142: 8, 1143: 8, 1146: 8, 1147: 8, 1148: 8, 1149: 8, 1150: 8, 1151: 8, 1216: 8, 1217: 8, 1218: 8, 1219: 8, 1220: 8, 1221: 8, 1222: 8, 1223: 8, 1224: 8, 1225: 8, 1226: 8, 1232: 8, 1233: 8, 1234: 8, 1235: 8, 1236: 8, 1237: 8, 1238: 8, 1239: 8, 1240: 8, 1241: 8, 1242: 8, 1787: 8, 1788: 8 + }], + CAR.CADILLAC_ESCALADE_ESV_2019: [{ + 715: 8, 840: 5, 717: 5, 869: 4, 880: 6, 289: 8, 454: 8, 842: 5, 460: 5, 463: 3, 801: 8, 170: 8, 190: 6, 241: 6, 201: 8, 417: 7, 211: 2, 419: 1, 398: 8, 426: 7, 487: 8, 442: 8, 451: 8, 452: 8, 453: 6, 479: 3, 311: 8, 500: 6, 647: 6, 193: 8, 707: 8, 197: 8, 209: 7, 199: 4, 455: 7, 313: 8, 481: 7, 485: 8, 489: 8, 249: 8, 393: 7, 407: 7, 413: 8, 422: 4, 431: 8, 501: 8, 499: 3, 810: 8, 508: 8, 381: 8, 462: 4, 532: 6, 562: 8, 386: 8, 761: 7, 573: 1, 554: 3, 719: 5, 560: 8, 1279: 4, 388: 8, 288: 5, 1005: 6, 497: 8, 844: 8, 961: 8, 967: 4, 977: 8, 979: 8, 985: 5, 1001: 8, 1017: 8, 1019: 2, 1020: 8, 1217: 8, 510: 8, 866: 4, 304: 1, 969: 8, 384: 4, 1033: 7, 1009: 8, 1034: 7, 1296: 4, 1930: 7, 1105: 5, 1013: 5, 1225: 7, 1919: 7, 320: 3, 534: 2, 352: 5, 298: 8, 1223: 2, 1233: 8, 608: 8, 1265: 8, 609: 6, 1267: 1, 1417: 8, 610: 6, 1906: 7, 611: 6, 612: 8, 613: 8, 208: 8, 564: 5, 309: 8, 1221: 5, 1280: 4, 1249: 8, 1907: 7, 1257: 6, 1300: 8, 1920: 7, 563: 5, 1322: 6, 1323: 4, 1328: 4, 1917: 7, 328: 1, 1912: 7, 1914: 7, 804: 3, 1918: 7 + }], + CAR.CHEVROLET_BOLT_EUV: [{ + 189: 7, 190: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 3, 241: 6, 257: 8, 288: 5, 289: 8, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 451: 8, 452: 8, 453: 6, 458: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 528: 5, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 566: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 869: 4, 880: 6, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1280: 4, 1296: 4, 1300: 8, 1611: 8, 1930: 7 + }], + CAR.CHEVROLET_BOLT_CC: [ + # Bolt Premier w/o ACC 2017 + { + 170: 8, 188: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 201: 6, 209: 7, 211: 2, 241: 6, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 311: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 5, 353: 3, 368: 8, 381: 6, 384: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 512: 3, 514: 2, 516: 4, 519: 2, 521: 3, 528: 5, 530: 8, 532: 7, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 8, 566: 6, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 832: 8, 840: 6, 842: 6, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 + }, + # Bolt Premier no ACC 2018 + Pedal + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 6, 567: 5, 568: 1, 573: 1, 577: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1616: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7, 2020: 8, 2023: 8, 2028: 8, 2031: 8 + }, + # Bolt Premier no ACC 2019 + Pedal + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 512: 6, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1268: 2, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2024: 8 + }, + # Bolt Premier no ACC 2020 + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1268: 2, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2024: 8 + }, + # Bolt Premier no ACC 2020 2 + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 368: 3, 381: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7 + }, + # Bolt Premier no ACC 2020 w pedal + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 368: 3, 381: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 512: 6, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 2, 569: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 753: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7 + }, + # Bolt EV Premier 2017 + { + 170: 8, 188: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 201: 6, 209: 7, 211: 2, 241: 6, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 311: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 5, 353: 3, 368: 8, 381: 6, 384: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 512: 3, 514: 2, 516: 4, 519: 2, 521: 3, 528: 5, 530: 8, 532: 7, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 8, 566: 6, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 832: 8, 840: 6, 842: 6, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 + }, + # Bolt EV Premier 2017 w Pedal + { # pylint: disable=duplicate-key + 170: 8, 188: 8, 189: 7, 190: 6, 192: 5, 193: 8, 197: 8, 201: 6, 209: 7, 211: 2, 241: 6, 289: 1, 290: 1, 298: 8, 304: 8, 309: 8, 311: 8, 313: 8, 320: 8, 322: 7, 328: 1, 352: 5, 353: 3, 368: 8, 381: 6, 384: 8, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 5, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 512: 3, 512: 6, 513: 6, 514: 2, 516: 4, 519: 2, 521: 3, 528: 5, 530: 8, 532: 7, 537: 5, 539: 8, 542: 7, 546: 7, 550: 8, 554: 3, 558: 8, 560: 6, 562: 4, 563: 5, 564: 5, 565: 8, 566: 6, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 832: 8, 840: 6, 842: 6, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 5, 1003: 5, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1601: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1927: 7, 2016: 8, 2020: 8, 2024: 8, 2028: 8 # pylint: disable=duplicate-key # noqa: F601 + }, + # Bolt EV Premier 2017 2 w Pedal + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 6, 567: 5, 568: 1, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7 + }, + # Bolt EV Premier no ACC 2023 + { + 170: 8, 188: 8, 189: 7, 190: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 3, 241: 6, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 308: 4, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 398: 8, 407: 7, 417: 8, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 8, 567: 5, 568: 2, 569: 3, 573: 1, 577: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 711: 6, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 880: 6, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1010: 8, 1013: 6, 1015: 1, 1017: 8, 1019: 2, 1020: 8, 1037: 5, 1105: 5, 1187: 5, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1601: 8, 1616: 8, 1618: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7, 1930: 7, 2016: 8, 2020: 8, 2023: 8, 2024: 8, 2028: 8, 2031: 8 + }, + # Bolt EV Premier no ACC 2021 + { + 170: 8, 188: 8, 189: 7, 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 257: 8, 288: 5, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 407: 7, 417: 7, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 513: 6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 568: 1, 569: 3, 573: 1, 577: 8, 578: 8, 579: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 717: 5, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1037: 5, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1243: 3, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1346: 8, 1347: 8, 1513: 8, 1516: 8, 1601: 8, 1616: 8, 1904: 7, 1905: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1922: 7, 1927: 7, 2016: 8, 2017: 8, 2018: 8, 2020: 8, 2023: 8, 2024: 8, 2028: 8, 2031: 8 + }, + # shermy99's Bolt EV Premier no ACC 2023 + { + 170: 8, 188: 8, 189: 7, 190: 7, 193: 8, 197: 8, 201: 8, 209: 7, 211: 3, 241: 6, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 308: 4, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 398: 8, 407: 7, 417: 8, 419: 1, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 458: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 513:6, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 8, 567: 5, 568: 2, 569: 3, 573: 1, 577: 8, 579: 8, 592: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 711: 6, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 866: 4, 869: 4, 872: 1, 880: 6, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1010: 8, 1013: 6, 1015: 1, 1017: 8, 1019: 2, 1020: 8, 1037: 5, 1105: 5, 1187: 5, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1265: 8, 1275: 3, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1347: 8, 1513: 8, 1516: 8, 1601: 8, 1609: 8, 1613: 8, 1616: 8, 1618: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1913: 7, 1920: 8, 1922: 7, 1924: 8, 1927: 7, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2017: 8, 2018: 8, 2020: 8, 2023: 8, 2025: 8, 2028: 8, 2031: 8 + }], + CAR.CHEVROLET_SILVERADO: [{ + 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 528: 5, 532: 6, 534: 2, 560: 8, 562: 8, 563: 5, 565: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 761: 7, 789: 5, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1611: 8, 1930: 7 + }], + CAR.CHEVROLET_EQUINOX: [{ + 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1611: 8, 1930: 7 + }, + { + 190: 6, 201: 8, 211: 2, 717: 5, 241: 6, 451: 8, 298: 8, 452: 8, 453: 6, 479: 3, 485: 8, 249: 8, 500: 6, 587: 8, 1611: 8, 289: 8, 481: 7, 193: 8, 197: 8, 209: 7, 455: 7, 489: 8, 309: 8, 413: 8, 501: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 311: 8, 510: 8, 528: 5, 532: 6, 715: 8, 560: 8, 562: 8, 707: 8, 789: 5, 869: 4, 880: 6, 761: 7, 840: 5, 842: 5, 844: 8, 313: 8, 381: 8, 386: 8, 810: 8, 322: 7, 384: 4, 800: 6, 1033: 7, 1034: 7, 1296: 4, 753: 5, 388: 8, 288: 5, 497: 8, 463: 3, 304: 3, 977: 8, 1001: 8, 1280: 4, 320: 4, 352: 5, 563: 5, 565: 5, 1221: 5, 1011: 6, 1017: 8, 1020: 8, 1249: 8, 1300: 8, 328: 1, 1217: 8, 1233: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1930: 7, 1271: 8 + }], + CAR.CHEVROLET_EQUINOX_CC: [ + # lem's 2020 Equinox, LKAS no ACC + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 401: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 444: 7, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 753: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1273: 3, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1601: 8, 1611: 8, 1618: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 7, 1930: 7 + }], + # Trailblazer also matches as a Silverado, so comment out to avoid conflicts. + # TODO: split with FW versions + # CAR.TRAILBLAZER: [ + # { + # 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 587: 8, 707: 8, 715: 8, 717: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1609: 8, 1611: 8, 1613: 8, 1649: 8, 1792: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 2001: 8, 2017: 8, 2018: 8, 2020: 8 + # }], + CAR.CHEVROLET_SUBURBAN: [ + # Chevy Suburban Premier 2019 w Stock ACC no camera + { + 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8 + }, + # Chevy Suburban Premier 2019 w Stock ACC (72 ver) + { + 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1355: 8 + }, + # Chevy Suburban Premier 2019 w Stock ACC (70 ver) + { + 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8 + }], + CAR.CHEVROLET_SUBURBAN_CC: [ + # Slav's 2018 Suburban, LKAS no ACC + { + 170: 8, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 393: 8, 398: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 493: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 562: 8, 563: 5, 564: 5, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1223: 2, 1225: 8, 1233: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 7 + }], + CAR.GMC_YUKON_CC: [ + # greeninja's 2017 Yukon + { + 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 497: 8, 500: 6, 501: 8, 510: 8, 532: 6, 562: 8, 563: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 717: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8 + }], + CAR.CADILLAC_CT6_CC: [ + # badgers4life's 2017 CT6 + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 322: 4, 328: 1, 352: 5, 381: 6, 384: 4, 386: 8, 388: 8, 389: 2, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 456: 8, 460: 5, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 4, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 3, 573: 1, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 723: 2, 753: 5, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 977: 8, 979: 7, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 1, 1017: 8, 1019: 2, 1020: 8, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 7, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 4, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1914: 7, 1919: 7, 1920: 8, 1924: 8, 1927: 8, 1928: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2004: 8, 2017: 8, 2018: 8, 2020: 8, 2026: 8 + }], + CAR.CHEVROLET_TRAILBLAZER_CC: [ + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 723: 4, 730: 4, 761: 7, 800: 6, 840: 5, 842: 5, 844: 8, 869: 4, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 6, 1017: 8, 1020: 8, 1037: 5, 1105: 5, 1187: 5, 1195: 3, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1276: 2, 1277: 7, 1278: 4, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7 + }], + CAR.CHEVROLET_MALIBU_CC: [ + # Verylukyguy's Malibu + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 328: 1, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 409: 8, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 717: 5, 730: 4, 761: 7, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 6, 1017: 8, 1020: 8, 1037: 5, 1105: 5, 1187: 6, 1189: 1, 1195: 3, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1279: 4, 1280: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1417: 8, 1601: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7 + }], + CAR.CADILLAC_XT5_CC: [ + # TRain's 2017 XT5 + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 1, 309: 8, 313: 8, 320: 3, 322: 7, 328: 1, 352: 5, 353: 3, 381: 6, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 487: 8, 489: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 503: 1, 508: 8, 510: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 647: 3, 707: 8, 717: 5, 723: 2, 753: 5, 761: 7, 800: 6, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 961: 8, 967: 4, 969: 8, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 3, 1017: 8, 1019: 2, 1020: 8, 1022: 1, 1105: 6, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1243: 3, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1322: 6, 1328: 4, 1417: 8, 1904: 7, 1906: 7, 1907: 7, 1912: 7, 1913: 7, 1914: 7, 1919: 7, 1920: 7 + }], + CAR.CADILLAC_XT4: [ + # Cadillac XT4 w/ ACC 2023 + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 719: 5, 761: 7, 806: 1, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 872: 1, 880: 6, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 5, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1037: 5, 1105: 5, 1187: 5, 1195: 3, 1217: 8, 1221: 5, 1223: 2, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1276: 2, 1277: 7, 1278: 4, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1417: 8, 1512: 8, 1517: 8, 1601: 8, 1609: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1858: 8, 1860: 8, 1863: 8, 1872: 8, 1875: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 8, 1924: 8, 1930: 7, 1937: 8, 1953: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1984: 8, 1988: 8, 2000: 8, 2001: 8, 2002: 8, 2016: 8, 2017: 8, 2018: 8, 2020: 8, 2021: 8, 2024: 8, 2026: 8 + }], + CAR.CHEVROLET_VOLT_2019: [ + { + 170: 8, 189: 7, 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 209: 7, 211: 2, 241: 6, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 1, 308: 4, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 331: 3, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 390: 7, 417: 7, 419: 1, 426: 7, 451: 8, 452: 8, 453: 6, 454: 8, 456: 8, 479: 3, 481: 7, 485: 8, 489: 8, 493: 8, 495: 4, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 528: 5, 532: 6, 546: 7, 550: 8, 554: 3, 558: 8, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 566: 7, 567: 5, 573: 1, 577: 8, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 3, 707: 8, 711: 6, 715: 8, 717: 5, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 967: 4, 969: 8, 975: 2, 977: 8, 979: 7, 988: 6, 989: 8, 995: 7, 1001: 8, 1005: 6, 1009: 8, 1017: 8, 1019: 2, 1020: 8, 1033: 7, 1034: 7, 1105: 5, 1187: 4, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1227: 4, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1265: 8, 1267: 1, 1268: 2, 1273: 3, 1275: 3, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1328: 4, 1345: 8, 1417: 8, 1512: 8, 1513: 8, 1516: 8, 1517: 8, 1601: 8, 1609: 8, 1611: 8, 1618: 8, 1613: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1871: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1905: 7, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1920: 8, 1922: 7, 1927: 7, 1930: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1988: 8, 1990: 8, 2000: 8, 2001: 8, 2004: 8, 2017: 8, 2018: 8, 2020: 8, 2021: 8, 2023: 8, 2025: 8, 2028: 8, 2031: 8 + }], + CAR.CHEVROLET_TRAVERSE: [ + # Chevy Traverse w/ ACC 2023 + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 393: 7, 398: 8, 401: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 508: 8, 510: 8, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 567: 5, 573: 1, 577: 8, 578: 8, 579: 8, 587: 8, 603: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 723: 4, 730: 4, 753: 5, 761: 7, 840: 5, 842: 5, 844: 8, 866: 4, 869: 4, 880: 6, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 5, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1105: 5, 1217: 8, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1346: 8, 1347: 8, 1355: 8, 1362: 8, 1417: 8, 1512: 8, 1514: 8, 1601: 8, 1602: 8, 1603: 7, 1609: 8, 1611: 8, 1613: 8, 1618: 8, 1649: 8, 1792: 8, 1793: 8, 1798: 8, 1799: 8, 1810: 8, 1813: 8, 1824: 8, 1825: 8, 1840: 8, 1842: 8, 1856: 8, 1858: 8, 1859: 8, 1860: 8, 1862: 8, 1863: 8, 1871: 8, 1872: 8, 1875: 8, 1879: 8, 1882: 8, 1888: 8, 1889: 8, 1892: 8, 1906: 7, 1907: 7, 1912: 7, 1919: 7, 1920: 7, 1927: 8, 1930: 7, 1937: 8, 1953: 8, 1954: 8, 1955: 8, 1968: 8, 1969: 8, 1971: 8, 1975: 8, 1988: 8, 1990: 8, 2000: 8, 2001: 8, 2004: 8, 2016: 8, 2017: 8, 2018: 8, 2019: 8, 2020: 8, 2024: 8, 2026: 8 + }], + CAR.BUICK_BABYENCLAVE: [ + # Buick Baby Enclave w/ ACC 2020-23 + { + 190: 6, 193: 8, 197: 8, 199: 4, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 257: 8, 288: 5, 289: 8, 292: 2, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 331: 3, 352: 5, 353: 3, 368: 3, 381: 8, 384: 4, 386: 8, 388: 8, 394: 7, 398: 8, 401: 8, 405: 8, 407: 7, 413: 8, 417: 7, 419: 1, 422: 4, 426: 7, 431: 8, 442: 8, 450: 4, 451: 8, 452: 8, 453: 6, 454: 8, 455: 7, 456: 8, 457: 6, 462: 4, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 499: 3, 500: 6, 501: 8, 503: 2, 508: 8, 528: 5, 532: 6, 554: 3, 560: 8, 562: 8, 563: 5, 564: 5, 565: 5, 567: 5, 569: 3, 573: 1, 577: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 647: 6, 707: 8, 715: 8, 717: 5, 723: 4, 730: 4, 761: 7, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 872: 1, 880: 6, 882: 8, 890: 1, 892: 2, 893: 2, 894: 1, 961: 8, 969: 8, 975: 2, 977: 8, 979: 8, 985: 5, 1001: 8, 1005: 6, 1009: 8, 1011: 6, 1013: 6, 1017: 8, 1020: 8, 1033: 7, 1034: 7, 1037: 5, 1105: 5, 1187: 5, 1195: 3, 1201: 3, 1217: 8, 1218: 3, 1221: 5, 1223: 3, 1225: 7, 1233: 8, 1236: 8, 1249: 8, 1257: 6, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1268: 2, 1271: 8, 1273: 3, 1276: 2, 1277: 7, 1278: 4, 1279: 4, 1280: 4, 1296: 4, 1300: 8, 1322: 6, 1323: 4, 1328: 4, 1345: 8, 1417: 8, 1512: 8, 1514: 8, 1517: 8, 1601: 8, 1906: 7, 1907: 7, 1910: 7, 1912: 7, 1914: 7, 1916: 7, 1919: 7, 1927: 7, 1930: 7, 2018: 8, 2020: 8, 2021: 8, 2028: 8 + }], + CAR.CHEVROLET_TRAX: [ + { + 190: 6, 193: 8, 197: 8, 201: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 298: 8, 304: 3, 309: 8, 311: 8, 313: 8, 320: 4, 322: 7, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 532: 6, 560: 8, 562: 8, 563: 5, 565: 5, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 715: 8, 717: 5, 761: 7, 789: 5, 800: 6, 810: 8, 840: 5, 842: 5, 844: 8, 869: 4, 880: 6, 977: 8, 1001: 8, 1011: 6, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1259: 8, 1261: 7, 1263: 4, 1265: 8, 1267: 1, 1271: 8, 1280: 4, 1296: 4, 1300: 8, 1930: 7 + }], + CAR.GMC_YUKON: [{ + 190: 6, 193: 8, 197: 8, 201: 8, 208: 8, 209: 7, 211: 2, 241: 6, 249: 8, 288: 5, 289: 8, 298: 8, 304: 1, 309: 8, 311: 8, 313: 8, 320: 3, 328: 1, 352: 5, 381: 8, 384: 4, 386: 8, 388: 8, 413: 8, 451: 8, 452: 8, 453: 6, 455: 7, 460: 5, 463: 3, 479: 3, 481: 7, 485: 8, 489: 8, 497: 8, 500: 6, 501: 8, 510: 8, 528: 5, 532: 6, 534: 2, 562: 8, 563: 5, 587: 8, 608: 8, 609: 6, 610: 6, 611: 6, 612: 8, 613: 8, 707: 8, 761: 7, 800: 6, 801: 8, 810: 8, 840: 5, 842: 5, 844: 8, 848: 4, 977: 8, 1001: 8, 1017: 8, 1020: 8, 1217: 8, 1221: 5, 1233: 8, 1249: 8, 1265: 8, 1267: 1, 1280: 4, 1300: 8, 1355: 8, 1611: 8 + }], +} + +FW_VERSIONS: dict[str, dict[tuple, list[bytes]]] = { +} diff --git a/opendbc_repo/opendbc/car/gm/gmcan.py b/opendbc_repo/opendbc/car/gm/gmcan.py new file mode 100644 index 0000000000..53f67fb485 --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/gmcan.py @@ -0,0 +1,239 @@ +from opendbc.car import DT_CTRL +from opendbc.car.can_definitions import CanData +from opendbc.car.gm.values import CAR, CruiseButtons, CanBus +from opendbc.car.common.conversions import Conversions as CV + +# GM: AutoResume: brake signal to CAN +def create_brake_command(packer, bus, apply_brake, idx): + mode = 0xA if apply_brake > 0 else 0x1 + brake = (0x1000 - apply_brake) & 0xFFF + checksum = (0x10000 - (mode << 12) - brake - idx) & 0xFFFF + + values = { + "RollingCounter": idx, + "FrictionBrakeMode": mode, + "FrictionBrakeChecksum": checksum, + "FrictionBrakeCmd": -apply_brake + } + + return packer.make_can_msg("EBCMFrictionBrakeCmd", bus, values) + +def create_buttons(packer, bus, idx, button): + values = { + "ACCButtons": button, + "RollingCounter": idx, + "ACCAlwaysOne": 1, + "DistanceButton": 0, + } + + checksum = 240 + int(values["ACCAlwaysOne"] * 0xf) + checksum += values["RollingCounter"] * (0x4ef if values["ACCAlwaysOne"] != 0 else 0x3f0) + checksum -= int(values["ACCButtons"] - 1) << 4 # not correct if value is 0 + checksum -= 2 * values["DistanceButton"] + + values["SteeringButtonChecksum"] = checksum + return packer.make_can_msg("ASCMSteeringButton", bus, values) + + +def create_pscm_status(packer, bus, pscm_status): + values = {s: pscm_status[s] for s in [ + "HandsOffSWDetectionMode", + "HandsOffSWlDetectionStatus", + "LKATorqueDeliveredStatus", + "LKADriverAppldTrq", + "LKATorqueDelivered", + "LKATotalTorqueDelivered", + "RollingCounter", + "PSCMStatusChecksum", + ]} + checksum_mod = int(1 - values["HandsOffSWlDetectionStatus"]) << 5 + values["HandsOffSWlDetectionStatus"] = 1 + values["PSCMStatusChecksum"] += checksum_mod + return packer.make_can_msg("PSCMStatus", bus, values) + + +def create_steering_control(packer, bus, apply_torque, idx, lkas_active): + values = { + "LKASteeringCmdActive": lkas_active, + "LKASteeringCmd": apply_torque, + "RollingCounter": idx, + "LKASteeringCmdChecksum": 0x1000 - (lkas_active << 11) - (apply_torque & 0x7ff) - idx + } + + return packer.make_can_msg("ASCMLKASteeringCmd", bus, values) + + +def create_adas_keepalive(bus): + dat = b"\x00\x00\x00\x00\x00\x00\x00" + return [CanData(0x409, dat, bus), CanData(0x40a, dat, bus)] + + +def create_gas_regen_command(packer, bus, throttle, idx, enabled, at_full_stop): + values = { + "GasRegenCmdActive": enabled, + "RollingCounter": idx, + "GasRegenCmd": throttle, + "GasRegenFullStopActive": at_full_stop, + "GasRegenAccType": 1, + } + + dat = packer.make_can_msg("ASCMGasRegenCmd", bus, values)[1] + values["GasRegenChecksum"] = ((1 - enabled) << 24) | \ + (((0xff - dat[1]) & 0xff) << 16) | \ + (((0xff - dat[2]) & 0xff) << 8) | \ + ((0x100 - dat[3] - idx) & 0xff) + + return packer.make_can_msg("ASCMGasRegenCmd", bus, values) + + +def create_friction_brake_command(packer, bus, apply_brake, idx, enabled, near_stop, at_full_stop, CP): + mode = 0x1 + + # TODO: Understand this better. Volts and ICE Camera ACC cars are 0x1 when enabled with no brake + if enabled and CP.carFingerprint in (CAR.CHEVROLET_BOLT_EUV,): + mode = 0x9 + + if apply_brake > 0: + mode = 0xa + if at_full_stop: + mode = 0xd + + # TODO: this is to have GM bringing the car to complete stop, + # but currently it conflicts with OP controls, so turned off. Not set by all cars + #elif near_stop: + # mode = 0xb + + apply_brake = max(0, min(0xFFF, apply_brake)) + brake = (0x1000 - apply_brake) & 0xfff + checksum = (0x10000 - (mode << 12) - brake - idx) & 0xffff + + values = { + "RollingCounter": idx, + "FrictionBrakeMode": mode, + "FrictionBrakeChecksum": checksum, + "FrictionBrakeCmd": (0x1000 - apply_brake) & 0xfff, + } + + return packer.make_can_msg("EBCMFrictionBrakeCmd", bus, values) + + +def create_acc_dashboard_command(packer, bus, enabled, target_speed_kph, hud_control, fcw): + target_speed = min(target_speed_kph, 255) + + values = { + "ACCAlwaysOne": 1, + "ACCResumeButton": 0, + "ACCSpeedSetpoint": target_speed, + "ACCGapLevel": hud_control.leadDistanceBars * enabled, # 3 "far", 0 "inactive" + "ACCCmdActive": enabled, + "ACCAlwaysOne2": 1, + "ACCLeadCar": hud_control.leadVisible, + "FCWAlert": 0x3 if fcw else 0 + } + + return packer.make_can_msg("ASCMActiveCruiseControlStatus", bus, values) + + +def create_adas_time_status(bus, tt, idx): + dat = [(tt >> 20) & 0xff, (tt >> 12) & 0xff, (tt >> 4) & 0xff, + ((tt & 0xf) << 4) + (idx << 2)] + chksum = 0x1000 - dat[0] - dat[1] - dat[2] - dat[3] + chksum = chksum & 0xfff + dat += [0x40 + (chksum >> 8), chksum & 0xff, 0x12] + return CanData(0xa1, bytes(dat), bus) + + +def create_adas_steering_status(bus, idx): + dat = [idx << 6, 0xf0, 0x20, 0, 0, 0] + chksum = 0x60 + sum(dat) + dat += [chksum >> 8, chksum & 0xff] + return CanData(0x306, bytes(dat), bus) + + +def create_adas_accelerometer_speed_status(bus, speed_ms, idx): + spd = int(speed_ms * 16) & 0xfff + accel = 0 & 0xfff + # 0 if in park/neutral, 0x10 if in reverse, 0x08 for D/L + #stick = 0x08 + near_range_cutoff = 0x27 + near_range_mode = 1 if spd <= near_range_cutoff else 0 + far_range_mode = 1 - near_range_mode + dat = [0x08, spd >> 4, ((spd & 0xf) << 4) | (accel >> 8), accel & 0xff, 0] + chksum = 0x62 + far_range_mode + (idx << 2) + dat[0] + dat[1] + dat[2] + dat[3] + dat[4] + dat += [(idx << 5) + (far_range_mode << 4) + (near_range_mode << 3) + (chksum >> 8), chksum & 0xff] + return CanData(0x308, bytes(dat), bus) + + +def create_adas_headlights_status(packer, bus): + values = { + "Always42": 0x42, + "Always4": 0x4, + } + return packer.make_can_msg("ASCMHeadlight", bus, values) + + +def create_lka_icon_command(bus, active, critical, steer): + if active and steer == 1: + if critical: + dat = b"\x50\xc0\x14" + else: + dat = b"\x50\x40\x18" + elif active: + if critical: + dat = b"\x40\xc0\x14" + else: + dat = b"\x40\x40\x18" + else: + dat = b"\x00\x00\x00" + return CanData(0x104c006c, dat, bus) + +def create_regen_paddle_command(packer, bus): + values = { + "RegenPaddle": 0x20, #이 값은 패들의 강도일 가능성이 있음. + } + return packer.make_can_msg("EBCMRegenPaddle", bus, values) + +def create_gm_cc_spam_command(packer, controller, CS, actuators): + if controller.params_.get_bool("IsMetric"): + _CV = CV.MS_TO_KPH + RATE_UP_MAX = 0.04 + RATE_DOWN_MAX = 0.04 + else: + _CV = CV.MS_TO_MPH + RATE_UP_MAX = 0.2 + RATE_DOWN_MAX = 0.2 + + accel = actuators.accel * _CV # m/s/s to mph/s + speedSetPoint = int(round(CS.out.cruiseState.speed * _CV)) + + cruiseBtn = CruiseButtons.INIT + if speedSetPoint == CS.CP.minEnableSpeed and accel < -1: + cruiseBtn = CruiseButtons.CANCEL + controller.apply_speed = 0 + rate = 0.04 + elif accel < 0: + cruiseBtn = CruiseButtons.DECEL_SET + if speedSetPoint > (CS.out.vEgo * _CV) + 3.0: # If accel is changing directions, bring set speed to current speed as fast as possible + rate = RATE_DOWN_MAX + else: + rate = max(-1 / accel, RATE_DOWN_MAX) + controller.apply_speed = speedSetPoint - 1 + elif accel > 0: + cruiseBtn = CruiseButtons.RES_ACCEL + if speedSetPoint < (CS.out.vEgo * _CV) - 3.0: + rate = RATE_UP_MAX + else: + rate = max(1 / accel, RATE_UP_MAX) + controller.apply_speed = speedSetPoint + 1 + else: + controller.apply_speed = speedSetPoint + rate = float('inf') + + # Check rlogs closely - our message shouldn't show up on the pt bus for us + # Or bus 2, since we're forwarding... but I think it does + if (cruiseBtn != CruiseButtons.INIT) and ((controller.frame - controller.last_button_frame) * DT_CTRL > rate): + controller.last_button_frame = controller.frame + idx = (CS.buttons_counter + 1) % 4 # Need to predict the next idx for '22-23 EUV + return [create_buttons(packer, CanBus.POWERTRAIN, idx, cruiseBtn)] + else: + return [] diff --git a/opendbc_repo/opendbc/car/gm/interface.py b/opendbc_repo/opendbc/car/gm/interface.py new file mode 100644 index 0000000000..367a04367a --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/interface.py @@ -0,0 +1,399 @@ +#!/usr/bin/env python3 +import json +import os +from cereal import car +from math import fabs, exp +from openpilot.common.params import Params +from opendbc.car import get_safety_config, get_friction, structs +from opendbc.car.common.basedir import BASEDIR +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.gm.carcontroller import CarController +from opendbc.car.gm.carstate import CarState +from opendbc.car.gm.radar_interface import RadarInterface, RADAR_HEADER_MSG +from opendbc.car.gm.values import CAR, CarControllerParams, EV_CAR, CAMERA_ACC_CAR, CanBus, GMFlags, CC_ONLY_CAR, SDGM_CAR, CruiseButtons, GMSafetyFlags, ALT_ACCS +from opendbc.car.interfaces import CarInterfaceBase, TorqueFromLateralAccelCallbackType, FRICTION_THRESHOLD, LatControlInputs, NanoFFModel + +#ButtonType = structs.CarState.ButtonEvent.Type 이 두 줄도 사용되지 않습니다. +#GearShifter = structs.CarState.GearShifter +TransmissionType = structs.CarParams.TransmissionType +NetworkLocation = structs.CarParams.NetworkLocation + +CAM_MSG = 0x320 # AEBCmd + # TODO: Is this always linked to camera presence? +ACCELERATOR_POS_MSG = 0xbe + +NON_LINEAR_TORQUE_PARAMS = { + CAR.CHEVROLET_BOLT_EUV: [2.6531724862969748, 1.0, 0.1919764879840985, 0.009054123646805178], + # CAR.CHEVROLET_BOLT_CC: [2.6531724862969748, 1.0, 0.1919764879840985, 0.009054123646805178], + CAR.CHEVROLET_BOLT_CC: [1.8, 1.1, 0.3, -0.045], + CAR.GMC_ACADIA: [4.78003305, 1.0, 0.3122, 0.05591772], + CAR.CHEVROLET_SILVERADO: [3.29974374, 1.0, 0.25571356, 0.0465122] +} + +NEURAL_PARAMS_PATH = os.path.join(BASEDIR, 'torque_data/neural_ff_weights.json') + +PEDAL_MSG = 0x201 + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def get_pid_accel_limits(CP, current_speed, cruise_speed): + return CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX + + # Determined by iteratively plotting and minimizing error for f(angle, speed) = steer. + @staticmethod + def get_steer_feedforward_volt(desired_angle, v_ego): + desired_angle *= 0.02904609 + sigmoid = desired_angle / (1 + fabs(desired_angle)) + return 0.10006696 * sigmoid * (v_ego + 3.12485927) + + def get_steer_feedforward_function(self): + if self.CP.carFingerprint in (CAR.CHEVROLET_VOLT, CAR.CHEVROLET_VOLT_CC): + return self.get_steer_feedforward_volt + else: + return CarInterfaceBase.get_steer_feedforward_default + + def torque_from_lateral_accel_siglin(self, latcontrol_inputs: LatControlInputs, torque_params: structs.CarParams.LateralTorqueTuning, + lateral_accel_error: float, lateral_accel_deadzone: float, friction_compensation: bool, gravity_adjusted: bool) -> float: + friction = get_friction(lateral_accel_error, lateral_accel_deadzone, FRICTION_THRESHOLD, torque_params, friction_compensation) + + def sig(val): + # https://timvieira.github.io/blog/post/2014/02/11/exp-normalize-trick + if val >= 0: + return 1 / (1 + exp(-val)) - 0.5 + else: + z = exp(val) + return z / (1 + z) - 0.5 + + # The "lat_accel vs torque" relationship is assumed to be the sum of "sigmoid + linear" curves + # An important thing to consider is that the slope at 0 should be > 0 (ideally >1) + # This has big effect on the stability about 0 (noise when going straight) + # ToDo: To generalize to other GMs, explore tanh function as the nonlinear + non_linear_torque_params = NON_LINEAR_TORQUE_PARAMS.get(self.CP.carFingerprint) + assert non_linear_torque_params, "The params are not defined" + a, b, c, _ = non_linear_torque_params + steer_torque = (sig(latcontrol_inputs.lateral_acceleration * a) * b) + (latcontrol_inputs.lateral_acceleration * c) + return float(steer_torque) + friction + + def torque_from_lateral_accel_neural(self, latcontrol_inputs: LatControlInputs, torque_params: structs.CarParams.LateralTorqueTuning, + lateral_accel_error: float, lateral_accel_deadzone: float, friction_compensation: bool, gravity_adjusted: bool) -> float: + friction = get_friction(lateral_accel_error, lateral_accel_deadzone, FRICTION_THRESHOLD, torque_params, friction_compensation) + inputs = list(latcontrol_inputs) + if gravity_adjusted: + inputs[0] += inputs[1] + return float(self.neural_ff_model.predict(inputs)) + friction + + def torque_from_lateral_accel(self) -> TorqueFromLateralAccelCallbackType: + with open(NEURAL_PARAMS_PATH) as f: + neural_ff_cars = json.load(f).keys() + if self.CP.carFingerprint in neural_ff_cars: + self.neural_ff_model = NanoFFModel(NEURAL_PARAMS_PATH, self.CP.carFingerprint) + return self.torque_from_lateral_accel_neural + elif self.CP.carFingerprint in NON_LINEAR_TORQUE_PARAMS: + return self.torque_from_lateral_accel_siglin + else: + return self.torque_from_lateral_accel_linear + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "gm" + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.gm)] + ret.autoResumeSng = False + ret.enableBsm = 0x142 in fingerprint[CanBus.POWERTRAIN] or 0x142 in fingerprint[CanBus.CAMERA] + ret.startAccel = 1.0 + ret.radarTimeStep = 0.067 + ret.alternativeExperience = 0 + + useEVTables = Params().get_bool("EVTable") + + if PEDAL_MSG in fingerprint[0]: + ret.enableGasInterceptorDEPRECATED = True + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.GAS_INTERCEPTOR.value + + if candidate in EV_CAR: + ret.transmissionType = TransmissionType.direct + else: + ret.transmissionType = TransmissionType.automatic + + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kiBP = [0.] + + if candidate in (CAMERA_ACC_CAR | SDGM_CAR): + ret.alphaLongitudinalAvailable = candidate not in SDGM_CAR + ret.networkLocation = NetworkLocation.fwdCamera + ret.radarUnavailable = True # no radar + ret.pcmCruise = True + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM.value + ret.minEnableSpeed = -1 * CV.KPH_TO_MS + ret.minSteerSpeed = 10 * CV.KPH_TO_MS + + # Tuning for experimental long + ret.longitudinalTuning.kiV = [1.7] + ret.stoppingDecelRate = 2.0 # reach brake quickly after enabling + ret.vEgoStopping = 0.5 + ret.vEgoStarting = 0.4 + ret.stopAccel = -0.4 + ret.startingState = True + ret.startAccel = 1.0 + + if alpha_long: + ret.pcmCruise = False + ret.openpilotLongitudinalControl = True + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM_LONG.value + + if candidate in ALT_ACCS: + ret.alphaLongitudinalAvailable = False + ret.openpilotLongitudinalControl = False + ret.minEnableSpeed = -1. # engage speed is decided by PCM + + else: # ASCM, OBD-II harness + ret.openpilotLongitudinalControl = True + ret.networkLocation = NetworkLocation.gateway + ret.radarUnavailable = False # kans + ret.pcmCruise = False # stock non-adaptive cruise control is kept off + # supports stop and go, but initial engage must (conservatively) be above 18mph + ret.minEnableSpeed = -1 * CV.MPH_TO_MS + ret.minSteerSpeed = (6.7 if useEVTables else 7) * CV.MPH_TO_MS + + # Tuning + ret.longitudinalTuning.kpV = [1.0] + ret.longitudinalTuning.kiV = [0.3] + + if ret.enableGasInterceptorDEPRECATED: + # Need to set ASCM long limits when using pedal interceptor, instead of camera ACC long limits + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_ASCM_LONG.value + + # These cars have been put into dashcam only due to both a lack of users and test coverage. + # These cars likely still work fine. Once a user confirms each car works and a test route is + # added to opendbc/car/tests/routes.py, we can remove it from this list. + # ret.dashcamOnly = candidate in {CAR.CADILLAC_ATS, CAR.HOLDEN_ASTRA, CAR.CHEVROLET_MALIBU, CAR.BUICK_REGAL} or \ + # (ret.networkLocation == NetworkLocation.gateway and ret.radarUnavailable) + + # Start with a baseline tuning for all GM vehicles. Override tuning as needed in each model section below. + ret.steerActuatorDelay = 0.28 # Default delay, not measured yet + + ret.steerLimitTimer = 0.4 + ret.longitudinalActuatorDelay = Params().get_float("LongActuatorDelay")*0.01 # 0.5 # large delay to initially start braking + + if candidate == CAR.CHEVROLET_VOLT: + ret.steerActuatorDelay = 0.45 if useEVTables else 0.3 + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [1.0] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [.35] + ret.longitudinalTuning.kf = 1.0 + ret.stoppingDecelRate = 0.2 # brake_travel/s while trying to stop + ret.vEgoStopping = 0.25 + ret.vEgoStarting = 0.15 + ret.stopAccel = -0.5 + ret.startingState = True + ret.startAccel = 1.9 + + # softer long tune for ev table + if useEVTables: + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [1.0] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [.35] + ret.longitudinalTuning.kf = 1.0 + ret.stoppingDecelRate = 1.0 # brake_travel/s while trying to stop + ret.stopAccel = -0.5 + ret.startAccel = 0.6 + + useTorque = Params().get_bool("LateralTorqueCustom") + if useTorque: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + else: + ret.lateralTuning.pid.kpBP = [0., 40.] + ret.lateralTuning.pid.kpV = [0., 0.17] + ret.lateralTuning.pid.kiBP = [0.] + ret.lateralTuning.pid.kiV = [0.] + ret.lateralTuning.pid.kf = 1. + + elif candidate == CAR.CADILLAC_CT6_ACC: + ret.steerActuatorDelay = 0.3 + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [1.0] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [.3] + ret.longitudinalTuning.kf = 1.0 + ret.stoppingDecelRate = 0.2 # brake_travel/s while trying to stop + ret.stopAccel = -0.5 + ret.startingState = True + ret.startAccel = 1.5 + + useTorque = Params().get_bool("LateralTorqueCustom") + if useTorque: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + else: + ret.lateralTuning.pid.kpBP = [0., 40.] + ret.lateralTuning.pid.kpV = [0., 0.17] + ret.lateralTuning.pid.kiBP = [0.] + ret.lateralTuning.pid.kiV = [0.] + ret.lateralTuning.pid.kf = 1. + + elif candidate == CAR.GMC_ACADIA: + ret.minEnableSpeed = -1. # engage speed is decided by pcm + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate in (CAR.CHEVROLET_MALIBU, CAR.CHEVROLET_MALIBU_CC): + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.BUICK_LACROSSE: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CADILLAC_ESCALADE: + ret.minEnableSpeed = -1. # engage speed is decided by pcm + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate in (CAR.CADILLAC_ESCALADE_ESV, CAR.CADILLAC_ESCALADE_ESV_2019): + ret.minEnableSpeed = -1. # engage speed is decided by pcm + + if candidate == CAR.CADILLAC_ESCALADE_ESV: + ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[10., 41.0], [10., 41.0]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.13, 0.24], [0.01, 0.02]] + ret.lateralTuning.pid.kf = 0.000045 + else: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate in (CAR.CHEVROLET_BOLT_EUV, CAR.CHEVROLET_BOLT_CC): + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + if ret.enableGasInterceptorDEPRECATED: + # ACC Bolts use pedal for full longitudinal control, not just sng + ret.flags |= GMFlags.PEDAL_LONG.value + + elif candidate == CAR.CHEVROLET_SILVERADO: + # On the Bolt, the ECM and camera independently check that you are either above 5 kph or at a stop + # with foot on brake to allow engagement, but this platform only has that check in the camera. + # TODO: check if this is split by EV/ICE with more platforms in the future + if ret.openpilotLongitudinalControl: + ret.minEnableSpeed = -1. + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate in (CAR.CHEVROLET_EQUINOX, CAR.CHEVROLET_EQUINOX_CC): + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate in (CAR.CHEVROLET_TRAILBLAZER, CAR.CHEVROLET_TRAILBLAZER_CC): + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate in (CAR.CHEVROLET_SUBURBAN, CAR.CHEVROLET_SUBURBAN_CC): + ret.steerActuatorDelay = 0.075 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.GMC_YUKON_CC: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CADILLAC_XT4: + ret.steerActuatorDelay = 0.2 + ret.minEnableSpeed = -1. # engage speed is decided by pcm + ret.minSteerSpeed = 30 * CV.MPH_TO_MS + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + elif candidate == CAR.CHEVROLET_VOLT_2019: + ret.steerActuatorDelay = 0.2 + ret.minEnableSpeed = -1. # engage speed is decided by pcm + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CADILLAC_XT5_CC: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CHEVROLET_TRAVERSE: + ret.steerActuatorDelay = 0.2 + ret.minEnableSpeed = -1. # engage speed is decided by pcm + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.BUICK_BABYENCLAVE: + ret.steerActuatorDelay = 0.2 + ret.minEnableSpeed = -1. # engage speed is decided by pcm + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CADILLAC_CT6_CC: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CHEVROLET_MALIBU_CC: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.CHEVROLET_TRAX: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + ret.stoppingDecelRate = 0.3 + ret.minEnableSpeed = -1. + ret.stopAccel = -0.5 + ret.startingState = True + ret.startAccel = 1.0 + elif candidate == CAR.CHEVROLET_TRAVERSE: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + elif candidate == CAR.GMC_YUKON: + ret.steerActuatorDelay = 0.5 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + ret.dashcamOnly = True # Needs steerRatio, tireStiffness, and lat accel factor tuning + + if ret.enableGasInterceptorDEPRECATED: + ret.networkLocation = NetworkLocation.fwdCamera + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM.value + ret.minEnableSpeed = -1 + ret.pcmCruise = False + ret.openpilotLongitudinalControl = True + ret.autoResumeSng = True + + if candidate in CC_ONLY_CAR: + ret.flags |= GMFlags.PEDAL_LONG.value + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.PEDAL_LONG.value + # Note: Low speed, stop and go not tested. Should be fairly smooth on highway + ret.longitudinalTuning.kpBP = [0., 3., 6., 35.] + ret.longitudinalTuning.kpV = [0.08, 0.175, 0.225, 0.33] + ret.longitudinalTuning.kiBP = [0., 35.0] + ret.longitudinalTuning.kiV = [0.07, 0.07] + ret.longitudinalTuning.kf = 0.25 + ret.stoppingDecelRate = 0.8 + else: # Pedal used for SNG, ACC for longitudinal control otherwise + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.HW_CAM_LONG.value + ret.startingState = True + ret.vEgoStopping = 0.25 + ret.vEgoStarting = 0.25 + + elif candidate in CC_ONLY_CAR: + ret.flags |= GMFlags.CC_LONG.value + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.CC_LONG.value + if alpha_long: + ret.openpilotLongitudinalControl = True + ret.flags |= GMFlags.CC_LONG.value + ret.radarUnavailable = True + ret.alphaLongitudinalAvailable = True + ret.minEnableSpeed = 24 * CV.MPH_TO_MS + ret.pcmCruise = True + + ret.stoppingDecelRate = 11.18 # == 25 mph/s (.04 rate) + + ret.longitudinalTuning.kiBP = [10.7, 10.8, 28.] + ret.longitudinalTuning.kiV = [0., 20., 20.] # set lower end to 0 since we can't drive below that speed + + if candidate in CC_ONLY_CAR: + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.NO_ACC.value + + # Exception for flashed cars, or cars whose camera was removed + if (ret.networkLocation == NetworkLocation.fwdCamera or candidate in CC_ONLY_CAR) and CAM_MSG not in fingerprint[ + CanBus.CAMERA] and not candidate in SDGM_CAR: + ret.flags |= GMFlags.NO_CAMERA.value + ret.safetyConfigs[0].safetyParam |= GMSafetyFlags.NO_CAMERA.value + + if ACCELERATOR_POS_MSG not in fingerprint[CanBus.POWERTRAIN]: + ret.flags |= GMFlags.NO_ACCELERATOR_POS_MSG.value + + if 608 in fingerprint[CanBus.POWERTRAIN]: + ret.flags |= GMFlags.SPEED_RELATED_MSG.value + + + return ret diff --git a/opendbc_repo/opendbc/car/gm/radar_interface.py b/opendbc_repo/opendbc/car/gm/radar_interface.py new file mode 100755 index 0000000000..4583d6aa67 --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/radar_interface.py @@ -0,0 +1,100 @@ +#!/usr/bin/env python3 +import math +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.gm.values import DBC, CanBus +from opendbc.car.interfaces import RadarInterfaceBase + +RADAR_HEADER_MSG = 1120 +SLOT_1_MSG = RADAR_HEADER_MSG + 1 +NUM_SLOTS = 20 + +# Actually it's 0x47f, but can parser only reports +# messages that are present in DBC +LAST_RADAR_MSG = RADAR_HEADER_MSG + NUM_SLOTS + + +def create_radar_can_parser(car_fingerprint): + # C1A-ARS3-A by Continental + radar_targets = list(range(SLOT_1_MSG, SLOT_1_MSG + NUM_SLOTS)) + signals = list(zip(['FLRRNumValidTargets', + 'FLRRSnsrBlckd', 'FLRRYawRtPlsblityFlt', + 'FLRRHWFltPrsntInt', 'FLRRAntTngFltPrsnt', + 'FLRRAlgnFltPrsnt', 'FLRRSnstvFltPrsntInt'] + + ['TrkRange'] * NUM_SLOTS + ['TrkRangeRate'] * NUM_SLOTS + + ['TrkRangeAccel'] * NUM_SLOTS + ['TrkAzimuth'] * NUM_SLOTS + + ['TrkWidth'] * NUM_SLOTS + ['TrkObjectID'] * NUM_SLOTS, + [RADAR_HEADER_MSG] * 7 + radar_targets * 6, strict=True)) + + messages = list({(s[1], 14) for s in signals}) + + return CANParser(DBC[car_fingerprint][Bus.radar], messages, CanBus.OBSTACLE) + + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + + self.rcp = None if CP.radarUnavailable else create_radar_can_parser(CP.carFingerprint) + + self.trigger_msg = LAST_RADAR_MSG + self.updated_messages = set() + + def update(self, can_strings): + if self.rcp is None: + return super().update(None) + + vls = self.rcp.update(can_strings) + self.updated_messages.update(vls) + + if self.trigger_msg not in self.updated_messages: + return None + + ret = structs.RadarData() + header = self.rcp.vl[RADAR_HEADER_MSG] + fault = header['FLRRSnsrBlckd'] or header['FLRRSnstvFltPrsntInt'] or \ + header['FLRRYawRtPlsblityFlt'] or header['FLRRHWFltPrsntInt'] or \ + header['FLRRAntTngFltPrsnt'] or header['FLRRAlgnFltPrsnt'] + if not self.rcp.can_valid: + ret.errors.canError = True + if fault: + ret.errors.radarFault = True + + currentTargets = set() + num_targets = header['FLRRNumValidTargets'] + + # Not all radar messages describe targets, + # no need to monitor all of the self.rcp.msgs_upd + for ii in self.updated_messages: + if ii == RADAR_HEADER_MSG: + continue + + if num_targets == 0: + break + + cpt = self.rcp.vl[ii] + # Zero distance means it's an empty target slot + if cpt['TrkRange'] > 0.0: + targetId = cpt['TrkObjectID'] + currentTargets.add(targetId) + if targetId not in self.pts: + self.pts[targetId] = structs.RadarData.RadarPoint() + self.pts[targetId].trackId = targetId + distance = cpt['TrkRange'] + self.pts[targetId].dRel = distance # from front of car + # From driver's pov, left is positive + self.pts[targetId].yRel = math.sin(cpt['TrkAzimuth'] * CV.DEG_TO_RAD) * distance + self.pts[targetId].vRel = cpt['TrkRangeRate'] + self.pts[targetId].vLead = self.pts[targetId].vRel + self.v_ego + self.pts[targetId].aRel = float('nan') + self.pts[targetId].yvRel = 0# float('nan') + self.pts[targetId].measured = True + + for oldTarget in list(self.pts.keys()): + if oldTarget not in currentTargets: + del self.pts[oldTarget] + + ret.points = list(self.pts.values()) + self.updated_messages.clear() + return ret diff --git a/opendbc_repo/opendbc/car/gm/tests/__init__.py b/opendbc_repo/opendbc/car/gm/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/gm/tests/test_gm.py b/opendbc_repo/opendbc/car/gm/tests/test_gm.py new file mode 100644 index 0000000000..c14b9bd243 --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/tests/test_gm.py @@ -0,0 +1,20 @@ +from parameterized import parameterized + +from opendbc.car.gm.fingerprints import FINGERPRINTS +from opendbc.car.gm.values import CAMERA_ACC_CAR, GM_RX_OFFSET + +CAMERA_DIAGNOSTIC_ADDRESS = 0x24b + + +class TestGMFingerprint: + @parameterized.expand(FINGERPRINTS.items()) + def test_can_fingerprints(self, car_model, fingerprints): + assert len(fingerprints) > 0 + + assert all(len(finger) for finger in fingerprints) + + # The camera can sometimes be communicating on startup + if car_model in CAMERA_ACC_CAR: + for finger in fingerprints: + for required_addr in (CAMERA_DIAGNOSTIC_ADDRESS, CAMERA_DIAGNOSTIC_ADDRESS + GM_RX_OFFSET): + assert finger.get(required_addr) == 8, required_addr diff --git a/opendbc_repo/opendbc/car/gm/values.py b/opendbc_repo/opendbc/car/gm/values.py new file mode 100644 index 0000000000..dfdbf11aaa --- /dev/null +++ b/opendbc_repo/opendbc/car/gm/values.py @@ -0,0 +1,365 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag + +import numpy as np +from opendbc.car import Bus, PlatformConfig, DbcDict, Platforms, CarSpecs +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries + +Ecu = CarParams.Ecu + + +class CarControllerParams: + STEER_MAX = 300 # GM limit is 3Nm. Used by carcontroller to generate LKA output + STEER_STEP = 4 # Active control frames per command (~33hz) + INACTIVE_STEER_STEP = 10 # Inactive control frames per command (10hz) + STEER_DELTA_UP = 5 # Delta rates require review due to observed EPS weakness + STEER_DELTA_DOWN = 7 + STEER_DRIVER_ALLOWANCE = 65 + STEER_DRIVER_MULTIPLIER = 4 + STEER_DRIVER_FACTOR = 100 + NEAR_STOP_BRAKE_PHASE = 0.4 + SNG_INTERCEPTOR_GAS = 18. / 255. + SNG_TIME = 30 # frames until the above is reached + + # Heartbeat for dash "Service Adaptive Cruise" and "Service Front Camera" + ADAS_KEEPALIVE_STEP = 100 + CAMERA_KEEPALIVE_STEP = 100 + + # Allow small margin below -3.5 m/s^2 from ISO 15622:2018 since we + # perform the closed loop control, and might need some + # to apply some more braking if we're on a downhill slope. + # Our controller should still keep the 2 second average above + # -3.5 m/s^2 as per planner limits + ACCEL_MAX = 2. # m/s^2 + ACCEL_MIN = -4. # m/s^2 + + def __init__(self, CP): + # Gas/brake lookups + self.ZERO_GAS = 0.0 # Coasting + self.MAX_BRAKE = 400 # ~ -4.0 m/s^2 with regen + + if CP.carFingerprint in (CAMERA_ACC_CAR | SDGM_CAR) and CP.carFingerprint not in CC_ONLY_CAR: + self.MAX_GAS = 1346.0 + self.MAX_ACC_REGEN = -540.0 + self.INACTIVE_REGEN = -500.0 + # Camera ACC vehicles have no regen while enabled. + # Camera transitions to MAX_ACC_REGEN from ZERO_GAS and uses friction brakes instantly + max_regen_acceleration = 0. + + else: + self.MAX_GAS = 1018.0 # Safety limit, not ACC max. Stock ACC >2042 from standstill. + self.MAX_ACC_REGEN = -650.0 # Max ACC regen is slightly less than max paddle regen + self.INACTIVE_REGEN = -650.0 + # ICE has much less engine braking force compared to regen in EVs, + # lower threshold removes some braking deadzone + max_regen_acceleration = -1. if CP.carFingerprint in EV_CAR else -0.1 + + self.GAS_LOOKUP_BP = [max_regen_acceleration, 0., self.ACCEL_MAX] + self.GAS_LOOKUP_V = [self.MAX_ACC_REGEN, self.ZERO_GAS, self.MAX_GAS] + + self.BRAKE_LOOKUP_BP = [self.ACCEL_MIN, max_regen_acceleration] + self.BRAKE_LOOKUP_V = [self.MAX_BRAKE, 0.] + + # determined by letting Volt regen to a stop in L gear from 89mph, + # and by letting off gas and allowing car to creep, for determining + # the positive threshold values at very low speed + EV_GAS_BRAKE_THRESHOLD_BP = [1.29, 1.52, 1.55, 1.6, 1.7, 1.8, 2.0, 2.2, 2.5, 5.52, 9.6, 20.5, 23.5, 35.0] # [m/s] + EV_GAS_BRAKE_THRESHOLD_V = [0.0, -0.14, -0.16, -0.18, -0.215, -0.255, -0.32, -0.41, -0.5, -0.72, -0.905, -1.14, -1.16, -1.175] # [m/s^s] + + def update_ev_gas_brake_threshold(self, v_ego): + gas_brake_threshold = np.interp(v_ego, self.EV_GAS_BRAKE_THRESHOLD_BP, self.EV_GAS_BRAKE_THRESHOLD_V) + self.EV_GAS_LOOKUP_BP = [gas_brake_threshold, max(0., gas_brake_threshold), self.ACCEL_MAX] + self.EV_BRAKE_LOOKUP_BP = [self.ACCEL_MIN, gas_brake_threshold] + + +class GMSafetyFlags(IntFlag): + HW_CAM = 1 + HW_CAM_LONG = 2 + CC_LONG = 4 + NO_CAMERA = 8 + HW_ASCM_LONG = 16 + NO_ACC = 32 + PEDAL_LONG = 64 # TODO: This can be inferred + GAS_INTERCEPTOR = 128 + EV = 256 + +@dataclass +class GMCarDocs(CarDocs): + package: str = "Adaptive Cruise Control (ACC)" + + def init_make(self, CP: CarParams): + if CP.networkLocation == CarParams.NetworkLocation.fwdCamera: + self.car_parts = CarParts.common([CarHarness.gm]) + else: + self.car_parts = CarParts.common([CarHarness.obd_ii]) + + +@dataclass(frozen=True, kw_only=True) +class GMCarSpecs(CarSpecs): + tireStiffnessFactor: float = 0.444 # not optimized yet + + +@dataclass +class GMPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: { + Bus.pt: 'gm_global_a_powertrain_volt', + Bus.radar: 'gm_global_a_object', + Bus.chassis: 'gm_global_a_chassis', + }) + + +@dataclass +class GMASCMPlatformConfig(GMPlatformConfig): + def init(self): + # ASCM is supported, but due to a janky install and hardware configuration, we are not showing in the car docs + #self.car_docs = [] + pass + + + +class CAR(Platforms): + HOLDEN_ASTRA = GMASCMPlatformConfig( + [GMCarDocs("Holden Astra 2017")], + GMCarSpecs(mass=1363, wheelbase=2.662, steerRatio=15.7, centerToFrontRatio=0.4), + ) + CHEVROLET_VOLT = GMASCMPlatformConfig( + [GMCarDocs("Chevrolet Volt 2017-18", min_enable_speed=0, video="https://youtu.be/QeMCN_4TFfQ")], + GMCarSpecs(mass=1607, wheelbase=2.69, steerRatio=17.7, centerToFrontRatio=0.55, tireStiffnessFactor=0.469, minEnableSpeed=-1), + ) + CADILLAC_ATS = GMASCMPlatformConfig( + [GMCarDocs("Cadillac ATS Premium Performance 2018")], + GMCarSpecs(mass=1601, wheelbase=2.78, steerRatio=15.3), + ) + CHEVROLET_MALIBU = GMASCMPlatformConfig( + [GMCarDocs("Chevrolet Malibu Premier 2017")], + GMCarSpecs(mass=1496, wheelbase=2.83, steerRatio=15.8, centerToFrontRatio=0.4), + ) + GMC_ACADIA = GMASCMPlatformConfig( + [GMCarDocs("GMC Acadia 2018", video="https://www.youtube.com/watch?v=0ZN6DdsBUZo")], + GMCarSpecs(mass=1975, wheelbase=2.86, steerRatio=14.4, centerToFrontRatio=0.4), + ) + BUICK_LACROSSE = GMASCMPlatformConfig( + [GMCarDocs("Buick LaCrosse 2017-19", "Driver Confidence Package 2")], + GMCarSpecs(mass=1712, wheelbase=2.91, steerRatio=15.8, centerToFrontRatio=0.4), + ) + BUICK_REGAL = GMASCMPlatformConfig( + [GMCarDocs("Buick Regal Essence 2018")], + GMCarSpecs(mass=1714, wheelbase=2.83, steerRatio=14.4, centerToFrontRatio=0.4), + ) + CADILLAC_ESCALADE = GMASCMPlatformConfig( + [GMCarDocs("Cadillac Escalade 2017", "Driver Assist Package")], + GMCarSpecs(mass=2564, wheelbase=2.95, steerRatio=17.3), + ) + CADILLAC_ESCALADE_ESV = GMASCMPlatformConfig( + [GMCarDocs("Cadillac Escalade ESV 2016", "Adaptive Cruise Control (ACC) & LKAS")], + GMCarSpecs(mass=2739, wheelbase=3.302, steerRatio=17.3, tireStiffnessFactor=1.0), + ) + CADILLAC_ESCALADE_ESV_2019 = GMASCMPlatformConfig( + [GMCarDocs("Cadillac Escalade ESV 2019", "Adaptive Cruise Control (ACC) & LKAS")], + CADILLAC_ESCALADE_ESV.specs, + ) + CHEVROLET_BOLT_EUV = GMPlatformConfig( + [ + GMCarDocs("Chevrolet Bolt EUV 2022-23", "Premier or Premier Redline Trim without Super Cruise Package", video="https://youtu.be/xvwzGMUA210"), + GMCarDocs("Chevrolet Bolt EV 2022-23", "2LT Trim with Adaptive Cruise Control Package"), + ], + GMCarSpecs(mass=1669, wheelbase=2.63779, steerRatio=16.8, centerToFrontRatio=0.4, tireStiffnessFactor=1.0), + ) + CHEVROLET_SILVERADO = GMPlatformConfig( + [ + GMCarDocs("Chevrolet Silverado 1500 2020-21", "Safety Package II"), + GMCarDocs("GMC Sierra 1500 2020-21", "Driver Alert Package II", video="https://youtu.be/5HbNoBLzRwE"), + ], + GMCarSpecs(mass=2450, wheelbase=3.75, steerRatio=16.3, tireStiffnessFactor=1.0), + ) + CHEVROLET_EQUINOX = GMPlatformConfig( + [GMCarDocs("Chevrolet Equinox 2019-22")], + GMCarSpecs(mass=1588, wheelbase=2.72, steerRatio=14.4, centerToFrontRatio=0.4), + ) + CHEVROLET_TRAILBLAZER = GMPlatformConfig( + [GMCarDocs("Chevrolet Trailblazer 2021-22")], + GMCarSpecs(mass=1345, wheelbase=2.64, steerRatio=16.8, centerToFrontRatio=0.4, tireStiffnessFactor=1.0), + ) + CADILLAC_XT4 = GMPlatformConfig( + [GMCarDocs("Cadillac XT4 2023", "Driver Assist Package")], + CarSpecs(mass=1660, wheelbase=2.78, steerRatio=14.4, centerToFrontRatio=0.4), + ) + CHEVROLET_VOLT_2019 = GMPlatformConfig( + [GMCarDocs("Chevrolet Volt 2019", "Adaptive Cruise Control (ACC) & LKAS")], + GMCarSpecs(mass=1607, wheelbase=2.69, steerRatio=15.7, centerToFrontRatio=0.45), + ) + CHEVROLET_TRAVERSE = GMPlatformConfig( + [GMCarDocs("Chevrolet Traverse 2022-23", "RS, Premier, or High Country Trim")], + CarSpecs(mass=1955, wheelbase=3.07, steerRatio=17.9, centerToFrontRatio=0.4), + ) + # Separate car def is required when there is no ASCM + # (for now) unless there is a way to detect it when it has been unplugged... + CHEVROLET_VOLT_CC = GMPlatformConfig( + [GMCarDocs("Chevrolet Volt LT 2017-18")], + CHEVROLET_VOLT.specs, + ) + CHEVROLET_BOLT_CC = GMPlatformConfig( + [ + GMCarDocs("Chevrolet Bolt EUV 2022-23 - No-ACC"), + GMCarDocs("Chevrolet Bolt EV 2017-23 - No-ACC"), + ], + CHEVROLET_BOLT_EUV.specs, + ) + CHEVROLET_EQUINOX_CC = GMPlatformConfig( + [GMCarDocs("Chevrolet Equinox NO ACC 2019-22")], + CHEVROLET_EQUINOX.specs, + ) + CHEVROLET_SUBURBAN = GMPlatformConfig( + [GMCarDocs("Chevrolet Suburban Premier 2016-20")], + CarSpecs(mass=2731, wheelbase=3.302, steerRatio=17.3, centerToFrontRatio=0.49), + ) + CHEVROLET_SUBURBAN_CC = GMPlatformConfig( + [GMCarDocs("Chevrolet Suburban 2016-20")], + CHEVROLET_SUBURBAN.specs, + ) + GMC_YUKON_CC = GMPlatformConfig( + [GMCarDocs("GMC Yukon No ACC")], + CarSpecs(mass=2541, wheelbase=2.95, steerRatio=16.3, centerToFrontRatio=0.4), + ) + CADILLAC_CT6_CC = GMPlatformConfig( + [GMCarDocs("Cadillac CT6 No ACC")], + CarSpecs(mass=2358, wheelbase=3.11, steerRatio=17.7, centerToFrontRatio=0.4), + ) + CHEVROLET_TRAILBLAZER_CC = GMPlatformConfig( + [GMCarDocs("Chevrolet Trailblazer NO ACC 2021-22")], + CHEVROLET_TRAILBLAZER.specs, + ) + CHEVROLET_MALIBU_CC = GMPlatformConfig( + [GMCarDocs("Chevrolet Malibu No ACC")], + CarSpecs(mass=1450, wheelbase=2.8, steerRatio=15.8, centerToFrontRatio=0.4), + ) + CADILLAC_XT5_CC = GMPlatformConfig( + [GMCarDocs("Cadillac XT5 No ACC")], + CarSpecs(mass=1810, wheelbase=2.86, steerRatio=16.34, centerToFrontRatio=0.5), + ) + BUICK_BABYENCLAVE = GMPlatformConfig( + [GMCarDocs("Buick Baby Enclave 2020-23", "Driver Assist Package")], + CarSpecs(mass=2050, wheelbase=2.86, steerRatio=16.0, centerToFrontRatio=0.5), + ) + CHEVROLET_TRAX = GMPlatformConfig( + [GMCarDocs("Chevrolet TRAX 2024")], + CarSpecs(mass=1365, wheelbase=2.7, steerRatio=16.1, centerToFrontRatio=0.7), + ) + CADILLAC_CT6_ACC = GMPlatformConfig( + [GMCarDocs("CT6-2019 Advanced ACC", "Adaptive Cruise Control (ACC)")], + GMCarSpecs(mass=1736, wheelbase=3.11, steerRatio=17.7, centerToFrontRatio=0.4), + ) + GMC_YUKON = GMPlatformConfig( + [GMCarDocs("GMC Yukon 2019-20", "Adaptive Cruise Control (ACC) & LKAS")], + GMCarSpecs(mass=2490, wheelbase=2.94, steerRatio=17.3, centerToFrontRatio=0.5, tireStiffnessFactor=1.0), + ) + + +class CruiseButtons: + INIT = 0 + UNPRESS = 1 + RES_ACCEL = 2 + DECEL_SET = 3 + MAIN = 5 + CANCEL = 6 + GAP_DIST = 7 + +class AccState: + OFF = 0 + ACTIVE = 1 + STANDBY = 2 + FAULTED = 3 + STANDSTILL = 4 + +class CanBus: + POWERTRAIN = 0 + OBSTACLE = 1 + CAMERA = 2 + CHASSIS = 2 + LOOPBACK = 128 + DROPPED = 192 + +class GMFlags(IntFlag): + PEDAL_LONG = 1 + CC_LONG = 2 + NO_CAMERA = 4 + NO_ACCELERATOR_POS_MSG = 8 + SPEED_RELATED_MSG = 16 + + +# In a Data Module, an identifier is a string used to recognize an object, +# either by itself or together with the identifiers of parent objects. +# Each returns a 4 byte hex representation of the decimal part number. `b"\x02\x8c\xf0'"` -> 42790951 +GM_BOOT_SOFTWARE_PART_NUMER_REQUEST = b'\x1a\xc0' # likely does not contain anything useful +GM_SOFTWARE_MODULE_1_REQUEST = b'\x1a\xc1' +GM_SOFTWARE_MODULE_2_REQUEST = b'\x1a\xc2' +GM_SOFTWARE_MODULE_3_REQUEST = b'\x1a\xc3' + +# Part number of XML data file that is used to configure ECU +GM_XML_DATA_FILE_PART_NUMBER = b'\x1a\x9c' +GM_XML_CONFIG_COMPAT_ID = b'\x1a\x9b' # used to know if XML file is compatible with the ECU software/hardware + +# This DID is for identifying the part number that reflects the mix of hardware, +# software, and calibrations in the ECU when it first arrives at the vehicle assembly plant. +# If there's an Alpha Code, it's associated with this part number and stored in the DID $DB. +GM_END_MODEL_PART_NUMBER_REQUEST = b'\x1a\xcb' +GM_END_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST = b'\x1a\xdb' +GM_BASE_MODEL_PART_NUMBER_REQUEST = b'\x1a\xcc' +GM_BASE_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST = b'\x1a\xdc' +GM_FW_RESPONSE = b'\x5a' + +GM_FW_REQUESTS = [ + GM_BOOT_SOFTWARE_PART_NUMER_REQUEST, + GM_SOFTWARE_MODULE_1_REQUEST, + GM_SOFTWARE_MODULE_2_REQUEST, + GM_SOFTWARE_MODULE_3_REQUEST, + GM_XML_DATA_FILE_PART_NUMBER, + GM_XML_CONFIG_COMPAT_ID, + GM_END_MODEL_PART_NUMBER_REQUEST, + GM_END_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST, + GM_BASE_MODEL_PART_NUMBER_REQUEST, + GM_BASE_MODEL_PART_NUMBER_ALPHA_CODE_REQUEST, +] + +GM_RX_OFFSET = 0x400 + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[request for req in GM_FW_REQUESTS for request in [ + Request( + [StdQueries.SHORT_TESTER_PRESENT_REQUEST, req], + [StdQueries.SHORT_TESTER_PRESENT_RESPONSE, GM_FW_RESPONSE + bytes([req[-1]])], + rx_offset=GM_RX_OFFSET, + bus=0, + logging=True, + ), + ]], + extra_ecus=[(Ecu.fwdCamera, 0x24b, None)], +) + +EV_CAR = {CAR.CHEVROLET_VOLT, CAR.CHEVROLET_VOLT_2019, CAR.CHEVROLET_BOLT_EUV, CAR.CHEVROLET_VOLT_CC, CAR.CHEVROLET_BOLT_CC} +CC_ONLY_CAR = {CAR.CHEVROLET_VOLT_CC, CAR.CHEVROLET_BOLT_CC, CAR.CHEVROLET_EQUINOX_CC, CAR.CHEVROLET_SUBURBAN_CC, CAR.GMC_YUKON_CC, CAR.CADILLAC_CT6_CC, CAR.CHEVROLET_TRAILBLAZER_CC, CAR.CADILLAC_XT5_CC, CAR.CHEVROLET_MALIBU_CC} +CC_REGEN_PADDLE_CAR = {CAR.CHEVROLET_BOLT_CC} +# We're integrated at the Safety Data Gateway Module on these cars +SDGM_CAR = {CAR.CADILLAC_XT4, CAR.CHEVROLET_TRAVERSE, CAR.BUICK_BABYENCLAVE, CAR.CHEVROLET_VOLT_2019} + +# We're integrated at the camera with VOACC on these cars (instead of ASCM w/ OBD-II harness) +CAMERA_ACC_CAR = {CAR.CHEVROLET_BOLT_EUV, CAR.CHEVROLET_SILVERADO, CAR.CHEVROLET_EQUINOX, CAR.CHEVROLET_TRAILBLAZER, CAR.CHEVROLET_TRAX} +CAMERA_ACC_CAR.update({CAR.CHEVROLET_VOLT_CC, CAR.CHEVROLET_BOLT_CC, CAR.CHEVROLET_EQUINOX_CC, CAR.GMC_YUKON_CC, CAR.CADILLAC_CT6_CC, CAR.CHEVROLET_TRAILBLAZER_CC, CAR.CADILLAC_XT5_CC, CAR.CHEVROLET_MALIBU_CC}) +# CAMERA_ACC_CAR.update(CC_ONLY_CAR) +# Alt ASCMActiveCruiseControlStatus +ALT_ACCS = {CAR.GMC_YUKON} + +STEER_THRESHOLD = 1.0 + +DBC = CAR.create_dbc_map() + +if __name__ == "__main__": + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) diff --git a/opendbc_repo/opendbc/car/honda/__init__.py b/opendbc_repo/opendbc/car/honda/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/honda/carcontroller.py b/opendbc_repo/opendbc/car/honda/carcontroller.py new file mode 100644 index 0000000000..f0f32dcb24 --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/carcontroller.py @@ -0,0 +1,266 @@ +import numpy as np +from collections import namedtuple + +from opendbc.can import CANPacker +from opendbc.car import Bus, DT_CTRL, rate_limit, make_tester_present_msg, structs +from opendbc.car.honda import hondacan +from opendbc.car.honda.values import CruiseButtons, VISUAL_HUD, HONDA_BOSCH, HONDA_BOSCH_RADARLESS, HONDA_NIDEC_ALT_PCM_ACCEL, CarControllerParams +from opendbc.car.interfaces import CarControllerBase + +from openpilot.common.params import Params + + +VisualAlert = structs.CarControl.HUDControl.VisualAlert +LongCtrlState = structs.CarControl.Actuators.LongControlState + + +def compute_gb_honda_bosch(accel, speed): + # TODO returns 0s, is unused + return 0.0, 0.0 + + +def compute_gb_honda_nidec(accel, speed): + creep_brake = 0.0 + creep_speed = 2.3 + creep_brake_value = 0.15 + if speed < creep_speed: + creep_brake = (creep_speed - speed) / creep_speed * creep_brake_value + gb = float(accel) / 4.8 - creep_brake + return np.clip(gb, 0.0, 1.0), np.clip(-gb, 0.0, 1.0) + + +def compute_gas_brake(accel, speed, fingerprint): + if fingerprint in HONDA_BOSCH: + return compute_gb_honda_bosch(accel, speed) + else: + return compute_gb_honda_nidec(accel, speed) + + +# TODO not clear this does anything useful +def actuator_hysteresis(brake, braking, brake_steady, v_ego, car_fingerprint): + # hyst params + brake_hyst_on = 0.02 # to activate brakes exceed this value + brake_hyst_off = 0.005 # to deactivate brakes below this value + brake_hyst_gap = 0.01 # don't change brake command for small oscillations within this value + + # *** hysteresis logic to avoid brake blinking. go above 0.1 to trigger + if (brake < brake_hyst_on and not braking) or brake < brake_hyst_off: + brake = 0. + braking = brake > 0. + + # for small brake oscillations within brake_hyst_gap, don't change the brake command + if brake == 0.: + brake_steady = 0. + elif brake > brake_steady + brake_hyst_gap: + brake_steady = brake - brake_hyst_gap + elif brake < brake_steady - brake_hyst_gap: + brake_steady = brake + brake_hyst_gap + brake = brake_steady + + return brake, braking, brake_steady + + +def brake_pump_hysteresis(apply_brake, apply_brake_last, last_pump_ts, ts): + pump_on = False + + # reset pump timer if: + # - there is an increment in brake request + # - we are applying steady state brakes and we haven't been running the pump + # for more than 20s (to prevent pressure bleeding) + if apply_brake > apply_brake_last or (ts - last_pump_ts > 20. and apply_brake > 0): + last_pump_ts = ts + + # once the pump is on, run it for at least 0.2s + if ts - last_pump_ts < 0.2 and apply_brake > 0: + pump_on = True + + return pump_on, last_pump_ts + + +def process_hud_alert(hud_alert): + # initialize to no alert + fcw_display = 0 + steer_required = 0 + acc_alert = 0 + + # priority is: FCW, steer required, all others + if hud_alert == VisualAlert.fcw: + fcw_display = VISUAL_HUD[hud_alert.raw] + elif hud_alert in (VisualAlert.steerRequired, VisualAlert.ldw): + steer_required = VISUAL_HUD[hud_alert.raw] + else: + acc_alert = VISUAL_HUD[hud_alert.raw] + + return fcw_display, steer_required, acc_alert + + +HUDData = namedtuple("HUDData", + ["pcm_accel", "v_cruise", "lead_visible", + "lanes_visible", "fcw", "acc_alert", "steer_required", "lead_distance_bars"]) + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.packer = CANPacker(dbc_names[Bus.pt]) + self.params = CarControllerParams(CP) + self.CAN = hondacan.CanBus(CP) + + self.braking = False + self.brake_steady = 0. + self.brake_last = 0. + self.apply_brake_last = 0 + self.last_pump_ts = 0. + self.stopping_counter = 0 + + self.accel = 0.0 + self.speed = 0.0 + self.gas = 0.0 + self.brake = 0.0 + self.last_torque = 0.0 + + def update(self, CC, CS, now_nanos): + + if self.frame % 50 == 0: + params = Params() + steerMax = params.get_int("CustomSteerMax") + steerDeltaUp = params.get_int("CustomSteerDeltaUp") + steerDeltaDown = params.get_int("CustomSteerDeltaDown") + if steerMax > 0: + self.params.STEER_MAX = steerMax + self.params.STEER_LOOKUP_BP = [0, steerMax] + self.params.STEER_LOOKUP_V = [0, steerMax] + if steerDeltaUp > 0: + self.params.STEER_DELTA_UP = steerDeltaUp + if steerDeltaDown > 0: + self.params.STEER_DELTA_DOWN = steerDeltaDown + + actuators = CC.actuators + hud_control = CC.hudControl + conversion = hondacan.get_cruise_speed_conversion(self.CP.carFingerprint, CS.is_metric) + hud_v_cruise = hud_control.setSpeed / conversion if hud_control.speedVisible else 255 + pcm_cancel_cmd = CC.cruiseControl.cancel + + if CC.longActive: + accel = actuators.accel + gas, brake = compute_gas_brake(actuators.accel, CS.out.vEgo, self.CP.carFingerprint) + else: + accel = 0.0 + gas, brake = 0.0, 0.0 + + # *** rate limit steer *** + limited_torque = rate_limit(actuators.torque, self.last_torque, -self.params.STEER_DELTA_DOWN * DT_CTRL, + self.params.STEER_DELTA_UP * DT_CTRL) + self.last_torque = limited_torque + + # *** apply brake hysteresis *** + pre_limit_brake, self.braking, self.brake_steady = actuator_hysteresis(brake, self.braking, self.brake_steady, + CS.out.vEgo, self.CP.carFingerprint) + + # *** rate limit after the enable check *** + self.brake_last = rate_limit(pre_limit_brake, self.brake_last, -2., DT_CTRL) + + # vehicle hud display, wait for one update from 10Hz 0x304 msg + fcw_display, steer_required, acc_alert = process_hud_alert(hud_control.visualAlert) + + # **** process the car messages **** + + # steer torque is converted back to CAN reference (positive when steering right) + apply_torque = int(np.interp(-limited_torque * self.params.STEER_MAX, + self.params.STEER_LOOKUP_BP, self.params.STEER_LOOKUP_V)) + + # Send CAN commands + can_sends = [] + + # tester present - w/ no response (keeps radar disabled) + if self.CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and self.CP.openpilotLongitudinalControl: + if self.frame % 10 == 0: + can_sends.append(make_tester_present_msg(0x18DAB0F1, 1, suppress_response=True)) + + # Send steering command. + can_sends.append(hondacan.create_steering_control(self.packer, self.CAN, apply_torque, CC.latActive)) + + # wind brake from air resistance decel at high speed + wind_brake = np.interp(CS.out.vEgo, [0.0, 2.3, 35.0], [0.001, 0.002, 0.15]) + # all of this is only relevant for HONDA NIDEC + max_accel = np.interp(CS.out.vEgo, self.params.NIDEC_MAX_ACCEL_BP, self.params.NIDEC_MAX_ACCEL_V) + # TODO this 1.44 is just to maintain previous behavior + pcm_speed_BP = [-wind_brake, + -wind_brake * (3 / 4), + 0.0, + 0.5] + # The Honda ODYSSEY seems to have different PCM_ACCEL + # msgs, is it other cars too? + if not CC.longActive: + pcm_speed = 0.0 + pcm_accel = int(0.0) + elif self.CP.carFingerprint in HONDA_NIDEC_ALT_PCM_ACCEL: + pcm_speed_V = [0.0, + np.clip(CS.out.vEgo - 3.0, 0.0, 100.0), + np.clip(CS.out.vEgo + 0.0, 0.0, 100.0), + np.clip(CS.out.vEgo + 5.0, 0.0, 100.0)] + pcm_speed = float(np.interp(gas - brake, pcm_speed_BP, pcm_speed_V)) + pcm_accel = int(1.0 * self.params.NIDEC_GAS_MAX) + else: + pcm_speed_V = [0.0, + np.clip(CS.out.vEgo - 2.0, 0.0, 100.0), + np.clip(CS.out.vEgo + 2.0, 0.0, 100.0), + np.clip(CS.out.vEgo + 5.0, 0.0, 100.0)] + pcm_speed = float(np.interp(gas - brake, pcm_speed_BP, pcm_speed_V)) + pcm_accel = int(np.clip((accel / 1.44) / max_accel, 0.0, 1.0) * self.params.NIDEC_GAS_MAX) + + if not self.CP.openpilotLongitudinalControl: + if self.frame % 2 == 0 and self.CP.carFingerprint not in HONDA_BOSCH_RADARLESS: # radarless cars don't have supplemental message + can_sends.append(hondacan.create_bosch_supplemental_1(self.packer, self.CAN)) + # If using stock ACC, spam cancel command to kill gas when OP disengages. + if pcm_cancel_cmd: + can_sends.append(hondacan.spam_buttons_command(self.packer, self.CAN, CruiseButtons.CANCEL, self.CP.carFingerprint)) + elif CC.cruiseControl.resume: + can_sends.append(hondacan.spam_buttons_command(self.packer, self.CAN, CruiseButtons.RES_ACCEL, self.CP.carFingerprint)) + + else: + # Send gas and brake commands. + if self.frame % 2 == 0: + ts = self.frame * DT_CTRL + + if self.CP.carFingerprint in HONDA_BOSCH: + self.accel = float(np.clip(accel, self.params.BOSCH_ACCEL_MIN, self.params.BOSCH_ACCEL_MAX)) + self.gas = float(np.interp(accel, self.params.BOSCH_GAS_LOOKUP_BP, self.params.BOSCH_GAS_LOOKUP_V)) + + stopping = actuators.longControlState == LongCtrlState.stopping + self.stopping_counter = self.stopping_counter + 1 if stopping else 0 + can_sends.extend(hondacan.create_acc_commands(self.packer, self.CAN, CC.enabled, CC.longActive, self.accel, self.gas, + self.stopping_counter, self.CP.carFingerprint)) + else: + apply_brake = np.clip(self.brake_last - wind_brake, 0.0, 1.0) + apply_brake = int(np.clip(apply_brake * self.params.NIDEC_BRAKE_MAX, 0, self.params.NIDEC_BRAKE_MAX - 1)) + pump_on, self.last_pump_ts = brake_pump_hysteresis(apply_brake, self.apply_brake_last, self.last_pump_ts, ts) + + pcm_override = True + can_sends.append(hondacan.create_brake_command(self.packer, self.CAN, apply_brake, pump_on, + pcm_override, pcm_cancel_cmd, fcw_display, + self.CP.carFingerprint, CS.stock_brake)) + self.apply_brake_last = apply_brake + self.brake = apply_brake / self.params.NIDEC_BRAKE_MAX + + # Send dashboard UI commands. + # On Nidec, this controls longitudinal positive acceleration + if self.frame % 10 == 0: + hud = HUDData(int(pcm_accel), int(round(hud_v_cruise)), hud_control.leadVisible, + hud_control.lanesVisible, fcw_display, acc_alert, steer_required, hud_control.leadDistanceBars) + can_sends.extend(hondacan.create_ui_commands(self.packer, self.CAN, self.CP, CC.enabled, pcm_speed, hud, CS.is_metric, CS.acc_hud, CS.lkas_hud)) + + if self.CP.openpilotLongitudinalControl and self.CP.carFingerprint not in HONDA_BOSCH: + self.speed = pcm_speed + self.gas = pcm_accel / self.params.NIDEC_GAS_MAX + + new_actuators = actuators.as_builder() + new_actuators.speed = self.speed + new_actuators.accel = self.accel + new_actuators.gas = self.gas + new_actuators.brake = self.brake + new_actuators.torque = self.last_torque + new_actuators.torqueOutputCan = apply_torque + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/honda/carstate.py b/opendbc_repo/opendbc/car/honda/carstate.py new file mode 100644 index 0000000000..f2b34fef46 --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/carstate.py @@ -0,0 +1,231 @@ +import numpy as np +from collections import defaultdict + +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, create_button_events, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.honda.hondacan import CanBus, get_cruise_speed_conversion +from opendbc.car.honda.values import CAR, DBC, STEER_THRESHOLD, HONDA_BOSCH, \ + HONDA_NIDEC_ALT_SCM_MESSAGES, HONDA_BOSCH_RADARLESS, \ + HondaFlags, CruiseButtons, CruiseSettings, GearShifter +from opendbc.car.interfaces import CarStateBase + +TransmissionType = structs.CarParams.TransmissionType +ButtonType = structs.CarState.ButtonEvent.Type + +BUTTONS_DICT = {CruiseButtons.RES_ACCEL: ButtonType.accelCruise, CruiseButtons.DECEL_SET: ButtonType.decelCruise, + CruiseButtons.MAIN: ButtonType.mainCruise, CruiseButtons.CANCEL: ButtonType.cancel} +SETTINGS_BUTTONS_DICT = {CruiseSettings.DISTANCE: ButtonType.gapAdjustCruise, CruiseSettings.LKAS: ButtonType.lkas} + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + self.gearbox_msg = "GEARBOX" + if CP.carFingerprint == CAR.HONDA_ACCORD and CP.transmissionType == TransmissionType.cvt: + self.gearbox_msg = "GEARBOX_15T" + elif CP.carFingerprint == CAR.HONDA_CIVIC_2022 and CP.transmissionType == TransmissionType.cvt: + self.gearbox_msg = "GEARBOX_ALT" + elif CP.transmissionType == TransmissionType.manual: + self.gearbox_msg = "GEARBOX_ALT_2" + + self.main_on_sig_msg = "SCM_FEEDBACK" + if CP.carFingerprint in HONDA_NIDEC_ALT_SCM_MESSAGES: + self.main_on_sig_msg = "SCM_BUTTONS" + + if CP.transmissionType != TransmissionType.manual: + self.shifter_values = can_define.dv[self.gearbox_msg]["GEAR_SHIFTER"] + self.steer_status_values = defaultdict(lambda: "UNKNOWN", can_define.dv["STEER_STATUS"]["STEER_STATUS"]) + + self.brake_switch_prev = False + self.brake_switch_active = False + self.cruise_setting = 0 + self.v_cruise_pcm_prev = 0 + + # When available we use cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] to populate vEgoCluster + # However, on cars without a digital speedometer this is not always present (HRV, FIT, CRV 2016, ILX and RDX) + self.dash_speed_seen = False + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + if self.CP.enableBsm: + cp_body = can_parsers[Bus.body] + + ret = structs.CarState() + + # car params + v_weight_v = [0., 1.] # don't trust smooth speed at low values to avoid premature zero snapping + v_weight_bp = [1., 6.] # smooth blending, below ~0.6m/s the smooth speed snaps to zero + + # update prevs, update must run once per loop + prev_cruise_buttons = self.cruise_buttons + prev_cruise_setting = self.cruise_setting + self.cruise_setting = cp.vl["SCM_BUTTONS"]["CRUISE_SETTING"] + self.cruise_buttons = cp.vl["SCM_BUTTONS"]["CRUISE_BUTTONS"] + + # used for car hud message + self.is_metric = not cp.vl["CAR_SPEED"]["IMPERIAL_UNIT"] + + # ******************* parse out can ******************* + # STANDSTILL->WHEELS_MOVING bit can be noisy around zero, so use XMISSION_SPEED + # panda checks if the signal is non-zero + ret.standstill = cp.vl["ENGINE_DATA"]["XMISSION_SPEED"] < 1e-5 + # TODO: find a common signal across all cars + if self.CP.carFingerprint in (CAR.HONDA_ACCORD, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CIVIC_BOSCH_DIESEL, CAR.HONDA_CRV_HYBRID, CAR.HONDA_INSIGHT, + CAR.ACURA_RDX_3G, CAR.HONDA_E, CAR.HONDA_CIVIC_2022, CAR.HONDA_HRV_3G): + ret.doorOpen = bool(cp.vl["SCM_FEEDBACK"]["DRIVERS_DOOR_OPEN"]) + elif self.CP.carFingerprint in (CAR.HONDA_ODYSSEY_CHN, CAR.HONDA_FREED, CAR.HONDA_HRV): + ret.doorOpen = bool(cp.vl["SCM_BUTTONS"]["DRIVERS_DOOR_OPEN"]) + else: + ret.doorOpen = any([cp.vl["DOORS_STATUS"]["DOOR_OPEN_FL"], cp.vl["DOORS_STATUS"]["DOOR_OPEN_FR"], + cp.vl["DOORS_STATUS"]["DOOR_OPEN_RL"], cp.vl["DOORS_STATUS"]["DOOR_OPEN_RR"]]) + ret.seatbeltUnlatched = bool(cp.vl["SEATBELT_STATUS"]["SEATBELT_DRIVER_LAMP"] or not cp.vl["SEATBELT_STATUS"]["SEATBELT_DRIVER_LATCHED"]) + + steer_status = self.steer_status_values[cp.vl["STEER_STATUS"]["STEER_STATUS"]] + ret.steerFaultPermanent = steer_status not in ("NORMAL", "NO_TORQUE_ALERT_1", "NO_TORQUE_ALERT_2", "LOW_SPEED_LOCKOUT", "TMP_FAULT") + # LOW_SPEED_LOCKOUT is not worth a warning + # NO_TORQUE_ALERT_2 can be caused by bump or steering nudge from driver + ret.steerFaultTemporary = steer_status not in ("NORMAL", "LOW_SPEED_LOCKOUT", "NO_TORQUE_ALERT_2") + + if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS: + ret.accFaulted = bool(cp.vl["CRUISE_FAULT_STATUS"]["CRUISE_FAULT"]) + else: + # On some cars, these two signals are always 1, this flag is masking a bug in release + # FIXME: find and set the ACC faulted signals on more platforms + if self.CP.openpilotLongitudinalControl: + ret.accFaulted = bool(cp.vl["STANDSTILL"]["BRAKE_ERROR_1"] or cp.vl["STANDSTILL"]["BRAKE_ERROR_2"]) + + # Log non-critical stock ACC/LKAS faults if Nidec (camera) + if self.CP.carFingerprint not in HONDA_BOSCH: + ret.carFaultedNonCritical = bool(cp_cam.vl["ACC_HUD"]["ACC_PROBLEM"] or cp_cam.vl["LKAS_HUD"]["LKAS_PROBLEM"]) + + ret.espDisabled = cp.vl["VSA_STATUS"]["ESP_DISABLED"] != 0 + + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FL"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FR"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RL"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RR"], + ) + v_wheel = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4.0 + + # blend in transmission speed at low speed, since it has more low speed accuracy + v_weight = float(np.interp(v_wheel, v_weight_bp, v_weight_v)) + ret.vEgoRaw = (1. - v_weight) * cp.vl["ENGINE_DATA"]["XMISSION_SPEED"] * CV.KPH_TO_MS * self.CP.wheelSpeedFactor + v_weight * v_wheel + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + + self.dash_speed_seen = self.dash_speed_seen or cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] > 1e-3 + if self.dash_speed_seen: + conversion = CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS + ret.vEgoCluster = cp.vl["CAR_SPEED"]["ROUGH_CAR_SPEED_2"] * conversion + + ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEER_ANGLE"] + ret.steeringRateDeg = cp.vl["STEERING_SENSORS"]["STEER_ANGLE_RATE"] + + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_stalk( + 250, cp.vl["SCM_FEEDBACK"]["LEFT_BLINKER"], cp.vl["SCM_FEEDBACK"]["RIGHT_BLINKER"]) + ret.brakeHoldActive = cp.vl["VSA_STATUS"]["BRAKE_HOLD_ACTIVE"] == 1 + + # TODO: set for all cars + if self.CP.carFingerprint in (HONDA_BOSCH | {CAR.HONDA_CIVIC, CAR.HONDA_ODYSSEY, CAR.HONDA_ODYSSEY_CHN}): + ret.parkingBrake = cp.vl["EPB_STATUS"]["EPB_STATE"] != 0 + + if self.CP.transmissionType == TransmissionType.manual: + ret.clutchPressed = cp.vl["GEARBOX_ALT_2"]["GEAR_MT"] == 0 + if cp.vl["GEARBOX_ALT_2"]["GEAR_MT"] == 14: + ret.gearShifter = GearShifter.reverse + else: + ret.gearShifter = GearShifter.drive + else: + gear = int(cp.vl[self.gearbox_msg]["GEAR_SHIFTER"]) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear, None)) + + ret.gas = cp.vl["POWERTRAIN_DATA"]["PEDAL_GAS"] + ret.gasPressed = ret.gas > 1e-5 + + ret.steeringTorque = cp.vl["STEER_STATUS"]["STEER_TORQUE_SENSOR"] + ret.steeringTorqueEps = cp.vl["STEER_MOTOR_TORQUE"]["MOTOR_TORQUE"] + ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD.get(self.CP.carFingerprint, 1200) + + if self.CP.carFingerprint in HONDA_BOSCH: + # The PCM always manages its own cruise control state, but doesn't publish it + if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS: + ret.cruiseState.nonAdaptive = cp_cam.vl["ACC_HUD"]["CRUISE_CONTROL_LABEL"] != 0 + + if not self.CP.openpilotLongitudinalControl: + # ACC_HUD is on camera bus on radarless cars + acc_hud = cp_cam.vl["ACC_HUD"] if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS else cp.vl["ACC_HUD"] + ret.cruiseState.nonAdaptive = acc_hud["CRUISE_CONTROL_LABEL"] != 0 + ret.cruiseState.standstill = acc_hud["CRUISE_SPEED"] == 252. + + conversion = get_cruise_speed_conversion(self.CP.carFingerprint, self.is_metric) + # On set, cruise set speed pulses between 254~255 and the set speed prev is set to avoid this. + ret.cruiseState.speed = self.v_cruise_pcm_prev if acc_hud["CRUISE_SPEED"] > 160.0 else acc_hud["CRUISE_SPEED"] * conversion + self.v_cruise_pcm_prev = ret.cruiseState.speed + else: + ret.cruiseState.speed = cp.vl["CRUISE"]["CRUISE_SPEED_PCM"] * CV.KPH_TO_MS + + if self.CP.flags & HondaFlags.BOSCH_ALT_BRAKE: + ret.brakePressed = cp.vl["BRAKE_MODULE"]["BRAKE_PRESSED"] != 0 + else: + # brake switch has shown some single time step noise, so only considered when + # switch is on for at least 2 consecutive CAN samples + # brake switch rises earlier than brake pressed but is never 1 when in park + brake_switch_vals = cp.vl_all["POWERTRAIN_DATA"]["BRAKE_SWITCH"] + if len(brake_switch_vals): + brake_switch = cp.vl["POWERTRAIN_DATA"]["BRAKE_SWITCH"] != 0 + if len(brake_switch_vals) > 1: + self.brake_switch_prev = brake_switch_vals[-2] != 0 + self.brake_switch_active = brake_switch and self.brake_switch_prev + self.brake_switch_prev = brake_switch + ret.brakePressed = (cp.vl["POWERTRAIN_DATA"]["BRAKE_PRESSED"] != 0) or self.brake_switch_active + + ret.brake = cp.vl["VSA_STATUS"]["USER_BRAKE"] + ret.cruiseState.enabled = cp.vl["POWERTRAIN_DATA"]["ACC_STATUS"] != 0 + ret.cruiseState.available = bool(cp.vl[self.main_on_sig_msg]["MAIN_ON"]) + + # Gets rid of Pedal Grinding noise when brake is pressed at slow speeds for some models + if self.CP.carFingerprint in (CAR.HONDA_PILOT, CAR.HONDA_RIDGELINE): + if ret.brake > 0.1: + ret.brakePressed = True + + if self.CP.carFingerprint in HONDA_BOSCH: + # TODO: find the radarless AEB_STATUS bit and make sure ACCEL_COMMAND is correct to enable AEB alerts + if self.CP.carFingerprint not in HONDA_BOSCH_RADARLESS: + ret.stockAeb = (not self.CP.openpilotLongitudinalControl) and bool(cp.vl["ACC_CONTROL"]["AEB_STATUS"] and cp.vl["ACC_CONTROL"]["ACCEL_COMMAND"] < -1e-5) + else: + ret.stockAeb = bool(cp_cam.vl["BRAKE_COMMAND"]["AEB_REQ_1"] and cp_cam.vl["BRAKE_COMMAND"]["COMPUTER_BRAKE"] > 1e-5) + + self.acc_hud = False + self.lkas_hud = False + if self.CP.carFingerprint not in HONDA_BOSCH: + ret.stockFcw = cp_cam.vl["BRAKE_COMMAND"]["FCW"] != 0 + self.acc_hud = cp_cam.vl["ACC_HUD"] + self.stock_brake = cp_cam.vl["BRAKE_COMMAND"] + if self.CP.carFingerprint in HONDA_BOSCH_RADARLESS: + self.lkas_hud = cp_cam.vl["LKAS_HUD"] + + if self.CP.enableBsm: + # BSM messages are on B-CAN, requires a panda forwarding B-CAN messages to CAN 0 + # more info here: https://github.com/commaai/openpilot/pull/1867 + ret.leftBlindspot = cp_body.vl["BSM_STATUS_LEFT"]["BSM_ALERT"] == 1 + ret.rightBlindspot = cp_body.vl["BSM_STATUS_RIGHT"]["BSM_ALERT"] == 1 + + ret.buttonEvents = [ + *create_button_events(self.cruise_buttons, prev_cruise_buttons, BUTTONS_DICT), + *create_button_events(self.cruise_setting, prev_cruise_setting, SETTINGS_BUTTONS_DICT), + ] + + return ret + + def get_can_parsers(self, CP): + parsers = { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).pt), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).camera), + } + if CP.enableBsm: + parsers[Bus.body] = CANParser(DBC[CP.carFingerprint][Bus.body], [], CanBus(CP).radar) + + return parsers diff --git a/opendbc_repo/opendbc/car/honda/fingerprints.py b/opendbc_repo/opendbc/car/honda/fingerprints.py new file mode 100644 index 0000000000..565fd4d2b1 --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/fingerprints.py @@ -0,0 +1,929 @@ +from opendbc.car.structs import CarParams +from opendbc.car.honda.values import CAR + +Ecu = CarParams.Ecu + +# Modified FW can be identified by the second dash being replaced by a comma +# For example: `b'39990-TVA,A150\x00\x00'` +# +# TODO: vsa is "essential" for fpv2 but doesn't appear on some CAR.FREED models + + +FW_VERSIONS = { + CAR.HONDA_ACCORD: { + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TVC-A910\x00\x00', + b'54008-TWA-A910\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-6A7-A220\x00\x00', + b'28101-6A7-A230\x00\x00', + b'28101-6A7-A320\x00\x00', + b'28101-6A7-A330\x00\x00', + b'28101-6A7-A410\x00\x00', + b'28101-6A7-A510\x00\x00', + b'28101-6A7-A610\x00\x00', + b'28101-6A7-A710\x00\x00', + b'28101-6A9-H140\x00\x00', + b'28101-6A9-H420\x00\x00', + b'28102-6B8-A560\x00\x00', + b'28102-6B8-A570\x00\x00', + b'28102-6B8-A700\x00\x00', + b'28102-6B8-A800\x00\x00', + b'28102-6B8-C560\x00\x00', + b'28102-6B8-C570\x00\x00', + b'28102-6B8-M520\x00\x00', + b'28102-6B8-R700\x00\x00', + ], + (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ + b'46114-TVA-A050\x00\x00', + b'46114-TVA-A060\x00\x00', + b'46114-TVA-A080\x00\x00', + b'46114-TVA-A120\x00\x00', + b'46114-TVA-A320\x00\x00', + b'46114-TVA-A410\x00\x00', + b'46114-TVE-H550\x00\x00', + b'46114-TVE-H560\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TVA-B040\x00\x00', + b'57114-TVA-B050\x00\x00', + b'57114-TVA-B060\x00\x00', + b'57114-TVA-B530\x00\x00', + b'57114-TVA-C040\x00\x00', + b'57114-TVA-C050\x00\x00', + b'57114-TVA-C060\x00\x00', + b'57114-TVA-C530\x00\x00', + b'57114-TVA-E520\x00\x00', + b'57114-TVE-H250\x00\x00', + b'57114-TWA-A040\x00\x00', + b'57114-TWA-A050\x00\x00', + b'57114-TWA-A530\x00\x00', + b'57114-TWA-B520\x00\x00', + b'57114-TWA-C510\x00\x00', + b'57114-TWB-H030\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TBX-H120\x00\x00', + b'39990-TVA,A150\x00\x00', + b'39990-TVA-A140\x00\x00', + b'39990-TVA-A150\x00\x00', + b'39990-TVA-A160\x00\x00', + b'39990-TVA-A340\x00\x00', + b'39990-TVA-X030\x00\x00', + b'39990-TVA-X040\x00\x00', + b'39990-TVE-H130\x00\x00', + b'39990-TWB-H120\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TBX-H230\x00\x00', + b'77959-TVA-A460\x00\x00', + b'77959-TVA-F330\x00\x00', + b'77959-TVA-H230\x00\x00', + b'77959-TVA-L420\x00\x00', + b'77959-TVA-X330\x00\x00', + b'77959-TWA-A440\x00\x00', + b'77959-TWA-L420\x00\x00', + b'77959-TWB-H220\x00\x00', + ], + (Ecu.hud, 0x18da61f1, None): [ + b'78209-TVA-A010\x00\x00', + b'78209-TVA-A110\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TBX-H140\x00\x00', + b'36802-TVA-A150\x00\x00', + b'36802-TVA-A160\x00\x00', + b'36802-TVA-A170\x00\x00', + b'36802-TVA-A180\x00\x00', + b'36802-TVA-A330\x00\x00', + b'36802-TVC-A330\x00\x00', + b'36802-TVE-H070\x00\x00', + b'36802-TWA-A070\x00\x00', + b'36802-TWA-A080\x00\x00', + b'36802-TWA-A210\x00\x00', + b'36802-TWA-A330\x00\x00', + b'36802-TWB-H060\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TBX-H130\x00\x00', + b'36161-TVA-A060\x00\x00', + b'36161-TVA-A330\x00\x00', + b'36161-TVC-A330\x00\x00', + b'36161-TVE-H050\x00\x00', + b'36161-TWA-A070\x00\x00', + b'36161-TWA-A330\x00\x00', + b'36161-TWB-H040\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TVA-A010\x00\x00', + b'38897-TVA-A020\x00\x00', + b'38897-TVA-A230\x00\x00', + b'38897-TVA-A240\x00\x00', + b'38897-TWA-A120\x00\x00', + b'38897-TWD-J020\x00\x00', + ], + }, + CAR.HONDA_CIVIC: { + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-5CG-A040\x00\x00', + b'28101-5CG-A050\x00\x00', + b'28101-5CG-A070\x00\x00', + b'28101-5CG-A080\x00\x00', + b'28101-5CG-A320\x00\x00', + b'28101-5CG-A810\x00\x00', + b'28101-5CG-A820\x00\x00', + b'28101-5DJ-A040\x00\x00', + b'28101-5DJ-A060\x00\x00', + b'28101-5DJ-A510\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TBA-A540\x00\x00', + b'57114-TBA-A550\x00\x00', + b'57114-TBA-A560\x00\x00', + b'57114-TBA-A570\x00\x00', + b'57114-TEA-Q220\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TBA,A030\x00\x00', + b'39990-TBA-A030\x00\x00', + b'39990-TBG-A030\x00\x00', + b'39990-TEA-T020\x00\x00', + b'39990-TEG-A010\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TBA-A030\x00\x00', + b'77959-TBA-A040\x00\x00', + b'77959-TBG-A020\x00\x00', + b'77959-TBG-A030\x00\x00', + b'77959-TEA-Q820\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-TBA-A020\x00\x00', + b'36161-TBA-A030\x00\x00', + b'36161-TBA-A040\x00\x00', + b'36161-TBC-A020\x00\x00', + b'36161-TBC-A030\x00\x00', + b'36161-TED-Q320\x00\x00', + b'36161-TEG-A010\x00\x00', + b'36161-TEG-A020\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TBA-A010\x00\x00', + b'38897-TBA-A020\x00\x00', + ], + }, + CAR.HONDA_CIVIC_BOSCH: { + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-5CG-A920\x00\x00', + b'28101-5CG-AB10\x00\x00', + b'28101-5CG-C110\x00\x00', + b'28101-5CG-C220\x00\x00', + b'28101-5CG-C320\x00\x00', + b'28101-5CG-G020\x00\x00', + b'28101-5CG-L020\x00\x00', + b'28101-5CK-A130\x00\x00', + b'28101-5CK-A140\x00\x00', + b'28101-5CK-A150\x00\x00', + b'28101-5CK-C130\x00\x00', + b'28101-5CK-C140\x00\x00', + b'28101-5CK-C150\x00\x00', + b'28101-5CK-G210\x00\x00', + b'28101-5CK-J710\x00\x00', + b'28101-5CK-Q610\x00\x00', + b'28101-5DJ-A610\x00\x00', + b'28101-5DJ-A710\x00\x00', + b'28101-5DV-E330\x00\x00', + b'28101-5DV-E610\x00\x00', + b'28101-5DV-E820\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TBG-A330\x00\x00', + b'57114-TBG-A340\x00\x00', + b'57114-TBG-A350\x00\x00', + b'57114-TGG-A340\x00\x00', + b'57114-TGG-C320\x00\x00', + b'57114-TGG-G320\x00\x00', + b'57114-TGG-L320\x00\x00', + b'57114-TGG-L330\x00\x00', + b'57114-TGH-L130\x00\x00', + b'57114-TGK-T320\x00\x00', + b'57114-TGL-G330\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TBA-C020\x00\x00', + b'39990-TBA-C120\x00\x00', + b'39990-TEA-T820\x00\x00', + b'39990-TEZ-T020\x00\x00', + b'39990-TGG,A020\x00\x00', + b'39990-TGG,A120\x00\x00', + b'39990-TGG-A020\x00\x00', + b'39990-TGG-A120\x00\x00', + b'39990-TGG-J510\x00\x00', + b'39990-TGH-J530\x00\x00', + b'39990-TGL-E130\x00\x00', + b'39990-TGN-E120\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TBA-A060\x00\x00', + b'77959-TBG-A050\x00\x00', + b'77959-TEA-G020\x00\x00', + b'77959-TGG-A020\x00\x00', + b'77959-TGG-A030\x00\x00', + b'77959-TGG-E010\x00\x00', + b'77959-TGG-G010\x00\x00', + b'77959-TGG-G110\x00\x00', + b'77959-TGG-J320\x00\x00', + b'77959-TGG-Z820\x00\x00', + b'77959-TGH-J110\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TBA-A150\x00\x00', + b'36802-TBA-A160\x00\x00', + b'36802-TFJ-G060\x00\x00', + b'36802-TGG-A050\x00\x00', + b'36802-TGG-A060\x00\x00', + b'36802-TGG-A070\x00\x00', + b'36802-TGG-A130\x00\x00', + b'36802-TGG-G040\x00\x00', + b'36802-TGG-G130\x00\x00', + b'36802-TGH-A140\x00\x00', + b'36802-TGK-Q120\x00\x00', + b'36802-TGL-G040\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TBA-A130\x00\x00', + b'36161-TBA-A140\x00\x00', + b'36161-TFJ-G070\x00\x00', + b'36161-TGG-A060\x00\x00', + b'36161-TGG-A080\x00\x00', + b'36161-TGG-A120\x00\x00', + b'36161-TGG-G050\x00\x00', + b'36161-TGG-G070\x00\x00', + b'36161-TGG-G130\x00\x00', + b'36161-TGG-G140\x00\x00', + b'36161-TGH-A140\x00\x00', + b'36161-TGK-Q120\x00\x00', + b'36161-TGL-G050\x00\x00', + b'36161-TGL-G070\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TBA-A020\x00\x00', + b'38897-TBA-A110\x00\x00', + b'38897-TGH-A010\x00\x00', + ], + (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ + b'39494-TGL-G030\x00\x00', + ], + }, + CAR.HONDA_CIVIC_BOSCH_DIESEL: { + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-59Y-G220\x00\x00', + b'28101-59Y-G620\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TGN-E320\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TFK-G020\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TFK-G210\x00\x00', + b'77959-TGN-G220\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TFK-G130\x00\x00', + b'36802-TGN-G130\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TGN-E010\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TFK-G130\x00\x00', + b'36161-TGN-G130\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TBA-A020\x00\x00', + ], + }, + CAR.HONDA_CRV: { + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-T1W-A230\x00\x00', + b'57114-T1W-A240\x00\x00', + b'57114-TFF-A940\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T0A-A230\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T1W-A830\x00\x00', + b'36161-T1W-C830\x00\x00', + b'36161-T1X-A830\x00\x00', + ], + }, + CAR.HONDA_CRV_5G: { + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-5RG-A020\x00\x00', + b'28101-5RG-A030\x00\x00', + b'28101-5RG-A040\x00\x00', + b'28101-5RG-A120\x00\x00', + b'28101-5RG-A220\x00\x00', + b'28101-5RH-A020\x00\x00', + b'28101-5RH-A030\x00\x00', + b'28101-5RH-A040\x00\x00', + b'28101-5RH-A120\x00\x00', + b'28101-5RH-A220\x00\x00', + b'28101-5RL-Q010\x00\x00', + b'28101-5RM-F010\x00\x00', + b'28101-5RM-K010\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TLA-A040\x00\x00', + b'57114-TLA-A050\x00\x00', + b'57114-TLA-A060\x00\x00', + b'57114-TLB-A830\x00\x00', + b'57114-TMC-Z040\x00\x00', + b'57114-TMC-Z050\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TLA,A040\x00\x00', + b'39990-TLA-A040\x00\x00', + b'39990-TLA-A110\x00\x00', + b'39990-TLA-A220\x00\x00', + b'39990-TME-T030\x00\x00', + b'39990-TME-T120\x00\x00', + b'39990-TMT-T010\x00\x00', + ], + (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ + b'46114-TLA-A040\x00\x00', + b'46114-TLA-A050\x00\x00', + b'46114-TLA-A930\x00\x00', + b'46114-TMC-U020\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TLA-A010\x00\x00', + b'38897-TLA-A110\x00\x00', + b'38897-TNY-G010\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TLA-A040\x00\x00', + b'36802-TLA-A050\x00\x00', + b'36802-TLA-A060\x00\x00', + b'36802-TLA-A070\x00\x00', + b'36802-TMC-Q040\x00\x00', + b'36802-TMC-Q070\x00\x00', + b'36802-TNY-A030\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TLA-A060\x00\x00', + b'36161-TLA-A070\x00\x00', + b'36161-TLA-A080\x00\x00', + b'36161-TMC-Q020\x00\x00', + b'36161-TMC-Q030\x00\x00', + b'36161-TMC-Q040\x00\x00', + b'36161-TNY-A020\x00\x00', + b'36161-TNY-A030\x00\x00', + b'36161-TNY-A040\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TLA-A240\x00\x00', + b'77959-TLA-A250\x00\x00', + b'77959-TLA-A320\x00\x00', + b'77959-TLA-A410\x00\x00', + b'77959-TLA-A420\x00\x00', + b'77959-TLA-Q040\x00\x00', + b'77959-TLA-Z040\x00\x00', + b'77959-TMM-F040\x00\x00', + ], + }, + CAR.HONDA_CRV_EU: { + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-T1V-G920\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T1V-G520\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-T1V-G010\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-5LH-E120\x00\x00', + b'28103-5LH-E100\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T1G-G940\x00\x00', + ], + }, + CAR.HONDA_CRV_HYBRID: { + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TMB-H030\x00\x00', + b'57114-TPA-G020\x00\x00', + b'57114-TPG-A020\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TMA-H020\x00\x00', + b'39990-TPA-G030\x00\x00', + b'39990-TPG-A020\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TMA-H110\x00\x00', + b'38897-TPG-A110\x00\x00', + b'38897-TPG-A210\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TMB-H510\x00\x00', + b'54008-TMB-H610\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TMB-H040\x00\x00', + b'36161-TPA-E050\x00\x00', + b'36161-TPA-E070\x00\x00', + b'36161-TPG-A030\x00\x00', + b'36161-TPG-A040\x00\x00', + b'36161-TPG-A050\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TMB-H040\x00\x00', + b'36802-TPA-E040\x00\x00', + b'36802-TPG-A020\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TLA-C320\x00\x00', + b'77959-TLA-C410\x00\x00', + b'77959-TLA-C420\x00\x00', + b'77959-TLA-G220\x00\x00', + b'77959-TLA-H240\x00\x00', + ], + }, + CAR.HONDA_FIT: { + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-T5R-L020\x00\x00', + b'57114-T5R-L220\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-T5R-C020\x00\x00', + b'39990-T5R-C030\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-T5A-J010\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T5R-A040\x00\x00', + b'36161-T5R-A240\x00\x00', + b'36161-T5R-A520\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T5R-A230\x00\x00', + ], + }, + CAR.HONDA_FREED: { + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TDK-J010\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TDK-J050\x00\x00', + b'39990-TDK-N020\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TDK-J120\x00\x00', + b'57114-TDK-J330\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-TDK-J070\x00\x00', + b'36161-TDK-J080\x00\x00', + b'36161-TDK-J530\x00\x00', + ], + }, + CAR.HONDA_ODYSSEY: { + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-THR-A010\x00\x00', + b'38897-THR-A020\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-THR-A020\x00\x00', + b'39990-THR-A030\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-THR-A010\x00\x00', + b'77959-THR-A110\x00\x00', + b'77959-THR-X010\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-THR-A020\x00\x00', + b'36161-THR-A030\x00\x00', + b'36161-THR-A110\x00\x00', + b'36161-THR-A720\x00\x00', + b'36161-THR-A730\x00\x00', + b'36161-THR-A810\x00\x00', + b'36161-THR-A910\x00\x00', + b'36161-THR-C010\x00\x00', + b'36161-THR-D110\x00\x00', + b'36161-THR-K020\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-5NZ-A110\x00\x00', + b'28101-5NZ-A310\x00\x00', + b'28101-5NZ-C310\x00\x00', + b'28102-5MX-A001\x00\x00', + b'28102-5MX-A600\x00\x00', + b'28102-5MX-A610\x00\x00', + b'28102-5MX-A700\x00\x00', + b'28102-5MX-A710\x00\x00', + b'28102-5MX-A900\x00\x00', + b'28102-5MX-A910\x00\x00', + b'28102-5MX-C001\x00\x00', + b'28102-5MX-C610\x00\x00', + b'28102-5MX-C910\x00\x00', + b'28102-5MX-D001\x00\x00', + b'28102-5MX-D710\x00\x00', + b'28102-5MX-K610\x00\x00', + b'28103-5NZ-A100\x00\x00', + b'28103-5NZ-A300\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-THR-A040\x00\x00', + b'57114-THR-A110\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-THR-A020\x00\x00', + ], + }, + CAR.HONDA_ODYSSEY_CHN: { + (Ecu.eps, 0x18da30f1, None): [ + b'39990-T6D-H220\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-T6A-J010\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T6A-P040\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T6A-P110\x00\x00', + ], + }, + CAR.HONDA_PILOT: { + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TG7-A520\x00\x00', + b'54008-TG7-A530\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-5EY-A040\x00\x00', + b'28101-5EY-A050\x00\x00', + b'28101-5EY-A100\x00\x00', + b'28101-5EY-A330\x00\x00', + b'28101-5EY-A430\x00\x00', + b'28101-5EY-A500\x00\x00', + b'28101-5EZ-A050\x00\x00', + b'28101-5EZ-A060\x00\x00', + b'28101-5EZ-A100\x00\x00', + b'28101-5EZ-A210\x00\x00', + b'28101-5EZ-A330\x00\x00', + b'28101-5EZ-A430\x00\x00', + b'28101-5EZ-A500\x00\x00', + b'28101-5EZ-A600\x00\x00', + b'28101-5EZ-A700\x00\x00', + b'28103-5EY-A110\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TG7-A030\x00\x00', + b'38897-TG7-A040\x00\x00', + b'38897-TG7-A110\x00\x00', + b'38897-TG7-A210\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TG7-A030\x00\x00', + b'39990-TG7-A040\x00\x00', + b'39990-TG7-A060\x00\x00', + b'39990-TG7-A070\x00\x00', + b'39990-TGS-A230\x00\x00', + b'39990-TGS-A320\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-TG7-A310\x00\x00', + b'36161-TG7-A520\x00\x00', + b'36161-TG7-A630\x00\x00', + b'36161-TG7-A720\x00\x00', + b'36161-TG7-A820\x00\x00', + b'36161-TG7-A930\x00\x00', + b'36161-TG7-C520\x00\x00', + b'36161-TG7-D520\x00\x00', + b'36161-TG7-D630\x00\x00', + b'36161-TG7-Y630\x00\x00', + b'36161-TG8-A410\x00\x00', + b'36161-TG8-A520\x00\x00', + b'36161-TG8-A630\x00\x00', + b'36161-TG8-A720\x00\x00', + b'36161-TG8-A830\x00\x00', + b'36161-TGS-A030\x00\x00', + b'36161-TGS-A130\x00\x00', + b'36161-TGS-A220\x00\x00', + b'36161-TGS-A320\x00\x00', + b'36161-TGT-A030\x00\x00', + b'36161-TGT-A130\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TG7-A020\x00\x00', + b'77959-TG7-A110\x00\x00', + b'77959-TG7-A210\x00\x00', + b'77959-TG7-Y210\x00\x00', + b'77959-TGS-A010\x00\x00', + b'77959-TGS-A110\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TG7-A130\x00\x00', + b'57114-TG7-A140\x00\x00', + b'57114-TG7-A230\x00\x00', + b'57114-TG7-A240\x00\x00', + b'57114-TG7-A630\x00\x00', + b'57114-TG7-A730\x00\x00', + b'57114-TG8-A140\x00\x00', + b'57114-TG8-A230\x00\x00', + b'57114-TG8-A240\x00\x00', + b'57114-TG8-A630\x00\x00', + b'57114-TG8-A730\x00\x00', + b'57114-TGS-A530\x00\x00', + b'57114-TGT-A530\x00\x00', + ], + }, + CAR.ACURA_RDX: { + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TX4-A220\x00\x00', + b'57114-TX5-A220\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-TX4-A030\x00\x00', + b'36161-TX5-A030\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TX4-B010\x00\x00', + b'77959-TX4-C010\x00\x00', + b'77959-TX4-C020\x00\x00', + ], + }, + CAR.ACURA_RDX_3G: { + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TJB-A030\x00\x00', + b'57114-TJB-A040\x00\x00', + b'57114-TJB-A120\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TJB-A040\x00\x00', + b'36802-TJB-A050\x00\x00', + b'36802-TJB-A540\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TJB-A040\x00\x00', + b'36161-TJB-A530\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TJB-A520\x00\x00', + b'54008-TJB-A530\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28102-5YK-A610\x00\x00', + b'28102-5YK-A620\x00\x00', + b'28102-5YK-A630\x00\x00', + b'28102-5YK-A700\x00\x00', + b'28102-5YK-A711\x00\x00', + b'28102-5YK-A800\x00\x00', + b'28102-5YL-A620\x00\x00', + b'28102-5YL-A700\x00\x00', + b'28102-5YL-A711\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TJB-A040\x00\x00', + b'77959-TJB-A120\x00\x00', + b'77959-TJB-A210\x00\x00', + ], + (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ + b'46114-TJB-A040\x00\x00', + b'46114-TJB-A050\x00\x00', + b'46114-TJB-A060\x00\x00', + b'46114-TJB-A120\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TJB-A040\x00\x00', + b'38897-TJB-A110\x00\x00', + b'38897-TJB-A120\x00\x00', + b'38897-TJB-A220\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TJB-A030\x00\x00', + b'39990-TJB-A040\x00\x00', + b'39990-TJB-A070\x00\x00', + b'39990-TJB-A130\x00\x00', + ], + }, + CAR.HONDA_RIDGELINE: { + (Ecu.eps, 0x18da30f1, None): [ + b'39990-T6Z-A020\x00\x00', + b'39990-T6Z-A030\x00\x00', + b'39990-T6Z-A050\x00\x00', + b'39990-T6Z-A110\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T6Z-A020\x00\x00', + b'36161-T6Z-A310\x00\x00', + b'36161-T6Z-A420\x00\x00', + b'36161-T6Z-A520\x00\x00', + b'36161-T6Z-A620\x00\x00', + b'36161-T6Z-A720\x00\x00', + b'36161-TJZ-A120\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-T6Z-A010\x00\x00', + b'38897-T6Z-A110\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T6Z-A020\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-T6Z-A120\x00\x00', + b'57114-T6Z-A130\x00\x00', + b'57114-T6Z-A520\x00\x00', + b'57114-T6Z-A610\x00\x00', + b'57114-TJZ-A520\x00\x00', + ], + }, + CAR.HONDA_INSIGHT: { + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TXM-A040\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TXM-A070\x00\x00', + b'36802-TXM-A080\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TXM-A050\x00\x00', + b'36161-TXM-A060\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TXM-A230\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TXM-A030\x00\x00', + b'57114-TXM-A040\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TWA-A910\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TXM-A020\x00\x00', + ], + }, + CAR.HONDA_HRV: { + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-T7A-A010\x00\x00', + b'38897-T7A-A110\x00\x00', + ], + (Ecu.eps, 0x18da30f1, None): [ + b'39990-THX-A020\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T7A-A040\x00\x00', + b'36161-T7A-A140\x00\x00', + b'36161-T7A-A240\x00\x00', + b'36161-T7A-C440\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T7A-A230\x00\x00', + ], + }, + CAR.HONDA_HRV_3G: { + (Ecu.eps, 0x18da30f1, None): [ + b'39990-3M0-G110\x00\x00', + b'39990-3W0-A030\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-3M0-M110\x00\x00', + b'38897-3W1-A010\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-3M0-K840\x00\x00', + b'77959-3V0-A820\x00\x00', + b'77959-3V0-A910\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'8S102-3M6-P030\x00\x00', + b'8S102-3W0-A060\x00\x00', + b'8S102-3W0-AB10\x00\x00', + b'8S102-3W0-AB20\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-3M6-M010\x00\x00', + b'57114-3W0-A040\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-6EH-A010\x00\x00', + b'28101-6EH-A110\x00\x00', + b'28101-6JC-M310\x00\x00', + ], + (Ecu.electricBrakeBooster, 0x18da2bf1, None): [ + b'46114-3W0-A020\x00\x00', + b'46114-3W0-A050\x00\x00', + ], + }, + CAR.ACURA_ILX: { + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TX6-A010\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-TV9-A140\x00\x00', + b'36161-TX6-A030\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TX6-A230\x00\x00', + b'77959-TX6-C210\x00\x00', + ], + }, + CAR.HONDA_E: { + (Ecu.eps, 0x18da30f1, None): [ + b'39990-TYF-N030\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-TYF-E140\x00\x00', + ], + (Ecu.shiftByWire, 0x18da0bf1, None): [ + b'54008-TYF-E010\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-TYF-G430\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36802-TYF-E030\x00\x00', + ], + (Ecu.fwdCamera, 0x18dab5f1, None): [ + b'36161-TYF-E020\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-TYF-E030\x00\x00', + ], + }, + CAR.HONDA_CIVIC_2022: { + (Ecu.eps, 0x18da30f1, None): [ + b'39990-T24-T120\x00\x00', + b'39990-T38-A040\x00\x00', + b'39990-T39-A130\x00\x00', + b'39990-T43-J020\x00\x00', + b'39990-T60-J030\x00\x00', + b'39990-T56-A040\x00\x00', + b'39990-T50-J030\x00\x00', + ], + (Ecu.gateway, 0x18daeff1, None): [ + b'38897-T20-A020\x00\x00', + b'38897-T20-A210\x00\x00', + b'38897-T20-A310\x00\x00', + b'38897-T20-A510\x00\x00', + b'38897-T21-A010\x00\x00', + b'38897-T22-A110\x00\x00', + b'38897-T24-Z120\x00\x00', + b'38897-T60-A110\x00\x00', + b'38897-T61-A320\x00\x00', + b'38897-T50-E310\x00\x00', + ], + (Ecu.srs, 0x18da53f1, None): [ + b'77959-T20-A970\x00\x00', + b'77959-T20-A980\x00\x00', + b'77959-T20-M820\x00\x00', + b'77959-T39-A910\x00\x00', + b'77959-T47-A940\x00\x00', + b'77959-T47-A950\x00\x00', + b'77959-T60-A920\x00\x00', + b'77959-T61-A920\x00\x00', + b'77959-T50-G930\x00\x00', + b'77959-T65-A920\x00\x00', + ], + (Ecu.fwdRadar, 0x18dab0f1, None): [ + b'36161-T20-A060\x00\x00', + b'36161-T20-A070\x00\x00', + b'36161-T20-A080\x00\x00', + b'36161-T24-T070\x00\x00', + b'36161-T38-A060\x00\x00', + b'36161-T47-A050\x00\x00', + b'36161-T47-A070\x00\x00', + b'8S102-T20-AA10\x00\x00', + b'8S102-T47-AA10\x00\x00', + b'8S102-T60-AA10\x00\x00', + b'8S102-T56-A060\x00\x00', + b'8S102-T50-EA10\x00\x00', + b'8S102-T64-A040\x00\x00', + ], + (Ecu.vsa, 0x18da28f1, None): [ + b'57114-T20-AB40\x00\x00', + b'57114-T24-TB30\x00\x00', + b'57114-T38-AA20\x00\x00', + b'57114-T43-JB30\x00\x00', + b'57114-T60-AA20\x00\x00', + b'57114-T61-AJ30\x00\x00', + b'57114-T50-JC20\x00\x00', + ], + (Ecu.transmission, 0x18da1ef1, None): [ + b'28101-65D-A020\x00\x00', + b'28101-65D-A120\x00\x00', + b'28101-65H-A020\x00\x00', + b'28101-65H-A120\x00\x00', + b'28101-65J-N010\x00\x00', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/honda/hondacan.py b/opendbc_repo/opendbc/car/honda/hondacan.py new file mode 100644 index 0000000000..fbfa37827f --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/hondacan.py @@ -0,0 +1,229 @@ +from opendbc.car import CanBusBase +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.honda.values import HondaFlags, HONDA_BOSCH, HONDA_BOSCH_RADARLESS, CAR, CarControllerParams + +# CAN bus layout with relay +# 0 = ACC-CAN - radar side +# 1 = F-CAN B - powertrain +# 2 = ACC-CAN - camera side +# 3 = F-CAN A - OBDII port + + +class CanBus(CanBusBase): + def __init__(self, CP=None, fingerprint=None) -> None: + # use fingerprint if specified + super().__init__(CP if fingerprint is None else None, fingerprint) + + if CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS): + self._pt, self._radar = self.offset + 1, self.offset + # normally steering commands are sent to radar, which forwards them to powertrain bus + # when radar is disabled, steering commands are sent directly to powertrain bus + self._lkas = self._pt if CP.openpilotLongitudinalControl else self._radar + else: + self._pt, self._radar, self._lkas = self.offset, self.offset + 1, self.offset + + @property + def pt(self) -> int: + return self._pt + + @property + def radar(self) -> int: + return self._radar + + @property + def camera(self) -> int: + return self.offset + 2 + + @property + def lkas(self) -> int: + return self._lkas + + # B-CAN is forwarded to ACC-CAN radar side (CAN 0 on fake ethernet port) + @property + def body(self) -> int: + return self.offset + + +def get_cruise_speed_conversion(car_fingerprint: str, is_metric: bool) -> float: + # on certain cars, CRUISE_SPEED changes to imperial with car's unit setting + return CV.MPH_TO_MS if car_fingerprint in HONDA_BOSCH_RADARLESS and not is_metric else CV.KPH_TO_MS + + +def create_brake_command(packer, CAN, apply_brake, pump_on, pcm_override, pcm_cancel_cmd, fcw, car_fingerprint, stock_brake): + # TODO: do we loose pressure if we keep pump off for long? + brakelights = apply_brake > 0 + brake_rq = apply_brake > 0 + pcm_fault_cmd = False + + values = { + "COMPUTER_BRAKE": apply_brake, + "BRAKE_PUMP_REQUEST": pump_on, + "CRUISE_OVERRIDE": pcm_override, + "CRUISE_FAULT_CMD": pcm_fault_cmd, + "CRUISE_CANCEL_CMD": pcm_cancel_cmd, + "COMPUTER_BRAKE_REQUEST": brake_rq, + "SET_ME_1": 1, + "BRAKE_LIGHTS": brakelights, + "CHIME": stock_brake["CHIME"] if fcw else 0, # send the chime for stock fcw + "FCW": fcw << 1, # TODO: Why are there two bits for fcw? + "AEB_REQ_1": 0, + "AEB_REQ_2": 0, + "AEB_STATUS": 0, + } + return packer.make_can_msg("BRAKE_COMMAND", CAN.pt, values) + + +def create_acc_commands(packer, CAN, enabled, active, accel, gas, stopping_counter, car_fingerprint): + commands = [] + min_gas_accel = CarControllerParams.BOSCH_GAS_LOOKUP_BP[0] + + control_on = 5 if enabled else 0 + gas_command = gas if active and accel > min_gas_accel else -30000 + accel_command = accel if active else 0 + braking = 1 if active and accel < min_gas_accel else 0 + standstill = 1 if active and stopping_counter > 0 else 0 + standstill_release = 1 if active and stopping_counter == 0 else 0 + + # common ACC_CONTROL values + acc_control_values = { + 'ACCEL_COMMAND': accel_command, + 'STANDSTILL': standstill, + } + + if car_fingerprint in HONDA_BOSCH_RADARLESS: + acc_control_values.update({ + "CONTROL_ON": enabled, + "IDLESTOP_ALLOW": stopping_counter > 200, # allow idle stop after 4 seconds (50 Hz) + }) + else: + acc_control_values.update({ + # setting CONTROL_ON causes car to set POWERTRAIN_DATA->ACC_STATUS = 1 + "CONTROL_ON": control_on, + "GAS_COMMAND": gas_command, # used for gas + "BRAKE_LIGHTS": braking, + "BRAKE_REQUEST": braking, + "STANDSTILL_RELEASE": standstill_release, + }) + acc_control_on_values = { + "SET_TO_3": 0x03, + "CONTROL_ON": enabled, + "SET_TO_FF": 0xff, + "SET_TO_75": 0x75, + "SET_TO_30": 0x30, + } + commands.append(packer.make_can_msg("ACC_CONTROL_ON", CAN.pt, acc_control_on_values)) + + commands.append(packer.make_can_msg("ACC_CONTROL", CAN.pt, acc_control_values)) + return commands + + +def create_steering_control(packer, CAN, apply_torque, lkas_active): + values = { + "STEER_TORQUE": apply_torque if lkas_active else 0, + "STEER_TORQUE_REQUEST": lkas_active, + } + return packer.make_can_msg("STEERING_CONTROL", CAN.lkas, values) + + +def create_bosch_supplemental_1(packer, CAN): + # non-active params + values = { + "SET_ME_X04": 0x04, + "SET_ME_X80": 0x80, + "SET_ME_X10": 0x10, + } + return packer.make_can_msg("BOSCH_SUPPLEMENTAL_1", CAN.lkas, values) + + +def create_ui_commands(packer, CAN, CP, enabled, pcm_speed, hud, is_metric, acc_hud, lkas_hud): + commands = [] + radar_disabled = CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and CP.openpilotLongitudinalControl + + if CP.openpilotLongitudinalControl: + acc_hud_values = { + 'CRUISE_SPEED': hud.v_cruise, + 'ENABLE_MINI_CAR': 1 if enabled else 0, + # only moves the lead car without ACC_ON + 'HUD_DISTANCE': hud.lead_distance_bars, # wraps to 0 at 4 bars + 'IMPERIAL_UNIT': int(not is_metric), + 'HUD_LEAD': 2 if enabled and hud.lead_visible else 1 if enabled else 0, + 'SET_ME_X01_2': 1, + } + + if CP.carFingerprint in HONDA_BOSCH: + acc_hud_values['ACC_ON'] = int(enabled) + acc_hud_values['FCM_OFF'] = 1 + acc_hud_values['FCM_OFF_2'] = 1 + else: + # Shows the distance bars, TODO: stock camera shows updates temporarily while disabled + acc_hud_values['ACC_ON'] = int(enabled) + acc_hud_values['PCM_SPEED'] = pcm_speed * CV.MS_TO_KPH + acc_hud_values['PCM_GAS'] = hud.pcm_accel + acc_hud_values['SET_ME_X01'] = 1 + acc_hud_values['FCM_OFF'] = acc_hud['FCM_OFF'] + acc_hud_values['FCM_OFF_2'] = acc_hud['FCM_OFF_2'] + acc_hud_values['FCM_PROBLEM'] = acc_hud['FCM_PROBLEM'] + acc_hud_values['ICONS'] = acc_hud['ICONS'] + commands.append(packer.make_can_msg("ACC_HUD", CAN.pt, acc_hud_values)) + + lkas_hud_values = { + 'SET_ME_X41': 0x41, + 'STEERING_REQUIRED': hud.steer_required, + 'SOLID_LANES': hud.lanes_visible, + 'BEEP': 0, + } + + if CP.carFingerprint in HONDA_BOSCH_RADARLESS: + lkas_hud_values['LANE_LINES'] = 3 + lkas_hud_values['DASHED_LANES'] = hud.lanes_visible + # car likely needs to see LKAS_PROBLEM fall within a specific time frame, so forward from camera + lkas_hud_values['LKAS_PROBLEM'] = lkas_hud['LKAS_PROBLEM'] + + if not (CP.flags & HondaFlags.BOSCH_EXT_HUD): + lkas_hud_values['SET_ME_X48'] = 0x48 + + if CP.flags & HondaFlags.BOSCH_EXT_HUD and not CP.openpilotLongitudinalControl: + commands.append(packer.make_can_msg('LKAS_HUD_A', CAN.lkas, lkas_hud_values)) + commands.append(packer.make_can_msg('LKAS_HUD_B', CAN.lkas, lkas_hud_values)) + else: + commands.append(packer.make_can_msg('LKAS_HUD', CAN.lkas, lkas_hud_values)) + + if radar_disabled: + radar_hud_values = { + 'CMBS_OFF': 0x01, + 'SET_TO_1': 0x01, + } + commands.append(packer.make_can_msg('RADAR_HUD', CAN.pt, radar_hud_values)) + + if CP.carFingerprint == CAR.HONDA_CIVIC_BOSCH: + commands.append(packer.make_can_msg("LEGACY_BRAKE_COMMAND", CAN.pt, {})) + + return commands + + +def spam_buttons_command(packer, CAN, button_val, car_fingerprint): + values = { + 'CRUISE_BUTTONS': button_val, + 'CRUISE_SETTING': 0, + } + # send buttons to camera on radarless cars + bus = CAN.camera if car_fingerprint in HONDA_BOSCH_RADARLESS else CAN.pt + return packer.make_can_msg("SCM_BUTTONS", bus, values) + + +def honda_checksum(address: int, sig, d: bytearray) -> int: + s = 0 + extended = address > 0x7FF + addr = address + while addr: + s += addr & 0xF + addr >>= 4 + for i in range(len(d)): + x = d[i] + if i == len(d) - 1: + x >>= 4 + s += (x & 0xF) + (x >> 4) + s = 8 - s + if extended: + s += 3 + return s & 0xF diff --git a/opendbc_repo/opendbc/car/honda/interface.py b/opendbc_repo/opendbc/car/honda/interface.py new file mode 100755 index 0000000000..f7560b5e44 --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/interface.py @@ -0,0 +1,228 @@ +#!/usr/bin/env python3 +import numpy as np +from opendbc.car import get_safety_config, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.disable_ecu import disable_ecu +from opendbc.car.honda.hondacan import CanBus +from opendbc.car.honda.values import CarControllerParams, HondaFlags, CAR, HONDA_BOSCH, \ + HONDA_NIDEC_ALT_SCM_MESSAGES, HONDA_BOSCH_RADARLESS, HondaSafetyFlags +from opendbc.car.honda.carcontroller import CarController +from opendbc.car.honda.carstate import CarState +from opendbc.car.honda.radar_interface import RadarInterface +from opendbc.car.interfaces import CarInterfaceBase + +TransmissionType = structs.CarParams.TransmissionType + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def get_pid_accel_limits(CP, current_speed, cruise_speed): + if CP.carFingerprint in HONDA_BOSCH: + return CarControllerParams.BOSCH_ACCEL_MIN, CarControllerParams.BOSCH_ACCEL_MAX + else: + # NIDECs don't allow acceleration near cruise_speed, + # so limit limits of pid to prevent windup + ACCEL_MAX_VALS = [CarControllerParams.NIDEC_ACCEL_MAX, 0.2] + ACCEL_MAX_BP = [cruise_speed - 2., cruise_speed - .2] + return CarControllerParams.NIDEC_ACCEL_MIN, np.interp(current_speed, ACCEL_MAX_BP, ACCEL_MAX_VALS) + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "honda" + + CAN = CanBus(ret, fingerprint) + + if candidate in HONDA_BOSCH: + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hondaBosch)] + ret.radarUnavailable = True + # Disable the radar and let openpilot control longitudinal + # WARNING: THIS DISABLES AEB! + # If Bosch radarless, this blocks ACC messages from the camera + ret.alphaLongitudinalAvailable = True + ret.openpilotLongitudinalControl = alpha_long + ret.pcmCruise = not ret.openpilotLongitudinalControl + else: + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hondaNidec)] + ret.openpilotLongitudinalControl = True + + ret.pcmCruise = True + + if candidate == CAR.HONDA_CRV_5G: + ret.enableBsm = 0x12f8bfa7 in fingerprint[CAN.radar] + + # Detect Bosch cars with new HUD msgs + if any(0x33DA in f for f in fingerprint.values()): + ret.flags |= HondaFlags.BOSCH_EXT_HUD.value + + # Accord ICE 1.5T CVT has different gearbox message + if candidate == CAR.HONDA_ACCORD and 0x191 in fingerprint[CAN.pt]: + ret.transmissionType = TransmissionType.cvt + # Civic Type R is missing 0x191 and 0x1A3 + elif candidate == CAR.HONDA_CIVIC_2022 and all(msg not in fingerprint[CAN.pt] for msg in (0x191, 0x1A3)): + ret.transmissionType = TransmissionType.manual + # New Civics dont have 0x191, but do have 0x1A3 + elif candidate == CAR.HONDA_CIVIC_2022 and 0x1A3 in fingerprint[CAN.pt]: + ret.transmissionType = TransmissionType.cvt + + # Certain Hondas have an extra steering sensor at the bottom of the steering rack, + # which improves controls quality as it removes the steering column torsion from feedback. + # Tire stiffness factor fictitiously lower if it includes the steering column torsion effect. + # For modeling details, see p.198-200 in "The Science of Vehicle Dynamics (2014), M. Guiggiani" + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0], [0]] + ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0.], [0.]] + ret.lateralTuning.pid.kf = 0.00006 # conservative feed-forward + + if candidate in HONDA_BOSCH: + ret.longitudinalActuatorDelay = 0.5 # s + if candidate in HONDA_BOSCH_RADARLESS: + ret.stopAccel = CarControllerParams.BOSCH_ACCEL_MIN # stock uses -4.0 m/s^2 once stopped but limited by safety model + else: + # default longitudinal tuning for all hondas + ret.longitudinalTuning.kiBP = [0., 5., 35.] + ret.longitudinalTuning.kiV = [1.2, 0.8, 0.5] + + eps_modified = False + for fw in car_fw: + if fw.ecu == "eps" and b"," in fw.fwVersion: + eps_modified = True + + if candidate == CAR.HONDA_CIVIC: + if eps_modified: + # stock request input values: 0x0000, 0x00DE, 0x014D, 0x01EF, 0x0290, 0x0377, 0x0454, 0x0610, 0x06EE + # stock request output values: 0x0000, 0x0917, 0x0DC5, 0x1017, 0x119F, 0x140B, 0x1680, 0x1680, 0x1680 + # modified request output values: 0x0000, 0x0917, 0x0DC5, 0x1017, 0x119F, 0x140B, 0x1680, 0x2880, 0x3180 + # stock filter output values: 0x009F, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108 + # modified filter output values: 0x009F, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0108, 0x0400, 0x0480 + # note: max request allowed is 4096, but request is capped at 3840 in firmware, so modifications result in 2x max + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560, 8000], [0, 2560, 3840]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.3], [0.1]] + else: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560], [0, 2560]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[1.1], [0.33]] + + elif candidate in (CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CIVIC_BOSCH_DIESEL, CAR.HONDA_CIVIC_2022): + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] + + elif candidate == CAR.HONDA_ACCORD: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + + if eps_modified: + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.3], [0.09]] + else: + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] + + elif candidate == CAR.ACURA_ILX: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 3840], [0, 3840]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] + + elif candidate in (CAR.HONDA_CRV, CAR.HONDA_CRV_EU): + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 1000], [0, 1000]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] + ret.wheelSpeedFactor = 1.025 + + elif candidate == CAR.HONDA_CRV_5G: + if eps_modified: + # stock request input values: 0x0000, 0x00DB, 0x01BB, 0x0296, 0x0377, 0x0454, 0x0532, 0x0610, 0x067F + # stock request output values: 0x0000, 0x0500, 0x0A15, 0x0E6D, 0x1100, 0x1200, 0x129A, 0x134D, 0x1400 + # modified request output values: 0x0000, 0x0500, 0x0A15, 0x0E6D, 0x1100, 0x1200, 0x1ACD, 0x239A, 0x2800 + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 2560, 10000], [0, 2560, 3840]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.21], [0.07]] + else: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 3840], [0, 3840]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.64], [0.192]] + ret.wheelSpeedFactor = 1.025 + + elif candidate == CAR.HONDA_CRV_HYBRID: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] + ret.wheelSpeedFactor = 1.025 + + elif candidate == CAR.HONDA_FIT: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2], [0.05]] + + elif candidate == CAR.HONDA_FREED: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2], [0.05]] + + elif candidate in (CAR.HONDA_HRV, CAR.HONDA_HRV_3G): + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] + if candidate == CAR.HONDA_HRV: + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.16], [0.025]] + ret.wheelSpeedFactor = 1.025 + else: + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] # TODO: can probably use some tuning + + elif candidate == CAR.ACURA_RDX: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 1000], [0, 1000]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.8], [0.24]] + + elif candidate == CAR.ACURA_RDX_3G: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 3840], [0, 3840]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2], [0.06]] + + elif candidate in (CAR.HONDA_ODYSSEY, CAR.HONDA_ODYSSEY_CHN): + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.28], [0.08]] + if candidate == CAR.HONDA_ODYSSEY_CHN: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 32767], [0, 32767]] # TODO: determine if there is a dead zone at the top end + else: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + + elif candidate == CAR.HONDA_PILOT: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.38], [0.11]] + + elif candidate == CAR.HONDA_RIDGELINE: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.38], [0.11]] + + elif candidate == CAR.HONDA_INSIGHT: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] + + elif candidate == CAR.HONDA_E: + ret.lateralParams.torqueBP, ret.lateralParams.torqueV = [[0, 4096], [0, 4096]] # TODO: determine if there is a dead zone at the top end + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.6], [0.18]] # TODO: can probably use some tuning + + else: + raise ValueError(f"unsupported car {candidate}") + + # These cars use alternate user brake msg (0x1BE) + # TODO: Only detect feature for Accord/Accord Hybrid, not all Bosch DBCs have BRAKE_MODULE + if 0x1BE in fingerprint[CAN.pt] and candidate in (CAR.HONDA_ACCORD, CAR.HONDA_HRV_3G): + ret.flags |= HondaFlags.BOSCH_ALT_BRAKE.value + + if ret.flags & HondaFlags.BOSCH_ALT_BRAKE: + ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.ALT_BRAKE.value + + # These cars use alternate SCM messages (SCM_FEEDBACK AND SCM_BUTTON) + if candidate in HONDA_NIDEC_ALT_SCM_MESSAGES: + ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.NIDEC_ALT.value + + if ret.openpilotLongitudinalControl and candidate in HONDA_BOSCH: + ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.BOSCH_LONG.value + + if candidate in HONDA_BOSCH_RADARLESS: + ret.safetyConfigs[0].safetyParam |= HondaSafetyFlags.RADARLESS.value + + # min speed to enable ACC. if car can do stop and go, then set enabling speed + # to a negative value, so it won't matter. Otherwise, add 0.5 mph margin to not + # conflict with PCM acc + ret.autoResumeSng = candidate in (HONDA_BOSCH | {CAR.HONDA_CIVIC}) + ret.minEnableSpeed = -1. if ret.autoResumeSng else 25.51 * CV.MPH_TO_MS + + ret.steerActuatorDelay = 0.1 + ret.steerLimitTimer = 0.8 + ret.radarDelay = 0.1 + + return ret + + @staticmethod + def init(CP, can_recv, can_send): + if CP.carFingerprint in (HONDA_BOSCH - HONDA_BOSCH_RADARLESS) and CP.openpilotLongitudinalControl: + disable_ecu(can_recv, can_send, bus=CanBus(CP).pt, addr=0x18DAB0F1, com_cont_req=b'\x28\x83\x03') diff --git a/opendbc_repo/opendbc/car/honda/radar_interface.py b/opendbc_repo/opendbc/car/honda/radar_interface.py new file mode 100755 index 0000000000..a4ef42e7ca --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/radar_interface.py @@ -0,0 +1,80 @@ +#!/usr/bin/env python3 +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import RadarInterfaceBase +from opendbc.car.honda.values import DBC + + +def _create_nidec_can_parser(car_fingerprint): + radar_messages = [0x400] + list(range(0x430, 0x43A)) + list(range(0x440, 0x446)) + messages = [(m, 20) for m in radar_messages] + return CANParser(DBC[car_fingerprint][Bus.radar], messages, 1) + + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + self.track_id = 0 + self.radar_fault = False + self.radar_wrong_config = False + self.radar_off_can = CP.radarUnavailable + + # Nidec + if self.radar_off_can: + self.rcp = None + else: + self.rcp = _create_nidec_can_parser(CP.carFingerprint) + self.trigger_msg = 0x445 + self.updated_messages = set() + + def update(self, can_strings): + # in Bosch radar and we are only steering for now, so sleep 0.05s to keep + # radard at 20Hz and return no points + if self.radar_off_can: + return super().update(None) + + vls = self.rcp.update(can_strings) + self.updated_messages.update(vls) + + if self.trigger_msg not in self.updated_messages: + return None + + rr = self._update(self.updated_messages) + self.updated_messages.clear() + return rr + + def _update(self, updated_messages): + ret = structs.RadarData() + + for ii in sorted(updated_messages): + cpt = self.rcp.vl[ii] + if ii == 0x400: + # check for radar faults + self.radar_fault = cpt['RADAR_STATE'] != 0x79 + self.radar_wrong_config = cpt['RADAR_STATE'] == 0x69 + elif cpt['LONG_DIST'] < 255: + if ii not in self.pts or cpt['NEW_TRACK']: + self.pts[ii] = structs.RadarData.RadarPoint() + self.pts[ii].trackId = self.track_id + self.track_id += 1 + self.pts[ii].dRel = cpt['LONG_DIST'] # from front of car + self.pts[ii].yRel = -cpt['LAT_DIST'] # in car frame's y axis, left is positive + self.pts[ii].vRel = cpt['REL_SPEED'] + self.pts[ii].vLead = self.pts[ii].vRel + self.v_ego + self.pts[ii].aRel = float('nan') + self.pts[ii].yvRel = 0# float('nan') + self.pts[ii].measured = True + else: + if ii in self.pts: + del self.pts[ii] + + if not self.rcp.can_valid: + ret.errors.canError = True + if self.radar_fault: + ret.errors.radarFault = True + if self.radar_wrong_config: + ret.errors.wrongConfig = True + + ret.points = list(self.pts.values()) + + return ret diff --git a/opendbc_repo/opendbc/car/honda/tests/__init__.py b/opendbc_repo/opendbc/car/honda/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/honda/tests/test_honda.py b/opendbc_repo/opendbc/car/honda/tests/test_honda.py new file mode 100644 index 0000000000..946f496d10 --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/tests/test_honda.py @@ -0,0 +1,14 @@ +import re + +from opendbc.car.honda.fingerprints import FW_VERSIONS + +HONDA_FW_VERSION_RE = br"[A-Z0-9]{5}-[A-Z0-9]{3}(-|,)[A-Z0-9]{4}(\x00){2}$" + + +class TestHondaFingerprint: + def test_fw_version_format(self): + # Asserts all FW versions follow an expected format + for fw_by_ecu in FW_VERSIONS.values(): + for fws in fw_by_ecu.values(): + for fw in fws: + assert re.match(HONDA_FW_VERSION_RE, fw) is not None, fw diff --git a/opendbc_repo/opendbc/car/honda/values.py b/opendbc_repo/opendbc/car/honda/values.py new file mode 100644 index 0000000000..0e4b5f01db --- /dev/null +++ b/opendbc_repo/opendbc/car/honda/values.py @@ -0,0 +1,347 @@ +from dataclasses import dataclass +from enum import Enum, IntFlag + +from opendbc.car import Bus, CarSpecs, PlatformConfig, Platforms, structs, uds +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries, p16 + +Ecu = structs.CarParams.Ecu +VisualAlert = structs.CarControl.HUDControl.VisualAlert +GearShifter = structs.CarState.GearShifter + +class CarControllerParams: + # Allow small margin below -3.5 m/s^2 from ISO 15622:2018 since we + # perform the closed loop control, and might need some + # to apply some more braking if we're on a downhill slope. + # Our controller should still keep the 2 second average above + # -3.5 m/s^2 as per planner limits + NIDEC_ACCEL_MIN = -4.0 # m/s^2 + NIDEC_ACCEL_MAX = 1.6 # m/s^2, lower than 2.0 m/s^2 for tuning reasons + + NIDEC_ACCEL_LOOKUP_BP = [-1., 0., .6] + NIDEC_ACCEL_LOOKUP_V = [-4.8, 0., 2.0] + + NIDEC_MAX_ACCEL_V = [0.5, 2.4, 1.4, 0.6] + NIDEC_MAX_ACCEL_BP = [0.0, 4.0, 10., 20.] + + NIDEC_GAS_MAX = 198 # 0xc6 + NIDEC_BRAKE_MAX = 1024 // 4 + + BOSCH_ACCEL_MIN = -3.5 # m/s^2 + BOSCH_ACCEL_MAX = 2.0 # m/s^2 + + BOSCH_GAS_LOOKUP_BP = [-0.2, 2.0] # 2m/s^2 + BOSCH_GAS_LOOKUP_V = [0, 1600] + + STEER_STEP = 1 # 100 Hz + STEER_DELTA_UP = 3 # min/max in 0.33s for all Honda + STEER_DELTA_DOWN = 3 + + def __init__(self, CP): + self.STEER_MAX = CP.lateralParams.torqueBP[-1] + # mirror of list (assuming first item is zero) for interp of signed request values + assert(CP.lateralParams.torqueBP[0] == 0) + assert(CP.lateralParams.torqueBP[0] == 0) + self.STEER_LOOKUP_BP = [v * -1 for v in CP.lateralParams.torqueBP][1:][::-1] + list(CP.lateralParams.torqueBP) + self.STEER_LOOKUP_V = [v * -1 for v in CP.lateralParams.torqueV][1:][::-1] + list(CP.lateralParams.torqueV) + + +class HondaSafetyFlags(IntFlag): + ALT_BRAKE = 1 + BOSCH_LONG = 2 + NIDEC_ALT = 4 + RADARLESS = 8 + + +class HondaFlags(IntFlag): + # Detected flags + # Bosch models with alternate set of LKAS_HUD messages + BOSCH_EXT_HUD = 1 + BOSCH_ALT_BRAKE = 2 + + # Static flags + BOSCH = 4 + BOSCH_RADARLESS = 8 + + NIDEC = 16 + NIDEC_ALT_PCM_ACCEL = 32 + NIDEC_ALT_SCM_MESSAGES = 64 + + +# Car button codes +class CruiseButtons: + RES_ACCEL = 4 + DECEL_SET = 3 + CANCEL = 2 + MAIN = 1 + + +class CruiseSettings: + DISTANCE = 3 + LKAS = 1 + + +# See dbc files for info on values +VISUAL_HUD = { + VisualAlert.none: 0, + VisualAlert.fcw: 1, + VisualAlert.steerRequired: 1, + VisualAlert.ldw: 1, + VisualAlert.brakePressed: 10, + VisualAlert.wrongGear: 6, + VisualAlert.seatbeltUnbuckled: 5, + VisualAlert.speedTooHigh: 8 +} + + +@dataclass +class HondaCarDocs(CarDocs): + package: str = "Honda Sensing" + + def init_make(self, CP: structs.CarParams): + if CP.flags & HondaFlags.BOSCH: + self.car_parts = CarParts.common([CarHarness.bosch_b]) if CP.flags & HondaFlags.BOSCH_RADARLESS else CarParts.common([CarHarness.bosch_a]) + else: + self.car_parts = CarParts.common([CarHarness.nidec]) + + +class Footnote(Enum): + CIVIC_DIESEL = CarFootnote( + "2019 Honda Civic 1.6L Diesel Sedan does not have ALC below 12mph.", + Column.FSR_STEERING) + + +class HondaBoschPlatformConfig(PlatformConfig): + def init(self): + self.flags |= HondaFlags.BOSCH + + +class HondaNidecPlatformConfig(PlatformConfig): + def init(self): + self.flags |= HondaFlags.NIDEC + + +def radar_dbc_dict(pt_dict): + return {Bus.pt: pt_dict, Bus.radar: 'acura_ilx_2016_nidec'} + + +class CAR(Platforms): + # Bosch Cars + HONDA_ACCORD = HondaBoschPlatformConfig( + [ + HondaCarDocs("Honda Accord 2018-22", "All", video="https://www.youtube.com/watch?v=mrUwlj3Mi58", min_steer_speed=3. * CV.MPH_TO_MS), + HondaCarDocs("Honda Inspire 2018", "All", min_steer_speed=3. * CV.MPH_TO_MS), + HondaCarDocs("Honda Accord Hybrid 2018-22", "All", min_steer_speed=3. * CV.MPH_TO_MS), + ], + # steerRatio: 11.82 is spec end-to-end + CarSpecs(mass=3279 * CV.LB_TO_KG, wheelbase=2.83, steerRatio=16.33, centerToFrontRatio=0.39, tireStiffnessFactor=0.8467), + {Bus.pt: 'honda_accord_2018_can_generated'}, + ) + HONDA_CIVIC_BOSCH = HondaBoschPlatformConfig( + [ + HondaCarDocs("Honda Civic 2019-21", "All", video="https://www.youtube.com/watch?v=4Iz1Mz5LGF8", + footnotes=[Footnote.CIVIC_DIESEL], min_steer_speed=2. * CV.MPH_TO_MS), + HondaCarDocs("Honda Civic Hatchback 2017-21", min_steer_speed=12. * CV.MPH_TO_MS), + ], + CarSpecs(mass=1326, wheelbase=2.7, steerRatio=15.38, centerToFrontRatio=0.4), # steerRatio: 10.93 is end-to-end spec + {Bus.pt: 'honda_civic_hatchback_ex_2017_can_generated'}, + ) + HONDA_CIVIC_BOSCH_DIESEL = HondaBoschPlatformConfig( + [], # don't show in docs + HONDA_CIVIC_BOSCH.specs, + {Bus.pt: 'honda_accord_2018_can_generated'}, + ) + HONDA_CIVIC_2022 = HondaBoschPlatformConfig( + [ + HondaCarDocs("Honda Civic 2022-24", "All", video="https://youtu.be/ytiOT5lcp6Q"), + HondaCarDocs("Honda Civic Hatchback 2022-24", "All", video="https://youtu.be/ytiOT5lcp6Q"), + HondaCarDocs("Honda Civic Hatchback Hybrid 2023 (Europe only)", "All"), + # TODO: Confirm 2024 + HondaCarDocs("Honda Civic Hatchback Hybrid 2025", "All"), + ], + HONDA_CIVIC_BOSCH.specs, + {Bus.pt: 'honda_civic_ex_2022_can_generated'}, + flags=HondaFlags.BOSCH_RADARLESS, + ) + HONDA_CRV_5G = HondaBoschPlatformConfig( + [HondaCarDocs("Honda CR-V 2017-22", min_steer_speed=12. * CV.MPH_TO_MS)], + # steerRatio: 12.3 is spec end-to-end + CarSpecs(mass=3410 * CV.LB_TO_KG, wheelbase=2.66, steerRatio=16.0, centerToFrontRatio=0.41, tireStiffnessFactor=0.677), + {Bus.pt: 'honda_crv_ex_2017_can_generated', Bus.body: 'honda_crv_ex_2017_body_generated'}, + flags=HondaFlags.BOSCH_ALT_BRAKE, + ) + HONDA_CRV_HYBRID = HondaBoschPlatformConfig( + [HondaCarDocs("Honda CR-V Hybrid 2017-22", min_steer_speed=12. * CV.MPH_TO_MS)], + # mass: mean of 4 models in kg, steerRatio: 12.3 is spec end-to-end + CarSpecs(mass=1667, wheelbase=2.66, steerRatio=16, centerToFrontRatio=0.41, tireStiffnessFactor=0.677), + {Bus.pt: 'honda_accord_2018_can_generated'}, + ) + HONDA_HRV_3G = HondaBoschPlatformConfig( + [HondaCarDocs("Honda HR-V 2023", "All")], + CarSpecs(mass=3125 * CV.LB_TO_KG, wheelbase=2.61, steerRatio=15.2, centerToFrontRatio=0.41, tireStiffnessFactor=0.5), + {Bus.pt: 'honda_civic_ex_2022_can_generated'}, + flags=HondaFlags.BOSCH_RADARLESS, + ) + ACURA_RDX_3G = HondaBoschPlatformConfig( + [HondaCarDocs("Acura RDX 2019-21", "All", min_steer_speed=3. * CV.MPH_TO_MS)], + CarSpecs(mass=4068 * CV.LB_TO_KG, wheelbase=2.75, steerRatio=11.95, centerToFrontRatio=0.41, tireStiffnessFactor=0.677), # as spec + {Bus.pt: 'acura_rdx_2020_can_generated'}, + flags=HondaFlags.BOSCH_ALT_BRAKE, + ) + HONDA_INSIGHT = HondaBoschPlatformConfig( + [HondaCarDocs("Honda Insight 2019-22", "All", min_steer_speed=3. * CV.MPH_TO_MS)], + CarSpecs(mass=2987 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=15.0, centerToFrontRatio=0.39, tireStiffnessFactor=0.82), # as spec + {Bus.pt: 'honda_insight_ex_2019_can_generated'}, + ) + HONDA_E = HondaBoschPlatformConfig( + [HondaCarDocs("Honda e 2020", "All", min_steer_speed=3. * CV.MPH_TO_MS)], + CarSpecs(mass=3338.8 * CV.LB_TO_KG, wheelbase=2.5, centerToFrontRatio=0.5, steerRatio=16.71, tireStiffnessFactor=0.82), + {Bus.pt: 'acura_rdx_2020_can_generated'}, + ) + + # Nidec Cars + ACURA_ILX = HondaNidecPlatformConfig( + [HondaCarDocs("Acura ILX 2016-19", "AcuraWatch Plus", min_steer_speed=25. * CV.MPH_TO_MS)], + CarSpecs(mass=3095 * CV.LB_TO_KG, wheelbase=2.67, steerRatio=18.61, centerToFrontRatio=0.37, tireStiffnessFactor=0.72), # 15.3 is spec end-to-end + radar_dbc_dict('acura_ilx_2016_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_CRV = HondaNidecPlatformConfig( + [HondaCarDocs("Honda CR-V 2015-16", "Touring Trim", min_steer_speed=12. * CV.MPH_TO_MS)], + CarSpecs(mass=3572 * CV.LB_TO_KG, wheelbase=2.62, steerRatio=16.89, centerToFrontRatio=0.41, tireStiffnessFactor=0.444), # as spec + radar_dbc_dict('honda_crv_touring_2016_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_CRV_EU = HondaNidecPlatformConfig( + [], # Euro version of CRV Touring, don't show in docs + HONDA_CRV.specs, + radar_dbc_dict('honda_crv_executive_2016_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_FIT = HondaNidecPlatformConfig( + [HondaCarDocs("Honda Fit 2018-20", min_steer_speed=12. * CV.MPH_TO_MS)], + CarSpecs(mass=2644 * CV.LB_TO_KG, wheelbase=2.53, steerRatio=13.06, centerToFrontRatio=0.39, tireStiffnessFactor=0.75), + radar_dbc_dict('honda_fit_ex_2018_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_FREED = HondaNidecPlatformConfig( + [HondaCarDocs("Honda Freed 2020", min_steer_speed=12. * CV.MPH_TO_MS)], + CarSpecs(mass=3086. * CV.LB_TO_KG, wheelbase=2.74, steerRatio=13.06, centerToFrontRatio=0.39, tireStiffnessFactor=0.75), # mostly copied from FIT + radar_dbc_dict('honda_fit_ex_2018_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_HRV = HondaNidecPlatformConfig( + [HondaCarDocs("Honda HR-V 2019-22", min_steer_speed=12. * CV.MPH_TO_MS)], + HONDA_HRV_3G.specs, + radar_dbc_dict('honda_fit_ex_2018_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_ODYSSEY = HondaNidecPlatformConfig( + [HondaCarDocs("Honda Odyssey 2018-20")], + CarSpecs(mass=1900, wheelbase=3.0, steerRatio=14.35, centerToFrontRatio=0.41, tireStiffnessFactor=0.82), + radar_dbc_dict('honda_odyssey_exl_2018_generated'), + flags=HondaFlags.NIDEC_ALT_PCM_ACCEL, + ) + HONDA_ODYSSEY_CHN = HondaNidecPlatformConfig( + [], # Chinese version of Odyssey, don't show in docs + HONDA_ODYSSEY.specs, + radar_dbc_dict('honda_odyssey_extreme_edition_2018_china_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + ACURA_RDX = HondaNidecPlatformConfig( + [HondaCarDocs("Acura RDX 2016-18", "AcuraWatch Plus", min_steer_speed=12. * CV.MPH_TO_MS)], + CarSpecs(mass=3925 * CV.LB_TO_KG, wheelbase=2.68, steerRatio=15.0, centerToFrontRatio=0.38, tireStiffnessFactor=0.444), # as spec + radar_dbc_dict('acura_rdx_2018_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_PILOT = HondaNidecPlatformConfig( + [ + HondaCarDocs("Honda Pilot 2016-22", min_steer_speed=12. * CV.MPH_TO_MS), + HondaCarDocs("Honda Passport 2019-25", "All", min_steer_speed=12. * CV.MPH_TO_MS), + ], + CarSpecs(mass=4278 * CV.LB_TO_KG, wheelbase=2.86, centerToFrontRatio=0.428, steerRatio=16.0, tireStiffnessFactor=0.444), # as spec + radar_dbc_dict('acura_ilx_2016_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_RIDGELINE = HondaNidecPlatformConfig( + [HondaCarDocs("Honda Ridgeline 2017-25", min_steer_speed=12. * CV.MPH_TO_MS)], + CarSpecs(mass=4515 * CV.LB_TO_KG, wheelbase=3.18, centerToFrontRatio=0.41, steerRatio=15.59, tireStiffnessFactor=0.444), # as spec + radar_dbc_dict('acura_ilx_2016_can_generated'), + flags=HondaFlags.NIDEC_ALT_SCM_MESSAGES, + ) + HONDA_CIVIC = HondaNidecPlatformConfig( + [HondaCarDocs("Honda Civic 2016-18", min_steer_speed=12. * CV.MPH_TO_MS, video="https://youtu.be/-IkImTe1NYE")], + CarSpecs(mass=1326, wheelbase=2.70, centerToFrontRatio=0.4, steerRatio=15.38), # 10.93 is end-to-end spec + radar_dbc_dict('honda_civic_touring_2016_can_generated'), + ) + + +HONDA_ALT_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(0xF112) +HONDA_ALT_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(0xF112) + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + # Currently used to fingerprint + Request( + [StdQueries.UDS_VERSION_REQUEST], + [StdQueries.UDS_VERSION_RESPONSE], + bus=1, + ), + + # Data collection requests: + # Log manufacturer-specific identifier for current ECUs + Request( + [HONDA_ALT_VERSION_REQUEST], + [HONDA_ALT_VERSION_RESPONSE], + bus=1, + logging=True, + ), + # Nidec PT bus + Request( + [StdQueries.UDS_VERSION_REQUEST], + [StdQueries.UDS_VERSION_RESPONSE], + bus=0, + ), + # Bosch PT bus + Request( + [StdQueries.UDS_VERSION_REQUEST], + [StdQueries.UDS_VERSION_RESPONSE], + bus=1, + obd_multiplexing=False, + ), + ], + # We lose these ECUs without the comma power on these cars. + # Note that we still attempt to match with them when they are present + # This is or'd with (ALL_ECUS - ESSENTIAL_ECUS) from fw_versions.py + non_essential_ecus={ + Ecu.eps: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC_2022, CAR.HONDA_E, CAR.HONDA_HRV_3G], + Ecu.vsa: [CAR.ACURA_RDX_3G, CAR.HONDA_ACCORD, CAR.HONDA_CIVIC, CAR.HONDA_CIVIC_BOSCH, CAR.HONDA_CIVIC_2022, CAR.HONDA_CRV_5G, CAR.HONDA_CRV_HYBRID, + CAR.HONDA_E, CAR.HONDA_HRV_3G, CAR.HONDA_INSIGHT], + }, + extra_ecus=[ + (Ecu.combinationMeter, 0x18da60f1, None), + (Ecu.programmedFuelInjection, 0x18da10f1, None), + # The only other ECU on PT bus accessible by camera on radarless Civic + # This is likely a manufacturer-specific sub-address implementation: the camera responds to this and 0x18dab0f1 + # Unclear what the part number refers to: 8S103 is 'Camera Set Mono', while 36160 is 'Camera Monocular - Honda' + # TODO: add query back, camera does not support querying both in parallel and 0x18dab0f1 often fails to respond + # (Ecu.unknown, 0x18DAB3F1, None), + ], +) + +STEER_THRESHOLD = { + # default is 1200, overrides go here + CAR.ACURA_RDX: 400, + CAR.HONDA_CRV_EU: 400, +} + +HONDA_NIDEC_ALT_PCM_ACCEL = CAR.with_flags(HondaFlags.NIDEC_ALT_PCM_ACCEL) +HONDA_NIDEC_ALT_SCM_MESSAGES = CAR.with_flags(HondaFlags.NIDEC_ALT_SCM_MESSAGES) +HONDA_BOSCH = CAR.with_flags(HondaFlags.BOSCH) +HONDA_BOSCH_RADARLESS = CAR.with_flags(HondaFlags.BOSCH_RADARLESS) + + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/hyundai/__init__.py b/opendbc_repo/opendbc/car/hyundai/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/hyundai/carcontroller.py b/opendbc_repo/opendbc/car/hyundai/carcontroller.py new file mode 100644 index 0000000000..777feb65fa --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/carcontroller.py @@ -0,0 +1,638 @@ +import numpy as np +from opendbc.can import CANPacker +from opendbc.car import Bus, DT_CTRL, apply_driver_steer_torque_limits, common_fault_avoidance, make_tester_present_msg, structs, apply_std_steer_angle_limits +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.hyundai import hyundaicanfd, hyundaican +from opendbc.car.hyundai.carstate import CarState +from opendbc.car.hyundai.hyundaicanfd import CanBus +from opendbc.car.hyundai.values import HyundaiFlags, Buttons, CarControllerParams, CAR, CAN_GEARS, HyundaiExtFlags +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.vehicle_model import VehicleModel + +VisualAlert = structs.CarControl.HUDControl.VisualAlert +LongCtrlState = structs.CarControl.Actuators.LongControlState + + +from openpilot.common.params import Params + +# EPS faults if you apply torque while the steering angle is above 90 degrees for more than 1 second +# All slightly below EPS thresholds to avoid fault +MAX_ANGLE = 85 +MAX_ANGLE_FRAMES = 89 +MAX_ANGLE_CONSECUTIVE_FRAMES = 2 + +vibrate_intervals = [ + (0.0, 0.5), + (1.0, 1.5), + #(2.5, 3.0), + #(3.5, 4.0), + (5.0, 5.5), + (6.0, 6.5), + (7.5, 8.0), +] + +def process_hud_alert(enabled, fingerprint, hud_control): + sys_warning = (hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw)) + + # initialize to no line visible + # TODO: this is not accurate for all cars + sys_state = 1 + if hud_control.leftLaneVisible and hud_control.rightLaneVisible or sys_warning: # HUD alert only display when LKAS status is active + sys_state = 3 if enabled or sys_warning else 4 + elif hud_control.leftLaneVisible: + sys_state = 5 + elif hud_control.rightLaneVisible: + sys_state = 6 + + # initialize to no warnings + left_lane_warning = 0 + right_lane_warning = 0 + if hud_control.leftLaneDepart: + left_lane_warning = 1 if fingerprint in (CAR.GENESIS_G90, CAR.GENESIS_G80) else 2 + if hud_control.rightLaneDepart: + right_lane_warning = 1 if fingerprint in (CAR.GENESIS_G90, CAR.GENESIS_G80) else 2 + + return sys_warning, sys_state, left_lane_warning, right_lane_warning + +def rate_limit(x, x_last, lo, hi): + return float(np.clip(x, x_last + lo, x_last + hi)) + +def apply_steer_angle_limits_physics(desired_sw_deg: float, + last_sw_deg: float, + v_ego: float, + steering_sw_deg: float, + lat_active: bool, + wheelbase_m: float, + steer_ratio: float, + steer_sw_max_deg: float) -> float: + max_lat_accel = 5.0 # m/s^2 + max_lat_jerk = 4.0 # m/s^3 + max_sw_rate_deg_per_tick = 2.0 # ★ EPS 보호용 상한 + + v = max(float(v_ego), 1.0) + + target_sw = float(np.clip(desired_sw_deg, -steer_sw_max_deg, steer_sw_max_deg)) + + target_rw = target_sw / steer_ratio + last_rw = float(last_sw_deg) / steer_ratio + + # --- accel limit --- + rw_max_rad = np.arctan((max_lat_accel * wheelbase_m) / (v * v)) + rw_max = float(np.degrees(rw_max_rad)) + + # --- jerk -> rate limit --- + sec2 = 1.2 + max_drw_dt = (max_lat_jerk * wheelbase_m) / (v * v * sec2) # rad/s + max_drw_per_tick = max_drw_dt * DT_CTRL # rad/tick + max_drw_per_tick_deg = float(np.degrees(max_drw_per_tick)) + + max_drw_per_tick_deg = min( + max_drw_per_tick_deg, + max_sw_rate_deg_per_tick / steer_ratio + ) + err = abs(target_sw - last_sw_deg) + if err > 20.0: + max_drw_per_tick_deg *= 0.5 + + # --- rate limit --- + cmd_rw = rate_limit(target_rw, last_rw, -max_drw_per_tick_deg, max_drw_per_tick_deg) + + # --- accel clip --- + cmd_rw = float(np.clip(cmd_rw, -rw_max, rw_max)) + + if not lat_active: + cmd_rw = float(steering_sw_deg) / steer_ratio + + cmd_sw = cmd_rw * steer_ratio + return float(np.clip(cmd_sw, -steer_sw_max_deg, steer_sw_max_deg)) + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.CAN = CanBus(CP) + self.params = CarControllerParams(CP) + self.packer = CANPacker(dbc_names[Bus.pt]) + self.angle_limit_counter = 0 + + self.accel_last = 0 + self.apply_torque_last = 0 + self.car_fingerprint = CP.carFingerprint + self.last_button_frame = 0 + + self.hyundai_jerk = HyundaiJerk() + self.speedCameraHapticEndFrame = 0 + self.hapticFeedbackWhenSpeedCamera = 0 + self.max_angle_frames = MAX_ANGLE_FRAMES + self.blinking_signal = False # 1Hz + self.blinking_frame = int(1.0 / DT_CTRL) + self.soft_hold_mode = 2 + + self.activateCruise = 0 + self.button_wait = 12 + self.cruise_buttons_msg_values = None + self.cruise_buttons_msg_cnt = 0 + self.button_spamming_count = 0 + self.prev_clu_speed = 0 + self.button_spam1 = 8 + self.button_spam2 = 30 + self.button_spam3 = 1 + + self.apply_angle_last = 0 + self.lkas_max_torque = 0 + self.angle_max_torque = 250 + + self.canfd_debug = 0 + self.MainMode_ACC_trigger = 0 + self.LFA_trigger = 0 + + self.activeCarrot = 0 + self.camera_scc_params = Params().get_int("HyundaiCameraSCC") + self.is_ldws_car = Params().get_bool("IsLdwsCar") + self.enable_corner_radar = 0 + + self.steerDeltaUpOrg = self.steerDeltaUp = self.steerDeltaUpLC = self.params.STEER_DELTA_UP + self.steerDeltaDownOrg = self.steerDeltaDown = self.steerDeltaDownLC = self.params.STEER_DELTA_DOWN + + def update(self, CC, CS, now_nanos): + + if self.frame % 50 == 0: + params = Params() + self.max_angle_frames = params.get_int("MaxAngleFrames") + steerMax = params.get_int("CustomSteerMax") + steerDeltaUp = params.get_int("CustomSteerDeltaUp") + steerDeltaDown = params.get_int("CustomSteerDeltaDown") + steerDeltaUpLC = params.get_int("CustomSteerDeltaUpLC") + steerDeltaDownLC = params.get_int("CustomSteerDeltaDownLC") + if steerMax > 0: + self.params.STEER_MAX = steerMax + if steerDeltaUp > 0: + self.steerDeltaUp = steerDeltaUp + #self.params.ANGLE_TORQUE_UP_RATE = steerDeltaUp + else: + self.steerDeltaUp = self.steerDeltaUpOrg + if steerDeltaDown > 0: + self.steerDeltaDown = steerDeltaDown + #self.params.ANGLE_TORQUE_DOWN_RATE = steerDeltaDown + else: + self.steerDeltaDown = self.steerDeltaDownOrg + + if steerDeltaUpLC > 0: + self.steerDeltaUpLC = steerDeltaUpLC + else: + self.steerDeltaUpLC = self.steerDeltaUp + if steerDeltaDownLC > 0: + self.steerDeltaDownLC = steerDeltaDownLC + else: + self.steerDeltaDownLC = self.steerDeltaDown + + self.soft_hold_mode = 1 if params.get_int("AutoCruiseControl") > 1 else 2 + self.hapticFeedbackWhenSpeedCamera = int(params.get_int("HapticFeedbackWhenSpeedCamera")) + + self.button_spam1 = params.get_int("CruiseButtonTest1") + self.button_spam2 = params.get_int("CruiseButtonTest2") + self.button_spam3 = params.get_int("CruiseButtonTest3") + self.speed_from_pcm = params.get_int("SpeedFromPCM") + + self.canfd_debug = params.get_int("CanfdDebug") + self.camera_scc_params = params.get_int("HyundaiCameraSCC") + self.enable_corner_radar = params.get_int("EnableCornerRadar") + + actuators = CC.actuators + hud_control = CC.hudControl + + if hud_control.modelDesire in [3,4]: + self.params.STEER_DELTA_UP = self.steerDeltaUpLC + self.params.STEER_DELTA_DOWN = self.steerDeltaDownLC + else: + self.params.STEER_DELTA_UP = self.steerDeltaUp + self.params.STEER_DELTA_DOWN = self.steerDeltaDown + + angle_control = self.CP.flags & HyundaiFlags.ANGLE_CONTROL + + # steering torque + new_torque = int(round(actuators.torque * self.params.STEER_MAX)) + apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.params) + + # >90 degree steering fault prevention + self.angle_limit_counter, apply_steer_req = common_fault_avoidance(abs(CS.out.steeringAngleDeg) >= MAX_ANGLE, CC.latActive, + self.angle_limit_counter, self.max_angle_frames, + MAX_ANGLE_CONSECUTIVE_FRAMES) + + #apply_angle = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgoRaw, + # CS.out.steeringAngleDeg, CC.latActive, self.params.ANGLE_LIMITS) + + apply_angle = apply_steer_angle_limits_physics( + actuators.steeringAngleDeg, + self.apply_angle_last, + CS.out.vEgoRaw, + CS.out.steeringAngleDeg, + CC.latActive, + self.CP.wheelbase, + self.CP.steerRatio, + self.params.ANGLE_LIMITS.STEER_ANGLE_MAX + ) + + + if angle_control: + apply_steer_req = CC.latActive + + if CS.out.steeringPressed: + #self.apply_angle_last = CS.out.steeringAngleDeg + self.lkas_max_torque = max(self.lkas_max_torque - 20, 25) + else: + target_torque = self.angle_max_torque + + max_steering_tq = self.params.STEER_DRIVER_ALLOWANCE * 0.7 + rate_ratio = max(20, max_steering_tq - abs(CS.out.steeringTorque)) / max_steering_tq + rate_up = self.params.ANGLE_TORQUE_UP_RATE * rate_ratio + rate_down = self.params.ANGLE_TORQUE_DOWN_RATE * rate_ratio + + if self.lkas_max_torque > target_torque: + self.lkas_max_torque = max(self.lkas_max_torque - rate_down, target_torque) + else: + self.lkas_max_torque = min(self.lkas_max_torque + rate_up, target_torque) + + + if not CC.latActive: + apply_torque = 0 + self.lkas_max_torque = 0 + + self.apply_angle_last = apply_angle + + # Hold torque with induced temporary fault when cutting the actuation bit + torque_fault = CC.latActive and not apply_steer_req + + self.apply_torque_last = apply_torque + + # accel + longitudinal + accel = float(np.clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) + stopping = actuators.longControlState == LongCtrlState.stopping + set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + + # HUD messages + sys_warning, sys_state, left_lane_warning, right_lane_warning = process_hud_alert(CC.enabled, self.car_fingerprint, + hud_control) + + active_speed_decel = hud_control.activeCarrot == 3 and self.activeCarrot != 3 # 3: Speed Decel + self.activeCarrot = hud_control.activeCarrot + if active_speed_decel and self.speedCameraHapticEndFrame < 0: # 과속카메라 감속시작 + self.speedCameraHapticEndFrame = self.frame + (8.0 / DT_CTRL) #8초간 켜줌. + elif not active_speed_decel: + self.speedCameraHapticEndFrame = -1 + + if 0 <= self.speedCameraHapticEndFrame - self.frame < int(8.0 / DT_CTRL) and self.hapticFeedbackWhenSpeedCamera > 0: + t = (self.frame - (self.speedCameraHapticEndFrame - int(8.0 / DT_CTRL))) * DT_CTRL + + for start, end in vibrate_intervals: + if start <= t < end: + left_lane_warning = right_lane_warning = self.hapticFeedbackWhenSpeedCamera + break + + if self.frame >= self.speedCameraHapticEndFrame: + self.speedCameraHapticEndFrame = -1 + + if self.frame % self.blinking_frame == 0: + self.blinking_signal = True + elif self.frame % self.blinking_frame == self.blinking_frame / 2: + self.blinking_signal = False + + + + can_sends = [] + + # *** common hyundai stuff *** + + # tester present - w/ no response (keeps relevant ECU disabled) + if self.frame % 100 == 0 and not (self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC) and self.CP.openpilotLongitudinalControl: + # for longitudinal control, either radar or ADAS driving ECU + addr, bus = 0x7d0, self.CAN.ECAN if self.CP.flags & HyundaiFlags.CANFD else 0 + if self.CP.flags & HyundaiFlags.CANFD_HDA2.value: + addr, bus = 0x730, self.CAN.ECAN + can_sends.append(make_tester_present_msg(addr, bus, suppress_response=True)) + + # for blinkers + if self.CP.flags & HyundaiFlags.ENABLE_BLINKERS: + can_sends.append(make_tester_present_msg(0x7b1, self.CAN.ECAN, suppress_response=True)) + + camera_scc = self.CP.flags & HyundaiFlags.CAMERA_SCC + # CAN-FD platforms + if self.CP.flags & HyundaiFlags.CANFD: + hda2 = self.CP.flags & HyundaiFlags.CANFD_HDA2 + hda2_long = hda2 and self.CP.openpilotLongitudinalControl + + # steering control + if camera_scc: + can_sends.extend(hyundaicanfd.create_steering_messages_camera_scc(self.frame, self.packer, self.CP, self.CAN, CC, apply_steer_req, apply_torque, CS, apply_angle, self.lkas_max_torque, angle_control)) + else: + can_sends.extend(hyundaicanfd.create_steering_messages(self.packer, self.CP, self.CAN, CC.enabled, apply_steer_req, apply_torque, apply_angle, self.lkas_max_torque, angle_control)) + + # prevent LFA from activating on HDA2 by sending "no lane lines detected" to ADAS ECU + if self.frame % 5 == 0 and hda2 and not camera_scc: + can_sends.extend(hyundaicanfd.create_suppress_lfa(self.packer, self.CAN, CS)) + + # LFA and HDA icons + if self.frame % 5 == 0 and camera_scc: + can_sends.extend(hyundaicanfd.create_lfahda_cluster(self.packer, CS, self.CAN, CC.longActive, CC.latActive)) + + # blinkers + if hda2 and self.CP.flags & HyundaiFlags.ENABLE_BLINKERS: + can_sends.extend(hyundaicanfd.create_spas_messages(self.packer, self.CAN, self.frame, CC.leftBlinker, CC.rightBlinker)) + + if self.camera_scc_params in [2, 3]: + self.canfd_toggle_adas(CC, CS) + if self.CP.openpilotLongitudinalControl: + self.hyundai_jerk.make_jerk(self.CP, CS, accel, actuators, hud_control) + self.hyundai_jerk.check_carrot_cruise(CC, CS, hud_control, stopping, accel, actuators.aTarget) + + if True: #not camera_scc: + can_sends.extend(hyundaicanfd.create_ccnc_messages(self.CP, self.packer, self.CAN, self.frame, CC, CS, hud_control, apply_angle, left_lane_warning, right_lane_warning, self.enable_corner_radar)) + if hda2: + can_sends.extend(hyundaicanfd.create_adrv_messages(self.CP, self.packer, self.CAN, self.frame)) + else: + can_sends.extend(hyundaicanfd.create_fca_warning_light(self.CP, self.packer, self.CAN, self.frame)) + if self.frame % 2 == 0: + if self.CP.flags & HyundaiFlags.CAMERA_SCC.value: + can_sends.append(hyundaicanfd.create_acc_control_scc2(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override, + set_speed_in_units, hud_control, self.hyundai_jerk, CS)) + can_sends.extend(hyundaicanfd.create_tcs_messages(self.packer, self.CAN, CS)) # for sorento SCC radar... + else: + can_sends.append(hyundaicanfd.create_acc_control(self.packer, self.CAN, CC.enabled, self.accel_last, accel, stopping, CC.cruiseControl.override, + set_speed_in_units, hud_control, self.hyundai_jerk.jerk_u, self.hyundai_jerk.jerk_l, CS)) + self.accel_last = accel + else: + # button presses + if self.camera_scc_params == 3: # camera scc but stock long + send_button = self.make_spam_button(CC, CS) + can_sends.extend(hyundaicanfd.forward_button_message(self.packer, self.CAN, self.frame, CS, send_button, self.MainMode_ACC_trigger, self.LFA_trigger)) + else: + can_sends.extend(self.create_button_messages(CC, CS, use_clu11=False)) + + else: + can_sends.append(hyundaican.create_lkas11(self.packer, self.frame, self.CP, apply_torque, apply_steer_req, + torque_fault, CS.lkas11, sys_warning, sys_state, CC.enabled, + hud_control.leftLaneVisible, hud_control.rightLaneVisible, + left_lane_warning, right_lane_warning, self.is_ldws_car)) + + if not self.CP.openpilotLongitudinalControl: + can_sends.extend(self.create_button_messages(CC, CS, use_clu11=True)) + if self.CP.carFingerprint in CAN_GEARS["send_mdps12"]: # send mdps12 to LKAS to prevent LKAS error + can_sends.append(hyundaican.create_mdps12(self.packer, self.frame, CS.mdps12)) + + casper_opt = self.CP.carFingerprint in (CAR.HYUNDAI_CASPER_EV) + if self.frame % 2 == 0 and self.CP.openpilotLongitudinalControl: + self.hyundai_jerk.make_jerk(self.CP, CS, accel, actuators, hud_control) + self.hyundai_jerk.check_carrot_cruise(CC, CS, hud_control, stopping, accel, actuators.aTarget) + #jerk = 3.0 if actuators.longControlState == LongCtrlState.pid else 1.0 + use_fca = self.CP.flags & HyundaiFlags.USE_FCA.value + if camera_scc: + + can_sends.extend(hyundaican.create_acc_commands_scc(self.packer, CC.enabled, accel, self.hyundai_jerk, int(self.frame / 2), + hud_control, set_speed_in_units, stopping, + CC.cruiseControl.override, casper_opt, CS, self.soft_hold_mode)) + else: + can_sends.extend(hyundaican.create_acc_commands(self.packer, CC.enabled, accel, self.hyundai_jerk, int(self.frame / 2), + hud_control, set_speed_in_units, stopping, + CC.cruiseControl.override, use_fca, self.CP, CS, self.soft_hold_mode)) + + + # 20 Hz LFA MFA message + if self.frame % 5 == 0 and self.CP.flags & HyundaiFlags.SEND_LFA.value: + can_sends.append(hyundaican.create_lfahda_mfc(self.packer, CC, self.blinking_signal)) + + # 5 Hz ACC options + if self.frame % 20 == 0 and self.CP.openpilotLongitudinalControl: + if camera_scc: + if CS.scc13 is not None: + if casper_opt: + #can_sends.append(hyundaican.create_acc_opt_copy(CS, self.packer)) + pass + pass + else: + can_sends.extend(hyundaican.create_acc_opt(self.packer, self.CP)) + + # 2 Hz front radar options + if self.frame % 50 == 0 and self.CP.openpilotLongitudinalControl and not camera_scc: + can_sends.append(hyundaican.create_frt_radar_opt(self.packer)) + + new_actuators = actuators.as_builder() + new_actuators.torque = apply_torque / self.params.STEER_MAX + new_actuators.torqueOutputCan = apply_torque + new_actuators.steeringAngleDeg = float(apply_angle) + new_actuators.accel = accel + + self.frame += 1 + return new_actuators, can_sends + + + def create_button_messages(self, CC: structs.CarControl, CS: CarState, use_clu11: bool): + can_sends = [] + if CS.out.brakePressed or CS.out.brakeHoldActive: + return can_sends + if use_clu11: + if CC.cruiseControl.cancel: + can_sends.append(hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.CANCEL, self.CP)) + elif False: #CC.cruiseControl.resume: + # send resume at a max freq of 10Hz + if (self.frame - self.last_button_frame) * DT_CTRL > 0.1: + # send 25 messages at a time to increases the likelihood of resume being accepted + can_sends.extend([hyundaican.create_clu11(self.packer, self.frame, CS.clu11, Buttons.RES_ACCEL, self.CP)] * 25) + if (self.frame - self.last_button_frame) * DT_CTRL >= 0.15: + self.last_button_frame = self.frame + + if self.last_button_frame != self.frame: + send_button = self.make_spam_button(CC, CS) + if send_button > 0: + can_sends.append(hyundaican.create_clu11_button(self.packer, self.frame, CS.clu11, send_button, self.CP)) + + else: + + # carrot.. 왜 alt_cruise_button는 값이 리스트일까?, 그리고 왜? 빈데이터가 들어오는것일까? + if CS.cruise_buttons_msg is not None and self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: + try: + cruise_buttons_msg_values = {key: value[0] for key, value in CS.cruise_buttons_msg.items()} + except: # IndexError: + #print("IndexError....") + cruise_buttons_msg_values = None + self.cruise_buttons_msg_cnt += 1 + if cruise_buttons_msg_values is not None: + self.cruise_buttons_msg_values = cruise_buttons_msg_values + self.cruise_buttons_msg_cnt = 0 + + if (self.frame - self.last_button_frame) * DT_CTRL > 0.25: + # cruise cancel + if CC.cruiseControl.cancel: + if (self.frame - self.last_button_frame) * DT_CTRL > 0.1: + print("cruiseControl.cancel222222") + if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: + #can_sends.append(hyundaicanfd.create_acc_cancel(self.packer, self.CP, self.CAN, CS.cruise_info)) + if self.cruise_buttons_msg_values is not None: + can_sends.append(hyundaicanfd.alt_cruise_buttons(self.packer, self.CP, self.CAN, Buttons.CANCEL, self.cruise_buttons_msg_values, self.cruise_buttons_msg_cnt)) + + else: + for _ in range(20): + can_sends.append(hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.CANCEL)) + self.last_button_frame = self.frame + + # cruise standstill resume + elif False: #CC.cruiseControl.resume: + if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS: + # TODO: resume for alt button cars + pass + else: + for _ in range(20): + can_sends.append(hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, Buttons.RES_ACCEL)) + self.last_button_frame = self.frame + + ## button 스패밍을 안했을때... + if self.last_button_frame != self.frame: + dat = self.canfd_speed_control_pcm(CC, CS, self.cruise_buttons_msg_values) + if dat is not None: + for _ in range(self.button_spam3): + can_sends.append(dat) + self.cruise_buttons_msg_cnt += 1 + + return can_sends + + def canfd_toggle_adas(self, CC, CS): + trigger_min = -200 + trigger_start = 6 + self.MainMode_ACC_trigger = max(trigger_min, self.MainMode_ACC_trigger - 1) + self.LFA_trigger = max(trigger_min, self.LFA_trigger - 1) + if self.MainMode_ACC_trigger == trigger_min and self.LFA_trigger == trigger_min: + if CC.enabled and not CS.MainMode_ACC and CS.out.vEgo > 3.: + self.MainMode_ACC_trigger = trigger_start + elif CC.latActive and CS.LFA_ICON == 0: + self.LFA_trigger = trigger_start + + def canfd_speed_control_pcm(self, CC, CS, cruise_buttons_msg_values): + + alt_buttons = True if self.CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS else False + + if alt_buttons and cruise_buttons_msg_values is None: + return None + + send_button = self.make_spam_button(CC, CS) + if send_button > 0: + if alt_buttons: + return hyundaicanfd.alt_cruise_buttons(self.packer, self.CP, self.CAN, send_button, cruise_buttons_msg_values, self.cruise_buttons_msg_cnt) + else: + return hyundaicanfd.create_buttons(self.packer, self.CP, self.CAN, CS.buttons_counter+1, send_button) + + return None + + + def make_spam_button(self, CC, CS): + hud_control = CC.hudControl + set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + target = int(set_speed_in_units+0.5) + current = int(CS.out.cruiseState.speed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + 0.5) + v_ego_kph = CS.out.vEgo * CV.MS_TO_KPH + + send_button = 0 + activate_cruise = False + + if CC.enabled: + if not CS.out.cruiseState.enabled: + if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0: + send_button = Buttons.RES_ACCEL + self.activateCruise = 1 + activate_cruise = True + elif CC.cruiseControl.resume: + send_button = Buttons.RES_ACCEL + elif target < current and current>= 31 and self.speed_from_pcm != 1: + send_button = Buttons.SET_DECEL + elif target > current and current < 160 and self.speed_from_pcm != 1: + send_button = Buttons.RES_ACCEL + elif CS.out.activateCruise: #CC.cruiseControl.activate: + if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0: + self.activateCruise = 1 + send_button = Buttons.RES_ACCEL + activate_cruise = True + + if CS.out.brakePressed or CS.out.gasPressed: + self.activateCruise = 0 + + if send_button == 0: + self.button_spamming_count = 0 + self.prev_clu_speed = current + return 0 + + speed_diff = self.prev_clu_speed - current + spamming_max = self.button_spam1 + if CS.cruise_buttons[-1] != Buttons.NONE: + self.last_button_frame = self.frame + self.button_wait = self.button_spam2 + self.button_spamming_count = 0 + elif abs(self.button_spamming_count) >= spamming_max or abs(speed_diff) > 0: + self.last_button_frame = self.frame + self.button_wait = self.button_spam2 if abs(self.button_spamming_count) >= spamming_max else 7 + self.button_spamming_count = 0 + + self.prev_clu_speed = current + send_button_allowed = (self.frame - self.last_button_frame) > self.button_wait + #CC.debugTextCC = "{} speed_diff={:.1f},{:.0f}/{:.0f}, button={}, button_wait={}, count={}".format( + # send_button_allowed, speed_diff, target, current, send_button, self.button_wait, self.button_spamming_count) + + if send_button_allowed or activate_cruise or (CC.cruiseControl.resume and self.frame % 2 == 0): + self.button_spamming_count = self.button_spamming_count + 1 if send_button == Buttons.RES_ACCEL else self.button_spamming_count - 1 + return send_button + else: + self.button_spamming_count = 0 + return 0 + +from openpilot.common.filter_simple import MyMovingAverage +class HyundaiJerk: + def __init__(self): + self.params = Params() + self.jerk = 0.0 + self.jerk_u = self.jerk_l = 0.0 + self.cb_upper = self.cb_lower = 0.0 + self.jerk_u_min = 0.5 + self.carrot_cruise = 1 + self.carrot_cruise_accel = 0.0 + + def check_carrot_cruise(self, CC, CS, hud_control, stopping, accel, a_target): + carrot_cruise_decel = self.params.get_float("CarrotCruiseDecel") + carrot_cruise_atc_decel = self.params.get_float("CarrotCruiseAtcDecel") + if carrot_cruise_atc_decel >= 0 and 0 < hud_control.atcDistance < 500: + carrot_cruise_decel = max(carrot_cruise_decel, carrot_cruise_atc_decel) + self.carrot_cruise = 0 + if CS.out.carrotCruise > 0 and not CC.cruiseControl.override: + if CS.softHoldActive == 0 and not stopping: + if CS.out.vEgo > 10/3.6: + if carrot_cruise_decel < 0: + if (a_target > -0.1 or accel > -0.1): + self.carrot_cruise = 1 + self.carrot_cruise_accel = 0.0 + else: + self.carrot_cruise = 2 + carrot_cruise = min(accel, -carrot_cruise_decel * 0.01) + self.carrot_cruise_accel = max(carrot_cruise, self.carrot_cruise_accel - 1.0 * DT_CTRL) # 점진적으로 줄임. + if self.carrot_cruise == 0: + self.carrot_cruise_accel = CS.out.aEgo + + def make_jerk(self, CP, CS, accel, actuators, hud_control): + if actuators.longControlState == LongCtrlState.stopping: + self.jerk = self.jerk_u_min / 2 - CS.out.aEgo + else: + jerk = actuators.jerk if actuators.longControlState == LongCtrlState.pid else 0.0 + #a_error = actuators.aTarget - CS.out.aEgo + self.jerk = jerk# + a_error + + jerk_max_l = 5.0 + jerk_max_u = jerk_max_l + if actuators.longControlState == LongCtrlState.off: + self.jerk_u = jerk_max_u + self.jerk_l = jerk_max_l + self.cb_upper = self.cb_lower = 0.0 + else: + if CP.flags & HyundaiFlags.CANFD: + self.jerk_u = min(max(self.jerk_u_min, self.jerk * 2.0), jerk_max_u) + self.jerk_l = min(max(1.0, -self.jerk * 4.0), jerk_max_l) + self.cb_upper = self.cb_lower = 0.0 + else: + self.jerk_u = min(max(self.jerk_u_min, self.jerk * 2.0), jerk_max_u) + self.jerk_l = min(max(1.0, -self.jerk * 2.0), jerk_max_l) + self.cb_upper = np.clip(0.9 + accel * 0.2, 0, 1.2) + self.cb_lower = np.clip(0.8 + accel * 0.2, 0, 1.2) + diff --git a/opendbc_repo/opendbc/car/hyundai/carstate.py b/opendbc_repo/opendbc/car/hyundai/carstate.py new file mode 100644 index 0000000000..7785201e53 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/carstate.py @@ -0,0 +1,694 @@ +from collections import deque +import copy +import math +import numpy as np +import ast + +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, create_button_events, structs, DT_CTRL +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.hyundai.hyundaicanfd import CanBus +from opendbc.car.hyundai.values import HyundaiFlags, CAR, DBC, Buttons, CarControllerParams, CAMERA_SCC_CAR, HyundaiExtFlags +from opendbc.car.interfaces import CarStateBase + +from openpilot.common.params import Params + +from datetime import datetime +from zoneinfo import ZoneInfo + + +ButtonType = structs.CarState.ButtonEvent.Type + +PREV_BUTTON_SAMPLES = 8 +CLUSTER_SAMPLE_RATE = 20 # frames +STANDSTILL_THRESHOLD = 12 * 0.03125 * CV.KPH_TO_MS + +BUTTONS_DICT = {Buttons.RES_ACCEL: ButtonType.accelCruise, Buttons.SET_DECEL: ButtonType.decelCruise, + Buttons.GAP_DIST: ButtonType.gapAdjustCruise, Buttons.CANCEL: ButtonType.cancel, Buttons.LFA_BUTTON: ButtonType.lfaButton} + +GearShifter = structs.CarState.GearShifter + + +NUMERIC_TO_TZ = { + 840: "America/New_York", # 미국 (US) → 동부 시간대 + 124: "America/Toronto", # 캐나다 (CA) → 동부 시간대 + 250: "Europe/Paris", # 프랑스 (FR) + 276: "Europe/Berlin", # 독일 (DE) + 826: "Europe/London", # 영국 (GB) + 392: "Asia/Tokyo", # 일본 (JP) + 156: "Asia/Shanghai", # 중국 (CN) + 410: "Asia/Seoul", # 한국 (KR) + 36: "Australia/Sydney", # 호주 (AU) + 356: "Asia/Kolkata", # 인도 (IN) +} + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + + self.cruise_buttons: deque = deque([Buttons.NONE] * PREV_BUTTON_SAMPLES, maxlen=PREV_BUTTON_SAMPLES) + self.main_buttons: deque = deque([Buttons.NONE] * PREV_BUTTON_SAMPLES, maxlen=PREV_BUTTON_SAMPLES) + + self.gear_msg_canfd = "GEAR" if CP.extFlags & HyundaiExtFlags.CANFD_GEARS_69 else \ + "ACCELERATOR" if CP.flags & HyundaiFlags.EV else \ + "GEAR_ALT" if CP.flags & HyundaiFlags.CANFD_ALT_GEARS else \ + "GEAR_ALT_2" if CP.flags & HyundaiFlags.CANFD_ALT_GEARS_2 else \ + "GEAR_SHIFTER" + if CP.flags & HyundaiFlags.CANFD: + self.shifter_values = can_define.dv[self.gear_msg_canfd]["GEAR"] + elif CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV): + self.shifter_values = can_define.dv["ELECT_GEAR"]["Elect_Gear_Shifter"] + elif self.CP.flags & HyundaiFlags.CLUSTER_GEARS: + self.shifter_values = can_define.dv["CLU15"]["CF_Clu_Gear"] + elif self.CP.flags & HyundaiFlags.TCU_GEARS: + self.shifter_values = can_define.dv["TCU12"]["CUR_GR"] + elif CP.flags & HyundaiFlags.FCEV: + self.shifter_values = can_define.dv["EMS20"]["HYDROGEN_GEAR_SHIFTER"] + else: + self.shifter_values = can_define.dv["LVR12"]["CF_Lvr_Gear"] + + self.accelerator_msg_canfd = "ACCELERATOR" if CP.flags & HyundaiFlags.EV else \ + "ACCELERATOR_ALT" if CP.flags & HyundaiFlags.HYBRID else \ + "ACCELERATOR_BRAKE_ALT" + self.cruise_btns_msg_canfd = "CRUISE_BUTTONS_ALT" if CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS else \ + "CRUISE_BUTTONS" + self.is_metric = False + self.buttons_counter = 0 + + self.cruise_info = {} + self.lfa_info = {} + self.lfa_alt_info = {} + self.lfahda_cluster_info = None + self.adrv_info_161 = None + self.adrv_info_200 = None + self.adrv_info_1ea = None + self.adrv_info_160 = None + self.adrv_info_162 = None + self.hda_info_4a3 = None + self.new_msg_4b4 = None + self.tcs_info_373 = None + self.mdps_info = {} + self.steer_touch_info = {} + + self.cruise_buttons_msg = None + self.msg_0x362 = None + self.msg_0x2a4 = None + + # On some cars, CLU15->CF_Clu_VehicleSpeed can oscillate faster than the dash updates. Sample at 5 Hz + self.cluster_speed = 0 + self.cluster_speed_counter = CLUSTER_SAMPLE_RATE + + self.params = CarControllerParams(CP) + + self.main_enabled = True if Params().get_int("AutoEngage") == 2 else False + self.gear_shifter = GearShifter.drive # Gear_init for Nexo ?? unknown 21.02.23.LSW + + self.totalDistance = 0.0 + self.speedLimitDistance = 0 + self.pcmCruiseGap = 0 + + self.cruise_buttons_alt = True if self.CP.carFingerprint in (CAR.HYUNDAI_CASPER, CAR.HYUNDAI_CASPER_EV) else False + self.MainMode_ACC = False + self.ACCMode = 0 + self.LFA_ICON = 0 + self.paddle_button_prev = 0 + + self.lf_distance = 0 + self.rf_distance = 0 + self.lr_distance = 0 + self.rr_distance = 0 + #self.lf_lateral = 0 + #self.rf_lateral = 0 + + fingerprints_str = Params().get("FingerPrints") + fingerprints = ast.literal_eval(fingerprints_str) + #print("fingerprints =", fingerprints) + ecu_disabled = False + if self.CP.openpilotLongitudinalControl and not (self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC): + ecu_disabled = True + + if ecu_disabled: + self.SCC11 = self.SCC12 = self.SCC13 = self.SCC14 = self.FCA11 = False + else: + bus_cruise = 2 if self.CP.flags & HyundaiFlags.CAMERA_SCC else 0 + self.SCC11 = True if 1056 in fingerprints[bus_cruise] else False + self.SCC12 = True if 1057 in fingerprints[bus_cruise] else False + self.SCC13 = True if 1290 in fingerprints[bus_cruise] else False + self.SCC14 = True if 905 in fingerprints[bus_cruise] else False + self.FCA11 = False + self.FCA11_bus = Bus.cam + + self.HAS_LFA_BUTTON = True if 913 in fingerprints[0] else False + self.CRUISE_BUTTON_ALT = True if 1007 in fingerprints[0] else False + + cam_bus = CanBus(CP).CAM + pt_bus = CanBus(CP).ECAN + alt_bus = CanBus(CP).ACAN + self.CCNC_0x161 = True if 0x161 in fingerprints[cam_bus] else False + self.CCNC_0x162 = True if 0x162 in fingerprints[cam_bus] else False + self.ADRV_0x200 = True if 0x200 in fingerprints[cam_bus] else False + self.ADRV_0x1ea = True if 0x1ea in fingerprints[cam_bus] else False + self.ADRV_0x160 = True if 0x160 in fingerprints[cam_bus] else False + self.LFAHDA_CLUSTER = True if 480 in fingerprints[cam_bus] else False + self.HDA_INFO_4A3 = True if 0x4a3 in fingerprints[pt_bus] else False + self.NEW_MSG_4B4 = True if 0x4b4 in fingerprints[pt_bus] else False + self.GEAR = True if 69 in fingerprints[pt_bus] else False + self.GEAR_ALT = True if 64 in fingerprints[pt_bus] else False + self.CAM_0x362 = True if 0x362 in fingerprints[alt_bus] else False + self.CAM_0x2a4 = True if 0x2a4 in fingerprints[alt_bus] else False + self.STEER_TOUCH_2AF = True if 0x2af in fingerprints[pt_bus] else False + self.TPMS = True if 0x3a0 in fingerprints[pt_bus] else False + self.LOCAL_TIME = True if 1264 in fingerprints[pt_bus] else False + + self.cp_bsm = None + self.time_zone = "UTC" + + self.controls_ready_count = 0 + + def update(self, can_parsers) -> structs.CarState: + + if self.controls_ready_count <= 200: + if Params().get_bool("ControlsReady"): + self.controls_ready_count += 1 + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + cp_alt = can_parsers[Bus.alt] if Bus.alt in can_parsers else None + if self.controls_ready_count == 50: + cp.controls_ready = cp_cam.controls_ready = True + if cp_alt is not None: + cp_alt.controls_ready = True + elif self.controls_ready_count == 100: + print("cp_cam.seen_addresses =", cp_cam.seen_addresses) + print("cp.seen_addresses =", cp.seen_addresses) + if 909 in cp_cam.seen_addresses: + self.FCA11 = True + self.FCA11_bus = Bus.cam + elif 909 in cp.seen_addresses: + self.FCA11 = True + self.FCA11_bus = Bus.pt + if cp_alt is not None: + print("cp_alt.seen_addresses =", cp_alt.seen_addresses) + + if self.CP.flags & HyundaiFlags.CANFD: + return self.update_canfd(can_parsers) + + ret = structs.CarState() + cp_cruise = cp_cam if self.CP.flags & HyundaiFlags.CAMERA_SCC else cp + self.is_metric = cp.vl["CLU11"]["CF_Clu_SPEED_UNIT"] == 0 + speed_conv = CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS + + ret.doorOpen = any([cp.vl["CGW1"]["CF_Gway_DrvDrSw"], cp.vl["CGW1"]["CF_Gway_AstDrSw"], + cp.vl["CGW2"]["CF_Gway_RLDrSw"], cp.vl["CGW2"]["CF_Gway_RRDrSw"]]) + + ret.seatbeltUnlatched = cp.vl["CGW1"]["CF_Gway_DrvSeatBeltSw"] == 0 + + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["WHL_SPD11"]["WHL_SPD_FL"], + cp.vl["WHL_SPD11"]["WHL_SPD_FR"], + cp.vl["WHL_SPD11"]["WHL_SPD_RL"], + cp.vl["WHL_SPD11"]["WHL_SPD_RR"], + ) + ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = ret.wheelSpeeds.fl <= STANDSTILL_THRESHOLD and ret.wheelSpeeds.rr <= STANDSTILL_THRESHOLD + + self.cluster_speed_counter += 1 + if self.cluster_speed_counter > CLUSTER_SAMPLE_RATE: + self.cluster_speed = cp.vl["CLU15"]["CF_Clu_VehicleSpeed"] + self.cluster_speed_counter = 0 + + # Mimic how dash converts to imperial. + # Sorento is the only platform where CF_Clu_VehicleSpeed is already imperial when not is_metric + # TODO: CGW_USM1->CF_Gway_DrLockSoundRValue may describe this + if not self.is_metric and self.CP.carFingerprint not in (CAR.KIA_SORENTO,): + self.cluster_speed = math.floor(self.cluster_speed * CV.KPH_TO_MPH + CV.KPH_TO_MPH) + + #ret.vEgoCluster = self.cluster_speed * speed_conv + + ret.steeringAngleDeg = cp.vl["SAS11"]["SAS_Angle"] + ret.steeringRateDeg = cp.vl["SAS11"]["SAS_Speed"] + ret.yawRate = cp.vl["ESP12"]["YAW_RATE"] + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp( + 50, cp.vl["CGW1"]["CF_Gway_TurnSigLh"], cp.vl["CGW1"]["CF_Gway_TurnSigRh"]) + ret.steeringTorque = cp.vl["MDPS12"]["CR_Mdps_StrColTq"] + ret.steeringTorqueEps = cp.vl["MDPS12"]["CR_Mdps_OutTq"] + ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > self.params.STEER_THRESHOLD, 5) + ret.steerFaultTemporary = cp.vl["MDPS12"]["CF_Mdps_ToiUnavail"] != 0 or cp.vl["MDPS12"]["CF_Mdps_ToiFlt"] != 0 + + # cruise state + if self.CP.openpilotLongitudinalControl: + # These are not used for engage/disengage since openpilot keeps track of state using the buttons + ret.cruiseState.available = self.main_enabled #cp.vl["TCS13"]["ACCEnable"] == 0 + ret.cruiseState.enabled = cp.vl["TCS13"]["ACC_REQ"] == 1 + ret.cruiseState.standstill = False + ret.cruiseState.nonAdaptive = False + elif not self.CP.flags & HyundaiFlags.CC_ONLY_CAR: + self.main_enabled = ret.cruiseState.available = cp_cruise.vl["SCC11"]["MainMode_ACC"] == 1 + ret.cruiseState.enabled = cp_cruise.vl["SCC12"]["ACCMode"] != 0 + ret.cruiseState.standstill = cp_cruise.vl["SCC11"]["SCCInfoDisplay"] == 4. + ret.cruiseState.nonAdaptive = cp_cruise.vl["SCC11"]["SCCInfoDisplay"] == 2. # Shows 'Cruise Control' on dash + ret.cruiseState.speed = cp_cruise.vl["SCC11"]["VSetDis"] * speed_conv + + ret.pcmCruiseGap = cp_cruise.vl["SCC11"]["TauGapSet"] + + # TODO: Find brake pressure + ret.brake = 0 + if not self.CP.flags & HyundaiFlags.CC_ONLY_CAR: + ret.brakePressed = cp.vl["TCS13"]["DriverOverride"] == 2 # 2 includes regen braking by user on HEV/EV + ret.brakeHoldActive = cp.vl["TCS15"]["AVH_LAMP"] == 2 # 0 OFF, 1 ERROR, 2 ACTIVE, 3 READY + ret.parkingBrake = cp.vl["TCS13"]["PBRAKE_ACT"] == 1 + ret.espDisabled = cp.vl["TCS11"]["TCS_PAS"] == 1 + ret.espActive = cp.vl["TCS11"]["ABS_ACT"] == 1 + ret.accFaulted = cp.vl["TCS13"]["ACCEnable"] != 0 # 0 ACC CONTROL ENABLED, 1-3 ACC CONTROL DISABLED + ret.brakeLights = bool(cp.vl["TCS13"]["BrakeLight"] or ret.brakePressed) + + if self.CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV | HyundaiFlags.FCEV): + if self.CP.flags & HyundaiFlags.FCEV: + ret.gas = cp.vl["FCEV_ACCELERATOR"]["ACCELERATOR_PEDAL"] / 254. + elif self.CP.flags & HyundaiFlags.HYBRID: + ret.gas = cp.vl["E_EMS11"]["CR_Vcu_AccPedDep_Pos"] / 254. + else: + ret.gas = cp.vl["E_EMS11"]["Accel_Pedal_Pos"] / 254. + ret.gasPressed = ret.gas > 0 + else: + ret.gas = cp.vl["EMS12"]["PV_AV_CAN"] / 100. + ret.gasPressed = bool(cp.vl["EMS16"]["CF_Ems_AclAct"]) + + # Gear Selection via Cluster - For those Kia/Hyundai which are not fully discovered, we can use the Cluster Indicator for Gear Selection, + # as this seems to be standard over all cars, but is not the preferred method. + if self.CP.flags & (HyundaiFlags.HYBRID | HyundaiFlags.EV): + gear = cp.vl["ELECT_GEAR"]["Elect_Gear_Shifter"] + ret.gearStep = cp.vl["ELECT_GEAR"]["Elect_Gear_Step"] + elif self.CP.flags & HyundaiFlags.FCEV: + gear = cp.vl["EMS20"]["HYDROGEN_GEAR_SHIFTER"] + elif self.CP.flags & HyundaiFlags.CLUSTER_GEARS: + gear = cp.vl["CLU15"]["CF_Clu_Gear"] + elif self.CP.flags & HyundaiFlags.TCU_GEARS: + gear = cp.vl["TCU12"]["CUR_GR"] + else: + gear = cp.vl["LVR12"]["CF_Lvr_Gear"] + ret.gearStep = cp.vl["LVR11"]["CF_Lvr_GearInf"] + + if not self.CP.carFingerprint in (CAR.HYUNDAI_NEXO): + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear)) + else: + gear = cp.vl["ELECT_GEAR"]["Elect_Gear_Shifter"] + gear_disp = cp.vl["ELECT_GEAR"] + + gear_shifter = GearShifter.unknown + + if gear == 1546: # Thank you for Neokii # fix PolorBear 22.06.05 + gear_shifter = GearShifter.drive + elif gear == 2314: + gear_shifter = GearShifter.neutral + elif gear == 2569: + gear_shifter = GearShifter.park + elif gear == 2566: + gear_shifter = GearShifter.reverse + + if gear_shifter != GearShifter.unknown and self.gear_shifter != gear_shifter: + self.gear_shifter = gear_shifter + + ret.gearShifter = self.gear_shifter + + if not self.CP.flags & HyundaiFlags.CC_ONLY_CAR and (not self.CP.openpilotLongitudinalControl or self.CP.flags & HyundaiFlags.CAMERA_SCC): + aeb_src = "FCA11" if self.CP.flags & HyundaiFlags.USE_FCA.value else "SCC12" + aeb_sig = "FCA_CmdAct" if self.CP.flags & HyundaiFlags.USE_FCA.value else "AEB_CmdAct" + aeb_warning = cp_cruise.vl[aeb_src]["CF_VSM_Warn"] != 0 + scc_warning = cp_cruise.vl["SCC12"]["TakeOverReq"] == 1 # sometimes only SCC system shows an FCW + aeb_braking = cp_cruise.vl[aeb_src]["CF_VSM_DecCmdAct"] != 0 or cp_cruise.vl[aeb_src][aeb_sig] != 0 + ret.stockFcw = (aeb_warning or scc_warning) and not aeb_braking + ret.stockAeb = aeb_warning and aeb_braking + + if self.CP.enableBsm: + ret.leftBlindspot = cp.vl["LCA11"]["CF_Lca_IndLeft"] != 0 + ret.rightBlindspot = cp.vl["LCA11"]["CF_Lca_IndRight"] != 0 + + # save the entire LKAS11 and CLU11 + self.lkas11 = copy.copy(cp_cam.vl["LKAS11"]) + self.clu11 = copy.copy(cp.vl["CLU11"]) + self.steer_state = cp.vl["MDPS12"]["CF_Mdps_ToiActive"] # 0 NOT ACTIVE, 1 ACTIVE + prev_cruise_buttons = self.cruise_buttons[-1] + #self.cruise_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"]) + #carrot {{ + #if self.CRUISE_BUTTON_ALT and cp.vl["CRUISE_BUTTON_ALT"]["SET_ME_1"] == 1: + # self.cruise_buttons_alt = True + + cruise_button = [Buttons.NONE] + if self.cruise_buttons_alt: + lfa_button = cp.vl["CRUISE_BUTTON_LFA"]["CruiseSwLfa"] + cruise_button = [Buttons.LFA_BUTTON] if lfa_button > 0 else [cp.vl["CRUISE_BUTTON_ALT"]["CruiseSwState"]] + elif self.HAS_LFA_BUTTON and cp.vl["BCM_PO_11"]["LFA_Pressed"] == 1: # for K5 + cruise_button = [Buttons.LFA_BUTTON] + else: + cruise_button = cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"] + self.cruise_buttons.extend(cruise_button) + # }} carrot + prev_main_buttons = self.main_buttons[-1] + #self.cruise_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwState"]) + if self.cruise_buttons_alt: + self.main_buttons.extend(cp.vl_all["CRUISE_BUTTON_ALT"]["CruiseSwMain"]) + else: + self.main_buttons.extend(cp.vl_all["CLU11"]["CF_Clu_CruiseSwMain"]) + self.mdps12 = copy.copy(cp.vl["MDPS12"]) + + ret.buttonEvents = [*create_button_events(self.cruise_buttons[-1], prev_cruise_buttons, BUTTONS_DICT), + *create_button_events(self.main_buttons[-1], prev_main_buttons, {1: ButtonType.mainCruise})] + + + if not self.CP.flags & HyundaiFlags.CC_ONLY_CAR: + tpms_unit = cp.vl["TPMS11"]["UNIT"] * 0.725 if int(cp.vl["TPMS11"]["UNIT"]) > 0 else 1. + ret.tpms.fl = tpms_unit * cp.vl["TPMS11"]["PRESSURE_FL"] + ret.tpms.fr = tpms_unit * cp.vl["TPMS11"]["PRESSURE_FR"] + ret.tpms.rl = tpms_unit * cp.vl["TPMS11"]["PRESSURE_RL"] + ret.tpms.rr = tpms_unit * cp.vl["TPMS11"]["PRESSURE_RR"] + + self.scc11 = cp_cruise.vl["SCC11"] if self.SCC11 else None + self.scc12 = cp_cruise.vl["SCC12"] if self.SCC12 else None + self.scc13 = cp_cruise.vl["SCC13"] if self.SCC13 else None + self.scc14 = cp_cruise.vl["SCC14"] if self.SCC14 else None + self.fca11 = can_parsers[self.FCA11_bus].vl["FCA11"] if self.FCA11 else None + cluSpeed = cp.vl["CLU11"]["CF_Clu_Vanz"] + decimal = cp.vl["CLU11"]["CF_Clu_VanzDecimal"] + if 0. < decimal < 0.5: + cluSpeed += decimal + + ret.vEgoCluster = cluSpeed * speed_conv + vEgoClu, aEgoClu = self.update_clu_speed_kf(ret.vEgoCluster) + ret.vCluRatio = (ret.vEgo / vEgoClu) if (vEgoClu > 3. and ret.vEgo > 3.) else 1.0 + + if self.CP.extFlags & HyundaiExtFlags.NAVI_CLUSTER.value: + speedLimit = cp.vl["Navi_HU"]["SpeedLim_Nav_Clu"] + speedLimitCam = cp.vl["Navi_HU"]["SpeedLim_Nav_Cam"] + ret.speedLimit = speedLimit if speedLimit < 255 and speedLimitCam == 1 else 0 + speed_limit_cam = speedLimitCam == 1 + else: + ret.speedLimit = 0 + ret.speedLimitDistance = 0 + speed_limit_cam = False + + self.update_speed_limit(ret, speed_limit_cam) + + if prev_main_buttons == 0 and self.main_buttons[-1] != 0: + self.main_enabled = not self.main_enabled + + return ret + + def update_speed_limit(self, ret, speed_limit_cam): + self.totalDistance += ret.vEgo * DT_CTRL + if ret.speedLimit > 0 and not ret.gasPressed and speed_limit_cam: + if self.speedLimitDistance <= self.totalDistance: + self.speedLimitDistance = self.totalDistance + ret.speedLimit * 6 + self.speedLimitDistance = max(self.totalDistance + 1, self.speedLimitDistance) + else: + self.speedLimitDistance = self.totalDistance + ret.speedLimitDistance = self.speedLimitDistance - self.totalDistance + + def update_canfd(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + cp_alt = can_parsers[Bus.alt] if Bus.alt in can_parsers else None + + ret = structs.CarState() + + self.is_metric = cp.vl["CRUISE_BUTTONS_ALT"]["DISTANCE_UNIT"] != 1 + speed_factor = CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS + + if self.CP.flags & (HyundaiFlags.EV | HyundaiFlags.HYBRID): + offset = 255. if self.CP.flags & HyundaiFlags.EV else 1023. + ret.gas = cp.vl[self.accelerator_msg_canfd]["ACCELERATOR_PEDAL"] / offset + ret.gasPressed = ret.gas > 1e-5 + else: + ret.gasPressed = bool(cp.vl[self.accelerator_msg_canfd]["ACCELERATOR_PEDAL_PRESSED"]) + + ret.brakePressed = cp.vl["TCS"]["DriverBraking"] == 1 + #print(cp.vl["TCS"], cp.vl_all["TCS"]["DriverBraking"][-10:]) + + ret.doorOpen = cp.vl["DOORS_SEATBELTS"]["DRIVER_DOOR"] == 1 + ret.seatbeltUnlatched = cp.vl["DOORS_SEATBELTS"]["DRIVER_SEATBELT"] == 0 + + gear = cp.vl[self.gear_msg_canfd]["GEAR"] + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(gear)) + + if self.TPMS: + tpms_unit = cp.vl["TPMS"]["UNIT"] * 0.725 if int(cp.vl["TPMS"]["UNIT"]) > 0 else 1. + ret.tpms.fl = tpms_unit * cp.vl["TPMS"]["PRESSURE_FL"] + ret.tpms.fr = tpms_unit * cp.vl["TPMS"]["PRESSURE_FR"] + ret.tpms.rl = tpms_unit * cp.vl["TPMS"]["PRESSURE_RL"] + ret.tpms.rr = tpms_unit * cp.vl["TPMS"]["PRESSURE_RR"] + + # TODO: figure out positions + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_1"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_2"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_3"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_4"], + ) + ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = ret.wheelSpeeds.fl <= STANDSTILL_THRESHOLD and ret.wheelSpeeds.rr <= STANDSTILL_THRESHOLD + + ret.brakeLights = ret.brakePressed or cp.vl["TCS"]["BrakeLight"] == 1 + + ret.steeringRateDeg = cp.vl["STEERING_SENSORS"]["STEERING_RATE"] + + # steering angle deg값이 이상함. mdps값이 더 신뢰가 가는듯.. torque steering 차량도 확인해야함. + #ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEERING_ANGLE"] * -1 + if self.CP.flags & HyundaiFlags.ANGLE_CONTROL: + ret.steeringAngleDeg = cp.vl["MDPS"]["STEERING_ANGLE_2"] * -1 + else: + ret.steeringAngleDeg = cp.vl["STEERING_SENSORS"]["STEERING_ANGLE"] * -1 + + 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) + ret.steerFaultTemporary = cp.vl["MDPS"]["LKA_FAULT"] != 0 or cp.vl["MDPS"]["LFA2_FAULT"] != 0 + #ret.steerFaultTemporary = False + + self.mdps_info = copy.copy(cp.vl["MDPS"]) + if self.STEER_TOUCH_2AF: + self.steer_touch_info = cp.vl["STEER_TOUCH_2AF"] + + blinkers_info = cp.vl["BLINKERS"] + left_blinker_lamp = blinkers_info["LEFT_LAMP"] or blinkers_info["LEFT_LAMP_ALT"] + right_blinker_lamp = blinkers_info["RIGHT_LAMP"] or blinkers_info["RIGHT_LAMP_ALT"] + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, left_blinker_lamp, right_blinker_lamp) + + if self.CP.enableBsm: + if self.cp_bsm is None: + if 442 in cp.seen_addresses: + self.cp_bsm = cp + print("######## BSM in ECAN") + elif 442 in cp_cam.seen_addresses: + self.cp_bsm = cp_cam + print("######## BSM in CAM") + else: + bsm_info = self.cp_bsm.vl["BLINDSPOTS_REAR_CORNERS"] + ret.leftBlindspot = (bsm_info["FL_INDICATOR"] + bsm_info["INDICATOR_LEFT_TWO"] + bsm_info["INDICATOR_LEFT_FOUR"]) > 0 + ret.rightBlindspot = (bsm_info["FR_INDICATOR"] + bsm_info["INDICATOR_RIGHT_TWO"] + bsm_info["INDICATOR_RIGHT_FOUR"]) > 0 + + # cruise state + if cp.vl[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"] in [Buttons.RES_ACCEL, Buttons.SET_DECEL] and self.CP.openpilotLongitudinalControl: + self.main_enabled = True + # CAN FD cars enable on main button press, set available if no TCS faults preventing engagement + ret.cruiseState.available = self.main_enabled #cp.vl["TCS"]["ACCEnable"] == 0 + if self.CP.flags & HyundaiFlags.CAMERA_SCC.value: + 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 + ret.cruiseState.standstill = False + if self.MainMode_ACC: + self.main_enabled = True + else: + cp_cruise_info = cp_cam if self.CP.flags & HyundaiFlags.CANFD_CAMERA_SCC else cp + ret.cruiseState.enabled = cp_cruise_info.vl["SCC_CONTROL"]["ACCMode"] in (1, 2) + if cp_cruise_info.vl["SCC_CONTROL"]["MainMode_ACC"] == 1: # carrot + ret.cruiseState.available = self.main_enabled = True + ret.pcmCruiseGap = int(np.clip(cp_cruise_info.vl["SCC_CONTROL"]["DISTANCE_SETTING"], 1, 4)) + ret.cruiseState.standstill = cp_cruise_info.vl["SCC_CONTROL"]["InfoDisplay"] >= 4 + ret.cruiseState.speed = cp_cruise_info.vl["SCC_CONTROL"]["VSetDis"] * speed_factor + self.cruise_info = copy.copy(cp_cruise_info.vl["SCC_CONTROL"]) + ret.brakeHoldActive = cp.vl["ESP_STATUS"]["AUTO_HOLD"] == 1 and cp_cruise_info.vl["SCC_CONTROL"]["ACCMode"] not in (1, 2) + + speed_limit_cam = False + if self.CP.flags & HyundaiFlags.CAMERA_SCC.value: + self.cruise_info = copy.copy(cp_cam.vl["SCC_CONTROL"]) + self.lfa_info = copy.copy(cp_cam.vl["LFA"]) + if self.CP.flags & HyundaiFlags.ANGLE_CONTROL.value: + self.lfa_alt_info = copy.copy(cp_cam.vl["LFA_ALT"]) + + if self.LFAHDA_CLUSTER: + self.lfahda_cluster_info = cp_cam.vl["LFAHDA_CLUSTER"] + + corner = False + self.adrv_info_161 = cp_cam.vl["ADRV_0x161"] if self.CCNC_0x161 else None + self.adrv_info_162 = cp_cam.vl["CCNC_0x162"] if self.CCNC_0x162 else None + if self.adrv_info_161 is not None: + ret.leftLongDist = self.lf_distance = self.adrv_info_162["LF_DETECT_DISTANCE"] + ret.rightLongDist = self.rf_distance = self.adrv_info_162["RF_DETECT_DISTANCE"] + self.lr_distance = self.adrv_info_162["LR_DETECT_DISTANCE"] + self.rr_distance = self.adrv_info_162["RR_DETECT_DISTANCE"] + ret.leftLatDist = self.adrv_info_162["LF_DETECT_LATERAL"] + ret.rightLatDist = self.adrv_info_162["RF_DETECT_LATERAL"] + corner = True + self.adrv_info_200 = cp_cam.vl["ADRV_0x200"] if self.ADRV_0x200 else None + self.adrv_info_1ea = cp_cam.vl["ADRV_0x1ea"] if self.ADRV_0x1ea else None + if self.adrv_info_1ea is not None: + if not corner: + ret.leftLongDist = self.adrv_info_1ea["LF_DETECT_DISTANCE"] + ret.rightLongDist = self.adrv_info_1ea["RF_DETECT_DISTANCE"] + self.lr_distance = self.adrv_info_1ea["LR_DETECT_DISTANCE"] + self.rr_distance = self.adrv_info_1ea["RR_DETECT_DISTANCE"] + ret.leftLatDist = self.adrv_info_1ea["LF_DETECT_LATERAL"] + ret.rightLatDist = self.adrv_info_1ea["RF_DETECT_LATERAL"] + corner = True + if corner: + left_block = True if 0 < ret.leftLongDist < 7.0 or 0 < self.lr_distance < 7.0 else False + right_block = True if 0 < ret.rightLongDist < 7.0 or 0 < self.rr_distance < 7.0 else False + if left_block: + ret.leftBlindspot = True + if right_block: + ret.rightBlindspot = True + + self.adrv_info_160 = cp_cam.vl["ADRV_0x160"] if self.ADRV_0x160 else None + + self.hda_info_4a3 = cp.vl["HDA_INFO_4A3"] if self.HDA_INFO_4A3 else None + if self.hda_info_4a3 is not None: + speedLimit = self.hda_info_4a3["SPEED_LIMIT"] + if not self.is_metric: + speedLimit *= CV.MPH_TO_KPH + ret.speedLimit = speedLimit if speedLimit < 255 else 0 + if int(self.hda_info_4a3["MapSource"]) == 2: + speed_limit_cam = True + + if self.time_zone == "UTC": + country_code = int(self.hda_info_4a3["CountryCode"]) + self.time_zone = ZoneInfo(NUMERIC_TO_TZ.get(country_code, "UTC")) + + self.new_msg_4b4 = cp.vl["NEW_MSG_4B4"] if self.NEW_MSG_4B4 else None + self.tcs_info_373 = cp.vl["TCS"] + + ret.gearStep = cp.vl["GEAR"]["GEAR_STEP"] if self.GEAR else 0 + if 1 <= ret.gearStep <= 8 and ret.gearShifter == GearShifter.unknown: + ret.gearShifter = GearShifter.drive + ret.gearStep = cp.vl["GEAR_ALT"]["GEAR_STEP"] if self.GEAR_ALT else ret.gearStep + + if cp_alt and self.CP.flags & HyundaiFlags.CAMERA_SCC: + lane_info = None + lane_info = cp_alt.vl["CAM_0x362"] if self.CAM_0x362 else None + lane_info = cp_alt.vl["CAM_0x2a4"] if self.CAM_0x2a4 else lane_info + + if lane_info is not None: + left_lane_prob = lane_info["LEFT_LANE_PROB"] + right_lane_prob = lane_info["RIGHT_LANE_PROB"] + left_lane_type = lane_info["LEFT_LANE_TYPE"] # 0: dashed, 1: solid, 2: undecided, 3: road edge, 4: DLM Inner Solid, 5: DLM InnerDashed, 6:DLM Inner Undecided, 7: Botts Dots, 8: Barrier + right_lane_type = lane_info["RIGHT_LANE_TYPE"] + left_lane_color = lane_info["LEFT_LANE_COLOR"] + right_lane_color = lane_info["RIGHT_LANE_COLOR"] + left_lane_info = left_lane_color * 10 + left_lane_type + right_lane_info = right_lane_color * 10 + right_lane_type + ret.leftLaneLine = left_lane_info + ret.rightLaneLine = right_lane_info + + # Manual Speed Limit Assist is a feature that replaces non-adaptive cruise control on EV CAN FD platforms. + # It limits the vehicle speed, overridable by pressing the accelerator past a certain point. + # The car will brake, but does not respect positive acceleration commands in this mode + # TODO: find this message on ICE & HYBRID cars + cruise control signals (if exists) + if self.CP.flags & HyundaiFlags.EV: + ret.cruiseState.nonAdaptive = cp.vl["MANUAL_SPEED_LIMIT_ASSIST"]["MSLA_ENABLED"] == 1 + + if self.LOCAL_TIME and self.time_zone != "UTC": + lt = cp.vl["LOCAL_TIME"] + y, m, d, H, M, S = int(lt["YEAR"]) + 2000, int(lt["MONTH"]), int(lt["DATE"]), int(lt["HOURS"]), int(lt["MINUTES"]), int(lt["SECONDS"]) + try: + dt_local = datetime(y, m, d, H, M, S, tzinfo=self.time_zone) + ret.datetime = int(dt_local.timestamp() * 1000) + except: + #print(f"Error parsing local time: {y}-{m}-{d} {H}:{M}:{S} in {self.time_zone}") + pass + + prev_cruise_buttons = self.cruise_buttons[-1] + #self.cruise_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]) + #carrot {{ + + if cp.vl[self.cruise_btns_msg_canfd]["LFA_BTN"]: + cruise_button = [Buttons.LFA_BUTTON] + else: + cruise_button = cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"] + + self.cruise_buttons.extend(cruise_button) + # }} carrot + + + if self.cruise_btns_msg_canfd in cp.vl: + self.cruise_buttons_msg = copy.copy(cp.vl[self.cruise_btns_msg_canfd]) + """ + if self.cruise_btns_msg_canfd in cp.vl: #carrot + if not cp.vl[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]: + pass + #print("empty cruise btns...") + else: + self.cruise_buttons_msg = copy.copy(cp.vl[self.cruise_btns_msg_canfd]) + """ + prev_main_buttons = self.main_buttons[-1] + #self.cruise_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["CRUISE_BUTTONS"]) + self.main_buttons.extend(cp.vl_all[self.cruise_btns_msg_canfd]["ADAPTIVE_CRUISE_MAIN_BTN"]) + if self.main_buttons[-1] != prev_main_buttons and not self.main_buttons[-1]: # and self.CP.openpilotLongitudinalControl: #carrot + self.main_enabled = not self.main_enabled + print("main_enabled = {}".format(self.main_enabled)) + self.buttons_counter = cp.vl[self.cruise_btns_msg_canfd]["COUNTER"] + ret.accFaulted = cp.vl["TCS"]["ACCEnable"] != 0 # 0 ACC CONTROL ENABLED, 1-3 ACC CONTROL DISABLED + + if not (self.CP.flags & HyundaiFlags.CAMERA_SCC): + if self.msg_0x362 is not None or 0x362 in cp_cam.seen_addresses: + self.msg_0x362 = cp_cam.vl["CAM_0x362"] + elif self.msg_0x2a4 is not None or 0x2a4 in cp_cam.seen_addresses: + self.msg_0x2a4 = cp_cam.vl["CAM_0x2a4"] + + speed_conv = CV.KPH_TO_MS # if self.is_metric else CV.MPH_TO_MS + cluSpeed = cp.vl["CRUISE_BUTTONS_ALT"]["CLU_SPEED"] + ret.vEgoCluster = cluSpeed * speed_conv # MPH단위에서도 KPH로 나오는듯.. + vEgoClu, aEgoClu = self.update_clu_speed_kf(ret.vEgoCluster) + ret.vCluRatio = (ret.vEgo / vEgoClu) if (vEgoClu > 3. and ret.vEgo > 3.) else 1.0 + + self.update_speed_limit(ret, speed_limit_cam) + + paddle_button = self.paddle_button_prev + if self.cruise_btns_msg_canfd == "CRUISE_BUTTONS": + paddle_button = 1 if cp.vl["CRUISE_BUTTONS"]["LEFT_PADDLE"] == 1 else 2 if cp.vl["CRUISE_BUTTONS"]["RIGHT_PADDLE"] == 1 else 0 + elif self.gear_msg_canfd == "GEAR": + paddle_button = 1 if cp.vl["GEAR"]["LEFT_PADDLE"] == 1 else 2 if cp.vl["GEAR"]["RIGHT_PADDLE"] == 1 else 0 + + ret.buttonEvents = [*create_button_events(self.cruise_buttons[-1], prev_cruise_buttons, BUTTONS_DICT), + *create_button_events(paddle_button, self.paddle_button_prev, {1: ButtonType.paddleLeft, 2: ButtonType.paddleRight}), + *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): + msgs = [] + if not (CP.flags & HyundaiFlags.CANFD_ALT_BUTTONS): + # TODO: this can be removed once we add dynamic support to vl_all + 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), + Bus.alt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus(CP).ACAN), + } + + def get_can_parsers(self, CP): + if CP.flags & HyundaiFlags.CANFD: + return self.get_can_parsers_canfd(CP) + + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + } diff --git a/opendbc_repo/opendbc/car/hyundai/fingerprints.py b/opendbc_repo/opendbc/car/hyundai/fingerprints.py new file mode 100644 index 0000000000..14bc3b3195 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/fingerprints.py @@ -0,0 +1,1322 @@ +from opendbc.car.structs import CarParams +from opendbc.car.hyundai.values import CAR + +Ecu = CarParams.Ecu + +# The existence of SCC or RDR in the fwdRadar FW usually determines the radar's function, +# i.e. if it sends the SCC messages or if another ECU like the camera or ADAS Driving ECU does + + +FW_VERSIONS = { + CAR.HYUNDAI_AZERA_7TH_GEN: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00GN7_ RDR ----- 1.00 1.03 99110-N1000 ', + b'\xf1\x8b #\x11\x15', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00GN7 MFC AT KOR LHD 1.00 1.03 99211-N1000 230322', + b'\xf1\x8b #\x11\x16', + ], + }, + CAR.HYUNDAI_AZERA_6TH_GEN: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00IG__ SCC F-CU- 1.00 1.00 99110-G8100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00IG MDPS C 1.00 1.02 56310G8510\x00 4IGSC103', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00IG MFC AT MES LHD 1.00 1.04 99211-G8100 200511', + ], + }, + CAR.HYUNDAI_AZERA_HEV_6TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00IGH MFC AT KOR LHD 1.00 1.00 99211-G8000 180903', + b'\xf1\x00IGH MFC AT KOR LHD 1.00 1.01 99211-G8000 181109', + b'\xf1\x00IGH MFC AT KOR LHD 1.00 1.02 99211-G8100 191029', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00IG MDPS C 1.00 1.00 56310M9600\x00 4IHSC100', + b'\xf1\x00IG MDPS C 1.00 1.01 56310M9350\x00 4IH8C101', + b'\xf1\x00IG MDPS C 1.00 1.02 56310M9350\x00 4IH8C102', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00IGhe SCC FHCUP 1.00 1.00 99110-M9100 ', + b'\xf1\x00IGhe SCC FHCUP 1.00 1.01 99110-M9000 ', + b'\xf1\x00IGhe SCC FHCUP 1.00 1.02 99110-M9000 ', + ], + }, + CAR.HYUNDAI_GENESIS: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DH LKAS 1.1 -150210', + b'\xf1\x00DH LKAS 1.4 -140110', + b'\xf1\x00DH LKAS 1.5 -140425', + ], + }, + CAR.HYUNDAI_IONIQ: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 ', + b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00AE MDPS C 1.00 1.03 56310/G2300 4AEHC103', + b'\xf1\x00AE MDPS C 1.00 1.05 56310/G2501 4AEHC105', + b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2301 4AEHC107', + b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2501 4AEHC107', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AEH MFC AT EUR LHD 1.00 1.00 95740-G2400 180222', + b'\xf1\x00AEH MFC AT EUR LHD 1.00 1.00 95740-G7200 160418', + b'\xf1\x00AEH MFC AT USA LHD 1.00 1.00 95740-G2400 180222', + ], + }, + CAR.HYUNDAI_IONIQ_PHEV_2019: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 ', + b'\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2501 4AEHC107', + b'\xf1\x00AE MDPS C 1.00 1.07 56310/G2551 4AEHC107', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AEP MFC AT AUS RHD 1.00 1.00 95740-G2400 180222', + b'\xf1\x00AEP MFC AT USA LHD 1.00 1.00 95740-G2400 180222', + ], + }, + CAR.HYUNDAI_IONIQ_PHEV: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AEhe SCC F-CUP 1.00 1.00 99110-G2200 ', + b'\xf1\x00AEhe SCC F-CUP 1.00 1.00 99110-G2600 ', + b'\xf1\x00AEhe SCC F-CUP 1.00 1.02 99110-G2100 ', + b'\xf1\x00AEhe SCC FHCUP 1.00 1.00 99110-G2600 ', + b'\xf1\x00AEhe SCC FHCUP 1.00 1.02 99110-G2100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2210 4APHC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2310 4APHC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2510 4APHC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2560 4APHC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310G2510\x00 4APHC101', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AEP MFC AT EUR LHD 1.00 1.01 95740-G2600 190819', + b'\xf1\x00AEP MFC AT EUR RHD 1.00 1.01 95740-G2600 190819', + b'\xf1\x00AEP MFC AT USA LHD 1.00 1.00 95740-G2700 201027', + b'\xf1\x00AEP MFC AT USA LHD 1.00 1.01 95740-G2600 190819', + ], + }, + CAR.HYUNDAI_IONIQ_EV_2020: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AEev SCC F-CUP 1.00 1.00 99110-G7200 ', + b'\xf1\x00AEev SCC F-CUP 1.00 1.00 99110-G7500 ', + b'\xf1\x00AEev SCC F-CUP 1.00 1.01 99110-G7000 ', + b'\xf1\x00AEev SCC F-CUP 1.00 1.01 99110-G7100 ', + b'\xf1\x00AEev SCC FHCUP 1.00 1.01 99110-G7100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G7310 4APEC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G7510 4APEC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G7560 4APEC101', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2600 190730', + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2700 201027', + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.01 95740-G2600 190819', + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.03 95740-G2500 190516', + b'\xf1\x00AEE MFC AT EUR RHD 1.00 1.01 95740-G2600 190819', + b'\xf1\x00AEE MFC AT USA LHD 1.00 1.01 95740-G2600 190819', + ], + }, + CAR.HYUNDAI_IONIQ_EV_LTD: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AEev SCC F-CUP 1.00 1.00 96400-G7000 ', + b'\xf1\x00AEev SCC F-CUP 1.00 1.00 96400-G7100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00AE MDPS C 1.00 1.02 56310G7300\x00 4AEEC102', + b'\xf1\x00AE MDPS C 1.00 1.03 56310/G7300 4AEEC103', + b'\xf1\x00AE MDPS C 1.00 1.03 56310G7300\x00 4AEEC103', + b'\xf1\x00AE MDPS C 1.00 1.04 56310/G7301 4AEEC104', + b'\xf1\x00AE MDPS C 1.00 1.04 56310/G7501 4AEEC104', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2300 170703', + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G2400 180222', + b'\xf1\x00AEE MFC AT EUR LHD 1.00 1.00 95740-G7200 160418', + b'\xf1\x00AEE MFC AT USA LHD 1.00 1.00 95740-G2400 180222', + ], + }, + CAR.HYUNDAI_IONIQ_HEV_2022: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AEhe SCC F-CUP 1.00 1.00 99110-G2600 ', + b'\xf1\x00AEhe SCC FHCUP 1.00 1.00 99110-G2600 ', + b'\xf1\x00AEhe SCC FHCUP 1.00 1.02 99110-G2100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00AE MDPS C 1.00 1.01 56310/G2510 4APHC101', + b'\xf1\x00AE MDPS C 1.00 1.01 56310G2510\x00 4APHC101', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AEH MFC AT USA LHD 1.00 1.00 95740-G2700 201027', + b'\xf1\x00AEH MFC AT USA LHD 1.00 1.01 95740-G2600 190819', + ], + }, + CAR.HYUNDAI_SONATA: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DN8_ SCC F-CU- 1.00 1.00 99110-L0000 ', + b'\xf1\x00DN8_ SCC F-CUP 1.00 1.00 99110-L0000 ', + b'\xf1\x00DN8_ SCC F-CUP 1.00 1.02 99110-L1000 ', + b'\xf1\x00DN8_ SCC FHCUP 1.00 1.00 99110-L0000 ', + b'\xf1\x00DN8_ SCC FHCUP 1.00 1.01 99110-L1000 ', + b'\xf1\x00DN8_ SCC FHCUP 1.00 1.02 99110-L1000 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00DN ESC \x01 102\x19\x04\x13 58910-L1300', + b'\xf1\x00DN ESC \x03 100 \x08\x01 58910-L0300', + b'\xf1\x00DN ESC \x06 104\x19\x08\x01 58910-L0100', + b'\xf1\x00DN ESC \x06 106 \x07\x01 58910-L0100', + b'\xf1\x00DN ESC \x06 107 \x07\x03 58910-L1300', + b'\xf1\x00DN ESC \x06 107"\x08\x07 58910-L0100', + b'\xf1\x00DN ESC \x07 104\x19\x08\x01 58910-L0100', + b'\xf1\x00DN ESC \x07 106 \x07\x01 58910-L0100', + b'\xf1\x00DN ESC \x07 107"\x08\x07 58910-L0100', + b'\xf1\x00DN ESC \x08 103\x19\x06\x01 58910-L1300', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DN8 MDPS C 1,00 1,01 56310L0010\x00 4DNAC101', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0010 4DNAC101', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0200 4DNAC101', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0200 4DNAC102', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0210 4DNAC101', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L0210 4DNAC102', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0010\x00 4DNAC101', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0200\x00 4DNAC102', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0210\x00 4DNAC101', + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310L0210\x00 4DNAC102', + b'\xf1\x00DN8 MDPS C 1.00 1.03 56310-L1010 4DNDC103', + b'\xf1\x00DN8 MDPS C 1.00 1.03 56310-L1030 4DNDC103', + b'\xf1\x00DN8 MDPS R 1.00 1.00 57700-L0000 4DNAP100', + b'\xf1\x00DN8 MDPS R 1.00 1.00 57700-L0000 4DNAP101', + b'\xf1\x00DN8 MDPS R 1.00 1.02 57700-L1000 4DNDP105', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DN8 MFC AT KOR LHD 1.00 1.02 99211-L1000 190422', + b'\xf1\x00DN8 MFC AT KOR LHD 1.00 1.04 99211-L1000 191016', + b'\xf1\x00DN8 MFC AT RUS LHD 1.00 1.03 99211-L1000 190705', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.00 99211-L0000 190716', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.01 99211-L0000 191016', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.03 99211-L0000 210603', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.05 99211-L1000 201109', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.06 99211-L1000 210325', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.07 99211-L1000 211223', + ], + }, + CAR.HYUNDAI_SONATA_LF: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00LF__ SCC F-CUP 1.00 1.00 96401-C2200 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00LF ESC \t 11 \x17\x01\x13 58920-C2610', + b'\xf1\x00LF ESC \x0c 11 \x17\x01\x13 58920-C2610', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00LFF LKAS AT USA LHD 1.00 1.01 95740-C1000 E51', + b'\xf1\x00LFF LKAS AT USA LHD 1.01 1.02 95740-C1000 E52', + ], + }, + CAR.HYUNDAI_SONATA_2024: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DN8_ RDR ----- 1.00 1.00 99110-L1800 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DN8 MFC AT KOR LHD 1.00 1.01 99211-L1800 230512', + b'\xf1\x00DN8 MFC AT USA LHD 1.00 1.01 99211-L1800 230512', + ], + }, + CAR.HYUNDAI_TUCSON: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00TL__ FCA F-CUP 1.00 1.01 99110-D3500 ', + b'\xf1\x00TL__ FCA F-CUP 1.00 1.02 99110-D3510 ', + b'\xf1\x00TL__ FCA FHCUP 1.00 1.02 99110-D3500 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00TL MFC AT KOR LHD 1.00 1.02 95895-D3800 180719', + b'\xf1\x00TL MFC AT KOR LHD 1.00 1.06 95895-D3800 190107', + b'\xf1\x00TL MFC AT USA LHD 1.00 1.06 95895-D3800 190107', + ], + }, + CAR.HYUNDAI_SANTA_FE: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00TM__ SCC F-CUP 1.00 1.00 99110-S1210 ', + b'\xf1\x00TM__ SCC F-CUP 1.00 1.01 99110-S2000 ', + b'\xf1\x00TM__ SCC F-CUP 1.00 1.02 99110-S2000 ', + b'\xf1\x00TM__ SCC F-CUP 1.00 1.03 99110-S2000 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00TM ESC \x02 100\x18\x030 58910-S2600', + b'\xf1\x00TM ESC \x02 102\x18\x07\x01 58910-S2600', + b'\xf1\x00TM ESC \x02 103\x18\x11\x05 58910-S2500', + b'\xf1\x00TM ESC \x02 103\x18\x11\x07 58910-S2600', + b'\xf1\x00TM ESC \x02 104\x19\x07\x07 58910-S2600', + b'\xf1\x00TM ESC \x03 103\x18\x11\x07 58910-S2600', + b'\xf1\x00TM ESC \x0c 103\x18\x11\x08 58910-S2650', + b'\xf1\x00TM ESC \r 100\x18\x031 58910-S2650', + b'\xf1\x00TM ESC \r 103\x18\x11\x08 58910-S2650', + b'\xf1\x00TM ESC \r 104\x19\x07\x08 58910-S2650', + b'\xf1\x00TM ESC \r 105\x19\x05# 58910-S1500', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00TM MDPS C 1.00 1.00 56340-S2000 8409', + b'\xf1\x00TM MDPS C 1.00 1.00 56340-S2000 8A12', + b'\xf1\x00TM MDPS C 1.00 1.01 56340-S2000 9129', + b'\xf1\x00TM MDPS R 1.00 1.02 57700-S1100 4TMDP102', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00TM MFC AT EUR LHD 1.00 1.01 99211-S1010 181207', + b'\xf1\x00TM MFC AT USA LHD 1.00 1.00 99211-S2000 180409', + ], + }, + CAR.HYUNDAI_SANTA_FE_2022: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00TM__ SCC F-CUP 1.00 1.00 99110-S1500 ', + b'\xf1\x00TM__ SCC F-CUP 1.00 1.01 99110-S1500 ', + b'\xf1\x00TM__ SCC FHCUP 1.00 1.00 99110-S1500 ', + b'\xf1\x00TM__ SCC FHCUP 1.00 1.01 99110-S1500 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00TM ESC \x01 102!\x04\x03 58910-S2DA0', + b'\xf1\x00TM ESC \x01 104"\x10\x07 58910-S2DA0', + b'\xf1\x00TM ESC \x02 101 \x08\x04 58910-S2GA0', + b'\xf1\x00TM ESC \x02 103"\x07\x08 58910-S2GA0', + b'\xf1\x00TM ESC \x03 101 \x08\x02 58910-S2DA0', + b'\xf1\x00TM ESC \x03 102!\x04\x03 58910-S2DA0', + b'\xf1\x00TM ESC \x03 103"\x07\x06 58910-S2DA0', + b'\xf1\x00TM ESC \x04 101 \x08\x04 58910-S2GA0', + b'\xf1\x00TM ESC \x04 102!\x04\x05 58910-S2GA0', + b'\xf1\x00TM ESC \x04 103"\x07\x08 58910-S2GA0', + b'\xf1\x00TM ESC \x1e 102 \x08\x08 58910-S1DA0', + b'\xf1\x00TM ESC 103!\x030 58910-S1MA0', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00TM MDPS C 1.00 1.01 56310-S1AB0 4TSDC101', + b'\xf1\x00TM MDPS C 1.00 1.01 56310-S1EB0 4TSDC101', + b'\xf1\x00TM MDPS C 1.00 1.02 56370-S2AA0 0B19', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00TM MFC AT EUR LHD 1.00 1.03 99211-S1500 210224', + b'\xf1\x00TM MFC AT MES LHD 1.00 1.05 99211-S1500 220126', + b'\xf1\x00TMA MFC AT MEX LHD 1.00 1.01 99211-S2500 210205', + b'\xf1\x00TMA MFC AT USA LHD 1.00 1.00 99211-S2500 200720', + b'\xf1\x00TMA MFC AT USA LHD 1.00 1.01 99211-S2500 210205', + b'\xf1\x00TMA MFC AT USA LHD 1.00 1.03 99211-S2500 220414', + ], + }, + CAR.HYUNDAI_SANTA_FE_HEV_2022: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00TMhe SCC FHCUP 1.00 1.00 99110-CL500 ', + b'\xf1\x00TMhe SCC FHCUP 1.00 1.01 99110-CL500 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLAC0 4TSHC102', + b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLEC0 4TSHC102', + b'\xf1\x00TM MDPS C 1.00 1.02 56310-GA000 4TSHA100', + b'\xf1\x00TM MDPS C 1.00 1.02 56310GA000\x00 4TSHA100', + b'\xf1\x00TM MDPS R 1.00 1.05 57700-CL000 4TSHP105', + b'\xf1\x00TM MDPS R 1.00 1.06 57700-CL000 4TSHP106', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00TMA MFC AT USA LHD 1.00 1.03 99211-S2500 220414', + b'\xf1\x00TMH MFC AT EUR LHD 1.00 1.06 99211-S1500 220727', + b'\xf1\x00TMH MFC AT KOR LHD 1.00 1.06 99211-S1500 220727', + b'\xf1\x00TMH MFC AT USA LHD 1.00 1.03 99211-S1500 210224', + b'\xf1\x00TMH MFC AT USA LHD 1.00 1.05 99211-S1500 220126', + b'\xf1\x00TMH MFC AT USA LHD 1.00 1.06 99211-S1500 220727', + ], + }, + CAR.HYUNDAI_SANTA_FE_PHEV_2022: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00TMhe SCC F-CUP 1.00 1.00 99110-CL500 ', + b'\xf1\x00TMhe SCC FHCUP 1.00 1.00 99110-CL500 ', + b'\xf1\x00TMhe SCC FHCUP 1.00 1.01 99110-CL500 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLAC0 4TSHC102', + b'\xf1\x00TM MDPS C 1.00 1.02 56310-CLEC0 4TSHC102', + b'\xf1\x00TM MDPS C 1.00 1.02 56310CLEC0\x00 4TSHC102', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00TMP MFC AT USA LHD 1.00 1.03 99211-S1500 210224', + b'\xf1\x00TMP MFC AT USA LHD 1.00 1.05 99211-S1500 220126', + b'\xf1\x00TMP MFC AT USA LHD 1.00 1.06 99211-S1500 220727', + ], + }, + CAR.HYUNDAI_CUSTIN_1ST_GEN: { + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00KU ESC \x01 101!\x02\x03 58910-O3200', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00KU__ SCC F-CUP 1.00 1.01 99110-O3000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00KU MDPS C 1.00 1.01 56310/O3100 4KUCC101', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00KU2 MFC AT CHN LHD 1.00 1.02 99211-O3000 220923', + ], + }, + CAR.KIA_STINGER: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CK__ SCC F_CUP 1.00 1.01 96400-J5000 ', + b'\xf1\x00CK__ SCC F_CUP 1.00 1.01 96400-J5100 ', + b'\xf1\x00CK__ SCC F_CUP 1.00 1.02 96400-J5100 ', + b'\xf1\x00CK__ SCC F_CUP 1.00 1.03 96400-J5100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00CK MDPS R 1.00 1.04 57700-J5200 4C2CL104', + b'\xf1\x00CK MDPS R 1.00 1.04 57700-J5220 4C2VL104', + b'\xf1\x00CK MDPS R 1.00 1.04 57700-J5420 4C4VL104', + b'\xf1\x00CK MDPS R 1.00 1.06 57700-J5220 4C2VL106', + b'\xf1\x00CK MDPS R 1.00 1.06 57700-J5420 4C4VL106', + b'\xf1\x00CK MDPS R 1.00 1.07 57700-J5220 4C2VL107', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CK MFC AT EUR LHD 1.00 1.03 95740-J5000 170822', + b'\xf1\x00CK MFC AT USA LHD 1.00 1.03 95740-J5000 170822', + b'\xf1\x00CK MFC AT USA LHD 1.00 1.04 95740-J5000 180504', + ], + }, + CAR.KIA_STINGER_2022: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CK__ SCC F-CUP 1.00 1.00 99110-J5500 ', + b'\xf1\x00CK__ SCC FHCUP 1.00 1.00 99110-J5500 ', + b'\xf1\x00CK__ SCC FHCUP 1.00 1.00 99110-J5600 ', + b'\xf1\x00CK__ SCC FHCUP 1.00 1.01 99110-J5100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5300 4C2CL503', + b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5320 4C2VL503', + b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5380 4C2VR503', + b'\xf1\x00CK MDPS R 1.00 5.03 57700-J5520 4C4VL503', + b'\xf1\x00CK MDPS R 1.00 5.04 57700-J5520 4C4VL504', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CK MFC AT AUS RHD 1.00 1.00 99211-J5500 210622', + b'\xf1\x00CK MFC AT KOR LHD 1.00 1.00 99211-J5500 210622', + b'\xf1\x00CK MFC AT USA LHD 1.00 1.00 99211-J5500 210622', + b'\xf1\x00CK MFC AT USA LHD 1.00 1.03 99211-J5000 201209', + ], + }, + CAR.HYUNDAI_PALISADE: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00LX2 SCC FHCUP 1.00 1.04 99110-S8100 ', + b'\xf1\x00LX2_ SCC F-CU- 1.00 1.05 99110-S8100 ', + b'\xf1\x00LX2_ SCC F-CUP 1.00 1.00 99110-S8110 ', + b'\xf1\x00LX2_ SCC F-CUP 1.00 1.04 99110-S8100 ', + b'\xf1\x00LX2_ SCC F-CUP 1.00 1.05 99110-S8100 ', + b'\xf1\x00LX2_ SCC FHCU- 1.00 1.05 99110-S8100 ', + b'\xf1\x00LX2_ SCC FHCUP 1.00 1.00 99110-S8110 ', + b'\xf1\x00LX2_ SCC FHCUP 1.00 1.03 99110-S8100 ', + b'\xf1\x00LX2_ SCC FHCUP 1.00 1.04 99110-S8100 ', + b'\xf1\x00LX2_ SCC FHCUP 1.00 1.05 99110-S8100 ', + b'\xf1\x00ON__ FCA FHCU- 1.00 1.00 99110-S9110 ', + b'\xf1\x00ON__ FCA FHCUP 1.00 1.00 99110-S9110 ', + b'\xf1\x00ON__ FCA FHCUP 1.00 1.01 99110-S9110 ', + b'\xf1\x00ON__ FCA FHCUP 1.00 1.02 99110-S9100 ', + b'\xf1\x00ON__ FCA FHCUP 1.00 1.03 99110-S9100 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00LX ESC \x01 103\x19\t\x10 58910-S8360', + b'\xf1\x00LX ESC \x01 1031\t\x10 58910-S8360', + b'\xf1\x00LX ESC \x01 104 \x10\x15 58910-S8350', + b'\xf1\x00LX ESC \x01 104 \x10\x16 58910-S8360', + b'\xf1\x00LX ESC \x0b 101\x19\x03\x17 58910-S8330', + b'\xf1\x00LX ESC \x0b 101\x19\x03 58910-S8360', + b'\xf1\x00LX ESC \x0b 102\x19\x05\x07 58910-S8330', + b'\xf1\x00LX ESC \x0b 103\x19\t\x07 58910-S8330', + b'\xf1\x00LX ESC \x0b 103\x19\t\t 58910-S8350', + b'\xf1\x00LX ESC \x0b 103\x19\t\x10 58910-S8360', + b'\xf1\x00LX ESC \x0b 104 \x10\x13 58910-S8330', + b'\xf1\x00LX ESC \x0b 104 \x10\x16 58910-S8360', + b'\xf1\x00ON ESC \x01 101\x19\t\x08 58910-S9360', + b'\xf1\x00ON ESC \x0b 100\x18\x12\x18 58910-S9360', + b'\xf1\x00ON ESC \x0b 101\x19\t\x05 58910-S9320', + b'\xf1\x00ON ESC \x0b 101\x19\t\x08 58910-S9360', + b'\xf1\x00ON ESC \x0b 103$\x04\x08 58910-S9360', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00LX2 MDPS C 1,00 1,03 56310-S8020 4LXDC103', + b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-S8000 4LXDC103', + b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-S8020 4LXDC103', + b'\xf1\x00LX2 MDPS C 1.00 1.03 56310-XX000 4LXDC103', + b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8000 4LXDC104', + b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8020 4LXDC104', + b'\xf1\x00LX2 MDPS C 1.00 1.04 56310-S8420 4LXDC104', + b'\xf1\x00LX2 MDPS R 1.00 1.02 56370-S8300 9318', + b'\xf1\x00ON MDPS C 1.00 1.00 56340-S9000 8B13', + b'\xf1\x00ON MDPS C 1.00 1.01 56340-S9000 9201', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00LX2 MFC AT KOR LHD 1.00 1.08 99211-S8100 200903', + b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.00 99211-S8110 210226', + b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.03 99211-S8100 190125', + b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.05 99211-S8100 190909', + b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.07 99211-S8100 200422', + b'\xf1\x00LX2 MFC AT USA LHD 1.00 1.08 99211-S8100 200903', + b'\xf1\x00ON MFC AT USA LHD 1.00 1.01 99211-S9100 181105', + b'\xf1\x00ON MFC AT USA LHD 1.00 1.03 99211-S9100 200720', + b'\xf1\x00ON MFC AT USA LHD 1.00 1.04 99211-S9100 211227', + ], + }, + CAR.HYUNDAI_VELOSTER: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JS__ SCC H-CUP 1.00 1.02 95650-J3200 ', + b'\xf1\x00JS__ SCC HNCUP 1.00 1.02 95650-J3100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00JSL MDPS C 1.00 1.03 56340-J3000 8308', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JS LKAS AT KOR LHD 1.00 1.03 95740-J3000 K33', + b'\xf1\x00JS LKAS AT USA LHD 1.00 1.02 95740-J3000 K32', + ], + }, + CAR.GENESIS_G70: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00IK__ SCC F-CUP 1.00 1.01 96400-G9100 ', + b'\xf1\x00IK__ SCC F-CUP 1.00 1.02 96400-G9100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00IK MDPS R 1.00 1.06 57700-G9420 4I4VL106', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00IK MFC AT USA LHD 1.00 1.01 95740-G9000 170920', + ], + }, + CAR.GENESIS_G70_2020: { + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00IK MDPS R 1.00 1.06 57700-G9220 4I2VL106', + b'\xf1\x00IK MDPS R 1.00 1.07 57700-G9220 4I2VL107', + b'\xf1\x00IK MDPS R 1.00 1.07 57700-G9420 4I4VL107', + b'\xf1\x00IK MDPS R 1.00 1.08 57700-G9200 4I2CL108', + b'\xf1\x00IK MDPS R 1.00 1.08 57700-G9420 4I4VL108', + b'\xf1\x00IK MDPS R 1.00 5.09 57700-G9520 4I4VL509', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00IK__ SCC F-CUP 1.00 1.01 96400-G9100 ', + b'\xf1\x00IK__ SCC F-CUP 1.00 1.02 96400-G9100 ', + b'\xf1\x00IK__ SCC F-CUP 1.00 1.02 96400-G9100 \xf1\xa01.02', + b'\xf1\x00IK__ SCC FHCUP 1.00 1.00 99110-G9300 ', + b'\xf1\x00IK__ SCC FHCUP 1.00 1.02 96400-G9000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00IK MFC AT KOR LHD 1.00 1.01 95740-G9000 170920', + b'\xf1\x00IK MFC AT USA LHD 1.00 1.01 95740-G9000 170920', + b'\xf1\x00IK MFC AT USA LHD 1.00 1.04 99211-G9000 220401', + ], + }, + CAR.GENESIS_G80: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DH__ SCC F-CU- 1.00 1.01 96400-B1110 ', + b'\xf1\x00DH__ SCC F-CUP 1.00 1.01 96400-B1120 ', + b'\xf1\x00DH__ SCC F-CUP 1.00 1.02 96400-B1120 ', + b'\xf1\x00DH__ SCC FHCUP 1.00 1.01 96400-B1110 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DH LKAS AT EUR LHD 1.01 1.01 95895-B1500 161014', + b'\xf1\x00DH LKAS AT KOR LHD 1.01 1.01 95895-B1500 161014', + b'\xf1\x00DH LKAS AT KOR LHD 1.01 1.02 95895-B1500 170810', + b'\xf1\x00DH LKAS AT USA LHD 1.01 1.01 95895-B1500 161014', + b'\xf1\x00DH LKAS AT USA LHD 1.01 1.02 95895-B1500 170810', + b'\xf1\x00DH LKAS AT USA LHD 1.01 1.03 95895-B1500 180713', + b'\xf1\x00DH LKAS AT USA LHD 1.01 1.04 95895-B1500 181213', + ], + }, + CAR.GENESIS_G80_2ND_GEN_FL: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00RG3_ SCC ----- 1.00 1.02 99110-T1120 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00RG3 MFC AT USA LHD 1.00 1.01 99211-T1200 230607', + ], + }, + CAR.GENESIS_G90: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00HI__ SCC F-CUP 1.00 1.01 96400-D2100 ', + b'\xf1\x00HI__ SCC FHCUP 1.00 1.02 99110-D2100 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00HI LKAS AT USA LHD 1.00 1.00 95895-D2020 160302', + b'\xf1\x00HI LKAS AT USA LHD 1.00 1.00 95895-D2030 170208', + b'\xf1\x00HI LKAS AT USA LHD 1.00 1.01 95895-D2030 170811', + b'\xf1\x00HI MFC AT USA LHD 1.00 1.03 99211-D2000 190831', + ], + }, + CAR.HYUNDAI_KONA: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00OS__ SCC F-CUP 1.00 1.00 95655-J9200 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00OS MDPS C 1.00 1.05 56310J9030\x00 4OSDC105', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00OS9 LKAS AT USA LHD 1.00 1.00 95740-J9300 g21', + ], + }, + CAR.KIA_CEED: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CD__ SCC F-CUP 1.00 1.00 99110-J7500 ', + b'\xf1\x00CD__ SCC F-CUP 1.00 1.02 99110-J7000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00CD MDPS C 1.00 1.06 56310-XX000 4CDEC106', + b'\xf1\x00CDT MDPS C 1.00 1.00 56310-XX000 4CDTC100', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CD LKAS AT EUR LHD 1.00 1.01 99211-J7000 B40', + b'\xf1\x00CDT LKAS AT EUR LHD 1.00 1.01 99211-J7210 521', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00CD ESC \x03 102\x18\x08\x05 58920-J7350', + b'\xf1\x00CD ESC \x0b 101 \x10\x03 58910-J7AC0', + ], + }, + CAR.KIA_FORTE: { + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00BD MDPS C 1.00 1.02 56310-XX000 4BD2C102', + b'\xf1\x00BD MDPS C 1.00 1.08 56310/M6300 4BDDC108', + b'\xf1\x00BD MDPS C 1.00 1.08 56310M6300\x00 4BDDC108', + b'\xf1\x00BDm MDPS C A.01 1.01 56310M7800\x00 4BPMC101', + b'\xf1\x00BDm MDPS C A.01 1.03 56310M7800\x00 4BPMC103', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00BD LKAS AT USA LHD 1.00 1.04 95740-M6000 J33', + b'\xf1\x00BDP LKAS AT USA LHD 1.00 1.05 99211-M6500 744', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00BDPE_SCC FHCUPC 1.00 1.04 99110-M6500\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'\xf1\x00BD__ SCC H-CUP 1.00 1.02 99110-M6000 ', + ], + }, + CAR.KIA_K5_2021: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DL3_ SCC F-CUP 1.00 1.03 99110-L2100 ', + b'\xf1\x00DL3_ SCC FHCUP 1.00 1.03 99110-L2000 ', + b'\xf1\x00DL3_ SCC FHCUP 1.00 1.03 99110-L2100 ', + b'\xf1\x00DL3_ SCC FHCUP 1.00 1.04 99110-L2100 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DL3 MDPS C 1.00 1.01 56310-L3110 4DLAC101', + b'\xf1\x00DL3 MDPS C 1.00 1.01 56310-L3220 4DLAC101', + b'\xf1\x00DL3 MDPS C 1.00 1.01 56310L3220\x00 4DLAC101', + b'\xf1\x00DL3 MDPS C 1.00 1.02 56310-L2220 4DLDC102', + b'\xf1\x00DL3 MDPS C 1.00 1.02 56310L3220\x00 4DLAC102', + b'\xf1\x00DL3 MDPS R 1.00 1.02 57700-L3000 4DLAP102', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DL3 MFC AT KOR LHD 1.00 1.04 99210-L2000 210527', + b'\xf1\x00DL3 MFC AT USA LHD 1.00 1.03 99210-L3000 200915', + b'\xf1\x00DL3 MFC AT USA LHD 1.00 1.04 99210-L3000 210208', + b'\xf1\x00DL3 MFC AT USA LHD 1.00 1.05 99210-L3000 211222', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00DL ESC \x01 104 \x07\x12 58910-L2200', + b'\xf1\x00DL ESC \x03 100 \x08\x02 58910-L3600', + b'\xf1\x00DL ESC \x06 101 \x04\x02 58910-L3200', + b'\xf1\x00DL ESC \x06 102 \x07\x02 58910-L3200', + b'\xf1\x00DL ESC \x06 103"\x08\x06 58910-L3200', + b'\xf1\x00DL ESC \t 100 \x06\x02 58910-L3800', + b'\xf1\x00DL ESC \t 101 \x07\x02 58910-L3800', + b'\xf1\x00DL ESC \t 102"\x08\x10 58910-L3800', + ], + }, + CAR.KIA_K5_HEV_2020: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DLhe SCC FHCUP 1.00 1.02 99110-L7000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DL3 MDPS C 1.00 1.02 56310-L7000 4DLHC102', + b'\xf1\x00DL3 MDPS C 1.00 1.02 56310-L7220 4DLHC102', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.01 99210-L2000 191022', + b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.02 99210-L2000 200309', + b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.04 99210-L2000 210527', + ], + }, + CAR.KIA_K5_DL3_24_HEV: { # (DL3) + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DL3HMFC AT KOR LHD 1.00 1.02 99210-L2500 230911' + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DL3_ RDR ----- 1.00 1.01 99110-L2500 ', + ], + }, + CAR.HYUNDAI_KONA_EV: { + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00OS IEB \x01 212 \x11\x13 58520-K4000', + b'\xf1\x00OS IEB \x02 210 \x02\x14 58520-K4000', + b'\xf1\x00OS IEB \x02 212 \x11\x13 58520-K4000', + b'\xf1\x00OS IEB \x03 210 \x02\x14 58520-K4000', + b'\xf1\x00OS IEB \x03 211 \x04\x02 58520-K4000', + b'\xf1\x00OS IEB \x03 212 \x11\x13 58520-K4000', + b'\xf1\x00OS IEB \x04 212 \x11\x13 58520-K4000', + b'\xf1\x00OS IEB \r 105\x18\t\x18 58520-K4000', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00OE2 LKAS AT EUR LHD 1.00 1.00 95740-K4200 200', + b'\xf1\x00OSE LKAS AT AUS RHD 1.00 1.00 95740-K4300 W50', + b'\xf1\x00OSE LKAS AT EUR LHD 1.00 1.00 95740-K4100 W40', + b'\xf1\x00OSE LKAS AT EUR RHD 1.00 1.00 95740-K4100 W40', + b'\xf1\x00OSE LKAS AT KOR LHD 1.00 1.00 95740-K4100 W40', + b'\xf1\x00OSE LKAS AT KOR LHD 1.00 1.00 95740-K4300 W50', + b'\xf1\x00OSE LKAS AT USA LHD 1.00 1.00 95740-K4100 W40', + b'\xf1\x00OSE LKAS AT USA LHD 1.00 1.00 95740-K4300 W50', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00OS MDPS C 1.00 1.03 56310/K4550 4OEDC103', + b'\xf1\x00OS MDPS C 1.00 1.04 56310-XX000 4OEDC104', + b'\xf1\x00OS MDPS C 1.00 1.04 56310/K4550 4OEDC104', + b'\xf1\x00OS MDPS C 1.00 1.04 56310K4000\x00 4OEDC104', + b'\xf1\x00OS MDPS C 1.00 1.04 56310K4050\x00 4OEDC104', + b'\xf1\x00OS MDPS C 1.00 1.05 56310K4000\x00 4OEDC105', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00OSev SCC F-CUP 1.00 1.00 99110-K4000 ', + b'\xf1\x00OSev SCC F-CUP 1.00 1.00 99110-K4100 ', + b'\xf1\x00OSev SCC F-CUP 1.00 1.01 99110-K4000 ', + b'\xf1\x00OSev SCC FNCUP 1.00 1.01 99110-K4000 ', + ], + }, + CAR.HYUNDAI_KONA_EV_2022: { + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00OS IEB \x02 102"\x05\x16 58520-K4010', + b'\xf1\x00OS IEB \x03 101 \x11\x13 58520-K4010', + b'\xf1\x00OS IEB \x03 102"\x05\x16 58520-K4010', + b'\xf1\x00OS IEB \r 102"\x05\x16 58520-K4010', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00OSP LKA AT AUS RHD 1.00 1.04 99211-J9200 904', + b'\xf1\x00OSP LKA AT CND LHD 1.00 1.02 99211-J9110 802', + b'\xf1\x00OSP LKA AT EUR LHD 1.00 1.04 99211-J9200 904', + b'\xf1\x00OSP LKA AT EUR RHD 1.00 1.02 99211-J9110 802', + b'\xf1\x00OSP LKA AT EUR RHD 1.00 1.04 99211-J9200 904', + b'\xf1\x00OSP LKA AT USA LHD 1.00 1.04 99211-J9200 904', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00OSP MDPS C 1.00 1.02 56310-K4271 4OEPC102', + b'\xf1\x00OSP MDPS C 1.00 1.02 56310/K4271 4OEPC102', + b'\xf1\x00OSP MDPS C 1.00 1.02 56310/K4970 4OEPC102', + b'\xf1\x00OSP MDPS C 1.00 1.02 56310K4260\x00 4OEPC102', + b'\xf1\x00OSP MDPS C 1.00 1.02 56310K4261\x00 4OEPC102', + b'\xf1\x00OSP MDPS C 1.00 1.02 56310K4971\x00 4OEPC102', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00YB__ FCA ----- 1.00 1.01 99110-K4500 \x00\x00\x00', + ], + }, + CAR.HYUNDAI_KONA_EV_2ND_GEN: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00SXev RDR ----- 1.00 1.00 99110-BF000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00SX2EMFC AT KOR LHD 1.00 1.00 99211-BF000 230410', + ], + }, + CAR.HYUNDAI_KONA_HEV_2ND_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00SX2HMFC AT EUR RHD 1.00 1.04 99211-BE000 231010', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00SX2_ RDR ----- 1.00 1.02 99110-BE500 ', + ], + }, + CAR.KIA_NIRO_EV: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4000 ', + b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4100 ', + b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4500 ', + b'\xf1\x00DEev SCC F-CUP 1.00 1.00 99110-Q4600 ', + b'\xf1\x00DEev SCC F-CUP 1.00 1.02 96400-Q4000 ', + b'\xf1\x00DEev SCC F-CUP 1.00 1.02 96400-Q4100 ', + b'\xf1\x00DEev SCC F-CUP 1.00 1.03 96400-Q4100 ', + b'\xf1\x00DEev SCC FHCUP 1.00 1.00 99110-Q4600 ', + b'\xf1\x00DEev SCC FHCUP 1.00 1.03 96400-Q4000 ', + b'\xf1\x00DEev SCC FNCUP 1.00 1.00 99110-Q4600 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DE MDPS C 1.00 1.04 56310Q4100\x00 4DEEC104', + b'\xf1\x00DE MDPS C 1.00 1.05 56310Q4000\x00 4DEEC105', + b'\xf1\x00DE MDPS C 1.00 1.05 56310Q4100\x00 4DEEC105', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DEE MFC AT EUR LHD 1.00 1.00 99211-Q4000 191211', + b'\xf1\x00DEE MFC AT EUR LHD 1.00 1.00 99211-Q4100 200706', + b'\xf1\x00DEE MFC AT EUR LHD 1.00 1.03 95740-Q4000 180821', + b'\xf1\x00DEE MFC AT KOR LHD 1.00 1.02 95740-Q4000 180705', + b'\xf1\x00DEE MFC AT KOR LHD 1.00 1.03 95740-Q4000 180821', + b'\xf1\x00DEE MFC AT USA LHD 1.00 1.00 99211-Q4000 191211', + b'\xf1\x00DEE MFC AT USA LHD 1.00 1.01 99211-Q4500 210428', + b'\xf1\x00DEE MFC AT USA LHD 1.00 1.02 99211-Q4100 201218', + b'\xf1\x00DEE MFC AT USA LHD 1.00 1.03 95740-Q4000 180821', + ], + }, + CAR.KIA_NIRO_EV_2ND_GEN: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00SG2_ RDR ----- 1.00 1.01 99110-AT000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00SG2EMFC AT EUR LHD 1.01 1.09 99211-AT000 220801', + b'\xf1\x00SG2EMFC AT USA LHD 1.01 1.09 99211-AT000 220801', + ], + }, + CAR.KIA_NIRO_PHEV: { + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DE MDPS C 1.00 1.01 56310G5520\x00 4DEPC101', + b'\xf1\x00DE MDPS C 1.00 1.09 56310G5301\x00 4DEHC109', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DEH MFC AT USA LHD 1.00 1.00 95740-G5010 170117', + b'\xf1\x00DEP MFC AT USA LHD 1.00 1.00 95740-G5010 170117', + b'\xf1\x00DEP MFC AT USA LHD 1.00 1.01 95740-G5010 170424', + b'\xf1\x00DEP MFC AT USA LHD 1.00 1.05 99211-G5000 190826', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DEhe SCC F-CUP 1.00 1.02 99110-G5100 ', + b'\xf1\x00DEhe SCC FHCUP 1.00 1.02 99110-G5100 ', + b'\xf1\x00DEhe SCC H-CUP 1.01 1.02 96400-G5100 ', + ], + }, + CAR.KIA_NIRO_PHEV_2022: { + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DE MDPS C 1.00 1.01 56310G5520\x00 4DEPC101', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DEP MFC AT USA LHD 1.00 1.00 99211-G5500 210428', + b'\xf1\x00DEP MFC AT USA LHD 1.00 1.06 99211-G5000 201028', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DEhe SCC F-CUP 1.00 1.00 99110-G5600 ', + b'\xf1\x00DEhe SCC FHCUP 1.00 1.00 99110-G5600 ', + ], + }, + CAR.KIA_NIRO_HEV_2021: { + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DE MDPS C 1.00 1.01 56310G5520\x00 4DEPC101', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DEH MFC AT KOR LHD 1.00 1.04 99211-G5000 190516', + b'\xf1\x00DEH MFC AT USA LHD 1.00 1.00 99211-G5500 210428', + b'\xf1\x00DEH MFC AT USA LHD 1.00 1.06 99211-G5000 201028', + b'\xf1\x00DEH MFC AT USA LHD 1.00 1.07 99211-G5000 201221', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DEhe SCC FHCUP 1.00 1.00 99110-G5600 ', + b'\xf1\x00DEhe SCC FHCUP 1.00 1.01 99110-G5000 ', + ], + }, + CAR.KIA_SELTOS: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00SP2_ SCC FHCUP 1.01 1.05 99110-Q5100 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00SP ESC \x07 101\x19\t\x05 58910-Q5450', + b'\xf1\x00SP ESC \t 101\x19\t\x05 58910-Q5450', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00SP2 MDPS C 1.00 1.04 56300Q5200 ', + b'\xf1\x00SP2 MDPS C 1.01 1.05 56300Q5200 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00SP2 MFC AT USA LHD 1.00 1.04 99210-Q5000 191114', + b'\xf1\x00SP2 MFC AT USA LHD 1.00 1.05 99210-Q5000 201012', + ], + }, + CAR.KIA_OPTIMA_G4: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JF__ SCC F-CUP 1.00 1.00 96400-D4100 ', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00JF ESC \t 17 \x16\x06# 58920-D4180', + b'\xf1\x00JF ESC \x0f 16 \x16\x06\x17 58920-D5080', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JFWGN LDWS AT USA LHD 1.00 1.02 95895-D4100 G21', + b'\xf1\x00JFWGN LKAS AT EUR LHD 1.00 1.01 95895-D4100 G20', + ], + }, + CAR.KIA_OPTIMA_G4_FL: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JF__ SCC F-CUP 1.00 1.00 96400-D4110 ', + ], + (Ecu.abs, 0x7d1, None): [ + b"\xf1\x00JF ESC \t 11 \x18\x03' 58920-D5260", + b'\xf1\x00JF ESC \x0b 11 \x18\x030 58920-D5180', + b'\xf1\x00JF ESC \x0c 11 \x18\x030 58920-D5180', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JFA LKAS AT USA LHD 1.00 1.00 95895-D5001 h32', + b'\xf1\x00JFA LKAS AT USA LHD 1.00 1.00 95895-D5100 h32', + ], + }, + CAR.KIA_OPTIMA_H: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JFhe SCC FNCUP 1.00 1.00 96400-A8000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JFP LKAS AT EUR LHD 1.00 1.03 95895-A8100 160711', + ], + }, + CAR.KIA_OPTIMA_H_G4_FL: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JFhe SCC FHCUP 1.00 1.01 99110-A8500 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JFH MFC AT KOR LHD 1.00 1.01 95895-A8200 180323', + ], + }, + CAR.HYUNDAI_ELANTRA: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00AD LKAS AT USA LHD 1.01 1.01 95895-F2000 251', + b'\xf1\x00ADP LKAS AT USA LHD 1.00 1.03 99211-F2000 X31', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00AD ESC \x11 11 \x18\x05\x06 58910-F2840', + b'\xf1\x00AD ESC \x11 12 \x15\t\t 58920-F2810', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00AD__ SCC H-CUP 1.00 1.00 99110-F2100 ', + b'\xf1\x00AD__ SCC H-CUP 1.00 1.01 96400-F2100 ', + ], + }, + CAR.HYUNDAI_ELANTRA_GT_I30: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00PD LKAS AT KOR LHD 1.00 1.02 95740-G3000 A51', + b'\xf1\x00PD LKAS AT USA LHD 1.00 1.02 95740-G3000 A51', + b'\xf1\x00PD LKAS AT USA LHD 1.01 1.01 95740-G3100 A54', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00PD MDPS C 1.00 1.00 56310G3300\x00 4PDDC100', + b'\xf1\x00PD MDPS C 1.00 1.03 56310/G3300 4PDDC103', + b'\xf1\x00PD MDPS C 1.00 1.04 56310/G3300 4PDDC104', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00PD ESC \t 104\x18\t\x03 58920-G3350', + b'\xf1\x00PD ESC \x0b 103\x17\x110 58920-G3350', + b'\xf1\x00PD ESC \x0b 104\x18\t\x03 58920-G3350', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00PD__ SCC F-CUP 1.00 1.00 96400-G3300 ', + b'\xf1\x00PD__ SCC F-CUP 1.01 1.00 96400-G3100 ', + b'\xf1\x00PD__ SCC FNCUP 1.01 1.00 96400-G3000 ', + ], + }, + CAR.HYUNDAI_ELANTRA_2021: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CN7_ SCC F-CUP 1.00 1.01 99110-AA000 ', + b'\xf1\x00CN7_ SCC FHCUP 1.00 1.01 99110-AA000 ', + b'\xf1\x00CN7_ SCC FNCUP 1.00 1.01 99110-AA000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00CN7 MDPS C 1.00 1.06 56310/AA050 4CNDC106', + b'\xf1\x00CN7 MDPS C 1.00 1.06 56310/AA070 4CNDC106', + b'\xf1\x00CN7 MDPS C 1.00 1.06 56310AA050\x00 4CNDC106', + b'\xf1\x00CN7 MDPS C 1.00 1.07 56310AA050\x00 4CNDC107', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.00 99210-AB000 200819', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.01 99210-AB000 210205', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.02 99210-AB000 220111', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.03 99210-AA000 200819', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.03 99210-AB000 220426', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.06 99210-AA000 220111', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.07 99210-AA000 220426', + b'\xf1\x00CN7 MFC AT USA LHD 1.00 1.08 99210-AA000 220728', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00CN ESC \t 101 \x10\x03 58910-AB800', + b'\xf1\x00CN ESC \t 104 \x08\x03 58910-AA800', + b'\xf1\x00CN ESC \t 105 \x10\x03 58910-AA800', + ], + }, + CAR.HYUNDAI_ELANTRA_HEV_2021: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.03 99210-AA000 200819', + b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.05 99210-AA000 210930', + b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.07 99210-AA000 220426', + b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.08 99210-AA000 220728', + b'\xf1\x00CN7HMFC AT USA LHD 1.00 1.09 99210-AA000 221108', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CNhe SCC FHCUP 1.00 1.01 99110-BY000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00CN7 MDPS C 1.00 1.02 56310/BY050 4CNHC102', + b'\xf1\x00CN7 MDPS C 1.00 1.03 56310/BY050 4CNHC103', + b'\xf1\x00CN7 MDPS C 1.00 1.03 56310BY050\x00 4CNHC103', + b'\xf1\x00CN7 MDPS C 1.00 1.03 56310BY0500 4CNHC103', + b'\xf1\x00CN7 MDPS C 1.00 1.04 56310BY050\x00 4CNHC104', + ], + }, + CAR.HYUNDAI_KONA_HEV: { + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00OS IEB \x01 104 \x11 58520-CM000', + b'\xf1\x00OS IEB \x03 104 \x11 58520-CM000', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00OShe SCC F-CUP 1.00 1.01 99110-CM000 ', + b'\xf1\x00OShe SCC FNCUP 1.00 1.01 99110-CM000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00OS MDPS C 1.00 1.00 56310CM020\x00 4OHDC100', + b'\xf1\x00OS MDPS C 1.00 1.00 56310CM030\x00 4OHDC100', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00OSH LKAS AT EUR LHD 1.00 1.01 95740-CM000 l31', + b'\xf1\x00OSH LKAS AT KOR LHD 1.00 1.01 95740-CM000 l31', + ], + }, + CAR.HYUNDAI_SONATA_HYBRID: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00DNhe SCC F-CUP 1.00 1.02 99110-L5000 ', + b'\xf1\x00DNhe SCC FHCUP 1.00 1.00 99110-L5000 ', + b'\xf1\x00DNhe SCC FHCUP 1.00 1.02 99110-L5000 ', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00DN8 MDPS C 1.00 1.01 56310-L5000 4DNHC101', + b'\xf1\x00DN8 MDPS C 1.00 1.02 56310-L5450 4DNHC102', + b'\xf1\x00DN8 MDPS C 1.00 1.02 56310-L5500 4DNHC102', + b'\xf1\x00DN8 MDPS C 1.00 1.03 56310-L5450 4DNHC103', + b'\xf1\x00DN8 MDPS C 1.00 1.03 56310L5450\x00 4DNHC104', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00DN8HMFC AT KOR LHD 1.00 1.03 99211-L1000 190705', + b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.04 99211-L1000 191016', + b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.05 99211-L1000 201109', + b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.06 99211-L1000 210325', + b'\xf1\x00DN8HMFC AT USA LHD 1.00 1.07 99211-L1000 211223', + ], + }, + CAR.KIA_SORENTO: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00UMP LKAS AT KOR LHD 1.00 1.00 95740-C5550 S30', + b'\xf1\x00UMP LKAS AT USA LHD 1.00 1.00 95740-C6550 d00', + b'\xf1\x00UMP LKAS AT USA LHD 1.01 1.01 95740-C6550 d01', + ], + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00UM ESC \x02 12 \x18\x05\x05 58910-C6300', + b'\xf1\x00UM ESC \x0c 12 \x18\x05\x06 58910-C6330', + b'\xf1\x00UM ESC \x13 12 \x17\x07\x05 58910-C5320', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00UM__ SCC F-CUP 1.00 1.00 96400-C5500 ', + b'\xf1\x00UM__ SCC F-CUP 1.00 1.00 96400-C6500 ', + ], + }, + CAR.KIA_EV6: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CV1_ RDR ----- 1.00 1.01 99110-CV000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CV1 MFC AT EUR LHD 1.00 1.05 99210-CV000 211027', + b'\xf1\x00CV1 MFC AT EUR LHD 1.00 1.06 99210-CV000 220328', + b'\xf1\x00CV1 MFC AT EUR RHD 1.00 1.00 99210-CV100 220630', + b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.00 99210-CV100 220630', + b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.00 99210-CV200 230510', + b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.04 99210-CV000 210823', + b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.05 99210-CV000 211027', + b'\xf1\x00CV1 MFC AT KOR LHD 1.00 1.06 99210-CV000 220328', + b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.00 99210-CV100 220630', + b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.00 99210-CV200 230510', + b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.05 99210-CV000 211027', + b'\xf1\x00CV1 MFC AT USA LHD 1.00 1.06 99210-CV000 220328', + ], + }, + CAR.KIA_EV6_PE: { # (CV1) + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CV__ RDR ----- 1.00 1.01 99110-CV500 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CV MFC AT KOR LHD 1.00 1.01 99210-CV500 240405', + ], + }, + CAR.HYUNDAI_IONIQ_5: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00NE1_ RDR ----- 1.00 1.00 99110-GI000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00NE1 MFC AT CAN LHD 1.00 1.01 99211-GI010 211007', + b'\xf1\x00NE1 MFC AT CAN LHD 1.00 1.05 99211-GI010 220614', + b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.00 99211-GI100 230915', + b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.01 99211-GI010 211007', + b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.01 99211-GI100 240110', + b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.03 99211-GI010 220401', + b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.06 99211-GI000 210813', + b'\xf1\x00NE1 MFC AT EUR LHD 1.00 1.06 99211-GI010 230110', + b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.01 99211-GI010 211007', + b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.01 99211-GI100 240110', + b'\xf1\x00NE1 MFC AT EUR RHD 1.00 1.02 99211-GI010 211206', + b'\xf1\x00NE1 MFC AT IND RHD 1.00 1.07 99211-GI010 230620', + b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.00 99211-GI020 230719', + b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.01 99211-GI010 211007', + b'\xf1\x00NE1 MFC AT KOR LHD 1.00 1.05 99211-GI010 220614', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.00 99211-GI020 230719', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.00 99211-GI100 230915', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.01 99211-GI010 211007', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.02 99211-GI010 211206', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.03 99211-GI010 220401', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.05 99211-GI010 220614', + b'\xf1\x00NE1 MFC AT USA LHD 1.00 1.06 99211-GI010 230110', + ], + }, + CAR.HYUNDAI_IONIQ_5_PE: { # (NE1) + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00NE__ RDR ----- 1.00 1.00 99110-GI500 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00NE MFC AT KOR LHD 1.00 1.02 99211-GI500 240221', + ], + }, + CAR.HYUNDAI_IONIQ_5_N: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00NE1N RDR ----- 1.00 1.00 99110-NI000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00NE1NMFC AT KOR LHD 1.00 1.04 99211-NI000 231219', + b'\xf1\x00NE1NMFC AT USA LHD 1.00 1.04 99211-NI000 231219', + ], + }, + CAR.HYUNDAI_IONIQ_6: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00CE__ RDR ----- 1.00 1.01 99110-KL000 ', + b'\xf1\x00CE__ RDR ----- 1.00 1.02 99110-KL000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00CE MFC AT CAN LHD 1.00 1.04 99211-KL000 221213', + b'\xf1\x00CE MFC AT EUR LHD 1.00 1.03 99211-KL000 221011', + b'\xf1\x00CE MFC AT EUR LHD 1.00 1.04 99211-KL000 221213', + b'\xf1\x00CE MFC AT USA LHD 1.00 1.04 99211-KL000 221213', + b'\xf1\x00CE MFC AT USA LHD 1.00 1.06 99211-KL000 230915', + ], + }, + CAR.HYUNDAI_IONIQ_9: { + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00MEev RDR ----- 1.00 1.00 99110-GO000 ', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00ME MFC AT KOR LHD 1.00 1.00 99211-GO000 241007', + ], + }, + CAR.HYUNDAI_TUCSON_4TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00NX4 FR_CMR AT CAN LHD 1.00 1.00 99211-N9260 14Y', + b'\xf1\x00NX4 FR_CMR AT CAN LHD 1.00 1.01 99211-N9100 14A', + b'\xf1\x00NX4 FR_CMR AT EUR LHD 1.00 1.00 99211-N9220 14K', + b'\xf1\x00NX4 FR_CMR AT EUR LHD 1.00 2.02 99211-N9000 14E', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9210 14G', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9220 14K', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9240 14Q', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9250 14W', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-N9260 14Y', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.01 99211-N9100 14A', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.01 99211-N9240 14T', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00NX4__ 1.00 1.00 99110-N9100 ', + b'\xf1\x00NX4__ 1.00 1.01 99110-N9000 ', + b'\xf1\x00NX4__ 1.00 1.02 99110-N9000 ', + b'\xf1\x00NX4__ 1.01 1.00 99110-N9100 ', + ], + }, + CAR.HYUNDAI_SANTA_CRUZ_1ST_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-CW000 14M', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-CW010 14X', + b'\xf1\x00NX4 FR_CMR AT USA LHD 1.00 1.00 99211-CW020 14Z', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00NX4__ 1.00 1.00 99110-K5000 ', + b'\xf1\x00NX4__ 1.01 1.00 99110-K5000 ', + ], + }, + CAR.KIA_SPORTAGE_5TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00NQ5 FR_CMR AT AUS RHD 1.00 1.00 99211-P1040 663', + b'\xf1\x00NQ5 FR_CMR AT EUR LHD 1.00 1.00 99211-P1040 663', + b'\xf1\x00NQ5 FR_CMR AT GEN LHD 1.00 1.00 99211-P1060 665', + b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1030 662', + b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1040 663', + b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1060 665', + b'\xf1\x00NQ5 FR_CMR AT USA LHD 1.00 1.00 99211-P1070 690', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00NQ5__ 1.00 1.02 99110-P1000 ', + b'\xf1\x00NQ5__ 1.00 1.03 99110-CH000 ', + b'\xf1\x00NQ5__ 1.00 1.03 99110-P1000 ', + b'\xf1\x00NQ5__ 1.01 1.03 99110-CH000 ', + b'\xf1\x00NQ5__ 1.01 1.03 99110-P1000 ', + ], + }, + CAR.GENESIS_GV70_1ST_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JK1 MFC AT CAN LHD 1.00 1.02 99211-IY000 230627', + b'\xf1\x00JK1 MFC AT USA LHD 1.00 1.01 99211-AR200 220125', + b'\xf1\x00JK1 MFC AT USA LHD 1.00 1.01 99211-AR300 220125', + b'\xf1\x00JK1 MFC AT USA LHD 1.00 1.04 99211-AR000 210204', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JK1_ SCC FHCUP 1.00 1.00 99110-AR200 ', + b'\xf1\x00JK1_ SCC FHCUP 1.00 1.00 99110-AR300 ', + b'\xf1\x00JK1_ SCC FHCUP 1.00 1.00 99110-IY000 ', + b'\xf1\x00JK1_ SCC FHCUP 1.00 1.02 99110-AR000 ', + ], + }, + CAR.GENESIS_GV70_ELECTRIFIED_1ST_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JK1EMFC AT AUS RHD 1.00 1.01 99211-DS100 220125', + b'\xf1\x00JK1EMFC AT USA LHD 1.00 1.00 99211-IT100 220919', + b'\xf1\x00JK1EMFC AT USA LHD 1.00 1.01 99211-IT100 230628', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JKev SCC ----- 1.00 1.01 99110-DS000 ', + ], + }, + + CAR.HYUNDAI_NEXO_1ST_GEN: { + (Ecu.abs, 0x7d1, None): [ + b'\xf1\x00FE IEB \x01 312 \x11\x13 58520-M5000', + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00FE MFC AT KOR LHD 1.00 1.00 99211-M5100 201218', + b'\xf1\x00FE MFC AT KOR LHD 1.00 1.02 99211-M5100 220405', + ], + (Ecu.eps, 0x7d4, None): [ + b'\xf1\x00FE MDPS C 1.00 1.05 56340-M5000 9903', + b'\xf1\x00FE MDPS C 1.00 1.06 56340-M5000 1625', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00FE__ SCC FHCUP 1.00 1.05 99110-M5000 ', + ], + }, + + CAR.GENESIS_GV60_EV_1ST_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JW1 MFC AT AUS RHD 1.00 1.03 99211-CU100 221118', + b'\xf1\x00JW1 MFC AT USA LHD 1.00 1.02 99211-CU000 211215', + b'\xf1\x00JW1 MFC AT USA LHD 1.00 1.02 99211-CU100 211215', + b'\xf1\x00JW1 MFC AT USA LHD 1.00 1.03 99211-CU000 221118', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JW1_ RDR ----- 1.00 1.00 99110-CU000 ', + ], + }, + CAR.KIA_SORENTO_4TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.00 99210-R5100 221019', + b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.03 99210-R5000 200903', + b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.05 99210-R5000 210623', + b'\xf1\x00MQ4 MFC AT USA LHD 1.00 1.06 99210-R5000 211216', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00MQ4_ SCC F-CUP 1.00 1.06 99110-P2000 ', + b'\xf1\x00MQ4_ SCC FHCUP 1.00 1.00 99110-R5000 ', + b'\xf1\x00MQ4_ SCC FHCUP 1.00 1.06 99110-P2000 ', + b'\xf1\x00MQ4_ SCC FHCUP 1.00 1.08 99110-P2000 ', + ], + }, + CAR.KIA_SORENTO_HEV_4TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00MQ4HMFC AT KOR LHD 1.00 1.04 99210-P2000 200330', + b'\xf1\x00MQ4HMFC AT KOR LHD 1.00 1.12 99210-P2000 230331', + b'\xf1\x00MQ4HMFC AT USA LHD 1.00 1.10 99210-P2000 210406', + b'\xf1\x00MQ4HMFC AT USA LHD 1.00 1.11 99210-P2000 211217', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00MQhe SCC FHCUP 1.00 1.04 99110-P4000 ', + b'\xf1\x00MQhe SCC FHCUP 1.00 1.06 99110-P4000 ', + b'\xf1\x00MQhe SCC FHCUP 1.00 1.07 99110-P4000 ', + ], + }, + CAR.KIA_NIRO_HEV_2ND_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00SG2HMFC AT USA LHD 1.01 1.08 99211-AT000 220531', + b'\xf1\x00SG2HMFC AT USA LHD 1.01 1.09 99211-AT000 220801', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00SG2_ RDR ----- 1.00 1.01 99110-AT000 ', + ], + }, + CAR.GENESIS_GV80: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00JX1 MFC AT USA LHD 1.00 1.02 99211-T6110 220513', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00JX1_ SCC FHCUP 1.00 1.01 99110-T6100 ', + ], + }, + CAR.KIA_CARNIVAL_4TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00KA4 MFC AT EUR LHD 1.00 1.06 99210-R0000 220221', + b'\xf1\x00KA4 MFC AT KOR LHD 1.00 1.05 99210-R0000 201221', + b'\xf1\x00KA4 MFC AT KOR LHD 1.00 1.06 99210-R0000 220221', + b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.00 99210-R0100 230105', + b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.01 99210-R0100 230710', + b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.05 99210-R0000 201221', + b'\xf1\x00KA4 MFC AT USA LHD 1.00 1.06 99210-R0000 220221', + b'\xf1\x00KA4CMFC AT CHN LHD 1.00 1.01 99211-I4000 210525', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00KA4_ SCC F-CUP 1.00 1.03 99110-R0000 ', + b'\xf1\x00KA4_ SCC FHCUP 1.00 1.00 99110-R0100 ', + b'\xf1\x00KA4_ SCC FHCUP 1.00 1.02 99110-R0000 ', + b'\xf1\x00KA4_ SCC FHCUP 1.00 1.03 99110-R0000 ', + b'\xf1\x00KA4c SCC FHCUP 1.00 1.01 99110-I4000 ', + ], + }, + CAR.KIA_K8_HEV_1ST_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00GL3HMFC AT KOR LHD 1.00 1.03 99211-L8000 210907', + b'\xf1\x00GL3HMFC AT KOR LHD 1.00 1.04 99211-L8000 230207', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00GL3_ RDR ----- 1.00 1.02 99110-L8000 ', + ], + }, + CAR.HYUNDAI_STARIA_4TH_GEN: { + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00US4 MFC AT KOR LHD 1.00 1.06 99211-CG000 230524', + ], + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00US4_ RDR ----- 1.00 1.00 99110-CG000 ', + ], + }, + CAR.KIA_EV9: { # (MV) + (Ecu.fwdRadar, 0x7d0, None): [ + b'\xf1\x00MV__ RDR ----- 1.00 1.02 99110-DO700 ', + b'\xf1\x00MV__ RDR ----- 1.00 1.02 99110-DO000 ' + ], + (Ecu.fwdCamera, 0x7c4, None): [ + b'\xf1\x00MV MFC AT KOR LHD 1.00 1.01 99211-DO000 230419', + b'\xf1\x00MV MFC AT USA LHD 1.00 1.02 99211-DO000 230616', + b'\xf1\x00MV MFC AT EUR LHD 1.00 1.02 99211-DO000 230616', + ], + }, + CAR.KIA_EV3: { # (SV1) + (Ecu.fwdRadar, 0x7d0, None): [ + ], + (Ecu.fwdCamera, 0x7c4, None): [ + ], + }, + CAR.HYUNDAI_SANTAFE_MX5: { # (MX5) + (Ecu.fwdRadar, 0x7d0, None): [ + ], + (Ecu.fwdCamera, 0x7c4, None): [ + ], + }, + CAR.HYUNDAI_SANTAFE_MX5_HEV: { # (MX5) + (Ecu.fwdRadar, 0x7d0, None): [ + ], + (Ecu.fwdCamera, 0x7c4, None): [ + ], + }, +} diff --git a/opendbc_repo/opendbc/car/hyundai/hyundaican.py b/opendbc_repo/opendbc/car/hyundai/hyundaican.py new file mode 100644 index 0000000000..eaaccf95a7 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/hyundaican.py @@ -0,0 +1,383 @@ +import copy +import crcmod +from opendbc.car.hyundai.values import CAR, HyundaiFlags + +hyundai_checksum = crcmod.mkCrcFun(0x11D, initCrc=0xFD, rev=False, xorOut=0xdf) + +def create_lkas11(packer, frame, CP, apply_torque, steer_req, + torque_fault, lkas11, sys_warning, sys_state, enabled, + left_lane, right_lane, + left_lane_depart, right_lane_depart, is_ldws_car): + values = {s: lkas11[s] for s in [ + "CF_Lkas_LdwsActivemode", + "CF_Lkas_LdwsSysState", + "CF_Lkas_SysWarning", + "CF_Lkas_LdwsLHWarning", + "CF_Lkas_LdwsRHWarning", + "CF_Lkas_HbaLamp", + "CF_Lkas_FcwBasReq", + "CF_Lkas_HbaSysState", + "CF_Lkas_FcwOpt", + "CF_Lkas_HbaOpt", + "CF_Lkas_FcwSysState", + "CF_Lkas_FcwCollisionWarning", + "CF_Lkas_FusionState", + "CF_Lkas_FcwOpt_USM", + "CF_Lkas_LdwsOpt_USM", + ]} + values["CF_Lkas_LdwsSysState"] = sys_state + values["CF_Lkas_SysWarning"] = 0 # 3 if sys_warning else 0 + values["CF_Lkas_LdwsLHWarning"] = left_lane_depart + values["CF_Lkas_LdwsRHWarning"] = right_lane_depart + values["CR_Lkas_StrToqReq"] = apply_torque + values["CF_Lkas_ActToi"] = steer_req + values["CF_Lkas_ToiFlt"] = torque_fault # seems to allow actuation on CR_Lkas_StrToqReq + values["CF_Lkas_MsgCount"] = frame % 0x10 + + if CP.flags & HyundaiFlags.SEND_LFA.value or CP.carFingerprint in (CAR.HYUNDAI_SANTA_FE): + values["CF_Lkas_LdwsActivemode"] = int(left_lane) + (int(right_lane) << 1) + values["CF_Lkas_LdwsOpt_USM"] = 2 + + # FcwOpt_USM 5 = Orange blinking car + lanes + # FcwOpt_USM 4 = Orange car + lanes + # FcwOpt_USM 3 = Green blinking car + lanes + # FcwOpt_USM 2 = Green car + lanes + # FcwOpt_USM 1 = White car + lanes + # FcwOpt_USM 0 = No car + lanes + values["CF_Lkas_FcwOpt_USM"] = 2 if enabled else 1 + + # SysWarning 4 = keep hands on wheel + # SysWarning 5 = keep hands on wheel (red) + # SysWarning 6 = keep hands on wheel (red) + beep + # Note: the warning is hidden while the blinkers are on + values["CF_Lkas_SysWarning"] = 0 #4 if sys_warning else 0 + + # Likely cars lacking the ability to show individual lane lines in the dash + elif CP.carFingerprint in (CAR.KIA_OPTIMA_G4, CAR.KIA_OPTIMA_G4_FL): + # SysWarning 4 = keep hands on wheel + beep + values["CF_Lkas_SysWarning"] = 4 if sys_warning else 0 + + # SysState 0 = no icons + # SysState 1-2 = white car + lanes + # SysState 3 = green car + lanes, green steering wheel + # SysState 4 = green car + lanes + values["CF_Lkas_LdwsSysState"] = 3 if enabled else 1 + values["CF_Lkas_LdwsOpt_USM"] = 2 # non-2 changes above SysState definition + + # these have no effect + values["CF_Lkas_LdwsActivemode"] = 0 + values["CF_Lkas_FcwOpt_USM"] = 0 + + elif CP.carFingerprint == CAR.HYUNDAI_GENESIS: + # This field is actually LdwsActivemode + # Genesis and Optima fault when forwarding while engaged + values["CF_Lkas_LdwsActivemode"] = 2 + + if is_ldws_car: + values["CF_Lkas_LdwsOpt_USM"] = 3 + + dat = packer.make_can_msg("LKAS11", 0, values)[1] + + if CP.flags & HyundaiFlags.CHECKSUM_CRC8: + # CRC Checksum as seen on 2019 Hyundai Santa Fe + dat = dat[:6] + dat[7:8] + checksum = hyundai_checksum(dat) + elif CP.flags & HyundaiFlags.CHECKSUM_6B: + # Checksum of first 6 Bytes, as seen on 2018 Kia Sorento + checksum = sum(dat[:6]) % 256 + else: + # Checksum of first 6 Bytes and last Byte as seen on 2018 Kia Stinger + checksum = (sum(dat[:6]) + dat[7]) % 256 + + values["CF_Lkas_Chksum"] = checksum + + return packer.make_can_msg("LKAS11", 0, values) + + +def create_clu11(packer, frame, clu11, button, CP): + values = {s: clu11[s] for s in [ + "CF_Clu_CruiseSwState", + "CF_Clu_CruiseSwMain", + "CF_Clu_SldMainSW", + "CF_Clu_ParityBit1", + "CF_Clu_VanzDecimal", + "CF_Clu_Vanz", + "CF_Clu_SPEED_UNIT", + "CF_Clu_DetentOut", + "CF_Clu_RheostatLevel", + "CF_Clu_CluInfo", + "CF_Clu_AmpInfo", + "CF_Clu_AliveCnt1", + ]} + values["CF_Clu_CruiseSwState"] = button + values["CF_Clu_AliveCnt1"] = frame % 0x10 + # send buttons to camera on camera-scc based cars + bus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC else 0 + return packer.make_can_msg("CLU11", bus, values) + + +def create_lfahda_mfc(packer, CC, blinking_signal): + activeCarrot = CC.hudControl.activeCarrot + values = { + "LFA_Icon_State": 2 if CC.latActive else 1 if CC.enabled else 0, + #"HDA_Active": 1 if activeCarrot >= 2 else 0, + #"HDA_Icon_State": 2 if activeCarrot == 3 and blinking_signal else 2 if activeCarrot >= 2 else 0, + "HDA_Icon_State": 0 if activeCarrot == 3 and blinking_signal else 2 if activeCarrot >= 1 else 0, + "HDA_VSetReq": 0, #set_speed_in_units if activeCarrot >= 2 else 0, + "HDA_USM" : 2, + "HDA_Icon_Wheel" : 1 if CC.latActive else 0, + #"HDA_Chime" : 1 if CC.latActive else 0, # comment for K9 chime, + } + return packer.make_can_msg("LFAHDA_MFC", 0, values) + +def create_acc_commands_scc(packer, enabled, accel, jerk, idx, hud_control, set_speed, stopping, long_override, use_fca, CS, soft_hold_mode): + from opendbc.car.hyundai.carcontroller import HyundaiJerk + cruise_available = CS.out.cruiseState.available + if CS.paddle_button_prev > 0: + cruise_available = False + soft_hold_active = CS.softHoldActive + soft_hold_info = soft_hold_active > 1 and enabled + #soft_hold_mode = 2 ## some cars can't enable while braking + long_enabled = enabled or (soft_hold_active > 0 and soft_hold_mode == 2) + stop_req = 1 if stopping or (soft_hold_active > 0 and soft_hold_mode == 2) else 0 + d = hud_control.leadDistance + objGap = 0 if d == 0 else 2 if d < 25 else 3 if d < 40 else 4 if d < 70 else 5 + objGap2 = 0 if objGap == 0 else 2 if hud_control.leadRelSpeed < -0.2 else 1 + + if long_enabled: + if jerk.carrot_cruise == 1: + long_enabled = False + accel = -0.5 + elif jerk.carrot_cruise == 2: + accel = jerk.carrot_cruise_accel + + if long_enabled: + scc12_acc_mode = 2 if long_override else 1 + scc14_acc_mode = 2 if long_override else 1 + if CS.out.brakeHoldActive: + scc12_acc_mode = 0 + scc14_acc_mode = 4 + elif CS.out.brakePressed: + scc12_acc_mode = 1 + scc14_acc_mode = 1 + else: + scc12_acc_mode = 0 + scc14_acc_mode = 4 + + warning_front = False + + commands = [] + if CS.scc11 is not None: + values = copy.copy(CS.scc11) + values["MainMode_ACC"] = 1 if cruise_available else 0 + values["TauGapSet"] = hud_control.leadDistanceBars + values["VSetDis"] = set_speed if enabled else 0 + values["AliveCounterACC"] = idx % 0x10 + values["SCCInfoDisplay"] = 3 if warning_front else 4 if soft_hold_info else 0 if enabled else 0 #2: 크루즈 선택, 3: 전방상황주의, 4: 출발준비 + values["ObjValid"] = 1 if hud_control.leadVisible else 0 + values["ACC_ObjStatus"] = 1 if hud_control.leadVisible else 0 + values["ACC_ObjLatPos"] = 0 + values["ACC_ObjRelSpd"] = hud_control.leadRelSpeed + values["ACC_ObjDist"] = int(hud_control.leadDistance) + values["DriverAlertDisplay"] = 0 + commands.append(packer.make_can_msg("SCC11", 0, values)) + + if CS.scc12 is not None: + values = copy.copy(CS.scc12) + values["ACCMode"] = scc12_acc_mode #2 if enabled and long_override else 1 if long_enabled else 0 + values["StopReq"] = stop_req + values["aReqRaw"] = accel + values["aReqValue"] = accel + values["ACCFailInfo"] = 0 + + #values["DESIRED_DIST"] = CS.out.vEgo * 1.0 + 4.0 # TF: 1.0 + STOPDISTANCE 4.0 m로 가정함. + + values["CR_VSM_ChkSum"] = 0 + values["CR_VSM_Alive"] = idx % 0xF + scc12_dat = packer.make_can_msg("SCC12", 0, values)[1] + values["CR_VSM_ChkSum"] = 0x10 - sum(sum(divmod(i, 16)) for i in scc12_dat) % 0x10 + + commands.append(packer.make_can_msg("SCC12", 0, values)) + + if CS.scc14 is not None: + values = copy.copy(CS.scc14) + values["ComfortBandUpper"] = jerk.cb_upper + values["ComfortBandLower"] = jerk.cb_lower + values["JerkUpperLimit"] = jerk.jerk_u + values["JerkLowerLimit"] = jerk.jerk_l if long_enabled else 0 # for KONA test + values["ACCMode"] = scc14_acc_mode #2 if enabled and long_override else 1 if long_enabled else 4 # stock will always be 4 instead of 0 after first disengage + values["ObjGap"] = objGap #2 if hud_control.leadVisible else 0 # 5: >30, m, 4: 25-30 m, 3: 20-25 m, 2: < 20 m, 0: no lead + values["ObjDistStat"] = objGap2 + commands.append(packer.make_can_msg("SCC14", 0, values)) + + if CS.fca11 is not None and use_fca: # CASPER_EV의 경우 FCA11에서 fail이 간헐적 발생함.. 그냥막자.. 원인불명.. + values = copy.copy(CS.fca11) + if values["FCA_Failinfo"] != 0: + values["FCA_Status"] = 2 + values["FCA_Failinfo"] = 0 + fca11_dat = packer.make_can_msg("FCA11", 0, values)[1] + values["CR_FCA_ChkSum"] = hyundai_checksum(fca11_dat[:7]) + commands.append(packer.make_can_msg("FCA11", 0, values)) + # Only send FCA11 on cars where it exists on the bus + if False: #use_fca: + # note that some vehicles most likely have an alternate checksum/counter definition + # https://github.com/commaai/opendbc/commit/9ddcdb22c4929baf310295e832668e6e7fcfa602 + fca11_values = { + "CR_FCA_Alive": idx % 0xF, + "PAINT1_Status": 1, + "FCA_DrvSetStatus": 1, + "FCA_Status": 1, # AEB disabled + } + fca11_dat = packer.make_can_msg("FCA11", 0, fca11_values)[1] + fca11_values["CR_FCA_ChkSum"] = hyundai_checksum(fca11_dat[:7]) + commands.append(packer.make_can_msg("FCA11", 0, fca11_values)) + + return commands + +def create_acc_opt_copy(CS, packer): + values = copy.copy(CS.scc13) + if values["NEW_SIGNAL_1"] == 255: + values["NEW_SIGNAL_1"] = 218 + values["NEW_SIGNAL_2"] = 0 + return packer.make_can_msg("SCC13", 0, CS.scc13) + +def create_acc_commands(packer, enabled, accel, jerk, idx, hud_control, set_speed, stopping, long_override, use_fca, CP, CS, soft_hold_mode): + from opendbc.car.hyundai.carcontroller import HyundaiJerk + cruise_available = CS.out.cruiseState.available + soft_hold_active = CS.softHoldActive + soft_hold_info = soft_hold_active > 1 and enabled + #soft_hold_mode = 2 ## some cars can't enable while braking + long_enabled = enabled or (soft_hold_active > 0 and soft_hold_mode == 2) + stop_req = 1 if stopping or (soft_hold_active > 0 and soft_hold_mode == 2) else 0 + d = hud_control.leadDistance + objGap = 0 if d == 0 else 2 if d < 25 else 3 if d < 40 else 4 if d < 70 else 5 + objGap2 = 0 if objGap == 0 else 2 if hud_control.leadRelSpeed < -0.2 else 1 + + if long_enabled: + scc12_acc_mode = 2 if long_override else 1 + scc14_acc_mode = 2 if long_override else 1 + if CS.out.brakeHoldActive: + scc12_acc_mode = 0 + scc14_acc_mode = 4 + elif CS.out.brakePressed: + scc12_acc_mode = 1 + scc14_acc_mode = 1 + else: + scc12_acc_mode = 0 + scc14_acc_mode = 4 + + warning_front = False + + commands = [] + + scc11_values = { + "MainMode_ACC": 1 if cruise_available else 0, + "TauGapSet": hud_control.leadDistanceBars, + "VSetDis": set_speed if enabled else 0, + "AliveCounterACC": idx % 0x10, + "SCCInfoDisplay": 3 if warning_front else 4 if soft_hold_info else 0 if enabled else 0, + "ObjValid": 1 if hud_control.leadVisible else 0, # close lead makes controls tighter + "ACC_ObjStatus": 1 if hud_control.leadVisible else 0, # close lead makes controls tighter + "ACC_ObjLatPos": 0, + "ACC_ObjRelSpd": hud_control.leadRelSpeed, + "ACC_ObjDist": int(hud_control.leadDistance), # close lead makes controls tighter + "DriverAlertDisplay": 0, + } + commands.append(packer.make_can_msg("SCC11", 0, scc11_values)) + + scc12_values = { + "ACCMode": scc12_acc_mode, + "StopReq": stop_req, + "aReqRaw": 0 if stop_req > 0 else accel, + "aReqValue": accel, # stock ramps up and down respecting jerk limit until it reaches aReqRaw + #"DESIRED_DIST": CS.out.vEgo * 1.0 + 4.0, + "CR_VSM_Alive": idx % 0xF, + } + + # show AEB disabled indicator on dash with SCC12 if not sending FCA messages. + # these signals also prevent a TCS fault on non-FCA cars with alpha longitudinal + if not use_fca: + scc12_values["CF_VSM_ConfMode"] = 1 + scc12_values["AEB_Status"] = 1 # AEB disabled + + scc12_dat = packer.make_can_msg("SCC12", 0, scc12_values)[1] + scc12_values["CR_VSM_ChkSum"] = 0x10 - sum(sum(divmod(i, 16)) for i in scc12_dat) % 0x10 + + commands.append(packer.make_can_msg("SCC12", 0, scc12_values)) + + scc14_values = { + "ComfortBandUpper": jerk.cb_upper, # stock usually is 0 but sometimes uses higher values + "ComfortBandLower": jerk.cb_lower, # stock usually is 0 but sometimes uses higher values + "JerkUpperLimit": jerk.jerk_u, # stock usually is 1.0 but sometimes uses higher values + "JerkLowerLimit": jerk.jerk_l, # stock usually is 0.5 but sometimes uses higher values + "ACCMode": scc14_acc_mode, # if enabled and long_override else 1 if enabled else 4, # stock will always be 4 instead of 0 after first disengage + "ObjGap": objGap, #2 if hud_control.leadVisible else 0, # 5: >30, m, 4: 25-30 m, 3: 20-25 m, 2: < 20 m, 0: no lead + "ObjDistStat": objGap2, + } + commands.append(packer.make_can_msg("SCC14", 0, scc14_values)) + + # Only send FCA11 on cars where it exists on the bus + # On Camera SCC cars, FCA11 is not disabled, so we forward stock FCA11 back to the car forward hooks + if use_fca and not (CP.flags & HyundaiFlags.CAMERA_SCC): + # note that some vehicles most likely have an alternate checksum/counter definition + # https://github.com/commaai/opendbc/commit/9ddcdb22c4929baf310295e832668e6e7fcfa602 + fca11_values = { + "CR_FCA_Alive": idx % 0xF, + "PAINT1_Status": 1, + "FCA_DrvSetStatus": 1, + "FCA_Status": 1, # AEB disabled + } + fca11_dat = packer.make_can_msg("FCA11", 0, fca11_values)[1] + fca11_values["CR_FCA_ChkSum"] = hyundai_checksum(fca11_dat[:7]) + commands.append(packer.make_can_msg("FCA11", 0, fca11_values)) + + return commands + +def create_acc_opt(packer, CP): + commands = [] + + scc13_values = { + "SCCDrvModeRValue": 2, + "SCC_Equip": 1, + "Lead_Veh_Dep_Alert_USM": 2, + } + commands.append(packer.make_can_msg("SCC13", 0, scc13_values)) + + # TODO: this needs to be detected and conditionally sent on unsupported long cars + # On Camera SCC cars, FCA12 is not disabled, so we forward stock FCA12 back to the car forward hooks + if not (CP.flags & HyundaiFlags.CAMERA_SCC): + fca12_values = { + "FCA_DrvSetState": 2, + "FCA_USM": 1, # AEB disabled + } + commands.append(packer.make_can_msg("FCA12", 0, fca12_values)) + + return commands + +def create_frt_radar_opt(packer): + frt_radar11_values = { + "CF_FCA_Equip_Front_Radar": 1, + } + return packer.make_can_msg("FRT_RADAR11", 0, frt_radar11_values) + +def create_clu11_button(packer, frame, clu11, button, CP): + values = clu11 + values["CF_Clu_CruiseSwState"] = button + #values["CF_Clu_AliveCnt1"] = frame % 0x10 + values["CF_Clu_AliveCnt1"] = (values["CF_Clu_AliveCnt1"] + 1) % 0x10 + # send buttons to camera on camera-scc based cars + bus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC else 0 + return packer.make_can_msg("CLU11", bus, values) + +def create_mdps12(packer, frame, mdps12): + values = mdps12 + values["CF_Mdps_ToiActive"] = 0 + values["CF_Mdps_ToiUnavail"] = 1 + values["CF_Mdps_MsgCount2"] = frame % 0x100 + values["CF_Mdps_Chksum2"] = 0 + + dat = packer.make_can_msg("MDPS12", 2, values)[1] + checksum = sum(dat) % 256 + values["CF_Mdps_Chksum2"] = checksum + + return packer.make_can_msg("MDPS12", 2, values) diff --git a/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py b/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py new file mode 100644 index 0000000000..8a6a1fdb05 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/hyundaicanfd.py @@ -0,0 +1,1113 @@ +import copy +import numpy as np +from opendbc.car import CanBusBase +from opendbc.car.crc import CRC16_XMODEM +from opendbc.car.hyundai.values import HyundaiFlags, HyundaiExtFlags +from openpilot.common.params import Params +from opendbc.car.common.conversions import Conversions as CV +from cereal import log + +LaneChangeState = log.LaneChangeState +LaneChangeDirection = log.LaneChangeDirection +TurnDirection = log.Desire + + +def hyundai_crc8(data: bytes) -> int: + poly = 0x2F + crc = 0xFF + + for byte in data: + crc ^= byte + for _ in range(8): + if crc & 0x80: + crc = ((crc << 1) ^ poly) & 0xFF + else: + crc = (crc << 1) & 0xFF + + return crc ^ 0xFF + +class CanBus(CanBusBase): + def __init__(self, CP, fingerprint=None, lka_steering=None) -> None: + super().__init__(CP, fingerprint) + + if lka_steering is None: + lka_steering = CP.flags & HyundaiFlags.CANFD_HDA2.value if CP is not None else False + + # On the CAN-FD platforms, the LKAS camera is on both A-CAN and E-CAN. LKA steering cars + # have a different harness than the LFA steering variants in order to split + # a different bus, since the steering is done by different ECUs. + self._a, self._e = 1, 0 + if lka_steering and Params().get_int("HyundaiCameraSCC") == 0: #배선개조는 무조건 Bus0가 ECAN임. + self._a, self._e = 0, 1 + + self._a += self.offset + self._e += self.offset + self._cam = 2 + self.offset + + @property + def ECAN(self): + return self._e + + @property + def ACAN(self): + return self._a + + @property + def CAM(self): + return self._cam + +# CAN LIST (CAM) - 롱컨개조시... ADAS + CAM +# 160: ADRV_0x160 +# 1da: ADRV_0x1da +# 1ea: ADRV_0x1ea +# 200: ADRV_0x200 +# 345: ADRV_0x345 +# 1fa: CLUSTER_SPEED_LIMIT +# 12a: LFA +# 1e0: LFAHDA_CLUSTER +# 11a: +# 1b5: +# 1a0: SCC_CONTROL + +# CAN LIST (ACAN) +# 160: ADRV_0x160 +# 51: ADRV_0x51 +# 180: CAM_0x180 +# ... +# 185: CAM_0x185 +# 1b6: CAM_0x1b6 +# ... +# 1b9: CAM_0x1b9 +# 1fb: CAM_0x1fb +# 2a2 - 2a4 +# 2bb - 2be +# LKAS +# 201 - 2a0 + + + +def create_steering_messages_camera_scc(frame, packer, CP, CAN, CC, lat_active, apply_steer, CS, apply_angle, max_torque, angle_control): + + emergency_steering = False + if CS.adrv_info_161 is not None: + values = CS.adrv_info_161 + emergency_steering = values["ALERTS_1"] in [11, 12, 13, 14, 15, 21, 22, 23, 24, 25, 26] + + + ret = [] + values = copy.copy(CS.mdps_info) + if angle_control: + if CS.lfa_alt_info is not None: + values["LFA2_ACTIVE"] = CS.lfa_alt_info["LKAS_ANGLE_ACTIVE"] + else: + if CS.lfa_info is not None: + values["LKA_ACTIVE"] = 1 if CS.lfa_info["STEER_REQ"] == 1 else 0 + + if frame % 1000 < 40: + values["STEERING_COL_TORQUE"] += 220 + ret.append(packer.make_can_msg("MDPS", CAN.CAM, values)) + + if frame % 10 == 0: + if CS.steer_touch_info is not None: + values = copy.copy(CS.steer_touch_info) + if frame % 1000 < 40: + values["TOUCH_DETECT"] = 3 + values["TOUCH1"] = 50 + values["TOUCH2"] = 50 + values["CHECKSUM_"] = 0 + dat = packer.make_can_msg("STEER_TOUCH_2AF", 0, values)[1] + values["CHECKSUM_"] = hyundai_crc8(dat[1:8]) + + ret.append(packer.make_can_msg("STEER_TOUCH_2AF", CAN.CAM, values)) + + if angle_control: + if emergency_steering: + values = copy.copy(CS.lfa_alt_info) + else: + values = {} #CS.lfa_alt_info + values["LKAS_ANGLE_ACTIVE"] = 2 if CC.latActive else 1 + values["LKAS_ANGLE_CMD"] = -apply_angle + values["LKAS_ANGLE_MAX_TORQUE"] = max_torque if CC.latActive else 0 + ret.append(packer.make_can_msg("LFA_ALT", CAN.ECAN, values)) + + values = copy.copy(CS.lfa_info) + if not emergency_steering: + values["LKA_MODE"] = 0 + values["LKA_ICON"] = 2 if CC.latActive else 1 + values["TORQUE_REQUEST"] = -1024 # apply_steer, + values["VALUE63"] = 0 # LKA_ASSIST + values["STEER_REQ"] = 0 # 1 if lat_active else 0, + values["HAS_LANE_SAFETY"] = 0 # hide LKAS settings + values["LKA_ACTIVE"] = 3 if CC.latActive else 0 # this changes sometimes, 3 seems to indicate engaged + values["VALUE64"] = 0 #STEER_MODE, NEW_SIGNAL_2 + values["LKAS_ANGLE_CMD"] = -25.6 #-apply_angle, + values["LKAS_ANGLE_ACTIVE"] = 0 #2 if lat_active else 1, + values["LKAS_ANGLE_MAX_TORQUE"] = 0 #max_torque if lat_active else 0, + values["NEW_SIGNAL_1"] = 10 + + else: + values = {} + values["LKA_MODE"] = 2 + values["LKA_ICON"] = 2 if lat_active else 1 + values["TORQUE_REQUEST"] = apply_steer + values["STEER_REQ"] = 1 if lat_active else 0 + values["VALUE64"] = 0 # STEER_MODE, NEW_SIGNAL_2 + values["HAS_LANE_SAFETY"] = 0 + values["LKA_ACTIVE"] = 0 # NEW_SIGNAL_1 + + values["DampingGain"] = 0 if lat_active else 100 + #values["VALUE63"] = 0 + + #values["VALUE82_SET256"] = 0 + + ret.append(packer.make_can_msg("LFA", CAN.ECAN, values)) + + return ret + +def create_steering_messages(packer, CP, CAN, enabled, lat_active, apply_steer, apply_angle, max_torque, angle_control): + + ret = [] + if angle_control: + values = { + "LKA_MODE": 0, + "LKA_ICON": 2 if enabled else 1, + "TORQUE_REQUEST": 0, # apply_steer, + "VALUE63": 0, # LKA_ASSIST + "STEER_REQ": 0, # 1 if lat_active else 0, + "HAS_LANE_SAFETY": 0, # hide LKAS settings + "LKA_ACTIVE": 3 if lat_active else 0, # this changes sometimes, 3 seems to indicate engaged + "VALUE64": 0, #STEER_MODE, NEW_SIGNAL_2 + "LKAS_ANGLE_CMD": -apply_angle, + "LKAS_ANGLE_ACTIVE": 2 if lat_active else 1, + "LKAS_ANGLE_MAX_TORQUE": max_torque if lat_active else 0, + + # test for EV6PE + "NEW_SIGNAL_1": 10, #2, + "DampingGain": 9, + "VALUE231": 146, + "VALUE239": 1, + "VALUE247": 255, + "VALUE255": 255, + } + else: + values = { + "LKA_MODE": 2, + "LKA_ICON": 2 if enabled else 1, + "TORQUE_REQUEST": apply_steer, + "DampingGain": 3 if enabled else 100, + "STEER_REQ": 1 if lat_active else 0, + #"STEER_MODE": 0, + "HAS_LANE_SAFETY": 0, # hide LKAS settings + "VALUE63": 0, + "VALUE64": 0, + } + + if CP.flags & HyundaiFlags.CANFD_HDA2: + lkas_msg = "LKAS_ALT" if CP.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING else "LKAS" + if CP.openpilotLongitudinalControl: + ret.append(packer.make_can_msg("LFA", CAN.ECAN, values)) + if not (CP.flags & HyundaiFlags.CAMERA_SCC.value): + ret.append(packer.make_can_msg(lkas_msg, CAN.ACAN, values)) + else: + ret.append(packer.make_can_msg("LFA", CAN.ECAN, values)) + + return ret + +def create_suppress_lfa(packer, CAN, CS): + if CS.msg_0x362 is not None: + suppress_msg = "CAM_0x362" + lfa_block_msg = CS.msg_0x362 + elif CS.msg_0x2a4 is not None: + suppress_msg = "CAM_0x2a4" + lfa_block_msg = CS.msg_0x2a4 + else: + return [] + + #values = {f"BYTE{i}": lfa_block_msg[f"BYTE{i}"] for i in range(3, msg_bytes) if i != 7} + values = copy.copy(lfa_block_msg) + values["COUNTER"] = lfa_block_msg["COUNTER"] + values["SET_ME_0"] = 0 + values["SET_ME_0_2"] = 0 + values["LEFT_LANE_LINE"] = 0 + values["RIGHT_LANE_LINE"] = 0 + return [packer.make_can_msg(suppress_msg, CAN.ACAN, values)] + +def create_buttons(packer, CP, CAN, cnt, btn): + values = { + "COUNTER": cnt, + "SET_ME_1": 1, + "CRUISE_BUTTONS": btn, + } + + #bus = CAN.ECAN if CP.flags & HyundaiFlags.CANFD_HDA2 else CAN.CAM + bus = CAN.ECAN + return packer.make_can_msg("CRUISE_BUTTONS", bus, values) + +def create_acc_cancel(packer, CP, CAN, cruise_info_copy): + # TODO: why do we copy different values here? + if CP.flags & HyundaiFlags.CANFD_CAMERA_SCC.value: + values = {s: cruise_info_copy[s] for s in [ + "COUNTER", + "CHECKSUM", + "NEW_SIGNAL_1", + "MainMode_ACC", + "ACCMode", + "ZEROS_9", + "CRUISE_STANDSTILL", + "ZEROS_5", + "DISTANCE_SETTING", + "VSetDis", + ]} + else: + values = {s: cruise_info_copy[s] for s in [ + "COUNTER", + "CHECKSUM", + "ACCMode", + "VSetDis", + "CRUISE_STANDSTILL", + ]} + values.update({ + "ACCMode": 4, + "aReqRaw": 0.0, + "aReqValue": 0.0, + }) + return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) + +def create_lfahda_cluster(packer, CS, CAN, long_active, lat_active): + + if CS.lfahda_cluster_info is not None: + values = {} # + values["HDA_CntrlModSta"] = 2 if long_active else 0 + values["HDA_LFA_SymSta"] = 2 if lat_active else 0 + + # + else: + return [] + return [packer.make_can_msg("LFAHDA_CLUSTER", CAN.ECAN, values)] + + +def create_acc_control_scc2(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control, hyundai_jerk, CS): + enabled = (enabled or CS.softHoldActive > 0) and CS.paddle_button_prev == 0 + + acc_mode = 0 if not enabled else (2 if gas_override else 1) + + if hyundai_jerk.carrot_cruise == 1: + 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 + + jerk_u = hyundai_jerk.jerk_u + jerk_l = hyundai_jerk.jerk_l + jerk = 5 + jn = jerk / 50 + if not enabled or gas_override: + a_val, a_raw = 0, 0 + else: + a_raw = accel + a_val = accel #np.clip(accel, accel_last - jn, accel_last + jn) + + values = copy.copy(CS.cruise_info) + values.pop("COUNTER", None) + values["ACCMode"] = acc_mode + values["MainMode_ACC"] = 1 + values["StopReq"] = 1 if stopping or CS.softHoldActive > 0 else 0 # 1: Stop control is required, 2: Not used, 3: Error Indicator + values["aReqValue"] = a_val + values["aReqRaw"] = a_raw + values["VSetDis"] = set_speed + #values["JerkLowerLimit"] = jerk if enabled else 1 + #values["JerkUpperLimit"] = 3.0 + values["JerkLowerLimit"] = jerk_l if enabled else 1 + values["JerkUpperLimit"] = 2.0 if stopping or CS.softHoldActive else jerk_u + values["DISTANCE_SETTING"] = hud_control.leadDistanceBars # + 5 + #values["DISTANCE_SETTING"] = hud_control.leadDistanceBars + 5 + + #values["ACC_ObjDist"] = 1 + #values["ObjValid"] = 0 + #values["OBJ_STATUS"] = 2 + #values["NSCCOper"] = 1 if enabled else 0 # 0: off, 1: Ready, 2: Act, 3: Error Indicator + #values["NSCCOnOff"] = 2 # 0: Default, 1: Off, 2: On, 3: Invalid + #values["SET_ME_3"] = 0x3 # objRelsped와 충돌 + #values["ACC_ObjLatPos"] = - hud_control.leadDPath + values["DriveMode"] = 0 # 0: Default, 1: Comfort Mode, 2:Normal mode, 3:Dynamic mode, reserved + + hud_lead_info = 0 + if hud_control.leadVisible: + hud_lead_info = 1 if values["ACC_ObjRelSpd"] > 0 else 2 + values["HUD_LEAD_INFO"] = hud_lead_info #1: in-path object detected(uncontrollable), 2: controllable long, 3: controllable long & lat, ... reserved + + values["DriverAlert"] = 0 # 1: SCC Disengaged, 2: No SCC Engage condition, 3: SCC Disenganed when the vehicle stops + + values["TARGET_DISTANCE"] = CS.out.vEgo * 1.0 + 4.0 + + soft_hold_info = 1 if CS.softHoldActive > 1 and enabled else 0 + + # 이거안하면 정지중 뒤로 밀리는 현상 발생하는듯.. (신호정지중에 뒤로 밀리는 경험함.. 시험해봐야) + if values["InfoDisplay"] != 5: #5: Front Car Departure Notice + values["InfoDisplay"] = 4 if stopping and CS.out.aEgo > -0.3 else 0 # 1: SCC Mode, 2: Convention Cruise Mode, 3: Object disappered at low speed, 4: Available to resume acceleration control, 5: Front vehicle departure notice, 6: Reserved, 7: Invalid + + values["TakeOverReq"] = 0 # 1: Takeover request, 2: Not used, 3: Error indicator , 이것이 켜지면 가속을 안하는듯함. + #values["NEW_SIGNAL_4"] = 9 if hud_control.leadVisible else 0 + # AccelLimitBandUpper, Lower + values["SysFailState"] = 0 # 1: Performance degredation, 2: system temporairy unavailble, 3: SCC Service required , 눈이 묻어 레이더오류시... 2가 됨. 이때 가속을 안함... + + values["AccelLimitBandUpper"] = 0.0 # 이값이 1.26일때 가속을 안하는 증상이 보임.. + values["AccelLimitBandLower"] = 0.0 + + values["ZEROS_7"] = 1 + + return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) + +def create_acc_control(packer, CAN, enabled, accel_last, accel, stopping, gas_override, set_speed, hud_control, jerk_u, jerk_l, CS): + + enabled = enabled or CS.softHoldActive > 0 + jerk = 5 + jn = jerk / 50 + if not enabled or gas_override: + a_val, a_raw = 0, 0 + else: + a_raw = accel + a_val = np.clip(accel, accel_last - jn, accel_last + jn) + + values = { + "ACCMode": 0 if not enabled else (2 if gas_override else 1), + "MainMode_ACC": 1, + "StopReq": 1 if stopping or CS.softHoldActive > 0 else 0, + "aReqValue": a_val, + "aReqRaw": a_raw, + "VSetDis": set_speed, + #"JerkLowerLimit": jerk if enabled else 1, + #"JerkUpperLimit": 3.0, + "JerkLowerLimit": jerk_l if enabled else 1, + "JerkUpperLimit": jerk_u, + + "ACC_ObjDist": 1, + #"ObjValid": 0, + #"OBJ_STATUS": 2, + "NSCCOper": 0, + "NSCCOnOff": 2, + "DriveMode": 0, + #"SET_ME_3": 0x3, + "ACC_ObjLatPos": 0x64, + "DISTANCE_SETTING": hud_control.leadDistanceBars, # + 5, + "InfoDisplay": 4 if stopping and CS.out.cruiseState.standstill else 0, + } + + return packer.make_can_msg("SCC_CONTROL", CAN.ECAN, values) + + +def create_spas_messages(packer, CAN, frame, left_blink, right_blink): + ret = [] + + values = { + } + ret.append(packer.make_can_msg("SPAS1", CAN.ECAN, values)) + + blink = 0 + if left_blink: + blink = 3 + elif right_blink: + blink = 4 + values = { + "BLINKER_CONTROL": blink, + } + ret.append(packer.make_can_msg("SPAS2", CAN.ECAN, values)) + + return ret + + +def create_fca_warning_light(CP, packer, CAN, frame): + ret = [] + if CP.flags & HyundaiFlags.CAMERA_SCC.value: + return ret + + if frame % 2 == 0: + values = { + 'AEB_SETTING': 0x1, # show AEB disabled icon + 'SET_ME_2': 0x2, + 'SET_ME_FF': 0xff, + 'SET_ME_FC': 0xfc, + 'SET_ME_9': 0x9, + #'DATA102': 1, + } + ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values)) + return ret + +def create_tcs_messages(packer, CAN, CS): + ret = [] + if CS.tcs_info_373 is not None: + values = copy.copy(CS.tcs_info_373) + values["DriverBraking"] = 0 + values["DriverBrakingLowSens"] = 0 + #values["NEW_SIGNAL_1"] = 0 # accel과 관련.. 옆두부 꺼지는것과 관련? 확인필요 + #values["ACC_REQ"] = 1 # 옆두부 꺼지는것과 관련? 확인필요.. 항상 켜지게함.. + values["NEW_SIGNAL_1"] = 0 if values["ACC_REQ"] == 1 else 1 # 옆두부.. + ret.append(packer.make_can_msg("TCS", CAN.CAM, values)) + return ret + +def forward_button_message(packer, CAN, frame, CS, cruise_button, MainMode_ACC_trigger, LFA_trigger): + ret = [] + if frame % 2 == 0: + if CS.cruise_buttons_msg is not None: + values = copy.copy(CS.cruise_buttons_msg) + cruise_button_driver = values["CRUISE_BUTTONS"] + if cruise_button_driver == 0: + values["CRUISE_BUTTONS"] = cruise_button + if MainMode_ACC_trigger > 0: + #values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 + pass + elif LFA_trigger > 0: + values["LFA_BTN"] = 1 + + ret.append(packer.make_can_msg(CS.cruise_btns_msg_canfd, CAN.CAM, values)) + return ret + +""" +def _make_ccnc_values___(values, CS, lat_active, frame, hud_control, lane_line = True, corner_radar = True): + if lane_line: + 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 + + md = CS.MD + if md is not None: + desire = md.meta.desire.raw + if desire == 1: # # 좌회전 + values['LANE_CHANGING'] = 1 # 왼쪽 화살표 + values["LANELINE_CURVATURE"] = 15 # 커브 최대 + values["LANELINE_CURVATURE_DIRECTION"] = 0 # 왼쪽으로 + + elif desire == 2: # 우회전 + values['LANE_CHANGING'] = 2 # 오른쪽 화살표 + values["LANELINE_CURVATURE"] = 15 # 차선커브 최대로 + values["LANELINE_CURVATURE_DIRECTION"] = 1 # 오른쪽으로 + + elif desire == 3: # 좌차선변경 + values['LANE_CHANGING'] = 3 # 왼쪽 화살표 + 바닥 + + elif desire == 4: # 우차선변경 + values['LANE_CHANGING'] = 4 # 오른쪽 화살표 + 바닥 + + if corner_radar: + if values['LF_DETECT'] >= 4 and values['LF_DETECT_DISTANCE'] != 0: values['LF_DETECT'] = 1 + if values['RF_DETECT'] >= 4 and values['RF_DETECT_DISTANCE'] != 0: values['RF_DETECT'] = 1 + if values['LR_DETECT'] >= 4 and values['LR_DETECT_DISTANCE'] != 0: values['LR_DETECT'] = 1 + if values['RR_DETECT'] >= 4 and values['RR_DETECT_DISTANCE'] != 0: values['RR_DETECT'] = 1 + + disp_dist = 30.0 + min_dist = 14.0 + max_interval = 100 + t = 1.0 # 이 값만 바꾸면 전체 깜빡임 속도 조절됨 (0.6 빠름, 1.0 기본, 1.5 느림) + def apply_one(detect_key, dist_key): + dist = values.get(dist_key, 0.0) + if dist <= min_dist: + return + d = min(dist, disp_dist) + interval = int((1 + (max_interval - 1) * (d / disp_dist)) * t) + interval = max(1, min(interval, max_interval)) + blink = (frame // interval) & 1 + values[detect_key] = 2 - blink + values[dist_key] = min_dist + + apply_one('LR_DETECT', 'LR_DETECT_DISTANCE') + apply_one('RR_DETECT', 'RR_DETECT_DISTANCE') + +def create_ccnc_messages___(CP, packer, CAN, frame, CC, CS, hud_control, disp_angle, left_lane_warning, right_lane_warning, enable_corner_radar): + ret = [] + md = CS.MD + desire = 0 + lane_changing = 0 + if md is not None: + desire = md.meta.desire.raw + desire_state = md.meta.desireState + if len(desire_state) > 4: + if desire_state[1] > 0.3 : lane_changing = 1 + if desire_state[2] > 0.3 : lane_changing = 2 + if desire_state[3] > 0.3 : lane_changing = 3 + if desire_state[4] > 0.3 : lane_changing = 4 + + if CP.flags & HyundaiFlags.CAMERA_SCC.value: + HDA_CntrlModSta = 0 + if CS.lfahda_cluster_info is not None: + HDA_CntrlModSta = CS.lfahda_cluster_info["HDA_CntrlModSta"] + + if frame % 2 == 0: + if CS.adrv_info_160 is not None: + values = copy.copy(CS.adrv_info_160) + #values["NEW_SIGNAL_1"] = 0 # steer_temp관련없음, 계기판에러 + #values["SET_ME_9"] = 17 # steer_temp관련없음, 계기판에러 + #values["SET_ME_2"] = 0 #커멘트해도 steer_temp에러남, 2값은 콤마에서 찾은거니... + #values["DATA102"] = 0 # steer_temp관련없음 + ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values)) + + if CS.cruise_buttons_msg is not None: + values = copy.copy(CS.cruise_buttons_msg) + if CS.lfahda_cluster_info["HDA_LFA_SymSta"] == 0 and 0 < frame % 200 < 12: + values["LFA_BTN"] = 1 + #else: + # values["LFA_BTN"] = 0 + + if CC.enabled and CS.MainMode_ACC: + if CS.ACCMode in [0, 4] and 10 < frame % 200 < 22: + values["CRUISE_BUTTONS"] = 2 + elif CC.enabled and not CS.MainMode_ACC and 10 < frame % 200 <= 16 and CS.out.vEgo > 3.: + values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 + else: + values["ADAPTIVE_CRUISE_MAIN_BTN"] = 0 + + ret.append(packer.make_can_msg(CS.cruise_btns_msg_canfd, CAN.CAM, values)) + + + if frame % 5 == 0: + lat_active = CC.latActive + if CS.adrv_info_161 is not None: + main_enabled = CS.out.cruiseState.available + cruise_enabled = CC.enabled + lat_enabled = CS.out.latEnabled + nav_active = hud_control.activeCarrot > 1 + + # hdpuse carrot + hdp_use = int(Params().get("HDPuse")) + hdp_active = False + if hdp_use == 1: + hdp_active = cruise_enabled and nav_active + elif hdp_use == 2: + hdp_active = cruise_enabled + # hdpuse carrot + + values = copy.copy(CS.adrv_info_161) + #print("adrv_info_161 = ", CS.adrv_info_161) + + values["SETSPEED"] = (6 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 + values["SETSPEED_HUD"] = (5 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 + set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + values["vSetDis"] = int(set_speed_in_units + 0.5) + + values["DISTANCE"] = 4 if hdp_active else hud_control.leadDistanceBars + values["DISTANCE_LEAD"] = 2 if cruise_enabled and hud_control.leadVisible else 1 if main_enabled and hud_control.leadVisible else 0 + values["DISTANCE_CAR"] = 3 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 + values["DISTANCE_SPACING"] = 5 if hdp_active else 1 if cruise_enabled else 0 + + values["TARGET"] = 1 if main_enabled else 0 + values["TARGET_DISTANCE"] = int(hud_control.leadDistance) + + values["BACKGROUND"] = 6 if CS.paddle_button_prev > 0 else 1 if cruise_enabled else 3 if main_enabled else 7 + values["CENTERLINE"] = 1 if HDA_CntrlModSta > 0 else 0 #lat_enabled else 0 + values["CAR_CIRCLE"] = 2 if hdp_active else 1 if cruise_enabled else 0 + + values["NAV_ICON"] = 2 if nav_active else 0 + values["HDA_ICON"] = 5 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 + values["LFA_ICON"] = 5 if hdp_active else 2 if lat_active else 1 if lat_enabled else 0 + values["LKA_ICON"] = 4 if lat_active else 3 if lat_enabled else 0 + values["FCA_ALT_ICON"] = 0 + + if values["ALERTS_2"] in [1, 2, 5, 6, 10, 21, 22]: # 10,21,22: 운전자모니터 알람/경고, 6: enable lanechange alert + values["ALERTS_2"] = 0 + values["DAW_ICON"] = 0 + + values["SOUNDS_1"] = 0 # 운전자모니터경고음. + values["SOUNDS_2"] = 0 # 2: STEER중지 경고후에도 사운드가 나옴. + values["SOUNDS_4"] = 0 # 차선변경알림? 에이 그냥0으로.. + + if values["ALERTS_3"] in [3, 4, 13, 17, 19, 26, 7, 8, 9, 10]: + values["ALERTS_3"] = 0 + values["SOUNDS_3"] = 0 + + if values["ALERTS_5"] in [1, 2, 4, 5]: + values["ALERTS_5"] = 0 + + if values["ALERTS_5"] in [11] and CS.softHoldActive == 0: + values["ALERTS_5"] = 0 + + 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 + + # lane_color = 6 if lat_active else 2 + #lane_color = 2 # 6: green, 2: white, 4: yellow + lane_color = 2 if CS.out.leftLaneLine < 20 else 4 + if hud_control.leftLaneDepart: + values["LANELINE_LEFT"] = 4 if (frame // 50) % 2 == 0 else 1 + else: + values["LANELINE_LEFT"] = lane_color if hud_control.leftLaneVisible else 0 + lane_color = 2 if CS.out.rightLaneLine < 20 else 4 + if hud_control.rightLaneDepart: + values["LANELINE_RIGHT"] = 4 if (frame // 50) % 2 == 0 else 1 + else: + values["LANELINE_RIGHT"] = lane_color if hud_control.rightLaneVisible else 0 + #values["LANELINE_LEFT_POSITION"] = 15 + #values["LANELINE_RIGHT_POSITION"] = 15 + + values["LCA_LEFT_ARROW"] = 2 if CS.out.leftBlinker else 0 + values["LCA_RIGHT_ARROW"] = 2 if CS.out.rightBlinker else 0 + + values["LCA_LEFT_ICON"] = 1 if CS.out.leftBlindspot else 2 + values["LCA_RIGHT_ICON"] = 1 if CS.out.rightBlindspot else 2 + + values["LANE_LEFT"] = 1 if desire in (1, 3) else 0 + values["LANE_RIGHT"] = 1 if desire in (2, 4) else 0 + + ret.append(packer.make_can_msg("ADRV_0x161", CAN.ECAN, values)) + + if CS.adrv_info_200 is not None: + values = copy.copy(CS.adrv_info_200) + values["TauGapSet"] = hud_control.leadDistanceBars + ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values)) + + if CS.adrv_info_1ea is not None: + values = copy.copy(CS.adrv_info_1ea) + #values["HDA_MODE1"] = 8 + #values["HDA_MODE2"] = 1 + if lane_changing == 3: + values['LEFT_BLINK_HOLD'] = 1 + elif lane_changing == 4: + values['RIGHT_BLINK_HOLD'] = 1 + + _make_ccnc_values(values, CS, lat_active, frame, hud_control) + # values['AUTOLANECHANGE_MSG'] = 1 # 주변 상황을 확인하세요 + # values['AUTOLANECHANGE_MSG'] = 2 # 작동 조건이 아닙니다 + # values['AUTOLANECHANGE_MSG'] = 3 # 주행 차로를 분석중입니다 + # values['AUTOLANECHANGE_MSG'] = 4 # 급커브 구간입니다 + # values['AUTOLANECHANGE_MSG'] = 5 # 주행 중인 차로의 폭이 좁습니다 + # values['AUTOLANECHANGE_MSG'] = 6 # 작동 구간이 아닙니다. + # values['AUTOLANECHANGE_MSG'] = 7 # 비상등이 켜져있습니다 + # values['AUTOLANECHANGE_MSG'] = 8 # 주행속도가 낮습니다 + # values['AUTOLANECHANGE_MSG'] = 9 # 핸들을 잡으십시오 + # values['AUTOLANECHANGE_MSG'] = 10 # 작동 가능한 차로가 아닙니다 + # values['AUTOLANECHANGE_MSG'] = 11 # 핸들 조작이 감지되었습니다. + # 얘는 우측 RPM 게이지에 크게 나옴 + # values['AUTOLANECHANGE_MSG'] = 12 # ok 버튼을 누르면 차로변경 보조기능이 켜집니다 + # values['AUTOLANECHANGE_MSG'] = 13 # 없음. + # values['AUTOLANECHANGE_MSG'] = 14 # 없음. + # values['AUTOLANECHANGE_MSG'] = 15 # 없음. + ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values)) + + if CS.adrv_info_162 is not None: + values = copy.copy(CS.adrv_info_162) + if hud_control.leadDistance > 0: + values["FF_DISTANCE"] = hud_control.leadDistance + #values["FF_DETECT"] = 11 if hud_control.leadRelSpeed > -0.1 else 12 # bicycle + #values["FF_DETECT"] = 5 if hud_control.leadRelSpeed > -0.1 else 6 # truck + ff_type = 3 if hud_control.leadRadar == 1 else 13 + values["FF_DETECT"] = ff_type if hud_control.leadRelSpeed > -0.1 else ff_type + 1 + #values["FF_DETECT_LAT"] = - hud_control.leadDPath + _make_ccnc_values(values, CS, lat_active, frame, hud_control, lane_line = False, corner_radar= True) + + #values["FAULT_FCA"] = 0 + #values["FAULT_LSS"] = 0 + #values["FAULT_LFA"] = 0 + #values["FAULT_LCA"] = 0 + #values["FAULT_DAS"] = 0 + #values["FAULT_HDA"] = 0 + + if (left_lane_warning and not CS.out.leftBlinker) or (right_lane_warning and not CS.out.rightBlinker): + values["VIBRATE"] = 1 + ret.append(packer.make_can_msg("CCNC_0x162", CAN.ECAN, values)) + + if enable_corner_radar > 0: + if HDA_CntrlModSta == 0: + if frame % 500 in [10,20,30]: + values = { + 'BYTE_1': 0, + 'BYTE_2': 0, + 'BYTE_3': 0x80, + 'BYTE_4': 0x8A, + 'BYTE_5': 0x32, + 'BYTE_6': 0x30, + 'BYTE_7': 0x01, + 'BYTE_8': 0x00, + } + ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) + elif frame % 500 in [40,50,60]: + values = { + 'BYTE_1': 0xff, + 'BYTE_2': 0xff, + 'BYTE_3': 0xff, + 'BYTE_4': 0xff, + 'BYTE_5': 0xff, + 'BYTE_6': 0xff, + 'BYTE_7': 0xff, + 'BYTE_8': 0xff, + } + ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) + if False: #canfd_debug > 1 and frame % 20 == 0: # 아직 시험중.. + if CS.hda_info_4a3 is not None: + values = copy.copy(CS.hda_info_4a3) + values["LinkClass"] = 1 + values["SPEED_LIMIT"] = 100 + ret.append(packer.make_can_msg("HDA_INFO_4A3", CAN.CAM, values)) + + return ret +""" + +def create_adrv_messages(CP, packer, CAN, frame): + # messages needed to car happy after disabling + # the ADAS Driving ECU to do longitudinal control + + ret = [] + + if not CP.flags & HyundaiFlags.CAMERA_SCC.value: + values = {} + + ret.extend(create_fca_warning_light(CP, packer, CAN, frame)) + if frame % 5 == 0: + values = { + 'HDA_MODE1': 0x8, + 'HDA_MODE2': 0x1, + #'SET_ME_1C': 0x1c, + 'SET_ME_FF': 0xff, + #'SET_ME_TMP_F': 0xf, + #'SET_ME_TMP_F_2': 0xf, + #'DATA26': 1, #1 + #'DATA32': 5, #5 + } + ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values)) + + values = { + 'SET_ME_E1': 0xe1, + #'SET_ME_3A': 0x3a, + 'TauGapSet' : 1, + 'NEW_SIGNAL_2': 3, + } + ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values)) + + if frame % 20 == 0: + values = { + 'SET_ME_15': 0x15, + } + ret.append(packer.make_can_msg("ADRV_0x345", CAN.ECAN, values)) + + if frame % 100 == 0: + values = { + 'SET_ME_22': 0x22, + 'SET_ME_41': 0x41, + } + ret.append(packer.make_can_msg("ADRV_0x1da", CAN.ECAN, values)) + + return ret + +## carrot +def alt_cruise_buttons(packer, CP, CAN, buttons, cruise_btns_msg, cnt): + cruise_btns_msg["CRUISE_BUTTONS"] = buttons + 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)): + crc = ((crc << 8) ^ CRC16_XMODEM[(crc >> 8) ^ d[i]]) & 0xFFFF + crc = ((crc << 8) ^ CRC16_XMODEM[(crc >> 8) ^ ((address >> 0) & 0xFF)]) & 0xFFFF + crc = ((crc << 8) ^ CRC16_XMODEM[(crc >> 8) ^ ((address >> 8) & 0xFF)]) & 0xFFFF + if len(d) == 8: + crc ^= 0x5F29 + elif len(d) == 16: + crc ^= 0x041D + elif len(d) == 24: + crc ^= 0x819D + elif len(d) == 32: + crc ^= 0x9F5B + return crc + + + + +def _clip_int(x, lo, hi): + return lo if x < lo else hi if x > hi else int(x) + +def _get_desire_and_lane_changing(md): + desire = 0 + lane_changing = 0 + if md is not None: + desire = md.meta.desire.raw + ds = md.meta.desireState + if len(ds) > 4: + if ds[1] > 0.3: lane_changing = 1 + if ds[2] > 0.3: lane_changing = 2 + if ds[3] > 0.3: lane_changing = 3 + if ds[4] > 0.3: lane_changing = 4 + return desire, lane_changing + +def _apply_lane_desire(values, desire): + #values['LANE_CHANGING'] = 0 + + if desire == 1: # 좌회전 + values['LANE_CHANGING'] = 1 + values["LANELINE_CURVATURE"] = 15 + values["LANELINE_CURVATURE_DIRECTION"] = 0 + + elif desire == 2: # 우회전 + values['LANE_CHANGING'] = 2 + values["LANELINE_CURVATURE"] = 15 + values["LANELINE_CURVATURE_DIRECTION"] = 1 + + elif desire == 3: # 좌차선변경 + values['LANE_CHANGING'] = 3 + + elif desire == 4: # 우차선변경 + values['LANE_CHANGING'] = 4 + +def _apply_radar_blink(values, radar_pairs, frame, *, + disp_dist=30.0, min_dist=14.0, + max_interval=100, t=1.0): + """ + 거리 > min_dist 일 때만 깜빡임. + 거리 멀수록 interval 커짐(느리게). + """ + for det_key, dist_key in radar_pairs: + dist = values[dist_key] + if dist <= min_dist: + continue + + d = min(dist, disp_dist) + interval = int((1 + (max_interval - 1) * (d / disp_dist)) * t) + interval = _clip_int(interval, 1, max_interval) + + blink = (frame // interval) & 1 + values[det_key] = 2 - blink + values[dist_key] = min_dist + +def _make_ccnc_values(values, CS, lat_active, frame, hud_control, + lane_line=True, corner_radar=True, + desire=0, + blink_pairs=None, + blink_t=1.0): + if lane_line: + curvature = round(CS.out.steeringAngleDeg / 3) + mag = min(abs(curvature), 15) + curv = mag + (-1 if curvature < 0 else 0) + direction = 1 if curvature < 0 else 0 + values["LANELINE_CURVATURE"] = curv if lat_active else 0 + values["LANELINE_CURVATURE_DIRECTION"] = direction if lat_active else 0 + if desire: + _apply_lane_desire(values, desire) + + if corner_radar: + radar_all = [ + ('LF_DETECT', 'LF_DETECT_DISTANCE'), + ('RF_DETECT', 'RF_DETECT_DISTANCE'), + ('LR_DETECT', 'LR_DETECT_DISTANCE'), + ('RR_DETECT', 'RR_DETECT_DISTANCE'), + ] + for det_key, dist_key in radar_all: + if values[det_key] >= 4 and values[dist_key] != 0: + values[det_key] = 1 + + if blink_pairs: + _apply_radar_blink(values, blink_pairs, frame, t=blink_t) + +def create_ccnc_messages(CP, packer, CAN, frame, CC, CS, hud_control, + disp_angle, left_lane_warning, right_lane_warning, + enable_corner_radar): + ret = [] + + md = CS.MD + desire, lane_changing = _get_desire_and_lane_changing(md) + + if CP.flags & HyundaiFlags.CAMERA_SCC.value: + HDA_CntrlModSta = 0 + if CS.lfahda_cluster_info is not None: + HDA_CntrlModSta = CS.lfahda_cluster_info["HDA_CntrlModSta"] + + if frame % 2 == 0: + #if CS.adrv_info_160 is not None: + # values = copy.copy(CS.adrv_info_160) + # ret.append(packer.make_can_msg("ADRV_0x160", CAN.ECAN, values)) + + if CS.cruise_buttons_msg is not None: + values = copy.copy(CS.cruise_buttons_msg) + + if CS.lfahda_cluster_info["HDA_LFA_SymSta"] == 0 and 0 < frame % 200 < 12: + values["LFA_BTN"] = 1 + + if CC.enabled and CS.MainMode_ACC: + if CS.ACCMode in [0, 4] and 10 < frame % 200 < 22: + values["CRUISE_BUTTONS"] = 2 + elif CC.enabled and (not CS.MainMode_ACC) and 10 < frame % 200 <= 16 and CS.out.vEgo > 3.: + values["ADAPTIVE_CRUISE_MAIN_BTN"] = 1 + else: + values["ADAPTIVE_CRUISE_MAIN_BTN"] = 0 + + ret.append(packer.make_can_msg(CS.cruise_btns_msg_canfd, CAN.CAM, values)) + + # --- 0x161/0x200/0x1ea/0x162 (frame%5) --- + if frame % 5 == 0: + lat_active = CC.latActive + + if CS.adrv_info_161 is not None: + main_enabled = CS.out.cruiseState.available + cruise_enabled = CC.enabled + lat_enabled = CS.out.latEnabled + nav_active = hud_control.activeCarrot > 1 + + # hdpuse carrot + hdp_use = int(Params().get("HDPuse")) + hdp_active = False + if hdp_use == 1: + hdp_active = cruise_enabled and nav_active + elif hdp_use == 2: + hdp_active = cruise_enabled + # hdpuse carrot + + values = copy.copy(CS.adrv_info_161) + + values["SETSPEED"] = (6 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 + values["SETSPEED_HUD"] = (5 if hdp_active else 3 if cruise_enabled else 1) if main_enabled else 0 + + set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + values["vSetDis"] = int(set_speed_in_units + 0.5) + + values["DISTANCE"] = 4 if hdp_active else hud_control.leadDistanceBars + values["DISTANCE_LEAD"] = 2 if cruise_enabled and hud_control.leadVisible else 1 if main_enabled and hud_control.leadVisible else 0 + values["DISTANCE_CAR"] = 3 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 + values["DISTANCE_SPACING"] = 5 if hdp_active else 1 if cruise_enabled else 0 + + values["TARGET"] = 1 if main_enabled else 0 + values["TARGET_DISTANCE"] = int(hud_control.leadDistance) + + values["BACKGROUND"] = 6 if CS.paddle_button_prev > 0 else 1 if cruise_enabled else 3 if main_enabled else 7 + values["CENTERLINE"] = 1 if HDA_CntrlModSta > 0 else 0 + values["CAR_CIRCLE"] = 2 if hdp_active else 1 if cruise_enabled else 0 + + values["NAV_ICON"] = 2 if nav_active else 0 + values["HDA_ICON"] = 5 if hdp_active else 2 if cruise_enabled else 1 if main_enabled else 0 + values["LFA_ICON"] = 5 if hdp_active else 2 if lat_active else 1 if lat_enabled else 0 + values["LKA_ICON"] = 4 if lat_active else 3 if lat_enabled else 0 + values["FCA_ALT_ICON"] = 0 + + if values["ALERTS_2"] in [1, 2, 5, 6, 10, 21, 22]: + values["ALERTS_2"] = 0 + values["DAW_ICON"] = 0 + + if values["ALERTS_1"] == 0: # alerts가 있으면 사운드도 같이 나옴 + values["SOUNDS_1"] = 0 + values["SOUNDS_2"] = 0 + values["SOUNDS_4"] = 0 + + if values["ALERTS_3"] in [3, 4, 13, 17, 19, 26, 7, 8, 9, 10]: + values["ALERTS_3"] = 0 + values["SOUNDS_3"] = 0 + + if values["ALERTS_5"] in [1, 2, 4, 5]: + values["ALERTS_5"] = 0 + + if values["ALERTS_5"] in [11] and CS.softHoldActive == 0: + values["ALERTS_5"] = 0 + + # curvature 표시(0x161쪽 기존 로직 유지) + 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 + + bsd = CS.out.leftBlindspot or CS.out.rightBlindspot + lane_color = 4 if CS.out.leftLaneLine >= 20 or bsd else 2 + if hud_control.leftLaneDepart: + values["LANELINE_LEFT"] = 4 if (frame // 50) % 2 == 0 else 1 + else: + values["LANELINE_LEFT"] = lane_color if hud_control.leftLaneVisible else 0 + + lane_color = 2 if CS.out.rightLaneLine < 20 else 4 + if hud_control.rightLaneDepart: + values["LANELINE_RIGHT"] = 4 if (frame // 50) % 2 == 0 else 1 + else: + values["LANELINE_RIGHT"] = lane_color if hud_control.rightLaneVisible else 0 + + values["LCA_LEFT_ARROW"] = 2 if CS.out.leftBlinker else 0 + values["LCA_RIGHT_ARROW"] = 2 if CS.out.rightBlinker else 0 + + values["LCA_LEFT_ICON"] = 1 if CS.out.leftBlindspot else 2 + values["LCA_RIGHT_ICON"] = 1 if CS.out.rightBlindspot else 2 + + values["LANE_LEFT"] = 1 if desire in (1, 3) else 0 + values["LANE_RIGHT"] = 1 if desire in (2, 4) else 0 + + ret.append(packer.make_can_msg("ADRV_0x161", CAN.ECAN, values)) + + if CS.adrv_info_200 is not None: + values = copy.copy(CS.adrv_info_200) + values["TauGapSet"] = hud_control.leadDistanceBars + ret.append(packer.make_can_msg("ADRV_0x200", CAN.ECAN, values)) + + if CS.adrv_info_1ea is not None: + values = copy.copy(CS.adrv_info_1ea) + + # blinker hold + values['LEFT_BLINK_HOLD'] = 1 if lane_changing == 3 else 0 + values['RIGHT_BLINK_HOLD'] = 1 if lane_changing == 4 else 0 + + _make_ccnc_values( + values, CS, lat_active, frame, hud_control, + lane_line=True, + corner_radar=True, + desire=desire, + # 기존대로 LR/RR만 깜빡임 + blink_pairs=[('LR_DETECT', 'LR_DETECT_DISTANCE'), + ('RR_DETECT', 'RR_DETECT_DISTANCE')], + blink_t=1.0 + ) + + ret.append(packer.make_can_msg("ADRV_0x1ea", CAN.ECAN, values)) + + if CS.adrv_info_162 is not None: + values = copy.copy(CS.adrv_info_162) + + if hud_control.leadDistance > 0: + values["FF_DISTANCE"] = hud_control.leadDistance + ff_type = 3 if hud_control.leadRadar == 1 else 13 + values["FF_DETECT"] = ff_type if hud_control.leadRelSpeed > -0.1 else ff_type + 1 + + _make_ccnc_values( + values, CS, lat_active, frame, hud_control, + lane_line=False, + corner_radar=True, + desire=0, + # 필요하면 162도 깜빡임 적용(원래 코드처럼 LR/RR만) + blink_pairs=[('LR_DETECT', 'LR_DETECT_DISTANCE'), + ('RR_DETECT', 'RR_DETECT_DISTANCE')], + blink_t=1.0 + ) + + if (left_lane_warning and not CS.out.leftBlinker) or (right_lane_warning and not CS.out.rightBlinker): + values["VIBRATE"] = 1 + + ret.append(packer.make_can_msg("CCNC_0x162", CAN.ECAN, values)) + + # --- NEW_MSG_4B9 (corner radar keep-alive?) --- + if enable_corner_radar > 0: + if HDA_CntrlModSta == 0: + if frame % 500 in [10, 20, 30]: + values = { + 'BYTE_1': 0, + 'BYTE_2': 0, + 'BYTE_3': 0x80, + 'BYTE_4': 0x8A, + 'BYTE_5': 0x32, + 'BYTE_6': 0x30, + 'BYTE_7': 0x01, + 'BYTE_8': 0x00, + } + ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) + elif frame % 500 in [40, 50, 60]: + values = { + 'BYTE_1': 0xff, + 'BYTE_2': 0xff, + 'BYTE_3': 0xff, + 'BYTE_4': 0xff, + 'BYTE_5': 0xff, + 'BYTE_6': 0xff, + 'BYTE_7': 0xff, + 'BYTE_8': 0xff, + } + ret.append(packer.make_can_msg("NEW_MSG_4B9", CAN.CAM, values)) + + if False: # canfd_debug > 1 and frame % 20 == 0: + if CS.hda_info_4a3 is not None: + values = copy.copy(CS.hda_info_4a3) + values["LinkClass"] = 1 + values["SPEED_LIMIT"] = 100 + ret.append(packer.make_can_msg("HDA_INFO_4A3", CAN.CAM, values)) + + return ret diff --git a/opendbc_repo/opendbc/car/hyundai/interface.py b/opendbc_repo/opendbc/car/hyundai/interface.py new file mode 100644 index 0000000000..6f1c2a605a --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/interface.py @@ -0,0 +1,284 @@ +from opendbc.car import Bus, get_safety_config, structs +from opendbc.car.hyundai.hyundaicanfd import CanBus +from opendbc.car.hyundai.values import HyundaiFlags, CAR, DBC, CANFD_RADAR_SCC_CAR, \ + CANFD_UNSUPPORTED_LONGITUDINAL_CAR, \ + UNSUPPORTED_LONGITUDINAL_CAR, HyundaiSafetyFlags, HyundaiExtFlags +from opendbc.car.hyundai.radar_interface import RADAR_START_ADDR +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.disable_ecu import disable_ecu +from opendbc.car.hyundai.carcontroller import CarController +from opendbc.car.hyundai.carstate import CarState +from opendbc.car.hyundai.radar_interface import RadarInterface + +from openpilot.common.params import Params + +ButtonType = structs.CarState.ButtonEvent.Type +Ecu = structs.CarParams.Ecu + +# Cancel button can sometimes be ACC pause/resume button, main button can also enable on some cars +ENABLE_BUTTONS = (ButtonType.accelCruise, ButtonType.decelCruise, ButtonType.cancel, ButtonType.mainCruise) + +SteerControlType = structs.CarParams.SteerControlType + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + + params = Params() + camera_scc = params.get_int("HyundaiCameraSCC") + if camera_scc > 0: + ret.flags |= HyundaiFlags.CAMERA_SCC.value + print("$$$CAMERA_SCC toggled...") + + ret.brand = "hyundai" + + cam_can = CanBus(None, fingerprint).CAM if camera_scc == 0 else 1 + hda2 = False #0x50 in fingerprint[cam_can] or 0x110 in fingerprint[cam_can] + hda2 = hda2 or params.get_int("CanfdHDA2") > 0 + CAN = CanBus(None, fingerprint, hda2) + + if params.get_int("CanfdDebug") == -1: + ret.flags |= HyundaiFlags.ANGLE_CONTROL.value + + if ret.flags & HyundaiFlags.CANFD: + # Shared configuration for CAN-FD cars + ret.alphaLongitudinalAvailable = True #candidate not in (CANFD_UNSUPPORTED_LONGITUDINAL_CAR | CANFD_RADAR_SCC_CAR) + #ret.enableBsm = 0x1e5 in fingerprint[CAN.ECAN] + ret.enableBsm = 0x1ba in fingerprint[CAN.ECAN] # BLINDSPOTS_REAR_CORNERS 0x1ba(442) + + if 0x105 in fingerprint[CAN.ECAN]: + ret.flags |= HyundaiFlags.HYBRID.value + + if 203 in fingerprint[CAN.CAM]: # LFA_ALT + print("##### Anglecontrol detected (LFA_ALT)") + ret.flags |= HyundaiFlags.ANGLE_CONTROL.value + + print("ACAN=", fingerprint[CAN.ACAN]) + + if 0x210 in fingerprint[CAN.ACAN]: + print("##### Radar Group 1 detected (0x210)") + ret.extFlags |= HyundaiExtFlags.RADAR_GROUP1.value + + # detect HDA2 with ADAS Driving ECU + if hda2: + print("$$$CANFD HDA2") + ret.flags |= HyundaiFlags.CANFD_HDA2.value + if camera_scc > 0: + if 0x110 in fingerprint[CAN.ACAN]: + ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value + print("$$$CANFD ALT_STEERING1") + else: + if 0x110 in fingerprint[CAN.CAM]: # 0x110(272): LKAS_ALT + ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value + print("$$$CANFD ALT_STEERING1") + ## carrot_todo: sorento: + if 0x2a4 not in fingerprint[CAN.CAM]: # 0x2a4(676): CAM_0x2a4 + ret.flags |= HyundaiFlags.CANFD_HDA2_ALT_STEERING.value + print("$$$CANFD ALT_STEERING2") + + ## carrot: canival 4th, no 0x1cf + if 0x1cf not in fingerprint[CAN.ECAN]: # 0x1cf(463): CRUISE_BUTTONS + ret.flags |= HyundaiFlags.CANFD_ALT_BUTTONS.value + print("$$$CANFD ALT_BUTTONS") + else: + # non-HDA2 + print("$$$CANFD non HDA2") + if 0x1cf not in fingerprint[CAN.ECAN]: + ret.flags |= HyundaiFlags.CANFD_ALT_BUTTONS.value + print("$$$CANFD ALT_BUTTONS") + #if not ret.flags & HyundaiFlags.RADAR_SCC: + # ret.flags |= HyundaiFlags.CANFD_CAMERA_SCC.value + # print("$$$CANFD CAMERA_SCC") + # Some HDA2 cars have alternative messages for gear checks + # ICE cars do not have 0x130; GEARS message on 0x40 or 0x70 instead + if 0x40 in fingerprint[CAN.ECAN]: # 0x40(64): GEAR_ALT + ret.flags |= HyundaiFlags.CANFD_ALT_GEARS.value + print("$$$CANFD ALT_GEARS") + elif 69 in fingerprint[CAN.ECAN]: # Special case + ret.extFlags |= HyundaiExtFlags.CANFD_GEARS_69.value + print("$$$CANFD GEARS_69") + elif 112 in fingerprint[CAN.ECAN]: # carrot: eGV70 + ret.flags |= HyundaiFlags.CANFD_ALT_GEARS_2.value + print("$$$CANFD ALT_GEARS_2") + elif 0x130 in fingerprint[CAN.ECAN]: # 0x130(304): GEAR_SHIFTER + print("$$$CANFD GEAR_SHIFTER present") + else: + ret.extFlags |= HyundaiExtFlags.CANFD_GEARS_NONE.value + print("$$$CANFD GEARS_NONE") + + cfgs = [get_safety_config(structs.CarParams.SafetyModel.hyundaiCanfd), ] + if CAN.ECAN >= 4: + cfgs.insert(0, get_safety_config(structs.CarParams.SafetyModel.noOutput)) + ret.safetyConfigs = cfgs + + if ret.flags & HyundaiFlags.CANFD_HDA2: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_LKA_STEERING.value + if ret.flags & HyundaiFlags.CANFD_HDA2_ALT_STEERING: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_LKA_STEERING_ALT.value + if ret.flags & HyundaiFlags.CANFD_ALT_BUTTONS: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CANFD_ALT_BUTTONS.value + if ret.flags & HyundaiFlags.CANFD_CAMERA_SCC: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.CAMERA_SCC.value + + else: + # Shared configuration for non CAN-FD cars + ret.alphaLongitudinalAvailable = True #candidate not in (UNSUPPORTED_LONGITUDINAL_CAR | CAMERA_SCC_CAR) + ret.enableBsm = 0x58b in fingerprint[0] + print(f"$$$ enableBsm = {ret.enableBsm}") + + # Send LFA message on cars with HDA + if 0x485 in fingerprint[2]: + ret.flags |= HyundaiFlags.SEND_LFA.value + print("$$$SEND_LFA") + + # These cars use the FCA11 message for the AEB and FCW signals, all others use SCC12 + if 0x38d in fingerprint[0] or 0x38d in fingerprint[2]: + ret.flags |= HyundaiFlags.USE_FCA.value + print("$$$USE_FCA") + + if ret.flags & HyundaiFlags.LEGACY: + # these cars require a special panda safety mode due to missing counters and checksums in the messages + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hyundaiLegacy)] + print("$$$Legacy Safety Model") + else: + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.hyundai, 0)] + + if ret.flags & HyundaiFlags.CAMERA_SCC: + ret.safetyConfigs[0].safetyParam |= HyundaiSafetyFlags.CAMERA_SCC.value + print("$$$CAMERA_SCC") + + # Common lateral control setup + + ret.centerToFront = ret.wheelbase * 0.4 + ret.steerActuatorDelay = 0.1 + ret.steerLimitTimer = 0.4 + if ret.flags & HyundaiFlags.ANGLE_CONTROL: + ret.steerControlType = SteerControlType.angle + else: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + if ret.flags & HyundaiFlags.ALT_LIMITS: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.ALT_LIMITS.value + + # Common longitudinal control setup + + ret.radarUnavailable = RADAR_START_ADDR not in fingerprint[1] or Bus.radar not in DBC[ret.carFingerprint] + ret.openpilotLongitudinalControl = alpha_long and ret.alphaLongitudinalAvailable + + # carrot, if camera_scc enabled, enable openpilotLongitudinalControl + if ret.flags & HyundaiFlags.CAMERA_SCC.value or params.get_int("EnableRadarTracks") > 0: + ret.radarUnavailable = False + ret.openpilotLongitudinalControl = True if camera_scc < 3 else False + print(f"$$$OenpilotLongitudinalControl = True, CAMERA_SCC({ret.flags & HyundaiFlags.CAMERA_SCC.value}) or RadarTracks{params.get_int('EnableRadarTracks')}") + else: + print(f"$$$OenpilotLongitudinalControl = {alpha_long}") + + #ret.radarUnavailable = False # TODO: canfd... carrot, hyundai cars have radar + + ret.radarTimeStep = 0.05 #if params.get_int("EnableRadarTracks") > 0 else 0.02 + + ret.pcmCruise = not ret.openpilotLongitudinalControl + ret.startingState = False # True # carrot + ret.vEgoStarting = 0.1 + ret.startAccel = 1.0 + ret.longitudinalActuatorDelay = 0.5 + + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [1.] + ret.longitudinalTuning.kf = 1.0 + + # *** feature detection *** + if ret.flags & HyundaiFlags.CANFD: + print(f"$$$$$ CanFD ECAN = {CAN.ECAN}") + if 0x1fa in fingerprint[CAN.ECAN]: + ret.extFlags |= HyundaiExtFlags.NAVI_CLUSTER.value + print("$$$$ NaviCluster = True") + else: + print("$$$$ NaviCluster = False") + + else: + if 1348 in fingerprint[0]: + ret.extFlags |= HyundaiExtFlags.NAVI_CLUSTER.value + print("$$$$ NaviCluster = True") + if 1157 in fingerprint[0] or 1157 in fingerprint[2]: + ret.extFlags |= HyundaiExtFlags.HAS_LFAHDA.value + print("$$$$ HasLFAHDA") + if 1007 in fingerprint[0]: + print("#### cruiseButtonAlt") + + print(f"$$$$ enableBsm = {ret.enableBsm}") + + if ret.openpilotLongitudinalControl: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.LONG.value + if ret.flags & HyundaiFlags.HYBRID: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.HYBRID_GAS.value + elif ret.flags & HyundaiFlags.EV: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.EV_GAS.value + elif ret.flags & HyundaiFlags.FCEV: + ret.safetyConfigs[-1].safetyParam |= HyundaiSafetyFlags.FCEV_GAS.value + + # Car specific configuration overrides + + if candidate == CAR.KIA_OPTIMA_G4_FL: + ret.steerActuatorDelay = 0.2 + + # Dashcam cars are missing a test route, or otherwise need validation + # TODO: Optima Hybrid 2017 uses a different SCC12 checksum + #ret.dashcamOnly = candidate in {CAR.KIA_OPTIMA_H, } + + return ret + + @staticmethod + def init(CP, can_recv, can_send): + + Params().put_int('LongitudinalPersonalityMax', 4) + + if CP.openpilotLongitudinalControl and not (CP.flags & HyundaiFlags.CANFD_CAMERA_SCC): + addr, bus = 0x7d0, 0 + if CP.flags & HyundaiFlags.CANFD_HDA2.value: + addr, bus = 0x730, CanBus(CP).ECAN + disable_ecu(can_recv, can_send, bus=bus, addr=addr, com_cont_req=b'\x28\x83\x01') + + params = Params() + if params.get_int("EnableRadarTracks") > 0 and not CP.flags & HyundaiFlags.CANFD: + result = enable_radar_tracks(CP, can_recv, can_send) + params.put_bool("EnableRadarTracksResult", result) + + # for blinkers + if CP.flags & HyundaiFlags.ENABLE_BLINKERS: + disable_ecu(can_recv, can_send, bus=CanBus(CP).ECAN, addr=0x7B1, com_cont_req=b'\x28\x83\x01') + +def enable_radar_tracks(CP, logcan, sendcan): + from opendbc.car.isotp_parallel_query import IsoTpParallelQuery + print("################ Try To Enable Radar Tracks ####################") + + ret = False + sccBus = 2 if CP.flags & HyundaiFlags.CAMERA_SCC.value else 0 + rdr_fw = None + rdr_fw_address = 0x7d0 # + try: + try: + query = IsoTpParallelQuery(sendcan, logcan, sccBus, [rdr_fw_address], [b'\x10\x07'], [b'\x50\x07']) + for addr, dat in query.get_data(0.1).items(): # pylint: disable=unused-variable + print("ecu write data by id ...") + new_config = b"\x00\x00\x00\x01\x00\x01" + #new_config = b"\x00\x00\x00\x00\x00\x01" + dataId = b'\x01\x42' + WRITE_DAT_REQUEST = b'\x2e' + WRITE_DAT_RESPONSE = b'\x68' + query = IsoTpParallelQuery(sendcan, logcan, sccBus, [rdr_fw_address], [WRITE_DAT_REQUEST+dataId+new_config], [WRITE_DAT_RESPONSE]) + result = query.get_data(0) + print("result=", result) + ret = True + break + except Exception as e: + print(f"Failed : {e}") + except Exception as e: + print("############## Failed to enable tracks" + str(e)) + print("################ END Try to enable radar tracks") + return ret diff --git a/opendbc_repo/opendbc/car/hyundai/radar_interface.py b/opendbc_repo/opendbc/car/hyundai/radar_interface.py new file mode 100644 index 0000000000..1b26d36f16 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/radar_interface.py @@ -0,0 +1,247 @@ +import math + +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import RadarInterfaceBase +from opendbc.car.hyundai.values import DBC, HyundaiFlags, HyundaiExtFlags +from openpilot.common.params import Params +from opendbc.car.hyundai.hyundaicanfd import CanBus +from openpilot.common.filter_simple import MyMovingAverage + +SCC_TID = 0 +RADAR_START_ADDR = 0x500 +RADAR_MSG_COUNT = 32 +RADAR_START_ADDR_CANFD1 = 0x210 +RADAR_MSG_COUNT1 = 16 +RADAR_START_ADDR_CANFD2 = 0x3A5 # Group 2, Group 1: 0x210 2개씩있어서 일단 보류. +RADAR_MSG_COUNT2 = 32 + +# POC for parsing corner radars: https://github.com/commaai/openpilot/pull/24221/ + +def get_radar_can_parser(CP, radar_tracks, msg_start_addr, msg_count): + if not radar_tracks: + return None + #if Bus.radar not in DBC[CP.carFingerprint]: + # return None + print("RadarInterface: RadarTracks...") + + if CP.flags & HyundaiFlags.CANFD: + CAN = CanBus(CP) + messages = [(f"RADAR_TRACK_{addr:x}", 20) for addr in range(msg_start_addr, msg_start_addr + msg_count)] + return CANParser('hyundai_canfd_radar_generated', messages, CAN.ACAN) + else: + messages = [(f"RADAR_TRACK_{addr:x}", 20) for addr in range(msg_start_addr, msg_start_addr + msg_count)] + #return CANParser(DBC[CP.carFingerprint][Bus.radar], messages, 1) + return CANParser('hyundai_kia_mando_front_radar_generated', messages, 1) + +def get_radar_can_parser_scc(CP): + CAN = CanBus(CP) + if CP.flags & HyundaiFlags.CANFD: + messages = [("SCC_CONTROL", 50)] + bus = CAN.ECAN + else: + messages = [("SCC11", 50)] + bus = CAN.ECAN + + print("$$$$$$$$ ECAN = ", CAN.ECAN) + bus = CAN.CAM if CP.flags & HyundaiFlags.CAMERA_SCC else bus + return CANParser(DBC[CP.carFingerprint][Bus.pt], messages, bus) + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + + self.canfd = True if CP.flags & HyundaiFlags.CANFD else False + self.radar_group1 = False + if self.canfd: + if CP.extFlags & HyundaiExtFlags.RADAR_GROUP1.value: + self.radar_start_addr = RADAR_START_ADDR_CANFD1 + self.radar_msg_count = RADAR_MSG_COUNT1 + self.radar_group1 = True + else: + self.radar_start_addr = RADAR_START_ADDR_CANFD2 + self.radar_msg_count = RADAR_MSG_COUNT2 + else: + self.radar_start_addr = RADAR_START_ADDR + self.radar_msg_count = RADAR_MSG_COUNT + + self.params = Params() + self.radar_tracks = self.params.get_int("EnableRadarTracks") >= 1 + self.updated_tracks = set() + self.updated_scc = set() + self.rcp_tracks = get_radar_can_parser(CP, self.radar_tracks, self.radar_start_addr, self.radar_msg_count) + self.rcp_scc = get_radar_can_parser_scc(CP) + self.trigger_msg_scc = 416 if self.canfd else 0x420 + + self.trigger_msg_tracks = self.radar_start_addr + self.radar_msg_count - 1 + self.track_id = 0 + + self.radar_off_can = CP.radarUnavailable + + self.vRel_last = 0 + self.dRel_last = 0 + + # Initialize pts + total_tracks = self.radar_msg_count * ( 2 if self.radar_group1 else 1) + for track_id in range(total_tracks): + t_id = track_id + 32 + self.pts[t_id] = structs.RadarData.RadarPoint() + self.pts[t_id].measured = False + self.pts[t_id].trackId = t_id + + self.pts[SCC_TID] = structs.RadarData.RadarPoint() + self.pts[SCC_TID].trackId = SCC_TID + + self.frame = 0 + + + def update(self, can_strings): + self.frame += 1 + if self.radar_off_can or (self.rcp_tracks is None and self.rcp_scc is None): + return super().update(None) + + if self.rcp_scc is not None: + vls_s = self.rcp_scc.update(can_strings) + self.updated_scc.update(vls_s) + if not self.radar_tracks and self.frame % 5 == 0: + self._update_scc(self.updated_scc) + self.updated_scc.clear() + ret = structs.RadarData() + if not self.rcp_scc.can_valid: + ret.errors.canError = True + ret.points = list(self.pts.values()) + return ret + if self.radar_tracks and self.rcp_tracks is not None: + vls_t = self.rcp_tracks.update(can_strings) + self.updated_tracks.update(vls_t) + if self.trigger_msg_tracks in self.updated_tracks: + self._update(self.updated_tracks) + self._update_scc(self.updated_scc) + self.updated_scc.clear() + self.updated_tracks.clear() + ret = structs.RadarData() + if not self.rcp_tracks.can_valid: + ret.errors.canError = True + ret.points = list(self.pts.values()) + return ret + + return None + + def _update(self, updated_messages): + + t_id = 32 + for addr in range(self.radar_start_addr, self.radar_start_addr + self.radar_msg_count): + + msg = self.rcp_tracks.vl[f"RADAR_TRACK_{addr:x}"] + + if self.radar_group1: + valid = msg['VALID_CNT1'] > 10 + elif self.canfd: + valid = msg['VALID_CNT'] > 10 + else: + valid = msg['STATE'] in (3, 4) + + self.pts[t_id].measured = bool(valid) + if not valid: + self.pts[t_id].dRel = 0 + self.pts[t_id].yRel = 0 + self.pts[t_id].vRel = 0 + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = float('nan') + self.pts[t_id].yvRel = 0 + elif self.radar_group1: + self.pts[t_id].dRel = msg['LONG_DIST1'] + self.pts[t_id].yRel = msg['LAT_DIST1'] + self.pts[t_id].vRel = msg['REL_SPEED1'] + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = msg['REL_ACCEL1'] + self.pts[t_id].yvRel = msg['LAT_SPEED1'] + elif self.canfd: + self.pts[t_id].dRel = msg['LONG_DIST'] + self.pts[t_id].yRel = msg['LAT_DIST'] + self.pts[t_id].vRel = msg['REL_SPEED'] + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = msg['REL_ACCEL'] + self.pts[t_id].yvRel = msg['LAT_SPEED'] + else: + azimuth = math.radians(msg['AZIMUTH']) + self.pts[t_id].dRel = math.cos(azimuth) * msg['LONG_DIST'] + self.pts[t_id].yRel = 0.5 * -math.sin(azimuth) * msg['LONG_DIST'] + self.pts[t_id].vRel = msg['REL_SPEED'] + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = msg['REL_ACCEL'] + self.pts[t_id].yvRel = 0.0 + + t_id += 1 + # radar group1은 하나의 msg에 2개의 레이더가 들어있음. + if self.radar_group1: + for addr in range(self.radar_start_addr, self.radar_start_addr + self.radar_msg_count): + msg = self.rcp_tracks.vl[f"RADAR_TRACK_{addr:x}"] + + valid = msg['VALID_CNT2'] > 10 + self.pts[t_id].measured = bool(valid) + if not valid: + self.pts[t_id].dRel = 0 + self.pts[t_id].yRel = 0 + self.pts[t_id].vRel = 0 + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = float('nan') + self.pts[t_id].yvRel = 0 + else: + self.pts[t_id].dRel = msg['LONG_DIST2'] + self.pts[t_id].yRel = msg['LAT_DIST2'] + self.pts[t_id].vRel = msg['REL_SPEED2'] + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = msg['REL_ACCEL2'] + self.pts[t_id].yvRel = msg['LAT_SPEED2'] + + t_id += 1 + + def _update_scc(self, updated_messages): + cpt = self.rcp_scc.vl + t_id = SCC_TID + if self.canfd: + dRel = cpt["SCC_CONTROL"]['ACC_ObjDist'] + vRel = cpt["SCC_CONTROL"]['ACC_ObjRelSpd'] + new_pts = abs(dRel - self.dRel_last) > 3 or abs(vRel - self.vRel_last) > 1 + vLead = vRel + self.v_ego + valid = 0 < dRel < 150 and not new_pts #cpt["SCC_CONTROL"]['OBJ_STATUS'] and dRel < 150 + self.pts[t_id].measured = bool(valid) + if not valid: + self.pts[t_id].dRel = 0 + self.pts[t_id].yRel = 0 + self.pts[t_id].vRel = 0 + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = float('nan') + self.pts[t_id].yvRel = 0 + else: + self.pts[t_id].dRel = dRel + self.pts[t_id].yRel = 0 + self.pts[t_id].vRel = vRel + self.pts[t_id].vLead = vLead + self.pts[t_id].aRel = float('nan') + self.pts[t_id].yvRel = 0 #float('nan') + else: + dRel = cpt["SCC11"]['ACC_ObjDist'] + vRel = cpt["SCC11"]['ACC_ObjRelSpd'] + new_pts = abs(dRel - self.dRel_last) > 3 or abs(vRel - self.vRel_last) > 1 + vLead = vRel + self.v_ego + valid = cpt["SCC11"]['ACC_ObjStatus'] and dRel < 150 and not new_pts + self.pts[t_id].measured = bool(valid) + if not valid: + self.pts[t_id].dRel = 0 + self.pts[t_id].yRel = 0 + self.pts[t_id].vRel = 0 + self.pts[t_id].vLead = self.pts[t_id].vRel + self.v_ego + self.pts[t_id].aRel = float('nan') + self.pts[t_id].yvRel = 0 + else: + self.pts[t_id].dRel = dRel + self.pts[t_id].yRel = -cpt["SCC11"]['ACC_ObjLatPos'] # in car frame's y axis, left is negative + self.pts[t_id].vRel = vRel + self.pts[t_id].vLead = vLead + self.pts[t_id].aRel = float('nan') + self.pts[t_id].yvRel = 0 #float('nan') + + self.dRel_last = dRel + self.vRel_last = vRel diff --git a/opendbc_repo/opendbc/car/hyundai/tests/__init__.py b/opendbc_repo/opendbc/car/hyundai/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py b/opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py new file mode 100755 index 0000000000..325b020f9b --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/tests/print_platform_codes.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +from opendbc.car.structs import CarParams +from opendbc.car.hyundai.values import PLATFORM_CODE_ECUS, get_platform_codes +from opendbc.car.hyundai.fingerprints import FW_VERSIONS + +Ecu = CarParams.Ecu + +if __name__ == "__main__": + for car_model, ecus in FW_VERSIONS.items(): + print() + print(car_model) + for ecu in sorted(ecus): + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + platform_codes = get_platform_codes(ecus[ecu]) + codes = {code for code, _ in platform_codes} + dates = {date for _, date in platform_codes if date is not None} + print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') + print(f' Codes: {codes}') + print(f' Dates: {dates}') diff --git a/opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py b/opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py new file mode 100644 index 0000000000..6aedc73d95 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/tests/test_hyundai.py @@ -0,0 +1,247 @@ +from hypothesis import settings, given, strategies as st + +import pytest + +from opendbc.car import gen_empty_fingerprint +from opendbc.car.structs import CarParams +from opendbc.car.fw_versions import build_fw_dict +from opendbc.car.hyundai.interface import CarInterface +from opendbc.car.hyundai.hyundaicanfd import CanBus +from opendbc.car.hyundai.radar_interface import RADAR_START_ADDR +from opendbc.car.hyundai.values import CAMERA_SCC_CAR, CANFD_CAR, CAN_GEARS, CAR, CHECKSUM, DATE_FW_ECUS, \ + HYBRID_CAR, EV_CAR, FW_QUERY_CONFIG, LEGACY_SAFETY_MODE_CAR, CANFD_FUZZY_WHITELIST, \ + UNSUPPORTED_LONGITUDINAL_CAR, PLATFORM_CODE_ECUS, HYUNDAI_VERSION_REQUEST_LONG, \ + HyundaiFlags, get_platform_codes, HyundaiSafetyFlags +from opendbc.car.hyundai.fingerprints import FW_VERSIONS + +Ecu = CarParams.Ecu + +# Some platforms have date codes in a different format we don't yet parse (or are missing). +# For now, assert list of expected missing date cars +NO_DATES_PLATFORMS = { + # CAN FD + CAR.KIA_SPORTAGE_5TH_GEN, + CAR.HYUNDAI_SANTA_CRUZ_1ST_GEN, + CAR.HYUNDAI_TUCSON_4TH_GEN, + # CAN + CAR.HYUNDAI_ELANTRA, + CAR.HYUNDAI_ELANTRA_GT_I30, + CAR.KIA_CEED, + CAR.KIA_FORTE, + CAR.KIA_OPTIMA_G4, + CAR.KIA_OPTIMA_G4_FL, + CAR.KIA_SORENTO, + CAR.HYUNDAI_KONA, + CAR.HYUNDAI_KONA_EV, + CAR.HYUNDAI_KONA_EV_2022, + CAR.HYUNDAI_KONA_HEV, + CAR.HYUNDAI_SONATA_LF, + CAR.HYUNDAI_VELOSTER, + CAR.HYUNDAI_KONA_2022, +} + +CANFD_EXPECTED_ECUS = {Ecu.fwdCamera, Ecu.fwdRadar} + + +class TestHyundaiFingerprint: + def test_feature_detection(self): + # LKA steering + for lka_steering in (True, False): + fingerprint = gen_empty_fingerprint() + if lka_steering: + cam_can = CanBus(None, fingerprint).CAM + fingerprint[cam_can] = [0x50, 0x110] # LKA steering messages + CP = CarInterface.get_params(CAR.KIA_EV6, fingerprint, [], False, False) + assert bool(CP.flags & HyundaiFlags.CANFD_LKA_STEERING) == lka_steering + + # radar available + for radar in (True, False): + fingerprint = gen_empty_fingerprint() + if radar: + fingerprint[1][RADAR_START_ADDR] = 8 + CP = CarInterface.get_params(CAR.HYUNDAI_SONATA, fingerprint, [], False, False) + assert CP.radarUnavailable != radar + + def test_alternate_limits(self): + # Alternate lateral control limits, for high torque cars, verify Panda safety mode flag is set + fingerprint = gen_empty_fingerprint() + for car_model in CAR: + CP = CarInterface.get_params(car_model, fingerprint, [], False, False) + assert bool(CP.flags & HyundaiFlags.ALT_LIMITS) == bool(CP.safetyConfigs[-1].safetyParam & HyundaiSafetyFlags.ALT_LIMITS) + + def test_can_features(self): + # Test no EV/HEV in any gear lists (should all use ELECT_GEAR) + assert set.union(*CAN_GEARS.values()) & (HYBRID_CAR | EV_CAR) == set() + + # Test CAN FD car not in CAN feature lists + can_specific_feature_list = set.union(*CAN_GEARS.values(), *CHECKSUM.values(), LEGACY_SAFETY_MODE_CAR, UNSUPPORTED_LONGITUDINAL_CAR, CAMERA_SCC_CAR) + for car_model in CANFD_CAR: + assert car_model not in can_specific_feature_list, "CAN FD car unexpectedly found in a CAN feature list" + + def test_hybrid_ev_sets(self): + assert HYBRID_CAR & EV_CAR == set(), "Shared cars between hybrid and EV" + assert CANFD_CAR & HYBRID_CAR == set(), "Hard coding CAN FD cars as hybrid is no longer supported" + + def test_canfd_ecu_whitelist(self): + # Asserts only expected Ecus can exist in database for CAN-FD cars + for car_model in CANFD_CAR: + ecus = {fw[0] for fw in FW_VERSIONS[car_model].keys()} + ecus_not_in_whitelist = ecus - CANFD_EXPECTED_ECUS + ecu_strings = ", ".join([f"Ecu.{ecu}" for ecu in ecus_not_in_whitelist]) + assert len(ecus_not_in_whitelist) == 0, \ + f"{car_model}: Car model has unexpected ECUs: {ecu_strings}" + + def test_blacklisted_parts(self, subtests): + # Asserts no ECUs known to be shared across platforms exist in the database. + # Tucson having Santa Cruz camera and EPS for example + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + if car_model == CAR.HYUNDAI_SANTA_CRUZ_1ST_GEN: + pytest.skip("Skip checking Santa Cruz for its parts") + + for code, _ in get_platform_codes(ecus[(Ecu.fwdCamera, 0x7c4, None)]): + if b"-" not in code: + continue + part = code.split(b"-")[1] + assert not part.startswith(b'CW'), "Car has bad part number" + + def test_correct_ecu_response_database(self, subtests): + """ + Assert standard responses for certain ECUs, since they can + respond to multiple queries with different data + """ + expected_fw_prefix = HYUNDAI_VERSION_REQUEST_LONG[1:] + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for ecu, fws in ecus.items(): + assert all(fw.startswith(expected_fw_prefix) for fw in fws), \ + f"FW from unexpected request in database: {(ecu, fws)}" + + @settings(max_examples=100) + @given(data=st.data()) + def test_platform_codes_fuzzy_fw(self, data): + """Ensure function doesn't raise an exception""" + fw_strategy = st.lists(st.binary()) + fws = data.draw(fw_strategy) + get_platform_codes(fws) + + def test_expected_platform_codes(self, subtests): + # Ensures we don't accidentally add multiple platform codes for a car unless it is intentional + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for ecu, fws in ecus.items(): + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + # Third and fourth character are usually EV/hybrid identifiers + codes = {code.split(b"-")[0][:2] for code, _ in get_platform_codes(fws)} + if car_model == CAR.HYUNDAI_PALISADE: + assert codes == {b"LX", b"ON"}, f"Car has unexpected platform codes: {car_model} {codes}" + elif car_model == CAR.HYUNDAI_KONA_EV and ecu[0] == Ecu.fwdCamera: + assert codes == {b"OE", b"OS"}, f"Car has unexpected platform codes: {car_model} {codes}" + else: + assert len(codes) == 1, f"Car has multiple platform codes: {car_model} {codes}" + + # Tests for platform codes, part numbers, and FW dates which Hyundai will use to fuzzy + # fingerprint in the absence of full FW matches: + def test_platform_code_ecus_available(self, subtests): + # TODO: add queries for these non-CAN FD cars to get EPS + no_eps_platforms = CANFD_CAR | {CAR.KIA_SORENTO, CAR.KIA_OPTIMA_G4, CAR.KIA_OPTIMA_G4_FL, CAR.KIA_OPTIMA_H, + CAR.KIA_OPTIMA_H_G4_FL, CAR.HYUNDAI_SONATA_LF, CAR.HYUNDAI_TUCSON, CAR.GENESIS_G90, CAR.GENESIS_G80, CAR.HYUNDAI_ELANTRA} + + # Asserts ECU keys essential for fuzzy fingerprinting are available on all platforms + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for platform_code_ecu in PLATFORM_CODE_ECUS: + if platform_code_ecu in (Ecu.fwdRadar, Ecu.eps) and car_model == CAR.HYUNDAI_GENESIS: + continue + if platform_code_ecu == Ecu.eps and car_model in no_eps_platforms: + continue + assert platform_code_ecu in [e[0] for e in ecus] + + def test_fw_format(self, subtests): + # Asserts: + # - every supported ECU FW version returns one platform code + # - every supported ECU FW version has a part number + # - expected parsing of ECU FW dates + + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for ecu, fws in ecus.items(): + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + codes = set() + for fw in fws: + result = get_platform_codes([fw]) + assert 1 == len(result), f"Unable to parse FW: {fw}" + codes |= result + + if ecu[0] not in DATE_FW_ECUS or car_model in NO_DATES_PLATFORMS: + assert all(date is None for _, date in codes) + else: + assert all(date is not None for _, date in codes) + + if car_model == CAR.HYUNDAI_GENESIS: + pytest.skip("No part numbers for car model") + + # Hyundai places the ECU part number in their FW versions, assert all parsable + # Some examples of valid formats: b"56310-L0010", b"56310L0010", b"56310/M6300" + assert all(b"-" in code for code, _ in codes), \ + f"FW does not have part number: {fw}" + + def test_platform_codes_spot_check(self): + # Asserts basic platform code parsing behavior for a few cases + results = get_platform_codes([b"\xf1\x00DH LKAS 1.1 -150210"]) + assert results == {(b"DH", b"150210")} + + # Some cameras and all radars do not have dates + results = get_platform_codes([b"\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 "]) + assert results == {(b"AEhe-G2000", None)} + + results = get_platform_codes([b"\xf1\x00CV1_ RDR ----- 1.00 1.01 99110-CV000 "]) + assert results == {(b"CV1-CV000", None)} + + results = get_platform_codes([ + b"\xf1\x00DH LKAS 1.1 -150210", + b"\xf1\x00AEhe SCC H-CUP 1.01 1.01 96400-G2000 ", + b"\xf1\x00CV1_ RDR ----- 1.00 1.01 99110-CV000 ", + ]) + assert results == {(b"DH", b"150210"), (b"AEhe-G2000", None), (b"CV1-CV000", None)} + + results = get_platform_codes([ + b"\xf1\x00LX2 MFC AT USA LHD 1.00 1.07 99211-S8100 220222", + b"\xf1\x00LX2 MFC AT USA LHD 1.00 1.08 99211-S8100 211103", + b"\xf1\x00ON MFC AT USA LHD 1.00 1.01 99211-S9100 190405", + b"\xf1\x00ON MFC AT USA LHD 1.00 1.03 99211-S9100 190720", + ]) + assert results == {(b"LX2-S8100", b"220222"), (b"LX2-S8100", b"211103"), + (b"ON-S9100", b"190405"), (b"ON-S9100", b"190720")} + + def test_fuzzy_excluded_platforms(self): + # Asserts a list of platforms that will not fuzzy fingerprint with platform codes due to them being shared. + # This list can be shrunk as we combine platforms and detect features + excluded_platforms = { + CAR.GENESIS_G70, # shared platform code, part number, and date + CAR.GENESIS_G70_2020, + } + excluded_platforms |= CANFD_CAR - EV_CAR - CANFD_FUZZY_WHITELIST # shared platform codes + excluded_platforms |= NO_DATES_PLATFORMS # date codes are required to match + + platforms_with_shared_codes = set() + for platform, fw_by_addr in FW_VERSIONS.items(): + car_fw = [] + for ecu, fw_versions in fw_by_addr.items(): + ecu_name, addr, sub_addr = ecu + for fw in fw_versions: + car_fw.append(CarParams.CarFw(ecu=ecu_name, fwVersion=fw, address=addr, + subAddress=0 if sub_addr is None else sub_addr)) + + CP = CarParams(carFw=car_fw) + matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, FW_VERSIONS) + if len(matches) == 1: + assert list(matches)[0] == platform + else: + platforms_with_shared_codes.add(platform) + + assert platforms_with_shared_codes == excluded_platforms diff --git a/opendbc_repo/opendbc/car/hyundai/values.py b/opendbc_repo/opendbc/car/hyundai/values.py new file mode 100644 index 0000000000..492eb67fa7 --- /dev/null +++ b/opendbc_repo/opendbc/car/hyundai/values.py @@ -0,0 +1,1011 @@ +import re +from dataclasses import dataclass, field +from enum import Enum, IntFlag + +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds, AngleSteeringLimits +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, p16 + +Ecu = CarParams.Ecu + + +class CarControllerParams: + ACCEL_MIN = -4.0 # m/s + ACCEL_MAX = 2.5 # m/s + ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( + # LKAS angle command is unlimited, but LFA is limited to 176.7 deg (but does not fault if requesting above) + 175, # deg + # stock comma's + #([0, 9, 16, 25], [1.4, 0.6, 0.4, 0.1]), + #([0, 9, 16, 25], [1.4, 0.7, 0.5, 0.1]), + ([0, 9, 16, 25], [1.8, 1.6, 1.3, 0.8]), + ([0, 9, 16, 25], [2.4, 2.0, 1.6, 1.0]), + #([0, 9, 16, 25], [1.6, 1.0, 0.6, 0.15]), + #([0, 9, 16, 25], [2.0, 1.2, 0.8, 0.28]), + # sunny's + #([0, 5, 25], [0.6, 0.4, 0.15]), + #([0, 5, 25], [1.0, 0.5, 0.26]), + ) + # Stock LFA system is seen sending 250 max, but for LKAS events it's 175 max. + # 250 can at least achieve 4 m/s^2, 80 corresponds to ~2.5 m/s^2 + ANGLE_MAX_TORQUE = 200 # The maximum amount of torque that will be allowed + ANGLE_MIN_TORQUE = 25 # equivalent to ~0.8 m/s^2 of torque (based on ANGLE_MAX_TORQUE) when overriding + ANGLE_TORQUE_UP_RATE = 8 #2 # Indicates how fast the torque ramps up after user intervention. + ANGLE_TORQUE_DOWN_RATE = 12 #4 Indicates how fast the torque ramps down during user intervention (handing off). + + def __init__(self, CP): + self.STEER_DELTA_UP = 3 + self.STEER_DELTA_DOWN = 7 + self.STEER_DRIVER_ALLOWANCE = 50 + self.STEER_DRIVER_MULTIPLIER = 2 + self.STEER_DRIVER_FACTOR = 1 + self.STEER_THRESHOLD = 150 + self.STEER_STEP = 1 # 100 Hz + + if CP.flags & HyundaiFlags.CANFD: + self.STEER_MAX = 270 + self.STEER_DRIVER_ALLOWANCE = 250 + self.STEER_DRIVER_MULTIPLIER = 2 + self.STEER_THRESHOLD = 250 + self.STEER_DELTA_UP = 2 + self.STEER_DELTA_DOWN = 3 + + # To determine the limit for your car, find the maximum value that the stock LKAS will request. + # If the max stock LKAS request is <384, add your car to this list. + elif CP.carFingerprint in (CAR.GENESIS_G80, CAR.HYUNDAI_ELANTRA, CAR.HYUNDAI_ELANTRA_GT_I30, CAR.HYUNDAI_IONIQ, + CAR.HYUNDAI_IONIQ_EV_LTD, CAR.HYUNDAI_SANTA_FE_PHEV_2022, CAR.HYUNDAI_SONATA_LF, CAR.KIA_FORTE, CAR.KIA_NIRO_PHEV, + CAR.KIA_OPTIMA_H, CAR.KIA_OPTIMA_H_G4_FL, CAR.KIA_SORENTO): + self.STEER_MAX = 255 + + elif CP.carFingerprint in (CAR.HYUNDAI_SANTA_FE_PHEV_2022): + self.STEER_MAX = 409 + # these cars have significantly more torque than most HKG; limit to 70% of max + elif CP.flags & HyundaiFlags.ALT_LIMITS: + self.STEER_MAX = 384 + self.STEER_DELTA_UP = 2 + self.STEER_DELTA_DOWN = 3 + + # Default for most HKG + else: + self.STEER_MAX = 409 + + +class HyundaiSafetyFlags(IntFlag): + EV_GAS = 1 + HYBRID_GAS = 2 + LONG = 4 + CAMERA_SCC = 8 + CANFD_LKA_STEERING = 16 + CANFD_ALT_BUTTONS = 32 + ALT_LIMITS = 64 + CANFD_LKA_STEERING_ALT = 128 + FCEV_GAS = 256 + ALT_LIMITS_2 = 512 + + +class HyundaiFlags(IntFlag): + # Dynamic Flags + CANFD_HDA2 = 1 + CANFD_ALT_BUTTONS = 2 + CANFD_ALT_GEARS = 2 ** 2 + CANFD_CAMERA_SCC = 2 ** 3 + + ALT_LIMITS = 2 ** 4 + ENABLE_BLINKERS = 2 ** 5 + CANFD_ALT_GEARS_2 = 2 ** 6 + SEND_LFA = 2 ** 7 + USE_FCA = 2 ** 8 + CANFD_HDA2_ALT_STEERING = 2 ** 9 + + # these cars use a different gas signal + HYBRID = 2 ** 10 + EV = 2 ** 11 + + # Static flags + + # If 0x500 is present on bus 1 it probably has a Mando radar outputting radar points. + # If no points are outputted by default it might be possible to turn it on using selfdrive/debug/hyundai_enable_radar_points.py + MANDO_RADAR = 2 ** 12 + CANFD = 2 ** 13 + + # The radar does SCC on these cars when HDA I, rather than the camera + RADAR_SCC = 2 ** 14 + # The camera does SCC on these cars, rather than the radar + CAMERA_SCC = CANFD_CAMERA_SCC #2 ** 15 + CHECKSUM_CRC8 = 2 ** 16 + CHECKSUM_6B = 2 ** 17 + + # these cars require a special panda safety mode due to missing counters and checksums in the messages + LEGACY = 2 ** 18 + + # these cars have not been verified to work with longitudinal yet - radar disable, sending correct messages, etc. + UNSUPPORTED_LONGITUDINAL = 2 ** 19 + + # These CAN FD cars do not accept communication control to disable the ADAS ECU, + # responds with 0x7F2822 - 'conditions not correct' + CANFD_NO_RADAR_DISABLE = 2 ** 20 + + CLUSTER_GEARS = 2 ** 21 + TCU_GEARS = 2 ** 22 + + MIN_STEER_32_MPH = 2 ** 23 + + ANGLE_CONTROL = 2 ** 24 + + FCEV = 2 ** 25 + + ALT_LIMITS_2 = 2 ** 26 + + CC_ONLY_CAR = 2 ** 31 + +class HyundaiExtFlags(IntFlag): + NAVI_CLUSTER = 2 ** 2 + HAS_LFAHDA = 2 ** 4 + CANFD_GEARS_NONE = 2 ** 6 + RADAR_GROUP1 = 2 ** 7 # 0x210 radar group 1, 0x3A5 radar group 2 + CANFD_GEARS_69 = 2 ** 10 + +class Footnote(Enum): + CANFD = CarFootnote( + "Requires a CAN FD panda kit if not using " + + "comma 3X for this CAN FD car.", + Column.MODEL) + + +@dataclass +class HyundaiCarDocs(CarDocs): + package: str = "Smart Cruise Control (SCC)" + + def init_make(self, CP: CarParams): + if CP.flags & HyundaiFlags.CANFD: + self.footnotes.insert(0, Footnote.CANFD) + + +@dataclass +class HyundaiPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: "hyundai_kia_generic"}) + + def init(self): + if self.flags & HyundaiFlags.MANDO_RADAR: + self.dbc_dict = {Bus.pt: "hyundai_kia_generic", Bus.radar: 'hyundai_kia_mando_front_radar_generated'} + + if self.flags & HyundaiFlags.MIN_STEER_32_MPH: + self.specs = self.specs.override(minSteerSpeed=32 * CV.MPH_TO_MS) + + +@dataclass +class HyundaiCanFDPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: "hyundai_canfd_generated", Bus.radar: 'hyundai_canfd_radar_generated'}) + + def init(self): + self.flags |= HyundaiFlags.CANFD + + +class CAR(Platforms): + # Hyundai + HYUNDAI_AZERA_7TH_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Azera 2023-2024", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], + CarSpecs(mass=1700, wheelbase=2.895, steerRatio=16.5), + ) + HYUNDAI_AZERA_6TH_GEN = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Azera 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=1600, wheelbase=2.885, steerRatio=14.5), + ) + HYUNDAI_AZERA_HEV_6TH_GEN = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Hyundai Azera Hybrid 2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c])), + HyundaiCarDocs("Hyundai Azera Hybrid 2020", "All", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + CarSpecs(mass=1675, wheelbase=2.885, steerRatio=14.5), + flags=HyundaiFlags.HYBRID, + ) + HYUNDAI_ELANTRA = HyundaiPlatformConfig( + [ + # TODO: 2017-18 could be Hyundai G + HyundaiCarDocs("Hyundai Elantra 2017-18", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_b])), + HyundaiCarDocs("Hyundai Elantra 2019", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_g])), + ], + # steerRatio: 14 is Stock | Settled Params Learner values are steerRatio: 15.401566348670535, stiffnessFactor settled on 1.0081302973865127 + CarSpecs(mass=1275, wheelbase=2.7, steerRatio=15.4, tireStiffnessFactor=0.385), + flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS | HyundaiFlags.MIN_STEER_32_MPH, + ) + HYUNDAI_ELANTRA_GT_I30 = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Hyundai Elantra GT 2017-20", car_parts=CarParts.common([CarHarness.hyundai_e])), + HyundaiCarDocs("Hyundai i30 2017-19", car_parts=CarParts.common([CarHarness.hyundai_e])), + ], + HYUNDAI_ELANTRA.specs, + flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS | HyundaiFlags.MIN_STEER_32_MPH, + ) + HYUNDAI_ELANTRA_2021 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Elantra 2021-23", video="https://youtu.be/_EdYQtV52-c", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=2800 * CV.LB_TO_KG, wheelbase=2.72, steerRatio=12.9, tireStiffnessFactor=0.65), + flags=HyundaiFlags.CHECKSUM_CRC8, + ) + HYUNDAI_ELANTRA_HEV_2021 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Elantra Hybrid 2021-23", video="https://youtu.be/_EdYQtV52-c", + car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=3017 * CV.LB_TO_KG, wheelbase=2.72, steerRatio=12.9, tireStiffnessFactor=0.65), + flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, + ) + HYUNDAI_GENESIS = HyundaiPlatformConfig( + [ + # TODO: check 2015 packages + HyundaiCarDocs("Hyundai Genesis 2015-16", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_j])), + HyundaiCarDocs("Genesis G80 2017", "All", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_j])), + ], + CarSpecs(mass=2060, wheelbase=3.01, steerRatio=16.5, minSteerSpeed=60 * CV.KPH_TO_MS), + flags=HyundaiFlags.CHECKSUM_6B | HyundaiFlags.LEGACY, + ) + HYUNDAI_IONIQ = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq Hybrid 2017-19", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), + flags=HyundaiFlags.HYBRID | HyundaiFlags.MIN_STEER_32_MPH, + ) + HYUNDAI_IONIQ_HEV_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq Hybrid 2020-22", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), + flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, + ) + HYUNDAI_IONIQ_EV_LTD = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq Electric 2019", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.EV | HyundaiFlags.LEGACY | HyundaiFlags.MIN_STEER_32_MPH, + ) + HYUNDAI_IONIQ_EV_2020 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq Electric 2020", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), + flags=HyundaiFlags.EV, + ) + HYUNDAI_IONIQ_PHEV_2019 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq Plug-in Hybrid 2019", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), + flags=HyundaiFlags.HYBRID | HyundaiFlags.MIN_STEER_32_MPH, + ) + HYUNDAI_IONIQ_PHEV = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq Plug-in Hybrid 2020-22", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=1490, wheelbase=2.7, steerRatio=13.73, tireStiffnessFactor=0.385), + flags=HyundaiFlags.HYBRID, + ) + HYUNDAI_KONA = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Kona 2020", min_enable_speed=6 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_b]))], + CarSpecs(mass=1275, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), + flags=HyundaiFlags.CLUSTER_GEARS | HyundaiFlags.ALT_LIMITS, + ) + HYUNDAI_KONA_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Kona 2022", car_parts=CarParts.common([CarHarness.hyundai_o]))], + CarSpecs(mass=1491, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), + flags=HyundaiFlags.CAMERA_SCC, + ) + HYUNDAI_KONA_EV = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Kona Electric 2018-21", car_parts=CarParts.common([CarHarness.hyundai_g]))], + CarSpecs(mass=1685, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), + flags=HyundaiFlags.EV | HyundaiFlags.ALT_LIMITS, + ) + HYUNDAI_KONA_EV_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Kona Electric 2022-23", car_parts=CarParts.common([CarHarness.hyundai_o]))], + CarSpecs(mass=1743, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), + flags=HyundaiFlags.CAMERA_SCC | HyundaiFlags.EV | HyundaiFlags.ALT_LIMITS, + ) + HYUNDAI_KONA_EV_2ND_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Kona Electric (with HDA II, Korea only) 2023", video="https://www.youtube.com/watch?v=U2fOCmcQ8hw", + car_parts=CarParts.common([CarHarness.hyundai_r]))], + CarSpecs(mass=1740, wheelbase=2.66, steerRatio=13.6, tireStiffnessFactor=0.385), + flags=HyundaiFlags.EV | HyundaiFlags.CANFD_NO_RADAR_DISABLE, + ) + HYUNDAI_KONA_HEV = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Kona Hybrid 2020", car_parts=CarParts.common([CarHarness.hyundai_i]))], # TODO: check packages, + CarSpecs(mass=1425, wheelbase=2.6, steerRatio=13.42, tireStiffnessFactor=0.385), + flags=HyundaiFlags.HYBRID | HyundaiFlags.ALT_LIMITS, + ) + HYUNDAI_KONA_HEV_2ND_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Kona Hybrid 2024", car_parts=CarParts.common([CarHarness.hyundai_l]))], + CarSpecs(mass=1590, wheelbase=2.66, steerRatio=13.6, tireStiffnessFactor=0.385), + flags=HyundaiFlags.HYBRID, + ) + HYUNDAI_NEXO_1ST_GEN = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Nexo 2021", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=3990 * CV.LB_TO_KG, wheelbase=2.79, steerRatio=14.19), # https://www.hyundainews.com/assets/documents/original/42768-2021NEXOProductGuideSpecs.pdf + flags=HyundaiFlags.FCEV, + ) + HYUNDAI_SANTA_FE = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Santa Fe 2019-20", "All", video="https://youtu.be/bjDR0YjM__s", + car_parts=CarParts.common([CarHarness.hyundai_d]))], + CarSpecs(mass=3982 * CV.LB_TO_KG, wheelbase=2.766, steerRatio=16.55, tireStiffnessFactor=0.82), + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8, + ) + HYUNDAI_SANTA_FE_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Santa Fe 2021-23", "All", video="https://youtu.be/VnHzSTygTS4", + car_parts=CarParts.common([CarHarness.hyundai_l]))], + HYUNDAI_SANTA_FE.specs, + flags=HyundaiFlags.CHECKSUM_CRC8, + ) + HYUNDAI_SANTA_FE_HEV_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Santa Fe Hybrid 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_l]))], + HYUNDAI_SANTA_FE.specs, + flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, + ) + HYUNDAI_SANTA_FE_PHEV_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Santa Fe Plug-in Hybrid 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_l]))], + HYUNDAI_SANTA_FE.specs, + flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, + ) + HYUNDAI_SONATA = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Sonata 2020-23", "All", video="https://www.youtube.com/watch?v=ix63r9kE3Fw", + car_parts=CarParts.common([CarHarness.hyundai_a]))], + CarSpecs(mass=1513, wheelbase=2.84, steerRatio=13.27 * 1.15, tireStiffnessFactor=0.65), # 15% higher at the center seems reasonable + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8, + ) + HYUNDAI_SONATA_LF = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Sonata 2018-19", car_parts=CarParts.common([CarHarness.hyundai_e]))], + CarSpecs(mass=1536, wheelbase=2.804, steerRatio=13.27 * 1.15), # 15% higher at the center seems reasonable + + flags=HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.TCU_GEARS, + ) + HYUNDAI_SONATA_2024 = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Sonata 2024-25", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], + CarSpecs(mass=1556, wheelbase=2.84, steerRatio=12.81), + flags=HyundaiFlags.CAMERA_SCC, + ) + HYUNDAI_STARIA_4TH_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Staria 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=2205, wheelbase=3.273, steerRatio=11.94), # https://www.hyundai.com/content/dam/hyundai/au/en/models/staria-load/premium-pip-update-2023/spec-sheet/STARIA_Load_Spec-Table_March_2023_v3.1.pdf + ) + HYUNDAI_TUCSON = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Hyundai Tucson 2021", min_enable_speed=19 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_l])), + HyundaiCarDocs("Hyundai Tucson Diesel 2019", car_parts=CarParts.common([CarHarness.hyundai_l])), + ], + CarSpecs(mass=3520 * CV.LB_TO_KG, wheelbase=2.67, steerRatio=16.1, tireStiffnessFactor=0.385), + flags=HyundaiFlags.TCU_GEARS, + ) + HYUNDAI_PALISADE = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Hyundai Palisade 2020-22", "All", video="https://youtu.be/TAnDqjF4fDY?t=456", car_parts=CarParts.common([CarHarness.hyundai_h])), + HyundaiCarDocs("Kia Telluride 2020-22", "All", car_parts=CarParts.common([CarHarness.hyundai_h])), + ], + CarSpecs(mass=1999, wheelbase=2.9, steerRatio=15.6 * 1.15, tireStiffnessFactor=0.63), + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8, + ) + HYUNDAI_VELOSTER = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Veloster 2019-20", min_enable_speed=5. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_e]))], + CarSpecs(mass=2917 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75 * 1.15, tireStiffnessFactor=0.5), + flags=HyundaiFlags.LEGACY | HyundaiFlags.TCU_GEARS, + ) + HYUNDAI_SONATA_HYBRID = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Sonata Hybrid 2020-23", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], + HYUNDAI_SONATA.specs, + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, + ) + HYUNDAI_IONIQ_5 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Hyundai Ioniq 5 (Southeast Asia and Europe only) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_q])), + HyundaiCarDocs("Hyundai Ioniq 5 (without HDA II) 2022-24", "Highway Driving Assist", car_parts=CarParts.common([CarHarness.hyundai_k])), + HyundaiCarDocs("Hyundai Ioniq 5 (with HDA II) 2022-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])), + ], + CarSpecs(mass=1948, wheelbase=2.97, steerRatio=14.26, tireStiffnessFactor=0.65), + flags=HyundaiFlags.EV, + ) + HYUNDAI_IONIQ_5_PE = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Hyundai IONIQ 5 PE (NE1)", car_parts=CarParts.common([CarHarness.hyundai_q])), + HyundaiCarDocs("Hyundai Ioniq 5 PE (with HDA II) 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])), + ], + #CarSpecs(mass=2012, wheelbase=3.0, steerRatio=14.26, tireStiffnessFactor=0.65), + CarSpecs(mass=2012, wheelbase=3.0, steerRatio=14.26, tireStiffnessFactor=1.0), + flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, + ) + HYUNDAI_IONIQ_5_N = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq 5 N (with HDA II) 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_m]))], + CarSpecs(mass=2200, wheelbase=3.00, steerRatio=12.54), + flags=HyundaiFlags.EV, + ) + HYUNDAI_IONIQ_6 = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Ioniq 6 (with HDA II) 2023-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p]))], + HYUNDAI_IONIQ_5.specs, + flags=HyundaiFlags.EV | HyundaiFlags.CANFD_NO_RADAR_DISABLE, + ) + HYUNDAI_IONIQ_9 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Hyundai Ioniq 9", "All", car_parts=CarParts.common([CarHarness.hyundai_m])), + ], + CarSpecs(mass=2505, wheelbase=3.13, steerRatio=16.02), + flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, + ) + HYUNDAI_TUCSON_4TH_GEN = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Hyundai Tucson 2022", car_parts=CarParts.common([CarHarness.hyundai_n])), + HyundaiCarDocs("Hyundai Tucson 2023-24", "All", car_parts=CarParts.common([CarHarness.hyundai_n])), + HyundaiCarDocs("Hyundai Tucson Hybrid 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_n])), + HyundaiCarDocs("Hyundai Tucson Plug-in Hybrid 2024", "All", car_parts=CarParts.common([CarHarness.hyundai_n])), + ], + CarSpecs(mass=1630, wheelbase=2.756, steerRatio=13.7, tireStiffnessFactor=0.385), + ) + HYUNDAI_SANTA_CRUZ_1ST_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Hyundai Santa Cruz 2022-24", car_parts=CarParts.common([CarHarness.hyundai_n]))], + # weight from Limited trim - the only supported trim, steering ratio according to Hyundai News https://www.hyundainews.com/assets/documents/original/48035-2022SantaCruzProductGuideSpecsv2081521.pdf + CarSpecs(mass=1870, wheelbase=3, steerRatio=14.2), + ) + HYUNDAI_CUSTIN_1ST_GEN = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Custin 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=1690, wheelbase=3.055, steerRatio=17), # mass: from https://www.hyundai-motor.com.tw/clicktobuy/custin#spec_0, steerRatio: from learner + flags=HyundaiFlags.CHECKSUM_CRC8, + ) + HYUNDAI_CASPER = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Casper 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=1060, wheelbase=2.4, steerRatio=14.3), # mass: from https://www.hyundai-motor.com.tw/clicktobuy/custin#spec_0, steerRatio: from learner + flags=HyundaiFlags.CAMERA_SCC | HyundaiFlags.CHECKSUM_CRC8, + ) + + HYUNDAI_CASPER_EV = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Casper EV 2024", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=1355, wheelbase=2.58, steerRatio=14.3), # mass: from https://www.hyundai-motor.com.tw/clicktobuy/custin#spec_0, steerRatio: from learner + flags=HyundaiFlags.CAMERA_SCC | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.EV + ) + HYUNDAI_PORTER_II_EV = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Porter II EV 2024", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=1970, wheelbase=2.64, steerRatio=14.5), + flags=HyundaiFlags.EV | HyundaiFlags.CC_ONLY_CAR, + ) + HYUNDAI_SANTAFE_MX5 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Hyundai SANTAFE (MX5)", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + CarSpecs(mass=1910, wheelbase=2.76, steerRatio=15.8, tireStiffnessFactor=0.82), + flags=HyundaiFlags.ANGLE_CONTROL, + ) + HYUNDAI_SANTAFE_MX5_HEV = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Hyundai SANTAFE HYBRID (MX5)", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + HYUNDAI_SANTAFE_MX5.specs, + flags=HyundaiFlags.ANGLE_CONTROL, + ) + + + # Kia + KIA_FORTE = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Kia Forte 2019-21", min_enable_speed=6 * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_g])), + HyundaiCarDocs("Kia Forte 2022-23", car_parts=CarParts.common([CarHarness.hyundai_e])), + ], + CarSpecs(mass=2878 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5) + ) + KIA_K5_2021 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K5 2021-24", car_parts=CarParts.common([CarHarness.hyundai_a]))], + CarSpecs(mass=3381 * CV.LB_TO_KG, wheelbase=2.85, steerRatio=13.27, tireStiffnessFactor=0.5), # 2021 Kia K5 Steering Ratio (all trims) + flags=HyundaiFlags.CHECKSUM_CRC8, + ) + KIA_K5_HEV_2020 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K5 Hybrid 2020-22", car_parts=CarParts.common([CarHarness.hyundai_a]))], + KIA_K5_2021.specs, + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.HYBRID, + ) + KIA_K5_DL3_24 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("KIA K5 2024 (DL3)", car_parts=CarParts.common([CarHarness.hyundai_k])), + HyundaiCarDocs("Kia K5 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + CarSpecs(mass=1553, wheelbase=2.85, steerRatio=13.27, tireStiffnessFactor=0.5), + ) + KIA_K5_DL3_24_HEV = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("KIA K5 HYBRID 2024 (DL3)", car_parts=CarParts.common([CarHarness.hyundai_k])), + HyundaiCarDocs("Kia K5 Hybrid 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + CarSpecs(mass=1553, wheelbase=2.85, steerRatio=13.27, tireStiffnessFactor=0.5), + ) + KIA_K8_HEV_1ST_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Kia K8 Hybrid (with HDA II) 2023", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q]))], + # mass: https://carprices.ae/brands/kia/2023/k8/1.6-turbo-hybrid, steerRatio: guesstimate from K5 platform + CarSpecs(mass=1630, wheelbase=2.895, steerRatio=13.27) + ) + KIA_NIRO_EV = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Kia Niro EV 2019", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_h])), + HyundaiCarDocs("Kia Niro EV 2020", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_f])), + HyundaiCarDocs("Kia Niro EV 2021", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_c])), + HyundaiCarDocs("Kia Niro EV 2022", "All", video="https://www.youtube.com/watch?v=lT7zcG6ZpGo", car_parts=CarParts.common([CarHarness.hyundai_h])), + ], + CarSpecs(mass=3543 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=13.6, tireStiffnessFactor=0.385), # average of all the cars + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.EV, + ) + KIA_NIRO_EV_2ND_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Kia Niro EV 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], + KIA_NIRO_EV.specs, + flags=HyundaiFlags.EV, + ) + KIA_NIRO_PHEV = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Kia Niro Hybrid 2018", "All", min_enable_speed=10. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_c])), + HyundaiCarDocs("Kia Niro Plug-in Hybrid 2018-19", "All", min_enable_speed=10. * CV.MPH_TO_MS, car_parts=CarParts.common([CarHarness.hyundai_c])), + HyundaiCarDocs("Kia Niro Plug-in Hybrid 2020", car_parts=CarParts.common([CarHarness.hyundai_d])), + ], + KIA_NIRO_EV.specs, + flags=HyundaiFlags.MANDO_RADAR | HyundaiFlags.HYBRID | HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.MIN_STEER_32_MPH, + ) + KIA_NIRO_PHEV_2022 = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Kia Niro Plug-in Hybrid 2021", car_parts=CarParts.common([CarHarness.hyundai_d])), + HyundaiCarDocs("Kia Niro Plug-in Hybrid 2022", car_parts=CarParts.common([CarHarness.hyundai_f])), + ], + KIA_NIRO_EV.specs, + flags=HyundaiFlags.HYBRID | HyundaiFlags.MANDO_RADAR, + ) + KIA_NIRO_HEV_2021 = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Kia Niro Hybrid 2021", car_parts=CarParts.common([CarHarness.hyundai_d])), + HyundaiCarDocs("Kia Niro Hybrid 2022", car_parts=CarParts.common([CarHarness.hyundai_f])), + ], + KIA_NIRO_EV.specs, + flags=HyundaiFlags.HYBRID, + ) + KIA_NIRO_HEV_2ND_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Kia Niro Hybrid 2023", car_parts=CarParts.common([CarHarness.hyundai_a]))], + KIA_NIRO_EV.specs, + ) + KIA_OPTIMA_G4 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Optima 2017", "Advanced Smart Cruise Control", + car_parts=CarParts.common([CarHarness.hyundai_b]))], # TODO: may support 2016, 2018 + CarSpecs(mass=3558 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), + flags=HyundaiFlags.LEGACY | HyundaiFlags.TCU_GEARS | HyundaiFlags.MIN_STEER_32_MPH, + ) + KIA_OPTIMA_G4_FL = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Optima 2019-20", car_parts=CarParts.common([CarHarness.hyundai_g]))], + CarSpecs(mass=3558 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), + flags=HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.TCU_GEARS, + ) + # TODO: may support adjacent years. may have a non-zero minimum steering speed + KIA_OPTIMA_H = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Optima Hybrid 2017", "Advanced Smart Cruise Control", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=3758 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), + flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, + ) + KIA_OPTIMA_H_G4_FL = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Optima Hybrid 2019", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=3558 * CV.LB_TO_KG, wheelbase=2.8, steerRatio=13.75, tireStiffnessFactor=0.5), + flags=HyundaiFlags.HYBRID | HyundaiFlags.UNSUPPORTED_LONGITUDINAL, + ) + KIA_SELTOS = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Seltos 2021", car_parts=CarParts.common([CarHarness.hyundai_a]))], + CarSpecs(mass=1337, wheelbase=2.63, steerRatio=14.56), + flags=HyundaiFlags.CHECKSUM_CRC8, + ) + KIA_SPORTAGE_5TH_GEN = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Kia Sportage 2023-24", car_parts=CarParts.common([CarHarness.hyundai_n])), + HyundaiCarDocs("Kia Sportage Hybrid 2023", car_parts=CarParts.common([CarHarness.hyundai_n])), + ], + # weight from SX and above trims, average of FWD and AWD version, steering ratio according to Kia News https://www.kiamedia.com/us/en/models/sportage/2023/specifications + CarSpecs(mass=1725, wheelbase=2.756, steerRatio=13.6), + ) + KIA_SORENTO = HyundaiPlatformConfig( + [ + HyundaiCarDocs("Kia Sorento 2018", "Advanced Smart Cruise Control & LKAS", video="https://www.youtube.com/watch?v=Fkh3s6WHJz8", + car_parts=CarParts.common([CarHarness.hyundai_e])), + HyundaiCarDocs("Kia Sorento 2019", video="https://www.youtube.com/watch?v=Fkh3s6WHJz8", car_parts=CarParts.common([CarHarness.hyundai_e])), + ], + CarSpecs(mass=1985, wheelbase=2.78, steerRatio=14.4 * 1.1), # 10% higher at the center seems reasonable + flags=HyundaiFlags.CHECKSUM_6B | HyundaiFlags.UNSUPPORTED_LONGITUDINAL, + ) + KIA_SORENTO_4TH_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Kia Sorento 2021-23", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=3957 * CV.LB_TO_KG, wheelbase=2.81, steerRatio=13.5), # average of the platforms + flags=HyundaiFlags.RADAR_SCC, + ) + KIA_SORENTO_HEV_4TH_GEN = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Kia Sorento Hybrid 2021-23", "All", car_parts=CarParts.common([CarHarness.hyundai_a])), + HyundaiCarDocs("Kia Sorento Plug-in Hybrid 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_a])), + ], + CarSpecs(mass=4395 * CV.LB_TO_KG, wheelbase=2.81, steerRatio=13.5), # average of the platforms + flags=HyundaiFlags.RADAR_SCC, + ) + KIA_STINGER = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Stinger 2018-20", video="https://www.youtube.com/watch?v=MJ94qoofYw0", + car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1825, wheelbase=2.78, steerRatio=14.4 * 1.15) # 15% higher at the center seems reasonable + ) + KIA_STINGER_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Stinger 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + KIA_STINGER.specs, + ) + KIA_CEED = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Ceed 2019-21", car_parts=CarParts.common([CarHarness.hyundai_e]))], + CarSpecs(mass=1450, wheelbase=2.65, steerRatio=13.75, tireStiffnessFactor=0.5), + flags=HyundaiFlags.LEGACY, + ) + KIA_EV6 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Kia EV6 (Southeast Asia only) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_p])), + HyundaiCarDocs("Kia EV6 (without HDA II) 2022-24", "Highway Driving Assist", car_parts=CarParts.common([CarHarness.hyundai_l])), + HyundaiCarDocs("Kia EV6 (with HDA II) 2022-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p])) + ], + CarSpecs(mass=2055, wheelbase=2.9, steerRatio=16, tireStiffnessFactor=0.65), + flags=HyundaiFlags.EV, + ) + KIA_EV6_PE = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Kia EV6 PE (CV1)", car_parts=CarParts.common([CarHarness.hyundai_p])), + HyundaiCarDocs("Kia EV6 PE (with HDA II) 2025", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p])) + ], + CarSpecs(mass=2055, wheelbase=2.9, steerRatio=16, tireStiffnessFactor=0.65), + flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, + ) + KIA_CARNIVAL_4TH_GEN = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Kia Carnival 2022-24", car_parts=CarParts.common([CarHarness.hyundai_a])), + HyundaiCarDocs("Kia Carnival (China only) 2023", car_parts=CarParts.common([CarHarness.hyundai_k])) + ], + CarSpecs(mass=2087, wheelbase=3.09, steerRatio=14.23), + flags=HyundaiFlags.RADAR_SCC, + ) + + # Genesis + GENESIS_GV60_EV_1ST_GEN = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Genesis GV60 (Advanced Trim) 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_a])), + HyundaiCarDocs("Genesis GV60 (Performance Trim) 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + CarSpecs(mass=2205, wheelbase=2.9, steerRatio=17.6), + flags=HyundaiFlags.EV, + ) + GENESIS_G70 = HyundaiPlatformConfig( + [HyundaiCarDocs("Genesis G70 2018", "All", car_parts=CarParts.common([CarHarness.hyundai_f]))], + CarSpecs(mass=1640, wheelbase=2.84, steerRatio=13.56), + flags=HyundaiFlags.LEGACY, + ) + GENESIS_G70_2020 = HyundaiPlatformConfig( + [ + # TODO: 2021 MY harness is unknown + HyundaiCarDocs("Genesis G70 2019-21", "All", car_parts=CarParts.common([CarHarness.hyundai_f])), + # TODO: From 3.3T Sport Advanced 2022 & Prestige 2023 Trim, 2.0T is unknown + HyundaiCarDocs("Genesis G70 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_l])), + ], + GENESIS_G70.specs, + flags=HyundaiFlags.MANDO_RADAR, + ) + GENESIS_GV70_1ST_GEN = HyundaiCanFDPlatformConfig( + [ + # TODO: Hyundai P is likely the correct harness for HDA II for 2.5T (unsupported due to missing ADAS ECU, is that the radar?) + HyundaiCarDocs("Genesis GV70 (2.5T Trim, without HDA II) 2022-24", "All", car_parts=CarParts.common([CarHarness.hyundai_l])), + HyundaiCarDocs("Genesis GV70 (3.5T Trim, without HDA II) 2022-23", "All", car_parts=CarParts.common([CarHarness.hyundai_m])), + ], + CarSpecs(mass=1950, wheelbase=2.87, steerRatio=14.6), + flags=HyundaiFlags.RADAR_SCC, + ) + GENESIS_GV70_ELECTRIFIED_1ST_GEN = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Genesis GV70 Electrified (Australia Only) 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_q])), + HyundaiCarDocs("Genesis GV70 Electrified (with HDA II) 2023-24", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_q])), + ], + CarSpecs(mass=2260, wheelbase=2.87, steerRatio=17.1), + flags=HyundaiFlags.EV, + ) + GENESIS_G80 = HyundaiPlatformConfig( + [HyundaiCarDocs("Genesis G80 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=2060, wheelbase=3.01, steerRatio=16.5), + flags=HyundaiFlags.LEGACY, + ) + GENESIS_G80_2ND_GEN_FL = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Genesis G80 (2.5T Advanced Trim, with HDA II) 2024", "Highway Driving Assist II", car_parts=CarParts.common([CarHarness.hyundai_p]))], + CarSpecs(mass=2060, wheelbase=3.00, steerRatio=14.0), + ) + GENESIS_G90 = HyundaiPlatformConfig( + [HyundaiCarDocs("Genesis G90 2017-20", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=2200, wheelbase=3.15, steerRatio=12.069), + ) + GENESIS_GV80 = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Genesis GV80 2023", "All", car_parts=CarParts.common([CarHarness.hyundai_m]))], + CarSpecs(mass=2258, wheelbase=2.95, steerRatio=14.14), + flags=HyundaiFlags.RADAR_SCC, + ) + GENESIS_GV70_EV_1ST_GEN = HyundaiCanFDPlatformConfig( + [HyundaiCarDocs("Genesis GV70 EV 2020-2023", "All", car_parts=CarParts.common([CarHarness.hyundai_m]))], + CarSpecs(mass=2230, wheelbase=2.87, steerRatio=14.6), + flags=HyundaiFlags.EV | HyundaiFlags.RADAR_SCC, + ) + HYUNDAI_GRANDEUR_IG = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Grandeur 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1570, wheelbase=2.845, steerRatio=16., tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS, + ) + HYUNDAI_GRANDEUR_IG_HEV = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Grandeur HEV 2018-19", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1570, wheelbase=2.845, steerRatio=16., tireStiffnessFactor=0.7), + flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, + ) + GENESIS_EQ900 = HyundaiPlatformConfig( + [HyundaiCarDocs("Genesis EQ900 2017", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=2200, wheelbase=3.15, steerRatio=16., tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY, + ) + GENESIS_EQ900_L = HyundaiPlatformConfig( + [HyundaiCarDocs("Genesis EQ900 LIMOUSINE", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=2290, wheelbase=3.45, steerRatio=16., tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY, + ) + GENESIS_G90_2019 = HyundaiPlatformConfig( + [HyundaiCarDocs("Genesis G90 2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=2150, wheelbase=3.16, steerRatio=16., tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY, + ) + HYUNDAI_NEXO = HyundaiPlatformConfig( + [HyundaiCarDocs("Hyundai Nexo", "All", car_parts=CarParts.common([CarHarness.hyundai_a]))], + CarSpecs(mass=1885, wheelbase=2.79, steerRatio=15.3, tireStiffnessFactor=0.385), + flags=HyundaiFlags.EV, + ) + KIA_MOHAVE = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Mohave 2019", "All", car_parts=CarParts.common([CarHarness.hyundai_k]))], + CarSpecs(mass=2285, wheelbase=2.895, steerRatio=16., tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY, + ) + KIA_K5 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K5 2019 & 2016", "All", car_parts=CarParts.common([CarHarness.hyundai_b]))], + CarSpecs(mass=1515, wheelbase=2.80, steerRatio=15.5, tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY | HyundaiFlags.TCU_GEARS, + ) + KIA_K5_HEV = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K5 Hybrid 2017", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1705, wheelbase=2.80, steerRatio=15.5, tireStiffnessFactor=0.7), + flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, + ) + KIA_K5_HEV_2022 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K5 Hybrid 2022", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1515, wheelbase=2.85, steerRatio=15.5, tireStiffnessFactor=0.7), + flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, + ) + KIA_K7 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K7 2016-2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1850, wheelbase=2.855, steerRatio=15.5, tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY | HyundaiFlags.CLUSTER_GEARS, + ) + KIA_K7_HEV = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K7 Hybrid 2016-2019", "All", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1515, wheelbase=2.855, steerRatio=15.5, tireStiffnessFactor=0.7), + flags=HyundaiFlags.HYBRID | HyundaiFlags.LEGACY, + ) + KIA_K9 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia K9 2016-2019", "All", car_parts=CarParts.common([CarHarness.hyundai_h]))], + CarSpecs(mass=2075, wheelbase=3.15, steerRatio=14.5, tireStiffnessFactor=0.7), + flags=HyundaiFlags.LEGACY, + ) + KIA_EV_SK3 = HyundaiPlatformConfig( + [HyundaiCarDocs("Kia Soul EV 2019", car_parts=CarParts.common([CarHarness.hyundai_c]))], + CarSpecs(mass=1695, wheelbase=2.6, steerRatio=13.75), + flags=HyundaiFlags.CHECKSUM_CRC8 | HyundaiFlags.EV, + ) + KIA_EV9 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("Kia EV9 (MV)", car_parts=CarParts.common([CarHarness.hyundai_k])), + ], + CarSpecs(mass=2625, wheelbase=3.1, steerRatio=16.02), + flags=HyundaiFlags.EV | HyundaiFlags.ANGLE_CONTROL, + ) + KIA_EV3 = HyundaiCanFDPlatformConfig( + [ + HyundaiCarDocs("KIA EV3 (SV1)", car_parts=CarParts.common([CarHarness.hyundai_n])), + ], + CarSpecs(mass=2055, wheelbase=2.90, steerRatio=16.0, tireStiffnessFactor=0.65), + flags=HyundaiFlags.EV, + ) + +class Buttons: + NONE = 0 + RES_ACCEL = 1 + SET_DECEL = 2 + GAP_DIST = 3 + CANCEL = 4 # on newer models, this is a pause/resume button + LFA_BUTTON = 5 + + +def get_platform_codes(fw_versions: list[bytes]) -> set[tuple[bytes, bytes | None]]: + # Returns unique, platform-specific identification codes for a set of versions + codes = set() # (code-Optional[part], date) + for fw in fw_versions: + code_match = PLATFORM_CODE_FW_PATTERN.search(fw) + part_match = PART_NUMBER_FW_PATTERN.search(fw) + date_match = DATE_FW_PATTERN.search(fw) + if code_match is not None: + code: bytes = code_match.group() + part = part_match.group() if part_match else None + date = date_match.group() if date_match else None + if part is not None: + # part number starts with generic ECU part type, add what is specific to platform + code += b"-" + part[-5:] + + codes.add((code, date)) + return codes + + +def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: + # Non-electric CAN FD platforms often do not have platform code specifiers needed + # to distinguish between hybrid and ICE. All EVs so far are either exclusively + # electric or specify electric in the platform code. + fuzzy_platform_blacklist = {str(c) for c in (CANFD_CAR - EV_CAR - CANFD_FUZZY_WHITELIST)} + candidates: set[str] = set() + + for candidate, fws in offline_fw_versions.items(): + # Keep track of ECUs which pass all checks (platform codes, within date range) + valid_found_ecus = set() + valid_expected_ecus = {ecu[1:] for ecu in fws if ecu[0] in PLATFORM_CODE_ECUS} + for ecu, expected_versions in fws.items(): + addr = ecu[1:] + # Only check ECUs expected to have platform codes + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + # Expected platform codes & dates + codes = get_platform_codes(expected_versions) + expected_platform_codes = {code for code, _ in codes} + expected_dates = {date for _, date in codes if date is not None} + + # Found platform codes & dates + codes = get_platform_codes(live_fw_versions.get(addr, set())) + found_platform_codes = {code for code, _ in codes} + found_dates = {date for _, date in codes if date is not None} + + # Check platform code + part number matches for any found versions + if not any(found_platform_code in expected_platform_codes for found_platform_code in found_platform_codes): + break + + if ecu[0] in DATE_FW_ECUS: + # If ECU can have a FW date, require it to exist + # (this excludes candidates in the database without dates) + if not len(expected_dates) or not len(found_dates): + break + + # Check any date within range in the database, format is %y%m%d + if not any(min(expected_dates) <= found_date <= max(expected_dates) for found_date in found_dates): + break + + valid_found_ecus.add(addr) + + # If all live ECUs pass all checks for candidate, add it as a match + if valid_expected_ecus.issubset(valid_found_ecus): + candidates.add(candidate) + + return candidates - fuzzy_platform_blacklist + + +HYUNDAI_VERSION_REQUEST_LONG = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(0xf100) # Long description + +HYUNDAI_VERSION_REQUEST_ALT = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(0xf110) # Alt long description + +HYUNDAI_ECU_MANUFACTURING_DATE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.ECU_MANUFACTURING_DATE) + +HYUNDAI_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + +# Regex patterns for parsing platform code, FW date, and part number from FW versions +PLATFORM_CODE_FW_PATTERN = re.compile(b'((?<=' + HYUNDAI_VERSION_REQUEST_LONG[1:] + + b')[A-Z]{2}[A-Za-z0-9]{0,2})') +DATE_FW_PATTERN = re.compile(b'(?<=[ -])([0-9]{6}$)') +PART_NUMBER_FW_PATTERN = re.compile(b'(?<=[0-9][.,][0-9]{2} )([0-9]{5}[-/]?[A-Z][A-Z0-9]{3}[0-9])') + +# We've seen both ICE and hybrid for these platforms, and they have hybrid descriptors (e.g. MQ4 vs MQ4H) +CANFD_FUZZY_WHITELIST = {CAR.KIA_SORENTO_4TH_GEN, CAR.KIA_SORENTO_HEV_4TH_GEN, CAR.KIA_K8_HEV_1ST_GEN, + # TODO: the hybrid variant is not out yet + CAR.KIA_CARNIVAL_4TH_GEN} + +# List of ECUs expected to have platform codes, camera and radar should exist on all cars +# TODO: use abs, it has the platform code and part number on many platforms +PLATFORM_CODE_ECUS = [Ecu.fwdRadar, Ecu.fwdCamera, Ecu.eps] +# So far we've only seen dates in fwdCamera +# TODO: there are date codes in the ABS firmware versions in hex +DATE_FW_ECUS = [Ecu.fwdCamera] + +# Note: an ECU on CAN FD cars may sometimes send 0x30080aaaaaaaaaaa (flow control continue) while we +# are attempting to query ECUs. This currently does not seem to affect fingerprinting from the camera +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + # TODO: add back whitelists + # CAN queries (OBD-II port) + Request( + [HYUNDAI_VERSION_REQUEST_LONG], + [HYUNDAI_VERSION_RESPONSE], + ), + + # CAN & CAN-FD queries (from camera) + Request( + [HYUNDAI_VERSION_REQUEST_LONG], + [HYUNDAI_VERSION_RESPONSE], + bus=0, + auxiliary=True, + ), + Request( + [HYUNDAI_VERSION_REQUEST_LONG], + [HYUNDAI_VERSION_RESPONSE], + bus=1, + auxiliary=True, + obd_multiplexing=False, + ), + + # CAN & CAN FD query to understand the three digit date code + # LKA steering cars usually use 6 digit date codes, so skip bus 1 + Request( + [HYUNDAI_ECU_MANUFACTURING_DATE], + [HYUNDAI_VERSION_RESPONSE], + bus=0, + auxiliary=True, + logging=True, + ), + + # CAN-FD alt request logging queries for hvac and parkingAdas + Request( + [HYUNDAI_VERSION_REQUEST_ALT], + [HYUNDAI_VERSION_RESPONSE], + bus=0, + auxiliary=True, + logging=True, + ), + Request( + [HYUNDAI_VERSION_REQUEST_ALT], + [HYUNDAI_VERSION_RESPONSE], + bus=1, + auxiliary=True, + logging=True, + obd_multiplexing=False, + ), + ], + # We lose these ECUs without the comma power on these cars. + # Note that we still attempt to match with them when they are present + non_essential_ecus={ + Ecu.abs: [CAR.HYUNDAI_PALISADE, CAR.HYUNDAI_SONATA, CAR.HYUNDAI_SANTA_FE_2022, CAR.KIA_K5_2021, CAR.HYUNDAI_ELANTRA_2021, + CAR.HYUNDAI_SANTA_FE, CAR.HYUNDAI_KONA_EV_2022, CAR.HYUNDAI_KONA_EV, CAR.HYUNDAI_CUSTIN_1ST_GEN, CAR.KIA_SORENTO, + CAR.KIA_CEED, CAR.KIA_SELTOS], + }, + extra_ecus=[ + (Ecu.adas, 0x730, None), # ADAS Driving ECU on platforms with LKA steering + (Ecu.parkingAdas, 0x7b1, None), # ADAS Parking ECU (may exist on all platforms) + (Ecu.hvac, 0x7b3, None), # HVAC Control Assembly + (Ecu.cornerRadar, 0x7b7, None), + (Ecu.combinationMeter, 0x7c6, None), # CAN FD Instrument cluster + ], + # Custom fuzzy fingerprinting function using platform codes, part numbers + FW dates: + match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, +) + +CHECKSUM = { + "crc8": CAR.with_flags(HyundaiFlags.CHECKSUM_CRC8), + "6B": CAR.with_flags(HyundaiFlags.CHECKSUM_6B), +} + +CAN_GEARS = { + # which message has the gear. hybrid and EV use ELECT_GEAR + "use_cluster_gears": CAR.with_flags(HyundaiFlags.CLUSTER_GEARS), + "use_tcu_gears": CAR.with_flags(HyundaiFlags.TCU_GEARS), + "send_mdps12": {CAR.GENESIS_G90, CAR.GENESIS_G90_2019, CAR.KIA_K9, CAR.KIA_K7}, +} + +CANFD_CAR = CAR.with_flags(HyundaiFlags.CANFD) +CANFD_RADAR_SCC_CAR = CAR.with_flags(HyundaiFlags.RADAR_SCC) # TODO: merge with UNSUPPORTED_LONGITUDINAL_CAR + +CANFD_UNSUPPORTED_LONGITUDINAL_CAR = CAR.with_flags(HyundaiFlags.CANFD_NO_RADAR_DISABLE) # TODO: merge with UNSUPPORTED_LONGITUDINAL_CAR + +CAMERA_SCC_CAR = CAR.with_flags(HyundaiFlags.CAMERA_SCC) + +HYBRID_CAR = CAR.with_flags(HyundaiFlags.HYBRID) + +EV_CAR = CAR.with_flags(HyundaiFlags.EV) + +LEGACY_SAFETY_MODE_CAR = CAR.with_flags(HyundaiFlags.LEGACY) + +# TODO: another PR with (HyundaiFlags.LEGACY | HyundaiFlags.UNSUPPORTED_LONGITUDINAL | HyundaiFlags.CAMERA_SCC | +# HyundaiFlags.CANFD_RADAR_SCC | HyundaiFlags.CANFD_NO_RADAR_DISABLE | ) +UNSUPPORTED_LONGITUDINAL_CAR = CAR.with_flags(HyundaiFlags.LEGACY) | CAR.with_flags(HyundaiFlags.UNSUPPORTED_LONGITUDINAL) + +DBC = CAR.create_dbc_map() + +if __name__ == "__main__": + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) diff --git a/opendbc_repo/opendbc/car/include/c++.capnp b/opendbc_repo/opendbc/car/include/c++.capnp new file mode 100644 index 0000000000..2bda547179 --- /dev/null +++ b/opendbc_repo/opendbc/car/include/c++.capnp @@ -0,0 +1,26 @@ +# Copyright (c) 2013-2014 Sandstorm Development Group, Inc. and contributors +# Licensed under the MIT License: +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. + +@0xbdf87d7bb8304e81; +$namespace("capnp::annotations"); + +annotation namespace(file): Text; +annotation name(field, enumerant, struct, enum, interface, method, param, group, union): Text; diff --git a/opendbc_repo/opendbc/car/interfaces.py b/opendbc_repo/opendbc/car/interfaces.py new file mode 100644 index 0000000000..bf49e843d8 --- /dev/null +++ b/opendbc_repo/opendbc/car/interfaces.py @@ -0,0 +1,762 @@ +from collections import deque +import json +import os +import numpy as np +import time +import tomllib +import math +from abc import abstractmethod, ABC +from difflib import SequenceMatcher +from enum import StrEnum +from typing import Any, NamedTuple +from collections.abc import Callable +from functools import cache + +from opendbc.car import DT_CTRL, apply_hysteresis, gen_empty_fingerprint, scale_rot_inertia, scale_tire_stiffness, get_friction, STD_CARGO_KG +from opendbc.car import structs +from opendbc.car.can_definitions import CanData, CanRecvCallable, CanSendCallable +from opendbc.car.common.basedir import BASEDIR +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.common.simple_kalman import KF1D, get_kalman_gain +from opendbc.car.values import PLATFORMS +from opendbc.can import CANParser + +from openpilot.common.params import Params +from openpilot.common.filter_simple import FirstOrderFilter + +GearShifter = structs.CarState.GearShifter +ButtonType = structs.CarState.ButtonEvent.Type + +V_CRUISE_MAX = 145 +MAX_CTRL_SPEED = (V_CRUISE_MAX + 4) * CV.KPH_TO_MS +ACCEL_MAX = 2.5 +ACCEL_MIN = -4.0 #3.5 +FRICTION_THRESHOLD = 0.3 + +NEURAL_PARAMS_PATH = os.path.join(BASEDIR, 'torque_data/neural_ff_weights.json') +TORQUE_NN_MODEL_PATH = os.path.join(BASEDIR, 'torque_data/lat_models') + +TORQUE_PARAMS_PATH = os.path.join(BASEDIR, 'torque_data/params.toml') +TORQUE_OVERRIDE_PATH = os.path.join(BASEDIR, 'torque_data/override.toml') +TORQUE_SUBSTITUTE_PATH = os.path.join(BASEDIR, 'torque_data/substitute.toml') + +GEAR_SHIFTER_MAP: dict[str, structs.CarState.GearShifter] = { + 'P': GearShifter.park, 'PARK': GearShifter.park, + 'R': GearShifter.reverse, 'REVERSE': GearShifter.reverse, + 'N': GearShifter.neutral, 'NEUTRAL': GearShifter.neutral, + 'E': GearShifter.eco, 'ECO': GearShifter.eco, + 'T': GearShifter.manumatic, 'MANUAL': GearShifter.manumatic, + 'D': GearShifter.drive, 'DRIVE': GearShifter.drive, + 'S': GearShifter.sport, 'SPORT': GearShifter.sport, + 'L': GearShifter.low, 'LOW': GearShifter.low, + 'B': GearShifter.brake, 'BRAKE': GearShifter.brake, +} + +def similarity(s1: str, s2: str) -> float: + return SequenceMatcher(None, s1, s2).ratio() + +class LatControlInputs(NamedTuple): + lateral_acceleration: float + roll_compensation: float + vego: float + aego: float + + +TorqueFromLateralAccelCallbackType = Callable[[LatControlInputs, structs.CarParams.LateralTorqueTuning, float, float, bool, bool], float] + + +@cache +def get_torque_params(): + with open(TORQUE_SUBSTITUTE_PATH, 'rb') as f: + sub = tomllib.load(f) + with open(TORQUE_PARAMS_PATH, 'rb') as f: + params = tomllib.load(f) + with open(TORQUE_OVERRIDE_PATH, 'rb') as f: + override = tomllib.load(f) + + torque_params = {} + for candidate in (sub.keys() | params.keys() | override.keys()) - {'legend'}: + if sum([candidate in x for x in [sub, params, override]]) > 1: + raise RuntimeError(f'{candidate} is defined twice in torque config') + + sub_candidate = sub.get(candidate, candidate) + + if sub_candidate in override: + out = override[sub_candidate] + elif sub_candidate in params: + out = params[sub_candidate] + else: + raise NotImplementedError(f"Did not find torque params for {sub_candidate}") + + torque_params[sub_candidate] = {key: out[i] for i, key in enumerate(params['legend'])} + if candidate in sub: + torque_params[candidate] = torque_params[sub_candidate] + + return torque_params + +# Twilsonco's Lateral Neural Network Feedforward +class FluxModel: + # dict used to rename activation functions whose names aren't valid python identifiers + activation_function_names = {'σ': 'sigmoid'} + def __init__(self, params_file, zero_bias=False): + with open(params_file, "r") as f: + params = json.load(f) + + self.input_size = params["input_size"] + self.output_size = params["output_size"] + self.input_mean = np.array(params["input_mean"], dtype=np.float32).T + self.input_std = np.array(params["input_std"], dtype=np.float32).T + self.layers = [] + self.friction_override = False + + for layer_params in params["layers"]: + W = np.array(layer_params[next(key for key in layer_params.keys() if key.endswith('_W'))], dtype=np.float32).T + b = np.array(layer_params[next(key for key in layer_params.keys() if key.endswith('_b'))], dtype=np.float32).T + if zero_bias: + b = np.zeros_like(b) + activation = layer_params["activation"] + for k, v in self.activation_function_names.items(): + activation = activation.replace(k, v) + self.layers.append((W, b, activation)) + + self.validate_layers() + self.check_for_friction_override() + + # Begin activation functions. + # These are called by name using the keys in the model json file + @staticmethod + def sigmoid(x): + return 1 / (1 + np.exp(-x)) + + @staticmethod + def identity(x): + return x + # End activation functions + + def forward(self, x): + for W, b, activation in self.layers: + x = getattr(self, activation)(x.dot(W) + b) + return x + + def evaluate(self, input_array): + in_len = len(input_array) + if in_len != self.input_size: + # If the input is length 2-4, then it's a simplified evaluation. + # In that case, need to add on zeros to fill out the input array to match the correct length. + if 2 <= in_len: + input_array = input_array + [0] * (self.input_size - in_len) + else: + raise ValueError(f"Input array length {len(input_array)} must be length 2 or greater") + + input_array = np.array(input_array, dtype=np.float32) + + # Rescale the input array using the input_mean and input_std + input_array = (input_array - self.input_mean) / self.input_std + + output_array = self.forward(input_array) + + return float(output_array[0, 0]) + + def validate_layers(self): + for W, b, activation in self.layers: + if not hasattr(self, activation): + raise ValueError(f"Unknown activation: {activation}") + + def check_for_friction_override(self): + y = self.evaluate([10.0, 0.0, 0.2]) + self.friction_override = (y < 0.1) + +def get_nn_model_path(car, eps_firmware) -> tuple[str | None, float]: + def check_nn_path(check_model): + model_path = None + max_similarity = -1.0 + for f in os.listdir(TORQUE_NN_MODEL_PATH): + if f.endswith(".json"): + model = f.replace(".json", "").replace(f"{TORQUE_NN_MODEL_PATH}/", "") + similarity_score = similarity(model, check_model) + if similarity_score > max_similarity: + max_similarity = similarity_score + model_path = os.path.join(TORQUE_NN_MODEL_PATH, f) + return model_path, max_similarity + + #car1 = car.replace('_', ' ') + #car1 = car1.replace(' HEV', ' HYBRID') + #car = car1.replace('EV ', 'ELECTRIC ') + print("########get_nn_model_path :", car, eps_firmware) + if len(eps_firmware) > 3: + eps_firmware = eps_firmware.replace("\\", "") + check_model = f"{car} {eps_firmware}" + else: + check_model = car + model_path, max_similarity = check_nn_path(check_model) + if car not in model_path or 0.0 <= max_similarity < 0.9: + check_model = car + model_path, max_similarity = check_nn_path(check_model) + if car not in model_path or 0.0 <= max_similarity < 0.9: + model_path = None + return model_path + +def get_nn_model(car, eps_firmware) -> tuple[FluxModel | None, float]: + model = get_nn_model_path(car, eps_firmware) + if model is not None: + model = FluxModel(model) + return model + +class MyTrack: + def __init__(self, track_id: int, radar_point, dt: float): + self.track_id = track_id + self.cnt = 0 + self.dRel = radar_point.dRel + self.vRel = radar_point.vRel + self.yRel = radar_point.yRel + self.yvRel = radar_point.yvRel + self.vLead = radar_point.vLead + self.v_lead_filtered_last = self.vLead + self.aLead = 0.0 + self.jLead = 0.0 + self.dt = dt + self.vLead_avg = FirstOrderFilter(self.vLead, 0.1, self.dt) + self.aLead_avg = FirstOrderFilter(self.aLead, 0.15, self.dt) + self.jLead_avg = FirstOrderFilter(self.jLead, 0.4, self.dt) + self.yRel_avg = FirstOrderFilter(self.yRel, 0.1, self.dt) + self.yvRel_avg = FirstOrderFilter(self.yvRel, 0.1, self.dt) + self.cnt = 0 + + def init_point(self, radar_point): + self.dRel = radar_point.dRel + self.vRel = radar_point.vRel + self.yRel = radar_point.yRel + self.yvRel = radar_point.yvRel + self.vLead = radar_point.vLead + self.v_lead_filtered_last = self.vLead + self.aLead = 0.0 + self.jLead = 0.0 + self.vLead_avg.x = self.vLead + self.aLead_avg.x = self.aLead + self.jLead_avg.x = self.jLead + self.yRel_avg.x = self.yRel + self.yvRel_avg.x = self.yvRel + + def update(self, radar_point, a_ego): + if not radar_point.measured: + if self.cnt > 0: + self.init_point(radar_point) + self.cnt = 0 + elif self.cnt < 1: + self.init_point(radar_point) + self.cnt += 1 + else: + self.vLead = radar_point.vLead + self.yRel = self.yRel_avg.update(radar_point.yRel) + self.yvRel = self.yvRel_avg.update(radar_point.yvRel) + + if True: #math.isnan(radar_point.aRel): # + v_lead_filtered = self.vLead_avg.update(self.vLead) + pseudo_stop = abs(v_lead_filtered) < 0.3 and abs(self.vLead - v_lead_filtered) < 0.05 + a_raw = (v_lead_filtered - self.v_lead_filtered_last) / self.dt + self.v_lead_filtered_last = v_lead_filtered + + self.noisy = abs(a_raw - self.aLead) > 3.0 + if self.noisy: + self.cnt = 0 + + a_lead = self.aLead_avg.update(np.clip(a_raw, -10.0, 5.0) if not pseudo_stop else 0.0) + + j_lead = (a_lead - self.aLead) / self.dt + self.aLead = a_lead + self.jLead = self.jLead_avg.update(j_lead if self.cnt > 2 else 0.0) + else: + a_lead = radar_point.aRel + a_ego + j_lead = (a_lead - self.aLead) / self.dt + self.aLead = a_lead + self.jLead = self.jLead_avg.update(j_lead if self.cnt > 2 else 0.0) + + # Store latest values + self.dRel = radar_point.dRel + self.vRel = radar_point.vRel + + self.cnt += 1 + +# generic car and radar interfaces +class RadarInterfaceBase(ABC): + def __init__(self, CP: structs.CarParams): + self.CP = CP + self.rcp = None + self.tracks: dict[int, MyTrack] = {} + self.pts: dict[int, structs.RadarData.RadarPoint] = {} + self.frame = 0 + delay = CP.radarDelay + self.v_ego_hist = deque([0.0], maxlen=int(round(delay / DT_CTRL)) + 1) + self.v_ego = 0.0 + self.a_ego_hist = deque([0.0], maxlen=int(round(delay / DT_CTRL)) + 1) + self.a_ego = 0.0 + self.last_timestamp = None + self.dt = None + + self.init_samples = [] + self.init_done = False + + def estimate_dt(self, rcv_time): + if self.CP.radarTimeStep > 0.0: + self.dt = self.CP.radarTimeStep + self.init_done = True + print(f"Using radar dt: {self.dt} sec") + elif len(self.init_samples) > 100: + estimated_dt = np.mean(np.diff(self.init_samples[50:])) + self.dt = estimated_dt + self.init_done = True + print(f"Estimated radar dt: {self.dt} sec") + else: + self.init_samples.append(rcv_time) + + + def update_carrot(self, v_ego, a_ego, rcv_time, can_packets: list[tuple[int, list[CanData]]]) -> structs.RadarDataT | None: + self.v_ego_hist.append(v_ego) + self.v_ego = self.v_ego_hist[0] + self.a_ego_hist.append(a_ego) + self.a_ego = self.a_ego_hist[0] + ret = self.update(can_packets) + + if ret is not None: + if not self.init_done: + self.estimate_dt(rcv_time) + return None + + new_tracks = {} + for addr, radar_point in self.pts.items(): + track_id = radar_point.trackId + if track_id not in self.tracks: + new_tracks[track_id] = MyTrack(track_id, radar_point, self.dt) + else: + new_tracks[track_id] = self.tracks[track_id] + new_tracks[track_id].update(radar_point, self.a_ego) + + if new_tracks[track_id].cnt < 6: + radar_point.aLead = 0 + radar_point.jLead = 0 + radar_point.yRel = float(new_tracks[track_id].yRel) + radar_point.yvRel = float(new_tracks[track_id].yvRel) + else: + radar_point.aLead = float(new_tracks[track_id].aLead) + radar_point.jLead = float(new_tracks[track_id].jLead) + radar_point.yRel = float(new_tracks[track_id].yRel) + radar_point.yvRel = float(new_tracks[track_id].yvRel) + + self.tracks = new_tracks + """ + if self.last_timestamp is not None: + print(f"dt1 = {rcv_time - self.last_timestamp:.6f}") + if self.last_timestamp is not None and (rcv_time - self.last_timestamp) < 0.045: # 0.05 - 0.005 + if self.last_timestamp is not None: + print(f"dt3 = {rcv_time - self.last_timestamp:.6f}") + return None + if self.last_timestamp is not None: + print(f"dt2 = {rcv_time - self.last_timestamp:.6f}") + self.last_timestamp = rcv_time + """ + return ret + + def update(self, can_packets: list[tuple[int, list[CanData]]]) -> structs.RadarDataT | None: + self.frame += 1 + if (self.frame % 5) == 0: # 20 Hz is very standard + return structs.RadarData() + return None + + +class CarInterfaceBase(ABC): + CarState: 'CarStateBase' + CarController: 'CarControllerBase' + RadarInterface: 'RadarInterfaceBase' = RadarInterfaceBase + + def __init__(self, CP: structs.CarParams): + self.CP = CP + + self.frame = 0 + self.v_ego_cluster_seen = False + + self.CS: CarStateBase = self.CarState(CP) + self.can_parsers: dict[StrEnum, CANParser] = self.CS.get_can_parsers(CP) + + dbc_names = {bus: cp.dbc_name for bus, cp in self.can_parsers.items()} + self.CC: CarControllerBase = self.CarController(dbc_names, CP) + + Params().put_int('LongitudinalPersonalityMax', 3) + eps_firmware = str(next((fw.fwVersion for fw in CP.carFw if fw.ecu == "eps"), "")) + + comma_nnff_supported = self.check_comma_nn_ff_support(CP.carFingerprint) + nnff_supported = self.initialize_lat_torque_nn(CP.carFingerprint, eps_firmware) + + self.use_nnff = not comma_nnff_supported and nnff_supported and Params().get_bool("NNFF") + self.use_nnff_lite = not self.use_nnff and Params().get_bool("NNFFLite") + + def get_ff_nn(self, x): + return self.lat_torque_nn_model.evaluate(x) + + def check_comma_nn_ff_support(self, car): + with open(NEURAL_PARAMS_PATH, 'r') as file: + data = json.load(file) + return car in data + + def initialize_lat_torque_nn(self, car, eps_firmware) -> bool: + self.lat_torque_nn_model = get_nn_model(car, eps_firmware) + return self.lat_torque_nn_model is not None + + + def apply(self, c: structs.CarControl, now_nanos: int | None = None, MD = None) -> tuple[structs.CarControl.Actuators, list[CanData]]: + if now_nanos is None: + now_nanos = int(time.monotonic() * 1e9) + self.CS.MD = MD + return self.CC.update(c, self.CS, now_nanos) + + @staticmethod + def get_pid_accel_limits(CP, current_speed, cruise_speed): + return ACCEL_MIN, ACCEL_MAX + + @classmethod + def get_non_essential_params(cls, candidate: str) -> structs.CarParams: + """ + Parameters essential to controlling the car may be incomplete or wrong without FW versions or fingerprints. + """ + return cls.get_params(candidate, gen_empty_fingerprint(), list(), False, False, False) + + @classmethod + def get_params(cls, candidate: str, fingerprint: dict[int, dict[int, int]], car_fw: list[structs.CarParams.CarFw], + alpha_long: bool, is_release: bool, docs: bool) -> structs.CarParams: + ret = CarInterfaceBase.get_std_params(candidate) + + platform = PLATFORMS[candidate] + ret.mass = platform.config.specs.mass + ret.wheelbase = platform.config.specs.wheelbase + ret.steerRatio = platform.config.specs.steerRatio + ret.centerToFront = ret.wheelbase * platform.config.specs.centerToFrontRatio + ret.minEnableSpeed = platform.config.specs.minEnableSpeed + ret.minSteerSpeed = platform.config.specs.minSteerSpeed + ret.tireStiffnessFactor = platform.config.specs.tireStiffnessFactor + ret.flags |= int(platform.config.flags) + + ret = cls._get_params(ret, candidate, fingerprint, car_fw, alpha_long, is_release, docs) + + # Enable torque controller for all cars that do not use angle based steering + if ret.steerControlType != structs.CarParams.SteerControlType.angle and Params().get_bool("NNFF"): + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + eps_firmware = str(next((fw.fwVersion for fw in car_fw if fw.ecu == "eps"), "")) + model = get_nn_model_path(candidate, eps_firmware) + if model is not None: + Params().put_nonblocking("NNFFModelName", candidate.replace("_", " ")) + print(f"NNFF loaded... {model}") + + + if Params().get_bool("DisableMinSteerSpeed"): + ret.minSteerSpeed = 0. + + # Vehicle mass is published curb weight plus assumed payload such as a human driver; notCars have no assumed payload + if not ret.notCar: + ret.mass = ret.mass + STD_CARGO_KG + + # Set params dependent on values set by the car interface + ret.rotationalInertia = scale_rot_inertia(ret.mass, ret.wheelbase) + ret.tireStiffnessFront, ret.tireStiffnessRear = scale_tire_stiffness(ret.mass, ret.wheelbase, ret.centerToFront, ret.tireStiffnessFactor) + + return ret + + @staticmethod + @abstractmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint: dict[int, dict[int, int]], + car_fw: list[structs.CarParams.CarFw], alpha_long: bool, is_release: bool, docs: bool) -> structs.CarParams: + raise NotImplementedError + + @staticmethod + def init(CP: structs.CarParams, can_recv: CanRecvCallable, can_send: CanSendCallable): + """Used to disable longitudinal ECUs as needed""" + + @staticmethod + def deinit(CP: structs.CarParams, can_recv: CanRecvCallable, can_send: CanSendCallable): + """Used to re-enable longitudinal ECUs as needed""" + + @staticmethod + def get_steer_feedforward_default(desired_angle, v_ego): + # Proportional to realigning tire momentum: lateral acceleration. + return desired_angle * (v_ego**2) + + def get_steer_feedforward_function(self): + return self.get_steer_feedforward_default + + def torque_from_lateral_accel_linear(self, latcontrol_inputs: LatControlInputs, torque_params: structs.CarParams.LateralTorqueTuning, + lateral_accel_error: float, lateral_accel_deadzone: float, friction_compensation: bool, gravity_adjusted: bool) -> float: + # The default is a linear relationship between torque and lateral acceleration (accounting for road roll and steering friction) + friction = get_friction(lateral_accel_error, lateral_accel_deadzone, FRICTION_THRESHOLD, torque_params, friction_compensation) + return (latcontrol_inputs.lateral_acceleration / float(torque_params.latAccelFactor)) + friction + + def torque_from_lateral_accel(self) -> TorqueFromLateralAccelCallbackType: + return self.torque_from_lateral_accel_linear + + # returns a set of default params to avoid repetition in car specific params + @staticmethod + def get_std_params(candidate: str) -> structs.CarParams: + ret = structs.CarParams() + ret.carFingerprint = candidate + + # Car docs fields + ret.maxLateralAccel = get_torque_params()[candidate]['MAX_LAT_ACCEL_MEASURED'] + ret.autoResumeSng = True # describes whether car can resume from a stop automatically + + # standard ALC params + ret.tireStiffnessFactor = 1.0 + ret.steerControlType = structs.CarParams.SteerControlType.torque + ret.minSteerSpeed = 0. + ret.wheelSpeedFactor = 1.0 + + ret.pcmCruise = True # openpilot's state is tied to the PCM's cruise state on most cars + ret.minEnableSpeed = -1. # enable is done by stock ACC, so ignore this + ret.steerRatioRear = 0. # no rear steering, at least on the listed cars aboveA + ret.openpilotLongitudinalControl = False + ret.stopAccel = -2.0 + ret.stoppingDecelRate = 0.8 # brake_travel/s while trying to stop + ret.vEgoStopping = 0.5 + ret.vEgoStarting = 0.5 + ret.longitudinalTuning.kf = 1. + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [0.] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [0.] + # TODO estimate car specific lag, use .15s for now + ret.longitudinalActuatorDelay = 0.15 + ret.steerLimitTimer = 1.0 + return ret + + @staticmethod + def configure_torque_tune(candidate: str, tune: structs.CarParams.LateralTuning, steering_angle_deadzone_deg: float = 0.0, use_steering_angle: bool = True): + params = get_torque_params()[candidate] + + tune.init('torque') + tune.torque.useSteeringAngle = use_steering_angle + tune.torque.kp = 1.0 + tune.torque.kf = 1.0 + tune.torque.ki = 0.1 + tune.torque.friction = params['FRICTION'] + tune.torque.latAccelFactor = params['LAT_ACCEL_FACTOR'] + tune.torque.latAccelOffset = 0.0 + tune.torque.steeringAngleDeadzoneDeg = steering_angle_deadzone_deg + + def update(self, can_packets: list[tuple[int, list[CanData]]]) -> structs.CarState: + # parse can + for cp in self.can_parsers.values(): + if cp is not None: + cp.update(can_packets) + + # get CarState + ret = self.CS.update(self.can_parsers) + + ret.canValid = all(cp.can_valid for cp in self.can_parsers.values()) + ret.canTimeout = any(cp.bus_timeout for cp in self.can_parsers.values()) + + if ret.vEgoCluster == 0.0 and not self.v_ego_cluster_seen: + ret.vEgoCluster = ret.vEgo + else: + self.v_ego_cluster_seen = True + + # Many cars apply hysteresis to the ego dash speed + ret.vEgoCluster = apply_hysteresis(ret.vEgoCluster, self.CS.out.vEgoCluster, self.CS.cluster_speed_hyst_gap) + if abs(ret.vEgo) < self.CS.cluster_min_speed: + ret.vEgoCluster = 0.0 + + if ret.cruiseState.speedCluster == 0: + ret.cruiseState.speedCluster = ret.cruiseState.speed + + ret.buttonEnable = self.CS.update_button_enable(ret.buttonEvents) + + # save for next iteration + self.CS.out = ret + + return ret + + +class CarStateBase(ABC): + def __init__(self, CP: structs.CarParams): + self.CP = CP + self.car_fingerprint = CP.carFingerprint + self.out = structs.CarState() + + self.cruise_buttons = 0 + self.left_blinker_cnt = 0 + self.right_blinker_cnt = 0 + self.steering_pressed_cnt = 0 + self.left_blinker_prev = False + self.right_blinker_prev = False + self.cluster_speed_hyst_gap = 0.0 + self.cluster_min_speed = 0.0 # min speed before dropping to 0 + self.secoc_key: bytes = b"00" * 16 + + Q = [[0.0, 0.0], [0.0, 100.0]] + R = 0.3 + A = [[1.0, DT_CTRL], [0.0, 1.0]] + C = [[1.0, 0.0]] + x0=[[0.0], [0.0]] + K = get_kalman_gain(DT_CTRL, np.array(A), np.array(C), np.array(Q), R) + self.v_ego_kf = KF1D(x0=x0, A=A, C=C[0], K=K) + self.v_ego_clu_kf = KF1D(x0=x0, A=A, C=C[0], K=K) + + self.softHoldActive = 0 + self.is_metric = True + self.lkas_enabled = False + + self.MD = None + + @abstractmethod + def update(self, can_parsers) -> structs.CarState: + pass + + def update_speed_kf(self, v_ego_raw): + if abs(v_ego_raw - self.v_ego_kf.x[0][0]) > 2.0: # Prevent large accelerations when car starts at non zero speed + self.v_ego_kf.set_x([[v_ego_raw], [0.0]]) + + v_ego_x = self.v_ego_kf.update(v_ego_raw) + return float(v_ego_x[0]), float(v_ego_x[1]) + + def update_clu_speed_kf(self, v_ego_raw): + if abs(v_ego_raw - self.v_ego_clu_kf.x[0][0]) > 2.0: # Prevent large accelerations when car starts at non zero speed + self.v_ego_clu_kf.set_x([[v_ego_raw], [0.0]]) + + v_ego_x = self.v_ego_clu_kf.update(v_ego_raw) + return float(v_ego_x[0]), float(v_ego_x[1]) + + def get_wheel_speeds(self, fl, fr, rl, rr, unit=CV.KPH_TO_MS): + factor = unit * self.CP.wheelSpeedFactor + + wheelSpeeds = structs.CarState.WheelSpeeds() + wheelSpeeds.fl = fl * factor + wheelSpeeds.fr = fr * factor + wheelSpeeds.rl = rl * factor + wheelSpeeds.rr = rr * factor + return wheelSpeeds + + def update_blinker_from_lamp(self, blinker_time: int, left_blinker_lamp: bool, right_blinker_lamp: bool): + """Update blinkers from lights. Enable output when light was seen within the last `blinker_time` + iterations""" + # TODO: Handle case when switching direction. Now both blinkers can be on at the same time + self.left_blinker_cnt = blinker_time if left_blinker_lamp else max(self.left_blinker_cnt - 1, 0) + self.right_blinker_cnt = blinker_time if right_blinker_lamp else max(self.right_blinker_cnt - 1, 0) + return self.left_blinker_cnt > 0, self.right_blinker_cnt > 0 + + def update_steering_pressed(self, steering_pressed, steering_pressed_min_count): + """Applies filtering on steering pressed for noisy driver torque signals.""" + self.steering_pressed_cnt = self.steering_pressed_cnt + 1 if steering_pressed else 0 + self.steering_pressed_cnt = min(self.steering_pressed_cnt, steering_pressed_min_count + 1) + return self.steering_pressed_cnt > steering_pressed_min_count + + def update_blinker_from_stalk(self, blinker_time: int, left_blinker_stalk: bool, right_blinker_stalk: bool): + """Update blinkers from stalk position. When stalk is seen the blinker will be on for at least blinker_time, + or until the stalk is turned off, whichever is longer. If the opposite stalk direction is seen the blinker + is forced to the other side. On a rising edge of the stalk the timeout is reset.""" + + if left_blinker_stalk: + self.right_blinker_cnt = 0 + if not self.left_blinker_prev: + self.left_blinker_cnt = blinker_time + + if right_blinker_stalk: + self.left_blinker_cnt = 0 + if not self.right_blinker_prev: + self.right_blinker_cnt = blinker_time + + self.left_blinker_cnt = max(self.left_blinker_cnt - 1, 0) + self.right_blinker_cnt = max(self.right_blinker_cnt - 1, 0) + + self.left_blinker_prev = left_blinker_stalk + self.right_blinker_prev = right_blinker_stalk + + return bool(left_blinker_stalk or self.left_blinker_cnt > 0), bool(right_blinker_stalk or self.right_blinker_cnt > 0) + + def update_button_enable(self, buttonEvents: list[structs.CarState.ButtonEvent]): + if not self.CP.pcmCruise: + for b in buttonEvents: + # Enable OP long on falling edge of enable buttons + if b.type in (ButtonType.accelCruise, ButtonType.decelCruise) and not b.pressed: + return True + return False + + @staticmethod + def parse_gear_shifter(gear: str | None) -> structs.CarState.GearShifter: + if gear is None: + return GearShifter.unknown + return GEAR_SHIFTER_MAP.get(gear.upper(), GearShifter.unknown) + + @staticmethod + def get_can_parsers(CP) -> dict[StrEnum, CANParser]: + return {} + + +class CarControllerBase(ABC): + def __init__(self, dbc_names: dict[StrEnum, str], CP: structs.CarParams): + self.CP = CP + self.frame = 0 + self.secoc_key: bytes = b"00" * 16 + + @abstractmethod + def update(self, CC: structs.CarControl, CS: CarStateBase, now_nanos: int) -> tuple[structs.CarControl.Actuators, list[CanData]]: + pass + + +INTERFACE_ATTR_FILE = { + "FINGERPRINTS": "fingerprints", + "FW_VERSIONS": "fingerprints", +} + +# interface-specific helpers + +def get_interface_attr(attr: str, combine_brands: bool = False, ignore_none: bool = False) -> dict[str | StrEnum, Any]: + # read all the folders in opendbc/car and return a dict where: + # - keys are all the car models or brand names + # - values are attr values from all car folders + result = {} + for car_folder in sorted([x[0] for x in os.walk(BASEDIR)]): + try: + brand_name = car_folder.split('/')[-1] + brand_values = __import__(f'opendbc.car.{brand_name}.{INTERFACE_ATTR_FILE.get(attr, "values")}', fromlist=[attr]) + if hasattr(brand_values, attr) or not ignore_none: + attr_data = getattr(brand_values, attr, None) + else: + continue + + if combine_brands: + if isinstance(attr_data, dict): + for f, v in attr_data.items(): + result[f] = v + else: + result[brand_name] = attr_data + except (ImportError, OSError): + pass + + return result + + +class NanoFFModel: + def __init__(self, weights_loc: str, platform: str): + self.weights_loc = weights_loc + self.platform = platform + self.load_weights(platform) + + def load_weights(self, platform: str): + with open(self.weights_loc) as fob: + self.weights = {k: np.array(v) for k, v in json.load(fob)[platform].items()} + + def relu(self, x: np.ndarray): + return np.maximum(0.0, x) + + def forward(self, x: np.ndarray): + assert x.ndim == 1 + x = (x - self.weights['input_norm_mat'][:, 0]) / (self.weights['input_norm_mat'][:, 1] - self.weights['input_norm_mat'][:, 0]) + x = self.relu(np.dot(x, self.weights['w_1']) + self.weights['b_1']) + x = self.relu(np.dot(x, self.weights['w_2']) + self.weights['b_2']) + x = self.relu(np.dot(x, self.weights['w_3']) + self.weights['b_3']) + x = np.dot(x, self.weights['w_4']) + self.weights['b_4'] + return x + + def predict(self, x: list[float], do_sample: bool = False): + x = self.forward(np.array(x)) + if do_sample: + pred = np.random.laplace(x[0], np.exp(x[1]) / self.weights['temperature']) + else: + pred = x[0] + pred = pred * (self.weights['output_norm_mat'][1] - self.weights['output_norm_mat'][0]) + self.weights['output_norm_mat'][0] + return pred diff --git a/opendbc_repo/opendbc/car/isotp.py b/opendbc_repo/opendbc/car/isotp.py new file mode 100644 index 0000000000..ac64c413be --- /dev/null +++ b/opendbc_repo/opendbc/car/isotp.py @@ -0,0 +1,140 @@ +import binascii +import time + +DEBUG = False + +def msg(x): + if DEBUG: + print("S:", binascii.hexlify(x)) + assert len(x) <= 7 + ret = bytes([len(x)]) + x + return ret.ljust(8, b"\x00") + +kmsgs = [] +def recv(panda, cnt, addr, nbus): + global kmsgs + ret = [] + + while len(ret) < cnt: + kmsgs += panda.can_recv() + nmsgs = [] + for ids, dat, bus in kmsgs: + if ids == addr and bus == nbus and len(ret) < cnt: + ret.append(dat) + else: + # leave around + nmsgs.append((ids, dat, bus)) + kmsgs = nmsgs[-256:] + return ret + +def isotp_recv_subaddr(panda, addr, bus, sendaddr, subaddr): + msg = recv(panda, 1, addr, bus)[0] + + # TODO: handle other subaddr also communicating + assert msg[0] == subaddr + + if msg[1] & 0xf0 == 0x10: + # first + tlen = ((msg[1] & 0xf) << 8) | msg[2] + dat = msg[3:] + + # 0 block size? + CONTINUE = bytes([subaddr]) + b"\x30" + b"\x00" * 6 + panda.can_send(sendaddr, CONTINUE, bus) + + idx = 1 + for mm in recv(panda, (tlen - len(dat) + 5) // 6, addr, bus): + assert mm[0] == subaddr + assert mm[1] == (0x20 | (idx & 0xF)) + dat += mm[2:] + idx += 1 + elif msg[1] & 0xf0 == 0x00: + # single + tlen = msg[1] & 0xf + dat = msg[2:] + else: + print(binascii.hexlify(msg)) + raise AssertionError + + return dat[0:tlen] + +# **** import below this line **** + +def isotp_send(panda, x, addr, bus=0, recvaddr=None, subaddr=None, rate=None): + if recvaddr is None: + recvaddr = addr + 8 + + if len(x) <= 7 and subaddr is None: + panda.can_send(addr, msg(x), bus) + elif len(x) <= 6 and subaddr is not None: + panda.can_send(addr, bytes([subaddr]) + msg(x)[0:7], bus) + else: + if subaddr: + ss = bytes([subaddr, 0x10 + (len(x) >> 8), len(x) & 0xFF]) + x[0:5] + x = x[5:] + else: + ss = bytes([0x10 + (len(x) >> 8), len(x) & 0xFF]) + x[0:6] + x = x[6:] + idx = 1 + sends = [] + while len(x) > 0: + if subaddr: + sends.append((bytes([subaddr, 0x20 + (idx & 0xF)]) + x[0:6]).ljust(8, b"\x00")) + x = x[6:] + else: + sends.append((bytes([0x20 + (idx & 0xF)]) + x[0:7]).ljust(8, b"\x00")) + x = x[7:] + idx += 1 + + # actually send + panda.can_send(addr, ss, bus) + rr = recv(panda, 1, recvaddr, bus)[0] + if rr.find(b"\x30\x01") != -1: + for s in sends[:-1]: + panda.can_send(addr, s, 0) + rr = recv(panda, 1, recvaddr, bus)[0] + panda.can_send(addr, sends[-1], 0) + else: + if rate is None: + panda.can_send_many([(addr, s, bus) for s in sends]) + else: + for dat in sends: + panda.can_send(addr, dat, bus) + time.sleep(rate) + +def isotp_recv(panda, addr, bus=0, sendaddr=None, subaddr=None): + if sendaddr is None: + sendaddr = addr - 8 + + if subaddr is not None: + dat = isotp_recv_subaddr(panda, addr, bus, sendaddr, subaddr) + else: + msg = recv(panda, 1, addr, bus)[0] + + if msg[0] & 0xf0 == 0x10: + # first + tlen = ((msg[0] & 0xf) << 8) | msg[1] + dat = msg[2:] + + # 0 block size? + CONTINUE = b"\x30" + b"\x00" * 7 + + panda.can_send(sendaddr, CONTINUE, bus) + + idx = 1 + for mm in recv(panda, (tlen - len(dat) + 6) // 7, addr, bus): + assert mm[0] == (0x20 | (idx & 0xF)) + dat += mm[1:] + idx += 1 + elif msg[0] & 0xf0 == 0x00: + # single + tlen = msg[0] & 0xf + dat = msg[1:] + else: + raise AssertionError + dat = dat[0:tlen] + + if DEBUG: + print("R:", binascii.hexlify(dat)) + + return dat diff --git a/opendbc_repo/opendbc/car/isotp_parallel_query.py b/opendbc_repo/opendbc/car/isotp_parallel_query.py new file mode 100644 index 0000000000..57925e4239 --- /dev/null +++ b/opendbc_repo/opendbc/car/isotp_parallel_query.py @@ -0,0 +1,170 @@ +import time +from collections import defaultdict +from functools import partial + +from opendbc.car import uds +from opendbc.car.can_definitions import CanData, CanRecvCallable, CanSendCallable +from opendbc.car.carlog import carlog +from opendbc.car.fw_query_definitions import AddrType + + +class IsoTpParallelQuery: + def __init__(self, can_send: CanSendCallable, can_recv: CanRecvCallable, bus: int, addrs: list[int] | list[AddrType], + request: list[bytes], response: list[bytes], response_offset: int = 0x8, + functional_addrs: list[int] = None, response_pending_timeout: float = 10) -> None: + self.can_send = can_send + self.can_recv = can_recv + self.bus = bus + self.request = request + self.response = response + self.functional_addrs = functional_addrs or [] + self.response_pending_timeout = response_pending_timeout + + real_addrs = [a if isinstance(a, tuple) else (a, None) for a in addrs] + for tx_addr, _ in real_addrs: + assert tx_addr not in uds.FUNCTIONAL_ADDRS, f"Functional address should be defined in functional_addrs: {hex(tx_addr)}" + + self.msg_addrs = {tx_addr: uds.get_rx_addr_for_tx_addr(tx_addr[0], rx_offset=response_offset) for tx_addr in real_addrs} + self.msg_buffer: dict[int, list[CanData]] = defaultdict(list) + + def rx(self) -> None: + """Drain can socket and sort messages into buffers based on address""" + can_packets = self.can_recv(wait_for_one=True) + + for packet in can_packets: + for msg in packet: + if msg.src == self.bus and msg.address in self.msg_addrs.values(): + self.msg_buffer[msg.address].append(CanData(msg.address, msg.dat, msg.src)) + + def _can_tx(self, tx_addr: int, dat: bytes, bus: int): + """Helper function to send single message""" + msg = CanData(tx_addr, dat, bus) + self.can_send([msg]) + + def _can_rx(self, addr, sub_addr=None): + """Helper function to retrieve message with specified address and subaddress from buffer""" + keep_msgs = [] + + if sub_addr is None: + msgs = self.msg_buffer[addr] + else: + # Filter based on subaddress + msgs = [] + for m in self.msg_buffer[addr]: + first_byte = m[1][0] + if first_byte == sub_addr: + msgs.append(m) + else: + keep_msgs.append(m) + + self.msg_buffer[addr] = keep_msgs + return msgs + + def _drain_rx(self) -> None: + self.can_recv() + self.msg_buffer = defaultdict(list) + + def _create_isotp_msg(self, tx_addr: int, sub_addr: int | None, rx_addr: int): + can_client = uds.CanClient(self._can_tx, partial(self._can_rx, rx_addr, sub_addr=sub_addr), tx_addr, rx_addr, + self.bus, sub_addr=sub_addr) + + # uses iso-tp frame separation time of 10 ms + # TODO: use single_frame_mode so ECUs can send as fast as they want, + # as well as reduces chances we process messages from previous queries + return uds.IsoTpMessage(can_client, timeout=0, separation_time=0.01) + + def get_data(self, timeout: float, total_timeout: float = 60.) -> dict[AddrType, bytes]: + self._drain_rx() + + # Create message objects + msgs = {} + request_counter = {} + request_done = {} + for tx_addr, rx_addr in self.msg_addrs.items(): + msgs[tx_addr] = self._create_isotp_msg(*tx_addr, rx_addr) + request_counter[tx_addr] = 0 + request_done[tx_addr] = False + + # Send first request to functional addrs, subsequent responses are handled on physical addrs + if len(self.functional_addrs): + for addr in self.functional_addrs: + self._create_isotp_msg(addr, None, -1).send(self.request[0]) + + # Send first frame (single or first) to all addresses and receive asynchronously in the loop below. + # If querying functional addrs, only set up physical IsoTpMessages to send consecutive frames + for msg in msgs.values(): + msg.send(self.request[0], setup_only=len(self.functional_addrs) > 0) + + results = {} + start_time = time.monotonic() + addrs_responded = set() # track addresses that have ever sent a valid iso-tp frame for timeout logging + response_timeouts = {tx_addr: start_time + timeout for tx_addr in self.msg_addrs} + while True: + self.rx() + + for tx_addr, msg in msgs.items(): + try: + dat, rx_in_progress = msg.recv() + except Exception: + carlog.exception(f"Error processing UDS response: {tx_addr}") + request_done[tx_addr] = True + continue + + # Extend timeout for each consecutive ISO-TP frame to avoid timing out on long responses + if rx_in_progress: + addrs_responded.add(tx_addr) + response_timeouts[tx_addr] = time.monotonic() + timeout + + if dat is None: + continue + + # Log unexpected empty responses + if len(dat) == 0: + carlog.error(f"iso-tp query empty response: {tx_addr}") + request_done[tx_addr] = True + continue + + counter = request_counter[tx_addr] + expected_response = self.response[counter] + response_valid = dat.startswith(expected_response) + + if response_valid: + if counter + 1 < len(self.request): + response_timeouts[tx_addr] = time.monotonic() + timeout + msg.send(self.request[counter + 1]) + request_counter[tx_addr] += 1 + else: + results[tx_addr] = dat[len(expected_response):] + request_done[tx_addr] = True + else: + error_code = dat[2] if len(dat) > 2 else -1 + if error_code == 0x78: + response_timeouts[tx_addr] = time.monotonic() + self.response_pending_timeout + carlog.error(f"iso-tp query response pending: {tx_addr}") + else: + request_done[tx_addr] = True + carlog.error(f"iso-tp query bad response: {tx_addr} - 0x{dat.hex()}") + + # Mark request done if address timed out + cur_time = time.monotonic() + for tx_addr in response_timeouts: + if cur_time - response_timeouts[tx_addr] > 0: + if not request_done[tx_addr]: + if request_counter[tx_addr] > 0: + carlog.error(f"iso-tp query timeout after receiving partial response: {tx_addr}") + elif tx_addr in addrs_responded: + carlog.error(f"iso-tp query timeout while receiving response: {tx_addr}") + # TODO: handle functional addresses + # else: + # carlog.error(f"iso-tp query timeout with no response: {tx_addr}") + request_done[tx_addr] = True + + # Break if all requests are done (finished or timed out) + if all(request_done.values()): + break + + if cur_time - start_time > total_timeout: + carlog.error("iso-tp query timeout while receiving data") + break + + return results diff --git a/opendbc_repo/opendbc/car/mazda/__init__.py b/opendbc_repo/opendbc/car/mazda/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/mazda/carcontroller.py b/opendbc_repo/opendbc/car/mazda/carcontroller.py new file mode 100644 index 0000000000..328c9d85ac --- /dev/null +++ b/opendbc_repo/opendbc/car/mazda/carcontroller.py @@ -0,0 +1,113 @@ +from opendbc.can import CANPacker +from opendbc.car import Bus, apply_driver_steer_torque_limits, structs +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.mazda import mazdacan +from opendbc.car.mazda.values import CarControllerParams, Buttons +from opendbc.car.common.conversions import Conversions as CV +from openpilot.common.params import Params + +VisualAlert = structs.CarControl.HUDControl.VisualAlert + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.apply_torque_last = 0 + self.packer = CANPacker(dbc_names[Bus.pt]) + self.brake_counter = 0 + + self.activateCruise = 0 + self.speed_from_pcm = 1 + + def update(self, CC, CS, now_nanos): + + if self.frame % 50 == 0: + params = Params() + self.speed_from_pcm = params.get_int("SpeedFromPCM") + + can_sends = [] + + apply_torque = 0 + + if CC.latActive: + # calculate steer and also set limits due to driver torque + new_torque = int(round(CC.actuators.torque * CarControllerParams.STEER_MAX)) + apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, + CS.out.steeringTorque, CarControllerParams) + + if CC.cruiseControl.cancel: + # If brake is pressed, let us wait >70ms before trying to disable crz to avoid + # a race condition with the stock system, where the second cancel from openpilot + # will disable the crz 'main on'. crz ctrl msg runs at 50hz. 70ms allows us to + # read 3 messages and most likely sync state before we attempt cancel. + self.brake_counter = self.brake_counter + 1 + if self.frame % 10 == 0 and not (CS.out.brakePressed and self.brake_counter < 7): + # Cancel Stock ACC if it's enabled while OP is disengaged + # Send at a rate of 10hz until we sync with stock ACC state + can_sends.append(mazdacan.create_button_cmd(self.packer, self.CP, CS.crz_btns_counter, Buttons.CANCEL)) + elif False: + self.brake_counter = 0 + if CC.cruiseControl.resume and self.frame % 5 == 0: + # Mazda Stop and Go requires a RES button (or gas) press if the car stops more than 3 seconds + # Send Resume button when planner wants car to move + can_sends.append(mazdacan.create_button_cmd(self.packer, self.CP, CS.crz_btns_counter, Buttons.RESUME)) + else: + if self.frame % 20 == 0: + spam_button = self.make_spam_button(CC, CS) + if spam_button > 0: + self.brake_counter = 0 + can_sends.append(mazdacan.create_button_cmd(self.packer, self.CP, self.frame // 10, spam_button)) + + self.apply_torque_last = apply_torque + + # send HUD alerts + if self.frame % 50 == 0: + ldw = CC.hudControl.visualAlert == VisualAlert.ldw + steer_required = CC.hudControl.visualAlert == VisualAlert.steerRequired + # TODO: find a way to silence audible warnings so we can add more hud alerts + steer_required = steer_required and CS.lkas_allowed_speed + can_sends.append(mazdacan.create_alert_command(self.packer, CS.cam_laneinfo, ldw, steer_required)) + + # send steering command + can_sends.append(mazdacan.create_steering_control(self.packer, self.CP, + self.frame, apply_torque, CS.cam_lkas)) + + new_actuators = CC.actuators.as_builder() + new_actuators.torque = apply_torque / CarControllerParams.STEER_MAX + new_actuators.torqueOutputCan = apply_torque + + self.frame += 1 + return new_actuators, can_sends + + def make_spam_button(self, CC, CS): + hud_control = CC.hudControl + set_speed_in_units = hud_control.setSpeed * (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + target = int(set_speed_in_units+0.5) + target = int(round(target / 5.0) * 5.0) + current = int(CS.out.cruiseState.speed*CV.MS_TO_KPH + 0.5) + current = int(round(current / 5.0) * 5.0) + v_ego_kph = CS.out.vEgo * CV.MS_TO_KPH + + cant_activate = CS.out.brakePressed or CS.out.gasPressed + + if CC.enabled: + if not CS.out.cruiseState.enabled: + if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0 and not cant_activate: + self.activateCruise = 1 + print("RESUME") + return Buttons.RESUME + elif CC.cruiseControl.resume: + return Buttons.RESUME + elif target < current and current>= 31 and self.speed_from_pcm != 1: + print(f"SET_MINUS target={target}, current={current}") + return Buttons.SET_MINUS + elif target > current and current < 160 and self.speed_from_pcm != 1: + print(f"SET_PLUS target={target}, current={current}") + return Buttons.SET_PLUS + elif CS.out.activateCruise: + if (hud_control.leadVisible or v_ego_kph > 10.0) and self.activateCruise == 0 and not cant_activate: + self.activateCruise = 1 + print("RESUME") + return Buttons.RESUME + + return 0 diff --git a/opendbc_repo/opendbc/car/mazda/carstate.py b/opendbc_repo/opendbc/car/mazda/carstate.py new file mode 100644 index 0000000000..c454c74633 --- /dev/null +++ b/opendbc_repo/opendbc/car/mazda/carstate.py @@ -0,0 +1,152 @@ +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, create_button_events, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase +from opendbc.car.mazda.values import DBC, LKAS_LIMITS, MazdaFlags, Buttons + +ButtonType = structs.CarState.ButtonEvent.Type +BUTTONS_DICT = {Buttons.SET_PLUS: ButtonType.accelCruise, Buttons.SET_MINUS: ButtonType.decelCruise, + Buttons.RESUME: ButtonType.resumeCruise, Buttons.CANCEL: ButtonType.cancel} + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + self.shifter_values = can_define.dv["GEAR"]["GEAR"] + + self.crz_btns_counter = 0 + self.acc_active_last = False + self.low_speed_alert = False + self.lkas_allowed_speed = False + self.lkas_disabled = False + + self.prev_distance_button = 0 + self.distance_button = 0 + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + + ret = structs.CarState() + + self.prev_distance_button = self.distance_button + self.distance_button = cp.vl["CRZ_BTNS"]["DISTANCE_LESS"] + + self.prev_cruise_buttons = self.cruise_buttons + + if bool(cp.vl["CRZ_BTNS"]["SET_P"]): + self.cruise_buttons = Buttons.SET_PLUS + elif bool(cp.vl["CRZ_BTNS"]["SET_M"]): + self.cruise_buttons = Buttons.SET_MINUS + elif bool(cp.vl["CRZ_BTNS"]["RES"]): + self.cruise_buttons = Buttons.RESUME + else: + self.cruise_buttons = Buttons.NONE + + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["WHEEL_SPEEDS"]["FL"], + cp.vl["WHEEL_SPEEDS"]["FR"], + cp.vl["WHEEL_SPEEDS"]["RL"], + cp.vl["WHEEL_SPEEDS"]["RR"], + ) + ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + + # Match panda speed reading + speed_kph = cp.vl["ENGINE_DATA"]["SPEED"] + ret.standstill = speed_kph <= .1 + + can_gear = int(cp.vl["GEAR"]["GEAR"]) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + ret.gearStep = cp.vl["GEAR"]["GEAR_BOX"] + + ret.genericToggle = bool(cp.vl["BLINK_INFO"]["HIGH_BEAMS"]) + ret.leftBlindspot = cp.vl["BSM"]["LEFT_BS_STATUS"] != 0 + ret.rightBlindspot = cp.vl["BSM"]["RIGHT_BS_STATUS"] != 0 + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(40, cp.vl["BLINK_INFO"]["LEFT_BLINK"] == 1, + cp.vl["BLINK_INFO"]["RIGHT_BLINK"] == 1) + + ret.steeringAngleDeg = cp.vl["STEER"]["STEER_ANGLE"] + ret.steeringTorque = cp.vl["STEER_TORQUE"]["STEER_TORQUE_SENSOR"] + ret.steeringPressed = abs(ret.steeringTorque) > LKAS_LIMITS.STEER_THRESHOLD + + ret.steeringTorqueEps = cp.vl["STEER_TORQUE"]["STEER_TORQUE_MOTOR"] + ret.steeringRateDeg = cp.vl["STEER_RATE"]["STEER_ANGLE_RATE"] + + # TODO: this should be from 0 - 1. + ret.brakePressed = cp.vl["PEDALS"]["BRAKE_ON"] == 1 + ret.brake = cp.vl["BRAKE"]["BRAKE_PRESSURE"] + + ret.seatbeltUnlatched = cp.vl["SEATBELT"]["DRIVER_SEATBELT"] == 0 + ret.doorOpen = any([cp.vl["DOORS"]["FL"], cp.vl["DOORS"]["FR"], + cp.vl["DOORS"]["BL"], cp.vl["DOORS"]["BR"]]) + + # TODO: this should be from 0 - 1. + ret.gas = cp.vl["ENGINE_DATA"]["PEDAL_GAS"] + ret.gasPressed = ret.gas > 0 + + # Either due to low speed or hands off + lkas_blocked = cp.vl["STEER_RATE"]["LKAS_BLOCK"] == 1 + + if self.CP.minSteerSpeed > 0: + # LKAS is enabled at 52kph going up and disabled at 45kph going down + # wait for LKAS_BLOCK signal to clear when going up since it lags behind the speed sometimes + if speed_kph > LKAS_LIMITS.ENABLE_SPEED and not lkas_blocked: + self.lkas_allowed_speed = True + elif speed_kph < LKAS_LIMITS.DISABLE_SPEED: + self.lkas_allowed_speed = False + else: + self.lkas_allowed_speed = True + + # TODO: the signal used for available seems to be the adaptive cruise signal, instead of the main on + # it should be used for carState.cruiseState.nonAdaptive instead + ret.cruiseState.available = cp.vl["CRZ_CTRL"]["CRZ_AVAILABLE"] == 1 + ret.cruiseState.enabled = cp.vl["CRZ_CTRL"]["CRZ_ACTIVE"] == 1 + ret.cruiseState.standstill = cp.vl["PEDALS"]["STANDSTILL"] == 1 + ret.cruiseState.speed = cp.vl["CRZ_EVENTS"]["CRZ_SPEED"] * CV.KPH_TO_MS + + # stock lkas should be on + # TODO: is this needed? + ret.invalidLkasSetting = cp_cam.vl["CAM_LANEINFO"]["LANE_LINES"] == 0 + + if ret.cruiseState.enabled: + if not self.lkas_allowed_speed and self.acc_active_last: + self.low_speed_alert = True + else: + self.low_speed_alert = False + ret.lowSpeedAlert = self.low_speed_alert + + # Check if LKAS is disabled due to lack of driver torque when all other states indicate + # it should be enabled (steer lockout). Don't warn until we actually get lkas active + # and lose it again, i.e, after initial lkas activation + ret.steerFaultTemporary = self.lkas_allowed_speed and lkas_blocked + + self.acc_active_last = ret.cruiseState.enabled + + self.crz_btns_counter = cp.vl["CRZ_BTNS"]["CTR"] + + # camera signals + self.lkas_disabled = cp_cam.vl["CAM_LANEINFO"]["LANE_LINES"] == 0 + self.cam_lkas = cp_cam.vl["CAM_LKAS"] + self.cam_laneinfo = cp_cam.vl["CAM_LANEINFO"] + ret.steerFaultPermanent = cp_cam.vl["CAM_LKAS"]["ERR_BIT_1"] == 1 + + self.lkas_previously_enabled = self.lkas_enabled + self.lkas_enabled = not self.lkas_disabled + + # TODO: add button types for inc and dec + #ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) + ret.buttonEvents = [ + *create_button_events(self.cruise_buttons, self.prev_cruise_buttons, BUTTONS_DICT), + *create_button_events(self.distance_button, self.prev_distance_button, {1: ButtonType.gapAdjustCruise}), + #*create_button_events(self.lkas_enabled, self.lkas_previously_enabled, {1: ButtonType.lfaButton}), + ] + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + } diff --git a/opendbc_repo/opendbc/car/mazda/fingerprints.py b/opendbc_repo/opendbc/car/mazda/fingerprints.py new file mode 100644 index 0000000000..e21fa4449b --- /dev/null +++ b/opendbc_repo/opendbc/car/mazda/fingerprints.py @@ -0,0 +1,267 @@ +from opendbc.car.structs import CarParams +from opendbc.car.mazda.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.MAZDA_CX5_2022: { + (Ecu.eps, 0x730, None): [ + b'KSD5-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'PEW5-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PW67-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2C-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2D-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2G-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2H-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2H-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX85-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXFG-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXFG-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'SH54-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'KGWD-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KSD5-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'GSH7-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-U\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.transmission, 0x7e1, None): [ + b'PG69-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PW66-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXDL-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXFG-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXFG-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYJ3-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'SH51-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.MAZDA_CX5: { + (Ecu.eps, 0x730, None): [ + b'K319-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KCB8-3210X-B-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KJ01-3210X-G-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KJ01-3210X-J-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KJ01-3210X-M-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'PA53-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PAR4-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2E-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2F-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2G-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2H-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2H-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2H-188K2-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX2K-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX38-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX42-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX68-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFA-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFC-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFD-188K2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYNF-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'SHKT-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'K123-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'K123-437K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KBJ5-437K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KL2K-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KN0W-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'B61L-67XK2-R\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-V\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-M\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-N\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-R\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.transmission, 0x7e1, None): [ + b'PA66-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PA66-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX39-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX39-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX68-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB1-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB1-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB1-21PS1-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-G\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYB2-21PS1-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYNC-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'SH9T-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.MAZDA_CX9: { + (Ecu.eps, 0x730, None): [ + b'K070-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KJ01-3210X-G-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KJ01-3210X-L-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'PX23-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX24-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM4-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXN8-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXN8-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYD7-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYD8-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFM-188K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFM-188K2-H\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'K123-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TK80-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TK80-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'TA0B-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TK79-437K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TK79-437K2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TM53-437K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TN40-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'B61L-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-V\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-J\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-K\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'TK80-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.transmission, 0x7e1, None): [ + b'PXM4-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM7-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYD5-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYD5-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYD6-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYD6-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFM-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYFM-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.MAZDA_3: { + (Ecu.eps, 0x730, None): [ + b'BHN1-3210X-J-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K070-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'KR11-3210X-K-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'P5JD-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PY2P-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYJW-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYKC-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYKE-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'B63C-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GHP9-67Y10---41\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'B45A-437AS-0-08\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'B61L-67XK2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-Q\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.transmission, 0x7e1, None): [ + b'P52G-21PS1-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PY2S-21PS1-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYKA-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYKE-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYKE-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.MAZDA_6: { + (Ecu.eps, 0x730, None): [ + b'GBEF-3210X-B-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GBEF-3210X-C-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GFBC-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'PA34-188K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PX4F-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYH7-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYH7-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'K131-67XK2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'GBVH-437K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GBVH-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GDDM-437K2-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'B61L-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'B61L-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.transmission, 0x7e1, None): [ + b'PA28-21PS1-A\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYH3-21PS1-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PYH7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, + CAR.MAZDA_CX9_2021: { + (Ecu.eps, 0x730, None): [ + b'TC3M-3210X-A-00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'PXGW-188K2-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXGW-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM4-188K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM4-188K2-D\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM6-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM7-188K2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x764, None): [ + b'K131-67XK2-E\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'K131-67XK2-F\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x760, None): [ + b'TA0B-437K2-C\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x706, None): [ + b'GSH7-67XK2-M\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-N\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-P\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-S\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'GSH7-67XK2-U\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.transmission, 0x7e1, None): [ + b'PXM4-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM6-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'PXM7-21PS1-B\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/mazda/interface.py b/opendbc_repo/opendbc/car/mazda/interface.py new file mode 100755 index 0000000000..e9c76a56a6 --- /dev/null +++ b/opendbc_repo/opendbc/car/mazda/interface.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 +from opendbc.car import get_safety_config, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.mazda.values import CAR, LKAS_LIMITS +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.mazda.carcontroller import CarController +from opendbc.car.mazda.carstate import CarState +from opendbc.car.mazda.values import CAR, LKAS_LIMITS + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "mazda" + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.mazda)] + ret.radarUnavailable = True + + ret.dashcamOnly = candidate not in (CAR.MAZDA_CX5_2022, CAR.MAZDA_CX9_2021) + + ret.steerActuatorDelay = 0.1 + ret.steerLimitTimer = 0.8 + + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + if candidate not in (CAR.MAZDA_CX5_2022,): + ret.minSteerSpeed = LKAS_LIMITS.DISABLE_SPEED * CV.KPH_TO_MS + + ret.centerToFront = ret.wheelbase * 0.41 + + return ret diff --git a/opendbc_repo/opendbc/car/mazda/mazdacan.py b/opendbc_repo/opendbc/car/mazda/mazdacan.py new file mode 100644 index 0000000000..4a193e9dd6 --- /dev/null +++ b/opendbc_repo/opendbc/car/mazda/mazdacan.py @@ -0,0 +1,130 @@ +from opendbc.car.mazda.values import Buttons, MazdaFlags + + +def create_steering_control(packer, CP, frame, apply_torque, lkas): + + tmp = apply_torque + 2048 + + lo = tmp & 0xFF + hi = tmp >> 8 + + # copy values from camera + b1 = int(lkas["BIT_1"]) + er1 = int(lkas["ERR_BIT_1"]) + lnv = 0 + ldw = 0 + er2 = int(lkas["ERR_BIT_2"]) + + # Some older models do have these, newer models don't. + # Either way, they all work just fine if set to zero. + steering_angle = 0 + b2 = 0 + + tmp = steering_angle + 2048 + ahi = tmp >> 10 + amd = (tmp & 0x3FF) >> 2 + amd = (amd >> 4) | (( amd & 0xF) << 4) + alo = (tmp & 0x3) << 2 + + ctr = frame % 16 + # bytes: [ 1 ] [ 2 ] [ 3 ] [ 4 ] + csum = 249 - ctr - hi - lo - (lnv << 3) - er1 - (ldw << 7) - ( er2 << 4) - (b1 << 5) + + # bytes [ 5 ] [ 6 ] [ 7 ] + csum = csum - ahi - amd - alo - b2 + + if ahi == 1: + csum = csum + 15 + + if csum < 0: + if csum < -256: + csum = csum + 512 + else: + csum = csum + 256 + + csum = csum % 256 + + values = {} + if CP.flags & MazdaFlags.GEN1: + values = { + "LKAS_REQUEST": apply_torque, + "CTR": ctr, + "ERR_BIT_1": er1, + "LINE_NOT_VISIBLE" : lnv, + "LDW": ldw, + "BIT_1": b1, + "ERR_BIT_2": er2, + "STEERING_ANGLE": steering_angle, + "ANGLE_ENABLED": b2, + "CHKSUM": csum + } + + return packer.make_can_msg("CAM_LKAS", 0, values) + + +def create_alert_command(packer, cam_msg: dict, ldw: bool, steer_required: bool): + values = {s: cam_msg[s] for s in [ + "LINE_VISIBLE", + "LINE_NOT_VISIBLE", + "LANE_LINES", + "BIT1", + "BIT2", + "BIT3", + "NO_ERR_BIT", + "S1", + "S1_HBEAM", + ]} + values.update({ + # TODO: what's the difference between all these? do we need to send all? + "HANDS_WARN_3_BITS": 0b111 if steer_required else 0, + "HANDS_ON_STEER_WARN": steer_required, + "HANDS_ON_STEER_WARN_2": steer_required, + + # TODO: right lane works, left doesn't + # TODO: need to do something about L/R + "LDW_WARN_LL": 0, + "LDW_WARN_RL": 0, + }) + return packer.make_can_msg("CAM_LANEINFO", 0, values) + + +def create_button_cmd(packer, CP, counter, button): + + can = int(button == Buttons.CANCEL) + res = int(button == Buttons.RESUME) + inc = int(button == Buttons.SET_PLUS) + dec = int(button == Buttons.SET_MINUS) + + if CP.flags & MazdaFlags.GEN1: + values = { + "CAN_OFF": can, + "CAN_OFF_INV": (can + 1) % 2, + + "SET_P": inc, + "SET_P_INV": (inc + 1) % 2, + + "RES": res, + "RES_INV": (res + 1) % 2, + + "SET_M": dec, + "SET_M_INV": (dec + 1) % 2, + + "DISTANCE_LESS": 0, + "DISTANCE_LESS_INV": 1, + + "DISTANCE_MORE": 0, + "DISTANCE_MORE_INV": 1, + + "MODE_X": 0, + "MODE_X_INV": 1, + + "MODE_Y": 0, + "MODE_Y_INV": 1, + + "BIT1": 1, + "BIT2": 1, + "BIT3": 1, + "CTR": (counter + 1) % 16, + } + + return packer.make_can_msg("CRZ_BTNS", 0, values) diff --git a/opendbc_repo/opendbc/car/mazda/values.py b/opendbc_repo/opendbc/car/mazda/values.py new file mode 100644 index 0000000000..c01ff268bb --- /dev/null +++ b/opendbc_repo/opendbc/car/mazda/values.py @@ -0,0 +1,113 @@ +from dataclasses import dataclass, field +from enum import IntFlag + +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries + +Ecu = CarParams.Ecu + + +# Steer torque limits + +class CarControllerParams: + STEER_MAX = 800 # theoretical max_steer 2047 + STEER_DELTA_UP = 10 # torque increase per refresh + STEER_DELTA_DOWN = 25 # torque decrease per refresh + STEER_DRIVER_ALLOWANCE = 15 # allowed driver torque before start limiting + STEER_DRIVER_MULTIPLIER = 1 # weight driver torque + STEER_DRIVER_FACTOR = 1 # from dbc + STEER_ERROR_MAX = 350 # max delta between torque cmd and torque motor + STEER_STEP = 1 # 100 Hz + + def __init__(self, CP): + pass + + +@dataclass +class MazdaCarDocs(CarDocs): + package: str = "All" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.mazda])) + + +@dataclass(frozen=True, kw_only=True) +class MazdaCarSpecs(CarSpecs): + tireStiffnessFactor: float = 0.7 # not optimized yet + + +class MazdaFlags(IntFlag): + # Static flags + # Gen 1 hardware: same CAN messages and same camera + GEN1 = 1 + + +@dataclass +class MazdaPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'mazda_2017'}) + flags: int = MazdaFlags.GEN1 + + +class CAR(Platforms): + MAZDA_CX5 = MazdaPlatformConfig( + [MazdaCarDocs("Mazda CX-5 2017-21")], + MazdaCarSpecs(mass=3655 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=15.5) + ) + MAZDA_CX9 = MazdaPlatformConfig( + [MazdaCarDocs("Mazda CX-9 2016-20")], + MazdaCarSpecs(mass=4217 * CV.LB_TO_KG, wheelbase=3.1, steerRatio=17.6) + ) + MAZDA_3 = MazdaPlatformConfig( + [MazdaCarDocs("Mazda 3 2017-18")], + MazdaCarSpecs(mass=2875 * CV.LB_TO_KG, wheelbase=2.7, steerRatio=14.0) + ) + MAZDA_6 = MazdaPlatformConfig( + [MazdaCarDocs("Mazda 6 2017-20")], + MazdaCarSpecs(mass=3443 * CV.LB_TO_KG, wheelbase=2.83, steerRatio=15.5) + ) + MAZDA_CX9_2021 = MazdaPlatformConfig( + [MazdaCarDocs("Mazda CX-9 2021-23", video="https://youtu.be/dA3duO4a0O4")], + MAZDA_CX9.specs + ) + MAZDA_CX5_2022 = MazdaPlatformConfig( + [MazdaCarDocs("Mazda CX-5 2022-25")], + MAZDA_CX5.specs, + ) + + +class LKAS_LIMITS: + STEER_THRESHOLD = 15 + DISABLE_SPEED = 45 # kph + ENABLE_SPEED = 52 # kph + + +class Buttons: + NONE = 0 + SET_PLUS = 1 + SET_MINUS = 2 + RESUME = 3 + CANCEL = 4 + + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + # TODO: check data to ensure ABS does not skip ISO-TP frames on bus 0 + Request( + [StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], + [StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], + bus=0, + ), + ], +) + +DBC = CAR.create_dbc_map() + +if __name__ == "__main__": + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) diff --git a/opendbc_repo/opendbc/car/mock/__init__.py b/opendbc_repo/opendbc/car/mock/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/mock/carcontroller.py b/opendbc_repo/opendbc/car/mock/carcontroller.py new file mode 100644 index 0000000000..6336dcfcbe --- /dev/null +++ b/opendbc_repo/opendbc/car/mock/carcontroller.py @@ -0,0 +1,6 @@ +from opendbc.car.interfaces import CarControllerBase + + +class CarController(CarControllerBase): + def update(self, CC, CS, now_nanos): + return CC.actuators.as_builder(), [] diff --git a/opendbc_repo/opendbc/car/mock/carstate.py b/opendbc_repo/opendbc/car/mock/carstate.py new file mode 100644 index 0000000000..9cbdf99e91 --- /dev/null +++ b/opendbc_repo/opendbc/car/mock/carstate.py @@ -0,0 +1,7 @@ +from opendbc.car import structs +from opendbc.car.interfaces import CarStateBase + + +class CarState(CarStateBase): + def update(self, *_) -> structs.CarState: + return structs.CarState() diff --git a/opendbc_repo/opendbc/car/mock/interface.py b/opendbc_repo/opendbc/car/mock/interface.py new file mode 100755 index 0000000000..3bcc2f8f11 --- /dev/null +++ b/opendbc_repo/opendbc/car/mock/interface.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +from opendbc.car import structs +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.mock.carcontroller import CarController +from opendbc.car.mock.carstate import CarState + + +# mocked car interface for dashcam mode +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "mock" + ret.mass = 1700. + ret.wheelbase = 2.70 + ret.centerToFront = ret.wheelbase * 0.5 + ret.steerRatio = 13. + ret.dashcamOnly = True + return ret diff --git a/opendbc_repo/opendbc/car/mock/values.py b/opendbc_repo/opendbc/car/mock/values.py new file mode 100644 index 0000000000..aa844de4c5 --- /dev/null +++ b/opendbc_repo/opendbc/car/mock/values.py @@ -0,0 +1,9 @@ +from opendbc.car import CarSpecs, PlatformConfig, Platforms + + +class CAR(Platforms): + MOCK = PlatformConfig( + [], + CarSpecs(mass=1700, wheelbase=2.7, steerRatio=13), + {} + ) diff --git a/opendbc_repo/opendbc/car/nissan/__init__.py b/opendbc_repo/opendbc/car/nissan/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/nissan/carcontroller.py b/opendbc_repo/opendbc/car/nissan/carcontroller.py new file mode 100644 index 0000000000..dd6ca930b1 --- /dev/null +++ b/opendbc_repo/opendbc/car/nissan/carcontroller.py @@ -0,0 +1,75 @@ +from opendbc.can import CANPacker +from opendbc.car import Bus, apply_std_steer_angle_limits, structs +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.nissan import nissancan +from opendbc.car.nissan.values import CAR, CarControllerParams + +VisualAlert = structs.CarControl.HUDControl.VisualAlert + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.car_fingerprint = CP.carFingerprint + + self.apply_angle_last = 0 + + self.packer = CANPacker(dbc_names[Bus.pt]) + + def update(self, CC, CS, now_nanos): + actuators = CC.actuators + hud_control = CC.hudControl + pcm_cancel_cmd = CC.cruiseControl.cancel + + can_sends = [] + + ### STEER ### + steer_hud_alert = 1 if hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw) else 0 + + # windup slower + self.apply_angle_last = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgoRaw, + CS.out.steeringAngleDeg, CC.latActive, CarControllerParams.ANGLE_LIMITS) + + lkas_max_torque = 0 + if CC.latActive: + # Max torque from driver before EPS will give up and not apply torque + if not bool(CS.out.steeringPressed): + lkas_max_torque = CarControllerParams.LKAS_MAX_TORQUE + else: + # Scale max torque based on how much torque the driver is applying to the wheel + lkas_max_torque = max( + # Scale max torque down to half LKAX_MAX_TORQUE as a minimum + CarControllerParams.LKAS_MAX_TORQUE * 0.5, + # Start scaling torque at STEER_THRESHOLD + CarControllerParams.LKAS_MAX_TORQUE - 0.6 * max(0, abs(CS.out.steeringTorque) - CarControllerParams.STEER_THRESHOLD) + ) + + if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL, CAR.NISSAN_ALTIMA) and pcm_cancel_cmd: + can_sends.append(nissancan.create_acc_cancel_cmd(self.packer, self.car_fingerprint, CS.cruise_throttle_msg)) + + # TODO: Find better way to cancel! + # For some reason spamming the cancel button is unreliable on the Leaf + # We now cancel by making propilot think the seatbelt is unlatched, + # this generates a beep and a warning message every time you disengage + if self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC) and self.frame % 2 == 0: + can_sends.append(nissancan.create_cancel_msg(self.packer, CS.cancel_msg, pcm_cancel_cmd)) + + can_sends.append(nissancan.create_steering_control( + self.packer, self.apply_angle_last, self.frame, CC.latActive, lkas_max_torque)) + + # Below are the HUD messages. We copy the stock message and modify + if self.CP.carFingerprint != CAR.NISSAN_ALTIMA: + if self.frame % 2 == 0: + can_sends.append(nissancan.create_lkas_hud_msg(self.packer, CS.lkas_hud_msg, CC.enabled, hud_control.leftLaneVisible, hud_control.rightLaneVisible, + hud_control.leftLaneDepart, hud_control.rightLaneDepart)) + + if self.frame % 50 == 0: + can_sends.append(nissancan.create_lkas_hud_info_msg( + self.packer, CS.lkas_hud_info_msg, steer_hud_alert + )) + + new_actuators = actuators.as_builder() + new_actuators.steeringAngleDeg = self.apply_angle_last + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/nissan/carstate.py b/opendbc_repo/opendbc/car/nissan/carstate.py new file mode 100644 index 0000000000..70bb8a59b2 --- /dev/null +++ b/opendbc_repo/opendbc/car/nissan/carstate.py @@ -0,0 +1,143 @@ +import copy +from collections import deque +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, create_button_events, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase +from opendbc.car.nissan.values import CAR, DBC, CarControllerParams + +ButtonType = structs.CarState.ButtonEvent.Type + +TORQUE_SAMPLES = 12 + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + + self.lkas_hud_msg = {} + self.lkas_hud_info_msg = {} + + self.steeringTorqueSamples = deque(TORQUE_SAMPLES*[0], TORQUE_SAMPLES) + self.shifter_values = can_define.dv["GEARBOX"]["GEAR_SHIFTER"] + + self.distance_button = 0 + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + cp_adas = can_parsers[Bus.adas] + + ret = structs.CarState() + + prev_distance_button = self.distance_button + self.distance_button = cp.vl["CRUISE_THROTTLE"]["FOLLOW_DISTANCE_BUTTON"] + + if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL, CAR.NISSAN_ALTIMA): + ret.gas = cp.vl["GAS_PEDAL"]["GAS_PEDAL"] + elif self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): + ret.gas = cp.vl["CRUISE_THROTTLE"]["GAS_PEDAL"] + + ret.gasPressed = bool(ret.gas > 3) + + if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL, CAR.NISSAN_ALTIMA): + ret.brakePressed = bool(cp.vl["DOORS_LIGHTS"]["USER_BRAKE_PRESSED"]) + elif self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): + ret.brakePressed = bool(cp.vl["CRUISE_THROTTLE"]["USER_BRAKE_PRESSED"]) + + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["WHEEL_SPEEDS_FRONT"]["WHEEL_SPEED_FL"], + cp.vl["WHEEL_SPEEDS_FRONT"]["WHEEL_SPEED_FR"], + cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RL"], + cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RR"], + ) + # safety uses the rear wheel speeds for the speed measurement and angle limiting + ret.vEgoRaw = (ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 2.0 + + v_ego_raw_full = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4.0 + ret.vEgo, ret.aEgo = self.update_speed_kf(v_ego_raw_full) + ret.standstill = cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RL"] == 0.0 and cp.vl["WHEEL_SPEEDS_REAR"]["WHEEL_SPEED_RR"] == 0.0 + + if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: + ret.cruiseState.enabled = bool(cp.vl["CRUISE_STATE"]["CRUISE_ENABLED"]) + else: + ret.cruiseState.enabled = bool(cp_adas.vl["CRUISE_STATE"]["CRUISE_ENABLED"]) + + if self.CP.carFingerprint in (CAR.NISSAN_ROGUE, CAR.NISSAN_XTRAIL): + ret.seatbeltUnlatched = cp.vl["HUD"]["SEATBELT_DRIVER_LATCHED"] == 0 + ret.cruiseState.available = bool(cp_cam.vl["PRO_PILOT"]["CRUISE_ON"]) + elif self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): + if self.CP.carFingerprint == CAR.NISSAN_LEAF: + ret.seatbeltUnlatched = cp.vl["SEATBELT"]["SEATBELT_DRIVER_LATCHED"] == 0 + elif self.CP.carFingerprint == CAR.NISSAN_LEAF_IC: + ret.seatbeltUnlatched = cp.vl["CANCEL_MSG"]["CANCEL_SEATBELT"] == 1 + ret.cruiseState.available = bool(cp.vl["CRUISE_THROTTLE"]["CRUISE_AVAILABLE"]) + elif self.CP.carFingerprint == CAR.NISSAN_ALTIMA: + ret.seatbeltUnlatched = cp.vl["HUD"]["SEATBELT_DRIVER_LATCHED"] == 0 + ret.cruiseState.available = bool(cp_adas.vl["PRO_PILOT"]["CRUISE_ON"]) + + if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: + speed = cp.vl["PROPILOT_HUD"]["SET_SPEED"] + else: + speed = cp_adas.vl["PROPILOT_HUD"]["SET_SPEED"] + + if speed != 255: + if self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): + conversion = CV.MPH_TO_MS if cp.vl["HUD_SETTINGS"]["SPEED_MPH"] else CV.KPH_TO_MS + else: + conversion = CV.MPH_TO_MS if cp.vl["HUD"]["SPEED_MPH"] else CV.KPH_TO_MS + ret.cruiseState.speed = speed * conversion + ret.cruiseState.speedCluster = (speed - 1) * conversion # Speed on HUD is always 1 lower than actually sent on can bus + + if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: + ret.steeringTorque = cp_cam.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_DRIVER"] + else: + ret.steeringTorque = cp.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_DRIVER"] + + self.steeringTorqueSamples.append(ret.steeringTorque) + # Filtering driver torque to prevent steeringPressed false positives + ret.steeringPressed = bool(abs(sum(self.steeringTorqueSamples) / TORQUE_SAMPLES) > CarControllerParams.STEER_THRESHOLD) + + ret.steeringAngleDeg = cp.vl["STEER_ANGLE_SENSOR"]["STEER_ANGLE"] + + ret.leftBlinker = bool(cp.vl["LIGHTS"]["LEFT_BLINKER"]) + ret.rightBlinker = bool(cp.vl["LIGHTS"]["RIGHT_BLINKER"]) + + ret.doorOpen = any([cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_RR"], + cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_RL"], + cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_FR"], + cp.vl["DOORS_LIGHTS"]["DOOR_OPEN_FL"]]) + + ret.espDisabled = bool(cp.vl["ESP"]["ESP_DISABLED"]) + + can_gear = int(cp.vl["GEARBOX"]["GEAR_SHIFTER"]) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + + # stock lkas should be off + # TODO: is this needed? + if self.CP.carFingerprint == CAR.NISSAN_ALTIMA: + ret.invalidLkasSetting = bool(cp.vl["LKAS_SETTINGS"]["LKAS_ENABLED"]) + else: + ret.invalidLkasSetting = bool(cp_adas.vl["LKAS_SETTINGS"]["LKAS_ENABLED"]) + + self.cruise_throttle_msg = copy.copy(cp.vl["CRUISE_THROTTLE"]) + + if self.CP.carFingerprint in (CAR.NISSAN_LEAF, CAR.NISSAN_LEAF_IC): + self.cancel_msg = copy.copy(cp.vl["CANCEL_MSG"]) + + if self.CP.carFingerprint != CAR.NISSAN_ALTIMA: + self.lkas_hud_msg = copy.copy(cp_adas.vl["PROPILOT_HUD"]) + self.lkas_hud_info_msg = copy.copy(cp_adas.vl["PROPILOT_HUD_INFO_MSG"]) + + ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) + + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 1 if CP.carFingerprint == CAR.NISSAN_ALTIMA else 0), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0 if CP.carFingerprint == CAR.NISSAN_ALTIMA else 1), + Bus.adas: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + } diff --git a/opendbc_repo/opendbc/car/nissan/fingerprints.py b/opendbc_repo/opendbc/car/nissan/fingerprints.py new file mode 100644 index 0000000000..ab1ae08abe --- /dev/null +++ b/opendbc_repo/opendbc/car/nissan/fingerprints.py @@ -0,0 +1,123 @@ +# ruff: noqa: E501 +from opendbc.car.structs import CarParams +from opendbc.car.nissan.values import CAR + +Ecu = CarParams.Ecu + +FINGERPRINTS = { + CAR.NISSAN_XTRAIL: [{ + 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 520: 2, 523: 6, 548: 8, 645: 8, 658: 8, 665: 8, 666: 8, 674: 2, 682: 8, 683: 8, 689: 8, 723: 8, 758: 3, 768: 2, 783: 3, 851: 8, 855: 8, 1041: 8, 1055: 2, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1111: 4, 1227: 8, 1228: 8, 1247: 4, 1266: 8, 1273: 7, 1342: 1, 1376: 6, 1401: 8, 1474: 2, 1497: 3, 1821: 8, 1823: 8, 1837: 8, 2015: 8, 2016: 8, 2024: 8 + }, + { + 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 520: 2, 523: 6, 527: 1, 548: 8, 637: 4, 645: 8, 658: 8, 665: 8, 666: 8, 674: 2, 682: 8, 683: 8, 689: 8, 723: 8, 758: 3, 768: 6, 783: 3, 851: 8, 855: 8, 1041: 8, 1055: 2, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1111: 4, 1227: 8, 1228: 8, 1247: 4, 1266: 8, 1273: 7, 1342: 1, 1376: 6, 1401: 8, 1474: 8, 1497: 3, 1534: 6, 1792: 8, 1821: 8, 1823: 8, 1837: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 2015: 8, 2016: 8, 2024: 8 + }], + CAR.NISSAN_LEAF: [{ + 2: 5, 42: 6, 264: 3, 361: 8, 372: 8, 384: 8, 389: 8, 403: 8, 459: 7, 460: 4, 470: 8, 520: 1, 569: 8, 581: 8, 634: 7, 640: 8, 644: 8, 645: 8, 646: 5, 658: 8, 682: 8, 683: 8, 689: 8, 724: 6, 758: 3, 761: 2, 783: 3, 852: 8, 853: 8, 856: 8, 861: 8, 944: 1, 976: 6, 1008: 7, 1011: 7, 1057: 3, 1227: 8, 1228: 8, 1261: 5, 1342: 1, 1354: 8, 1361: 8, 1459: 8, 1477: 8, 1497: 3, 1549: 8, 1573: 6, 1821: 8, 1837: 8, 1856: 8, 1859: 8, 1861: 8, 1864: 8, 1874: 8, 1888: 8, 1891: 8, 1893: 8, 1906: 8, 1947: 8, 1949: 8, 1979: 8, 1981: 8, 2016: 8, 2017: 8, 2021: 8, 643: 5, 1792: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8 + }, + { + 2: 5, 42: 8, 264: 3, 361: 8, 372: 8, 384: 8, 389: 8, 403: 8, 459: 7, 460: 4, 470: 8, 520: 1, 569: 8, 581: 8, 634: 7, 640: 8, 643: 5, 644: 8, 645: 8, 646: 5, 658: 8, 682: 8, 683: 8, 689: 8, 724: 6, 758: 3, 761: 2, 772: 8, 773: 6, 774: 7, 775: 8, 776: 6, 777: 7, 778: 6, 783: 3, 852: 8, 853: 8, 856: 8, 861: 8, 943: 8, 944: 1, 976: 6, 1008: 7, 1009: 8, 1010: 8, 1011: 7, 1012: 8, 1013: 8, 1019: 8, 1020: 8, 1021: 8, 1022: 8, 1057: 3, 1227: 8, 1228: 8, 1261: 5, 1342: 1, 1354: 8, 1361: 8, 1402: 8, 1459: 8, 1477: 8, 1497: 3, 1549: 8, 1573: 6, 1821: 8, 1837: 8 + }], + CAR.NISSAN_LEAF_IC: [{ + 2: 5, 42: 6, 264: 3, 282: 8, 361: 8, 372: 8, 384: 8, 389: 8, 403: 8, 459: 7, 460: 4, 470: 8, 520: 1, 569: 8, 581: 8, 634: 7, 640: 8, 643: 5, 644: 8, 645: 8, 646: 5, 658: 8, 682: 8, 683: 8, 689: 8, 756: 5, 758: 3, 761: 2, 783: 3, 830: 2, 852: 8, 853: 8, 856: 8, 861: 8, 943: 8, 944: 1, 1001: 6, 1057: 3, 1227: 8, 1228: 8, 1229: 8, 1342: 1, 1354: 8, 1361: 8, 1459: 8, 1477: 8, 1497: 3, 1514: 6, 1549: 8, 1573: 6, 1792: 8, 1821: 8, 1822: 8, 1837: 8, 1838: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8, 2016: 8, 2017: 8 + }], + CAR.NISSAN_ROGUE: [{ + 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 520: 2, 523: 6, 548: 8, 634: 7, 643: 5, 645: 8, 658: 8, 665: 8, 666: 8, 674: 2, 682: 8, 683: 8, 689: 8, 723: 8, 758: 3, 772: 8, 773: 6, 774: 7, 775: 8, 776: 6, 777: 7, 778: 6, 783: 3, 851: 8, 855: 8, 1041: 8, 1042: 8, 1055: 2, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1110: 7, 1111: 7, 1227: 8, 1228: 8, 1247: 4, 1266: 8, 1273: 7, 1342: 1, 1376: 6, 1401: 8, 1474: 2, 1497: 3, 1534: 7, 1792: 8, 1821: 8, 1823: 8, 1837: 8, 1839: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8, 2016: 8, 2017: 8, 2024: 8, 2025: 8 + }], + CAR.NISSAN_ALTIMA: [{ + 2: 5, 42: 6, 346: 6, 347: 5, 348: 8, 349: 7, 361: 8, 386: 8, 389: 8, 397: 8, 398: 8, 403: 8, 438: 8, 451: 8, 517: 8, 520: 2, 522: 8, 523: 6, 539: 8, 541: 7, 542: 8, 543: 8, 544: 8, 545: 8, 546: 8, 547: 8, 548: 8, 570: 8, 576: 8, 577: 8, 582: 8, 583: 8, 584: 8, 586: 8, 587: 8, 588: 8, 589: 8, 590: 8, 591: 8, 592: 8, 600: 8, 601: 8, 610: 8, 611: 8, 612: 8, 614: 8, 615: 8, 616: 8, 617: 8, 622: 8, 623: 8, 634: 7, 638: 8, 645: 8, 648: 5, 654: 6, 658: 8, 659: 8, 660: 8, 661: 8, 665: 8, 666: 8, 674: 2, 675: 8, 676: 8, 682: 8, 683: 8, 684: 8, 685: 8, 686: 8, 687: 8, 689: 8, 690: 8, 703: 8, 708: 7, 709: 7, 711: 7, 712: 7, 713: 7, 714: 8, 715: 8, 716: 8, 717: 7, 718: 7, 719: 7, 720: 7, 723: 8, 726: 7, 727: 7, 728: 7, 735: 8, 746: 8, 748: 6, 749: 6, 750: 8, 758: 3, 772: 8, 773: 6, 774: 7, 775: 8, 776: 6, 777: 7, 778: 6, 779: 7, 781: 7, 782: 7, 783: 3, 851: 8, 855: 5, 1001: 6, 1041: 8, 1042: 8, 1055: 3, 1100: 7, 1104: 4, 1105: 6, 1107: 4, 1108: 8, 1110: 7, 1111: 7, 1144: 7, 1145: 7, 1227: 8, 1228: 8, 1229: 8, 1232: 8, 1247: 4, 1258: 8, 1259: 8, 1266: 8, 1273: 7, 1306: 1, 1314: 8, 1323: 8, 1324: 8, 1342: 1, 1376: 8, 1401: 8, 1454: 8, 1497: 3, 1514: 6, 1526: 8, 1527: 5, 1792: 8, 1821: 8, 1823: 8, 1837: 8, 1872: 8, 1937: 8, 1953: 8, 1968: 8, 1988: 8, 2000: 8, 2001: 8, 2004: 8, 2005: 8, 2015: 8, 2016: 8, 2017: 8, 2024: 8, 2025: 8 + }], +} + +FW_VERSIONS = { + CAR.NISSAN_ALTIMA: { + (Ecu.fwdCamera, 0x707, None): [ + b'284N86CA1D', + ], + (Ecu.eps, 0x742, None): [ + b'6CA2B\xa9A\x02\x02G8A89P90D6A\x00\x00\x01\x80', + ], + (Ecu.engine, 0x7e0, None): [ + b'237109HE2B', + ], + (Ecu.gateway, 0x18dad0f1, None): [ + b'284U29HE0A', + ], + }, + CAR.NISSAN_LEAF: { + (Ecu.abs, 0x740, None): [ + b'476605SA1C', + b'476605SA7D', + b'476605SC2D', + b'476606WK7B', + b'476606WK9B', + ], + (Ecu.eps, 0x742, None): [ + b'5SA2A\x99A\x05\x02N123F\x15b\x00\x00\x00\x00\x00\x00\x00\x80', + b'5SA2A\xb7A\x05\x02N123F\x15\xa2\x00\x00\x00\x00\x00\x00\x00\x80', + b'5SN2A\xb7A\x05\x02N123F\x15\xa2\x00\x00\x00\x00\x00\x00\x00\x80', + b'5SN2A\xb7A\x05\x02N126F\x15\xb2\x00\x00\x00\x00\x00\x00\x00\x80', + ], + (Ecu.fwdCamera, 0x707, None): [ + b'5SA0ADB\x04\x18\x00\x00\x00\x00\x00_*6\x04\x94a\x00\x00\x00\x80', + b'5SA2ADB\x04\x18\x00\x00\x00\x00\x00_*6\x04\x94a\x00\x00\x00\x80', + b'6WK2ADB\x04\x18\x00\x00\x00\x00\x00R;1\x18\x99\x10\x00\x00\x00\x80', + b'6WK2BDB\x04\x18\x00\x00\x00\x00\x00R;1\x18\x99\x10\x00\x00\x00\x80', + b'6WK2CDB\x04\x18\x00\x00\x00\x00\x00R=1\x18\x99\x10\x00\x00\x00\x80', + ], + (Ecu.gateway, 0x18dad0f1, None): [ + b'284U25SA3C', + b'284U25SP0C', + b'284U25SP1C', + b'284U26WK0A', + b'284U26WK0C', + ], + }, + CAR.NISSAN_LEAF_IC: { + (Ecu.fwdCamera, 0x707, None): [ + b'5SH1BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', + b'5SH3BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', + b'5SH4BDB\x04\x18\x00\x00\x00\x00\x00_-?\x04\x91\xf2\x00\x00\x00\x80', + b'5SK0ADB\x04\x18\x00\x00\x00\x00\x00_(5\x07\x9aQ\x00\x00\x00\x80', + ], + (Ecu.abs, 0x740, None): [ + b'476605SD2E', + b'476605SH1D', + b'476605SH7D', + b'476605SK2A', + ], + (Ecu.eps, 0x742, None): [ + b'5SH2A\x99A\x05\x02N123F\x15\x81\x00\x00\x00\x00\x00\x00\x00\x80', + b'5SH2A\xb7A\x05\x02N123F\x15\xa3\x00\x00\x00\x00\x00\x00\x00\x80', + b'5SH2C\xb7A\x05\x02N123F\x15\xa3\x00\x00\x00\x00\x00\x00\x00\x80', + b'5SK3A\x99A\x05\x02N123F\x15u\x00\x00\x00\x00\x00\x00\x00\x80', + ], + (Ecu.gateway, 0x18dad0f1, None): [ + b'284U25SF0C', + b'284U25SH3A', + b'284U25SK2D', + b'284U25SR0B', + ], + }, + CAR.NISSAN_XTRAIL: { + (Ecu.fwdCamera, 0x707, None): [ + b'284N86FR2A', + ], + (Ecu.abs, 0x740, None): [ + b'6FU0AD\x11\x02\x00\x02e\x95e\x80iQ#\x01\x00\x00\x00\x00\x00\x80', + b'6FU1BD\x11\x02\x00\x02e\x95e\x80iX#\x01\x00\x00\x00\x00\x00\x80', + ], + (Ecu.eps, 0x742, None): [ + b'6FP2A\x99A\x05\x02N123F\x18\x02\x00\x00\x00\x00\x00\x00\x00\x80', + ], + (Ecu.combinationMeter, 0x743, None): [ + b'6FR2A\x18B\x05\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', + ], + (Ecu.engine, 0x7e0, None): [ + b'6FR9A\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', + b'6FU9B\xa0A\x06\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80', + ], + (Ecu.gateway, 0x18dad0f1, None): [ + b'284U26FR0E', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/nissan/interface.py b/opendbc_repo/opendbc/car/nissan/interface.py new file mode 100644 index 0000000000..bac7b3f1af --- /dev/null +++ b/opendbc_repo/opendbc/car/nissan/interface.py @@ -0,0 +1,29 @@ +from opendbc.car import get_safety_config, structs +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.nissan.carcontroller import CarController +from opendbc.car.nissan.carstate import CarState +from opendbc.car.nissan.values import CAR, NissanSafetyFlags + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "nissan" + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.nissan)] + ret.autoResumeSng = False + + ret.steerLimitTimer = 1.0 + + ret.steerActuatorDelay = 0.1 + + ret.steerControlType = structs.CarParams.SteerControlType.angle + ret.radarUnavailable = True + + if candidate == CAR.NISSAN_ALTIMA: + # Altima has EPS on C-CAN unlike the others that have it on V-CAN + ret.safetyConfigs[0].safetyParam |= NissanSafetyFlags.ALT_EPS_BUS.value + + return ret diff --git a/opendbc_repo/opendbc/car/nissan/nissancan.py b/opendbc_repo/opendbc/car/nissan/nissancan.py new file mode 100644 index 0000000000..0c95ad1854 --- /dev/null +++ b/opendbc_repo/opendbc/car/nissan/nissancan.py @@ -0,0 +1,154 @@ +import crcmod +from opendbc.car.nissan.values import CAR + +# TODO: add this checksum to the CANPacker +nissan_checksum = crcmod.mkCrcFun(0x11d, initCrc=0x00, rev=False, xorOut=0xff) + + +def create_steering_control(packer, apply_torque, frame, steer_on, lkas_max_torque): + values = { + "COUNTER": frame % 0x10, + "DESIRED_ANGLE": apply_torque, + "SET_0x80_2": 0x80, + "SET_0x80": 0x80, + "MAX_TORQUE": lkas_max_torque if steer_on else 0, + "LKA_ACTIVE": steer_on, + } + + dat = packer.make_can_msg("LKAS", 0, values)[1] + + values["CHECKSUM"] = nissan_checksum(dat[:7]) + return packer.make_can_msg("LKAS", 0, values) + + +def create_acc_cancel_cmd(packer, car_fingerprint, cruise_throttle_msg): + values = {s: cruise_throttle_msg[s] for s in [ + "COUNTER", + "PROPILOT_BUTTON", + "CANCEL_BUTTON", + "GAS_PEDAL_INVERTED", + "SET_BUTTON", + "RES_BUTTON", + "FOLLOW_DISTANCE_BUTTON", + "NO_BUTTON_PRESSED", + "GAS_PEDAL", + "USER_BRAKE_PRESSED", + "NEW_SIGNAL_2", + "GAS_PRESSED_INVERTED", + "unsure1", + "unsure2", + "unsure3", + ]} + can_bus = 1 if car_fingerprint == CAR.NISSAN_ALTIMA else 2 + + values["CANCEL_BUTTON"] = 1 + values["NO_BUTTON_PRESSED"] = 0 + values["PROPILOT_BUTTON"] = 0 + values["SET_BUTTON"] = 0 + values["RES_BUTTON"] = 0 + values["FOLLOW_DISTANCE_BUTTON"] = 0 + + return packer.make_can_msg("CRUISE_THROTTLE", can_bus, values) + + +def create_cancel_msg(packer, cancel_msg, cruise_cancel): + values = {s: cancel_msg[s] for s in [ + "CANCEL_SEATBELT", + "NEW_SIGNAL_1", + "NEW_SIGNAL_2", + "NEW_SIGNAL_3", + ]} + + if cruise_cancel: + values["CANCEL_SEATBELT"] = 1 + + return packer.make_can_msg("CANCEL_MSG", 2, values) + + +def create_lkas_hud_msg(packer, lkas_hud_msg, enabled, left_line, right_line, left_lane_depart, right_lane_depart): + values = {s: lkas_hud_msg[s] for s in [ + "LARGE_WARNING_FLASHING", + "SIDE_RADAR_ERROR_FLASHING1", + "SIDE_RADAR_ERROR_FLASHING2", + "LEAD_CAR", + "LEAD_CAR_ERROR", + "FRONT_RADAR_ERROR", + "FRONT_RADAR_ERROR_FLASHING", + "SIDE_RADAR_ERROR_FLASHING3", + "LKAS_ERROR_FLASHING", + "SAFETY_SHIELD_ACTIVE", + "RIGHT_LANE_GREEN_FLASH", + "LEFT_LANE_GREEN_FLASH", + "FOLLOW_DISTANCE", + "AUDIBLE_TONE", + "SPEED_SET_ICON", + "SMALL_STEERING_WHEEL_ICON", + "unknown59", + "unknown55", + "unknown26", + "unknown28", + "unknown31", + "SET_SPEED", + "unknown43", + "unknown08", + "unknown05", + "unknown02", + ]} + + values["RIGHT_LANE_YELLOW_FLASH"] = 1 if right_lane_depart else 0 + values["LEFT_LANE_YELLOW_FLASH"] = 1 if left_lane_depart else 0 + + values["LARGE_STEERING_WHEEL_ICON"] = 2 if enabled else 0 + values["RIGHT_LANE_GREEN"] = 1 if right_line and enabled else 0 + values["LEFT_LANE_GREEN"] = 1 if left_line and enabled else 0 + + return packer.make_can_msg("PROPILOT_HUD", 0, values) + + +def create_lkas_hud_info_msg(packer, lkas_hud_info_msg, steer_hud_alert): + values = {s: lkas_hud_info_msg[s] for s in [ + "NA_HIGH_ACCEL_TEMP", + "SIDE_RADAR_NA_HIGH_CABIN_TEMP", + "SIDE_RADAR_MALFUNCTION", + "LKAS_MALFUNCTION", + "FRONT_RADAR_MALFUNCTION", + "SIDE_RADAR_NA_CLEAN_REAR_CAMERA", + "NA_POOR_ROAD_CONDITIONS", + "CURRENTLY_UNAVAILABLE", + "SAFETY_SHIELD_OFF", + "FRONT_COLLISION_NA_FRONT_RADAR_OBSTRUCTION", + "PEDAL_MISSAPPLICATION_SYSTEM_ACTIVATED", + "SIDE_IMPACT_NA_RADAR_OBSTRUCTION", + "WARNING_DO_NOT_ENTER", + "SIDE_IMPACT_SYSTEM_OFF", + "SIDE_IMPACT_MALFUNCTION", + "FRONT_COLLISION_MALFUNCTION", + "SIDE_RADAR_MALFUNCTION2", + "LKAS_MALFUNCTION2", + "FRONT_RADAR_MALFUNCTION2", + "PROPILOT_NA_MSGS", + "BOTTOM_MSG", + "HANDS_ON_WHEEL_WARNING", + "WARNING_STEP_ON_BRAKE_NOW", + "PROPILOT_NA_FRONT_CAMERA_OBSTRUCTED", + "PROPILOT_NA_HIGH_CABIN_TEMP", + "WARNING_PROPILOT_MALFUNCTION", + "ACC_UNAVAILABLE_HIGH_CABIN_TEMP", + "ACC_NA_FRONT_CAMERA_IMPARED", + "unknown07", + "unknown10", + "unknown15", + "unknown23", + "unknown19", + "unknown31", + "unknown32", + "unknown46", + "unknown61", + "unknown55", + "unknown50", + ]} + + if steer_hud_alert: + values["HANDS_ON_WHEEL_WARNING"] = 1 + + return packer.make_can_msg("PROPILOT_HUD_INFO_MSG", 0, values) diff --git a/opendbc_repo/opendbc/car/nissan/values.py b/opendbc_repo/opendbc/car/nissan/values.py new file mode 100644 index 0000000000..a2c93f8fe3 --- /dev/null +++ b/opendbc_repo/opendbc/car/nissan/values.py @@ -0,0 +1,124 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag + +from opendbc.car import AngleSteeringLimits, Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries + +Ecu = CarParams.Ecu + + +class CarControllerParams: + ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( + # When output steering Angle not within range -1311 and 1310, + # CANPacker packs wrong angle output to be decoded by panda + 600, # deg, reasonable limit + ([0., 5., 15.], [5., .8, .15]), + ([0., 5., 15.], [5., 3.5, 0.4]), + ) + + LKAS_MAX_TORQUE = 1 # A value of 1 is easy to overpower + STEER_THRESHOLD = 1.0 + + def __init__(self, CP): + pass + + +class NissanSafetyFlags(IntFlag): + ALT_EPS_BUS = 1 + + +class Footnote(Enum): + SETUP = CarFootnote( + "See more setup details for Nissan.", + Column.MAKE, setup_note=True) + + +@dataclass +class NissanCarDocs(CarDocs): + package: str = "ProPILOT Assist" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.nissan_a])) + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.SETUP]) + + +@dataclass(frozen=True) +class NissanCarSpecs(CarSpecs): + centerToFrontRatio: float = 0.44 + steerRatio: float = 17. + + +@dataclass +class NissanPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'nissan_x_trail_2017_generated'}) + + +class CAR(Platforms): + NISSAN_XTRAIL = NissanPlatformConfig( + [NissanCarDocs("Nissan X-Trail 2017")], + NissanCarSpecs(mass=1610, wheelbase=2.705) + ) + NISSAN_LEAF = NissanPlatformConfig( + [NissanCarDocs("Nissan Leaf 2018-23", video="https://youtu.be/vaMbtAh_0cY")], + NissanCarSpecs(mass=1610, wheelbase=2.705), + {Bus.pt: 'nissan_leaf_2018_generated'}, + ) + # Leaf with ADAS ECU found behind instrument cluster instead of glovebox + # Currently the only known difference between them is the inverted seatbelt signal. + NISSAN_LEAF_IC = NISSAN_LEAF.override(car_docs=[]) + NISSAN_ROGUE = NissanPlatformConfig( + [NissanCarDocs("Nissan Rogue 2018-20")], + NissanCarSpecs(mass=1610, wheelbase=2.705) + ) + NISSAN_ALTIMA = NissanPlatformConfig( + [NissanCarDocs("Nissan Altima 2019-20", car_parts=CarParts.common([CarHarness.nissan_b]))], + NissanCarSpecs(mass=1492, wheelbase=2.824) + ) + + +DBC = CAR.create_dbc_map() + +# Default diagnostic session +NISSAN_DIAGNOSTIC_REQUEST_KWP = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, 0x81]) +NISSAN_DIAGNOSTIC_RESPONSE_KWP = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, 0x81]) + +# Manufacturer specific +NISSAN_DIAGNOSTIC_REQUEST_KWP_2 = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, 0xda]) +NISSAN_DIAGNOSTIC_RESPONSE_KWP_2 = bytes([uds.SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL + 0x40, 0xda]) + +NISSAN_VERSION_REQUEST_KWP = b'\x21\x83' +NISSAN_VERSION_RESPONSE_KWP = b'\x61\x83' + +NISSAN_RX_OFFSET = 0x20 + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[request for bus, logging in ((0, False), (1, True)) for request in [ + Request( + [NISSAN_DIAGNOSTIC_REQUEST_KWP, NISSAN_VERSION_REQUEST_KWP], + [NISSAN_DIAGNOSTIC_RESPONSE_KWP, NISSAN_VERSION_RESPONSE_KWP], + bus=bus, + logging=logging, + ), + Request( + [NISSAN_DIAGNOSTIC_REQUEST_KWP, NISSAN_VERSION_REQUEST_KWP], + [NISSAN_DIAGNOSTIC_RESPONSE_KWP, NISSAN_VERSION_RESPONSE_KWP], + rx_offset=NISSAN_RX_OFFSET, + bus=bus, + logging=logging, + ), + # Rogue's engine solely responds to this + Request( + [NISSAN_DIAGNOSTIC_REQUEST_KWP_2, NISSAN_VERSION_REQUEST_KWP], + [NISSAN_DIAGNOSTIC_RESPONSE_KWP_2, NISSAN_VERSION_RESPONSE_KWP], + bus=bus, + logging=logging, + ), + Request( + [StdQueries.MANUFACTURER_SOFTWARE_VERSION_REQUEST], + [StdQueries.MANUFACTURER_SOFTWARE_VERSION_RESPONSE], + rx_offset=NISSAN_RX_OFFSET, + bus=bus, + logging=logging, + ), + ]], +) diff --git a/opendbc_repo/opendbc/car/panda_runner.py b/opendbc_repo/opendbc/car/panda_runner.py new file mode 100644 index 0000000000..c1d0dcd01c --- /dev/null +++ b/opendbc_repo/opendbc/car/panda_runner.py @@ -0,0 +1,57 @@ +import time +from contextlib import AbstractContextManager + +from panda import Panda +from opendbc.car.car_helpers import get_car +from opendbc.car.can_definitions import CanData +from opendbc.car.structs import CarParams, CarControl + +class PandaRunner(AbstractContextManager): + def __enter__(self): + self.p = Panda() + self.p.reset() + + # setup + fingerprinting + self.p.set_safety_mode(CarParams.SafetyModel.elm327, 1) + self.CI = get_car(self._can_recv, self.p.can_send_many, self.p.set_obd, True, False) + assert self.CI.CP.carFingerprint.lower() != "mock", "Unable to identify car. Check connections and ensure car is supported." + + safety_model = self.CI.CP.safetyConfigs[0].safetyModel + self.p.set_safety_mode(CarParams.SafetyModel.elm327, 1) + self.CI.init(self.CI.CP, self._can_recv, self.p.can_send_many) + self.p.set_safety_mode(safety_model, self.CI.CP.safetyConfigs[0].safetyParam) + + return self + + def __exit__(self, exc_type, exc_value, traceback): + self.p.set_safety_mode(CarParams.SafetyModel.noOutput) + self.p.reset() # avoid siren + return super().__exit__(exc_type, exc_value, traceback) + + @property + def panda(self) -> Panda: + return self.p + + def _can_recv(self, wait_for_one: bool = False) -> list[list[CanData]]: + recv = self.p.can_recv() + while len(recv) == 0 and wait_for_one: + recv = self.p.can_recv() + return [[CanData(addr, dat, bus) for addr, dat, bus in recv], ] + + def read(self, strict: bool = True): + cs = self.CI.update([int(time.monotonic()*1e9), self._can_recv()[0]]) + if strict: + assert cs.canValid, "CAN went invalid, check connections" + return cs + + def write(self, cc: CarControl) -> None: + if cc.enabled and not self.p.health()['controls_allowed']: + # prevent the car from faulting. print a warning? + cc = CarControl(enabled=False) + _, can_sends = self.CI.apply(cc) + self.p.can_send_many(can_sends, timeout=25) + self.p.send_heartbeat() + +if __name__ == "__main__": + with PandaRunner() as p: + print(p.read()) diff --git a/opendbc_repo/opendbc/car/rivian/__init__.py b/opendbc_repo/opendbc/car/rivian/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/rivian/carcontroller.py b/opendbc_repo/opendbc/car/rivian/carcontroller.py new file mode 100644 index 0000000000..fb5f1b80ca --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/carcontroller.py @@ -0,0 +1,57 @@ +import numpy as np +from opendbc.can import CANPacker +from opendbc.car import Bus, apply_driver_steer_torque_limits +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.rivian.riviancan import create_lka_steering, create_longitudinal, create_wheel_touch, create_adas_status +from opendbc.car.rivian.values import CarControllerParams + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.apply_torque_last = 0 + self.packer = CANPacker(dbc_names[Bus.pt]) + + self.cancel_frames = 0 + + def update(self, CC, CS, now_nanos): + actuators = CC.actuators + can_sends = [] + + apply_torque = 0 + steer_max = round(float(np.interp(CS.out.vEgoRaw, CarControllerParams.STEER_MAX_LOOKUP[0], + CarControllerParams.STEER_MAX_LOOKUP[1]))) + if CC.latActive: + new_torque = int(round(CC.actuators.torque * steer_max)) + apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, + CS.out.steeringTorque, CarControllerParams, steer_max) + + # send steering command + self.apply_torque_last = apply_torque + can_sends.append(create_lka_steering(self.packer, self.frame, CS.acm_lka_hba_cmd, apply_torque, CC.enabled, CC.latActive)) + + if self.frame % 5 == 0: + can_sends.append(create_wheel_touch(self.packer, CS.sccm_wheel_touch, CC.enabled)) + + # Longitudinal control + if self.CP.openpilotLongitudinalControl: + accel = float(np.clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) + can_sends.append(create_longitudinal(self.packer, self.frame, accel, CC.enabled)) + else: + interface_status = None + if CC.cruiseControl.cancel: + # if there is a noEntry, we need to send a status of "available" before the ACM will accept "unavailable" + # send "available" right away as the VDM itself takes a few frames to acknowledge + interface_status = 1 if self.cancel_frames < 5 else 0 + self.cancel_frames += 1 + else: + self.cancel_frames = 0 + + can_sends.append(create_adas_status(self.packer, CS.vdm_adas_status, interface_status)) + + new_actuators = actuators.as_builder() + new_actuators.torque = apply_torque / steer_max + new_actuators.torqueOutputCan = apply_torque + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/rivian/carstate.py b/opendbc_repo/opendbc/car/rivian/carstate.py new file mode 100644 index 0000000000..aa5de8ea32 --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/carstate.py @@ -0,0 +1,103 @@ +import copy +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import CarStateBase +from opendbc.car.rivian.values import DBC, GEAR_MAP +from opendbc.car.common.conversions import Conversions as CV + +GearShifter = structs.CarState.GearShifter + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + self.last_speed = 30 + + self.acm_lka_hba_cmd = None + self.sccm_wheel_touch = None + self.vdm_adas_status = None + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + cp_adas = can_parsers[Bus.adas] + ret = structs.CarState() + + # Vehicle speed + ret.vEgoRaw = cp.vl["ESP_Status"]["ESP_Vehicle_Speed"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = abs(ret.vEgoRaw) < 0.01 + + # Gas pedal + pedal_status = cp.vl["VDM_PropStatus"]["VDM_AcceleratorPedalPosition"] + ret.gas = pedal_status / 100.0 + ret.gasPressed = pedal_status > 0 + + # Brake pedal + ret.brake = cp.vl["ESPiB3"]["ESPiB3_pMC1"] / 250.0 # pressure in Bar + ret.brakePressed = cp.vl["iBESP2"]["iBESP2_BrakePedalApplied"] == 1 + + # Steering wheel + ret.steeringAngleDeg = cp.vl["EPAS_AdasStatus"]["EPAS_InternalSas"] + ret.steeringRateDeg = cp.vl["EPAS_AdasStatus"]["EPAS_SteeringAngleSpeed"] + ret.steeringTorque = cp.vl["EPAS_SystemStatus"]["EPAS_TorsionBarTorque"] + ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > 1.0, 5) + + ret.steerFaultTemporary = cp.vl["EPAS_AdasStatus"]["EPAS_EacErrorCode"] != 0 + + # Cruise state + speed = min(int(cp_adas.vl["ACM_tsrCmd"]["ACM_tsrSpdDisClsMain"]), 85) + self.last_speed = speed if speed != 0 else self.last_speed + ret.cruiseState.enabled = cp_cam.vl["ACM_Status"]["ACM_FeatureStatus"] == 1 + # TODO: find cruise set speed on CAN + ret.cruiseState.speed = self.last_speed * CV.MPH_TO_MS # detected speed limit + if not self.CP.openpilotLongitudinalControl: + ret.cruiseState.speed = -1 + ret.cruiseState.available = True # cp.vl["VDM_AdasSts"]["VDM_AdasInterfaceStatus"] == 1 + ret.cruiseState.standstill = cp.vl["VDM_AdasSts"]["VDM_AdasAccelRequestAcknowledged"] == 1 + + # TODO: log ACM_Unkown2=3 as a fault. need to filter it at the start and end of routes though + # ACM_FaultStatus hasn't been seen yet + ret.accFaulted = (cp_cam.vl["ACM_Status"]["ACM_FaultStatus"] == 1 or + # VDM_AdasFaultStatus=Brk_Intv is the default for some reason + # VDM_AdasFaultStatus=Imps_Cmd was seen when sending it rapidly changing ACC enable commands + # VDM_AdasFaultStatus=Cntr_Fault isn't fully understood, but we've seen it in the wild + cp.vl["VDM_AdasSts"]["VDM_AdasFaultStatus"] in (3,)) # 3=Imps_Cmd + + # Gear + ret.gearShifter = GEAR_MAP.get(int(cp.vl["VDM_PropStatus"]["VDM_Prndl_Status"]), GearShifter.unknown) + + # Doors + ret.doorOpen = (cp_adas.vl["IndicatorLights"]["RearDriverDoor"] != 2 or + cp_adas.vl["IndicatorLights"]["FrontPassengerDoor"] != 2 or + cp_adas.vl["IndicatorLights"]["DriverDoor"] != 2 or + cp_adas.vl["IndicatorLights"]["RearPassengerDoor"] != 2) + + # Blinkers + ret.leftBlinker = cp_adas.vl["IndicatorLights"]["TurnLightLeft"] in (1, 2) + ret.rightBlinker = cp_adas.vl["IndicatorLights"]["TurnLightRight"] in (1, 2) + + # Seatbelt + ret.seatbeltUnlatched = cp.vl["RCM_Status"]["RCM_Status_IND_WARN_BELT_DRIVER"] != 0 + + # Blindspot + # ret.leftBlindspot = False + # ret.rightBlindspot = False + + # AEB + ret.stockAeb = cp_cam.vl["ACM_AebRequest"]["ACM_EnableRequest"] != 0 + + # Messages needed by carcontroller + self.acm_lka_hba_cmd = copy.copy(cp_cam.vl["ACM_lkaHbaCmd"]) + self.sccm_wheel_touch = copy.copy(cp.vl["SCCM_WheelTouch"]) + self.vdm_adas_status = copy.copy(cp.vl["VDM_AdasSts"]) + + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 0), + Bus.adas: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 1), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + } diff --git a/opendbc_repo/opendbc/car/rivian/fingerprints.py b/opendbc_repo/opendbc/car/rivian/fingerprints.py new file mode 100644 index 0000000000..c695eaa920 --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/fingerprints.py @@ -0,0 +1,12 @@ +from opendbc.car.structs import CarParams +from opendbc.car.rivian.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.RIVIAN_R1_GEN1: { + (Ecu.eps, 0x733, None): [ + b'R1TS_v3.4.1(51),3.4.1\x00', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/rivian/interface.py b/opendbc_repo/opendbc/car/rivian/interface.py new file mode 100644 index 0000000000..f1108e0811 --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/interface.py @@ -0,0 +1,37 @@ +from opendbc.car import get_safety_config, structs +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.rivian.carcontroller import CarController +from opendbc.car.rivian.carstate import CarState +from opendbc.car.rivian.radar_interface import RadarInterface +from opendbc.car.rivian.values import RivianSafetyFlags + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "rivian" + + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.rivian)] + + ret.steerActuatorDelay = 0.15 + ret.steerLimitTimer = 0.4 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + ret.steerControlType = structs.CarParams.SteerControlType.torque + ret.radarUnavailable = True + + # TODO: pending finding/handling missing set speed and fixing up radar parser + ret.alphaLongitudinalAvailable = False + if alpha_long: + ret.openpilotLongitudinalControl = True + ret.safetyConfigs[0].safetyParam |= RivianSafetyFlags.LONG_CONTROL.value + + ret.longitudinalActuatorDelay = 0.35 + ret.vEgoStopping = 0.25 + ret.stopAccel = 0 + + return ret diff --git a/opendbc_repo/opendbc/car/rivian/radar_interface.py b/opendbc_repo/opendbc/car/rivian/radar_interface.py new file mode 100644 index 0000000000..323faea625 --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/radar_interface.py @@ -0,0 +1,71 @@ +import math + +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import RadarInterfaceBase +from opendbc.car.rivian.values import DBC + +RADAR_START_ADDR = 0x500 +RADAR_MSG_COUNT = 32 + +def get_radar_can_parser(CP): + messages = [(f"RADAR_TRACK_{addr:x}", 20) for addr in range(RADAR_START_ADDR, RADAR_START_ADDR + RADAR_MSG_COUNT)] + return CANParser(DBC[CP.carFingerprint][Bus.radar], messages, 1) + + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + self.updated_messages = set() + self.trigger_msg = RADAR_START_ADDR + RADAR_MSG_COUNT - 1 + self.track_id = 0 + + self.radar_off_can = CP.radarUnavailable + self.rcp = get_radar_can_parser(CP) + + def update(self, can_strings): + if self.radar_off_can or (self.rcp is None): + return super().update(None) + + vls = self.rcp.update(can_strings) + self.updated_messages.update(vls) + + if self.trigger_msg not in self.updated_messages: + return None + + rr = self._update(self.updated_messages) + self.updated_messages.clear() + + return rr + + def _update(self, updated_messages): + ret = structs.RadarData() + if self.rcp is None: + return ret + + if not self.rcp.can_valid: + ret.errors.canError = True + + for addr in range(RADAR_START_ADDR, RADAR_START_ADDR + RADAR_MSG_COUNT): + msg = self.rcp.vl[f"RADAR_TRACK_{addr:x}"] + + if addr not in self.pts: + self.pts[addr] = structs.RadarData.RadarPoint() + self.pts[addr].trackId = self.track_id + self.track_id += 1 + + valid = msg['STATE'] in (3, 4) and msg['STATE_2'] == 1 + if valid: + azimuth = math.radians(msg['AZIMUTH']) + self.pts[addr].measured = True + self.pts[addr].dRel = math.cos(azimuth) * msg['LONG_DIST'] + self.pts[addr].yRel = 0.5 * -math.sin(azimuth) * msg['LONG_DIST'] + self.pts[addr].vRel = msg['REL_SPEED'] + self.pts[addr].aRel = float('nan') + self.pts[addr].yvRel = 0 #float('nan') + + else: + del self.pts[addr] + + ret.points = list(self.pts.values()) + return ret diff --git a/opendbc_repo/opendbc/car/rivian/riviancan.py b/opendbc_repo/opendbc/car/rivian/riviancan.py new file mode 100644 index 0000000000..f22b5917a8 --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/riviancan.py @@ -0,0 +1,100 @@ +def checksum(data, poly, xor_output): + crc = 0 + for byte in data: + crc ^= byte + for _ in range(8): + if crc & 0x80: + crc = (crc << 1) ^ poly + else: + crc <<= 1 + crc &= 0xFF + return crc ^ xor_output + + +def create_lka_steering(packer, frame, acm_lka_hba_cmd, apply_torque, enabled, active): + # forward auto high beam and speed limit status and nothing else + values = {s: acm_lka_hba_cmd[s] for s in ( + "ACM_hbaSysState", + "ACM_hbaLamp", + "ACM_hbaOnOffState", + "ACM_slifOnOffState", + )} + + values |= { + "ACM_lkaHbaCmd_Counter": frame % 15, + "ACM_lkaStrToqReq": apply_torque, + "ACM_lkaActToi": active, + + "ACM_lkaLaneRecogState": 3 if enabled else 0, + "ACM_lkaSymbolState": 3 if enabled else 0, + + # static values + "ACM_lkaElkRequest": 0, + "ACM_ldwlkaOnOffState": 2, # 2=LKAS+LDW on + "ACM_elkOnOffState": 1, # 1=LKAS on + # TODO: what are these used for? + "ACM_ldwWarnTypeState": 2, # always 2 + "ACM_ldwWarnTimingState": 1, # always 1 + #"ACM_lkaHandsoffDisplayWarning": 1, # TODO: we can send this when openpilot wants you to pay attention + } + + data = packer.make_can_msg("ACM_lkaHbaCmd", 0, values)[1] + values["ACM_lkaHbaCmd_Checksum"] = checksum(data[1:], 0x1D, 0x63) + return packer.make_can_msg("ACM_lkaHbaCmd", 0, values) + + +def create_wheel_touch(packer, sccm_wheel_touch, enabled): + values = {s: sccm_wheel_touch[s] for s in ( + "SCCM_WheelTouch_Counter", + "SCCM_WheelTouch_HandsOn", + "SCCM_WheelTouch_CapacitiveValue", + "SETME_X52", + )} + + # When only using ACC without lateral, the ACM warns the driver to hold the steering wheel on engagement + # Tell the ACM that the user is holding the wheel to avoid this warning + if enabled: + values["SCCM_WheelTouch_HandsOn"] = 1 + values["SCCM_WheelTouch_CapacitiveValue"] = 100 # only need to send this value, but both are set for consistency + + data = packer.make_can_msg("SCCM_WheelTouch", 2, values)[1] + values["SCCM_WheelTouch_Checksum"] = checksum(data[1:], 0x1D, 0x97) + return packer.make_can_msg("SCCM_WheelTouch", 2, values) + + +def create_longitudinal(packer, frame, accel, enabled): + values = { + "ACM_longitudinalRequest_Counter": frame % 15, + "ACM_AccelerationRequest": accel if enabled else 0, + "ACM_VehicleHoldRequired": 0, + "ACM_PrndRequired": 0, + "ACM_longInterfaceEnable": 1 if enabled else 0, + "ACM_AccelerationRequestType": 0, + } + + data = packer.make_can_msg("ACM_longitudinalRequest", 0, values)[1] + values["ACM_longitudinalRequest_Checksum"] = checksum(data[1:], 0x1D, 0x12) + return packer.make_can_msg("ACM_longitudinalRequest", 0, values) + + +def create_adas_status(packer, vdm_adas_status, interface_status): + values = {s: vdm_adas_status[s] for s in ( + "VDM_AdasStatus_Checksum", + "VDM_AdasStatus_Counter", + "VDM_AdasDecelLimit", + "VDM_AdasDriverAccelPriorityStatus", + "VDM_AdasFaultStatus", + "VDM_AdasAccelLimit", + "VDM_AdasDriverModeStatus", + "VDM_AdasAccelRequest", + "VDM_AdasInterfaceStatus", + "VDM_AdasAccelRequestAcknowledged", + "VDM_AdasVehicleHoldStatus", + )} + + if interface_status is not None: + values["VDM_AdasInterfaceStatus"] = interface_status + + data = packer.make_can_msg("VDM_AdasSts", 2, values)[1] + values["VDM_AdasStatus_Checksum"] = checksum(data[1:], 0x1D, 0xD1) + return packer.make_can_msg("VDM_AdasSts", 2, values) diff --git a/opendbc_repo/opendbc/car/rivian/tests/__init__.py b/opendbc_repo/opendbc/car/rivian/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/rivian/tests/test_rivian.py b/opendbc_repo/opendbc/car/rivian/tests/test_rivian.py new file mode 100644 index 0000000000..90dcfcd5dd --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/tests/test_rivian.py @@ -0,0 +1,23 @@ +from opendbc.car.rivian.fingerprints import FW_VERSIONS +from opendbc.car.rivian.values import CAR, FW_QUERY_CONFIG, WMI, ModelLine, ModelYear + + +class TestRivian: + def test_custom_fuzzy_fingerprinting(self, subtests): + for platform in CAR: + with subtests.test(platform=platform.name): + for wmi in WMI: + for line in ModelLine: + for year in ModelYear: + for bad in (True, False): + vin = ["0"] * 17 + vin[:3] = wmi + vin[3] = line.value + vin[9] = year.value + if bad: + vin[3] = "Z" + vin = "".join(vin) + + matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy({}, vin, FW_VERSIONS) + should_match = year != ModelYear.S_2025 and not bad + assert (matches == {platform}) == should_match, "Bad match" diff --git a/opendbc_repo/opendbc/car/rivian/values.py b/opendbc_repo/opendbc/car/rivian/values.py new file mode 100644 index 0000000000..579e812410 --- /dev/null +++ b/opendbc_repo/opendbc/car/rivian/values.py @@ -0,0 +1,138 @@ +from dataclasses import dataclass, field +from enum import StrEnum, IntFlag + +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, structs, uds +from opendbc.car.docs_definitions import CarHarness, CarDocs, CarParts, Device +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries, p16 +from opendbc.car.vin import Vin + + +class WMI(StrEnum): + RIVIAN_TRUCK = "7FC" + RIVIAN_MPV = "7PD" + + +class ModelLine(StrEnum): + R1T = "T" # R1T 4-door Pickup Truck + R1S = "S" # R1S 4-door MPV + + +class ModelYear(StrEnum): + N_2022 = "N" + P_2023 = "P" + R_2024 = "R" + S_2025 = "S" + + +@dataclass +class RivianCarDocs(CarDocs): + package: str = "All" + car_parts: CarParts = field(default_factory=CarParts([Device.threex_angled_mount, CarHarness.rivian])) + setup_video_link: str = "https://youtu.be/uaISd1j7Z4U" + + +@dataclass +class RivianPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'rivian_primary_actuator', Bus.radar: 'rivian_mando_front_radar_generated'}) + wmis: set[WMI] = field(default_factory=set) + lines: set[ModelLine] = field(default_factory=set) + years: set[ModelYear] = field(default_factory=set) + + +class CAR(Platforms): + RIVIAN_R1_GEN1 = RivianPlatformConfig( + # TODO: verify this + [ + RivianCarDocs("Rivian R1S 2022-24"), + RivianCarDocs("Rivian R1T 2022-24"), + ], + CarSpecs(mass=3206., wheelbase=3.08, steerRatio=15.2), + wmis={WMI.RIVIAN_TRUCK, WMI.RIVIAN_MPV}, + lines={ModelLine.R1T, ModelLine.R1S}, + years={ModelYear.N_2022, ModelYear.P_2023, ModelYear.R_2024}, + ) + + +def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: + # Rivian VIN reference: https://www.rivianforums.com/forum/threads/rivian-vin-decoder.1546 + vin_obj = Vin(vin) + line = vin_obj.vds[:1] + year = vin_obj.vis[:1] + + candidates = set() + for platform in CAR: + if vin_obj.wmi in platform.config.wmis and line in platform.config.lines and year in platform.config.years: + candidates.add(platform) + + return {str(c) for c in candidates} + + +RIVIAN_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(0xf1a0) +RIVIAN_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.SUPPLIER_SOFTWARE_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.SUPPLIER_SOFTWARE_VERSION_RESPONSE], + rx_offset=0x40, + bus=0, + ), + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.MANUFACTURER_ECU_HARDWARE_NUMBER_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.MANUFACTURER_ECU_HARDWARE_NUMBER_RESPONSE], + rx_offset=0x40, + bus=0, + logging=True, + ), + Request( + [StdQueries.TESTER_PRESENT_REQUEST, RIVIAN_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, RIVIAN_VERSION_RESPONSE], + rx_offset=0x40, + bus=0, + logging=True, + ), + ], + match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, +) + +GEAR_MAP = { + 0: structs.CarState.GearShifter.unknown, + 1: structs.CarState.GearShifter.park, + 2: structs.CarState.GearShifter.reverse, + 3: structs.CarState.GearShifter.neutral, + 4: structs.CarState.GearShifter.drive, +} + + +class CarControllerParams: + # The R1T 2023 and R1S 2023 we tested on achieves slightly more lateral acceleration going left vs. right + # and lateral acceleration falls linearly as speed decreases from 38 mph to 20 mph. These values are set + # conservatively to reach a maximum of 3.0 m/s^2 turning left at 80 mph + + # These refer to turning left: + # 250 is ~2.8 m/s^2 above 17 m/s, then linearly ramps to ~1.6 m/s^2 from 17 m/s to 9 m/s + # TODO: it is theorized older models have different steering racks and achieve down to half the + # lateral acceleration referenced here at all speeds. detect this and ship a torque increase for those models + STEER_MAX = 250 # 350 is intended to maintain lateral accel, not increase it + STEER_MAX_LOOKUP = [9, 17], [350, 250] + STEER_STEP = 1 + STEER_DELTA_UP = 3 # torque increase per refresh + STEER_DELTA_DOWN = 5 # torque decrease per refresh + STEER_DRIVER_ALLOWANCE = 100 # allowed driver torque before start limiting + STEER_DRIVER_MULTIPLIER = 2 # weight driver torque + STEER_DRIVER_FACTOR = 100 + + ACCEL_MIN = -3.5 # m/s^2 + ACCEL_MAX = 2.0 # m/s^2 + + def __init__(self, CP): + pass + + +class RivianSafetyFlags(IntFlag): + LONG_CONTROL = 1 + + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/secoc.py b/opendbc_repo/opendbc/car/secoc.py new file mode 100644 index 0000000000..971ea36a19 --- /dev/null +++ b/opendbc_repo/opendbc/car/secoc.py @@ -0,0 +1,47 @@ +import struct + +from Crypto.Hash import CMAC +from Crypto.Cipher import AES + +def add_mac(key, trip_cnt, reset_cnt, msg_cnt, msg): + # TODO: clean up conversion to and from hex + + addr, payload, bus = msg + reset_flag = reset_cnt & 0b11 + msg_cnt_flag = msg_cnt & 0b11 + payload = payload[:4] + + # Step 1: Build Freshness Value (48 bits) + # [Trip Counter (16 bit)][[Reset Counter (20 bit)][Message Counter (8 bit)][Reset Flag (2 bit)][Padding (2 bit)] + freshness_value = struct.pack('>HI', trip_cnt, (reset_cnt << 12) | ((msg_cnt & 0xff) << 4) | (reset_flag << 2)) + + # Step 2: Build data to authenticate (96 bits) + # [Message ID (16 bits)][Payload (32 bits)][Freshness Value (48 bits)] + to_auth = struct.pack('>H', addr) + payload + freshness_value + + # Step 3: Calculate CMAC (28 bit) + cmac = CMAC.new(key, ciphermod=AES) + cmac.update(to_auth) + mac = cmac.digest().hex()[:7] # truncated MAC + + # Step 4: Build message + # [Payload (32 bit)][Message Counter Flag (2 bit)][Reset Flag (2 bit)][Authenticator (28 bit)] + msg_cnt_rst_flag = struct.pack('>B', (msg_cnt_flag << 2) | reset_flag).hex()[1] + msg = payload.hex() + msg_cnt_rst_flag + mac + payload = bytes.fromhex(msg) + + return (addr, payload, bus) + +def build_sync_mac(key, trip_cnt, reset_cnt, id_=0xf): + id_ = struct.pack('>H', id_) # 16 + trip_cnt = struct.pack('>H', trip_cnt) # 16 + reset_cnt = struct.pack('>I', reset_cnt << 12)[:-1] # 20 + 4 padding + + to_auth = id_ + trip_cnt + reset_cnt # SecOC 11.4.1.1 page 138 + + cmac = CMAC.new(key, ciphermod=AES) + cmac.update(to_auth) + + msg = "0" + cmac.digest().hex()[:7] + msg = bytes.fromhex(msg) + return struct.unpack('>I', msg)[0] diff --git a/opendbc_repo/opendbc/car/structs.py b/opendbc_repo/opendbc/car/structs.py new file mode 100644 index 0000000000..a5628c7e00 --- /dev/null +++ b/opendbc_repo/opendbc/car/structs.py @@ -0,0 +1,20 @@ +import os +import capnp +from opendbc.car.common.basedir import BASEDIR + +# TODO: remove car from cereal/__init__.py and always import from opendbc +try: + from cereal import car +except ImportError: + capnp.remove_import_hook() + car = capnp.load(os.path.join(BASEDIR, "car.capnp")) + +CarState = car.CarState +RadarData = car.RadarData +CarControl = car.CarControl +CarParams = car.CarParams + +CarStateT = capnp.lib.capnp._StructModule +RadarDataT = capnp.lib.capnp._StructModule +CarControlT = capnp.lib.capnp._StructModule +CarParamsT = capnp.lib.capnp._StructModule diff --git a/opendbc_repo/opendbc/car/subaru/__init__.py b/opendbc_repo/opendbc/car/subaru/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/subaru/carcontroller.py b/opendbc_repo/opendbc/car/subaru/carcontroller.py new file mode 100644 index 0000000000..861d8489f7 --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/carcontroller.py @@ -0,0 +1,143 @@ +import numpy as np +from opendbc.can import CANPacker +from opendbc.car import Bus, apply_driver_steer_torque_limits, common_fault_avoidance, make_tester_present_msg +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.subaru import subarucan +from opendbc.car.subaru.values import DBC, GLOBAL_ES_ADDR, CanBus, CarControllerParams, SubaruFlags + +# FIXME: These limits aren't exact. The real limit is more than likely over a larger time period and +# involves the total steering angle change rather than rate, but these limits work well for now +MAX_STEER_RATE = 25 # deg/s +MAX_STEER_RATE_FRAMES = 7 # tx control frames needed before torque can be cut + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.apply_torque_last = 0 + + self.cruise_button_prev = 0 + self.steer_rate_counter = 0 + + self.p = CarControllerParams(CP) + self.packer = CANPacker(DBC[CP.carFingerprint][Bus.pt]) + + def update(self, CC, CS, now_nanos): + actuators = CC.actuators + hud_control = CC.hudControl + pcm_cancel_cmd = CC.cruiseControl.cancel + + can_sends = [] + + # *** steering *** + if (self.frame % self.p.STEER_STEP) == 0: + apply_torque = int(round(actuators.torque * self.p.STEER_MAX)) + + # limits due to driver torque + + new_torque = int(round(apply_torque)) + apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.p) + + if not CC.latActive: + apply_torque = 0 + + if self.CP.flags & SubaruFlags.PREGLOBAL: + can_sends.append(subarucan.create_preglobal_steering_control(self.packer, self.frame // self.p.STEER_STEP, apply_torque, CC.latActive)) + else: + apply_steer_req = CC.latActive + + if self.CP.flags & SubaruFlags.STEER_RATE_LIMITED: + # Steering rate fault prevention + self.steer_rate_counter, apply_steer_req = \ + common_fault_avoidance(abs(CS.out.steeringRateDeg) > MAX_STEER_RATE, apply_steer_req, + self.steer_rate_counter, MAX_STEER_RATE_FRAMES) + + can_sends.append(subarucan.create_steering_control(self.packer, apply_torque, apply_steer_req)) + + self.apply_torque_last = apply_torque + + # *** longitudinal *** + + if CC.longActive: + apply_throttle = int(round(np.interp(actuators.accel, CarControllerParams.THROTTLE_LOOKUP_BP, CarControllerParams.THROTTLE_LOOKUP_V))) + apply_rpm = int(round(np.interp(actuators.accel, CarControllerParams.RPM_LOOKUP_BP, CarControllerParams.RPM_LOOKUP_V))) + apply_brake = int(round(np.interp(actuators.accel, CarControllerParams.BRAKE_LOOKUP_BP, CarControllerParams.BRAKE_LOOKUP_V))) + + # limit min and max values + cruise_throttle = np.clip(apply_throttle, CarControllerParams.THROTTLE_MIN, CarControllerParams.THROTTLE_MAX) + cruise_rpm = np.clip(apply_rpm, CarControllerParams.RPM_MIN, CarControllerParams.RPM_MAX) + cruise_brake = np.clip(apply_brake, CarControllerParams.BRAKE_MIN, CarControllerParams.BRAKE_MAX) + else: + cruise_throttle = CarControllerParams.THROTTLE_INACTIVE + cruise_rpm = CarControllerParams.RPM_MIN + cruise_brake = CarControllerParams.BRAKE_MIN + + # *** alerts and pcm cancel *** + if self.CP.flags & SubaruFlags.PREGLOBAL: + if self.frame % 5 == 0: + # 1 = main, 2 = set shallow, 3 = set deep, 4 = resume shallow, 5 = resume deep + # disengage ACC when OP is disengaged + if pcm_cancel_cmd: + cruise_button = 1 + # turn main on if off and past start-up state + elif not CS.out.cruiseState.available and CS.ready: + cruise_button = 1 + else: + cruise_button = CS.cruise_button + + # unstick previous mocked button press + if cruise_button == 1 and self.cruise_button_prev == 1: + cruise_button = 0 + self.cruise_button_prev = cruise_button + + can_sends.append(subarucan.create_preglobal_es_distance(self.packer, cruise_button, CS.es_distance_msg)) + + else: + if self.frame % 10 == 0: + can_sends.append(subarucan.create_es_dashstatus(self.packer, self.frame // 10, CS.es_dashstatus_msg, CC.enabled, + self.CP.openpilotLongitudinalControl, CC.longActive, hud_control.leadVisible)) + + can_sends.append(subarucan.create_es_lkas_state(self.packer, self.frame // 10, CS.es_lkas_state_msg, CC.enabled, hud_control.visualAlert, + hud_control.leftLaneVisible, hud_control.rightLaneVisible, + hud_control.leftLaneDepart, hud_control.rightLaneDepart)) + + if self.CP.flags & SubaruFlags.SEND_INFOTAINMENT: + can_sends.append(subarucan.create_es_infotainment(self.packer, self.frame // 10, CS.es_infotainment_msg, hud_control.visualAlert)) + + if self.CP.openpilotLongitudinalControl: + if self.frame % 5 == 0: + can_sends.append(subarucan.create_es_status(self.packer, self.frame // 5, CS.es_status_msg, + self.CP.openpilotLongitudinalControl, CC.longActive, cruise_rpm)) + + can_sends.append(subarucan.create_es_brake(self.packer, self.frame // 5, CS.es_brake_msg, + self.CP.openpilotLongitudinalControl, CC.longActive, cruise_brake)) + + can_sends.append(subarucan.create_es_distance(self.packer, self.frame // 5, CS.es_distance_msg, 0, pcm_cancel_cmd, + self.CP.openpilotLongitudinalControl, cruise_brake > 0, cruise_throttle)) + else: + if pcm_cancel_cmd: + if not (self.CP.flags & SubaruFlags.HYBRID): + bus = CanBus.alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else CanBus.main + can_sends.append(subarucan.create_es_distance(self.packer, CS.es_distance_msg["COUNTER"] + 1, CS.es_distance_msg, bus, pcm_cancel_cmd)) + + if self.CP.flags & SubaruFlags.DISABLE_EYESIGHT: + # Tester present (keeps eyesight disabled) + if self.frame % 100 == 0: + can_sends.append(make_tester_present_msg(GLOBAL_ES_ADDR, CanBus.camera, suppress_response=True)) + + # Create all of the other eyesight messages to keep the rest of the car happy when eyesight is disabled + if self.frame % 5 == 0: + can_sends.append(subarucan.create_es_highbeamassist(self.packer)) + + if self.frame % 10 == 0: + can_sends.append(subarucan.create_es_static_1(self.packer)) + + if self.frame % 2 == 0: + can_sends.append(subarucan.create_es_static_2(self.packer)) + + new_actuators = actuators.as_builder() + new_actuators.torque = self.apply_torque_last / self.p.STEER_MAX + new_actuators.torqueOutputCan = self.apply_torque_last + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/subaru/carstate.py b/opendbc_repo/opendbc/car/subaru/carstate.py new file mode 100644 index 0000000000..999cdf4690 --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/carstate.py @@ -0,0 +1,138 @@ +import copy +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase +from opendbc.car.subaru.values import DBC, CanBus, SubaruFlags +from opendbc.car import CanSignalRateCalculator + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + self.shifter_values = can_define.dv["Transmission"]["Gear"] + + self.angle_rate_calulator = CanSignalRateCalculator(50) + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + cp_alt = can_parsers[Bus.alt] + ret = structs.CarState() + + throttle_msg = cp.vl["Throttle"] if not (self.CP.flags & SubaruFlags.HYBRID) else cp_alt.vl["Throttle_Hybrid"] + ret.gas = throttle_msg["Throttle_Pedal"] / 255. + + ret.gasPressed = ret.gas > 1e-5 + if self.CP.flags & SubaruFlags.PREGLOBAL: + ret.brakePressed = cp.vl["Brake_Pedal"]["Brake_Pedal"] > 0 + else: + cp_brakes = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp + ret.brakePressed = cp_brakes.vl["Brake_Status"]["Brake"] == 1 + + cp_es_distance = cp_alt if self.CP.flags & (SubaruFlags.GLOBAL_GEN2 | SubaruFlags.HYBRID) else cp_cam + if not (self.CP.flags & SubaruFlags.HYBRID): + eyesight_fault = bool(cp_es_distance.vl["ES_Distance"]["Cruise_Fault"]) + + # if openpilot is controlling long, an eyesight fault is a non-critical fault. otherwise it's an ACC fault + if self.CP.openpilotLongitudinalControl: + ret.carFaultedNonCritical = eyesight_fault + else: + ret.accFaulted = eyesight_fault + + cp_wheels = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp + ret.wheelSpeeds = self.get_wheel_speeds( + cp_wheels.vl["Wheel_Speeds"]["FL"], + cp_wheels.vl["Wheel_Speeds"]["FR"], + cp_wheels.vl["Wheel_Speeds"]["RL"], + cp_wheels.vl["Wheel_Speeds"]["RR"], + ) + ret.vEgoRaw = (ret.wheelSpeeds.fl + ret.wheelSpeeds.fr + ret.wheelSpeeds.rl + ret.wheelSpeeds.rr) / 4. + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = ret.vEgoRaw == 0 + + # continuous blinker signals for assisted lane change + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_lamp(50, cp.vl["Dashlights"]["LEFT_BLINKER"], + cp.vl["Dashlights"]["RIGHT_BLINKER"]) + + if self.CP.enableBsm: + ret.leftBlindspot = (cp.vl["BSD_RCTA"]["L_ADJACENT"] == 1) or (cp.vl["BSD_RCTA"]["L_APPROACHING"] == 1) + ret.rightBlindspot = (cp.vl["BSD_RCTA"]["R_ADJACENT"] == 1) or (cp.vl["BSD_RCTA"]["R_APPROACHING"] == 1) + + cp_transmission = cp_alt if self.CP.flags & SubaruFlags.HYBRID else cp + can_gear = int(cp_transmission.vl["Transmission"]["Gear"]) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + + ret.steeringAngleDeg = cp.vl["Steering_Torque"]["Steering_Angle"] + + if not (self.CP.flags & SubaruFlags.PREGLOBAL): + # ideally we get this from the car, but unclear if it exists. diagnostic software doesn't even have it + ret.steeringRateDeg = self.angle_rate_calulator.update(ret.steeringAngleDeg, cp.vl["Steering_Torque"]["COUNTER"]) + + ret.steeringTorque = cp.vl["Steering_Torque"]["Steer_Torque_Sensor"] + ret.steeringTorqueEps = cp.vl["Steering_Torque"]["Steer_Torque_Output"] + + steer_threshold = 75 if self.CP.flags & SubaruFlags.PREGLOBAL else 80 + ret.steeringPressed = abs(ret.steeringTorque) > steer_threshold + + cp_cruise = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp + if self.CP.flags & SubaruFlags.HYBRID: + ret.cruiseState.enabled = cp_cam.vl["ES_DashStatus"]['Cruise_Activated'] != 0 + ret.cruiseState.available = cp_cam.vl["ES_DashStatus"]['Cruise_On'] != 0 + else: + ret.cruiseState.enabled = cp_cruise.vl["CruiseControl"]["Cruise_Activated"] != 0 + ret.cruiseState.available = cp_cruise.vl["CruiseControl"]["Cruise_On"] != 0 + ret.cruiseState.speed = cp_cam.vl["ES_DashStatus"]["Cruise_Set_Speed"] * CV.KPH_TO_MS + + if (self.CP.flags & SubaruFlags.PREGLOBAL and cp.vl["Dash_State2"]["UNITS"] == 1) or \ + (not (self.CP.flags & SubaruFlags.PREGLOBAL) and cp.vl["Dashlights"]["UNITS"] == 1): + ret.cruiseState.speed *= CV.MPH_TO_KPH + + ret.seatbeltUnlatched = cp.vl["Dashlights"]["SEATBELT_FL"] == 1 + ret.doorOpen = any([cp.vl["BodyInfo"]["DOOR_OPEN_RR"], + cp.vl["BodyInfo"]["DOOR_OPEN_RL"], + cp.vl["BodyInfo"]["DOOR_OPEN_FR"], + cp.vl["BodyInfo"]["DOOR_OPEN_FL"]]) + ret.steerFaultPermanent = cp.vl["Steering_Torque"]["Steer_Error_1"] == 1 + + if self.CP.flags & SubaruFlags.PREGLOBAL: + self.cruise_button = cp_cam.vl["ES_Distance"]["Cruise_Button"] + self.ready = not cp_cam.vl["ES_DashStatus"]["Not_Ready_Startup"] + else: + ret.steerFaultTemporary = cp.vl["Steering_Torque"]["Steer_Warning"] == 1 + ret.cruiseState.nonAdaptive = cp_cam.vl["ES_DashStatus"]["Conventional_Cruise"] == 1 + ret.cruiseState.standstill = cp_cam.vl["ES_DashStatus"]["Cruise_State"] == 3 + ret.stockFcw = (cp_cam.vl["ES_LKAS_State"]["LKAS_Alert"] == 1) or \ + (cp_cam.vl["ES_LKAS_State"]["LKAS_Alert"] == 2) + + self.es_lkas_state_msg = copy.copy(cp_cam.vl["ES_LKAS_State"]) + cp_es_brake = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp_cam + self.es_brake_msg = copy.copy(cp_es_brake.vl["ES_Brake"]) + cp_es_status = cp_alt if self.CP.flags & SubaruFlags.GLOBAL_GEN2 else cp_cam + + # TODO: Hybrid cars don't have ES_Distance, need a replacement + if not (self.CP.flags & SubaruFlags.HYBRID): + # 8 is known AEB, there are a few other values related to AEB we ignore + ret.stockAeb = (cp_es_distance.vl["ES_Brake"]["AEB_Status"] == 8) and \ + (cp_es_distance.vl["ES_Brake"]["Brake_Pressure"] != 0) + + self.es_status_msg = copy.copy(cp_es_status.vl["ES_Status"]) + self.cruise_control_msg = copy.copy(cp_cruise.vl["CruiseControl"]) + + if not (self.CP.flags & SubaruFlags.HYBRID): + self.es_distance_msg = copy.copy(cp_es_distance.vl["ES_Distance"]) + + self.es_dashstatus_msg = copy.copy(cp_cam.vl["ES_DashStatus"]) + if self.CP.flags & SubaruFlags.SEND_INFOTAINMENT: + self.es_infotainment_msg = copy.copy(cp_cam.vl["ES_Infotainment"]) + + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus.main), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus.camera), + Bus.alt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CanBus.alt) + } diff --git a/opendbc_repo/opendbc/car/subaru/fingerprints.py b/opendbc_repo/opendbc/car/subaru/fingerprints.py new file mode 100644 index 0000000000..51c01e1030 --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/fingerprints.py @@ -0,0 +1,572 @@ +from opendbc.car.structs import CarParams +from opendbc.car.subaru.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.SUBARU_ASCENT: { + (Ecu.abs, 0x7b0, None): [ + b'\xa5 \x19\x02\x00', + b'\xa5 !\x02\x00', + ], + (Ecu.eps, 0x746, None): [ + b'\x05\xc0\xd0\x00', + b'\x85\xc0\xd0\x00', + b'\x95\xc0\xd0\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00d\xb9\x00\x00\x00\x00', + b'\x00\x00d\xb9\x1f@ \x10', + b'\x00\x00e@\x00\x00\x00\x00', + b'\x00\x00e@\x1f@ $', + b"\x00\x00e~\x1f@ '", + ], + (Ecu.engine, 0x7e0, None): [ + b'\xbb,\xa0t\x07', + b'\xd1,\xa0q\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\x00>\xf0\x00\x00', + b'\x00\xfe\xf7\x00\x00', + b'\x01\xfe\xf7\x00\x00', + b'\x01\xfe\xf9\x00\x00', + b'\x01\xfe\xfa\x00\x00', + ], + }, + CAR.SUBARU_ASCENT_2023: { + (Ecu.abs, 0x7b0, None): [ + b'\xa5 #\x03\x00', + ], + (Ecu.eps, 0x746, None): [ + b'%\xc0\xd0\x11', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x05!\x08\x1dK\x05!\x08\x01/', + ], + (Ecu.engine, 0x7a2, None): [ + b'\xe5,\xa0P\x07', + ], + (Ecu.transmission, 0x7a3, None): [ + b'\x04\xfe\xf3\x00\x00', + ], + }, + CAR.SUBARU_LEGACY: { + (Ecu.abs, 0x7b0, None): [ + b'\xa1 \x02\x01', + b'\xa1 \x02\x02', + b'\xa1 \x03\x02', + b'\xa1 \x03\x03', + b'\xa1 \x04\x01', + ], + (Ecu.eps, 0x746, None): [ + b'\x9b\xc0\x11\x00', + b'\x9b\xc0\x11\x02', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00e\x80\x00\x1f@ \x19\x00', + b'\x00\x00e\x9a\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xde"a0\x07', + b'\xe2"a0\x07', + b'\xde,\xa0@\x07', + b'\xe2"aq\x07', + b'\xe2,\xa0@\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xa5\xf6\x05@\x00', + b'\xa5\xfe\xc7@\x00', + b'\xa7\xf6\x04@\x00', + b'\xa7\xfe\xc4@\x00', + ], + }, + CAR.SUBARU_IMPREZA: { + (Ecu.abs, 0x7b0, None): [ + b'z\x84\x19\x90\x00', + b'z\x94\x08\x90\x00', + b'z\x94\x08\x90\x01', + b'z\x94\x0c\x90\x00', + b'z\x94\x0c\x90\x01', + b'z\x94.\x90\x00', + b'z\x94?\x90\x00', + b'z\x9c\x19\x80\x01', + b'\xa2 \x185\x00', + b'\xa2 \x193\x00', + b'\xa2 \x194\x00', + b'\xa2 \x19`\x00', + ], + (Ecu.eps, 0x746, None): [ + b'z\xc0\x00\x00', + b'z\xc0\x04\x00', + b'z\xc0\x08\x00', + b'z\xc0\n\x00', + b'z\xc0\x0c\x00', + b'\x8a\xc0\x00\x00', + b'\x8a\xc0\x10\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00c\xf4\x00\x00\x00\x00', + b'\x00\x00c\xf4\x1f@ \x07', + b'\x00\x00d)\x00\x00\x00\x00', + b'\x00\x00d)\x1f@ \x07', + b'\x00\x00dd\x00\x00\x00\x00', + b'\x00\x00dd\x1f@ \x0e', + b'\x00\x00d\xb5\x1f@ \x0e', + b'\x00\x00d\xdc\x00\x00\x00\x00', + b'\x00\x00d\xdc\x1f@ \x0e', + b'\x00\x00e\x02\x1f@ \x14', + b'\x00\x00e\x1c\x00\x00\x00\x00', + b'\x00\x00e\x1c\x1f@ \x14', + b'\x00\x00e+\x00\x00\x00\x00', + b'\x00\x00e+\x1f@ \x14', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xaa\x00Bu\x07', + b'\xaa\x01bt\x07', + b'\xaa!`u\x07', + b'\xaa!au\x07', + b'\xaa!av\x07', + b'\xaa!aw\x07', + b'\xaa!dq\x07', + b'\xaa!ds\x07', + b'\xaa!dt\x07', + b'\xaaafs\x07', + b'\xbe!as\x07', + b'\xbe!at\x07', + b'\xbeacr\x07', + b'\xc5!`r\x07', + b'\xc5!`s\x07', + b'\xc5!ap\x07', + b'\xc5!ar\x07', + b'\xc5!as\x07', + b'\xc5!dr\x07', + b'\xc5!ds\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xe3\xd0\x081\x00', + b'\xe3\xd5\x161\x00', + b'\xe3\xe5F1\x00', + b'\xe3\xf5\x06\x00\x00', + b'\xe3\xf5\x07\x00\x00', + b'\xe3\xf5C\x00\x00', + b'\xe3\xf5F\x00\x00', + b'\xe3\xf5G\x00\x00', + b'\xe4\xe5\x021\x00', + b'\xe4\xe5\x061\x00', + b'\xe4\xf5\x02\x00\x00', + b'\xe4\xf5\x07\x00\x00', + b'\xe5\xf5\x04\x00\x00', + b'\xe5\xf5$\x00\x00', + b'\xe5\xf5B\x00\x00', + ], + }, + CAR.SUBARU_IMPREZA_2020: { + (Ecu.abs, 0x7b0, None): [ + b'\xa2 \x193\x00', + b'\xa2 \x194\x00', + b'\xa2 `\x00', + b'\xa2 !3\x00', + b'\xa2 !6\x00', + b'\xa2 !`\x00', + b'\xa2 !i\x00', + ], + (Ecu.eps, 0x746, None): [ + b'\n\xc0\x04\x00', + b'\n\xc0\x04\x01', + b'\x9a\xc0\x00\x00', + b'\x9a\xc0\x04\x00', + b'\x9a\xc0\n\x01', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00eb\x1f@ "', + b'\x00\x00eq\x00\x00\x00\x00', + b'\x00\x00eq\x1f@ "', + b'\x00\x00e\x8f\x00\x00\x00\x00', + b'\x00\x00e\x8f\x1f@ )', + b'\x00\x00e\x92\x00\x00\x00\x00', + b'\x00\x00e\xa4\x00\x00\x00\x00', + b'\x00\x00e\xa4\x1f@ (', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xca!`0\x07', + b'\xca!`p\x07', + b'\xca!`t\x07', + b'\xca!ap\x07', + b'\xca!f@\x07', + b'\xca!fp\x07', + b'\xcaacp\x07', + b'\xcc!`p\x07', + b'\xcc!fp\x07', + b'\xcc"f0\x07', + b'\xe6!`@\x07', + b'\xe6!fp\x07', + b'\xe6"f0\x07', + b'\xe6"fp\x07', + b'\xf3"f@\x07', + b'\xf3"fp\x07', + b'\xf3"fr\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xe6\x15\x042\x00', + b'\xe6\xf5\x04\x00\x00', + b'\xe6\xf5$\x00\x00', + b'\xe6\xf5D0\x00', + b'\xe7\xf5\x04\x00\x00', + b'\xe7\xf5D0\x00', + b'\xe7\xf6B0\x00', + b'\xe9\xf5"\x00\x00', + b'\xe9\xf5B0\x00', + b'\xe9\xf6B0\x00', + b'\xe9\xf6F0\x00', + ], + }, + CAR.SUBARU_CROSSTREK_HYBRID: { + (Ecu.abs, 0x7b0, None): [ + b'\xa2 \x19e\x01', + b'\xa2 !e\x01', + ], + (Ecu.eps, 0x746, None): [ + b'\n\xc2\x01\x00', + b'\x9a\xc2\x01\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00el\x1f@ #', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xd7!`@\x07', + b'\xd7!`p\x07', + b'\xf4!`0\x07', + ], + }, + CAR.SUBARU_FORESTER: { + (Ecu.abs, 0x7b0, None): [ + b'\xa3 \x18\x14\x00', + b'\xa3 \x18&\x00', + b'\xa3 \x19\x14\x00', + b'\xa3 \x19&\x00', + b'\xa3 \x19h\x00', + b'\xa3 \x14\x00', + b'\xa3 \x14\x01', + ], + (Ecu.eps, 0x746, None): [ + b'\x8d\xc0\x00\x00', + b'\x8d\xc0\x04\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00e!\x00\x00\x00\x00', + b'\x00\x00e!\x1f@ \x11', + b'\x00\x00e^\x00\x00\x00\x00', + b'\x00\x00e^\x1f@ !', + b'\x00\x00e`\x00\x00\x00\x00', + b'\x00\x00e`\x1f@ ', + b'\x00\x00e\x97\x00\x00\x00\x00', + b'\x00\x00e\x97\x1f@ 0', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xb6"`A\x07', + b'\xb6\xa2`A\x07', + b'\xcb"`@\x07', + b'\xcb"`p\x07', + b'\xcf"`0\x07', + b'\xcf"`p\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\x1a\xe6B1\x00', + b'\x1a\xe6F1\x00', + b'\x1a\xf6B0\x00', + b'\x1a\xf6B`\x00', + b'\x1a\xf6F`\x00', + b'\x1a\xf6b0\x00', + b'\x1a\xf6b`\x00', + b'\x1a\xf6f`\x00', + ], + }, + CAR.SUBARU_FORESTER_HYBRID: { + (Ecu.abs, 0x7b0, None): [ + b'\xa3 \x19T\x00', + ], + (Ecu.eps, 0x746, None): [ + b'\x8d\xc2\x00\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00eY\x1f@ !', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xd2\xa1`r\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\x1b\xa7@a\x00', + ], + }, + CAR.SUBARU_FORESTER_PREGLOBAL: { + (Ecu.abs, 0x7b0, None): [ + b'm\x97\x14@', + b'}\x97\x14@', + ], + (Ecu.eps, 0x746, None): [ + b'm\xc0\x10\x00', + b'}\xc0\x10\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00c\xe9\x00\x00\x00\x00', + b'\x00\x00c\xe9\x1f@ \x03', + b'\x00\x00d5\x1f@ \t', + b'\x00\x00d\xd3\x1f@ \t', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xa7"@0\x07', + b'\xa7"@p\x07', + b'\xa7)\xa0q\x07', + b'\xba"@@\x07', + b'\xba"@p\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\x1a\xf6F`\x00', + b'\xda\xf2`p\x00', + b'\xda\xf2`\x80\x00', + b'\xda\xfd\xe0\x80\x00', + b'\xdc\xf2@`\x00', + b'\xdc\xf2``\x00', + b'\xdc\xf2`\x80\x00', + b'\xdc\xf2`\x81\x00', + ], + }, + CAR.SUBARU_LEGACY_PREGLOBAL: { + (Ecu.abs, 0x7b0, None): [ + b'[\x97D\x00', + b'[\xba\xc4\x03', + b'k\x97D\x00', + b'k\x9aD\x00', + b'{\x97D\x00', + ], + (Ecu.eps, 0x746, None): [ + b'K\xb0\x00\x01', + b'[\xb0\x00\x01', + b'k\xb0\x00\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00c\x94\x1f@\x10\x08', + b'\x00\x00c\xb7\x1f@\x10\x16', + b'\x00\x00c\xec\x1f@ \x04', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xa0"@q\x07', + b'\xa0+@p\x07', + b'\xab*@r\x07', + b'\xab+@p\x07', + b'\xb4"@0\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xbd\xf2\x00`\x00', + b'\xbe\xf2\x00p\x00', + b'\xbe\xfb\xc0p\x00', + b'\xbf\xf2\x00\x80\x00', + b'\xbf\xfb\xc0\x80\x00', + ], + }, + CAR.SUBARU_OUTBACK_PREGLOBAL: { + (Ecu.abs, 0x7b0, None): [ + b'[\xba\xac\x03', + b'[\xf7\xac\x00', + b'[\xf7\xac\x03', + b'[\xf7\xbc\x03', + b'k\x97\xac\x00', + b'k\x9a\xac\x00', + b'{\x97\xac\x00', + b'{\x9a\xac\x00', + ], + (Ecu.eps, 0x746, None): [ + b'K\xb0\x00\x00', + b'K\xb0\x00\x02', + b'[\xb0\x00\x00', + b'k\xb0\x00\x00', + b'{\xb0\x00\x01', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00c\x90\x1f@\x10\x0e', + b'\x00\x00c\x94\x00\x00\x00\x00', + b'\x00\x00c\x94\x1f@\x10\x08', + b'\x00\x00c\xb7\x1f@\x10\x16', + b'\x00\x00c\xd1\x1f@\x10\x17', + b'\x00\x00c\xec\x1f@ \x04', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xa0"@\x80\x07', + b'\xa0*@q\x07', + b'\xa0*@u\x07', + b'\xa0+@@\x07', + b'\xa0bAq\x07', + b'\xab"@@\x07', + b'\xab"@s\x07', + b'\xab*@@\x07', + b'\xab+@@\x07', + b'\xb4"@0\x07', + b'\xb4"@p\x07', + b'\xb4"@r\x07', + b'\xb4+@p\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xbd\xf2@`\x00', + b'\xbd\xf2@\x81\x00', + b'\xbd\xfb\xe0\x80\x00', + b'\xbe\xf2@p\x00', + b'\xbe\xf2@\x80\x00', + b'\xbe\xfb\xe0p\x00', + b'\xbf\xe2@\x80\x00', + b'\xbf\xf2@\x80\x00', + b'\xbf\xfb\xe0b\x00', + ], + }, + CAR.SUBARU_OUTBACK_PREGLOBAL_2018: { + (Ecu.abs, 0x7b0, None): [ + b'\x8b\x97\xac\x00', + b'\x8b\x97\xbc\x00', + b'\x8b\x99\xac\x00', + b'\x8b\x9a\xac\x00', + b'\x9b\x97\xac\x00', + b'\x9b\x97\xbe\x10', + b'\x9b\x9a\xac\x00', + ], + (Ecu.eps, 0x746, None): [ + b'{\xb0\x00\x00', + b'{\xb0\x00\x01', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00df\x1f@ \n', + b'\x00\x00d\x95\x00\x00\x00\x00', + b'\x00\x00d\x95\x1f@ \x0f', + b'\x00\x00d\xfe\x00\x00\x00\x00', + b'\x00\x00d\xfe\x1f@ \x15', + b'\x00\x00e\x19\x1f@ \x15', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xb5"@P\x07', + b'\xb5"@p\x07', + b'\xb5+@@\x07', + b'\xb5b@1\x07', + b'\xb5q\xe0@\x07', + b'\xc4"@0\x07', + b'\xc4+@0\x07', + b'\xc4b@p\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xbb\xf2@`\x00', + b'\xbb\xfb\xe0`\x00', + b'\xbc\xaf\xe0`\x00', + b'\xbc\xe2@\x80\x00', + b'\xbc\xf2@\x80\x00', + b'\xbc\xf2@\x81\x00', + b'\xbc\xfb\xe0`\x00', + b'\xbc\xfb\xe0\x80\x00', + ], + }, + CAR.SUBARU_OUTBACK: { + (Ecu.abs, 0x7b0, None): [ + b'\xa1 \x06\x00', + b'\xa1 \x06\x01', + b'\xa1 \x06\x02', + b'\xa1 \x06\x03', + b'\xa1 \x07\x00', + b'\xa1 \x07\x02', + b'\xa1 \x07\x03', + b'\xa1 \x08\x00', + b'\xa1 \x08\x01', + b'\xa1 \x08\x02', + b'\xa1 "\t\x00', + b'\xa1 "\t\x01', + ], + (Ecu.eps, 0x746, None): [ + b'\x1b\xc0\x10\x00', + b'\x9b\xc0\x10\x00', + b'\x9b\xc0\x10\x02', + b'\x9b\xc0 \x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x00\x00eJ\x00\x00\x00\x00\x00\x00', + b'\x00\x00eJ\x00\x1f@ \x19\x00', + b'\x00\x00e\x80\x00\x1f@ \x19\x00', + b'\x00\x00e\x9a\x00\x00\x00\x00\x00\x00', + b'\x00\x00e\x9a\x00\x1f@ 1\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xbc"`@\x07', + b'\xbc"`q\x07', + b'\xbc,\xa0q\x07', + b'\xbc,\xa0u\x07', + b'\xde"`0\x07', + b'\xde,\xa0@\x07', + b'\xe2"`0\x07', + b'\xe2"`p\x07', + b'\xe2"`q\x07', + b'\xe3,\xa0@\x07', + b'\xe2,\xa0p\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xa5\xf6D@\x00', + b'\xa5\xfe\xf6@\x00', + b'\xa5\xfe\xf7@\x00', + b'\xa5\xfe\xf8@\x00', + b'\xa7\x8e\xf40\x00', + b'\xa7\xf6D@\x00', + b'\xa7\xfe\xf4@\x00', + b'\xa7\xfe\xf6@\x00', + ], + }, + CAR.SUBARU_FORESTER_2022: { + (Ecu.abs, 0x7b0, None): [ + b'\xa3 !v\x00', + b'\xa3 !x\x00', + b'\xa3 "v\x00', + b'\xa3 "x\x00', + ], + (Ecu.eps, 0x746, None): [ + b'-\xc0\x040', + b'-\xc0%0', + b'=\xc0%\x02', + b'=\xc04\x02', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\x04!\x01\x1eD\x07!\x00\x04,', + b'\x04!\x08\x01.\x07!\x08\x022', + b'\r!\x08\x017\x00\x00\x00\x00\x00', + b'\r!\x08\x017\n!\x08\x003', + ], + (Ecu.engine, 0x7e0, None): [ + b'\xd5"`0\x07', + b'\xd5"a0\x07', + b'\xf1"`q\x07', + b'\xf1"aq\x07', + b'\xfa"`p\x07', + b'\xfa"ap\x07', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\x1d\x86B0\x00', + b'\x1d\xf6B0\x00', + b'\x1e\x86B0\x00', + b'\x1e\x86F0\x00', + b'\x1e\xf6D0\x00', + b'\x1f\xf6B1\x00', + ], + }, + CAR.SUBARU_OUTBACK_2023: { + (Ecu.abs, 0x7b0, None): [ + b'\xa1 #\x14\x00', + b'\xa1 #\x17\x00', + ], + (Ecu.eps, 0x746, None): [ + b'+\xc0\x10\x11\x00', + b'+\xc0\x12\x11\x00', + ], + (Ecu.fwdCamera, 0x787, None): [ + b'\t!\x08\x046\x05!\x08\x01/', + ], + (Ecu.engine, 0x7a2, None): [ + b'\xed,\xa0q\x07', + b'\xed,\xa2q\x07', + ], + (Ecu.transmission, 0x7a3, None): [ + b'\xa8\x8e\xf41\x00', + b'\xa8\xfe\xf41\x00', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/subaru/interface.py b/opendbc_repo/opendbc/car/subaru/interface.py new file mode 100644 index 0000000000..f3b9fbdf14 --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/interface.py @@ -0,0 +1,104 @@ +from opendbc.car import get_safety_config, structs +from opendbc.car.disable_ecu import disable_ecu +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.subaru.carcontroller import CarController +from opendbc.car.subaru.carstate import CarState +from opendbc.car.subaru.values import CAR, GLOBAL_ES_ADDR, SubaruFlags, SubaruSafetyFlags + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate: CAR, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "subaru" + ret.radarUnavailable = True + # for HYBRID CARS to be upstreamed, we need: + # - replacement for ES_Distance so we can cancel the cruise control + # - to find the Cruise_Activated bit from the car + # - proper panda safety setup (use the correct cruise_activated bit, throttle from Throttle_Hybrid, etc) + ret.dashcamOnly = bool(ret.flags & (SubaruFlags.PREGLOBAL | SubaruFlags.LKAS_ANGLE | SubaruFlags.HYBRID)) + ret.autoResumeSng = False + + # Detect infotainment message sent from the camera + if not (ret.flags & SubaruFlags.PREGLOBAL) and 0x323 in fingerprint[2]: + ret.flags |= SubaruFlags.SEND_INFOTAINMENT.value + + if ret.flags & SubaruFlags.PREGLOBAL: + ret.enableBsm = 0x25c in fingerprint[0] + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.subaruPreglobal)] + else: + ret.enableBsm = 0x228 in fingerprint[0] + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.subaru)] + if ret.flags & SubaruFlags.GLOBAL_GEN2: + ret.safetyConfigs[0].safetyParam |= SubaruSafetyFlags.GEN2.value + + ret.steerLimitTimer = 0.4 + ret.steerActuatorDelay = 0.1 + + if ret.flags & SubaruFlags.LKAS_ANGLE: + ret.steerControlType = structs.CarParams.SteerControlType.angle + else: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + if candidate in (CAR.SUBARU_ASCENT, CAR.SUBARU_ASCENT_2023): + ret.steerActuatorDelay = 0.3 # end-to-end angle controller + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kf = 0.00003 + ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 20.], [0., 20.]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.0025, 0.1], [0.00025, 0.01]] + + elif candidate == CAR.SUBARU_IMPREZA: + ret.steerActuatorDelay = 0.4 # end-to-end angle controller + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kf = 0.00005 + ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 20.], [0., 20.]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.2, 0.3], [0.02, 0.03]] + + elif candidate == CAR.SUBARU_IMPREZA_2020: + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kf = 0.00005 + ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 14., 23.], [0., 14., 23.]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.045, 0.042, 0.20], [0.04, 0.035, 0.045]] + + elif candidate == CAR.SUBARU_CROSSTREK_HYBRID: + ret.steerActuatorDelay = 0.1 + + elif candidate in (CAR.SUBARU_FORESTER, CAR.SUBARU_FORESTER_2022, CAR.SUBARU_FORESTER_HYBRID): + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kf = 0.000038 + ret.lateralTuning.pid.kiBP, ret.lateralTuning.pid.kpBP = [[0., 14., 23.], [0., 14., 23.]] + ret.lateralTuning.pid.kpV, ret.lateralTuning.pid.kiV = [[0.01, 0.065, 0.2], [0.001, 0.015, 0.025]] + + elif candidate in (CAR.SUBARU_OUTBACK, CAR.SUBARU_LEGACY, CAR.SUBARU_OUTBACK_2023): + ret.steerActuatorDelay = 0.1 + + elif candidate in (CAR.SUBARU_FORESTER_PREGLOBAL, CAR.SUBARU_OUTBACK_PREGLOBAL_2018): + # Outback 2018-2019 and Forester have reversed driver torque signal + ret.safetyConfigs[0].safetyParam = SubaruSafetyFlags.PREGLOBAL_REVERSED_DRIVER_TORQUE.value + + elif candidate == CAR.SUBARU_LEGACY_PREGLOBAL: + ret.steerActuatorDelay = 0.15 + + elif candidate == CAR.SUBARU_OUTBACK_PREGLOBAL: + pass + else: + raise ValueError(f"unknown car: {candidate}") + + ret.alphaLongitudinalAvailable = not (ret.flags & (SubaruFlags.GLOBAL_GEN2 | SubaruFlags.PREGLOBAL | + SubaruFlags.LKAS_ANGLE | SubaruFlags.HYBRID)) + ret.openpilotLongitudinalControl = alpha_long and ret.alphaLongitudinalAvailable + + if ret.flags & SubaruFlags.GLOBAL_GEN2 and ret.openpilotLongitudinalControl: + ret.flags |= SubaruFlags.DISABLE_EYESIGHT.value + + if ret.openpilotLongitudinalControl: + ret.safetyConfigs[0].safetyParam |= SubaruSafetyFlags.LONG.value + + return ret + + @staticmethod + def init(CP, can_recv, can_send): + if CP.flags & SubaruFlags.DISABLE_EYESIGHT: + disable_ecu(can_recv, can_send, bus=2, addr=GLOBAL_ES_ADDR, com_cont_req=b'\x28\x03\x01') diff --git a/opendbc_repo/opendbc/car/subaru/subarucan.py b/opendbc_repo/opendbc/car/subaru/subarucan.py new file mode 100644 index 0000000000..61477a9204 --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/subarucan.py @@ -0,0 +1,332 @@ +from opendbc.car import structs +from opendbc.car.subaru.values import CanBus + +VisualAlert = structs.CarControl.HUDControl.VisualAlert + + +def create_steering_control(packer, apply_torque, steer_req): + values = { + "LKAS_Output": apply_torque, + "LKAS_Request": steer_req, + "SET_1": 1 + } + return packer.make_can_msg("ES_LKAS", 0, values) + + +def create_steering_control_angle(packer, apply_torque, steer_req): + values = { + "LKAS_Output": apply_torque, + "LKAS_Request": steer_req, + "SET_3": 3 + } + return packer.make_can_msg("ES_LKAS_ANGLE", 0, values) + + +def create_steering_status(packer): + return packer.make_can_msg("ES_LKAS_State", 0, {}) + +def create_es_distance(packer, frame, es_distance_msg, bus, pcm_cancel_cmd, long_enabled = False, brake_cmd = False, cruise_throttle = 0): + values = {s: es_distance_msg[s] for s in [ + "CHECKSUM", + "Signal1", + "Cruise_Fault", + "Cruise_Throttle", + "Signal2", + "Car_Follow", + "Low_Speed_Follow", + "Cruise_Soft_Disable", + "Signal7", + "Cruise_Brake_Active", + "Distance_Swap", + "Cruise_EPB", + "Signal4", + "Close_Distance", + "Signal5", + "Cruise_Cancel", + "Cruise_Set", + "Cruise_Resume", + "Signal6", + ]} + + values["COUNTER"] = frame % 0x10 + + if long_enabled: + values["Cruise_Throttle"] = cruise_throttle + + # Do not disable openpilot on Eyesight Soft Disable, if openpilot is controlling long + values["Cruise_Soft_Disable"] = 0 + values["Cruise_Fault"] = 0 + + values["Cruise_Brake_Active"] = brake_cmd + + if pcm_cancel_cmd: + values["Cruise_Cancel"] = 1 + values["Cruise_Throttle"] = 1818 # inactive throttle + + return packer.make_can_msg("ES_Distance", bus, values) + + +def create_es_lkas_state(packer, frame, es_lkas_state_msg, enabled, visual_alert, left_line, right_line, left_lane_depart, right_lane_depart): + values = {s: es_lkas_state_msg[s] for s in [ + "CHECKSUM", + "LKAS_Alert_Msg", + "Signal1", + "LKAS_ACTIVE", + "LKAS_Dash_State", + "Signal2", + "Backward_Speed_Limit_Menu", + "LKAS_Left_Line_Enable", + "LKAS_Left_Line_Light_Blink", + "LKAS_Right_Line_Enable", + "LKAS_Right_Line_Light_Blink", + "LKAS_Left_Line_Visible", + "LKAS_Right_Line_Visible", + "LKAS_Alert", + "Signal3", + ]} + + values["COUNTER"] = frame % 0x10 + + # Filter the stock LKAS "Keep hands on wheel" alert + if values["LKAS_Alert_Msg"] == 1: + values["LKAS_Alert_Msg"] = 0 + + # Filter the stock LKAS sending an audible alert when it turns off LKAS + if values["LKAS_Alert"] == 27: + values["LKAS_Alert"] = 0 + + # Filter the stock LKAS sending an audible alert when "Keep hands on wheel" alert is active (2020+ models) + if values["LKAS_Alert"] == 28 and values["LKAS_Alert_Msg"] == 7: + values["LKAS_Alert"] = 0 + + # Filter the stock LKAS sending an audible alert when "Keep hands on wheel OFF" alert is active (2020+ models) + if values["LKAS_Alert"] == 30: + values["LKAS_Alert"] = 0 + + # Filter the stock LKAS sending "Keep hands on wheel OFF" alert (2020+ models) + if values["LKAS_Alert_Msg"] == 7: + values["LKAS_Alert_Msg"] = 0 + + # Show Keep hands on wheel alert for openpilot steerRequired alert + if visual_alert == VisualAlert.steerRequired: + values["LKAS_Alert_Msg"] = 1 + + # Ensure we don't overwrite potentially more important alerts from stock (e.g. FCW) + if visual_alert == VisualAlert.ldw and values["LKAS_Alert"] == 0: + if left_lane_depart: + values["LKAS_Alert"] = 12 # Left lane departure dash alert + elif right_lane_depart: + values["LKAS_Alert"] = 11 # Right lane departure dash alert + + if enabled: + values["LKAS_ACTIVE"] = 1 # Show LKAS lane lines + values["LKAS_Dash_State"] = 2 # Green enabled indicator + else: + values["LKAS_Dash_State"] = 0 # LKAS Not enabled + + values["LKAS_Left_Line_Visible"] = int(left_line) + values["LKAS_Right_Line_Visible"] = int(right_line) + + return packer.make_can_msg("ES_LKAS_State", CanBus.main, values) + +def create_es_dashstatus(packer, frame, dashstatus_msg, enabled, long_enabled, long_active, lead_visible): + values = {s: dashstatus_msg[s] for s in [ + "CHECKSUM", + "PCB_Off", + "LDW_Off", + "Signal1", + "Cruise_State_Msg", + "LKAS_State_Msg", + "Signal2", + "Cruise_Soft_Disable", + "Cruise_Status_Msg", + "Signal3", + "Cruise_Distance", + "Signal4", + "Conventional_Cruise", + "Signal5", + "Cruise_Disengaged", + "Cruise_Activated", + "Signal6", + "Cruise_Set_Speed", + "Cruise_Fault", + "Cruise_On", + "Display_Own_Car", + "Brake_Lights", + "Car_Follow", + "Signal7", + "Far_Distance", + "Cruise_State", + ]} + + values["COUNTER"] = frame % 0x10 + + if long_enabled: + values["Cruise_State"] = 0 + values["Cruise_Activated"] = enabled + values["Cruise_Disengaged"] = 0 + values["Car_Follow"] = int(lead_visible) + + values["PCB_Off"] = 1 # AEB is not presevered, so show the PCB_Off on dash + values["LDW_Off"] = 0 + values["Cruise_Fault"] = 0 + + # Filter stock LKAS disabled and Keep hands on steering wheel OFF alerts + if values["LKAS_State_Msg"] in (2, 3): + values["LKAS_State_Msg"] = 0 + + return packer.make_can_msg("ES_DashStatus", CanBus.main, values) + +def create_es_brake(packer, frame, es_brake_msg, long_enabled, long_active, brake_value): + values = {s: es_brake_msg[s] for s in [ + "CHECKSUM", + "Signal1", + "Brake_Pressure", + "AEB_Status", + "Cruise_Brake_Lights", + "Cruise_Brake_Fault", + "Cruise_Brake_Active", + "Cruise_Activated", + "Signal3", + ]} + + values["COUNTER"] = frame % 0x10 + + if long_enabled: + values["Cruise_Brake_Fault"] = 0 + values["Cruise_Activated"] = long_active + + values["Brake_Pressure"] = brake_value + + values["Cruise_Brake_Active"] = brake_value > 0 + values["Cruise_Brake_Lights"] = brake_value >= 70 + + return packer.make_can_msg("ES_Brake", CanBus.main, values) + +def create_es_status(packer, frame, es_status_msg, long_enabled, long_active, cruise_rpm): + values = {s: es_status_msg[s] for s in [ + "CHECKSUM", + "Signal1", + "Cruise_Fault", + "Cruise_RPM", + "Cruise_Activated", + "Brake_Lights", + "Cruise_Hold", + "Signal3", + ]} + + values["COUNTER"] = frame % 0x10 + + if long_enabled: + values["Cruise_RPM"] = cruise_rpm + values["Cruise_Fault"] = 0 + + values["Cruise_Activated"] = long_active + + return packer.make_can_msg("ES_Status", CanBus.main, values) + + +def create_es_infotainment(packer, frame, es_infotainment_msg, visual_alert): + # Filter stock LKAS disabled and Keep hands on steering wheel OFF alerts + values = {s: es_infotainment_msg[s] for s in [ + "CHECKSUM", + "LKAS_State_Infotainment", + "LKAS_Blue_Lines", + "Signal1", + "Signal2", + ]} + + values["COUNTER"] = frame % 0x10 + + if values["LKAS_State_Infotainment"] in (3, 4): + values["LKAS_State_Infotainment"] = 0 + + # Show Keep hands on wheel alert for openpilot steerRequired alert + if visual_alert == VisualAlert.steerRequired: + values["LKAS_State_Infotainment"] = 3 + + # Show Obstacle Detected for fcw + if visual_alert == VisualAlert.fcw: + values["LKAS_State_Infotainment"] = 2 + + return packer.make_can_msg("ES_Infotainment", CanBus.main, values) + + +def create_es_highbeamassist(packer): + values = { + "HBA_Available": False, + } + + return packer.make_can_msg("ES_HighBeamAssist", CanBus.main, values) + + +def create_es_static_1(packer): + values = { + "SET_3": 3, + } + + return packer.make_can_msg("ES_STATIC_1", CanBus.main, values) + + +def create_es_static_2(packer): + values = { + "SET_3": 3, + } + + return packer.make_can_msg("ES_STATIC_2", CanBus.main, values) + + +# *** Subaru Pre-global *** + +def subaru_preglobal_checksum(packer, values, addr, checksum_byte=7): + dat = packer.make_can_msg(addr, 0, values)[1] + return (sum(dat[:checksum_byte]) + sum(dat[checksum_byte+1:])) % 256 + + +def create_preglobal_steering_control(packer, frame, apply_torque, steer_req): + values = { + "COUNTER": frame % 0x08, + "LKAS_Command": apply_torque, + "LKAS_Active": steer_req, + } + values["Checksum"] = subaru_preglobal_checksum(packer, values, "ES_LKAS") + + return packer.make_can_msg("ES_LKAS", CanBus.main, values) + + +def create_preglobal_es_distance(packer, cruise_button, es_distance_msg): + values = {s: es_distance_msg[s] for s in [ + "Cruise_Throttle", + "Signal1", + "Car_Follow", + "Signal2", + "Cruise_Brake_Active", + "Distance_Swap", + "Standstill", + "Signal3", + "Close_Distance", + "Signal4", + "Standstill_2", + "Cruise_Fault", + "Signal5", + "COUNTER", + "Signal6", + "Cruise_Button", + "Signal7", + ]} + + values["Cruise_Button"] = cruise_button + values["Checksum"] = subaru_preglobal_checksum(packer, values, "ES_Distance") + + return packer.make_can_msg("ES_Distance", CanBus.main, values) + + +def subaru_checksum(address: int, sig, d: bytearray) -> int: + s = 0 + addr = address + while addr: + s += addr & 0xFF + addr >>= 8 + for i in range(1, len(d)): + s += d[i] + return s & 0xFF diff --git a/opendbc_repo/opendbc/car/subaru/tests/__init__.py b/opendbc_repo/opendbc/car/subaru/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/subaru/tests/test_subaru.py b/opendbc_repo/opendbc/car/subaru/tests/test_subaru.py new file mode 100644 index 0000000000..7f3d9bb3c5 --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/tests/test_subaru.py @@ -0,0 +1,10 @@ +from opendbc.car.subaru.fingerprints import FW_VERSIONS + + +class TestSubaruFingerprint: + def test_fw_version_format(self): + for platform, fws_per_ecu in FW_VERSIONS.items(): + for (ecu, _, _), fws in fws_per_ecu.items(): + fw_size = len(fws[0]) + for fw in fws: + assert len(fw) == fw_size, f"{platform} {ecu}: {len(fw)} {fw_size}" diff --git a/opendbc_repo/opendbc/car/subaru/values.py b/opendbc_repo/opendbc/car/subaru/values.py new file mode 100644 index 0000000000..c65f38eced --- /dev/null +++ b/opendbc_repo/opendbc/car/subaru/values.py @@ -0,0 +1,282 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag + +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, uds +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Tool, Column +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries, p16 + +Ecu = CarParams.Ecu + + +class CarControllerParams: + def __init__(self, CP): + self.STEER_STEP = 2 # how often we update the steer cmd + self.STEER_DELTA_UP = 50 # torque increase per refresh, 0.8s to max + self.STEER_DELTA_DOWN = 70 # torque decrease per refresh + self.STEER_DRIVER_ALLOWANCE = 60 # allowed driver torque before start limiting + self.STEER_DRIVER_MULTIPLIER = 50 # weight driver torque heavily + self.STEER_DRIVER_FACTOR = 1 # from dbc + + if CP.flags & SubaruFlags.GLOBAL_GEN2: + # TODO: lower rate limits, this reaches min/max in 0.5s which negatively affects tuning + self.STEER_MAX = 1000 + self.STEER_DELTA_UP = 40 + self.STEER_DELTA_DOWN = 40 + elif CP.carFingerprint == CAR.SUBARU_IMPREZA_2020: + self.STEER_DELTA_UP = 35 + self.STEER_MAX = 1439 + else: + self.STEER_MAX = 2047 + + THROTTLE_MIN = 808 + THROTTLE_MAX = 3400 + + THROTTLE_INACTIVE = 1818 # corresponds to zero acceleration + THROTTLE_ENGINE_BRAKE = 808 # while braking, eyesight sets throttle to this, probably for engine braking + + BRAKE_MIN = 0 + BRAKE_MAX = 600 # about -3.5m/s2 from testing + + RPM_MIN = 0 + RPM_MAX = 3600 + + RPM_INACTIVE = 600 # a good base rpm for zero acceleration + + THROTTLE_LOOKUP_BP = [0, 2] + THROTTLE_LOOKUP_V = [THROTTLE_INACTIVE, THROTTLE_MAX] + + RPM_LOOKUP_BP = [0, 2] + RPM_LOOKUP_V = [RPM_INACTIVE, RPM_MAX] + + BRAKE_LOOKUP_BP = [-3.5, 0] + BRAKE_LOOKUP_V = [BRAKE_MAX, BRAKE_MIN] + + +class SubaruSafetyFlags(IntFlag): + GEN2 = 1 + LONG = 2 + PREGLOBAL_REVERSED_DRIVER_TORQUE = 4 + + +class SubaruFlags(IntFlag): + # Detected flags + SEND_INFOTAINMENT = 1 + DISABLE_EYESIGHT = 2 + + # Static flags + GLOBAL_GEN2 = 4 + + # Cars that temporarily fault when steering angle rate is greater than some threshold. + # Appears to be all torque-based cars produced around 2019 - present + STEER_RATE_LIMITED = 8 + PREGLOBAL = 16 + HYBRID = 32 + LKAS_ANGLE = 64 + + +GLOBAL_ES_ADDR = 0x787 +GEN2_ES_BUTTONS_DID = b'\x11\x30' + + +class CanBus: + main = 0 + alt = 1 + camera = 2 + + +class Footnote(Enum): + GLOBAL = CarFootnote( + "In the non-US market, openpilot requires the car to come equipped with EyeSight with Lane Keep Assistance.", + Column.PACKAGE) + EXP_LONG = CarFootnote( + "Enabling longitudinal control (alpha) will disable all EyeSight functionality, including AEB, LDW, and RAB.", + Column.LONGITUDINAL) + + +@dataclass +class SubaruCarDocs(CarDocs): + package: str = "EyeSight Driver Assistance" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.subaru_a])) + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.GLOBAL]) + + def init_make(self, CP: CarParams): + self.car_parts.parts.extend([Tool.socket_8mm_deep, Tool.pry_tool]) + + if CP.alphaLongitudinalAvailable: + self.footnotes.append(Footnote.EXP_LONG) + + +@dataclass +class SubaruPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'subaru_global_2017_generated'}) + + def init(self): + if self.flags & SubaruFlags.HYBRID: + self.dbc_dict = {Bus.pt: 'subaru_global_2020_hybrid_generated'} + + +@dataclass +class SubaruGen2PlatformConfig(SubaruPlatformConfig): + def init(self): + super().init() + self.flags |= SubaruFlags.GLOBAL_GEN2 + if not (self.flags & SubaruFlags.LKAS_ANGLE): + self.flags |= SubaruFlags.STEER_RATE_LIMITED + + +class CAR(Platforms): + # Global platform + SUBARU_ASCENT = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Ascent 2019-21", "All")], + CarSpecs(mass=2031, wheelbase=2.89, steerRatio=13.5), + ) + SUBARU_OUTBACK = SubaruGen2PlatformConfig( + [SubaruCarDocs("Subaru Outback 2020-22", "All", car_parts=CarParts.common([CarHarness.subaru_b]))], + CarSpecs(mass=1568, wheelbase=2.67, steerRatio=17), + ) + SUBARU_LEGACY = SubaruGen2PlatformConfig( + [SubaruCarDocs("Subaru Legacy 2020-22", "All", car_parts=CarParts.common([CarHarness.subaru_b]))], + SUBARU_OUTBACK.specs, + ) + SUBARU_IMPREZA = SubaruPlatformConfig( + [ + SubaruCarDocs("Subaru Impreza 2017-19"), + SubaruCarDocs("Subaru Crosstrek 2018-19", video="https://youtu.be/Agww7oE1k-s?t=26"), + SubaruCarDocs("Subaru XV 2018-19", video="https://youtu.be/Agww7oE1k-s?t=26"), + ], + CarSpecs(mass=1568, wheelbase=2.67, steerRatio=15), + ) + SUBARU_IMPREZA_2020 = SubaruPlatformConfig( + [ + SubaruCarDocs("Subaru Impreza 2020-22"), + SubaruCarDocs("Subaru Crosstrek 2020-23"), + SubaruCarDocs("Subaru XV 2020-21"), + ], + CarSpecs(mass=1480, wheelbase=2.67, steerRatio=17), + flags=SubaruFlags.STEER_RATE_LIMITED, + ) + # TODO: is there an XV and Impreza too? + SUBARU_CROSSTREK_HYBRID = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Crosstrek Hybrid 2020", car_parts=CarParts.common([CarHarness.subaru_b]))], + CarSpecs(mass=1668, wheelbase=2.67, steerRatio=17), + flags=SubaruFlags.HYBRID, + ) + SUBARU_FORESTER = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Forester 2019-21", "All")], + CarSpecs(mass=1568, wheelbase=2.67, steerRatio=17), + flags=SubaruFlags.STEER_RATE_LIMITED, + ) + SUBARU_FORESTER_HYBRID = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Forester Hybrid 2020")], + SUBARU_FORESTER.specs, + flags=SubaruFlags.HYBRID, + ) + # Pre-global + SUBARU_FORESTER_PREGLOBAL = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Forester 2017-18")], + CarSpecs(mass=1568, wheelbase=2.67, steerRatio=20), + {Bus.pt: 'subaru_forester_2017_generated'}, + flags=SubaruFlags.PREGLOBAL, + ) + SUBARU_LEGACY_PREGLOBAL = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Legacy 2015-18")], + CarSpecs(mass=1568, wheelbase=2.67, steerRatio=12.5), + {Bus.pt: 'subaru_outback_2015_generated'}, + flags=SubaruFlags.PREGLOBAL, + ) + SUBARU_OUTBACK_PREGLOBAL = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Outback 2015-17")], + SUBARU_FORESTER_PREGLOBAL.specs, + {Bus.pt: 'subaru_outback_2015_generated'}, + flags=SubaruFlags.PREGLOBAL, + ) + SUBARU_OUTBACK_PREGLOBAL_2018 = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Outback 2018-19")], + SUBARU_FORESTER_PREGLOBAL.specs, + {Bus.pt: 'subaru_outback_2019_generated'}, + flags=SubaruFlags.PREGLOBAL, + ) + # Angle LKAS + SUBARU_FORESTER_2022 = SubaruPlatformConfig( + [SubaruCarDocs("Subaru Forester 2022-24", "All", car_parts=CarParts.common([CarHarness.subaru_c]))], + SUBARU_FORESTER.specs, + flags=SubaruFlags.LKAS_ANGLE, + ) + SUBARU_OUTBACK_2023 = SubaruGen2PlatformConfig( + [SubaruCarDocs("Subaru Outback 2023", "All", car_parts=CarParts.common([CarHarness.subaru_d]))], + SUBARU_OUTBACK.specs, + flags=SubaruFlags.LKAS_ANGLE, + ) + SUBARU_ASCENT_2023 = SubaruGen2PlatformConfig( + [SubaruCarDocs("Subaru Ascent 2023", "All", car_parts=CarParts.common([CarHarness.subaru_d]))], + SUBARU_ASCENT.specs, + flags=SubaruFlags.LKAS_ANGLE, + ) + + +SUBARU_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_DATA_IDENTIFICATION) +SUBARU_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_DATA_IDENTIFICATION) + +# The EyeSight ECU takes 10s to respond to SUBARU_VERSION_REQUEST properly, +# log this alternate manufacturer-specific query +SUBARU_ALT_VERSION_REQUEST = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(0xf100) +SUBARU_ALT_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + \ + p16(0xf100) + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + Request( + [StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.fwdCamera, Ecu.engine, Ecu.transmission], + logging=True, + ), + # Non-OBD requests + # Some Eyesight modules fail on TESTER_PRESENT_REQUEST + # TODO: check if this resolves the fingerprinting issue for the 2023 Ascent and other new Subaru cars + Request( + [SUBARU_VERSION_REQUEST], + [SUBARU_VERSION_RESPONSE], + whitelist_ecus=[Ecu.fwdCamera], + bus=0, + ), + Request( + [SUBARU_ALT_VERSION_REQUEST], + [SUBARU_ALT_VERSION_RESPONSE], + whitelist_ecus=[Ecu.fwdCamera], + bus=0, + logging=True, + ), + Request( + [StdQueries.DEFAULT_DIAGNOSTIC_REQUEST, StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], + [StdQueries.DEFAULT_DIAGNOSTIC_RESPONSE, StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], + whitelist_ecus=[Ecu.fwdCamera], + bus=0, + logging=True, + ), + Request( + [StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.fwdCamera, Ecu.engine, Ecu.transmission], + bus=0, + ), + # GEN2 powertrain bus query + Request( + [StdQueries.TESTER_PRESENT_REQUEST, SUBARU_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, SUBARU_VERSION_RESPONSE], + whitelist_ecus=[Ecu.abs, Ecu.eps, Ecu.fwdCamera, Ecu.engine, Ecu.transmission], + bus=1, + obd_multiplexing=False, + ), + ], + # We don't get the EPS from non-OBD queries on GEN2 cars. Note that we still attempt to match when it exists + non_essential_ecus={ + Ecu.eps: list(CAR.with_flags(SubaruFlags.GLOBAL_GEN2)), + } +) + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/tesla/__init__.py b/opendbc_repo/opendbc/car/tesla/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/tesla/carcontroller.py b/opendbc_repo/opendbc/car/tesla/carcontroller.py new file mode 100644 index 0000000000..fb23563a58 --- /dev/null +++ b/opendbc_repo/opendbc/car/tesla/carcontroller.py @@ -0,0 +1,55 @@ +import numpy as np +from opendbc.can import CANPacker +from opendbc.car import Bus, apply_std_steer_angle_limits +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.tesla.teslacan import TeslaCAN +from opendbc.car.tesla.values import CarControllerParams + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.apply_angle_last = 0 + self.packer = CANPacker(dbc_names[Bus.party]) + self.tesla_can = TeslaCAN(self.packer) + + def update(self, CC, CS, now_nanos): + actuators = CC.actuators + can_sends = [] + + # Disengage and allow for user override on high torque inputs + # TODO: move this to a generic disengageRequested carState field and set CC.cruiseControl.cancel based on it + hands_on_fault = CS.hands_on_level >= 3 + cruise_cancel = CC.cruiseControl.cancel or hands_on_fault + lat_active = CC.latActive and not hands_on_fault + + if self.frame % 2 == 0: + # Angular rate limit based on speed + self.apply_angle_last = apply_std_steer_angle_limits(actuators.steeringAngleDeg, self.apply_angle_last, CS.out.vEgo, + CS.out.steeringAngleDeg, CC.latActive, CarControllerParams.ANGLE_LIMITS) + + can_sends.append(self.tesla_can.create_steering_control(self.apply_angle_last, lat_active, (self.frame // 2) % 16)) + + if self.frame % 10 == 0: + can_sends.append(self.tesla_can.create_steering_allowed((self.frame // 10) % 16)) + + # Longitudinal control + if self.CP.openpilotLongitudinalControl: + if self.frame % 4 == 0: + state = 13 if cruise_cancel else 4 # 4=ACC_ON, 13=ACC_CANCEL_GENERIC_SILENT + accel = float(np.clip(actuators.accel, CarControllerParams.ACCEL_MIN, CarControllerParams.ACCEL_MAX)) + cntr = (self.frame // 4) % 8 + can_sends.append(self.tesla_can.create_longitudinal_command(state, accel, cntr, CS.out.vEgo, CC.longActive)) + + else: + # Increment counter so cancel is prioritized even without openpilot longitudinal + if cruise_cancel: + cntr = (CS.das_control["DAS_controlCounter"] + 1) % 8 + can_sends.append(self.tesla_can.create_longitudinal_command(13, 0, cntr, CS.out.vEgo, False)) + + # TODO: HUD control + new_actuators = actuators.as_builder() + new_actuators.steeringAngleDeg = self.apply_angle_last + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/tesla/carstate.py b/opendbc_repo/opendbc/car/tesla/carstate.py new file mode 100644 index 0000000000..96a95c9084 --- /dev/null +++ b/opendbc_repo/opendbc/car/tesla/carstate.py @@ -0,0 +1,101 @@ +import copy +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase +from opendbc.car.tesla.values import DBC, CANBUS, GEAR_MAP, STEER_THRESHOLD + +ButtonType = structs.CarState.ButtonEvent.Type + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + self.can_define = CANDefine(DBC[CP.carFingerprint][Bus.party]) + self.shifter_values = self.can_define.dv["DI_systemStatus"]["DI_gear"] + + self.hands_on_level = 0 + self.das_control = None + + def update(self, can_parsers) -> structs.CarState: + cp_party = can_parsers[Bus.party] + cp_ap_party = can_parsers[Bus.ap_party] + ret = structs.CarState() + + # Vehicle speed + ret.vEgoRaw = cp_party.vl["DI_speed"]["DI_vehicleSpeed"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + + # Gas pedal + pedal_status = cp_party.vl["DI_systemStatus"]["DI_accelPedalPos"] + ret.gas = pedal_status / 100.0 + ret.gasPressed = pedal_status > 0 + + # Brake pedal + ret.brake = 0 + ret.brakePressed = cp_party.vl["IBST_status"]["IBST_driverBrakeApply"] == 2 + + # Steering wheel + epas_status = cp_party.vl["EPAS3S_sysStatus"] + self.hands_on_level = epas_status["EPAS3S_handsOnLevel"] + ret.steeringAngleDeg = -epas_status["EPAS3S_internalSAS"] + ret.steeringRateDeg = -cp_ap_party.vl["SCCM_steeringAngleSensor"]["SCCM_steeringAngleSpeed"] + ret.steeringTorque = -epas_status["EPAS3S_torsionBarTorque"] + + # This matches stock logic, but with halved minimum frames (0.25-0.3s) + ret.steeringPressed = self.update_steering_pressed(abs(ret.steeringTorque) > STEER_THRESHOLD, 15) + + eac_status = self.can_define.dv["EPAS3S_sysStatus"]["EPAS3S_eacStatus"].get(int(epas_status["EPAS3S_eacStatus"]), None) + ret.steerFaultPermanent = eac_status == "EAC_FAULT" + ret.steerFaultTemporary = eac_status == "EAC_INHIBITED" + + # Cruise state + cruise_state = self.can_define.dv["DI_state"]["DI_cruiseState"].get(int(cp_party.vl["DI_state"]["DI_cruiseState"]), None) + speed_units = self.can_define.dv["DI_state"]["DI_speedUnits"].get(int(cp_party.vl["DI_state"]["DI_speedUnits"]), None) + + ret.cruiseState.enabled = cruise_state in ("ENABLED", "STANDSTILL", "OVERRIDE", "PRE_FAULT", "PRE_CANCEL") + if speed_units == "KPH": + ret.cruiseState.speed = max(cp_party.vl["DI_state"]["DI_digitalSpeed"] * CV.KPH_TO_MS, 1e-3) + elif speed_units == "MPH": + ret.cruiseState.speed = max(cp_party.vl["DI_state"]["DI_digitalSpeed"] * CV.MPH_TO_MS, 1e-3) + ret.cruiseState.available = cruise_state == "STANDBY" or ret.cruiseState.enabled + ret.cruiseState.standstill = False # This needs to be false, since we can resume from stop without sending anything special + ret.standstill = cruise_state == "STANDSTILL" + ret.accFaulted = cruise_state == "FAULT" + + # Gear + ret.gearShifter = GEAR_MAP[self.can_define.dv["DI_systemStatus"]["DI_gear"].get(int(cp_party.vl["DI_systemStatus"]["DI_gear"]), "DI_GEAR_INVALID")] + + # Doors + ret.doorOpen = cp_party.vl["UI_warning"]["anyDoorOpen"] == 1 + + # Blinkers + ret.leftBlinker = cp_party.vl["UI_warning"]["leftBlinkerBlinking"] in (1, 2) + ret.rightBlinker = cp_party.vl["UI_warning"]["rightBlinkerBlinking"] in (1, 2) + + # Seatbelt + ret.seatbeltUnlatched = cp_party.vl["UI_warning"]["buckleStatus"] != 1 + + # Blindspot + ret.leftBlindspot = cp_ap_party.vl["DAS_status"]["DAS_blindSpotRearLeft"] != 0 + ret.rightBlindspot = cp_ap_party.vl["DAS_status"]["DAS_blindSpotRearRight"] != 0 + + # AEB + ret.stockAeb = cp_ap_party.vl["DAS_control"]["DAS_aebEvent"] == 1 + + # Stock Autosteer should be off (includes FSD) + ret.invalidLkasSetting = cp_ap_party.vl["DAS_settings"]["DAS_autosteerEnabled"] != 0 + + # Buttons # ToDo: add Gap adjust button + + # Messages needed by carcontroller + self.das_control = copy.copy(cp_ap_party.vl["DAS_control"]) + + return ret + + @staticmethod + def get_can_parsers(CP): + return { + Bus.party: CANParser(DBC[CP.carFingerprint][Bus.party], [], CANBUS.party), + Bus.ap_party: CANParser(DBC[CP.carFingerprint][Bus.party], [], CANBUS.autopilot_party) + } diff --git a/opendbc_repo/opendbc/car/tesla/fingerprints.py b/opendbc_repo/opendbc/car/tesla/fingerprints.py new file mode 100644 index 0000000000..978897f33c --- /dev/null +++ b/opendbc_repo/opendbc/car/tesla/fingerprints.py @@ -0,0 +1,37 @@ +from opendbc.car.structs import CarParams +from opendbc.car.tesla.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.TESLA_MODEL_3: { + (Ecu.eps, 0x730, None): [ + b'TeM3_E014p10_0.0.0 (16),E014.17.00', + b'TeM3_E014p10_0.0.0 (16),EL014.17.00', + b'TeM3_ES014p11_0.0.0 (25),ES014.19.0', + b'TeMYG4_DCS_Update_0.0.0 (13),E4014.28.1', + b'TeMYG4_DCS_Update_0.0.0 (9),E4014.26.0', + b'TeMYG4_Legacy3Y_0.0.0 (2),E4015.02.0', + b'TeMYG4_Legacy3Y_0.0.0 (5),E4015.03.2', + b'TeMYG4_Main_0.0.0 (59),E4H014.29.0', + b'TeMYG4_Main_0.0.0 (65),E4H015.01.0', + b'TeMYG4_Main_0.0.0 (67),E4H015.02.1', + b'TeMYG4_SingleECU_0.0.0 (33),E4S014.27', + ], + }, + CAR.TESLA_MODEL_Y: { + (Ecu.eps, 0x730, None): [ + b'TeM3_E014p10_0.0.0 (16),Y002.18.00', + b'TeM3_E014p10_0.0.0 (16),YP002.18.00', + b'TeM3_ES014p11_0.0.0 (16),YS002.17', + b'TeM3_ES014p11_0.0.0 (25),YS002.19.0', + b'TeMYG4_DCS_Update_0.0.0 (13),Y4002.27.1', + b'TeMYG4_DCS_Update_0.0.0 (13),Y4P002.27.1', + b'TeMYG4_DCS_Update_0.0.0 (9),Y4P002.25.0', + b'TeMYG4_Legacy3Y_0.0.0 (2),Y4003.02.0', + b'TeMYG4_Legacy3Y_0.0.0 (5),Y4003.03.2', + b'TeMYG4_Legacy3Y_0.0.0 (2),Y4P003.02.0', + b'TeMYG4_SingleECU_0.0.0 (33),Y4S002.26', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/tesla/interface.py b/opendbc_repo/opendbc/car/tesla/interface.py new file mode 100644 index 0000000000..e67df8f4a0 --- /dev/null +++ b/opendbc_repo/opendbc/car/tesla/interface.py @@ -0,0 +1,34 @@ +from opendbc.car import get_safety_config, structs +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.tesla.carcontroller import CarController +from opendbc.car.tesla.carstate import CarState +from opendbc.car.tesla.values import TeslaSafetyFlags + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "tesla" + + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.tesla)] + + ret.steerLimitTimer = 1.0 + ret.steerActuatorDelay = 0.1 + ret.steerAtStandstill = True + + ret.steerControlType = structs.CarParams.SteerControlType.angle + ret.radarUnavailable = True + + ret.alphaLongitudinalAvailable = True + if alpha_long: + ret.openpilotLongitudinalControl = True + ret.safetyConfigs[0].safetyParam |= TeslaSafetyFlags.LONG_CONTROL.value + + ret.vEgoStopping = 0.1 + ret.vEgoStarting = 0.1 + ret.stoppingDecelRate = 0.3 + + return ret diff --git a/opendbc_repo/opendbc/car/tesla/teslacan.py b/opendbc_repo/opendbc/car/tesla/teslacan.py new file mode 100644 index 0000000000..615eef85e8 --- /dev/null +++ b/opendbc_repo/opendbc/car/tesla/teslacan.py @@ -0,0 +1,66 @@ +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.tesla.values import CANBUS, CarControllerParams + + +class TeslaCAN: + def __init__(self, packer): + self.packer = packer + + @staticmethod + def checksum(msg_id, dat): + ret = (msg_id & 0xFF) + ((msg_id >> 8) & 0xFF) + ret += sum(dat) + return ret & 0xFF + + def create_steering_control(self, angle, enabled, counter): + values = { + "DAS_steeringAngleRequest": -angle, + "DAS_steeringHapticRequest": 0, + "DAS_steeringControlType": 1 if enabled else 0, + "DAS_steeringControlCounter": counter, + } + + data = self.packer.make_can_msg("DAS_steeringControl", CANBUS.party, values)[1] + values["DAS_steeringControlChecksum"] = self.checksum(0x488, data[:3]) + return self.packer.make_can_msg("DAS_steeringControl", CANBUS.party, values) + + def create_longitudinal_command(self, acc_state, accel, cntr, v_ego, active): + from opendbc.car.interfaces import V_CRUISE_MAX + set_speed = max(v_ego * CV.MS_TO_KPH, 0) + if active: + # TODO: this causes jerking after gas override when above set speed + set_speed = 0 if accel < 0 else V_CRUISE_MAX + + values = { + "DAS_setSpeed": set_speed, + "DAS_accState": acc_state, + "DAS_aebEvent": 0, + "DAS_jerkMin": CarControllerParams.JERK_LIMIT_MIN, + "DAS_jerkMax": CarControllerParams.JERK_LIMIT_MAX, + "DAS_accelMin": accel, + "DAS_accelMax": max(accel, 0), + "DAS_controlCounter": cntr, + "DAS_controlChecksum": 0, + } + data = self.packer.make_can_msg("DAS_control", CANBUS.party, values)[1] + values["DAS_controlChecksum"] = self.checksum(0x2b9, data[:7]) + return self.packer.make_can_msg("DAS_control", CANBUS.party, values) + + def create_steering_allowed(self, counter): + values = { + "APS_eacAllow": 1, + "APS_eacMonitorCounter": counter, + } + + data = self.packer.make_can_msg("APS_eacMonitor", CANBUS.party, values)[1] + values["APS_eacMonitorChecksum"] = self.checksum(0x27d, data[:2]) + return self.packer.make_can_msg("APS_eacMonitor", CANBUS.party, values) + + +def tesla_checksum(address: int, sig, d: bytearray) -> int: + checksum = (address & 0xFF) + ((address >> 8) & 0xFF) + checksum_byte = sig.start_bit // 8 + for i in range(len(d)): + if i != checksum_byte: + checksum += d[i] + return checksum & 0xFF diff --git a/opendbc_repo/opendbc/car/tesla/values.py b/opendbc_repo/opendbc/car/tesla/values.py new file mode 100644 index 0000000000..c771a9459f --- /dev/null +++ b/opendbc_repo/opendbc/car/tesla/values.py @@ -0,0 +1,111 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, AngleSteeringLimits +from opendbc.car.structs import CarParams, CarState +from opendbc.car.docs_definitions import CarDocs, CarFootnote, CarHarness, CarParts, Column +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries + +Ecu = CarParams.Ecu + + +class Footnote(Enum): + HW_TYPE = CarFootnote( + "Some 2023 model years have HW4. To check which hardware type your vehicle has, look for " + + "Autopilot computer under Software -> Additional Vehicle Information on your vehicle's touchscreen.

" + + "See this page for more information.", + Column.MODEL) + + +@dataclass +class TeslaCarDocsHW3(CarDocs): + package: str = "All" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.tesla_a])) + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.HW_TYPE]) + + +@dataclass +class TeslaCarDocsHW4(CarDocs): + package: str = "All" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.tesla_b])) + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.HW_TYPE]) + + +@dataclass +class TeslaPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.party: 'tesla_model3_party'}) + + +class CAR(Platforms): + TESLA_MODEL_3 = TeslaPlatformConfig( + [ + # TODO: do we support 2017? It's HW3 + TeslaCarDocsHW3("Tesla Model 3 (with HW3) 2019-23"), + TeslaCarDocsHW4("Tesla Model 3 (with HW4) 2024-25"), + ], + CarSpecs(mass=1899., wheelbase=2.875, steerRatio=12.0), + ) + TESLA_MODEL_Y = TeslaPlatformConfig( + [ + TeslaCarDocsHW3("Tesla Model Y (with HW3) 2020-23"), + TeslaCarDocsHW4("Tesla Model Y (with HW4) 2024"), + ], + CarSpecs(mass=2072., wheelbase=2.890, steerRatio=12.0), + ) + + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[ + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.SUPPLIER_SOFTWARE_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.SUPPLIER_SOFTWARE_VERSION_RESPONSE], + bus=0, + ) + ] +) + + +class CANBUS: + party = 0 + vehicle = 1 + autopilot_party = 2 + + +GEAR_MAP = { + "DI_GEAR_INVALID": CarState.GearShifter.unknown, + "DI_GEAR_P": CarState.GearShifter.park, + "DI_GEAR_R": CarState.GearShifter.reverse, + "DI_GEAR_N": CarState.GearShifter.neutral, + "DI_GEAR_D": CarState.GearShifter.drive, + "DI_GEAR_SNA": CarState.GearShifter.unknown, +} + + +class CarControllerParams: + ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( + # EPAS faults above this angle + 360, # deg + # Angle rate limits are set using the Tesla Model Y VehicleModel such that they maximally meet ISO 11270 + # At 5 m/s, FSD has been seen hitting up to ~4 deg/frame with ~5 deg/frame at very low creeping speeds + # At 30 m/s, FSD has been seen hitting mostly 0.1 deg/frame, sometimes 0.2 deg/frame, and rarely 0.3 deg/frame + ([0., 5., 25.], [2.5, 1.5, 0.2]), + ([0., 5., 25.], [5., 2.0, 0.3]), + ) + + STEER_STEP = 2 # Angle command is sent at 50 Hz + ACCEL_MAX = 2.0 # m/s^2 + ACCEL_MIN = -3.48 # m/s^2 + JERK_LIMIT_MAX = 4.9 # m/s^3, ACC faults at 5.0 + JERK_LIMIT_MIN = -4.9 # m/s^3, ACC faults at 5.0 + + +class TeslaSafetyFlags(IntFlag): + LONG_CONTROL = 1 + + +class TeslaFlags(IntFlag): + LONG_CONTROL = 1 + + +DBC = CAR.create_dbc_map() + +STEER_THRESHOLD = 0.5 diff --git a/opendbc_repo/opendbc/car/tests/__init__.py b/opendbc_repo/opendbc/car/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/tests/routes.py b/opendbc_repo/opendbc/car/tests/routes.py new file mode 100644 index 0000000000..95a8eb03b0 --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/routes.py @@ -0,0 +1,319 @@ +from typing import NamedTuple + +from opendbc.car.chrysler.values import CAR as CHRYSLER +from opendbc.car.gm.values import CAR as GM +from opendbc.car.ford.values import CAR as FORD +from opendbc.car.honda.values import CAR as HONDA +from opendbc.car.hyundai.values import CAR as HYUNDAI +from opendbc.car.nissan.values import CAR as NISSAN +from opendbc.car.mazda.values import CAR as MAZDA +from opendbc.car.mock.values import CAR as MOCK +from opendbc.car.rivian.values import CAR as RIVIAN +from opendbc.car.subaru.values import CAR as SUBARU +from opendbc.car.tesla.values import CAR as TESLA +from opendbc.car.toyota.values import CAR as TOYOTA +from opendbc.car.values import Platform +from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN +from opendbc.car.body.values import CAR as COMMA + +# FIXME: add routes for these cars +non_tested_cars = [ + MOCK.MOCK, + GM.CADILLAC_ATS, + GM.HOLDEN_ASTRA, + GM.CHEVROLET_MALIBU, + HYUNDAI.GENESIS_G90, + HONDA.HONDA_ODYSSEY_CHN, + VOLKSWAGEN.VOLKSWAGEN_CRAFTER_MK2, # need a route from an ACC-equipped Crafter + SUBARU.SUBARU_FORESTER_HYBRID, + TESLA.TESLA_MODEL_3, + TESLA.TESLA_MODEL_Y, +] + + +class CarTestRoute(NamedTuple): + route: str + car_model: Platform | None + segment: int | None = None + + +routes = [ + CarTestRoute("efdf9af95e71cd84|2022-05-13--19-03-31", COMMA.COMMA_BODY), + + CarTestRoute("0c94aa1e1296d7c6|2021-05-05--19-48-37", CHRYSLER.JEEP_GRAND_CHEROKEE), + CarTestRoute("91dfedae61d7bd75|2021-05-22--20-07-52", CHRYSLER.JEEP_GRAND_CHEROKEE_2019), + CarTestRoute("420a8e183f1aed48|2020-03-05--07-15-29", CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID), # 2017 + CarTestRoute("43a685a66291579b|2021-05-27--19-47-29", CHRYSLER.CHRYSLER_PACIFICA_2018), + CarTestRoute("378472f830ee7395|2021-05-28--07-38-43", CHRYSLER.CHRYSLER_PACIFICA_2018_HYBRID), + CarTestRoute("8190c7275a24557b|2020-01-29--08-33-58", CHRYSLER.CHRYSLER_PACIFICA_2019_HYBRID), + CarTestRoute("3d84727705fecd04|2021-05-25--08-38-56", CHRYSLER.CHRYSLER_PACIFICA_2020), + CarTestRoute("221c253375af4ee9|2022-06-15--18-38-24", CHRYSLER.RAM_1500_5TH_GEN), + CarTestRoute("8fb5eabf914632ae|2022-08-04--17-28-53", CHRYSLER.RAM_HD_5TH_GEN, segment=6), + CarTestRoute("3379c85aeedc8285|2023-12-07--17-49-39", CHRYSLER.DODGE_DURANGO), + + CarTestRoute("54827bf84c38b14f|2023-01-25--14-14-11", FORD.FORD_BRONCO_SPORT_MK1), + CarTestRoute("f8eaaccd2a90aef8|2023-05-04--15-10-09", FORD.FORD_ESCAPE_MK4), + CarTestRoute("62241b0c7fea4589|2022-09-01--15-32-49", FORD.FORD_EXPLORER_MK6), + CarTestRoute("e886087f430e7fe7|2023-06-16--23-06-36", FORD.FORD_FOCUS_MK4), + CarTestRoute("bd37e43731e5964b|2023-04-30--10-42-26", FORD.FORD_MAVERICK_MK1), + CarTestRoute("112e4d6e0cad05e1|2023-11-14--08-21-43", FORD.FORD_F_150_LIGHTNING_MK1), + CarTestRoute("e36b272d5679115f/00000369--a3e8499a85", FORD.FORD_F_150_MK14), + CarTestRoute("83a4e056c7072678|2023-11-13--16-51-33", FORD.FORD_MUSTANG_MACH_E_MK1), + CarTestRoute("37998aa0fade36ab/00000000--48f927c4f5", FORD.FORD_RANGER_MK2), + #TestRoute("f1b4c567731f4a1b|2018-04-30--10-15-35", FORD.FUSION), + + CarTestRoute("7cc2a8365b4dd8a9|2018-12-02--12-10-44", GM.GMC_ACADIA), + CarTestRoute("aa20e335f61ba898|2019-02-05--16-59-04", GM.BUICK_REGAL), + CarTestRoute("75a6bcb9b8b40373|2023-03-11--22-47-33", GM.BUICK_LACROSSE), + CarTestRoute("e746f59bc96fd789|2024-01-31--22-25-58", GM.CHEVROLET_EQUINOX), + CarTestRoute("ef8f2185104d862e|2023-02-09--18-37-13", GM.CADILLAC_ESCALADE), + CarTestRoute("46460f0da08e621e|2021-10-26--07-21-46", GM.CADILLAC_ESCALADE_ESV), + CarTestRoute("168f8b3be57f66ae|2023-09-12--21-44-42", GM.CADILLAC_ESCALADE_ESV_2019), + CarTestRoute("c950e28c26b5b168|2018-05-30--22-03-41", GM.CHEVROLET_VOLT), + CarTestRoute("f08912a233c1584f|2022-08-11--18-02-41", GM.CHEVROLET_BOLT_EUV, segment=1), + CarTestRoute("555d4087cf86aa91|2022-12-02--12-15-07", GM.CHEVROLET_BOLT_EUV, segment=14), # Bolt EV + CarTestRoute("38aa7da107d5d252|2022-08-15--16-01-12", GM.CHEVROLET_SILVERADO), + CarTestRoute("5085c761395d1fe6|2023-04-07--18-20-06", GM.CHEVROLET_TRAILBLAZER), + CarTestRoute("162796f1469f2f1b/00000005--6f334eda14", GM.CADILLAC_XT4), + CarTestRoute("477dd485611d1e6e/00000009--85fc06e10a", GM.CHEVROLET_VOLT_2019), + CarTestRoute("a40976dc9f28ba62/0000001f--160e210119", GM.CHEVROLET_TRAVERSE), + CarTestRoute("36c62b5da6f08154/00000052--983c17c5b2", GM.GMC_YUKON), + + CarTestRoute("0e7a2ba168465df5|2020-10-18--14-14-22", HONDA.ACURA_RDX_3G), + CarTestRoute("a74b011b32b51b56|2020-07-26--17-09-36", HONDA.HONDA_CIVIC), + CarTestRoute("a859a044a447c2b0|2020-03-03--18-42-45", HONDA.HONDA_CRV_EU), + CarTestRoute("68aac44ad69f838e|2021-05-18--20-40-52", HONDA.HONDA_CRV), + CarTestRoute("14fed2e5fa0aa1a5|2021-05-25--14-59-42", HONDA.HONDA_CRV_HYBRID), + CarTestRoute("52f3e9ae60c0d886|2021-05-23--15-59-43", HONDA.HONDA_FIT), + CarTestRoute("2c4292a5cd10536c|2021-08-19--21-32-15", HONDA.HONDA_FREED), + CarTestRoute("03be5f2fd5c508d1|2020-04-19--18-44-15", HONDA.HONDA_HRV), + CarTestRoute("320098ff6c5e4730|2023-04-13--17-47-46", HONDA.HONDA_HRV_3G), + CarTestRoute("147613502316e718/00000001--dd141a3140", HONDA.HONDA_HRV_3G), # Brazilian model + CarTestRoute("917b074700869333|2021-05-24--20-40-20", HONDA.ACURA_ILX), + CarTestRoute("08a3deb07573f157|2020-03-06--16-11-19", HONDA.HONDA_ACCORD), # 1.5T + CarTestRoute("1da5847ac2488106|2021-05-24--19-31-50", HONDA.HONDA_ACCORD), # 2.0T + CarTestRoute("085ac1d942c35910|2021-03-25--20-11-15", HONDA.HONDA_ACCORD), # 2021 with new style HUD msgs + CarTestRoute("07585b0da3c88459|2021-05-26--18-52-04", HONDA.HONDA_ACCORD), # hybrid + CarTestRoute("f29e2b57a55e7ad5|2021-03-24--20-52-38", HONDA.HONDA_ACCORD), # hybrid, 2021 with new style HUD msgs + CarTestRoute("1ad763dd22ef1a0e|2020-02-29--18-37-03", HONDA.HONDA_CRV_5G), + CarTestRoute("0a96f86fcfe35964|2020-02-05--07-25-51", HONDA.HONDA_ODYSSEY), + CarTestRoute("d83f36766f8012a5|2020-02-05--18-42-21", HONDA.HONDA_CIVIC_BOSCH_DIESEL), + CarTestRoute("f0890d16a07a236b|2021-05-25--17-27-22", HONDA.HONDA_INSIGHT), + CarTestRoute("07d37d27996096b6|2020-03-04--21-57-27", HONDA.HONDA_PILOT), + CarTestRoute("684e8f96bd491a0e|2021-11-03--11-08-42", HONDA.HONDA_PILOT), # Passport + CarTestRoute("0a78dfbacc8504ef|2020-03-04--13-29-55", HONDA.HONDA_CIVIC_BOSCH), + CarTestRoute("f34a60d68d83b1e5|2020-10-06--14-35-55", HONDA.ACURA_RDX), + CarTestRoute("54fd8451b3974762|2021-04-01--14-50-10", HONDA.HONDA_RIDGELINE), + CarTestRoute("2d5808fae0b38ac6|2021-09-01--17-14-11", HONDA.HONDA_E), + CarTestRoute("f44aa96ace22f34a|2021-12-22--06-22-31", HONDA.HONDA_CIVIC_2022), + CarTestRoute("1f032f5173c8ad99/00000006--573b3fcaf5", HONDA.HONDA_CIVIC_2022), # Civic Type R with manual transmission + CarTestRoute("b1c832ad56b6bc9d/00000010--debfcf5867", HONDA.HONDA_CIVIC_2022), # 2025 Civic Hatch Hybrid with new eCVT transmission + + CarTestRoute("87d7f06ade479c2e|2023-09-11--23-30-11", HYUNDAI.HYUNDAI_AZERA_6TH_GEN), + CarTestRoute("66189dd8ec7b50e6|2023-09-20--07-02-12", HYUNDAI.HYUNDAI_AZERA_HEV_6TH_GEN), + CarTestRoute("6fe86b4e410e4c37|2020-07-22--16-27-13", HYUNDAI.HYUNDAI_GENESIS), + CarTestRoute("b5d6dc830ad63071|2022-12-12--21-28-25", HYUNDAI.GENESIS_GV60_EV_1ST_GEN, segment=12), + CarTestRoute("70c5bec28ec8e345|2020-08-08--12-22-23", HYUNDAI.GENESIS_G70), + CarTestRoute("ca4de5b12321bd98|2022-10-18--21-15-59", HYUNDAI.GENESIS_GV70_1ST_GEN), + CarTestRoute("afe09b9f5d3f3548/00000011--15fefe1c50", HYUNDAI.GENESIS_GV70_ELECTRIFIED_1ST_GEN), + CarTestRoute("afe09b9f5d3f3548/0000001b--a1129a4a15", HYUNDAI.GENESIS_GV70_ELECTRIFIED_1ST_GEN), # openpilot longitudinal enabled + CarTestRoute("6b301bf83f10aa90|2020-11-22--16-45-07", HYUNDAI.GENESIS_G80), + CarTestRoute("66eaa6c3b6b2afc6/00000009--3a5199aabe", HYUNDAI.GENESIS_G80_2ND_GEN_FL), # LKA steering + CarTestRoute("0bbe367c98fa1538|2023-09-16--00-16-49", HYUNDAI.HYUNDAI_CUSTIN_1ST_GEN), + CarTestRoute("f0709d2bc6ca451f|2022-10-15--08-13-54", HYUNDAI.HYUNDAI_SANTA_CRUZ_1ST_GEN), + CarTestRoute("4dbd55df87507948|2022-03-01--09-45-38", HYUNDAI.HYUNDAI_SANTA_FE), + CarTestRoute("bf43d9df2b660eb0|2021-09-23--14-16-37", HYUNDAI.HYUNDAI_SANTA_FE_2022), + CarTestRoute("37398f32561a23ad|2021-11-18--00-11-35", HYUNDAI.HYUNDAI_SANTA_FE_HEV_2022), + CarTestRoute("656ac0d830792fcc|2021-12-28--14-45-56", HYUNDAI.HYUNDAI_SANTA_FE_PHEV_2022, segment=1), + CarTestRoute("de59124955b921d8|2023-06-24--00-12-50", HYUNDAI.KIA_CARNIVAL_4TH_GEN), + CarTestRoute("409c9409979a8abc|2023-07-11--09-06-44", HYUNDAI.KIA_CARNIVAL_4TH_GEN), # Chinese model + CarTestRoute("e0e98335f3ebc58f|2021-03-07--16-38-29", HYUNDAI.KIA_CEED), + CarTestRoute("7653b2bce7bcfdaa|2020-03-04--15-34-32", HYUNDAI.KIA_OPTIMA_G4), + CarTestRoute("018654717bc93d7d|2022-09-19--23-11-10", HYUNDAI.KIA_OPTIMA_G4_FL, segment=0), + CarTestRoute("f9716670b2481438|2023-08-23--14-49-50", HYUNDAI.KIA_OPTIMA_H), + CarTestRoute("6a42c1197b2a8179|2023-09-21--10-23-44", HYUNDAI.KIA_OPTIMA_H_G4_FL), + CarTestRoute("c75a59efa0ecd502|2021-03-11--20-52-55", HYUNDAI.KIA_SELTOS), + CarTestRoute("5b7c365c50084530|2020-04-15--16-13-24", HYUNDAI.HYUNDAI_SONATA), + CarTestRoute("b2a38c712dcf90bd|2020-05-18--18-12-48", HYUNDAI.HYUNDAI_SONATA_LF), + CarTestRoute("c344fd2492c7a9d2|2023-12-11--09-03-23", HYUNDAI.HYUNDAI_STARIA_4TH_GEN), + CarTestRoute("fb3fd42f0baaa2f8|2022-03-30--15-25-05", HYUNDAI.HYUNDAI_TUCSON), + CarTestRoute("db68bbe12250812c|2022-12-05--00-54-12", HYUNDAI.HYUNDAI_TUCSON_4TH_GEN), # 2023 + CarTestRoute("36e10531feea61a4|2022-07-25--13-37-42", HYUNDAI.HYUNDAI_TUCSON_4TH_GEN), # hybrid + CarTestRoute("5875672fc1d4bf57|2020-07-23--21-33-28", HYUNDAI.KIA_SORENTO), + CarTestRoute("1d0d000db3370fd0|2023-01-04--22-28-42", HYUNDAI.KIA_SORENTO_4TH_GEN, segment=5), + CarTestRoute("fc19648042eb6896|2023-08-16--11-43-27", HYUNDAI.KIA_SORENTO_HEV_4TH_GEN, segment=14), + CarTestRoute("628935d7d3e5f4f7|2022-11-30--01-12-46", HYUNDAI.KIA_SORENTO_HEV_4TH_GEN), # plug-in hybrid + CarTestRoute("9c917ba0d42ffe78|2020-04-17--12-43-19", HYUNDAI.HYUNDAI_PALISADE), + CarTestRoute("05a8f0197fdac372|2022-10-19--14-14-09", HYUNDAI.HYUNDAI_IONIQ_5), # LKA steering + CarTestRoute("eb4eae1476647463|2023-08-26--18-07-04", HYUNDAI.HYUNDAI_IONIQ_6, segment=6), # LKA steering + CarTestRoute("3f29334d6134fcd4|2022-03-30--22-00-50", HYUNDAI.HYUNDAI_IONIQ_PHEV_2019), + CarTestRoute("fa8db5869167f821|2021-06-10--22-50-10", HYUNDAI.HYUNDAI_IONIQ_PHEV), + CarTestRoute("e1107f9d04dfb1e2|2023-09-05--22-32-12", HYUNDAI.HYUNDAI_IONIQ_PHEV), # openpilot longitudinal enabled + CarTestRoute("2c5cf2dd6102e5da|2020-12-17--16-06-44", HYUNDAI.HYUNDAI_IONIQ_EV_2020), + CarTestRoute("610ebb9faaad6b43|2020-06-13--15-28-36", HYUNDAI.HYUNDAI_IONIQ_EV_LTD), + CarTestRoute("2c5cf2dd6102e5da|2020-06-26--16-00-08", HYUNDAI.HYUNDAI_IONIQ), + CarTestRoute("012c95f06918eca4|2023-01-15--11-19-36", HYUNDAI.HYUNDAI_IONIQ), # openpilot longitudinal enabled + CarTestRoute("ab59fe909f626921|2021-10-18--18-34-28", HYUNDAI.HYUNDAI_IONIQ_HEV_2022), + CarTestRoute("22d955b2cd499c22|2020-08-10--19-58-21", HYUNDAI.HYUNDAI_KONA), + CarTestRoute("0099bdb24d82951b/00000005--c38d940b04", HYUNDAI.HYUNDAI_KONA_2022), + CarTestRoute("efc48acf44b1e64d|2021-05-28--21-05-04", HYUNDAI.HYUNDAI_KONA_EV), + CarTestRoute("f90d3cd06caeb6fa|2023-09-06--17-15-47", HYUNDAI.HYUNDAI_KONA_EV), # openpilot longitudinal enabled + CarTestRoute("ff973b941a69366f|2022-07-28--22-01-19", HYUNDAI.HYUNDAI_KONA_EV_2022, segment=11), + CarTestRoute("1618132d68afc876|2023-08-27--09-32-14", HYUNDAI.HYUNDAI_KONA_EV_2ND_GEN, segment=13), + CarTestRoute("49f3c13141b6bc87|2021-07-28--08-05-13", HYUNDAI.HYUNDAI_KONA_HEV), + CarTestRoute("a74afe0cf708748f/0000000e--a2885a9a71", HYUNDAI.HYUNDAI_NEXO_1ST_GEN), + CarTestRoute("a74afe0cf708748f/0000000c--b476a8fd00", HYUNDAI.HYUNDAI_NEXO_1ST_GEN), # openpilot longitudinal enabled + CarTestRoute("5dddcbca6eb66c62|2020-07-26--13-24-19", HYUNDAI.KIA_STINGER), + CarTestRoute("5b50b883a4259afb|2022-11-09--15-00-42", HYUNDAI.KIA_STINGER_2022), + CarTestRoute("d624b3d19adce635|2020-08-01--14-59-12", HYUNDAI.HYUNDAI_VELOSTER), + CarTestRoute("d545129f3ca90f28|2022-10-19--09-22-54", HYUNDAI.KIA_EV6), # LKA steering + CarTestRoute("68d6a96e703c00c9|2022-09-10--16-09-39", HYUNDAI.KIA_EV6), # LFA steering + CarTestRoute("9b25e8c1484a1b67|2023-04-13--10-41-45", HYUNDAI.KIA_EV6), + CarTestRoute("007d5e4ad9f86d13|2021-09-30--15-09-23", HYUNDAI.KIA_K5_2021), + CarTestRoute("c58dfc9fc16590e0|2023-01-14--13-51-48", HYUNDAI.KIA_K5_HEV_2020), + CarTestRoute("78ad5150de133637|2023-09-13--16-15-57", HYUNDAI.KIA_K8_HEV_1ST_GEN), + CarTestRoute("50c6c9b85fd1ff03|2020-10-26--17-56-06", HYUNDAI.KIA_NIRO_EV), + CarTestRoute("b153671049a867b3|2023-04-05--10-00-30", HYUNDAI.KIA_NIRO_EV_2ND_GEN), + CarTestRoute("173219cf50acdd7b|2021-07-05--10-27-41", HYUNDAI.KIA_NIRO_PHEV), + CarTestRoute("23349923ba5c4e3b|2023-12-02--08-51-54", HYUNDAI.KIA_NIRO_PHEV_2022), + CarTestRoute("34a875f29f69841a|2021-07-29--13-02-09", HYUNDAI.KIA_NIRO_HEV_2021), + CarTestRoute("db04d2c63990e3ba|2023-02-08--16-52-39", HYUNDAI.KIA_NIRO_HEV_2ND_GEN), + CarTestRoute("50a2212c41f65c7b|2021-05-24--16-22-06", HYUNDAI.KIA_FORTE), + CarTestRoute("192283cdbb7a58c2|2022-10-15--01-43-18", HYUNDAI.KIA_SPORTAGE_5TH_GEN), + CarTestRoute("09559f1fcaed4704|2023-11-16--02-24-57", HYUNDAI.KIA_SPORTAGE_5TH_GEN), # openpilot longitudinal + CarTestRoute("b3537035ffe6a7d6|2022-10-17--15-23-49", HYUNDAI.KIA_SPORTAGE_5TH_GEN), # hybrid + CarTestRoute("c5ac319aa9583f83|2021-06-01--18-18-31", HYUNDAI.HYUNDAI_ELANTRA), + CarTestRoute("734ef96182ddf940|2022-10-02--16-41-44", HYUNDAI.HYUNDAI_ELANTRA_GT_I30), + CarTestRoute("82e9cdd3f43bf83e|2021-05-15--02-42-51", HYUNDAI.HYUNDAI_ELANTRA_2021), + CarTestRoute("715ac05b594e9c59|2021-06-20--16-21-07", HYUNDAI.HYUNDAI_ELANTRA_HEV_2021), + CarTestRoute("7120aa90bbc3add7|2021-08-02--07-12-31", HYUNDAI.HYUNDAI_SONATA_HYBRID), + CarTestRoute("715ac05b594e9c59|2021-10-27--23-24-56", HYUNDAI.GENESIS_G70_2020), + CarTestRoute("6b0d44d22df18134|2023-05-06--10-36-55", HYUNDAI.GENESIS_GV80), + + CarTestRoute("00c829b1b7613dea|2021-06-24--09-10-10", TOYOTA.TOYOTA_ALPHARD_TSS2), + CarTestRoute("912119ebd02c7a42|2022-03-19--07-24-50", TOYOTA.TOYOTA_ALPHARD_TSS2), # hybrid + CarTestRoute("000cf3730200c71c|2021-05-24--10-42-05", TOYOTA.TOYOTA_AVALON), + CarTestRoute("0bb588106852abb7|2021-05-26--12-22-01", TOYOTA.TOYOTA_AVALON_2019), + CarTestRoute("87bef2930af86592|2021-05-30--09-40-54", TOYOTA.TOYOTA_AVALON_2019), # hybrid + CarTestRoute("e9966711cfb04ce3|2022-01-11--07-59-43", TOYOTA.TOYOTA_AVALON_TSS2), + CarTestRoute("eca1080a91720a54|2022-03-17--13-32-29", TOYOTA.TOYOTA_AVALON_TSS2), # hybrid + CarTestRoute("6cdecc4728d4af37|2020-02-23--15-44-18", TOYOTA.TOYOTA_CAMRY), + CarTestRoute("2f37c007683e85ba|2023-09-02--14-39-44", TOYOTA.TOYOTA_CAMRY), # openpilot longitudinal, with radar CAN filter + CarTestRoute("54034823d30962f5|2021-05-24--06-37-34", TOYOTA.TOYOTA_CAMRY), # hybrid + CarTestRoute("3456ad0cd7281b24|2020-12-13--17-45-56", TOYOTA.TOYOTA_CAMRY_TSS2), + CarTestRoute("ffccc77938ddbc44|2021-01-04--16-55-41", TOYOTA.TOYOTA_CAMRY_TSS2), # hybrid + CarTestRoute("4e45c89c38e8ec4d|2021-05-02--02-49-28", TOYOTA.TOYOTA_COROLLA), + CarTestRoute("5f5afb36036506e4|2019-05-14--02-09-54", TOYOTA.TOYOTA_COROLLA_TSS2), + CarTestRoute("5ceff72287a5c86c|2019-10-19--10-59-02", TOYOTA.TOYOTA_COROLLA_TSS2), # hybrid + CarTestRoute("d2525c22173da58b|2021-04-25--16-47-04", TOYOTA.TOYOTA_PRIUS), + CarTestRoute("b14c5b4742e6fc85|2020-07-28--19-50-11", TOYOTA.TOYOTA_RAV4), + CarTestRoute("32a7df20486b0f70|2020-02-06--16-06-50", TOYOTA.TOYOTA_RAV4H), + CarTestRoute("cdf2f7de565d40ae|2019-04-25--03-53-41", TOYOTA.TOYOTA_RAV4_TSS2), + CarTestRoute("a5c341bb250ca2f0|2022-05-18--16-05-17", TOYOTA.TOYOTA_RAV4_TSS2_2022), + CarTestRoute("ad5a3fa719bc2f83|2023-10-17--19-48-42", TOYOTA.TOYOTA_RAV4_TSS2_2023), + CarTestRoute("7e34a988419b5307|2019-12-18--19-13-30", TOYOTA.TOYOTA_RAV4_TSS2), # hybrid + CarTestRoute("2475fb3eb2ffcc2e|2022-04-29--12-46-23", TOYOTA.TOYOTA_RAV4_TSS2_2022), # hybrid + CarTestRoute("20ba9ade056a8c7b|2021-02-08--21-57-35", TOYOTA.TOYOTA_RAV4_PRIME), # SecOC + CarTestRoute("8bfb000e03b2a257/00000004--f9eee5f52e", TOYOTA.TOYOTA_SIENNA_4TH_GEN), # SecOC + CarTestRoute("0b54d0594d924cd9/00000057--b6206a3205", TOYOTA.TOYOTA_YARIS), # SecOC + CarTestRoute("7a31f030957b9c85|2023-04-01--14-12-51", TOYOTA.LEXUS_ES), + CarTestRoute("37041c500fd30100|2020-12-30--12-17-24", TOYOTA.LEXUS_ES), # hybrid + CarTestRoute("e6a24be49a6cd46e|2019-10-29--10-52-42", TOYOTA.LEXUS_ES_TSS2), + CarTestRoute("f49e8041283f2939|2019-05-30--11-51-51", TOYOTA.LEXUS_ES_TSS2), # hybrid + CarTestRoute("da23c367491f53e2|2021-05-21--09-09-11", TOYOTA.LEXUS_CTH, segment=3), + CarTestRoute("32696cea52831b02|2021-11-19--18-13-30", TOYOTA.LEXUS_RC), + CarTestRoute("ab9b64a5e5960cba|2023-10-24--17-32-08", TOYOTA.LEXUS_GS_F), + CarTestRoute("886fcd8408d570e9|2020-01-29--02-18-55", TOYOTA.LEXUS_RX), + CarTestRoute("d27ad752e9b08d4f|2021-05-26--19-39-51", TOYOTA.LEXUS_RX), # hybrid + CarTestRoute("01b22eb2ed121565|2020-02-02--11-25-51", TOYOTA.LEXUS_RX_TSS2), + CarTestRoute("b74758c690a49668|2020-05-20--15-58-57", TOYOTA.LEXUS_RX_TSS2), # hybrid + CarTestRoute("964c09eb11ca8089|2020-11-03--22-04-00", TOYOTA.LEXUS_NX), + CarTestRoute("ec429c0f37564e3c|2020-02-01--17-28-12", TOYOTA.LEXUS_NX), # hybrid + CarTestRoute("3fd5305f8b6ca765|2021-04-28--19-26-49", TOYOTA.LEXUS_NX_TSS2), + CarTestRoute("09ae96064ed85a14|2022-06-09--12-22-31", TOYOTA.LEXUS_NX_TSS2), # hybrid + CarTestRoute("4765fbbf59e3cd88|2024-02-06--17-45-32", TOYOTA.LEXUS_LC_TSS2), + CarTestRoute("0a302ffddbb3e3d3|2020-02-08--16-19-08", TOYOTA.TOYOTA_HIGHLANDER_TSS2), + CarTestRoute("437e4d2402abf524|2021-05-25--07-58-50", TOYOTA.TOYOTA_HIGHLANDER_TSS2), # hybrid + CarTestRoute("3183cd9b021e89ce|2021-05-25--10-34-44", TOYOTA.TOYOTA_HIGHLANDER), + CarTestRoute("80d16a262e33d57f|2021-05-23--20-01-43", TOYOTA.TOYOTA_HIGHLANDER), # hybrid + CarTestRoute("eb6acd681135480d|2019-06-20--20-00-00", TOYOTA.TOYOTA_SIENNA), + CarTestRoute("2e07163a1ba9a780|2019-08-25--13-15-13", TOYOTA.LEXUS_IS), + CarTestRoute("649bf2997ada6e3a|2023-08-08--18-04-22", TOYOTA.LEXUS_IS_TSS2), + CarTestRoute("0a0de17a1e6a2d15|2020-09-21--21-24-41", TOYOTA.TOYOTA_PRIUS_TSS2), + CarTestRoute("9b36accae406390e|2021-03-30--10-41-38", TOYOTA.TOYOTA_MIRAI), + CarTestRoute("cd9cff4b0b26c435|2021-05-13--15-12-39", TOYOTA.TOYOTA_CHR), + CarTestRoute("57858ede0369a261|2021-05-18--20-34-20", TOYOTA.TOYOTA_CHR), # hybrid + CarTestRoute("ea8fbe72b96a185c|2023-02-08--15-11-46", TOYOTA.TOYOTA_CHR_TSS2), + CarTestRoute("6719965b0e1d1737|2023-02-09--22-44-05", TOYOTA.TOYOTA_CHR_TSS2), # hybrid + CarTestRoute("6719965b0e1d1737|2023-08-29--06-40-05", TOYOTA.TOYOTA_CHR_TSS2), # hybrid, openpilot longitudinal, radar disabled + CarTestRoute("14623aae37e549f3|2021-10-24--01-20-49", TOYOTA.TOYOTA_PRIUS_V), + + CarTestRoute("202c40641158a6e5|2021-09-21--09-43-24", VOLKSWAGEN.VOLKSWAGEN_ARTEON_MK1), + CarTestRoute("2c68dda277d887ac|2021-05-11--15-22-20", VOLKSWAGEN.VOLKSWAGEN_ATLAS_MK1), + CarTestRoute("ffcd23abbbd02219|2024-02-28--14-59-38", VOLKSWAGEN.VOLKSWAGEN_CADDY_MK3), + CarTestRoute("cae14e88932eb364|2021-03-26--14-43-28", VOLKSWAGEN.VOLKSWAGEN_GOLF_MK7), # Stock ACC + CarTestRoute("3cfdec54aa035f3f|2022-10-13--14-58-58", VOLKSWAGEN.VOLKSWAGEN_GOLF_MK7), # openpilot longitudinal + CarTestRoute("578742b26807f756|00000010--41ee3e5bec", VOLKSWAGEN.VOLKSWAGEN_JETTA_MK6), + CarTestRoute("58a7d3b707987d65|2021-03-25--17-26-37", VOLKSWAGEN.VOLKSWAGEN_JETTA_MK7), + CarTestRoute("4d134e099430fba2|2021-03-26--00-26-06", VOLKSWAGEN.VOLKSWAGEN_PASSAT_MK8), + CarTestRoute("3cfdec54aa035f3f|2022-07-19--23-45-10", VOLKSWAGEN.VOLKSWAGEN_PASSAT_NMS), + CarTestRoute("0cd0b7f7e31a3853|2021-11-03--19-30-22", VOLKSWAGEN.VOLKSWAGEN_POLO_MK6), + CarTestRoute("064d1816e448f8eb|2022-09-29--15-32-34", VOLKSWAGEN.VOLKSWAGEN_SHARAN_MK2), + CarTestRoute("7d82b2f3a9115f1f|2021-10-21--15-39-42", VOLKSWAGEN.VOLKSWAGEN_TAOS_MK1), + CarTestRoute("2744c89a8dda9a51|2021-07-24--21-28-06", VOLKSWAGEN.VOLKSWAGEN_TCROSS_MK1), + CarTestRoute("2cef8a0b898f331a|2021-03-25--20-13-57", VOLKSWAGEN.VOLKSWAGEN_TIGUAN_MK2), + CarTestRoute("a589dcc642fdb10a|2021-06-14--20-54-26", VOLKSWAGEN.VOLKSWAGEN_TOURAN_MK2), + CarTestRoute("a459f4556782eba1|2021-09-19--09-48-00", VOLKSWAGEN.VOLKSWAGEN_TRANSPORTER_T61), + CarTestRoute("0cd0b7f7e31a3853|2021-11-18--00-38-32", VOLKSWAGEN.VOLKSWAGEN_TROC_MK1), + CarTestRoute("07667b885add75fd|2021-01-23--19-48-42", VOLKSWAGEN.AUDI_A3_MK3), + CarTestRoute("6c6b466346192818|2021-06-06--14-17-47", VOLKSWAGEN.AUDI_Q2_MK1), + CarTestRoute("0cd0b7f7e31a3853|2021-12-03--03-12-05", VOLKSWAGEN.AUDI_Q3_MK2), + CarTestRoute("8f205bdd11bcbb65|2021-03-26--01-00-17", VOLKSWAGEN.SEAT_ATECA_MK1), + CarTestRoute("fc6b6c9a3471c846|2021-05-27--13-39-56", VOLKSWAGEN.SEAT_ATECA_MK1), # Leon + CarTestRoute("0bbe367c98fa1538|2023-03-04--17-46-11", VOLKSWAGEN.SKODA_FABIA_MK4), + CarTestRoute("12d6ae3057c04b0d|2021-09-15--00-04-07", VOLKSWAGEN.SKODA_KAMIQ_MK1), + CarTestRoute("12d6ae3057c04b0d|2021-09-04--21-21-21", VOLKSWAGEN.SKODA_KAROQ_MK1), + CarTestRoute("90434ff5d7c8d603|2021-03-15--12-07-31", VOLKSWAGEN.SKODA_KODIAQ_MK1), + CarTestRoute("66e5edc3a16459c5|2021-05-25--19-00-29", VOLKSWAGEN.SKODA_OCTAVIA_MK3), + CarTestRoute("026b6d18fba6417f|2021-03-26--09-17-04", VOLKSWAGEN.SKODA_KAMIQ_MK1), # Scala + CarTestRoute("b2e9858e29db492b|2021-03-26--16-58-42", VOLKSWAGEN.SKODA_SUPERB_MK3), + + CarTestRoute("3c8f0c502e119c1c|2020-06-30--12-58-02", SUBARU.SUBARU_ASCENT), + CarTestRoute("c321c6b697c5a5ff|2020-06-23--11-04-33", SUBARU.SUBARU_FORESTER), + CarTestRoute("791340bc01ed993d|2019-03-10--16-28-08", SUBARU.SUBARU_IMPREZA), + CarTestRoute("8bf7e79a3ce64055|2021-05-24--09-36-27", SUBARU.SUBARU_IMPREZA_2020), + CarTestRoute("8de015561e1ea4a0|2023-08-29--17-08-31", SUBARU.SUBARU_IMPREZA), # openpilot longitudinal + # CarTestRoute("c3d1ccb52f5f9d65|2023-07-22--01-23-20", SUBARU.OUTBACK, segment=9), # gen2 longitudinal, eyesight disabled + CarTestRoute("1bbe6bf2d62f58a8|2022-07-14--17-11-43", SUBARU.SUBARU_OUTBACK, segment=10), + CarTestRoute("c56e69bbc74b8fad|2022-08-18--09-43-51", SUBARU.SUBARU_LEGACY, segment=3), + CarTestRoute("f4e3a0c511a076f4|2022-08-04--16-16-48", SUBARU.SUBARU_CROSSTREK_HYBRID, segment=2), + CarTestRoute("7fd1e4f3a33c1673|2022-12-04--15-09-53", SUBARU.SUBARU_FORESTER_2022, segment=4), + CarTestRoute("f3b34c0d2632aa83|2023-07-23--20-43-25", SUBARU.SUBARU_OUTBACK_2023, segment=7), + CarTestRoute("99437cef6d5ff2ee|2023-03-13--21-21-38", SUBARU.SUBARU_ASCENT_2023, segment=7), + # Pre-global, dashcam + CarTestRoute("95441c38ae8c130e|2020-06-08--12-10-17", SUBARU.SUBARU_FORESTER_PREGLOBAL), + CarTestRoute("df5ca7660000fba8|2020-06-16--17-37-19", SUBARU.SUBARU_LEGACY_PREGLOBAL), + CarTestRoute("5ab784f361e19b78|2020-06-08--16-30-41", SUBARU.SUBARU_OUTBACK_PREGLOBAL), + CarTestRoute("e19eb5d5353b1ac1|2020-08-09--14-37-56", SUBARU.SUBARU_OUTBACK_PREGLOBAL_2018), + + CarTestRoute("fbbfa6af821552b9|2020-03-03--08-09-43", NISSAN.NISSAN_XTRAIL), + CarTestRoute("5b7c365c50084530|2020-03-25--22-10-13", NISSAN.NISSAN_LEAF), + CarTestRoute("22c3dcce2dd627eb|2020-12-30--16-38-48", NISSAN.NISSAN_LEAF_IC), + CarTestRoute("059ab9162e23198e|2020-05-30--09-41-01", NISSAN.NISSAN_ROGUE), + CarTestRoute("b72d3ec617c0a90f|2020-12-11--15-38-17", NISSAN.NISSAN_ALTIMA), + + CarTestRoute("32a319f057902bb3|2020-04-27--15-18-58", MAZDA.MAZDA_CX5), + CarTestRoute("10b5a4b380434151|2020-08-26--17-11-45", MAZDA.MAZDA_CX9), + CarTestRoute("74f1038827005090|2020-08-26--20-05-50", MAZDA.MAZDA_3), + CarTestRoute("fb53c640f499b73d|2021-06-01--04-17-56", MAZDA.MAZDA_6), + CarTestRoute("f6d5b1a9d7a1c92e|2021-07-08--06-56-59", MAZDA.MAZDA_CX9_2021), + CarTestRoute("a4af1602d8e668ac|2022-02-03--12-17-07", MAZDA.MAZDA_CX5_2022), + + CarTestRoute("bc095dc92e101734/000000db--ee9fe46e57", RIVIAN.RIVIAN_R1_GEN1), + + #CarTestRoute("46cdc864ec865f4b/00000007--42f94db730", TESLA.TESLA_MODEL_Y), + + # Segments that test specific issues + # Controls mismatch due to standstill threshold + CarTestRoute("bec2dcfde6a64235|2022-04-08--14-21-32", HONDA.HONDA_CRV_HYBRID, segment=22), +] diff --git a/opendbc_repo/opendbc/car/tests/test_can_fingerprint.py b/opendbc_repo/opendbc/car/tests/test_can_fingerprint.py new file mode 100644 index 0000000000..30dba60008 --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_can_fingerprint.py @@ -0,0 +1,55 @@ +import pytest +from opendbc.car.can_definitions import CanData +from opendbc.car.car_helpers import FRAME_FINGERPRINT, can_fingerprint +from opendbc.car.fingerprints import _FINGERPRINTS as FINGERPRINTS + + +class TestCanFingerprint: + @pytest.mark.parametrize("car_model, fingerprints", FINGERPRINTS.items()) + def test_can_fingerprint(self, car_model, fingerprints): + """Tests online fingerprinting function on offline fingerprints""" + + for fingerprint in fingerprints: # can have multiple fingerprints for each platform + can = [CanData(address=address, dat=b'\x00' * length, src=src) + for address, length in fingerprint.items() for src in (0, 1)] + + fingerprint_iter = iter([can]) + car_fingerprint, finger = can_fingerprint(lambda **kwargs: [next(fingerprint_iter, [])]) # noqa: B023 + + assert car_fingerprint == car_model + assert finger[0] == fingerprint + assert finger[1] == fingerprint + assert finger[2] == {} + + def test_timing(self, subtests): + # just pick any CAN fingerprinting car + car_model = "CHEVROLET_BOLT_EUV" + fingerprint = FINGERPRINTS[car_model][0] + + cases = [] + + # case 1 - one match, make sure we keep going for 100 frames + can = [CanData(address=address, dat=b'\x00' * length, src=src) + for address, length in fingerprint.items() for src in (0, 1)] + cases.append((FRAME_FINGERPRINT, car_model, can)) + + # case 2 - no matches, make sure we keep going for 100 frames + can = [CanData(address=1, dat=b'\x00' * 1, src=src) for src in (0, 1)] # uncommon address + cases.append((FRAME_FINGERPRINT, None, can)) + + # case 3 - multiple matches, make sure we keep going for 200 frames to try to eliminate some + can = [CanData(address=2016, dat=b'\x00' * 8, src=src) for src in (0, 1)] # common address + cases.append((FRAME_FINGERPRINT * 2, None, can)) + + for expected_frames, car_model, can in cases: + with subtests.test(expected_frames=expected_frames, car_model=car_model): + frames = 0 + + def can_recv(**kwargs): + nonlocal frames + frames += 1 + return [can] # noqa: B023 + + car_fingerprint, _ = can_fingerprint(can_recv) + assert car_fingerprint == car_model + assert frames == expected_frames + 2 # TODO: fix extra frames diff --git a/opendbc_repo/opendbc/car/tests/test_car_interfaces.py b/opendbc_repo/opendbc/car/tests/test_car_interfaces.py new file mode 100644 index 0000000000..f33deed6ed --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_car_interfaces.py @@ -0,0 +1,148 @@ +import os +import math +import hypothesis.strategies as st +import pytest +from hypothesis import Phase, given, settings +from collections.abc import Callable +from typing import Any + +from opendbc.car import DT_CTRL, CanData, gen_empty_fingerprint, structs +from opendbc.car.car_helpers import interfaces +from opendbc.car.fingerprints import FW_VERSIONS +from opendbc.car.fw_versions import FW_QUERY_CONFIGS +from opendbc.car.interfaces import get_interface_attr +from opendbc.car.mock.values import CAR as MOCK +from opendbc.car.values import PLATFORMS + +DrawType = Callable[[st.SearchStrategy], Any] + +ALL_ECUS = {ecu for ecus in FW_VERSIONS.values() for ecu in ecus.keys()} +ALL_ECUS |= {ecu for config in FW_QUERY_CONFIGS.values() for ecu in config.extra_ecus} + +ALL_REQUESTS = {tuple(r.request) for config in FW_QUERY_CONFIGS.values() for r in config.requests} + +MAX_EXAMPLES = int(os.environ.get('MAX_EXAMPLES', '15')) + + +def get_fuzzy_car_interface_args(draw: DrawType) -> dict: + # Fuzzy CAN fingerprints and FW versions to test more states of the CarInterface + fingerprint_strategy = st.fixed_dictionaries({key: st.dictionaries(st.integers(min_value=0, max_value=0x800), + st.integers(min_value=0, max_value=64)) for key in + gen_empty_fingerprint()}) + + # only pick from possible ecus to reduce search space + car_fw_strategy = st.lists(st.sampled_from(sorted(ALL_ECUS))) + + params_strategy = st.fixed_dictionaries({ + 'fingerprints': fingerprint_strategy, + 'car_fw': car_fw_strategy, + 'alpha_long': st.booleans(), + }) + + params: dict = draw(params_strategy) + params['car_fw'] = [structs.CarParams.CarFw(ecu=fw[0], address=fw[1], subAddress=fw[2] or 0, + request=draw(st.sampled_from(sorted(ALL_REQUESTS)))) + for fw in params['car_fw']] + return params + + +class TestCarInterfaces: + # FIXME: Due to the lists used in carParams, Phase.target is very slow and will cause + # many generated examples to overrun when max_examples > ~20, don't use it + @pytest.mark.parametrize("car_name", sorted(PLATFORMS)) + @settings(max_examples=MAX_EXAMPLES, deadline=None, + phases=(Phase.reuse, Phase.generate, Phase.shrink)) + @given(data=st.data()) + def test_car_interfaces(self, car_name, data): + CarInterface = interfaces[car_name] + + args = get_fuzzy_car_interface_args(data.draw) + + car_params = CarInterface.get_params(car_name, args['fingerprints'], args['car_fw'], + alpha_long=args['alpha_long'], docs=False) + car_interface = CarInterface(car_params) + assert car_params + assert car_interface + + assert car_params.mass > 1 + assert car_params.wheelbase > 0 + # centerToFront is center of gravity to front wheels, assert a reasonable range + assert car_params.wheelbase * 0.3 < car_params.centerToFront < car_params.wheelbase * 0.7 + assert car_params.maxLateralAccel > 0 + + # Longitudinal sanity checks + assert len(car_params.longitudinalTuning.kpV) == len(car_params.longitudinalTuning.kpBP) + assert len(car_params.longitudinalTuning.kiV) == len(car_params.longitudinalTuning.kiBP) + + # Lateral sanity checks + if car_params.steerControlType != structs.CarParams.SteerControlType.angle: + tune = car_params.lateralTuning + if tune.which() == 'pid': + if car_name != MOCK.MOCK: + assert not math.isnan(tune.pid.kf) and tune.pid.kf > 0 + assert len(tune.pid.kpV) > 0 and len(tune.pid.kpV) == len(tune.pid.kpBP) + assert len(tune.pid.kiV) > 0 and len(tune.pid.kiV) == len(tune.pid.kiBP) + + elif tune.which() == 'torque': + assert not math.isnan(tune.torque.kf) and tune.torque.kf > 0 + assert not math.isnan(tune.torque.friction) and tune.torque.friction > 0 + + # Run car interface + # TODO: use hypothesis to generate random messages + now_nanos = 0 + CC = structs.CarControl().as_reader() + for _ in range(10): + car_interface.update([]) + car_interface.apply(CC, now_nanos) + now_nanos += DT_CTRL * 1e9 # 10 ms + + CC = structs.CarControl() + CC.enabled = True + CC.latActive = True + CC.longActive = True + CC = CC.as_reader() + for _ in range(10): + car_interface.update([]) + car_interface.apply(CC, now_nanos) + now_nanos += DT_CTRL * 1e9 # 10ms + + # Test radar interface + radar_interface = CarInterface.RadarInterface(car_params) + assert radar_interface + + # Run radar interface once + radar_interface.update([]) + if not car_params.radarUnavailable and radar_interface.rcp is not None and \ + hasattr(radar_interface, '_update') and hasattr(radar_interface, 'trigger_msg'): + radar_interface._update([radar_interface.trigger_msg]) + + # Test radar fault + if not car_params.radarUnavailable and radar_interface.rcp is not None: + cans = [(0, [CanData(0, b'', 0) for _ in range(5)])] + rr = radar_interface.update(cans) + assert rr is None or len(rr.errors) > 0 + + def test_interface_attrs(self): + """Asserts basic behavior of interface attribute getter""" + num_brands = len(get_interface_attr('CAR')) + assert num_brands >= 12 + + # Should return value for all brands when not combining, even if attribute doesn't exist + ret = get_interface_attr('FAKE_ATTR') + assert len(ret) == num_brands + + # Make sure we can combine dicts + ret = get_interface_attr('DBC', combine_brands=True) + assert len(ret) >= 160 + + # We don't support combining non-dicts + ret = get_interface_attr('CAR', combine_brands=True) + assert len(ret) == 0 + + # If brand has None value, it shouldn't return when ignore_none=True is specified + none_brands = {b for b, v in get_interface_attr('FINGERPRINTS').items() if v is None} + assert len(none_brands) >= 1 + + ret = get_interface_attr('FINGERPRINTS', ignore_none=True) + none_brands_in_ret = none_brands.intersection(ret) + assert len(none_brands_in_ret) == 0, f'Brands with None values in ignore_none=True result: {none_brands_in_ret}' diff --git a/opendbc_repo/opendbc/car/tests/test_docs.py b/opendbc_repo/opendbc/car/tests/test_docs.py new file mode 100644 index 0000000000..f09e847120 --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_docs.py @@ -0,0 +1,77 @@ +from collections import defaultdict +import pytest +import re + +from opendbc.car.car_helpers import interfaces +from opendbc.car.docs import get_all_car_docs +from opendbc.car.docs_definitions import Cable, Column, PartType, Star, SupportType +from opendbc.car.honda.values import CAR as HONDA +from opendbc.car.values import PLATFORMS + + +class TestCarDocs: + @classmethod + def setup_class(cls): + cls.all_cars = get_all_car_docs() + + def test_duplicate_years(self, subtests): + make_model_years = defaultdict(list) + for car in self.all_cars: + with subtests.test(car_docs_name=car.name): + if car.support_type != SupportType.UPSTREAM: + pytest.skip() + + make_model = (car.make, car.model) + for year in car.year_list: + assert year not in make_model_years[make_model], f"{car.name}: Duplicate model year" + make_model_years[make_model].append(year) + + def test_missing_car_docs(self, subtests): + all_car_docs_platforms = [name for name, config in PLATFORMS.items()] + for platform in sorted(interfaces.keys()): + with subtests.test(platform=platform): + assert platform in all_car_docs_platforms, f"Platform: {platform} doesn't have a CarDocs entry" + + def test_naming_conventions(self, subtests): + # Asserts market-standard car naming conventions by brand + for car in self.all_cars: + with subtests.test(car=car.name): + tokens = car.model.lower().split(" ") + if car.brand == "hyundai": + assert "phev" not in tokens, "Use `Plug-in Hybrid`" + assert "hev" not in tokens, "Use `Hybrid`" + if "plug-in hybrid" in car.model.lower(): + assert "Plug-in Hybrid" in car.model, "Use correct capitalization" + if car.make != "Kia": + assert "ev" not in tokens, "Use `Electric`" + elif car.brand == "toyota": + if "rav4" in tokens: + assert "RAV4" in car.model, "Use correct capitalization" + + def test_torque_star(self, subtests): + # Asserts brand-specific assumptions around steering torque star + for car in self.all_cars: + with subtests.test(car=car.name): + # honda sanity check, it's the definition of a no torque star + if car.car_fingerprint in (HONDA.HONDA_ACCORD, HONDA.HONDA_CIVIC, HONDA.HONDA_CRV, HONDA.HONDA_ODYSSEY, HONDA.HONDA_PILOT): + assert car.row[Column.STEERING_TORQUE] == Star.EMPTY, f"{car.name} has full torque star" + elif car.brand in ("toyota", "hyundai"): + assert car.row[Column.STEERING_TORQUE] != Star.EMPTY, f"{car.name} has no torque star" + + def test_year_format(self, subtests): + for car in self.all_cars: + with subtests.test(car=car.name): + assert re.search(r"\d{4}-\d{4}", car.name) is None, f"Format years correctly: {car.name}" + + def test_harnesses(self, subtests): + for car in self.all_cars: + with subtests.test(car=car.name): + if car.name == "comma body" or car.support_type != SupportType.UPSTREAM: + pytest.skip() + + car_part_type = [p.part_type for p in car.car_parts.all_parts()] + car_parts = list(car.car_parts.all_parts()) + assert len(car_parts) > 0, f"Need to specify car parts: {car.name}" + assert car_part_type.count(PartType.connector) == 1, f"Need to specify one harness connector: {car.name}" + assert car_part_type.count(PartType.mount) == 1, f"Need to specify one mount: {car.name}" + assert Cable.right_angle_obd_c_cable_1_5ft in car_parts, f"Need to specify a right angle OBD-C cable (1.5ft): {car.name}" diff --git a/opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py b/opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py new file mode 100644 index 0000000000..58d2ba65d0 --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_fw_fingerprint.py @@ -0,0 +1,327 @@ +import pytest +import random +import time +from collections import defaultdict + +from opendbc.car.can_definitions import CanData +from opendbc.car.car_helpers import interfaces +from opendbc.car.structs import CarParams +from opendbc.car.fingerprints import FW_VERSIONS +from opendbc.car.fw_versions import FW_QUERY_CONFIGS, FUZZY_EXCLUDE_ECUS, VERSIONS, build_fw_dict, \ + match_fw_to_car, get_brand_ecu_matches, get_fw_versions, get_present_ecus +from opendbc.car.vin import get_vin + +CarFw = CarParams.CarFw +Ecu = CarParams.Ecu + +ECU_NAME = {v: k for k, v in Ecu.schema.enumerants.items()} + + +class TestFwFingerprint: + def assertFingerprints(self, candidates, expected): + candidates = list(candidates) + assert len(candidates) == 1, f"got more than one candidate: {candidates}" + assert candidates[0] == expected + + @pytest.mark.parametrize("brand, car_model, ecus, test_non_essential", + [(b, c, e[c], n) for b, e in VERSIONS.items() for c in e for n in (True, False)]) + def test_exact_match(self, brand, car_model, ecus, test_non_essential): + config = FW_QUERY_CONFIGS[brand] + CP = CarParams() + for _ in range(20): + fw = [] + for ecu, fw_versions in ecus.items(): + # Assume non-essential ECUs apply to all cars, so we catch cases where Car A with + # missing ECUs won't match to Car B where only Car B has labeled non-essential ECUs + if ecu[0] in config.non_essential_ecus and test_non_essential: + continue + + ecu_name, addr, sub_addr = ecu + fw.append(CarFw(ecu=ecu_name, fwVersion=random.choice(fw_versions), brand=brand, + address=addr, subAddress=0 if sub_addr is None else sub_addr)) + CP.carFw = fw + _, matches = match_fw_to_car(CP.carFw, CP.carVin, allow_fuzzy=False) + if not test_non_essential: + self.assertFingerprints(matches, car_model) + else: + # if we're removing ECUs we expect some match loss, but it shouldn't mismatch + if len(matches) != 0: + self.assertFingerprints(matches, car_model) + + @pytest.mark.parametrize("brand, car_model, ecus", [(b, c, e[c]) for b, e in VERSIONS.items() for c in e]) + def test_custom_fuzzy_match(self, brand, car_model, ecus): + # Assert brand-specific fuzzy fingerprinting function doesn't disagree with standard fuzzy function + config = FW_QUERY_CONFIGS[brand] + if config.match_fw_to_car_fuzzy is None: + pytest.skip("Brand does not implement custom fuzzy fingerprinting function") + + CP = CarParams() + for _ in range(5): + fw = [] + for ecu, fw_versions in ecus.items(): + ecu_name, addr, sub_addr = ecu + fw.append(CarFw(ecu=ecu_name, fwVersion=random.choice(fw_versions), brand=brand, + address=addr, subAddress=0 if sub_addr is None else sub_addr)) + CP.carFw = fw + _, matches = match_fw_to_car(CP.carFw, CP.carVin, allow_exact=False, log=False) + brand_matches = config.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, VERSIONS[brand]) + + # If both have matches, they must agree + if len(matches) == 1 and len(brand_matches) == 1: + assert matches == brand_matches + + @pytest.mark.parametrize("brand, car_model, ecus", [(b, c, e[c]) for b, e in VERSIONS.items() for c in e]) + def test_fuzzy_match_ecu_count(self, brand, car_model, ecus): + # Asserts that fuzzy matching does not count matching FW, but ECU address keys + valid_ecus = [e for e in ecus if e[0] not in FUZZY_EXCLUDE_ECUS] + if not len(valid_ecus): + pytest.skip("Car model has no compatible ECUs for fuzzy matching") + + fw = [] + for ecu in valid_ecus: + ecu_name, addr, sub_addr = ecu + for _ in range(5): + # Add multiple FW versions to simulate ECU returning to multiple queries in a brand + fw.append(CarFw(ecu=ecu_name, fwVersion=random.choice(ecus[ecu]), brand=brand, + address=addr, subAddress=0 if sub_addr is None else sub_addr)) + CP = CarParams(carFw=fw) + _, matches = match_fw_to_car(CP.carFw, CP.carVin, allow_exact=False, log=False) + + # Assert no match if there are not enough unique ECUs + unique_ecus = {(f.address, f.subAddress) for f in fw} + if len(unique_ecus) < 2: + assert len(matches) == 0, car_model + # There won't always be a match due to shared FW, but if there is it should be correct + elif len(matches): + self.assertFingerprints(matches, car_model) + + def test_fw_version_lists(self, subtests): + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for ecu, ecu_fw in ecus.items(): + with subtests.test(ecu): + duplicates = {fw for fw in ecu_fw if ecu_fw.count(fw) > 1} + assert not len(duplicates), f'{car_model}: Duplicate FW versions: Ecu.{ecu[0]}, {duplicates}' + assert len(ecu_fw) > 0, f'{car_model}: No FW versions: Ecu.{ecu[0]}' + + def test_all_addrs_map_to_one_ecu(self): + for brand, cars in VERSIONS.items(): + addr_to_ecu = defaultdict(set) + for ecus in cars.values(): + for ecu_type, addr, sub_addr in ecus.keys(): + addr_to_ecu[(addr, sub_addr)].add(ecu_type) + ecus_for_addr = addr_to_ecu[(addr, sub_addr)] + ecu_strings = ", ".join([f'Ecu.{ecu}' for ecu in ecus_for_addr]) + assert len(ecus_for_addr) <= 1, f"{brand} has multiple ECUs that map to one address: {ecu_strings} -> ({hex(addr)}, {sub_addr})" + + def test_data_collection_ecus(self, subtests): + # Asserts no extra ECUs are in the fingerprinting database + for brand, config in FW_QUERY_CONFIGS.items(): + for car_model, ecus in VERSIONS[brand].items(): + bad_ecus = set(ecus).intersection(config.extra_ecus) + with subtests.test(car_model=car_model.value): + assert not len(bad_ecus), f'{car_model}: Fingerprints contain ECUs added for data collection: {bad_ecus}' + + def test_blacklisted_ecus(self, subtests): + blacklisted_addrs = (0x7c4, 0x7d0) # includes A/C ecu and an unknown ecu + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + CP = interfaces[car_model].get_non_essential_params(car_model) + if CP.brand == 'subaru': + for ecu in ecus.keys(): + assert ecu[1] not in blacklisted_addrs, f'{car_model}: Blacklisted ecu: (Ecu.{ecu[0]}, {hex(ecu[1])})' + + elif CP.brand == "chrysler": + # Some HD trucks have a combined TCM and ECM + if CP.carFingerprint.startswith("RAM_HD"): + for ecu in ecus.keys(): + assert ecu[0] != Ecu.transmission, f"{car_model}: Blacklisted ecu: (Ecu.{ecu[0]}, {hex(ecu[1])})" + + def test_missing_versions_and_configs(self, subtests): + brand_versions = set(VERSIONS.keys()) + brand_configs = set(FW_QUERY_CONFIGS.keys()) + if len(brand_configs - brand_versions): + with subtests.test(): + pytest.fail(f"Brands do not implement FW_VERSIONS: {brand_configs - brand_versions}") + + if len(brand_versions - brand_configs): + with subtests.test(): + pytest.fail(f"Brands do not implement FW_QUERY_CONFIG: {brand_versions - brand_configs}") + + # Ensure each brand has at least 1 ECU to query, and extra ECU retrieval + for brand, config in FW_QUERY_CONFIGS.items(): + assert len(config.get_all_ecus({}, include_extra_ecus=False)) == 0 + assert config.get_all_ecus({}) == set(config.extra_ecus) + if len(VERSIONS[brand]) > 0: + assert len(config.get_all_ecus(VERSIONS[brand])) > 0 + + def test_fw_request_ecu_whitelist(self, subtests): + for brand, config in FW_QUERY_CONFIGS.items(): + with subtests.test(brand=brand): + whitelisted_ecus = {ecu for r in config.requests for ecu in r.whitelist_ecus} + brand_ecus = {fw[0] for car_fw in VERSIONS[brand].values() for fw in car_fw} + brand_ecus |= {ecu[0] for ecu in config.extra_ecus} + + # each ecu in brand's fw versions + extra ecus needs to be whitelisted at least once + ecus_not_whitelisted = brand_ecus - whitelisted_ecus + + ecu_strings = ", ".join([f'Ecu.{ecu}' for ecu in ecus_not_whitelisted]) + assert not (len(whitelisted_ecus) and len(ecus_not_whitelisted)), \ + f'{brand.title()}: ECUs not in any FW query whitelists: {ecu_strings}' + + def test_request_ecus_in_versions(self): + # All ECUs in requests should be in the brand's FW versions + for brand, config in FW_QUERY_CONFIGS.items(): + request_ecus = {ecu for r in config.requests for ecu in r.whitelist_ecus} - {ecu[0] for ecu in config.extra_ecus} + print(brand, request_ecus) + version_ecus = config.get_all_ecus(VERSIONS[brand], include_extra_ecus=False) + for request_ecu in request_ecus: + assert request_ecu in {e for e, _, _ in version_ecus}, f"Ecu.{ECU_NAME[request_ecu]} not in {brand} FW versions" + + def test_brand_ecu_matches(self): + brand_matches = get_brand_ecu_matches(set()) + assert len(brand_matches) > 0 + assert all(len(e) and not any(e) for e in brand_matches.values()) + + # we ignore bus + brand_matches = get_brand_ecu_matches({(0x758, 0xf, 99)}) + assert True in brand_matches['toyota'] + assert not any(any(e) for b, e in brand_matches.items() if b != 'toyota') + + +class TestFwFingerprintTiming: + N: int = 5 + TOL: float = 0.05 + + # for patched functions + current_obd_multiplexing: bool + total_time: float + + @staticmethod + def fake_can_send(msgs): + pass + + @staticmethod + def fake_can_recv(wait_for_one: bool = False) -> list[list[CanData]]: + return ([[CanData(random.randint(0x600, 0x800), b'\x00' * 8, 0)]] + if random.uniform(0, 1) > 0.5 else []) + + def fake_set_obd_multiplexing(self, obd_multiplexing): + """The 10Hz blocking params loop adds on average 50ms to the query time for each OBD multiplexing change""" + if obd_multiplexing != self.current_obd_multiplexing: + self.current_obd_multiplexing = obd_multiplexing + self.total_time += 0.1 / 2 + + def fake_get_data(self, timeout): + self.total_time += timeout + return {} + + def _benchmark_brand(self, brand, num_pandas, mocker): + self.total_time = 0 + mocker.patch("opendbc.car.isotp_parallel_query.IsoTpParallelQuery.get_data", self.fake_get_data) + for _ in range(self.N): + # Treat each brand as the most likely (aka, the first) brand with OBD multiplexing initially on + self.current_obd_multiplexing = True + + t = time.perf_counter() + get_fw_versions(self.fake_can_recv, self.fake_can_send, self.fake_set_obd_multiplexing, brand, num_pandas=num_pandas) + self.total_time += time.perf_counter() - t + + return self.total_time / self.N + + def _assert_timing(self, avg_time, ref_time): + assert avg_time < ref_time + self.TOL + assert avg_time > ref_time - self.TOL, "Performance seems to have improved, update test refs." + + def test_startup_timing(self, subtests, mocker): + # Tests worse-case VIN query time and typical present ECU query time + vin_ref_times = {'worst': 1.6, 'best': 0.8} # best assumes we go through all queries to get a match + present_ecu_ref_time = 0.45 + + def fake_get_ecu_addrs(*_, timeout): + self.total_time += timeout + return set() + + self.total_time = 0.0 + mocker.patch("opendbc.car.fw_versions.get_ecu_addrs", fake_get_ecu_addrs) + for _ in range(self.N): + self.current_obd_multiplexing = True + get_present_ecus(self.fake_can_recv, self.fake_can_send, self.fake_set_obd_multiplexing, num_pandas=2) + self._assert_timing(self.total_time / self.N, present_ecu_ref_time) + print(f'get_present_ecus, query time={self.total_time / self.N} seconds') + + for name, args in (('worst', {}), ('best', {'retry': 1})): + with subtests.test(name=name): + self.total_time = 0.0 + mocker.patch("opendbc.car.isotp_parallel_query.IsoTpParallelQuery.get_data", self.fake_get_data) + for _ in range(self.N): + get_vin(self.fake_can_recv, self.fake_can_send, (0, 1), **args) + self._assert_timing(self.total_time / self.N, vin_ref_times[name]) + print(f'get_vin {name} case, query time={self.total_time / self.N} seconds') + + def test_fw_query_timing(self, subtests, mocker): + total_ref_time = {1: 7.3, 2: 7.9} + brand_ref_times = { + 1: { + 'gm': 1.0, + 'body': 0.1, + 'chrysler': 0.3, + 'ford': 1.5, + 'honda': 0.45, + 'hyundai': 0.65, + 'mazda': 0.1, + 'nissan': 0.8, + 'subaru': 0.65, + 'tesla': 0.1, + 'toyota': 0.7, + 'volkswagen': 0.65, + 'rivian': 0.3, + }, + 2: { + 'ford': 1.6, + 'hyundai': 1.15, + } + } + + total_times = {1: 0.0, 2: 0.0} + for num_pandas in (1, 2): + for brand, config in FW_QUERY_CONFIGS.items(): + with subtests.test(brand=brand, num_pandas=num_pandas): + avg_time = self._benchmark_brand(brand, num_pandas, mocker) + total_times[num_pandas] += avg_time + avg_time = round(avg_time, 2) + + ref_time = brand_ref_times[num_pandas].get(brand) + if ref_time is None: + # ref time should be same as 1 panda if no aux queries + ref_time = brand_ref_times[num_pandas - 1][brand] + + self._assert_timing(avg_time, ref_time) + print(f'{brand=}, {num_pandas=}, {len(config.requests)=}, avg FW query time={avg_time} seconds') + + for num_pandas in (1, 2): + with subtests.test(brand='all_brands', num_pandas=num_pandas): + total_time = round(total_times[num_pandas], 2) + self._assert_timing(total_time, total_ref_time[num_pandas]) + print(f'all brands, total FW query time={total_time} seconds') + + def test_get_fw_versions(self, subtests, mocker): + # some coverage on IsoTpParallelQuery and panda UDS library + # TODO: replace this with full fingerprint simulation testing + # https://github.com/commaai/panda/pull/1329 + + def fake_carlog_exception(*args, **kwargs): + raise + + t = 0 + + def fake_monotonic(): + nonlocal t + t += 0.0001 + return t + + mocker.patch("opendbc.car.carlog.carlog.exception", fake_carlog_exception) + mocker.patch("time.monotonic", fake_monotonic) + for brand in FW_QUERY_CONFIGS.keys(): + with subtests.test(brand=brand): + get_fw_versions(self.fake_can_recv, self.fake_can_send, lambda obd: None, brand) diff --git a/opendbc_repo/opendbc/car/tests/test_lateral_limits.py b/opendbc_repo/opendbc/car/tests/test_lateral_limits.py new file mode 100755 index 0000000000..7104086cf9 --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_lateral_limits.py @@ -0,0 +1,96 @@ +#!/usr/bin/env python3 +from collections import defaultdict +import importlib +from parameterized import parameterized_class +import pytest +import sys + +from opendbc.car import DT_CTRL +from opendbc.car.car_helpers import interfaces +from opendbc.car.interfaces import get_torque_params +from opendbc.car.values import PLATFORMS + +# ISO 11270 - allowed up jerk is strictly lower than recommended limits +MAX_LAT_ACCEL = 3.0 # m/s^2 +MAX_LAT_JERK_UP = 2.5 # m/s^3 +MAX_LAT_JERK_DOWN = 5.0 # m/s^3 +MAX_LAT_JERK_UP_TOLERANCE = 0.5 # m/s^3 + +# jerk is measured over half a second +JERK_MEAS_T = 0.5 + + +@parameterized_class('car_model', [(c,) for c in sorted(PLATFORMS)]) +class TestLateralLimits: + car_model: str + + @classmethod + def setup_class(cls): + CarInterface = interfaces[cls.car_model] + CP = CarInterface.get_non_essential_params(cls.car_model) + + if cls.car_model == 'MOCK': + pytest.skip('Mock car') + + # TODO: test all platforms + if CP.steerControlType != 'torque': + pytest.skip() + + if CP.notCar: + pytest.skip() + + CarControllerParams = importlib.import_module(f'opendbc.car.{CP.brand}.values').CarControllerParams + cls.control_params = CarControllerParams(CP) + cls.torque_params = get_torque_params()[cls.car_model] + + @staticmethod + def calculate_0_5s_jerk(control_params, torque_params): + steer_step = control_params.STEER_STEP + max_lat_accel = torque_params['MAX_LAT_ACCEL_MEASURED'] + + # Steer up/down delta per 10ms frame, in percentage of max torque + steer_up_per_frame = control_params.STEER_DELTA_UP / control_params.STEER_MAX / steer_step + steer_down_per_frame = control_params.STEER_DELTA_DOWN / control_params.STEER_MAX / steer_step + + # Lateral acceleration reached in 0.5 seconds, clipping to max torque + accel_up_0_5_sec = min(steer_up_per_frame * JERK_MEAS_T / DT_CTRL, 1.0) * max_lat_accel + accel_down_0_5_sec = min(steer_down_per_frame * JERK_MEAS_T / DT_CTRL, 1.0) * max_lat_accel + + # Convert to m/s^3 + return accel_up_0_5_sec / JERK_MEAS_T, accel_down_0_5_sec / JERK_MEAS_T + + def test_jerk_limits(self): + up_jerk, down_jerk = self.calculate_0_5s_jerk(self.control_params, self.torque_params) + assert up_jerk <= MAX_LAT_JERK_UP + MAX_LAT_JERK_UP_TOLERANCE + assert down_jerk <= MAX_LAT_JERK_DOWN + + def test_max_lateral_accel(self): + assert self.torque_params["MAX_LAT_ACCEL_MEASURED"] <= MAX_LAT_ACCEL + + +class LatAccelReport: + car_model_jerks: defaultdict[str, dict[str, float]] = defaultdict(dict) + + def pytest_sessionfinish(self): + print(f"\n\n---- Lateral limit report ({len(PLATFORMS)} cars) ----\n") + + max_car_model_len = max([len(car_model) for car_model in self.car_model_jerks]) + for car_model, _jerks in sorted(self.car_model_jerks.items(), key=lambda i: i[1]['up_jerk'], reverse=True): + violation = _jerks["up_jerk"] > MAX_LAT_JERK_UP + MAX_LAT_JERK_UP_TOLERANCE or \ + _jerks["down_jerk"] > MAX_LAT_JERK_DOWN + violation_str = " - VIOLATION" if violation else "" + + print(f"{car_model:{max_car_model_len}} - up jerk: {round(_jerks['up_jerk'], 2):5} " + + f"m/s^3, down jerk: {round(_jerks['down_jerk'], 2):5} m/s^3{violation_str}") + + @pytest.fixture(scope="class", autouse=True) + def class_setup(self, request): + yield + cls = request.cls + if hasattr(cls, "control_params"): + up_jerk, down_jerk = TestLateralLimits.calculate_0_5s_jerk(cls.control_params, cls.torque_params) + self.car_model_jerks[cls.car_model] = {"up_jerk": up_jerk, "down_jerk": down_jerk} + + +if __name__ == '__main__': + sys.exit(pytest.main([__file__, '-n0', '--no-summary'], plugins=[LatAccelReport()])) # noqa: TID251 diff --git a/opendbc_repo/opendbc/car/tests/test_platform_configs.py b/opendbc_repo/opendbc/car/tests/test_platform_configs.py new file mode 100644 index 0000000000..1704621ddd --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_platform_configs.py @@ -0,0 +1,17 @@ +from opendbc.car.values import PLATFORMS + + +class TestPlatformConfigs: + def test_configs(self, subtests): + + for name, platform in PLATFORMS.items(): + with subtests.test(platform=str(platform)): + assert platform.config._frozen + + if platform != "MOCK": + assert len(platform.config.dbc_dict) > 0 + assert len(platform.config.platform_str) > 0 + + assert name == platform.config.platform_str + + assert platform.config.specs is not None diff --git a/opendbc_repo/opendbc/car/tests/test_routes.py b/opendbc_repo/opendbc/car/tests/test_routes.py new file mode 100644 index 0000000000..92176909db --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_routes.py @@ -0,0 +1,11 @@ +import pytest + +from opendbc.car.values import PLATFORMS +from opendbc.car.tests.routes import non_tested_cars, routes + + +@pytest.mark.parametrize("platform", PLATFORMS.keys()) +def test_test_route_present(platform): + tested_platforms = [r.car_model for r in routes] + assert platform in set(tested_platforms) | set(non_tested_cars), \ + f"Missing test route for {platform}. Add a route to opendbc/car/tests/routes.py" diff --git a/opendbc_repo/opendbc/car/tests/test_vehicle_model.py b/opendbc_repo/opendbc/car/tests/test_vehicle_model.py new file mode 100644 index 0000000000..b88a8dab4e --- /dev/null +++ b/opendbc_repo/opendbc/car/tests/test_vehicle_model.py @@ -0,0 +1,67 @@ +import pytest +import math + +import numpy as np + +from opendbc.car.honda.interface import CarInterface +from opendbc.car.honda.values import CAR +from opendbc.car.vehicle_model import VehicleModel, dyn_ss_sol, create_dyn_state_matrices + + +class TestVehicleModel: + def setup_method(self): + CP = CarInterface.get_non_essential_params(CAR.HONDA_CIVIC) + self.VM = VehicleModel(CP) + + def test_round_trip_yaw_rate(self): + # TODO: fix VM to work at zero speed + for u in np.linspace(1, 30, num=10): + for roll in np.linspace(math.radians(-20), math.radians(20), num=11): + for sa in np.linspace(math.radians(-20), math.radians(20), num=11): + yr = self.VM.yaw_rate(sa, u, roll) + new_sa = self.VM.get_steer_from_yaw_rate(yr, u, roll) + + assert sa == pytest.approx(new_sa) + + def test_dyn_ss_sol_against_yaw_rate(self): + """Verify that the yaw_rate helper function matches the results + from the state space model.""" + + for roll in np.linspace(math.radians(-20), math.radians(20), num=11): + for u in np.linspace(1, 30, num=10): + for sa in np.linspace(math.radians(-20), math.radians(20), num=11): + + # Compute yaw rate based on state space model + _, yr1 = dyn_ss_sol(sa, u, roll, self.VM) + + # Compute yaw rate using direct computations + yr2 = self.VM.yaw_rate(sa, u, roll) + assert float(yr1[0]) == pytest.approx(yr2) + + def test_syn_ss_sol_simulate(self): + """Verifies that dyn_ss_sol matches a simulation""" + + for roll in np.linspace(math.radians(-20), math.radians(20), num=11): + for u in np.linspace(1, 30, num=10): + A, B = create_dyn_state_matrices(u, self.VM) + + # Convert to discrete time system + dt = 0.01 + top = np.hstack((A, B)) + full = np.vstack((top, np.zeros_like(top))) * dt + Md = sum([np.linalg.matrix_power(full, k) / math.factorial(k) for k in range(25)]) + Ad = Md[:A.shape[0], :A.shape[1]] + Bd = Md[:A.shape[0], A.shape[1]:] + + for sa in np.linspace(math.radians(-20), math.radians(20), num=11): + inp = np.array([[sa], [roll]]) + + # Simulate for 1 second + x1 = np.zeros((2, 1)) + for _ in range(100): + x1 = Ad @ x1 + Bd @ inp + + # Compute steady state solution directly + x2 = dyn_ss_sol(sa, u, roll, self.VM) + + np.testing.assert_almost_equal(x1, x2, decimal=3) diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json b/opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json new file mode 100644 index 0000000000..68c6079aea --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/ACURA_RDX_3G.json @@ -0,0 +1 @@ +{"input_std":[[8.319796],[0.8197253],[0.2695665],[0.042975243],[0.82591987],[0.8242552],[0.82166827],[0.7989035],[0.78012997],[0.7541669],[0.727379],[0.042928882],[0.042931043],[0.04292182],[0.042691696],[0.042392965],[0.04186602],[0.041271493]],"model_test_loss":0.026207376271486282,"input_size":18,"current_date_and_time":"2023-08-05_00-22-46","input_mean":[[26.074522],[0.02839493],[0.0066744387],[0.002057746],[0.02693295],[0.026884235],[0.027213756],[0.03047188],[0.032183405],[0.03682154],[0.037578877],[0.0020827646],[0.0020767434],[0.002068271],[0.0019987107],[0.001959759],[0.0019052405],[0.0017531246]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.040739167],[2.3032],[0.12316159],[-0.2659433],[-0.14477858],[2.5866256],[0.007428121]],"dense_1_W":[[-0.00041187002,-0.43338582,0.00060599507,-0.1214792,0.11413983,-0.5961203,0.28133482,0.20372222,-0.3518884,0.004369656,0.059917737,-0.8609317,0.057816904,0.6169038,0.3990334,0.008638719,0.40356407,-0.16347249],[2.204209,-0.6977474,0.0003794136,-0.029842956,0.42360333,-0.03850665,0.77470416,0.13669024,-1.1576334,-0.2837559,0.290581,-0.20709048,0.06827377,0.39236906,0.2664924,-0.070944384,0.061474152,-0.18787181],[0.0027994395,1.1713752,3.9056025,-0.2533814,-0.5706249,-0.31465232,-0.28078023,0.9239433,0.8800892,0.45323586,-1.5842354,1.1251147,0.001203793,-0.631376,0.17771868,-0.5216376,-0.3776946,0.2864524],[-0.45875242,-0.35037747,-0.0044959267,0.2115901,0.49776042,0.40634266,0.16292186,0.085123494,-0.9553305,-0.6551008,1.0865217,-0.71530885,-0.122710146,0.41569617,0.053198084,-0.013457165,0.36482632,-0.3238176],[-0.002217434,1.7620963,-1.2475897,0.2861537,2.5786693,1.6882615,2.2971427,0.5035391,-3.1869397,-3.7319245,-1.4041471,-1.1169863,-0.17736337,0.21103925,0.1615338,-0.7596914,0.4106967,0.9845423],[2.4344306,-0.5410767,0.0015357351,-0.4139311,-0.2258391,0.22010726,-0.43920308,0.3511928,0.9479655,0.80018866,-0.516027,0.007953332,0.033446178,-0.082440384,0.35339966,-0.26683265,-0.33867463,0.3848125],[-0.006754755,0.48652485,-0.00026165723,-0.07224382,-0.032497358,0.3571908,-0.30286846,-0.38309038,0.36634418,0.2480767,-0.20110212,0.7545479,0.11547977,-0.7146525,-0.018818611,-0.31016228,0.010726242,0.2242711]],"activation":"σ"},{"dense_2_W":[[0.5528864,0.008744154,0.6015725,0.22935376,-0.51005757,-0.5996119,-0.061544895],[-1.4023882,0.050312754,-0.09053194,-0.5902193,0.3458193,-0.14508769,0.946796],[-1.1020836,-1.510418,0.81544393,-0.40635344,-0.4560999,-0.2849373,1.1164322],[-0.4434681,-0.6467564,0.35384342,-0.4493043,-0.23754148,-0.24804021,0.9237547],[-0.27906877,-0.9630674,0.42410734,-0.76862967,-0.59738564,-0.70335937,-0.18449919],[-0.50024533,-0.013576657,0.25596973,0.105690226,-0.52567744,0.80972326,0.7098216],[-0.8556806,-0.14960146,-0.14877279,0.25888273,-0.18901795,-0.16515623,0.7054368],[-1.041555,0.5246004,0.87523067,-0.4851678,-0.5188004,1.3508142,1.344452],[0.83991337,0.54517484,0.09614608,0.028868627,0.35332617,0.22425945,-0.24393064],[0.48884755,-0.6723522,0.161554,-0.18337585,0.010732531,0.042358696,-0.94669324],[0.7589174,0.44016284,-0.21002136,-0.7584538,-0.1012028,-0.44348133,-0.34792235],[0.68993133,-0.13230318,-0.20205282,0.33807474,0.2551999,-0.7216631,-0.9246813],[0.55567986,0.92921287,-0.3879664,-0.06419992,0.44321644,0.34334105,-0.7811811]],"activation":"σ","dense_2_b":[[0.009339096],[-0.027214382],[-0.19324711],[-0.1799901],[-0.3219004],[-0.0076973503],[0.031202752],[0.1887236],[-0.10121091],[-0.21036065],[-0.02065366],[-0.068702094],[0.096490316]]},{"dense_3_W":[[0.5728007,-0.3089611,0.28924087,-0.5445901,0.35486373,-0.44516575,-0.5423116,0.1779453,0.58426845,0.66963387,-0.31166366,0.6550927,0.50334716],[-0.40078798,-0.027345562,-0.5357739,-0.5126658,-0.5254064,-0.32021227,-0.44433862,-0.79833746,-0.10665151,0.20663711,-0.17090832,0.98109436,0.78809434],[-0.17410587,0.23138371,0.66809905,0.2743278,0.096785605,0.5667218,0.52852666,0.4389385,-0.4016732,0.05424836,-0.7506198,-0.71257013,-0.20795672]],"activation":"identity","dense_3_b":[[0.02470415],[0.1408834],[-0.05001292]]},{"dense_4_W":[[-0.3242929,-0.272474,0.8721407]],"dense_4_b":[[-0.046378713]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json new file mode 100644 index 0000000000..61fac13379 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_A3_MK3.json @@ -0,0 +1 @@ +{"input_std":[[8.821153],[1.1607649],[0.47132117],[0.042723242],[1.137403],[1.1458488],[1.154415],[1.1424824],[1.1269064],[1.1112212],[1.0889144],[0.04246643],[0.04255451],[0.042637058],[0.04284904],[0.04293054],[0.04296549],[0.04289919]],"model_test_loss":0.010373540222644806,"input_size":18,"current_date_and_time":"2023-08-05_01-15-19","input_mean":[[22.519371],[-0.051268775],[0.008842468],[-0.0062438333],[-0.049525455],[-0.050104525],[-0.050982136],[-0.044812053],[-0.03977025],[-0.029485626],[-0.022126574],[-0.00628094],[-0.006273981],[-0.00626523],[-0.006110039],[-0.005949586],[-0.0056778532],[-0.005516688]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.145696],[-2.4282207],[-0.0467647],[0.10926833],[0.0520818],[0.04222916],[-0.5462429]],"dense_1_W":[[0.89382285,0.05062796,0.92885584,0.07922598,0.5873072,1.1331865,-0.91537136,-0.13934332,0.17509349,-0.017687947,0.1421727,0.07907387,-0.43241176,-0.29524758,0.64221257,0.25150946,-0.05171897,-0.2579187],[-0.98185164,0.15350275,0.9519401,-0.09016293,0.5030077,0.777908,-0.5172474,-0.1343053,0.060967423,0.059980214,0.10476908,0.17575294,-0.20688392,-0.37559837,0.5713468,0.08849066,0.06383742,-0.21201873],[-0.0056540756,0.34154844,-0.0002563853,0.1807267,0.48449796,1.7143611,-1.3936676,-0.35775846,-0.5523075,-0.15023966,0.5988954,0.72132236,0.18023057,-0.46348006,-0.3817839,0.23941651,-0.06494792,-0.41726813],[-0.01459551,1.354641,6.4718165,-0.45382518,-0.35718468,0.69441503,-0.12716621,-0.10042224,-0.016146144,-0.4092775,-1.1707406,0.24052495,0.18990588,-0.1906599,0.070675336,0.2473157,-0.13808818,0.048208434],[-0.0009390727,1.1310523,0.0082692,-0.10876187,0.25259772,1.0159874,-0.72615826,0.107342415,0.0071694367,-0.065621555,0.13799563,-0.24110964,-0.073862016,-0.496919,-0.3644365,0.16880687,0.13885318,0.15355359],[-0.0016120744,-1.5514591,-0.000675083,0.40327275,0.8975076,-0.8923279,0.7910547,-0.40612024,-0.35091725,-0.101295106,0.38604048,-0.3228168,-0.17239958,-0.3530256,0.58767676,0.15752153,0.060442753,-0.32661223],[0.028779855,2.903487,-0.022664804,0.67652136,0.86524385,1.6721133,1.4576133,1.4279684,0.98554605,0.5130255,-0.469917,-0.0684012,0.4178242,0.3712093,-0.7501333,-0.06791517,0.33725083,-0.09968473]],"activation":"σ"},{"dense_2_W":[[0.72010493,-0.22845428,0.34250122,-0.10947913,-0.09878085,0.19209231,0.3437535],[-0.19205496,-0.07013072,-0.7416267,0.25280657,-0.1804019,0.4552836,0.12560841],[0.3121345,0.351005,0.5316866,0.03252624,-0.057188597,-0.9498188,0.07712814],[-0.16806532,0.25612888,0.43424875,-0.24325378,0.23957624,-0.14204793,-0.13016012],[-0.02399125,-0.71077454,0.03666176,-0.044081435,-0.495433,0.2724298,0.22011437],[-0.24902506,-0.59004927,-0.13717845,-0.5492086,-0.8540712,1.7531782,-0.18482044],[0.045421652,0.13694939,0.35765722,-0.28403643,0.13330263,-0.053298414,0.07322283],[-0.34804162,-0.38957596,-0.1432544,0.071290284,-0.538751,1.1790421,0.29278603],[0.45716798,-0.3516285,-0.2764383,0.4446462,0.76846844,-0.7801458,0.49539566],[0.07269321,-0.15379232,-0.8779124,-0.92490155,-0.91285044,1.7692323,0.028679641],[-0.763075,0.17418097,-0.2823778,0.04659932,-0.030475633,0.37596756,-0.66006523],[-0.30286422,-0.03590232,-0.012065834,-0.16185908,-0.2584895,0.3575371,-0.36891615],[-0.39941847,0.09128256,-0.32452282,-0.36513522,0.06978018,0.028525386,-0.7303688]],"activation":"σ","dense_2_b":[[0.048172507],[-0.07530213],[-0.340101],[-0.022203589],[0.009521725],[0.46328664],[0.004919447],[0.022925986],[-0.15940326],[0.40359482],[-0.14555077],[-0.02970779],[-0.24673922]]},{"dense_3_W":[[-0.32974115,-0.5017099,0.5581341,-0.22340928,-0.03365036,-0.20835784,0.537433,0.5391966,-0.36658195,-0.5869503,0.17776869,-0.013170913,0.49127203],[-0.29820803,0.28987518,-0.24515595,0.25772423,-0.04187076,0.69620353,-0.3389867,0.12667182,0.150237,0.5090255,0.49386412,-0.3637399,-0.01771473],[0.5784079,-0.0028831854,0.43896967,0.60790384,-0.4540079,-0.45909828,0.046820417,-0.56937873,0.530507,-0.1309796,0.32449916,-0.49291292,-0.07336644]],"activation":"identity","dense_3_b":[[0.0460099],[-0.07466251],[0.050609488]]},{"dense_4_W":[[0.13093115,-0.7773025,0.81287336]],"dense_4_b":[[0.057754416]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json new file mode 100644 index 0000000000..04a37fb732 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/AUDI_Q3_MK2.json @@ -0,0 +1 @@ +{"input_std":[[7.7137036],[0.9591701],[0.43025136],[0.042929597],[0.94636554],[0.9494532],[0.9542092],[0.9331239],[0.92229235],[0.90257126],[0.88295245],[0.04270026],[0.042758208],[0.042818923],[0.042808957],[0.04270763],[0.04245825],[0.04215921]],"model_test_loss":0.013933051377534866,"input_size":18,"current_date_and_time":"2023-08-05_03-45-12","input_mean":[[22.835394],[0.021439364],[0.0072024865],[-0.030873412],[0.021618834],[0.022110935],[0.02246376],[0.027221544],[0.027849164],[0.028268991],[0.032981515],[-0.030950077],[-0.030914158],[-0.030886404],[-0.030796975],[-0.03080609],[-0.030815149],[-0.030869272]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.04303998],[0.18157572],[-0.08682473],[2.9495513],[1.4374219],[0.6783021],[-2.7817473]],"dense_1_W":[[-0.0047104284,-0.6137708,0.002341153,0.0833492,0.08768307,-0.81527835,0.6300508,-0.16833228,-0.25419337,-0.031592067,0.122596905,-0.10794349,-0.06970466,0.1521993,-0.04051286,0.059251916,-0.11607053,0.024402162],[-0.06346717,-0.8082159,0.0040190252,0.3896669,0.06872366,-0.7609862,1.0698833,-0.06101861,0.1457311,0.19787341,-0.21086167,-0.07617529,-0.40358907,0.012452437,0.10700336,0.3594503,0.025611963,-0.14057784],[-0.010002668,-1.4602287,-5.6766963,0.03532623,-0.3498076,-0.005860239,0.092076786,-0.22858407,-0.4043539,0.277433,2.0291262,0.044144016,0.06367758,-0.2504535,0.3463553,-0.27935135,0.18728429,-0.15520296],[1.595175,1.1790471,0.33827057,-0.36523697,-0.028244315,0.88139707,-1.6474634,0.3107364,-0.13230316,0.019280735,-0.015979009,0.5001427,-0.13290524,-0.15675303,0.12809546,-0.09519324,-0.046115097,0.14121765],[0.01943066,0.3716076,-0.048877437,-0.3783698,0.8343788,-0.51018566,1.0465596,-0.123417296,-0.446517,0.0398392,0.5281696,-0.3002102,-0.4030578,-0.23385769,0.45266014,-0.15139927,-0.084088355,-0.8366423],[-0.05169121,0.34580684,-0.0006902231,-0.0828817,-0.67921466,1.1092558,-0.4253136,0.008052844,-0.08571924,0.14040273,-0.057995982,0.5459289,-0.1640265,-0.24621837,-0.44702664,0.25875458,-0.16363451,0.07772843],[-1.5420308,-0.0795151,0.32449803,0.09269649,-0.12254087,0.95711464,-0.32903105,0.03880426,-0.24505275,0.3849109,-0.085893035,0.1646195,-0.14589338,-0.44051296,-0.05752575,0.38210398,0.32775694,-0.34554252]],"activation":"σ"},{"dense_2_W":[[-1.1991313,-0.99167293,-0.51472193,0.16773303,0.02101984,0.2913248,1.2563334],[0.50807565,0.2559231,0.3110827,-0.7911515,-0.2996264,-0.76801026,0.21431924],[-0.85551465,-0.3015842,-0.283833,0.5011012,-1.0202202,0.6740454,0.972628],[0.98223805,1.0016109,-0.09864264,0.13172226,-0.12697673,-0.40963414,-0.35780042],[-1.1385525,-0.88758576,-0.2415131,1.0169281,-0.37200353,0.83228046,0.58273304],[0.21168564,-0.01694945,-0.13944875,0.12901805,-0.58597475,-0.23450175,0.07449124],[0.6887359,0.49634412,-0.4524045,-0.5046205,0.80216706,-0.37323585,0.15390924],[-0.86359656,-0.8294278,-0.10975485,-0.111551575,-0.21511969,1.1387116,0.014124521],[0.6704329,0.7197621,-0.16924202,-0.03436297,0.3256051,-0.6220993,-0.3785999],[0.88013136,0.211954,0.26013535,-0.5998456,-0.14124529,-1.0012022,0.30486783],[0.8889406,0.25632593,0.029823503,-0.6760066,0.40066594,-0.6796646,-0.42230535],[-0.09985791,-0.6314821,-0.6048359,-0.28479984,0.022334062,-0.11070772,-0.50172895],[-1.0790496,-0.81828046,-0.26459435,-0.15203167,-0.10264537,0.7340549,0.6219628]],"activation":"σ","dense_2_b":[[0.07743759],[-0.08656865],[-0.028110785],[0.011056744],[0.33631137],[-0.33865649],[0.093462616],[0.28041044],[-0.1485106],[-0.10288075],[-0.118501574],[-0.19659644],[0.23902157]]},{"dense_3_W":[[-0.21247761,-0.3863918,-0.35711917,-0.15159392,-0.3087554,0.27256498,0.059494548,0.79742235,-0.6449726,-0.3814191,-0.6635471,0.14567713,0.6240987],[-0.60485286,0.36261612,-0.3062913,0.5288856,-0.8237054,0.14184983,0.36521724,-0.6798562,0.19129165,0.76819366,0.3231601,0.028053993,-0.89101535],[0.5106036,-0.047764797,0.003893947,0.122273564,-0.616694,-0.30744067,0.10899531,-0.98274595,0.045314062,0.3392997,0.15401444,0.406467,-0.3275237]],"activation":"identity","dense_3_b":[[0.0072817504],[0.054671016],[0.3754705]]},{"dense_4_W":[[0.18990728,-1.0539979,-0.04924367]],"dense_4_b":[[-0.04299712]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json new file mode 100644 index 0000000000..dcd89c8157 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/BUICK_LACROSSE.json @@ -0,0 +1 @@ +{"input_std":[[6.227712],[1.1068953],[1.0287797],[0.031075474],[1.0763543],[1.0856286],[1.0965383],[1.126149],[1.1471479],[1.1817935],[1.207976],[0.03088383],[0.030962178],[0.031021496],[0.031159075],[0.031329848],[0.031462345],[0.031319857]],"model_test_loss":0.004972144495695829,"input_size":18,"current_date_and_time":"2023-08-31_18-04-43","input_mean":[[24.297255],[0.05408088],[-0.024366971],[0.017203888],[0.04666708],[0.049268622],[0.050475407],[0.05590255],[0.04882452],[0.04647568],[0.05159426],[0.017288238],[0.017341834],[0.017397404],[0.017483119],[0.017647635],[0.018217644],[0.018788869]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.022334022],[-0.100295104],[-0.110021666],[-0.37309307],[-0.18126963],[-0.90585893],[-0.5534994]],"dense_1_W":[[0.0030549474,1.145932,-0.09721581,0.18435507,-0.2573822,-0.19281419,0.43596926,0.1603594,0.10032455,-0.051014125,0.4603509,0.38878915,-0.22585483,-0.29935592,-0.04472448,-0.15199424,0.44078583,-0.19637495],[0.007835068,0.57188964,0.18070067,-0.2610156,-0.17529912,0.14483498,-0.23499107,0.4929414,0.10448897,-0.45648035,0.029684572,0.1314099,-0.16433047,0.2065975,0.07887834,-0.0060373824,-0.20691155,0.13691476],[-0.005327477,1.7886202,2.9505506,0.09841906,-1.9402149,-1.3852259,-0.043792397,0.660079,0.60579574,0.24349208,0.29671067,0.08202194,-0.13981113,0.36684915,0.057882063,-0.41412312,0.31871474,-0.02327852],[1.0903977,-1.1873779,0.14879608,0.040507846,0.040393896,0.13455993,0.9753803,0.085223004,-0.06493875,-0.20206894,0.18746802,-0.24526027,-0.08939371,0.2430548,0.13119027,0.15268146,0.20207612,-0.083613925],[0.0021948,3.2657847,-0.18798442,-0.12689658,-0.30403885,0.3367026,0.91909635,1.7143666,0.045331903,-0.31545398,-0.051042344,-0.3529171,0.29837632,0.09466574,-0.8073861,-0.0039647045,-0.1720164,0.5201512],[1.0928359,1.2096838,-0.14703602,0.018953208,-0.03811592,-0.2855322,-0.8143947,0.05326237,-0.066094,0.064099275,-0.06976516,-0.06933611,0.34876755,-0.25860986,-0.14344722,-0.07053271,-0.20750608,0.025129952],[-0.0055736825,0.64105284,0.10726179,-0.17012087,-0.001185817,0.5677425,-0.93299127,0.09094073,0.0109323105,0.2228847,-0.16700141,0.30421817,0.13674305,-0.49573237,-0.13086164,0.31447932,0.15766789,-0.16813341]],"activation":"σ"},{"dense_2_W":[[0.27341422,-0.47601527,-0.6289435,1.3114856,-0.18440256,-0.69279665,-0.58332384],[-0.34085867,-0.29880068,-0.9368486,0.2080702,0.6225143,-0.6358373,-1.1943169],[0.6918406,0.15412113,0.04159215,-0.6581899,0.24066101,-0.043641392,0.045506563],[-0.026726253,-0.81909335,0.16420767,0.00291583,-0.3189569,-0.5359374,-0.7172654],[-0.8483084,-0.35060802,-0.41203314,-0.5305087,0.47287297,-0.28290507,-0.8737458],[0.35316753,0.90733016,-0.2770915,0.20165613,0.20155826,0.36213335,-0.24496384],[-0.5022167,-0.5612638,0.38854852,-0.018215526,-0.19334692,-0.4468064,-0.86793435],[0.47059315,0.23489894,0.41844767,-0.08509097,-0.31178007,0.11894885,0.5030957],[0.24172585,0.24865924,-0.15847187,-0.7011813,0.48085362,0.14869425,0.23137042],[-0.618487,0.12818213,-0.6849712,0.29365247,0.20846452,-0.063214555,0.125115],[0.5387756,0.06612413,-0.4151303,-0.63775194,0.5008791,-0.059868183,0.5720243],[-0.32397416,-0.08635292,-0.4818767,-0.67876416,-0.5552992,0.2187673,-0.4787086],[-0.89717907,-0.42284042,0.31489655,-0.8514086,-0.7674914,-0.41609457,-0.006730729]],"activation":"σ","dense_2_b":[[0.44311488],[0.11209076],[-0.0894076],[0.1847591],[-0.1593725],[-0.022556875],[0.21991341],[-0.05744998],[-0.057585794],[-0.2627398],[-0.054548565],[0.105285086],[-0.19715697]]},{"dense_3_W":[[-0.35089782,-0.39416888,-0.30615157,-0.46847108,-0.26617768,0.43837857,-0.485962,-0.2902945,-0.17870793,0.2757293,0.6125576,-0.24665116,-0.21227285],[-0.37411463,0.19765407,-0.014807391,0.06321688,0.37360784,0.22288837,-0.116587795,0.029183213,0.6631047,0.11275381,-0.27042058,-0.44573787,0.14713542],[-0.50715375,-0.38213205,0.5145017,-0.6412086,-0.39256987,0.058481824,-0.437418,0.30487192,0.5463277,-0.17863718,0.47274628,-0.5652254,-0.2641463]],"activation":"identity","dense_3_b":[[0.0534896],[0.01632865],[0.023216043]]},{"dense_4_W":[[0.3922371,0.50241,1.2339215]],"dense_4_b":[[0.022297831]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json new file mode 100644 index 0000000000..00a68d269b --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX.json @@ -0,0 +1 @@ +{"input_std":[[10.534294],[1.5504998],[1.4046903],[0.029573984],[1.5927145],[1.578906],[1.564156],[1.5118331],[1.493684],[1.4678634],[1.4253669],[0.02943281],[0.029483505],[0.029535847],[0.02967169],[0.029826282],[0.03000203],[0.030046586]],"model_test_loss":0.02003631368279457,"input_size":18,"current_date_and_time":"2023-08-31_20-50-28","input_mean":[[20.131113],[0.009686473],[0.06975938],[0.0023475066],[0.0038891183],[0.0060874033],[0.008401226],[0.013517541],[0.01840766],[0.0266773],[0.02453028],[0.0023093733],[0.002328295],[0.0023440488],[0.0024961669],[0.0025724813],[0.0024677413],[0.0023574075]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-4.0288644],[0.10457083],[-3.9555483],[0.1691402],[-0.012094571],[-0.0782635],[-0.2598278]],"dense_1_W":[[-2.1827135,1.6132607,-0.9255983,0.116717376,-1.8178183,-0.54029983,0.33489665,0.56080383,-0.22747517,-0.5733255,0.5044412,-0.2292483,0.043896638,0.08075467,-0.28934216,0.17338042,0.0033520209,0.10574474],[-0.03214852,1.3043286,1.787647,-0.19292493,-1.496456,-1.6432034,-1.0122085,0.6772478,0.9241051,2.137595,1.1481318,0.7382223,0.24003813,-0.26050806,-0.28489965,-0.055436503,-1.5187881,0.5395662],[-2.130688,-2.4082897,0.8946516,1.182773,1.0356439,1.0627962,0.681919,-1.07377,0.9514841,0.2902732,-0.51102746,-1.0186149,0.06007755,0.55835754,-0.8702267,-0.27547133,1.1577551,-0.79220283],[0.048019372,0.56005365,0.090563335,0.04659274,-0.3400944,0.08129445,0.079794005,1.6712024,0.37665895,0.92944545,-0.818461,1.0755452,0.03035464,-0.7417196,0.46747556,-1.7863483,0.1933551,0.6655417],[0.010540867,-2.1044421,0.123707764,0.19983652,-0.3400125,0.042333197,-0.14189881,-0.15991694,1.1688339,0.89001805,-1.0717757,-0.12767468,-0.23459645,0.55075175,0.08273279,-1.410371,-0.11742753,1.0628744],[-0.0035597957,3.3175247,-0.08206834,-0.41877395,-2.3628318,-0.3887815,0.33513132,1.0517763,1.3315583,-0.45716277,-0.83998686,0.038495045,-0.29630885,-0.5393306,0.004715303,-0.3557685,-0.0024815162,0.5117863],[-0.06787126,-1.0245934,0.846602,0.76652443,-3.6147707,-3.2961829,-3.046585,-2.334436,-2.2018268,-2.0479157,-2.1753612,-0.3235234,0.3021576,0.6696055,-0.5296955,-0.34782553,-0.6869261,0.61321783]],"activation":"σ"},{"dense_2_W":[[0.64928615,0.2816972,-0.8923362,0.39578387,-0.61536825,0.81299543,0.32944572],[-3.469548,-0.088318504,4.506985,1.7126206,-0.54613674,1.1776173,-1.3406864],[-0.16514356,-0.18710926,-0.049463313,-0.74177825,-0.89867437,-0.12767266,-0.41532612],[0.3880128,0.14577644,-0.22068585,0.47859693,-0.3810993,0.21953157,-0.28429258],[0.09226449,-0.31862667,-0.7718878,-0.3926271,0.39786428,0.24407528,0.50177044],[0.67237484,0.12668592,-0.30338138,-0.625696,0.26677904,-0.40067798,-0.32989067],[0.55108297,-0.46753818,-0.2422762,-0.32914385,1.0277789,-0.21390574,-0.51578075],[-0.6387295,0.087801814,0.4115124,0.19489816,-0.50232434,0.88593876,0.04993241],[-0.0012766474,-0.39255276,-0.43439093,0.5811583,0.04147405,0.39352056,-0.2983913],[0.5312808,-0.46965963,-0.2202195,0.022353612,0.9100419,-0.7610306,-0.045171853],[-0.4153422,0.25298238,-0.16235219,0.6847717,-0.24125478,0.12481583,0.17123348],[0.019955412,-0.049374487,-0.028301261,-0.1474805,-0.99081236,0.46832514,0.04314314],[-0.060847353,-0.4487362,0.11238633,-0.2315336,0.61632276,-0.037449174,-0.31603873]],"activation":"σ","dense_2_b":[[-0.0784909],[-0.78942764],[-0.15396598],[-0.0694357],[0.42111325],[0.13395377],[0.13471761],[-0.2390017],[-0.10127865],[0.021352982],[-0.10597191],[-0.0495153],[0.08049109]]},{"dense_3_W":[[-0.5803282,-0.4269681,-0.29210615,-0.35849357,0.6151693,0.4374335,0.33656615,-0.38959798,-0.124871194,0.80708337,-0.2547417,-0.4598867,0.28997138],[-0.024669895,1.1817242,-0.08351745,-0.24313891,-0.31439584,-0.25903952,-0.07882097,0.5553487,-0.3152985,-0.31680647,-0.116309114,0.010063961,0.2913986],[-0.43385702,-0.37067002,0.0936241,0.23112701,0.11643858,-0.15334345,-0.003450505,0.18969658,0.37703827,-0.25617403,0.11559996,-0.19988349,0.1828592]],"activation":"identity","dense_3_b":[[0.098078996],[0.0034752209],[0.008636777]]},{"dense_4_W":[[-0.73048496,0.39407238,-0.07285802]],"dense_4_b":[[-0.09288416]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json new file mode 100644 index 0000000000..00a68d269b --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_EQUINOX_CC.json @@ -0,0 +1 @@ +{"input_std":[[10.534294],[1.5504998],[1.4046903],[0.029573984],[1.5927145],[1.578906],[1.564156],[1.5118331],[1.493684],[1.4678634],[1.4253669],[0.02943281],[0.029483505],[0.029535847],[0.02967169],[0.029826282],[0.03000203],[0.030046586]],"model_test_loss":0.02003631368279457,"input_size":18,"current_date_and_time":"2023-08-31_20-50-28","input_mean":[[20.131113],[0.009686473],[0.06975938],[0.0023475066],[0.0038891183],[0.0060874033],[0.008401226],[0.013517541],[0.01840766],[0.0266773],[0.02453028],[0.0023093733],[0.002328295],[0.0023440488],[0.0024961669],[0.0025724813],[0.0024677413],[0.0023574075]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-4.0288644],[0.10457083],[-3.9555483],[0.1691402],[-0.012094571],[-0.0782635],[-0.2598278]],"dense_1_W":[[-2.1827135,1.6132607,-0.9255983,0.116717376,-1.8178183,-0.54029983,0.33489665,0.56080383,-0.22747517,-0.5733255,0.5044412,-0.2292483,0.043896638,0.08075467,-0.28934216,0.17338042,0.0033520209,0.10574474],[-0.03214852,1.3043286,1.787647,-0.19292493,-1.496456,-1.6432034,-1.0122085,0.6772478,0.9241051,2.137595,1.1481318,0.7382223,0.24003813,-0.26050806,-0.28489965,-0.055436503,-1.5187881,0.5395662],[-2.130688,-2.4082897,0.8946516,1.182773,1.0356439,1.0627962,0.681919,-1.07377,0.9514841,0.2902732,-0.51102746,-1.0186149,0.06007755,0.55835754,-0.8702267,-0.27547133,1.1577551,-0.79220283],[0.048019372,0.56005365,0.090563335,0.04659274,-0.3400944,0.08129445,0.079794005,1.6712024,0.37665895,0.92944545,-0.818461,1.0755452,0.03035464,-0.7417196,0.46747556,-1.7863483,0.1933551,0.6655417],[0.010540867,-2.1044421,0.123707764,0.19983652,-0.3400125,0.042333197,-0.14189881,-0.15991694,1.1688339,0.89001805,-1.0717757,-0.12767468,-0.23459645,0.55075175,0.08273279,-1.410371,-0.11742753,1.0628744],[-0.0035597957,3.3175247,-0.08206834,-0.41877395,-2.3628318,-0.3887815,0.33513132,1.0517763,1.3315583,-0.45716277,-0.83998686,0.038495045,-0.29630885,-0.5393306,0.004715303,-0.3557685,-0.0024815162,0.5117863],[-0.06787126,-1.0245934,0.846602,0.76652443,-3.6147707,-3.2961829,-3.046585,-2.334436,-2.2018268,-2.0479157,-2.1753612,-0.3235234,0.3021576,0.6696055,-0.5296955,-0.34782553,-0.6869261,0.61321783]],"activation":"σ"},{"dense_2_W":[[0.64928615,0.2816972,-0.8923362,0.39578387,-0.61536825,0.81299543,0.32944572],[-3.469548,-0.088318504,4.506985,1.7126206,-0.54613674,1.1776173,-1.3406864],[-0.16514356,-0.18710926,-0.049463313,-0.74177825,-0.89867437,-0.12767266,-0.41532612],[0.3880128,0.14577644,-0.22068585,0.47859693,-0.3810993,0.21953157,-0.28429258],[0.09226449,-0.31862667,-0.7718878,-0.3926271,0.39786428,0.24407528,0.50177044],[0.67237484,0.12668592,-0.30338138,-0.625696,0.26677904,-0.40067798,-0.32989067],[0.55108297,-0.46753818,-0.2422762,-0.32914385,1.0277789,-0.21390574,-0.51578075],[-0.6387295,0.087801814,0.4115124,0.19489816,-0.50232434,0.88593876,0.04993241],[-0.0012766474,-0.39255276,-0.43439093,0.5811583,0.04147405,0.39352056,-0.2983913],[0.5312808,-0.46965963,-0.2202195,0.022353612,0.9100419,-0.7610306,-0.045171853],[-0.4153422,0.25298238,-0.16235219,0.6847717,-0.24125478,0.12481583,0.17123348],[0.019955412,-0.049374487,-0.028301261,-0.1474805,-0.99081236,0.46832514,0.04314314],[-0.060847353,-0.4487362,0.11238633,-0.2315336,0.61632276,-0.037449174,-0.31603873]],"activation":"σ","dense_2_b":[[-0.0784909],[-0.78942764],[-0.15396598],[-0.0694357],[0.42111325],[0.13395377],[0.13471761],[-0.2390017],[-0.10127865],[0.021352982],[-0.10597191],[-0.0495153],[0.08049109]]},{"dense_3_W":[[-0.5803282,-0.4269681,-0.29210615,-0.35849357,0.6151693,0.4374335,0.33656615,-0.38959798,-0.124871194,0.80708337,-0.2547417,-0.4598867,0.28997138],[-0.024669895,1.1817242,-0.08351745,-0.24313891,-0.31439584,-0.25903952,-0.07882097,0.5553487,-0.3152985,-0.31680647,-0.116309114,0.010063961,0.2913986],[-0.43385702,-0.37067002,0.0936241,0.23112701,0.11643858,-0.15334345,-0.003450505,0.18969658,0.37703827,-0.25617403,0.11559996,-0.19988349,0.1828592]],"activation":"identity","dense_3_b":[[0.098078996],[0.0034752209],[0.008636777]]},{"dense_4_W":[[-0.73048496,0.39407238,-0.07285802]],"dense_4_b":[[-0.09288416]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json new file mode 100644 index 0000000000..fe64977fe9 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SILVERADO.json @@ -0,0 +1 @@ +{"input_std":[[9.111214],[1.4682485],[0.57526964],[0.04511676],[1.4448825],[1.4523145],[1.460504],[1.4530647],[1.436759],[1.409998],[1.3768793],[0.04496706],[0.044998076],[0.04501952],[0.044998042],[0.04498694],[0.044818893],[0.04446676]],"model_test_loss":0.022049037739634514,"input_size":18,"current_date_and_time":"2023-08-05_05-39-06","input_mean":[[24.08155],[0.011368711],[0.0031438756],[-0.0055672466],[0.01115314],[0.0110932905],[0.010956869],[0.013351914],[0.012678603],[0.010665299],[0.007861591],[-0.0056356518],[-0.0056050173],[-0.005582452],[-0.0056302436],[-0.0057524433],[-0.0058822],[-0.006047828]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.4668645],[0.0061378293],[0.14334162],[-1.507637],[-3.6057515],[-0.045111466],[0.18928593]],"dense_1_W":[[0.6566544,0.7743814,0.18751603,0.04858998,0.7569071,0.25307912,-2.068015,0.9910395,0.86449015,0.5162737,0.17964111,0.73959017,-0.13406877,-1.2188785,0.051854312,0.557273,0.42717713,-0.4706351],[0.025763594,2.3271172,7.5912685,-0.59063435,-1.0175278,0.07860616,-0.39720893,-1.3828933,0.27263463,0.5794174,-0.941214,0.5112712,0.31876096,-0.38133666,-0.17985544,0.50390506,-0.42106378,0.24962576],[0.05800794,4.917338,-0.050065108,0.5062318,2.31812,2.2346003,0.97258455,2.237544,3.1694891,3.0328865,2.4481356,0.87150276,0.23922867,-0.27206227,-0.76175624,-0.59474605,0.022229204,0.18751834],[0.91351914,0.42640725,0.21792875,-0.6499657,0.42711547,0.46455538,-0.7128904,0.6972329,0.07784378,0.15792462,0.86492527,0.16739717,0.3357893,-0.1592361,0.10722909,0.21031618,-0.019191844,-0.031056747],[-1.390049,0.89916164,0.30032212,0.0886132,0.81011575,-0.3205005,-2.085708,1.6698592,1.496016,0.86138624,0.12484511,0.47975743,-0.41812262,-0.7270122,-0.06460007,0.9231981,0.42574838,-0.64465237],[-0.001402944,-1.1569467,0.0005942974,0.063189715,-0.09013453,-1.2986813,1.6477252,-0.4343868,-0.08533708,-0.27364805,0.21535206,-0.34249792,-0.48679602,0.6684111,0.16701448,0.39430234,0.2199159,-0.27228448],[-1.1195272,0.015763488,-0.200724,0.05122529,0.40223718,0.5024332,-1.402779,-0.47795737,-0.24807225,-0.70503217,-0.21363245,0.76604843,-0.14105192,-0.4387646,-0.28273064,-0.21595778,0.03305617,0.22701742]],"activation":"σ"},{"dense_2_W":[[1.7721981,2.2011127,0.29388586,0.38426542,0.83704543,-2.9152303,0.5229557],[-0.36864644,0.42984635,-0.41658726,-0.041540317,0.18798253,0.38724944,-0.65996665],[-0.52116436,0.2358491,-0.2220775,-0.032654468,-0.48732167,0.3548198,-0.45838025],[-0.2911298,-0.46853513,0.03141412,-0.795555,-0.18514551,-0.08353839,-0.33849046],[-0.67049307,0.10367472,0.4490753,-0.55316794,-0.48152244,0.31841356,-0.14415056],[0.28696507,-1.2001104,-0.55151457,0.95023096,-1.3845363,-0.3174642,-0.3309214],[-0.6142683,0.0910831,-0.18282256,-0.44715023,0.37679994,0.44533804,0.027039269],[0.14790064,-0.27130985,-0.18719442,-0.13985236,-0.22100836,-0.6535676,-0.19135725],[-0.4416883,-0.37975168,-0.43114612,-0.07862877,0.20007153,0.95488816,-0.52858645],[-0.17171355,0.2863653,0.4144529,0.679835,0.34844747,-1.2170105,0.29281953],[0.06252894,0.095131,-0.13292563,-0.6726018,-0.39990836,-0.68776375,-0.36863],[0.7808943,-0.8408942,0.13730413,0.102169715,0.1682241,-0.5337488,1.5183735],[0.11278698,0.10173518,0.10506139,0.4002509,0.16067709,-1.1565727,0.75811535]],"activation":"σ","dense_2_b":[[-1.5210099],[-0.0006081214],[0.021954967],[0.032652497],[0.19418235],[-0.42663833],[0.11631468],[-0.27090475],[0.18836942],[-0.4026297],[-0.3532125],[-0.095932305],[-0.094078794]]},{"dense_3_W":[[-0.08552111,0.15208419,0.3206692,-0.46672416,-0.0039158463,-0.05807648,-0.5021984,0.15186986,-0.59495836,0.2405156,-0.5498271,0.070102595,0.26428217],[-0.63763195,0.14358082,0.45475405,0.4365134,0.5539486,-0.44107583,0.46288002,-0.1564132,0.39014947,-0.55990654,-0.05062592,-0.5582297,-0.45318148],[0.57558644,-0.5381224,-0.6278913,0.21171339,-0.06526249,-0.1312582,0.3146726,-0.45940813,-0.15466015,0.11860342,0.36926913,-0.16175088,0.17500523]],"activation":"identity","dense_3_b":[[-0.03552377],[0.059005316],[-0.037881076]]},{"dense_4_W":[[0.43992618,-0.9712287,0.43158254]],"dense_4_b":[[-0.04844147]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json new file mode 100644 index 0000000000..1383fdf7f9 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN.json @@ -0,0 +1 @@ +{"input_std":[[7.0000353],[0.91031396],[1.269469],[0.0315604],[0.9563133],[0.95031977],[0.9356424],[0.873496],[0.8912867],[0.8935701],[0.96191794],[0.031832103],[0.031727515],[0.031619374],[0.03170114],[0.03179356],[0.031944003],[0.03203715]],"model_test_loss":0.025683574378490448,"input_size":18,"current_date_and_time":"2023-08-31_22-32-43","input_mean":[[27.019146],[0.2162388],[-0.102987334],[-0.016973253],[0.2426502],[0.23661843],[0.22663806],[0.18541981],[0.17368032],[0.14804864],[0.09238692],[-0.017235657],[-0.017166195],[-0.017074104],[-0.016875083],[-0.016880676],[-0.017125089],[-0.017351476]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.23588695],[-0.5088953],[1.5173167],[0.21325926],[0.7270255],[1.0430372],[-2.1749456]],"dense_1_W":[[-0.00035987928,1.4975938,2.03412,-0.83676016,-5.5800395,-1.7383903,-0.18633558,6.249567,0.15692733,1.1870492,-1.8389847,0.8397649,0.41889027,0.19991927,-0.71028113,-0.42742363,-0.01929488,0.56470984],[0.1451778,-0.42022082,-0.08357744,0.37352008,0.13762045,-0.513736,0.19210075,-0.99654514,0.07671047,0.3092085,-0.09438795,-0.7692168,-0.05790273,-0.019019479,0.68036485,-0.3681197,0.042775016,0.113177255],[0.17934947,0.6802453,0.53991216,1.2953564,0.36064458,-2.232729,-1.3662916,9.39327,3.2034888,0.82174385,-3.8604288,-0.059266165,0.23885792,1.2206435,-0.037034295,-1.0659415,-1.2380418,-0.38709572],[-0.63551307,0.14085051,-0.058989003,-0.096907504,-0.08637354,-0.9568107,-0.203569,0.09172185,-1.7067626,0.23453063,0.40079904,-0.33019188,-0.14800894,0.4674501,-0.058009204,-0.3754687,-0.10436635,0.64636946],[0.33742648,-0.36501276,-0.034292817,-0.51860994,-1.3856511,-1.5455489,-1.0439808,-0.75624853,-1.0810176,-0.5734188,0.55518353,-0.80131483,-0.6185672,-0.28676248,-0.104135,-0.62493587,-0.8962451,-1.5516719],[0.43760708,-1.6991494,-0.03338309,-0.96213526,0.00956474,-1.2663416,-1.9227605,-3.5994406,0.26717234,1.618855,-0.69799376,-0.3365453,0.08994935,0.16855639,-2.0510433,-1.3217996,-1.0182589,-0.993361],[0.38308197,-1.8382412,-0.15014274,0.11305897,1.90282,-0.91276294,-1.8583714,-2.2861354,-1.0779126,-2.9923978,-2.1958616,-0.40794706,-0.3506177,0.21085607,0.39614698,0.46702477,-0.1904523,-0.28659886]],"activation":"σ"},{"dense_2_W":[[-0.13722074,0.17729984,-0.24335465,0.24187207,-0.14201832,-0.07732416,0.13892417],[-0.4686111,0.30702016,-0.15520222,0.2413592,-0.06519562,-0.02441734,0.05019473],[0.79214656,-0.7921441,-0.6606072,0.055532016,-0.11311045,-0.08024592,-0.0085274875],[-0.25042439,0.21615438,0.4954985,0.0046605244,-0.4504836,-0.13616334,-0.39802498],[0.49501747,-0.8520829,-0.74666256,0.59406155,-0.3424727,-0.42375195,-0.056689456],[0.09918636,-0.27861944,-0.06896329,0.07916021,0.39362162,-0.3197992,-0.38495535],[-0.44832206,0.775501,-1.5508496,-1.2964923,0.2656348,0.73607206,0.102380335],[-0.12338452,0.45182562,0.15285002,0.36166486,0.106165096,-0.44855922,0.26180896],[1.468655,-2.9420528,1.1340134,-1.8203074,-1.8435699,1.8503501,-0.6241417],[0.11571435,0.44641992,0.5466342,0.460799,0.34136263,0.118771955,0.03079372],[-0.89526504,0.4808293,-0.020656256,0.23367782,0.24296117,0.14677529,-0.17654741],[0.48179916,-0.9906037,-0.5923862,-0.4594782,-0.35988396,0.8058588,-0.045400906],[0.5093772,0.44455037,0.17609815,-0.81010824,-0.7701845,-0.67883664,-0.105422966]],"activation":"σ","dense_2_b":[[-0.016313186],[-0.23423415],[-0.11555125],[0.031153541],[-0.008395348],[-0.05427732],[0.04926095],[-0.03232725],[1.3587319],[0.039414253],[-0.2525624],[0.069728516],[-0.1901692]]},{"dense_3_W":[[-0.40749985,-0.48021835,0.56590366,0.18960631,0.38889936,-0.016490487,0.2452584,-0.49623072,0.38123888,-0.64162004,-0.4950841,-0.28877184,0.033746734],[-0.42167312,0.4292303,-0.117614456,-0.051768117,0.051334534,0.5342065,0.5592815,-0.093919486,0.65363497,-0.43596736,0.16242468,0.2578982,-0.2107315],[0.3909801,0.0338481,0.17298904,-0.6669294,0.66819596,0.5040033,-0.11421765,0.24396016,0.58365494,-0.4551556,0.13173825,0.29966846,-0.28813577]],"activation":"identity","dense_3_b":[[-0.039529935],[-0.049995966],[-0.054298006]]},{"dense_4_W":[[0.5930795,0.46760607,0.73884505]],"dense_4_b":[[-0.046037514]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json new file mode 100644 index 0000000000..1383fdf7f9 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_SUBURBAN_CC.json @@ -0,0 +1 @@ +{"input_std":[[7.0000353],[0.91031396],[1.269469],[0.0315604],[0.9563133],[0.95031977],[0.9356424],[0.873496],[0.8912867],[0.8935701],[0.96191794],[0.031832103],[0.031727515],[0.031619374],[0.03170114],[0.03179356],[0.031944003],[0.03203715]],"model_test_loss":0.025683574378490448,"input_size":18,"current_date_and_time":"2023-08-31_22-32-43","input_mean":[[27.019146],[0.2162388],[-0.102987334],[-0.016973253],[0.2426502],[0.23661843],[0.22663806],[0.18541981],[0.17368032],[0.14804864],[0.09238692],[-0.017235657],[-0.017166195],[-0.017074104],[-0.016875083],[-0.016880676],[-0.017125089],[-0.017351476]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.23588695],[-0.5088953],[1.5173167],[0.21325926],[0.7270255],[1.0430372],[-2.1749456]],"dense_1_W":[[-0.00035987928,1.4975938,2.03412,-0.83676016,-5.5800395,-1.7383903,-0.18633558,6.249567,0.15692733,1.1870492,-1.8389847,0.8397649,0.41889027,0.19991927,-0.71028113,-0.42742363,-0.01929488,0.56470984],[0.1451778,-0.42022082,-0.08357744,0.37352008,0.13762045,-0.513736,0.19210075,-0.99654514,0.07671047,0.3092085,-0.09438795,-0.7692168,-0.05790273,-0.019019479,0.68036485,-0.3681197,0.042775016,0.113177255],[0.17934947,0.6802453,0.53991216,1.2953564,0.36064458,-2.232729,-1.3662916,9.39327,3.2034888,0.82174385,-3.8604288,-0.059266165,0.23885792,1.2206435,-0.037034295,-1.0659415,-1.2380418,-0.38709572],[-0.63551307,0.14085051,-0.058989003,-0.096907504,-0.08637354,-0.9568107,-0.203569,0.09172185,-1.7067626,0.23453063,0.40079904,-0.33019188,-0.14800894,0.4674501,-0.058009204,-0.3754687,-0.10436635,0.64636946],[0.33742648,-0.36501276,-0.034292817,-0.51860994,-1.3856511,-1.5455489,-1.0439808,-0.75624853,-1.0810176,-0.5734188,0.55518353,-0.80131483,-0.6185672,-0.28676248,-0.104135,-0.62493587,-0.8962451,-1.5516719],[0.43760708,-1.6991494,-0.03338309,-0.96213526,0.00956474,-1.2663416,-1.9227605,-3.5994406,0.26717234,1.618855,-0.69799376,-0.3365453,0.08994935,0.16855639,-2.0510433,-1.3217996,-1.0182589,-0.993361],[0.38308197,-1.8382412,-0.15014274,0.11305897,1.90282,-0.91276294,-1.8583714,-2.2861354,-1.0779126,-2.9923978,-2.1958616,-0.40794706,-0.3506177,0.21085607,0.39614698,0.46702477,-0.1904523,-0.28659886]],"activation":"σ"},{"dense_2_W":[[-0.13722074,0.17729984,-0.24335465,0.24187207,-0.14201832,-0.07732416,0.13892417],[-0.4686111,0.30702016,-0.15520222,0.2413592,-0.06519562,-0.02441734,0.05019473],[0.79214656,-0.7921441,-0.6606072,0.055532016,-0.11311045,-0.08024592,-0.0085274875],[-0.25042439,0.21615438,0.4954985,0.0046605244,-0.4504836,-0.13616334,-0.39802498],[0.49501747,-0.8520829,-0.74666256,0.59406155,-0.3424727,-0.42375195,-0.056689456],[0.09918636,-0.27861944,-0.06896329,0.07916021,0.39362162,-0.3197992,-0.38495535],[-0.44832206,0.775501,-1.5508496,-1.2964923,0.2656348,0.73607206,0.102380335],[-0.12338452,0.45182562,0.15285002,0.36166486,0.106165096,-0.44855922,0.26180896],[1.468655,-2.9420528,1.1340134,-1.8203074,-1.8435699,1.8503501,-0.6241417],[0.11571435,0.44641992,0.5466342,0.460799,0.34136263,0.118771955,0.03079372],[-0.89526504,0.4808293,-0.020656256,0.23367782,0.24296117,0.14677529,-0.17654741],[0.48179916,-0.9906037,-0.5923862,-0.4594782,-0.35988396,0.8058588,-0.045400906],[0.5093772,0.44455037,0.17609815,-0.81010824,-0.7701845,-0.67883664,-0.105422966]],"activation":"σ","dense_2_b":[[-0.016313186],[-0.23423415],[-0.11555125],[0.031153541],[-0.008395348],[-0.05427732],[0.04926095],[-0.03232725],[1.3587319],[0.039414253],[-0.2525624],[0.069728516],[-0.1901692]]},{"dense_3_W":[[-0.40749985,-0.48021835,0.56590366,0.18960631,0.38889936,-0.016490487,0.2452584,-0.49623072,0.38123888,-0.64162004,-0.4950841,-0.28877184,0.033746734],[-0.42167312,0.4292303,-0.117614456,-0.051768117,0.051334534,0.5342065,0.5592815,-0.093919486,0.65363497,-0.43596736,0.16242468,0.2578982,-0.2107315],[0.3909801,0.0338481,0.17298904,-0.6669294,0.66819596,0.5040033,-0.11421765,0.24396016,0.58365494,-0.4551556,0.13173825,0.29966846,-0.28813577]],"activation":"identity","dense_3_b":[[-0.039529935],[-0.049995966],[-0.054298006]]},{"dense_4_W":[[0.5930795,0.46760607,0.73884505]],"dense_4_b":[[-0.046037514]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json new file mode 100644 index 0000000000..d81339bae9 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_TRAILBLAZER.json @@ -0,0 +1 @@ +{"input_std":[[10.263361],[1.5407822],[1.6990757],[0.031916086],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[1.4340314],[0.031784274],[0.031784274],[0.031784274],[0.031784274],[0.031784274],[0.031784274],[0.031784274]],"model_test_loss":0.050728149712085724,"input_size":18,"current_date_and_time":"2023-09-28_17-19-10","input_mean":[[21.170568],[0.0028904085],[-0.01997667],[-0.011566885],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[0.0088682],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887],[-0.011584887]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.8283137],[-0.6380811],[-0.14581172],[0.21757337],[-0.17584349],[-0.15822433],[-0.04526756]],"dense_1_W":[[-0.12061483,-2.6186888,-5.533526,1.2848519,0.10997799,0.09768942,0.29055217,-0.4338942,0.45353734,0.40870407,0.74510694,0.035301626,0.1254258,0.06881082,-0.43392724,-0.6579088,0.12848276,0.10206295],[0.47858974,1.0521514,0.13895132,-0.11845431,-0.6055809,-0.30129787,0.10536316,0.36635193,0.062468443,0.16439146,0.7524098,-0.08773286,0.08453637,0.14768569,0.054678865,0.04296218,-0.1013483,-0.017113626],[1.5098917,0.5894743,0.59322363,-0.40857914,-0.04409986,-0.059111845,-0.22999583,0.13513245,0.20424314,0.8996403,0.6257698,-0.012137316,-0.26447135,0.33300093,0.5780546,0.11556365,-0.21325883,-0.11405065],[-0.09270235,4.2095594,-0.03419901,-0.85176253,-0.792438,-1.1375993,-0.95709634,-0.5417718,0.13269264,0.34799594,0.8776221,0.23166949,0.25684002,0.14214455,0.31949127,-0.1842014,-0.048224565,0.06972774],[-0.07368613,7.987101,-1.5705101,-2.7268257,-1.6060512,-2.2150717,-1.7734491,-1.0044583,-0.9965295,-0.53904784,-0.71252525,0.82295734,0.079120055,0.8620408,0.040507376,0.5511871,0.57866305,-0.3000211],[-0.19393307,1.3685007,-0.81581175,-0.65915656,-0.26665,-0.18225093,-0.2348052,-0.613443,-0.4242962,-0.1411918,-0.40366364,0.14329708,-0.15040468,0.111927874,0.35063627,0.2598781,0.044979107,-0.13300987],[-0.15487364,1.5682242,-0.39758956,-1.613167,-1.2005973,-1.3606614,-1.4602566,-0.8778308,-0.8630755,-1.1338134,-1.5346371,0.44767708,-0.07334435,0.46988532,0.38771385,0.18633042,-0.31606805,0.49087706]],"activation":"σ"},{"dense_2_W":[[0.08773213,1.118686,-0.19026187,-0.18222769,0.05527968,-0.51330656,-0.036496755],[-0.5858637,-0.4254996,0.021144927,-0.08652764,-0.21240492,0.2946317,0.2629631],[0.20821263,-0.6136043,-0.2656985,-0.11885001,-0.23193532,0.573116,0.19101338],[1.3147112,0.8279403,-1.8892661,0.22684072,0.5924725,0.18479976,1.5572529],[0.09764118,0.8507632,0.54017293,-0.14499734,-0.08574703,-0.8551757,0.525648],[-0.63802594,-0.65069646,0.26210403,-0.24471927,0.48373717,-0.2968227,0.06695796],[-2.1634326,-0.6064817,-1.8872,1.6661983,0.24116987,-1.8317598,-1.4297333],[0.030689137,0.045585413,-0.619795,-0.3127205,0.00026456476,-1.2520658,-0.021226548],[-0.43981192,-0.6087822,0.26009014,-0.41205314,0.10397853,0.30045325,0.15389265],[-1.4882747,1.6382228,0.1060073,1.4234135,2.3527496,-1.4529006,-0.6220931],[0.32924128,-0.7916863,-0.16856577,-0.49799073,-0.3400066,0.34466445,0.47758287],[-0.3820367,-0.07035885,-0.770717,-0.08017813,-0.4997505,-0.5413408,-0.22099844],[-0.5534209,0.15586813,0.46922186,-0.285645,-0.43601796,-0.5457336,-0.09376932]],"activation":"σ","dense_2_b":[[-0.07499287],[0.056654293],[-0.033568453],[0.012748798],[-0.16169988],[-0.031001234],[0.4491975],[-0.18781444],[-0.022485357],[-0.4145325],[0.05514316],[-0.17725536],[-0.027867718]]},{"dense_3_W":[[0.48439038,0.11946673,-0.10710485,0.2569157,0.55854136,0.69526154,-0.045092683,-0.22340369,-0.057273377,-0.43256047,0.51690865,-0.45954293,0.5041862],[-0.39225766,0.5658039,0.13191655,-0.26512942,-0.45468462,0.029447814,-0.7955542,-0.47096017,0.19746478,-0.40087095,0.6816974,-0.313998,-0.2719639],[-0.20068921,-0.29952648,0.34961987,-0.66211593,-0.47286674,-0.1865282,0.25309294,0.27628332,0.5233655,0.30510098,0.5197866,-0.51454246,0.46288064]],"activation":"identity","dense_3_b":[[0.055204097],[0.070561714],[0.057622224]]},{"dense_4_W":[[-0.5929016,-1.4001877,-0.6662524]],"dense_4_b":[[-0.06424638]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json new file mode 100644 index 0000000000..881f47c901 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHEVROLET_VOLT.json @@ -0,0 +1 @@ +{"input_std":[[9.342214],[1.5915664],[0.60113484],[0.048193663],[1.5680411],[1.57577],[1.5836853],[1.5711677],[1.5445132],[1.5007596],[1.4529978],[0.047915205],[0.04800539],[0.04808892],[0.04822398],[0.04817677],[0.047881734],[0.047405947]],"model_test_loss":0.019342588260769844,"input_size":18,"current_date_and_time":"2023-08-05_06-09-11","input_mean":[[22.757933],[-0.016342578],[-0.001405228],[-0.014619173],[-0.018091483],[-0.018382493],[-0.019270267],[-0.018759886],[-0.019559544],[-0.017848592],[-0.020014366],[-0.014564899],[-0.01457757],[-0.014600966],[-0.014757987],[-0.014915743],[-0.015121007],[-0.015359475]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.045577038],[-2.8160777],[-0.21418032],[2.9552083],[-0.06852827],[0.029141279],[-0.053249933]],"dense_1_W":[[0.0010664682,1.3813498,-8.153277,-0.009101015,-0.1484779,1.0008405,-1.5930991,-1.195274,0.6136762,0.3560462,-0.30077773,0.93531257,0.14550218,-0.40074933,-0.21716364,0.13834935,-0.0658936,-0.49427196],[-0.7338253,-0.037501235,-0.49922377,-1.0526338,-0.46141604,-1.3649396,0.7309814,-0.91667104,0.044683233,-0.18628967,-0.20878822,-0.2678598,0.48446324,0.51164204,0.09547851,0.41491362,-0.4524314,0.16594785],[-0.0032175342,3.5451593,-0.11421584,-0.2511033,0.27893174,0.6384996,0.80790603,1.3835542,1.8000495,2.249461,1.4026878,0.7851167,-0.35052946,0.041820426,-0.39790183,0.45703772,-0.30459648,0.18287674],[0.72289664,-0.77138704,-0.5025135,-0.49323097,-0.39893976,-0.8779149,0.6848096,-0.58729875,-0.16643623,-0.14427555,-0.15013328,-0.11467142,-0.27280045,0.48508415,0.52080667,-0.0029569597,-0.28170735,0.06367212],[0.00014026981,-2.0353239,0.0060915067,0.4794941,1.1882906,-1.512865,0.80642134,-0.26044324,-0.56213886,-0.365122,0.55078083,-0.34897435,-0.32031298,0.46106994,0.37792024,-0.14116105,0.15597256,-0.32811671],[0.0011494387,1.9060265,8.3941965,-0.3078165,-0.9530427,0.6589645,-1.2487054,-0.541133,0.13451256,0.2805466,-0.33187166,0.9900705,0.2821258,-0.51270896,-0.5130031,-0.28222615,0.042734932,0.27233443],[-0.0014444552,-1.0933362,0.003359957,-0.15052961,0.37165833,1.7087307,-1.4971043,0.673802,-0.108465396,-0.088505454,0.21561684,0.6252258,-0.15019403,-0.34727478,0.08958758,-0.1723621,-0.25557828,0.29778987]],"activation":"σ"},{"dense_2_W":[[0.20810607,-0.13481373,-0.15003344,-0.6067625,-0.31937903,-0.37380016,0.4666911],[0.71834767,0.15669753,-0.11389502,0.27131546,-0.060118295,0.039282244,0.52961355],[-0.27200606,0.43380752,-0.106262706,-0.49363258,0.35659012,-0.01706296,-1.0807354],[-0.79583454,-0.66428274,-0.42157334,-0.52979547,-0.2803004,-0.57637554,0.084149174],[0.1230394,-0.57023287,0.28639448,-0.506744,-0.9920808,0.7510901,0.8584937],[-0.41256845,0.35423175,0.13009231,0.5198333,0.7576573,-0.7053181,-0.3390053],[-0.15090485,0.33375353,-0.64164793,0.57386595,0.25700107,-0.15245672,-0.49020413],[-0.50120676,0.5210849,-0.3282951,0.4276323,1.0257447,-1.0398436,-0.8911315],[0.11402861,-0.41491523,0.247507,-0.39776865,-0.6089287,0.20646147,0.6692102],[0.09411492,0.31819808,0.41330767,0.024243973,0.2314893,0.08529045,0.14911193],[0.5179265,0.20473345,-0.36762783,-0.009045922,-0.19436747,-0.548099,-0.08656279],[-0.69121784,-0.14201449,0.3887621,0.10787631,1.0371574,-0.64747447,-0.73437464],[-0.07860244,-0.597764,0.019551078,0.010199122,-0.7493642,0.66619915,0.121666186]],"activation":"σ","dense_2_b":[[-0.04259814],[-0.053309314],[-0.28045595],[-0.23801634],[0.00944943],[-0.109921046],[-0.037457183],[0.24627604],[-0.0069056284],[-0.04725389],[-0.03361769],[0.044101644],[-0.0009850285]]},{"dense_3_W":[[-0.19631335,-0.47722518,-0.019853225,-0.29363275,-0.625923,0.35145283,0.62401354,0.14337404,-0.25707108,-0.51310915,0.2565006,0.61742216,-0.07952821],[0.5868974,-0.36786363,-0.0177682,-0.45121866,0.68608487,-0.55178356,-0.35236016,-0.7226455,-0.015394288,-0.10650332,0.5391039,0.17791761,0.34196886],[0.16821232,-0.35580373,0.26906335,0.41736925,-0.6979869,0.41801625,0.34707317,0.7784011,-0.10002936,0.32485273,-0.3644285,0.49092358,-0.43872768]],"activation":"identity","dense_3_b":[[-0.019481273],[0.031026587],[-0.03595322]]},{"dense_4_W":[[-0.72340566,0.21244061,-0.67248434]],"dense_4_b":[[0.026229527]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json new file mode 100644 index 0000000000..3f3339df3a --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2017_HYBRID.json @@ -0,0 +1 @@ +{"input_std":[[8.330973],[0.76358914],[0.44177866],[0.03320337],[0.7486537],[0.75224125],[0.7557512],[0.75438327],[0.7465672],[0.74091655],[0.72914463],[0.0329607],[0.03301792],[0.033070814],[0.03301661],[0.03287754],[0.032609064],[0.032365352]],"model_test_loss":0.017960982397198677,"input_size":18,"current_date_and_time":"2023-08-05_11-13-44","input_mean":[[26.671413],[0.058293253],[0.0043816683],[-0.009296047],[0.051497567],[0.053402483],[0.055134997],[0.052773204],[0.048979968],[0.049683023],[0.049251523],[-0.009440276],[-0.009414148],[-0.0093886675],[-0.009580273],[-0.009747584],[-0.0099527575],[-0.010216651]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.0565631],[-0.21411526],[0.8872178],[-0.73335165],[0.15017867],[-0.11148372],[-0.47569525]],"dense_1_W":[[0.3191545,0.60174775,0.28932345,-0.22362822,-0.29199237,0.8730365,-0.521551,0.33030298,0.11159445,0.13276689,-0.38501248,0.6321162,0.3564933,0.05880718,-0.9028309,-0.1717296,-0.26462427,0.5646279],[-0.023215095,-0.07631244,-6.183804,0.4336958,-0.626333,-0.124013826,0.87823963,0.39341283,-1.2711039,-0.14306393,0.85833305,-0.31328923,-0.0057761483,-0.45113772,-0.13151798,0.48965174,-0.36885157,0.3205572],[-2.0049603,0.2562212,0.0074997903,0.15363267,-0.39047363,0.31743163,0.21375915,-0.08397038,-0.018758992,-0.03530787,0.008622982,-0.12050882,0.1763159,-0.0045240982,0.037064075,-0.22826771,-0.13217667,0.04430793],[1.9245242,0.17275631,0.007043335,0.38269743,-0.0008547418,0.339189,-0.33623248,0.24801533,-0.05911935,-0.28433016,0.1669682,0.35657904,-0.114900894,-0.49049523,-0.009977193,-0.22768717,0.10655727,-0.07729294],[0.087077305,-0.6003964,-0.1793809,0.25290787,0.029625213,-0.19629402,0.31878904,-0.08061085,-0.21837004,0.20829839,0.08959171,-0.30037507,0.05254617,-0.03698672,0.101752795,0.042104118,-0.12350318,0.0102602765],[0.0048545175,-0.21292417,0.016375653,-0.053975366,0.13703452,-1.074619,0.58369935,-0.17510407,-0.09377952,-0.14615338,0.07890737,-0.15442717,0.22381516,0.0459976,0.11773441,-0.018902443,0.06373771,-0.104368865],[-0.09855327,-0.1122513,-0.37817958,-0.008812584,-0.5383468,0.15305355,-0.7411861,-0.4013825,0.30445403,0.2985024,-0.095201105,0.47804987,-0.17235969,-0.47166833,0.08742673,-0.13090365,0.016420232,0.102743514]],"activation":"σ"},{"dense_2_W":[[0.15356968,0.03880223,-0.0033031541,0.71969205,-0.5551066,-1.2770053,0.852479],[-0.5814842,-0.4205401,-0.44136125,-0.20208618,0.62991315,1.2533134,-0.07128404],[-0.85485667,-0.27133262,-0.18317062,-0.5872431,0.0009068991,-0.8143884,0.24185239],[0.485521,-0.12876768,0.13680507,0.5191915,-0.33198348,-1.0602576,0.5135775],[0.9131491,-0.41206366,-0.11229955,0.8287815,0.013217909,-0.9175312,0.48983303],[-0.20012985,-0.18931809,-0.43908978,-0.2832052,0.8635579,0.22567339,0.18861422],[0.018180205,-0.3399698,-0.79971874,0.03282556,-0.17152967,0.065363236,-0.11356214],[-0.90014875,0.04525059,-0.62574875,0.21017492,-0.2622857,-0.64767957,-0.17940037],[0.053192608,-0.6683769,0.5183324,0.3161827,-0.43558958,-0.7137959,0.50653154],[-0.084774315,0.02843045,0.11588221,0.48853788,-0.6368693,-0.9299525,0.7869719],[0.12993711,0.85281557,-0.52333623,0.47304502,0.3320428,0.84226716,-0.51683784],[-0.24643111,0.40814662,-0.45649922,0.021663502,0.7520966,0.5363597,-0.51477396],[-0.30198774,-1.0936731,0.5198244,-0.6298923,-0.47961158,-0.46270132,0.17015655]],"activation":"σ","dense_2_b":[[-0.030014591],[0.112632275],[-0.38837513],[-0.009132882],[0.32848948],[0.05313135],[-0.1084323],[-0.38779393],[-0.17182945],[-0.17182226],[0.08077316],[-0.009312498],[-0.20723443]]},{"dense_3_W":[[-0.7191352,0.82575274,-0.4208178,-0.42105228,-0.12746234,0.6060775,-0.36437324,0.011044404,-0.06605932,-0.23161481,-0.07892281,-0.2586107,0.22741254],[-0.03922699,0.28218865,-0.08608041,-0.49147275,-0.75184256,0.37435916,0.46016482,-0.0026176786,-0.28095058,-0.18674251,0.6548586,0.23019525,-0.66313064],[-0.70486027,0.67592573,0.31197107,-0.25772044,-0.32144958,0.59903663,-0.013240984,-0.097765416,-0.4100128,-0.39269626,0.3077929,0.50466055,-0.20290402]],"activation":"identity","dense_3_b":[[0.06820397],[0.04168449],[0.03600891]]},{"dense_4_W":[[-0.5796537,-0.81390715,-0.64433306]],"dense_4_b":[[-0.04506098]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json new file mode 100644 index 0000000000..f8074bf939 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2018_HYBRID.json @@ -0,0 +1 @@ +{"input_std":[[8.210334],[0.9762297],[0.46461004],[0.04707402],[0.9570847],[0.962571],[0.9688103],[0.9626872],[0.9493875],[0.93438673],[0.91365314],[0.046885576],[0.04696745],[0.047010563],[0.047022652],[0.047106303],[0.047075313],[0.0468335]],"model_test_loss":0.01662263832986355,"input_size":18,"current_date_and_time":"2023-08-05_06-34-39","input_mean":[[24.433825],[0.027294964],[-0.007775845],[-0.008583761],[0.028062655],[0.026877884],[0.025869267],[0.024155349],[0.025895124],[0.02763769],[0.028466335],[-0.00856314],[-0.008589166],[-0.008611988],[-0.008814955],[-0.008984508],[-0.009198656],[-0.009352716]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.01408288],[1.6081693],[-0.06155718],[-1.54345],[-0.24193887],[-2.5958166],[-2.5204089]],"dense_1_W":[[0.0027263653,0.8206801,-0.0032928735,0.13611287,-0.076531366,1.5959642,-1.2799904,-0.06996241,0.03039119,0.02152609,0.0963275,0.5368505,0.14871612,-0.3396571,-0.2039869,-0.6619022,-0.039203983,0.4320533],[1.0668212,-0.75284845,0.1227131,0.26535362,0.13527365,-0.2295604,1.1708634,-0.021281645,-0.15021786,0.39643094,0.74283296,-0.3838045,0.003083275,-0.19208938,-0.0017936465,0.703765,-0.092454515,-0.31097198],[0.0027553164,0.7843536,4.634527,-0.26233014,-0.5298467,-0.5220332,-0.74772763,0.2625032,1.8427289,0.32081687,-1.2304753,0.90846735,0.22365782,0.250327,-0.6063961,-0.39930865,-0.18285267,0.079409026],[-1.1514753,-1.0265552,0.13074096,0.38378564,0.7118709,-0.35103342,1.0191414,-0.004307897,-0.1731455,0.13679343,1.0576029,-0.40426365,-0.26618227,0.048847493,0.23475589,0.2227605,0.085375875,-0.30894497],[-0.0047089225,-0.5524328,-0.0045054047,0.66928285,0.064004675,-1.3554454,0.75827724,-0.44520453,-0.070583,0.2953706,-0.17199413,-0.52929235,0.076917104,0.5385476,0.43512538,-0.24582133,0.1710678,-0.17150968],[-0.85862017,0.34829536,0.10180492,-0.16177164,-0.70526654,0.610196,-0.51517403,0.19511817,0.5740542,0.4342128,0.10650083,-0.08206996,-0.14800107,-0.11421001,0.25861365,0.49271822,0.13999887,-0.38721174],[-0.852335,-0.32791263,-0.10090505,-0.21708132,0.70464164,-0.4129493,0.19680835,-0.0039844504,-0.58808166,-0.5447895,-0.055174615,-0.009039755,0.3263737,0.39800122,-0.43388817,-0.2980978,-0.109957084,0.34861532]],"activation":"σ"},{"dense_2_W":[[-0.8770086,-0.024234872,-0.29209283,0.2774463,0.24086247,-0.38808098,0.76261544],[0.7931689,-0.4432339,0.5408512,-0.40607476,0.018381504,0.22573993,-1.2025113],[0.2774073,-0.28390488,0.48924458,-0.10028617,-1.1787524,0.55241233,-0.31903595],[1.187657,-0.90130055,-0.11544119,-0.48425758,-0.5087712,1.5533149,-0.44771603],[0.58252364,-0.7203072,0.46005324,0.2731612,-0.67982006,0.15357131,-0.57816696],[-0.9171702,0.37134174,-0.41417953,0.17179497,0.39356327,-0.10935133,-0.09958233],[-0.66176236,0.14740363,0.07868582,-0.40370503,0.3730389,-0.06752067,0.5966177],[0.057574127,-0.085722245,0.09327541,0.19917345,-0.112103276,0.4723292,-0.71419835],[-0.3262963,-0.03496345,-0.18610413,0.28829092,0.5575449,-0.96931815,0.2509937],[-0.14358501,-0.53553015,0.102502294,0.38049912,-0.011593848,-0.10357873,0.38666174],[1.0979931,-0.5266687,0.011019552,-0.36888388,-0.36552617,0.7437136,-1.0329511],[-0.99298805,0.033587284,-0.0815785,0.2939779,0.17858009,-0.36309564,0.7169502],[0.1916819,-0.3956481,0.23111235,-0.19816011,-0.79406476,0.9587695,-0.5586975]],"activation":"σ","dense_2_b":[[-0.08816166],[0.23371251],[-0.22228523],[-0.015670193],[-0.03642067],[-0.008211963],[-0.17989649],[0.0062512616],[-0.030759228],[-0.15077485],[0.01450626],[-0.07085153],[-0.13338038]]},{"dense_3_W":[[-0.13808444,0.27692232,0.13246109,0.13561308,-0.050800115,-0.3225275,-0.5869831,0.64456654,0.19247706,-0.48861238,0.47843403,-0.009448491,-0.38144258],[-0.18783484,-0.17080472,0.36493075,-0.6014318,-0.6958318,0.33951765,0.06917564,0.34324136,0.5521416,-0.65650636,0.07141213,0.48251265,-0.095275834],[0.67380184,-0.285928,-0.43182224,0.052221615,0.0014595015,0.21199639,-0.06704697,-0.40021017,0.5456471,0.4511299,-0.31108952,0.5755762,-0.41977003]],"activation":"identity","dense_3_b":[[0.05807602],[-0.052454475],[-0.061056226]]},{"dense_4_W":[[0.47078133,-0.7455223,-0.98688024]],"dense_4_b":[[0.054955926]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json new file mode 100644 index 0000000000..e00c5807e6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2019_HYBRID.json @@ -0,0 +1 @@ +{"input_std":[[6.150079],[1.133713],[0.43403986],[0.044542935],[1.116597],[1.1228739],[1.1282343],[1.1087918],[1.0829574],[1.0503302],[1.0201406],[0.044353947],[0.04440376],[0.04444536],[0.044435233],[0.044352584],[0.04415751],[0.04374931]],"model_test_loss":0.021649373695254326,"input_size":18,"current_date_and_time":"2023-08-05_13-22-16","input_mean":[[28.718779],[0.027420705],[-0.0010486431],[-0.006476941],[0.03194379],[0.030714247],[0.029522395],[0.031175172],[0.03329464],[0.03204752],[0.030367676],[-0.006409366],[-0.0064388723],[-0.0064642774],[-0.006523428],[-0.0065177125],[-0.006653054],[-0.0068931]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.1557553],[0.15239237],[-0.7883996],[0.21607175],[-0.10778271],[-0.110362194],[-0.0008402114]],"dense_1_W":[[-0.39730522,-1.2665217,-0.018751338,-0.36011004,0.06413814,0.13557298,0.675142,-0.58107,-0.71815616,-0.67207223,0.8874161,-0.21224383,0.3109732,0.11582158,-0.10825705,0.20035155,0.13655844,-0.11123461],[0.08248368,-0.9288284,0.006650333,-0.3600497,0.048258215,-0.4385164,0.7812643,-0.36598027,-0.17953908,0.0043003927,0.14774609,-0.2284627,-0.15616533,0.35386756,0.5318769,0.081253365,-0.030911509,-0.12792926],[-0.012793936,-0.95197654,0.0013175827,0.4850853,0.06403457,-0.60757506,1.0891476,-0.15639184,-0.07080147,-0.141186,0.14856425,-0.6297083,-0.09511309,0.13792045,-0.003489132,0.39871147,0.23734719,-0.41034752],[0.036720853,-1.1706092,-0.0117205065,0.22939475,0.06332086,-0.27194244,0.6138069,0.0057003004,-0.23597574,-0.20802614,0.23779614,-0.2707945,-0.065516055,0.16179438,-0.1341947,0.014489582,0.27160132,-0.19034316],[-0.017165367,-0.31984007,-5.1292553,-0.09900438,1.891005,1.522304,1.3964776,-0.27762464,-3.1030765,-1.4986553,0.23631042,-0.58467907,-0.44058293,0.4239101,-0.07130837,0.06697376,0.22419664,0.49982306],[-0.029110994,-0.78375465,0.030992711,0.09522315,-0.32218152,-0.18287186,0.20446928,0.2509469,-0.32046452,-0.69563234,0.43957192,-0.2393486,0.0034883572,0.3692833,-0.1480584,-0.21708085,-0.04099675,0.16072796],[0.011984756,0.4372055,0.00038938643,-0.3804347,-0.14191024,0.83822465,-0.75622463,0.1774374,-0.15122366,-0.08789587,0.1162553,0.36315253,0.019167189,-0.015732778,-0.21518882,-0.17138954,-0.06687768,0.16531232]],"activation":"σ"},{"dense_2_W":[[-0.66123444,0.053167176,-0.67734295,-0.43834037,0.30200854,-0.6062845,0.49393648],[-0.5499434,-0.5910183,-0.04735582,-0.9205705,0.29150906,0.18296994,0.49427703],[-0.3087813,-0.6735604,0.1032743,-0.7492757,-0.47998416,0.38746807,-0.3792903],[0.22218491,-0.37423322,-0.68595016,-0.3057585,-0.67376715,0.18519343,0.26224977],[0.12493204,-0.6740838,-0.48158708,-0.11590075,-0.6646322,0.3766876,0.5211831],[0.033400588,-0.37467673,0.13653982,-0.7425377,-0.58915126,-0.44702393,0.15368707],[-0.03525442,0.6467697,0.27980375,0.53180575,0.5175674,-0.2184231,-1.3612056],[-0.26941165,0.034494866,0.54393685,0.823304,0.91855395,-0.5912671,-0.16972241],[0.5912191,0.50708044,0.8906907,0.4043412,-0.6052221,0.9453074,-0.9854745],[-0.1847966,0.29045746,-0.35760128,0.2358291,0.08363469,-0.28862038,-0.6393691],[0.082734466,-0.20940094,0.1263725,-0.61631376,-0.29357114,-0.22268835,0.48448983],[0.008772746,-0.3295119,-0.77102983,-0.37905028,0.1420826,0.19744958,0.12742513],[-0.34957173,-0.4635609,-0.6658351,-0.074581586,-0.137647,-0.031496365,0.17163728]],"activation":"σ","dense_2_b":[[-0.011190517],[-0.11420608],[-0.11911637],[-0.047058385],[-0.05209559],[-0.0067813573],[-0.6960103],[-0.2218484],[-0.638528],[-0.1287715],[-0.13393182],[-0.13222918],[-0.08612358]]},{"dense_3_W":[[-0.56854904,-0.004440354,0.20522526,-0.5189793,-0.5598319,0.004857475,0.7723675,0.08466752,0.3211879,0.22073807,-0.50451374,0.14052922,-0.15547366],[0.4760816,0.49406376,0.28560668,-0.27424216,0.0395443,0.63189626,-0.5996514,-0.59683996,-0.2216528,0.065270856,-0.40737736,0.13047104,-0.32319623],[0.35351506,0.5386659,0.32769755,0.12265874,0.56839216,0.5655456,-0.034122158,-0.18965866,-0.329834,0.10452169,-0.11418242,0.32698897,0.31875592]],"activation":"identity","dense_3_b":[[0.17258255],[-0.16791473],[-0.16998908]]},{"dense_4_W":[[-0.9664698,0.46322697,0.7462367]],"dense_4_b":[[-0.17601651]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json new file mode 100644 index 0000000000..555843209f --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/CHRYSLER_PACIFICA_2020.json @@ -0,0 +1 @@ +{"input_std":[[5.693015],[1.1106057],[0.4839505],[0.047381964],[1.0865142],[1.0940344],[1.1007035],[1.0835435],[1.057553],[1.0248959],[0.99939334],[0.047141436],[0.047186267],[0.047211904],[0.04706877],[0.046951234],[0.04684611],[0.04661448]],"model_test_loss":0.013941051438450813,"input_size":18,"current_date_and_time":"2023-08-05_08-16-38","input_mean":[[28.37103],[0.03974344],[-0.014893848],[-0.00037599605],[0.044908416],[0.043708824],[0.042289667],[0.039325528],[0.043006305],[0.04660932],[0.04483933],[-0.00043650295],[-0.0004215664],[-0.0004140165],[-0.0003983723],[-0.00044116066],[-0.00051853625],[-0.00058758573]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.1451855],[-0.15737621],[-0.060310073],[0.6073345],[-0.05780308],[-0.16048814],[-0.23519869]],"dense_1_W":[[0.69470924,-0.6133493,0.0012405561,0.019553972,0.06448226,-0.73440015,1.0196836,-0.032631803,-0.21402587,-0.03535706,0.08963821,-0.4151518,0.04951377,0.21540186,0.08403593,0.30007103,0.0721286,-0.21808833],[-0.0055281483,-0.97871476,0.053892706,0.29578617,0.24488142,-0.9456837,0.31968737,0.23062654,-0.3851994,-0.14804605,0.12488454,-0.59180176,0.1747962,0.582284,-0.056728594,0.052842837,-0.25234208,0.08868016],[0.19908331,-0.23178522,-0.00033343132,0.29788065,-0.2630549,-0.9329808,0.9836051,-0.025557669,-0.046352006,0.021415278,-0.10175714,-0.44916221,0.41586125,-0.027728092,-0.11277255,0.28242412,-0.4416653,0.19147082],[0.49298579,0.29445317,0.0024654444,-0.034087177,-0.32976052,0.7320162,-0.13650697,-0.18142147,0.048409745,0.3485382,-0.1782508,0.17317066,0.0046146074,-0.455786,0.23675595,0.17629597,-0.2908207,0.05100971],[0.0025918921,0.60664314,0.08437282,0.0038275314,-0.26773483,0.7368417,-0.8442401,0.35636544,0.09660225,0.06810851,-0.23716143,0.15216075,0.4089829,-0.25967675,-0.5667884,-0.037151016,-0.22253121,0.35003844],[-0.0069139847,0.5928849,5.9585037,-0.2729994,-1.1027155,-0.5361705,-0.39928573,-0.21191321,1.6408015,0.88942456,-0.5805952,0.711463,1.0614796,0.75551856,-0.25333017,-1.0107019,-0.6404496,-0.4423781],[0.77807605,0.4254286,-0.0070603983,0.13885634,-0.11155952,0.92952013,-1.1097448,0.25786868,0.18906161,-0.19558257,0.03620436,0.5284809,0.28771606,-0.39166483,-0.412538,-0.41851315,-0.53765815,0.6955264]],"activation":"σ"},{"dense_2_W":[[0.14673255,-0.25427318,-0.41763714,-0.57974076,-0.56608886,-0.18331228,0.027660826],[-0.22915831,-0.55615884,-0.4508235,0.34225336,0.5593746,0.40537748,0.7960525],[0.21956417,-0.07734256,0.27312982,-0.3854605,-0.08650003,-0.27906924,0.26293612],[-0.77091247,-0.7756027,-0.9580333,0.765381,0.32493275,-0.51463944,0.7389473],[0.5907749,0.26036587,0.5915251,0.1214773,-0.029054264,-0.13793655,-0.038385104],[0.2536978,-0.44341302,0.088218234,-0.07722079,-0.69654363,-0.04497505,-0.37380072],[0.1492596,0.50270057,0.46113217,0.08208802,-0.44300494,-0.049104072,-0.38107514],[-0.033503003,0.31365246,-0.23077266,-0.51006895,0.10363347,-0.780032,-0.6072311],[0.19008167,0.41587985,0.41156146,-0.36104697,-0.25369507,-0.020715002,0.101388365],[-0.12538931,-0.93145704,-0.38526508,0.757801,0.4460356,0.22134012,0.059445396],[-0.010972688,-0.04331066,-0.5205074,-0.61291635,-0.38937822,-0.5410802,-0.776376],[-2.1453147,-0.70847136,-1.2064056,-0.31943244,0.13231355,1.2215211,-0.11054935],[-0.57651573,-0.17007175,-0.34664136,0.4060285,0.8317285,0.13207953,0.11835387]],"activation":"σ","dense_2_b":[[-0.10427355],[0.11536775],[-0.10146174],[0.08055071],[-0.1175017],[-0.09294055],[-0.12414659],[-0.12894793],[-0.122823305],[-0.0023050748],[-0.09449869],[-0.25891626],[0.0091852965]]},{"dense_3_W":[[0.018232554,0.26810202,0.2565264,0.30350316,0.51860917,0.3029135,0.5572722,0.37361154,0.45107833,-0.48839125,0.3939663,-0.0054893196,0.054042112],[0.4726983,-0.7600223,-0.2362871,-0.7305271,0.3979434,-0.16793822,0.08976205,-0.10595847,-0.5852833,-0.20750386,-0.19634347,-0.16581649,-0.49387524],[0.102563694,-0.77121973,0.49441037,-0.74888134,0.4121642,0.45769525,-0.36120865,0.5654234,0.5058435,0.45810163,0.20354177,-0.564163,-0.42752033]],"activation":"identity","dense_3_b":[[-0.09124249],[-0.07674238],[-0.08837357]]},{"dense_4_W":[[-0.9619778,-0.7475,-0.82428706]],"dense_4_b":[[0.088022344]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json new file mode 100644 index 0000000000..3e3f833b7c --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_G70.json @@ -0,0 +1 @@ +{"input_std":[[6.6771574],[0.8306398],[0.44399694],[0.03148828],[0.82453376],[0.82558274],[0.8276523],[0.8249276],[0.82540375],[0.8268513],[0.8293405],[0.031258367],[0.031317297],[0.031381857],[0.031565305],[0.031729955],[0.031927522],[0.031937882]],"model_test_loss":0.0016914892476052046,"input_size":18,"current_date_and_time":"2023-08-05_15-54-16","input_mean":[[25.397608],[0.061366253],[-0.004759293],[-0.017377611],[0.063574664],[0.0629952],[0.06279838],[0.06257633],[0.0642723],[0.06428019],[0.06443743],[-0.017316736],[-0.01732337],[-0.017324336],[-0.017258912],[-0.017273892],[-0.01738509],[-0.017547127]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5071787],[-0.011610117],[-0.25543153],[-0.2288577],[0.3640026],[-0.20951404],[-0.018084347]],"dense_1_W":[[-0.32076025,0.5609776,0.06455551,0.4650965,-0.3128346,0.29808214,-0.068447836,-0.080615535,-0.1533624,0.086725675,0.0019198896,0.38526085,-0.33096933,-0.4344235,-0.24709408,-0.21656084,0.12910959,0.10089391],[-0.013731939,-0.37048897,1.5160967,1.216611,-0.026065614,-0.012039334,-1.7950301,-0.6103514,1.727483,2.0623763,-0.9575297,0.39149958,-0.218174,-0.51533777,-0.76304054,-0.3384101,-0.10145121,0.34581316],[0.014144666,0.22945884,-0.45639136,0.08440587,-0.19207898,-0.5290964,0.54655564,-0.07094287,-0.41206077,-0.23082434,0.77867293,-0.83082336,-0.31685916,0.3376802,0.18800995,0.28112486,0.5808552,0.0882255],[0.55997515,-0.45515752,-0.3620537,-0.21491247,-0.12751056,0.6437451,0.4513876,0.14484537,-0.012545343,-0.70398337,-0.03420965,0.5712778,-0.34471962,0.2639977,0.15245198,-0.09942475,-0.52654004,-0.39195266],[0.16048487,-2.0932982,0.060834095,-0.43821463,-0.12897933,0.8929607,0.08955616,1.5023427,0.47960326,-0.24697156,-0.2284945,0.3664966,0.36733755,-0.70950145,0.25744,0.16433853,-0.4799496,0.3186391],[0.0031760861,-0.32184288,-0.033980735,-0.4582301,-0.07663507,-0.7593102,0.50883085,0.22713356,-0.20064494,0.3521629,-0.22366937,-0.07778892,-0.2534047,0.56217426,0.41395634,-0.12142341,-0.0027042534,0.03405264],[-0.0017348339,-0.29796287,0.062474936,-0.11221718,-0.23059554,-0.626899,0.10690498,0.5434746,-0.05614545,-0.061325278,-0.2274304,0.29413497,-0.38511482,0.10846904,-0.15861528,0.35446325,-0.38156375,0.18584998]],"activation":"σ"},{"dense_2_W":[[0.08477807,-0.35302192,-0.40779448,-0.5867174,0.13918135,-0.6664157,-0.3491646],[0.3792094,-0.030590685,-0.21691003,0.13814875,-0.22226094,-0.66838443,0.11945859],[0.114434734,0.3219143,-0.65471864,-0.5160347,-0.10297699,-0.546052,0.23859331],[0.4386374,-0.13452144,-0.0146616185,0.408655,0.29078993,-0.45133266,-0.6718732],[0.04953622,-0.309141,-0.028895855,-0.081540965,-0.04211146,0.19563156,0.1549496],[-0.07437576,0.18886302,-0.11578516,-0.02629349,0.5117754,-0.8601534,-0.27231035],[0.07671942,0.0293902,-0.5813721,0.3454169,-0.053973634,0.046247624,-0.35544363],[0.22220099,-0.53176254,0.49601117,0.16283734,-0.41594207,0.14338993,-0.23063558],[0.50082463,0.3444267,-0.5869549,0.31520668,0.3332609,-0.5623406,0.0112578],[-0.05211133,-0.24212956,-0.37504154,-0.24755752,-0.61364114,0.61201805,0.5261763],[0.16144137,-0.5551527,-0.27000764,0.48719284,-0.20183928,0.4279106,0.5559925],[-0.38015607,-0.17513199,0.0054852753,0.49040842,-0.5847223,-0.315286,0.41083756],[0.027273893,0.37111732,-0.29921013,0.35153958,0.6107227,0.058014646,-0.48178723]],"activation":"σ","dense_2_b":[[-0.13192527],[-0.11472918],[-0.2398955],[-0.012978796],[-0.24606323],[-0.16946991],[-0.09656156],[-0.011122704],[-0.13971844],[0.025623204],[-0.01150639],[0.031865247],[-0.14259984]]},{"dense_3_W":[[-0.49097103,-0.38446474,0.19654791,-0.04500209,-0.353884,-0.59052265,-0.26697198,0.25850582,-0.4691939,-0.3658384,0.49351692,-0.21503085,0.43769556],[-0.49650973,-0.24257205,0.27875185,0.056984637,-0.084106766,0.21747197,-0.14523055,-0.062517725,-0.12865941,-0.4967132,-0.47404718,-0.39828455,0.20428851],[0.51754504,0.44354475,-0.12756172,0.60820955,-0.16570193,-0.24837321,0.3779718,-0.12072089,0.33560675,-0.29205063,0.42597872,-0.57351613,0.275068]],"activation":"identity","dense_3_b":[[0.03487869],[-0.013982357],[-0.02665594]]},{"dense_4_W":[[-0.40196383,0.97064435,0.88333386]],"dense_4_b":[[-0.019127952]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json new file mode 100644 index 0000000000..8d39b0612d --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV60_EV_1ST_GEN.json @@ -0,0 +1 @@ +{"input_std":[[6.8682947],[1.3247597],[0.52117354],[0.053211],[1.3196762],[1.321261],[1.3220409],[1.3065661],[1.2855599],[1.2555516],[1.221194],[0.05287544],[0.052969508],[0.053053025],[0.053157352],[0.05310392],[0.052811027],[0.052315235]],"model_test_loss":0.004652302712202072,"input_size":18,"current_date_and_time":"2023-08-05_17-08-23","input_mean":[[25.097141],[0.030100366],[0.008127931],[0.0017367124],[0.025092127],[0.026649075],[0.027925659],[0.031518627],[0.031421654],[0.03279364],[0.028935509],[0.0016365603],[0.0016674129],[0.0016875914],[0.001713633],[0.0017992958],[0.0018609823],[0.0017497891]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.01906636],[-0.026147846],[-0.06956214],[-0.12893584],[3.3396657],[-0.11347563],[3.4662268]],"dense_1_W":[[0.0016520686,0.43010652,-0.016737647,-0.5847046,0.42132026,0.6080183,-0.36023164,0.04929399,-0.05639926,0.055730373,0.07496767,0.40559384,0.5495037,-0.78057534,-0.3052922,-0.4512687,-0.15058433,0.049945023],[0.0036362763,0.904483,0.001981453,-0.33253717,0.25831643,0.7194124,-0.29999894,-0.4751608,-0.22190008,0.22535524,0.18900982,-0.04392861,0.30455038,-0.40629083,0.551194,0.3208965,0.2746982,-0.6420702],[-0.0013973061,-1.2801182,-4.660272,-0.2299565,0.5036499,1.121957,0.6687826,0.08227576,-0.87890655,-0.816766,0.5726014,-0.48010656,-0.7163965,0.08434925,0.26663804,0.6864054,0.38185596,-0.08777598],[-0.024978189,0.45179686,-0.43001783,-0.19626012,-0.145855,0.3520434,-0.9694731,0.11912776,-0.069412105,-0.65245837,0.3938456,0.88234675,0.2711265,-0.09912691,-0.12296636,0.14305602,-0.12646228,0.12271214],[0.6889864,-1.4383845,-0.5985031,0.43910387,-0.14574279,-0.5830182,0.28500378,-0.18694921,-0.5173389,-0.15667093,0.1595579,-0.3700834,0.11795122,0.28467125,-0.20037529,0.44890952,-0.43353197,0.15507948],[-0.016126553,-0.5084034,-0.3446227,0.13306846,0.16979276,-0.6851119,0.97122914,-0.11992911,-0.38304567,-0.3581892,0.4410937,-0.085785575,-0.17046288,0.43981537,0.31712607,0.29649833,0.20096925,-0.42831364],[0.70960057,1.176625,0.618315,-0.35273266,0.50546986,0.41693547,-0.30839127,0.19819334,0.5911515,0.2822198,-0.22344977,0.06145853,-0.052926417,0.008550686,-0.02682976,-0.34092346,0.41492197,-0.16889408]],"activation":"σ"},{"dense_2_W":[[0.3105403,-0.13943449,-0.5671977,0.7278831,-0.9538581,-0.53992945,0.2537109],[0.25039518,-0.19284537,-0.33849826,0.19139016,-0.13403177,-0.07362739,-0.71186584],[0.077256136,-0.6989092,-0.236067,-0.53454214,0.4003753,0.3068613,-0.50189966],[-0.3387507,0.08022835,-0.13841416,-0.21556431,-0.16097516,0.82565576,-1.0068827],[-0.5129783,-0.64633214,0.6501237,-0.31724972,-0.41725558,0.6616404,-0.8662519],[0.4270751,0.67877465,-0.30108768,-0.16842516,-0.82080853,-0.8198072,-0.14678568],[0.42951444,0.47302562,-0.59648263,0.50122297,-0.4004039,-0.8508191,-0.5640101],[0.31044075,0.4447596,-0.0133176055,0.39672032,-0.13207492,-0.1053544,0.3750294],[-0.49185774,-0.6246744,0.2108288,0.036430668,-0.19068871,-0.684725,-0.5135398],[0.6451895,0.15162985,0.35664967,0.539209,0.24193677,-0.0060984846,-0.38601643],[0.33735067,0.48711634,0.3457868,0.40235066,-0.5442683,-0.8894964,0.083602294],[0.6303491,0.47514284,-0.25302443,0.048399102,-0.6309426,0.071017355,-0.42443976],[-0.028995385,0.6780545,-0.48130322,-0.10078704,-0.35888222,-0.038346574,0.21966858]],"activation":"σ","dense_2_b":[[-0.16421281],[-0.0066147824],[0.2712916],[-0.037723377],[0.009121119],[-0.24584663],[-0.17050697],[-0.28670987],[-0.15715508],[-0.09428354],[-0.21343407],[-0.17752221],[-0.17326371]]},{"dense_3_W":[[0.39673528,0.5029898,-0.77688295,-0.20485383,-0.69867265,0.52573097,0.5760262,-0.057309195,0.38914645,0.11605935,0.3120174,0.22832489,0.5434368],[0.49983713,0.12314057,-0.23971559,-0.29951656,0.01370866,0.3070287,-0.101687245,0.34138146,-0.15633298,-0.5573778,0.6135126,-0.24733001,-0.3987656],[0.041431323,-0.5985834,-0.5442451,-0.052750558,-0.7950125,-0.18662111,0.56161785,0.04896858,-0.3108859,0.44375634,-0.21281773,0.40877533,0.062354703]],"activation":"identity","dense_3_b":[[-0.08339912],[-0.0697586],[-0.070846304]]},{"dense_4_W":[[0.82060516,0.39197603,1.0617381]],"dense_4_b":[[-0.07490547]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json new file mode 100644 index 0000000000..66e4c7ddae --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/GENESIS_GV70_1ST_GEN.json @@ -0,0 +1 @@ +{"input_std":[[10.192138],[1.2619681],[0.99538904],[0.03173082],[1.390097],[1.3528733],[1.3105861],[1.0981697],[0.9660985],[0.83304054],[0.73382217],[0.031833883],[0.031806096],[0.03176805],[0.031585068],[0.031403936],[0.031049846],[0.03052816]],"model_test_loss":0.08113811910152435,"input_size":18,"current_date_and_time":"2023-09-01_15-46-16","input_mean":[[17.870602],[0.06094058],[0.76994574],[-0.018258877],[0.07383096],[0.06954971],[0.06553388],[0.045131978],[0.034243006],[0.017750643],[0.0021489365],[-0.018112624],[-0.018160766],[-0.018217338],[-0.018421978],[-0.018636575],[-0.018845296],[-0.019152297]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.60173887],[-1.2184482],[-2.5489855],[-0.13953118],[0.6530774],[-1.9541978],[0.6348104]],"dense_1_W":[[0.9151844,-0.69396037,-0.0015744013,0.13417375,0.47273952,0.053828586,-0.2703337,-0.06767218,-0.06996197,0.33860308,0.6809081,0.062160317,0.20090835,-0.39224413,0.20620485,-0.011424855,0.16862637,-0.2757232],[0.28972548,-0.02519699,-0.0015914065,0.16588296,0.18867342,0.054137114,0.08766244,-0.10144043,-0.00023482303,0.035658572,0.3292638,0.025065169,0.02802059,0.040422786,-0.28468195,0.014785016,-0.040343814,0.020054903],[-0.88864183,0.81139094,0.005142466,0.07717855,-0.3736464,-0.48089615,-0.33839747,0.72515595,-0.20632601,0.2192427,0.6845602,0.045920767,-0.0058251703,-0.10204114,0.0328523,0.1720919,0.22784986,-0.39458126],[0.04597544,-0.5142907,-0.039751884,-0.1760501,-2.0647182,-2.079671,-1.7764702,2.893614,2.1160357,0.62820613,-0.58175343,0.13933943,-0.07837348,0.2579554,-0.21817936,0.058899857,0.0867017,-0.2388197],[1.008347,0.6241744,0.0006175654,0.24427246,0.3880548,-0.71216303,-0.08657326,0.43654963,-0.002103242,-0.35102853,-0.72472453,-0.14762312,0.058478996,-0.27061918,0.08358053,-0.05671504,-0.39794087,0.38000095],[-0.75398517,-0.31240758,-0.0035077638,0.042402916,0.03954997,0.38596287,0.3007671,-0.71371967,0.24568759,-0.18542135,-0.63920254,0.012125213,-0.13132948,0.1092853,-0.09679227,-0.19704841,-0.06888792,0.28378332],[-0.2624838,0.19304885,-0.0020451967,-0.42735267,0.5025606,0.020195944,-0.100870304,-0.38624248,-0.1858948,0.15579382,0.32803276,0.24784385,0.31001303,-0.23803873,0.1500903,-0.2607993,0.30487004,-0.11202888]],"activation":"σ"},{"dense_2_W":[[-1.2400194,0.17729802,1.6934681,0.7075426,-0.11226228,-0.83732116,0.33559176],[0.5745533,-0.80457217,-0.6967583,0.08430375,-0.5941207,0.6564719,-0.70027584],[0.013842665,-1.1106777,0.12004836,-0.7758639,-0.7202531,2.1383853,-0.26417783],[0.53778696,-0.9851601,-0.16901778,-0.63449734,-0.5228541,1.452694,-0.5041905],[-0.5252082,0.9113041,0.96822953,-0.2888941,0.19632195,-0.06139024,0.23265024],[0.8556627,-0.5657162,-0.92154366,-0.028895194,-0.5141267,0.72371626,-0.751295],[0.75094503,-0.17778125,-0.7352838,-0.43035126,-0.514307,0.9411462,-0.9285261],[-0.23282954,-0.20877087,-0.41192415,-0.89742875,-1.3174541,-0.15595351,-0.15537289],[-0.7422097,0.3961414,0.3959817,-0.16982703,0.80190444,-0.8246868,1.0364479],[0.84093606,-0.5901947,-0.6232177,-0.35342738,-0.49815804,1.1040002,-0.95394325],[-0.97321624,1.2088536,0.85022783,0.002327647,0.43647796,-0.4797704,0.095545724],[-0.75402004,0.8438213,0.258789,0.092278235,0.5893333,-1.1115283,0.98487294],[0.4652842,-1.1645225,-0.80774826,0.1144249,-0.14423822,0.46821204,-0.4388547]],"activation":"σ","dense_2_b":[[-0.29847553],[0.11241894],[-0.03942593],[-0.045420405],[-0.1453599],[-0.002497385],[0.035479035],[-0.20913747],[-0.13740407],[0.07032733],[-0.21931723],[-0.09019325],[-0.07747503]]},{"dense_3_W":[[-0.3440359,0.13350633,-0.2793149,0.06343626,0.46869245,0.35055122,-0.29592252,0.56705844,-0.35353094,-0.16574235,-0.4968441,0.23517826,0.2515689],[0.034386467,-0.9523351,-0.6150173,-0.43728954,0.3108096,-0.14083374,-0.5916635,-0.62779754,0.5980072,-0.72700554,0.7860504,0.84748363,-0.5247365],[0.67116046,-0.74161327,-0.18781546,-0.6720034,0.46030635,-0.91020125,-0.81438667,0.05195494,0.5849977,-0.87362975,0.42857662,0.74513984,-0.15408307]],"activation":"identity","dense_3_b":[[0.08475188],[0.005057218],[0.099355556]]},{"dense_4_W":[[-0.005187234,0.74306834,1.0122273]],"dense_4_b":[[0.092436805]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json new file mode 100644 index 0000000000..419f3b62e2 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/GMC_ACADIA.json @@ -0,0 +1 @@ +{"input_std":[[9.589161],[1.6526152],[1.0296179],[0.04015747],[1.6503558],[1.6541231],[1.6558622],[1.6062601],[1.5521498],[1.4774255],[1.3901185],[0.04013376],[0.040141042],[0.040149838],[0.04013493],[0.040134083],[0.040017467],[0.03965995]],"model_test_loss":0.07666975259780884,"input_size":18,"current_date_and_time":"2023-09-01_17-07-09","input_mean":[[19.16097],[0.00023039858],[0.024997516],[0.0015251928],[-0.006199064],[-0.00511049],[-0.0036440035],[0.008816405],[0.013828324],[0.023007024],[0.03203006],[0.001499254],[0.0015097901],[0.0015188308],[0.0013762622],[0.0012122631],[0.000992458],[0.00083205965]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.8661245],[-1.5837955],[0.037068017],[0.004549992],[-0.0406839],[-3.848253],[-0.14788117]],"dense_1_W":[[1.2300965,2.5310688,-0.033882245,0.9913731,-1.4768931,-0.7604761,-0.016176367,1.7826718,0.97190374,-0.3524215,-0.12235129,0.7071725,0.08818652,-0.7926816,-1.0068728,-1.0829469,-0.41093853,0.41296145],[1.0410483,-2.4898872,0.031385656,-0.8418668,1.7300308,0.6604722,-0.22182828,-1.4516648,-0.7956896,-0.0052562924,0.3286437,-0.90743065,0.20010695,0.67364526,0.8678244,0.9458278,0.45917323,-0.4489016],[0.0042952006,-3.7682223,0.03752664,4.481959,-0.025753722,0.30079904,-0.80541074,-0.8990208,-2.967934,0.3142363,-2.034866,-0.29074013,-0.10882145,-1.6433034,-2.345314,0.3792549,0.5183762,-0.3828322],[0.0351331,0.4335407,-0.72822434,-1.1574517,0.33417597,-0.78198606,-1.2777231,0.73203385,0.5243073,0.3935317,1.6471862,-0.66806847,-1.2980176,-0.995225,0.578557,1.5086068,1.178342,0.093525246],[-0.034333024,0.2399623,0.7163214,0.4258642,0.051805,-0.27961543,0.13171966,-0.043525357,-0.11124441,0.7758175,-2.7231858,1.9812765,0.95424885,-0.516098,-0.3156276,-0.42034206,-0.43856654,-0.9159853],[-3.23608,0.62202907,-0.93510664,-0.31767273,-2.2818325,-0.97344154,-0.47527224,0.8959574,-0.07933676,-1.693229,0.29464307,1.5444574,0.3701407,-0.7764469,0.8500272,1.3425361,-1.7767322,-2.944946],[0.006447974,0.48928446,0.5253896,0.9540034,1.3740003,0.38989055,-0.19158112,-0.6142965,-1.4193783,-0.640289,2.1344078,-0.42348352,-0.5467218,0.13846552,-0.060432374,-0.4456313,0.39513004,-0.17451167]],"activation":"σ"},{"dense_2_W":[[0.75902075,1.1818918,0.018134926,-0.23670888,0.58994615,-0.3951398,1.2811865],[-0.08184867,0.43210924,0.42716455,-0.7389914,-0.42377943,0.07209329,0.11910895],[0.31956765,-0.7480974,-0.19422513,-0.552509,0.07628548,0.6062507,-0.7245184],[0.44447437,-0.041922443,0.13054374,0.43873626,0.6574541,-0.19836801,0.14220871],[-0.0037564328,-0.023460802,-0.6449217,0.5678689,0.5152597,-0.3669055,0.08844841],[0.409556,-0.89736575,0.58308125,-0.16765638,-0.2244067,-0.19765973,-0.13677762],[-2.7548218,3.2813652,1.3716445,-0.96946454,-0.47919014,0.23553993,-0.7080141],[-1.617764,-1.0463123,-0.82542264,0.027710665,0.9964338,-0.6431054,0.35499138],[0.742922,-0.4490962,-0.4472653,0.3055844,-0.051618654,0.53054106,0.6369738],[0.5263451,0.72935253,-1.4179851,-0.7053557,0.10821838,-1.4098617,0.006451496],[-0.32364398,0.039208733,0.77577096,-0.9521098,-1.4651095,-0.26427552,-0.2297292],[-0.5094321,-0.17350426,-0.05012927,-0.42607546,-0.0424127,-0.1761333,-0.87716746],[-0.07377011,-0.38419786,-0.05855057,-0.5455437,-0.9797012,-0.30153883,0.23297796]],"activation":"σ","dense_2_b":[[0.28105608],[0.062468283],[-0.008618305],[-0.010698113],[-0.022834778],[-0.19800517],[0.1661619],[-0.59834546],[0.022396281],[-0.39137623],[0.30498576],[-0.03527624],[0.02751272]]},{"dense_3_W":[[-0.0075695775,-0.27568746,0.09120304,-0.3263692,-0.4094352,-0.0785218,0.37749985,-0.3643959,0.5081887,-0.34113538,0.13756286,-0.17055227,0.43868554],[0.25493667,-0.3818253,-0.41074437,0.32864282,0.3402426,-0.13885908,-0.5030987,0.19186679,0.65157133,-0.14876194,-0.5428901,-0.08314285,-0.57639486],[0.57302797,-0.51000684,-0.18249922,-0.07923711,0.3147604,-0.16800596,-0.7434311,0.7116399,0.39529055,-0.40308496,0.15564886,-0.41269818,-0.55772877]],"activation":"identity","dense_3_b":[[0.033527393],[0.026104666],[0.027110972]]},{"dense_4_W":[[-0.087499,1.1460565,0.99249434]],"dense_4_b":[[0.025334533]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json new file mode 100644 index 0000000000..bb7963bab7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ACCORD.json @@ -0,0 +1 @@ +{"input_std":[[9.558472],[1.1135993],[0.35501274],[0.045823593],[1.1077218],[1.1080649],[1.1080468],[1.0821772],[1.0575596],[1.0226434],[0.98659563],[0.045627955],[0.045635287],[0.04563911],[0.045467082],[0.045263745],[0.04491611],[0.044533264]],"model_test_loss":0.039052750915288925,"input_size":18,"current_date_and_time":"2023-08-05_18-06-12","input_mean":[[26.136148],[0.014033704],[0.008476357],[-0.007713262],[0.014445406],[0.015386044],[0.016355403],[0.020506991],[0.024135882],[0.026870549],[0.02935421],[-0.007780166],[-0.007770314],[-0.0077639683],[-0.0077210055],[-0.007739751],[-0.007798479],[-0.00789042]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.1487079],[4.2139845],[-0.5853092],[0.3086539],[0.032987785],[-4.7810106],[0.016952101]],"dense_1_W":[[0.033758555,1.0444518,3.6611536,-0.40075377,0.7095827,1.3611814,-2.1352289,0.96489286,1.8126475,-0.62583995,-1.966803,-0.1734821,0.15852115,-0.3967776,-0.14440706,0.8157315,0.17390618,-0.23260796],[2.1500878,-0.45053038,1.2581933,-0.05246604,0.5019536,1.7019817,-1.8193591,1.3068173,1.0780432,0.6126558,-1.1160796,0.19838658,-0.084695324,-1.2091074,0.5595109,0.74877197,0.30207658,-0.6453137],[0.458296,-0.21370786,0.0019734737,-0.30963984,0.8088786,-1.7420303,0.60466176,0.14915113,-0.12689793,0.052364115,-0.042618364,-0.5170238,0.26220888,0.18760274,0.37973043,0.15806,0.0022146539,-0.07045257],[-0.66763306,-0.4096175,-0.0016955894,0.04425929,0.21008201,-1.7331837,0.9467672,0.58569306,0.23827136,-0.2415081,-0.15301658,-0.28669143,-0.2599793,-0.11007419,0.6052918,0.17952923,0.24594603,-0.31397706],[1.0145541,-0.3317505,-1.4991609,0.013690285,-0.9575213,-1.383604,0.028956244,0.41788918,0.24457058,-0.094164655,-0.13030116,0.17948826,-0.03794582,0.01309437,0.35534826,-0.26917398,-0.29215142,0.27303904],[-2.7000756,0.31637338,1.4000112,0.08876083,0.6678543,0.9836755,-1.5750684,1.1129849,0.9943397,0.5684742,-1.1145275,0.5888766,-0.13174123,-0.9658693,-0.413828,0.7263344,0.11292254,-0.23350726],[-0.12401558,5.324601,7.171819,-0.19341947,2.5473533,3.2746146,3.0563648,3.367963,2.8771386,2.6749191,2.9917984,-0.14726077,-0.13394955,-0.76174796,1.426001,1.2234408,-0.7090158,-0.6628128]],"activation":"σ"},{"dense_2_W":[[0.5621434,0.992517,-0.6983796,-0.91716,-0.054338105,0.607339,0.45212823],[0.22474639,0.22895367,0.6111215,0.046989255,-0.030409865,-0.61481434,0.10029722],[0.16454774,-0.29756203,1.1110828,0.59235257,-0.18411039,-0.6023632,-0.23720202],[-0.3528499,-0.6570399,0.49941105,0.47395417,0.27583507,0.08116056,0.20804141],[0.07139761,-0.070093624,0.5590774,0.7634218,-0.49971566,0.5975401,0.7334796],[0.44444433,1.8885437,0.35532534,-0.82639766,1.279296,-0.86160696,2.6706583],[0.44448185,-0.24610248,-2.495731,-0.89490926,0.11747124,0.62402964,0.5182057],[0.23551048,0.42742857,-0.5775537,-0.6272091,-0.27731383,-0.09396491,-0.51651603],[0.42865852,0.32447976,-0.29923168,0.340756,0.013832209,0.41082326,0.21667421],[-0.32736444,0.4769656,0.977129,0.5856738,0.10249221,-0.54967755,-0.2428743],[0.25369433,-0.2204579,-1.0649059,-0.2733619,-0.049029216,0.4437149,-0.11450898],[-0.24868779,0.44613084,-0.27166238,0.5614397,0.5230158,-0.24676293,0.17946567],[-0.2634003,-0.48613355,-0.04385666,-0.65893304,-0.30746424,0.15454659,-0.53632504]],"activation":"σ","dense_2_b":[[0.19822486],[0.017528722],[-0.010497578],[-0.06445187],[-0.039755665],[0.17356244],[0.025937805],[0.023149397],[0.002431535],[0.006409766],[0.0033689209],[-0.057484128],[-0.2775116]]},{"dense_3_W":[[-0.647888,0.20968881,0.6033078,0.67215437,0.20472567,-0.14839841,0.13453817,-0.14604588,0.00843544,0.2830037,-0.54673946,0.60688186,-0.4934583],[-0.18505706,0.2708935,-0.37541804,-0.3327015,-0.14934263,-0.59043384,-0.5975454,-0.34455526,0.34356502,-0.1237087,0.032155972,-0.11825379,0.032004077],[-0.12307207,-0.14105205,-0.69863325,-0.65025413,-0.45728275,0.5245935,0.46122637,0.372422,0.2177389,-0.6267706,0.32869118,0.34049797,-0.5515101]],"activation":"identity","dense_3_b":[[0.028380467],[0.04344171],[-0.028022127]]},{"dense_4_W":[[-1.151408,-1.0946046,0.9045305]],"dense_4_b":[[-0.033447456]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json new file mode 100644 index 0000000000..debdaaf7d9 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC.json @@ -0,0 +1 @@ +{"input_std":[[8.880729],[1.3764424],[0.4036752],[0.044919465],[1.357929],[1.3648189],[1.3701559],[1.3636794],[1.3427843],[1.3031353],[1.2558507],[0.044844456],[0.04486737],[0.044886783],[0.044833656],[0.044710048],[0.04439941],[0.044009637]],"model_test_loss":0.03750712797045708,"input_size":18,"current_date_and_time":"2023-08-06_03-39-56","input_mean":[[23.76268],[0.025191484],[-0.0054714084],[-0.010682941],[0.027966013],[0.026647689],[0.025542766],[0.022714077],[0.020973299],[0.023003811],[0.02802845],[-0.010661417],[-0.010671549],[-0.010681824],[-0.0107730925],[-0.010828986],[-0.010959005],[-0.011070088]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.5776205],[-0.23610623],[0.105955176],[0.07035416],[-0.44049412],[-4.875287],[0.95284677]],"dense_1_W":[[2.6162603,0.96552926,-1.1709021,0.68316555,-0.83422256,-1.2780359,0.2215925,-0.363209,0.3182224,0.050232545,-0.16977811,0.15275992,0.01305875,-0.24862735,-0.3824611,-0.32907623,-0.08854755,0.29336992],[-0.033986192,-0.4997676,-3.4389174,0.7424149,0.664207,0.14749247,0.5930936,-0.7861187,-1.5643623,-0.66575646,1.7639327,-0.63187826,-0.30908775,0.22797343,0.36383292,-0.43728524,-0.08584815,0.0859059],[-0.399227,0.95630413,-0.00024232137,-0.15680003,-0.657746,0.88117325,-0.28739563,-0.40365663,0.13200954,0.17651056,-0.119062886,0.5858267,-0.21834603,-0.06490571,-0.011869801,-0.46006832,0.055071417,0.16692579],[-0.5654201,-0.9509558,0.00096591073,-0.043163724,0.4077403,-1.0859221,0.6999001,0.40714318,-0.08873732,-0.07508248,-0.009093482,-0.46344966,-0.19199978,0.4810677,0.48018777,-0.28993973,0.41181335,-0.27362508],[-0.027356783,-4.2967224,-0.03678484,-0.32151344,-0.73972255,-2.5777402,-3.2287362,-2.5549042,-1.4497441,-0.43103775,0.6453438,-0.17506233,-0.31516784,0.5563384,0.85075074,-0.57829696,-0.19835036,-0.024371902],[-2.47195,1.7926816,-1.1769953,0.16563822,-0.82507175,-1.0493809,-0.32214803,-1.1703736,0.2470295,0.2510944,-0.11734796,0.13303131,0.030326199,-0.00082738034,0.023316598,-0.33300236,-0.31752133,0.38321474],[2.1512134,1.7400922,-1.7055479,-0.3629506,-1.7764045,-0.28031406,-1.3791944,-0.80302006,-0.122044094,0.8002589,-0.3441996,-0.07645867,0.23166081,-0.38216463,0.64409703,0.11736102,0.22685654,-0.30116174]],"activation":"σ"},{"dense_2_W":[[-0.52089065,-0.064282656,0.9368965,-0.78820074,0.18612167,0.050849117,0.27317494],[0.71986425,0.006931284,-0.083075926,-1.1616415,0.027728708,-0.928848,0.83347905],[0.8144789,0.20632064,-0.71373665,-0.06819771,0.9545801,-0.4286985,0.42867258],[0.71121395,0.06992666,-0.8302117,0.07830932,0.25297147,0.0047203694,-0.0066684796],[-0.5690574,-0.14917742,-0.3785819,0.9758459,0.28018865,0.41372767,-0.21782406],[0.13315567,-0.4577933,-0.1426717,0.19464079,0.008886417,-0.116589725,0.08225403],[-0.9950312,-1.3679215,0.091107205,0.9272021,1.1016536,-1.3227009,-1.2095336],[-0.3986191,-0.9487305,0.38871515,-0.08156303,0.95174986,-0.6304789,0.13525334],[0.2225127,-0.2169731,0.9058736,-0.5802039,-0.24850035,-0.28582534,0.3907818],[-0.5881804,-0.044960845,-0.90182215,0.8056298,0.5574692,1.0463717,-0.5374416],[-1.2164664,-0.40320966,0.53783023,0.27278855,-0.49228838,-0.14903766,-0.8090045],[-1.2831542,0.4933893,0.021853147,0.071227364,-1.4159098,0.76011354,-0.8172033],[0.078262046,-0.5118518,0.22079428,-0.02778036,-0.222457,0.23040481,-0.66731334]],"activation":"σ","dense_2_b":[[0.05072228],[-0.1091474],[0.1004324],[0.021801215],[0.03440032],[-0.07559257],[0.18204498],[-0.008477362],[0.033497173],[-0.15622234],[-0.088286996],[-0.1264465],[-0.09580737]]},{"dense_3_W":[[-0.49234378,-0.12957415,0.5802615,0.4467619,0.590399,0.24340731,-0.5555279,-0.66425663,-0.4981453,0.60517937,-0.56258386,-0.26889455,-0.35886267],[-0.60045487,-0.55883497,-0.3071459,0.07875048,0.5536381,-0.32903612,0.14948905,0.46808386,0.28372547,0.3629737,0.22399715,-0.5433762,-0.15223768],[-0.46732837,0.03954109,0.09032384,-0.38590652,0.39412647,-0.153768,0.03560084,-0.11765058,0.35194537,0.3046047,-0.094702706,0.3176626,-0.32317603]],"activation":"identity","dense_3_b":[[0.051931284],[0.06253407],[0.04909886]]},{"dense_4_W":[[-1.265387,-0.37792373,-0.20574242]],"dense_4_b":[[-0.04775983]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json new file mode 100644 index 0000000000..4a5872bce7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_2022.json @@ -0,0 +1 @@ +{"input_std":[[8.358706],[1.0686424],[0.34114116],[0.044889364],[1.068699],[1.068358],[1.0675814],[1.045456],[1.0242518],[0.99177456],[0.9590156],[0.04477875],[0.04480059],[0.04482342],[0.04474932],[0.04458978],[0.044322193],[0.043946933]],"model_test_loss":0.035726360976696014,"input_size":18,"current_date_and_time":"2023-08-06_06-15-03","input_mean":[[24.615007],[-0.03660665],[0.0016246386],[-0.006489807],[-0.0361033],[-0.035993658],[-0.036171526],[-0.03401853],[-0.031212736],[-0.02772113],[-0.025683384],[-0.0064613656],[-0.0064720884],[-0.006487653],[-0.0065700756],[-0.0065773614],[-0.0066702664],[-0.0067906133]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.9387486],[1.7947302],[-2.419479],[-0.046714567],[-0.07710784],[-0.011005453],[2.2013001]],"dense_1_W":[[1.5500982,-0.562216,0.82173073,1.1276568,-1.1044303,2.0344303,-0.5962017,0.43611562,0.6137577,0.54552734,-0.40140414,0.13477002,-0.33703992,-0.995159,-0.5198411,0.6988811,0.23579559,-0.43389362],[1.9096831,0.4647536,-1.062686,-0.18994598,-0.7350096,1.1260368,-1.2783738,-0.017420385,-0.32890928,-0.6363917,0.1548712,0.10676455,0.18015237,-0.0953862,-0.13519493,0.2339727,0.07321837,-0.04309801],[-1.3224562,0.034447707,0.7349111,0.15789251,-0.54802585,0.91166073,-0.5362905,0.5046039,0.30484954,0.5900371,-0.38941008,0.33457753,-0.27889228,-0.6909375,-0.14148402,0.97603106,-0.13406259,-0.30469695],[-0.0017459231,-0.09968895,-0.014508084,0.23403876,0.836069,-1.5712544,0.19792208,0.34136322,0.15050764,-0.2420643,-0.05131571,-0.09686847,-0.47325152,0.21186271,0.033762608,0.17737845,0.0014673215,-0.12473483],[0.00029148505,-0.6372151,-0.0053334557,-0.05010357,0.99977154,-1.0182008,-0.14067085,0.3974594,-0.2723742,0.04584643,0.073329695,-0.34156838,-0.11684916,0.11896246,0.34009737,0.6478362,0.13086675,-0.43019354],[-0.0077469624,-0.1509263,-3.2484512,0.16014525,-0.5749223,-0.9640095,0.9543776,-0.7414716,-0.7872326,0.2741354,1.5463,-0.3455074,0.08961764,0.027934242,0.045294646,0.23221987,-0.1519019,8.7261986e-5],[2.0402718,-0.72642046,1.1085396,0.08754884,0.35070625,-0.522105,1.2273571,-0.049034014,0.7027618,0.56165534,-0.22607273,0.21941654,0.19681507,0.25899538,-1.0231488,-0.19570431,-0.065851234,0.37131593]],"activation":"σ"},{"dense_2_W":[[-0.60671103,-0.10295715,-0.2275175,0.703453,0.5107893,-0.019612279,0.060930736],[0.32735822,0.09359731,1.1961514,-0.5468047,-0.6979488,-0.8116451,-0.8816686],[0.28230911,0.26441634,0.32522315,-0.2709414,-0.97729933,-0.1853032,-0.6816012],[0.85672635,0.40473634,0.06306575,0.043324664,-0.09925389,-0.6707503,0.48766825],[0.3574693,0.24644808,0.8436976,-0.73305976,-0.87197644,-0.17207824,-0.34952453],[1.2755688,1.0824895,0.84866655,-0.5946056,-0.93967986,-0.64516634,0.18630773],[0.2624753,-0.12604286,-0.24697196,-0.36811814,0.14403982,0.43120542,0.1445742],[0.44066232,0.1534366,0.25932267,-0.65874845,-0.26324567,-0.31705675,-0.831388],[-0.030025106,-0.31389698,0.17181242,0.3696615,0.008856971,-0.5338608,-0.019544462],[0.053924862,0.46772835,0.94262034,-0.71287125,-1.2770078,0.48717985,0.09874367],[-0.5596553,0.1355415,-0.6685472,0.5694037,0.5835357,-0.050862506,-0.30772945],[0.26585215,0.15441975,-0.27715218,0.17482373,0.30534902,0.13441981,0.24543025],[-0.700537,-0.30525044,-0.40211698,0.23966432,-0.07130374,0.3517828,-0.30104256]],"activation":"σ","dense_2_b":[[0.0006462817],[-0.045901865],[-0.08447791],[0.018081808],[0.028199553],[0.15011074],[0.024169737],[-0.07767265],[0.003401174],[-0.09530233],[0.026245346],[-0.019555494],[0.029535577]]},{"dense_3_W":[[-0.4269903,0.38330346,0.3818396,-0.104428,-0.010993002,0.25576162,-0.14891353,0.5712297,0.43450522,-0.18818101,-0.40029064,0.113605164,-0.41539222],[-0.4444491,0.6585591,0.5286078,0.014278995,0.3499434,0.3896106,-0.37057588,0.058567323,-0.5987489,0.35249916,-0.5103405,-0.0007771231,-0.20807561],[-0.5559521,0.25394833,-0.35546854,0.4645985,0.3801913,0.20466149,-0.20871717,0.37793857,-0.093845844,0.5868493,0.12606087,-0.4579316,-0.5141172]],"activation":"identity","dense_3_b":[[-0.039426688],[-0.038285036],[-0.0388908]]},{"dense_4_W":[[0.98477775,0.89640814,0.94241107]],"dense_4_b":[[-0.040733967]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json new file mode 100644 index 0000000000..2d65f4400f --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CIVIC_BOSCH.json @@ -0,0 +1 @@ +{"input_std":[[9.261368],[1.1474106],[0.37148234],[0.044279538],[1.1430647],[1.1446478],[1.1447154],[1.1187278],[1.0942419],[1.0602791],[1.0217831],[0.04425829],[0.044268712],[0.04427185],[0.044111896],[0.04397081],[0.04367603],[0.043223266]],"model_test_loss":0.041262850165367126,"input_size":18,"current_date_and_time":"2023-08-05_23-22-02","input_mean":[[24.15998],[-0.008219966],[0.004739006],[-0.013221193],[-0.008523361],[-0.008609849],[-0.007986069],[-0.006765848],[-0.006281763],[-0.008096367],[-0.011848589],[-0.013220585],[-0.013206273],[-0.013198256],[-0.013279306],[-0.0133954],[-0.01351665],[-0.013652078]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.011715764],[-0.16971639],[0.44084886],[1.8919995],[-0.57473946],[0.3265129],[0.665929]],"dense_1_W":[[-0.035294082,0.58739567,0.0068268306,0.5267725,-1.3068384,2.0108788,-0.8904008,-0.86464506,0.8847079,0.49210623,-0.27763724,0.6851789,-0.11328691,-0.61491024,-0.7021547,0.0578637,0.082666315,0.0749281],[-0.08059325,-0.77528465,0.93356776,-1.1226226,0.030571632,1.2159668,-0.3739228,2.0636218,1.051139,0.24026142,-0.8241013,0.51684606,0.45198372,-0.85868824,0.9150932,0.14920434,0.0996434,-0.23813146],[1.05331,0.6632812,0.586634,0.10609487,-0.16541673,1.0143963,-0.6739981,0.43193975,0.5483419,0.020105261,-0.2659555,0.27416015,0.3780343,-0.38164294,-0.04144785,-0.49568477,-0.6130558,0.6570192],[1.4749159,0.076626115,-0.88682747,0.046201207,-0.23487571,-1.1125354,0.055821165,-0.57242775,-1.03109,0.059293248,0.2898471,-0.65886724,0.19274879,0.39950013,-0.10046821,0.34578046,0.20585975,-0.28454834],[-1.0492898,0.8025768,-0.019681327,0.11809792,-0.3740394,1.1517578,-0.6477998,-0.59586203,-1.4050065,-0.8667816,0.755093,-0.04370645,0.32285377,-0.16848978,-0.21646905,-0.34349748,-0.28047857,0.49415973],[0.056685824,0.9262534,-5.3872395,0.7328496,-1.2155392,-1.1581563,-0.12605561,-1.2297785,-0.95465136,1.0993868,1.4996752,-1.0285505,-0.33488074,0.33622772,0.34516957,-0.14087252,0.36723128,-0.2868416],[0.9570638,0.24864312,-0.017469333,0.54736155,-0.49265823,1.0806886,-0.30185512,0.02353294,-1.477074,-0.70588714,0.615638,-0.07056425,0.046274792,-0.32864115,-0.3693316,0.0012585309,-0.105926886,0.20974532]],"activation":"σ"},{"dense_2_W":[[0.79805297,0.07995367,0.33311036,-0.1088086,-0.28585342,-0.11676164,0.3217794],[-0.6564382,-0.650472,-0.32395652,0.48536372,-0.39954782,-0.9293625,-0.3131151],[0.065390795,-0.36014688,0.035044394,-0.47919765,-0.21676321,-0.68095744,-0.58225524],[-1.4269842,-0.22010052,0.762021,1.5709931,-0.39910436,1.7860814,1.1529905],[0.81025195,-0.19804797,0.2811143,-0.13832566,0.21581413,-0.2242298,0.10002656],[-2.4172528,-2.9861536,-2.1297307,-2.3552132,2.0055087,3.841171,-1.6320437],[-0.15224119,-0.008424982,-0.7476414,-0.7229817,0.34834322,-0.62080944,-0.6412587],[-0.32463408,0.056613863,-0.013071884,-0.057739817,0.5155227,0.12653896,0.14592259],[-0.5659917,-0.43365908,-0.31137735,-0.3897718,-0.26343766,0.8946887,-0.6234644],[-1.2267396,0.0675833,-0.036197066,-0.0106164375,-0.65109164,0.3789509,-0.7397455],[-0.47206897,-0.3735633,-0.4683122,0.17489713,-0.69122815,-0.68286866,-0.23052849],[0.92053163,0.41530177,0.23816848,-0.3726253,0.27367908,0.71565676,0.19845398],[0.22949272,0.53540593,0.100375816,0.39428094,0.19491827,-0.0047999,-0.036115997]],"activation":"σ","dense_2_b":[[-0.080741115],[-0.098717436],[-0.04195425],[0.57887644],[-0.0376275],[-0.7313109],[-0.15826389],[-0.03734272],[-0.17071353],[0.06530881],[-0.16700919],[-0.10229606],[-0.0077384445]]},{"dense_3_W":[[0.6059949,0.4993691,-0.0014475341,0.40003,-0.44542313,-0.71407944,0.2787467,0.16292632,-0.4138824,0.27650607,-0.27067518,-0.14248835,0.17812036],[0.13085166,0.48013842,0.34201995,0.64287025,-0.600294,0.86557233,-0.14552544,-0.08809264,0.41238344,0.7531989,0.587104,-0.4580716,-0.6428474],[0.61981463,-0.5255673,0.47925967,-0.6429044,0.02112309,0.09041386,0.27671653,-0.054121528,-0.24291937,-0.610705,0.07889088,0.042044822,0.39591196]],"activation":"identity","dense_3_b":[[0.007450639],[-0.024559],[0.020729255]]},{"dense_4_W":[[0.2550702,-1.0187347,1.2050446]],"dense_4_b":[[0.021735787]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json new file mode 100644 index 0000000000..6a5716e62e --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CLARITY.json @@ -0,0 +1 @@ +{"input_std":[[6.17857],[0.44787604],[0.5243947],[0.032028187],[0.44404522],[0.4443511],[0.44520274],[0.45595846],[0.4604483],[0.47209886],[0.4884655],[0.03209721],[0.03205],[0.03203256],[0.03195497],[0.031864975],[0.03177169],[0.03154828]],"model_test_loss":0.0009851785143837333,"input_size":18,"current_date_and_time":"2024-01-04_15-35-20","input_mean":[[21.90655],[-0.29117808],[-0.08760989],[-0.009034546],[-0.2664771],[-0.27346689],[-0.2819304],[-0.3144748],[-0.33650345],[-0.36093968],[-0.38976616],[-0.009162463],[-0.009145338],[-0.009107736],[-0.008843513],[-0.008647824],[-0.0083346395],[-0.007997973]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.06760431],[-0.2907365],[-0.4082806],[-0.20224898],[0.29265383],[0.26244283],[0.15451357]],"dense_1_W":[[0.014618384,0.37313232,0.035592113,-0.3403019,0.033235013,0.24829742,-0.49047577,0.28937504,-0.2026583,-0.2760167,0.21064562,0.08079155,0.11982211,0.042024616,-0.052886724,-0.06286289,-0.13398048,0.13160145],[-0.0048215007,0.30684328,0.020128243,-0.41616872,-0.20515934,-0.2511921,-0.13518195,0.37878683,0.26875132,0.113668166,-0.27679917,0.66174066,-0.052989658,-0.1855979,-0.02353523,-0.30120054,0.091657996,0.09602743],[-0.0042930744,-0.15373556,0.08812353,-0.31896785,0.019456651,-0.20545581,0.05433538,-0.23081444,0.43445846,0.11084425,-0.0024109932,-0.6938004,-1.024248,-0.4391781,-0.0550922,0.07583203,0.79354477,-1.8509296],[0.04390958,-0.18022121,-0.08688032,0.19231437,-0.14530687,-0.27636525,0.4690427,0.4344902,0.16017663,-0.25027603,-0.2452524,0.5537437,0.13898967,0.038036723,0.6355534,0.5031342,1.3155322,-0.14124991],[-0.006398488,-0.7886078,0.03451426,-0.054085355,0.25506452,0.4975867,1.0672406,-0.27192074,-0.91774124,0.2306121,-0.3410087,-0.16050793,0.15241678,-0.17949696,-0.31961542,0.22702731,0.419533,0.00035671022],[-0.0077034663,-0.78213346,-0.016133381,0.10805307,0.14032482,0.36524558,0.12367749,0.24540052,-0.059624504,-0.3247948,0.021967877,-0.039682694,-0.2721095,-0.10098841,0.21639878,-0.22641253,0.14136238,0.19991797],[-0.048534065,-0.20369655,0.07626118,-0.31831193,0.2750742,-0.2912584,0.088218614,0.09158782,0.06355577,-0.23128918,0.2086949,-0.44672933,0.2343581,-0.052767944,-0.26756912,-0.29403126,-0.0006949583,-0.3037349]],"activation":"σ"},{"dense_2_W":[[-0.19747548,0.3752813,0.005352072,0.22516197,-0.279574,-0.29499897,0.514051],[-0.23818707,-0.442092,0.21234472,-0.5240696,-0.666385,0.13287802,-0.70440364],[-0.12623425,-0.12563375,0.17045951,-0.4611073,0.13094379,-0.2603494,-0.578133],[-0.3201878,-0.472269,-0.45254824,-0.17459284,-0.13989829,-0.07893383,-0.15434109],[0.6313669,0.59430647,0.029979968,0.40872103,-0.6338095,-0.48483965,-0.16215326],[0.12921973,-0.35855725,-0.6317136,-0.24155544,0.018117908,0.6665686,-0.09261251],[-0.5263865,-0.500698,0.26361403,0.1989874,0.16189028,0.4017576,-0.50330746],[0.19345485,0.0116930995,-0.1151553,0.38370124,-0.51925737,-0.66009927,0.54345274],[-0.10049859,-0.07803794,-0.05125394,-0.5760374,0.22012971,-0.4562151,-0.24986024],[-0.035831526,0.17925176,0.08670547,-0.6276373,-0.24000542,0.09890566,0.005909479],[0.026487896,0.10827987,-0.5441871,0.10627476,-0.12671272,0.25334272,0.090102024],[0.11269248,-0.5982834,-0.20034944,-0.4165159,0.48223287,0.06892533,0.32945293],[0.14122471,-0.84526354,-0.102686554,-0.42417887,-0.056950103,-0.013891049,-0.043740742]],"activation":"σ","dense_2_b":[[0.021066276],[-0.18323943],[-0.08896128],[-0.059529945],[0.01516111],[-0.03864309],[-0.01915316],[0.0072613885],[-0.13141903],[-0.1963338],[-0.20056123],[-0.0918762],[-0.09109566]]},{"dense_3_W":[[-0.5145814,-0.15164766,0.41466355,0.5054458,-0.56660354,0.37653998,0.2958398,0.1300162,0.15582272,-0.14694406,0.089647524,0.0200251,-0.6487758],[0.18533824,-0.14857687,0.36485723,-0.25733942,-0.5232801,0.39276004,0.36414713,-0.54408604,-0.4820063,0.19759995,-0.12671192,0.39148358,0.189427],[0.5235357,-0.23839255,0.41131777,-0.43199104,-0.042662866,-0.042696618,-0.30467755,-0.119463064,-0.49081296,0.2406254,-0.07923712,-0.0021057576,-0.42410713]],"activation":"identity","dense_3_b":[[-0.036107603],[-0.036152013],[0.03689696]]},{"dense_4_W":[[-0.48288086,-0.87119794,0.8186898]],"dense_4_b":[[0.0358588]],"activation":"identity"}]} diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json new file mode 100644 index 0000000000..56b5e6782c --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_5G.json @@ -0,0 +1 @@ +{"input_std":[[9.079519],[1.117335],[0.32821873],[0.04513038],[1.1160785],[1.1158687],[1.1147403],[1.0893666],[1.0659956],[1.0314285],[0.99783367],[0.04497426],[0.044967793],[0.044959538],[0.04481279],[0.044600893],[0.044237226],[0.043830905]],"model_test_loss":0.05013991519808769,"input_size":18,"current_date_and_time":"2023-08-06_08-46-45","input_mean":[[24.945726],[0.056781527],[-0.006332743],[-0.0054867254],[0.057909872],[0.057552766],[0.05728289],[0.054190118],[0.05235296],[0.048357345],[0.0448629],[-0.005489833],[-0.005468405],[-0.005448704],[-0.005441959],[-0.0055107307],[-0.0055533946],[-0.005588048]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.3742944],[2.0560386],[0.070786394],[0.08766052],[-7.2637663],[4.9462605],[0.020425294]],"dense_1_W":[[-0.88963157,0.47497272,1.1810282,0.6939777,-0.36621186,1.347931,-0.7933228,0.85621536,0.66951233,-0.11786804,-0.6730566,0.112765215,-0.28919625,-0.33895963,-0.62124485,0.25326887,0.21473351,-0.12489331],[1.223516,-0.036567718,-1.247157,0.09799731,-0.97558075,0.16902182,-1.0449882,-0.046705905,0.29223862,0.30116007,-0.09839103,0.46722287,-0.0449582,-0.39868206,0.07668579,-0.11536017,-0.0691049,0.10267897],[0.018545184,0.81794965,3.4399781,0.052234847,-0.4958513,0.38696352,-0.638153,0.87363166,0.86702484,0.7031613,-1.9006683,0.85754114,0.8998447,-0.52486235,-1.0076646,-0.66781485,0.2555468,0.17366274],[0.0037442108,1.4584165,0.0061913775,0.24082592,-0.7234466,1.0945269,-0.21835686,-0.038823094,-0.20537247,-0.4526858,0.3522938,0.7368147,-0.4907756,-0.72209734,-0.3003073,0.24139397,-0.27028123,0.28593597],[-3.720445,0.5471661,-2.9256604,-0.84999114,-0.35371152,-1.650107,-0.30913082,-1.5157434,-1.4253404,-0.5012027,1.8229349,-0.22352915,0.07850824,1.2852895,-0.17709053,0.0015369024,0.4303836,-0.3013633],[2.7063103,0.4795686,-2.1412866,-0.37747622,-0.52522975,-1.1443468,-0.3860132,-0.81000876,-0.8656079,-0.38408586,1.1732165,-0.33476815,0.35176495,0.67967117,-0.24029131,-0.15793729,0.59702957,-0.33229384],[0.003850781,1.0522044,0.0023779364,1.4077666,-0.2233461,-1.323892,0.2490657,0.9962225,-0.21043883,-0.48657963,0.0066762604,-0.8950598,-0.65639627,-0.10381974,-0.033756495,0.3061354,-0.09620744,0.075370125]],"activation":"σ"},{"dense_2_W":[[0.01117936,0.6720228,0.39750826,0.30468678,-0.34063298,0.11394216,-1.026796],[-0.07938874,-0.29046267,-0.15366286,-0.94418544,0.72881997,-0.072467156,1.1634737],[-0.7841681,-0.38053507,-0.48102236,-0.7339148,-0.94196475,-0.09320883,0.17724545],[-0.11575878,0.41173506,0.7931331,0.7659729,0.45459372,-0.4762705,0.04162107],[-0.54039043,-0.6239058,0.12097131,-1.0940313,0.6270558,0.8035503,0.8422599],[-0.006883268,0.1846561,0.4628913,0.89182067,-0.281233,-0.5460564,-0.49594778],[-0.37237987,-0.50528663,-0.34381047,-0.9888458,0.66827786,0.75729847,0.9049922],[-0.6351278,-0.39599782,-1.7942646,0.2172901,1.2180948,-1.0186263,-0.29467586],[0.098499954,-0.7321613,-0.4204465,-0.5589947,-0.49682683,0.02701407,-0.56642413],[-0.055568255,-1.0158917,-0.13512869,-0.75265217,0.32634935,-0.10900366,1.1009233],[0.9196104,-0.29001886,0.27778128,0.40752462,-0.71603805,-0.78771234,-0.2509219],[-0.27494332,-0.27294615,-0.87608117,-0.5456548,0.23442413,0.46402624,0.4014235],[-0.0657572,0.39627385,-0.032163464,0.37446278,0.30043706,-0.3939967,-0.17288771]],"activation":"σ","dense_2_b":[[-0.12896457],[-0.06757774],[-0.29207176],[0.057776056],[0.03819644],[-0.0075618257],[0.022483658],[-0.30520216],[-0.30780953],[-0.22291888],[0.073764615],[-0.11618854],[-0.0932309]]},{"dense_3_W":[[-0.20723751,0.46280366,0.37977389,-0.28764504,0.56071246,-0.42746708,0.743715,-0.41921702,0.39859435,0.35315046,-0.18542276,0.28128248,-0.18067148],[-0.6656129,-0.15142722,-0.022595402,-0.48696524,0.37018472,-0.6183299,0.50862163,0.035134673,-0.46468532,0.35520592,-0.6777795,0.2590716,0.46181098],[-0.32565305,0.33916017,-0.4280441,-0.21963115,0.6359937,-0.44887698,0.2442765,0.13551079,-0.47778323,-0.4541174,-0.59640217,0.13698937,-0.27695638]],"activation":"identity","dense_3_b":[[-0.07102677],[-0.02868969],[-0.030784609]]},{"dense_4_W":[[-1.024929,-0.3087716,-0.3174253]],"dense_4_b":[[0.053275082]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json new file mode 100644 index 0000000000..afdbdefee7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_CRV_HYBRID.json @@ -0,0 +1 @@ +{"input_std":[[9.167076],[0.8396103],[0.39224938],[0.038149882],[0.83500266],[0.8364939],[0.83795094],[0.8280286],[0.82101065],[0.80936265],[0.79514086],[0.03816296],[0.03813872],[0.0381162],[0.037860528],[0.037643477],[0.03726596],[0.036896862]],"model_test_loss":0.019166288897395134,"input_size":18,"current_date_and_time":"2023-08-06_11-19-09","input_mean":[[24.623522],[0.012142224],[-0.0077460455],[-0.0040752436],[0.01259905],[0.011912992],[0.011499013],[0.008575823],[0.006231978],[0.001843956],[-0.0011071449],[-0.0041566766],[-0.004162808],[-0.0041667568],[-0.0041206917],[-0.004187086],[-0.004389174],[-0.0045910473]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.10681055],[-0.05877009],[-5.810432],[0.108804524],[5.817238],[-1.4135033],[-0.04275369]],"dense_1_W":[[-0.010944928,0.298581,-0.0004137291,0.46320775,-0.68514436,1.5652411,-0.62197584,-0.70986384,-0.07209713,0.14426921,0.09893353,0.2957121,0.24033338,-0.63492715,-0.24635397,0.21067435,0.16446242,-0.4790833],[-0.002262276,-0.7669907,0.0011565682,0.2969979,0.11738408,-1.199179,0.32905388,0.35275638,-0.34200913,0.22103965,-0.188085,-0.00050096336,-0.36091766,0.18886286,0.356193,0.50661796,-0.18447432,-0.3530909],[-2.7729337,-0.046491493,-2.223908,0.51880556,-1.5391709,-1.8928696,1.8811203,0.22442053,-0.20638244,0.44581792,-0.10464485,-0.11026335,-0.41476744,0.71887964,-0.6184063,0.07461815,-0.70264786,0.5291843],[0.088751696,-0.7015499,-2.262332,0.07993792,-0.5452428,0.36403584,-0.888494,0.26214746,0.52286375,0.47499555,0.12439757,0.32842526,-0.22486946,-0.2082452,0.2083624,0.20134373,-0.26366135,0.040187743],[2.7838297,0.36513317,-2.2177417,0.17293313,-1.3490273,-1.395796,0.7361196,0.024529908,0.0147317415,0.50988925,-0.16947655,-0.14311421,-0.13544203,0.6211999,-0.28396562,-0.19654925,-0.4721205,0.44046035],[-1.0456268,0.006558085,0.029179003,-0.24681818,0.33209732,-0.31439346,1.0280732,1.6322477,0.33988294,-1.1288414,-0.7784953,-1.3079332,-0.922044,-0.7579679,-0.7932985,0.090359144,2.2930832,3.7051785],[-0.032393374,0.15797108,2.6865292,-0.022740832,0.7215196,0.9335919,-0.9160322,0.63953984,-0.10847628,-0.41109005,-0.58336747,0.8728414,0.2319681,-0.77523047,-0.6650054,-0.19625007,-0.0422657,0.4323157]],"activation":"σ"},{"dense_2_W":[[-1.0469242,2.310652,2.5330374,-1.1560289,0.87019974,-0.24008566,-2.4145112],[-1.5431111,1.6602669,1.4227277,0.44263628,2.124669,-0.881401,-1.636305],[-0.7812676,0.3887846,0.046831988,-0.0021416398,0.0068075457,0.26359168,-0.40856928],[0.5853211,-0.020535953,0.1977803,0.11166494,-0.7388882,-0.6265164,0.19296904],[-1.4384844,-0.07708128,-0.62513274,0.1822617,-0.83729374,-0.20433801,0.08106154],[0.79002935,-0.51513207,-0.17725268,0.70090765,-0.37455943,-0.00461776,0.6140211],[0.38233972,0.11824663,-0.048423085,-0.22234191,0.071728714,0.09328836,0.5405535],[1.0066482,0.12065403,-0.67822254,0.91310203,0.3381496,-0.46563134,0.6765602],[-0.058819644,0.04884941,0.44360304,-0.16011114,-0.493316,-0.18134312,0.31395072],[-1.1391008,1.2845155,0.65725374,-0.75513005,1.1359249,-0.5923027,-0.46509168],[-0.28455976,0.122011006,0.19924502,-0.016063396,-0.19426562,-0.7366286,-0.30496517],[-1.1961275,-0.44696903,0.2981926,-0.6047452,0.60021174,0.7954056,0.67303944],[0.66179645,-0.35565352,0.4263759,-0.23354627,-0.5218455,-0.14847569,-0.45979464]],"activation":"σ","dense_2_b":[[-0.70381194],[-0.41715994],[-0.18704335],[-0.20373428],[-0.23588026],[-0.022451308],[0.010537296],[0.10221664],[0.014627381],[0.060474735],[-0.033638965],[-0.051280532],[-0.20772089]]},{"dense_3_W":[[0.15796849,0.6079072,0.5830924,-0.5528727,-0.1478945,-0.27996355,-0.30358565,-0.6117205,0.22281085,0.6154891,0.0165758,0.616245,-0.5880501],[-0.1846488,-0.46482992,-0.33469623,-0.15623315,-0.20466302,0.642436,0.34555972,0.60815287,0.43956748,-0.5986671,0.3041771,-0.26802206,0.03272353],[-0.88071394,-0.01339668,-0.4710771,-0.08369313,-0.47736472,-0.29117015,0.5252153,0.36675686,0.37659007,-0.38053805,0.07111416,-0.030936832,-0.3208197]],"activation":"identity","dense_3_b":[[-0.04642651],[0.037014484],[0.055794742]]},{"dense_4_W":[[-0.5493109,0.48931855,0.5176042]],"dense_4_b":[[0.04616592]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json new file mode 100644 index 0000000000..87a91229aa --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_HRV.json @@ -0,0 +1 @@ +{"input_std":[[7.1964235],[0.87585396],[0.34334365],[0.04189015],[0.88570154],[0.8828632],[0.8788816],[0.85152715],[0.8326557],[0.8105437],[0.790872],[0.041831378],[0.04184441],[0.041850727],[0.041653063],[0.041487437],[0.041109927],[0.0406368]],"model_test_loss":0.016751321032643318,"input_size":18,"current_date_and_time":"2023-08-06_13-52-18","input_mean":[[27.281948],[0.057562165],[0.025426663],[0.001435362],[0.049740613],[0.051872276],[0.053928934],[0.06504589],[0.07349952],[0.08201744],[0.088106535],[0.0013536362],[0.0013746973],[0.001394585],[0.0014019185],[0.001435841],[0.0014179434],[0.0013371226]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.0041493755],[0.21777502],[0.7115575],[-2.2624984],[0.10148076],[-1.9139864],[-2.6148589]],"dense_1_W":[[0.0027682746,-0.5923534,-0.0008324875,-0.96639884,-0.43687794,1.0992304,0.44394565,-0.15681875,-0.19448969,0.23627451,0.027064066,1.0438472,0.38998574,-0.3910353,0.07241692,-0.3872127,0.24487913,-0.00981091],[-0.0063605076,0.41579154,4.60037,0.15178576,-0.41990525,-0.9291791,-1.8990772,-1.2513685,1.3644165,1.6527833,0.822613,0.6267062,0.3986885,-0.65917814,-0.68864816,0.038168486,-0.43694118,0.5313064],[0.1826715,0.21753219,2.6482086,0.49831605,0.04197241,0.48248503,-0.85676134,-0.088123225,0.5933527,-0.101084374,-0.07996661,0.39820936,-0.25201222,-0.5013944,-0.18441774,0.085484736,-0.20741902,0.15278186],[0.20413034,0.7558973,0.0039974884,0.09515875,0.023952896,0.12318843,-0.24863702,0.28330338,0.598279,-0.0031794424,0.12692909,0.26882735,0.002343814,-0.20356114,-0.4958486,-0.2599618,-0.3243958,-0.15502147],[0.0008160921,-0.75155866,3.2958338,0.18005188,-0.48001406,-0.37221822,-0.014907395,0.34556574,-0.36695525,0.5220802,0.9252095,-0.6326275,0.31536806,0.40089336,-0.24786693,-0.16599582,0.26964852,-0.11618827],[-0.6374511,0.50671804,3.4275095,0.45084175,0.014429362,0.16759996,-0.40217194,-0.1596027,0.27413476,-0.020348325,0.03291187,0.29519597,0.0606238,-0.77494323,-0.04082934,-0.019097991,0.021767832,0.017387142],[0.24087234,-0.5286611,-0.0010711186,0.50206137,-0.37612498,-0.065321624,0.3152248,-0.3156515,-0.31909347,-0.5960725,0.07865838,-0.57626325,-0.28874642,0.36706463,0.55150944,0.021375967,0.53079313,0.0685934]],"activation":"σ"},{"dense_2_W":[[-0.61061996,-0.3219788,-0.61355484,-0.41679764,0.9514292,0.089833274,-0.08153515],[0.5216678,0.35865775,0.14493388,0.75064963,-0.9559691,-0.11178071,-0.26124665],[-0.07039463,-0.54774076,-0.7926992,-0.28961974,0.25917596,0.06013633,0.6089615],[-0.29096878,-0.55007404,-0.6435847,0.022112146,0.31680974,-0.22504552,0.35249886],[-0.6804567,-0.94920105,-0.8136485,0.3378733,0.597489,0.46872833,0.28344125],[-0.8909486,0.17668937,-0.50494355,-0.51266,0.76238817,-0.08368523,0.21360965],[-0.08500846,-1.3190831,-0.40328535,0.17221951,0.9102355,-0.42406878,-0.14185876],[0.41169032,0.12483639,-0.43139625,1.0178162,-0.7741975,0.49720922,-0.0029358894],[-0.11413294,0.35335183,0.5509884,0.60089856,-0.07613763,-0.18951175,-0.5859379],[-0.30574977,0.66385657,0.29187888,0.15835138,-0.13989422,0.93255055,0.16954228],[0.9125405,0.33926046,-0.45827863,0.20637102,-1.3337029,0.99624145,-0.6220122],[1.0066077,0.5247419,0.3793085,0.006325064,-0.7290911,-0.32310325,0.17187376],[-0.6349526,-0.62067527,-0.291574,0.05529339,0.7121756,-0.08375974,0.22644123]],"activation":"σ","dense_2_b":[[0.04084762],[-0.06363596],[0.024858473],[0.10673008],[0.13199006],[0.10104594],[-0.008044478],[-0.10162189],[-0.15080203],[-0.11178794],[-0.24866438],[-0.17219713],[-0.008406249]]},{"dense_3_W":[[0.40549794,-0.4494019,0.2861901,0.37104332,0.5890352,0.58301944,0.40222168,-0.49054152,-0.31034032,-0.07984426,-0.5973653,-0.20854333,0.5224267],[-0.6481895,0.81970197,-0.5651685,-0.54807013,-0.5982727,-0.21111657,-0.7437358,-0.18910314,-0.22034706,0.69472176,0.7825804,0.5047144,0.30723065],[-0.2815957,-0.25135168,-0.03530872,-0.47208393,-0.14322938,0.72277945,0.027914466,-0.113597095,-0.31811848,0.057283014,0.22687551,0.074457414,0.35829133]],"activation":"identity","dense_3_b":[[-0.064762406],[0.042542093],[0.06525171]]},{"dense_4_W":[[-1.0957879,0.49216008,-0.0023324802]],"dense_4_b":[[0.054476205]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json new file mode 100644 index 0000000000..7125acea96 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_INSIGHT.json @@ -0,0 +1 @@ +{"input_std":[[8.603165],[0.968196],[0.31648555],[0.043116625],[0.97207046],[0.97122186],[0.9696193],[0.9440986],[0.9209154],[0.89170784],[0.8635297],[0.0430813],[0.043076806],[0.043065626],[0.04281562],[0.042584687],[0.0422511],[0.041811552]],"model_test_loss":0.0409439355134964,"input_size":18,"current_date_and_time":"2023-07-18_02-56-25","input_mean":[[26.58399],[0.02317232],[0.002863659],[-0.0103310775],[0.023948237],[0.024388459],[0.024497893],[0.02269405],[0.02217117],[0.02469916],[0.02554692],[-0.01046288],[-0.010425196],[-0.010389729],[-0.0103868665],[-0.010423806],[-0.010380345],[-0.010442573]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.7315183],[-2.0931118],[-0.08195505],[-0.07830412],[0.17271917],[-4.8443527],[1.3409065]],"dense_1_W":[[1.3492318,0.050542787,-2.0778215,0.23633496,-0.18946455,0.08569419,-1.1538246,-0.56782997,-1.1068271,-0.28026178,0.6351039,-0.5325991,-0.16680008,-0.6554269,0.7481424,0.39339453,-0.037751142,0.12015114],[-0.8597578,1.2366588,1.7126143,-0.63454264,-0.43808976,0.8164015,-0.69233084,0.61550444,0.9666506,0.42250025,-0.7908081,0.5167161,0.30983937,0.048737403,-0.14529826,0.22033516,-0.09019369,-0.3203758],[0.051401302,1.1819376,5.170329,-0.33289638,-1.3051468,0.29249665,-0.37950587,0.86728233,1.2912674,0.83467674,-2.1016138,1.439997,0.83915204,0.022718783,-1.1455536,-0.6881879,-0.294737,0.1764151],[0.13776821,-0.616747,-0.0515103,0.09284325,0.5059833,-2.2745788,0.8794392,0.23675422,0.050319634,-0.16485108,0.022945715,-0.55973744,-0.19152954,0.5871755,0.48204577,0.43679258,0.084300846,-0.48278216],[0.32304537,-0.17996605,-0.050503615,0.057818476,-1.1874164,0.93133926,-1.135065,-0.2207176,0.5842914,0.26639673,-0.4034041,0.74324435,-0.26271045,0.25194508,-0.33687708,-0.11164587,-0.21532725,0.31314066],[-2.675871,0.18930794,0.004894184,0.36429468,-0.28649125,1.037061,-0.8956486,-0.2692209,0.13867386,0.14524221,-0.07555664,0.13616084,-0.29872495,0.0028986863,-0.50115776,0.32039323,0.062777095,-0.08310216],[0.82229155,0.4732484,1.5131059,0.062322427,-0.036212314,0.24138685,-0.46806708,0.7292275,1.3152804,0.55548984,-1.013016,0.65633196,0.2736623,-0.5331334,-0.49591142,0.22494234,0.028473936,-0.29246685]],"activation":"σ"},{"dense_2_W":[[-0.07206964,-0.69786,-0.3486531,0.48960513,-0.0696577,-0.49357864,0.2556807],[-0.2884806,-0.41657805,-0.3665416,0.15454409,-0.028397316,-0.2936546,-0.16180961],[0.803782,-0.27441671,0.8961105,-0.4721216,0.7000408,0.5584937,0.4574221],[0.2588418,0.21096861,-0.08602997,-0.7243836,0.6489519,1.1368387,-0.47698346],[0.5214179,-0.4379109,-0.10204686,0.5734521,-0.5929383,-0.35884753,0.059597526],[0.7346847,-0.71839786,-0.044602457,-1.2187109,-0.13774236,-2.6510515,-0.51899457],[-1.7133079,-4.6997886,-0.25009632,0.4603738,-0.87082464,3.0611444,-3.0963175],[-0.048846636,0.91797,-0.31641433,-0.20087503,0.10279341,0.38753894,-0.038774494],[0.15197727,-0.81371284,-0.12212125,0.7514405,0.32369855,-0.2520269,-0.50490427],[0.25197092,0.8954266,0.3530475,-0.9002343,-0.6774651,0.55687094,-0.2753792],[0.9715217,0.11435808,0.7430187,-0.18673508,0.24399346,0.75376093,0.18281539],[0.07828533,0.40924087,-0.0052447147,-0.87007385,-0.16614385,0.75889,-0.09113192],[-0.42538083,-0.6130854,-0.18442006,0.81436867,-0.4363763,-0.4421119,-0.20321086]],"activation":"σ","dense_2_b":[[0.21890728],[-0.08548715],[-0.08091435],[-0.101685315],[0.10115151],[-0.14451991],[0.54433477],[-0.21013816],[-0.0104931025],[-0.4982431],[-0.1676464],[-0.31867242],[0.17811179]]},{"dense_3_W":[[0.7400645,-0.16807431,-0.12028546,-0.58515614,0.34891638,-0.5609874,0.7747953,-0.06871472,-0.044812664,-0.26168486,-0.2864116,-0.4026426,0.7852125],[0.13187477,0.58926487,-0.62580276,-0.043964617,0.5385393,0.07869039,0.43877578,-0.6161494,0.4016125,-0.06597045,-0.4159714,0.23538205,0.7423825],[0.11068092,0.26080158,0.051800307,0.3499296,-0.56061244,0.5514093,-1.840586,-0.14135396,-0.050766982,0.4223278,0.39574477,0.30749676,-0.8040509]],"activation":"identity","dense_3_b":[[0.034426726],[0.022138074],[-0.039126255]]},{"dense_4_W":[[-0.8798318,-0.64988774,0.49071792]],"dense_4_b":[[-0.03172631]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json new file mode 100644 index 0000000000..760d358b61 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_ODYSSEY.json @@ -0,0 +1 @@ +{"input_std":[[8.67131],[1.0606116],[0.3141555],[0.047306955],[1.0598024],[1.059542],[1.058586],[1.0353245],[1.0132898],[0.98134106],[0.9488499],[0.0472228],[0.047223553],[0.04722212],[0.047007233],[0.04672726],[0.046201415],[0.045611456]],"model_test_loss":0.030893046408891678,"input_size":18,"current_date_and_time":"2023-08-06_16-03-17","input_mean":[[24.826109],[-0.0015730427],[-0.0024845933],[-0.006542893],[-0.0021615939],[-0.0027822834],[-0.0034116579],[-0.002972936],[-0.0019527061],[-0.0018800201],[-0.00055315095],[-0.0066206236],[-0.0066137947],[-0.0066051884],[-0.0065096957],[-0.00645474],[-0.0064896797],[-0.0065450436]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.0666385],[-2.1265264],[-0.009373159],[2.1585333],[0.037653618],[-0.017867725],[3.2116225]],"dense_1_W":[[1.1914837,-0.5645276,6.58303e-5,-0.11589882,0.37734768,-0.27381,-0.19863185,0.824706,0.4373293,-0.20449224,-0.15180561,0.35472932,0.3237236,-0.10154249,-0.578405,-0.2772973,0.10017485,0.25640446],[-1.0303509,0.29729548,1.9708672,-0.5768468,-0.028354015,0.42035812,0.3361436,0.3343814,0.37328744,0.8638404,-0.2677837,-0.15447378,0.49736965,-0.08687722,-0.66492444,-0.032154877,1.1899335,-0.48110774],[0.01983638,-0.24834296,-3.3855686,0.6749708,0.07187869,-0.024789268,0.37607005,-0.47755113,-1.0089839,-0.81658024,1.3305435,-0.97285813,-0.6226301,0.6422294,0.9579225,0.49827808,-0.48402268,-0.29993263],[1.2045997,0.62863886,0.0019727307,0.17700921,-0.8630537,0.98878884,-0.16361095,-0.29803157,-0.7254775,-0.15229262,0.3722205,-0.22486125,-0.06222317,-0.37571073,0.4424153,0.06388154,0.5859267,-0.56900877],[-0.013524671,0.31598365,0.0006406281,-0.25858632,-0.27701482,0.7357323,-0.35521507,-0.4483451,0.44878978,0.2829642,-0.2362616,0.62810344,-0.121423006,-0.38609955,0.0749125,-0.17727378,-0.38110465,0.35318217],[-0.0052065155,-0.5593012,0.002159691,-0.08422028,0.23008162,-1.022624,0.32955936,0.431307,-0.1006895,-0.030441636,-0.08401783,-0.3437167,-0.22863047,0.7158902,-0.17199361,0.09197799,0.19186375,-0.1833609],[1.4867296,-0.15920977,2.3333318,-0.23857078,-0.0040042745,1.2148064,0.10699171,0.22722282,0.5444096,1.349413,-0.47866884,0.40205494,-0.11314535,-0.5150614,-0.4630753,0.030254288,0.7952247,-0.2603006]],"activation":"σ"},{"dense_2_W":[[-0.17723514,-0.23341042,0.57393736,-0.4927488,-0.927548,0.58540887,-0.5868284],[0.66296387,0.29695207,0.20052847,-0.62608564,-1.0550549,1.0728254,0.0891513],[-0.16829221,-0.0679403,-0.36510104,0.23858383,1.1178643,-0.6089432,-0.31060657],[-1.8900537,-0.27381107,-0.5241167,-0.7089269,-1.1469728,-0.0641088,-0.41346708],[-0.51642907,-0.43836012,-0.31121448,0.47541407,1.169322,-0.2952497,-0.37012473],[0.8616518,0.12941492,-1.1983941,1.7177894,1.0778812,-1.3677566,1.5917606],[-0.407816,0.042307053,-0.53986156,0.5610484,0.7355027,-0.8320296,0.05677452],[1.4589415,-1.2519528,0.8708634,0.6212387,-0.9204132,1.7146589,0.13543351],[-0.055101812,-0.19029272,0.013408977,-0.46497017,-0.92594385,0.9864242,0.13991055],[0.5894197,-0.28149623,0.41216704,0.216877,-0.51424307,0.83235174,0.14314461],[-2.6734824,2.668342,-1.7240498,-1.0608208,0.54306996,-1.3263385,-0.19313851],[-0.82157856,-0.23220612,1.0158018,-2.0316136,0.06581752,0.7996686,-1.5219475],[0.5740489,0.18412288,-0.14555724,-0.5847231,-1.1873335,1.0647899,0.008006016]],"activation":"σ","dense_2_b":[[-0.29801813],[-0.25020108],[-0.022192547],[0.026752593],[-0.027117254],[0.30578387],[0.053404447],[0.23486306],[-0.07118241],[-0.09914868],[-0.18535325],[-0.32233533],[-0.04571355]]},{"dense_3_W":[[0.43566743,0.43129563,-0.6076586,-0.46461692,-0.40563574,-0.60545087,0.47773033,0.15361485,0.54101425,-0.14459106,-1.1077414,0.30648795,0.5856095],[0.07340811,-0.49523342,0.6213182,0.19087262,0.06972069,0.8834424,0.5443848,-0.50467765,-0.38180703,-0.4638601,0.65264165,-0.8575672,-0.5819035],[0.33573294,0.619451,-0.046216093,-0.66367626,-0.64414126,-0.084879674,-0.60994107,0.5997581,-0.2552046,0.10798684,-0.29609105,0.45087123,-0.3904423]],"activation":"identity","dense_3_b":[[0.064981125],[0.043677732],[-0.029785963]]},{"dense_4_W":[[-0.35612056,0.9586297,-0.2525408]],"dense_4_b":[[0.03888263]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json new file mode 100644 index 0000000000..713bb4a0c5 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_PILOT.json @@ -0,0 +1 @@ +{"input_std":[[8.118591],[1.012343],[0.30252126],[0.04747358],[1.0110137],[1.0105052],[1.0093575],[0.98329234],[0.96060896],[0.93123335],[0.90310067],[0.04717917],[0.047231637],[0.047265887],[0.047122534],[0.046797972],[0.046346754],[0.045773227]],"model_test_loss":0.03557046875357628,"input_size":18,"current_date_and_time":"2023-08-06_17-27-23","input_mean":[[24.204573],[-0.024622405],[0.0015252293],[-0.0032674451],[-0.023904368],[-0.02417538],[-0.024461435],[-0.023585865],[-0.021832237],[-0.020321053],[-0.019801456],[-0.0032891335],[-0.0032849729],[-0.0032711467],[-0.0032068372],[-0.0030881383],[-0.0030222118],[-0.0030280964]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.7401334],[-4.296874],[0.051964045],[-1.5580355],[0.59131175],[0.9876563],[-0.059906512]],"dense_1_W":[[0.39198807,0.14618506,-0.0005603469,0.5384161,0.583554,0.90904,-0.9356289,-0.347572,0.054832783,-0.01266942,0.20926124,0.40405145,0.26462293,-0.5968776,-0.4170079,-0.24383324,-0.36820978,0.23693004],[-1.4237757,0.44019157,1.7405101,0.107415356,0.73406404,0.38215244,-0.6587738,0.6303781,0.9956125,0.3772358,-0.60114783,0.28546256,-0.21894793,-0.5291562,0.028785085,-0.0466827,-0.02260468,-0.14874777],[-0.011811628,0.5467675,3.1406043,-0.5367604,0.16197537,0.72486085,-1.0583096,0.6693704,0.23038347,0.16671906,-0.6996211,0.9920219,0.24508859,-0.8121351,-0.11340726,-0.124802016,0.0040163123,-0.03318359],[-0.89146703,-0.43514004,-1.1770084,-0.113605686,-0.2791039,-0.6336671,0.52206266,-0.37517008,-0.583943,0.13963065,0.10783694,-0.019744247,0.09936149,0.34897432,0.077529624,-0.12277383,-0.21316914,0.31482303],[-0.5459662,0.6174858,-1.5395053e-5,0.23975974,0.1680196,0.6688479,-0.5717515,-0.2257085,-0.37668842,0.37691414,0.016556103,0.5753194,0.43969232,-0.63690066,-0.79015404,0.094646364,-0.26196766,0.13351451],[1.219549,0.6434229,1.5366393,0.29663944,-0.1569686,0.1139518,1.0193243,0.13182868,0.1257156,0.4684622,-0.33492422,-0.1404477,-0.20704125,0.21394883,-0.60481495,0.20762968,-0.2884613,0.04056693],[0.0022561958,-0.10740119,-2.973164,-0.24940717,-0.11246171,-0.017514866,-1.2795074,-0.021132804,0.8575916,0.07600141,-0.029272523,0.5688567,0.09931985,-0.10324848,-0.2901189,-0.37775588,0.39807785,0.3334187]],"activation":"σ"},{"dense_2_W":[[0.5666278,0.1050696,0.5731484,-0.6657482,0.57242334,-0.6813752,0.650503],[-0.3233396,-0.44350263,-0.16690572,0.123169236,-0.8172176,0.5242723,-0.45013273],[-0.1649446,0.012782408,-0.80965835,0.28827253,-0.6245722,0.2006493,-1.087686],[0.96152276,0.35989368,0.22035821,-0.80648047,0.4686015,-0.6329297,-0.0023717843],[-0.11855806,-0.91366136,-0.90975124,0.47533065,0.41179633,0.05490874,0.1064329],[-0.73532724,-0.6584749,-0.5160826,0.34969312,0.062357668,0.13114415,-0.32903922],[-0.72250515,1.2826318,-1.2006475,0.9427826,-1.371755,0.20815341,-1.0248761],[-0.4109795,-0.64342046,-0.22680378,0.12261962,-0.15706545,0.4520076,-0.09530116],[0.5485182,0.3166386,0.60656774,-1.0352023,0.35866728,-0.37757927,-0.37554651],[-0.7688577,-0.31978396,-0.42268845,0.59393954,-0.4435929,0.47090167,-0.31540674],[-1.0920306,-1.0558451,0.11860894,0.49140632,-0.10677766,0.47734076,-0.398253],[-0.030640373,0.41173688,-0.98270494,0.5081087,-0.5071277,-0.3028872,-0.8938836],[0.4381069,0.943475,0.6218088,-0.742083,-0.38795125,-0.054727156,0.31301942]],"activation":"σ","dense_2_b":[[-0.09199342],[0.03208081],[-0.04846608],[-0.1532128],[-0.012221367],[-0.15162058],[0.14393868],[-0.17525378],[-0.38610223],[0.03283754],[0.02243522],[-0.046554077],[-0.10267613]]},{"dense_3_W":[[0.76260686,-0.14955303,-0.07697563,0.795136,-0.5793355,-0.39125565,-0.850312,0.054931063,0.53414947,-0.3139965,-0.5467518,-0.38860124,-0.034747276],[0.26200438,-0.37439495,-0.4377097,0.17163786,-0.30471745,0.30637982,0.06850715,-0.34865668,-0.35463956,-0.1303642,-0.39582416,-0.5477129,0.69954056],[-0.38012898,0.3671737,0.4092681,0.1147916,-0.33737427,0.28946012,-0.2992325,-0.067024715,0.4072253,-0.31171417,0.33009604,0.12577192,-0.27651602]],"activation":"identity","dense_3_b":[[0.05052462],[0.061525963],[0.01540329]]},{"dense_4_W":[[1.5063055,0.714805,0.00043001983]],"dense_4_b":[[0.047914207]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json new file mode 100644 index 0000000000..3e53360cd6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HONDA_RIDGELINE.json @@ -0,0 +1 @@ +{"input_std":[[8.957924],[1.0602055],[0.3483377],[0.044007655],[1.0696881],[1.0669217],[1.0629013],[1.022558],[0.99117285],[0.95355713],[0.91828537],[0.043950602],[0.043960184],[0.043955244],[0.04370865],[0.043465454],[0.04305762],[0.042518806]],"model_test_loss":0.03983215242624283,"input_size":18,"current_date_and_time":"2023-08-06_20-30-54","input_mean":[[24.622238],[0.017521156],[0.00757826],[0.0011451022],[0.016594924],[0.017204277],[0.018039215],[0.021406805],[0.02439622],[0.026556514],[0.028528417],[0.001193815],[0.0011970581],[0.0011935198],[0.0011202878],[0.001060377],[0.00095698517],[0.0008617843]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.07002942],[-0.16705358],[-2.9611764],[0.34919006],[0.515888],[-3.0217357],[-0.3703743]],"dense_1_W":[[-0.001037722,-0.23034889,0.00070932484,0.19091949,-0.35902733,-0.8921682,0.30972338,0.3144616,0.13060336,-0.1961081,-0.1309547,-0.729507,-0.079179555,0.49697357,0.02997426,0.37342516,-0.24386461,0.3236473],[0.9159012,-0.010550688,-2.401509,0.30691516,0.05056717,0.5097978,-1.1722806,0.17247927,0.34559217,-0.24330676,0.04055541,0.46409106,0.20967084,-0.82562864,-0.4943086,0.2081027,0.2530364,-0.0926206],[-0.93078494,0.5642841,2.5035574,-0.35270843,0.18849362,0.87544584,-0.2044937,0.73466784,0.47539774,0.07997192,-0.76057374,0.3159093,0.40554965,-0.5378864,-0.09868344,-0.3483285,0.16861473,0.19001411],[-0.8801367,-0.10308599,-2.2299495,0.04202499,-0.05023124,0.13920471,-0.78326404,0.39430746,0.23543742,0.14010431,-0.23845911,0.2567459,0.059797786,-0.57988393,0.113685064,0.14517607,0.16730362,-0.17216507],[0.14910753,-0.31030202,-2.4019601,0.1968272,-0.40163112,-0.23238596,0.6703164,0.07859055,-0.14317967,0.07362763,-0.04258365,-0.509903,-0.38269565,0.7657585,0.030617407,-0.11210979,0.30991936,-0.27056235],[-0.9013445,-0.74709606,-2.4476326,0.38786903,-0.3051019,-0.585037,0.06283271,-0.3787836,-0.61694026,-0.032208323,0.70738953,-0.2658627,-0.35824144,0.5567474,-0.033071913,0.1493693,-0.014829384,-0.16828252],[0.06442954,-0.869912,-2.9056792,0.1365006,0.16463475,-0.5906101,1.1546344,-0.06482889,-0.37295368,-0.1456135,0.2937723,-0.5213806,-0.57213086,0.38927227,0.49697468,0.21409509,0.63319594,-0.7391959]],"activation":"σ"},{"dense_2_W":[[-0.17591965,-0.07106175,-0.40103337,0.56516284,-0.6760929,-0.15387549,-0.89492965],[-0.45764968,-1.0195202,-0.41464484,-0.2810938,-0.028325718,0.09300495,0.35360244],[0.8125133,-0.54840755,-0.6930447,-0.89210993,0.56695956,0.44670337,0.5310144],[-1.0358114,0.33042994,0.11012975,0.23487902,0.24800783,-0.4299027,-0.46129325],[1.2276291,-0.5162977,0.22191486,0.16638434,0.23429595,-0.22487517,0.28309682],[1.0107075,-1.0881076,-1.008768,-0.5629702,-0.05878989,0.7923787,0.7309502],[0.49559563,-0.35230458,-0.7740999,0.02204071,0.24508348,0.075914145,0.75374156],[-0.21838671,0.42116773,0.5945599,0.30151197,-0.24432571,-0.46020442,-0.33258623],[-0.021219064,-0.25157404,-0.35190338,0.0668151,-0.6102883,0.1603531,-0.79725957],[0.0735072,0.5327899,-0.13316682,0.18007801,-0.7896261,0.08766711,-0.64606833],[0.6770077,-0.8900657,-0.26981142,-0.38599125,0.09799069,0.5758287,0.66643196],[-0.82503897,0.3003343,0.15965503,0.37416932,-0.644764,0.043236665,0.19912353],[-0.9234739,0.57710344,-0.4265305,0.3661275,-0.030128404,-0.4210636,-0.7627061]],"activation":"σ","dense_2_b":[[0.07509254],[-0.45370674],[-0.08009313],[-0.21234833],[-0.08377176],[-0.056009393],[-0.10460085],[-0.003972127],[-0.21230274],[-0.0108628925],[-0.14868702],[0.04881384],[0.053917274]]},{"dense_3_W":[[-0.43450725,0.28928438,0.63958466,0.26900065,0.59471947,0.045950003,-0.08964677,0.14317968,-0.1560713,0.4362775,0.6118739,-0.48017085,-0.17556131],[0.7623459,-0.3990245,-0.53529125,0.28715876,-0.25771093,0.25057483,-0.4946012,0.14644647,-0.02983568,-0.065986775,-0.55813897,0.34047204,0.29583102],[-0.093450435,-0.42808297,0.068437345,-0.1521326,0.11618435,0.6433002,0.44079673,-0.6619756,-0.2237737,-0.65349114,-0.118622996,-0.61334574,-0.14610668]],"activation":"identity","dense_3_b":[[-0.06914952],[0.05192733],[-0.03913266]]},{"dense_4_W":[[-0.4807093,1.1989409,-1.1321285]],"dense_4_b":[[0.044341844]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json new file mode 100644 index 0000000000..bee1e8d939 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_2021.json @@ -0,0 +1 @@ +{"input_std":[[8.738584],[1.5957829],[0.58238095],[0.048208784],[1.5838295],[1.5881729],[1.5908173],[1.5664002],[1.5340934],[1.4806168],[1.4221525],[0.047998115],[0.04803774],[0.048071872],[0.048102442],[0.04803064],[0.047811132],[0.04743304]],"model_test_loss":0.007402807008475065,"input_size":18,"current_date_and_time":"2023-08-06_22-19-42","input_mean":[[21.779322],[-0.078570016],[-0.0073580677],[-0.0065681813],[-0.07246284],[-0.0734754],[-0.07447408],[-0.07268334],[-0.069738925],[-0.06446174],[-0.057134904],[-0.0064781737],[-0.006475137],[-0.006476324],[-0.006474212],[-0.006491243],[-0.00650736],[-0.00642134]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.1603358],[-0.419876],[0.084331356],[-0.07068766],[2.0145605],[-0.63310754],[1.434537]],"dense_1_W":[[-0.31878927,-0.47954968,-0.260915,-0.23391017,-0.14123324,-0.16656223,0.34148905,-0.55040246,0.048909064,-0.084660634,-0.05452977,-0.14122179,0.19401318,0.18124454,0.29322624,-0.11721254,0.058719337,0.049679324],[1.2746987,0.53341556,-0.5038306,-0.3943573,-0.3552817,0.6985798,-0.7583908,-0.071790285,0.10988926,-0.1613498,-0.43469277,0.20283195,0.37326258,-0.2713744,0.053292856,0.12493837,0.112449214,0.071374826],[-0.005748887,0.4395075,-0.023206176,-0.00010381389,0.10724853,0.79803634,-0.10418732,-0.17200217,0.07352905,-0.04382284,0.12897137,0.27188876,-0.2986032,0.1732639,-0.43260622,-0.13877538,0.108885035,0.037624177],[-0.009819267,0.7978249,3.3524475,0.21963945,-1.1893661,0.12886666,-0.12307468,-0.0057551884,0.89947134,0.2433565,-0.7049134,0.41656977,0.5013669,-0.4488184,-0.19362147,-0.21371745,-0.12667105,-0.11616998],[0.5350432,-0.6518214,-0.29382524,-0.186406,-0.17762733,-0.1445377,0.13506992,-0.35136354,0.24111918,-0.36675584,0.021335155,-0.05516007,-0.15420103,0.4554361,0.4533603,-0.34406003,0.006251238,0.1428859],[1.1166015,-0.29759768,0.48270738,0.43025842,0.0056440467,-0.4213741,0.4217568,0.15726581,0.074272975,0.1225627,0.32488325,-0.059570342,-0.34078333,0.076991476,-0.26384223,-0.06351244,0.1692961,-0.21616662],[0.098687425,-0.3278237,-0.21179028,0.0031954458,-0.20943744,-0.13822405,0.548112,-0.34726304,-0.3400807,0.25883827,-0.17620128,-0.36422935,0.52832425,-0.1289231,-0.026027037,0.18089916,0.1012807,-0.07116273]],"activation":"σ"},{"dense_2_W":[[1.3021795,-0.4139669,-0.7120532,-0.74666166,-0.18984732,0.048739053,-0.25614926],[-0.45348325,-0.5127636,-0.35794353,0.021264847,-0.73585445,0.02490475,-0.37029886],[-1.0356512,0.21161588,0.15873429,0.17991234,-0.3031208,0.07505193,-0.33505473],[1.5017016,-0.31481206,-1.1198424,-0.40624765,-0.09357655,0.51827437,-0.055450503],[-0.6468184,0.053211562,-0.6933904,-0.13317326,-0.24886934,-0.3967814,-0.6371098],[-0.41236708,0.3045984,0.51569694,0.026683038,-0.66206634,0.038440548,-0.3386708],[-0.58338356,-0.09002029,-0.13582824,0.008655593,-0.69411683,-0.21923552,-0.3192624],[-0.6897999,0.12905283,0.67996913,0.1456075,0.25029323,-0.34134966,-0.6459057],[-0.252227,0.043475367,-0.9427369,-0.14302255,-0.10663869,0.31176025,-0.35857844],[0.22877508,-0.5189181,-0.41833526,0.20187113,-0.1781152,-0.16428699,-0.2800521],[-0.65191513,0.44252837,0.6581859,0.25468537,-0.9424999,-0.32678768,-0.8593621],[0.43401113,-0.24967693,-0.281952,-0.284015,0.7110927,0.27138582,0.9720163],[-1.1512148,-0.18058608,0.45996955,-0.5937282,0.31828657,0.15207982,-0.22012103]],"activation":"σ","dense_2_b":[[0.0048766164],[-0.056708604],[-0.123050824],[-0.07202907],[-0.25869218],[-0.20529492],[-0.091088444],[-0.091022156],[-0.32449347],[-0.17546864],[-0.0612454],[0.04344016],[-0.074389376]]},{"dense_3_W":[[0.25576973,-0.575117,-0.6076316,0.36512917,-0.41574427,-0.40301278,-0.4620185,-0.5097215,0.122016355,0.3936914,-0.041409556,-0.059126735,0.07365807],[0.29514056,-0.25677466,-0.18109803,-0.030853858,-0.029449929,-0.28013232,-0.025037538,-0.4706025,0.02876151,-0.48724273,-0.6757201,0.6601352,-0.20265144],[-0.7641006,0.21497111,-0.28698337,-0.379376,-0.31239873,-0.26711258,0.02512146,-0.31214246,0.077003516,-0.18367848,0.6396449,-0.61027414,0.5836878]],"activation":"identity","dense_3_b":[[0.047669664],[0.041923303],[-0.020977087]]},{"dense_4_W":[[-0.6845342,-1.0030532,0.7527504]],"dense_4_b":[[-0.03611581]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json new file mode 100644 index 0000000000..10e66ce042 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_ELANTRA_HEV_2021.json @@ -0,0 +1 @@ +{"input_std":[[9.910586],[1.4123459],[0.59487087],[0.03911551],[1.409979],[1.4115622],[1.411603],[1.3893355],[1.3640546],[1.3232217],[1.276401],[0.0390601],[0.039079115],[0.03908953],[0.039015334],[0.038927097],[0.038650174],[0.03832818]],"model_test_loss":0.007736066821962595,"input_size":18,"current_date_and_time":"2023-08-07_01-15-55","input_mean":[[22.795855],[-0.08798489],[0.01143446],[-0.009032234],[-0.09088829],[-0.090495676],[-0.09043885],[-0.08431701],[-0.0800931],[-0.07318552],[-0.065705255],[-0.009123672],[-0.009095005],[-0.009068311],[-0.008966204],[-0.008944961],[-0.008930321],[-0.008916563]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.1817923],[-3.718042],[-0.17253013],[1.0498631],[-2.7819123],[-0.40877423],[-0.1835958]],"dense_1_W":[[-0.051857583,1.3051457,3.4929137,-0.65374345,-1.1122645,-0.24794711,-0.3011514,-0.08444903,0.8605938,0.7186169,-0.99715984,0.579954,0.45131174,-0.5857832,-0.25104427,0.36404672,0.08432625,-0.118304946],[-1.1977811,-0.475098,-0.32292378,-0.4435726,-0.21691985,-0.45479798,0.93214303,-0.6325391,-0.057171293,-0.48693532,-0.058870036,0.043592565,0.29524007,0.19475447,-0.16399422,0.17714727,0.02705515,0.09614742],[0.0504194,0.37990266,0.039530136,0.04288842,0.036023762,0.50610423,-0.04245624,-0.08900527,-0.18667571,-0.136124,0.24658443,0.4461418,-0.21306992,-0.1905496,-0.24427558,0.019992698,-0.0458097,0.082212],[1.8970265,0.3291775,-0.45923525,-0.42205855,-0.4413092,0.022868842,-0.3697922,-0.2818066,-0.4076601,-0.3907717,-0.20571287,0.6031218,-0.23714252,-0.16817166,0.07743641,0.021997932,0.611759,-0.23154868],[-0.9974602,0.15397596,0.22610018,0.036102634,0.06823634,0.6489421,-0.41508022,0.35325828,-0.10202731,0.1711457,0.28493625,0.035079315,-0.4149946,0.08604628,0.117554076,0.10761524,0.08686444,-0.2359245],[-0.28764305,0.34052572,0.18389913,-0.017938213,-0.2068081,0.2519639,-0.7214537,0.29472184,0.27933893,0.27484724,-0.15843095,-0.037846185,0.316401,-0.09005458,-0.14835708,-0.19075473,-0.03951283,0.114958726],[-0.052516285,-0.16471781,0.17191207,-0.23444073,-0.022119049,-0.24730825,0.75023305,-0.40318617,-0.34178376,0.12554757,0.39539844,0.059354424,-0.44725272,0.4979164,0.060783666,-0.0009443115,0.11399086,-0.14107631]],"activation":"σ"},{"dense_2_W":[[0.15574715,0.106084,0.6234715,0.48498833,0.24288625,0.6844518,-0.61408937],[0.5661129,-0.5984536,0.79835355,0.3082054,-0.060715023,0.26763362,-0.016118767],[0.14648265,0.21900931,-1.1337527,0.16373587,-0.9757596,0.041679647,0.65339375],[-0.11193495,0.15425135,-0.22649455,0.4248423,-0.7341563,-0.15863545,0.44211566],[0.19026476,0.5881703,-1.0570571,0.34021673,-1.0282404,-0.26504597,0.28280511],[-0.8895008,0.8121495,-0.5693253,-0.77341056,0.33465576,-0.49232218,-0.11758821],[0.9326459,-0.36728933,0.24325472,1.0141891,0.16826893,0.2829455,-0.06759766],[-0.16648382,-0.44048628,0.39915726,0.06806857,1.0963099,-0.03239437,-0.6205627],[0.2911811,0.57449996,-0.9605739,0.043008372,-0.73384374,-0.6097065,0.45541903],[0.31353498,-0.08516989,0.8531249,0.013826798,0.6559815,0.18347614,-0.7929507],[-0.016170498,-0.18118915,-0.86683124,-0.34802145,-0.47758147,0.13393015,-0.17496912],[0.091279745,0.35503078,-1.1297911,0.2600009,-0.10615289,-0.7520532,0.5357286],[-1.2284657,0.86050045,-0.034789667,-1.018808,-0.06296706,-0.028193004,-0.4022851]],"activation":"σ","dense_2_b":[[-0.05504892],[0.01253799],[-0.062120188],[-0.051010966],[-0.08326587],[-0.2394042],[0.028907817],[-0.080568254],[0.03604939],[-0.12410697],[-0.01955361],[-0.051553864],[-0.18583551]]},{"dense_3_W":[[0.63645065,0.63501835,-0.66807485,-0.52668273,-0.28929064,-0.23005038,0.43932953,0.121157095,-0.7683699,0.4412728,-0.32547268,-0.71282554,-0.4370708],[-0.30129626,0.3909303,0.29454166,-0.1705362,0.48066851,0.06491059,-0.090611994,-0.08033778,0.3795498,-0.5508733,-0.32967407,0.38930234,0.2549319],[0.005347131,-0.5191341,-0.26486373,0.12736864,0.5334262,0.5237369,0.38844875,0.003590752,-0.26281914,0.01214623,-0.24618849,-0.056392476,-0.0030399126]],"activation":"identity","dense_3_b":[[0.015747098],[-0.13919984],[-0.0075076534]]},{"dense_4_W":[[1.3023344,-0.041308355,-0.00318671]],"dense_4_b":[[0.015396652]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json new file mode 100644 index 0000000000..25ea1b538b --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_GENESIS.json @@ -0,0 +1 @@ +{"input_std":[[6.5459266],[1.3150389],[0.55143183],[0.0433077],[1.3103489],[1.3122923],[1.3130105],[1.2928256],[1.2722898],[1.2458807],[1.2160609],[0.043061666],[0.04310888],[0.043158278],[0.04318699],[0.043118294],[0.042912837],[0.042521223]],"model_test_loss":0.008513328619301319,"input_size":18,"current_date_and_time":"2023-08-07_03-22-20","input_mean":[[28.507357],[0.10861685],[-0.013601736],[-0.0064216373],[0.110937536],[0.10975514],[0.10922218],[0.10294279],[0.09506291],[0.08270148],[0.068715945],[-0.006518178],[-0.006483864],[-0.0064613186],[-0.0065263556],[-0.0066083767],[-0.0067466046],[-0.006989514]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.09213746],[0.07837435],[-0.127023],[-3.701971],[0.02127427],[-1.6431203],[2.2172556]],"dense_1_W":[[-0.015300604,0.5825342,-0.05051114,-0.18122214,0.07876552,0.9315104,-0.6162402,0.016129851,0.010469424,-0.020838048,0.1523773,0.15082102,0.090840556,-0.28110996,-0.1849562,0.15245719,0.22167133,-0.14279774],[0.02588672,0.32077435,-0.006722575,-0.011324345,-0.5431526,0.77720726,-0.32035637,-0.036528517,0.21234833,0.12834615,-0.15494944,0.5575763,-0.31280997,0.0010270807,0.14701857,-0.5796583,-0.3692745,0.5129307],[-0.0071143424,0.15858999,0.05704565,0.18143037,0.10665202,0.79463303,-1.0030777,0.2742014,0.20928839,-0.016834116,-0.14212018,0.18155766,0.4066399,-0.36911637,-0.50523275,-0.22205615,0.03395741,0.21754928],[-0.91471785,-0.0921693,-0.48348656,-0.14060836,0.024012497,-0.018223943,-0.12564234,-0.15323682,-0.3923083,-0.38660574,-0.31491503,0.011104942,-0.050269924,-0.032277748,-0.20858657,-0.018367982,0.19149122,0.10155454],[0.002645861,-0.8126742,-2.6549594,0.3429386,-0.20882957,-0.07800046,1.2651403,0.20753327,-0.7863295,-0.38006702,0.40243247,-0.76908433,-0.23738272,0.14581157,-0.38623288,0.39540884,0.04323188,0.56106085],[-0.9343576,-0.3586926,0.48885745,-0.13841353,0.17987157,0.061989535,0.46451867,0.29794976,-0.008585158,0.35067263,0.529655,0.51325566,-0.010691093,0.24579975,-0.5215634,0.0016024356,0.093200974,-0.031658597],[0.8293412,-0.20795242,-0.4017055,-0.533866,0.06481363,-0.26879504,0.3793856,-0.471539,0.023038805,-0.48921797,-0.22237803,-0.25630578,-0.039906733,0.666029,-0.0033022463,-0.31751958,0.26048532,0.09580422]],"activation":"σ"},{"dense_2_W":[[-1.0194138,-0.4770013,-1.6248175,1.692745,0.9337828,0.8437085,-0.54136294],[-0.52307904,-0.3975833,-0.6281236,0.08257637,0.27855587,0.43421826,0.45445123],[-0.20069543,-0.41561922,-0.44643855,0.07080084,-0.5047794,0.030606043,0.30134434],[-0.47260144,-0.7754414,-0.77397937,0.25201085,-0.07254463,0.658033,0.5073921],[0.3583858,0.10549722,0.5157753,-0.14047585,-0.617101,0.01266099,-0.6511524],[-0.9189057,-1.0387809,-0.5919117,0.46444207,0.1477566,0.459492,-0.2141334],[0.6823633,0.32230988,-0.13244073,0.2521329,-0.5877716,0.24724948,-0.416414],[-1.1259369,-1.071255,-0.25267237,-0.15611424,-0.36670506,0.8724834,0.70592606],[-0.3924353,-0.48566842,-0.89685357,-0.118145935,0.5531914,-0.012460924,0.78037065],[0.22028138,0.3253433,0.69419026,-0.08042979,-0.053916857,-0.2591152,-0.7299852],[0.37642446,0.15646371,0.73757994,-0.17530896,0.03673549,-0.35259926,-0.61480165],[0.6373535,-0.17438105,0.09731847,-0.37075844,-0.66817486,0.2684939,-0.48366025],[-0.8707067,-0.44384053,-0.44201162,0.51280767,-0.21291855,0.090648316,0.46247554]],"activation":"σ","dense_2_b":[[-0.3433028],[-0.031133696],[-0.06321145],[-0.19336915],[0.029136015],[-0.03043773],[-0.08612019],[0.05573746],[0.27088183],[-0.027076768],[-0.045460623],[-0.23163527],[0.058642514]]},{"dense_3_W":[[0.25786313,0.56292504,0.20988815,-0.11078339,-0.77840126,0.58619094,0.01413026,0.5725057,0.1304814,-0.74678564,-0.2714909,0.0549931,0.36715108],[-0.81611776,-0.17429464,-0.21161298,-0.10920066,0.2845192,0.3519452,0.42357373,0.09085552,0.41325328,0.05708694,-0.14555562,0.13213179,-0.20445172],[0.19899562,0.10822825,-0.4272676,0.613673,0.33998376,-0.17425252,-0.64963627,-0.19976379,0.64160216,-0.4531084,-0.40512505,-0.49072832,0.52435446]],"activation":"identity","dense_3_b":[[-0.05059222],[-0.15303764],[-0.035763595]]},{"dense_4_W":[[-0.9634106,0.023092944,-0.42669016]],"dense_4_b":[[0.04803448]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json new file mode 100644 index 0000000000..109e316755 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_5.json @@ -0,0 +1 @@ +{"input_std":[[9.469145],[1.4993936],[0.57071626],[0.04533063],[1.4846802],[1.4910924],[1.4950643],[1.4770368],[1.450109],[1.4059838],[1.3534893],[0.0450725],[0.04513867],[0.04519552],[0.04527874],[0.045279715],[0.045107212],[0.044762082]],"model_test_loss":0.011814278550446033,"input_size":18,"current_date_and_time":"2023-08-07_03-50-24","input_mean":[[22.163363],[-0.072142825],[-0.0025159488],[-0.006112024],[-0.069063514],[-0.06971331],[-0.0704586],[-0.0690143],[-0.06599702],[-0.060672827],[-0.053519193],[-0.006028869],[-0.0060502393],[-0.0060780053],[-0.006223877],[-0.0063924924],[-0.0066624186],[-0.006921035]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.1967828],[1.3245456],[0.103971295],[-1.2520714],[-0.16602024],[-2.0981002],[-0.14066501]],"dense_1_W":[[-0.4214301,0.103772216,0.8929513,-0.18447745,-0.2701103,0.30181846,-0.36284757,0.21057971,-0.018612964,0.0593094,-0.16024835,0.1416867,-0.15246183,-0.3907173,-0.08361737,0.2765874,-0.1042719,0.12791668],[0.2745816,0.9077304,-0.011180789,-0.113791615,0.3160003,0.6698024,-0.6092146,-0.40735677,-0.053869486,0.12563229,0.2932765,0.4824642,0.22824322,-0.60383517,0.30220488,-0.049962338,-0.10605018,-0.088415876],[0.057883058,-0.04662177,0.68351626,-0.26972455,-0.43764362,-0.3083863,0.90403295,-0.09680003,-0.1232865,-0.18376413,0.0876113,-0.32598537,0.17061934,-0.039507188,0.030940559,0.22072437,-0.15162866,0.08447131],[-0.4781647,-0.22644347,-0.89709544,0.010036355,0.10885899,-0.12831874,0.32772595,0.41050613,-0.5090009,-0.107521385,0.26115948,-0.30580103,0.59975356,0.21102095,0.12877508,-0.07514449,-0.22881992,0.021187356],[0.011980259,0.655078,0.042019397,-0.39598337,-0.041903555,0.066606015,-0.36221957,0.049460504,0.3256252,0.043578107,-0.21974392,0.42173225,-0.007631104,-0.024107013,0.045484435,-0.3227939,-0.42450958,0.39688012],[-0.3749303,1.2016063,-0.0067011383,-0.14846599,0.07785109,0.20617402,0.023736777,-0.21452771,-0.34367922,0.24584025,0.24662304,0.051978063,0.2859072,-0.12438496,0.35116002,-0.25033846,0.10243457,-0.23285078],[0.010329517,-0.67234844,-3.8885512,0.32423398,0.45072496,0.7296973,0.38731125,-0.056170475,-0.81186455,-0.70703673,0.57100385,-0.9289139,0.09747156,-0.16550198,0.57601154,0.15654263,0.26841167,-0.023330638]],"activation":"σ"},{"dense_2_W":[[0.12735078,0.7578463,-0.8394619,-0.16871296,0.67499816,0.50618064,-0.036082815],[-0.9349809,0.49174136,0.64577276,0.8777052,-0.27532703,-1.3241053,0.92440283],[-0.88465834,-1.2536055,0.3215816,0.9998298,-0.78880596,0.3562564,0.29056188],[0.38568902,0.47334033,-0.39721346,-0.4981637,0.029624036,0.738565,-0.1316896],[-0.054050677,-0.34113935,0.34908327,0.3195855,-0.82633394,-0.4289165,-0.2309725],[-0.6001114,-0.48455656,0.088143736,0.6083232,-0.19328989,-0.6810937,0.45793325],[-0.04838382,-0.6484051,-0.373168,-0.47354728,-0.71413493,-0.10174487,0.009353199],[0.8382851,0.78388906,-0.7335581,-0.45394737,0.45634454,0.032309055,-0.18919362],[0.29141206,0.25385764,-0.36612022,-0.35426342,0.6002645,0.6095089,-0.22014005],[-0.29009074,-0.96834266,0.6976368,0.3486304,-0.2684134,-0.94937044,-0.25426298],[0.11204245,-1.096992,0.3850058,0.012738441,0.02725583,-0.9902537,0.24397202],[-0.33665514,-0.9425791,-0.08292521,0.23680806,-0.41410118,-0.24981315,0.34143913],[0.014888026,-0.03633883,0.665913,0.18707138,-0.85576785,-0.8612555,-0.39374956]],"activation":"σ","dense_2_b":[[-0.017777005],[0.23545785],[-0.15226115],[-0.047002222],[-0.08956424],[-0.059980016],[-0.13794045],[0.0060922517],[-0.3427262],[-0.07332524],[-0.21932544],[-0.22186531],[-0.076186255]]},{"dense_3_W":[[-0.7212533,0.5909567,0.60852754,0.30440143,0.5012994,-0.24762858,-0.66177696,0.15439416,-0.22291721,0.4902901,-0.34424105,-0.119624294,0.09342594],[0.44096592,-0.49161512,-0.6518094,0.6872087,-0.59066635,0.55458814,-0.36470622,0.4769713,-0.045274016,0.15205328,-0.5337833,-0.3563202,-0.15947717],[-0.7922449,0.5979252,0.5463646,-0.42703834,-0.019785186,0.51403254,0.4312795,-0.45969784,-0.33491063,0.21159784,0.3650792,0.1885672,0.5103654]],"activation":"identity","dense_3_b":[[-0.11362524],[0.06490415],[-0.09258138]]},{"dense_4_W":[[-0.34753174,0.23976417,-0.86662257]],"dense_4_b":[[0.07719801]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json new file mode 100644 index 0000000000..0bb8fb0fe2 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_EV_LTD.json @@ -0,0 +1 @@ +{"input_std":[[4.3663363],[1.0055081],[0.48724762],[0.041052617],[0.9967611],[1.000683],[1.0039185],[1.0006562],[0.9922954],[0.9760051],[0.96259797],[0.040620644],[0.040736996],[0.040861562],[0.041329786],[0.041552614],[0.04158318],[0.041458495]],"model_test_loss":0.007739691529422998,"input_size":18,"current_date_and_time":"2023-08-07_05-33-00","input_mean":[[21.149132],[0.04869401],[0.010550776],[-0.042260047],[0.04392769],[0.045757443],[0.04700402],[0.05030857],[0.046020832],[0.043477297],[0.04459311],[-0.042488344],[-0.042413425],[-0.042349935],[-0.0422564],[-0.042364012],[-0.04258541],[-0.042924497]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.2678127],[0.08612767],[-0.9489097],[0.706986],[-0.30796576],[-0.32985103],[0.080427095]],"dense_1_W":[[0.0036277466,0.51429325,1.0403895,-0.21717447,-0.43794936,-0.19047353,-0.64920795,-0.048046228,0.69371104,0.53239745,-0.7118019,0.6192604,0.5279617,-0.30141866,-0.19268416,-0.3834617,-0.04798644,0.15677519],[0.030118963,-0.13764045,-0.07282364,0.08246006,0.2705789,1.1211811,-0.57014453,-0.16758528,-0.2744678,0.09098098,0.30342337,-0.20622616,0.0074658724,0.117365144,-0.2300956,0.17353779,0.0072367247,-0.05224067],[-0.46240714,-0.814998,-0.15898485,0.23570561,0.2619672,-0.6533978,0.53975147,0.42714936,-0.15445922,-0.27475175,0.2855774,-0.6121087,-0.085973136,0.56669056,-0.24448115,0.47533005,-0.0016848596,-0.2630539],[0.48946816,-0.17746238,-0.16460344,-0.3096607,0.21007513,-0.51034343,0.029157858,-0.13090727,-0.09923416,0.38133857,-0.08658899,-0.37016922,-0.20602193,0.81421083,0.47483093,-0.30339777,0.043880396,-0.07612349],[0.010865774,-0.24699818,1.7088879,0.025180334,0.0171949,-0.8591754,0.41037732,-0.19206196,0.020423349,-0.07455425,0.17094779,-0.25438294,0.11110474,0.32507765,0.43417934,-0.011772227,0.14530338,-0.59843206],[0.027194558,0.63995826,-0.010129754,0.44069192,-0.1763659,-0.9194824,0.02155618,-0.12091762,-0.05442227,0.43881658,-0.3719806,-0.23903327,-0.20877454,0.41533244,-0.13582179,-0.14811464,-0.20708357,0.15655594],[-0.0028607307,0.34870997,2.821092,0.2508811,-1.035149,-0.465783,-1.5769824,0.18240027,1.7161161,1.8064464,-1.3023019,0.52437043,-0.00077510276,0.16097444,0.040497832,-0.045791112,-0.8714639,-0.1387739]],"activation":"σ"},{"dense_2_W":[[-0.4802455,-0.5064868,-0.2886249,-0.0686329,-0.27806887,-0.3524303,-0.80409414],[0.34504583,0.3495648,-0.7631179,-0.38251773,0.29856616,-0.26794648,-0.18538539],[0.6198588,-0.22676483,-0.35512465,0.12881657,-0.40367082,-0.9252802,-0.0002468375],[0.35880542,0.46389118,-0.8148363,-0.59149826,-0.5300025,0.20585157,-0.07116474],[-0.23429085,-0.62216985,0.59508204,0.4193159,-0.15182957,0.5141024,-0.41728604],[0.66723776,0.073733844,-0.070885584,-0.48375297,-0.45241132,-0.84997284,-0.031634018],[-0.5627967,-0.4777591,0.868787,0.17813006,0.21961252,0.14355378,-0.57126164],[-0.14685419,0.03656165,-0.7900763,-0.08400198,0.24159017,-0.85876423,-0.26216614],[-0.71358204,-0.689546,0.051773578,-0.0848018,0.18454298,0.22894992,-0.1594909],[-0.018925406,-0.706924,0.090921454,0.70733404,-0.1029515,0.4853316,-0.19676127],[0.3700011,0.58441055,0.019160673,-0.4851522,-0.5654224,-0.81087536,0.48571846],[-0.6824983,-0.010707942,-0.03845548,-0.24932735,0.10926147,-0.65549374,-0.13580413],[0.044423133,0.24843681,0.10453449,-0.5270328,-0.0071183904,-0.805887,0.016872479]],"activation":"σ","dense_2_b":[[-0.32894507],[-0.1402385],[-0.08289674],[0.058721446],[-0.08779582],[-0.08003288],[-0.0015345884],[-0.02523492],[0.00043462456],[-0.033334095],[-0.036279026],[-0.33189464],[-0.07644796]]},{"dense_3_W":[[0.13798034,-0.55931157,-0.057955276,-0.049440853,0.51565015,-0.01682391,0.30927873,-0.11561556,0.6672029,-0.07284992,-0.4854766,-0.14209567,-0.34877455],[-0.031582475,0.050488807,-0.24109462,-0.54226226,-0.22244236,-0.3798091,0.5201355,0.11588744,0.013117147,0.33739212,-0.23309216,-0.14616711,-0.5281888],[-0.076868005,-0.03763952,-0.29681742,-0.12974247,0.4806066,-0.04267054,0.51561165,-0.50798887,-0.13377365,0.61627406,-0.48184386,0.3136061,0.23230153]],"activation":"identity","dense_3_b":[[0.062304508],[0.06676691],[0.045753885]]},{"dense_4_W":[[-0.7684763,-1.1087472,-0.815416]],"dense_4_b":[[-0.05879514]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json new file mode 100644 index 0000000000..81deb9f472 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_IONIQ_PHEV.json @@ -0,0 +1 @@ +{"input_std":[[7.896002],[1.2703207],[0.4862841],[0.043405883],[1.2591066],[1.2634319],[1.2668407],[1.2588236],[1.2390842],[1.196458],[1.1518458],[0.04327276],[0.043316394],[0.043354623],[0.043371588],[0.043337632],[0.043194752],[0.04294343]],"model_test_loss":0.0052194190211594105,"input_size":18,"current_date_and_time":"2023-08-07_06-24-33","input_mean":[[21.445068],[0.09960828],[0.007299674],[-0.0005310989],[0.09852017],[0.09864108],[0.09867044],[0.10080879],[0.10140148],[0.09866842],[0.095603466],[-0.00043161964],[-0.0004366571],[-0.00044840755],[-0.00056364527],[-0.0007040198],[-0.0009044244],[-0.0011604802]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.09470449],[3.0432646],[0.03450416],[-0.46021092],[1.1594877],[0.029558277],[1.8363751]],"dense_1_W":[[0.005493746,-0.3358011,0.0037607898,0.29596448,0.3943874,-1.0717398,0.5701757,0.016112054,-0.3643242,0.23849818,-0.075061426,-0.56350166,0.061684538,0.23258829,0.3412455,-0.086815886,0.09234655,-0.08318382],[0.5553914,1.0832955,0.025380384,-0.42384112,0.25218967,0.2652197,-0.08185232,0.14480954,-0.08236447,0.41922125,0.03566944,0.47901392,0.27303162,0.23061423,-0.48810846,-0.049590047,0.055590317,-0.0777213],[0.020737711,-1.0003403,-4.471138,0.18066612,0.8972061,0.281358,0.63211244,0.037308935,-0.27867937,-0.5369628,0.02718618,-0.8628528,-0.5999772,0.41523072,0.23050354,0.6017408,0.07975743,-0.02996209],[0.13376372,-2.1679244,0.024798622,-0.6729938,-0.54384416,-1.0513178,0.8737397,-0.41420826,0.114922546,-0.99975115,-0.08032563,-0.5233528,-0.047853615,0.95928097,-0.67657197,-0.6571614,0.3954971,0.7528502],[1.0411915,0.2750806,-0.017673122,-0.287801,-0.5224428,-0.17964116,-0.7069524,-0.38134468,-0.040215928,-0.100667715,-0.22424145,-0.011132579,0.045741584,0.25371146,-0.41912347,-0.07781668,0.072858974,0.3702856],[0.006503676,0.31328365,0.7664561,-0.6728464,0.3802759,0.44000676,-0.5781886,0.107931,-0.15678358,0.1777509,-0.48083207,0.49993676,-0.26356068,-0.6739486,0.0690044,0.28473458,-0.08100241,0.2141241],[0.6557612,-1.1317073,-0.01985534,0.2997433,-0.3100224,-0.5334095,0.59377813,-0.11130485,0.11088933,-0.23197712,-0.15815854,-0.38820937,0.05915133,-0.4817993,0.3789274,0.16070421,-0.20570633,0.1632214]],"activation":"σ"},{"dense_2_W":[[0.4679878,0.2634842,-0.028860494,-0.21427041,0.14012837,-0.5288975,-0.42545995],[-0.6775605,-0.4815579,-0.454403,-0.07230136,0.009694609,0.59333,-0.62719697],[-0.6382057,0.6997013,0.36473322,0.2414489,0.13382578,-0.18536665,-0.90939593],[-0.8748301,2.3719103,-1.56188,-1.8237168,2.1302335,1.2548504,-0.031323623],[0.503896,-0.679211,-0.6008442,0.60013664,0.17343543,0.17834695,0.24348144],[-0.13778792,0.15866904,-0.76191425,-0.5750008,-0.69259375,0.40918577,-1.4637057],[-0.52587533,-0.25144148,-0.31243584,-0.1940254,-0.25742918,0.22230358,-0.21316433],[-0.29734585,-0.21217649,-0.4547587,-0.4792317,0.52856797,0.5213185,0.07181257],[-0.007364429,0.007793841,-0.71918666,-0.005362996,0.23980153,-0.49275202,-0.6564195],[0.27902287,0.11022579,0.09352632,0.18805945,0.30498815,0.03035562,0.31641266],[0.65705526,-0.5266016,-0.022429584,0.18331312,-0.32305643,-0.007786143,-0.26408496],[-0.4082327,-0.25355664,-0.5861339,0.31163412,0.25877875,-0.75417554,-0.30994046],[0.5602024,-0.5399794,0.34386253,-0.40272358,-0.48508552,-0.18899718,0.17928903]],"activation":"σ","dense_2_b":[[-0.010232577],[-0.00023857807],[-0.034300473],[0.46175855],[-0.028856292],[-0.191977],[-0.23886801],[-0.003576378],[-0.22439884],[-0.009154732],[-0.014472028],[-0.22065732],[0.0036408578]]},{"dense_3_W":[[-0.30743915,-0.5722211,-0.48067984,-0.108277574,0.29175866,-0.51613647,-0.52692574,-0.06551988,-0.0476114,0.3618537,0.05102852,-0.27722335,0.5223134],[0.30818227,0.17767535,0.5113013,-0.25676715,-0.058021083,0.4884727,-0.23518495,0.43626583,-0.42181972,-0.047644824,-0.1406492,0.23160899,-0.44818217],[0.45361012,-0.51555586,-0.5169346,-0.2632498,0.44542933,-0.15754463,0.30686757,-0.56882674,0.065441564,0.3283218,0.18038327,0.1817784,0.5348782]],"activation":"identity","dense_3_b":[[0.012215524],[0.0026582293],[0.008550247]]},{"dense_4_W":[[-0.97812647,-0.12224905,-1.2473096]],"dense_4_b":[[-0.009789151]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json new file mode 100644 index 0000000000..bb76193085 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV.json @@ -0,0 +1 @@ +{"input_std":[[8.222069],[1.4015005],[0.5433659],[0.046245173],[1.3907557],[1.3952589],[1.3979354],[1.3851876],[1.3639251],[1.3265828],[1.2794514],[0.04593869],[0.04602148],[0.04609722],[0.046142124],[0.04606174],[0.04579012],[0.045302678]],"model_test_loss":0.009272297844290733,"input_size":18,"current_date_and_time":"2023-08-07_07-41-26","input_mean":[[21.305267],[0.004457678],[0.0094668595],[-0.012420628],[0.004529341],[0.005278159],[0.005986334],[0.00870795],[0.010163208],[0.009530685],[0.008663278],[-0.012377954],[-0.01237566],[-0.012378746],[-0.012456359],[-0.012550046],[-0.012720126],[-0.012910544]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.047097],[1.9158853],[0.17434227],[-0.97165537],[-0.10269022],[-0.9169131],[0.0008914754]],"dense_1_W":[[-0.88408405,1.235049,0.0426836,0.013424199,-0.08920125,-0.013397676,0.586178,-0.04885077,0.3810674,0.36573988,-0.3742023,-0.11406285,0.04956962,0.03306387,-0.10079546,-0.18288964,-0.018636217,0.16385865],[0.88075936,1.297032,0.032537315,-0.17033583,-0.09099818,0.4118023,0.12728553,0.14429076,0.1508224,0.15520132,-0.16594887,0.11192377,0.23395588,-0.301161,-0.2021957,-0.0027576552,0.08704741,0.086546],[0.7485217,0.44026893,-1.9140397,-0.17217009,0.059100352,-0.047859672,-0.5856153,0.44894385,0.22710915,-0.21913743,-0.29625463,0.322819,0.07943353,-0.022421572,-0.090653695,-0.444467,0.1394176,0.18164952],[0.4358342,-0.32757956,2.063401,0.20161365,-0.24610913,-0.3428621,0.6505693,0.016287383,-0.07427287,0.03351724,0.22633989,-0.3643204,-0.26658386,0.20206529,0.12288221,0.2783347,0.19327204,-0.36068434],[-0.0035009065,-0.72611684,-0.0082449615,-0.22654101,0.46806103,-0.34762052,-0.40569013,0.40099728,0.11805809,-0.16216965,-0.042650726,-0.89064217,0.21002078,0.642215,0.20523302,0.31924605,0.101329714,-0.13541093],[-0.41431567,0.11045769,2.0121331,-0.2800082,-0.054261006,0.11609053,-0.5194348,0.0039073634,0.18652305,-0.21063456,0.3278946,0.18608095,-0.043919813,0.063306555,-0.30901843,0.42117286,0.14100657,-0.16917707],[0.1144374,0.0647928,1.4224553,-0.33906898,-0.090644486,-0.5943667,-0.7509755,0.8212074,0.73758525,0.21148895,-0.4533185,0.18891388,0.058078196,-0.32458195,0.36525872,0.30673453,-0.21418211,-0.02886248]],"activation":"σ"},{"dense_2_W":[[-0.09611834,0.018518968,0.3276854,-0.29474196,0.07749839,-0.18393336,-0.108452864],[0.8463591,0.2765366,0.26273692,-0.542793,-1.3948811,0.38413918,0.13216402],[0.6448755,-0.9121937,-0.4041889,-0.44714126,-0.6450281,0.62885827,0.6442234],[-0.6492855,-0.59167993,-0.2413325,0.6629408,0.8960554,-0.16874227,-0.23902991],[0.25179657,-0.0052280165,-0.787087,-0.52129155,-0.7962139,0.5745307,0.5154668],[0.1658994,-0.14782484,-0.34189487,-0.24388146,0.26166263,-0.10471854,-0.98238224],[0.3014624,-0.11165519,0.1926479,-0.0071346364,0.12017147,-0.5179131,-0.42826292],[-1.3958447,1.0750867,0.51260227,0.5384232,-0.34655526,1.0435345,1.5503204],[0.40272388,0.12323784,0.24391593,-0.66794497,-0.92917013,0.24938683,0.35117647],[-0.37655634,-0.79549915,-0.7874939,0.049076214,0.16099943,-0.46943882,-0.46139815],[0.101291455,0.14885388,-0.42190292,0.31973553,0.7213091,-0.43006414,-0.27885658],[-0.32128662,-0.3569677,-0.5827871,-0.44924423,0.16653252,-0.70502335,-0.009819985],[-0.1346414,0.065946266,0.22599967,-0.71018034,-0.8050497,0.21156272,0.017037582]],"activation":"σ","dense_2_b":[[-0.15589215],[-0.28170976],[-0.38979664],[0.083457045],[-0.43890372],[-0.010706772],[-0.07441867],[-0.20225793],[-0.14819947],[-0.0007909137],[-0.0439504],[0.00047137964],[-0.0815142]]},{"dense_3_W":[[0.04960481,0.7185168,0.55996764,-1.1893424,0.63903844,-0.7087734,0.2795772,0.5947179,-0.12752935,-0.9978769,-0.25698617,-0.06704499,-0.04695985],[0.301456,-0.21193206,0.22014925,0.07238018,-0.24935168,-0.38614914,-0.53463185,0.41344443,0.122541234,0.4214228,0.2293029,0.506032,-0.25195587],[0.30665806,0.26296693,0.6493592,-0.4486736,-0.020275978,-0.3785944,-0.39404252,0.43909723,0.5369053,-0.4844059,-0.36188412,-0.6198387,0.2678705]],"activation":"identity","dense_3_b":[[-0.104795374],[-0.0101343505],[-0.022516306]]},{"dense_4_W":[[0.6437274,-0.14137705,0.8526488]],"dense_4_b":[[-0.020337932]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json new file mode 100644 index 0000000000..4e71fbb643 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_EV_2022.json @@ -0,0 +1 @@ +{"input_std":[[8.980772],[1.3223853],[0.9268239],[0.024433661],[1.4122427],[1.3833307],[1.3508096],[1.2307118],[1.1849836],[1.1415477],[1.0909376],[0.024418019],[0.024408164],[0.024402233],[0.024252728],[0.024191827],[0.024145853],[0.023861935]],"model_test_loss":0.010252699255943298,"input_size":18,"current_date_and_time":"2023-09-01_20-45-00","input_mean":[[16.563862],[0.1111928],[0.6683766],[0.015079002],[0.0854696],[0.09152668],[0.09758363],[0.121493205],[0.14106716],[0.15788953],[0.16946313],[0.015242839],[0.01523548],[0.015225873],[0.015277851],[0.015472722],[0.015790224],[0.015869608]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.9736897],[-0.14363614],[0.085171],[-0.55840254],[0.055252872],[2.0375261],[-0.18923905]],"dense_1_W":[[1.5419508,0.4347514,0.022342844,-0.13883114,0.2409088,-0.12417678,-0.53509873,0.20153597,0.17858733,-0.19925015,0.06234279,0.24006103,-0.19976556,-0.18627135,0.45923752,-0.15200825,-0.08930177,-0.0050552515],[-0.030591678,0.13387124,0.17806397,-0.13424215,3.5386305,1.7213475,0.84962314,-2.7109919,-1.8677185,-0.9485388,0.11587285,-0.52675563,0.16423121,0.09590165,-0.005669875,0.12117092,-0.3104153,0.34291723],[-0.040051196,-0.90900606,0.033305887,0.48924676,-0.05219214,0.16458692,0.23944448,-0.65811116,-0.14248033,-0.040640995,0.23316579,-0.11273267,0.26166895,-0.3892416,0.20361155,-0.32397175,-0.04944256,0.12745105],[-1.8584498,0.5795085,0.0001561481,-0.3926851,-0.62748444,0.32592124,0.26113057,-0.18676938,0.15465672,-0.039395984,-0.11589895,0.3461765,-0.16687828,0.007636779,0.34468338,-0.24718969,-0.08537343,0.095972665],[0.008184925,0.29720604,0.12834367,0.24606115,-0.050453648,-0.14317429,0.01469496,0.10121035,-0.15977393,-0.071321785,0.14336964,0.1700991,0.15197535,-0.16201954,-0.27186736,-0.18587373,-0.29943192,0.31800416],[1.3913352,0.09059665,-0.06279646,0.282595,-0.5809931,0.06669835,0.31247872,0.33775496,-0.5383088,0.59837353,-0.45551175,0.69241804,-0.26237598,-0.25280276,-0.23810647,-0.60125524,0.035016667,0.40757436],[-0.020792918,0.8449914,-0.31495875,-0.18665223,0.2601113,0.23361494,-0.20227535,0.23019418,-0.36623937,-0.52237487,0.2838479,-0.23221277,0.23532006,-0.1258153,-0.1928124,0.17601454,0.39783114,-0.15201832]],"activation":"σ"},{"dense_2_W":[[0.47221714,0.016886314,-0.33116162,-0.06792718,0.35775667,-0.52708566,0.5025349],[0.9420784,-0.7130284,0.091753036,0.014161378,0.35075215,0.23026218,0.2984281],[0.1440958,-0.022310976,-0.63004696,0.21640168,0.8508171,-0.16760021,0.13965653],[-0.051360242,0.4106794,-0.88011396,0.61412853,0.7515858,-0.2784069,0.19800848],[0.5194753,0.046521883,-0.864117,-0.34576842,-0.21068099,-0.09319121,0.52076554],[-1.8818634,0.99190366,-0.5483396,0.07163825,-0.53633076,0.30430192,-0.43019328],[-1.7481059,1.364397,-0.05183877,0.26558736,-1.0966011,-0.21229754,-0.33233747],[-0.30067447,-0.19872609,0.59686613,-0.5647894,-1.0501944,0.8325608,-0.43664268],[0.59113705,1.348725,0.6290724,-0.6959389,-0.8086151,0.6735704,-0.24954763],[-0.4161925,-0.09258512,0.60084736,0.50538963,-0.20283572,-0.10547142,0.25737134],[0.26642272,0.27427554,-0.86675686,0.3761756,0.13520287,-0.49277586,0.023729336],[-0.057346545,0.40247637,-0.96133965,-0.24963704,0.4294661,-0.0321745,0.3121117],[-1.1896358,0.47296816,0.2525738,-0.41773388,-0.91891223,0.53242177,0.026586607]],"activation":"σ","dense_2_b":[[-0.06391301],[0.10446307],[-0.07552547],[-0.03267669],[-0.08992916],[-0.3635667],[-0.4151249],[0.16962343],[0.17003855],[-0.014166557],[-0.009087415],[-0.12204086],[-0.021121267]]},{"dense_3_W":[[0.11135484,-0.110632345,0.19104497,0.45092243,-0.58294576,-0.22749306,0.0548284,-0.20707788,-0.07605733,-0.5409419,0.18328355,0.36243346,0.48439535],[-0.4690379,-0.19305366,-0.2964049,-0.77543974,-0.26955664,0.62021655,0.51425976,0.6449075,0.6932653,0.29448414,-0.5598454,-0.47247913,0.639388],[-0.086130135,0.0662881,-0.39795497,-0.05040378,0.051303852,-0.38565347,0.81593895,0.65294117,0.45629048,-0.2787272,0.3136061,-0.34606743,0.6333548]],"activation":"identity","dense_3_b":[[-0.0200204],[-0.028796887],[-0.06285456]]},{"dense_4_W":[[-0.10954055,-0.93173796,-0.32423872]],"dense_4_b":[[0.031629298]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json new file mode 100644 index 0000000000..efc9e3a294 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_KONA_HEV.json @@ -0,0 +1 @@ +{"input_std":[[6.320446],[1.4674793],[0.55242187],[0.033747878],[1.4499153],[1.4551026],[1.4600143],[1.4764196],[1.4860643],[1.4978211],[1.5023137],[0.033594012],[0.033627346],[0.03367146],[0.033806257],[0.033919122],[0.03404663],[0.03421485]],"model_test_loss":0.0031593828462064266,"input_size":18,"current_date_and_time":"2023-08-07_09-20-56","input_mean":[[16.720589],[-0.3453631],[-0.01988461],[-0.011758546],[-0.33604637],[-0.33879158],[-0.34137574],[-0.34826595],[-0.34946606],[-0.35428008],[-0.36132792],[-0.011764421],[-0.011732091],[-0.0117199095],[-0.011728072],[-0.011719623],[-0.011750716],[-0.011823986]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.50939155],[0.3405257],[1.6462622],[-0.10843948],[0.285203],[0.037651468],[1.8082677]],"dense_1_W":[[0.024142604,-0.21203998,0.026902797,-0.026592031,-0.5052848,0.08084745,0.060381155,0.07824176,0.1476794,-0.31446207,-0.05622627,-0.24280141,-0.013746504,0.012400391,0.17171621,0.29621166,-0.28375784,0.05738833],[0.1768927,-0.29521623,-0.025311217,-0.092430666,0.28460526,-0.617111,0.49956995,-0.3885511,-0.2726708,0.20527962,0.14372464,0.26093155,0.14992015,-0.31772944,0.08945775,-0.09835619,0.31046915,-0.10769861],[0.97614205,0.4236573,0.38003942,0.49241897,0.51790404,0.053766027,-0.80027264,0.26498482,0.05449548,-0.26899186,0.087867126,0.12839077,-0.05710694,-0.66316336,-0.0033742453,0.2792481,-0.11627638,-0.041489422],[-0.0015497641,0.8673382,3.263093,-0.1707162,-0.6192832,-0.67156154,-0.04999914,0.14607337,-0.06100974,0.58493054,0.15063228,-0.05193594,-0.29414734,0.3289635,0.39314392,0.074083135,-0.25906774,-0.1849865],[0.047487535,0.6483187,-0.012538455,-0.38905606,-0.18153276,0.44709945,-0.5075622,0.21219371,0.068916075,0.25938293,-0.17245348,0.1482799,0.40387914,-0.40022132,0.06770608,0.36847785,-0.026828244,-0.16214016],[0.037951373,0.24962443,0.020283377,-0.0035552767,0.30666018,0.1413196,-0.38893646,0.35808158,-0.032923326,-0.071178645,-0.048781518,0.5162438,0.4610186,-0.7228655,-0.49375764,-0.21811645,-0.19861159,0.40984872],[0.9250359,-0.70112437,-0.36471853,0.0054842713,-0.09402759,0.082544014,0.30093822,0.16678151,-0.2748682,0.18376616,0.04107111,-0.25604424,0.42679307,-0.053103805,0.16130999,-0.40664944,-0.032497868,0.13323294]],"activation":"σ"},{"dense_2_W":[[-0.90112615,-0.4810132,-0.08950426,0.36772704,0.4500673,0.052173443,-0.77481836],[-0.3288408,-0.36183703,0.39837834,-0.19830135,-0.0052449205,-0.4256783,-0.3807343],[0.15238899,-0.52871466,-0.98836666,-0.46207833,-0.9737017,-0.7437858,0.3818713],[-1.0859724,-0.48526433,0.24535194,0.05596006,0.093554944,0.21621844,-0.53195745],[-0.7163611,-0.30886292,0.12716919,-0.4154194,0.37423986,0.9259443,-0.379039],[0.19235164,-0.15816337,-0.017028,0.31888407,-0.28815588,-0.8377302,0.39304262],[0.47231472,-0.08212948,-0.7769114,-0.7738407,-0.48245203,-0.7427551,-0.27572083],[0.2869671,-0.016490303,-0.70185846,-0.34122148,-0.2529159,-0.1406588,-0.40547752],[0.20577213,0.14548963,-0.52808815,-0.30710357,-0.35618016,0.13128263,0.33525097],[-0.17195134,0.3418375,0.095633924,-0.17584541,0.12383485,-0.8438437,-0.021029431],[-1.5742979,-1.0980865,0.13949709,1.2328507,0.30790532,-0.25942948,-1.8909296],[-0.11482437,-0.42623624,-0.34017542,0.49576285,-0.00045646817,0.61140454,-0.84245527],[0.03065336,-0.3165987,0.31627032,0.23499563,-0.5419005,-0.6005879,-0.44092956]],"activation":"σ","dense_2_b":[[-0.06588],[-0.24751721],[-0.036043685],[-0.08081857],[0.042379994],[-0.12687257],[-0.1196205],[-0.103857085],[-0.11169459],[-0.13132711],[-0.12644218],[-0.14405167],[-0.09716702]]},{"dense_3_W":[[-0.25552472,0.4888721,0.66748166,-0.059414074,-0.47127432,0.0070313723,0.562616,0.4663864,-0.12562452,0.27339113,0.011626089,-0.3627435,-0.31609577],[0.31728745,-0.048127633,0.3010577,-0.029504294,-0.633934,0.2603854,0.015562987,0.09305088,0.3503609,-0.30416068,-0.382153,-0.5815462,0.3423376],[0.512647,0.6342511,-0.7857153,0.26010734,-0.111801334,-0.24562247,0.19410154,-0.17319192,-0.4143214,-0.04857833,0.5264786,-0.41035476,-0.4759939]],"activation":"identity","dense_3_b":[[-0.053302422],[-0.044913977],[0.05779919]]},{"dense_4_W":[[-1.0770125,-0.37417558,0.8556539]],"dense_4_b":[[0.050846685]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json new file mode 100644 index 0000000000..9b5b6ebd42 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_PALISADE.json @@ -0,0 +1 @@ +{"input_std":[[9.083802],[1.4611669],[0.43209597],[0.045783427],[1.4580129],[1.4600974],[1.4606811],[1.4370847],[1.4046228],[1.3548353],[1.301345],[0.045653045],[0.045695912],[0.04572814],[0.0456723],[0.04552948],[0.045236606],[0.044802427]],"model_test_loss":0.010045606642961502,"input_size":18,"current_date_and_time":"2023-08-07_10-17-58","input_mean":[[24.140347],[-0.040326927],[-0.00495007],[-0.01144458],[-0.037586022],[-0.039033934],[-0.04007914],[-0.040745206],[-0.039911933],[-0.037505746],[-0.035948202],[-0.011471909],[-0.011470749],[-0.011468973],[-0.011477571],[-0.011519244],[-0.0115342615],[-0.011574338]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.0585553],[-0.8787027],[0.06662454],[2.4645643],[0.2145419],[0.14631574],[-0.0031928595]],"dense_1_W":[[0.01278659,-0.639175,-3.9059505,-0.26950234,0.48975742,0.053148586,0.06006899,-0.15871193,-0.35619113,-0.3069537,0.6460098,-0.3795686,-0.14707989,0.10753279,0.589496,0.054787833,0.26607925,-0.27329552],[-0.31426805,0.29352117,0.30446848,0.17738476,0.021804355,0.49185294,0.05479423,0.1745057,-0.0944745,0.35397518,0.3583849,0.06355244,0.3294988,-0.7301665,-0.1879947,-0.0022402736,0.104507774,-0.21638979],[-0.010307992,0.7934238,-0.0006794772,-0.1334464,0.02091189,0.47137254,-0.6551125,0.066525705,0.3651862,-0.07319468,-0.10373536,0.33364198,-0.039477788,-0.1740325,-0.17714831,-0.15961868,-0.0405952,0.074915186],[0.5847928,0.619816,0.4203029,-0.21235059,0.4265746,-0.1263166,0.009960476,0.11006678,0.6733238,0.42611405,0.19867067,0.45256436,-0.13085747,-0.36200306,-0.3105818,0.34042296,-0.31901485,-0.08410049],[-0.024490528,-0.65694225,4.6159083e-5,0.59398013,-0.025485305,-0.018133782,0.0042006616,0.10598254,-0.33271274,0.27812153,-0.08935339,-0.0016619482,-0.54040617,-0.14387926,0.5431834,-0.19388175,-0.13796277,0.058109537],[0.41040012,0.4720514,-0.542709,0.27897146,-0.21233134,-0.26147744,-0.7639464,-0.7849991,-0.8057104,-0.53855383,-0.26171803,-0.01974412,0.539449,-0.3167468,-0.058017753,0.100660756,-0.02376293,0.39652997],[0.0073618917,-0.6812269,0.00047164486,0.19503322,0.21642539,-0.3812711,0.54097396,-0.4161706,-0.13814282,-0.42284945,0.37063465,-0.22952643,-0.52888757,0.5929762,-0.282835,0.19850107,0.20221026,-0.1419231]],"activation":"σ"},{"dense_2_W":[[-0.34819424,0.13951385,1.2464662,0.28751788,-0.5187095,0.6976768,-0.62041533],[-0.41341007,0.2805276,0.6287094,0.6696396,-0.54532576,0.7615568,-0.6390846],[0.17430355,-0.57738274,-0.6883198,-0.18806155,0.3362078,-0.27881357,0.2574153],[0.34108973,0.22211717,0.459976,0.35180148,-0.33524066,-0.2489619,-0.8272582],[0.23007147,0.0818965,-0.6714039,-0.55786407,0.43846977,-0.3866686,-0.31287605],[-0.21214552,-0.6325544,0.042784553,-0.73854697,-0.072142266,-0.20286769,-0.17739548],[0.12742646,0.17059988,-0.30783626,-0.62666696,-0.36179522,-0.23354167,0.48441237],[0.070377834,-0.16169746,-0.01426584,-0.12767823,-0.36949772,-0.79047674,-0.5630477],[-0.3562291,0.82187784,0.6215501,0.7167505,-0.062617205,0.5100963,-0.31727344],[0.53031796,-0.74287415,-0.583841,0.35455438,0.5706749,0.34090075,0.40166008],[-0.041094325,-0.7450218,-0.34826657,-0.27569434,0.28963897,-0.6791988,0.4819029],[-0.45388228,0.8081112,0.19463012,-0.20301336,-0.8971776,0.51671964,-0.79728514],[-0.19061111,-0.41954494,-0.61557233,0.033694874,-0.4513763,-0.046573047,0.36615795]],"activation":"σ","dense_2_b":[[-0.05189404],[0.11612667],[0.03374365],[-0.09175077],[-0.118053235],[-0.009669963],[-0.24390511],[-0.42936447],[-0.13871671],[0.105076954],[0.060429294],[-0.08152692],[-0.32616025]]},{"dense_3_W":[[-0.5707046,0.15472998,0.32784146,-0.52660066,0.3508428,0.2326405,-0.12091264,-0.36666492,-0.16838528,0.60772735,0.5778285,-0.024338374,-0.4535548],[-0.18583268,0.4316364,-0.614212,0.296555,0.21492256,0.09027471,-0.22776076,-0.28093025,0.4677053,-0.2794905,-0.16121306,0.5220755,-0.49487323],[0.6430829,0.38659704,-0.25451958,0.014723727,0.23223996,-0.39363125,-0.48956293,-0.40315047,0.6391995,-0.611482,-0.321689,-0.52045226,-0.2960742]],"activation":"identity","dense_3_b":[[0.030546237],[-0.03303123],[-0.0085044755]]},{"dense_4_W":[[-1.0266056,1.0412261,0.11489299]],"dense_4_b":[[-0.03331707]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json new file mode 100644 index 0000000000..f24dc4e6d1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE.json @@ -0,0 +1 @@ +{"input_std":[[9.17877],[1.560403],[0.55696404],[0.04819407],[1.5485493],[1.551602],[1.5542839],[1.5297074],[1.4964435],[1.447148],[1.3966106],[0.047890175],[0.04795589],[0.04801992],[0.048169263],[0.04813858],[0.04792505],[0.047557294]],"model_test_loss":0.008605924434959888,"input_size":18,"current_date_and_time":"2023-08-07_13-18-55","input_mean":[[23.527355],[-0.09660584],[0.002421769],[-0.007888363],[-0.09495723],[-0.09453526],[-0.09517964],[-0.092055276],[-0.089080565],[-0.08710217],[-0.08428994],[-0.0079021575],[-0.007904708],[-0.007907821],[-0.007890973],[-0.007831142],[-0.007820599],[-0.0077761114]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.4574037],[-0.31610072],[0.06254806],[0.1658765],[-0.04939922],[-0.04379439],[-2.3606904]],"dense_1_W":[[0.4884821,0.4447991,0.27062133,0.29461905,-0.15870245,1.0499299,-0.67113316,0.14727078,0.46701437,-0.11520939,0.27191386,0.25705224,0.20442817,-0.5996387,-0.11848767,-0.22629784,0.10268118,-0.05196918],[-0.94526833,-0.06731887,0.36105722,-0.06478468,0.7274551,-0.787373,1.067588,-0.11700762,-0.18113732,-0.009122022,0.6951359,0.121739894,-0.31221318,0.43686992,0.19358343,-0.60511017,0.31918147,-0.16998838],[-0.0064108563,-1.0363407,-0.3657711,-0.03648839,0.25623804,-1.0107207,0.5950102,0.13701187,-0.03058584,-0.09836868,-0.47335115,-0.19476067,-0.25847888,0.24020503,0.27251944,-0.16899313,-0.10614574,0.20120943],[0.99380904,-0.13568194,0.37884694,0.2061394,0.25694898,-0.39774755,1.0660007,0.098927006,-0.11071541,-0.06035235,0.6582728,-0.1862874,-0.36728743,0.686768,-0.007125964,-0.43512365,0.21848302,-0.19364962],[-0.013903772,1.6984495,6.334462,-0.24601908,-0.88126016,-0.07609073,-0.6559659,0.5171736,1.2477276,0.13804865,-1.6805384,0.5297336,0.50917196,-0.35361633,-0.43783256,-0.16315787,0.09916458,0.19899222],[0.0027724826,-0.266893,0.009900119,0.1370816,-0.14222518,-0.7747496,0.40045345,-0.1508628,0.31491798,-0.11310718,-0.10476674,-0.5071864,0.27966213,0.071040496,0.17133062,0.3316448,-0.09659847,-0.028956251],[-0.46976677,0.2529768,0.2631776,0.29406658,-0.014786802,0.54289156,-0.2263323,0.34719956,0.24145603,-0.02186343,0.2373878,-0.0400574,0.016907027,0.0852952,-0.45880318,0.07774477,-0.08953317,-0.009223345]],"activation":"σ"},{"dense_2_W":[[0.06098307,-0.40966874,-0.17987315,-0.40513036,0.27261987,0.08310855,-0.5536096],[-0.691275,0.35682058,0.36383852,0.5730693,-0.25348198,0.5048341,-0.5584882],[-0.62200207,0.34269363,-0.37620154,0.39508444,-0.18625513,0.5273465,0.15910348],[-0.66713977,0.52275723,0.2329843,-0.39003682,-0.68911934,0.54985297,-0.1009992],[-0.6867374,-0.17710596,0.25754964,0.4175933,0.13662146,0.6200632,-0.7861373],[-0.09777525,-0.32259175,-0.6726679,-0.5632263,0.38548172,-0.78029376,0.8176162],[-0.7648048,0.50501686,0.48810425,-0.30770826,-0.13032949,-0.21508694,-0.5890472],[-0.21938957,-0.20063238,0.5301691,0.3849949,-0.2938749,0.58915985,-0.40684512],[0.09535999,-0.3482573,-0.028670665,-0.2520647,-0.18944943,-0.30540437,0.45314667],[-0.2825183,-0.18183878,0.43335834,-0.44332805,-0.14940064,0.075128734,-0.1811318],[0.29664114,-0.030906495,-0.37812403,-0.046466183,0.101335004,-0.53401035,0.79996306],[0.9250361,-0.67517155,-0.52387106,-0.2634134,-0.20555083,-0.812342,0.7927995],[0.22187099,-0.4586634,0.14067167,0.16797097,-0.51517123,-0.25366476,-0.0075834477]],"activation":"σ","dense_2_b":[[-0.16339622],[-0.06992213],[-0.14530285],[-0.21909085],[-0.18955792],[-0.123597145],[-0.114407286],[-0.06403072],[0.07467113],[-0.11460133],[-0.014573581],[0.15221187],[-0.2008074]]},{"dense_3_W":[[0.079248965,0.63441527,-0.037408806,0.5250491,0.1454134,0.033214454,-0.07036471,0.56555814,-0.26066884,-0.18814188,-0.19420856,-0.33199486,-0.17070732],[0.48755273,0.5925755,-0.089609005,0.2881994,0.09301222,-0.36505923,0.11187905,-0.18813112,-0.4484195,0.45447895,-0.46645686,-0.48254833,-0.48081368],[0.28768483,-0.50610393,-0.3329078,0.1855142,-0.32382408,0.25712836,-0.3997252,-0.4541148,0.69257694,-0.36352545,0.36789265,0.8448238,-0.36968893]],"activation":"identity","dense_3_b":[[-0.099045075],[-0.08617516],[0.0972388]]},{"dense_4_W":[[-0.9874007,-0.54182595,0.95884216]],"dense_4_b":[[0.09515336]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json new file mode 100644 index 0000000000..b80f8eb8d1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_2022.json @@ -0,0 +1 @@ +{"input_std":[[8.994212],[1.3245196],[0.5245797],[0.042956702],[1.3203417],[1.3217984],[1.3220408],[1.2944245],[1.2665168],[1.2200946],[1.1748925],[0.0428153],[0.042849746],[0.042877868],[0.04289658],[0.042825807],[0.042584144],[0.042231884]],"model_test_loss":0.006699905265122652,"input_size":18,"current_date_and_time":"2023-08-07_15-02-41","input_mean":[[22.833767],[-0.0403752],[-0.023062065],[-0.003915003],[-0.03835354],[-0.039629113],[-0.04148385],[-0.050812945],[-0.058392923],[-0.07008045],[-0.08093289],[-0.0039168606],[-0.0039327657],[-0.0039458815],[-0.0040258327],[-0.0041203275],[-0.00426424],[-0.00439325]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.21267962],[-0.02729046],[-3.876878],[3.758936],[-0.094889574],[0.84803456],[1.0655135]],"dense_1_W":[[-0.01582406,1.491969,3.253744,-0.10518171,-0.19385417,0.78610295,-0.92538196,-0.33224037,0.3013307,-0.6688703,-0.19887793,0.114433184,0.15138905,-0.37872663,-0.26882437,0.53041375,0.5000704,-0.46208212],[0.0022284745,-0.44302207,0.0046756687,0.4405551,0.3678904,-1.3237227,0.94849795,-0.21979533,-0.354195,0.04168792,0.10481886,-0.14313328,0.09221937,0.62079024,-0.31655258,0.08006394,0.224768,-0.34386438],[-1.6695492,1.084495,0.12782213,-0.2916347,0.4173779,-0.012464437,-1.415515,0.46309748,0.14367689,-0.09085289,0.21108763,0.52149534,0.0030927972,-0.7394647,0.32236108,0.4132776,-0.08725703,-0.32379115],[1.7204846,0.99877,0.12921184,-0.5962452,0.11488813,0.7996907,-1.9083629,0.73996365,0.0138976555,-0.3083528,0.36691102,0.6522089,-0.30455202,-0.33463576,0.26659817,0.8397864,-0.53790885,-0.17022859],[0.01408686,0.30261004,0.021707801,-0.11919521,-0.11240657,1.2420307,-0.90936786,-0.13186933,-0.0830583,0.39522758,-0.15010051,0.67393625,0.37087741,-0.2007352,-0.70529145,-0.46263382,0.12367665,0.1901094],[0.22501494,1.2126215,-0.04891412,0.11348339,0.10659557,1.1126171,-0.6577273,0.0517829,0.034891758,0.16096263,0.016899597,0.53799254,0.19248869,-0.099386215,-0.24717341,0.1219544,0.1654292,-0.6051804],[0.29689962,-1.252187,0.051804602,0.028222922,-0.63980806,-0.693479,0.9105569,-0.05222635,-0.4362798,0.45733297,-0.29413572,-0.5301683,-0.6064637,0.42068645,-0.02681922,-0.020214137,0.22010683,0.34188196]],"activation":"σ"},{"dense_2_W":[[-0.6086301,0.2085108,0.37262338,-0.9238916,-0.39440706,-0.531614,-0.13330653],[0.3900694,0.25841695,-0.506336,-0.87635046,-0.23827943,-0.22281836,0.14377734],[0.39564994,-0.52945167,0.4045585,-0.22950102,0.66113174,-0.55567765,-0.7538522],[0.1472609,0.4034027,-0.39680183,-0.01948131,-0.06318282,-0.40607718,0.54647887],[0.40735146,-0.76506615,0.15106998,-0.04639545,0.2356493,0.34029764,0.58116305],[0.17658016,-0.48829883,0.8479261,0.103093006,-0.085700735,-0.05685383,0.12873933],[-0.58091015,-0.36427772,-0.119214594,-0.15918592,-0.77523655,-0.78004694,0.03406656],[0.42519712,-0.15369514,0.0024256515,0.7537345,0.12914199,-0.19718027,0.2781377],[0.38494098,-0.8098266,1.6810417,-0.4136923,-0.33961916,0.15786585,-1.5184373],[0.19256154,0.4130768,-0.31395087,-0.5005648,-0.51987,-0.34723067,-0.081991576],[-0.49874434,-0.6762422,-0.09994346,0.09899775,0.06528094,-0.75826293,-0.5126717],[-0.35837945,0.36765984,0.8528636,-0.3219268,0.03151658,0.19896397,0.34016657],[-0.20404705,0.35541695,0.0011049275,-0.0022879532,-0.64204615,-0.5036561,-0.035362314]],"activation":"σ","dense_2_b":[[0.036364183],[-0.00221331],[-0.117371835],[-0.097624525],[0.009239539],[-0.091520816],[-0.23231187],[-0.016982464],[-0.54738104],[0.04596814],[-0.24534227],[-0.005133318],[-0.022278212]]},{"dense_3_W":[[-0.6959402,0.31169927,0.53220147,0.19400354,-0.31628206,0.26289627,0.32454082,0.41816694,-0.31043547,-0.67317456,0.65171415,-0.30771238,0.09026865],[0.38488102,0.31554824,-0.70509696,0.3893292,-0.10749988,-0.40098265,0.18507135,-0.11758874,-0.0043080114,0.6012859,0.25160068,-0.42651844,0.48249626],[0.7162551,0.64301497,-0.36417845,-0.037450142,-0.45597866,0.15023938,-0.0077365125,0.0701791,-0.71762145,0.18638995,0.018750757,0.14510971,0.41565806]],"activation":"identity","dense_3_b":[[0.030530091],[-0.0479702],[-0.053273804]]},{"dense_4_W":[[0.5025325,-1.0537963,-0.85901815]],"dense_4_b":[[0.04645968]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json new file mode 100644 index 0000000000..d119379782 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_HEV_2022.json @@ -0,0 +1 @@ +{"input_std":[[8.261341],[1.0799276],[0.47439072],[0.035921823],[1.0769413],[1.0782329],[1.078946],[1.0603385],[1.0393461],[1.0079743],[0.97282183],[0.03575561],[0.03581589],[0.03587639],[0.035916228],[0.03587763],[0.03574848],[0.03554262]],"model_test_loss":0.00492028146982193,"input_size":18,"current_date_and_time":"2023-08-07_15-53-19","input_mean":[[21.97073],[-0.029600525],[0.0032512692],[0.0019785082],[-0.031247197],[-0.030642778],[-0.030970285],[-0.027264683],[-0.02531458],[-0.023465578],[-0.022579186],[0.001951127],[0.0019527602],[0.0019488906],[0.001962819],[0.001987138],[0.0018675312],[0.0017249424]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.245048],[3.3935277],[-0.15662995],[-0.014851185],[-0.09243428],[-0.004402729],[0.0380219]],"dense_1_W":[[-0.5481877,-1.1734215,-0.45120606,0.034027565,-0.12534843,-0.4320663,0.08604743,0.20808327,-0.46957174,-0.24812324,0.19450486,-0.2840027,-0.29063642,0.8850254,0.1337479,0.12512524,-0.11077451,-0.10846867],[0.55359775,-0.78132075,-0.45535302,0.04589877,-0.23332703,-0.6900583,0.27111268,-0.2906912,-0.26810634,-0.0014484213,0.012803484,-0.4214593,0.14392284,0.39275578,0.4591555,0.20790677,-0.47720864,0.03637555],[-0.001160366,0.07135902,0.020283442,-0.11026379,-0.3300407,1.1425788,-0.8465417,-0.14491843,0.10389491,-0.094203144,0.08786806,0.58249265,-0.31260887,-0.24686775,0.25243184,-0.12136195,-0.14665185,0.10891337],[0.00075157254,0.018735576,-0.015033022,0.2552897,-0.07354839,0.36636823,-0.5266892,0.12183493,0.06295568,0.08566852,-0.0952725,0.33919626,0.36296552,-0.376174,-0.39300168,0.07231392,-0.20756865,-0.050174374],[-0.000663185,0.6687934,-0.021183483,-0.20696321,0.28176227,0.8060634,-0.5820421,-0.17129976,-0.0828522,0.009332605,0.15914959,0.06899979,-0.071527235,-0.21463287,0.2533481,0.31726366,-0.07277975,-0.18115173],[0.0028130943,-1.0741395,-3.5949726,-0.08878999,0.21987598,0.103467554,0.6372202,0.32599628,-0.5349482,-0.4875307,0.49166214,-0.50000715,0.108137466,0.38457507,0.040603124,0.52961135,-0.122126095,-0.14863239],[0.0012397681,-0.8501431,0.004625623,0.39065698,0.3043851,-0.7930684,0.51580155,-0.047317076,-0.22162919,0.1124854,0.017583156,-0.33733293,-0.13366492,0.6077388,0.29493827,0.16720308,-0.41922003,-0.117570505]],"activation":"σ"},{"dense_2_W":[[-0.05502436,-0.66888684,0.065067135,0.53669417,-0.01893934,0.36197692,0.01791807],[0.59498864,0.6528727,-0.38318837,-0.45497322,-0.08562961,-0.31445232,0.69590557],[-0.41835263,0.04931508,0.0073655155,0.6559025,0.22435378,-0.42106333,0.13407917],[0.29046017,-0.09791975,-0.41265818,-0.49019828,-0.6872615,-0.26517653,-0.3567036],[0.13606516,0.44112694,-0.57032704,-0.13413966,0.0034367347,0.24891582,0.16898009],[0.011530882,-0.15070426,-0.46052173,0.5160092,-0.38340572,0.1328647,-0.18670098],[0.3382954,-0.22624794,0.028343266,-0.62450606,-0.059560556,-0.16521035,0.595776],[-0.5985326,-0.5175321,0.53653544,0.20450565,-0.12380274,-0.101402126,0.21046633],[-0.10918766,0.7896873,-0.6037477,-0.021383286,-0.36211497,0.5407418,0.30803818],[-0.38357767,0.13743253,0.5462274,0.33449608,0.58031,-0.44345102,-0.26854265],[0.5908161,-0.21907422,0.20983866,-0.4897011,-0.59968626,-0.065551214,0.5250327],[0.3375154,0.43778437,-0.31592417,-0.13451315,-1.0115412,-0.32253185,0.66413474],[0.09797849,-0.3698204,0.04279515,0.25717175,0.30788177,-0.25584602,0.19880241]],"activation":"σ","dense_2_b":[[0.003746753],[-0.08357698],[0.006304543],[-0.24605891],[-0.07121214],[-0.015032947],[-0.09400678],[-0.0024056516],[-0.010130554],[0.014799146],[-0.060003918],[-0.07540407],[-0.03000076]]},{"dense_3_W":[[0.017942075,-0.6212448,-0.12496728,0.14162916,-0.2248813,0.49471742,0.18174668,0.67305565,-0.181309,0.61732584,-0.27006516,-0.049796086,0.12735644],[0.3594483,-0.31422514,0.66338825,-0.41523233,-0.47088245,-0.28914762,-0.116269276,0.29540908,-0.6357099,0.3832997,-0.06724131,-0.5605163,0.09249603],[0.21089882,-0.26488605,0.433047,0.35239476,0.3053993,0.25026608,-0.4875768,-0.38531804,-0.30042005,0.68175066,-0.5961486,0.07390234,0.31267327]],"activation":"identity","dense_3_b":[[0.02659904],[0.034767646],[0.024563152]]},{"dense_4_W":[[0.6525578,1.0061679,0.50279385]],"dense_4_b":[[0.032301653]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json new file mode 100644 index 0000000000..7e4f989f03 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SANTA_FE_PHEV_2022.json @@ -0,0 +1 @@ +{"input_std":[[7.9325304],[1.0882362],[0.43774286],[0.04055885],[1.0919278],[1.0913655],[1.0900016],[1.0642537],[1.0437973],[1.014913],[0.9828307],[0.040379256],[0.04041959],[0.040456932],[0.04061512],[0.040622164],[0.040395677],[0.040053483]],"model_test_loss":0.012668303214013577,"input_size":18,"current_date_and_time":"2023-08-07_17-09-24","input_mean":[[22.347511],[-0.10092363],[0.011539685],[-0.024840366],[-0.10495763],[-0.104191564],[-0.103371926],[-0.0960919],[-0.088538796],[-0.081120916],[-0.073905],[-0.024927486],[-0.024909802],[-0.024889572],[-0.024763657],[-0.024654102],[-0.024695622],[-0.02485533]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.777723],[-0.21736239],[0.06858174],[0.028778331],[-0.1341363],[-3.286173],[0.05866324]],"dense_1_W":[[0.9532825,-0.57736486,-0.3511588,0.6824505,-0.024612838,-0.4149641,-0.2517366,-0.38986352,-0.041095104,-0.23648082,-0.22857088,-0.52361864,0.59133035,-0.016187055,-0.30439842,-0.008700108,0.37054965,-0.3851146],[-1.2131011,-0.040348757,-0.030648885,0.07944047,-0.5089448,-0.17325257,-0.35811424,-0.39610377,-0.3414392,0.13268204,0.036754124,0.244627,-0.18363807,-0.29357588,0.14597428,-0.07848809,0.117397904,-0.0066551454],[-0.33372527,-0.8653413,-0.0204796,0.15082183,0.21337464,-1.1272148,0.6884098,0.10593993,-0.21011119,-0.019475536,0.060115736,-0.7099037,-0.3675179,0.98888445,-0.0021350337,-0.0023339558,0.034033813,-0.08632464],[-0.0087699555,0.47234085,-0.003936672,-0.08932229,-0.15217909,0.76968,-0.6072722,0.19957112,-0.1826489,0.28319913,-0.11377978,0.5678719,0.0690483,-0.4572559,-0.256832,-0.19453537,-0.1292364,0.26785675],[-0.20146403,-0.6867957,-0.021399295,-0.09085224,-0.13374451,-0.95356876,0.7412253,-0.0020842238,-0.32998958,0.29012066,-0.12927385,-0.17273527,0.046919394,0.31265458,-0.0067970203,0.049638614,-0.1646258,0.1021922],[-1.0781149,-1.9831505,-0.39170006,0.6552042,0.2507927,-0.7482493,0.69903153,0.11317306,-0.44421217,-0.17660317,-0.19381957,-0.40258512,0.057917267,0.6132898,0.2122239,-0.68616545,-0.016808815,0.009621946],[0.07036603,0.6711271,3.090535,0.5774168,-1.0394694,0.01879839,-0.89210445,0.5525633,1.0586205,0.27921924,-0.4908341,0.3026311,0.51791734,-0.2981133,-0.38711485,-0.3440137,-0.20040374,-0.14860815]],"activation":"σ"},{"dense_2_W":[[0.053376287,-0.27212048,-0.592167,-0.66140467,0.123351865,-0.45312202,-0.5552815],[-0.15174036,0.3456475,-0.72808313,-0.16873683,-0.87532926,-0.19756816,0.010091597],[0.32735926,0.2430751,-0.49615663,0.71439725,-0.11260843,-0.43778282,0.48608312],[0.5652805,-0.25033778,0.47545195,-0.27911112,0.3687969,0.25403744,-0.3056421],[0.4027308,0.06937314,-0.008849847,-0.09499983,0.50666314,-0.021115543,-0.31085667],[0.15451042,0.16761723,0.14800774,0.6163942,-0.77986425,-0.58117247,0.40439337],[-0.52235144,0.37827665,-0.83033717,0.8296531,0.2544118,-0.37235376,-0.1002346],[0.09825943,-0.60037464,0.65948284,-1.2040564,0.6021252,0.091694914,0.21354105],[-0.31508094,0.2741653,-0.7038115,0.279092,-0.13322929,0.11963509,-0.14818548],[0.20600095,-0.076976694,0.21097696,-0.76661587,0.3835434,-0.05707485,0.10319275],[0.62171084,-0.24905708,0.5991603,-0.52393246,0.49378031,-0.1764447,-0.21842895],[-0.20955467,0.22948128,0.26585734,-0.95675725,-0.113945276,0.6225702,-0.500622],[0.16029201,0.49023697,-0.6596639,0.25944898,-0.21170011,-0.20044534,-0.0025964344]],"activation":"σ","dense_2_b":[[-0.2663133],[-0.10525206],[-0.011656664],[-0.15913439],[-0.09004699],[0.038266346],[0.051478483],[-0.2926297],[-0.24159859],[-0.120620705],[-0.11021781],[-0.33539078],[0.00798126]]},{"dense_3_W":[[0.16740364,-0.068965144,-0.3025593,0.50858945,0.5449389,-0.24625476,-0.49794698,0.29956707,-0.30424193,-0.008103076,0.58150756,0.0818273,0.01633671],[0.4533966,-0.42790514,-0.31081665,0.5545747,0.38430354,-0.67824066,-0.5380451,0.05798864,0.105315335,0.27879745,0.52759033,-0.06383929,-0.3282453],[-0.5254706,0.061006207,-0.26732418,-0.028615523,0.17779939,-0.3987639,-0.033597037,0.12323639,0.024477432,0.33606854,0.38722304,0.18485908,-0.4257627]],"activation":"identity","dense_3_b":[[-0.057745293],[-0.045989405],[-0.043302864]]},{"dense_4_W":[[-0.6202967,-0.6532501,-1.0174378]],"dense_4_b":[[0.047135167]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json new file mode 100644 index 0000000000..52798259ad --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA.json @@ -0,0 +1 @@ +{"input_std":[[9.547813],[1.7179168],[0.5423653],[0.04857022],[1.7059441],[1.7113246],[1.7139751],[1.6844511],[1.6431999],[1.577594],[1.5055375],[0.048473638],[0.048486643],[0.04849009],[0.048347536],[0.04814972],[0.047786575],[0.04731983]],"model_test_loss":0.011126813478767872,"input_size":18,"current_date_and_time":"2023-08-07_18-34-15","input_mean":[[22.614845],[-0.00978362],[0.007860732],[-0.004099437],[-0.010468512],[-0.010098754],[-0.009594586],[-0.0049946643],[-0.0015134194],[-0.0018012848],[-0.0024288695],[-0.0041544754],[-0.004141275],[-0.004129192],[-0.004074],[-0.004025116],[-0.0040029683],[-0.003983455]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.4171004],[-0.62944967],[-0.08636822],[-0.30957282],[3.1894078],[-0.18340014],[-4.048277]],"dense_1_W":[[0.7830174,0.40423092,-1.7773811,-0.25229105,0.0003897955,0.2650078,-0.94045377,0.057573486,0.43040198,-0.061492153,-0.42369962,0.2493666,0.35435918,-0.24786355,0.123617865,-0.15768188,-0.4915791,0.41757017],[0.619815,-0.15506315,1.7720731,-0.05022525,0.12061407,-0.23410659,0.26306555,0.18054493,-0.10822319,-0.23154925,0.4427835,-0.40612897,0.44821352,-0.035341486,-0.09733925,0.11400062,0.13623556,-0.1278016],[0.0040937522,0.5835935,1.5735953,0.27356768,-0.47593257,-0.19718215,-0.6375235,0.3991756,0.6010651,0.19663113,-0.2724361,0.35223562,-0.28804272,-0.37892044,0.06845918,0.056847498,-0.23999622,0.14147788],[-0.006181427,-0.23720662,-0.030143317,0.27507725,-0.11148783,-0.670752,0.1579785,0.26442546,0.11085281,0.24239433,-0.30806103,-0.5314182,-0.1411616,0.34547827,-0.0067492607,0.2582582,-0.13836917,-0.059036173],[1.3838778,-0.8232643,-0.65903485,-0.20286232,0.07595782,-0.2975871,-0.2668319,-0.03744175,0.113510124,-0.17166083,-0.08313555,-0.19053335,0.22615202,0.099687,0.11709183,-0.06939885,-0.0069061257,0.02360228],[-0.00030964141,-0.59983134,0.0024205807,0.29467705,0.14591737,-0.8452132,0.028352631,-0.06797188,0.13422364,-0.06122122,-0.033911128,-0.19677748,0.21639399,-0.129354,0.3151945,0.010129442,-0.27215233,0.23129506],[-1.5945044,-1.5621332,-0.7602714,-0.025857054,0.28057814,-0.49442625,0.22269996,0.06870841,-0.066471085,-0.1829744,-0.0109900115,-0.2925939,0.13089584,0.2586905,0.021742465,0.0035556427,-0.2523545,0.15750822]],"activation":"σ"},{"dense_2_W":[[0.38898003,0.28459147,-0.022235557,-0.05588795,-0.4079201,0.78092706,0.0055714543],[0.5199289,0.07141404,0.5414507,-0.5915534,-0.39409125,-1.0397701,0.052241296],[0.32463577,-0.49717766,0.90691876,-0.9024069,-0.0049516293,-0.23521297,-0.2842837],[0.06779803,-0.5377125,0.3489072,-0.6589233,0.59720504,-0.8664128,-0.46240392],[1.0705944,0.28698796,0.16739848,-1.4102764,-0.45103022,-1.1245655,0.02443754],[0.20335038,-0.35550895,-0.22385399,0.29430118,0.056962594,-0.32889187,0.2766028],[0.37825814,0.045224834,0.40632764,-0.71752423,-0.84244126,-0.29024214,-0.3171733],[-0.056005202,-0.73517215,-0.0016302611,-0.08258613,0.13173106,-0.25985387,-0.45403552],[0.31348822,0.22809805,-1.1925565,0.73849887,-0.015525387,0.27415907,-0.16705036],[-0.16721253,-0.42491084,-0.8744839,0.090021685,-0.09710444,0.04399626,0.08195919],[-0.4590442,-0.86837125,0.76154727,-0.09060192,-0.8167061,0.3736612,-0.8130611],[-0.59112096,0.09216977,-0.76166147,0.9278373,0.43625265,0.93052894,-0.07700069],[0.3458094,0.1986897,-0.7627924,0.16227825,0.63287425,0.23208074,0.6148371]],"activation":"σ","dense_2_b":[[-0.0482577],[-0.09234584],[-0.016399158],[0.12226299],[-0.018181449],[-0.35545182],[0.050414644],[-0.07713505],[-0.27168283],[-0.026214477],[-0.14412741],[-0.08454545],[-0.15548146]]},{"dense_3_W":[[-0.24532248,0.086403646,0.0035677804,-0.446846,0.3286197,-0.5002942,-0.36754543,-0.36412755,-0.3422447,0.5864908,-0.3555824,0.17768645,-0.16735056],[0.49285188,-0.5364999,-0.5982645,-0.60457116,-0.70168245,0.33897352,-0.5752503,-0.2724616,0.47930852,0.15553074,-0.31801456,0.7717742,0.6475729],[-0.54743356,-0.096405074,0.30723238,-0.14468278,0.25325117,-0.2991242,-0.32472578,-0.60785806,0.34220627,0.09930043,0.24098735,0.21893239,0.34784108]],"activation":"identity","dense_3_b":[[0.06423375],[0.04319534],[0.0022975653]]},{"dense_4_W":[[-0.5658915,-1.2441922,0.0075046057]],"dense_4_b":[[-0.047028013]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json new file mode 100644 index 0000000000..e97167c484 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_HYBRID.json @@ -0,0 +1 @@ +{"input_std":[[8.904712],[1.4085329],[0.50820595],[0.046452872],[1.4017634],[1.4044306],[1.4055834],[1.3812906],[1.3511641],[1.3032484],[1.2478882],[0.046305403],[0.046340212],[0.04636982],[0.046317764],[0.04617617],[0.04582262],[0.045322053]],"model_test_loss":0.011622299440205097,"input_size":18,"current_date_and_time":"2023-08-08_00-09-02","input_mean":[[22.673122],[-0.031736072],[0.007969155],[-0.013558],[-0.032557942],[-0.03305167],[-0.03298927],[-0.029548688],[-0.026128702],[-0.023727983],[-0.020936318],[-0.013552669],[-0.013538184],[-0.013526184],[-0.013537751],[-0.013667655],[-0.013909288],[-0.01411971]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.9472544],[0.09100576],[0.07340574],[-0.6315094],[0.37090293],[0.18976328],[0.4189057]],"dense_1_W":[[-1.1817962,-1.553194,-2.9592962,0.64605,-0.7203815,-0.5482526,0.50757265,-0.721568,0.14788827,0.30028212,0.4398359,-0.5897631,-0.26421258,0.034407478,0.30330506,-0.15496844,0.25997123,-0.3066445],[0.058786348,-0.27546605,-2.8685112,0.26771522,-0.43513617,-0.2600268,0.58820564,-0.14542523,-0.08567567,-0.52094615,0.84956247,-0.0930839,-0.32848006,0.10680902,0.17591019,0.016146999,0.2344313,-0.24816336],[1.6007652,0.028163971,0.000641371,0.76986766,0.43884957,0.1650065,0.0068902513,0.05802695,0.027824534,-0.017033007,0.13403726,-0.42092884,0.06564483,-0.19293658,0.15149602,0.0152002005,0.4810689,-0.48326603],[-0.14626782,0.044463154,-0.030598573,0.09514202,0.029573362,0.5215925,-0.16921219,0.23771454,0.0925813,-0.22268316,0.1525121,-0.07805162,0.46790215,-0.34623843,-0.29796118,0.07368295,0.159104,-0.07751048],[1.5266113,-1.0623161,-0.0036699253,-0.033174455,0.05534692,0.58918065,-0.18993984,-0.4061732,0.1180316,-0.041908402,0.08485711,0.029580023,-0.2831808,-0.1555281,0.526601,-0.2898042,-0.45805973,0.31297514],[0.14919099,-0.9022488,-0.018481275,0.131622,0.17497712,-0.34224376,0.34405345,0.17506301,0.03541973,-0.12935044,0.048721306,-0.4446497,0.15578839,0.30417204,-0.111914314,-0.121121965,0.0929509,-0.017727112],[0.3040071,0.5304203,-0.0030280105,-0.020691369,-0.32636136,0.48215166,-0.24673954,0.032341566,0.1636895,0.13916636,-0.15661035,0.5669737,0.18278182,-0.6610388,-0.009479835,-0.2828995,0.15746541,0.07788113]],"activation":"σ"},{"dense_2_W":[[-0.34190053,-0.17745249,-0.15337539,0.27886426,0.69785804,-0.56094927,0.87852126],[0.4731782,0.33899984,-0.32553697,-0.5920245,-1.1791692,0.35757312,-1.2558827],[-0.17805865,-0.21635677,-0.082375415,0.42723528,0.44513035,-0.8980545,-0.15309213],[0.33529067,-0.05726452,-0.480721,-0.7930404,-0.69926023,0.8291907,-1.0018113],[-0.103077516,-1.2176032,-1.2135342,-0.18128513,-0.8239158,-1.0818433,0.37739542],[-0.016627673,-0.21135633,-0.07407072,-0.7603306,-0.2276791,1.0221021,-0.37553006],[0.31585032,0.14014794,0.72860646,0.022745533,-0.023529714,1.016683,0.16218413],[0.41354743,-0.30034938,-0.683525,0.302346,-0.41821057,-0.86687744,0.6552664],[0.1185467,-0.7869525,-0.43301994,0.2526739,-0.794169,-1.1868601,-0.19882572],[0.1250559,-0.57725024,-0.9392709,0.31270868,-0.6713074,-1.3244504,0.6004076],[-0.32635778,-0.025522923,-0.15778969,-0.76357174,-0.83400786,1.0821341,-0.69009364],[-0.18017006,0.31208438,0.18055223,0.13536966,0.37867144,-0.9807895,0.6815438],[-0.013808813,0.16385165,-0.34636796,0.37806544,-0.3967438,-0.69719434,0.17996557]],"activation":"σ","dense_2_b":[[0.067470364],[-0.26331186],[0.06993582],[-0.23382637],[-0.06892213],[-0.10123643],[-0.044926178],[-0.05964296],[-0.045392096],[-0.04618724],[0.16808233],[-0.003218339],[-0.07415678]]},{"dense_3_W":[[0.11602406,0.73329675,-0.17197938,0.64163977,-0.71038646,0.8112198,0.2608411,-0.6153334,-0.26859817,-0.67736506,0.33450362,-0.5620311,0.19605356],[-0.59497255,0.628338,0.24506254,0.019271871,-0.5683355,0.58888596,-0.36362818,0.41652063,-0.003895321,-0.26925486,-0.1982826,-0.32602772,0.5407099],[-0.57255495,0.2139631,-0.28807914,0.01145839,0.31905892,-0.15611991,0.47299016,-0.6717293,-0.11661602,0.32700828,0.41476637,0.13788031,-0.49381214]],"activation":"identity","dense_3_b":[[-0.023692269],[0.0855048],[-0.01574187]]},{"dense_4_W":[[-1.4620413,-0.09824631,-0.97454345]],"dense_4_b":[[0.0232099]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json new file mode 100644 index 0000000000..971897d6f7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_SONATA_LF.json @@ -0,0 +1 @@ +{"input_std":[[7.697617],[1.0609225],[0.4379445],[0.037631202],[1.0623844],[1.0616655],[1.0594143],[1.0256116],[0.99824595],[0.9636123],[0.927896],[0.037490875],[0.037519626],[0.03754297],[0.03749497],[0.037434172],[0.03738278],[0.03713714]],"model_test_loss":0.015784617513418198,"input_size":18,"current_date_and_time":"2023-08-07_17-59-15","input_mean":[[22.772198],[-0.015615957],[-0.00096197607],[-0.0010119482],[-0.010546596],[-0.010836963],[-0.011236375],[-0.011094289],[-0.012648121],[-0.013635343],[-0.017397134],[-0.0010358563],[-0.0010145861],[-0.0010011211],[-0.0010085123],[-0.0010529933],[-0.00111335],[-0.001285189]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.7229438],[-3.3683147],[-0.1282507],[-0.31550232],[-0.058664136],[-0.95240706],[-1.0986025]],"dense_1_W":[[-0.7789607,1.9123646,0.39085448,-0.76762176,0.14567389,0.8066052,-0.43277985,0.2297818,0.42394215,0.33902678,0.07674288,0.46162274,-0.30707216,-0.25233504,0.19915079,-0.3460779,-0.054854672,0.1426618],[-0.7302568,-1.7004513,-0.37651184,0.7811046,-0.6319955,-0.51594245,0.55498344,-0.18935819,-0.5285875,-0.24025975,-0.1379504,-0.2577349,0.15419608,0.12393667,-0.11645755,0.28632703,0.012518243,-0.093591586],[0.6120753,-0.042914443,-0.0007887555,-0.42378148,-0.44867167,-0.70841163,0.7576831,-0.0939431,0.27074918,0.111739814,-0.2615336,-0.97394973,-0.07050334,0.9536129,0.39760146,0.11356349,0.23691247,0.0036621983],[-0.012153974,2.5360656,3.6491127,-0.46920162,-1.7772331,-0.7169024,-1.3301034,-1.1953633,2.5687883,1.1499572,-0.9038787,0.6629773,0.34683412,-0.42444223,-0.25739744,-0.3469017,0.056961935,0.29270503],[0.017274002,0.5840407,-0.0023877379,-1.808923,0.3084969,1.3571715,-0.58538103,-0.2375718,0.09313133,0.6554645,-0.18251002,0.42035452,0.1955895,0.31606016,0.75343394,-0.13268644,0.11386261,-0.08166157],[-0.6063996,-0.5005416,-0.00912951,0.44437352,0.36323333,0.11949726,1.0753121,-0.31381848,-0.58282745,-0.09158226,0.44612095,-0.02124081,0.3982341,0.28105518,-0.5664151,-0.72633684,-0.068839945,-0.013206231],[0.8306485,0.08912472,-0.0052987277,0.64255923,0.7617923,0.7024269,-0.8749369,-0.058627207,-0.20296139,-0.30535534,0.43017447,0.85471725,-0.12971222,-0.4191892,-0.5445941,-0.6685368,0.036711175,-0.07217302]],"activation":"σ"},{"dense_2_W":[[-1.0357116,0.9065824,0.31460804,0.10403336,-0.74875206,0.45047748,-0.85107225],[-0.31625268,-0.4494891,-0.6104021,-1.392215,0.4076329,0.14704718,-1.4530859],[-0.42341897,-0.4814765,0.14645709,-0.46671197,-0.3856185,-0.13905132,-0.04437501],[-0.39645517,0.2137238,-0.42819747,-0.36393335,-0.40245435,-0.34181696,-0.02817246],[0.53853995,-0.4282784,0.22716291,-0.40256846,0.638609,0.15241797,0.37022516],[1.1081164,1.7182009,-0.90255654,-2.231287,-0.1349012,1.1165563,-1.5446924],[-0.5763982,-0.065446824,0.4192874,0.2743847,-0.90122163,0.02639325,-0.13482374],[-0.7385771,0.08592593,0.8796296,-0.23078102,-0.24460639,0.50752836,-0.08413138],[-0.10253753,-0.17410895,-0.73427474,0.27838975,0.50574356,0.08523981,0.3418018],[0.0016925063,-0.5907013,-0.85067403,0.30883756,0.4896555,0.11207346,-0.16476792],[-0.15516539,0.26878807,0.57642984,-0.83853066,-0.33322036,0.4774422,-0.9348281],[0.4693064,0.1862027,-0.6251714,0.25223947,0.41830084,-0.44884276,0.2828574],[0.10416213,-0.36627316,-0.822629,0.20704469,0.16795447,0.081779845,-0.4003506]],"activation":"σ","dense_2_b":[[0.20383972],[-0.31411672],[-0.22941822],[-0.028190762],[-0.031698458],[-0.6003632],[-0.15707792],[0.10450507],[-0.06457617],[-0.12753844],[-0.05697597],[-0.10512635],[-0.03311049]]},{"dense_3_W":[[0.6161703,-0.20014547,0.51343465,0.32414958,-0.4191405,-0.094090216,0.6916015,0.68653065,-0.46503648,-0.32374275,0.20278896,0.0272236,-0.40860736],[0.016187323,0.4218443,-0.39871958,-0.49440855,-0.20302232,0.7119994,-0.19964194,0.4442079,0.3104815,-0.5141474,-0.18292132,-0.009729394,-0.43212843],[-0.02621932,0.42008805,-0.41170013,-0.36279938,0.49049714,0.13969359,-0.38049182,0.22852893,-0.5885065,0.420613,0.49065357,-0.67078143,-0.24520677]],"activation":"identity","dense_3_b":[[-0.04161267],[-0.03253271],[-0.033194877]]},{"dense_4_W":[[-1.1191984,-0.70736027,-0.7379151]],"dense_4_b":[[0.038523376]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json new file mode 100644 index 0000000000..57b9f626aa --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/HYUNDAI_TUCSON_4TH_GEN.json @@ -0,0 +1 @@ +{"input_std":[[7.4087214],[1.0962394],[0.552085],[0.045840405],[1.0842694],[1.0885813],[1.0920763],[1.0729834],[1.0586178],[1.0390083],[1.0111257],[0.04568487],[0.045708325],[0.045725018],[0.045583706],[0.045519102],[0.045363124],[0.04511732]],"model_test_loss":0.0031460165046155453,"input_size":18,"current_date_and_time":"2023-08-08_03-31-08","input_mean":[[22.685059],[-0.04596198],[-0.0031675429],[-0.010991076],[-0.04475341],[-0.04535443],[-0.04585154],[-0.045443647],[-0.042782683],[-0.043330435],[-0.042112358],[-0.011107673],[-0.011077235],[-0.011044265],[-0.010814458],[-0.010676653],[-0.010754372],[-0.010827275]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[5.1307755],[-0.22914484],[-0.08857657],[0.011367913],[-5.177985],[2.9143384],[1.9856763]],"dense_1_W":[[1.2700648,2.4509182,0.42634973,-0.043660536,0.07598462,0.6747098,-1.1844238,-0.047003433,0.04515124,0.38031095,-0.29778752,0.19533536,-0.08757439,-0.33965743,0.66066694,0.11041075,-1.1397349,0.1881033],[-0.018975187,0.86162823,3.7638307,-0.51357865,0.43678054,0.40158442,-0.9920606,-0.42070356,0.2959596,-0.43891278,-0.022803979,0.972302,-0.3332229,-0.17261001,-0.3463398,0.23325261,0.049253233,0.020867042],[0.013230203,0.20721851,-0.005705704,-0.05253921,0.31700867,1.174462,-0.7808391,0.113812,0.07265435,-0.14510319,0.16861048,0.7564678,-0.031058798,0.115615994,-0.5682336,0.123778,-0.68434507,0.43895295],[0.010290787,0.12781261,-0.0023238414,-0.41893026,-0.35603276,1.2424941,-1.300665,0.528987,0.19249827,-0.0497169,-0.10521977,0.3558453,0.17937179,0.042039894,-0.69474906,-0.3783733,0.48399767,0.008863078],[-1.2171276,1.6279436,0.41698736,0.040549632,0.39905706,0.23700579,-0.4378377,-0.0051275906,0.23958966,0.23730484,-0.23500912,-0.0059611434,0.14673305,-0.28380656,0.46382582,-0.36074856,-0.3228667,-0.12749387],[0.5837035,-1.46317,-0.0014780383,0.05828605,0.6278459,-0.7193519,0.7438587,0.97596496,0.31377402,-0.5242437,0.07906513,0.06160492,0.053548303,0.31995016,-0.07082522,-0.648382,-0.29354775,0.5114841],[0.7796686,0.82628,-0.0014781661,0.08306547,-0.45119047,0.8933981,-0.6380061,-0.66575885,-0.43284875,0.24002665,0.13119845,-0.038445093,-0.056063775,-0.4277078,-0.019120147,0.74485147,0.2288264,-0.4735436]],"activation":"σ"},{"dense_2_W":[[-0.77505285,0.44785905,-0.4859164,-0.69656503,-0.3268532,-0.043176193,0.30929434],[-0.533772,0.92544174,0.6345639,0.38062403,1.4165294,-1.2982454,-0.9251346],[-0.29203573,-0.23658712,0.76349384,0.56426525,0.22437766,-0.375684,0.379061],[0.3641449,0.05223953,-0.22189741,0.45458284,0.025595745,0.20614897,-0.5833691],[-0.912483,-0.95896566,-0.32421297,-0.28912008,0.70729816,0.22977747,-1.0203142],[-1.0123776,-0.8513916,-0.5037631,-0.2299052,0.7295842,0.08601015,-0.9566463],[0.32550806,-0.6377905,0.4949481,0.108062916,0.9683189,-0.37003064,-0.11962097],[-0.17852181,-0.39138564,-0.094003476,-0.18062831,-0.9090928,1.1256458,-0.014201421],[-1.4999908,-0.7281591,0.02269345,-0.42794332,0.49982706,-0.16169797,-0.2747838],[-0.23206441,-0.45395112,-0.50797534,0.039583728,-0.51249075,0.042664643,-0.37662345],[-0.10693958,0.07380252,-0.0014285411,0.24690871,1.4165428,-0.9269869,-0.034422167],[0.38615483,-0.5410777,-0.09538446,0.5820919,0.2631145,-0.26281682,0.02736992],[0.29233518,0.044993673,-0.016566137,0.47320673,-0.22927615,-0.55325514,-0.14620171]],"activation":"σ","dense_2_b":[[0.22806741],[-0.58099383],[-0.14560527],[-0.22234294],[0.23043375],[0.33217996],[-0.14389473],[0.2759481],[0.13984576],[-0.22704253],[-0.27780655],[-0.21868534],[-0.4021424]]},{"dense_3_W":[[-0.81395864,0.69009596,0.594186,0.3081578,-0.8761271,-0.9944457,0.26057324,-0.49558344,-0.02225669,0.42718655,0.4395653,0.36918622,0.12211585],[0.36394253,-0.2486054,0.21003513,-0.69946647,0.4221953,0.36324582,0.09421991,0.4322135,0.3120558,0.15996966,-0.38080767,-0.10931592,-0.27037248],[-0.120345704,0.63140625,0.41101453,-0.48626202,-0.93907106,-0.19290596,0.12457818,0.051282577,-0.86917734,-0.68639874,0.7245342,-0.21468553,-0.09911791]],"activation":"identity","dense_3_b":[[-0.0466283],[-0.09009529],[-0.011769824]]},{"dense_4_W":[[0.9855905,-0.11999337,0.6430469]],"dense_4_b":[[-0.037628047]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json b/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json new file mode 100644 index 0000000000..cba87588f0 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE.json @@ -0,0 +1 @@ +{"input_std":[[8.254862],[1.1385337],[0.41576585],[0.043710105],[1.1287707],[1.132625],[1.1353652],[1.1196473],[1.0987684],[1.0703217],[1.0421079],[0.04358062],[0.043615773],[0.043639626],[0.04353495],[0.04332622],[0.04291046],[0.042309582]],"model_test_loss":0.014948678202927113,"input_size":18,"current_date_and_time":"2023-08-08_08-31-33","input_mean":[[24.234503],[0.023715263],[0.0013837352],[-0.016846638],[0.024842778],[0.024989845],[0.024956135],[0.025811702],[0.027098333],[0.02575938],[0.025799232],[-0.016848726],[-0.016819052],[-0.016790438],[-0.016748805],[-0.016675282],[-0.016660813],[-0.016719952]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.1555274],[-1.2548984],[-0.4566681],[-1.6319039],[-0.14648859],[0.13250285],[0.9906875]],"dense_1_W":[[1.3423415,-0.24642485,0.006111532,0.012378954,0.82595116,-0.17717491,0.24821205,0.42500618,0.6834485,0.018730227,-0.1565104,0.09215833,-0.36679584,0.0047377744,0.24215446,0.43317646,-0.18074779,-0.17103945],[-0.5176677,-0.7046031,0.0015316915,0.14099175,-0.0733852,-0.6077859,0.2935369,-0.076649874,-0.110761255,0.051375758,-0.0816902,-0.05404265,-0.17823854,0.2719146,0.047899935,-0.5356291,0.31465584,0.016353693],[-0.111515455,0.7519741,4.21518,0.05408819,-1.119347,-0.20324452,-0.08807333,-1.244985,1.5230471,1.5096039,-0.717811,0.2608386,0.15778817,0.23581202,-0.56306803,0.31904206,-0.38444847,-0.19765459],[-0.5268752,0.76404643,-0.0017947298,-0.3977187,-0.22531988,0.6545117,-0.038231295,0.07132816,0.14574783,0.020449052,-0.010587621,0.0513172,0.25084835,-0.10950242,0.26603368,0.061757516,-0.2410503,0.07645558],[-0.00076164474,0.7578842,0.010459518,-0.12878841,-0.36717027,0.2933262,-0.9912176,0.64869034,0.30009547,0.2382631,-0.4692174,0.9048082,0.089927815,-0.3356697,-0.620122,-0.5221165,-0.043559503,0.49379468],[-0.013825502,0.7339534,-0.0039100796,-0.055555224,-0.0005979433,0.83517665,-0.20551458,0.24547431,0.40483287,0.01048875,-0.1659191,0.37662286,-0.18053651,-0.5086211,-0.052123472,-0.2253914,0.26272738,-0.00324899],[1.4422294,0.10161895,-0.009221952,0.0001851067,-0.5961213,0.35581017,-0.40002102,-0.57796574,-0.72453356,-0.2504394,0.40512785,0.33791512,0.23944646,-0.5331633,-0.10079834,-0.14660199,-0.12033143,0.26091284]],"activation":"σ"},{"dense_2_W":[[-0.7369561,0.02455093,-0.46102518,0.1283071,-0.7312183,0.10579285,-0.6936246],[-0.7311419,-0.749299,0.3388481,0.18734214,0.79592025,0.29745373,0.17872249],[-0.22437106,-0.45606863,0.29539058,0.5096125,0.5026677,0.12546055,0.85000384],[-1.3382739,-1.1157519,0.10686484,1.3033385,0.385738,0.17410201,-0.19884275],[-0.1854942,0.42922994,0.28422222,-1.1910807,-1.0079081,-0.23142847,8.624731e-5],[-0.39573595,-0.7930596,-0.130986,0.841052,0.45527455,0.13693747,0.12886971],[-0.73722404,1.5512154,-2.526512,0.409384,0.048512198,-0.16389945,-1.4609332],[-0.5329282,1.3224562,-0.89408386,0.12158089,-0.8545148,-0.67364424,-0.5871783],[0.8857724,0.6694776,-0.603088,-0.26001891,-0.79026496,-0.23295787,-0.30123875],[-0.10273737,-0.6942836,-0.45611718,1.081006,0.4116631,0.74641204,0.097880006],[1.5226238,1.1838912,-0.7302709,-0.74710697,-0.15506236,-0.9069341,0.47763306],[0.41078228,1.0947998,0.33479145,-1.2295458,-0.73588777,-0.35713267,-0.4043876],[0.051438108,-0.25903246,0.011029442,0.29265,0.4014094,-0.55543566,-0.45906964]],"activation":"σ","dense_2_b":[[-0.23664342],[-0.20603849],[-0.17615202],[-0.3781619],[0.0006889099],[-0.081270784],[0.25464833],[0.013770528],[0.22249864],[-0.026060008],[0.62564516],[0.11952428],[-0.12836026]]},{"dense_3_W":[[-0.074207924,-0.505883,-0.40938795,-0.59246546,0.7246955,-0.35897088,0.79559946,0.4252552,0.53429896,-0.7682427,0.41834652,0.73031914,0.09650071],[-0.49922326,0.3795509,-0.38837686,0.6977958,-0.5670746,0.28678024,-0.24660635,0.4053855,-0.20115663,0.21688443,-0.26936162,0.17709436,0.43220088],[-0.2724911,-0.0043004784,-0.3452385,0.35134262,-0.31723148,-0.32032728,-0.33450916,0.66542053,0.58240664,0.0893131,0.18599492,0.4492229,-0.58078444]],"activation":"identity","dense_3_b":[[-0.072912164],[0.02573561],[-0.051938336]]},{"dense_4_W":[[-1.0250915,0.18725124,-0.05788247]],"dense_4_b":[[0.0649493]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json b/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json new file mode 100644 index 0000000000..2942415d1f --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/JEEP_GRAND_CHEROKEE_2019.json @@ -0,0 +1 @@ +{"input_std":[[5.4780097],[1.2577926],[0.43811297],[0.051083397],[1.2457128],[1.2499636],[1.2529455],[1.2401595],[1.223894],[1.1997709],[1.1767297],[0.050826065],[0.0508941],[0.050945964],[0.050895486],[0.050689384],[0.05035568],[0.049934413]],"model_test_loss":0.011547946371138096,"input_size":18,"current_date_and_time":"2023-08-08_05-36-40","input_mean":[[27.111942],[-0.03980634],[-0.0022899704],[-0.006063226],[-0.03720769],[-0.03763983],[-0.038365092],[-0.03697022],[-0.03660629],[-0.03213649],[-0.029237831],[-0.0060009984],[-0.0060217986],[-0.0060452693],[-0.0060623847],[-0.0061068335],[-0.0060221725],[-0.006052836]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.12641694],[-0.33899814],[-0.25064033],[0.20345357],[-0.22338079],[-0.8124178],[0.16103578]],"dense_1_W":[[1.3942753,-0.3584407,-0.154166,0.022718882,0.5902439,-0.22766683,0.2832875,-0.22318293,-0.25568873,0.28416058,0.12970877,-0.500204,-0.5363517,0.45337692,-0.13542888,0.054177634,0.13246426,-0.022701526],[-0.005614037,-0.74243695,-0.024937803,-0.016466122,0.16694336,-0.79974186,1.0153489,-0.21336944,-0.3901125,0.23960757,0.0332596,-0.07577539,-0.42862704,0.4491737,0.17550863,0.31181923,-0.16353676,-0.07374046],[-0.0031423056,-0.57563585,0.017968522,0.3929503,-0.15378566,-0.63862056,0.15106781,-0.12307793,0.23466262,-0.24525358,-0.0012493497,-0.6446595,0.23389706,0.2918894,0.012215268,-0.17649019,0.35015333,-0.16645752],[0.04239965,0.5392046,4.068176,0.13729823,-0.68696815,-0.07966062,-0.088794686,-0.3782991,0.8575764,0.7636464,-0.54163724,0.9711964,-0.018747166,0.14241268,-0.38917318,-0.40814298,-0.3224793,-0.29323283],[0.8142449,-0.7080669,0.16443568,0.63644344,0.28831044,-0.24459267,0.6272347,0.22174281,0.1637401,-0.70512813,0.2843761,-0.16773595,-0.27920532,0.55365586,0.256064,0.11410076,-0.021043133,-0.39824295],[-1.6068854,-0.2603165,0.18158215,0.49356657,0.12779,0.17468308,0.25797316,0.08986019,-0.3094926,-0.6496034,0.49420497,0.34940144,-0.21054225,0.10816955,0.0055429307,0.37773353,-0.37752208,-0.09018268],[-0.7694553,-0.07489691,-0.16786428,-0.00053137547,0.4097508,-0.36562666,0.12501729,-0.19840546,-0.0126358615,0.039615765,0.18806833,-0.54327863,-0.51791424,0.0740618,0.22897214,-0.18245429,0.3604914,-0.09582553]],"activation":"σ"},{"dense_2_W":[[0.24724053,-0.8135549,-1.0432718,-0.47479427,0.23202157,-0.11595288,-0.8035583],[-0.3641042,-0.91288745,-0.17233254,0.062157948,0.012575541,-0.2614273,-0.5772882],[0.29817045,0.49287653,0.19307482,-0.8773637,0.06299248,0.41714546,0.44092533],[-0.22270527,-0.7510113,-0.320351,0.13680461,-0.70703113,-0.12383241,-0.13850203],[0.5840328,-1.1061023,-0.6563664,-0.8935429,-0.123855405,-0.70505697,-0.63111097],[0.99201673,0.9417266,0.9312267,-0.81133705,0.5478353,-0.04604467,0.02872271],[-0.26014936,-0.412083,-0.7116672,0.29321614,-0.5735676,0.29037717,-0.7531203],[-0.38308242,1.0270671,0.65335995,0.19699557,0.48486,0.23515755,-0.14074802],[-0.7378848,0.32173055,0.28095686,-1.3347943,-0.10628233,0.2015702,0.62443095],[0.47323346,-0.77164555,-1.1039329,0.018455347,-0.5227511,0.69003034,-0.2582299],[-0.7601159,-0.2633271,-1.0450773,0.6082064,-0.675639,-0.23727775,-0.028281933],[-0.72581375,-0.90512085,-0.6048286,0.46046877,-0.6226022,-0.07060259,-0.21025342],[0.216426,-1.0285689,-0.4780186,-0.22132304,-0.5840384,-0.53020334,0.15992962]],"activation":"σ","dense_2_b":[[0.15380488],[0.10775849],[-0.19009462],[0.13743988],[-0.026639858],[-0.07323958],[0.1744765],[-0.21176378],[-0.6805215],[0.025015425],[-0.07340503],[0.20637435],[-0.27417326]]},{"dense_3_W":[[-0.400137,-0.17929879,0.37570322,-0.41039902,-0.78768486,0.45827937,-0.33256137,0.5615223,0.31010586,-0.35362414,-0.12100718,-0.41779718,-0.6763564],[-0.029315872,0.38450587,0.65436715,0.5139883,0.5027268,-0.20125258,-0.6333471,-0.34089682,0.29030252,-0.47958472,-0.50353307,0.046102453,-0.1736601],[0.7619456,0.69776905,-0.5650997,0.6306316,0.2189477,-0.5332646,0.4607702,-0.63797,-0.0884034,0.2954164,0.25978985,0.40438277,-0.020070346]],"activation":"identity","dense_3_b":[[-0.039152775],[0.10458916],[0.05406968]]},{"dense_4_W":[[-0.4555721,0.005902641,1.1475917]],"dense_4_b":[[0.05754332]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json new file mode 100644 index 0000000000..56d771db4f --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_CEED.json @@ -0,0 +1 @@ +{"input_std":[[7.128073],[1.9819432],[0.67647],[0.03768782],[1.9757774],[1.983661],[1.9863665],[1.9118274],[1.8144435],[1.6810344],[1.5267222],[0.037616044],[0.03765301],[0.037677314],[0.03763337],[0.037550315],[0.037358243],[0.036996108]],"model_test_loss":0.008689496666193008,"input_size":18,"current_date_and_time":"2023-09-02_03-20-12","input_mean":[[14.68071],[0.021380786],[0.46259907],[-0.004524958],[0.022391],[0.022068378],[0.021636909],[0.017254867],[0.01384061],[0.011885543],[0.0075867935],[-0.0047742473],[-0.004707863],[-0.004638913],[-0.004404541],[-0.0042158943],[-0.004056291],[-0.0040879687]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.1280082],[-1.1454269],[-0.5907967],[-0.09462522],[-1.5222621],[-0.06474111],[-0.18497786]],"dense_1_W":[[-0.7009141,-0.38039988,0.004431449,-0.012658321,-0.22134589,0.40167508,0.24670589,-0.16331027,-0.6081444,0.044047765,0.15884489,-0.28576955,0.5305393,-0.21158585,0.01631704,0.0164069,-0.04090381,0.03749079],[-1.2070944,0.33291462,-0.00065425114,-0.15011062,0.107518055,-0.18207166,-0.14097372,0.41454053,0.0068484033,-0.22716488,0.103904985,-0.09329521,-0.06751863,-0.041087177,0.60482687,-0.26763386,0.11107493,-0.1320544],[0.4323738,-0.7883933,0.018195441,0.1580461,-0.6474651,-0.6159256,-0.9379849,-0.37990838,0.68379474,1.044618,1.4096797,-0.40671948,0.1614424,-0.11615482,0.12993212,0.37938693,0.11391126,-0.3182603],[-0.13848633,0.090352476,0.01572969,0.3221026,1.8986752,1.4132906,1.0738622,-1.0810357,-1.1936059,-1.3231126,-0.6220339,0.24080239,-0.34178606,-0.17251074,0.07337686,-0.21869779,-0.14425553,0.15532547],[-1.3020873,-0.3577446,0.004843032,-0.19699144,0.61322373,0.27911437,0.032230213,-0.86169994,0.13983178,0.12466293,0.17854461,0.07389106,-0.24750361,0.07031268,0.20702806,0.16463912,0.10438393,-0.1978545],[-0.16901715,0.3392736,0.004554811,-0.27741778,0.45267153,-0.3854464,0.30139357,0.38105348,-0.54760116,-0.1830378,0.25936118,0.2037518,-0.045803245,0.18543306,-0.3661198,0.30218798,-0.18051952,0.088926606],[-0.04060996,-1.2018764,-0.0063867588,-0.1523224,-0.23714058,0.14187981,0.37231123,-0.21963619,0.48160625,-0.064321116,-0.08458865,0.098526716,-0.23027526,0.29377708,0.07306222,0.05420829,-0.027615033,0.032934707]],"activation":"σ"},{"dense_2_W":[[-0.9896441,-0.91121817,-1.3145435,1.5384254,-1.8210615,0.4096885,-0.6555594],[-0.5512578,0.706973,0.1739295,-0.2688923,0.0792371,0.2261899,-0.93914133],[-0.17643008,0.37539357,-0.52018803,-0.60483295,-0.40311056,0.00969808,-0.60566235],[0.5127232,-0.6856154,-0.38688743,0.5137769,0.043315798,-0.31914636,0.55572736],[-0.4251685,0.8384956,-0.44557106,-0.33929333,-0.2585186,0.5259269,-0.57586336],[-0.10946882,-0.59604675,-0.20513241,0.4133915,0.30031222,-0.061005022,0.73186797],[0.17562889,0.145244,-0.26974306,0.28159103,0.1361736,-0.8459545,0.5167652],[0.050689343,-0.7800611,0.38343653,0.51704615,-0.014367372,-0.110503346,0.6778625],[0.20051907,-0.08033896,-0.1346465,0.4862248,0.26726595,-0.49421996,0.058299515],[-0.6299042,0.62805223,-0.79595345,-1.3490283,0.5333974,0.47591394,-0.63695586],[-0.90749574,0.033430014,-0.9152016,-0.031571057,-0.5695399,0.42602757,-0.27167413],[-0.17134069,-0.100465134,0.49037132,-0.2590825,-0.40358037,0.59190834,-0.2740423],[0.4622381,-0.2463554,-0.19674955,-0.23713845,0.62164,-0.40453714,0.3900809]],"activation":"σ","dense_2_b":[[-0.16326958],[-0.049766444],[-0.07038124],[-0.11578319],[0.066625684],[-0.1020039],[-0.12042527],[0.06384306],[-0.14624113],[-0.08538901],[0.01569337],[0.09202553],[0.00027780043]]},{"dense_3_W":[[0.7518775,0.02956615,0.6283354,-0.04630323,-0.31706655,0.42018586,-0.10056567,-0.7526844,0.40103868,1.063733,0.057580598,0.4941196,-0.70732373],[0.27228886,0.64840984,-0.030330945,-0.5357204,0.562624,-0.42896906,-0.22066677,-0.5914074,-0.64570546,1.042475,0.021803057,0.59831506,-0.15360864],[-0.9862492,-0.22666612,0.13068162,0.7076782,-0.28517807,0.4069032,0.24799564,0.2690811,-0.46506408,-0.38062972,-0.8088552,-0.4484452,0.12431305]],"activation":"identity","dense_3_b":[[-0.09667684],[-0.03777417],[-0.07913758]]},{"dense_4_W":[[0.31394643,1.0359226,-0.3090591]],"dense_4_b":[[-0.04020227]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json new file mode 100644 index 0000000000..9e89e1b73c --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_EV6.json @@ -0,0 +1 @@ +{"input_std":[[8.864324],[1.195729],[0.5000528],[0.045503624],[1.1876615],[1.1897441],[1.1915259],[1.1731166],[1.1543447],[1.1241426],[1.0919412],[0.045285385],[0.045317214],[0.045348417],[0.04523818],[0.044993326],[0.044672333],[0.044197746]],"model_test_loss":0.010650141164660454,"input_size":18,"current_date_and_time":"2023-08-08_10-38-45","input_mean":[[22.725025],[-0.055808485],[0.001137117],[-0.015166062],[-0.053198244],[-0.053012587],[-0.05277475],[-0.05324079],[-0.05459143],[-0.05888146],[-0.061499923],[-0.015064281],[-0.015065552],[-0.015068696],[-0.015092874],[-0.015163227],[-0.015276051],[-0.015225322]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.8403706],[1.9263608],[-0.02353573],[0.13397901],[0.053899422],[-0.64194036],[1.533293]],"dense_1_W":[[1.215834,0.5290091,0.0010350833,0.58499736,0.13186142,-0.31402144,-0.21469525,0.38816625,0.23431656,0.29439512,-0.31795207,-0.4929344,0.027251905,0.4290527,-0.27181652,-0.25157085,-0.13006414,0.19127874],[0.2723699,1.2427698,0.0014152995,-0.43297893,-0.48355135,1.1187311,-0.24734323,-0.09894979,0.11120238,0.28424853,-0.010035362,1.1629834,-0.19423008,-1.0324532,0.13956966,0.09991054,0.112085946,-0.1749808],[-0.19893286,-0.17605188,-0.0030688597,0.05146822,0.27002192,-0.7286609,0.43610734,-0.14199519,-0.0853716,-0.101905815,0.073544376,-0.46090946,-0.18160121,0.4364794,0.10960736,0.04185993,0.26554465,-0.31036776],[-0.011314031,0.4353308,3.653043,-0.05127646,-0.1675842,0.31245592,-0.18524799,-0.27518684,0.44928986,0.26701117,-0.52353877,0.41049197,-0.26632294,-0.028535297,-0.29766062,-0.048215423,-0.3651719,0.3764775],[1.5780559,-0.08976564,-9.765889e-5,-0.26617634,0.24203834,-0.8669704,1.1116273,-0.0742143,-0.2221292,-0.054146104,0.16106835,-0.92289317,0.365733,0.5554041,0.15667431,0.3766961,0.2937706,-0.38773754],[-1.6040205,-0.47703403,0.002361407,0.07246606,0.53856707,-0.90088457,0.95031244,0.007901789,0.048565075,0.0043789237,0.04390007,-0.9249038,0.1373752,0.6529523,0.4923536,-0.27184066,0.13291296,-0.11895679],[0.2517245,-1.1308137,0.0034714418,0.1780916,0.10587542,-0.8159195,0.4059062,-0.03472441,-0.04591407,-0.26056758,-0.016641837,-0.5397002,0.108333215,0.5678768,0.039879672,-0.132191,-0.21716514,0.2923616]],"activation":"σ"},{"dense_2_W":[[-0.48967394,-0.51389205,0.113997415,0.016403848,0.5711787,0.15113378,0.4878009],[-0.2635089,0.21487024,-0.7652375,-0.8594565,0.295536,-0.23716962,-0.41961473],[-0.88732815,0.43693033,-1.120157,1.132662,0.06735183,-0.01847645,-2.4321022],[0.01924355,-0.03326971,-0.11982994,-0.620888,-0.33939648,0.13469471,0.18667164],[0.3868043,-0.32892308,0.5205381,-0.04860096,0.63565564,0.5115548,0.18762778],[-0.617038,-1.3592334,-0.1403255,-1.1278222,0.28842503,0.97025603,-0.17546569],[-0.55640936,-0.90946704,-0.37307426,-0.58689624,-0.29243192,0.10891342,-0.54093736],[-1.3703765,-0.16418502,-0.823949,1.6223699,-1.0620314,0.53991866,-2.127252],[-0.009325325,1.5309258,-0.16605411,0.7356731,-0.34463426,-0.6377375,-0.29067755],[-0.39712206,0.07344511,-0.75337785,0.14594577,-0.71447504,-0.70417905,-0.90238726],[-0.5242973,-0.42696825,0.40271243,0.5059833,0.7945543,0.64832735,0.23148233],[0.3530504,-0.88467205,0.88836426,0.33030617,0.049364965,0.01906914,0.4844055],[-0.4703546,-0.24426712,0.7923177,0.36024544,0.0022455095,0.052522115,0.8682579]],"activation":"σ","dense_2_b":[[-0.17262366],[-0.14012913],[0.12171151],[-0.18287124],[-0.20833604],[-0.1185827],[-0.17963924],[0.059548587],[0.52694756],[0.41090366],[-0.200375],[-0.20045975],[-0.153012]]},{"dense_3_W":[[-0.07465968,0.15956515,0.46311855,0.014608014,-0.444435,-0.7115352,-0.30661452,0.73835003,0.8836145,0.9389069,-0.5226219,-0.41022688,-0.41954798],[-0.60114104,0.003818114,0.17285155,0.044011418,-0.4042057,-0.7233705,-0.45021132,0.0065049254,0.3945897,0.92667377,0.58642626,-0.5636264,0.041805413],[-0.40279514,0.053986654,-0.03796396,-0.01619937,-0.3810127,0.20270245,-0.16480388,-0.09316253,-0.31165186,0.23359255,0.42131686,0.16401958,0.35183364]],"activation":"identity","dense_3_b":[[0.10906697],[0.11099494],[0.09338066]]},{"dense_4_W":[[1.0284308,0.2183279,-0.010448182]],"dense_4_b":[[0.106538475]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json new file mode 100644 index 0000000000..5256a3e1b8 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_K5_2021.json @@ -0,0 +1 @@ +{"input_std":[[8.854179],[1.1303082],[0.53015584],[0.03889556],[1.123932],[1.126327],[1.1281773],[1.1152551],[1.0980102],[1.0719626],[1.0425837],[0.038768984],[0.038817387],[0.03885716],[0.03881795],[0.03875846],[0.0386614],[0.038491134]],"model_test_loss":0.01249716430902481,"input_size":18,"current_date_and_time":"2023-08-08_13-08-15","input_mean":[[21.914545],[-0.06985225],[0.0069250595],[0.0074601127],[-0.072784856],[-0.07272125],[-0.07216228],[-0.06802319],[-0.062263846],[-0.055437304],[-0.047055077],[0.0074525527],[0.0074529466],[0.0074460334],[0.007305565],[0.0071349433],[0.006932451],[0.0067396]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.1328846],[-1.0045387],[-0.20393331],[0.34046453],[-2.9040704],[-0.88909465],[-1.0122662]],"dense_1_W":[[-0.009380342,0.39705235,-0.00044332718,-0.09147423,0.08871867,0.9096405,-0.59983367,-0.18780915,0.30827704,0.051737268,-0.026273916,0.1966064,-0.08228399,0.07654324,-0.22208402,-0.26681504,-0.0277596,0.20970288],[-0.61757046,-0.8588174,-0.23621607,-0.027208043,0.09026295,-0.43468106,0.6500065,0.006853881,-0.12466401,-0.47896266,-0.2195636,-0.4655939,0.2346326,0.25235915,0.21434762,-0.3650002,0.06806084,0.19297919],[0.010002054,-1.349585,-5.1705165,0.12756625,0.08521816,-0.98372036,0.43257916,-0.057569943,-0.54946965,0.96981055,1.5286827,-0.9813786,0.12952766,0.14352597,0.23754609,0.4159036,-0.0977373,0.048195776],[0.9575999,-0.14470491,0.31414202,-0.09178863,0.14425702,-0.61020595,0.9214482,-0.051314764,0.49639797,0.7580396,0.10446417,0.056817234,-0.1146647,0.19221032,0.121222705,-0.14470126,0.08769907,-0.25462785],[-0.88419044,0.9049013,0.3302875,-0.8633652,-0.44462034,0.61998045,-1.0550838,0.5917251,0.48678157,0.50562924,0.12007341,0.26738396,-0.017963672,0.30564892,0.19286638,0.40492755,-0.14467871,-0.2856948],[-1.3030186,-0.29781476,0.31140298,-0.17929639,0.12359713,0.34227288,0.38400793,-0.4179453,0.20848781,0.7742308,0.35219595,0.0028036782,0.4082305,-0.34966815,0.021426486,0.34787825,-0.19836852,-0.21195874],[-0.58479625,-0.23239343,-0.24123837,0.6287148,0.47498283,-0.7846575,0.8982925,-0.88446414,-0.22690499,-0.40089333,-0.053161245,-0.52477574,0.04346586,0.0012316491,-0.17584592,0.15376398,-0.23099528,0.21563265]],"activation":"σ"},{"dense_2_W":[[0.06019809,-0.17363435,0.009131735,-0.6226487,-0.26803654,-0.040024236,-0.56756294],[-0.14312544,0.49063408,-0.44845125,0.40217203,-0.18071179,0.4310444,0.43489814],[-0.24798368,-0.56137055,0.52847433,0.7304674,0.039464716,0.2093034,0.44131762],[0.811304,-0.7688727,-0.07781592,-0.26929495,0.06020161,0.10069685,-0.2413632],[0.5917001,-0.7344408,-0.7879752,-0.70411605,0.096649006,0.5307449,-0.5803427],[-0.17709559,0.57773626,-0.12374329,-0.39053938,0.05942479,0.36537674,0.3478097],[-0.57855505,0.43059486,-0.29216823,0.44024208,0.109462574,0.05103991,0.6366086],[2.143651,-0.36122483,-0.28893292,-1.1197438,0.8901433,-0.60585576,-0.6609203],[2.3569098,-1.4072812,0.41858813,-1.4579345,1.6088637,-0.65525293,-1.0169],[-0.4568836,0.46699843,0.4344656,-0.108972535,-0.5572416,0.22916758,-0.03445166],[0.726269,-0.7789017,-0.42420408,-0.6138444,0.5996936,0.19354253,-0.40971667],[0.16139944,0.33351776,0.44673514,0.25408468,-0.6194311,-0.102249816,0.24741264],[-0.2875433,0.15023352,-1.0662942,-1.5630789,0.52131546,0.17151031,-0.08705293]],"activation":"σ","dense_2_b":[[-0.056130372],[0.007243945],[-0.049758114],[-0.10406119],[-0.215356],[-0.033409223],[-0.003601784],[0.3017622],[0.28980875],[-0.08838445],[-0.027734138],[-0.04194128],[-0.18084925]]},{"dense_3_W":[[-0.3558706,0.27432942,0.24073915,0.4001887,-0.5080968,0.1751163,0.57690793,-0.34388652,-0.48687238,-0.15128407,-0.3315714,-0.41198158,-0.18070593],[-0.45770586,0.05980327,0.4270051,0.4770666,0.50269896,-0.25726086,0.48697513,0.34577233,-0.074373096,-0.40511134,0.45576844,0.02034731,-0.09106971],[0.4071002,-0.1986135,-0.46739143,0.5110455,-0.26348698,-0.15412426,-0.5601918,0.17882004,0.52172244,-0.3752082,0.43591946,-0.6359482,0.3153758]],"activation":"identity","dense_3_b":[[0.04088854],[-0.057896398],[-0.03347668]]},{"dense_4_W":[[-0.6996337,0.5206291,1.0165205]],"dense_4_b":[[-0.037676737]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json new file mode 100644 index 0000000000..9157493562 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_EV.json @@ -0,0 +1 @@ +{"input_std":[[8.756613],[1.5469935],[0.5868461],[0.048539903],[1.5311569],[1.5367651],[1.5406994],[1.5197327],[1.4855404],[1.433774],[1.3787619],[0.048304897],[0.048386667],[0.048456155],[0.048535753],[0.048419178],[0.048049178],[0.047447804]],"model_test_loss":0.01072931382805109,"input_size":18,"current_date_and_time":"2023-08-08_14-01-31","input_mean":[[19.740038],[0.010453053],[-0.00983059],[-0.008197198],[0.011297055],[0.010507559],[0.009715306],[0.00675721],[0.005983052],[0.005432915],[0.0040853415],[-0.008249147],[-0.008247744],[-0.008244466],[-0.008281346],[-0.008300149],[-0.008453809],[-0.00865498]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-3.7556062],[-2.0698571],[-4.225762],[-0.15726951],[-0.30065513],[-1.0648031],[1.8342476]],"dense_1_W":[[-1.7290211,-1.5173091,-0.23002613,-0.37698144,0.016258085,-0.8270681,1.3781465,-0.7642315,-0.6422404,0.2824734,-0.110180624,-0.3257264,0.5549623,-0.032036513,0.43426138,-0.0714845,0.2864038,-0.21663748],[1.9184333,0.671971,0.04794123,-0.25451732,-0.10465885,0.5573552,-0.37439582,0.24595505,-0.06845002,-0.041696787,-0.05226348,0.22399874,0.03275794,-0.070917316,-0.22555944,0.1414704,-0.0041139866,-0.00024242824],[-1.8817899,1.5202969,0.2509318,0.51012284,0.62497395,0.032136127,-0.979242,0.6263891,0.70745003,-0.31345257,0.18674128,0.12859097,0.07685459,-0.46171176,-0.2280601,-0.33504027,-0.4022656,0.4169894],[0.04874895,1.0698912,-0.029439794,0.07341402,0.3300274,0.7930807,-1.2549204,0.0783156,0.44667515,-0.044906255,-0.043870416,0.46820083,0.10374188,-0.53068924,-0.48136172,-0.074282564,0.12173919,0.0077482965],[-0.04342037,1.5612729,3.16704,-0.28737867,-0.79875565,-0.07702065,-1.1260544,-0.43122292,0.9323476,1.0069447,-0.97308475,1.2108004,-0.18733604,-0.6011836,0.18945155,-0.30365372,-0.16747494,0.19430496],[-0.31009704,1.1274835,0.09042992,-0.03338503,0.018458644,0.5902667,-0.24463883,-0.06990637,-0.159641,0.30669054,0.05195872,0.40048352,-0.029881949,-0.021455474,-0.6194718,-0.10056458,0.027914932,0.17777753],[-1.7739217,0.33766812,0.043878227,-0.7079486,0.070119634,1.0434483,-0.68583184,-0.19537714,0.06398747,0.16186452,-0.09159792,0.9890885,-0.08469821,-0.27189568,0.09402364,-0.43951192,-0.060028143,0.3246841]],"activation":"σ"},{"dense_2_W":[[1.3462045,0.59007597,-1.0555073,-0.72884923,0.30742645,-0.7919825,-0.79060274],[-0.94850713,0.08338297,-0.14278129,0.8774979,0.573835,0.043590613,0.47284335],[0.6373134,-0.7411809,-0.33538958,0.14371277,-0.37772784,0.16757706,-0.5341049],[-0.16109301,0.74011505,-0.12572628,-0.123916484,0.87228954,-0.0765876,0.09092019],[0.75033695,0.0969066,-0.60294336,-0.23090811,-0.39634117,0.18033504,-0.8499323],[-0.9217793,0.014436126,-0.6526303,-1.0338821,0.44630024,-0.17751805,-0.63913804],[-0.090204455,0.4812081,0.26368377,0.015731392,0.9630277,-0.17355147,-0.11038842],[0.0126234675,-0.63450015,-0.5070031,0.14078641,-0.73571676,0.008089552,0.03479742],[0.80792475,-0.66766584,0.23032701,-0.33161584,-1.2037598,0.2125056,-0.15969864],[-0.2423005,-0.74057645,-0.5435483,0.044129636,-0.69188356,0.08389628,0.16697945],[-1.5361837,0.30874377,1.1789893,0.6659148,-0.69351107,0.4415424,0.6480144],[-0.07204271,-1.221483,-0.92439497,0.7499748,-0.035351105,0.5684253,-0.67117625],[-1.017458,0.48187095,0.2618596,0.97278225,-0.55749303,0.423465,0.33408752]],"activation":"σ","dense_2_b":[[0.1838596],[-0.28277993],[0.11383015],[-0.23923337],[0.14975849],[0.014726325],[-0.16617869],[-0.029415732],[-0.118649684],[0.27848494],[-0.45202333],[-0.1126877],[-0.33022732]]},{"dense_3_W":[[-0.29903474,0.096304685,-0.46381262,-0.0082688145,-0.34521008,-0.72311455,0.260216,-0.3090884,-0.632807,-0.635328,0.6114854,-0.52489674,0.5849963],[-0.1397393,0.7307058,-0.24962811,0.54387295,-0.42753673,-0.5538375,0.39787623,0.073375665,0.29743633,-0.4567702,0.4831776,0.17509066,0.23498277],[0.17090236,-0.29356945,-0.030084739,0.1615791,0.08188441,-0.01872784,0.24252425,-0.23374312,-0.050307382,0.2272926,-0.600093,0.61274093,0.07305241]],"activation":"identity","dense_3_b":[[-0.015210137],[-0.05734997],[-0.043353032]]},{"dense_4_W":[[0.7804087,0.5536279,-0.040379304]],"dense_4_b":[[-0.031827074]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json new file mode 100644 index 0000000000..ce68ad35e1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2021.json @@ -0,0 +1 @@ +{"input_std":[[8.597539],[1.589519],[0.8570558],[0.04863597],[1.6346245],[1.6241254],[1.6103257],[1.498106],[1.4157897],[1.3226876],[1.2293135],[0.048567627],[0.048607342],[0.04863673],[0.048688337],[0.0488638],[0.049082097],[0.049054746]],"model_test_loss":0.011536603793501854,"input_size":18,"current_date_and_time":"2023-09-02_06-52-47","input_mean":[[17.37028],[0.06026842],[0.506836],[0.00031705393],[0.06628794],[0.06474968],[0.0628686],[0.05320054],[0.04718131],[0.04658512],[0.051670313],[0.00045426827],[0.00041247738],[0.0003619111],[3.6777285e-5],[-0.00032301998],[-0.0005914742],[-0.00092334347]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.24682778],[-0.006299858],[0.0748293],[-0.5736973],[-0.256641],[-0.58670074],[-0.0044331043]],"dense_1_W":[[1.0383956,0.9127742,-1.7661572e-5,-0.119445495,0.33176455,0.03573714,-0.8297675,0.023340857,0.47458792,-0.40310016,0.05576016,0.45783523,0.14146096,-0.4043011,-0.40886042,-0.11232859,-0.08254774,0.23749773],[-0.010238037,0.30345035,0.11772968,0.042131707,0.3533758,0.16141611,-0.32165682,0.22163633,-0.44536677,0.12489661,0.11577652,-0.4645873,-0.17438301,0.28373742,0.5604936,0.18323892,-0.099337935,-0.2914466],[0.019332694,-0.9718337,0.1213718,-0.09318972,0.4252448,0.122399725,-0.18120395,0.11679359,0.08406331,-0.28711584,-0.055180494,0.3861118,-0.31324327,-0.20063293,-0.299365,0.17973764,0.18562388,0.011371533],[-0.011864931,-1.153027,-1.1015527,-0.09962848,0.015605152,0.3611728,0.13415214,-0.23815176,0.63666695,-0.11102109,-0.2912127,-0.53489137,0.41428724,0.08640866,0.18429007,0.3095773,0.068252586,0.18889964],[1.0551776,-0.36253345,-0.001785746,0.022279864,-0.25197285,0.18718459,0.10246457,-0.26064438,-0.30058408,0.2714863,0.002131989,-0.643216,0.37801188,0.10752107,0.50343543,0.07076738,0.08356163,-0.22799636],[-0.008646536,0.78340423,-1.1187115,-0.57623047,-0.35842294,-0.7300839,-1.0882407,1.38732,-0.015289124,0.102130026,-0.69328797,-0.026475098,0.11983873,0.14571564,0.058386486,0.48151672,0.45962128,-0.04454241],[0.0033251448,-0.377444,0.08040648,0.07891003,1.9698765,2.2291944,1.0210977,-1.7496017,-1.0250691,-1.4425315,-0.31541628,-0.023265995,-0.059444286,0.0109439315,0.27883554,0.19031176,-0.16854845,-0.020514654]],"activation":"σ"},{"dense_2_W":[[-0.024243228,-0.05255965,-0.7595463,-0.5176617,-0.0028400528,0.5175856,0.5519225],[-0.018462835,0.24686936,-0.51719195,-0.42296433,-0.2835181,-0.007122102,-0.1566434],[-0.8202002,-0.6762049,-0.21161737,0.6190111,0.8244078,-0.58753747,0.34383672],[0.7579045,0.30807158,-0.5150138,-0.39650717,-0.65510255,0.6530385,0.029368501],[0.19137707,0.47466335,-0.6506839,0.14364511,-0.9489478,0.21647897,-0.47036436],[-0.7764023,-0.48433128,-0.14451031,0.436359,0.86376953,0.06893752,-0.3654762],[-1.6003051,-1.3418225,0.8276233,0.10213565,-0.890929,-0.37858123,0.72083765],[0.28483543,0.26148677,-0.7699699,-0.5142481,0.13567218,0.5638172,0.44093132],[-0.79822946,0.13202399,-0.72469413,-0.28871945,-1.2221936,0.35103744,-0.97257113],[-0.43247938,-0.09032452,-0.71232784,-0.012452181,-0.36949623,0.040841173,0.21214984],[0.10710754,0.36228323,-0.47006533,-0.37733367,-1.2878665,0.47658426,-0.45390767],[0.24698155,0.2711014,0.075908944,-0.42958894,-0.23198445,-0.2069848,-0.3533442],[0.6337969,0.35413942,-0.7264216,-0.47986504,-0.21905626,0.6985329,0.2576043]],"activation":"σ","dense_2_b":[[-0.12635571],[-0.14632428],[0.038847096],[-0.07666457],[-0.1459678],[0.14029463],[-0.169782],[-0.23029572],[-0.10404744],[-0.142377],[-0.08718043],[-0.06485942],[-0.14547676]]},{"dense_3_W":[[-0.15735611,0.17262073,-0.8805252,0.51910555,0.2501827,-0.2835049,-0.11046073,-0.15481108,0.6115458,0.2226787,-0.03818101,0.042739924,0.53314],[-0.5296838,0.2718061,0.544608,-0.2170193,-0.30278963,0.3500211,0.77196777,-0.58984184,-0.3200903,0.25097454,-0.4622797,-0.41570127,0.052868128],[-0.103185855,0.026371501,0.77141577,-0.66143405,0.17981799,0.3885078,0.7312039,0.48614725,0.2583454,0.014793015,-0.5174716,-0.26699665,-0.017405592]],"activation":"identity","dense_3_b":[[-0.09996536],[0.10106084],[0.0681742]]},{"dense_4_W":[[1.3119884,-0.8955275,-0.28397295]],"dense_4_b":[[-0.096690625]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json new file mode 100644 index 0000000000..c01244be27 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_NIRO_HEV_2ND_GEN.json @@ -0,0 +1 @@ +{"input_std":[[9.548942],[1.1556146],[0.5686091],[0.04125714],[1.1739614],[1.1698171],[1.1636059],[1.1330084],[1.1195551],[1.0984498],[1.052436],[0.041275118],[0.041270234],[0.041261356],[0.041291114],[0.041279677],[0.041211747],[0.04119539]],"model_test_loss":0.021393293514847755,"input_size":18,"current_date_and_time":"2023-09-02_07-27-02","input_mean":[[19.183447],[-0.061503228],[0.31750193],[-0.009586182],[-0.07582464],[-0.07115664],[-0.066330835],[-0.050047584],[-0.04131674],[-0.034985147],[-0.023530383],[-0.00953319],[-0.0095485365],[-0.00957056],[-0.009637397],[-0.009661676],[-0.009702404],[-0.009817304]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.11971723],[-2.06865],[-0.9273426],[0.2350055],[-0.039275352],[-0.6935257],[2.1106303]],"dense_1_W":[[-0.023465969,1.0403687,-0.0064599384,0.088695236,-2.572482,-1.9478124,-1.171903,3.2940629,2.2462277,0.7168309,-1.1020683,0.20056015,0.27593887,-0.26641613,-0.14360692,-0.7400961,0.00034045885,0.4156913],[-0.93346083,-1.4239619,-0.006503616,-0.22113818,-0.2023531,0.5193814,1.0461832,-0.3782537,0.29444095,-0.15030141,-0.5023597,0.16464102,0.7242057,-0.27950695,-0.3696878,-0.30749488,-0.47764552,0.76080126],[0.7568762,-0.981843,0.016051132,0.19062184,-0.90861064,-0.7826231,-0.2727878,-0.23859741,0.5777361,0.8479089,1.3446846,-0.44860214,0.23954475,-0.01972305,0.022940347,0.21341267,-0.041809097,-0.08129695],[-0.09766348,-0.6063554,0.0062130643,-0.03661122,-1.70968,-1.8175805,-2.0428705,1.8160136,1.7936941,1.4172349,0.45122316,0.4655184,-0.21158199,0.27250418,-0.25827283,-0.39359215,-0.2081721,0.463419],[0.008593872,-0.58326274,0.007718574,0.30187526,-0.93341124,-0.077753805,0.021100318,0.051944837,0.48332676,0.46354106,-0.6830866,-0.4099744,-0.23816824,0.20651065,0.4611754,0.027589535,0.42457825,-0.38316107],[0.47711346,1.1507468,-0.012431412,0.080158405,1.1602942,0.88804525,0.068638526,-0.049588755,-0.9131459,-0.90958065,-1.0101755,0.19905831,-0.12530342,-0.19841798,-0.21211796,0.1636958,0.23769926,-0.20800415],[0.9961328,-1.143366,-0.007048344,-0.38564992,-0.14137669,0.97105956,0.28828618,-0.38741222,0.11933695,0.042133637,-0.5720996,0.8045794,-0.14538643,-0.06855614,-0.025645649,-0.65618575,-0.23211053,0.7001129]],"activation":"σ"},{"dense_2_W":[[-0.21309559,-0.2557323,-0.37976655,0.4364266,-0.058041357,-0.10421585,-0.108383834],[-0.7912269,0.5097253,0.20453687,-0.53811145,0.99982816,-0.61565036,0.4312177],[-0.21263213,0.48694882,0.18081997,-0.8577293,0.73699605,0.030947331,0.18210255],[-0.58780706,0.68300354,0.09398714,-0.5269206,0.73805976,-0.80878305,0.48335037],[-0.64852566,-0.39090246,0.58450216,-0.46928614,-0.50298375,-0.07994645,0.053112958],[0.1690405,0.5960562,0.35752842,-0.87621987,0.32022333,-0.55614614,0.7826676],[0.71447146,-1.0444664,-0.4509489,0.911557,-0.7412179,0.54971963,-0.7381729],[-0.62482494,0.039678216,0.56063163,-0.3121521,0.15650049,-0.09051405,0.09062955],[0.0126393195,-0.06729555,0.37268206,-0.9645424,0.835795,-0.8074821,0.59585595],[-0.048607614,-0.53631896,-0.19049186,0.7581371,-0.61508256,0.115542084,-0.5422532],[-0.08638583,0.37238285,0.4352934,-0.9093409,0.3891405,-0.3895383,0.22890623],[0.6520517,-0.27878258,0.0021966984,-0.23270349,-0.9914703,0.48241284,-0.16072732],[-0.29694274,-0.17202643,-0.45471925,-0.048209682,0.030067155,-0.20176966,-0.34706435]],"activation":"σ","dense_2_b":[[0.040295675],[-0.14250198],[-0.28739277],[-0.18335883],[-0.12844329],[-0.23011152],[0.2616699],[-0.1555895],[-0.27772397],[-0.0050205495],[-0.17576194],[0.06814319],[-0.17360274]]},{"dense_3_W":[[0.096177064,-0.17084734,-0.35130522,-0.51758367,0.15829244,-0.57115465,0.74830765,-0.119700745,-0.28673345,-0.016819801,-0.21919145,0.6545112,-0.14663658],[0.49742782,0.74625164,-0.2345321,-0.48559803,0.1774502,0.3355754,-0.7141915,-0.16827786,0.5395194,-0.7827569,-0.40440023,-0.6389728,-0.24930853],[-0.66462135,0.3956486,-0.40556067,-0.3123342,0.21790422,0.5589044,0.38879392,0.26195037,-0.36978155,-0.21154313,0.3580779,-0.06915874,-0.32115373]],"activation":"identity","dense_3_b":[[0.09647246],[-0.073265985],[-0.08355868]]},{"dense_4_W":[[1.1780397,-0.3744698,-0.1993529]],"dense_4_b":[[0.091160975]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json new file mode 100644 index 0000000000..a50b54aea6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_OPTIMA_G4_FL.json @@ -0,0 +1 @@ +{"input_std":[[8.072969],[1.0171603],[0.41435865],[0.03957447],[1.0044475],[1.008584],[1.0119401],[1.0073107],[0.9948095],[0.9757278],[0.95639443],[0.039412063],[0.03944304],[0.039477617],[0.03948857],[0.03934316],[0.03904568],[0.03871683]],"model_test_loss":0.00399219011887908,"input_size":18,"current_date_and_time":"2023-08-08_15-43-41","input_mean":[[24.085066],[-0.030361513],[0.01571064],[0.0007362445],[-0.03486706],[-0.033671357],[-0.032109205],[-0.027380893],[-0.02287623],[-0.021235751],[-0.01674745],[0.0006118474],[0.0006441443],[0.000670867],[0.00071249413],[0.0006996055],[0.0005505158],[0.00045551005]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.29917517],[2.1752317],[0.32517457],[-0.06200813],[0.008188257],[1.2145834],[-2.4042017]],"dense_1_W":[[-0.0036490457,-0.65203166,-3.709906,-0.16634864,1.2238234,0.1361604,0.240366,-0.0953384,-1.1778214,-0.7621931,0.9326918,-1.3709967,-0.15128233,0.2677267,0.46784538,0.9360938,0.58685464,-0.60191363],[1.0609311,0.5510001,-1.2266392,0.5077542,-0.5202491,-0.04500755,0.09848119,-0.3979558,-0.19270724,-0.5866649,0.46674842,-0.5607535,0.21799003,0.25507393,-0.1446887,-0.3699364,-0.26326817,0.43315932],[0.039737374,-0.43775582,-0.013289291,-0.05986628,0.21640529,-0.7568447,0.5309831,0.2114327,0.11197306,-0.40092763,0.14490385,-0.1755713,-0.15272588,0.46322745,-0.10017493,-0.06966308,0.32474706,-0.19110319],[-0.0077359895,-0.43185976,0.020387627,0.3265592,0.16767904,-0.9530752,0.1524309,0.20602113,0.034762584,0.45183882,-0.40128747,-0.9679819,0.09233684,0.69716626,0.0959531,0.20735793,-0.10194677,-0.14030074],[0.005168357,-0.21313071,0.020432683,0.21680814,0.47587946,-0.1672917,-0.123546526,-0.28546202,-0.004813474,-0.2626441,0.2583704,-0.83474374,-0.3071537,0.70293534,0.035514556,0.2111255,-0.03847577,0.2905034],[0.039810598,0.41122228,0.0123043675,0.21473739,-0.08381318,0.053156123,-0.22393204,-0.07659595,0.2492394,0.084608234,-0.1508309,0.27756575,0.06493508,-0.6980999,-0.10522976,0.33079267,-0.021852562,-0.09157679],[-1.0318242,0.3270962,-1.2316992,0.074966654,-0.18502301,-0.540268,0.3426544,-0.32328182,-0.15373465,-0.5543649,0.4255326,-0.54132384,0.019477716,0.59251136,-0.14564046,0.17376666,-0.41093257,0.3159194]],"activation":"σ"},{"dense_2_W":[[-0.4484687,0.33253923,-0.28966695,-0.4360591,-0.24771251,1.0544692,-0.3488148],[-0.29909408,-0.58351547,-0.3938109,-0.11950906,-0.29386395,0.45222434,-0.031188905],[-0.97125804,-0.47300208,-0.5902675,0.09844755,-0.16599008,-0.14055668,0.33186546],[0.81737274,0.7941663,0.38187075,0.057302717,-0.24998307,-0.4406886,-0.15471426],[-0.22012134,-0.4555382,-1.0191162,-0.7460106,0.0017525634,0.37398848,0.55178577],[0.6003996,-0.07378992,-0.4675678,-1.0309192,-0.51752794,0.7784243,-0.13258673],[0.22552104,-0.42843226,0.6672592,0.5094388,-0.0069568693,-0.588892,0.22089334],[-0.040460102,-0.20706566,-0.4015441,-0.049420606,-0.47037354,0.62529606,-0.3584826],[-0.15761071,-0.6566617,0.13922708,0.6777953,0.6173028,-0.5567125,0.55445105],[0.421519,0.0040071155,0.4716913,-0.402618,0.37349927,-0.79084456,0.7557055],[0.18809932,0.48851332,0.20340067,0.53080684,0.07949558,-0.32842007,-0.15802757],[0.29606518,-0.42963374,0.061094977,-0.6543071,0.17196162,0.013567186,-0.72136617],[0.27312186,0.011079551,-0.9998639,-0.99941546,-0.35501084,-0.013600225,0.5464308]],"activation":"σ","dense_2_b":[[0.13286552],[0.08703823],[-0.031739317],[-0.052825537],[0.031032594],[0.013313505],[-0.030027948],[0.14758036],[-0.17001471],[-0.3692113],[-0.033355612],[-0.051361687],[-0.11612391]]},{"dense_3_W":[[0.08565427,0.037936352,0.31202748,0.0936324,-0.3239269,0.21602823,-0.13447368,-0.25992858,0.57573473,0.22251351,0.5654894,-0.5865121,0.19499925],[-0.31933227,-0.5680997,-0.40374595,0.2146467,-0.23784715,-0.53895664,0.7452532,-0.5017336,0.32644337,0.19702537,0.4468465,-0.10311684,-0.27303612],[0.51040643,-0.20984694,-0.19069631,-0.41539454,0.4963756,0.2997042,0.44628504,0.45647708,0.13536462,-0.67746484,-0.40592772,-0.2442403,-0.14450295]],"activation":"identity","dense_3_b":[[-0.056019142],[0.060379148],[-0.009930268]]},{"dense_4_W":[[-0.04487324,-1.0755644,0.06984845]],"dense_4_b":[[-0.055896856]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json new file mode 100644 index 0000000000..f68b17ada0 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SELTOS.json @@ -0,0 +1 @@ +{"input_std":[[6.5043],[1.2473463],[0.53390634],[0.048283435],[1.2437444],[1.2446332],[1.2450808],[1.2284776],[1.2033198],[1.1706628],[1.1364652],[0.048133977],[0.048158456],[0.048181333],[0.048161115],[0.047940608],[0.047484715],[0.046831056]],"model_test_loss":0.00607825955376029,"input_size":18,"current_date_and_time":"2023-08-08_16-08-39","input_mean":[[22.575022],[0.051328536],[-0.006913471],[-0.01011988],[0.05268152],[0.05299266],[0.05207647],[0.048002362],[0.043245066],[0.03809434],[0.035212684],[-0.010153537],[-0.010121024],[-0.01008983],[-0.010034731],[-0.010037355],[-0.010153356],[-0.010373143]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5531221],[-0.5509416],[-1.445181],[0.28771853],[0.22789262],[1.434991],[0.0080130715]],"dense_1_W":[[-0.072858766,-0.25066936,0.001488759,0.17555322,0.07657381,-0.9037761,0.3106683,0.08651254,0.067195155,0.15176873,-0.20259917,-0.21302752,0.28982407,-0.43658245,0.015916249,0.11262799,0.11793564,-0.059966978],[0.43427393,0.08093749,0.0133838765,0.1622592,0.09717405,-0.83871514,0.5765018,-0.31165177,-0.15231861,-0.16858198,0.16277543,-0.60361624,0.17700994,0.33473372,0.38939148,-0.20558326,0.45074964,-0.25900662],[-0.74159485,0.30163378,0.22673568,0.14877096,-0.47694537,0.4062525,-0.13229688,0.1764854,-0.156683,-0.07724261,0.12065852,-0.07211137,-0.008046468,0.105538025,0.03403057,-0.40424374,0.101804785,0.09886794],[0.056292683,-0.44537598,0.0066523813,-0.36948034,0.0020229202,-0.23440255,-0.1426723,0.044855885,0.21266802,-0.04769602,-0.07245297,0.095258914,0.14331557,0.06311263,-0.081638,-0.13354753,-0.10685418,0.2744694],[-0.4399394,-0.24742912,0.015261683,0.036726598,0.21024184,-0.56052953,0.2644335,0.22065622,-0.49486712,-0.22668484,0.26602116,-0.027812555,-0.26319936,0.4370143,0.30383864,0.05929112,-0.278868,0.19924623],[0.7735669,0.71460426,0.22413033,-0.16059706,-0.6686849,0.07259404,0.16731831,-0.019293515,-0.071510345,-0.132955,0.10057606,0.3232639,0.11988385,-0.38480517,-0.09152796,0.0526992,0.22566798,-0.07503419],[-0.013013475,0.9049779,4.2753534,-0.7142396,-0.40504238,-0.4914329,-0.67501336,0.25923017,1.06321,0.6865681,-0.7837867,0.6691853,-0.14117423,-0.25011092,0.2118381,-0.4131931,0.0050245565,0.23714177]],"activation":"σ"},{"dense_2_W":[[0.83081543,0.7152437,-0.9272331,-0.058508083,0.5601877,-1.0513786,0.34386688],[-0.40297586,-0.20603098,-0.02151336,0.27510563,-0.72458434,-0.33728045,-0.39708093],[-1.0368242,-0.39495397,-0.43345797,-0.44247583,-0.31836608,0.47316584,-0.5714821],[-0.57493865,0.08437657,-0.13061555,-0.76476145,0.03340725,-0.026223348,-0.12614326],[-0.55024046,-0.6168174,-0.028391553,-0.18474647,-0.26115215,0.12521398,0.35426983],[0.39255112,0.5900703,-0.22482665,0.5707256,0.5464044,-0.71590644,-0.002837547],[0.25933468,0.5432395,-0.25603205,-0.023391314,0.17869925,-0.030074507,0.05608481],[-0.40570793,-0.8749095,0.7643032,-0.95808434,-0.292604,-0.31031305,0.5525302],[-0.7991779,-0.5244842,0.7676792,-0.2169589,-0.35757715,0.3793689,-0.18556851],[0.27159563,0.47496906,-0.8455038,0.3217735,0.56621623,-0.37803704,-0.3152324],[0.34084067,0.4475718,-0.45190004,0.6034602,0.19615944,-0.74282926,-0.3698053],[-0.12877308,-0.040314443,-0.07347546,-0.022651967,-0.35362196,-0.25663686,-0.03716333],[-0.12629175,0.18490966,0.3493096,-0.12202217,-0.87659836,0.84210044,0.7154535]],"activation":"σ","dense_2_b":[[-0.37709257],[-0.36266398],[0.041201413],[-0.2759538],[-0.045757968],[-0.32502013],[-0.116910934],[-0.0555258],[0.13395292],[-0.11479294],[-0.12865],[0.0017155915],[0.03419236]]},{"dense_3_W":[[-0.21281184,0.025354605,-0.38931814,0.4332946,0.34886065,-0.5425068,-0.45385525,0.5249028,0.8241498,-0.0018914028,-0.71546686,0.37642565,0.6025195],[-0.10640655,-0.15879385,0.8035984,-0.0676657,-0.45838603,-0.16732062,-0.10961278,0.47199112,0.05652834,-0.273728,-0.5767416,-0.26667383,0.25352108],[0.2845616,-0.20691596,-0.0674403,0.26220548,-0.5230078,-0.013668718,0.14580722,0.21254358,-0.455578,0.6447261,0.39926735,-0.578386,-0.07932991]],"activation":"identity","dense_3_b":[[0.046802334],[0.06993807],[-0.054334518]]},{"dense_4_W":[[0.86223423,0.7466944,-0.5962639]],"dense_4_b":[[0.05574729]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json new file mode 100644 index 0000000000..7cba3a0bd1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO.json @@ -0,0 +1 @@ +{"input_std":[[8.225504],[0.9862146],[0.4786618],[0.044386055],[0.9911494],[0.98926777],[0.9868219],[0.9688941],[0.95759606],[0.945508],[0.93368983],[0.04445444],[0.044414494],[0.044370808],[0.044087693],[0.04393713],[0.04383826],[0.04361526]],"model_test_loss":0.007047169841825962,"input_size":18,"current_date_and_time":"2023-08-08_17-49-22","input_mean":[[22.136208],[0.070861906],[-0.03981052],[-0.010668343],[0.080718815],[0.07792175],[0.07505944],[0.058528677],[0.045737457],[0.03174954],[0.021063231],[-0.010688668],[-0.010692572],[-0.010689235],[-0.010696851],[-0.01084794],[-0.0111111775],[-0.011500895]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[3.4361866],[0.8604132],[3.8839195],[-0.3530098],[-0.60368276],[0.18975182],[-0.14933607]],"dense_1_W":[[1.77373,0.502524,0.0018965496,-0.110705666,0.3420213,0.22547789,-0.29762477,0.0047542676,0.14169078,0.4244286,-0.26493979,0.77021676,0.0050104316,-0.45031142,-0.0891641,-0.3238069,-0.27745253,0.43920958],[-0.4554037,0.55976075,0.0024382551,-0.52546054,-0.35694334,0.31670326,-0.42664233,0.5528438,-0.02553557,-0.25557682,0.018628456,0.5487123,0.07868527,-0.44713297,0.2761562,0.01487938,-0.19466569,0.13075072],[1.9630107,-0.8828655,-0.003229503,0.096722186,0.11981852,-0.59655976,0.20542483,-0.09582429,-0.035594583,-0.0051746666,-0.00012015179,-0.31307888,-0.4298206,0.48810238,-0.19152062,0.65658826,0.10284727,-0.3608829],[0.0509072,-0.08480384,2.396337,0.02690105,-0.36376664,0.108113885,-0.308852,0.44377556,0.45792276,0.30328622,1.0544075,0.88695085,0.12360692,-0.119185396,-0.18221413,-0.5859372,-0.31101158,0.7223309],[0.28265178,0.32164347,0.0010089057,0.030570894,-0.30268112,0.8745566,-0.7895676,-0.08777498,0.4583039,0.3052894,-0.36076066,0.817972,-0.2626141,-0.4675079,-0.3099327,0.0030562575,-0.1641152,0.23820297],[0.019067027,-0.14309163,-1.8227177,0.047291636,0.32350194,0.20237854,1.0319531,0.03287445,-0.7612191,-0.9520363,-0.2104849,0.18699706,-0.27343786,0.21203913,0.1552981,-0.075778924,0.033884183,0.004781352],[0.10389948,-0.48800257,0.0021118661,-0.07135153,0.009598374,-0.5138354,0.51288474,-0.36974624,0.07902618,0.0439172,-0.019653676,-0.36099622,-0.046752088,0.59683883,-0.17708305,0.32293355,-0.07517723,-0.042607766]],"activation":"σ"},{"dense_2_W":[[0.096298866,-0.023356602,0.24766381,-0.68317467,0.4726718,-0.31475353,-0.74931395],[-0.048710193,-0.088762455,-0.26215088,-0.68562347,-0.09474713,0.28614464,0.25585324],[0.088518575,-0.29647326,-0.5624382,-0.42151505,0.9982967,-0.40049326,-0.4974512],[0.36501676,-0.53366756,0.296159,0.35532963,-0.47745422,-0.34653178,0.71060693],[-1.2016175,-0.62754,-0.3136847,-0.11115397,-0.40962538,-0.6096405,0.84929377],[-3.0193913,-2.1009915,-0.42303616,-1.5302383,-0.37101474,1.7938634,1.6035624],[-0.5427815,0.09416961,0.18964134,-0.70530283,1.0021083,0.1920392,-0.037322704],[0.0019868647,-0.08528146,-0.067309916,0.12519653,-0.92892164,-0.20166376,0.95873517],[-0.7638899,0.35672405,-1.1621267,0.39103174,1.1349736,-0.65880626,-1.0431181],[-0.17016599,-0.42968458,-0.5383481,-0.1613195,0.84924465,0.09490495,-0.16490082],[-0.7958531,-1.0898287,-0.21342301,0.3154297,-0.662309,-0.11026381,0.43740568],[-0.21438372,-0.023171034,-2.4562607,1.4170244,1.4787751,-1.4303266,-1.7063339],[-0.8461705,-0.8368954,-0.6641428,0.07786552,-0.85198885,0.16422716,0.5509807]],"activation":"σ","dense_2_b":[[-0.04843994],[-0.11621983],[-0.15534192],[-0.1777891],[-0.13141605],[0.45782998],[-0.038693666],[0.120798975],[-0.2962059],[-0.112060666],[-0.19976714],[-0.08506511],[-0.19297417]]},{"dense_3_W":[[0.06841162,-0.38602033,-0.44655094,-0.095605254,0.09524266,1.5977386,0.055025216,0.92095596,-1.0016881,0.001653223,0.22546917,-1.4391123,0.5747701],[-0.112245455,0.27487016,0.09106065,-0.5642001,-0.3326845,-1.0173982,0.6527395,0.1291596,0.18963833,0.07579223,0.08202421,0.39516202,-0.5810091],[0.62696713,-0.4055594,0.3906188,-0.22678788,-0.6915645,-0.62307024,0.27116132,-0.23976414,0.59970427,0.59344476,-0.5686633,1.0074819,-0.6300193]],"activation":"identity","dense_3_b":[[-0.015245617],[0.021583866],[0.0017865004]]},{"dense_4_W":[[-0.4391859,0.34876132,0.45405573]],"dense_4_b":[[0.011228666]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json new file mode 100644 index 0000000000..36c28370c1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_4TH_GEN.json @@ -0,0 +1 @@ +{"input_std":[[7.8233147],[0.9782015],[0.41718537],[0.035352696],[0.9691626],[0.9718523],[0.9732458],[0.9550015],[0.93631965],[0.9095138],[0.88053274],[0.035256404],[0.03528126],[0.03530267],[0.03523645],[0.03513863],[0.035011794],[0.03486604]],"model_test_loss":0.012016833759844303,"input_size":18,"current_date_and_time":"2023-08-08_16-59-47","input_mean":[[23.676199],[0.046169933],[-0.0024152591],[-0.00083978643],[0.052181892],[0.050630625],[0.049394105],[0.04861944],[0.04347715],[0.037709467],[0.029363334],[-0.00079315034],[-0.00083242205],[-0.00086724694],[-0.00093634427],[-0.0010770531],[-0.0011623197],[-0.0013536707]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.34205592],[-0.6101867],[0.025273371],[2.7362225],[-0.3362331],[-0.22314112],[-0.42840534]],"dense_1_W":[[0.70273304,-0.07699354,0.004216056,-0.049642496,-0.1173342,-0.1843091,-0.514,0.301412,0.120716415,0.14159362,-0.26860958,0.22482587,-0.22099495,0.25595915,0.07369682,-0.30280155,-0.022244852,0.19049275],[-0.31632742,0.40738678,-0.0030173576,-0.14833613,-0.5414197,0.9335088,-0.3921892,0.074954435,-0.09115997,0.2769111,-0.164147,0.14919339,-0.16596842,0.19945244,-0.38358882,0.23962471,0.037440404,-0.055190288],[0.28026038,0.53400266,0.0009745513,0.14234091,-0.017792422,0.35154557,-0.54393846,-0.041059464,0.23289026,0.2371453,-0.22173151,0.32878917,-0.34945992,-0.17935802,-0.030065529,0.05598791,-0.16419156,0.06693432],[1.0627971,-0.69044113,-2.8159893,-0.11743469,0.06090651,-0.3309259,0.61224234,0.15625772,-0.35828912,-0.20305863,0.19095968,-0.38171795,0.088828474,0.45887148,-0.2708491,0.1556519,-0.33625215,0.20122494],[0.46239635,0.53465575,2.211843,0.16536956,0.27959237,0.03331173,-0.73842824,0.19596708,-0.17479798,0.15080513,-0.030420419,-0.2798054,0.38705692,-0.3063825,0.33478513,0.013453584,-0.30902138,0.09854831],[-0.07509558,0.06009354,0.0014442373,-0.37906444,-0.18389311,0.9123579,-0.23291315,-0.098106,0.17996079,-0.38929048,0.2669226,0.37405357,0.0829103,-0.12002334,-0.082380034,-0.19149263,0.17356545,0.021014312],[0.83645344,-0.12868191,2.8339524,0.66849464,0.2345121,-0.25139904,0.62862474,-0.14285043,-0.101333186,0.18938905,0.027926499,-0.30594265,-0.25533596,0.050244536,-0.12834157,0.20466578,0.14557889,-0.25508425]],"activation":"σ"},{"dense_2_W":[[0.2385943,-1.2497817,-0.4320098,-0.69494075,-0.15682808,-0.7165265,0.33271864],[-0.5953695,-0.94797826,-0.75910956,0.15720847,0.16028434,-0.42265445,-0.06788467],[0.013007017,-0.65603364,-0.54143244,-0.18851374,-0.48472962,-0.567826,-0.21415836],[-0.12800428,0.6126203,0.48534265,-0.0439459,0.3090983,0.6686178,0.06581577],[0.086700656,-0.7233699,-0.8339351,0.57965523,-0.0795262,-0.60835373,0.6064965],[-0.16711766,-0.5194217,-0.3638064,0.0828189,-0.19742145,-0.74326986,0.32982042],[-0.60902363,-0.54570323,-0.9682073,-0.22863796,-1.0575902,-0.7974728,0.09679575],[0.65101296,0.2940795,0.91902715,-0.3448089,0.7953689,-0.01467941,0.49614373],[-1.0385482,-0.7393712,-1.3759025,0.18227631,-1.3805835,-0.31249633,-0.33556783],[0.34581456,-0.657716,-0.2713684,0.86821914,-0.16907854,-1.0973026,0.6021319],[0.06327717,-0.08374516,0.2938722,-0.21229501,-0.08540833,0.84707147,0.17620224],[-0.3019964,0.7991158,0.15228769,-0.2151937,-0.01442734,0.6086916,-0.46539715],[-0.17123166,-1.3208861,-0.53291464,-0.768727,-0.22558156,-1.1115304,0.9095279]],"activation":"σ","dense_2_b":[[0.025361877],[0.115043625],[-0.19263957],[-0.15302731],[0.16757403],[-0.13207324],[0.2047931],[-0.023633512],[0.12663384],[0.21831232],[-0.10527339],[-0.07977336],[0.16238554]]},{"dense_3_W":[[-0.6029877,-0.001360625,-0.64843386,-0.024384713,-0.31931442,-0.2223872,-0.41601577,0.40875682,-0.6390585,-0.18351403,-0.22626987,-0.16342458,-0.5330356],[-0.9919812,-0.3600715,-0.23596478,0.014639649,0.05383371,-0.0056866687,-1.0682598,0.45604205,-0.13326848,-0.33690926,0.050030075,-0.28139764,-0.4887333],[-0.035192277,0.53870684,-0.28763992,-0.64913034,0.61716443,0.020962728,0.5046917,-0.6201238,0.081873566,0.4083527,-0.44538507,-0.638268,0.28089696]],"activation":"identity","dense_3_b":[[0.05839103],[-0.06695255],[-0.039935347]]},{"dense_4_W":[[1.2304412,0.24217309,-1.3306029]],"dense_4_b":[[0.0467045]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json new file mode 100644 index 0000000000..b3e5f0e367 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SORENTO_HEV_4TH_GEN.json @@ -0,0 +1 @@ +{"input_std":[[6.3644342],[0.84206194],[0.32837495],[0.0497152],[0.8371395],[0.8385447],[0.8395692],[0.829151],[0.8190757],[0.80348146],[0.7860103],[0.049369164],[0.04941689],[0.049452867],[0.0493644],[0.049244285],[0.04892234],[0.048490353]],"model_test_loss":0.012282345443964005,"input_size":18,"current_date_and_time":"2023-08-08_18-13-59","input_mean":[[18.745186],[0.058482915],[0.004100846],[-0.0101344995],[0.059071593],[0.060052983],[0.0608945],[0.058870878],[0.05506747],[0.051870324],[0.050613668],[-0.0101755485],[-0.010125563],[-0.010075055],[-0.010220342],[-0.010350309],[-0.01046635],[-0.010587991]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.26137024],[-0.8474335],[0.7221059],[-3.029152],[-3.0476334],[-0.50681853],[0.28089675]],"dense_1_W":[[0.118606314,0.25686783,-1.9051447,-0.7990428,-0.005979468,0.09638535,-0.8308289,0.51833004,-0.06402269,0.6971393,-0.6183026,0.6924021,0.12464697,0.043432377,-0.4148101,0.15270382,0.060744658,0.13626556],[-0.16419527,0.39643514,2.5732567,0.008115614,-0.28033996,0.43020484,-0.5210173,0.17210113,0.04305193,-0.15485092,-0.06430828,0.5110761,0.061184343,-0.39538494,-0.33624035,0.22553732,-0.36463583,0.28871256],[0.08022375,-0.1438102,2.275842,-0.34128058,-0.044324376,0.096882254,-0.010320051,0.23874547,-0.18070365,-0.08163477,-0.005464015,0.42233032,0.017914683,0.047668677,-0.22110505,-0.13801146,0.21807624,0.043199193],[-1.0983561,-1.3618904,-0.16421425,0.7119955,0.31953186,-0.022093425,-0.31532484,-0.20155048,-0.2332474,-0.5418476,0.23563766,-0.055656385,-0.3085361,0.27007875,0.12838498,-0.18988839,0.06709897,-0.1783812],[-1.1701652,1.2933975,0.1829548,-0.56762326,-0.21117829,0.32533327,-0.16175397,0.4003565,0.3450981,0.5221387,-0.26247823,-0.18100262,0.19747707,-0.020127997,-0.08322595,-0.06828175,0.17032392,0.079796456],[0.55186826,0.5894228,-0.0018529932,-0.14105065,-0.08741265,0.9153969,-0.5369019,-0.110670924,-0.1197868,-0.17400903,0.24264471,0.5258655,0.41813594,-0.97932565,-0.030922398,0.023046646,-0.2965142,0.17293993],[-0.53106797,0.6812101,0.003069036,0.013521579,-0.22647035,0.62607247,-0.21172582,-0.28151682,0.13779911,-0.18788983,0.14300823,0.5570215,-0.360614,-0.39254332,0.087255284,-0.17113407,0.00049219653,-0.022655595]],"activation":"σ"},{"dense_2_W":[[-0.5570222,-0.3558432,0.43228203,-0.69578755,-0.5209684,-0.3988039,-0.50713974],[-0.44423953,-0.5874194,-0.7323912,0.7715879,-0.41121703,-0.1318218,0.18571433],[-0.6390287,-1.387356,-0.36371973,0.9566006,0.119820826,-0.493032,0.24996151],[-0.18583159,0.6930251,0.17657615,-0.539559,0.16666687,-0.021469139,0.16992941],[-0.40057775,-0.42924806,0.31558606,-0.0009943814,-0.6159993,-0.6273195,-0.25029367],[-0.13757096,0.5006542,-0.21990159,-0.19693488,-0.39372584,-0.53963596,-1.0108879],[0.4223514,0.07548385,-0.010612892,-0.42543212,0.35533974,-0.11486922,0.89943194],[-0.16426279,0.6486941,-0.036648616,0.31983182,0.5339297,-0.086293764,-0.25488037],[0.3003831,0.17355344,0.20259908,0.3913868,-0.13287883,0.49564433,0.6325901],[-0.48450124,-0.122303,0.04608689,1.1349032,-0.7158418,-0.69535565,-0.4309579],[-0.017942823,-1.1588961,-1.7683665,0.11541567,0.7244163,-1.6989279,0.45806262],[-0.47665825,-0.6297304,0.14930177,0.03149848,-0.07129674,-0.594798,-0.27915043],[-0.69228166,0.49151105,0.71214664,-1.0289556,-0.55659735,-0.2014265,-1.69863]],"activation":"σ","dense_2_b":[[-0.24992906],[0.05137416],[-0.04471787],[-0.0656874],[0.03518997],[0.03586051],[-0.08755667],[-0.07071635],[-0.09519462],[0.38123006],[-0.14761746],[0.018471785],[-0.25193718]]},{"dense_3_W":[[0.17286126,0.5556709,0.46810713,0.4721513,-0.47047356,0.520569,-0.49622187,-0.49121454,-0.45540947,0.66542894,0.69841886,0.3982122,-0.25671947],[-0.22673589,-0.5611173,-0.089621924,0.1419429,-0.6225278,-0.1980974,0.45448488,-0.22727543,0.51839507,-0.101876915,-0.25131065,-0.25810936,-0.088802256],[0.07408502,-0.50601435,-0.07129802,0.68250656,-0.27145752,-0.33781096,0.42821127,0.10353291,0.29823735,-0.20758152,-0.16469304,-0.33839104,-0.72373396]],"activation":"identity","dense_3_b":[[-0.05540624],[0.050332494],[0.045503195]]},{"dense_4_W":[[-0.74805945,0.97596985,1.0388287]],"dense_4_b":[[0.04738765]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json new file mode 100644 index 0000000000..e51a7bfd6b --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_SPORTAGE_5TH_GEN.json @@ -0,0 +1 @@ +{"input_std":[[8.976727],[0.70075977],[0.5193822],[0.03042774],[0.69921887],[0.70013744],[0.7002965],[0.695902],[0.6933414],[0.67973745],[0.6627475],[0.030151172],[0.030225797],[0.0303137],[0.030544141],[0.03062558],[0.030789947],[0.030969843]],"model_test_loss":0.006343930959701538,"input_size":18,"current_date_and_time":"2023-08-08_19-27-16","input_mean":[[16.929798],[-0.07719816],[0.018166475],[-0.021377886],[-0.079235695],[-0.07809248],[-0.07658997],[-0.068645015],[-0.06328592],[-0.05931081],[-0.05909752],[-0.021333551],[-0.021345824],[-0.021356996],[-0.021575557],[-0.021667903],[-0.021827627],[-0.02195472]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.014880665],[-4.0546803],[4.039964],[-0.11868123],[0.15448645],[-1.107983],[1.1866902]],"dense_1_W":[[0.0020459956,0.33396527,-0.12089764,-0.09266742,-0.10447256,-0.9204386,0.6287741,-0.6056384,0.22843099,-0.036838837,0.06830062,-0.39476836,-0.25123098,0.16312656,0.52959627,0.44755596,-0.0060909246,-0.37075716],[-2.4018881,0.96303153,-0.011795681,-0.2927611,-0.56402475,0.09905826,-1.2417923,0.6909417,0.04634957,0.049870215,0.14829403,-0.24467021,0.098947786,0.60680634,-0.11770359,0.12915674,-0.28863087,0.106796],[2.4256525,1.437447,-0.012711781,0.2002033,-0.7284638,0.066629946,-1.2394707,0.30315024,0.19728456,-0.0064161224,0.16385247,-0.46458936,0.14064942,0.5783398,-0.52734655,0.12342225,-0.02771602,-0.024491971],[0.01097608,-0.027902901,-0.034374587,-0.3541097,0.5106101,0.76122844,-0.096962415,-0.6580167,-0.2428814,0.03086143,0.42839304,-0.1327025,0.22802521,0.23564328,-0.29380637,0.4714742,-0.12637857,-0.02005889],[-0.034812696,0.41839755,3.2609296,-0.42740518,-0.15298292,-0.00866209,-0.9877955,0.20124017,0.70070297,0.17947885,-0.23164096,0.28965604,-0.7283435,-0.2188886,0.7684531,0.19517736,0.2536015,-0.36128113],[-0.9371955,-0.44021863,-0.56623465,-0.32142237,0.72665215,0.002760211,1.794923,-0.5086798,-0.3332023,-0.46023577,0.28646132,0.021077845,-0.085969545,0.12202227,-0.0113952635,0.3216046,0.09244552,-0.3860546],[0.96695864,-0.30241808,0.58513,0.17075059,-0.22292358,-0.8550528,0.2879175,-0.43512177,-0.31959462,0.48480448,0.25879675,0.27618545,0.025451204,-0.122112915,-0.17442971,-0.3921672,0.06478193,0.40238667]],"activation":"σ"},{"dense_2_W":[[-0.044206314,-0.8398137,-0.64021885,-0.54042494,0.6175049,0.18352465,0.32354066],[0.43910313,-1.1964579,0.21669604,-0.65690404,-0.1722438,0.7105811,0.9846193],[-0.7918547,0.18124402,0.9972935,0.41970012,0.19829191,0.010471378,-0.43702286],[0.08539568,0.5138893,0.012154299,0.39407086,-0.2033074,0.2336377,0.07864137],[-0.57327664,1.5145365,0.055437118,0.44190773,0.09702478,-1.1895245,-0.6311017],[-0.44423488,1.5355299,0.024235807,0.16098042,0.29021573,-0.8679073,-0.9571557],[0.004154781,1.1336601,0.8133591,-0.50107414,0.031159671,0.22605118,-0.14536653],[0.007528867,-0.56511986,-0.3612175,-0.24699865,-0.3588984,0.07682657,0.65754634],[-0.23885256,0.037369203,-1.247802,-0.6006928,-0.26584128,0.70783955,0.31224442],[-0.7690314,0.500182,0.9671801,-0.31481332,0.67578256,-0.68111664,0.31868243],[0.6401129,-0.09492038,-0.6698544,-0.36198345,-0.5426654,-0.2671815,0.6592098],[0.7210531,-1.0498211,-0.22714017,-0.048228458,-0.37272957,0.26260805,0.70966876],[0.63982356,-0.29841152,-0.8246119,-0.47527993,-0.18812291,0.8096702,-0.06459521]],"activation":"σ","dense_2_b":[[-0.025994662],[0.15322399],[-0.07625017],[-0.02093097],[-0.5037285],[-0.3910864],[-0.2550051],[0.010986569],[-0.03674515],[-0.06740837],[-0.02110642],[0.203657],[-0.006955387]]},{"dense_3_W":[[0.13050179,-0.1750691,0.55030495,0.00817725,0.0064171855,0.037391666,-0.34142336,-0.3982381,-0.6864987,0.44729853,0.019040912,0.2000447,0.05393903],[-0.18140526,-0.7954796,0.4079409,0.11663361,0.7815968,0.6944582,0.29977924,0.37544534,-0.17576152,0.39384714,-0.40072137,-0.36830547,-0.2356481],[0.5863231,0.31058028,-0.7853302,-0.23653558,-0.35724676,-0.24529241,-0.29981402,0.3657695,0.7097211,-0.48353392,0.66631585,0.39028704,0.82543695]],"activation":"identity","dense_3_b":[[0.05991354],[0.027705792],[-0.10160021]]},{"dense_4_W":[[0.21156265,0.3147255,-0.69529635]],"dense_4_b":[[0.09139054]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json new file mode 100644 index 0000000000..e902464df8 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER.json @@ -0,0 +1 @@ +{"input_std":[[8.232792],[0.93400556],[0.47102702],[0.0364885],[0.9195544],[0.924241],[0.92906463],[0.92022413],[0.91261363],[0.9017492],[0.88828105],[0.036282632],[0.036326736],[0.036377504],[0.036556747],[0.03661433],[0.036583815],[0.036482345]],"model_test_loss":0.004662908613681793,"input_size":18,"current_date_and_time":"2023-08-08_21-56-04","input_mean":[[24.3614],[-0.1338536],[-0.00033556155],[-0.011434872],[-0.13066752],[-0.13287227],[-0.13457236],[-0.13018748],[-0.12908219],[-0.1285007],[-0.1288561],[-0.011373002],[-0.011407338],[-0.011437276],[-0.011411569],[-0.011443319],[-0.011484706],[-0.011544373]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.475858],[2.159764],[-0.061220553],[0.66681635],[-0.12575488],[-0.16302125],[-0.19944711]],"dense_1_W":[[1.086152,-0.8324169,-0.40090436,-0.69676965,0.07591572,-0.76153654,0.14704636,0.01003906,0.042237986,-0.13237216,0.010166433,-0.022998422,0.20724043,0.38396737,0.32619816,0.24285975,0.040859465,-0.15704209],[0.79297894,0.6081378,0.23360905,0.3370354,0.22393392,0.4906143,-0.30672908,-0.17856854,-0.25943467,-0.062457237,0.2529202,-0.0010873047,0.21262763,-0.5751331,-0.1401793,0.19357836,-0.55147094,0.32092294],[0.0029746895,-0.07445199,-0.009906404,-0.27658758,-0.3105713,1.3074434,-0.62331855,0.37446457,0.37921852,-0.076034345,-0.10986473,0.6444909,0.3060177,-0.34074512,-0.20372215,-0.4336765,-0.12278754,0.10387535],[-0.5095448,-0.72657496,-1.8959101,0.0026990066,-0.043687414,0.6157908,-0.9232839,0.5408708,0.51549035,0.19628379,-0.40704572,0.5014059,0.29025885,-0.7103715,-0.25765055,-0.30216625,0.5263961,-0.10350972],[-0.035269834,-0.043332044,-0.012723803,0.13811198,0.29201096,1.0091876,-0.8771376,0.18579352,-0.04488109,-0.17704397,0.23413378,0.19482689,0.20975055,-0.30010784,-0.35608566,-0.11924245,-0.050680783,0.22465675],[0.16372576,1.0684661,2.3885384,-0.4287634,0.70907384,0.0041387198,-1.4072537,-0.46730998,0.49696034,0.29660532,-0.27237156,0.50066346,0.015487968,-0.20723666,0.18176752,-0.10723471,-0.29568553,0.32300335],[-0.13845481,-0.49266118,-0.1540314,-0.26245895,0.5343135,-1.4516279,1.0021015,-0.034394637,-0.15333414,-0.23182547,0.20259102,-0.662138,0.034917697,1.1150106,0.17494841,-0.38734046,0.042199794,0.047024578]],"activation":"σ"},{"dense_2_W":[[0.16896504,-0.6318725,-0.24279357,-0.3490866,-0.46762058,-0.77701944,0.4309984],[0.3208485,-0.7041557,-0.71111524,-0.5957026,-0.13623692,-0.6515591,0.086047836],[-0.2776602,0.4528481,-0.17088494,-0.017503724,-0.32922515,0.08896287,0.44616765],[-0.5082411,-0.3947844,-0.3123438,-0.057989564,-0.27827948,-0.18070908,-0.18309323],[0.2809697,-0.37338483,0.65222776,-0.2953018,0.56409293,0.37588066,-0.1554319],[-0.56023234,-0.31079367,-0.08408593,0.20908839,0.10924668,-0.45463365,-0.6904562],[-0.80874884,-0.3383102,0.65157753,0.04253899,0.42724007,0.24657841,-0.5648559],[-0.3517047,-0.794073,-0.12099776,0.22774486,-0.23081534,0.2358734,0.24807717],[0.3229278,0.24695866,0.6025792,0.0022002668,0.32681346,0.54143,0.023995057],[0.45531654,0.27657107,-0.88627934,-0.57686245,-0.694657,0.27816367,0.3275702],[0.13451672,-4.2249675,-0.3837861,-0.6255863,-1.3373032,-1.6044973,3.5761082],[1.8231589,0.25132626,-0.5901763,0.246227,-1.138569,-0.8484137,1.5885205],[-0.32017943,-0.61674356,-0.49218202,-0.19713864,0.04268222,-0.5201525,-0.052188545]],"activation":"σ","dense_2_b":[[-0.052272886],[-0.11724032],[0.0015635947],[-0.00789324],[0.027887536],[-0.19823864],[-0.05784887],[-0.21397027],[0.004577288],[0.035433523],[0.12991314],[0.36998233],[-0.22823238]]},{"dense_3_W":[[0.2214185,0.117530905,0.07735763,-0.42819867,-0.40887833,0.053850636,-0.48472774,-0.2518017,-0.14455964,0.24991058,0.44975048,0.53486747,0.053818256],[0.4654577,0.13631766,-0.46057823,0.29975346,0.45944688,-0.43295076,0.47323555,0.55603576,-0.5924481,0.48736095,0.115073934,-0.056898475,-0.11687438],[-0.10070122,-0.5919317,0.3332405,-0.4515512,-0.44559675,0.47399083,-0.4619347,-0.37476748,0.5336691,0.34931633,0.3149243,0.08350989,0.5604568]],"activation":"identity","dense_3_b":[[-0.049824595],[-0.047182556],[-0.04280936]]},{"dense_4_W":[[-1.3079116,-0.3294201,-0.081988834]],"dense_4_b":[[0.051560275]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json new file mode 100644 index 0000000000..5bbf98eff6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/KIA_STINGER_2022.json @@ -0,0 +1 @@ +{"input_std":[[6.871551],[0.99076307],[0.5212804],[0.034033],[0.99273914],[0.99082446],[0.99025035],[0.97448325],[0.9654756],[0.9608115],[0.9527273],[0.033883817],[0.033910338],[0.033948522],[0.03404775],[0.03394733],[0.033679023],[0.033345345]],"model_test_loss":0.004427366424351931,"input_size":18,"current_date_and_time":"2023-08-08_20-41-47","input_mean":[[18.534761],[-0.107549384],[0.0060349857],[-0.004051211],[-0.10914043],[-0.109205954],[-0.10822495],[-0.1059477],[-0.10361664],[-0.10045632],[-0.105254054],[-0.0040303078],[-0.0040611844],[-0.0040791193],[-0.0039875545],[-0.003919938],[-0.0038113499],[-0.0038577982]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.10420359],[-0.1057817],[-0.39223936],[-2.3496768],[-0.28235236],[-2.4502673],[0.03921215]],"dense_1_W":[[0.074189,-0.46536532,1.0744638,-0.0955078,0.28618422,-0.7533586,0.43112066,-0.16309841,0.008819428,0.3651173,0.16028656,-0.111217655,-0.09443299,0.6007408,-0.26957542,0.0102762515,-0.211533,0.20011066],[0.01304878,-1.1999677,0.018503658,-0.372737,0.6353846,0.8292781,0.1719466,0.035132185,-0.10863397,0.08928544,0.19234443,0.36751947,0.06552409,0.09331779,-0.00076240604,-0.45366123,-0.218846,0.31527466],[0.01300137,-0.41192222,-0.25047097,0.6152148,0.2306633,-0.38328096,-0.5728854,-0.49195603,-0.593413,0.16746691,-0.19081128,0.9538493,1.0308561,0.66020083,1.0559919,0.5171979,0.52770406,-0.3480374],[-0.7787808,-0.008312755,-0.1780567,-0.48370415,0.35223204,-0.5498642,0.29583552,-0.7346698,0.10713884,-0.1704408,0.11306947,-0.02356725,0.21382311,-0.17346635,0.5998714,-0.07053526,-0.09073403,0.092191376],[0.012029196,0.011908107,-0.2484767,1.264593,-0.85373944,-0.26193362,-0.660338,0.74062943,-0.28554145,-0.702825,-0.16722941,0.46179152,0.9958684,1.0726779,0.44082853,0.5114168,0.29967558,-0.1432011],[-0.76869935,0.34115568,0.17525065,0.15999442,-0.49437794,0.87348694,-0.5276255,0.17559843,0.17176434,0.18722947,-0.12719314,0.17408907,0.051208638,-0.14185886,-0.4593266,0.11995127,0.20499156,-0.1721416],[-0.04674022,-0.38118473,-1.4628186,-0.047094345,0.7261122,-0.046270296,0.81954944,-0.19116434,-0.5375223,-0.33290347,0.15070404,0.02437715,0.10229408,0.08374787,-0.0230739,-0.4579543,0.19219628,0.0668545]],"activation":"σ"},{"dense_2_W":[[0.14351524,-0.46819293,-0.4224769,-0.00477388,-0.019241339,-0.293288,-0.1430304],[0.013082477,-0.26986554,-0.13183518,-0.019898584,0.26537928,0.006188077,0.11345527],[0.7385166,-0.95441747,0.025136676,0.2132236,0.18503574,-1.2178441,0.01919843],[-0.2702514,-0.11104125,-0.62654877,-0.5112985,-0.38709098,-0.28173804,-0.08601629],[0.6713761,-0.22839609,-0.06097961,0.58245105,-0.6278035,-0.72068113,0.45237026],[-0.15852696,0.64257956,-0.55724066,0.21575698,0.22704268,0.6273873,0.011703053],[0.2014989,0.5201913,0.0019037927,-0.26834032,0.3011644,0.3858986,-0.528807],[0.46606636,-0.7134467,-0.048275437,1.742678,-0.4659715,-0.6684311,-0.139159],[0.15509929,-0.30987412,0.30098167,0.29494023,-0.37981874,-0.5524831,0.48631984],[0.14930598,0.34096712,-0.40304628,-0.4632963,0.04036466,0.5767117,-0.5780966],[0.31667084,-0.6918976,-0.00022687673,0.6150214,-0.45327514,-0.47609383,0.52913016],[0.246736,-0.3391219,0.104266286,-0.5017469,-0.018542334,0.12372901,-0.40627465],[-0.3095181,-0.40006125,-0.012567477,0.85648316,-0.17277096,-0.6989313,-0.0026190844]],"activation":"σ","dense_2_b":[[-0.31950915],[0.013885399],[-0.11509819],[0.0267938],[-0.018023722],[-0.012910115],[-0.027250042],[0.14641029],[-0.038134225],[-0.025109382],[-0.07372913],[-0.010580315],[-0.11711807]]},{"dense_3_W":[[0.20788044,0.033924606,-0.49926776,0.60941577,0.01432724,0.5210565,0.4180843,-0.25332364,-0.57750213,0.44128165,-0.3681372,0.36565867,-0.42293212],[-0.41391054,0.49958703,-0.41073647,0.074788004,-0.42877886,-0.39288726,0.07698003,0.2999807,-0.5140176,-0.23761888,-0.041945565,-0.54366297,0.10134992],[-0.06092816,-0.03296278,-0.10772118,-0.49357474,0.4073531,-0.56182015,-0.27668962,0.4813049,0.43785417,-0.38696533,0.3007674,-0.30370563,0.076707035]],"activation":"identity","dense_3_b":[[0.042803183],[0.06512138],[-0.045637704]]},{"dense_4_W":[[0.67749745,0.58833116,-1.2096345]],"dense_4_b":[[0.04982903]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json new file mode 100644 index 0000000000..57e7e301d6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_ES_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[9.041581],[1.1167691],[0.37027505],[0.04339891],[1.1085886],[1.1118982],[1.1143059],[1.1035876],[1.0856115],[1.0586617],[1.030805],[0.04334689],[0.043362875],[0.043374643],[0.04328665],[0.04312567],[0.04288237],[0.04255028]],"model_test_loss":0.00914697628468275,"input_size":18,"current_date_and_time":"2023-08-09_00-04-02","input_mean":[[24.044405],[-0.004445901],[0.0057743173],[-0.0008446529],[-0.0052520004],[-0.0049055307],[-0.004310624],[-0.0021481782],[-0.0005770088],[0.0025430974],[0.005762188],[-0.0008080605],[-0.00082908414],[-0.0008470768],[-0.0009064238],[-0.0009857891],[-0.0010071733],[-0.0010139564]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.3401184],[-4.1053653],[-0.010608114],[0.2289179],[-0.69536865],[-0.2987435],[-0.28003243]],"dense_1_W":[[1.7534523,-0.08379865,0.21821876,-0.111209184,0.18547846,0.70984817,-0.7669529,0.01540298,0.34365195,0.024990361,0.25576633,-0.04872505,0.058915216,-0.199681,-0.08895335,0.5293662,0.3860833,-0.47484013],[-1.6871309,-0.09608493,0.21602522,-0.25279704,0.15465249,0.53819185,-0.40238786,-0.01616075,0.06256271,0.22947508,0.23026761,0.24505456,0.014156367,-0.39275125,-0.00928132,0.6701992,0.068403155,-0.3019433],[0.004725199,-0.4235836,0.0013364913,0.15324596,0.42727017,-0.5808631,0.26156494,-0.20967181,-0.15404399,-0.09115835,0.18597606,-0.24034514,0.07084023,0.07770485,0.18210891,0.39121026,0.31440163,-0.5783728],[-0.19552681,-0.41310206,0.000722477,-0.0605445,0.701027,-1.3483342,0.5252242,-0.04271466,-0.11926105,0.18295698,-0.06785281,-0.47475234,-0.4607312,0.5883256,0.5187908,0.114911854,-0.25203437,0.08746814],[0.4152751,-0.14281093,0.7790405,-0.100202,0.28926933,-0.3125703,0.13834746,-0.3347568,0.43060276,0.55356705,-0.1735469,-0.11919702,-0.020521542,0.46576738,-0.06227651,0.036938347,-0.5694443,0.35215282],[0.3015953,-0.66961235,0.0007066811,0.419904,0.31045586,-0.9015735,0.7159605,-0.13024196,0.19127548,-0.18470418,0.06677055,-0.77706313,0.2998383,0.42251042,-0.21567652,-0.38658017,0.039470255,0.2681703],[-0.034314536,-1.076988,-3.4866838,-0.06330224,0.97281605,0.28214806,0.5845572,-0.5232068,-0.82733965,-0.2174799,0.6705298,-0.90485686,-0.048824865,0.40581775,0.6931158,0.17884906,0.25361615,-0.51271003]],"activation":"σ"},{"dense_2_W":[[-0.31351262,-0.32074958,0.8266476,0.8546215,0.3378021,-0.06759033,-0.46708575],[-0.8333776,-0.28922173,0.16795295,0.98310614,0.114590034,0.58432436,-0.13839144],[-0.6834294,-0.23853575,0.6451696,0.105569854,0.27903724,0.41774848,0.29000074],[-0.65618104,-0.20165549,-0.09106172,0.8227704,-0.23443276,0.53824764,0.47971424],[0.6953251,1.2419958,-0.79052114,-1.2340282,0.18634371,-0.6665756,0.107695915],[0.14654803,-0.19937792,-0.34062067,-0.7089461,0.40067112,-0.52197015,-0.085414894],[-0.2932009,2.5196638,-0.104791835,0.20051786,-2.2182112,-0.29118708,-2.7579544],[1.5122235,0.7356845,-0.89097416,-1.6861671,-0.033902757,-0.38292047,-0.13017933],[0.4886302,0.92094517,-0.91408855,-0.3532557,0.51951903,-0.95678043,-0.10919232],[-0.5293851,-0.20095,0.6889325,0.38757306,-0.377088,0.58944535,0.0955727],[-0.4349411,0.17035034,-0.15226962,-0.32203415,0.0838514,-0.059919562,0.04385721],[-0.26080495,-0.63391984,0.3301537,-0.1671539,-0.5050505,0.43088788,0.14715135],[0.45397362,0.3551525,-0.8346096,-0.65694994,-0.13430665,-0.31082925,-0.24663672]],"activation":"σ","dense_2_b":[[-0.15302955],[-0.15477453],[-0.1963815],[-0.2491886],[0.30184123],[-0.084158726],[-0.49648997],[0.67838836],[0.30030432],[-0.28645435],[-0.19416146],[-0.12059393],[0.36774662]]},{"dense_3_W":[[-0.30843228,-0.1345852,0.11176096,-0.5151945,0.29644585,0.12701263,0.0053969924,0.5684098,0.42676082,-0.370609,-0.16872759,-0.4540934,0.006954758],[0.43918204,0.6085673,0.51018596,0.6114487,-0.4061561,-0.1493339,-0.8047057,-0.18715277,-0.6292988,0.57502186,-0.1399395,-0.07194364,-0.8415874],[-0.39917964,0.53317773,-0.4621838,-0.015575044,0.50181717,-0.4820892,0.09182787,0.31296906,-0.39892152,-0.06316368,0.0068018823,0.37321454,-0.22843313]],"activation":"identity","dense_3_b":[[0.09777908],[-0.097871915],[0.098439135]]},{"dense_4_W":[[0.66679657,-0.8622704,0.007841214]],"dense_4_b":[[0.10087897]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json new file mode 100644 index 0000000000..3222012608 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_IS.json @@ -0,0 +1 @@ +{"input_std":[[7.9971128],[1.0977883],[0.45730543],[0.04923891],[1.089019],[1.0908507],[1.0933481],[1.0831064],[1.0687581],[1.0477011],[1.0263152],[0.04910758],[0.04913805],[0.04915577],[0.04904069],[0.0488613],[0.048416592],[0.047898013]],"model_test_loss":0.0029971429612487555,"input_size":18,"current_date_and_time":"2023-08-09_04-46-36","input_mean":[[28.262257],[0.00053741777],[0.007980467],[0.0073362947],[-0.002916855],[-0.0013664461],[0.00021708602],[0.0032231822],[0.007565537],[0.010730909],[0.014714129],[0.007122549],[0.0071928487],[0.0072572897],[0.007378812],[0.007430641],[0.007424608],[0.0074211424]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.13015555],[0.037057668],[-0.23104249],[0.32127166],[-0.1253072],[-0.6277245],[-0.1822209]],"dense_1_W":[[0.0022739936,0.15201275,-0.018758008,0.15420967,-0.6103832,1.253523,-0.6429536,-0.095406406,0.457949,-0.061857425,-0.09967628,0.34019652,-0.0124527775,-0.46103212,-0.41929677,0.31853652,-0.3198645,0.26396248],[0.016219854,0.2708034,-0.1250583,-0.3348056,-0.83736426,0.3921742,-0.35075605,0.30172172,0.24997391,0.45135334,-0.43142125,0.22985688,-0.40631214,-0.111362845,-0.5208431,0.004493165,0.4684426,0.6794704],[0.018668292,-1.0140254,-3.2794235,0.15160404,0.028701765,0.23249008,-0.1426395,0.43393394,-0.07807302,0.5009389,0.17505689,-0.7776797,-0.038091138,0.7018249,-0.21396264,0.011046297,0.13001016,-0.10944152],[0.3585128,-0.14987485,-0.13354455,-0.004226716,0.24764334,-0.858648,-0.007176733,-0.046182733,0.1446194,0.14181069,-0.1651582,-0.2749394,0.70667934,0.37523896,-0.2320659,-0.2591826,-0.20168015,0.28267252],[0.26727927,-0.41644073,-0.05738287,-0.011317095,0.4693145,-1.0781763,0.47786325,0.13199824,-0.1208562,-0.16208106,0.18948868,-1.007483,-0.48438329,0.07924176,0.80360824,0.66245914,0.16595826,-0.23646787],[-0.5315527,-0.023200141,-0.14639618,-0.2272303,0.064140245,-0.9595354,0.4488574,-0.16073947,-0.10355826,-0.061561897,0.069149286,-0.40911204,0.44534415,0.50131905,0.32962856,-0.22854826,0.1118126,-0.10387003],[0.45086104,0.62962455,0.05797986,-0.27834865,-0.03647285,0.58516073,-0.50903237,0.31138107,-0.46869588,-0.109248996,0.1444298,0.6807234,0.24872255,0.33425596,-0.46959794,-0.30864963,0.083699554,-0.24581586]],"activation":"σ"},{"dense_2_W":[[-0.47314742,0.30918634,0.6835903,0.33214816,0.41032484,-0.2974307,0.48068962],[-0.44719142,-0.3584287,-0.42897063,-0.0863155,0.32148045,-0.37775746,-0.35045746],[0.10737237,-0.107548736,0.40882415,-0.37991515,-0.35765076,0.6178046,-0.6659961],[0.5089876,-0.0018523282,0.47517067,-0.4635432,-0.51244944,-0.7637346,0.111460224],[0.009865635,-0.3599542,-0.08200983,-0.8016887,0.049183395,-0.55783385,-0.4132886],[0.21302545,0.24237937,0.2559324,-0.37488487,-0.8143479,-0.034766164,0.63836616],[0.06948995,0.5238659,-0.5756278,-0.34593225,-0.31828138,0.020820161,0.8075781],[0.264537,0.35211742,-0.2987492,-0.68384147,-0.37824905,0.12441704,-0.027348615],[0.18194555,-0.2742205,-0.7859905,-0.45490405,-0.6359722,0.30547658,-0.40839928],[-0.27246395,0.3188016,-0.6105616,-0.93436897,-0.120215744,0.019431151,-0.5015701],[-0.29636648,-0.44186333,-0.34854856,0.44886306,0.5337103,0.5365127,-0.5632916],[-0.24954297,-0.22443992,-0.15179092,0.51437247,0.24013738,0.43259284,-0.70645374],[0.4928545,0.18550447,0.22762263,0.29510337,0.3720493,0.37416783,-0.3423796]],"activation":"σ","dense_2_b":[[0.01935374],[0.0050131385],[-0.05235093],[0.046759594],[-0.12632822],[-0.027490286],[-0.024787772],[-0.044414002],[-0.123556636],[-0.14718735],[0.005641118],[-0.084211506],[-0.06420933]]},{"dense_3_W":[[-0.21112725,0.09418867,-0.44935966,0.3675701,-0.24375933,0.5796755,0.3944582,0.37292123,0.102567196,0.10260466,0.12603773,-0.6052102,-0.4585192],[0.033743866,-0.039306644,0.35334656,-0.42215514,-0.05132556,0.31450647,-0.30604413,0.12684399,-0.30334032,0.5066069,0.2883161,0.018579826,0.19727296],[0.5773127,0.44458362,0.37894127,-0.67509955,-0.4648014,-0.3175859,0.25752234,-0.57122767,-0.052177746,-0.57985467,0.56134444,-0.38693938,-0.35289878]],"activation":"identity","dense_3_b":[[-0.019124614],[0.012149713],[0.02416865]]},{"dense_4_W":[[0.85411745,-0.44846243,-0.8711393]],"dense_4_b":[[-0.020497099]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json new file mode 100644 index 0000000000..7c13f097ec --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX.json @@ -0,0 +1 @@ +{"input_std":[[7.6509843],[1.0640727],[0.43305442],[0.042583644],[1.0586958],[1.0597517],[1.0615927],[1.0452577],[1.0264294],[1.0022012],[0.97949535],[0.04246772],[0.042485926],[0.04249534],[0.042220093],[0.041864526],[0.041366912],[0.04084527]],"model_test_loss":0.009465457871556282,"input_size":18,"current_date_and_time":"2023-08-09_06-52-11","input_mean":[[24.357443],[-0.034125097],[-0.0049536517],[-0.011872438],[-0.03119763],[-0.03166454],[-0.03223406],[-0.03186475],[-0.030950857],[-0.030095048],[-0.03235388],[-0.011925372],[-0.011901585],[-0.01188047],[-0.011727326],[-0.011680916],[-0.011658311],[-0.01185102]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.1033378],[-0.26196438],[0.64087105],[0.0723818],[-0.033235934],[0.4940777],[-0.6624133]],"dense_1_W":[[0.17036144,0.70846754,-0.01288402,-0.31765887,-0.055238843,1.4783168,-1.0382427,0.09412714,-0.042508673,0.088409066,0.06366592,0.51934177,-0.2507901,-0.029035429,-0.40638945,0.18454157,-0.10026727,0.011903059],[0.0059481994,-0.4173155,-0.025032401,-0.17385283,0.42768398,-0.86849064,0.4772952,-0.28207323,0.45553952,-0.16625436,0.024320044,-0.3186513,0.04276512,0.058902144,0.67383,-0.41462952,0.32956126,-0.20091176],[0.50393635,-0.34078136,-1.1108505,-0.15240273,-0.34397945,-0.1046281,0.93492657,-0.0046718954,-0.35346282,0.18444361,0.09232944,-0.04991994,-0.43069664,0.04396726,0.5247936,0.38054457,-0.15464556,-0.072698794],[0.06292795,-0.49206024,1.0766574,0.3604547,0.33866602,-0.6243087,1.1562465,-0.22390123,-0.5481248,-0.046518486,0.25936723,-0.6421865,-0.103222616,0.3717842,0.18865198,0.22381376,-0.36329344,-0.12459951],[-0.018098533,1.1626849,7.7763515,0.3133824,-0.5978771,-0.6280122,-0.19266517,0.024776168,0.88816226,0.1488128,-0.4072811,0.8084272,0.2971273,-0.16158436,-0.36504307,-0.34449837,-0.5314731,-0.119041726],[0.12846576,-0.35670948,0.013853135,-0.075688206,0.18726085,-1.3245617,0.4279662,0.061345413,-0.11054695,-0.14311172,-0.0014835523,0.022838874,-0.11576593,0.39926448,-0.14371544,0.15646,0.11126016,0.03145696],[-0.31940654,0.05947834,-1.0866358,0.5663338,0.448577,-0.43552175,0.23205471,-0.35897624,-0.33488578,0.52830327,-0.011136929,-0.5225207,-0.56818086,0.44197837,0.20225807,0.1941536,-0.29525572,0.063295834]],"activation":"σ"},{"dense_2_W":[[-0.086325355,0.8016826,0.24832225,0.47240105,-0.46999067,0.6068118,-0.14119844],[-0.5582966,0.27016947,0.4639829,0.59999377,-0.37201896,0.7842096,0.28597522],[-0.27619955,-0.5730724,0.12383269,-0.3039288,0.123326324,-0.649525,-0.17117126],[1.4408953,-0.55869764,0.48217335,-0.18616202,1.0840948,0.16935517,-1.398959],[-0.66845334,-0.04818159,-0.3074986,-0.14507903,-0.382395,-0.22019714,-0.91304696],[-0.26608887,-0.5060071,-0.97440034,-0.35025296,0.8698175,-1.1775255,-0.030318461],[0.10986321,-0.8288251,-0.44233164,-0.3325045,0.2556111,-0.43471605,-0.35890812],[-0.1694278,0.047042966,-0.050367933,0.055317376,0.088589475,0.6182619,0.57370675],[0.93917805,-0.7993694,-0.21087216,-0.54964507,-0.060357884,-0.63951623,-0.236041],[0.40430954,-0.37087506,0.17056553,-0.9355302,0.12229527,-0.18960477,-0.10435068],[-0.05200265,-0.4987538,-0.31892672,-0.6532706,-0.6485076,-0.49172983,-0.77469736],[0.03723317,-0.48895985,-1.6575545,-0.027954731,0.53395647,-0.40768418,-0.80457896],[0.83523464,-0.9624459,0.10569231,-0.15287304,-0.58598167,-0.73237014,-0.28460762]],"activation":"σ","dense_2_b":[[0.02828117],[-0.05488203],[-0.27607742],[0.3004205],[-0.25380412],[-0.24068235],[-0.21541698],[-0.01097173],[0.21617699],[-0.081049286],[-0.12033645],[0.026889555],[0.32255155]]},{"dense_3_W":[[0.61514294,0.52475756,-0.3778977,-0.5686912,-0.56705767,-0.29328373,-0.14644307,0.5718381,-0.41984692,-0.19014074,-0.59977704,-0.64661556,-0.06085831],[-0.004403978,0.6136505,0.26742232,-0.14778873,0.28366107,0.0020191541,-0.17208292,0.33170637,-0.48983493,-0.3504383,0.26020375,0.0004651127,-0.8777239],[-0.25540027,-0.14768086,0.0147348475,0.34739557,-0.5552034,0.33083212,-0.25017375,-0.46695128,0.2878471,0.41177458,0.16511062,-0.06707549,0.49898487]],"activation":"identity","dense_3_b":[[0.062096752],[0.050615054],[-0.043884374]]},{"dense_4_W":[[-0.82545334,-0.75625134,0.20575939]],"dense_4_b":[[-0.053638227]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json new file mode 100644 index 0000000000..99ea2be6bf --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_NX_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[8.147084],[1.086054],[0.37127572],[0.041630004],[1.0729798],[1.0772483],[1.0815692],[1.0805902],[1.0708296],[1.0535992],[1.0337878],[0.041566238],[0.041577842],[0.041586876],[0.04155611],[0.04150528],[0.041361168],[0.041143257]],"model_test_loss":0.0067100683227181435,"input_size":18,"current_date_and_time":"2023-08-09_08-07-39","input_mean":[[24.872166],[0.003932426],[-0.010966269],[-0.008132051],[0.0087015005],[0.0073090056],[0.0060250014],[0.0013043662],[0.0013662752],[0.0015136959],[0.0025651027],[-0.00813054],[-0.008112211],[-0.008098942],[-0.008128093],[-0.008089364],[-0.008116192],[-0.0082015265]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.9054255],[-0.28507137],[1.4240875],[0.02306676],[1.52593],[0.051342566],[-0.1610418]],"dense_1_W":[[-1.2814169,0.04502527,-0.24452247,-0.04534104,-0.22521678,0.12426732,-0.5100604,-0.1931805,-0.1757783,-0.71891594,0.26680607,0.33749202,-0.23968601,-0.4898723,0.4347295,-0.16316435,0.25191417,-0.040637583],[0.026426677,-0.5180133,-0.054280188,0.2787388,0.11506753,-0.7289032,1.0191976,-0.20389938,-0.12718956,-0.012505079,0.11661954,-0.20947376,-0.33647072,0.08544779,0.09467619,0.33146363,-0.09642059,-0.12805226],[0.4297043,-0.01532184,0.17760155,-0.11004306,-0.32989568,1.2537458,-0.2505036,-0.0105941985,-0.011504197,0.4410887,0.0021856735,-0.005641636,0.29666585,-0.013274171,-0.13881417,-0.022560775,-0.034353882,-0.016772056],[0.115859054,-0.69582313,0.008139212,0.10011219,0.35110396,-0.4720546,0.5779868,-0.2903919,-0.21940863,0.0279369,0.17058563,-0.69917786,0.3002438,0.18366155,0.35467052,0.10840391,-0.17159945,0.018160818],[0.22031884,-0.7193572,-0.18843435,0.09803419,0.3082459,-0.81420296,0.3980327,-0.044523235,0.05807009,-0.26365182,-0.07507196,-0.40902695,-0.13396262,0.41380468,0.18925877,-0.30483818,0.19883342,0.001749679],[0.17746796,0.81731343,-0.008930264,-0.34225407,-0.5971375,0.803859,-0.56055987,0.22442165,0.043888506,-0.28582388,0.07147745,0.6224109,0.025271881,-0.21175076,-0.3498934,0.1339036,-0.2896505,0.22109397],[-0.045657806,-0.7590582,-6.4479246,-0.38063437,0.36719322,0.23610972,-0.21581803,-0.29967567,-0.2673017,-0.34047002,0.9861421,-0.6061893,-0.1955559,0.54208314,0.6973659,0.06787787,0.08896528,-0.23932248]],"activation":"σ"},{"dense_2_W":[[-0.20833433,0.61933535,-0.800919,0.22723371,-0.090565115,-0.7945698,-0.13987784],[0.28559738,0.26079953,-0.15632679,-0.12129952,-0.289886,-0.21938595,-0.14360459],[0.95100516,0.07814724,0.0031976546,-0.75894195,-0.94153005,-0.7928424,-1.4411982],[-0.42705938,-0.8987026,0.06752999,-0.8046098,-0.51792544,-0.42536137,0.09767677],[0.19683614,-0.36086804,-0.014388864,-0.76707953,-0.8514832,0.26960486,-0.21758303],[-0.17587733,-0.5193636,-0.13756172,-0.44829637,-0.65762174,0.29082942,-0.008277407],[-0.3183399,-0.1665803,1.2876375,-0.0728533,0.30167028,1.2605048,-0.57462007],[0.3546879,0.35146946,-0.56283337,0.6228679,0.5594427,-0.19124825,-0.5252673],[-0.00087872695,-0.73673224,0.26480362,-0.72668016,-0.4297641,0.3408679,0.43822297],[-0.6492434,-0.5402448,-0.056282554,-0.08095678,-0.24393153,-0.7988477,-0.1693451],[-0.47922924,0.30153432,-0.7007562,0.39001682,0.10440299,-0.5656516,0.30876267],[0.9030477,-0.75241685,0.30403712,-1.1863935,-1.5607433,-0.5210042,-1.2099376],[0.09520087,-0.024397036,1.1286579,-0.4269453,0.06613633,1.022576,-0.42460024]],"activation":"σ","dense_2_b":[[0.068604216],[-0.07214453],[-0.23128065],[-0.11810941],[-0.113441095],[-0.066630945],[0.14084376],[-0.0044738725],[-0.22459178],[-0.2939405],[-0.04563305],[-0.05732056],[0.122370996]]},{"dense_3_W":[[0.37704808,0.6223934,-0.46660277,0.2654992,0.20017228,-0.33366653,-0.24672645,-0.32106653,0.56422967,-0.13366485,0.15189694,-0.2369768,-0.14679962],[-0.733396,-0.48898083,-0.3152747,0.08094783,0.33034948,0.599701,-0.27930403,-0.5709238,0.5841461,-0.06343237,-0.35778514,0.12911445,0.2698867],[-0.030497754,0.38693696,0.59045714,0.39527935,0.27385178,0.100422375,0.50604045,-0.398048,-0.12326097,0.0054453975,-0.7562181,0.5377892,0.3636564]],"activation":"identity","dense_3_b":[[0.038279504],[-0.05277531],[-0.07727225]]},{"dense_4_W":[[-0.21258786,0.8358761,1.1302456]],"dense_4_b":[[-0.062789865]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json new file mode 100644 index 0000000000..2541918644 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX.json @@ -0,0 +1 @@ +{"input_std":[[9.006951],[1.0661907],[0.4208536],[0.040620446],[1.0632395],[1.063527],[1.0637337],[1.0418845],[1.0213413],[0.9960982],[0.9659563],[0.04054981],[0.04057159],[0.04058309],[0.04049591],[0.040372174],[0.04013236],[0.039733175]],"model_test_loss":0.014225631952285767,"input_size":18,"current_date_and_time":"2023-08-09_14-33-01","input_mean":[[25.177166],[-0.026529262],[0.009477891],[0.0017629279],[-0.028283715],[-0.027773762],[-0.02699433],[-0.023891538],[-0.02269541],[-0.020438392],[-0.017402157],[0.0018114187],[0.0018036948],[0.0017961235],[0.0018093524],[0.0017814242],[0.0017387652],[0.0016870175]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.3488934],[-0.25318402],[1.3796363],[-2.4763696],[0.17862964],[-2.581063],[0.0374099]],"dense_1_W":[[-1.9565458,0.43680963,0.06587548,0.042409927,0.3682261,-0.32550198,0.3935391,0.34101823,-0.19819863,-0.09118507,0.072811775,-0.55412966,0.22973019,0.5704431,0.10271992,0.10906355,0.18409586,-0.25245637],[0.010017396,-0.23327492,-0.025723774,-0.06732227,-0.1377613,-0.9790948,1.1363516,-0.004057807,-0.09313964,0.054035064,-0.04986635,-0.6889519,-0.43221784,0.85702723,0.469375,0.3359073,0.1845464,-0.47437343],[2.133775,0.8436303,0.06543569,-0.19301523,0.7682015,-0.71488863,0.44514364,0.121126205,-0.5451813,-0.23265283,0.36209187,-0.10944904,-0.10013678,0.8461928,0.47840348,-0.4829053,-0.15971945,0.19538315],[-0.762671,0.8158483,0.11918508,0.11182312,0.045061667,0.5209565,-0.017836645,0.19029039,0.05993828,0.14132203,-0.14783566,0.21835268,-0.37212574,0.021008398,-0.07471657,0.23310561,0.30849415,-0.32095852],[0.012362058,1.1697396,4.896626,-0.6752607,-1.293956,-0.6969285,-1.2943544,0.48185518,1.9836872,0.80383307,-0.67689174,1.464715,1.0810806,-0.6226654,0.5317476,-0.97188056,-0.93535984,-0.07797605],[-0.76108575,-0.96115094,-0.12517042,-0.023074046,0.21048824,-1.0002247,0.1298013,0.017577004,-0.04171292,-0.13762209,0.09954114,-0.4320813,0.051972903,0.5637555,-0.20373943,-0.0645255,-0.17654338,0.17915705],[0.012589448,-1.178468,0.16960609,-0.042218912,-0.313776,-1.1033659,-0.3083642,0.04046465,-0.69654006,-0.5194823,0.22638294,-0.115158446,0.1719876,0.6620813,-0.27977157,-0.6041283,-0.16925894,0.5477763]],"activation":"σ"},{"dense_2_W":[[0.2714706,0.59053195,-0.0041459124,-0.41285,-0.3072934,0.30405983,0.29765671],[-0.05261304,0.61104286,0.083263226,-0.2729422,-0.15758975,0.3245751,0.08180204],[0.11750135,-0.9169556,0.16402717,-0.47221494,0.013237812,-0.9444454,0.07540947],[0.14767434,-0.2879568,-0.23108272,0.41553706,-0.022354566,-0.7293346,-0.44255376],[0.30335668,0.37456387,0.3885767,-0.7781797,0.03455829,0.701339,-0.088443086],[-0.1726601,-0.85276175,-0.42082515,1.3459167,0.014372793,-1.1087767,0.25560606],[-0.22434108,-0.61502177,-0.77391124,0.58211446,0.70793843,-0.44423535,-0.10059737],[-0.24011742,-1.1389203,0.13803475,0.5802644,0.4245233,-0.4964158,-0.06763477],[0.17082813,0.26018152,0.2441558,-0.798921,-0.34764507,0.53820854,0.4687339],[-0.142942,0.1200522,-0.2755005,-0.44287127,0.12139864,0.7061747,0.30685058],[0.26870826,0.27511376,0.013270598,-0.38270554,-0.25317055,0.5880916,0.38201085],[-0.51288533,-0.74000406,0.041218568,0.23942995,-0.61270565,-0.35922202,-0.41015244],[-0.31531772,-0.6721873,-0.0041211997,0.44185337,0.094147496,-0.532301,-0.09608283]],"activation":"σ","dense_2_b":[[-0.13420725],[-0.006237683],[-0.29298192],[-0.16996942],[-0.24118775],[0.39525142],[0.12012915],[0.079633266],[-0.14625302],[0.017826455],[-0.25199854],[0.08497193],[0.11287382]]},{"dense_3_W":[[0.3236856,-0.11585646,0.37450194,-0.3883134,-0.12542132,0.117089026,-0.33960536,-0.51633084,0.15317307,-0.46796653,0.22769703,0.14106414,0.37199378],[-0.46536645,-0.21581124,0.21901791,0.11581306,0.0037904275,0.20201044,0.76395154,0.2692143,-0.08054871,0.3889979,0.13807094,0.58494323,0.6641779],[-0.31520608,-0.5903212,-0.0585899,0.1499463,-0.49658206,0.3555356,0.734374,0.46968886,-0.6641194,-0.6121126,-0.57470906,0.48789984,0.46722496]],"activation":"identity","dense_3_b":[[-0.010275512],[-0.05716576],[-0.03483528]]},{"dense_4_W":[[0.05533481,0.9485316,1.0639691]],"dense_4_b":[[-0.04380799]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json new file mode 100644 index 0000000000..4912d86a06 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/LEXUS_RX_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[8.48588],[0.9537726],[0.36582693],[0.043554034],[0.9464909],[0.94813603],[0.94916946],[0.9368726],[0.9235678],[0.90086037],[0.8777369],[0.043447778],[0.043471374],[0.043487635],[0.043498106],[0.043457054],[0.043319046],[0.043142088]],"model_test_loss":0.01665860041975975,"input_size":18,"current_date_and_time":"2023-08-09_17-03-58","input_mean":[[23.708097],[0.018138325],[0.0074228332],[-0.009125995],[0.016877966],[0.01722217],[0.017804503],[0.01873034],[0.018360198],[0.018759517],[0.02228655],[-0.009105863],[-0.009100863],[-0.0090915],[-0.009066759],[-0.009038707],[-0.009013525],[-0.008991696]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.010409239],[-0.0048437957],[1.1988333],[-0.13476348],[1.4858104],[-0.794262],[0.6790735]],"dense_1_W":[[-0.011625103,-0.3083069,-0.0026562517,8.90253e-5,0.24631822,-1.1913638,0.82102,-0.11153706,0.1505958,0.2899964,-0.27461168,-0.49880293,0.04710429,0.29354858,0.416012,-0.3435446,0.19979279,-0.12608024],[5.6495715e-5,0.28144145,0.42635885,-0.04114077,-0.0014621562,0.46131748,-0.5228703,0.41057003,0.33081797,0.34625557,-1.0916862,0.09432066,0.32492688,-0.056624148,-0.040471476,-0.5424953,-0.0072112447,0.28388345],[1.7090412,0.2002619,0.0026196167,0.26699355,0.071899444,0.049739193,0.1701057,0.42871216,-0.038330317,-0.011365764,-0.23889059,0.12167451,-0.393932,0.3747686,0.00017281089,-0.1975879,0.026008612,0.12001063],[0.0018485491,-1.0713278,-4.8827915,0.26486492,2.050632,0.16912486,-0.06104053,-0.11624062,-1.6869881,-1.0038092,1.237583,-0.84136367,-0.39167315,-0.30604422,0.44892347,0.5669582,0.034259807,0.35163558],[1.7980721,-0.4584174,-0.0022513545,-0.6307025,-0.14997724,0.72365683,-0.91590655,-0.31521827,0.11314583,0.38106278,-0.00602411,0.21668813,0.43501985,-0.45246387,-0.009387444,0.23703502,-0.14703332,0.0099657895],[-0.1358725,0.54878175,-0.0025949588,-0.12666118,-0.19501363,0.654152,-0.16454516,-0.08546684,0.1169596,0.49080434,-0.3239291,0.35493678,-0.10910667,-0.33374792,-0.24709627,0.114444494,0.27612403,-0.06697925],[0.13420698,0.50657654,-0.0042069573,0.045988888,-0.07106984,0.9937608,-0.6856747,-0.032089513,0.21678452,0.25315955,-0.18009213,0.6731982,-0.321046,-0.5262044,0.0499083,-0.21319143,-0.17084885,0.3188954]],"activation":"σ"},{"dense_2_W":[[-0.7456634,0.46501774,-0.6609165,-0.36825928,0.34470782,0.37473607,0.32698643],[0.8138239,-0.2721878,0.23626322,0.42493615,-0.49122226,0.11831825,-0.0014772185],[0.9073058,-0.24231595,-0.6257176,0.3009464,-0.9984163,-0.84967256,-0.9688514],[0.81139743,-0.3589047,-0.25483748,-0.008724137,-0.30143958,-0.55920064,-0.75189996],[1.2769561,-0.19255519,-0.5588862,0.4862281,-1.1403346,-0.9804591,-1.1165341],[-0.31463045,0.45179945,-0.24287948,-0.6230109,0.25823897,0.7043701,-0.22927245],[-1.008901,0.50820404,-0.73319477,-0.07753135,-0.3671213,0.6114657,0.06207998],[-0.5402591,-0.8133519,0.14899945,0.07088945,0.031132944,-0.13568036,-0.49520075],[-1.6630762,-0.06750191,-1.6710929,-0.14377673,-0.8075217,1.4285947,0.8853607],[-0.3978325,-0.20129038,-0.3479711,0.023103444,0.37153137,-0.3815196,-0.2664648],[0.22289358,0.35865685,-0.7157779,-0.28774455,-1.0286486,-1.0144361,-1.3272792],[1.084518,-0.7375414,0.45458505,-0.07111571,-0.6131045,0.0032512164,-0.5619188],[-1.4050175,0.33980614,-1.1927856,-0.46912205,-0.58342016,1.0496932,0.6457101]],"activation":"σ","dense_2_b":[[-0.06799501],[-0.14373808],[-0.1901882],[-0.15265658],[-0.22159524],[-0.07163111],[-0.12828404],[-0.37175685],[-0.48142236],[-0.34072894],[-0.10627754],[-0.048601486],[-0.29759893]]},{"dense_3_W":[[-0.04726544,-0.39426312,0.30152455,-0.13302766,0.118110485,-0.14255127,0.5374407,-0.020599457,-0.16083333,-0.14201048,0.047239352,0.38325223,0.15821639],[0.4946483,-0.34571862,-0.5582076,-0.5775158,-0.840619,0.24489452,0.33843094,-0.5029043,0.61864847,0.53716034,-0.54293144,-0.5770566,0.804303],[-0.68038666,0.06468416,0.5824173,0.06446385,0.5888793,-0.19427243,-0.3311894,-0.6022182,-0.77085805,0.42349538,0.5826747,0.58117974,-0.21141453]],"activation":"identity","dense_3_b":[[0.032147415],[0.045437515],[-0.028842183]]},{"dense_4_W":[[0.17054327,0.9154161,-0.7712217]],"dense_4_b":[[0.034591846]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json new file mode 100644 index 0000000000..91785773f8 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_3.json @@ -0,0 +1 @@ +{"input_std":[[7.469403],[0.5752973],[0.3025814],[0.027512576],[0.5745247],[0.5751064],[0.57497597],[0.56818837],[0.55998725],[0.5523634],[0.5432058],[0.027730573],[0.027652828],[0.027584106],[0.027332576],[0.027187975],[0.026960261],[0.026921367]],"model_test_loss":0.024072762578725815,"input_size":18,"current_date_and_time":"2024-01-04_17-43-34","input_mean":[[22.35999],[-0.30513376],[-0.05278297],[-0.015512917],[-0.29194897],[-0.29571798],[-0.29988596],[-0.3178012],[-0.32379964],[-0.33275104],[-0.33721825],[-0.015199247],[-0.015290173],[-0.015389486],[-0.015867714],[-0.016179392],[-0.016556518],[-0.016847862]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.3300024],[3.4020867],[0.8867904],[0.24398735],[-0.22297323],[0.8297959],[4.4060645]],"dense_1_W":[[0.5586716,0.19477035,0.014838485,-0.8819099,0.8490799,-0.8849248,0.5430739,-1.2464411,0.1032794,-0.35215527,-0.1541876,-0.6031729,-0.34809163,0.021685746,0.171801,0.17438643,0.7795394,0.71163744],[0.0023543302,-1.4088361,-0.20021366,-0.037758816,1.9830067,0.13815653,0.86535054,-0.81385386,-3.3036325,-2.9394522,-0.69543415,-0.6041395,-0.37588012,0.68224555,0.7861614,0.19097735,-0.9865116,0.3145854],[-0.960537,0.2949049,0.020091651,-0.9853115,0.6460172,-0.8868847,0.69357425,-1.453919,0.09689657,-0.20516564,-0.45445403,-0.76455826,-0.76449543,0.06314495,-0.06493274,0.81162876,0.80799454,0.93353367],[0.3291335,-1.8058063,0.01374078,-0.79195046,-0.45958978,1.0171918,-0.52610767,1.2541785,0.7763023,0.06388108,-1.230813,0.19347882,0.075406365,-0.97705686,-0.21693136,0.102006726,0.69212055,0.98111564],[0.0072148344,-1.9069422,-0.00010727675,-0.4882408,0.6680689,1.1360449,-1.0022873,1.2947347,0.35052946,0.3640997,0.37955928,0.14649878,-0.31742507,-0.044465248,-0.06055242,-0.45532945,-0.09595856,0.4186969],[0.0056863213,-0.29262394,-5.1591883,-0.6082099,0.6530366,0.81221175,1.3255913,0.12576282,-0.105110295,-0.79566103,-1.1739684,0.063307,0.035404827,0.27293137,0.11892293,-0.79880846,0.38751557,0.14072612],[-1.0780617,-1.3712662,-0.9741798,-0.5754835,0.35970378,-0.29184532,0.54759485,-0.5236218,-2.1269052,-2.3032513,-3.4586606,0.7505796,1.1786144,1.1765167,0.273957,-1.19514,-1.5335932,-1.8808447]],"activation":"σ"},{"dense_2_W":[[0.13640141,0.26249138,1.3706881,-0.67349094,-0.6853489,0.07761523,-0.20782757],[-1.561812,-1.1158333,0.45575863,0.05350467,0.11361368,-0.84576166,-1.5393691],[-0.4932355,0.23465966,-0.7953872,0.5806595,0.67311335,0.007322937,0.17559592],[0.34134263,-0.056415536,0.15007868,-0.3607064,-0.7849791,0.21608916,0.113307916],[0.2992458,0.18675353,0.43198323,-0.9817767,-0.78184605,0.17114773,-0.009282266],[-0.279027,-1.2797687,0.3050861,1.4301388,1.1050543,-0.32616624,-0.35091028],[-0.9362512,-0.41732854,-0.20699288,0.58766145,0.99819213,0.18219909,-0.1769925],[-0.9172841,-1.057063,-0.8472072,0.4978657,-0.025878131,0.62177205,-0.30631492],[0.51108074,-0.37056863,0.90701807,-0.3689084,-0.59172076,0.35379598,0.026690245],[-0.31872204,0.09643645,-0.40120426,0.73168164,0.033515673,-0.08508878,0.86411595],[-2.030154,0.4349391,0.9615393,-1.0150082,-0.7122496,-1.0493598,0.27227473],[-1.1227299,-1.6187482,0.22539543,-0.07183943,0.5167592,-0.097296976,-1.2421465],[0.6432161,0.38064235,-2.9676967,-1.1754779,0.1922527,-0.79099226,-1.7507246]],"activation":"σ","dense_2_b":[[0.34029007],[0.15721829],[-0.38075104],[-0.022835307],[0.00043023936],[-0.104654595],[0.06738647],[-0.010813514],[0.15167741],[-0.121652484],[-0.005833656],[0.0061091785],[0.4982022]]},{"dense_3_W":[[-0.20176695,-0.10482956,0.25416008,0.59829456,0.5850189,0.2088624,0.37909675,-0.19094692,-0.40086383,0.12073893,0.56499076,-0.039211515,-0.3167774],[-0.48269215,0.7165856,0.27029762,0.21725719,0.28123355,0.24939528,-0.3724709,-0.31746587,-0.2978945,-0.17932776,0.5278354,-0.41470852,0.3494488],[-0.87803674,0.67124027,0.37053418,-0.45549104,-0.4890647,0.6881532,0.6495497,0.535685,-0.80503774,0.42973304,0.5072987,0.4061022,-0.72803205]],"activation":"identity","dense_3_b":[[-0.055526532],[0.13907385],[-0.050069362]]},{"dense_4_W":[[0.043956995,0.018560354,0.78419465]],"dense_4_b":[[-0.034510687]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json new file mode 100644 index 0000000000..3cb6a37b14 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX5_2022.json @@ -0,0 +1 @@ +{"input_std":[[8.853577],[1.1593435],[0.49393934],[0.047530506],[1.1528559],[1.1569644],[1.1598135],[1.1245039],[1.0973833],[1.0626532],[1.0269637],[0.047361173],[0.047408417],[0.047455847],[0.047535572],[0.047536217],[0.04739956],[0.04713172]],"model_test_loss":0.017221078276634216,"input_size":18,"current_date_and_time":"2023-08-09_18-22-21","input_mean":[[23.515398],[0.012237509],[-0.0044900486],[-0.010730645],[0.013944725],[0.013308859],[0.012569497],[0.011769375],[0.010604365],[0.010843918],[0.011256869],[-0.0107458485],[-0.010734076],[-0.010720637],[-0.010731344],[-0.01076948],[-0.010765305],[-0.01082986]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.199587],[-0.25501987],[-0.5037064],[-0.23722672],[0.22343779],[0.14423445],[-0.07885718]],"dense_1_W":[[1.2625326,0.16327555,0.0066552805,0.44784018,-0.124741316,0.79189295,-0.37784576,0.21143824,-0.52783173,-0.20586084,0.23246923,0.1308419,0.11561832,-0.55449927,-0.11027749,-0.18869302,-0.2170536,0.08424656],[-0.006859232,-0.086538136,-0.03269977,0.13604829,0.24823508,-0.5691345,0.670277,0.040435724,-0.16860203,-0.41622674,0.25470176,0.02203289,-0.23012973,0.39989966,-0.47250885,-0.10986197,0.20646292,0.02149021],[1.3279617,0.25124303,-0.007813492,-0.72305727,0.06114258,-0.8571762,0.063125186,-0.25974143,0.4144009,0.60714114,-0.46617725,-0.2852775,-0.0355692,0.5701069,0.69028735,0.27851647,-0.26454824,0.07074926],[0.022198461,1.6731384,0.037180465,0.765974,0.030372338,-0.7625096,2.1497931,-1.2226309,-1.9869789,-0.91440254,0.9935744,-0.3478071,0.53434056,-0.08860992,-0.28544557,-0.29930937,-0.5889199,0.4349971],[0.2660301,-0.86187685,8.6956774e-5,-0.016676437,-0.3185729,-0.8080561,1.0541335,0.12288944,0.1756726,-0.14763017,-0.09342803,0.17633434,-0.24657024,-0.3275839,0.37692598,0.048297286,0.19601016,-0.20960684],[0.15503937,0.78893465,-0.0035333869,-0.0016546088,0.18449067,0.46749434,-0.7731415,0.33954102,-0.035273015,-0.3853616,0.23819815,0.34393597,-0.057135757,0.15562473,-0.3307375,-0.28002447,-0.14485608,0.3072072],[-0.002361901,-1.5429035,-5.8346395,0.50011724,0.42428496,0.7945255,0.49649864,0.34323424,-0.9758048,-0.9413602,0.64176863,-0.59547406,-0.009193582,-0.36598718,0.48848686,-0.27432454,0.047451578,0.28842512]],"activation":"σ"},{"dense_2_W":[[0.46865103,-0.60989743,-0.03747131,-0.39046776,-0.057409145,-0.39815053,-0.59903854],[0.3293413,0.5657211,0.58408237,0.09847331,0.6722225,-0.5966699,0.43323725],[-1.1938511,0.3152245,-0.7231345,0.36246085,0.17062272,-0.9542798,0.42241877],[0.95589864,-0.5171128,-0.20689346,-0.2149552,-0.17504925,1.4507052,-0.458539],[0.6998986,-0.5149185,-0.41500762,-0.34256452,-0.59194785,0.68115014,0.022985162],[-0.58739376,0.5298398,0.35696748,-0.09943707,1.0701959,-0.8042608,-0.25183183],[-1.7204717,-0.5559019,-0.9794375,-2.4412615,0.009480803,-0.2547261,0.2289718],[0.6462851,-0.7868944,-0.9317859,-0.62466663,-0.11116908,0.48139545,-0.1042982],[0.7837947,-0.31750438,-0.61143816,-0.53003997,-0.8487594,0.52839005,0.071558826],[-0.6952866,-1.0207022,-0.8329126,-0.23308934,-0.103428386,0.37906075,-0.95636684],[-0.4912487,0.16609176,0.38974765,0.5311249,0.8187408,-0.9927307,-0.1320584],[-0.50672543,0.5862622,-0.2999275,-0.0069663594,0.18914229,-1.3985909,0.35376993],[-0.8134264,0.55566525,0.6216377,0.7941298,0.6479907,-1.2260833,-0.31804174]],"activation":"σ","dense_2_b":[[-0.19038986],[-0.16041437],[-0.5408977],[0.30586013],[0.085234426],[-0.10838832],[0.22506814],[0.0007744643],[0.13522272],[0.03689445],[-0.13003486],[-0.27763245],[-0.092821054]]},{"dense_3_W":[[-0.65185815,0.54327095,0.10433931,-0.116812855,-0.55839425,0.6606599,-0.59668356,-0.1460392,-0.4181811,-0.8674938,0.51525503,-0.23707807,0.29755294],[-0.09864905,-0.65130895,-0.7366327,0.44178113,0.7440715,-0.18855122,0.5229587,0.648026,0.7389669,0.58856255,-0.29644322,-0.56690645,-0.47691458],[-0.028702423,-0.025029318,0.3560928,0.08559789,-0.5590178,-0.21502936,0.4283347,0.14829901,0.15673526,-0.36272648,-0.21479517,0.23683308,0.39158282]],"activation":"identity","dense_3_b":[[-0.08270337],[-0.04420589],[-0.00881405]]},{"dense_4_W":[[-0.259468,1.106187,0.007629875]],"dense_4_b":[[-0.03991197]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json new file mode 100644 index 0000000000..bda8ada35f --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9 2021.json @@ -0,0 +1 @@ +{"input_std":[[6.1377034],[1.0210788],[0.46911943],[0.04458394],[1.0146378],[1.0170907],[1.0187873],[0.99643576],[0.977885],[0.9539401],[0.9314358],[0.0443801],[0.044420015],[0.04446651],[0.04452825],[0.04450817],[0.04427827],[0.04390146]],"model_test_loss":0.016026578843593597,"input_size":18,"current_date_and_time":"2023-08-09_19-14-34","input_mean":[[26.721071],[0.05378143],[0.018124493],[-0.007393202],[0.048810303],[0.050282035],[0.052012227],[0.057080623],[0.05906103],[0.058861],[0.05875214],[-0.0075229136],[-0.0075009223],[-0.007483631],[-0.0074706767],[-0.0074925683],[-0.0075200107],[-0.0076175835]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.18089767],[0.49798125],[-0.24118638],[-2.1373975],[-0.16477053],[0.34568876],[-0.21016233]],"dense_1_W":[[0.074662894,-0.3669638,0.25222635,0.107843496,-0.10552656,-1.0399265,1.0163934,-0.48659247,-0.030600587,-0.11743266,0.14577629,-0.25742808,0.3170169,0.36954135,0.040227413,0.15968736,0.062263597,0.24831484],[0.08303395,-0.8697939,0.0030468423,0.15263641,0.107188724,-1.0068568,0.4416236,0.036292315,0.7619705,0.1695332,-0.57831824,-0.2111467,0.11940522,-0.041054823,0.35764664,-0.47026095,-0.069946416,0.27341142],[0.048043054,-0.31118855,-0.008299072,-0.11476858,0.33377898,-1.0105896,0.36259222,0.2396159,0.20328248,-0.12248921,-0.12638399,-0.4566413,0.09750506,0.07093791,0.55933607,0.010423586,0.10305094,-0.16882543],[-0.2943162,-1.6256222,0.0030186898,0.4355704,-0.11311622,-0.18757336,0.59179604,0.19876327,0.081539884,0.15316048,-0.29308975,-0.78554755,0.11605082,0.106179096,0.4265695,-0.16271093,0.005539031,0.02609059],[0.07329607,-0.8092628,0.25480765,0.29808077,-0.0061037876,0.42461434,-1.7734524,0.8508979,0.86776084,-0.23827028,-0.3394005,0.49403337,0.00061965705,-0.28957158,0.25209922,-0.109510385,0.030290708,0.40608874],[0.039265428,0.96887267,6.0339727,-0.10146958,-0.4268955,-0.99481356,-1.3445842,0.73430777,1.103279,1.2262536,-0.9347754,0.7603965,0.27957165,-0.72691447,0.079958566,0.21448162,-0.6384232,-0.037277497],[0.0016329347,0.16354942,0.002987302,-0.052555222,-0.22473752,-0.5058604,0.6229535,-0.047164608,-0.5693476,-0.26495168,0.29653648,-0.5010037,-0.11219094,0.25223202,0.52381283,0.6169986,0.023134451,-0.33158067]],"activation":"σ"},{"dense_2_W":[[-0.7412992,-0.7675937,-0.4397283,0.31320858,0.5621121,0.53991586,-0.35282382],[0.39020097,0.14299431,0.11215057,0.1305876,-0.9580759,-0.42531374,1.1606607],[-0.68442714,-0.5091107,-0.2732925,0.038994852,0.16016693,0.084352866,-0.40752736],[-0.3638797,-0.5586708,0.12934496,-0.89443725,0.3385314,-0.49931,-0.49778506],[0.15667213,0.2869896,0.11566534,0.8353921,-0.8303651,-0.67806315,0.37547386],[-0.44675717,-0.89146745,-0.51320916,-0.8497574,0.53292394,-0.22540878,0.27044648],[0.31874314,0.7925137,0.691313,0.43609503,-1.0456865,-0.121448435,0.54489106],[0.70710474,0.8615981,0.37050986,0.17309327,-1.0366682,-0.033383362,0.64695203],[-0.56060874,-0.75052696,-0.23543693,-0.5132341,0.22080141,0.1704808,0.16872974],[1.0095209,0.8009594,0.5537545,0.8833569,-1.1999682,0.31028512,0.18520752],[-0.9428297,-0.37537527,-0.59236115,0.33072037,0.26682293,0.41685763,-0.0841698],[-0.24776414,-0.16537917,-0.06624358,-0.47923082,-0.06637364,0.113684684,-0.5439529],[-0.83423465,0.46298993,-0.27318522,0.014554697,-0.37881574,-0.9102047,-0.4330378]],"activation":"σ","dense_2_b":[[-0.052797712],[-0.087834224],[0.14800552],[0.15060428],[-0.11083593],[0.17317224],[-0.16887216],[-0.27164057],[0.14738622],[-0.7614823],[0.007635959],[0.1378371],[-0.66434515]]},{"dense_3_W":[[0.36896288,-0.490786,0.16599391,0.47720614,-0.30545673,0.7379879,0.013581132,-0.32646582,0.558891,0.18879382,-0.37756246,-0.1875126,-0.124775544],[0.18666591,0.5846334,-0.10136687,-0.7394393,-0.2828246,-0.08108596,0.39981124,0.20680344,-0.37288138,0.27750582,-0.11473721,-0.57098895,0.4266538],[0.7361726,-0.58514285,0.7204545,0.106599934,-0.59268904,0.5647647,-0.45099103,-0.6198126,0.68592227,-0.25746143,0.43516034,0.27023137,0.36228538]],"activation":"identity","dense_3_b":[[-0.09970351],[-0.0810631],[0.07066309]]},{"dense_4_W":[[0.09306378,-0.5163019,0.9577329]],"dense_4_b":[[0.07198106]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json new file mode 100644 index 0000000000..1464ff4dfa --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/MAZDA_CX9.json @@ -0,0 +1 @@ +{"test_dict":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.68026423,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6623511,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.7894848,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.45772332,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.033177804,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8652633,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.72988725,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.33481875,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.6028637,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.6341075,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.35337192,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5604581,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.49662757,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8983778,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8291683,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.21059237,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.3554733,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.61752445,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.008872215,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.82794446,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.722765,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.58601475,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.6585865,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.3415729,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7593987,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2533843,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.36514503,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9955126,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9061998,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5863995,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.70988524,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9357347,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.40801805,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.7080684,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8582784,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.051181857,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.32222438,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.68954885,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.81613845,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5503567,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.95135486,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.38768044,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.121791795,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.60388947,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.58747494,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.460676,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.07276039,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.7868223,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.45431036,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8425848,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.09901318,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.26556718,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.51706076,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.22000633,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.08331953,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.4225998,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.20729552,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.21171938,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8852378,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9542402,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.2908706,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.33962357,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.587801,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.40549684,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.13055985,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.93948686,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1222087,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.2840799,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.41804174,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8638405,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.3479214,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1160183,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.4250751,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.37797537,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.74481004,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0012709,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5549363,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.013350483,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.59705853,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.32066464,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1208482},"input_std":[[4.758569],[0.7551621],[1.1411846],[0.024509063],[0.7418195],[0.74795926],[0.75277853],[0.7348531],[0.7328033],[0.7360365],[0.73419976],[0.024163457],[0.02427521],[0.024369553],[0.024361141],[0.024596939],[0.02470201],[0.024847152]],"model_test_loss":0.011168484576046467,"input_size":18,"current_date_and_time":"2023-07-16_15-31-09","input_mean":[[24.214306],[-0.068722084],[0.13368857],[-0.012954545],[-0.0908967],[-0.08666857],[-0.07849512],[-0.042653743],[-0.027166469],[-0.009568535],[-0.001553267],[-0.013330359],[-0.013247636],[-0.013182787],[-0.013015977],[-0.013002344],[-0.012768261],[-0.012813394]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"test_dict_zero_bias":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.63145995,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6819694,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8772025,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.55443954,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.024535596,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7776458,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.82169604,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.32655615,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.52833325,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.60248363,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.2712959,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.61627734,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.57438755,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.8270569,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.89278406,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2993996,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.39583528,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.6871477,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.0012517273,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9093442,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.70719516,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.61919284,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.6058605,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.38305718,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7314606,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.31522623,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.31417722,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.94576484,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8632306,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.50871336,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.66870224,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0360692,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.3741793,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.7720997,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7928454,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.09808446,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.31983182,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.63806283,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.88232887,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.60230434,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.874546,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.34882647,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.10547972,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.52212185,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.51409614,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.55887365,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.08741653,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8739745,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.42246366,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8930687,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.060002506,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.3024186,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.59369165,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.28634965,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.12954244,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.48957476,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.29448348,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.23015675,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.81391317,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0366076,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.26818705,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.34778464,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6359127,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.3900602,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.09257127,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0405408,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0238359,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.27612492,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.38687146,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.77963734,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.26859418,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0187957,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.4089293,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.38123727,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.83644295,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9439602,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.60338587,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.04257779,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.5176249,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.38916177,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0254881},"layers":[{"dense_1_b":[[-0.39623764],[0.14138116],[-0.2588534],[0.44002953],[0.22150832],[-1.471221],[1.091665]],"dense_1_W":[[-1.3643335,-0.39512777,0.49481088,-0.160357,-0.11053611,0.5127148,1.944503,-0.519241,-0.1717221,-2.2519088,0.85069805,0.16777276,0.046915065,0.07825442,-0.19920808,-0.093078785,0.22527768,-0.015349518],[0.07033132,-1.2395316,-0.015185883,0.049182996,-0.8706203,0.08936256,1.192001,0.73432046,-1.0403839,-0.99523735,0.18716313,-0.46670943,0.36377695,-0.06476297,0.29031602,-0.046463974,-0.0934093,-0.027420614],[0.036429238,0.25500375,-0.050834823,0.007870147,0.013165975,-0.2152336,-0.50505584,-0.57315665,0.43266997,0.2960198,-0.2809415,-0.16854034,-0.22267757,0.38213494,-0.32983685,0.22851394,-0.1784995,0.29428333],[0.031305227,-1.7722394,0.0051150094,-0.2393632,-0.429712,0.9946768,0.57891685,0.84168047,0.44816926,-1.2334055,0.5619671,0.3394732,-0.09925409,0.1931788,-0.7158236,-0.64525104,-0.15853617,0.7985537],[1.4468489,-0.79758126,-0.5674579,-0.089146346,0.15503111,-0.050696775,-0.41808343,-0.9180651,1.1887319,0.7490674,0.2818292,-0.05504427,0.09847831,0.24017516,-0.100371055,-0.26661357,-0.015151299,0.14749247],[-0.011997275,-0.01629248,0.0023960476,0.46332273,1.1773943,0.047555875,-1.0831845,-1.1777227,0.50374424,0.94301,-0.43155685,1.6632808,1.0289724,1.3457992,-1.3981099,0.21298541,-1.3651799,0.4583753],[-0.012068792,0.6946306,7.008868,-0.38002566,-0.8078394,-1.8026941,-1.6721241,2.1546853,0.7563132,0.12844934,0.21244754,0.028632099,-0.13106985,-0.14665121,0.10708859,1.0625329,-0.18022399,-0.35517347]],"activation":"σ"},{"dense_2_W":[[-0.10200387,-0.76644456,-0.30197436,0.88119465,0.039803542,0.35588643,-0.11579556],[-0.4315598,-0.18163718,-0.8021966,0.3789305,-0.60908353,0.2092475,-0.15666024],[0.24648495,0.5248265,1.1183228,-0.54292357,0.37333378,-0.621473,-0.2185636],[-0.44479766,0.061370973,-0.80736274,-0.06727713,-0.03573045,0.4296817,-0.6225945],[0.7770457,0.870017,0.6628652,-1.3054526,-0.24000858,-0.5467027,-0.63892704],[0.6606621,0.5903391,0.74629235,-0.30811584,0.9074003,-0.25882754,-0.49689066],[-0.61885303,-0.27397686,-0.32425815,0.5231217,0.0016664385,0.029230833,0.36123073],[0.116919406,-0.080033116,-0.80068344,0.17488338,-0.59637207,-0.25136593,-0.052427128],[-0.6091415,0.036435083,-0.31513107,1.0636747,-0.8583667,-0.050638534,-0.42107514],[-0.688126,-0.28585485,-0.74282986,0.07060043,-0.11225189,0.10933011,0.1853165],[-0.02946559,0.42606872,0.8841502,-0.08186191,0.5265807,-0.48210683,-0.32932183],[-0.103848316,-0.44215712,-0.32014853,0.7133248,-0.46932107,-0.47233966,0.028100768],[0.2052363,-0.19803643,0.61784434,-0.6395137,0.54827636,0.16492388,-0.25312033]],"activation":"σ","dense_2_b":[[-0.04292812],[-0.0074691507],[0.02623448],[-0.12690178],[-0.127359],[-0.0627155],[0.03455701],[-0.020989824],[0.17505483],[-0.009170552],[0.047454033],[-0.009859283],[-0.08406351]]},{"dense_3_W":[[-0.101136126,0.2837724,0.069948,-0.07415262,0.34190154,0.24395382,-0.19586,0.41830686,-0.3893048,-0.19336349,-0.14812821,-0.107784435,0.22945514],[0.32129276,-0.047892366,-0.15199028,0.40463585,-0.2276267,-0.27818957,0.14533494,0.21502836,-0.4884599,0.10375174,-0.41882825,0.47495985,-0.23964486],[-0.33068216,-0.40646386,0.3537997,-0.28240827,0.695928,0.32007056,-0.27887765,-0.47764063,-0.44847566,-0.5544643,0.4358929,-0.68283004,0.16520141]],"activation":"identity","dense_3_b":[[0.017270878],[-0.049352214],[0.051928796]]},{"dense_4_W":[[-0.18483475,0.37186217,-0.97547895]],"dense_4_b":[[-0.04841734]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json new file mode 100644 index 0000000000..4d77cc0389 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_1500_5TH_GEN.json @@ -0,0 +1 @@ +{"input_std":[[7.8681383],[1.2917701],[0.42320544],[0.051469278],[1.2847253],[1.2883313],[1.2900517],[1.2667522],[1.242907],[1.2112364],[1.176482],[0.051301446],[0.051339414],[0.051366985],[0.05125917],[0.05098003],[0.05050668],[0.04989228]],"model_test_loss":0.022552745416760445,"input_size":18,"current_date_and_time":"2023-08-10_00-52-59","input_mean":[[25.508078],[0.034453202],[0.01726827],[0.00056943524],[0.031399224],[0.032966],[0.034444243],[0.04235863],[0.049242016],[0.057398297],[0.06200239],[0.0005415381],[0.000549214],[0.00055187126],[0.00063792604],[0.00062618323],[0.00070369913],[0.0007498945]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.107602455],[0.2592419],[-0.1010373],[0.34598154],[0.8561106],[-0.15246718],[0.9970168]],"dense_1_W":[[0.0071956124,-0.8389715,0.0016946977,0.37401447,-0.27382085,-0.5530695,0.5881284,0.12836976,-0.094520785,-0.060450573,-0.028743897,-0.04453258,-0.09910858,-0.051995493,0.017620616,-0.013560951,0.18469654,-0.013240006],[1.3669219,-0.2384396,0.08245142,0.14269358,0.22758602,-0.093947925,0.5673605,-0.045786478,0.036916874,0.38647193,-0.30818498,-0.4555334,0.29512686,-0.24807432,0.4348693,-0.34444955,-0.11027862,0.016942881],[0.013133192,-1.1178136,0.034996957,0.48028773,0.09731058,-0.693922,0.49429983,0.01820859,-0.037673093,-0.13616005,0.02270395,-0.69734114,-0.07626221,0.2784788,0.007214682,0.07223958,-0.011835337,-0.070404634],[0.0054024686,0.52874875,3.438241,-0.21533473,-2.068417,-1.530317,-2.6102667,-1.1109601,2.2420053,3.6071155,1.1157349,0.3809812,0.5365094,-0.52533704,0.02788547,0.4045346,0.24486302,-1.008144],[1.682156,-0.052193947,-0.09770653,-0.45150465,0.2333314,-0.5347695,0.09825678,-0.01992122,-0.1994097,0.116743915,0.16566196,0.20611681,0.6852969,-0.45614037,0.27821264,0.09751711,-0.02198396,0.04035941],[-0.002443684,-0.78855264,-0.014614094,-0.026071582,-0.10583151,-0.38199013,1.0572444,-0.18948583,-0.35938174,0.013804459,0.15949139,-0.7269957,-0.20543943,0.52785945,0.2962705,0.26196185,0.21384726,-0.39327204],[1.5940213,0.11492236,0.090780675,-0.32562405,-0.034105282,0.53610796,-0.4663451,0.38666242,-0.17008422,0.10295398,-0.2042109,0.31005463,-0.28528133,-0.21527892,0.22701246,0.018739212,-0.024669824,-0.04890493]],"activation":"σ"},{"dense_2_W":[[0.6139993,0.3757347,-0.1356616,0.085909925,-0.12511243,0.15788122,-0.031210706],[0.4353305,0.18801172,0.12204481,-0.118660524,0.31724608,0.7373148,-0.5507885],[-1.3431091,0.006327765,-0.48985648,1.2948128,-0.1034634,-0.6535869,1.5181615],[-0.89554805,-0.0707852,-0.38398325,-0.99453413,0.23394457,-1.3053,0.70568514],[-1.060718,-0.08779857,-0.34332564,0.93365616,-1.0663359,-1.5535986,0.9410223],[0.3106728,0.011034138,0.2690925,0.20874923,0.3430892,0.7928498,-0.7562942],[-0.9156255,-0.59965265,-0.23466443,1.0020962,-1.8364218,-1.0228359,1.0616008],[-0.6956375,-0.44040835,-1.0947623,0.5968099,-0.049048502,-1.2266653,1.1614286],[0.3183038,-0.35872775,0.13763095,-0.28848255,-0.050387893,0.39608815,-0.54269797],[0.5095539,-0.24931525,0.40140435,-0.27532217,0.13700272,0.57273823,-0.6925308],[-0.32013652,-3.1370046,-2.7840195,1.34559,-0.84404,-0.6845122,-0.5461476],[-0.72196037,0.038392793,0.057249792,-0.44615316,-0.0024790815,-1.1388366,0.36243963],[0.67724824,0.28425425,0.12925239,-0.22140531,0.5270677,0.15986088,-0.1314976]],"activation":"σ","dense_2_b":[[-0.14464946],[-0.15859996],[0.65735745],[0.28288272],[0.48416847],[-0.120317705],[0.17381315],[1.3373141],[-0.15882145],[-0.21813588],[1.288298],[-0.09495147],[-0.11485835]]},{"dense_3_W":[[0.52467114,0.573881,-0.37257165,-0.2885695,-0.73502827,0.5044393,-0.35882697,-0.32937768,0.40931723,0.33977678,-0.3444813,0.08750891,0.54127914],[0.0466505,0.44103855,0.41321534,0.5304071,-0.15150255,-0.293208,-0.13094401,0.05617865,-0.2815031,-0.25879386,0.09075154,0.71288633,-0.43692803],[-0.40456718,0.20321198,0.27640694,0.09131404,-0.27206296,-0.24663389,-0.60239804,-0.46262908,-0.07054595,-0.2889505,-0.20886894,-0.095937446,-0.075776964]],"activation":"identity","dense_3_b":[[-0.1063788],[0.09727621],[-0.08167072]]},{"dense_4_W":[[-1.0752603,0.4178708,-0.3472837]],"dense_4_b":[[0.10501918]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json b/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json new file mode 100644 index 0000000000..0b9abe7fb6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/RAM_HD_5TH_GEN.json @@ -0,0 +1 @@ +{"input_std":[[6.5132856],[1.3632272],[1.5413244],[0.03303396],[1.3259029],[1.3417274],[1.3554335],[1.3285728],[1.3114035],[1.2910824],[1.2723991],[0.03297938],[0.03299731],[0.033014063],[0.033058062],[0.033087354],[0.033028472],[0.032748375]],"model_test_loss":0.020962899550795555,"input_size":18,"current_date_and_time":"2023-09-02_21-03-03","input_mean":[[26.374321],[0.24099204],[0.0014719056],[-0.017563006],[0.24074426],[0.24266605],[0.2428761],[0.2323719],[0.23110531],[0.23507003],[0.24088627],[-0.017492866],[-0.01751848],[-0.017543415],[-0.01748686],[-0.01742368],[-0.017475272],[-0.01757139]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.079944834],[-0.3598381],[0.09434822],[-1.3233447],[0.1130735],[-0.45763284],[-0.6268566]],"dense_1_W":[[-0.073462725,-3.7294142,0.008516538,-0.1984018,0.6034948,1.8619602,2.1633458,-1.9060298,0.40978914,-0.37825182,0.611484,-0.36018258,0.27376932,0.3118703,0.036994077,0.21737134,-0.12771696,-0.040260702],[-0.20176645,0.57531285,-0.0084412275,-0.17881922,0.9809269,-0.16568676,-0.58166283,-0.1486564,0.70059836,-0.29893303,0.21570963,0.3508427,-0.3873581,0.06504418,-0.021596037,0.23897065,-0.22310819,0.10423835],[-0.06450743,-0.7734916,-7.4385157,0.34980673,2.380512,3.2428308,3.075309,-3.6599858,-2.5296397,-0.5446167,-0.94137996,-0.59157187,-0.07057616,0.11925076,0.08353299,0.38889635,-0.23567261,-0.1015343],[-0.28985357,-1.5797744,0.0060979226,-0.031419355,-0.400295,0.3806542,0.11740358,-0.0064864187,-0.12764077,-0.04428382,-0.07560065,0.17292799,0.12330137,-0.27197468,0.29182738,-0.2540429,0.13684034,-0.04889033],[-0.07832161,2.1902764,0.030133046,-0.30596706,-0.7210498,0.027130641,0.6432982,-0.046274744,-0.5472184,0.70929205,-0.24650635,0.53280306,-0.48029587,0.12250029,-0.11553079,-0.13253216,-0.029158924,0.18207467],[-2.8597453,-0.43466172,-0.18268725,-0.060400605,0.28060955,-0.18074062,-0.6875857,-0.38406757,-0.37214103,-0.9286758,-0.38446707,0.15134443,0.054654,0.48821846,-0.004988523,0.06868294,-0.033809625,-0.047231436],[-0.0017858031,-0.6662176,0.0051888903,-0.06294718,-0.90392506,-0.8541502,-0.16361657,0.08513459,-0.07875049,0.0790174,-0.13931915,0.0140639525,0.017838055,0.1625987,0.25675306,0.18861753,-0.18611054,-0.059609663]],"activation":"σ"},{"dense_2_W":[[-0.6968983,0.27608687,0.10406441,-0.024237338,-0.42272064,-0.013714595,-0.54531485],[-0.67445093,0.32921025,0.36817434,0.06642965,-0.042997025,-0.32730803,-0.5889611],[-0.340392,-0.03912806,0.46399808,-0.4680018,-0.49668282,0.16590515,0.21437873],[-0.46547934,0.07344197,-0.12238069,-0.0253223,0.49247265,-0.25569054,-0.57428217],[0.41493058,-0.27931592,-0.089011,0.08059608,-0.5250433,0.09186349,0.07772292],[-0.3727222,-0.15556182,0.3317168,-0.14912905,-0.17529897,0.48200855,0.6279147],[-0.31705967,0.10656132,0.34339988,-0.63882726,0.055984847,0.45991278,-0.6692897],[0.15874985,-0.119392134,-0.19742353,-0.60957354,0.18357219,0.28318337,-0.25417072],[-0.37113652,0.43916598,0.27193624,-0.520228,-0.2144683,0.3655652,-0.53570765],[0.83260417,-1.699712,2.6747808,1.3270547,-0.96657324,0.093039535,-0.45796528],[0.45241207,0.39900452,-0.50378394,-0.20505324,0.45373067,-0.19082053,-0.22071704],[-0.5270052,0.45971948,0.3313946,-0.29207435,0.1978061,0.19034018,-0.23600237],[0.9750541,-0.7961233,-0.0005789574,1.0066968,-0.9369118,0.042760722,0.18730567]],"activation":"σ","dense_2_b":[[-0.20384558],[-0.20811413],[-0.0037139736],[0.023454173],[-0.015772115],[-0.0065609645],[0.0068738465],[0.009471401],[0.003985857],[-0.9329477],[0.010725975],[-0.013339677],[-0.2815146]]},{"dense_3_W":[[-0.4011974,-0.33610415,0.13164108,0.33895674,0.06529623,-0.1580419,0.26291764,-0.24552977,-0.3933592,0.13941231,-0.35621086,0.5489147,-0.086336456],[0.1649218,-0.31881985,-0.48512995,0.2596072,-0.5807467,-0.19014847,0.5032025,-0.22611593,0.22070079,-0.30926946,0.35143164,0.12860067,0.1903238],[0.17895938,0.46517286,0.3067372,-0.06601107,-0.3844143,-0.499728,0.46086124,0.58410454,0.52920264,-0.4394692,0.23419406,0.01974897,-0.5022407]],"activation":"identity","dense_3_b":[[-0.0035552178],[-0.0043843286],[-0.0047028256]]},{"dense_4_W":[[0.80738455,0.86131907,1.2868857]],"dense_4_b":[[-0.0045010163]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json new file mode 100644 index 0000000000..b4ce6b0baa --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KAROQ_MK1.json @@ -0,0 +1 @@ +{"test_dict":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5380118,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5668384,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.49744788,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1069546,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.022589128,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.87991786,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3465033,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.35901418,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.74537796,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0467105,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.40654802,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.22541186,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.39508894,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.5349423,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3032231,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.09337339,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.43609616,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.187037,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.03238472,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3256767,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2560252,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.269817,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.90431225,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.39230934,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.3635288,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.9773381,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.329567,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3380291,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.2777746,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.82472456,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7643237,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3661834,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.849533,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.1835219,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2257897,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.032864716,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.32149622,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.88784707,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.523679,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.157843,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.81264627,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.847208,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.5404857,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2102542,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2051469,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.146302,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.4661444,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.49748513,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0818156,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3345778,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.347531,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.8679907,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.29394773,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.09643532,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.19364843,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1680533,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.17557147,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.21844473,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.50774,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3670707,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.40873116,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.35878894,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.60975885,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.55742276,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.505599,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3681715,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.5387529,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.35331953,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.60687315,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.86639714,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.27491,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.5394888,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.7878668,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5126742,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3503757,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.439768,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5785763,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.010508742,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2693633,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.8410233,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.5314865},"input_std":[[7.989791],[0.7320975],[0.5846287],[0.035815567],[0.7283375],[0.7326722],[0.7346924],[0.7248922],[0.73135966],[0.7329609],[0.7217711],[0.03612053],[0.036042064],[0.035952937],[0.035485364],[0.03517163],[0.034833923],[0.034284007]],"model_test_loss":0.008391334675252438,"input_size":18,"current_date_and_time":"2023-07-16_20-00-17","input_mean":[[20.655447],[0.024584128],[-0.044770714],[-0.0072627976],[0.031237675],[0.029807081],[0.028027987],[0.009196148],[0.008076342],[-0.0015783679],[-0.0010444114],[-0.0072330763],[-0.0072172945],[-0.0072000716],[-0.007262945],[-0.0073047676],[-0.007441227],[-0.0077096256]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"test_dict_zero_bias":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.39948598,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6295606,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.65359616,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.2675315,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.061416015,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.76222944,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.4814665,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.33280456,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5849962,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0883316,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.20698664,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.33144438,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5527949,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.402524,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1805307,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.094053596,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5350164,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.342611,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.12336916,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.4533029,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2709537,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.2863967,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.85154873,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.55498785,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2663321,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.8637229,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.23138924,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3381034,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3081448,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.69880867,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7338842,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.5125997,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.74419975,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3198262,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.1027677,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.11119664,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.21705788,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.8385861,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5986935,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0079983,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.70014787,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.80401677,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.49810106,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.066942,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0737326,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.2979757,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.56554705,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6396831,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.9987763,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3704159,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.17107952,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.89600575,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.48579958,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.18861425,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.36363924,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.3085387,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.048344463,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.3228795,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.3889711,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.5090332,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.35560045,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.45501107,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.70604444,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.50033605,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.37736052,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.5132567,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.4097024,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.40884608,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.5351974,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7473452,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.13379052,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.409246,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.7862364,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.5806613,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.5019659,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.348442,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.69009113,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.08894949,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.1496372,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.9766548,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.4074421},"layers":[{"dense_1_b":[[1.2601088],[0.50795346],[-0.32973284],[-0.4278964],[-1.3286078],[0.99765503],[0.4339966]],"dense_1_W":[[0.39427435,1.5991782,0.0038050977,0.05548223,-0.04591027,-0.2224138,-0.627583,1.6541553,-0.17021364,0.0030925316,-0.277334,0.016327249,0.38390467,-0.043327343,-0.3199062,-0.24170461,-0.03311468,0.21610846],[2.0976179,-0.39388067,-0.02243466,-0.058260668,1.7147076,0.66427886,-0.5170263,-0.5367035,-0.5689552,0.20077214,0.29552126,-0.1721181,-0.46311033,-0.34615812,-0.0888081,-0.18715298,0.16055387,-0.35338402],[-1.5097122,0.621122,-0.105104305,-0.18648383,1.1042429,0.77002937,-0.6538228,-0.44171673,-1.0661969,-0.14405254,-0.44617876,0.24370627,-0.19782393,0.19933222,-0.35169846,0.094613805,0.40841854,-0.25420657],[-0.009321846,1.7888899,5.6288323,-0.05019591,-1.6935351,-1.3057272,-1.5961826,1.3134946,0.88433415,1.1306716,-0.14263214,-0.25278306,0.2156381,-0.15768535,0.17491388,0.10185023,-0.057640597,-0.037920576],[-0.6545767,-0.7725577,-0.043511603,0.39719597,0.44334525,-0.29454172,1.1796441,-0.43937585,-0.008846232,0.3591864,-0.6636783,-0.19979312,0.10855517,0.07740657,-0.16985726,-0.3615132,0.19928159,0.004342849],[0.43667847,-1.4340503,0.0061377757,0.02465778,-0.0052791275,-0.21163116,0.3254924,-0.83517593,0.3075678,-0.17314681,0.21212056,-0.5718453,0.25654393,0.030458353,0.27716112,0.18619251,-0.166307,-0.07792453],[0.6207286,-0.74188787,0.0014747722,0.19179606,0.21235986,0.023669226,1.3397173,-1.0746361,-0.6413778,0.07621638,0.2610392,-0.14456956,0.40803775,-0.25941938,0.1692598,-0.019315228,0.32499546,-0.2848976]],"activation":"σ"},{"dense_2_W":[[0.5846105,-1.1216323,0.012021069,0.519304,-1.2193648,-1.2420696,-0.9293579],[0.31864703,-0.029731255,0.39742234,0.43330926,-0.8345377,-0.45988193,-0.52471954],[-0.48068455,-0.14217594,-0.052064557,-0.05625134,0.531164,0.07339243,0.5302106],[-0.046448767,0.46001384,0.3322486,0.16847979,-0.012636936,-0.58880013,-0.039295547],[0.12264031,1.0059353,-0.25489268,-1.3256443,-1.3072578,-1.6475178,-0.24379867],[0.31735018,-0.26441798,-0.47050726,-0.44442534,0.295501,0.37262294,-0.3538891],[-0.16229963,-0.6157792,-0.3740346,0.06780694,0.21299857,-0.38519585,-0.64304954],[-0.57181144,0.0069005713,0.3935489,-0.05499202,0.48840258,0.091699615,-0.16876978],[-0.5405887,0.3622075,-0.65014505,-0.45285606,-0.744763,-0.6536307,-0.75167125],[-0.78169376,-0.41184205,-0.33792898,-0.32395944,-0.017056243,0.4648398,0.5686303],[0.75694907,-0.031489003,0.5235601,-0.03767089,-1.0404472,-0.4519171,-0.42058164],[0.7886114,0.5415332,0.15376541,0.5960243,-0.46606156,-0.8066629,-0.5520896],[-0.71171945,-0.42530975,-0.26570597,-0.23765114,0.702833,0.00345897,0.07370162]],"activation":"σ","dense_2_b":[[0.25844958],[-0.08529898],[-0.009525728],[-0.06614882],[-0.35542876],[0.0096092895],[-0.21220195],[-0.0058748396],[-0.17085731],[0.029518519],[-0.0972837],[0.04010498],[-0.0016747463]]},{"dense_3_W":[[-0.18374792,-0.50147384,-0.49204373,-0.5885765,0.39067307,0.540897,0.4194,0.56657135,0.32507578,0.05896129,-0.2124288,0.12981957,0.57857627],[-0.47317266,-0.6505695,0.60085654,-0.061350014,-0.4325399,-0.13409662,-0.28602767,-0.07301156,-0.21435276,0.73678,-0.27858484,-0.6291994,0.7327412],[-0.33367744,0.4530852,0.011034279,-0.47386295,-0.26150367,0.42310083,0.4337839,0.22710037,-0.19489768,0.16766186,0.013165514,0.4446457,0.35002133]],"activation":"identity","dense_3_b":[[0.026227264],[0.040914938],[0.029111717]]},{"dense_4_W":[[-0.19691564,-1.2166661,-0.37322426]],"dense_4_b":[[-0.03747132]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json new file mode 100644 index 0000000000..a4416943e7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_KODIAQ_MK1.json @@ -0,0 +1 @@ +{"input_std":[[8.8827505],[0.8142013],[0.43200606],[0.0335122],[0.8031897],[0.80755675],[0.8117341],[0.7966046],[0.78498024],[0.76929677],[0.7570983],[0.033453178],[0.033477545],[0.033494856],[0.033401415],[0.033346288],[0.033206854],[0.033045664]],"model_test_loss":0.014859683811664581,"input_size":18,"current_date_and_time":"2023-08-10_08-29-12","input_mean":[[21.130602],[-0.03657342],[-0.007161284],[-0.014905003],[-0.031632286],[-0.032585967],[-0.03383271],[-0.03620179],[-0.033439096],[-0.028820572],[-0.025867859],[-0.014983235],[-0.014939225],[-0.014891624],[-0.014817177],[-0.014846561],[-0.014888054],[-0.015024225]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.058770206],[-0.4304619],[-0.95764273],[0.9789649],[0.3071246],[-1.0843322],[0.29053277]],"dense_1_W":[[1.1150838,0.26620921,0.25107178,0.17738831,-0.023969606,-0.25568375,0.642087,-0.07235758,0.50214267,0.158553,-0.09377773,-0.22190028,-0.2522553,0.41755903,-0.18087326,0.00043216505,0.30621696,-0.21445055],[0.015974922,-0.84892243,-5.3681054,-0.050087623,-0.2124193,-0.42669013,-0.114291534,-0.23167059,0.030389197,0.10423019,0.94438344,-0.23461752,-0.038574662,0.0118201375,0.1480159,0.12792908,-0.10750315,0.12776713],[-0.5820234,-0.46031782,-0.16132316,-0.0877754,0.45185134,-1.3221487,0.9612837,-0.026405975,-0.2516217,-0.06304958,-0.007870968,-0.45073366,0.26110536,0.3053481,0.032379672,0.058629666,-0.16963068,0.04947794],[0.55877084,0.8845751,0.083844095,-0.5641011,-0.32626018,0.87646186,0.018245557,0.0067298566,0.19446261,-0.108108655,-0.006403946,0.045923747,-0.2118138,0.297809,0.30262896,-0.26306453,0.10386135,0.05455493],[1.2901627,-0.3996759,-0.28787684,0.18365255,0.053760547,0.09131756,-0.5133632,0.09711644,-0.6057078,-0.13895018,0.07327148,0.005111278,-0.07828046,-0.12552834,0.103638284,-0.18598253,0.030758386,0.011194429],[-0.4342015,0.51031667,0.1613037,-0.030471211,-0.47826028,0.91528296,-0.59053975,0.06803067,0.2916587,0.011835373,-0.01411119,0.39738727,-0.3548122,0.093028545,-0.5990489,0.45427456,0.20879458,-0.16441117],[0.24265775,-0.87913877,-0.073302165,0.13811685,0.17514472,-0.79730994,0.32166055,-0.056882083,-0.15787257,-0.026820026,0.09571887,-0.09280119,-0.31957984,0.5578229,-0.14536849,0.12825605,0.16227205,-0.22222283]],"activation":"σ"},{"dense_2_W":[[0.4287232,0.05141774,0.08859513,0.16694608,-0.25920102,-0.2550965,0.045888633],[-0.9586875,0.465085,-1.0644909,0.51924497,0.9285218,0.19630893,-0.8210365],[0.9428464,1.0110649,0.0912787,0.45720592,0.062315438,0.06551054,0.21646087],[-0.07554614,-0.20435923,1.3854393,-0.21705866,0.371234,-0.29250124,0.62470865],[-1.2622341,-2.4971948,0.16009766,-0.7064093,-1.3925549,0.670143,-0.65157413],[-0.2641713,0.1407864,-0.7451972,0.05855014,0.46847665,0.5723797,-0.2294421],[-0.2798032,-0.28557223,-0.9484105,0.7195964,0.5352625,1.0608548,-0.7886381],[0.85884315,0.05392705,0.63131255,-0.55358535,-0.62303364,-0.9995628,0.95493674],[-0.25178987,-0.46490377,-0.7359025,0.15180402,0.27750358,1.2637253,-1.2951062],[-0.16450088,-1.0085304,-0.35299447,-0.53890646,-0.97189784,0.22255774,-0.34916818],[0.017366037,-0.47484067,-0.9362656,0.73510003,0.57900065,1.098403,-0.34750253],[1.0237606,1.1220717,0.5213622,0.46244594,0.1062727,-0.8956484,0.4866493],[-0.54411316,-0.14556162,-0.49516523,-0.41195434,-0.012445791,0.29190034,0.08672975]],"activation":"σ","dense_2_b":[[-0.14722908],[0.09051571],[0.0073402002],[0.049312294],[-0.10615275],[-0.09993395],[0.14013591],[-0.09219207],[-0.04097555],[-0.44420165],[0.23860474],[0.12013257],[-0.11851125]]},{"dense_3_W":[[0.012701052,-0.76359975,-0.11508211,0.8544662,-0.78156996,-0.3141182,-0.53640413,0.8538724,-0.2971632,-0.16812785,-0.5316125,0.75913155,-0.26657495],[0.2436656,-0.53503543,-0.0021990442,0.45916784,-0.1381139,0.4441993,-0.05345697,-0.33151543,0.0037798227,-0.5038917,-0.15709756,0.02627418,0.5737324],[0.004380816,-0.7665436,0.4899415,0.62682587,-0.6219003,-0.4759317,-0.62745434,0.6913393,-0.47453716,0.23334874,-0.62208974,0.22364703,-0.43715024]],"activation":"identity","dense_3_b":[[0.13937238],[-0.015101592],[0.007283584]]},{"dense_4_W":[[-0.5961717,-0.32134253,-0.7058984]],"dense_4_b":[[0.008483538]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json new file mode 100644 index 0000000000..4f65316dce --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_OCTAVIA_MK3.json @@ -0,0 +1 @@ +{"input_std":[[9.094625],[0.9343503],[0.47275993],[0.039587528],[0.91534966],[0.92308986],[0.92961305],[0.9121938],[0.894315],[0.8712891],[0.84302557],[0.039629184],[0.03963656],[0.039634563],[0.039580777],[0.03957161],[0.039473023],[0.039480753]],"model_test_loss":0.010150332003831863,"input_size":18,"current_date_and_time":"2023-08-10_11-03-32","input_mean":[[21.930943],[-0.009137672],[0.004150357],[0.006063881],[-0.012747505],[-0.012902961],[-0.012921325],[-0.0107959015],[-0.009959326],[-0.007661503],[-0.0022189163],[0.005970253],[0.0059734355],[0.005978737],[0.0060841083],[0.0061559486],[0.006342566],[0.006470583]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.0016042],[0.30121937],[0.5243282],[-0.37925154],[0.09780045],[-1.280653],[0.939577]],"dense_1_W":[[1.9456844,-0.23871988,-0.00096057716,-0.120664135,0.6110457,0.9801692,-0.49786648,-0.3335355,-0.16192155,0.2149353,0.18063189,-0.060477342,0.32169268,-0.21911122,-0.31224453,-0.06690952,-0.348577,0.2574717],[0.8044473,0.40910536,-0.00077739207,-0.1332547,-0.44118187,0.09815779,-1.422512,-0.1586437,0.00079494115,-0.27336416,0.036574032,0.10625827,0.2505548,-0.37372994,0.04841167,0.24479657,-0.18796268,0.14709403],[-1.9839507,-0.07971294,0.0019432222,-0.1465764,0.47511905,1.4785819,-0.6126462,-0.8653647,-0.006930718,-0.05133041,0.4208154,0.3623695,-0.07688759,-0.46326146,0.049198236,-0.29932696,-0.10871309,0.13249245],[-0.01090139,1.4570909,2.8342102,-0.48148742,0.35504207,0.8265004,0.22427893,-0.44684047,0.87371486,0.41123086,0.05926164,-0.3498932,-0.20314151,-0.4126248,0.6597188,0.18670116,-0.13712086,0.04479702],[-0.017381541,-0.7597381,-3.9741704,0.966278,-0.8725842,-1.0976232,1.3351153,0.36389372,0.6396286,-0.28108513,0.5655249,-0.3259955,0.2685084,0.3538014,-0.99265057,0.0020220215,0.08644423,-0.016739462],[-0.4040077,1.5493203,-0.0015337409,-0.057152465,-0.4507684,1.1744777,-0.84242934,0.26143765,0.5450927,-0.16338348,-0.12852266,-0.04006952,0.61630785,-0.35684994,-0.26787806,-0.173013,0.1754258,-0.055330947],[0.14463891,1.3947294,0.0005817746,-0.11709302,-0.47823873,0.9985025,-0.5435925,0.28843075,0.4257345,-0.07990765,-0.15169789,0.049027964,0.32417342,-0.14295861,-0.21804018,-0.1728184,0.25523916,-0.118601166]],"activation":"σ"},{"dense_2_W":[[-0.13598546,0.48721725,-0.8770504,-0.10435272,1.2942611,-0.6188507,-0.77000535],[0.2963742,-0.06368987,-0.6158674,0.5706844,-0.62964815,-0.6725343,-0.70922905],[-0.65155697,-0.40622166,0.22409256,-0.5447109,0.30369374,-0.6313153,-0.47783092],[-0.25578108,-0.23481992,0.6473863,-0.4388097,-0.16786619,-0.24785686,0.13121009],[-0.7862219,-0.51441395,0.14683217,0.16958761,0.822131,-0.8929698,-0.9890509],[-0.11013757,0.13794002,-0.2200882,-0.5511851,-0.7512739,-0.34854394,-0.20708162],[-0.26325488,-0.068378806,0.30052987,0.44717714,-0.19997324,0.36592284,0.37900636],[-0.56599057,-0.20042972,-0.51274085,0.27466905,0.329293,-0.9691359,-0.2049081],[-0.084157735,-0.6273445,0.22159277,-0.27066445,-0.27510265,-0.6879669,-0.9523734],[0.40842152,0.49088025,0.24065876,0.17004599,-0.26951402,0.06465446,0.33384213],[0.5391135,-0.5008811,0.4018758,0.16503108,-0.49227586,0.34286293,-0.2673176],[0.031132208,0.06428439,-0.086133376,0.35238424,-0.34203455,0.54796845,0.7357129],[0.060671475,0.49638665,0.6812915,-0.52441,0.41805837,0.5390166,-0.07453658]],"activation":"σ","dense_2_b":[[1.0358273],[-0.024130732],[0.059400935],[-0.027526159],[0.09260186],[-0.20580374],[-0.062025692],[0.39389342],[0.077137515],[-0.09825774],[-0.051716425],[-0.084061615],[-0.025274398]]},{"dense_3_W":[[-0.14006962,0.5902041,0.18080363,0.48413566,0.33100846,-0.11978409,-0.63116825,-0.13776208,0.29580384,-0.17148037,0.22820434,-0.15557605,0.31175599],[0.37938893,-0.13863787,0.45991153,-0.014412937,0.30609646,-0.023109397,-0.64584565,0.093050435,0.42860112,-0.40409505,-0.398128,-0.640976,-0.17863272],[-0.34660983,-0.50709665,-0.55247855,0.5898295,-0.4875454,-0.35633042,-0.19656834,-0.66706467,-0.4074692,-0.3361508,0.117474474,-0.3539698,0.6108807]],"activation":"identity","dense_3_b":[[-0.022861203],[-0.014076285],[0.034564495]]},{"dense_4_W":[[-0.60573244,-0.98281205,0.80961186]],"dense_4_b":[[0.019623742]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json new file mode 100644 index 0000000000..74f3bb7e63 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SKODA_SUPERB_MK3.json @@ -0,0 +1 @@ +{"input_std":[[11.005025],[0.97968346],[0.50101554],[0.038736638],[0.9587485],[0.9655901],[0.971756],[0.95295596],[0.9315219],[0.90679765],[0.8827432],[0.038590446],[0.03862441],[0.03865234],[0.03871767],[0.038792223],[0.03873497],[0.03861525]],"model_test_loss":0.010799731127917767,"input_size":18,"current_date_and_time":"2023-08-10_12-21-52","input_mean":[[22.878464],[0.031642012],[0.0168804],[0.009622783],[0.030209461],[0.030093499],[0.03104034],[0.038059395],[0.040959135],[0.040258918],[0.040640317],[0.009454411],[0.009486841],[0.009516454],[0.009592338],[0.009573765],[0.009518463],[0.009365908]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-2.1818612],[-0.09344887],[-1.8393922],[1.848314],[1.0065805],[-0.08666866],[0.7747504]],"dense_1_W":[[-0.8857707,1.5844063,-2.7639117,0.8296629,-1.5801734,-1.389664,0.6718809,0.21833602,-0.3579308,0.031948198,0.036747955,0.14046027,-0.10389215,0.24267684,-0.58785427,-0.29687718,-0.071204364,0.17921484],[-0.016061021,-0.8927914,0.0014837141,0.16529202,-0.31931162,-1.5972285,1.0674282,0.50527793,0.00036276158,0.6643216,-0.70242655,0.23176064,-0.23684219,0.020929113,0.18165103,0.2728483,-0.077427186,-0.028263727],[-1.1033577,-1.4215872,0.010086168,-0.17611827,0.2112764,-0.69066954,-0.083308466,0.15166493,-0.22307171,-0.075834244,0.035160135,-0.26813668,-0.31942832,0.5206709,0.05213391,0.1393356,0.24755146,-0.20669232],[0.83160627,-1.0528738,0.010402418,-0.8488269,-0.097700946,-0.8356935,-0.030544959,-0.045691635,-0.12981445,-0.22643599,0.08581046,-0.099290386,-0.0029221023,0.43224323,0.16066676,0.23335454,0.26151142,-0.19559892],[1.6938869,0.33258435,0.011718149,0.5278453,0.4084221,0.054189947,0.6158366,0.5923816,0.31159598,-0.19908112,0.0759474,0.18903963,-0.16102462,-0.31830838,0.122031696,-0.5454575,0.14843899,0.0009889763],[-0.18688406,-1.837496,-0.024467822,-0.18667667,1.5253651,-0.87217486,0.6304656,-0.3631879,-0.93472433,-0.4855514,0.8494961,-0.29013696,0.11480595,-0.046378586,0.04579505,0.6772069,0.030312326,-0.2840396],[0.5354849,-0.16436046,-2.2868845,0.9490928,-1.1401188,-1.6175885,2.1010857,-0.067001574,0.09170741,0.23366773,-0.13356704,-0.38347217,-0.17166469,0.5771494,-0.16453075,-0.5179118,-0.2526112,0.2366501]],"activation":"σ"},{"dense_2_W":[[0.33937505,-0.3745738,-0.9080001,-0.67459136,-0.22434857,-0.68243057,0.15986687],[-0.4707506,0.3539919,0.7182431,0.32069924,0.52431095,0.47054338,0.32751095],[-1.0941919,-0.02285758,-0.6026077,-0.6543617,-1.1643189,-0.40606982,-0.530394],[0.4252591,0.47353566,-0.49499482,0.49766955,0.9336523,0.4235022,0.91593933],[0.5621498,0.24484019,0.066795506,-0.39081028,-0.2126147,-0.17618422,0.08806277],[-0.21437049,-0.086400345,-0.70952827,0.24951175,0.2172522,-0.935455,0.3494222],[-0.027205786,-0.3861311,-0.329584,0.3939693,0.21568625,-0.037430923,-0.44425386],[-0.8316691,-0.6763449,0.074327685,-0.473199,-0.55408454,-0.17554076,0.10902519],[0.24072582,-0.45537603,-0.5833832,0.25576162,0.19144523,-0.66718787,-0.2368218],[0.9988664,-0.3536028,-0.28179932,0.7269398,1.1277015,0.6262987,0.9872559],[-0.081231736,0.76173663,0.36381385,-0.087001294,0.15438923,-0.6396298,0.33097985],[0.37046397,0.6737554,-0.0037287436,0.1967084,0.20252821,0.25889185,-0.26074913],[-0.50508755,0.007956352,-0.56175256,0.4734349,0.11897713,-0.8310094,0.056679618]],"activation":"σ","dense_2_b":[[0.40672347],[-0.15762824],[0.54028726],[-0.06825271],[-0.14409027],[-0.24412309],[0.13284369],[0.13380992],[0.3824313],[-0.10148208],[-0.16163772],[-0.21077214],[0.2533245]]},{"dense_3_W":[[-1.1355319,0.3370882,-1.0809343,0.49130934,0.20389263,-0.79736996,-0.023168638,-0.094694644,-0.6435565,-0.079334155,-0.31444725,-0.088145025,-0.46537364],[-0.7897674,0.58977884,-0.6444405,0.5475269,0.0090896,0.1407256,-0.40847594,-0.47964928,-0.5811728,0.7200515,0.37270215,0.26434785,-0.682192],[0.07739398,0.37235165,-0.6278828,-0.1572289,0.14061572,-0.46377057,-0.18825918,-0.50748676,-0.5449003,-0.11498902,-0.10287988,0.50479686,0.14272374]],"activation":"identity","dense_3_b":[[0.019560132],[-0.021147352],[0.01810392]]},{"dense_4_W":[[-0.44403714,-0.84635425,-0.24351013]],"dense_4_b":[[0.015087563]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json new file mode 100644 index 0000000000..bb2bce72c7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_ASCENT.json @@ -0,0 +1 @@ +{"input_std":[[8.758843],[1.3803611],[0.60948026],[0.045717984],[1.3632656],[1.3669009],[1.3716704],[1.3600131],[1.3428026],[1.3118118],[1.2692281],[0.04556848],[0.045585617],[0.045588113],[0.045418713],[0.04517924],[0.044783145],[0.04430147]],"model_test_loss":0.011302465572953224,"input_size":18,"current_date_and_time":"2023-08-10_14-53-35","input_mean":[[22.14633],[-0.09750815],[-0.016923292],[-0.008263297],[-0.09257404],[-0.093882],[-0.095394194],[-0.10115487],[-0.105775625],[-0.10726142],[-0.10426775],[-0.008418747],[-0.0083834],[-0.008342148],[-0.008217269],[-0.008256564],[-0.008261369],[-0.008310724]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.028778102],[-1.968203],[0.065823115],[1.8248968],[0.062292587],[-1.7103531],[-0.01996085]],"dense_1_W":[[0.0070845596,-0.60425925,0.13626827,0.58880633,-0.31271362,-0.61375195,0.66517067,0.22636458,-0.19881134,0.45755818,-0.34704024,-0.57213944,-0.011795754,-0.6249568,-0.1684797,0.32110855,-0.17260504,0.544297],[-0.728326,-0.6023388,-0.058824457,0.31488872,-0.22620982,-0.60898775,2.0038636,-0.3022711,-0.629738,0.02945903,0.13288042,-0.14117523,-0.017454179,-0.034289096,0.067219295,-0.25439438,-0.053118344,0.09879211],[-0.020241546,-0.32952714,0.010935147,0.13660449,0.22784045,0.9439816,-1.076848,0.3701509,0.02565278,-0.019304488,0.13404894,0.18276764,0.43549806,-0.29936683,-0.58802724,-0.17244393,0.059832945,0.14556362],[0.76759815,0.06043721,-0.05881449,0.0035122675,-0.10848625,0.052874193,0.8961308,-0.89096814,-0.38440028,-0.16148087,0.24437909,-0.3767321,0.020551253,0.5319493,-0.12341046,-0.055117548,-0.11515104,0.11642417],[0.035288017,-1.6319109,-6.531466,0.11385578,0.8703579,-0.2708121,0.03723273,0.90277404,-0.28877074,-0.044411846,0.10059958,-0.33312798,-0.5378801,0.12608767,0.355296,0.48987788,0.32266265,-0.3474462],[-0.7375854,0.057307318,0.058046028,0.19952175,0.46198282,0.466313,-1.1714203,-0.15773736,0.28007728,0.14972468,0.010271487,-0.10134099,0.1349294,-0.18732592,-0.0563053,0.050620757,0.048619322,-0.045900762],[-0.0032983767,-0.9483289,0.020740977,0.16430958,-0.05373888,-0.6577905,0.2967871,0.2897931,0.2731,-0.18671848,0.084359705,-0.005540786,-0.0081646815,0.12515508,-0.08342288,-0.052237507,0.26822442,-0.21108986]],"activation":"σ"},{"dense_2_W":[[-0.45338973,-0.20294967,0.5083342,-0.42460576,-0.63909435,0.4879755,0.012130023],[-0.2742753,-0.61631083,0.46697986,-0.45406902,-0.06088979,0.76950836,-0.4132321],[0.81678456,-1.1331547,0.32828367,-0.31268513,-0.8846842,0.6429822,-0.4893232],[0.879309,0.7746291,-0.6991977,-0.23530038,-0.67047966,-0.1361894,0.9743538],[0.31158212,-1.6510494,0.1974917,-0.33475468,-0.11659852,0.07471639,-0.0023190496],[-0.6007021,0.55620384,-0.050591104,0.6911001,0.50198555,-0.48155546,0.5246929],[-0.81362003,0.870096,-0.6034486,-1.8557204,-0.71382594,1.4265903,0.31279352],[0.6726662,0.87645346,-0.31120607,-0.057908148,-0.517195,-0.5856469,0.6892038],[-0.62789345,-0.81853545,0.31356138,-0.040097605,0.6366377,0.31337318,-0.79096055],[-0.7211644,1.0459608,0.061597116,0.3745668,0.37840834,-0.46162283,0.76644534],[0.3500098,1.3790991,-1.1291443,-0.20502144,0.2560334,0.01199343,-0.027191881],[0.65701747,-0.9248509,0.506126,-0.16672745,-0.42342398,-0.14072593,-0.6027308],[-0.67928207,-0.19559407,-0.040364254,-0.47893044,0.14672689,0.6760947,-0.5760793]],"activation":"σ","dense_2_b":[[-0.014492411],[0.07639171],[0.39956445],[-0.16650708],[-0.13319126],[-0.13508296],[-0.10059368],[-0.31607836],[-0.0461397],[-0.32838032],[-0.20038198],[0.037399642],[-0.039441753]]},{"dense_3_W":[[-0.33679157,-0.009600073,-0.9610766,0.7423044,-0.19008559,0.21044315,-0.7233725,-0.04264747,0.26311195,0.57560843,0.4490669,-0.4002034,-0.7852221],[0.4784453,0.67048156,0.70986277,-0.8041704,0.3298966,-0.34861046,0.2399805,-0.27719498,0.5779557,-0.22748941,-0.932461,0.3537534,0.24791418],[0.58087116,0.6521763,-0.35804045,-0.07539161,0.062361475,-0.29150185,0.23337866,-0.089632176,0.21668643,-0.28445706,-0.36395082,0.26074025,0.598436]],"activation":"identity","dense_3_b":[[-0.030428782],[-0.123883836],[-0.12339338]]},{"dense_4_W":[[-0.23482278,0.8056521,0.30850294]],"dense_4_b":[[-0.10144986]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json new file mode 100644 index 0000000000..f269e03b94 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_FORESTER.json @@ -0,0 +1 @@ +{"input_std":[[8.800139],[1.4024142],[0.64793754],[0.04852409],[1.3756377],[1.3851136],[1.3934203],[1.3648111],[1.3329811],[1.3011713],[1.2632433],[0.04835437],[0.04840405],[0.04844234],[0.048357654],[0.0482471],[0.047991928],[0.047582824]],"model_test_loss":0.007408012170344591,"input_size":18,"current_date_and_time":"2023-08-10_16-38-20","input_mean":[[23.81501],[-0.049737465],[-0.012033205],[-0.007154475],[-0.042333253],[-0.04411629],[-0.046351664],[-0.046337746],[-0.0452032],[-0.0461177],[-0.04440744],[-0.007060857],[-0.0070801843],[-0.0070975143],[-0.0070964643],[-0.007056378],[-0.0070534865],[-0.0071490407]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.14959592],[0.15145145],[-0.31445217],[-1.278996],[0.042432982],[1.5067866],[-0.032994382]],"dense_1_W":[[0.007527928,-0.5552118,-0.033658482,-0.098787725,0.07584574,-0.9390659,0.81876254,0.20194316,0.43864456,-0.4218525,-0.039264686,0.16177176,-0.3515836,0.20080848,0.34289953,-0.09344094,-0.35971025,0.22003576],[0.09012296,0.46685427,0.0064236997,0.18229099,0.07276261,0.7347331,-1.3846129,0.22982895,0.4774952,-0.22901195,-0.07560122,0.29164892,0.25852647,-0.08081211,-0.041323017,-0.22754644,-0.36422738,-0.012168264],[-0.007923612,1.5721923,7.249816,0.24075961,0.25590533,-0.088694036,-1.1871089,-0.96667105,0.9330669,0.98532987,-1.0378566,0.5749717,-0.40850392,0.24602483,-0.63786286,-0.6482208,-0.15704682,0.6276128],[-0.963277,0.03193962,0.017269593,0.57181937,0.88669837,0.27691013,-1.8479526,0.38129202,0.73344886,-0.16890727,-0.1942604,0.950727,0.9030019,0.033808593,-0.89199686,-0.8695169,-0.48222977,-0.1936048],[0.003948569,-0.6626056,-0.026783565,0.24455325,0.13850336,-0.87496305,0.30995417,-0.12258559,0.627965,0.28786364,-0.36571527,-0.14854349,-0.048926286,-0.03496435,0.18779114,-0.090603314,0.06736233,-0.109832205],[1.1487782,0.404077,-0.03660598,-0.08010621,0.22780214,0.27421752,-1.7048142,0.8248977,0.32876998,0.15378678,-0.34877867,-0.92275876,-0.83582413,-0.37334695,0.31583604,0.31877267,0.8586441,0.715129],[0.0010568867,1.0778173,0.04372921,0.6322534,-0.1799248,-0.3518717,1.8120258,-1.5917265,-0.8620765,-0.35745504,0.2233659,-0.0019629926,0.28671154,0.32253462,-0.85555124,-0.21950537,-0.112213776,0.2568781]],"activation":"σ"},{"dense_2_W":[[0.10897138,-0.723212,0.03340947,-0.38988578,-0.31490615,-0.007838475,0.05767578],[0.124002986,-0.47957873,-0.6278711,-0.20655042,-0.17151697,-0.8776442,-0.36946294],[0.34166458,-0.6827676,0.36771443,-0.24060813,0.34594595,-0.74794686,0.22926417],[0.017008245,0.19041075,0.084082685,0.081093706,0.4542936,0.10335207,0.25682083],[0.5069386,0.24292083,-0.4515972,-0.18613566,0.21341953,-0.4916771,0.5676118],[-0.79913807,0.49238104,0.19868188,0.75191754,-0.41708577,-0.453282,-0.456025],[0.25128815,-0.63992566,-0.4836454,-0.3934495,0.094238296,-0.68461305,0.33668476],[0.01528515,0.78505975,0.5019243,-0.31464717,-0.74084806,0.8338816,0.1128433],[-0.51994556,0.15239593,-0.07230343,0.24837533,-0.6899928,0.0865479,-0.539543],[0.2825089,-0.38502663,0.44325826,-0.430329,0.21890175,0.1125448,-0.37878212],[0.16606337,0.54976463,0.36211267,0.32275504,-0.48639286,-0.25836277,-0.336691],[-0.06592535,0.7600238,-0.17236032,0.496856,-0.6375664,0.18681967,-0.40907857],[-0.28911406,-0.26927066,-0.5852496,-0.33134258,0.08002008,-0.1575813,0.27370805]],"activation":"σ","dense_2_b":[[-0.35370803],[-0.20628847],[-0.111258335],[-0.1018301],[-0.056314364],[-0.092298076],[-0.07329908],[-0.023466475],[0.112976246],[-0.077543356],[-0.033790935],[0.04352653],[-0.080127224]]},{"dense_3_W":[[-0.50061566,0.29911298,0.27225292,0.13542368,0.36572888,-0.65222454,0.3313954,-0.33749554,-0.6381314,0.39514777,-0.084563196,-0.4374779,0.39208907],[-0.14953244,-0.20290117,-0.599371,-0.1296707,-0.32913446,-0.37221158,-0.29940695,-0.34908745,0.2913214,0.17797685,0.25834674,0.75962204,-0.38031256],[-0.59162396,0.6006983,-0.23583624,-0.18037513,-0.533629,0.23406217,0.08210266,0.45098656,-0.05068087,-0.46481112,0.37245923,-0.113958105,0.26854116]],"activation":"identity","dense_3_b":[[-0.058710456],[0.06673158],[0.06627157]]},{"dense_4_W":[[-1.143745,1.012412,0.67946994]],"dense_4_b":[[0.060790185]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json new file mode 100644 index 0000000000..0bae6debe1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA.json @@ -0,0 +1 @@ +{"input_std":[[8.554121],[1.0740528],[0.4476513],[0.042985532],[1.0663103],[1.0689878],[1.071583],[1.0549195],[1.0335085],[1.0030197],[0.9723682],[0.042850573],[0.042880993],[0.042904507],[0.04281879],[0.042651407],[0.04230733],[0.041820873]],"model_test_loss":0.022656971588730812,"input_size":18,"current_date_and_time":"2023-08-10_17-58-30","input_mean":[[22.76271],[-0.025877997],[0.0022960093],[-0.009181171],[-0.02727445],[-0.027402772],[-0.027459135],[-0.026559947],[-0.02817579],[-0.029742032],[-0.030806256],[-0.0091993585],[-0.00921486],[-0.009230055],[-0.009324119],[-0.00943795],[-0.009580347],[-0.009762122]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5694719],[-0.20375408],[0.4239076],[-1.5491991],[-2.7061498],[1.5443199],[-3.3281188]],"dense_1_W":[[-0.1568525,1.7437768,5.172882,-1.1876678,-2.9987805,-0.5681597,-0.72784686,-0.56439,3.2104652,1.4470582,-1.4493226,1.616085,0.16703165,-0.029379552,-0.89520353,-0.08414323,0.035069145,0.27360746],[0.008605118,1.5699749,-0.034170814,-0.6517424,0.1554151,1.9415936,-0.6549746,-0.14080332,0.4873717,0.20128046,-0.07373715,0.72448504,-0.18958189,-0.3032506,-0.3716506,0.21436751,0.13051425,0.057122074],[0.15251416,-1.065147,-1.7042818,-0.18689084,1.1120772,-0.40736163,0.34153485,-0.06619109,-0.19624624,-0.5001997,0.3767836,-0.46413225,0.124430165,0.1741939,0.08300067,0.4339266,0.39133996,-0.4509936],[-1.9674213,0.08717078,0.029132722,-0.03513353,-0.2589703,1.6724654,-1.3558731,-0.1305793,-0.454886,-0.012608211,0.23873848,-0.34175423,0.23151904,0.7033776,-0.41631103,-0.5752804,-0.4836925,0.59687835],[-0.7207827,-0.5354017,-0.046089556,0.70448333,-0.36087984,-1.4759765,1.6575412,-0.75853246,-0.4408815,0.08790331,0.0717399,-0.33782014,-0.42041263,0.67508817,-0.24991857,-0.3216102,-0.41419834,0.3666627],[1.9532421,0.33528504,0.01916575,0.41987598,0.10209625,1.2647687,-1.4621202,0.04530512,-0.48216137,-0.5880018,0.5948106,-0.49690482,-0.012825885,0.407025,-0.21983282,-0.46802706,-0.1458972,0.21309836],[-0.7360502,0.09303879,0.05160484,-0.5698299,0.48270965,1.2655245,-1.0951636,0.7825874,0.5584368,-0.051464483,-0.10931349,0.18838416,0.48844352,-0.7061164,0.29695016,0.34917378,0.2150316,-0.281181]],"activation":"σ"},{"dense_2_W":[[-0.07180556,0.3327603,-0.38922572,0.48622698,0.09493802,0.26061895,0.23152085],[0.13407795,-0.67967266,0.05478834,-0.13644974,0.38578004,-0.13981605,-1.063277],[-0.015875516,-0.22446778,-0.25920233,-0.21318886,0.96766865,-0.20522757,-0.96453786],[0.08992157,0.18349336,0.0824512,-0.18648697,-0.5639966,0.38651267,0.2273873],[0.24735251,-0.2508453,0.11087025,0.45425788,-0.4750976,0.48374006,0.7154399],[-1.4328333,0.5445412,0.7513447,-0.29624668,1.3955733,-0.7848697,-0.35838512],[-1.3571904,0.019299721,0.74097097,0.21410283,0.48808393,-1.7108941,0.8460511],[0.34152254,-0.33008227,0.7538879,-0.782962,0.46280092,0.3184853,-1.060949],[-0.5959307,0.6231766,0.24205552,0.80450344,-0.20037276,0.2900327,0.34695983],[-0.04536962,-0.6977615,0.08347324,-0.3414067,0.76720893,0.07663101,-0.62674546],[-0.08212232,-0.48272756,-0.11815556,0.24696878,0.023860326,-0.47122,-0.32275018],[-2.5981476,-0.62226206,0.30502877,0.7207847,0.95814323,-0.7556528,0.5867901],[0.18742424,0.22045845,0.27814955,0.33897662,-0.19170812,0.03715238,0.15590559]],"activation":"σ","dense_2_b":[[-0.05376892],[0.23207775],[0.08851935],[-0.051318903],[-0.23005556],[-0.015357251],[0.06677577],[0.3493236],[0.010827263],[-0.029838517],[-0.059241645],[-0.45090887],[0.0051090852]]},{"dense_3_W":[[0.43776008,-0.4779542,-0.6273563,0.012430885,0.27310228,-0.6358059,-0.5068906,-0.45288852,0.5793986,-0.29245862,-0.21443059,-0.15231055,0.4353823],[0.24600616,0.26503375,-0.1618708,-0.22456193,-0.43281186,-0.17235023,-0.4949653,0.4828677,-0.109212846,-0.3444521,-0.46777263,0.5679082,-0.11389996],[0.5157795,0.24814758,-0.17129026,0.32940918,0.6862252,0.45439878,-0.3838788,-0.6090692,0.4296436,-0.07106129,0.5077451,-0.04794848,-0.5777281]],"activation":"identity","dense_3_b":[[0.0597104],[-0.036633834],[0.03006256]]},{"dense_4_W":[[1.408938,-0.40635464,0.28050324]],"dense_4_b":[[0.051838256]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json new file mode 100644 index 0000000000..56091f65a9 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_IMPREZA_2020.json @@ -0,0 +1 @@ +{"input_std":[[8.894573],[1.1526463],[0.49937436],[0.04181223],[1.1407756],[1.1450312],[1.1480577],[1.1401104],[1.123895],[1.1006547],[1.071595],[0.0416507],[0.041704524],[0.041748393],[0.04176903],[0.041703388],[0.041490186],[0.041185617]],"model_test_loss":0.013009187765419483,"input_size":18,"current_date_and_time":"2023-08-10_21-20-07","input_mean":[[24.805859],[0.0049672336],[0.0013684959],[-0.001192497],[0.0036358428],[0.0034303954],[0.004092047],[0.005534218],[0.0066732266],[0.004927845],[0.0062723476],[-0.0012077604],[-0.0011977365],[-0.0011862671],[-0.0011791526],[-0.0012019373],[-0.001338799],[-0.0015223476]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.042427626],[-2.5019999],[-0.0457297],[-0.7153923],[-0.7774993],[-0.06926592],[-2.4368992]],"dense_1_W":[[-0.0009291319,0.27767056,-0.07892523,-0.059060324,1.0241088,1.171279,-0.069413096,-0.12784159,0.058901682,-0.18805476,0.4193225,-0.3469123,0.42202514,-0.36080348,-0.7251315,-0.3008201,-0.033229448,-0.49506444],[-0.40471604,0.11814647,-0.1926038,0.0060851052,-1.1522694,-1.2816894,1.9390084,-0.5257205,-0.2785602,-0.118004374,-0.020688536,0.07099932,-0.389517,0.20363228,-0.030239882,0.6832831,-0.015321787,-0.26263818],[-0.00991332,-2.1251974,-3.9875517,0.5100302,2.949812,0.787714,0.90843993,-0.38894913,-2.0025148,-2.1428773,1.4694284,-0.76132494,-0.45982483,0.11538664,-0.18600582,0.46312463,0.7552948,-0.31822762],[-0.46726972,-0.9092647,1.3574834,0.18761194,-0.81670135,-1.0397257,1.2560849,-0.21459231,-0.1436863,-0.16160814,0.41930124,-0.32464686,0.17093562,-0.20039976,0.055896353,-0.4330081,0.52754503,0.12463856],[-0.5152346,0.50216174,1.3355443,-0.31773502,-0.46232986,-0.13133429,-1.4018828,-0.43890733,0.06662451,-0.043737113,0.3108043,0.19670644,-0.093163505,-0.28796571,-0.051473662,0.24918097,0.38881204,0.02669732],[-0.02088246,2.2406785,-0.22520858,-0.70286745,2.008803,1.9785228,0.02844807,0.97084755,0.49748123,0.7884559,0.14848712,0.87087315,0.40047103,-0.21100943,-0.21773107,0.57993966,0.16083455,-0.54391414],[-0.3943676,-0.26845726,0.19103855,0.21092215,1.200674,1.3899878,-2.1009598,0.73901653,0.24895392,0.09445688,0.020025935,-0.21680212,0.3247223,0.046129495,-0.4636503,-0.37354514,-0.05204169,0.26103115]],"activation":"σ"},{"dense_2_W":[[-0.29813394,0.97317356,0.18235527,0.5965462,-0.36117476,-0.357781,-0.6302886],[0.4669501,-0.26381913,-0.6718241,-0.55993664,0.75606084,-0.22786976,0.54741734],[0.45668933,-0.81978554,-0.4400848,-0.47736016,0.9749981,-0.41887143,0.5611882],[-0.23562466,-0.33685845,-0.63146794,-0.25962546,0.7455925,0.050860852,0.47903395],[0.11492595,0.39062494,-0.5413327,-0.040900126,-0.17837498,0.06629638,0.052479822],[0.3525208,0.28856075,-0.14136873,0.6413087,-0.51915973,-0.2774327,-0.9177848],[-0.17333238,0.8689579,-0.28932738,0.566288,0.11427143,0.06013824,-1.1550378],[-0.5458432,0.5894391,-0.047653124,0.15687895,0.33795092,-0.5042759,-0.22974871],[0.49124256,-0.7596094,-0.17393427,-0.37332547,0.025444454,0.34669602,0.47311735],[0.31282023,-1.2118286,0.017776541,-0.91698223,0.24819252,-0.0926613,1.2513487],[0.33180416,0.23580849,0.46787393,-0.09696695,-0.25229496,0.3558893,-0.6826248],[0.42314368,0.07992972,0.4903785,-0.3677389,-0.38366356,-0.34357548,-0.33236912],[-0.37016624,0.46486557,0.060417723,-0.48779157,0.024656558,-0.38848272,0.0547722]],"activation":"σ","dense_2_b":[[-0.0017060944],[0.016006682],[0.13619791],[0.01692232],[-0.2458614],[-0.01584404],[-0.11229285],[-0.037353944],[-0.0535534],[0.023917647],[-0.08311039],[-0.05629295],[-0.21274085]]},{"dense_3_W":[[0.4620643,0.1110241,-0.73991674,-0.04964699,-0.49397373,0.636488,-0.21777737,0.45773318,-0.31195316,0.26977688,-0.015185564,-0.0892626,-0.50908834],[-0.45361328,0.48187032,0.123036705,0.6407995,-0.29581347,-0.18150009,-0.42016354,-0.3740721,0.5890714,0.49763745,-0.43375558,-0.2785329,-0.33093747],[-0.034139745,0.07872775,0.14715545,0.5339573,-0.10824458,0.07166932,-0.20306881,0.021034054,-0.44093442,-0.24978448,-0.026970783,-0.16316907,-0.21309401]],"activation":"identity","dense_3_b":[[-0.012436828],[0.029966448],[0.10008727]]},{"dense_4_W":[[-0.48937565,1.0721666,0.037118435]],"dense_4_b":[[0.023898797]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json new file mode 100644 index 0000000000..33a50713eb --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY.json @@ -0,0 +1 @@ +{"input_std":[[9.185515],[1.6282288],[0.35043508],[0.031132786],[1.7255819],[1.6982063],[1.6648296],[1.4761653],[1.3519272],[1.2236267],[1.1229782],[0.03105924],[0.031098329],[0.031127678],[0.031184744],[0.031371836],[0.031613626],[0.03144637]],"model_test_loss":0.04537874087691307,"input_size":18,"current_date_and_time":"2023-09-02_23-19-34","input_mean":[[16.421978],[-0.048192535],[-0.013311911],[-0.030576248],[-0.05147835],[-0.051736772],[-0.051158622],[-0.051310074],[-0.056091797],[-0.051997066],[-0.04342065],[-0.030474063],[-0.03050476],[-0.030556701],[-0.030765096],[-0.030835558],[-0.0308675],[-0.030843992]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.0047161067],[-0.15242413],[-2.1423926],[-3.0072546],[-0.8894896],[1.5538071],[-1.542048]],"dense_1_W":[[-0.012829974,0.30741772,-0.03263021,-0.085545234,1.1814696,0.5471415,0.9120527,-0.33152023,0.5066247,-0.5210931,0.5341946,0.09236861,-0.39759701,0.02910307,-0.00886832,0.41334194,-0.23273322,0.016523872],[0.047321085,-0.15492304,-0.077865265,-0.804299,-3.377934,-3.6115973,-2.283943,5.437118,2.2738755,-0.043271527,0.16104881,0.112040475,0.5114801,0.093201585,0.13260198,-0.2661622,0.1796879,0.04888338],[-1.5367671,2.3720562,-0.02027605,-0.025416356,-1.4381312,-0.9349471,0.24836966,1.367659,0.3289632,-0.055137575,0.12185219,0.45477563,-0.30157885,-0.07613766,0.12895256,0.12588494,-0.1591801,-0.22217746],[-1.3666407,-3.5649407,0.02042984,-0.38937125,1.3380835,1.9989939,-0.20659405,-1.5160191,-0.104439735,0.062092394,-0.15397424,0.093930446,0.3034801,-0.30530134,0.041498467,-0.06435006,0.07080854,0.327221],[0.8026996,-0.44736055,-0.050972164,0.20318426,-0.8092374,0.24752559,0.32302567,-0.094395876,0.22440033,-0.17859897,0.11948998,-0.26337075,-0.27740997,0.18380176,0.30512437,-0.06352904,0.14718251,-0.17162979],[2.457627,-1.4923394,0.028457003,-0.3990584,1.7863452,0.60998243,-0.42721242,-1.8455137,-1.4121356,-0.16493158,0.06486093,0.016970918,0.19106352,-0.2922308,0.05603943,-0.020587316,0.34736913,0.20459694],[1.1815331,0.36599845,0.06255039,0.0657659,0.4088365,0.41529664,-0.25315446,0.017450152,-0.30593964,0.3139144,-0.16692097,0.2685098,-0.086217225,-0.069303796,-0.12145663,-0.22734722,-0.023085613,0.11520361]],"activation":"σ"},{"dense_2_W":[[-0.5023888,-0.05802139,-0.66911775,0.296051,0.7713285,-0.18254815,-0.8283855],[0.44022453,-0.24643378,0.5062762,0.09133972,-0.45227736,0.05079313,0.06773168],[-0.6219036,-0.9433538,-1.0238923,1.3172559,1.1334529,0.6552401,-0.69087607],[0.6763754,-0.40709624,0.6232817,-0.1610244,-0.67904115,0.6493273,0.0906405],[-0.635346,0.0011620739,-0.37521043,-0.5111516,0.986075,-0.3832682,-0.14561039],[0.45462242,1.1686025,0.14032847,-0.9475063,1.0923766,1.6022182,0.2453258],[-0.32724923,-0.7897613,-0.9935628,0.802958,-0.08129205,-1.1719561,-0.7486108],[-0.22323135,0.66134214,1.1732999,-0.8910564,-0.95774484,-0.39924416,0.7293297],[0.29451057,0.15649314,0.27317175,-0.6156423,-0.5974088,-0.54637176,0.16324385],[0.39435184,0.47537956,0.44074118,-0.23361506,0.39577127,-0.44843742,-0.6463624],[-0.48006952,0.5896299,0.56584865,0.23956761,-0.61484444,0.47759032,0.35471997],[0.35922313,0.43721467,0.18760605,-0.351279,-0.6390551,-0.28927103,0.6187888],[0.073767446,-0.8790351,-0.68584126,1.1712487,-1.6569555,-1.2728544,-0.015573282]],"activation":"σ","dense_2_b":[[-0.09275836],[-0.13285246],[0.22685666],[-0.048346587],[0.04652798],[0.08532798],[-0.09150484],[-0.05462159],[-0.1709193],[0.219226],[-0.10487605],[-0.18386836],[-0.227306]]},{"dense_3_W":[[-0.31240308,-0.2003438,-0.49512723,-0.33559966,-0.11021345,0.423354,-0.36147565,0.46913844,-0.33863887,-0.33271542,0.5626256,-0.27749553,0.15109913],[-0.18263677,-0.16133335,0.554565,-0.3057925,0.50082487,-0.3123607,0.6251424,-0.6040641,-0.4718807,0.17380686,-0.2015293,-0.22039177,-0.13468805],[0.75125694,-0.24231063,0.33473507,-0.54747844,0.5980235,-0.27477667,0.7795829,-0.4155024,0.4370703,0.43257073,-0.10999617,-0.19784549,0.7787281]],"activation":"identity","dense_3_b":[[0.08514209],[0.12190986],[0.11714442]]},{"dense_4_W":[[0.08379805,-1.1299504,-0.99574506]],"dense_4_b":[[-0.117058024]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json new file mode 100644 index 0000000000..14e1e1d95e --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_LEGACY_PREGLOBAL.json @@ -0,0 +1 @@ +{"input_std":[[9.750777],[1.3186632],[2.4594376],[0.034155015],[1.3260336],[1.3216915],[1.3177336],[1.3116305],[1.2217928],[1.1049051],[0.97790134],[0.03409643],[0.034110934],[0.03412991],[0.03416529],[0.034136374],[0.03408451],[0.034057345]],"model_test_loss":0.02841777540743351,"input_size":18,"current_date_and_time":"2023-09-02_22-47-37","input_mean":[[17.672829],[-0.0015280318],[0.0008010262],[0.021118881],[0.0008383113],[-0.0005000338],[-0.0014255784],[-0.001504001],[-0.00013831415],[-0.0043903766],[-0.004224954],[0.02113117],[0.021122888],[0.02112144],[0.021065863],[0.020995975],[0.020819707],[0.02090924]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.4262147],[0.29442513],[0.13858001],[-3.6157753],[0.11054395],[-0.096514955],[-2.7481675]],"dense_1_W":[[-0.59550166,-0.08087835,-0.10044884,-0.030051881,-1.0114387,-0.7159067,1.0509298,-0.4646438,0.254099,0.27775934,-0.30958077,-0.2699965,0.020533659,-0.021311773,0.45812935,0.20583425,-0.17345557,-0.12265345],[-0.1814759,-2.6059172,0.027335435,0.031072548,1.9576696,1.9464822,1.3979335,-3.122393,-0.40338284,-0.811746,0.915118,-0.2758879,-0.018445456,0.10923238,0.3439007,-0.3658017,0.17968847,0.0085251825],[1.2159636,0.50295633,-0.29685062,0.10249312,-1.1345159,-0.60397,0.9025859,-1.4166268,-0.34669524,0.31230232,0.03311125,-0.4099096,0.22891928,0.0058932696,-0.03164047,0.28680435,0.056274787,-0.21163589],[-2.1782408,-2.652491,-0.6163189,0.014259274,0.46644354,-0.07303462,-0.16025148,-1.9173824,-0.34420478,0.248388,0.23158954,0.038577884,0.08229089,0.039497472,-0.21905439,-0.31795323,0.80569685,-0.35556743],[-0.39873397,1.0991853,-0.15771712,-0.44371212,0.6436306,0.014177862,-0.9923157,1.1680098,0.09227359,-0.3646184,0.17011096,0.10480483,0.5100492,-0.115318246,-0.6804572,0.09150676,0.35543084,-0.04518636],[1.815469,0.7312476,-0.32006833,-0.47156325,-0.8404111,0.18205363,-2.1965184,-1.2279189,-1.0787835,0.2947485,0.085848495,0.06514893,0.41874364,-0.2661748,0.28740934,0.4390194,-0.31817436,0.0123811625],[-1.3422207,4.2687964,-0.25304475,0.53945225,-1.3436658,-1.9831376,-2.5219822,2.4054382,-1.2978123,0.42630863,1.098409,-0.47248852,-0.705663,0.60417634,0.0360486,0.5381174,-0.0367325,-0.60039526]],"activation":"σ"},{"dense_2_W":[[0.6287387,0.6726734,1.2156233,0.14890462,-0.7355616,0.36218125,0.14466967],[-0.74637365,0.3812475,-0.6406179,0.28641817,-0.20450425,0.32207528,-0.3226913],[0.06755054,-0.27992728,-0.70488316,-0.25441137,0.31789666,0.04202117,0.4387319],[-0.1773071,-0.06993977,-0.67512244,-0.46879476,-0.2630911,-0.7062165,-0.45115414],[-0.6238654,-0.26688075,-0.6413995,-0.30508804,0.62488157,0.15856849,-0.036961198],[-0.30532292,0.023894563,-0.0064119864,-0.105837554,0.01626758,0.14256619,-0.60051453],[0.013258742,-0.17537804,-0.44187704,-0.03241884,0.571268,0.39274576,0.042168505],[-0.6181693,-0.27180657,-0.44550276,-0.00063514145,0.47017303,0.1071446,0.4154284],[0.3637543,0.29671773,0.32823008,0.29629824,-0.551112,0.14014855,-0.46638033],[0.588223,0.1280512,0.3159679,1.2631085,-1.279261,-1.4572979,-0.2884451],[0.08316952,-0.2914584,-0.76872176,0.22730377,0.02180895,0.13148995,-0.5355329],[0.6056482,2.9128945,-0.027976673,0.84820426,-0.9162752,-2.0459216,-4.1563354],[0.03169041,-0.17865568,-0.2586998,0.10826119,0.071472034,-0.3774936,0.22949137]],"activation":"σ","dense_2_b":[[0.015828583],[-0.088196956],[-0.09036952],[-0.1230372],[-0.055517223],[-0.119829975],[-0.08279668],[-0.04842878],[-0.2312968],[-0.60610735],[-0.10119338],[-0.82878107],[-0.119595364]]},{"dense_3_W":[[0.4161587,0.39951083,-0.0774412,0.24522696,-0.6132204,-0.09533373,-0.47129297,-0.41050985,0.23757468,0.23466793,0.1497136,0.592779,-0.14382078],[0.10526708,-0.5690179,-0.44247043,-0.37303323,-0.45616138,0.17351544,0.47270444,-0.49300864,-0.013277441,-0.06569539,-0.5149398,-0.006244119,0.17057294],[0.6019824,-0.120864384,0.43110284,-0.51825607,-0.12548478,-0.4957451,-0.4877988,-0.39608762,0.053494465,0.6998196,0.01679197,0.4730759,-0.08663315]],"activation":"identity","dense_3_b":[[0.095762156],[0.09659323],[0.09680739]]},{"dense_4_W":[[-0.63916916,-0.8716667,-0.6933614]],"dense_4_b":[[-0.09472361]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json new file mode 100644 index 0000000000..b18169a8f7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK.json @@ -0,0 +1 @@ +{"input_std":[[8.573654],[1.1484252],[0.42591482],[0.04835451],[1.1461933],[1.1471832],[1.1470121],[1.1214072],[1.0991943],[1.0701101],[1.0406059],[0.048127588],[0.048172023],[0.048212342],[0.048246387],[0.04816156],[0.0479336],[0.047585495]],"model_test_loss":0.026417279615998268,"input_size":18,"current_date_and_time":"2023-08-10_23-04-26","input_mean":[[24.135065],[-0.042271867],[0.014178805],[-0.0037389072],[-0.046595708],[-0.04610125],[-0.04491835],[-0.03922049],[-0.035844963],[-0.028552856],[-0.025264736],[-0.003948662],[-0.0038945172],[-0.0038410625],[-0.0036192732],[-0.003510406],[-0.003390137],[-0.0033347548]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.6313527],[0.21449536],[-2.8833015],[0.08015413],[0.14096457],[-0.4543409],[0.08164727]],"dense_1_W":[[0.4385407,0.63463783,0.060082484,-0.4217529,0.07332441,1.2808025,-0.9600021,-0.07368351,0.7437968,0.13603747,-0.09279282,0.636986,0.15792926,-0.5835893,0.2658865,-0.07900949,-0.060865946,0.10794351],[-0.006779099,2.004387,6.8607817,-0.23751183,-1.6587999,0.09422444,-0.4874676,-0.5578516,0.5310813,1.6710776,-0.91060466,1.1751448,0.7926426,-0.19524321,-0.49832276,-0.68435484,-0.74160784,0.2320687],[-0.42611358,0.49704134,0.061547905,-0.31928867,0.5029787,0.8141926,-0.7419139,-0.19156225,0.8684419,0.06434307,-0.030311767,0.6344357,0.23724514,-0.786067,0.063948646,0.2718977,-0.096927255,0.02907163],[-0.0020692998,-1.7009348,0.038647033,0.13782075,0.0035963166,-1.8036139,1.506227,-0.012708647,-0.3238854,-0.11025291,0.08421155,-0.47822404,-0.21775703,0.98227096,0.5762303,-0.2504151,-0.04809817,-0.23663491],[1.6555676,-0.24368818,0.047565427,0.48294827,-0.24731039,1.2580825,-0.6229123,-0.16432685,-0.1041179,-0.058522437,0.10651611,0.31825465,0.34657153,-0.9056155,-0.25984085,-0.22779177,0.15267563,-0.16960645],[0.0037644738,2.2035384,-0.26136458,-0.24882643,1.9434549,2.1926913,1.2461177,1.196908,0.7997137,0.6749713,0.168482,0.024462335,0.3614625,0.2324969,0.38785332,0.30951214,-0.15484615,-0.023371682],[1.6319045,0.20060556,-0.046149492,0.25747207,0.40403402,-1.5326216,1.2633929,-0.11975938,-0.27659348,-0.01779074,0.17242773,-1.23197,-0.16269825,0.64393556,0.27350065,0.7107626,0.2205556,-0.44941023]],"activation":"σ"},{"dense_2_W":[[0.688743,-0.23856077,1.3524743,-1.0059541,0.48964348,0.16091633,-0.8487965],[-0.8221493,-0.6588716,-0.39466858,0.70084,-0.7679724,0.19794145,0.25073692],[-0.3579931,0.12520991,-0.061575927,-0.33722153,-8.587289e-6,-0.65669745,0.36834475],[-0.4896118,0.09266889,-0.091803305,0.58836436,-0.09530183,-0.29224685,-0.11824604],[1.4330658,0.47080937,0.83529705,-1.4794953,1.1691287,-0.38773456,-0.850906],[-0.17573813,0.15940154,-0.0883046,0.14367807,-0.2713903,-0.58145833,0.1813966],[0.16333255,-0.5058434,-0.151819,-0.31104934,-0.48204994,-0.5709609,0.1097057],[-0.11952788,1.132746,1.7155647,-1.0979568,0.5267555,-0.32039446,-1.5178013],[-0.6666372,-0.6210934,0.08266941,-0.26039764,-0.58124655,-0.1659565,0.012729861],[-0.81480265,-0.19473615,-0.09725363,-0.25143594,-0.18920764,0.05540429,0.08028312],[0.30783543,0.53514826,0.6950099,-0.83681816,0.28347406,0.09319918,-0.9719728],[-0.5300102,-0.09198815,-0.17771126,0.35486326,0.044223923,-0.62166435,0.06565767],[0.2399586,-0.4612763,-0.2989993,0.13399556,-0.853747,-0.038706385,0.35972396]],"activation":"σ","dense_2_b":[[-0.35425124],[0.109308064],[-0.031559847],[-0.0003400682],[-0.21089287],[-0.2585232],[-0.19723703],[-1.0296504],[0.08535486],[-0.0011093448],[-0.38453248],[0.01864399],[-0.022892497]]},{"dense_3_W":[[0.16066022,-0.45942912,-0.5723236,0.33713955,0.5059241,-0.35243854,0.2291558,0.025299186,-0.2669662,0.21250063,0.36912894,-0.59875554,-0.45286608],[-0.3987386,-0.2368262,-0.4920192,0.64763784,-0.16727564,-0.56451935,0.29059148,-0.33601287,-0.3881739,0.27909118,0.092289515,0.09268704,-0.16298614],[0.29671025,-0.6581518,0.3455493,-0.5484271,-0.058288824,0.041621033,-0.29955027,0.52763146,-0.6336574,-0.5787685,0.54040813,0.41626728,0.18120344]],"activation":"identity","dense_3_b":[[-0.0040779626],[0.020526942],[-0.0043588714]]},{"dense_4_W":[[1.1190621,-0.49331972,0.6428077]],"dense_4_b":[[-0.005149732]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json new file mode 100644 index 0000000000..de4835015d --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/SUBARU_OUTBACK_PREGLOBAL.json @@ -0,0 +1 @@ +{"input_std":[[7.13507],[0.8047875],[0.9592971],[0.03719803],[0.81574184],[0.8139086],[0.8110526],[0.7843396],[0.7788054],[0.7745202],[0.7777087],[0.036984026],[0.03703481],[0.03710598],[0.037252665],[0.03730232],[0.0371585],[0.036896]],"model_test_loss":0.007393167354166508,"input_size":18,"current_date_and_time":"2024-01-04_23-04-03","input_mean":[[19.339607],[-0.023407113],[0.017601725],[0.0026906498],[-0.038862906],[-0.034542315],[-0.030135728],[-0.026610933],[-0.02051616],[-0.01604727],[-0.013370617],[0.0026659176],[0.0026913318],[0.0026833338],[0.002521619],[0.0023918578],[0.0022160034],[0.0019911316]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.05245382],[0.035864953],[-0.039355293],[1.5467168],[0.5919037],[1.5804634],[-0.11111225]],"dense_1_W":[[-0.003914714,-0.16665092,0.8045877,0.42955527,0.042900115,0.3204456,0.35248685,0.6244836,0.37365505,0.1018958,-0.27139,0.36162248,0.29024374,0.44181496,-0.25224727,-0.61896217,0.049917817,0.03403082],[0.0018431861,0.1859696,0.15934391,0.28837445,-0.3073335,-0.8031571,0.23849526,0.082833655,-0.5834504,0.17749217,-0.030166363,-0.10682262,-0.4260385,-0.38520503,0.6312785,0.7124632,-0.22725351,-0.3664909],[0.00086988,0.9063901,0.20099123,0.08871661,-0.36750826,0.2198721,0.031094799,0.19992219,-0.5177974,0.046962358,0.08928185,0.26005623,0.34793183,-0.451968,-0.38569394,0.34223,-0.38488138,0.1793232],[0.8162148,0.29020473,0.18275267,-0.35776222,-0.28510228,0.46595475,-0.6616128,0.195398,0.26881757,0.059817094,-0.13620366,-0.4805491,-0.012386888,0.39424053,0.36542693,0.031057728,0.62587917,-0.565165],[0.037288748,-0.046608564,-0.060034525,0.67498976,-0.22178993,-0.8245154,0.23886381,-0.28326404,0.111875124,-0.77013075,-1.328114,1.0840845,0.9611771,0.2557407,0.3975159,0.8245138,1.562315,2.8953738],[0.8202544,-0.25984216,-0.19078176,0.13980138,0.51260155,-0.49194804,0.34185478,-0.21916452,-0.14230296,-0.06628551,0.1172867,0.020271447,0.29334098,0.2251678,-0.67696583,0.022016034,-0.59790677,0.5738815],[0.00095800374,0.050649557,-6.683648,-0.31581786,-0.32105008,0.5734178,1.9580009,-1.7619663,-0.7830262,-0.80728334,0.9367744,-0.1321611,-0.28173265,0.20762457,-0.046792764,0.3204709,0.7585857,-0.5031118]],"activation":"σ"},{"dense_2_W":[[0.06599863,-0.077938765,-0.46291193,0.23650317,-0.027708977,0.63160855,0.6188505],[0.36912426,0.15749967,-1.2303185,-1.2359545,-0.4095874,-0.4303089,0.922016],[0.08544567,-0.43779898,0.59003,0.5278192,-0.36819986,-0.5301048,-0.44207993],[0.5843524,0.8583482,-0.88859177,-0.8168985,0.12438766,0.36272177,-0.26470038],[-0.012072821,-0.110501334,0.20674299,-0.33450037,-0.34117457,-0.35198018,-0.2976915],[-0.16229798,0.27463567,-0.19243562,0.23463425,-0.40173936,1.0653771,0.6385723],[-0.5187056,-0.773393,0.43217546,0.65371454,0.03403764,-0.6496487,0.23940846],[0.37576345,0.26045048,-1.0047446,-0.353597,0.61323655,0.2752646,0.0003494541],[0.22740726,-0.9556307,0.15197575,-0.54765016,0.30160198,-0.34819916,0.30487126],[-0.5722699,-0.54196566,0.89174616,1.0433967,0.45892256,0.113816425,-0.2416469],[-0.5446902,-0.8540217,0.2916834,-0.47284833,0.36037326,-0.46815297,-0.5791224],[0.27263904,-1.359365,0.85842407,0.54602545,-0.17842472,-0.6866763,0.72361666],[-0.06596796,-0.30877677,1.0769781,0.58296657,-0.6865365,-0.34627205,-0.57615745]],"activation":"σ","dense_2_b":[[0.037269842],[-0.135715],[0.10579589],[0.0045449715],[-0.025380367],[0.13895194],[-0.04382961],[-0.057845958],[-0.19544882],[0.032584503],[-0.027338741],[-0.041977383],[0.15147693]]},{"dense_3_W":[[-0.5543271,-0.7858436,0.31829223,-0.61404854,0.37950537,-0.4407362,-0.10451055,-0.1897724,-0.006352851,0.38131055,0.313605,0.34909454,0.10177992],[0.408599,0.1036969,0.008981054,-0.26271266,-0.19486478,0.27475658,0.05352325,-0.21086176,-0.53847146,0.051870942,-0.105526984,0.55770934,0.2596486],[0.061677825,0.32905743,-0.71210945,0.16829975,0.2798448,0.4744422,-0.42504826,0.4273275,-0.07462389,-0.15490934,-0.61943233,-0.66081953,-0.4729292]],"activation":"identity","dense_3_b":[[-0.076288804],[-0.03769022],[0.10184652]]},{"dense_4_W":[[0.5649773,0.012187176,-1.0137211]],"dense_4_b":[[-0.08833705]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json new file mode 100644 index 0000000000..9ae1f90bbb --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON.json @@ -0,0 +1 @@ +{"input_std":[[7.154972],[1.2219579],[0.5249089],[0.04609643],[1.2129667],[1.2152725],[1.2187766],[1.1979939],[1.1835413],[1.1609851],[1.131695],[0.045940075],[0.04595876],[0.045979664],[0.04583899],[0.045701966],[0.045422513],[0.045092262]],"model_test_loss":0.008101926185190678,"input_size":18,"current_date_and_time":"2023-08-10_23-56-46","input_mean":[[25.387062],[-0.10944313],[-0.008544132],[-0.00804191],[-0.107888475],[-0.10920066],[-0.110173844],[-0.1106636],[-0.109646805],[-0.109096535],[-0.105106495],[-0.008129847],[-0.00813124],[-0.008141087],[-0.008092408],[-0.008060575],[-0.008140952],[-0.0083157625]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.016645644],[-0.11951427],[-3.1821578],[-0.0059933704],[2.8677177],[0.031116206],[0.20521815]],"dense_1_W":[[0.00011691521,-0.0047739935,-0.0046798335,-0.23095101,0.67633355,-1.4215347,0.22167856,0.0051140105,-0.14782095,-0.18156183,0.16303727,-0.81555355,0.058726236,0.5032197,0.574162,0.18640463,0.21730764,-0.22049814],[-0.00011825084,0.4686856,-0.009756203,0.35097203,0.10730735,0.94829154,-0.6940468,0.19106765,0.12124054,0.025897067,-0.02768527,0.53336066,-0.23076952,-0.3619648,-0.4279046,0.022291774,0.13861004,0.018763274],[-0.7304196,-0.08818808,0.56801623,-0.09857474,0.34234688,1.0349541,-0.33047348,0.61446273,0.32419196,-0.050662857,0.2637253,0.20039666,-0.47378713,-0.3956067,0.009646421,0.390048,-0.008849323,-0.2498262],[0.0060903383,-0.49549666,-0.01697434,0.22030751,0.020088006,-1.0179988,0.80875695,0.441826,0.09327719,-0.029645108,-0.40414256,-0.45891628,-0.2560797,0.59599686,-0.012949928,0.30637464,-0.16429852,-0.077907525],[0.70374584,-0.01092509,0.540549,-0.40865657,0.1392593,1.3607061,-0.68692255,0.6964351,0.19591267,0.18743542,0.12110344,-0.008305118,0.15106158,-0.94731086,0.56679606,0.27371135,0.24476646,-0.47326928],[0.003219834,-0.25791815,0.1770013,0.058168087,1.0995903,-0.48271948,0.2528091,-0.021289961,0.10542952,0.6813602,0.28741544,0.007509176,-0.5195496,0.22631004,0.0013342625,-0.17950559,-0.054088753,0.010088536],[0.012934697,-0.99158263,-7.329649,-0.14901392,0.7383594,-0.13131715,1.0090424,-0.52978915,-1.10985,-0.26590362,0.9192803,-1.023092,-0.21835378,0.3614904,0.39267102,0.17742208,0.27959663,0.0059155384]],"activation":"σ"},{"dense_2_W":[[-0.16192931,-0.46922514,0.20061032,-0.22314207,-0.3545485,0.24491267,-0.17598084],[-0.6500808,0.5197684,-0.086435065,-0.06399719,0.93517494,-0.32023647,-0.2368111],[-0.85317075,0.6300723,0.9634644,-0.26148096,-0.30289555,-0.27350643,-0.3997722],[-0.9474749,1.5257666,-0.58592016,-0.20490168,1.7460821,-0.54258883,-0.72248006],[0.61233485,-0.52019024,-0.20221208,0.75963235,-0.63291365,-0.16668685,-0.14107104],[0.5829932,0.20956525,-0.5917082,0.334232,-0.5782333,-0.37722242,0.111714475],[0.3291867,-0.077928744,-0.13658442,-0.25665778,0.35779083,0.36474347,-0.293335],[-0.121685565,0.24806523,0.18834944,-0.46779516,-0.31577477,-0.22564404,-0.23130432],[0.4297668,-0.03992685,-0.7625169,0.4358002,0.46087322,0.59285825,0.27673835],[-0.47832817,0.57294714,0.25306076,-0.7069487,-0.017084602,0.052525472,-0.30928266],[0.7133705,-0.19208045,-0.30594656,0.40949252,-0.268573,0.33327693,-0.09717502],[-0.5436785,0.2889737,0.51880294,-0.56072646,0.9260692,0.107343785,-0.1836568],[-0.936714,0.88693315,1.2621549,-0.7801531,-0.4495786,-0.3362016,-0.5123693]],"activation":"σ","dense_2_b":[[0.011130354],[0.04997472],[-0.18216753],[0.3452406],[-0.02403721],[-0.06878961],[-0.004139792],[-0.2698251],[0.015881905],[-0.16309522],[-0.029837111],[0.04389526],[0.0100675905]]},{"dense_3_W":[[0.59172153,-0.13653415,-0.40732333,-0.29746622,0.42562142,0.1004339,-0.005074904,0.06819323,0.40120095,-0.28921607,0.5362933,-0.52448,-0.6777314],[0.2645431,0.3248634,-0.5370929,0.124842614,-0.29716966,0.063039936,0.011938057,0.31424755,0.38555825,-0.09687765,-0.33130735,-0.3187058,0.33251473],[-0.19941787,-0.4079571,-0.42453167,-0.505169,-0.03318176,0.3900114,0.53974134,-0.019272683,0.004807314,0.32995415,0.29342985,-0.40301663,0.2627771]],"activation":"identity","dense_3_b":[[0.04678321],[-0.041011743],[0.04454892]]},{"dense_4_W":[[-1.0930591,0.32782602,-0.2925129]],"dense_4_b":[[-0.047076307]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json new file mode 100644 index 0000000000..82716f590e --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_2019.json @@ -0,0 +1 @@ +{"input_std":[[7.541552],[0.9650358],[0.3616818],[0.0328642],[0.9578452],[0.96073836],[0.96248627],[0.9491477],[0.9337077],[0.908715],[0.8812584],[0.032887284],[0.03287074],[0.032852463],[0.03271584],[0.03264729],[0.032499015],[0.03240248]],"model_test_loss":0.008866102434694767,"input_size":18,"current_date_and_time":"2023-08-11_00-47-36","input_mean":[[27.210583],[0.020935686],[-0.008948258],[-0.0069724205],[0.023982191],[0.02277414],[0.021633722],[0.018200217],[0.016092353],[0.01634521],[0.017552482],[-0.0069776564],[-0.0069683734],[-0.0069624],[-0.006934479],[-0.006922422],[-0.0069089876],[-0.0069400943]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.13328256],[-0.19930688],[1.0697682],[-0.5783517],[-1.5640957],[-0.92074555],[0.96863127]],"dense_1_W":[[-0.06047806,0.59424174,0.13268892,-0.21197622,-1.1050072,1.247896,-0.24135092,0.1444364,0.14218198,-0.2759823,-0.18579857,0.7423415,0.22738951,-0.2590543,-0.6573962,-0.107646905,-0.07558396,0.037075613],[-0.058194548,1.2433497,5.1614676,-0.020125298,-0.25091216,0.578058,-0.16740562,0.6148966,0.31894976,-0.42848128,-1.5423061,0.5142165,0.0080127595,-0.24593866,-0.23782809,-0.28146613,-0.10563642,0.2612805],[0.7431013,-0.52715963,-0.0064738155,-0.08120712,-0.10666046,-0.039603,-0.2889496,-0.27379817,-0.18491645,-0.2114326,-0.031808507,0.067143545,0.24152419,-0.46100402,0.12406786,0.5035436,0.19000971,-0.40269852],[-0.093319766,-3.5038989,0.026366359,-0.10428085,-1.5910784,-2.6836565,-1.729896,-1.2727953,-0.6854482,-1.3142506,-0.82473946,-0.24805659,0.30157104,0.10064682,-0.2649021,-0.45221263,-0.003649908,0.3906365],[-0.19653389,-1.1956127,-0.0013261554,0.20242849,0.5268085,-1.1662431,0.5995818,-0.21107472,0.035844564,-0.37587917,-0.010125557,-0.5800509,0.2748382,0.28321275,0.2552108,-0.22593613,0.1699103,-0.20041217],[-1.6779865,0.010922188,0.2911208,-0.18096207,0.6596778,-0.7872427,1.278464,0.4307826,-0.2584428,-0.3280948,-0.16272934,-0.3561698,0.31419376,0.30760053,0.45000735,-0.60065556,0.07380751,-0.7342767],[0.22576395,-1.2693808,0.00051059003,0.22724408,0.53528285,-1.052841,0.42936927,0.15097113,-0.21617922,-0.10659611,-0.13288835,-0.32452956,-0.29022405,0.43584242,0.565457,-0.4026171,0.10766105,-0.16005303]],"activation":"σ"},{"dense_2_W":[[0.40149835,0.36675823,-0.29831505,0.37289986,-0.6039201,-0.027274264,-1.1339715],[0.95495695,-1.3851566,0.358178,0.49656358,-1.2546502,-1.3234615,-0.39220563],[-0.84305114,0.33130413,-0.39270082,0.1366223,0.8356403,-0.71874714,0.6702931],[0.32502848,0.22423606,-0.3198426,0.69494843,-0.84058,-0.57765996,-1.1503054],[-0.55475,-1.0512786,-0.467161,0.23049785,1.171586,0.24218969,-0.14599386],[0.27919522,-0.6080323,0.83328724,0.4167502,-0.11279212,-0.19312277,1.0808055],[-0.98002326,-0.06683307,0.073704205,-0.7713237,0.36600292,0.32792312,-1.2809395],[-0.099299915,0.7157585,-0.69559073,-0.74590826,0.03745077,0.67139316,-1.3220712],[-1.1977009,-1.1743606,-0.8824673,0.82422435,1.4812046,0.54254943,-0.24748902],[-0.94787806,0.20738822,-0.0680158,-0.47344378,0.016936,-1.4717607,0.38640186],[-0.27705613,0.5600628,-1.2770342,-1.2288101,0.3837186,0.54160005,-1.0739172],[1.0531577,0.14682527,0.31090853,-0.22525707,-0.51124835,-0.16686235,-0.69970435],[0.54132354,-0.55377156,0.16552292,0.4777185,-0.91318285,-0.39976725,-0.8804106]],"activation":"σ","dense_2_b":[[-0.15207723],[-0.4524892],[-0.31112808],[-0.14511883],[-0.2907099],[0.035733145],[-0.59132564],[-0.091714524],[-0.3527001],[-0.18239608],[-0.123493806],[0.0051953667],[-0.010544346]]},{"dense_3_W":[[0.39324093,0.2485198,0.08692321,-0.18120968,-0.0657239,-0.034891907,0.5671789,0.31177345,-0.93040633,0.09452528,-0.25895926,-0.034117304,0.25137582],[0.25416353,0.0061438996,0.28148532,0.6699385,-0.74332523,-0.50077397,-0.46912852,0.711142,-0.830241,0.33939067,-0.19935456,0.069085754,0.578044],[-0.30625167,-0.4704901,0.5801462,-0.38525173,0.31889287,0.25167635,-0.11409451,-0.62698126,0.7056928,0.44565654,-0.42508173,-0.60673165,-0.41772822]],"activation":"identity","dense_3_b":[[-0.068453945],[-0.056202423],[0.09645773]]},{"dense_4_W":[[0.16098852,0.15347017,-0.7822183]],"dense_4_b":[[-0.068720676]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json new file mode 100644 index 0000000000..4d6b4af069 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_AVALON_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[8.376422],[1.2837375],[0.54391617],[0.049378082],[1.2814487],[1.2804018],[1.2795964],[1.2587454],[1.2385764],[1.21357],[1.1835355],[0.049072966],[0.049108904],[0.049148303],[0.049186878],[0.04908979],[0.048760086],[0.048228707]],"model_test_loss":0.009066876024007797,"input_size":18,"current_date_and_time":"2023-08-11_02-01-41","input_mean":[[23.067575],[-0.03366158],[0.0044186297],[3.4665016e-5],[-0.033809688],[-0.03444663],[-0.03468704],[-0.03309283],[-0.032493494],[-0.034124184],[-0.029784737],[-0.00010160864],[-7.466988e-5],[-4.264505e-5],[5.8855418e-5],[0.000106093255],[7.4934855e-5],[4.8816368e-5]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.1810939],[0.052338526],[-0.030882858],[0.033140995],[2.9087296],[-2.895278],[0.054216754]],"dense_1_W":[[-0.022466678,-0.079283744,0.015348881,-0.093145974,-0.50897855,1.1005377,-0.3424491,0.16023882,0.24858536,-0.28342143,0.08719842,0.11321456,0.25237224,-0.3242571,-0.16660848,0.08039433,0.2296425,-0.12092014],[-0.010926074,-0.5342929,0.014211034,-0.22288138,0.12526701,-0.6431979,0.11048157,-0.027558114,0.5129509,0.031701602,-0.28270888,-0.3469483,-0.0359589,0.3054121,0.42384326,-0.21366577,0.24789678,-0.21054278],[0.0015054089,-1.0920098,-4.1715555,0.42466384,0.8594457,-0.057574112,0.195077,-0.14336777,-0.934818,-0.14249723,1.1195656,-0.50157344,-0.34849435,0.4064381,-0.10914302,-0.09259135,-0.043489303,0.17882638],[0.00050957524,-0.5727624,0.02629925,0.039537206,0.07295519,-1.0905142,0.65514714,-0.22721705,0.10285973,0.015500398,-0.07354051,0.10782978,-0.2973014,0.10234221,0.40134785,0.31354493,0.075327724,-0.033144545],[1.1313975,0.27665266,0.21540989,0.474714,-0.542695,0.45748472,-0.534559,0.33019224,-0.00932876,0.37130055,0.01740698,-0.07030619,0.3058859,-0.33302706,-0.18166807,0.05664913,-0.020655787,-0.18409492],[-1.1192006,0.46339068,0.21362849,0.07990121,-0.11141043,0.052170627,-0.7601721,0.25794908,0.29454672,-0.019299706,0.18099277,-0.069216594,0.12746179,0.16600643,-0.2266845,0.04666312,0.26312882,-0.34587502],[-0.033930384,-0.5281495,-0.02478823,0.35514218,0.37443575,-0.93885845,0.8630589,0.32345197,-0.43721947,-0.22540626,0.31314182,-0.19791576,-0.45503795,0.42438814,0.15826641,0.10125901,-0.2744716,-0.007187695]],"activation":"σ"},{"dense_2_W":[[1.0154629,-0.040800903,-0.29480615,-0.579116,0.63008493,-0.16830389,-0.52992606],[-0.44676533,0.70518833,0.22363839,0.3335365,0.15123695,-0.5413408,-0.18469663],[-0.15817617,0.34588996,0.3173453,0.2432257,0.2876003,-0.55385196,0.09101465],[0.30243352,-0.56498605,-0.47895545,-0.24933416,-0.20325784,0.55106956,0.04037954],[0.03340286,-0.7613887,0.005524847,-0.34229973,0.020817522,0.70795476,-0.58045375],[0.32800585,-0.61029744,-0.37881643,-0.0494688,0.6649441,0.5878182,-0.693103],[-0.78130317,0.32768852,0.0486751,0.6938225,-0.6449391,0.19077687,-0.20455292],[-0.003070534,-0.25178492,-0.1787414,-0.18577683,-0.855277,0.05078717,-0.23962548],[-0.8574637,-0.55484927,0.11038485,-0.22769281,-0.8112205,-0.5803483,0.39239252],[-0.02281288,-0.18713373,-0.18762249,-0.36472616,0.6542259,0.41985798,-0.57571363],[-0.37003383,-0.7053904,0.16818082,-0.6309228,-0.42156786,0.28068355,-0.52919596],[0.7441994,-0.606726,-0.21135445,-1.1177553,-0.23082832,0.5370549,-0.3296431],[-0.82947385,0.6298715,-0.0031728123,0.59570336,-0.2874936,-0.56689715,0.31978017]],"activation":"σ","dense_2_b":[[0.12730335],[-0.017174786],[0.008333773],[-0.1725905],[-0.08095016],[0.022734491],[-0.03200295],[-0.2865707],[-0.23485084],[-0.041974284],[-0.26037046],[0.00494856],[-0.008746482]]},{"dense_3_W":[[0.5768022,-0.69957966,-0.57344234,0.18022925,0.18167411,0.10279416,-0.60731447,0.57294464,-0.15860513,0.55548793,-0.0742402,-0.03724561,-0.46468896],[-0.6463308,-0.08468973,-0.057763796,-0.15337418,-0.5244671,-0.41263047,0.41524106,0.17037424,-0.16188715,-0.28470117,0.10638861,-0.22415741,0.76425564],[-0.30938473,0.20329902,0.43855524,0.0105835125,-0.13655424,-0.32343802,0.59270227,0.6068919,0.56710804,0.56215036,-0.60497534,-0.4761755,-0.007562395]],"activation":"identity","dense_3_b":[[-0.028258],[0.046470042],[0.021202732]]},{"dense_4_W":[[0.7616137,-1.0874788,-0.41413057]],"dense_4_b":[[-0.037305925]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json new file mode 100644 index 0000000000..112a029733 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY.json @@ -0,0 +1 @@ +{"input_std":[[8.383597],[1.5203282],[0.5082514],[0.0518889],[1.5132513],[1.5174434],[1.5199335],[1.4851471],[1.4453254],[1.3881189],[1.3348266],[0.051785868],[0.051798876],[0.051812388],[0.051785596],[0.051688608],[0.051483054],[0.051126033]],"model_test_loss":0.009930684231221676,"input_size":18,"current_date_and_time":"2023-08-11_08-01-58","input_mean":[[25.470009],[0.0042077163],[-0.0003353114],[-0.0023303148],[0.0042589367],[0.0040556374],[0.0040202853],[0.0027058893],[0.0012695856],[0.0030413663],[0.005136044],[-0.002385892],[-0.0023771315],[-0.0023616166],[-0.0023057486],[-0.0023015393],[-0.0022862742],[-0.0023375773]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.2718573],[0.15701862],[3.248821],[-3.5744123],[0.004125263],[-0.7583393],[-0.037708215]],"dense_1_W":[[-0.2879904,1.5954516,-0.0046582473,0.06479758,0.29433665,0.8528065,-0.6544351,-0.4978888,-0.0794865,0.468229,-0.05461509,0.9035509,0.15841998,-0.54152334,-0.4469752,0.07425236,-0.11780557,0.12198392],[0.006679829,0.40255344,0.009154457,-0.16641183,-0.39951205,1.4443473,-0.9139237,-0.057986554,-0.11843848,-0.0044754846,0.0925529,0.5124026,-0.0049318043,-0.2537788,-0.14938481,-0.224736,0.047049627,0.13330497],[1.7283604,-0.05969189,1.0530555,0.27028522,0.47397172,0.5086671,-0.63976616,-0.19285004,0.49581873,0.13492277,0.20006694,0.06384355,0.24601626,-0.3723971,-0.032245487,-0.13195412,0.31266445,-0.18301867],[-1.8633327,0.22747979,1.1220167,-0.02145294,0.28228733,0.85233575,-0.9075951,0.069776304,-0.18778838,0.56500834,0.1422919,0.41182467,0.2542804,-0.911527,0.53582734,0.023306668,0.07635535,-0.1735968],[0.022620516,-2.0202289,-4.6984797,0.37025738,1.6879617,-0.1484365,0.5125165,-0.90959346,-1.2976298,0.01080667,1.3414408,-0.295309,-0.27262625,0.2460714,0.11705216,0.34596816,-0.040567875,-0.3704739],[-0.1562062,-1.5769467,0.00974286,0.12022318,-0.060521524,-0.64386684,0.3535075,0.28329223,0.20385851,-0.23411226,-0.05331302,-0.43988168,-0.62577605,0.77806795,0.18664421,-0.41524816,0.19130825,0.045515057],[0.0025923399,-0.49789965,0.0048285224,0.0648064,0.5884254,-1.1329092,0.41850495,-0.10409346,-0.48019585,0.07617594,0.13875124,-0.41700658,-0.12853211,0.72437525,0.18255632,0.032605115,0.12712069,-0.07419187]],"activation":"σ"},{"dense_2_W":[[-0.7156104,-0.68829536,-0.7385952,0.55841655,0.26912323,0.6066667,-0.12475776],[-0.511934,-0.9153065,-0.6389169,0.3585597,0.2839266,0.5098371,0.50414217],[0.2944038,0.5859187,-0.5172965,0.3677821,0.054128557,-0.08085657,-0.89583373],[0.33193415,-0.5547596,-0.023806248,-0.48235148,-0.221697,0.033068255,0.5705964],[-0.46894178,-0.10590048,0.21662314,-0.040064402,-0.3858671,-0.44947234,0.59122],[-0.60725653,0.3228978,0.1861176,-0.2924726,0.42708892,-0.082993455,0.22582808],[-0.2562046,0.8381702,0.31616238,0.24505608,-0.12987854,-0.6930256,-0.76575553],[0.61845154,0.60325474,-0.575144,0.40564325,-0.714385,-0.21887647,-0.94107187],[-0.54684615,0.11815464,-0.6585375,-0.25468546,-0.09934533,0.117599614,-0.38795406],[0.16209334,-0.35611826,-0.15108901,-0.21047153,-0.3256097,0.28901953,0.80304426],[0.027611624,0.50159204,0.619658,-0.12446912,-0.59465826,-0.037129514,-0.21241622],[0.27525434,0.5680337,-0.107110925,0.24088366,0.043958385,-0.86346936,-0.64997584],[-0.024266828,-0.11527472,0.3829225,-0.17169206,0.08911536,-0.8643167,0.06748397]],"activation":"σ","dense_2_b":[[-0.17570926],[-0.14594816],[-0.05026906],[0.027095933],[-0.04517862],[0.06473192],[-0.028851002],[-0.12211885],[-0.27259725],[0.014737305],[0.02095205],[-0.070182],[-0.09559173]]},{"dense_3_W":[[0.4202054,0.703193,-0.3041087,0.48369282,0.1436207,0.37104702,-0.63816553,-0.58745027,0.13683067,0.5385481,-0.46124828,-0.5352316,0.19800703],[-0.86401147,-0.18695252,0.62547266,-0.68338186,0.10880029,0.3713409,0.027055534,0.41835827,0.27228013,0.11604386,-0.0106600085,0.20140606,-0.10059595],[0.056002628,0.035810802,-0.3965656,0.3976536,0.1726735,0.31009713,-0.09359465,-0.0209684,-0.26736382,-0.1666654,-0.5963385,0.03144756,-0.447781]],"activation":"identity","dense_3_b":[[0.022595499],[-0.16177715],[0.034701686]]},{"dense_4_W":[[-1.0497395,0.08801628,-0.6607149]],"dense_4_b":[[-0.026550818]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json new file mode 100644 index 0000000000..3b3aae741b --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CAMRY_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[8.547318],[1.4036797],[0.56934917],[0.04350854],[1.398559],[1.4011317],[1.40228],[1.3770106],[1.348263],[1.3074721],[1.2626077],[0.04330501],[0.043371696],[0.04343371],[0.04348332],[0.043410856],[0.04321263],[0.042814735]],"model_test_loss":0.008338634856045246,"input_size":18,"current_date_and_time":"2023-08-11_11-04-26","input_mean":[[23.64889],[-0.08561094],[0.015752671],[-0.004257724],[-0.08625081],[-0.08638373],[-0.08567994],[-0.077275604],[-0.06842236],[-0.056570813],[-0.04640004],[-0.004200933],[-0.004198378],[-0.004202762],[-0.004259174],[-0.004245101],[-0.0042204647],[-0.00425349]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[1.1003305],[-0.9280888],[-0.27994263],[-0.03601646],[1.0726995],[1.5954292],[-0.07318528]],"dense_1_W":[[0.6028892,-0.5008186,-0.024919089,-0.12623027,-0.4729594,-0.38648638,0.2822896,0.09087385,0.01636962,0.024747238,-0.29404536,-0.18406688,-0.31876472,0.48221767,0.5086306,-0.06562299,-0.21337883,0.11643904],[-1.1941831,0.17382993,0.22181809,0.23333201,0.5458071,-0.43223855,0.5926918,0.3491883,0.1278165,0.50286424,-0.43537652,0.19344032,-0.26665846,0.11812404,-0.28001395,-0.3216877,-0.14064364,0.15485847],[0.07623883,1.5235251,6.7465596,-0.13723375,-0.80104774,-0.61400336,-0.39275688,0.5211227,0.37626675,0.3823852,-0.80926275,0.23730527,0.34998953,0.20261207,-0.464487,-0.30715373,-0.26015738,0.43704194],[0.12629938,-0.28819624,-0.09535608,0.16085212,-0.16898133,-0.6793061,0.43381187,-0.2702881,0.065844,-0.1441075,0.040372517,-0.117076926,-0.32687485,0.5354,-0.1250812,-0.19841617,0.3460908,-0.06750503],[0.4682372,0.59703195,0.034524012,-0.006926566,0.060249697,1.3168854,-0.9804278,0.074283265,-0.18839869,-0.07103339,0.32018688,0.041558877,-0.04179399,0.012026822,-0.15508115,-0.1332163,0.27430537,-0.18467638],[1.3037213,0.2139271,0.22422606,0.17373297,0.19543481,0.09874217,0.3998748,0.6430583,0.08877143,-0.05584769,-0.13569269,-0.4579002,0.12869297,0.39104635,-0.1829238,-0.2530643,-0.1974048,0.08369768],[0.088082924,-0.44940168,-0.19933243,0.07069701,0.7149304,-1.0380019,0.71266985,-0.4369744,-0.552529,-0.23388147,0.6032971,-0.16139722,-0.3540249,-0.026191853,0.60969,0.28289405,0.11056004,-0.31100357]],"activation":"σ"},{"dense_2_W":[[-0.6133522,0.1761722,-0.71424717,-0.0936426,0.8682251,-0.24639517,-0.30397138],[0.34320208,-1.0336052,-0.4439255,-0.2739278,0.3367824,-0.3631442,-0.98396087],[-1.6413774,0.08594568,0.71144843,-1.0480727,-0.11629067,-1.6811962,-0.8675772],[0.47143686,0.089915365,0.26338518,0.68463236,-0.97531956,0.32513487,0.65076643],[-0.87128234,0.064365715,0.1303472,-0.75249237,-0.25511387,-0.7430213,-0.28605184],[-0.7603966,-0.29632324,0.0682258,-0.7471322,0.5153051,-0.53268844,-0.21521862],[-0.3656277,-0.07363712,0.18693501,-0.9983321,0.69527906,-0.45794705,-1.0309372],[0.2617154,0.46204823,-0.6687536,0.82395816,-0.88860583,-0.33870435,0.4618431],[-0.39958304,-0.23751055,-0.8149946,0.19134824,-1.4698569,-0.43517134,0.62668824],[-1.4046016,2.1539013,-3.988871,-0.39821678,-1.9340425,-2.1167135,-1.0858109],[0.38306925,0.64414614,-0.5527955,0.6701854,-0.68190986,-0.18758336,0.7660656],[-0.82904243,-0.2745322,0.2605575,-1.0301431,0.27432004,-0.93553334,-0.739551],[-0.23676038,0.9406503,-1.986441,-0.4191224,-1.5621673,-0.88484937,0.3910027]],"activation":"σ","dense_2_b":[[-0.027016891],[0.08464052],[0.028135099],[-0.38301256],[-0.3638506],[-0.040266816],[0.16827495],[-0.36882532],[-0.40422207],[0.02508533],[-0.56583065],[0.09229101],[-0.416409]]},{"dense_3_W":[[0.0040040226,-0.6369987,-0.71731246,0.6850001,0.09157595,-0.41231555,-0.90613884,0.46305528,0.5752972,0.6877244,0.514109,-0.35633194,0.5317168],[0.1646857,0.52076554,0.14491199,-0.7185544,-0.07474149,0.60757786,0.53968096,-0.19788566,0.4318167,-0.51503956,-0.30411977,0.5457501,0.3619558],[-0.47842056,0.16373217,-1.109826,0.52913445,-0.5961691,-0.18387295,0.009211785,0.38275075,0.036590163,0.72789955,0.15105984,-0.82491213,0.72040874]],"activation":"identity","dense_3_b":[[-0.1681641],[0.029928174],[-0.06739022]]},{"dense_4_W":[[-0.72666985,0.20831722,-0.5900348]],"dense_4_b":[[0.07989163]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json new file mode 100644 index 0000000000..90ff54f85d --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR.json @@ -0,0 +1 @@ +{"input_std":[[7.266456],[1.0311108],[0.42161182],[0.035121582],[1.0182426],[1.0210766],[1.024199],[1.0197712],[1.0053324],[0.98283356],[0.95835906],[0.03495412],[0.034997974],[0.03503269],[0.035035565],[0.034975693],[0.034770522],[0.034426987]],"model_test_loss":0.011608563363552094,"input_size":18,"current_date_and_time":"2023-08-11_04-58-44","input_mean":[[25.311535],[-0.031563792],[0.0060295113],[0.0037024636],[-0.034909807],[-0.034477167],[-0.03452592],[-0.032167524],[-0.028398417],[-0.025096538],[-0.02253926],[0.0035288066],[0.0035584755],[0.0035877393],[0.0036529114],[0.0036560637],[0.003644573],[0.0036541703]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.06250458],[0.7717496],[2.6856744],[-3.0798275],[-0.047530472],[-0.1521214],[-0.86107486]],"dense_1_W":[[-0.0058309548,1.6388441,6.026957,-0.7815384,-3.1444395,0.29995996,-0.6111942,1.4489828,1.5309435,0.9753039,-2.0177133,0.991274,0.99092865,-0.50581515,0.16233689,-0.99065316,-0.67018527,0.90234095],[-0.42814094,-0.57456744,0.0007794493,0.023858974,0.11595472,-1.2281862,0.6903777,0.243981,0.38887268,-0.085606225,-0.22763428,-0.020143623,-0.5932556,0.34875482,0.60443676,-0.12836404,0.1324796,-0.18602186],[1.1931428,0.05919804,0.05402463,-0.55798566,-0.36006367,0.7021459,-0.3192777,-0.27177683,0.6936569,1.2172635,0.96187454,0.38691327,0.35159546,0.032515947,0.16563621,-0.22681683,-0.04875851,-0.2965481],[-1.2964138,-0.2337551,0.0634739,-0.31843027,-0.3538266,1.1500596,-0.8726868,0.0036669122,1.0422454,1.1141241,0.9607149,0.40760738,0.06241413,0.11646168,-0.073522024,0.22547582,-0.30052686,-0.31555784],[0.0072235786,0.5063357,0.9562675,-0.48209998,-0.27141708,1.5686616,-1.061574,0.5231472,1.0100089,0.05071974,-1.886694,0.41332957,-0.06334984,-0.97750497,0.6102102,0.22696678,-0.06319088,0.0048847888],[0.006333134,1.688374,-0.0095348805,-0.66412175,0.28531587,2.01203,-0.1819137,-0.7547143,-0.31330884,0.35432032,0.33640975,0.016374094,-0.13819215,-0.15855257,0.40649945,0.33540976,-0.0046302704,-0.35495433],[0.4090967,-0.19826725,-0.0013017637,-0.5116933,0.38453588,-1.7476666,0.8353978,0.15093791,-0.14092202,0.31026828,-0.26896203,-0.28421417,-0.206051,0.5156937,0.7495738,0.24013326,-0.16817766,-0.15013888]],"activation":"σ"},{"dense_2_W":[[-0.28553647,0.51897234,0.3232974,-0.14583516,-0.6494069,-0.18854451,0.45899993],[-0.18945166,-0.7805358,0.21762379,0.06925927,0.1412742,-0.54521996,-0.49447703],[0.41819847,0.7103663,-0.36324528,-0.54330885,-0.2780997,-0.21234678,0.45622718],[0.45189,-0.30940267,0.2796695,-0.10068664,0.33236605,0.39892736,-0.23690474],[-0.00033029245,-0.2876081,0.21365881,-0.263795,-0.7780459,0.21173872,0.754661],[-0.4982613,-0.41572687,0.6875971,0.3845866,-0.026780535,0.85438734,-1.1519399],[-0.4147085,0.22912927,-0.54870033,0.3551388,-0.4057759,-0.1996842,0.34155196],[-0.46657288,-0.743298,-0.65183616,-0.358357,0.16232346,0.19327608,-0.015862346],[-0.5780829,0.48190355,0.42865816,-0.360802,-0.6834505,0.55482894,0.14401308],[0.51356256,-0.76134664,-0.3057201,0.3803027,-0.00610297,0.3648528,-1.0003062],[-0.690029,0.5113393,-0.7087683,0.38381904,-0.08314878,-0.2460164,-0.0017047548],[-0.2095539,-0.88663155,-0.05008726,0.3074065,0.52681,-0.06860818,-0.748798],[-0.44802594,-0.3936492,0.163376,-0.55659366,-0.3931171,-0.76979935,0.38669378]],"activation":"σ","dense_2_b":[[-0.017743433],[-0.26510626],[-0.018595928],[-0.17289363],[0.02423361],[-0.006021742],[-0.0071125105],[-0.2604571],[0.09466738],[-0.0020451464],[-0.07033006],[-0.2086756],[-0.26478064]]},{"dense_3_W":[[-0.53581256,-0.22029524,-0.03227938,0.33162057,0.11482841,0.61525244,-0.26008266,0.6051382,0.45775265,0.43236297,-0.58764994,-0.07332099,-0.5288951],[-0.18867671,0.37646073,-0.3081562,0.23591055,-0.38460404,0.13270791,-0.61747444,-0.24434201,-0.16632886,0.723561,-0.37653255,0.03962427,-0.027843077],[0.30763236,-0.4282034,-0.46785048,0.21578372,0.20392036,0.38424364,0.31873167,0.18515399,-0.6173425,0.64338654,-0.038045872,0.49573293,0.5208863]],"activation":"identity","dense_3_b":[[-0.009245349],[-0.0014893641],[-0.022675076]]},{"dense_4_W":[[0.41954702,1.1624148,0.5703593]],"dense_4_b":[[-0.004366342]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json new file mode 100644 index 0000000000..d7b16b7060 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_CHR_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[7.92219],[1.0339159],[0.6051184],[0.040277395],[1.0160568],[1.0193809],[1.0235395],[0.9978284],[0.9780647],[0.953401],[0.92466515],[0.04011991],[0.040149756],[0.040181845],[0.040220965],[0.040193263],[0.039972864],[0.039762717]],"model_test_loss":0.010501861572265625,"input_size":18,"current_date_and_time":"2023-08-11_06-39-21","input_mean":[[22.015877],[0.016454747],[-0.0035791518],[-0.006060402],[0.017588632],[0.018613027],[0.01872038],[0.01622388],[0.013543572],[0.008158607],[0.0060163783],[-0.0061950283],[-0.006164029],[-0.006132473],[-0.0060454626],[-0.006085043],[-0.0062024957],[-0.006308306]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.08562436],[-0.13248813],[-0.6056908],[3.7711034],[-4.002061],[-1.0201851],[0.7905752]],"dense_1_W":[[0.008472031,1.9303364,5.75964,-1.236273,-1.9233848,-0.20769979,-0.50922215,0.77782845,0.93831205,1.015304,-1.6144773,0.83374774,0.7880719,-0.17530817,-0.22706063,-0.8191557,-0.19291312,0.83966184],[-0.007752059,-1.7240039,0.08638296,0.4374327,0.8499669,-0.58740795,0.44271347,-0.43893647,-0.79377645,-0.470287,0.6905167,-0.25326452,0.004325121,0.4151441,-0.20191722,-0.93765545,0.24482074,0.20686845],[-0.73755896,0.25490418,1.6415513,0.61049616,0.10450067,-0.005047854,0.26623517,-0.40121377,-0.57618237,-0.105919234,0.49663854,-0.18851577,0.003680681,0.07382204,-0.7838218,-1.418447,-0.8041371,0.06338623],[1.506414,-0.7172249,-0.26160046,-0.3195705,0.061357655,-1.2254318,1.7426652,-0.39996,-0.8630745,-0.0965681,0.1755039,-0.43433473,0.072750255,0.7390096,0.6420074,-0.6429821,-0.19715068,0.40123448],[-1.462788,-0.25966784,-0.25197747,-0.74088174,-0.39430162,-0.6678362,1.4408759,-0.8539805,-0.67458963,-0.0025512646,0.098765895,-1.3845773,0.84524035,1.4456284,0.8360301,-0.89562434,-0.39231324,0.55299884],[0.96476454,-0.5160151,-0.058161568,0.09431531,0.24567744,-1.7172141,0.87807894,0.32966504,0.13244158,0.0830991,-0.20607454,-0.7199951,-0.3938647,1.0462891,0.21604428,0.09326921,0.23194839,-0.21566468],[-1.0580249,-0.091983035,-0.06607944,-0.14238882,-0.032799177,-1.615105,0.88772935,-0.1148385,0.30407813,0.14823009,-0.25907746,-0.43574435,-0.119376965,0.4874739,0.5467528,0.2210292,-0.21703728,0.02701344]],"activation":"σ"},{"dense_2_W":[[-0.34801432,0.25854328,-0.10087859,0.91155136,0.47692245,0.386249,-0.07805484],[-0.114083804,0.08665275,-0.40829253,0.5105505,0.50143373,0.42545924,0.43460196],[-0.07745485,0.19914009,0.59899527,-0.86949354,-0.60257334,-0.27688003,-0.39490694],[-0.35776904,-0.09782943,-0.3387631,-0.6445889,-0.13637964,0.037489194,-0.4306386],[0.3664335,0.082265064,-0.3529968,-0.21454561,-0.690712,-0.40638104,-0.22740813],[-0.0052428595,0.06399636,-0.4362087,0.3643625,0.1340138,0.880946,0.51570714],[-0.42193365,-0.1661316,-0.4134133,0.069665395,-0.19969232,-0.49261189,-0.5509127],[0.429386,-0.04167956,0.069151536,0.054689564,-0.50504297,-0.5080177,-0.41438618],[0.61227196,-0.043998886,0.32082903,-0.45597827,-0.52242905,-0.10526631,-0.43464538],[-0.23791881,0.37427938,0.07763096,0.38759655,0.6870389,-0.2448108,0.22891921],[0.28850517,0.116395116,0.22972369,-0.40831333,0.26074657,-1.0264262,-0.5928814],[-0.8139447,-0.14806162,0.15462387,-0.42620218,-1.2090021,0.666371,-0.6178426],[-0.63677526,0.8647508,0.5548903,0.1261759,0.304771,0.28499243,-0.14660935]],"activation":"σ","dense_2_b":[[-0.21753441],[-0.5461314],[0.105829634],[0.15688233],[0.18240593],[-0.6977311],[0.17758703],[0.21791771],[0.110497065],[-0.45180324],[0.19605672],[-0.012792069],[-0.2483234]]},{"dense_3_W":[[-0.075603865,-0.4466055,0.2090132,0.44769254,0.5857853,-0.0886282,0.6599453,0.52339387,0.18296923,-0.4225845,0.26281965,-0.10703673,-0.6357655],[0.6664568,0.21380727,-0.21715312,-0.17340335,-0.029390512,0.43210483,-0.19127384,-0.4889734,-0.27069238,-0.16609475,-0.29695383,-0.6717075,0.570048],[-0.49318448,-0.535808,0.0617476,-0.29404658,0.3541034,-0.5322448,0.15549439,0.55970424,0.3449248,0.16689838,0.35094023,0.17978139,0.0012035011]],"activation":"identity","dense_3_b":[[0.009320866],[-0.014181249],[-0.008072699]]},{"dense_4_W":[[0.9121412,-0.99914575,0.15805192]],"dense_4_b":[[0.015280737]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json new file mode 100644 index 0000000000..20e8650482 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA.json @@ -0,0 +1 @@ +{"input_std":[[8.101178],[1.576821],[0.6001426],[0.05129009],[1.5563219],[1.5635437],[1.5707226],[1.5433452],[1.5103695],[1.4539864],[1.3962219],[0.051048342],[0.051107466],[0.051158227],[0.051144693],[0.05100346],[0.05054137],[0.049878743]],"model_test_loss":0.0073623862117528915,"input_size":18,"current_date_and_time":"2023-08-11_16-04-06","input_mean":[[24.654629],[-0.08590741],[-0.0009184312],[-4.0871888e-5],[-0.081669286],[-0.08285683],[-0.085108146],[-0.08099603],[-0.07861437],[-0.07853552],[-0.07747747],[-6.709087e-5],[-5.751621e-5],[-5.7667265e-5],[-0.000100658726],[-0.00015130512],[-0.000163422],[-0.0002661297]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.21534623],[-0.118863985],[-0.3162109],[-0.008301526],[-0.20225163],[-0.81838286],[-0.44373506]],"dense_1_W":[[-0.010962684,1.3271043,-0.2114807,-0.23165482,-0.46575153,1.4799869,-0.1840072,-0.33480445,-0.25981382,0.6701327,-0.23557165,0.70862395,-0.25953412,-0.40407246,0.21034719,0.26426816,0.26048476,-0.37272432],[0.063116424,-0.37950125,0.07257917,-0.3190763,-0.24379982,1.2784098,-0.7842402,0.43258125,-0.052969795,-0.12413401,0.06709847,0.2559667,0.22473153,-0.22734967,0.023825992,0.016029818,-0.028326835,0.059578158],[-0.3016696,-0.075852886,0.0527521,-0.011209507,-0.6228015,1.1113851,-0.34559983,0.22142892,0.2554701,-0.2911173,0.057123005,-0.021941856,0.38191658,-0.26981074,-0.23588574,-0.13898829,0.22445364,-0.04848302],[0.05634534,-0.51824033,-0.003713693,0.08173703,0.16384764,-0.88854563,0.7730121,0.17500255,0.047530588,-0.5229133,0.20252858,-0.44388622,0.25572473,0.42722487,-0.1655544,-0.104584515,0.3827446,-0.14453594],[-0.0098065995,1.1461085,4.4271894,0.28766564,-0.67997473,-0.41923288,-0.65402234,0.04776276,0.7062483,0.22435577,-0.3855223,1.1025202,0.38395193,-0.13660425,-1.0991157,-0.9289552,0.24331227,0.12602676],[0.064604074,0.09815192,0.04449264,0.167245,0.10047873,0.8369896,-1.0633512,-0.02719515,0.48547852,0.00025195925,-0.115980625,0.22939739,-0.16308971,-0.2363354,0.035979815,0.039715026,-0.31373924,0.16439395],[0.14448808,0.42794606,0.023460679,-0.03131989,-0.18359396,0.92956793,-0.62810725,0.051745564,-0.007592588,-0.2550739,0.22733083,0.4052302,0.21245979,-0.54544073,-0.47292453,-0.01651716,0.28038526,-0.06726948]],"activation":"σ"},{"dense_2_W":[[0.3185951,0.38238007,0.50007355,-0.44696733,-0.18833564,0.49253,0.5151739],[-0.75351256,-0.02323625,0.15045765,1.1255723,-0.22760838,-0.5423463,-0.39320955],[0.5941869,0.6002208,0.67094994,0.1078536,-0.21703981,0.5121481,-0.044793326],[-0.18639438,-0.77096725,0.06640158,0.31278,-0.1791094,0.005353212,-0.7920676],[-0.5254911,-0.34967858,-0.04295217,-0.09182358,-0.49522772,-0.29707804,-0.26805338],[-0.11694704,-0.5764714,-0.77232236,0.83998466,0.2796507,-0.6095662,-0.6371917],[0.4697945,-0.81612813,0.41819504,0.0026271453,-1.0698678,-0.44858027,-0.71943],[0.032202445,-0.36785793,-0.89155453,0.91260713,0.26696843,-0.8249699,-0.7184577],[0.14048702,-0.056610133,0.32802385,-0.046393655,-0.78281575,-0.81149364,-0.6811588],[-0.15381347,0.34545475,0.3851575,-0.18525209,0.6611936,0.46200687,0.029352214],[-0.27863827,-0.90037704,0.31005386,-0.06176267,-0.49294484,-0.47007585,-0.21173601],[-0.5374982,-0.098829664,-0.25622907,0.6391975,0.0902377,-0.5835498,-0.6351781],[0.18176489,-0.1428339,0.6578572,-0.7403219,0.44002348,0.21766058,-0.061404295]],"activation":"σ","dense_2_b":[[-0.19657324],[0.20226727],[-0.10386356],[-0.010249704],[-0.094468534],[0.15300958],[-0.060326923],[0.024111554],[-0.15287803],[-0.29019067],[-0.05875744],[0.12496516],[-0.08454377]]},{"dense_3_W":[[-0.2886454,0.5095047,-0.57979405,0.36372662,0.13746898,0.34730884,0.6172098,0.14228286,-0.2412701,0.024884012,0.52553844,0.1899192,-0.2080911],[0.723521,0.30430666,-0.48175433,-0.18722822,0.17053263,-0.046900373,0.32055286,-0.28427157,-0.559016,0.6173524,0.38790986,-0.58535457,0.20128798],[-0.38595572,-0.74244434,0.6686922,-0.7516655,0.11421817,-0.66320103,0.02764821,-0.48069245,-0.52054244,0.78038347,-0.008231983,-0.19960494,0.5328335]],"activation":"identity","dense_3_b":[[-0.08028006],[0.05776726],[0.01632964]]},{"dense_4_W":[[-1.2012991,0.5136856,0.2434981]],"dense_4_b":[[0.07582895]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json new file mode 100644 index 0000000000..44f09b93ef --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_COROLLA_TSS2.json @@ -0,0 +1,120 @@ +{ "input_std": [ + [ 10.799555 ], + [ 1.1120019 ], + [ 0.6616854 ], + [ 0.028482547 ], + [ 1.1156307 ], + [ 1.1159346 ], + [ 1.1148219 ], + [ 1.0780851 ], + [ 1.0371089 ], + [ 0.97595906 ], + [ 0.9065878 ], + [ 0.02847537 ], + [ 0.028477926 ], + [ 0.028481513 ], + [ 0.0284707 ], + [ 0.028458958 ], + [ 0.028488474 ], + [ 0.028483905 ] + ], + "model_test_loss": 0.02256479673087597, + "input_size": 18, + "current_date_and_time": "2023-12-25_22-57-21", + "input_mean": [ + [ 19.2235 ], + [ -0.06585429 ], + [ -0.0064189 ], + [ -0.005323282 ], + [ -0.067707 ], + [ -0.0671286 ], + [ -0.06649458 ], + [ -0.060063194 ], + [ -0.05377905 ], + [ -0.04412506 ], + [ -0.035479717 ], + [ -0.0053720735 ], + [ -0.0053506913 ], + [ -0.0053401864 ], + [ -0.0052933325 ], + [ -0.005350221 ], + [ -0.0054709557 ], + [ -0.005746576 ] + ], + "input_vars": [ "v_ego", "lateral_accel", "lateral_jerk", "roll", "lateral_accel_m03", "lateral_accel_m02", "lateral_accel_m01", "lateral_accel_p03", "lateral_accel_p06", "lateral_accel_p10", "lateral_accel_p15", "roll_m03", "roll_m02", "roll_m01", "roll_p03", "roll_p06", "roll_p10", "roll_p15" ], + "output_size": 1, + "layers": [ + { + "dense_1_b": [ + [ -0.075336866 ], + [ -1.4379132 ], + [ 0.12846093 ], + [ -0.83898723 ], + [ -0.36279294 ], + [ -0.056873046 ], + [ 0.047107063 ] + ], + "dense_1_W": [ + [ -0.050702084, 0.23833075, 9.068456, 0.11729692, -2.24747, -1.9006892, -1.2767023, 2.3568945, 2.131596, 1.4344207, -1.032736, 0.49961105, -0.04982021, -0.3041553, -0.38732168, -0.08194013, 0.1400462, 0.06643751 ], + [ -0.7581488, -0.020518934, 0.5159834, -0.08114609, 0.7436459, -0.33153492, -0.49035493, 0.12532651, -0.12278706, 0.09580404, 0.12504527, 0.20612119, -0.45066848, 0.1813876, -0.24614686, 0.4758823, 0.2178751, -0.30032337 ], + [ -1.3949319, 0.67544717, -0.7753792, -0.15714955, -0.17681755, -0.25429842, -0.54722327, 0.5418026, 0.10016261, 0.0053565986, -0.39035755, -0.04587303, 0.36687377, -0.22805889, 0.093026236, 0.05298613, -0.23806311, 0.14899784 ], + [ -0.42220324, 0.04483509, -0.40907508, 0.11821204, 0.073940635, -0.017443, 0.19060583, -0.6515505, 0.34508246, -0.08026583, -0.018325916, -0.16471778, -0.05598569, 0.17481138, -0.14715311, -0.080125585, 0.3393668, -0.19069892 ], + [ -1.4330497, -0.64631116, 0.6935077, 0.2762588, -0.14516634, 0.15581381, 0.6870634, -0.014884118, -0.44512376, 0.12536626, 0.2644134, 0.14975125, -0.33620888, 0.1905219, -0.19605163, -0.1808306, -0.0016299848, 0.106743194 ], + [ -0.010526905, -0.7717455, 0.0070439703, -0.22383846, -0.415478, 0.0844275, 0.2170057, -0.069986425, 0.22479944, 0.2915719, -0.4006947, 0.07989299, -0.0019174323, 0.220215, -0.020739302, 0.010475229, -0.27987975, 0.21558948 ], + [ 0.00034062448, 0.6978409, -0.0499567, -0.16071245, 0.07709055, -0.11454262, -0.42469633, 0.14393206, 0.38380122, 0.15885039, -0.24375756, 0.1721643, 0.024053562, 0.219485, -0.079801545, -0.6738785, -0.18035688, 0.3041013 ] + ], + "activation": "σ" + }, + { + "dense_2_W": [ + [ -0.47582296, -0.3389653, -0.25085196, 0.4886556, 0.6374338, 1.1124122, -1.06381 ], + [ 0.27025986, -1.2483587, 0.17614846, 0.6991092, -0.2602735, -0.120778754, -0.09193157 ], + [ 0.4948387, 0.7217855, 0.111300245, -0.9388221, -0.4064722, -0.17349482, 0.43001428 ], + [ 0.22625388, 0.74308527, 0.6891021, -0.26306373, -0.597923, -1.2967286, 0.22016492 ], + [ 0.021139862, -1.1632888, -1.0416571, 0.3494392, 0.6425689, 1.8975137, -0.8081407 ], + [ -0.52389294, 0.6372325, 0.6633958, -0.64765304, 0.20338675, -0.027452167, 0.506291 ], + [ 0.39088923, 0.7343456, 0.09120028, -1.1630384, 0.023677234, -0.19186972, 0.07007424 ], + [ -0.449708, 0.3169958, 0.4992463, -0.67045796, -0.47493598, -0.00015411235, 0.43920174 ], + [ -1.1875321, -0.68294007, -1.1207345, -0.65358764, -0.14696452, 0.3581226, 0.048447974 ], + [ -1.1105211, 0.01114233, -0.15045986, 0.6279203, 0.81262004, 0.6925559, -0.9141913 ], + [ 0.29771498, -0.085332215, -0.10415446, 0.30199984, -0.15799537, 0.36737302, -0.6503492 ], + [ -0.64377147, -0.65133274, -0.5873282, 1.0216556, 0.32842088, 1.4965141, -0.34098 ], + [ 0.14713718, -0.773232, -0.35718775, 0.5903775, -0.02301098, 0.48789024, 0.0144560225 ] + ], + "activation": "σ", + "dense_2_b": [ + [ -0.06163904 ], + [ -0.23192078 ], + [ -0.1009967 ], + [ -0.16059391 ], + [ 0.23239176 ], + [ 0.14465374 ], + [ -0.1871548 ], + [ 0.073026784 ], + [ -0.046453997 ], + [ -0.41197765 ], + [ -0.2929203 ], + [ 0.12238579 ], + [ -0.23292084 ] + ] + }, + { + "dense_3_W": [ + [ 0.4508514, 0.08078731, 0.37861827, 0.28543904, 0.042243864, 0.20070161, 0.45177004, -0.23327906, 0.2789905, -0.30319306, -0.13606939, -0.2258465, 0.30893984 ], + [ 0.19797017, -0.54021436, 0.50532675, 0.6035604, -0.7982811, 0.510931, 0.10049933, 0.506153, 0.59682614, -0.4687595, -0.1153152, -0.7137997, -0.22665377 ], + [ 0.5610325, -0.23229897, -0.61403847, -0.3500231, 0.35477564, -0.08623257, -0.5712205, 0.10214144, -0.10332114, 0.71979856, 0.07346336, 0.16925354, -0.10480455 ] + ], + "activation": "identity", + "dense_3_b": [ + [ -0.05611255 ], + [ 0.059826545 ], + [ -0.05803037 ] + ] + }, + { + "dense_4_W": [ [ -0.15714681, 1.1904545, -1.1465737 ] ], + "dense_4_b": [ [ 0.058684155 ] ], + "activation": "identity" + } + ] +} diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json new file mode 100644 index 0000000000..a9250081a1 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER.json @@ -0,0 +1 @@ +{"input_std":[[8.59148],[1.2493986],[0.5269206],[0.041249365],[1.2364323],[1.2408036],[1.244121],[1.2149953],[1.1840745],[1.139739],[1.0999022],[0.04111617],[0.041138012],[0.04116289],[0.041093722],[0.04103911],[0.040840328],[0.04053395]],"model_test_loss":0.013219255954027176,"input_size":18,"current_date_and_time":"2023-08-12_04-15-52","input_mean":[[22.762989],[0.029107802],[-0.0036903925],[-0.0018161334],[0.02989136],[0.030132128],[0.029675554],[0.031246228],[0.032991253],[0.033477113],[0.031189695],[-0.0017968083],[-0.001822502],[-0.0018435197],[-0.0018475861],[-0.0018452929],[-0.0018318946],[-0.001845115]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.24648063],[-2.376559],[1.1662444],[-0.26554593],[-0.32742506],[1.4806708],[-0.0031550017]],"dense_1_W":[[-0.0022086294,-0.40385738,-1.160377,0.058853727,-0.45829934,-0.9892548,0.7024091,-0.026199905,0.1490116,-0.15794931,0.3758965,0.049813736,0.32553354,0.32745218,-0.17973755,0.050215364,-0.19431834,0.20708089],[-0.9471611,-0.7732935,0.0040800874,0.5742045,-0.18457998,-1.2835798,0.6246207,-0.14899649,0.18967356,-0.065814145,-0.15127227,-0.3386243,-0.23807645,0.6077654,-0.5328684,-0.30787334,0.28645578,0.14132696],[1.0173131,0.3188301,0.0074244044,0.61990887,0.7274369,-0.93646467,1.0704489,0.76136214,-0.32295448,-0.01725006,0.07569445,0.18620366,-0.17104647,0.29966894,-0.70542735,-0.7354604,0.016799392,0.30154032],[-0.20962188,-1.311333,-0.0026445198,0.17922984,0.531851,-1.5825989,0.7938387,0.0066229375,-0.09016458,-0.30289832,0.17271148,-0.47236636,-0.30804113,0.6233303,0.12623943,-0.0055988682,-0.043602336,0.06712645],[-0.020458225,-0.42885244,-0.0038395484,-0.10207273,-0.015277347,-1.4454521,1.3775421,-0.118530035,-0.22922382,0.17729308,-0.09748722,-0.89088255,-0.178599,0.85357165,0.35415354,0.43488976,0.04118875,-0.33566797],[0.8193772,-0.6007122,-0.0017037725,0.13282925,-0.11202925,-0.929353,0.317924,-0.11701756,0.10553851,-0.3365874,0.0851421,-0.054551814,0.0054372363,0.36028123,-0.2594373,-0.61298895,0.37971976,0.19868912],[0.008058829,1.6243702,6.4016485,-0.019551624,-1.5234914,-0.4204991,-1.3425288,-0.4094253,2.030977,1.4565194,-0.8323464,1.296278,0.47479084,-0.09157813,-1.1762311,-0.8872532,-0.12166119,0.38413718]],"activation":"σ"},{"dense_2_W":[[-0.28090087,0.74190426,-0.28707552,0.516355,1.334883,0.4357577,0.2586334],[-0.34608322,-0.33025268,0.0999196,-0.5887224,-0.6075646,0.64398736,0.3338182],[-0.31348327,-0.8770239,-0.6024458,-0.6178695,-0.6372776,-0.72627634,-0.16278459],[-0.3722624,-1.0817293,0.42359433,-0.33799604,0.10361065,0.7388388,1.3176775],[-0.29480588,0.7901369,0.17133124,0.4799114,0.85245687,-0.013445694,0.14533967],[-0.87411815,-0.16010237,-1.4885652,-0.29839927,-0.20605023,-1.562838,0.5986846],[-0.73472345,0.338243,-0.9374241,0.02173104,-0.7596491,0.6785289,-0.20274258],[-0.2997788,0.2209799,0.48596287,0.78598267,0.9243628,0.023341166,-0.43850183],[0.4222353,0.5027177,1.0574167,0.43871415,0.28589502,0.78985494,-0.5190039],[-0.18783973,-0.56768733,0.050845794,-0.28815973,-0.94438463,-0.2522084,0.32373685],[-0.106311925,-0.35109058,-1.1950349,-1.3491938,-0.63636744,-0.85660255,0.65720135],[0.11469332,0.6067198,-0.0036478473,-0.1060145,0.81046635,-0.43815076,-0.32849914],[0.02783019,-0.4614942,-0.2623803,-0.9181543,-0.88305587,0.06497931,-0.5045385]],"activation":"σ","dense_2_b":[[-0.15510015],[0.2342048],[0.15416661],[0.7777073],[-0.13564527],[0.14683509],[0.024061315],[-0.08486859],[-0.11236216],[0.14123017],[0.1472493],[-0.2562387],[0.1431819]]},{"dense_3_W":[[-0.39276794,-0.16104949,-0.6395178,-0.085208185,0.073711544,-0.10194128,0.45973158,0.53386575,0.3106653,0.012114314,-0.73890895,-0.1875676,-0.678936],[0.7250477,-0.36109838,-0.2772502,-0.73887503,0.37471095,-0.6863193,-0.5893201,0.13003068,0.5410711,-0.3264668,-0.8585225,0.46357864,-0.7054099],[0.12821884,-0.55353826,-0.29466185,0.21078463,0.06601266,-0.4738428,-0.10462136,0.5951863,-0.07738918,-0.641871,0.18521658,0.1677981,-0.252422]],"activation":"identity","dense_3_b":[[0.04069802],[0.026384773],[0.020536864]]},{"dense_4_W":[[-0.29379988,-1.0209042,-0.20056948]],"dense_4_b":[[-0.02549032]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json new file mode 100644 index 0000000000..ed522a3754 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_HIGHLANDER_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[9.797211],[1.4073237],[0.45344877],[0.04491299],[1.3987288],[1.4015741],[1.4033431],[1.3713129],[1.3358603],[1.2864146],[1.2356204],[0.044730604],[0.04476502],[0.04479927],[0.044761524],[0.04463559],[0.04441582],[0.04400734]],"model_test_loss":0.01496149692684412,"input_size":18,"current_date_and_time":"2023-08-12_05-44-01","input_mean":[[23.06539],[0.022372128],[-0.018723505],[-0.0037287462],[0.025849355],[0.024471685],[0.022525933],[0.017384581],[0.017084958],[0.015315184],[0.014839374],[-0.0038067892],[-0.0038066467],[-0.0038155483],[-0.0038835425],[-0.003969397],[-0.004126497],[-0.004283849]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-5.0399375],[0.66340405],[-0.08379381],[-0.1257602],[0.30399242],[-4.494502],[0.27936158]],"dense_1_W":[[-2.5363288,-0.57757294,0.0027555253,-0.69334877,0.13913916,0.38319087,0.95406264,-0.95457584,-0.033972528,-0.21526104,-0.67382884,0.1485172,0.4771976,0.18877178,-0.16290484,-0.016111093,-0.40084124,0.40098542],[-0.10251014,0.90069646,0.0015895946,-0.29654703,-0.49717396,1.268891,-0.8686852,0.106027365,-0.08154456,0.054320164,-0.0015901169,0.28086966,0.37089986,-0.39758688,0.089162976,-0.20091611,-0.019581586,0.1379176],[-0.0021139083,-0.5681109,0.0045096576,0.37979248,0.21457663,-1.1264517,1.0069007,-0.28261423,-0.2431941,0.19875054,0.0066458527,0.109028324,-0.3649011,0.09212255,0.49301502,-0.059227098,0.07381374,-0.17722736],[0.008648403,0.87794864,3.1009352,0.21482791,-0.8084606,0.18275541,0.3635672,-0.08733222,0.9668826,0.25053218,-1.0132065,0.3902859,0.59336084,0.04232025,-1.0975246,-0.20822704,-0.42172226,0.30119237],[-0.1216848,-0.9771412,-0.017562695,0.23040251,0.120802276,-0.26227885,0.70101273,-0.29537383,0.036361422,-0.3592869,0.32375747,-0.17707966,-0.4159238,0.05444697,0.37961268,0.26376435,-0.019785738,-0.23029959],[-2.2624679,0.24792579,-0.003632164,0.46374714,-0.43607607,0.033397473,-0.29120448,0.24237801,0.22114673,0.041112114,0.76203763,0.109556496,-0.29734334,-0.6331814,0.29980987,0.17154595,0.35740486,-0.4158375],[-0.034173463,-0.5125805,0.011909321,-0.24246725,-0.007852726,-0.9268454,0.438557,-0.2839944,0.24563706,0.2190338,-0.2901443,-0.34727386,0.33995688,0.16540235,0.28732327,-0.35981894,0.041257735,0.058045775]],"activation":"σ"},{"dense_2_W":[[-0.1993436,0.701577,-0.41372073,-0.09332039,-0.36059406,0.77733815,-0.833145],[-1.5271622,1.5048598,-0.77010024,0.07560495,-0.71047103,1.3006324,-0.5117385],[0.46061924,-0.008243548,-0.85892344,1.2595167,-0.948924,2.2698135,-1.942301],[0.061940253,-0.31634828,0.0798406,0.34763846,0.021756,-0.46359214,-0.07392033],[-0.2696488,-0.40507072,0.19450307,-0.6713937,0.40933418,0.14875686,-0.03199306],[0.014884351,-0.18024068,0.36034963,0.07164113,0.0156314,0.371164,-0.27950096],[-1.5902536,1.8198748,-0.7683764,1.3738456,-0.092035376,-0.3063631,-0.5351149],[-0.1981007,-0.3395727,0.57789916,0.21266969,-0.19264036,0.3517743,0.2045635],[-0.25479048,-0.42085296,0.2920033,0.060998514,0.1293151,0.31961867,-0.46009016],[0.3049363,-0.22684415,-0.034080368,0.0790401,0.61918515,0.29823962,0.09349991],[-0.4494046,0.31757298,-0.4080604,0.20879479,-0.44578844,0.58260244,-0.096968025],[-0.21508828,0.32704902,-0.51432735,0.7326623,-0.6550922,1.1410198,-0.62732315],[0.12526976,-0.09556271,0.63842154,-0.61208946,0.3558117,-0.23578581,0.62607837]],"activation":"σ","dense_2_b":[[-0.017869094],[0.36151597],[-0.1958973],[-0.023889307],[-0.0017105008],[-0.03132981],[0.2619224],[-0.013072357],[-0.013901752],[0.023021301],[-0.13436924],[-0.46172282],[-0.04681776]]},{"dense_3_W":[[-0.052120414,0.029567413,-0.66409993,0.094393685,0.31642377,0.10608072,-0.3086923,-0.040440086,0.03381829,0.66097414,-0.4579581,-0.51134187,0.57541263],[0.5851281,-0.17931658,-0.4185391,0.1195394,0.36722615,-0.21088938,-0.32132354,0.42602026,-0.47596413,-0.3402495,-0.26624802,-0.5764113,0.0354186],[-0.6289345,-0.8272402,-0.0011975961,0.18056613,0.063398294,-0.034670547,-0.5280208,0.43154517,0.0023103878,0.2373611,-0.08228515,0.107933424,-0.03365145]],"activation":"identity","dense_3_b":[[0.053374246],[-0.03893916],[0.06737692]]},{"dense_4_W":[[-1.0474417,0.35237366,-0.9325995]],"dense_4_b":[[-0.057818808]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json new file mode 100644 index 0000000000..e1a890e78a --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_MIRAI.json @@ -0,0 +1 @@ +{"input_std":[[8.621243],[1.130312],[0.5516336],[0.041195676],[1.126876],[1.1290765],[1.1299986],[1.1140016],[1.0942802],[1.061783],[1.0278625],[0.041149452],[0.041160367],[0.041163765],[0.041012943],[0.04082218],[0.04049875],[0.040250767]],"model_test_loss":0.010191036388278008,"input_size":18,"current_date_and_time":"2023-08-12_10-54-52","input_mean":[[23.69867],[-0.09237417],[-0.024359873],[0.005003234],[-0.08491814],[-0.08716023],[-0.08930154],[-0.09497029],[-0.09355577],[-0.09201378],[-0.08880379],[0.005034295],[0.0050175954],[0.004999444],[0.0049864235],[0.004929149],[0.0046412693],[0.0043429676]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.0368268],[-0.6035686],[-0.37980628],[-0.38712236],[-0.31054008],[-0.35742834],[-0.1745767]],"dense_1_W":[[-0.30988532,0.94676775,0.06835736,-0.20904909,-0.31267637,0.4459532,-0.75116515,0.18319201,-0.16871549,0.01450603,0.094541326,0.19128986,0.094970584,-0.10434261,-0.12030237,0.08215967,-0.0004368318,-0.008146429],[-0.33773926,-0.57431877,-0.082528114,0.034690164,0.29717553,-1.3232597,1.2727411,-0.00825284,0.058543384,0.08819038,-0.25790802,0.36763,-0.3964585,-0.25440165,0.26645663,0.1723957,-0.13807693,0.016459083],[-0.643219,-0.52567714,0.16125901,0.35280794,-0.27486697,1.1864855,-0.64119214,0.28674185,0.24847941,-0.064988114,0.18981163,0.030853774,0.2485369,-0.36588603,-0.2141448,-0.24320458,0.054182176,0.08016488],[1.8329483,0.19176741,0.3630878,0.8177945,1.0301634,-0.8391618,0.029882386,0.28434104,-0.2605399,0.032751296,0.7037072,0.12650606,-0.5634059,-0.14148597,-0.14909759,-0.23083402,0.19594365,-0.15800387],[1.6136711,-0.023185488,-0.330168,-0.64757305,-0.7903925,0.3184771,-0.125178,0.5074217,-0.091587566,-0.15822329,-0.59075946,0.099624775,0.28776196,0.25979534,-0.31621882,0.2251791,0.16301762,0.015307925],[-0.012423788,1.3620756,3.723387,-0.09946844,-2.2505002,-0.6505167,-0.3025472,1.0916159,1.1659752,0.5379025,-0.8302681,0.2763101,0.3852661,0.03025497,-0.38073367,-0.20023987,-0.20818618,0.33501345],[0.035275426,0.13343032,-0.01315199,-0.16700771,-0.012076806,1.0922886,-0.46189055,0.04980423,0.22884117,0.08929184,-0.13899224,0.27415225,0.107125394,-0.21544056,-0.15122053,0.015403071,-0.16977242,0.05957028]],"activation":"σ"},{"dense_2_W":[[-0.32195273,-0.80007017,-0.047992315,0.00076893583,0.086762525,-0.2853599,-0.46519622],[-0.8466131,0.8392215,-0.625954,0.53587455,-0.05725867,0.48061028,-1.0681951],[0.6704792,-0.88257265,0.048325025,-0.11247827,-0.5555944,0.48655844,0.15341099],[-0.73055834,0.18692662,-0.0051072617,-0.28417185,-0.79494137,-1.1081446,0.3546513],[0.6564168,-0.9941641,-0.012599699,0.055534486,0.1949257,0.11912132,0.67601776],[-0.92568284,0.19816734,0.006052384,0.5773367,-0.58242613,-0.10242073,-0.62971866],[0.026353309,-0.101803504,-0.13243441,0.11023436,-0.18115512,-0.31580073,0.35157788],[0.024816064,0.74383426,-0.6058626,0.1693422,0.13700868,-0.34494787,-0.2539183],[-0.6846791,0.70265,-0.30746013,-0.5157588,-0.22700436,-0.56013364,-0.05191689],[-0.044140954,0.0018182937,0.14246152,-0.66603386,-0.27544877,-0.9813431,0.020237492],[-0.25419834,1.060303,-0.05096676,-0.4194434,-0.34662414,-0.66279954,-0.45178506],[0.35331485,-0.35900408,0.12481251,-0.69748133,-0.11242132,0.0421719,0.95737815],[-0.18702975,-0.19013745,-0.59367853,0.335176,0.036005035,0.045245975,-0.4265972]],"activation":"σ","dense_2_b":[[-0.30476797],[-0.195294],[-0.25333008],[-0.10860839],[-0.2226989],[-0.032822598],[-0.011119534],[-0.055506833],[-0.029588649],[-0.3181418],[0.07300559],[-0.06738982],[-0.15821727]]},{"dense_3_W":[[0.034150075,0.57094276,-0.48878017,0.5112273,-0.18092011,0.5353878,-0.11806307,0.3421746,0.47612357,0.52546614,0.15649377,0.1728523,0.4344787],[0.121647194,0.3492057,0.17216049,0.41008264,-0.7363858,0.18355447,-0.514776,-0.17685267,-0.14863887,-0.03910745,0.48813453,-0.7858287,-0.2943318],[0.33316976,0.06313858,0.2317506,0.47803766,-0.19028156,-0.13142887,-0.5406721,-0.3424372,-0.3295334,0.5573225,-0.1931224,0.24481794,-0.14382799]],"activation":"identity","dense_3_b":[[-0.10088669],[-0.08613214],[0.09071597]]},{"dense_4_W":[[-1.2123189,-1.2992013,0.67285275]],"dense_4_b":[[0.09299899]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json new file mode 100644 index 0000000000..0b66eb0995 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS.json @@ -0,0 +1 @@ +{"input_std":[[9.762099],[1.487393],[0.60882616],[0.045595963],[1.4832315],[1.4860536],[1.486883],[1.4329017],[1.3824382],[1.3180021],[1.2599565],[0.045492638],[0.04550747],[0.04551469],[0.04532005],[0.045169514],[0.044900604],[0.04442004]],"model_test_loss":0.023460322991013527,"input_size":18,"current_date_and_time":"2023-08-12_11-56-57","input_mean":[[22.102732],[-0.036377847],[0.008207928],[-0.00759032],[-0.039697252],[-0.039314914],[-0.038734905],[-0.03351559],[-0.029701687],[-0.02374894],[-0.019018527],[-0.0075716134],[-0.0075744586],[-0.007576846],[-0.007673164],[-0.0077769123],[-0.007848316],[-0.007871212]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.2464235],[0.36032724],[3.2142584],[-0.6124687],[-0.3444237],[0.84660757],[2.4967933]],"dense_1_W":[[0.48956943,-1.0167718,0.00075395213,0.31859773,0.35728282,-1.7345634,1.4772928,0.22698121,-0.008497222,-0.2401796,0.06579528,-0.9262515,0.41439727,0.08820266,0.18549742,0.15475516,0.28202718,-0.3306144],[-0.01902877,1.317417,5.2883816,-0.0048064315,-1.1207271,0.14153387,-0.48907554,0.5965518,1.3317474,0.93645155,-1.5463351,0.8940235,0.01715244,-0.09698201,-0.79124266,-0.60062087,-0.5283351,0.48210177],[1.6799453,1.0875803,0.7233399,-0.1154038,0.13903706,0.6666519,-0.57941824,1.110945,0.8287281,-0.39736634,0.014497336,0.8294811,-0.24227042,-0.8082123,-0.11531884,0.3998047,0.38992816,-0.4658866],[-0.0093339095,-0.5626546,-6.469625,-0.24272315,1.8790531,1.1458817,1.6199373,-0.19717191,-2.2601504,-1.494756,-0.0270969,-0.83446693,0.017938558,0.20106375,0.4829865,-0.20796809,0.36888748,0.11745824],[-0.047758993,-3.753541,-0.18051493,-0.1676101,0.06609924,-0.8893684,-0.49023744,-1.0407737,-1.7489501,-1.3261193,-0.87734985,-0.39572844,0.64688593,0.5416982,-0.38286057,-0.97357833,-0.100056775,0.65565544],[-0.5856627,-0.59970623,0.0013667468,-0.121420965,-0.036623403,-0.898132,0.6988883,0.062262405,-0.06344699,-0.09589227,0.0075431895,-0.70993936,0.20738071,0.40989095,0.48009038,0.008462325,0.07712684,-0.15405595],[1.4587147,-1.1636585,-0.6985848,0.15750197,-0.38945892,-0.008756978,0.24255253,-0.8265293,-0.7826147,0.05190376,0.17086956,-0.6203985,-0.076512754,0.65016216,0.08441122,-0.1163062,-0.10427384,0.15624847]],"activation":"σ"},{"dense_2_W":[[-1.632233,0.37712488,0.4133944,-0.49261183,0.4405689,-0.7207189,-0.38359222],[-0.8616621,-0.24084182,-0.9289986,-0.018349092,-2.5249062,1.1182486,-1.4555736],[-1.3167355,0.7074618,0.21640916,-1.1284393,0.46383277,-0.13820471,-0.9500447],[-0.92115754,-0.59398055,0.20591407,0.14233942,0.32264933,-1.0047222,0.5837284],[-0.19402613,-0.29334325,-1.0017632,-1.2045952,-1.4455371,1.3564488,-1.236838],[1.0292754,0.18309414,-0.60503435,-0.67400736,-0.025801765,1.5835614,-0.18880595],[-0.08803988,0.85121155,1.2177777,-0.7774471,-0.15086989,-0.46124795,0.47848985],[1.1849687,-0.86750364,-0.43640986,0.5167854,-0.0021778047,0.67761177,-0.039286524],[-0.53804636,-0.047613166,-0.43315673,1.0911809,-0.8549513,-1.652081,-0.3882718],[-0.7047395,-0.45552897,0.29509792,-0.18719345,-0.106475934,-0.82755125,-0.3893937],[-0.57848173,-0.24025704,0.64958143,0.42696828,-0.4415749,-0.83788425,0.5138786],[-1.049563,0.35799855,0.37039617,-0.7668992,-0.1432876,-0.07057645,-1.404517],[0.8964256,-0.7548794,0.4873239,0.77339566,0.51797086,-0.043386698,0.9278152]],"activation":"σ","dense_2_b":[[-0.090917155],[-0.019869018],[-0.2314992],[-0.3312451],[-0.111754775],[-0.020750022],[0.201929],[-0.09248944],[-0.12347164],[0.07316307],[-0.045670044],[0.038350813],[-0.18804084]]},{"dense_3_W":[[-0.031516537,-0.15004298,-0.18322755,-0.49024573,-0.26840314,-0.21953586,0.4307271,0.6146507,-0.13160063,0.5342723,-0.47197735,0.3113398,-0.17237346],[-0.08184883,0.48368433,-0.5115264,-0.38417426,0.8723999,-0.29197934,0.050145645,-0.76852167,0.28836453,0.057352327,0.47973254,0.25683725,-0.18866217],[-0.5150742,-0.38569307,-0.65030956,-0.5188455,-0.23875389,0.4727463,-0.512049,0.80167,-0.69323355,-0.5246097,-0.35622385,0.00080956175,0.41679603]],"activation":"identity","dense_3_b":[[0.005088476],[-0.02459968],[0.076397985]]},{"dense_4_W":[[-0.09449419,0.40851843,-0.86686087]],"dense_4_b":[[-0.053760864]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json new file mode 100644 index 0000000000..b0e40d3bc6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_2017_b'8965B47070x00x00x00x00x00x00'.json @@ -0,0 +1 @@ +{"input_std":[[9.993096],[1.5129169],[0.5292781],[0.04735161],[1.4937518],[1.5009559],[1.5065974],[1.4822813],[1.4460584],[1.3909396],[1.3364335],[0.047238417],[0.047255352],[0.04726677],[0.04720177],[0.047057327],[0.046800528],[0.046432514]],"model_test_loss":0.02137083187699318,"input_size":18,"current_date_and_time":"2023-08-12_14-47-11","input_mean":[[21.92725],[-0.05898304],[0.0055398513],[-0.010017767],[-0.05939448],[-0.0591323],[-0.05851898],[-0.054530293],[-0.04864468],[-0.03953879],[-0.033812713],[-0.010021071],[-0.010010929],[-0.010004903],[-0.009986946],[-0.010029537],[-0.010210251],[-0.010435901]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.7096349],[-2.2459192],[1.8050286],[0.14590603],[-0.21259946],[-0.4865897],[1.0180423]],"dense_1_W":[[-0.044355545,-0.86803615,-5.470682,0.7662393,2.2697113,0.20532803,0.7032451,-1.0900831,-1.6173851,-1.3596452,1.1005849,-0.6813092,-0.3240795,-0.1764869,-0.049160894,0.72827965,0.515452,-0.7062596],[-1.1831604,-0.62358975,-0.0026339197,0.44086918,-0.13777687,-1.6426544,0.7253186,0.21613201,-0.33259863,-0.30798477,-0.3028476,-0.6908554,-0.26595157,-0.034876596,0.27096295,0.12958722,0.28949723,-0.13089034],[1.129321,-0.1758684,-0.016361756,-0.10424338,-1.0363773,-0.9705366,0.7942455,-0.14791845,-0.4966791,-0.14422588,-0.39332545,-0.4259459,-0.18380871,0.013830062,0.29699945,0.06683513,0.43560967,-0.118786275],[-0.17347103,-1.1811129,-0.0033009297,-0.21089908,0.5171898,-0.897144,0.44509307,-0.106434815,-0.28461242,-0.4546323,0.11333945,-0.42986956,-0.46928948,0.63054854,0.28181624,0.14660357,-0.021812595,0.05028003],[0.007173049,-0.70618355,-1.4873191,0.58662444,-0.089591786,-1.1213539,-0.47290862,-0.51822674,0.0023703398,0.2661958,1.152991,0.08745119,0.581388,0.3216495,0.05185744,-0.47252813,-0.24824727,0.051313765],[0.06722459,-0.70006377,-0.003337988,0.18606693,0.5765867,-1.6360734,0.96973306,0.05009269,-0.029201366,0.17914243,-0.20576404,-0.3237746,-0.289676,0.26199174,0.35764173,0.1982268,-0.094512984,-0.064385064],[1.4187667,0.23352993,0.015063511,-0.32947004,0.76953924,-0.5759871,0.85416406,0.6099805,0.14313644,-0.0988441,0.43220612,0.40879938,0.055067588,0.46557856,-0.18368772,-0.54336697,0.18179518,-0.084707245]],"activation":"σ"},{"dense_2_W":[[0.5947046,0.111288555,0.5850431,0.62112284,-0.078394376,0.24245393,0.32209224],[-1.8208972,-0.592816,-1.642084,-0.38896674,0.5061991,0.19109774,-1.5200887],[0.025273113,-0.08020302,-0.41331917,-0.022847144,0.6140032,0.10955139,0.35156295],[-0.50207645,-0.009498558,0.5945049,0.09697446,-0.6907574,-0.44700485,-0.69720614],[0.023978695,0.4353877,-0.6338232,0.066216335,0.5071922,0.72722405,-0.37157634],[0.22281975,0.30087987,0.10793576,0.6051096,-0.050377756,0.06560134,0.19566649],[0.3174169,-0.5281018,-0.3769352,-0.9404693,-0.38535568,0.047176104,-0.29524794],[-0.01142797,-0.8428373,0.61943024,-0.07822464,-0.27282074,-1.3535438,-0.027685491],[-0.1500802,-0.7242349,-0.30430663,-0.9526516,0.07655578,-0.72111547,-0.26857635],[-0.812532,0.026910001,0.31951103,0.13876708,-0.52592987,-0.28904262,-0.7990699],[0.43766123,-1.7336309,0.24968149,-1.029645,-0.074033834,-1.2529281,-0.030552762],[-0.33508214,-0.42931655,0.42052394,0.17153797,0.019656077,-0.109691635,-0.8664852],[-2.0966787,-0.025330383,-1.3079646,-0.22694683,-0.28807703,0.07181863,-1.555939]],"activation":"σ","dense_2_b":[[-0.019173387],[0.12807891],[0.0059481813],[-0.17893082],[-0.051502828],[-0.02974034],[-0.02933723],[-0.0073013883],[0.22854811],[-0.202757],[0.043750115],[-0.28998128],[0.23772466]]},{"dense_3_W":[[-0.3590014,0.24275887,-0.008422746,0.5422629,-0.6242663,-0.45372233,0.2612047,0.42095724,0.65564615,0.24925809,-0.024278162,-0.009784553,0.2571832],[0.5248679,0.040475123,-0.10563131,0.51980525,0.6735201,0.606566,-0.4731102,0.38770038,-0.1824653,0.12611738,-0.4370857,-0.6336852,-0.24878174],[-0.24122173,-0.7736854,0.54332715,-0.3138175,-0.3822715,0.051808015,-0.5872665,-0.6603135,-0.71875435,-0.22510114,-0.56668365,0.3377473,-0.81265104]],"activation":"identity","dense_3_b":[[-0.024711734],[0.022470985],[0.04454885]]},{"dense_4_W":[[0.7645119,-0.6550188,-0.91781116]],"dense_4_b":[[-0.03211836]],"activation":"identity"}]} diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json new file mode 100644 index 0000000000..489abe3692 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[9.993096],[1.5129169],[0.5292781],[0.04735161],[1.4937518],[1.5009559],[1.5065974],[1.4822813],[1.4460584],[1.3909396],[1.3364335],[0.047238417],[0.047255352],[0.04726677],[0.04720177],[0.047057327],[0.046800528],[0.046432514]],"model_test_loss":0.02137083187699318,"input_size":18,"current_date_and_time":"2023-08-12_14-47-11","input_mean":[[21.92725],[-0.05898304],[0.0055398513],[-0.010017767],[-0.05939448],[-0.0591323],[-0.05851898],[-0.054530293],[-0.04864468],[-0.03953879],[-0.033812713],[-0.010021071],[-0.010010929],[-0.010004903],[-0.009986946],[-0.010029537],[-0.010210251],[-0.010435901]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.7096349],[-2.2459192],[1.8050286],[0.14590603],[-0.21259946],[-0.4865897],[1.0180423]],"dense_1_W":[[-0.044355545,-0.86803615,-5.470682,0.7662393,2.2697113,0.20532803,0.7032451,-1.0900831,-1.6173851,-1.3596452,1.1005849,-0.6813092,-0.3240795,-0.1764869,-0.049160894,0.72827965,0.515452,-0.7062596],[-1.1831604,-0.62358975,-0.0026339197,0.44086918,-0.13777687,-1.6426544,0.7253186,0.21613201,-0.33259863,-0.30798477,-0.3028476,-0.6908554,-0.26595157,-0.034876596,0.27096295,0.12958722,0.28949723,-0.13089034],[1.129321,-0.1758684,-0.016361756,-0.10424338,-1.0363773,-0.9705366,0.7942455,-0.14791845,-0.4966791,-0.14422588,-0.39332545,-0.4259459,-0.18380871,0.013830062,0.29699945,0.06683513,0.43560967,-0.118786275],[-0.17347103,-1.1811129,-0.0033009297,-0.21089908,0.5171898,-0.897144,0.44509307,-0.106434815,-0.28461242,-0.4546323,0.11333945,-0.42986956,-0.46928948,0.63054854,0.28181624,0.14660357,-0.021812595,0.05028003],[0.007173049,-0.70618355,-1.4873191,0.58662444,-0.089591786,-1.1213539,-0.47290862,-0.51822674,0.0023703398,0.2661958,1.152991,0.08745119,0.581388,0.3216495,0.05185744,-0.47252813,-0.24824727,0.051313765],[0.06722459,-0.70006377,-0.003337988,0.18606693,0.5765867,-1.6360734,0.96973306,0.05009269,-0.029201366,0.17914243,-0.20576404,-0.3237746,-0.289676,0.26199174,0.35764173,0.1982268,-0.094512984,-0.064385064],[1.4187667,0.23352993,0.015063511,-0.32947004,0.76953924,-0.5759871,0.85416406,0.6099805,0.14313644,-0.0988441,0.43220612,0.40879938,0.055067588,0.46557856,-0.18368772,-0.54336697,0.18179518,-0.084707245]],"activation":"σ"},{"dense_2_W":[[0.5947046,0.111288555,0.5850431,0.62112284,-0.078394376,0.24245393,0.32209224],[-1.8208972,-0.592816,-1.642084,-0.38896674,0.5061991,0.19109774,-1.5200887],[0.025273113,-0.08020302,-0.41331917,-0.022847144,0.6140032,0.10955139,0.35156295],[-0.50207645,-0.009498558,0.5945049,0.09697446,-0.6907574,-0.44700485,-0.69720614],[0.023978695,0.4353877,-0.6338232,0.066216335,0.5071922,0.72722405,-0.37157634],[0.22281975,0.30087987,0.10793576,0.6051096,-0.050377756,0.06560134,0.19566649],[0.3174169,-0.5281018,-0.3769352,-0.9404693,-0.38535568,0.047176104,-0.29524794],[-0.01142797,-0.8428373,0.61943024,-0.07822464,-0.27282074,-1.3535438,-0.027685491],[-0.1500802,-0.7242349,-0.30430663,-0.9526516,0.07655578,-0.72111547,-0.26857635],[-0.812532,0.026910001,0.31951103,0.13876708,-0.52592987,-0.28904262,-0.7990699],[0.43766123,-1.7336309,0.24968149,-1.029645,-0.074033834,-1.2529281,-0.030552762],[-0.33508214,-0.42931655,0.42052394,0.17153797,0.019656077,-0.109691635,-0.8664852],[-2.0966787,-0.025330383,-1.3079646,-0.22694683,-0.28807703,0.07181863,-1.555939]],"activation":"σ","dense_2_b":[[-0.019173387],[0.12807891],[0.0059481813],[-0.17893082],[-0.051502828],[-0.02974034],[-0.02933723],[-0.0073013883],[0.22854811],[-0.202757],[0.043750115],[-0.28998128],[0.23772466]]},{"dense_3_W":[[-0.3590014,0.24275887,-0.008422746,0.5422629,-0.6242663,-0.45372233,0.2612047,0.42095724,0.65564615,0.24925809,-0.024278162,-0.009784553,0.2571832],[0.5248679,0.040475123,-0.10563131,0.51980525,0.6735201,0.606566,-0.4731102,0.38770038,-0.1824653,0.12611738,-0.4370857,-0.6336852,-0.24878174],[-0.24122173,-0.7736854,0.54332715,-0.3138175,-0.3822715,0.051808015,-0.5872665,-0.6603135,-0.71875435,-0.22510114,-0.56668365,0.3377473,-0.81265104]],"activation":"identity","dense_3_b":[[-0.024711734],[0.022470985],[0.04454885]]},{"dense_4_W":[[0.7645119,-0.6550188,-0.91781116]],"dense_4_b":[[-0.03211836]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json new file mode 100644 index 0000000000..e591efd503 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_PRIUS_V.json @@ -0,0 +1 @@ +{"input_std":[[8.246218],[1.5180237],[1.1132214],[0.032814745],[1.5758848],[1.5594358],[1.5396744],[1.4333483],[1.3656113],[1.2911646],[1.211073],[0.032817718],[0.032821406],[0.032829028],[0.03273625],[0.03268472],[0.03245208],[0.032211557]],"model_test_loss":0.011019937694072723,"input_size":18,"current_date_and_time":"2023-09-03_04-36-00","input_mean":[[16.336061],[-0.044645034],[0.06438527],[-0.015354921],[-0.055193648],[-0.05405257],[-0.051184133],[-0.0345687],[-0.027733065],[-0.022407],[-0.018130124],[-0.015424534],[-0.015413215],[-0.015394557],[-0.01529056],[-0.015231228],[-0.015114382],[-0.014972076]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.001179121],[-0.0008084346],[1.0273217],[0.8665842],[-1.7917292],[0.5846544],[1.8503871]],"dense_1_W":[[0.0008713786,0.10571419,-0.009768912,0.20203193,0.06539419,0.8834566,-1.064991,0.8917164,0.2740178,-0.29560176,0.046367835,-0.06696189,-0.15079989,-0.10306829,0.15937875,-0.32234034,0.11896804,0.013798418],[0.0032703213,0.3225856,-0.017178465,-0.3818704,0.3018395,0.30094728,-0.41512567,0.38405526,-0.1570511,-0.014270626,0.080081746,0.6354644,0.35888773,-0.43707213,-0.32447734,0.023193512,-0.16756727,0.20933074],[1.5627879,-0.37140134,0.63836944,-0.3830291,0.72145224,-0.3836591,0.11257197,0.21017507,0.26833218,0.25539163,0.5186593,-0.15651038,0.41176555,0.45905823,-0.42902833,0.06326807,0.3629456,-0.30402216],[1.6168094,0.40822932,-0.66605085,0.22799215,-0.69717556,0.34626734,-0.0059232763,-0.54218775,-0.055495918,-0.3768063,-0.48113772,-0.018525612,-0.5950303,0.2557122,-0.18825729,0.22983,0.005579068,0.06161027],[-1.1495299,-0.7586535,-0.5353385,0.025521036,1.087006,-1.0086828,-0.17635801,0.4568657,-0.091241084,-0.5215724,-0.2604748,0.045887616,0.11212669,-0.25279886,-0.14159086,-0.033089254,0.0029795568,0.1999646],[-0.051524103,-0.51501364,11.658313,0.13625003,-1.3843681,-1.6409664,-2.668583,3.1511652,2.57322,0.51289797,-0.38707766,0.10578343,-0.40109116,-0.31546983,0.07539781,0.3615562,0.073550805,-0.14806822],[1.1748914,-0.7219464,-0.5470881,-0.003681565,0.49025726,-0.4171505,0.0072592692,0.024163779,0.024890631,-0.41618225,-0.32244092,-0.19234161,-0.16784292,0.34389323,-0.06989565,-0.12501281,-0.030100992,0.20458347]],"activation":"σ"},{"dense_2_W":[[-0.4868388,-0.61673963,1.4286674,-0.039495535,0.45262775,-1.0424562,1.5454369],[-0.6074346,-1.011816,0.046624646,-0.78734446,2.3072171,-1.3779964,0.8569677],[0.47693276,0.71271104,-0.2390285,-0.038990125,0.12270858,0.20493168,-0.45892665],[0.38512126,0.61106217,-0.41512227,0.46455616,-0.0570659,0.04394896,-0.13119707],[-1.2577482,-0.6138713,0.6549672,-0.65091866,0.5145879,0.3818217,0.53431696],[0.56899303,0.10398351,0.45342615,-0.053685065,-0.104297765,0.09119562,-0.6285316],[-1.0771691,-0.25324076,0.37886608,0.1173106,0.47042668,0.14671373,0.08761732],[-0.3019003,-0.86725014,0.91806465,0.18018398,0.77627605,-0.93972605,1.2739382],[0.62885785,0.7373836,0.016257606,0.023142297,-0.47996506,-0.52089614,-0.113337025],[0.22219604,0.67318004,-0.08316116,0.34620377,-0.6612502,0.034009792,-0.64690715],[-0.23770024,-0.50766915,-0.09670405,-1.216913,1.2701161,-1.6846908,-0.22704105],[0.59986305,0.5738209,-0.19015375,0.421755,0.26094252,-0.04966739,-0.62614566],[0.6166309,0.091970205,-0.12472761,0.28889042,-0.21862288,-0.36297256,-0.44079408]],"activation":"σ","dense_2_b":[[0.19794257],[-0.03969422],[-0.0656537],[-0.062498007],[-0.035217416],[-0.016953804],[-0.0943835],[0.053581137],[-0.03426556],[-0.003272987],[-0.075658314],[-0.07952997],[-0.0015540265]]},{"dense_3_W":[[0.024692904,0.58683085,-0.567369,-0.37911305,0.67811406,-0.15265317,0.6610765,0.4359995,-0.6584148,-0.6708834,0.7197889,-0.4486733,-0.1747178],[0.14699566,-0.6474973,0.2763736,0.28756335,-0.3922964,-0.04845914,0.18625976,-0.26840127,0.6112173,0.3658983,-0.651653,-0.42875016,-0.09464588],[-0.7110688,0.24306618,0.19536833,-0.20736542,-0.025801487,0.17186794,-0.44581038,-0.31020266,-0.16066518,0.029663702,0.22836117,0.06264115,0.15486911]],"activation":"identity","dense_3_b":[[-0.016370883],[0.0127013195],[0.026499491]]},{"dense_4_W":[[-0.8554128,0.2766906,0.524841]],"dense_4_b":[[0.019940862]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json new file mode 100644 index 0000000000..ba434a6ebe --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4.json @@ -0,0 +1 @@ +{"input_std":[[8.785079],[1.3448962],[0.51876175],[0.047479864],[1.3252879],[1.331087],[1.3371022],[1.3088783],[1.2807853],[1.2440304],[1.2056386],[0.04731712],[0.04733776],[0.047359645],[0.04723333],[0.047111828],[0.046843447],[0.046379473]],"model_test_loss":0.01724853552877903,"input_size":18,"current_date_and_time":"2023-08-12_15-17-06","input_mean":[[24.85061],[-0.047142796],[0.0005701203],[-0.008726335],[-0.04417392],[-0.045567565],[-0.046358094],[-0.04118768],[-0.039137643],[-0.03847798],[-0.035704315],[-0.008584033],[-0.008594763],[-0.008609622],[-0.008570998],[-0.008600623],[-0.008706975],[-0.008697191]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.0296891],[-1.922514],[-1.149494],[0.022265209],[-0.052071013],[-0.032673564],[-1.9946277]],"dense_1_W":[[-1.8791502,-0.45478737,0.07119253,0.016805792,-0.38664973,1.3035942,-0.542431,0.047575254,-0.22030126,0.13161159,-0.07229064,0.36489004,-0.2386385,-0.23712136,0.034654524,-0.2886649,0.10312662,-0.047390282],[-0.66666186,-0.48720443,-0.11072515,0.094074145,-0.061216515,-1.2182275,0.8426725,-0.10592509,-0.21448702,-0.056960933,0.04259483,-0.7316568,0.20460397,0.42091593,0.15927365,-0.17348117,0.19803195,-0.18829267],[-1.8703458,0.30746105,-0.06834135,0.27911848,0.2422295,-0.6888701,-0.012127967,-0.15067418,0.5743117,0.07311509,-0.16059698,-0.15502444,-0.41604456,0.42384803,0.43910763,-0.17972651,-0.40040898,0.3014311],[-0.019090334,-0.76574296,0.09397271,0.10988411,0.51672286,-2.172949,1.0367043,-0.0839209,-0.58819324,0.16455668,-0.01100052,-0.7896944,-0.2134588,0.98234737,0.034016434,0.36617452,-0.035145547,-0.25804156],[-0.0018639659,-0.9749377,5.5816774,-0.23225898,-0.12594639,-0.9363593,1.234414,0.34805998,-0.08151865,0.107896045,-0.037450574,-0.27116403,-0.30569962,0.7310664,-0.58886266,0.20576492,0.49676666,0.072158925],[-0.019030262,1.2230272,5.830608,-0.41493434,-0.23800562,0.18280193,-1.5482132,-0.0852967,0.70929605,0.31744578,-0.51722443,1.0640428,0.19439188,-0.6710601,-0.2801976,-0.35409272,0.003487162,0.361651],[-0.649294,0.45132867,0.11169535,-0.06450987,0.17274019,1.0169406,-0.8244322,0.08305402,0.30460912,0.13607553,-0.12671345,0.31371805,-0.0019661803,-0.10996772,-0.15226273,0.090185925,-0.3348226,0.27420557]],"activation":"σ"},{"dense_2_W":[[0.6609678,-0.22481585,0.040954396,-0.31495926,-0.19392742,0.10244233,-0.08746393],[-0.7082068,0.86338276,-0.11436686,0.12848611,0.20935868,0.15040098,-1.1645155],[-0.22602943,0.793938,0.18418907,0.72948813,0.6846751,-0.6348888,-1.0778567],[0.53014493,-0.45450902,-0.35092524,-0.5569319,0.12838417,-0.13627666,0.5994005],[-0.17350997,0.7593281,0.7799434,-0.39523655,0.20372757,-0.834957,-0.38898385],[-0.70416707,0.22460131,0.085097484,0.78984326,0.2471842,-0.30347177,-0.58072823],[0.33662602,-0.7904104,-0.60286903,-0.16468751,-0.11612247,0.53005517,0.5211252],[-0.7082711,-0.46435446,-0.75132966,-0.29705703,-1.024626,-0.2615332,-0.20701897],[0.35671562,-0.02681799,0.6840728,-0.2612279,-0.08365274,-0.9705286,-0.605018],[0.62429255,0.0521647,-0.35856178,-0.4051332,-0.5179798,0.46409982,-0.052206893],[0.36666667,-0.5527411,-0.20863053,-0.6491323,0.06274223,0.4735839,0.22757712],[-0.012209164,0.5899906,0.46180722,0.48860443,0.58372164,-0.25489396,-0.895847],[-0.12133152,0.70728445,-0.4158088,0.7696778,0.1290468,-0.5404793,-0.33367673]],"activation":"σ","dense_2_b":[[0.08061271],[-0.19563875],[-0.24664785],[-0.12486449],[-0.2303988],[-0.07568345],[0.037712026],[-0.11140529],[-0.23779462],[0.034758605],[-0.11953955],[-0.21795286],[-0.21500231]]},{"dense_3_W":[[0.16741616,-0.5169601,-0.6872919,-0.3394973,0.08778304,0.27198112,0.7472469,0.11274346,-0.53623766,0.4801037,-0.17826463,0.07536674,0.6185708],[0.4108729,-0.3526092,0.1731832,0.5833954,-0.5591321,-0.5981915,0.7000401,0.37615168,-0.4772691,0.23866276,0.26305285,-0.48178422,-0.15993476],[0.53497106,-0.27460927,-0.65378416,-0.22805771,-0.005714031,-0.46566615,0.8224319,-0.0432606,-0.23549485,0.26196745,0.4718395,-0.6079023,-0.5116151]],"activation":"identity","dense_3_b":[[0.04784515],[0.063176766],[0.085746326]]},{"dense_4_W":[[0.3336722,0.86872417,0.6722818]],"dense_4_b":[[0.065143235]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json new file mode 100644 index 0000000000..1499600029 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4H.json @@ -0,0 +1 @@ +{"input_std":[[8.89405],[1.3264774],[0.49399376],[0.04498591],[1.3162512],[1.3196412],[1.3221577],[1.2921615],[1.262814],[1.2265766],[1.1900893],[0.044859875],[0.044887066],[0.04489899],[0.044722132],[0.044534575],[0.044196904],[0.043708563]],"model_test_loss":0.013147538527846336,"input_size":18,"current_date_and_time":"2023-08-12_21-45-51","input_mean":[[22.843279],[-0.12455614],[-0.0014007707],[-0.0064704656],[-0.1233025],[-0.12350357],[-0.12400504],[-0.1251842],[-0.12609619],[-0.12369014],[-0.12037224],[-0.006532242],[-0.006518202],[-0.006506443],[-0.006487807],[-0.006539525],[-0.0065615526],[-0.0066139703]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.8076376],[-0.12330158],[0.8896142],[-0.13590556],[-4.1826344],[-0.77730286],[4.5746274]],"dense_1_W":[[-0.97973573,0.15226786,0.02845066,0.04827065,-0.025662262,1.7772363,-1.5355376,0.0989295,0.30149132,0.029098786,-0.074183464,0.39862457,-0.10540373,-0.14476654,-0.36632246,-0.3054467,0.15272646,0.07390829],[0.015743697,0.78862613,-0.019669378,-0.12546545,0.009684494,1.3956969,-1.2900923,0.19209127,0.14444686,-0.21074831,0.16892369,0.61990404,0.23663369,-0.8836119,-0.42096013,0.119372375,-0.07889601,0.09642731],[-1.1188109,-0.42021284,-0.027942661,0.14205936,-0.07868929,-0.7710287,0.73801935,0.014988501,-0.069595,-0.35983253,0.24104616,-0.45208368,0.057623267,0.5596988,-0.21029097,-0.045526307,0.32178107,-0.12184607],[-0.013647176,1.3307436,4.6095624,-0.34334475,-0.8587218,-0.12885869,-0.8174357,-0.11078273,1.2218881,0.6008918,-0.6915159,1.311084,0.16892083,-0.3056882,0.08437484,-0.63590443,-0.4589061,-0.0745741],[-1.9673253,-1.4414742,-0.2586987,0.2226021,0.5694981,-1.5805218,0.5769138,-0.00886291,-0.060155656,-0.100935824,-0.13228646,-0.39160243,-0.40697894,0.7586441,0.09374963,0.055745218,-0.22303872,-0.037225552],[0.010619068,2.72878,-0.1893567,-0.27490807,0.50076294,1.516001,0.3651039,0.7132457,0.22416064,0.38899446,0.33117044,0.3081755,0.3069668,-0.8289943,-0.08180179,0.6579218,0.3046304,-0.066973075],[1.9517641,-1.27614,-0.25992838,0.26618478,0.082289934,-0.697544,0.0861543,-0.04430833,-0.1666379,-0.06128522,-0.12283561,-0.34772325,0.10666418,-0.18634178,0.41480446,0.21883197,-0.314464,-0.09010557]],"activation":"σ"},{"dense_2_W":[[-0.6846211,-1.4150484,0.62999135,0.3430101,1.278193,-0.7957307,1.0221282],[0.16265254,-0.2179754,-0.03812709,-0.97449124,-0.69266665,-0.13029383,-0.6855177],[0.67744255,0.7218722,-0.15119076,-0.36107507,-0.6168378,0.3564611,-0.14333059],[0.44798878,0.054440223,-0.12721358,0.11809645,-0.061688833,0.04752611,0.13841292],[0.22670254,0.36689356,-0.44299468,0.53176785,0.3255846,-0.5087834,-0.24648738],[-1.1769708,-1.0265867,1.0046444,0.3265467,1.2754724,-0.6967977,1.0338258],[-0.07486774,-0.5789648,0.18375583,0.08036335,0.17746748,0.4459745,-0.28357828],[-0.98316115,-0.82948774,1.1131235,-0.30703646,0.70785904,-0.18001986,0.71042156],[0.10901459,0.64697224,-0.36924043,0.8418233,-0.18619084,-0.3438453,-0.58111745],[-0.13789596,-0.28369164,-0.24692981,-0.6745289,-0.83434075,0.4034985,-0.2338089],[0.5772887,-0.30526567,-0.8162497,0.44525668,0.23674823,0.12436892,-0.7137595],[-0.59163356,-0.21955788,0.26342097,-1.3260666,1.5348077,-0.15188397,-0.24587795],[-0.864029,-0.23358338,-0.21427485,-0.45828933,-0.8476076,0.7652582,0.07033687]],"activation":"σ","dense_2_b":[[-0.2084633],[-0.3401461],[0.03563889],[-0.019227123],[0.033816546],[-0.21475661],[-0.108693056],[0.0054793637],[-0.055306572],[-0.3065528],[-0.067040265],[-0.22550777],[-0.33363193]]},{"dense_3_W":[[-0.27252012,0.28291574,0.104386985,-0.27400178,0.03230503,-0.36361536,0.03550164,-0.098785385,0.5028087,0.15802625,0.25782102,-0.3110525,0.3512787],[-0.35834575,-0.20253947,0.08262887,0.49909568,0.40528995,-0.21334086,0.27457196,-0.6656153,-0.24731882,0.07225506,0.18140426,0.56584823,-0.53368413],[0.44071397,0.39182287,-0.45943233,-0.42492127,-0.5459261,0.56124943,0.37052932,0.3689143,-0.69441694,0.41806287,-0.031108733,0.5795106,0.5095399]],"activation":"identity","dense_3_b":[[0.044206124],[0.04141924],[-0.087050036]]},{"dense_4_W":[[0.7859495,0.4201428,-0.711207]],"dense_4_b":[[0.048112456]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json new file mode 100644 index 0000000000..155aa27712 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2.json @@ -0,0 +1 @@ +{"input_std":[[9.244548],[1.5275985],[0.6107275],[0.046586774],[1.4886055],[1.5034448],[1.516418],[1.4891112],[1.4557259],[1.4174078],[1.3739654],[0.046419684],[0.046444356],[0.046451736],[0.046329428],[0.046216674],[0.04595779],[0.04549419]],"model_test_loss":0.012242425233125687,"input_size":18,"current_date_and_time":"2023-08-12_17-12-26","input_mean":[[22.124489],[-0.06681358],[-0.0017872587],[-0.007304861],[-0.068287455],[-0.06810858],[-0.068098135],[-0.06760926],[-0.064708285],[-0.06156465],[-0.05595117],[-0.00735773],[-0.0073575596],[-0.0073616607],[-0.007393436],[-0.0074092923],[-0.007485401],[-0.007535655]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[2.1266818],[1.2665837],[-0.0057515856],[0.021575607],[3.145306],[-0.015559701],[0.023866596]],"dense_1_W":[[1.8619034,0.2318498,0.010758091,0.17204547,0.178258,0.8156095,-1.2977135,-0.4021356,0.015441509,0.051510673,0.08473766,0.25257683,-0.08047843,-0.5401921,0.37597016,-0.25112596,0.11061834,-0.04145345],[0.6234877,0.39512575,0.029949188,-0.06756969,0.3141993,1.1970576,-0.9448964,0.4692527,0.4956762,-0.30381662,0.07292307,-0.11752247,-0.20445238,0.27772313,0.2778997,-0.20992711,-0.023655668,-0.03751188],[-0.09121854,-0.6526218,-0.008271368,-0.030463165,0.084578365,-1.1863025,0.71669704,-0.15648295,0.17038843,0.16980262,-0.2854215,-0.39527944,-0.29325402,0.4517195,0.58793545,-0.078027494,0.112520106,-0.19935027],[0.04239312,1.1436936,5.7977223,-1.2159046,-1.0222747,-0.018097226,-0.37114885,0.30876333,0.6447345,0.05005192,-0.3040888,0.3811603,0.53224164,-0.033966746,0.17231053,0.052680492,0.23297076,-0.20054573],[2.028991,-0.054335885,-0.050801482,0.22889599,0.034708247,-1.0235145,1.2738502,0.19607924,-0.6348713,0.3133455,-0.0084064,0.021044038,-0.19193278,0.24242897,-0.3887398,0.1055326,-0.14184418,0.124946855],[-0.15122393,0.6909391,-0.03846719,-0.2270961,-0.37185147,1.1930336,-0.83393574,0.019238736,-0.21900049,0.11245591,0.06722247,0.12010414,0.40301353,-0.5959846,-0.014899062,0.31775734,0.16264969,-0.20392336],[0.01964954,0.28060383,0.26928812,0.262222,-0.11968318,0.7917884,-0.94788104,0.24767427,0.5285209,0.20321472,-0.57217216,0.20230694,0.0041204365,-0.14682977,-0.1698623,-0.464828,-0.13932788,0.25505906]],"activation":"σ"},{"dense_2_W":[[0.07229978,0.043845255,-0.56071085,-0.37639382,-0.40895855,0.75563765,0.8920604],[-0.068550885,-0.2143043,0.8185382,-0.26352042,0.5178714,-0.88407123,-0.11102227],[0.80396324,0.084928855,1.9896538,-1.2700796,1.9254806,-0.6978969,-0.66902035],[-3.2066817,-1.9363941,0.8663164,-1.005594,-0.19276151,0.18454145,-0.32200423],[0.2388041,-0.3560892,-0.6499542,0.27040178,-0.4285769,0.50025755,0.4411526],[-0.5105194,0.6164994,0.40899366,-0.6055838,0.6227542,-0.3112731,-0.7521502],[-0.32484958,-0.49589607,-0.44490832,-0.23112644,-0.27562693,-0.39052173,0.1971162],[0.412541,0.319048,-0.79024744,-0.2737245,-0.6196046,0.015550856,0.43303803],[-0.28605422,-0.13784991,-0.24433006,-0.17126347,0.14660196,-0.3652191,0.36726522],[0.24914217,-0.5839129,1.1011901,0.48133576,1.1741915,-1.2662312,-0.41844484],[-1.4900029,-1.4929997,-0.24996275,-0.50023335,-0.65646017,-0.5239063,-0.16179247],[-2.2904916,-1.4458047,-0.10081112,-0.33487344,-0.16292852,-0.32974166,-0.41704106],[-0.12204984,-0.049235914,-0.7661266,0.20250078,-0.19582883,0.2884153,0.6099948]],"activation":"σ","dense_2_b":[[0.11034473],[0.04505026],[0.45456424],[1.1033564],[0.020434767],[-0.061051648],[-0.030366903],[0.06634181],[-0.039427042],[-0.17920223],[-0.12165889],[-0.071725644],[0.0007172712]]},{"dense_3_W":[[0.037582874,0.3922276,0.15515213,0.32579648,0.0045574703,-0.08303329,-0.35669035,-0.2959597,0.22798133,-0.00853858,0.26190194,-0.2177828,-0.051661514],[-0.6728899,0.60465753,0.37104872,0.84813213,-0.75632805,0.4609253,-0.123116,-0.16484596,-0.043769807,0.29626662,0.4587799,0.3421823,-0.5048559],[-0.31732032,-0.24499367,0.5200649,0.16775814,0.11487889,0.5378913,0.294093,-0.5565743,-0.33720338,0.0644005,-0.47207704,0.24707094,-0.1313763]],"activation":"identity","dense_3_b":[[-0.06704118],[-0.07568502],[-0.06689809]]},{"dense_4_W":[[-0.38717636,-1.245721,-0.60878205]],"dense_4_b":[[0.07232816]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json new file mode 100644 index 0000000000..07bdba6c47 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_RAV4_TSS2_2022.json @@ -0,0 +1 @@ +{"input_std":[[9.080224],[1.5475338],[0.6496774],[0.04879169],[1.5158907],[1.5278002],[1.5390717],[1.5098101],[1.4782969],[1.4340739],[1.3853667],[0.04868462],[0.048710395],[0.048738956],[0.048690505],[0.048625976],[0.048370127],[0.047957957]],"model_test_loss":0.008909840136766434,"input_size":18,"current_date_and_time":"2023-08-13_03-33-40","input_mean":[[23.622572],[0.010716067],[0.014080395],[-0.00545363],[0.00681623],[0.008023216],[0.008976955],[0.015593329],[0.018596267],[0.022246595],[0.02417008],[-0.0054850946],[-0.0054803547],[-0.0054753944],[-0.0054708053],[-0.005519239],[-0.005560871],[-0.005648205]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5925863],[0.6910273],[0.0029014468],[0.043235566],[-0.055107236],[3.6387718],[3.6793168]],"dense_1_W":[[0.24347192,0.0785397,-0.030702522,0.19405046,-0.09431407,1.6046176,-1.1419742,0.19336075,-0.062058806,0.14076506,-0.0068204296,0.27706286,0.0753339,-0.4532859,-0.35606033,0.21351701,-0.18941605,0.044432733],[-0.45700783,-0.062406845,-0.031097766,-0.5659944,0.024210662,1.39045,-0.9837826,0.11537844,0.2825425,0.046704102,-0.061710272,0.50674444,0.19582161,-0.10567522,-0.08106667,-0.1992534,-0.21138985,0.24457377],[0.007203359,-1.2377197,-4.586871,-0.11203177,0.5719472,0.0427435,0.5389759,0.26149252,-0.57496494,-0.524192,0.57842165,-0.22961466,-0.37423873,0.35315713,-0.10196228,0.2160896,0.4271714,0.017925069],[-0.0054053566,1.579078,-0.06120463,-0.20971349,0.046022303,0.93902045,-0.78088397,0.02447776,-0.07060164,-0.06981518,0.1699867,0.10647593,-0.24200302,0.018979385,-0.0083929775,0.18985271,0.13718374,-0.088825986],[0.095188886,0.6861187,0.10568597,-0.1301086,-0.7698879,0.83482885,-0.5525881,0.38867232,0.224815,-0.09360383,-0.16623642,0.5329297,-0.023406014,0.19236702,-0.75461245,-0.46940014,0.32178688,0.16902733],[1.5707638,0.61578625,0.23603536,-0.10848588,-0.02725563,0.6388082,-0.88916034,0.20878781,0.15096506,-0.07481069,0.050539907,0.08200025,0.027791992,-0.33376747,0.32451573,0.21383548,-0.019029131,-0.1541287],[1.5059847,-0.55344844,-0.24463375,0.061645243,0.0208355,-0.6283204,1.0164922,-0.39539093,-0.3376693,0.14381117,0.014864233,0.15729472,-0.36920083,0.09105627,0.22073188,-0.3185754,0.1361389,0.0030957134]],"activation":"σ"},{"dense_2_W":[[0.8278061,0.00944368,-0.47221076,0.5170837,0.5817161,-0.28623572,-1.3400604],[-1.1041138,-0.63026905,0.07870919,-0.08548198,-0.400506,-0.27927935,0.3597091],[0.27548513,0.17060155,-0.43422616,0.46099278,0.14646465,0.4412418,0.29597026],[-0.19179592,0.59959507,-0.45964202,-0.03809237,0.574291,0.57724786,-0.9947663],[0.9136712,0.04980523,-0.6333211,0.30888626,0.3298961,-0.24825113,-0.99664354],[0.3825098,0.8290921,0.63622355,0.5099953,-0.3108262,0.32984248,-0.41125965],[0.2868915,0.2814047,-0.35160798,0.19865306,0.22140126,0.53437257,-0.19641446],[-1.1109287,0.3453166,0.32968,-1.0854727,-0.5026547,-0.061587382,1.7998439],[0.098573364,0.6721182,-0.35533735,-0.09068599,0.18878801,1.0343286,0.09213373],[-0.23218085,-0.16048461,0.6798084,-0.64267206,-0.8845718,-1.8911213,0.5121272],[-0.54387015,-0.23149288,-0.30668664,-0.20229974,-0.30891183,-0.5950911,-0.1115899],[-0.25720352,-0.55898094,-1.0450321,-0.4148398,-0.31979793,-0.07070874,-0.10942721],[0.34567067,0.8965103,0.050285354,-0.1771556,0.119312696,0.3056499,-0.6886853]],"activation":"σ","dense_2_b":[[-0.39942527],[0.30935934],[-0.16508539],[-0.13897029],[-0.5619027],[-0.24792555],[-0.107184075],[0.5673597],[-0.21446894],[0.51320654],[0.042424392],[-0.15152127],[-0.24059872]]},{"dense_3_W":[[0.4104882,-0.23413022,0.5933587,0.5129894,-0.017641984,0.35903862,0.13990471,-0.6462935,0.53985685,0.037760712,-0.46011966,-0.48272845,-0.33265826],[-0.56515414,0.7211797,0.3708711,0.09521525,-0.016219772,-0.7927581,0.04320575,0.08196957,-0.177058,0.63587785,-0.34107837,0.37444627,-0.13801615],[0.5979246,-0.8661764,0.29252937,0.59611315,0.30349368,-0.11060929,0.22178161,-0.45007005,0.12280302,-1.1837198,-0.28847334,0.091526695,0.4002503]],"activation":"identity","dense_3_b":[[-0.1171355],[0.0760098],[-0.07621718]]},{"dense_4_W":[[0.17640126,-0.5432617,0.8457692]],"dense_4_b":[[-0.072637506]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json new file mode 100644 index 0000000000..b4434402e6 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/TOYOTA_SIENNA.json @@ -0,0 +1 @@ +{"input_std":[[8.918778],[1.18101],[0.4847478],[0.043674015],[1.1728041],[1.1765499],[1.1794695],[1.1464957],[1.1177075],[1.0766566],[1.0377958],[0.043550335],[0.043581747],[0.043604773],[0.043512594],[0.043391723],[0.043109246],[0.04262905]],"model_test_loss":0.019605522975325584,"input_size":18,"current_date_and_time":"2023-08-13_05-28-32","input_mean":[[23.596626],[0.013376228],[-0.0037806714],[-0.008489553],[0.016799761],[0.015916478],[0.014968346],[0.017682353],[0.020881005],[0.020992402],[0.023326145],[-0.008438655],[-0.008450099],[-0.008462553],[-0.008476181],[-0.008486343],[-0.008576075],[-0.008670038]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.91207904],[0.7103613],[0.30726305],[0.11740969],[0.12186458],[-0.089792214],[0.06848248]],"dense_1_W":[[0.020942407,1.0916185,-0.035626575,-0.19509457,-0.0901391,1.0375599,-0.89480263,0.027181128,0.114876896,-0.20307554,0.19653901,0.8226537,-0.28726602,-0.47241193,-0.02529027,-0.009867712,0.20832253,-0.0335081],[0.38768068,-0.9086627,0.040084302,0.06681411,-0.5178006,-0.611777,0.92066157,-0.1505088,0.074445166,0.11541756,-0.24584451,-0.81897855,0.51056355,0.27303597,0.1812634,-0.22068554,0.071845666,-0.07549679],[1.3191843,-0.43101233,0.051205434,0.2787163,-0.4157239,0.42948318,-0.72137564,-0.8753717,0.10624811,0.19340889,-0.15060128,0.2269076,0.03174035,-0.31100953,-0.19166663,-0.011060635,-0.3349901,0.2901877],[-0.0024979762,0.3740953,-0.026280953,-0.15654075,0.37215605,0.7620479,-1.0498856,0.13035084,0.13929886,0.05248367,-0.013822444,0.7085953,-0.03154278,-0.29324126,-0.62358975,-0.16771367,-0.21831672,0.22877951],[0.044033404,-0.99224085,-6.7608223,0.09225139,0.9311651,0.447325,0.42661807,0.63310313,-1.7500018,-0.85278213,0.90037066,-1.4607582,-0.38572705,-0.10530333,0.5061062,1.1270607,0.23219815,-0.09795198],[0.016819429,-0.0675717,0.115480825,0.07103152,0.17985629,1.1815296,-1.396273,0.18709117,0.09204313,0.37937552,-0.3416136,0.28142554,0.1835832,-0.75639856,0.27877346,0.049574222,-0.23444256,0.09973523],[-0.06906837,0.8551471,2.6089625,-0.38896835,0.3064237,0.04883363,-0.6118971,-0.37577873,0.916318,0.8206204,-0.8979492,0.18177088,0.34715304,-0.33680785,0.031479146,-0.49667355,-0.33899838,-0.04839657]],"activation":"σ"},{"dense_2_W":[[0.7524287,-0.05320505,0.6631399,0.29110217,-0.3867475,0.48622686,-0.00068926124],[0.6857002,-0.98820657,-0.2477931,0.8487134,-0.008759584,0.8539056,-0.70714766],[-0.191401,-1.1044568,-0.17453948,0.28428176,-0.27107534,0.52109903,0.5684942],[-0.72152793,9.4716466e-5,0.25969005,-0.29246745,-0.27407894,-0.5809119,-0.1386064],[-0.28868115,0.3303369,-0.19686596,-0.14941077,0.08329269,-0.49868903,0.2623254],[-0.47855794,0.38120317,0.15302673,-0.45370772,-0.0976872,-0.2544275,-0.22887231],[0.8629054,-1.2646538,0.13799493,0.40030012,0.16298352,0.30507365,-0.035486612],[-0.1548037,0.88181823,-0.19526346,-0.6244504,0.5790799,-0.7090568,0.17455493],[-0.4086325,0.8128156,-0.02595779,-0.8348639,0.1865987,-0.23320554,0.21458188],[-0.70075643,0.18467374,-0.39847013,0.20729409,0.4069853,-1.0749724,-0.23987985],[-0.19175854,-1.101704,0.658868,0.8334482,-0.007937357,0.06116572,0.35555303],[0.899429,-0.23285869,0.36268023,0.2628838,-0.41170016,0.18388364,0.59954256],[0.42720664,-0.1498553,1.1578981,0.16925347,-0.97467273,0.46834058,0.34074527]],"activation":"σ","dense_2_b":[[-0.1311147],[-0.4101757],[-0.33761725],[0.06426192],[0.026971094],[0.075724326],[-0.34481454],[0.16628559],[0.10305307],[0.049283274],[-0.24880186],[-0.16108623],[-0.10672651]]},{"dense_3_W":[[-0.47907722,-0.21759209,0.3713241,0.39441383,-0.44695204,0.17124303,0.11321267,0.3969347,0.1906832,-0.40338823,0.12479244,-0.50514024,0.5594875],[-0.5839251,-0.25829744,-0.427433,0.4940799,0.6102448,0.6181168,-0.3990338,0.7514002,0.44554126,0.50229466,-0.51888025,-0.38270754,-0.26896998],[0.21696098,-0.24028769,-0.43294132,-0.49181503,0.07244864,-0.15500332,-0.39558488,0.5280436,0.6300974,0.096077316,-0.16075748,0.3209584,-0.61387634]],"activation":"identity","dense_3_b":[[0.021643605],[0.047753386],[0.053921573]]},{"dense_4_W":[[-0.0368371,-1.1304644,-0.17004102]],"dense_4_b":[[-0.049882997]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json new file mode 100644 index 0000000000..af5a0b3058 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ARTEON_MK1.json @@ -0,0 +1 @@ +{"input_std":[[8.971252],[0.79798824],[0.43347803],[0.037114248],[0.78899115],[0.7920018],[0.7952441],[0.7838899],[0.7732425],[0.75980055],[0.74578863],[0.037029333],[0.03706021],[0.03708885],[0.03716895],[0.037208397],[0.03723585],[0.037244312]],"model_test_loss":0.012649175710976124,"input_size":18,"current_date_and_time":"2023-08-13_07-16-53","input_mean":[[24.854122],[-0.006721379],[0.0023459543],[-0.006867375],[-0.0071832123],[-0.007095632],[-0.007283813],[-0.004851204],[-0.0015341335],[-0.0011585834],[0.0014295956],[-0.0069056926],[-0.0069126263],[-0.0069173565],[-0.0070006466],[-0.007102198],[-0.007207536],[-0.0073172078]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.10305949],[0.5548119],[0.8664678],[-0.04213392],[-1.4110198],[3.2694256],[-1.438837]],"dense_1_W":[[-0.017599747,-0.22520265,0.0010882277,-0.21759078,0.043246184,-0.9120944,0.44394338,-0.012739085,0.17955783,0.3519492,-0.3748205,-0.29586455,0.36217418,0.21715508,-0.045080207,0.10746157,0.16058546,-0.12644011],[1.4859476,-0.13243331,-0.072786994,-0.09156684,0.026185557,0.30754617,-0.07915964,-0.33238035,0.29930684,-0.59904677,-0.40220875,0.34915185,0.2151253,-0.12978148,-1.0024906,0.4784506,-0.08319207,0.21361434],[0.61979795,0.1759033,-3.648246,-0.18301606,-0.7338996,-0.6487156,0.8492735,-0.7052067,-0.86969215,0.2841932,1.4843231,0.25467336,-0.34080935,-0.18149482,0.70439994,-0.26088372,0.11387163,-0.1455975],[0.00995094,-1.2382029,0.0006843731,0.328307,0.8130543,-1.2957187,0.8368335,0.20426522,-0.19153069,-0.4943369,0.41151458,-0.014479602,-0.4382999,0.10004458,0.060025815,0.16917846,0.09463592,-0.21017851],[-0.8206324,0.8908584,0.037517052,-0.49712715,-0.40263394,0.24845587,-0.85499966,0.26955003,-0.06266273,0.28861195,0.12733743,0.31250095,0.119576685,-0.04005291,-0.029234378,0.02662434,0.2687243,-0.1394794],[1.2793154,1.0802419,0.059386734,-0.3855319,-0.78512937,0.15505423,-0.8329386,0.6772395,-0.1311195,0.51412123,0.050203018,-0.037745327,0.38920268,-0.41889575,0.17929426,0.54237133,0.14844449,-0.3822895],[-0.93515563,0.036150783,-4.184579,0.31975636,-0.5608153,-0.832857,0.39901984,-0.45331565,-0.5904826,0.33153397,1.4625467,-0.1966311,-0.35478687,0.13788807,0.2924618,-0.15482849,0.01944506,-0.113643706]],"activation":"σ"},{"dense_2_W":[[0.90550905,-0.2773451,0.060318053,0.78804654,-1.0699619,-0.84802955,0.44153836],[0.77794725,-0.38085982,-0.0049121855,0.35357663,0.00038228062,0.18574685,0.04339034],[-0.92243797,0.38560665,0.09517251,-0.9013531,0.2996133,0.54987377,-0.028735504],[-1.1287217,0.640262,-0.5085255,-1.4166275,1.5218314,0.056655124,0.33818102],[0.15446381,0.38593677,0.3441797,0.98853666,-0.9087163,-0.0742472,0.46354288],[-0.55011004,-0.019922681,-0.18926652,-0.6645979,0.6695093,0.7484288,-0.16677399],[-0.7513268,-0.72154254,-0.3784182,-0.16664356,0.09576955,0.08568184,-0.4769783],[0.08747015,-0.46323332,-0.20250341,-0.7033233,-0.48815915,-0.43857226,-0.20034243],[0.16640607,-0.19463709,-0.041607287,0.30393028,-0.33860773,0.13123538,0.19249742],[-0.6888612,0.1613833,-0.42137414,-0.5399623,0.5414041,0.16113918,0.10748585],[-0.86522615,0.59193206,-0.37166557,-1.1033491,0.8927235,0.81606954,-0.031116843],[0.28607032,0.24378045,-0.021820918,0.6145389,0.15344414,0.019805284,-0.16341789],[-1.0509629,0.058839537,0.22750644,-0.6949402,0.3670632,0.044007428,0.0669319]],"activation":"σ","dense_2_b":[[-0.18253872],[-0.0115240505],[-0.06430214],[0.2490044],[-0.2796968],[0.0028060132],[-0.09268421],[-0.28672373],[-0.080230884],[0.03859358],[0.14165422],[-0.12646787],[-0.1059743]]},{"dense_3_W":[[0.8398946,-0.07856656,0.1706828,-0.86333686,0.59561944,0.03616052,0.18146847,0.4525631,-0.08213228,0.131641,-0.49378744,-0.44430527,-0.12233779],[-0.06611764,0.49632278,0.2623391,0.49564347,0.11883829,-0.49934706,-0.13390465,-0.6451669,-0.45365545,-0.0060165436,0.45882273,-0.38588116,-0.08209023],[0.85171545,0.69498104,-0.5135337,-0.30856863,0.22390914,-0.47711673,-0.21191199,-0.21027334,0.047864415,-0.4271364,-0.27338186,0.08179979,-0.39165765]],"activation":"identity","dense_3_b":[[0.04059178],[-0.05657044],[0.08936293]]},{"dense_4_W":[[-0.1893341,0.2177843,-1.285145]],"dense_4_b":[[-0.08146231]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json new file mode 100644 index 0000000000..f3cf6c0895 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_ATLAS_MK1.json @@ -0,0 +1 @@ +{"input_std":[[8.807038],[1.1578474],[0.462717],[0.04096329],[1.1326288],[1.1411434],[1.150276],[1.1401542],[1.1256609],[1.1028374],[1.0771434],[0.040799636],[0.040834032],[0.04086527],[0.040849086],[0.040718287],[0.040424738],[0.040075604]],"model_test_loss":0.011358999647200108,"input_size":18,"current_date_and_time":"2023-08-13_09-26-52","input_mean":[[24.574387],[-0.042787574],[-0.0084383935],[-0.008247784],[-0.04005291],[-0.04116906],[-0.04206258],[-0.04518047],[-0.045766264],[-0.047523264],[-0.048847865],[-0.008307315],[-0.008303847],[-0.008298328],[-0.008317524],[-0.008355838],[-0.00843378],[-0.008587674]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.5398485],[0.25783718],[0.41557038],[-1.7976782],[0.53406316],[-0.63385665],[-1.917262]],"dense_1_W":[[-0.4253817,0.22663599,1.0573925,-0.003105988,-0.096334025,0.6529197,-1.1694652,0.3467033,0.24922119,-0.3803986,0.08890094,0.061100043,-0.017730042,-0.11883982,0.13428102,-0.0348934,-0.0068453453,-0.007779446],[-0.008402637,-3.3132567,-0.21813557,0.071411654,-1.1415226,-1.6578175,-0.637207,-1.3461175,-0.6741953,0.16755764,0.2779039,0.11480545,-0.1803503,0.34613702,0.0859196,-0.29474613,-0.042490523,-0.01820469],[-0.4971483,0.098119624,-1.0920941,0.16022453,0.21241802,0.6172494,-0.9755981,0.035779636,0.0041822596,0.31914288,-0.18518393,-0.26218906,0.23453258,0.014359854,-0.06966559,-0.0034770474,-0.26081735,0.17178555],[-0.25480956,1.3900709,-0.0011070514,-0.06342647,-0.10887336,0.7041751,0.2328101,0.04183806,-0.033468023,0.028824355,0.071826614,0.098379195,0.32470608,-0.19180217,-0.5554726,-0.2217316,0.10789431,0.07102663],[-0.49687034,-0.6059788,1.1368431,0.11400577,0.4183632,-0.9394553,0.7815931,0.067233406,0.1662752,-0.13292359,0.051417153,-0.7103316,0.24026254,0.35937056,0.45720938,-0.5001579,0.1221688,-0.060943875],[-0.44913447,-0.4765777,-1.0624616,0.50197846,0.086886585,-0.17574842,0.9428897,-0.32340288,-0.06547519,-0.04256699,0.15002339,-0.5190985,0.11296826,0.2678741,-0.4129183,-0.016196959,0.10317533,-0.04792584],[-0.25692594,-1.3502828,-0.0009460109,-0.0050777984,0.46374944,-1.0939615,-0.40397272,0.14855485,-0.0076834555,-0.08402314,-0.048022572,-0.3868957,-0.03253632,0.29881552,0.5705721,0.1640352,-0.11509783,-0.05596482]],"activation":"σ"},{"dense_2_W":[[-0.16952407,0.08702787,0.6493835,0.27430746,-0.0071199476,-0.19580856,-0.2091579],[-0.1470845,-0.33079877,-0.5467495,0.41160226,-0.4971588,-0.5109554,-0.123111665],[0.7788407,0.12949619,0.46349248,0.13599767,-0.5738747,-0.20808762,-0.06685508],[0.87942976,-0.68710035,0.46623912,0.08075862,-0.31713346,-0.69495225,-0.42125878],[-0.5606583,0.49643534,-0.51900244,-0.48461094,0.31940943,0.18362813,0.8575088],[-0.2532001,-0.51093,0.25305697,-0.54165125,0.53601104,0.9598262,0.9526221],[-0.5665034,0.62428737,-0.07754291,-1.1295077,0.024450528,0.5505611,0.527919],[-0.17602344,-0.28039378,0.020311655,0.22711796,-0.68551284,-0.7996287,-0.6079852],[0.43893847,-0.7567556,0.10027089,-0.15151227,0.014879642,-0.31855884,-0.34122738],[-0.7633393,-0.07543374,-0.3050713,-0.97557557,0.37339172,0.8250897,0.7215346],[-1.2275901,0.62176853,0.03411873,-0.5092338,0.25704694,0.53235847,0.22089346],[0.23248282,-0.26544097,0.5072489,0.94194096,-0.44382775,-0.7462538,-1.0142152],[-1.2566365,0.09855355,-0.39514026,-1.0510743,0.48289242,0.4580382,0.30374187]],"activation":"σ","dense_2_b":[[0.013570737],[-0.17418918],[0.028351136],[0.12490911],[-0.16577649],[0.042069126],[-0.035789013],[-0.13899207],[-0.08848456],[-0.07905907],[-0.19632997],[0.038965493],[-0.12647548]]},{"dense_3_W":[[0.24081455,-0.44363257,-0.55115354,-0.030922456,-0.008375877,-0.123510234,0.2126219,-0.46798712,0.2711133,0.56804013,0.1574471,0.33433697,0.38691574],[-0.4032797,0.39321384,-0.3401627,-0.7603349,0.47812653,0.23157345,0.78344727,0.15922022,0.17650013,0.6928251,0.6137232,-0.7369166,-0.103489414],[-0.24215305,-0.40328485,-0.6077818,-0.28876036,0.56822276,0.63360524,-0.08002663,-0.23342833,-0.5187577,0.4915526,-0.17775443,-0.78564095,0.31357977]],"activation":"identity","dense_3_b":[[-0.07463631],[-0.05884157],[-0.03089778]]},{"dense_4_W":[[-0.15029056,-0.63581127,-0.55734146]],"dense_4_b":[[0.04723571]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json new file mode 100644 index 0000000000..e3d324afa7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_GOLF_MK7.json @@ -0,0 +1 @@ +{"input_std":[[9.664428],[1.2828087],[0.5358907],[0.04414606],[1.2693248],[1.2751942],[1.279506],[1.249834],[1.2184678],[1.1758597],[1.1319114],[0.04403217],[0.0440777],[0.044111222],[0.044084232],[0.043969695],[0.043677997],[0.043272585]],"model_test_loss":0.016808032989501953,"input_size":18,"current_date_and_time":"2023-08-13_11-43-31","input_mean":[[22.16122],[-0.05841703],[-0.0061066514],[-0.0040392894],[-0.056604024],[-0.05809211],[-0.059522722],[-0.060071282],[-0.059294432],[-0.05636808],[-0.054283537],[-0.004062983],[-0.0040673376],[-0.00406957],[-0.0040102745],[-0.0040264064],[-0.003949198],[-0.003894113]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[4.512272],[0.8451728],[0.061952885],[0.07117082],[0.0969589],[0.23836812],[-0.029027848]],"dense_1_W":[[2.3165002,-0.7564795,1.4717923,-0.31413803,1.6675323,0.7277529,-1.1163065,-0.019299118,-0.1405304,0.8572948,0.56036603,-0.41108173,-0.12570381,-0.014715486,1.132798,1.0821382,-0.75086635,-0.35031655],[0.9444606,-0.09898757,-0.6954507,0.30675238,-0.08984852,-0.49343133,0.9157946,-0.5570431,-0.3888742,-0.38986117,0.12952603,0.028433489,-0.024435973,-0.1049456,-0.38290912,-0.05392889,-0.015835924,0.14950559],[0.004741928,-1.5810053,0.03134019,0.3235661,1.2505218,-0.083220154,-0.3910901,-0.8460092,-0.74598694,-0.37966868,0.34051073,-0.39719552,-0.07352532,-0.06360439,0.34146932,0.10839794,0.43644786,-0.45806086],[0.00825958,0.47619736,-0.0059394315,-0.06315062,0.3332019,0.8162596,-0.6886139,-0.8321713,-0.23199448,0.13788818,0.27222332,-0.018768186,0.12005634,-0.03360056,-0.010549495,-0.05684962,-0.19241822,0.1521788],[-0.047451854,-0.3197287,-5.9774647,0.67842066,-1.8699528,-1.0736765,-0.22953252,-0.1705645,0.69078326,0.7744919,1.5346897,-0.06659277,-0.33114743,0.1330023,-0.0021685867,-0.14816211,-0.12463087,-0.098877035],[1.5630089,-0.14997533,-1.073808,-0.1734846,-0.3877676,0.683071,-0.9419817,0.057117645,-0.025376081,-0.29716906,-0.39132732,-0.0028707278,0.16397685,-0.19498843,-0.21398357,-0.013821919,0.44912493,-0.16607592],[0.009814496,-2.0713215,-0.044856403,-0.038243193,1.7569181,-0.7712438,-0.08035733,-0.38236764,-0.58137965,0.6674234,0.14389913,-0.6378334,0.14240614,0.24506636,0.6603566,0.014824286,-0.12690313,-0.14285208]],"activation":"σ"},{"dense_2_W":[[-0.42124227,0.33840093,0.44210997,-0.70910984,0.262287,0.18302582,-0.18371895],[-0.29685995,0.5138454,0.755978,0.22568974,-0.43676186,-0.49223867,0.47472122],[-0.2976625,-0.5638202,-0.346919,0.40578872,-0.039912287,0.77207106,-0.8657158],[-0.16169663,0.5898756,0.15860432,-0.48896188,0.14635944,-0.5558217,0.42120898],[0.27724966,-0.5185015,0.32158753,0.6277213,0.057304412,0.3086919,0.21024327],[0.03701429,-0.23197533,-0.30162218,0.72801787,-0.17062007,0.009803557,-0.5481523],[0.4629019,0.4786117,-0.14833471,-0.23350595,-0.29458895,-0.19023602,0.39070475],[0.9625968,-0.97766685,-0.9581983,1.2819734,-0.6076433,0.37645784,-0.79039747],[-0.13950962,-0.20756534,-0.31952453,0.6251145,-0.0893907,0.340857,-0.70461744],[-0.064140044,0.67090803,0.27711052,-0.44350907,0.5274457,0.26619676,-0.29007584],[-0.6253565,-0.072836235,-0.04700242,-0.5451034,-0.37668335,-0.15641896,-0.3610751],[-0.41676444,-0.32975447,0.09918825,0.1933214,0.114000455,0.21399117,0.6502726],[-0.20933664,0.18370156,0.6303221,-0.34840557,0.10767048,-0.12880816,0.43370107]],"activation":"σ","dense_2_b":[[-0.03087346],[0.083590284],[-0.12312114],[-0.015689747],[-0.03287778],[0.07682254],[-0.065336995],[0.29234254],[-0.08852307],[-0.013764559],[-0.2412543],[-0.016014475],[-0.056882493]]},{"dense_3_W":[[-0.17269112,-0.5855207,0.30247316,-0.3700723,0.5919556,0.34082454,-0.5857902,0.71309996,0.2776839,-0.639282,0.30003944,-0.20085171,-0.20065042],[-0.45765534,0.2437524,0.1612162,-0.505311,-0.10535189,0.53285104,-0.035850286,0.6772977,0.32458842,-0.028878551,-0.14009416,-0.08665312,-0.637454],[-0.19389966,0.029339047,-0.64755374,-0.22215632,-0.07883323,-0.5064457,0.13198881,0.22710016,-0.51746994,-0.3380553,0.19166663,0.023132537,0.14991826]],"activation":"identity","dense_3_b":[[-0.007823971],[-0.0085836565],[0.026530033]]},{"dense_4_W":[[0.93978757,0.73359257,-0.55248207]],"dense_4_b":[[-0.011260626]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json new file mode 100644 index 0000000000..829cfc644e --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_JETTA_MK7.json @@ -0,0 +1 @@ +{"input_std":[[9.103015],[1.0622845],[0.49049565],[0.040089965],[1.0459728],[1.0516889],[1.056568],[1.0408956],[1.019547],[0.99288225],[0.971193],[0.04002349],[0.040028628],[0.040033314],[0.040071882],[0.04004624],[0.039898124],[0.03964297]],"model_test_loss":0.017716435715556145,"input_size":18,"current_date_and_time":"2023-08-13_20-52-08","input_mean":[[23.148537],[0.033288945],[-0.0069383495],[0.006664864],[0.03740209],[0.036363255],[0.035049323],[0.035006184],[0.036647633],[0.039277017],[0.043880757],[0.006671388],[0.0066857547],[0.0066986936],[0.0067147585],[0.006739247],[0.0067356247],[0.006714203]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[0.6366688],[-0.56371534],[-0.14571653],[-1.4455271],[0.07993529],[-0.0736673],[-0.3548013]],"dense_1_W":[[-1.3113872,0.76172936,0.016918765,0.16224551,0.094115384,0.32684585,-0.19450265,-0.13789567,0.04242289,-0.15509766,0.13169524,-0.13143206,0.032396875,-0.3091977,-0.26571655,-0.13967507,-0.065433465,0.15276721],[-0.07811718,1.0454074,8.495185,-0.7922316,-0.51769626,0.1606819,0.13209969,0.20275009,0.09197654,0.39435092,-0.8629015,0.48206797,0.43022737,0.085256994,-0.39034274,-0.29939228,0.26249692,0.21062453],[-0.0062007825,2.1868382,0.015541467,-0.49308324,-1.4422244,1.0147123,-0.78595483,0.5242463,0.32791784,-0.008197891,-0.23073053,0.31578735,-0.15602784,0.14793761,-0.23083985,0.052981053,0.004748488,0.13156143],[1.2384007,0.6278066,-0.009660281,0.40833205,0.37839705,1.1528418,-1.1164012,-0.32824138,-0.30145752,0.3350114,0.0860737,0.07817285,-0.18830507,-0.33780572,-0.513321,-0.07987069,-0.20404594,0.2723732],[0.0037708185,1.6037707,-0.018128129,0.14369644,1.3666841,1.1831751,1.1010982,1.5845065,1.3880488,0.9383163,0.6016751,0.32569328,0.05112049,-0.3200393,0.6177238,0.070831224,-0.3571441,-0.025784306],[0.0020605826,0.40808862,-0.0019806053,-0.22798932,0.4128132,1.312186,-2.012465,-0.18998149,0.38222578,0.034227915,-0.007133824,0.09108775,0.41027293,-0.35144845,0.41214025,0.18282686,-0.1982243,-0.29242274],[-0.11462315,0.14389442,1.7229052,-0.49408183,0.8118903,0.98040986,-0.1475524,0.32353425,-0.4042175,-0.4816111,-0.08436794,0.30240852,0.011541781,-0.27904144,-0.16726047,0.13386558,0.13543732,0.051627796]],"activation":"σ"},{"dense_2_W":[[-0.30253688,0.01659866,-0.5824275,-0.55473965,-0.65702754,0.4192852,-0.11081115],[0.42800114,-0.20567572,0.73502725,-0.3303795,0.5659001,0.33262393,-0.20845625],[-0.3169161,0.124995895,0.15316603,-0.3496913,0.25013453,0.83376133,0.08400041],[-1.9621079,1.3082521,-0.8913488,0.17462318,0.90885985,-0.7408587,-0.09095186],[0.65295506,-1.0685686,-0.3590795,-1.0821314,0.52553105,-0.33879203,-0.70096666],[0.3209469,-0.25117752,-0.6676659,0.04474845,-0.34462446,-0.6437361,0.2751733],[-0.16672656,0.05766618,0.020867005,-0.14019237,0.19822632,0.58170456,0.371152],[-0.16170846,-0.28313425,-0.72305113,-0.21175383,-0.091973335,0.069761746,-0.13998356],[-0.121987164,0.051230323,0.6086433,0.0826418,0.3024844,0.36294287,0.11378607],[0.23916546,0.32369035,0.29166648,-0.5202349,-0.25274298,0.05645988,0.004484808],[0.476144,-0.20375697,0.7744821,-0.20136273,-0.1997987,0.5086857,-0.13244303],[-0.5018623,0.0039712084,-1.3228892,-0.35630298,0.5103365,0.29102045,-0.42318186],[0.47396633,-0.5094677,-0.7413271,-0.0389592,-1.0502282,0.050273117,0.13152136]],"activation":"σ","dense_2_b":[[0.08725935],[-0.07465063],[0.03314263],[-0.37226093],[-0.023633253],[0.1155244],[-0.035357073],[0.23985702],[-0.20116974],[-0.31014088],[-0.10752753],[0.28552514],[-0.040062964]]},{"dense_3_W":[[-0.6032763,0.62711155,-0.018731741,-0.4367009,-0.33474848,-0.5986305,0.3242449,-0.5550633,0.03024249,0.37429914,0.5477163,-0.11621696,-0.06627925],[0.57853127,-0.07147071,-0.45605588,0.090353325,0.6903964,-0.054210514,0.117629945,-0.07430856,-0.63455236,0.17655165,0.17357552,0.5822009,0.35904822],[0.017287904,-0.4711383,0.31602967,-0.5097068,0.18833941,0.2322238,0.6586847,-0.3739661,-0.35619813,-0.50459105,0.065162025,-0.047679372,-0.048519257]],"activation":"identity","dense_3_b":[[0.030126056],[-0.038708143],[0.07066878]]},{"dense_4_W":[[1.1202317,-1.0828689,0.09244317]],"dense_4_b":[[0.034058213]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json new file mode 100644 index 0000000000..420f806e61 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_MK8.json @@ -0,0 +1 @@ +{"input_std":[[10.3052],[1.1070998],[0.5069369],[0.037658893],[1.0964528],[1.0996523],[1.102182],[1.0794489],[1.0610045],[1.0333265],[1.00464],[0.037511136],[0.03756209],[0.037611235],[0.037606418],[0.03751489],[0.037262734],[0.03702075]],"model_test_loss":0.012260119430720806,"input_size":18,"current_date_and_time":"2023-08-13_22-59-06","input_mean":[[21.415882],[0.017556097],[-0.004099798],[-0.003401093],[0.020456757],[0.019209672],[0.01819574],[0.01823048],[0.019393403],[0.02141286],[0.022404209],[-0.0034443606],[-0.0034451415],[-0.0034438162],[-0.00339113],[-0.003406753],[-0.003565579],[-0.0037500844]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-1.3709847],[-6.2942357],[0.09346686],[6.5184207],[-1.5861837],[-0.014835897],[0.027714923]],"dense_1_W":[[-0.5551179,2.6619074,-0.00640388,0.13290244,-1.037943,0.7656338,0.4283093,0.37328,0.26634002,-0.13999927,-0.15548675,0.097528294,-0.3680248,0.25233808,-0.08934639,-0.015347149,-0.11909841,0.111676104],[-3.5742025,-0.40220144,-1.3790281,0.5485811,-0.050429426,-0.45648634,0.7774281,-1.1217349,-0.6165576,0.1251687,-0.20120902,-0.4511548,-0.13060598,0.22547151,-0.016303696,-0.20157799,0.09675224,-0.07398645],[-0.0012344504,1.1922354,-0.0048953234,0.2634142,-0.6455366,1.3841971,-0.45204964,0.1695878,0.063574985,0.10271839,-0.10217061,-0.08847725,-0.13457958,-0.4961231,-0.5403963,-0.34123054,-0.017704021,0.515054],[3.7061737,-0.9532865,-1.424426,0.6954919,-0.022263907,-0.5896788,1.3645809,-1.1818194,-0.56429285,0.19767563,-0.25111258,0.020198058,-0.52572525,-0.16691986,0.31276083,-0.55734074,0.41006702,-0.19204228],[-0.60735714,-3.3537095,-0.0038090213,0.5654296,1.0198475,-0.6862546,0.08697712,-0.5121695,-0.3346962,0.17586575,0.22113432,-0.08847206,-0.3487319,-0.14522201,0.23490162,-0.18125007,0.10122172,-0.13981529],[0.0017254709,0.62618876,-0.0013352685,-0.0367472,0.040667597,1.5291207,-1.528107,-0.38684332,0.16372706,-0.2591873,0.28832328,0.3641689,-0.24908063,0.1472321,-0.119317986,-0.06420556,0.2222137,-0.2624101],[0.0055754874,-1.8040034,-3.361559,1.0961792,-0.3001131,-0.9308391,1.4269178,0.22353382,-0.4215277,-0.15384597,1.3272976,-0.34549853,-0.6220911,0.38486806,-0.33497638,-0.35858622,0.34940526,-0.16165465]],"activation":"σ"},{"dense_2_W":[[-0.5476146,1.6963724,-1.6546803,0.5176808,0.5235883,-0.97987354,0.7380813],[-0.36497906,-0.2612212,-0.016376352,0.10838414,0.073292136,0.0015826789,-0.50295585],[0.6298286,-0.46785268,-0.16137074,-0.07789413,0.27898172,0.3285615,0.4176234],[0.5922487,-0.34946433,-0.048434507,-0.0985068,-0.6583057,1.0643016,-0.46150544],[0.73731494,-0.6556301,0.81423277,-0.6606677,-0.36022863,0.2516511,-0.49312246],[-0.6430194,-0.41603965,-0.10390351,-0.49625757,0.10309995,-0.22808753,-0.30847374],[0.39266315,-0.15612036,-0.58519137,0.49023283,0.09567495,-1.016928,0.08579332],[0.34867492,0.1914456,-0.21379824,0.041593276,-0.5044442,0.9609127,-0.4119613],[0.37885004,-0.37522417,0.56330055,-0.53145355,-0.91467786,0.5687067,-0.043723527],[-0.57495284,0.46496224,-0.4232346,-0.3390447,0.03577091,0.086310275,-0.06801427],[0.37579545,-0.5779554,-0.16705948,-0.33729044,0.04347679,-0.5497756,-0.24243224],[0.5380365,-0.29537776,0.15974742,-0.5128796,-0.23003492,0.6015878,-0.20965582],[-0.9828622,0.75779086,-1.3404784,1.6249025,0.44636276,-0.6208371,0.7130451]],"activation":"σ","dense_2_b":[[-0.3861388],[0.0100793],[0.05162594],[-0.022311607],[-0.009086858],[-0.23065013],[-0.07641792],[-0.026186304],[-0.23643298],[-0.03883572],[0.021982284],[0.0043940307],[-0.09819139]]},{"dense_3_W":[[0.6619464,0.47387305,-0.55588114,-0.4830425,-0.53887093,0.47769704,0.343591,0.23760638,-0.19049422,0.46038502,0.3466442,-0.52039224,-0.02187165],[0.037034765,-0.5791299,-0.46348968,0.33793876,-0.1364937,-0.17524627,0.48086503,-0.31004375,0.11112415,0.4982084,0.36429304,-0.0013359467,0.5441025],[-0.3904947,0.44045958,-0.18596323,0.615597,-0.032387026,-0.014983241,-0.649624,0.26271734,0.26629633,-0.062090363,-0.37463444,0.5122715,-0.24724658]],"activation":"identity","dense_3_b":[[-0.02654226],[-0.035016984],[0.028202571]]},{"dense_4_W":[[-0.2911369,-0.77550566,0.7692582]],"dense_4_b":[[0.03128059]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json new file mode 100644 index 0000000000..f80e89d1ee --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_PASSAT_NMS.json @@ -0,0 +1 @@ +{"test_dict":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.835412,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.2336276,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.2189443,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0102171,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.030764546,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7043263,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0948871,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.23544258,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.63234776,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.85114586,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.5361517,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.6150184,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.2294357,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-2.1777012,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1220803,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.256643,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.42655924,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.82392097,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.20633036,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8738396,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0698426,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0190142,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-2.2355235,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.11299175,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.7797719,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0755801,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.90929884,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1290616,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.9102107,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.63283235,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.2970404,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0833684,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-2.1911933,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.201447,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.9321379,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.098811716,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.22733232,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.4293779,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6842653,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.1035659,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.7793283,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.7686179,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.107880056,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0867288,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.86887354,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0619769,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1285523,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.69223654,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.7518216,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.0596709,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-2.11871,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.9609706,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.6211437,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.52062637,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2104128,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1836823,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.5248347,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.292731,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.138114,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.2132114,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.27300417,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.26868293,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.64426357,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.08701679,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.024351712,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1174083,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1745512,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.63085973,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.18953863,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.70560896,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.53338933,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-2.187799,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.9880617,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.1916934,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.0533769,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.7911664,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.34528437,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.00016171113,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-2.161565,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.75353914,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.97723967},"input_std":[[8.338225],[1.408846],[1.0394787],[0.03335341],[1.3959996],[1.4030461],[1.407399],[1.384101],[1.3516284],[1.3079585],[1.2541819],[0.033312354],[0.033323247],[0.033341203],[0.033303928],[0.033300698],[0.033334702],[0.0333457]],"model_test_loss":0.016627496108412743,"input_size":18,"current_date_and_time":"2023-07-17_12-56-04","input_mean":[[16.703712],[0.10588005],[-0.010265364],[-0.029445024],[0.10293076],[0.104083925],[0.105137445],[0.10571949],[0.10239706],[0.09606354],[0.09232913],[-0.02939694],[-0.029403588],[-0.02942391],[-0.02959834],[-0.029817479],[-0.030200344],[-0.030651137]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"test_dict_zero_bias":{"[0.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.0787524,"[0.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.35174394,"[0.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.41936088,"[40.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.2337253,"[40.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.13621223,"[40.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.49109936,"[20.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.439525,"[40.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.13884512,"[20.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.53931737,"[40.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.73874366,"[40.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.35439628,"[40.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.8166686,"[0.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.47153878,"[0.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.9580405,"[0.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.36217993,"[0.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.5416738,"[20.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.2621055,"[40.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.131006,"[0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.7893468,"[40.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.1926978,"[20.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.1279483,"[20.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.3684851,"[0.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3094211,"[40.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.3712977,"[0.0,-4.0,0.0,0.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.7667332,"[0.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.27987432,"[0.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.041331887,"[20.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.1544355,"[40.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.7870656,"[40.0,-4.0,4.0,0.0,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.43408832,"[40.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.23026863,"[40.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3094313,"[0.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.0644252,"[0.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.7976848,"[40.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.99903697,"[40.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.15177456,"[0.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.492374,"[20.0,0.0,-4.0,0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.3808361,"[40.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.9073831,"[0.0,4.0,0.0,0.0,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.32916206,"[0.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-0.106909096,"[40.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.6694711,"[40.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.2106556,"[20.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.4411385,"[40.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.9513951,"[20.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.412755,"[0.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.2576269,"[20.0,4.0,-4.0,-0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.36055696,"[0.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.6838698,"[20.0,4.0,0.0,-0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3918278,"[0.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-0.8520211,"[20.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.3348066,"[20.0,4.0,-4.0,0.0,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.29837233,"[40.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.697657,"[20.0,0.0,4.0,0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.1919205,"[0.0,4.0,4.0,0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.7850812,"[20.0,4.0,-4.0,0.2,5.2,4.8,4.4,2.8,1.6,0.0,-2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.21019909,"[40.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.42828774,"[20.0,-4.0,-4.0,0.0,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.4563662,"[0.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.8075129,"[20.0,0.0,0.0,-0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.7073532,"[20.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.047708154,"[20.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.3243128,"[40.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-0.003768146,"[20.0,0.0,-4.0,-0.2,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.211508,"[20.0,4.0,4.0,-0.2,2.8,3.2,3.6,5.2,6.4,8.0,10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":1.4588401,"[20.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.4644309,"[0.0,0.0,0.0,0.2,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0761973,"[20.0,0.0,-4.0,0.0,1.2,0.8,0.4,-1.2,-2.4,-4.0,-6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":-1.3106804,"[20.0,-4.0,4.0,0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":0.5213471,"[20.0,-4.0,4.0,-0.2,-5.2,-4.8,-4.4,-2.8,-1.6,0.0,2.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.5822113,"[0.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.9868801,"[20.0,-4.0,0.0,-0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.0855144,"[0.0,0.0,4.0,0.0,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.31297475,"[40.0,4.0,4.0,0.0,2.8,3.2,3.6,5.2,6.4,8.0,10.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":1.2781342,"[0.0,-4.0,0.0,0.2,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,-4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.8265104,"[40.0,0.0,4.0,-0.2,-1.2,-0.8,-0.4,1.2,2.4,4.0,6.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":0.6158317,"[20.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0]":0.37998584,"[0.0,-4.0,-4.0,-0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2,-0.2]":-1.9141586,"[40.0,4.0,0.0,0.2,4.0,4.0,4.0,4.0,4.0,4.0,4.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":1.0466149,"[40.0,-4.0,-4.0,0.2,-2.8,-3.2,-3.6,-5.2,-6.4,-8.0,-10.0,0.2,0.2,0.2,0.2,0.2,0.2,0.2]":-1.0325543},"layers":[{"dense_1_b":[[-2.837288],[-6.5732856],[-0.36112186],[-2.4264846],[-0.53084093],[-0.17624182],[5.4556284]],"dense_1_W":[[-2.3625484,0.70262957,-0.39007878,-0.52770585,0.35169983,-0.35000876,-0.12762427,-1.0095628,-0.83572966,-0.730048,0.6743538,-0.39424068,0.3901122,0.36599886,-0.011965084,0.045552857,0.4666889,-0.3256988],[-3.6053147,-0.31673837,0.66194737,0.3903138,0.98095685,1.2762904,-1.3785179,-1.296343,0.71970254,0.3438452,0.031964917,0.058328565,-0.058488294,-0.33832067,-0.12332722,0.165694,-0.020551614,-0.050333176],[-0.0041524894,0.520019,-0.04355893,-0.05094888,0.60922056,-1.3748976,0.3093316,-1.0256472,0.19658932,0.052907944,0.0067435564,-0.2945121,0.08360483,0.2436637,0.22430366,-0.12585463,0.044775117,-0.054093584],[-1.7719781,-1.0094852,0.5476492,0.15155911,-0.22202487,0.5499667,-0.17507018,1.3075997,0.97578096,0.32534385,-0.32253557,0.19911957,-0.004920554,-0.44574377,0.3794811,-0.23206042,-0.24507338,0.17988442],[-0.096019216,-2.8020802,0.1768002,-0.11615186,1.0867412,-0.4728857,-0.73343986,-1.899336,-1.1828195,1.287238,0.2246014,-0.3443722,0.40425447,0.11932455,0.0037963327,0.3826241,-0.32104075,0.03184444],[0.18515867,0.15802903,11.005427,0.41247886,-2.3798037,-0.84801793,-0.80931455,1.2942814,1.7535613,0.6347409,1.4362186,0.296623,-0.022977732,-0.60491437,0.034293108,-0.08022964,-0.004915833,-0.13788682],[3.219948,-0.5069822,0.39000142,0.34811074,0.6547,0.5350491,-0.30209413,-0.7547057,0.37530193,-0.46802387,0.3797982,0.29564524,-0.28160524,-0.464101,-0.055149645,0.29884568,-0.052221056,-0.08509861]],"activation":"σ"},{"dense_2_W":[[-0.6509598,0.29119527,0.4522418,0.67029077,0.31190413,0.24329087,-0.13738276],[-0.9829914,3.5774024,-1.8433813,1.6228933,-1.0542817,0.96605825,0.16334952],[-0.07484317,1.7878124,-1.9842395,1.3015918,-0.045502957,0.29070792,0.23896325],[-0.017372472,0.5585439,0.38864908,-0.11616016,0.5211495,0.2445178,-0.0821982],[-2.9980035,3.602488,-0.73448294,0.5120281,-1.5761098,1.7105227,2.7474566],[-1.0895693,-0.061832696,1.3823732,0.36133802,-0.51309395,0.6033679,0.18768047],[-0.8188117,0.44345558,1.1498142,0.86907035,-0.38104993,0.18720235,-0.23738712],[0.06584014,-0.61574376,-1.1880105,-0.40490726,-0.46003637,-0.014412597,0.44476265],[2.0212123,1.1144648,-1.0255187,0.9472248,-0.3807562,-3.1219852,-3.644532],[0.0436852,2.2160454,-1.5884769,1.0859653,-0.51730025,0.06356327,0.016509296],[-1.2976134,3.8786354,-1.172869,1.3448112,-1.3144706,1.0707655,0.20357744],[0.3019769,-0.77098906,0.3424374,-0.59369296,0.26005548,-0.20149492,-0.72477216],[0.31829432,0.14789248,-0.20679975,-1.3688983,0.721357,-1.155302,-0.35438472]],"activation":"σ","dense_2_b":[[-0.034817904],[-0.39495024],[-0.16561012],[0.023161512],[0.054840133],[-0.034001518],[-0.05686173],[-0.026203524],[-0.6473888],[0.28907722],[-0.38862142],[-0.091984995],[0.02006307]]},{"dense_3_W":[[-0.2560296,-0.47561207,-0.2180975,0.2697371,-0.28709534,-0.2907532,0.06514903,-0.08777709,0.07678251,-0.14984281,0.20281981,0.027406089,0.26574254],[0.30667484,0.5253529,0.52860755,0.22304007,0.63340044,-0.8269798,-0.36970806,-0.1585502,-1.241306,0.16619857,0.5249275,-0.19621038,0.32695386],[-0.64127594,0.27470827,0.028331403,-0.32301947,0.6665432,-0.8246224,-0.33862486,0.38033482,-1.4627537,0.2530845,0.40247354,-0.49841896,0.30732566]],"activation":"identity","dense_3_b":[[0.06380872],[-0.13593788],[-0.05554244]]},{"dense_4_W":[[-0.17066109,0.67130095,0.99185157]],"dense_4_b":[[-0.057568375]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json new file mode 100644 index 0000000000..2f0c995417 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/lat_models/VOLKSWAGEN_TIGUAN_MK2.json @@ -0,0 +1 @@ +{"input_std":[[8.782441],[1.1398275],[0.4609802],[0.04271673],[1.1238744],[1.1299343],[1.1346341],[1.1119426],[1.0859472],[1.0505929],[1.01332],[0.042612497],[0.042648252],[0.042672537],[0.042585343],[0.042469293],[0.042215183],[0.04179356]],"model_test_loss":0.018630679696798325,"input_size":18,"current_date_and_time":"2023-08-14_01-59-38","input_mean":[[22.468307],[-0.0059960946],[-0.008688168],[-0.003941978],[-0.004109974],[-0.0052409726],[-0.0066701453],[-0.010034277],[-0.013358513],[-0.011732898],[-0.0112503925],[-0.0039730547],[-0.0039907545],[-0.004007257],[-0.0040642004],[-0.004142748],[-0.004199409],[-0.0042553144]],"input_vars":["v_ego","lateral_accel","lateral_jerk","roll","lateral_accel_m03","lateral_accel_m02","lateral_accel_m01","lateral_accel_p03","lateral_accel_p06","lateral_accel_p10","lateral_accel_p15","roll_m03","roll_m02","roll_m01","roll_p03","roll_p06","roll_p10","roll_p15"],"output_size":1,"layers":[{"dense_1_b":[[-0.22421235],[0.022291217],[0.015709542],[-0.04664034],[-0.036350474],[-0.24544194],[-0.04896989]],"dense_1_W":[[-0.015455264,0.35899833,6.998555,0.81398284,0.34668404,0.50750834,-0.30584475,0.6416511,-0.5377552,-0.026296293,-0.6502898,0.43909717,-0.27295533,-0.76501244,-0.5884351,0.22982346,-0.26877192,0.26560456],[-0.01508568,1.8268416,0.00402336,0.2784217,-0.7716931,0.46446714,-0.11456723,0.10766974,0.30401927,-0.085616745,-0.15998937,0.44400185,-0.48933145,-0.23811713,-0.440158,-0.10242332,0.051594254,0.12977812],[-0.009739386,-2.6971612,0.001168384,-0.35022622,0.65414,-0.717214,-0.44903016,-0.49311733,-0.43150806,0.06219255,0.23182331,-0.44158918,-0.49226075,0.47947824,0.6467593,0.34515625,0.09018108,-0.47900265],[1.0840801,-0.7623997,-0.005088885,-0.52213657,-0.22831856,-0.6294846,-1.2465742,0.3222685,0.020507088,-0.024931427,-0.24259277,0.08206772,0.21676067,-0.41708487,0.50989604,0.33494267,-0.079637915,-0.14551927],[0.004391417,-0.10370217,0.0014306986,-0.072918385,-0.63637805,-1.1973468,0.5230291,-0.05261172,0.25703079,0.041062124,-0.34666935,0.0939909,-0.48456657,0.08325979,0.5252982,-0.10210225,-0.12507002,0.05711295],[-0.010150519,0.47018084,1.575968,-0.12638067,0.58264244,1.1620525,-0.6418302,-0.022278491,0.5091847,-0.16685116,0.074821465,0.22004989,-0.099773616,-0.5007223,-0.09964562,0.46015504,0.21582201,-0.23595089],[1.1357191,0.7709306,0.003718608,0.6016892,0.7352459,0.33387783,1.0426474,0.12312558,-0.49904007,0.032169387,0.37637976,-0.05813148,-0.49427262,0.49914685,-0.2028158,-0.5950836,0.2782391,0.028333709]],"activation":"σ"},{"dense_2_W":[[0.43099108,-0.40067255,0.15829495,-0.48378208,0.396984,-0.1558594,-0.1562694],[0.6452132,0.40809157,-0.5897283,1.2150947,-0.6793519,0.78984624,0.66217726],[-1.0487145,-0.15708125,0.48070663,-1.294668,0.44506454,-1.0924927,-1.3423347],[-0.0905496,-0.39283985,-0.560608,-0.4611327,-0.3925291,0.005858116,0.5098873],[-1.3053528,-0.17654762,1.1515645,1.4426079,1.0838766,-0.6442153,1.756127],[-0.34371176,1.1574818,0.017585738,0.20476972,-0.463017,-0.22401343,-0.5996214],[0.20533562,0.79994386,-0.8060774,0.17529243,-0.38612595,0.03759143,-0.22778784],[-0.10523058,1.0248777,-0.5244927,0.58016795,-0.48161384,0.2411753,-0.3102547],[0.041490827,-0.12094459,0.44139338,0.123947956,0.5913839,-0.50927347,0.82576096],[-0.17784683,-0.7949691,0.6407812,0.36980206,-0.045769464,-0.15805046,0.27670377],[0.13153441,-0.9403638,0.2306892,-0.18441507,0.34671855,-0.074668296,0.5032],[-0.04615598,0.71520805,-0.0030287886,-0.17552495,-0.19403128,0.21251689,0.24918763],[0.2859375,-0.5510105,0.31645826,-0.15235336,0.62049425,0.14673771,0.11173112]],"activation":"σ","dense_2_b":[[-0.20544042],[0.14436114],[-0.12040931],[-0.16554375],[0.36716554],[0.17168364],[-0.065600924],[-0.01176559],[-0.03528442],[0.037511505],[-0.11677802],[-0.035834227],[-0.17063564]]},{"dense_3_W":[[-0.3723276,0.4951858,-0.17594789,0.31653145,-0.09435181,0.45912716,-0.30004933,0.41055498,-0.21392249,0.35937718,-0.10425309,-0.2715391,-0.5834551],[-0.25541237,-0.58331114,0.4694298,-0.14703207,0.7632458,-0.35720977,-0.26993504,-0.5713957,0.020457853,0.012436012,-0.049483325,0.1666998,0.33925256],[0.45550138,0.12273135,0.51411545,0.43389788,0.0037848332,-0.41984108,-0.10243085,-0.56994265,0.24741924,0.44959965,0.5980098,-0.37595576,0.34953722]],"activation":"identity","dense_3_b":[[0.048041742],[-0.07375918],[-0.090859294]]},{"dense_4_W":[[0.09198451,-1.1679362,-0.9176557]],"dense_4_b":[[0.08128402]],"activation":"identity"}]} \ No newline at end of file diff --git a/opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json b/opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json new file mode 100644 index 0000000000..1886683538 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/neural_ff_weights.json @@ -0,0 +1,5 @@ +{ + "CHEVROLET_BOLT_EUV": {"w_1": [[0.3452189564704895, -0.15614677965641022, -0.04062516987323761, -0.5960758328437805, 0.3211185932159424, 0.31732726097106934, -0.04430829733610153, -0.37327295541763306, -0.14118380844593048, 0.12712529301643372, 0.2641555070877075, -0.3451094627380371, -0.005127656273543835, 0.6185108423233032, 0.03725295141339302, 0.3763789236545563], [-0.0708412230014801, 0.3667356073856354, 0.031383827328681946, 0.1740853488445282, -0.04695861041545868, 0.018055908381938934, 0.009072160348296165, -0.23640218377113342, -0.10362917929887772, 0.022628149017691612, -0.224413201212883, 0.20718418061733246, -0.016947750002145767, -0.3872031271457672, -0.15500062704086304, -0.06375953555107117], [-0.0838046595454216, -0.0242826659232378, -0.07765661180019379, 0.028858814388513565, -0.09516210108995438, 0.008368706330657005, 0.1689300835132599, 0.015036891214549541, -0.15121428668498993, 0.1388195902109146, 0.11486363410949707, 0.0651545450091362, 0.13559958338737488, 0.04300367832183838, -0.13856294751167297, -0.058136988431215286], [-0.006249868310987949, 0.08809533715248108, -0.040690965950489044, 0.02359287068247795, -0.00766348373144865, 0.24816390872001648, -0.17360293865203857, -0.03676899895071983, -0.17564819753170013, 0.18998438119888306, -0.050583917647600174, -0.006488069426268339, 0.10649101436138153, -0.024557121098041534, -0.103276826441288, 0.18448011577129364]], "b_1": [0.2935388386249542, 0.10967712104320526, -0.014007942751049995, 0.211833655834198, 0.33605605363845825, 0.37722209095954895, -0.16615016758441925, 0.3134673535823822, 0.06695777177810669, 0.3425212800502777, 0.3769673705101013, 0.23186539113521576, 0.5770409107208252, -0.05929069593548775, 0.01839117519557476, 0.03828774020075798], "w_2": [[-0.06261160969734192, 0.010185074992477894, -0.06083013117313385, -0.04531499370932579, -0.08979734033346176, 0.3432150185108185, -0.019801849499344826, 0.3010321259498596], [0.19698476791381836, -0.009238275699317455, 0.08842222392559052, -0.09516377002000809, -0.05022778362035751, 0.13626104593276978, -0.052890390157699585, 0.15569131076335907], [0.0724768117070198, -0.09018408507108688, 0.06850195676088333, -0.025572121143341064, 0.0680626779794693, -0.07648195326328278, 0.07993496209383011, -0.059752143919467926], [1.267876386642456, -0.05755887180566788, -0.08429178595542908, 0.021366603672504425, -0.0006479775765910745, -1.4292563199996948, -0.08077696710824966, -1.414825439453125], [0.04535430669784546, 0.06555880606174469, -0.027145234867930412, -0.07661093026399612, -0.05702832341194153, 0.23650476336479187, 0.0024587824009358883, 0.20126521587371826], [0.006042032968252897, 0.042880818247795105, 0.002187949838116765, -0.017126334831118584, -0.08352015167474747, 0.19801731407642365, -0.029196614399552345, 0.23713473975658417], [-0.01644900068640709, -0.04358499124646187, 0.014584392309188843, 0.07155826687812805, -0.09354910999536514, -0.033351872116327286, 0.07138452678918839, -0.04755295440554619], [-1.1012420654296875, -0.03534531593322754, 0.02167935110628605, -0.01116552110761404, -0.08436500281095505, 1.1038788557052612, 0.027903547510504723, 1.0676132440567017], [0.03843916580080986, -0.0952216386795044, 0.039226632565259933, 0.002778085647150874, -0.020275786519050598, -0.07848760485649109, 0.04803166165947914, 0.015538203530013561], [0.018385495990514755, -0.025189843028783798, 0.0036680365446954966, -0.02105865254998207, 0.04808586835861206, 0.1575016975402832, 0.02703506126999855, 0.23039312660694122], [-0.0033881019335240126, -0.10210853815078735, -0.04877309128642082, 0.006989633198827505, 0.046798162162303925, 0.38676899671554565, -0.032304272055625916, 0.2345031052827835], [0.22092825174331665, -0.09642873704433441, 0.04499409720301628, 0.05108088254928589, -0.10191166400909424, 0.12818090617656708, -0.021021494641900063, 0.09440375864505768], [0.1212429478764534, -0.028194155544042587, -0.0981956496834755, 0.08226924389600754, 0.055346839129924774, 0.27067816257476807, -0.09064067900180817, 0.12580905854701996], [-1.6740131378173828, -0.02066155895590782, -0.05924689769744873, 0.06347910314798355, -0.07821853458881378, 1.2807466983795166, 0.04589352011680603, 1.310766577720642], [-0.09893272817134857, -0.04093599319458008, -0.02502273954451084, 0.09490344673395157, -0.0211324505507946, -0.09021010994911194, 0.07936318963766098, -0.03593116253614426], [-0.08490308374166489, -0.015558987855911255, -0.048692114651203156, -0.007421435788273811, -0.040531404316425323, 0.25889304280281067, 0.06012800335884094, 0.27946868538856506]], "b_2": [0.07973937690258026, -0.010446485131978989, -0.003066520905122161, -0.031895797699689865, 0.006032303906977177, 0.24106740951538086, -0.008969511836767197, 0.2872662842273712], "w_3": [[-1.364486813545227, -0.11682678014039993, 0.01764785870909691, 0.03926877677440643], [-0.05695437639951706, 0.05472218990325928, 0.1266128271818161, 0.09950875490903854], [0.11415273696184158, -0.10069356113672256, 0.0864749327301979, -0.043946366757154465], [-0.10138195008039474, -0.040128443390131, -0.08937158435583115, -0.0048376512713730335], [-0.0028251828625798225, -0.04743027314543724, 0.06340016424655914, 0.07277824729681015], [0.49482327699661255, -0.06410001963376999, -0.0999293103814125, -0.14250673353672028], [0.042802367359399796, 0.0015462725423276424, -0.05991362780332565, 0.1022040992975235], [0.3523194193840027, 0.07343732565641403, 0.04157765582203865, -0.12358107417821884]], "b_3": [0.2653026282787323, -0.058485131710767746, -0.0744510293006897, 0.012550175189971924], "w_4": [[0.5988775491714478, 0.09668736904859543], [-0.04360569268465042, 0.06491032242774963], [-0.11868984252214432, -0.09601487964391708], [-0.06554870307445526, -0.14189276099205017]], "b_4": [-0.08148707449436188, -2.8251802921295166], "input_norm_mat": [[-3.0, 3.0], [-3.0, 3.0], [0.0, 40.0], [-3.0, 3.0]], "output_norm_mat": [-1.0, 1.0], "temperature": 100.0}, + "CHEVROLET_BOLT_CC": {"w_1": [[0.3452189564704895, -0.15614677965641022, -0.04062516987323761, -0.5960758328437805, 0.3211185932159424, 0.31732726097106934, -0.04430829733610153, -0.37327295541763306, -0.14118380844593048, 0.12712529301643372, 0.2641555070877075, -0.3451094627380371, -0.005127656273543835, 0.6185108423233032, 0.03725295141339302, 0.3763789236545563], [-0.0708412230014801, 0.3667356073856354, 0.031383827328681946, 0.1740853488445282, -0.04695861041545868, 0.018055908381938934, 0.009072160348296165, -0.23640218377113342, -0.10362917929887772, 0.022628149017691612, -0.224413201212883, 0.20718418061733246, -0.016947750002145767, -0.3872031271457672, -0.15500062704086304, -0.06375953555107117], [-0.0838046595454216, -0.0242826659232378, -0.07765661180019379, 0.028858814388513565, -0.09516210108995438, 0.008368706330657005, 0.1689300835132599, 0.015036891214549541, -0.15121428668498993, 0.1388195902109146, 0.11486363410949707, 0.0651545450091362, 0.13559958338737488, 0.04300367832183838, -0.13856294751167297, -0.058136988431215286], [-0.006249868310987949, 0.08809533715248108, -0.040690965950489044, 0.02359287068247795, -0.00766348373144865, 0.24816390872001648, -0.17360293865203857, -0.03676899895071983, -0.17564819753170013, 0.18998438119888306, -0.050583917647600174, -0.006488069426268339, 0.10649101436138153, -0.024557121098041534, -0.103276826441288, 0.18448011577129364]], "b_1": [0.2935388386249542, 0.10967712104320526, -0.014007942751049995, 0.211833655834198, 0.33605605363845825, 0.37722209095954895, -0.16615016758441925, 0.3134673535823822, 0.06695777177810669, 0.3425212800502777, 0.3769673705101013, 0.23186539113521576, 0.5770409107208252, -0.05929069593548775, 0.01839117519557476, 0.03828774020075798], "w_2": [[-0.06261160969734192, 0.010185074992477894, -0.06083013117313385, -0.04531499370932579, -0.08979734033346176, 0.3432150185108185, -0.019801849499344826, 0.3010321259498596], [0.19698476791381836, -0.009238275699317455, 0.08842222392559052, -0.09516377002000809, -0.05022778362035751, 0.13626104593276978, -0.052890390157699585, 0.15569131076335907], [0.0724768117070198, -0.09018408507108688, 0.06850195676088333, -0.025572121143341064, 0.0680626779794693, -0.07648195326328278, 0.07993496209383011, -0.059752143919467926], [1.267876386642456, -0.05755887180566788, -0.08429178595542908, 0.021366603672504425, -0.0006479775765910745, -1.4292563199996948, -0.08077696710824966, -1.414825439453125], [0.04535430669784546, 0.06555880606174469, -0.027145234867930412, -0.07661093026399612, -0.05702832341194153, 0.23650476336479187, 0.0024587824009358883, 0.20126521587371826], [0.006042032968252897, 0.042880818247795105, 0.002187949838116765, -0.017126334831118584, -0.08352015167474747, 0.19801731407642365, -0.029196614399552345, 0.23713473975658417], [-0.01644900068640709, -0.04358499124646187, 0.014584392309188843, 0.07155826687812805, -0.09354910999536514, -0.033351872116327286, 0.07138452678918839, -0.04755295440554619], [-1.1012420654296875, -0.03534531593322754, 0.02167935110628605, -0.01116552110761404, -0.08436500281095505, 1.1038788557052612, 0.027903547510504723, 1.0676132440567017], [0.03843916580080986, -0.0952216386795044, 0.039226632565259933, 0.002778085647150874, -0.020275786519050598, -0.07848760485649109, 0.04803166165947914, 0.015538203530013561], [0.018385495990514755, -0.025189843028783798, 0.0036680365446954966, -0.02105865254998207, 0.04808586835861206, 0.1575016975402832, 0.02703506126999855, 0.23039312660694122], [-0.0033881019335240126, -0.10210853815078735, -0.04877309128642082, 0.006989633198827505, 0.046798162162303925, 0.38676899671554565, -0.032304272055625916, 0.2345031052827835], [0.22092825174331665, -0.09642873704433441, 0.04499409720301628, 0.05108088254928589, -0.10191166400909424, 0.12818090617656708, -0.021021494641900063, 0.09440375864505768], [0.1212429478764534, -0.028194155544042587, -0.0981956496834755, 0.08226924389600754, 0.055346839129924774, 0.27067816257476807, -0.09064067900180817, 0.12580905854701996], [-1.6740131378173828, -0.02066155895590782, -0.05924689769744873, 0.06347910314798355, -0.07821853458881378, 1.2807466983795166, 0.04589352011680603, 1.310766577720642], [-0.09893272817134857, -0.04093599319458008, -0.02502273954451084, 0.09490344673395157, -0.0211324505507946, -0.09021010994911194, 0.07936318963766098, -0.03593116253614426], [-0.08490308374166489, -0.015558987855911255, -0.048692114651203156, -0.007421435788273811, -0.040531404316425323, 0.25889304280281067, 0.06012800335884094, 0.27946868538856506]], "b_2": [0.07973937690258026, -0.010446485131978989, -0.003066520905122161, -0.031895797699689865, 0.006032303906977177, 0.24106740951538086, -0.008969511836767197, 0.2872662842273712], "w_3": [[-1.364486813545227, -0.11682678014039993, 0.01764785870909691, 0.03926877677440643], [-0.05695437639951706, 0.05472218990325928, 0.1266128271818161, 0.09950875490903854], [0.11415273696184158, -0.10069356113672256, 0.0864749327301979, -0.043946366757154465], [-0.10138195008039474, -0.040128443390131, -0.08937158435583115, -0.0048376512713730335], [-0.0028251828625798225, -0.04743027314543724, 0.06340016424655914, 0.07277824729681015], [0.49482327699661255, -0.06410001963376999, -0.0999293103814125, -0.14250673353672028], [0.042802367359399796, 0.0015462725423276424, -0.05991362780332565, 0.1022040992975235], [0.3523194193840027, 0.07343732565641403, 0.04157765582203865, -0.12358107417821884]], "b_3": [0.2653026282787323, -0.058485131710767746, -0.0744510293006897, 0.012550175189971924], "w_4": [[0.5988775491714478, 0.09668736904859543], [-0.04360569268465042, 0.06491032242774963], [-0.11868984252214432, -0.09601487964391708], [-0.06554870307445526, -0.14189276099205017]], "b_4": [-0.08148707449436188, -2.8251802921295166], "input_norm_mat": [[-3.0, 3.0], [-3.0, 3.0], [0.0, 40.0], [-3.0, 3.0]], "output_norm_mat": [-1.0, 1.0], "temperature": 100.0}, + "CHEVROLET_VOLT": {"w_1": [[0.5516733527183533, 0.28650903701782227, 1.0616134855438151e-19, -0.2482127994298935, 0.5165372490882874, 0.32581156492233276, 0.6645702123641968, 0.4194486737251282, 0.5927627086639404, -0.0328187569975853, 0.6323108077049255, -0.12203103303909302, 0.11281631886959076, -2.654628183940133e-10, 0.5394119620323181, -0.4970140755176544], [-0.2910875976085663, -0.038319461047649384, 1.9649572053620603e-19, 0.4981677830219269, 0.0054930406622588634, 0.07476851344108582, 0.20472633838653564, -0.33076775074005127, -0.1498391479253769, -0.06295789778232574, -0.480659544467926, -0.13475002348423004, -0.03518842160701752, -4.782728657559687e-10, -0.34113195538520813, 0.6206631660461426], [-0.11170702427625656, 0.25658369064331055, 1.087845256848947e-19, 0.16607443988323212, -0.10192729532718658, -0.03195486217737198, -0.1803816556930542, 0.22713883221149445, -0.1330508291721344, -0.4118225872516632, 0.17756527662277222, -0.11628653109073639, 0.3751380741596222, -7.316058869832887e-10, -0.01833215169608593, -0.08166859298944473], [-0.07284875959157944, 0.3699161410331726, 5.846104666085234e-19, 0.05571507662534714, 0.030072394758462906, 0.19551986455917358, -0.0005759565392509103, 0.3636842966079712, -0.004623600747436285, -0.2045377939939499, -0.11712410300970078, -0.07342428714036942, 0.2819288969039917, -3.224051026151642e-10, 0.03595889359712601, 0.2487708181142807]], "b_1": [0.16698665916919708, 0.21203921735286713, -9.182525776096566e-19, 0.1625976860523224, 0.49618133902549744, 0.6029171943664551, -0.3458203971385956, 0.015011506155133247, -0.0782870203256607, 0.4928355813026428, 0.2375747561454773, 0.6214734315872192, 0.3511180579662323, -5.705510508491329e-10, -0.0750492662191391, 0.3677784502506256], "w_2": [[-0.04349031671881676, 0.15496383607387543, -0.4055676758289337, 0.11350446939468384, 1.445391527190931e-33, 1.0552627624469692e-16, 0.1733747124671936, 0.35861700773239136], [0.23150336742401123, 0.2276492416858673, -0.18099287152290344, 0.02294851653277874, -2.075977458071018e-18, -1.325045403125424e-16, 0.051872558891773224, -0.1528702974319458], [-2.98845249575707e-21, -9.971494263264824e-20, -5.589338239672942e-20, -4.436884037752495e-20, 4.571689810917957e-35, -3.794950163550598e-30, -9.810562397683511e-20, -3.452006611295061e-20], [0.08596120774745941, -0.054880350828170776, 0.43768489360809326, -0.09713199734687805, 4.4682497518767015e-35, 2.807830046248872e-16, -0.18987804651260376, -0.3948379158973694], [0.14590975642204285, 0.3676301836967468, -0.17351070046424866, 0.15835285186767578, -4.568215973549524e-16, -2.88295181015408e-16, 0.21294236183166504, 0.3801838755607605], [0.15526960790157318, 0.36512187123298645, -0.0003659244393929839, 0.24353988468647003, -1.0020771712415666e-10, -3.6356116551477564e-17, 0.18989993631839752, 0.2028643637895584], [0.31663089990615845, 0.3268280327320099, -0.8160105347633362, 0.24045336246490479, -4.5658180788823553e-35, -4.9482076591820124e-17, 0.14176727831363678, -0.7280115485191345], [-0.026223642751574516, 0.006531805731356144, -0.5413835048675537, -0.041816286742687225, -7.046195992156958e-34, 1.436593157182813e-16, -0.0642424151301384, -0.13547064363956451], [0.13290469348430634, 0.17396631836891174, -0.9817711710929871, 0.13705432415008545, 4.3752832441863396e-35, 7.312650500605639e-17, 0.12381640076637268, -0.16381914913654327], [0.027135619893670082, 0.2109440267086029, 0.14039571583271027, 0.2346874475479126, -2.3970409953885753e-18, -1.54667435310137e-16, 0.1956777274608612, 0.46355459094047546], [0.22228209674358368, 0.16954660415649414, -0.6394681930541992, 0.19669419527053833, 1.3727212909287464e-32, -2.3409428387443417e-16, 0.18723812699317932, -0.040824320167303085], [0.28085383772850037, 0.1700034886598587, 0.1050030067563057, 0.33378034830093384, -9.820506607911259e-18, 8.922208315013372e-17, 0.2474491447210312, 0.2316184788942337], [0.33533284068107605, 0.21567615866661072, -0.05730810761451721, 0.26805511116981506, -3.1682982788976827e-14, 4.338388141690851e-16, 0.015533575788140297, -0.29559168219566345], [-4.576090339991623e-10, -5.784854817392215e-10, -3.4070618548653897e-10, -4.8748227676753686e-11, 4.430075745025303e-35, 1.6349813928773575e-28, -1.33041383465482e-10, -3.67800956357911e-10], [0.26915091276168823, 0.3145923316478729, -0.8938327431678772, 0.2433646321296692, -4.7419545427104256e-35, 7.721867337547462e-17, 0.17733684182167053, -0.393244206905365], [-0.06348289549350739, -0.1442527025938034, 0.7552046775817871, -0.16448144614696503, 4.54707187124318e-35, 1.0030211451572232e-16, -0.1931277960538864, -0.05349331721663475]], "b_2": [0.36573266983032227, 0.38540416955947876, 0.4937290549278259, 0.3542242646217346, -3.672429927433635e-14, -9.65649747121898e-16, 0.29293742775917053, 0.09515751153230667], "w_3": [[0.24680736660957336, -1.194178918653753e-15, 0.024633267894387245, 0.3891109526157379], [0.1886747032403946, -3.1824330141500467e-16, 0.1444225162267685, 0.41964977979660034], [1.2357182502746582, -2.5090208832312697e-28, -1.1682084798812866, -0.6477577686309814], [0.12155500054359436, 8.995584428348745e-24, 0.17460790276527405, 0.2622942328453064], [1.4854420271603885e-07, -5.408280186437304e-35, -4.325715035135064e-35, 0.00040026361239142716], [9.324351103356642e-17, -7.411454266115296e-31, -7.501238415844868e-17, -1.0792026266887849e-16], [-0.04069517180323601, -1.0165957415018617e-28, 0.26544079184532166, 0.168765127658844], [-0.8055086731910706, 4.934884444806273e-28, 0.27189183235168457, -0.5389688014984131]], "b_3": [0.3497087061405182, 9.60089655083145e-28, 0.06688851863145828, 0.4094548225402832], "w_4": [[-0.09925906360149384, -1.2337487936019897], [4.750982952828053e-06, -1.445817050268457e-30], [0.5779934525489807, -0.40107813477516174], [0.2167285829782486, -0.519594132900238]], "b_4": [0.0635845810174942, -0.30703499913215637], "input_norm_mat": [[-3.0, 3.0], [-3.0, 3.0], [0.0, 40.0], [-3.0, 3.0]], "output_norm_mat": [-1.0, 1.0], "temperature": 100.0} +} diff --git a/opendbc_repo/opendbc/car/torque_data/override.toml b/opendbc_repo/opendbc/car/torque_data/override.toml new file mode 100644 index 0000000000..a6269f8bb7 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/override.toml @@ -0,0 +1,115 @@ +legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] +### angle control +# Nissan appears to have torque +"NISSAN_XTRAIL" = [nan, 1.5, nan] +"NISSAN_ALTIMA" = [nan, 1.5, nan] +"NISSAN_LEAF_IC" = [nan, 1.5, nan] +"NISSAN_LEAF" = [nan, 1.5, nan] +"NISSAN_ROGUE" = [nan, 1.5, nan] + +# New subarus angle based controllers +"SUBARU_FORESTER_2022" = [nan, 3.0, nan] +"SUBARU_OUTBACK_2023" = [nan, 3.0, nan] +"SUBARU_ASCENT_2023" = [nan, 3.0, nan] + +# Toyota LTA also has torque +"TOYOTA_RAV4_TSS2_2023" = [nan, 3.0, nan] + +# Tesla angle based controllers +"TESLA_MODEL_3" = [nan, 2.5, nan] +"TESLA_MODEL_Y" = [nan, 2.5, nan] + +# Guess +"FORD_BRONCO_SPORT_MK1" = [nan, 1.5, nan] +"FORD_ESCAPE_MK4" = [nan, 1.5, nan] +"FORD_EXPLORER_MK6" = [nan, 1.5, nan] +"FORD_F_150_MK14" = [nan, 1.5, nan] +"FORD_FOCUS_MK4" = [nan, 1.5, nan] +"FORD_MAVERICK_MK1" = [nan, 1.5, nan] +"FORD_F_150_LIGHTNING_MK1" = [nan, 1.5, nan] +"FORD_MUSTANG_MACH_E_MK1" = [nan, 1.5, nan] +"FORD_RANGER_MK2" = [nan, 1.5, nan] +### + +# No steering wheel +"COMMA_BODY" = [nan, 1000, nan] + +# Totally new cars +"RAM_1500_5TH_GEN" = [2.0, 2.0, 0.05] +"RAM_HD_5TH_GEN" = [1.4, 1.4, 0.05] +"SUBARU_OUTBACK" = [2.0, 1.5, 0.2] +"BUICK_BABYENCLAVE" = [1.45, 1.6, 0.2] +"CADILLAC_ESCALADE" = [1.899999976158142, 1.842270016670227, 0.1120000034570694] +"CADILLAC_ESCALADE_ESV_2019" = [1.15, 1.3, 0.2] +"CADILLAC_XT4" = [1.45, 1.6, 0.2] +"CHEVROLET_BOLT_EUV" = [2.0, 2.0, 0.05] +"CHEVROLET_MALIBU_CC" = [1.85, 1.85, 0.075] +"CHEVROLET_SILVERADO" = [1.9, 1.9, 0.112] +"CHEVROLET_TRAILBLAZER" = [1.33, 1.9, 0.16] +"CHEVROLET_TRAVERSE" = [1.33, 1.33, 0.18] +"CHEVROLET_EQUINOX" = [2.5, 2.5, 0.05] +"CHEVROLET_VOLT_2019" = [1.4, 1.4, 0.16] +"CHEVROLET_TRAX" = [1.33, 1.9, 0.16] +"VOLKSWAGEN_CADDY_MK3" = [1.2, 1.2, 0.1] +"VOLKSWAGEN_PASSAT_NMS" = [2.5, 2.5, 0.1] +"VOLKSWAGEN_SHARAN_MK2" = [2.5, 2.5, 0.1] +"HYUNDAI_SANTA_CRUZ_1ST_GEN" = [2.7, 2.7, 0.1] +"KIA_SPORTAGE_5TH_GEN" = [2.6, 2.6, 0.1] +"GENESIS_GV70_1ST_GEN" = [2.42, 2.42, 0.1] +"GENESIS_GV60_EV_1ST_GEN" = [2.5, 2.5, 0.1] +"GMC_YUKON" = [1.2, 2.5, 0.26] +"KIA_SORENTO_4TH_GEN" = [2.5, 2.5, 0.1] +"KIA_SORENTO_HEV_4TH_GEN" = [2.5, 2.5, 0.1] +"KIA_NIRO_HEV_2ND_GEN" = [2.42, 2.5, 0.12] +"KIA_NIRO_EV_2ND_GEN" = [2.05, 2.5, 0.14] +"GENESIS_GV80" = [2.5, 2.5, 0.1] +"KIA_CARNIVAL_4TH_GEN" = [1.75, 1.75, 0.15] +"GMC_ACADIA" = [1.6, 1.6, 0.2] +"LEXUS_IS_TSS2" = [2.0, 2.0, 0.1] +"HYUNDAI_KONA_EV_2ND_GEN" = [2.5, 2.5, 0.1] +"HYUNDAI_KONA_HEV_2ND_GEN" = [2.5, 2.5, 0.1] +"HYUNDAI_IONIQ_6" = [2.5, 2.5, 0.005] +"HYUNDAI_IONIQ_9" = [1.75, 1.75, 0.15] +"HYUNDAI_AZERA_7TH_GEN" = [1.8, 1.8, 0.1] +"HYUNDAI_AZERA_6TH_GEN" = [1.8, 1.8, 0.1] +"HYUNDAI_AZERA_HEV_6TH_GEN" = [1.8, 1.8, 0.1] +"KIA_K8_HEV_1ST_GEN" = [2.5, 2.5, 0.1] +"HYUNDAI_CUSTIN_1ST_GEN" = [2.5, 2.5, 0.1] +"LEXUS_GS_F" = [2.5, 2.5, 0.08] +"HYUNDAI_STARIA_4TH_GEN" = [1.8, 2.0, 0.15] +"HYUNDAI_PORTER_II_EV" = [1.8, 2.0, 0.15] +"GENESIS_GV70_ELECTRIFIED_1ST_GEN" = [1.9, 1.9, 0.09] +"GENESIS_G80_2ND_GEN_FL" = [2.5819356441497803, 2.5, 0.11244568973779678] +"RIVIAN_R1_GEN1" = [2.8, 2.5, 0.07] +"HYUNDAI_NEXO_1ST_GEN" = [2.5, 2.5, 0.1] + +# Dashcam or fallback configured as ideal car +"MOCK" = [10.0, 10, 0.0] + +# Manually checked +"HONDA_CIVIC_2022" = [2.5, 1.2, 0.15] +"HONDA_HRV_3G" = [2.5, 1.2, 0.2] + +# Community +"HYUNDAI_GRANDEUR_IG" = [2.3, 2.3, 0.1] +"HYUNDAI_GRANDEUR_IG_HEV" = [2.3, 2.3, 0.1] +"GENESIS_EQ900" = [2.3, 2.3, 0.1] +"GENESIS_EQ900_L" = [2.3, 2.3, 0.1] +"GENESIS_G90_2019" = [2.3, 2.3, 0.1] +"KIA_MOHAVE" = [2.3, 2.3, 0.1] +"KIA_K5" = [2.3, 2.3, 0.1] +"KIA_K5_HEV" = [2.3, 2.3, 0.1] +"KIA_K5_HEV_2022" = [2.3, 2.3, 0.1] +"KIA_K7" = [2.3, 2.3, 0.1] +"KIA_K7_HEV" = [2.3, 2.3, 0.1] +"KIA_K9" = [2.3, 2.3, 0.1] +"GENESIS_GV70_EV_1ST_GEN" = [2.42, 2.42, 0.1] +"HYUNDAI_NEXO" = [2.7, 2.7, 0.1] +"KIA_EV_SK3" = [2.5, 2.5, 0.1] +"HYUNDAI_CASPER"= [2.5, 2.5, 0.1] +"HYUNDAI_CASPER_EV"= [2.5, 2.5, 0.1] +"HYUNDAI_IONIQ_5_N" = [3.17, 2.71, 0.097] +"HYUNDAI_IONIQ_5_PE" = [1.75, 1.75, 0.15] + +# BMW +"BMW_E90" = [2.3, 1.5, 0.15] diff --git a/opendbc_repo/opendbc/car/torque_data/params.toml b/opendbc_repo/opendbc/car/torque_data/params.toml new file mode 100644 index 0000000000..9883acf2e5 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/params.toml @@ -0,0 +1,89 @@ +legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] +"ACURA_ILX" = [1.524988973896102, 0.519011053086259, 0.34236219253028] +"ACURA_RDX" = [0.9987728568686902, 0.5323765166196301, 0.303218805715844] +"ACURA_RDX_3G" = [1.4314459806646749, 0.33874701282109954, 0.18048847083897598] +"AUDI_A3_MK3" = [1.5122414863077502, 1.7443517531719404, 0.15194151892450905] +"AUDI_Q3_MK2" = [1.4439223359448605, 1.2254955789112076, 0.1413798895978097] +"CHEVROLET_VOLT" = [1.5961527626411784, 1.8422651988094612, 0.1572393918005158] +"CHRYSLER_PACIFICA_2018" = [2.07140, 1.3366521181047952, 0.13776367250652022] +"CHRYSLER_PACIFICA_2020" = [1.86206, 1.509076559398423, 0.14328246159386085] +"CHRYSLER_PACIFICA_2018_HYBRID" = [2.08887, 1.2943025830995154, 0.114818] +"CHRYSLER_PACIFICA_2019_HYBRID" = [1.90120, 1.1958788168371808, 0.131520] +"GENESIS_G70" = [3.8520195946707947, 2.354697063349854, 0.06830285485626221] +"HONDA_ACCORD" = [1.6893333799149202, 0.3246749081720698, 0.2120497022936265] +"HONDA_CIVIC_BOSCH" = [1.691708637466905, 0.40132900729454185, 0.25460295304024094] +"HONDA_CIVIC" = [1.6528895627785531, 0.4018518740819229, 0.25458812851328544] +"HONDA_CRV" = [0.7667141440182675, 0.5927571534745969, 0.40909087636157127] +"HONDA_CRV_5G" = [2.01323205142022, 0.2700612209345081, 0.2238412881331528] +"HONDA_CRV_HYBRID" = [2.072034634644233, 0.7152085160516978, 0.20237105008376083] +"HONDA_FIT" = [1.5719981427109775, 0.5712761407108976, 0.110773383324281] +"HONDA_HRV" = [2.0661212805710205, 0.7521343418694775, 0.17760375789242094] +"HONDA_INSIGHT" = [1.5201671214069354, 0.5660229120683284, 0.25808042580281876] +"HONDA_ODYSSEY" = [1.8774809275211801, 0.8394431662987996, 0.2096978613792822] +"HONDA_PILOT" = [1.7262026201812795, 0.9470005614967523, 0.21351430733218763] +"HONDA_RIDGELINE" = [1.4146525028237624, 0.7356572861629564, 0.23307177552211328] +"HYUNDAI_ELANTRA_2021" = [3.169, 2.1259108157250735, 0.0819] +"HYUNDAI_GENESIS" = [2.7807965280270794, 2.325, 0.0984484465421171] +"HYUNDAI_IONIQ_5" = [3.172929, 2.713050, 0.096019] +"HYUNDAI_IONIQ_EV_LTD" = [1.7662975472852054, 1.613755614526594, 0.17087579756306276] +"HYUNDAI_IONIQ_PHEV" = [3.2928700076638537, 2.1193482926455656, 0.12463700961468778] +"HYUNDAI_IONIQ_PHEV_2019" = [2.970807902012267, 1.6312321830002083, 0.1088964990357482] +"HYUNDAI_KONA_EV" = [3.078814714619148, 2.307336938253934, 0.12359762054065548] +"HYUNDAI_PALISADE" = [2.544642494803999, 1.8721703683337008, 0.1301424599248651] +"HYUNDAI_SANTA_FE" = [3.0787027729757632, 2.6173437483495565, 0.1207019341823945] +"HYUNDAI_SANTA_FE_HEV_2022" = [3.501877602644835, 2.729064118456137, 0.10384068104538963] +"HYUNDAI_SANTA_FE_PHEV_2022" = [1.6953050513611045, 1.5837614296206861, 0.12672855941458458] +"HYUNDAI_SONATA_LF" = [2.2200457811703953, 1.2967330275895228, 0.14039920986586393] +"HYUNDAI_SONATA" = [2.9638737459977467, 2.1259108157250735, 0.07813665616927593] +"HYUNDAI_SONATA_HYBRID" = [2.8990264092395734, 2.061410192222139, 0.0899805488717382] +"HYUNDAI_TUCSON_4TH_GEN" = [2.960174, 2.860284, 0.108745] +"HYUNDAI_SANTAFE_MX5" = [3.2, 3.0, 0.05] +"HYUNDAI_SANTAFE_MX5_HEV" = [3.2, 3.0, 0.05] +"JEEP_GRAND_CHEROKEE_2019" = [2.30972, 1.289689569171081, 0.117048] +"JEEP_GRAND_CHEROKEE" = [2.27116, 1.4057367824262523, 0.11725947414922003] +"KIA_EV6" = [3.2, 2.093457, 0.005] +"KIA_EV6_PE" = [3.2, 2.093457, 0.005] +"KIA_K5_2021" = [2.405339728085138, 1.460032270828705, 0.11650989850813716] +"KIA_K5_DL3_24" = [2.5, 2.5, 0.1] +"KIA_K5_DL3_HEV_24" = [2.5, 2.5, 0.1] +"KIA_NIRO_EV" = [2.9215954981365337, 2.1500583840260044, 0.09236802474810267] +"KIA_SORENTO" = [2.464854685101844, 1.5335274218367956, 0.12056170567599558] +"KIA_STINGER" = [2.7499043387418967, 1.849652021986449, 0.12048334239559202] +"KIA_EV9" = [1.75, 1.75, 0.15] +"KIA_EV3" = [3.2, 2.093457, 0.005] +"LEXUS_ES_TSS2" = [2.0357564999999997, 1.999082295195227, 0.101533] +"LEXUS_NX" = [2.3525924753753613, 1.9731412277641067, 0.15168101064205927] +"LEXUS_NX_TSS2" = [2.4331999786982936, 2.1045680431705414, 0.14099899317761067] +"LEXUS_RX" = [1.6430539050086406, 1.181960058934143, 0.19768806040843034] +"LEXUS_RX_TSS2" = [1.5375561442049257, 1.343166476215164, 0.1931062001527557] +"MAZDA_CX9_2021" = [1.7601682915983443, 1.0889677335154337, 0.17713792194297195] +"SKODA_SUPERB_MK3" = [1.166437404652981, 1.1686163012668165, 0.12194533036948708] +"SUBARU_FORESTER" = [3.6617001649776793, 2.342197172531713, 0.11075960785398745] +"SUBARU_IMPREZA" = [1.0670704910352047, 0.8234374840709592, 0.20986563268614938] +"SUBARU_IMPREZA_2020" = [2.6068223389108303, 2.134872342760203, 0.15261513193561627] +"TOYOTA_AVALON" = [2.5185770183845646, 1.7153346784214922, 0.10603968787111022] +"TOYOTA_AVALON_2019" = [1.7036141952825095, 1.239619084240008, 0.08459830394899492] +"TOYOTA_AVALON_TSS2" = [2.3154403649717357, 2.7777922854327124, 0.11453999639164605] +"TOYOTA_CHR" = [1.5591084333664578, 1.271271459066948, 0.20259087058453193] +"TOYOTA_CHR_TSS2" = [1.7678810166088303, 1.3742176337919942, 0.2319674583741509] +"TOYOTA_CAMRY" = [2.0568162685952505, 1.7576185169559122, 0.108878753] +"TOYOTA_CAMRY_TSS2" = [2.3548324999999997, 2.368900128946771, 0.118436] +"TOYOTA_COROLLA" = [3.117154369115421, 1.8438132575043773, 0.12289685869250652] +"TOYOTA_COROLLA_TSS2" = [1.991132339206426, 1.868866242720403, 0.19570063298031432] +"TOYOTA_HIGHLANDER" = [1.8108348718624456, 1.6348421600679828, 0.15972686105120398] +"TOYOTA_HIGHLANDER_TSS2" = [1.9617570834136164, 1.8611643317268927, 0.14519673256119725] +"TOYOTA_MIRAI" = [2.506899832157829, 1.7417213930750164, 0.20182618449440565] +"TOYOTA_PRIUS" = [1.60, 1.5023147650693636, 0.151515] +"TOYOTA_PRIUS_TSS2" = [1.972600, 1.9104337425537743, 0.170968] +"TOYOTA_RAV4" = [2.085695074355425, 2.2142832316984733, 0.13339165270103975] +"TOYOTA_RAV4_TSS2" = [2.279239424615458, 2.087101966779332, 0.13682208413446817] +"TOYOTA_RAV4H" = [1.9796257271652042, 1.7503987331707576, 0.14628860048885406] +"TOYOTA_RAV4_TSS2_2022" = [2.241883248393209, 1.9304407208090029, 0.112174] +"TOYOTA_SIENNA" = [1.689726, 1.3208264576110418, 0.140456] +"TOYOTA_YARIS" = [2.22984, 1.86145, 0.168189] +"VOLKSWAGEN_ARTEON_MK1" = [1.45136518053819, 1.3639364049316804, 0.23806361745695032] +"VOLKSWAGEN_ATLAS_MK1" = [1.4677006726964945, 1.6733266634075656, 0.12959584092073367] +"VOLKSWAGEN_GOLF_MK7" = [1.3750394140491293, 1.5814743077200641, 0.2018321939386586] +"VOLKSWAGEN_JETTA_MK7" = [1.2271623034089392, 1.216955117387, 0.19437384688370712] +"VOLKSWAGEN_PASSAT_MK8" = [1.3432120736752917, 1.7087275587362314, 0.19444383787326647] +"VOLKSWAGEN_TIGUAN_MK2" = [0.9711965500094828, 1.0001565939459098, 0.1465626137072916] diff --git a/opendbc_repo/opendbc/car/torque_data/substitute.toml b/opendbc_repo/opendbc/car/torque_data/substitute.toml new file mode 100644 index 0000000000..ad4dddff94 --- /dev/null +++ b/opendbc_repo/opendbc/car/torque_data/substitute.toml @@ -0,0 +1,100 @@ +legend = ["LAT_ACCEL_FACTOR", "MAX_LAT_ACCEL_MEASURED", "FRICTION"] +"MAZDA_3" = "MAZDA_CX9_2021" +"MAZDA_6" = "MAZDA_CX9_2021" +"MAZDA_CX5" = "MAZDA_CX9_2021" +"MAZDA_CX5_2022" = "MAZDA_CX9_2021" +"MAZDA_CX9" = "MAZDA_CX9_2021" + +"DODGE_DURANGO" = "CHRYSLER_PACIFICA_2020" + +"TOYOTA_ALPHARD_TSS2" = "TOYOTA_SIENNA" +"TOYOTA_PRIUS_V" = "TOYOTA_PRIUS" +"TOYOTA_RAV4_PRIME" = "TOYOTA_RAV4_TSS2" +"TOYOTA_SIENNA_4TH_GEN" = "TOYOTA_RAV4_TSS2" +"LEXUS_IS" = "LEXUS_NX" +"LEXUS_CTH" = "LEXUS_NX" +"LEXUS_ES" = "TOYOTA_CAMRY" +"LEXUS_RC" = "LEXUS_NX_TSS2" +"LEXUS_LC_TSS2" = "LEXUS_NX_TSS2" + +"KIA_OPTIMA_G4" = "HYUNDAI_SONATA" +"KIA_OPTIMA_G4_FL" = "HYUNDAI_SONATA" +"KIA_OPTIMA_H" = "HYUNDAI_SONATA" +"KIA_OPTIMA_H_G4_FL" = "HYUNDAI_SONATA" +"KIA_FORTE" = "HYUNDAI_SONATA" +"KIA_CEED" = "HYUNDAI_SONATA" +"KIA_SELTOS" = "HYUNDAI_SONATA" +"KIA_NIRO_PHEV" = "KIA_NIRO_EV" +"KIA_NIRO_PHEV_2022" = "KIA_NIRO_EV" +"KIA_NIRO_HEV_2021" = "KIA_NIRO_EV" +"HYUNDAI_VELOSTER" = "HYUNDAI_SONATA_LF" +"HYUNDAI_KONA" = "HYUNDAI_KONA_EV" +"HYUNDAI_KONA_2022" = "HYUNDAI_KONA_EV" +"HYUNDAI_KONA_HEV" = "HYUNDAI_KONA_EV" +"HYUNDAI_KONA_EV_2022" = "HYUNDAI_KONA_EV" +"HYUNDAI_IONIQ" = "HYUNDAI_IONIQ_PHEV_2019" +"HYUNDAI_IONIQ_HEV_2022" = "HYUNDAI_IONIQ_PHEV_2019" +"HYUNDAI_IONIQ_EV_2020" = "HYUNDAI_IONIQ_PHEV_2019" +"HYUNDAI_ELANTRA" = "HYUNDAI_SONATA_LF" +"HYUNDAI_ELANTRA_GT_I30" = "HYUNDAI_SONATA_LF" +"HYUNDAI_ELANTRA_HEV_2021" = "HYUNDAI_SONATA" +"HYUNDAI_TUCSON" = "HYUNDAI_SANTA_FE" +"HYUNDAI_SANTA_FE_2022" = "HYUNDAI_SANTA_FE_HEV_2022" +"KIA_K5_HEV_2020" = "KIA_K5_2021" +"KIA_STINGER_2022" = "KIA_STINGER" +"GENESIS_G90" = "GENESIS_G70" +"GENESIS_G80" = "GENESIS_G70" +"GENESIS_G70_2020" = "HYUNDAI_SONATA" +"HYUNDAI_SONATA_2024" = "HYUNDAI_SONATA" + +"HONDA_FREED" = "HONDA_ODYSSEY" +"HONDA_CRV_EU" = "HONDA_CRV" +"HONDA_CIVIC_BOSCH_DIESEL" = "HONDA_CIVIC_BOSCH" +"HONDA_E" = "HONDA_CIVIC_BOSCH" +"HONDA_ODYSSEY_CHN" = "HONDA_ODYSSEY" + +"BUICK_LACROSSE" = "CHEVROLET_VOLT" +"BUICK_REGAL" = "CHEVROLET_VOLT" +"CADILLAC_ESCALADE_ESV" = "CHEVROLET_VOLT" +"CADILLAC_ATS" = "CHEVROLET_VOLT" +"CHEVROLET_MALIBU" = "CHEVROLET_VOLT" +"HOLDEN_ASTRA" = "CHEVROLET_VOLT" +"CHEVROLET_VOLT_CC" = "CHEVROLET_VOLT" +"CHEVROLET_BOLT_CC" = "CHEVROLET_BOLT_EUV" +"CHEVROLET_BOLT_2017" = "CHEVROLET_BOLT_EUV" +"CHEVROLET_BOLT_2018" = "CHEVROLET_BOLT_EUV" +"CHEVROLET_EQUINOX_CC" = "CHEVROLET_EQUINOX" +"CHEVROLET_SUBURBAN" = "CHEVROLET_SILVERADO" +"CHEVROLET_SUBURBAN_CC" = "CHEVROLET_SILVERADO" +"CHEVROLET_TRAX_2024" = "CHEVROLET_VOLT" +"CADILLAC_CT6_CC" = "CHEVROLET_VOLT" +"CADILLAC_CT6_ACC" = "CHEVROLET_VOLT" +"CHEVROLET_TRAILBLAZER_CC" = "CHEVROLET_TRAILBLAZER" +"CADILLAC_XT5_CC" = "GMC_ACADIA" + +"SKODA_FABIA_MK4" = "VOLKSWAGEN_GOLF_MK7" +"SKODA_OCTAVIA_MK3" = "SKODA_SUPERB_MK3" +"SKODA_KODIAQ_MK1" = "SKODA_SUPERB_MK3" +"SKODA_KAROQ_MK1" = "SKODA_SUPERB_MK3" +"SKODA_KAMIQ_MK1" = "SKODA_SUPERB_MK3" +"VOLKSWAGEN_CRAFTER_MK2" = "VOLKSWAGEN_TIGUAN_MK2" +"VOLKSWAGEN_TROC_MK1" = "VOLKSWAGEN_TIGUAN_MK2" +"VOLKSWAGEN_TCROSS_MK1" = "VOLKSWAGEN_TIGUAN_MK2" +"VOLKSWAGEN_TOURAN_MK2" = "VOLKSWAGEN_TIGUAN_MK2" +"VOLKSWAGEN_TRANSPORTER_T61" = "VOLKSWAGEN_TIGUAN_MK2" +"AUDI_Q2_MK1" = "VOLKSWAGEN_TIGUAN_MK2" +"VOLKSWAGEN_TAOS_MK1" = "VOLKSWAGEN_TIGUAN_MK2" +"VOLKSWAGEN_POLO_MK6" = "VOLKSWAGEN_GOLF_MK7" +"SEAT_ATECA_MK1" = "VOLKSWAGEN_GOLF_MK7" +"VOLKSWAGEN_JETTA_MK6" = "VOLKSWAGEN_PASSAT_NMS" + +"SUBARU_CROSSTREK_HYBRID" = "SUBARU_IMPREZA_2020" +"SUBARU_FORESTER_HYBRID" = "SUBARU_IMPREZA_2020" +"SUBARU_LEGACY" = "SUBARU_OUTBACK" + +# Old subarus don't have much data guessing it's like low torque impreza" +"SUBARU_OUTBACK_PREGLOBAL_2018" = "SUBARU_IMPREZA" +"SUBARU_OUTBACK_PREGLOBAL" = "SUBARU_IMPREZA" +"SUBARU_FORESTER_PREGLOBAL" = "SUBARU_IMPREZA" +"SUBARU_LEGACY_PREGLOBAL" = "SUBARU_IMPREZA" +"SUBARU_ASCENT" = "SUBARU_FORESTER" diff --git a/opendbc_repo/opendbc/car/toyota/__init__.py b/opendbc_repo/opendbc/car/toyota/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/toyota/carcontroller.py b/opendbc_repo/opendbc/car/toyota/carcontroller.py new file mode 100644 index 0000000000..aee8e1315e --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/carcontroller.py @@ -0,0 +1,299 @@ +import math +import numpy as np +from opendbc.car import Bus, apply_meas_steer_torque_limits, apply_std_steer_angle_limits, common_fault_avoidance, \ + make_tester_present_msg, rate_limit, structs, ACCELERATION_DUE_TO_GRAVITY, DT_CTRL +from opendbc.car.can_definitions import CanData +from opendbc.car.carlog import carlog +from opendbc.car.common.filter_simple import FirstOrderFilter +from opendbc.car.common.pid import PIDController +from opendbc.car.secoc import add_mac, build_sync_mac +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.toyota import toyotacan +from opendbc.car.toyota.values import CAR, STATIC_DSU_MSGS, NO_STOP_TIMER_CAR, TSS2_CAR, \ + CarControllerParams, ToyotaFlags, \ + UNSUPPORTED_DSU_CAR +from opendbc.can import CANPacker +from openpilot.common.params import Params + +Ecu = structs.CarParams.Ecu +LongCtrlState = structs.CarControl.Actuators.LongControlState +SteerControlType = structs.CarParams.SteerControlType +VisualAlert = structs.CarControl.HUDControl.VisualAlert + +# The up limit allows the brakes/gas to unwind quickly leaving a stop, +# the down limit roughly matches the rate of ACCEL_NET, reducing PCM compensation windup +ACCEL_WINDUP_LIMIT = 4.0 * DT_CTRL * 3 # m/s^2 / frame +ACCEL_WINDDOWN_LIMIT = -4.0 * DT_CTRL * 3 # m/s^2 / frame +ACCEL_PID_UNWIND = 0.03 * DT_CTRL * 3 # m/s^2 / frame + +# LKA limits +# EPS faults if you apply torque while the steering rate is above 100 deg/s for too long +MAX_STEER_RATE = 100 # deg/s +MAX_STEER_RATE_FRAMES = 18 # tx control frames needed before torque can be cut + +# EPS allows user torque above threshold for 50 frames before permanently faulting +MAX_USER_TORQUE = 500 + + +def get_long_tune(CP, params): + if CP.carFingerprint in TSS2_CAR: + kiBP = [2., 5.] + kiV = [0.5, 0.25] + else: + kiBP = [0., 5., 35.] + kiV = [3.6, 2.4, 1.5] + + return PIDController(0.0, (kiBP, kiV), k_f=1.0, + pos_limit=params.ACCEL_MAX, neg_limit=params.ACCEL_MIN, + rate=1 / (DT_CTRL * 3)) + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.params = CarControllerParams(self.CP) + self.last_torque = 0 + self.last_angle = 0 + self.alert_active = False + self.last_standstill = False + self.standstill_req = False + self.permit_braking = True + self.steer_rate_counter = 0 + self.distance_button = 0 + + # *** start long control state *** + self.long_pid = get_long_tune(self.CP, self.params) + self.aego = FirstOrderFilter(0.0, 0.25, DT_CTRL * 3) + self.pitch = FirstOrderFilter(0, 0.5, DT_CTRL) + + self.accel = 0 + self.prev_accel = 0 + # *** end long control state *** + + self.packer = CANPacker(dbc_names[Bus.pt]) + + self.secoc_lka_message_counter = 0 + self.secoc_lta_message_counter = 0 + self.secoc_prev_reset_counter = 0 + + def update(self, CC, CS, now_nanos): + actuators = CC.actuators + stopping = actuators.longControlState == LongCtrlState.stopping + hud_control = CC.hudControl + pcm_cancel_cmd = CC.cruiseControl.cancel + lat_active = CC.latActive and abs(CS.out.steeringTorque) < MAX_USER_TORQUE + + if len(CC.orientationNED) == 3: + self.pitch.update(CC.orientationNED[1]) + + # *** control msgs *** + can_sends = [] + + params = Params() + steerMax = params.get_int("CustomSteerMax") + steerDeltaUp = params.get_int("CustomSteerDeltaUp") + steerDeltaDown = params.get_int("CustomSteerDeltaDown") + self.params.STEER_MAX = self.params.STEER_MAX if steerMax <= 0 else steerMax + self.params.STEER_DELTA_UP = self.params.STEER_DELTA_UP if steerDeltaUp <= 0 else steerDeltaUp + self.params.STEER_DELTA_DOWN = self.params.STEER_DELTA_DOWN if steerDeltaDown <= 0 else steerDeltaDown + + # *** handle secoc reset counter increase *** + if self.CP.flags & ToyotaFlags.SECOC.value: + if CS.secoc_synchronization['RESET_CNT'] != self.secoc_prev_reset_counter: + self.secoc_lka_message_counter = 0 + self.secoc_lta_message_counter = 0 + self.secoc_prev_reset_counter = CS.secoc_synchronization['RESET_CNT'] + + expected_mac = build_sync_mac(self.secoc_key, int(CS.secoc_synchronization['TRIP_CNT']), int(CS.secoc_synchronization['RESET_CNT'])) + if int(CS.secoc_synchronization['AUTHENTICATOR']) != expected_mac: + carlog.error("SecOC synchronization MAC mismatch, wrong key?") + + # *** steer torque *** + new_torque = int(round(actuators.torque * self.params.STEER_MAX)) + apply_torque = apply_meas_steer_torque_limits(new_torque, self.last_torque, CS.out.steeringTorqueEps, self.params) + + # >100 degree/sec steering fault prevention + self.steer_rate_counter, apply_steer_req = common_fault_avoidance(abs(CS.out.steeringRateDeg) >= MAX_STEER_RATE, lat_active, + self.steer_rate_counter, MAX_STEER_RATE_FRAMES) + + if not lat_active: + apply_torque = 0 + + # *** steer angle *** + if self.CP.steerControlType == SteerControlType.angle: + # If using LTA control, disable LKA and set steering angle command + apply_torque = 0 + apply_steer_req = False + if self.frame % 2 == 0: + # EPS uses the torque sensor angle to control with, offset to compensate + apply_angle = actuators.steeringAngleDeg + CS.out.steeringAngleOffsetDeg + + # Angular rate limit based on speed + self.last_angle = apply_std_steer_angle_limits(apply_angle, self.last_angle, CS.out.vEgoRaw, + CS.out.steeringAngleDeg + CS.out.steeringAngleOffsetDeg, + CC.latActive, self.params.ANGLE_LIMITS) + + self.last_torque = apply_torque + + # toyota can trace shows STEERING_LKA at 42Hz, with counter adding alternatively 1 and 2; + # sending it at 100Hz seem to allow a higher rate limit, as the rate limit seems imposed + # on consecutive messages + steer_command = toyotacan.create_steer_command(self.packer, apply_torque, apply_steer_req) + if self.CP.flags & ToyotaFlags.SECOC.value: + # TODO: check if this slow and needs to be done by the CANPacker + steer_command = add_mac(self.secoc_key, + int(CS.secoc_synchronization['TRIP_CNT']), + int(CS.secoc_synchronization['RESET_CNT']), + self.secoc_lka_message_counter, + steer_command) + self.secoc_lka_message_counter += 1 + can_sends.append(steer_command) + + # STEERING_LTA does not seem to allow more rate by sending faster, and may wind up easier + if self.frame % 2 == 0 and self.CP.carFingerprint in TSS2_CAR: + lta_active = lat_active and self.CP.steerControlType == SteerControlType.angle + # cut steering torque with TORQUE_WIND_DOWN when either EPS torque or driver torque is above + # the threshold, to limit max lateral acceleration and for driver torque blending respectively. + full_torque_condition = (abs(CS.out.steeringTorqueEps) < self.params.STEER_MAX and + abs(CS.out.steeringTorque) < self.params.MAX_LTA_DRIVER_TORQUE_ALLOWANCE) + + # TORQUE_WIND_DOWN at 0 ramps down torque at roughly the max down rate of 1500 units/sec + torque_wind_down = 100 if lta_active and full_torque_condition else 0 + can_sends.append(toyotacan.create_lta_steer_command(self.packer, self.CP.steerControlType, self.last_angle, + lta_active, self.frame // 2, torque_wind_down)) + + if self.CP.flags & ToyotaFlags.SECOC.value: + lta_steer_2 = toyotacan.create_lta_steer_command_2(self.packer, self.frame // 2) + lta_steer_2 = add_mac(self.secoc_key, + int(CS.secoc_synchronization['TRIP_CNT']), + int(CS.secoc_synchronization['RESET_CNT']), + self.secoc_lta_message_counter, + lta_steer_2) + self.secoc_lta_message_counter += 1 + can_sends.append(lta_steer_2) + + # *** gas and brake *** + + # on entering standstill, send standstill request + if CS.out.standstill and not self.last_standstill and (self.CP.carFingerprint not in NO_STOP_TIMER_CAR): + self.standstill_req = True + if CS.pcm_acc_status != 8: + # pcm entered standstill or it's disabled + self.standstill_req = False + + self.last_standstill = CS.out.standstill + + # handle UI messages + fcw_alert = hud_control.visualAlert == VisualAlert.fcw + steer_alert = hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw) + lead = hud_control.leadVisible or CS.out.vEgo < 12. # at low speed we always assume the lead is present so ACC can be engaged + + if self.CP.openpilotLongitudinalControl: + if self.frame % 3 == 0: + # Press distance button until we are at the correct bar length. Only change while enabled to avoid skipping startup popup + if self.frame % 6 == 0 and self.CP.openpilotLongitudinalControl: + desired_distance = 4 - hud_control.leadDistanceBars + if CS.out.cruiseState.enabled and CS.pcm_follow_distance != desired_distance: + self.distance_button = not self.distance_button + else: + self.distance_button = 0 + + # internal PCM gas command can get stuck unwinding from negative accel so we apply a generous rate limit + pcm_accel_cmd = actuators.accel + if CC.longActive: + pcm_accel_cmd = rate_limit(pcm_accel_cmd, self.prev_accel, ACCEL_WINDDOWN_LIMIT, ACCEL_WINDUP_LIMIT) + self.prev_accel = pcm_accel_cmd + + # calculate amount of acceleration PCM should apply to reach target, given pitch. + # clipped to only include downhill angles, avoids erroneously unsetting PERMIT_BRAKING when stopping on uphills + accel_due_to_pitch = math.sin(min(self.pitch.x, 0.0)) * ACCELERATION_DUE_TO_GRAVITY + # TODO: on uphills this sometimes sets PERMIT_BRAKING low not considering the creep force + net_acceleration_request = pcm_accel_cmd + accel_due_to_pitch + + # GVC does not overshoot ego acceleration when starting from stop, but still has a similar delay + if not self.CP.flags & ToyotaFlags.SECOC.value: + a_ego_blended = float(np.interp(CS.out.vEgo, [1.0, 2.0], [CS.gvc, CS.out.aEgo])) + else: + a_ego_blended = CS.out.aEgo + + # wind down integral when approaching target for step changes and smooth ramps to reduce overshoot + prev_aego = self.aego.x + self.aego.update(a_ego_blended) + j_ego = (self.aego.x - prev_aego) / (DT_CTRL * 3) + + future_t = float(np.interp(CS.out.vEgo, [2., 5.], [0.25, 0.5])) + a_ego_future = a_ego_blended + j_ego * future_t + + if CC.longActive: + # constantly slowly unwind integral to recover from large temporary errors + self.long_pid.i -= ACCEL_PID_UNWIND * float(np.sign(self.long_pid.i)) + + error_future = pcm_accel_cmd - a_ego_future + pcm_accel_cmd = self.long_pid.update(error_future, + speed=CS.out.vEgo, + feedforward=pcm_accel_cmd, + freeze_integrator=actuators.longControlState != LongCtrlState.pid) + else: + self.long_pid.reset() + + # Along with rate limiting positive jerk above, this greatly improves gas response time + # Consider the net acceleration request that the PCM should be applying (pitch included) + net_acceleration_request_min = min(actuators.accel + accel_due_to_pitch, net_acceleration_request) + if net_acceleration_request_min < 0.2 or stopping or not CC.longActive: + self.permit_braking = True + elif net_acceleration_request_min > 0.3: + self.permit_braking = False + + pcm_accel_cmd = float(np.clip(pcm_accel_cmd, self.params.ACCEL_MIN, self.params.ACCEL_MAX)) + + can_sends.append(toyotacan.create_accel_command(self.packer, pcm_accel_cmd, pcm_cancel_cmd, self.permit_braking, self.standstill_req, lead, + CS.acc_type, fcw_alert, self.distance_button)) + self.accel = pcm_accel_cmd + + else: + # we can spam can to cancel the system even if we are using lat only control + if pcm_cancel_cmd: + if self.CP.carFingerprint in UNSUPPORTED_DSU_CAR: + can_sends.append(toyotacan.create_acc_cancel_command(self.packer)) + else: + can_sends.append(toyotacan.create_accel_command(self.packer, 0, pcm_cancel_cmd, True, False, lead, CS.acc_type, False, self.distance_button)) + + # *** hud ui *** + if self.CP.carFingerprint != CAR.TOYOTA_PRIUS_V: + # ui mesg is at 1Hz but we send asap if: + # - there is something to display + # - there is something to stop displaying + send_ui = False + if ((fcw_alert or steer_alert) and not self.alert_active) or \ + (not (fcw_alert or steer_alert) and self.alert_active): + send_ui = True + self.alert_active = not self.alert_active + elif pcm_cancel_cmd: + # forcing the pcm to disengage causes a bad fault sound so play a good sound instead + send_ui = True + + if self.frame % 20 == 0 or send_ui: + can_sends.append(toyotacan.create_ui_command(self.packer, steer_alert, pcm_cancel_cmd, hud_control.leftLaneVisible, + hud_control.rightLaneVisible, hud_control.leftLaneDepart, + hud_control.rightLaneDepart, CC.enabled, CS.lkas_hud)) + + if (self.frame % 100 == 0 or send_ui) and (self.CP.enableDsu or self.CP.flags & ToyotaFlags.DISABLE_RADAR.value): + can_sends.append(toyotacan.create_fcw_command(self.packer, fcw_alert)) + + # *** static msgs *** + for addr, cars, bus, fr_step, vl in STATIC_DSU_MSGS: + if self.frame % fr_step == 0 and self.CP.enableDsu and self.CP.carFingerprint in cars: + can_sends.append(CanData(addr, vl, bus)) + + # keep radar disabled + if self.frame % 20 == 0 and self.CP.flags & ToyotaFlags.DISABLE_RADAR.value: + can_sends.append(make_tester_present_msg(0x750, 0, 0xF)) + + new_actuators = actuators.as_builder() + new_actuators.torque = apply_torque / self.params.STEER_MAX + new_actuators.torqueOutputCan = apply_torque + new_actuators.steeringAngleDeg = self.last_angle + new_actuators.accel = self.accel + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/toyota/carstate.py b/opendbc_repo/opendbc/car/toyota/carstate.py new file mode 100644 index 0000000000..262033d078 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/carstate.py @@ -0,0 +1,204 @@ +import copy +import numpy as np + +from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus, DT_CTRL, create_button_events, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.common.filter_simple import FirstOrderFilter +from opendbc.car.interfaces import CarStateBase +from opendbc.car.toyota.values import ToyotaFlags, CAR, DBC, STEER_THRESHOLD, NO_STOP_TIMER_CAR, \ + TSS2_CAR, RADAR_ACC_CAR, EPS_SCALE, UNSUPPORTED_DSU_CAR + +ButtonType = structs.CarState.ButtonEvent.Type +SteerControlType = structs.CarParams.SteerControlType + +# These steering fault definitions seem to be common across LKA (torque) and LTA (angle): +# - high steer rate fault: goes to 21 or 25 for 1 frame, then 9 for 2 seconds +# - lka/lta msg drop out: goes to 9 then 11 for a combined total of 2 seconds, then 3. +# if using the other control command, goes directly to 3 after 1.5 seconds +# - initializing: LTA can report 0 as long as STEER_TORQUE_SENSOR->STEER_ANGLE_INITIALIZING is 1, +# and is a catch-all for LKA +TEMP_STEER_FAULTS = (0, 9, 11, 21, 25) +# - lka/lta msg drop out: 3 (recoverable) +# - prolonged high driver torque: 17 (permanent) +PERM_STEER_FAULTS = (3, 17) + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + self.eps_torque_scale = EPS_SCALE[CP.carFingerprint] / 100. + self.cluster_speed_hyst_gap = CV.KPH_TO_MS / 2. + self.cluster_min_speed = CV.KPH_TO_MS / 2. + + if CP.flags & ToyotaFlags.SECOC.value: + self.shifter_values = can_define.dv["GEAR_PACKET_HYBRID"]["GEAR"] + else: + self.shifter_values = can_define.dv["GEAR_PACKET"]["GEAR"] + + # On cars with cp.vl["STEER_TORQUE_SENSOR"]["STEER_ANGLE"] + # the signal is zeroed to where the steering angle is at start. + # Need to apply an offset as soon as the steering angle measurements are both received + self.accurate_steer_angle_seen = False + self.angle_offset = FirstOrderFilter(None, 60.0, DT_CTRL, initialized=False) + + self.distance_button = 0 + + self.pcm_follow_distance = 0 + + self.acc_type = 1 + self.lkas_hud = {} + self.gvc = 0.0 + self.secoc_synchronization = None + + def update(self, can_parsers) -> structs.CarState: + cp = can_parsers[Bus.pt] + cp_cam = can_parsers[Bus.cam] + + ret = structs.CarState() + cp_acc = cp_cam if self.CP.carFingerprint in (TSS2_CAR - RADAR_ACC_CAR) else cp + + if not self.CP.flags & ToyotaFlags.SECOC.value: + self.gvc = cp.vl["VSC1S07"]["GVC"] + + ret.doorOpen = any([cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_FL"], cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_FR"], + cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_RL"], cp.vl["BODY_CONTROL_STATE"]["DOOR_OPEN_RR"]]) + ret.seatbeltUnlatched = cp.vl["BODY_CONTROL_STATE"]["SEATBELT_DRIVER_UNLATCHED"] != 0 + ret.parkingBrake = cp.vl["BODY_CONTROL_STATE"]["PARKING_BRAKE"] == 1 + + ret.brakePressed = cp.vl["BRAKE_MODULE"]["BRAKE_PRESSED"] != 0 + ret.brakeHoldActive = cp.vl["ESP_CONTROL"]["BRAKE_HOLD_ACTIVE"] == 1 + + if self.CP.flags & ToyotaFlags.SECOC.value: + self.secoc_synchronization = copy.copy(cp.vl["SECOC_SYNCHRONIZATION"]) + ret.gas = cp.vl["GAS_PEDAL"]["GAS_PEDAL_USER"] + ret.gasPressed = cp.vl["GAS_PEDAL"]["GAS_PEDAL_USER"] > 0 + can_gear = int(cp.vl["GEAR_PACKET_HYBRID"]["GEAR"]) + else: + ret.gasPressed = cp.vl["PCM_CRUISE"]["GAS_RELEASED"] == 0 # TODO: these also have GAS_PEDAL, come back and unify + can_gear = int(cp.vl["GEAR_PACKET"]["GEAR"]) + if not self.CP.enableDsu and not self.CP.flags & ToyotaFlags.DISABLE_RADAR.value: + ret.stockAeb = bool(cp_acc.vl["PRE_COLLISION"]["PRECOLLISION_ACTIVE"] and cp_acc.vl["PRE_COLLISION"]["FORCE"] < -1e-5) + if self.CP.carFingerprint != CAR.TOYOTA_MIRAI: + ret.engineRpm = cp.vl["ENGINE_RPM"]["RPM"] + + ret.wheelSpeeds = self.get_wheel_speeds( + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FL"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_FR"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RL"], + cp.vl["WHEEL_SPEEDS"]["WHEEL_SPEED_RR"], + ) + ret.vEgoRaw = float(np.mean([ret.wheelSpeeds.fl, ret.wheelSpeeds.fr, ret.wheelSpeeds.rl, ret.wheelSpeeds.rr])) + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.vEgoCluster = ret.vEgo * 1.015 # minimum of all the cars + + ret.standstill = abs(ret.vEgoRaw) < 1e-3 + + ret.steeringAngleDeg = cp.vl["STEER_ANGLE_SENSOR"]["STEER_ANGLE"] + cp.vl["STEER_ANGLE_SENSOR"]["STEER_FRACTION"] + ret.steeringRateDeg = cp.vl["STEER_ANGLE_SENSOR"]["STEER_RATE"] + torque_sensor_angle_deg = cp.vl["STEER_TORQUE_SENSOR"]["STEER_ANGLE"] + + # On some cars, the angle measurement is non-zero while initializing + if abs(torque_sensor_angle_deg) > 1e-3 and not bool(cp.vl["STEER_TORQUE_SENSOR"]["STEER_ANGLE_INITIALIZING"]): + self.accurate_steer_angle_seen = True + + if self.accurate_steer_angle_seen: + # Offset seems to be invalid for large steering angles and high angle rates + if abs(ret.steeringAngleDeg) < 90 and abs(ret.steeringRateDeg) < 100 and cp.can_valid: + self.angle_offset.update(torque_sensor_angle_deg - ret.steeringAngleDeg) + + if self.angle_offset.initialized: + ret.steeringAngleOffsetDeg = self.angle_offset.x + ret.steeringAngleDeg = torque_sensor_angle_deg - self.angle_offset.x + + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + ret.leftBlinker = cp.vl["BLINKERS_STATE"]["TURN_SIGNALS"] == 1 + ret.rightBlinker = cp.vl["BLINKERS_STATE"]["TURN_SIGNALS"] == 2 + + ret.steeringTorque = cp.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_DRIVER"] + ret.steeringTorqueEps = cp.vl["STEER_TORQUE_SENSOR"]["STEER_TORQUE_EPS"] * self.eps_torque_scale + # we could use the override bit from dbc, but it's triggered at too high torque values + ret.steeringPressed = abs(ret.steeringTorque) > STEER_THRESHOLD + + # Check EPS LKA/LTA fault status + ret.steerFaultTemporary = cp.vl["EPS_STATUS"]["LKA_STATE"] in TEMP_STEER_FAULTS + ret.steerFaultPermanent = cp.vl["EPS_STATUS"]["LKA_STATE"] in PERM_STEER_FAULTS + + if self.CP.steerControlType == SteerControlType.angle: + ret.steerFaultTemporary = ret.steerFaultTemporary or cp.vl["EPS_STATUS"]["LTA_STATE"] in TEMP_STEER_FAULTS + ret.steerFaultPermanent = ret.steerFaultPermanent or cp.vl["EPS_STATUS"]["LTA_STATE"] in PERM_STEER_FAULTS + + # Lane Tracing Assist control is unavailable (EPS_STATUS->LTA_STATE=0) until + # the more accurate angle sensor signal is initialized + ret.vehicleSensorsInvalid = not self.accurate_steer_angle_seen + + if self.CP.carFingerprint in UNSUPPORTED_DSU_CAR: + # TODO: find the bit likely in DSU_CRUISE that describes an ACC fault. one may also exist in CLUTCH + ret.cruiseState.available = cp.vl["DSU_CRUISE"]["MAIN_ON"] != 0 + ret.cruiseState.speed = cp.vl["DSU_CRUISE"]["SET_SPEED"] * CV.KPH_TO_MS + cluster_set_speed = cp.vl["PCM_CRUISE_ALT"]["UI_SET_SPEED"] + else: + ret.accFaulted = cp.vl["PCM_CRUISE_2"]["ACC_FAULTED"] != 0 + ret.cruiseState.available = cp.vl["PCM_CRUISE_2"]["MAIN_ON"] != 0 + ret.cruiseState.speed = cp.vl["PCM_CRUISE_2"]["SET_SPEED"] * CV.KPH_TO_MS + cluster_set_speed = cp.vl["PCM_CRUISE_SM"]["UI_SET_SPEED"] + + # UI_SET_SPEED is always non-zero when main is on, hide until first enable + if ret.cruiseState.speed != 0: + is_metric = cp.vl["BODY_CONTROL_STATE_2"]["UNITS"] in (1, 2) + conversion_factor = CV.KPH_TO_MS if is_metric else CV.MPH_TO_MS + ret.cruiseState.speedCluster = cluster_set_speed * conversion_factor + + if self.CP.carFingerprint in TSS2_CAR and not self.CP.flags & ToyotaFlags.DISABLE_RADAR.value: + self.acc_type = cp_acc.vl["ACC_CONTROL"]["ACC_TYPE"] + ret.stockFcw = bool(cp_acc.vl["PCS_HUD"]["FCW"]) + + # some TSS2 cars have low speed lockout permanently set, so ignore on those cars + # these cars are identified by an ACC_TYPE value of 2. + # TODO: it is possible to avoid the lockout and gain stop and go if you + # send your own ACC_CONTROL msg on startup with ACC_TYPE set to 1 + if (self.CP.carFingerprint not in TSS2_CAR and self.CP.carFingerprint not in UNSUPPORTED_DSU_CAR) or \ + (self.CP.carFingerprint in TSS2_CAR and self.acc_type == 1): + if self.CP.openpilotLongitudinalControl: + ret.accFaulted = ret.accFaulted or cp.vl["PCM_CRUISE_2"]["LOW_SPEED_LOCKOUT"] == 2 + + self.pcm_acc_status = cp.vl["PCM_CRUISE"]["CRUISE_STATE"] + if self.CP.carFingerprint not in (NO_STOP_TIMER_CAR - TSS2_CAR): + # ignore standstill state in certain vehicles, since pcm allows to restart with just an acceleration request + ret.cruiseState.standstill = self.pcm_acc_status == 7 + ret.cruiseState.enabled = bool(cp.vl["PCM_CRUISE"]["CRUISE_ACTIVE"]) + ret.cruiseState.nonAdaptive = self.pcm_acc_status in (1, 2, 3, 4, 5, 6) + + ret.genericToggle = bool(cp.vl["LIGHT_STALK"]["AUTO_HIGH_BEAM"]) + ret.espDisabled = cp.vl["ESP_CONTROL"]["TC_DISABLED"] != 0 + + if self.CP.enableBsm: + ret.leftBlindspot = (cp.vl["BSM"]["L_ADJACENT"] == 1) or (cp.vl["BSM"]["L_APPROACHING"] == 1) + ret.rightBlindspot = (cp.vl["BSM"]["R_ADJACENT"] == 1) or (cp.vl["BSM"]["R_APPROACHING"] == 1) + + if self.CP.carFingerprint != CAR.TOYOTA_PRIUS_V: + self.lkas_hud = copy.copy(cp_cam.vl["LKAS_HUD"]) + + if self.CP.carFingerprint not in UNSUPPORTED_DSU_CAR: + self.pcm_follow_distance = cp.vl["PCM_CRUISE_2"]["PCM_FOLLOW_DISTANCE"] + + if self.CP.carFingerprint in (TSS2_CAR - RADAR_ACC_CAR): + # distance button is wired to the ACC module (camera or radar) + prev_distance_button = self.distance_button + self.distance_button = cp_acc.vl["ACC_CONTROL"]["DISTANCE"] + + ret.buttonEvents = create_button_events(self.distance_button, prev_distance_button, {1: ButtonType.gapAdjustCruise}) + + return ret + + @staticmethod + def get_can_parsers(CP): + pt_messages = [ + ("BLINKERS_STATE", float('nan')), + ] + + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], pt_messages, 0), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], 2), + } diff --git a/opendbc_repo/opendbc/car/toyota/fingerprints.py b/opendbc_repo/opendbc/car/toyota/fingerprints.py new file mode 100644 index 0000000000..2b6e1b4741 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/fingerprints.py @@ -0,0 +1,1803 @@ +from opendbc.car.structs import CarParams +from opendbc.car.toyota.values import CAR + +Ecu = CarParams.Ecu + +FW_VERSIONS = { + CAR.TOYOTA_AVALON: { + (Ecu.abs, 0x7b0, None): [ + b'F152607060\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881510701300\x00\x00\x00\x00', + b'881510705100\x00\x00\x00\x00', + b'881510705200\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B41051\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0230721100\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230721200\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702000\x00\x00\x00\x00', + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F0701100\x00\x00\x00\x00', + b'8646F0703000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_AVALON_2019: { + (Ecu.abs, 0x7b0, None): [ + b'F152607110\x00\x00\x00\x00\x00\x00', + b'F152607140\x00\x00\x00\x00\x00\x00', + b'F152607171\x00\x00\x00\x00\x00\x00', + b'F152607180\x00\x00\x00\x00\x00\x00', + b'F152641040\x00\x00\x00\x00\x00\x00', + b'F152641050\x00\x00\x00\x00\x00\x00', + b'F152641060\x00\x00\x00\x00\x00\x00', + b'F152641061\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881510703200\x00\x00\x00\x00', + b'881510704200\x00\x00\x00\x00', + b'881514107100\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B07010\x00\x00\x00\x00\x00\x00', + b'8965B41070\x00\x00\x00\x00\x00\x00', + b'8965B41080\x00\x00\x00\x00\x00\x00', + b'8965B41090\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x01896630725100\x00\x00\x00\x00', + b'\x01896630725200\x00\x00\x00\x00', + b'\x01896630725300\x00\x00\x00\x00', + b'\x01896630725400\x00\x00\x00\x00', + b'\x01896630735100\x00\x00\x00\x00', + b'\x01896630738000\x00\x00\x00\x00', + b'\x02896630724000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x02896630728000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x02896630734000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x02896630737000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F0702100\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_AVALON_TSS2: { + (Ecu.abs, 0x7b0, None): [ + b'\x01F152607240\x00\x00\x00\x00\x00\x00', + b'\x01F152607250\x00\x00\x00\x00\x00\x00', + b'\x01F152607280\x00\x00\x00\x00\x00\x00', + b'F152641080\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B41110\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x018966306Q6000\x00\x00\x00\x00', + b'\x01896630742000\x00\x00\x00\x00', + b'\x01896630743000\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F6201200\x00\x00\x00\x00', + b'\x018821F6201300\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F4104100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_CAMRY: { + (Ecu.engine, 0x700, None): [ + b'\x018966306L3100\x00\x00\x00\x00', + b'\x018966306L4200\x00\x00\x00\x00', + b'\x018966306L5200\x00\x00\x00\x00', + b'\x018966306L9000\x00\x00\x00\x00', + b'\x018966306P8000\x00\x00\x00\x00', + b'\x018966306Q3100\x00\x00\x00\x00', + b'\x018966306Q4000\x00\x00\x00\x00', + b'\x018966306Q4100\x00\x00\x00\x00', + b'\x018966306Q4200\x00\x00\x00\x00', + b'\x018966306Q6000\x00\x00\x00\x00', + b'\x018966333N1100\x00\x00\x00\x00', + b'\x018966333N4300\x00\x00\x00\x00', + b'\x018966333P3000\x00\x00\x00\x00', + b'\x018966333P3100\x00\x00\x00\x00', + b'\x018966333P3200\x00\x00\x00\x00', + b'\x018966333P4200\x00\x00\x00\x00', + b'\x018966333P4300\x00\x00\x00\x00', + b'\x018966333P4400\x00\x00\x00\x00', + b'\x018966333P4500\x00\x00\x00\x00', + b'\x018966333P4700\x00\x00\x00\x00', + b'\x018966333P4900\x00\x00\x00\x00', + b'\x018966333Q6000\x00\x00\x00\x00', + b'\x018966333Q6200\x00\x00\x00\x00', + b'\x018966333Q6300\x00\x00\x00\x00', + b'\x018966333Q6500\x00\x00\x00\x00', + b'\x018966333Q9200\x00\x00\x00\x00', + b'\x018966333W6000\x00\x00\x00\x00', + b'\x018966333X0000\x00\x00\x00\x00', + b'\x018966333X4000\x00\x00\x00\x00', + b'\x01896633T16000\x00\x00\x00\x00', + b'\x01896633TA2000\x00\x00\x00\x00', + b'\x028966306B2100\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306B2300\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306B2500\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306N8100\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306N8200\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306N8300\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306N8400\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306R5000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306R5000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966306R6000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966306R6000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966306S0000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966306S0100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966306S1100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x02333P1100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'8821F0601200 ', + b'8821F0601300 ', + b'8821F0601400 ', + b'8821F0601500 ', + b'8821F0602000 ', + b'8821F0603300 ', + b'8821F0603400 ', + b'8821F0604000 ', + b'8821F0604100 ', + b'8821F0604200 ', + b'8821F0605200 ', + b'8821F0606200 ', + b'8821F0607200 ', + b'8821F0607300 ', + b'8821F0608000 ', + b'8821F0608200 ', + b'8821F0608300 ', + b'8821F0609000 ', + b'8821F0609100 ', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152606210\x00\x00\x00\x00\x00\x00', + b'F152606230\x00\x00\x00\x00\x00\x00', + b'F152606260\x00\x00\x00\x00\x00\x00', + b'F152606270\x00\x00\x00\x00\x00\x00', + b'F152606290\x00\x00\x00\x00\x00\x00', + b'F152606410\x00\x00\x00\x00\x00\x00', + b'F152633214\x00\x00\x00\x00\x00\x00', + b'F152633540\x00\x00\x00\x00\x00\x00', + b'F152633660\x00\x00\x00\x00\x00\x00', + b'F152633712\x00\x00\x00\x00\x00\x00', + b'F152633713\x00\x00\x00\x00\x00\x00', + b'F152633A10\x00\x00\x00\x00\x00\x00', + b'F152633A20\x00\x00\x00\x00\x00\x00', + b'F152633B51\x00\x00\x00\x00\x00\x00', + b'F152633B60\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B33540\x00\x00\x00\x00\x00\x00', + b'8965B33542\x00\x00\x00\x00\x00\x00', + b'8965B33550\x00\x00\x00\x00\x00\x00', + b'8965B33551\x00\x00\x00\x00\x00\x00', + b'8965B33580\x00\x00\x00\x00\x00\x00', + b'8965B33581\x00\x00\x00\x00\x00\x00', + b'8965B33611\x00\x00\x00\x00\x00\x00', + b'8965B33621\x00\x00\x00\x00\x00\x00', + b'8965B33630\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F0601200 ', + b'8821F0601300 ', + b'8821F0601400 ', + b'8821F0601500 ', + b'8821F0602000 ', + b'8821F0603300 ', + b'8821F0603400 ', + b'8821F0604000 ', + b'8821F0604100 ', + b'8821F0604200 ', + b'8821F0605200 ', + b'8821F0606200 ', + b'8821F0607200 ', + b'8821F0607300 ', + b'8821F0608000 ', + b'8821F0608200 ', + b'8821F0608300 ', + b'8821F0609000 ', + b'8821F0609100 ', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F0601200 ', + b'8646F0601300 ', + b'8646F0601400 ', + b'8646F0603400 ', + b'8646F0603500 ', + b'8646F0604000 ', + b'8646F0604100 ', + b'8646F0605000 ', + b'8646F0606000 ', + b'8646F0606100 ', + b'8646F0607000 ', + b'8646F0607100 ', + ], + }, + CAR.TOYOTA_CAMRY_TSS2: { + (Ecu.eps, 0x7a1, None): [ + b'8965B33630\x00\x00\x00\x00\x00\x00', + b'8965B33640\x00\x00\x00\x00\x00\x00', + b'8965B33650\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F152606370\x00\x00\x00\x00\x00\x00', + b'\x01F152606390\x00\x00\x00\x00\x00\x00', + b'\x01F152606400\x00\x00\x00\x00\x00\x00', + b'\x01F152606431\x00\x00\x00\x00\x00\x00', + b'\x01F152633E11\x00\x00\x00\x00\x00\x00', + b'F152633310\x00\x00\x00\x00\x00\x00', + b'F152633D00\x00\x00\x00\x00\x00\x00', + b'F152633D60\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x018966306Q5000\x00\x00\x00\x00', + b'\x018966306Q6000\x00\x00\x00\x00', + b'\x018966306Q7000\x00\x00\x00\x00', + b'\x018966306Q9000\x00\x00\x00\x00', + b'\x018966306R3000\x00\x00\x00\x00', + b'\x018966306R8000\x00\x00\x00\x00', + b'\x018966306T0000\x00\x00\x00\x00', + b'\x018966306T3100\x00\x00\x00\x00', + b'\x018966306T3200\x00\x00\x00\x00', + b'\x018966306T4000\x00\x00\x00\x00', + b'\x018966306T4100\x00\x00\x00\x00', + b'\x018966306V1000\x00\x00\x00\x00', + b'\x018966333Z1000\x00\x00\x00\x00', + b'\x018966333Z9000\x00\x00\x00\x00', + b'\x01896633T20000\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F6201200\x00\x00\x00\x00', + b'\x018821F6201300\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F0602100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F0602200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F0602300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F3305200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F3305200\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F3305300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F3305300\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F3305400\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F3305500\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_CHR: { + (Ecu.engine, 0x700, None): [ + b'\x01896631017100\x00\x00\x00\x00', + b'\x01896631017200\x00\x00\x00\x00', + b'\x01896631021100\x00\x00\x00\x00', + b'\x0189663F413100\x00\x00\x00\x00', + b'\x0189663F414100\x00\x00\x00\x00', + b'\x0189663F438000\x00\x00\x00\x00', + b'\x02896631013200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x0289663F405000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x0289663F405100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x0289663F418000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x0289663F423000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x0289663F431000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'8821F0W01000 ', + b'8821F0W01100 ', + b'8821FF401600 ', + b'8821FF401800 ', + b'8821FF402300 ', + b'8821FF402400 ', + b'8821FF404000 ', + b'8821FF404100 ', + b'8821FF405000 ', + b'8821FF405100 ', + b'8821FF406000 ', + b'8821FF407100 ', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152610012\x00\x00\x00\x00\x00\x00', + b'F152610013\x00\x00\x00\x00\x00\x00', + b'F152610014\x00\x00\x00\x00\x00\x00', + b'F152610020\x00\x00\x00\x00\x00\x00', + b'F152610040\x00\x00\x00\x00\x00\x00', + b'F152610153\x00\x00\x00\x00\x00\x00', + b'F152610190\x00\x00\x00\x00\x00\x00', + b'F152610200\x00\x00\x00\x00\x00\x00', + b'F152610210\x00\x00\x00\x00\x00\x00', + b'F152610220\x00\x00\x00\x00\x00\x00', + b'F152610230\x00\x00\x00\x00\x00\x00', + b'F1526F4034\x00\x00\x00\x00\x00\x00', + b'F1526F4044\x00\x00\x00\x00\x00\x00', + b'F1526F4073\x00\x00\x00\x00\x00\x00', + b'F1526F4121\x00\x00\x00\x00\x00\x00', + b'F1526F4122\x00\x00\x00\x00\x00\x00', + b'F1526F4190\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B10011\x00\x00\x00\x00\x00\x00', + b'8965B10020\x00\x00\x00\x00\x00\x00', + b'8965B10040\x00\x00\x00\x00\x00\x00', + b'8965B10050\x00\x00\x00\x00\x00\x00', + b'8965B10070\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0331024000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', + b'\x0331024000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + b'\x0331036000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + b'\x033F401100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203102\x00\x00\x00\x00', + b'\x033F401200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', + b'\x033F424000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', + b'\x033F424000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + b'\x033F435000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F0W01000 ', + b'8821F0W01100 ', + b'8821FF401600 ', + b'8821FF401800 ', + b'8821FF402300 ', + b'8821FF402400 ', + b'8821FF404000 ', + b'8821FF404100 ', + b'8821FF405000 ', + b'8821FF405100 ', + b'8821FF406000 ', + b'8821FF407100 ', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646FF401700 ', + b'8646FF401800 ', + b'8646FF402100 ', + b'8646FF404000 ', + b'8646FF406000 ', + b'8646FF407000 ', + b'8646FF407100 ', + ], + }, + CAR.TOYOTA_CHR_TSS2: { + (Ecu.abs, 0x7b0, None): [ + b'F152610041\x00\x00\x00\x00\x00\x00', + b'F152610260\x00\x00\x00\x00\x00\x00', + b'F1526F4270\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B10091\x00\x00\x00\x00\x00\x00', + b'8965B10092\x00\x00\x00\x00\x00\x00', + b'8965B10110\x00\x00\x00\x00\x00\x00', + b'8965B10111\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x0189663F438000\x00\x00\x00\x00', + b'\x0189663F459000\x00\x00\x00\x00', + b'\x02896631025000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x0289663F453000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0331014000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821FF410200\x00\x00\x00\x00', + b'\x018821FF410300\x00\x00\x00\x00', + b'\x018821FF410400\x00\x00\x00\x00', + b'\x018821FF410500\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646FF410200\x00\x00\x00\x008646GF408200\x00\x00\x00\x00', + b'\x028646FF411100\x00\x00\x00\x008646GF409000\x00\x00\x00\x00', + b'\x028646FF413000\x00\x00\x00\x008646GF411000\x00\x00\x00\x00', + b'\x028646FF413100\x00\x00\x00\x008646GF411100\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_COROLLA: { + (Ecu.engine, 0x7e0, None): [ + b'\x0230ZC2000\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC2100\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC2200\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC2300\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC3000\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC3100\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC3200\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZC3300\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0330ZC1200\x00\x00\x00\x00\x00\x00\x00\x0050212000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881510201100\x00\x00\x00\x00', + b'881510201200\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152602190\x00\x00\x00\x00\x00\x00', + b'F152602191\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B02181\x00\x00\x00\x00\x00\x00', + b'8965B02191\x00\x00\x00\x00\x00\x00', + b'8965B48150\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F0201101\x00\x00\x00\x00', + b'8646F0201200\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_COROLLA_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x01896630A22000\x00\x00\x00\x00', + b'\x01896630A42000\x00\x00\x00\x00', + b'\x01896630ZG2000\x00\x00\x00\x00', + b'\x01896630ZG5000\x00\x00\x00\x00', + b'\x01896630ZG5100\x00\x00\x00\x00', + b'\x01896630ZG5200\x00\x00\x00\x00', + b'\x01896630ZG5300\x00\x00\x00\x00', + b'\x01896630ZJ1000\x00\x00\x00\x00', + b'\x01896630ZP1000\x00\x00\x00\x00', + b'\x01896630ZP2000\x00\x00\x00\x00', + b'\x01896630ZQ5000\x00\x00\x00\x00', + b'\x01896630ZU8000\x00\x00\x00\x00', + b'\x01896630ZU9000\x00\x00\x00\x00', + b'\x01896630ZX4000\x00\x00\x00\x00', + b'\x01896630ZX7100\x00\x00\x00\x00', + b'\x018966312L8000\x00\x00\x00\x00', + b'\x018966312M0000\x00\x00\x00\x00', + b'\x018966312M9000\x00\x00\x00\x00', + b'\x018966312P9000\x00\x00\x00\x00', + b'\x018966312P9100\x00\x00\x00\x00', + b'\x018966312P9200\x00\x00\x00\x00', + b'\x018966312P9300\x00\x00\x00\x00', + b'\x018966312Q2300\x00\x00\x00\x00', + b'\x018966312Q8000\x00\x00\x00\x00', + b'\x018966312R0000\x00\x00\x00\x00', + b'\x018966312R0100\x00\x00\x00\x00', + b'\x018966312R0200\x00\x00\x00\x00', + b'\x018966312R1000\x00\x00\x00\x00', + b'\x018966312R1100\x00\x00\x00\x00', + b'\x018966312R3100\x00\x00\x00\x00', + b'\x018966312S5000\x00\x00\x00\x00', + b'\x018966312S7000\x00\x00\x00\x00', + b'\x018966312W3000\x00\x00\x00\x00', + b'\x018966312W9000\x00\x00\x00\x00', + b'\x01896637621000\x00\x00\x00\x00', + b'\x01896637623000\x00\x00\x00\x00', + b'\x01896637624000\x00\x00\x00\x00', + b'\x01896637626000\x00\x00\x00\x00', + b'\x01896637639000\x00\x00\x00\x00', + b'\x01896637643000\x00\x00\x00\x00', + b'\x01896637644000\x00\x00\x00\x00', + b'\x01896637648000\x00\x00\x00\x00', + b'\x01896637649000\x00\x00\x00\x00', + b'\x02896630A07000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630A21000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZJ5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZK8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZN8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZQ3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZR2000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZT8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZT9000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896630ZZ0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966312K6000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966312L0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966312Q3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966312Q3100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966312Q4000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x038966312L7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1205001\x00\x00\x00\x00', + b'\x038966312N1000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', + b'\x038966312T3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1205001\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0230A10000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230A11000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZN4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230ZN5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02312K4000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02312U5000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x03312K7000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', + b'\x03312M3000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', + b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', + b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + b'\x03312N6000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', + b'\x03312N6100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + b'\x03312N6100\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', + b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203202\x00\x00\x00\x00', + b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203302\x00\x00\x00\x00', + b'\x03312N6200\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00895231203402\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x018965B12350\x00\x00\x00\x00\x00\x00', + b'\x018965B12470\x00\x00\x00\x00\x00\x00', + b'\x018965B12490\x00\x00\x00\x00\x00\x00', + b'\x018965B12500\x00\x00\x00\x00\x00\x00', + b'\x018965B12510\x00\x00\x00\x00\x00\x00', + b'\x018965B12520\x00\x00\x00\x00\x00\x00', + b'\x018965B12530\x00\x00\x00\x00\x00\x00', + b'\x018965B1254000\x00\x00\x00\x00', + b'\x018965B1255000\x00\x00\x00\x00', + b'\x018965B1256000\x00\x00\x00\x00', + b'\x018965B1270000\x00\x00\x00\x00', + b'8965B12361\x00\x00\x00\x00\x00\x00', + b'8965B12451\x00\x00\x00\x00\x00\x00', + b'8965B16011\x00\x00\x00\x00\x00\x00', + b'8965B16101\x00\x00\x00\x00\x00\x00', + b'8965B16170\x00\x00\x00\x00\x00\x00', + b'8965B16260\x00\x00\x00\x00\x00\x00', + b'8965B76012\x00\x00\x00\x00\x00\x00', + b'8965B76050\x00\x00\x00\x00\x00\x00', + b'8965B76091\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F152602280\x00\x00\x00\x00\x00\x00', + b'\x01F152602281\x00\x00\x00\x00\x00\x00', + b'\x01F152602470\x00\x00\x00\x00\x00\x00', + b'\x01F152602560\x00\x00\x00\x00\x00\x00', + b'\x01F152602590\x00\x00\x00\x00\x00\x00', + b'\x01F152602650\x00\x00\x00\x00\x00\x00', + b'\x01F15260A010\x00\x00\x00\x00\x00\x00', + b'\x01F15260A050\x00\x00\x00\x00\x00\x00', + b'\x01F15260A070\x00\x00\x00\x00\x00\x00', + b'\x01F15260A33000\x00\x00\x00\x00', + b'\x01F152612641\x00\x00\x00\x00\x00\x00', + b'\x01F152612651\x00\x00\x00\x00\x00\x00', + b'\x01F152612862\x00\x00\x00\x00\x00\x00', + b'\x01F152612B10\x00\x00\x00\x00\x00\x00', + b'\x01F152612B51\x00\x00\x00\x00\x00\x00', + b'\x01F152612B60\x00\x00\x00\x00\x00\x00', + b'\x01F152612B61\x00\x00\x00\x00\x00\x00', + b'\x01F152612B62\x00\x00\x00\x00\x00\x00', + b'\x01F152612B70\x00\x00\x00\x00\x00\x00', + b'\x01F152612B71\x00\x00\x00\x00\x00\x00', + b'\x01F152612B81\x00\x00\x00\x00\x00\x00', + b'\x01F152612B90\x00\x00\x00\x00\x00\x00', + b'\x01F152612B91\x00\x00\x00\x00\x00\x00', + b'\x01F152612C00\x00\x00\x00\x00\x00\x00', + b'\x01F152676250\x00\x00\x00\x00\x00\x00', + b'\x01F152676350\x00\x00\x00\x00\x00\x00', + b'F152612590\x00\x00\x00\x00\x00\x00', + b'F152612691\x00\x00\x00\x00\x00\x00', + b'F152612692\x00\x00\x00\x00\x00\x00', + b'F152612700\x00\x00\x00\x00\x00\x00', + b'F152612710\x00\x00\x00\x00\x00\x00', + b'F152612790\x00\x00\x00\x00\x00\x00', + b'F152612800\x00\x00\x00\x00\x00\x00', + b'F152612820\x00\x00\x00\x00\x00\x00', + b'F152612840\x00\x00\x00\x00\x00\x00', + b'F152612842\x00\x00\x00\x00\x00\x00', + b'F152612890\x00\x00\x00\x00\x00\x00', + b'F152612A00\x00\x00\x00\x00\x00\x00', + b'F152612A10\x00\x00\x00\x00\x00\x00', + b'F152612D00\x00\x00\x00\x00\x00\x00', + b'F152616011\x00\x00\x00\x00\x00\x00', + b'F152616030\x00\x00\x00\x00\x00\x00', + b'F152616060\x00\x00\x00\x00\x00\x00', + b'F152642540\x00\x00\x00\x00\x00\x00', + b'F152676293\x00\x00\x00\x00\x00\x00', + b'F152676303\x00\x00\x00\x00\x00\x00', + b'F152676304\x00\x00\x00\x00\x00\x00', + b'F152676371\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301100\x00\x00\x00\x00', + b'\x018821F3301200\x00\x00\x00\x00', + b'\x018821F3301300\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F12010C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F12010D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F1201100\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F1201200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F1201300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F1201400\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + b'\x028646F1202000\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F1202100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F1202200\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + b'\x028646F1206000\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + b'\x028646F1601100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F1601200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F1601300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F1601500\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F4203400\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F76020C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F7603100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F7603200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F7603300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F7605100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_HIGHLANDER: { + (Ecu.engine, 0x700, None): [ + b'\x01896630E09000\x00\x00\x00\x00', + b'\x01896630E43000\x00\x00\x00\x00', + b'\x01896630E43100\x00\x00\x00\x00', + b'\x01896630E43200\x00\x00\x00\x00', + b'\x01896630E44200\x00\x00\x00\x00', + b'\x01896630E44400\x00\x00\x00\x00', + b'\x01896630E45000\x00\x00\x00\x00', + b'\x01896630E45100\x00\x00\x00\x00', + b'\x01896630E45200\x00\x00\x00\x00', + b'\x01896630E46000\x00\x00\x00\x00', + b'\x01896630E46200\x00\x00\x00\x00', + b'\x01896630E74000\x00\x00\x00\x00', + b'\x01896630E75000\x00\x00\x00\x00', + b'\x01896630E76000\x00\x00\x00\x00', + b'\x01896630E77000\x00\x00\x00\x00', + b'\x01896630E83000\x00\x00\x00\x00', + b'\x01896630E84000\x00\x00\x00\x00', + b'\x01896630E85000\x00\x00\x00\x00', + b'\x01896630E86000\x00\x00\x00\x00', + b'\x01896630E88000\x00\x00\x00\x00', + b'\x01896630EA0000\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0230E40000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230E40100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230E51000\x00\x00\x00\x00\x00\x00\x00\x0050E17000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230EA2000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0230EA2100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B48140\x00\x00\x00\x00\x00\x00', + b'8965B48150\x00\x00\x00\x00\x00\x00', + b'8965B48160\x00\x00\x00\x00\x00\x00', + b'8965B48210\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F15260E011\x00\x00\x00\x00\x00\x00', + b'F152648541\x00\x00\x00\x00\x00\x00', + b'F152648542\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881510E01100\x00\x00\x00\x00', + b'881510E01200\x00\x00\x00\x00', + b'881510E02100\x00\x00\x00\x00', + b'881510E02200\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F0E01200\x00\x00\x00\x00', + b'8646F0E01300\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_HIGHLANDER_TSS2: { + (Ecu.eps, 0x7a1, None): [ + b'8965B48241\x00\x00\x00\x00\x00\x00', + b'8965B48310\x00\x00\x00\x00\x00\x00', + b'8965B48320\x00\x00\x00\x00\x00\x00', + b'8965B48400\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15260E051\x00\x00\x00\x00\x00\x00', + b'\x01F15260E05300\x00\x00\x00\x00', + b'\x01F15260E061\x00\x00\x00\x00\x00\x00', + b'\x01F15260E110\x00\x00\x00\x00\x00\x00', + b'\x01F15260E170\x00\x00\x00\x00\x00\x00', + b'\x01F15264872300\x00\x00\x00\x00', + b'\x01F15264872400\x00\x00\x00\x00', + b'\x01F15264872500\x00\x00\x00\x00', + b'\x01F15264872600\x00\x00\x00\x00', + b'\x01F15264872700\x00\x00\x00\x00', + b'\x01F15264873500\x00\x00\x00\x00', + b'\x01F152648C6300\x00\x00\x00\x00', + b'\x01F152648J4000\x00\x00\x00\x00', + b'\x01F152648J5000\x00\x00\x00\x00', + b'\x01F152648J6000\x00\x00\x00\x00', + b'\x01F152648J7000\x00\x00\x00\x00', + b'\x01F152648L5000\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x01896630E62100\x00\x00\x00\x00', + b'\x01896630E62200\x00\x00\x00\x00', + b'\x01896630E64100\x00\x00\x00\x00', + b'\x01896630E64200\x00\x00\x00\x00', + b'\x01896630E64400\x00\x00\x00\x00', + b'\x01896630E67000\x00\x00\x00\x00', + b'\x01896630EA1000\x00\x00\x00\x00', + b'\x01896630EB1000\x00\x00\x00\x00', + b'\x01896630EB1100\x00\x00\x00\x00', + b'\x01896630EB1200\x00\x00\x00\x00', + b'\x01896630EB1300\x00\x00\x00\x00', + b'\x01896630EB2000\x00\x00\x00\x00', + b'\x01896630EB2100\x00\x00\x00\x00', + b'\x01896630EB2200\x00\x00\x00\x00', + b'\x01896630EC4000\x00\x00\x00\x00', + b'\x01896630ED9000\x00\x00\x00\x00', + b'\x01896630ED9100\x00\x00\x00\x00', + b'\x01896630EE1000\x00\x00\x00\x00', + b'\x01896630EE1100\x00\x00\x00\x00', + b'\x01896630EE4000\x00\x00\x00\x00', + b'\x01896630EE4100\x00\x00\x00\x00', + b'\x01896630EE5000\x00\x00\x00\x00', + b'\x01896630EE6000\x00\x00\x00\x00', + b'\x01896630EE7000\x00\x00\x00\x00', + b'\x01896630EF8000\x00\x00\x00\x00', + b'\x01896630EG3000\x00\x00\x00\x00', + b'\x01896630EG3100\x00\x00\x00\x00', + b'\x01896630EG5000\x00\x00\x00\x00', + b'\x01896630EG5100\x00\x00\x00\x00', + b'\x02896630E66000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896630E66100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896630EB3000\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896630EB3100\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896630EB3200\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301400\x00\x00\x00\x00', + b'\x018821F6201200\x00\x00\x00\x00', + b'\x018821F6201300\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F0E02100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F4803000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F4803000\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F4803200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_IS: { + (Ecu.engine, 0x700, None): [ + b'\x018966353M7000\x00\x00\x00\x00', + b'\x018966353M7100\x00\x00\x00\x00', + b'\x018966353Q2000\x00\x00\x00\x00', + b'\x018966353Q2100\x00\x00\x00\x00', + b'\x018966353Q2300\x00\x00\x00\x00', + b'\x018966353Q4000\x00\x00\x00\x00', + b'\x018966353R1100\x00\x00\x00\x00', + b'\x018966353R7000\x00\x00\x00\x00', + b'\x018966353R7100\x00\x00\x00\x00', + b'\x018966353R8000\x00\x00\x00\x00', + b'\x018966353R8100\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0232480000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02353N5100\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02353P7000\x00\x00\x00\x00\x00\x00\x00\x00530J5000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02353P9000\x00\x00\x00\x00\x00\x00\x00\x00553C1000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152653300\x00\x00\x00\x00\x00\x00', + b'F152653301\x00\x00\x00\x00\x00\x00', + b'F152653310\x00\x00\x00\x00\x00\x00', + b'F152653330\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881515306200\x00\x00\x00\x00', + b'881515306400\x00\x00\x00\x00', + b'881515306500\x00\x00\x00\x00', + b'881515307400\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B53270\x00\x00\x00\x00\x00\x00', + b'8965B53271\x00\x00\x00\x00\x00\x00', + b'8965B53280\x00\x00\x00\x00\x00\x00', + b'8965B53281\x00\x00\x00\x00\x00\x00', + b'8965B53310\x00\x00\x00\x00\x00\x00', + b'8965B53311\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F5301101\x00\x00\x00\x00', + b'8646F5301200\x00\x00\x00\x00', + b'8646F5301300\x00\x00\x00\x00', + b'8646F5301400\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_IS_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x018966353S1000\x00\x00\x00\x00', + b'\x018966353S2000\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x02353U0000\x00\x00\x00\x00\x00\x00\x00\x0052422000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15265337200\x00\x00\x00\x00', + b'\x01F15265342000\x00\x00\x00\x00', + b'\x01F15265343000\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B53450\x00\x00\x00\x00\x00\x00', + b'8965B53800\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F6201200\x00\x00\x00\x00', + b'\x018821F6201300\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F5303300\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F5303300\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F5303400\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_PRIUS: { + (Ecu.engine, 0x700, None): [ + b'\x02896634761000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634761100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634761200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634762000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634762100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634763000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634763100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634765000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634765100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634769000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634769100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634769200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634770000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634770100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634774000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634774100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634774200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634782000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x02896634784000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347A0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347A5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347A8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347B0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x03896634759100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x03896634759200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x03896634759200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', + b'\x03896634759300\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x03896634759300\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', + b'\x03896634760000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701002\x00\x00\x00\x00', + b'\x03896634760000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x03896634760000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', + b'\x03896634760100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x03896634760200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x03896634760200\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', + b'\x03896634760300\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701004\x00\x00\x00\x00', + b'\x03896634768000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703001\x00\x00\x00\x00', + b'\x03896634768000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703002\x00\x00\x00\x00', + b'\x03896634768100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703002\x00\x00\x00\x00', + b'\x03896634785000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4705001\x00\x00\x00\x00', + b'\x03896634785000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', + b'\x03896634786000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4705001\x00\x00\x00\x00', + b'\x03896634786000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', + b'\x03896634789000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4703002\x00\x00\x00\x00', + b'\x038966347A3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4701003\x00\x00\x00\x00', + b'\x038966347A3000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4707001\x00\x00\x00\x00', + b'\x038966347B6000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', + b'\x038966347B7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', + b'\x038966347B7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710001\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B47021\x00\x00\x00\x00\x00\x00', + b'8965B47022\x00\x00\x00\x00\x00\x00', + b'8965B47023\x00\x00\x00\x00\x00\x00', + b'8965B47050\x00\x00\x00\x00\x00\x00', + b'8965B47060\x00\x00\x00\x00\x00\x00', + b'8965B47070\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152647290\x00\x00\x00\x00\x00\x00', + b'F152647300\x00\x00\x00\x00\x00\x00', + b'F152647310\x00\x00\x00\x00\x00\x00', + b'F152647414\x00\x00\x00\x00\x00\x00', + b'F152647415\x00\x00\x00\x00\x00\x00', + b'F152647416\x00\x00\x00\x00\x00\x00', + b'F152647417\x00\x00\x00\x00\x00\x00', + b'F152647470\x00\x00\x00\x00\x00\x00', + b'F152647490\x00\x00\x00\x00\x00\x00', + b'F152647682\x00\x00\x00\x00\x00\x00', + b'F152647683\x00\x00\x00\x00\x00\x00', + b'F152647684\x00\x00\x00\x00\x00\x00', + b'F152647862\x00\x00\x00\x00\x00\x00', + b'F152647863\x00\x00\x00\x00\x00\x00', + b'F152647864\x00\x00\x00\x00\x00\x00', + b'F152647865\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881514702300\x00\x00\x00\x00', + b'881514702400\x00\x00\x00\x00', + b'881514703100\x00\x00\x00\x00', + b'881514704100\x00\x00\x00\x00', + b'881514706000\x00\x00\x00\x00', + b'881514706100\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702000\x00\x00\x00\x00', + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F4701300\x00\x00\x00\x00', + b'8646F4702001\x00\x00\x00\x00', + b'8646F4702100\x00\x00\x00\x00', + b'8646F4702200\x00\x00\x00\x00', + b'8646F4705000\x00\x00\x00\x00', + b'8646F4705200\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_PRIUS_V: { + (Ecu.abs, 0x7b0, None): [ + b'F152647280\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0234781000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881514705100\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F4703300\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_RAV4: { + (Ecu.engine, 0x7e0, None): [ + b'\x02342Q1000\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q1100\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q1200\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q1300\x00\x00\x00\x00\x00\x00\x00\x0054212000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q2000\x00\x00\x00\x00\x00\x00\x00\x0054213000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q2100\x00\x00\x00\x00\x00\x00\x00\x0054213000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q2200\x00\x00\x00\x00\x00\x00\x00\x0054213000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342Q4000\x00\x00\x00\x00\x00\x00\x00\x0054215000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B42063\x00\x00\x00\x00\x00\x00', + b'8965B42073\x00\x00\x00\x00\x00\x00', + b'8965B42082\x00\x00\x00\x00\x00\x00', + b'8965B42083\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F15260R102\x00\x00\x00\x00\x00\x00', + b'F15260R103\x00\x00\x00\x00\x00\x00', + b'F152642492\x00\x00\x00\x00\x00\x00', + b'F152642493\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881514201200\x00\x00\x00\x00', + b'881514201300\x00\x00\x00\x00', + b'881514201400\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702000\x00\x00\x00\x00', + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F4201100\x00\x00\x00\x00', + b'8646F4201200\x00\x00\x00\x00', + b'8646F4202001\x00\x00\x00\x00', + b'8646F4202100\x00\x00\x00\x00', + b'8646F4204000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_RAV4H: { + (Ecu.engine, 0x7e0, None): [ + b'\x02342N9000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342N9100\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02342P0000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B42102\x00\x00\x00\x00\x00\x00', + b'8965B42103\x00\x00\x00\x00\x00\x00', + b'8965B42112\x00\x00\x00\x00\x00\x00', + b'8965B42162\x00\x00\x00\x00\x00\x00', + b'8965B42163\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152642090\x00\x00\x00\x00\x00\x00', + b'F152642110\x00\x00\x00\x00\x00\x00', + b'F152642120\x00\x00\x00\x00\x00\x00', + b'F152642400\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881514202200\x00\x00\x00\x00', + b'881514202300\x00\x00\x00\x00', + b'881514202400\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702000\x00\x00\x00\x00', + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F4201100\x00\x00\x00\x00', + b'8646F4201200\x00\x00\x00\x00', + b'8646F4202001\x00\x00\x00\x00', + b'8646F4202100\x00\x00\x00\x00', + b'8646F4204000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_RAV4_PRIME: { + (Ecu.engine, 0x700, None): [ + b'\x018966342S7000\x00\x00\x00\x00', + b'\x018966342Z1000\x00\x00\x00\x00', + b'\x018966342Z1100\x00\x00\x00\x00', + b'\x01896634AJ7000\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15264228300\x00\x00\x00\x00', + b'\x01F15264228500\x00\x00\x00\x00', + b'\x01F15264284100\x00\x00\x00\x00', + b'\x01F152642F3000\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x018965B4209000\x00\x00\x00\x00', + b'\x018965B4233100\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301400\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F4205200\x00\x00\x00\x008646G4202000\x00\x00\x00\x00', + b'\x028646F4205300\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', + b'\x028646F4210100\x00\x00\x00\x008646G3305000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_RAV4_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x01896630R58000\x00\x00\x00\x00', + b'\x01896630R58100\x00\x00\x00\x00', + b'\x018966342E2000\x00\x00\x00\x00', + b'\x018966342M5000\x00\x00\x00\x00', + b'\x018966342M8000\x00\x00\x00\x00', + b'\x018966342S9000\x00\x00\x00\x00', + b'\x018966342T1000\x00\x00\x00\x00', + b'\x018966342T6000\x00\x00\x00\x00', + b'\x018966342T9000\x00\x00\x00\x00', + b'\x018966342U4000\x00\x00\x00\x00', + b'\x018966342U4100\x00\x00\x00\x00', + b'\x018966342U5100\x00\x00\x00\x00', + b'\x018966342V0000\x00\x00\x00\x00', + b'\x018966342V3000\x00\x00\x00\x00', + b'\x018966342V3100\x00\x00\x00\x00', + b'\x018966342V3200\x00\x00\x00\x00', + b'\x018966342W5000\x00\x00\x00\x00', + b'\x018966342W7000\x00\x00\x00\x00', + b'\x018966342W8000\x00\x00\x00\x00', + b'\x018966342X5000\x00\x00\x00\x00', + b'\x018966342X6000\x00\x00\x00\x00', + b'\x01896634A05000\x00\x00\x00\x00', + b'\x01896634A15000\x00\x00\x00\x00', + b'\x01896634A19000\x00\x00\x00\x00', + b'\x01896634A19100\x00\x00\x00\x00', + b'\x01896634A20000\x00\x00\x00\x00', + b'\x01896634A20100\x00\x00\x00\x00', + b'\x01896634A22000\x00\x00\x00\x00', + b'\x01896634A22100\x00\x00\x00\x00', + b'\x01896634A25000\x00\x00\x00\x00', + b'\x01896634A30000\x00\x00\x00\x00', + b'\x01896634A44000\x00\x00\x00\x00', + b'\x01896634A45000\x00\x00\x00\x00', + b'\x01896634A46000\x00\x00\x00\x00', + b'\x028966342M7000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', + b'\x028966342T0000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', + b'\x028966342V1000\x00\x00\x00\x00897CF1202001\x00\x00\x00\x00', + b'\x028966342W4001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', + b'\x028966342Y8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', + b'\x028966342Z8000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', + b'\x02896634A13000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02896634A13001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896634A13101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896634A13201\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896634A14001\x00\x00\x00\x00897CF0R01000\x00\x00\x00\x00', + b'\x02896634A14001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', + b'\x02896634A14001\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896634A14101\x00\x00\x00\x00897CF4801001\x00\x00\x00\x00', + b'\x02896634A18000\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', + b'\x02896634A18100\x00\x00\x00\x00897CF1201001\x00\x00\x00\x00', + b'\x02896634A23000\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02896634A23001\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', + b'\x02896634A23101\x00\x00\x00\x00897CF1203001\x00\x00\x00\x00', + b'\x02896634A43000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00', + b'\x02896634A47000\x00\x00\x00\x00897CF4201001\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15260R210\x00\x00\x00\x00\x00\x00', + b'\x01F15260R220\x00\x00\x00\x00\x00\x00', + b'\x01F15260R290\x00\x00\x00\x00\x00\x00', + b'\x01F15260R292\x00\x00\x00\x00\x00\x00', + b'\x01F15260R300\x00\x00\x00\x00\x00\x00', + b'\x01F15260R302\x00\x00\x00\x00\x00\x00', + b'\x01F152642551\x00\x00\x00\x00\x00\x00', + b'\x01F152642561\x00\x00\x00\x00\x00\x00', + b'\x01F152642601\x00\x00\x00\x00\x00\x00', + b'\x01F152642700\x00\x00\x00\x00\x00\x00', + b'\x01F152642701\x00\x00\x00\x00\x00\x00', + b'\x01F152642710\x00\x00\x00\x00\x00\x00', + b'\x01F152642711\x00\x00\x00\x00\x00\x00', + b'\x01F152642750\x00\x00\x00\x00\x00\x00', + b'\x01F152642751\x00\x00\x00\x00\x00\x00', + b'F152642290\x00\x00\x00\x00\x00\x00', + b'F152642291\x00\x00\x00\x00\x00\x00', + b'F152642322\x00\x00\x00\x00\x00\x00', + b'F152642330\x00\x00\x00\x00\x00\x00', + b'F152642331\x00\x00\x00\x00\x00\x00', + b'F152642520\x00\x00\x00\x00\x00\x00', + b'F152642521\x00\x00\x00\x00\x00\x00', + b'F152642531\x00\x00\x00\x00\x00\x00', + b'F152642532\x00\x00\x00\x00\x00\x00', + b'F152642540\x00\x00\x00\x00\x00\x00', + b'F152642541\x00\x00\x00\x00\x00\x00', + b'F152642542\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x028965B0R01200\x00\x00\x00\x008965B0R02200\x00\x00\x00\x00', + b'\x028965B0R01300\x00\x00\x00\x008965B0R02300\x00\x00\x00\x00', + b'\x028965B0R01400\x00\x00\x00\x008965B0R02400\x00\x00\x00\x00', + b'8965B42170\x00\x00\x00\x00\x00\x00', + b'8965B42171\x00\x00\x00\x00\x00\x00', + b'8965B42180\x00\x00\x00\x00\x00\x00', + b'8965B42181\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301100\x00\x00\x00\x00', + b'\x018821F3301200\x00\x00\x00\x00', + b'\x018821F3301300\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F4203200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F4203300\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F4203400\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F4203500\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F4203700\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F4203800\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_RAV4_TSS2_2022: { + (Ecu.abs, 0x7b0, None): [ + b'\x01F15260R350\x00\x00\x00\x00\x00\x00', + b'\x01F15260R361\x00\x00\x00\x00\x00\x00', + b'\x01F15264283100\x00\x00\x00\x00', + b'\x01F15264283200\x00\x00\x00\x00', + b'\x01F15264286100\x00\x00\x00\x00', + b'\x01F15264286200\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x028965B0R01500\x00\x00\x00\x008965B0R02500\x00\x00\x00\x00', + b'8965B42172\x00\x00\x00\x00\x00\x00', + b'8965B42182\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x01896634A02001\x00\x00\x00\x00', + b'\x01896634A02101\x00\x00\x00\x00', + b'\x01896634A03000\x00\x00\x00\x00', + b'\x01896634A08000\x00\x00\x00\x00', + b'\x01896634A59000\x00\x00\x00\x00', + b'\x01896634A61000\x00\x00\x00\x00', + b'\x01896634A62000\x00\x00\x00\x00', + b'\x01896634A62100\x00\x00\x00\x00', + b'\x01896634A63000\x00\x00\x00\x00', + b'\x01896634A88000\x00\x00\x00\x00', + b'\x01896634A89000\x00\x00\x00\x00', + b'\x01896634A89100\x00\x00\x00\x00', + b'\x01896634AA0000\x00\x00\x00\x00', + b'\x01896634AA0100\x00\x00\x00\x00', + b'\x01896634AA1000\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F0R01100\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F0R02100\x00\x00\x00\x008646G0R01100\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_RAV4_TSS2_2023: { + (Ecu.abs, 0x7b0, None): [ + b'\x01F15260R440\x00\x00\x00\x00\x00\x00', + b'\x01F15260R450\x00\x00\x00\x00\x00\x00', + b'\x01F15260R50000\x00\x00\x00\x00', + b'\x01F15260R51000\x00\x00\x00\x00', + b'\x01F15264283200\x00\x00\x00\x00', + b'\x01F15264283300\x00\x00\x00\x00', + b'\x01F152642F1000\x00\x00\x00\x00', + b'\x01F152642F8000\x00\x00\x00\x00', + b'\x01F152642F8100\x00\x00\x00\x00', + b'\x01F152642F9000\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x028965B0R11000\x00\x00\x00\x008965B0R12000\x00\x00\x00\x00', + b'8965B42371\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x700, None): [ + b'\x01896634A61000\x00\x00\x00\x00', + b'\x01896634A88100\x00\x00\x00\x00', + b'\x01896634A89100\x00\x00\x00\x00', + b'\x01896634AE1001\x00\x00\x00\x00', + b'\x01896634AF0000\x00\x00\x00\x00', + b'\x01896634AJ2000\x00\x00\x00\x00', + b'\x01896634AJ3000\x00\x00\x00\x00', + b'\x01896634AL5000\x00\x00\x00\x00', + b'\x01896634AL6000\x00\x00\x00\x00', + b'\x01896634AL8000\x00\x00\x00\x00', + b'\x01896634AS9000\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F0R03100\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F0R05100\x00\x00\x00\x008646G0R02100\x00\x00\x00\x00', + b'\x028646F0R05200\x00\x00\x00\x008646G0R02200\x00\x00\x00\x00', + b'\x028646F0R05300\x00\x00\x00\x008646G0R02300\x00\x00\x00\x00', + b'\x028646F0R11000\x00\x00\x00\x008646G0R04000\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_SIENNA: { + (Ecu.engine, 0x700, None): [ + b'\x01896630832100\x00\x00\x00\x00', + b'\x01896630832200\x00\x00\x00\x00', + b'\x01896630838000\x00\x00\x00\x00', + b'\x01896630838100\x00\x00\x00\x00', + b'\x01896630842000\x00\x00\x00\x00', + b'\x01896630843000\x00\x00\x00\x00', + b'\x01896630851000\x00\x00\x00\x00', + b'\x01896630851100\x00\x00\x00\x00', + b'\x01896630851200\x00\x00\x00\x00', + b'\x01896630852000\x00\x00\x00\x00', + b'\x01896630852100\x00\x00\x00\x00', + b'\x01896630852200\x00\x00\x00\x00', + b'\x01896630859000\x00\x00\x00\x00', + b'\x01896630860000\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B45070\x00\x00\x00\x00\x00\x00', + b'8965B45080\x00\x00\x00\x00\x00\x00', + b'8965B45082\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152608130\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881510801100\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702200\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F0801100\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_SIENNA_4TH_GEN: { + (Ecu.engine, 0x700, None): [ + b'\x01896630841000\x00\x00\x00\x00', + b'\x01896630857101\x00\x00\x00\x00', + b'\x01896630864000\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15260815100\x00\x00\x00\x00', + b'\x01F15260815300\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x018965B4509100\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301500\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F0802200\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', + b'\x028646F0802300\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', + b'\x028646F0802400\x00\x00\x00\x008646G4202100\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_CTH: { + (Ecu.dsu, 0x791, None): [ + b'881517601100\x00\x00\x00\x00', + b'881517602000\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152676144\x00\x00\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0237635000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0237641000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F7601100\x00\x00\x00\x00', + b'8646F7601200\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_ES_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x018966306U6000\x00\x00\x00\x00', + b'\x018966333T5000\x00\x00\x00\x00', + b'\x018966333T5100\x00\x00\x00\x00', + b'\x018966333X6000\x00\x00\x00\x00', + b'\x01896633T07000\x00\x00\x00\x00', + b'\x01896633T38000\x00\x00\x00\x00', + b'\x01896633T58000\x00\x00\x00\x00', + b'\x01896633T63000\x00\x00\x00\x00', + b'\x028966333S8000\x00\x00\x00\x00897CF3302002\x00\x00\x00\x00', + b'\x028966333S8000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966333T0100\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966333V4000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x028966333W1000\x00\x00\x00\x00897CF3305001\x00\x00\x00\x00', + b'\x02896633T09000\x00\x00\x00\x00897CF3307001\x00\x00\x00\x00', + b'\x02896633T10000\x00\x00\x00\x00897CF3307001\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F152606281\x00\x00\x00\x00\x00\x00', + b'\x01F152606340\x00\x00\x00\x00\x00\x00', + b'\x01F152606461\x00\x00\x00\x00\x00\x00', + b'\x01F15260646200\x00\x00\x00\x00', + b'F152633423\x00\x00\x00\x00\x00\x00', + b'F152633680\x00\x00\x00\x00\x00\x00', + b'F152633681\x00\x00\x00\x00\x00\x00', + b'F152633F50\x00\x00\x00\x00\x00\x00', + b'F152633F51\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B33252\x00\x00\x00\x00\x00\x00', + b'8965B33590\x00\x00\x00\x00\x00\x00', + b'8965B33690\x00\x00\x00\x00\x00\x00', + b'8965B33702\x00\x00\x00\x00\x00\x00', + b'8965B33721\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301100\x00\x00\x00\x00', + b'\x018821F3301200\x00\x00\x00\x00', + b'\x018821F3301300\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + b'\x018821F6201200\x00\x00\x00\x00', + b'\x018821F6201300\x00\x00\x00\x00', + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F0610000\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F0610100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F33030D0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F3303100\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F3303200\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F3304100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F3304200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F3304300\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + b'\x028646F3309100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F3309100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + b'\x028646F3309400\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_ES: { + (Ecu.engine, 0x7e0, None): [ + b'\x02333M4100\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02333M4200\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02333R0000\x00\x00\x00\x00\x00\x00\x00\x00A0C01000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152606201\x00\x00\x00\x00\x00\x00', + b'F152606202\x00\x00\x00\x00\x00\x00', + b'F152633171\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881513309400\x00\x00\x00\x00', + b'881513309500\x00\x00\x00\x00', + b'881513310400\x00\x00\x00\x00', + b'881513310500\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B33502\x00\x00\x00\x00\x00\x00', + b'8965B33512\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4701100\x00\x00\x00\x00', + b'8821F4701200\x00\x00\x00\x00', + b'8821F4701300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F3302001\x00\x00\x00\x00', + b'8646F3302100\x00\x00\x00\x00', + b'8646F3302200\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_GS_F: { + (Ecu.engine, 0x7e0, None): [ + b'\x0233075200\x00\x00\x00\x00\x00\x00\x00\x00530B9000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152630700\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881513016200\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B30551\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702000\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F3002100\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_NX: { + (Ecu.engine, 0x700, None): [ + b'\x01896637850000\x00\x00\x00\x00', + b'\x01896637851000\x00\x00\x00\x00', + b'\x01896637852000\x00\x00\x00\x00', + b'\x01896637854000\x00\x00\x00\x00', + b'\x01896637873000\x00\x00\x00\x00', + b'\x01896637878000\x00\x00\x00\x00', + b'\x01896637878100\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0237841000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0237842000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0237880000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0237882000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0237886000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152678130\x00\x00\x00\x00\x00\x00', + b'F152678140\x00\x00\x00\x00\x00\x00', + b'F152678160\x00\x00\x00\x00\x00\x00', + b'F152678170\x00\x00\x00\x00\x00\x00', + b'F152678171\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881517803100\x00\x00\x00\x00', + b'881517803300\x00\x00\x00\x00', + b'881517804100\x00\x00\x00\x00', + b'881517804300\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B78060\x00\x00\x00\x00\x00\x00', + b'8965B78080\x00\x00\x00\x00\x00\x00', + b'8965B78100\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702100\x00\x00\x00\x00', + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F7801100\x00\x00\x00\x00', + b'8646F7801300\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_NX_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x018966378B2000\x00\x00\x00\x00', + b'\x018966378B2100\x00\x00\x00\x00', + b'\x018966378B3000\x00\x00\x00\x00', + b'\x018966378B3100\x00\x00\x00\x00', + b'\x018966378B4100\x00\x00\x00\x00', + b'\x018966378G2000\x00\x00\x00\x00', + b'\x018966378G3000\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0237881000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0237887000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02378A0000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02378F4000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F152678221\x00\x00\x00\x00\x00\x00', + b'F152678200\x00\x00\x00\x00\x00\x00', + b'F152678210\x00\x00\x00\x00\x00\x00', + b'F152678211\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B78110\x00\x00\x00\x00\x00\x00', + b'8965B78120\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301200\x00\x00\x00\x00', + b'\x018821F3301300\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F78030A0\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F7803100\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_LC_TSS2: { + (Ecu.engine, 0x7e0, None): [ + b'\x0131130000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152611390\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B11091\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F6201400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F1104200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + b'\x028646F1105200\x00\x00\x00\x008646G3304000\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_RC: { + (Ecu.engine, 0x700, None): [ + b'\x01896632461100\x00\x00\x00\x00', + b'\x01896632478100\x00\x00\x00\x00', + b'\x01896632478200\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x0232484000\x00\x00\x00\x00\x00\x00\x00\x0052422000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152624150\x00\x00\x00\x00\x00\x00', + b'F152624221\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881512404100\x00\x00\x00\x00', + b'881512407000\x00\x00\x00\x00', + b'881512409100\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B24081\x00\x00\x00\x00\x00\x00', + b'8965B24240\x00\x00\x00\x00\x00\x00', + b'8965B24320\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4702300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F2401100\x00\x00\x00\x00', + b'8646F2401200\x00\x00\x00\x00', + b'8646F2402200\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_RX: { + (Ecu.engine, 0x700, None): [ + b'\x01896630E36100\x00\x00\x00\x00', + b'\x01896630E36200\x00\x00\x00\x00', + b'\x01896630E36300\x00\x00\x00\x00', + b'\x01896630E36600\x00\x00\x00\x00', + b'\x01896630E37100\x00\x00\x00\x00', + b'\x01896630E37200\x00\x00\x00\x00', + b'\x01896630E37300\x00\x00\x00\x00', + b'\x01896630E41000\x00\x00\x00\x00', + b'\x01896630E41100\x00\x00\x00\x00', + b'\x01896630E41200\x00\x00\x00\x00', + b'\x01896630E41500\x00\x00\x00\x00', + b'\x01896630EA3100\x00\x00\x00\x00', + b'\x01896630EA3300\x00\x00\x00\x00', + b'\x01896630EA3400\x00\x00\x00\x00', + b'\x01896630EA4100\x00\x00\x00\x00', + b'\x01896630EA4200\x00\x00\x00\x00', + b'\x01896630EA4300\x00\x00\x00\x00', + b'\x01896630EA4400\x00\x00\x00\x00', + b'\x01896630EA6300\x00\x00\x00\x00', + b'\x018966348R1300\x00\x00\x00\x00', + b'\x018966348R8500\x00\x00\x00\x00', + b'\x018966348R9300\x00\x00\x00\x00', + b'\x018966348W1300\x00\x00\x00\x00', + b'\x018966348W2300\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x02348J7000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348N0000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348Q4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348Q4100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348T1000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348T1100\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348T1200\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348T3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348V6000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348Z3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152648361\x00\x00\x00\x00\x00\x00', + b'F152648472\x00\x00\x00\x00\x00\x00', + b'F152648473\x00\x00\x00\x00\x00\x00', + b'F152648474\x00\x00\x00\x00\x00\x00', + b'F152648492\x00\x00\x00\x00\x00\x00', + b'F152648493\x00\x00\x00\x00\x00\x00', + b'F152648494\x00\x00\x00\x00\x00\x00', + b'F152648501\x00\x00\x00\x00\x00\x00', + b'F152648502\x00\x00\x00\x00\x00\x00', + b'F152648504\x00\x00\x00\x00\x00\x00', + b'F152648630\x00\x00\x00\x00\x00\x00', + b'F152648740\x00\x00\x00\x00\x00\x00', + b'F152648A30\x00\x00\x00\x00\x00\x00', + ], + (Ecu.dsu, 0x791, None): [ + b'881514810300\x00\x00\x00\x00', + b'881514810500\x00\x00\x00\x00', + b'881514810700\x00\x00\x00\x00', + b'881514811300\x00\x00\x00\x00', + b'881514811500\x00\x00\x00\x00', + b'881514811700\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B0E011\x00\x00\x00\x00\x00\x00', + b'8965B0E012\x00\x00\x00\x00\x00\x00', + b'8965B48102\x00\x00\x00\x00\x00\x00', + b'8965B48111\x00\x00\x00\x00\x00\x00', + b'8965B48112\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'8821F4701000\x00\x00\x00\x00', + b'8821F4701100\x00\x00\x00\x00', + b'8821F4701200\x00\x00\x00\x00', + b'8821F4701300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'8646F4801100\x00\x00\x00\x00', + b'8646F4801200\x00\x00\x00\x00', + b'8646F4802001\x00\x00\x00\x00', + b'8646F4802100\x00\x00\x00\x00', + b'8646F4802200\x00\x00\x00\x00', + b'8646F4809000\x00\x00\x00\x00', + ], + }, + CAR.LEXUS_RX_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x01896630EA9000\x00\x00\x00\x00', + b'\x01896630EB0000\x00\x00\x00\x00', + b'\x01896630EC9000\x00\x00\x00\x00', + b'\x01896630EC9100\x00\x00\x00\x00', + b'\x01896630ED0000\x00\x00\x00\x00', + b'\x01896630ED0100\x00\x00\x00\x00', + b'\x01896630ED5000\x00\x00\x00\x00', + b'\x01896630ED6000\x00\x00\x00\x00', + b'\x018966348R9200\x00\x00\x00\x00', + b'\x018966348T8000\x00\x00\x00\x00', + b'\x018966348W5100\x00\x00\x00\x00', + b'\x018966348W9000\x00\x00\x00\x00', + b'\x018966348X0000\x00\x00\x00\x00', + b'\x01896634D11000\x00\x00\x00\x00', + b'\x01896634D12000\x00\x00\x00\x00', + b'\x01896634D12100\x00\x00\x00\x00', + b'\x01896634D43000\x00\x00\x00\x00', + b'\x01896634D44000\x00\x00\x00\x00', + ], + (Ecu.engine, 0x7e0, None): [ + b'\x02348U2000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348X4000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348X5000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348X6000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348X8000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x02348Y3000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0234D14000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0234D15000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0234D16000\x00\x00\x00\x00\x00\x00\x00\x00A4802000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15260E031\x00\x00\x00\x00\x00\x00', + b'\x01F15260E041\x00\x00\x00\x00\x00\x00', + b'\x01F152648781\x00\x00\x00\x00\x00\x00', + b'\x01F152648801\x00\x00\x00\x00\x00\x00', + b'F152648493\x00\x00\x00\x00\x00\x00', + b'F152648811\x00\x00\x00\x00\x00\x00', + b'F152648831\x00\x00\x00\x00\x00\x00', + b'F152648891\x00\x00\x00\x00\x00\x00', + b'F152648C80\x00\x00\x00\x00\x00\x00', + b'F152648D00\x00\x00\x00\x00\x00\x00', + b'F152648D60\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B48261\x00\x00\x00\x00\x00\x00', + b'8965B48271\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301100\x00\x00\x00\x00', + b'\x018821F3301300\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F4810100\x00\x00\x00\x008646G2601200\x00\x00\x00\x00', + b'\x028646F4810200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F4810300\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F4810400\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_PRIUS_TSS2: { + (Ecu.engine, 0x700, None): [ + b'\x028966347B1000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347C4000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347C6000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347C7000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x028966347C8000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00', + b'\x038966347C0000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710101\x00\x00\x00\x00', + b'\x038966347C1000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4710101\x00\x00\x00\x00', + b'\x038966347C5000\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4707101\x00\x00\x00\x00', + b'\x038966347C5100\x00\x00\x00\x008966A4703000\x00\x00\x00\x00897CF4707101\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152647500\x00\x00\x00\x00\x00\x00', + b'F152647510\x00\x00\x00\x00\x00\x00', + b'F152647520\x00\x00\x00\x00\x00\x00', + b'F152647521\x00\x00\x00\x00\x00\x00', + b'F152647531\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B47070\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301300\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F4707000\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646F4710000\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + b'\x028646F4712000\x00\x00\x00\x008646G2601500\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_MIRAI: { + (Ecu.abs, 0x7d1, None): [ + b'\x01898A36203000\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F15266203200\x00\x00\x00\x00', + b'\x01F15266203500\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x028965B6204100\x00\x00\x00\x008965B6203100\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F6201200\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F6201400\x00\x00\x00\x008646G5301200\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_ALPHARD_TSS2: { + (Ecu.engine, 0x7e0, None): [ + b'\x0235870000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0235879000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00', + b'\x0235883000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'8965B58040\x00\x00\x00\x00\x00\x00', + b'8965B58052\x00\x00\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'F152658320\x00\x00\x00\x00\x00\x00', + b'F152658341\x00\x00\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F3301200\x00\x00\x00\x00', + b'\x018821F3301400\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F58010C0\x00\x00\x00\x008646G26011A0\x00\x00\x00\x00', + b'\x028646F5803200\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + b'\x028646FV201000\x00\x00\x00\x008646G2601400\x00\x00\x00\x00', + ], + }, + CAR.TOYOTA_YARIS: { + (Ecu.engine, 0x700, None): [ + b'\x0189663K015300\x00\x00\x00\x00', + ], + (Ecu.eps, 0x7a1, None): [ + b'\x018965BK003200\x00\x00\x00\x00', + ], + (Ecu.abs, 0x7b0, None): [ + b'\x01F1526K007500\x00\x00\x00\x00', + ], + (Ecu.fwdRadar, 0x750, 0xf): [ + b'\x018821F0D05300\x00\x00\x00\x00', + ], + (Ecu.fwdCamera, 0x750, 0x6d): [ + b'\x028646F5205200\x00\x00\x00\x008646G5202200\x00\x00\x00\x00', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/toyota/interface.py b/opendbc_repo/opendbc/car/toyota/interface.py new file mode 100644 index 0000000000..bf6f046034 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/interface.py @@ -0,0 +1,160 @@ +from opendbc.car import Bus, structs, get_safety_config, uds +from opendbc.car.toyota.carstate import CarState +from opendbc.car.toyota.carcontroller import CarController +from opendbc.car.toyota.radar_interface import RadarInterface +from opendbc.car.toyota.values import Ecu, CAR, DBC, ToyotaFlags, CarControllerParams, TSS2_CAR, RADAR_ACC_CAR, NO_DSU_CAR, \ + MIN_ACC_SPEED, EPS_SCALE, UNSUPPORTED_DSU_CAR, NO_STOP_TIMER_CAR, ANGLE_CONTROL_CAR, \ + ToyotaSafetyFlags +from opendbc.car.disable_ecu import disable_ecu +from opendbc.car.interfaces import CarInterfaceBase + +SteerControlType = structs.CarParams.SteerControlType + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + RadarInterface = RadarInterface + + @staticmethod + def get_pid_accel_limits(CP, current_speed, cruise_speed): + return CarControllerParams(CP).ACCEL_MIN, CarControllerParams(CP).ACCEL_MAX + + @staticmethod + def _get_params(ret: structs.CarParams, candidate, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "toyota" + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.toyota)] + ret.safetyConfigs[0].safetyParam = EPS_SCALE[candidate] + + # BRAKE_MODULE is on a different address for these cars + if DBC[candidate][Bus.pt] == "toyota_new_mc_pt_generated": + ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.ALT_BRAKE.value + + if ret.flags & ToyotaFlags.SECOC.value: + ret.secOcRequired = True + ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.SECOC.value + + if candidate in ANGLE_CONTROL_CAR: + ret.steerControlType = SteerControlType.angle + ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.LTA.value + + # LTA control can be more delayed and winds up more often + ret.steerActuatorDelay = 0.18 + ret.steerLimitTimer = 0.8 + else: + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + + ret.steerActuatorDelay = 0.12 # Default delay, Prius has larger delay + ret.steerLimitTimer = 0.4 + + stop_and_go = candidate in TSS2_CAR + + # In TSS2 cars, the camera does long control + found_ecus = [fw.ecu for fw in car_fw] + ret.enableDsu = len(found_ecus) > 0 and Ecu.dsu not in found_ecus and candidate not in (NO_DSU_CAR | UNSUPPORTED_DSU_CAR) + + if Ecu.hybrid in found_ecus: + ret.flags |= ToyotaFlags.HYBRID.value + + if candidate == CAR.TOYOTA_PRIUS: + stop_and_go = True + # Only give steer angle deadzone to for bad angle sensor prius + for fw in car_fw: + if fw.ecu == "eps" and not fw.fwVersion == b'8965B47060\x00\x00\x00\x00\x00\x00': + ret.steerActuatorDelay = 0.25 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning, steering_angle_deadzone_deg=0.2) + + elif candidate in (CAR.LEXUS_RX, CAR.LEXUS_RX_TSS2): + stop_and_go = True + ret.wheelSpeedFactor = 1.035 + + elif candidate in (CAR.TOYOTA_AVALON, CAR.TOYOTA_AVALON_2019, CAR.TOYOTA_AVALON_TSS2): + # starting from 2019, all Avalon variants have stop and go + # https://engage.toyota.com/static/images/toyota_safety_sense/TSS_Applicability_Chart.pdf + stop_and_go = candidate != CAR.TOYOTA_AVALON + + elif candidate in (CAR.TOYOTA_RAV4_TSS2, CAR.TOYOTA_RAV4_TSS2_2022, CAR.TOYOTA_RAV4_TSS2_2023, CAR.TOYOTA_RAV4_PRIME, CAR.TOYOTA_SIENNA_4TH_GEN): + ret.lateralTuning.init('pid') + ret.lateralTuning.pid.kiBP = [0.0] + ret.lateralTuning.pid.kpBP = [0.0] + ret.lateralTuning.pid.kpV = [0.6] + ret.lateralTuning.pid.kiV = [0.1] + ret.lateralTuning.pid.kf = 0.00007818594 + + # 2019+ RAV4 TSS2 uses two different steering racks and specific tuning seems to be necessary. + # See https://github.com/commaai/openpilot/pull/21429#issuecomment-873652891 + for fw in car_fw: + if fw.ecu == "eps" and (fw.fwVersion.startswith(b'\x02') or fw.fwVersion in [b'8965B42181\x00\x00\x00\x00\x00\x00']): + ret.lateralTuning.pid.kpV = [0.15] + ret.lateralTuning.pid.kiV = [0.05] + ret.lateralTuning.pid.kf = 0.00004 + break + + elif candidate in (CAR.TOYOTA_CHR, CAR.TOYOTA_CAMRY, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_NX): + # TODO: Some of these platforms are not advertised to have full range ACC, are they similar to SNG_WITHOUT_DSU cars? + stop_and_go = True + + # TODO: these models can do stop and go, but unclear if it requires sDSU or unplugging DSU. + # For now, don't list stop and go functionality in the docs + if ret.flags & ToyotaFlags.SNG_WITHOUT_DSU: + stop_and_go = stop_and_go or (ret.enableDsu and not docs) + + ret.centerToFront = ret.wheelbase * 0.44 + + # TODO: Some TSS-P platforms have BSM, but are flipped based on region or driving direction. + # Detect flipped signals and enable for C-HR and others + ret.enableBsm = 0x3F6 in fingerprint[0] and candidate in TSS2_CAR + + # No radar dbc for cars without DSU which are not TSS 2.0 + # TODO: make an adas dbc file for dsu-less models + ret.radarUnavailable = Bus.radar not in DBC[candidate] or candidate in (NO_DSU_CAR - TSS2_CAR) + + # since we don't yet parse radar on TSS2/TSS-P radar-based ACC cars, gate longitudinal behind experimental toggle + if candidate in (RADAR_ACC_CAR | NO_DSU_CAR): + ret.alphaLongitudinalAvailable = candidate in RADAR_ACC_CAR + + # Disabling radar is only supported on TSS2 radar-ACC cars + if alpha_long and candidate in RADAR_ACC_CAR: + ret.flags |= ToyotaFlags.DISABLE_RADAR.value + + # openpilot longitudinal enabled by default: + # - cars w/ DSU disconnected + # - TSS2 cars with camera sending ACC_CONTROL where we can block it + # openpilot longitudinal behind experimental long toggle: + # - TSS2 radar ACC cars (disables radar) + + if ret.flags & ToyotaFlags.SECOC.value: + ret.openpilotLongitudinalControl = False + else: + ret.openpilotLongitudinalControl = ret.enableDsu or \ + candidate in (TSS2_CAR - RADAR_ACC_CAR) or \ + bool(ret.flags & ToyotaFlags.DISABLE_RADAR.value) + + ret.autoResumeSng = ret.openpilotLongitudinalControl and candidate in NO_STOP_TIMER_CAR + + if not ret.openpilotLongitudinalControl: + ret.safetyConfigs[0].safetyParam |= ToyotaSafetyFlags.STOCK_LONGITUDINAL.value + + # min speed to enable ACC. if car can do stop and go, then set enabling speed + # to a negative value, so it won't matter. + ret.minEnableSpeed = -1. if stop_and_go else MIN_ACC_SPEED + + if candidate in TSS2_CAR: + ret.flags |= ToyotaFlags.RAISED_ACCEL_LIMIT.value + + ret.vEgoStopping = 0.25 + ret.vEgoStarting = 0.25 + ret.stoppingDecelRate = 0.3 # reach stopping target smoothly + + # Hybrids have much quicker longitudinal actuator response + if ret.flags & ToyotaFlags.HYBRID.value: + ret.longitudinalActuatorDelay = 0.05 + + return ret + + @staticmethod + def init(CP, can_recv, can_send): + # disable radar if alpha longitudinal toggled on radar-ACC car + if CP.flags & ToyotaFlags.DISABLE_RADAR.value: + communication_control = bytes([uds.SERVICE_TYPE.COMMUNICATION_CONTROL, uds.CONTROL_TYPE.ENABLE_RX_DISABLE_TX, uds.MESSAGE_TYPE.NORMAL]) + disable_ecu(can_recv, can_send, bus=0, addr=0x750, sub_addr=0xf, com_cont_req=communication_control) diff --git a/opendbc_repo/opendbc/car/toyota/radar_interface.py b/opendbc_repo/opendbc/car/toyota/radar_interface.py new file mode 100755 index 0000000000..76dbbc44b4 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/radar_interface.py @@ -0,0 +1,93 @@ +#!/usr/bin/env python3 +from opendbc.can import CANParser +from opendbc.car import Bus +from opendbc.car.structs import RadarData +from opendbc.car.toyota.values import DBC, TSS2_CAR +from opendbc.car.interfaces import RadarInterfaceBase + + +def _create_radar_can_parser(car_fingerprint): + if car_fingerprint in TSS2_CAR: + RADAR_A_MSGS = list(range(0x180, 0x190)) + RADAR_B_MSGS = list(range(0x190, 0x1a0)) + else: + RADAR_A_MSGS = list(range(0x210, 0x220)) + RADAR_B_MSGS = list(range(0x220, 0x230)) + + msg_a_n = len(RADAR_A_MSGS) + msg_b_n = len(RADAR_B_MSGS) + messages = list(zip(RADAR_A_MSGS + RADAR_B_MSGS, [20] * (msg_a_n + msg_b_n), strict=True)) + + return CANParser(DBC[car_fingerprint][Bus.radar], messages, 1) + +class RadarInterface(RadarInterfaceBase): + def __init__(self, CP): + super().__init__(CP) + self.track_id = 0 + + if CP.carFingerprint in TSS2_CAR: + self.RADAR_A_MSGS = list(range(0x180, 0x190)) + self.RADAR_B_MSGS = list(range(0x190, 0x1a0)) + else: + self.RADAR_A_MSGS = list(range(0x210, 0x220)) + self.RADAR_B_MSGS = list(range(0x220, 0x230)) + + self.valid_cnt = {key: 0 for key in self.RADAR_A_MSGS} + + self.rcp = None if CP.radarUnavailable else _create_radar_can_parser(CP.carFingerprint) + self.trigger_msg = self.RADAR_B_MSGS[-1] + self.updated_messages = set() + + def update(self, can_strings): + if self.rcp is None: + return super().update(None) + + vls = self.rcp.update(can_strings) + self.updated_messages.update(vls) + + if self.trigger_msg not in self.updated_messages: + return None + + rr = self._update(self.updated_messages) + self.updated_messages.clear() + + return rr + + def _update(self, updated_messages): + ret = RadarData() + if not self.rcp.can_valid: + ret.errors.canError = True + + for ii in sorted(updated_messages): + if ii in self.RADAR_A_MSGS: + cpt = self.rcp.vl[ii] + + if cpt['LONG_DIST'] >= 255 or cpt['NEW_TRACK']: + self.valid_cnt[ii] = 0 # reset counter + if cpt['VALID'] and cpt['LONG_DIST'] < 255: + self.valid_cnt[ii] += 1 + else: + self.valid_cnt[ii] = max(self.valid_cnt[ii] - 1, 0) + + score = self.rcp.vl[ii+16]['SCORE'] + # print ii, self.valid_cnt[ii], score, cpt['VALID'], cpt['LONG_DIST'], cpt['LAT_DIST'] + + # radar point only valid if it's a valid measurement and score is above 50 + if cpt['VALID'] or (score > 50 and cpt['LONG_DIST'] < 255 and self.valid_cnt[ii] > 0): + if ii not in self.pts or cpt['NEW_TRACK']: + self.pts[ii] = RadarData.RadarPoint() + self.pts[ii].trackId = self.track_id + self.track_id += 1 + self.pts[ii].dRel = cpt['LONG_DIST'] # from front of car + self.pts[ii].yRel = -cpt['LAT_DIST'] # in car frame's y axis, left is positive + self.pts[ii].vRel = cpt['REL_SPEED'] + self.pts[ii].vLead = self.pts[ii].vRel + self.v_ego + self.pts[ii].aRel = float('nan') + self.pts[ii].yvRel = 0 #float('nan') + self.pts[ii].measured = bool(cpt['VALID']) + else: + if ii in self.pts: + del self.pts[ii] + + ret.points = list(self.pts.values()) + return ret diff --git a/opendbc_repo/opendbc/car/toyota/tests/__init__.py b/opendbc_repo/opendbc/car/toyota/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py b/opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py new file mode 100755 index 0000000000..333e7dca26 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/tests/print_platform_codes.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python3 +from collections import defaultdict +from opendbc.car.toyota.values import PLATFORM_CODE_ECUS, get_platform_codes +from opendbc.car.toyota.fingerprints import FW_VERSIONS + +if __name__ == "__main__": + parts_for_ecu: dict = defaultdict(set) + cars_for_code: dict = defaultdict(lambda: defaultdict(set)) + for car_model, ecus in FW_VERSIONS.items(): + print() + print(car_model) + for ecu in sorted(ecus): + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + platform_codes = get_platform_codes(ecus[ecu]) + parts_for_ecu[ecu] |= {code.split(b'-')[0] for code in platform_codes if code.count(b'-') > 1} + for code in platform_codes: + cars_for_code[ecu][b'-'.join(code.split(b'-')[:2])] |= {car_model} + print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') + print(f' Codes: {platform_codes}') + + print('\nECU parts:') + for ecu, parts in parts_for_ecu.items(): + print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}): {parts}') + + print('\nCar models vs. platform codes (no major versions):') + for ecu, codes in cars_for_code.items(): + print(f' (Ecu.{ecu[0]}, {hex(ecu[1])}, {ecu[2]}):') + for code, cars in codes.items(): + print(f' {code!r}: {sorted(cars)}') diff --git a/opendbc_repo/opendbc/car/toyota/tests/test_toyota.py b/opendbc_repo/opendbc/car/toyota/tests/test_toyota.py new file mode 100644 index 0000000000..5ab47f3565 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/tests/test_toyota.py @@ -0,0 +1,167 @@ +from hypothesis import given, settings, strategies as st + +from opendbc.car import Bus +from opendbc.car.structs import CarParams +from opendbc.car.fw_versions import build_fw_dict +from opendbc.car.toyota.fingerprints import FW_VERSIONS +from opendbc.car.toyota.values import CAR, DBC, TSS2_CAR, ANGLE_CONTROL_CAR, RADAR_ACC_CAR, SECOC_CAR, \ + FW_QUERY_CONFIG, PLATFORM_CODE_ECUS, FUZZY_EXCLUDED_PLATFORMS, \ + get_platform_codes + +Ecu = CarParams.Ecu + + +def check_fw_version(fw_version: bytes) -> bool: + # TODO: just use the FW patterns, need to support all chunks + return b'?' not in fw_version and b'!' not in fw_version + + +class TestToyotaInterfaces: + def test_car_sets(self): + assert len(ANGLE_CONTROL_CAR - TSS2_CAR) == 0 + assert len(RADAR_ACC_CAR - TSS2_CAR) == 0 + + def test_lta_platforms(self): + # At this time, only RAV4 2023 is expected to use LTA/angle control + assert ANGLE_CONTROL_CAR == {CAR.TOYOTA_RAV4_TSS2_2023} + + def test_tss2_dbc(self): + # We make some assumptions about TSS2 platforms, + # like looking up certain signals only in this DBC + for car_model, dbc in DBC.items(): + if car_model in TSS2_CAR and car_model not in SECOC_CAR: + assert dbc[Bus.pt] == "toyota_nodsu_pt_generated" + + def test_essential_ecus(self, subtests): + # Asserts standard ECUs exist for each platform + common_ecus = {Ecu.fwdRadar, Ecu.fwdCamera} + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + present_ecus = {ecu[0] for ecu in ecus} + missing_ecus = common_ecus - present_ecus + assert len(missing_ecus) == 0 + + # Some exceptions for other common ECUs + if car_model not in (CAR.TOYOTA_ALPHARD_TSS2,): + assert Ecu.abs in present_ecus + + if car_model not in (CAR.TOYOTA_MIRAI,): + assert Ecu.engine in present_ecus + + if car_model not in (CAR.TOYOTA_PRIUS_V, CAR.LEXUS_CTH): + assert Ecu.eps in present_ecus + + +class TestToyotaFingerprint: + def test_non_essential_ecus(self, subtests): + # Ensures only the cars that have multiple engine ECUs are in the engine non-essential ECU list + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + engine_ecus = {ecu for ecu in ecus if ecu[0] == Ecu.engine} + assert (len(engine_ecus) > 1) == (car_model in FW_QUERY_CONFIG.non_essential_ecus[Ecu.engine]), \ + f"Car model unexpectedly {'not ' if len(engine_ecus) > 1 else ''}in non-essential list" + + def test_valid_fw_versions(self, subtests): + # Asserts all FW versions are valid + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for fws in ecus.values(): + for fw in fws: + assert check_fw_version(fw), fw + + # Tests for part numbers, platform codes, and sub-versions which Toyota will use to fuzzy + # fingerprint in the absence of full FW matches: + @settings(max_examples=100) + @given(data=st.data()) + def test_platform_codes_fuzzy_fw(self, data): + fw_strategy = st.lists(st.binary()) + fws = data.draw(fw_strategy) + get_platform_codes(fws) + + def test_platform_code_ecus_available(self, subtests): + # Asserts ECU keys essential for fuzzy fingerprinting are available on all platforms + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for platform_code_ecu in PLATFORM_CODE_ECUS: + if platform_code_ecu == Ecu.eps and car_model in (CAR.TOYOTA_PRIUS_V, CAR.LEXUS_CTH,): + continue + if platform_code_ecu == Ecu.abs and car_model in (CAR.TOYOTA_ALPHARD_TSS2,): + continue + assert platform_code_ecu in [e[0] for e in ecus] + + def test_fw_format(self, subtests): + # Asserts: + # - every supported ECU FW version returns one platform code + # - every supported ECU FW version has a part number + # - expected parsing of ECU sub-versions + + for car_model, ecus in FW_VERSIONS.items(): + with subtests.test(car_model=car_model.value): + for ecu, fws in ecus.items(): + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + codes = dict() + for fw in fws: + result = get_platform_codes([fw]) + # Check only one platform code and sub-version + assert 1 == len(result), f"Unable to parse FW: {fw}" + assert 1 == len(list(result.values())[0]), f"Unable to parse FW: {fw}" + codes |= result + + # Toyota places the ECU part number in their FW versions, assert all parsable + # Note that there is only one unique part number per ECU across the fleet, so this + # is not important for identification, just a sanity check. + assert all(code.count(b"-") > 1 for code in codes), f"FW does not have part number: {fw} {codes}" + + def test_platform_codes_spot_check(self): + # Asserts basic platform code parsing behavior for a few cases + results = get_platform_codes([ + b"F152607140\x00\x00\x00\x00\x00\x00", + b"F152607171\x00\x00\x00\x00\x00\x00", + b"F152607110\x00\x00\x00\x00\x00\x00", + b"F152607180\x00\x00\x00\x00\x00\x00", + ]) + assert results == {b"F1526-07-1": {b"10", b"40", b"71", b"80"}} + + results = get_platform_codes([ + b"\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00", + b"\x028646F4104100\x00\x00\x00\x008646G3304000\x00\x00\x00\x00", + ]) + assert results == {b"8646F-41-04": {b"100"}} + + # Short version has no part number + results = get_platform_codes([ + b"\x0235870000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00", + b"\x0235883000\x00\x00\x00\x00\x00\x00\x00\x00A0202000\x00\x00\x00\x00\x00\x00\x00\x00", + ]) + assert results == {b"58-70": {b"000"}, b"58-83": {b"000"}} + + results = get_platform_codes([ + b"F152607110\x00\x00\x00\x00\x00\x00", + b"F152607140\x00\x00\x00\x00\x00\x00", + b"\x028646F4104100\x00\x00\x00\x008646G5301200\x00\x00\x00\x00", + b"\x0235879000\x00\x00\x00\x00\x00\x00\x00\x00A4701000\x00\x00\x00\x00\x00\x00\x00\x00", + ]) + assert results == {b"F1526-07-1": {b"10", b"40"}, b"8646F-41-04": {b"100"}, b"58-79": {b"000"}} + + def test_fuzzy_excluded_platforms(self): + # Asserts a list of platforms that will not fuzzy fingerprint with platform codes due to them being shared. + platforms_with_shared_codes = set() + for platform, fw_by_addr in FW_VERSIONS.items(): + car_fw = [] + for ecu, fw_versions in fw_by_addr.items(): + ecu_name, addr, sub_addr = ecu + for fw in fw_versions: + car_fw.append(CarParams.CarFw(ecu=ecu_name, fwVersion=fw, address=addr, + subAddress=0 if sub_addr is None else sub_addr)) + + CP = CarParams(carFw=car_fw) + matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(build_fw_dict(CP.carFw), CP.carVin, FW_VERSIONS) + if len(matches) == 1: + assert list(matches)[0] == platform + else: + # If a platform has multiple matches, add it and its matches + platforms_with_shared_codes |= {str(platform), *matches} + + assert platforms_with_shared_codes == FUZZY_EXCLUDED_PLATFORMS, (len(platforms_with_shared_codes), len(FW_VERSIONS)) diff --git a/opendbc_repo/opendbc/car/toyota/toyotacan.py b/opendbc_repo/opendbc/car/toyota/toyotacan.py new file mode 100644 index 0000000000..bd406904e0 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/toyotacan.py @@ -0,0 +1,159 @@ +from opendbc.car.structs import CarParams + +SteerControlType = CarParams.SteerControlType + + +def create_steer_command(packer, steer, steer_req): + """Creates a CAN message for the Toyota Steer Command.""" + + values = { + "STEER_REQUEST": steer_req, + "STEER_TORQUE_CMD": steer, + "SET_ME_1": 1, + } + return packer.make_can_msg("STEERING_LKA", 0, values) + + +def create_lta_steer_command(packer, steer_control_type, steer_angle, steer_req, frame, torque_wind_down): + """Creates a CAN message for the Toyota LTA Steer Command.""" + + values = { + "COUNTER": frame + 128, + "SETME_X1": 1, # suspected LTA feature availability + # 1 for TSS 2.5 cars, 3 for TSS 2.0. Send based on whether we're using LTA for lateral control + "SETME_X3": 1 if steer_control_type == SteerControlType.angle else 3, + "PERCENTAGE": 100, + "TORQUE_WIND_DOWN": torque_wind_down, + "ANGLE": 0, + "STEER_ANGLE_CMD": steer_angle, + "STEER_REQUEST": steer_req, + "STEER_REQUEST_2": steer_req, + "CLEAR_HOLD_STEERING_ALERT": 0, + } + return packer.make_can_msg("STEERING_LTA", 0, values) + + +def create_lta_steer_command_2(packer, frame): + values = { + "COUNTER": frame + 128, + } + return packer.make_can_msg("STEERING_LTA_2", 0, values) + + +def create_accel_command(packer, accel, pcm_cancel, permit_braking, standstill_req, lead, acc_type, fcw_alert, distance): + # TODO: find the exact canceling bit that does not create a chime + values = { + "ACCEL_CMD": accel, + "ACC_TYPE": acc_type, + "DISTANCE": distance, + "MINI_CAR": lead, + "PERMIT_BRAKING": permit_braking, + "RELEASE_STANDSTILL": not standstill_req, + "CANCEL_REQ": pcm_cancel, + "ALLOW_LONG_PRESS": 2, # 1, + "ACC_CUT_IN": fcw_alert, # only shown when ACC enabled + } + return packer.make_can_msg("ACC_CONTROL", 0, values) + + +def create_pcs_commands(packer, accel, active, mass): + values1 = { + "COUNTER": 0, + "FORCE": round(min(accel, 0) * mass * 2), + "STATE": 3 if active else 0, + "BRAKE_STATUS": 0, + "PRECOLLISION_ACTIVE": 1 if active else 0, + } + msg1 = packer.make_can_msg("PRE_COLLISION", 0, values1) + + values2 = { + "DSS1GDRV": min(accel, 0), # accel + "PCSALM": 1 if active else 0, # goes high same time as PRECOLLISION_ACTIVE + "IBTRGR": 1 if active else 0, # unknown + "PBATRGR": 1 if active else 0, # noisy actuation bit? + "PREFILL": 1 if active else 0, # goes on and off before DSS1GDRV + "AVSTRGR": 1 if active else 0, + } + msg2 = packer.make_can_msg("PRE_COLLISION_2", 0, values2) + + return [msg1, msg2] + + +def create_acc_cancel_command(packer): + values = { + "GAS_RELEASED": 0, + "CRUISE_ACTIVE": 0, + "ACC_BRAKING": 0, + "ACCEL_NET": 0, + "CRUISE_STATE": 0, + "CANCEL_REQ": 1, + } + return packer.make_can_msg("PCM_CRUISE", 0, values) + + +def create_fcw_command(packer, fcw): + values = { + "PCS_INDICATOR": 1, # PCS turned off + "FCW": fcw, + "SET_ME_X20": 0x20, + "SET_ME_X10": 0x10, + "PCS_OFF": 1, + "PCS_SENSITIVITY": 0, + } + return packer.make_can_msg("PCS_HUD", 0, values) + + +def create_ui_command(packer, steer, chime, left_line, right_line, left_lane_depart, right_lane_depart, enabled, stock_lkas_hud): + values = { + "TWO_BEEPS": chime, + "LDA_ALERT": steer, + "RIGHT_LINE": 3 if right_lane_depart else 1 if right_line else 2, + "LEFT_LINE": 3 if left_lane_depart else 1 if left_line else 2, + "BARRIERS": 1 if enabled else 0, + + # static signals + "SET_ME_X02": 2, + "SET_ME_X01": 1, + "LKAS_STATUS": 1, + "REPEATED_BEEPS": 0, + "LANE_SWAY_FLD": 7, + "LANE_SWAY_BUZZER": 0, + "LANE_SWAY_WARNING": 0, + "LDA_FRONT_CAMERA_BLOCKED": 0, + "TAKE_CONTROL": 0, + "LANE_SWAY_SENSITIVITY": 2, + "LANE_SWAY_TOGGLE": 1, + "LDA_ON_MESSAGE": 0, + "LDA_MESSAGES": 0, + "LDA_SA_TOGGLE": 1, + "LDA_SENSITIVITY": 2, + "LDA_UNAVAILABLE": 0, + "LDA_MALFUNCTION": 0, + "LDA_UNAVAILABLE_QUIET": 0, + "ADJUSTING_CAMERA": 0, + "LDW_EXIST": 1, + } + + # lane sway functionality + # not all cars have LKAS_HUD — update with camera values if available + if len(stock_lkas_hud): + values.update({s: stock_lkas_hud[s] for s in [ + "LANE_SWAY_FLD", + "LANE_SWAY_BUZZER", + "LANE_SWAY_WARNING", + "LANE_SWAY_SENSITIVITY", + "LANE_SWAY_TOGGLE", + ]}) + + return packer.make_can_msg("LKAS_HUD", 0, values) + + +def toyota_checksum(address: int, sig, d: bytearray) -> int: + s = len(d) + addr = address + while addr: + s += addr & 0xFF + addr >>= 8 + for i in range(len(d) - 1): + s += d[i] + return s & 0xFF diff --git a/opendbc_repo/opendbc/car/toyota/values.py b/opendbc_repo/opendbc/car/toyota/values.py new file mode 100644 index 0000000000..11b0b15f47 --- /dev/null +++ b/opendbc_repo/opendbc/car/toyota/values.py @@ -0,0 +1,632 @@ +import re +from collections import defaultdict +from dataclasses import dataclass, field +from enum import Enum, IntFlag + +from opendbc.car import Bus, CarSpecs, PlatformConfig, Platforms, AngleSteeringLimits +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.structs import CarParams +from opendbc.car.docs_definitions import CarFootnote, CarDocs, Column, CarParts, CarHarness +from opendbc.car.fw_query_definitions import FwQueryConfig, Request, StdQueries + +Ecu = CarParams.Ecu +MIN_ACC_SPEED = 19. * CV.MPH_TO_MS +PEDAL_TRANSITION = 10. * CV.MPH_TO_MS + + +class CarControllerParams: + STEER_STEP = 1 + STEER_MAX = 1500 + STEER_ERROR_MAX = 350 # max delta between torque cmd and torque motor + + # Lane Tracing Assist (LTA) control limits + ANGLE_LIMITS: AngleSteeringLimits = AngleSteeringLimits( + # EPS ignores commands above this angle and causes PCS to fault + 94.9461, # deg + # Assuming a steering ratio of 13.7: + # Limit to ~2.0 m/s^3 up (7.5 deg/s), ~3.5 m/s^3 down (13 deg/s) at 75 mph + # Worst case, the low speed limits will allow ~4.0 m/s^3 up (15 deg/s) and ~4.9 m/s^3 down (18 deg/s) at 75 mph, + # however the EPS has its own internal limits at all speeds which are less than that: + # Observed internal torque rate limit on TSS 2.5 Camry and RAV4 is ~1500 units/sec up and down when using LTA + ([5, 25], [0.3, 0.15]), + ([5, 25], [0.36, 0.26]), + ) + + MAX_LTA_DRIVER_TORQUE_ALLOWANCE = 150 # slightly above steering pressed allows some resistance when changing lanes + + def __init__(self, CP): + if CP.flags & ToyotaFlags.RAISED_ACCEL_LIMIT: + self.ACCEL_MAX = 2.0 + else: + self.ACCEL_MAX = 1.5 # m/s2, lower than allowed 2.0 m/s^2 for tuning reasons + self.ACCEL_MIN = -3.5 # m/s2 + + if CP.lateralTuning.which() == 'torque': + self.STEER_DELTA_UP = 15 # 1.0s time to peak torque + self.STEER_DELTA_DOWN = 25 # always lower than 45 otherwise the Rav4 faults (Prius seems ok with 50) + else: + self.STEER_DELTA_UP = 10 # 1.5s time to peak torque + self.STEER_DELTA_DOWN = 25 # always lower than 45 otherwise the Rav4 faults (Prius seems ok with 50) + + +class ToyotaSafetyFlags(IntFlag): + # first byte is for EPS scaling factor + ALT_BRAKE = (1 << 8) + STOCK_LONGITUDINAL = (2 << 8) + LTA = (4 << 8) + SECOC = (8 << 8) + + +class ToyotaFlags(IntFlag): + # Detected flags + HYBRID = 1 + DISABLE_RADAR = 4 + + # Static flags + TSS2 = 8 + NO_DSU = 16 + UNSUPPORTED_DSU = 32 + RADAR_ACC = 64 + # these cars use the Lane Tracing Assist (LTA) message for lateral control + ANGLE_CONTROL = 128 + NO_STOP_TIMER = 256 + # these cars are speculated to allow stop and go when the DSU is unplugged + SNG_WITHOUT_DSU = 512 + # these cars can utilize 2.0 m/s^2 + RAISED_ACCEL_LIMIT = 1024 + SECOC = 2048 + +class Footnote(Enum): + CAMRY = CarFootnote( + "openpilot operates above 28mph for Camry 4CYL L, 4CYL LE and 4CYL SE which don't have Full-Speed Range Dynamic Radar Cruise Control.", + Column.FSR_LONGITUDINAL) + + +@dataclass +class ToyotaCarDocs(CarDocs): + package: str = "All" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.toyota_a])) + +def dbc_dict(pt, radar): + return {Bus.pt: pt, Bus.radar: radar} + +@dataclass +class ToyotaTSS2PlatformConfig(PlatformConfig): + dbc_dict: dict = field(default_factory=lambda: dbc_dict('toyota_nodsu_pt_generated', 'toyota_tss2_adas')) + + def init(self): + self.flags |= ToyotaFlags.TSS2 | ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.NO_DSU + + if self.flags & ToyotaFlags.RADAR_ACC: + self.dbc_dict = {Bus.pt: 'toyota_nodsu_pt_generated'} + +@dataclass +class ToyotaSecOCPlatformConfig(PlatformConfig): + dbc_dict: dict = field(default_factory=lambda: dbc_dict('toyota_secoc_pt_generated', 'toyota_tss2_adas')) + + def init(self): + # don't expose car docs until SecOC cars can be suppressed from the comma website + self.car_docs = [] + + self.flags |= ToyotaFlags.TSS2 | ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.NO_DSU | ToyotaFlags.SECOC + + if self.flags & ToyotaFlags.RADAR_ACC: + self.dbc_dict = {Bus.pt: 'toyota_secoc_pt_generated'} + + +class CAR(Platforms): + # Toyota + TOYOTA_ALPHARD_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota Alphard 2019-20"), + ToyotaCarDocs("Toyota Alphard Hybrid 2021"), + ], + CarSpecs(mass=4305. * CV.LB_TO_KG, wheelbase=3.0, steerRatio=14.2, tireStiffnessFactor=0.444), + ) + TOYOTA_AVALON = PlatformConfig( + [ + ToyotaCarDocs("Toyota Avalon 2016", "Toyota Safety Sense P"), + ToyotaCarDocs("Toyota Avalon 2017-18"), + ], + CarSpecs(mass=3505. * CV.LB_TO_KG, wheelbase=2.82, steerRatio=14.8, tireStiffnessFactor=0.7983), + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + ) + TOYOTA_AVALON_2019 = PlatformConfig( + [ + ToyotaCarDocs("Toyota Avalon 2019-21"), + ToyotaCarDocs("Toyota Avalon Hybrid 2019-21"), + ], + TOYOTA_AVALON.specs, + dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), + ) + TOYOTA_AVALON_TSS2 = ToyotaTSS2PlatformConfig( # TSS 2.5 + [ + ToyotaCarDocs("Toyota Avalon 2022"), + ToyotaCarDocs("Toyota Avalon Hybrid 2022"), + ], + TOYOTA_AVALON.specs, + ) + TOYOTA_CAMRY = PlatformConfig( + [ + ToyotaCarDocs("Toyota Camry 2018-20", video="https://www.youtube.com/watch?v=fkcjviZY9CM", footnotes=[Footnote.CAMRY]), + ToyotaCarDocs("Toyota Camry Hybrid 2018-20", video="https://www.youtube.com/watch?v=Q2DYY0AWKgk"), + ], + CarSpecs(mass=3400. * CV.LB_TO_KG, wheelbase=2.82448, steerRatio=13.7, tireStiffnessFactor=0.7933), + dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.NO_DSU, + ) + TOYOTA_CAMRY_TSS2 = ToyotaTSS2PlatformConfig( # TSS 2.5 + [ + ToyotaCarDocs("Toyota Camry 2021-24", footnotes=[Footnote.CAMRY]), + ToyotaCarDocs("Toyota Camry Hybrid 2021-24"), + ], + TOYOTA_CAMRY.specs, + ) + TOYOTA_CHR = PlatformConfig( + [ + ToyotaCarDocs("Toyota C-HR 2017-20"), + ToyotaCarDocs("Toyota C-HR Hybrid 2017-20"), + ], + CarSpecs(mass=3300. * CV.LB_TO_KG, wheelbase=2.63906, steerRatio=13.6, tireStiffnessFactor=0.7933), + dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.NO_DSU, + ) + TOYOTA_CHR_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota C-HR 2021"), + ToyotaCarDocs("Toyota C-HR Hybrid 2021-22"), + ], + TOYOTA_CHR.specs, + flags=ToyotaFlags.RADAR_ACC, + ) + TOYOTA_COROLLA = PlatformConfig( + [ToyotaCarDocs("Toyota Corolla 2017-19")], + CarSpecs(mass=2860. * CV.LB_TO_KG, wheelbase=2.7, steerRatio=18.27, tireStiffnessFactor=0.444), + dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), + ) + # LSS2 Lexus UX Hybrid is same as a TSS2 Corolla Hybrid + TOYOTA_COROLLA_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota Corolla 2020-22", video="https://www.youtube.com/watch?v=_66pXk0CBYA"), + ToyotaCarDocs("Toyota Corolla Cross (Non-US only) 2020-23", min_enable_speed=7.5), + ToyotaCarDocs("Toyota Corolla Hatchback 2019-22", video="https://www.youtube.com/watch?v=_66pXk0CBYA"), + # Hybrid platforms + ToyotaCarDocs("Toyota Corolla Hybrid 2020-22"), + ToyotaCarDocs("Toyota Corolla Hybrid (South America only) 2020-23", min_enable_speed=7.5), + ToyotaCarDocs("Toyota Corolla Cross Hybrid (Non-US only) 2020-22", min_enable_speed=7.5), + ToyotaCarDocs("Lexus UX Hybrid 2019-24"), + ], + CarSpecs(mass=3060. * CV.LB_TO_KG, wheelbase=2.67, steerRatio=13.9, tireStiffnessFactor=0.444), + ) + TOYOTA_HIGHLANDER = PlatformConfig( + [ + ToyotaCarDocs("Toyota Highlander 2017-19", video="https://www.youtube.com/watch?v=0wS0wXSLzoo"), + ToyotaCarDocs("Toyota Highlander Hybrid 2017-19"), + ], + CarSpecs(mass=4516. * CV.LB_TO_KG, wheelbase=2.8194, steerRatio=16.0, tireStiffnessFactor=0.8), + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.SNG_WITHOUT_DSU, + ) + TOYOTA_HIGHLANDER_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota Highlander 2020-23"), + ToyotaCarDocs("Toyota Highlander Hybrid 2020-23"), + ], + TOYOTA_HIGHLANDER.specs, + ) + TOYOTA_PRIUS = PlatformConfig( + [ + ToyotaCarDocs("Toyota Prius 2016", "Toyota Safety Sense P", video="https://www.youtube.com/watch?v=8zopPJI8XQ0"), + ToyotaCarDocs("Toyota Prius 2017-20", video="https://www.youtube.com/watch?v=8zopPJI8XQ0"), + ToyotaCarDocs("Toyota Prius Prime 2017-20", video="https://www.youtube.com/watch?v=8zopPJI8XQ0"), + ], + CarSpecs(mass=3045. * CV.LB_TO_KG, wheelbase=2.7, steerRatio=15.74, tireStiffnessFactor=0.6371), + dbc_dict('toyota_nodsu_pt_generated', 'toyota_adas'), + ) + TOYOTA_PRIUS_V = PlatformConfig( + [ToyotaCarDocs("Toyota Prius v 2017", "Toyota Safety Sense P", min_enable_speed=MIN_ACC_SPEED)], + CarSpecs(mass=3340. * CV.LB_TO_KG, wheelbase=2.78, steerRatio=17.4, tireStiffnessFactor=0.5533), + dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.SNG_WITHOUT_DSU, + ) + TOYOTA_PRIUS_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota Prius 2021-22", video="https://www.youtube.com/watch?v=J58TvCpUd4U"), + ToyotaCarDocs("Toyota Prius Prime 2021-22", video="https://www.youtube.com/watch?v=J58TvCpUd4U"), + ], + CarSpecs(mass=3115. * CV.LB_TO_KG, wheelbase=2.70002, steerRatio=13.4, tireStiffnessFactor=0.6371), + ) + TOYOTA_RAV4 = PlatformConfig( + [ + ToyotaCarDocs("Toyota RAV4 2016", "Toyota Safety Sense P"), + ToyotaCarDocs("Toyota RAV4 2017-18") + ], + CarSpecs(mass=3650. * CV.LB_TO_KG, wheelbase=2.65, steerRatio=16.88, tireStiffnessFactor=0.5533), + dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), + ) + TOYOTA_RAV4H = PlatformConfig( + [ + ToyotaCarDocs("Toyota RAV4 Hybrid 2016", "Toyota Safety Sense P", video="https://youtu.be/LhT5VzJVfNI?t=26"), + ToyotaCarDocs("Toyota RAV4 Hybrid 2017-18", video="https://youtu.be/LhT5VzJVfNI?t=26") + ], + TOYOTA_RAV4.specs, + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + # Note that the ICE RAV4 does not respect positive acceleration commands under 19 mph + flags=ToyotaFlags.NO_STOP_TIMER | ToyotaFlags.SNG_WITHOUT_DSU, + ) + TOYOTA_RAV4_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota RAV4 2019-21", video="https://www.youtube.com/watch?v=wJxjDd42gGA"), + ToyotaCarDocs("Toyota RAV4 Hybrid 2019-21"), + ], + CarSpecs(mass=3585. * CV.LB_TO_KG, wheelbase=2.68986, steerRatio=14.3, tireStiffnessFactor=0.7933), + ) + TOYOTA_RAV4_TSS2_2022 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota RAV4 2022"), + ToyotaCarDocs("Toyota RAV4 Hybrid 2022", video="https://youtu.be/U0nH9cnrFB0"), + ], + TOYOTA_RAV4_TSS2.specs, + flags=ToyotaFlags.RADAR_ACC, + ) + TOYOTA_RAV4_TSS2_2023 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Toyota RAV4 2023-25"), + ToyotaCarDocs("Toyota RAV4 Hybrid 2023-25", video="https://youtu.be/4eIsEq4L4Ng"), + ], + TOYOTA_RAV4_TSS2.specs, + flags=ToyotaFlags.RADAR_ACC | ToyotaFlags.ANGLE_CONTROL, + ) + TOYOTA_RAV4_PRIME = ToyotaSecOCPlatformConfig( + [ToyotaCarDocs("Toyota RAV4 Prime 2021-23", min_enable_speed=MIN_ACC_SPEED)], + CarSpecs(mass=4372. * CV.LB_TO_KG, wheelbase=2.68, steerRatio=16.88, tireStiffnessFactor=0.5533), + ) + TOYOTA_YARIS = ToyotaSecOCPlatformConfig( + [ToyotaCarDocs("Toyota Yaris 2023 (Non-US only)", min_enable_speed=MIN_ACC_SPEED)], + CarSpecs(mass=1170, wheelbase=2.55, steerRatio=14.80, tireStiffnessFactor=0.5533), + flags=ToyotaFlags.RADAR_ACC, + ) + TOYOTA_MIRAI = ToyotaTSS2PlatformConfig( # TSS 2.5 + [ToyotaCarDocs("Toyota Mirai 2021")], + CarSpecs(mass=4300. * CV.LB_TO_KG, wheelbase=2.91, steerRatio=14.8, tireStiffnessFactor=0.8), + ) + TOYOTA_SIENNA = PlatformConfig( + [ToyotaCarDocs("Toyota Sienna 2018-20", video="https://www.youtube.com/watch?v=q1UPOo4Sh68", min_enable_speed=MIN_ACC_SPEED)], + CarSpecs(mass=4590. * CV.LB_TO_KG, wheelbase=3.03, steerRatio=15.5, tireStiffnessFactor=0.444), + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.NO_STOP_TIMER, + ) + TOYOTA_SIENNA_4TH_GEN = ToyotaSecOCPlatformConfig( + [ToyotaCarDocs("Toyota Sienna 2021-23", min_enable_speed=MIN_ACC_SPEED)], + CarSpecs(mass=4625. * CV.LB_TO_KG, wheelbase=3.06, steerRatio=17.8, tireStiffnessFactor=0.444), + ) + + # Lexus + LEXUS_CTH = PlatformConfig( + [ToyotaCarDocs("Lexus CT Hybrid 2017-18", "Lexus Safety System+")], + CarSpecs(mass=3108. * CV.LB_TO_KG, wheelbase=2.6, steerRatio=18.6, tireStiffnessFactor=0.517), + dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), + ) + LEXUS_ES = PlatformConfig( + [ + ToyotaCarDocs("Lexus ES 2017-18"), + ToyotaCarDocs("Lexus ES Hybrid 2017-18"), + ], + CarSpecs(mass=3677. * CV.LB_TO_KG, wheelbase=2.8702, steerRatio=16.0, tireStiffnessFactor=0.444), + dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), + ) + LEXUS_ES_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Lexus ES 2019-24"), + ToyotaCarDocs("Lexus ES Hybrid 2019-25", video="https://youtu.be/BZ29osRVJeg?t=12"), + ], + LEXUS_ES.specs, + ) + LEXUS_IS = PlatformConfig( + [ToyotaCarDocs("Lexus IS 2017-19")], + CarSpecs(mass=3736.8 * CV.LB_TO_KG, wheelbase=2.79908, steerRatio=13.3, tireStiffnessFactor=0.444), + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.UNSUPPORTED_DSU, + ) + LEXUS_IS_TSS2 = ToyotaTSS2PlatformConfig( + [ToyotaCarDocs("Lexus IS 2022-23")], + LEXUS_IS.specs, + ) + LEXUS_NX = PlatformConfig( + [ + ToyotaCarDocs("Lexus NX 2018-19"), + ToyotaCarDocs("Lexus NX Hybrid 2018-19"), + ], + CarSpecs(mass=4070. * CV.LB_TO_KG, wheelbase=2.66, steerRatio=14.7, tireStiffnessFactor=0.444), + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + ) + LEXUS_NX_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Lexus NX 2020-21"), + ToyotaCarDocs("Lexus NX Hybrid 2020-21"), + ], + LEXUS_NX.specs, + ) + LEXUS_LC_TSS2 = ToyotaTSS2PlatformConfig( + [ToyotaCarDocs("Lexus LC 2024")], + CarSpecs(mass=4500. * CV.LB_TO_KG, wheelbase=2.87, steerRatio=13.0, tireStiffnessFactor=0.444), + ) + LEXUS_RC = PlatformConfig( + [ToyotaCarDocs("Lexus RC 2018-20")], + LEXUS_IS.specs, + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.UNSUPPORTED_DSU, + ) + LEXUS_RX = PlatformConfig( + [ + ToyotaCarDocs("Lexus RX 2016", "Lexus Safety System+"), + ToyotaCarDocs("Lexus RX 2017-19"), + # Hybrid platforms + ToyotaCarDocs("Lexus RX Hybrid 2016", "Lexus Safety System+"), + ToyotaCarDocs("Lexus RX Hybrid 2017-19"), + ], + CarSpecs(mass=4481. * CV.LB_TO_KG, wheelbase=2.79, steerRatio=16., tireStiffnessFactor=0.5533), + dbc_dict('toyota_tnga_k_pt_generated', 'toyota_adas'), + ) + LEXUS_RX_TSS2 = ToyotaTSS2PlatformConfig( + [ + ToyotaCarDocs("Lexus RX 2020-22"), + ToyotaCarDocs("Lexus RX Hybrid 2020-22"), + ], + LEXUS_RX.specs, + ) + LEXUS_GS_F = PlatformConfig( + [ToyotaCarDocs("Lexus GS F 2016")], + CarSpecs(mass=4034. * CV.LB_TO_KG, wheelbase=2.84988, steerRatio=13.3, tireStiffnessFactor=0.444), + dbc_dict('toyota_new_mc_pt_generated', 'toyota_adas'), + flags=ToyotaFlags.UNSUPPORTED_DSU, + ) + + +# (addr, cars, bus, 1/freq*100, vl) +STATIC_DSU_MSGS = [ + (0x128, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON), \ + 1, 3, b'\xf4\x01\x90\x83\x00\x37'), + (0x128, (CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES), 1, 3, b'\x03\x00\x20\x00\x00\x52'), + (0x141, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, + CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 1, 2, b'\x00\x00\x00\x46'), + (0x160, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, + CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 1, 7, b'\x00\x00\x08\x12\x01\x31\x9c\x51'), + (0x161, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON, CAR.TOYOTA_PRIUS_V), + 1, 7, b'\x00\x1e\x00\x00\x00\x80\x07'), + (0X161, (CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES), 1, 7, b'\x00\x1e\x00\xd4\x00\x00\x5b'), + (0x283, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, + CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 0, 3, b'\x00\x00\x00\x00\x00\x00\x8c'), + (0x2E6, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX), 0, 3, b'\xff\xf8\x00\x08\x7f\xe0\x00\x4e'), + (0x2E7, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX), 0, 3, b'\xa8\x9c\x31\x9c\x00\x00\x00\x02'), + (0x33E, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX), 0, 20, b'\x0f\xff\x26\x40\x00\x1f\x00'), + (0x344, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, + CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 0, 5, b'\x00\x00\x01\x00\x00\x00\x00\x50'), + (0x365, (CAR.TOYOTA_PRIUS, CAR.LEXUS_NX, CAR.TOYOTA_HIGHLANDER), 0, 20, b'\x00\x00\x00\x80\x03\x00\x08'), + (0x365, (CAR.TOYOTA_RAV4, CAR.TOYOTA_RAV4H, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.LEXUS_RX, + CAR.TOYOTA_PRIUS_V), 0, 20, b'\x00\x00\x00\x80\xfc\x00\x08'), + (0x366, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_HIGHLANDER), 0, 20, b'\x00\x00\x4d\x82\x40\x02\x00'), + (0x366, (CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_AVALON, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), + 0, 20, b'\x00\x72\x07\xff\x09\xfe\x00'), + (0x470, (CAR.TOYOTA_PRIUS, CAR.LEXUS_RX), 1, 100, b'\x00\x00\x02\x7a'), + (0x470, (CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_RAV4H, CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 1, 100, b'\x00\x00\x01\x79'), + (0x4CB, (CAR.TOYOTA_PRIUS, CAR.TOYOTA_RAV4H, CAR.LEXUS_RX, CAR.LEXUS_NX, CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_AVALON, + CAR.TOYOTA_SIENNA, CAR.LEXUS_CTH, CAR.LEXUS_ES, CAR.TOYOTA_PRIUS_V), 0, 100, b'\x0c\x00\x00\x00\x00\x00\x00\x00'), +] + + +def get_platform_codes(fw_versions: list[bytes]) -> dict[bytes, set[bytes]]: + # Returns sub versions in a dict so comparisons can be made within part-platform-major_version combos + codes = defaultdict(set) # Optional[part]-platform-major_version: set of sub_version + for fw in fw_versions: + # FW versions returned from UDS queries can return multiple fields/chunks of data (different ECU calibrations, different data?) + # and are prefixed with a byte that describes how many chunks of data there are. + # But FW returned from KWP requires querying of each sub-data id and does not have a length prefix. + + length_code = 1 + length_code_match = FW_LEN_CODE.search(fw) + if length_code_match is not None: + length_code = length_code_match.group()[0] + fw = fw[1:] + + # fw length should be multiple of 16 bytes (per chunk, even if no length code), skip parsing if unexpected length + if length_code * FW_CHUNK_LEN != len(fw): + continue + + chunks = [fw[FW_CHUNK_LEN * i:FW_CHUNK_LEN * i + FW_CHUNK_LEN].strip(b'\x00 ') for i in range(length_code)] + + # only first is considered for now since second is commonly shared (TODO: understand that) + first_chunk = chunks[0] + if len(first_chunk) == 8: + # TODO: no part number, but some short chunks have it in subsequent chunks + fw_match = SHORT_FW_PATTERN.search(first_chunk) + if fw_match is not None: + platform, major_version, sub_version = fw_match.groups() + codes[b'-'.join((platform, major_version))].add(sub_version) + + elif len(first_chunk) == 10: + fw_match = MEDIUM_FW_PATTERN.search(first_chunk) + if fw_match is not None: + part, platform, major_version, sub_version = fw_match.groups() + codes[b'-'.join((part, platform, major_version))].add(sub_version) + + elif len(first_chunk) == 12: + fw_match = LONG_FW_PATTERN.search(first_chunk) + if fw_match is not None: + part, platform, major_version, sub_version = fw_match.groups() + codes[b'-'.join((part, platform, major_version))].add(sub_version) + + return dict(codes) + + +def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: + candidates = set() + + for candidate, fws in offline_fw_versions.items(): + # Keep track of ECUs which pass all checks (platform codes, within sub-version range) + valid_found_ecus = set() + valid_expected_ecus = {ecu[1:] for ecu in fws if ecu[0] in PLATFORM_CODE_ECUS} + for ecu, expected_versions in fws.items(): + addr = ecu[1:] + # Only check ECUs expected to have platform codes + if ecu[0] not in PLATFORM_CODE_ECUS: + continue + + # Expected platform codes & versions + expected_platform_codes = get_platform_codes(expected_versions) + + # Found platform codes & versions + found_platform_codes = get_platform_codes(live_fw_versions.get(addr, set())) + + # Check part number + platform code + major version matches for any found versions + # Platform codes and major versions change for different physical parts, generation, API, etc. + # Sub-versions are incremented for minor recalls, do not need to be checked. + if not any(found_platform_code in expected_platform_codes for found_platform_code in found_platform_codes): + break + + valid_found_ecus.add(addr) + + # If all live ECUs pass all checks for candidate, add it as a match + if valid_expected_ecus.issubset(valid_found_ecus): + candidates.add(candidate) + + return {str(c) for c in (candidates - FUZZY_EXCLUDED_PLATFORMS)} + + +# Regex patterns for parsing more general platform-specific identifiers from FW versions. +# - Part number: Toyota part number (usually last character needs to be ignored to find a match). +# Each ECU address has just one part number. +# - Platform: usually multiple codes per an openpilot platform, however this is the least variable and +# is usually shared across ECUs and model years signifying this describes something about the specific platform. +# This describes more generational changes (TSS-P vs TSS2), or manufacture region. +# - Major version: second least variable part of the FW version. Seen splitting cars by model year/API such as +# RAV4 2022/2023 and Avalon. Used to differentiate cars where API has changed slightly, but is not a generational change. +# It is important to note that these aren't always consecutive, for example: +# Avalon 2016-18's fwdCamera has these major versions: 01, 03 while 2019 has: 02 +# - Sub version: exclusive to major version, but shared with other cars. Should only be used for further filtering. +# Seen bumped in TSB FW updates, and describes other minor differences. +SHORT_FW_PATTERN = re.compile(b'[A-Z0-9](?P[A-Z0-9]{2})(?P[A-Z0-9]{2})(?P[A-Z0-9]{3})') +MEDIUM_FW_PATTERN = re.compile(b'(?P[A-Z0-9]{5})(?P[A-Z0-9]{2})(?P[A-Z0-9]{1})(?P[A-Z0-9]{2})') +LONG_FW_PATTERN = re.compile(b'(?P[A-Z0-9]{5})(?P[A-Z0-9]{2})(?P[A-Z0-9]{2})(?P[A-Z0-9]{3})') +FW_LEN_CODE = re.compile(b'^[\x01-\x03]') # highest seen is 3 chunks, 16 bytes each +FW_CHUNK_LEN = 16 + +# List of ECUs that are most unique across openpilot platforms +# - fwdCamera: describes actual features related to ADAS. For example, on the Avalon it describes +# when TSS-P became standard, whether the car supports stop and go, and whether it's TSS2. +# On the RAV4, it describes the move to the radar doing ACC, and the use of LTA for lane keeping. +# Note that the platform codes & major versions do not describe features in plain text, only with +# matching against other seen FW versions in the database they can describe features. +# - fwdRadar: sanity check against fwdCamera, commonly shares a platform code. +# For example the RAV4 2022's new radar architecture is shown for both with platform code. +# - abs: differentiates hybrid/ICE on most cars (Corolla TSS2 is an exception, not used due to hybrid platform combination) +# - eps: describes lateral API changes for the EPS, such as using LTA for lane keeping and rejecting LKA messages +PLATFORM_CODE_ECUS = (Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps) + +# These platforms have at least one platform code for all ECUs shared with another platform. +FUZZY_EXCLUDED_PLATFORMS: set[CAR] = set() + +# Some ECUs that use KWP2000 have their FW versions on non-standard data identifiers. +# Toyota diagnostic software first gets the supported data ids, then queries them one by one. +# For example, sends: 0x1a8800, receives: 0x1a8800010203, queries: 0x1a8801, 0x1a8802, 0x1a8803 +TOYOTA_VERSION_REQUEST_KWP = b'\x1a\x88\x01' +TOYOTA_VERSION_RESPONSE_KWP = b'\x5a\x88\x01' + +FW_QUERY_CONFIG = FwQueryConfig( + # TODO: look at data to whitelist new ECUs effectively + requests=[ + Request( + [StdQueries.SHORT_TESTER_PRESENT_REQUEST, TOYOTA_VERSION_REQUEST_KWP], + [StdQueries.SHORT_TESTER_PRESENT_RESPONSE, TOYOTA_VERSION_RESPONSE_KWP], + whitelist_ecus=[Ecu.fwdCamera, Ecu.fwdRadar, Ecu.dsu, Ecu.abs, Ecu.eps, Ecu.srs, Ecu.transmission, Ecu.hvac], + bus=0, + ), + Request( + [StdQueries.SHORT_TESTER_PRESENT_REQUEST, StdQueries.OBD_VERSION_REQUEST], + [StdQueries.SHORT_TESTER_PRESENT_RESPONSE, StdQueries.OBD_VERSION_RESPONSE], + whitelist_ecus=[Ecu.engine, Ecu.hybrid, Ecu.srs, Ecu.transmission, Ecu.hvac], + bus=0, + ), + Request( + [StdQueries.TESTER_PRESENT_REQUEST, StdQueries.DEFAULT_DIAGNOSTIC_REQUEST, StdQueries.EXTENDED_DIAGNOSTIC_REQUEST, StdQueries.UDS_VERSION_REQUEST], + [StdQueries.TESTER_PRESENT_RESPONSE, StdQueries.DEFAULT_DIAGNOSTIC_RESPONSE, StdQueries.EXTENDED_DIAGNOSTIC_RESPONSE, StdQueries.UDS_VERSION_RESPONSE], + whitelist_ecus=[Ecu.engine, Ecu.fwdRadar, Ecu.fwdCamera, Ecu.abs, Ecu.eps, + Ecu.hybrid, Ecu.srs, Ecu.transmission, Ecu.hvac], + bus=0, + ), + ], + non_essential_ecus={ + # FIXME: On some models, abs can sometimes be missing + Ecu.abs: [CAR.TOYOTA_RAV4, CAR.TOYOTA_COROLLA, CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_SIENNA, CAR.LEXUS_IS, CAR.TOYOTA_ALPHARD_TSS2], + # On some models, the engine can show on two different addresses + Ecu.engine: [CAR.TOYOTA_HIGHLANDER, CAR.TOYOTA_CAMRY, CAR.TOYOTA_COROLLA_TSS2, CAR.TOYOTA_CHR, CAR.TOYOTA_CHR_TSS2, CAR.LEXUS_IS, + CAR.LEXUS_IS_TSS2, CAR.LEXUS_RC, CAR.LEXUS_NX, CAR.LEXUS_NX_TSS2, CAR.LEXUS_RX, CAR.LEXUS_RX_TSS2], + }, + extra_ecus=[ + # All known ECUs on a late-model Toyota vehicle not queried here: + # Responds to UDS: + # - Combination Meter (0x7c0) + # - HV Battery (0x713, 0x747) + # - Motor Generator (0x716, 0x724) + # - 2nd ABS "Brake/EPB" (0x730) + # - Electronic Parking Brake ((0x750, 0x2c)) + # - Telematics ((0x750, 0xc7)) + # Responds to KWP (0x1a8801): + # - Steering Angle Sensor (0x7b3) + # - EPS/EMPS (0x7a0, 0x7a1) + # - 2nd SRS Airbag (0x784) + # - Central Gateway ((0x750, 0x5f)) + # - Telematics ((0x750, 0xc7)) + # Responds to KWP (0x1a8881): + # - Body Control Module ((0x750, 0x40)) + # - Telematics ((0x750, 0xc7)) + + # Hybrid control computer can be on 0x7e2 (KWP) or 0x7d2 (UDS) depending on platform + (Ecu.hybrid, 0x7e2, None), # Hybrid Control Assembly & Computer + (Ecu.hybrid, 0x7d2, None), # Hybrid Control Assembly & Computer + (Ecu.srs, 0x780, None), # SRS Airbag + # Transmission is combined with engine on some platforms, such as TSS-P RAV4 + (Ecu.transmission, 0x701, None), + # A few platforms have a tester present response on this address, add to log + (Ecu.transmission, 0x7e1, None), + (Ecu.hvac, 0x7c4, None), + ], + match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, +) + + +STEER_THRESHOLD = 100 + +# These cars have non-standard EPS torque scale factors. All others are 73 +EPS_SCALE = defaultdict(lambda: 73, + {CAR.TOYOTA_PRIUS: 66, CAR.TOYOTA_COROLLA: 88, CAR.LEXUS_IS: 77, CAR.LEXUS_RC: 77, CAR.LEXUS_CTH: 100, CAR.TOYOTA_PRIUS_V: 100}) + +# Toyota/Lexus Safety Sense 2.0 and 2.5 +TSS2_CAR = CAR.with_flags(ToyotaFlags.TSS2) + +NO_DSU_CAR = CAR.with_flags(ToyotaFlags.NO_DSU) + +# the DSU uses the AEB message for longitudinal on these cars +UNSUPPORTED_DSU_CAR = CAR.with_flags(ToyotaFlags.UNSUPPORTED_DSU) + +# these cars have a radar which sends ACC messages instead of the camera +RADAR_ACC_CAR = CAR.with_flags(ToyotaFlags.RADAR_ACC) + +ANGLE_CONTROL_CAR = CAR.with_flags(ToyotaFlags.ANGLE_CONTROL) + +SECOC_CAR = CAR.with_flags(ToyotaFlags.SECOC) + +# no resume button press required +NO_STOP_TIMER_CAR = CAR.with_flags(ToyotaFlags.NO_STOP_TIMER) + +DBC = CAR.create_dbc_map() + + +if __name__ == "__main__": + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) diff --git a/opendbc_repo/opendbc/car/uds.py b/opendbc_repo/opendbc/car/uds.py new file mode 100644 index 0000000000..49f677f69a --- /dev/null +++ b/opendbc_repo/opendbc/car/uds.py @@ -0,0 +1,941 @@ +import time +import struct +from collections import deque +from typing import NamedTuple, cast +from collections.abc import Callable, Generator +from enum import IntEnum +from functools import partial + +from opendbc.car.carlog import carlog + + +class SERVICE_TYPE(IntEnum): + DIAGNOSTIC_SESSION_CONTROL = 0x10 + ECU_RESET = 0x11 + SECURITY_ACCESS = 0x27 + COMMUNICATION_CONTROL = 0x28 + TESTER_PRESENT = 0x3E + ACCESS_TIMING_PARAMETER = 0x83 + SECURED_DATA_TRANSMISSION = 0x84 + CONTROL_DTC_SETTING = 0x85 + RESPONSE_ON_EVENT = 0x86 + LINK_CONTROL = 0x87 + READ_DATA_BY_IDENTIFIER = 0x22 + READ_MEMORY_BY_ADDRESS = 0x23 + READ_SCALING_DATA_BY_IDENTIFIER = 0x24 + READ_DATA_BY_PERIODIC_IDENTIFIER = 0x2A + DYNAMICALLY_DEFINE_DATA_IDENTIFIER = 0x2C + WRITE_DATA_BY_IDENTIFIER = 0x2E + WRITE_MEMORY_BY_ADDRESS = 0x3D + CLEAR_DIAGNOSTIC_INFORMATION = 0x14 + READ_DTC_INFORMATION = 0x19 + INPUT_OUTPUT_CONTROL_BY_IDENTIFIER = 0x2F + ROUTINE_CONTROL = 0x31 + REQUEST_DOWNLOAD = 0x34 + REQUEST_UPLOAD = 0x35 + TRANSFER_DATA = 0x36 + REQUEST_TRANSFER_EXIT = 0x37 + +class SESSION_TYPE(IntEnum): + DEFAULT = 1 + PROGRAMMING = 2 + EXTENDED_DIAGNOSTIC = 3 + SAFETY_SYSTEM_DIAGNOSTIC = 4 + +class RESET_TYPE(IntEnum): + HARD = 1 + KEY_OFF_ON = 2 + SOFT = 3 + ENABLE_RAPID_POWER_SHUTDOWN = 4 + DISABLE_RAPID_POWER_SHUTDOWN = 5 + +class ACCESS_TYPE(IntEnum): + REQUEST_SEED = 1 + SEND_KEY = 2 + +class CONTROL_TYPE(IntEnum): + ENABLE_RX_ENABLE_TX = 0 + ENABLE_RX_DISABLE_TX = 1 + DISABLE_RX_ENABLE_TX = 2 + DISABLE_RX_DISABLE_TX = 3 + +class MESSAGE_TYPE(IntEnum): + NORMAL = 1 + NETWORK_MANAGEMENT = 2 + NORMAL_AND_NETWORK_MANAGEMENT = 3 + +class TIMING_PARAMETER_TYPE(IntEnum): + READ_EXTENDED_SET = 1 + SET_TO_DEFAULT_VALUES = 2 + READ_CURRENTLY_ACTIVE = 3 + SET_TO_GIVEN_VALUES = 4 + +class DTC_SETTING_TYPE(IntEnum): + ON = 1 + OFF = 2 + +class RESPONSE_EVENT_TYPE(IntEnum): + STOP_RESPONSE_ON_EVENT = 0 + ON_DTC_STATUS_CHANGE = 1 + ON_TIMER_INTERRUPT = 2 + ON_CHANGE_OF_DATA_IDENTIFIER = 3 + REPORT_ACTIVATED_EVENTS = 4 + START_RESPONSE_ON_EVENT = 5 + CLEAR_RESPONSE_ON_EVENT = 6 + ON_COMPARISON_OF_VALUES = 7 + +class LINK_CONTROL_TYPE(IntEnum): + VERIFY_BAUDRATE_TRANSITION_WITH_FIXED_BAUDRATE = 1 + VERIFY_BAUDRATE_TRANSITION_WITH_SPECIFIC_BAUDRATE = 2 + TRANSITION_BAUDRATE = 3 + +class BAUD_RATE_TYPE(IntEnum): + PC9600 = 1 + PC19200 = 2 + PC38400 = 3 + PC57600 = 4 + PC115200 = 5 + CAN125000 = 16 + CAN250000 = 17 + CAN500000 = 18 + CAN1000000 = 19 + +class DATA_IDENTIFIER_TYPE(IntEnum): + BOOT_SOFTWARE_IDENTIFICATION = 0xF180 + APPLICATION_SOFTWARE_IDENTIFICATION = 0xF181 + APPLICATION_DATA_IDENTIFICATION = 0xF182 + BOOT_SOFTWARE_FINGERPRINT = 0xF183 + APPLICATION_SOFTWARE_FINGERPRINT = 0xF184 + APPLICATION_DATA_FINGERPRINT = 0xF185 + ACTIVE_DIAGNOSTIC_SESSION = 0xF186 + VEHICLE_MANUFACTURER_SPARE_PART_NUMBER = 0xF187 + VEHICLE_MANUFACTURER_ECU_SOFTWARE_NUMBER = 0xF188 + VEHICLE_MANUFACTURER_ECU_SOFTWARE_VERSION_NUMBER = 0xF189 + SYSTEM_SUPPLIER_IDENTIFIER = 0xF18A + ECU_MANUFACTURING_DATE = 0xF18B + ECU_SERIAL_NUMBER = 0xF18C + SUPPORTED_FUNCTIONAL_UNITS = 0xF18D + VEHICLE_MANUFACTURER_KIT_ASSEMBLY_PART_NUMBER = 0xF18E + VIN = 0xF190 + VEHICLE_MANUFACTURER_ECU_HARDWARE_NUMBER = 0xF191 + SYSTEM_SUPPLIER_ECU_HARDWARE_NUMBER = 0xF192 + SYSTEM_SUPPLIER_ECU_HARDWARE_VERSION_NUMBER = 0xF193 + SYSTEM_SUPPLIER_ECU_SOFTWARE_NUMBER = 0xF194 + SYSTEM_SUPPLIER_ECU_SOFTWARE_VERSION_NUMBER = 0xF195 + EXHAUST_REGULATION_OR_TYPE_APPROVAL_NUMBER = 0xF196 + SYSTEM_NAME_OR_ENGINE_TYPE = 0xF197 + REPAIR_SHOP_CODE_OR_TESTER_SERIAL_NUMBER = 0xF198 + PROGRAMMING_DATE = 0xF199 + CALIBRATION_REPAIR_SHOP_CODE_OR_CALIBRATION_EQUIPMENT_SERIAL_NUMBER = 0xF19A + CALIBRATION_DATE = 0xF19B + CALIBRATION_EQUIPMENT_SOFTWARE_NUMBER = 0xF19C + ECU_INSTALLATION_DATE = 0xF19D + ODX_FILE = 0xF19E + ENTITY = 0xF19F + +class TRANSMISSION_MODE_TYPE(IntEnum): + SEND_AT_SLOW_RATE = 1 + SEND_AT_MEDIUM_RATE = 2 + SEND_AT_FAST_RATE = 3 + STOP_SENDING = 4 + +class DYNAMIC_DEFINITION_TYPE(IntEnum): + DEFINE_BY_IDENTIFIER = 1 + DEFINE_BY_MEMORY_ADDRESS = 2 + CLEAR_DYNAMICALLY_DEFINED_DATA_IDENTIFIER = 3 + +class ISOTP_FRAME_TYPE(IntEnum): + SINGLE = 0 + FIRST = 1 + CONSECUTIVE = 2 + FLOW = 3 + +class DynamicSourceDefinition(NamedTuple): + data_identifier: int + position: int + memory_size: int + memory_address: int + +class DTC_GROUP_TYPE(IntEnum): + EMISSIONS = 0x000000 + ALL = 0xFFFFFF + +class DTC_REPORT_TYPE(IntEnum): + NUMBER_OF_DTC_BY_STATUS_MASK = 0x01 + DTC_BY_STATUS_MASK = 0x02 + DTC_SNAPSHOT_IDENTIFICATION = 0x03 + DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER = 0x04 + DTC_SNAPSHOT_RECORD_BY_RECORD_NUMBER = 0x05 + DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER = 0x06 + NUMBER_OF_DTC_BY_SEVERITY_MASK_RECORD = 0x07 + DTC_BY_SEVERITY_MASK_RECORD = 0x08 + SEVERITY_INFORMATION_OF_DTC = 0x09 + SUPPORTED_DTC = 0x0A + FIRST_TEST_FAILED_DTC = 0x0B + FIRST_CONFIRMED_DTC = 0x0C + MOST_RECENT_TEST_FAILED_DTC = 0x0D + MOST_RECENT_CONFIRMED_DTC = 0x0E + MIRROR_MEMORY_DTC_BY_STATUS_MASK = 0x0F + MIRROR_MEMORY_DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER = 0x10 + NUMBER_OF_MIRROR_MEMORY_DTC_BY_STATUS_MASK = 0x11 + NUMBER_OF_EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK = 0x12 + EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK = 0x13 + DTC_FAULT_DETECTION_COUNTER = 0x14 + DTC_WITH_PERMANENT_STATUS = 0x15 + +class DTC_STATUS_MASK_TYPE(IntEnum): + TEST_FAILED = 0x01 + TEST_FAILED_THIS_OPERATION_CYCLE = 0x02 + PENDING_DTC = 0x04 + CONFIRMED_DTC = 0x08 + TEST_NOT_COMPLETED_SINCE_LAST_CLEAR = 0x10 + TEST_FAILED_SINCE_LAST_CLEAR = 0x20 + TEST_NOT_COMPLETED_THIS_OPERATION_CYCLE = 0x40 + WARNING_INDICATOR_REQUESTED = 0x80 + ALL = 0xFF + +class DTC_SEVERITY_MASK_TYPE(IntEnum): + MAINTENANCE_ONLY = 0x20 + CHECK_AT_NEXT_HALT = 0x40 + CHECK_IMMEDIATELY = 0x80 + ALL = 0xE0 + +class CONTROL_PARAMETER_TYPE(IntEnum): + RETURN_CONTROL_TO_ECU = 0 + RESET_TO_DEFAULT = 1 + FREEZE_CURRENT_STATE = 2 + SHORT_TERM_ADJUSTMENT = 3 + +class ROUTINE_CONTROL_TYPE(IntEnum): + START = 1 + STOP = 2 + REQUEST_RESULTS = 3 + +class ROUTINE_IDENTIFIER_TYPE(IntEnum): + ERASE_MEMORY = 0xFF00 + CHECK_PROGRAMMING_DEPENDENCIES = 0xFF01 + ERASE_MIRROR_MEMORY_DTCS = 0xFF02 + +class MessageTimeoutError(Exception): + pass + +class NegativeResponseError(Exception): + def __init__(self, message, service_id, error_code): + super().__init__() + self.message = message + self.service_id = service_id + self.error_code = error_code + + def __str__(self): + return self.message + +class InvalidServiceIdError(Exception): + pass + +class InvalidSubFunctionError(Exception): + pass + +class InvalidSubAddressError(Exception): + pass + +_negative_response_codes = { + 0x00: 'positive response', + 0x10: 'general reject', + 0x11: 'service not supported', + 0x12: 'sub-function not supported', + 0x13: 'incorrect message length or invalid format', + 0x14: 'response too long', + 0x21: 'busy repeat request', + 0x22: 'conditions not correct', + 0x24: 'request sequence error', + 0x25: 'no response from subnet component', + 0x26: 'failure prevents execution of requested action', + 0x31: 'request out of range', + 0x33: 'security access denied', + 0x35: 'invalid key', + 0x36: 'exceed number of attempts', + 0x37: 'required time delay not expired', + 0x70: 'upload download not accepted', + 0x71: 'transfer data suspended', + 0x72: 'general programming failure', + 0x73: 'wrong block sequence counter', + 0x78: 'request correctly received - response pending', + 0x7e: 'sub-function not supported in active session', + 0x7f: 'service not supported in active session', + 0x81: 'rpm too high', + 0x82: 'rpm too low', + 0x83: 'engine is running', + 0x84: 'engine is not running', + 0x85: 'engine run time too low', + 0x86: 'temperature too high', + 0x87: 'temperature too low', + 0x88: 'vehicle speed too high', + 0x89: 'vehicle speed too low', + 0x8a: 'throttle/pedal too high', + 0x8b: 'throttle/pedal too low', + 0x8c: 'transmission not in neutral', + 0x8d: 'transmission not in gear', + 0x8f: 'brake switch(es) not closed', + 0x90: 'shifter lever not in park', + 0x91: 'torque converter clutch locked', + 0x92: 'voltage too high', + 0x93: 'voltage too low', +} + +def get_dtc_num_as_str(dtc_num_bytes): + # ISO 15031-6 + designator = { + 0b00: "P", + 0b01: "C", + 0b10: "B", + 0b11: "U", + } + d = designator[dtc_num_bytes[0] >> 6] + n = bytes([dtc_num_bytes[0] & 0x3F]) + dtc_num_bytes[1:] + return d + n.hex() + +def get_dtc_status_names(status): + result = list() + for m in DTC_STATUS_MASK_TYPE: + if m == DTC_STATUS_MASK_TYPE.ALL: + continue + if status & m.value: + result.append(m.name) + return result + +class CanClient: + def __init__(self, can_send: Callable[[int, bytes, int], None], can_recv: Callable[[], list[tuple[int, bytes, int]]], + tx_addr: int, rx_addr: int, bus: int, sub_addr: int | None = None, rx_sub_addr: int | None = None): + self.tx = can_send + self.rx = can_recv + self.tx_addr = tx_addr + self.rx_addr = rx_addr + self.rx_buff: deque[bytes] = deque() + self.sub_addr = sub_addr + self.rx_sub_addr = rx_sub_addr if rx_sub_addr is not None else sub_addr + self.bus = bus + + def _recv_filter(self, bus: int, addr: int) -> bool: + # handle functional addresses (switch to first addr to respond) + if self.tx_addr == 0x7DF: + is_response = addr >= 0x7E8 and addr <= 0x7EF + if is_response: + carlog.debug(f"switch to physical addr {hex(addr)}") + self.tx_addr = addr - 8 + self.rx_addr = addr + return is_response + if self.tx_addr == 0x18DB33F1: + is_response = addr >= 0x18DAF100 and addr <= 0x18DAF1FF + if is_response: + carlog.debug(f"switch to physical addr {hex(addr)}") + self.tx_addr = 0x18DA00F1 + (addr << 8 & 0xFF00) + self.rx_addr = addr + return bus == self.bus and addr == self.rx_addr + + def _recv_buffer(self, drain: bool = False) -> None: + while True: + msgs = self.rx() + if drain: + carlog.debug(f"CAN-RX: drain - {len(msgs)}") + self.rx_buff.clear() + else: + for rx_addr, rx_data, rx_bus in msgs or []: + if self._recv_filter(rx_bus, rx_addr) and len(rx_data) > 0: + rx_data = bytes(rx_data) # convert bytearray to bytes + + carlog.debug(f"CAN-RX: {hex(rx_addr)} - 0x{bytes.hex(rx_data)}") + + # Cut off sub addr in first byte + if self.rx_sub_addr is not None: + if rx_data[0] != self.rx_sub_addr: + raise InvalidSubAddressError(f"isotp - rx: invalid sub-address: {rx_data[0]}, expected: {self.rx_sub_addr}") + rx_data = rx_data[1:] + + self.rx_buff.append(rx_data) + # break when non-full buffer is processed + if len(msgs) < 254: + return + + def recv(self, drain: bool = False) -> Generator[bytes, None, None]: + # buffer rx messages in case two response messages are received at once + # (e.g. response pending and success/failure response) + self._recv_buffer(drain) + try: + while True: + yield self.rx_buff.popleft() + except IndexError: + pass # empty + + def send(self, msgs: list[bytes], delay: float = 0) -> None: + for i, msg in enumerate(msgs): + if delay and i != 0: + carlog.debug(f"CAN-TX: delay - {delay}") + time.sleep(delay) + + if self.sub_addr is not None: + msg = bytes([self.sub_addr]) + msg + + carlog.debug(f"CAN-TX: {hex(self.tx_addr)} - 0x{bytes.hex(msg)}") + assert len(msg) <= 8 + + self.tx(self.tx_addr, msg, self.bus) + # prevent rx buffer from overflowing on large tx + if i % 10 == 9: + self._recv_buffer() + +class IsoTpMessage: + def __init__(self, can_client: CanClient, timeout: float = 1, single_frame_mode: bool = False, separation_time: float = 0): + self._can_client = can_client + self.timeout = timeout + self.single_frame_mode = single_frame_mode + self.max_len = 8 if self._can_client.sub_addr is None else 7 + + # <= 127, separation time in milliseconds + # 0xF1 to 0xF9 UF, 100 to 900 microseconds + if 1e-4 <= separation_time <= 9e-4: + offset = int(round(separation_time, 4) * 1e4) - 1 + separation_time = 0xF1 + offset + elif 0 <= separation_time <= 0.127: + separation_time = round(separation_time * 1000) + else: + raise Exception("Separation time not in range") + + self.flow_control_msg = bytes([ + 0x30, # flow control + 0x01 if self.single_frame_mode else 0x00, # block size + separation_time, + ]).ljust(self.max_len, b"\x00") + + def send(self, dat: bytes, setup_only: bool = False) -> None: + # throw away any stale data + self._can_client.recv(drain=True) + + self.tx_dat = dat + self.tx_len = len(dat) + self.tx_idx = 0 + self.tx_done = False + + self.rx_dat = b"" + self.rx_len = 0 + self.rx_idx = 0 + self.rx_done = False + + if not setup_only: + carlog.debug(f"ISO-TP: REQUEST - {hex(self._can_client.tx_addr)} 0x{bytes.hex(self.tx_dat)}") + self._tx_first_frame(setup_only=setup_only) + + def _tx_first_frame(self, setup_only: bool = False) -> None: + if self.tx_len < self.max_len: + # single frame (send all bytes) + if not setup_only: + carlog.debug(f"ISO-TP: TX - single frame - {hex(self._can_client.tx_addr)}") + msg = (bytes([self.tx_len]) + self.tx_dat).ljust(self.max_len, b"\x00") + self.tx_done = True + else: + # first frame (send first 6 bytes) + if not setup_only: + carlog.debug(f"ISO-TP: TX - first frame - {hex(self._can_client.tx_addr)}") + msg = (struct.pack("!H", 0x1000 | self.tx_len) + self.tx_dat[:self.max_len - 2]).ljust(self.max_len - 2, b"\x00") + if not setup_only: + self._can_client.send([msg]) + + def recv(self, timeout=None) -> tuple[bytes | None, bool]: + if timeout is None: + timeout = self.timeout + + start_time = time.monotonic() + rx_in_progress = False + try: + while True: + for msg in self._can_client.recv(): + frame_type = self._isotp_rx_next(msg) + start_time = time.monotonic() + # Anything that signifies we're building a response + rx_in_progress = frame_type in (ISOTP_FRAME_TYPE.FIRST, ISOTP_FRAME_TYPE.CONSECUTIVE) + if self.tx_done and self.rx_done: + return self.rx_dat, False + # no timeout indicates non-blocking + if timeout == 0: + return None, rx_in_progress + if time.monotonic() - start_time > timeout: + raise MessageTimeoutError("timeout waiting for response") + finally: + if self.rx_dat: + carlog.debug(f"ISO-TP: RESPONSE - {hex(self._can_client.rx_addr)} 0x{bytes.hex(self.rx_dat)}") + + def _isotp_rx_next(self, rx_data: bytes) -> ISOTP_FRAME_TYPE: + # TODO: Handle CAN frame data optimization, which is allowed with some frame types + # # ISO 15765-2 specifies an eight byte CAN frame for ISO-TP communication + # assert len(rx_data) == self.max_len, f"isotp - rx: invalid CAN frame length: {len(rx_data)}" + + if rx_data[0] >> 4 == ISOTP_FRAME_TYPE.SINGLE: + assert self.rx_dat == b"" or self.rx_done, "isotp - rx: single frame with active frame" + + # "if the first byte is 0x00, then it's a CAN-FD SF, and the second byte specifies the size of the data." + # - https://en.wikipedia.org/wiki/CAN_FD + if rx_data[0] & 0x0F == 0 and len(rx_data) > 8: + self.rx_len = rx_data[1] + offset = 2 + # TODO: update self.max_len for CAN FD + max_len = 62 if self._can_client.sub_addr is None else 61 + assert self.rx_len <= max_len, f"isotp - rx: invalid single frame length: {self.rx_len}" + else: + self.rx_len = rx_data[0] & 0x0F + offset = 1 + assert self.rx_len < self.max_len, f"isotp - rx: invalid single frame length: {self.rx_len}" + + self.rx_dat = rx_data[offset:offset + self.rx_len] + self.rx_idx = 0 + self.rx_done = True + carlog.debug(f"ISO-TP: RX - single frame - {hex(self._can_client.rx_addr)} idx={self.rx_idx} done={self.rx_done}") + return ISOTP_FRAME_TYPE.SINGLE + + elif rx_data[0] >> 4 == ISOTP_FRAME_TYPE.FIRST: + # TODO: support CAN FD first frames + # Once a first frame is received, further frames must be consecutive + assert self.rx_dat == b"" or self.rx_done, "isotp - rx: first frame with active frame" + self.rx_len = ((rx_data[0] & 0x0F) << 8) + rx_data[1] + assert self.rx_len >= self.max_len, f"isotp - rx: invalid first frame length: {self.rx_len}" + assert len(rx_data) == self.max_len, f"isotp - rx: invalid CAN frame length: {len(rx_data)}" + self.rx_dat = rx_data[2:] + self.rx_idx = 0 + self.rx_done = False + carlog.debug(f"ISO-TP: RX - first frame - {hex(self._can_client.rx_addr)} idx={self.rx_idx} done={self.rx_done}") + carlog.debug(f"ISO-TP: TX - flow control continue - {hex(self._can_client.tx_addr)}") + # send flow control message + self._can_client.send([self.flow_control_msg]) + return ISOTP_FRAME_TYPE.FIRST + + elif rx_data[0] >> 4 == ISOTP_FRAME_TYPE.CONSECUTIVE: + assert not self.rx_done, "isotp - rx: consecutive frame with no active frame" + self.rx_idx += 1 + assert self.rx_idx & 0xF == rx_data[0] & 0xF, "isotp - rx: invalid consecutive frame index" + rx_size = self.rx_len - len(self.rx_dat) + self.rx_dat += rx_data[1:1 + rx_size] + if self.rx_len == len(self.rx_dat): + self.rx_done = True + elif self.single_frame_mode: + # notify ECU to send next frame + self._can_client.send([self.flow_control_msg]) + carlog.debug(f"ISO-TP: RX - consecutive frame - {hex(self._can_client.rx_addr)} idx={self.rx_idx} done={self.rx_done}") + return ISOTP_FRAME_TYPE.CONSECUTIVE + + elif rx_data[0] >> 4 == ISOTP_FRAME_TYPE.FLOW: + assert not self.tx_done, "isotp - rx: flow control with no active frame" + assert rx_data[0] != 0x32, "isotp - rx: flow-control overflow/abort" + assert rx_data[0] == 0x30 or rx_data[0] == 0x31, "isotp - rx: flow-control transfer state indicator invalid" + if rx_data[0] == 0x30: + carlog.debug(f"ISO-TP: RX - flow control continue - {hex(self._can_client.tx_addr)}") + delay_ts = rx_data[2] & 0x7F + # scale is 1 milliseconds if first bit == 0, 100 micro seconds if first bit == 1 + delay_div = 1000. if rx_data[2] & 0x80 == 0 else 10000. + delay_sec = delay_ts / delay_div + + # first frame = 6 bytes, each consecutive frame = 7 bytes + num_bytes = self.max_len - 1 + start = self.max_len - 2 + self.tx_idx * num_bytes + count = rx_data[1] + end = start + count * num_bytes if count > 0 else self.tx_len + tx_msgs = [] + for i in range(start, end, num_bytes): + self.tx_idx += 1 + # consecutive tx messages + msg = (bytes([0x20 | (self.tx_idx & 0xF)]) + self.tx_dat[i:i + num_bytes]).ljust(self.max_len, b"\x00") + tx_msgs.append(msg) + # send consecutive tx messages + self._can_client.send(tx_msgs, delay=delay_sec) + if end >= self.tx_len: + self.tx_done = True + carlog.debug(f"ISO-TP: TX - consecutive frame - {hex(self._can_client.tx_addr)} idx={self.tx_idx} done={self.tx_done}") + elif rx_data[0] == 0x31: + # wait (do nothing until next flow control message) + carlog.debug(f"ISO-TP: TX - flow control wait - {hex(self._can_client.tx_addr)}") + return ISOTP_FRAME_TYPE.FLOW + + # 4-15 - reserved + else: + raise Exception(f"isotp - rx: invalid frame type: {rx_data[0] >> 4}") + + +FUNCTIONAL_ADDRS = [0x7DF, 0x18DB33F1] + + +def get_rx_addr_for_tx_addr(tx_addr, rx_offset=0x8): + if tx_addr in FUNCTIONAL_ADDRS: + return None + + if tx_addr < 0xFFF8: + # pseudo-standard 11 bit response addr (add 8) works for most manufacturers + # allow override; some manufacturers use other offsets for non-OBD2 access + return tx_addr + rx_offset + + if tx_addr > 0x10000000 and tx_addr < 0xFFFFFFFF: + # standard 29 bit response addr (flip last two bytes) + return (tx_addr & 0xFFFF0000) + (tx_addr << 8 & 0xFF00) + (tx_addr >> 8 & 0xFF) + + raise ValueError(f"invalid tx_addr: {tx_addr}") + + +class UdsClient: + def __init__(self, panda, tx_addr: int, rx_addr: int | None = None, bus: int = 0, sub_addr: int | None = None, rx_sub_addr: int | None = None, + timeout: float = 1, tx_timeout: float = 1, response_pending_timeout: float = 10): + self.bus = bus + self.tx_addr = tx_addr + self.rx_addr = rx_addr if rx_addr is not None else get_rx_addr_for_tx_addr(tx_addr) + self.sub_addr = sub_addr + self.timeout = timeout + can_send_with_timeout = partial(panda.can_send, timeout=int(tx_timeout*1000)) + self._can_client = CanClient(can_send_with_timeout, panda.can_recv, self.tx_addr, self.rx_addr, self.bus, self.sub_addr, rx_sub_addr) + self.response_pending_timeout = response_pending_timeout + + # generic uds request + def _uds_request(self, service_type: SERVICE_TYPE, subfunction: int | None = None, data: bytes | None = None) -> bytes: + req = bytes([service_type]) + if subfunction is not None: + req += bytes([subfunction]) + if data is not None: + req += data + + # send request, wait for response + isotp_msg = IsoTpMessage(self._can_client, timeout=self.timeout) + isotp_msg.send(req) + response_pending = False + while True: + timeout = self.response_pending_timeout if response_pending else self.timeout + resp, _ = isotp_msg.recv(timeout) + + if resp is None: + continue + + response_pending = False + resp_sid = resp[0] if len(resp) > 0 else None + + # negative response + if resp_sid == 0x7F: + service_id = resp[1] if len(resp) > 1 else -1 + try: + service_desc = SERVICE_TYPE(service_id).name + except BaseException: + service_desc = 'NON_STANDARD_SERVICE' + error_code = resp[2] if len(resp) > 2 else -1 + try: + error_desc = _negative_response_codes[error_code] + except BaseException: + error_desc = resp[3:].hex() + # wait for another message if response pending + if error_code == 0x78: + response_pending = True + carlog.debug("UDS-RX: response pending") + continue + raise NegativeResponseError(f'{service_desc} - {error_desc}', service_id, error_code) + + # positive response + if service_type + 0x40 != resp_sid: + resp_sid_hex = hex(resp_sid) if resp_sid is not None else None + raise InvalidServiceIdError(f'invalid response service id: {resp_sid_hex}') + + if subfunction is not None: + resp_sfn = resp[1] if len(resp) > 1 else None + if subfunction != resp_sfn: + resp_sfn_hex = hex(resp_sfn) if resp_sfn is not None else None + raise InvalidSubFunctionError(f'invalid response subfunction: {resp_sfn_hex}') + + # return data (exclude service id and sub-function id) + return resp[(1 if subfunction is None else 2):] + + # services + def diagnostic_session_control(self, session_type: SESSION_TYPE): + self._uds_request(SERVICE_TYPE.DIAGNOSTIC_SESSION_CONTROL, subfunction=session_type) + + def ecu_reset(self, reset_type: RESET_TYPE): + resp = self._uds_request(SERVICE_TYPE.ECU_RESET, subfunction=reset_type) + power_down_time = None + if reset_type == RESET_TYPE.ENABLE_RAPID_POWER_SHUTDOWN: + power_down_time = resp[0] + return power_down_time + + def security_access(self, access_type: ACCESS_TYPE, security_key: bytes = b'', data_record: bytes = b''): + request_seed = access_type % 2 != 0 + if request_seed and len(security_key) != 0: + raise ValueError('security_key not allowed') + if not request_seed and len(security_key) == 0: + raise ValueError('security_key is missing') + if not request_seed and len(data_record) != 0: + raise ValueError('data_record not allowed') + data = security_key + data_record + resp = self._uds_request(SERVICE_TYPE.SECURITY_ACCESS, subfunction=access_type, data=data) + if request_seed: + security_seed = resp + return security_seed + + def communication_control(self, control_type: CONTROL_TYPE, message_type: MESSAGE_TYPE): + data = bytes([message_type]) + self._uds_request(SERVICE_TYPE.COMMUNICATION_CONTROL, subfunction=control_type, data=data) + + def tester_present(self, ): + self._uds_request(SERVICE_TYPE.TESTER_PRESENT, subfunction=0x00) + + def access_timing_parameter(self, timing_parameter_type: TIMING_PARAMETER_TYPE, parameter_values: bytes | None = None): + write_custom_values = timing_parameter_type == TIMING_PARAMETER_TYPE.SET_TO_GIVEN_VALUES + read_values = (timing_parameter_type == TIMING_PARAMETER_TYPE.READ_CURRENTLY_ACTIVE or + timing_parameter_type == TIMING_PARAMETER_TYPE.READ_EXTENDED_SET) + if not write_custom_values and parameter_values is not None: + raise ValueError('parameter_values not allowed') + if write_custom_values and parameter_values is None: + raise ValueError('parameter_values is missing') + resp = self._uds_request(SERVICE_TYPE.ACCESS_TIMING_PARAMETER, subfunction=timing_parameter_type, data=parameter_values) + if read_values: + # TODO: parse response into values? + parameter_values = resp + return parameter_values + + def secured_data_transmission(self, data: bytes): + # TODO: split data into multiple input parameters? + resp = self._uds_request(SERVICE_TYPE.SECURED_DATA_TRANSMISSION, subfunction=None, data=data) + # TODO: parse response into multiple output values? + return resp + + def control_dtc_setting(self, dtc_setting_type: DTC_SETTING_TYPE): + self._uds_request(SERVICE_TYPE.CONTROL_DTC_SETTING, subfunction=dtc_setting_type) + + def response_on_event(self, response_event_type: RESPONSE_EVENT_TYPE, store_event: bool, window_time: int, + event_type_record: int, service_response_record: int): + if store_event: + response_event_type |= 0x20 # type: ignore + # TODO: split record parameters into arrays + data = bytes([window_time, event_type_record, service_response_record]) + resp = self._uds_request(SERVICE_TYPE.RESPONSE_ON_EVENT, subfunction=response_event_type, data=data) + + if response_event_type == RESPONSE_EVENT_TYPE.REPORT_ACTIVATED_EVENTS: + return { + "num_of_activated_events": resp[0], + "data": resp[1:], # TODO: parse the reset of response + } + + return { + "num_of_identified_events": resp[0], + "event_window_time": resp[1], + "data": resp[2:], # TODO: parse the reset of response + } + + def link_control(self, link_control_type: LINK_CONTROL_TYPE, baud_rate_type: BAUD_RATE_TYPE | None = None): + data: bytes | None + + if link_control_type == LINK_CONTROL_TYPE.VERIFY_BAUDRATE_TRANSITION_WITH_FIXED_BAUDRATE: + # baud_rate_type = BAUD_RATE_TYPE + data = bytes([cast(int, baud_rate_type)]) + elif link_control_type == LINK_CONTROL_TYPE.VERIFY_BAUDRATE_TRANSITION_WITH_SPECIFIC_BAUDRATE: + # baud_rate_type = custom value (3 bytes big-endian) + data = struct.pack('!I', baud_rate_type)[1:] + else: + data = None + self._uds_request(SERVICE_TYPE.LINK_CONTROL, subfunction=link_control_type, data=data) + + def read_data_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE): + # TODO: support list of identifiers + data = struct.pack('!H', data_identifier_type) + resp = self._uds_request(SERVICE_TYPE.READ_DATA_BY_IDENTIFIER, subfunction=None, data=data) + resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None + if resp_id != data_identifier_type: + raise ValueError(f'invalid response data identifier: {hex(resp_id)} expected: {hex(data_identifier_type)}') + return resp[2:] + + def read_memory_by_address(self, memory_address: int, memory_size: int, memory_address_bytes: int = 4, memory_size_bytes: int = 1): + if memory_address_bytes < 1 or memory_address_bytes > 4: + raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') + if memory_size_bytes < 1 or memory_size_bytes > 4: + raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') + data = bytes([memory_size_bytes << 4 | memory_address_bytes]) + + if memory_address >= 1 << (memory_address_bytes * 8): + raise ValueError(f'invalid memory_address: {memory_address}') + data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] + if memory_size >= 1 << (memory_size_bytes * 8): + raise ValueError(f'invalid memory_size: {memory_size}') + data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] + + resp = self._uds_request(SERVICE_TYPE.READ_MEMORY_BY_ADDRESS, subfunction=None, data=data) + return resp + + def read_scaling_data_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE): + data = struct.pack('!H', data_identifier_type) + resp = self._uds_request(SERVICE_TYPE.READ_SCALING_DATA_BY_IDENTIFIER, subfunction=None, data=data) + resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None + if resp_id != data_identifier_type: + raise ValueError(f'invalid response data identifier: {hex(resp_id)}') + return resp[2:] # TODO: parse the response + + def read_data_by_periodic_identifier(self, transmission_mode_type: TRANSMISSION_MODE_TYPE, periodic_data_identifier: int): + # TODO: support list of identifiers + data = bytes([transmission_mode_type, periodic_data_identifier]) + self._uds_request(SERVICE_TYPE.READ_DATA_BY_PERIODIC_IDENTIFIER, subfunction=None, data=data) + + def dynamically_define_data_identifier(self, dynamic_definition_type: DYNAMIC_DEFINITION_TYPE, dynamic_data_identifier: int, + source_definitions: list[DynamicSourceDefinition], memory_address_bytes: int = 4, memory_size_bytes: int = 1): + if memory_address_bytes < 1 or memory_address_bytes > 4: + raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') + if memory_size_bytes < 1 or memory_size_bytes > 4: + raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') + + data = struct.pack('!H', dynamic_data_identifier) + if dynamic_definition_type == DYNAMIC_DEFINITION_TYPE.DEFINE_BY_IDENTIFIER: + for s in source_definitions: + data += struct.pack('!H', s.data_identifier) + bytes([s.position, s.memory_size]) + elif dynamic_definition_type == DYNAMIC_DEFINITION_TYPE.DEFINE_BY_MEMORY_ADDRESS: + data += bytes([memory_size_bytes << 4 | memory_address_bytes]) + for s in source_definitions: + if s.memory_address >= 1 << (memory_address_bytes * 8): + raise ValueError(f'invalid memory_address: {s.memory_address}') + data += struct.pack('!I', s.memory_address)[4 - memory_address_bytes:] + if s.memory_size >= 1 << (memory_size_bytes * 8): + raise ValueError(f'invalid memory_size: {s.memory_size}') + data += struct.pack('!I', s.memory_size)[4 - memory_size_bytes:] + elif dynamic_definition_type == DYNAMIC_DEFINITION_TYPE.CLEAR_DYNAMICALLY_DEFINED_DATA_IDENTIFIER: + pass + else: + raise ValueError(f'invalid dynamic identifier type: {hex(dynamic_definition_type)}') + self._uds_request(SERVICE_TYPE.DYNAMICALLY_DEFINE_DATA_IDENTIFIER, subfunction=dynamic_definition_type, data=data) + + def write_data_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE, data_record: bytes): + data = struct.pack('!H', data_identifier_type) + data_record + resp = self._uds_request(SERVICE_TYPE.WRITE_DATA_BY_IDENTIFIER, subfunction=None, data=data) + resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None + if resp_id != data_identifier_type: + raise ValueError(f'invalid response data identifier: {hex(resp_id)}') + + def write_memory_by_address(self, memory_address: int, memory_size: int, data_record: bytes, memory_address_bytes: int = 4, memory_size_bytes: int = 1): + if memory_address_bytes < 1 or memory_address_bytes > 4: + raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') + if memory_size_bytes < 1 or memory_size_bytes > 4: + raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') + data = bytes([memory_size_bytes << 4 | memory_address_bytes]) + + if memory_address >= 1 << (memory_address_bytes * 8): + raise ValueError(f'invalid memory_address: {memory_address}') + data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] + if memory_size >= 1 << (memory_size_bytes * 8): + raise ValueError(f'invalid memory_size: {memory_size}') + data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] + + data += data_record + self._uds_request(SERVICE_TYPE.WRITE_MEMORY_BY_ADDRESS, subfunction=None, data=data) + + def clear_diagnostic_information(self, dtc_group_type: DTC_GROUP_TYPE): + data = struct.pack('!I', dtc_group_type)[1:] # 3 bytes + self._uds_request(SERVICE_TYPE.CLEAR_DIAGNOSTIC_INFORMATION, subfunction=None, data=data) + + def read_dtc_information(self, dtc_report_type: DTC_REPORT_TYPE, dtc_status_mask_type: DTC_STATUS_MASK_TYPE = DTC_STATUS_MASK_TYPE.ALL, + dtc_severity_mask_type: DTC_SEVERITY_MASK_TYPE = DTC_SEVERITY_MASK_TYPE.ALL, dtc_mask_record: int = 0xFFFFFF, + dtc_snapshot_record_num: int = 0xFF, dtc_extended_record_num: int = 0xFF): + data = b'' + # dtc_status_mask_type + if dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_DTC_BY_STATUS_MASK or \ + dtc_report_type == DTC_REPORT_TYPE.DTC_BY_STATUS_MASK or \ + dtc_report_type == DTC_REPORT_TYPE.MIRROR_MEMORY_DTC_BY_STATUS_MASK or \ + dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_MIRROR_MEMORY_DTC_BY_STATUS_MASK or \ + dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK or \ + dtc_report_type == DTC_REPORT_TYPE.EMISSIONS_RELATED_OBD_DTC_BY_STATUS_MASK: + data += bytes([dtc_status_mask_type]) + # dtc_mask_record + if dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_IDENTIFICATION or \ + dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER or \ + dtc_report_type == DTC_REPORT_TYPE.DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER or \ + dtc_report_type == DTC_REPORT_TYPE.MIRROR_MEMORY_DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER or \ + dtc_report_type == DTC_REPORT_TYPE.SEVERITY_INFORMATION_OF_DTC: + data += struct.pack('!I', dtc_mask_record)[1:] # 3 bytes + # dtc_snapshot_record_num + if dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_IDENTIFICATION or \ + dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER or \ + dtc_report_type == DTC_REPORT_TYPE.DTC_SNAPSHOT_RECORD_BY_RECORD_NUMBER: + data += bytes([dtc_snapshot_record_num]) + # dtc_extended_record_num + if dtc_report_type == DTC_REPORT_TYPE.DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER or \ + dtc_report_type == DTC_REPORT_TYPE.MIRROR_MEMORY_DTC_EXTENDED_DATA_RECORD_BY_DTC_NUMBER: + data += bytes([dtc_extended_record_num]) + # dtc_severity_mask_type + if dtc_report_type == DTC_REPORT_TYPE.NUMBER_OF_DTC_BY_SEVERITY_MASK_RECORD or \ + dtc_report_type == DTC_REPORT_TYPE.DTC_BY_SEVERITY_MASK_RECORD: + data += bytes([dtc_severity_mask_type, dtc_status_mask_type]) + + resp = self._uds_request(SERVICE_TYPE.READ_DTC_INFORMATION, subfunction=dtc_report_type, data=data) + + # TODO: parse response + return resp + + def input_output_control_by_identifier(self, data_identifier_type: DATA_IDENTIFIER_TYPE, control_parameter_type: CONTROL_PARAMETER_TYPE, + control_option_record: bytes = b'', control_enable_mask_record: bytes = b''): + data = struct.pack('!H', data_identifier_type) + bytes([control_parameter_type]) + control_option_record + control_enable_mask_record + resp = self._uds_request(SERVICE_TYPE.INPUT_OUTPUT_CONTROL_BY_IDENTIFIER, subfunction=None, data=data) + resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None + if resp_id != data_identifier_type: + raise ValueError(f'invalid response data identifier: {hex(resp_id)}') + return resp[2:] + + def routine_control(self, routine_control_type: ROUTINE_CONTROL_TYPE, routine_identifier_type: ROUTINE_IDENTIFIER_TYPE, routine_option_record: bytes = b''): + data = struct.pack('!H', routine_identifier_type) + routine_option_record + resp = self._uds_request(SERVICE_TYPE.ROUTINE_CONTROL, subfunction=routine_control_type, data=data) + resp_id = struct.unpack('!H', resp[0:2])[0] if len(resp) >= 2 else None + if resp_id != routine_identifier_type: + raise ValueError(f'invalid response routine identifier: {hex(resp_id)}') + return resp[2:] + + def request_download(self, memory_address: int, memory_size: int, memory_address_bytes: int = 4, memory_size_bytes: int = 4, data_format: int = 0x00): + data = bytes([data_format]) + + if memory_address_bytes < 1 or memory_address_bytes > 4: + raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') + if memory_size_bytes < 1 or memory_size_bytes > 4: + raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') + data += bytes([memory_size_bytes << 4 | memory_address_bytes]) + + if memory_address >= 1 << (memory_address_bytes * 8): + raise ValueError(f'invalid memory_address: {memory_address}') + data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] + if memory_size >= 1 << (memory_size_bytes * 8): + raise ValueError(f'invalid memory_size: {memory_size}') + data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] + + resp = self._uds_request(SERVICE_TYPE.REQUEST_DOWNLOAD, subfunction=None, data=data) + max_num_bytes_len = resp[0] >> 4 if len(resp) > 0 else 0 + if max_num_bytes_len >= 1 and max_num_bytes_len <= 4: + max_num_bytes = struct.unpack('!I', (b"\x00" * (4 - max_num_bytes_len)) + resp[1:max_num_bytes_len + 1])[0] + else: + raise ValueError(f'invalid max_num_bytes_len: {max_num_bytes_len}') + + return max_num_bytes # max number of bytes per transfer data request + + def request_upload(self, memory_address: int, memory_size: int, memory_address_bytes: int = 4, memory_size_bytes: int = 4, data_format: int = 0x00): + data = bytes([data_format]) + + if memory_address_bytes < 1 or memory_address_bytes > 4: + raise ValueError(f'invalid memory_address_bytes: {memory_address_bytes}') + if memory_size_bytes < 1 or memory_size_bytes > 4: + raise ValueError(f'invalid memory_size_bytes: {memory_size_bytes}') + data += bytes([memory_size_bytes << 4 | memory_address_bytes]) + + if memory_address >= 1 << (memory_address_bytes * 8): + raise ValueError(f'invalid memory_address: {memory_address}') + data += struct.pack('!I', memory_address)[4 - memory_address_bytes:] + if memory_size >= 1 << (memory_size_bytes * 8): + raise ValueError(f'invalid memory_size: {memory_size}') + data += struct.pack('!I', memory_size)[4 - memory_size_bytes:] + + resp = self._uds_request(SERVICE_TYPE.REQUEST_UPLOAD, subfunction=None, data=data) + max_num_bytes_len = resp[0] >> 4 if len(resp) > 0 else 0 + if max_num_bytes_len >= 1 and max_num_bytes_len <= 4: + max_num_bytes = struct.unpack('!I', (b"\x00" * (4 - max_num_bytes_len)) + resp[1:max_num_bytes_len + 1])[0] + else: + raise ValueError(f'invalid max_num_bytes_len: {max_num_bytes_len}') + + return max_num_bytes # max number of bytes per transfer data request + + def transfer_data(self, block_sequence_count: int, data: bytes = b''): + data = bytes([block_sequence_count]) + data + resp = self._uds_request(SERVICE_TYPE.TRANSFER_DATA, subfunction=None, data=data) + resp_id = resp[0] if len(resp) > 0 else None + if resp_id != block_sequence_count: + raise ValueError(f'invalid block_sequence_count: {resp_id}') + return resp[1:] + + def request_transfer_exit(self): + self._uds_request(SERVICE_TYPE.REQUEST_TRANSFER_EXIT, subfunction=None) diff --git a/opendbc_repo/opendbc/car/values.py b/opendbc_repo/opendbc/car/values.py new file mode 100644 index 0000000000..1f8ea031ed --- /dev/null +++ b/opendbc_repo/opendbc/car/values.py @@ -0,0 +1,22 @@ +from typing import get_args +from opendbc.car.body.values import CAR as BODY +from opendbc.car.chrysler.values import CAR as CHRYSLER +from opendbc.car.ford.values import CAR as FORD +from opendbc.car.gm.values import CAR as GM +from opendbc.car.honda.values import CAR as HONDA +from opendbc.car.hyundai.values import CAR as HYUNDAI +from opendbc.car.mazda.values import CAR as MAZDA +from opendbc.car.mock.values import CAR as MOCK +from opendbc.car.nissan.values import CAR as NISSAN +from opendbc.car.rivian.values import CAR as RIVIAN +from opendbc.car.subaru.values import CAR as SUBARU +from opendbc.car.tesla.values import CAR as TESLA +from opendbc.car.toyota.values import CAR as TOYOTA +from opendbc.car.volkswagen.values import CAR as VOLKSWAGEN +from opendbc.car.bmw.values import CAR as BMW + +Platform = BODY | CHRYSLER | FORD | GM | HONDA | HYUNDAI | MAZDA | MOCK | NISSAN | RIVIAN | SUBARU | TESLA | TOYOTA | VOLKSWAGEN | BMW + +BRANDS = get_args(Platform) + +PLATFORMS: dict[str, Platform] = {str(platform): platform for brand in BRANDS for platform in brand} diff --git a/opendbc_repo/opendbc/car/vehicle_model.py b/opendbc_repo/opendbc/car/vehicle_model.py new file mode 100755 index 0000000000..27683d2834 --- /dev/null +++ b/opendbc_repo/opendbc/car/vehicle_model.py @@ -0,0 +1,230 @@ +#!/usr/bin/env python3 +""" +Dynamic bicycle model from "The Science of Vehicle Dynamics (2014), M. Guiggiani" + +The state is x = [v, r]^T +with v lateral speed [m/s], and r rotational speed [rad/s] + +The input u is the steering angle [rad], and roll [rad] + +The system is defined by +x_dot = A*x + B*u + +A depends on longitudinal speed, u [m/s], and vehicle parameters CP +""" + +import numpy as np +from numpy.linalg import solve + +from opendbc.car.structs import CarParams + +ACCELERATION_DUE_TO_GRAVITY = 9.8 + + +class VehicleModel: + def __init__(self, CP: CarParams): + """ + Args: + CP: Car Parameters + """ + # for math readability, convert long names car params into short names + self.m: float = CP.mass + self.j: float = CP.rotationalInertia + self.l: float = CP.wheelbase + self.aF: float = CP.centerToFront + self.aR: float = CP.wheelbase - CP.centerToFront + self.chi: float = CP.steerRatioRear + + self.cF_orig: float = CP.tireStiffnessFront + self.cR_orig: float = CP.tireStiffnessRear + self.update_params(1.0, CP.steerRatio) + + def update_params(self, stiffness_factor: float, steer_ratio: float) -> None: + """Update the vehicle model with a new stiffness factor and steer ratio""" + self.cF: float = stiffness_factor * self.cF_orig + self.cR: float = stiffness_factor * self.cR_orig + self.sR: float = steer_ratio + + def steady_state_sol(self, sa: float, u: float, roll: float) -> np.ndarray: + """Returns the steady state solution. + + If the speed is too low we can't use the dynamic model (tire slip is undefined), + we then have to use the kinematic model + + Args: + sa: Steering wheel angle [rad] + u: Speed [m/s] + roll: Road Roll [rad] + + Returns: + 2x1 matrix with steady state solution (lateral speed, rotational speed) + """ + if u > 0.1: + return dyn_ss_sol(sa, u, roll, self) + else: + return kin_ss_sol(sa, u, self) + + def calc_curvature(self, sa: float, u: float, roll: float) -> float: + """Returns the curvature. Multiplied by the speed this will give the yaw rate. + + Args: + sa: Steering wheel angle [rad] + u: Speed [m/s] + roll: Road Roll [rad] + + Returns: + Curvature factor [1/m] + """ + return (self.curvature_factor(u) * sa / self.sR) + self.roll_compensation(roll, u) + + def curvature_factor(self, u: float) -> float: + """Returns the curvature factor. + Multiplied by wheel angle (not steering wheel angle) this will give the curvature. + + Args: + u: Speed [m/s] + + Returns: + Curvature factor [1/m] + """ + sf = calc_slip_factor(self) + return (1. - self.chi) / (1. - sf * u**2) / self.l + + def get_steer_from_curvature(self, curv: float, u: float, roll: float) -> float: + """Calculates the required steering wheel angle for a given curvature + + Args: + curv: Desired curvature [1/m] + u: Speed [m/s] + roll: Road Roll [rad] + + Returns: + Steering wheel angle [rad] + """ + + return (curv - self.roll_compensation(roll, u)) * self.sR * 1.0 / self.curvature_factor(u) + + def roll_compensation(self, roll: float, u: float) -> float: + """Calculates the roll-compensation to curvature + + Args: + roll: Road Roll [rad] + u: Speed [m/s] + + Returns: + Roll compensation curvature [rad] + """ + sf = calc_slip_factor(self) + + if abs(sf) < 1e-6: + return 0 + else: + return (ACCELERATION_DUE_TO_GRAVITY * roll) / ((1 / sf) - u**2) + + def get_steer_from_yaw_rate(self, yaw_rate: float, u: float, roll: float) -> float: + """Calculates the required steering wheel angle for a given yaw_rate + + Args: + yaw_rate: Desired yaw rate [rad/s] + u: Speed [m/s] + roll: Road Roll [rad] + + Returns: + Steering wheel angle [rad] + """ + curv = yaw_rate / u + return self.get_steer_from_curvature(curv, u, roll) + + def yaw_rate(self, sa: float, u: float, roll: float) -> float: + """Calculate yaw rate + + Args: + sa: Steering wheel angle [rad] + u: Speed [m/s] + roll: Road Roll [rad] + + Returns: + Yaw rate [rad/s] + """ + return self.calc_curvature(sa, u, roll) * u + + +def kin_ss_sol(sa: float, u: float, VM: VehicleModel) -> np.ndarray: + """Calculate the steady state solution at low speeds + At low speeds the tire slip is undefined, so a kinematic + model is used. + + Args: + sa: Steering angle [rad] + u: Speed [m/s] + VM: Vehicle model + + Returns: + 2x1 matrix with steady state solution + """ + K = np.zeros((2, 1)) + K[0, 0] = VM.aR / VM.sR / VM.l * u + K[1, 0] = 1. / VM.sR / VM.l * u + return K * sa + + +def create_dyn_state_matrices(u: float, VM: VehicleModel) -> tuple[np.ndarray, np.ndarray]: + """Returns the A and B matrix for the dynamics system + + Args: + u: Vehicle speed [m/s] + VM: Vehicle model + + Returns: + A tuple with the 2x2 A matrix, and 2x2 B matrix + + Parameters in the vehicle model: + cF: Tire stiffness Front [N/rad] + cR: Tire stiffness Rear [N/rad] + aF: Distance from CG to front wheels [m] + aR: Distance from CG to rear wheels [m] + m: Mass [kg] + j: Rotational inertia [kg m^2] + sR: Steering ratio [-] + chi: Steer ratio rear [-] + """ + A = np.zeros((2, 2)) + B = np.zeros((2, 2)) + A[0, 0] = - (VM.cF + VM.cR) / (VM.m * u) + A[0, 1] = - (VM.cF * VM.aF - VM.cR * VM.aR) / (VM.m * u) - u + A[1, 0] = - (VM.cF * VM.aF - VM.cR * VM.aR) / (VM.j * u) + A[1, 1] = - (VM.cF * VM.aF**2 + VM.cR * VM.aR**2) / (VM.j * u) + + # Steering input + B[0, 0] = (VM.cF + VM.chi * VM.cR) / VM.m / VM.sR + B[1, 0] = (VM.cF * VM.aF - VM.chi * VM.cR * VM.aR) / VM.j / VM.sR + + # Roll input + B[0, 1] = -ACCELERATION_DUE_TO_GRAVITY + + return A, B + + +def dyn_ss_sol(sa: float, u: float, roll: float, VM: VehicleModel) -> np.ndarray: + """Calculate the steady state solution when x_dot = 0, + Ax + Bu = 0 => x = -A^{-1} B u + + Args: + sa: Steering angle [rad] + u: Speed [m/s] + roll: Road Roll [rad] + VM: Vehicle model + + Returns: + 2x1 matrix with steady state solution + """ + A, B = create_dyn_state_matrices(u, VM) + inp = np.array([[sa], [roll]]) + return -solve(A, B) @ inp # type: ignore + + +def calc_slip_factor(VM: VehicleModel) -> float: + """The slip factor is a measure of how the curvature changes with speed + it's positive for Oversteering vehicle, negative (usual case) otherwise. + """ + return VM.m * (VM.cF * VM.aF - VM.cR * VM.aR) / (VM.l**2 * VM.cF * VM.cR) diff --git a/opendbc_repo/opendbc/car/vin.py b/opendbc_repo/opendbc/car/vin.py new file mode 100644 index 0000000000..e373c76665 --- /dev/null +++ b/opendbc_repo/opendbc/car/vin.py @@ -0,0 +1,75 @@ +import re +from dataclasses import dataclass, field + +from opendbc.car import uds +from opendbc.car.carlog import carlog +from opendbc.car.isotp_parallel_query import IsoTpParallelQuery +from opendbc.car.fw_query_definitions import STANDARD_VIN_ADDRS, StdQueries + +VIN_UNKNOWN = "0" * 17 +VIN_RE = "[A-HJ-NPR-Z0-9]{17}" + + +@dataclass +class Vin: + vin: str + wmi: str = field(init=False) + vds: str = field(init=False) + vis: str = field(init=False) + + def __post_init__(self): + # parses VIN in accordance with North America standard >2000 vehicles: + # https://en.wikipedia.org/wiki/Vehicle_identification_number#Components + self.wmi = self.vin[:3] # World Manufacturer Identifier + self.vds = self.vin[3:9] # Vehicle Descriptor Section + self.vis = self.vin[9:17] # Vehicle Identifier Section + + +def is_valid_vin(vin: str): + return re.fullmatch(VIN_RE, vin) is not None + + +def get_vin(can_recv, can_send, buses, timeout=0.1, retry=2): + for i in range(retry): + for bus in buses: + for request, response, valid_buses, vin_addrs, functional_addrs, rx_offset in ( + (StdQueries.UDS_VIN_REQUEST, StdQueries.UDS_VIN_RESPONSE, (0, 1), STANDARD_VIN_ADDRS, uds.FUNCTIONAL_ADDRS, 0x8), + (StdQueries.OBD_VIN_REQUEST, StdQueries.OBD_VIN_RESPONSE, (0, 1), STANDARD_VIN_ADDRS, uds.FUNCTIONAL_ADDRS, 0x8), + (StdQueries.GM_VIN_REQUEST, StdQueries.GM_VIN_RESPONSE, (0,), [0x24b], None, 0x400), # Bolt fwdCamera + (StdQueries.KWP_VIN_REQUEST, StdQueries.KWP_VIN_RESPONSE, (0,), [0x797], None, 0x3), # Nissan Leaf VCM + (StdQueries.UDS_VIN_REQUEST, StdQueries.UDS_VIN_RESPONSE, (0,), [0x74f], None, 0x6a), # Volkswagen fwdCamera + (StdQueries.UDS_VIN_REQUEST, StdQueries.UDS_VIN_RESPONSE, (0,), [0x733], None, 0x40), # Rivian EPAS + ): + if bus not in valid_buses: + continue + + # When querying functional addresses, ideally we respond to everything that sends a first frame to avoid leaving the + # ECU in a temporary bad state. Note that we may not cover all ECUs and response offsets. TODO: query physical addrs + tx_addrs = vin_addrs + if functional_addrs is not None: + tx_addrs = [a for a in range(0x700, 0x800) if a != 0x7DF] + list(range(0x18DA00F1, 0x18DB00F1, 0x100)) + + try: + query = IsoTpParallelQuery(can_send, can_recv, bus, tx_addrs, [request, ], [response, ], response_offset=rx_offset, + functional_addrs=functional_addrs) + results = query.get_data(timeout) + + for addr in vin_addrs: + vin = results.get((addr, None)) + if vin is not None: + # Ford and Nissan pads with null bytes + if len(vin) in (19, 24): + vin = re.sub(b'\x00*$', b'', vin) + + # Honda Bosch response starts with a length, trim to correct length + if vin.startswith(b'\x11'): + vin = vin[1:18] + + carlog.error(f"got vin with {request=}") + return uds.get_rx_addr_for_tx_addr(addr, rx_offset=rx_offset), bus, vin.decode() + except Exception: + carlog.exception("VIN query exception") + + carlog.error(f"vin query retry ({i+1}) ...") + + return -1, -1, VIN_UNKNOWN diff --git a/opendbc_repo/opendbc/car/volkswagen/__init__.py b/opendbc_repo/opendbc/car/volkswagen/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/volkswagen/carcontroller.py b/opendbc_repo/opendbc/car/volkswagen/carcontroller.py new file mode 100644 index 0000000000..f4ba62c814 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/carcontroller.py @@ -0,0 +1,126 @@ +import numpy as np +from opendbc.can import CANPacker +from opendbc.car import Bus, DT_CTRL, apply_driver_steer_torque_limits, structs +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarControllerBase +from opendbc.car.volkswagen import mqbcan, pqcan +from opendbc.car.volkswagen.values import CANBUS, CarControllerParams, VolkswagenFlags + +VisualAlert = structs.CarControl.HUDControl.VisualAlert +LongCtrlState = structs.CarControl.Actuators.LongControlState + + +class CarController(CarControllerBase): + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) + self.CCP = CarControllerParams(CP) + self.CCS = pqcan if CP.flags & VolkswagenFlags.PQ else mqbcan + self.packer_pt = CANPacker(dbc_names[Bus.pt]) + self.ext_bus = CANBUS.pt if CP.networkLocation == structs.CarParams.NetworkLocation.fwdCamera else CANBUS.cam + self.aeb_available = not CP.flags & VolkswagenFlags.PQ + + self.apply_torque_last = 0 + self.gra_acc_counter_last = None + self.eps_timer_soft_disable_alert = False + self.hca_frame_timer_running = 0 + self.hca_frame_same_torque = 0 + + def update(self, CC, CS, now_nanos): + actuators = CC.actuators + hud_control = CC.hudControl + can_sends = [] + + # **** Steering Controls ************************************************ # + + if self.frame % self.CCP.STEER_STEP == 0: + # Logic to avoid HCA state 4 "refused": + # * Don't steer unless HCA is in state 3 "ready" or 5 "active" + # * Don't steer at standstill + # * Don't send > 3.00 Newton-meters torque + # * Don't send the same torque for > 6 seconds + # * Don't send uninterrupted steering for > 360 seconds + # MQB racks reset the uninterrupted steering timer after a single frame + # of HCA disabled; this is done whenever output happens to be zero. + + if CC.latActive: + new_torque = int(round(actuators.torque * self.CCP.STEER_MAX)) + apply_torque = apply_driver_steer_torque_limits(new_torque, self.apply_torque_last, CS.out.steeringTorque, self.CCP) + self.hca_frame_timer_running += self.CCP.STEER_STEP + if self.apply_torque_last == apply_torque: + self.hca_frame_same_torque += self.CCP.STEER_STEP + if self.hca_frame_same_torque > self.CCP.STEER_TIME_STUCK_TORQUE / DT_CTRL: + apply_torque -= (1, -1)[apply_torque < 0] + self.hca_frame_same_torque = 0 + else: + self.hca_frame_same_torque = 0 + hca_enabled = abs(apply_torque) > 0 + else: + hca_enabled = False + apply_torque = 0 + + if not hca_enabled: + self.hca_frame_timer_running = 0 + + self.eps_timer_soft_disable_alert = self.hca_frame_timer_running > self.CCP.STEER_TIME_ALERT / DT_CTRL + self.apply_torque_last = apply_torque + can_sends.append(self.CCS.create_steering_control(self.packer_pt, CANBUS.pt, apply_torque, hca_enabled)) + + if self.CP.flags & VolkswagenFlags.STOCK_HCA_PRESENT: + # Pacify VW Emergency Assist driver inactivity detection by changing its view of driver steering input torque + # to the greatest of actual driver input or 2x openpilot's output (1x openpilot output is not enough to + # consistently reset inactivity detection on straight level roads). See commaai/openpilot#23274 for background. + ea_simulated_torque = float(np.clip(apply_torque * 2, -self.CCP.STEER_MAX, self.CCP.STEER_MAX)) + if abs(CS.out.steeringTorque) > abs(ea_simulated_torque): + ea_simulated_torque = CS.out.steeringTorque + can_sends.append(self.CCS.create_eps_update(self.packer_pt, CANBUS.cam, CS.eps_stock_values, ea_simulated_torque)) + + # **** Acceleration Controls ******************************************** # + + if self.CP.openpilotLongitudinalControl: + if self.frame % self.CCP.ACC_CONTROL_STEP == 0: + acc_control = self.CCS.acc_control_value(CS.out.cruiseState.available, CS.out.accFaulted, CC.longActive) + accel = float(np.clip(actuators.accel, self.CCP.ACCEL_MIN, self.CCP.ACCEL_MAX) if CC.longActive else 0) + stopping = actuators.longControlState == LongCtrlState.stopping + starting = actuators.longControlState == LongCtrlState.pid and (CS.esp_hold_confirmation or CS.out.vEgo < self.CP.vEgoStopping) + can_sends.extend(self.CCS.create_acc_accel_control(self.packer_pt, CANBUS.pt, CS.acc_type, CC.longActive, accel, + acc_control, stopping, starting, CS.esp_hold_confirmation)) + + #if self.aeb_available: + # if self.frame % self.CCP.AEB_CONTROL_STEP == 0: + # can_sends.append(self.CCS.create_aeb_control(self.packer_pt, False, False, 0.0)) + # if self.frame % self.CCP.AEB_HUD_STEP == 0: + # can_sends.append(self.CCS.create_aeb_hud(self.packer_pt, False, False)) + + # **** HUD Controls ***************************************************** # + + if self.frame % self.CCP.LDW_STEP == 0: + hud_alert = 0 + if hud_control.visualAlert in (VisualAlert.steerRequired, VisualAlert.ldw): + hud_alert = self.CCP.LDW_MESSAGES["laneAssistTakeOver"] + can_sends.append(self.CCS.create_lka_hud_control(self.packer_pt, CANBUS.pt, CS.ldw_stock_values, CC.latActive, + CS.out.steeringPressed, hud_alert, hud_control)) + + if self.frame % self.CCP.ACC_HUD_STEP == 0 and self.CP.openpilotLongitudinalControl: + lead_distance = 0 + if hud_control.leadVisible and self.frame * DT_CTRL > 1.0: # Don't display lead until we know the scaling factor + lead_distance = 512 if CS.upscale_lead_car_signal else 8 + acc_hud_status = self.CCS.acc_hud_status_value(CS.out.cruiseState.available, CS.out.accFaulted, CC.longActive) + # FIXME: follow the recent displayed-speed updates, also use mph_kmh toggle to fix display rounding problem? + set_speed = hud_control.setSpeed * CV.MS_TO_KPH + can_sends.append(self.CCS.create_acc_hud_control(self.packer_pt, CANBUS.pt, acc_hud_status, set_speed, + lead_distance, hud_control.leadDistanceBars)) + + # **** Stock ACC Button Controls **************************************** # + + gra_send_ready = self.CP.pcmCruise and CS.gra_stock_values["COUNTER"] != self.gra_acc_counter_last + if gra_send_ready and (CC.cruiseControl.cancel or CC.cruiseControl.resume): + can_sends.append(self.CCS.create_acc_buttons_control(self.packer_pt, self.ext_bus, CS.gra_stock_values, + cancel=CC.cruiseControl.cancel, resume=CC.cruiseControl.resume)) + + new_actuators = actuators.as_builder() + new_actuators.torque = self.apply_torque_last / self.CCP.STEER_MAX + new_actuators.torqueOutputCan = self.apply_torque_last + + self.gra_acc_counter_last = CS.gra_stock_values["COUNTER"] + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/volkswagen/carstate.py b/opendbc_repo/opendbc/car/volkswagen/carstate.py new file mode 100644 index 0000000000..40b93a9b70 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/carstate.py @@ -0,0 +1,280 @@ +from opendbc.can import CANParser +from opendbc.car import Bus, structs +from opendbc.car.interfaces import CarStateBase +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.volkswagen.values import DBC, CANBUS, NetworkLocation, TransmissionType, GearShifter, \ + CarControllerParams, VolkswagenFlags + +ButtonType = structs.CarState.ButtonEvent.Type + + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + self.frame = 0 + self.eps_init_complete = False + self.CCP = CarControllerParams(CP) + self.button_states = {button.event_type: False for button in self.CCP.BUTTONS} + self.esp_hold_confirmation = False + self.upscale_lead_car_signal = False + self.eps_stock_values = False + + def update_button_enable(self, buttonEvents: list[structs.CarState.ButtonEvent]): + if not self.CP.pcmCruise: + for b in buttonEvents: + # Enable OP long on falling edge of enable buttons + if b.type in (ButtonType.setCruise, ButtonType.resumeCruise) and not b.pressed: + return True + return False + + def create_button_events(self, pt_cp, buttons): + button_events = [] + + for button in buttons: + state = pt_cp.vl[button.can_addr][button.can_msg] in button.values + if self.button_states[button.event_type] != state: + event = structs.CarState.ButtonEvent() + event.type = button.event_type + event.pressed = state + button_events.append(event) + self.button_states[button.event_type] = state + + return button_events + + def update(self, can_parsers) -> structs.CarState: + pt_cp = can_parsers[Bus.pt] + cam_cp = can_parsers[Bus.cam] + ext_cp = pt_cp if self.CP.networkLocation == NetworkLocation.fwdCamera else cam_cp + + if self.CP.flags & VolkswagenFlags.PQ: + return self.update_pq(pt_cp, cam_cp, ext_cp) + + ret = structs.CarState() + + if self.CP.transmissionType == TransmissionType.direct: + ret.gearShifter = self.parse_gear_shifter(self.CCP.shifter_values.get(pt_cp.vl["Motor_EV_01"]["MO_Waehlpos"], None)) + elif self.CP.transmissionType == TransmissionType.manual: + ret.clutchPressed = not pt_cp.vl["Motor_14"]["MO_Kuppl_schalter"] + if bool(pt_cp.vl["Gateway_72"]["BCM1_Rueckfahrlicht_Schalter"]): + ret.gearShifter = GearShifter.reverse + else: + ret.gearShifter = GearShifter.drive + else: + ret.gearShifter = self.parse_gear_shifter(self.CCP.shifter_values.get(pt_cp.vl["Gateway_73"]["GE_Fahrstufe"], None)) + + if True: + # MQB-specific + self.upscale_lead_car_signal = bool(pt_cp.vl["Kombi_03"]["KBI_Variante"]) # Analog vs digital instrument cluster + + ret.wheelSpeeds = self.get_wheel_speeds( + pt_cp.vl["ESP_19"]["ESP_VL_Radgeschw_02"], + pt_cp.vl["ESP_19"]["ESP_VR_Radgeschw_02"], + pt_cp.vl["ESP_19"]["ESP_HL_Radgeschw_02"], + pt_cp.vl["ESP_19"]["ESP_HR_Radgeschw_02"], + ) + + ret.yawRate = pt_cp.vl["ESP_02"]["ESP_Gierrate"] * (1, -1)[int(pt_cp.vl["ESP_02"]["ESP_VZ_Gierrate"])] * CV.DEG_TO_RAD + hca_status = self.CCP.hca_status_values.get(pt_cp.vl["LH_EPS_03"]["EPS_HCA_Status"]) + if self.CP.flags & VolkswagenFlags.STOCK_HCA_PRESENT: + ret.carFaultedNonCritical = bool(cam_cp.vl["HCA_01"]["EA_Ruckfreigabe"]) or cam_cp.vl["HCA_01"]["EA_ACC_Sollstatus"] > 0 # EA + + drive_mode = True + ret.gas = pt_cp.vl["Motor_20"]["MO_Fahrpedalrohwert_01"] / 100.0 + ret.brake = pt_cp.vl["ESP_05"]["ESP_Bremsdruck"] / 250.0 # FIXME: this is pressure in Bar, not sure what OP expects + brake_pedal_pressed = bool(pt_cp.vl["Motor_14"]["MO_Fahrer_bremst"]) + brake_pressure_detected = bool(pt_cp.vl["ESP_05"]["ESP_Fahrer_bremst"]) + ret.brakePressed = brake_pedal_pressed or brake_pressure_detected + ret.parkingBrake = bool(pt_cp.vl["Kombi_01"]["KBI_Handbremse"]) # FIXME: need to include an EPB check as well + + ret.doorOpen = any([pt_cp.vl["Gateway_72"]["ZV_FT_offen"], + pt_cp.vl["Gateway_72"]["ZV_BT_offen"], + pt_cp.vl["Gateway_72"]["ZV_HFS_offen"], + pt_cp.vl["Gateway_72"]["ZV_HBFS_offen"], + pt_cp.vl["Gateway_72"]["ZV_HD_offen"]]) + + if self.CP.enableBsm: + # Infostufe: BSM LED on, Warnung: BSM LED flashing + ret.leftBlindspot = bool(ext_cp.vl["SWA_01"]["SWA_Infostufe_SWA_li"]) or bool(ext_cp.vl["SWA_01"]["SWA_Warnung_SWA_li"]) + ret.rightBlindspot = bool(ext_cp.vl["SWA_01"]["SWA_Infostufe_SWA_re"]) or bool(ext_cp.vl["SWA_01"]["SWA_Warnung_SWA_re"]) + + ret.stockFcw = bool(ext_cp.vl["ACC_10"]["AWV2_Freigabe"]) + ret.stockAeb = bool(ext_cp.vl["ACC_10"]["ANB_Teilbremsung_Freigabe"]) or bool(ext_cp.vl["ACC_10"]["ANB_Zielbremsung_Freigabe"]) + + self.acc_type = ext_cp.vl["ACC_06"]["ACC_Typ"] + self.esp_hold_confirmation = bool(pt_cp.vl["ESP_21"]["ESP_Haltebestaetigung"]) + acc_limiter_mode = ext_cp.vl["ACC_02"]["ACC_Gesetzte_Zeitluecke"] == 0 + speed_limiter_mode = bool(pt_cp.vl["TSK_06"]["TSK_Limiter_ausgewaehlt"]) + + ret.cruiseState.available = pt_cp.vl["TSK_06"]["TSK_Status"] in (2, 3, 4, 5) + ret.cruiseState.enabled = pt_cp.vl["TSK_06"]["TSK_Status"] in (3, 4, 5) + ret.cruiseState.speed = ext_cp.vl["ACC_02"]["ACC_Wunschgeschw_02"] * CV.KPH_TO_MS if self.CP.pcmCruise else 0 + ret.accFaulted = pt_cp.vl["TSK_06"]["TSK_Status"] in (6, 7) + + ret.leftBlinker = bool(pt_cp.vl["Blinkmodi_02"]["Comfort_Signal_Left"]) + ret.rightBlinker = bool(pt_cp.vl["Blinkmodi_02"]["Comfort_Signal_Right"]) + + # Shared logic + + ret.vEgoRaw = float(np.mean([ret.wheelSpeeds.fl, ret.wheelSpeeds.fr, ret.wheelSpeeds.rl, ret.wheelSpeeds.rr])) + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + + ret.steeringAngleDeg = pt_cp.vl["LWI_01"]["LWI_Lenkradwinkel"] * (1, -1)[int(pt_cp.vl["LWI_01"]["LWI_VZ_Lenkradwinkel"])] + ret.steeringRateDeg = pt_cp.vl["LWI_01"]["LWI_Lenkradw_Geschw"] * (1, -1)[int(pt_cp.vl["LWI_01"]["LWI_VZ_Lenkradw_Geschw"])] + ret.steeringTorque = pt_cp.vl["LH_EPS_03"]["EPS_Lenkmoment"] * (1, -1)[int(pt_cp.vl["LH_EPS_03"]["EPS_VZ_Lenkmoment"])] + ret.steeringPressed = abs(ret.steeringTorque) > self.CCP.STEER_DRIVER_ALLOWANCE + ret.steerFaultTemporary, ret.steerFaultPermanent = self.update_hca_state(hca_status, drive_mode) + + ret.gasPressed = ret.gas > 0 + ret.espActive = bool(pt_cp.vl["ESP_21"]["ESP_Eingriff"]) + ret.espDisabled = pt_cp.vl["ESP_21"]["ESP_Tastung_passiv"] != 0 + ret.seatbeltUnlatched = pt_cp.vl["Airbag_02"]["AB_Gurtschloss_FA"] != 3 + + ret.standstill = ret.vEgoRaw == 0 + ret.cruiseState.standstill = self.CP.pcmCruise and self.esp_hold_confirmation + ret.cruiseState.nonAdaptive = acc_limiter_mode or speed_limiter_mode + if ret.cruiseState.speed > 90: + ret.cruiseState.speed = 0 + + self.eps_stock_values = pt_cp.vl["LH_EPS_03"] + self.ldw_stock_values = cam_cp.vl["LDW_02"] if self.CP.networkLocation == NetworkLocation.fwdCamera else {} + self.gra_stock_values = pt_cp.vl["GRA_ACC_01"] + + ret.buttonEvents = self.create_button_events(pt_cp, self.CCP.BUTTONS) + + self.frame += 1 + return ret + + def update_pq(self, pt_cp, cam_cp, ext_cp) -> structs.CarState: + ret = structs.CarState() + # Update vehicle speed and acceleration from ABS wheel speeds. + ret.wheelSpeeds = self.get_wheel_speeds( + pt_cp.vl["Bremse_3"]["Radgeschw__VL_4_1"], + pt_cp.vl["Bremse_3"]["Radgeschw__VR_4_1"], + pt_cp.vl["Bremse_3"]["Radgeschw__HL_4_1"], + pt_cp.vl["Bremse_3"]["Radgeschw__HR_4_1"], + ) + + # vEgo obtained from Bremse_1 vehicle speed rather than Bremse_3 wheel speeds because Bremse_3 isn't present on NSF + ret.vEgoRaw = pt_cp.vl["Bremse_1"]["Geschwindigkeit_neu__Bremse_1_"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.standstill = ret.vEgoRaw == 0 + + # Update EPS position and state info. For signed values, VW sends the sign in a separate signal. + ret.steeringAngleDeg = pt_cp.vl["Lenkhilfe_3"]["LH3_BLW"] * (1, -1)[int(pt_cp.vl["Lenkhilfe_3"]["LH3_BLWSign"])] + ret.steeringRateDeg = pt_cp.vl["Lenkwinkel_1"]["Lenkradwinkel_Geschwindigkeit"] * (1, -1)[int(pt_cp.vl["Lenkwinkel_1"]["Lenkradwinkel_Geschwindigkeit_S"])] + ret.steeringTorque = pt_cp.vl["Lenkhilfe_3"]["LH3_LM"] * (1, -1)[int(pt_cp.vl["Lenkhilfe_3"]["LH3_LMSign"])] + ret.steeringPressed = abs(ret.steeringTorque) > self.CCP.STEER_DRIVER_ALLOWANCE + ret.yawRate = pt_cp.vl["Bremse_5"]["Giergeschwindigkeit"] * (1, -1)[int(pt_cp.vl["Bremse_5"]["Vorzeichen_der_Giergeschwindigk"])] * CV.DEG_TO_RAD + hca_status = self.CCP.hca_status_values.get(pt_cp.vl["Lenkhilfe_2"]["LH2_Sta_HCA"]) + ret.steerFaultTemporary, ret.steerFaultPermanent = self.update_hca_state(hca_status) + + # Update gas, brakes, and gearshift. + ret.gas = pt_cp.vl["Motor_3"]["Fahrpedal_Rohsignal"] / 100.0 + ret.gasPressed = ret.gas > 0 + ret.brake = pt_cp.vl["Bremse_5"]["Bremsdruck"] / 250.0 # FIXME: this is pressure in Bar, not sure what OP expects + ret.brakePressed = bool(pt_cp.vl["Motor_2"]["Bremslichtschalter"]) + ret.parkingBrake = bool(pt_cp.vl["Kombi_1"]["Bremsinfo"]) + + # Update gear and/or clutch position data. + if self.CP.transmissionType == TransmissionType.automatic: + ret.gearShifter = self.parse_gear_shifter(self.CCP.shifter_values.get(pt_cp.vl["Getriebe_1"]["Waehlhebelposition__Getriebe_1_"], None)) + elif self.CP.transmissionType == TransmissionType.manual: + ret.clutchPressed = not pt_cp.vl["Motor_1"]["Kupplungsschalter"] + reverse_light = bool(pt_cp.vl["Gate_Komf_1"]["GK1_Rueckfahr"]) + if reverse_light: + ret.gearShifter = GearShifter.reverse + else: + ret.gearShifter = GearShifter.drive + + # Update door and trunk/hatch lid open status. + ret.doorOpen = any([pt_cp.vl["Gate_Komf_1"]["GK1_Fa_Tuerkont"], + pt_cp.vl["Gate_Komf_1"]["BSK_BT_geoeffnet"], + pt_cp.vl["Gate_Komf_1"]["BSK_HL_geoeffnet"], + pt_cp.vl["Gate_Komf_1"]["BSK_HR_geoeffnet"], + pt_cp.vl["Gate_Komf_1"]["BSK_HD_Hauptraste"]]) + + # Update seatbelt fastened status. + ret.seatbeltUnlatched = not bool(pt_cp.vl["Airbag_1"]["Gurtschalter_Fahrer"]) + + # Consume blind-spot monitoring info/warning LED states, if available. + # Infostufe: BSM LED on, Warnung: BSM LED flashing + if self.CP.enableBsm: + ret.leftBlindspot = bool(ext_cp.vl["SWA_1"]["SWA_Infostufe_SWA_li"]) or bool(ext_cp.vl["SWA_1"]["SWA_Warnung_SWA_li"]) + ret.rightBlindspot = bool(ext_cp.vl["SWA_1"]["SWA_Infostufe_SWA_re"]) or bool(ext_cp.vl["SWA_1"]["SWA_Warnung_SWA_re"]) + + # Consume factory LDW data relevant for factory SWA (Lane Change Assist) + # and capture it for forwarding to the blind spot radar controller + self.ldw_stock_values = cam_cp.vl["LDW_Status"] if self.CP.networkLocation == NetworkLocation.fwdCamera else {} + + # Stock FCW is considered active if the release bit for brake-jerk warning + # is set. Stock AEB considered active if the partial braking or target + # braking release bits are set. + # Refer to VW Self Study Program 890253: Volkswagen Driver Assistance + # Systems, chapters on Front Assist with Braking and City Emergency + # Braking for the 2016 Passat NMS + # TODO: deferred until we can collect data on pre-MY2016 behavior, AWV message may be shorter with fewer signals + ret.stockFcw = False + ret.stockAeb = False + + # Update ACC radar status. + self.acc_type = ext_cp.vl["ACC_System"]["ACS_Typ_ACC"] + ret.cruiseState.available = bool(pt_cp.vl["Motor_5"]["GRA_Hauptschalter"]) + ret.cruiseState.enabled = pt_cp.vl["Motor_2"]["GRA_Status"] in (1, 2) + if self.CP.pcmCruise: + ret.accFaulted = ext_cp.vl["ACC_GRA_Anzeige"]["ACA_StaACC"] in (6, 7) + else: + ret.accFaulted = pt_cp.vl["Motor_2"]["GRA_Status"] == 3 + + # Update ACC setpoint. When the setpoint reads as 255, the driver has not + # yet established an ACC setpoint, so treat it as zero. + ret.cruiseState.speed = ext_cp.vl["ACC_GRA_Anzeige"]["ACA_V_Wunsch"] * CV.KPH_TO_MS + if ret.cruiseState.speed > 70: # 255 kph in m/s == no current setpoint + ret.cruiseState.speed = 0 + + # Update button states for turn signals and ACC controls, capture all ACC button state/config for passthrough + ret.leftBlinker, ret.rightBlinker = self.update_blinker_from_stalk(300, pt_cp.vl["Gate_Komf_1"]["GK1_Blinker_li"], + pt_cp.vl["Gate_Komf_1"]["GK1_Blinker_re"]) + ret.buttonEvents = self.create_button_events(pt_cp, self.CCP.BUTTONS) + self.gra_stock_values = pt_cp.vl["GRA_Neu"] + + # Additional safety checks performed in CarInterface. + ret.espDisabled = bool(pt_cp.vl["Bremse_1"]["ESP_Passiv_getastet"]) + + self.frame += 1 + return ret + + def update_hca_state(self, hca_status, drive_mode=True): + # Treat FAULT as temporary for worst likely EPS recovery time, for cars without factory Lane Assist + # DISABLED means the EPS hasn't been configured to support Lane Assist + self.eps_init_complete = self.eps_init_complete or (hca_status in ("DISABLED", "READY", "ACTIVE") or self.frame > 600) + perm_fault = drive_mode and hca_status == "DISABLED" or (self.eps_init_complete and hca_status == "FAULT") + temp_fault = drive_mode and hca_status in ("REJECTED", "PREEMPTED") or not self.eps_init_complete + return temp_fault, perm_fault + + @staticmethod + def get_can_parsers(CP): + if CP.flags & VolkswagenFlags.PQ: + return CarState.get_can_parsers_pq(CP) + + # another case of the 1-50Hz + cam_messages = [] + if CP.flags & VolkswagenFlags.STOCK_HCA_PRESENT: + cam_messages += [ + ("HCA_01", 1), # From R242 Driver assistance camera, 50Hz if steering/1Hz if not + ] + + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [ + # the 50->1Hz is currently too much for the CANParser to figure out + ("Blinkmodi_02", 1), # From J519 BCM (sent at 1Hz when no lights active, 50Hz when active) + ], CANBUS.pt), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], cam_messages, CANBUS.cam), + } + + @staticmethod + def get_can_parsers_pq(CP): + return { + Bus.pt: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CANBUS.pt), + Bus.cam: CANParser(DBC[CP.carFingerprint][Bus.pt], [], CANBUS.cam), + } + diff --git a/opendbc_repo/opendbc/car/volkswagen/fingerprints.py b/opendbc_repo/opendbc/car/volkswagen/fingerprints.py new file mode 100644 index 0000000000..1162e3f945 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/fingerprints.py @@ -0,0 +1,1247 @@ +from opendbc.car.structs import CarParams +from opendbc.car.volkswagen.values import CAR + +Ecu = CarParams.Ecu + +# TODO: Sharan Mk2 EPS and DQ250 auto trans both require KWP2000 support for fingerprinting + + +FW_VERSIONS = { + CAR.VOLKSWAGEN_ARTEON_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704L906026TM\xf1\x896847', + b'\xf1\x873G0906259AH\xf1\x890001', + b'\xf1\x873G0906259F \xf1\x890004', + b'\xf1\x873G0906259G \xf1\x890004', + b'\xf1\x873G0906259G \xf1\x890005', + b'\xf1\x873G0906259J \xf1\x890002', + b'\xf1\x873G0906259M \xf1\x890003', + b'\xf1\x873G0906259N \xf1\x890004', + b'\xf1\x873G0906259P \xf1\x890001', + b'\xf1\x875NA907115H \xf1\x890002', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158L \xf1\x893611', + b'\xf1\x870DL300014C \xf1\x893704', + b'\xf1\x870GC300011L \xf1\x891401', + b'\xf1\x870GC300013Q \xf1\x892402', + b'\xf1\x870GC300014M \xf1\x892802', + b'\xf1\x870GC300019G \xf1\x892804', + b'\xf1\x870GC300040P \xf1\x891401', + b'\xf1\x870GC300043 \xf1\x892303', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1616001613121157161111572900', + b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1616001613121177161113772900', + b'\xf1\x873Q0959655BK\xf1\x890712\xf1\x82\x0e1616001613121157161111572C00', + b'\xf1\x873Q0959655CK\xf1\x890711\xf1\x82\x0e1712141712141105121122052900', + b'\xf1\x873Q0959655CR\xf1\x890720\xf1\x82\x0e1616001613121105161111052900', + b'\xf1\x873Q0959655DA\xf1\x890720\xf1\x82\x0e1712141712141105121122052900', + b'\xf1\x873Q0959655DL\xf1\x890732\xf1\x82\x0e1812141812171105141123052J00', + b'\xf1\x875QF959655AP\xf1\x890755\xf1\x82\x1311110011111311111100110200--1611125F49', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571B41815A1', + b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571B00817A1', + b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571B00818A1', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567B0020800', + b'\xf1\x875WA907145M \xf1\x891051\xf1\x82\x002MB4092M7N', + b'\xf1\x875WA907145M \xf1\x891051\xf1\x82\x002NB4202N7N', + b'\xf1\x875WA907145Q \xf1\x891063\xf1\x82\x002KB4092KOM', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572T \xf1\x890383', + b'\xf1\x875Q0907572J \xf1\x890654', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', + ], + }, + CAR.VOLKSWAGEN_ATLAS_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8703H906026AA\xf1\x899970', + b'\xf1\x8703H906026AG\xf1\x899971', + b'\xf1\x8703H906026AG\xf1\x899973', + b'\xf1\x8703H906026AJ\xf1\x890638', + b'\xf1\x8703H906026AJ\xf1\x891017', + b'\xf1\x8703H906026AT\xf1\x891922', + b'\xf1\x8703H906026BC\xf1\x892664', + b'\xf1\x8703H906026F \xf1\x896696', + b'\xf1\x8703H906026F \xf1\x899970', + b'\xf1\x8703H906026J \xf1\x896026', + b'\xf1\x8703H906026J \xf1\x899970', + b'\xf1\x8703H906026J \xf1\x899971', + b'\xf1\x8703H906026S \xf1\x896693', + b'\xf1\x8703H906026S \xf1\x899970', + b'\xf1\x8703H906026S \xf1\x899972', + b'\xf1\x873CN906259 \xf1\x890005', + b'\xf1\x873CN906259F \xf1\x890002', + b'\xf1\x873CN906259K \xf1\x890002', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158A \xf1\x893387', + b'\xf1\x8709G927158DR\xf1\x893536', + b'\xf1\x8709G927158DR\xf1\x893742', + b'\xf1\x8709G927158EN\xf1\x893691', + b'\xf1\x8709G927158F \xf1\x893489', + b'\xf1\x8709G927158FT\xf1\x893835', + b'\xf1\x8709G927158GK\xf1\x893941', + b'\xf1\x8709G927158GL\xf1\x893939', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655BC\xf1\x890503\xf1\x82\x0e1914151912001103111122031200', + b'\xf1\x873Q0959655BN\xf1\x890713\xf1\x82\x0e2214152212001105141122052900', + b'\xf1\x873Q0959655DB\xf1\x890720\xf1\x82\x0e1114151112001105111122052900', + b'\xf1\x873Q0959655DB\xf1\x890720\xf1\x82\x0e2214152212001105141122052900', + b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1114151112001105111122052J00', + b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1114151112001105161122052J00', + b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1115151112001105121122052J00', + b'\xf1\x873Q0959655DM\xf1\x890732\xf1\x82\x0e1115151112001105171122052J00', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B60924A1', + b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B6G920A1', + b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B6M921A1', + b'\xf1\x873QF909144B \xf1\x891582\xf1\x82\x0571B6N920A1', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820528B6080105', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820528B6090105', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572R \xf1\x890372', + b'\xf1\x872Q0907572T \xf1\x890383', + b'\xf1\x875Q0907572H \xf1\x890620', + b'\xf1\x875Q0907572J \xf1\x890654', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572S \xf1\x890780', + ], + }, + CAR.VOLKSWAGEN_CADDY_MK3: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906027T \xf1\x892363', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x872K5959655E \xf1\x890018\xf1\x82\x05000P037605', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0155', + ], + }, + CAR.VOLKSWAGEN_CRAFTER_MK2: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704L906056BP\xf1\x894729', + b'\xf1\x8704L906056EK\xf1\x896391', + b'\xf1\x8705L906023BC\xf1\x892688', + b'\xf1\x8705L906023MH\xf1\x892588', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655AL\xf1\x890505\xf1\x82\x0e1411001413001203151311031100', + b'\xf1\x873Q0959655BG\xf1\x890703\xf1\x82\x0e16120016130012051G1313052900', + b'\xf1\x875QF959655AS\xf1\x890755\xf1\x82\x1315140015150011111100050200--1311120749', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x872N0909143D\x00\xf1\x897010\xf1\x82\x05183AZ306A2', + b'\xf1\x872N0909143E \xf1\x897021\xf1\x82\x05163AZ306A2', + b'\xf1\x872N0909143H \xf1\x897045\xf1\x82\x05263AZ309A2', + b'\xf1\x872N0909144K \xf1\x897045\xf1\x82\x05233AZ810A2', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572J \xf1\x890156', + b'\xf1\x872Q0907572M \xf1\x890233', + ], + }, + CAR.VOLKSWAGEN_GOLF_MK7: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906016A \xf1\x897697', + b'\xf1\x8704E906016AD\xf1\x895758', + b'\xf1\x8704E906016CE\xf1\x899096', + b'\xf1\x8704E906016CH\xf1\x899226', + b'\xf1\x8704E906016N \xf1\x899105', + b'\xf1\x8704E906023AG\xf1\x891726', + b'\xf1\x8704E906023BN\xf1\x894518', + b'\xf1\x8704E906024K \xf1\x896811', + b'\xf1\x8704E906024K \xf1\x899970', + b'\xf1\x8704E906027GR\xf1\x892394', + b'\xf1\x8704E906027HD\xf1\x892603', + b'\xf1\x8704E906027HD\xf1\x893742', + b'\xf1\x8704E906027MA\xf1\x894958', + b'\xf1\x8704L906021DT\xf1\x895520', + b'\xf1\x8704L906021DT\xf1\x898127', + b'\xf1\x8704L906021N \xf1\x895518', + b'\xf1\x8704L906021N \xf1\x898138', + b'\xf1\x8704L906026BN\xf1\x891197', + b'\xf1\x8704L906026BP\xf1\x897608', + b'\xf1\x8704L906026NF\xf1\x899528', + b'\xf1\x8704L906056CL\xf1\x893823', + b'\xf1\x8704L906056CR\xf1\x895813', + b'\xf1\x8704L906056HE\xf1\x893758', + b'\xf1\x8704L906056HN\xf1\x896590', + b'\xf1\x8704L906056HT\xf1\x896591', + b'\xf1\x8704L997022N \xf1\x899459', + b'\xf1\x870EA906016A \xf1\x898343', + b'\xf1\x870EA906016E \xf1\x894219', + b'\xf1\x870EA906016F \xf1\x894238', + b'\xf1\x870EA906016F \xf1\x895002', + b'\xf1\x870EA906016Q \xf1\x895993', + b'\xf1\x870EA906016S \xf1\x897207', + b'\xf1\x875G0906259 \xf1\x890007', + b'\xf1\x875G0906259D \xf1\x890002', + b'\xf1\x875G0906259J \xf1\x890002', + b'\xf1\x875G0906259L \xf1\x890002', + b'\xf1\x875G0906259N \xf1\x890003', + b'\xf1\x875G0906259Q \xf1\x890002', + b'\xf1\x875G0906259Q \xf1\x892313', + b'\xf1\x875G0906259T \xf1\x890003', + b'\xf1\x878V0906259H \xf1\x890002', + b'\xf1\x878V0906259J \xf1\x890003', + b'\xf1\x878V0906259J \xf1\x890103', + b'\xf1\x878V0906259K \xf1\x890001', + b'\xf1\x878V0906259K \xf1\x890003', + b'\xf1\x878V0906259P \xf1\x890001', + b'\xf1\x878V0906259Q \xf1\x890002', + b'\xf1\x878V0906259R \xf1\x890002', + b'\xf1\x878V0906264F \xf1\x890003', + b'\xf1\x878V0906264L \xf1\x890002', + b'\xf1\x878V0906264M \xf1\x890001', + b'\xf1\x878V09C0BB01 \xf1\x890001', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927749AP\xf1\x892943', + b'\xf1\x8709S927158A \xf1\x893585', + b'\xf1\x870CW300040H \xf1\x890606', + b'\xf1\x870CW300041D \xf1\x891004', + b'\xf1\x870CW300041H \xf1\x891010', + b'\xf1\x870CW300042F \xf1\x891604', + b'\xf1\x870CW300043B \xf1\x891601', + b'\xf1\x870CW300043E \xf1\x891603', + b'\xf1\x870CW300044S \xf1\x894530', + b'\xf1\x870CW300044T \xf1\x895245', + b'\xf1\x870CW300045 \xf1\x894531', + b'\xf1\x870CW300047D \xf1\x895261', + b'\xf1\x870CW300047E \xf1\x895261', + b'\xf1\x870CW300048J \xf1\x890611', + b'\xf1\x870CW300049H \xf1\x890905', + b'\xf1\x870CW300050G \xf1\x891905', + b'\xf1\x870D9300012 \xf1\x894904', + b'\xf1\x870D9300012 \xf1\x894913', + b'\xf1\x870D9300012 \xf1\x894937', + b'\xf1\x870D9300012 \xf1\x895045', + b'\xf1\x870D9300012 \xf1\x895046', + b'\xf1\x870D9300014M \xf1\x895004', + b'\xf1\x870D9300014Q \xf1\x895006', + b'\xf1\x870D9300018 \xf1\x895201', + b'\xf1\x870D9300020D \xf1\x894309', + b'\xf1\x870D9300020J \xf1\x894902', + b'\xf1\x870D9300020Q \xf1\x895201', + b'\xf1\x870D9300020S \xf1\x895201', + b'\xf1\x870D9300040A \xf1\x893613', + b'\xf1\x870D9300040S \xf1\x894311', + b'\xf1\x870D9300041H \xf1\x895220', + b'\xf1\x870D9300041N \xf1\x894512', + b'\xf1\x870D9300041P \xf1\x894507', + b'\xf1\x870DD300045K \xf1\x891120', + b'\xf1\x870DD300046F \xf1\x891601', + b'\xf1\x870GC300012A \xf1\x891401', + b'\xf1\x870GC300012A \xf1\x891403', + b'\xf1\x870GC300012A \xf1\x891422', + b'\xf1\x870GC300012M \xf1\x892301', + b'\xf1\x870GC300014B \xf1\x892401', + b'\xf1\x870GC300014B \xf1\x892403', + b'\xf1\x870GC300014B \xf1\x892405', + b'\xf1\x870GC300020G \xf1\x892401', + b'\xf1\x870GC300020G \xf1\x892403', + b'\xf1\x870GC300020G \xf1\x892404', + b'\xf1\x870GC300020N \xf1\x892804', + b'\xf1\x870GC300043T \xf1\x899999', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655AA\xf1\x890386\xf1\x82\x111413001113120043114317121C111C9113', + b'\xf1\x875Q0959655AA\xf1\x890386\xf1\x82\x111413001113120053114317121C111C9113', + b'\xf1\x875Q0959655AA\xf1\x890388\xf1\x82\x111413001113120043114317121C111C9113', + b'\xf1\x875Q0959655AA\xf1\x890388\xf1\x82\x111413001113120043114417121411149113', + b'\xf1\x875Q0959655AA\xf1\x890388\xf1\x82\x111413001113120053114317121C111C9113', + b'\xf1\x875Q0959655AR\xf1\x890317\xf1\x82\x13141500111233003142114A2131219333313100', + b'\xf1\x875Q0959655BH\xf1\x890336\xf1\x82\x1314160011123300314211012230229333423100', + b'\xf1\x875Q0959655BH\xf1\x890336\xf1\x82\x1314160011123300314211012230229333463100', + b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x13141600111233003142115A2232229333463100', + b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1314160011123300314240012250229333463100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142404A2251229333463100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142404A2252229333463100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2251229333463100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x13141600111233003142405A2252229333463100', + b'\xf1\x875Q0959655C \xf1\x890361\xf1\x82\x111413001112120004110415121610169112', + b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1314160011123300314240012250229333463100', + b'\xf1\x875Q0959655D \xf1\x890388\xf1\x82\x111413001113120006110417121A101A9113', + b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13271112111312--071104171825102591131211', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271112111312--071104171825102591131211', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13271212111312--071104171838103891131211', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13272512111312--07110417182C102C91131211', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13341512112212--071104172328102891131211', + b'\xf1\x875Q0959655M \xf1\x890361\xf1\x82\x111413001112120041114115121611169112', + b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200061104171717101791132111', + b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011211200621143171717111791132111', + b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200061104171724102491132111', + b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200621143171724112491132111', + b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1324230011211200631143171724122491132111', + b'\xf1\x875Q0959655T \xf1\x890825\xf1\x82\x13271200111312--071104171837103791132111', + b'\xf1\x875Q0959655T \xf1\x890830\xf1\x82\x13271100111312--071104171826102691131211', + b'\xf1\x875QD959655 \xf1\x890388\xf1\x82\x111413001113120006110417121D101D9112', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144F \xf1\x895043\xf1\x82\x0561A01612A0', + b'\xf1\x873Q0909144H \xf1\x895061\xf1\x82\x0566A0J612A1', + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A00514A1', + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A01613A1', + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A0J712A1', + b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571A0J714A1', + b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571A0JA15A1', + b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A01A18A1', + b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A02A16A1', + b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A0JA16A1', + b'\xf1\x873QM909144 \xf1\x895072\xf1\x82\x0571A01714A1', + b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820519A9040203', + b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521A00441A1', + b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521A00608A1', + b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521A00641A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00442A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A00642A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A07B05A1', + b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00502A0', + b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0521A00602A0', + b'\xf1\x875Q0909144L \xf1\x891021\xf1\x82\x0522A00402A0', + b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0511A00403A0', + b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1', + b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00404A1', + b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00504A1', + b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A00604A1', + b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516A07A02A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A00407A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A00507A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A07B04A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521A20B03A1', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A2000400', + b'\xf1\x875QD909144B \xf1\x891072\xf1\x82\x0521A00507A1', + b'\xf1\x875QM909144A \xf1\x891072\xf1\x82\x0521A20B03A1', + b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A00442A1', + b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A00642A1', + b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A16A1', + b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A17A1', + b'\xf1\x875QN909144A \xf1\x895081\xf1\x82\x0571A01A18A1', + b'\xf1\x875QN909144B \xf1\x895082\xf1\x82\x0571A01A18A1', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x875Q0907567G \xf1\x890390\xf1\x82\x0101', + b'\xf1\x875Q0907567J \xf1\x890396\xf1\x82\x0101', + b'\xf1\x875Q0907567L \xf1\x890098\xf1\x82\x0101', + b'\xf1\x875Q0907572A \xf1\x890141\xf1\x82\x0101', + b'\xf1\x875Q0907572B \xf1\x890200\xf1\x82\x0101', + b'\xf1\x875Q0907572C \xf1\x890210\xf1\x82\x0101', + b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', + b'\xf1\x875Q0907572E \xf1\x89X310\xf1\x82\x0101', + b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101', + b'\xf1\x875Q0907572G \xf1\x890571', + b'\xf1\x875Q0907572H \xf1\x890620', + b'\xf1\x875Q0907572J \xf1\x890653', + b'\xf1\x875Q0907572J \xf1\x890654', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', + b'\xf1\x875Q0907572S \xf1\x890780', + ], + }, + CAR.VOLKSWAGEN_JETTA_MK6: { + (Ecu.srs, 0x715, None): [ + b'\xf1\x875C0959655M \xf1\x890726\xf1\x82\t00NB1108--------24', + b'\xf1\x875K0959655H \xf1\x890724\xf1\x82\t00131108--------02', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0151', + b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0152', + ], + }, + CAR.VOLKSWAGEN_JETTA_MK7: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906024AF\xf1\x899970', + b'\xf1\x8704E906024AK\xf1\x899937', + b'\xf1\x8704E906024AS\xf1\x899912', + b'\xf1\x8704E906024B \xf1\x895594', + b'\xf1\x8704E906024BC\xf1\x899971', + b'\xf1\x8704E906024BG\xf1\x891057', + b'\xf1\x8704E906024C \xf1\x899970', + b'\xf1\x8704E906024C \xf1\x899971', + b'\xf1\x8704E906024L \xf1\x895595', + b'\xf1\x8704E906024L \xf1\x899970', + b'\xf1\x8704E906027MS\xf1\x896223', + b'\xf1\x8705E906013BN\xf1\x893711', + b'\xf1\x8705E906013DB\xf1\x893361', + b'\xf1\x875G0906259T \xf1\x890003', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158BQ\xf1\x893545', + b'\xf1\x8709H927158 \xf1\x890515', + b'\xf1\x8709S927158BS\xf1\x893642', + b'\xf1\x8709S927158BS\xf1\x893694', + b'\xf1\x8709S927158CK\xf1\x893770', + b'\xf1\x8709S927158JC\xf1\x894113', + b'\xf1\x8709S927158R \xf1\x893552', + b'\xf1\x8709S927158R \xf1\x893587', + b'\xf1\x870GC300020N \xf1\x892803', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655AG\xf1\x890336\xf1\x82\x1313171231313500314611011530159333463100', + b'\xf1\x875Q0959655AG\xf1\x890336\xf1\x82\x1314171231313500314611011630169333463100', + b'\xf1\x875Q0959655AG\xf1\x890338\xf1\x82\x1314171231313500314611011630169333463100', + b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1314171231313500314642011650169333463100', + b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1314171231313500314643011650169333463100', + b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1311170031313300314240011150119333433100', + b'\xf1\x875Q0959655BR\xf1\x890403\xf1\x82\x1319170031313300314240011550159333463100', + b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314642021650169333613100', + b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1314171231313500314643021650169333613100', + b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1317171231313500314642023050309333613100', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144M \xf1\x895082\xf1\x82\x0571A10A11A1', + b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x000_A1080_OM', + b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A10A01A1', + b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521B00404A1', + b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A00642A1', + b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A10A01A1', + b'\xf1\x875QN909144B \xf1\x895082\xf1\x82\x0571A10A11A1', + b'\xf1\x875QV907144F \xf1\x891122\xf1\x82\x0001A00701]V', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907567B \xf1\x890534', + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x875Q0907572N \xf1\x890681', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', + ], + }, + CAR.VOLKSWAGEN_PASSAT_MK8: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8703N906026E \xf1\x892114', + b'\xf1\x8704E906023AH\xf1\x893379', + b'\xf1\x8704E906023BM\xf1\x894522', + b'\xf1\x8704L906026DP\xf1\x891538', + b'\xf1\x8704L906026ET\xf1\x891990', + b'\xf1\x8704L906026FP\xf1\x892012', + b'\xf1\x8704L906026GA\xf1\x892013', + b'\xf1\x8704L906026GK\xf1\x899971', + b'\xf1\x8704L906026KD\xf1\x894798', + b'\xf1\x8705L906022A \xf1\x890827', + b'\xf1\x873G0906259 \xf1\x890004', + b'\xf1\x873G0906259B \xf1\x890002', + b'\xf1\x873G0906264 \xf1\x890004', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300041E \xf1\x891006', + b'\xf1\x870CW300042H \xf1\x891601', + b'\xf1\x870CW300042H \xf1\x891607', + b'\xf1\x870CW300043H \xf1\x891601', + b'\xf1\x870CW300048R \xf1\x890610', + b'\xf1\x870D9300013A \xf1\x894905', + b'\xf1\x870D9300014L \xf1\x895002', + b'\xf1\x870D9300018C \xf1\x895297', + b'\xf1\x870D9300041A \xf1\x894801', + b'\xf1\x870D9300042H \xf1\x894901', + b'\xf1\x870DD300045T \xf1\x891601', + b'\xf1\x870DD300046H \xf1\x891601', + b'\xf1\x870DL300011H \xf1\x895201', + b'\xf1\x870GC300042H \xf1\x891404', + b'\xf1\x870GC300043 \xf1\x892301', + b'\xf1\x870GC300046P \xf1\x892805', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655AE\xf1\x890195\xf1\x82\r56140056130012416612124111', + b'\xf1\x873Q0959655AF\xf1\x890195\xf1\x82\r56140056130012026612120211', + b'\xf1\x873Q0959655AN\xf1\x890305\xf1\x82\r58160058140013036914110311', + b'\xf1\x873Q0959655AN\xf1\x890306\xf1\x82\r58160058140013036914110311', + b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012416612124111', + b'\xf1\x873Q0959655BA\xf1\x890195\xf1\x82\r56140056130012516612125111', + b'\xf1\x873Q0959655BB\xf1\x890195\xf1\x82\r56140056130012026612120211', + b'\xf1\x873Q0959655BG\xf1\x890712\xf1\x82\x0e5915005914001305701311052900', + b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e5915005914001305701311052900', + b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001344701311442900', + b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e5915005914001354701311542900', + b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e5915005914001305701311052900', + b'\xf1\x875Q0959655S \xf1\x890870\xf1\x82\x1315120011111200631145171716121691132111', + b'\xf1\x875QF959655S \xf1\x890639\xf1\x82\x13131100131300111111000120----2211114A48', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566B00611A1', + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566B00711A1', + b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820514B0060703', + b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522B0060803', + b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522B0080803', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526B0060905', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820531B0062105', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521B00606A1', + b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516B00501A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00603A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521B00703A1', + b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563B0000600', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567B0020600', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x873Q0907572A \xf1\x890126', + b'\xf1\x873Q0907572A \xf1\x890130', + b'\xf1\x873Q0907572B \xf1\x890192', + b'\xf1\x873Q0907572B \xf1\x890194', + b'\xf1\x873Q0907572C \xf1\x890195', + b'\xf1\x873Q0907572C \xf1\x890196', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', + b'\xf1\x875Q0907572S \xf1\x890780', + ], + }, + CAR.VOLKSWAGEN_PASSAT_NMS: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8706K906016C \xf1\x899609', + b'\xf1\x8706K906016E \xf1\x899830', + b'\xf1\x8706K906016G \xf1\x891124', + b'\xf1\x8706K906071BJ\xf1\x894891', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158AB\xf1\x893318', + b'\xf1\x8709G927158BD\xf1\x893121', + b'\xf1\x8709G927158DK\xf1\x893594', + b'\xf1\x8709G927158FQ\xf1\x893745', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x87561959655 \xf1\x890210\xf1\x82\x1212121111113000102011--121012--101312', + b'\xf1\x87561959655C \xf1\x890508\xf1\x82\x1215141111121100314919--153015--304831', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x87561907567A \xf1\x890132', + b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0152', + ], + }, + CAR.VOLKSWAGEN_POLO_MK6: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704C906025H \xf1\x895177', + b'\xf1\x8705C906032J \xf1\x891702', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300042D \xf1\x891612', + b'\xf1\x870CW300050D \xf1\x891908', + b'\xf1\x870CW300051G \xf1\x891909', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x872Q0959655AG\xf1\x890248\xf1\x82\x1218130411110411--04040404231811152H14', + b'\xf1\x872Q0959655AJ\xf1\x890250\xf1\x82\x1248130411110416--04040404784811152H14', + b'\xf1\x872Q0959655AS\xf1\x890411\xf1\x82\x1384830511110516041405820599841215391471', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x872Q1909144M \xf1\x896041', + b'\xf1\x872Q2909144AB\xf1\x896050', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572R \xf1\x890372', + ], + }, + CAR.VOLKSWAGEN_SHARAN_MK2: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704L906016HE\xf1\x894635', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x877N0959655D \xf1\x890016\xf1\x82\x0801100705----10--', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x877N0907572C \xf1\x890211\xf1\x82\x0153', + ], + }, + CAR.VOLKSWAGEN_TAOS_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906025CK\xf1\x892228', + b'\xf1\x8704E906027NJ\xf1\x891445', + b'\xf1\x8704E906027NP\xf1\x891286', + b'\xf1\x8705E906013BD\xf1\x892496', + b'\xf1\x8705E906013DF\xf1\x893365', + b'\xf1\x8705E906013E \xf1\x891624', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158EM\xf1\x893812', + b'\xf1\x8709S927158BL\xf1\x893791', + b'\xf1\x8709S927158CR\xf1\x893924', + b'\xf1\x8709S927158DN\xf1\x893946', + b'\xf1\x8709S927158FF\xf1\x893876', + b'\xf1\x8709S927158HM\xf1\x894112', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1311111111333500314646021450149333613100', + b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1312111111333500314646021550159333613100', + b'\xf1\x875Q0959655CE\xf1\x890421\xf1\x82\x1311110011333300314240021350139333613100', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x001O06081OOM', + b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521060405A1', + b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521060605A1', + b'\xf1\x875QV907144F \xf1\x891122\xf1\x82\x0001060801]V', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907567B \xf1\x890534', + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.VOLKSWAGEN_TCROSS_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704C906025AK\xf1\x897053', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300050E \xf1\x891903', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x872Q0959655AJ\xf1\x890250\xf1\x82\x1212130411110411--04041104141311152H14', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x872Q1909144M \xf1\x896041', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.VOLKSWAGEN_TIGUAN_MK2: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8703N906026D \xf1\x893680', + b'\xf1\x8704E906024AP\xf1\x891461', + b'\xf1\x8704E906027NB\xf1\x899504', + b'\xf1\x8704L906026EJ\xf1\x893661', + b'\xf1\x8704L906026EJ\xf1\x893916', + b'\xf1\x8704L906027G \xf1\x899893', + b'\xf1\x8705E906018BS\xf1\x890914', + b'\xf1\x875N0906259 \xf1\x890002', + b'\xf1\x875NA906259H \xf1\x890002', + b'\xf1\x875NA907115E \xf1\x890003', + b'\xf1\x875NA907115E \xf1\x890005', + b'\xf1\x875NA907115J \xf1\x890002', + b'\xf1\x875NA907115K \xf1\x890004', + b'\xf1\x8783A907115 \xf1\x890007', + b'\xf1\x8783A907115B \xf1\x890005', + b'\xf1\x8783A907115F \xf1\x890002', + b'\xf1\x8783A907115G \xf1\x890001', + b'\xf1\x8783A907115K \xf1\x890001', + b'\xf1\x8783A907115K \xf1\x890002', + b'\xf1\x8783A907115Q \xf1\x890001', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158DS\xf1\x893699', + b'\xf1\x8709G927158DT\xf1\x893698', + b'\xf1\x8709G927158FM\xf1\x893757', + b'\xf1\x8709G927158GC\xf1\x893821', + b'\xf1\x8709G927158GD\xf1\x893820', + b'\xf1\x8709G927158GM\xf1\x893936', + b'\xf1\x8709G927158GN\xf1\x893938', + b'\xf1\x8709G927158HB\xf1\x894069', + b'\xf1\x8709G927158HC\xf1\x894070', + b'\xf1\x870D9300043 \xf1\x895202', + b'\xf1\x870DD300046K \xf1\x892302', + b'\xf1\x870DL300011N \xf1\x892001', + b'\xf1\x870DL300011N \xf1\x892012', + b'\xf1\x870DL300011N \xf1\x892014', + b'\xf1\x870DL300012M \xf1\x892107', + b'\xf1\x870DL300012P \xf1\x892103', + b'\xf1\x870DL300013A \xf1\x893005', + b'\xf1\x870DL300013G \xf1\x892119', + b'\xf1\x870DL300013G \xf1\x892120', + b'\xf1\x870DL300014C \xf1\x893703', + b'\xf1\x870GC300013P \xf1\x892401', + b'\xf1\x870GC300046Q \xf1\x892802', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655AG\xf1\x890336\xf1\x82\x1316143231313500314617011730179333423100', + b'\xf1\x875Q0959655AG\xf1\x890338\xf1\x82\x1316143231313500314617011730179333423100', + b'\xf1\x875Q0959655AR\xf1\x890317\xf1\x82\x1331310031333334313132573732379333313100', + b'\xf1\x875Q0959655BJ\xf1\x890336\xf1\x82\x1311140031333300314232583632369333423100', + b'\xf1\x875Q0959655BJ\xf1\x890336\xf1\x82\x1312110031333300314232583732379333423100', + b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1331310031333334313132013730379333423100', + b'\xf1\x875Q0959655BM\xf1\x890403\xf1\x82\x1316143231313500314641011750179333423100', + b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1312110031333300314240013750379333423100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1312110031333300314240583752379333423100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140013750379333423100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333334313140573752379333423100', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1331310031333336313140013950399333423100', + b'\xf1\x875Q0959655CB\xf1\x890421\xf1\x82\x1316143231313500314647021750179333613100', + b'\xf1\x875Q0959655CD\xf1\x890421\xf1\x82\x13123112313333003145406F6154619333613100', + b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x1331310031333300314240024050409333613100', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820529A6060603', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527A6050705', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527A6070705', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521A60604A1', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6000600', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A6017A00', + b'\xf1\x875QF909144 \xf1\x895572\xf1\x82\x0571A60833A1', + b'\xf1\x875QF909144A \xf1\x895581\xf1\x82\x0571A60834A1', + b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A60634A1', + b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571A62A32A1', + b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002RA60A2ROM', + b'\xf1\x875QM907144D \xf1\x891063\xf1\x82\x002SA6092SOM', + b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60604A1', + b'\xf1\x875QM909144B \xf1\x891081\xf1\x82\x0521A60804A1', + b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60604A1', + b'\xf1\x875QM909144C \xf1\x891082\xf1\x82\x0521A60804A1', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572AB\xf1\x890397', + b'\xf1\x872Q0907572J \xf1\x890156', + b'\xf1\x872Q0907572M \xf1\x890233', + b'\xf1\x872Q0907572Q \xf1\x890342', + b'\xf1\x872Q0907572R \xf1\x890372', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.VOLKSWAGEN_TOURAN_MK2: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906025BE\xf1\x890720', + b'\xf1\x8704E906027HQ\xf1\x893746', + b'\xf1\x8704L906026HM\xf1\x893017', + b'\xf1\x8705E906018CQ\xf1\x890808', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300020A \xf1\x891936', + b'\xf1\x870CW300041E \xf1\x891005', + b'\xf1\x870CW300041Q \xf1\x891606', + b'\xf1\x870CW300051M \xf1\x891926', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655AS\xf1\x890318\xf1\x82\x1336350021353335314132014730479333313100', + b'\xf1\x875Q0959655AS\xf1\x890318\xf1\x82\x13363500213533353141324C4732479333313100', + b'\xf1\x875Q0959655CH\xf1\x890421\xf1\x82\x1336350021353336314740025250529333613100', + b'\xf1\x875QD959655AJ\xf1\x890421\xf1\x82\x1336350021313300314240023330339333663100', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820531B0062105', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567A8090400', + b'\xf1\x875QD909144F \xf1\x891082\xf1\x82\x0521A00642A1', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x873Q0907572C \xf1\x890195', + b'\xf1\x875Q0907572R \xf1\x890771', + ], + }, + CAR.VOLKSWAGEN_TRANSPORTER_T61: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704L906056AG\xf1\x899970', + b'\xf1\x8704L906056AL\xf1\x899970', + b'\xf1\x8704L906057AP\xf1\x891186', + b'\xf1\x8704L906057N \xf1\x890413', + b'\xf1\x8705L906023E \xf1\x891352', + b'\xf1\x8705L906023MR\xf1\x892582', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870BT300012E \xf1\x893105', + b'\xf1\x870BT300012G \xf1\x893102', + b'\xf1\x870BT300046R \xf1\x893102', + b'\xf1\x870DV300012B \xf1\x893701', + b'\xf1\x870DV300012B \xf1\x893702', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x872Q0959655AE\xf1\x890506\xf1\x82\x1316170411110411--04041704161611152S1411', + b'\xf1\x872Q0959655AE\xf1\x890506\xf1\x82\x1316170411110411--04041704171711152S1411', + b'\xf1\x872Q0959655AF\xf1\x890506\xf1\x82\x1316171111110411--04041711121211152S1413', + b'\xf1\x872Q0959655AQ\xf1\x890511\xf1\x82\x1316170411110411--0404170426261215391421', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x0532380518A2', + b'\xf1\x877LA909144F \xf1\x897150\xf1\x82\x05323A5519A2', + b'\xf1\x877LA909144G \xf1\x897160\xf1\x82\x05333A5519A2', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572R \xf1\x890372', + ], + }, + CAR.VOLKSWAGEN_TROC_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8705E906018AT\xf1\x899640', + b'\xf1\x8705E906018CK\xf1\x890863', + b'\xf1\x8705E906018P \xf1\x896020', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300041S \xf1\x891615', + b'\xf1\x870CW300050J \xf1\x891911', + b'\xf1\x870CW300051M \xf1\x891925', + b'\xf1\x870CW300051M \xf1\x891928', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1111001111001105111111052900', + b'\xf1\x875Q0959655BT\xf1\x890403\xf1\x82\x1311110012333300314240681152119333463100', + b'\xf1\x875Q0959655CF\xf1\x890421\xf1\x82\x1311110012333300314240021150119333613100', + b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x13111100123333003142404M1152119333613100', + b'\xf1\x875Q0959655CG\xf1\x890421\xf1\x82\x13111100123333003142404M1154119333613100', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521060403A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521060405A1', + b'\xf1\x875WA907144M \xf1\x891051\xf1\x82\x001T06081T7N', + b'\xf1\x875WA907144Q \xf1\x891063\xf1\x82\x001O06081OOM', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572M \xf1\x890233', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.AUDI_A3_MK3: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906023AN\xf1\x893695', + b'\xf1\x8704E906023AR\xf1\x893440', + b'\xf1\x8704E906023BL\xf1\x895190', + b'\xf1\x8704E906027CJ\xf1\x897798', + b'\xf1\x8704L997022N \xf1\x899459', + b'\xf1\x875G0906259A \xf1\x890004', + b'\xf1\x875G0906259D \xf1\x890002', + b'\xf1\x875G0906259L \xf1\x890002', + b'\xf1\x875G0906259Q \xf1\x890002', + b'\xf1\x875G0906259Q \xf1\x890007', + b'\xf1\x878V0906259E \xf1\x890001', + b'\xf1\x878V0906259F \xf1\x890002', + b'\xf1\x878V0906259H \xf1\x890002', + b'\xf1\x878V0906259J \xf1\x890002', + b'\xf1\x878V0906259K \xf1\x890001', + b'\xf1\x878V0906264B \xf1\x890003', + b'\xf1\x878V0907115B \xf1\x890007', + b'\xf1\x878V0907404A \xf1\x890005', + b'\xf1\x878V0907404G \xf1\x890005', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300044T \xf1\x895245', + b'\xf1\x870CW300048 \xf1\x895201', + b'\xf1\x870D9300012 \xf1\x894912', + b'\xf1\x870D9300012 \xf1\x894931', + b'\xf1\x870D9300012K \xf1\x894513', + b'\xf1\x870D9300012L \xf1\x894521', + b'\xf1\x870D9300013B \xf1\x894902', + b'\xf1\x870D9300013B \xf1\x894931', + b'\xf1\x870D9300041N \xf1\x894512', + b'\xf1\x870D9300043T \xf1\x899699', + b'\xf1\x870DD300046 \xf1\x891604', + b'\xf1\x870DD300046A \xf1\x891602', + b'\xf1\x870DD300046F \xf1\x891602', + b'\xf1\x870DD300046G \xf1\x891601', + b'\xf1\x870DL300012E \xf1\x892012', + b'\xf1\x870DL300012H \xf1\x892112', + b'\xf1\x870GC300011 \xf1\x890403', + b'\xf1\x870GC300013M \xf1\x892402', + b'\xf1\x870GC300042J \xf1\x891402', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655AB\xf1\x890388\xf1\x82\x111111001111111206110412111321139114', + b'\xf1\x875Q0959655AM\xf1\x890315\xf1\x82\x1311111111111111311411011231129321212100', + b'\xf1\x875Q0959655AM\xf1\x890318\xf1\x82\x1311111111111112311411011531159321212100', + b'\xf1\x875Q0959655AR\xf1\x890315\xf1\x82\x1311110011131115311211012331239321212100', + b'\xf1\x875Q0959655BJ\xf1\x890339\xf1\x82\x1311110011131100311111011731179321342100', + b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--171115141112221291163221', + b'\xf1\x875Q0959655J \xf1\x890825\xf1\x82\x13111112111111--241115141112221291163221', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13111112111111--241115141112221291163221', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111111--341117141212231291163221', + b'\xf1\x875Q0959655J \xf1\x890830\xf1\x82\x13121111111211--261117141112231291163221', + b'\xf1\x875Q0959655N \xf1\x890361\xf1\x82\x111212001112110004110411111421149114', + b'\xf1\x875Q0959655N \xf1\x890361\xf1\x82\x111212001112111104110411111521159114', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144F \xf1\x895043\xf1\x82\x0561G01A13A0', + b'\xf1\x873Q0909144H \xf1\x895061\xf1\x82\x0566G0HA14A1', + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566G0HA14A1', + b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571G01A16A1', + b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571G0HA16A1', + b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571G0JA13A1', + b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571G0JA14A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521G0G809A1', + b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0503G00303A0', + b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0503G00803A0', + b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0503G0G803A0', + b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516G00804A1', + b'\xf1\x875Q0909144S \xf1\x891063\xf1\x82\x0516G00804A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521G00807A1', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x875Q0907567M \xf1\x890398\xf1\x82\x0101', + b'\xf1\x875Q0907567N \xf1\x890400\xf1\x82\x0101', + b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', + b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101', + b'\xf1\x875Q0907572G \xf1\x890571', + b'\xf1\x875Q0907572H \xf1\x890620', + b'\xf1\x875Q0907572P \xf1\x890682', + ], + }, + CAR.AUDI_Q2_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906027JT\xf1\x894145', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300041F \xf1\x891006', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655BD\xf1\x890336\xf1\x82\x1311111111111100311211011231129321312111', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144K \xf1\x895072\xf1\x82\x0571F60511A1', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572M \xf1\x890233', + ], + }, + CAR.AUDI_Q3_MK2: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8705E906018N \xf1\x899970', + b'\xf1\x8705L906022M \xf1\x890901', + b'\xf1\x8783A906259 \xf1\x890001', + b'\xf1\x8783A906259 \xf1\x890005', + b'\xf1\x8783A906259C \xf1\x890002', + b'\xf1\x8783A906259D \xf1\x890001', + b'\xf1\x8783A906259F \xf1\x890001', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x8709G927158CN\xf1\x893608', + b'\xf1\x8709G927158FL\xf1\x893758', + b'\xf1\x8709G927158GG\xf1\x893825', + b'\xf1\x8709G927158GP\xf1\x893937', + b'\xf1\x870GC300045D \xf1\x892802', + b'\xf1\x870GC300046F \xf1\x892701', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655BF\xf1\x890403\xf1\x82\x1321211111211200311121232152219321422111', + b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218A219321532111', + b'\xf1\x875Q0959655BQ\xf1\x890421\xf1\x82\x132121111121120031112124218C219321532111', + b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111224118A119321532111', + b'\xf1\x875Q0959655CC\xf1\x890421\xf1\x82\x131111111111120031111237116A119321532111', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567G6000300', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567G6000800', + b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571G60533A1', + b'\xf1\x875QF909144B \xf1\x895582\xf1\x82\x0571G60733A1', + b'\xf1\x875TA907145D \xf1\x891051\xf1\x82\x001PG60A1P7N', + b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x002VG60A2VOM', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572R \xf1\x890372', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.SEAT_ATECA_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906027KA\xf1\x893749', + b'\xf1\x8704L906021EL\xf1\x897542', + b'\xf1\x8704L906026BP\xf1\x891198', + b'\xf1\x8704L906026BP\xf1\x897608', + b'\xf1\x8704L906056CR\xf1\x892181', + b'\xf1\x8704L906056CR\xf1\x892797', + b'\xf1\x8705E906018AS\xf1\x899596', + b'\xf1\x8781A906259B \xf1\x890003', + b'\xf1\x878V0906264H \xf1\x890005', + b'\xf1\x878V0907115E \xf1\x890002', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300041D \xf1\x891004', + b'\xf1\x870CW300041G \xf1\x891003', + b'\xf1\x870CW300050J \xf1\x891908', + b'\xf1\x870D9300014S \xf1\x895202', + b'\xf1\x870D9300042M \xf1\x895016', + b'\xf1\x870GC300014P \xf1\x892801', + b'\xf1\x870GC300043A \xf1\x892304', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655AC\xf1\x890189\xf1\x82\r11110011110011021511110200', + b'\xf1\x873Q0959655AS\xf1\x890200\xf1\x82\r11110011110011021511110200', + b'\xf1\x873Q0959655AS\xf1\x890200\xf1\x82\r12110012120012021612110200', + b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1212001211001305121211052900', + b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1312001313001305171311052900', + b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1312001313001305171311052900', + b'\xf1\x873Q0959655CM\xf1\x890720\xf1\x82\x0e1312001313001305171311052900', + b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100110200--1113121149', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571N60511A1', + b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521N01842A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521N01342A1', + b'\xf1\x875Q0909144P \xf1\x891043\xf1\x82\x0511N01805A0', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521N01309A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521N05808A1', + b'\xf1\x875WA907145M \xf1\x891051\xf1\x82\x0013N619137N', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572M \xf1\x890233', + b'\xf1\x875Q0907572B \xf1\x890200\xf1\x82\x0101', + b'\xf1\x875Q0907572H \xf1\x890620', + b'\xf1\x875Q0907572K \xf1\x890402\xf1\x82\x0101', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', + ], + }, + CAR.SKODA_FABIA_MK4: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8705E906018CF\xf1\x891905', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300051M \xf1\x891936', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100110200--1111120749', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x872Q1909144S \xf1\x896042', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + ], + }, + CAR.SKODA_KAMIQ_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704C906025AK\xf1\x897053', + b'\xf1\x8705C906032M \xf1\x891333', + b'\xf1\x8705C906032M \xf1\x892365', + b'\xf1\x8705E906013CK\xf1\x892540', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300020 \xf1\x891906', + b'\xf1\x870CW300020 \xf1\x891907', + b'\xf1\x870CW300020T \xf1\x892204', + b'\xf1\x870CW300050 \xf1\x891709', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x872Q0959655AJ\xf1\x890250\xf1\x82\x1211110411110411--04040404131111112H14', + b'\xf1\x872Q0959655AM\xf1\x890351\xf1\x82\x12111104111104112104040404111111112H14', + b'\xf1\x872Q0959655AM\xf1\x890351\xf1\x82\x122221042111042121040404042E2711152H14', + b'\xf1\x872Q0959655AS\xf1\x890411\xf1\x82\x1311150411110411210404040417151215391413', + b'\xf1\x872Q0959655BJ\xf1\x890412\xf1\x82\x132223042111042121040404042B251215391423', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x872Q1909144AB\xf1\x896050', + b'\xf1\x872Q1909144M \xf1\x896041', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572R \xf1\x890372', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.SKODA_KAROQ_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8705E906013CL\xf1\x892541', + b'\xf1\x8705E906013H \xf1\x892407', + b'\xf1\x8705E906018P \xf1\x895472', + b'\xf1\x8705E906018P \xf1\x896020', + b'\xf1\x8705L906022BS\xf1\x890913', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300020T \xf1\x892202', + b'\xf1\x870CW300041S \xf1\x891615', + b'\xf1\x870GC300014L \xf1\x892802', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001101131112012100', + b'\xf1\x873Q0959655BH\xf1\x890712\xf1\x82\x0e1213001211001101131122012100', + b'\xf1\x873Q0959655DE\xf1\x890731\xf1\x82\x0e1213001211001101131121012J00', + b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1312110012120011111100010200--2521210749', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563T6090500', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T6100500', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T6100600', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T6100700', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572AB\xf1\x890397', + b'\xf1\x872Q0907572M \xf1\x890233', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.SKODA_KODIAQ_MK1: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906027DD\xf1\x893123', + b'\xf1\x8704E906027LD\xf1\x893433', + b'\xf1\x8704E906027NB\xf1\x896517', + b'\xf1\x8704E906027NB\xf1\x899504', + b'\xf1\x8704L906026DE\xf1\x895418', + b'\xf1\x8704L906026EJ\xf1\x893661', + b'\xf1\x8704L906026HT\xf1\x893617', + b'\xf1\x8705E906018DJ\xf1\x890915', + b'\xf1\x8705E906018DJ\xf1\x891903', + b'\xf1\x8705L906022GM\xf1\x893411', + b'\xf1\x875NA906259E \xf1\x890003', + b'\xf1\x875NA907115D \xf1\x890003', + b'\xf1\x875NA907115E \xf1\x890003', + b'\xf1\x875NA907115E \xf1\x890005', + b'\xf1\x8783A907115E \xf1\x890001', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870D9300014S \xf1\x895201', + b'\xf1\x870D9300043 \xf1\x895202', + b'\xf1\x870DL300011N \xf1\x892014', + b'\xf1\x870DL300012G \xf1\x892006', + b'\xf1\x870DL300012M \xf1\x892107', + b'\xf1\x870DL300012N \xf1\x892110', + b'\xf1\x870DL300013G \xf1\x892119', + b'\xf1\x870GC300014N \xf1\x892801', + b'\xf1\x870GC300018S \xf1\x892803', + b'\xf1\x870GC300019H \xf1\x892806', + b'\xf1\x870GC300046Q \xf1\x892802', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655AN\xf1\x890306\xf1\x82\r11110011110011031111310311', + b'\xf1\x873Q0959655AP\xf1\x890306\xf1\x82\r11110011110011421111314211', + b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e1213001211001205212111052100', + b'\xf1\x873Q0959655BJ\xf1\x890703\xf1\x82\x0e1213001211001205212111052100', + b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e1213001211001244212111442100', + b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e1213001211001205212112052100', + b'\xf1\x873Q0959655CQ\xf1\x890720\xf1\x82\x0e1213111211001205212112052111', + b'\xf1\x873Q0959655DJ\xf1\x890731\xf1\x82\x0e1513001511001205232113052J00', + b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100010200--1121240749', + b'\xf1\x875QF959655AT\xf1\x890755\xf1\x82\x1311110011110011111100010200--1121246149', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6050405', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6060405', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820527T6070405', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T600G500', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567T600G600', + b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x0025T6BA25OM', + b'\xf1\x875TA907145F \xf1\x891063\xf1\x82\x002LT61A2LOM', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x872Q0907572AA\xf1\x890396', + b'\xf1\x872Q0907572AB\xf1\x890397', + b'\xf1\x872Q0907572M \xf1\x890233', + b'\xf1\x872Q0907572Q \xf1\x890342', + b'\xf1\x872Q0907572R \xf1\x890372', + b'\xf1\x872Q0907572T \xf1\x890383', + ], + }, + CAR.SKODA_OCTAVIA_MK3: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704C906025L \xf1\x896198', + b'\xf1\x8704E906016ER\xf1\x895823', + b'\xf1\x8704E906027HD\xf1\x893742', + b'\xf1\x8704E906027MH\xf1\x894786', + b'\xf1\x8704L906021DT\xf1\x898127', + b'\xf1\x8704L906021ER\xf1\x898361', + b'\xf1\x8704L906026BP\xf1\x897608', + b'\xf1\x8704L906026BS\xf1\x891541', + b'\xf1\x8704L906026BT\xf1\x897612', + b'\xf1\x875G0906259C \xf1\x890002', + b'\xf1\x875G0906259N \xf1\x890003', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300041L \xf1\x891601', + b'\xf1\x870CW300041N \xf1\x891605', + b'\xf1\x870CW300043B \xf1\x891601', + b'\xf1\x870CW300043P \xf1\x891605', + b'\xf1\x870D9300012H \xf1\x894518', + b'\xf1\x870D9300014T \xf1\x895221', + b'\xf1\x870D9300041C \xf1\x894936', + b'\xf1\x870D9300041H \xf1\x895220', + b'\xf1\x870D9300041J \xf1\x894902', + b'\xf1\x870D9300041P \xf1\x894507', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x873Q0959655AC\xf1\x890200\xf1\x82\r11120011100010022212110200', + b'\xf1\x873Q0959655AK\xf1\x890306\xf1\x82\r31210031210021033733310331', + b'\xf1\x873Q0959655AP\xf1\x890305\xf1\x82\r11110011110011213331312131', + b'\xf1\x873Q0959655AQ\xf1\x890200\xf1\x82\r11120011100010312212113100', + b'\xf1\x873Q0959655AS\xf1\x890200\xf1\x82\r11120011100010022212110200', + b'\xf1\x873Q0959655BH\xf1\x890703\xf1\x82\x0e3221003221002105755331052100', + b'\xf1\x873Q0959655BK\xf1\x890703\xf1\x82\x0e3221003221002132755331322100', + b'\xf1\x873Q0959655CM\xf1\x890720\xf1\x82\x0e3221003221002105755331052100', + b'\xf1\x873Q0959655CN\xf1\x890720\xf1\x82\x0e3221003221002105755331052100', + b'\xf1\x875QD959655 \xf1\x890388\xf1\x82\x111101000011110006110411111111119111', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x873Q0909144J \xf1\x895063\xf1\x82\x0566A01513A1', + b'\xf1\x873Q0909144L \xf1\x895081\xf1\x82\x0571T01512A1', + b'\xf1\x875Q0909144AA\xf1\x891081\xf1\x82\x0521T00403A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521T00403A1', + b'\xf1\x875Q0909144AB\xf1\x891082\xf1\x82\x0521T00603A1', + b'\xf1\x875Q0909144R \xf1\x891061\xf1\x82\x0516A00604A1', + b'\xf1\x875Q0909144T \xf1\x891072\xf1\x82\x0521T00601A1', + b'\xf1\x875QD909144E \xf1\x891081\xf1\x82\x0521T00503A1', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x875Q0907567P \xf1\x890100\xf1\x82\x0101', + b'\xf1\x875Q0907572D \xf1\x890304\xf1\x82\x0101', + b'\xf1\x875Q0907572F \xf1\x890400\xf1\x82\x0101', + b'\xf1\x875Q0907572H \xf1\x890620', + b'\xf1\x875Q0907572J \xf1\x890654', + b'\xf1\x875Q0907572K \xf1\x890402\xf1\x82\x0101', + b'\xf1\x875Q0907572P \xf1\x890682', + b'\xf1\x875Q0907572R \xf1\x890771', + ], + }, + CAR.SKODA_SUPERB_MK3: { + (Ecu.engine, 0x7e0, None): [ + b'\xf1\x8704E906027BS\xf1\x892887', + b'\xf1\x8704E906027BT\xf1\x899042', + b'\xf1\x8704L906026ET\xf1\x891343', + b'\xf1\x8704L906026ET\xf1\x891990', + b'\xf1\x8704L906026FP\xf1\x891196', + b'\xf1\x8704L906026KA\xf1\x896014', + b'\xf1\x8704L906026KB\xf1\x894071', + b'\xf1\x8704L906026KD\xf1\x894798', + b'\xf1\x8704L906026MT\xf1\x893076', + b'\xf1\x8705L906022BK\xf1\x899971', + b'\xf1\x873G0906259 \xf1\x890004', + b'\xf1\x873G0906259B \xf1\x890002', + b'\xf1\x873G0906259L \xf1\x890003', + b'\xf1\x873G0906264A \xf1\x890002', + ], + (Ecu.transmission, 0x7e1, None): [ + b'\xf1\x870CW300042H \xf1\x891601', + b'\xf1\x870CW300043B \xf1\x891603', + b'\xf1\x870CW300049Q \xf1\x890906', + b'\xf1\x870D9300011T \xf1\x894801', + b'\xf1\x870D9300012 \xf1\x894940', + b'\xf1\x870D9300013A \xf1\x894905', + b'\xf1\x870D9300014K \xf1\x895006', + b'\xf1\x870D9300041H \xf1\x894905', + b'\xf1\x870D9300042M \xf1\x895013', + b'\xf1\x870D9300043F \xf1\x895202', + b'\xf1\x870GC300013K \xf1\x892403', + b'\xf1\x870GC300014M \xf1\x892801', + b'\xf1\x870GC300019G \xf1\x892803', + b'\xf1\x870GC300043 \xf1\x892301', + b'\xf1\x870GC300046D \xf1\x892402', + ], + (Ecu.srs, 0x715, None): [ + b'\xf1\x875Q0959655AE\xf1\x890130\xf1\x82\x12111200111121001121110012211292221111', + b'\xf1\x875Q0959655AE\xf1\x890130\xf1\x82\x12111200111121001121118112231292221111', + b'\xf1\x875Q0959655AK\xf1\x890130\xf1\x82\x12111200111121001121110012211292221111', + b'\xf1\x875Q0959655AS\xf1\x890317\xf1\x82\x1331310031313100313131823133319331313100', + b'\xf1\x875Q0959655AT\xf1\x890317\xf1\x82\x1331310031313100313131013131319331313100', + b'\xf1\x875Q0959655BH\xf1\x890336\xf1\x82\x1331310031313100313131013141319331413100', + b'\xf1\x875Q0959655BK\xf1\x890336\xf1\x82\x1331310031313100313131013141319331413100', + b'\xf1\x875Q0959655BS\xf1\x890403\xf1\x82\x1333310031313100313152015351539331423100', + b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1331310031313100313151013141319331423100', + b'\xf1\x875Q0959655CA\xf1\x890403\xf1\x82\x1331310031313100313151823143319331423100', + b'\xf1\x875Q0959655CH\xf1\x890421\xf1\x82\x1333310031313100313152025350539331463100', + b'\xf1\x875Q0959655CH\xf1\x890421\xf1\x82\x1333310031313100313152855372539331463100', + ], + (Ecu.eps, 0x712, None): [ + b'\xf1\x875Q0909143K \xf1\x892033\xf1\x820514UZ070203', + b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ050303', + b'\xf1\x875Q0909143M \xf1\x892041\xf1\x820522UZ070303', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ060505', + b'\xf1\x875Q0909143P \xf1\x892051\xf1\x820526UZ070505', + b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060600', + b'\xf1\x875Q0910143B \xf1\x892201\xf1\x82\x0563UZ060700', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070500', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070600', + b'\xf1\x875Q0910143C \xf1\x892211\xf1\x82\x0567UZ070700', + ], + (Ecu.fwdRadar, 0x757, None): [ + b'\xf1\x873Q0907572B \xf1\x890192', + b'\xf1\x873Q0907572B \xf1\x890194', + b'\xf1\x873Q0907572C \xf1\x890195', + b'\xf1\x875Q0907572R \xf1\x890771', + b'\xf1\x875Q0907572S \xf1\x890780', + ], + }, +} diff --git a/opendbc_repo/opendbc/car/volkswagen/interface.py b/opendbc_repo/opendbc/car/volkswagen/interface.py new file mode 100644 index 0000000000..83e8855928 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/interface.py @@ -0,0 +1,90 @@ +from opendbc.car import get_safety_config, structs +from opendbc.car.interfaces import CarInterfaceBase +from opendbc.car.volkswagen.carcontroller import CarController +from opendbc.car.volkswagen.carstate import CarState +from opendbc.car.volkswagen.values import CAR, NetworkLocation, TransmissionType, VolkswagenFlags, VolkswagenSafetyFlags + + +class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + + @staticmethod + def _get_params(ret: structs.CarParams, candidate: CAR, fingerprint, car_fw, alpha_long, is_release, docs) -> structs.CarParams: + ret.brand = "volkswagen" + ret.radarUnavailable = True + + if ret.flags & VolkswagenFlags.PQ: + # Set global PQ35/PQ46/NMS parameters + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.volkswagenPq)] + ret.enableBsm = 0x3BA in fingerprint[0] # SWA_1 + + if 0x440 in fingerprint[0] or docs: # Getriebe_1 + ret.transmissionType = TransmissionType.automatic + else: + ret.transmissionType = TransmissionType.manual + + if any(msg in fingerprint[1] for msg in (0x1A0, 0xC2)): # Bremse_1, Lenkwinkel_1 + ret.networkLocation = NetworkLocation.gateway + else: + ret.networkLocation = NetworkLocation.fwdCamera + + # The PQ port is in dashcam-only mode due to a fixed six-minute maximum timer on HCA steering. An unsupported + # EPS flash update to work around this timer, and enable steering down to zero, is available from: + # https://github.com/pd0wm/pq-flasher + # It is documented in a four-part blog series: + # https://blog.willemmelching.nl/carhacking/2022/01/02/vw-part1/ + # Panda ALLOW_DEBUG firmware required. + ret.dashcamOnly = True + + else: + # Set global MQB parameters + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.volkswagen)] + ret.enableBsm = 0x30F in fingerprint[0] # SWA_01 + + if 0xAD in fingerprint[0] or docs: # Getriebe_11 + ret.transmissionType = TransmissionType.automatic + elif 0x187 in fingerprint[0]: # Motor_EV_01 + ret.transmissionType = TransmissionType.direct + else: + ret.transmissionType = TransmissionType.manual + + if any(msg in fingerprint[1] for msg in (0x40, 0x86, 0xB2, 0xFD)): # Airbag_01, LWI_01, ESP_19, ESP_21 + ret.networkLocation = NetworkLocation.gateway + else: + ret.networkLocation = NetworkLocation.fwdCamera + + if 0x126 in fingerprint[2]: # HCA_01 + ret.flags |= VolkswagenFlags.STOCK_HCA_PRESENT.value + + # Global lateral tuning defaults, can be overridden per-vehicle + + ret.steerLimitTimer = 0.4 + if ret.flags & VolkswagenFlags.PQ: + ret.steerActuatorDelay = 0.2 + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + else: + ret.steerActuatorDelay = 0.1 + ret.lateralTuning.pid.kpBP = [0.] + ret.lateralTuning.pid.kiBP = [0.] + ret.lateralTuning.pid.kf = 0.00006 + ret.lateralTuning.pid.kpV = [0.6] + ret.lateralTuning.pid.kiV = [0.2] + + # Global longitudinal tuning defaults, can be overridden per-vehicle + + ret.alphaLongitudinalAvailable = ret.networkLocation == NetworkLocation.gateway or docs + if alpha_long: + # Proof-of-concept, prep for E2E only. No radar points available. Panda ALLOW_DEBUG firmware required. + ret.openpilotLongitudinalControl = True + ret.safetyConfigs[0].safetyParam |= VolkswagenSafetyFlags.LONG_CONTROL.value + if ret.transmissionType == TransmissionType.manual: + ret.minEnableSpeed = 4.5 + + ret.pcmCruise = not ret.openpilotLongitudinalControl + ret.stopAccel = -0.55 + ret.vEgoStarting = 0.1 + ret.vEgoStopping = 0.5 + ret.autoResumeSng = ret.minEnableSpeed == -1 + + return ret diff --git a/opendbc_repo/opendbc/car/volkswagen/mqbcan.py b/opendbc_repo/opendbc/car/volkswagen/mqbcan.py new file mode 100644 index 0000000000..02580e9997 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/mqbcan.py @@ -0,0 +1,258 @@ +from opendbc.car.crc import CRC8H2F + + +def create_steering_control(packer, bus, apply_torque, lkas_enabled): + values = { + "HCA_01_Status_HCA": 5 if lkas_enabled else 3, + "HCA_01_LM_Offset": abs(apply_torque), + "HCA_01_LM_OffSign": 1 if apply_torque < 0 else 0, + "HCA_01_Vib_Freq": 18, + "HCA_01_Sendestatus": 1 if lkas_enabled else 0, + "EA_ACC_Wunschgeschwindigkeit": 327.36, + } + return packer.make_can_msg("HCA_01", bus, values) + + +def create_eps_update(packer, bus, eps_stock_values, ea_simulated_torque): + values = {s: eps_stock_values[s] for s in [ + "COUNTER", # Sync counter value to EPS output + "EPS_Lenkungstyp", # EPS rack type + "EPS_Berechneter_LW", # Absolute raw steering angle + "EPS_VZ_BLW", # Raw steering angle sign + "EPS_HCA_Status", # EPS HCA control status + ]} + + values.update({ + # Absolute driver torque input and sign, with EA inactivity mitigation + "EPS_Lenkmoment": abs(ea_simulated_torque), + "EPS_VZ_Lenkmoment": 1 if ea_simulated_torque < 0 else 0, + }) + + return packer.make_can_msg("LH_EPS_03", bus, values) + + +def create_lka_hud_control(packer, bus, ldw_stock_values, lat_active, steering_pressed, hud_alert, hud_control): + values = {} + if len(ldw_stock_values): + values = {s: ldw_stock_values[s] for s in [ + "LDW_SW_Warnung_links", # Blind spot in warning mode on left side due to lane departure + "LDW_SW_Warnung_rechts", # Blind spot in warning mode on right side due to lane departure + "LDW_Seite_DLCTLC", # Direction of most likely lane departure (left or right) + "LDW_DLC", # Lane departure, distance to line crossing + "LDW_TLC", # Lane departure, time to line crossing + ]} + + values.update({ + "LDW_Status_LED_gelb": 1 if lat_active and steering_pressed else 0, + "LDW_Status_LED_gruen": 1 if lat_active and not steering_pressed else 0, + "LDW_Lernmodus_links": 3 if hud_control.leftLaneDepart else 1 + hud_control.leftLaneVisible, + "LDW_Lernmodus_rechts": 3 if hud_control.rightLaneDepart else 1 + hud_control.rightLaneVisible, + "LDW_Texte": hud_alert, + }) + return packer.make_can_msg("LDW_02", bus, values) + + +def create_acc_buttons_control(packer, bus, gra_stock_values, cancel=False, resume=False): + values = {s: gra_stock_values[s] for s in [ + "GRA_Hauptschalter", # ACC button, on/off + "GRA_Typ_Hauptschalter", # ACC main button type + "GRA_Codierung", # ACC button configuration/coding + "GRA_Tip_Stufe_2", # unknown related to stalk type + "GRA_ButtonTypeInfo", # unknown related to stalk type + ]} + + values.update({ + "COUNTER": (gra_stock_values["COUNTER"] + 1) % 16, + "GRA_Abbrechen": cancel, + "GRA_Tip_Wiederaufnahme": resume, + }) + + return packer.make_can_msg("GRA_ACC_01", bus, values) + + +def acc_control_value(main_switch_on, acc_faulted, long_active): + if acc_faulted: + acc_control = 6 + elif long_active: + acc_control = 3 + elif main_switch_on: + acc_control = 2 + else: + acc_control = 0 + + return acc_control + + +def acc_hud_status_value(main_switch_on, acc_faulted, long_active): + # TODO: happens to resemble the ACC control value for now, but extend this for init/gas override later + return acc_control_value(main_switch_on, acc_faulted, long_active) + + +def create_acc_accel_control(packer, bus, acc_type, acc_enabled, accel, acc_control, stopping, starting, esp_hold): + commands = [] + + acc_06_values = { + "ACC_Typ": acc_type, + "ACC_Status_ACC": acc_control, + "ACC_StartStopp_Info": acc_enabled, + "ACC_Sollbeschleunigung_02": accel if acc_enabled else 3.01, + "ACC_zul_Regelabw_unten": 0.2, # TODO: dynamic adjustment of comfort-band + "ACC_zul_Regelabw_oben": 0.2, # TODO: dynamic adjustment of comfort-band + "ACC_neg_Sollbeschl_Grad_02": 4.0 if acc_enabled else 0, # TODO: dynamic adjustment of jerk limits + "ACC_pos_Sollbeschl_Grad_02": 4.0 if acc_enabled else 0, # TODO: dynamic adjustment of jerk limits + "ACC_Anfahren": starting, + "ACC_Anhalten": stopping, + } + commands.append(packer.make_can_msg("ACC_06", bus, acc_06_values)) + + if starting: + acc_hold_type = 4 # hold release / startup + elif esp_hold: + acc_hold_type = 3 # hold standby + elif stopping: + acc_hold_type = 1 # hold request + else: + acc_hold_type = 0 + + acc_07_values = { + "ACC_Anhalteweg": 0.3 if stopping else 20.46, # Distance to stop (stopping coordinator handles terminal roll-out) + "ACC_Freilauf_Info": 2 if acc_enabled else 0, + "ACC_Folgebeschl": 3.02, # Not using secondary controller accel unless and until we understand its impact + "ACC_Sollbeschleunigung_02": accel if acc_enabled else 3.01, + "ACC_Anforderung_HMS": acc_hold_type, + "ACC_Anfahren": starting, + "ACC_Anhalten": stopping, + } + commands.append(packer.make_can_msg("ACC_07", bus, acc_07_values)) + + return commands + + +def create_acc_hud_control(packer, bus, acc_hud_status, set_speed, lead_distance, distance): + values = { + "ACC_Status_Anzeige": acc_hud_status, + "ACC_Wunschgeschw_02": set_speed if set_speed < 250 else 327.36, + "ACC_Gesetzte_Zeitluecke": distance + 2, + "ACC_Display_Prio": 3, + "ACC_Abstandsindex": lead_distance, + } + + return packer.make_can_msg("ACC_02", bus, values) + + +# AWV = Stopping Distance Reduction +# Refer to Self Study Program 890253: Volkswagen Driver Assistance Systems, Design and Function + + +def create_aeb_control(packer, fcw_active, aeb_active, accel): + values = { + "AWV_Vorstufe": 0, # Preliminary stage + "AWV1_Anf_Prefill": 0, # Brake pre-fill request + "AWV1_HBA_Param": 0, # Brake pre-fill level + "AWV2_Freigabe": 0, # Stage 2 braking release + "AWV2_Ruckprofil": 0, # Brake jerk level + "AWV2_Priowarnung": 0, # Suppress lane departure warning in favor of FCW + "ANB_Notfallblinken": 0, # Hazard flashers request + "ANB_Teilbremsung_Freigabe": 0, # Target braking release + "ANB_Zielbremsung_Freigabe": 0, # Partial braking release + "ANB_Zielbrems_Teilbrems_Verz_Anf": 0.0, # Acceleration requirement for target/partial braking, m/s/s + "AWV_Halten": 0, # Vehicle standstill request + "PCF_Time_to_collision": 0xFF, # Pre Crash Front, populated only with a target, might be used on Audi only + } + + return packer.make_can_msg("ACC_10", 0, values) + + +def create_aeb_hud(packer, aeb_supported, fcw_active): + values = { + "AWV_Texte": 5 if aeb_supported else 7, # FCW/AEB system status, display text (from menu in VAL) + "AWV_Status_Anzeige": 1 if aeb_supported else 2, # FCW/AEB system status, available or disabled + } + + return packer.make_can_msg("ACC_15", 0, values) + + +def volkswagen_mqb_meb_checksum(address: int, sig, d: bytearray) -> int: + crc = 0xFF + for i in range(1, len(d)): + crc ^= d[i] + crc = CRC8H2F[crc] + counter = d[1] & 0x0F + const = VOLKSWAGEN_MQB_MEB_CONSTANTS.get(address) + if const: + crc ^= const[counter] + crc = CRC8H2F[crc] + return crc ^ 0xFF + + +def xor_checksum(address: int, sig, d: bytearray) -> int: + checksum = 0 + checksum_byte = sig.start_bit // 8 + for i in range(len(d)): + if i != checksum_byte: + checksum ^= d[i] + return checksum + + +VOLKSWAGEN_MQB_MEB_CONSTANTS: dict[int, list[int]] = { + 0x40: [0x40] * 16, # Airbag_01 + 0x86: [0x86] * 16, # LWI_01 + 0x9F: [0xF5] * 16, # LH_EPS_03 + 0xAD: [0x3F, 0x69, 0x39, 0xDC, 0x94, 0xF9, 0x14, 0x64, + 0xD8, 0x6A, 0x34, 0xCE, 0xA2, 0x55, 0xB5, 0x2C], # Getriebe_11 + 0x0DB: [0x09, 0xFA, 0xCA, 0x8E, 0x62, 0xD5, 0xD1, 0xF0, + 0x31, 0xA0, 0xAF, 0xDA, 0x4D, 0x1A, 0x0A, 0x97], # AWV_03 + 0xFC: [0x77, 0x5C, 0xA0, 0x89, 0x4B, 0x7C, 0xBB, 0xD6, + 0x1F, 0x6C, 0x4F, 0xF6, 0x20, 0x2B, 0x43, 0xDD], # ESC_51 + 0xFD: [0xB4, 0xEF, 0xF8, 0x49, 0x1E, 0xE5, 0xC2, 0xC0, + 0x97, 0x19, 0x3C, 0xC9, 0xF1, 0x98, 0xD6, 0x61], # ESP_21 + 0x101: [0xAA] * 16, # ESP_02 + 0x102: [0xD7, 0x12, 0x85, 0x7E, 0x0B, 0x34, 0xFA, 0x16, + 0x7A, 0x25, 0x2D, 0x8F, 0x04, 0x8E, 0x5D, 0x35], # ESC_50 + 0x106: [0x07] * 16, # ESP_05 + 0x10B: [0x77, 0x5C, 0xA0, 0x89, 0x4B, 0x7C, 0xBB, 0xD6, + 0x1F, 0x6C, 0x4F, 0xF6, 0x20, 0x2B, 0x43, 0xDD], # Motor_51 + 0x116: [0xAC] * 16, # ESP_10 + 0x117: [0x16] * 16, # ACC_10 + 0x120: [0xC4, 0xE2, 0x4F, 0xE4, 0xF8, 0x2F, 0x56, 0x81, + 0x9F, 0xE5, 0x83, 0x44, 0x05, 0x3F, 0x97, 0xDF], # TSK_06 + 0x121: [0xE9, 0x65, 0xAE, 0x6B, 0x7B, 0x35, 0xE5, 0x5F, + 0x4E, 0xC7, 0x86, 0xA2, 0xBB, 0xDD, 0xEB, 0xB4], # Motor_20 + 0x122: [0x37, 0x7D, 0xF3, 0xA9, 0x18, 0x46, 0x6D, 0x4D, + 0x3D, 0x71, 0x92, 0x9C, 0xE5, 0x32, 0x10, 0xB9], # ACC_06 + 0x126: [0xDA] * 16, # HCA_01 + 0x12B: [0x6A, 0x38, 0xB4, 0x27, 0x22, 0xEF, 0xE1, 0xBB, + 0xF8, 0x80, 0x84, 0x49, 0xC7, 0x9E, 0x1E, 0x2B], # GRA_ACC_01 + 0x12E: [0xF8, 0xE5, 0x97, 0xC9, 0xD6, 0x07, 0x47, 0x21, + 0x66, 0xDD, 0xCF, 0x6F, 0xA1, 0x94, 0x74, 0x63], # ACC_07 + 0x139: [0xED, 0x03, 0x1C, 0x13, 0xC6, 0x23, 0x78, 0x7A, + 0x8B, 0x40, 0x14, 0x51, 0xBF, 0x68, 0x32, 0xBA], # VMM_02 + 0x13D: [0x20, 0xCA, 0x68, 0xD5, 0x1B, 0x31, 0xE2, 0xDA, + 0x08, 0x0A, 0xD4, 0xDE, 0x9C, 0xE4, 0x35, 0x5B], # QFK_01 + 0x14C: [0x16, 0x35, 0x59, 0x15, 0x9A, 0x2A, 0x97, 0xB8, + 0x0E, 0x4E, 0x30, 0xCC, 0xB3, 0x07, 0x01, 0xAD], # Motor_54 + 0x14D: [0x1A, 0x65, 0x81, 0x96, 0xC0, 0xDF, 0x11, 0x92, + 0xD3, 0x61, 0xC6, 0x95, 0x8C, 0x29, 0x21, 0xB5], # ACC_18 + 0x187: [0x7F, 0xED, 0x17, 0xC2, 0x7C, 0xEB, 0x44, 0x21, + 0x01, 0xFA, 0xDB, 0x15, 0x4A, 0x6B, 0x23, 0x05], # Motor_EV_01 + 0x1A4: [0x69, 0xBB, 0x54, 0xE6, 0x4E, 0x46, 0x8D, 0x7B, + 0xEA, 0x87, 0xE9, 0xB3, 0x63, 0xCE, 0xF8, 0xBF], # EA_01 + 0x1AB: [0x13, 0x21, 0x9B, 0x6A, 0x9A, 0x62, 0xD4, 0x65, + 0x18, 0xF1, 0xAB, 0x16, 0x32, 0x89, 0xE7, 0x26], # ESP_33 + 0x1F0: [0x2F, 0x3C, 0x22, 0x60, 0x18, 0xEB, 0x63, 0x76, + 0xC5, 0x91, 0x0F, 0x27, 0x34, 0x04, 0x7F, 0x02], # EA_02 + 0x20A: [0x9D, 0xE8, 0x36, 0xA1, 0xCA, 0x3B, 0x1D, 0x33, + 0xE0, 0xD5, 0xBB, 0x5F, 0xAE, 0x3C, 0x31, 0x9F], # EML_06 + 0x26B: [0xCE, 0xCC, 0xBD, 0x69, 0xA1, 0x3C, 0x18, 0x76, + 0x0F, 0x04, 0xF2, 0x3A, 0x93, 0x24, 0x19, 0x51], # TA_01 + 0x30C: [0x0F] * 16, # ACC_02 + 0x30F: [0x0C] * 16, # SWA_01 + 0x324: [0x27] * 16, # ACC_04 + 0x3BE: [0x1F, 0x28, 0xC6, 0x85, 0xE6, 0xF8, 0xB0, 0x19, + 0x5B, 0x64, 0x35, 0x21, 0xE4, 0xF7, 0x9C, 0x24], # Motor_14 + 0x3C0: [0xC3] * 16, # Klemmen_Status_01 + 0x3D5: [0xC5, 0x39, 0xC7, 0xF9, 0x92, 0xD8, 0x24, 0xCE, + 0xF1, 0xB5, 0x7A, 0xC4, 0xBC, 0x60, 0xE3, 0xD1], # Licht_Anf_01 + 0x65D: [0xAC, 0xB3, 0xAB, 0xEB, 0x7A, 0xE1, 0x3B, 0xF7, + 0x73, 0xBA, 0x7C, 0x9E, 0x06, 0x5F, 0x02, 0xD9], # ESP_20 +} diff --git a/opendbc_repo/opendbc/car/volkswagen/pqcan.py b/opendbc_repo/opendbc/car/volkswagen/pqcan.py new file mode 100644 index 0000000000..a2f8a8b962 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/pqcan.py @@ -0,0 +1,105 @@ +def create_steering_control(packer, bus, apply_torque, lkas_enabled): + values = { + "LM_Offset": abs(apply_torque), + "LM_OffSign": 1 if apply_torque < 0 else 0, + "HCA_Status": 5 if (lkas_enabled and apply_torque != 0) else 3, + "Vib_Freq": 16, + } + + return packer.make_can_msg("HCA_1", bus, values) + + +def create_lka_hud_control(packer, bus, ldw_stock_values, lat_active, steering_pressed, hud_alert, hud_control): + values = {} + if len(ldw_stock_values): + values = {s: ldw_stock_values[s] for s in [ + "LDW_SW_Warnung_links", # Blind spot in warning mode on left side due to lane departure + "LDW_SW_Warnung_rechts", # Blind spot in warning mode on right side due to lane departure + "LDW_Seite_DLCTLC", # Direction of most likely lane departure (left or right) + "LDW_DLC", # Lane departure, distance to line crossing + "LDW_TLC", # Lane departure, time to line crossing + ]} + + values.update({ + "LDW_Lampe_gelb": 1 if lat_active and steering_pressed else 0, + "LDW_Lampe_gruen": 1 if lat_active and not steering_pressed else 0, + "LDW_Lernmodus_links": 3 if hud_control.leftLaneDepart else 1 + hud_control.leftLaneVisible, + "LDW_Lernmodus_rechts": 3 if hud_control.rightLaneDepart else 1 + hud_control.rightLaneVisible, + "LDW_Textbits": hud_alert, + }) + + return packer.make_can_msg("LDW_Status", bus, values) + + +def create_acc_buttons_control(packer, bus, gra_stock_values, cancel=False, resume=False): + values = {s: gra_stock_values[s] for s in [ + "GRA_Hauptschalt", # ACC button, on/off + "GRA_Typ_Hauptschalt", # ACC button, momentary vs latching + "GRA_Kodierinfo", # ACC button, configuration + "GRA_Sender", # ACC button, CAN message originator + ]} + + values.update({ + "COUNTER": (gra_stock_values["COUNTER"] + 1) % 16, + "GRA_Abbrechen": cancel, + "GRA_Recall": resume, + }) + + return packer.make_can_msg("GRA_Neu", bus, values) + + +def acc_control_value(main_switch_on, acc_faulted, long_active): + if long_active: + acc_control = 1 + elif main_switch_on: + acc_control = 2 + else: + acc_control = 0 + + return acc_control + + +def acc_hud_status_value(main_switch_on, acc_faulted, long_active): + if acc_faulted: + hud_status = 6 + elif long_active: + hud_status = 3 + elif main_switch_on: + hud_status = 2 + else: + hud_status = 0 + + return hud_status + + +def create_acc_accel_control(packer, bus, acc_type, acc_enabled, accel, acc_control, stopping, starting, esp_hold): + commands = [] + + values = { + "ACS_Sta_ADR": acc_control, + "ACS_StSt_Info": acc_enabled, + "ACS_Typ_ACC": acc_type, + "ACS_Anhaltewunsch": acc_type == 1 and stopping, + "ACS_FreigSollB": acc_enabled, + "ACS_Sollbeschl": accel if acc_enabled else 3.01, + "ACS_zul_Regelabw": 0.2 if acc_enabled else 1.27, + "ACS_max_AendGrad": 3.0 if acc_enabled else 5.08, + } + + commands.append(packer.make_can_msg("ACC_System", bus, values)) + + return commands + + +def create_acc_hud_control(packer, bus, acc_hud_status, set_speed, lead_distance, distance): + values = { + "ACA_StaACC": acc_hud_status, + "ACA_Zeitluecke": distance + 2, + "ACA_V_Wunsch": set_speed, + "ACA_gemZeitl": lead_distance, + "ACA_PrioDisp": 3, + # TODO: restore dynamic pop-to-foreground/highlight behavior with ACA_PrioDisp and ACA_AnzDisplay + # TODO: ACA_kmh_mph handling probably needed to resolve rounding errors in displayed setpoint + } + + return packer.make_can_msg("ACC_GRA_Anzeige", bus, values) diff --git a/opendbc_repo/opendbc/car/volkswagen/tests/__init__.py b/opendbc_repo/opendbc/car/volkswagen/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py b/opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py new file mode 100644 index 0000000000..cc046e5720 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/tests/test_volkswagen.py @@ -0,0 +1,60 @@ +import random +import re + +from opendbc.car.structs import CarParams +from opendbc.car.volkswagen.values import CAR, FW_QUERY_CONFIG, WMI +from opendbc.car.volkswagen.fingerprints import FW_VERSIONS + +Ecu = CarParams.Ecu + +CHASSIS_CODE_PATTERN = re.compile('[A-Z0-9]{2}') +# TODO: determine the unknown groups +SPARE_PART_FW_PATTERN = re.compile(b'\xf1\x87(?P[0-9][0-9A-Z]{2})(?P[0-9][0-9A-Z][0-9])(?P[0-9A-Z]{2}[0-9])([A-Z0-9]| )') + + +class TestVolkswagenPlatformConfigs: + def test_spare_part_fw_pattern(self, subtests): + # Relied on for determining if a FW is likely VW + for platform, ecus in FW_VERSIONS.items(): + with subtests.test(platform=platform.value): + for fws in ecus.values(): + for fw in fws: + assert SPARE_PART_FW_PATTERN.match(fw) is not None, f"Bad FW: {fw}" + + def test_chassis_codes(self, subtests): + for platform in CAR: + with subtests.test(platform=platform.value): + assert len(platform.config.wmis) > 0, "WMIs not set" + assert len(platform.config.chassis_codes) > 0, "Chassis codes not set" + assert all(CHASSIS_CODE_PATTERN.match(cc) for cc in \ + platform.config.chassis_codes), "Bad chassis codes" + + # No two platforms should share chassis codes + for comp in CAR: + if platform == comp: + continue + assert set() == platform.config.chassis_codes & comp.config.chassis_codes, \ + f"Shared chassis codes: {comp}" + + def test_custom_fuzzy_fingerprinting(self, subtests): + all_radar_fw = list({fw for ecus in FW_VERSIONS.values() for fw in ecus[Ecu.fwdRadar, 0x757, None]}) + + for platform in CAR: + with subtests.test(platform=platform.name): + for wmi in WMI: + for chassis_code in platform.config.chassis_codes | {"00"}: + vin = ["0"] * 17 + vin[0:3] = wmi + vin[6:8] = chassis_code + vin = "".join(vin) + + # Check a few FW cases - expected, unexpected + for radar_fw in random.sample(all_radar_fw, 5) + [b'\xf1\x875Q0907572G \xf1\x890571', b'\xf1\x877H9907572AA\xf1\x890396']: + should_match = ((wmi in platform.config.wmis and chassis_code in platform.config.chassis_codes) and + radar_fw in all_radar_fw) + + live_fws = {(0x757, None): [radar_fw]} + matches = FW_QUERY_CONFIG.match_fw_to_car_fuzzy(live_fws, vin, FW_VERSIONS) + + expected_matches = {platform} if should_match else set() + assert expected_matches == matches, "Bad match" diff --git a/opendbc_repo/opendbc/car/volkswagen/values.py b/opendbc_repo/opendbc/car/volkswagen/values.py new file mode 100644 index 0000000000..3842aa40b2 --- /dev/null +++ b/opendbc_repo/opendbc/car/volkswagen/values.py @@ -0,0 +1,528 @@ +from collections import defaultdict, namedtuple +from dataclasses import dataclass, field +from enum import Enum, IntFlag, StrEnum + +from opendbc.car import Bus, CarSpecs, DbcDict, PlatformConfig, Platforms, structs, uds +from opendbc.can import CANDefine +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column, \ + Device +from opendbc.car.fw_query_definitions import EcuAddrSubAddr, FwQueryConfig, Request, p16 +from opendbc.car.vin import Vin + +Ecu = structs.CarParams.Ecu +NetworkLocation = structs.CarParams.NetworkLocation +TransmissionType = structs.CarParams.TransmissionType +GearShifter = structs.CarState.GearShifter +Button = namedtuple('Button', ['event_type', 'can_addr', 'can_msg', 'values']) + + +class CarControllerParams: + STEER_STEP = 2 # HCA_01/HCA_1 message frequency 50Hz + ACC_CONTROL_STEP = 2 # ACC_06/ACC_07/ACC_System frequency 50Hz + AEB_CONTROL_STEP = 2 # ACC_10 frequency 50Hz + AEB_HUD_STEP = 20 # ACC_15 frequency 5Hz + + # Documented lateral limits: 3.00 Nm max, rate of change 5.00 Nm/sec. + # MQB vs PQ maximums are shared, but rate-of-change limited differently + # based on safety requirements driven by lateral accel testing. + + STEER_MAX = 300 # Max heading control assist torque 3.00 Nm + STEER_DRIVER_MULTIPLIER = 3 # weight driver torque heavily + STEER_DRIVER_FACTOR = 1 # from dbc + + STEER_TIME_MAX = 360 # Max time that EPS allows uninterrupted HCA steering control + STEER_TIME_ALERT = STEER_TIME_MAX - 10 # If mitigation fails, time to soft disengage before EPS timer expires + STEER_TIME_STUCK_TORQUE = 1.9 # EPS limits same torque to 6 seconds, reset timer 3x within that period + + DEFAULT_MIN_STEER_SPEED = 0.4 # m/s, newer EPS racks fault below this speed, don't show a low speed alert + + ACCEL_MAX = 2.0 # 2.0 m/s max acceleration + ACCEL_MIN = -3.5 # 3.5 m/s max deceleration + + def __init__(self, CP): + can_define = CANDefine(DBC[CP.carFingerprint][Bus.pt]) + + if CP.flags & VolkswagenFlags.PQ: + self.LDW_STEP = 5 # LDW_1 message frequency 20Hz + self.ACC_HUD_STEP = 4 # ACC_GRA_Anzeige frequency 25Hz + self.STEER_DRIVER_ALLOWANCE = 80 # Driver intervention threshold 0.8 Nm + self.STEER_DELTA_UP = 6 # Max HCA reached in 1.00s (STEER_MAX / (50Hz * 1.00)) + self.STEER_DELTA_DOWN = 10 # Min HCA reached in 0.60s (STEER_MAX / (50Hz * 0.60)) + + if CP.transmissionType == TransmissionType.automatic: + self.shifter_values = can_define.dv["Getriebe_1"]["Waehlhebelposition__Getriebe_1_"] + self.hca_status_values = can_define.dv["Lenkhilfe_2"]["LH2_Sta_HCA"] + + self.BUTTONS = [ + Button(structs.CarState.ButtonEvent.Type.setCruise, "GRA_Neu", "GRA_Neu_Setzen", [1]), + Button(structs.CarState.ButtonEvent.Type.resumeCruise, "GRA_Neu", "GRA_Recall", [1]), + Button(structs.CarState.ButtonEvent.Type.accelCruise, "GRA_Neu", "GRA_Up_kurz", [1]), + Button(structs.CarState.ButtonEvent.Type.decelCruise, "GRA_Neu", "GRA_Down_kurz", [1]), + Button(structs.CarState.ButtonEvent.Type.cancel, "GRA_Neu", "GRA_Abbrechen", [1]), + Button(structs.CarState.ButtonEvent.Type.gapAdjustCruise, "GRA_Neu", "GRA_Zeitluecke", [1]), + ] + + self.LDW_MESSAGES = { + "none": 0, # Nothing to display + "laneAssistUnavail": 1, # "Lane Assist currently not available." + "laneAssistUnavailSysError": 2, # "Lane Assist system error" + "laneAssistUnavailNoSensorView": 3, # "Lane Assist not available. No sensor view." + "laneAssistTakeOver": 4, # "Lane Assist: Please Take Over Steering" + "laneAssistDeactivTrailer": 5, # "Lane Assist: no function with trailer" + } + + else: + self.LDW_STEP = 10 # LDW_02 message frequency 10Hz + self.ACC_HUD_STEP = 6 # ACC_02 message frequency 16Hz + self.STEER_DRIVER_ALLOWANCE = 80 # Driver intervention threshold 0.8 Nm + self.STEER_DELTA_UP = 4 # Max HCA reached in 1.50s (STEER_MAX / (50Hz * 1.50)) + self.STEER_DELTA_DOWN = 10 # Min HCA reached in 0.60s (STEER_MAX / (50Hz * 0.60)) + + if CP.transmissionType == TransmissionType.automatic: + self.shifter_values = can_define.dv["Gateway_73"]["GE_Fahrstufe"] + elif CP.transmissionType == TransmissionType.direct: + self.shifter_values = can_define.dv["Motor_EV_01"]["MO_Waehlpos"] + self.hca_status_values = can_define.dv["LH_EPS_03"]["EPS_HCA_Status"] + + self.BUTTONS = [ + Button(structs.CarState.ButtonEvent.Type.setCruise, "GRA_ACC_01", "GRA_Tip_Setzen", [1]), + Button(structs.CarState.ButtonEvent.Type.resumeCruise, "GRA_ACC_01", "GRA_Tip_Wiederaufnahme", [1]), + Button(structs.CarState.ButtonEvent.Type.accelCruise, "GRA_ACC_01", "GRA_Tip_Hoch", [1]), + Button(structs.CarState.ButtonEvent.Type.decelCruise, "GRA_ACC_01", "GRA_Tip_Runter", [1]), + Button(structs.CarState.ButtonEvent.Type.cancel, "GRA_ACC_01", "GRA_Abbrechen", [1]), + Button(structs.CarState.ButtonEvent.Type.gapAdjustCruise, "GRA_ACC_01", "GRA_Verstellung_Zeitluecke", [1]), + ] + + self.LDW_MESSAGES = { + "none": 0, # Nothing to display + "laneAssistUnavailChime": 1, # "Lane Assist currently not available." with chime + "laneAssistUnavailNoSensorChime": 3, # "Lane Assist not available. No sensor view." with chime + "laneAssistTakeOverUrgent": 4, # "Lane Assist: Please Take Over Steering" with urgent beep + "emergencyAssistUrgent": 6, # "Emergency Assist: Please Take Over Steering" with urgent beep + "laneAssistTakeOverChime": 7, # "Lane Assist: Please Take Over Steering" with chime + "laneAssistTakeOver": 8, # "Lane Assist: Please Take Over Steering" silent + "emergencyAssistChangingLanes": 9, # "Emergency Assist: Changing lanes..." with urgent beep + "laneAssistDeactivated": 10, # "Lane Assist deactivated." silent with persistent icon afterward + } + + +class CANBUS: + pt = 0 + cam = 2 + + +class WMI(StrEnum): + VOLKSWAGEN_USA_SUV = "1V2" + VOLKSWAGEN_USA_CAR = "1VW" + VOLKSWAGEN_MEXICO_SUV = "3VV" + VOLKSWAGEN_MEXICO_CAR = "3VW" + VOLKSWAGEN_ARGENTINA = "8AW" + VOLKSWAGEN_BRASIL = "9BW" + SAIC_VOLKSWAGEN = "LSV" + SKODA = "TMB" + SEAT = "VSS" + AUDI_EUROPE_MPV = "WA1" + AUDI_GERMANY_CAR = "WAU" + MAN = "WMA" + AUDI_SPORT = "WUA" + VOLKSWAGEN_COMMERCIAL = "WV1" + VOLKSWAGEN_COMMERCIAL_BUS_VAN = "WV2" + VOLKSWAGEN_EUROPE_SUV = "WVG" + VOLKSWAGEN_EUROPE_CAR = "WVW" + VOLKSWAGEN_GROUP_RUS = "XW8" + + +class VolkswagenSafetyFlags(IntFlag): + LONG_CONTROL = 1 + + +class VolkswagenFlags(IntFlag): + # Detected flags + STOCK_HCA_PRESENT = 1 + + # Static flags + PQ = 2 + + +@dataclass +class VolkswagenMQBPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'vw_mqb'}) + # Volkswagen uses the VIN WMI and chassis code to match in the absence of the comma power + # on camera-integrated cars, as we lose too many ECUs to reliably identify the vehicle + chassis_codes: set[str] = field(default_factory=set) + wmis: set[WMI] = field(default_factory=set) + + +@dataclass +class VolkswagenPQPlatformConfig(VolkswagenMQBPlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {Bus.pt: 'vw_pq'}) + + def init(self): + self.flags |= VolkswagenFlags.PQ + + +@dataclass(frozen=True, kw_only=True) +class VolkswagenCarSpecs(CarSpecs): + centerToFrontRatio: float = 0.45 + steerRatio: float = 15.6 + minSteerSpeed: float = CarControllerParams.DEFAULT_MIN_STEER_SPEED + + +class Footnote(Enum): + KAMIQ = CarFootnote( + "Not including the China market Kamiq, which is based on the (currently) unsupported PQ34 platform.", + Column.MODEL) + PASSAT = CarFootnote( + "Refers only to the MQB-based European B8 Passat, not the NMS Passat in the USA/China/Mideast markets.", + Column.MODEL) + SKODA_HEATED_WINDSHIELD = CarFootnote( + "Some Škoda vehicles are equipped with heated windshields, which are known " + + "to block GPS signal needed for some comma 3X functionality.", + Column.MODEL) + VW_EXP_LONG = CarFootnote( + "Only available for vehicles using a gateway (J533) harness. At this time, vehicles using a camera harness " + + "are limited to using stock ACC.", + Column.LONGITUDINAL, docs_only=True) + VW_MQB_A0 = CarFootnote( + "Model-years 2022 and beyond may have a combined CAN gateway and BCM, which is supported by openpilot " + + "in software, but doesn't yet have a harness available from the comma store.", + Column.HARDWARE) + + +@dataclass +class VWCarDocs(CarDocs): + package: str = "Adaptive Cruise Control (ACC) & Lane Assist" + car_parts: CarParts = field(default_factory=CarParts.common([CarHarness.vw_j533])) + + def init_make(self, CP: structs.CarParams): + self.footnotes.append(Footnote.VW_EXP_LONG) + if "SKODA" in CP.carFingerprint: + self.footnotes.append(Footnote.SKODA_HEATED_WINDSHIELD) + + if CP.carFingerprint in (CAR.VOLKSWAGEN_CRAFTER_MK2, CAR.VOLKSWAGEN_TRANSPORTER_T61): + self.car_parts = CarParts([Device.threex_angled_mount, CarHarness.vw_j533]) + + if abs(CP.minSteerSpeed - CarControllerParams.DEFAULT_MIN_STEER_SPEED) < 1e-3: + self.min_steer_speed = 0 + + +# Check the 7th and 8th characters of the VIN before adding a new CAR. If the +# chassis code is already listed below, don't add a new CAR, just add to the +# FW_VERSIONS for that existing CAR. + +class CAR(Platforms): + config: VolkswagenMQBPlatformConfig | VolkswagenPQPlatformConfig + + VOLKSWAGEN_ARTEON_MK1 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Arteon 2018-23", video="https://youtu.be/FAomFKPFlDA"), + VWCarDocs("Volkswagen Arteon R 2020-23", video="https://youtu.be/FAomFKPFlDA"), + VWCarDocs("Volkswagen Arteon eHybrid 2020-23", video="https://youtu.be/FAomFKPFlDA"), + VWCarDocs("Volkswagen Arteon Shooting Brake 2020-23", video="https://youtu.be/FAomFKPFlDA"), + VWCarDocs("Volkswagen CC 2018-22", video="https://youtu.be/FAomFKPFlDA"), + ], + VolkswagenCarSpecs(mass=1733, wheelbase=2.84), + chassis_codes={"AN", "3H"}, + wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, + ) + VOLKSWAGEN_ATLAS_MK1 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Atlas 2018-23"), + VWCarDocs("Volkswagen Atlas Cross Sport 2020-22"), + VWCarDocs("Volkswagen Teramont 2018-22"), + VWCarDocs("Volkswagen Teramont Cross Sport 2021-22"), + VWCarDocs("Volkswagen Teramont X 2021-22"), + ], + VolkswagenCarSpecs(mass=2011, wheelbase=2.98), + chassis_codes={"CA"}, + wmis={WMI.VOLKSWAGEN_USA_SUV, WMI.VOLKSWAGEN_EUROPE_SUV}, + ) + VOLKSWAGEN_CADDY_MK3 = VolkswagenPQPlatformConfig( + [ + VWCarDocs("Volkswagen Caddy 2019"), + VWCarDocs("Volkswagen Caddy Maxi 2019"), + ], + VolkswagenCarSpecs(mass=1613, wheelbase=2.6, minSteerSpeed=21 * CV.KPH_TO_MS), + chassis_codes={"2K"}, + wmis={WMI.VOLKSWAGEN_COMMERCIAL_BUS_VAN}, + ) + VOLKSWAGEN_CRAFTER_MK2 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Crafter 2017-24", video="https://youtu.be/4100gLeabmo"), + VWCarDocs("Volkswagen e-Crafter 2018-24", video="https://youtu.be/4100gLeabmo"), + VWCarDocs("Volkswagen Grand California 2019-24", video="https://youtu.be/4100gLeabmo"), + VWCarDocs("MAN TGE 2017-24", video="https://youtu.be/4100gLeabmo"), + VWCarDocs("MAN eTGE 2020-24", video="https://youtu.be/4100gLeabmo"), + ], + VolkswagenCarSpecs(mass=2100, wheelbase=3.64, minSteerSpeed=50 * CV.KPH_TO_MS), + chassis_codes={"SY", "SZ", "UY", "UZ"}, + wmis={WMI.VOLKSWAGEN_COMMERCIAL, WMI.MAN}, + ) + VOLKSWAGEN_GOLF_MK7 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen e-Golf 2014-20"), + VWCarDocs("Volkswagen Golf 2015-20", auto_resume=False), + VWCarDocs("Volkswagen Golf Alltrack 2015-19", auto_resume=False), + VWCarDocs("Volkswagen Golf GTD 2015-20"), + VWCarDocs("Volkswagen Golf GTE 2015-20"), + VWCarDocs("Volkswagen Golf GTI 2015-21", auto_resume=False), + VWCarDocs("Volkswagen Golf R 2015-19"), + VWCarDocs("Volkswagen Golf SportsVan 2015-20"), + ], + VolkswagenCarSpecs(mass=1397, wheelbase=2.62), + chassis_codes={"5G", "AU", "BA", "BE"}, + wmis={WMI.VOLKSWAGEN_MEXICO_CAR, WMI.VOLKSWAGEN_EUROPE_CAR}, + ) + VOLKSWAGEN_JETTA_MK6 = VolkswagenPQPlatformConfig( + [VWCarDocs("Volkswagen Jetta 2015-18")], + VolkswagenCarSpecs(mass=1518, wheelbase=2.65, minSteerSpeed=50 * CV.KPH_TO_MS, minEnableSpeed=20 * CV.KPH_TO_MS), + chassis_codes={"5K", "AJ"}, + wmis={WMI.VOLKSWAGEN_MEXICO_CAR}, + ) + VOLKSWAGEN_JETTA_MK7 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Jetta 2018-23"), + VWCarDocs("Volkswagen Jetta GLI 2021-23"), + ], + VolkswagenCarSpecs(mass=1328, wheelbase=2.71), + chassis_codes={"BU"}, + wmis={WMI.VOLKSWAGEN_MEXICO_CAR, WMI.VOLKSWAGEN_EUROPE_CAR}, + ) + VOLKSWAGEN_PASSAT_MK8 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Passat 2015-22", footnotes=[Footnote.PASSAT]), + VWCarDocs("Volkswagen Passat Alltrack 2015-22"), + VWCarDocs("Volkswagen Passat GTE 2015-22"), + ], + VolkswagenCarSpecs(mass=1551, wheelbase=2.79), + chassis_codes={"3C", "3G"}, + wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, + ) + VOLKSWAGEN_PASSAT_NMS = VolkswagenPQPlatformConfig( + [VWCarDocs("Volkswagen Passat NMS 2017-22")], + VolkswagenCarSpecs(mass=1503, wheelbase=2.80, minSteerSpeed=50 * CV.KPH_TO_MS, minEnableSpeed=20 * CV.KPH_TO_MS), + chassis_codes={"A3"}, + wmis={WMI.VOLKSWAGEN_USA_CAR}, + ) + VOLKSWAGEN_POLO_MK6 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Polo 2018-23", footnotes=[Footnote.VW_MQB_A0]), + VWCarDocs("Volkswagen Polo GTI 2018-23", footnotes=[Footnote.VW_MQB_A0]), + ], + VolkswagenCarSpecs(mass=1230, wheelbase=2.55), + chassis_codes={"AW"}, + wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, + ) + VOLKSWAGEN_SHARAN_MK2 = VolkswagenPQPlatformConfig( + [ + VWCarDocs("Volkswagen Sharan 2018-22"), + VWCarDocs("SEAT Alhambra 2018-20"), + ], + VolkswagenCarSpecs(mass=1639, wheelbase=2.92, minSteerSpeed=50 * CV.KPH_TO_MS), + chassis_codes={"7N"}, + wmis={WMI.VOLKSWAGEN_EUROPE_CAR}, + ) + VOLKSWAGEN_TAOS_MK1 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Volkswagen Taos 2022-23")], + VolkswagenCarSpecs(mass=1498, wheelbase=2.69), + chassis_codes={"B2"}, + wmis={WMI.VOLKSWAGEN_MEXICO_SUV, WMI.VOLKSWAGEN_ARGENTINA}, + ) + VOLKSWAGEN_TCROSS_MK1 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Volkswagen T-Cross 2021", footnotes=[Footnote.VW_MQB_A0])], + VolkswagenCarSpecs(mass=1150, wheelbase=2.60), + chassis_codes={"C1"}, + wmis={WMI.VOLKSWAGEN_EUROPE_SUV}, + ) + VOLKSWAGEN_TIGUAN_MK2 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Tiguan 2018-23"), + VWCarDocs("Volkswagen Tiguan eHybrid 2021-23"), + ], + VolkswagenCarSpecs(mass=1715, wheelbase=2.74), + chassis_codes={"5N", "AD", "AX", "BW"}, + wmis={WMI.VOLKSWAGEN_EUROPE_SUV, WMI.VOLKSWAGEN_MEXICO_SUV}, + ) + VOLKSWAGEN_TOURAN_MK2 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Volkswagen Touran 2016-23")], + VolkswagenCarSpecs(mass=1516, wheelbase=2.79), + chassis_codes={"1T"}, + wmis={WMI.VOLKSWAGEN_EUROPE_SUV}, + ) + VOLKSWAGEN_TRANSPORTER_T61 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Volkswagen Caravelle 2020"), + VWCarDocs("Volkswagen California 2021-23"), + ], + VolkswagenCarSpecs(mass=1926, wheelbase=3.00, minSteerSpeed=14.0), + chassis_codes={"7H", "7L"}, + wmis={WMI.VOLKSWAGEN_COMMERCIAL_BUS_VAN}, + ) + VOLKSWAGEN_TROC_MK1 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Volkswagen T-Roc 2018-23")], + VolkswagenCarSpecs(mass=1413, wheelbase=2.63), + chassis_codes={"A1"}, + wmis={WMI.VOLKSWAGEN_EUROPE_SUV}, + ) + AUDI_A3_MK3 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Audi A3 2014-19"), + VWCarDocs("Audi A3 Sportback e-tron 2017-18"), + VWCarDocs("Audi RS3 2018"), + VWCarDocs("Audi S3 2015-17"), + ], + VolkswagenCarSpecs(mass=1335, wheelbase=2.61), + chassis_codes={"8V", "FF"}, + wmis={WMI.AUDI_GERMANY_CAR, WMI.AUDI_SPORT}, + ) + AUDI_Q2_MK1 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Audi Q2 2018")], + VolkswagenCarSpecs(mass=1205, wheelbase=2.61), + chassis_codes={"GA"}, + wmis={WMI.AUDI_GERMANY_CAR}, + ) + AUDI_Q3_MK2 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Audi Q3 2019-23")], + VolkswagenCarSpecs(mass=1623, wheelbase=2.68), + chassis_codes={"8U", "F3", "FS"}, + wmis={WMI.AUDI_EUROPE_MPV, WMI.AUDI_GERMANY_CAR}, + ) + SEAT_ATECA_MK1 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("CUPRA Ateca 2018-23"), + VWCarDocs("SEAT Ateca 2016-23"), + VWCarDocs("SEAT Leon 2014-20"), + ], + VolkswagenCarSpecs(mass=1300, wheelbase=2.64), + chassis_codes={"5F"}, + wmis={WMI.SEAT}, + ) + SKODA_FABIA_MK4 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Škoda Fabia 2022-23", footnotes=[Footnote.VW_MQB_A0])], + VolkswagenCarSpecs(mass=1266, wheelbase=2.56), + chassis_codes={"PJ"}, + wmis={WMI.SKODA}, + ) + SKODA_KAMIQ_MK1 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Škoda Kamiq 2021-23", footnotes=[Footnote.VW_MQB_A0, Footnote.KAMIQ]), + VWCarDocs("Škoda Scala 2020-23", footnotes=[Footnote.VW_MQB_A0]), + ], + VolkswagenCarSpecs(mass=1230, wheelbase=2.66), + chassis_codes={"NW"}, + wmis={WMI.SKODA}, + ) + SKODA_KAROQ_MK1 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Škoda Karoq 2019-23")], + VolkswagenCarSpecs(mass=1278, wheelbase=2.66), + chassis_codes={"NU"}, + wmis={WMI.SKODA}, + ) + SKODA_KODIAQ_MK1 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Škoda Kodiaq 2017-23")], + VolkswagenCarSpecs(mass=1569, wheelbase=2.79), + chassis_codes={"NS"}, + wmis={WMI.SKODA, WMI.VOLKSWAGEN_GROUP_RUS}, + ) + SKODA_OCTAVIA_MK3 = VolkswagenMQBPlatformConfig( + [ + VWCarDocs("Škoda Octavia 2015-19"), + VWCarDocs("Škoda Octavia RS 2016"), + VWCarDocs("Škoda Octavia Scout 2017-19"), + ], + VolkswagenCarSpecs(mass=1388, wheelbase=2.68), + chassis_codes={"NE"}, + wmis={WMI.SKODA}, + ) + SKODA_SUPERB_MK3 = VolkswagenMQBPlatformConfig( + [VWCarDocs("Škoda Superb 2015-22")], + VolkswagenCarSpecs(mass=1505, wheelbase=2.84), + chassis_codes={"3V", "NP"}, + wmis={WMI.SKODA}, + ) + + +def match_fw_to_car_fuzzy(live_fw_versions, vin, offline_fw_versions) -> set[str]: + candidates = set() + + # Compile all FW versions for each ECU + all_ecu_versions: dict[EcuAddrSubAddr, set[str]] = defaultdict(set) + for ecus in offline_fw_versions.values(): + for ecu, versions in ecus.items(): + all_ecu_versions[ecu] |= set(versions) + + # Check the WMI and chassis code to determine the platform + # https://www.clubvw.org.au/vwreference/vwvin + vin_obj = Vin(vin) + chassis_code = vin_obj.vds[3:5] + + for platform in CAR: + valid_ecus = set() + for ecu in offline_fw_versions[platform]: + addr = ecu[1:] + if ecu[0] not in CHECK_FUZZY_ECUS: + continue + + # Sanity check that live FW is in the superset of all FW, Volkswagen ECU part numbers are commonly shared + found_versions = live_fw_versions.get(addr, []) + expected_versions = all_ecu_versions[ecu] + if not any(found_version in expected_versions for found_version in found_versions): + break + + valid_ecus.add(ecu[0]) + + if valid_ecus != CHECK_FUZZY_ECUS: + continue + + if vin_obj.wmi in platform.config.wmis and chassis_code in platform.config.chassis_codes: + candidates.add(platform) + + return {str(c) for c in candidates} + + +# These ECUs are required to match to gain a VIN match +# TODO: do we want to check camera when we add its FW? +CHECK_FUZZY_ECUS = {Ecu.fwdRadar} + +# All supported cars should return FW from the engine, srs, eps, and fwdRadar. Cars +# with a manual trans won't return transmission firmware, but all other cars will. +# +# The 0xF187 SW part number query should return in the form of N[NX][NX] NNN NNN [X[X]], +# where N=number, X=letter, and the trailing two letters are optional. Performance +# tuners sometimes tamper with that field (e.g. 8V0 9C0 BB0 1 from COBB/EQT). Tampered +# ECU SW part numbers are invalid for vehicle ID and compatibility checks. Try to have +# them repaired by the tuner before including them in openpilot. + +VOLKSWAGEN_VERSION_REQUEST_MULTI = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER]) + \ + p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_SPARE_PART_NUMBER) + \ + p16(uds.DATA_IDENTIFIER_TYPE.VEHICLE_MANUFACTURER_ECU_SOFTWARE_VERSION_NUMBER) + \ + p16(uds.DATA_IDENTIFIER_TYPE.APPLICATION_DATA_IDENTIFICATION) +VOLKSWAGEN_VERSION_RESPONSE = bytes([uds.SERVICE_TYPE.READ_DATA_BY_IDENTIFIER + 0x40]) + +VOLKSWAGEN_RX_OFFSET = 0x6a + +FW_QUERY_CONFIG = FwQueryConfig( + requests=[request for bus, obd_multiplexing in [(1, True), (1, False), (0, False)] for request in [ + Request( + [VOLKSWAGEN_VERSION_REQUEST_MULTI], + [VOLKSWAGEN_VERSION_RESPONSE], + whitelist_ecus=[Ecu.srs, Ecu.eps, Ecu.fwdRadar, Ecu.fwdCamera], + rx_offset=VOLKSWAGEN_RX_OFFSET, + bus=bus, + obd_multiplexing=obd_multiplexing, + ), + Request( + [VOLKSWAGEN_VERSION_REQUEST_MULTI], + [VOLKSWAGEN_VERSION_RESPONSE], + whitelist_ecus=[Ecu.engine, Ecu.transmission], + bus=bus, + obd_multiplexing=obd_multiplexing, + ), + ]], + non_essential_ecus={Ecu.eps: list(CAR)}, + extra_ecus=[(Ecu.fwdCamera, 0x74f, None)], + match_fw_to_car_fuzzy=match_fw_to_car_fuzzy, +) + +DBC = CAR.create_dbc_map() diff --git a/opendbc_repo/opendbc/car/xcp.py b/opendbc_repo/opendbc/car/xcp.py new file mode 100644 index 0000000000..c5cf99c77b --- /dev/null +++ b/opendbc_repo/opendbc/car/xcp.py @@ -0,0 +1,258 @@ +import sys +import time +import struct +from enum import IntEnum + +class COMMAND_CODE(IntEnum): + CONNECT = 0xFF + DISCONNECT = 0xFE + GET_STATUS = 0xFD + SYNCH = 0xFC + GET_COMM_MODE_INFO = 0xFB + GET_ID = 0xFA + SET_REQUEST = 0xF9 + GET_SEED = 0xF8 + UNLOCK = 0xF7 + SET_MTA = 0xF6 + UPLOAD = 0xF5 + SHORT_UPLOAD = 0xF4 + BUILD_CHECKSUM = 0xF3 + TRANSPORT_LAYER_CMD = 0xF2 + USER_CMD = 0xF1 + DOWNLOAD = 0xF0 + DOWNLOAD_NEXT = 0xEF + DOWNLOAD_MAX = 0xEE + SHORT_DOWNLOAD = 0xED + MODIFY_BITS = 0xEC + SET_CAL_PAGE = 0xEB + GET_CAL_PAGE = 0xEA + GET_PAG_PROCESSOR_INFO = 0xE9 + GET_SEGMENT_INFO = 0xE8 + GET_PAGE_INFO = 0xE7 + SET_SEGMENT_MODE = 0xE6 + GET_SEGMENT_MODE = 0xE5 + COPY_CAL_PAGE = 0xE4 + CLEAR_DAQ_LIST = 0xE3 + SET_DAQ_PTR = 0xE2 + WRITE_DAQ = 0xE1 + SET_DAQ_LIST_MODE = 0xE0 + GET_DAQ_LIST_MODE = 0xDF + START_STOP_DAQ_LIST = 0xDE + START_STOP_SYNCH = 0xDD + GET_DAQ_CLOCK = 0xDC + READ_DAQ = 0xDB + GET_DAQ_PROCESSOR_INFO = 0xDA + GET_DAQ_RESOLUTION_INFO = 0xD9 + GET_DAQ_LIST_INFO = 0xD8 + GET_DAQ_EVENT_INFO = 0xD7 + FREE_DAQ = 0xD6 + ALLOC_DAQ = 0xD5 + ALLOC_ODT = 0xD4 + ALLOC_ODT_ENTRY = 0xD3 + PROGRAM_START = 0xD2 + PROGRAM_CLEAR = 0xD1 + PROGRAM = 0xD0 + PROGRAM_RESET = 0xCF + GET_PGM_PROCESSOR_INFO = 0xCE + GET_SECTOR_INFO = 0xCD + PROGRAM_PREPARE = 0xCC + PROGRAM_FORMAT = 0xCB + PROGRAM_NEXT = 0xCA + PROGRAM_MAX = 0xC9 + PROGRAM_VERIFY = 0xC8 + +ERROR_CODES = { + 0x00: "Command processor synchronization", + 0x10: "Command was not executed", + 0x11: "Command rejected because DAQ is running", + 0x12: "Command rejected because PGM is running", + 0x20: "Unknown command or not implemented optional command", + 0x21: "Command syntax invalid", + 0x22: "Command syntax valid but command parameter(s) out of range", + 0x23: "The memory location is write protected", + 0x24: "The memory location is not accessible", + 0x25: "Access denied, Seed & Key is required", + 0x26: "Selected page not available", + 0x27: "Selected page mode not available", + 0x28: "Selected segment not valid", + 0x29: "Sequence error", + 0x2A: "DAQ configuration not valid", + 0x30: "Memory overflow error", + 0x31: "Generic error", + 0x32: "The slave internal program verify routine detects an error", +} + +class CONNECT_MODE(IntEnum): + NORMAL = 0x00, + USER_DEFINED = 0x01, + +class GET_ID_REQUEST_TYPE(IntEnum): + ASCII = 0x00, + ASAM_MC2_FILE = 0x01, + ASAM_MC2_PATH = 0x02, + ASAM_MC2_URL = 0x03, + ASAM_MC2_UPLOAD = 0x04, + # 128-255 user defined + +class CommandTimeoutError(Exception): + pass + +class CommandCounterError(Exception): + pass + +class CommandResponseError(Exception): + def __init__(self, message, return_code): + super().__init__() + self.message = message + self.return_code = return_code + + def __str__(self): + return self.message + +class XcpClient: + def __init__(self, panda, tx_addr: int, rx_addr: int, bus: int=0, timeout: float=0.1, debug=False, pad=True): + self.tx_addr = tx_addr + self.rx_addr = rx_addr + self.can_bus = bus + self.timeout = timeout + self.debug = debug + self._panda = panda + self._byte_order = ">" + self._max_cto = 8 + self._max_dto = 8 + self.pad = pad + + def _send_cto(self, cmd: int, dat: bytes = b"") -> None: + tx_data = (bytes([cmd]) + dat) + + # Some ECUs don't respond if the packets are not padded to 8 bytes + if self.pad: + tx_data = tx_data.ljust(8, b"\x00") + + if self.debug: + print("CAN-CLEAR: TX") + self._panda.can_clear(self.can_bus) + if self.debug: + print("CAN-CLEAR: RX") + self._panda.can_clear(0xFFFF) + if self.debug: + print(f"CAN-TX: {hex(self.tx_addr)} - 0x{bytes.hex(tx_data)}") + self._panda.can_send(self.tx_addr, tx_data, self.can_bus) + + def _recv_dto(self, timeout: float) -> bytes: + start_time = time.time() + while time.time() - start_time < timeout: + msgs = self._panda.can_recv() or [] + if len(msgs) >= 256: + print("CAN RX buffer overflow!!!", file=sys.stderr) + for rx_addr, rx_data, rx_bus in msgs: + if rx_bus == self.can_bus and rx_addr == self.rx_addr: + rx_data = bytes(rx_data) # convert bytearray to bytes + if self.debug: + print(f"CAN-RX: {hex(rx_addr)} - 0x{bytes.hex(rx_data)}") + + pid = rx_data[0] + if pid == 0xFE: + err = rx_data[1] + err_desc = ERROR_CODES.get(err, "unknown error") + dat = rx_data[2:] + raise CommandResponseError(f"{hex(err)} - {err_desc} {dat}", err) + + return bytes(rx_data[1:]) + time.sleep(0.001) + + raise CommandTimeoutError("timeout waiting for response") + + # commands + def connect(self, connect_mode: CONNECT_MODE=CONNECT_MODE.NORMAL) -> dict: + self._send_cto(COMMAND_CODE.CONNECT, bytes([connect_mode])) + resp = self._recv_dto(self.timeout) + assert len(resp) == 7, f"incorrect data length: {len(resp)}" + self._byte_order = ">" if resp[1] & 0x01 else "<" + self._slave_block_mode = resp[1] & 0x40 != 0 + self._max_cto = resp[2] + self._max_dto = struct.unpack(f"{self._byte_order}H", resp[3:5])[0] + return { + "cal_support": resp[0] & 0x01 != 0, + "daq_support": resp[0] & 0x04 != 0, + "stim_support": resp[0] & 0x08 != 0, + "pgm_support": resp[0] & 0x10 != 0, + "byte_order": self._byte_order, + "address_granularity": 2**((resp[1] & 0x06) >> 1), + "slave_block_mode": self._slave_block_mode, + "optional": resp[1] & 0x80 != 0, + "max_cto": self._max_cto, + "max_dto": self._max_dto, + "protocol_version": resp[5], + "transport_version": resp[6], + } + + def disconnect(self) -> None: + self._send_cto(COMMAND_CODE.DISCONNECT) + resp = self._recv_dto(self.timeout) + assert len(resp) == 0, f"incorrect data length: {len(resp)}" + + def get_id(self, req_id_type: GET_ID_REQUEST_TYPE = GET_ID_REQUEST_TYPE.ASCII) -> dict: + if req_id_type > 255: + raise ValueError("request id type must be less than 255") + self._send_cto(COMMAND_CODE.GET_ID, bytes([req_id_type])) + resp = self._recv_dto(self.timeout) + return { + # mode = 0 means MTA was set + # mode = 1 means data is at end (only CAN-FD has space for this) + "mode": resp[0], + "length": struct.unpack(f"{self._byte_order}I", resp[3:7])[0], + "identifier": resp[7:] if self._max_cto > 8 else None + } + + def get_seed(self, mode: int = 0) -> bytes: + if mode > 255: + raise ValueError("mode must be less than 255") + self._send_cto(COMMAND_CODE.GET_SEED, bytes([0, mode])) + + # TODO: add support for longer seeds spread over multiple blocks + ret = self._recv_dto(self.timeout) + length = ret[0] + return ret[1:length+1] + + def unlock(self, key: bytes) -> bytes: + # TODO: add support for longer keys spread over multiple blocks + self._send_cto(COMMAND_CODE.UNLOCK, bytes([len(key)]) + key) + return self._recv_dto(self.timeout) + + def set_mta(self, addr: int, addr_ext: int = 0) -> bytes: + if addr_ext > 255: + raise ValueError("address extension must be less than 256") + # TODO: this looks broken (missing addr extension) + self._send_cto(COMMAND_CODE.SET_MTA, bytes([0x00, 0x00, addr_ext]) + struct.pack(f"{self._byte_order}I", addr)) + return self._recv_dto(self.timeout) + + def upload(self, size: int) -> bytes: + if size > 255: + raise ValueError("size must be less than 256") + if not self._slave_block_mode and size > self._max_dto - 1: + raise ValueError("block mode not supported") + + self._send_cto(COMMAND_CODE.UPLOAD, bytes([size])) + resp = b"" + while len(resp) < size: + resp += self._recv_dto(self.timeout)[:size - len(resp) + 1] + return resp[:size] # trim off bytes with undefined values + + def short_upload(self, size: int, addr_ext: int, addr: int) -> bytes: + if size > 6: + raise ValueError("size must be less than 7") + if addr_ext > 255: + raise ValueError("address extension must be less than 256") + self._send_cto(COMMAND_CODE.SHORT_UPLOAD, bytes([size, 0x00, addr_ext]) + struct.pack(f"{self._byte_order}I", addr)) + return self._recv_dto(self.timeout)[:size] # trim off bytes with undefined values + + def download(self, data: bytes) -> bytes: + size = len(data) + if size > 255: + raise ValueError("size must be less than 256") + if not self._slave_block_mode and size > self._max_dto - 2: + raise ValueError("block mode not supported") + + self._send_cto(COMMAND_CODE.DOWNLOAD, bytes([size]) + data) + return self._recv_dto(self.timeout)[:size] diff --git a/opendbc_repo/opendbc/dbc/ESR.dbc b/opendbc_repo/opendbc/dbc/ESR.dbc new file mode 100644 index 0000000000..e3837a68b2 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ESR.dbc @@ -0,0 +1,1080 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: Gateway ESR +VAL_TABLE_ ForwardReverse 1 "Reverse" 0 "Forward" ; +VAL_TABLE_ LeftRight 1 "Right Clockwise" 0 "Left CounterClockwise" ; +VAL_TABLE_ ValidInvalid 1 "Valid" 0 "Invalid" ; +VAL_TABLE_ TrueFalse 1 "True" 0 "False" ; + + +BO_ 1343 Target64: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1342 Target63: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1341 Target62: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1340 Target61: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1339 Target60: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1338 Target59: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1337 Target58: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1336 Target57: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1335 Target56: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1334 Target55: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1333 Target54: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1332 Target53: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1331 Target52: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1330 Target51: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1329 Target50: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1328 Target49: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1327 Target48: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1326 Target47: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1325 Target46: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1324 Target45: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1323 Target44: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1322 Target43: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1321 Target42: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1320 Target41: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1319 Target40: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1318 Target39: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1317 Target38: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1316 Target37: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1315 Target36: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1314 Target35: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1313 Target34: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1312 Target33: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1311 Target32: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1310 Target31: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1309 Target30: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1308 Target29: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1307 Target28: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1306 Target27: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1305 Target26: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1304 Target25: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1303 Target24: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1302 Target23: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1301 Target22: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1300 Target21: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1299 Target20: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1298 Target19: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1297 Target18: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1296 Target17: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1295 Target16: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1294 Target15: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1293 Target14: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1292 Target13: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1291 Target12: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1290 Target11: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1289 Target10: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1288 Target9: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1287 Target8: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1285 Target6: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1286 Target7: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1284 Target5: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1283 Target4: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1282 Target3: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1281 Target2: 8 Vector__XXX + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1524 VehicleData3: 8 Gateway + SG_ CAN_RX_YAW_RATE_BIAS_SHIFT : 15|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_WHEELBASE : 55|8@0+ (2,200) [200|710] "cm" Vector__XXX + SG_ CAN_RX_STEERING_GEAR_RATIO : 63|8@0+ (0.125,0) [0|31.875] "" Vector__XXX + SG_ CAN_RX_OVERSTEER_UNDERSTEER : 7|8@0- (1,0) [-128|127] "%" Vector__XXX + SG_ CAN_RX_FUNNEL_OFFSET_RIGHT : 31|8@0- (0.1,0) [-12.8|12.7] "m" Vector__XXX + SG_ CAN_RX_FUNNEL_OFFSET_LEFT : 23|8@0- (0.1,0) [-12.8|12.7] "m" Vector__XXX + SG_ CAN_RX_DISTANCE_REAR_AXLE : 47|8@0+ (2,200) [200|710] "cm" Vector__XXX + SG_ CAN_RX_CW_BLOCKAGE_TRESHOLD : 39|8@0+ (0.0078125,0) [0|1.9921875] "" Vector__XXX + SG_ CAN_RX_BEAMWIDTH_VERT : 14|7@0+ (0.0625,0) [0|7.9375] "deg" Vector__XXX + +BO_ 1523 FactoryAlignment: 8 Gateway + +BO_ 1522 Vehicle_Data2: 8 Gateway + SG_ CAN_RX_WHEEL_SLIP : 41|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_RX_SERV_ALIGN_UPDATES_NEED : 55|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_RX_SERV_ALIGN_TYPE : 47|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_RADAR_HEIGHT : 38|7@0+ (1,0) [0|127] "cm" Vector__XXX + SG_ CAN_RX_RADAR_FOV_MR : 30|7@0+ (1,0) [0|127] "deg" Vector__XXX + SG_ CAN_RX_RADAR_FOV_LR : 19|5@0+ (1,0) [0|31] "deg" Vector__XXX + SG_ CAN_RX_LONG_ACCEL_VALIDITY : 7|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_LONG_ACCEL : 12|9@0- (0.03125,0) [-8|7.96875] "m/s^2" Vector__XXX + SG_ CAN_RX_LAT_ACCEL_VALIDITY : 6|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_LAT_ACCEL : 5|9@0- (0.03125,0) [-8|7.96875] "m/s^2" Vector__XXX + SG_ CAN_RX_AUTO_ALIGN_DISABLE : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_AUTO_ALIGN_CONVERGED : 42|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_ANGLE_MOUNTING_OFFSET : 63|8@0- (0.0625,0) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_RX_AALIGN_AVG_CTR_TOTAL : 45|3@0+ (250,250) [250|2000] "" Vector__XXX + +BO_ 1512 CIPV_Targets_Etc: 8 ESR + +BO_ 1511 ESR_History_Fault: 8 ESR + +BO_ 1510 ESR_Active_Fault: 8 ESR + +BO_ 1508 AD_Data: 8 ESR + +BO_ 1489 SensorValidation2: 8 ESR + SG_ CAN_TX_VALID_MR_SN : 7|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_VALID_MR_RANGE_RATE : 31|16@0- (0.0078125,0) [-256|255.9921875] "m/s" Vector__XXX + SG_ CAN_TX_VALID_MR_RANGE : 15|16@0+ (0.0078125,0) [0|511.9921875] "m" Vector__XXX + SG_ CAN_TX_VALID_MR_POWER : 63|8@0- (1,0) [-128|127] "db" Vector__XXX + SG_ CAN_TX_VALID_MR_ANGLE : 40|16@1- (0.0625,0) [-2048|2047.9375] "deg" Vector__XXX + +BO_ 1488 SensorValidation: 8 ESR + SG_ CAN_TX_VALID_LR_SN : 7|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_VALID_LR_RANGE_RATE : 31|16@0- (0.0078125,0) [-256|255.9921875] "m/s" Vector__XXX + SG_ CAN_TX_VALID_LR_RANGE : 15|16@0+ (0.0078125,0) [0|511.9921875] "m" Vector__XXX + SG_ CAN_TX_VALID_LR_POWER : 63|8@0- (1,0) [-128|127] "db" Vector__XXX + SG_ CAN_TX_VALID_LR_ANGLE : 47|16@0- (0.0625,0) [-2048|2047.9375] "deg" Vector__XXX + +BO_ 1344 Track_Sensor: 1 ESR + SG_ CAN_TX_TRACK_ROLLING_COUNT_2 : 4|1@0+ (1,0) [0|1] "" Vector__XXX + +BO_ 1280 Target1: 8 ESR + SG_ CAN_TX_TRACK_WIDTH : 37|4@0+ (0.5,0) [0|7.5] "" Vector__XXX + SG_ CAN_TX_TRACK_STATUS : 15|3@0+ (1,0) [0|7] "" Vector__XXX + SG_ CAN_TX_TRACK_ROLLING_COUNT : 38|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_RATE : 53|14@0- (0.01,0) [-81.92|81.91] "m/s" Vector__XXX + SG_ CAN_TX_TRACK_RANGE_ACCEL : 33|10@0- (0.05,0) [-25.6|25.55] "m/s^2" Vector__XXX + SG_ CAN_TX_TRACK_RANGE : 18|11@0+ (0.1,0) [0|204.7] "m" Vector__XXX + SG_ CAN_TX_TRACK_ONCOMING : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_MED_RANGE_MODE : 55|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_TRACK_LAT_RATE : 7|6@0- (0.25,0) [-8|7.75] "" Vector__XXX + SG_ CAN_TX_TRACK_GROUPING_CHANGED : 1|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_BRIDGE_OBJECT : 39|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_TRACK_ANGLE : 12|10@0- (0.1,0) [-51.2|51.1] "" Vector__XXX + +BO_ 1265 SensorInput: 8 Gateway + SG_ CAN_RX_USE_ANGLE_MISALIGNMENT : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_RX_SCAN_INDEX_ACK : 7|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_RX_LATERAL_MOUNTING_OFFSET : 47|8@0- (0.01563,0) [-2.00064|1.98501] "m" Vector__XXX + SG_ CAN_RX_WIPER_STATUS : 57|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_VOLVO_SHORT_TRACK_ROC : 31|4@0- (500,0) [-4000|3500] "m" Vector__XXX + SG_ CAN_RX_VEHICLE_SPEED_VALIDITY : 61|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_TURN_SIGNAL_STATUS : 63|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_RX_RAW_DATA_ENABLE : 56|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_RADAR_CMD_RADIATE : 55|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_MR_ONLY_TRANSMIT : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_RX_MMR_UPSIDE_DOWN : 60|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_MAXIMUM_TRACKS : 53|6@0+ (1,0) [0|63] "" Vector__XXX + SG_ CAN_RX_LR_ONLY_TRANSMIT : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_RX_HIGH_YAW_ANGLE : 21|6@0- (1,0) [-32|31] "deg" Vector__XXX + SG_ CAN_RX_GROUPING_MODE : 59|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_RX_CLEAR_FAULTS : 22|1@0- (1,0) [0|0] "" Vector__XXX + SG_ CAN_RX_BLOCKAGE_DISABLE : 54|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_ANGLE_MISALIGNMENT : 39|8@0- (0.0625,0) [-8|7.9375] "deg" Vector__XXX + +BO_ 1264 Vehicle_Data: 8 Gateway + SG_ CAN_RX_YAW_RATE_VALIDITY : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_RX_YAW_RATE : 11|12@0- (0.0625,0) [-128|127.9375] "deg/s" Vector__XXX + SG_ CAN_RX_VEHICLE_SPEED_DIRECTION : 12|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_VEHICLE_SPEED : 7|11@0+ (0.0625,0) [0|127.9375] "m/s" Vector__XXX + SG_ CAN_RX_RADIUS_CURVATURE : 29|14@0- (1,0) [-8192|8191] "m" Vector__XXX + SG_ CAN_RX_STEERING_VALIDITY : 47|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_STEERING_ANGLE_SIGN : 46|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_STEERING_ANGLE_RATE_SIGN : 30|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_RX_STEERING_ANGLE_RATE : 50|11@0+ (1,0) [0|2047] "deg/s" Vector__XXX + SG_ CAN_RX_STEERING_ANGLE : 45|11@0+ (1,0) [0|2047] "deg" Vector__XXX + +BO_ 1251 ESR_Output_InPath: 8 ESR + SG_ CAN_TX_PATH_ID_ACC_MOVE : 15|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_TRUCK_TARGET_DET : 7|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_SIDELOBE_BLOCKATE : 5|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_ROLLING_COUNT_3 : 1|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_PATH_ID_FCW_STAT : 47|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_PATH_ID_FCW_MOVE : 39|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_PATH_ID_CMBB_STAT : 31|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_PATH_ID_CMBB_MOVE : 23|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_PATH_ID_ACC_STAT : 63|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_PARTIAL_BLOCKAGE : 4|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_LR_ONLY_GRATING_LOBE_DET : 6|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_LMR_LR_MODE : 3|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_AUTO_ALIGN_ANGLE : 55|8@0- (0.0625,0) [-8|7.9375] "" Vector__XXX + +BO_ 1250 ESR_SW: 8 ESR + SG_ CAN_TX_SW_VERSION_PLD : 63|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_TX_SW_VERSION_HOST : 15|24@0+ (1,0) [0|16777215] "" Vector__XXX + SG_ CAN_TX_SERIAL_NUM : 39|24@0+ (1,0) [0|16777215] "" Vector__XXX + SG_ CAN_TX_INTERFACE_VERSION : 7|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_TX_HW_VERSION : 3|4@0+ (1,0) [0|15] "" Vector__XXX + +BO_ 1249 ESR_Status2: 8 ESR + SG_ CAN_TX_YAW_RATE_BIAS : 47|8@0- (0.125,0) [-16|15.875] "" Vector__XXX + SG_ CAN_TX_XCVR_OPERATIONAL : 12|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_VEH_SPD_COMP_FACTOR : 39|6@0- (0.00195,1) [0.9376|1.06045] "" Vector__XXX + SG_ CAN_TX_TEMPERATURE : 31|8@0- (1,0) [-128|127] "degC" Vector__XXX + SG_ CAN_TX_SW_VERSION_DSP : 55|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_TX_STEERING_ANGLE_ACK : 10|11@0+ (1,0) [0|2047] "deg" Vector__XXX + SG_ CAN_TX_ROLLING_COUNT_2 : 1|2@0+ (1,0) [0|3] "" Vector__XXX + SG_ CAN_TX_RAW_DATA_MODE : 11|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_RANGE_PERF_ERROR : 14|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_OVERHEAT_ERROR : 15|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_MAXIMUM_TRACKS_ACK : 7|6@0+ (1,1) [1|64] "" Vector__XXX + SG_ CAN_TX_INTERNAL_ERROR : 13|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_TX_GROUPING_MODE : 33|2@0+ (1,0) [0|3] "" Vector__XXX + +BO_ 1248 ESR_Status: 8 ESR + SG_ CAN_TX_COMM_ERROR : 14|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_TX_RADIUS_CURVATURE_CALC : 13|14@0- (1,0) [-8192|8191] "" Vector__XXX + SG_ CAN_TX_YAW_RATE_CALC : 47|12@0- (0.0625,0) [-128|127.9375] "deg/s" Vector__XXX + SG_ CAN_TX_VEHICLE_SPEED_CALC : 50|11@0+ (0.0625,0) [0|127.9375] "m/s" Vector__XXX + SG_ CAN_TX_DSP_TIMESTAMP : 5|7@0+ (2,0) [0|254] "ms" Vector__XXX + SG_ CAN_TX_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_TX_ROLLING_COUNT_1 : 6|2@1+ (1,0) [0|3] "" Vector__XXX + + + +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "BusType" "CAN"; +VAL_ 1264 CAN_RX_YAW_RATE_VALIDITY 1 "Valid" 0 "Invalid" ; +VAL_ 1264 CAN_RX_VEHICLE_SPEED_DIRECTION 1 "Reverse" 0 "Forward" ; +VAL_ 1264 CAN_RX_STEERING_VALIDITY 1 "True" 0 "False" ; +VAL_ 1264 CAN_RX_STEERING_ANGLE_SIGN 1 "Right Clockwise" 0 "Left CounterClockwise" ; +VAL_ 1264 CAN_RX_STEERING_ANGLE_RATE_SIGN 1 "Right Clockwise" 0 "Left CounterClockwise" ; + diff --git a/opendbc_repo/opendbc/dbc/FORD_CADS.dbc b/opendbc_repo/opendbc/dbc/FORD_CADS.dbc new file mode 100644 index 0000000000..569739c9c5 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/FORD_CADS.dbc @@ -0,0 +1,3544 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: +BU_: MRR +BO_ 1073741824 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX + SG_ New_Signal_943 : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_SENSOR_VANGLE_OFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_SENSOR_FOV_VER : 0|8@0+ (1,0) [0|255] "deg" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE_QF : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE_REF : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_MMIC_Temp4 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_MMIC_Temp3 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_MMIC_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_Processor_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_CHECKSUM : 0|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_COUNTER : 0|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_VEHICLE_MODE : 0|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_USC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_USC_CAL_VER_MINOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_SMC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_HW_VERSION : 0|32@0+ (1,0) [0|4.29497e+09] "" Vector__XXX + SG_ CAN_FAC_TGT_MTG_SPACE_VER : 0|8@0+ (1,-128) [-128|127] "cm" Vector__XXX + SG_ CAN_ANGLE_MISALIGNMENT_VER : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_ANGLE_MOUNTING_VOFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_LATCH_FAULTS : 0|64@0+ (1,0) [0|100] "" Vector__XXX + SG_ CAN_ACTIVE_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX + SG_ CAN_HISTORY_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX + SG_ CAN_SERV_ALIGN_ENABLE : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_LONG_MOUNTING_OFFSET : 0|8@0+ (0.015625,-2) [-2|1.98438] "" Vector__XXX + SG_ CAN_BEAMWIDTH_VERT : 0|7@0+ (0.125,0) [0|15.875] "deg" Vector__XXX + SG_ CAN_VEHICLE_SPEED_CALC_QF : 0|2@0+ (1,0) [0|3] "" Vector__XXX + +BO_ 34 Active_Fault_Latched_2: 8 MRR + SG_ IPMA_PCAN_DataRangeCheck : 4|1@1+ (1,0) [0|1] "" External_Tool + SG_ IPMA_PCAN_MissingMsg : 3|1@1+ (1,0) [0|1] "" External_Tool + SG_ VINSignalCompareFailure : 2|1@1+ (1,0) [0|1] "" External_Tool + SG_ ModuleNotConfiguredError : 1|1@1+ (1,0) [0|1] "" External_Tool + SG_ CarCfgNotConfiguredError : 0|1@1+ (1,0) [0|1] "" External_Tool + +BO_ 33 Active_Fault_Latched_1: 8 MRR + SG_ Active_Flt_Latched_byte7_bit7 : 63|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit6 : 62|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit5 : 61|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit4 : 60|1@1+ (1,0) [0|1] "" External_Tool + SG_ ARMtoDSPChksumFault : 59|1@1+ (1,0) [0|1] "" External_Tool + SG_ DSPtoArmChksumFault : 58|1@1+ (1,0) [0|1] "" External_Tool + SG_ HostToArmChksumFault : 57|1@1+ (1,0) [0|1] "" External_Tool + SG_ ARMtoHostChksumFault : 56|1@1+ (1,0) [0|1] "" External_Tool + SG_ LoopBWOutOfRange : 55|1@1+ (1,0) [0|1] "" External_Tool + SG_ DSPOverrunFault : 54|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte6_bit5 : 53|1@1+ (1,0) [0|1] "" External_Tool + SG_ TuningSensitivityFault : 52|1@1+ (1,0) [0|1] "" External_Tool + SG_ SaturatedTuningFreqFault : 51|1@1+ (1,0) [0|1] "" External_Tool + SG_ LocalOscPowerFault : 50|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterPowerFault : 49|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte6_bit0 : 48|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit7 : 47|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit6 : 46|1@1+ (1,0) [0|1] "" External_Tool + SG_ XCVRDeviceSPIFault : 45|1@1+ (1,0) [0|1] "" External_Tool + SG_ FreqSynthesizerSPIFault : 44|1@1+ (1,0) [0|1] "" External_Tool + SG_ AnalogConverterDevicSPIFault : 43|1@1+ (1,0) [0|1] "" External_Tool + SG_ SidelobeBlockage : 42|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit1 : 41|1@1+ (1,0) [0|1] "" External_Tool + SG_ MNRBlocked : 40|1@1+ (1,0) [0|1] "" External_Tool + SG_ ECUTempHighFault : 39|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterTempHighFault : 38|1@1+ (1,0) [0|1] "" External_Tool + SG_ AlignmentRoutineFailedFault : 37|1@1+ (1,0) [0|1] "" External_Tool + SG_ UnreasonableRadarData : 36|1@1+ (1,0) [0|1] "" External_Tool + SG_ MicroprocessorTempHighFault : 35|1@1+ (1,0) [0|1] "" External_Tool + SG_ VerticalAlignmentOutOfRange : 34|1@1+ (1,0) [0|1] "" External_Tool + SG_ HorizontalAlignmentOutOfRange : 33|1@1+ (1,0) [0|1] "" External_Tool + SG_ FactoryAlignmentMode : 32|1@1+ (1,0) [0|1] "" External_Tool + SG_ BatteryLowFault : 31|1@1+ (1,0) [0|1] "" External_Tool + SG_ BatteryHighFault : 30|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_1p25SupplyOutOfRange : 29|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte3_bit4 : 28|1@1+ (1,0) [0|1] "" External_Tool + SG_ ThermistorOutOfRange : 27|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_3p3DACSupplyOutOfRange : 26|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_3p3RAWSupplyOutOfRange : 25|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_5_SupplyOutOfRange : 24|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterIDFault : 23|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit6 : 22|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit5 : 21|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit4 : 20|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit3 : 19|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit2 : 18|1@1+ (1,0) [0|1] "" External_Tool + SG_ PCANMissingMsgFault : 17|1@1+ (1,0) [0|1] "" External_Tool + SG_ PCANBusOff : 16|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit7 : 15|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit6 : 14|1@1+ (1,0) [0|1] "" External_Tool + SG_ InstructionSetCheckFault : 13|1@1+ (1,0) [0|1] "" External_Tool + SG_ StackOverflowFault : 12|1@1+ (1,0) [0|1] "" External_Tool + SG_ WatchdogFault : 11|1@1+ (1,0) [0|1] "" External_Tool + SG_ PLLLockFault : 10|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit1 : 9|1@1+ (1,0) [0|1] "" External_Tool + SG_ RAMMemoryTestFault : 8|1@1+ (1,0) [0|1] "" External_Tool + SG_ USCValidationFault : 7|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit6 : 6|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit5 : 5|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit4 : 4|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit3 : 3|1@1+ (1,0) [0|1] "" External_Tool + SG_ KeepAliveChecksumFault : 2|1@1+ (1,0) [0|1] "" External_Tool + SG_ ProgramCalibrationFlashChecksum : 1|1@1+ (1,0) [0|1] "" External_Tool + SG_ ApplicationFlashChecksumFault : 0|1@1+ (1,0) [0|1] "" External_Tool + +BO_ 500 XCP_MRR_DAQ_RESP: 8 MRR + SG_ MRR_xcp_daq_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 499 XCP_MRR_DTO_RESP: 8 MRR + SG_ MRR_xcp_dto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 497 XCP_MRR_CTO_RESP: 8 MRR + SG_ MRR_xcp_cto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 1900 Ford_Diag_Resp_Phys: 8 MRR + SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467e+19] "" IFV_Host + +BO_ 261 MRR_Status_SerialNumber: 8 MRR + SG_ CAN_SEQUENCE_NUMBER : 55|16@0+ (1,0) [0|65535] "" External_Tool + SG_ CAN_SERIAL_NUMBER : 7|40@0+ (1,0) [0|1.09951e+12] "" External_Tool + +BO_ 264 MRR_Status_SwVersion: 8 MRR + SG_ CAN_PBL_Field_Revision : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_PBL_Promote_Revision : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Field_Revision : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Promote_Revision : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Release_Revision : 7|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_PBL_Release_Revision : 31|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 373 MRR_Header_SensorPosition: 8 MRR + SG_ CAN_SENSOR_POLARITY : 55|1@0+ (1,0) [0|1] "" External_Tool + SG_ CAN_SENSOR_LAT_OFFSET : 39|16@0+ (0.01,0) [0|655.35] "cm" External_Tool + SG_ CAN_SENSOR_LONG_OFFSET : 23|16@0+ (0.01,0) [0|655.35] "cm" External_Tool + SG_ CAN_SENSOR_HANGLE_OFFSET : 7|8@0+ (0.0625,-8) [-8|7.9375] "deg" External_Tool + +BO_ 372 MRR_Header_SensorCoverage: 8 MRR + SG_ CAN_SENSOR_FOV_HOR : 39|8@0+ (1,0) [0|255] "deg" IFV_VFP + SG_ CAN_DOPPLER_COVERAGE : 23|8@0+ (1,-128) [-128|127] "m/s" IFV_VFP + SG_ CAN_RANGE_COVERAGE : 7|8@0+ (1,0) [0|255] "m" IFV_VFP + +BO_ 371 MRR_Header_AlignmentState: 8 MRR + SG_ CAN_AUTO_ALIGN_HANGLE_QF : 13|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_ALIGNMENT_STATUS : 51|4@0+ (1,0) [0|11] "" IFV_VFP + SG_ CAN_ALIGNMENT_STATE : 55|3@0+ (1,0) [0|7] "" IFV_VFP + SG_ CAN_AUTO_ALIGN_HANGLE_REF : 11|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP + SG_ CAN_AUTO_ALIGN_HANGLE : 7|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP + +BO_ 369 MRR_Header_Timestamps: 8 MRR + SG_ CAN_DET_TIME_SINCE_MEAS : 39|11@0+ (0.1,0) [0|204.7] "ms" IFV_Host + SG_ CAN_SENSOR_TIME_STAMP : 7|32@0+ (0.1,0) [0|4.29497e+08] "ms" IFV_VFP + +BO_ 368 MRR_Header_InformationDetections: 8 MRR + SG_ CAN_ALIGN_UPDATES_DONE : 55|16@0+ (1,0) [0|65535] "" IFV_VFP + SG_ CAN_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" IFV_VFP + SG_ CAN_NUMBER_OF_DET : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_LOOK_ID : 23|2@0+ (1,0) [0|3] "" External_Tool + SG_ CAN_LOOK_INDEX : 7|16@0+ (1,0) [0|65535] "" External_Tool + +BO_ 265 MRR_Status_Temp_Volt: 8 MRR + SG_ CAN_BATT_VOLTS : 63|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_1_25_V : 55|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_5_V : 47|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_3_3_V_RAW : 31|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_3_3_V_DAC : 15|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_MMIC_Temp1 : 39|8@0+ (1,-50) [-50|205] "C" External_Tool + SG_ CAN_Processor_Thermistor : 23|8@0+ (1,-50) [-50|205] "C" External_Tool + SG_ CAN_Processor_Temp1 : 7|8@0+ (1,-50) [-50|205] "C" External_Tool + +BO_ 291 MRR_Detection_004: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_04 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 351 MRR_Detection_064: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_64 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_64 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_64 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_64 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_64 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_64 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_64 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_64 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_64 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_64 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 350 MRR_Detection_063: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_63 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_63 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_63 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_63 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_63 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_63 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_63 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_63 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_63 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_63 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 349 MRR_Detection_062: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_62 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_62 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_62 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_62 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_62 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_62 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_62 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_62 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_62 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_62 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 348 MRR_Detection_061: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_61 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_61 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_61 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_61 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_61 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_61 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_61 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_61 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_61 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_61 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 347 MRR_Detection_060: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_60 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_60 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_60 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_60 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_60 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_60 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_60 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_60 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_60 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_60 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 346 MRR_Detection_059: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_59 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_59 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_59 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_59 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_59 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_59 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_59 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_59 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_59 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_59 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 345 MRR_Detection_058: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_58 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_58 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_58 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_58 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_58 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_58 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_58 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_58 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_58 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_58 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 344 MRR_Detection_057: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_57 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_57 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_57 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_57 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_57 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_57 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_57 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_57 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_57 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_57 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 343 MRR_Detection_056: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_56 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_56 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_56 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_56 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_56 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_56 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_56 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_56 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_56 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_56 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 342 MRR_Detection_055: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_55 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_55 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_55 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_55 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_55 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_55 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_55 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_55 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_55 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_55 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 335 MRR_Detection_048: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_48 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_48 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_48 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_48 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_48 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_48 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_48 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_48 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_48 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_48 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 334 MRR_Detection_047: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_47 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_47 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_47 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_47 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_47 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_47 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_47 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_47 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_47 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_47 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 333 MRR_Detection_046: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_46 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_46 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_46 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_46 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_46 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_46 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_46 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_46 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_46 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_46 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 332 MRR_Detection_045: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_45 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_45 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_45 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_45 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_45 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_45 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_45 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_45 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_45 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_45 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 331 MRR_Detection_044: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_44 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_44 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_44 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_44 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_44 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_44 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_44 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_44 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_44 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_44 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 330 MRR_Detection_043: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_43 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_43 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_43 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_43 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_43 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_43 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_43 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_43 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_43 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_43 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 329 MRR_Detection_042: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_42 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_42 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_42 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_42 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_42 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_42 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_42 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_42 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_42 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_42 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 328 MRR_Detection_041: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_41 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_41 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_41 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_41 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_41 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_41 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_41 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_41 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_41 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_41 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 327 MRR_Detection_040: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_40 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_40 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_40 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_40 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_40 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_40 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_40 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_40 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_40 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_40 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 325 MRR_Detection_038: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_38 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_38 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_38 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_38 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_38 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_38 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_38 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_38 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_38 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_38 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 324 MRR_Detection_037: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_37 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_37 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_37 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_37 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_37 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_37 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_37 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_37 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_37 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_37 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 323 MRR_Detection_036: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_36 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_36 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_36 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_36 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_36 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_36 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_36 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_36 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_36 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_36 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 322 MRR_Detection_035: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_35 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_35 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_35 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_35 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_35 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_35 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_35 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_35 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_35 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_35 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 321 MRR_Detection_034: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_34 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_34 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_34 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_34 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_34 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_34 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_34 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_34 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_34 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_34 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 320 MRR_Detection_033: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_33 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_33 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_33 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_33 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_33 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_33 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_33 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_33 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_33 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_33 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 319 MRR_Detection_032: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_32 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_32 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_32 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_32 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_32 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_32 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_32 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_32 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_32 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_32 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 318 MRR_Detection_031: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_31 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_31 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_31 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_31 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_31 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_31 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_31 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_31 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_31 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_31 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 317 MRR_Detection_030: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_30 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_30 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_30 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_30 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_30 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_30 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_30 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_30 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_30 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_30 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 316 MRR_Detection_029: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_29 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_29 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_29 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_29 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_29 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_29 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_29 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_29 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_29 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_29 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 314 MRR_Detection_027: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_27 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_27 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_27 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_27 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_27 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_27 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_27 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_27 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_27 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_27 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 313 MRR_Detection_026: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_26 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_26 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_26 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_26 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_26 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_26 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_26 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_26 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_26 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_26 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 312 MRR_Detection_025: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_25 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_25 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_25 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_25 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_25 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_25 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_25 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_25 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_25 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_25 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 311 MRR_Detection_024: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_24 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_24 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_24 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_24 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_24 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_24 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_24 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_24 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_24 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_24 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 310 MRR_Detection_023: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_23 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_23 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_23 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_23 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_23 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_23 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_23 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_23 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_23 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_23 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 309 MRR_Detection_022: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_22 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_22 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_22 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_22 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_22 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_22 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_22 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_22 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_22 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_22 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 308 MRR_Detection_021: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_21 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 307 MRR_Detection_020: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_20 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 306 MRR_Detection_019: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_19 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 305 MRR_Detection_018: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_18 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 341 MRR_Detection_054: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_54 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_54 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_54 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_54 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_54 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_54 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_54 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_54 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_54 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_54 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 340 MRR_Detection_053: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_53 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_53 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_53 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_53 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_53 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_53 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_53 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_53 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_53 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_53 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 339 MRR_Detection_052: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_52 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_52 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_52 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_52 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_52 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_52 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_52 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_52 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_52 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_52 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 338 MRR_Detection_051: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_51 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_51 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_51 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_51 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_51 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_51 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_51 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_51 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_51 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_51 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 337 MRR_Detection_050: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_50 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_50 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_50 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_50 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_50 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_50 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_50 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_50 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_50 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_50 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 336 MRR_Detection_049: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_49 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_49 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_49 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_49 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_49 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_49 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_49 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_49 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_49 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_49 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 326 MRR_Detection_039: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_39 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_39 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_39 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_39 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_39 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_39 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_39 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_39 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_39 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_39 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 315 MRR_Detection_028: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_28 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_28 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_28 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_28 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_28 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_28 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_28 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_28 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_28 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_28 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 304 MRR_Detection_017: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_17 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 303 MRR_Detection_016: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_16 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 302 MRR_Detection_015: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_15 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 301 MRR_Detection_014: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_14 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 300 MRR_Detection_013: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_13 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 299 MRR_Detection_012: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_12 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 298 MRR_Detection_011: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_11 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 297 MRR_Detection_010: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_10 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 296 MRR_Detection_009: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_09 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 295 MRR_Detection_008: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_08 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 294 MRR_Detection_007: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_07 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 293 MRR_Detection_006: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_06 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 292 MRR_Detection_005: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_05 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 290 MRR_Detection_003: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_03 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 289 MRR_Detection_002: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_02 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 256 MRR_Status_CANVersion: 8 MRR + SG_ CAN_USC_SECTION_COMPATIBILITY : 23|16@0+ (1,0) [0|65535] "" External_Tool + SG_ CAN_PCAN_MINOR_MRR : 7|8@0+ (1,0) [0|255] "" IFV_VFP + SG_ CAN_PCAN_MAJOR_MRR : 15|8@0+ (1,0) [0|255] "" IFV_VFP + +BO_ 257 MRR_Status_Radar: 8 MRR + SG_ CAN_INTERFERENCE_TYPE : 11|2@0+ (1,0) [0|3] "" IFV_Host + SG_ CAN_RECOMMEND_UNCONVERGE : 9|1@0+ (1,0) [0|1] "" IFV_Host + SG_ CAN_BLOCKAGE_SIDELOBE_FILTER_VAL : 15|4@0+ (1,0) [0|15] "" IFV_Host + SG_ CAN_RADAR_ALIGN_INCOMPLETE : 8|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_BLOCKAGE_SIDELOBE : 4|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_BLOCKAGE_MNR : 5|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_EXT_COND_NOK : 1|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_ALIGN_OUT_RANGE : 2|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_ALIGN_NOT_START : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_OVERHEAT_ERROR : 3|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_NOT_OP : 6|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_XCVR_OPERATIONAL : 7|1@0+ (1,0) [0|1] "" IFV_VFP + +BO_ 288 MRR_Detection_001: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; +BA_DEF_ SG_ "CrossOver_LIN" ENUM "No","Yes","No","Yes"; +BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes","No","Yes","No","Yes"; +BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ SG_ "GenSigTimeoutTime_RCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_OCS" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_CCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_IPMA" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_SCCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_Generic_BCM" INT 0 100000; +BA_DEF_ BO_ "NmMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "TpTxIndex" INT 0 255; +BA_DEF_ BO_ "DiagState" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "TpApplType" STRING ; +BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "Mulitplexer" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; +BA_DEF_ BO_ "GenMsgHandlingTypeDoc" STRING ; +BA_DEF_ BO_ "GenMsgHandlingTypeCode" STRING ; +BA_DEF_ BO_ "GenMsgMarked" STRING ; +BA_DEF_ SG_ "GenSigMarked" STRING ; +BA_DEF_ SG_ "GenSigVtIndex" STRING ; +BA_DEF_ SG_ "GenSigVtName" STRING ; +BA_DEF_ SG_ "GenSigVtEn" STRING ; +BA_DEF_ SG_ "GenSigSNA" STRING ; +BA_DEF_ SG_ "GenSigCmt" STRING ; +BA_DEF_ BO_ "GenMsgCmt" STRING ; +BA_DEF_ SG_ "GenSigSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; +BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; +BA_DEF_ SG_ "GenSigMissingSourceValue" INT 0 1e+09; +BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes"; +BA_DEF_ SG_ "GenSigStartValue" INT 0 1e+09; +BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes"; +BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "GenMsgSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; +BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; +BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; +BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; +BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; +BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; +BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes"; +BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes"; +BA_DEF_ BU_ "ILUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BU_ "PowerType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes","Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; +BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; +BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; +BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; +BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; +BA_ "GenMsgCycleTime" BO_ 34 1000; +BA_ "GenMsgSendType" BO_ 34 0; +BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; +BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; +BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; +BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; +BA_ "GenSigVtEn" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; +BA_ "GenSigVtName" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; +BA_ "GenSigVtEn" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; +BA_ "GenSigVtName" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; +BA_ "GenSigVtEn" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; +BA_ "GenSigVtName" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; +BA_ "GenMsgCycleTime" BO_ 33 1000; +BA_ "GenMsgSendType" BO_ 33 0; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; +BA_ "GenSigVtEn" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; +BA_ "GenSigVtName" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; +BA_ "GenSigVtEn" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; +BA_ "GenSigVtName" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; +BA_ "GenSigVtEn" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; +BA_ "GenSigVtName" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; +BA_ "GenSigVtEn" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; +BA_ "GenSigVtName" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; +BA_ "GenSigVtEn" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; +BA_ "GenSigVtName" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 DSPOverrunFault "DSPOverrunFault"; +BA_ "GenSigVtName" SG_ 33 DSPOverrunFault "DSPOverrunFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; +BA_ "GenSigVtEn" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; +BA_ "GenSigVtName" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; +BA_ "GenSigVtEn" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; +BA_ "GenSigVtName" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; +BA_ "GenSigVtEn" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; +BA_ "GenSigVtName" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; +BA_ "GenSigVtEn" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; +BA_ "GenSigVtEn" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; +BA_ "GenSigVtName" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; +BA_ "GenSigVtEn" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; +BA_ "GenSigVtName" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; +BA_ "GenSigVtEn" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; +BA_ "GenSigVtName" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; +BA_ "GenSigVtEn" SG_ 33 SidelobeBlockage "SidelobeBlockage"; +BA_ "GenSigVtName" SG_ 33 SidelobeBlockage "SidelobeBlockage"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; +BA_ "GenSigVtEn" SG_ 33 MNRBlocked "MNRBlocked"; +BA_ "GenSigVtName" SG_ 33 MNRBlocked "MNRBlocked"; +BA_ "GenSigVtEn" SG_ 33 ECUTempHighFault "ECUTempHighFault"; +BA_ "GenSigVtName" SG_ 33 ECUTempHighFault "ECUTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; +BA_ "GenSigVtName" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; +BA_ "GenSigVtEn" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; +BA_ "GenSigVtName" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; +BA_ "GenSigVtEn" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; +BA_ "GenSigVtName" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; +BA_ "GenSigVtName" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; +BA_ "GenSigVtName" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; +BA_ "GenSigVtName" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; +BA_ "GenSigVtEn" SG_ 33 BatteryLowFault "BatteryLowFault"; +BA_ "GenSigVtName" SG_ 33 BatteryLowFault "BatteryLowFault"; +BA_ "GenSigVtEn" SG_ 33 BatteryHighFault "BatteryHighFault"; +BA_ "GenSigVtName" SG_ 33 BatteryHighFault "BatteryHighFault"; +BA_ "GenSigVtEn" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; +BA_ "GenSigVtEn" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; +BA_ "GenSigVtName" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 TransmitterIDFault "TransmitterIDFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterIDFault "TransmitterIDFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; +BA_ "GenSigVtEn" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; +BA_ "GenSigVtName" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; +BA_ "GenSigVtEn" SG_ 33 PCANBusOff "PCANBusOff"; +BA_ "GenSigVtName" SG_ 33 PCANBusOff "PCANBusOff"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; +BA_ "GenSigVtEn" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; +BA_ "GenSigVtName" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; +BA_ "GenSigVtEn" SG_ 33 StackOverflowFault "StackOverflowFault"; +BA_ "GenSigVtName" SG_ 33 StackOverflowFault "StackOverflowFault"; +BA_ "GenSigVtEn" SG_ 33 WatchdogFault "WatchdogFault"; +BA_ "GenSigVtName" SG_ 33 WatchdogFault "WatchdogFault"; +BA_ "GenSigVtEn" SG_ 33 PLLLockFault "PLLLockFault"; +BA_ "GenSigVtName" SG_ 33 PLLLockFault "PLLLockFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; +BA_ "GenSigVtEn" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; +BA_ "GenSigVtName" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; +BA_ "GenSigVtName" SG_ 33 USCValidationFault "USCValidationFault"; +BA_ "GenSigVtEn" SG_ 33 USCValidationFault "USCValidationFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; +BA_ "GenSigVtEn" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; +BA_ "GenSigVtName" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; +BA_ "GenSigVtEn" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; +BA_ "GenSigVtName" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; +BA_ "GenSigVtEn" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; +BA_ "GenSigVtName" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; +BA_ "GenMsgNrOfRepetition" BO_ 500 0; +BA_ "GenMsgSendType" BO_ 500 1; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte7 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte7 "MRR_xcp_daq_resp_byte7"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte6 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte6 "MRR_xcp_daq_resp_byte6"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte5 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte5 "MRR_xcp_daq_resp_byte5"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte4 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte4 "MRR_xcp_daq_resp_byte4"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte3 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte3 "MRR_xcp_daq_resp_byte3"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte2 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte2 "MRR_xcp_daq_resp_byte2"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte1 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte1 "MRR_xcp_daq_resp_byte1"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte0 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte0 "MRR_xcp_daq_resp_byte0"; +BA_ "GenMsgNrOfRepetition" BO_ 499 0; +BA_ "GenMsgSendType" BO_ 499 1; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte7 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte7 "MRR_xcp_dto_resp_byte7"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte6 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte6 "MRR_xcp_dto_resp_byte6"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte5 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte5 "MRR_xcp_dto_resp_byte5"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte4 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte4 "MRR_xcp_dto_resp_byte4"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte3 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte3 "MRR_xcp_dto_resp_byte3"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte2 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte2 "MRR_xcp_dto_resp_byte2"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte1 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte1 "MRR_xcp_dto_resp_byte1"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte0 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte0 "MRR_xcp_dto_resp_byte0"; +BA_ "GenMsgNrOfRepetition" BO_ 497 0; +BA_ "GenMsgSendType" BO_ 497 1; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte7 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte7 "MRR_xcp_cto_resp_byte7"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte6 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte6 "MRR_xcp_cto_resp_byte6"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte5 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte5 "MRR_xcp_cto_resp_byte5"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte4 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte4 "MRR_xcp_cto_resp_byte4"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte3 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte3 "MRR_xcp_cto_resp_byte3"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte2 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte2 "MRR_xcp_cto_resp_byte2"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte1 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte1 "MRR_xcp_cto_resp_byte1"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte0 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte0 "MRR_xcp_cto_resp_byte0"; +BA_ "GenMsgSendType" BO_ 1900 1; +BA_ "GenMsgNrOfRepetition" BO_ 1900 0; +BA_ "DiagResponse" BO_ 1900 1; +BA_ "GenSigCmt" SG_ 1900 TesterPhysicalResCCM "TesterPhysicalResCCM"; +BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 0; +BA_ "GenMsgSendType" BO_ 261 0; +BA_ "GenMsgCycleTime" BO_ 261 1000; +BA_ "GenMsgNrOfRepetition" BO_ 261 0; +BA_ "GenSigCmt" SG_ 261 CAN_SEQUENCE_NUMBER "CAN_SEQUENCE_NUMBER"; +BA_ "GenSigCmt" SG_ 261 CAN_SERIAL_NUMBER "CAN_SERIAL_NUMBER"; +BA_ "GenSigSendType" SG_ 261 CAN_SERIAL_NUMBER 0; +BA_ "GenMsgSendType" BO_ 264 1; +BA_ "GenMsgNrOfRepetition" BO_ 264 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Field_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Promote_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Field_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Promote_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Release_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Release_Revision 0; +BA_ "GenMsgSendType" BO_ 373 1; +BA_ "NetworkInitialization" BO_ 373 0; +BA_ "GenMsgNrOfRepetition" BO_ 373 0; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_POLARITY 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_POLARITY "CAN_SENSOR_POLARITY"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LAT_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LAT_OFFSET "CAN_SENSOR_LAT_OFFSET"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LONG_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LONG_OFFSET "CAN_SENSOR_LONG_OFFSET"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_HANGLE_OFFSET "CAN_SENSOR_HANGLE_OFFSET"; +BA_ "GenSigStartValue" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; +BA_ "GenMsgSendType" BO_ 372 1; +BA_ "NetworkInitialization" BO_ 372 0; +BA_ "GenMsgNrOfRepetition" BO_ 372 0; +BA_ "GenSigSendType" SG_ 372 CAN_SENSOR_FOV_HOR 0; +BA_ "GenSigCmt" SG_ 372 CAN_SENSOR_FOV_HOR "CAN_SENSOR_FOV_HOR"; +BA_ "GenSigStartValue" SG_ 372 CAN_SENSOR_FOV_HOR 0; +BA_ "GenSigSendType" SG_ 372 CAN_DOPPLER_COVERAGE 0; +BA_ "GenSigCmt" SG_ 372 CAN_DOPPLER_COVERAGE "CAN_DOPPLER_COVERAGE"; +BA_ "GenSigStartValue" SG_ 372 CAN_DOPPLER_COVERAGE 0; +BA_ "GenSigSendType" SG_ 372 CAN_RANGE_COVERAGE 0; +BA_ "GenSigCmt" SG_ 372 CAN_RANGE_COVERAGE "CAN_RANGE_COVERAGE"; +BA_ "GenMsgSendType" BO_ 371 1; +BA_ "NetworkInitialization" BO_ 371 0; +BA_ "GenMsgNrOfRepetition" BO_ 371 0; +BA_ "GenSigVtEn" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigVtName" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATUS 0; +BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATE 0; +BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; +BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF "CAN_AUTO_ALIGN_HANGLE_REF"; +BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE "CAN_AUTO_ALIGN_HANGLE"; +BA_ "GenMsgSendType" BO_ 369 1; +BA_ "NetworkInitialization" BO_ 369 0; +BA_ "GenMsgNrOfRepetition" BO_ 369 0; +BA_ "GenSigCmt" SG_ 369 CAN_DET_TIME_SINCE_MEAS "CAN_DET_TIME_SINCE_MEAS"; +BA_ "GenSigSendType" SG_ 369 CAN_DET_TIME_SINCE_MEAS 0; +BA_ "GenSigSendType" SG_ 369 CAN_SENSOR_TIME_STAMP 0; +BA_ "GenSigCmt" SG_ 369 CAN_SENSOR_TIME_STAMP "CAN_SENSOR_TIME_STAMP"; +BA_ "GenMsgSendType" BO_ 368 1; +BA_ "NetworkInitialization" BO_ 368 0; +BA_ "GenMsgNrOfRepetition" BO_ 368 0; +BA_ "GenSigSendType" SG_ 368 CAN_ALIGN_UPDATES_DONE 0; +BA_ "GenSigCmt" SG_ 368 CAN_ALIGN_UPDATES_DONE "CAN_ALIGN_UPDATES_DONE"; +BA_ "GenSigSendType" SG_ 368 CAN_SCAN_INDEX 0; +BA_ "GenSigCmt" SG_ 368 CAN_SCAN_INDEX "CAN_SCAN_INDEX"; +BA_ "GenSigSendType" SG_ 368 CAN_NUMBER_OF_DET 0; +BA_ "GenSigCmt" SG_ 368 CAN_NUMBER_OF_DET "CAN_NUMBER_OF_DET"; +BA_ "GenSigSendType" SG_ 368 CAN_LOOK_ID 0; +BA_ "GenSigCmt" SG_ 368 CAN_LOOK_ID "CAN_LOOK_ID"; +BA_ "GenSigSendType" SG_ 368 CAN_LOOK_INDEX 0; +BA_ "GenSigCmt" SG_ 368 CAN_LOOK_INDEX "CAN_LOOK_INDEX"; +BA_ "GenMsgSendType" BO_ 265 1; +BA_ "NetworkInitialization" BO_ 265 0; +BA_ "GenMsgNrOfRepetition" BO_ 265 0; +BA_ "GenSigCmt" SG_ 265 CAN_BATT_VOLTS "CAN_BATT_VOLTS"; +BA_ "GenSigCmt" SG_ 265 CAN_1_25_V "CAN_1_25_V"; +BA_ "GenSigCmt" SG_ 265 CAN_5_V "CAN_5_V"; +BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_RAW "CAN_3_3_V_RAW"; +BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_DAC "CAN_3_3_V_DAC"; +BA_ "GenSigSendType" SG_ 265 CAN_MMIC_Temp1 0; +BA_ "GenSigCmt" SG_ 265 CAN_MMIC_Temp1 "CAN_MMIC_Temp1"; +BA_ "GenSigStartValue" SG_ 265 CAN_MMIC_Temp1 0; +BA_ "GenSigSendType" SG_ 265 CAN_Processor_Thermistor 0; +BA_ "GenSigCmt" SG_ 265 CAN_Processor_Thermistor "CAN_Processor_Thermistor"; +BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Thermistor 0; +BA_ "GenSigSendType" SG_ 265 CAN_Processor_Temp1 0; +BA_ "GenSigCmt" SG_ 265 CAN_Processor_Temp1 "CAN_Processor_Temp1"; +BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Temp1 0; +BA_ "GenMsgSendType" BO_ 291 1; +BA_ "GenMsgILSupport" BO_ 291 1; +BA_ "GenMsgNrOfRepetition" BO_ 291 0; +BA_ "GenMsgCycleTime" BO_ 291 0; +BA_ "NetworkInitialization" BO_ 291 0; +BA_ "GenMsgDelayTime" BO_ 291 0; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 "CAN_DET_CONFID_AZIMUTH_04"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 "CAN_DET_CONFID_AZIMUTH_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04 "CAN_DET_CONFID_AZIMUTH_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04 "CAN_DET_SUPER_RES_TARGET_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04 "CAN_DET_ND_TARGET_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04 "CAN_DET_HOST_VEH_CLUTTER_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04 "CAN_DET_VALID_LEVEL_04"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04 "CAN_DET_AZIMUTH_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04 "CAN_DET_RANGE_04"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04 "CAN_DET_RANGE_RATE_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04 "CAN_DET_AMPLITUDE_04"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04 "CAN_SCAN_INDEX_2LSB_04"; +BA_ "GenMsgSendType" BO_ 351 1; +BA_ "GenMsgILSupport" BO_ 351 1; +BA_ "GenMsgNrOfRepetition" BO_ 351 0; +BA_ "GenMsgCycleTime" BO_ 351 0; +BA_ "NetworkInitialization" BO_ 351 0; +BA_ "GenMsgDelayTime" BO_ 351 0; +BA_ "GenSigVtEn" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigVtName" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 "CAN_DET_SUPER_RES_TARGET_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_ND_TARGET_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_ND_TARGET_64 "CAN_DET_ND_TARGET_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 "CAN_DET_HOST_VEH_CLUTTER_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_VALID_LEVEL_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_VALID_LEVEL_64 "CAN_DET_VALID_LEVEL_64"; +BA_ "GenSigStartValue" SG_ 351 CAN_DET_AZIMUTH_64 0; +BA_ "GenSigSendType" SG_ 351 CAN_DET_AZIMUTH_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_AZIMUTH_64 "CAN_DET_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_64 "CAN_DET_RANGE_64"; +BA_ "GenSigStartValue" SG_ 351 CAN_DET_RANGE_RATE_64 0; +BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_RATE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_RATE_64 "CAN_DET_RANGE_RATE_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_AMPLITUDE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_AMPLITUDE_64 "CAN_DET_AMPLITUDE_64"; +BA_ "GenSigSendType" SG_ 351 CAN_SCAN_INDEX_2LSB_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_SCAN_INDEX_2LSB_64 "CAN_SCAN_INDEX_2LSB_64"; +BA_ "GenMsgSendType" BO_ 350 1; +BA_ "GenMsgILSupport" BO_ 350 1; +BA_ "GenMsgNrOfRepetition" BO_ 350 0; +BA_ "GenMsgCycleTime" BO_ 350 0; +BA_ "NetworkInitialization" BO_ 350 0; +BA_ "GenMsgDelayTime" BO_ 350 0; +BA_ "GenSigVtEn" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigVtName" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 "CAN_DET_SUPER_RES_TARGET_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_ND_TARGET_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_ND_TARGET_63 "CAN_DET_ND_TARGET_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 "CAN_DET_HOST_VEH_CLUTTER_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_VALID_LEVEL_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_VALID_LEVEL_63 "CAN_DET_VALID_LEVEL_63"; +BA_ "GenSigStartValue" SG_ 350 CAN_DET_AZIMUTH_63 0; +BA_ "GenSigSendType" SG_ 350 CAN_DET_AZIMUTH_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_AZIMUTH_63 "CAN_DET_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_63 "CAN_DET_RANGE_63"; +BA_ "GenSigStartValue" SG_ 350 CAN_DET_RANGE_RATE_63 0; +BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_RATE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_RATE_63 "CAN_DET_RANGE_RATE_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_AMPLITUDE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_AMPLITUDE_63 "CAN_DET_AMPLITUDE_63"; +BA_ "GenSigSendType" SG_ 350 CAN_SCAN_INDEX_2LSB_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_SCAN_INDEX_2LSB_63 "CAN_SCAN_INDEX_2LSB_63"; +BA_ "GenMsgSendType" BO_ 349 1; +BA_ "GenMsgILSupport" BO_ 349 1; +BA_ "GenMsgNrOfRepetition" BO_ 349 0; +BA_ "GenMsgCycleTime" BO_ 349 0; +BA_ "NetworkInitialization" BO_ 349 0; +BA_ "GenMsgDelayTime" BO_ 349 0; +BA_ "GenSigVtEn" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigVtName" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 "CAN_DET_SUPER_RES_TARGET_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_ND_TARGET_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_ND_TARGET_62 "CAN_DET_ND_TARGET_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 "CAN_DET_HOST_VEH_CLUTTER_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_VALID_LEVEL_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_VALID_LEVEL_62 "CAN_DET_VALID_LEVEL_62"; +BA_ "GenSigStartValue" SG_ 349 CAN_DET_AZIMUTH_62 0; +BA_ "GenSigSendType" SG_ 349 CAN_DET_AZIMUTH_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_AZIMUTH_62 "CAN_DET_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_62 "CAN_DET_RANGE_62"; +BA_ "GenSigStartValue" SG_ 349 CAN_DET_RANGE_RATE_62 0; +BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_RATE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_RATE_62 "CAN_DET_RANGE_RATE_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_AMPLITUDE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_AMPLITUDE_62 "CAN_DET_AMPLITUDE_62"; +BA_ "GenSigSendType" SG_ 349 CAN_SCAN_INDEX_2LSB_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_SCAN_INDEX_2LSB_62 "CAN_SCAN_INDEX_2LSB_62"; +BA_ "GenMsgSendType" BO_ 348 1; +BA_ "GenMsgILSupport" BO_ 348 1; +BA_ "GenMsgNrOfRepetition" BO_ 348 0; +BA_ "GenMsgCycleTime" BO_ 348 0; +BA_ "NetworkInitialization" BO_ 348 0; +BA_ "GenMsgDelayTime" BO_ 348 0; +BA_ "GenSigVtEn" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigVtName" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 "CAN_DET_SUPER_RES_TARGET_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_ND_TARGET_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_ND_TARGET_61 "CAN_DET_ND_TARGET_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 "CAN_DET_HOST_VEH_CLUTTER_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_VALID_LEVEL_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_VALID_LEVEL_61 "CAN_DET_VALID_LEVEL_61"; +BA_ "GenSigStartValue" SG_ 348 CAN_DET_AZIMUTH_61 0; +BA_ "GenSigSendType" SG_ 348 CAN_DET_AZIMUTH_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_AZIMUTH_61 "CAN_DET_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_61 "CAN_DET_RANGE_61"; +BA_ "GenSigStartValue" SG_ 348 CAN_DET_RANGE_RATE_61 0; +BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_RATE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_RATE_61 "CAN_DET_RANGE_RATE_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_AMPLITUDE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_AMPLITUDE_61 "CAN_DET_AMPLITUDE_61"; +BA_ "GenSigSendType" SG_ 348 CAN_SCAN_INDEX_2LSB_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_SCAN_INDEX_2LSB_61 "CAN_SCAN_INDEX_2LSB_61"; +BA_ "GenMsgSendType" BO_ 347 1; +BA_ "GenMsgILSupport" BO_ 347 1; +BA_ "GenMsgNrOfRepetition" BO_ 347 0; +BA_ "GenMsgCycleTime" BO_ 347 0; +BA_ "NetworkInitialization" BO_ 347 0; +BA_ "GenMsgDelayTime" BO_ 347 0; +BA_ "GenSigVtEn" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigVtName" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 "CAN_DET_SUPER_RES_TARGET_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_ND_TARGET_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_ND_TARGET_60 "CAN_DET_ND_TARGET_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 "CAN_DET_HOST_VEH_CLUTTER_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_VALID_LEVEL_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_VALID_LEVEL_60 "CAN_DET_VALID_LEVEL_60"; +BA_ "GenSigStartValue" SG_ 347 CAN_DET_AZIMUTH_60 0; +BA_ "GenSigSendType" SG_ 347 CAN_DET_AZIMUTH_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_AZIMUTH_60 "CAN_DET_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_60 "CAN_DET_RANGE_60"; +BA_ "GenSigStartValue" SG_ 347 CAN_DET_RANGE_RATE_60 0; +BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_RATE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_RATE_60 "CAN_DET_RANGE_RATE_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_AMPLITUDE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_AMPLITUDE_60 "CAN_DET_AMPLITUDE_60"; +BA_ "GenSigSendType" SG_ 347 CAN_SCAN_INDEX_2LSB_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_SCAN_INDEX_2LSB_60 "CAN_SCAN_INDEX_2LSB_60"; +BA_ "GenMsgSendType" BO_ 346 1; +BA_ "GenMsgILSupport" BO_ 346 1; +BA_ "GenMsgNrOfRepetition" BO_ 346 0; +BA_ "GenMsgCycleTime" BO_ 346 0; +BA_ "NetworkInitialization" BO_ 346 0; +BA_ "GenMsgDelayTime" BO_ 346 0; +BA_ "GenSigVtEn" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigVtName" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 "CAN_DET_SUPER_RES_TARGET_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_ND_TARGET_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_ND_TARGET_59 "CAN_DET_ND_TARGET_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 "CAN_DET_HOST_VEH_CLUTTER_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_VALID_LEVEL_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_VALID_LEVEL_59 "CAN_DET_VALID_LEVEL_59"; +BA_ "GenSigStartValue" SG_ 346 CAN_DET_AZIMUTH_59 0; +BA_ "GenSigSendType" SG_ 346 CAN_DET_AZIMUTH_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_AZIMUTH_59 "CAN_DET_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_59 "CAN_DET_RANGE_59"; +BA_ "GenSigStartValue" SG_ 346 CAN_DET_RANGE_RATE_59 0; +BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_RATE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_RATE_59 "CAN_DET_RANGE_RATE_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_AMPLITUDE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_AMPLITUDE_59 "CAN_DET_AMPLITUDE_59"; +BA_ "GenSigSendType" SG_ 346 CAN_SCAN_INDEX_2LSB_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_SCAN_INDEX_2LSB_59 "CAN_SCAN_INDEX_2LSB_59"; +BA_ "GenMsgSendType" BO_ 345 1; +BA_ "GenMsgILSupport" BO_ 345 1; +BA_ "GenMsgNrOfRepetition" BO_ 345 0; +BA_ "GenMsgCycleTime" BO_ 345 0; +BA_ "NetworkInitialization" BO_ 345 0; +BA_ "GenMsgDelayTime" BO_ 345 0; +BA_ "GenSigVtEn" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigVtName" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 "CAN_DET_SUPER_RES_TARGET_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_ND_TARGET_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_ND_TARGET_58 "CAN_DET_ND_TARGET_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 "CAN_DET_HOST_VEH_CLUTTER_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_VALID_LEVEL_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_VALID_LEVEL_58 "CAN_DET_VALID_LEVEL_58"; +BA_ "GenSigStartValue" SG_ 345 CAN_DET_AZIMUTH_58 0; +BA_ "GenSigSendType" SG_ 345 CAN_DET_AZIMUTH_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_AZIMUTH_58 "CAN_DET_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_58 "CAN_DET_RANGE_58"; +BA_ "GenSigStartValue" SG_ 345 CAN_DET_RANGE_RATE_58 0; +BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_RATE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_RATE_58 "CAN_DET_RANGE_RATE_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_AMPLITUDE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_AMPLITUDE_58 "CAN_DET_AMPLITUDE_58"; +BA_ "GenSigSendType" SG_ 345 CAN_SCAN_INDEX_2LSB_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_SCAN_INDEX_2LSB_58 "CAN_SCAN_INDEX_2LSB_58"; +BA_ "GenMsgSendType" BO_ 344 1; +BA_ "GenMsgILSupport" BO_ 344 1; +BA_ "GenMsgNrOfRepetition" BO_ 344 0; +BA_ "GenMsgCycleTime" BO_ 344 0; +BA_ "NetworkInitialization" BO_ 344 0; +BA_ "GenMsgDelayTime" BO_ 344 0; +BA_ "GenSigVtEn" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigVtName" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 "CAN_DET_SUPER_RES_TARGET_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_ND_TARGET_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_ND_TARGET_57 "CAN_DET_ND_TARGET_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 "CAN_DET_HOST_VEH_CLUTTER_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_VALID_LEVEL_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_VALID_LEVEL_57 "CAN_DET_VALID_LEVEL_57"; +BA_ "GenSigStartValue" SG_ 344 CAN_DET_AZIMUTH_57 0; +BA_ "GenSigSendType" SG_ 344 CAN_DET_AZIMUTH_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_AZIMUTH_57 "CAN_DET_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_57 "CAN_DET_RANGE_57"; +BA_ "GenSigStartValue" SG_ 344 CAN_DET_RANGE_RATE_57 0; +BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_RATE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_RATE_57 "CAN_DET_RANGE_RATE_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_AMPLITUDE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_AMPLITUDE_57 "CAN_DET_AMPLITUDE_57"; +BA_ "GenSigSendType" SG_ 344 CAN_SCAN_INDEX_2LSB_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_SCAN_INDEX_2LSB_57 "CAN_SCAN_INDEX_2LSB_57"; +BA_ "GenMsgSendType" BO_ 343 1; +BA_ "GenMsgILSupport" BO_ 343 1; +BA_ "GenMsgNrOfRepetition" BO_ 343 0; +BA_ "GenMsgCycleTime" BO_ 343 0; +BA_ "NetworkInitialization" BO_ 343 0; +BA_ "GenMsgDelayTime" BO_ 343 0; +BA_ "GenSigVtEn" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigVtName" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 "CAN_DET_SUPER_RES_TARGET_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_ND_TARGET_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_ND_TARGET_56 "CAN_DET_ND_TARGET_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 "CAN_DET_HOST_VEH_CLUTTER_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_VALID_LEVEL_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_VALID_LEVEL_56 "CAN_DET_VALID_LEVEL_56"; +BA_ "GenSigStartValue" SG_ 343 CAN_DET_AZIMUTH_56 0; +BA_ "GenSigSendType" SG_ 343 CAN_DET_AZIMUTH_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_AZIMUTH_56 "CAN_DET_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_56 "CAN_DET_RANGE_56"; +BA_ "GenSigStartValue" SG_ 343 CAN_DET_RANGE_RATE_56 0; +BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_RATE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_RATE_56 "CAN_DET_RANGE_RATE_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_AMPLITUDE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_AMPLITUDE_56 "CAN_DET_AMPLITUDE_56"; +BA_ "GenSigSendType" SG_ 343 CAN_SCAN_INDEX_2LSB_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_SCAN_INDEX_2LSB_56 "CAN_SCAN_INDEX_2LSB_56"; +BA_ "GenMsgSendType" BO_ 342 1; +BA_ "GenMsgILSupport" BO_ 342 1; +BA_ "GenMsgNrOfRepetition" BO_ 342 0; +BA_ "GenMsgCycleTime" BO_ 342 0; +BA_ "NetworkInitialization" BO_ 342 0; +BA_ "GenMsgDelayTime" BO_ 342 0; +BA_ "GenSigVtEn" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigVtName" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 "CAN_DET_SUPER_RES_TARGET_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_ND_TARGET_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_ND_TARGET_55 "CAN_DET_ND_TARGET_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 "CAN_DET_HOST_VEH_CLUTTER_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_VALID_LEVEL_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_VALID_LEVEL_55 "CAN_DET_VALID_LEVEL_55"; +BA_ "GenSigStartValue" SG_ 342 CAN_DET_AZIMUTH_55 0; +BA_ "GenSigSendType" SG_ 342 CAN_DET_AZIMUTH_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_AZIMUTH_55 "CAN_DET_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_55 "CAN_DET_RANGE_55"; +BA_ "GenSigStartValue" SG_ 342 CAN_DET_RANGE_RATE_55 0; +BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_RATE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_RATE_55 "CAN_DET_RANGE_RATE_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_AMPLITUDE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_AMPLITUDE_55 "CAN_DET_AMPLITUDE_55"; +BA_ "GenSigSendType" SG_ 342 CAN_SCAN_INDEX_2LSB_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_SCAN_INDEX_2LSB_55 "CAN_SCAN_INDEX_2LSB_55"; +BA_ "GenMsgSendType" BO_ 335 1; +BA_ "GenMsgILSupport" BO_ 335 1; +BA_ "GenMsgNrOfRepetition" BO_ 335 0; +BA_ "GenMsgCycleTime" BO_ 335 0; +BA_ "NetworkInitialization" BO_ 335 0; +BA_ "GenMsgDelayTime" BO_ 335 0; +BA_ "GenSigVtEn" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigVtName" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 "CAN_DET_SUPER_RES_TARGET_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_ND_TARGET_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_ND_TARGET_48 "CAN_DET_ND_TARGET_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 "CAN_DET_HOST_VEH_CLUTTER_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_VALID_LEVEL_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_VALID_LEVEL_48 "CAN_DET_VALID_LEVEL_48"; +BA_ "GenSigStartValue" SG_ 335 CAN_DET_AZIMUTH_48 0; +BA_ "GenSigSendType" SG_ 335 CAN_DET_AZIMUTH_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_AZIMUTH_48 "CAN_DET_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_48 "CAN_DET_RANGE_48"; +BA_ "GenSigStartValue" SG_ 335 CAN_DET_RANGE_RATE_48 0; +BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_RATE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_RATE_48 "CAN_DET_RANGE_RATE_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_AMPLITUDE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_AMPLITUDE_48 "CAN_DET_AMPLITUDE_48"; +BA_ "GenSigSendType" SG_ 335 CAN_SCAN_INDEX_2LSB_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_SCAN_INDEX_2LSB_48 "CAN_SCAN_INDEX_2LSB_48"; +BA_ "GenMsgSendType" BO_ 334 1; +BA_ "GenMsgILSupport" BO_ 334 1; +BA_ "GenMsgNrOfRepetition" BO_ 334 0; +BA_ "GenMsgCycleTime" BO_ 334 0; +BA_ "NetworkInitialization" BO_ 334 0; +BA_ "GenMsgDelayTime" BO_ 334 0; +BA_ "GenSigVtEn" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigVtName" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 "CAN_DET_SUPER_RES_TARGET_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_ND_TARGET_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_ND_TARGET_47 "CAN_DET_ND_TARGET_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 "CAN_DET_HOST_VEH_CLUTTER_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_VALID_LEVEL_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_VALID_LEVEL_47 "CAN_DET_VALID_LEVEL_47"; +BA_ "GenSigStartValue" SG_ 334 CAN_DET_AZIMUTH_47 0; +BA_ "GenSigSendType" SG_ 334 CAN_DET_AZIMUTH_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_AZIMUTH_47 "CAN_DET_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_47 "CAN_DET_RANGE_47"; +BA_ "GenSigStartValue" SG_ 334 CAN_DET_RANGE_RATE_47 0; +BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_RATE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_RATE_47 "CAN_DET_RANGE_RATE_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_AMPLITUDE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_AMPLITUDE_47 "CAN_DET_AMPLITUDE_47"; +BA_ "GenSigSendType" SG_ 334 CAN_SCAN_INDEX_2LSB_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_SCAN_INDEX_2LSB_47 "CAN_SCAN_INDEX_2LSB_47"; +BA_ "GenMsgSendType" BO_ 333 1; +BA_ "GenMsgILSupport" BO_ 333 1; +BA_ "GenMsgNrOfRepetition" BO_ 333 0; +BA_ "GenMsgCycleTime" BO_ 333 0; +BA_ "NetworkInitialization" BO_ 333 0; +BA_ "GenMsgDelayTime" BO_ 333 0; +BA_ "GenSigVtEn" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigVtName" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 "CAN_DET_SUPER_RES_TARGET_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_ND_TARGET_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_ND_TARGET_46 "CAN_DET_ND_TARGET_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 "CAN_DET_HOST_VEH_CLUTTER_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_VALID_LEVEL_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_VALID_LEVEL_46 "CAN_DET_VALID_LEVEL_46"; +BA_ "GenSigStartValue" SG_ 333 CAN_DET_AZIMUTH_46 0; +BA_ "GenSigSendType" SG_ 333 CAN_DET_AZIMUTH_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_AZIMUTH_46 "CAN_DET_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_46 "CAN_DET_RANGE_46"; +BA_ "GenSigStartValue" SG_ 333 CAN_DET_RANGE_RATE_46 0; +BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_RATE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_RATE_46 "CAN_DET_RANGE_RATE_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_AMPLITUDE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_AMPLITUDE_46 "CAN_DET_AMPLITUDE_46"; +BA_ "GenSigSendType" SG_ 333 CAN_SCAN_INDEX_2LSB_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_SCAN_INDEX_2LSB_46 "CAN_SCAN_INDEX_2LSB_46"; +BA_ "GenMsgSendType" BO_ 332 1; +BA_ "GenMsgILSupport" BO_ 332 1; +BA_ "GenMsgNrOfRepetition" BO_ 332 0; +BA_ "GenMsgCycleTime" BO_ 332 0; +BA_ "NetworkInitialization" BO_ 332 0; +BA_ "GenMsgDelayTime" BO_ 332 0; +BA_ "GenSigVtEn" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigVtName" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 "CAN_DET_SUPER_RES_TARGET_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_ND_TARGET_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_ND_TARGET_45 "CAN_DET_ND_TARGET_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 "CAN_DET_HOST_VEH_CLUTTER_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_VALID_LEVEL_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_VALID_LEVEL_45 "CAN_DET_VALID_LEVEL_45"; +BA_ "GenSigStartValue" SG_ 332 CAN_DET_AZIMUTH_45 0; +BA_ "GenSigSendType" SG_ 332 CAN_DET_AZIMUTH_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_AZIMUTH_45 "CAN_DET_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_45 "CAN_DET_RANGE_45"; +BA_ "GenSigStartValue" SG_ 332 CAN_DET_RANGE_RATE_45 0; +BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_RATE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_RATE_45 "CAN_DET_RANGE_RATE_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_AMPLITUDE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_AMPLITUDE_45 "CAN_DET_AMPLITUDE_45"; +BA_ "GenSigSendType" SG_ 332 CAN_SCAN_INDEX_2LSB_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_SCAN_INDEX_2LSB_45 "CAN_SCAN_INDEX_2LSB_45"; +BA_ "GenMsgSendType" BO_ 331 1; +BA_ "GenMsgILSupport" BO_ 331 1; +BA_ "GenMsgNrOfRepetition" BO_ 331 0; +BA_ "GenMsgCycleTime" BO_ 331 0; +BA_ "NetworkInitialization" BO_ 331 0; +BA_ "GenMsgDelayTime" BO_ 331 0; +BA_ "GenSigVtEn" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigVtName" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 "CAN_DET_SUPER_RES_TARGET_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_ND_TARGET_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_ND_TARGET_44 "CAN_DET_ND_TARGET_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 "CAN_DET_HOST_VEH_CLUTTER_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_VALID_LEVEL_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_VALID_LEVEL_44 "CAN_DET_VALID_LEVEL_44"; +BA_ "GenSigStartValue" SG_ 331 CAN_DET_AZIMUTH_44 0; +BA_ "GenSigSendType" SG_ 331 CAN_DET_AZIMUTH_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_AZIMUTH_44 "CAN_DET_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_44 "CAN_DET_RANGE_44"; +BA_ "GenSigStartValue" SG_ 331 CAN_DET_RANGE_RATE_44 0; +BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_RATE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_RATE_44 "CAN_DET_RANGE_RATE_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_AMPLITUDE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_AMPLITUDE_44 "CAN_DET_AMPLITUDE_44"; +BA_ "GenSigSendType" SG_ 331 CAN_SCAN_INDEX_2LSB_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_SCAN_INDEX_2LSB_44 "CAN_SCAN_INDEX_2LSB_44"; +BA_ "GenMsgSendType" BO_ 330 1; +BA_ "GenMsgILSupport" BO_ 330 1; +BA_ "GenMsgNrOfRepetition" BO_ 330 0; +BA_ "GenMsgCycleTime" BO_ 330 0; +BA_ "NetworkInitialization" BO_ 330 0; +BA_ "GenMsgDelayTime" BO_ 330 0; +BA_ "GenSigVtEn" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigVtName" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 "CAN_DET_SUPER_RES_TARGET_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_ND_TARGET_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_ND_TARGET_43 "CAN_DET_ND_TARGET_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 "CAN_DET_HOST_VEH_CLUTTER_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_VALID_LEVEL_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_VALID_LEVEL_43 "CAN_DET_VALID_LEVEL_43"; +BA_ "GenSigStartValue" SG_ 330 CAN_DET_AZIMUTH_43 0; +BA_ "GenSigSendType" SG_ 330 CAN_DET_AZIMUTH_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_AZIMUTH_43 "CAN_DET_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_43 "CAN_DET_RANGE_43"; +BA_ "GenSigStartValue" SG_ 330 CAN_DET_RANGE_RATE_43 0; +BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_RATE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_RATE_43 "CAN_DET_RANGE_RATE_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_AMPLITUDE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_AMPLITUDE_43 "CAN_DET_AMPLITUDE_43"; +BA_ "GenSigSendType" SG_ 330 CAN_SCAN_INDEX_2LSB_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_SCAN_INDEX_2LSB_43 "CAN_SCAN_INDEX_2LSB_43"; +BA_ "GenMsgSendType" BO_ 329 1; +BA_ "GenMsgILSupport" BO_ 329 1; +BA_ "GenMsgNrOfRepetition" BO_ 329 0; +BA_ "GenMsgCycleTime" BO_ 329 0; +BA_ "NetworkInitialization" BO_ 329 0; +BA_ "GenMsgDelayTime" BO_ 329 0; +BA_ "GenSigVtEn" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigVtName" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 "CAN_DET_SUPER_RES_TARGET_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_ND_TARGET_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_ND_TARGET_42 "CAN_DET_ND_TARGET_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 "CAN_DET_HOST_VEH_CLUTTER_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_VALID_LEVEL_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_VALID_LEVEL_42 "CAN_DET_VALID_LEVEL_42"; +BA_ "GenSigStartValue" SG_ 329 CAN_DET_AZIMUTH_42 0; +BA_ "GenSigSendType" SG_ 329 CAN_DET_AZIMUTH_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_AZIMUTH_42 "CAN_DET_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_42 "CAN_DET_RANGE_42"; +BA_ "GenSigStartValue" SG_ 329 CAN_DET_RANGE_RATE_42 0; +BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_RATE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_RATE_42 "CAN_DET_RANGE_RATE_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_AMPLITUDE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_AMPLITUDE_42 "CAN_DET_AMPLITUDE_42"; +BA_ "GenSigSendType" SG_ 329 CAN_SCAN_INDEX_2LSB_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_SCAN_INDEX_2LSB_42 "CAN_SCAN_INDEX_2LSB_42"; +BA_ "GenMsgSendType" BO_ 328 1; +BA_ "GenMsgILSupport" BO_ 328 1; +BA_ "GenMsgNrOfRepetition" BO_ 328 0; +BA_ "GenMsgCycleTime" BO_ 328 0; +BA_ "NetworkInitialization" BO_ 328 0; +BA_ "GenMsgDelayTime" BO_ 328 0; +BA_ "GenSigVtEn" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigVtName" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 "CAN_DET_SUPER_RES_TARGET_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_ND_TARGET_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_ND_TARGET_41 "CAN_DET_ND_TARGET_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 "CAN_DET_HOST_VEH_CLUTTER_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_VALID_LEVEL_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_VALID_LEVEL_41 "CAN_DET_VALID_LEVEL_41"; +BA_ "GenSigStartValue" SG_ 328 CAN_DET_AZIMUTH_41 0; +BA_ "GenSigSendType" SG_ 328 CAN_DET_AZIMUTH_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_AZIMUTH_41 "CAN_DET_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_41 "CAN_DET_RANGE_41"; +BA_ "GenSigStartValue" SG_ 328 CAN_DET_RANGE_RATE_41 0; +BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_RATE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_RATE_41 "CAN_DET_RANGE_RATE_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_AMPLITUDE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_AMPLITUDE_41 "CAN_DET_AMPLITUDE_41"; +BA_ "GenSigSendType" SG_ 328 CAN_SCAN_INDEX_2LSB_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_SCAN_INDEX_2LSB_41 "CAN_SCAN_INDEX_2LSB_41"; +BA_ "GenMsgSendType" BO_ 327 1; +BA_ "GenMsgILSupport" BO_ 327 1; +BA_ "GenMsgNrOfRepetition" BO_ 327 0; +BA_ "GenMsgCycleTime" BO_ 327 0; +BA_ "NetworkInitialization" BO_ 327 0; +BA_ "GenMsgDelayTime" BO_ 327 0; +BA_ "GenSigVtEn" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigVtName" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 "CAN_DET_SUPER_RES_TARGET_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_ND_TARGET_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_ND_TARGET_40 "CAN_DET_ND_TARGET_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 "CAN_DET_HOST_VEH_CLUTTER_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_VALID_LEVEL_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_VALID_LEVEL_40 "CAN_DET_VALID_LEVEL_40"; +BA_ "GenSigStartValue" SG_ 327 CAN_DET_AZIMUTH_40 0; +BA_ "GenSigSendType" SG_ 327 CAN_DET_AZIMUTH_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_AZIMUTH_40 "CAN_DET_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_40 "CAN_DET_RANGE_40"; +BA_ "GenSigStartValue" SG_ 327 CAN_DET_RANGE_RATE_40 0; +BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_RATE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_RATE_40 "CAN_DET_RANGE_RATE_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_AMPLITUDE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_AMPLITUDE_40 "CAN_DET_AMPLITUDE_40"; +BA_ "GenSigSendType" SG_ 327 CAN_SCAN_INDEX_2LSB_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_SCAN_INDEX_2LSB_40 "CAN_SCAN_INDEX_2LSB_40"; +BA_ "GenMsgSendType" BO_ 325 1; +BA_ "GenMsgILSupport" BO_ 325 1; +BA_ "GenMsgNrOfRepetition" BO_ 325 0; +BA_ "GenMsgCycleTime" BO_ 325 0; +BA_ "NetworkInitialization" BO_ 325 0; +BA_ "GenMsgDelayTime" BO_ 325 0; +BA_ "GenSigVtEn" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigVtName" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 "CAN_DET_SUPER_RES_TARGET_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_ND_TARGET_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_ND_TARGET_38 "CAN_DET_ND_TARGET_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 "CAN_DET_HOST_VEH_CLUTTER_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_VALID_LEVEL_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_VALID_LEVEL_38 "CAN_DET_VALID_LEVEL_38"; +BA_ "GenSigStartValue" SG_ 325 CAN_DET_AZIMUTH_38 0; +BA_ "GenSigSendType" SG_ 325 CAN_DET_AZIMUTH_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_AZIMUTH_38 "CAN_DET_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_38 "CAN_DET_RANGE_38"; +BA_ "GenSigStartValue" SG_ 325 CAN_DET_RANGE_RATE_38 0; +BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_RATE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_RATE_38 "CAN_DET_RANGE_RATE_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_AMPLITUDE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_AMPLITUDE_38 "CAN_DET_AMPLITUDE_38"; +BA_ "GenSigSendType" SG_ 325 CAN_SCAN_INDEX_2LSB_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_SCAN_INDEX_2LSB_38 "CAN_SCAN_INDEX_2LSB_38"; +BA_ "GenMsgSendType" BO_ 324 1; +BA_ "GenMsgILSupport" BO_ 324 1; +BA_ "GenMsgNrOfRepetition" BO_ 324 0; +BA_ "GenMsgCycleTime" BO_ 324 0; +BA_ "NetworkInitialization" BO_ 324 0; +BA_ "GenMsgDelayTime" BO_ 324 0; +BA_ "GenSigVtEn" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigVtName" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 "CAN_DET_SUPER_RES_TARGET_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_ND_TARGET_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_ND_TARGET_37 "CAN_DET_ND_TARGET_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 "CAN_DET_HOST_VEH_CLUTTER_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_VALID_LEVEL_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_VALID_LEVEL_37 "CAN_DET_VALID_LEVEL_37"; +BA_ "GenSigStartValue" SG_ 324 CAN_DET_AZIMUTH_37 0; +BA_ "GenSigSendType" SG_ 324 CAN_DET_AZIMUTH_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_AZIMUTH_37 "CAN_DET_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_37 "CAN_DET_RANGE_37"; +BA_ "GenSigStartValue" SG_ 324 CAN_DET_RANGE_RATE_37 0; +BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_RATE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_RATE_37 "CAN_DET_RANGE_RATE_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_AMPLITUDE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_AMPLITUDE_37 "CAN_DET_AMPLITUDE_37"; +BA_ "GenSigSendType" SG_ 324 CAN_SCAN_INDEX_2LSB_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_SCAN_INDEX_2LSB_37 "CAN_SCAN_INDEX_2LSB_37"; +BA_ "GenMsgSendType" BO_ 323 1; +BA_ "GenMsgILSupport" BO_ 323 1; +BA_ "GenMsgNrOfRepetition" BO_ 323 0; +BA_ "GenMsgCycleTime" BO_ 323 0; +BA_ "NetworkInitialization" BO_ 323 0; +BA_ "GenMsgDelayTime" BO_ 323 0; +BA_ "GenSigVtEn" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigVtName" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 "CAN_DET_SUPER_RES_TARGET_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_ND_TARGET_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_ND_TARGET_36 "CAN_DET_ND_TARGET_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 "CAN_DET_HOST_VEH_CLUTTER_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_VALID_LEVEL_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_VALID_LEVEL_36 "CAN_DET_VALID_LEVEL_36"; +BA_ "GenSigStartValue" SG_ 323 CAN_DET_AZIMUTH_36 0; +BA_ "GenSigSendType" SG_ 323 CAN_DET_AZIMUTH_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_AZIMUTH_36 "CAN_DET_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_36 "CAN_DET_RANGE_36"; +BA_ "GenSigStartValue" SG_ 323 CAN_DET_RANGE_RATE_36 0; +BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_RATE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_RATE_36 "CAN_DET_RANGE_RATE_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_AMPLITUDE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_AMPLITUDE_36 "CAN_DET_AMPLITUDE_36"; +BA_ "GenSigSendType" SG_ 323 CAN_SCAN_INDEX_2LSB_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_SCAN_INDEX_2LSB_36 "CAN_SCAN_INDEX_2LSB_36"; +BA_ "GenMsgSendType" BO_ 322 1; +BA_ "GenMsgILSupport" BO_ 322 1; +BA_ "GenMsgNrOfRepetition" BO_ 322 0; +BA_ "GenMsgCycleTime" BO_ 322 0; +BA_ "NetworkInitialization" BO_ 322 0; +BA_ "GenMsgDelayTime" BO_ 322 0; +BA_ "GenSigVtEn" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigVtName" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 "CAN_DET_SUPER_RES_TARGET_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_ND_TARGET_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_ND_TARGET_35 "CAN_DET_ND_TARGET_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 "CAN_DET_HOST_VEH_CLUTTER_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_VALID_LEVEL_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_VALID_LEVEL_35 "CAN_DET_VALID_LEVEL_35"; +BA_ "GenSigStartValue" SG_ 322 CAN_DET_AZIMUTH_35 0; +BA_ "GenSigSendType" SG_ 322 CAN_DET_AZIMUTH_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_AZIMUTH_35 "CAN_DET_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_35 "CAN_DET_RANGE_35"; +BA_ "GenSigStartValue" SG_ 322 CAN_DET_RANGE_RATE_35 0; +BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_RATE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_RATE_35 "CAN_DET_RANGE_RATE_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_AMPLITUDE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_AMPLITUDE_35 "CAN_DET_AMPLITUDE_35"; +BA_ "GenSigSendType" SG_ 322 CAN_SCAN_INDEX_2LSB_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_SCAN_INDEX_2LSB_35 "CAN_SCAN_INDEX_2LSB_35"; +BA_ "GenMsgSendType" BO_ 321 1; +BA_ "GenMsgILSupport" BO_ 321 1; +BA_ "GenMsgNrOfRepetition" BO_ 321 0; +BA_ "GenMsgCycleTime" BO_ 321 0; +BA_ "NetworkInitialization" BO_ 321 0; +BA_ "GenMsgDelayTime" BO_ 321 0; +BA_ "GenSigVtEn" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigVtName" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 "CAN_DET_SUPER_RES_TARGET_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_ND_TARGET_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_ND_TARGET_34 "CAN_DET_ND_TARGET_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 "CAN_DET_HOST_VEH_CLUTTER_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_VALID_LEVEL_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_VALID_LEVEL_34 "CAN_DET_VALID_LEVEL_34"; +BA_ "GenSigStartValue" SG_ 321 CAN_DET_AZIMUTH_34 0; +BA_ "GenSigSendType" SG_ 321 CAN_DET_AZIMUTH_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_AZIMUTH_34 "CAN_DET_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_34 "CAN_DET_RANGE_34"; +BA_ "GenSigStartValue" SG_ 321 CAN_DET_RANGE_RATE_34 0; +BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_RATE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_RATE_34 "CAN_DET_RANGE_RATE_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_AMPLITUDE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_AMPLITUDE_34 "CAN_DET_AMPLITUDE_34"; +BA_ "GenSigSendType" SG_ 321 CAN_SCAN_INDEX_2LSB_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_SCAN_INDEX_2LSB_34 "CAN_SCAN_INDEX_2LSB_34"; +BA_ "GenMsgSendType" BO_ 320 1; +BA_ "GenMsgILSupport" BO_ 320 1; +BA_ "GenMsgNrOfRepetition" BO_ 320 0; +BA_ "GenMsgCycleTime" BO_ 320 0; +BA_ "NetworkInitialization" BO_ 320 0; +BA_ "GenMsgDelayTime" BO_ 320 0; +BA_ "GenSigVtEn" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigVtName" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 "CAN_DET_SUPER_RES_TARGET_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_ND_TARGET_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_ND_TARGET_33 "CAN_DET_ND_TARGET_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 "CAN_DET_HOST_VEH_CLUTTER_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_VALID_LEVEL_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_VALID_LEVEL_33 "CAN_DET_VALID_LEVEL_33"; +BA_ "GenSigStartValue" SG_ 320 CAN_DET_AZIMUTH_33 0; +BA_ "GenSigSendType" SG_ 320 CAN_DET_AZIMUTH_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_AZIMUTH_33 "CAN_DET_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_33 "CAN_DET_RANGE_33"; +BA_ "GenSigStartValue" SG_ 320 CAN_DET_RANGE_RATE_33 0; +BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_RATE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_RATE_33 "CAN_DET_RANGE_RATE_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_AMPLITUDE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_AMPLITUDE_33 "CAN_DET_AMPLITUDE_33"; +BA_ "GenSigSendType" SG_ 320 CAN_SCAN_INDEX_2LSB_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_SCAN_INDEX_2LSB_33 "CAN_SCAN_INDEX_2LSB_33"; +BA_ "GenMsgSendType" BO_ 319 1; +BA_ "GenMsgILSupport" BO_ 319 1; +BA_ "GenMsgNrOfRepetition" BO_ 319 0; +BA_ "GenMsgCycleTime" BO_ 319 0; +BA_ "NetworkInitialization" BO_ 319 0; +BA_ "GenMsgDelayTime" BO_ 319 0; +BA_ "GenSigVtEn" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigVtName" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 "CAN_DET_SUPER_RES_TARGET_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_ND_TARGET_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_ND_TARGET_32 "CAN_DET_ND_TARGET_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 "CAN_DET_HOST_VEH_CLUTTER_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_VALID_LEVEL_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_VALID_LEVEL_32 "CAN_DET_VALID_LEVEL_32"; +BA_ "GenSigStartValue" SG_ 319 CAN_DET_AZIMUTH_32 0; +BA_ "GenSigSendType" SG_ 319 CAN_DET_AZIMUTH_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_AZIMUTH_32 "CAN_DET_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_32 "CAN_DET_RANGE_32"; +BA_ "GenSigStartValue" SG_ 319 CAN_DET_RANGE_RATE_32 0; +BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_RATE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_RATE_32 "CAN_DET_RANGE_RATE_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_AMPLITUDE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_AMPLITUDE_32 "CAN_DET_AMPLITUDE_32"; +BA_ "GenSigSendType" SG_ 319 CAN_SCAN_INDEX_2LSB_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_SCAN_INDEX_2LSB_32 "CAN_SCAN_INDEX_2LSB_32"; +BA_ "GenMsgSendType" BO_ 318 1; +BA_ "GenMsgILSupport" BO_ 318 1; +BA_ "GenMsgNrOfRepetition" BO_ 318 0; +BA_ "GenMsgCycleTime" BO_ 318 0; +BA_ "NetworkInitialization" BO_ 318 0; +BA_ "GenMsgDelayTime" BO_ 318 0; +BA_ "GenSigVtEn" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigVtName" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 "CAN_DET_SUPER_RES_TARGET_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_ND_TARGET_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_ND_TARGET_31 "CAN_DET_ND_TARGET_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 "CAN_DET_HOST_VEH_CLUTTER_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_VALID_LEVEL_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_VALID_LEVEL_31 "CAN_DET_VALID_LEVEL_31"; +BA_ "GenSigStartValue" SG_ 318 CAN_DET_AZIMUTH_31 0; +BA_ "GenSigSendType" SG_ 318 CAN_DET_AZIMUTH_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_AZIMUTH_31 "CAN_DET_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_31 "CAN_DET_RANGE_31"; +BA_ "GenSigStartValue" SG_ 318 CAN_DET_RANGE_RATE_31 0; +BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_RATE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_RATE_31 "CAN_DET_RANGE_RATE_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_AMPLITUDE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_AMPLITUDE_31 "CAN_DET_AMPLITUDE_31"; +BA_ "GenSigSendType" SG_ 318 CAN_SCAN_INDEX_2LSB_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_SCAN_INDEX_2LSB_31 "CAN_SCAN_INDEX_2LSB_31"; +BA_ "GenMsgSendType" BO_ 317 1; +BA_ "GenMsgILSupport" BO_ 317 1; +BA_ "GenMsgNrOfRepetition" BO_ 317 0; +BA_ "GenMsgCycleTime" BO_ 317 0; +BA_ "NetworkInitialization" BO_ 317 0; +BA_ "GenMsgDelayTime" BO_ 317 0; +BA_ "GenSigVtEn" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigVtName" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 "CAN_DET_SUPER_RES_TARGET_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_ND_TARGET_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_ND_TARGET_30 "CAN_DET_ND_TARGET_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 "CAN_DET_HOST_VEH_CLUTTER_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_VALID_LEVEL_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_VALID_LEVEL_30 "CAN_DET_VALID_LEVEL_30"; +BA_ "GenSigStartValue" SG_ 317 CAN_DET_AZIMUTH_30 0; +BA_ "GenSigSendType" SG_ 317 CAN_DET_AZIMUTH_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_AZIMUTH_30 "CAN_DET_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_30 "CAN_DET_RANGE_30"; +BA_ "GenSigStartValue" SG_ 317 CAN_DET_RANGE_RATE_30 0; +BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_RATE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_RATE_30 "CAN_DET_RANGE_RATE_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_AMPLITUDE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_AMPLITUDE_30 "CAN_DET_AMPLITUDE_30"; +BA_ "GenSigSendType" SG_ 317 CAN_SCAN_INDEX_2LSB_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_SCAN_INDEX_2LSB_30 "CAN_SCAN_INDEX_2LSB_30"; +BA_ "GenMsgSendType" BO_ 316 1; +BA_ "GenMsgILSupport" BO_ 316 1; +BA_ "GenMsgNrOfRepetition" BO_ 316 0; +BA_ "GenMsgCycleTime" BO_ 316 0; +BA_ "NetworkInitialization" BO_ 316 0; +BA_ "GenMsgDelayTime" BO_ 316 0; +BA_ "GenSigVtEn" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigVtName" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 "CAN_DET_SUPER_RES_TARGET_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_ND_TARGET_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_ND_TARGET_29 "CAN_DET_ND_TARGET_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 "CAN_DET_HOST_VEH_CLUTTER_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_VALID_LEVEL_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_VALID_LEVEL_29 "CAN_DET_VALID_LEVEL_29"; +BA_ "GenSigStartValue" SG_ 316 CAN_DET_AZIMUTH_29 0; +BA_ "GenSigSendType" SG_ 316 CAN_DET_AZIMUTH_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_AZIMUTH_29 "CAN_DET_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_29 "CAN_DET_RANGE_29"; +BA_ "GenSigStartValue" SG_ 316 CAN_DET_RANGE_RATE_29 0; +BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_RATE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_RATE_29 "CAN_DET_RANGE_RATE_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_AMPLITUDE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_AMPLITUDE_29 "CAN_DET_AMPLITUDE_29"; +BA_ "GenSigSendType" SG_ 316 CAN_SCAN_INDEX_2LSB_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_SCAN_INDEX_2LSB_29 "CAN_SCAN_INDEX_2LSB_29"; +BA_ "GenMsgSendType" BO_ 314 1; +BA_ "GenMsgILSupport" BO_ 314 1; +BA_ "GenMsgNrOfRepetition" BO_ 314 0; +BA_ "GenMsgCycleTime" BO_ 314 0; +BA_ "NetworkInitialization" BO_ 314 0; +BA_ "GenMsgDelayTime" BO_ 314 0; +BA_ "GenSigVtEn" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigVtName" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 "CAN_DET_SUPER_RES_TARGET_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_ND_TARGET_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_ND_TARGET_27 "CAN_DET_ND_TARGET_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 "CAN_DET_HOST_VEH_CLUTTER_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_VALID_LEVEL_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_VALID_LEVEL_27 "CAN_DET_VALID_LEVEL_27"; +BA_ "GenSigStartValue" SG_ 314 CAN_DET_AZIMUTH_27 0; +BA_ "GenSigSendType" SG_ 314 CAN_DET_AZIMUTH_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_AZIMUTH_27 "CAN_DET_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_27 "CAN_DET_RANGE_27"; +BA_ "GenSigStartValue" SG_ 314 CAN_DET_RANGE_RATE_27 0; +BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_RATE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_RATE_27 "CAN_DET_RANGE_RATE_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_AMPLITUDE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_AMPLITUDE_27 "CAN_DET_AMPLITUDE_27"; +BA_ "GenSigSendType" SG_ 314 CAN_SCAN_INDEX_2LSB_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_SCAN_INDEX_2LSB_27 "CAN_SCAN_INDEX_2LSB_27"; +BA_ "GenMsgSendType" BO_ 313 1; +BA_ "GenMsgILSupport" BO_ 313 1; +BA_ "GenMsgNrOfRepetition" BO_ 313 0; +BA_ "GenMsgCycleTime" BO_ 313 0; +BA_ "NetworkInitialization" BO_ 313 0; +BA_ "GenMsgDelayTime" BO_ 313 0; +BA_ "GenSigVtEn" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigVtName" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 "CAN_DET_SUPER_RES_TARGET_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_ND_TARGET_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_ND_TARGET_26 "CAN_DET_ND_TARGET_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 "CAN_DET_HOST_VEH_CLUTTER_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_VALID_LEVEL_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_VALID_LEVEL_26 "CAN_DET_VALID_LEVEL_26"; +BA_ "GenSigStartValue" SG_ 313 CAN_DET_AZIMUTH_26 0; +BA_ "GenSigSendType" SG_ 313 CAN_DET_AZIMUTH_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_AZIMUTH_26 "CAN_DET_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_26 "CAN_DET_RANGE_26"; +BA_ "GenSigStartValue" SG_ 313 CAN_DET_RANGE_RATE_26 0; +BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_RATE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_RATE_26 "CAN_DET_RANGE_RATE_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_AMPLITUDE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_AMPLITUDE_26 "CAN_DET_AMPLITUDE_26"; +BA_ "GenSigSendType" SG_ 313 CAN_SCAN_INDEX_2LSB_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_SCAN_INDEX_2LSB_26 "CAN_SCAN_INDEX_2LSB_26"; +BA_ "GenMsgSendType" BO_ 312 1; +BA_ "GenMsgILSupport" BO_ 312 1; +BA_ "GenMsgNrOfRepetition" BO_ 312 0; +BA_ "GenMsgCycleTime" BO_ 312 0; +BA_ "NetworkInitialization" BO_ 312 0; +BA_ "GenMsgDelayTime" BO_ 312 0; +BA_ "GenSigVtEn" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigVtName" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 "CAN_DET_SUPER_RES_TARGET_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_ND_TARGET_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_ND_TARGET_25 "CAN_DET_ND_TARGET_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 "CAN_DET_HOST_VEH_CLUTTER_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_VALID_LEVEL_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_VALID_LEVEL_25 "CAN_DET_VALID_LEVEL_25"; +BA_ "GenSigStartValue" SG_ 312 CAN_DET_AZIMUTH_25 0; +BA_ "GenSigSendType" SG_ 312 CAN_DET_AZIMUTH_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_AZIMUTH_25 "CAN_DET_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_25 "CAN_DET_RANGE_25"; +BA_ "GenSigStartValue" SG_ 312 CAN_DET_RANGE_RATE_25 0; +BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_RATE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_RATE_25 "CAN_DET_RANGE_RATE_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_AMPLITUDE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_AMPLITUDE_25 "CAN_DET_AMPLITUDE_25"; +BA_ "GenSigSendType" SG_ 312 CAN_SCAN_INDEX_2LSB_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_SCAN_INDEX_2LSB_25 "CAN_SCAN_INDEX_2LSB_25"; +BA_ "GenMsgSendType" BO_ 311 1; +BA_ "GenMsgILSupport" BO_ 311 1; +BA_ "GenMsgNrOfRepetition" BO_ 311 0; +BA_ "GenMsgCycleTime" BO_ 311 0; +BA_ "NetworkInitialization" BO_ 311 0; +BA_ "GenMsgDelayTime" BO_ 311 0; +BA_ "GenSigVtEn" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigVtName" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 "CAN_DET_SUPER_RES_TARGET_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_ND_TARGET_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_ND_TARGET_24 "CAN_DET_ND_TARGET_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 "CAN_DET_HOST_VEH_CLUTTER_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_VALID_LEVEL_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_VALID_LEVEL_24 "CAN_DET_VALID_LEVEL_24"; +BA_ "GenSigStartValue" SG_ 311 CAN_DET_AZIMUTH_24 0; +BA_ "GenSigSendType" SG_ 311 CAN_DET_AZIMUTH_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_AZIMUTH_24 "CAN_DET_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_24 "CAN_DET_RANGE_24"; +BA_ "GenSigStartValue" SG_ 311 CAN_DET_RANGE_RATE_24 0; +BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_RATE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_RATE_24 "CAN_DET_RANGE_RATE_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_AMPLITUDE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_AMPLITUDE_24 "CAN_DET_AMPLITUDE_24"; +BA_ "GenSigSendType" SG_ 311 CAN_SCAN_INDEX_2LSB_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_SCAN_INDEX_2LSB_24 "CAN_SCAN_INDEX_2LSB_24"; +BA_ "GenMsgSendType" BO_ 310 1; +BA_ "GenMsgILSupport" BO_ 310 1; +BA_ "GenMsgNrOfRepetition" BO_ 310 0; +BA_ "GenMsgCycleTime" BO_ 310 0; +BA_ "NetworkInitialization" BO_ 310 0; +BA_ "GenMsgDelayTime" BO_ 310 0; +BA_ "GenSigVtEn" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigVtName" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 "CAN_DET_SUPER_RES_TARGET_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_ND_TARGET_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_ND_TARGET_23 "CAN_DET_ND_TARGET_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 "CAN_DET_HOST_VEH_CLUTTER_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_VALID_LEVEL_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_VALID_LEVEL_23 "CAN_DET_VALID_LEVEL_23"; +BA_ "GenSigStartValue" SG_ 310 CAN_DET_AZIMUTH_23 0; +BA_ "GenSigSendType" SG_ 310 CAN_DET_AZIMUTH_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_AZIMUTH_23 "CAN_DET_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_23 "CAN_DET_RANGE_23"; +BA_ "GenSigStartValue" SG_ 310 CAN_DET_RANGE_RATE_23 0; +BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_RATE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_RATE_23 "CAN_DET_RANGE_RATE_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_AMPLITUDE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_AMPLITUDE_23 "CAN_DET_AMPLITUDE_23"; +BA_ "GenSigSendType" SG_ 310 CAN_SCAN_INDEX_2LSB_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_SCAN_INDEX_2LSB_23 "CAN_SCAN_INDEX_2LSB_23"; +BA_ "GenMsgSendType" BO_ 309 1; +BA_ "GenMsgILSupport" BO_ 309 1; +BA_ "GenMsgNrOfRepetition" BO_ 309 0; +BA_ "GenMsgCycleTime" BO_ 309 0; +BA_ "NetworkInitialization" BO_ 309 0; +BA_ "GenMsgDelayTime" BO_ 309 0; +BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 "CAN_DET_CONFID_AZIMUTH_22"; +BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 "CAN_DET_CONFID_AZIMUTH_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22 "CAN_DET_CONFID_AZIMUTH_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22 "CAN_DET_SUPER_RES_TARGET_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22 "CAN_DET_ND_TARGET_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22 "CAN_DET_HOST_VEH_CLUTTER_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22 "CAN_DET_VALID_LEVEL_22"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22 "CAN_DET_AZIMUTH_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22 "CAN_DET_RANGE_22"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22 "CAN_DET_RANGE_RATE_22"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22 "CAN_DET_AMPLITUDE_22"; +BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22 0; +BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22 "CAN_SCAN_INDEX_2LSB_22"; +BA_ "GenMsgSendType" BO_ 308 1; +BA_ "GenMsgILSupport" BO_ 308 1; +BA_ "GenMsgNrOfRepetition" BO_ 308 0; +BA_ "GenMsgCycleTime" BO_ 308 0; +BA_ "NetworkInitialization" BO_ 308 0; +BA_ "GenMsgDelayTime" BO_ 308 0; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 "CAN_DET_CONFID_AZIMUTH_21"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 "CAN_DET_CONFID_AZIMUTH_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21 "CAN_DET_CONFID_AZIMUTH_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21 "CAN_DET_SUPER_RES_TARGET_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21 "CAN_DET_ND_TARGET_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21 "CAN_DET_HOST_VEH_CLUTTER_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21 "CAN_DET_VALID_LEVEL_21"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21 "CAN_DET_AZIMUTH_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21 "CAN_DET_RANGE_21"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21 "CAN_DET_RANGE_RATE_21"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21 "CAN_DET_AMPLITUDE_21"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21 "CAN_SCAN_INDEX_2LSB_21"; +BA_ "GenMsgSendType" BO_ 307 1; +BA_ "GenMsgILSupport" BO_ 307 1; +BA_ "GenMsgNrOfRepetition" BO_ 307 0; +BA_ "GenMsgCycleTime" BO_ 307 0; +BA_ "NetworkInitialization" BO_ 307 0; +BA_ "GenMsgDelayTime" BO_ 307 0; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 "CAN_DET_CONFID_AZIMUTH_20"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 "CAN_DET_CONFID_AZIMUTH_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20 "CAN_DET_CONFID_AZIMUTH_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20 "CAN_DET_SUPER_RES_TARGET_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20 "CAN_DET_ND_TARGET_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20 "CAN_DET_HOST_VEH_CLUTTER_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20 "CAN_DET_VALID_LEVEL_20"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20 "CAN_DET_AZIMUTH_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20 "CAN_DET_RANGE_20"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20 "CAN_DET_RANGE_RATE_20"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20 "CAN_DET_AMPLITUDE_20"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20 "CAN_SCAN_INDEX_2LSB_20"; +BA_ "GenMsgSendType" BO_ 306 1; +BA_ "GenMsgILSupport" BO_ 306 1; +BA_ "GenMsgNrOfRepetition" BO_ 306 0; +BA_ "GenMsgCycleTime" BO_ 306 0; +BA_ "NetworkInitialization" BO_ 306 0; +BA_ "GenMsgDelayTime" BO_ 306 0; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 "CAN_DET_CONFID_AZIMUTH_19"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 "CAN_DET_CONFID_AZIMUTH_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19 "CAN_DET_CONFID_AZIMUTH_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19 "CAN_DET_SUPER_RES_TARGET_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19 "CAN_DET_ND_TARGET_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19 "CAN_DET_HOST_VEH_CLUTTER_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19 "CAN_DET_VALID_LEVEL_19"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19 "CAN_DET_AZIMUTH_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19 "CAN_DET_RANGE_19"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19 "CAN_DET_RANGE_RATE_19"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19 "CAN_DET_AMPLITUDE_19"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19 "CAN_SCAN_INDEX_2LSB_19"; +BA_ "GenMsgSendType" BO_ 305 1; +BA_ "GenMsgILSupport" BO_ 305 1; +BA_ "GenMsgNrOfRepetition" BO_ 305 0; +BA_ "GenMsgCycleTime" BO_ 305 0; +BA_ "NetworkInitialization" BO_ 305 0; +BA_ "GenMsgDelayTime" BO_ 305 0; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 "CAN_DET_CONFID_AZIMUTH_18"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 "CAN_DET_CONFID_AZIMUTH_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18 "CAN_DET_CONFID_AZIMUTH_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18 "CAN_DET_SUPER_RES_TARGET_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18 "CAN_DET_ND_TARGET_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18 "CAN_DET_HOST_VEH_CLUTTER_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18 "CAN_DET_VALID_LEVEL_18"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18 "CAN_DET_AZIMUTH_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18 "CAN_DET_RANGE_18"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18 "CAN_DET_RANGE_RATE_18"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18 "CAN_DET_AMPLITUDE_18"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18 "CAN_SCAN_INDEX_2LSB_18"; +BA_ "GenMsgSendType" BO_ 341 1; +BA_ "GenMsgILSupport" BO_ 341 1; +BA_ "GenMsgNrOfRepetition" BO_ 341 0; +BA_ "GenMsgCycleTime" BO_ 341 0; +BA_ "NetworkInitialization" BO_ 341 0; +BA_ "GenMsgDelayTime" BO_ 341 0; +BA_ "GenSigVtEn" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigVtName" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 "CAN_DET_SUPER_RES_TARGET_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_ND_TARGET_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_ND_TARGET_54 "CAN_DET_ND_TARGET_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 "CAN_DET_HOST_VEH_CLUTTER_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_VALID_LEVEL_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_VALID_LEVEL_54 "CAN_DET_VALID_LEVEL_54"; +BA_ "GenSigStartValue" SG_ 341 CAN_DET_AZIMUTH_54 0; +BA_ "GenSigSendType" SG_ 341 CAN_DET_AZIMUTH_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_AZIMUTH_54 "CAN_DET_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_54 "CAN_DET_RANGE_54"; +BA_ "GenSigStartValue" SG_ 341 CAN_DET_RANGE_RATE_54 0; +BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_RATE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_RATE_54 "CAN_DET_RANGE_RATE_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_AMPLITUDE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_AMPLITUDE_54 "CAN_DET_AMPLITUDE_54"; +BA_ "GenSigSendType" SG_ 341 CAN_SCAN_INDEX_2LSB_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_SCAN_INDEX_2LSB_54 "CAN_SCAN_INDEX_2LSB_54"; +BA_ "GenMsgSendType" BO_ 340 1; +BA_ "GenMsgILSupport" BO_ 340 1; +BA_ "GenMsgNrOfRepetition" BO_ 340 0; +BA_ "GenMsgCycleTime" BO_ 340 0; +BA_ "NetworkInitialization" BO_ 340 0; +BA_ "GenMsgDelayTime" BO_ 340 0; +BA_ "GenSigVtEn" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigVtName" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 "CAN_DET_SUPER_RES_TARGET_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_ND_TARGET_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_ND_TARGET_53 "CAN_DET_ND_TARGET_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 "CAN_DET_HOST_VEH_CLUTTER_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_VALID_LEVEL_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_VALID_LEVEL_53 "CAN_DET_VALID_LEVEL_53"; +BA_ "GenSigStartValue" SG_ 340 CAN_DET_AZIMUTH_53 0; +BA_ "GenSigSendType" SG_ 340 CAN_DET_AZIMUTH_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_AZIMUTH_53 "CAN_DET_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_53 "CAN_DET_RANGE_53"; +BA_ "GenSigStartValue" SG_ 340 CAN_DET_RANGE_RATE_53 0; +BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_RATE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_RATE_53 "CAN_DET_RANGE_RATE_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_AMPLITUDE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_AMPLITUDE_53 "CAN_DET_AMPLITUDE_53"; +BA_ "GenSigSendType" SG_ 340 CAN_SCAN_INDEX_2LSB_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_SCAN_INDEX_2LSB_53 "CAN_SCAN_INDEX_2LSB_53"; +BA_ "GenMsgSendType" BO_ 339 1; +BA_ "GenMsgILSupport" BO_ 339 1; +BA_ "GenMsgNrOfRepetition" BO_ 339 0; +BA_ "GenMsgCycleTime" BO_ 339 0; +BA_ "NetworkInitialization" BO_ 339 0; +BA_ "GenMsgDelayTime" BO_ 339 0; +BA_ "GenSigVtEn" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigVtName" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 "CAN_DET_SUPER_RES_TARGET_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_ND_TARGET_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_ND_TARGET_52 "CAN_DET_ND_TARGET_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 "CAN_DET_HOST_VEH_CLUTTER_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_VALID_LEVEL_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_VALID_LEVEL_52 "CAN_DET_VALID_LEVEL_52"; +BA_ "GenSigStartValue" SG_ 339 CAN_DET_AZIMUTH_52 0; +BA_ "GenSigSendType" SG_ 339 CAN_DET_AZIMUTH_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_AZIMUTH_52 "CAN_DET_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_52 "CAN_DET_RANGE_52"; +BA_ "GenSigStartValue" SG_ 339 CAN_DET_RANGE_RATE_52 0; +BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_RATE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_RATE_52 "CAN_DET_RANGE_RATE_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_AMPLITUDE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_AMPLITUDE_52 "CAN_DET_AMPLITUDE_52"; +BA_ "GenSigSendType" SG_ 339 CAN_SCAN_INDEX_2LSB_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_SCAN_INDEX_2LSB_52 "CAN_SCAN_INDEX_2LSB_52"; +BA_ "GenMsgSendType" BO_ 338 1; +BA_ "GenMsgILSupport" BO_ 338 1; +BA_ "GenMsgNrOfRepetition" BO_ 338 0; +BA_ "GenMsgCycleTime" BO_ 338 0; +BA_ "NetworkInitialization" BO_ 338 0; +BA_ "GenMsgDelayTime" BO_ 338 0; +BA_ "GenSigVtEn" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigVtName" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 "CAN_DET_SUPER_RES_TARGET_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_ND_TARGET_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_ND_TARGET_51 "CAN_DET_ND_TARGET_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 "CAN_DET_HOST_VEH_CLUTTER_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_VALID_LEVEL_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_VALID_LEVEL_51 "CAN_DET_VALID_LEVEL_51"; +BA_ "GenSigStartValue" SG_ 338 CAN_DET_AZIMUTH_51 0; +BA_ "GenSigSendType" SG_ 338 CAN_DET_AZIMUTH_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_AZIMUTH_51 "CAN_DET_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_51 "CAN_DET_RANGE_51"; +BA_ "GenSigStartValue" SG_ 338 CAN_DET_RANGE_RATE_51 0; +BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_RATE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_RATE_51 "CAN_DET_RANGE_RATE_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_AMPLITUDE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_AMPLITUDE_51 "CAN_DET_AMPLITUDE_51"; +BA_ "GenSigSendType" SG_ 338 CAN_SCAN_INDEX_2LSB_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_SCAN_INDEX_2LSB_51 "CAN_SCAN_INDEX_2LSB_51"; +BA_ "GenMsgSendType" BO_ 337 1; +BA_ "GenMsgILSupport" BO_ 337 1; +BA_ "GenMsgNrOfRepetition" BO_ 337 0; +BA_ "GenMsgCycleTime" BO_ 337 0; +BA_ "NetworkInitialization" BO_ 337 0; +BA_ "GenMsgDelayTime" BO_ 337 0; +BA_ "GenSigVtEn" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigVtName" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 "CAN_DET_SUPER_RES_TARGET_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_ND_TARGET_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_ND_TARGET_50 "CAN_DET_ND_TARGET_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 "CAN_DET_HOST_VEH_CLUTTER_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_VALID_LEVEL_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_VALID_LEVEL_50 "CAN_DET_VALID_LEVEL_50"; +BA_ "GenSigStartValue" SG_ 337 CAN_DET_AZIMUTH_50 0; +BA_ "GenSigSendType" SG_ 337 CAN_DET_AZIMUTH_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_AZIMUTH_50 "CAN_DET_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_50 "CAN_DET_RANGE_50"; +BA_ "GenSigStartValue" SG_ 337 CAN_DET_RANGE_RATE_50 0; +BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_RATE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_RATE_50 "CAN_DET_RANGE_RATE_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_AMPLITUDE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_AMPLITUDE_50 "CAN_DET_AMPLITUDE_50"; +BA_ "GenSigSendType" SG_ 337 CAN_SCAN_INDEX_2LSB_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_SCAN_INDEX_2LSB_50 "CAN_SCAN_INDEX_2LSB_50"; +BA_ "GenMsgSendType" BO_ 336 1; +BA_ "GenMsgILSupport" BO_ 336 1; +BA_ "GenMsgNrOfRepetition" BO_ 336 0; +BA_ "GenMsgCycleTime" BO_ 336 0; +BA_ "NetworkInitialization" BO_ 336 0; +BA_ "GenMsgDelayTime" BO_ 336 0; +BA_ "GenSigVtEn" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigVtName" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 "CAN_DET_SUPER_RES_TARGET_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_ND_TARGET_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_ND_TARGET_49 "CAN_DET_ND_TARGET_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 "CAN_DET_HOST_VEH_CLUTTER_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_VALID_LEVEL_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_VALID_LEVEL_49 "CAN_DET_VALID_LEVEL_49"; +BA_ "GenSigStartValue" SG_ 336 CAN_DET_AZIMUTH_49 0; +BA_ "GenSigSendType" SG_ 336 CAN_DET_AZIMUTH_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_AZIMUTH_49 "CAN_DET_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_49 "CAN_DET_RANGE_49"; +BA_ "GenSigStartValue" SG_ 336 CAN_DET_RANGE_RATE_49 0; +BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_RATE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_RATE_49 "CAN_DET_RANGE_RATE_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_AMPLITUDE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_AMPLITUDE_49 "CAN_DET_AMPLITUDE_49"; +BA_ "GenSigSendType" SG_ 336 CAN_SCAN_INDEX_2LSB_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_SCAN_INDEX_2LSB_49 "CAN_SCAN_INDEX_2LSB_49"; +BA_ "GenMsgSendType" BO_ 326 1; +BA_ "GenMsgILSupport" BO_ 326 1; +BA_ "GenMsgNrOfRepetition" BO_ 326 0; +BA_ "GenMsgCycleTime" BO_ 326 0; +BA_ "NetworkInitialization" BO_ 326 0; +BA_ "GenMsgDelayTime" BO_ 326 0; +BA_ "GenSigVtEn" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigVtName" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 "CAN_DET_SUPER_RES_TARGET_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_ND_TARGET_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_ND_TARGET_39 "CAN_DET_ND_TARGET_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 "CAN_DET_HOST_VEH_CLUTTER_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_VALID_LEVEL_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_VALID_LEVEL_39 "CAN_DET_VALID_LEVEL_39"; +BA_ "GenSigStartValue" SG_ 326 CAN_DET_AZIMUTH_39 0; +BA_ "GenSigSendType" SG_ 326 CAN_DET_AZIMUTH_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_AZIMUTH_39 "CAN_DET_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_39 "CAN_DET_RANGE_39"; +BA_ "GenSigStartValue" SG_ 326 CAN_DET_RANGE_RATE_39 0; +BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_RATE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_RATE_39 "CAN_DET_RANGE_RATE_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_AMPLITUDE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_AMPLITUDE_39 "CAN_DET_AMPLITUDE_39"; +BA_ "GenSigSendType" SG_ 326 CAN_SCAN_INDEX_2LSB_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_SCAN_INDEX_2LSB_39 "CAN_SCAN_INDEX_2LSB_39"; +BA_ "GenMsgSendType" BO_ 315 1; +BA_ "GenMsgILSupport" BO_ 315 1; +BA_ "GenMsgNrOfRepetition" BO_ 315 0; +BA_ "GenMsgCycleTime" BO_ 315 0; +BA_ "NetworkInitialization" BO_ 315 0; +BA_ "GenMsgDelayTime" BO_ 315 0; +BA_ "GenSigVtEn" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigVtName" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 "CAN_DET_SUPER_RES_TARGET_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_ND_TARGET_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_ND_TARGET_28 "CAN_DET_ND_TARGET_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 "CAN_DET_HOST_VEH_CLUTTER_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_VALID_LEVEL_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_VALID_LEVEL_28 "CAN_DET_VALID_LEVEL_28"; +BA_ "GenSigStartValue" SG_ 315 CAN_DET_AZIMUTH_28 0; +BA_ "GenSigSendType" SG_ 315 CAN_DET_AZIMUTH_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_AZIMUTH_28 "CAN_DET_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_28 "CAN_DET_RANGE_28"; +BA_ "GenSigStartValue" SG_ 315 CAN_DET_RANGE_RATE_28 0; +BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_RATE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_RATE_28 "CAN_DET_RANGE_RATE_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_AMPLITUDE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_AMPLITUDE_28 "CAN_DET_AMPLITUDE_28"; +BA_ "GenSigSendType" SG_ 315 CAN_SCAN_INDEX_2LSB_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_SCAN_INDEX_2LSB_28 "CAN_SCAN_INDEX_2LSB_28"; +BA_ "GenMsgSendType" BO_ 304 1; +BA_ "GenMsgILSupport" BO_ 304 1; +BA_ "GenMsgNrOfRepetition" BO_ 304 0; +BA_ "GenMsgCycleTime" BO_ 304 0; +BA_ "NetworkInitialization" BO_ 304 0; +BA_ "GenMsgDelayTime" BO_ 304 0; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 "CAN_DET_CONFID_AZIMUTH_17"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 "CAN_DET_CONFID_AZIMUTH_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17 "CAN_DET_CONFID_AZIMUTH_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17 "CAN_DET_SUPER_RES_TARGET_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17 "CAN_DET_ND_TARGET_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17 "CAN_DET_HOST_VEH_CLUTTER_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17 "CAN_DET_VALID_LEVEL_17"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17 "CAN_DET_AZIMUTH_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17 "CAN_DET_RANGE_17"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17 "CAN_DET_RANGE_RATE_17"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17 "CAN_DET_AMPLITUDE_17"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17 "CAN_SCAN_INDEX_2LSB_17"; +BA_ "GenMsgSendType" BO_ 303 1; +BA_ "GenMsgILSupport" BO_ 303 1; +BA_ "GenMsgNrOfRepetition" BO_ 303 0; +BA_ "GenMsgCycleTime" BO_ 303 0; +BA_ "NetworkInitialization" BO_ 303 0; +BA_ "GenMsgDelayTime" BO_ 303 0; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 "CAN_DET_CONFID_AZIMUTH_16"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 "CAN_DET_CONFID_AZIMUTH_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16 "CAN_DET_CONFID_AZIMUTH_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16 "CAN_DET_SUPER_RES_TARGET_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16 "CAN_DET_ND_TARGET_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16 "CAN_DET_HOST_VEH_CLUTTER_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16 "CAN_DET_VALID_LEVEL_16"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16 "CAN_DET_AZIMUTH_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16 "CAN_DET_RANGE_16"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16 "CAN_DET_RANGE_RATE_16"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16 "CAN_DET_AMPLITUDE_16"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16 "CAN_SCAN_INDEX_2LSB_16"; +BA_ "GenMsgSendType" BO_ 302 1; +BA_ "GenMsgILSupport" BO_ 302 1; +BA_ "GenMsgNrOfRepetition" BO_ 302 0; +BA_ "GenMsgCycleTime" BO_ 302 0; +BA_ "NetworkInitialization" BO_ 302 0; +BA_ "GenMsgDelayTime" BO_ 302 0; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 "CAN_DET_CONFID_AZIMUTH_15"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 "CAN_DET_CONFID_AZIMUTH_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15 "CAN_DET_CONFID_AZIMUTH_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15 "CAN_DET_SUPER_RES_TARGET_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15 "CAN_DET_ND_TARGET_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15 "CAN_DET_HOST_VEH_CLUTTER_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15 "CAN_DET_VALID_LEVEL_15"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15 "CAN_DET_AZIMUTH_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15 "CAN_DET_RANGE_15"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15 "CAN_DET_RANGE_RATE_15"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15 "CAN_DET_AMPLITUDE_15"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15 "CAN_SCAN_INDEX_2LSB_15"; +BA_ "GenMsgSendType" BO_ 301 1; +BA_ "GenMsgILSupport" BO_ 301 1; +BA_ "GenMsgNrOfRepetition" BO_ 301 0; +BA_ "GenMsgCycleTime" BO_ 301 0; +BA_ "NetworkInitialization" BO_ 301 0; +BA_ "GenMsgDelayTime" BO_ 301 0; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 "CAN_DET_CONFID_AZIMUTH_14"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 "CAN_DET_CONFID_AZIMUTH_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14 "CAN_DET_CONFID_AZIMUTH_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14 "CAN_DET_SUPER_RES_TARGET_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14 "CAN_DET_ND_TARGET_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14 "CAN_DET_HOST_VEH_CLUTTER_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14 "CAN_DET_VALID_LEVEL_14"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14 "CAN_DET_AZIMUTH_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14 "CAN_DET_RANGE_14"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14 "CAN_DET_RANGE_RATE_14"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14 "CAN_DET_AMPLITUDE_14"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14 "CAN_SCAN_INDEX_2LSB_14"; +BA_ "GenMsgSendType" BO_ 300 1; +BA_ "GenMsgILSupport" BO_ 300 1; +BA_ "GenMsgNrOfRepetition" BO_ 300 0; +BA_ "GenMsgCycleTime" BO_ 300 0; +BA_ "NetworkInitialization" BO_ 300 0; +BA_ "GenMsgDelayTime" BO_ 300 0; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 "CAN_DET_CONFID_AZIMUTH_13"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 "CAN_DET_CONFID_AZIMUTH_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13 "CAN_DET_CONFID_AZIMUTH_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13 "CAN_DET_SUPER_RES_TARGET_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13 "CAN_DET_ND_TARGET_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13 "CAN_DET_HOST_VEH_CLUTTER_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13 "CAN_DET_VALID_LEVEL_13"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13 "CAN_DET_AZIMUTH_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13 "CAN_DET_RANGE_13"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13 "CAN_DET_RANGE_RATE_13"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13 "CAN_DET_AMPLITUDE_13"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13 "CAN_SCAN_INDEX_2LSB_13"; +BA_ "GenMsgSendType" BO_ 299 1; +BA_ "GenMsgILSupport" BO_ 299 1; +BA_ "GenMsgNrOfRepetition" BO_ 299 0; +BA_ "GenMsgCycleTime" BO_ 299 0; +BA_ "NetworkInitialization" BO_ 299 0; +BA_ "GenMsgDelayTime" BO_ 299 0; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 "CAN_DET_CONFID_AZIMUTH_12"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 "CAN_DET_CONFID_AZIMUTH_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12 "CAN_DET_CONFID_AZIMUTH_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12 "CAN_DET_SUPER_RES_TARGET_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12 "CAN_DET_ND_TARGET_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12 "CAN_DET_HOST_VEH_CLUTTER_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12 "CAN_DET_VALID_LEVEL_12"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12 "CAN_DET_AZIMUTH_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12 "CAN_DET_RANGE_12"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12 "CAN_DET_RANGE_RATE_12"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12 "CAN_DET_AMPLITUDE_12"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12 "CAN_SCAN_INDEX_2LSB_12"; +BA_ "GenMsgSendType" BO_ 298 1; +BA_ "GenMsgILSupport" BO_ 298 1; +BA_ "GenMsgNrOfRepetition" BO_ 298 0; +BA_ "GenMsgCycleTime" BO_ 298 0; +BA_ "NetworkInitialization" BO_ 298 0; +BA_ "GenMsgDelayTime" BO_ 298 0; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 "CAN_DET_CONFID_AZIMUTH_11"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 "CAN_DET_CONFID_AZIMUTH_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11 "CAN_DET_CONFID_AZIMUTH_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11 "CAN_DET_SUPER_RES_TARGET_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11 "CAN_DET_ND_TARGET_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11 "CAN_DET_HOST_VEH_CLUTTER_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11 "CAN_DET_VALID_LEVEL_11"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11 "CAN_DET_AZIMUTH_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11 "CAN_DET_RANGE_11"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11 "CAN_DET_RANGE_RATE_11"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11 "CAN_DET_AMPLITUDE_11"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11 "CAN_SCAN_INDEX_2LSB_11"; +BA_ "GenMsgSendType" BO_ 297 1; +BA_ "GenMsgILSupport" BO_ 297 1; +BA_ "GenMsgNrOfRepetition" BO_ 297 0; +BA_ "GenMsgCycleTime" BO_ 297 0; +BA_ "NetworkInitialization" BO_ 297 0; +BA_ "GenMsgDelayTime" BO_ 297 0; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 "CAN_DET_CONFID_AZIMUTH_10"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 "CAN_DET_CONFID_AZIMUTH_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10 "CAN_DET_CONFID_AZIMUTH_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10 "CAN_DET_SUPER_RES_TARGET_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10 "CAN_DET_ND_TARGET_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10 "CAN_DET_HOST_VEH_CLUTTER_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10 "CAN_DET_VALID_LEVEL_10"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10 "CAN_DET_AZIMUTH_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10 "CAN_DET_RANGE_10"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10 "CAN_DET_RANGE_RATE_10"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10 "CAN_DET_AMPLITUDE_10"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10 "CAN_SCAN_INDEX_2LSB_10"; +BA_ "GenMsgSendType" BO_ 296 1; +BA_ "GenMsgILSupport" BO_ 296 1; +BA_ "GenMsgNrOfRepetition" BO_ 296 0; +BA_ "GenMsgCycleTime" BO_ 296 0; +BA_ "NetworkInitialization" BO_ 296 0; +BA_ "GenMsgDelayTime" BO_ 296 0; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 "CAN_DET_CONFID_AZIMUTH_09"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 "CAN_DET_CONFID_AZIMUTH_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09 "CAN_DET_CONFID_AZIMUTH_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09 "CAN_DET_SUPER_RES_TARGET_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09 "CAN_DET_ND_TARGET_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09 "CAN_DET_HOST_VEH_CLUTTER_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09 "CAN_DET_VALID_LEVEL_09"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09 "CAN_DET_AZIMUTH_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09 "CAN_DET_RANGE_09"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09 "CAN_DET_RANGE_RATE_09"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09 "CAN_DET_AMPLITUDE_09"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09 "CAN_SCAN_INDEX_2LSB_09"; +BA_ "GenMsgSendType" BO_ 295 1; +BA_ "GenMsgILSupport" BO_ 295 1; +BA_ "GenMsgNrOfRepetition" BO_ 295 0; +BA_ "GenMsgCycleTime" BO_ 295 0; +BA_ "NetworkInitialization" BO_ 295 0; +BA_ "GenMsgDelayTime" BO_ 295 0; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 "CAN_DET_CONFID_AZIMUTH_08"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 "CAN_DET_CONFID_AZIMUTH_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08 "CAN_DET_CONFID_AZIMUTH_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08 "CAN_DET_SUPER_RES_TARGET_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08 "CAN_DET_ND_TARGET_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08 "CAN_DET_HOST_VEH_CLUTTER_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08 "CAN_DET_VALID_LEVEL_08"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08 "CAN_DET_AZIMUTH_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08 "CAN_DET_RANGE_08"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08 "CAN_DET_RANGE_RATE_08"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08 "CAN_DET_AMPLITUDE_08"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08 "CAN_SCAN_INDEX_2LSB_08"; +BA_ "GenMsgSendType" BO_ 294 1; +BA_ "GenMsgILSupport" BO_ 294 1; +BA_ "GenMsgNrOfRepetition" BO_ 294 0; +BA_ "GenMsgCycleTime" BO_ 294 0; +BA_ "NetworkInitialization" BO_ 294 0; +BA_ "GenMsgDelayTime" BO_ 294 0; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 "CAN_DET_CONFID_AZIMUTH_07"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 "CAN_DET_CONFID_AZIMUTH_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07 "CAN_DET_CONFID_AZIMUTH_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07 "CAN_DET_SUPER_RES_TARGET_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07 "CAN_DET_ND_TARGET_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07 "CAN_DET_HOST_VEH_CLUTTER_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07 "CAN_DET_VALID_LEVEL_07"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07 "CAN_DET_AZIMUTH_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07 "CAN_DET_RANGE_07"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07 "CAN_DET_RANGE_RATE_07"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07 "CAN_DET_AMPLITUDE_07"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07 "CAN_SCAN_INDEX_2LSB_07"; +BA_ "GenMsgSendType" BO_ 293 1; +BA_ "GenMsgILSupport" BO_ 293 1; +BA_ "GenMsgNrOfRepetition" BO_ 293 0; +BA_ "GenMsgCycleTime" BO_ 293 0; +BA_ "NetworkInitialization" BO_ 293 0; +BA_ "GenMsgDelayTime" BO_ 293 0; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 "CAN_DET_CONFID_AZIMUTH_06"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 "CAN_DET_CONFID_AZIMUTH_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06 "CAN_DET_CONFID_AZIMUTH_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06 "CAN_DET_SUPER_RES_TARGET_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06 "CAN_DET_ND_TARGET_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06 "CAN_DET_HOST_VEH_CLUTTER_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06 "CAN_DET_VALID_LEVEL_06"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06 "CAN_DET_AZIMUTH_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06 "CAN_DET_RANGE_06"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06 "CAN_DET_RANGE_RATE_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06 "CAN_DET_AMPLITUDE_06"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06 "CAN_SCAN_INDEX_2LSB_06"; +BA_ "GenMsgSendType" BO_ 292 1; +BA_ "GenMsgILSupport" BO_ 292 1; +BA_ "GenMsgNrOfRepetition" BO_ 292 0; +BA_ "GenMsgCycleTime" BO_ 292 0; +BA_ "NetworkInitialization" BO_ 292 0; +BA_ "GenMsgDelayTime" BO_ 292 0; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 "CAN_DET_CONFID_AZIMUTH_05"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 "CAN_DET_CONFID_AZIMUTH_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05 "CAN_DET_CONFID_AZIMUTH_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05 "CAN_DET_SUPER_RES_TARGET_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05 "CAN_DET_ND_TARGET_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05 "CAN_DET_HOST_VEH_CLUTTER_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05 "CAN_DET_VALID_LEVEL_05"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05 "CAN_DET_AZIMUTH_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05 "CAN_DET_RANGE_05"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05 "CAN_DET_RANGE_RATE_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05 "CAN_DET_AMPLITUDE_05"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05 "CAN_SCAN_INDEX_2LSB_05"; +BA_ "GenMsgSendType" BO_ 290 1; +BA_ "GenMsgILSupport" BO_ 290 1; +BA_ "GenMsgNrOfRepetition" BO_ 290 0; +BA_ "GenMsgCycleTime" BO_ 290 0; +BA_ "NetworkInitialization" BO_ 290 0; +BA_ "GenMsgDelayTime" BO_ 290 0; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 "CAN_DET_CONFID_AZIMUTH_03"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 "CAN_DET_CONFID_AZIMUTH_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03 "CAN_DET_CONFID_AZIMUTH_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03 "CAN_DET_SUPER_RES_TARGET_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03 "CAN_DET_ND_TARGET_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03 "CAN_DET_HOST_VEH_CLUTTER_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03 "CAN_DET_VALID_LEVEL_03"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03 "CAN_DET_AZIMUTH_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03 "CAN_DET_RANGE_03"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03 "CAN_DET_RANGE_RATE_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03 "CAN_DET_AMPLITUDE_03"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03 "CAN_SCAN_INDEX_2LSB_03"; +BA_ "GenMsgSendType" BO_ 289 1; +BA_ "GenMsgILSupport" BO_ 289 1; +BA_ "GenMsgNrOfRepetition" BO_ 289 0; +BA_ "GenMsgCycleTime" BO_ 289 0; +BA_ "NetworkInitialization" BO_ 289 0; +BA_ "GenMsgDelayTime" BO_ 289 0; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 "CAN_DET_CONFID_AZIMUTH_02"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 "CAN_DET_CONFID_AZIMUTH_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02 "CAN_DET_CONFID_AZIMUTH_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02 "CAN_DET_SUPER_RES_TARGET_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02 "CAN_DET_ND_TARGET_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02 "CAN_DET_HOST_VEH_CLUTTER_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02 "CAN_DET_VALID_LEVEL_02"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02 "CAN_DET_AZIMUTH_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02 "CAN_DET_RANGE_02"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02 "CAN_DET_RANGE_RATE_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02 "CAN_DET_AMPLITUDE_02"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02 "CAN_SCAN_INDEX_2LSB_02"; +BA_ "GenMsgSendType" BO_ 256 1; +BA_ "GenMsgILSupport" BO_ 256 1; +BA_ "GenMsgNrOfRepetition" BO_ 256 0; +BA_ "NetworkInitialization" BO_ 256 0; +BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MINOR_MRR "CAN_PCAN_MINOR_MRR"; +BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MINOR_MRR 0; +BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MAJOR_MRR "CAN_PCAN_MAJOR_MRR"; +BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MAJOR_MRR 0; +BA_ "GenMsgCycleTime" BO_ 257 30; +BA_ "GenMsgSendType" BO_ 257 0; +BA_ "GenMsgILSupport" BO_ 257 1; +BA_ "GenMsgNrOfRepetition" BO_ 257 0; +BA_ "NetworkInitialization" BO_ 257 0; +BA_ "GenSigCmt" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtEn" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtName" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtName" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigCmt" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigStartValue" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE 0; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_MNR 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_EXT_COND_NOK 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_NOT_START 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_OVERHEAT_ERROR 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_NOT_OP 0; +BA_ "GenSigCmt" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigVtEn" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigVtName" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigSendType" SG_ 257 CAN_XCVR_OPERATIONAL 0; +BA_ "GenMsgSendType" BO_ 288 1; +BA_ "GenMsgILSupport" BO_ 288 1; +BA_ "GenMsgNrOfRepetition" BO_ 288 0; +BA_ "GenMsgCycleTime" BO_ 288 0; +BA_ "NetworkInitialization" BO_ 288 0; +BA_ "GenMsgDelayTime" BO_ 288 0; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 "CAN_DET_CONFID_AZIMUTH_01"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 "CAN_DET_CONFID_AZIMUTH_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01 "CAN_DET_CONFID_AZIMUTH_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01 "CAN_DET_SUPER_RES_TARGET_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01 "CAN_DET_ND_TARGET_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01 "CAN_DET_HOST_VEH_CLUTTER_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01 "CAN_DET_VALID_LEVEL_01"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01 "CAN_DET_AZIMUTH_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01 "CAN_DET_RANGE_01"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01 "CAN_DET_RANGE_RATE_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01 "CAN_DET_AMPLITUDE_01"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01 "CAN_SCAN_INDEX_2LSB_01"; +BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; +BA_DEF_DEF_ "CrossOver_LIN" "No"; +BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; +BA_DEF_DEF_ "ContentDependant" "No"; +BA_DEF_DEF_ "GenSigTimeoutTime_RCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_OCS" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_CCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_IPMA" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_SCCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_Generic_BCM" 0; +BA_DEF_DEF_ "NmMessage" "No"; +BA_DEF_DEF_ "DiagResponse" "No"; +BA_DEF_DEF_ "DiagRequest" "No"; +BA_DEF_DEF_ "TpTxIndex" 0; +BA_DEF_DEF_ "DiagState" "No"; +BA_DEF_DEF_ "TpApplType" ""; +BA_DEF_DEF_ "NmAsrMessage" "No"; +BA_DEF_DEF_ "Mulitplexer" "No"; +BA_DEF_DEF_ "ConfiguredTransmitter" "No"; +BA_DEF_DEF_ "EventRateOfChange" 10000; +BA_DEF_DEF_ "GenMsgHandlingTypeDoc" ""; +BA_DEF_DEF_ "GenMsgHandlingTypeCode" ""; +BA_DEF_DEF_ "GenMsgMarked" ""; +BA_DEF_DEF_ "GenSigMarked" ""; +BA_DEF_DEF_ "GenSigVtIndex" ""; +BA_DEF_DEF_ "GenSigVtName" ""; +BA_DEF_DEF_ "GenSigVtEn" ""; +BA_DEF_DEF_ "GenSigSNA" ""; +BA_DEF_DEF_ "GenSigCmt" ""; +BA_DEF_DEF_ "GenMsgCmt" ""; +BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; +BA_DEF_DEF_ "GenSigInactiveValue" 0; +BA_DEF_DEF_ "GenSigMissingSourceValue" 0; +BA_DEF_DEF_ "WakeupSignal" "No"; +BA_DEF_DEF_ "GenSigStartValue" 0; +BA_DEF_DEF_ "GenMsgILSupport" "Yes"; +BA_DEF_DEF_ "NetworkInitializationCommand" "No"; +BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; +BA_DEF_DEF_ "GenMsgCycleTime" 0; +BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; +BA_DEF_DEF_ "GenMsgDelayTime" 0; +BA_DEF_DEF_ "GenMsgNrOfRepetition" 0; +BA_DEF_DEF_ "GenMsgStartDelayTime" 0; +BA_DEF_DEF_ "NetworkInitialization" "No"; +BA_DEF_DEF_ "MessageGateway" "No"; +BA_DEF_DEF_ "ILUsed" "Yes"; +BA_DEF_DEF_ "NetworkInitializationUsed" "No"; +BA_DEF_DEF_ "PowerType" "Switched"; +BA_DEF_DEF_ "NodeStartUpTime" 250; +BA_DEF_DEF_ "NodeWakeUpTime" 10; +BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; +BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; +VAL_ 34 IPMA_PCAN_DataRangeCheck 1 "Fault Present" 0 "No Fault"; +VAL_ 34 IPMA_PCAN_MissingMsg 1 "Fault Present" 0 "No Fault "; +VAL_ 34 VINSignalCompareFailure 1 "Fault Present" 0 "No Fault"; +VAL_ 34 ModuleNotConfiguredError 1 "Fault Present" 0 "No Fault"; +VAL_ 34 CarCfgNotConfiguredError 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ARMtoDSPChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 DSPtoArmChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 HostToArmChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ARMtoHostChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 LoopBWOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 DSPOverrunFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte6_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TuningSensitivityFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 SaturatedTuningFreqFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 LocalOscPowerFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterPowerFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte6_bit0 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 XCVRDeviceSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 FreqSynthesizerSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 AnalogConverterDevicSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 SidelobeBlockage 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit1 1 "Fault Present" 0 "No Fault"; +VAL_ 33 MNRBlocked 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ECUTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 AlignmentRoutineFailedFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 UnreasonableRadarData 1 "Fault Present" 0 "No Fault"; +VAL_ 33 MicroprocessorTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 VerticalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 HorizontalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 FactoryAlignmentMode 1 "Fault Present" 0 "No Fault"; +VAL_ 33 BatteryLowFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 BatteryHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_1p25SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte3_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ThermistorOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_3p3DACSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_3p3RAWSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_5_SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterIDFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit3 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit2 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PCANMissingMsgFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PCANBusOff 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 InstructionSetCheckFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 StackOverflowFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 WatchdogFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PLLLockFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit1 1 "Fault Present" 0 "No Fault"; +VAL_ 33 RAMMemoryTestFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 USCValidationFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit3 1 "Fault Present" 0 "No Fault"; +VAL_ 33 KeepAliveChecksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ProgramCalibrationFlashChecksum 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ApplicationFlashChecksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 371 CAN_AUTO_ALIGN_HANGLE_QF 3 "Accurate" 2 "Inaccurate" 1 "Temporarily undefined" 0 "Undefined"; +VAL_ 371 CAN_ALIGNMENT_STATUS 15 "Undefined_2" 14 "Undefined_1" 13 "Low Amplitude (Flat-plate only)" 12 "No Peak (Flat-plate only)" 11 "Fail Ver and Hor OutOfRange" 10 "Fail Vertical Align OutOfRange" 9 "Fail Horizontal Align OutOfRange" 8 "Fail Time Out" 7 "Fail Only Right Target Found" 6 "Fail Only Left Target Found" 5 "Fail Variance Too Large" 4 "Fail Deviation Too Large" 3 "Fail No Target" 2 "Success" 1 "Busy" 0 "Off"; +VAL_ 371 CAN_ALIGNMENT_STATE 6 "Static alignment flat-plate" 5 "Static alignment 2-target" 4 "Static alignment 1-target" 3 "Service alignment" 2 "Short track alignment" 1 "Auto alignment" 0 "Off"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 351 CAN_DET_CONFID_AZIMUTH_64 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 350 CAN_DET_CONFID_AZIMUTH_63 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 349 CAN_DET_CONFID_AZIMUTH_62 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 348 CAN_DET_CONFID_AZIMUTH_61 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 347 CAN_DET_CONFID_AZIMUTH_60 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 346 CAN_DET_CONFID_AZIMUTH_59 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 345 CAN_DET_CONFID_AZIMUTH_58 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 344 CAN_DET_CONFID_AZIMUTH_57 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 343 CAN_DET_CONFID_AZIMUTH_56 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 342 CAN_DET_CONFID_AZIMUTH_55 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 335 CAN_DET_CONFID_AZIMUTH_48 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 334 CAN_DET_CONFID_AZIMUTH_47 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 333 CAN_DET_CONFID_AZIMUTH_46 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 332 CAN_DET_CONFID_AZIMUTH_45 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 331 CAN_DET_CONFID_AZIMUTH_44 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 330 CAN_DET_CONFID_AZIMUTH_43 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 329 CAN_DET_CONFID_AZIMUTH_42 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 328 CAN_DET_CONFID_AZIMUTH_41 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 327 CAN_DET_CONFID_AZIMUTH_40 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 325 CAN_DET_CONFID_AZIMUTH_38 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 324 CAN_DET_CONFID_AZIMUTH_37 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 323 CAN_DET_CONFID_AZIMUTH_36 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 322 CAN_DET_CONFID_AZIMUTH_35 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 321 CAN_DET_CONFID_AZIMUTH_34 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 320 CAN_DET_CONFID_AZIMUTH_33 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 319 CAN_DET_CONFID_AZIMUTH_32 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 318 CAN_DET_CONFID_AZIMUTH_31 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 317 CAN_DET_CONFID_AZIMUTH_30 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 316 CAN_DET_CONFID_AZIMUTH_29 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 314 CAN_DET_CONFID_AZIMUTH_27 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 313 CAN_DET_CONFID_AZIMUTH_26 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 312 CAN_DET_CONFID_AZIMUTH_25 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 311 CAN_DET_CONFID_AZIMUTH_24 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 310 CAN_DET_CONFID_AZIMUTH_23 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 309 CAN_DET_CONFID_AZIMUTH_22 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 341 CAN_DET_CONFID_AZIMUTH_54 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 340 CAN_DET_CONFID_AZIMUTH_53 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 339 CAN_DET_CONFID_AZIMUTH_52 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 338 CAN_DET_CONFID_AZIMUTH_51 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 337 CAN_DET_CONFID_AZIMUTH_50 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 336 CAN_DET_CONFID_AZIMUTH_49 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 326 CAN_DET_CONFID_AZIMUTH_39 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 315 CAN_DET_CONFID_AZIMUTH_28 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 257 CAN_INTERFERENCE_TYPE 2 "Star PD-Like" 1 "Slow FMCW" 0 "No Interference"; +VAL_ 257 CAN_RECOMMEND_UNCONVERGE 1 "Recommended" 0 "Not Recommended"; +VAL_ 257 CAN_RADAR_ALIGN_INCOMPLETE 1 "Alignment Incomplete" 0 "Alignment Completed"; +VAL_ 257 CAN_BLOCKAGE_SIDELOBE 1 "Radar Blockage" 0 "No Radar Blockage"; +VAL_ 257 CAN_BLOCKAGE_MNR 1 "Radar Blockage" 0 "No Radar Blockage"; +VAL_ 257 CAN_RADAR_EXT_COND_NOK 1 "Too high temp or insufficient pw" 0 "External conditions OK"; +VAL_ 257 CAN_RADAR_ALIGN_OUT_RANGE 1 "Radar out of range" 0 "Radar within range"; +VAL_ 257 CAN_RADAR_ALIGN_NOT_START 1 "Radar align not started" 0 "Radar align started"; +VAL_ 257 CAN_RADAR_OVERHEAT_ERROR 1 "Radar overheat condition" 0 "No Overheat"; +VAL_ 257 CAN_RADAR_NOT_OP 1 "Radar not operational" 0 "Radar operational"; +VAL_ 257 CAN_XCVR_OPERATIONAL 1 "On" 0 "Off "; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; diff --git a/opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc b/opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc new file mode 100644 index 0000000000..2ae927a6f2 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/FORD_CADS_64.dbc @@ -0,0 +1,7289 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: +BU_: MRR +BO_ 1073741824 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX + SG_ New_Signal_943 : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_SENSOR_VANGLE_OFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_SENSOR_FOV_VER : 0|8@0+ (1,0) [0|255] "deg" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE_QF : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE_REF : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_MMIC_Temp4 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_MMIC_Temp3 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_MMIC_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_Processor_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_CHECKSUM : 0|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_COUNTER : 0|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_VEHICLE_MODE : 0|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_USC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_USC_CAL_VER_MINOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_SMC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_HW_VERSION : 0|32@0+ (1,0) [0|4.29497e+09] "" Vector__XXX + SG_ CAN_FAC_TGT_MTG_SPACE_VER : 0|8@0+ (1,-128) [-128|127] "cm" Vector__XXX + SG_ CAN_ANGLE_MISALIGNMENT_VER : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_ANGLE_MOUNTING_VOFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_LATCH_FAULTS : 0|64@0+ (1,0) [0|100] "" Vector__XXX + SG_ CAN_ACTIVE_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX + SG_ CAN_HISTORY_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX + SG_ CAN_SERV_ALIGN_ENABLE : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_LONG_MOUNTING_OFFSET : 0|8@0+ (0.015625,-2) [-2|1.98438] "" Vector__XXX + SG_ CAN_BEAMWIDTH_VERT : 0|7@0+ (0.125,0) [0|15.875] "deg" Vector__XXX + SG_ CAN_VEHICLE_SPEED_CALC_QF : 0|2@0+ (1,0) [0|3] "" Vector__XXX + +BO_ 34 Active_Fault_Latched_2: 8 MRR + SG_ IPMA_PCAN_DataRangeCheck : 4|1@1+ (1,0) [0|1] "" External_Tool + SG_ IPMA_PCAN_MissingMsg : 3|1@1+ (1,0) [0|1] "" External_Tool + SG_ VINSignalCompareFailure : 2|1@1+ (1,0) [0|1] "" External_Tool + SG_ ModuleNotConfiguredError : 1|1@1+ (1,0) [0|1] "" External_Tool + SG_ CarCfgNotConfiguredError : 0|1@1+ (1,0) [0|1] "" External_Tool + +BO_ 33 Active_Fault_Latched_1: 8 MRR + SG_ Active_Flt_Latched_byte7_bit7 : 63|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit6 : 62|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit5 : 61|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit4 : 60|1@1+ (1,0) [0|1] "" External_Tool + SG_ ARMtoDSPChksumFault : 59|1@1+ (1,0) [0|1] "" External_Tool + SG_ DSPtoArmChksumFault : 58|1@1+ (1,0) [0|1] "" External_Tool + SG_ HostToArmChksumFault : 57|1@1+ (1,0) [0|1] "" External_Tool + SG_ ARMtoHostChksumFault : 56|1@1+ (1,0) [0|1] "" External_Tool + SG_ LoopBWOutOfRange : 55|1@1+ (1,0) [0|1] "" External_Tool + SG_ DSPOverrunFault : 54|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte6_bit5 : 53|1@1+ (1,0) [0|1] "" External_Tool + SG_ TuningSensitivityFault : 52|1@1+ (1,0) [0|1] "" External_Tool + SG_ SaturatedTuningFreqFault : 51|1@1+ (1,0) [0|1] "" External_Tool + SG_ LocalOscPowerFault : 50|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterPowerFault : 49|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte6_bit0 : 48|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit7 : 47|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit6 : 46|1@1+ (1,0) [0|1] "" External_Tool + SG_ XCVRDeviceSPIFault : 45|1@1+ (1,0) [0|1] "" External_Tool + SG_ FreqSynthesizerSPIFault : 44|1@1+ (1,0) [0|1] "" External_Tool + SG_ AnalogConverterDevicSPIFault : 43|1@1+ (1,0) [0|1] "" External_Tool + SG_ SidelobeBlockage : 42|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit1 : 41|1@1+ (1,0) [0|1] "" External_Tool + SG_ MNRBlocked : 40|1@1+ (1,0) [0|1] "" External_Tool + SG_ ECUTempHighFault : 39|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterTempHighFault : 38|1@1+ (1,0) [0|1] "" External_Tool + SG_ AlignmentRoutineFailedFault : 37|1@1+ (1,0) [0|1] "" External_Tool + SG_ UnreasonableRadarData : 36|1@1+ (1,0) [0|1] "" External_Tool + SG_ MicroprocessorTempHighFault : 35|1@1+ (1,0) [0|1] "" External_Tool + SG_ VerticalAlignmentOutOfRange : 34|1@1+ (1,0) [0|1] "" External_Tool + SG_ HorizontalAlignmentOutOfRange : 33|1@1+ (1,0) [0|1] "" External_Tool + SG_ FactoryAlignmentMode : 32|1@1+ (1,0) [0|1] "" External_Tool + SG_ BatteryLowFault : 31|1@1+ (1,0) [0|1] "" External_Tool + SG_ BatteryHighFault : 30|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_1p25SupplyOutOfRange : 29|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte3_bit4 : 28|1@1+ (1,0) [0|1] "" External_Tool + SG_ ThermistorOutOfRange : 27|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_3p3DACSupplyOutOfRange : 26|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_3p3RAWSupplyOutOfRange : 25|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_5_SupplyOutOfRange : 24|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterIDFault : 23|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit6 : 22|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit5 : 21|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit4 : 20|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit3 : 19|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit2 : 18|1@1+ (1,0) [0|1] "" External_Tool + SG_ PCANMissingMsgFault : 17|1@1+ (1,0) [0|1] "" External_Tool + SG_ PCANBusOff : 16|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit7 : 15|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit6 : 14|1@1+ (1,0) [0|1] "" External_Tool + SG_ InstructionSetCheckFault : 13|1@1+ (1,0) [0|1] "" External_Tool + SG_ StackOverflowFault : 12|1@1+ (1,0) [0|1] "" External_Tool + SG_ WatchdogFault : 11|1@1+ (1,0) [0|1] "" External_Tool + SG_ PLLLockFault : 10|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit1 : 9|1@1+ (1,0) [0|1] "" External_Tool + SG_ RAMMemoryTestFault : 8|1@1+ (1,0) [0|1] "" External_Tool + SG_ USCValidationFault : 7|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit6 : 6|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit5 : 5|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit4 : 4|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit3 : 3|1@1+ (1,0) [0|1] "" External_Tool + SG_ KeepAliveChecksumFault : 2|1@1+ (1,0) [0|1] "" External_Tool + SG_ ProgramCalibrationFlashChecksum : 1|1@1+ (1,0) [0|1] "" External_Tool + SG_ ApplicationFlashChecksumFault : 0|1@1+ (1,0) [0|1] "" External_Tool + +BO_ 500 XCP_MRR_DAQ_RESP: 8 MRR + SG_ MRR_xcp_daq_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 499 XCP_MRR_DTO_RESP: 8 MRR + SG_ MRR_xcp_dto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 497 XCP_MRR_CTO_RESP: 8 MRR + SG_ MRR_xcp_cto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 1900 Ford_Diag_Resp_Phys: 8 MRR + SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467e+19] "" IFV_Host + +BO_ 261 MRR_Status_SerialNumber: 8 MRR + SG_ CAN_SEQUENCE_NUMBER : 55|16@0+ (1,0) [0|65535] "" External_Tool + SG_ CAN_SERIAL_NUMBER : 7|40@0+ (1,0) [0|1.09951e+12] "" External_Tool + +BO_ 264 MRR_Status_SwVersion: 8 MRR + SG_ CAN_PBL_Field_Revision : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_PBL_Promote_Revision : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Field_Revision : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Promote_Revision : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Release_Revision : 7|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_PBL_Release_Revision : 31|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 373 MRR_Header_SensorPosition: 8 MRR + SG_ CAN_SENSOR_POLARITY : 55|1@0+ (1,0) [0|1] "" External_Tool + SG_ CAN_SENSOR_LAT_OFFSET : 39|16@0+ (0.01,0) [0|655.35] "cm" External_Tool + SG_ CAN_SENSOR_LONG_OFFSET : 23|16@0+ (0.01,0) [0|655.35] "cm" External_Tool + SG_ CAN_SENSOR_HANGLE_OFFSET : 7|8@0+ (0.0625,-8) [-8|7.9375] "deg" External_Tool + +BO_ 372 MRR_Header_SensorCoverage: 8 MRR + SG_ CAN_SENSOR_FOV_HOR : 39|8@0+ (1,0) [0|255] "deg" IFV_VFP + SG_ CAN_DOPPLER_COVERAGE : 23|8@0+ (1,-128) [-128|127] "m/s" IFV_VFP + SG_ CAN_RANGE_COVERAGE : 7|8@0+ (1,0) [0|255] "m" IFV_VFP + +BO_ 371 MRR_Header_AlignmentState: 8 MRR + SG_ CAN_AUTO_ALIGN_HANGLE_QF : 13|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_ALIGNMENT_STATUS : 51|4@0+ (1,0) [0|11] "" IFV_VFP + SG_ CAN_ALIGNMENT_STATE : 55|3@0+ (1,0) [0|7] "" IFV_VFP + SG_ CAN_AUTO_ALIGN_HANGLE_REF : 11|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP + SG_ CAN_AUTO_ALIGN_HANGLE : 7|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP + +BO_ 369 MRR_Header_Timestamps: 8 MRR + SG_ CAN_DET_TIME_SINCE_MEAS : 39|11@0+ (0.1,0) [0|204.7] "ms" IFV_Host + SG_ CAN_SENSOR_TIME_STAMP : 7|32@0+ (0.1,0) [0|4.29497e+08] "ms" IFV_VFP + +BO_ 368 MRR_Header_InformationDetections: 8 MRR + SG_ CAN_ALIGN_UPDATES_DONE : 55|16@0+ (1,0) [0|65535] "" IFV_VFP + SG_ CAN_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" IFV_VFP + SG_ CAN_NUMBER_OF_DET : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_LOOK_ID : 23|2@0+ (1,0) [0|3] "" External_Tool + SG_ CAN_LOOK_INDEX : 7|16@0+ (1,0) [0|65535] "" External_Tool + +BO_ 265 MRR_Status_Temp_Volt: 8 MRR + SG_ CAN_BATT_VOLTS : 63|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_1_25_V : 55|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_5_V : 47|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_3_3_V_RAW : 31|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_3_3_V_DAC : 15|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_MMIC_Temp1 : 39|8@0+ (1,-50) [-50|205] "C" External_Tool + SG_ CAN_Processor_Thermistor : 23|8@0+ (1,-50) [-50|205] "C" External_Tool + SG_ CAN_Processor_Temp1 : 7|8@0+ (1,-50) [-50|205] "C" External_Tool + +BO_ 291 MRR_Detection_004: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_04_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_04_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_04_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_04_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_04_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_04_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_04_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_04_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_04_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_04_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_04_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_04_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_04_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_04_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_04_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 351 MRR_Detection_064: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_64 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_64 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_64 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_64 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_64 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_64 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_64 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_64 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_64 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_64 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 350 MRR_Detection_063: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_63 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_63 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_63 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_63 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_63 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_63 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_63 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_63 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_63 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_63 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 349 MRR_Detection_062: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_62 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_62 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_62 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_62 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_62 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_62 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_62 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_62 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_62 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_62 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 348 MRR_Detection_061: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_61 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_61 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_61 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_61 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_61 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_61 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_61 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_61 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_61 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_61 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 347 MRR_Detection_060: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_60 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_60 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_60 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_60 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_60 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_60 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_60 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_60 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_60 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_60 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 346 MRR_Detection_059: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_59 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_59 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_59 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_59 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_59 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_59 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_59 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_59 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_59 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_59 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 345 MRR_Detection_058: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_58 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_58 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_58 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_58 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_58 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_58 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_58 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_58 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_58 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_58 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 344 MRR_Detection_057: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_57 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_57 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_57 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_57 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_57 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_57 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_57 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_57 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_57 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_57 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 343 MRR_Detection_056: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_56 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_56 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_56 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_56 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_56 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_56 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_56 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_56 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_56 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_56 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 342 MRR_Detection_055: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_55 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_55 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_55 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_55 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_55 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_55 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_55 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_55 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_55 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_55 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 335 MRR_Detection_048: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_48 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_48 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_48 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_48 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_48 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_48 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_48 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_48 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_48 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_48 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 334 MRR_Detection_047: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_47 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_47 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_47 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_47 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_47 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_47 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_47 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_47 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_47 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_47 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 333 MRR_Detection_046: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_46 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_46 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_46 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_46 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_46 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_46 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_46 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_46 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_46 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_46 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 332 MRR_Detection_045: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_45 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_45 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_45 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_45 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_45 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_45 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_45 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_45 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_45 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_45 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 331 MRR_Detection_044: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_44 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_44 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_44 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_44 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_44 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_44 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_44 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_44 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_44 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_44 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 330 MRR_Detection_043: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_43 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_43 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_43 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_43 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_43 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_43 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_43 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_43 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_43 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_43 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 329 MRR_Detection_042: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_42 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_42 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_42 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_42 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_42 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_42 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_42 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_42 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_42 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_42 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 328 MRR_Detection_041: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_41 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_41 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_41 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_41 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_41 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_41 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_41 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_41 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_41 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_41 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 327 MRR_Detection_040: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_40 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_40 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_40 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_40 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_40 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_40 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_40 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_40 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_40 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_40 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 325 MRR_Detection_038: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_38 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_38 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_38 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_38 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_38 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_38 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_38 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_38 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_38 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_38 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 324 MRR_Detection_037: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_37 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_37 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_37 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_37 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_37 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_37 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_37 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_37 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_37 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_37 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 323 MRR_Detection_036: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_36 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_36 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_36 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_36 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_36 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_36 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_36 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_36 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_36 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_36 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 322 MRR_Detection_035: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_35 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_35 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_35 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_35 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_35 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_35 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_35 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_35 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_35 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_35 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 321 MRR_Detection_034: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_34 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_34 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_34 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_34 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_34 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_34 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_34 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_34 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_34 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_34 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 320 MRR_Detection_033: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_33 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_33 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_33 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_33 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_33 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_33 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_33 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_33 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_33 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_33 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 319 MRR_Detection_032: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_32 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_32 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_32 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_32 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_32 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_32 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_32 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_32 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_32 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_32 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 318 MRR_Detection_031: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_31 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_31 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_31 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_31 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_31 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_31 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_31 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_31 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_31 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_31 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 317 MRR_Detection_030: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_30 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_30 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_30 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_30 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_30 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_30 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_30 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_30 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_30 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_30 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 316 MRR_Detection_029: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_29 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_29 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_29 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_29 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_29 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_29 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_29 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_29 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_29 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_29 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 314 MRR_Detection_027: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_27 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_27 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_27 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_27 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_27 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_27 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_27 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_27 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_27 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_27 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 313 MRR_Detection_026: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_26 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_26 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_26 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_26 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_26 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_26 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_26 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_26 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_26 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_26 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 312 MRR_Detection_025: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_25 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_25 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_25 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_25 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_25 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_25 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_25 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_25 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_25 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_25 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 311 MRR_Detection_024: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_24 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_24 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_24 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_24 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_24 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_24 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_24 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_24 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_24 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_24 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 310 MRR_Detection_023: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_23 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_23 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_23 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_23 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_23 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_23 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_23 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_23 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_23 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_23 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 309 MRR_Detection_022: 24 MRR + SG_ CAN_DET_CONFID_AZIMUTH_22_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_22_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_22_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_22_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_22_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_22_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_22_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_22_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_22_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_22_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_22_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_22_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_22_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_22_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_22_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_22_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_22_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_22_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_22_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_22_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_22_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_22_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_22_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_22_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_22_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_22_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_22_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_22_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_22_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_22_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 308 MRR_Detection_021: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_21_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_21_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_21_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_21_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_21_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_21_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_21_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_21_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_21_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_21_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_21_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_21_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_21_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_21_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_21_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 307 MRR_Detection_020: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_20_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_20_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_20_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_20_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_20_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_20_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_20_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_20_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_20_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_20_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_20_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_20_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_20_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_20_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_20_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 306 MRR_Detection_019: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_19_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_19_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_19_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_19_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_19_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_19_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_19_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_19_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_19_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_19_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_19_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_19_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_19_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_19_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_19_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 305 MRR_Detection_018: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_18_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_18_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_18_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_18_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_18_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_18_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_18_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_18_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_18_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_18_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_18_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_18_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_18_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_18_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_18_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 341 MRR_Detection_054: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_54 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_54 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_54 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_54 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_54 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_54 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_54 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_54 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_54 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_54 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 340 MRR_Detection_053: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_53 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_53 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_53 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_53 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_53 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_53 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_53 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_53 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_53 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_53 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 339 MRR_Detection_052: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_52 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_52 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_52 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_52 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_52 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_52 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_52 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_52 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_52 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_52 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 338 MRR_Detection_051: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_51 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_51 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_51 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_51 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_51 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_51 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_51 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_51 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_51 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_51 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 337 MRR_Detection_050: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_50 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_50 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_50 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_50 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_50 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_50 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_50 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_50 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_50 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_50 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 336 MRR_Detection_049: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_49 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_49 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_49 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_49 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_49 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_49 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_49 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_49 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_49 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_49 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 326 MRR_Detection_039: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_39 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_39 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_39 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_39 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_39 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_39 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_39 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_39 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_39 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_39 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 315 MRR_Detection_028: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_28 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_28 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_28 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_28 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_28 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_28 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_28 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_28 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_28 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_28 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 304 MRR_Detection_017: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_17_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_17_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_17_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_17_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_17_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_17_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_17_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_17_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_17_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_17_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_17_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_17_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_17_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_17_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_17_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 303 MRR_Detection_016: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_16_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_16_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_16_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_16_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_16_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_16_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_16_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_16_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_16_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_16_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_16_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_16_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_16_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_16_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_16_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 302 MRR_Detection_015: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_15_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_15_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_15_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_15_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_15_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_15_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_15_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_15_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_15_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_15_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_15_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_15_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_15_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_15_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_15_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 301 MRR_Detection_014: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_14_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_14_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_14_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_14_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_14_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_14_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_14_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_14_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_14_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_14_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_14_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_14_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_14_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_14_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_14_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 300 MRR_Detection_013: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_13_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_13_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_13_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_13_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_13_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_13_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_13_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_13_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_13_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_13_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_13_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_13_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_13_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_13_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_13_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 299 MRR_Detection_012: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_12_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_12_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_12_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_12_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_12_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_12_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_12_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_12_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_12_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_12_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_12_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_12_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_12_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_12_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_12_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 298 MRR_Detection_011: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_11_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_11_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_11_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_11_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_11_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_11_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_11_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_11_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_11_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_11_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_11_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_11_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_11_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_11_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_11_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 297 MRR_Detection_010: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_10_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_10_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_10_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_10_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_10_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_10_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_10_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_10_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_10_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_10_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_10_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_10_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_10_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_10_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_10_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 296 MRR_Detection_009: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_09_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_09_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_09_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_09_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_09_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_09_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_09_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_09_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_09_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_09_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_09_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_09_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_09_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_09_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_09_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 295 MRR_Detection_008: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_08_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_08_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_08_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_08_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_08_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_08_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_08_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_08_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_08_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_08_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_08_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_08_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_08_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_08_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_08_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 294 MRR_Detection_007: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_07_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_07_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_07_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_07_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_07_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_07_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_07_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_07_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_07_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_07_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_07_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_07_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_07_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_07_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_07_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 293 MRR_Detection_006: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_06_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_06_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_06_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_06_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_06_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_06_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_06_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_06_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_06_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_06_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_06_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_06_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_06_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_06_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_06_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 292 MRR_Detection_005: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_05_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_05_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_05_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_05_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_05_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_05_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_05_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_05_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_05_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_05_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_05_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_05_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_05_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_05_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_05_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 290 MRR_Detection_003: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_03_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_03_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_03_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_03_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_03_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_03_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_03_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_03_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_03_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_03_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_03_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_03_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_03_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_03_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_03_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 289 MRR_Detection_002: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_02_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_02_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_02_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_02_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_02_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_02_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_02_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_02_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_02_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_02_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_02_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_02_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_02_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_02_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_02_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 256 MRR_Status_CANVersion: 8 MRR + SG_ CAN_USC_SECTION_COMPATIBILITY : 23|16@0+ (1,0) [0|65535] "" External_Tool + SG_ CAN_PCAN_MINOR_MRR : 7|8@0+ (1,0) [0|255] "" IFV_VFP + SG_ CAN_PCAN_MAJOR_MRR : 15|8@0+ (1,0) [0|255] "" IFV_VFP + +BO_ 257 MRR_Status_Radar: 8 MRR + SG_ CAN_INTERFERENCE_TYPE : 11|2@0+ (1,0) [0|3] "" IFV_Host + SG_ CAN_RECOMMEND_UNCONVERGE : 9|1@0+ (1,0) [0|1] "" IFV_Host + SG_ CAN_BLOCKAGE_SIDELOBE_FILTER_VAL : 15|4@0+ (1,0) [0|15] "" IFV_Host + SG_ CAN_RADAR_ALIGN_INCOMPLETE : 8|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_BLOCKAGE_SIDELOBE : 4|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_BLOCKAGE_MNR : 5|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_EXT_COND_NOK : 1|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_ALIGN_OUT_RANGE : 2|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_ALIGN_NOT_START : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_OVERHEAT_ERROR : 3|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_NOT_OP : 6|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_XCVR_OPERATIONAL : 7|1@0+ (1,0) [0|1] "" IFV_VFP + +BO_ 288 MRR_Detection_001: 64 MRR + SG_ CAN_DET_CONFID_AZIMUTH_01_01 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01_01 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01_01 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01_01 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01_01 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01_01 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01_01 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01_01 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01_01 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01_01 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_01_02 : 105|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01_02 : 128|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01_02 : 120|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01_02 : 121|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01_02 : 72|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01_02 : 119|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01_02 : 103|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01_02 : 87|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01_02 : 79|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01_02 : 89|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_01_03 : 177|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01_03 : 200|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01_03 : 192|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01_03 : 193|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01_03 : 144|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01_03 : 191|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01_03 : 175|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01_03 : 159|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01_03 : 151|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01_03 : 161|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_01_04 : 249|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01_04 : 272|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01_04 : 264|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01_04 : 265|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01_04 : 216|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01_04 : 263|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01_04 : 247|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01_04 : 231|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01_04 : 223|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01_04 : 233|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_01_05 : 321|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01_05 : 344|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01_05 : 336|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01_05 : 337|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01_05 : 288|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01_05 : 335|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01_05 : 319|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01_05 : 303|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01_05 : 295|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01_05 : 305|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_CONFID_AZIMUTH_01_06 : 393|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_01_06 : 416|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_01_06 : 408|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_01_06 : 409|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_01_06 : 360|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_01_06 : 407|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_01_06 : 391|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_01_06 : 375|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_01_06 : 367|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_01_06 : 377|2@0+ (1,0) [0|3] "" IFV_VFP + +BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; +BA_DEF_ SG_ "CrossOver_LIN" ENUM "No","Yes","No","Yes"; +BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes","No","Yes","No","Yes"; +BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ SG_ "GenSigTimeoutTime_RCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_OCS" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_CCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_IPMA" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_SCCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_Generic_BCM" INT 0 100000; +BA_DEF_ BO_ "NmMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "TpTxIndex" INT 0 255; +BA_DEF_ BO_ "DiagState" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "TpApplType" STRING ; +BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "Mulitplexer" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; +BA_DEF_ BO_ "GenMsgHandlingTypeDoc" STRING ; +BA_DEF_ BO_ "GenMsgHandlingTypeCode" STRING ; +BA_DEF_ BO_ "GenMsgMarked" STRING ; +BA_DEF_ SG_ "GenSigMarked" STRING ; +BA_DEF_ SG_ "GenSigVtIndex" STRING ; +BA_DEF_ SG_ "GenSigVtName" STRING ; +BA_DEF_ SG_ "GenSigVtEn" STRING ; +BA_DEF_ SG_ "GenSigSNA" STRING ; +BA_DEF_ SG_ "GenSigCmt" STRING ; +BA_DEF_ BO_ "GenMsgCmt" STRING ; +BA_DEF_ SG_ "GenSigSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; +BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; +BA_DEF_ SG_ "GenSigMissingSourceValue" INT 0 1e+09; +BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes"; +BA_DEF_ SG_ "GenSigStartValue" INT 0 1e+09; +BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes"; +BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "GenMsgSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; +BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; +BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; +BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; +BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; +BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; +BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes"; +BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes"; +BA_DEF_ BU_ "ILUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BU_ "PowerType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes","Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; +BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; +BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; +BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; +BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; +BA_ "GenMsgCycleTime" BO_ 34 1000; +BA_ "GenMsgSendType" BO_ 34 0; +BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; +BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; +BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; +BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; +BA_ "GenSigVtEn" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; +BA_ "GenSigVtName" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; +BA_ "GenSigVtEn" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; +BA_ "GenSigVtName" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; +BA_ "GenSigVtEn" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; +BA_ "GenSigVtName" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; +BA_ "GenMsgCycleTime" BO_ 33 1000; +BA_ "GenMsgSendType" BO_ 33 0; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; +BA_ "GenSigVtEn" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; +BA_ "GenSigVtName" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; +BA_ "GenSigVtEn" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; +BA_ "GenSigVtName" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; +BA_ "GenSigVtEn" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; +BA_ "GenSigVtName" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; +BA_ "GenSigVtEn" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; +BA_ "GenSigVtName" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; +BA_ "GenSigVtEn" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; +BA_ "GenSigVtName" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 DSPOverrunFault "DSPOverrunFault"; +BA_ "GenSigVtName" SG_ 33 DSPOverrunFault "DSPOverrunFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; +BA_ "GenSigVtEn" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; +BA_ "GenSigVtName" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; +BA_ "GenSigVtEn" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; +BA_ "GenSigVtName" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; +BA_ "GenSigVtEn" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; +BA_ "GenSigVtName" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; +BA_ "GenSigVtEn" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; +BA_ "GenSigVtEn" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; +BA_ "GenSigVtName" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; +BA_ "GenSigVtEn" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; +BA_ "GenSigVtName" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; +BA_ "GenSigVtEn" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; +BA_ "GenSigVtName" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; +BA_ "GenSigVtEn" SG_ 33 SidelobeBlockage "SidelobeBlockage"; +BA_ "GenSigVtName" SG_ 33 SidelobeBlockage "SidelobeBlockage"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; +BA_ "GenSigVtEn" SG_ 33 MNRBlocked "MNRBlocked"; +BA_ "GenSigVtName" SG_ 33 MNRBlocked "MNRBlocked"; +BA_ "GenSigVtEn" SG_ 33 ECUTempHighFault "ECUTempHighFault"; +BA_ "GenSigVtName" SG_ 33 ECUTempHighFault "ECUTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; +BA_ "GenSigVtName" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; +BA_ "GenSigVtEn" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; +BA_ "GenSigVtName" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; +BA_ "GenSigVtEn" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; +BA_ "GenSigVtName" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; +BA_ "GenSigVtName" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; +BA_ "GenSigVtName" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; +BA_ "GenSigVtName" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; +BA_ "GenSigVtEn" SG_ 33 BatteryLowFault "BatteryLowFault"; +BA_ "GenSigVtName" SG_ 33 BatteryLowFault "BatteryLowFault"; +BA_ "GenSigVtEn" SG_ 33 BatteryHighFault "BatteryHighFault"; +BA_ "GenSigVtName" SG_ 33 BatteryHighFault "BatteryHighFault"; +BA_ "GenSigVtEn" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; +BA_ "GenSigVtEn" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; +BA_ "GenSigVtName" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 TransmitterIDFault "TransmitterIDFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterIDFault "TransmitterIDFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; +BA_ "GenSigVtEn" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; +BA_ "GenSigVtName" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; +BA_ "GenSigVtEn" SG_ 33 PCANBusOff "PCANBusOff"; +BA_ "GenSigVtName" SG_ 33 PCANBusOff "PCANBusOff"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; +BA_ "GenSigVtEn" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; +BA_ "GenSigVtName" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; +BA_ "GenSigVtEn" SG_ 33 StackOverflowFault "StackOverflowFault"; +BA_ "GenSigVtName" SG_ 33 StackOverflowFault "StackOverflowFault"; +BA_ "GenSigVtEn" SG_ 33 WatchdogFault "WatchdogFault"; +BA_ "GenSigVtName" SG_ 33 WatchdogFault "WatchdogFault"; +BA_ "GenSigVtEn" SG_ 33 PLLLockFault "PLLLockFault"; +BA_ "GenSigVtName" SG_ 33 PLLLockFault "PLLLockFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; +BA_ "GenSigVtEn" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; +BA_ "GenSigVtName" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; +BA_ "GenSigVtName" SG_ 33 USCValidationFault "USCValidationFault"; +BA_ "GenSigVtEn" SG_ 33 USCValidationFault "USCValidationFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; +BA_ "GenSigVtEn" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; +BA_ "GenSigVtName" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; +BA_ "GenSigVtEn" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; +BA_ "GenSigVtName" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; +BA_ "GenSigVtEn" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; +BA_ "GenSigVtName" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; +BA_ "GenMsgNrOfRepetition" BO_ 500 0; +BA_ "GenMsgSendType" BO_ 500 1; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte7 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte7 "MRR_xcp_daq_resp_byte7"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte6 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte6 "MRR_xcp_daq_resp_byte6"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte5 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte5 "MRR_xcp_daq_resp_byte5"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte4 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte4 "MRR_xcp_daq_resp_byte4"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte3 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte3 "MRR_xcp_daq_resp_byte3"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte2 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte2 "MRR_xcp_daq_resp_byte2"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte1 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte1 "MRR_xcp_daq_resp_byte1"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte0 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte0 "MRR_xcp_daq_resp_byte0"; +BA_ "GenMsgNrOfRepetition" BO_ 499 0; +BA_ "GenMsgSendType" BO_ 499 1; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte7 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte7 "MRR_xcp_dto_resp_byte7"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte6 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte6 "MRR_xcp_dto_resp_byte6"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte5 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte5 "MRR_xcp_dto_resp_byte5"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte4 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte4 "MRR_xcp_dto_resp_byte4"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte3 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte3 "MRR_xcp_dto_resp_byte3"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte2 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte2 "MRR_xcp_dto_resp_byte2"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte1 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte1 "MRR_xcp_dto_resp_byte1"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte0 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte0 "MRR_xcp_dto_resp_byte0"; +BA_ "GenMsgNrOfRepetition" BO_ 497 0; +BA_ "GenMsgSendType" BO_ 497 1; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte7 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte7 "MRR_xcp_cto_resp_byte7"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte6 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte6 "MRR_xcp_cto_resp_byte6"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte5 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte5 "MRR_xcp_cto_resp_byte5"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte4 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte4 "MRR_xcp_cto_resp_byte4"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte3 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte3 "MRR_xcp_cto_resp_byte3"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte2 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte2 "MRR_xcp_cto_resp_byte2"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte1 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte1 "MRR_xcp_cto_resp_byte1"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte0 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte0 "MRR_xcp_cto_resp_byte0"; +BA_ "GenMsgSendType" BO_ 1900 1; +BA_ "GenMsgNrOfRepetition" BO_ 1900 0; +BA_ "DiagResponse" BO_ 1900 1; +BA_ "GenSigCmt" SG_ 1900 TesterPhysicalResCCM "TesterPhysicalResCCM"; +BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 0; +BA_ "GenMsgSendType" BO_ 261 0; +BA_ "GenMsgCycleTime" BO_ 261 1000; +BA_ "GenMsgNrOfRepetition" BO_ 261 0; +BA_ "GenSigCmt" SG_ 261 CAN_SEQUENCE_NUMBER "CAN_SEQUENCE_NUMBER"; +BA_ "GenSigCmt" SG_ 261 CAN_SERIAL_NUMBER "CAN_SERIAL_NUMBER"; +BA_ "GenSigSendType" SG_ 261 CAN_SERIAL_NUMBER 0; +BA_ "GenMsgSendType" BO_ 264 1; +BA_ "GenMsgNrOfRepetition" BO_ 264 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Field_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Promote_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Field_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Promote_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Release_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Release_Revision 0; +BA_ "GenMsgSendType" BO_ 373 1; +BA_ "NetworkInitialization" BO_ 373 0; +BA_ "GenMsgNrOfRepetition" BO_ 373 0; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_POLARITY 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_POLARITY "CAN_SENSOR_POLARITY"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LAT_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LAT_OFFSET "CAN_SENSOR_LAT_OFFSET"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LONG_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LONG_OFFSET "CAN_SENSOR_LONG_OFFSET"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_HANGLE_OFFSET "CAN_SENSOR_HANGLE_OFFSET"; +BA_ "GenSigStartValue" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; +BA_ "GenMsgSendType" BO_ 372 1; +BA_ "NetworkInitialization" BO_ 372 0; +BA_ "GenMsgNrOfRepetition" BO_ 372 0; +BA_ "GenSigSendType" SG_ 372 CAN_SENSOR_FOV_HOR 0; +BA_ "GenSigCmt" SG_ 372 CAN_SENSOR_FOV_HOR "CAN_SENSOR_FOV_HOR"; +BA_ "GenSigStartValue" SG_ 372 CAN_SENSOR_FOV_HOR 0; +BA_ "GenSigSendType" SG_ 372 CAN_DOPPLER_COVERAGE 0; +BA_ "GenSigCmt" SG_ 372 CAN_DOPPLER_COVERAGE "CAN_DOPPLER_COVERAGE"; +BA_ "GenSigStartValue" SG_ 372 CAN_DOPPLER_COVERAGE 0; +BA_ "GenSigSendType" SG_ 372 CAN_RANGE_COVERAGE 0; +BA_ "GenSigCmt" SG_ 372 CAN_RANGE_COVERAGE "CAN_RANGE_COVERAGE"; +BA_ "GenMsgSendType" BO_ 371 1; +BA_ "NetworkInitialization" BO_ 371 0; +BA_ "GenMsgNrOfRepetition" BO_ 371 0; +BA_ "GenSigVtEn" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigVtName" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATUS 0; +BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATE 0; +BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; +BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF "CAN_AUTO_ALIGN_HANGLE_REF"; +BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE "CAN_AUTO_ALIGN_HANGLE"; +BA_ "GenMsgSendType" BO_ 369 1; +BA_ "NetworkInitialization" BO_ 369 0; +BA_ "GenMsgNrOfRepetition" BO_ 369 0; +BA_ "GenSigCmt" SG_ 369 CAN_DET_TIME_SINCE_MEAS "CAN_DET_TIME_SINCE_MEAS"; +BA_ "GenSigSendType" SG_ 369 CAN_DET_TIME_SINCE_MEAS 0; +BA_ "GenSigSendType" SG_ 369 CAN_SENSOR_TIME_STAMP 0; +BA_ "GenSigCmt" SG_ 369 CAN_SENSOR_TIME_STAMP "CAN_SENSOR_TIME_STAMP"; +BA_ "GenMsgSendType" BO_ 368 1; +BA_ "NetworkInitialization" BO_ 368 0; +BA_ "GenMsgNrOfRepetition" BO_ 368 0; +BA_ "GenSigSendType" SG_ 368 CAN_ALIGN_UPDATES_DONE 0; +BA_ "GenSigCmt" SG_ 368 CAN_ALIGN_UPDATES_DONE "CAN_ALIGN_UPDATES_DONE"; +BA_ "GenSigSendType" SG_ 368 CAN_SCAN_INDEX 0; +BA_ "GenSigCmt" SG_ 368 CAN_SCAN_INDEX "CAN_SCAN_INDEX"; +BA_ "GenSigSendType" SG_ 368 CAN_NUMBER_OF_DET 0; +BA_ "GenSigCmt" SG_ 368 CAN_NUMBER_OF_DET "CAN_NUMBER_OF_DET"; +BA_ "GenSigSendType" SG_ 368 CAN_LOOK_ID 0; +BA_ "GenSigCmt" SG_ 368 CAN_LOOK_ID "CAN_LOOK_ID"; +BA_ "GenSigSendType" SG_ 368 CAN_LOOK_INDEX 0; +BA_ "GenSigCmt" SG_ 368 CAN_LOOK_INDEX "CAN_LOOK_INDEX"; +BA_ "GenMsgSendType" BO_ 265 1; +BA_ "NetworkInitialization" BO_ 265 0; +BA_ "GenMsgNrOfRepetition" BO_ 265 0; +BA_ "GenSigCmt" SG_ 265 CAN_BATT_VOLTS "CAN_BATT_VOLTS"; +BA_ "GenSigCmt" SG_ 265 CAN_1_25_V "CAN_1_25_V"; +BA_ "GenSigCmt" SG_ 265 CAN_5_V "CAN_5_V"; +BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_RAW "CAN_3_3_V_RAW"; +BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_DAC "CAN_3_3_V_DAC"; +BA_ "GenSigSendType" SG_ 265 CAN_MMIC_Temp1 0; +BA_ "GenSigCmt" SG_ 265 CAN_MMIC_Temp1 "CAN_MMIC_Temp1"; +BA_ "GenSigStartValue" SG_ 265 CAN_MMIC_Temp1 0; +BA_ "GenSigSendType" SG_ 265 CAN_Processor_Thermistor 0; +BA_ "GenSigCmt" SG_ 265 CAN_Processor_Thermistor "CAN_Processor_Thermistor"; +BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Thermistor 0; +BA_ "GenSigSendType" SG_ 265 CAN_Processor_Temp1 0; +BA_ "GenSigCmt" SG_ 265 CAN_Processor_Temp1 "CAN_Processor_Temp1"; +BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Temp1 0; +BA_ "GenMsgSendType" BO_ 291 1; +BA_ "GenMsgILSupport" BO_ 291 1; +BA_ "GenMsgNrOfRepetition" BO_ 291 0; +BA_ "GenMsgCycleTime" BO_ 291 0; +BA_ "NetworkInitialization" BO_ 291 0; +BA_ "GenMsgDelayTime" BO_ 291 0; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 "CAN_DET_CONFID_AZIMUTH_04_01"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 "CAN_DET_CONFID_AZIMUTH_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_01 "CAN_DET_CONFID_AZIMUTH_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_01 "CAN_DET_SUPER_RES_TARGET_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_01 "CAN_DET_ND_TARGET_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_01 "CAN_DET_HOST_VEH_CLUTTER_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_01 "CAN_DET_VALID_LEVEL_04_01"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_01 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_01 "CAN_DET_AZIMUTH_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_01 "CAN_DET_RANGE_04_01"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_01 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_01 "CAN_DET_RANGE_RATE_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_01 "CAN_DET_AMPLITUDE_04_01"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_01 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_01 "CAN_SCAN_INDEX_2LSB_04_01"; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 "CAN_DET_CONFID_AZIMUTH_04_02"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 "CAN_DET_CONFID_AZIMUTH_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_02 "CAN_DET_CONFID_AZIMUTH_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_02 "CAN_DET_SUPER_RES_TARGET_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_02 "CAN_DET_ND_TARGET_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_02 "CAN_DET_HOST_VEH_CLUTTER_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_02 "CAN_DET_VALID_LEVEL_04_02"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_02 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_02 "CAN_DET_AZIMUTH_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_02 "CAN_DET_RANGE_04_02"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_02 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_02 "CAN_DET_RANGE_RATE_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_02 "CAN_DET_AMPLITUDE_04_02"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_02 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_02 "CAN_SCAN_INDEX_2LSB_04_02"; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 "CAN_DET_CONFID_AZIMUTH_04_03"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 "CAN_DET_CONFID_AZIMUTH_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_03 "CAN_DET_CONFID_AZIMUTH_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_03 "CAN_DET_SUPER_RES_TARGET_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_03 "CAN_DET_ND_TARGET_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_03 "CAN_DET_HOST_VEH_CLUTTER_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_03 "CAN_DET_VALID_LEVEL_04_03"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_03 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_03 "CAN_DET_AZIMUTH_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_03 "CAN_DET_RANGE_04_03"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_03 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_03 "CAN_DET_RANGE_RATE_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_03 "CAN_DET_AMPLITUDE_04_03"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_03 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_03 "CAN_SCAN_INDEX_2LSB_04_03"; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 "CAN_DET_CONFID_AZIMUTH_04_04"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 "CAN_DET_CONFID_AZIMUTH_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_04 "CAN_DET_CONFID_AZIMUTH_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_04 "CAN_DET_SUPER_RES_TARGET_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_04 "CAN_DET_ND_TARGET_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_04 "CAN_DET_HOST_VEH_CLUTTER_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_04 "CAN_DET_VALID_LEVEL_04_04"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_04 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_04 "CAN_DET_AZIMUTH_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_04 "CAN_DET_RANGE_04_04"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_04 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_04 "CAN_DET_RANGE_RATE_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_04 "CAN_DET_AMPLITUDE_04_04"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_04 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_04 "CAN_SCAN_INDEX_2LSB_04_04"; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 "CAN_DET_CONFID_AZIMUTH_04_05"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 "CAN_DET_CONFID_AZIMUTH_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_05 "CAN_DET_CONFID_AZIMUTH_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_05 "CAN_DET_SUPER_RES_TARGET_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_05 "CAN_DET_ND_TARGET_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_05 "CAN_DET_HOST_VEH_CLUTTER_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_05 "CAN_DET_VALID_LEVEL_04_05"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_05 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_05 "CAN_DET_AZIMUTH_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_05 "CAN_DET_RANGE_04_05"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_05 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_05 "CAN_DET_RANGE_RATE_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_05 "CAN_DET_AMPLITUDE_04_05"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_05 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_05 "CAN_SCAN_INDEX_2LSB_04_05"; +BA_ "GenSigVtEn" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 "CAN_DET_CONFID_AZIMUTH_04_06"; +BA_ "GenSigVtName" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 "CAN_DET_CONFID_AZIMUTH_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_CONFID_AZIMUTH_04_06 "CAN_DET_CONFID_AZIMUTH_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_SUPER_RES_TARGET_04_06 "CAN_DET_SUPER_RES_TARGET_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_ND_TARGET_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_ND_TARGET_04_06 "CAN_DET_ND_TARGET_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_HOST_VEH_CLUTTER_04_06 "CAN_DET_HOST_VEH_CLUTTER_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_VALID_LEVEL_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_VALID_LEVEL_04_06 "CAN_DET_VALID_LEVEL_04_06"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_AZIMUTH_04_06 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AZIMUTH_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AZIMUTH_04_06 "CAN_DET_AZIMUTH_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_04_06 "CAN_DET_RANGE_04_06"; +BA_ "GenSigStartValue" SG_ 291 CAN_DET_RANGE_RATE_04_06 0; +BA_ "GenSigSendType" SG_ 291 CAN_DET_RANGE_RATE_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_RANGE_RATE_04_06 "CAN_DET_RANGE_RATE_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_DET_AMPLITUDE_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_DET_AMPLITUDE_04_06 "CAN_DET_AMPLITUDE_04_06"; +BA_ "GenSigSendType" SG_ 291 CAN_SCAN_INDEX_2LSB_04_06 0; +BA_ "GenSigCmt" SG_ 291 CAN_SCAN_INDEX_2LSB_04_06 "CAN_SCAN_INDEX_2LSB_04_06"; +BA_ "GenMsgSendType" BO_ 351 1; +BA_ "GenMsgILSupport" BO_ 351 1; +BA_ "GenMsgNrOfRepetition" BO_ 351 0; +BA_ "GenMsgCycleTime" BO_ 351 0; +BA_ "NetworkInitialization" BO_ 351 0; +BA_ "GenMsgDelayTime" BO_ 351 0; +BA_ "GenSigVtEn" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigVtName" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 "CAN_DET_SUPER_RES_TARGET_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_ND_TARGET_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_ND_TARGET_64 "CAN_DET_ND_TARGET_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 "CAN_DET_HOST_VEH_CLUTTER_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_VALID_LEVEL_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_VALID_LEVEL_64 "CAN_DET_VALID_LEVEL_64"; +BA_ "GenSigStartValue" SG_ 351 CAN_DET_AZIMUTH_64 0; +BA_ "GenSigSendType" SG_ 351 CAN_DET_AZIMUTH_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_AZIMUTH_64 "CAN_DET_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_64 "CAN_DET_RANGE_64"; +BA_ "GenSigStartValue" SG_ 351 CAN_DET_RANGE_RATE_64 0; +BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_RATE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_RATE_64 "CAN_DET_RANGE_RATE_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_AMPLITUDE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_AMPLITUDE_64 "CAN_DET_AMPLITUDE_64"; +BA_ "GenSigSendType" SG_ 351 CAN_SCAN_INDEX_2LSB_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_SCAN_INDEX_2LSB_64 "CAN_SCAN_INDEX_2LSB_64"; +BA_ "GenMsgSendType" BO_ 350 1; +BA_ "GenMsgILSupport" BO_ 350 1; +BA_ "GenMsgNrOfRepetition" BO_ 350 0; +BA_ "GenMsgCycleTime" BO_ 350 0; +BA_ "NetworkInitialization" BO_ 350 0; +BA_ "GenMsgDelayTime" BO_ 350 0; +BA_ "GenSigVtEn" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigVtName" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 "CAN_DET_SUPER_RES_TARGET_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_ND_TARGET_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_ND_TARGET_63 "CAN_DET_ND_TARGET_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 "CAN_DET_HOST_VEH_CLUTTER_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_VALID_LEVEL_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_VALID_LEVEL_63 "CAN_DET_VALID_LEVEL_63"; +BA_ "GenSigStartValue" SG_ 350 CAN_DET_AZIMUTH_63 0; +BA_ "GenSigSendType" SG_ 350 CAN_DET_AZIMUTH_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_AZIMUTH_63 "CAN_DET_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_63 "CAN_DET_RANGE_63"; +BA_ "GenSigStartValue" SG_ 350 CAN_DET_RANGE_RATE_63 0; +BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_RATE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_RATE_63 "CAN_DET_RANGE_RATE_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_AMPLITUDE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_AMPLITUDE_63 "CAN_DET_AMPLITUDE_63"; +BA_ "GenSigSendType" SG_ 350 CAN_SCAN_INDEX_2LSB_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_SCAN_INDEX_2LSB_63 "CAN_SCAN_INDEX_2LSB_63"; +BA_ "GenMsgSendType" BO_ 349 1; +BA_ "GenMsgILSupport" BO_ 349 1; +BA_ "GenMsgNrOfRepetition" BO_ 349 0; +BA_ "GenMsgCycleTime" BO_ 349 0; +BA_ "NetworkInitialization" BO_ 349 0; +BA_ "GenMsgDelayTime" BO_ 349 0; +BA_ "GenSigVtEn" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigVtName" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 "CAN_DET_SUPER_RES_TARGET_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_ND_TARGET_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_ND_TARGET_62 "CAN_DET_ND_TARGET_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 "CAN_DET_HOST_VEH_CLUTTER_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_VALID_LEVEL_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_VALID_LEVEL_62 "CAN_DET_VALID_LEVEL_62"; +BA_ "GenSigStartValue" SG_ 349 CAN_DET_AZIMUTH_62 0; +BA_ "GenSigSendType" SG_ 349 CAN_DET_AZIMUTH_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_AZIMUTH_62 "CAN_DET_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_62 "CAN_DET_RANGE_62"; +BA_ "GenSigStartValue" SG_ 349 CAN_DET_RANGE_RATE_62 0; +BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_RATE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_RATE_62 "CAN_DET_RANGE_RATE_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_AMPLITUDE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_AMPLITUDE_62 "CAN_DET_AMPLITUDE_62"; +BA_ "GenSigSendType" SG_ 349 CAN_SCAN_INDEX_2LSB_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_SCAN_INDEX_2LSB_62 "CAN_SCAN_INDEX_2LSB_62"; +BA_ "GenMsgSendType" BO_ 348 1; +BA_ "GenMsgILSupport" BO_ 348 1; +BA_ "GenMsgNrOfRepetition" BO_ 348 0; +BA_ "GenMsgCycleTime" BO_ 348 0; +BA_ "NetworkInitialization" BO_ 348 0; +BA_ "GenMsgDelayTime" BO_ 348 0; +BA_ "GenSigVtEn" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigVtName" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 "CAN_DET_SUPER_RES_TARGET_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_ND_TARGET_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_ND_TARGET_61 "CAN_DET_ND_TARGET_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 "CAN_DET_HOST_VEH_CLUTTER_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_VALID_LEVEL_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_VALID_LEVEL_61 "CAN_DET_VALID_LEVEL_61"; +BA_ "GenSigStartValue" SG_ 348 CAN_DET_AZIMUTH_61 0; +BA_ "GenSigSendType" SG_ 348 CAN_DET_AZIMUTH_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_AZIMUTH_61 "CAN_DET_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_61 "CAN_DET_RANGE_61"; +BA_ "GenSigStartValue" SG_ 348 CAN_DET_RANGE_RATE_61 0; +BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_RATE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_RATE_61 "CAN_DET_RANGE_RATE_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_AMPLITUDE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_AMPLITUDE_61 "CAN_DET_AMPLITUDE_61"; +BA_ "GenSigSendType" SG_ 348 CAN_SCAN_INDEX_2LSB_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_SCAN_INDEX_2LSB_61 "CAN_SCAN_INDEX_2LSB_61"; +BA_ "GenMsgSendType" BO_ 347 1; +BA_ "GenMsgILSupport" BO_ 347 1; +BA_ "GenMsgNrOfRepetition" BO_ 347 0; +BA_ "GenMsgCycleTime" BO_ 347 0; +BA_ "NetworkInitialization" BO_ 347 0; +BA_ "GenMsgDelayTime" BO_ 347 0; +BA_ "GenSigVtEn" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigVtName" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 "CAN_DET_SUPER_RES_TARGET_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_ND_TARGET_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_ND_TARGET_60 "CAN_DET_ND_TARGET_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 "CAN_DET_HOST_VEH_CLUTTER_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_VALID_LEVEL_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_VALID_LEVEL_60 "CAN_DET_VALID_LEVEL_60"; +BA_ "GenSigStartValue" SG_ 347 CAN_DET_AZIMUTH_60 0; +BA_ "GenSigSendType" SG_ 347 CAN_DET_AZIMUTH_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_AZIMUTH_60 "CAN_DET_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_60 "CAN_DET_RANGE_60"; +BA_ "GenSigStartValue" SG_ 347 CAN_DET_RANGE_RATE_60 0; +BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_RATE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_RATE_60 "CAN_DET_RANGE_RATE_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_AMPLITUDE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_AMPLITUDE_60 "CAN_DET_AMPLITUDE_60"; +BA_ "GenSigSendType" SG_ 347 CAN_SCAN_INDEX_2LSB_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_SCAN_INDEX_2LSB_60 "CAN_SCAN_INDEX_2LSB_60"; +BA_ "GenMsgSendType" BO_ 346 1; +BA_ "GenMsgILSupport" BO_ 346 1; +BA_ "GenMsgNrOfRepetition" BO_ 346 0; +BA_ "GenMsgCycleTime" BO_ 346 0; +BA_ "NetworkInitialization" BO_ 346 0; +BA_ "GenMsgDelayTime" BO_ 346 0; +BA_ "GenSigVtEn" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigVtName" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 "CAN_DET_SUPER_RES_TARGET_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_ND_TARGET_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_ND_TARGET_59 "CAN_DET_ND_TARGET_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 "CAN_DET_HOST_VEH_CLUTTER_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_VALID_LEVEL_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_VALID_LEVEL_59 "CAN_DET_VALID_LEVEL_59"; +BA_ "GenSigStartValue" SG_ 346 CAN_DET_AZIMUTH_59 0; +BA_ "GenSigSendType" SG_ 346 CAN_DET_AZIMUTH_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_AZIMUTH_59 "CAN_DET_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_59 "CAN_DET_RANGE_59"; +BA_ "GenSigStartValue" SG_ 346 CAN_DET_RANGE_RATE_59 0; +BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_RATE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_RATE_59 "CAN_DET_RANGE_RATE_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_AMPLITUDE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_AMPLITUDE_59 "CAN_DET_AMPLITUDE_59"; +BA_ "GenSigSendType" SG_ 346 CAN_SCAN_INDEX_2LSB_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_SCAN_INDEX_2LSB_59 "CAN_SCAN_INDEX_2LSB_59"; +BA_ "GenMsgSendType" BO_ 345 1; +BA_ "GenMsgILSupport" BO_ 345 1; +BA_ "GenMsgNrOfRepetition" BO_ 345 0; +BA_ "GenMsgCycleTime" BO_ 345 0; +BA_ "NetworkInitialization" BO_ 345 0; +BA_ "GenMsgDelayTime" BO_ 345 0; +BA_ "GenSigVtEn" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigVtName" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 "CAN_DET_SUPER_RES_TARGET_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_ND_TARGET_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_ND_TARGET_58 "CAN_DET_ND_TARGET_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 "CAN_DET_HOST_VEH_CLUTTER_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_VALID_LEVEL_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_VALID_LEVEL_58 "CAN_DET_VALID_LEVEL_58"; +BA_ "GenSigStartValue" SG_ 345 CAN_DET_AZIMUTH_58 0; +BA_ "GenSigSendType" SG_ 345 CAN_DET_AZIMUTH_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_AZIMUTH_58 "CAN_DET_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_58 "CAN_DET_RANGE_58"; +BA_ "GenSigStartValue" SG_ 345 CAN_DET_RANGE_RATE_58 0; +BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_RATE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_RATE_58 "CAN_DET_RANGE_RATE_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_AMPLITUDE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_AMPLITUDE_58 "CAN_DET_AMPLITUDE_58"; +BA_ "GenSigSendType" SG_ 345 CAN_SCAN_INDEX_2LSB_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_SCAN_INDEX_2LSB_58 "CAN_SCAN_INDEX_2LSB_58"; +BA_ "GenMsgSendType" BO_ 344 1; +BA_ "GenMsgILSupport" BO_ 344 1; +BA_ "GenMsgNrOfRepetition" BO_ 344 0; +BA_ "GenMsgCycleTime" BO_ 344 0; +BA_ "NetworkInitialization" BO_ 344 0; +BA_ "GenMsgDelayTime" BO_ 344 0; +BA_ "GenSigVtEn" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigVtName" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 "CAN_DET_SUPER_RES_TARGET_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_ND_TARGET_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_ND_TARGET_57 "CAN_DET_ND_TARGET_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 "CAN_DET_HOST_VEH_CLUTTER_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_VALID_LEVEL_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_VALID_LEVEL_57 "CAN_DET_VALID_LEVEL_57"; +BA_ "GenSigStartValue" SG_ 344 CAN_DET_AZIMUTH_57 0; +BA_ "GenSigSendType" SG_ 344 CAN_DET_AZIMUTH_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_AZIMUTH_57 "CAN_DET_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_57 "CAN_DET_RANGE_57"; +BA_ "GenSigStartValue" SG_ 344 CAN_DET_RANGE_RATE_57 0; +BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_RATE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_RATE_57 "CAN_DET_RANGE_RATE_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_AMPLITUDE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_AMPLITUDE_57 "CAN_DET_AMPLITUDE_57"; +BA_ "GenSigSendType" SG_ 344 CAN_SCAN_INDEX_2LSB_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_SCAN_INDEX_2LSB_57 "CAN_SCAN_INDEX_2LSB_57"; +BA_ "GenMsgSendType" BO_ 343 1; +BA_ "GenMsgILSupport" BO_ 343 1; +BA_ "GenMsgNrOfRepetition" BO_ 343 0; +BA_ "GenMsgCycleTime" BO_ 343 0; +BA_ "NetworkInitialization" BO_ 343 0; +BA_ "GenMsgDelayTime" BO_ 343 0; +BA_ "GenSigVtEn" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigVtName" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 "CAN_DET_SUPER_RES_TARGET_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_ND_TARGET_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_ND_TARGET_56 "CAN_DET_ND_TARGET_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 "CAN_DET_HOST_VEH_CLUTTER_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_VALID_LEVEL_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_VALID_LEVEL_56 "CAN_DET_VALID_LEVEL_56"; +BA_ "GenSigStartValue" SG_ 343 CAN_DET_AZIMUTH_56 0; +BA_ "GenSigSendType" SG_ 343 CAN_DET_AZIMUTH_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_AZIMUTH_56 "CAN_DET_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_56 "CAN_DET_RANGE_56"; +BA_ "GenSigStartValue" SG_ 343 CAN_DET_RANGE_RATE_56 0; +BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_RATE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_RATE_56 "CAN_DET_RANGE_RATE_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_AMPLITUDE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_AMPLITUDE_56 "CAN_DET_AMPLITUDE_56"; +BA_ "GenSigSendType" SG_ 343 CAN_SCAN_INDEX_2LSB_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_SCAN_INDEX_2LSB_56 "CAN_SCAN_INDEX_2LSB_56"; +BA_ "GenMsgSendType" BO_ 342 1; +BA_ "GenMsgILSupport" BO_ 342 1; +BA_ "GenMsgNrOfRepetition" BO_ 342 0; +BA_ "GenMsgCycleTime" BO_ 342 0; +BA_ "NetworkInitialization" BO_ 342 0; +BA_ "GenMsgDelayTime" BO_ 342 0; +BA_ "GenSigVtEn" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigVtName" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 "CAN_DET_SUPER_RES_TARGET_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_ND_TARGET_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_ND_TARGET_55 "CAN_DET_ND_TARGET_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 "CAN_DET_HOST_VEH_CLUTTER_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_VALID_LEVEL_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_VALID_LEVEL_55 "CAN_DET_VALID_LEVEL_55"; +BA_ "GenSigStartValue" SG_ 342 CAN_DET_AZIMUTH_55 0; +BA_ "GenSigSendType" SG_ 342 CAN_DET_AZIMUTH_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_AZIMUTH_55 "CAN_DET_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_55 "CAN_DET_RANGE_55"; +BA_ "GenSigStartValue" SG_ 342 CAN_DET_RANGE_RATE_55 0; +BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_RATE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_RATE_55 "CAN_DET_RANGE_RATE_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_AMPLITUDE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_AMPLITUDE_55 "CAN_DET_AMPLITUDE_55"; +BA_ "GenSigSendType" SG_ 342 CAN_SCAN_INDEX_2LSB_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_SCAN_INDEX_2LSB_55 "CAN_SCAN_INDEX_2LSB_55"; +BA_ "GenMsgSendType" BO_ 335 1; +BA_ "GenMsgILSupport" BO_ 335 1; +BA_ "GenMsgNrOfRepetition" BO_ 335 0; +BA_ "GenMsgCycleTime" BO_ 335 0; +BA_ "NetworkInitialization" BO_ 335 0; +BA_ "GenMsgDelayTime" BO_ 335 0; +BA_ "GenSigVtEn" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigVtName" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 "CAN_DET_SUPER_RES_TARGET_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_ND_TARGET_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_ND_TARGET_48 "CAN_DET_ND_TARGET_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 "CAN_DET_HOST_VEH_CLUTTER_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_VALID_LEVEL_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_VALID_LEVEL_48 "CAN_DET_VALID_LEVEL_48"; +BA_ "GenSigStartValue" SG_ 335 CAN_DET_AZIMUTH_48 0; +BA_ "GenSigSendType" SG_ 335 CAN_DET_AZIMUTH_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_AZIMUTH_48 "CAN_DET_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_48 "CAN_DET_RANGE_48"; +BA_ "GenSigStartValue" SG_ 335 CAN_DET_RANGE_RATE_48 0; +BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_RATE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_RATE_48 "CAN_DET_RANGE_RATE_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_AMPLITUDE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_AMPLITUDE_48 "CAN_DET_AMPLITUDE_48"; +BA_ "GenSigSendType" SG_ 335 CAN_SCAN_INDEX_2LSB_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_SCAN_INDEX_2LSB_48 "CAN_SCAN_INDEX_2LSB_48"; +BA_ "GenMsgSendType" BO_ 334 1; +BA_ "GenMsgILSupport" BO_ 334 1; +BA_ "GenMsgNrOfRepetition" BO_ 334 0; +BA_ "GenMsgCycleTime" BO_ 334 0; +BA_ "NetworkInitialization" BO_ 334 0; +BA_ "GenMsgDelayTime" BO_ 334 0; +BA_ "GenSigVtEn" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigVtName" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 "CAN_DET_SUPER_RES_TARGET_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_ND_TARGET_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_ND_TARGET_47 "CAN_DET_ND_TARGET_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 "CAN_DET_HOST_VEH_CLUTTER_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_VALID_LEVEL_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_VALID_LEVEL_47 "CAN_DET_VALID_LEVEL_47"; +BA_ "GenSigStartValue" SG_ 334 CAN_DET_AZIMUTH_47 0; +BA_ "GenSigSendType" SG_ 334 CAN_DET_AZIMUTH_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_AZIMUTH_47 "CAN_DET_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_47 "CAN_DET_RANGE_47"; +BA_ "GenSigStartValue" SG_ 334 CAN_DET_RANGE_RATE_47 0; +BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_RATE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_RATE_47 "CAN_DET_RANGE_RATE_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_AMPLITUDE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_AMPLITUDE_47 "CAN_DET_AMPLITUDE_47"; +BA_ "GenSigSendType" SG_ 334 CAN_SCAN_INDEX_2LSB_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_SCAN_INDEX_2LSB_47 "CAN_SCAN_INDEX_2LSB_47"; +BA_ "GenMsgSendType" BO_ 333 1; +BA_ "GenMsgILSupport" BO_ 333 1; +BA_ "GenMsgNrOfRepetition" BO_ 333 0; +BA_ "GenMsgCycleTime" BO_ 333 0; +BA_ "NetworkInitialization" BO_ 333 0; +BA_ "GenMsgDelayTime" BO_ 333 0; +BA_ "GenSigVtEn" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigVtName" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 "CAN_DET_SUPER_RES_TARGET_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_ND_TARGET_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_ND_TARGET_46 "CAN_DET_ND_TARGET_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 "CAN_DET_HOST_VEH_CLUTTER_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_VALID_LEVEL_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_VALID_LEVEL_46 "CAN_DET_VALID_LEVEL_46"; +BA_ "GenSigStartValue" SG_ 333 CAN_DET_AZIMUTH_46 0; +BA_ "GenSigSendType" SG_ 333 CAN_DET_AZIMUTH_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_AZIMUTH_46 "CAN_DET_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_46 "CAN_DET_RANGE_46"; +BA_ "GenSigStartValue" SG_ 333 CAN_DET_RANGE_RATE_46 0; +BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_RATE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_RATE_46 "CAN_DET_RANGE_RATE_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_AMPLITUDE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_AMPLITUDE_46 "CAN_DET_AMPLITUDE_46"; +BA_ "GenSigSendType" SG_ 333 CAN_SCAN_INDEX_2LSB_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_SCAN_INDEX_2LSB_46 "CAN_SCAN_INDEX_2LSB_46"; +BA_ "GenMsgSendType" BO_ 332 1; +BA_ "GenMsgILSupport" BO_ 332 1; +BA_ "GenMsgNrOfRepetition" BO_ 332 0; +BA_ "GenMsgCycleTime" BO_ 332 0; +BA_ "NetworkInitialization" BO_ 332 0; +BA_ "GenMsgDelayTime" BO_ 332 0; +BA_ "GenSigVtEn" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigVtName" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 "CAN_DET_SUPER_RES_TARGET_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_ND_TARGET_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_ND_TARGET_45 "CAN_DET_ND_TARGET_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 "CAN_DET_HOST_VEH_CLUTTER_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_VALID_LEVEL_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_VALID_LEVEL_45 "CAN_DET_VALID_LEVEL_45"; +BA_ "GenSigStartValue" SG_ 332 CAN_DET_AZIMUTH_45 0; +BA_ "GenSigSendType" SG_ 332 CAN_DET_AZIMUTH_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_AZIMUTH_45 "CAN_DET_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_45 "CAN_DET_RANGE_45"; +BA_ "GenSigStartValue" SG_ 332 CAN_DET_RANGE_RATE_45 0; +BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_RATE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_RATE_45 "CAN_DET_RANGE_RATE_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_AMPLITUDE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_AMPLITUDE_45 "CAN_DET_AMPLITUDE_45"; +BA_ "GenSigSendType" SG_ 332 CAN_SCAN_INDEX_2LSB_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_SCAN_INDEX_2LSB_45 "CAN_SCAN_INDEX_2LSB_45"; +BA_ "GenMsgSendType" BO_ 331 1; +BA_ "GenMsgILSupport" BO_ 331 1; +BA_ "GenMsgNrOfRepetition" BO_ 331 0; +BA_ "GenMsgCycleTime" BO_ 331 0; +BA_ "NetworkInitialization" BO_ 331 0; +BA_ "GenMsgDelayTime" BO_ 331 0; +BA_ "GenSigVtEn" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigVtName" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 "CAN_DET_SUPER_RES_TARGET_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_ND_TARGET_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_ND_TARGET_44 "CAN_DET_ND_TARGET_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 "CAN_DET_HOST_VEH_CLUTTER_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_VALID_LEVEL_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_VALID_LEVEL_44 "CAN_DET_VALID_LEVEL_44"; +BA_ "GenSigStartValue" SG_ 331 CAN_DET_AZIMUTH_44 0; +BA_ "GenSigSendType" SG_ 331 CAN_DET_AZIMUTH_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_AZIMUTH_44 "CAN_DET_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_44 "CAN_DET_RANGE_44"; +BA_ "GenSigStartValue" SG_ 331 CAN_DET_RANGE_RATE_44 0; +BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_RATE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_RATE_44 "CAN_DET_RANGE_RATE_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_AMPLITUDE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_AMPLITUDE_44 "CAN_DET_AMPLITUDE_44"; +BA_ "GenSigSendType" SG_ 331 CAN_SCAN_INDEX_2LSB_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_SCAN_INDEX_2LSB_44 "CAN_SCAN_INDEX_2LSB_44"; +BA_ "GenMsgSendType" BO_ 330 1; +BA_ "GenMsgILSupport" BO_ 330 1; +BA_ "GenMsgNrOfRepetition" BO_ 330 0; +BA_ "GenMsgCycleTime" BO_ 330 0; +BA_ "NetworkInitialization" BO_ 330 0; +BA_ "GenMsgDelayTime" BO_ 330 0; +BA_ "GenSigVtEn" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigVtName" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 "CAN_DET_SUPER_RES_TARGET_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_ND_TARGET_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_ND_TARGET_43 "CAN_DET_ND_TARGET_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 "CAN_DET_HOST_VEH_CLUTTER_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_VALID_LEVEL_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_VALID_LEVEL_43 "CAN_DET_VALID_LEVEL_43"; +BA_ "GenSigStartValue" SG_ 330 CAN_DET_AZIMUTH_43 0; +BA_ "GenSigSendType" SG_ 330 CAN_DET_AZIMUTH_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_AZIMUTH_43 "CAN_DET_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_43 "CAN_DET_RANGE_43"; +BA_ "GenSigStartValue" SG_ 330 CAN_DET_RANGE_RATE_43 0; +BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_RATE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_RATE_43 "CAN_DET_RANGE_RATE_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_AMPLITUDE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_AMPLITUDE_43 "CAN_DET_AMPLITUDE_43"; +BA_ "GenSigSendType" SG_ 330 CAN_SCAN_INDEX_2LSB_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_SCAN_INDEX_2LSB_43 "CAN_SCAN_INDEX_2LSB_43"; +BA_ "GenMsgSendType" BO_ 329 1; +BA_ "GenMsgILSupport" BO_ 329 1; +BA_ "GenMsgNrOfRepetition" BO_ 329 0; +BA_ "GenMsgCycleTime" BO_ 329 0; +BA_ "NetworkInitialization" BO_ 329 0; +BA_ "GenMsgDelayTime" BO_ 329 0; +BA_ "GenSigVtEn" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigVtName" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 "CAN_DET_SUPER_RES_TARGET_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_ND_TARGET_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_ND_TARGET_42 "CAN_DET_ND_TARGET_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 "CAN_DET_HOST_VEH_CLUTTER_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_VALID_LEVEL_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_VALID_LEVEL_42 "CAN_DET_VALID_LEVEL_42"; +BA_ "GenSigStartValue" SG_ 329 CAN_DET_AZIMUTH_42 0; +BA_ "GenSigSendType" SG_ 329 CAN_DET_AZIMUTH_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_AZIMUTH_42 "CAN_DET_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_42 "CAN_DET_RANGE_42"; +BA_ "GenSigStartValue" SG_ 329 CAN_DET_RANGE_RATE_42 0; +BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_RATE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_RATE_42 "CAN_DET_RANGE_RATE_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_AMPLITUDE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_AMPLITUDE_42 "CAN_DET_AMPLITUDE_42"; +BA_ "GenSigSendType" SG_ 329 CAN_SCAN_INDEX_2LSB_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_SCAN_INDEX_2LSB_42 "CAN_SCAN_INDEX_2LSB_42"; +BA_ "GenMsgSendType" BO_ 328 1; +BA_ "GenMsgILSupport" BO_ 328 1; +BA_ "GenMsgNrOfRepetition" BO_ 328 0; +BA_ "GenMsgCycleTime" BO_ 328 0; +BA_ "NetworkInitialization" BO_ 328 0; +BA_ "GenMsgDelayTime" BO_ 328 0; +BA_ "GenSigVtEn" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigVtName" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 "CAN_DET_SUPER_RES_TARGET_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_ND_TARGET_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_ND_TARGET_41 "CAN_DET_ND_TARGET_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 "CAN_DET_HOST_VEH_CLUTTER_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_VALID_LEVEL_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_VALID_LEVEL_41 "CAN_DET_VALID_LEVEL_41"; +BA_ "GenSigStartValue" SG_ 328 CAN_DET_AZIMUTH_41 0; +BA_ "GenSigSendType" SG_ 328 CAN_DET_AZIMUTH_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_AZIMUTH_41 "CAN_DET_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_41 "CAN_DET_RANGE_41"; +BA_ "GenSigStartValue" SG_ 328 CAN_DET_RANGE_RATE_41 0; +BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_RATE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_RATE_41 "CAN_DET_RANGE_RATE_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_AMPLITUDE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_AMPLITUDE_41 "CAN_DET_AMPLITUDE_41"; +BA_ "GenSigSendType" SG_ 328 CAN_SCAN_INDEX_2LSB_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_SCAN_INDEX_2LSB_41 "CAN_SCAN_INDEX_2LSB_41"; +BA_ "GenMsgSendType" BO_ 327 1; +BA_ "GenMsgILSupport" BO_ 327 1; +BA_ "GenMsgNrOfRepetition" BO_ 327 0; +BA_ "GenMsgCycleTime" BO_ 327 0; +BA_ "NetworkInitialization" BO_ 327 0; +BA_ "GenMsgDelayTime" BO_ 327 0; +BA_ "GenSigVtEn" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigVtName" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 "CAN_DET_SUPER_RES_TARGET_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_ND_TARGET_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_ND_TARGET_40 "CAN_DET_ND_TARGET_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 "CAN_DET_HOST_VEH_CLUTTER_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_VALID_LEVEL_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_VALID_LEVEL_40 "CAN_DET_VALID_LEVEL_40"; +BA_ "GenSigStartValue" SG_ 327 CAN_DET_AZIMUTH_40 0; +BA_ "GenSigSendType" SG_ 327 CAN_DET_AZIMUTH_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_AZIMUTH_40 "CAN_DET_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_40 "CAN_DET_RANGE_40"; +BA_ "GenSigStartValue" SG_ 327 CAN_DET_RANGE_RATE_40 0; +BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_RATE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_RATE_40 "CAN_DET_RANGE_RATE_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_AMPLITUDE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_AMPLITUDE_40 "CAN_DET_AMPLITUDE_40"; +BA_ "GenSigSendType" SG_ 327 CAN_SCAN_INDEX_2LSB_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_SCAN_INDEX_2LSB_40 "CAN_SCAN_INDEX_2LSB_40"; +BA_ "GenMsgSendType" BO_ 325 1; +BA_ "GenMsgILSupport" BO_ 325 1; +BA_ "GenMsgNrOfRepetition" BO_ 325 0; +BA_ "GenMsgCycleTime" BO_ 325 0; +BA_ "NetworkInitialization" BO_ 325 0; +BA_ "GenMsgDelayTime" BO_ 325 0; +BA_ "GenSigVtEn" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigVtName" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 "CAN_DET_SUPER_RES_TARGET_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_ND_TARGET_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_ND_TARGET_38 "CAN_DET_ND_TARGET_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 "CAN_DET_HOST_VEH_CLUTTER_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_VALID_LEVEL_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_VALID_LEVEL_38 "CAN_DET_VALID_LEVEL_38"; +BA_ "GenSigStartValue" SG_ 325 CAN_DET_AZIMUTH_38 0; +BA_ "GenSigSendType" SG_ 325 CAN_DET_AZIMUTH_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_AZIMUTH_38 "CAN_DET_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_38 "CAN_DET_RANGE_38"; +BA_ "GenSigStartValue" SG_ 325 CAN_DET_RANGE_RATE_38 0; +BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_RATE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_RATE_38 "CAN_DET_RANGE_RATE_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_AMPLITUDE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_AMPLITUDE_38 "CAN_DET_AMPLITUDE_38"; +BA_ "GenSigSendType" SG_ 325 CAN_SCAN_INDEX_2LSB_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_SCAN_INDEX_2LSB_38 "CAN_SCAN_INDEX_2LSB_38"; +BA_ "GenMsgSendType" BO_ 324 1; +BA_ "GenMsgILSupport" BO_ 324 1; +BA_ "GenMsgNrOfRepetition" BO_ 324 0; +BA_ "GenMsgCycleTime" BO_ 324 0; +BA_ "NetworkInitialization" BO_ 324 0; +BA_ "GenMsgDelayTime" BO_ 324 0; +BA_ "GenSigVtEn" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigVtName" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 "CAN_DET_SUPER_RES_TARGET_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_ND_TARGET_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_ND_TARGET_37 "CAN_DET_ND_TARGET_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 "CAN_DET_HOST_VEH_CLUTTER_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_VALID_LEVEL_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_VALID_LEVEL_37 "CAN_DET_VALID_LEVEL_37"; +BA_ "GenSigStartValue" SG_ 324 CAN_DET_AZIMUTH_37 0; +BA_ "GenSigSendType" SG_ 324 CAN_DET_AZIMUTH_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_AZIMUTH_37 "CAN_DET_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_37 "CAN_DET_RANGE_37"; +BA_ "GenSigStartValue" SG_ 324 CAN_DET_RANGE_RATE_37 0; +BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_RATE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_RATE_37 "CAN_DET_RANGE_RATE_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_AMPLITUDE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_AMPLITUDE_37 "CAN_DET_AMPLITUDE_37"; +BA_ "GenSigSendType" SG_ 324 CAN_SCAN_INDEX_2LSB_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_SCAN_INDEX_2LSB_37 "CAN_SCAN_INDEX_2LSB_37"; +BA_ "GenMsgSendType" BO_ 323 1; +BA_ "GenMsgILSupport" BO_ 323 1; +BA_ "GenMsgNrOfRepetition" BO_ 323 0; +BA_ "GenMsgCycleTime" BO_ 323 0; +BA_ "NetworkInitialization" BO_ 323 0; +BA_ "GenMsgDelayTime" BO_ 323 0; +BA_ "GenSigVtEn" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigVtName" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 "CAN_DET_SUPER_RES_TARGET_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_ND_TARGET_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_ND_TARGET_36 "CAN_DET_ND_TARGET_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 "CAN_DET_HOST_VEH_CLUTTER_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_VALID_LEVEL_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_VALID_LEVEL_36 "CAN_DET_VALID_LEVEL_36"; +BA_ "GenSigStartValue" SG_ 323 CAN_DET_AZIMUTH_36 0; +BA_ "GenSigSendType" SG_ 323 CAN_DET_AZIMUTH_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_AZIMUTH_36 "CAN_DET_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_36 "CAN_DET_RANGE_36"; +BA_ "GenSigStartValue" SG_ 323 CAN_DET_RANGE_RATE_36 0; +BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_RATE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_RATE_36 "CAN_DET_RANGE_RATE_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_AMPLITUDE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_AMPLITUDE_36 "CAN_DET_AMPLITUDE_36"; +BA_ "GenSigSendType" SG_ 323 CAN_SCAN_INDEX_2LSB_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_SCAN_INDEX_2LSB_36 "CAN_SCAN_INDEX_2LSB_36"; +BA_ "GenMsgSendType" BO_ 322 1; +BA_ "GenMsgILSupport" BO_ 322 1; +BA_ "GenMsgNrOfRepetition" BO_ 322 0; +BA_ "GenMsgCycleTime" BO_ 322 0; +BA_ "NetworkInitialization" BO_ 322 0; +BA_ "GenMsgDelayTime" BO_ 322 0; +BA_ "GenSigVtEn" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigVtName" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 "CAN_DET_SUPER_RES_TARGET_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_ND_TARGET_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_ND_TARGET_35 "CAN_DET_ND_TARGET_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 "CAN_DET_HOST_VEH_CLUTTER_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_VALID_LEVEL_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_VALID_LEVEL_35 "CAN_DET_VALID_LEVEL_35"; +BA_ "GenSigStartValue" SG_ 322 CAN_DET_AZIMUTH_35 0; +BA_ "GenSigSendType" SG_ 322 CAN_DET_AZIMUTH_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_AZIMUTH_35 "CAN_DET_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_35 "CAN_DET_RANGE_35"; +BA_ "GenSigStartValue" SG_ 322 CAN_DET_RANGE_RATE_35 0; +BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_RATE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_RATE_35 "CAN_DET_RANGE_RATE_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_AMPLITUDE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_AMPLITUDE_35 "CAN_DET_AMPLITUDE_35"; +BA_ "GenSigSendType" SG_ 322 CAN_SCAN_INDEX_2LSB_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_SCAN_INDEX_2LSB_35 "CAN_SCAN_INDEX_2LSB_35"; +BA_ "GenMsgSendType" BO_ 321 1; +BA_ "GenMsgILSupport" BO_ 321 1; +BA_ "GenMsgNrOfRepetition" BO_ 321 0; +BA_ "GenMsgCycleTime" BO_ 321 0; +BA_ "NetworkInitialization" BO_ 321 0; +BA_ "GenMsgDelayTime" BO_ 321 0; +BA_ "GenSigVtEn" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigVtName" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 "CAN_DET_SUPER_RES_TARGET_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_ND_TARGET_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_ND_TARGET_34 "CAN_DET_ND_TARGET_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 "CAN_DET_HOST_VEH_CLUTTER_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_VALID_LEVEL_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_VALID_LEVEL_34 "CAN_DET_VALID_LEVEL_34"; +BA_ "GenSigStartValue" SG_ 321 CAN_DET_AZIMUTH_34 0; +BA_ "GenSigSendType" SG_ 321 CAN_DET_AZIMUTH_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_AZIMUTH_34 "CAN_DET_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_34 "CAN_DET_RANGE_34"; +BA_ "GenSigStartValue" SG_ 321 CAN_DET_RANGE_RATE_34 0; +BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_RATE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_RATE_34 "CAN_DET_RANGE_RATE_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_AMPLITUDE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_AMPLITUDE_34 "CAN_DET_AMPLITUDE_34"; +BA_ "GenSigSendType" SG_ 321 CAN_SCAN_INDEX_2LSB_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_SCAN_INDEX_2LSB_34 "CAN_SCAN_INDEX_2LSB_34"; +BA_ "GenMsgSendType" BO_ 320 1; +BA_ "GenMsgILSupport" BO_ 320 1; +BA_ "GenMsgNrOfRepetition" BO_ 320 0; +BA_ "GenMsgCycleTime" BO_ 320 0; +BA_ "NetworkInitialization" BO_ 320 0; +BA_ "GenMsgDelayTime" BO_ 320 0; +BA_ "GenSigVtEn" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigVtName" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 "CAN_DET_SUPER_RES_TARGET_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_ND_TARGET_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_ND_TARGET_33 "CAN_DET_ND_TARGET_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 "CAN_DET_HOST_VEH_CLUTTER_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_VALID_LEVEL_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_VALID_LEVEL_33 "CAN_DET_VALID_LEVEL_33"; +BA_ "GenSigStartValue" SG_ 320 CAN_DET_AZIMUTH_33 0; +BA_ "GenSigSendType" SG_ 320 CAN_DET_AZIMUTH_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_AZIMUTH_33 "CAN_DET_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_33 "CAN_DET_RANGE_33"; +BA_ "GenSigStartValue" SG_ 320 CAN_DET_RANGE_RATE_33 0; +BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_RATE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_RATE_33 "CAN_DET_RANGE_RATE_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_AMPLITUDE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_AMPLITUDE_33 "CAN_DET_AMPLITUDE_33"; +BA_ "GenSigSendType" SG_ 320 CAN_SCAN_INDEX_2LSB_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_SCAN_INDEX_2LSB_33 "CAN_SCAN_INDEX_2LSB_33"; +BA_ "GenMsgSendType" BO_ 319 1; +BA_ "GenMsgILSupport" BO_ 319 1; +BA_ "GenMsgNrOfRepetition" BO_ 319 0; +BA_ "GenMsgCycleTime" BO_ 319 0; +BA_ "NetworkInitialization" BO_ 319 0; +BA_ "GenMsgDelayTime" BO_ 319 0; +BA_ "GenSigVtEn" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigVtName" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 "CAN_DET_SUPER_RES_TARGET_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_ND_TARGET_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_ND_TARGET_32 "CAN_DET_ND_TARGET_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 "CAN_DET_HOST_VEH_CLUTTER_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_VALID_LEVEL_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_VALID_LEVEL_32 "CAN_DET_VALID_LEVEL_32"; +BA_ "GenSigStartValue" SG_ 319 CAN_DET_AZIMUTH_32 0; +BA_ "GenSigSendType" SG_ 319 CAN_DET_AZIMUTH_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_AZIMUTH_32 "CAN_DET_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_32 "CAN_DET_RANGE_32"; +BA_ "GenSigStartValue" SG_ 319 CAN_DET_RANGE_RATE_32 0; +BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_RATE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_RATE_32 "CAN_DET_RANGE_RATE_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_AMPLITUDE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_AMPLITUDE_32 "CAN_DET_AMPLITUDE_32"; +BA_ "GenSigSendType" SG_ 319 CAN_SCAN_INDEX_2LSB_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_SCAN_INDEX_2LSB_32 "CAN_SCAN_INDEX_2LSB_32"; +BA_ "GenMsgSendType" BO_ 318 1; +BA_ "GenMsgILSupport" BO_ 318 1; +BA_ "GenMsgNrOfRepetition" BO_ 318 0; +BA_ "GenMsgCycleTime" BO_ 318 0; +BA_ "NetworkInitialization" BO_ 318 0; +BA_ "GenMsgDelayTime" BO_ 318 0; +BA_ "GenSigVtEn" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigVtName" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 "CAN_DET_SUPER_RES_TARGET_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_ND_TARGET_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_ND_TARGET_31 "CAN_DET_ND_TARGET_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 "CAN_DET_HOST_VEH_CLUTTER_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_VALID_LEVEL_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_VALID_LEVEL_31 "CAN_DET_VALID_LEVEL_31"; +BA_ "GenSigStartValue" SG_ 318 CAN_DET_AZIMUTH_31 0; +BA_ "GenSigSendType" SG_ 318 CAN_DET_AZIMUTH_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_AZIMUTH_31 "CAN_DET_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_31 "CAN_DET_RANGE_31"; +BA_ "GenSigStartValue" SG_ 318 CAN_DET_RANGE_RATE_31 0; +BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_RATE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_RATE_31 "CAN_DET_RANGE_RATE_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_AMPLITUDE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_AMPLITUDE_31 "CAN_DET_AMPLITUDE_31"; +BA_ "GenSigSendType" SG_ 318 CAN_SCAN_INDEX_2LSB_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_SCAN_INDEX_2LSB_31 "CAN_SCAN_INDEX_2LSB_31"; +BA_ "GenMsgSendType" BO_ 317 1; +BA_ "GenMsgILSupport" BO_ 317 1; +BA_ "GenMsgNrOfRepetition" BO_ 317 0; +BA_ "GenMsgCycleTime" BO_ 317 0; +BA_ "NetworkInitialization" BO_ 317 0; +BA_ "GenMsgDelayTime" BO_ 317 0; +BA_ "GenSigVtEn" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigVtName" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 "CAN_DET_SUPER_RES_TARGET_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_ND_TARGET_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_ND_TARGET_30 "CAN_DET_ND_TARGET_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 "CAN_DET_HOST_VEH_CLUTTER_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_VALID_LEVEL_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_VALID_LEVEL_30 "CAN_DET_VALID_LEVEL_30"; +BA_ "GenSigStartValue" SG_ 317 CAN_DET_AZIMUTH_30 0; +BA_ "GenSigSendType" SG_ 317 CAN_DET_AZIMUTH_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_AZIMUTH_30 "CAN_DET_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_30 "CAN_DET_RANGE_30"; +BA_ "GenSigStartValue" SG_ 317 CAN_DET_RANGE_RATE_30 0; +BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_RATE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_RATE_30 "CAN_DET_RANGE_RATE_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_AMPLITUDE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_AMPLITUDE_30 "CAN_DET_AMPLITUDE_30"; +BA_ "GenSigSendType" SG_ 317 CAN_SCAN_INDEX_2LSB_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_SCAN_INDEX_2LSB_30 "CAN_SCAN_INDEX_2LSB_30"; +BA_ "GenMsgSendType" BO_ 316 1; +BA_ "GenMsgILSupport" BO_ 316 1; +BA_ "GenMsgNrOfRepetition" BO_ 316 0; +BA_ "GenMsgCycleTime" BO_ 316 0; +BA_ "NetworkInitialization" BO_ 316 0; +BA_ "GenMsgDelayTime" BO_ 316 0; +BA_ "GenSigVtEn" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigVtName" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 "CAN_DET_SUPER_RES_TARGET_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_ND_TARGET_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_ND_TARGET_29 "CAN_DET_ND_TARGET_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 "CAN_DET_HOST_VEH_CLUTTER_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_VALID_LEVEL_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_VALID_LEVEL_29 "CAN_DET_VALID_LEVEL_29"; +BA_ "GenSigStartValue" SG_ 316 CAN_DET_AZIMUTH_29 0; +BA_ "GenSigSendType" SG_ 316 CAN_DET_AZIMUTH_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_AZIMUTH_29 "CAN_DET_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_29 "CAN_DET_RANGE_29"; +BA_ "GenSigStartValue" SG_ 316 CAN_DET_RANGE_RATE_29 0; +BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_RATE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_RATE_29 "CAN_DET_RANGE_RATE_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_AMPLITUDE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_AMPLITUDE_29 "CAN_DET_AMPLITUDE_29"; +BA_ "GenSigSendType" SG_ 316 CAN_SCAN_INDEX_2LSB_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_SCAN_INDEX_2LSB_29 "CAN_SCAN_INDEX_2LSB_29"; +BA_ "GenMsgSendType" BO_ 314 1; +BA_ "GenMsgILSupport" BO_ 314 1; +BA_ "GenMsgNrOfRepetition" BO_ 314 0; +BA_ "GenMsgCycleTime" BO_ 314 0; +BA_ "NetworkInitialization" BO_ 314 0; +BA_ "GenMsgDelayTime" BO_ 314 0; +BA_ "GenSigVtEn" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigVtName" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 "CAN_DET_SUPER_RES_TARGET_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_ND_TARGET_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_ND_TARGET_27 "CAN_DET_ND_TARGET_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 "CAN_DET_HOST_VEH_CLUTTER_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_VALID_LEVEL_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_VALID_LEVEL_27 "CAN_DET_VALID_LEVEL_27"; +BA_ "GenSigStartValue" SG_ 314 CAN_DET_AZIMUTH_27 0; +BA_ "GenSigSendType" SG_ 314 CAN_DET_AZIMUTH_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_AZIMUTH_27 "CAN_DET_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_27 "CAN_DET_RANGE_27"; +BA_ "GenSigStartValue" SG_ 314 CAN_DET_RANGE_RATE_27 0; +BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_RATE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_RATE_27 "CAN_DET_RANGE_RATE_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_AMPLITUDE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_AMPLITUDE_27 "CAN_DET_AMPLITUDE_27"; +BA_ "GenSigSendType" SG_ 314 CAN_SCAN_INDEX_2LSB_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_SCAN_INDEX_2LSB_27 "CAN_SCAN_INDEX_2LSB_27"; +BA_ "GenMsgSendType" BO_ 313 1; +BA_ "GenMsgILSupport" BO_ 313 1; +BA_ "GenMsgNrOfRepetition" BO_ 313 0; +BA_ "GenMsgCycleTime" BO_ 313 0; +BA_ "NetworkInitialization" BO_ 313 0; +BA_ "GenMsgDelayTime" BO_ 313 0; +BA_ "GenSigVtEn" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigVtName" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 "CAN_DET_SUPER_RES_TARGET_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_ND_TARGET_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_ND_TARGET_26 "CAN_DET_ND_TARGET_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 "CAN_DET_HOST_VEH_CLUTTER_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_VALID_LEVEL_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_VALID_LEVEL_26 "CAN_DET_VALID_LEVEL_26"; +BA_ "GenSigStartValue" SG_ 313 CAN_DET_AZIMUTH_26 0; +BA_ "GenSigSendType" SG_ 313 CAN_DET_AZIMUTH_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_AZIMUTH_26 "CAN_DET_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_26 "CAN_DET_RANGE_26"; +BA_ "GenSigStartValue" SG_ 313 CAN_DET_RANGE_RATE_26 0; +BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_RATE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_RATE_26 "CAN_DET_RANGE_RATE_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_AMPLITUDE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_AMPLITUDE_26 "CAN_DET_AMPLITUDE_26"; +BA_ "GenSigSendType" SG_ 313 CAN_SCAN_INDEX_2LSB_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_SCAN_INDEX_2LSB_26 "CAN_SCAN_INDEX_2LSB_26"; +BA_ "GenMsgSendType" BO_ 312 1; +BA_ "GenMsgILSupport" BO_ 312 1; +BA_ "GenMsgNrOfRepetition" BO_ 312 0; +BA_ "GenMsgCycleTime" BO_ 312 0; +BA_ "NetworkInitialization" BO_ 312 0; +BA_ "GenMsgDelayTime" BO_ 312 0; +BA_ "GenSigVtEn" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigVtName" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 "CAN_DET_SUPER_RES_TARGET_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_ND_TARGET_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_ND_TARGET_25 "CAN_DET_ND_TARGET_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 "CAN_DET_HOST_VEH_CLUTTER_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_VALID_LEVEL_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_VALID_LEVEL_25 "CAN_DET_VALID_LEVEL_25"; +BA_ "GenSigStartValue" SG_ 312 CAN_DET_AZIMUTH_25 0; +BA_ "GenSigSendType" SG_ 312 CAN_DET_AZIMUTH_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_AZIMUTH_25 "CAN_DET_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_25 "CAN_DET_RANGE_25"; +BA_ "GenSigStartValue" SG_ 312 CAN_DET_RANGE_RATE_25 0; +BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_RATE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_RATE_25 "CAN_DET_RANGE_RATE_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_AMPLITUDE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_AMPLITUDE_25 "CAN_DET_AMPLITUDE_25"; +BA_ "GenSigSendType" SG_ 312 CAN_SCAN_INDEX_2LSB_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_SCAN_INDEX_2LSB_25 "CAN_SCAN_INDEX_2LSB_25"; +BA_ "GenMsgSendType" BO_ 311 1; +BA_ "GenMsgILSupport" BO_ 311 1; +BA_ "GenMsgNrOfRepetition" BO_ 311 0; +BA_ "GenMsgCycleTime" BO_ 311 0; +BA_ "NetworkInitialization" BO_ 311 0; +BA_ "GenMsgDelayTime" BO_ 311 0; +BA_ "GenSigVtEn" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigVtName" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 "CAN_DET_SUPER_RES_TARGET_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_ND_TARGET_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_ND_TARGET_24 "CAN_DET_ND_TARGET_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 "CAN_DET_HOST_VEH_CLUTTER_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_VALID_LEVEL_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_VALID_LEVEL_24 "CAN_DET_VALID_LEVEL_24"; +BA_ "GenSigStartValue" SG_ 311 CAN_DET_AZIMUTH_24 0; +BA_ "GenSigSendType" SG_ 311 CAN_DET_AZIMUTH_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_AZIMUTH_24 "CAN_DET_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_24 "CAN_DET_RANGE_24"; +BA_ "GenSigStartValue" SG_ 311 CAN_DET_RANGE_RATE_24 0; +BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_RATE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_RATE_24 "CAN_DET_RANGE_RATE_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_AMPLITUDE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_AMPLITUDE_24 "CAN_DET_AMPLITUDE_24"; +BA_ "GenSigSendType" SG_ 311 CAN_SCAN_INDEX_2LSB_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_SCAN_INDEX_2LSB_24 "CAN_SCAN_INDEX_2LSB_24"; +BA_ "GenMsgSendType" BO_ 310 1; +BA_ "GenMsgILSupport" BO_ 310 1; +BA_ "GenMsgNrOfRepetition" BO_ 310 0; +BA_ "GenMsgCycleTime" BO_ 310 0; +BA_ "NetworkInitialization" BO_ 310 0; +BA_ "GenMsgDelayTime" BO_ 310 0; +BA_ "GenSigVtEn" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigVtName" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 "CAN_DET_SUPER_RES_TARGET_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_ND_TARGET_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_ND_TARGET_23 "CAN_DET_ND_TARGET_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 "CAN_DET_HOST_VEH_CLUTTER_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_VALID_LEVEL_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_VALID_LEVEL_23 "CAN_DET_VALID_LEVEL_23"; +BA_ "GenSigStartValue" SG_ 310 CAN_DET_AZIMUTH_23 0; +BA_ "GenSigSendType" SG_ 310 CAN_DET_AZIMUTH_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_AZIMUTH_23 "CAN_DET_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_23 "CAN_DET_RANGE_23"; +BA_ "GenSigStartValue" SG_ 310 CAN_DET_RANGE_RATE_23 0; +BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_RATE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_RATE_23 "CAN_DET_RANGE_RATE_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_AMPLITUDE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_AMPLITUDE_23 "CAN_DET_AMPLITUDE_23"; +BA_ "GenSigSendType" SG_ 310 CAN_SCAN_INDEX_2LSB_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_SCAN_INDEX_2LSB_23 "CAN_SCAN_INDEX_2LSB_23"; +BA_ "GenMsgSendType" BO_ 309 1; +BA_ "GenMsgILSupport" BO_ 309 1; +BA_ "GenMsgNrOfRepetition" BO_ 309 0; +BA_ "GenMsgCycleTime" BO_ 309 0; +BA_ "NetworkInitialization" BO_ 309 0; +BA_ "GenMsgDelayTime" BO_ 309 0; +BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 "CAN_DET_CONFID_AZIMUTH_22_01"; +BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 "CAN_DET_CONFID_AZIMUTH_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_01 "CAN_DET_CONFID_AZIMUTH_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_01 "CAN_DET_SUPER_RES_TARGET_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22_01 "CAN_DET_ND_TARGET_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_01 "CAN_DET_HOST_VEH_CLUTTER_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22_01 "CAN_DET_VALID_LEVEL_22_01"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22_01 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22_01 "CAN_DET_AZIMUTH_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22_01 "CAN_DET_RANGE_22_01"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22_01 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22_01 "CAN_DET_RANGE_RATE_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22_01 "CAN_DET_AMPLITUDE_22_01"; +BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22_01 0; +BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22_01 "CAN_SCAN_INDEX_2LSB_22_01"; +BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 "CAN_DET_CONFID_AZIMUTH_22_02"; +BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 "CAN_DET_CONFID_AZIMUTH_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_02 "CAN_DET_CONFID_AZIMUTH_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_02 "CAN_DET_SUPER_RES_TARGET_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22_02 "CAN_DET_ND_TARGET_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_02 "CAN_DET_HOST_VEH_CLUTTER_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22_02 "CAN_DET_VALID_LEVEL_22_02"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22_02 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22_02 "CAN_DET_AZIMUTH_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22_02 "CAN_DET_RANGE_22_02"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22_02 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22_02 "CAN_DET_RANGE_RATE_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22_02 "CAN_DET_AMPLITUDE_22_02"; +BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22_02 0; +BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22_02 "CAN_SCAN_INDEX_2LSB_22_02"; +BA_ "GenSigVtEn" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 "CAN_DET_CONFID_AZIMUTH_22_03"; +BA_ "GenSigVtName" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 "CAN_DET_CONFID_AZIMUTH_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_CONFID_AZIMUTH_22_03 "CAN_DET_CONFID_AZIMUTH_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_SUPER_RES_TARGET_22_03 "CAN_DET_SUPER_RES_TARGET_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_ND_TARGET_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_ND_TARGET_22_03 "CAN_DET_ND_TARGET_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_HOST_VEH_CLUTTER_22_03 "CAN_DET_HOST_VEH_CLUTTER_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_VALID_LEVEL_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_VALID_LEVEL_22_03 "CAN_DET_VALID_LEVEL_22_03"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_AZIMUTH_22_03 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AZIMUTH_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AZIMUTH_22_03 "CAN_DET_AZIMUTH_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_22_03 "CAN_DET_RANGE_22_03"; +BA_ "GenSigStartValue" SG_ 309 CAN_DET_RANGE_RATE_22_03 0; +BA_ "GenSigSendType" SG_ 309 CAN_DET_RANGE_RATE_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_RANGE_RATE_22_03 "CAN_DET_RANGE_RATE_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_DET_AMPLITUDE_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_DET_AMPLITUDE_22_03 "CAN_DET_AMPLITUDE_22_03"; +BA_ "GenSigSendType" SG_ 309 CAN_SCAN_INDEX_2LSB_22_03 0; +BA_ "GenSigCmt" SG_ 309 CAN_SCAN_INDEX_2LSB_22_03 "CAN_SCAN_INDEX_2LSB_22_03"; +BA_ "GenMsgSendType" BO_ 308 1; +BA_ "GenMsgILSupport" BO_ 308 1; +BA_ "GenMsgNrOfRepetition" BO_ 308 0; +BA_ "GenMsgCycleTime" BO_ 308 0; +BA_ "NetworkInitialization" BO_ 308 0; +BA_ "GenMsgDelayTime" BO_ 308 0; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 "CAN_DET_CONFID_AZIMUTH_21_01"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 "CAN_DET_CONFID_AZIMUTH_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_01 "CAN_DET_CONFID_AZIMUTH_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_01 "CAN_DET_SUPER_RES_TARGET_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_01 "CAN_DET_ND_TARGET_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_01 "CAN_DET_HOST_VEH_CLUTTER_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_01 "CAN_DET_VALID_LEVEL_21_01"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_01 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_01 "CAN_DET_AZIMUTH_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_01 "CAN_DET_RANGE_21_01"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_01 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_01 "CAN_DET_RANGE_RATE_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_01 "CAN_DET_AMPLITUDE_21_01"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_01 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_01 "CAN_SCAN_INDEX_2LSB_21_01"; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 "CAN_DET_CONFID_AZIMUTH_21_02"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 "CAN_DET_CONFID_AZIMUTH_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_02 "CAN_DET_CONFID_AZIMUTH_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_02 "CAN_DET_SUPER_RES_TARGET_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_02 "CAN_DET_ND_TARGET_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_02 "CAN_DET_HOST_VEH_CLUTTER_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_02 "CAN_DET_VALID_LEVEL_21_02"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_02 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_02 "CAN_DET_AZIMUTH_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_02 "CAN_DET_RANGE_21_02"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_02 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_02 "CAN_DET_RANGE_RATE_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_02 "CAN_DET_AMPLITUDE_21_02"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_02 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_02 "CAN_SCAN_INDEX_2LSB_21_02"; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 "CAN_DET_CONFID_AZIMUTH_21_03"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 "CAN_DET_CONFID_AZIMUTH_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_03 "CAN_DET_CONFID_AZIMUTH_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_03 "CAN_DET_SUPER_RES_TARGET_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_03 "CAN_DET_ND_TARGET_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_03 "CAN_DET_HOST_VEH_CLUTTER_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_03 "CAN_DET_VALID_LEVEL_21_03"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_03 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_03 "CAN_DET_AZIMUTH_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_03 "CAN_DET_RANGE_21_03"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_03 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_03 "CAN_DET_RANGE_RATE_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_03 "CAN_DET_AMPLITUDE_21_03"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_03 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_03 "CAN_SCAN_INDEX_2LSB_21_03"; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 "CAN_DET_CONFID_AZIMUTH_21_04"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 "CAN_DET_CONFID_AZIMUTH_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_04 "CAN_DET_CONFID_AZIMUTH_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_04 "CAN_DET_SUPER_RES_TARGET_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_04 "CAN_DET_ND_TARGET_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_04 "CAN_DET_HOST_VEH_CLUTTER_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_04 "CAN_DET_VALID_LEVEL_21_04"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_04 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_04 "CAN_DET_AZIMUTH_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_04 "CAN_DET_RANGE_21_04"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_04 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_04 "CAN_DET_RANGE_RATE_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_04 "CAN_DET_AMPLITUDE_21_04"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_04 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_04 "CAN_SCAN_INDEX_2LSB_21_04"; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 "CAN_DET_CONFID_AZIMUTH_21_05"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 "CAN_DET_CONFID_AZIMUTH_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_05 "CAN_DET_CONFID_AZIMUTH_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_05 "CAN_DET_SUPER_RES_TARGET_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_05 "CAN_DET_ND_TARGET_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_05 "CAN_DET_HOST_VEH_CLUTTER_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_05 "CAN_DET_VALID_LEVEL_21_05"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_05 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_05 "CAN_DET_AZIMUTH_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_05 "CAN_DET_RANGE_21_05"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_05 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_05 "CAN_DET_RANGE_RATE_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_05 "CAN_DET_AMPLITUDE_21_05"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_05 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_05 "CAN_SCAN_INDEX_2LSB_21_05"; +BA_ "GenSigVtEn" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 "CAN_DET_CONFID_AZIMUTH_21_06"; +BA_ "GenSigVtName" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 "CAN_DET_CONFID_AZIMUTH_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_CONFID_AZIMUTH_21_06 "CAN_DET_CONFID_AZIMUTH_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_SUPER_RES_TARGET_21_06 "CAN_DET_SUPER_RES_TARGET_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_ND_TARGET_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_ND_TARGET_21_06 "CAN_DET_ND_TARGET_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_HOST_VEH_CLUTTER_21_06 "CAN_DET_HOST_VEH_CLUTTER_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_VALID_LEVEL_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_VALID_LEVEL_21_06 "CAN_DET_VALID_LEVEL_21_06"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_AZIMUTH_21_06 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AZIMUTH_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AZIMUTH_21_06 "CAN_DET_AZIMUTH_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_21_06 "CAN_DET_RANGE_21_06"; +BA_ "GenSigStartValue" SG_ 308 CAN_DET_RANGE_RATE_21_06 0; +BA_ "GenSigSendType" SG_ 308 CAN_DET_RANGE_RATE_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_RANGE_RATE_21_06 "CAN_DET_RANGE_RATE_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_DET_AMPLITUDE_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_DET_AMPLITUDE_21_06 "CAN_DET_AMPLITUDE_21_06"; +BA_ "GenSigSendType" SG_ 308 CAN_SCAN_INDEX_2LSB_21_06 0; +BA_ "GenSigCmt" SG_ 308 CAN_SCAN_INDEX_2LSB_21_06 "CAN_SCAN_INDEX_2LSB_21_06"; +BA_ "GenMsgSendType" BO_ 307 1; +BA_ "GenMsgILSupport" BO_ 307 1; +BA_ "GenMsgNrOfRepetition" BO_ 307 0; +BA_ "GenMsgCycleTime" BO_ 307 0; +BA_ "NetworkInitialization" BO_ 307 0; +BA_ "GenMsgDelayTime" BO_ 307 0; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 "CAN_DET_CONFID_AZIMUTH_20_01"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 "CAN_DET_CONFID_AZIMUTH_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_01 "CAN_DET_CONFID_AZIMUTH_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_01 "CAN_DET_SUPER_RES_TARGET_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_01 "CAN_DET_ND_TARGET_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_01 "CAN_DET_HOST_VEH_CLUTTER_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_01 "CAN_DET_VALID_LEVEL_20_01"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_01 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_01 "CAN_DET_AZIMUTH_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_01 "CAN_DET_RANGE_20_01"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_01 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_01 "CAN_DET_RANGE_RATE_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_01 "CAN_DET_AMPLITUDE_20_01"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_01 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_01 "CAN_SCAN_INDEX_2LSB_20_01"; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 "CAN_DET_CONFID_AZIMUTH_20_02"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 "CAN_DET_CONFID_AZIMUTH_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_02 "CAN_DET_CONFID_AZIMUTH_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_02 "CAN_DET_SUPER_RES_TARGET_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_02 "CAN_DET_ND_TARGET_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_02 "CAN_DET_HOST_VEH_CLUTTER_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_02 "CAN_DET_VALID_LEVEL_20_02"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_02 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_02 "CAN_DET_AZIMUTH_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_02 "CAN_DET_RANGE_20_02"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_02 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_02 "CAN_DET_RANGE_RATE_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_02 "CAN_DET_AMPLITUDE_20_02"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_02 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_02 "CAN_SCAN_INDEX_2LSB_20_02"; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 "CAN_DET_CONFID_AZIMUTH_20_03"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 "CAN_DET_CONFID_AZIMUTH_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_03 "CAN_DET_CONFID_AZIMUTH_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_03 "CAN_DET_SUPER_RES_TARGET_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_03 "CAN_DET_ND_TARGET_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_03 "CAN_DET_HOST_VEH_CLUTTER_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_03 "CAN_DET_VALID_LEVEL_20_03"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_03 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_03 "CAN_DET_AZIMUTH_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_03 "CAN_DET_RANGE_20_03"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_03 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_03 "CAN_DET_RANGE_RATE_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_03 "CAN_DET_AMPLITUDE_20_03"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_03 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_03 "CAN_SCAN_INDEX_2LSB_20_03"; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 "CAN_DET_CONFID_AZIMUTH_20_04"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 "CAN_DET_CONFID_AZIMUTH_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_04 "CAN_DET_CONFID_AZIMUTH_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_04 "CAN_DET_SUPER_RES_TARGET_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_04 "CAN_DET_ND_TARGET_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_04 "CAN_DET_HOST_VEH_CLUTTER_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_04 "CAN_DET_VALID_LEVEL_20_04"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_04 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_04 "CAN_DET_AZIMUTH_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_04 "CAN_DET_RANGE_20_04"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_04 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_04 "CAN_DET_RANGE_RATE_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_04 "CAN_DET_AMPLITUDE_20_04"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_04 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_04 "CAN_SCAN_INDEX_2LSB_20_04"; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 "CAN_DET_CONFID_AZIMUTH_20_05"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 "CAN_DET_CONFID_AZIMUTH_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_05 "CAN_DET_CONFID_AZIMUTH_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_05 "CAN_DET_SUPER_RES_TARGET_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_05 "CAN_DET_ND_TARGET_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_05 "CAN_DET_HOST_VEH_CLUTTER_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_05 "CAN_DET_VALID_LEVEL_20_05"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_05 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_05 "CAN_DET_AZIMUTH_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_05 "CAN_DET_RANGE_20_05"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_05 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_05 "CAN_DET_RANGE_RATE_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_05 "CAN_DET_AMPLITUDE_20_05"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_05 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_05 "CAN_SCAN_INDEX_2LSB_20_05"; +BA_ "GenSigVtEn" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 "CAN_DET_CONFID_AZIMUTH_20_06"; +BA_ "GenSigVtName" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 "CAN_DET_CONFID_AZIMUTH_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_CONFID_AZIMUTH_20_06 "CAN_DET_CONFID_AZIMUTH_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_SUPER_RES_TARGET_20_06 "CAN_DET_SUPER_RES_TARGET_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_ND_TARGET_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_ND_TARGET_20_06 "CAN_DET_ND_TARGET_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_HOST_VEH_CLUTTER_20_06 "CAN_DET_HOST_VEH_CLUTTER_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_VALID_LEVEL_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_VALID_LEVEL_20_06 "CAN_DET_VALID_LEVEL_20_06"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_AZIMUTH_20_06 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AZIMUTH_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AZIMUTH_20_06 "CAN_DET_AZIMUTH_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_20_06 "CAN_DET_RANGE_20_06"; +BA_ "GenSigStartValue" SG_ 307 CAN_DET_RANGE_RATE_20_06 0; +BA_ "GenSigSendType" SG_ 307 CAN_DET_RANGE_RATE_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_RANGE_RATE_20_06 "CAN_DET_RANGE_RATE_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_DET_AMPLITUDE_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_DET_AMPLITUDE_20_06 "CAN_DET_AMPLITUDE_20_06"; +BA_ "GenSigSendType" SG_ 307 CAN_SCAN_INDEX_2LSB_20_06 0; +BA_ "GenSigCmt" SG_ 307 CAN_SCAN_INDEX_2LSB_20_06 "CAN_SCAN_INDEX_2LSB_20_06"; +BA_ "GenMsgSendType" BO_ 306 1; +BA_ "GenMsgILSupport" BO_ 306 1; +BA_ "GenMsgNrOfRepetition" BO_ 306 0; +BA_ "GenMsgCycleTime" BO_ 306 0; +BA_ "NetworkInitialization" BO_ 306 0; +BA_ "GenMsgDelayTime" BO_ 306 0; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 "CAN_DET_CONFID_AZIMUTH_19_01"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 "CAN_DET_CONFID_AZIMUTH_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_01 "CAN_DET_CONFID_AZIMUTH_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_01 "CAN_DET_SUPER_RES_TARGET_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_01 "CAN_DET_ND_TARGET_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_01 "CAN_DET_HOST_VEH_CLUTTER_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_01 "CAN_DET_VALID_LEVEL_19_01"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_01 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_01 "CAN_DET_AZIMUTH_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_01 "CAN_DET_RANGE_19_01"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_01 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_01 "CAN_DET_RANGE_RATE_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_01 "CAN_DET_AMPLITUDE_19_01"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_01 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_01 "CAN_SCAN_INDEX_2LSB_19_01"; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 "CAN_DET_CONFID_AZIMUTH_19_02"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 "CAN_DET_CONFID_AZIMUTH_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_02 "CAN_DET_CONFID_AZIMUTH_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_02 "CAN_DET_SUPER_RES_TARGET_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_02 "CAN_DET_ND_TARGET_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_02 "CAN_DET_HOST_VEH_CLUTTER_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_02 "CAN_DET_VALID_LEVEL_19_02"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_02 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_02 "CAN_DET_AZIMUTH_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_02 "CAN_DET_RANGE_19_02"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_02 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_02 "CAN_DET_RANGE_RATE_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_02 "CAN_DET_AMPLITUDE_19_02"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_02 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_02 "CAN_SCAN_INDEX_2LSB_19_02"; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 "CAN_DET_CONFID_AZIMUTH_19_03"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 "CAN_DET_CONFID_AZIMUTH_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_03 "CAN_DET_CONFID_AZIMUTH_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_03 "CAN_DET_SUPER_RES_TARGET_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_03 "CAN_DET_ND_TARGET_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_03 "CAN_DET_HOST_VEH_CLUTTER_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_03 "CAN_DET_VALID_LEVEL_19_03"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_03 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_03 "CAN_DET_AZIMUTH_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_03 "CAN_DET_RANGE_19_03"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_03 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_03 "CAN_DET_RANGE_RATE_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_03 "CAN_DET_AMPLITUDE_19_03"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_03 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_03 "CAN_SCAN_INDEX_2LSB_19_03"; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 "CAN_DET_CONFID_AZIMUTH_19_04"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 "CAN_DET_CONFID_AZIMUTH_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_04 "CAN_DET_CONFID_AZIMUTH_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_04 "CAN_DET_SUPER_RES_TARGET_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_04 "CAN_DET_ND_TARGET_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_04 "CAN_DET_HOST_VEH_CLUTTER_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_04 "CAN_DET_VALID_LEVEL_19_04"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_04 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_04 "CAN_DET_AZIMUTH_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_04 "CAN_DET_RANGE_19_04"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_04 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_04 "CAN_DET_RANGE_RATE_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_04 "CAN_DET_AMPLITUDE_19_04"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_04 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_04 "CAN_SCAN_INDEX_2LSB_19_04"; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 "CAN_DET_CONFID_AZIMUTH_19_05"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 "CAN_DET_CONFID_AZIMUTH_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_05 "CAN_DET_CONFID_AZIMUTH_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_05 "CAN_DET_SUPER_RES_TARGET_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_05 "CAN_DET_ND_TARGET_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_05 "CAN_DET_HOST_VEH_CLUTTER_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_05 "CAN_DET_VALID_LEVEL_19_05"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_05 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_05 "CAN_DET_AZIMUTH_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_05 "CAN_DET_RANGE_19_05"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_05 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_05 "CAN_DET_RANGE_RATE_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_05 "CAN_DET_AMPLITUDE_19_05"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_05 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_05 "CAN_SCAN_INDEX_2LSB_19_05"; +BA_ "GenSigVtEn" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 "CAN_DET_CONFID_AZIMUTH_19_06"; +BA_ "GenSigVtName" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 "CAN_DET_CONFID_AZIMUTH_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_CONFID_AZIMUTH_19_06 "CAN_DET_CONFID_AZIMUTH_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_SUPER_RES_TARGET_19_06 "CAN_DET_SUPER_RES_TARGET_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_ND_TARGET_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_ND_TARGET_19_06 "CAN_DET_ND_TARGET_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_HOST_VEH_CLUTTER_19_06 "CAN_DET_HOST_VEH_CLUTTER_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_VALID_LEVEL_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_VALID_LEVEL_19_06 "CAN_DET_VALID_LEVEL_19_06"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_AZIMUTH_19_06 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AZIMUTH_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AZIMUTH_19_06 "CAN_DET_AZIMUTH_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_19_06 "CAN_DET_RANGE_19_06"; +BA_ "GenSigStartValue" SG_ 306 CAN_DET_RANGE_RATE_19_06 0; +BA_ "GenSigSendType" SG_ 306 CAN_DET_RANGE_RATE_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_RANGE_RATE_19_06 "CAN_DET_RANGE_RATE_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_DET_AMPLITUDE_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_DET_AMPLITUDE_19_06 "CAN_DET_AMPLITUDE_19_06"; +BA_ "GenSigSendType" SG_ 306 CAN_SCAN_INDEX_2LSB_19_06 0; +BA_ "GenSigCmt" SG_ 306 CAN_SCAN_INDEX_2LSB_19_06 "CAN_SCAN_INDEX_2LSB_19_06"; +BA_ "GenMsgSendType" BO_ 305 1; +BA_ "GenMsgILSupport" BO_ 305 1; +BA_ "GenMsgNrOfRepetition" BO_ 305 0; +BA_ "GenMsgCycleTime" BO_ 305 0; +BA_ "NetworkInitialization" BO_ 305 0; +BA_ "GenMsgDelayTime" BO_ 305 0; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 "CAN_DET_CONFID_AZIMUTH_18_01"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 "CAN_DET_CONFID_AZIMUTH_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_01 "CAN_DET_CONFID_AZIMUTH_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_01 "CAN_DET_SUPER_RES_TARGET_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_01 "CAN_DET_ND_TARGET_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_01 "CAN_DET_HOST_VEH_CLUTTER_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_01 "CAN_DET_VALID_LEVEL_18_01"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_01 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_01 "CAN_DET_AZIMUTH_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_01 "CAN_DET_RANGE_18_01"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_01 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_01 "CAN_DET_RANGE_RATE_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_01 "CAN_DET_AMPLITUDE_18_01"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_01 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_01 "CAN_SCAN_INDEX_2LSB_18_01"; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 "CAN_DET_CONFID_AZIMUTH_18_02"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 "CAN_DET_CONFID_AZIMUTH_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_02 "CAN_DET_CONFID_AZIMUTH_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_02 "CAN_DET_SUPER_RES_TARGET_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_02 "CAN_DET_ND_TARGET_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_02 "CAN_DET_HOST_VEH_CLUTTER_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_02 "CAN_DET_VALID_LEVEL_18_02"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_02 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_02 "CAN_DET_AZIMUTH_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_02 "CAN_DET_RANGE_18_02"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_02 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_02 "CAN_DET_RANGE_RATE_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_02 "CAN_DET_AMPLITUDE_18_02"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_02 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_02 "CAN_SCAN_INDEX_2LSB_18_02"; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 "CAN_DET_CONFID_AZIMUTH_18_03"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 "CAN_DET_CONFID_AZIMUTH_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_03 "CAN_DET_CONFID_AZIMUTH_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_03 "CAN_DET_SUPER_RES_TARGET_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_03 "CAN_DET_ND_TARGET_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_03 "CAN_DET_HOST_VEH_CLUTTER_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_03 "CAN_DET_VALID_LEVEL_18_03"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_03 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_03 "CAN_DET_AZIMUTH_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_03 "CAN_DET_RANGE_18_03"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_03 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_03 "CAN_DET_RANGE_RATE_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_03 "CAN_DET_AMPLITUDE_18_03"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_03 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_03 "CAN_SCAN_INDEX_2LSB_18_03"; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 "CAN_DET_CONFID_AZIMUTH_18_04"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 "CAN_DET_CONFID_AZIMUTH_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_04 "CAN_DET_CONFID_AZIMUTH_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_04 "CAN_DET_SUPER_RES_TARGET_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_04 "CAN_DET_ND_TARGET_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_04 "CAN_DET_HOST_VEH_CLUTTER_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_04 "CAN_DET_VALID_LEVEL_18_04"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_04 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_04 "CAN_DET_AZIMUTH_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_04 "CAN_DET_RANGE_18_04"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_04 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_04 "CAN_DET_RANGE_RATE_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_04 "CAN_DET_AMPLITUDE_18_04"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_04 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_04 "CAN_SCAN_INDEX_2LSB_18_04"; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 "CAN_DET_CONFID_AZIMUTH_18_05"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 "CAN_DET_CONFID_AZIMUTH_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_05 "CAN_DET_CONFID_AZIMUTH_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_05 "CAN_DET_SUPER_RES_TARGET_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_05 "CAN_DET_ND_TARGET_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_05 "CAN_DET_HOST_VEH_CLUTTER_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_05 "CAN_DET_VALID_LEVEL_18_05"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_05 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_05 "CAN_DET_AZIMUTH_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_05 "CAN_DET_RANGE_18_05"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_05 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_05 "CAN_DET_RANGE_RATE_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_05 "CAN_DET_AMPLITUDE_18_05"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_05 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_05 "CAN_SCAN_INDEX_2LSB_18_05"; +BA_ "GenSigVtEn" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 "CAN_DET_CONFID_AZIMUTH_18_06"; +BA_ "GenSigVtName" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 "CAN_DET_CONFID_AZIMUTH_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_CONFID_AZIMUTH_18_06 "CAN_DET_CONFID_AZIMUTH_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_SUPER_RES_TARGET_18_06 "CAN_DET_SUPER_RES_TARGET_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_ND_TARGET_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_ND_TARGET_18_06 "CAN_DET_ND_TARGET_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_HOST_VEH_CLUTTER_18_06 "CAN_DET_HOST_VEH_CLUTTER_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_VALID_LEVEL_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_VALID_LEVEL_18_06 "CAN_DET_VALID_LEVEL_18_06"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_AZIMUTH_18_06 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AZIMUTH_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AZIMUTH_18_06 "CAN_DET_AZIMUTH_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_18_06 "CAN_DET_RANGE_18_06"; +BA_ "GenSigStartValue" SG_ 305 CAN_DET_RANGE_RATE_18_06 0; +BA_ "GenSigSendType" SG_ 305 CAN_DET_RANGE_RATE_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_RANGE_RATE_18_06 "CAN_DET_RANGE_RATE_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_DET_AMPLITUDE_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_DET_AMPLITUDE_18_06 "CAN_DET_AMPLITUDE_18_06"; +BA_ "GenSigSendType" SG_ 305 CAN_SCAN_INDEX_2LSB_18_06 0; +BA_ "GenSigCmt" SG_ 305 CAN_SCAN_INDEX_2LSB_18_06 "CAN_SCAN_INDEX_2LSB_18_06"; +BA_ "GenMsgSendType" BO_ 341 1; +BA_ "GenMsgILSupport" BO_ 341 1; +BA_ "GenMsgNrOfRepetition" BO_ 341 0; +BA_ "GenMsgCycleTime" BO_ 341 0; +BA_ "NetworkInitialization" BO_ 341 0; +BA_ "GenMsgDelayTime" BO_ 341 0; +BA_ "GenSigVtEn" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigVtName" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 "CAN_DET_SUPER_RES_TARGET_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_ND_TARGET_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_ND_TARGET_54 "CAN_DET_ND_TARGET_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 "CAN_DET_HOST_VEH_CLUTTER_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_VALID_LEVEL_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_VALID_LEVEL_54 "CAN_DET_VALID_LEVEL_54"; +BA_ "GenSigStartValue" SG_ 341 CAN_DET_AZIMUTH_54 0; +BA_ "GenSigSendType" SG_ 341 CAN_DET_AZIMUTH_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_AZIMUTH_54 "CAN_DET_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_54 "CAN_DET_RANGE_54"; +BA_ "GenSigStartValue" SG_ 341 CAN_DET_RANGE_RATE_54 0; +BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_RATE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_RATE_54 "CAN_DET_RANGE_RATE_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_AMPLITUDE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_AMPLITUDE_54 "CAN_DET_AMPLITUDE_54"; +BA_ "GenSigSendType" SG_ 341 CAN_SCAN_INDEX_2LSB_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_SCAN_INDEX_2LSB_54 "CAN_SCAN_INDEX_2LSB_54"; +BA_ "GenMsgSendType" BO_ 340 1; +BA_ "GenMsgILSupport" BO_ 340 1; +BA_ "GenMsgNrOfRepetition" BO_ 340 0; +BA_ "GenMsgCycleTime" BO_ 340 0; +BA_ "NetworkInitialization" BO_ 340 0; +BA_ "GenMsgDelayTime" BO_ 340 0; +BA_ "GenSigVtEn" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigVtName" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 "CAN_DET_SUPER_RES_TARGET_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_ND_TARGET_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_ND_TARGET_53 "CAN_DET_ND_TARGET_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 "CAN_DET_HOST_VEH_CLUTTER_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_VALID_LEVEL_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_VALID_LEVEL_53 "CAN_DET_VALID_LEVEL_53"; +BA_ "GenSigStartValue" SG_ 340 CAN_DET_AZIMUTH_53 0; +BA_ "GenSigSendType" SG_ 340 CAN_DET_AZIMUTH_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_AZIMUTH_53 "CAN_DET_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_53 "CAN_DET_RANGE_53"; +BA_ "GenSigStartValue" SG_ 340 CAN_DET_RANGE_RATE_53 0; +BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_RATE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_RATE_53 "CAN_DET_RANGE_RATE_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_AMPLITUDE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_AMPLITUDE_53 "CAN_DET_AMPLITUDE_53"; +BA_ "GenSigSendType" SG_ 340 CAN_SCAN_INDEX_2LSB_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_SCAN_INDEX_2LSB_53 "CAN_SCAN_INDEX_2LSB_53"; +BA_ "GenMsgSendType" BO_ 339 1; +BA_ "GenMsgILSupport" BO_ 339 1; +BA_ "GenMsgNrOfRepetition" BO_ 339 0; +BA_ "GenMsgCycleTime" BO_ 339 0; +BA_ "NetworkInitialization" BO_ 339 0; +BA_ "GenMsgDelayTime" BO_ 339 0; +BA_ "GenSigVtEn" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigVtName" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 "CAN_DET_SUPER_RES_TARGET_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_ND_TARGET_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_ND_TARGET_52 "CAN_DET_ND_TARGET_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 "CAN_DET_HOST_VEH_CLUTTER_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_VALID_LEVEL_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_VALID_LEVEL_52 "CAN_DET_VALID_LEVEL_52"; +BA_ "GenSigStartValue" SG_ 339 CAN_DET_AZIMUTH_52 0; +BA_ "GenSigSendType" SG_ 339 CAN_DET_AZIMUTH_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_AZIMUTH_52 "CAN_DET_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_52 "CAN_DET_RANGE_52"; +BA_ "GenSigStartValue" SG_ 339 CAN_DET_RANGE_RATE_52 0; +BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_RATE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_RATE_52 "CAN_DET_RANGE_RATE_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_AMPLITUDE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_AMPLITUDE_52 "CAN_DET_AMPLITUDE_52"; +BA_ "GenSigSendType" SG_ 339 CAN_SCAN_INDEX_2LSB_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_SCAN_INDEX_2LSB_52 "CAN_SCAN_INDEX_2LSB_52"; +BA_ "GenMsgSendType" BO_ 338 1; +BA_ "GenMsgILSupport" BO_ 338 1; +BA_ "GenMsgNrOfRepetition" BO_ 338 0; +BA_ "GenMsgCycleTime" BO_ 338 0; +BA_ "NetworkInitialization" BO_ 338 0; +BA_ "GenMsgDelayTime" BO_ 338 0; +BA_ "GenSigVtEn" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigVtName" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 "CAN_DET_SUPER_RES_TARGET_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_ND_TARGET_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_ND_TARGET_51 "CAN_DET_ND_TARGET_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 "CAN_DET_HOST_VEH_CLUTTER_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_VALID_LEVEL_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_VALID_LEVEL_51 "CAN_DET_VALID_LEVEL_51"; +BA_ "GenSigStartValue" SG_ 338 CAN_DET_AZIMUTH_51 0; +BA_ "GenSigSendType" SG_ 338 CAN_DET_AZIMUTH_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_AZIMUTH_51 "CAN_DET_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_51 "CAN_DET_RANGE_51"; +BA_ "GenSigStartValue" SG_ 338 CAN_DET_RANGE_RATE_51 0; +BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_RATE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_RATE_51 "CAN_DET_RANGE_RATE_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_AMPLITUDE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_AMPLITUDE_51 "CAN_DET_AMPLITUDE_51"; +BA_ "GenSigSendType" SG_ 338 CAN_SCAN_INDEX_2LSB_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_SCAN_INDEX_2LSB_51 "CAN_SCAN_INDEX_2LSB_51"; +BA_ "GenMsgSendType" BO_ 337 1; +BA_ "GenMsgILSupport" BO_ 337 1; +BA_ "GenMsgNrOfRepetition" BO_ 337 0; +BA_ "GenMsgCycleTime" BO_ 337 0; +BA_ "NetworkInitialization" BO_ 337 0; +BA_ "GenMsgDelayTime" BO_ 337 0; +BA_ "GenSigVtEn" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigVtName" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 "CAN_DET_SUPER_RES_TARGET_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_ND_TARGET_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_ND_TARGET_50 "CAN_DET_ND_TARGET_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 "CAN_DET_HOST_VEH_CLUTTER_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_VALID_LEVEL_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_VALID_LEVEL_50 "CAN_DET_VALID_LEVEL_50"; +BA_ "GenSigStartValue" SG_ 337 CAN_DET_AZIMUTH_50 0; +BA_ "GenSigSendType" SG_ 337 CAN_DET_AZIMUTH_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_AZIMUTH_50 "CAN_DET_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_50 "CAN_DET_RANGE_50"; +BA_ "GenSigStartValue" SG_ 337 CAN_DET_RANGE_RATE_50 0; +BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_RATE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_RATE_50 "CAN_DET_RANGE_RATE_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_AMPLITUDE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_AMPLITUDE_50 "CAN_DET_AMPLITUDE_50"; +BA_ "GenSigSendType" SG_ 337 CAN_SCAN_INDEX_2LSB_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_SCAN_INDEX_2LSB_50 "CAN_SCAN_INDEX_2LSB_50"; +BA_ "GenMsgSendType" BO_ 336 1; +BA_ "GenMsgILSupport" BO_ 336 1; +BA_ "GenMsgNrOfRepetition" BO_ 336 0; +BA_ "GenMsgCycleTime" BO_ 336 0; +BA_ "NetworkInitialization" BO_ 336 0; +BA_ "GenMsgDelayTime" BO_ 336 0; +BA_ "GenSigVtEn" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigVtName" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 "CAN_DET_SUPER_RES_TARGET_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_ND_TARGET_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_ND_TARGET_49 "CAN_DET_ND_TARGET_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 "CAN_DET_HOST_VEH_CLUTTER_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_VALID_LEVEL_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_VALID_LEVEL_49 "CAN_DET_VALID_LEVEL_49"; +BA_ "GenSigStartValue" SG_ 336 CAN_DET_AZIMUTH_49 0; +BA_ "GenSigSendType" SG_ 336 CAN_DET_AZIMUTH_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_AZIMUTH_49 "CAN_DET_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_49 "CAN_DET_RANGE_49"; +BA_ "GenSigStartValue" SG_ 336 CAN_DET_RANGE_RATE_49 0; +BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_RATE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_RATE_49 "CAN_DET_RANGE_RATE_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_AMPLITUDE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_AMPLITUDE_49 "CAN_DET_AMPLITUDE_49"; +BA_ "GenSigSendType" SG_ 336 CAN_SCAN_INDEX_2LSB_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_SCAN_INDEX_2LSB_49 "CAN_SCAN_INDEX_2LSB_49"; +BA_ "GenMsgSendType" BO_ 326 1; +BA_ "GenMsgILSupport" BO_ 326 1; +BA_ "GenMsgNrOfRepetition" BO_ 326 0; +BA_ "GenMsgCycleTime" BO_ 326 0; +BA_ "NetworkInitialization" BO_ 326 0; +BA_ "GenMsgDelayTime" BO_ 326 0; +BA_ "GenSigVtEn" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigVtName" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 "CAN_DET_SUPER_RES_TARGET_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_ND_TARGET_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_ND_TARGET_39 "CAN_DET_ND_TARGET_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 "CAN_DET_HOST_VEH_CLUTTER_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_VALID_LEVEL_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_VALID_LEVEL_39 "CAN_DET_VALID_LEVEL_39"; +BA_ "GenSigStartValue" SG_ 326 CAN_DET_AZIMUTH_39 0; +BA_ "GenSigSendType" SG_ 326 CAN_DET_AZIMUTH_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_AZIMUTH_39 "CAN_DET_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_39 "CAN_DET_RANGE_39"; +BA_ "GenSigStartValue" SG_ 326 CAN_DET_RANGE_RATE_39 0; +BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_RATE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_RATE_39 "CAN_DET_RANGE_RATE_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_AMPLITUDE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_AMPLITUDE_39 "CAN_DET_AMPLITUDE_39"; +BA_ "GenSigSendType" SG_ 326 CAN_SCAN_INDEX_2LSB_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_SCAN_INDEX_2LSB_39 "CAN_SCAN_INDEX_2LSB_39"; +BA_ "GenMsgSendType" BO_ 315 1; +BA_ "GenMsgILSupport" BO_ 315 1; +BA_ "GenMsgNrOfRepetition" BO_ 315 0; +BA_ "GenMsgCycleTime" BO_ 315 0; +BA_ "NetworkInitialization" BO_ 315 0; +BA_ "GenMsgDelayTime" BO_ 315 0; +BA_ "GenSigVtEn" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigVtName" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 "CAN_DET_SUPER_RES_TARGET_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_ND_TARGET_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_ND_TARGET_28 "CAN_DET_ND_TARGET_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 "CAN_DET_HOST_VEH_CLUTTER_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_VALID_LEVEL_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_VALID_LEVEL_28 "CAN_DET_VALID_LEVEL_28"; +BA_ "GenSigStartValue" SG_ 315 CAN_DET_AZIMUTH_28 0; +BA_ "GenSigSendType" SG_ 315 CAN_DET_AZIMUTH_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_AZIMUTH_28 "CAN_DET_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_28 "CAN_DET_RANGE_28"; +BA_ "GenSigStartValue" SG_ 315 CAN_DET_RANGE_RATE_28 0; +BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_RATE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_RATE_28 "CAN_DET_RANGE_RATE_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_AMPLITUDE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_AMPLITUDE_28 "CAN_DET_AMPLITUDE_28"; +BA_ "GenSigSendType" SG_ 315 CAN_SCAN_INDEX_2LSB_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_SCAN_INDEX_2LSB_28 "CAN_SCAN_INDEX_2LSB_28"; +BA_ "GenMsgSendType" BO_ 304 1; +BA_ "GenMsgILSupport" BO_ 304 1; +BA_ "GenMsgNrOfRepetition" BO_ 304 0; +BA_ "GenMsgCycleTime" BO_ 304 0; +BA_ "NetworkInitialization" BO_ 304 0; +BA_ "GenMsgDelayTime" BO_ 304 0; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 "CAN_DET_CONFID_AZIMUTH_17_01"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 "CAN_DET_CONFID_AZIMUTH_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_01 "CAN_DET_CONFID_AZIMUTH_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_01 "CAN_DET_SUPER_RES_TARGET_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_01 "CAN_DET_ND_TARGET_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_01 "CAN_DET_HOST_VEH_CLUTTER_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_01 "CAN_DET_VALID_LEVEL_17_01"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_01 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_01 "CAN_DET_AZIMUTH_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_01 "CAN_DET_RANGE_17_01"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_01 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_01 "CAN_DET_RANGE_RATE_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_01 "CAN_DET_AMPLITUDE_17_01"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_01 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_01 "CAN_SCAN_INDEX_2LSB_17_01"; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 "CAN_DET_CONFID_AZIMUTH_17_02"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 "CAN_DET_CONFID_AZIMUTH_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_02 "CAN_DET_CONFID_AZIMUTH_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_02 "CAN_DET_SUPER_RES_TARGET_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_02 "CAN_DET_ND_TARGET_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_02 "CAN_DET_HOST_VEH_CLUTTER_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_02 "CAN_DET_VALID_LEVEL_17_02"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_02 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_02 "CAN_DET_AZIMUTH_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_02 "CAN_DET_RANGE_17_02"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_02 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_02 "CAN_DET_RANGE_RATE_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_02 "CAN_DET_AMPLITUDE_17_02"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_02 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_02 "CAN_SCAN_INDEX_2LSB_17_02"; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 "CAN_DET_CONFID_AZIMUTH_17_03"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 "CAN_DET_CONFID_AZIMUTH_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_03 "CAN_DET_CONFID_AZIMUTH_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_03 "CAN_DET_SUPER_RES_TARGET_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_03 "CAN_DET_ND_TARGET_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_03 "CAN_DET_HOST_VEH_CLUTTER_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_03 "CAN_DET_VALID_LEVEL_17_03"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_03 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_03 "CAN_DET_AZIMUTH_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_03 "CAN_DET_RANGE_17_03"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_03 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_03 "CAN_DET_RANGE_RATE_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_03 "CAN_DET_AMPLITUDE_17_03"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_03 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_03 "CAN_SCAN_INDEX_2LSB_17_03"; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 "CAN_DET_CONFID_AZIMUTH_17_04"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 "CAN_DET_CONFID_AZIMUTH_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_04 "CAN_DET_CONFID_AZIMUTH_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_04 "CAN_DET_SUPER_RES_TARGET_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_04 "CAN_DET_ND_TARGET_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_04 "CAN_DET_HOST_VEH_CLUTTER_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_04 "CAN_DET_VALID_LEVEL_17_04"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_04 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_04 "CAN_DET_AZIMUTH_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_04 "CAN_DET_RANGE_17_04"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_04 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_04 "CAN_DET_RANGE_RATE_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_04 "CAN_DET_AMPLITUDE_17_04"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_04 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_04 "CAN_SCAN_INDEX_2LSB_17_04"; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 "CAN_DET_CONFID_AZIMUTH_17_05"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 "CAN_DET_CONFID_AZIMUTH_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_05 "CAN_DET_CONFID_AZIMUTH_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_05 "CAN_DET_SUPER_RES_TARGET_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_05 "CAN_DET_ND_TARGET_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_05 "CAN_DET_HOST_VEH_CLUTTER_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_05 "CAN_DET_VALID_LEVEL_17_05"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_05 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_05 "CAN_DET_AZIMUTH_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_05 "CAN_DET_RANGE_17_05"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_05 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_05 "CAN_DET_RANGE_RATE_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_05 "CAN_DET_AMPLITUDE_17_05"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_05 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_05 "CAN_SCAN_INDEX_2LSB_17_05"; +BA_ "GenSigVtEn" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 "CAN_DET_CONFID_AZIMUTH_17_06"; +BA_ "GenSigVtName" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 "CAN_DET_CONFID_AZIMUTH_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_CONFID_AZIMUTH_17_06 "CAN_DET_CONFID_AZIMUTH_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_SUPER_RES_TARGET_17_06 "CAN_DET_SUPER_RES_TARGET_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_ND_TARGET_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_ND_TARGET_17_06 "CAN_DET_ND_TARGET_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_HOST_VEH_CLUTTER_17_06 "CAN_DET_HOST_VEH_CLUTTER_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_VALID_LEVEL_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_VALID_LEVEL_17_06 "CAN_DET_VALID_LEVEL_17_06"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_AZIMUTH_17_06 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AZIMUTH_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AZIMUTH_17_06 "CAN_DET_AZIMUTH_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_17_06 "CAN_DET_RANGE_17_06"; +BA_ "GenSigStartValue" SG_ 304 CAN_DET_RANGE_RATE_17_06 0; +BA_ "GenSigSendType" SG_ 304 CAN_DET_RANGE_RATE_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_RANGE_RATE_17_06 "CAN_DET_RANGE_RATE_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_DET_AMPLITUDE_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_DET_AMPLITUDE_17_06 "CAN_DET_AMPLITUDE_17_06"; +BA_ "GenSigSendType" SG_ 304 CAN_SCAN_INDEX_2LSB_17_06 0; +BA_ "GenSigCmt" SG_ 304 CAN_SCAN_INDEX_2LSB_17_06 "CAN_SCAN_INDEX_2LSB_17_06"; +BA_ "GenMsgSendType" BO_ 303 1; +BA_ "GenMsgILSupport" BO_ 303 1; +BA_ "GenMsgNrOfRepetition" BO_ 303 0; +BA_ "GenMsgCycleTime" BO_ 303 0; +BA_ "NetworkInitialization" BO_ 303 0; +BA_ "GenMsgDelayTime" BO_ 303 0; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 "CAN_DET_CONFID_AZIMUTH_16_01"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 "CAN_DET_CONFID_AZIMUTH_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_01 "CAN_DET_CONFID_AZIMUTH_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_01 "CAN_DET_SUPER_RES_TARGET_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_01 "CAN_DET_ND_TARGET_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_01 "CAN_DET_HOST_VEH_CLUTTER_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_01 "CAN_DET_VALID_LEVEL_16_01"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_01 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_01 "CAN_DET_AZIMUTH_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_01 "CAN_DET_RANGE_16_01"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_01 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_01 "CAN_DET_RANGE_RATE_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_01 "CAN_DET_AMPLITUDE_16_01"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_01 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_01 "CAN_SCAN_INDEX_2LSB_16_01"; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 "CAN_DET_CONFID_AZIMUTH_16_02"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 "CAN_DET_CONFID_AZIMUTH_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_02 "CAN_DET_CONFID_AZIMUTH_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_02 "CAN_DET_SUPER_RES_TARGET_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_02 "CAN_DET_ND_TARGET_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_02 "CAN_DET_HOST_VEH_CLUTTER_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_02 "CAN_DET_VALID_LEVEL_16_02"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_02 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_02 "CAN_DET_AZIMUTH_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_02 "CAN_DET_RANGE_16_02"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_02 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_02 "CAN_DET_RANGE_RATE_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_02 "CAN_DET_AMPLITUDE_16_02"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_02 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_02 "CAN_SCAN_INDEX_2LSB_16_02"; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 "CAN_DET_CONFID_AZIMUTH_16_03"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 "CAN_DET_CONFID_AZIMUTH_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_03 "CAN_DET_CONFID_AZIMUTH_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_03 "CAN_DET_SUPER_RES_TARGET_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_03 "CAN_DET_ND_TARGET_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_03 "CAN_DET_HOST_VEH_CLUTTER_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_03 "CAN_DET_VALID_LEVEL_16_03"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_03 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_03 "CAN_DET_AZIMUTH_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_03 "CAN_DET_RANGE_16_03"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_03 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_03 "CAN_DET_RANGE_RATE_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_03 "CAN_DET_AMPLITUDE_16_03"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_03 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_03 "CAN_SCAN_INDEX_2LSB_16_03"; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 "CAN_DET_CONFID_AZIMUTH_16_04"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 "CAN_DET_CONFID_AZIMUTH_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_04 "CAN_DET_CONFID_AZIMUTH_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_04 "CAN_DET_SUPER_RES_TARGET_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_04 "CAN_DET_ND_TARGET_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_04 "CAN_DET_HOST_VEH_CLUTTER_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_04 "CAN_DET_VALID_LEVEL_16_04"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_04 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_04 "CAN_DET_AZIMUTH_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_04 "CAN_DET_RANGE_16_04"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_04 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_04 "CAN_DET_RANGE_RATE_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_04 "CAN_DET_AMPLITUDE_16_04"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_04 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_04 "CAN_SCAN_INDEX_2LSB_16_04"; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 "CAN_DET_CONFID_AZIMUTH_16_05"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 "CAN_DET_CONFID_AZIMUTH_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_05 "CAN_DET_CONFID_AZIMUTH_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_05 "CAN_DET_SUPER_RES_TARGET_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_05 "CAN_DET_ND_TARGET_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_05 "CAN_DET_HOST_VEH_CLUTTER_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_05 "CAN_DET_VALID_LEVEL_16_05"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_05 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_05 "CAN_DET_AZIMUTH_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_05 "CAN_DET_RANGE_16_05"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_05 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_05 "CAN_DET_RANGE_RATE_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_05 "CAN_DET_AMPLITUDE_16_05"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_05 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_05 "CAN_SCAN_INDEX_2LSB_16_05"; +BA_ "GenSigVtEn" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 "CAN_DET_CONFID_AZIMUTH_16_06"; +BA_ "GenSigVtName" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 "CAN_DET_CONFID_AZIMUTH_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_CONFID_AZIMUTH_16_06 "CAN_DET_CONFID_AZIMUTH_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_SUPER_RES_TARGET_16_06 "CAN_DET_SUPER_RES_TARGET_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_ND_TARGET_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_ND_TARGET_16_06 "CAN_DET_ND_TARGET_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_HOST_VEH_CLUTTER_16_06 "CAN_DET_HOST_VEH_CLUTTER_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_VALID_LEVEL_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_VALID_LEVEL_16_06 "CAN_DET_VALID_LEVEL_16_06"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_AZIMUTH_16_06 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AZIMUTH_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AZIMUTH_16_06 "CAN_DET_AZIMUTH_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_16_06 "CAN_DET_RANGE_16_06"; +BA_ "GenSigStartValue" SG_ 303 CAN_DET_RANGE_RATE_16_06 0; +BA_ "GenSigSendType" SG_ 303 CAN_DET_RANGE_RATE_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_RANGE_RATE_16_06 "CAN_DET_RANGE_RATE_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_DET_AMPLITUDE_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_DET_AMPLITUDE_16_06 "CAN_DET_AMPLITUDE_16_06"; +BA_ "GenSigSendType" SG_ 303 CAN_SCAN_INDEX_2LSB_16_06 0; +BA_ "GenSigCmt" SG_ 303 CAN_SCAN_INDEX_2LSB_16_06 "CAN_SCAN_INDEX_2LSB_16_06"; +BA_ "GenMsgSendType" BO_ 302 1; +BA_ "GenMsgILSupport" BO_ 302 1; +BA_ "GenMsgNrOfRepetition" BO_ 302 0; +BA_ "GenMsgCycleTime" BO_ 302 0; +BA_ "NetworkInitialization" BO_ 302 0; +BA_ "GenMsgDelayTime" BO_ 302 0; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 "CAN_DET_CONFID_AZIMUTH_15_01"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 "CAN_DET_CONFID_AZIMUTH_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_01 "CAN_DET_CONFID_AZIMUTH_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_01 "CAN_DET_SUPER_RES_TARGET_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_01 "CAN_DET_ND_TARGET_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_01 "CAN_DET_HOST_VEH_CLUTTER_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_01 "CAN_DET_VALID_LEVEL_15_01"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_01 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_01 "CAN_DET_AZIMUTH_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_01 "CAN_DET_RANGE_15_01"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_01 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_01 "CAN_DET_RANGE_RATE_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_01 "CAN_DET_AMPLITUDE_15_01"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_01 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_01 "CAN_SCAN_INDEX_2LSB_15_01"; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 "CAN_DET_CONFID_AZIMUTH_15_02"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 "CAN_DET_CONFID_AZIMUTH_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_02 "CAN_DET_CONFID_AZIMUTH_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_02 "CAN_DET_SUPER_RES_TARGET_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_02 "CAN_DET_ND_TARGET_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_02 "CAN_DET_HOST_VEH_CLUTTER_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_02 "CAN_DET_VALID_LEVEL_15_02"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_02 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_02 "CAN_DET_AZIMUTH_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_02 "CAN_DET_RANGE_15_02"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_02 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_02 "CAN_DET_RANGE_RATE_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_02 "CAN_DET_AMPLITUDE_15_02"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_02 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_02 "CAN_SCAN_INDEX_2LSB_15_02"; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 "CAN_DET_CONFID_AZIMUTH_15_03"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 "CAN_DET_CONFID_AZIMUTH_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_03 "CAN_DET_CONFID_AZIMUTH_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_03 "CAN_DET_SUPER_RES_TARGET_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_03 "CAN_DET_ND_TARGET_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_03 "CAN_DET_HOST_VEH_CLUTTER_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_03 "CAN_DET_VALID_LEVEL_15_03"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_03 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_03 "CAN_DET_AZIMUTH_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_03 "CAN_DET_RANGE_15_03"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_03 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_03 "CAN_DET_RANGE_RATE_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_03 "CAN_DET_AMPLITUDE_15_03"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_03 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_03 "CAN_SCAN_INDEX_2LSB_15_03"; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 "CAN_DET_CONFID_AZIMUTH_15_04"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 "CAN_DET_CONFID_AZIMUTH_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_04 "CAN_DET_CONFID_AZIMUTH_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_04 "CAN_DET_SUPER_RES_TARGET_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_04 "CAN_DET_ND_TARGET_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_04 "CAN_DET_HOST_VEH_CLUTTER_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_04 "CAN_DET_VALID_LEVEL_15_04"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_04 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_04 "CAN_DET_AZIMUTH_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_04 "CAN_DET_RANGE_15_04"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_04 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_04 "CAN_DET_RANGE_RATE_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_04 "CAN_DET_AMPLITUDE_15_04"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_04 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_04 "CAN_SCAN_INDEX_2LSB_15_04"; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 "CAN_DET_CONFID_AZIMUTH_15_05"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 "CAN_DET_CONFID_AZIMUTH_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_05 "CAN_DET_CONFID_AZIMUTH_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_05 "CAN_DET_SUPER_RES_TARGET_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_05 "CAN_DET_ND_TARGET_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_05 "CAN_DET_HOST_VEH_CLUTTER_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_05 "CAN_DET_VALID_LEVEL_15_05"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_05 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_05 "CAN_DET_AZIMUTH_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_05 "CAN_DET_RANGE_15_05"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_05 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_05 "CAN_DET_RANGE_RATE_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_05 "CAN_DET_AMPLITUDE_15_05"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_05 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_05 "CAN_SCAN_INDEX_2LSB_15_05"; +BA_ "GenSigVtEn" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 "CAN_DET_CONFID_AZIMUTH_15_06"; +BA_ "GenSigVtName" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 "CAN_DET_CONFID_AZIMUTH_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_CONFID_AZIMUTH_15_06 "CAN_DET_CONFID_AZIMUTH_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_SUPER_RES_TARGET_15_06 "CAN_DET_SUPER_RES_TARGET_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_ND_TARGET_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_ND_TARGET_15_06 "CAN_DET_ND_TARGET_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_HOST_VEH_CLUTTER_15_06 "CAN_DET_HOST_VEH_CLUTTER_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_VALID_LEVEL_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_VALID_LEVEL_15_06 "CAN_DET_VALID_LEVEL_15_06"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_AZIMUTH_15_06 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AZIMUTH_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AZIMUTH_15_06 "CAN_DET_AZIMUTH_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_15_06 "CAN_DET_RANGE_15_06"; +BA_ "GenSigStartValue" SG_ 302 CAN_DET_RANGE_RATE_15_06 0; +BA_ "GenSigSendType" SG_ 302 CAN_DET_RANGE_RATE_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_RANGE_RATE_15_06 "CAN_DET_RANGE_RATE_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_DET_AMPLITUDE_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_DET_AMPLITUDE_15_06 "CAN_DET_AMPLITUDE_15_06"; +BA_ "GenSigSendType" SG_ 302 CAN_SCAN_INDEX_2LSB_15_06 0; +BA_ "GenSigCmt" SG_ 302 CAN_SCAN_INDEX_2LSB_15_06 "CAN_SCAN_INDEX_2LSB_15_06"; +BA_ "GenMsgSendType" BO_ 301 1; +BA_ "GenMsgILSupport" BO_ 301 1; +BA_ "GenMsgNrOfRepetition" BO_ 301 0; +BA_ "GenMsgCycleTime" BO_ 301 0; +BA_ "NetworkInitialization" BO_ 301 0; +BA_ "GenMsgDelayTime" BO_ 301 0; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 "CAN_DET_CONFID_AZIMUTH_14_01"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 "CAN_DET_CONFID_AZIMUTH_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_01 "CAN_DET_CONFID_AZIMUTH_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_01 "CAN_DET_SUPER_RES_TARGET_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_01 "CAN_DET_ND_TARGET_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_01 "CAN_DET_HOST_VEH_CLUTTER_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_01 "CAN_DET_VALID_LEVEL_14_01"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_01 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_01 "CAN_DET_AZIMUTH_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_01 "CAN_DET_RANGE_14_01"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_01 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_01 "CAN_DET_RANGE_RATE_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_01 "CAN_DET_AMPLITUDE_14_01"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_01 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_01 "CAN_SCAN_INDEX_2LSB_14_01"; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 "CAN_DET_CONFID_AZIMUTH_14_02"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 "CAN_DET_CONFID_AZIMUTH_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_02 "CAN_DET_CONFID_AZIMUTH_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_02 "CAN_DET_SUPER_RES_TARGET_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_02 "CAN_DET_ND_TARGET_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_02 "CAN_DET_HOST_VEH_CLUTTER_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_02 "CAN_DET_VALID_LEVEL_14_02"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_02 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_02 "CAN_DET_AZIMUTH_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_02 "CAN_DET_RANGE_14_02"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_02 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_02 "CAN_DET_RANGE_RATE_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_02 "CAN_DET_AMPLITUDE_14_02"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_02 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_02 "CAN_SCAN_INDEX_2LSB_14_02"; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 "CAN_DET_CONFID_AZIMUTH_14_03"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 "CAN_DET_CONFID_AZIMUTH_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_03 "CAN_DET_CONFID_AZIMUTH_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_03 "CAN_DET_SUPER_RES_TARGET_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_03 "CAN_DET_ND_TARGET_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_03 "CAN_DET_HOST_VEH_CLUTTER_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_03 "CAN_DET_VALID_LEVEL_14_03"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_03 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_03 "CAN_DET_AZIMUTH_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_03 "CAN_DET_RANGE_14_03"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_03 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_03 "CAN_DET_RANGE_RATE_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_03 "CAN_DET_AMPLITUDE_14_03"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_03 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_03 "CAN_SCAN_INDEX_2LSB_14_03"; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 "CAN_DET_CONFID_AZIMUTH_14_04"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 "CAN_DET_CONFID_AZIMUTH_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_04 "CAN_DET_CONFID_AZIMUTH_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_04 "CAN_DET_SUPER_RES_TARGET_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_04 "CAN_DET_ND_TARGET_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_04 "CAN_DET_HOST_VEH_CLUTTER_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_04 "CAN_DET_VALID_LEVEL_14_04"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_04 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_04 "CAN_DET_AZIMUTH_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_04 "CAN_DET_RANGE_14_04"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_04 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_04 "CAN_DET_RANGE_RATE_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_04 "CAN_DET_AMPLITUDE_14_04"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_04 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_04 "CAN_SCAN_INDEX_2LSB_14_04"; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 "CAN_DET_CONFID_AZIMUTH_14_05"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 "CAN_DET_CONFID_AZIMUTH_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_05 "CAN_DET_CONFID_AZIMUTH_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_05 "CAN_DET_SUPER_RES_TARGET_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_05 "CAN_DET_ND_TARGET_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_05 "CAN_DET_HOST_VEH_CLUTTER_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_05 "CAN_DET_VALID_LEVEL_14_05"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_05 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_05 "CAN_DET_AZIMUTH_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_05 "CAN_DET_RANGE_14_05"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_05 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_05 "CAN_DET_RANGE_RATE_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_05 "CAN_DET_AMPLITUDE_14_05"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_05 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_05 "CAN_SCAN_INDEX_2LSB_14_05"; +BA_ "GenSigVtEn" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 "CAN_DET_CONFID_AZIMUTH_14_06"; +BA_ "GenSigVtName" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 "CAN_DET_CONFID_AZIMUTH_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_CONFID_AZIMUTH_14_06 "CAN_DET_CONFID_AZIMUTH_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_SUPER_RES_TARGET_14_06 "CAN_DET_SUPER_RES_TARGET_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_ND_TARGET_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_ND_TARGET_14_06 "CAN_DET_ND_TARGET_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_HOST_VEH_CLUTTER_14_06 "CAN_DET_HOST_VEH_CLUTTER_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_VALID_LEVEL_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_VALID_LEVEL_14_06 "CAN_DET_VALID_LEVEL_14_06"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_AZIMUTH_14_06 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AZIMUTH_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AZIMUTH_14_06 "CAN_DET_AZIMUTH_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_14_06 "CAN_DET_RANGE_14_06"; +BA_ "GenSigStartValue" SG_ 301 CAN_DET_RANGE_RATE_14_06 0; +BA_ "GenSigSendType" SG_ 301 CAN_DET_RANGE_RATE_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_RANGE_RATE_14_06 "CAN_DET_RANGE_RATE_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_DET_AMPLITUDE_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_DET_AMPLITUDE_14_06 "CAN_DET_AMPLITUDE_14_06"; +BA_ "GenSigSendType" SG_ 301 CAN_SCAN_INDEX_2LSB_14_06 0; +BA_ "GenSigCmt" SG_ 301 CAN_SCAN_INDEX_2LSB_14_06 "CAN_SCAN_INDEX_2LSB_14_06"; +BA_ "GenMsgSendType" BO_ 300 1; +BA_ "GenMsgILSupport" BO_ 300 1; +BA_ "GenMsgNrOfRepetition" BO_ 300 0; +BA_ "GenMsgCycleTime" BO_ 300 0; +BA_ "NetworkInitialization" BO_ 300 0; +BA_ "GenMsgDelayTime" BO_ 300 0; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 "CAN_DET_CONFID_AZIMUTH_13_01"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 "CAN_DET_CONFID_AZIMUTH_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_01 "CAN_DET_CONFID_AZIMUTH_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_01 "CAN_DET_SUPER_RES_TARGET_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_01 "CAN_DET_ND_TARGET_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_01 "CAN_DET_HOST_VEH_CLUTTER_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_01 "CAN_DET_VALID_LEVEL_13_01"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_01 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_01 "CAN_DET_AZIMUTH_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_01 "CAN_DET_RANGE_13_01"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_01 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_01 "CAN_DET_RANGE_RATE_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_01 "CAN_DET_AMPLITUDE_13_01"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_01 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_01 "CAN_SCAN_INDEX_2LSB_13_01"; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 "CAN_DET_CONFID_AZIMUTH_13_02"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 "CAN_DET_CONFID_AZIMUTH_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_02 "CAN_DET_CONFID_AZIMUTH_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_02 "CAN_DET_SUPER_RES_TARGET_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_02 "CAN_DET_ND_TARGET_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_02 "CAN_DET_HOST_VEH_CLUTTER_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_02 "CAN_DET_VALID_LEVEL_13_02"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_02 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_02 "CAN_DET_AZIMUTH_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_02 "CAN_DET_RANGE_13_02"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_02 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_02 "CAN_DET_RANGE_RATE_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_02 "CAN_DET_AMPLITUDE_13_02"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_02 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_02 "CAN_SCAN_INDEX_2LSB_13_02"; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 "CAN_DET_CONFID_AZIMUTH_13_03"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 "CAN_DET_CONFID_AZIMUTH_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_03 "CAN_DET_CONFID_AZIMUTH_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_03 "CAN_DET_SUPER_RES_TARGET_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_03 "CAN_DET_ND_TARGET_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_03 "CAN_DET_HOST_VEH_CLUTTER_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_03 "CAN_DET_VALID_LEVEL_13_03"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_03 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_03 "CAN_DET_AZIMUTH_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_03 "CAN_DET_RANGE_13_03"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_03 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_03 "CAN_DET_RANGE_RATE_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_03 "CAN_DET_AMPLITUDE_13_03"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_03 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_03 "CAN_SCAN_INDEX_2LSB_13_03"; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 "CAN_DET_CONFID_AZIMUTH_13_04"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 "CAN_DET_CONFID_AZIMUTH_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_04 "CAN_DET_CONFID_AZIMUTH_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_04 "CAN_DET_SUPER_RES_TARGET_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_04 "CAN_DET_ND_TARGET_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_04 "CAN_DET_HOST_VEH_CLUTTER_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_04 "CAN_DET_VALID_LEVEL_13_04"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_04 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_04 "CAN_DET_AZIMUTH_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_04 "CAN_DET_RANGE_13_04"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_04 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_04 "CAN_DET_RANGE_RATE_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_04 "CAN_DET_AMPLITUDE_13_04"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_04 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_04 "CAN_SCAN_INDEX_2LSB_13_04"; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 "CAN_DET_CONFID_AZIMUTH_13_05"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 "CAN_DET_CONFID_AZIMUTH_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_05 "CAN_DET_CONFID_AZIMUTH_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_05 "CAN_DET_SUPER_RES_TARGET_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_05 "CAN_DET_ND_TARGET_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_05 "CAN_DET_HOST_VEH_CLUTTER_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_05 "CAN_DET_VALID_LEVEL_13_05"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_05 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_05 "CAN_DET_AZIMUTH_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_05 "CAN_DET_RANGE_13_05"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_05 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_05 "CAN_DET_RANGE_RATE_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_05 "CAN_DET_AMPLITUDE_13_05"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_05 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_05 "CAN_SCAN_INDEX_2LSB_13_05"; +BA_ "GenSigVtEn" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 "CAN_DET_CONFID_AZIMUTH_13_06"; +BA_ "GenSigVtName" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 "CAN_DET_CONFID_AZIMUTH_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_CONFID_AZIMUTH_13_06 "CAN_DET_CONFID_AZIMUTH_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_SUPER_RES_TARGET_13_06 "CAN_DET_SUPER_RES_TARGET_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_ND_TARGET_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_ND_TARGET_13_06 "CAN_DET_ND_TARGET_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_HOST_VEH_CLUTTER_13_06 "CAN_DET_HOST_VEH_CLUTTER_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_VALID_LEVEL_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_VALID_LEVEL_13_06 "CAN_DET_VALID_LEVEL_13_06"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_AZIMUTH_13_06 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AZIMUTH_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AZIMUTH_13_06 "CAN_DET_AZIMUTH_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_13_06 "CAN_DET_RANGE_13_06"; +BA_ "GenSigStartValue" SG_ 300 CAN_DET_RANGE_RATE_13_06 0; +BA_ "GenSigSendType" SG_ 300 CAN_DET_RANGE_RATE_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_RANGE_RATE_13_06 "CAN_DET_RANGE_RATE_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_DET_AMPLITUDE_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_DET_AMPLITUDE_13_06 "CAN_DET_AMPLITUDE_13_06"; +BA_ "GenSigSendType" SG_ 300 CAN_SCAN_INDEX_2LSB_13_06 0; +BA_ "GenSigCmt" SG_ 300 CAN_SCAN_INDEX_2LSB_13_06 "CAN_SCAN_INDEX_2LSB_13_06"; +BA_ "GenMsgSendType" BO_ 299 1; +BA_ "GenMsgILSupport" BO_ 299 1; +BA_ "GenMsgNrOfRepetition" BO_ 299 0; +BA_ "GenMsgCycleTime" BO_ 299 0; +BA_ "NetworkInitialization" BO_ 299 0; +BA_ "GenMsgDelayTime" BO_ 299 0; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 "CAN_DET_CONFID_AZIMUTH_12_01"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 "CAN_DET_CONFID_AZIMUTH_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_01 "CAN_DET_CONFID_AZIMUTH_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_01 "CAN_DET_SUPER_RES_TARGET_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_01 "CAN_DET_ND_TARGET_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_01 "CAN_DET_HOST_VEH_CLUTTER_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_01 "CAN_DET_VALID_LEVEL_12_01"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_01 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_01 "CAN_DET_AZIMUTH_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_01 "CAN_DET_RANGE_12_01"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_01 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_01 "CAN_DET_RANGE_RATE_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_01 "CAN_DET_AMPLITUDE_12_01"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_01 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_01 "CAN_SCAN_INDEX_2LSB_12_01"; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 "CAN_DET_CONFID_AZIMUTH_12_02"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 "CAN_DET_CONFID_AZIMUTH_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_02 "CAN_DET_CONFID_AZIMUTH_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_02 "CAN_DET_SUPER_RES_TARGET_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_02 "CAN_DET_ND_TARGET_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_02 "CAN_DET_HOST_VEH_CLUTTER_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_02 "CAN_DET_VALID_LEVEL_12_02"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_02 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_02 "CAN_DET_AZIMUTH_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_02 "CAN_DET_RANGE_12_02"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_02 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_02 "CAN_DET_RANGE_RATE_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_02 "CAN_DET_AMPLITUDE_12_02"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_02 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_02 "CAN_SCAN_INDEX_2LSB_12_02"; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 "CAN_DET_CONFID_AZIMUTH_12_03"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 "CAN_DET_CONFID_AZIMUTH_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_03 "CAN_DET_CONFID_AZIMUTH_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_03 "CAN_DET_SUPER_RES_TARGET_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_03 "CAN_DET_ND_TARGET_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_03 "CAN_DET_HOST_VEH_CLUTTER_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_03 "CAN_DET_VALID_LEVEL_12_03"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_03 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_03 "CAN_DET_AZIMUTH_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_03 "CAN_DET_RANGE_12_03"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_03 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_03 "CAN_DET_RANGE_RATE_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_03 "CAN_DET_AMPLITUDE_12_03"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_03 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_03 "CAN_SCAN_INDEX_2LSB_12_03"; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 "CAN_DET_CONFID_AZIMUTH_12_04"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 "CAN_DET_CONFID_AZIMUTH_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_04 "CAN_DET_CONFID_AZIMUTH_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_04 "CAN_DET_SUPER_RES_TARGET_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_04 "CAN_DET_ND_TARGET_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_04 "CAN_DET_HOST_VEH_CLUTTER_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_04 "CAN_DET_VALID_LEVEL_12_04"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_04 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_04 "CAN_DET_AZIMUTH_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_04 "CAN_DET_RANGE_12_04"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_04 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_04 "CAN_DET_RANGE_RATE_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_04 "CAN_DET_AMPLITUDE_12_04"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_04 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_04 "CAN_SCAN_INDEX_2LSB_12_04"; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 "CAN_DET_CONFID_AZIMUTH_12_05"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 "CAN_DET_CONFID_AZIMUTH_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_05 "CAN_DET_CONFID_AZIMUTH_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_05 "CAN_DET_SUPER_RES_TARGET_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_05 "CAN_DET_ND_TARGET_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_05 "CAN_DET_HOST_VEH_CLUTTER_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_05 "CAN_DET_VALID_LEVEL_12_05"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_05 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_05 "CAN_DET_AZIMUTH_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_05 "CAN_DET_RANGE_12_05"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_05 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_05 "CAN_DET_RANGE_RATE_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_05 "CAN_DET_AMPLITUDE_12_05"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_05 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_05 "CAN_SCAN_INDEX_2LSB_12_05"; +BA_ "GenSigVtEn" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 "CAN_DET_CONFID_AZIMUTH_12_06"; +BA_ "GenSigVtName" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 "CAN_DET_CONFID_AZIMUTH_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_CONFID_AZIMUTH_12_06 "CAN_DET_CONFID_AZIMUTH_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_SUPER_RES_TARGET_12_06 "CAN_DET_SUPER_RES_TARGET_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_ND_TARGET_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_ND_TARGET_12_06 "CAN_DET_ND_TARGET_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_HOST_VEH_CLUTTER_12_06 "CAN_DET_HOST_VEH_CLUTTER_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_VALID_LEVEL_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_VALID_LEVEL_12_06 "CAN_DET_VALID_LEVEL_12_06"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_AZIMUTH_12_06 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AZIMUTH_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AZIMUTH_12_06 "CAN_DET_AZIMUTH_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_12_06 "CAN_DET_RANGE_12_06"; +BA_ "GenSigStartValue" SG_ 299 CAN_DET_RANGE_RATE_12_06 0; +BA_ "GenSigSendType" SG_ 299 CAN_DET_RANGE_RATE_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_RANGE_RATE_12_06 "CAN_DET_RANGE_RATE_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_DET_AMPLITUDE_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_DET_AMPLITUDE_12_06 "CAN_DET_AMPLITUDE_12_06"; +BA_ "GenSigSendType" SG_ 299 CAN_SCAN_INDEX_2LSB_12_06 0; +BA_ "GenSigCmt" SG_ 299 CAN_SCAN_INDEX_2LSB_12_06 "CAN_SCAN_INDEX_2LSB_12_06"; +BA_ "GenMsgSendType" BO_ 298 1; +BA_ "GenMsgILSupport" BO_ 298 1; +BA_ "GenMsgNrOfRepetition" BO_ 298 0; +BA_ "GenMsgCycleTime" BO_ 298 0; +BA_ "NetworkInitialization" BO_ 298 0; +BA_ "GenMsgDelayTime" BO_ 298 0; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 "CAN_DET_CONFID_AZIMUTH_11_01"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 "CAN_DET_CONFID_AZIMUTH_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_01 "CAN_DET_CONFID_AZIMUTH_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_01 "CAN_DET_SUPER_RES_TARGET_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_01 "CAN_DET_ND_TARGET_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_01 "CAN_DET_HOST_VEH_CLUTTER_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_01 "CAN_DET_VALID_LEVEL_11_01"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_01 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_01 "CAN_DET_AZIMUTH_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_01 "CAN_DET_RANGE_11_01"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_01 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_01 "CAN_DET_RANGE_RATE_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_01 "CAN_DET_AMPLITUDE_11_01"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_01 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_01 "CAN_SCAN_INDEX_2LSB_11_01"; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 "CAN_DET_CONFID_AZIMUTH_11_02"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 "CAN_DET_CONFID_AZIMUTH_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_02 "CAN_DET_CONFID_AZIMUTH_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_02 "CAN_DET_SUPER_RES_TARGET_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_02 "CAN_DET_ND_TARGET_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_02 "CAN_DET_HOST_VEH_CLUTTER_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_02 "CAN_DET_VALID_LEVEL_11_02"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_02 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_02 "CAN_DET_AZIMUTH_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_02 "CAN_DET_RANGE_11_02"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_02 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_02 "CAN_DET_RANGE_RATE_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_02 "CAN_DET_AMPLITUDE_11_02"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_02 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_02 "CAN_SCAN_INDEX_2LSB_11_02"; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 "CAN_DET_CONFID_AZIMUTH_11_03"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 "CAN_DET_CONFID_AZIMUTH_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_03 "CAN_DET_CONFID_AZIMUTH_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_03 "CAN_DET_SUPER_RES_TARGET_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_03 "CAN_DET_ND_TARGET_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_03 "CAN_DET_HOST_VEH_CLUTTER_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_03 "CAN_DET_VALID_LEVEL_11_03"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_03 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_03 "CAN_DET_AZIMUTH_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_03 "CAN_DET_RANGE_11_03"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_03 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_03 "CAN_DET_RANGE_RATE_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_03 "CAN_DET_AMPLITUDE_11_03"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_03 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_03 "CAN_SCAN_INDEX_2LSB_11_03"; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 "CAN_DET_CONFID_AZIMUTH_11_04"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 "CAN_DET_CONFID_AZIMUTH_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_04 "CAN_DET_CONFID_AZIMUTH_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_04 "CAN_DET_SUPER_RES_TARGET_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_04 "CAN_DET_ND_TARGET_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_04 "CAN_DET_HOST_VEH_CLUTTER_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_04 "CAN_DET_VALID_LEVEL_11_04"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_04 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_04 "CAN_DET_AZIMUTH_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_04 "CAN_DET_RANGE_11_04"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_04 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_04 "CAN_DET_RANGE_RATE_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_04 "CAN_DET_AMPLITUDE_11_04"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_04 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_04 "CAN_SCAN_INDEX_2LSB_11_04"; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 "CAN_DET_CONFID_AZIMUTH_11_05"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 "CAN_DET_CONFID_AZIMUTH_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_05 "CAN_DET_CONFID_AZIMUTH_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_05 "CAN_DET_SUPER_RES_TARGET_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_05 "CAN_DET_ND_TARGET_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_05 "CAN_DET_HOST_VEH_CLUTTER_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_05 "CAN_DET_VALID_LEVEL_11_05"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_05 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_05 "CAN_DET_AZIMUTH_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_05 "CAN_DET_RANGE_11_05"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_05 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_05 "CAN_DET_RANGE_RATE_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_05 "CAN_DET_AMPLITUDE_11_05"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_05 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_05 "CAN_SCAN_INDEX_2LSB_11_05"; +BA_ "GenSigVtEn" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 "CAN_DET_CONFID_AZIMUTH_11_06"; +BA_ "GenSigVtName" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 "CAN_DET_CONFID_AZIMUTH_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_CONFID_AZIMUTH_11_06 "CAN_DET_CONFID_AZIMUTH_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_SUPER_RES_TARGET_11_06 "CAN_DET_SUPER_RES_TARGET_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_ND_TARGET_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_ND_TARGET_11_06 "CAN_DET_ND_TARGET_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_HOST_VEH_CLUTTER_11_06 "CAN_DET_HOST_VEH_CLUTTER_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_VALID_LEVEL_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_VALID_LEVEL_11_06 "CAN_DET_VALID_LEVEL_11_06"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_AZIMUTH_11_06 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AZIMUTH_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AZIMUTH_11_06 "CAN_DET_AZIMUTH_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_11_06 "CAN_DET_RANGE_11_06"; +BA_ "GenSigStartValue" SG_ 298 CAN_DET_RANGE_RATE_11_06 0; +BA_ "GenSigSendType" SG_ 298 CAN_DET_RANGE_RATE_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_RANGE_RATE_11_06 "CAN_DET_RANGE_RATE_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_DET_AMPLITUDE_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_DET_AMPLITUDE_11_06 "CAN_DET_AMPLITUDE_11_06"; +BA_ "GenSigSendType" SG_ 298 CAN_SCAN_INDEX_2LSB_11_06 0; +BA_ "GenSigCmt" SG_ 298 CAN_SCAN_INDEX_2LSB_11_06 "CAN_SCAN_INDEX_2LSB_11_06"; +BA_ "GenMsgSendType" BO_ 297 1; +BA_ "GenMsgILSupport" BO_ 297 1; +BA_ "GenMsgNrOfRepetition" BO_ 297 0; +BA_ "GenMsgCycleTime" BO_ 297 0; +BA_ "NetworkInitialization" BO_ 297 0; +BA_ "GenMsgDelayTime" BO_ 297 0; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 "CAN_DET_CONFID_AZIMUTH_10_01"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 "CAN_DET_CONFID_AZIMUTH_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_01 "CAN_DET_CONFID_AZIMUTH_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_01 "CAN_DET_SUPER_RES_TARGET_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_01 "CAN_DET_ND_TARGET_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_01 "CAN_DET_HOST_VEH_CLUTTER_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_01 "CAN_DET_VALID_LEVEL_10_01"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_01 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_01 "CAN_DET_AZIMUTH_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_01 "CAN_DET_RANGE_10_01"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_01 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_01 "CAN_DET_RANGE_RATE_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_01 "CAN_DET_AMPLITUDE_10_01"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_01 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_01 "CAN_SCAN_INDEX_2LSB_10_01"; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 "CAN_DET_CONFID_AZIMUTH_10_02"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 "CAN_DET_CONFID_AZIMUTH_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_02 "CAN_DET_CONFID_AZIMUTH_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_02 "CAN_DET_SUPER_RES_TARGET_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_02 "CAN_DET_ND_TARGET_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_02 "CAN_DET_HOST_VEH_CLUTTER_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_02 "CAN_DET_VALID_LEVEL_10_02"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_02 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_02 "CAN_DET_AZIMUTH_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_02 "CAN_DET_RANGE_10_02"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_02 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_02 "CAN_DET_RANGE_RATE_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_02 "CAN_DET_AMPLITUDE_10_02"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_02 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_02 "CAN_SCAN_INDEX_2LSB_10_02"; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 "CAN_DET_CONFID_AZIMUTH_10_03"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 "CAN_DET_CONFID_AZIMUTH_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_03 "CAN_DET_CONFID_AZIMUTH_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_03 "CAN_DET_SUPER_RES_TARGET_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_03 "CAN_DET_ND_TARGET_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_03 "CAN_DET_HOST_VEH_CLUTTER_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_03 "CAN_DET_VALID_LEVEL_10_03"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_03 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_03 "CAN_DET_AZIMUTH_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_03 "CAN_DET_RANGE_10_03"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_03 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_03 "CAN_DET_RANGE_RATE_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_03 "CAN_DET_AMPLITUDE_10_03"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_03 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_03 "CAN_SCAN_INDEX_2LSB_10_03"; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 "CAN_DET_CONFID_AZIMUTH_10_04"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 "CAN_DET_CONFID_AZIMUTH_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_04 "CAN_DET_CONFID_AZIMUTH_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_04 "CAN_DET_SUPER_RES_TARGET_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_04 "CAN_DET_ND_TARGET_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_04 "CAN_DET_HOST_VEH_CLUTTER_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_04 "CAN_DET_VALID_LEVEL_10_04"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_04 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_04 "CAN_DET_AZIMUTH_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_04 "CAN_DET_RANGE_10_04"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_04 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_04 "CAN_DET_RANGE_RATE_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_04 "CAN_DET_AMPLITUDE_10_04"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_04 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_04 "CAN_SCAN_INDEX_2LSB_10_04"; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 "CAN_DET_CONFID_AZIMUTH_10_05"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 "CAN_DET_CONFID_AZIMUTH_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_05 "CAN_DET_CONFID_AZIMUTH_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_05 "CAN_DET_SUPER_RES_TARGET_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_05 "CAN_DET_ND_TARGET_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_05 "CAN_DET_HOST_VEH_CLUTTER_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_05 "CAN_DET_VALID_LEVEL_10_05"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_05 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_05 "CAN_DET_AZIMUTH_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_05 "CAN_DET_RANGE_10_05"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_05 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_05 "CAN_DET_RANGE_RATE_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_05 "CAN_DET_AMPLITUDE_10_05"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_05 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_05 "CAN_SCAN_INDEX_2LSB_10_05"; +BA_ "GenSigVtEn" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 "CAN_DET_CONFID_AZIMUTH_10_06"; +BA_ "GenSigVtName" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 "CAN_DET_CONFID_AZIMUTH_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_CONFID_AZIMUTH_10_06 "CAN_DET_CONFID_AZIMUTH_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_SUPER_RES_TARGET_10_06 "CAN_DET_SUPER_RES_TARGET_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_ND_TARGET_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_ND_TARGET_10_06 "CAN_DET_ND_TARGET_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_HOST_VEH_CLUTTER_10_06 "CAN_DET_HOST_VEH_CLUTTER_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_VALID_LEVEL_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_VALID_LEVEL_10_06 "CAN_DET_VALID_LEVEL_10_06"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_AZIMUTH_10_06 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AZIMUTH_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AZIMUTH_10_06 "CAN_DET_AZIMUTH_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_10_06 "CAN_DET_RANGE_10_06"; +BA_ "GenSigStartValue" SG_ 297 CAN_DET_RANGE_RATE_10_06 0; +BA_ "GenSigSendType" SG_ 297 CAN_DET_RANGE_RATE_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_RANGE_RATE_10_06 "CAN_DET_RANGE_RATE_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_DET_AMPLITUDE_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_DET_AMPLITUDE_10_06 "CAN_DET_AMPLITUDE_10_06"; +BA_ "GenSigSendType" SG_ 297 CAN_SCAN_INDEX_2LSB_10_06 0; +BA_ "GenSigCmt" SG_ 297 CAN_SCAN_INDEX_2LSB_10_06 "CAN_SCAN_INDEX_2LSB_10_06"; +BA_ "GenMsgSendType" BO_ 296 1; +BA_ "GenMsgILSupport" BO_ 296 1; +BA_ "GenMsgNrOfRepetition" BO_ 296 0; +BA_ "GenMsgCycleTime" BO_ 296 0; +BA_ "NetworkInitialization" BO_ 296 0; +BA_ "GenMsgDelayTime" BO_ 296 0; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 "CAN_DET_CONFID_AZIMUTH_09_01"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 "CAN_DET_CONFID_AZIMUTH_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_01 "CAN_DET_CONFID_AZIMUTH_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_01 "CAN_DET_SUPER_RES_TARGET_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_01 "CAN_DET_ND_TARGET_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_01 "CAN_DET_HOST_VEH_CLUTTER_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_01 "CAN_DET_VALID_LEVEL_09_01"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_01 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_01 "CAN_DET_AZIMUTH_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_01 "CAN_DET_RANGE_09_01"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_01 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_01 "CAN_DET_RANGE_RATE_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_01 "CAN_DET_AMPLITUDE_09_01"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_01 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_01 "CAN_SCAN_INDEX_2LSB_09_01"; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 "CAN_DET_CONFID_AZIMUTH_09_02"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 "CAN_DET_CONFID_AZIMUTH_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_02 "CAN_DET_CONFID_AZIMUTH_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_02 "CAN_DET_SUPER_RES_TARGET_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_02 "CAN_DET_ND_TARGET_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_02 "CAN_DET_HOST_VEH_CLUTTER_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_02 "CAN_DET_VALID_LEVEL_09_02"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_02 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_02 "CAN_DET_AZIMUTH_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_02 "CAN_DET_RANGE_09_02"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_02 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_02 "CAN_DET_RANGE_RATE_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_02 "CAN_DET_AMPLITUDE_09_02"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_02 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_02 "CAN_SCAN_INDEX_2LSB_09_02"; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 "CAN_DET_CONFID_AZIMUTH_09_03"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 "CAN_DET_CONFID_AZIMUTH_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_03 "CAN_DET_CONFID_AZIMUTH_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_03 "CAN_DET_SUPER_RES_TARGET_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_03 "CAN_DET_ND_TARGET_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_03 "CAN_DET_HOST_VEH_CLUTTER_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_03 "CAN_DET_VALID_LEVEL_09_03"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_03 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_03 "CAN_DET_AZIMUTH_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_03 "CAN_DET_RANGE_09_03"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_03 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_03 "CAN_DET_RANGE_RATE_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_03 "CAN_DET_AMPLITUDE_09_03"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_03 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_03 "CAN_SCAN_INDEX_2LSB_09_03"; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 "CAN_DET_CONFID_AZIMUTH_09_04"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 "CAN_DET_CONFID_AZIMUTH_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_04 "CAN_DET_CONFID_AZIMUTH_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_04 "CAN_DET_SUPER_RES_TARGET_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_04 "CAN_DET_ND_TARGET_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_04 "CAN_DET_HOST_VEH_CLUTTER_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_04 "CAN_DET_VALID_LEVEL_09_04"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_04 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_04 "CAN_DET_AZIMUTH_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_04 "CAN_DET_RANGE_09_04"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_04 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_04 "CAN_DET_RANGE_RATE_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_04 "CAN_DET_AMPLITUDE_09_04"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_04 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_04 "CAN_SCAN_INDEX_2LSB_09_04"; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 "CAN_DET_CONFID_AZIMUTH_09_05"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 "CAN_DET_CONFID_AZIMUTH_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_05 "CAN_DET_CONFID_AZIMUTH_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_05 "CAN_DET_SUPER_RES_TARGET_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_05 "CAN_DET_ND_TARGET_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_05 "CAN_DET_HOST_VEH_CLUTTER_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_05 "CAN_DET_VALID_LEVEL_09_05"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_05 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_05 "CAN_DET_AZIMUTH_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_05 "CAN_DET_RANGE_09_05"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_05 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_05 "CAN_DET_RANGE_RATE_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_05 "CAN_DET_AMPLITUDE_09_05"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_05 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_05 "CAN_SCAN_INDEX_2LSB_09_05"; +BA_ "GenSigVtEn" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 "CAN_DET_CONFID_AZIMUTH_09_06"; +BA_ "GenSigVtName" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 "CAN_DET_CONFID_AZIMUTH_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_CONFID_AZIMUTH_09_06 "CAN_DET_CONFID_AZIMUTH_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_SUPER_RES_TARGET_09_06 "CAN_DET_SUPER_RES_TARGET_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_ND_TARGET_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_ND_TARGET_09_06 "CAN_DET_ND_TARGET_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_HOST_VEH_CLUTTER_09_06 "CAN_DET_HOST_VEH_CLUTTER_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_VALID_LEVEL_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_VALID_LEVEL_09_06 "CAN_DET_VALID_LEVEL_09_06"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_AZIMUTH_09_06 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AZIMUTH_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AZIMUTH_09_06 "CAN_DET_AZIMUTH_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_09_06 "CAN_DET_RANGE_09_06"; +BA_ "GenSigStartValue" SG_ 296 CAN_DET_RANGE_RATE_09_06 0; +BA_ "GenSigSendType" SG_ 296 CAN_DET_RANGE_RATE_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_RANGE_RATE_09_06 "CAN_DET_RANGE_RATE_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_DET_AMPLITUDE_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_DET_AMPLITUDE_09_06 "CAN_DET_AMPLITUDE_09_06"; +BA_ "GenSigSendType" SG_ 296 CAN_SCAN_INDEX_2LSB_09_06 0; +BA_ "GenSigCmt" SG_ 296 CAN_SCAN_INDEX_2LSB_09_06 "CAN_SCAN_INDEX_2LSB_09_06"; +BA_ "GenMsgSendType" BO_ 295 1; +BA_ "GenMsgILSupport" BO_ 295 1; +BA_ "GenMsgNrOfRepetition" BO_ 295 0; +BA_ "GenMsgCycleTime" BO_ 295 0; +BA_ "NetworkInitialization" BO_ 295 0; +BA_ "GenMsgDelayTime" BO_ 295 0; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 "CAN_DET_CONFID_AZIMUTH_08_01"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 "CAN_DET_CONFID_AZIMUTH_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_01 "CAN_DET_CONFID_AZIMUTH_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_01 "CAN_DET_SUPER_RES_TARGET_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_01 "CAN_DET_ND_TARGET_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_01 "CAN_DET_HOST_VEH_CLUTTER_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_01 "CAN_DET_VALID_LEVEL_08_01"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_01 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_01 "CAN_DET_AZIMUTH_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_01 "CAN_DET_RANGE_08_01"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_01 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_01 "CAN_DET_RANGE_RATE_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_01 "CAN_DET_AMPLITUDE_08_01"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_01 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_01 "CAN_SCAN_INDEX_2LSB_08_01"; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 "CAN_DET_CONFID_AZIMUTH_08_02"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 "CAN_DET_CONFID_AZIMUTH_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_02 "CAN_DET_CONFID_AZIMUTH_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_02 "CAN_DET_SUPER_RES_TARGET_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_02 "CAN_DET_ND_TARGET_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_02 "CAN_DET_HOST_VEH_CLUTTER_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_02 "CAN_DET_VALID_LEVEL_08_02"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_02 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_02 "CAN_DET_AZIMUTH_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_02 "CAN_DET_RANGE_08_02"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_02 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_02 "CAN_DET_RANGE_RATE_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_02 "CAN_DET_AMPLITUDE_08_02"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_02 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_02 "CAN_SCAN_INDEX_2LSB_08_02"; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 "CAN_DET_CONFID_AZIMUTH_08_03"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 "CAN_DET_CONFID_AZIMUTH_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_03 "CAN_DET_CONFID_AZIMUTH_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_03 "CAN_DET_SUPER_RES_TARGET_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_03 "CAN_DET_ND_TARGET_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_03 "CAN_DET_HOST_VEH_CLUTTER_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_03 "CAN_DET_VALID_LEVEL_08_03"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_03 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_03 "CAN_DET_AZIMUTH_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_03 "CAN_DET_RANGE_08_03"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_03 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_03 "CAN_DET_RANGE_RATE_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_03 "CAN_DET_AMPLITUDE_08_03"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_03 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_03 "CAN_SCAN_INDEX_2LSB_08_03"; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 "CAN_DET_CONFID_AZIMUTH_08_04"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 "CAN_DET_CONFID_AZIMUTH_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_04 "CAN_DET_CONFID_AZIMUTH_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_04 "CAN_DET_SUPER_RES_TARGET_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_04 "CAN_DET_ND_TARGET_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_04 "CAN_DET_HOST_VEH_CLUTTER_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_04 "CAN_DET_VALID_LEVEL_08_04"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_04 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_04 "CAN_DET_AZIMUTH_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_04 "CAN_DET_RANGE_08_04"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_04 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_04 "CAN_DET_RANGE_RATE_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_04 "CAN_DET_AMPLITUDE_08_04"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_04 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_04 "CAN_SCAN_INDEX_2LSB_08_04"; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 "CAN_DET_CONFID_AZIMUTH_08_05"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 "CAN_DET_CONFID_AZIMUTH_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_05 "CAN_DET_CONFID_AZIMUTH_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_05 "CAN_DET_SUPER_RES_TARGET_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_05 "CAN_DET_ND_TARGET_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_05 "CAN_DET_HOST_VEH_CLUTTER_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_05 "CAN_DET_VALID_LEVEL_08_05"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_05 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_05 "CAN_DET_AZIMUTH_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_05 "CAN_DET_RANGE_08_05"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_05 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_05 "CAN_DET_RANGE_RATE_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_05 "CAN_DET_AMPLITUDE_08_05"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_05 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_05 "CAN_SCAN_INDEX_2LSB_08_05"; +BA_ "GenSigVtEn" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 "CAN_DET_CONFID_AZIMUTH_08_06"; +BA_ "GenSigVtName" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 "CAN_DET_CONFID_AZIMUTH_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_CONFID_AZIMUTH_08_06 "CAN_DET_CONFID_AZIMUTH_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_SUPER_RES_TARGET_08_06 "CAN_DET_SUPER_RES_TARGET_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_ND_TARGET_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_ND_TARGET_08_06 "CAN_DET_ND_TARGET_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_HOST_VEH_CLUTTER_08_06 "CAN_DET_HOST_VEH_CLUTTER_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_VALID_LEVEL_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_VALID_LEVEL_08_06 "CAN_DET_VALID_LEVEL_08_06"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_AZIMUTH_08_06 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AZIMUTH_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AZIMUTH_08_06 "CAN_DET_AZIMUTH_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_08_06 "CAN_DET_RANGE_08_06"; +BA_ "GenSigStartValue" SG_ 295 CAN_DET_RANGE_RATE_08_06 0; +BA_ "GenSigSendType" SG_ 295 CAN_DET_RANGE_RATE_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_RANGE_RATE_08_06 "CAN_DET_RANGE_RATE_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_DET_AMPLITUDE_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_DET_AMPLITUDE_08_06 "CAN_DET_AMPLITUDE_08_06"; +BA_ "GenSigSendType" SG_ 295 CAN_SCAN_INDEX_2LSB_08_06 0; +BA_ "GenSigCmt" SG_ 295 CAN_SCAN_INDEX_2LSB_08_06 "CAN_SCAN_INDEX_2LSB_08_06"; +BA_ "GenMsgSendType" BO_ 294 1; +BA_ "GenMsgILSupport" BO_ 294 1; +BA_ "GenMsgNrOfRepetition" BO_ 294 0; +BA_ "GenMsgCycleTime" BO_ 294 0; +BA_ "NetworkInitialization" BO_ 294 0; +BA_ "GenMsgDelayTime" BO_ 294 0; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 "CAN_DET_CONFID_AZIMUTH_07_01"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 "CAN_DET_CONFID_AZIMUTH_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_01 "CAN_DET_CONFID_AZIMUTH_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_01 "CAN_DET_SUPER_RES_TARGET_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_01 "CAN_DET_ND_TARGET_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_01 "CAN_DET_HOST_VEH_CLUTTER_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_01 "CAN_DET_VALID_LEVEL_07_01"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_01 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_01 "CAN_DET_AZIMUTH_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_01 "CAN_DET_RANGE_07_01"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_01 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_01 "CAN_DET_RANGE_RATE_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_01 "CAN_DET_AMPLITUDE_07_01"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_01 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_01 "CAN_SCAN_INDEX_2LSB_07_01"; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 "CAN_DET_CONFID_AZIMUTH_07_02"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 "CAN_DET_CONFID_AZIMUTH_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_02 "CAN_DET_CONFID_AZIMUTH_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_02 "CAN_DET_SUPER_RES_TARGET_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_02 "CAN_DET_ND_TARGET_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_02 "CAN_DET_HOST_VEH_CLUTTER_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_02 "CAN_DET_VALID_LEVEL_07_02"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_02 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_02 "CAN_DET_AZIMUTH_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_02 "CAN_DET_RANGE_07_02"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_02 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_02 "CAN_DET_RANGE_RATE_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_02 "CAN_DET_AMPLITUDE_07_02"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_02 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_02 "CAN_SCAN_INDEX_2LSB_07_02"; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 "CAN_DET_CONFID_AZIMUTH_07_03"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 "CAN_DET_CONFID_AZIMUTH_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_03 "CAN_DET_CONFID_AZIMUTH_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_03 "CAN_DET_SUPER_RES_TARGET_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_03 "CAN_DET_ND_TARGET_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_03 "CAN_DET_HOST_VEH_CLUTTER_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_03 "CAN_DET_VALID_LEVEL_07_03"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_03 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_03 "CAN_DET_AZIMUTH_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_03 "CAN_DET_RANGE_07_03"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_03 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_03 "CAN_DET_RANGE_RATE_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_03 "CAN_DET_AMPLITUDE_07_03"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_03 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_03 "CAN_SCAN_INDEX_2LSB_07_03"; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 "CAN_DET_CONFID_AZIMUTH_07_04"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 "CAN_DET_CONFID_AZIMUTH_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_04 "CAN_DET_CONFID_AZIMUTH_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_04 "CAN_DET_SUPER_RES_TARGET_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_04 "CAN_DET_ND_TARGET_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_04 "CAN_DET_HOST_VEH_CLUTTER_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_04 "CAN_DET_VALID_LEVEL_07_04"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_04 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_04 "CAN_DET_AZIMUTH_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_04 "CAN_DET_RANGE_07_04"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_04 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_04 "CAN_DET_RANGE_RATE_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_04 "CAN_DET_AMPLITUDE_07_04"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_04 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_04 "CAN_SCAN_INDEX_2LSB_07_04"; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 "CAN_DET_CONFID_AZIMUTH_07_05"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 "CAN_DET_CONFID_AZIMUTH_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_05 "CAN_DET_CONFID_AZIMUTH_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_05 "CAN_DET_SUPER_RES_TARGET_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_05 "CAN_DET_ND_TARGET_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_05 "CAN_DET_HOST_VEH_CLUTTER_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_05 "CAN_DET_VALID_LEVEL_07_05"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_05 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_05 "CAN_DET_AZIMUTH_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_05 "CAN_DET_RANGE_07_05"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_05 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_05 "CAN_DET_RANGE_RATE_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_05 "CAN_DET_AMPLITUDE_07_05"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_05 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_05 "CAN_SCAN_INDEX_2LSB_07_05"; +BA_ "GenSigVtEn" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 "CAN_DET_CONFID_AZIMUTH_07_06"; +BA_ "GenSigVtName" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 "CAN_DET_CONFID_AZIMUTH_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_CONFID_AZIMUTH_07_06 "CAN_DET_CONFID_AZIMUTH_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_SUPER_RES_TARGET_07_06 "CAN_DET_SUPER_RES_TARGET_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_ND_TARGET_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_ND_TARGET_07_06 "CAN_DET_ND_TARGET_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_HOST_VEH_CLUTTER_07_06 "CAN_DET_HOST_VEH_CLUTTER_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_VALID_LEVEL_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_VALID_LEVEL_07_06 "CAN_DET_VALID_LEVEL_07_06"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_AZIMUTH_07_06 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AZIMUTH_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AZIMUTH_07_06 "CAN_DET_AZIMUTH_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_07_06 "CAN_DET_RANGE_07_06"; +BA_ "GenSigStartValue" SG_ 294 CAN_DET_RANGE_RATE_07_06 0; +BA_ "GenSigSendType" SG_ 294 CAN_DET_RANGE_RATE_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_RANGE_RATE_07_06 "CAN_DET_RANGE_RATE_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_DET_AMPLITUDE_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_DET_AMPLITUDE_07_06 "CAN_DET_AMPLITUDE_07_06"; +BA_ "GenSigSendType" SG_ 294 CAN_SCAN_INDEX_2LSB_07_06 0; +BA_ "GenSigCmt" SG_ 294 CAN_SCAN_INDEX_2LSB_07_06 "CAN_SCAN_INDEX_2LSB_07_06"; +BA_ "GenMsgSendType" BO_ 293 1; +BA_ "GenMsgILSupport" BO_ 293 1; +BA_ "GenMsgNrOfRepetition" BO_ 293 0; +BA_ "GenMsgCycleTime" BO_ 293 0; +BA_ "NetworkInitialization" BO_ 293 0; +BA_ "GenMsgDelayTime" BO_ 293 0; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 "CAN_DET_CONFID_AZIMUTH_06_01"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 "CAN_DET_CONFID_AZIMUTH_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_01 "CAN_DET_CONFID_AZIMUTH_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_01 "CAN_DET_SUPER_RES_TARGET_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_01 "CAN_DET_ND_TARGET_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_01 "CAN_DET_HOST_VEH_CLUTTER_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_01 "CAN_DET_VALID_LEVEL_06_01"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_01 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_01 "CAN_DET_AZIMUTH_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_01 "CAN_DET_RANGE_06_01"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_01 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_01 "CAN_DET_RANGE_RATE_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_01 "CAN_DET_AMPLITUDE_06_01"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_01 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_01 "CAN_SCAN_INDEX_2LSB_06_01"; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 "CAN_DET_CONFID_AZIMUTH_06_02"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 "CAN_DET_CONFID_AZIMUTH_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_02 "CAN_DET_CONFID_AZIMUTH_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_02 "CAN_DET_SUPER_RES_TARGET_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_02 "CAN_DET_ND_TARGET_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_02 "CAN_DET_HOST_VEH_CLUTTER_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_02 "CAN_DET_VALID_LEVEL_06_02"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_02 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_02 "CAN_DET_AZIMUTH_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_02 "CAN_DET_RANGE_06_02"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_02 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_02 "CAN_DET_RANGE_RATE_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_02 "CAN_DET_AMPLITUDE_06_02"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_02 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_02 "CAN_SCAN_INDEX_2LSB_06_02"; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 "CAN_DET_CONFID_AZIMUTH_06_03"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 "CAN_DET_CONFID_AZIMUTH_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_03 "CAN_DET_CONFID_AZIMUTH_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_03 "CAN_DET_SUPER_RES_TARGET_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_03 "CAN_DET_ND_TARGET_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_03 "CAN_DET_HOST_VEH_CLUTTER_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_03 "CAN_DET_VALID_LEVEL_06_03"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_03 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_03 "CAN_DET_AZIMUTH_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_03 "CAN_DET_RANGE_06_03"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_03 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_03 "CAN_DET_RANGE_RATE_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_03 "CAN_DET_AMPLITUDE_06_03"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_03 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_03 "CAN_SCAN_INDEX_2LSB_06_03"; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 "CAN_DET_CONFID_AZIMUTH_06_04"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 "CAN_DET_CONFID_AZIMUTH_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_04 "CAN_DET_CONFID_AZIMUTH_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_04 "CAN_DET_SUPER_RES_TARGET_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_04 "CAN_DET_ND_TARGET_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_04 "CAN_DET_HOST_VEH_CLUTTER_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_04 "CAN_DET_VALID_LEVEL_06_04"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_04 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_04 "CAN_DET_AZIMUTH_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_04 "CAN_DET_RANGE_06_04"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_04 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_04 "CAN_DET_RANGE_RATE_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_04 "CAN_DET_AMPLITUDE_06_04"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_04 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_04 "CAN_SCAN_INDEX_2LSB_06_04"; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 "CAN_DET_CONFID_AZIMUTH_06_05"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 "CAN_DET_CONFID_AZIMUTH_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_05 "CAN_DET_CONFID_AZIMUTH_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_05 "CAN_DET_SUPER_RES_TARGET_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_05 "CAN_DET_ND_TARGET_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_05 "CAN_DET_HOST_VEH_CLUTTER_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_05 "CAN_DET_VALID_LEVEL_06_05"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_05 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_05 "CAN_DET_AZIMUTH_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_05 "CAN_DET_RANGE_06_05"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_05 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_05 "CAN_DET_RANGE_RATE_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_05 "CAN_DET_AMPLITUDE_06_05"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_05 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_05 "CAN_SCAN_INDEX_2LSB_06_05"; +BA_ "GenSigVtEn" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 "CAN_DET_CONFID_AZIMUTH_06_06"; +BA_ "GenSigVtName" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 "CAN_DET_CONFID_AZIMUTH_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_CONFID_AZIMUTH_06_06 "CAN_DET_CONFID_AZIMUTH_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_SUPER_RES_TARGET_06_06 "CAN_DET_SUPER_RES_TARGET_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_ND_TARGET_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_ND_TARGET_06_06 "CAN_DET_ND_TARGET_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_HOST_VEH_CLUTTER_06_06 "CAN_DET_HOST_VEH_CLUTTER_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_VALID_LEVEL_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_VALID_LEVEL_06_06 "CAN_DET_VALID_LEVEL_06_06"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_AZIMUTH_06_06 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AZIMUTH_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AZIMUTH_06_06 "CAN_DET_AZIMUTH_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_06_06 "CAN_DET_RANGE_06_06"; +BA_ "GenSigStartValue" SG_ 293 CAN_DET_RANGE_RATE_06_06 0; +BA_ "GenSigSendType" SG_ 293 CAN_DET_RANGE_RATE_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_RANGE_RATE_06_06 "CAN_DET_RANGE_RATE_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_DET_AMPLITUDE_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_DET_AMPLITUDE_06_06 "CAN_DET_AMPLITUDE_06_06"; +BA_ "GenSigSendType" SG_ 293 CAN_SCAN_INDEX_2LSB_06_06 0; +BA_ "GenSigCmt" SG_ 293 CAN_SCAN_INDEX_2LSB_06_06 "CAN_SCAN_INDEX_2LSB_06_06"; +BA_ "GenMsgSendType" BO_ 292 1; +BA_ "GenMsgILSupport" BO_ 292 1; +BA_ "GenMsgNrOfRepetition" BO_ 292 0; +BA_ "GenMsgCycleTime" BO_ 292 0; +BA_ "NetworkInitialization" BO_ 292 0; +BA_ "GenMsgDelayTime" BO_ 292 0; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 "CAN_DET_CONFID_AZIMUTH_05_01"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 "CAN_DET_CONFID_AZIMUTH_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_01 "CAN_DET_CONFID_AZIMUTH_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_01 "CAN_DET_SUPER_RES_TARGET_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_01 "CAN_DET_ND_TARGET_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_01 "CAN_DET_HOST_VEH_CLUTTER_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_01 "CAN_DET_VALID_LEVEL_05_01"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_01 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_01 "CAN_DET_AZIMUTH_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_01 "CAN_DET_RANGE_05_01"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_01 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_01 "CAN_DET_RANGE_RATE_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_01 "CAN_DET_AMPLITUDE_05_01"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_01 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_01 "CAN_SCAN_INDEX_2LSB_05_01"; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 "CAN_DET_CONFID_AZIMUTH_05_02"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 "CAN_DET_CONFID_AZIMUTH_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_02 "CAN_DET_CONFID_AZIMUTH_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_02 "CAN_DET_SUPER_RES_TARGET_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_02 "CAN_DET_ND_TARGET_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_02 "CAN_DET_HOST_VEH_CLUTTER_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_02 "CAN_DET_VALID_LEVEL_05_02"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_02 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_02 "CAN_DET_AZIMUTH_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_02 "CAN_DET_RANGE_05_02"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_02 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_02 "CAN_DET_RANGE_RATE_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_02 "CAN_DET_AMPLITUDE_05_02"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_02 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_02 "CAN_SCAN_INDEX_2LSB_05_02"; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 "CAN_DET_CONFID_AZIMUTH_05_03"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 "CAN_DET_CONFID_AZIMUTH_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_03 "CAN_DET_CONFID_AZIMUTH_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_03 "CAN_DET_SUPER_RES_TARGET_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_03 "CAN_DET_ND_TARGET_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_03 "CAN_DET_HOST_VEH_CLUTTER_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_03 "CAN_DET_VALID_LEVEL_05_03"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_03 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_03 "CAN_DET_AZIMUTH_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_03 "CAN_DET_RANGE_05_03"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_03 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_03 "CAN_DET_RANGE_RATE_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_03 "CAN_DET_AMPLITUDE_05_03"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_03 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_03 "CAN_SCAN_INDEX_2LSB_05_03"; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 "CAN_DET_CONFID_AZIMUTH_05_04"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 "CAN_DET_CONFID_AZIMUTH_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_04 "CAN_DET_CONFID_AZIMUTH_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_04 "CAN_DET_SUPER_RES_TARGET_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_04 "CAN_DET_ND_TARGET_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_04 "CAN_DET_HOST_VEH_CLUTTER_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_04 "CAN_DET_VALID_LEVEL_05_04"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_04 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_04 "CAN_DET_AZIMUTH_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_04 "CAN_DET_RANGE_05_04"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_04 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_04 "CAN_DET_RANGE_RATE_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_04 "CAN_DET_AMPLITUDE_05_04"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_04 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_04 "CAN_SCAN_INDEX_2LSB_05_04"; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 "CAN_DET_CONFID_AZIMUTH_05_05"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 "CAN_DET_CONFID_AZIMUTH_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_05 "CAN_DET_CONFID_AZIMUTH_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_05 "CAN_DET_SUPER_RES_TARGET_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_05 "CAN_DET_ND_TARGET_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_05 "CAN_DET_HOST_VEH_CLUTTER_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_05 "CAN_DET_VALID_LEVEL_05_05"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_05 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_05 "CAN_DET_AZIMUTH_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_05 "CAN_DET_RANGE_05_05"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_05 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_05 "CAN_DET_RANGE_RATE_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_05 "CAN_DET_AMPLITUDE_05_05"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_05 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_05 "CAN_SCAN_INDEX_2LSB_05_05"; +BA_ "GenSigVtEn" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 "CAN_DET_CONFID_AZIMUTH_05_06"; +BA_ "GenSigVtName" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 "CAN_DET_CONFID_AZIMUTH_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_CONFID_AZIMUTH_05_06 "CAN_DET_CONFID_AZIMUTH_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_SUPER_RES_TARGET_05_06 "CAN_DET_SUPER_RES_TARGET_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_ND_TARGET_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_ND_TARGET_05_06 "CAN_DET_ND_TARGET_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_HOST_VEH_CLUTTER_05_06 "CAN_DET_HOST_VEH_CLUTTER_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_VALID_LEVEL_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_VALID_LEVEL_05_06 "CAN_DET_VALID_LEVEL_05_06"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_AZIMUTH_05_06 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AZIMUTH_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AZIMUTH_05_06 "CAN_DET_AZIMUTH_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_05_06 "CAN_DET_RANGE_05_06"; +BA_ "GenSigStartValue" SG_ 292 CAN_DET_RANGE_RATE_05_06 0; +BA_ "GenSigSendType" SG_ 292 CAN_DET_RANGE_RATE_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_RANGE_RATE_05_06 "CAN_DET_RANGE_RATE_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_DET_AMPLITUDE_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_DET_AMPLITUDE_05_06 "CAN_DET_AMPLITUDE_05_06"; +BA_ "GenSigSendType" SG_ 292 CAN_SCAN_INDEX_2LSB_05_06 0; +BA_ "GenSigCmt" SG_ 292 CAN_SCAN_INDEX_2LSB_05_06 "CAN_SCAN_INDEX_2LSB_05_06"; +BA_ "GenMsgSendType" BO_ 290 1; +BA_ "GenMsgILSupport" BO_ 290 1; +BA_ "GenMsgNrOfRepetition" BO_ 290 0; +BA_ "GenMsgCycleTime" BO_ 290 0; +BA_ "NetworkInitialization" BO_ 290 0; +BA_ "GenMsgDelayTime" BO_ 290 0; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 "CAN_DET_CONFID_AZIMUTH_03_01"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 "CAN_DET_CONFID_AZIMUTH_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_01 "CAN_DET_CONFID_AZIMUTH_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_01 "CAN_DET_SUPER_RES_TARGET_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_01 "CAN_DET_ND_TARGET_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_01 "CAN_DET_HOST_VEH_CLUTTER_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_01 "CAN_DET_VALID_LEVEL_03_01"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_01 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_01 "CAN_DET_AZIMUTH_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_01 "CAN_DET_RANGE_03_01"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_01 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_01 "CAN_DET_RANGE_RATE_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_01 "CAN_DET_AMPLITUDE_03_01"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_01 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_01 "CAN_SCAN_INDEX_2LSB_03_01"; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 "CAN_DET_CONFID_AZIMUTH_03_02"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 "CAN_DET_CONFID_AZIMUTH_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_02 "CAN_DET_CONFID_AZIMUTH_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_02 "CAN_DET_SUPER_RES_TARGET_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_02 "CAN_DET_ND_TARGET_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_02 "CAN_DET_HOST_VEH_CLUTTER_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_02 "CAN_DET_VALID_LEVEL_03_02"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_02 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_02 "CAN_DET_AZIMUTH_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_02 "CAN_DET_RANGE_03_02"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_02 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_02 "CAN_DET_RANGE_RATE_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_02 "CAN_DET_AMPLITUDE_03_02"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_02 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_02 "CAN_SCAN_INDEX_2LSB_03_02"; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 "CAN_DET_CONFID_AZIMUTH_03_03"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 "CAN_DET_CONFID_AZIMUTH_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_03 "CAN_DET_CONFID_AZIMUTH_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_03 "CAN_DET_SUPER_RES_TARGET_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_03 "CAN_DET_ND_TARGET_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_03 "CAN_DET_HOST_VEH_CLUTTER_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_03 "CAN_DET_VALID_LEVEL_03_03"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_03 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_03 "CAN_DET_AZIMUTH_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_03 "CAN_DET_RANGE_03_03"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_03 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_03 "CAN_DET_RANGE_RATE_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_03 "CAN_DET_AMPLITUDE_03_03"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_03 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_03 "CAN_SCAN_INDEX_2LSB_03_03"; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 "CAN_DET_CONFID_AZIMUTH_03_04"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 "CAN_DET_CONFID_AZIMUTH_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_04 "CAN_DET_CONFID_AZIMUTH_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_04 "CAN_DET_SUPER_RES_TARGET_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_04 "CAN_DET_ND_TARGET_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_04 "CAN_DET_HOST_VEH_CLUTTER_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_04 "CAN_DET_VALID_LEVEL_03_04"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_04 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_04 "CAN_DET_AZIMUTH_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_04 "CAN_DET_RANGE_03_04"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_04 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_04 "CAN_DET_RANGE_RATE_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_04 "CAN_DET_AMPLITUDE_03_04"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_04 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_04 "CAN_SCAN_INDEX_2LSB_03_04"; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 "CAN_DET_CONFID_AZIMUTH_03_05"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 "CAN_DET_CONFID_AZIMUTH_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_05 "CAN_DET_CONFID_AZIMUTH_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_05 "CAN_DET_SUPER_RES_TARGET_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_05 "CAN_DET_ND_TARGET_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_05 "CAN_DET_HOST_VEH_CLUTTER_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_05 "CAN_DET_VALID_LEVEL_03_05"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_05 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_05 "CAN_DET_AZIMUTH_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_05 "CAN_DET_RANGE_03_05"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_05 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_05 "CAN_DET_RANGE_RATE_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_05 "CAN_DET_AMPLITUDE_03_05"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_05 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_05 "CAN_SCAN_INDEX_2LSB_03_05"; +BA_ "GenSigVtEn" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 "CAN_DET_CONFID_AZIMUTH_03_06"; +BA_ "GenSigVtName" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 "CAN_DET_CONFID_AZIMUTH_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_CONFID_AZIMUTH_03_06 "CAN_DET_CONFID_AZIMUTH_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_SUPER_RES_TARGET_03_06 "CAN_DET_SUPER_RES_TARGET_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_ND_TARGET_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_ND_TARGET_03_06 "CAN_DET_ND_TARGET_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_HOST_VEH_CLUTTER_03_06 "CAN_DET_HOST_VEH_CLUTTER_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_VALID_LEVEL_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_VALID_LEVEL_03_06 "CAN_DET_VALID_LEVEL_03_06"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_AZIMUTH_03_06 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AZIMUTH_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AZIMUTH_03_06 "CAN_DET_AZIMUTH_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_03_06 "CAN_DET_RANGE_03_06"; +BA_ "GenSigStartValue" SG_ 290 CAN_DET_RANGE_RATE_03_06 0; +BA_ "GenSigSendType" SG_ 290 CAN_DET_RANGE_RATE_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_RANGE_RATE_03_06 "CAN_DET_RANGE_RATE_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_DET_AMPLITUDE_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_DET_AMPLITUDE_03_06 "CAN_DET_AMPLITUDE_03_06"; +BA_ "GenSigSendType" SG_ 290 CAN_SCAN_INDEX_2LSB_03_06 0; +BA_ "GenSigCmt" SG_ 290 CAN_SCAN_INDEX_2LSB_03_06 "CAN_SCAN_INDEX_2LSB_03_06"; +BA_ "GenMsgSendType" BO_ 289 1; +BA_ "GenMsgILSupport" BO_ 289 1; +BA_ "GenMsgNrOfRepetition" BO_ 289 0; +BA_ "GenMsgCycleTime" BO_ 289 0; +BA_ "NetworkInitialization" BO_ 289 0; +BA_ "GenMsgDelayTime" BO_ 289 0; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 "CAN_DET_CONFID_AZIMUTH_02_01"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 "CAN_DET_CONFID_AZIMUTH_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_01 "CAN_DET_CONFID_AZIMUTH_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_01 "CAN_DET_SUPER_RES_TARGET_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_01 "CAN_DET_ND_TARGET_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_01 "CAN_DET_HOST_VEH_CLUTTER_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_01 "CAN_DET_VALID_LEVEL_02_01"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_01 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_01 "CAN_DET_AZIMUTH_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_01 "CAN_DET_RANGE_02_01"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_01 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_01 "CAN_DET_RANGE_RATE_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_01 "CAN_DET_AMPLITUDE_02_01"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_01 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_01 "CAN_SCAN_INDEX_2LSB_02_01"; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 "CAN_DET_CONFID_AZIMUTH_02_02"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 "CAN_DET_CONFID_AZIMUTH_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_02 "CAN_DET_CONFID_AZIMUTH_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_02 "CAN_DET_SUPER_RES_TARGET_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_02 "CAN_DET_ND_TARGET_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_02 "CAN_DET_HOST_VEH_CLUTTER_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_02 "CAN_DET_VALID_LEVEL_02_02"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_02 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_02 "CAN_DET_AZIMUTH_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_02 "CAN_DET_RANGE_02_02"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_02 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_02 "CAN_DET_RANGE_RATE_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_02 "CAN_DET_AMPLITUDE_02_02"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_02 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_02 "CAN_SCAN_INDEX_2LSB_02_02"; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 "CAN_DET_CONFID_AZIMUTH_02_03"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 "CAN_DET_CONFID_AZIMUTH_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_03 "CAN_DET_CONFID_AZIMUTH_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_03 "CAN_DET_SUPER_RES_TARGET_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_03 "CAN_DET_ND_TARGET_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_03 "CAN_DET_HOST_VEH_CLUTTER_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_03 "CAN_DET_VALID_LEVEL_02_03"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_03 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_03 "CAN_DET_AZIMUTH_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_03 "CAN_DET_RANGE_02_03"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_03 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_03 "CAN_DET_RANGE_RATE_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_03 "CAN_DET_AMPLITUDE_02_03"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_03 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_03 "CAN_SCAN_INDEX_2LSB_02_03"; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 "CAN_DET_CONFID_AZIMUTH_02_04"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 "CAN_DET_CONFID_AZIMUTH_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_04 "CAN_DET_CONFID_AZIMUTH_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_04 "CAN_DET_SUPER_RES_TARGET_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_04 "CAN_DET_ND_TARGET_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_04 "CAN_DET_HOST_VEH_CLUTTER_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_04 "CAN_DET_VALID_LEVEL_02_04"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_04 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_04 "CAN_DET_AZIMUTH_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_04 "CAN_DET_RANGE_02_04"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_04 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_04 "CAN_DET_RANGE_RATE_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_04 "CAN_DET_AMPLITUDE_02_04"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_04 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_04 "CAN_SCAN_INDEX_2LSB_02_04"; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 "CAN_DET_CONFID_AZIMUTH_02_05"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 "CAN_DET_CONFID_AZIMUTH_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_05 "CAN_DET_CONFID_AZIMUTH_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_05 "CAN_DET_SUPER_RES_TARGET_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_05 "CAN_DET_ND_TARGET_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_05 "CAN_DET_HOST_VEH_CLUTTER_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_05 "CAN_DET_VALID_LEVEL_02_05"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_05 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_05 "CAN_DET_AZIMUTH_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_05 "CAN_DET_RANGE_02_05"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_05 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_05 "CAN_DET_RANGE_RATE_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_05 "CAN_DET_AMPLITUDE_02_05"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_05 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_05 "CAN_SCAN_INDEX_2LSB_02_05"; +BA_ "GenSigVtEn" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 "CAN_DET_CONFID_AZIMUTH_02_06"; +BA_ "GenSigVtName" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 "CAN_DET_CONFID_AZIMUTH_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_CONFID_AZIMUTH_02_06 "CAN_DET_CONFID_AZIMUTH_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_SUPER_RES_TARGET_02_06 "CAN_DET_SUPER_RES_TARGET_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_ND_TARGET_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_ND_TARGET_02_06 "CAN_DET_ND_TARGET_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_HOST_VEH_CLUTTER_02_06 "CAN_DET_HOST_VEH_CLUTTER_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_VALID_LEVEL_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_VALID_LEVEL_02_06 "CAN_DET_VALID_LEVEL_02_06"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_AZIMUTH_02_06 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AZIMUTH_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AZIMUTH_02_06 "CAN_DET_AZIMUTH_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_02_06 "CAN_DET_RANGE_02_06"; +BA_ "GenSigStartValue" SG_ 289 CAN_DET_RANGE_RATE_02_06 0; +BA_ "GenSigSendType" SG_ 289 CAN_DET_RANGE_RATE_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_RANGE_RATE_02_06 "CAN_DET_RANGE_RATE_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_DET_AMPLITUDE_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_DET_AMPLITUDE_02_06 "CAN_DET_AMPLITUDE_02_06"; +BA_ "GenSigSendType" SG_ 289 CAN_SCAN_INDEX_2LSB_02_06 0; +BA_ "GenSigCmt" SG_ 289 CAN_SCAN_INDEX_2LSB_02_06 "CAN_SCAN_INDEX_2LSB_02_06"; +BA_ "GenMsgSendType" BO_ 256 1; +BA_ "GenMsgILSupport" BO_ 256 1; +BA_ "GenMsgNrOfRepetition" BO_ 256 0; +BA_ "NetworkInitialization" BO_ 256 0; +BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MINOR_MRR "CAN_PCAN_MINOR_MRR"; +BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MINOR_MRR 0; +BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MAJOR_MRR "CAN_PCAN_MAJOR_MRR"; +BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MAJOR_MRR 0; +BA_ "GenMsgCycleTime" BO_ 257 30; +BA_ "GenMsgSendType" BO_ 257 0; +BA_ "GenMsgILSupport" BO_ 257 1; +BA_ "GenMsgNrOfRepetition" BO_ 257 0; +BA_ "NetworkInitialization" BO_ 257 0; +BA_ "GenSigCmt" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtEn" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtName" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtName" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigCmt" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigStartValue" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE 0; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_MNR 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_EXT_COND_NOK 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_NOT_START 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_OVERHEAT_ERROR 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_NOT_OP 0; +BA_ "GenSigCmt" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigVtEn" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigVtName" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigSendType" SG_ 257 CAN_XCVR_OPERATIONAL 0; +BA_ "GenMsgSendType" BO_ 288 1; +BA_ "GenMsgILSupport" BO_ 288 1; +BA_ "GenMsgNrOfRepetition" BO_ 288 0; +BA_ "GenMsgCycleTime" BO_ 288 0; +BA_ "NetworkInitialization" BO_ 288 0; +BA_ "GenMsgDelayTime" BO_ 288 0; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 "CAN_DET_CONFID_AZIMUTH_01_01"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 "CAN_DET_CONFID_AZIMUTH_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_01 "CAN_DET_CONFID_AZIMUTH_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_01 "CAN_DET_SUPER_RES_TARGET_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_01 "CAN_DET_ND_TARGET_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_01 "CAN_DET_HOST_VEH_CLUTTER_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_01 "CAN_DET_VALID_LEVEL_01_01"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_01 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_01 "CAN_DET_AZIMUTH_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_01 "CAN_DET_RANGE_01_01"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_01 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_01 "CAN_DET_RANGE_RATE_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_01 "CAN_DET_AMPLITUDE_01_01"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_01 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_01 "CAN_SCAN_INDEX_2LSB_01_01"; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 "CAN_DET_CONFID_AZIMUTH_01_02"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 "CAN_DET_CONFID_AZIMUTH_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_02 "CAN_DET_CONFID_AZIMUTH_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_02 "CAN_DET_SUPER_RES_TARGET_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_02 "CAN_DET_ND_TARGET_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_02 "CAN_DET_HOST_VEH_CLUTTER_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_02 "CAN_DET_VALID_LEVEL_01_02"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_02 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_02 "CAN_DET_AZIMUTH_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_02 "CAN_DET_RANGE_01_02"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_02 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_02 "CAN_DET_RANGE_RATE_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_02 "CAN_DET_AMPLITUDE_01_02"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_02 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_02 "CAN_SCAN_INDEX_2LSB_01_02"; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 "CAN_DET_CONFID_AZIMUTH_01_03"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 "CAN_DET_CONFID_AZIMUTH_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_03 "CAN_DET_CONFID_AZIMUTH_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_03 "CAN_DET_SUPER_RES_TARGET_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_03 "CAN_DET_ND_TARGET_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_03 "CAN_DET_HOST_VEH_CLUTTER_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_03 "CAN_DET_VALID_LEVEL_01_03"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_03 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_03 "CAN_DET_AZIMUTH_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_03 "CAN_DET_RANGE_01_03"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_03 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_03 "CAN_DET_RANGE_RATE_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_03 "CAN_DET_AMPLITUDE_01_03"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_03 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_03 "CAN_SCAN_INDEX_2LSB_01_03"; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 "CAN_DET_CONFID_AZIMUTH_01_04"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 "CAN_DET_CONFID_AZIMUTH_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_04 "CAN_DET_CONFID_AZIMUTH_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_04 "CAN_DET_SUPER_RES_TARGET_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_04 "CAN_DET_ND_TARGET_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_04 "CAN_DET_HOST_VEH_CLUTTER_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_04 "CAN_DET_VALID_LEVEL_01_04"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_04 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_04 "CAN_DET_AZIMUTH_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_04 "CAN_DET_RANGE_01_04"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_04 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_04 "CAN_DET_RANGE_RATE_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_04 "CAN_DET_AMPLITUDE_01_04"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_04 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_04 "CAN_SCAN_INDEX_2LSB_01_04"; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 "CAN_DET_CONFID_AZIMUTH_01_05"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 "CAN_DET_CONFID_AZIMUTH_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_05 "CAN_DET_CONFID_AZIMUTH_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_05 "CAN_DET_SUPER_RES_TARGET_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_05 "CAN_DET_ND_TARGET_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_05 "CAN_DET_HOST_VEH_CLUTTER_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_05 "CAN_DET_VALID_LEVEL_01_05"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_05 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_05 "CAN_DET_AZIMUTH_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_05 "CAN_DET_RANGE_01_05"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_05 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_05 "CAN_DET_RANGE_RATE_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_05 "CAN_DET_AMPLITUDE_01_05"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_05 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_05 "CAN_SCAN_INDEX_2LSB_01_05"; +BA_ "GenSigVtEn" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 "CAN_DET_CONFID_AZIMUTH_01_06"; +BA_ "GenSigVtName" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 "CAN_DET_CONFID_AZIMUTH_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_CONFID_AZIMUTH_01_06 "CAN_DET_CONFID_AZIMUTH_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_SUPER_RES_TARGET_01_06 "CAN_DET_SUPER_RES_TARGET_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_ND_TARGET_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_ND_TARGET_01_06 "CAN_DET_ND_TARGET_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_HOST_VEH_CLUTTER_01_06 "CAN_DET_HOST_VEH_CLUTTER_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_VALID_LEVEL_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_VALID_LEVEL_01_06 "CAN_DET_VALID_LEVEL_01_06"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_AZIMUTH_01_06 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AZIMUTH_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AZIMUTH_01_06 "CAN_DET_AZIMUTH_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_01_06 "CAN_DET_RANGE_01_06"; +BA_ "GenSigStartValue" SG_ 288 CAN_DET_RANGE_RATE_01_06 0; +BA_ "GenSigSendType" SG_ 288 CAN_DET_RANGE_RATE_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_RANGE_RATE_01_06 "CAN_DET_RANGE_RATE_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_DET_AMPLITUDE_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_DET_AMPLITUDE_01_06 "CAN_DET_AMPLITUDE_01_06"; +BA_ "GenSigSendType" SG_ 288 CAN_SCAN_INDEX_2LSB_01_06 0; +BA_ "GenSigCmt" SG_ 288 CAN_SCAN_INDEX_2LSB_01_06 "CAN_SCAN_INDEX_2LSB_01_06"; +BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; +BA_DEF_DEF_ "CrossOver_LIN" "No"; +BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; +BA_DEF_DEF_ "ContentDependant" "No"; +BA_DEF_DEF_ "GenSigTimeoutTime_RCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_OCS" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_CCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_IPMA" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_SCCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_Generic_BCM" 0; +BA_DEF_DEF_ "NmMessage" "No"; +BA_DEF_DEF_ "DiagResponse" "No"; +BA_DEF_DEF_ "DiagRequest" "No"; +BA_DEF_DEF_ "TpTxIndex" 0; +BA_DEF_DEF_ "DiagState" "No"; +BA_DEF_DEF_ "TpApplType" ""; +BA_DEF_DEF_ "NmAsrMessage" "No"; +BA_DEF_DEF_ "Mulitplexer" "No"; +BA_DEF_DEF_ "ConfiguredTransmitter" "No"; +BA_DEF_DEF_ "EventRateOfChange" 10000; +BA_DEF_DEF_ "GenMsgHandlingTypeDoc" ""; +BA_DEF_DEF_ "GenMsgHandlingTypeCode" ""; +BA_DEF_DEF_ "GenMsgMarked" ""; +BA_DEF_DEF_ "GenSigMarked" ""; +BA_DEF_DEF_ "GenSigVtIndex" ""; +BA_DEF_DEF_ "GenSigVtName" ""; +BA_DEF_DEF_ "GenSigVtEn" ""; +BA_DEF_DEF_ "GenSigSNA" ""; +BA_DEF_DEF_ "GenSigCmt" ""; +BA_DEF_DEF_ "GenMsgCmt" ""; +BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; +BA_DEF_DEF_ "GenSigInactiveValue" 0; +BA_DEF_DEF_ "GenSigMissingSourceValue" 0; +BA_DEF_DEF_ "WakeupSignal" "No"; +BA_DEF_DEF_ "GenSigStartValue" 0; +BA_DEF_DEF_ "GenMsgILSupport" "Yes"; +BA_DEF_DEF_ "NetworkInitializationCommand" "No"; +BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; +BA_DEF_DEF_ "GenMsgCycleTime" 0; +BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; +BA_DEF_DEF_ "GenMsgDelayTime" 0; +BA_DEF_DEF_ "GenMsgNrOfRepetition" 0; +BA_DEF_DEF_ "GenMsgStartDelayTime" 0; +BA_DEF_DEF_ "NetworkInitialization" "No"; +BA_DEF_DEF_ "MessageGateway" "No"; +BA_DEF_DEF_ "ILUsed" "Yes"; +BA_DEF_DEF_ "NetworkInitializationUsed" "No"; +BA_DEF_DEF_ "PowerType" "Switched"; +BA_DEF_DEF_ "NodeStartUpTime" 250; +BA_DEF_DEF_ "NodeWakeUpTime" 10; +BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; +BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; +VAL_ 34 IPMA_PCAN_DataRangeCheck 1 "Fault Present" 0 "No Fault"; +VAL_ 34 IPMA_PCAN_MissingMsg 1 "Fault Present" 0 "No Fault "; +VAL_ 34 VINSignalCompareFailure 1 "Fault Present" 0 "No Fault"; +VAL_ 34 ModuleNotConfiguredError 1 "Fault Present" 0 "No Fault"; +VAL_ 34 CarCfgNotConfiguredError 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ARMtoDSPChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 DSPtoArmChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 HostToArmChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ARMtoHostChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 LoopBWOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 DSPOverrunFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte6_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TuningSensitivityFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 SaturatedTuningFreqFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 LocalOscPowerFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterPowerFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte6_bit0 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 XCVRDeviceSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 FreqSynthesizerSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 AnalogConverterDevicSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 SidelobeBlockage 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit1 1 "Fault Present" 0 "No Fault"; +VAL_ 33 MNRBlocked 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ECUTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 AlignmentRoutineFailedFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 UnreasonableRadarData 1 "Fault Present" 0 "No Fault"; +VAL_ 33 MicroprocessorTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 VerticalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 HorizontalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 FactoryAlignmentMode 1 "Fault Present" 0 "No Fault"; +VAL_ 33 BatteryLowFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 BatteryHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_1p25SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte3_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ThermistorOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_3p3DACSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_3p3RAWSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_5_SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterIDFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit3 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit2 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PCANMissingMsgFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PCANBusOff 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 InstructionSetCheckFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 StackOverflowFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 WatchdogFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PLLLockFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit1 1 "Fault Present" 0 "No Fault"; +VAL_ 33 RAMMemoryTestFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 USCValidationFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit3 1 "Fault Present" 0 "No Fault"; +VAL_ 33 KeepAliveChecksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ProgramCalibrationFlashChecksum 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ApplicationFlashChecksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 371 CAN_AUTO_ALIGN_HANGLE_QF 3 "Accurate" 2 "Inaccurate" 1 "Temporarily undefined" 0 "Undefined"; +VAL_ 371 CAN_ALIGNMENT_STATUS 15 "Undefined_2" 14 "Undefined_1" 13 "Low Amplitude (Flat-plate only)" 12 "No Peak (Flat-plate only)" 11 "Fail Ver and Hor OutOfRange" 10 "Fail Vertical Align OutOfRange" 9 "Fail Horizontal Align OutOfRange" 8 "Fail Time Out" 7 "Fail Only Right Target Found" 6 "Fail Only Left Target Found" 5 "Fail Variance Too Large" 4 "Fail Deviation Too Large" 3 "Fail No Target" 2 "Success" 1 "Busy" 0 "Off"; +VAL_ 371 CAN_ALIGNMENT_STATE 6 "Static alignment flat-plate" 5 "Static alignment 2-target" 4 "Static alignment 1-target" 3 "Service alignment" 2 "Short track alignment" 1 "Auto alignment" 0 "Off"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 291 CAN_DET_CONFID_AZIMUTH_04_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 351 CAN_DET_CONFID_AZIMUTH_64 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 350 CAN_DET_CONFID_AZIMUTH_63 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 349 CAN_DET_CONFID_AZIMUTH_62 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 348 CAN_DET_CONFID_AZIMUTH_61 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 347 CAN_DET_CONFID_AZIMUTH_60 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 346 CAN_DET_CONFID_AZIMUTH_59 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 345 CAN_DET_CONFID_AZIMUTH_58 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 344 CAN_DET_CONFID_AZIMUTH_57 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 343 CAN_DET_CONFID_AZIMUTH_56 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 342 CAN_DET_CONFID_AZIMUTH_55 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 335 CAN_DET_CONFID_AZIMUTH_48 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 334 CAN_DET_CONFID_AZIMUTH_47 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 333 CAN_DET_CONFID_AZIMUTH_46 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 332 CAN_DET_CONFID_AZIMUTH_45 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 331 CAN_DET_CONFID_AZIMUTH_44 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 330 CAN_DET_CONFID_AZIMUTH_43 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 329 CAN_DET_CONFID_AZIMUTH_42 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 328 CAN_DET_CONFID_AZIMUTH_41 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 327 CAN_DET_CONFID_AZIMUTH_40 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 325 CAN_DET_CONFID_AZIMUTH_38 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 324 CAN_DET_CONFID_AZIMUTH_37 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 323 CAN_DET_CONFID_AZIMUTH_36 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 322 CAN_DET_CONFID_AZIMUTH_35 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 321 CAN_DET_CONFID_AZIMUTH_34 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 320 CAN_DET_CONFID_AZIMUTH_33 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 319 CAN_DET_CONFID_AZIMUTH_32 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 318 CAN_DET_CONFID_AZIMUTH_31 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 317 CAN_DET_CONFID_AZIMUTH_30 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 316 CAN_DET_CONFID_AZIMUTH_29 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 314 CAN_DET_CONFID_AZIMUTH_27 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 313 CAN_DET_CONFID_AZIMUTH_26 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 312 CAN_DET_CONFID_AZIMUTH_25 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 311 CAN_DET_CONFID_AZIMUTH_24 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 310 CAN_DET_CONFID_AZIMUTH_23 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 309 CAN_DET_CONFID_AZIMUTH_22_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 309 CAN_DET_CONFID_AZIMUTH_22_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 309 CAN_DET_CONFID_AZIMUTH_22_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 308 CAN_DET_CONFID_AZIMUTH_21_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 307 CAN_DET_CONFID_AZIMUTH_20_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 306 CAN_DET_CONFID_AZIMUTH_19_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 305 CAN_DET_CONFID_AZIMUTH_18_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 341 CAN_DET_CONFID_AZIMUTH_54 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 340 CAN_DET_CONFID_AZIMUTH_53 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 339 CAN_DET_CONFID_AZIMUTH_52 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 338 CAN_DET_CONFID_AZIMUTH_51 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 337 CAN_DET_CONFID_AZIMUTH_50 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 336 CAN_DET_CONFID_AZIMUTH_49 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 326 CAN_DET_CONFID_AZIMUTH_39 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 315 CAN_DET_CONFID_AZIMUTH_28 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 304 CAN_DET_CONFID_AZIMUTH_17_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 303 CAN_DET_CONFID_AZIMUTH_16_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 302 CAN_DET_CONFID_AZIMUTH_15_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 301 CAN_DET_CONFID_AZIMUTH_14_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 300 CAN_DET_CONFID_AZIMUTH_13_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 299 CAN_DET_CONFID_AZIMUTH_12_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 298 CAN_DET_CONFID_AZIMUTH_11_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 297 CAN_DET_CONFID_AZIMUTH_10_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 296 CAN_DET_CONFID_AZIMUTH_09_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 295 CAN_DET_CONFID_AZIMUTH_08_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 294 CAN_DET_CONFID_AZIMUTH_07_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 293 CAN_DET_CONFID_AZIMUTH_06_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 292 CAN_DET_CONFID_AZIMUTH_05_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 290 CAN_DET_CONFID_AZIMUTH_03_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 289 CAN_DET_CONFID_AZIMUTH_02_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 257 CAN_INTERFERENCE_TYPE 2 "Star PD-Like" 1 "Slow FMCW" 0 "No Interference"; +VAL_ 257 CAN_RECOMMEND_UNCONVERGE 1 "Recommended" 0 "Not Recommended"; +VAL_ 257 CAN_RADAR_ALIGN_INCOMPLETE 1 "Alignment Incomplete" 0 "Alignment Completed"; +VAL_ 257 CAN_BLOCKAGE_SIDELOBE 1 "Radar Blockage" 0 "No Radar Blockage"; +VAL_ 257 CAN_BLOCKAGE_MNR 1 "Radar Blockage" 0 "No Radar Blockage"; +VAL_ 257 CAN_RADAR_EXT_COND_NOK 1 "Too high temp or insufficient pw" 0 "External conditions OK"; +VAL_ 257 CAN_RADAR_ALIGN_OUT_RANGE 1 "Radar out of range" 0 "Radar within range"; +VAL_ 257 CAN_RADAR_ALIGN_NOT_START 1 "Radar align not started" 0 "Radar align started"; +VAL_ 257 CAN_RADAR_OVERHEAT_ERROR 1 "Radar overheat condition" 0 "No Overheat"; +VAL_ 257 CAN_RADAR_NOT_OP 1 "Radar not operational" 0 "Radar operational"; +VAL_ 257 CAN_XCVR_OPERATIONAL 1 "On" 0 "Off "; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 288 CAN_DET_CONFID_AZIMUTH_01_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; diff --git a/opendbc_repo/opendbc/dbc/README.md b/opendbc_repo/opendbc/dbc/README.md new file mode 100644 index 0000000000..20e31a9034 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/README.md @@ -0,0 +1,49 @@ +## DBC file basics + +A DBC file encodes, in a humanly readable way, the information needed to understand a vehicle's CAN bus traffic. A vehicle might have multiple CAN buses and every CAN bus is represented by its own dbc file. +Wondering what's the DBC file format? [Here](http://www.socialledge.com/sjsu/index.php?title=DBC_Format) and [Here](https://github.com/stefanhoelzl/CANpy/blob/master/docs/DBC_Specification.md) a couple of good overviews. + +## How to start reverse engineering cars + +[opendbc](https://github.com/commaai/opendbc) is integrated with [cabana](https://github.com/commaai/openpilot/tree/master/tools/cabana). + +Use [panda](https://github.com/commaai/panda) to connect your car to a computer. + +## How to use reverse engineered DBC +To create custom CAN simulations or send reverse engineered signals back to the car you can use [CANdevStudio](https://github.com/GENIVI/CANdevStudio) project. + +## DBC file preprocessor + +DBC files for different models of the same brand have a lot of overlap. Therefore, we wrote a preprocessor to create DBC files from a brand DBC file and a model specific DBC file. The source DBC files can be found in the generator folder. After changing one of the files run the generator.py script to regenerate the output files. These output files will be placed in the root of the opendbc repository and are suffixed by _generated. + +## Good practices for contributing to opendbc + +- Comments: the best way to store comments is to add them directly to the DBC files. For example: + ``` + CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping"; + ``` + is a comment that refers to signal `LONG_ACCEL` in message `490`. Using comments is highly recommended, especially for doubts and uncertainties. [cabana](https://community.comma.ai/cabana/) can easily display/add/edit comments to signals and messages. + +- Units: when applicable, it's recommended to convert signals into physical units, by using a proper signal factor. Using a SI unit is preferred, unless a non-SI unit rounds the signal factor much better. +For example: + ``` + SG_ VEHICLE_SPEED : 7|15@0+ (0.00278,0) [0|70] "m/s" PCM + ``` + is better than: + ``` + SG_ VEHICLE_SPEED : 7|15@0+ (0.00620,0) [0|115] "mph" PCM + ``` + However, the cleanest option is really: + ``` + SG_ VEHICLE_SPEED : 7|15@0+ (0.01,0) [0|250] "kph" PCM + ``` + +- Signal size: always use the smallest amount of bits possible. For example, let's say I'm reverse engineering the gas pedal position and I've determined that it's in a 3 bytes message. For 0% pedal position I read a message value of `0x00 0x00 0x00`, while for 100% of pedal position I read `0x64 0x00 0x00`: clearly, the gas pedal position is within the first byte of the message and I might be tempted to define the signal `GAS_POS` as: + ``` + SG_ GAS_POS : 7|8@0+ (1,0) [0|100] "%" PCM + ``` + However, I can't be sure that the very first bit of the message is referred to the pedal position: I haven't seen it changing! Therefore, a safer way of defining the signal is: + ``` + SG_ GAS_POS : 6|7@0+ (1,0) [0|100] "%" PCM + ``` + which leaves the first bit unallocated. This prevents from very erroneous reading of the gas pedal position, in case the first bit is indeed used for something else. diff --git a/opendbc_repo/opendbc/dbc/SConscript b/opendbc_repo/opendbc/dbc/SConscript new file mode 100644 index 0000000000..9a92912074 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/SConscript @@ -0,0 +1,30 @@ +Import("env") + +from pathlib import Path + +generator = File("generator/generator.py") + +source_files = [ + File(str(f)) + for f in Path("generator").rglob("*") + if f.is_file() and f.suffix in {".py", ".dbc"} +] + +output_files = [ + f.name.replace(".dbc", "_generated.dbc") + for f in Path("generator").rglob("*.dbc") + if not f.name.startswith("_") +] + +# include DBCs generated by python scripts +output_files += [ + f.name.replace(".py", "_generated.dbc") + for f in Path("generator").rglob("*.py") + if not f.name.startswith(("_", "test_")) and f.name != "generator.py" +] + +generated = env.Command( + target=list(set(output_files)), + source=[generator] + source_files, + action="python3 ${SOURCES[0]}", +) diff --git a/opendbc_repo/opendbc/dbc/__init__.py b/opendbc_repo/opendbc/dbc/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc b/opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc new file mode 100644 index 0000000000..e73fcc4221 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/acura_ilx_2016_nidec.dbc @@ -0,0 +1,185 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: ADAS RADAR NEO XXX + + +BO_ 768 VEHICLE_STATE: 8 ADAS + SG_ SET_ME_XF9 : 7|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ VEHICLE_SPEED : 15|8@0+ (1,0) [0|255] "kph" Vector__XXX + +BO_ 769 VEHICLE_STATE2: 8 ADAS + SG_ SET_ME_0F18510 : 7|28@0+ (1,0) [0|268435455] "" Vector__XXX + SG_ SET_ME_25A0000 : 27|28@0+ (1,0) [0|268435455] "" Vector__XXX + +BO_ 1024 RADAR_DIAGNOSTIC: 8 RADAR + SG_ RADAR_STATE : 7|8@0+ (1,0) [0|255] "" NEO + +BO_ 1040 XXX_101: 8 RADAR + +BO_ 1041 XXX_102: 8 RADAR + +BO_ 1042 XXX_103: 8 RADAR + +BO_ 1043 XXX_104: 8 RADAR + +BO_ 1044 XXX_105: 8 RADAR + +BO_ 1045 XXX_106: 8 RADAR + +BO_ 1046 XXX_107: 8 RADAR + +BO_ 1047 XXX_108: 8 RADAR + +BO_ 1056 XXX_109: 8 RADAR + +BO_ 1057 XXX_110: 8 RADAR + +BO_ 1058 XXX_111: 8 RADAR + +BO_ 1059 XXX_112: 8 RADAR + +BO_ 1060 XXX_113: 8 RADAR + +BO_ 1072 TRACK_0: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1073 TRACK_1: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1074 TRACK_2: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1075 TRACK_3: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1076 TRACK_4: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1077 TRACK_5: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1078 TRACK_6: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1079 TRACK_7: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1080 TRACK_8: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1081 TRACK_9: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1088 TRACK_10: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1089 TRACK_11: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1090 TRACK_12: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1091 TRACK_13: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1092 TRACK_14: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1093 TRACK_15: 8 RADAR + SG_ LONG_DIST : 7|12@0+ (0.0625,0) [0|255.5] "m" NEO + SG_ NEW_TRACK : 11|1@0+ (1,0) [0|1] "" NEO + SG_ LAT_DIST : 9|10@0- (0.0625,0) [0|63.5] "m" NEO + SG_ REL_SPEED : 31|12@0- (0.03125,0) [0|127.5] "m/s" NEO + +BO_ 1279 XXX_114: 8 RADAR + +BO_ 1280 XXX_115: 8 RADAR + +BO_ 1296 XXX_116: 8 RADAR + +BO_ 1297 XXX_117: 8 RADAR + +BO_TX_BU_ 768 : NEO,ADAS; +BO_TX_BU_ 769 : NEO,ADAS; + + +CM_ SG_ 1024 RADAR_STATE "need to find out more diagnostic values"; +VAL_ 1024 RADAR_STATE 121 "ok" 110 "faulted" 105 "wrong_config"; diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc new file mode 100644 index 0000000000..b891250554 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -0,0 +1,916 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: EON XXX RDC SZL VGSG JBBF RFK FLA RAD1 CAS CID AHM HKL HUD EKP DWA DSC SM_BF GWS VDM DDE1 ACI CCC DSC SM_FA CTM LDM RSE MRSZ VDA EDCK ZBE EGS ACC_Sensor Kombi IHKA ARS ACSM FZD PGS NVC AFS DME FRMFA EMF FKA VSW EPS PDC DKG EHC Diagnosetool_PT_CAN Diagnosetool_K_CAN_System Vector__XXX + + +BO_ 170 AccPedal: 8 DME + SG_ KickDownPressed : 53|1@0+ (1,0) [0|3] "" XXX + SG_ CruisePedalActive : 54|1@0+ (1,0) [0|1] "" XXX + SG_ CruisePedalInactive : 55|1@0+ (1,0) [0|1] "" XXX + SG_ ThrottlelPressed : 50|1@0+ (1,0) [0|1] "" XXX + SG_ AcceleratorPedalPressed : 52|1@0+ (1,0) [0|7] "" XXX + SG_ AcceleratorPedalPercentage : 16|16@1+ (0.04,0) [0|100] "" XXX + SG_ Counter_170 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EngineSpeed : 32|16@1+ (0.25,0) [0|8000] "rpm" XXX + SG_ Checksum_170 : 0|8@1- (1,0) [0|65535] "" XXX + +BO_ 256 OpenpilotEngage: 8 XXX + SG_ OpenpilotEnabled : 0|8@1+ (1,0) [0|255] "" EON + +BO_ 404 CruiseControl: 4 SZL + SG_ plus1mph_request : 16|1@0+ (1,0) [0|1] "" XXX + SG_ minus1mph_request : 18|1@0+ (1,0) [0|1] "" XXX + SG_ Cancel_request_up_stalk : 23|1@0+ (1,0) [0|1] "" XXX + SG_ Cancel_request_up_or_down_stalk : 20|1@0+ (1,0) [0|1] "" XXX + SG_ Resume_request : 22|1@0+ (1,0) [0|1] "" XXX + SG_ setMe_0xFC : 31|8@0+ (1,0) [0|255] "" XXX + SG_ plus5mph_request : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ minus5mph_request : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ requests_0xF : 15|4@0+ (1,0) [0|15] "" XXX + SG_ Counter_404 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ Checksum_404 : 7|8@0+ (1,0) [0|15] "" XXX + +BO_ 512 CruiseControlStatus: 8 DME + SG_ CruiseControlInactiveFlag : 12|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseCoontrolActiveFlag : 13|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseControlSetpointSpeed : 7|8@0+ (0.25,0) [0|255] "mph" XXX + +BO_ 168 EngineAndBrake: 8 DME + SG_ Checksum_EngineAndBrake : 0|8@1+ (1,0) [0|0] "" XXX + SG_ BrakePressed : 61|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_active2 : 62|1@0+ (1,0) [0|1] "" XXX + SG_ ST_RCPT_ENG_DSC : 52|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_ARS : 50|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_ACC : 48|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_EGS : 54|2@1+ (1,0) [0|0] "" XXX + SG_ ST_DMEA_SWO : 44|2@1+ (1,0) [0|0] "" XXX + SG_ EngineTorque : 12|12@1- (0.03125,0) [-1024|1023] "" XXX + SG_ ALIV_TORQ_1_DME : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EngineTorqueWoInterv : 24|16@1- (0.03125,0) [-1024|1023.96875] "" XXX + +BO_ 470 SteeringButtons: 2 SZL + SG_ Volume_DOWN : 2|1@0+ (1,0) [0|1] "" XXX + SG_ Volume_UP : 3|1@0+ (1,0) [0|1] "" XXX + SG_ VoiceControl : 8|1@0+ (1,0) [0|1] "" XXX + SG_ Telephone : 0|1@0+ (1,0) [0|1] "" XXX + SG_ Next_up : 5|1@0+ (1,0) [0|1] "" XXX + SG_ Previous_down : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 403 DynamicCruiseControlStatus: 8 DSC + SG_ Counter_403 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ CruiseActive : 43|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseSpeedChangeRequest : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseControlSetpointSpeed : 15|8@0+ (1,-2) [0|255] "kph/mph" XXX + +BO_ 201 SteeringWheelAngle_DSC: 8 SZL + SG_ Counter_201 : 20|4@1+ (1,0) [0|15] "" DSC + SG_ SteeringPositionComplementLow : 24|11@1- (1,0) [0|1] "" DSC + SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "deg" DSC + +BO_ 206 WheelSpeeds: 8 DSC + SG_ Wheel_FL : 0|16@1- (0.0625,0) [0|255] "kph" XXX + SG_ Wheel_FR : 16|16@1- (0.0625,0) [0|255] "kph" XXX + SG_ Wheel_RL : 32|16@1- (0.0625,0) [0|255] "kph" XXX + SG_ Wheel_RR : 48|16@1- (0.0625,0) [0|255] "kph" XXX + +BO_ 884 WheelToleranceAdjustment: 8 DSC + +BO_ 678 WiperSwitch: 8 SZL + SG_ AutoWipersOn : 0|1@1+ (1,0) [0|3] "" XXX + +BO_ 304 TerminalStatus: 8 CAS + SG_ AccOn : 23|1@1+ (1,0) [0|255] "" XXX + SG_ IgnitionOff : 22|1@1+ (1,0) [0|3] "" XXX + SG_ Counter_304 : 32|4@1+ (1,0) [0|15] "" XXX + SG_ Checksum_304 : 36|4@1+ (1,0) [0|255] "" XXX + +BO_ 169 Torque2: 8 DME + SG_ TORQ_AVL_SPAR_POS : 52|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ TORQ_AVL_SPAR_NEG : 40|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ TORQ_AVL_MAX : 28|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ TORQ_AVL_MIN : 16|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ ST_INFS : 14|2@1+ (1,0) [0|0] "" XXX + SG_ ST_SW_LEV_RPM : 12|2@1+ (1,0) [0|0] "" XXX + SG_ ALIV_TORQ_2_DME : 8|4@1+ (1,0) [0|0] "" XXX + SG_ CHKSM_TORQ_2_DME : 0|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 184 TorqueTransmisionRequest: 8 LDM + SG_ Checksum_184 : 0|8@1+ (1,0) [0|15] "" XXX + SG_ Counter_184 : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 196 SteeringWheelAngle: 7 DSC + SG_ SteeringSpeed : 24|16@1- (0.0428316886,0) [0|255] "degree/s" XXX + SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "degree" XXX + +BO_ 180 WheelTorqueDriveTrain1: 8 DME + +BO_ 182 DynamicCruiseControlTorqueDemand: 8 DSC + SG_ TORQ_TAR_DSC : 12|12@1- (0.5,0) [0|1000] "" XXX + SG_ Counter_182 : 8|4@1+ (1,0) [0|14] "" XXX + SG_ Checksum_182 : 0|8@1+ (1,0) [0|15] "" XXX + +BO_ 186 TransmissionData: 8 EGS + SG_ Counter_186 : 48|4@1+ (1,0) [0|14] "" XXX + SG_ Shifting : 4|1@1+ (1,0) [0|15] "" XXX + SG_ OutputShaftSpeed : 24|16@1- (0.125,0) [0|255] "rpm" XXX + SG_ GearRatio : 8|8@1+ (0.05,0) [0|255] "" XXX + SG_ GearTar : 0|4@1+ (1,-4) [0|255] "" XXX + SG_ Checksum_186 : 40|8@1+ (1,0) [0|15] "" XXX + +BO_ 191 RequestedWheelTorqueDriveTrain: 8 LDM + SG_ Checksum_191 : 0|8@1+ (1,0) [0|19] "" XXX + SG_ Counter_191 : 8|4@1- (1,0) [0|255] "" XXX + SG_ TorqueReq : 16|12@1- (0.5,350) [-1024|1023.96875] "" XXX + +BO_ 414 StatusDSC_KCAN: 8 DSC + SG_ BrakePressure : 48|8@1- (1,0) [0|255] "" XXX + SG_ BrakeStates : 40|8@1+ (1,0) [0|255] "" XXX + SG_ Checksum_414 : 56|8@1+ (1,0) [0|15] "" XXX + SG_ Counter_414 : 20|4@1+ (1,0) [0|15] "" XXX + SG_ DTC_on : 12|1@1+ (1,0) [0|3] "" XXX + SG_ DSC_full_off : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 416 Speed: 8 DSC + SG_ AccX : 28|12@1- (1,0) [0|15] "" XXX + SG_ YawRate : 40|12@1- (1,0) [0|255] "" XXX + SG_ VehicleSpeed : 0|12@1- (0.103,0) [0|255] "kph" XXX + SG_ MovingReverse : 13|1@1+ (1,0) [0|3] "" XXX + SG_ AccY : 16|12@1- (1,0) [0|255] "" XXX + SG_ Counter_416 : 52|4@1+ (1,0) [0|14] "" XXX + SG_ Checksum_416 : 56|8@1+ (1,0) [0|15] "" XXX + SG_ MovingForward : 12|1@1+ (1,0) [0|15] "" XXX + +BO_ 418 TransimissionData2: 8 EGS + SG_ ManualMode : 50|1@0+ (1,0) [0|255] "" XXX + SG_ Counter_418 : 28|4@1+ (1,0) [0|14] "" XXX + SG_ Checksum_418 : 56|8@1+ (1,0) [0|15] "" XXX + +BO_ 690 WheelPressure_KCAN: 8 DSC + +BO_ 691 AccelerationData: 8 DSC + +BO_ 402 GearSelectorSwitch_1: 4 XXX + SG_ Counter_402 : 24|4@1+ (1,0) [0|14] "" XXX + +BO_ 408 GearSelectorSwitch: 8 GWS + SG_ ParkButtonSecond : 26|2@1+ (1,0) [0|3] "" XXX + SG_ SideButton : 28|2@1+ (1,0) [0|3] "" XXX + SG_ SportButtonPressed : 34|2@1+ (1,0) [0|255] "" XXX + SG_ M3_button : 36|2@1+ (1,0) [0|3] "" XXX + SG_ SideButtonXOR11 : 30|2@1+ (1,0) [0|3] "" XXX + SG_ param1XOR11 : 22|2@1+ (1,0) [0|3] "" XXX + SG_ m3ShifterPositionXOR1111 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ always11 : 38|2@1+ (1,0) [0|3] "" XXX + SG_ m3ShifterPosition : 4|4@1+ (1,0) [0|15] "" XXX + SG_ param1 : 20|2@1+ (1,0) [0|3] "" XXX + SG_ param5 : 32|2@1+ (1,0) [0|3] "" XXX + SG_ Counter_408 : 0|4@1+ (1,0) [0|14] "" XXX + SG_ ParkButtonFirst : 24|2@1+ (1,0) [0|3] "" XXX + SG_ ShifterPositionXOR1111 : 16|4@1+ (1,0) [0|15] "" XXX + SG_ ShifterPosition : 12|4@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 422 DistanceRoute: 8 DSC + +BO_ 436 InstrumentClusterStatus_KOMBI: 8 CCC + SG_ HandbrakeActive : 41|1@1+ (1,0) [0|3] "" XXX + +BO_ 464 EngineData: 8 DME + SG_ RPM_IDLG_TAR : 56|8@1+ (5,0) [0|1270] "1/min" XXX + SG_ CTR_SLCK : 48|2@1+ (1,0) [0|0] "" XXX + SG_ IJV_FU : 32|16@1+ (1,-48) [0|0] "C" XXX + SG_ AIP_ENG : 24|8@1+ (2,598) [600|1106] "hPa" XXX + SG_ ST_SW_WAUP : 22|2@1+ (1,0) [0|0] "" XXX + SG_ ST_ENG_RUN : 20|2@1+ (1,0) [0|0] "" XXX + SG_ Counter_464 : 16|4@1+ (1,0) [0|14] "" XXX + SG_ TEMP_EOI : 8|8@1+ (1,-48) [0|0] "C" XXX + SG_ TEMP_ENG : 0|8@1+ (1,-48) [0|0] "C" XXX + +BO_ 945 TransmissionData3: 8 DKG + SG_ Checksum_946 : 0|8@1+ (1,0) [0|19] "" XXX + SG_ Counter_945 : 8|4@1+ (1,0) [0|14] "" XXX + +BO_ 200 SteeringWheelAngle_slow: 6 SZL + SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "degree" XXX + SG_ SteeringSpeed : 24|16@1- (0.0428316886,0) [-65535|65535] "degree/s" XXX + SG_ Counter_200 : 20|4@1+ (1,0) [0|15] "" XXX + +BO_ 466 TransmissionDataDisplay: 8 EGS + SG_ ShiftLeverMode : 32|2@1+ (1,0) [0|3] "" XXX + SG_ GearAct : 12|4@1+ (1,-4) [0|15] "" XXX + SG_ Counter_466 : 28|4@1+ (1,0) [0|14] "" XXX + SG_ ShiftLeverPosition : 0|4@1+ (1,0) [0|8] "" XXX + SG_ xFF : 40|8@1+ (1,0) [0|255] "" XXX + SG_ ShiftLeverPositionXOR : 4|4@1+ (1,0) [0|0] "" Vector__XXX + SG_ SportButtonState : 26|1@1+ (1,0) [0|1] "" XXX + +BO_ 437 HeatFlow_LoadTorqueClimate: 8 IHKA + +BO_ 1152 NetworkManagment1: 8 XXX + +BO_ 1170 NetworkManagment2: 8 XXX + +BO_ 1175 NetworkManagment3: 8 XXX + +BO_ 1176 NetworkManagment4: 8 XXX + +BO_ 1193 NetworkManagment5: 8 XXX + +BO_ 1246 GWS_ShiftLeverHeartbeat: 8 XXX + SG_ IgnOff : 12|1@0+ (1,0) [0|3] "" XXX + +BO_ 438 HeatFlowEngine: 8 DME + +BO_ 784 AmbientTemperature_RelativeTime: 8 Kombi + +BO_ 821 ElectricFuelPumpStatus: 8 EKP + +BO_ 1007 EngineOBD_data: 8 DME + +BO_ 1432 ServicesDKG: 8 XXX + +BO_ 309 CrashDisconnectControl: 8 ACSM + +BO_ 502 TurnSignals: 2 FRMFA + SG_ TurnSignalIdle : 9|1@0+ (1,0) [0|1] "" XXX + SG_ TurnSignalActive : 8|1@0+ (1,0) [0|1] "" XXX + SG_ RightTurn : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LeftTurn : 4|1@1+ (1,0) [0|1] "" XXX + SG_ HoldActivated : 0|1@1+ (1,0) [0|1] "" XXX + +BO_ 514 Dimming: 8 FRMFA + +BO_ 538 LampStatus: 8 FRMFA + +BO_ 550 RainSensorWiperSpeed: 8 FZD + +BO_ 578 ClimateFrontStatus: 8 IHKA + +BO_ 704 LCD_lighting: 8 Kombi + +BO_ 758 LightControl: 8 FRMFA + +BO_ 760 Time_Date: 8 Kombi + +BO_ 762 OccupancySeatBeltContact: 8 ACSM + SG_ NEW_SIGNAL_1 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 0|8@1+ (1,0) [0|15] "" XXX + +BO_ 764 TrunkStatus: 8 CAS + +BO_ 797 TirePressureStatus: 8 DSC + +BO_ 816 Range_Mileage: 8 Kombi + +BO_ 823 StatusFuelControl: 8 DME + +BO_ 897 EngineOilLevel: 8 DME + +BO_ 940 RunOnTimeTerminal30: 8 JBBF + +BO_ 947 PowerManagmentConsumptionControl: 8 DME + +BO_ 948 PowerBatteryVoltage: 8 DME + SG_ BatteryVoltage : 7|24@0+ (0.001,0) [0|65535] "" XXX + +BO_ 958 PowerRunningTime: 8 CAS + +BO_ 1408 ServicesKGM: 8 XXX + +BO_ 1426 ServicesDME: 8 XXX + +BO_ 1449 ServicesDSC: 8 XXX + +BO_ 1504 ServicesKOMBI: 8 XXX + +BO_ 1522 ServicesKBM: 8 XXX + +BO_ 209 Accelerometer1: 8 XXX + SG_ Counter_209 : 52|4@1+ (1,0) [0|255] "" XXX + SG_ Unknown : 16|16@1- (1,0) [0|65535] "" XXX + SG_ YawRate : 0|16@1- (1,0) [0|7] "" XXX + SG_ PitchRate : 32|16@1- (1,0) [0|65535] "" XXX + SG_ CRC8_209 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 172 WheelTorqueDrivetrain2: 8 DME + +BO_ 128 SYNC: 5 XXX + SG_ State2 : 24|4@1+ (1,0) [0|15] "" XXX + SG_ State1 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Counter_128 : 28|4@1+ (1,0) [0|15] "" XXX + +BO_ 320 Unknown140: 2 XXX + SG_ State : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 212 Unknown_d4: 8 XXX + SG_ State1 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ Counter_212 : 52|4@1+ (1,0) [0|255] "" XXX + SG_ Checksum_212 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 205 Accelerometer2: 8 XXX + SG_ Counter_205 : 52|4@1+ (1,0) [0|255] "" XXX + SG_ LateralAcceleration : 32|16@1- (1,0) [0|255] "" XXX + SG_ YawRate : 0|16@1- (1,0) [0|255] "" XXX + SG_ CRC8_205 : 16|16@1- (1,0) [0|65535] "" XXX + +BO_ 790 OperationPushButtonDTC: 2 JBBF + SG_ setMe_0x3FFF : 2|14@1+ (1,0) [0|63] "" DSC + SG_ DTC_pressed : 0|1@1+ (1,0) [0|3] "" DSC + +BO_ 1577 Unknown_629: 8 XXX + +BO_ 133 Synchronization_SC_VDA: 8 DSC + +BO_ 173 Delay_request_ACC: 8 LDM + +BO_ 177 Torque_request_steering: 8 DSC + +BO_ 181 Torque_request_EGS: 8 EGS + SG_ Checksum_Torque_request_EGS : 0|8@1+ (1,0) [0|0] "" XXX + SG_ Gearbox_temperature : 56|8@1+ (1,0) [0|0] "C" XXX + +BO_ 183 Torque_request_ACC: 8 LDM + +BO_ 187 Target_torque_request: 8 DSC + +BO_ 188 Status_target_torque_conversion: 8 VGSG + +BO_ 190 Alive_Counter: 8 ARS + +BO_ 192 Alive_Central_Gateway: 8 JBBF + +BO_ 193 Alive_counter_telephone: 8 CCC + +BO_ 213 Request_wheel_torque_brake: 8 DSC + +BO_ 215 Alive_Counter_Security: 8 ACSM + +BO_ 216 CLU1_VDA: 8 VDA + +BO_ 225 Wheel_torque_brake: 8 DSC + +BO_ 226 Status_central_locking_BFT: 8 JBBF + +BO_ 227 CLU2_VDA: 8 VDA + +BO_ 230 Status_central_locking_BFTH: 8 JBBF + +BO_ 234 Status_central_locking_FAT: 8 JBBF + +BO_ 238 Central_locking_status_FATH: 8 JBBF + +BO_ 242 Status_central_locking_HK: 8 JBBF + +BO_ 244 CLU3_VDA: 8 VDA + +BO_ 247 lateral_dynamics_ARS_VDM: 8 ARS + +BO_ 249 Vertical_dynamics_VDM_ARS: 8 VDM + +BO_ 250 Control_window_lifter_FAT: 8 FRMFA + +BO_ 251 Control_window_lifter_BFT: 8 JBBF + +BO_ 252 Control_window_lifter_FATH: 8 JBBF + +BO_ 253 Control_window_lifter_BFTH: 8 JBBF + +BO_ 254 Voltage_level_sensors: 8 VDM + +BO_ 280 Exchange_AFS_DSC: 8 AFS + +BO_ 286 Control_interventions_DSC_AFS: 8 DSC + +BO_ 288 Status_partial_setpoints_AFS_DSC_2: 8 AFS + +BO_ 298 Sensor_data_ROSE: 8 ASCM + +BO_ 300 input_data_ROSE: 8 DSC + +BO_ 336 Request_1_ACC: 8 LDM + +BO_ 339 Request_2_ACC: 8 LDM + +BO_ 345 Object_data_ACC: 8 ACC_Sensor + +BO_ 348 Status_ACC: 8 ACC_Sensor + +BO_ 351 Requirement_angle_FFP: 8 LDM + +BO_ 357 CLU_Status_VDA: 8 VDA + +BO_ 370 Acknowledgment_request_Kombination: 8 CCC + +BO_ 373 Display_motor_data: 8 DME + +BO_ 400 display_ACC: 8 LDM + +BO_ 405 Operation_push_button_MSA: 8 IHKA + +BO_ 419 Raw_data_longitudinal_acceleration: 8 DSC + +BO_ 423 actuation_request_EMF: 8 DSC + +BO_ 426 Effect_ErgoCommander: 8 CCC + +BO_ 428 Status_ARS_module: 8 ARS + +BO_ 440 Operation_ErgoCommander: 8 ZBE + +BO_ 450 Distance_message_PDC: 8 PDC + +BO_ 451 Distance_message_2_PDC: 8 PDC + +BO_ 454 Acoustic_message_PDC: 8 PDC + +BO_ 472 Operation_air_conditioning_air_distribution_FA: 8 CCC + +BO_ 473 Operation_pushbutton_MDrive: 8 SZL + +BO_ 474 Climate_control_remote_control: 8 CAS + +BO_ 476 Operation_stratification_seat_heating: 8 CCC + +BO_ 478 Air_conditioning_controls_rear: 8 CCC + +BO_ 480 Operation_air_conditioning_air_distribution_BF: 8 CCC + +BO_ 482 Operation_air_conditioning_front: 8 CCC + +BO_ 483 Operation_pushbutton_interior_lighting: 8 FZD + +BO_ 487 Operation_seat_heating_seat_climate_FA: 8 IHKA + +BO_ 488 Operation_seat_heating_seat_climate_BF: 8 IHKA + +BO_ 490 Steering_column_adjustment_control: 8 IHKA + +BO_ 491 Operation_active_seat_FA: 8 IHKA + +BO_ 492 Operation_active_seat_BF: 8 IHKA + +BO_ 494 Steering_column_switch_operation: 8 FRMFA + +BO_ 499 Operation_seat_memory_FA: 8 XXX + +BO_ 504 Operation_SHD_MDS: 8 FZD + +BO_ 507 Status_EPS: 8 EPS + +BO_ 508 Status_AFS: 8 AFS + +BO_ 509 Status_request_EMF_KCAN: 8 EMF + +BO_ 510 Crash: 8 ACSM + +BO_ 513 Status_EMF_KCAN: 8 EMF + +BO_ 517 Acoustic_request_Kombi: 8 Kombi + +BO_ 518 Control_Display_Shiftlights: 8 DME + +BO_ 523 Memory_adjustment: 8 SM_FA + +BO_ 524 Steering_column_control: 8 SM_FA + +BO_ 525 Position_steering_column: 8 IHKA + +BO_ 528 Operation_HUD: 8 CCC + +BO_ 529 Status_HUD: 8 HUD + +BO_ 530 Height_levels_air_spring: 8 EHC + +BO_ 540 Operation_NightVision: 8 CCC + +BO_ 542 Status_NightVision: 8 NVC + +BO_ 548 Operation_push_button_NSW: 8 FRMFA + +BO_ 552 Operation_special_function: 8 CCC + +BO_ 554 Status_BFS: 8 JBBF + +BO_ 556 Operation_push_button_NSL: 8 FRMFA + +BO_ 558 Status_BFSH: 8 XXX + +BO_ 562 Status_FAS: 8 JBBF + +BO_ 566 Status_FASH: 8 XXX + +BO_ 570 Status_radio_key: 8 CAS + +BO_ 571 Status_climate_front_extended: 8 IHKA + +BO_ 573 Request_display_climate: 8 IHKA + +BO_ 574 Status_Klima_Fond: 8 FKA + +BO_ 582 Status_air_conditioning_front_control_unit: 8 IHKA + +BO_ 584 Status_rear_view_camera: 8 RFK + +BO_ 585 Control_rear_view_camera: 8 CCC + +BO_ 586 Status_PDC: 8 PDC + +BO_ 587 Status_door_sensors: 8 FRMFA + +BO_ 594 Wiper_status: 8 JBBF + +BO_ 598 Challenge_Passive_Access: 8 CAS + +BO_ 600 Status_Transmission_Passive_Access: 8 PGS + +BO_ 604 Operation_of_climate_additional_programs: 8 CCC + +BO_ 621 Operation_blinds_MK: 8 IHKA + +BO_ 622 Control_FH_SHD_central_comfort: 8 CAS + +BO_ 635 Status_Shiftlights: 8 Kombi + +BO_ 637 Status_convertible_top_manual_convertible: 8 CAS + +BO_ 638 Status_convertible_top_convertible: 8 CTM + +BO_ 639 Status_central_locking_convertible_top: 8 JBBF + +BO_ 642 Control_security_vehicle_2: 8 XXX + +BO_ 644 Control_remote_start_safety_vehicle: 8 CAS + +BO_ 646 Electrochromic_control: 8 FZD + +BO_ 652 Pushbutton_vertical_dynamics: 8 GWS + +BO_ 653 Operation_pushbutton_sport: 8 GWS + +BO_ 656 Control_response_hydrogen_vehicle: 8 XXX + +BO_ 658 Control_high_beam_assistant: 8 FLA + +BO_ 670 Central_locking_control_for_security_vehicle: 8 XXX + +BO_ 671 Remote_control_FondCommander: 8 CAS + +BO_ 672 Central_locking_control: 8 CAS + +BO_ 674 Operation_of_climate_stand_functions: 8 CCC + +BO_ 676 Operation_personalization: 8 Kombi + +BO_ 692 DWA_Alarm: 8 DWA + +BO_ 694 Control_horn_DWA: 8 DWA + +BO_ 696 Operation_onboard_computer: 8 CCC + +BO_ 697 Operation_RSE: 8 CCC + +BO_ 698 Stopwatch: 8 Kombi + +BO_ 701 Request_switching_display: 8 CCC + +BO_ 702 Switch_status_display: 8 VSW + +BO_ 703 Water_valve_control: 8 IHKA + +BO_ 706 Temperatur_Ist_Fond: 8 FKA + +BO_ 711 Display_Kombination_extended: 8 DME + +BO_ 714 Outside_temperature: 8 Kombi + +BO_ 716 Control_monitor_rear: 8 RSE + +BO_ 718 Control_monitor: 8 CCC + +BO_ 719 Status_of_auxiliary_water_pump: 8 JBBF + +BO_ 720 Status_Sensor_AUC: 8 JBBF + +BO_ 721 Status_fitting_window_V: 8 FZD + +BO_ 722 Status_pressure_refrigeration_circuit: 8 JBBF + +BO_ 723 Status_stratification_rear: 8 JBBF + +BO_ 725 Status_heating_rear_window: 8 JBBF + +BO_ 726 Status_valve_air_conditioning_compressor: 8 JBBF + +BO_ 730 Status_tailgate_lift: 8 HKL + +BO_ 734 Switch_control_display: 8 VSW + +BO_ 738 Status_setting_video_night_vision: 8 NVC + +BO_ 739 Status_setting_video_rear_view_camera: 8 RFK + +BO_ 740 Status_trailer: 8 AHM + +BO_ 742 Status_of_air_distribution_FA: 8 IHKA + +BO_ 746 Status_air_distribution_BF: 8 IHKA + +BO_ 750 Status_climate_additional_programs: 8 IHKA + +BO_ 752 Status_air_condition_functions: 8 IHKA + +BO_ 753 Status_driver_detection: 8 MRSZ + +BO_ 755 Display_switching_instruction: 8 DME + +BO_ 756 Air_conditioning_control_SH_ZH_auxiliary_water_pump: 8 IHKA + +BO_ 759 Units: 8 Kombi + +BO_ 768 Status_RSE: 8 RSE + +BO_ 772 Status_Gang: 8 EGS + +BO_ 773 Operation_button_convertible_top: 8 IHKA + +BO_ 774 Vehicle_tilt: 8 FRMFA + +BO_ 775 Operation_button_flap_convertible_top: 8 IHKA + +BO_ 776 Status_MSA: 8 DME + +BO_ 785 Refill_quantity: 8 Kombi + +BO_ 786 Service_Call_Teleservice: 8 Kombi + +BO_ 787 Status_Service_Call_Teleservice: 8 CCC + +BO_ 788 Status_driving_light: 8 FZD + +BO_ 789 Vehicle_mode: 8 JBBF + +BO_ 791 Operation_button_parking_aids: 8 IHKA + +BO_ 792 Status_antennas_Passive_Access: 8 PGS + +BO_ 793 Operation_push_button_RDC: 8 JBBF + +BO_ 794 Operation_button_HDC: 8 IHKA + +BO_ 795 Operation_of_tailgate_interior_button: 8 IHKA + +BO_ 796 Status_tire_pressure: 8 RDC + +BO_ 801 Operation_button_camera_BF: 8 IHKA + +BO_ 802 Damper_current: 8 EDCK + +BO_ 806 Status_damper_program: 8 VDM + +BO_ 808 Relativzeit: 8 Kombi + +BO_ 813 Display_HDC: 8 DSC + +BO_ 814 Status_climate_internal_control_info: 8 IHKA + +BO_ 817 Programming_of_step_cruise_control: 8 CCC + +BO_ 818 Driver_display_speed_range: 8 DME + +BO_ 822 Display_check_control_message_role: 8 Kombi + +BO_ 824 Control_display_check_control_message: 8 Kombi + +BO_ 825 Status_display_climate: 8 CCC + +BO_ 826 Status_Monitor_Front: 8 CID + +BO_ 828 Status_Monitor_Fond_1: 8 CID + +BO_ 830 Status_Monitor_Fond_2: 8 CID + +BO_ 841 Raw_data_level_tank: 8 JBBF + +BO_ 843 Seat_back_lock_status_FA: 8 SM_FA + +BO_ 845 Status_seat_back_lock_BF: 8 SM_BF + +BO_ 847 Status_contact_handbrake: 8 JBBF + SG_ Handbrake_push : 0|2@1+ (1,0) [0|3] "" XXX + +BO_ 858 Appointment_Condition_Based_Service: 8 CCC + +BO_ 860 Status_onboard_computer: 8 Kombi + +BO_ 862 Onboard_computer_data_trip_data: 8 Kombi + +BO_ 864 Data_onboard_computer_start_of_journey: 8 Kombi + +BO_ 866 Data_onboard_computer_average_values: 8 Kombi + +BO_ 868 Data_onboard_computer_arrival: 8 Kombi + +BO_ 869 Status_terminal_request: 8 CAS + +BO_ 870 Display_Kombination_external_display: 8 Kombi + +BO_ 871 Control_display_of_demand_oriented_service: 8 Kombi + +BO_ 877 Setting_the_driving_dynamics_switch: 8 JBBF + +BO_ 886 Status_wear_lamella: 8 VGSG + +BO_ 893 Status_DKG: 8 DKG + +BO_ 894 Temperatur_Bremse: 8 DSC + +BO_ 895 Range_of_diesel_exhaust_gas_additive: 8 DDE1 + +BO_ 896 chassis_number: 8 CAS + +BO_ 898 Electronic_engine_oil_dipstick_M: 8 DME + +BO_ 899 Motor_data_2: 8 DME + +BO_ 904 Vehicle_type: 8 CAS + +BO_ 907 Status_battery: 8 DME + +BO_ 910 Start_speed: 8 DME + +BO_ 914 Status_System_AFS: 8 AFS + +BO_ 916 RDA_request_data_storage: 8 Kombi + +BO_ 917 Coding_power_management: 8 CAS + +BO_ 920 Operation_chassis: 8 CCC + +BO_ 921 Status_MDrive: 6 DME + +BO_ 926 Operation_time_date: 8 CCC + +BO_ 928 Vehicle_state: 8 JBBF + +BO_ 931 Request_Remote_Services: 8 CCC + +BO_ 937 Status_motor_control_CKM: 8 DME + +BO_ 939 Status_Shiftlights_CKM: 8 Kombi + +BO_ 944 Status_gear_reverse: 8 FRMFA + +BO_ 949 Status_water_valve: 8 JBBF + +BO_ 950 Position_window_lifter_FAT: 8 FRMFA + +BO_ 951 Position_window_lifter_FATH: 8 JBBF + +BO_ 952 Position_window_regulator_BFT: 8 FRMFA + +BO_ 953 Position_window_regulator_BFTH: 8 JBBF + +BO_ 954 Position_SHD: 8 FZD + +BO_ 956 Position_window_lifter_security_vehicle: 8 XXX + +BO_ 957 Status_consumer_shutdown: 8 FRMFA + +BO_ 959 Position_window_rear_window: 8 CTM + +BO_ 960 Configuration_FAS: 8 SM_FA + +BO_ 961 Configuration_BFS: 8 SM_BF + +BO_ 964 Status_EDCK_CKM: 8 JBBF + +BO_ 967 Access_radio: 8 RAD1 + +BO_ 968 Operation_push_button_radio: 8 RAD1 + +BO_ 974 Radio_audio_control_interface_display: 8 ACI + +BO_ 975 Acknowledgment_access_radio_audio_control_interface: 8 ACI + +BO_ 979 Status_solar_sensor: 8 FZD + +BO_ 980 Configuration_of_central_locking_CKM: 8 Kombi + +BO_ 981 Status_central_locking_CKM: 8 CAS + +BO_ 982 Configuration_DWA_CKM: 8 Kombi + +BO_ 983 Status_DWA_CKM: 8 FZD + +BO_ 984 Configuration_RLS_CKM: 8 Kombi + +BO_ 985 Status_RLS_CKM: 8 FZD + +BO_ 986 Configuration_of_memory_positions_CKM: 8 Kombi + +BO_ 987 Status_memory_positions_CKM: 8 SM_FA + +BO_ 988 Configuration_light_CKM: 8 Kombi + +BO_ 989 Status_light_CKM: 8 FRMFA + +BO_ 990 Configuration_Climate_CKM: 8 CCC + +BO_ 991 Status_Klima_CKM: 8 IHKA + +BO_ 994 Configuration_of_tailgate_CKM: 8 CCC + +BO_ 995 Status_tailgate_CKM: 8 HKL + +BO_ 996 Configuration_rear_view_camera_CKM: 8 CCC + + + + +CM_ SG_ 170 ThrottlelPressed "Active when accelerator pedal pressed or cruise control: drives"; +CM_ SG_ 170 AcceleratorPedalPressed "Active only when driver actually presses the pedal"; +CM_ SG_ 170 AcceleratorPedalPercentage "ToDo Factor to be adjusted"; +CM_ SG_ 404 plus1mph_request "Appears when +1mph/kph stalk is depressed"; +CM_ SG_ 404 minus1mph_request "Appears when -1mph/kph stalk is depressed"; +CM_ SG_ 404 Cancel_request_up_stalk "Appears when cancel stalk (up) is depressed"; +CM_ SG_ 404 Cancel_request_up_or_down_stalk "Appears when cancel stalk (up or down) is depressed"; +CM_ SG_ 404 Resume_request "It appears when resume stalk button is depressed"; +CM_ SG_ 404 Counter_404 "Message is sent at higher rate when cruise stalk is pressed"; + +CM_ SG_ 168 BrakePressed "Brake when driver presses the brake or hill hold"; +CM_ SG_ 168 EngineTorque "Engine torque without inertia - combustion torque"; +CM_ SG_ 168 EngineTorqueWoInterv "Engine torque without inertia and without shift intervention"; +CM_ SG_ 168 ALIV_TORQ_1_DME "Counter TORQ_1"; + +CM_ SG_ 169 ALIV_TORQ_2_DME "Counter TORQ_2"; + +CM_ SG_ 182 TORQ_TAR_DSC "torque target DSC"; + +CM_ SG_ 403 CruiseControlSetpointSpeed "Speed target - unit depends on locale"; +CM_ SG_ 186 GearTar "Values corresponds to forward gears. TBD Add enums for park, reverse"; +CM_ SG_ 466 GearAct "TransmissionDataDisplay"; +CM_ SG_ 414 DSC_full_off "0x4 enabling, 0xA enabled. TBD"; + +CM_ SG_ 416 YawRate "Lateral Acceleration"; + +CM_ SG_ 408 ParkButtonSecond "Redundant buton. 0x1 = pressed;"; +CM_ SG_ 408 SideButton "0x1 = pressed;"; +CM_ SG_ 408 SportButtonPressed "0x1 = pressed;"; +CM_ SG_ 408 M3_button "M3 POWER (?)"; +CM_ SG_ 408 SideButtonXOR11 "Complement value"; +CM_ SG_ 408 param1 "can not be 0x03. Always 0 in 135i."; +CM_ SG_ 408 param5 "Always 0 in 135i."; +CM_ SG_ 408 ParkButtonFirst "0x1 = pressed"; +CM_ SG_ 408 ShifterPosition "0001 = N|R, 0010 = R, 0011 = N|D, 0100 = D, 0101 = -1, 0110 = +1, 0111 = ManualMode, 1000 = inBetween,"; + +CM_ SG_ 466 ShiftLeverMode "On the dashboard, there are displayed: D1...D7 in Normal. S1...S6 in Sport. M1..M7 in Manual"; + +CM_ SG_ 502 TurnSignalIdle "Turn signal off"; +CM_ SG_ 502 TurnSignalActive "Turn signal on or transitioning"; +CM_ SG_ 502 RightTurn "Indicates right blinker or when steering returning right clears left blinker"; +CM_ SG_ 502 LeftTurn "Indicates left blinker or when steering returning left clears right blinker"; +CM_ SG_ 502 HoldActivated "Spikes down if blinker cleared with timeout or turn. Stays off if blinker cleared with stalk"; + +CM_ SG_ 790 setMe_0x3FFF "All ones"; +CM_ SG_ 790 DTC_pressed "Traction control off. Message transmitted when pressed. Few presses may be required followed by off."; + +VAL_ 408 ShifterPosition 1 "D" 2 "S" 3 "N" 4 "R" 5 "P" ; + +VAL_ 464 ST_SW_WAUP 3 "signal invalid" 2 "EGS forced switching active" 1 "engine warm" 0 "warming up" ; +VAL_ 464 ST_ENG_RUN 3 "signal invalid" 2 "engine running" 1 "engine starting" 0 "engine off" ; +VAL_ 464 CTR_SLCK 3 "signal invalid" 2 "requirement Shiftlock" 1 "no requirement Shiftlock" 0 "not allowed" ; + +VAL_ 466 ShiftLeverMode 0 "Normal" 1 "Sport" 2 "Manual" ; +VAL_ 466 ShiftLeverPosition 0 "Off" 1 "P" 2 "R" 4 "N" 8 "D" ; diff --git a/opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc b/opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc new file mode 100644 index 0000000000..9de969d762 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/cadillac_ct6_chassis.dbc @@ -0,0 +1,95 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: K182_PACM K43_PSCM K17_EBCM NEO K124_ASCM + + + +BO_ 823 PACMParkAssitCmd: 7 NEO + SG_ RollingCounter : 35|2@0+ (1,0) [0|0] "" NEO + SG_ SteeringWheelChecksum : 47|16@0+ (1,0) [0|0] "" NEO + SG_ SteeringWheelCmd : 23|16@0+ (1,0) [0|0] "" NEO + +BO_ 560 EBCMRegen: 6 K17_EBCM + SG_ Regen : 1|10@0+ (1,0) [0|0] "" NEO + +BO_ 338 ASCMLKASteeringCmd: 6 NEO + SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO + SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO + SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO + SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO + SG_ LKASMode : 36|2@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO + +BO_ 340 ASCMBLKASteeringCmd: 6 NEO + SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO + SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO + SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO + SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO + SG_ LKASteeringCmdActive2 : 35|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO + +BO_ 368 EBCMFrictionBrakeStatus: 8 K17_EBCM + SG_ FrictionBrakePressure : 23|16@0+ (1,0) [0|0] "" NEO + +BO_ 789 EBCMFrictionBrakeCmd: 5 K17_EBCM + SG_ RollingCounter : 37|6@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO + +BO_TX_BU_ 823 : K43_PSCM,NEO; +BO_TX_BU_ 789 : NEO,K17_EBCM; + + +CM_ BU_ K182_PACM "Parking Assist Control Module"; +CM_ BU_ K43_PSCM "Power Steering Control Module"; +CM_ BU_ K17_EBCM "Electronic Brake Control Module"; +CM_ BU_ NEO "Comma NEO"; +CM_ BU_ K124_ASCM "Active Safety Control Module"; +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "UseGMParameterIDs" 0; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; + +VAL_ 338 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 338 LKASMode 2 "supercruise" 1 "lkas" 0 "Inactive" ; diff --git a/opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc b/opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc new file mode 100644 index 0000000000..3f7cf64cdc --- /dev/null +++ b/opendbc_repo/opendbc/dbc/cadillac_ct6_object.dbc @@ -0,0 +1,3470 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: RRSRR_FO LRSRR_FO CIPM_FO _DOFIMU2_FO _DOFIMU1_FO DMS_FO AMM_FO EOCM2B_IMX6_FO EOCM2B_K2_FO EOCM2B_K1_FO EOCM2A_IMX6_FO EOCM2A_K2_FO EOCM2A_K1_FO NVS_FO Dummy_FO TestTool_FO LRR_FO RFSRR_FO LFSRR_FO RSRR_FO VIS_FO EOCM_F_FO VIS2_FO +VAL_TABLE_ vt_BooleanValues 1 "true" 0 "false" ; +VAL_TABLE_ FrntVsnInPthVehBrkNwSt 10 "Active" 5 "Inactive" ; +VAL_TABLE_ FrntVsnClostPedBrkNwSt 10 "Active" 5 "Inactive" ; +VAL_TABLE_ DrvrMonSysEngSt 7 "Unused and Reserved 1" 6 "Recovering" 5 "Tracking" 4 "Searching" 3 "Video test port only" 2 "Idle" 1 "Invalid state" 0 "Does not exist or DME" ; +VAL_TABLE_ DrvrMonEngUnrecvrFltCod 7 "Unused and Reserved 3" 6 "Unused and Reserved 2" 5 "Unused and Reserved 1" 4 "Vehicle power supply Errors" 3 "Problem with LED illuminators" 2 "Vehicle input signals Errors" 1 "Problem with imager" 0 "Ok" ; +VAL_TABLE_ DrvrMonEngRecvrFltCod 3 "Engine is unable to find a face" 2 "Input Images too dark" 1 "Input images too bright" 0 "Ok" ; +VAL_TABLE_ DrvrMntrSysVTP 1 "Video test port active" 0 "Video test port inactive" ; +VAL_TABLE_ DrvrAttnStatCnfdc 3 "High" 2 "Medium" 1 "Low" 0 "Lowest" ; +VAL_TABLE_ DrvrAttnStat 7 "Invalid" 6 "Driver is exhibiting sleep" 5 "Driver is exhibiting microsleep" 4 "Attention is Center Console" 3 "Attention is Drivers Lap" 2 "Attention is Off Road" 1 "Attention is On Road" 0 "Unknown" ; +VAL_TABLE_ PPSMd 7 "GNSS and RTX and DR and MM" 6 "DR ONLY" 5 "GNSS and RTX and DR" 4 "GNSS and SBAS and DR" 3 "GNSS and DR" 2 "GNSS and RTX" 1 "GNSS and SBAS" 0 "GNSS Standalone" ; +VAL_TABLE_ AdvDrvAstMpPrfShrtAcur 3 "Accuracy Is Unknown" 2 "Lowest Accuracy" 1 "Medium Accuracy" 0 "Highest Accuracy" ; +VAL_TABLE_ AdvDrAstMpStbRtOfWay 3 "Not Applicable" 2 "Unknown" 1 "Sub Path Has Right Of Way Over Path" 0 "Path Has Right Of Way Over Sub Path" ; +VAL_TABLE_ AdvDrAstMpStbPrtCalRut 3 "Not Applicable" 2 "Unknown" 1 "Path From This Point On Is Part Of Calculated Route" 0 "Path From This Point On Is Not Part Of Calculated Route" ; +VAL_TABLE_ AdvDrAstMpStbMsgTyp 7 "Unused and Reserved 2" 6 "Metadata" 5 "Profile Long" 4 "Profile Short" 3 "Stub" 2 "Segment" 1 "Position" 0 "Unused and Reserved 1" ; +VAL_TABLE_ AdvDrAstMpStbFmOfWay 15 "Not Applicable" 14 "Pedestrian Zone" 13 "Entrance To Or Exit To Service" 12 "Entrance To Or Exit Of A Car Park" 11 "Service Road Or Frontage Road" 10 "Slip Road per Ramp" 9 "Slip Road per Ramp On A Freeway Or Controlled Access Road" 8 "Parallel Road" 7 "Unused and Reserved 2" 6 "Unused and Reserved 1" 5 "Traffic Square per Special Traffic Figure" 4 "Roundabout Circle" 3 "Single Carriageway" 2 "Multiple Carriageway Or Multiply Digitized Road" 1 "Freeway Or Controlled Access Road That Is Not A Slip Road Or Ramp" 0 "Unknown" ; +VAL_TABLE_ AdvDrAstMpStbCmplxInsct 3 "Not Applicable" 2 "Unknown" 1 "Stub Is Part Of Complex Intersection" 0 "Stub Is Not Part Of Complex Intersection" ; +VAL_TABLE_ AdvDrAstMpSegTunl 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Tunnel" 0 "Segment Is Not A Part Of Tunnel" ; +VAL_TABLE_ AdvDrAstMpSegPrtCalRut 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Calculated Route" 0 "Segment Is Not Part Of Calculated Route" ; +VAL_TABLE_ AdvDrAstMpSegMsgTyp 7 "Unused and Reserved 2" 6 "Metadata" 5 "Profile Long" 4 "Profile Short" 3 "Stub" 2 "Segment" 1 "Position" 0 "Unused and Reserved 1" ; +VAL_TABLE_ AdvDrAstMpSegFrmOfWay 15 "Not Applicable" 14 "Pedestrian Zone" 13 "Entrance To Or Exit To Service" 12 "Entrance To Or Exit Of A Car Park" 11 "Service Road Or Frontage Road" 10 "Slip Road per Ramp" 9 "Slip Road per Ramp On A Freeway Or Controlled Access Road" 8 "Parallel Road" 7 "Unused and Reserved 2" 6 "Unused and Reserved 1" 5 "Traffic Square per Special Traffic Figure" 4 "Roundabout Circle" 3 "Single Carriageway" 2 "Multiple Carriageway Or Multiply Digitized Road" 1 "Freeway Or Controlled Access Road That Is Not A Slip Road or Ramp" 0 "Unknown" ; +VAL_TABLE_ AdvDrAstMpSegEffSdLmtTp 7 "Not Applicable" 6 "Explicit Snow" 5 "Explicit Rain" 4 "Explicit Time Of Day" 3 "Explicit By Day" 2 "Explicit By Night" 1 "Explicit On Traffic Sign" 0 "Implicit" ; +VAL_TABLE_ AdvDrAstMpSegDivdRd 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Divided Road" 0 "Segment Is Not Part Of Divided Road" ; +VAL_TABLE_ AdvDrAstMpSegCmplxInsct 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Complex Intersection" 0 "Segment Is Not Part Of Complex Intersection" ; +VAL_TABLE_ AdvDrAstMpSegBrdg 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Bridge" 0 "Segment Not Part Of Bridge" ; +VAL_TABLE_ AdvDrAstMpSegBldUpAra 3 "Not Applicable" 2 "Unknown" 1 "Segment Is Part Of Built Up Area" 0 "Segment Is Not Part Of Built Up Area" ; +VAL_TABLE_ AdvDrAstMpMtdtSpdUnt 1 "Miles Per Hour" 0 "Kilometers Per Hour" ; +VAL_TABLE_ AdvDrAstMpMtdtDrvSd 1 "Driving Side Right" 0 "Driving Side Left" ; +VAL_TABLE_ WSMR_WiFiAssnReq 3 "Unexpected Undefined Connection Behavior" 2 "Wi Fi association failed with available credentials" 1 "Failed to receive Wi Fi credentials after 255 attempts" 0 "SSID and Passphrase Request" ; +VAL_TABLE_ StrgColCommsFlt 2 "Disabled Communications DTC" 1 "No Communications Fault" 0 "Communications Fault" ; +VAL_TABLE_ CPMAPINFO4 1 "Hardware Or Software Error" 0 "No Hardware Or Software Error" ; +VAL_TABLE_ AdvDrvAstMpPrfShrt2Acur 3 "Accuracy Is Unknown" 2 "Lowest Accuracy" 1 "Medium Accuracy" 0 "Highest Accuracy" ; +VAL_TABLE_ InterLghtStat 1 "Interior Lights On" 0 "Interior Light Off" ; +VAL_TABLE_ VehLnStatConf 2 "High Confidence" 1 "Low Confidence" 0 "No Confidence" 3 "Very High Confidence" ; +VAL_TABLE_ VehLnStat 3 "Lane Change To Right" 2 "Lane Change To Left" 1 "Staying in Lane" 0 "Unknown" ; +VAL_TABLE_ HrznPrvdRstRq 1 "Reset Not Required" 0 "Reset Required" ; +VAL_TABLE_ ExptNxtTrnstnDirConf 3 "Very High Confidence" 2 "High Confidence" 1 "Low Confidence" 0 "No Confidence" ; +VAL_TABLE_ ExptNxtTrnstnDir 7 "Reserved4" 6 "Reserved3" 5 "Reserved2" 4 "Reserved1" 3 "Traversing Middle Transition" 2 "Traversing Next Transition Right" 1 "Traversing Next Transition Left" 0 "Unknown" ; +VAL_TABLE_ ADASISMsgTypRetrans 7 "GM System Specific" 6 "Meta Data" 5 "Profile Long" 4 "Profile Short" 3 "Stub" 2 "Segment" 1 "Position" 0 "Checksum" ; +VAL_TABLE_ NVSysStat 7 "Needs Headlights" 6 "Temporarily Unavailable" 5 "Not Dark" 4 "Needs Service" 3 "Active" 2 "Inactive" 1 "Initializing" 0 "Unknown" ; +VAL_TABLE_ NVSysPedWrnIndReq 3 "Unused & Reserved" 2 "Pedestrian Alert" 1 "Pedestrian Detected" 0 "None" ; +VAL_TABLE_ NVSysPedDetCstReq 2 "On" 1 "Off" 0 "No Value" ; +VAL_TABLE_ NVSysPedDetCsCrStVal 2 "On" 1 "Off" 0 "No Value" ; +VAL_TABLE_ FwVsnCinCoutPotT9Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT8Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT7Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT6Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT5Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT4Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT3Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT2Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT1Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT12Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT11Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT10Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ GFHBObjDirTrk8 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk7 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk6 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk5 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk4 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk3 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk2 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBObjDirTrk1 1 "Ahead Traffic" 0 "Incoming Traffic" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk8 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk7 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk6 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk5 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk4 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk3 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk2 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnRelLaneTrk1 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk8 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk7 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk6 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk5 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk4 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk3 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk2 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnMesStatTrk1 3 "Measured this cycle" 2 "Latent track not detected this cycle" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk8 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk7 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk6 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk5 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk4 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk3 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk2 3 "Confident" 2 "Speculative" 1 "Highly Speculative" 0 "Invalid" ; +VAL_TABLE_ GFHBFwVsnCnfdncTrk1 0 "Invalid" 3 "Confident" 2 "Speculative" 1 "Highly Speculative" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev8 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev7 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev6 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev5 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev4 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev3 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev2 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car)" 0 "Unknown" ; +VAL_TABLE_ GFHBFVsnObjTypTrkRev1 12 "Cluster Object" 11 "Child Close to Danger Zone" 10 "Pedestrian Moving Out of Danger Zone" 9 "Pedestrian Moving Into Danger Zone" 8 "Pedestrian Standing Outside Danger Zone" 7 "No Object Present" 6 "Fixed Roadside Object" 5 "Fixed Overhead Object" 4 "Pedestrian" 3 "Motorcycle/ Bicycle" 2 "Large Vehicle (Semi)" 1 "4 Wheel Vehicle (Car" 0 "Unknown" ; +VAL_TABLE_ CRL_Cnfdnc 7 "Reserved4" 6 "Reserved3" 5 "Reserved2" 4 "Reserved1" 3 "Best" 2 "Marking Present" 1 "Weak Marking" 0 "No Lane" ; +VAL_TABLE_ CLL_Cnfdnc 7 "Reserved4" 6 "Reserved3" 5 "Reserved2" 4 "Reserved1" 3 "Best" 2 "Marking Present" 1 "Weak Marking" 0 "No Lane" ; +VAL_TABLE_ VBBrkCtrlSt 4 "Release Control" 3 "Hold Vehicle" 2 "Apply Brake" 1 "Decrease Torque" 0 "No Action" ; +VAL_TABLE_ ObstacleType 6 "NO_OBJECT" 5 "OBJ_GUARDRAIL" 4 "OBJ_TUNNEL " 3 "OBJ_TRAFFIC_SIGN" 2 "OBJ_VEHICLE" 1 "OBJ_BRIDGE " 0 "OBJ_UNKNOWN" ; +VAL_TABLE_ VpathMode 2 "Mid Hi Speed" 1 "Low Speed" 0 "Disabled" ; +VAL_TABLE_ LaneChngStatus 2 "Lane Change Right" 1 "Lane Change Left" 0 "Idle" ; +VAL_TABLE_ TravelDirection 3 "Other (excessive side slip)" 2 "reverse / stopped in rvrs gear" 1 "Forward / stopped in frwd gear" 0 "Unknown" ; +VAL_TABLE_ TrueOrFalse 1 "true" 0 "false" ; +VAL_TABLE_ ModeCommand 5 "Sensing with Reduced Power" 4 "Undefined" 3 "Radio Silent" 2 "Sensing" 1 "Not Sensing" 0 "Undefined" ; +VAL_TABLE_ LaneSnsLLnPosValid 1 "Invalid" 0 "Valid" ; +VAL_TABLE_ LnSnsRLnPosValid 1 "Invalid" 0 "Valid" ; +VAL_TABLE_ Elevation 3 "Low " 2 "mid (reserved)" 1 "high " 0 "Unknown" ; +VAL_TABLE_ ModeCommandFdbk 5 "Sensing with reduced power" 4 "Undefined" 3 "Radio Silent" 2 "Sensing" 1 "Not Sensing" 0 "Undefined" ; +VAL_TABLE_ relativeLane 3 "Left Lane" 2 "Right Lane" 1 "Host Lane" 0 "Unknown" ; +VAL_TABLE_ RoadTypeInfo 5 "Constiction Zone Exit" 4 "Construction Zone Entry" 3 "Highway" 2 "Secondary Road" 1 "City" 0 "Unknown" ; +VAL_TABLE_ ObjectLossInfo 2 "elevation conditions" 1 "tight curve" 0 "not lost" ; +VAL_TABLE_ MeasurementStatus 3 "Measured this cycle" 2 "Latent track not detctd this cyc" 1 "New Object" 0 "No Object" ; +VAL_TABLE_ ObjectType 7 "no object present" 6 "fixed roadside object" 5 "fixed overhead object" 4 "pedestrian" 3 "motocycle / bicycle" 2 "Large vehicle (semi)" 1 "4 Wheel Vehicle (car, small trk)" 0 "Unknown" ; +VAL_TABLE_ Confidence 3 "confident" 2 "speculative" 1 "highly speculative" 0 "invalid" ; +VAL_TABLE_ DynamicProp 4 "Moving in opposite direction" 3 "Moving in same direction as host" 2 "Has moved but currently stopped" 1 "Has never moved" 0 "Unknown" ; +VAL_TABLE_ DrvWndPosSt 6 "Fully Opened" 5 "Open More Than C" 4 "Position C" 3 "Position B" 2 "Position A" 1 "Open Less Than A" 0 "Fully Closed" ; +VAL_TABLE_ VehMovSta 4 "Invalid" 3 "Reverse" 2 "Forward" 1 "Neutral" 0 "Parked" ; +VAL_TABLE_ OtsdAmbtLtLvlStat 2 "Day" 1 "Night" 0 "Unknown" ; +VAL_TABLE_ RtTrnLmpAtv 2 "On with telltale" 1 "On without telltale" 0 "Off" ; +VAL_TABLE_ LftTrnLmpAtv 2 "On with telltale" 1 "On without telltale" 0 "Off" ; +VAL_TABLE_ HdlmpBmSelectStat 2 "High Beams" 1 "Low Beams" 0 "Unknown" ; +VAL_TABLE_ DTCI_DTCFaultType 3 "Type C" 2 "Type B" 1 "Type A" 0 "Not Supported" ; +VAL_TABLE_ TrnsShftLvrPos 13 "Forward Range J" 12 "Forward Range I" 15 "Lever Position Unknown" 11 "Forward Range H" 10 "Forward Range G" 9 "Forward Range F" 8 "Forward Range E" 7 "Forward Range D" 6 "Forward Range C" 5 "Forward Range B" 4 "Forward Range A" 3 "Neutral Range" 2 "Reverse Range" 1 "Park Range" 0 "Between Ranges" ; +VAL_TABLE_ SysPwrMd 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off" ; +VAL_TABLE_ ValidityStates 1 "Invalid" 0 "Valid" ; + + +BO_ 1548 ADAS_Profile_Short2_FO: 8 AMM_FO + SG_ AdvDrvAstMpPrfShrt2Val1 : 1|10@0+ (1,0) [0|1023] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2Val0 : 33|10@0+ (1,0) [0|1023] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2Updt : 39|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2RTrns : 3|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2Typ : 38|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2PthIdx : 23|6@0+ (1,0) [0|63] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2Ofst : 52|13@0+ (1,0) [0|8191] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2MsgTp : 55|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2Dist1 : 17|10@0+ (1,0) [0|1023] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2CycCnt : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2CtlPt : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpPrfShrt2Acur : 5|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 1547 ADAS_Profile_Long2_FO: 8 AMM_FO + SG_ AdvDrAstMpProfLng2Val : 39|32@0+ (1,0) [0|4294967295] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2Updt : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2RTrns : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2PrfTyp : 4|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2PthIdx : 13|6@0+ (1,0) [0|63] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2Ofst : 20|13@0+ (1,0) [0|8191] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2MgTyp : 23|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2CycCt : 15|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLng2CtrlPt : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 1630 USDT_Resp_From_EOCM2B_K2_FO: 8 EOCM2B_K2_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1374 UUDT_Resp_From_EOCM2B_K2_FO: 8 EOCM2B_K2_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 606 USDT_Req_to_EOCM2B_K2_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2B_K2_FO + +BO_ 328 Vehicle_Info_FO: 5 EOCM2A_K1_FO + SG_ StrWhAngGrd : 27|12@0- (1,0) [-2048|2047] "deg/sec" DMS_FO + SG_ TrnsShftLvrPos : 31|4@0+ (1,0) [0|15] "" DMS_FO + SG_ StrWhAng_148 : 15|16@0- (0.0625,0) [-2048|2047.9375] "deg" DMS_FO + SG_ TrnsShftLvrPosV : 3|1@0+ (1,0) [0|1] "" DMS_FO + SG_ StrWhAngV_148 : 4|1@0+ (1,0) [0|1] "" DMS_FO + SG_ StrWhAngMsk_148 : 5|1@0+ (1,0) [0|1] "" DMS_FO + SG_ StrWhAngGrdV : 6|1@0+ (1,0) [0|1] "" DMS_FO + SG_ StrWhAngGrdMsk : 7|1@0+ (1,0) [0|1] "" DMS_FO + +BO_ 1930 DTC_Triggered_78A_FO: 7 LRSRR_FO + SG_ DTCI_CodeSupported_78A : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_78A : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_78A : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_78A : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_78A : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_78A : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_78A : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_78A : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_78A : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_78A : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_78A : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_78A : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_78A : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_78A : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_78A : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_78A : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_78A : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_78A : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_78A : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_78A : 47|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1624 USDT_Resp_From_LRSRR: 8 LRSRR_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1368 UUDT_Resp_From_LRSRR: 8 LRSRR_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 600 USDT_Req_to_LRSRR: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LRSRR_FO + +BO_ 613 PPS_QualMetrics_FO: 8 EOCM2A_K1_FO + SG_ PPSPstnDilPrcs : 47|10@0+ (0.1,0) [0|102.3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSMd : 53|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPS3DAbsPosErrEstmt : 9|10@0+ (0.1,0) [0|102.3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSAbsHdngErrEstmt : 0|7@0+ (0.5,0) [0|63.5] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSAbsVelErrEstmt : 30|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSPosQltyMtrcsChksm : 50|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPS2DAbsPosErrEstmt : 25|10@0+ (0.1,0) [0|102.3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSPosQltyMtcBrstID : 2|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPS2DAbsPosErrEstmtV : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPS3DAbsPosErrEstmtV : 4|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSAbsHdngErrEstmtV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSAbsVelErrEstmtV : 31|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSMdV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSPstnDilPrcsV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + +BO_ 612 PPS_Time_FO: 8 EOCM2A_K1_FO + SG_ PPSTmdayV : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSCldrDayV : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSCldrDay : 8|9@0+ (1,0) [0|511] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSTmBrstID : 52|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSTmday : 31|27@0+ (1,0) [0|134217727] "ms" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSTmChksm : 50|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSCldrYrV : 1|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSCldrYr : 15|7@0+ (1,2014) [2014|2141] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + +BO_ 611 PPS_SigAcqTime_FO: 6 EOCM2A_K1_FO + SG_ PPSSigAqTmBrstID : 38|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSSigAcqTmV : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSSigAcqTm : 7|32@0+ (1,0) [0|4294967295] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSSigAqTmChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + +BO_ 610 PPS_PosLong_FO: 6 EOCM2A_K1_FO + SG_ PPSLongBrstID : 39|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSLong : 6|31@0- (1,0) [-1073741824|1073741823] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSLongV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSLongChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + +BO_ 609 PPS_PosLat_FO: 6 EOCM2A_K1_FO + SG_ PPSLatV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSLatChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSLatBrstID : 36|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSLat : 5|30@0- (1,0) [-536870912|536870911] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + +BO_ 1160 PassPhrase_3_AMM_FO: 8 EOCM2A_K1_FO + SG_ WiFiPssPhrsDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO + +BO_ 1159 PassPhrase_2_AMM_FO: 8 EOCM2A_K1_FO + SG_ WiFiPssPhrsDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO + +BO_ 1158 PassPhrase_1_AMM_FO: 8 EOCM2A_K1_FO + SG_ WiFiPssPhrsDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO + +BO_ 1546 ADAS_Protection_FO: 4 AMM_FO + SG_ AdvDrAstMpPrfLng2Avbl : 11|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPosAvbl : 15|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpHwFlt : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtAvbl : 8|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpProtChksm : 23|16@0+ (1,0) [0|65535] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpProtRTrns : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpProtCycCtMsg : 2|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbAvbl : 9|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpSegAvbl : 10|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfShrtAvbl : 14|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfShrt2Avbl : 13|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrAstMpPrfLngAvbl : 12|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ AdvDrvAstMpInpSigFld : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 1545 ADAS_Metadata_FO: 8 AMM_FO + SG_ AdvDrAstMpMtdtVerYrQtr : 60|2@0+ (1,1) [1|4] "Qtr" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtVerYr : 53|6@0+ (1,2000) [2000|2063] "Year" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtSpdUnt : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtPrvdr : 7|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtMsgTyp : 58|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtMnrPrtVr : 23|4@0+ (1,0) [0|15] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtCycCnt : 18|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtRgnCd : 38|15@0+ (1,0) [0|32767] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtHwVer : 16|9@0+ (1,0) [0|511] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtMnrPrtSbVr : 4|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtMjrPrtVr : 55|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtDrvSd : 19|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpMtdtCntryCd : 1|10@0+ (1,0) [0|1023] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 1543 ADAS_Profile_Long_FO: 8 AMM_FO + SG_ AdvDrAstMpPrfLngUpdt : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngRTrns : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngCtlPt : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngTyp : 4|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngCycCt : 15|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngPthIdx : 13|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngMsgTp : 23|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngOfst : 20|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPrfLngVal : 39|32@0+ (1,0) [0|4294967295] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 1544 ADAS_Profile_Short_FO: 8 AMM_FO + SG_ AdvDrvAstMpPrfShrtVal1 : 1|10@0+ (1,0) [0|1023] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtVal0 : 33|10@0+ (1,0) [0|1023] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtDist1 : 17|10@0+ (1,0) [0|1023] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtCycCnt : 7|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtAcur : 5|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtCtlPt : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtRetr : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtTyp : 38|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtUpdt : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtPthIdx : 23|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtMsgTp : 55|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrvAstMpPrfShrtOfst : 52|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 1542 ADAS_Stub_FO: 8 AMM_FO + SG_ AdvDrAstMpStbSubPthIdx : 63|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbUpdt : 55|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbPrtCalRut : 57|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbNmLnDrvDir : 54|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbCycCnt : 51|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbCmplxInsct : 49|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbTrnAngl : 47|8@0+ (1.417,0) [0|361.335] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbRtOfWay : 38|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbRelProb : 36|5@0+ (3.333,0) [0|103.323] "%" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbRetr : 39|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbNmLnOppDir : 31|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbPathIdx : 29|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbLstStbOfst : 23|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbMsgTyp : 22|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbFmOfWay : 19|4@0+ (1,0) [0|15] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbFuncRdCls : 7|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpStbOfst : 4|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 1541 ADAS_Segment_FO: 8 AMM_FO + SG_ AdvDrAstMpSegRelProb : 12|5@0+ (3.333,0) [0|103.323] "%" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegUpdt : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegTunl : 25|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegCycCnt : 39|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegCmplxInsct : 37|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegBldUpAra : 43|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegBrdg : 41|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegRTrns : 1|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegDivdRd : 31|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegPthIdx : 7|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegPrtCalRut : 27|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegNmLnOppDir : 29|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegNmLnDrvDir : 55|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegMsgTyp : 46|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegFunRdCls : 23|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegFrmOfWay : 35|4@0+ (1,0) [0|15] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegEffSpdLmt : 20|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegEffSdLmtTp : 15|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpSegOffset : 52|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 608 PPS_ElevHdSpd_FO: 8 EOCM2A_K1_FO + SG_ PPSVel : 31|8@0+ (1,0) [0|255] "km / h" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSVelV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSElvHedngSpdBrstID : 5|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSElvHdengSpdChksm : 50|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSHedngV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSHedng : 2|19@0+ (0.001,0) [0|524.287] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSElvtnV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + SG_ PPSElvtn : 39|21@0+ (1,-100000) [-100000|1997151] "cm" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,AMM_FO + +BO_ 1168 WiFi_Station_AMM_FO: 5 AMM_FO + SG_ WSMR_WiFiStnMpMACAddr : 15|32@0+ (1,0) [0|4294967295] "" EOCM2B_K1_FO,EOCM2A_K1_FO + SG_ WSMR_WiFiAssnReq : 1|2@0+ (1,0) [0|3] "" EOCM2B_K1_FO,EOCM2A_K1_FO + +BO_ 1161 WiFi_AP_Data_AMM_FO: 2 EOCM2A_K1_FO + SG_ WAPDM_SecurityType : 15|4@0+ (1,0) [0|15] "" EOCM2B_K1_FO,AMM_FO + SG_ WAPDM_WiFiEnStat : 0|1@0+ (1,0) [0|1] "" EOCM2B_K1_FO,AMM_FO + SG_ WAPDM_EncrptnType : 11|4@0+ (1,0) [0|15] "" EOCM2B_K1_FO,AMM_FO + +BO_ 1157 SSID_AMM_3_FO: 8 EOCM2A_K1_FO + SG_ WiFiSSIDDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO + +BO_ 326 DMS_Eye_AOI_Info_FO: 6 DMS_FO + SG_ DrvrMontSysInit : 1|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMontSysAvlbl : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMontMdlDatFlshProgrs : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonEngRecvrFltCodARC : 36|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrAttnStatChksm : 34|11@0+ (1,0) [0|2047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrAttnStat : 39|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrAttnStatPrd : 22|15@0+ (0.025,0) [0|819.175] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonEngRecvrFltCodV : 23|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonEngUnrecvrFltCod : 10|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonEngUnrecvrFltCodV : 11|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrAttnStatCnfdc : 13|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonEngRecvrFltCod : 15|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrAttnStatV : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 324 DMS_RawMeasurement_Info2_FO: 8 DMS_FO + SG_ DrvrMonFrmNum : 47|8@0+ (1,0) [0|255] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMntrSysVTP : 29|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonSysEngStV : 2|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonSysEngSt : 28|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonFrmNumV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrHeadRotAngZV : 4|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrHeadRotAngYV : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrHeadRotAngXV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrHeadRotAngARC : 52|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonLatV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrMonLat : 50|11@0+ (0.001,0) [0|2.047] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvHeadRotAngZ : 25|10@0- (0.00625,0) [-3.2|3.19375] "rad" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ DrvHeadRotAngY : 23|10@0- (0.00625,0) [-3.2|3.19375] "rad" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ DrvrHeadRotAngX : 1|10@0- (0.00625,0) [-3.2|3.19375] "rad" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 322 DMS_RawMeasurement_Info1_FO: 8 DMS_FO + SG_ DrvrEyeClosrRt : 47|8@0+ (0.005,0) [0|1.275] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrEyeClosrLft : 39|8@0+ (0.005,0) [0|1.275] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvHeadPosZV : 3|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvHeadPosYV : 4|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvHeadPosXV : 5|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrEyeClosrRtV : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrEyeClosrLftV : 7|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvrEyeClosrARC : 52|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ DrvHeadPosZ : 50|11@0- (0.005,0) [-5.12|5.115] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ DrvHeadPosY : 18|11@0- (0.005,0) [-5.12|5.115] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ DrvHeadPosX : 2|11@0- (0.005,0) [-5.12|5.115] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 320 Inertial2_Rates_FO: 8 _DOFIMU2_FO + SG_ MstrTgrSyncInrtl2Rte : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2YawRteV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2YawRte : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2RollRteV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2RollRte : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2RteChksum : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2PitchRteV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2PitchRte : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 308 Inertial1_Rates_FO: 8 _DOFIMU1_FO + SG_ MstrTrgrSyncInrtl1Rte : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1YawRteV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1YawRte : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1RollRteV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1RollRte : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1RteChksum : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1PitchRteV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial1PitchRte : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 312 Inertial2_Accel2_FO: 8 _DOFIMU2_FO + SG_ MstrTrigSyncInrtl22 : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSns2AccFrm2Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr2YawAccV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr2YawAcc : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr2RollAccV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr2RollAcc : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr2PtchAccV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr2PtchAcc : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 306 Inertial1_Accel2_FO: 8 _DOFIMU1_FO + SG_ MstrTrigSyncInrtl12 : 55|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1AccelFrm2Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1YawAccV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1YawAcc : 36|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1RollAccV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1RollAcc : 20|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1PtchAccV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1PtchAcc : 4|13@0- (0.024,0) [-98.304|98.28] "deg/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 310 Inertial2_Accel1_FO: 8 _DOFIMU2_FO + SG_ MstrTrigSyncInrtl21 : 7|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2VertAccV : 34|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2VertAcc : 33|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2LonAccV : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2LonAcc : 1|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2LatAccV : 18|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ Inertial2LatAcc : 17|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ IntlSnsr2AcelFm1Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 304 Inertial1_Accel1_FO: 8 _DOFIMU1_FO + SG_ MstrTrigSyncInrtl11 : 7|5@0+ (1,0) [0|31] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1VertAccV : 34|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1VertAcc : 33|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1LonAccV : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1LonAcc : 1|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1LatAccV : 18|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InrtlSnsr1LatAcc : 17|10@0- (0.0625,0) [-32|31.9375] "m/s^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ IntlSnsr1AcelFm1Chksm : 50|11@0+ (1,0) [0|2047] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 356 Map_Pos_Correction_FO: 4 EOCM2A_K1_FO + SG_ LongErrPstn : 7|8@0- (0.5,0) [-64|63.5] "m" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ LatErrPstn : 15|8@0- (0.5,0) [-64|63.5] "m" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ PstnErrChcksm : 18|11@0+ (1,0) [0|2047] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ PstnErrARC : 20|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 354 Map_Retrans_Request_FO: 1 EOCM2A_K1_FO + SG_ HrznPrvdRstRq : 2|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ ADASISRwDtMplxdCycCnt : 7|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ ADASISMsgTypRetrans : 5|3@0+ (1,0) [0|7] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 352 Map_Path_Correction_FO: 6 EOCM2A_K1_FO + SG_ ExptNxtTrnstnDir : 37|3@0+ (1,0) [0|7] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ MstProbLnV : 15|1@0+ (1,0) [0|1] "" AMM_FO + SG_ MstProbLn : 14|5@0+ (1,0) [0|31] "" AMM_FO + SG_ PathCrtnChcksm : 34|11@0+ (1,0) [0|2047] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ PathCrtnARC : 4|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ EgoLnCurvV : 2|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ EgoLnCurv : 23|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m^2" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ VehLnStatV : 1|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ VehLnStatConf : 6|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ VehLnStat : 9|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ ExptNxtTransDirV : 0|1@0+ (1,0) [0|1] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ ExptNxtTrnstnDirConf : 39|2@0+ (1,0) [0|3] "" AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 264 Inertial_Trigger_FO: 1 EOCM2A_K1_FO + SG_ InrtlSnsrMstrTrgrSync : 7|5@0+ (1,0) [0|31] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,_DOFIMU2_FO,_DOFIMU1_FO + +BO_ 1156 SSID_AMM_2_FO: 8 EOCM2A_K1_FO + SG_ WiFiSSIDDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO + +BO_ 1155 SSID_AMM_1_FO: 8 EOCM2A_K1_FO + SG_ WiFiSSIDDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" EOCM2B_K1_FO,AMM_FO + +BO_ 1927 DTC_Triggered_787_FO: 7 DMS_FO + SG_ DTCI_CodeSupported_787 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_787 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_787 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_787 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_787 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_787 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_787 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_787 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_787 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_787 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_787 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_787 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_787 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_787 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_787 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_787 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_787 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_787 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_787 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_787 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1926 DTC_Triggered_786_FO: 7 AMM_FO + SG_ DTCI_CodeSupported_786 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_786 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_786 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_786 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_786 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_786 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_786 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_786 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_786 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_786 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_786 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_786 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_786 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_786 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_786 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_786 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_786 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_786 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_786 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_786 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1928 DTC_Triggered_788_FO: 7 _DOFIMU1_FO + SG_ DTCI_CodeSupported_788 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_788 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_788 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_788 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_788 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_788 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_788 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_788 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_788 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_788 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_788 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_788 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_788 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_788 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_788 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_788 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_788 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_788 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_788 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_788 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1929 DTC_Triggered_789_FO: 7 _DOFIMU2_FO + SG_ DTCI_CodeSupported_789 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_789 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_789 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_789 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_789 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_789 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_789 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_789 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_789 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_789 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_789 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_789 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_789 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_789 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_789 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_789 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_789 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_789 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_789 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_789 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1352 UUDT_Resp_From_6DOFIMU2_FO: 8 _DOFIMU2_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 588 USDT_Req_to_EOCM2B_K1_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2B_K1_FO + +BO_ 1356 UUDT_Resp_From_EOCM2B_K1_FO: 8 EOCM2B_K1_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1612 USDT_Resp_From_EOCM2B_K1_FO: 8 EOCM2B_K1_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1616 USDT_Resp_From_EOCM2A_IMX6_FO: 8 EOCM2A_IMX6_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1360 UUDT_Resp_From_EOCM2A_IMX6_FO: 8 EOCM2A_IMX6_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 592 USDT_Req_to_EOCM2A_IMX6_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2A_IMX6_FO + +BO_ 1610 USDT_Resp_From_EOCM2A_K1_FO: 8 EOCM2A_K1_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1354 UUDT_Resp_From_EOCM2A_K1_FO: 8 EOCM2A_K1_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 586 USDT_Req_to_EOCM2A_K1_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2A_K1_FO + +BO_ 1925 DTC_Triggered_785_FO: 7 NVS_FO + SG_ DTCI_CodeSupported_785 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_785 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_785 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_785 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_785 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_785 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_785 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_785 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_785 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_785 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_785 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_785 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_785 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_785 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_785 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_785 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_785 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_785 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_785 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_785 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1859 VIN_Digits_10_to_17_FO: 8 EOCM_F_FO + SG_ VehIdNmDig10_17 : 7|64@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO + +BO_ 1857 VIN_Digits_2_to_9_FO: 8 EOCM_F_FO + SG_ VehIdNmDig2_9 : 7|64@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO + +BO_ 771 Outside_Air_Temperature_FO: 2 EOCM_F_FO + SG_ OtsAirTmpCrValV : 0|1@0+ (1,0) [0|1] "" NVS_FO + SG_ OtsAirTmpCrVal : 15|8@0+ (0.5,-40) [-40|87.5] "deg C" NVS_FO + +BO_ 777 Night_Vision_System_Ped_FO: 1 NVS_FO + SG_ NVSysStat : 3|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ NVSysPedWrnIndReq : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ NVSysPedDetCsCrStVal : 5|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ NVSysPedDetCstStAvl : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 607 USDT_Req_to_NVS_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" NVS_FO + +BO_ 1631 USDT_Resp_From_NVS_FO: 8 NVS_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1375 UUDT_Resp_From_NVS_FO: 8 NVS_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1540 ADAS_Position_FO: 8 AMM_FO + SG_ AdvDrAstMpLatOffst : 40|9@0+ (1,-256) [-256|255] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnIndx : 63|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnCnf : 61|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPsnIdxCrLn : 58|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnPthIndx : 46|6@0+ (1,0) [0|63] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnProb : 31|5@0+ (3.333,0) [0|103.323] "%" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnCycCnt : 26|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnAge : 24|9@0+ (5,0) [0|2555] "ms" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnRelHd : 23|8@0+ (1.417,0) [0|361.335] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnMsgTyp : 7|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + SG_ AdvDrAstMpPstnOfst : 4|13@0+ (1,0) [0|8191] "m" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO + +BO_ 1608 USDT_Resp_From_6DOFIMU2_FO: 8 _DOFIMU2_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 871 LGT_ObjectDetect_Info_8_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk8 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk8 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk8 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk8 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev8 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev8 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev8 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk8 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk8 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk8 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 870 LGT_ObjectDetect_Info_7_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk7 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk7 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk7 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk7 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev7 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev7 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev7 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk7 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk7 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk7 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 869 LGT_ObjectDetect_Info_6_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk6 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk6 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk6 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk6 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev6 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev6 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev6 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk6 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk6 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk6 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 868 LGT_ObjectDetect_Info_5_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk5 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk5 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk5 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk5 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev5 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev5 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev5 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk5 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk5 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk5 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 867 LGT_ObjectDetect_Info_4_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk4 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk4 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk4 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk4 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev4 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev4 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev4 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk4 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk4 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk4 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 866 LGT_ObjectDetect_Info_3_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk3 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk3 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk3 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk3 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev3 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev3 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev3 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk3 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk3 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk3 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 865 LGT_ObjectDetect_Info_2_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk2 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk2 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk2 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk2 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev2 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev2 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev2 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBObjDirTrk2 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk2 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 864 LGT_ObjectDetect_Info_1_FO: 8 VIS2_FO + SG_ GFHBFwVsnWidthTrk1 : 62|7@0+ (0.1,0) [0|12.7] "deg" EOCM_F_FO + SG_ GFHBFwVsnVertPosTrk1 : 53|6@0+ (0.25,-3) [-3|12.75] "deg" EOCM_F_FO + SG_ GFHBFwVsnRelLaneTrk1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnAzmthRtTrk1 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ GFHBFwVsnCnfdncTrk1 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnRngTrkRev1 : 16|12@0+ (0.2,0) [0|819] "m" EOCM_F_FO + SG_ GFHBFwVsnAzmthTrkRev1 : 10|10@0- (0.05,0) [-25.6|25.55] "deg" EOCM_F_FO + SG_ GFHBFVsnObjTypTrkRev1 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ GFHBObjDirTrk1 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ GFHBFwVsnMesStatTrk1 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ GFHBFwVsnObjIDTrk1 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1915 DTC_Triggered_77B_FO: 7 VIS_FO + SG_ DTCI_DTCFaultType_77B : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_CodeSupported_77B : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_77B : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_77B : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_77B : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_77B : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_77B : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_77B : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_77B : 47|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_77B : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_77B : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_77B : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_77B : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_77B : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_77B : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_77B : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_77B : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_77B : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_77B : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_77B : 7|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1923 DTC_Triggered_783_FO: 7 RSRR_FO + SG_ DTCI_WrnIndRqdSt_783 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_783 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_783 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_783 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_783 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_783 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCTriggered_783 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCSource_783 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_783 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCFaultType_783 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFailType_783 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_CurrentStatus_783 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CodeSupported_783 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_783 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_783 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_783 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_783 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_783 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_783 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_783 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1924 DTC_Triggered_784_FO: 7 RRSRR_FO + SG_ DTCI_HistStat_784 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_784 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_784 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_784 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_784 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_784 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_784 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_784 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_784 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_784 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_784 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_784 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_784 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CodeSupported_784 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CurrentStatus_784 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCFailType_784 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFaultType_784 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_784 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCSource_784 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCTriggered_784 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1922 DTC_Triggered_782_FO: 7 RFSRR_FO + SG_ DTCI_WrnIndRqdSt_782 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_782 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_782 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_782 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_782 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_782 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_782 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_782 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_782 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_782 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_782 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_782 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_782 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCTriggered_782 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCSource_782 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_782 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCFaultType_782 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFailType_782 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_CurrentStatus_782 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_CodeSupported_782 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1920 DTC_Triggered_780_FO: 7 LRR_FO + SG_ DTCI_CurrentStatus_780 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_780 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_780 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_780 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_780 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_780 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_780 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_780 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_780 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_780 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_780 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_780 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_780 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_780 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCTriggered_780 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCSource_780 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_780 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCFaultType_780 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFailType_780 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_CodeSupported_780 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1921 DTC_Triggered_781_FO: 7 LFSRR_FO + SG_ DTCI_CurrentStatus_781 : 41|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_WrnIndRqdSt_781 : 47|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused7_781 : 1|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused6_781 : 2|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused5_781 : 3|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused4_781 : 4|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused3_781 : 5|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused2_781 : 6|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCIUnused1_781 : 7|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdPwrUpSt_781 : 45|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstNPsdCdClrdSt_781 : 42|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldPwrUpSt_781 : 46|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_TstFldCdClrdStat_781 : 43|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_HistStat_781 : 44|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCTriggered_781 : 0|1@0+ (1,0) [0|1] "" TestTool_FO + SG_ DTCI_DTCSource_781 : 15|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCNumber_781 : 23|16@0+ (1,0) [0|65535] "" TestTool_FO + SG_ DTCI_DTCFaultType_781 : 55|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_DTCFailType_781 : 39|8@0+ (1,0) [0|255] "" TestTool_FO + SG_ DTCI_CodeSupported_781 : 40|1@0+ (1,0) [0|1] "" TestTool_FO + +BO_ 1034 Curvature_Right_Line_FO: 7 VIS2_FO + SG_ CRL_Cnfdnc : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ CRL_ViewRng : 33|15@0+ (0.0039064,0) [0|128.0010088] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ CRL_CoefdA : 17|16@0- (3.6622E-009,0) [-0.0001200029696|0.0001199993074] "1/m^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ CRL_CoefA : 1|16@0- (6.1036E-007,0) [-0.02000027648|0.01999966612] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 1033 Curvature_Left_Line_FO: 7 VIS2_FO + SG_ CLL_Cnfdnc : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ CLL_ViewRng : 33|15@0+ (0.0039064,0) [0|128.0010088] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ CLL_CoefdA : 17|16@0- (3.6622E-009,0) [-0.0001200029696|0.0001199993074] "1/m^2" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ CLL_CoefA : 1|16@0- (6.1036E-007,0) [-0.02000027648|0.01999966612] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + +BO_ 1365 UUDT_Resp_From_VIS2_FO: 8 VIS2_FO + SG_ DgnInf_OBJ555 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1621 USDT_Resp_From_VIS2_FO: 8 VIS2_FO + SG_ DgnInf_OBJ655 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1094 F_Vision_Obj_Track_12: 8 VIS2_FO + SG_ FwdVsnObjTypTr12Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk12Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk12Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FVisionWidthTrk12 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FVisionMeasStatTrk12 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk12 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisionRelLaneTrk12 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk12 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO + SG_ FVisionConfTrk12 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ ObjDirTrk12 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk12 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk12 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1093 F_Vision_Obj_Track_11: 8 VIS2_FO + SG_ FwdVsnObjTypTr11Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk11Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk11Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FVisionWidthTrk11 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FVisionMeasStatTrk11 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk11 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisionRelLaneTrk11 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk11 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO + SG_ FVisionConfTrk11 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ ObjDirTrk11 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk11 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk11 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1100 F_Vision_Obj_Track_12_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT12Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk12 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk12 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk12 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk12 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr12 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk12 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo12 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1099 F_Vision_Obj_Track_11_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT11Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk11 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk11 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk11 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk11 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr11 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk11 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo11 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1098 F_Vision_Obj_Track_10_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT10Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk10 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk10 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk10 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk10 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr10 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk10 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo10 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1097 F_Vision_Obj_Track_9_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT9Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk9 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk9 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk9 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk9 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr9 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk9 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo9 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1096 F_Vision_Obj_Track_8_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT8Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk8 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk8 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk8 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk8 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr8 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk8 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo8 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1095 F_Vision_Obj_Track_7_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT7Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk7 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk7 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk7 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk7 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr7 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk7 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo7 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 863 F_Vision_GFHB_Data_FO: 8 VIS2_FO + SG_ RgDtLgtSrcHrtAngl : 49|10@0- (0.04,0) [-20.48|20.44] "deg" EOCM_F_FO + SG_ RgDtLgtSrcHrtAngVcty : 55|6@0- (1,0) [-32|31] "deg/sec" EOCM_F_FO + SG_ LfDtLgtSrcHrtAngl : 33|10@0- (0.04,0) [-20.48|20.44] "deg" EOCM_F_FO + SG_ LfDtLgtSrcHrtAnVcty : 39|6@0- (1,0) [-32|31] "deg/sec" EOCM_F_FO + SG_ AdvWthrStat : 25|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ DtctdLghtSrcDstnc : 22|7@0+ (10,0) [0|1270] "m" EOCM_F_FO + SG_ DtctdLghtSrcVrtclAngl : 1|10@0- (0.04,0) [-20.48|20.44] "deg" EOCM_F_FO + SG_ IntLghtRngAct : 2|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ DtctdLghtSrcDstncV : 3|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ TwnDtctnSts : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ DtctdLghtSrcDrvngDrctn : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 862 LGT_ControlHighBeamGlare_FO: 2 VIS2_FO + SG_ FwdCamSysOpStat : 10|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ EnvIllum : 2|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RdTyp : 5|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ AutoHgBmSts : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1068 F_Vision_Obj_Track_6_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT6Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk6 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk6 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk6 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk6 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr6 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk6 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo6 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1067 F_Vision_Obj_Track_5_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT5Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk5 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk5 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk5 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk5 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr5 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk5 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo5 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1066 F_Vision_Obj_Track_4_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT4Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk4 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk4 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk4 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk4 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr4 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk4 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo4 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1065 F_Vision_Obj_Track_3_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT3Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk3 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk3 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk3 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk3 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr3 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk3 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo3 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1064 F_Vision_Obj_Track_2_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT2Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk2 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk2 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk2 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk2 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr2 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk2 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo2 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1063 F_Vision_Obj_Track_1_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT1Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk1 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FwdVsnObjAgeTrk1 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk1 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk1 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk1 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr1 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo1 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1151 Long_Range_Radar_add_Info_5_FO: 8 LRR_FO + SG_ FrtRdrRdEdgLtLatRdEdgDst : 63|8@0- (0.1,0) [-12.8|12.7] "m/m" EOCM_F_FO + SG_ FrtRdrRdEdgLtCrvtPrvDst : 5|4@0+ (10,0) [0|150] "" EOCM_F_FO + SG_ FrtRdrRdEdgLtTanHdgAng : 15|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM_F_FO + SG_ FrtRdrRdEdgLtCrvtV : 48|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtRdrRdEdgLtCrvtGradV : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtRdrRdEdgLtCrvtGrad : 39|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM_F_FO + SG_ FrtRdrRdEdgLtCrvtConf : 55|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM_F_FO + SG_ FrtRdrRdEdgLtCrvt : 23|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM_F_FO + SG_ FrtRdrRdEdgLtTanHdgAngV : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAddInfo5BurstID : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1150 Long_Range_Radar_add_Info_4_FO: 8 LRR_FO + SG_ FrtRdrRdEdgRtLatRdEdgDst : 63|8@0- (0.1,0) [-12.8|12.7] "m/m" EOCM_F_FO + SG_ FrtRdrRdEdgRtCrvtPrvDst : 5|4@0+ (10,0) [0|150] "" EOCM_F_FO + SG_ FrtRdrRdEdgRtTanHdgAngV : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtRdrRdEdgRtTanHdgAng : 15|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM_F_FO + SG_ FrtRdrRdEdgRtCrvtV : 48|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtRdrRdEdgRtCrvtGradV : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtRdrRdEdgRtCrvtGrad : 39|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM_F_FO + SG_ FrtRdrRdEdgRtCrvtConf : 55|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM_F_FO + SG_ FrtRdrRdEdgRtCrvt : 23|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM_F_FO + SG_ FLRRAddInfo4BurstID : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1088 F_Vision_Obj_Header_2: 8 VIS2_FO + SG_ FrntVsnInPthVehBrkNwSt : 35|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FrntVsnClostPedBrkNwSt : 39|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FrntVsnClostPedObjID : 29|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FrntVsnClostPedAlrtNwFlg : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrntVsnClostPedNotftnFlg : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrntVsnInPthVehAlrtNwFlg : 2|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnVldTgtNum2 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FrtVsnTmStmp2V : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnTmStmp2 : 10|11@0+ (1,0) [0|2047] "" EOCM_F_FO + SG_ FrtVsnRollCnt2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FrtVsnBrstChksum2 : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + +BO_ 854 F_Vision_Environment_7: 3 VIS2_FO + SG_ FwdVsnCnstrctAreaDst : 13|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnCnstrctZnDet : 15|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnEgoVehLnPos : 17|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnRdTypDet : 9|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnTunnlDetd : 23|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnTunnlDst : 21|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBrstID5 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 853 F_Vision_Environment_6: 8 VIS2_FO + SG_ LnMrkg4LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvtGrad : 47|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvt : 31|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBrstID4 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 852 F_Vision_Environment_5: 8 VIS2_FO + SG_ LnMrkg3LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvtGrad : 47|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvt : 31|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBrstID3 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 602 USDT_Req_to_RRSRR: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RRSRR_FO + +BO_ 1626 USDT_Resp_From_RRSRR: 8 RRSRR_FO + SG_ DgnInf_OBJ65A : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1370 UUDT_Resp_From_RRSRR: 8 RRSRR_FO + SG_ DgnInf_OBJ55A : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1536 RR_SRR_Trace_data: 8 RRSRR_FO + SG_ RRSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ RRSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ RRSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO + +BO_ 1210 RR_SRR_Object_Track10: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1209 RR_SRR_Object_Track9: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1208 RR_SRR_Object_Track8: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1207 RR_SRR_Object_Track7: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1206 RR_SRR_Object_Track6: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1205 RR_SRR_Object_Track5: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 262 LHT_AutoHighBeamAssistStatus_FO: 5 EOCM_F_FO + SG_ NtVsnSysEnbld : 6|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO + SG_ VehMovState : 5|3@0+ (1,0) [0|7] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO + SG_ NVSysPedDetCstReq : 2|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO + SG_ StrWhAngV : 8|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO,VIS_FO + SG_ StrWhAngMsk : 9|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ StrWhAng : 23|16@0- (0.0625,0) [-2048|2047.9375] "deg" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO,VIS_FO + SG_ RtTrnLmpAtv : 13|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ MpDataAvlbl : 0|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ LftTrnLmpAtv : 11|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ HdlmpBmSelectStat : 33|2@0+ (1,0) [0|3] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ BldUpArDet : 14|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ FrFogLmpsAct : 15|1@0+ (1,0) [0|1] "" EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,NVS_FO,VIS_FO + +BO_ 309 LHT_CameraObjConfirmation_FO: 1 VIS_FO + SG_ HiBmRecmnd : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ CtLghtDet : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 2034 CCP_Data_Transmission_Object_FO: 8 VIS2_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 2032 CCP_Command_Receive_Object_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" VIS2_FO + +BO_ 1362 F_Vis_Obj_Conf_CPS_1B: 8 EOCM_F_FO + SG_ FObjConfCPSTrkObjectIDB : 7|6@0+ (1,0) [0|63] "" VIS_FO + SG_ CPSVisConfLonPos1 : 20|12@0- (0.125,0) [-256|255.875] "m" VIS_FO + SG_ CPSVisConfLatPos1 : 15|10@0- (0.125,0) [-64|63.875] "m" VIS_FO + SG_ CPSVisConfChecksum : 50|11@0+ (1,0) [0|2047] "" VIS_FO + SG_ FObjConfCPSTrkRangeRate : 45|11@0- (0.125,0) [-128|127.875] "m/s" VIS_FO + SG_ CPSConfTimeStamp : 24|11@0+ (1,0) [0|2047] "ms" VIS_FO + SG_ CPSConfTimeStampV : 21|1@0+ (1,0) [0|1] "" VIS_FO + SG_ FObjConfCPSRollingTrkCnt : 1|2@0+ (1,0) [0|3] "" VIS_FO + +BO_ 1413 TOS_ACC_IDS: 5 EOCM_F_FO + SG_ TOS_ACC_IDSRollCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ TOS_ACC_IDSFuncState : 5|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ TOS_ACC_ID1 : 3|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ TOS_ACC_ID2 : 13|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ TOS_ACC_ID3 : 23|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ TOS_ACC_ID4 : 17|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ TOS_ACC_ID5 : 27|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ TOS_ACC_ID6 : 37|6@0+ (1,0) [0|63] "" Dummy_FO + +BO_ 1412 F_ACC_Target: 8 EOCM_F_FO + SG_ FACCTOSRollCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FACCTOSFuncState : 5|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FACCTOSLongPos : 3|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FACCTOSLatPos : 23|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FACCTOSMeasStat : 28|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FACCTOSLongVel : 26|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FACCTOSTrgtDecelFlg : 47|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FACCTOSDynProp : 46|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FACCTOSLatVel : 42|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FACCTOSRelLane : 63|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FACCTOSHiThrtID : 61|6@0+ (1,0) [0|63] "" Dummy_FO + +BO_ 1409 F_CPS_TOS_B: 8 EOCM_F_FO + SG_ CPSTOSObjType : 7|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ CPSTOSHiThrtPriNo : 60|5@0+ (1,0) [0|31] "" Dummy_FO + SG_ CPSTOSRelLongAcc : 53|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ CPSTOSConfAsmt : 21|12@0+ (1,0) [0|4095] "" Dummy_FO + SG_ CPSTOSNumCycTrkd : 4|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ CPSTOSTimeToColl : 1|12@0+ (0.025,0) [0|102.375] "s" Dummy_FO + SG_ CPSTOSClosestInPthVehRng : 47|10@0+ (0.25,0) [0|255.75] "m" Dummy_FO + SG_ CPSTOSClosestInPthObID : 37|6@0+ (1,0) [0|63] "m" Dummy_FO + SG_ CPSTOSMeasStat : 39|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ CPSTOSFuncState : 25|2@0+ (1,0) [0|3] "" Dummy_FO + +BO_ 1408 F_CPS_TOS_A: 8 EOCM_F_FO + SG_ CPSTOSLongPos : 7|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ CPSTOSLatPos : 11|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ CPSTOSLongVel : 16|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ CPSTOSDynProp : 37|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ CPSTOSLatVel : 34|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ CPSTOSARelLane : 63|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ CPSTOSHiThrtID : 61|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ CPSTOSHighestThreatObAsmt : 55|8@0+ (1,0) [0|255] "" Dummy_FO + +BO_ 1344 FLPEstimate: 8 EOCM_F_FO + SG_ FLPRollCount : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ NewLaneIndex : 5|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ VehPathInOK : 3|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LaneSnsInOK : 2|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ MapInOK : 1|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FWDObjFusInOK : 0|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LngthFrstSeg : 15|4@0+ (10,0) [0|150] "m" Dummy_FO + SG_ LngthScndSeg : 11|4@0+ (10,0) [0|150] "m" Dummy_FO + SG_ CurvFrstSeg : 23|13@0- (5E-005,0) [-0.2048|0.20475] "1/m" Dummy_FO + SG_ CurvScndSeg : 26|3@0- (0.001,0) [-0.004|0.003] "1/m" Dummy_FO + SG_ OffstLaneCntr : 39|8@0- (0.05,0) [-6.4|6.35] "m" Dummy_FO + SG_ TngntLaneHead : 47|8@0- (0.002,0) [-0.256|0.254] "m/m" Dummy_FO + SG_ LaneWidth : 55|8@0+ (0.05,0) [0|12.75] "m" Dummy_FO + SG_ FLPDataTimeStampV : 63|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FLPDataTimeStamp : 62|7@0+ (16,0) [0|2032] "ms" Dummy_FO + +BO_ 770 F_Fwd_Collision_Alert: 8 EOCM_F_FO + SG_ Vpath_Accel : 51|11@0- (0.125,0) [-128|127.875] "m/s^2" NVS_FO,Dummy_FO + SG_ FCA_Ra : 7|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FCA_Range : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FCA_AlertLevel : 44|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FCA_Alert_Sup : 31|16@0+ (1,0) [0|65535] "" Dummy_FO + SG_ FCAStatus : 46|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FCA_VehAhead : 47|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FCA_CPS_Alert : 42|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FCAChime : 41|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FCADiagOK : 40|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ NBSMS_Alert : 55|1@0+ (1,0) [0|1] "" Dummy_FO + +BO_ 1601 USDT_Resp_From_VIS: 8 VIS_FO + SG_ DgnInf_OBJ641 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1606 USDT_Resp_From_RFSRR: 8 RFSRR_FO + SG_ DgnInf_OBJ646 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1603 USDT_Resp_From_LFSRR: 8 LFSRR_FO + SG_ DgnInf_OBJ643 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1602 USDT_Resp_From_LRR: 8 LRR_FO + SG_ DgnInf_OBJ642 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1625 USDT_Resp_From_RSRR: 8 RSRR_FO + SG_ DgnInf_OBJ644 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1611 USDT_Resp_From_FEOCM_FO: 8 EOCM_F_FO + SG_ DgnInf_OBJ64B : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 768 F_Smgr_Vehicle_Motion: 8 EOCM_F_FO + SG_ SmgrMotRollAngle : 44|10@0- (0.1,0) [-51.2|51.1] "deg" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotRollAngleV : 0|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotChecksum : 50|11@0+ (1,0) [0|2047] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotPitchAngle : 39|11@0- (0.1,0) [-102.4|102.3] "deg" CIPM_FO,NVS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotPitchAngleV : 1|1@0+ (1,0) [0|1] "" CIPM_FO,NVS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotLongSpeedV : 2|1@0+ (1,0) [0|1] " " CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotLongSpeed : 18|11@0- (0.1,0) [-102.4|102.3] "m/s" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotYawRate : 14|12@0- (0.05,0) [-102.4|102.35] "deg/s" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotYawRateV : 15|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + SG_ SmgrMotRollingCnt : 4|2@0+ (1,0) [0|3] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS_FO + +BO_ 1350 UUDT_Resp_From_RFSRR: 8 RFSRR_FO + SG_ DgnInf_OBJ546 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1369 UUDT_Resp_From_RSRR: 8 RSRR_FO + SG_ DgnInf_OBJ544 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1347 UUDT_Resp_From_LFSRR: 8 LFSRR_FO + SG_ DgnInf_OBJ543 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1346 UUDT_Resp_From_LRR: 8 LRR_FO + SG_ DgnInf_OBJ542 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1345 UUDT_Resp_From_VIS: 8 VIS_FO + SG_ DgnInf_OBJ541 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 579 USDT_Req_to_LFSRR: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LFSRR_FO + +BO_ 577 USDT_Req_to_VIS: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" VIS_FO + +BO_ 578 USDT_Req_to_LRR: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LRR_FO + +BO_ 582 USDT_Req_to_RFSRR: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RFSRR_FO + +BO_ 601 USDT_Req_to_RSRR: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RSRR_FO + +BO_ 1355 UUDT_Resp_From_FEOCM_FO: 8 EOCM_F_FO + SG_ DgnInf_OBJ54B : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 587 USDT_Req_to_FEOCM_obj: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2A_K2_FO,EOCM_F_FO + +BO_ 784 Body_Info_FOB: 6 EOCM_F_FO + SG_ StrgColUpDwnPos : 39|8@0+ (1,0) [0|255] "" DMS_FO + SG_ CPMAPINFO4 : 47|1@0+ (1,0) [0|1] "" DMS_FO + SG_ StrgColInOutPos : 31|8@0+ (1,0) [0|255] "" DMS_FO + SG_ StrgColCommsFlt : 19|2@0+ (1,0) [0|3] "" DMS_FO + SG_ DrDoorOpenSwActV : 16|1@0+ (1,0) [0|1] "" DMS_FO + SG_ DrDoorOpenSwAct : 17|1@0+ (1,0) [0|1] "" DMS_FO + SG_ DrvWndPosStat : 22|3@0+ (1,0) [0|7] "" CIPM_FO,DMS_FO,VIS2_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ InterLghtStat : 23|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,VIS2_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ DrvrHndsOnWhlZn3 : 13|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,DMS_FO,VIS2_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ DrvrHndsOnWhlZn2 : 14|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,VIS2_FO + SG_ DrvrHndsOnWhlZn1 : 15|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,VIS2_FO + SG_ WSWshSwAtv : 11|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,VIS_FO,VIS2_FO + SG_ SysPwrMdV : 8|1@0+ (1,0) [0|1] "" NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO,LRSRR_FO,CIPM_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,VIS2_FO + SG_ SysPwrMd : 10|2@0+ (1,0) [0|3] "" NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO,LRSRR_FO,CIPM_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,VIS2_FO + SG_ WSWprAct : 2|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ RtLwBmFld : 4|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ OtsdAmbtLtLvlStatV : 5|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ OtsdAmbtLtLvlStat : 7|2@0+ (1,0) [0|3] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ LowBmAct : 1|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ LftLwBmFld : 3|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ HighBmAct : 0|1@0+ (1,0) [0|1] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,DMS_FO,AMM_FO,NVS_FO,VIS_FO,VIS2_FO + SG_ TrStLgMdAtv : 12|1@0+ (1,0) [0|1] "" CIPM_FO,NVS_FO,RRSRR_FO,LRSRR_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,LRR_FO,RFSRR_FO,LFSRR_FO,RSRR_FO,VIS_FO,VIS2_FO + +BO_ 1539 RF_SRR_Trace_Data: 8 RFSRR_FO + SG_ RFSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ RFSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ RFSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO + +BO_ 776 F_Vehicle_Path_Data_2: 7 EOCM_F_FO + SG_ Vpath_Data2ModeInfo : 44|2@0+ (1,0) [0|3] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath2_Checksum : 42|11@0+ (1,0) [0|2047] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RFSRR_FO,LFSRR_FO,RSRR_FO,LRR_FO + SG_ Vpath_Data2RollCnt : 46|2@0+ (1,0) [0|3] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2YawRateV : 2|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2LongVelV : 1|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,NVS_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2LatVelV : 47|1@0+ (1,0) [0|1] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2TravlDirctn : 4|2@0+ (1,0) [0|3] "" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2LongVel : 15|12@0- (0.0625,0) [-128|127.9375] "m/s" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,NVS_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2YawRate : 19|12@0- (0.0625,0) [-128|127.9375] "deg/s" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,NVS_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_Data2LatVel : 39|8@0- (0.05,0) [-6.4|6.35] "m/s" CIPM_FO,DMS_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + +BO_ 161 F_Master_Time_Sync: 7 EOCM_F_FO + SG_ FTimeSyncMstrChksm : 35|12@0+ (1,0) [0|4095] "" AMM_FO,CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ FTimeSyncMstrClock : 7|32@0+ (1,0) [0|4294967295] "ms" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ SensorModeCmdLRR : 39|3@0+ (1,0) [0|7] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ SensorModeCmdSRR : 50|3@0+ (1,0) [0|7] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ SensorModeCmdFCamera : 53|3@0+ (1,0) [0|7] "" CIPM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ FTimeSyncMstrClockV : 36|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,LRR_FO,RFSRR_FO,LFSRR_FO + +BO_ 774 F_Vehicle_Path_Estimate: 8 EOCM_F_FO + SG_ Vpath_RollingCount : 7|2@0+ (1,0) [0|3] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_TrnCtrLngOfstV : 1|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,LRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LFSRR_FO + SG_ Vpath_Checksum : 50|11@0+ (1,0) [0|2047] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_TrnCtrLngOfst : 15|8@0- (0.1,0) [-12.8|12.7] "m" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,LRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LFSRR_FO + SG_ Vpath_TrnCtrLatOfst : 21|14@0- (1,0) [-8192|8191] "m" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,LRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LFSRR_FO + SG_ Vpath_Curvature : 39|16@0- (1E-005,0) [-0.32768|0.32767] "1/m" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,RSRR_FO,RFSRR_FO,LRR_FO,LFSRR_FO + SG_ Vpath_CurvatureV : 0|1@0+ (1,0) [0|1] "" CIPM_FO,AMM_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,VIS2_FO,RRSRR_FO,VIS_FO,LRR_FO,RSRR_FO,RFSRR_FO,LFSRR_FO + +BO_ 848 F_Vision_Environment: 8 VIS_FO + SG_ FwdVsnEnvIllum : 37|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnRtV : 1|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnRt : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnChngStatus : 39|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseSystemOK : 4|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSnsLLnPosValid : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSenseDistToLLnEdge : 14|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsRLnPosValid : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsDistToRLnEdge : 22|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseTimeStampV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseTimeStamp : 34|11@0+ (1,0) [0|2047] "ms" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseSystemOKV : 3|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 849 F_Vision_Environment_2: 8 VIS_FO + SG_ LnSnsLatVRelToRgtMrkg : 23|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ LnSnsRtLnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntRtV : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnMrkgWdthRt : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsRtAnchrLn : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtAnchrLn : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrRghtV : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrRght : 47|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntRt : 31|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstID : 2|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLatVRelToLftMrkg : 15|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 1184 R_SRR_Object_Header: 8 RSRR_FO + SG_ RSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ RSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ RSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + SG_ RSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1185 R_SRR_Object_Track1: 8 RSRR_FO + SG_ RSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1186 R_SRR_Object_Track2: 8 RSRR_FO + SG_ RSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1187 R_SRR_Object_Track3: 8 RSRR_FO + SG_ RSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1188 R_SRR_Object_Track4: 8 RSRR_FO + SG_ RSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1189 R_SRR_Object_Track5: 8 RSRR_FO + SG_ RSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1190 R_SRR_Object_Track6: 8 RSRR_FO + SG_ RSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1191 R_SRR_Object_Track7: 8 RSRR_FO + SG_ RSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1192 R_SRR_Object_Track8: 8 RSRR_FO + SG_ RSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1193 R_SRR_Object_Track9: 8 RSRR_FO + SG_ RSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1194 R_SRR_Object_Track10: 8 RSRR_FO + SG_ RSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1410 RVB_TVR_Debug: 6 EOCM_F_FO + SG_ VBBrkRqActv : 7|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ PATOSTTC : 37|12@0+ (0.025,0) [0|102.375] "s" Dummy_FO + SG_ BWTOSObjID : 27|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ BWTOSLonPstn : 23|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ VBSwInd : 10|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ VBBrkCtrlSt : 15|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ BrkPlsRqst : 6|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VBOpSt : 12|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ VBAccelOvrrd : 0|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VBUnavail : 1|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VBFld : 2|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VBDisbld : 3|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VBEnbl : 4|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VBBrkPrfReq : 5|1@0+ (1,0) [0|1] "" Dummy_FO + +BO_ 1216 LF_SRR_Object_Header: 8 LFSRR_FO + SG_ LFSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ LFSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ LFSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + SG_ LFSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ LFSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1217 LF_SRR_Object_Track1: 8 LFSRR_FO + SG_ LFSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1218 LF_SRR_Object_Track2: 8 LFSRR_FO + SG_ LFSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1219 LF_SRR_Object_Track3: 8 LFSRR_FO + SG_ LFSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1220 LF_SRR_Object_Track4: 8 LFSRR_FO + SG_ LFSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1221 LF_SRR_Object_Track5: 8 LFSRR_FO + SG_ LFSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1222 LF_SRR_Object_Track6: 8 LFSRR_FO + SG_ LFSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1223 LF_SRR_Object_Track7: 8 LFSRR_FO + SG_ LFSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1224 LF_SRR_Object_Track8: 8 LFSRR_FO + SG_ LFSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1225 LF_SRR_Object_Track9: 8 LFSRR_FO + SG_ LFSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1226 LF_SRR_Object_Track10: 8 LFSRR_FO + SG_ LFSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ LFSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ LFSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ LFSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ LFSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ LFSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ LFSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ LFSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + +BO_ 1232 RF_SRR_Object_Header: 8 RFSRR_FO + SG_ RFSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RFSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ RFSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ RFSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + SG_ RFSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1233 RF_SRR_Object_Track1: 8 RFSRR_FO + SG_ RFSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1234 RF_SRR_Object_Track2: 8 RFSRR_FO + SG_ RFSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1235 RF_SRR_Object_Track3: 8 RFSRR_FO + SG_ RFSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1236 RF_SRR_Object_Track4: 8 RFSRR_FO + SG_ RFSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1237 RF_SRR_Object_Track5: 8 RFSRR_FO + SG_ RFSrrTrkObsRange5 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth5 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange5 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate5 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth5 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID5 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation5 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp5 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1238 RF_SRR_Object_Track6: 8 RFSRR_FO + SG_ RFSrrTrkObsRange6 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth6 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange6 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate6 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth6 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID6 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation6 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp6 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1239 RF_SRR_Object_Track7: 8 RFSRR_FO + SG_ RFSrrTrkObsRange7 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth7 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange7 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate7 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth7 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID7 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation7 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp7 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1240 RF_SRR_Object_Track8: 8 RFSRR_FO + SG_ RFSrrTrkObsRange8 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth8 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange8 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate8 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth8 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID8 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation8 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp8 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1241 RF_SRR_Object_Track9: 8 RFSRR_FO + SG_ RFSrrTrkObsRange9 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth9 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange9 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate9 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth9 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID9 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation9 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp9 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1242 RF_SRR_Object_Track10: 8 RFSRR_FO + SG_ RFSrrTrkObsRange10 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RFSrrTrkRawAzimuth10 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RFSrrBurstID10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkRange10 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RFSrrTrkRRate10 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RFSrrTrkAzimuth10 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RFSrrTrkObjID10 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RFSrrTrkObjElevation10 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RFSrrTrkDynamProp10 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RFSrrTrkMeasStatus10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1056 F_Vision_Obj_Header: 6 VIS_FO + SG_ FVsnSnsrBlckd : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ ClstInPathVehObjID : 30|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FrtVsnFld : 6|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnIniDiagSuccCmpt : 5|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnSrvAlgnInPrcs : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnUnvlbl : 7|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVISModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FVisionNumValidTrgts : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FVisionTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ VISBurstChecksum : 39|16@0+ (1,0) [0|65535] "" EOCM_F_FO + +BO_ 1057 F_Vision_Obj_Track_1: 8 VIS_FO + SG_ FwdVsnRngTrk1Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk1Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr1Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk1 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisBurstIDTrk1 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk1 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk1 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk1 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk1 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ ObjDirTrk1 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1058 F_Vision_Obj_Track_2: 8 VIS_FO + SG_ FwdVsnVertPosTrk2 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk2Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk2Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ ObjDirTrk2 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FwdVsnObjTypTr2Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FVisBurstIDTrk2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk2 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk2 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk2 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk2 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1059 F_Vision_Obj_Track_3: 8 VIS_FO + SG_ FwdVsnVertPosTrk3 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk3Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk3Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr3Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk3 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk3 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk3 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk3 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk3 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk3 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1060 F_Vision_Obj_Track_4: 8 VIS_FO + SG_ FwdVsnVertPosTrk4 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisionMeasStatTrk4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk4 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FwdVsnRngTrk4Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk4Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr4Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FVisBurstIDTrk4 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk4 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ ObjDirTrk4 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionConfTrk4 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk4 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1061 F_Vision_Obj_Track_5: 8 VIS_FO + SG_ FwdVsnVertPosTrk5 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk5Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk5Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr5Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk5 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk5 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk5 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk5 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk5 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk5 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1062 F_Vision_Obj_Track_6: 8 VIS_FO + SG_ FwdVsnVertPosTrk6 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk6Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk6Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr6Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk6 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk6 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk6 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk6 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk6 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk6 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1538 LF_SRR_Trace_Data: 8 LFSRR_FO + SG_ LFSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ LFSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ LFSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO + +BO_ 1537 R_SRR_Trace_data: 8 RSRR_FO + SG_ RSRRYear : 7|8@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ RSRRSerialNmbr : 39|32@0+ (1,0) [0|0] "" EOCM_F_FO + SG_ RSRRJulianDate : 15|24@0+ (1,0) [0|0] "" EOCM_F_FO + +BO_ 1089 F_Vision_Obj_Track_7: 8 VIS2_FO + SG_ FVisBurstIDTrk7 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk7 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk7 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk7 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk7 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FwdVsnRngTrk7Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnObjTypTr7Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk7Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnVertPosTrk7 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ ObjDirTrk7 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1090 F_Vision_Obj_Track_8: 8 VIS2_FO + SG_ FVisBurstIDTrk8 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk8 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk8Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnVertPosTrk8 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk8Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnObjTypTr8Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk8 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionConfTrk8 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk8 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk8 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1091 F_Vision_Obj_Track_9: 8 VIS2_FO + SG_ FwdVsnVertPosTrk9 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk9Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk9Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr9Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk9 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk9 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk9 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk9 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk9 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk9 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1092 F_Vision_Obj_Track_10: 8 VIS2_FO + SG_ FwdVsnRngTrk10Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk10Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr10Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk10 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ ObjDirTrk10 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk10 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk10 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk10 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk10 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk10 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1120 F_LRR_Obj_Header: 8 LRR_FO + SG_ FLRRRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRModeCmdFdbk : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRNumValidTargets : 20|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ FLRRTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRTimeStamp : 2|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ FLRRRoadTypeInfo : 5|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + SG_ FLRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRLonVelPlsblityFlt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRYawRtPlsblityFlt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRTunlDtctd : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1121 F_LRR_Obj_Track_1: 8 LRR_FO + SG_ FLRRTrk1BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk1Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk1RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk1RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk1DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk1Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk1Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk1MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk1ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FLRRTrk1Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1122 F_LRR_Obj_Track_2: 8 LRR_FO + SG_ FLRRTrk2BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk2Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk2RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk2RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk2DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk2Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk2Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk2MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk2ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FLRRTrk2Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1123 F_LRR_Obj_Track_3: 8 LRR_FO + SG_ FLRRTrk3BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk3Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk3RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk3RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk3DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk3Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk3Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk3MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk3ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FLRRTrk3Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1124 F_LRR_Obj_Track_4: 8 LRR_FO + SG_ FLRRTrk4BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk4Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk4RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk4RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk4DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk4Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk4Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk4MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk4ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FLRRTrk4Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1125 F_LRR_Obj_Track_5: 8 LRR_FO + SG_ FLRRTrk5BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk5Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk5RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk5RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk5DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk5Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk5Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk5MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk5ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FLRRTrk5Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1126 F_LRR_Obj_Track_6: 8 LRR_FO + SG_ FLRRTrk6BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk6Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk6RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk6Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk6RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk6DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk6Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk6Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk6MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk6ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1127 F_LRR_Obj_Track_7: 8 LRR_FO + SG_ FLRRTrk7Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk7BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk7Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk7RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk7RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk7DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk7Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk7Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk7MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk7ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1128 F_LRR_Obj_Track_8: 8 LRR_FO + SG_ FLRRTrk8Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk8BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk8Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk8RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk8RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk8DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk8Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk8Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk8MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk8ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1129 F_LRR_Obj_Track_9: 8 LRR_FO + SG_ FLRRTrk9Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk9BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk9Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk9RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk9RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk9DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk9Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk9Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk9MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk9ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1130 F_LRR_Obj_Track_10: 8 LRR_FO + SG_ FLRRTrk10Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk10BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk10Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk10RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk10RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk10DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk10Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk10Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk10MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk10ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1131 F_LRR_Obj_Track_11: 8 LRR_FO + SG_ FLRRTrk11Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk11BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk11Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk11RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk11RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk11DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk11Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk11Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk11MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk11ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1132 F_LRR_Obj_Track_12: 8 LRR_FO + SG_ FLRRTrk12Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk12BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk12Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk12RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk12RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk12DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk12Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk12Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk12MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk12ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1133 F_LRR_Obj_Track_13: 8 LRR_FO + SG_ FLRRTrk13Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk13BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk13Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk13RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk13RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk13DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk13Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk13Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk13MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk13ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1134 F_LRR_Obj_Track_14: 8 LRR_FO + SG_ FLRRTrk14Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk14BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk14Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk14RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk14RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk14DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk14Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk14Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk14MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk14ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1135 F_LRR_Obj_Track_15: 8 LRR_FO + SG_ FLRRTrk15Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk15MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk15Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk15ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FLRRTrk15BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk15Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk15RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk15RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk15DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk15Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + +BO_ 1136 F_LRR_Obj_Track_16: 8 LRR_FO + SG_ FLRRTrk16Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk16BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk16Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk16RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk16RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk16DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk16Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk16Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk16MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk16ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1137 F_LRR_Obj_Track_17: 8 LRR_FO + SG_ FLRRTrk17Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk17BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk17Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk17RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk17RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk17DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk17Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk17Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk17MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk17ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1138 F_LRR_Obj_Track_18: 8 LRR_FO + SG_ FLRRTrk18Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk18BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk18Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk18RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk18RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk18DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk18Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk18Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk18MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk18ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1139 F_LRR_Obj_Track_19: 8 LRR_FO + SG_ FLRRTrk19Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk19BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk19Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk19RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk19RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk19DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk19Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk19Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk19MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk19ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1140 F_LRR_Obj_Track_20: 8 LRR_FO + SG_ FLRRTrk20Conf : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk20BurstID : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk20Range : 5|11@0+ (0.125,0) [0|255.875] "m" EOCM_F_FO + SG_ FLRRTrk20RangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ FLRRTrk20RangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" EOCM_F_FO + SG_ FLRRTrk20DynProp : 38|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk20Azimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" EOCM_F_FO + SG_ FLRRTrk20Width : 55|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FLRRTrk20MeasStatus : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk20ObjectID : 61|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1141 Long_Range_Radar_add_Info_1: 8 LRR_FO + SG_ FLRRAddInfo1BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ Cut_In_Out_Pot_Objtrk1 : 15|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO + SG_ ObjLossInfoObjTrk1 : 9|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ Cut_In_Out_Pot_Objtrk2 : 23|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO + SG_ ObjLossInfoObjTrk2 : 17|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ Cut_In_Out_Pot_Objtrk3 : 31|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO + SG_ ObjLossInfoObjTrk3 : 25|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ Cut_In_Out_Pot_Objtrk4 : 39|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO + SG_ ObjLossInfoObjTrk4 : 33|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ Cut_In_Out_Pot_Objtrk5 : 47|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO + SG_ ObjLossInfoObjTrk5 : 41|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ Cut_In_Out_Pot_Objtrk6 : 55|6@0+ (0.02,0) [0|1.26] "" EOCM_F_FO + SG_ ObjLossInfoObjTrk6 : 49|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1321 F_Fwd_Fus_Obj_TrackB_9: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn9 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB9RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB9Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB9MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB9DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB9RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB9RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB9Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB9ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB9ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB9ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB9ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB9ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB9ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB9NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB9LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB9LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1320 F_Fwd_Fus_Obj_TrackB_8: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn8 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB8RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB8Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB8MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB8DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB8RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB8RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB8Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB8ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB8ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB8ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB8ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB8ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB8ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB8NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB8LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB8LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1319 F_Fwd_Fus_Obj_TrackB_7: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn7 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB7RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB7Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB7MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB7DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB7RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB7RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB7Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB7ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB7ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB7ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB7ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB7ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB7ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB7NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB7LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB7LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1318 F_Fwd_Fus_Obj_TrackB_6: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn6 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB6RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB6Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB6MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB6DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB6RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB6RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB6Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB6ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB6ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB6ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB6ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB6ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB6ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB6NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB6LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB6LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1317 F_Fwd_Fus_Obj_TrackB_5: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn5 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB5RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB5Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB5MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB5DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB5RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB5RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB5Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB5ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB5ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB5ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB5ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB5ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB5ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB5NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB5LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB5LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1316 F_Fwd_Fus_Obj_TrackB_4: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn4 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB4RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB4Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB4MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB4DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB4RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB4RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB4Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB4ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB4ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB4ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB4ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB4ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB4ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB4NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB4LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB4LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1315 F_Fwd_Fus_Obj_TrackB_3: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn3 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB3RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB3Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB3MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB3DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB3RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB3RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB3Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB3ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB3ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB3ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB3ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB3ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB3ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB3NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB3LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB3LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1314 F_Fwd_Fus_Obj_TrackB_2: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn2 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB2RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB2Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB2MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB2DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB2RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB2RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB2Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB2ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB2ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB2ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB2ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB2ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB2ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB2NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB2LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB2LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1327 F_Fwd_Fus_Obj_TrackB_15: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn15 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB15RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB15Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB15MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB15DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB15RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB15RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB15Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB15ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB15ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB15ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB15ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTkB15ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB15ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB15NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB15LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB15LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1326 F_Fwd_Fus_Obj_TrackB_14: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn14 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB14RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB14Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB14MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB14DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB14RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB14RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB14Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB14ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB14ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB14ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB14ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB14ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB14ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB14NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB14LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB14LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1325 F_Fwd_Fus_Obj_TrackB_13: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn13 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB13RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB13Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB13MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB13DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB13RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB13RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB13Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB13ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB13ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB13ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB13ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB13ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB13ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB13NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB13LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB13LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1324 F_Fwd_Fus_Obj_TrackB_12: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn12 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB12RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB12Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB12MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB12DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB12RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB12RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB12Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB12ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB12ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB12ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB12ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB12ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB12ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB12NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB12LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB12LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1323 F_Fwd_Fus_Obj_TrackB_11: 7 EOCM_F_FO + SG_ FwdFusTrkB11DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB11RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB11RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB11Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB11ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB11ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB11ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB11ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB11ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB11ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB11NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB11LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB11LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkBAnlgRlLn11 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB11RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB11Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB11MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + +BO_ 1322 F_Fwd_Fus_Obj_TrackB_10: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn10 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB10RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB10Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB10MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB10DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB10RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB10RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB10Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB10ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB10ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB10ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB10ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB10ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB10ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB10NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB10LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB10LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1313 F_Fwd_Fus_Obj_TrackB_1: 7 EOCM_F_FO + SG_ FwdFusTrkBAnlgRlLn1 : 46|8@0- (0.1,0) [-12.8|12.7] "" Dummy_FO + SG_ FwdFusTrkB1RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB1Width : 5|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FwdFusTrkB1MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkB1DynProp : 11|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB1RelLnAccl : 8|9@0- (0.125,0) [-32|31.875] "m/s^2" Dummy_FO + SG_ FwdFusTrkB1RelLane : 31|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkB1Height : 54|6@0+ (0.25,0) [0|15.75] "m" Dummy_FO + SG_ FFusTrkB1ObjSrcLFSrr : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB1ObjSrcLCSrr : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB1ObjSrcRCSrr : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB1ObjSrcRFSrr : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FFusTrkB1ObjSrcVIs : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB1ObjSrcLrr : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FwdFusTrkB1NmCycTrkd : 39|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB1LatPosDev : 36|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkB1LngPosDev : 33|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1305 F_Fwd_Fus_Obj_TrackA_9: 8 EOCM_F_FO + SG_ FwdFusTrkA9RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA9ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA9MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA9LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA9RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA9Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA9LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA9RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA9MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA9ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1304 F_Fwd_Fus_Obj_TrackA_8: 8 EOCM_F_FO + SG_ FwdFusTrkA8RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA8ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA8MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA8LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA8RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA8Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA8LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA8RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA8MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA8ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1303 F_Fwd_Fus_Obj_TrackA_7: 8 EOCM_F_FO + SG_ FwdFusTrkA7RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA7ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA7MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA7LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA7RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA7Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA7LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA7RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA7MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA7ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1302 F_Fwd_Fus_Obj_TrackA_6: 8 EOCM_F_FO + SG_ FwdFusTrkA6RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA6ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA6MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA6LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA6RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA6Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA6LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA6RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA6MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA6ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1301 F_Fwd_Fus_Obj_TrackA_5: 8 EOCM_F_FO + SG_ FwdFusTrkA5RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA5ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA5MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA5LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA5RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA5Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA5LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA5RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA5MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA5ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1300 F_Fwd_Fus_Obj_TrackA_4: 8 EOCM_F_FO + SG_ FwdFusTrkA4RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA4ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA4MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA4LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA4RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA4Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA4LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA4RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA4MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA4ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1299 F_Fwd_Fus_Obj_TrackA_3: 8 EOCM_F_FO + SG_ FwdFusTrkA3RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA3ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA3MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA3LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA3RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA3Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA3LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA3RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA3MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA3ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1298 F_Fwd_Fus_Obj_TrackA_2: 8 EOCM_F_FO + SG_ FwdFusTrkA2RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA2ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA2MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA2LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA2RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA2Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA2LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA2RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA2MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA2ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1311 F_Fwd_Fus_Obj_TrackA_15: 8 EOCM_F_FO + SG_ FwdFusTrkA15RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA15ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA15MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA15LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA15RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA15Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA15LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA15RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA15MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA15ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1310 F_Fwd_Fus_Obj_TrackA_14: 8 EOCM_F_FO + SG_ FwdFusTrkA14RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA14ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA14MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA14LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA14RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA14Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA14LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA14RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA14MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA14ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1309 F_Fwd_Fus_Obj_TrackA_13: 8 EOCM_F_FO + SG_ FwdFusTrkA13RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA13ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA13MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA13LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA13RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA13Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA13LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA13RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA13MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA13ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1308 F_Fwd_Fus_Obj_TrackA_12: 8 EOCM_F_FO + SG_ FwdFusTrkA12RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA12ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA12MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA12LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA12RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA12Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA12LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA12RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA12MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA12ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1307 F_Fwd_Fus_Obj_TrackA_11: 8 EOCM_F_FO + SG_ FwdFusTrkA11ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA11MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA11LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA11RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA11Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA11LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA11RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA11MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA11ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + SG_ FwdFusTrkA11RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + +BO_ 1306 F_Fwd_Fus_Obj_TrackA_10: 8 EOCM_F_FO + SG_ FwdFusTrkA10RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA10ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA10MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA10LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA10RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA10Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA10LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA10RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA10MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA10ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1297 F_Fwd_Fus_Obj_TrackA_1: 8 EOCM_F_FO + SG_ FwdFusTrkA1RollingCnt : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA1ObjectID : 5|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ FwdFusTrkA1MsgIndex : 15|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ FwdFusTrkA1LongPos : 11|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + SG_ FwdFusTrkA1RelLongVel : 31|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA1Confidence : 36|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA1LatPos : 34|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ FwdFusTrkA1RelLatVel : 55|11@0- (0.125,0) [-128|127.875] "m/s" Dummy_FO + SG_ FwdFusTrkA1MeasStatus : 60|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ FwdFusTrkA1ObjType : 58|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 1296 F_Fwd_Fus_Obj_Header: 7 EOCM_F_FO + SG_ F_FusHeadRollingCount : 7|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ F_FusHeadFuncState : 5|2@0+ (1,0) [0|3] "" Dummy_FO + SG_ F_FusHedNmValTargts : 3|4@0+ (1,0) [0|15] "" Dummy_FO + SG_ F_FusHead_LrrOK : 15|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHead_LFSRROK : 14|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHead_VIsOK : 13|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHead_MapDataOK : 12|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHeadTimStmpV : 11|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHeadTimStmp : 10|11@0+ (1,0) [0|2047] "ms" Dummy_FO + SG_ F_FusHead_LCSRROK : 31|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHead_RCSRROK : 30|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHead_RFSRROK : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ F_FusHed_ObjClstrCurv : 28|13@0- (5E-005,0) [-0.2048|0.20475] "1/m" Dummy_FO + SG_ F_FusHdObjClstTanHdng : 47|8@0- (0.002,0) [-0.256|0.254] "m/m" Dummy_FO + SG_ RoadTypeInfo : 55|3@0+ (1,0) [0|7] "" Dummy_FO + +BO_ 257 USDT_Req_to_All_FO_ECUs: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LRSRR_FO,_DOFIMU2_FO,_DOFIMU1_FO,DMS_FO,AMM_FO,EOCM2A_K2_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM2A_IMX6_FO,EOCM2A_K1_FO,NVS_FO,CIPM_FO,VIS2_FO,RRSRR_FO,VIS_FO,RFSRR_FO,LRR_FO,LFSRR_FO,RSRR_FO,EOCM_F_FO + +BO_ 584 USDT_Req_to_6DOFIMU2_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" _DOFIMU2_FO + +BO_ 1348 UUDT_Resp_From_6DOFIMU1_FO: 8 _DOFIMU1_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1604 USDT_Resp_From_6DOFIMU1_FO: 8 _DOFIMU1_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 580 USDT_Req_to_6DOFIMU1_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" _DOFIMU1_FO + +BO_ 1349 UUDT_Resp_From_DMS_FO: 8 DMS_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1605 USDT_Resp_From_DMS_FO: 8 DMS_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 581 USDT_Req_to_DMS_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" DMS_FO + +BO_ 1372 UUDT_Resp_From_AMM_FO: 8 AMM_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1628 USDT_Resp_From_AMM_FO: 8 AMM_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 604 USDT_Req_to_AMM_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" AMM_FO + +BO_ 1622 USDT_Resp_From_EOCM2B_IMX6_FO: 8 EOCM2B_IMX6_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 1366 UUDT_Resp_From_EOCM2B_IMX6_FO: 8 EOCM2B_IMX6_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" TestTool_FO + +BO_ 598 USDT_Req_to_EOCM2B_IMX6_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" EOCM2B_IMX6_FO + +BO_ 590 USDT_Req_to_Free_4E_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Vector__XXX + +BO_ 1338 VPDR_Debug: 8 EOCM_F_FO + SG_ FrtRWARateDiagFA : 43|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FrtRWABiasDiagFA : 42|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ HWAFrtVal : 41|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ HWADotValFrt : 40|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAxRangeFA : 39|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAxRateFA : 38|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAxBiasFA : 37|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehAxCompFA : 36|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAxVal : 35|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAxVal : 34|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FrtRWACorrFA : 33|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FrtRWARangeDiagFA : 32|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAyBiasFA : 31|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehAyCompFA : 30|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAyVal : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAyVal : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehAxCorrFA : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAxRangeFA : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAxRateFA : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAxBiasFA : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehWzVal : 23|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehWzVal : 22|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehAyCorrDiagFA : 21|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAyRangeFA : 20|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAyRateFA : 19|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehAyBiasFA : 18|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAyRangeFA : 17|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehAyRateFA : 16|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehWzCorrDiagFA : 15|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehWzRangeFA : 14|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehWzRateFA : 13|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S1VehWzBiasFA : 12|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehWzRangeFA : 11|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehWzRateFA : 10|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ S2VehWzBiasFA : 9|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehWzCompFA : 8|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlVxLFCorrDiagFA : 7|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlVxRFCorrDiagFA : 6|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlVxLRCorrDiagFA : 5|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlVxRRCorrDiagFA : 4|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlLFVal : 3|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlRFVal : 2|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlLRVal : 1|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ WhlRRVal : 0|1@0+ (1,0) [0|1] "" Dummy_FO + +BO_ 1328 Diag_Debug1: 8 EOCM_F_FO + SG_ AlrtWrnIndReqFP : 1|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AlrtWrnIndReqFA : 0|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILRSRRSnsr_FP : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILRSRRSnsr_FA : 23|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILRSRRFrehns_FA : 22|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathEstCrvCSFP : 21|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathEstCrvCSFA : 20|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathWzEstCSFP : 19|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathWzEstCSFA : 18|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathVyEstCSFP : 17|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathVyEstCSFA : 16|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathVxEstCSFP : 15|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VehPathVxEstCSFA : 14|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTTCCSFP : 13|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTTCCSFA : 12|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLyCSFP : 11|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLyCSFA : 10|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThLxVxAxCSFP : 9|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThLxVxAxCSFA : 8|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ CurSetValDiagFP : 7|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ CurSetValDiagFA : 6|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ CrsAltDvrSlTpDiagFP : 5|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ CrsAltDvrSlTpDiagFA : 4|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FCAStatDiagFP : 3|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FCAStatDiagFA : 2|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBBrkCtrlStFP : 62|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBBrkCtrlStFA : 61|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBOpStFP : 60|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBOpStFA : 59|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBBrkCtrlAccFP : 58|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBBrkCtrlAccFA : 57|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBAxlTrqRqFP : 56|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ RVBAxlTrqRqFA : 55|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRUPATTCFP : 54|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRUPATTCFA : 53|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtObjIDFP : 52|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtObjIDFA : 51|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtTTCFP : 50|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtTTCFA : 49|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtLxFP : 48|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtLxFA : 47|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtLyFP : 46|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TVRHiThrtLyFA : 45|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFFuncStFP : 44|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFFuncStFA : 43|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFObjIDFP : 42|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFObjIDFA : 41|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFLatPstnVelRatFP : 40|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFLatPstnVelRatFA : 39|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFLonPstnVelFP : 38|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFLonPstnVelFA : 37|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFRltvLatVelDiagFP : 36|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFRltvLatVelDiagFA : 35|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFRltvLatPstnDiagFP : 34|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFRltvLatPstnDiagFA : 33|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFNrRltvLonPstnFP : 32|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFNrRltvLonPstnFA : 31|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFLonPstnVelRatFP : 30|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFLonPstnVelRatFA : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFConfDiagFP : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFConfDiagFA : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFRltvLnDiagFP : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ROFRltvLnDiagFA : 25|1@0+ (1,0) [0|1] "" Dummy_FO + +BO_ 1335 Diag_Debug3: 8 EOCM_F_FO + SG_ BrkSysCmdAxDiagFPQ : 63|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ BrkSysCmdAxDiagFAQ : 62|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AxleTorqReqDiagFPQ : 61|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AxleTorqReqDiagFAQ : 60|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AutoBrkTypeDiagFPQ : 59|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AutoBrkTypeDiagFAQ : 58|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTTCFPQ : 57|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTTCFAQ : 56|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTmpMemFPQ : 55|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTmpMemFAQ : 54|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLxVxAxFPQ : 53|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLxVxAxFAQ : 52|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtVyFPQ : 51|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtVyFAQ : 50|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLyFPQ : 49|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLyFAQ : 48|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtConPriFPQ : 47|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtConPriFAQ : 46|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtCJLFPQ : 45|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtCJLFAQ : 44|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPDynPropDiagFPQ : 43|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPDynPropDiagFAQ : 42|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRdTypInfoFPQ : 41|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRdTypInfoFAQ : 40|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRltvLnDiagFPQ : 39|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRltvLnDiagFAQ : 38|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumCycDiagFPQ : 37|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumCycDiagFAQ : 36|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumFusCyclsFPQ : 35|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumFusCyclsFAQ : 34|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNrRltvLonPstnFPQ : 33|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNrRltvLonPstnFAQ : 32|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonVelAccRatFPQ : 31|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonVelAccRatFAQ : 30|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPstnVelRatFPQ : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPstnVelRatFAQ : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPosVelAccFPQ : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPosVelAccFAQ : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatVelDiagFPQ : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatVelDiagFAQ : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatPstnDiagFPQ : 23|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatPstnDiagFAQ : 22|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFConfDiagFPQ : 21|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFConfDiagFAQ : 20|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFOvrlpRtlChk_FAQ : 19|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFOvrlpRtlChk_FAQ : 18|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRROvrlpRtlChk_FAQ : 17|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISOvrlpRtlChk_FAQ : 16|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISAlign_FAQ : 15|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISSnsr_FAQ : 14|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISSnsr_FPQ : 13|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISFrshns_FAQ : 12|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRAlign_FAQ : 11|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRFrshns_FAQ : 10|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRSnsr_FAQ : 9|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRSnsr_FPQ : 8|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRAlign_FAQ : 7|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRFrehns_FAQ : 6|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRSnsr_FAQ : 5|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRSnsr_FPQ : 4|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRSnsr_FPQ : 3|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRSnsr_FAQ : 2|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRFrshns_FAQ : 1|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRAlign_FAQ : 0|1@0+ (1,0) [0|1] "" Dummy_FO + +BO_ 1331 Diag_Debug2: 8 EOCM_F_FO + SG_ TCPHiThrtTmpMemFP : 63|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTmpMemFA : 62|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtConPriFP : 61|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtConPriFA : 60|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtCJLFP : 59|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTTCFP : 58|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtTTCFA : 57|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtVyFP : 56|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtVyFA : 55|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLyFP : 54|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLyFA : 53|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLxVxAxFP : 52|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtLxVxAxFA : 51|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRdTypInfoFP : 50|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRdTypInfoFA : 49|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AutoBrkTypeDiagFA : 48|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ BrkSysCmdAxDiagFP : 47|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ BrkSysCmdAxDiagFA : 46|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AxleTorqReqDiagFP : 45|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AxleTorqReqDiagFA : 44|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPDynPropDiagFP : 43|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPDynPropDiagFA : 42|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ TCPHiThrtCJLFA : 41|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumFusCyclsFP : 40|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ AutoBrkTypeDiagFP : 39|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumFusCyclsFA : 38|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatVelDiagFP : 37|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatVelDiagFA : 36|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatPstnDiagFP : 35|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLatPstnDiagFA : 34|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumCycDiagFP : 33|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNumCycDiagFA : 32|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRltvLnDiagFP : 31|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFRltvLnDiagFA : 30|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFConfDiagFP : 29|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFConfDiagFA : 28|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonVelAccRatFP : 27|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonVelAccRatFA : 26|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPstnVelRatFP : 25|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPstnVelRatFA : 24|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNrRltvLonPstnFP : 23|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFNrRltvLonPstnFA : 22|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPosVelAccFP : 21|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ FOFLonPosVelAccFA : 20|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISOvrlpRtlChk_FA : 19|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRROvrlpRtlChk_FA : 18|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFOvrlpRtlChk_FA : 17|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFOvrlpRtlChk_FA : 16|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISAlign_FA : 15|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISFrshns_FA : 14|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISSnsr_FP : 13|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ VISSnsr_FA : 12|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRAlign_FA : 11|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRFrshns_FA : 10|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRSnsr_FP : 9|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ LRRSnsr_FA : 8|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRAlign_FA : 7|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRFrehns_FA : 6|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRSnsr_FP : 5|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ IRFSRRSnsr_FA : 4|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRAlign_FA : 3|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRFrshns_FA : 2|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRSnsr_FP : 1|1@0+ (1,0) [0|1] "" Dummy_FO + SG_ ILFSRRSnsr_FA : 0|1@0+ (1,0) [0|1] "" Dummy_FO + +BO_ 1787 AL_Test_Tool_Rsp_RFSRR: 8 RFSRR_FO + SG_ RFSRREngRspDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Dummy_FO + +BO_ 1788 AL_Test_Tool_Rsp_LFSRR: 8 LFSRR_FO + SG_ LFSRREngRspDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Dummy_FO + +BO_ 1790 AL_Test_Tool_Req_RFSRR: 8 Dummy_FO + SG_ RFSRREngCmdDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RFSRR_FO + +BO_ 1791 AL_Test_Tool_Req_LFSRR: 8 Dummy_FO + SG_ LFSRREngCmdDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" LFSRR_FO + +BO_ 1786 AL_Test_Tool_Rsp_RSRR: 8 RSRR_FO + SG_ RSRREngRspDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" Dummy_FO + +BO_ 1789 AL_Test_Tool_Req_RSRR: 8 Dummy_FO + SG_ RSRREngCmdDta : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" RSRR_FO + +BO_ 1149 F_LRR_Azmth_Rate_Info_4: 8 LRR_FO + SG_ FLRRTrk20AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk19AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk18AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk17AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk16AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRAzRtInf4BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1148 F_LRR_Azmth_Rate_Info_3: 8 LRR_FO + SG_ FLRRTrk15AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk14AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk13AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk12AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk11AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRAzRtInf3BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1147 F_LRR_Azmth_Rate_Info_2: 8 LRR_FO + SG_ FLRRTrk9AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk8AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk7AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk6AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk10AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRAzRtInf2BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1146 F_LRR_Azmth_Rate_Info_1: 8 LRR_FO + SG_ FLRRTrk5AzmthRate : 50|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk4AzmthRate : 45|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk3AzmthRate : 24|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk2AzmthRate : 19|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRTrk1AzmthRate : 14|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FLRRAzRtInf1BurstID : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1143 Long_Range_Radar_add_Info_3: 8 LRR_FO + SG_ FLRRAddInfo3BurstID : 57|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk13ObstType : 60|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk20ObstTypeConf : 52|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk20ObstType : 55|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk19ObstTypeConf : 44|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk19ObstType : 47|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk18ObstTypeConf : 36|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk18ObstType : 39|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk17ObstTypeConf : 28|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk17ObstType : 31|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk16ObstTypeConf : 20|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk16ObstType : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk15ObstTypeConf : 12|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk15ObstType : 15|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk14ObstTypeConf : 4|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk14ObstType : 7|3@0+ (1,0) [0|7] "" EOCM_F_FO + +BO_ 1142 Long_Range_Radar_add_Info_2: 8 LRR_FO + SG_ FLRRAddInfo2BurstID : 62|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRTrk13ObstTypeConf : 60|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk12ObstTypeConf : 52|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk12ObstType : 55|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk11ObstTypeConf : 44|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk11ObstType : 47|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk10ObstTypeConf : 36|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk10ObstType : 39|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk9ObstTypeConf : 28|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk9ObstType : 31|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk8ObstTypeConf : 20|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk8ObstType : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk7ObstTypeConf : 12|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk7ObstType : 15|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRTrk1ObstTypeConf : 4|5@0+ (0.0323,0) [0|1.0013] "" EOCM_F_FO + SG_ FLRRTrk1ObstType : 7|3@0+ (1,0) [0|7] "" EOCM_F_FO + +BO_ 851 F_Vision_Environment_4: 8 VIS_FO + SG_ LnMrkg3LnPrvwDst : 45|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTtlNmLnMrkgDetRt : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsRtLinCrsTm : 25|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsNumPrlLnsDetRt : 33|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsNumPrlLnsDetLt : 36|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntLftV : 31|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtLinCrsTm : 30|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnPrvwDst : 50|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMrkgTypChgDst : 40|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMrkgWdth : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMarkrElvtd : 51|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4AnchrLnLin : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMrkgWdth : 41|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMarkrElvtd : 46|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3AnchrLnLin : 52|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstID2 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntLft : 15|16@0- (5.96E-008,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 597 USDT_Req_to_VIS2_FO: 8 TestTool_FO + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" CIPM_FO,VIS2_FO + +BO_ 1204 RR_SRR_Object_Track4: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth4 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate4 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange4 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange4 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID4 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation4 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp4 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth4 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1203 RR_SRR_Object_Track3: 8 RRSRR_FO + SG_ RRSrrTrkRawAzimuth3 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate3 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange3 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange3 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID3 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation3 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp3 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth3 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + SG_ RRSrrBurstID3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1202 RR_SRR_Object_Track2: 8 RRSRR_FO + SG_ RRSrrBurstID2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkRawAzimuth2 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate2 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange2 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange2 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID2 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation2 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp2 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth2 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + +BO_ 1201 RR_SRR_Object_Track1: 8 RRSRR_FO + SG_ RRSrrBurstID1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkRawAzimuth1 : 61|6@0- (1,0) [-32|31] "deg" EOCM_F_FO + SG_ RRSrrTrkRRate1 : 18|11@0- (0.125,0) [-128|127.875] "m/s" EOCM_F_FO + SG_ RRSrrTrkRange1 : 2|11@0+ (0.02,0) [0|40.94] "m" EOCM_F_FO + SG_ RRSrrTrkObsRange1 : 53|6@0- (0.02,0) [-0.64|0.62] "m" EOCM_F_FO + SG_ RRSrrTrkObjID1 : 39|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ RRSrrTrkObjElevation1 : 20|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkMeasStatus1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSrrTrkDynamProp1 : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSrrTrkAzimuth1 : 34|11@0- (0.125,0) [-128|127.875] "deg" EOCM_F_FO + +BO_ 1200 RR_SRR_Object_Header: 8 RRSRR_FO + SG_ RRSrrTimeStampV : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSrrTimeStamp : 10|11@0+ (1,0) [0|2047] "" EOCM_F_FO + SG_ RRSrrRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ RRSRRNumValidTargets : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ RRSRRModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ RRSRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRMsalgnRllRt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRMsalgnRllLt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRCANIDAddrsUnsbl : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ RRSrrBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + +BO_ 850 F_Vision_Environment_3: 8 VIS_FO + SG_ LnSnsTtlNmLnMrkgDetLt : 58|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtLnMrkgWdth : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtLnMrkgTypChgDst : 62|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnLftV : 23|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnLft : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrLftV : 15|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrLft : 39|16@0- (9.53E-007,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrTypRght : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrTypLft : 53|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrElvtdRght : 54|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrElvtdLft : 55|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstID1 : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnQltyCnfdncLvlRght : 22|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnQltyCnfdncLvlLft : 14|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnPrvwDstncRght : 2|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnPrvwDstncLft : 5|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 1414 RVB_TVR_Debug2_FO: 7 EOCM_F_FO + SG_ VBBrkCntlAccel : 45|12@0- (0.01,0) [-20.48|20.47] "m/s^2" Dummy_FO + SG_ VBTOSObjID : 35|6@0+ (1,0) [0|63] "" Dummy_FO + SG_ VBTOSTTC : 31|12@0+ (0.025,0) [0|102.375] "s" Dummy_FO + SG_ VBTOSLatPstn : 11|11@0- (0.125,0) [-128|127.875] "m" Dummy_FO + SG_ VBTOSLonPstn : 7|12@0- (0.125,0) [-256|255.875] "m" Dummy_FO + diff --git a/opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc b/opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc new file mode 100644 index 0000000000..2d0bb12174 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/cadillac_ct6_powertrain.dbc @@ -0,0 +1,248 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: K16_BECM K73_TCIC K9_BCM K43_PSCM K17_EBCM K20_ECM K114B_HPCM NEO K124_ASCM +VAL_TABLE_ TurnSignals 2 "Right Turn" 1 "Left Turn" 0 "None" ; +VAL_TABLE_ ACCLeadCar 1 "Present" 0 "Not Present" ; +VAL_TABLE_ ACCCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ BrakePedalPressed 1 "Pressed" 0 "Depressed" ; +VAL_TABLE_ DistanceButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ LKAButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_TABLE_ PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; +VAL_TABLE_ DoorStatus 1 "Opened" 0 "Closed" ; +VAL_TABLE_ SeatBeltStatus 1 "Latched" 0 "Unlatched" ; +VAL_TABLE_ LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; +VAL_TABLE_ GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; +VAL_TABLE_ GasRegenCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HandsOffSWDetectionStatus 1 "Hands On" 0 "Hands Off" ; +VAL_TABLE_ HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; + + +BO_ 717 ASCM_2CD: 5 K124_ASCM + +BO_ 869 ASCM_365: 4 K124_ASCM + +BO_ 1034 ASCM_40A: 7 K124_ASCM + +BO_ 1296 ASCM_510: 4 K124_ASCM + +BO_ 1930 ASCM_78A: 7 K124_ASCM + +BO_ 190 ECMAcceleratorPos: 6 K20_ECM + SG_ BrakePedalPos : 15|8@0+ (1,0) [0|0] "sticky" NEO + SG_ GasPedalAndAcc : 23|8@0+ (1,0) [0|0] "" NEO + +BO_ 201 ECMEngineStatus: 8 K20_ECM + SG_ EngineTPS : 39|8@0+ (0.392156863,0) [0|100.000000065] "%" NEO + SG_ EngineRPM : 15|16@0+ (0.25,0) [0|0] "RPM" NEO + +BO_ 209 EBCMBrakePedalSensors: 7 K17_EBCM + SG_ Counter1 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ Counter2 : 23|2@0+ (1,0) [0|3] "" XXX + SG_ BrakePedalPosition1 : 5|14@0+ (1,0) [0|16383] "" XXX + SG_ BrakePedalPosition2 : 21|14@0- (-1,0) [0|16383] "" XXX + SG_ BrakeNormalized1 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ BrakeNormalized2 : 47|8@0- (-1,0) [0|255] "" XXX + +BO_ 241 EBCMBrakePedalPosition: 6 K17_EBCM + SG_ BrakePedalPosition : 15|8@0+ (1,0) [0|255] "" NEO + +BO_ 298 BCMDoorBeltStatus: 8 K9_BCM + SG_ RearLeftDoor : 8|1@0+ (1,0) [0|0] "" NEO + SG_ FrontLeftDoor : 9|1@0+ (1,0) [0|0] "" NEO + SG_ FrontRightDoor : 10|1@0+ (1,0) [0|0] "" NEO + SG_ RearRightDoor : 23|1@0+ (1,0) [0|0] "" NEO + SG_ LeftSeatBelt : 12|1@0+ (1,0) [0|0] "" NEO + SG_ RightSeatBelt : 53|1@0+ (1,0) [0|0] "" NEO + +BO_ 309 ECMPRDNL: 8 K20_ECM + SG_ PRNDL : 2|3@0+ (1,0) [0|0] "" NEO + +BO_ 320 BCMTurnSignals: 3 K9_BCM + SG_ TurnSignals : 19|2@0+ (1,0) [0|0] "" NEO + +BO_ 336 ASCMLKASStatus: 1 NEO + SG_ Available : 7|1@0+ (1,0) [0|0] "" NEO + +BO_ 338 ASCMLKASteeringCmd: 6 NEO + SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO + SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO + SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO + SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO + SG_ LKASMode : 36|2@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO + +BO_ 340 ASCMBLKASteeringCmd: 6 NEO + SG_ LKASteeringCmdActive : 7|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmd : 5|14@0- (1,0) [0|0] "" NEO + SG_ RollingCounter : 23|2@0+ (1,0) [0|0] "" NEO + SG_ SetMe1 : 21|1@0+ (1,0) [0|0] "" NEO + SG_ LKASVehicleSpeed : 20|13@0+ (0.22,0) [0|0] "kph" NEO + SG_ LKASMode : 36|2@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdChecksum : 33|10@0+ (1,0) [0|0] "" NEO + +BO_ 381 MSG_17D: 8 K20_ECM + SG_ MSG17D_AccPower : 35|12@0- (1,0) [0|0] "" NEO + +BO_ 356 PSCMStatus: 8 K43_PSCM + SG_ LKATorqueDeliveredStatus : 7|3@0+ (1,0) [0|7] "" NEO + SG_ LKADriverAppldTrq : 2|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO + SG_ LKATBDTorque : 21|14@0- (-0.005,0) [-10.24|10.23] "Nm" NEO + SG_ RollingCounter : 39|2@0+ (1,0) [0|0] "" NEO + SG_ LKATotalTorqueDelivered : 37|14@0- (0.01,0) [-10.24|10.23] "Nm" NEO + +BO_ 417 AcceleratorPedal: 7 XXX + SG_ AcceleratorPedal : 55|8@0+ (1,0) [0|0] "" NEO + +BO_ 451 GasAndAcc: 8 XXX + SG_ GasPedalAndAcc2 : 55|8@0+ (1,0) [0|0] "" NEO + +BO_ 452 AcceleratorPedal2: 8 XXX + SG_ AcceleratorPedal2 : 47|8@0+ (1,0) [0|0] "" NEO + +BO_ 481 ASCMSteeringButton: 7 K124_ASCM + SG_ DistanceButton : 22|1@0+ (1,0) [0|0] "" NEO + SG_ LKAButton : 23|1@0+ (1,0) [0|0] "" NEO + SG_ ACCButtons : 46|3@0+ (1,0) [0|0] "" NEO + +BO_ 485 PSCMSteeringAngle: 8 K43_PSCM + SG_ SteeringWheelAngle : 15|16@0- (0.0625,0) [-2047|2047] "deg" NEO + SG_ SteeringWheelRate : 27|12@0- (1,0) [-2047|2047] "deg/s" NEO + +BO_ 489 EBCMVehicleDynamic: 8 K17_EBCM + SG_ YawRate : 51|12@0- (0.0625,0) [-2047|2047] "grad/s" NEO + SG_ LateralAcceleration : 3|12@0- (0.0161,0) [-2047|2047] "m/s2" NEO + SG_ BrakePedalPressed : 6|1@0+ (1,0) [0|0] "" NEO + +BO_ 711 BECMBatteryVoltageCurrent: 6 K17_EBCM + SG_ HVBatteryVoltage : 31|12@0+ (0.125,0) [0|511.875] "V" NEO + SG_ HVBatteryCurrent : 12|13@0- (0.15,0) [-614.4|614.25] "A" NEO + +BO_ 715 ASCMGasRegenCmd: 8 K124_ASCM + SG_ GasRegenAlwaysOne : 9|1@0+ (1,1) [1|1] "" NEO + SG_ GasRegenAlwaysThree : 15|2@0+ (1,1) [1|1] "" NEO + SG_ GasRegenChecksum : 47|24@0+ (1,0) [0|0] "" NEO + SG_ GasRegenCmdActiveInv : 32|1@0+ (1,0) [0|0] "" NEO + SG_ GasRegenFullStopActive : 13|1@0+ (1,0) [0|0] "" NEO + SG_ GasRegenCmdActive : 0|1@0+ (1,0) [0|0] "" NEO + SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" NEO + SG_ RollingCounter2 : 36|4@0+ (1,0) [0|0] "" NEO + SG_ GasRegenAlwaysOne2 : 23|1@0+ (1,0) [0|1] "" NEO + SG_ GasRegenCmd : 22|15@0+ (1,0) [0|0] "" NEO + +BO_ 810 TCICOnStarGPSPosition: 8 K73_TCIC + SG_ GPSLongitude : 39|32@0+ (1,-2147483648) [0|0] "milliarcsecond" NEO + SG_ GPSLatitude : 7|32@0+ (1,0) [0|0] "milliarcsecond" NEO + +BO_ 840 EBCMWheelSpdFront: 4 K17_EBCM + SG_ FLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ FRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO + +BO_ 842 EBCMWheelSpdRear: 4 K17_EBCM + SG_ RLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ RRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO + +BO_ 880 ASCMActiveCruiseControlStatus: 6 K124_ASCM + SG_ ACCLeadCar : 44|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCAlwaysOne2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCAlwaysOne : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCSpeedSetpoint : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" NEO + SG_ ACCGapLevel : 21|2@0+ (1,0) [0|0] "" NEO + SG_ ACCResumeButton : 1|1@0+ (1,0) [0|0] "" NEO + SG_ ACCCmdActive : 23|1@0+ (1,0) [0|0] "" NEO + +BO_ 1001 ECMVehicleSpeed: 8 K20_ECM + SG_ VehicleSpeed : 7|16@0+ (0.01,0) [0|0] "mph" NEO + +BO_ 1033 ASCMKeepAlive: 7 NEO + SG_ ASCMKeepAliveAllZero : 7|56@0+ (1,0) [0|0] "" NEO + +BO_ 1217 ECMEngineCoolantTemp: 8 K20_ECM + SG_ EngineCoolantTemp : 23|8@0+ (1,-40) [0|0] "C" NEO + +BO_ 1249 VIN_Part2: 8 K20_ECM + SG_ VINPart2 : 7|64@0+ (1,0) [0|0] "" NEO + +BO_ 1300 VIN_Part1: 8 K20_ECM + SG_ VINPart1 : 7|64@0+ (1,0) [0|0] "" NEO + +BO_ 1912 PSCM_778: 8 K43_PSCM + +BO_TX_BU_ 338 : K124_ASCM,NEO; +BO_TX_BU_ 880 : NEO,K124_ASCM; +BO_TX_BU_ 1033 : K124_ASCM,NEO; +BO_TX_BU_ 715 : NEO,K124_ASCM; + + +CM_ BU_ K16_BECM "Battery Energy Control Module"; +CM_ BU_ K73_TCIC "Telematics Communication Control Module"; +CM_ BU_ K9_BCM "Body Control Module"; +CM_ BU_ K43_PSCM "Power Steering Control Module"; +CM_ BU_ K17_EBCM "Electronic Brake Control Module"; +CM_ BU_ K20_ECM "Engine Control Module"; +CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; +CM_ BU_ NEO "Comma NEO"; +CM_ BU_ K124_ASCM "Active Safety Control Module"; +CM_ SG_ 381 MSG17D_AccPower "Need to investigate"; +CM_ SG_ 190 GasPedalAndAcc "ACC baseline is 62"; +CM_ SG_ 451 GasPedalAndAcc2 "ACC baseline is 62"; +CM_ SG_ 715 RollingCounter2 "Values cycle between 0, 7, 10, 13"; +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; +BA_ "UseGMParameterIDs" 0; +VAL_ 481 DistanceButton 1 "Active" 0 "Inactive" ; +VAL_ 481 LKAButton 1 "Active" 0 "Inactive" ; +VAL_ 481 ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_ 309 PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; +VAL_ 338 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 338 LKASMode 2 "supercruise" 1 "lkas" 0 "Inactive" ; +VAL_ 880 ACCLeadCar 1 "Present" 0 "Not Present" ; +VAL_ 880 ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; +VAL_ 880 ACCResumeButton 1 "Pressed" 0 "Depressed" ; +VAL_ 880 ACCCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 356 LKATorqueDeliveredStatus 7 "Override Fault" 6 "LKAS Fault but Responsive" 5 "TBD but Responsive" 4 "TBD but Responsive" 3 "Fault" 1 "Active" 0 "Inactive" ; +VAL_ 489 BrakePedalPressed 1 "Pressed" 0 "Depressed" ; +VAL_ 715 GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; +VAL_ 715 GasRegenCmdActive 1 "Active" 0 "Inactive" ; diff --git a/opendbc_repo/opendbc/dbc/chrysler_cusw.dbc b/opendbc_repo/opendbc/dbc/chrysler_cusw.dbc new file mode 100644 index 0000000000..880f6e7255 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/chrysler_cusw.dbc @@ -0,0 +1,192 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 492 EPS_STATUS: 8 XXX + SG_ TORQUE_DRIVER : 3|12@0+ (1,-1024) [0|2048] "Nm" XXX + SG_ LKAS_STATE : 16|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_FAULT : 17|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_HIGH_TORQUE : 19|1@0+ (1,0) [0|1] "" XXX + SG_ TORQUE_MOTOR : 27|12@0+ (1,-2048) [0|1] "" XXX + SG_ LAT_TORQUE_REQUEST : 47|12@0+ (1,-2048) [0|4095] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1250 DOORS: 8 XXX + SG_ DOOR_OPEN_FL : 10|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 11|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 12|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 13|1@0+ (1,0) [0|1] "" XXX + SG_ TRUNK : 14|1@0+ (1,0) [0|1] "" XXX + +BO_ 1262 GEAR: 8 XXX + SG_ PRNDL : 11|4@0+ (1,0) [0|15] "" XXX + +BO_ 875 SEATBELT_STATUS: 8 XXX + SG_ SEATBELT_DRIVER_UNLATCHED : 16|1@0+ (1,0) [0|1] "" XXX + +BO_ 1264 STEERING_LEVERS: 7 XXX + SG_ TURN_SIGNALS : 3|4@0+ (1,0) [0|15] "" XXX + SG_ HIGH_BEAM_FLASH : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 480 TRACTION_BUTTON: 8 XXX + SG_ TRACTION_OFF : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 740 WHEEL_SPEEDS_REAR: 8 XXX + SG_ WHEEL_SPEED_RL : 5|13@0+ (0.0087,0) [0|1] "" XXX + SG_ WHEEL_SPEED_RR : 20|13@0+ (0.0087,0) [0|1] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX + +BO_ 520 EPS_STATUS_2: 7 XXX + SG_ NEW_SIGNAL_1 : 3|12@0+ (1,-2048) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 19|12@0+ (1,-2048) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 39|12@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 43|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 55|8@0+ (1,0) [0|1] "" XXX + +BO_ 494 STEERING: 6 XXX + SG_ STEER_ANGLE : 5|14@0+ (0.1,-720) [0|1] "deg" XXX + SG_ STEERING_RATE : 19|12@0+ (1,-2000) [0|1] "" XXX + SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 738 BRAKE_2: 8 XXX + SG_ BRAKE_TORQUE : 7|12@0+ (1,0) [0|15] "" XXX + SG_ BRAKE_LIGHTS : 8|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_HUMAN : 9|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX + +BO_ 742 WHEEL_SPEEDS_FRONT: 8 XXX + SG_ WHEEL_SPEED_FL : 5|13@0+ (0.0087,0) [0|1] "" XXX + SG_ WHEEL_SPEED_FR : 20|13@0+ (0.0087,0) [0|1] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX + +BO_ 502 LKAS_COMMAND: 4 XXX + SG_ STEERING_TORQUE : 7|11@0+ (1,-1024) [0|4087] "" XXX + SG_ LKAS_CONTROL_BIT : 12|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 19|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 31|8@0+ (1,0) [0|1] "" XXX + +BO_ 1498 LKAS_1: 2 XXX + +BO_ 1500 DAS_6: 4 XXX + SG_ LKAS_ICON_COLOR : 1|2@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_0XAC : 15|8@0+ (1,0) [0|255] "" XXX + SG_ LKAS_LANE_LINES : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 1508 LKAS_HEARTBIT: 8 XXX + SG_ LKAS_STATUS_OK : 28|1@0+ (1,0) [0|1] "" XXX + +BO_ 762 CRUISE_BUTTONS: 3 XXX + SG_ ACC_Cancel : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Distance_Dec : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Accel : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Decel : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Resume : 4|1@0+ (1,0) [0|1] "" XXX + SG_ Cruise_OnOff : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_OnOff : 7|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Distance_Inc : 8|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 15|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 23|8@0+ (1,0) [0|1] "" XXX + +BO_ 484 BRAKE_1: 8 XXX + SG_ BRAKE_PSI : 7|12@0+ (1,0) [0|1] "" XXX + SG_ VEHICLE_SPEED : 35|12@0+ (0.0174,0) [0|4095] "m/s" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX + +BO_ 500 GEARBOX_1: 7 XXX + SG_ DESIRED_GEAR : 35|4@0+ (1,0) [0|1] "" XXX + SG_ ACTUAL_GEAR : 39|4@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 43|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 55|8@0+ (1,0) [0|1] "" XXX + +BO_ 510 ACCEL_GAS: 5 XXX + SG_ ACC_ACTIVE : 2|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_HUMAN : 15|8@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 27|4@0+ (1,0) [0|1] "" XXX + SG_ GAS_ACC : 28|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|1] "" XXX + +BO_ 490 DASHBOARD: 4 XXX + SG_ ACC_SPEED_CONFIG_KPH : 7|8@0+ (0.1625,0) [0|1] "m/s" XXX + +BO_ 1006 ACC_HUD: 7 XXX + SG_ ACC_STATE : 7|3@0+ (1,0) [0|15] "" XXX + SG_ ACC_SET_SPEED_KMH : 14|8@0+ (1,0) [0|255] "km/h" XXX + SG_ DISTANCE_SETTING : 33|2@0+ (1,0) [0|3] "" XXX + SG_ DISTANCE_TO_LEAD : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 748 ACC_CONTROL: 8 XXX + SG_ ACC_MAIN_ON : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_ACTIVE : 7|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_VALUE : 13|10@0+ (1,0) [0|1023] "" XXX + SG_ GAS_VALID : 15|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_VALUE : 28|10@0+ (1,0) [0|1023] "" XXX + SG_ BRAKE_VALID : 30|1@0+ (1,0) [0|1] "" XXX + SG_ UNKNOWN_1 : 33|1@0+ (1,0) [0|1] "" XXX + SG_ UNKNOWN_2 : 46|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 496 CLUSTER_1: 8 XXX + SG_ TACHOMETER : 3|12@0+ (1.024,0) [0|3] "" XXX + SG_ SPEEDOMETER : 19|12@0+ (0.01065,0) [0|1] "m/s" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX + + +CM_ SG_ 1250 TRUNK "1 = open, 0 = closed"; +CM_ SG_ 1250 DOOR_OPEN_FL "1 = open, 0 = closed"; +CM_ SG_ 1250 DOOR_OPEN_FR "1 = open, 0 = closed"; +CM_ SG_ 1250 DOOR_OPEN_RL "1 = open, 0 = closed"; +CM_ SG_ 1250 DOOR_OPEN_RR "1 = open, 0 = closed"; +CM_ SG_ 1262 PRNDL "1 = park, 2 = reverse, 3 = neutral, 4 = drive, 5 = sport (snicker... sport)"; +CM_ SG_ 875 SEATBELT_DRIVER_UNLATCHED "1 = unlatched, 0 = safety first"; +CM_ SG_ 1264 TURN_SIGNALS "0 = off, 1 = left blinker, 2 = right blinker"; +CM_ SG_ 480 TRACTION_OFF "0 = TCS on, 1 = TCS off (light on dash ON)"; +CM_ SG_ 1500 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null"; +CM_ SG_ 1492 LEAD_CAR "lead car present = 4, no car = 2 "; +CM_ SG_ 498 ACC_STATUS_2 "1 no ACC, 3 icpno "; +CM_ SG_ 498 ACC_STATUS_1 "0x00 = acc off, 0x03 = acc on, green, 0x02 acc on, white"; +CM_ SG_ 1006 ACC_STATE "0 = ACC off, 6 = ACC active (white), 8 = ACC engaged (green)"; +CM_ SG_ 502 LKAS_STATE "2 = active (green), 1 = error"; +CM_ SG_ 1006 ACC_SET_SPEED_KMH "min set appears to be 68 km/h, errors below 59 km/h "; +VAL_ 1262 PRNDL 1 "P" 2 "R" 3 "N" 4 "D" 5 "S"; diff --git a/opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc b/opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc new file mode 100644 index 0000000000..07c37e1fa2 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/chrysler_pacifica_2017_hybrid_private_fusion.dbc @@ -0,0 +1,230 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 544 a_1: 8 XXX + SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX + SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX + SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX + SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX + SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX + SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 576 b_1: 8 XXX + SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX + SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 608 a_2: 8 XXX + SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX + SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX + SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX + SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX + SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX + SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 640 b_2: 8 XXX + SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX + SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 644 a_3: 8 XXX + SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX + SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX + SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX + SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX + SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX + SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 648 b_3: 8 XXX + SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX + SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 652 a_4: 8 XXX + SG_ track_id : 7|4@0+ (1,0) [0|15] "" XXX + SG_ REL_ACCEL : 3|12@0+ (1,0) [0|31] "" XXX + SG_ status1 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ REL_SPEED : 19|12@0+ (1,0) [0|65535] "" XXX + SG_ status2 : 39|6@0+ (1,0) [0|15] "" XXX + SG_ sig2 : 33|10@0+ (1,0) [0|255] "" XXX + SG_ zeros : 55|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 656 b_4: 8 XXX + SG_ sig0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ sig1 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ sig2 : 31|16@0+ (1,0) [0|255] "" XXX + SG_ zeros : 47|12@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 512 unknown_200: 8 XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ increasing : 31|16@0+ (1,0) [0|255] "" XXX + SG_ zeros_0 : 3|12@0+ (1,0) [0|63] "" XXX + SG_ zeros_1 : 47|12@0+ (1,0) [0|63] "" XXX + SG_ status0 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ unknown_0 : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 514 unknown_202: 8 XXX + SG_ COUNTER : 43|4@0+ (1,0) [0|15] "" XXX + SG_ sig3 : 31|8@0+ (1,0) [0|65535] "" XXX + SG_ increasing : 39|12@0+ (1,0) [0|15] "" XXX + +BO_ 706 c_1: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + +BO_ 708 c_2: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 710 c_3: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 712 c_4: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 714 c_5: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 716 c_6: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 718 c_7: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 720 c_8: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 722 c_9: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 724 c_10: 8 XXX + SG_ LAT_DIST : 18|11@0+ (0.005,-1000) [0|2047] "m" XXX + SG_ LONG_DIST : 34|11@0+ (0.073,0) [0|255] "m" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 674 d_1: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 676 d_2: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 678 d_3: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 680 d_4: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 682 d_5: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 684 d_6: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 686 d_7: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 688 d_8: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 690 d_9: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 692 d_10: 8 XXX + SG_ REL_SPEED : 17|10@0+ (0.2857,-146.278) [0|1023] "m/s" XXX + +BO_ 672 NEW_MSG_5: 8 XXX + SG_ NEW_SIGNAL_1 : 9|10@0+ (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_2 : 45|10@0+ (1,0) [0|1023] "" XXX + + + + +CM_ SG_ 544 track_id "for message a_1 track_id is always 1, similar for other messages and track_id"; +CM_ SG_ 544 REL_ACCEL "perhaps REL_ACCEL because it responds faster and before REL_SPEED"; +CM_ SG_ 544 sig2 "perhaps distance to object. LONG_DIST or REL_ACCEL or REL_SPEED"; +CM_ SG_ 576 zeros "not always zero, sometimes has value when another car changes lanes"; +CM_ SG_ 706 LAT_DIST "positive is to the right, negative is to the left"; diff --git a/opendbc_repo/opendbc/dbc/comma_body.dbc b/opendbc_repo/opendbc/dbc/comma_body.dbc new file mode 100644 index 0000000000..2b89f3a74a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/comma_body.dbc @@ -0,0 +1,89 @@ +VERSION "0.0.02" + +BO_ 513 MOTORS_DATA: 8 XXX + SG_ SPEED_L : 7|16@0- (1,0) [-1000|1000] "" XXX + SG_ SPEED_R : 23|16@0- (1,0) [-1000|1000] "" XXX + SG_ ELEC_ANGLE_L : 39|8@0+ (1,0) [0|0] "deprecated" XXX + SG_ ELEC_ANGLE_R : 47|8@0+ (1,0) [0|0] "deprecated" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 514 VAR_VALUES: 3 XXX + SG_ IGNITION : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ENABLE_MOTORS : 1|1@0+ (1,0) [0|1] "" XXX + SG_ FAULT : 7|6@0+ (1,0) [0|63] "" XXX + SG_ MOTOR_ERR_L : 15|8@0+ (1,0) [0|255] "" XXX + SG_ MOTOR_ERR_R : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 515 BODY_DATA: 4 XXX + SG_ MCU_TEMP : 7|8@0+ (0.1,0) [0|125] "" XXX + SG_ BATT_VOLTAGE : 15|16@0+ (0.01,0) [0|60] "" XXX + SG_ BATT_PERCENTAGE : 31|7@0+ (1,0) [0|100] "" XXX + SG_ CHARGER_CONNECTED : 24|1@0+ (1,0) [0|1] "" XXX + +BO_ 516 MOTORS_CURRENT: 8 XXX + SG_ LEFT_PHA_AB : 7|16@0- (1,0) [-32768|32767] "" XXX + SG_ LEFT_PHA_BC : 23|16@0- (1,0) [-32768|32767] "" XXX + SG_ RIGHT_PHA_AB : 39|16@0- (1,0) [-32768|32767] "" XXX + SG_ RIGHT_PHA_BC : 55|16@0- (1,0) [-32768|32767] "" XXX + +BO_ 517 MOTORS_ANGLE: 8 XXX + SG_ LEFT_ANGLE_SENSOR : 7|16@0+ (1,0) [0|16384] "" XXX + SG_ RIGHT_ANGLE_SENSOR : 23|16@0+ (1,0) [0|16384] "" XXX + SG_ LEFT_HALL_SENSOR : 39|16@0+ (1,0) [0|360] "" XXX + SG_ RIGHT_HALL_SENSOR : 55|16@0+ (1,0) [0|360] "" XXX + +BO_ 592 TORQUE_CMD: 6 XXX + SG_ TORQUE_L : 7|16@0- (1,0) [-1000|1000] "" XXX + SG_ TORQUE_R : 23|16@0- (1,0) [-1000|1000] "" XXX + SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 593 MAX_MOTOR_RPM_CMD: 5 XXX + SG_ MAX_RPM_L : 7|16@0+ (1,0) [0|1000] "" XXX + SG_ MAX_RPM_R : 23|16@0+ (1,0) [0|1000] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 769 KNEE_MOTORS_DATA: 8 XXX + SG_ SPEED_L : 7|16@0- (1,0) [-1000|1000] "" XXX + SG_ SPEED_R : 23|16@0- (1,0) [-1000|1000] "" XXX + SG_ ELEC_ANGLE_L : 39|8@0+ (1,0) [0|0] "deprecated" XXX + SG_ ELEC_ANGLE_R : 47|8@0+ (1,0) [0|0] "deprecated" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 770 KNEE_VAR_VALUES: 3 XXX + SG_ IGNITION : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ENABLE_MOTORS : 1|1@0+ (1,0) [0|1] "" XXX + SG_ FAULT : 7|6@0+ (1,0) [0|63] "" XXX + SG_ MOTOR_ERR_L : 15|8@0+ (1,0) [0|255] "" XXX + SG_ MOTOR_ERR_R : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 771 KNEE_DATA: 4 XXX + SG_ MCU_TEMP : 7|8@0+ (0.1,0) [0|125] "" XXX + SG_ BATT_VOLTAGE : 15|16@0+ (0.01,0) [0|60] "" XXX + SG_ BATT_PERCENTAGE : 31|7@0+ (1,0) [0|100] "" XXX + SG_ CHARGER_CONNECTED : 24|1@0+ (1,0) [0|1] "" XXX + +BO_ 772 KNEE_MOTORS_CURRENT: 8 XXX + SG_ LEFT_PHA_AB : 7|16@0- (1,0) [-32768|32767] "" XXX + SG_ LEFT_PHA_BC : 23|16@0- (1,0) [-32768|32767] "" XXX + SG_ RIGHT_PHA_AB : 39|16@0- (1,0) [-32768|32767] "" XXX + SG_ RIGHT_PHA_BC : 55|16@0- (1,0) [-32768|32767] "" XXX + +BO_ 773 KNEE_MOTORS_ANGLE: 8 XXX + SG_ LEFT_ANGLE_SENSOR : 7|16@0+ (1,0) [0|16384] "" XXX + SG_ RIGHT_ANGLE_SENSOR : 23|16@0+ (1,0) [0|16384] "" XXX + SG_ LEFT_HALL_SENSOR : 39|16@0+ (1,0) [0|360] "" XXX + SG_ RIGHT_HALL_SENSOR : 55|16@0+ (1,0) [0|360] "" XXX + +BO_ 848 KNEE_TORQUE_CMD: 6 XXX + SG_ TORQUE_L : 7|16@0- (1,0) [-1000|1000] "" XXX + SG_ TORQUE_R : 23|16@0- (1,0) [-1000|1000] "" XXX + SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 849 KNEE_MAX_MOTOR_RPM_CMD: 5 XXX + SG_ MAX_RPM_L : 7|16@0+ (1,0) [0|1000] "" XXX + SG_ MAX_RPM_R : 23|16@0+ (1,0) [0|1000] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/fca_giorgio.dbc b/opendbc_repo/opendbc/dbc/fca_giorgio.dbc new file mode 100644 index 0000000000..f3e22cf417 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/fca_giorgio.dbc @@ -0,0 +1,243 @@ +BO_ 171 NEW_MSG_AB: 8 XXX + SG_ NEW_SIGNAL_5 : 3|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_6 : 21|6@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_1 : 23|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 51|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_4 : 55|4@0+ (1,0) [0|15] "" XXX + +BO_ 222 EPS_1: 6 EPS + SG_ STEERING_ANGLE : 5|14@0+ (0.1,-716.8) [0|16383] "deg" XXX + SG_ STEERING_RATE : 19|12@0+ (0.5,-1000) [0|4095] "deg/s" XXX + SG_ UNKNOWN_1 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ UNKNOWN_2 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 228 NEW_MSG_E4: 6 XXX + SG_ NEW_SIGNAL_1 : 13|1@0+ (1,0) [0|1] "" XXX + +BO_ 238 ABS_1: 8 ABS + SG_ WHEEL_SPEED_FL : 7|13@0+ (0.017,0) [0|8191] "m/s" XXX + SG_ WHEEL_SPEED_FR : 10|13@0+ (0.017,0) [0|8191] "m/s" XXX + SG_ WHEEL_SPEED_RL : 29|13@0+ (0.017,0) [0|8191] "m/s" XXX + SG_ WHEEL_SPEED_RR : 32|13@0+ (0.017,0) [0|8191] "m/s" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 241 NEW_MSG_F1: 8 XXX + SG_ MAYBE_VOLTAGE : 18|10@0+ (0.02,0) [0|1023] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 249 NEW_MSG_F9: 4 XXX + SG_ COUNTER : 19|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 250 ABS_3: 8 ABS + SG_ BRAKE_PRESSURE_THRESHOLD : 2|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_PEDAL_SWITCH : 3|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 9|2@0+ (1,0) [0|3] "" XXX + SG_ XCOUNTER : 38|4@0+ (1,0) [0|15] "" XXX + SG_ XCHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 252 ENGINE_1: 8 ENGINE + SG_ ENGINE_RPM : 7|14@0+ (1,0) [0|255] "rev/min" XXX + SG_ ACCEL_PEDAL : 20|8@0+ (0.4,0) [0|255] "percent" XXX + SG_ REVERSE : 26|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 46|2@1+ (1,0) [0|3] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 254 ABS_2: 8 ABS + SG_ LONG_ACCEL : 7|12@0+ (0.01,-20.48) [0|4095] "m/s2" XXX + SG_ LATERAL_ACCEL : 11|12@0+ (0.01,-20.48) [0|4095] "m/s2" XXX + SG_ YAW_RATE : 31|12@0+ (-0.0014,2.86) [0|4095] "rad/s" XXX + SG_ NEW_SIGNAL_1 : 47|9@0+ (1,0) [0|511] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 257 ABS_6: 8 ABS + SG_ MAYBE_ACC_BRAKE : 5|1@0+ (1,0) [0|1] "" XXX + SG_ VEHICLE_SPEED : 15|11@0+ (0.017,0) [0|2047] "" XXX + SG_ BRAKE_PRESSURE_1 : 20|11@0+ (1,0) [0|2047] "" XXX + SG_ BRAKE_PRESSURE_2 : 43|12@0+ (1,0) [0|4095] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 262 EPS_2: 7 EPS + SG_ UNKNOWN_TORQUE : 7|12@0+ (1,-2000) [0|4095] "" XXX + SG_ UNKNOWN_1 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ UNKNOWN_STATUS : 9|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVER_TORQUE : 23|11@0+ (1,-1024) [0|2047] "" XXX + SG_ UNKNOWN_2 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ LKA_STATUS : 38|2@0+ (1,0) [0|3] "" XXX + SG_ LKA_FAULT : 39|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 43|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 263 ABS_4: 8 ABS + SG_ BRAKE_PRESSURE : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 265 NEW_MSG_109: 8 XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 270 ABS_7: 7 XXX + SG_ LONG_ACCEL_RAW : 7|12@0+ (0.01,-20.48) [0|4095] "" XXX + SG_ LATERAL_ACCEL_RAW : 11|12@0+ (0.01,-20.48) [0|4095] "" XXX + SG_ YAW_RATE_RAW : 31|12@0+ (-0.0014,2.86) [0|4095] "" XXX + SG_ COUNTER : 43|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 278 ABS_5: 8 ABS + SG_ WHEEL_IMPULSE_FL : 7|8@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_IMPULSE_FR : 15|8@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_IMPULSE_RL : 23|8@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_IMPULSE_RR : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ACTIVE_FL : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ACTIVE_FR : 33|1@0+ (1,0) [0|1] "" XXX + SG_ ACTIVE_RL : 34|1@0+ (1,0) [0|1] "" XXX + SG_ ACTIVE_RR : 35|1@0+ (1,0) [0|1] "" XXX + SG_ FORWARD_1 : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REVERSE_1 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ FORWARD_2 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ REVERSE_2 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 280 NEW_MSG_118: 6 XXX + SG_ COUNTER : 35|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 282 NEW_MSG_11A: 8 XXX + SG_ NEW_SIGNAL_1 : 7|11@0+ (1,-1000) [0|2047] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 284 NEW_MSG_11C: 8 XXX + SG_ NEW_SIGNAL_1 : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_2 : 11|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_3 : 28|13@0+ (1,0) [0|8191] "" XXX + SG_ NEW_SIGNAL_4 : 31|2@0+ (1,0) [0|3] "" XXX + SG_ VEHICLE_SPEED : 47|12@0+ (0.017,0) [0|4095] "m/s" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 288 NEW_MSG_120: 6 XXX + SG_ COUNTER : 19|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 290 EPS_3: 4 EPS + SG_ EPS_TORQUE : 7|12@0+ (1,-2048) [0|4095] "" XXX + SG_ COUNTER : 19|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 501 NEW_MSG_1F5: 5 XXX + SG_ NEW_SIGNAL_2 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 27|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 502 LKA_COMMAND: 8 CAMERA + SG_ LKA_TORQUE : 7|11@0+ (1,-1024) [0|2047] "" XXX + SG_ HAPTIC_WARN_1 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ LKA_ACTIVE : 11|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ HAPTIC_WARN_2 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 508 NEW_MSG_1FC: 8 XXX + SG_ NEW_SIGNAL_1 : 6|1@0+ (1,0) [0|1] "" XXX + +BO_ 601 NEW_MSG_259: 8 XXX + SG_ NEW_SIGNAL_1 : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 762 NEW_MSG_2FA: 3 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 766 CAM_UNKNOWN_1: 4 CAMERA + +BO_ 900 NEW_MSG_384: 8 XXX + SG_ NEW_SIGNAL_1 : 19|3@0+ (1,0) [0|7] "" XXX + +BO_ 1040 NEW_MSG_410: 8 XXX + SG_ NEW_SIGNAL_3 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 49|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1046 NEW_MSG_416: 8 XXX + SG_ MUX M : 1|2@0+ (1,0) [0|3] "" XXX + SG_ UNKNOWN_M0_1 m0 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M0_2 m0 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M0_3 m0 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M0_4 m0 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M0_5 m0 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M0_6 m0 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M0_7 m0 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_1 m1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_2 m1 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_3 m1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_4 m1 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_5 m1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_6 m1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M1_7 m1 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_1 m2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_2 m2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_3 m2 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_4 m2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_5 m2 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_6 m2 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_M2_7 m2 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1194 CAM_UNKNOWN_2: 8 CAMERA + +BO_ 1198 LKA_HUD_1: 8 CAMERA + SG_ NEW_SIGNAL_1 : 4|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_3 : 12|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 38|3@0+ (1,0) [0|7] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1351 LKA_HUD_2: 8 CAMERA + SG_ NEW_SIGNAL_1 : 51|3@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_2 : 55|4@0+ (1,0) [0|15] "" XXX + +BO_ 1442 ACC_1: 8 RADAR + SG_ HUD_SPEED : 7|8@0+ (1,0) [0|255] "km/h" XXX + SG_ TARGET_SPEED : 15|8@0+ (0.433,0) [0|255] "m/s" XXX + SG_ NEW_SIGNAL_3 : 17|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_4 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_STATUS : 22|2@0+ (1,0) [0|3] "" XXX + SG_ MAYBE_TJA : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 1458 CAM_UNKNOWN_5: 4 CAMERA + SG_ NEW_SIGNAL_1 : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 1854 BCM_1: 4 BCM + SG_ RIGHT_TURN_STALK : 16|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_TURN_STALK : 17|1@0+ (1,0) [0|1] "" XXX + +BO_ 1865 NEW_MSG_749: 8 XXX + SG_ NEW_SIGNAL_1 : 23|2@0+ (1,0) [0|3] "" XXX + +BO_ 506855454 CAM_UNKNOWN_6: 1 CAMERA + +CM_ SG_ 254 LONG_ACCEL "scale TBD"; +CM_ SG_ 254 LATERAL_ACCEL "scale TBD"; +CM_ SG_ 254 YAW_RATE "scale estimated"; +CM_ SG_ 257 MAYBE_ACC_BRAKE "may correlate with ACC-actuated braking"; +CM_ SG_ 278 FORWARD_1 "probably per-axle"; +CM_ SG_ 278 REVERSE_1 "probably per-axle"; +CM_ SG_ 278 FORWARD_2 "probably per-axle"; +CM_ SG_ 278 REVERSE_2 "probably per-axle"; +CM_ SG_ 282 NEW_SIGNAL_1 "smoothed yaw rate with low speed cutoff, maybe active forward lighting target angle"; +CM_ SG_ 284 VEHICLE_SPEED "scale estimated"; +CM_ SG_ 502 HAPTIC_WARN_1 "correlates with steering wheel haptic"; +CM_ SG_ 502 HAPTIC_WARN_2 "correlates with steering wheel haptic"; +CM_ BO_ 1198 "Definite LKA activity, probably contains lane-line recognition and lane departure signals, indicator of LKA vs TJA, perhaps indicator of active assist in map-permitted areas"; +VAL_ 262 LKA_STATUS 0 "standby" 1 "lka_active"; diff --git a/opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc b/opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc new file mode 100644 index 0000000000..49fcae19c2 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ford_cgea1_2_bodycan_2011.dbc @@ -0,0 +1,1070 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 58 BCM_m_FrP01: 8 XXX + SG_ ChildLockCmd : 13|1@0+ (1,0) [0|0] "" XXX + SG_ ChildLockCmd_UB : 12|1@0+ (1,0) [0|0] "" XXX + SG_ CLockCmd : 31|8@0+ (1,0) [0|0] "" XXX + SG_ CLockCmd_UB : 14|1@0+ (1,0) [0|0] "" XXX + SG_ DDShortDrop : 3|2@0+ (1,0) [0|0] "" XXX + SG_ DDShortDrop_UB : 4|1@0+ (1,0) [0|0] "" XXX + SG_ DirectionIndication : 11|2@0+ (1,0) [0|0] "" XXX + SG_ DirectionIndication_UB : 0|1@0+ (1,0) [0|0] "" XXX + SG_ EpsDrvInfo_D_Dsply : 36|4@0+ (1,0) [0|0] "" XXX + SG_ EpsDrvInfo_D_Dsply_UB : 39|1@0+ (1,0) [0|0] "" XXX + SG_ GearRvrseActv_D_Actl : 38|2@0+ (1,0) [0|0] "" XXX + SG_ GearRvrseActv_D_Actl_UB : 15|1@0+ (1,0) [0|0] "" XXX + SG_ VehVActlEng_D_Qf_3A : 9|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_ActlEng_UB_3A : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_ActlEng_3A : 55|16@0+ (0.01,0) [0|0] "kph" XXX + SG_ Veh_V_DsplyCcSet : 23|8@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_RqCcSet : 32|9@0+ (0.5,0) [0|0] "kph" XXX + SG_ WasherFluidLevelLow : 5|1@0+ (1,0) [0|0] "" XXX + +BO_ 64 BCM_m_FrP02: 8 XXX + SG_ FuelCutoffReq : 7|4@0+ (1,0) [0|0] "" XXX + SG_ FuelCutoffReq_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ KVRFRSettings : 54|15@0+ (1,0) [0|0] "" XXX + SG_ KVRFRSettings_UB : 10|1@0+ (1,0) [0|0] "" XXX + SG_ PsngrFrntDetct_D_Actl : 23|2@0+ (1,0) [0|0] "" XXX + SG_ PsngrFrntDetct_D_Actl_UB : 3|1@0+ (1,0) [0|0] "" XXX + SG_ RILReq : 21|2@0+ (1,0) [0|0] "" XXX + SG_ RILReq_UB : 55|1@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBuckleDriver : 31|2@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBuckleDriver_UB : 0|1@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBuckleMid : 29|2@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBuckleMid_UB : 15|1@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBucklePsngr : 27|2@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBucklePsngr_UB : 14|1@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBuckleDriver : 25|2@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBuckleDriver_UB : 13|1@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBucklePsngr : 37|2@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBucklePsngr_UB : 11|1@0+ (1,0) [0|0] "" XXX + SG_ WheelRotationCnt : 47|8@0+ (1,0) [0|0] "" XXX + SG_ WheelRotationCnt_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ WheelRotationCntQF : 35|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRr_D_Actl_UB_40 : 2|1@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRr_D_Actl_40 : 39|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRl_D_Actl_UB_40 : 1|1@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRl_D_Actl_40 : 33|2@0+ (1,0) [0|0] "" XXX + +BO_ 131 MS_Steering_Data: 8 XXX + SG_ SteColumn_Status_UB : 28|1@0+ (1,0) [0|0] "" XXX + SG_ SteColumn_Status : 31|3@0+ (1,0) [0|0] "" XXX + SG_ SteCol_Manual_Override_UB : 26|1@0+ (1,0) [0|0] "" XXX + SG_ SteCol_Manual_Override : 27|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Send_UB : 20|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Send : 6|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Phone_UB : 17|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Phone : 3|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_OK_UB : 16|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_OK : 2|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Volume_Up_UB : 23|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Volume_Down_UB : 22|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Voice_PTT_UB : 21|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Seek_Right_UB : 19|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Seek_Left_UB : 18|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Mode_UB : 11|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Mode : 13|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Media_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Volume_Up : 15|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Volume_Down : 14|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Voice_PTT : 7|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Seek_Right : 5|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Seek_Left : 4|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Media : 1|1@0+ (1,0) [0|0] "" XXX + SG_ VehYaw_W_Actl : 55|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + SG_ SteWhlCtl_End_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_End : 0|1@0+ (1,0) [0|0] "" XXX + SG_ VehYaw_W_Actl_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Mute_UB : 10|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Mute : 12|1@0+ (1,0) [0|0] "" XXX + +BO_ 257 Driver_Seat_Information: 8 XXX + SG_ Reverse_Mirror_Stat : 3|2@0+ (1,0) [0|0] "" XXX + SG_ Memory_Feedback_Rqst : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Easy_Entry_Exit_Stat : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 260 Driver_Seat_Information_2: 8 XXX + SG_ Memory_Cmd : 15|4@0+ (1,0) [0|0] "" XXX + SG_ Easy_Entry_Rqst : 4|2@0+ (1,0) [0|0] "" XXX + SG_ DrvSeat_Stat : 7|3@0+ (1,0) [0|0] "" XXX + SG_ Cancel_Auto_Movement : 1|1@0+ (1,0) [0|0] "" XXX + +BO_ 269 IdleShutdown_Legacy: 8 XXX + SG_ IDLE_ENGINE_SHUTDOWN : 23|2@0+ (1,0) [0|0] "" XXX + +BO_ 272 Keyfob_Pad_Stat: 8 XXX + SG_ L_Pwr_Sliding_Dr_Rqst : 28|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Decklid_Rqst : 31|1@0+ (1,0) [0|0] "" XXX + SG_ R_Pwr_Sliding_Dr_Rqst : 29|1@0+ (1,0) [0|0] "" XXX + SG_ Keyfob_Pad_Msg_Count : 23|8@0+ (1,0) [0|0] "Counts" XXX + SG_ Keyfob_Pad_Id_Number : 15|8@0+ (1,0) [0|0] "" XXX + SG_ Keyfob_Pad_Button_Pressed : 7|8@0+ (1,0) [0|0] "" XXX + SG_ Power_Liftgate_Rqst : 30|1@0+ (1,0) [0|0] "" XXX + SG_ Keycode_Status : 27|20@0+ (1,0) [0|0] "" XXX + +BO_ 275 Power_Liftgate_Mode_StatM: 8 XXX + SG_ Power_Liftgate_Mode_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ DrTgateChime_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 276 Running_Board_CmdM: 8 XXX + SG_ Running_Board_Cmd : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 277 Running_Board_StatM: 8 XXX + SG_ Running_Board_Stat : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 288 ClmtCtrlSeat_SetCmdlegacy1: 8 XXX + SG_ ClmtCtrlSeat_SetCmd_Dvr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 289 ClmtCtrlSeat_SetStat_DvrM: 8 XXX + SG_ ClmtCtrlSeat_SetStat_Dvr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 290 ClmtCtrlSeat_SetCmdlegacy2: 8 XXX + SG_ ClmtCtrlSeat_SetCmd_Psgr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 291 ClmtCtrlSeat_SetStat_PsgrM: 8 XXX + SG_ ClmtCtrlSeat_SetStat_Psgr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 292 ClmtCtrlSeatSet_Cmd_v2_MS: 8 XXX + SG_ ClmtCtrlSeat_SetCmd_Psgr : 15|8@0+ (1,0) [0|0] "" XXX + SG_ ClmtCtrlSeat_SetCmd_Dvr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 293 ClmtCtrlSeatSet_Stat_v2: 8 XXX + SG_ ClmtCtrlSeat_SetStat_Psgr : 15|8@0+ (1,0) [0|0] "" XXX + SG_ ClmtCtrlSeat_SetStat_Dvr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 304 Mirror_Manual_Override_M: 8 XXX + SG_ Mirror_Manual_Override : 7|1@0+ (1,0) [0|0] "Binary" XXX + +BO_ 305 Memory_Sw_StatM: 8 XXX + SG_ Memory_Sw_Message_Count : 15|8@0+ (1,0) [0|0] "Counts" XXX + SG_ Memory_Set_Sw_Stat : 7|1@0+ (1,0) [0|0] "Binary" XXX + SG_ Memory_Set_Cancel : 3|1@0+ (1,0) [0|0] "Binary" XXX + SG_ Memory_3_Sw_Stat : 4|1@0+ (1,0) [0|0] "Binary" XXX + SG_ Memory_2_Sw_Stat : 5|1@0+ (1,0) [0|0] "Binary" XXX + SG_ Memory_1_Sw_Stat : 6|1@0+ (1,0) [0|0] "Binary" XXX + +BO_ 306 Driver_Lock_Sw_StatM: 8 XXX + SG_ Driver_Door_Key_Unlock : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Driver_Door_Key_Lock : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Driver_Lock_Sw_Message_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX + SG_ Driver_Lock_Sw_Stat : 15|2@0+ (1,0) [0|0] "" XXX + +BO_ 309 Memory_Cancel_Cmd_M: 8 XXX + SG_ Memory_Cancel_Cmd : 7|1@0+ (1,0) [0|0] "Binary" XXX + +BO_ 310 Driver_Door_Lock_CmdM: 8 XXX + SG_ Driver_Door_Lock_Msg_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX + SG_ Driver_Door_Lock_Cmd : 15|4@0+ (1,0) [0|0] "" XXX + +BO_ 311 Pass_Mirror_Sw_StatM: 8 XXX + SG_ Pass_Mirror_Sw_UD_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Mirror_Sw_LR_Stat : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 313 RPwrSlideDr_Unlock_RqstM: 8 XXX + SG_ RPwrSlideDr_Unlock_Rqst : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 320 LPwrSlideDr_Unlock_RqstM: 8 XXX + SG_ LPwrSlideDr_Unlock_Rqst : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 321 Passive_Entry_Ctrl_Data: 8 XXX + SG_ PE_Control_Data_1 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Control_Cmd : 7|3@0+ (1,0) [0|0] "" XXX + SG_ PK_SearchResults_Prog : 63|4@0+ (1,0) [0|0] "" XXX + SG_ PK_SearchResults_MyKey : 4|4@0+ (1,0) [0|0] "" XXX + SG_ PK_SearchResults_Found : 59|4@0+ (1,0) [0|0] "" XXX + SG_ PK_Search_EvNum : 15|8@0+ (1,0) [0|0] "Counts" XXX + SG_ PE_Control_Data_5 : 55|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Control_Data_4 : 47|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Control_Data_3 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Control_Data_2 : 31|8@0+ (1,0) [0|0] "" XXX + +BO_ 322 Passive_Entry_Target_Data: 8 XXX + SG_ PE_Target_Data_5 : 47|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Target_Cmd : 7|2@0+ (1,0) [0|0] "" XXX + SG_ PE_Target_Status : 5|1@0+ (1,0) [0|0] "" XXX + SG_ PE_Target_Data_1 : 15|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Search_Rqst : 4|2@0+ (1,0) [0|0] "" XXX + SG_ PE_Target_Data_4 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Target_Data_3 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Target_Data_2 : 23|8@0+ (1,0) [0|0] "" XXX + +BO_ 577 BCM_m_FrP28: 8 XXX + SG_ WheelRotToothCntFrL : 15|8@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntFrL_UB : 42|1@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntFrR : 23|8@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntFrR_UB : 41|1@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntReL : 31|8@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntReL_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntReR : 39|8@0+ (1,0) [0|0] "" XXX + SG_ WheelRotToothCntReR_UB : 43|1@0+ (1,0) [0|0] "" XXX + +BO_ 736 FCIM_Button_Press: 8 XXX + SG_ FCIM_Target_ID : 13|4@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Button_Type : 7|8@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Button_State : 15|2@0+ (1,0) [0|0] "" XXX + +BO_ 806 Compressor_Req: 8 XXX + SG_ HvacEvap_Te_Rq : 33|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ HvacAirCond_B_Rq : 7|1@0+ (1,0) [0|0] "" XXX + SG_ HvacEvap_Te_Offst : 1|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + +BO_ 842 MassageSeat_Data1: 8 XXX + SG_ SeatLmbrUpDrv_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrMidDrv_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrLoDrv_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlUpDrv_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlLoDrv_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 843 MassageSeat_Data2: 8 XXX + SG_ SeatLmbrUpPsgr_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrMidPsgr_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrLoPsgr_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlUpPsgr_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlLoPsgr_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 844 MassageSeat_Stat1: 8 XXX + SG_ StmsLmbrDrv_D_Stat : 17|2@0+ (1,0) [0|0] "" XXX + SG_ StmsCshnDrv_D_Stat : 19|2@0+ (1,0) [0|0] "" XXX + SG_ SeatSwtchDrv_B_Stat : 31|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDrv_D_Stat : 23|3@0+ (1,0) [0|0] "" XXX + SG_ SeatAirAmb_P_Actl : 7|16@0+ (0.01,0) [0|0] "KiloPascal" XXX + SG_ SeatPDrv_B_Stat : 20|1@0+ (1,0) [0|0] "" XXX + +BO_ 845 MassageSeat_Stat2: 8 XXX + SG_ StmsLmbrPsgr_D_Stat : 15|2@0+ (1,0) [0|0] "" XXX + SG_ StmsCshnPsgr_D_Stat : 13|2@0+ (1,0) [0|0] "" XXX + SG_ SeatSwtchPsgr_B_Stat : 11|1@0+ (1,0) [0|0] "" XXX + SG_ SeatPPsgr_B_Stat : 7|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnPsgr_D_Stat : 6|3@0+ (1,0) [0|0] "" XXX + SG_ PsgrMemFeedback_Rsp : 3|4@0+ (1,0) [0|0] "" XXX + +BO_ 846 MassageSeat_Req_MS: 8 XXX + SG_ SeatFnPsgr_D_Rq : 15|3@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDrv_D_Rq : 12|3@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDfaltPsgr_B_Rq : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDfaltDrv_B_Rq : 8|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnChngPsgr_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX + SG_ SeatFnChngDrv_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX + SG_ PsgrMemory_Rq : 3|4@0+ (1,0) [0|0] "" XXX + +BO_ 849 MassageSeat_Data3: 8 XXX + SG_ SeatCshnDrvRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnDrvRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnDrvFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnDrvFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 850 MassageSeat_Data4: 8 XXX + SG_ SeatCshnPsgrRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnPsgrRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnPsgrFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnPsgrFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 853 EFP_CC_Status_MS: 8 XXX + SG_ Save_My_Temp : 59|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Left_Temp_Setpt : 31|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RrDefrost_HtdMirrorReq : 60|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Control_Status : 16|1@0+ (1,0) [0|0] "" XXX + SG_ MultipleButtonPressReq : 63|3@0+ (1,0) [0|0] "" XXX + SG_ Rear_System_Mode_Req : 19|3@0+ (1,0) [0|0] "" XXX + SG_ Recirc_Request : 23|2@0+ (1,0) [0|0] "" XXX + SG_ Front_Rt_Temp_Setpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ AC_Request : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Windshield_ModeRequest : 15|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Panel_Mode_Request : 7|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Overriding_ModeReq : 10|3@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_Request : 3|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Rear_Right_Temp_Setpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ Forced_Recirc_Req : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Left_Temp_Setpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX + +BO_ 854 EFP_CC_Seat_Req_Stat_MS: 8 XXX + SG_ Front_Rear_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX + SG_ Pass_Rr_Cond_Seat_Req : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Rr_Cond_Seat_Lvl : 8|3@0+ (1,0) [0|0] "" XXX + SG_ Pass_Fr_Cond_Seat_Req : 13|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Fr_Cond_Seat_Lvl : 11|3@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Rr_Cond_Seat_Req : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Rr_Cond_Seat_Lvl : 2|3@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Fr_Cond_Seat_Req : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Fr_Cond_Seat_Lvl : 5|3@0+ (1,0) [0|0] "" XXX + +BO_ 855 RCCM_CC_Status: 8 XXX + SG_ RrBlwrCondStLdShedStat : 25|2@0+ (1,0) [0|0] "" XXX + SG_ FrBlwrCondStLdShedStat : 20|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_Rr_Rt_TempSetpt : 63|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Rr_Left_TempSetpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Fr_Rt_TempSetpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Fr_Left_TempSetpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Fr_Rr_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX + SG_ Panel_Mode_State : 7|4@0+ (8.33,0) [0|0] "%" XXX + SG_ RrDefHtdMirrLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX + SG_ Windshield_Mode_State : 15|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Recirc_Door_State : 11|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_System_Mode_State : 23|3@0+ (1,0) [0|0] "" XXX + SG_ Default_Defrost_State : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Auto_AC_Indicator_Temp : 16|1@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_State : 3|4@0+ (8.33,0) [0|0] "%" XXX + SG_ RrDefrost_HtdMirrState : 8|1@0+ (1,0) [0|0] "" XXX + +BO_ 856 RCCM_CC_Seat_Status: 8 XXX + SG_ Active_My_Temp : 2|1@0+ (1,0) [0|0] "" XXX + SG_ CC_HtdStrWhl_Req : 24|1@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PR_Cond_Seat_Lvl : 31|3@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PR_Cond_Seat_Req : 28|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PF_Cond_Seat_Req : 20|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PF_Cond_Seat_Lvl : 23|3@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DR_Cond_Seat_Req : 12|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DR_Cond_Seat_Lvl : 15|3@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DF_Cond_Seat_Req : 4|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DF_Cond_Seat_Lvl : 7|3@0+ (1,0) [0|0] "" XXX + SG_ PassRrCondStLdShedStat : 26|2@0+ (1,0) [0|0] "" XXX + SG_ PassFrCondStLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX + SG_ DrvRrCondStLdShedStat : 10|2@0+ (1,0) [0|0] "" XXX + SG_ DrvFrCondStLdShedStat : 1|2@0+ (1,0) [0|0] "" XXX + +BO_ 857 RCCM_CC_MBP_Press_Stat: 8 XXX + SG_ Report_Active : 33|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Temp_Units : 35|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Fan_Bars_Disply : 39|3@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Temp_Units : 36|1@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyPass10 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyPass1 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyDrvr10 : 7|8@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyDrvr1 : 15|8@0+ (1,0) [0|0] "" XXX + +BO_ 859 MFD_CC_Status_MS: 8 XXX + SG_ Rear_Mode_Bttn_Status : 38|1@0+ (1,0) [0|0] "" XXX + +BO_ 860 EFP_CC_Info_Status_MS: 8 XXX + SG_ Rear_Panel_Btn_State : 41|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Floor_Btn_State : 40|1@0+ (1,0) [0|0] "" XXX + SG_ HtdStrWhl_SftBtt_Stt : 39|2@0+ (1,0) [0|0] "" XXX + SG_ AC_Sft_Button_State : 23|2@0+ (1,0) [0|0] "" XXX + SG_ DrvRrCondSeatSftBttnSt : 47|3@0+ (1,0) [0|0] "" XXX + SG_ DrvFrCondSeatSftBtnStt : 37|3@0+ (1,0) [0|0] "" XXX + SG_ CC_RecircSBtn_St : 27|2@0+ (1,0) [0|0] "" XXX + SG_ CC_RrDefrSBtn_St : 24|1@0+ (1,0) [0|0] "" XXX + SG_ PasRrCondSeatSftBttnSt : 44|3@0+ (1,0) [0|0] "" XXX + SG_ PasFrCondSeatSftBtnStt : 34|3@0+ (1,0) [0|0] "" XXX + SG_ MyTemp_Soft_Bttn_State : 25|1@0+ (1,0) [0|0] "" XXX + SG_ CC_MaxACSBtn_St : 28|1@0+ (1,0) [0|0] "" XXX + SG_ RearPowerButtonState : 16|1@0+ (1,0) [0|0] "" XXX + SG_ RearCoolBarsDisplayed : 11|3@0+ (1,0) [0|0] "Bars_On" XXX + SG_ Rear_Sft_Control_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ CC_RrNeutralBarDsp_St : 8|1@0+ (1,0) [0|0] "" XXX + SG_ CC_RrHeatBarsDsp_St : 31|3@0+ (1,0) [0|0] "Bars_On" XXX + SG_ Rear_Fan_Bars_Displayed : 19|3@0+ (1,0) [0|0] "" XXX + SG_ CC_RrCtrlBtn_St : 20|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Auto_Button_State : 21|1@0+ (1,0) [0|0] "" XXX + SG_ CC_FrPowerSBtn_St : 14|1@0+ (1,0) [0|0] "" XXX + SG_ CC_FrDefrostSBtn_St : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_Soft_Btn_Stt : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_MODE_State : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_FAN_State : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Dual_Button_State : 12|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarPnlSBtn_St : 5|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarPnFlrSBtn_St : 4|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarFlrWsSBtn_St : 2|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarDrvFlrSBtn_St : 3|1@0+ (1,0) [0|0] "" XXX + +BO_ 861 HSWheel_CC_Info_Stat: 8 XXX + SG_ HtdStrWhl_SftBtt_State : 57|2@0+ (1,0) [0|0] "" XXX + +BO_ 862 Climate_Control_Data_2: 8 XXX + SG_ HvacRec_Pc_Est : 31|7@0+ (1,0) [0|0] "%" XXX + SG_ HvacEngIdleInc_B_Rq : 24|1@0+ (1,0) [0|0] "" XXX + SG_ HvacAir_Flw_Est : 13|9@0+ (0.5,0) [0|0] "liter/second" XXX + SG_ AmbTempImpr : 7|10@0+ (0.25,-128.0) [0|0] "degreesC" XXX + +BO_ 900 Vehicle_Access_RqstM: 8 XXX + SG_ PE_AssocConfirm_D_Actl : 63|3@0+ (1,0) [0|0] "" XXX + SG_ DrTgateOpen_D_RqRfa : 51|2@0+ (1,0) [0|0] "" XXX + SG_ PE_Decklid_Inhibit_Rqst : 53|2@0+ (1,0) [0|0] "" XXX + SG_ PK_Program : 45|2@0+ (1,0) [0|0] "" XXX + SG_ PE_Packet_Cnt : 31|8@0+ (1,0) [0|0] "Counts" XXX + SG_ PE_Control_Status : 33|2@0+ (1,0) [0|0] "" XXX + SG_ PE_Control_Code : 7|8@0+ (1,0) [0|0] "" XXX + SG_ PE_Perimeter_Lighting_Stat : 15|2@0+ (1,0) [0|0] "" XXX + SG_ PE_RKE_Flash_Rqst : 34|1@0+ (1,0) [0|0] "" XXX + SG_ PE_Lock_EvNum : 23|8@0+ (1,0) [0|0] "Counts" XXX + SG_ PE_Lock_Requestor : 39|5@0+ (1,0) [0|0] "" XXX + SG_ PE_Lock_Sub_Id : 11|4@0+ (1,0) [0|0] "" XXX + SG_ PE_Lock_Status : 13|2@0+ (1,0) [0|0] "" XXX + SG_ PE_DrvCfg_Horn_Rqst : 47|2@0+ (1,0) [0|0] "" XXX + SG_ PEBackupSlot_Stats : 55|2@0+ (1,0) [0|0] "" XXX + SG_ PE_Fob_Number : 43|4@0+ (1,0) [0|0] "Number" XXX + SG_ PE_Keypad_LiftGlass_Rqst : 49|1@0+ (1,0) [0|0] "" XXX + +BO_ 901 Vehicle_Lock_Status: 8 XXX + SG_ CntrStkKeycodeActl : 55|16@0+ (1,0) [0|0] "" XXX + SG_ CntrStk_D_RqAssoc_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ CntrStk_D_RqAssoc : 43|3@0+ (1,0) [0|0] "" XXX + SG_ KeyTypeChngMykey_D_Rq : 45|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_Lock_Sub_Id : 21|4@0+ (1,0) [0|0] "" XXX + SG_ Veh_Lock_Status : 17|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_Lock_Requestor : 39|5@0+ (1,0) [0|0] "" XXX + SG_ Veh_Lock_EvNum : 31|8@0+ (1,0) [0|0] "Counts" XXX + SG_ Trim_Switch_Status_Count : 15|8@0+ (1,0) [0|0] "Counts" XXX + SG_ Trim_Switch_Status : 23|2@0+ (1,0) [0|0] "" XXX + SG_ DF_KeyCyl_Switch_Stat_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX + SG_ DF_KeyCyl_Switch_Stat : 34|2@0+ (1,0) [0|0] "" XXX + SG_ Perimeter_Alarm_Status : 47|2@0+ (1,0) [0|0] "" XXX + SG_ KeyTypeChngMykey_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX + +BO_ 902 Remote_Start: 8 XXX + SG_ Remote_Start_Req : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 903 CC_FCIM_Update: 8 XXX + SG_ Rr_Temp_M_H_Heat_Ind : 30|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_7_Indicator : 45|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_6_Indicator : 46|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_5_Indicator : 47|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_4_Indicator : 32|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_3_Indicator : 33|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_2_Indicator : 34|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Fan_Low_Indicator : 35|1@0+ (1,0) [0|0] "" XXX + SG_ AC_Indicator : 36|1@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_Indicator : 37|1@0+ (1,0) [0|0] "" XXX + SG_ Panel_Mode_Indicator : 38|1@0+ (1,0) [0|0] "" XXX + SG_ Windshield_Mode_Indicator : 39|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_High_Cool_Ind : 24|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_M_H_Cool_Ind : 25|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_M_L_Cool_Ind : 26|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_Low_Cool_Ind : 27|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_Center_Ind_On : 28|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_High_Heat_Ind : 29|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_M_L_Heat_Ind : 31|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Temp_Low_Heat_Ind : 16|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Control_Indicator : 17|1@0+ (1,0) [0|0] "" XXX + SG_ Auto_Indicator_Rear : 18|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Indicator_Rear : 19|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_U_R_Seat_Cool_Ind : 20|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_M_Seat_Cool_Ind : 21|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_L_L_Seat_Cool_Ind : 22|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_U_R_Seat_Heat_Ind : 23|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_M_Seat_Heat_Ind : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_L_L_Seat_Heat_Ind : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_U_R_Seat_Cool_Ind : 10|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_M_Seat_Cool_Ind : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_L_L_Seat_Cool_Ind : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_U_R_Seat_Heat_Ind : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_M_Seat_Heat_Ind : 14|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_L_L_Seat_Heat_Ind : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Single_Mode_Indicator : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Auto_Indicator : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Recirc_Indicator : 2|1@0+ (1,0) [0|0] "" XXX + SG_ Max_AC_Econ_Indicator : 3|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_DefHtd_Mirr_Indicator : 4|1@0+ (1,0) [0|0] "" XXX + SG_ Defrost_Indicator : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Temp_Dual_Indicator : 6|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Indicator_Front : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 904 CC_NavChassis_Info_Status: 8 XXX + SG_ Rear_Defrost_Soft_Bttn_Stt : 52|1@0+ (1,0) [0|0] "" XXX + SG_ Recirc_Soft_Button_State : 54|2@0+ (1,0) [0|0] "" XXX + SG_ Max_AC_Soft_Button_State : 55|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_Soft_Btn_Stt : 24|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Power_Soft_Btn_State : 25|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Defrost_Soft_Btn_Stt : 26|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Power_Button_State : 33|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_FAN_Indicator : 27|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_MODE_Indicator : 28|1@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Rear_Set_Temp_Display : 17|1@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Rear_Set_Temp_Units : 19|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Heat_Bars_Displayed : 42|3@0+ (1,0) [0|0] "Bars_On" XXX + SG_ CC_Bar_Rear_Set_Temp_Dig3 : 21|2@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Rear_Set_Temp_Dig2 : 15|8@0+ (1,0) [0|0] "ASCII" XXX + SG_ CC_Bar_Rear_Set_Temp_Dig1 : 7|8@0+ (1,0) [0|0] "ASCII" XXX + SG_ Rear_Neutral_Bar_Displayed : 43|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Fan_Bars_Displayed : 46|3@0+ (1,0) [0|0] "" XXX + SG_ Rear_Control_Button_State : 47|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Auto_Button_State : 32|1@0+ (1,0) [0|0] "" XXX + SG_ AC_Sft_Button_State : 35|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Cool_Bars_Displayed : 38|3@0+ (1,0) [0|0] "Bars_On" XXX + SG_ Dual_Button_State : 39|1@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Sft_Btn_FlrWs_State : 29|1@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Sft_Btn_Floor_State : 30|1@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Sft_Btn_PnFlr_State : 31|1@0+ (1,0) [0|0] "" XXX + SG_ CC_Bar_Sft_Btn_Pnl_State : 16|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Sft_Control_Status : 23|2@0+ (1,0) [0|0] "" XXX + +BO_ 920 FCIM_CC_Status: 8 XXX + SG_ Manual_Temp_Knob_Pos : 8|9@0+ (1,0) [0|0] "Degrees CW" XXX + SG_ Manual_Blower_Knob_Pos : 24|9@0+ (1,0) [0|0] "Degrees CW" XXX + SG_ Rear_Blower_IncreaseButton : 40|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Blower_DecreaseButton : 55|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Temp_Decrease_Button : 41|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Temp_Increase_Button : 42|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Control_Button : 43|1@0+ (1,0) [0|0] "" XXX + SG_ Auto_Button_Rear : 44|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Button_Rear : 45|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_Heated_Seat_Btn : 47|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_Cooled_Seat_Btn : 46|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_Cooled_Seat_Btn : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_Heated_Seat_Btn : 10|1@0+ (1,0) [0|0] "" XXX + SG_ Blower_Decrease_Button : 25|1@0+ (1,0) [0|0] "" XXX + SG_ Blower_Increase_Button : 26|1@0+ (1,0) [0|0] "" XXX + SG_ Floor_Defrost_Mode_Button : 27|1@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_Button : 28|1@0+ (1,0) [0|0] "" XXX + SG_ Panel_Floor_Mode_Button : 29|1@0+ (1,0) [0|0] "" XXX + SG_ Panel_Mode_Button : 30|1@0+ (1,0) [0|0] "" XXX + SG_ Mode_Change_Button : 31|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_Temp_Increase : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_Temp_Decrease : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_Temp_Decrease : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Lft_Side_Temp_Increase : 14|1@0+ (1,0) [0|0] "" XXX + SG_ Auto_Button_Front : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Recirc_Button : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Max_AC_Econ_Button : 1|1@0+ (1,0) [0|0] "" XXX + SG_ AC_Button : 2|1@0+ (1,0) [0|0] "" XXX + SG_ Rr_Def_Htd_Mirr_Button : 3|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Defrost_Button : 4|1@0+ (1,0) [0|0] "" XXX + SG_ Rt_Side_Temp_Dual_Button : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Button_Front : 6|1@0+ (1,0) [0|0] "" XXX + SG_ Climate_Button : 7|1@0+ (1,0) [0|0] "" XXX + SG_ CcdMde_D_Rq : 54|2@0+ (1,0) [0|0] "" XXX + +BO_ 921 Nav_CC_Status: 8 XXX + SG_ Front_System_Button_Status : 7|5@0+ (1,0) [0|0] "" XXX + SG_ Rear_Temp_Button_Status : 23|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Man_Temp_Bar_Status : 11|4@0+ (1,0) [0|0] "" XXX + SG_ Rear_Fan_Button_Status : 13|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Man_ATC_Button_Status : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Blower_Bar_Status : 2|3@0+ (1,0) [0|0] "# of Bars" XXX + +BO_ 922 VoiceRec_CC_Request: 8 XXX + SG_ Recirculate_On : 10|1@0+ (1,0) [0|0] "" XXX + SG_ Recirculate_Off : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Defrost_On : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Defrost_Off : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Max_AC_On : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Max_AC_Off : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Defrost_On : 14|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Defrost_Off : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Blower_Increment : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Blower_Decrement : 23|1@0+ (1,0) [0|0] "" XXX + SG_ Dual_Zone_Off : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Driver_Temp_Increment : 22|1@0+ (1,0) [0|0] "" XXX + SG_ Driver_Temp_Decrement : 21|1@0+ (1,0) [0|0] "" XXX + SG_ Climate_On : 4|1@0+ (1,0) [0|0] "" XXX + SG_ Climate_Off : 3|1@0+ (1,0) [0|0] "" XXX + SG_ Automatic_Mode : 6|1@0+ (1,0) [0|0] "" XXX + SG_ AC_On : 2|1@0+ (1,0) [0|0] "" XXX + SG_ AC_Off : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Voice_Blower_Limit : 7|1@0+ (1,0) [0|0] "" XXX + SG_ Driver_Set_Temp : 31|8@0+ (0.5,0) [0|0] "Degrees" XXX + +BO_ 928 Ignition_Switch_PositionM: 8 XXX + SG_ AirAmb_Te_ActlFilt_UB : 14|1@0+ (1,0) [0|0] "" XXX + SG_ AirAmb_Te_ActlFilt : 49|10@0+ (0.25,-128.0) [0|0] "deg C" XXX + SG_ OdometerMasterValue_UB : 15|1@0+ (1,0) [0|0] "" XXX + SG_ OdometerMasterValue : 31|24@0+ (1,0) [0|0] "km" XXX + SG_ Remote_Start_Status : 13|2@0+ (1,0) [0|0] "" XXX + SG_ Key_In_Ignition_Stat : 3|2@0+ (1,0) [0|0] "" XXX + SG_ Ignition_Switch_Stable : 1|2@0+ (1,0) [0|0] "" XXX + SG_ Ignition_Status : 7|4@0+ (1,0) [0|0] "" XXX + SG_ BOO_Switch_Status : 9|2@0+ (1,0) [0|0] "" XXX + SG_ Remote_Device_Feedback : 23|3@0+ (1,0) [0|0] "" XXX + +BO_ 934 Side_Detect_L_StatusM: 8 XXX + SG_ Cross_Traffic_L_SnState : 23|2@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_L_SysOpState : 3|2@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_L_SnsrState : 1|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_L_Illum : 15|8@0+ (1,0) [0|0] "%" XXX + SG_ Side_Detect_L_Detect : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_Op_State : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_Alert : 19|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_L_Alert : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 935 Side_Detect_R_StatusM: 8 XXX + SG_ Cross_Traffic_R_Alert : 23|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_SnState : 19|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_Op_State : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_R_Detect : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_R_Illum : 15|8@0+ (1,0) [0|0] "%" XXX + SG_ SideDetect_R_SnsrState : 1|2@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_R_SysOpState : 3|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_R_Alert : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 944 Body_Information_6_MS: 8 XXX + SG_ DRV_SELECT_STAT : 3|4@0+ (1,0) [0|0] "" XXX + SG_ reserve_2bits : 7|2@0+ (1,0) [0|0] "" XXX + SG_ reserve_2 : 5|1@0+ (1,0) [0|0] "" XXX + SG_ reserve_3 : 4|1@0+ (1,0) [0|0] "" XXX + +BO_ 945 Ajar_Stat: 8 XXX + SG_ Decklid_Ajar_Status : 3|1@0+ (1,0) [0|0] "" XXX + SG_ Hood_Ajar_Status : 0|1@0+ (1,0) [0|0] "" XXX + SG_ LG_Glass_Ajar_Status : 2|1@0+ (1,0) [0|0] "" XXX + SG_ DF_Door_Ajar_Status : 7|1@0+ (1,0) [0|0] "" XXX + SG_ PF_Door_Ajar_Status : 6|1@0+ (1,0) [0|0] "" XXX + SG_ DR_Door_Ajar_Status : 5|1@0+ (1,0) [0|0] "" XXX + SG_ PR_Door_Ajar_Status : 4|1@0+ (1,0) [0|0] "" XXX + SG_ LG_Door_Ajar_Status : 1|1@0+ (1,0) [0|0] "" XXX + +BO_ 946 Body_Information_5_MS: 8 XXX + SG_ CoolantFanStepAct_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondRec_B_Rq_UB : 38|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondRec_B_Rq : 39|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondEvdc_D_Stats_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondEvdc_D_Stats : 37|3@0+ (1,0) [0|0] "" XXX + SG_ AirCondClutch_B_Stats_UB : 19|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondClutch_B_Stats : 20|1@0+ (1,0) [0|0] "" XXX + SG_ CoolantFanStepAct : 47|5@0+ (1,0) [0|0] "Steps" XXX + SG_ AirCondFluidHi_P_Actl_UB : 18|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondFluidHi_P_Actl : 31|8@0+ (0.125,0) [0|0] "bar" XXX + SG_ SECONDARY_HEATER_STAT_UB : 63|1@0+ (1,0) [0|0] "" XXX + SG_ CURRENT_DRAW_UB : 62|1@0+ (1,0) [0|0] "" XXX + SG_ SECONDARY_HEATER_STAT : 40|1@0+ (1,0) [0|0] "" XXX + SG_ CURRENT_DRAW : 55|8@0+ (0.5,0) [0|0] "Amps" XXX + +BO_ 947 BodyInformation_3_MS: 8 XXX + SG_ CamraDefog_B_Req_UB : 58|1@0+ (1,0) [0|0] "" XXX + SG_ TrStats_D_Actl_UB : 48|1@0+ (1,0) [0|0] "" XXX + SG_ RearFog_Lamp_Dbnce_UB : 49|1@0+ (1,0) [0|0] "" XXX + SG_ TrStats_D_Actl : 13|2@0+ (1,0) [0|0] "" XXX + SG_ CamraDefog_B_Req : 40|1@0+ (1,0) [0|0] "" XXX + SG_ RearFog_Lamp_Dbnce : 0|1@0+ (1,0) [0|0] "" XXX + SG_ CarMode : 53|4@0+ (1,0) [0|0] "" XXX + SG_ Day_Night_Status : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Parklamp_Status : 3|2@0+ (1,0) [0|0] "" XXX + SG_ Dimming_Lvl : 31|8@0+ (1,0) [0|0] "" XXX + SG_ Litval : 23|8@0+ (1,0) [0|0] "" XXX + SG_ Mfs_Turn_Stalk_SW_Status : 11|2@0+ (1,0) [0|0] "" XXX + SG_ PwMdeExten_D_Actl : 63|5@0+ (1,0) [0|0] "" XXX + SG_ STR_WHL_ANGLE : 39|15@0+ (0.1,-1000.0) [0|0] "Degrees" XXX + SG_ Turn_Seq_Cmd_Right : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Turn_Seq_Cmd_Left : 5|2@0+ (1,0) [0|0] "" XXX + SG_ Smart_Wiper_Motor_Stat_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Smart_Wiper_Motor_Stat : 55|2@0+ (1,0) [0|0] "" XXX + SG_ Mfs_Turn_Stalk_SW_Status_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ reserve : 1|1@0+ (1,0) [0|0] "" XXX + +BO_ 950 RKE_Packet: 8 XXX + SG_ RemoteKey_Packet_TIC : 7|32@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Packet_RollB : 55|8@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Packet_RollA : 47|8@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Packet_Ctrl : 39|8@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Packet_CkSum : 63|8@0+ (1,0) [0|0] "" XXX + +BO_ 951 TPM_Frame: 8 XXX + SG_ TirePress_Frame_Temp : 47|8@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Frame_Status : 55|8@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Frame_Press : 39|8@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Frame_ID : 7|32@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Frame_CkSum : 63|8@0+ (1,0) [0|0] "" XXX + +BO_ 952 RKE_TPM_Info: 8 XXX + SG_ TirePress_HitRate_Ctrl : 15|1@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_HitRate_Ctrl : 14|1@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Antenna_Ctrl : 7|2@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Filter_Ctrl : 5|2@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Filter_Ctrl : 3|2@0+ (1,0) [0|0] "" XXX + SG_ Modulation_Ctrl : 1|2@0+ (1,0) [0|0] "" XXX + +BO_ 953 RKE_Info: 8 XXX + SG_ RemoteKey_Info_TIC : 7|32@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Info_RollB : 55|8@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Info_RollA : 47|8@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Info_Ctrl : 39|8@0+ (1,0) [0|0] "" XXX + SG_ RemoteKey_Info_CkSum : 63|8@0+ (1,0) [0|0] "" XXX + +BO_ 954 Tire_Pressure_Info: 8 XXX + SG_ TirePress_Info_MaxInd : 47|8@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Info_Index : 39|8@0+ (1,0) [0|0] "" XXX + SG_ TirePress_Info_ID : 7|32@0+ (1,0) [0|0] "" XXX + +BO_ 956 Body_Information_7_MS: 8 XXX + SG_ GearLvrPos_D_Actl_UB : 21|1@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTot_Tq_Actl : 31|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ GearLvrPos_D_Actl : 7|4@0+ (1,0) [0|0] "" XXX + SG_ ApedPos_Pc_ActlArb : 15|10@0+ (0.1,0) [0|0] "%" XXX + SG_ PrplWhlTot_Tq_Actl_UB : 17|1@0+ (1,0) [0|0] "" XXX + SG_ EngOff_T_Actl : 47|16@0+ (1,0) [0|0] "seconds" XXX + SG_ ApedPos_Pc_ActlArb_UB : 20|1@0+ (1,0) [0|0] "" XXX + +BO_ 958 Rear_FoglampStat: 8 XXX + SG_ RearFog_Lamp_Ind : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 963 BCM_to_MS_Body: 8 XXX + SG_ LF_Low_Beam_CKT_CAN : 2|1@0+ (1,0) [0|0] "" XXX + SG_ IKT_Program_Status : 51|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_Spd_Slow_Puddle_Status : 41|2@0+ (1,0) [0|0] "" XXX + SG_ Illuminated_Exit_Status : 43|2@0+ (1,0) [0|0] "" XXX + SG_ Illuminated_Entry_Status : 45|2@0+ (1,0) [0|0] "" XXX + SG_ Door_Courtesy_Light_Status : 47|2@0+ (1,0) [0|0] "" XXX + SG_ Courtesy_Demand_BSave_Stat : 33|2@0+ (1,0) [0|0] "" XXX + SG_ Alarm_Lights_Courtesy_Stat : 35|2@0+ (1,0) [0|0] "" XXX + SG_ Courtesy_Delay_Status : 37|2@0+ (1,0) [0|0] "" XXX + SG_ Courtesy_Mode_Status : 39|2@0+ (1,0) [0|0] "" XXX + SG_ Front_Fog_Light_SW_Status : 22|2@0+ (1,0) [0|0] "" XXX + SG_ Brake_Lamp_On_Status : 23|1@0+ (1,0) [0|0] "" XXX + SG_ ParkLamps_CKT_CAN : 8|1@0+ (1,0) [0|0] "" XXX + SG_ RF_Low_Beam_CKT_CAN : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Brk_Fluid_Lvl_Low : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Park_Brake_Status : 4|1@0+ (1,0) [0|0] "" XXX + SG_ High_Beam_Indicator_Rqst : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Headlamp_On_Wrning_Cmd : 6|1@0+ (1,0) [0|0] "" XXX + SG_ Key_In_Ignition_Warn_Cmd : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Park_Brake_Chime_Rqst : 3|1@0+ (1,0) [0|0] "" XXX + SG_ Daytime_Running_Lamps : 0|1@0+ (1,0) [0|0] "" XXX + SG_ AutoHighBeam_Cmd : 18|2@0+ (1,0) [0|0] "" XXX + SG_ Perimeter_Alarm_Chime_Rqst : 20|2@0+ (1,0) [0|0] "" XXX + SG_ OCSSensrDataUpperLim_UB : 11|1@0+ (1,0) [0|0] "" XXX + SG_ OCSSensrDataLowerLim_UB : 12|1@0+ (1,0) [0|0] "" XXX + SG_ OCSSensrDataUpperLim : 63|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSensrDataLowerLim : 31|8@0+ (1,0) [0|0] "" XXX + SG_ AutoHighBeam_Cmd_UB : 16|1@0+ (1,0) [0|0] "" XXX + SG_ PrkBrkActv_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + SG_ Headlamp_Switch_Stat : 49|2@0+ (1,0) [0|0] "" XXX + SG_ Perimeter_Alarm_Inclin_Cmd : 53|2@0+ (1,0) [0|0] "" XXX + SG_ Perimeter_Alarm_Intrus_Cmd : 55|2@0+ (1,0) [0|0] "" XXX + +BO_ 964 BodyInformation_2_MS: 8 XXX + SG_ LockInhibit : 41|1@0+ (1,0) [0|0] "" XXX + SG_ MetricActvTe_B_Actl_UB : 12|1@0+ (1,0) [0|0] "" XXX + SG_ MetricActvTe_B_Actl : 14|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Liftgate_Mode_Cmd : 42|1@0+ (1,0) [0|0] "" XXX + SG_ AirAmb_Te_Actl : 55|10@0+ (0.25,-128.0) [0|0] "degC" XXX + SG_ EngClntTe_D_Qf : 47|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_Cmd : 26|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_Cmd : 28|2@0+ (1,0) [0|0] "" XXX + SG_ SAPPStatusCoding : 39|8@0+ (1,0) [0|0] "" XXX + SG_ Delay_Accy : 31|1@0+ (1,0) [0|0] "" XXX + SG_ Volume_Cutback : 7|1@0+ (1,0) [0|0] "" XXX + SG_ MetricActv_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatTgate_B_Actl : 1|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatRr_B_Actl : 2|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatRl_B_Actl : 3|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatPsngr_B_Actl : 4|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatInnrTgate_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatHood_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatDrv_B_Actl : 10|1@0+ (1,0) [0|0] "" XXX + SG_ EngClnt_Te_Actl : 23|8@0+ (1,-60.0) [0|0] "degC" XXX + SG_ AirAmbTe_D_Qf_UB : 59|1@0+ (1,0) [0|0] "" XXX + SG_ Volume_Cutback_UB : 58|1@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_Cmd_UB : 57|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPStatusCoding_UB : 56|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Liftgate_Mode_Cmd_UB : 15|1@0+ (1,0) [0|0] "" XXX + SG_ MetricActv_B_Actl_UB : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_Cmd_UB : 11|1@0+ (1,0) [0|0] "" XXX + SG_ AirAmbTe_D_Qf : 61|2@0+ (1,0) [0|0] "" XXX + SG_ AirAmb_Te_Actl_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ EngClnt_Te_Actl_UB : 24|1@0+ (1,0) [0|0] "" XXX + +BO_ 966 Delay_AccyM_for_P473: 8 XXX + SG_ Delay_Accy : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 967 CMPS_FDM_Info_StatusMS: 8 XXX + SG_ Segment_MSD_UB : 37|1@0+ (1,0) [0|0] "" XXX + SG_ Segment_LSD_UB : 36|1@0+ (1,0) [0|0] "" XXX + SG_ Compass_Display_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ Segment_LSD : 15|8@0+ (1,0) [0|0] "" XXX + SG_ Segment_MSD : 7|8@0+ (1,0) [0|0] "" XXX + SG_ Cal_Icon : 21|1@0+ (1,0) [0|0] "" XXX + SG_ Zone_Icon : 22|1@0+ (1,0) [0|0] "" XXX + SG_ Compass_Display : 23|1@0+ (1,0) [0|0] "" XXX + SG_ Zone_Icon_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ Cal_Icon_UB : 33|1@0+ (1,0) [0|0] "" XXX + +BO_ 968 EATC_FDM_Info_Status: 8 XXX + SG_ Outside_Rear_Temp_Digit3 : 47|4@0+ (1,0) [0|0] "BCD" XXX + SG_ Outside_Rear_Temp_Digit2 : 35|4@0+ (1,0) [0|0] "BCD" XXX + SG_ Outside_Rear_Temp_Digit1 : 39|4@0+ (1,0) [0|0] "BCD" XXX + SG_ EATC_Out_Rear_Units : 58|2@0+ (1,0) [0|0] "" XXX + SG_ Outside_Rear_Temp_Digit4 : 55|2@0+ (1,0) [0|0] "" XXX + SG_ EATC_RHS_Units : 60|2@0+ (1,0) [0|0] "" XXX + SG_ EATC_Fan_Speed : 51|3@0+ (1,0) [0|0] "" XXX + SG_ EATC_Outside_Rear_Display : 62|2@0+ (1,0) [0|0] "" XXX + SG_ RHS_Temp_Display_Digit2 : 31|8@0+ (1,0) [0|0] "ASCII" XXX + SG_ RHS_Temp_Display_Digit3 : 41|2@0+ (1,0) [0|0] "" XXX + SG_ RHS_Temp_Display_Digit1 : 23|8@0+ (1,0) [0|0] "ASCII" XXX + SG_ EATC_RHS_Display : 63|1@0+ (1,0) [0|0] "" XXX + SG_ LHS_Temp_Display_Digit3 : 43|2@0+ (1,0) [0|0] "" XXX + SG_ LHS_Temp_Display_Digit2 : 15|8@0+ (1,0) [0|0] "ASCII" XXX + SG_ LHS_Temp_Display_Digit1 : 7|8@0+ (1,0) [0|0] "ASCII" XXX + SG_ EATC_LHS_Display : 48|1@0+ (1,0) [0|0] "" XXX + SG_ EATC_LHS_Units : 53|2@0+ (1,0) [0|0] "" XXX + +BO_ 969 Aux_Body_Ctrl_Mod_Status: 8 XXX + SG_ Perimeter_Alrm_Intrus_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Turn_Outage_Stat_Rt_Rear : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Turn_Outage_Stat_Left_Rear : 1|2@0+ (1,0) [0|0] "" XXX + SG_ Perimeter_Alrm_Inclin_Stat : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 976 Veh_Characteristic_Set_2: 8 XXX + SG_ VehMykey_Vl_LimRq_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ CamraFrntStat_D_Stat : 21|2@0+ (1,0) [0|0] "" XXX + SG_ CamraZoomMan_D_Actl : 12|3@0+ (1,0) [0|0] "" XXX + SG_ CamZoomActiveState : 17|2@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlStat_D_Actl : 19|2@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlDyn_D_Actl : 39|2@0+ (1,0) [0|0] "" XXX + SG_ CamPDCGuidStat : 31|2@0+ (1,0) [0|0] "" XXX + SG_ VehMykey_Vl_LimRq : 14|1@0+ (1,0) [0|0] "" XXX + SG_ IgnKeyType_D_Actl : 4|4@0+ (1,0) [0|0] "" XXX + SG_ New_Module_Attn_Event : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Beltminder_Warn_Stats : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Attn_Info_Audio : 7|3@0+ (1,0) [0|0] "" XXX + +BO_ 977 ClmtCtrlSeat_SetCmd_LRPM: 8 XXX + SG_ ClmtCtrlSeat_SetCmd_LRP : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 978 ClmtCtrlSeat_SetStat_LRPM: 8 XXX + SG_ ClmtCtrlSeat_SetStat_LRP : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 979 ClmtCtrlSeat_SetCmd_RRPM: 8 XXX + SG_ ClmtCtrlSeat_SetCmd_RRP : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 980 ClmtCtrlSeat_SetStat_RRPM: 8 XXX + SG_ ClmtCtrlSeat_SetStat_RRP : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 981 Rear_HVAC_Control_Status: 8 XXX + SG_ Temp_Knob_Position : 23|9@0+ (1,0) [0|0] "Degrees CW" XXX + SG_ Rear_Lock_Ind_State : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Blower_Knob_Position : 7|9@0+ (1,0) [0|0] "Degrees CW" XXX + SG_ AUTO_Ind_State : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Panel_Mode_Ind_State : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Panel_Floor_Md_Ind_State : 10|2@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_Ind_State : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Status : 14|1@0+ (1,0) [0|0] "" XXX + +BO_ 982 Rear_HVAC_Control_Update: 8 XXX + SG_ Power_State_Commanded : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Lock_Indicator : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Panel_Floor_Mode_Indicator : 4|2@0+ (1,0) [0|0] "" XXX + SG_ R_Floor_Mode_Indicator : 2|1@0+ (1,0) [0|0] "" XXX + SG_ AUTO_Mode_Indicator : 1|2@0+ (1,0) [0|0] "" XXX + SG_ F_Panel_Mode_Indicator : 13|1@0+ (1,0) [0|0] "" XXX + SG_ R_Panel_Mode_Indicator : 12|2@0+ (1,0) [0|0] "" XXX + +BO_ 986 Personality_APIM_Data3_MS: 8 XXX + SG_ LightAmbIntSwtchInc_B : 22|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbIntSwtchDec_B : 21|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbIntsty_No_Rq : 15|8@0+ (1,0) [0|0] "% Intensity" XXX + SG_ LightAmbColor_No_Rq : 7|8@0+ (1,0) [0|0] "Color Index" XXX + SG_ LightAmbClrSwtchInc_B : 20|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbClrSwtchDec_B : 23|1@0+ (1,0) [0|0] "" XXX + +BO_ 987 RHVAC_Data: 8 XXX + SG_ CamraDefog_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 992 Personality_Data_MS: 8 XXX + SG_ PersSetupRestr_D_Actl : 45|2@0+ (1,0) [0|0] "" XXX + SG_ PersSetupAccessCtrl : 43|1@0+ (1,0) [0|0] "SES" XXX + SG_ PersSetup_No_Actl : 55|16@0+ (1,0) [0|0] "Number" XXX + SG_ MsgCntrPersIndex_D_Rq_UB : 47|1@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrFeatNoRq_UB : 46|1@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrFeatConfigRq_UB : 33|1@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrDsplyOp_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrPersIndex_D_Rq : 39|3@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrFeatConfigRq : 23|16@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrFeatNoRq : 7|16@0+ (1,0) [0|0] "Number" XXX + SG_ MsgCntrDsplyOp_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX + +BO_ 993 Personality_DSM_Data: 8 XXX + SG_ PersIndexDsm_D_Actl : 47|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoDsmActl : 31|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigDsmActl : 15|16@0+ (1,0) [0|0] "" XXX + SG_ PersStore_D_Actl : 7|2@0+ (1,0) [0|0] "" XXX + SG_ MemSwtch_D_RqRecall : 5|3@0+ (1,0) [0|0] "" XXX + SG_ MemSwtch_D_RqAssoc : 2|3@0+ (1,0) [0|0] "" XXX + +BO_ 994 Personality_Data_MS_2: 8 XXX + SG_ RecallEvent_No_Cnt : 63|8@0+ (1,0) [0|0] "Counts" XXX + SG_ PersNo_D_Actl : 55|3@0+ (1,0) [0|0] "" XXX + SG_ PersNoPos_D_Actl : 44|3@0+ (1,0) [0|0] "" XXX + SG_ PersStore_D_Rq_UB : 41|1@0+ (1,0) [0|0] "" XXX + SG_ CtrStkPersIndex_D_Actl_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ CtrStkFeatNoActl_UB : 52|1@0+ (1,0) [0|0] "" XXX + SG_ CtrStkFeatConfigActl_UB : 33|1@0+ (1,0) [0|0] "" XXX + SG_ CtrStkDsplyOp_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX + SG_ CtrStkPersIndex_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ CtrStkFeatNoActl : 23|16@0+ (1,0) [0|0] "" XXX + SG_ PersStore_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX + SG_ CtrStkFeatConfigActl : 7|16@0+ (1,0) [0|0] "" XXX + SG_ CtrStkDsplyOp_D_Rq : 47|3@0+ (1,0) [0|0] "" XXX + +BO_ 996 Personality_HCMB_Data: 8 XXX + SG_ PersIndexHcmb_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoHcmbActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigHcmbActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 999 Personality_HVAC_Data: 8 XXX + SG_ LightAmbIntsty_No_Actl : 55|8@0+ (1,0) [0|0] "% Intensity" XXX + SG_ LightAmbColor_No_Actl : 47|8@0+ (1,0) [0|0] "Color Index" XXX + SG_ PersIndexHvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoHvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigHvacActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1000 ACM_Status_Message: 8 XXX + SG_ Multimedia_System : 26|1@0+ (1,0) [0|0] "" XXX + +BO_ 1001 Personality_RFA_Data: 8 XXX + SG_ PersIndexRfa_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoRfaActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigRfaActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1005 Personality_RHVAC_Data: 8 XXX + SG_ PersIndexRhvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoRhvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigRhvacActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1006 Nav_HMI_Status: 8 XXX + SG_ Nav_Unit_Setting : 14|1@0+ (1,0) [0|0] "" XXX + SG_ Fuel_Econ_AFE_Reset_Req : 15|1@0+ (1,0) [0|0] "" XXX + SG_ DistanceBarSetting : 23|1@0+ (1,0) [0|0] "" XXX + SG_ CamraZoomMan_D_Rq : 22|3@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlStat_D_Rq : 19|1@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlDyn_D_Rq : 18|1@0+ (1,0) [0|0] "" XXX + SG_ CamAutoTowbarZoom : 17|1@0+ (1,0) [0|0] "" XXX + +BO_ 1023 Reserve_3FF_MKX_Audio: 8 XXX + SG_ reserve : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 1034 GGCC_Config_Mgmt_ID_1: 8 XXX + SG_ VehicleGGCCData : 7|64@0+ (1,0) [0|0] "mixed" XXX + +BO_ 1050 Climate_Control_Data: 8 XXX + SG_ SecondaryHeater_Rqst : 31|1@0+ (1,0) [0|0] "" XXX + SG_ Passenger_Sunload_Raw : 15|8@0+ (5.0,0) [0|0] "W/m^2" XXX + SG_ Driver_Sunload_Raw : 7|8@0+ (5.0,0) [0|0] "W/m^2" XXX + SG_ HvacEvap_Te_Rq : 43|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ HvacRemoteStrt_N_Rq : 47|4@0+ (100.0,450.0) [0|0] "RPM" XXX + SG_ Remote_Start_QuietMode : 28|1@0+ (1,0) [0|0] "" XXX + SG_ InCarTempQF : 30|2@0+ (1,0) [0|0] "" XXX + SG_ HvacAirCond_B_Rq : 27|1@0+ (1,0) [0|0] "" XXX + SG_ InCarTemp : 39|8@0+ (0.5,-57.0) [0|0] "degreesC" XXX + SG_ Outside_Air_Temp_Stat : 23|8@0+ (0.5,-40.0) [0|0] "Degrees C" XXX + SG_ HvacEvap_Te_Actl : 49|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + +BO_ 1059 Engine_Data_MS: 8 XXX + SG_ Res_UreaLvlLo_B_Dsply_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ Res_UreaLvlLo_B_Dsply : 36|1@0+ (1,0) [0|0] "" XXX + SG_ Fuel_Level_State : 47|2@0+ (1,0) [0|0] "" XXX + SG_ AwdOffRoadMode_D_Stats_UB : 55|1@0+ (1,0) [0|0] "" XXX + SG_ AwdRnge_D_Actl_UB : 42|1@0+ (1,0) [0|0] "" XXX + SG_ RearDiffLckLamp_D_Rq_UB : 32|1@0+ (1,0) [0|0] "" XXX + SG_ AwdOffRoadMode_D_Stats : 41|2@0+ (1,0) [0|0] "" XXX + SG_ AwdRnge_D_Actl : 45|3@0+ (1,0) [0|0] "" XXX + SG_ RearDiffLckLamp_D_Rq : 34|2@0+ (1,0) [0|0] "" XXX + SG_ VEH_SPD : 7|16@0+ (0.01,-100.0) [0|0] "KPH" XXX + SG_ ENG_SPD : 23|16@0+ (0.25,0) [0|0] "RPM" XXX + SG_ Fuel_Level_State_UB : 37|1@0+ (1,0) [0|0] "" XXX + +BO_ 1061 Engine_Data_2_MS: 8 XXX + SG_ RstrnImpactEvntStatus_UB : 56|1@0+ (1,0) [0|0] "" XXX + SG_ EngAirIn_Te_Actl_UB : 60|1@0+ (1,0) [0|0] "" XXX + SG_ EngAirIn_Te_Actl : 55|10@0+ (0.25,-128.0) [0|0] "degC" XXX + SG_ ACCompressorDisp_UB : 61|1@0+ (1,0) [0|0] "" XXX + SG_ ACCompressorDisp : 46|7@0+ (1,0) [0|0] "%" XXX + SG_ RstrnImpactEvntStatus : 59|3@0+ (1,0) [0|0] "" XXX + SG_ EngAout_N_Actl_UB : 47|1@0+ (1,0) [0|0] "" XXX + SG_ EngAout_N_Actl : 28|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ VehVActlEng_D_Qf : 31|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_ActlEng_UB : 29|1@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_ActlEng : 15|16@0+ (0.01,0) [0|0] "kph" XXX + SG_ PwPck_D_Stat_UB : 3|1@0+ (1,0) [0|0] "" XXX + SG_ PwPck_D_Stat : 7|4@0+ (1,0) [0|0] "" XXX + +BO_ 1062 ACM_NAV_WHEEL_INFO: 8 XXX + SG_ WhlRotatRr_No_Cnt_UB : 63|1@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatRl_No_Cnt_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFr_No_Cnt_UB : 41|1@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFl_No_Cnt_UB : 42|1@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRr_D_Actl_UB : 44|1@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRl_D_Actl_UB : 45|1@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFr_D_Actl_UB : 46|1@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFl_D_Actl_UB : 47|1@0+ (1,0) [0|0] "" XXX + SG_ WHEEL_ROLLING_TIMESTAMP_UB : 62|1@0+ (1,0) [0|0] "" XXX + SG_ ACM_NAV_WHEEL_INFO_RESET : 43|1@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatRr_No_Cnt : 39|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFr_No_Cnt : 23|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRr_D_Actl : 1|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRl_D_Actl : 3|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFr_D_Actl : 5|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFl_D_Actl : 7|2@0+ (1,0) [0|0] "" XXX + SG_ WHEEL_ROLLING_TIMESTAMP : 55|8@0+ (1,0) [0|0] "" XXX + +BO_ 1068 Battery_Mgmt_2_MS: 8 XXX + SG_ Shed_T_Eng_Off_B : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Shed_Level_Req : 15|3@0+ (1,0) [0|0] "" XXX + SG_ Shed_Feature_Group_ID : 7|5@0+ (1,0) [0|0] "" XXX + SG_ Shed_Drain_Eng_Off_B : 2|1@0+ (1,0) [0|0] "" XXX + SG_ Batt_Lo_SoC_B : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Batt_Crit_SoC_B : 0|1@0+ (1,0) [0|0] "" XXX + +BO_ 1125 GPS_Data_Nav_1: 8 XXX + SG_ GpsHsphLattSth_D_Actl : 25|2@0+ (1,0) [0|0] "" XXX + SG_ GpsHsphLongEast_D_Actl : 9|2@0+ (1,0) [0|0] "" XXX + SG_ GPS_Longitude_Minutes : 46|6@0+ (1,0) [0|0] "Minutes" XXX + SG_ GPS_Longitude_Min_dec : 55|14@0+ (0.0001,0) [0|0] "Minutes" XXX + SG_ GPS_Longitude_Degrees : 39|9@0+ (1,-179.0) [0|0] "Degrees" XXX + SG_ GPS_Latitude_Minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX + SG_ GPS_Latitude_Min_dec : 23|14@0+ (0.0001,0) [0|0] "Minutes" XXX + SG_ GPS_Latitude_Degrees : 7|8@0+ (1,-89.0) [0|0] "Degrees" XXX + +BO_ 1126 GPS_Data_Nav_2: 8 XXX + SG_ Gps_B_Falt : 2|1@0+ (1,0) [0|0] "" XXX + SG_ GpsUtcYr_No_Actl : 55|5@0+ (1,1.0) [0|0] "Year" XXX + SG_ GpsUtcMnth_No_Actl : 47|4@0+ (1,1.0) [0|0] "Month" XXX + SG_ GpsUtcDay_No_Actl : 37|5@0+ (1,1.0) [0|0] "Day" XXX + SG_ GPS_UTC_seconds : 23|6@0+ (1,0) [0|0] "seconds" XXX + SG_ GPS_UTC_minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX + SG_ GPS_UTC_hours : 7|5@0+ (1,0) [0|0] "Hours" XXX + SG_ GPS_Pdop : 31|5@0+ (0.2,0) [0|0] "" XXX + SG_ GPS_Compass_direction : 26|4@0+ (1,0) [0|0] "" XXX + SG_ GPS_Actual_vs_Infer_pos : 38|1@0+ (1,0) [0|0] "" XXX + +BO_ 1127 GPS_Data_Nav_3: 8 XXX + SG_ GPS_Vdop : 63|5@0+ (0.2,0) [0|0] "" XXX + SG_ GPS_Speed : 47|8@0+ (1,0) [0|0] "MPH" XXX + SG_ GPS_Sat_num_in_view : 7|5@0+ (1,0) [0|0] "" XXX + SG_ GPS_MSL_altitude : 15|12@0+ (10.0,-20460.0) [0|0] "feet" XXX + SG_ GPS_Heading : 31|16@0+ (0.01,0) [0|0] "Degrees" XXX + SG_ GPS_Hdop : 55|5@0+ (0.2,0) [0|0] "" XXX + SG_ GPS_dimension : 2|3@0+ (1,0) [0|0] "" XXX + +BO_ 1144 GPS_Data_Nav_4: 8 XXX + SG_ VehPos_L_Est : 39|32@0+ (0.01,0) [0|0] "meter" XXX + SG_ VehHead_W_Actl : 23|16@0+ (0.01,-327.68) [0|0] "degrees/second" XXX + SG_ VehHead_An_Est : 7|16@0+ (0.01,0) [0|0] "degrees" XXX diff --git a/opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc b/opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc new file mode 100644 index 0000000000..128721cbbf --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ford_cgea1_2_ptcan_2011.dbc @@ -0,0 +1,1487 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 65 Global_PATS_Control_Info: 8 XXX + SG_ immoControlData_T1 : 15|40@0+ (1,0) [0|0] "" XXX + SG_ immoControlCmd_T1 : 7|3@0+ (1,0) [0|0] "" XXX + +BO_ 66 Global_PATS_Control_Info2: 8 XXX + SG_ immoControlData_T2 : 15|40@0+ (1,0) [0|0] "" XXX + SG_ immoControlCmd_T2 : 7|3@0+ (1,0) [0|0] "" XXX + +BO_ 71 Global_PATS_Target_Info: 8 XXX + SG_ immoTarget1Status : 7|3@0+ (1,0) [0|0] "" XXX + SG_ immoTarget1Data : 15|40@0+ (1,0) [0|0] "" XXX + SG_ immoTarget1Cmd : 4|3@0+ (1,0) [0|0] "" XXX + +BO_ 72 Global_PATS_Target_Info_2: 8 XXX + SG_ immoTarget2Status : 7|3@0+ (1,0) [0|0] "" XXX + SG_ immoTarget2Data : 15|40@0+ (1,0) [0|0] "" XXX + SG_ immoTarget2Cmd : 4|3@0+ (1,0) [0|0] "" XXX + +BO_ 73 Global_PATS_SubTarget_FoE: 8 XXX + SG_ immoSubTarget1Data_T1 : 15|40@0+ (1,0) [0|0] "" XXX + SG_ immoSubTarget1Cmd_T1 : 7|3@0+ (1,0) [0|0] "" XXX + +BO_ 74 VehEmergencyData1: 8 XXX + SG_ VedsPasSideBag_D_Ltchd : 60|3@0+ (1,0) [0|0] "" XXX + SG_ VedsPasCrtnBag_D_Ltchd : 55|3@0+ (1,0) [0|0] "" XXX + SG_ VedsPasBelt_D_Ltchd : 52|3@0+ (1,0) [0|0] "" XXX + SG_ VedsPasBag_D_Ltchd : 47|3@0+ (1,0) [0|0] "" XXX + SG_ VedsMultiEvnt_D_Ltchd : 44|3@0+ (1,0) [0|0] "" XXX + SG_ VedsMaxDeltaV_D_Ltchd : 39|8@0+ (1,0) [0|0] "" XXX + SG_ VedsKneeBag_D_Ltchd : 63|3@0+ (1,0) [0|0] "" XXX + SG_ VedsEvntType_D_Ltchd : 31|3@0+ (1,0) [0|0] "" XXX + SG_ VedsEvntRoll_D_Ltchd : 28|3@0+ (1,0) [0|0] "" XXX + SG_ VedsDrvSideBag_D_Ltchd : 23|3@0+ (1,0) [0|0] "" XXX + SG_ VedsDrvCrtnBag_D_Ltchd : 20|3@0+ (1,0) [0|0] "" XXX + SG_ VedsDrvBelt_D_Ltchd : 15|3@0+ (1,0) [0|0] "" XXX + SG_ VedsDrvBag_D_Ltchd : 12|3@0+ (1,0) [0|0] "" XXX + SG_ eCallNotification : 2|2@0+ (1,0) [0|0] "" XXX + +BO_ 75 VehEmergencyData2: 8 XXX + SG_ VedsRw3rBckl_D_Ltchd : 39|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw3mBckl_D_Ltchd : 31|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw3lBckl_D_Ltchd : 28|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw2rBckl_D_Ltchd : 23|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw2mBckl_D_Ltchd : 20|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw2lBckl_D_Ltchd : 15|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw1PasChld_D_Ltchd : 12|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw1PasBckl_D_Ltchd : 7|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw1DrvBckl_D_Ltchd : 4|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw2rRib_D_Ltchd : 47|3@0+ (1,0) [0|0] "" XXX + SG_ VedsRw2lRib_D_Ltchd : 36|3@0+ (1,0) [0|0] "" XXX + +BO_ 116 BrakeSnData_2_CG1: 8 XXX + SG_ VehDynamicsSOS : 55|1@0+ (1,0) [0|0] "" XXX + SG_ AwdLck_Tq_RqMx : 27|12@0+ (1,0) [0|0] "Nm" XXX + SG_ AwdLck_Tq_RqMn : 23|12@0+ (1,0) [0|0] "Nm" XXX + SG_ SteWhlComp_An_Est : 7|15@0+ (0.1,-1600.0) [0|0] "deg" XXX + SG_ StopLamp_B_RqBrk : 8|1@0+ (1,0) [0|0] "" XXX + SG_ BrkTerrMdeChng_D_Rdy : 45|3@0+ (1,0) [0|0] "" XXX + SG_ BrkTerrMde_D_Actl : 42|3@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCompAnEst_D_Qf : 47|2@0+ (1,0) [0|0] "" XXX + +BO_ 117 BrakeSnData_3_CG1: 8 XXX + SG_ HsaStat_D_Dsply : 35|3@0+ (1,0) [0|0] "" XXX + SG_ HsaTrnAout_Tq_Rq : 55|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ HsaStat_D_Actl : 38|3@0+ (1,0) [0|0] "" XXX + SG_ HsaRoad_Grad_Est : 32|9@0+ (0.5,-127.0) [0|0] "%" XXX + SG_ VehYawComp_W_Actl : 7|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX + SG_ VehYaw_W_Rq : 11|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX + SG_ VehSideSlip_An_Est : 31|9@0+ (0.002,-0.5) [0|0] "rad" XXX + +BO_ 124 BrakeSnData_4_CG1: 8 XXX + SG_ EngRun_D_ReqBrk : 10|2@0+ (1,0) [0|0] "" XXX + SG_ BrkTotTqRqArb_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX + SG_ BrkTotTqRqArb_No_Cnt : 31|4@0+ (1,0) [0|0] "" XXX + SG_ BrkTot_Tq_RqArb : 7|13@0+ (4.0,0) [0|0] "Nm" XXX + SG_ BrkTot_Tq_Actl : 39|13@0+ (4.0,0) [0|0] "Nm" XXX + SG_ VehOverGnd_V_Est : 55|16@0+ (0.01,0) [0|0] "kph" XXX + +BO_ 129 Steering_Wheel_Data2: 8 XXX + SG_ SteWhlCtl_RSide_OK : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_RSide_CursorUp : 8|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_RSide_CursorRt : 7|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_RSide_CursorLeft : 6|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_RSide_CursorDown : 5|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_LSide_OK : 4|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_LSide_CursorUp : 3|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_LSide_CursorRt : 2|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_LSide_CursorLeft : 1|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_LSide_CursorDown : 0|1@0+ (1,0) [0|0] "" XXX + +BO_ 130 EPAS_INFO: 8 XXX + SG_ SteMdule_U_Meas : 39|8@0+ (0.05,6.0) [0|0] "Volts" XXX + SG_ SteMdule_I_Est : 21|12@0+ (0.05,-64.0) [0|0] "Amps" XXX + SG_ EPAS_FAILURE : 9|2@0+ (1,0) [0|0] "" XXX + SG_ SteeringColumnTorque : 7|8@0+ (0.0625,-8.0) [0|0] "Nm" XXX + SG_ SAPPAngleControlStat6 : 15|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat5 : 14|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat4 : 13|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat3 : 12|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat2 : 11|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat1 : 23|2@0+ (1,0) [0|0] "" XXX + +BO_ 131 Steering_Data: 8 XXX + SG_ SteWhlCtl_Mute : 38|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Mode : 24|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_OK : 23|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Phone : 22|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_End : 21|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Send : 20|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Voice_PTT : 19|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Seek_Left : 10|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Seek_Right : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Media : 8|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Volume_Down : 6|1@0+ (1,0) [0|0] "" XXX + SG_ SteWhlCtl_Volume_Up : 7|1@0+ (1,0) [0|0] "" XXX + SG_ Smart_Wiper_Motor_Stat : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Mfs_Turn_Stalk_SW_Status : 1|2@0+ (1,0) [0|0] "" XXX + SG_ HighBeam_FlashToPassSw : 3|2@0+ (1,0) [0|0] "" XXX + SG_ SteColumn_Status : 13|3@0+ (1,0) [0|0] "" XXX + SG_ SteCol_Manual_Override : 4|1@0+ (1,0) [0|0] "" XXX + SG_ CcButtnStat_D_Actl : 34|11@0+ (1,0) [0|0] "" XXX + SG_ HeatedWash_Mode_Stat : 55|3@0+ (1,0) [0|0] "" XXX + SG_ LaSwtchPos_D_Stat : 18|2@0+ (1,0) [0|0] "" XXX + +BO_ 132 Steering_Wheel_Data_CG1: 8 XXX + SG_ SteWhlRelInit_An_Sns : 7|15@0+ (0.1,-1600.0) [0|0] "deg" XXX + SG_ SteWhlRelCalib_An_Sns : 23|15@0+ (0.1,-1600.0) [0|0] "deg" XXX + SG_ SteWhlRelInit2_An_Sns : 55|16@0+ (0.1,-3200.0) [0|0] "deg" XXX + SG_ SteWhlAn_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX + SG_ SteWhlAn_No_Cnt : 47|4@0+ (1,0) [0|0] "Counts" XXX + +BO_ 145 Yaw_Data: 8 XXX + SG_ VehYaw_W_Actl : 39|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + SG_ VehRol_W_Actl : 23|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + SG_ VehPtch_W_Actl : 7|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + +BO_ 146 Accel_Data: 8 XXX + SG_ VehVertAActl_D_Qf : 38|2@0+ (1,0) [0|0] "" XXX + SG_ VehLongAActl_D_Qf : 22|2@0+ (1,0) [0|0] "" XXX + SG_ VehLatAActl_D_Qf : 6|2@0+ (1,0) [0|0] "" XXX + SG_ VehVert_A_Actl : 36|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX + SG_ VehLong_A_Actl : 20|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX + SG_ VehLat_A_Actl : 4|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX + +BO_ 258 Cluster_Legacy: 8 XXX + SG_ Veh_V_CompLimMx : 27|12@0+ (0.1,0) [0|0] "km/h" XXX + SG_ DISPLAY_SPEED_SCALING : 20|4@0+ (0.5,100.0) [0|0] "%" XXX + SG_ DISPLAY_SPEED_OFFSET : 23|3@0+ (0.5,0) [0|0] "kph" XXX + SG_ Reverse_Mirror_Cmd : 10|1@0+ (1,0) [0|0] "" XXX + SG_ Autolamp_Delay_Cmd : 7|8@0+ (1,0) [0|0] "Seconds" XXX + SG_ Running_Board_Cmd : 13|2@0+ (1,0) [0|0] "" XXX + SG_ Power_Liftgate_Mode_Cmd : 11|1@0+ (1,0) [0|0] "" XXX + +BO_ 259 Body_MsgCntr_Stat_CG1: 8 XXX + SG_ PE_PEPS_System_Stat : 47|8@0+ (1,0) [0|0] "" XXX + SG_ Keycode_Status : 11|20@0+ (1,0) [0|0] "" XXX + SG_ Autolamp_Delay_Stat : 7|8@0+ (1,0) [0|0] "Seconds" XXX + SG_ HvacEvap_Te_Rq_UB : 61|1@0+ (1,0) [0|0] "" XXX + SG_ HvacEvap_Te_Rq : 55|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ Remote_Start_QuietMode_UB : 33|1@0+ (1,0) [0|0] "" XXX + SG_ Remote_Start_QuietMode : 32|1@0+ (1,0) [0|0] "" XXX + +BO_ 264 Side_Detect_CmdM: 8 XXX + SG_ Cross_Traffic_Cmd : 5|2@0+ (1,0) [0|0] "" XXX + SG_ Side_Detect_Cmd : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 266 ParkAid_Audible_Warn_CmdM: 8 XXX + SG_ AutoPark_Cancel_Request : 15|2@0+ (1,0) [0|0] "" XXX + SG_ ParkAid_Audible_Warn_Cmd : 7|2@0+ (1,0) [0|0] "" XXX + SG_ ParkAid_Aud_Frt_Warn_Cmd : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 267 ParkAid_Audible_Warn_Stat: 8 XXX + SG_ RpaChime_D_Rq : 31|4@0+ (1,0) [0|0] "" XXX + SG_ FpaChime_D_Rq : 12|4@0+ (1,0) [0|0] "" XXX + SG_ SAPPStatusCoding : 23|8@0+ (1,0) [0|0] "" XXX + SG_ Volume_Cutback : 1|1@0+ (1,0) [0|0] "" XXX + SG_ ParkAid_Fault_Condition : 15|3@0+ (1,0) [0|0] "" XXX + SG_ ParkAid_Audible_Warn_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ ParkAid_Aud_Frt_Trgt_Warn : 3|2@0+ (1,0) [0|0] "" XXX + SG_ ParkAid_Aud_Frt_Warn_Stat : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 292 ClmtCtrlSeatSet_Cmd_v2: 8 XXX + SG_ ClmtCtrlSeat_SetCmd_Dvr : 7|8@0+ (1,0) [0|0] "" XXX + SG_ ClmtCtrlSeat_SetCmd_Psgr : 15|8@0+ (1,0) [0|0] "" XXX + +BO_ 293 ClmtCtrlSeatSetStat_v2_HS: 8 XXX + SG_ ClmtCtrlSeat_SetStat_Psgr : 15|8@0+ (1,0) [0|0] "" XXX + SG_ ClmtCtrlSeat_SetStat_Dvr : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 336 TransData_1_CG1: 8 XXX + SG_ TrnAinIdl_N_RqMn : 34|11@0+ (2.0,0) [0|0] "rpm" XXX + SG_ TrnAin_N_RqMxPrtct : 23|10@0+ (25.0,0) [0|0] "rpm" XXX + SG_ TrnAin_Tq_RqFstMx : 29|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_Tq_RqSlwMxPrs : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX + +BO_ 337 EngineData_1_CG1: 8 XXX + SG_ TrnEngBrk_B_Allw : 24|1@0+ (1,0) [0|0] "" XXX + SG_ TrnAout_W_ActlUnfilt : 23|15@0+ (0.1,0) [0|0] "rad/s" XXX + SG_ TrnIpcDsplyGear_D_Actl : 7|4@0+ (1,0) [0|0] "" XXX + SG_ TrnIpcDsplyMde_D_Stat : 13|2@0+ (1,0) [0|0] "" XXX + SG_ TrnIpcDsplyMde_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ TrnIpcDsplyGear_D_Stat : 9|2@0+ (1,0) [0|0] "" XXX + SG_ TurboBoostPressure : 55|16@0+ (0.01,0) [0|0] "bar" XXX + +BO_ 338 TransData_2_CG1: 8 XXX + SG_ GearPos_D_Actl : 55|4@0+ (1,0) [0|0] "" XXX + SG_ TrnAout2_Tq_Actl : 39|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ TrnTotTq_Rt_Actl : 23|16@0+ (0.001,0) [0|0] "" XXX + SG_ TrnGbox_Rt_Pred : 7|16@0+ (0.001,0) [0|0] "" XXX + +BO_ 339 EngineData_2_CG1: 8 XXX + SG_ TrnAin_Tq_MxSpcPdlEngN : 55|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_Tq_MnSpcEngN : 31|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngPtoEngag_B_Actl : 60|1@0+ (1,0) [0|0] "" XXX + SG_ TrnAin_N_SpcEcho : 4|13@0+ (2.0,0) [0|0] "rpm" XXX + +BO_ 340 EngineData_3_CG1: 8 XXX + SG_ AirAmb_Te_ActlFilt : 33|10@0+ (0.25,-128.0) [0|0] "deg C" XXX + SG_ EngAout_N_RqMxPrtct : 12|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ TqmTerrMdeChng_D_Rdy : 39|3@0+ (1,0) [0|0] "" XXX + SG_ EngAoutIdl_N_RqVsc : 7|11@0+ (2.0,0) [0|0] "rpm" XXX + SG_ TqmTerrMde_D_Actl : 36|3@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTotVrt_Tq_RqArb : 55|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + +BO_ 341 EngineData_11_CG1: 8 XXX + SG_ DieslPrtc_D_RqDsply : 42|3@0+ (1,0) [0|0] "" XXX + SG_ EngPullUpPullDown_D_Rq : 20|4@0+ (1,0) [0|0] "" XXX + SG_ TrnAin_Tq_RqDrv : 15|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ DieslPrtcRgen_D_Actl : 4|2@0+ (1,0) [0|0] "" XXX + SG_ DieslPrtcRgen_D_Rq : 7|3@0+ (1,0) [0|0] "" XXX + SG_ EngAout_Aa_Actl : 39|10@0+ (0.05,-25.6) [0|0] "rpm/ms" XXX + SG_ EngIgnIndTq_Rt_MnEc : 31|8@0+ (0.005,0) [0|0] "" XXX + SG_ EngFuelCutFull_B_Allw : 45|1@0+ (1,0) [0|0] "" XXX + SG_ EngStrtStopDis_B_Rq : 0|1@0+ (1,0) [0|0] "" XXX + SG_ PrplTqSys_D_Stat : 2|2@0+ (1,0) [0|0] "" XXX + SG_ EngAoutTqDtrb_B_Actl : 16|1@0+ (1,0) [0|0] "" XXX + SG_ EngTurboMde_D_Actl : 44|2@0+ (1,0) [0|0] "" XXX + SG_ EngTeColdPrtct_D_Stats : 54|2@0+ (1,0) [0|0] "" XXX + SG_ EXHAUST_OVERTEMP_PROTECT : 63|1@0+ (1,0) [0|0] "" XXX + SG_ EngExhOvrTe_B_RqDsply : 55|1@0+ (1,0) [0|0] "" XXX + +BO_ 342 Engine_Data_6: 8 XXX + SG_ EngOvrhtMitgActv_D_Ind : 36|2@0+ (1,0) [0|0] "" XXX + SG_ Res_UreaLvlLo_B_Dsply : 34|1@0+ (1,0) [0|0] "" XXX + SG_ EngClntTe_D_Qf : 33|2@0+ (1,0) [0|0] "" XXX + SG_ EngAcsyArcPmp_Tq_Actl : 63|8@0+ (0.5,0) [0|0] "Nm" XXX + SG_ EngOilLvlDsply_D_Rq : 43|4@0+ (1,0) [0|0] "" XXX + SG_ EngCtlAlive_No_Cnt : 47|4@0+ (1,0) [0|0] "" XXX + SG_ EngCtl_No_Cs : 55|8@0+ (1,0) [0|0] "" XXX + SG_ EngOil_Te_Actl : 15|8@0+ (1,-60.0) [0|0] "degC" XXX + SG_ EngClnt_Te_Actl : 7|8@0+ (1,-60.0) [0|0] "degC" XXX + +BO_ 343 EngineData_13_CG1: 8 XXX + SG_ EngStrtFail_B_Actl : 40|1@0+ (1,0) [0|0] "" XXX + SG_ EngStrt_B_Complt : 24|1@0+ (1,0) [0|0] "" XXX + SG_ EngStrtSpin_B_Rdy : 58|1@0+ (1,0) [0|0] "" XXX + SG_ EngWarmUp_B_Complt : 41|1@0+ (1,0) [0|0] "" XXX + SG_ EngAoutTqCtl_B_Falt : 8|1@0+ (1,0) [0|0] "" XXX + SG_ EngAoutActl_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX + SG_ EngAoutActl_No_Cnt : 45|4@0+ (1,0) [0|0] "" XXX + SG_ VehVLim_V_RqArb : 39|9@0+ (0.5,0) [0|0] "kph" XXX + +BO_ 344 EngineData_14: 8 XXX + SG_ ApedPosScal_Pc_Actl : 9|10@0+ (0.1,0) [0|0] "%" XXX + SG_ ApedPosPcActl_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX + SG_ ApedPosPcActl_No_Cnt : 13|4@0+ (1,0) [0|0] "" XXX + +BO_ 345 Engine_Data_7_CG1: 8 XXX + SG_ EngDecelFuelCut_B_Allw : 25|1@0+ (1,0) [0|0] "" XXX + SG_ FuelFlw_Vl_Dsply : 55|10@0+ (25.0,0) [0|0] "Micro_Liter" XXX + SG_ FuelFillInlet_B_Dsply : 32|1@0+ (1,0) [0|0] "" XXX + SG_ EngSrvcRqd_B_Rq : 24|1@0+ (1,0) [0|0] "" XXX + SG_ OdoCount : 47|8@0+ (0.2,0) [0|0] "Meters" XXX + SG_ EngOilLife_Pc_Actl : 39|7@0+ (1,0) [0|0] "%" XXX + SG_ AirAmbTe_D_Qf : 28|2@0+ (1,0) [0|0] "" XXX + SG_ EngTqSlwDly_T_Est : 23|11@0+ (1,0) [0|0] "ms" XXX + SG_ TrnKickDown_B_RqDrv : 26|1@0+ (1,0) [0|0] "" XXX + SG_ AirAmb_Te_Actl : 1|10@0+ (0.25,-128.0) [0|0] "degC" XXX + SG_ AirAmb_P_Actl : 7|6@0+ (10.0,500.0) [0|0] "mbar" XXX + SG_ FuelFilterLamp_B_Dsply : 56|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondRec_B_Rq : 61|1@0+ (1,0) [0|0] "" XXX + SG_ AirCondEvdc_D_Stats : 60|3@0+ (1,0) [0|0] "" XXX + SG_ AirCondClutch_B_Stats : 57|1@0+ (1,0) [0|0] "" XXX + +BO_ 346 EngineData_4_CG1: 8 XXX + SG_ TrnAin_Tq_Rq : 12|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_Tq_RqWoMdfy : 55|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_Tq_ActlWoMdfy : 36|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_Tq_Actl : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAinCtlN_B_Allw : 41|1@0+ (1,0) [0|0] "" XXX + SG_ TrnAinTq_D_Qf : 17|2@0+ (1,0) [0|0] "" XXX + +BO_ 348 EngineData_16_CG1: 8 XXX + SG_ EngOilLvlWarn_D_Rq1 : 50|3@0+ (1,0) [0|0] "" XXX + SG_ EngExhBrkOnLamp_B_Rq : 51|1@0+ (1,0) [0|0] "" XXX + SG_ EngExhBrkAutoLamp_B_Rq : 8|1@0+ (1,0) [0|0] "" XXX + SG_ EngAout_N_MxAllw : 36|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ EngAoutIdl_N_MnAllw : 31|11@0+ (1,0) [0|0] "rpm" XXX + SG_ EngAoutIdlRqEc_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX + SG_ EngAoutIdlRqEc_No_Cnt : 12|4@0+ (1,0) [0|0] "" XXX + SG_ EngAoutIdl_N_RqEc : 7|11@0+ (2.0,0) [0|0] "rpm" XXX + SG_ EngExhBrkMde_D_Actl : 55|4@0+ (1,0) [0|0] "" XXX + +BO_ 349 EngineData_17_CG1: 8 XXX + SG_ EngResv_Tq_Actl : 52|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngAout_Tq_ActlSlw : 47|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngExhCat_Te_Est : 13|10@0+ (2.0,-60.0) [0|0] "degC" XXX + SG_ EngCylCutIndTq_Rt_Actl : 39|8@0+ (0.005,0) [0|0] "Nm" XXX + SG_ Eng_Aa_CalcEvntCyc : 7|10@0+ (0.05,-25.6) [0|0] "rpm/ms" XXX + SG_ Eng_Aa_CalcEvntCbust : 19|10@0+ (0.05,-25.6) [0|0] "rpm/ms" XXX + SG_ WaterInFuel : 25|1@0+ (1,0) [0|0] "" XXX + SG_ GlowIndication : 24|1@0+ (1,0) [0|0] "" XXX + +BO_ 350 EngineData_18_CG1: 8 XXX + SG_ EngAoutTqActl_D_Qf : 17|2@0+ (1,0) [0|0] "" XXX + SG_ EngAout_Tq_MnSpcNRtrd : 36|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngAout_Tq_Actl : 31|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngAoutLss_Tq_EstSpcN : 12|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngAout_Tq_MnSpcN : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX + +BO_ 351 EngineData_19: 8 XXX + SG_ VehPreDelvr_V_LimMx : 15|16@0+ (0.01,0) [0|0] "kph" XXX + SG_ BattLo_U_MeasEngMdule : 7|8@0+ (0.1,0) [0|0] "V" XXX + SG_ EngStall_B_Actl : 47|1@0+ (1,0) [0|0] "" XXX + SG_ EngDashPotActv_B_Actl : 46|1@0+ (1,0) [0|0] "" XXX + SG_ EngAout_Tq_MnAllw : 42|11@0+ (1,-500.0) [0|0] "Nm" XXX + +BO_ 352 TransData_3_CG1: 8 XXX + SG_ TrnAinCtlN_N_RqMx : 7|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ TrnAin_Tq_RqSlwMxShif : 42|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAinCtlN_B_RqEnbl : 10|1@0+ (1,0) [0|0] "" XXX + SG_ TrnGboxIn_N_Actl : 23|13@0+ (2.0,0) [0|0] "rpm" XXX + +BO_ 353 Engine_Data_8: 8 XXX + SG_ TrnAinTqDtrb_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX + SG_ TrnAin_Tq_MnSpcEngN : 34|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngAout_N_RqMnPrtct : 20|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ EngAout_N_MnAllw : 4|13@0+ (2.0,0) [0|0] "rpm" XXX + +BO_ 354 CGEA_Urea_Strategy_CG1: 8 XXX + SG_ UreaQltySys_D_RqDsply : 27|3@0+ (1,0) [0|0] "" XXX + SG_ UreaLvlTxt_D_RqDsply : 31|4@0+ (1,0) [0|0] "" XXX + SG_ VehUreaImmo_No_DsplyMx : 12|3@0+ (1,0) [0|0] "Counts" XXX + SG_ VehUreaWarn_V_DsplyMx : 23|7@0+ (1,0) [0|0] "km/h" XXX + SG_ VehUreaRnge_L_DsplyMx : 7|11@0+ (1,0) [0|0] "km" XXX + +BO_ 355 EngineData_10: 8 XXX + SG_ WhlRearDual_D_Stat : 57|2@0+ (1,0) [0|0] "" XXX + SG_ EngPtoMde_D_Actl : 60|3@0+ (1,0) [0|0] "" XXX + SG_ ManRgenVeh_V_MinAllw : 55|7@0+ (1,0) [0|0] "kilometer/hour" XXX + SG_ ManRgenTxt_D_RqDsply : 63|3@0+ (1,0) [0|0] "" XXX + SG_ ManRgenSoot_Pc_RqDsply : 39|7@0+ (1,0) [0|0] "%" XXX + SG_ ManRgenInhbt_T_RqDsply : 23|16@0+ (1,0) [0|0] "Minutes" XXX + SG_ ManRgenInhbt_Pc_Soot : 47|7@0+ (1,0) [0|0] "%" XXX + SG_ ManRgenInhbt_L_RqDsply : 7|16@0+ (1,0) [0|0] "kilometer" XXX + +BO_ 357 EngBrakeData: 8 XXX + SG_ CmbbDeny_B_ActlPrpl : 3|1@0+ (1,0) [0|0] "" XXX + SG_ BpedDrvAppl_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX + SG_ BpedDrvAppl_No_Cnt : 27|4@0+ (1,0) [0|0] "" XXX + SG_ BpedDrvAppl_D_Actl : 31|2@0+ (1,0) [0|0] "" XXX + SG_ CmbbEngTqMn_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_DsplyCcSet : 23|8@0+ (1,0) [0|0] "" XXX + SG_ AccEngStat_D_Actl : 2|3@0+ (1,0) [0|0] "" XXX + SG_ CcMde_D_Actl : 13|3@0+ (1,0) [0|0] "" XXX + SG_ TrnAinTqDtrb_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + SG_ CcStat_D_Actl : 10|3@0+ (1,0) [0|0] "" XXX + SG_ CcOvrrdActv_B_Actl : 15|1@0+ (1,0) [0|0] "" XXX + SG_ PwPck_D_Stat : 59|4@0+ (1,0) [0|0] "" XXX + +BO_ 389 ACCDATA_CG1: 8 XXX + SG_ AccPrpl_A_Pred : 14|10@0+ (0.01,-5.0) [0|0] "m/s^2" XXX + SG_ AccBrkPrkEl_B_Rq : 41|1@0+ (1,0) [0|0] "" XXX + SG_ Cmbb_B_Enbl : 56|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbOvrrd_B_RqDrv : 57|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbDeny_B_Actl : 40|1@0+ (1,0) [0|0] "" XXX + SG_ AccVeh_V_Trg : 7|9@0+ (0.5,0) [0|0] "kph" XXX + SG_ CmbbEngTqMn_B_Rq : 58|1@0+ (1,0) [0|0] "" XXX + SG_ AccPrpl_A_Rq : 55|10@0+ (0.01,-5.0) [0|0] "m/s^2" XXX + SG_ AccDeny_B_Rq : 59|1@0+ (1,0) [0|0] "" XXX + SG_ AccCancl_B_Rq : 42|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkTot_A_Rq : 39|13@0+ (0.0039,-20.0) [0|0] "m/s^2" XXX + SG_ AccBrkPrchg_B_Rq : 60|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkDecel_B_Rq : 61|1@0+ (1,0) [0|0] "" XXX + +BO_ 392 HeadUpDisplayStat: 8 XXX + SG_ Hud_B_Falt : 5|1@0+ (1,0) [0|0] "" XXX + SG_ HudActv_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + SG_ Hud_B_Avail : 6|1@0+ (1,0) [0|0] "" XXX + +BO_ 393 ACCDATA_2_CG1: 8 XXX + SG_ ACC_AUTOBRAKE_CANCEL : 56|1@0+ (1,0) [0|0] "" XXX + SG_ ACC_RESUME_ACTIVE : 57|1@0+ (1,0) [0|0] "" XXX + SG_ FcwAudioWarn_B_Rq : 58|1@0+ (1,0) [0|0] "" XXX + SG_ CadsAudioMute_D_Rq : 61|2@0+ (1,0) [0|0] "" XXX + SG_ AccWarn_D_Dsply : 63|2@0+ (1,0) [0|0] "" XXX + SG_ HudDsplyIntns_No_Actl : 55|8@0+ (0.5,0) [0|0] "%" XXX + SG_ FcwVisblWarn_B_Rq : 40|1@0+ (1,0) [0|0] "" XXX + SG_ HudBlk3_B_Rq : 41|1@0+ (1,0) [0|0] "" XXX + SG_ HudBlk2_B_Rq : 43|1@0+ (1,0) [0|0] "" XXX + SG_ HudBlk1_B_Rq : 42|1@0+ (1,0) [0|0] "" XXX + SG_ HudFlashRate_D_Actl : 45|2@0+ (1,0) [0|0] "" XXX + SG_ CmbbBrkDecel_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX + SG_ CmbbBrkDecel_A_Rq : 23|13@0+ (0.0039,-20.0) [0|0] "m/s^2" XXX + SG_ CmbbBrkPrchg_D_Rq : 47|2@0+ (1,0) [0|0] "" XXX + SG_ CmbbBrkDecel_B_Rq : 26|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbBaSens_D_Rq : 25|2@0+ (1,0) [0|0] "" XXX + SG_ AccPrpl_V_Rq : 7|16@0+ (0.01,0) [0|0] "kph" XXX + +BO_ 394 ACCDATA_3: 8 XXX + SG_ CadsMntr_No_Chk : 55|8@0+ (1,0) [0|0] "" XXX + SG_ FcwDeny_B_Dsply : 10|1@0+ (1,0) [0|0] "" XXX + SG_ FdaWarn_B_Rq : 21|1@0+ (1,0) [0|0] "" XXX + SG_ FcwMemStat_B_Actl : 30|1@0+ (1,0) [0|0] "" XXX + SG_ AccTGap_B_Dsply : 35|1@0+ (1,0) [0|0] "" XXX + SG_ AccMsgTxt_D_Rq : 39|4@0+ (1,0) [0|0] "" XXX + SG_ CadsAlignIncplt_B_Actl : 29|1@0+ (1,0) [0|0] "" XXX + SG_ AccLowVMde_B_Dsply : 16|1@0+ (1,0) [0|0] "" XXX + SG_ AccFllwMde_B_Dsply : 17|1@0+ (1,0) [0|0] "" XXX + SG_ CadsRadrBlck_B_Actl : 22|1@0+ (1,0) [0|0] "" XXX + SG_ FdaStat_D_Dsply : 3|3@0+ (1,0) [0|0] "" XXX + SG_ FdaDeny_B_Dsply : 4|1@0+ (1,0) [0|0] "" XXX + SG_ AccTrgDist_D_Dsply : 28|4@0+ (1,0) [0|0] "" XXX + SG_ CadsChime_B_Rq : 24|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbPostEvnt_B_Dsply : 15|1@0+ (1,0) [0|0] "" XXX + SG_ FcwCmbbSrvcRqd_B_Rq : 12|1@0+ (1,0) [0|0] "" XXX + SG_ AccStopMde_B_Dsply : 0|1@0+ (1,0) [0|0] "" XXX + SG_ CadsCamraBlck_B_Actl : 23|1@0+ (1,0) [0|0] "" XXX + SG_ FcwMemSens_D_Actl : 20|2@0+ (1,0) [0|0] "" XXX + SG_ FcwMemDfaltOn_B_Actl : 18|1@0+ (1,0) [0|0] "" XXX + SG_ AccSrvcRqd_B_Rq : 14|1@0+ (1,0) [0|0] "" XXX + SG_ FcwMsgTxt_D_Rq : 7|3@0+ (1,0) [0|0] "" XXX + SG_ FcwMemAudioOn_B_Actl : 9|1@0+ (1,0) [0|0] "" XXX + SG_ AccTGap_D_Dsply : 34|3@0+ (1,0) [0|0] "" XXX + SG_ AccMemEnbl_B_RqDrv : 42|1@0+ (1,0) [0|0] "" XXX + SG_ FdaMem_B_Stat : 41|1@0+ (1,0) [0|0] "" XXX + +BO_ 512 TorqueDataEngFlags: 8 XXX + SG_ BrkOnOffSwtch_D_Actl : 54|2@0+ (1,0) [0|0] "" XXX + SG_ PrplTqMnSat_B_Actl : 55|1@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTot_Tq_Rq : 39|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ PrplWhlTot_Tq_LimMn : 23|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ PrplWhlTot_Tq_Actl : 7|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ ACCompressorDisp : 63|7@0+ (1,0) [0|0] "%" XXX + +BO_ 513 EngVehicleSpThrottle_CG1: 8 XXX + SG_ ApedPos_PcRate_ActlArb : 63|8@0+ (0.04,-5.0) [0|0] "%/ms" XXX + SG_ Veh_V_RqCcSet : 45|9@0+ (0.5,0) [0|0] "kph" XXX + SG_ VehVActlEng_D_Qf : 9|2@0+ (1,0) [0|0] "" XXX + SG_ reserve : 10|1@0+ (1,0) [0|0] "" XXX + SG_ EngAout_N_Actl : 7|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ Veh_V_ActlEng : 23|16@0+ (0.01,0) [0|0] "kph" XXX + SG_ ApedPos_Pc_ActlArb : 39|10@0+ (0.1,0) [0|0] "%" XXX + SG_ ApedPosPcActl_D_Qf : 52|2@0+ (1,0) [0|0] "" XXX + SG_ Autostart_B_Stat : 50|1@0+ (1,0) [0|0] "" XXX + +BO_ 529 DesiredTorqBrk_CG1: 8 XXX + SG_ CmbbBrkDis_B_Actl : 56|1@0+ (1,0) [0|0] "" XXX + SG_ CMbbDeny_B_ActlBrk : 60|1@0+ (1,0) [0|0] "" XXX + SG_ RgenTqLimActv_B_Actl : 32|1@0+ (1,0) [0|0] "" XXX + SG_ CcDis_B_Cmd : 53|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrk_Pc_Rq : 39|7@0+ (1,0) [0|0] "%" XXX + SG_ RearDiffLck_Tq_RqMx : 23|12@0+ (1,0) [0|0] "Nm" XXX + SG_ VehLongOvrGnd_A_Est : 47|10@0+ (0.035,-17.9) [0|0] "m/s^2" XXX + SG_ StabCtlBrkActv_B_Actl : 27|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbBrkPrchg_B_Actl : 59|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbBrkDecel_B_Actl : 58|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbBaSensInc_B_Actl : 57|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkWarm_B_Actl : 63|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkTotTqMn_B_Actl : 62|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkPrchgActv_B_Actl : 61|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkDis_B_Actl : 50|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkDeny_B_Actl : 49|1@0+ (1,0) [0|0] "" XXX + SG_ AccBrkActv_B_Actl : 48|1@0+ (1,0) [0|0] "" XXX + SG_ PrplDrgCtlActv_B_Actl : 52|1@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTot_Tq_RqMx : 7|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ AbsActv_B_Actl : 51|1@0+ (1,0) [0|0] "" XXX + +BO_ 533 WheelSpeed_CG1: 8 XXX + SG_ WhlRr_W_Meas : 55|15@0+ (0.01,0) [0|0] "rad/s" XXX + SG_ WhlRl_W_Meas : 39|15@0+ (0.01,0) [0|0] "rad/s" XXX + SG_ WhlFr_W_Meas : 23|15@0+ (0.01,0) [0|0] "rad/s" XXX + SG_ WhlFl_W_Meas : 7|15@0+ (0.01,0) [0|0] "rad/s" XXX + +BO_ 534 WheelData: 8 XXX + SG_ WhlRotatRr_No_Cnt : 23|8@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRr_D_Actl : 33|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRl_D_Actl : 39|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFr_D_Actl : 37|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFl_D_Actl : 35|2@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFr_No_Cnt : 7|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|0] "" XXX + SG_ WHEEL_ROLLING_TIMESTAMP : 47|8@0+ (1,0) [0|0] "" XXX + +BO_ 557 InfoCAN_22D: 8 XXX + SG_ Multimedia_System : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 560 TransGearData: 8 XXX + SG_ TrnIpcDsplyRng_D_Actl : 14|3@0+ (1,0) [0|0] "" XXX + SG_ TrnGbox_Rt_Actl : 47|16@0+ (0.001,0) [0|0] "" XXX + SG_ TrnShifMde_D_RqDrv : 3|3@0+ (1,0) [0|0] "" XXX + SG_ TrnSrvcRqd_B_Rq : 63|1@0+ (1,0) [0|0] "" XXX + SG_ GearPos_D_Trg : 7|4@0+ (1,0) [0|0] "" XXX + SG_ TrnCnvtClu_D_Actl : 11|2@0+ (1,0) [0|0] "" XXX + SG_ TrnShifActv_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX + SG_ RtmTerrMdeChng_D_Rdy : 58|3@0+ (1,0) [0|0] "" XXX + SG_ RtmTerrMde_D_Actl : 61|3@0+ (1,0) [0|0] "" XXX + SG_ GearRvrseActv_B_Actl : 62|1@0+ (1,0) [0|0] "" XXX + SG_ GearLvrPos_D_Actl : 23|4@0+ (1,0) [0|0] "" XXX + SG_ GboxOil_Te_Actl : 31|8@0+ (1,-60.0) [0|0] "degC" XXX + +BO_ 561 TransGearData_2: 8 XXX + SG_ MtrGen1Aout_Tq_Rq : 53|14@0+ (0.1,-800.0) [0|0] "Nm" XXX + SG_ MtrGen1AoutTqRq_No_Cs : 7|8@0+ (1,0) [0|0] "" XXX + SG_ MtrGen1AoutTqRq_No_Cnt : 15|4@0+ (1,0) [0|0] "" XXX + SG_ CoolFanTrn_D_Rq : 31|5@0+ (1,0) [0|0] "" XXX + SG_ TrnMsgTxt_D_Rq : 39|4@0+ (1,0) [0|0] "" XXX + SG_ TrnMil_D_Rq : 26|2@0+ (1,0) [0|0] "" XXX + SG_ EngExhBrkTq_Pc_Rq : 23|7@0+ (1,0) [0|0] "%" XXX + +BO_ 562 TransGearData_3_CG1: 8 XXX + SG_ TrnPto_D_Rdy : 12|2@0+ (1,0) [0|0] "" XXX + SG_ TipInMgrInhbt_B_RqTrn : 41|1@0+ (1,0) [0|0] "" XXX + SG_ TrnAinIdl_Tq_Actl : 39|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAinLss_Tq_Est : 7|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_Tq_RqSlwMn : 23|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ GearEngag_D_Actl : 10|3@0+ (1,0) [0|0] "" XXX + SG_ TrnAinTqDtrb_B_Rq : 40|1@0+ (1,0) [0|0] "" XXX + SG_ TrnTotLss_Tq_Actl : 55|8@0+ (0.5,0) [0|0] "Nm" XXX + +BO_ 563 TransGearData_4_CG1: 8 XXX + SG_ TrnAinCtlN_N_RqMn : 20|13@0+ (2.0,0) [0|0] "rpm" XXX + SG_ TrnAinTqMn_No_Cs : 63|8@0+ (1,0) [0|0] "" XXX + SG_ TrnAinTqMn_No_Cnt : 11|4@0+ (1,0) [0|0] "" XXX + SG_ TrnAinRq_Pc_SpcPdl : 7|10@0+ (0.1,0) [0|0] "%" XXX + SG_ TrnAin_Tq_RqFstMn : 42|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ TrnAin_N_SpcEng : 39|13@0+ (2.0,0) [0|0] "rpm" XXX + +BO_ 570 Suspension_Stat: 8 XXX + SG_ CcdMsgTxt_D_RqDsply : 7|4@0+ (1,0) [0|0] "" XXX + SG_ SuspRear_L_Prev : 48|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX + SG_ SuspRear_L_Actl : 32|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX + SG_ SuspFrnt_L_Prev : 16|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX + SG_ SuspFrnt_L_Actl : 0|9@0+ (0.782779,-200.0) [0|0] "millimeter" XXX + +BO_ 571 ColumnLockData: 8 XXX + SG_ SteWhlLckMsgTxt_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 576 Body_Information_4_CG1: 8 XXX + SG_ HvacRec_Pc_Est_UB : 51|1@0+ (1,0) [0|0] "" XXX + SG_ HvacRec_Pc_Est : 38|7@0+ (1,0) [0|0] "%" XXX + SG_ HvacEngIdleInc_B_Rq_UB : 49|1@0+ (1,0) [0|0] "" XXX + SG_ HvacEngIdleInc_B_Rq : 53|1@0+ (1,0) [0|0] "" XXX + SG_ HvacAir_Flw_Est_UB : 52|1@0+ (1,0) [0|0] "" XXX + SG_ HvacAir_Flw_Est : 31|9@0+ (0.5,0) [0|0] "liter/second" XXX + SG_ AmbTempImpr_UB : 50|1@0+ (1,0) [0|0] "" XXX + SG_ AmbTempImpr : 47|10@0+ (0.25,-128.0) [0|0] "degreesC" XXX + SG_ DriverCrankingReq : 16|1@0+ (1,0) [0|0] "" XXX + SG_ Fcw_B_DenyMntr : 23|1@0+ (1,0) [0|0] "" XXX + SG_ EngOff_T_Actl : 7|16@0+ (1,0) [0|0] "seconds" XXX + SG_ CmbbMntr_B_Err : 22|1@0+ (1,0) [0|0] "" XXX + SG_ CmbbDeny_B_RqMntr : 21|1@0+ (1,0) [0|0] "" XXX + SG_ AccMntr_B_Err : 20|1@0+ (1,0) [0|0] "" XXX + SG_ AccDeny_B_RqMntr : 19|1@0+ (1,0) [0|0] "" XXX + +BO_ 592 EONV_Status: 8 XXX + SG_ EONV_FAULT : 59|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_KAL_IC_RQST : 53|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_T_STATUS : 61|2@0+ (1,0) [0|0] "" XXX + SG_ EONV_VREF_FLT : 62|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_VBATT_FLT : 63|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_CANISTER_VENT_FLT : 54|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_CVS_CLOSED : 55|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_BATT_VOLT : 23|16@0+ (0.0009765625,0) [0|0] "volts" XXX + SG_ EONV_TANK_FLT : 48|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_TANK_PRESS : 7|16@0+ (0.001953125,-64.0) [0|0] "inches H2O" XXX + +BO_ 597 EONV_Control: 8 XXX + SG_ EONV_POS_DET_THRESHOLD : 23|16@0+ (0.001953125,-64.0) [0|0] "inches H2O" XXX + SG_ EONV_STAY_ALIVE : 15|1@0+ (1,0) [0|0] "" XXX + SG_ EONV_CVS_MODE : 7|3@0+ (1,0) [0|0] "" XXX + SG_ EONV_NEG_DET_THRESHOLD : 39|16@0+ (0.001953125,-64.0) [0|0] "inches H2O" XXX + SG_ EONV_MIL_ON : 14|1@0+ (1,0) [0|0] "" XXX + SG_ EonvMsgTxOff_B_Rq : 4|1@0+ (1,0) [0|0] "" XXX + +BO_ 608 Information4x4_CG1: 8 XXX + SG_ AwdRngeShifActv_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX + SG_ TrnAout_Tq_RqMx : 47|13@0+ (1,-1250.0) [0|0] "Nm" XXX + SG_ AwdRngeFalt_D_Stat : 4|2@0+ (1,0) [0|0] "" XXX + SG_ AwdLck_Tq_Actl : 15|12@0+ (1,0) [0|0] "Nm" XXX + SG_ AwdRnge_D_Actl : 7|3@0+ (1,0) [0|0] "" XXX + SG_ AwdTerrMdeChng_D_Rdy : 50|3@0+ (1,0) [0|0] "" XXX + SG_ AwdTerrMde_D_Actl : 58|3@0+ (1,0) [0|0] "" XXX + SG_ AwdOffRoadMode_D_Stats : 25|2@0+ (1,0) [0|0] "" XXX + SG_ AwdStat_D_RqDsply : 63|5@0+ (1,0) [0|0] "" XXX + SG_ AwdLoLamp_D_RqDsply : 35|2@0+ (1,0) [0|0] "" XXX + SG_ AwdHiLamp_D_RqDsply : 19|2@0+ (1,0) [0|0] "" XXX + SG_ AwdAutoLamp_D_RqDsply : 17|2@0+ (1,0) [0|0] "" XXX + SG_ AwdLckLamp_D_RqDsply : 27|2@0+ (1,0) [0|0] "" XXX + SG_ AwdLck_D_Stat : 31|4@0+ (1,0) [0|0] "" XXX + SG_ Awd2wdLamp_D_RqDsply : 2|2@0+ (1,0) [0|0] "" XXX + +BO_ 609 AWD_4x4_Data: 8 XXX + SG_ AwdLck_Tq_Rq : 27|12@0+ (1,0) [0|0] "Nm" XXX + SG_ AwdSrvcRqd_B_Rq : 44|1@0+ (1,0) [0|0] "" XXX + +BO_ 613 PassengerSeatOCSInfo: 8 XXX + SG_ VehicleMYCalibrationId : 39|8@0+ (1,0) [0|0] "" XXX + SG_ VehicleCalibrationId : 31|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSensrDataUpperLim : 15|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSensrDataLowerLim : 23|8@0+ (1,0) [0|0] "" XXX + SG_ OCSLevel2Error : 0|1@0+ (1,0) [0|0] "" XXX + SG_ ObjectEntrapped : 2|1@0+ (1,0) [0|0] "" XXX + SG_ OCSLevel1Error : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 736 FCIM_Button_Press_HS: 8 XXX + SG_ FCIM_Target_ID : 13|4@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Button_Type : 7|8@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Button_State : 15|2@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Target_ID_UB : 23|1@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Button_Type_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ FCIM_Button_State_UB : 8|1@0+ (1,0) [0|0] "" XXX + +BO_ 806 Compressor_Req_HS: 8 XXX + SG_ HvacEvap_Te_Rq : 33|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ HvacAirCond_B_Rq : 7|1@0+ (1,0) [0|0] "" XXX + SG_ HvacEvap_Te_Offst : 1|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + +BO_ 832 RCMStatusMessage: 8 XXX + SG_ eCallNotification : 2|2@0+ (1,0) [0|0] "" XXX + SG_ CrashNotification : 5|1@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBucklePsngr : 57|2@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBuckleMid : 59|2@0+ (1,0) [0|0] "" XXX + SG_ ThirdRowBuckleDriver : 61|2@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBucklePsngr : 63|2@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBuckleMid : 49|2@0+ (1,0) [0|0] "" XXX + SG_ SecondRowBuckleDriver : 51|2@0+ (1,0) [0|0] "" XXX + SG_ FirstRowBuckleDriver : 55|2@0+ (1,0) [0|0] "" XXX + SG_ RstrnTotalEvntCnt : 43|4@0+ (1,0) [0|0] "" XXX + SG_ RstrnCurrentEvntCnt : 39|8@0+ (1,0) [0|0] "" XXX + SG_ RILReq : 15|2@0+ (1,0) [0|0] "" XXX + SG_ FuelCutoffReq : 13|4@0+ (1,0) [0|0] "" XXX + SG_ SeatbeltIndicatorReq : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SeatbeltChimeReq : 8|1@0+ (1,0) [0|0] "" XXX + SG_ BeltMinderProgConfReq : 21|2@0+ (1,0) [0|0] "" XXX + SG_ BeltMinderLevelReq : 19|4@0+ (1,0) [0|0] "" XXX + SG_ FirstRowBucklePsngr : 53|2@0+ (1,0) [0|0] "" XXX + SG_ InfoLampReq : 29|1@0+ (1,0) [0|0] "" XXX + SG_ GenRedLampReq : 28|1@0+ (1,0) [0|0] "" XXX + SG_ RstrnTextMsgReq : 27|2@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNumRcvd : 3|1@0+ (1,0) [0|0] "" XXX + SG_ RstrnStatDeployEnbld : 6|1@0+ (1,0) [0|0] "" XXX + SG_ RstrnImpactEvntStatus : 46|3@0+ (1,0) [0|0] "" XXX + SG_ PassRstrnInd_Req : 25|2@0+ (1,0) [0|0] "" XXX + SG_ RstrnStatTrigEvnt : 7|1@0+ (1,0) [0|0] "" XXX + SG_ PsngrFrntDetct_D_Actl : 31|2@0+ (1,0) [0|0] "" XXX + SG_ Beltminder_Warn_Stats : 22|1@0+ (1,0) [0|0] "" XXX + SG_ EDRTriggerEvntSync : 47|1@0+ (1,0) [0|0] "" XXX + +BO_ 842 MassageSeat_Data1_HS: 8 XXX + SG_ SeatLmbrUpDrv_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrMidDrv_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrLoDrv_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlUpDrv_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlLoDrv_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 843 MassageSeat_Data2_HS: 8 XXX + SG_ SeatLmbrUpPsgr_Pc_Actl : 38|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrMidPsgr_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatLmbrLoPsgr_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlUpPsgr_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatBlLoPsgr_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 844 MassageSeat_Stat1_HS: 8 XXX + SG_ StmsLmbrDrv_D_Stat : 17|2@0+ (1,0) [0|0] "" XXX + SG_ StmsCshnDrv_D_Stat : 19|2@0+ (1,0) [0|0] "" XXX + SG_ SeatSwtchDrv_B_Stat : 31|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDrv_D_Stat : 23|3@0+ (1,0) [0|0] "" XXX + SG_ SeatAirAmb_P_Actl : 7|16@0+ (0.01,0) [0|0] "KiloPascal" XXX + SG_ SeatPDrv_B_Stat : 20|1@0+ (1,0) [0|0] "" XXX + +BO_ 845 MassageSeat_Stat2_HS: 8 XXX + SG_ StmsLmbrPsgr_D_Stat : 15|2@0+ (1,0) [0|0] "" XXX + SG_ StmsCshnPsgr_D_Stat : 13|2@0+ (1,0) [0|0] "" XXX + SG_ SeatSwtchPsgr_B_Stat : 11|1@0+ (1,0) [0|0] "" XXX + SG_ SeatPPsgr_B_Stat : 7|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnPsgr_D_Stat : 6|3@0+ (1,0) [0|0] "" XXX + SG_ PsgrMemFeedback_Rsp : 3|4@0+ (1,0) [0|0] "" XXX + +BO_ 846 MassageSeat_Req: 8 XXX + SG_ SeatFnPsgr_D_Rq : 15|3@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDrv_D_Rq : 12|3@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDfaltPsgr_B_Rq : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnDfaltDrv_B_Rq : 8|1@0+ (1,0) [0|0] "" XXX + SG_ SeatFnChngPsgr_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX + SG_ SeatFnChngDrv_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX + SG_ PsgrMemory_Rq : 3|4@0+ (1,0) [0|0] "" XXX + +BO_ 848 RestraintsData: 8 XXX + SG_ PassRstrnInd_Stat_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ SeatBltWrnChmeStat : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Seatbelt_IndctrStat : 4|3@0+ (1,0) [0|0] "" XXX + SG_ RILStat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ PassRstrnInd_Stat : 15|4@0+ (1,0) [0|0] "" XXX + +BO_ 849 MassageSeat_Data3_HS: 8 XXX + SG_ SeatCshnDrvRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnDrvRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnDrvFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnDrvFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 850 MassageSeat_Data4_HS: 8 XXX + SG_ SeatCshnPsgrRR_Pc_Actl : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnPsgrRL_Pc_Actl : 22|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnPsgrFR_Pc_Actl : 14|7@0+ (1,0) [0|0] "%" XXX + SG_ SeatCshnPsgrFL_Pc_Actl : 6|7@0+ (1,0) [0|0] "%" XXX + +BO_ 853 EFP_CC_Status: 8 XXX + SG_ Save_My_Temp : 59|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Left_Temp_Setpt : 31|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RrDefrost_HtdMirrorReq : 60|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Control_Status : 16|1@0+ (1,0) [0|0] "" XXX + SG_ MultipleButtonPressReq : 63|3@0+ (1,0) [0|0] "" XXX + SG_ Rear_System_Mode_Req : 19|3@0+ (1,0) [0|0] "" XXX + SG_ Rear_Left_Temp_Setpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ Recirc_Request : 23|2@0+ (1,0) [0|0] "" XXX + SG_ Front_Rt_Temp_Setpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ AC_Request : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Windshield_ModeRequest : 15|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Panel_Mode_Request : 7|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Overriding_ModeReq : 10|3@0+ (1,0) [0|0] "" XXX + SG_ Forced_Recirc_Req : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_Request : 3|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Rear_Right_Temp_Setpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX + +BO_ 854 EFP_CC_Seat_Req_Stat: 8 XXX + SG_ Front_Rear_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX + SG_ Pass_Rr_Cond_Seat_Req : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Rr_Cond_Seat_Lvl : 8|3@0+ (1,0) [0|0] "" XXX + SG_ Pass_Fr_Cond_Seat_Req : 13|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Fr_Cond_Seat_Lvl : 11|3@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Rr_Cond_Seat_Req : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Rr_Cond_Seat_Lvl : 2|3@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Fr_Cond_Seat_Req : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Fr_Cond_Seat_Lvl : 5|3@0+ (1,0) [0|0] "" XXX + +BO_ 855 RCCM_CC_Status_HS: 8 XXX + SG_ RrBlwrCondStLdShedStat : 25|2@0+ (1,0) [0|0] "" XXX + SG_ FrBlwrCondStLdShedStat : 20|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_Rr_Rt_TempSetpt : 63|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Rr_Left_TempSetpt : 55|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Fr_Rt_TempSetpt : 47|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RCCM_Fr_Rr_Blower_Req : 31|6@0+ (1,0) [0|0] "Detents" XXX + SG_ Panel_Mode_State : 7|4@0+ (8.33,0) [0|0] "%" XXX + SG_ RrDefHtdMirrLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX + SG_ Windshield_Mode_State : 15|4@0+ (8.33,0) [0|0] "%" XXX + SG_ Recirc_Door_State : 11|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_System_Mode_State : 23|3@0+ (1,0) [0|0] "" XXX + SG_ Default_Defrost_State : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Auto_AC_Indicator_Temp : 16|1@0+ (1,0) [0|0] "" XXX + SG_ Floor_Mode_State : 3|4@0+ (8.33,0) [0|0] "%" XXX + SG_ RCCM_Fr_Left_TempSetpt : 39|8@0+ (1,0) [0|0] "Mixed" XXX + SG_ RrDefrost_HtdMirrState : 8|1@0+ (1,0) [0|0] "" XXX + +BO_ 856 RCCM_CC_Seat_Status_HS: 8 XXX + SG_ Active_My_Temp : 2|1@0+ (1,0) [0|0] "" XXX + SG_ CC_HtdStrWhl_Req : 24|1@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PR_Cond_Seat_Lvl : 31|3@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PR_Cond_Seat_Req : 28|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PF_Cond_Seat_Req : 20|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_PF_Cond_Seat_Lvl : 23|3@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DR_Cond_Seat_Req : 12|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DR_Cond_Seat_Lvl : 15|3@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DF_Cond_Seat_Req : 4|2@0+ (1,0) [0|0] "" XXX + SG_ RCCM_DF_Cond_Seat_Lvl : 7|3@0+ (1,0) [0|0] "" XXX + SG_ PassRrCondStLdShedStat : 26|2@0+ (1,0) [0|0] "" XXX + SG_ PassFrCondStLdShedStat : 18|2@0+ (1,0) [0|0] "" XXX + SG_ DrvRrCondStLdShedStat : 10|2@0+ (1,0) [0|0] "" XXX + SG_ DrvFrCondStLdShedStat : 1|2@0+ (1,0) [0|0] "" XXX + +BO_ 857 RCCM_CC_MBP_Press_Stat_HS: 8 XXX + SG_ MultBtnPushDsplyPass10 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyPass1 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ Report_Active : 33|2@0+ (1,0) [0|0] "" XXX + SG_ Pass_Temp_Units : 35|1@0+ (1,0) [0|0] "" XXX + SG_ Front_Fan_Bars_Disply : 39|3@0+ (1,0) [0|0] "" XXX + SG_ Drvr_Temp_Units : 36|1@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyDrvr10 : 7|8@0+ (1,0) [0|0] "" XXX + SG_ MultBtnPushDsplyDrvr1 : 15|8@0+ (1,0) [0|0] "" XXX + +BO_ 859 MFD_CC_Status_HS: 8 XXX + SG_ Rear_Mode_Bttn_Status : 38|1@0+ (1,0) [0|0] "" XXX + SG_ ConditionSt_ButtonStat : 20|5@0+ (1,0) [0|0] "" XXX + SG_ Driver_Set_Temp : 31|8@0+ (0.5,0) [0|0] "Degrees" XXX + SG_ Frt_System_Button_Stat : 7|5@0+ (1,0) [0|0] "" XXX + SG_ Rear_Blower_Bar_Status : 2|3@0+ (1,0) [0|0] "# of Bars" XXX + SG_ Rear_Fan_Button_Status : 13|2@0+ (1,0) [0|0] "" XXX + SG_ Rear_Man_Temp_Bar_Stat : 11|4@0+ (1,0) [0|0] "" XXX + SG_ Rear_Temp_Button_Status : 23|2@0+ (1,0) [0|0] "" XXX + SG_ Voice_Blower_Limit : 21|1@0+ (1,0) [0|0] "" XXX + +BO_ 860 EFP_CC_Info_Status: 8 XXX + SG_ Rear_Panel_Btn_State : 41|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Floor_Btn_State : 40|1@0+ (1,0) [0|0] "" XXX + SG_ HtdStrWhl_SftBtt_Stt : 39|2@0+ (1,0) [0|0] "" XXX + SG_ AC_Sft_Button_State : 23|2@0+ (1,0) [0|0] "" XXX + SG_ DrvRrCondSeatSftBttnSt : 47|3@0+ (1,0) [0|0] "" XXX + SG_ DrvFrCondSeatSftBtnStt : 37|3@0+ (1,0) [0|0] "" XXX + SG_ CC_RecircSBtn_St : 27|2@0+ (1,0) [0|0] "" XXX + SG_ CC_RrDefrSBtn_St : 24|1@0+ (1,0) [0|0] "" XXX + SG_ PasRrCondSeatSftBttnSt : 44|3@0+ (1,0) [0|0] "" XXX + SG_ PasFrCondSeatSftBtnStt : 34|3@0+ (1,0) [0|0] "" XXX + SG_ MyTemp_Soft_Bttn_State : 25|1@0+ (1,0) [0|0] "" XXX + SG_ CC_MaxACSBtn_St : 28|1@0+ (1,0) [0|0] "" XXX + SG_ RearPowerButtonState : 16|1@0+ (1,0) [0|0] "" XXX + SG_ RearCoolBarsDisplayed : 11|3@0+ (1,0) [0|0] "Bars_On" XXX + SG_ Rear_Sft_Control_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ CC_RrNeutralBarDsp_St : 8|1@0+ (1,0) [0|0] "" XXX + SG_ CC_RrHeatBarsDsp_St : 31|3@0+ (1,0) [0|0] "Bars_On" XXX + SG_ Rear_Fan_Bars_Displayed : 19|3@0+ (1,0) [0|0] "" XXX + SG_ CC_RrCtrlBtn_St : 20|1@0+ (1,0) [0|0] "" XXX + SG_ Rear_Auto_Button_State : 21|1@0+ (1,0) [0|0] "" XXX + SG_ CC_FrPowerSBtn_St : 14|1@0+ (1,0) [0|0] "" XXX + SG_ CC_FrDefrostSBtn_St : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_Soft_Btn_Stt : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_MODE_State : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Front_AUTO_FAN_State : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Dual_Button_State : 12|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarPnlSBtn_St : 5|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarPnFlrSBtn_St : 4|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarFlrWsSBtn_St : 2|1@0+ (1,0) [0|0] "" XXX + SG_ CC_BarDrvFlrSBtn_St : 3|1@0+ (1,0) [0|0] "" XXX + +BO_ 890 Active_Noise: 8 XXX + SG_ ANC_Chime_Supported : 4|2@0+ (1,0) [0|0] "" XXX + SG_ ActvNseAudio_D_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ ActvNse_B_Actv : 5|1@0+ (1,0) [0|0] "" XXX + +BO_ 891 Active_Noise_Data: 8 XXX + SG_ CabnSndAmb_Db_Actl : 7|8@0+ (1,30.0) [0|0] "decibel" XXX + +BO_ 906 Body_Information_1: 8 XXX + SG_ CcdMde_D_Rq_UB : 0|1@0+ (1,0) [0|0] "" XXX + SG_ CcdMde_D_Rq : 7|2@0+ (1,0) [0|0] "" XXX + SG_ CarMode : 5|4@0+ (1,0) [0|0] "" XXX + SG_ SecondaryHeater_Rqst : 55|1@0+ (1,0) [0|0] "" XXX + SG_ Passenger_Sunload_Raw : 47|8@0+ (5.0,0) [0|0] "W/m^2" XXX + SG_ Driver_Sunload_Raw : 39|8@0+ (5.0,0) [0|0] "W/m^2" XXX + SG_ HvacEvap_Te_Actl_UB : 1|1@0+ (1,0) [0|0] "" XXX + SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50.0) [0|0] "Degrees C" XXX + SG_ SecondaryHeater_Rqst_UB : 18|1@0+ (1,0) [0|0] "" XXX + SG_ Outside_Air_Temp_Stat_UB : 23|1@0+ (1,0) [0|0] "" XXX + SG_ Outside_Air_Temp_Stat : 15|8@0+ (0.5,-40.0) [0|0] "Degrees C" XXX + SG_ Veh_Lock_Status : 54|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_Lock_Requestor : 52|5@0+ (1,0) [0|0] "" XXX + SG_ Veh_Lock_EvNum : 63|8@0+ (1,0) [0|0] "Counts" XXX + SG_ immoIndicatorCmd : 22|4@0+ (1,0) [0|0] "" XXX + +BO_ 909 Body_Information_6: 8 XXX + SG_ PEBackupSlot_Stats_UB : 43|1@0+ (1,0) [0|0] "" XXX + SG_ PEBackupSlot_Stats : 25|2@0+ (1,0) [0|0] "" XXX + SG_ KeyMykeyTot_No_Cnt : 47|4@0+ (1,0) [0|0] "Counts" XXX + SG_ SideDetect_R_SysOpState_UB : 26|1@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_R_SysOpState : 28|2@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_R_SnsrState_UB : 29|1@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_R_SnsrState : 31|2@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_L_SysOpState_UB : 16|1@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_L_SysOpState : 18|2@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_L_SnsrState_UB : 19|1@0+ (1,0) [0|0] "" XXX + SG_ SideDetect_L_SnsrState : 21|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_SnState_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_SnState : 23|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_Op_State_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_Op_State : 11|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_Alert_UB : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_R_Alert : 14|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_SnState_UB : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_SnState : 1|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_Op_State_UB : 2|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_Op_State : 4|2@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_Alert_UB : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Cross_Traffic_L_Alert : 7|2@0+ (1,0) [0|0] "" XXX + SG_ IgnKeyType_D_Actl : 39|4@0+ (1,0) [0|0] "" XXX + SG_ KeyAdmnTot_No_Cnt : 35|4@0+ (1,0) [0|0] "Counts" XXX + +BO_ 936 ParkAid_Data: 8 XXX + SG_ SAPPErrorCoding : 23|8@0+ (1,0) [0|0] "" XXX + SG_ ExtSteeringAngleReq : 7|15@0+ (0.1,-1000.0) [0|0] "Degrees" XXX + SG_ EPASExtAngleStatReq : 8|1@0+ (1,0) [0|0] "" XXX + +BO_ 937 ParkAid_Range_to_Target: 8 XXX + SG_ RangeToClosestObstacle : 55|12@0+ (1,0) [0|0] "cm" XXX + SG_ RangeRearCornerRtSn : 35|12@0+ (1,0) [0|0] "cm" XXX + SG_ RangeRearCornerLeftSn : 31|12@0+ (1,0) [0|0] "cm" XXX + SG_ RangeRearCenterRtSn : 11|12@0+ (1,0) [0|0] "cm" XXX + SG_ RangeRearCenterLeftSn : 7|12@0+ (1,0) [0|0] "cm" XXX + +BO_ 939 ParkAid_Data_CG1: 8 XXX + SG_ EPASExtAngleStatReq : 7|1@0+ (1,0) [0|0] "" XXX + SG_ ExtSteeringAngleReq : 6|15@0+ (0.1,-1000.0) [0|0] "Degrees" XXX + SG_ SAPPErrorCoding : 23|8@0+ (1,0) [0|0] "" XXX + SG_ RangeToClosestObstacle : 27|12@0+ (1,0) [0|0] "cm" XXX + +BO_ 942 BodyInformation_2: 8 XXX + SG_ Easy_Entry_Exit_Stat : 14|2@0+ (1,0) [0|0] "" XXX + SG_ Memory_Feedback_Rqst : 15|1@0+ (1,0) [0|0] "" XXX + SG_ Delay_Accy : 41|1@0+ (1,0) [0|0] "" XXX + SG_ Fuel_Econ_AFE_Reset_Req_UB : 43|1@0+ (1,0) [0|0] "" XXX + SG_ Multimedia_System : 42|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatDrv_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatHood_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatInnrTgate_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatPsngr_B_Actl : 4|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatRl_B_Actl : 3|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatRr_B_Actl : 2|1@0+ (1,0) [0|0] "" XXX + SG_ DrStatTgate_B_Actl : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Fuel_Econ_AFE_Reset_Req : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Nav_Unit_Setting : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Cancel_Auto_Movement : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Cancel_Auto_Movement_UB : 8|1@0+ (1,0) [0|0] "" XXX + SG_ DrvSeat_Stat : 34|3@0+ (1,0) [0|0] "" XXX + SG_ DrvSeat_Stat_UB : 10|1@0+ (1,0) [0|0] "" XXX + SG_ Easy_Entry_Rqst : 47|2@0+ (1,0) [0|0] "" XXX + SG_ Easy_Entry_Rqst_UB : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Multimedia_System_UB : 40|1@0+ (1,0) [0|0] "" XXX + SG_ Memory_Cmd : 39|4@0+ (1,0) [0|0] "" XXX + SG_ Memory_Cmd_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ Memory_Feedback_Rqst_UB : 45|1@0+ (1,0) [0|0] "" XXX + SG_ Decklid_Ajar_Status : 44|1@0+ (1,0) [0|0] "" XXX + +BO_ 947 BodyInformation_3: 8 XXX + SG_ RearFog_Lamp_Ind_UB : 49|1@0+ (1,0) [0|0] "" XXX + SG_ RearFog_Lamp_Ind : 50|1@0+ (1,0) [0|0] "" XXX + SG_ PwMdeExten_D_Actl : 63|5@0+ (1,0) [0|0] "" XXX + SG_ Turn_Ind_Cmd_Right : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Turn_Ind_Cmd_Left : 9|1@0+ (1,0) [0|0] "" XXX + SG_ Ignition_Switch_Stable : 1|2@0+ (1,0) [0|0] "" XXX + SG_ Parklamp_Status : 3|2@0+ (1,0) [0|0] "" XXX + SG_ Litval : 47|8@0+ (1,0) [0|0] "" XXX + SG_ Key_In_Ignition_Stat : 11|2@0+ (1,0) [0|0] "" XXX + SG_ Ignition_Status : 7|4@0+ (1,0) [0|0] "" XXX + SG_ Dimming_Lvl : 31|8@0+ (1,0) [0|0] "" XXX + SG_ Day_Night_Status : 15|2@0+ (1,0) [0|0] "" XXX + SG_ Remote_Start_Status : 13|2@0+ (1,0) [0|0] "" XXX + SG_ DRV_SELECT_STAT : 19|4@0+ (1,0) [0|0] "" XXX + SG_ PrkBrkActv_B_Actl : 55|1@0+ (1,0) [0|0] "" XXX + SG_ HtdStrWhl_SftBtt_State_UB : 51|1@0+ (1,0) [0|0] "" XXX + SG_ HtdStrWhl_SftBtt_State : 53|2@0+ (1,0) [0|0] "" XXX + SG_ HvacRemoteStrt_N_Rq_UB : 56|1@0+ (1,0) [0|0] "" XXX + SG_ HvacRemoteStrt_N_Rq : 23|4@0+ (100.0,450.0) [0|0] "RPM" XXX + SG_ HvacAirCond_B_Rq_UB : 57|1@0+ (1,0) [0|0] "" XXX + SG_ Remote_Start_Warn_Req : 54|1@0+ (1,0) [0|0] "" XXX + SG_ HvacAirCond_B_Rq : 58|1@0+ (1,0) [0|0] "" XXX + +BO_ 948 Tire_Pressure_Status: 8 XXX + SG_ Tire_Press_ILR_Stat2 : 27|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_IRR_Stat2 : 31|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_LR_OLR_Stat2 : 19|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_RR_ORR_Stat2 : 23|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_RF_Stat2 : 11|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_LF_Stat2 : 15|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_System_Stat2 : 7|4@0+ (1,0) [0|0] "" XXX + SG_ Tire_Press_Telltale : 3|2@0+ (1,0) [0|0] "" XXX + +BO_ 949 Tire_Pressure_Data: 8 XXX + SG_ Tire_Press_RR_ORR_Data : 23|8@0+ (1,0) [0|0] "Psi" XXX + SG_ Tire_Press_RF_Data : 15|8@0+ (1,0) [0|0] "Psi" XXX + SG_ Tire_Press_LR_OLR_Data : 31|8@0+ (1,0) [0|0] "Psi" XXX + SG_ Tire_Press_IRR_Data : 39|8@0+ (1,0) [0|0] "Psi" XXX + SG_ Tire_Press_ILR_Data : 47|8@0+ (1,0) [0|0] "Psi" XXX + SG_ Tire_Press_LF_Data : 7|8@0+ (1,0) [0|0] "Psi" XXX + +BO_ 955 Smart_Headlamp_Stat: 8 XXX + SG_ Headlamp_Switch_Stat : 7|2@0+ (1,0) [0|0] "" XXX + SG_ Fog_Lamp_Dbnce : 5|2@0+ (1,0) [0|0] "" XXX + SG_ Digital_Dimmer_Sw_Stat : 3|3@0+ (1,0) [0|0] "" XXX + +BO_ 957 Rear_FogLamp: 8 XXX + SG_ RearFog_Lamp_Dbnce : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 963 BCM_to_HS_Body: 8 XXX + SG_ DrTgateChime_D_Rq_UB : 9|1@0+ (1,0) [0|0] "" XXX + SG_ DrTgateChime_D_Rq : 17|2@0+ (1,0) [0|0] "" XXX + SG_ CamraDefog_B_Actl : 4|1@0+ (1,0) [0|0] "" XXX + SG_ Reverse_Mirror_Stat : 61|2@0+ (1,0) [0|0] "" XXX + SG_ Power_Liftgate_Mode_Stat : 63|2@0+ (1,0) [0|0] "" XXX + SG_ IKT_Program_Status : 51|2@0+ (1,0) [0|0] "" XXX + SG_ Veh_Spd_Slow_Puddle_Status : 41|2@0+ (1,0) [0|0] "" XXX + SG_ Illuminated_Exit_Status : 43|2@0+ (1,0) [0|0] "" XXX + SG_ Illuminated_Entry_Status : 45|2@0+ (1,0) [0|0] "" XXX + SG_ Door_Courtesy_Light_Status : 47|2@0+ (1,0) [0|0] "" XXX + SG_ Courtesy_Demand_BSave_Stat : 33|2@0+ (1,0) [0|0] "" XXX + SG_ Alarm_Lights_Courtesy_Stat : 35|2@0+ (1,0) [0|0] "" XXX + SG_ Courtesy_Delay_Status : 37|2@0+ (1,0) [0|0] "" XXX + SG_ Courtesy_Mode_Status : 39|2@0+ (1,0) [0|0] "" XXX + SG_ Front_Fog_Light_SW_Status : 22|2@0+ (1,0) [0|0] "" XXX + SG_ Brake_Lamp_On_Status : 23|1@0+ (1,0) [0|0] "" XXX + SG_ LowBeam_CKT_CAN : 11|1@0+ (1,0) [0|0] "" XXX + SG_ ParkLamps_CKT_CAN : 8|1@0+ (1,0) [0|0] "" XXX + SG_ RF_Low_Beam_CKT_CAN : 13|1@0+ (1,0) [0|0] "" XXX + SG_ Brk_Fluid_Lvl_Low : 15|2@0+ (1,0) [0|0] "" XXX + SG_ LF_Low_Beam_CKT_CAN : 12|1@0+ (1,0) [0|0] "" XXX + SG_ High_Beam_Indicator_Rqst : 1|1@0+ (1,0) [0|0] "" XXX + SG_ Brake_Warn_Indicator_Rqst : 2|1@0+ (1,0) [0|0] "" XXX + SG_ Headlamp_On_Wrning_Cmd : 6|1@0+ (1,0) [0|0] "" XXX + SG_ Key_In_Ignition_Warn_Cmd : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Fog_Lamps_Rly_Ckt_CAN : 10|1@0+ (1,0) [0|0] "" XXX + SG_ Power_Liftgate_Mode_Stat_UB : 18|1@0+ (1,0) [0|0] "" XXX + SG_ Reverse_Mirror_Stat_UB : 7|1@0+ (1,0) [0|0] "" XXX + SG_ Park_Brake_Chime_Rqst : 3|1@0+ (1,0) [0|0] "" XXX + SG_ Daytime_Running_Lamps : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Running_Board_Stat_UB : 56|1@0+ (1,0) [0|0] "" XXX + SG_ Running_Board_Stat : 58|2@0+ (1,0) [0|0] "" XXX + SG_ Perimeter_Alarm_Chime_Rqst : 20|2@0+ (1,0) [0|0] "" XXX + +BO_ 967 CMPS_FDM_Info_Status: 8 XXX + SG_ CamraFrntStat_D_Stat : 41|2@0+ (1,0) [0|0] "" XXX + SG_ Zone_Icon_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ GPS_Compass_direction : 47|4@0+ (1,0) [0|0] "" XXX + SG_ Segment_MSD_UB : 37|1@0+ (1,0) [0|0] "" XXX + SG_ Segment_LSD_UB : 36|1@0+ (1,0) [0|0] "" XXX + SG_ ExcessiveMagnetism : 32|1@0+ (1,0) [0|0] "" XXX + SG_ Compass_Display_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ Segment_LSD : 15|8@0+ (1,0) [0|0] "" XXX + SG_ Segment_MSD : 7|8@0+ (1,0) [0|0] "" XXX + SG_ Cal_Icon : 21|1@0+ (1,0) [0|0] "" XXX + SG_ Zone_Icon : 22|1@0+ (1,0) [0|0] "" XXX + SG_ Compass_Display : 23|1@0+ (1,0) [0|0] "" XXX + SG_ Cal_Icon_UB : 33|1@0+ (1,0) [0|0] "" XXX + SG_ RearCameraDelayStat : 39|2@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlTow_D_Actl : 25|2@0+ (1,0) [0|0] "SE" XXX + SG_ CamZoomActiveState : 29|2@0+ (1,0) [0|0] "" XXX + SG_ CamraZoomMan_D_Actl : 18|3@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlStat_D_Actl : 27|2@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlDyn_D_Actl : 20|2@0+ (1,0) [0|0] "" XXX + SG_ CamPDCGuidStat : 31|2@0+ (1,0) [0|0] "" XXX + +BO_ 970 Lane_Assist_Data1: 8 XXX + SG_ LkaActvStats_D_Req : 7|3@0+ (1,0) [0|0] "" XXX + SG_ LdwActvStats_D_Req : 4|3@0+ (1,0) [0|0] "" XXX + SG_ LdwActvIntns_D_Req : 1|2@0+ (1,0) [0|0] "" XXX + +BO_ 971 Lane_Assist_Data2: 8 XXX + SG_ LaRefAng_No_Req : 19|12@0+ (0.05,-102.4) [0|0] "mrad" XXX + SG_ LaRampType_B_Req : 4|1@0+ (1,0) [0|0] "" XXX + SG_ LaCurvature_No_Calc : 3|12@0+ (5e-06,-0.01) [0|0] "1/m" XXX + +BO_ 972 Lane_Assist_Data3: 8 XXX + SG_ LaHandsOff_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + SG_ LaActDeny_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + SG_ LaActAvail_D_Actl : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 984 IPMA_Data: 8 XXX + SG_ LaSwtch_D_RqDrv : 45|1@0+ (1,0) [0|0] "" XXX + SG_ DasWarn_D_Dsply : 44|2@0+ (1,0) [0|0] "" XXX + SG_ DasStats_D_Dsply : 47|2@0+ (1,0) [0|0] "" XXX + SG_ DasAlrtLvl_D_Dsply : 55|3@0+ (1,0) [0|0] "" XXX + SG_ CamraStats_D_Dsply : 35|2@0+ (1,0) [0|0] "" XXX + SG_ CamraDefog_B_Req : 36|1@0+ (1,0) [0|0] "" XXX + SG_ LaSwtchStat_No_Actl : 63|1@0+ (1,0) [0|0] "" XXX + SG_ LaHandsOff_D_Dsply : 42|2@0+ (1,0) [0|0] "" XXX + SG_ LaDenyStats_B_Dsply : 40|1@0+ (1,0) [0|0] "" XXX + SG_ LaActvStats_D_Dsply : 52|5@0+ (1,0) [0|0] "" XXX + SG_ AhbcHiBeam_D_Rq : 33|2@0+ (1,0) [0|0] "" XXX + SG_ PersIndexIpma_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoIpmaActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigIpmaActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 986 Personality_APIM_Data3: 8 XXX + SG_ LightAmbIntSwtchInc_B : 22|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbIntSwtchDec_B : 21|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbIntsty_No_Rq : 15|8@0+ (1,0) [0|0] "% Intensity" XXX + SG_ LightAmbColor_No_Rq : 7|8@0+ (1,0) [0|0] "Color Index" XXX + SG_ LightAmbClrSwtchInc_B : 20|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbClrSwtchDec_B : 23|1@0+ (1,0) [0|0] "" XXX + +BO_ 991 Personality_VDM_Data: 8 XXX + SG_ PersIndexVdm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoVdmActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigVdmActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 992 Personality_IPC_Data: 8 XXX + SG_ MsgCntrPersIndex_D_Rq : 39|3@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrFeatConfigRq : 23|16@0+ (1,0) [0|0] "" XXX + SG_ MsgCntrFeatNoRq : 7|16@0+ (1,0) [0|0] "Number" XXX + SG_ MsgCntrDsplyOp_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX + +BO_ 993 Personality_Data_HS: 8 XXX + SG_ PersSetupRestr_D_Actl : 21|2@0+ (1,0) [0|0] "" XXX + SG_ PersSetupAccessCtrl : 19|1@0+ (1,0) [0|0] "SES" XXX + SG_ PersSetup_No_Actl : 31|16@0+ (1,0) [0|0] "Number" XXX + SG_ PersConflict_D_Actl : 22|1@0+ (1,0) [0|0] "" XXX + SG_ AssocConfirm_D_Actl : 15|3@0+ (1,0) [0|0] "" XXX + SG_ RecallEvent_No_Cnt : 7|8@0+ (1,0) [0|0] "Counts" XXX + SG_ PersNo_D_Actl : 10|3@0+ (1,0) [0|0] "" XXX + SG_ PersStore_D_Actl_UB : 23|1@0+ (1,0) [0|0] "" XXX + SG_ PersStore_D_Actl : 12|2@0+ (1,0) [0|0] "" XXX + +BO_ 994 Personality_APIM_Data: 8 XXX + SG_ CamraOvrlTow_D_Rq : 42|1@0+ (1,0) [0|0] "" XXX + SG_ Pers4OptIn_B_Stats : 43|1@0+ (1,0) [0|0] "" XXX + SG_ Pers3OptIn_B_Stats : 33|1@0+ (1,0) [0|0] "" XXX + SG_ Pers2OptIn_B_Stats : 32|1@0+ (1,0) [0|0] "" XXX + SG_ Pers1OptIn_B_Stats : 44|1@0+ (1,0) [0|0] "" XXX + SG_ CtrStkPersIndex_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ CtrStkFeatNoActl : 23|16@0+ (1,0) [0|0] "" XXX + SG_ PersStore_D_Rq : 36|3@0+ (1,0) [0|0] "" XXX + SG_ CtrStkFeatConfigActl : 7|16@0+ (1,0) [0|0] "" XXX + SG_ CtrStkDsplyOp_D_Rq : 47|3@0+ (1,0) [0|0] "" XXX + +BO_ 995 Personality_BCM_Data: 8 XXX + SG_ PersIndexBcm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoBcm_No_Actl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigBcmActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 996 Personality_HCMB_Data_HS: 8 XXX + SG_ PersIndexHcmb_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ PersIndexHcmb_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoHcmbActl_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ FeatNoHcmbActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigHcmbActl_UB : 36|1@0+ (1,0) [0|0] "" XXX + SG_ FeatConfigHcmbActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 997 Personality_CCM_Data: 8 XXX + SG_ PersIndexCcm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoCcmActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigCcmActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 998 Personality_SCCM_Data: 8 XXX + SG_ PersIndexSccm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoSccmActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigSccmActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 999 Personality_HVAC_Data_HS: 8 XXX + SG_ LightAmbIntsty_No_Actl_UB : 33|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbIntsty_No_Actl : 55|8@0+ (1,0) [0|0] "% Intensity" XXX + SG_ LightAmbColor_No_Actl_UB : 32|1@0+ (1,0) [0|0] "" XXX + SG_ LightAmbColor_No_Actl : 47|8@0+ (1,0) [0|0] "Color Index" XXX + SG_ PersIndexHvac_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ FeatNoHvacActl_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ FeatConfigHvacActl_UB : 36|1@0+ (1,0) [0|0] "" XXX + SG_ PersIndexHvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoHvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigHvacActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1001 Personality_RFA_Data_HS: 8 XXX + SG_ PersIndexRfa_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ FeatNoRfaActl_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ FeatConfigRfaActl_UB : 36|1@0+ (1,0) [0|0] "" XXX + SG_ PersIndexRfa_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoRfaActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigRfaActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1002 Personality_APIM_Data2: 8 XXX + SG_ PersIndexApim_D_Actl : 63|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoApimActl : 39|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigApimActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ CntrStkKeycodeActl : 7|16@0+ (1,0) [0|0] "" XXX + SG_ CntrStk_D_RqRecall : 52|3@0+ (1,0) [0|0] "" XXX + SG_ CntrStk_D_RqAssoc : 55|3@0+ (1,0) [0|0] "" XXX + +BO_ 1003 Personality_IPC_Data_2: 8 XXX + SG_ PersIndexIpc_D_Actl : 34|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoIpcActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigIpcActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1004 Personality_DSM_Data_HS: 8 XXX + SG_ PersIndexDsm_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ PersIndexDsm_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoDsmActl_UB : 35|1@0+ (1,0) [0|0] "" XXX + SG_ FeatNoDsmActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigDsmActl_UB : 36|1@0+ (1,0) [0|0] "" XXX + SG_ FeatConfigDsmActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1005 Personality_RHVAC_Data_HS: 8 XXX + SG_ PersIndexRhvac_D_Actl_UB : 34|1@0+ (1,0) [0|0] "" XXX + SG_ FeatNoRhvacActl_UB : 33|1@0+ (1,0) [0|0] "" XXX + SG_ FeatConfigRhvacActl_UB : 32|1@0+ (1,0) [0|0] "" XXX + SG_ PersIndexRhvac_D_Actl : 39|3@0+ (1,0) [0|0] "" XXX + SG_ FeatNoRhvacActl : 23|16@0+ (1,0) [0|0] "Number" XXX + SG_ FeatConfigRhvacActl : 7|16@0+ (1,0) [0|0] "" XXX + +BO_ 1031 Diesel_Data_Legacy_1: 8 XXX + SG_ W2S_COMMAND : 7|1@0+ (1,0) [0|0] "" XXX + SG_ TURBO_BOOST : 1|10@0+ (0.1,-30.0) [0|0] "PSI" XXX + SG_ IDLE_ENGINE_SHUTDOWN : 42|2@0+ (1,0) [0|0] "" XXX + +BO_ 1034 GGCC_Config_Mgmt_ID_1: 8 XXX + SG_ VehicleGGCCData : 7|64@0+ (1,0) [0|0] "mixed" XXX + +BO_ 1036 Desired_Torq_BrkSys_Stat: 8 XXX + SG_ BRK_TC_TEMPORARILY_UNAVAIL : 47|1@0+ (1,0) [0|0] "" XXX + SG_ TRLR_SWAY_EVNT_IN_PROGRESS : 22|1@0+ (1,0) [0|0] "" XXX + +BO_ 1043 ADAPTIVE_HEADLAMP_STAT: 8 XXX + SG_ ADAPTIVE_HEADLAMP_FAILURE : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 1044 AccelerationData: 8 XXX + SG_ VehVertComp_A_Actl : 1|10@0+ (0.01,-0.4) [0|0] "m/s^2" XXX + SG_ VehRolComp_W_Actl : 19|12@0+ (0.0002,-0.82) [0|0] "rad/s" XXX + SG_ VehYawNonLin_W_Rq : 51|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX + SG_ VehYawLin_W_Rq : 35|12@0+ (0.03663,-75.0) [0|0] "deg/s" XXX + +BO_ 1045 BrakeSysFeatures: 8 XXX + SG_ TCMode : 34|1@0+ (1,0) [0|0] "" XXX + SG_ DrvSlipCtlLamp_D_Rq : 63|2@0+ (1,0) [0|0] "" XXX + SG_ RSCMode : 48|1@0+ (1,0) [0|0] "" XXX + SG_ EBAMode : 40|1@0+ (1,0) [0|0] "" XXX + SG_ DrvAntiLckLamp_D_Rq : 17|2@0+ (1,0) [0|0] "" XXX + SG_ ChimeBrk_B_Rq : 38|1@0+ (1,0) [0|0] "" XXX + SG_ BrkLamp_B_Rq : 39|1@0+ (1,0) [0|0] "" XXX + SG_ VehVActlBrk_No_Cs : 31|8@0+ (1,0) [0|0] "" XXX + SG_ VehVActlBrk_No_Cnt : 23|4@0+ (1,0) [0|0] "" XXX + SG_ Veh_V_ActlBrk : 7|16@0+ (0.01,0) [0|0] "kph" XXX + SG_ DrvSlipCtlMde_D_Ind : 33|2@0+ (1,0) [0|0] "" XXX + SG_ VehRol_An_Dsply : 55|7@0+ (1,-64.0) [0|0] "Degrees" XXX + SG_ VehPtch_An_Dsply : 47|7@0+ (1,-64.0) [0|0] "Degrees" XXX + SG_ VehVActlBrk_D_Qf : 19|2@0+ (1,0) [0|0] "" XXX + SG_ HILL_DESC_MC : 37|3@0+ (1,0) [0|0] "" XXX + +BO_ 1046 BrakeSysFeatures_2: 8 XXX + SG_ BpedMove_No_Cs : 23|8@0+ (1,0) [0|0] "" XXX + SG_ BpedMove_No_Cnt : 3|4@0+ (1,0) [0|0] "" XXX + SG_ BpedMove_D_Actl : 7|2@0+ (1,0) [0|0] "" XXX + SG_ AbsMduleAlive_No_Cnt : 39|4@0+ (1,0) [0|0] "" XXX + SG_ Abs_No_Cs : 31|8@0+ (1,0) [0|0] "" XXX + SG_ BrkAsst_B_Actl : 33|1@0+ (1,0) [0|0] "" XXX + SG_ StabCtlBrk_B_Avail : 4|1@0+ (1,0) [0|0] "" XXX + SG_ DrvHdcWarnInfo_D_Rq : 35|2@0+ (1,0) [0|0] "" XXX + SG_ DrvHdcMsg_D_Rq : 10|3@0+ (1,0) [0|0] "" XXX + SG_ DrvHdcLampInfo_D_Rq : 12|2@0+ (1,0) [0|0] "" XXX + SG_ Abs_B_Falt : 5|1@0+ (1,0) [0|0] "" XXX + SG_ VehLongComp_A_Actl : 49|10@0+ (0.035,-17.9) [0|0] "m/s^2" XXX + SG_ TRAILER_SWAY_CONFIG_STAT : 32|1@0+ (1,0) [0|0] "" XXX + SG_ VehLatComp_A_Actl : 47|10@0+ (0.035,-17.9) [0|0] "m/s^2" XXX + +BO_ 1047 TractionCtrlStatus_CG1: 8 XXX + SG_ EngEotcCtlMde_B_Ind : 3|1@0+ (1,0) [0|0] "" XXX + SG_ YawStabilityIndex : 48|9@0+ (1,-256.0) [0|0] "%" XXX + SG_ TCS_ENG_FAILD : 0|1@0+ (1,0) [0|0] "" XXX + SG_ TCS_ENG_ONLY_PRESENT : 1|1@0+ (1,0) [0|0] "" XXX + SG_ TCS_BRK_FAILD : 2|1@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTqRqMn_No_Cnt : 47|4@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTot_Tq_RqMn : 23|16@0+ (4.0,-131072.0) [0|0] "Nm" XXX + SG_ EngEotcCtlLamp_D_Rq : 9|2@0+ (1,0) [0|0] "" XXX + SG_ PrplWhlTqRqMn_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX + SG_ HdcMde_D_Actl : 12|3@0+ (1,0) [0|0] "" XXX + SG_ VehicleDir_D_Est : 5|2@0+ (1,0) [0|0] "" XXX + SG_ TracCtlPtActv_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + +BO_ 1056 PowertrainData_1_CG1: 8 XXX + SG_ FUEL_ALCOHOL_PERCNT : 63|8@0+ (0.3937008,0) [0|0] "%" XXX + SG_ TrnTotTq_Rt_Est : 39|16@0+ (0.001,0) [0|0] "" XXX + SG_ TrnTotLss_Tq_Est : 31|8@0+ (0.5,0) [0|0] "Nm" XXX + SG_ ECMMILRequest : 9|2@0+ (1,0) [0|0] "" XXX + SG_ AirCondFluidHi_P_Actl : 55|8@0+ (0.125,0) [0|0] "bar" XXX + SG_ OilPressureWarning : 18|1@0+ (1,0) [0|0] "" XXX + SG_ CluPdlPos_Pc_Meas : 7|10@0+ (0.1,0) [0|0] "%" XXX + SG_ VehVLimStat_D_Actl : 12|3@0+ (1,0) [0|0] "" XXX + SG_ VehVLimActv_B_Actl : 13|1@0+ (1,0) [0|0] "" XXX + SG_ CluPdlPosPcMeas_D_Qf : 17|2@0+ (1,0) [0|0] "" XXX + SG_ CoolantFanStepAct : 23|5@0+ (1,0) [0|0] "Steps" XXX + +BO_ 1058 PowertrainData_2_CG1: 8 XXX + SG_ EngIdlShutDown_D_Stat : 19|2@0+ (1,0) [0|0] "" XXX + SG_ EngAout2_Tq_Actl : 55|11@0+ (1,-500.0) [0|0] "Nm" XXX + SG_ EngMsgTxt_D_Rq : 21|2@0+ (1,0) [0|0] "" XXX + SG_ EngClnt_Te_ActlDiag : 39|8@0+ (1,-40.0) [0|0] "degC" XXX + SG_ ThrPos_Pc_CalcDiag : 7|8@0+ (0.392157,0) [0|0] "%" XXX + SG_ EngLoad_Pc_CalcDiag : 47|8@0+ (0.392157,0) [0|0] "%" XXX + SG_ EngAirIn_Te_Actl : 15|10@0+ (0.25,-128.0) [0|0] "degC" XXX + SG_ ApedPos_Pc_ActlDiag : 31|8@0+ (0.392157,0) [0|0] "%" XXX + +BO_ 1064 StrgWheel_PolicePkg: 8 XXX + SG_ PoliceAux4Lamp_B_Rq : 4|1@0+ (1,0) [0|0] "" XXX + SG_ PoliceAux3Lamp_B_Rq : 5|1@0+ (1,0) [0|0] "" XXX + SG_ PoliceAux2Lamp_B_Rq : 6|1@0+ (1,0) [0|0] "" XXX + SG_ PoliceAux1Lamp_B_Rq : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 1067 Battery_Mgmt_1: 8 XXX + SG_ AlternatorExcDutyCycle : 31|5@0+ (3.22581,0) [0|0] "%" XXX + SG_ EngineEffStatus : 39|2@0+ (1,0) [0|0] "" XXX + SG_ AvailableCurrentAtIdle : 23|8@0+ (1,0) [0|0] "Amps" XXX + SG_ AvailableCurrent : 15|8@0+ (1,0) [0|0] "Amps" XXX + SG_ ActualCurrent : 7|8@0+ (1,0) [0|0] "Amps" XXX + SG_ NoAlternatorResponse : 26|1@0+ (1,0) [0|0] "" XXX + SG_ AlternatorTempFault : 25|1@0+ (1,0) [0|0] "" XXX + SG_ AlternatorMechFault : 24|1@0+ (1,0) [0|0] "" XXX + SG_ AlternatorElFault : 37|1@0+ (1,0) [0|0] "" XXX + +BO_ 1068 Battery_Mgmt_2: 8 XXX + SG_ ChargeMode : 39|3@0+ (1,0) [0|0] "" XXX + SG_ ChargeVoltageReq : 7|6@0+ (0.1,10.6) [0|0] "Volts" XXX + SG_ ChargeVoltageReqMax : 23|6@0+ (0.1,10.6) [0|0] "Volts" XXX + SG_ FrontBatteryTemp : 47|8@0+ (1,-60.0) [0|0] "DegC" XXX + SG_ IBoost_Msg : 52|4@0+ (1,0) [0|0] "" XXX + SG_ IdleSpeedIncrease_El : 8|1@0+ (1,0) [0|0] "" XXX + SG_ MaxLashStep : 11|3@0+ (0.1,0) [0|0] "Volts" XXX + SG_ PowerSystemStatus : 15|4@0+ (1,0) [0|0] "" XXX + SG_ Shed_T_Eng_Off_B : 17|1@0+ (1,0) [0|0] "" XXX + SG_ Shed_Level_Req : 55|3@0+ (1,0) [0|0] "" XXX + SG_ Shed_Feature_Group_ID : 36|5@0+ (1,0) [0|0] "" XXX + SG_ Shed_Drain_Eng_Off_B : 16|1@0+ (1,0) [0|0] "" XXX + SG_ Batt_Lo_SoC_B : 25|1@0+ (1,0) [0|0] "" XXX + SG_ VoltageRampRateUpMax : 31|6@0+ (0.1,0) [0|0] "Volts/sec" XXX + SG_ Batt_Crit_SoC_B : 24|1@0+ (1,0) [0|0] "" XXX + +BO_ 1069 Battery_Mgmt_3: 8 XXX + SG_ BSFault : 23|1@0+ (1,0) [0|0] "" XXX + SG_ BSBattSOC : 30|7@0+ (1,0) [0|0] "%" XXX + SG_ BSBattQDeltaRideAh : 38|15@0+ (0.0078125,-100.0) [0|0] "Ah" XXX + SG_ BSBattQCapAh : 22|7@0+ (1,0) [0|0] "Ah" XXX + SG_ BSBattCurrent : 5|14@0+ (0.0625,-512.0) [0|0] "Amps" XXX + SG_ BattULoState_D_Qlty : 7|2@0+ (1,0) [0|0] "" XXX + +BO_ 1072 Cluster_Information: 8 XXX + SG_ ManRgen_D_Rq : 5|2@0+ (1,0) [0|0] "" XXX + SG_ Easy_Entry_Exit_Cmd : 49|1@0+ (1,0) [0|0] "" XXX + SG_ KeyTypeChngMykey_D_Rq : 53|2@0+ (1,0) [0|0] "" XXX + SG_ DrvSlipCtlMde_B_Rq : 19|1@0+ (1,0) [0|0] "" XXX + SG_ MetricActv_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + SG_ LdwDfaltOn_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX + SG_ Fda_B_Stat : 9|1@0+ (1,0) [0|0] "" XXX + SG_ ePRNDL_MODE : 8|1@0+ (1,0) [0|0] "" XXX + SG_ AccDeny_B_RqIpc : 7|1@0+ (1,0) [0|0] "" XXX + SG_ MetricActvTe_B_Actl : 23|1@0+ (1,0) [0|0] "" XXX + SG_ EngOilLife_B_RqReset : 18|1@0+ (1,0) [0|0] "" XXX + SG_ OdometerMasterValue : 31|24@0+ (1,0) [0|0] "km" XXX + SG_ New_Module_Attn_Event : 56|1@0+ (1,0) [0|0] "" XXX + SG_ TRAILER_SWAY_CONFIG_CMD : 60|1@0+ (1,0) [0|0] "" XXX + SG_ ParkDetect_Stat : 62|1@0+ (1,0) [0|0] "" XXX + SG_ Attn_Info_Audio : 59|3@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkMde_D_Rq : 61|1@0+ (1,0) [0|0] "" XXX + SG_ TRAILER_BRAKE_CONFIG : 48|1@0+ (1,0) [0|0] "" XXX + SG_ VehMykey_Vl_LimRq : 63|1@0+ (1,0) [0|0] "" XXX + SG_ VehMykey_V_LimRqMx : 51|1@0+ (1,0) [0|0] "" XXX + SG_ EmgcyCallAsstMykey_Rq : 50|1@0+ (1,0) [0|0] "" XXX + SG_ DrvSlipCtlMde_D_Rq : 17|2@0+ (1,0) [0|0] "" XXX + SG_ AccEnbl_B_RqDrv : 20|1@0+ (1,0) [0|0] "" XXX + SG_ AutoHighBeam_Cmd : 55|2@0+ (1,0) [0|0] "" XXX + +BO_ 1075 Cluster_Information_3_CG1: 8 XXX + SG_ CamraFrntStat_D_Rq : 58|1@0+ (1,0) [0|0] "" XXX + SG_ DieslFuelBio_B_ActlDrv : 56|1@0+ (1,0) [0|0] "" XXX + SG_ RearCameraDelayCmd : 59|1@0+ (1,0) [0|0] "" XXX + SG_ UreaWarnReset : 60|1@0+ (1,0) [0|0] "" XXX + SG_ DistanceBarSetting : 49|1@0+ (1,0) [0|0] "" XXX + SG_ CamraZoomMan_D_Rq : 63|3@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlStat_D_Rq : 48|1@0+ (1,0) [0|0] "" XXX + SG_ CamraOvrlDyn_D_Rq : 25|1@0+ (1,0) [0|0] "" XXX + SG_ CamAutoTowbarZoom : 24|1@0+ (1,0) [0|0] "" XXX + SG_ FuelSecndActv_B_Actl : 39|1@0+ (1,0) [0|0] "" XXX + SG_ HILL_DESC_SW : 38|1@0+ (1,0) [0|0] "" XXX + SG_ FuelLvlPssvSide_No_Raw : 19|10@0+ (1,0) [0|0] "" XXX + SG_ SPDJBCompassCMDDecalibrate : 50|1@0+ (1,0) [0|0] "" XXX + SG_ SPDJBCompassCMDChangeZone : 51|1@0+ (1,0) [0|0] "" XXX + SG_ SPDJBCompassCmdDesiredZone : 55|4@0+ (1,0) [0|0] "" XXX + SG_ FUEL_SENSOR_NUM : 35|1@0+ (1,0) [0|0] "" XXX + SG_ W2S_LAMP_OK : 37|1@0+ (1,0) [0|0] "" XXX + SG_ Beltminder_Warn_Stats_IPC : 32|1@0+ (1,0) [0|0] "" XXX + SG_ FuelLvlActvSide_No_Raw : 13|10@0+ (1,0) [0|0] "" XXX + SG_ FuelLvl_Pc_Dsply : 7|10@0+ (0.108696,-5.22) [0|0] "%" XXX + SG_ FUEL_LVL_PER_MEAN : 47|8@0+ (0.434783,-5.22) [0|0] "% Indication" XXX + SG_ Fuel_Level_State : 34|2@0+ (1,0) [0|0] "" XXX + SG_ H2O_IN_FUEL_LAMP_OK_OBD : 36|1@0+ (1,0) [0|0] "" XXX + +BO_ 1093 TrailerBrakeInfo: 8 XXX + SG_ TrlrLampCnnct_B_Actl : 22|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkActCnnct_B_Actl : 16|1@0+ (1,0) [0|0] "" XXX + SG_ StopLamp_B_RqTrlrBrk : 7|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkOut_No_Dsply : 3|4@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkGain_No_Actl : 21|5@0+ (0.5,0) [0|0] "" XXX + SG_ TrlrBrkDsply_B_Rq : 6|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkDcnnt_B_Actl : 5|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkCtl_B_Falt : 4|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkActCirct_B_Falt : 39|1@0+ (1,0) [0|0] "" XXX + SG_ TrlrBrkMde_D_Actl : 23|1@0+ (1,0) [0|0] "" XXX + +BO_ 1104 SHCM_Status: 8 XXX + SG_ CURRENT_DRAW : 15|8@0+ (0.5,0) [0|0] "Amps" XXX + SG_ SECONDARY_HEATER_STAT : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 1107 PassengerOCSSerialNum: 8 XXX + SG_ OCSSerialNoByte8 : 63|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte7 : 55|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte6 : 47|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte5 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte4 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte3 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte2 : 15|8@0+ (1,0) [0|0] "" XXX + SG_ OCSSerialNoByte1 : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 1108 RCMSerialNumber: 8 XXX + SG_ RCMSerialNoByte8 : 63|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte7 : 55|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte6 : 47|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte5 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte4 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte3 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte2 : 15|8@0+ (1,0) [0|0] "" XXX + SG_ RCMSerialNoByte1 : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 1109 eCall_Info: 8 XXX + SG_ eCallConfirmation : 7|3@0+ (1,0) [0|0] "" XXX + +BO_ 1125 GPS_Data_Nav_1_HS: 8 XXX + SG_ GpsHsphLattSth_D_Actl : 25|2@0+ (1,0) [0|0] "" XXX + SG_ GpsHsphLongEast_D_Actl : 9|2@0+ (1,0) [0|0] "" XXX + SG_ GPS_Longitude_Minutes : 46|6@0+ (1,0) [0|0] "Minutes" XXX + SG_ GPS_Longitude_Min_dec : 55|14@0+ (0.0001,0) [0|0] "Minutes" XXX + SG_ GPS_Longitude_Degrees : 39|9@0+ (1,-179.0) [0|0] "Degrees" XXX + SG_ GPS_Latitude_Minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX + SG_ GPS_Latitude_Min_dec : 23|14@0+ (0.0001,0) [0|0] "Minutes" XXX + SG_ GPS_Latitude_Degrees : 7|8@0+ (1,-89.0) [0|0] "Degrees" XXX + +BO_ 1126 GPS_Data_Nav_2_HS: 8 XXX + SG_ Gps_B_Falt : 2|1@0+ (1,0) [0|0] "" XXX + SG_ GpsUtcYr_No_Actl : 55|5@0+ (1,1.0) [0|0] "Year" XXX + SG_ GpsUtcMnth_No_Actl : 47|4@0+ (1,1.0) [0|0] "Month" XXX + SG_ GpsUtcDay_No_Actl : 37|5@0+ (1,1.0) [0|0] "Day" XXX + SG_ GPS_UTC_seconds : 23|6@0+ (1,0) [0|0] "seconds" XXX + SG_ GPS_UTC_minutes : 15|6@0+ (1,0) [0|0] "Minutes" XXX + SG_ GPS_UTC_hours : 7|5@0+ (1,0) [0|0] "Hours" XXX + SG_ GPS_Pdop : 31|5@0+ (0.2,0) [0|0] "" XXX + SG_ GPS_Compass_direction : 26|4@0+ (1,0) [0|0] "" XXX + SG_ GPS_Actual_vs_Infer_pos : 38|1@0+ (1,0) [0|0] "" XXX + +BO_ 1127 GPS_Data_Nav_3_HS: 8 XXX + SG_ GPS_Vdop : 63|5@0+ (0.2,0) [0|0] "" XXX + SG_ GPS_Speed : 47|8@0+ (1,0) [0|0] "MPH" XXX + SG_ GPS_Sat_num_in_view : 7|5@0+ (1,0) [0|0] "" XXX + SG_ GPS_MSL_altitude : 15|12@0+ (10.0,-20460.0) [0|0] "feet" XXX + SG_ GPS_Heading : 31|16@0+ (0.01,0) [0|0] "Degrees" XXX + SG_ GPS_Hdop : 55|5@0+ (0.2,0) [0|0] "" XXX + SG_ GPS_dimension : 2|3@0+ (1,0) [0|0] "" XXX + +BO_ 1152 All_Terrain_Data: 8 XXX + SG_ HdcSwitchPos_B_Actl : 0|1@0+ (1,0) [0|0] "" XXX + SG_ TerrStat_D_RqDsply : 7|4@0+ (1,0) [0|0] "" XXX + SG_ TerrMde_D_RqDrv : 3|3@0+ (1,0) [0|0] "" XXX + +BO_ 1186 Information_4x4_2_CG1: 8 XXX + SG_ RearDiffFalt_D_Stat : 23|2@0+ (1,0) [0|0] "" XXX + SG_ RearDiffLck_Tq_Actl : 7|12@0+ (1,0) [0|0] "Nm" XXX + SG_ RearDiffLckMsg_D_Rq : 20|3@0+ (1,0) [0|0] "" XXX + SG_ AwdSrvcRqd_B_Rq : 21|1@0+ (1,0) [0|0] "" XXX + SG_ RearDiffLckLamp_D_Rq : 11|2@0+ (1,0) [0|0] "" XXX diff --git a/opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc b/opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc new file mode 100644 index 0000000000..2e1647b3d8 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ford_fusion_2018_adas.dbc @@ -0,0 +1,421 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + +BO_ 1280 Object_00: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1281 Object_01: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1282 Object_02: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1283 Object_03: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1284 Object_04: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1285 Object_05: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1286 Object_06: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1287 Object_07: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1288 Object_08: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1289 Object_09: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1290 Object_10: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1291 Object_11: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1292 Object_12: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1293 Object_13: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1294 Object_14: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1295 Object_15: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1296 Object_16: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1297 Object_17: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1298 Object_18: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1299 Object_19: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1300 Object_20: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1301 Object_21: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1302 Object_22: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1303 Object_23: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1304 Object_24: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1305 Object_25: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1306 Object_26: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1307 Object_27: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1308 Object_28: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1309 Object_29: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1310 Object_30: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1311 Object_31: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1312 Object_32: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1313 Object_33: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1314 Object_34: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1315 Object_35: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1316 Object_36: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1317 Object_37: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1318 Object_38: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1319 Object_39: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1320 Object_40: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1321 Object_41: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1322 Object_42: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1323 Object_43: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1324 Object_44: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1325 Object_45: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1326 Object_46: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1327 Object_47: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1328 Object_48: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1329 Object_49: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1330 Object_50: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1331 Object_51: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1332 Object_52: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1333 Object_53: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1334 Object_54: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1335 Object_55: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1336 Object_56: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1337 Object_57: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1338 Object_58: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1339 Object_59: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1340 Object_60: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1341 Object_61: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1342 Object_62: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + +BO_ 1343 Object_63: 8 XXX + SG_ X_Rel : 18|11@0+ (0.1,0) [0|0] "m" XXX + SG_ V_Rel : 52|13@0- (0.01,0) [0|0] "m/s" XXX + SG_ A_Rel : 33|10@0- (0.05,0) [0|0] "m/s2" XXX + SG_ Angle : 12|10@0- (-0.1,0) [0|0] "deg" XXX + diff --git a/opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc b/opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc new file mode 100644 index 0000000000..c4b706d064 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ford_fusion_2018_pt.dbc @@ -0,0 +1,139 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + +BO_ 130 EPAS_INFO: 8 XXX + SG_ SteMdule_U_Meas : 39|8@0+ (0.05,6.0) [0|0] "Volts" XXX + SG_ SteMdule_I_Est : 21|12@0+ (0.05,-64.0) [0|0] "Amps" XXX + SG_ EPAS_FAILURE : 9|2@0+ (1,0) [0|0] "" XXX + SG_ SteeringColumnTorque : 7|8@0+ (0.0625,-8.0) [0|0] "Nm" XXX + SG_ SAPPAngleControlStat6 : 15|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat5 : 14|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat4 : 13|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat3 : 12|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat2 : 11|1@0+ (1,0) [0|0] "" XXX + SG_ SAPPAngleControlStat1 : 23|2@0+ (1,0) [0|0] "" XXX + +BO_ 118 Steering_Wheel_Data_CG1: 8 XXX + SG_ SteWhlRelInit_An_Sns : 6|15@0+ (0.1,-1600.0) [0|0] "deg" XXX + SG_ SteWhlRelCalib_An_Sns : 23|15@0+ (0.1,-1600.0) [0|0] "deg" XXX + SG_ SteWhlRelInit2_An_Sns : 55|16@0+ (0.1,-3200.0) [0|0] "deg" XXX + SG_ SteWhlAn_No_Cs : 39|8@0+ (1,0) [0|0] "" XXX + SG_ SteWhlAn_No_Cnt : 47|4@0+ (1,0) [0|0] "Counts" XXX + +BO_ 131 Steering_Buttons: 8 XXX + SG_ Right_Turn_Light : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Left_Turn_Light : 4|1@0+ (1,0) [0|0] "" XXX + SG_ Dist_Decr : 12|1@0+ (1,0) [0|0] "" XXX + SG_ Dist_Incr : 11|1@0+ (1,0) [0|0] "" XXX + SG_ Cancel : 8|1@0+ (1,0) [0|0] "" XXX + SG_ Resume : 29|1@0+ (1,0) [0|0] "" XXX + SG_ Set : 28|1@0+ (1,0) [0|0] "" XXX + SG_ Main : 38|1@0+ (1,0) [0|0] "" XXX + +BO_ 145 Yaw_Data: 8 XXX + SG_ VehYaw_W_Actl : 39|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + SG_ VehRol_W_Actl : 23|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + SG_ VehPtch_W_Actl : 7|16@0+ (0.0002,-6.5) [0|0] "rad/s" XXX + +BO_ 146 Accel_Data: 8 XXX + SG_ VehVertAActl_D_Qf : 38|2@0+ (1,0) [0|0] "" XXX + SG_ VehLongAActl_D_Qf : 22|2@0+ (1,0) [0|0] "" XXX + SG_ VehLatAActl_D_Qf : 6|2@0+ (1,0) [0|0] "" XXX + SG_ VehVert_A_Actl : 36|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX + SG_ VehLong_A_Actl : 20|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX + SG_ VehLat_A_Actl : 4|13@0+ (0.01,-40.0) [0|0] "m/s^2" XXX + +BO_ 357 Cruise_Status: 8 XXX + SG_ Brake_Drv_Appl : 5|1@0+ (1,0) [0|0] "" XXX + SG_ Cruise_State : 11|4@0+ (1,0) [0|0] "" XXX + SG_ Set_Speed : 23|8@0+ (1,0) [0|0] "" XXX + +BO_ 516 EngineData_14: 8 XXX + SG_ ApedPosScal_Pc_Actl : 1|10@0+ (0.1,0) [0|0] "%" XXX + +BO_ 535 WheelSpeed_CG1: 8 XXX + SG_ WhlRr_W_Meas : 55|14@0+ (0.04,0) [0|0] "rad/s" XXX + SG_ WhlRl_W_Meas : 39|14@0+ (0.04,0) [0|0] "rad/s" XXX + SG_ WhlFr_W_Meas : 23|14@0+ (0.04,0) [0|0] "rad/s" XXX + SG_ WhlFl_W_Meas : 7|14@0+ (0.04,0) [0|0] "rad/s" XXX + +BO_ 534 WheelData: 8 XXX + SG_ WhlRotatRr_No_Cnt : 23|8@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRr_D_Actl : 33|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirRl_D_Actl : 39|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFr_D_Actl : 37|2@0+ (1,0) [0|0] "" XXX + SG_ WhlDirFl_D_Actl : 35|2@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFr_No_Cnt : 7|8@0+ (1,0) [0|0] "" XXX + SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|0] "" XXX + SG_ WHEEL_ROLLING_TIMESTAMP : 47|8@0+ (1,0) [0|0] "" XXX + +BO_ 947 Doors: 8 XXX + SG_ Door_FL_Open : 61|1@0+ (1,0) [0|0] "" XXX + SG_ Door_FR_Open : 60|1@0+ (1,0) [0|0] "" XXX + SG_ Door_RL_Open : 48|1@0+ (1,0) [0|0] "" XXX + SG_ Door_RR_Open : 49|1@0+ (1,0) [0|0] "" XXX + +BO_ 963 BCM_to_HS_Body: 8 XXX + SG_ Brake_Lights : 8|1@0+ (1,0) [0|0] "" XXX + +BO_ 970 Lane_Keep_Assist_Control: 8 XXX + SG_ Lkas_Action : 7|4@0+ (1,0) [0|15] "" XXX + SG_ Lkas_Alert : 3|4@0+ (1,0) [0|15] "" XXX + SG_ Lane_Curvature : 15|12@0+ (5e-06,-0.01) [0|0] "1/m" XXX + SG_ Steer_Angle_Req : 19|12@0+ (0.04297,-88.00445) [0|0] "deg" XXX + +BO_ 972 Lane_Keep_Assist_Status: 8 XXX + SG_ LaHandsOff_B_Actl : 7|1@0+ (1,0) [0|0] "" XXX + SG_ LaActDeny_B_Actl : 6|1@0+ (1,0) [0|0] "" XXX + SG_ LaActAvail_D_Actl : 5|2@0+ (1,0) [0|0] "" XXX + +BO_ 984 Lane_Keep_Assist_Ui: 8 XXX + SG_ Set_Me_X80 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ Set_Me_X45 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ Lines_Hud : 55|4@0+ (1,0) [0|15] "" XXX + SG_ Hands_Warning_W_Chime : 50|1@0+ (1,0) [0|1] "" XXX + SG_ Hands_Warning : 49|1@0+ (1,0) [0|1] "" XXX + SG_ Set_Me_X30 : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ SG_ 970 Lkas_Action "only vals 4, 5, 8, 9 seem to work. 4 and 5 are a bit smoother" ; + +VAL_ 357 Cruise_State 4 "active" 3 "standby" 0 "off" ; +VAL_ 970 Lkas_Action 15 "off" 9 "abrupt" 8 "abrupt2" 5 "smooth" 4 "smooth2" ; +VAL_ 970 Lkas_Alert 15 "no_alert" 3 "high_intensity" 2 "mid_intensity" 1 "low_intensity" ; +VAL_ 972 LaActAvail_D_Actl 3 "available" 2 "tbd" 1 "not_available" 0 "fault" ; +VAL_ 984 Lines_Hud 15 "none" 11 "grey_yellow" 8 "green_red" 7 "yellow_grey" 6 "grey_grey" 4 "red_green" 3 "green_green" ; diff --git a/opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc b/opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc new file mode 100644 index 0000000000..828e4118ee --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ford_lincoln_base_pt.dbc @@ -0,0 +1,12717 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: VDM CMR_DSMC SOBDMC_HPCM_FD1 IPMA_ADAS PSCM ABS_ESC TCCM TCM_DSL PCM_HEV PCM ECM_Diesel GENERIC_GWMWakeup GWM _delete TSTR + +VAL_TABLE_ DcacRdy_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "Faulted" 4 "ProtectionTempearture" 3 "ProtectionOverload" 2 "ProtectionGfci" 1 "Active" 0 "Idle"; +VAL_TABLE_ HvacCmprLim_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "CompressorHeadPressure" 4 "AvailableTorque" 3 "PedalPosition" 2 "RPM" 1 "ECT" 0 "NoLimit"; +VAL_TABLE_ AdvStrt_D_Stat 15 "NotUsed_15" 14 "NotUsed_14" 13 "NotUsed_13" 12 "NotUsed_12" 11 "NotUsed_11" 10 "NotUsed_10" 9 "NotUsed_9" 8 "NotUsed_8" 7 "NotUsed_7" 6 "NotUsed_6" 5 "NotUsed_5" 4 "NotUsed_4" 3 "NotUsed_3" 2 "NotUsed_2" 1 "NotUsed_1" 0 "NoAction"; +VAL_TABLE_ VehOnSrc_D_Stat 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "OverTheAir" 3 "RemoteParkAssist" 2 "RemoteStart" 1 "Manual" 0 "Off"; +VAL_TABLE_ NoMessage_Msg1_63 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ TrlrRvrseEnbl_D2_Stat 7 "NotUsed" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; +VAL_TABLE_ Off_On_FlashChime 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "FlashChime" 1 "On" 0 "Off"; +VAL_TABLE_ DieslPrtcWarn_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_OverLoaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_OverLimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_OverLoaded" 0 "DPF_Normal_Operation"; +VAL_TABLE_ StrtrMtrCtlMsgTxt_D2_Rq 3 "NotUsed" 2 "ShiftToNeutralToStart" 1 "ShiftToParkToStart" 0 "NoRequest"; +VAL_TABLE_ PaakMyKey_D_Rq 3 "NotUsed" 2 "ConfirmNewPaakMyKey" 1 "RequestNewPaakMyKey" 0 "None"; +VAL_TABLE_ PaakMyKeySearch_D_Stat 7 "PhoneErased" 6 "LockButtonTimeOut" 5 "PressLockButton" 4 "ConfirmHmi" 3 "MyKeyPaakFound" 2 "StandardPaakFound" 1 "NoValidPaakFound" 0 "Null"; +VAL_TABLE_ TrlrIdType_D_Stat 3 "Gooseneck" 2 "FifthWheel" 1 "Conventional" 0 "Null"; +VAL_TABLE_ TrlrAidSetup_D2_Rq 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "CompleteSetup" 5 "ReturnToSetup" 4 "StickerNotCircled" 3 "ConfirmSetup" 2 "EndSetup" 1 "BeginSetup" 0 "Inactive"; +VAL_TABLE_ TrlrAidEnbl_D2_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Deactivate" 2 "ActivateTrg" 1 "ActivateTba" 0 "Inactive"; +VAL_TABLE_ BattChrgMde_D_Actl 3 "NotUsed" 2 "ConstantCurrent" 1 "ConstantVoltage" 0 "NotCharging"; +VAL_TABLE_ LcwaLeft_D_Stat 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Disabled" 2 "TemporaryUnavailable" 1 "SensorBlocked" 0 "Available"; +VAL_TABLE_ LcwaMsgTxt_D_Stat 3 "SodXFaulty" 2 "SodXBlocked" 1 "TrailerConnected" 0 "NoMessage"; +VAL_TABLE_ Level_0_3 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Level_0"; +VAL_TABLE_ SteWhlSwtchMde_D_Stat 3 "NotUsed_2" 2 "NotUsed_1" 1 "Dialog" 0 "Domain"; +VAL_TABLE_ TrlrRvrse_D_Stat 3 "Faulty" 2 "TrailerReverseGuidanceLite" 1 "On" 0 "Off"; +VAL_TABLE_ TrlrAid_D2_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "DirtyCamera" 9 "IncorrectLighting" 8 "TrackingLost" 7 "TrackingUnknownConfidence" 6 "TrackingHighConfidence" 5 "TrackingMediumConfidence" 4 "TrackingLowConfidence" 3 "TurnRequested" 2 "DriveStraighRequested" 1 "Initializing" 0 "NotTracking"; +VAL_TABLE_ AwdDrvMde_D2 15 "Faulty" 14 "NotUsed_7" 13 "NotUsed_6" 12 "NotUsed_5" 11 "NotUsed_4" 10 "NotUsed_3" 9 "NotUsed_2" 8 "NotUsed_1" 7 "NotAvailable" 6 "TowHaul" 5 "RockCrawl" 4 "Baja" 3 "MudAndSand" 2 "Weather" 1 "Sport" 0 "Normal"; +VAL_TABLE_ TrlrAidSetup_D2_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "SetupAcquisitionSuccess" 4 "TbaTadMonitor" 3 "SetupStartAcquisition" 2 "SetupPrepForAcquisition" 1 "TbaActive" 0 "Null"; +VAL_TABLE_ CamraRearOn_D2_Stat2 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Decommission" 2 "Activate" 1 "Deactivate" 0 "Null"; +VAL_TABLE_ AirCondClu_D_Stat 7 "NotUsed" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; +VAL_TABLE_ BattChrgTrgtSoC_D_Rq 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_TABLE_ OffNormalSoft 3 "NotUsed" 2 "Soft" 1 "Normal" 0 "Off"; +VAL_TABLE_ OffOnDisabledInhibited 3 "Inhibited" 2 "Disabled" 1 "On" 0 "Off"; +VAL_TABLE_ DgtlCommGtwyMde_D_Rq 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "AcPnC" 4 "AcEIM" 3 "DcPnC" 2 "DcEIM" 1 "AttemptDgtlComm" 0 "NoDgtlComm"; +VAL_TABLE_ BattDcCnnct_D_Cmd 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "WeldCheck" 3 "OkToDischarge" 2 "Closed" 1 "Precharge" 0 "Open"; +VAL_TABLE_ Null_NoFault_Fault 3 "NotUsed" 2 "Fault" 1 "NoFault" 0 "Null"; +VAL_TABLE_ ModemReset_D_Rq 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "BrandConnectReset2" 5 "BrandConnectReset1" 4 "CcsReset" 3 "OnlineTrafficReset" 2 "PaakReset" 1 "WifiHotspotReset" 0 "Null"; +VAL_TABLE_ PrkAsstSlotId_D_Stat 7 "Faulty" 6 "Slot6" 5 "Slot5" 4 "Slot4" 3 "Slot3" 2 "Slot2" 1 "Slot1" 0 "NoSlotFound"; +VAL_TABLE_ RstrnOnPsngr_D_RqMnu 15 "Faulty" 14 "NotUsed_11" 13 "NotUsed_10" 12 "ConfiguredOff" 11 "NotUsed_9" 10 "On" 9 "NotUsed_8" 8 "NotUsed_7" 7 "NotUsed_6" 6 "NotUsed_5" 5 "Off" 4 "NotUsed_4" 3 "NotUsed_3" 2 "NotUsed_2" 1 "NotUsed_1" 0 "NoAction"; +VAL_TABLE_ BalrInnrLeft_D_Stat 3 "Reporting" 2 "NotReporting" 1 "SystemStandby" 0 "Initialization"; +VAL_TABLE_ Zero_1_2_4 3 "Four" 2 "Two" 1 "One" 0 "Zero"; +VAL_TABLE_ NoReq_AutoUp_Stop 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_TABLE_ BalrSnsLeft_D_Falt 3 "Invalid" 2 "SystemFailure" 1 "Blocked" 0 "Clear"; +VAL_TABLE_ Null_Low_Med_High 3 "High" 2 "Medium" 1 "Low" 0 "Null"; +VAL_TABLE_ Null_NotPressed_Pressed 3 "NotUsed" 2 "Pressed" 1 "NotPressed" 0 "Null"; +VAL_TABLE_ Low_Med_High 3 "NotUsed" 2 "High" 1 "Medium" 0 "Low"; +VAL_TABLE_ Null_NotAvail_Avail 3 "NotUsed" 2 "Available" 1 "NotAvailable" 0 "Null"; +VAL_TABLE_ ChrgGoTMnte_D_Stat 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; +VAL_TABLE_ NoData_Faulty_1E_1F 31 "Faulty" 30 "NoDataExists"; +VAL_TABLE_ PwFlwBatt_D_Dsply 15 "NotUsed_8" 14 "NotUsed_7" 13 "NotUsed_6" 12 "NotUsed_5" 11 "NotUsed_4" 10 "NotUsed_3" 9 "NotUsed_2" 8 "NotUsed_1" 7 "FlwFromWallToBatt" 6 "FlwFromAllWhlsToBatt" 5 "FlwFromBattToAllWhls" 4 "FlwFromFrontWhlsToBatt" 3 "FlwFromBattToFrontWhls" 2 "FlwFromRearWhlsToBatt" 1 "FlwFromBattToRearWhls" 0 "NoFlow"; +VAL_TABLE_ PwFlwFuelDrv_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "FlwFromFuelToAllWhls" 2 "FlwFromFuelToFrontWhls" 1 "FlwFromFuelToRearWhls" 0 "NoFlow"; +VAL_TABLE_ TrlrAidMsgTxt_D2_Rq 63 "Message63" 62 "Message62" 61 "Message61" 60 "Message60" 55 "Message55" 50 "Message50" 45 "Message45" 40 "Message40" 35 "Message35" 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ TrlrAidEnbl_D2_Stat 7 "NotUsed_1" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; +VAL_TABLE_ RbaCta_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; +VAL_TABLE_ NoRequest_Mode1_2_3 3 "Mode_3" 2 "Mode_2" 1 "Mode_1" 0 "NoRequest"; +VAL_TABLE_ RvltnMatchAllw_D_Stat 3 "RevolutionMatchDisabled" 2 "RevolutionMatchEnabled" 1 "ChangeWithDriveMode" 0 "NoSelection"; +VAL_TABLE_ BattTracCnnct_D_Cmd 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "WeldCheck" 3 "OkToDischarge" 2 "Closed" 1 "Precharge" 0 "Open"; +VAL_TABLE_ NotDiagnose_FailPass 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_TABLE_ Null_Off_UnavailFaulty 3 "Faulty" 2 "Unavailable" 1 "Off" 0 "Null"; +VAL_TABLE_ OffOnDisabledNotUsed 3 "NotUsed" 2 "Disabled" 1 "On" 0 "Off"; +VAL_TABLE_ OffGraphicTextBoth 3 "Both" 2 "Text" 1 "Graphic" 0 "Off"; +VAL_TABLE_ NoneInactiveActive_NotUsed 3 "NotUsed" 2 "Active" 1 "Inactive" 0 "None"; +VAL_TABLE_ Off_On_NotUsed 3 "NotUsed_2" 2 "NotUsed_1" 1 "On" 0 "Off"; +VAL_TABLE_ RbaSys_D_Stat 3 "Faulty" 2 "Available" 1 "Suspended" 0 "Disabled"; +VAL_TABLE_ BrkAppl_D_RqPt 3 "BrakesSlowRelease" 2 "BrakesFastRelease" 1 "BrakesEngage" 0 "NotActive"; +VAL_TABLE_ Mtr2State_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_1" 4 "ReadinessState" 3 "DeactivationState" 2 "PowerGeneration" 1 "PowerConsumption" 0 "Null"; +VAL_TABLE_ HybVehMde_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Fuel" 2 "HybridElectric" 1 "AllElectric" 0 "Null"; +VAL_TABLE_ ChrgStat_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed" 4 "ChargingCompleted" 3 "NotCharging" 2 "ChargingInDrivingState" 1 "ChargingInParkingState" 0 "Null"; +VAL_TABLE_ Null_HiPower_Low_Med 3 "MediumPower" 2 "LowPower" 1 "HighPower" 0 "Null"; +VAL_TABLE_ Inactive_Enable_Disable_NotUsed 0 "Inactive" 2 "Disable" 1 "Enable"; +VAL_TABLE_ Inactive_OffOn_NotUsed 0 "Inactive" 1 "On" 2 "Off" 3 "NotUsed"; +VAL_TABLE_ Null_NotPressed_Faulty 3 "Faulty" 2 "Pressed" 1 "NotPressed" 0 "Null"; +VAL_TABLE_ TrailCtl_D_Stat 7 "Faulty" 6 "DescentOnly" 5 "EnabledDeny" 4 "StandbyOverThreshold" 3 "StandbyOverride" 2 "Active" 1 "EnabledDescent" 0 "Off"; +VAL_TABLE_ Faulty_3F 63 "Faulty"; +VAL_TABLE_ ChrgOvrdExitScrn_D_Rq 3 "NotUsed_1" 2 "Request_override" 1 "Do_not_request_override" 0 "Inactive"; +VAL_TABLE_ Quality_Data_Faulty 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Faulty"; +VAL_TABLE_ TrlrHitchYaw_D_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "FaultyYrsuConnection" 9 "FaultyYrsu" 8 "HiConfdLrndAngle" 7 "LowConfdLrndAngle" 6 "HiConfdAngleMem" 5 "LowConfdAngleMem" 4 "InitNoTadAngle" 3 "InitInputs" 2 "TadTrlrDataOutOfRange" 1 "TadNotWithinSpecification" 0 "NoConnectionWithYrsu"; +VAL_TABLE_ NoData_Faulty_FFFFFFFFFFFE_FF -1 "Faulty_FFFFFFFFFFFF" -2 "NoDataExists_FFFFFFFFFFFE"; +VAL_TABLE_ NoFault_Fault 1 "Fault" 0 "No_Fault"; +VAL_TABLE_ OtaTrg_D_Stat 3 "NotUsed_1" 2 "Accepted" 1 "NotAccepted" 0 "Null"; +VAL_TABLE_ EdmMsgTxt_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OverallGoodScore" 10 "WorkOnCompliance" 9 "GoodCompliance" 8 "WorkOnGearShifting" 7 "GoodGearShifting" 6 "WorkOnEfficientSpeed" 5 "GoodEfficientSpeed" 4 "WorkOnDeceleration" 3 "GoodDeceleration" 2 "WorkOnAcceleration" 1 "GoodAcceleration" 0 "NoMessage"; +VAL_TABLE_ EdmLamp_D_Dsply 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "NotUsed_1" 8 "CoastingEngineBrake" 7 "CoastingShiftToNeutral" 6 "FreewayJunction" 5 "Curve2" 4 "Curve1" 3 "SpeedLimit" 2 "Crossing" 1 "FreewayExit" 0 "NoRecommendation"; +VAL_TABLE_ AwdCnnct_D_Stat 3 "Connecting" 2 "Disconnecting" 1 "Connected" 0 "Disconnected"; +VAL_TABLE_ EngAirFiltMsgTxt_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "EngineAirFilterMonitorFalt" 4 "ResetComplete" 3 "Clogged" 2 "ReplaceNow" 1 "ReplaceSoon" 0 "NoMessage"; +VAL_TABLE_ ElPwPoint_D_Rq 3 "On" 2 "Off2" 1 "Off1" 0 "Null"; +VAL_TABLE_ EngExhMdeQuiet_D2_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; +VAL_TABLE_ RearDiffThrml_D_Stat 3 "NotUsed_1" 2 "AboveThermalLimit" 1 "ThermalLimit" 0 "Normal"; +VAL_TABLE_ NoInhibit_Inhibit 1 "Inhibit" 0 "NoInhibit"; +VAL_TABLE_ PersRecallSrc_D_Actl 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "MemorySwitch" 3 "RemoteStart" 2 "KeyFob" 1 "CenterStack" 0 "Null"; +VAL_TABLE_ BattTracChiller_D_Stat 3 "NotUsed" 2 "ChillerNotAvailable" 1 "ChillerBrieflyAvailable" 0 "ChillerAvailable"; +VAL_TABLE_ SelDrvMdeChassis2_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "RoughRoadMode" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; +VAL_TABLE_ TrnFaltOpenClu_B_Stat 1 "MayOpenClutch" 0 "Normal"; +VAL_TABLE_ UrbanAreaDetct_D_Stat 3 "NotUsed_1" 2 "City" 1 "Subdivision" 0 "None"; +VAL_TABLE_ Closed_Open 1 "Open" 0 "Closed"; +VAL_TABLE_ AdbBrdrDist 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_TABLE_ TCU_ESN_D_Rq 3 "NotUsed" 2 "TCU_ESN_Request" 1 "NoRequest" 0 "Inactive"; +VAL_TABLE_ FactoryReset_Rq 1 "ResetFactoryDefaults" 0 "Inactive"; +VAL_TABLE_ TCU_Init_Actvtn_St 3 "NotUsed" 2 "InitialActivateDeny" 1 "InitialActivateAccept" 0 "Invalid"; +VAL_TABLE_ TCU_Final_Actvtn_St 3 "NotUsed" 2 "FinalActivateDeny" 1 "FinalActivateAccept" 0 "Invalid"; +VAL_TABLE_ WaitToStartLamp_D_Falt 3 "NotUsed" 2 "Wait_to_start_lamp_failed" 1 "Diagnosis_not_ready" 0 "Wait_to_start_lamp_OK"; +VAL_TABLE_ BattTracCoolLvl_D_Rq 7 "Faulty" 6 "NotUsed" 5 "ChillerCoolingBattFirst" 4 "ChillerCoolingCabinFirst" 3 "ForcedCoolingRadiator" 2 "OpportunisticCoolingRad" 1 "CoolantFlowBypassLine" 0 "Off"; +VAL_TABLE_ BattClntVlvOvrrd_D_Rq 3 "NotUsed" 2 "OverrideTbcvToChiller" 1 "OverrideTbcvToRadiator" 0 "NoOverrideToTbcvCLogic"; +VAL_TABLE_ NonMagnetic_Magnetic 1 "Magnetic" 0 "NonMagnetic"; +VAL_TABLE_ RideHghtMde_D_Stat 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "AdjUpAero" 8 "AdjUpOffRoad" 7 "AdjUpNormal" 6 "AdjDownKneel" 5 "AdjDownAero" 4 "AdjDownNormal" 3 "OffRoad" 2 "Kneel" 1 "Aero" 0 "Normal"; +VAL_TABLE_ AutoTowAllw_D_StatMnu 3 "TowHaulCommandedOn" 2 "AutoTowHaulEnabled" 1 "AutoTowHaulDisabled" 0 "NoSelection"; +VAL_TABLE_ SrpEventRight_D_Stat 3 "Faulty" 2 "Bump" 1 "Pothole" 0 "NoEvent"; +VAL_TABLE_ RearDiff_D_Stat 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "NotUsed_1" 8 "TorqueReqNotHonored" 7 "MissingSignal" 6 "ModuleFault" 5 "HydroTempSensorFault" 4 "ClutchPressSensorFault" 3 "AccumPressSensorFault" 2 "ControlValveFault" 1 "MotorFault" 0 "Normal"; +VAL_TABLE_ NotAllowed_Allowed 1 "Allowed" 0 "NotAllowed"; +VAL_TABLE_ EngTrlrCnnct_D_Stat 3 "NotUsed_1" 2 "UnverifiedTrailer" 1 "HeavyTrailer" 0 "NoTrailer"; +VAL_TABLE_ Faulty_FFFF 65535 "Faulty"; +VAL_TABLE_ NoData_Faulty_3FFE_3FFF 16383 "Faulty" 16382 "NoDataExists"; +VAL_TABLE_ Faulty_3FFF 16383 "Faulty"; +VAL_TABLE_ NotExceeded_Exceeded 1 "Exceeded" 0 "NotExceeded"; +VAL_TABLE_ EmgcyCall_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "ManualEmergencyCall" 3 "AutoEmergencyCall" 2 "NoEvent" 1 "EmergencyCallNotSupported" 0 "Null"; +VAL_TABLE_ NotAsserted_Asserted 1 "Asserted" 0 "NotAsserted"; +VAL_TABLE_ AirSprngRate_D_Stat 3 "Faulty" 2 "Firm" 1 "Medium" 0 "Soft"; +VAL_TABLE_ AirSprngRate_D_Rq 3 "NoRequest" 2 "Firm" 1 "Medium" 0 "Soft"; +VAL_TABLE_ GearLvr_D_ActlDrv 15 "Fault" 14 "Unknown_Position" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Range6" 10 "Range5" 9 "Range4" 8 "Range3_M3_L3" 7 "Range2_M2_L2" 6 "Range1_M1_L1" 5 "Low" 4 "Sport_DriveSport_Mposition" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_TABLE_ ChrgrInPwMde_D_Actl 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "EvseFault" 7 "EvseNotCompatible" 6 "IcCharging" 5 "DcCharging" 4 "AcDigital" 3 "AcBasic" 2 "DigitalCommDetected" 1 "EvsePaused" 0 "EvseNotDetected"; +VAL_TABLE_ ChrgCordLck_D_Stat 7 "Faulty" 6 "LockFail" 5 "UnlockFail" 4 "LockInProgress" 3 "UnlockInProgress" 2 "Lock" 1 "Unlock" 0 "Retain"; +VAL_TABLE_ LkaActvStats_D2_Req 7 "NotUsed" 6 "LkaIncrIntervRight" 5 "LkaSupprRight" 4 "LkaStandIntervRight" 3 "LkaSupprLeft" 2 "LkaStandIntervLeft" 1 "LkaIncrIntervLeft" 0 "LkaNoInterv"; +VAL_TABLE_ OffOnNoDataFaulty 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; +VAL_TABLE_ NoMessage_Msg1_3 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ TrnRng_D_RqGsm 15 "Fault" 14 "UnknownPosition" 13 "Undefined_2" 12 "Undefined_1" 11 "_6" 10 "_5" 9 "_4" 8 "_3" 7 "_2" 6 "_1" 5 "Low" 4 "Sport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_TABLE_ PrkBrkActv_D_RqGsmGear 3 "NotUsed" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "Null"; +VAL_TABLE_ TrnPrkSys_D_Actl 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "FrequencyError" 8 "OutOfRangeHigh" 7 "OutOfRangeLow" 6 "Override" 5 "OutOfPark" 4 "TransitionCloseToOutOfPark" 3 "AtNoSpring" 2 "TransitionCloseToPark" 1 "Park" 0 "NotKnown"; +VAL_TABLE_ OKLowUnknownInvalid 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; +VAL_TABLE_ Dsp_RotAddrBtnEv_St 15 "NotUsed_1" 14 "Pos_7Steps" 13 "Pos_6Steps" 12 "Pos_5Steps" 11 "Pos_4Steps" 10 "Pos_3Steps" 9 "Pos_2Steps" 8 "Pos_1Step" 7 "NotPressed" 6 "Neg_1Steps" 5 "Neg_2Steps" 4 "Neg_3Steps" 3 "Neg_4Steps" 2 "Neg_5Steps" 1 "Neg_6Steps" 0 "Neg_7Steps"; +VAL_TABLE_ PrkAidDrvDir_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "BackwardNegative" 4 "ForwardNegative" 3 "BackwardPositive" 2 "ForwardPositive" 1 "NoMotion" 0 "DirectionNotKnown"; +VAL_TABLE_ EngExhMdeQuiet_D2_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; +VAL_TABLE_ GasPrtc_D_RqDsply 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "GpfOverLimit" 1 "GpfAtLimit" 0 "NormalOperation"; +VAL_TABLE_ TjaWarn_D_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "HardTakeOverLevel2" 2 "HardTakeOverLevel1" 1 "TrafficJamAssistCancel" 0 "NoWarning"; +VAL_TABLE_ Faulty_7FF 2047 "Faulty"; +VAL_TABLE_ Tja_D_Stat 7 "NotUsed_1" 6 "ActiveWarningRight" 5 "ActiveWarningLeft" 4 "ActiveInterventionRight" 3 "ActiveInterventionLeft" 2 "Active" 1 "Standby" 0 "Off"; +VAL_TABLE_ TjaMsgTxt_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "TurnOnAdaptCruiseControl" 2 "TrafficJamAssistSelected" 1 "TrafficJamAssistUnavailabl" 0 "NoMessage"; +VAL_TABLE_ PwSrcULowMde_D_Actl 3 "NotUsed_1" 2 "ReverseBoost" 1 "ForwardBuck" 0 "Standby"; +VAL_TABLE_ ApaTrgtDist_D_Stat 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 0 "Off"; +VAL_TABLE_ Memory_2_SwPsngr_Stat 1 "Pressed" 0 "Null"; +VAL_TABLE_ Pers3Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; +VAL_TABLE_ PwSrcULoMde_D_Rq 3 "NotUsed_1" 2 "ReverseBoost" 1 "ForwardBuck" 0 "Standby"; +VAL_TABLE_ AccMsgTxt_D2_Rq 15 "NotUsed_1" 14 "NCC_Enabled_Warning" 13 "IACC_TJA_Selected" 12 "ACC_TJA_Selected" 11 "IACC_Selected" 10 "Press_Brake_To_Hold" 9 "Only_Following_In_Low_Spd" 8 "TJA_Unavailable" 7 "Shift_Down" 6 "IACC_Unavailable" 5 "ACC_Selected" 4 "ACC_Overridden" 3 "Brake_Capacity_Warning" 2 "ACC_Cancelled" 1 "ACC_Unavailable" 0 "No_Text"; +VAL_TABLE_ WakeAlarm0_B_Typ 1 "CanAndEcuDriveCircuit" 0 "CanOnly"; +VAL_TABLE_ WakeAlarm0_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; +VAL_TABLE_ EmPrflNo_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; +VAL_TABLE_ EmPrflKeyAssoc_D_Rq 7 "NotUsed_3" 6 "DisassociatePhone" 5 "EnterPhoneAssociation" 4 "OverwriteKey" 3 "DisassociateKey" 2 "ExitKeyAssociation" 1 "EnterKeyAssociation" 0 "Null"; +VAL_TABLE_ Em_D_Stat 3 "NotSupported" 2 "ProfilesOff" 1 "ProfilesOn" 0 "Null"; +VAL_TABLE_ EmPrflButtnAssoc_D_Rq 3 "NotUsed" 2 "ExitButtonAssociation" 1 "EnterButtonAssociation" 0 "Null"; +VAL_TABLE_ EmPrflNo_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; +VAL_TABLE_ EmPrflKeyAssoc_D_Stat 7 "WrongDevice" 6 "KeyAssociateFailed" 5 "KeyAssociateSuccess" 4 "KeyAlreadyInUse" 3 "KeyDisassociated" 2 "KeyAssociationExited" 1 "KeyAssociationEntered" 0 "Null"; +VAL_TABLE_ EsaEnbl_D2_Rq 3 "NotConfigured" 2 "Enabled" 1 "Pending" 0 "Disabled"; +VAL_TABLE_ PersNo_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "NotDetermined" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_TABLE_ WiprFront_D_Stat2 15 "NO_DATA_EXISTS" 14 "STALLED" 13 "NotUsed" 12 "AUTO_ADJUST" 11 "COURTESYWIPE" 10 "AUTO_HIGH" 9 "AUTO_LOW" 8 "WASH" 7 "MIST_FLICK" 6 "MAN_HIGH" 5 "MAN_LOW" 4 "MAN_INT_ON" 3 "MAN_INT_OFF" 2 "OFF_MOVING" 1 "AUTO_OFF" 0 "OFF"; +VAL_TABLE_ TurnLghtSwtch_D_Stat2 3 "NotUsed" 2 "Right" 1 "Left" 0 "Off"; +VAL_TABLE_ CcButtnOnOffCnclPress3 1 "Pressed" 0 "Not pressed"; +VAL_TABLE_ SelDrvMdePos01_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_TABLE_ SelDrvMdePos01_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_TABLE_ ImmedFastMediumSlow 3 "Slow" 2 "Medium" 1 "Fast" 0 "Immediately"; +VAL_TABLE_ AdbHiBeamKeepOff_D_Rq 3 "KeepBothOff" 2 "KeepLeftOff" 1 "KeepRightOff" 0 "BothFreeRunning"; +VAL_TABLE_ AdbLampOnOff_D_Rq 3 "BothOn" 2 "LeftOnRightOff" 1 "RightOnLeftOff" 0 "BothOff"; +VAL_TABLE_ AdbMde1_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; +VAL_TABLE_ Closed_Open_Active_Denied 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; +VAL_TABLE_ OffLowMedMax 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; +VAL_TABLE_ IaccLamp_D_Rq 3 "NotUsed_2" 2 "NotUsed_1" 1 "DisplayIaccIcon" 0 "DoNotDisplayIaccIcon"; +VAL_TABLE_ Low_High_Confidence 1 "High_Confidence" 0 "Low_Confidence"; +VAL_TABLE_ Fault_Occupied_Empty_Un 3 "Unknown" 2 "Empty" 1 "Occupied" 0 "Fault"; +VAL_TABLE_ Off_On_Flash_Triggered 3 "Triggered" 2 "Flash" 1 "On" 0 "Off"; +VAL_TABLE_ IaccVLim_D_Rq 252 "NotUsed_2" 250 "LimitSpeed_250" 240 "LimitSpeed_240" 230 "LimitSpeed_230" 220 "LimitSpeed_220" 210 "LimitSpeed_210" 200 "LimitSpeed_200" 190 "LimitSpeed_190" 150 "LimitSpeed_150" 140 "LimitSpeed_140" 130 "LimitSpeed_130" 120 "LimitSpeed_120" 110 "LimitSpeed_110" 100 "LimitSpeed_100" 90 "LimitSpeed_90" 80 "LimitSpeed_80" 70 "LimitSpeed_70" 60 "LimitSpeed_60" 50 "LimitSpeed_50" 40 "LimitSpeed_40" 30 "LimitSpeed_30" 20 "LimtSpeed_20" 251 "NotUsed_1" 255 "Faulty" 254 "NoDataExists" 253 "NotUsed_3" 180 "LimitSpeed_180" 179 "LimitSpeed_179" 178 "LimitSpeed_178" 177 "LimitSpeed_177" 176 "LimitSpeed_176" 175 "LimitSpeed_175" 174 "LimitSpeed_174" 173 "LimitSpeed_173" 172 "LimitSpeed_172" 171 "LimitSpeed_171" 170 "LimitSpeed_170" 169 "LimitSpeed_169" 168 "LimitSpeed_168" 167 "LimitSpeed_167" 166 "LimitSpeed_166" 165 "LimitSpeed_165" 164 "LimitSpeed_164" 163 "LimitSpeed_163" 162 "LimitSpeed_162" 161 "LimitSpeed_161" 160 "LimitSpeed_160" 15 "LimitSpeed_15" 14 "LimitSpeed_14" 13 "LimitSpeed_13" 12 "LimitSpeed_12" 11 "LimitSpeed_11" 10 "LimitSpeed_10" 9 "LimitSpeed_9" 8 "LimitSpeed_8" 7 "LimitSpeed_7" 6 "LimitSpeed_6" 5 "LimitSpeed_5" 4 "LimitSpeed_4" 3 "LimitSpeed_3" 2 "LimitSpeed_2" 1 "LimitSpeed_1" 0 "LimitSpeed_0"; +VAL_TABLE_ IaccVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; +VAL_TABLE_ SelDrvMdeAwd_D_Rq 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; +VAL_TABLE_ SelDrvMdeAwd_D_Stat 0 "NotAvailable" 1 "Available" 2 "TemporarilyNotAvailable" 3 "Faulty"; +VAL_TABLE_ SelDrvMdeAwd2_D_Stat 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; +VAL_TABLE_ RearDiffLckMsg2_D_Rq 15 "NotUsed_3" 14 "NotUsed_2" 13 "NotUsed_1" 12 "ElsdReduced" 11 "LockingFeatureNotAvailable" 10 "EsldOff" 9 "ElsdRestored" 8 "ElsdOverheated" 7 "Locker_Disabled" 6 "Locker_Enabled" 5 "LockerSpeed5" 4 "LockerSpeed4" 3 "LockerSpeed3" 2 "LockerSpeed2" 1 "LockerSpeed1" 0 "NormalNoMessage "; +VAL_TABLE_ Counts_ZeroToSeven 4 "FourCounts" 3 "ThreeCounts" 2 "TwoCounts" 1 "OneCount" 0 "ZeroCounts" 7 "SevenOrMoreCounts" 6 "SixCounts" 5 "FiveCounts"; +VAL_TABLE_ HeadLghtHiPrmsn_D_Stat 3 "CancelAndSuppress" 2 "Cancel" 1 "Hold" 0 "AllowChange"; +VAL_TABLE_ SelDrvMdeSwtch 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; +VAL_TABLE_ NotAvail_Temp_Faulty 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; +VAL_TABLE_ AwdDrvMde 7 "Faulty" 6 "NotAvailable" 5 "RockCrawl" 4 "Baja" 3 "MudAndSand" 2 "Weather" 1 "Sport" 0 "Normal"; +VAL_TABLE_ SelDrvMdePt_D_Rq 31 "Faulty" 30 "NotUsed15" 29 "NotUsed14" 28 "NotUsed13" 27 "NotUsed12" 26 "NotUsed11" 25 "NotUsed10" 24 "NotUsed9" 23 "NotUsed8" 22 "NotUsed7" 21 "NotUsed6" 20 "NotUsed5" 19 "NotUsed4" 18 "EvLaterChargerMode" 17 "EvNowMode" 16 "DragMode" 15 "HighSpeedDesertMode_Baja" 14 "SportAdaptiveMode" 13 "NotAvailable_13" 12 "NotAvailable_12" 11 "NotAvailable_11" 10 "NotAvailable_10" 9 "RockCrawlMode" 8 "MudRutsMode" 7 "SandMode" 6 "EconomyMode" 5 "GrassGravelSnow" 4 "NotAvailable_04" 3 "TowHaulMode" 2 "NotAvailable_02" 1 "SportMode" 0 "NormalMode"; +VAL_TABLE_ SelDrvMde_D_Stat 3 "NotUsed" 2 "DriveModeChangeRequest" 1 "DriveModeChangeSelection" 0 "NoDriveModeChangeRequest"; +VAL_TABLE_ NoMessage_Msg1_15 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ SelDrvMdeChassis_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "NotUsed1" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; +VAL_TABLE_ NotAvailable_Available 1 "Available" 0 "NotAvailable"; +VAL_TABLE_ PwStep_D_Stat 3 "PositionNotKnown" 2 "StepsNotStowed" 1 "StepsStowed" 0 "Off"; +VAL_TABLE_ PwStep_D_DrvInhbt 3 "NotUsed" 2 "DriveInhibitMalfunction" 1 "DriveInhibited" 0 "DriveNotInhibited"; +VAL_TABLE_ NoMessage_Msg1_31 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ VehTrvlDir_D_Stat 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "Reverse" 2 "LikelyReverse" 1 "Forward" 0 "LikelyForward"; +VAL_TABLE_ TrnRng_D_RqFap 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Backwards" 3 "Forwards" 2 "NoMotion" 1 "Immobilize" 0 "NoRequest"; +VAL_TABLE_ SelDrvMdeSusp_D_Stat 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; +VAL_TABLE_ OffOnNoReqFaulty 3 "Faulty" 2 "NoRequest" 1 "On" 0 "Off"; +VAL_TABLE_ LatCtl_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "InterventionRight" 2 "InterventionLeft" 1 "ContinuousPathFollowing" 0 "NoLateralControl"; +VAL_TABLE_ LatCtlSte_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Denied" 3 "RampOut" 2 "ContLatControlInProgress" 1 "Available" 0 "Unavailable"; +VAL_TABLE_ SlowMedFastImmed 3 "Immediately" 2 "Fast" 1 "Medium" 0 "Slow"; +VAL_TABLE_ ComfortablePreciseNotUsed 3 "NotUsed2" 2 "NotUsed1" 1 "Precise" 0 "Comfortable"; +VAL_TABLE_ LatCtlLim_D_Stat 3 "LimitWithDriverActive" 2 "LimitReached" 1 "LimitClose" 0 "LimitNotReached"; +VAL_TABLE_ FuelLvlWarn_D_ActlEng 7 "DteLevel5Lowest" 6 "DteLevel4" 5 "DteLevel3" 4 "DteLevel2NonMyKey" 3 "DteLevel1MyKey" 2 "VeryLow" 1 "Low" 0 "OK"; +VAL_TABLE_ AwdMde_D_RqDrv 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; +VAL_TABLE_ ApaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; +VAL_TABLE_ AdptDrvMdePt_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Powertrain2Sport" 2 "Powertrain2Normal" 1 "Powertrain2Comfort" 0 "AdaptiveNotActive"; +VAL_TABLE_ AdptDrvMdeChassis_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Chassis2Sport" 2 "Chassis2Normal" 1 "Chassis2Comfort" 0 "AdaptiveNotActive"; +VAL_TABLE_ PwStepMsgTxt_D_Rq 1 "DriveInhibited" 0 "NoMessage" 3 "NotUsed" 2 "Malfunction"; +VAL_TABLE_ OffLowMedHigh 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_TABLE_ NotDeterminedLowMedHigh 3 "High" 2 "Medium" 1 "Low" 0 "NotDetermined"; +VAL_TABLE_ CmbbObjClass_D_Stat 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "Unclassified_Vehicle" 5 "Bicycle" 4 "Pedestrian" 3 "Truck" 2 "Motorcycle" 1 "Vehicle" 0 "Undetermined"; +VAL_TABLE_ HeadLghtHiCtrl_D_RqAhb 7 "NotUsed2" 6 "NotUsed1" 5 "Auto_HiBeam" 4 "Auto_LoBeam" 3 "Flash" 2 "Man_HiBeam" 1 "Man_LoBeam" 0 "Null"; +VAL_TABLE_ AhbHiBeam_D_Rq 3 "NotUsed" 2 "HighBeamRecommended" 1 "LowBeamRecommended" 0 "DeactivatedUnavailable"; +VAL_TABLE_ AhbStatGfhbFdbk_D_Actl 3 "GfhbHighBeamFullyOn" 2 "GfhbHighBeamPartlyOn" 1 "GfhbHighBeamOff" 0 "GfhbUnavailable"; +VAL_TABLE_ AhbcRampingV_D_Rq 3 "Slow" 2 "Medium" 1 "Fast" 0 "Immediately"; +VAL_TABLE_ ApaGearShif_D_RqDrv 7 "NotUSed2" 6 "NotUsed1" 5 "ShiftToP" 4 "ShiftToN" 3 "ShiftToD" 2 "ShiftToR" 1 "NoRequest" 0 "Null"; +VAL_TABLE_ ApaLongCtl_D_RqDrv 7 "NotUsed3" 6 "NotUsed2" 5 "ReleaseBrake" 4 "DriveBackward" 3 "DriveForward" 2 "Stop" 1 "NoRequest" 0 "Null"; +VAL_TABLE_ ApaActvSide2_D_Stat 3 "NoSide" 2 "Right" 1 "Left" 0 "Null"; +VAL_TABLE_ ApaScan_D_Stat 3 "ParkSlotReady" 2 "ParkSlotFound" 1 "NoParkSlot" 0 "Null"; +VAL_TABLE_ ApaSelSapp_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; +VAL_TABLE_ ApaSys_D_Stat 7 "Faulty" 6 "Finished" 5 "NotAccessible" 4 "ApaCancelled" 3 "Overspeed" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ ApaSteScanMde_D_Stat 3 "Steering" 2 "Scanning" 1 "NotScanning" 0 "Null"; +VAL_TABLE_ ApaAcsy_D_RqDrv 7 "CloseDoor" 6 "SelectSideRight" 5 "SelectSideLeft" 4 "CheckForObject" 3 "PressApaButton" 2 "SelectSide" 1 "NoRequest" 0 "Null"; +VAL_TABLE_ ApaSteWhl_D_RqDrv 3 "TakeControl" 2 "RemoveHands" 1 "NoRequest" 0 "Null"; +VAL_TABLE_ WiprFrontSwtch_D_Stat 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "PositionNotDetermined" 8 "High" 7 "Low" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Off"; +VAL_TABLE_ Off_On_Unknown_Invalid 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; +VAL_TABLE_ Unknown_7FFE_Invalid_7FFF 32767 "Invalid" 32766 "Unknown"; +VAL_TABLE_ OffOnNotUsedFaulty 3 "Faulty" 2 "NotUsed" 1 "On" 0 "Off"; +VAL_TABLE_ BrkBstrVac_D_Stat 3 "NotUsed" 2 "BoosterVacEstimator" 1 "BoosterVacSensor" 0 "NoBoosterVacuumMonitor"; +VAL_TABLE_ AwdMde_D_RqArb 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; +VAL_TABLE_ CtaAlrt2_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "AlertZone4" 3 "AlertZone3" 2 "AlertZone2" 1 "AlertZone1" 0 "Off"; +VAL_TABLE_ BttRightLeft_D_Stat 7 "NotUsed" 6 "Disabled" 5 "Off" 4 "OffTemp" 3 "NotConnected" 2 "Pending" 1 "Connected" 0 "NotDetermined"; +VAL_TABLE_ Null_NoRequest_Request 3 "NotUsed" 2 "Request" 1 "NoRequest" 0 "Null"; +VAL_TABLE_ PoliceIdlMde_D_Stat 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "PepsActive" 8 "Decommissioned" 7 "ActiveFault" 6 "ArmFault" 5 "PrearmedFault" 4 "OffFault" 3 "Active" 2 "Arm" 1 "Prearmed" 0 "Off"; +VAL_TABLE_ TripComputerMetricImperial 0 "TripComputer_metric" 1 "TripComputer_imperial"; +VAL_TABLE_ GrdAsstAllw_D_DsplyPt 3 "NotUsed" 2 "On" 1 "Off" 0 "NoModeSelected"; +VAL_TABLE_ PrkBrkMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "No_Message"; +VAL_TABLE_ AutoHoldMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ AutoHoldMde_D_Ind 3 "Indication_3" 2 "Indication_2" 1 "Indication_1" 0 "Off"; +VAL_TABLE_ AutoRgenTxt_B_RqDsply 1 "AutExhFilterCleanOFF" 0 "AutExhFilterCleanON"; +VAL_TABLE_ TrnMsgTxt2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "TransTooHot_LoudChime" 3 "PressBrake_LoudChime" 2 "PressBrake_SoftChime" 1 "PressBrake_NoChime" 0 "NoText_NoChime"; +VAL_TABLE_ TrnGearMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; +VAL_TABLE_ ChargeProfIDPref_Rq 3 "NotUsed" 2 "Value" 1 "ChargeNow" 0 "Inactive"; +VAL_TABLE_ EngExhMdeQuiet_D_Stat 3 "Faulty" 2 "QuietExhaust" 1 "LoudExhaust" 0 "Null"; +VAL_TABLE_ ConsAvgTrip_No_Dsply 4095 "Faulty" 4094 "No_Data_Exists"; +VAL_TABLE_ ElTrip_L_Dsply 65535 "Fault" 65534 "No_Data_Exists"; +VAL_TABLE_ ElLongTerm_L_Dsply 16777215 "Fault" 16777214 "No_Data_Exists"; +VAL_TABLE_ GearSelLck_D_Rq 3 "PreventionBlocker" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_TABLE_ BrkPadMsgTxt_D_Rq 3 "Faulty" 2 "PadsOk" 1 "ReplacePads" 0 "Null"; +VAL_TABLE_ BrkAutoHold_D_Stat 7 "Faulty" 6 "NotUsed" 5 "Releasing" 4 "HeldSecondary" 3 "HeldSecure" 2 "Held" 1 "Inactive" 0 "Off"; +VAL_TABLE_ SuspDrvMde_D_Rq 7 "Faulty" 6 "NotUsed2" 5 "NotUsed1" 4 "Drag" 3 "Track" 2 "Snow_Wet" 1 "Sport" 0 "Normal"; +VAL_TABLE_ NotPressed_PressedNotUsed 3 "NotUsed2" 2 "NotUsed1" 1 "Pressed" 0 "Not_Pressed"; +VAL_TABLE_ WhlRearDual_D_Stat 3 "NotUsed" 2 "Dual" 1 "Single" 0 "NoDataExists"; +VAL_TABLE_ TracKeyMde_D_Stat 3 "NotUsed" 2 "NotActive" 1 "Active" 0 "ModeNotDetermined"; +VAL_TABLE_ HudMde_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Manual" 3 "Drag" 2 "RoadCourse" 1 "Tach" 0 "Off"; +VAL_TABLE_ TrnManShifGear_D_IndDrv 7 "Indicate_Reverse_Gear" 6 "Indicate_Gear6" 5 "Indicate_Gear5" 4 "Indicate_Gear4" 3 "Indicate_Gear3" 2 "Indicate_Gear2" 1 "Indicate_Gear1" 0 "No_Indication"; +VAL_TABLE_ TrnStrtStop_D_Stat 3 "NotUsed_2" 2 "NotUsed_1" 1 "LowTransmissionTemperature" 0 "NoDriverIndicationRequired"; +VAL_TABLE_ LsmcBrkDecel_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Denied" 3 "FaultDegraded" 2 "FaultExt" 1 "On" 0 "Off"; +VAL_TABLE_ StePinOffst_D_Stat 3 "FineOffset" 2 "CoarseOffset" 1 "StoredOffset" 0 "OffsetNotCalculated"; +VAL_TABLE_ NoMessage_Override_Faulty 3 "NotUsed" 2 "Faulty" 1 "Override" 0 "NoMessage"; +VAL_TABLE_ TrnIpcDsplyRng2_D_Actl 15 "No_Range_Selected" 14 "Range_14" 13 "Range_13" 12 "Range_12" 11 "Range_11" 10 "Range_10" 9 "Range_9" 8 "Range_8" 7 "Range_7" 6 "Range_6" 5 "Range_5" 4 "Range_4" 3 "Range_3" 2 "Range_2" 1 "Range_1" 0 "NotUsed"; +VAL_TABLE_ OffOn_RampUpDown 3 "Ramp_Down" 2 "Ramp_Up" 1 "On" 0 "Off"; +VAL_TABLE_ DieslMsgTxt_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "ReducedEnginePower" 0 "NoMessage"; +VAL_TABLE_ NoMessage_Msg1_7 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ TrnAltShifMde_D_Rdy 3 "Faulty" 2 "NotUsed" 1 "UnavailDueToDynCond" 0 "ModeChangeAvailable"; +VAL_TABLE_ LnchCtl 3 "NotUsed2" 2 "NotUsed1" 1 "LC_On" 0 "LC_Off"; +VAL_TABLE_ BrkLineLck_D_Rq 3 "Off" 2 "Engage" 1 "Initiate" 0 "NoRequest"; +VAL_TABLE_ BrkLineLck_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "NotAvailable" 3 "Off" 2 "Engaged" 1 "Initiated" 0 "Available"; +VAL_TABLE_ LnchCtlSys_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "On_LC_Unavailable_TC_On" 3 "On_LC_Unavailable" 2 "On_LC_Available" 1 "On_LC_Active" 0 "LC_OFF"; +VAL_TABLE_ ActvFrontSteLck_D_Stat 3 "Test_passed" 2 "Test_failed" 1 "Test_cannot_run" 0 "Test_incomplete"; +VAL_TABLE_ Rght_Lefthand_Traffic 1 "Left_Hand_Traffic" 0 "Right_Hand_Traffic"; +VAL_TABLE_ NotPressed_Pressed_Faulty 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; +VAL_TABLE_ TrlrTrgtAcquire_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "ActivateRVCforTBA" 4 "CancelAcquisition" 3 "RetryAcquisition" 2 "AcquisitionSuccessful" 1 "StartAcquisition" 0 "Inactive"; +VAL_TABLE_ TrlrTrgtAcquire_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "RVCforTBA_Activated" 3 "Processing" 2 "TargetNotAcquired" 1 "TargetAcquired" 0 "Null"; +VAL_TABLE_ TrlrAidSetup_D_Rq 3 "ConfirmSetup" 2 "EndSetup" 1 "BeginSetup" 0 "Inactive"; +VAL_TABLE_ TrlBrkInitOut 3 "Heavy" 2 "Medium" 1 "Light" 0 "Null"; +VAL_TABLE_ IsaOffst_D_Stat 15 "Faulty" 14 "Null" 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero"; +VAL_TABLE_ IsaVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; +VAL_TABLE_ ApaChime_D_Rq 7 "NotUsed2" 6 "NotUsed1" 5 "Warning_Chime" 4 "Finish_Chime" 3 "Stop_Now_Chime" 2 "Spot_Ready_Chime" 1 "Spot_Found_Chime" 0 "No_Chime"; +VAL_TABLE_ SlMde_D_RqDsply 3 "NotUsed" 2 "ManualSpeed_LimiterSymbol" 1 "AutoSpeed_LimiterSymbol" 0 "NoSpeed_LimiterSymbol"; +VAL_TABLE_ SlMde_D_Rq 3 "IsaNotConfigured" 2 "Manual_Mode" 1 "Auto_Mode" 0 "Null"; +VAL_TABLE_ NotSupported_Supported 1 "Supported" 0 "NotSupported"; +VAL_TABLE_ OffOn_NotUsed_NoData 3 "No_Data_Present" 2 "NotUsed" 1 "On" 0 "Off"; +VAL_TABLE_ Faulty_FF 255 "Faulty"; +VAL_TABLE_ BrkDrvMde_D_Rq 7 "Faulty" 6 "RockCrawl" 5 "Baja" 4 "DragOrMudAndSand" 3 "Track" 2 "Snow_Wet" 1 "Sport" 0 "Normal"; +VAL_TABLE_ TrnIpcDsplyRng_D_Stat 3 "NotUsed" 2 "Flash" 1 "On" 0 "Blank_No_Display"; +VAL_TABLE_ NoYesNoDataFaulty 3 "Faulty" 2 "NoDataExists" 1 "Yes" 0 "No"; +VAL_TABLE_ SidePrkSnsR4_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_TABLE_ TsrVlPrmntMsgTxt_D_Rq 3 "NotUsed" 2 "ShowPermanentlyWithSupp" 1 "ShowPermanentlyWithoutSupp" 0 "DoNotShowSignPermanent"; +VAL_TABLE_ TsrVl1RstrcMsgTxt2_D_Rq 7 "NotUsed" 6 "Time" 5 "Trailer" 4 "Snow" 3 "RainWet" 2 "NoRecognizableRestrictn" 1 "NoSpeedLimitRestrictn" 0 "Null"; +VAL_TABLE_ PtDrvMde_D_Rq 15 "Faulty" 14 "NotUsed11" 13 "NotUsed10" 12 "NotUsed9" 11 "NotUsed8" 10 "NotUsed7" 9 "NotUsed6" 8 "NotUsed5" 7 "Drag" 6 "Rock" 5 "Baja" 4 "Sand" 3 "TowHaulGradeAssist" 2 "SnowWet" 1 "Sport" 0 "Normal"; +VAL_TABLE_ SteEffort_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "SpecialMode_2" 3 "SpecialMode_1" 2 "Comfort" 1 "Sport" 0 "Normal"; +VAL_TABLE_ TsrOvtkMsgTxt2_D_Rq 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "LimForTrucksCancelled" 9 "LimForTrucksWoQlfdRstrc" 8 "LimForTrucksWithoutRstrc" 7 "LimAllCancelled" 6 "LimAllWithRstrcTime" 5 "LimAllWithRstrcTrailer" 4 "LimAllWithRstrcSnow" 3 "LimAllWithRstrcRain" 2 "LimAllWithoutQlfdRstrc" 1 "LimAllWithoutRestriction" 0 "OvertakingAllowed"; +VAL_TABLE_ TrlrAnOffstDir 3 "NotUSed" 2 "Right" 1 "Left_or_Center" 0 "Null"; +VAL_TABLE_ Null_Off_On 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ TrlrBrkMde_D_Rq 1 "ElectricOverHydraulic" 0 "Electric"; +VAL_TABLE_ TrlrAidSetup_D_Stat 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "EnterParameters" 2 "EndSetup" 1 "BeginSetup" 0 "Null"; +VAL_TABLE_ TrlrAidMsgTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ Invalid_7F 127 "Invalid"; +VAL_TABLE_ Faulty_1FFF 8191 "Faulty"; +VAL_TABLE_ VehStab_D_Stat 15 "Faulty" 14 "No_Data_Exists" 13 "NotUsed6" 12 "NotUsed5" 11 "NotUsed4" 10 "NotUsed3" 9 "NotUsed2" 8 "NotUsed1" 7 "High_SSRA_no_OS" 6 "Straight" 5 "Post_Oversteer" 4 "Post_Transition" 3 "Countersteer" 2 "Understeer" 1 "Oversteer" 0 "Linear"; +VAL_TABLE_ NoData_Faulty_1FF_1FE 511 "Faulty" 510 "NoDataExists"; +VAL_TABLE_ TrlrAidEnbl_D_Rq 3 "NotAvailable" 2 "DeactivateTba" 1 "ActivateTba" 0 "Inactive"; +VAL_TABLE_ FohEng_D_Rq 3 "AutoEnable_ParkEnable" 2 "AutoDisable_ParkEnable" 1 "AutoEnable_ParkDisable" 0 "Disable_Stop"; +VAL_TABLE_ Null_Hi_NotUsed_Low 3 "Low" 2 "Not_Used" 1 "High" 0 "Null"; +VAL_TABLE_ Current_Color 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Null" 7 "Color7" 6 "Color6" 5 "Color5" 4 "Color4" 3 "Color3" 2 "Color2" 1 "Color1" 0 "Off"; +VAL_TABLE_ Blended_Color 15 "NotUsed10" 14 "NotUsed9" 13 "NotUsed8" 12 "NotUsed7" 11 "NotUsed6" 10 "NotUsed5" 9 "NotUsed4" 8 "NotUsed3" 7 "NotUsed2" 6 "NotUsed1" 5 "_5" 4 "_4" 3 "_3" 2 "_2" 1 "_1" 0 "Null"; +VAL_TABLE_ OffOn_Null_NotUsed 3 "NotUsed" 2 "Null" 1 "On" 0 "Off"; +VAL_TABLE_ DieslPrtc2_D_RqDsply 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_Overloaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_Overlimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_Overloaded" 0 "DPF_Normal_Operation"; +VAL_TABLE_ Null_Pers1_4_Vehicle 7 "Unused_2" 6 "Unused_1" 5 "Vehicle" 4 "PERS_4" 3 "PERS_3" 2 "PERS_2" 1 "PERS_1" 0 "Null"; +VAL_TABLE_ PrkLckCtlEnbl_D_RqIpc 3 "Rq_Towing" 2 "Rq_Enable" 1 "Rq_Disable" 0 "Null"; +VAL_TABLE_ PrkLckCtlUnlck_D_Stat 3 "Trans_And_Steer_Unlckd" 2 "Steering_Unlckd" 1 "Transmission_Unlckd" 0 "Null"; +VAL_TABLE_ VehKeyActv_D_Stat 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Key8Active" 7 "Key7Active" 6 "Key6Active" 5 "Key5Active" 4 "Key4Active" 3 "Key3Active" 2 "Key2Active" 1 "Key1Active" 0 "NoKeyActive"; +VAL_TABLE_ VehLckInd_D_Rq 3 "NotUsed" 2 "On_Day" 1 "On_Night" 0 "Off"; +VAL_TABLE_ PrkBrkDynmc_D_Allw 3 "NotUsed" 2 "EPB_ECD_NotPossible" 1 "EPB_ECD_Possible" 0 "Used_at_Start_Up"; +VAL_TABLE_ TowBarMsgTxt_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "TowBar_Ext_No_Trlr" 3 "Error_Dealer_Fix" 2 "Start_Engine_Swivel" 1 "Check_Tow_Bar" 0 "Null"; +VAL_TABLE_ PrkBrk_D_Stat 7 "Gen_Faults_or_Maint_Mode" 6 "ECD_by_Brake_ECU_Active" 5 "EPB_Limphome_Active" 4 "Rear_Caliper_Open" 3 "RWU_by_EPB_Active" 2 "Rear_Caliper_Transition" 1 "Rear_Caliper_Closed" 0 "Not_Supported"; +VAL_TABLE_ NoData_Faulty_3E_3F 63 "Faulty" 62 "NoDataExists"; +VAL_TABLE_ Unknown_Invalid_1FE_1FF 511 "Invalid" 510 "Unknown"; +VAL_TABLE_ Invalid_0x0 0 "Invalid"; +VAL_TABLE_ Unknown_Invalid_3E_3F 63 "Invalid" 62 "Unknown"; +VAL_TABLE_ Faulty_1FF 511 "Faulty"; +VAL_TABLE_ NoData_Faulty_1FFF_1FFE 8191 "Faulty" 8190 "NoDataExists"; +VAL_TABLE_ Null_Off_On_Faulty 3 "Faulty" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ EngOilSrvcMsgTxt_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "ResetComplete" 3 "ResetInProgress" 2 "ChangeOilNow" 1 "ChangeOilSoon" 0 "NoText"; +VAL_TABLE_ AirSusp_D_RqDrv 3 "NotUsed" 2 "On" 1 "Off" 0 "NoModeSelected"; +VAL_TABLE_ AwdSys_D_Stat 3 "Faulty" 2 "NotUsed" 1 "_4x4_L_H_Active" 0 "_4x4_L_H_Inactive"; +VAL_TABLE_ EmotiveType_D_Dsply 3 "EmotiveDisplay_3" 2 "EmotiveDisplay_2" 1 "EmotiveDisplay_1" 0 "Null"; +VAL_TABLE_ AutoRgen_D_Rq 3 "NotUsed" 2 "AutExhFilterCleanOFF" 1 "AutExhFilterCleanON" 0 "No_Mode_Selected"; +VAL_TABLE_ TrnSrvcRqd_B_Rq 1 "On" 0 "Off"; +VAL_TABLE_ PlgOvrrdStrt_D_Cmd 3 "NotUsed" 2 "Override_Plug_Status" 1 "Dont_Override_Plug_Status" 0 "Null_State"; +VAL_TABLE_ immoSecureIdleMode 3 "NotUsed2" 2 "NotUsed1" 1 "Active" 0 "Inactive"; +VAL_TABLE_ SteWhlOffstRq_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Allow_External_Angle_Req" 0 "Deny_External_Angle_Req"; +VAL_TABLE_ SteMdule_D_Stat 7 "NotUsed" 6 "EPAS_Failure3" 5 "EPAS_Failure2" 4 "System_Failure" 3 "EPAS_Shutdown" 2 "Normal_Op_Full_Assist" 1 "Normal_Op_Limited_Assist" 0 "EPAS_Initialization"; +VAL_TABLE_ Faulty_FFF 4095 "Faulty"; +VAL_TABLE_ Faulty_3FF 1023 "Faulty"; +VAL_TABLE_ NoData_Faulty_FE_FF 255 "Faulty" 254 "NoDataExists"; +VAL_TABLE_ ChkPlgtoStrt_D_Dsply 3 "NotUsed" 2 "Is_VehicleUnplugged_Prompt" 1 "Check_Plug_to_Start" 0 "No_Message_Display"; +VAL_TABLE_ PwrFlowTxt_D_Dsply 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "Disply_Rgen_Chrg_Txt" 10 "Disp_Fast_Charge_Txt" 9 "Disp_Fast_Charge_Cmplt_Txt" 8 "Disp_Charge_Cmplt_Txt" 7 "Disp_Remote_Start_Txt" 6 "Disp_Eng_Drv_Txt" 5 "Disp_Elec_Drv_Txt" 4 "Disp_Idle_with_Chrg_Txt" 3 "Disp_Idle_Txt" 2 "Disp_Charg_HV_Batt_Txt" 1 "Disp_Hyb_Drive_Txt" 0 "No_Text"; +VAL_TABLE_ EngOnMsg_D_Dsply 14 "_0xE_to_1F_NotUsed" 12 "Battery_Temperature" 11 "Hill_Decent_Control" 10 "Fuel_Maintenance" 9 "Oil_Maintenance" 8 "Normal_Operation" 7 "Low_Gear" 6 "Batt_Charging" 5 "Engine_Cold" 4 "Neutral_Gear" 3 "Heater_Setting" 2 "High_Speed" 1 "Acceleration" 0 "No_Display" 13 "Drive_Mode_Selection"; +VAL_TABLE_ PtDataKeyId_D_Stat 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "Tot_Veh_NUT" 9 "Cust_4_NUT" 8 "Cust_3_NUT" 7 "Cust_2_NUT" 6 "Cust_1_NUT" 5 "Tot_Veh_Stat" 4 "Cust_4_Stat" 3 "Cust_3_Stat" 2 "Cust_2_Stat" 1 "Cust_1_Stat" 0 "Null"; +VAL_TABLE_ ChrgStat_D_Dsply 7 "NotUsed" 6 "Complete" 5 "Scheduled" 4 "In_Progress" 3 "Fault_Outside_Car" 2 "Fault_Inside_Car" 1 "Fault_Unknown_Location" 0 "Not_Ready"; +VAL_TABLE_ TrnLvrV_D_Rq 3 "Full_Speed" 2 "Aggressive" 1 "Normal" 0 "Quiet"; +VAL_TABLE_ EngStrtStop_B_SrcOil 1 "Eng_start_stop_for_oilmnt" 0 "Not_Requested"; +VAL_TABLE_ FuelMaintMde_D_Rq 3 "Feature_Not_Present" 2 "Fuel_Maint_Req_Now" 1 "Fuel_Maint_Req_Soon" 0 "NoRequest"; +VAL_TABLE_ FuelMaintMde_D_Dsply 3 "Feature_Not_Present" 2 "In_Fuel_Maint_Mode" 1 "Close_to_Fuel_Maint" 0 "OK"; +VAL_TABLE_ DynoMde_B_Cmd 1 "Two_Wheel_Dyno" 0 "Normal_Operation"; +VAL_TABLE_ HvacPrecondRecirc_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "Recirc" 0 "Outside"; +VAL_TABLE_ HvacPrecondAC_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "On" 0 "Off"; +VAL_TABLE_ HybMdeStat_D_Dsply 7 "NotUsed2" 6 "EV_Charge" 5 "EV_Override" 4 "Forced_EV_Mode" 3 "Forced_Charge_Sustain_Mode" 2 "Auto_Charge_Sustain_Mode" 1 "Auto_Charge_Deplete_Mode" 0 "Null_State"; +VAL_TABLE_ PwFlowPlgBatt_D_Dsply 3 "NotUsed" 2 "Flow_from_Plug_to_Batt" 1 "Flow_from_Batt_to_Plug" 0 "No_Flow"; +VAL_TABLE_ PwFlowEngMtr_D_Dsply 3 "NotUsed" 2 "Flow_from_Eng_to_Mtr" 1 "Flow_from_Mtr_to_Eng" 0 "No_Flow"; +VAL_TABLE_ PwFlowEngFuel_D_Dsply 3 "NotUsed" 2 "Flow_from_Eng_to_Fuel" 1 "Flow_from_Fuel_to_Eng" 0 "No_Flow"; +VAL_TABLE_ PwFlowMtrDrv_D_Dsply 3 "NotUsed" 2 "Flow_from_Mtr_to_Axle" 1 "Flow_from_Axle_to_Mtr" 0 "No_FLow"; +VAL_TABLE_ PwFlowEngDrv_D_Dsply 3 "NotUsed" 2 "Flow_from_Eng_to_Axle" 1 "Flow_from_Axle_to_Eng" 0 "No_Flow"; +VAL_TABLE_ PwFlowBattMtr_D_Dsply 3 "NotUsed" 2 "Flow_from_Batt_to_Mtr" 1 "Flow_from_Mtr_to_Batt" 0 "No_Flow"; +VAL_TABLE_ Null_Override_Invalid 3 "NotUsed" 2 "Invalid" 1 "Override" 0 "Null"; +VAL_TABLE_ HybMdeMsgTxt_D_Rq 7 "NotUsed2" 6 "NotUsed1" 5 "EV_Not_Avail_Message" 4 "EV_Mode_Message" 3 "Delayed_Discharge_Message" 2 "Override_Available_Message" 1 "AutoMode_Message" 0 "Null_NoMessage_Request"; +VAL_TABLE_ HybMdeLimMsgTxt_D_Rq 3 "Limited_Req_Full_Defrost" 2 "Limited_Climate_Defrost" 1 "Limited_System_Performance" 0 "Null"; +VAL_TABLE_ CenterStackRing_D_Actl 3 "LimitedOn" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ NoData_Faulty_FFFE_FFFF 65535 "Faulty" 65534 "NoDataExists"; +VAL_TABLE_ NoData_Faulty_FFE_FFF 4095 "Faulty" 4094 "NoDataExists"; +VAL_TABLE_ NoData_Faulty_7FFE_7FFF 32767 "Faulty" 32766 "NoDataExists"; +VAL_TABLE_ NoData_Faulty_3FE_3FF 1023 "Faulty" 1022 "NoDataExists"; +VAL_TABLE_ ReFuelSysStat_D_Dsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Refuel_Err" 3 "Close_Fuel_Door" 2 "Refuel_Ready" 1 "Wait_To_Fuel" 0 "Null"; +VAL_TABLE_ OffOn_NotUsed 3 "NotUsed2" 2 "NotUsed1" 1 "On" 0 "Off"; +VAL_TABLE_ DrQltyDrv_D_StatGsm 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "ClosedDegraded" 2 "OpenDegraded" 1 "ClosedOkay" 0 "OpenOkay"; +VAL_TABLE_ ChrgrInPwType_D_Actl 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "DC_Fast_Charging" 2 "AC_Level2_240v" 1 "AC_Level1_120v" 0 "EVSE_Not_Detected"; +VAL_TABLE_ ChrgCrdLck_D_Falt 3 "NotUsed" 2 "HardwareFault" 1 "CsiFault" 0 "NoFault"; +VAL_TABLE_ ChrgStat_D2_Dsply 15 "NotUsed_2" 14 "NotUsed_1" 13 "ChargeTargetReached" 12 "DriveConditioning" 11 "CabinPreconditioning" 10 "ChargingSystemMaintain" 9 "ChargingInductive" 8 "ChargingDCFastChange" 7 "ChargingAC" 6 "ChargeScheduled" 5 "EvsePaused" 4 "EvseNotDetected" 3 "EvseNotCompatible" 2 "FaultOutsideCar" 1 "FaultInsideCar" 0 "NotReady"; +VAL_TABLE_ EngMdeMsgTxt_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Charge" 3 "GlowingCharge" 2 "Hybrid" 1 "Ev" 0 "NoMessage"; +VAL_TABLE_ BattRgenLoStat_D_Qlty 3 "OK" 2 "Not_Within_Spec" 1 "Eval_In_Progress" 0 "Faulty"; +VAL_TABLE_ OpenClosedRetainDisable 3 "Disable" 2 "Retain" 1 "Closed" 0 "Open"; +VAL_TABLE_ OpenClosedStuckOpenClosed 3 "StuckClosed" 2 "StuckOpen" 1 "Closed" 0 "Open"; +VAL_TABLE_ NoData_Faulty_7FE_7FF 2047 "Faulty" 2046 "NoDataExists"; +VAL_TABLE_ DrTgateChime2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Long_Repeated" 3 "Fast" 2 "Short" 1 "Long" 0 "Off"; +VAL_TABLE_ EngIdlShutDwnTxt_D_Rq 3 "NotUsed" 2 "EngineShutdownOnPrevDrive" 1 "FeatureDisabledDueToFault" 0 "NoMessage"; +VAL_TABLE_ DrvPerfMde 3 "Sport" 2 "Normal" 1 "NotUsed" 0 "NoModeSelected"; +VAL_TABLE_ NoData_Fault_1FF_1FE 511 "Fault" 510 "NoDataExists"; +VAL_TABLE_ NoData_Fault_FFE_FFF 4095 "Fault" 4094 "NoDataExists"; +VAL_TABLE_ WeekdayEndHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; +VAL_TABLE_ WeekdayEndMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; +VAL_TABLE_ WeekdayStartHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; +VAL_TABLE_ WeekdayStartMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; +VAL_TABLE_ EngIdlShutDown_D_Stat 3 "Not_used" 2 "Engine_Shutdown" 1 "Initiated_Countdown" 0 "Normal_Operation"; +VAL_TABLE_ StopStrtDrvMde_D_Indic 3 "NotUsed" 2 "StartStop_IndirectDeselect" 1 "StopStart_Deselected" 0 "StopStart_Selected"; +VAL_TABLE_ StopStrtDrvMde_D_RqMnu 3 "NotUsed2" 2 "NotUsed1" 1 "StopStart_Deselected" 0 "StopStart_Selected"; +VAL_TABLE_ StopStrtStdby_D_Indic 6 "NotUsed2" 5 "Telltale_Struck_Out" 4 "Telltale_Flashing_Amber" 3 "Telltale_On_Amber" 2 "Telltale_Flashing_Green" 1 "Telltale_On_Green" 0 "Telltale_Off" 7 "NotUsed3"; +VAL_TABLE_ Quality_Faulty 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; +VAL_TABLE_ TrnDtpCmd_D_Actl 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "Relatch" 3 "Deploy" 2 "Self_Test" 1 "No_Command" 0 "NotUsed1"; +VAL_TABLE_ TrnGsmNtmState_D_Actl 3 "Faulty" 2 "Neutral_Tow_Mode" 1 "Car_Wash_Mode" 0 "None"; +VAL_TABLE_ TrnTrcmPwmSig_D_Actl 15 "Faulty" 14 "NoDataExists" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Default_To_Park" 7 "Neutral_Tow" 6 "Car_Wash_Mode" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "No_Gear"; +VAL_TABLE_ RgenBrkDynoMde_B_Actl 1 "TwoWheelDyno" 0 "NormalOperation"; +VAL_TABLE_ Fault_3FFF 16383 "Fault"; +VAL_TABLE_ CtaInnr_D_Stat 3 "Reporting" 2 "Not_Reporting" 1 "System_Standby" 0 "Initialization"; +VAL_TABLE_ PrkBrkActv_D_RqTrnGear 3 "NotUsed2" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "NotUsed1"; +VAL_TABLE_ NoRequest_Request 1 "Request" 0 "NoRequest"; +VAL_TABLE_ Fault_FFF_NoData 4094 "NoDataExists" 4095 "Fault"; +VAL_TABLE_ Fault_3FF_NoData 1022 "NoDataExists" 1023 "Fault"; +VAL_TABLE_ Foh_D_Stat 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "Stopping" 3 "Running" 2 "Starting" 1 "Prestart" 0 "Off"; +VAL_TABLE_ OffOnNoDataUnused 3 "Unused" 2 "NoDataExists" 1 "On" 0 "Off"; +VAL_TABLE_ FohFalt_D_Stat 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "FuelTypeDoesNotMatchFOH" 10 "Lifecycle_ModeNotSet" 9 "AuxElectricCoolantPumpInop" 8 "TimeDelayAvoidExcessCycl" 7 "Fuel_Level_OutofRange" 6 "External_Fault" 5 "Internal_Fault" 4 "Voltage_limitation" 3 "Impact_Event" 2 "CoolantTemp_OutofRange" 1 "AmbientTemp_OutofRange" 0 "No_Disable"; +VAL_TABLE_ FohRqRun_B_Rq 1 "SubmitRequest_toRun" 0 "DoesNotSubmitRequest_toRun"; +VAL_TABLE_ OKLowVeryLow 3 "NotUsed" 2 "VeryLow" 1 "Low" 0 "OK"; +VAL_TABLE_ Fault_1FF 511 "Fault"; +VAL_TABLE_ SteWhlHeat 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Reserved_3" 8 "Reserved_2" 7 "Reserved_1" 6 "Level_3_Heating" 5 "Level_3_Heating_LS" 4 "Level_2_Heating" 3 "Level_2_Heating_LS" 2 "Level_1_Heating" 1 "Level_1_Heating_LS" 0 "Off"; +VAL_TABLE_ OffOnUnusedFault 3 "Fault" 2 "Unused" 1 "On" 0 "Off"; +VAL_TABLE_ NullKphMph 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; +VAL_TABLE_ TsrVLim1MsgTxt_D_Rq 255 "NoLimit" 254 "NotUsed2" 253 "NotUsed1" 252 "NotToBeDisplayed" 251 "LimitCancelled" 31 "1F_FA_Message31_250" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "Null"; +VAL_TABLE_ TsrVl1RstrcMsgTxt_D_Rq 3 "NotUsed" 2 "NoRecognizableRestriction" 1 "NoSpeedLimitRestriction" 0 "Null"; +VAL_TABLE_ TsrMsgTxt_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "RecgnzdSignNotUsblForDsply" 8 "LimitedSystemPerformance" 7 "OffRoad" 6 "RegionNotSupported" 5 "CountryNotSupported" 4 "WrngNavDatIncompDatCarrier" 3 "NoNavDataAvailable" 2 "NoNavAvailableSwitchedOff" 1 "NoInformationAllOK" 0 "Null"; +VAL_TABLE_ TsrOvtkTypeMsgTxt_D_Rq 3 "NotUsed" 2 "Explicit" 1 "Implicit" 0 "Null"; +VAL_TABLE_ TsrOvtkStatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; +VAL_TABLE_ TsrOvtkMsgTxt_D_Rq 7 "LimForTrucksCancelled" 6 "LimForTrucksWoQlfdRstrc" 5 "LimForTrucksWithoutRstrc" 4 "LimAllCancelled" 3 "LimAllWithoutQlfdRstrc" 2 "LimAllWithoutRestriction" 1 "OvertakingAllowed" 0 "Null"; +VAL_TABLE_ Null_False_True 3 "NotUsed" 2 "True" 1 "False" 0 "Null"; +VAL_TABLE_ TsrStatMsgTxt_D_Rq 7 "NotUsed" 6 "NoDataExists" 5 "TSR_Error" 4 "Available_NavigationOnly" 3 "Available_CameraOnly" 2 "Available_FusionMode" 1 "TSR_Off" 0 "Null"; +VAL_TABLE_ NoMessage_DisplayMessage 1 "DisplayMessage" 0 "NoMessage"; +VAL_TABLE_ FdsmTrgRight 1 "Object_in_Right_Lobe" 0 "No_Object"; +VAL_TABLE_ FdsmTrgCntr 1 "Object_in_Center_Lobe" 0 "No_Object"; +VAL_TABLE_ FdsmTrgLeft 1 "Object_in_Left_Lobe" 0 "No_Object"; +VAL_TABLE_ EngineBrakeOff_Active 1 "Engine_Braking_Activated" 0 "Engine_Braking_Off"; +VAL_TABLE_ NoEngineBrake_Brake 1 "Engine_Braking" 0 "No_Engine_Braking"; +VAL_TABLE_ PlgActv_D_ActlChrgr 3 "Faulty" 2 "Not used_2" 1 "On_Plug__Connected_" 0 "Off_Plug__Disconnected_"; +VAL_TABLE_ EngSrvcRqd_B_Rq 1 "Engine_Service_Required" 0 "No_engine_service_required"; +VAL_TABLE_ WeekendEndHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; +VAL_TABLE_ WeekendEndMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; +VAL_TABLE_ WeekendStartHR_St 31 "Invalid" 30 "Unknown" 29 "Reserved_29" 28 "Reserved_28" 27 "Reserved_27" 26 "Reserved_26" 25 "Reserved_25" 24 "Reserved_24"; +VAL_TABLE_ WeekendStartMin_St 63 "Faulty" 62 "No_data_exists" 61 "Reserverd" 60 "Reserverd"; +VAL_TABLE_ LscmbbBaSens_D_Rq 3 "Level3_EBA" 2 "Level2_EBA" 1 "Level1_EBA" 0 "Norman_EBA"; +VAL_TABLE_ Allowed_Denied 1 "Denied" 0 "Allowed"; +VAL_TABLE_ LscmbbBrkPrchg_D_Rq 3 "NotUsed" 2 "Level2_PreCharge" 1 "Level1_PreCharge" 0 "No_Precharge"; +VAL_TABLE_ LscmbbBrkDecel_B_Enabl 1 "ConductLSCMbBDecelReq" 0 "DoNotConductLSCMbBDecelReq"; +VAL_TABLE_ PrkAidMsgTxt_D_Rq 15 "All_Sns_Blk" 14 "R_Sns_ON_F_Sns_Blk" 13 "R_Sns_Blk_F_Sns_ON" 12 "R_Sns_Inactive_Trlr_atch" 11 "Not_Avail_Trlr_attchd" 10 "Fail_Mode_no_Chime" 9 "Fail_Mode_with_Chime" 8 "R_Sns_Trlr_F_Sns_Blk" 7 "NotUsed3" 6 "Park_Sys_Alternate_Mode" 5 "R_Snsrs_On_F_Snsrs_On" 4 "NotUsed2" 3 "Reset_Message_Warn" 2 "R_Snsrs_Off_F_Snsrs_On" 1 "R_Snsrs_On_F_Snsrs_Off" 0 "All_Park_Sensors_Off"; +VAL_TABLE_ PrkAidSns_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_TABLE_ PrkAid_D_Falt 7 "NotUsed2" 6 "NotUsed1" 5 "Failure_Front_PSM_Sensors" 4 "No_Data_Exists" 3 "Failure_Rear_Sensors" 2 "Speaker_Fault" 1 "ECU_Fault" 0 "No_Fault"; +VAL_TABLE_ OffOnNoDataFault 3 "Fault" 2 "No_Data_Exists" 1 "On" 0 "Off"; +VAL_TABLE_ ApaActvSd_D_Actl 3 "Dirver_Side" 2 "Passenger_Side" 1 "No_Side" 0 "Null"; +VAL_TABLE_ ApaMdeStat_D_RqDrv 7 "Faulty" 6 "Off" 5 "NotUsed2" 4 "NotUsed1" 3 "POA" 2 "PPA" 1 "SAPP" 0 "Inactive"; +VAL_TABLE_ ApaMde_D_Avail 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "PPA_POA" 7 "SAPP_POA" 6 "POA" 5 "PPA" 4 "SAPP" 3 "SAPP_PPA_POA" 2 "SAPP_PPA" 1 "None" 0 "Null"; +VAL_TABLE_ ApaMde_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "POA" 3 "PPA" 2 "SAPP" 1 "Off" 0 "Null"; +VAL_TABLE_ FrostWarn_D_Stat 3 "NotUsed" 2 "On_Amber" 1 "On_Red" 0 "Off"; +VAL_TABLE_ SteWhlLckMsgTxt_D_Rq 3 "NotUsed" 2 "Message_2" 1 "Message_1" 0 "No_Message"; +VAL_TABLE_ GearRvrse_D_Actl 7 "Fault" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Active_confirmed" 2 "Active_not_confirmed" 1 "Inactive_confirmed" 0 "Inactive_not_confirmed"; +VAL_TABLE_ SideDetect_SnStat_Invalid 3 "Invalid" 2 "System_Failure" 1 "Blocked" 0 "Clear"; +VAL_TABLE_ SideDetect_OpStat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; +VAL_TABLE_ SideDetect_Present 4 "Sensor_Blocked" 3 "Sensor_Fault" 2 "Flash_On" 1 "Alert_On" 0 "AlertOff_FlashOff_SensrClr"; +VAL_TABLE_ Off_On_Flash_BulbProveout 3 "Bulb_Proveout" 2 "Flash" 1 "On" 0 "Off"; +VAL_TABLE_ SideDetect_BLIS_Off_On 2 "BLIS_On_Second_Warning_ON" 1 "BLIS_On_Second_Warning_OFF" 0 "Off"; +VAL_TABLE_ SideDetect_report 3 "Reporting" 2 "Not_Reporting" 1 "System_Standby" 0 "Initialization"; +VAL_TABLE_ DrTGate_D_Rq 3 "NotUsed" 2 "Closing" 1 "Opening" 0 "Not_Moving"; +VAL_TABLE_ WndwSide_D_Stat 3 "BothWindow_Operating" 2 "RearWindow_Operating" 1 "FrontWindow_Operating" 0 "NoWindows_Operating"; +VAL_TABLE_ DcacElPw_D_Rq 3 "NotUsed" 2 "AC_HighPower_Requested" 1 "AC_LowPower_Requested" 0 "AC_Power_NotRequested"; +VAL_TABLE_ False_True 1 "True" 0 "False"; +VAL_TABLE_ Null_Reset 1 "Reset" 0 "Null"; +VAL_TABLE_ HvacBlwrFront_D_Stat 31 "Not_Used" 20 "Full_On" 19 "95_Percent" 18 "90_Percent" 17 "85_Percent" 16 "80_Percent" 15 "75_Percent" 14 "70_Percent" 13 "65_Percent" 12 "60_Percent" 11 "55_Percent" 10 "50_Percent" 9 "45_Percent" 8 "40_Percent" 7 "35_Percent" 6 "30_Percent" 5 "25_Percent" 4 "20_Percent" 3 "15_Percent" 2 "10_Percent" 1 "5_Percent" 0 "Off"; +VAL_TABLE_ immoMsgTxt_D_Rq 15 "Immo_Msg_15" 14 "Immo_Msg_14" 13 "Immo_Msg_13" 12 "Immo_Msg_12" 11 "Immo_Msg_11" 10 "Immo_Msg_10" 9 "Immo_Msg_9" 8 "Immo_Msg_8" 7 "Immo_Msg_7" 6 "Immo_Msg_6" 5 "Immo_Msg_5" 4 "Immo_Msg_4" 3 "Immo_Msg_3" 2 "Immo_Msg_2" 1 "Immo_Msg_1" 0 "Immo_Msg_0_Null"; +VAL_TABLE_ BattTracWarnLamp_B_Rq 1 "On" 0 "Off"; +VAL_TABLE_ BattTracSrvcRqd_B_Rq 1 "On" 0 "Off"; +VAL_TABLE_ HtrnWarnLamp_B_Dsply 1 "On" 0 "Off"; +VAL_TABLE_ HtrnSrvcRqd_B_Dsply 1 "On" 0 "Off"; +VAL_TABLE_ NoData_Faulty_7E_7F 127 "Faulty" 126 "NoDataExists"; +VAL_TABLE_ PreCondACSet_D_Actl 3 "Last_User_Setting" 2 "Auto" 1 "On" 0 "Off"; +VAL_TABLE_ PreCondFanSet_D_Actl 15 "Not_used" 14 "Not_used" 13 "Not_used" 12 "Not_used" 11 "Not_used" 10 "Not_used" 9 "Last_user_setting" 8 "Auto" 7 "Speed_7" 6 "Speed_6" 5 "Speed_5" 4 "Speed_4" 3 "Speed_3" 2 "Speed_2" 1 "Speed_1" 0 "OFF"; +VAL_TABLE_ PreCondID_No_Actl 0 "Invalid"; +VAL_TABLE_ PreCondRecrcSet_D_Actl 3 "Last_User_Setting" 2 "Auto" 1 "Recirc" 0 "Outside/Fresh"; +VAL_TABLE_ PreCondTeSet_Te_Actl 31 "HI" 1 "LO" 0 "Last_driver_setting"; +VAL_TABLE_ PreCondTPRDef_D_Actl 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ PreCondModeSet_D_Actl 15 "Not_used" 14 "Not_used" 13 "Not_used" 12 "Not_used" 11 "LastUserSetting" 10 "Auto" 9 "Max_Defrost" 8 "Windshield_Panel_Floor" 7 "Windshield_Panel" 6 "Windshield_(Defrost)" 5 "Windshield_Floor" 4 "Floor" 3 "Panel_Floor" 2 "Panel_(Vent)" 1 "Max_A/C" 0 "Off"; +VAL_TABLE_ ChargePortPwr_St 2 "LowPower" 1 "HighPower" 0 "Null"; +VAL_TABLE_ ChargeProfIDPref_St 3 "NotUsed" 2 "Value" 1 "ChargeNow" 0 "Null"; +VAL_TABLE_ ChrgGlobSched_D_Actl 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ ChrgLocEndHr_No_Actl 31 "Invalid" 30 "Unknown"; +VAL_TABLE_ ChrgLocEndMin_No_Actl 63 "Invalid" 62 "Unknown"; +VAL_TABLE_ ChrgLocProgram_D_Actl 7 "Not_used" 6 "Not_used" 5 "Not_used" 4 "Manual" 3 "TimeofUse" 2 "SmMet" 1 "ChargeImm" 0 "Null"; +VAL_TABLE_ ChrgLocSchedCat_D_Actl 11 "Reserved" 10 "Window_10" 9 "Window_9" 8 "Window_8" 7 "Window_7" 6 "Window_6" 5 "Window_5" 4 "Window_4" 3 "Window_3" 2 "Window_2" 1 "Window_1" 0 "Null"; +VAL_TABLE_ ChrgLocHsphs_D_Actl 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "SouthEast_Lat-_Long+" 3 "SouthWest_Lat-_Long-" 2 "NorthEast_Lat+_Long+" 1 "NorthWest_Lat+_Long-" 0 "NoDataExists"; +VAL_TABLE_ FuelPumpPwr_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Power_Off_Default" 3 "Power_Off_Command" 2 "Power_Off_Service" 1 "Power_Off_Impact" 0 "Power_On"; +VAL_TABLE_ ChrgrRdyStat_D_Actl 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Charging" 2 "ChargerFault" 1 "ChargerReady" 0 "NotReady"; +VAL_TABLE_ PrmtrAlrmEvnt_D_Stat 15 "Diag_Tamper" 14 "Trailer" 13 "Shock_Sensor" 12 "Post_Crash" 11 "Panic" 10 "Intrusion" 9 "Inclination" 8 "Ign_Tamper" 7 "LG_Door" 6 "Decklid" 5 "Hood" 4 "PR_Door" 3 "PF_Door" 2 "DR_Door" 1 "DF_Door" 0 "Null"; +VAL_TABLE_ SecurityMsgTxt_D_Rq 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ BattChrgRdyStat_D_Actl 7 "NotUsed2" 6 "NotUsed1" 5 "Faulted" 4 "ChargeComplete" 3 "Charging" 2 "BatteryChargeReady" 1 "ChargeWait" 0 "NotReady"; +VAL_TABLE_ BattChrgInhbt_D_Rq 3 "MaintainTargetSoc" 2 "NotUsed" 1 "InhibitChargingThermal" 0 "Enable_Charging"; +VAL_TABLE_ Fault_7FF_NoData 2047 "Fault" 2046 "NoDataExists"; +VAL_TABLE_ Deactivate_Activate 1 "Activate" 0 "Deactivate"; +VAL_TABLE_ PtcHtr_D_Stat 3 "Faulty" 2 "NotUsed" 1 "On" 0 "Off"; +VAL_TABLE_ PtcHtr_D_Cmd 3 "TurnOn" 2 "AutoMode" 1 "TurnOff" 0 "NoDecision_Initializing"; +VAL_TABLE_ Fault_FFFFFF 16777215 "Fault"; +VAL_TABLE_ NoData_Fault_FFFE_FFFF 65535 "Fault" 65534 "NoDataExists"; +VAL_TABLE_ EngOffTe_B_Dsply 1 "Eng_warm_engh_for_pd" 0 "Eng_not_warm_engh_for_pd"; +VAL_TABLE_ Fault_FFFF_NoData_FFFE 65535 "Fault" 65534 "NoDataExists"; +VAL_TABLE_ Fault_1FFF 8191 "Fault"; +VAL_TABLE_ TrlrBattChrg_D_Stat 3 "Reverse" 2 "Normal" 1 "Low" 0 "Null"; +VAL_TABLE_ TrlrLampCtl_D_Stat 3 "NotUsed" 2 "TrlrLampCnnctDrvFailure" 1 "TrlrLampNotCnnctDrvFailure" 0 "Null"; +VAL_TABLE_ ElPw_D_StatStrtStop 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Supported_Level_4" 8 "Supported_Level_3" 7 "Supported_Level_2" 6 "Supported_Level_1" 5 "Limited_Support" 4 "Fault_Limited" 3 "LV_Event_in_Progress" 2 "Not_Supported_Imminent" 1 "Supported_All" 0 "Not_Supported"; +VAL_TABLE_ ImpactEvntFdbck_D_Stat 3 "NotUsed" 2 "EventComplete" 1 "EventInProgress" 0 "Normal"; +VAL_TABLE_ StopStrtIODTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_TABLE_ NoData_Fault_7FFE_7FFF 32767 "Fault" 32766 "NoDataExists"; +VAL_TABLE_ NoData_Fault_3E_3F 63 "Fault" 62 "NoDataExists"; +VAL_TABLE_ DrvSte_D_Stat 15 "NotUsed10" 14 "NotUsed9" 13 "NotUsed8" 12 "NotUsed7" 11 "NotUsed6" 10 "NotUsed5" 9 "NotUsed4" 8 "NotUsed3" 7 "NotUsed2" 6 "NotUsed1" 5 "Request_Active" 4 "Ignition_Off" 3 "DSR_in_Normal_Idle_Mode" 2 "EPAS_Comm_Disturbed" 1 "DSR_Request_Not_Applicable" 0 "DSR_Deactivated"; +VAL_TABLE_ StrtrMtrCtlMsgTxt_D_Rq 7 "Start_In_Gear_Allowed" 6 "Pending_Start_Cancelled" 5 "Start_Pending_Please_Wait" 4 "Cranking_Limit_Exceeded" 3 "Press_Brk_and_Shift_to_P_N" 2 "Press_Clutch_and_Brake" 1 "Press_Clutch_To_Start" 0 "No_Display"; +VAL_TABLE_ Null_Open 1 "Open" 0 "Null"; +VAL_TABLE_ Invalid_OffOn 0 "Invalid" 1 "Off" 2 "On"; +VAL_TABLE_ TempDegreesC_DegreesF 0 "Temperature_deg_c" 1 "Temperature_deg_f"; +VAL_TABLE_ BeltminderAudioMute 2 "On" 1 "Off" 0 "Invalid"; +VAL_TABLE_ Chime_Source 2 "Cluster" 1 "Infotainment_Sys" 0 "Invalid"; +VAL_TABLE_ Invalid_DayNight 2 "Night" 1 "Day" 0 "Invalid"; +VAL_TABLE_ Invalid_12h_24h 2 "24h_mode" 1 "12h_mode" 0 "Invalid"; +VAL_TABLE_ Invalid_Theme1_2 2 "Theme_2" 1 "Theme_1" 0 "Invalid"; +VAL_TABLE_ LanguageSelect_St 30 "Slovak" 29 "Arabic" 28 "Cantonese" 27 "Mandarin_Chinese" 26 "Korean" 25 "Japanese_Kanji" 24 "Japanese_Katakana" 23 "Braz_Portuguese" 22 "EU_Portuguese" 21 "Finish" 20 "Norwegian" 19 "Danish" 18 "Swedish" 17 "Hungarian" 16 "Greek" 15 "Czech" 14 "Polish" 13 "Flemish" 12 "Dutch" 11 "Russian" 10 "Turkish" 9 "Mex_Spanish" 8 "EU_Spanish" 7 "Cana_French" 6 "EU_French" 5 "Italian" 4 "German" 3 "NA_English" 2 "UK_English" 1 "Unknown" 0 "Invalid"; +VAL_TABLE_ Blower_Indicate 15 "Display_Blank" 14 "14_Indicators_On" 13 "13_Indicators_On" 12 "12_Indicators_On" 11 "11_Indicators_On" 10 "10_Indicators_On" 9 "9_Indicators_On" 8 "8_Indicators_On" 7 "7_Indicators_On" 6 "6_Indicators_On" 5 "5_Indicators_On" 4 "4_Indicators_On" 3 "3_Indicators_On" 2 "2_Indicators_On" 1 "1_Indicator_On" 0 "Indicators_Off"; +VAL_TABLE_ CC_Fr_Stat_User_Adj 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "Fr_Blwr_Spd_Selection" 2 "FRHS_SetPt_Selection" 1 "FLHS_SetPt_Selection" 0 "None"; +VAL_TABLE_ HeadLghtHiFdbck_D_Stat 3 "NotUsed" 2 "Cancel" 1 "Hold" 0 "Allow_Change"; +VAL_TABLE_ Backlit_LED_Status 15 "Unused3" 14 "Unused2" 13 "Unused1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; +VAL_TABLE_ Veh_Lock_Status 3 "UNLOCK_DRV" 2 "UNLOCK_ALL" 1 "LOCK_ALL" 0 "LOCK_DBL"; +VAL_TABLE_ PrkLckCtlMsgTxt_D_Rq 3 "BTSI_DI_3" 2 "BTSI_DI_2" 1 "BTSI_DI_1" 0 "Null_BTSI_DI"; +VAL_TABLE_ NoShift_Shift 1 "Shift" 0 "NoShift"; +VAL_TABLE_ CcdMsgTxt_D_RqDsply 15 "Unused8" 14 "Unused7" 13 "Unused6" 12 "Unused5" 11 "Unused4" 10 "Unused3" 9 "Unused2" 8 "StationaryMode" 7 "Mode_Change_Unavailable" 6 "CCD_Temporarily_Off" 5 "CCD_Service_Required" 4 "Faulty" 3 "Sport" 2 "Normal" 1 "Comfort" 0 "No_Mode_Selected"; +VAL_TABLE_ CrashEvnt_D_Stat 3 "Invalid" 2 "Fuel_Cutoff_Event" 1 "Deploy_Event" 0 "No_Event"; +VAL_TABLE_ ReducedGuard_D_Stat 3 "NotUsed" 2 "Alarm_On" 1 "Alarm_Off_Previously_On" 0 "Alarm_Off"; +VAL_TABLE_ HvacPrecondBlwr_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Last_User_Setting" 8 "Auto" 7 "Speed7" 6 "Speed6" 5 "Speed5" 4 "Speed4" 3 "Speed3" 2 "Speed2" 1 "Speed1" 0 "Off"; +VAL_TABLE_ HvacPrecondMode_D_Rq 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "Last_User_Settings" 10 "Auto" 9 "Max_Defrost" 8 "Windshield_Panel_Floor" 7 "Windshield_Panel" 6 "Windshield" 5 "Windshield_Floor" 4 "Floor" 3 "Panel_Floor" 2 "Panel" 1 "MAX_AC" 0 "Off"; +VAL_TABLE_ ButtonNotPressed 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_TABLE_ Null_Pressed 1 "Pressed" 0 "Null"; +VAL_TABLE_ FobComm_D_Stat 3 "NotUsed" 2 "RemEngStartOK" 1 "RemEngStartFail" 0 "Null"; +VAL_TABLE_ PudLamp_D_Rq 3 "RAMP_DOWN" 2 "RAMP_UP" 1 "ON" 0 "OFF"; +VAL_TABLE_ WndwGlbl_D_Cmd 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "GLEARN" 3 "GCLOSE" 2 "GOPEN" 1 "GSTOP" 0 "Null"; +VAL_TABLE_ LockMsg 7 "MSG7" 6 "MSG6" 5 "MSG5" 4 "MSG4" 3 "MSG3" 2 "MSG2" 1 "MSG1" 0 "NO_WARNING"; +VAL_TABLE_ ChildLockDisplay 3 "NOT_SUPPORTED" 2 "ERROR" 1 "CHILD_UNLOCK" 0 "CHILD_LOCK"; +VAL_TABLE_ Null_Lock_Unlock 3 "NotUsed" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_TABLE_ Wiper 15 "NO_DATA_EXISTS" 14 "STALLED" 13 "RESERVED" 12 "AUTO_ADJUST" 11 "COURTESYWIPE" 10 "AUTO_HIGH" 9 "AUTO_LOW" 8 "WASH" 7 "MIST_FLICK" 6 "MAN_HIGH" 5 "MAN_LOW" 4 "MAN_INT_ON" 3 "MAN_INT_OFF" 2 "OFF_MOVING" 1 "AUTO_OFF" 0 "OFF"; +VAL_TABLE_ Turn_switch 3 "Unused_Treat_As_Off" 2 "Right" 1 "Left" 0 "Off"; +VAL_TABLE_ PrkLght_D_Stat 3 "Park_Both" 2 "Park_Right" 1 "Park_Left" 0 "Off"; +VAL_TABLE_ LghtAmb_D_Sns 7 "No_Data_Exists" 6 "Unused2" 5 "Unused1" 4 "Tunnel_Off" 3 "Tunnel_On" 2 "Twilight" 1 "Light" 0 "Dark"; +VAL_TABLE_ HeadLghtSwtch_D_Stat 3 "Autolamp" 2 "Headlamp" 1 "Parklamp" 0 "Off"; +VAL_TABLE_ EmgcyBrkLamp_D_Rq 3 "NotUsed" 2 "Active_at_standstill" 1 "Active_at_speed" 0 "Inactive"; +VAL_TABLE_ GearLvrPos_D_Unfilt 7 "Invalid" 6 "NotUsed" 5 "In_between" 4 "Low" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_TABLE_ EDrvTqMntrRconfg_D_Cmd 7 "OK" 6 "Disable_Cruise" 5 "NotUsed4" 4 "Supercreep" 3 "NotUsed3" 2 "NotUsed2" 1 "Engine_shutdown" 0 "NotUsed"; +VAL_TABLE_ OpenPressedFault 3 "Fault" 2 "Unused" 1 "Pressed" 0 "Open"; +VAL_TABLE_ LaHandsOff_D_Dsply 3 "Suppressed" 2 "Level2" 1 "Level1" 0 "HandsOn"; +VAL_TABLE_ Avail_Unavail 1 "Unavailable" 0 "Available"; +VAL_TABLE_ LaActvStats_D_Dsply 31 "Unused7" 30 "LA_Off" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 24 "InerveneLeft_InterveneRght" 23 "WarnLeft_InterveneRight" 22 "SuppressLeft_InterveneRght" 21 "AvailLeft_InterveneRhtt" 20 "NoLeft_InterveneRight" 19 "InterveneLeft_WarnRight" 18 "WarnLeft_WarnRight" 17 "SuppressLeft_WarnRight" 16 "AvailableLeft_WarnRight" 15 "NoLeft_WarnRight" 14 "InterveneLeft_SuppressRght" 13 "WarnLeft_SuppressRight" 12 "SuppressLeft_SuppressRight" 11 "AvailLeft_SuppressRight" 10 "NoLeft_SuppressRight" 9 "InterveneLeft_AvailRight" 8 "WarnLeft_AvailRight" 7 "SuppressLeft_AvailRight" 6 "AvailableLeft_AvailRight" 5 "NoLeft_AvailableRight" 4 "InterveneLeft_NoRight" 3 "WarnLeft_NoRight" 2 "SuppressLeft_NoRight" 1 "AvailableLeft_NoRight" 0 "NoLeft_NoRight"; +VAL_TABLE_ AhbcHiBeam_D_Rq 3 "Deactivated_Unavailabl" 2 "Unused" 1 "Main_HighBeamRecommend" 0 "Dipped_LowBeamRecommend"; +VAL_TABLE_ GrllShtrPos_D_Cmd 15 "Fully_Open" 14 "Position14" 13 "Position13" 12 "Position12" 11 "Position11" 10 "Position10" 9 "Position9" 8 "Position8" 7 "Position7" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Fully_Closed"; +VAL_TABLE_ LifeCycMde_D_Actl 3 "Transport" 2 "NotUsed" 1 "Factory" 0 "Normal"; +VAL_TABLE_ TrnMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; +VAL_TABLE_ DieslPrtcRgen_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Full_Regen_2" 4 "Full_Regen_1" 3 "HeatUp_3" 2 "HeatUp_2" 1 "HeatUp_1" 0 "Normal_Mode_NoRegen"; +VAL_TABLE_ ClimtHeat_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "PtcHtrTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownHeatingReq" 1 "OpportunisticHeatingReq" 0 "NoHeatingRequest"; +VAL_TABLE_ TrnCapHlth_Actl 3 "Capacitor_OK" 2 "Degraded_Capacitor" 1 "Capacitor_State_Unknown" 0 "Capacitor_Fault"; +VAL_TABLE_ TrnSecPrkStat_D_Actl 7 "Faulty" 6 "Fault_Released" 5 "Fault_Latched" 4 "Recouple_in_Progress" 3 "Mechanism_Released" 2 "RTP_in_Progress" 1 "Pending" 0 "Latched"; +VAL_TABLE_ TrnGear_D_Actl 7 "Fault" 6 "NotUsed" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "Transition_State"; +VAL_TABLE_ TrnNtrlTowCmd_D_Actl 3 "NotUsed" 2 "Neutral_Tow_Entry" 1 "Car_Wash_Mode" 0 "Normal_Mode"; +VAL_TABLE_ TrnValidGear_D_Cnfm 3 "Accept" 2 "Reject" 1 "Internal_Request" 0 "No_Command"; +VAL_TABLE_ TrnGear_D_RqPt 7 "Fault" 6 "NotUsed" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "No_Gear"; +VAL_TABLE_ TrnValidGearRq_D_Stat 3 "Valid_Request" 2 "Valid_Degraded_Request" 1 "Invalid_Request" 0 "No_Request"; +VAL_TABLE_ NoData_Fault_3FE_3FF 1023 "Fault" 1022 "NoDataExists"; +VAL_TABLE_ ClimtCool_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "ElACTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownCoolReq" 1 "OpportunisticCoolingReq" 0 "NoCoolingRequest"; +VAL_TABLE_ HtrnHvilOpen_B_Actl 1 "HVIL_is_Open" 0 "Normal_Operation"; +VAL_TABLE_ EngTeHi_B_Actl 1 "EngineTempHigh" 0 "Normal"; +VAL_TABLE_ Eng_D_StatPwPck 7 "NotUsed3" 6 "NotUsed2" 5 "Engine_Start_Cold_Cat" 4 "Engine_Disabled" 3 "Engine_Running" 2 "Engine_Run_CSER" 1 "Engine_Start" 0 "Off"; +VAL_TABLE_ EngFuelCutFull_B_Inhbt 1 "Inhibit_DFSO" 0 "Normal"; +VAL_TABLE_ EngFuelCutFull_B_Rq 1 "FuelCutRequest" 0 "NormalOperation"; +VAL_TABLE_ Fault_7FF 2047 "Fault"; +VAL_TABLE_ EngStopFst_B_Rq 1 "FastEngineShutdown" 0 "NormalOperation"; +VAL_TABLE_ EngStrtCold_B_Rq 1 "ExtremeColdStart" 0 "NormalStart"; +VAL_TABLE_ EngStrtSmooth_D_Rq 7 "NotUsed" 6 "Smooth_NoPedal" 5 "Smooth_LightPedal" 4 "Smooth_MediumPedal" 3 "Smooth_HeavyPedal" 2 "Smooth_WOP" 1 "Smooth_Cold" 0 "Smooth_ExtremeCold"; +VAL_TABLE_ Fault_FFF 4095 "Fault"; +VAL_TABLE_ VehStrtStop_D_Rq 3 "NotUsed" 2 "Vehicle_Start_Request" 1 "Vehicle_Stop_Request" 0 "NoRequest"; +VAL_TABLE_ HvacRec_D_RqMxBatt 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "No_Override" 9 "90Percent_RecircMax" 8 "80Percent_RecircMax" 7 "70Percent_RecircMax" 6 "60Percent_RecircMax" 5 "50Percent_RecircMax" 4 "40Percent_RecircMax" 3 "30Percent_RecircMax" 2 "20Percent_RecircMax" 1 "10Percent_RecircMax" 0 "0Percent_RecircFullOpen"; +VAL_TABLE_ FuelCtlOpenLp_B_Inhbt 1 " Inhibit_FullPedal_Actions" 0 "Normal_Operation"; +VAL_TABLE_ EngStrtStop_B_SrcSrvc 1 "Eng_StartStop_for_Service" 0 "Not_Requested"; +VAL_TABLE_ EngStrtStop_B_SrcCat 1 "Eng_StartStop_for_Catalyst" 0 "Not_Requested"; +VAL_TABLE_ PrkBrkStatus 7 "GeneralFault_MaintenceMode" 6 "ECD_by_Brake_ECU_Active" 5 "EPB_Limphome_Active" 4 "Rear_Caliper_Open" 3 "RWU_By_EPB_Active" 2 "Rear_Caliper_Transition" 1 "Rear_Caliper_Closed" 0 "Not_Supported"; +VAL_TABLE_ ElLoadCtl_D_Rq 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "HoldAllDrvrInvisibleLoads" 3 "StdDriverInvisibleLoadsOn" 2 "AllDriverInvisibleLoadsOn" 1 "All_Possible_Loads_Off" 0 "No_Request"; +VAL_TABLE_ BattTracCool 3 "NotUsed" 2 "DCDC_Overtemperature" 1 "CoolingRequiredbyDCDC" 0 "NoCoolingRequiredbyDCDC"; +VAL_TABLE_ NotReady_Active_Fault 3 "Fault" 2 "Active" 1 "Ready" 0 "Not_Ready"; +VAL_TABLE_ Quality_Data 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Fault"; +VAL_TABLE_ PwSrcULoFalt_D_Stat 3 "Fault_No_Output" 2 "Fault_Reduced_Output" 1 "Fault_NonSpecific" 0 "No_Fault"; +VAL_TABLE_ Connect_Discon_Loose 1 "Loose_or_Disconnected" 0 "Connected"; +VAL_TABLE_ DontCare_StartInhibit 1 "Start_Inhibit" 0 "Dont_Care"; +VAL_TABLE_ BattULoChrg_D_Rq 3 "Low_Battery_Temperature" 2 "Charging_Requested" 1 "Chrg_Requested_HighCurrent" 0 "No_Request"; +VAL_TABLE_ PwSysULoFalt_D_Stat 15 "Not_Used_6" 14 "LowBatterySOC" 13 "PSS_Shed2_Contin" 12 "Not_Used_4" 11 "Not_Used_3" 10 "Not_Used_2" 9 "BattMonitoringSensorFault" 8 "LowBattVoltDuringPwSrcOn" 7 "LowBatt2_PowerSaveMode" 6 "LowBatt1_Warning" 5 "Overvoltage" 4 "Fault_NoOutput" 3 "Fault_ReducedOutput" 2 "Fault_Nonspecific" 1 "Cluster_Proveout" 0 "No_Fault"; +VAL_TABLE_ AccStopMde_D_Rq 3 "Stop_Mode_Active" 2 "EPBApplyOrBrakeReleaseWarn" 1 "Limit_Rolling_Speed" 0 "Stop_Mode_Not_Active"; +VAL_TABLE_ EngFuelCutFull_B_Sched 1 "DFSO_Event_Scheduled" 0 "Normal"; +VAL_TABLE_ Eng_D_Stat 3 "NotUsed" 2 "EngAutoStopped" 1 "EngOn" 0 "EngOff"; +VAL_TABLE_ ElPw_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Fault_Limited" 3 "LV_Event_In_Progress" 2 "Not_Supported_Imminent" 1 "Supported" 0 "Not_Supported"; +VAL_TABLE_ PwPckTq_D_Stat 3 "PwPckOn_TqAvailable" 2 "StartInPrgrss_TqNotAvail" 1 "PwPckOn_TqNotAvailable" 0 "PwPckOff_TqNotAvailable"; +VAL_TABLE_ BattTracCool_D_Falt 3 "NotUsed" 2 "CoolSysPartialyOperational" 1 "Cooling_System_Faulted" 0 "Cooling_System_Operational"; +VAL_TABLE_ Fault_FF 255 "Fault"; +VAL_TABLE_ ElCmprOverTe_D_Stat 3 "OverTempStop" 2 "OverTempWarning" 1 "Normal" 0 "Undefined"; +VAL_TABLE_ ElCmprUHi_D_Stat 3 "Overvoltage" 2 "Undervoltage" 1 "InRange" 0 "Undetermined"; +VAL_TABLE_ ElCmpr_D_Stat 7 "Signal_Invalid" 6 "Comp_Off_ActlSpd_Abnormal" 5 "Comp_Off_TrgtSpd_OutRange" 4 "Comp_Shutdown" 3 "Comp_Stopped_Self_Protect" 2 "Comp_Degraded" 1 "Comp_On" 0 "Comp_Off"; +VAL_TABLE_ Southern_Northern 3 "Fault" 2 "Northern" 1 "Southern" 0 "Invalid"; +VAL_TABLE_ PsngrFrntDetct_D_Actl 3 "Unknown" 2 "Empty" 0 "Faulty" 1 "Occupied"; +VAL_TABLE_ Normal_Mode1_2 3 "Undefined" 2 "Mode2" 1 "Mode1" 0 "Normal_Mode"; +VAL_TABLE_ LaActvAvail 3 "LKA_LCA_LDW_Avail" 2 "LCA_LKA_Avail_LDW_Suppress" 1 "LCA_LKA_Suppress_LDW_Avail" 0 "LCA_LKA_LDW_Suppress"; +VAL_TABLE_ LA_NotDenied 1 "LA_Denied" 0 "LA_Not_Denied"; +VAL_TABLE_ HandsOn_Off 1 "Hands_Off" 0 "Hands_On"; +VAL_TABLE_ Smooth_Quick 1 "Quick" 0 "Smooth"; +VAL_TABLE_ None_Low_Med_High 3 "High" 2 "Medium" 1 "Low" 0 "None"; +VAL_TABLE_ LdwActvStats 7 "LDW_Suppress_Right_Left" 6 "Not_Used2" 5 "LDW_Suppress_Right" 4 "LDW_Warning_Right" 3 "LDW_Suppress_Left" 2 "LDW_Warning_Left" 1 "LDW_DemoVibration" 0 "LDW_Idle"; +VAL_TABLE_ Fault_3FF 1023 "Fault"; +VAL_TABLE_ EngStrtStop 15 "Unused_7" 14 "Unused_6" 13 "Unused_5" 12 "Unused_4" 11 "Unused_3" 10 "Unused_2" 9 "Unused_1" 8 "Force_Pull_Down" 7 "Force_Pull_Up" 6 "Pull_Down_Inhibit_Pull_Up" 5 "Inhibit_Change" 4 "Inhibit_Pull_Up" 3 "Pull_Down" 2 "Inhibit_Pull_Down" 1 "Pull_Up" 0 "No_Request"; +VAL_TABLE_ TrnMde_D_Rq 15 "Unused_4" 14 "Unused_3" 13 "Unused_2" 12 "Unused_1" 11 "InOutLckedHydStandby" 10 "InputOutputLocked" 9 "OutputLockedHydStandby" 8 "OutputLocked" 7 "ReducedOutTqHydStandby" 6 "Reduced_Output_Torque" 5 "TransInTqHydStandby" 4 "Transmit_Input_Torque" 3 "ActNeutralHydStandby" 2 "Active_Neutral" 1 "NeutralHydraulicStdby" 0 "Neutral"; +VAL_TABLE_ Fault_F 15 "Fault"; +VAL_TABLE_ Fault_1F 31 "Fault"; +VAL_TABLE_ TmsStatRqDsply 15 "Reserved4" 14 "Reserved3" 13 "Reserved2" 12 "Crawl_Mode_4LOW_Reqd" 11 "Economy_Mode_Select" 10 "ModeChangeNotAvailable" 9 "Terrain_Sys_Not_Avail" 8 "Terrain_System_Fault" 7 "Mode_Change_InProgress" 6 "Dynamics_Mode_Select" 5 "Rock_Crawl_Mode_Select" 4 "Sand_Mode_Select" 3 "Mud_Ruts_Mode_Select" 2 "Low_Mu_Mode_Select" 1 "Special_Modes_Off" 0 "No_Message"; +VAL_TABLE_ LockInhibit 1 "Inhibit" 0 "No_Inhibit"; +VAL_TABLE_ DieslFuelBio_B_ActlDrv 1 "Biodiesel_User" 0 "Non_Biodiesel_User"; +VAL_TABLE_ Invalid_FFF 4095 "Invalid"; +VAL_TABLE_ ParkAid_Chime 15 "Zone15_Chime" 14 "Zone14_Chime" 13 "Zone13_Chime" 12 "Zone12_Chime" 11 "Zone11_Chime" 10 "Zone10_Chime" 9 "Zone9_Chime" 8 "Zone8_Chime" 7 "Zone7_Chime" 6 "Zone6_Chime" 5 "Zone5_Chime" 4 "Zone4_Chime" 3 "Zone3_Chime" 2 "Zone2_Chime" 1 "Zone1_Chime" 0 "No_Chime"; +VAL_TABLE_ Shed_Feature_Group_ID 16 "PtcHeater" 14 "HtdMirr" 13 "HvacRearBlwr_Third" 12 "HvacRearBlwr_Second" 11 "HvacRearBlwr_First" 31 "All LSHED1 Features" 10 "Htd_Windscrn" 9 "SpltHtdBcklight_HtdMirr" 8 "HtdBcklight_HtdMirr" 7 "HtdCoolSeat_FrtDriver" 6 "HtdCoolSeat_FrtPass" 5 "HtdCoolSeat_RearPass" 4 "HtdCoolSeat_RearDriver" 3 "SmartTrlrTowBattCharge" 2 "Htd_StrWhl" 1 "Htd_Washer_Fluid" 0 "No_LSHED1_Features" 15 "Engine_Coolant_Fan"; +VAL_TABLE_ CoolantFanStepAct 31 "Unused7" 30 "Unused6" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 23 "Step23" 22 "Step22" 21 "Step21" 20 "Step20" 19 "Step19" 18 "Step18" 17 "Step17" 16 "Step16" 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 24 "Max_Fan_Speed_Req" 0 "Fan_Cmd_Off"; +VAL_TABLE_ Null_Cancel 1 "Cancel" 0 "Null"; +VAL_TABLE_ Veh_Lock_Requestor 31 "Unused8" 30 "Unused7" 29 "Unused6" 28 "Rgtm_Shutlock_Switch" 27 "Boundary_Alert" 26 "Transit_Vehicle_Relock" 25 "Transit_Cargo_Relock" 24 "Transit_Ajar_Lock" 23 "Diagnostics" 22 "Console_Lock" 21 "Child_Lock" 20 "Double_Lock" 19 "Passive_Pasenger" 18 "Passive_Driver" 17 "Slam_Lock_Protect" 16 "SYNC" 15 "Passport" 14 "Passive_Smart_Unlock" 13 "Autorelock" 12 "RemoteStart" 0 "Null" 1 "Autolock" 11 "Smart_Unlock" 10 "Sliding_Door" 9 "Passive" 8 "Remote" 7 "Programming" 6 "Powerslide" 5 "Keypad" 4 "Key_Cylinder" 3 "Interior" 2 "Auto_Unlock"; +VAL_TABLE_ EPAS_FAILURE 3 "SERVICE_POWER_STEERING_NOW" 2 "SERVICE_POWER_STEERING" 1 "POWER_STRG_ASSIST_FAULT" 0 "EPAS_OK_NO_MESSAGE"; +VAL_TABLE_ Perimeter_Alarm_Mode 3 "Activated" 2 "Armed" 1 "Prearmed" 0 "Disarmed"; +VAL_TABLE_ Invalid_FFFF 65535 "Invalid"; +VAL_TABLE_ FdaStat_D_Dsply 7 "Undefined_3" 6 "Undefined_2" 5 "Undefined_1" 4 "Distance_Alert_Unavailable" 3 "DistanceAlertUnavail_Low" 2 "DistanceAlertUnavailActive" 1 "Distance_Alert_Available" 0 "Distance_Alert_Off"; +VAL_TABLE_ OilPressureWarning 1 "Low_Pressure_Lamp_On" 0 "Normal_Pressure_Lamp_Off"; +VAL_TABLE_ MyKey_KeyTypeChangeReq 3 "Search_PE_BackupSlot" 2 "Clear_All_MyKeys" 1 "Request_New_MyKey" 0 "None"; +VAL_TABLE_ MyKey_Key_Count 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero" 15 "Invalid" 14 "Unlimited"; +VAL_TABLE_ GearEngag_D_Actl 7 "Undefined" 6 "Fwd_Clutch_Fully_Engaged" 5 "Neutral_Idle" 4 "Disengaged_to_Neutral_Idle" 3 "Disengaged_to_Neutral_Park" 2 "Engagement_in_Progress" 1 "InitializeFwdClutchEngagmt" 0 "Park_Neutral"; +VAL_TABLE_ Shed_Level_Req 7 "Unused_2" 6 "Loads_On" 5 "SHED_ENG_OFF" 4 "SOON_ENG_OFF" 3 "SHED2_CONTIN" 2 "SHED2_TRANS" 1 "SHED1" 0 "NO_SHED"; +VAL_TABLE_ BpedMove_D_Actl 3 "Unknown" 2 "DriverApplyingBrakePedal" 1 "NoAutonomousBrkPdlMovement" 0 "AutonomousBrkPedalMove"; +VAL_TABLE_ Eastern_Western 0 "Invalid" 1 "Eastern" 2 "Western" 3 "Fault"; +VAL_TABLE_ EATC_Temp_Digit3 2 "_5" 1 "_0" 0 "OFF"; +VAL_TABLE_ EATC_Units 2 "Fahrenheit" 1 "Celsius" 0 "Off"; +VAL_TABLE_ BattTracOffFst_D_Actl 3 "Unexpected_Contactor_Open" 2 "Restraints_Impact_Event" 1 "Interlock_Open" 0 "Normal"; +VAL_TABLE_ Invalid_1FF 511 "Invalid"; +VAL_TABLE_ ChargeMode 7 "Undefined_2" 6 "Undefined_1" 5 "Battery_Identify" 4 "Battery_Refresh" 3 "SlowRegenAllowNoDischarge" 2 "Fast_Regen_Allowed" 1 "Slow_Regen_Allowed" 0 "Conventional_Charging"; +VAL_TABLE_ Unknown_FFFE_Invalid_FFFF 65535 "Invalid" 65534 "Unknown"; +VAL_TABLE_ SAPPAngleControlStat5 1 "StrgColTorqueExceed_EAROn" 0 "ExternalSigContentOKforEAC"; +VAL_TABLE_ Closed_Open_Active_Fault 3 "Fault" 2 "Active" 1 "Open" 0 "Closed"; +VAL_TABLE_ SAPPAngleControlStat2 1 "Rel_ExtSteeringAngleReqx" 0 "NoRel_ExtSteeringAngleReqx"; +VAL_TABLE_ SAPPAngleControlStat3 1 "EARactiveNoReverseEngage" 0 "ExternalSigContentOKforEAC"; +VAL_TABLE_ RstrnImpactEvntStatus 7 "Invalid" 6 "Not_Used_4" 5 "Threshold_2_Exceeded" 4 "Not_Used_3" 3 "Threshold_1_Exceeded" 2 "Not_Used_2" 1 "Not_Used_1" 0 "Normal"; +VAL_TABLE_ EDRTriggerEvntSync 1 "Threshold_Exceeded" 0 "Normal"; +VAL_TABLE_ EngTeColdPrtct_D_Stats 3 "Engine_Warm_RdcPwr" 2 "OK_to_Drive" 1 "Engine_Warm_PlsWait" 0 "Normal_Operation"; +VAL_TABLE_ HILL_DESC_MC 7 "Fault_Detected" 6 "Cooling_Down" 5 "Abort_Apply_Brakes" 4 "Active" 3 "Disabled" 2 "Enabled" 1 "Off_Road" 0 "Normal"; +VAL_TABLE_ Closed_Ajar 1 "Ajar" 0 "Closed"; +VAL_TABLE_ CADS_Autio_Mute 7 "Unknown" 6 "Attenuation_6" 5 "Attenuation_5" 4 "Attenuation_4" 3 "Attenuation_3" 2 "Attenuation_2" 1 "Attenuation_1" 0 "No_Attenuation_of_Audio"; +VAL_TABLE_ Quality_Factor 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_TABLE_ Null_Day_Night 3 "NotUsed" 2 "Night" 1 "Day" 0 "Null"; +VAL_TABLE_ Null_Flash_High 3 "NotUsed" 2 "High" 1 "Flash_to_Pass" 0 "Null"; +VAL_TABLE_ GearPos_D_Actl 15 "Unknown" 14 "Reverse" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Tenth" 9 "Ninth" 8 "Eighth" 7 "Seventh" 6 "Sixth" 5 "Fifth" 4 "Fourth" 3 "Third" 2 "Second" 1 "First" 0 "Neutral"; +VAL_TABLE_ OffOn_SlowFast_Flash 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_TABLE_ AwdStat_D_RqDsply 31 "NotUsed9" 30 "NotUsed8" 29 "NotUsed7" 28 "To_Engage_4x4_Release_Aped" 27 "To_Engage_4x4_Slow_To_3MPH" 26 "Shift_To_Neutral" 25 "Lkr_Mode_Unavail_TMS" 24 " _4x4_Mode_Unavail_TMS" 23 "Out_of_4Low_Crawl" 22 "AWD_PTU_Oil_Changed" 21 "Change_AWD_PTU_Oil" 20 "Neutral_Tow_Disabled" 19 "Neutral_Tow_Enabled" 18 "AWD_OFF" 17 "_4x4_Off_Road_Speed" 16 "_4x4_Extreme_Off_Road_Mode" 15 "_4x4_Exiting_Off_Road" 14 "_4x4_Off_Road_Mode" 10 "_4x4_Locked_Temporarily" 9 "Shift_In_Progress" 13 "Blocked_Shift_Assist" 12 "_4x4_Auto_Restored" 11 "_4x4_Disabled_Temporarily" 7 "Out_of_4Low__Neutral" 6 "Out_of_4Low__Brake" 5 "Out_of_4Low__Speed" 4 "Into_4Low__Clutch" 3 "Into_4Low__Neutral" 2 "Into_4Low__Brake" 1 "Into_4Low__Speed" 0 "Normal__No_Message" 8 "Out_of_4Low__Clutch"; +VAL_TABLE_ AngleReached 1 "RequestedAngleNotReached" 0 "RequestedAngleCanBeReached"; +VAL_TABLE_ WhlDir 3 "Failed" 2 "Unknown" 1 "Backward" 0 "Forward"; +VAL_TABLE_ VehVLimStat_D_Actl 7 "Undefined_3" 6 "Undefined_2" 5 "Undefined_1" 4 "ASL_Fault_Condition" 3 "Active_and_Limiting" 2 "Active_but_Not_Limiting" 1 "Standby" 0 "Off"; +VAL_TABLE_ Unknown_Fault_1FE_1FF 511 "Fault" 510 "Unknown"; +VAL_TABLE_ Fault_NoFault 1 "Fault" 0 "No_Fault"; +VAL_TABLE_ TrnIpcDsplyMde_D_Actl 7 "Manual_3" 6 "Manual_2" 5 "Manual_1_Low" 4 "Sport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_TABLE_ TrnIpcDsplyMde_D_Stat 3 "Reserved_Blank_No_Display" 2 "Flash" 1 "On" 0 "Blank_No_Display"; +VAL_TABLE_ TrnIpcDsplyGear_D_Actl 15 "No_Gear_Selected" 14 "_14th_Gear" 13 "_13th_Gear" 12 "_12th_Gear" 11 "_11th_Gear" 10 "_10th_Gear" 9 "_9th_Gear" 8 "_8th_Gear" 7 "_7th_Gear" 6 "_6th_Gear" 5 "_5th_Gear" 4 "_4th_Gear" 3 "_3rd_Gear" 2 "_2nd_Gear" 1 "_1st_Gear" 0 "Neutral"; +VAL_TABLE_ TerrMde_D_Actl 7 "Fail_Safe_Default" 6 "Dynamic_Mode" 5 "Rock_Crawl_Mode" 4 "Mud_Ruts_Mode" 3 "Sand_Mode" 2 "Undefined" 1 "Low_Mu_Mode" 0 "Special_Operating_Mode_Off"; +VAL_TABLE_ TerrMdeChng_D_Rdy 7 "Fault" 6 "Undefined_2" 5 "Undefined_1" 4 "ModeUnavailDrInputRqd" 3 "SpOpModes_NotSupported" 2 "ModeUnavailDynamicCond" 1 "Module_In_Initialization" 0 "Mode_Change_Available"; +VAL_TABLE_ Unknown_Fault_FFFE_FFFF 65535 "Fault" 65534 "Unknown"; +VAL_TABLE_ Invalid_FFFFFF 16777215 "Invalid"; +VAL_TABLE_ AutoParkSpdExitCond 1 "SpeedLimitExceededEAROn" 0 "ExternalSigContentOKforEAC"; +VAL_TABLE_ EngOilLvlDsply_D_Rq 15 "EngOil_LevelSys_CheckFault" 14 "Reserved_2" 13 "Reserved_1" 12 "Conditions_Unsuitable" 11 "Dipstick_Below_Minimum" 10 "Dipstick_Above_Maximum" 9 "Dipstick_Minimum" 8 "Dipstick_12_5_MinMaxRange" 7 "Dipstick_25_MinMaxRange" 6 "Dipstick_37_5_MinMaxRange" 5 "Dipstick_50_MinMaxRange" 4 "Dipstick_62_5_MinMaxRange" 3 "Dipstick_75_MinMaxRange" 2 "Dipstick_87_5_MinMaxRange" 1 "Dipstick_Maximum_Displayed" 0 "No_Message"; +VAL_TABLE_ HdcMde_D_Actl 7 "Fault" 6 "Temporarily_Unavailable" 5 "NotEnabled_WrongGearSel" 4 "NotEnabled_SpdLimitExceed" 3 "Active_Braking" 2 "Not_Active_Braking" 1 "Off" 0 "Undefined"; +VAL_TABLE_ GearLvrPos_D_Actl 15 "Fault" 14 "Unknown_Position" 13 "Undefined_Treat_as__Fault" 12 "Undefined_Treat_as_Fault" 11 "sixth" 10 "fifth" 9 "fourth" 8 "third" 7 "second" 6 "first" 5 "Low" 4 "Sport_DriveSport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_TABLE_ FcwMsgTxt_D_Rq 7 "Undefined_3" 6 "Undefined_2" 5 "Low_Visibility" 4 "Unavailable_DueTo_LowSpeed" 3 "Available" 2 "Unavailable" 1 "Off" 0 "No_Text"; +VAL_TABLE_ FcwSens_B_Actl 3 "FCW_Sensitivity_3" 2 "FCW_Sensitivity_2" 1 "FCW_Sensitivity_1" 0 "Not_Used"; +VAL_TABLE_ LastSettind_DefaultOn 1 "Default_On" 0 "Last_Setting"; +VAL_TABLE_ EngTurboMde_D_Actl 3 "Fault" 2 "One_Turbo_Active" 1 "Two_Turbos_Active" 0 "Initializing"; +VAL_TABLE_ EngPullUpPullDown 15 "Undefined_7" 14 "Undefined_6" 13 "Undefined_5" 12 "Undefined_4" 8 "Force_Pull_Down" 7 "Force_Pull_Up" 6 "PullDown_Inhibit_PullUp" 5 "Inhibit_Change" 4 "Inhibit_Pull_Up" 3 "Pull_Down" 2 "Inhibit_Pull_Down" 1 "Pull_Up" 0 "No_Request" 11 "Undefined_3" 10 "Undefined_2" 9 "Undefined_1"; +VAL_TABLE_ EngMde_D_Rq 8 "VSC_Sets_Speed_Type_3" 7 "VSC_Sets_Speed_Type_2" 6 "VSC_Sets_Torque_Type_2" 5 "Dependability_Shutdown" 4 "Dependability_Follow" 3 "Start" 2 "VSC_Sets_Torque_Type_1" 1 "VSC_Sets_Speed_Type_1" 0 "Off" 15 "Undefined_7" 14 "Undefined_6" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Undefined_2" 9 "Undefined_1"; +VAL_TABLE_ DrvHdcMsg_D_Rq 7 "Undefined" 6 "Speed_too_High" 5 "Temporarily_Unavailable" 4 "System_Fault" 3 "Select_Gear" 2 "Off" 1 "On" 0 "No_Message"; +VAL_TABLE_ CmbbBrkPrchg_B_Rq 3 "Undefined" 2 "Level_2_PreCharge_Request" 1 "Level_1_PreCharge_Request" 0 "No_PreCharge_Request"; +VAL_TABLE_ CmbbBaSens_D_Rq 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Normal"; +VAL_TABLE_ CcStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "Active" 4 "Active_Que_Assist" 3 "Standby" 2 "Standby_Denied" 1 "Denied" 0 "Off"; +VAL_TABLE_ CadsAudioMute_D_Rq 3 "Reserved" 2 "Partial_Audio_Mute" 1 "Full_Audio_Mute" 0 "No_Audio_Mute"; +VAL_TABLE_ BpedDrvAppl_D_Actl 3 "_Not_Allowed" 2 "Driver_Braking" 1 "Driver_Not_Braking" 0 "Not_Allowed"; +VAL_TABLE_ AslIconDsply_D_Rq 3 "On_Passive_Overridden" 2 "On_Active" 1 "On_Passive" 0 "Off"; +VAL_TABLE_ Unknown_Fault_3E_3F 63 "Fault" 62 "Unknown"; +VAL_TABLE_ AccWarn_D_Dsply 3 "BrakeReleaseWarn_In_StopMd" 2 "Brake_Capacity_Warning" 1 "Cancel_Warning" 0 "No_Warning"; +VAL_TABLE_ AccTrgDist2_D_Dsply 15 "DIST_ACTIVE_13_Farthest" 14 "DIST_ACTIVE_12" 13 "DIST_ACTIVE_11" 12 "DIST_ACTIVE_10" 11 "DIST_ACTIVE_9" 10 "DIST_ACTIVE_8" 9 "DIST_ACTIVE_7" 8 "DIST_ACTIVE_6" 7 "DIST_ACTIVE_5" 6 "DIST_ACTIVE_4" 5 "DIST_ACTIVE_3" 4 "DIST_ACTIVE_2" 3 "DIST_ACTIVE_1_Closest" 2 "DIST_ACTIVE_No_Target" 1 "DIST_STANDBY" 0 "DIST_OFF"; +VAL_TABLE_ AccTGap_D_Dsply 7 "Undefined_2" 6 "Undefined_1" 5 "Time_Gap_5" 4 "Time_Gap_4" 3 "Time_Gap_3" 2 "Time_Gap_2" 1 "Time_Gap_1" 0 "Not_Used"; +VAL_TABLE_ AccEngStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "ACCSoonCancel_due_Low_Spd" 4 "Shift_Down_Recommendation" 3 "Shift_Up_Recommendation" 2 "ACCNotAllowedToBeActivated" 1 "ACCStandby_due_Auto_Cancel" 0 "Normal_Operation"; +VAL_TABLE_ NotPressed_Pressed 1 "Pressed" 0 "Not_Pressed"; +VAL_TABLE_ TrnGear_D_RqDrv 31 "Fault" 30 "NotUsed_25" 29 "NotUsed_24" 28 "NotUsed_23" 27 "NotUsed_22" 26 "Return_to_Park" 25 "NotUsed_20" 24 "NotUsed_19" 23 "NotUsed_18" 22 "NotUsed_17" 21 "Return_To_Park" 20 "NotUsed_15" 19 "NotUsed_14" 18 "NotUsed_13" 17 "NotUsed_12" 16 "Manual" 15 "Not_Used11" 14 "Not_Used10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "Drive" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "Neutral" 3 "NotUsed_1" 2 "Reverse" 1 "Park" 0 "No_Gear"; +VAL_TABLE_ Open_Close 1 "Close" 0 "Open"; +VAL_TABLE_ OpenCloseRetainUndef 3 "Undefined" 2 "Retain" 1 "Close" 0 "Open"; +VAL_TABLE_ DasWarn 3 "Undefined" 2 "Warning_Level_2" 1 "Warning_Level_1" 0 "No_Warning"; +VAL_TABLE_ DasAlert 5 "Alertness_Level_5" 4 "Alertness_Level_4" 3 "Alertness_Level_3" 2 "Alertness_Level_2" 1 "Alertness_Level_1" 0 "Undefined"; +VAL_TABLE_ DasStat 3 "Available" 2 "Unavailable_Other" 1 "Feedback_due_to_Speed" 0 "Off"; +VAL_TABLE_ No_Crank_Req 1 "Crank_Request" 0 "No_Crank_Request"; +VAL_TABLE_ DrvSlipCtlMde_D_Rq 3 "App_Specific_Off_Mode_3" 2 "App_Specific_Off_Mode_2" 1 "App_Specific_Off_Mode_1" 0 "Default_Mode"; +VAL_TABLE_ AwdOffRoadMode 3 "Invalid" 2 "Extreme_Off_Road" 1 "Off_Road" 0 "Normal_Mode"; +VAL_TABLE_ NotQuiet_Quiet 1 "Quiet" 0 "Not_Quiet"; +VAL_TABLE_ Normal_AdaptiveCruise 1 "Adaptive_Cruise" 0 "Normal_Cruise"; +VAL_TABLE_ Remote_Device_Feedback 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "Shutdown" 3 "Running" 2 "Starting" 1 "Acknowledge" 0 "Null"; +VAL_TABLE_ TrnManShif_D_IndDrv 7 "Undefined_3" 6 "Undefined_2" 5 "Shift_to_Neutral" 4 "Downshift_Recommendation" 3 "Upshift_Warning" 2 "Upshift_Performance" 1 "Upshift_Fuel_Economy" 0 "No_Indication"; +VAL_TABLE_ Unlock_Lock 1 "Locked" 0 "Unlock"; +VAL_TABLE_ DieslPrtc_D_RqDsply 7 "Unused_2" 6 "Unused_1" 5 "DPF_SOOT_Level3_Blocked" 4 "DPFSootLvl2_SevereOverload" 3 "DPFRegen_ExhFilterComplete" 2 "DPFRegen_CleanExhFilter" 1 "DPF_Soot_Level1_Overloaded" 0 "DPF_OK_Normal_Operation"; +VAL_TABLE_ PE_BackupSlot_Status 3 "No_Valid_FOB_In_Slot" 2 "MyKey_FOB_In_Slot" 1 "Standard_FOB_In_Slot" 0 "Null"; +VAL_TABLE_ Unknown_Fault_FFE_FFF 4095 "Fault" 4094 "Unknown"; +VAL_TABLE_ Unknown_Fault_1FFE_1FFF 8191 "Fault" 8190 "Unknown"; +VAL_TABLE_ TrnCnvtClu_D_Actl 3 "Transition_or_Micro_Slip" 2 "Lock_Up_Fixed" 1 "Lock_Up_Slip" 0 "No_Lock_Up"; +VAL_TABLE_ InhibitNoinhibit 1 "Inhibit" 0 "No_Inibit"; +VAL_TABLE_ DisableEnable 1 "Enable" 0 "Disable"; +VAL_TABLE_ Unknown_Fault_7FFE_7FFF 32767 "Fault" 32766 "Unknown"; +VAL_TABLE_ Side_Detect_Sn_State 3 "Second_Warning_Audio" 2 "System_Failure" 1 "Blocked" 0 "Clear"; +VAL_TABLE_ Litval_values 255 "Invalid" 254 "Unknown" 5 "Day" 4 "Twilight_4" 3 "Twilight_3" 2 "Twilight_2" 1 "Twilight_1" 0 "Night"; +VAL_TABLE_ Dimming_Lvl 255 "Invalid" 254 "Unknown" 18 "Day_6" 17 "Day_5" 16 "Day_4" 15 "Day_3" 14 "Day_2" 13 "Day_1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; +VAL_TABLE_ EngStrtStop_B_SrcChtLo 1 "Eng_StartStop_for_CHT_Low" 0 "Not_Requested"; +VAL_TABLE_ EngStrtStop_B_SrcChtHi 1 "Eng_StartStop_for_CHT_Hi" 0 "Not_Requested"; +VAL_TABLE_ EngDiag_D_RqHtrn 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NoUsed1" 3 "Eng_Diag_Cstdn" 2 "Eng_Diag_Run" 1 "Eng_Diag_Crank" 0 "Eng_Diag_Normal"; +VAL_TABLE_ NotOperating 1 "Operating" 0 "Not_Operating"; +VAL_TABLE_ CamraStat 3 "FrtCam_TempUnavailOther" 2 "FrtCam_TempUnavailVisibile" 1 "Front_Camera_Service_Reqd" 0 "Front_Camera_OK"; +VAL_TABLE_ EngPtoMde_D_Actl 7 "Undefined" 6 "Split_Shaft_Stationary" 5 "Not_Used_2" 4 "PTO_Mobile" 3 "Not_Used_1" 2 "PTO_Stationary" 1 "BCP" 0 "Off"; +VAL_TABLE_ ManRgen_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "CustInitManExhFilterClean" 0 "No_Customer_Request"; +VAL_TABLE_ Remote_Start_Status 3 "Invalid" 2 "Unknown" 1 "Remote" 0 "Null"; +VAL_TABLE_ Lock_Subld 15 "Unused7" 14 "Unused6" 13 "Unused5" 12 "Unused4" 11 "Unused3" 10 "Unused2" 9 "Unused1" 8 "Customer_8" 7 "Customer_7" 6 "Customer_6" 5 "Customer_5" 4 "Customer_4" 3 "Customer_3" 2 "Customer_2" 1 "Customer_1" 0 "Null"; +VAL_TABLE_ Brake_Fluid 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; +VAL_TABLE_ Unknown_Invalid_FE_FF 255 "Invalid" 254 "Unknown"; +VAL_TABLE_ Invalid_FF 255 "Invalid"; +VAL_TABLE_ NotLow_Low 1 "Low" 0 "Not_Low"; +VAL_TABLE_ Disabled_Enabled_Status 2 "Status" 3 "NotUsed" 1 "Enabled" 0 "Disabled"; +VAL_TABLE_ Key_In_Ignition_Status 1 "In" 0 "Out"; +VAL_TABLE_ Ignition_Status 0 "Unknown" 1 "Off" 15 "Invalid" 8 "Start" 4 "Run" 2 "Accessory"; +VAL_TABLE_ Disabled_Enabled_Faulted 3 "Faulted" 2 "Unused" 1 "Enabled" 0 "Disabled"; +VAL_TABLE_ Disabled_Enabled_NoSupport 2 "Unused" 3 "Not_Supported" 1 "Enabled" 0 "Disabled"; +VAL_TABLE_ Unknown_Fault_FE_FF 255 "Fault" 254 "Unknown"; +VAL_TABLE_ Null_Unlock 1 "Unlock" 0 "Null"; +VAL_TABLE_ Null_Active 1 "Active" 0 "Null"; +VAL_TABLE_ HsaStat_D_Actl 7 "Faulty" 6 "FaultyWithDriverIndication" 5 "SlowRelease" 4 "FastRelease" 3 "ActiveBrakePedalReleased" 2 "ActiveBrakePedalPressed" 1 "FindingGradient" 0 "Inactive"; +VAL_TABLE_ Off_Auto_Manual 3 "Undefined" 2 "Manual" 1 "Automatic" 0 "Off"; +VAL_TABLE_ HsaStat_D_Dsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "NotAvailable" 3 "SlowReleaseWithChime" 2 "SlowReleaseWithoutChime" 1 "Active" 0 "Inactive"; +VAL_TABLE_ EngMsgTxt_D_Rq 3 "Undefined_2" 2 "Undefined_1" 1 "Power_Reduced_to_LowerTemp" 0 "No_Message"; +VAL_TABLE_ PassRstrnInd_Req 3 "ABOnNotIllum_OffNotIllum" 2 "AirbagOnNot_Illum_OffIllum" 1 "AirbagOn_Illum_OffNotIllum" 0 "AirbagOn_Illum_Off_Illum"; +VAL_TABLE_ RearDiffLckMsg_D_Rq 7 "Locker_Disabled" 6 "Locker_Enabled" 5 "Locker_Accel_Pedal" 4 "Speed4" 3 "Speed3" 2 "Spee2" 1 "Speed1" 0 "Normal__No_Message "; +VAL_TABLE_ GPS_Compass_dirctn 7 "NorthWest" 6 "West" 5 "SouthWest" 4 "South" 3 "SouthEast" 2 "East" 1 "NorthEast" 0 "North"; +VAL_TABLE_ GPS_Actual_Infer 1 "Inferred_Position" 0 "Actual_Postition"; +VAL_TABLE_ DrvHdcWarnInfo_D_Rq 3 "Undefined" 2 "Lamp_On_Continuously" 1 "Lamp_Flashing" 0 "Lamp_Off_Continuously"; +VAL_TABLE_ DieslPrtcRgen_D_Actl 3 "Undefined" 2 "Regen_Level_2" 1 "Regen_Level_1" 0 "No_regen"; +VAL_TABLE_ Off_On 1 "On" 0 "Off"; +VAL_TABLE_ CcMde_D_Actl 7 "TapDownWaiting" 6 "TapUpWaiting" 5 "Resuming_Low" 4 "Resuming_High" 3 "Decelerating" 2 "Accelerating" 1 "Keeping_Speed" 0 "Not_Active"; +VAL_TABLE_ InactiveActive 1 "Active" 0 "Inactive"; +VAL_TABLE_ ManRgenTxt_D_RqDsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Cleaning_Aborted_Stopped" 3 "Cleaning_Completed" 2 "Cleaning_In_Progress" 1 "Cleaning_Allowed" 0 "Cleaning_Not_Allowed"; +VAL_TABLE_ Fault_FFFF 65535 "Fault"; +VAL_TABLE_ Fault_7F 127 "Fault"; +VAL_TABLE_ EngOilLvlWarn_D_Rq 7 "Undefined_3" 6 "Undefined_2" 5 "Engine_Oil_Monitor_Fault" 3 "Engine_Oil_High" 2 "Engine_Oil_Critical_Low" 1 "Engine_Oil_Low" 0 "No_Message" 4 "Engine_Oil_Critical_High"; +VAL_TABLE_ UreaQltySys_D_RqDsply 7 "Undefined" 6 "ZZ_Overrides" 5 "EngineIdled" 4 "Engine_Idle_Upon_Refuel" 3 "SPEED_LIMITED_to_YY_mph" 2 "YY_MPH_MAX_UPON_Restart" 1 "CONTAMINATED_ExhFluid" 0 "NoQualityProblem"; +VAL_TABLE_ Unknown_Invalid_1E_1F 31 "Invalid" 30 "Unknown"; +VAL_TABLE_ Unknown_Invalid_3FFE_3FFF 16383 "Invalid" 16382 "Unknown"; +VAL_TABLE_ NoYes 1 "Yes" 0 "No"; +VAL_TABLE_ AwdRnge_D_Actl 7 "Unknown" 6 "High_Range_2wd" 5 "High_Range_Auto" 4 "High_Range_Locked" 3 "Neutral" 2 "Low_Range_2wd" 1 "Low_Range_Auto" 0 "Low_Range_Locked"; +VAL_TABLE_ AwdLck_D_Stat 9 "Undefined" 8 "Under_External_Torque_Ctrl" 7 "Torque_Limited_by_Cmd" 6 "Fully_Locked_by_Cmd" 5 "Disabled" 4 "Warning" 3 "Fault" 2 "Inactive" 1 "Completely_Opened_by_Cmd" 0 "OK"; +VAL_TABLE_ Unknown_Fault_3FE_3FF 1023 "Fault" 1022 "Unknown"; +VAL_TABLE_ LockSwStat 3 "Invalid" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_TABLE_ Null_Override 1 "Override" 0 "Null"; +VAL_TABLE_ Off_On_Flash 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_TABLE_ immoTargetStatCoding 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "DISABLED_RESET " 2 "ENABLED_NONMOTIVE_START" 1 "ENABLED_MOTIVE_START" 0 "DISABLED"; +VAL_TABLE_ BeltBuckle 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_TABLE_ RILReqCoding 3 "Not_Used" 2 "Plant_Mode" 1 "On" 0 "Off"; +VAL_TABLE_ Update_Bit 1 "Fresh_data" 0 "Unchanged_data"; +VAL_TABLE_ Running_Board 3 "Unused" 2 "Manually_Deployed" 1 "All_Enabled" 0 "All_Disabled"; +VAL_TABLE_ HudFlashRate 3 "Unused" 2 "Flash_4Hz_50Prct_DutyCycle" 1 "On" 0 "Off"; +VAL_TABLE_ Turn_Seq 3 "Seq" 2 "On" 1 "Off" 0 "Null"; +VAL_TABLE_ immoTargetCmdCoding 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "TARGET1_IDBLOCK2" 2 "TARGET1_IDBLOCK1" 1 "CHALLENGE" 0 "IDLE"; +VAL_TABLE_ immoSubTargetCmdCoding 7 "Unused3" 6 "Unused2" 5 "ECHO_TARGET1_IDBLOCK2" 4 "Unused1" 3 "RQST_TARGET1_IDBLOCK2" 2 "RQST_TARGET1_IDBLOCK1" 1 "RESPONSE" 0 "IDLE"; +VAL_TABLE_ immoCtrlCmdCoding 0 "IDLE" 1 "MOTIVE_START_RQST" 2 "NONMOTIVE_START_RQST" 3 "RQST_TARGET1_IDBLOCK1" 4 "RQST_TARGET1_IDBLOCK2" 5 "Unused" 6 "ECHO_TARGET1_IDBLOCK2" 7 "SHUTDOWN"; +VAL_TABLE_ Rvc_Zoom 7 "Unknown" 6 "Invalid" 5 "Zoom_Level_V" 4 "Zoom_Level_IV" 3 "Zoom_Level_III" 2 "Zoom_Level_II" 1 "Zoom_Level_I" 0 "Off"; +VAL_TABLE_ NotPark 1 "Park" 0 "Not_Park"; +VAL_TABLE_ Electric_EOH 1 "Electric_Over_Hydraulic" 0 "Electric"; +VAL_TABLE_ PersOptIn 1 "OPTED_IN" 0 "NOT_OPTED_IN"; +VAL_TABLE_ PersonalSetUp 3 "Non_Moveable_Person" 2 "Moveable_Person" 1 "Vehicle" 0 "Factory"; +VAL_TABLE_ Full_Limited 1 "Limited" 0 "Full"; +VAL_TABLE_ NoConflict_Conflict 1 "Conflict" 0 "No_Conflict"; +VAL_TABLE_ Assoc_Confirm 0 "None" 7 "Associate" 6 "Keycode_Rejected" 5 "Keycode_Accepted" 4 "In_Progress" 3 "Erase" 2 "Duplicate" 1 "Disassociate"; +VAL_TABLE_ Pers1_4 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_TABLE_ Null_Query 7 "Unused_2" 6 "Unused_1" 5 "Copy" 4 "Restore" 3 "Upload" 2 "Set" 1 "Query" 0 "Null"; +VAL_TABLE_ EngExhBrkMde_D_Actl 6 "ExhBrkDisable_NoError" 5 "ExhBrkActive_AUTO" 4 "ExhBrkActive_ON" 3 "ExhBrkRequest_AUTO" 2 "ExhBrkRequest_ON" 1 "ExhBrkNoRequest_OFF" 0 "ExhBrkUnavailable_Error"; +VAL_TABLE_ UreaLvlTxt_D_RqDsply 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "System_Error" 10 "Engine_Idled_See_Manual" 9 "Engine_Idled_Upon_Refuel" 8 "Speed_Limited_To_XX_mph" 7 "XXmph_Max_Upon_Restart" 6 "Speed_Limited_To_YY_mph" 5 "YYmph_Max_Upon_Restart" 4 "SpdLimtd_YYmph_In_XXmiles" 3 "ExFlRange_XXMiles_ScndWarn" 2 "Exh_Fluid_Range_XX_Miles" 1 "Exh_Fluid_Under_Half_Full" 0 "Exh_Fluid_Over_Half_Full"; +VAL_TABLE_ RearDiffFalt_D_Stat 3 "Diff_Failed_Closed" 2 "Diff_Failed_Open" 1 "Fault_Non_Specific" 0 "No_Fault"; +VAL_TABLE_ CCOverridden 1 "Cruise_Overridden" 0 "Cruise_Req_Not_Overridden"; +VAL_TABLE_ Ign_Key_Device_Type 15 "Invalid" 14 "Unknown" 3 "Key_Not_Prgrm_Read_Failure" 2 "Key_In_Ign_My_Key" 1 "Key_In_Ign_Standard_Key" 0 "Key_Read_In_Progress"; +VAL_TABLE_ Off_No_Eff_Unknown_Invalid 3 "Invalid" 2 "Unknown" 1 "No_Effect" 0 "Off"; +VAL_TABLE_ Null_Out 1 "Out" 0 "Null"; +VAL_TABLE_ FUEL_SENSORS 1 "Dual_Sensors" 0 "Single_Sensor"; + + +BO_ 823 DTE_HPCMtoECG: 8 Vector__XXX + SG_ DteVehPwId_No_Actl : 47|5@0+ (1,0) [0|31] "unitless" GWM + SG_ DteVehEId_No_Actl : 39|8@0+ (1,0) [0|255] "unitless" GWM + SG_ DteVehEffId_No_Actl : 6|7@0+ (1,0) [0|127] "unitless" GWM + SG_ DteVeh_Pw_Actl : 31|8@0+ (50,0) [0|12750] "watts" GWM + SG_ DteVeh_Eff_Actl : 23|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" GWM + SG_ DteVeh_E_Actl : 15|8@0+ (100,0) [0|25500] "watt*hour" GWM + SG_ DteAcceptNew_B_Rq : 7|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 824 DTE_ECGtoHPCM: 8 GWM + SG_ DteCldTrlrOn_B_Stat : 51|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldTrlrOff_B_Stat : 52|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldTrip_L_Actl : 47|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX + SG_ DteCldTraffic_B_Stat : 53|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldTerrain_B_Stat : 54|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldRoute_B_Stat : 55|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldPayload_B_Stat : 16|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldId_No_Actl : 21|5@0+ (1,0) [0|31] "unitless" Vector__XXX + SG_ DteCldExtTe_B_Stat : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldExt_Eff_Actl : 39|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX + SG_ DteCldDrv_Eff_Actl : 31|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX + SG_ DteCldDcac_B_Stat : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DteCldClimt_Eff_Actl : 15|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX + SG_ DteCldBattULo_Eff_Actl : 7|8@0+ (10,-1000) [-1000|1550] "watt*hour/km" Vector__XXX + +BO_ 949 Tire_Pressure_Data_FD1: 8 GWM + SG_ Tire_Press_RR_ORR_Data : 39|16@0+ (1,0) [0|65533] "kilopascal" VDM + SG_ Tire_Press_LR_OLR_Data : 55|16@0+ (1,0) [0|65533] "kilopascal" VDM + SG_ Tire_Press_LF_Data : 7|16@0+ (1,0) [0|65533] "kilopascal" VDM + SG_ Tire_Press_RF_Data : 23|16@0+ (1,0) [0|65533] "kilopascal" VDM + +BO_ 1825 TesterPhysicalReqVDM_FD1: 64 GWM + SG_ TesterPhysicalReqVDM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" VDM + +BO_ 524 AWD_Torque_Data: 8 TCCM + SG_ PrplWhlTotTqRqMxAwd_No_Cs : 23|8@0+ (1,0) [0|255] "Unitless" ECM_Diesel + SG_ PrplWhlTot_Tq_RqMxAwd : 7|16@0+ (4,-131072) [-131072|131068] "Nm" ECM_Diesel + SG_ PrplWhlTotTqRqMxAwd_No_Cnt : 31|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel + +BO_ 740 PHEV_Battery_Data1_FD1: 8 GWM + SG_ BattAuxCnnct_B_Cmd : 53|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + +BO_ 1160 ECG_Data2_FD1: 8 GWM + SG_ DgtlCommPncReset_B_Req : 62|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DataMntrSustn_B_Rq : 63|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PwSustnRdata_B_RqTelem : 60|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 776 SmartChargingData_ECG_3: 8 GWM + SG_ ScMnSoc_Pc_RqCld : 55|7@0+ (1,0) [0|127] "percent" Vector__XXX + SG_ ScChrgrPwMax_Pw_RqCld : 39|12@0+ (50,0) [0|204700] "watts" Vector__XXX + SG_ ScLocPwId_No_RqCld : 43|3@0+ (1,0) [0|7] "unitless" Vector__XXX + SG_ PrcondEdit_D_RqCld : 10|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ GoTEditMnte_T_RqCld : 29|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ GoTEditHr_T_RqCld : 15|5@0+ (1,0) [0|29] "SED" Vector__XXX + SG_ ChrgToPcEdit_Pc_RqCld : 7|7@0+ (1,0) [0|125] "percent" Vector__XXX + SG_ AirAmb_Te_ActlCld : 23|10@0+ (0.25,-128) [-128|127.75] "degC" Vector__XXX + SG_ ScFreshDataEnbl_B_Rq : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ScEnbl_D_RqCld : 25|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 775 SmartChargingData_ECG_2: 8 GWM + SG_ ScDayOfWeekId_D_RqCld : 63|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ScLocSetId_No_RqCld : 10|3@0+ (1,0) [0|7] "unitless" Vector__XXX + SG_ ScLocRdius_L_RqCld : 55|7@0+ (100,0) [0|12700] "meter" Vector__XXX + SG_ ScChrgToPc_Pc_RqCld : 47|7@0+ (1,0) [0|127] "percent" Vector__XXX + SG_ ScChrgPrfl_No_RqCld : 23|24@0+ (1,0) [0|16777215] "unitless" Vector__XXX + SG_ ScChrgDurSet_D_RqCld : 12|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ScChrgDur_T_RqCld : 7|11@0+ (1,0) [0|2045] "minute" Vector__XXX + +BO_ 774 SmartChargingData_ECG_1: 8 GWM + SG_ ScLocLongPostv_B_RqCld : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ScLocLongFrct_An_RqCld : 35|20@0+ (1E-006,0) [0|1.048575] "degrees" Vector__XXX + SG_ ScLocLongDeg_An_RqCld : 63|8@0+ (1,0) [0|255] "degrees" Vector__XXX + SG_ ScLocLattPostv_B_RqCld : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ScLocLattFrct_An_RqCld : 23|20@0+ (1E-006,0) [0|1.048575] "degrees" Vector__XXX + SG_ ScLocLattDeg_An_RqCld : 15|7@0+ (1,0) [0|127] "percent" Vector__XXX + SG_ ScLocId_No_RqCld : 6|3@0+ (1,0) [0|7] "unitless" Vector__XXX + SG_ ScLocDelete_B_RqCld : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 811 APIM_Data_FD1: 8 GWM + SG_ DistToStopover_L_Actl : 31|16@0+ (0.1,0) [0|6553.4] "kilometer" Vector__XXX + SG_ StopoverType_D_Stat : 47|3@0+ (1,0) [0|0] "SED" Vector__XXX + SG_ ExtLghtDsply_D_Stat : 7|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ExtLghtRight_D_RqMnu : 11|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ AutoLghtOvrrd_B_RqDrv : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ExtLghtRear_D_RqMnu : 14|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ExtLghtLeft_D_RqMnu : 1|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ExtLghtFront_D_RqMnu : 4|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ GoTEditMnte_T_RqMnu : 63|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ GoTEditHr_T_RqMnu : 44|5@0+ (1,0) [0|29] "SED" Vector__XXX + +BO_ 850 HEV_ChargeStat_FD1: 8 SOBDMC_HPCM_FD1 + SG_ VehElRngeNut_L_Dsply : 11|12@0+ (0.1,0) [0|409.3] "km" GWM + SG_ NxtUsgSocEst_Pc_Dsply : 7|8@0+ (0.5,0) [0|126.5] "unitless" GWM + SG_ EstmChrgTimeLP_St : 39|8@0+ (0.1,0) [0|25.4] "hour" GWM + SG_ EstmChrgTimeHP_St : 47|8@0+ (0.1,0) [0|25.4] "hour" GWM + SG_ ChargeNowDuration_St : 31|8@0+ (0.1,0) [0|25.4] "hour" GWM + +BO_ 563 MasterReset_HS3_ECGDat_FD1: 8 GWM + SG_ DrvBhavWarn_B_Rq : 12|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ OfbChrgSetSync_D_Rq : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ KeyOffPwMde_D_Stat : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ModemReset_D_Stat : 5|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ FactoryReset_St : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 1833 TesterPhysicalResVDM: 64 VDM + SG_ TesterPhysicalResVDM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 570 Suspension_Data: 8 VDM + SG_ SuspClkSync_No_Rq : 63|8@0+ (1,0) [0|253] "unitless" GWM + SG_ SuspRearRight_L_Actl : 42|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM + SG_ SuspFrntRight_L_Actl : 35|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM + SG_ SuspRear_L_Prev : 28|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM + SG_ SuspRear_L_Actl : 21|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM + SG_ SuspFrnt_L_Prev : 14|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM + SG_ SuspFrnt_L_Actl : 7|9@0+ (0.782779,-200) [-200|199.21729] "millimeter" GWM + +BO_ 837 VeyDynamics_Data: 8 VDM + SG_ Ccd_B_Falt : 24|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdeSusp_D_Stat : 20|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdptDrvMdePt_D_Rq : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ AdptDrvMdeChassis_D_Rq : 10|3@0+ (1,0) [0|7] "SED" GWM + SG_ CcdMsgTxt_D_RqDsply : 7|4@0+ (1,0) [0|15] "SED" ECM_Diesel,GWM + +BO_ 885 ECG_Data3_FD1: 8 GWM + SG_ BattULoChrg_D_RqOta : 55|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ VehStrtInhbt_T_Dsply : 39|16@0+ (1,0) [0|65535] "second" Vector__XXX + SG_ VehStrtInhbt_D_Dsply : 27|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ VehOnRqstr_D_Stat : 21|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ VehStrtInhbt_D_RqCld : 23|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ VehOn_D_RqCld : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ CanMsg375_No_Cnt : 11|4@0+ (1,0) [0|15] "unitless" Vector__XXX + SG_ CanMsg375_No_Crc : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ OtaActv_D_Stat : 31|4@0+ (1,0) [0|15] "SED" Vector__XXX + +BO_ 1150 LocationServices_Data1_FD1: 8 GWM + SG_ LocationServices_1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" SOBDMC_HPCM_FD1,IPMA_ADAS + +BO_ 542 LocationServices_3_FD1: 8 GWM + SG_ LocationServices_3 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" Vector__XXX + +BO_ 2612224016 PARSEDPushPCMtoGWM_ECG: 8 PCM_HEV + SG_ PARSEDPushPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 810 ECG_Data_FD1: 8 GWM + SG_ OBCCSerial_D_Rq : 45|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TlghtTest_D_RqArb : 47|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ChrgrPncSustn_B_Rq : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ NtfyDrvTrgtDist_L_Rq : 23|12@0+ (0.1,0) [0.1|409.4] "Km" SOBDMC_HPCM_FD1 + SG_ NtfyDrvSocLvl1_Pc_Rq : 39|7@0+ (1,0) [1|100] "%" SOBDMC_HPCM_FD1 + SG_ PtRmtRprt_D_Stat : 27|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ ChrgrPncEnbl_D_Rq : 9|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ExtLghtDsply_B_StatArb : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ExtLghtRight_D_RqOta : 12|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ExtLghtRear_D_RqOta : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ExtLghtLeft_D_RqOta : 3|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ExtLghtFront_D_RqOta : 6|3@0+ (1,0) [0|7] "SED" Vector__XXX + +BO_ 550 ECG_Data4_FD1: 8 GWM + SG_ PtWakeupActv1_B_Rq : 7|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + +BO_ 639 OffBrdChrg_Signals2: 8 GWM + SG_ OfbChrgPrflUpdate_B_Rq : 31|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgClearAll_B_Rq : 7|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTTouch_D_Rq : 17|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTPrcond_D_Rq : 19|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTOn_D_Rq : 10|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTMnte_D_Rq : 23|4@0+ (1,0) [0|15] "minute" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTHr_T_Rq : 15|5@0+ (1,0) [0|29] "hour" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTExtHtr_D_Rq : 1|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTElement_D_Rq : 5|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTDelete_B_Rq : 6|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgGoTUpdate_B_Rq : 8|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + +BO_ 530 OffBrdChrg_Signals: 8 GWM + SG_ OfbChrgLocIdTrgt_No_Rq : 7|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 + SG_ OfbChrgToPcWknd_D_Actl : 58|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 + SG_ OfbChrgToPcWkdy_D_Actl : 61|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 + SG_ OfbChrgSetNow_D_Rq : 63|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgSetDelete_B_Rq : 2|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OfbChrgPrflWknd_No_Rq : 39|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 + SG_ OfbChrgPrflWkdy_No_Rq : 15|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 + SG_ OfbChrgLocIdUns_B_Rq : 3|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + +BO_ 1142 ConsTip_Data_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ConsTipV_No_Dsply : 49|10@0+ (0.1,0) [0|102.1] "percent" GWM + +BO_ 817 Locking_Systems_2_FD1: 8 GWM + SG_ ChildLckMde_B_Stat : 56|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ VehLckInd_D_Rq : 58|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ DrTgateOpen_B_Rq : 59|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DrTgateExtSwMde_B_Stat : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Remote_Device_Feedback : 50|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ Veh_Lock_Requestor : 55|5@0+ (1,0) [0|31] "SED" Vector__XXX + SG_ R_Pwr_Sliding_Dr_Rqst : 36|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Power_Liftgate_Rqst : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Veh_Lock_EvNum : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ Power_Decklid_Rqst : 1|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ L_Pwr_Sliding_Dr_Rqst : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Keyfob_Pad_Msg_Count : 15|8@0+ (1,0) [0|255] "Counts" Vector__XXX + SG_ Veh_Lock_Sub_Id : 63|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ Veh_Lock_Status : 34|2@0+ (1,0) [0|3] "SED" CMR_DSMC + SG_ ChildLck_D_Dsply : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ WindowLockout_B_Stat : 35|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ RollCodeUnlock : 23|16@0+ (1,0) [0|65535] "Unitless" Vector__XXX + SG_ Lockmsgtxt_D_Rq : 39|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ FobComm_D_Stat : 5|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ LockInhibit : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 879 BCMC_Data_FD1: 8 GWM + SG_ WndwRearHeat_I_Actl : 7|11@0+ (0.1,0) [0|204.6] "ampere" ECM_Diesel + SG_ WndwRearHeat_D_Stat : 12|3@0+ (1,0) [0|7] "SED" ECM_Diesel + +BO_ 878 DCACA_Data4: 8 PCM_HEV + SG_ DcacGfciTest_B_Rq : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ DcacOut_Pw_DsplyMx : 23|10@0+ (10,0) [0|10220] "watts" GWM + SG_ DcacOut1_Pw_Dsply : 39|7@0+ (100,0) [0|12600] "watts" GWM + SG_ DcacOut2_Pw_Dsply : 47|7@0+ (100,0) [0|12600] "watts" GWM + SG_ DcacHw_D_Confg : 11|4@0+ (1,0) [0|15] "SED" GWM + SG_ DcacFaltMsgTxt_D_Rq : 15|4@0+ (1,0) [0|15] "SED" GWM + SG_ DcacLoFuelMsgTxt_D_Rq : 29|5@0+ (1,0) [0|31] "SED" GWM + SG_ DcacEngOnMsgTxt_D_Rq : 55|2@0+ (1,0) [0|3] "SED" GWM + SG_ DcacElPw_D_Stat : 2|2@0+ (1,0) [0|3] "SED" GWM + SG_ PwBedPnlEnbl_B_Rq : 3|1@0+ (1,0) [0|1] "SED" GWM + SG_ DcacOn_B_Rq : 4|1@0+ (1,0) [0|1] "SED" GWM + SG_ DcacSys_B_Falt : 5|1@0+ (1,0) [0|1] "SED" GWM + SG_ DcacLedCtl_D_Rq : 7|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 395 HeadUpDisplayReq_FD1: 8 GWM + SG_ SelDrvMdeCnfm_D_Stat : 35|2@0+ (1,0) [0|3] "SED" ABS_ESC + +BO_ 2611055832 PARSEDPhysGWM_ECGtoSODR: 8 GWM + SG_ PARSEDPhysGWM_ECGtoSODR : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2611054808 PARSEDPhysGWM_ECGtoSODL: 8 GWM + SG_ PARSEDPhysGWM_ECGtoSODL : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2611026136 PARSEDPhysGWM_ECGtoSODCMD: 8 GWM + SG_ PARSEDPhysGWM_ECGtoSODCMD : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2611025112 PARSEDPhysGWM_ECGtoSODCMC: 8 GWM + SG_ PARSEDPhysGWM_ECGtoSODCMC : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2610975960 PARSEDPhysGWM_ECGtoCCM: 8 GWM + SG_ PARSEDPhysGWM_ECGtoCCM : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2610007256 OTAPhysGWM_ECGtoSODR: 8 GWM + SG_ OTAPhysGWM_ECGtoSODR : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2610006232 OTAPhysGWM_ECGtoSODL: 8 GWM + SG_ OTAPhysGWM_ECGtoSODL : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2609977560 OTAPhysGWM_ECGtoSODCMD: 8 GWM + SG_ OTAPhysGWM_ECGtoSODCMD : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2609976536 OTAPhysGWM_ECGtoSODCMC: 8 GWM + SG_ OTAPhysGWM_ECGtoSODCMC : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2609927384 OTAPhysGWM_ECGtoCCM: 8 GWM + SG_ OTAPhysGWM_ECGtoCCM : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2611175523 PARSEDPhysSODRtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysSODRtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224099 PARSEDPushSODRtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysSODR2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2611175522 PARSEDPhysSODLtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysSODLtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224098 PARSEDPushSODLtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysSODL2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2611175494 PARSEDPhysSODCMDtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysSODCMDtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224070 PARSEDPushSODCMDtoGWM: 8 IPMA_ADAS + SG_ PARSEDPhysSODCMD2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2611175493 PARSEDPhysSODCMCtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysSODCMCtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224069 PARSEDPushSODCMCtoGWM: 8 IPMA_ADAS + SG_ PARSEDPhysSODCMC2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2611175445 PARSEDPhysCCMtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysCCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224021 PARSEDPushCCMtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysCCM2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126947 OTAPhysSODRtoGWM_ECG: 8 IPMA_ADAS + SG_ OTAPhysSODRtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126946 OTAPhysSODLtoGWM_ECG: 8 IPMA_ADAS + SG_ OTAPhysSODLtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126918 OTAPhysSODCMDtoGWM_ECG: 8 IPMA_ADAS + SG_ OTAPhysSODCMDtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126917 OTAPhysSODCMCtoGWM_ECG: 8 IPMA_ADAS + SG_ OTAPhysSODCMCtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126869 OTAPhysCCMtoGWM_ECG: 8 IPMA_ADAS + SG_ OTAPhysCCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 984 IPMA_Data: 8 IPMA_ADAS + SG_ FeatConfigIpmaActl : 7|16@0+ (1,0) [0|65535] "Undefined" GWM + SG_ FeatNoIpmaActl : 23|16@0+ (1,0) [0|65535] "Number" GWM + SG_ PersIndexIpma_D_Actl : 39|3@0+ (1,0) [0|7] "SED" GWM + SG_ AhbcRampingV_D_Rq : 57|2@0+ (1,0) [0|3] "SED" GWM + SG_ LaActvStats_D_Dsply : 55|5@0+ (1,0) [0|31] "SED" GWM + SG_ LaDenyStats_B_Dsply : 32|1@0+ (1,0) [0|1] "SED" GWM + SG_ LaHandsOff_D_Dsply : 50|2@0+ (1,0) [0|3] "SED" GWM + SG_ CamraDefog_B_Req : 36|1@0+ (1,0) [0|1] "SED" GWM + SG_ CamraStats_D_Dsply : 35|2@0+ (1,0) [0|3] "SED" GWM + SG_ DasAlrtLvl_D_Dsply : 42|3@0+ (1,0) [0|7] "SED" GWM + SG_ DasStats_D_Dsply : 47|2@0+ (1,0) [0|3] "SED" GWM + SG_ DasWarn_D_Dsply : 44|2@0+ (1,0) [0|3] "SED" GWM + SG_ AhbHiBeam_D_Rq : 59|2@0+ (1,0) [0|3] "SED" GWM + SG_ Passthru_63 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ Passthru_48 : 48|1@0+ (1,0) [0|1] "" XXX + +BO_ 985 IPMA_Data2: 8 IPMA_ADAS + SG_ LdwChime_B_Rq : 34|1@0+ (1,0) [0|1] "SED" GWM + SG_ TsrRegionTxt_D_Stat : 47|5@0+ (1,0) [0|31] "SED" GWM + SG_ SblmPedCrossScnr_B_Stat : 33|1@0+ (1,0) [0|1] "SED" GWM + SG_ LongCtrlEnbl_D_Rq : 42|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ SblmRndAbtScnr_B_Stat : 9|1@0+ (1,0) [0|1] "SED" GWM + SG_ DasAlrtInfo_D_Dsply : 13|2@0+ (1,0) [0|3] "SED" GWM + SG_ IaccVLim_D_Rq : 23|8@0+ (1,0) [0|255] "SED" ECM_Diesel,GWM + SG_ IaccVLimUnit_D_Rq : 11|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM + SG_ IsaVLim_D_Rq : 7|8@0+ (1,0) [0|255] "SED" ECM_Diesel,GWM + SG_ SblmStopScnr_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ SblmYieldScnr_B_Stat : 31|1@0+ (1,0) [0|1] "SED" GWM + SG_ IsaVLimUnit_D_Rq : 15|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM + SG_ AdbDividedRoad_B_Stat : 30|1@0+ (1,0) [0|1] "SED" GWM + SG_ LcwaMsgTxt_D_Stat : 37|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbDrvSide_B_Stat : 35|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 992 Personality_Data_FD1: 8 GWM + SG_ MsgCntrDsplyOp_D_Rq : 36|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ MsgCntrFeatNoRq : 7|16@0+ (1,0) [0|65535] "Number" IPMA_ADAS + SG_ MsgCntrFeatConfigRq : 23|16@0+ (1,0) [0|65535] "unitless" IPMA_ADAS + SG_ MsgCntrPersIndex_D_Rq : 39|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + +BO_ 2612019416 PARSEDPushFcGWM_ECGtoPCM: 8 GWM + SG_ PARSEDPhysGWM_ECG2toPCM : 7|29@0+ (1,0) [0|536870911] "unitless" PCM,PCM_HEV,ECM_Diesel + +BO_ 943 IPMA_Data4: 8 IPMA_ADAS + SG_ VehVActlAdas_D_Qf : 9|2@0+ (1,0) [0|3] "SED" PCM,PCM_HEV,ECM_Diesel + SG_ Veh_V_RqLsc : 23|14@0+ (0.01,0) [0|163.83] "kph" PCM,PCM_HEV,ECM_Diesel + SG_ Veh_V_ActlAdas : 7|14@0+ (0.01,0) [0|163.83] "kph" PCM,PCM_HEV,ECM_Diesel + SG_ AdasLcDistToObj_L_Actl : 39|12@0+ (0.002,0) [0|8.186] "meter" PCM,PCM_HEV,ECM_Diesel + +BO_ 515 PowertrainData_12: 8 ECM_Diesel + SG_ PtIgnSwtch_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" GWM + SG_ PtIgnSwtch_No_Cnt : 5|4@0+ (1,0) [0|15] "Unitless" GWM + SG_ PtIgnSwtch_D_Stat : 7|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 1111 TrailerAid_Stat2_FD1: 8 GWM + SG_ TrlrYawWActl_D_Qf : 43|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM + SG_ TrlrYaw_W_Actl : 7|16@0+ (0.0002,-6.5) [-6.5|6.6066] "radians/second" IPMA_ADAS,PSCM + SG_ TrlrHitYaw_AnRate_Actl : 27|12@0+ (0.1,-50) [-50|359.3] "degrees/second" IPMA_ADAS,PSCM + SG_ TrlrHitchYaw_D_Stat : 47|4@0+ (1,0) [0|15] "SED" IPMA_ADAS,PSCM + SG_ TrlrHitchYaw_An_Actl : 23|12@0+ (0.1,-90) [-90|319.3] "degrees" IPMA_ADAS,PSCM + +BO_ 1106 TrailerAid_Stat1_FD1: 8 GWM + SG_ TrlrSnsId_No_Actl : 7|48@0+ (1,0) [0|281474976710653] "unitless" IPMA_ADAS,PSCM + +BO_ 1985 TesterPhysicalReqCMR_DSMC: 64 TSTR + SG_ TesterPhysicalReqCMR_DSMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" CMR_DSMC + +BO_ 1993 TesterPhysicalResCMR_DSMC: 64 CMR_DSMC + SG_ TesterPhysicalResCMR_DSMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1104 DrvStatMonData: 8 CMR_DSMC + SG_ DrvEngageLevel_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS + SG_ DrvEngageLevel_No_Cnt : 19|4@0+ (1,0) [0|15] "Unitless" IPMA_ADAS + SG_ DrvEngageLevel_D_Stat : 13|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ DrvImpLvlConfid_D_Stat : 39|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ DrvImpairLvl_D_Stat : 23|4@0+ (1,0) [0|15] "SED" IPMA_ADAS + SG_ DrvEngLvlConfid_D_Stat : 10|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ DrvCamPassIR_D_Stat : 36|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ DrvCamera_D_Stat : 15|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ DrvCamDrvIR_D_Stat : 1|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ DrvAttentZone_D_Stat : 5|4@0+ (1,0) [0|15] "SED" IPMA_ADAS + SG_ DrvAlertSt_D_Stat : 7|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + +BO_ 1503 CMR_DSMC_AutoSar_NetwrkMgt: 8 CMR_DSMC + SG_ CMR_DSMC_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_GWNMProxY : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_AutoSarNMReserved : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_AutoSarNMReserve4 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_AutoSarNMReserve3 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_AutoSarNMReserve2 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CMR_DSMC_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX + +BO_ 2610995416 PARSEDPhysGWM_ECGtoABS: 8 GWM + SG_ PARSEDPhysGWM_ECGtoABS : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC + +BO_ 2612043992 PARSEDPushFcGWM_ECGtoABS: 8 GWM + SG_ PARSEDPhysGWM_ECG2toABS : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC + +BO_ 2609946840 OTAPhysGWM_ECGtoABS: 8 GWM + SG_ OTAPhysGWM_ECGtoABS : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC + +BO_ 2611175464 PARSEDPhysABStoGWM_ECG: 8 ABS_ESC + SG_ PARSEDPhysABStoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "Unitless" GWM + +BO_ 2612224040 PARSEDPushABStoGWM_ECG: 8 ABS_ESC + SG_ PARSEDPhysABS2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126888 OTAPhysABStoGWM_ECG: 8 ABS_ESC + SG_ OTAPhysABStoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610988248 PARSEDPhysGWM_ECGtoIPMA: 8 GWM + SG_ PARSEDPhysGWM_ECGtoIPMA : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 2609939672 OTAPhysGWM_ECGtoIPMA: 8 GWM + SG_ OTAPhysGWM_ECGtoIPMA : 7|29@0+ (1,0) [0|536870911] "unitless" IPMA_ADAS + +BO_ 1114 TrailerAid_Data_FD1: 8 GWM + SG_ TrailCtlSwtch_B_Stat2 : 16|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ TrlBrkInitOut_D_Rq : 60|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 1116 TrailerAid_Data3_FD1: 8 GWM + SG_ TrlrAidSetup_D2_Rq : 4|4@0+ (1,0) [0|15] "SED" IPMA_ADAS,PSCM + SG_ TrlrAidEnbl_D2_Rq : 7|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,PSCM + SG_ TrlrTrgtToBmpr_L_Actl : 38|7@0+ (0.0127,0) [0|1.6129] "meter" IPMA_ADAS + SG_ TrlrTrgtPtrnId_No_Mem : 45|6@0+ (1,0) [0|63] "unitless" IPMA_ADAS + SG_ TrlrRvrseCancl_B_Rq : 0|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM + SG_ TrlrIdType_D_Stat : 51|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM + SG_ TrlrId_No_Actl : 55|4@0+ (1,0) [0|15] "unitless" IPMA_ADAS,PSCM + SG_ TrlrBallToBmpr_L_Actl : 22|7@0+ (0.0127,0) [0|1.6129] "meter" IPMA_ADAS,PSCM + SG_ TrlrAxleToBmpr_L_Actl : 31|9@0+ (0.0254,0) [0|12.9794] "meter" IPMA_ADAS,PSCM + SG_ TrlrAnOffstDir_D_Mem : 47|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM + SG_ TrlrAnOffst_An_Mem : 15|9@0+ (0.1,0) [0|51.1] "degrees" IPMA_ADAS + SG_ TrlrTrgtOffst_L_Actl : 63|7@0+ (0.0127,0) [0|1.6129] "meter" IPMA_ADAS + +BO_ 2611175457 PARSEDPhysIPMAtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysIPMAtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224033 PARSEDPushIPMAtoGWM_ECG: 8 IPMA_ADAS + SG_ PARSEDPhysIPMA2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126881 OTAPhysIPMAtoGWM_ECG: 8 IPMA_ADAS + SG_ OTAPhysIPMAtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 1085 Low_Voltage_Power_Data_FD1: 8 PCM + SG_ ULoRgenTestMde_B_Stat : 50|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwSrcULoOvrTe_B_Actl : 7|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwSrcULoFalt_D_Stat : 5|2@0+ (1,0) [0|3] "SED" GWM + SG_ PwSrcULoDcnnt_B_Stat : 3|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwSrcULo_Pc_Mx : 31|8@0+ (0.4,0) [0|101.6] "%" GWM + SG_ PwSrcULoComm_B_Falt : 2|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwSrcULo_I_Mx : 23|8@0+ (1,0) [0|254] "ampere" PCM_HEV,GWM + SG_ PwSrcULo_I_Actl : 15|8@0+ (1,0) [0|254] "ampere" PCM_HEV,GWM + +BO_ 791 Cluster_HEV_Data8_FD1: 8 GWM + SG_ EngAirFilt_B_RqReset : 48|1@0+ (1,0) [0|1] "SED" ECM_Diesel + SG_ GpsElMdeSel_B_Rq : 50|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ LongTermReset_B_Rq : 49|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DrvEffLvl_No_Stat : 61|6@0+ (1,0) [0|61] "unitless" Vector__XXX + SG_ ConsAvgTrip_Fe_Dsply : 31|24@0+ (0.0001,0) [0|1677.7215] "litre/100km" Vector__XXX + +BO_ 2610970840 PARSEDPhysGWM_ECGtoPCM: 8 GWM + SG_ PARSEDPhysGWM_ECGtoPCM : 7|29@0+ (1,0) [0|536870911] "unitless" ECM_Diesel,PCM_HEV,PCM + +BO_ 2609922264 OTAPhysGWM_ECGtoPCM: 8 GWM + SG_ OTAPhysGWM_ECGtoPCM : 7|29@0+ (1,0) [0|536870911] "unitless" ECM_Diesel,PCM_HEV,PCM + +BO_ 868 BattRgenLo_4_FD1: 8 GWM + SG_ BattRgenLoStat_D_Qlty : 25|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM + SG_ BattRgenLoSoc_Pc_Actl : 23|7@0+ (1,0) [0|100] "percent" PCM_HEV,PCM + SG_ BattRgenLoPulse_U_Pred : 15|8@0+ (0.0625,0) [0|15.9375] "volt" PCM_HEV,PCM + SG_ BattRgenLoPrtct_B_Stat : 39|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM + SG_ BattRgenLoDChrg_D_Stat : 27|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM + SG_ BattRgenLoDchrg_B_Rq : 28|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM + SG_ BattRgenLoChrg_D_Stat : 30|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM + SG_ BattRgenLoChrg_B_Rq : 31|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM + SG_ BattRgenLo_T_Est : 7|8@0+ (8,0) [0|2040] "second" PCM_HEV,PCM + SG_ BattRgenLo_B_Falt : 16|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM + +BO_ 867 BattRgenLo_3_FD1: 8 GWM + SG_ BattRgenLoBalnc_B_Rq : 16|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM + SG_ BattRgenLo_Te_Hi : 55|8@0+ (1,-20) [-20|235] "degC" PCM_HEV,PCM + SG_ BattRgenLo_Te_Actl : 47|8@0+ (1,-60) [-60|194] "degC" PCM_HEV,PCM + SG_ BattRgenLo_R_Actl : 31|9@0+ (0.0625,0) [0|31.9375] "milliohm" PCM_HEV,PCM + SG_ BattRgenLo_AhRide_Actl : 15|15@0+ (0.0078125,-100) [-100|155.9921875] "amperehour" PCM_HEV,PCM + SG_ BattRgenLo_Ah_Actl : 7|8@0+ (0.1,0) [0|25.5] "amperehour" PCM_HEV,PCM + +BO_ 866 BattRgenLo_2_FD1: 8 GWM + SG_ BattRgenLoOpen_U_Actl : 55|9@0+ (0.025,8.5) [8.5|21.275] "volt" PCM_HEV,PCM + SG_ BattRgenLoDchrg_U_Mn : 39|9@0+ (0.025,4) [4|16.775] "volt" PCM_HEV,PCM + SG_ BattRgenLoDchrg_I_Mx : 31|8@0+ (2,0) [0|510] "ampere" PCM_HEV,PCM + SG_ BattRgenLoChrg_U_Mx : 15|9@0+ (0.025,10.6) [10.6|23.375] "volt" PCM_HEV,PCM + SG_ BattRgenLoChrg_I_Mx : 7|8@0+ (2,0) [0|510] "ampere" PCM_HEV,PCM + +BO_ 865 BattRgenLo_1_FD1: 8 GWM + SG_ BattRgenLo_U_Actl : 23|11@0+ (0.015625,0) [0|31.96875] "volt" PCM_HEV,PCM + SG_ BattRgenLo_I_Actl : 7|16@0+ (0.015625,-512) [-512|511.96875] "ampere" PCM_HEV,PCM + +BO_ 2611175440 PARSEDPhysPCMtoGWM_ECG: 8 PCM + SG_ PARSEDPhysPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126864 OTAPhysPCMtoGWM_ECG: 8 PCM + SG_ OTAPhysPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2611175441 PARSEDHPCMtoGWM_ECG_FD1: 8 SOBDMC_HPCM_FD1 + SG_ PARSEDPhysHPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2612224017 PARSEDPushSOBDMCtoGWM_FD1: 8 SOBDMC_HPCM_FD1 + SG_ PARSEDPhysHPCM2toGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 2610126865 OTAPhysSOBDMCtoGWM_FD1: 8 SOBDMC_HPCM_FD1 + SG_ OTAPhysHPCMtoGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" GWM + +BO_ 1679 SOBDMC_RapidData_Resp4_FD1: 8 SOBDMC_HPCM_FD1 + SG_ UUDTSOBDMCResponse4 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1678 SOBDMC_RapidData_Resp3_FD1: 8 SOBDMC_HPCM_FD1 + SG_ UUDTSOBDMCResponse3 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1677 SOBDMC_RapidData_Resp2_FD1: 8 SOBDMC_HPCM_FD1 + SG_ UUDTSOBDMCResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1676 SOBDMC_RapidData_Resp1_FD1: 8 SOBDMC_HPCM_FD1 + SG_ UUDTSOBDMCResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1445 SOBDMC_AutoSar_NetMgmt_FD1: 8 SOBDMC_HPCM_FD1 + SG_ SOBDMC_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ SOBDMC_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX + +BO_ 1144 MHT_EV_Wakeup_FD1: 8 SOBDMC_HPCM_FD1 + SG_ WakeAlarm0_T_Rq : 7|15@0+ (1,0) [0|32767] "minute" GWM + SG_ WakeAlarm0_B_Typ : 21|1@0+ (1,0) [0|1] "SED" GWM + SG_ PreCondBatt_B_Actl : 32|1@0+ (1,0) [0|1] "SED" GWM + SG_ HtrnDcdcDis_B_Rq : 26|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgNowEvnt_B_Stat : 22|1@0+ (1,0) [0|1] "SED" GWM + SG_ CabinDrvSustn_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM + SG_ BattChrgTrgtSoC_D_Rq : 35|3@0+ (1,0) [0|7] "Percent" GWM + SG_ CabnEvapSovFront_B_Rq : 38|1@0+ (1,0) [0|1] "SED" GWM + SG_ HeatCoreSovRear_B_Rq : 36|1@0+ (1,0) [0|1] "SED" GWM + SG_ BattChlrSov_B_Rq : 39|1@0+ (1,0) [0|1] "SED" GWM + SG_ CabnEvapSovRear_B_Rq : 37|1@0+ (1,0) [0|1] "SED" GWM + SG_ BrkAppl_D_RqPt : 25|2@0+ (1,0) [0|3] "SED" GWM + SG_ HtrnCnnctPwr_B_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ PtcHtr_D_Stat : 18|2@0+ (1,0) [0|3] "SED" GWM,PCM_HEV + SG_ HtrnClntFlw_D_Rq : 20|2@0+ (1,0) [0|3] "SED" GWM + SG_ BattTracDrvSustn_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BattTracClntVlv_B_Rq : 47|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 1141 Cluster_HEV_Data9_FD1: 8 SOBDMC_HPCM_FD1 + SG_ OfbChrgSetSync_D_Stat : 31|2@0+ (1,0) [0|3] "SED" GWM + SG_ PtRmtRprt_D_Rq : 59|4@0+ (1,0) [0|15] "SED" GWM + SG_ MtrTrac2_Tq_Actl : 29|12@0+ (1,-2047) [-2047|2048] "Nm" GWM + SG_ NtfctnConflict1_D_Rq : 53|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 1140 Cluster_HEV_Data7_FD1: 8 SOBDMC_HPCM_FD1 + SG_ RgenEvntLvl_Pc_Dsply : 9|10@0+ (0.1,0) [0|102.1] "percent" GWM + SG_ BrkEvntComplt_B_Dsply : 31|1@0+ (1,0) [0|1] "SED" GWM + SG_ PreCondStat_D_Dsply : 12|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 1139 GWM_HPCM_i_FrP11_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ActChrgStrtYr_No2_Actl : 7|7@0+ (1,2017) [2017|2144] "year" GWM + SG_ BattChrgTrgtLMax_T_Est : 10|11@0+ (1,0) [0|2045] "minute" GWM + SG_ ActChrgStrtYr_No_Actl : 60|5@0+ (1,2010) [2010|2040] "year" GWM + SG_ ActChrgStrtMin_No_Actl : 29|6@0+ (1,0) [0|61] "minute" GWM + SG_ ActChrgStrtHr_No_Actl : 36|5@0+ (1,0) [0|29] "hour" GWM + SG_ ActChrgStrtDay_No_Actl : 44|5@0+ (1,1) [1|31] "days" GWM + SG_ ActChrgStrMnth_No_Actl : 51|4@0+ (1,1) [1|15] "month" GWM + +BO_ 1138 GWM_HPCM_i_FrP10_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ActChrgEndYr_No2_Actl : 7|7@0+ (1,2017) [2017|2144] "year" GWM + SG_ BattChrgTrgtLMin_T_Est : 10|11@0+ (1,0) [0|2045] "minute" GWM + SG_ ActChrgEndYr_No_Actl : 60|5@0+ (1,2010) [2010|2040] "year" GWM + SG_ ActChrgEndMnth_No_Actl : 51|4@0+ (1,1) [1|15] "month" GWM + SG_ ActChrgEndMin_No_Actl : 29|6@0+ (1,0) [0|61] "minute" GWM + SG_ ActChrgEndHr_No_Actl : 36|5@0+ (1,0) [0|29] "hour" GWM + SG_ ActChrgEndDay_No_Actl : 44|5@0+ (1,1) [1|31] "days" GWM + +BO_ 1089 MtrTracData_1_FD1: 8 SOBDMC_HPCM_FD1 + SG_ Mtr2Aout_W_ActlMntr : 45|10@0+ (6.28,-3209) [-3209|3209.16] "radians/sec" GWM + SG_ Inv1_Te_Actl : 63|8@0+ (1,-40) [-40|213] "degC" GWM + SG_ MtrTrac2Coil_Te_Actl : 23|8@0+ (1,-40) [-40|213] "degC" GWM + SG_ MtrTrac2_U_Actl : 39|10@0+ (1,0) [0|1023] "volt" GWM + SG_ MtrTrac2Falt_B_Stat : 50|1@0+ (1,0) [0|1] "SED" GWM + SG_ MtrTrac2TeAlrm_B_Stat : 49|1@0+ (1,0) [0|1] "SED" GWM + SG_ Mtr2CntlTeAlrm_B_Stat : 51|1@0+ (1,0) [0|1] "SED" GWM + SG_ MtrTrac2Inv_Te_Actl : 31|8@0+ (1,-40) [-40|213] "degC" GWM + SG_ MtrTrac2_I_Actl : 7|16@0+ (0.1,-1000) [-1000|5553.4] "ampere" GWM + +BO_ 1088 PreCond_Hev_Data1_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ChrgTMatch_B_Stat : 55|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgStat_D2_Dsply : 7|4@0+ (1,0) [0|15] "SED" GWM + SG_ HvacPrecondRecirc_D_Rq : 63|2@0+ (1,0) [0|3] "SED" GWM + SG_ HvacPrecondMode2_D_Rq : 51|4@0+ (1,0) [0|15] "SED" GWM + SG_ HvacPrecondBlwr2_D_Rq : 61|4@0+ (1,0) [0|15] "SED" GWM + SG_ HvacPrecondAC_D_Rq : 57|2@0+ (1,0) [0|3] "SED" GWM + SG_ HvacPrecond_Te_Rq : 44|5@0+ (0.5,14.5) [14.5|30] "deg C" GWM + SG_ BattChrgInhbt_D_Rq : 53|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 1040 AC_Compressor_Req_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ElCmprEnbl_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV + SG_ ElCmpr_N_Rq : 15|8@0+ (50,0) [0|12750] "RPM" GWM + +BO_ 1016 GoTimeSettings_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ChrgGoTElement_B_Dsply : 27|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocIdCurnt_D_Uns : 31|4@0+ (1,0) [0|15] "unitless" GWM + SG_ ChrgGoTTouchEnbl_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgGoTTouch_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgGoTPrcond_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ ChrgGoTNext_D_Stat : 19|4@0+ (1,0) [0|15] "Unitless" GWM + SG_ ChrgGoTMnte_D_Stat : 23|4@0+ (1,0) [0|15] "SED" GWM + SG_ ChrgGoTHr_T_Stat : 15|5@0+ (1,0) [0|29] "hour" GWM + SG_ ChrgGoTExtHtrEnbl_B_Rq : 1|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgGoTExtHtr_B_Stat : 2|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgGoTElement_D_Stat : 6|4@0+ (1,0) [0|15] "Unitless" GWM + SG_ ChrgGoTAllOn_B_Stat : 7|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 1013 ChargeSettings_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ChrgToPcWkndSav_D_Stat : 60|3@0+ (1,0) [0|7] "SED" GWM + SG_ ChrgToPcWkdySav_D_Stat : 63|3@0+ (1,0) [0|7] "SED" GWM + SG_ ChrgProgIdSaved_D_Stat : 51|4@0+ (1,0) [0|15] "Unitless" GWM + SG_ ChrgNowEnbl_B_Saved : 56|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocIdUnsAck_B_Stat : 57|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocIdCurnt_D_Sav : 55|4@0+ (1,0) [0|15] "unitless" GWM + SG_ ChrgPrflWknd_No_Actl : 31|24@0+ (1,0) [0|16777215] "unitless" GWM + SG_ ChrgPrflWkdy_No_Actl : 7|24@0+ (1,0) [0|16777215] "unitless" GWM + +BO_ 1012 Saved_Charge_Location_FD1: 8 SOBDMC_HPCM_FD1 + SG_ ChrgNowCurnt_B_Dsply : 58|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocSaved_B_Dsply : 57|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocLongPostv_B_Sav : 59|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocLongFrct_An_Sav : 47|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM + SG_ ChrgLocLongDeg_An_Sav : 39|8@0+ (1,0) [0|255] "degrees" GWM + SG_ ChrgLocLattPostv_B_Sav : 24|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocLattFrct_An_Sav : 7|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM + SG_ ChrgLocLattDeg_An_Sav : 31|7@0+ (1,0) [0|127] "unitless" GWM + SG_ ChrgLocId_D_Sav : 19|4@0+ (1,0) [0|15] "unitless" GWM + +BO_ 1011 Unsaved_Charge_LocationFD1: 8 SOBDMC_HPCM_FD1 + SG_ ChrgLocLongPostv_B_Uns : 59|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocLongFrct_An_Uns : 47|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM + SG_ ChrgLocLongDeg_An_Uns : 39|8@0+ (1,0) [0|255] "degrees" GWM + SG_ ChrgLocLattPostv_B_Uns : 24|1@0+ (1,0) [0|1] "SED" GWM + SG_ ChrgLocLattFrct_An_Uns : 7|20@0+ (1E-006,0) [0|1.048575] "degrees" GWM + SG_ ChrgLocLattDeg_An_Uns : 31|7@0+ (1,0) [0|127] "unitless" GWM + SG_ ChrgLocId_D_Uns : 19|4@0+ (1,0) [0|15] "unitless" GWM + +BO_ 871 Cluster_HEV_Data4_FD1: 8 SOBDMC_HPCM_FD1 + SG_ BattElecPerf_D_Actl : 55|3@0+ (1,0) [0|7] "SED" GWM + SG_ BattChrgTrgtLPt_T_Est : 2|11@0+ (1,0) [0|2045] "minute" GWM + SG_ BattChrgTrgSocPt_T_Est : 18|11@0+ (1,0) [0|2045] "minute" GWM + SG_ BattChrgCmpltPt_T_Est : 34|11@0+ (1,0) [0|2045] "minute" GWM + +BO_ 786 Cluster_HEV_Data1_FD1: 8 SOBDMC_HPCM_FD1 + SG_ RgenTrip_Pc_Dsply : 33|10@0+ (0.1,0) [0|102.3] "percent" GWM + SG_ RgenTrip_L_Dsply : 55|16@0+ (0.1,0) [0|6553.3] "kilometer" GWM + SG_ ChrgStat_D_Dsply : 36|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 72 Global_PATS_Target2_FD1: 8 SOBDMC_HPCM_FD1 + SG_ immoTarget2Status : 7|3@0+ (1,0) [0|7] "SED" GWM + SG_ immoTarget2Data : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" GWM + SG_ immoTarget2Cmd : 4|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 912 PowerDist_Data1_FD1: 8 GWM + SG_ CabnEvapSovFront_D_Stat : 15|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + SG_ BattChlrSov_D_Stat : 7|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracClntVlv_D_Stat : 28|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + +BO_ 874 PowerDistData_2_FD1: 8 GWM + SG_ AirCondCluOpen_D_Falt : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ AirCondCluLife_D_Falt : 19|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ AirCondCluGnd_D_Falt : 21|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ AirCondClu_D_Stat : 31|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ AirCondCluBatt_D_Falt : 23|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ BattTracShrtGrnd_D_Falt : 9|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracShrtBatt_D_Falt : 11|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracOpnCirct_D_Falt : 13|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracLifeLim_D_Falt : 15|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattChlrShrtGrnd_D_Falt : 1|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattChlrShrtBatt_D_Falt : 3|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattChlrOpnCirct_D_Falt : 5|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattChlrLifeLim_D_Falt : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracLow_D_Falt : 28|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + +BO_ 651 TCU_Send_Signals_FD1: 8 GWM + SG_ TelematicsSrvc_D_St : 47|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + SG_ EmgcyCallMute_D_Stat : 39|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ OfbChrgSetSync_D_Rq : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 529 APIM_Request_Signals_5_FD1: 8 GWM + SG_ OnbChrgToPcWknd_D_Actl : 2|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 + SG_ OnbChrgToPcWkdy_D_Actl : 60|3@0+ (1,0) [0|7] "percent" SOBDMC_HPCM_FD1 + SG_ OnbChrgSetNow_D_Rq : 63|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgSetDelete_B_Rq : 3|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgPrflWknd_No_Rq : 39|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 + SG_ OnbChrgPrflWkdy_No_Rq : 15|24@0+ (1,0) [0|16777215] "unitless" SOBDMC_HPCM_FD1 + SG_ OnbChrgPrflUpdate_B_Rq : 56|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgLocIdUns_B_Rq : 57|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgLocIdTrgt_No_Rq : 7|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 + +BO_ 66 Global_PATS_Ctrl_Info2_FD1: 8 GWM + SG_ immoControlData_T2 : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" SOBDMC_HPCM_FD1 + SG_ immoControlCmd_T2 : 7|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + +BO_ 2610971864 PARSEDPhysGWMtoSOBDMC_FD1: 8 GWM + SG_ PARSEDPhysGWM_ECGtoHPCM : 7|29@0+ (1,0) [0|536870911] "unitless" SOBDMC_HPCM_FD1 + +BO_ 2612002008 PARSEDFuncGWM_ECG_FD1: 8 GWM + SG_ PARSEDFuncGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM_HEV,PCM,SOBDMC_HPCM_FD1 + +BO_ 2609923288 OTAPhysGWM_ECGtoSOBDMC_FD1: 8 GWM + SG_ OTAPhysGWM_ECGtoHPCM : 7|29@0+ (1,0) [0|536870911] "unitless" SOBDMC_HPCM_FD1 + +BO_ 2610953432 OTAFuncGWM_ECG_FD1: 8 GWM + SG_ OTAFuncGWM_ECG : 7|29@0+ (1,0) [0|536870911] "unitless" ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM_HEV,PCM,SOBDMC_HPCM_FD1 + +BO_ 2022 TesterPhysicalReqSOBDMC_FD: 64 TSTR + SG_ TesterPhysicalReqSOBDMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" SOBDMC_HPCM_FD1 + +BO_ 1124 APIMGPS_Data_Nav_3_FD1: 8 GWM + SG_ GPS_Vdop : 63|5@0+ (0.2,0) [0|5.8] "unitless" IPMA_ADAS + SG_ GPS_Speed : 47|8@0+ (1,0) [0|253] "MPH" Vector__XXX + SG_ GPS_Sat_num_in_view : 7|5@0+ (1,0) [0|29] "unitless" SOBDMC_HPCM_FD1 + SG_ GPS_MSL_altitude : 15|12@0+ (10,-20460) [-20460|20470] "feet" Vector__XXX + SG_ GPS_Heading : 31|16@0+ (0.01,0) [0|655.33] "Degrees" IPMA_ADAS + SG_ GPS_Hdop : 55|5@0+ (0.2,0) [0|5.8] "unitless" IPMA_ADAS + SG_ GPS_dimension : 2|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + +BO_ 1119 Voltage_Power_Data2_FD1: 8 GWM + SG_ CoolFanDcdc_D_Rq : 5|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ DcdcClntFlw_D_Rq : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + +BO_ 132 GlobalClock_Data_FD1: 8 GWM + SG_ GlblClkYr_No_Actl : 7|8@0+ (1,2000) [2000|2255] "year" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GlblClkScnd_No_Actl : 47|8@0+ (1,0) [0|255] "second" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GlblClkMnte_No_Actl : 39|8@0+ (1,0) [0|255] "minute" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GlblClkHr_No_Actl : 55|8@0+ (1,0) [0|255] "hour" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GlblClkDay_No_Actl : 23|16@0+ (1,0) [0|65535] "julian day" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS + +BO_ 1990 TesterPhysicalReqSODR: 64 TSTR + SG_ TesterPhysicalReqSODR : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS + +BO_ 1892 TesterPhysicalReqCCM: 64 TSTR + SG_ TesterPhysicalReqCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS + +BO_ 1798 TesterPhysicalReqIPMA: 64 TSTR + SG_ TesterPhysicalReqIPMA : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS + +BO_ 1123 APIMGPS_Data_Nav_2_FD1: 8 GWM + SG_ GpsUtcYr_No_Actl : 55|5@0+ (1,2010) [2010|2040] "Year" IPMA_ADAS + SG_ GpsUtcMnth_No_Actl : 47|4@0+ (1,1) [1|15] "Month" IPMA_ADAS + SG_ GpsUtcDay_No_Actl : 37|5@0+ (1,1) [1|32] "Day" IPMA_ADAS + SG_ GPS_UTC_seconds : 23|6@0+ (1,0) [0|59] "seconds" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GPS_UTC_minutes : 15|6@0+ (1,0) [0|59] "Minutes" IPMA_ADAS + SG_ GPS_UTC_hours : 7|5@0+ (1,0) [0|23] "Hours" IPMA_ADAS + SG_ GPS_Pdop : 31|5@0+ (0.2,0) [0|5.8] "unitless" IPMA_ADAS + SG_ GPS_Compass_direction : 26|4@0+ (1,0) [0|15] "SED" IPMA_ADAS + SG_ GPS_Actual_vs_Infer_pos : 38|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ Gps_B_Falt : 2|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS + +BO_ 1122 APIMGPS_Data_Nav_1_FD1: 8 GWM + SG_ GpsHsphLongEast_D_Actl : 9|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,SOBDMC_HPCM_FD1 + SG_ GpsHsphLattSth_D_Actl : 25|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,SOBDMC_HPCM_FD1 + SG_ GPS_Longitude_Minutes : 46|6@0+ (1,0) [0|61] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GPS_Longitude_Min_dec : 55|14@0+ (0.0001,0) [0|1.6381] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GPS_Longitude_Degrees : 39|9@0+ (1,-179) [-179|330] "Degrees" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GPS_Latitude_Minutes : 15|6@0+ (1,0) [0|61] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GPS_Latitude_Min_dec : 23|14@0+ (0.0001,0) [0|1.6381] "Minutes" SOBDMC_HPCM_FD1,IPMA_ADAS + SG_ GPS_Latitude_Degrees : 7|8@0+ (1,-89) [-89|164] "Degrees" SOBDMC_HPCM_FD1,IPMA_ADAS + +BO_ 1003 Personality_BCM2_Data_FD1: 8 GWM + SG_ PersRecallSrc_D_Actl : 63|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ Pers4Key_D_Stat : 49|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Pers3Key_D_Stat : 41|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Pers2Key_D_Stat : 43|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Pers1Key_D_Stat : 12|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ EmPrflNo_D_Stat : 52|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ EmPrflKeyAssoc_D_Stat : 55|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ VehKeyActv_D_Stat : 47|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ PersNoPos_D_Actl : 18|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ PersSetupRestr_D_Actl : 21|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PersSetupAccessCtrl : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PersSetup_No_Actl : 31|16@0+ (1,0) [0|65535] "Number" Vector__XXX + SG_ PersConflict_D_Actl : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AssocConfirm_D_Actl : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ RecallEvent_No_Cnt : 7|8@0+ (1,0) [0|255] "Counts" IPMA_ADAS + SG_ PersNo_D_Actl : 10|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS + +BO_ 994 Personality_APIM_Data_FD1: 8 GWM + SG_ PersStore_D_Rq : 36|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ Pers4OptIn_B_Stats : 43|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Pers3OptIn_B_Stats : 33|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Pers2OptIn_B_Stats : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Pers1OptIn_B_Stats : 44|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CtrStkPersIndex_D_Actl : 39|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS + SG_ CtrStkFeatNoActl : 23|16@0+ (1,0) [0|65535] "Undefined" ABS_ESC,IPMA_ADAS + SG_ CtrStkFeatConfigActl : 7|16@0+ (1,0) [0|65535] "Undefined" ABS_ESC,IPMA_ADAS + SG_ CtrStkDsplyOp_D_Rq : 47|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS + +BO_ 778 ParkAid_Aud_Warn_CmdM_FD1: 8 GWM + SG_ PrkAidFront_D_RqDrv : 5|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ PrkAidAcsyRear_D_RqDrv : 13|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ PrkAidAcsyFront_D_RqDrv : 15|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ Cta_D_Rq : 1|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ PrkAidRear_D_RqDrv : 3|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ SteEffort_D_Rq : 10|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ Sod_D_Rq : 7|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + +BO_ 549 IPC_Infotainment_FD1: 8 GWM + SG_ Veh_V2_Dsply : 39|9@0+ (1,0) [0|511] "unitless" IPMA_ADAS + SG_ IPC_MyKeyVolLimit_St : 9|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ HdcOn_B_Rq : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ IPC_Attn_Info_Audio : 4|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ BeltminderAudioMute : 6|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Power_Up_Chime_Modules : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Chime_Source : 15|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ IPC_New_Attn_Event : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 551 APIM_Request_Signals_1_FD1: 8 GWM + SG_ PmCabnLvl_D_Stat : 36|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ PmCabn_D_Stat : 38|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Cntr_Plg_Mode_Cmd : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ChrgCrdLckEnbl_B_Stat : 47|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PwRnngBoardT_D_Rq : 25|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PwRnngBoardSwtch_D_Rq : 27|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PwRnngBoardMde_D_Rq : 29|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Btt_L_Actl2 : 55|7@0+ (0.1,0) [0|12.5] "meter" IPMA_ADAS + SG_ Rba_D_Rq : 31|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ EmPrflNo_D_Rq : 61|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ EmPrflButtnAssoc_D_Rq : 33|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ EmPrflKeyAssoc_D_Rq : 46|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ Em_D_Stat : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ChrgOvrdExitScrn_D_Rq : 58|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 1010 IPMA_Data3: 8 IPMA_ADAS + SG_ MbdblActv_B_RqAdas : 48|1@0+ (1,0) [0|1] "SED" GWM + SG_ CbdblActv_B_RqAdas : 49|1@0+ (1,0) [0|1] "SED" GWM + SG_ AdbUrbanArea_B_Stat : 40|1@0+ (1,0) [0|1] "SED" GWM + SG_ LightRng_L_Max : 55|6@0+ (2,0) [0|126] "meter" GWM + SG_ LightPathOffst_L_Actl : 31|10@0+ (0.01,-5.12) [-5.12|5.11] "meter" GWM + SG_ LightPath_An_Actl : 12|11@0+ (0.0005,-0.5) [-0.5|0.5235] "radians" GWM + SG_ LightCurv_NoRate_Actl : 37|13@0+ (2.5E-007,-0.001024) [-0.001024|0.00102375] "1/meter" GWM + SG_ LightCurv_No_Actl : 7|11@0+ (2E-005,-0.02) [-0.02|0.02094] "1/meter" GWM + +BO_ 1070 Battery_Mgmt_24V_FD1: 8 GWM + SG_ BattULo24_D_Falt : 55|2@0+ (1,0) [0|3] "SED" PCM + SG_ BattULo24_Te_Actl : 47|7@0+ (1,-40) [-40|86] "degC" PCM + SG_ BattULo24State_D_Qlty : 25|2@0+ (1,0) [0|3] "SED" PCM + SG_ BattULo24Soc_Pc_Actl : 39|7@0+ (1,0) [0|127] "percent" PCM + SG_ BattULo24_I_Actl : 23|14@0+ (0.0625,-512) [-512|511.875] "ampere" PCM + SG_ BattULo24_B_Falt : 8|1@0+ (1,0) [0|1] "SED" PCM + SG_ BattULo24_Ah_DeltaRide : 7|15@0+ (0.0078125,-100) [-100|155.9921875] "amperehour" PCM + +BO_ 1186 Driveline_Data_2: 8 TCCM + SG_ SelDrvMdeAwd2_D_Stat : 31|5@0+ (1,0) [0|31] "SED" ABS_ESC,GWM + SG_ RearDiffLckMsg_D_Rq : 20|3@0+ (1,0) [0|7] "SED" GWM + SG_ RearDiffLckLamp_D_Rq : 11|2@0+ (1,0) [0|3] "SED" VDM,GWM,ABS_ESC + SG_ RearDiffLck_Tq_Actl : 7|12@0+ (1,0) [0|4093] "Nm" ABS_ESC,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ RearDiffFalt_D_Stat : 23|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + SG_ LsdSrvcRqd_B_Rq : 21|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 611 Driveline_Data_1: 8 TCCM + SG_ AwdSys_D_Stat : 27|2@0+ (1,0) [0|3] "SED" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ AwdStat_D_RqDsply : 63|5@0+ (1,0) [0|31] "SED" TCM_DSL,ABS_ESC,GWM + SG_ AwdLck_D_Stat : 31|4@0+ (1,0) [0|15] "SED" TCM_DSL,GWM,ABS_ESC + SG_ AwdSrvcRqd_B_Rq : 0|1@0+ (1,0) [0|1] "SED" GWM,PCM,PCM_HEV,TCM_DSL,ABS_ESC + SG_ NtrlTowAvail_B_Stat : 4|1@0+ (1,0) [0|1] "SED" GWM + SG_ AwdLck_Tq_Rq : 15|12@0+ (1,0) [0|4093] "Nm" PCM_HEV,GWM,ABS_ESC + SG_ TrnAout_Tq_RqMx : 47|13@0+ (1,-1250) [-1250|6941] "Nm" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ AwdOffRoadMode_D_Stats : 25|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ AwdLoLamp_D_RqDsply : 35|2@0+ (1,0) [0|3] "SED" GWM + SG_ AwdHiLamp_D_RqDsply : 19|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC + SG_ AwdAutoLamp_D_RqDsply : 17|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC + SG_ Awd2wdLamp_D_RqDsply : 2|2@0+ (1,0) [0|3] "SED" GWM + SG_ AwdRnge_D_Actl : 7|3@0+ (1,0) [0|7] "SED" VDM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,ABS_ESC,GWM,IPMA_ADAS + +BO_ 1461 PSCM_AutoSar_NetwrkMgmt: 8 PSCM + SG_ PSCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + SG_ PSCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" GWM,ABS_ESC + +BO_ 1047 TrailerAid_Data2: 8 PSCM + SG_ TrlrAnOffst_An2_Calc : 39|8@0+ (0.5,-64) [-64|63.5] "degrees" IPMA_ADAS + SG_ TrlrAn_An_WarnCalc : 28|5@0+ (1,0) [0|31] "degrees" IPMA_ADAS + SG_ TrlrAn_An_MxCalc : 55|7@0+ (1,0) [0|127] "degrees" IPMA_ADAS + SG_ TrlrAidTrlrId_No_Rq : 63|4@0+ (1,0) [0|15] "unitless" GWM + SG_ TrlrAidTrgtId_No_Rq : 44|5@0+ (1,0) [0|31] "unitless" IPMA_ADAS + SG_ TrlrAidSetup_D2_Stat : 47|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ TrlrAidEnbl_D2_Stat : 31|3@0+ (1,0) [0|7] "SED" ABS_ESC,IPMA_ADAS,GWM,PCM,ECM_Diesel + SG_ TrlrAidMsgTxt_D2_Rq : 14|6@0+ (1,0) [0|63] "SED" IPMA_ADAS,GWM,ABS_ESC + SG_ EsaOn_B_Stat : 23|1@0+ (1,0) [0|1] "SED" GWM + SG_ HitchToTrlrAxle_L_Calc : 7|9@0+ (0.0254,0) [0|12.9794] "meter" IPMA_ADAS + SG_ SelDrvMdeSte_D_Stat : 17|2@0+ (1,0) [0|3] "SED" ABS_ESC + +BO_ 972 Lane_Assist_Data3_FD1: 8 PSCM + SG_ LatCtlSte_D_Stat : 18|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,GWM + SG_ LatCtlLim_D_Stat : 33|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ LatCtlCpblty_D_Stat : 39|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ LatCtlCpbltyDStat_No_Cnt : 37|4@0+ (1,0) [0|15] "Unitless" IPMA_ADAS,GWM + SG_ LatCtlCpbltyDStat_No_Cs : 47|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM + SG_ TrlrAn_An_TrgtCalc : 31|8@0+ (1,-128) [-128|127] "degrees" IPMA_ADAS + SG_ LsmcBrkDecelEnbl_D_Rq : 1|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ TjaHandsOnCnfdnc_B_Est : 3|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ LaHandsOff_B_Actl : 7|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ LaActDeny_B_Actl : 6|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ LaActAvail_D_Actl : 5|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ LsmcBrk_Tq_Rq : 15|13@0+ (4,0) [0|32764] "Nm" ABS_ESC + +BO_ 130 EPAS_INFO: 8 PSCM + SG_ TrlrHitchLamp_D_Rqst : 24|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ VehVTrlrAid_B_Rq : 25|1@0+ (1,0) [0|1] "SED" PCM_HEV,GWM,ECM_Diesel,PCM + SG_ Veh_V_RqMxTrlrAid : 63|8@0+ (0.1,0) [0|25.5] "km/h" PCM_HEV,GWM,ECM_Diesel,PCM + SG_ DrvSteActv_B_Stat : 10|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ DrvSte_Tq_Actl : 47|8@0+ (0.0625,-8) [-8|7.8125] "Nm" GWM,ABS_ESC + SG_ SteMdule_D_Stat : 55|3@0+ (1,0) [0|7] "SED" GWM + SG_ SteMdule_U_Meas : 39|8@0+ (0.05,6) [6|18.7] "Volts" GWM + SG_ SteMdule_I_Est : 21|12@0+ (0.05,-64) [-64|140.7] "Amps" GWM + SG_ EPAS_Failure : 9|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ SteeringColumnTorque : 7|8@0+ (0.0625,-8) [-8|7.8125] "Nm" GWM,IPMA_ADAS,ABS_ESC + SG_ SAPPAngleControlStat6 : 15|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ SAPPAngleControlStat5 : 14|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ SAPPAngleControlStat4 : 13|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ SAPPAngleControlStat3 : 12|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ SAPPAngleControlStat2 : 11|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ SAPPAngleControlStat1 : 23|2@0+ (1,0) [0|3] "SED" GWM,IPMA_ADAS + +BO_ 126 SteeringPinion_Data: 8 PSCM + SG_ StePw_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM + SG_ StePinRelInit_An_Sns : 7|16@0+ (0.1,-3200) [-3200|3353.3] "degrees" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM + SG_ StePinCompAnEst_D_Qf : 43|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM + SG_ StePinComp_An_Est : 22|15@0+ (0.1,-1600) [-1600|1676.7] "degrees" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM + SG_ StePinAn_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" VDM,ABS_ESC,TCCM,GWM + SG_ StePinAn_No_Cnt : 47|4@0+ (1,0) [0|15] "unitless" VDM,TCCM,GWM,ABS_ESC + +BO_ 133 SteeringPinion_Data_Alt: 8 PSCM + SG_ StePw_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM + SG_ StePinRelInit_An_Sns : 7|16@0+ (0.1,-3200) [-3200|3353.3] "degrees" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM + SG_ StePinCompAnEst_D_Qf : 43|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM + SG_ StePinComp_An_Est : 22|15@0+ (0.1,-1600) [-1600|1676.7] "degrees" VDM,CMR_DSMC,IPMA_ADAS,TCM_DSL,ECM_Diesel,PCM,PCM_HEV,ABS_ESC,TCCM,GWM + SG_ StePinAn_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" VDM,ABS_ESC,TCCM,GWM + SG_ StePinAn_No_Cnt : 47|4@0+ (1,0) [0|15] "unitless" VDM,TCCM,GWM,ABS_ESC + +BO_ 1430 ABS_AutoSar_NetworkMgt: 8 ABS_ESC + SG_ ABS_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ABS_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" GWM + +BO_ 1200 ABS_BrkBst_Data: 8 ABS_ESC + SG_ BrkHold_D_Stat : 34|3@0+ (1,0) [0|7] "SED" ECM_Diesel,GWM,IPMA_ADAS,PCM,PCM_HEV + SG_ HsaTrnAout_Tq_Rq : 23|16@0+ (4,-131072) [-131072|131060] "Nm" GWM + SG_ BrkBstrVac_P_Actl : 7|7@0+ (8,0) [0|1008] "Millibar" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ YawStabilityIndex : 0|9@0+ (1,-256) [-256|255] "%" VDM,IPMA_ADAS,PSCM,GWM + SG_ BrkTot_Tq_RqDrv : 47|13@0+ (4,0) [0|32760] "Nm" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM,TCCM,PSCM + SG_ BrkTotTqRqDrv_No_Cnt : 39|4@0+ (1,0) [0|15] "unitless" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ BrkTotTqRqDrv_No_Cs : 63|8@0+ (1,0) [0|255] "unitless" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ HsaStat_D_Dsply : 50|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 1102 SelectDriveModeData2: 8 ABS_ESC + SG_ SelDrvMdePos12_D_Stat : 34|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos11_D_Stat : 45|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos10_D_Stat : 55|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos09_D_Stat : 50|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos08_D_Stat : 61|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos07_D_Stat : 39|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos06_D_Stat : 29|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos05_D_Stat : 18|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos04_D_Stat : 23|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos03_D_Stat : 13|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos02_D_Stat : 2|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePos01_D_Stat : 7|5@0+ (1,0) [0|31] "SED" GWM + +BO_ 1056 SelectDriveModeData: 8 ABS_ESC + SG_ AutoEpbMsgTxt_D_Rq : 58|3@0+ (1,0) [0|7] "SED" GWM + SG_ AutoEpbDsply_D_Stat : 37|2@0+ (1,0) [0|3] "SED" GWM + SG_ AutoEpbButtnOn_B_Stat : 48|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos12_B_Avail : 54|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos11_B_Avail : 55|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos10_B_Avail : 40|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos09_B_Avail : 41|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos08_B_Avail : 42|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos07_B_Avail : 43|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos06_B_Avail : 44|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos05_B_Avail : 45|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos04_B_Avail : 46|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos03_B_Avail : 47|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos02_B_Avail : 32|1@0+ (1,0) [0|1] "SED" GWM + SG_ SelDrvMdePos01_B_Avail : 24|1@0+ (1,0) [0|1] "SED" GWM + SG_ ActvDrvMde_D2_Stat : 53|5@0+ (1,0) [0|31] "SED" IPMA_ADAS,GWM + SG_ SelDrvMde_D2_Rq : 63|5@0+ (1,0) [0|31] "SED" GWM + SG_ SelDrvMdePt_D_Rq : 31|5@0+ (1,0) [0|31] "SED" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ SelDrvMdeMsgTxt_D_Rq : 19|4@0+ (1,0) [0|15] "SED" GWM + SG_ SelDrvMde_D_Stat : 26|2@0+ (1,0) [0|3] "SED" GWM + SG_ AwdMde_D_RqBrk : 35|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 1054 BrakeSysFeatures_3: 8 ABS_ESC + SG_ AirDamUp_B_RqBrk : 32|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM_HEV,PCM + SG_ RbaBrk_D_Stat : 63|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ SelDrvMdeChassis2_D_Rq : 45|5@0+ (1,0) [0|31] "SED" PSCM,GWM + SG_ TrailCtl_D_Stat : 55|3@0+ (1,0) [0|7] "SED" TCCM,PCM,GWM + SG_ TrailCtlMsgTxt_D_Rq : 52|4@0+ (1,0) [0|15] "SED" GWM + SG_ BrkBstrVac_D_Stat : 18|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ DrvSlipCtlOffLamp_D_Rq : 23|2@0+ (1,0) [0|3] "SED" GWM + SG_ DrvSlipCtlMdeMsg_D_Rq : 13|5@0+ (1,0) [0|31] "SED" GWM + SG_ AutoHoldMsgTxt_D_Rq : 4|4@0+ (1,0) [0|15] "SED" GWM + SG_ CtaBrk_D_Stat : 47|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ SelDrvMdeAwd_D_Rq : 29|5@0+ (1,0) [0|31] "SED" TCCM,GWM + SG_ AutoHoldSwMde_B_Ind : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ AutoHoldMde_D_Ind : 15|2@0+ (1,0) [0|3] "SED" GWM + SG_ SelDrvMdeChassis_D_Rq : 39|5@0+ (1,0) [0|31] "SED" VDM,GWM + SG_ ApaBrk_D_Stat : 34|2@0+ (1,0) [0|3] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,GWM + +BO_ 1046 BrakeSysFeatures_2: 8 ABS_ESC + SG_ HsaMde_D_Mem : 33|2@0+ (1,0) [0|3] "SED" GWM + SG_ BrkBstrVac_B_Rq : 27|1@0+ (1,0) [0|1] "Discrete" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ HdcMde_D_Actl : 31|3@0+ (1,0) [0|7] "SED" GWM + SG_ RearDiffLck_Tq2_RqMx : 51|12@0+ (4,0) [0|16376] "Nm" GWM + SG_ TRLR_SWAY_EVNT_IN_PROG : 25|1@0+ (1,0) [0|1] "SED" GWM + SG_ TRLR_SWAY_CONFIG_STAT : 26|1@0+ (1,0) [0|1] "SED" GWM + SG_ TCMode : 15|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ DrvSlipCtlLamp_D_Rq : 42|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ Abs_B_Falt : 5|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ DrvSlipCtlMde_D_Ind : 44|2@0+ (1,0) [0|3] "SED" TCCM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ DrvAntiLckLamp_D_Rq : 55|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM,IPMA_ADAS + SG_ BpedMove_No_Cnt : 3|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel,GWM + SG_ StabCtlBrk_B_Avail : 4|1@0+ (1,0) [0|1] "SED" VDM,TCCM,GWM + SG_ DrvHdcWarnInfo_D_Rq : 35|2@0+ (1,0) [0|3] "SED" GWM + SG_ DrvHdcMsg_D_Rq : 10|3@0+ (1,0) [0|7] "SED" GWM + SG_ DrvHdcLampInfo_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ BpedMove_D_Actl : 7|2@0+ (1,0) [0|3] "SED" ECM_Diesel,GWM + SG_ ChimeBrk_B_Rq : 14|1@0+ (1,0) [0|1] "SED" GWM + SG_ BrkLamp_B_Rq : 13|1@0+ (1,0) [0|1] "SED" GWM + SG_ HILL_DESC_MC : 47|3@0+ (1,0) [0|7] "SED" GWM + SG_ RearDiffElckrOpen_B_Rq : 40|1@0+ (1,0) [0|1] "SED" GWM,TCCM + +BO_ 1045 BrakeSysFeatures: 8 ABS_ESC + SG_ VehStab_D_Stat : 55|4@0+ (1,0) [0|15] "SED" TCCM,PCM_HEV,PCM,GWM + SG_ BrkFluidLvl_D_Stat : 17|2@0+ (1,0) [0|3] "SED" GWM + SG_ LsmcBrkDecel_D_Stat : 39|3@0+ (1,0) [0|7] "SED" PSCM,GWM + SG_ VehYawNonLin_W_Rq : 51|12@0+ (0.03663,-75) [-75|74.92659] "deg/s" ECM_Diesel,GWM + SG_ VehYawLin_W_Rq : 35|12@0+ (0.03663,-75) [-75|74.92659] "deg/s" ECM_Diesel,GWM + SG_ VehVActlBrk_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM,IPMA_ADAS + SG_ Veh_V_ActlBrk : 7|16@0+ (0.01,0) [0|655.35] "kph" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM + SG_ VehVActlBrk_No_Cnt : 21|4@0+ (1,0) [0|15] "Unitless" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM,IPMA_ADAS + SG_ VehVActlBrk_D_Qf : 23|2@0+ (1,0) [0|3] "SED" TCCM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,PSCM,TCM_DSL,GWM + +BO_ 1044 BrakeSnData_6: 8 ABS_ESC + SG_ StePinOffst_An_Est : 7|16@0+ (0.1,-3200) [-3200|3353.3] "degrees" GWM,PSCM + SG_ StePinOffst_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" GWM,PSCM + SG_ StePinOffst_No_Cnt : 21|4@0+ (1,0) [0|15] "unitless" GWM,PSCM + SG_ StePinOffst_D_Stat : 23|2@0+ (1,0) [0|3] "SED" GWM,PSCM + +BO_ 1042 TrailerBrakeData: 8 ABS_ESC + SG_ VehRol_An_Dsply : 31|7@0+ (1,-64) [-64|61] "degrees" GWM + SG_ VehPtch_An_Dsply : 23|7@0+ (1,-64) [-64|61] "degrees" GWM,TCCM + SG_ TrlrBrk_Pc_Rq : 14|7@0+ (1,0) [0|127] "percent" GWM + +BO_ 535 WheelSpeed: 8 ABS_ESC + SG_ WhlRr_W_Meas : 54|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL + SG_ WhlRl_W_Meas : 38|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL + SG_ WhlFr_W_Meas : 22|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL + SG_ WhlFl_W_Meas : 6|15@0+ (0.01,0) [0|327.65] "rad/s" VDM,IPMA_ADAS,GWM,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL + +BO_ 534 WheelData: 8 ABS_ESC + SG_ BrkObdData_No_Actl : 63|8@0+ (1,0) [0|255] "unitless" SOBDMC_HPCM_FD1,GWM + SG_ BrkObdIndex_No_Actl : 53|6@0+ (1,0) [0|63] "unitless" SOBDMC_HPCM_FD1,GWM + SG_ WhlRotatRr_No_Cnt : 23|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM + SG_ WhlDirRr_D_Actl : 33|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ECM_Diesel,PCM_HEV,PSCM + SG_ WhlDirRl_D_Actl : 39|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,PSCM,ECM_Diesel,PCM_HEV + SG_ WhlDirFr_D_Actl : 37|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ECM_Diesel,PCM_HEV,PSCM + SG_ WhlDirFl_D_Actl : 35|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ECM_Diesel,PCM_HEV,PSCM + SG_ WhlRotatRl_No_Cnt : 31|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM + SG_ WhlRotatFr_No_Cnt : 7|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM + SG_ WhlRotatFl_No_Cnt : 15|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,GWM,PSCM + +BO_ 532 DesiredTorqBrk_2: 8 ABS_ESC + SG_ RgenTqFalt_B_Actl : 59|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV + SG_ RgenBrkDynoMde_B_Actl : 58|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV + SG_ PrplWhlTqRqMn_No_Cs : 55|8@0+ (1,0) [0|255] "Unitless" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ PrplWhlTot_Tq_RqMn : 7|16@0+ (4,-131072) [-131072|131068] "Nm" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ PrplWhlTqRqMn_No_Cnt : 63|4@0+ (1,0) [0|15] "Unitless" GWM,ECM_Diesel,PCM,PCM_HEV + +BO_ 531 DesiredTorqBrk: 8 ABS_ESC + SG_ VehStop_D_Stat : 28|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM + SG_ TracCtlPtActv_B_Actl : 31|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,TCCM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM + SG_ LscmbbMntr_B_Err : 17|1@0+ (1,0) [0|1] "SED" GWM + SG_ LscmbbBrkDis_B_Actl : 19|1@0+ (1,0) [0|1] "SED" GWM + SG_ LscmbbDeny_B_ActlBrk : 18|1@0+ (1,0) [0|1] "SED" GWM + SG_ PrkBrkYwLamp_D_Rq : 38|2@0+ (1,0) [0|3] "SED" GWM + SG_ PrkBrkRedLamp_D_Rq : 30|2@0+ (1,0) [0|3] "SED" GWM + SG_ LscmbbBrkDecel_B_Actl : 20|1@0+ (1,0) [0|1] "SED" GWM + SG_ AbsActv_B_Actl : 45|1@0+ (1,0) [0|1] "SED" VDM,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM + SG_ StabCtlBrkActv_B_Actl : 23|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,PCM,PCM_HEV,TCM_DSL,PSCM,TCCM,ECM_Diesel,GWM + SG_ CmbbBrkPrchg_B_Actl : 59|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ CmbbBrkDecel_B_Actl : 58|1@0+ (1,0) [0|1] "SED" CMR_DSMC,IPMA_ADAS,GWM + SG_ CmbbBaSensInc_B_Actl : 57|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ AccBrkWarm_B_Actl : 63|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ AccBrkTotTqMn_B_Actl : 62|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ AccBrkPrchgActv_B_Actl : 61|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ AccBrkDis_B_Actl : 44|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ AccBrkDeny_B_Actl : 42|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ AccBrkActv_B_Actl : 43|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,ECM_Diesel,GWM + SG_ PrplDrgCtlActv_B_Actl : 46|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM + SG_ PrplWhlTot_Tq_RqMx : 7|16@0+ (4,-131072) [-131072|131068] "Nm" ECM_Diesel,PCM,PCM_HEV,TCCM,GWM + SG_ LscmbbBaSensInc_B_Actl : 21|1@0+ (1,0) [0|1] "SED" GWM + SG_ CmbbBrkDis_B_Actl : 56|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM,GWM + SG_ CmbbDeny_B_ActlBrk : 60|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ CcDis_B_Cmd : 47|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,GWM + SG_ VehLongOvrGnd_A_Est : 41|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,IPMA_ADAS,TCCM,GWM + SG_ LscmbBrkPrchg_B_Actl : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ AccStopActv_B_ActlBrk : 22|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ AccDis_B_ActlEpb : 32|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ PrkBrkMsgTxt_D_Rq : 36|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkBrkStatus : 26|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM + +BO_ 136 ActiveFronSteering_Req: 8 ABS_ESC + SG_ SteWhlBrkOffst_An_Rq : 7|15@0+ (0.1,-1600) [-1600|1676.5] "degrees" GWM + SG_ SteWhlBrkAnRq_No_Cs : 23|8@0+ (1,0) [0|255] "Unitless" GWM + SG_ SteWhlBrkAnRq_No_Cnt : 31|4@0+ (1,0) [0|15] "Unitless" GWM + +BO_ 125 BrakeSnData_4: 8 ABS_ESC + SG_ VehRolComp_W_Actl : 51|12@0+ (0.03663,-75) [-75|74.92659] "degrees/sec" VDM,GWM + SG_ VehVertComp_A_Actl : 45|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,PSCM,GWM + SG_ BrkTotTqRqArb_No_Cs : 23|8@0+ (1,0) [0|255] "Unitless" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ BrkTotTqRqArb_No_Cnt : 31|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ BrkTot_Tq_RqArb : 4|13@0+ (4,0) [0|32756] "Nm" VDM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM + SG_ BrkTot_Tq_Actl : 27|13@0+ (4,0) [0|32756] "Nm" ECM_Diesel,PCM,PCM_HEV,PSCM,GWM,TCCM + SG_ HsaStat_D_Actl : 7|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM + +BO_ 119 BrakeSnData_3: 8 ABS_ESC + SG_ VehTrvlDir_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ VehOverGnd_V_Est : 7|16@0+ (0.01,0) [0|655.33] "kph" VDM,IPMA_ADAS,TCCM,PSCM,GWM + SG_ VehLongComp_A_Actl : 49|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM + SG_ VehLatComp_A_Actl : 43|10@0+ (0.035,-17.9) [-17.9|17.835] "m/s^2" VDM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,TCCM,GWM + SG_ VehYawComp_W_Actl : 19|12@0+ (0.03663,-75) [-75|74.92659] "deg/s" VDM,TCCM,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,PSCM,GWM + +BO_ 118 BrakeSnData_5: 8 ABS_ESC + SG_ BrkCtrFnd_B_Stat : 39|1@0+ (1,0) [0|1] "SED" GWM + SG_ AwdLck_Tq_RqMx : 35|12@0+ (1,0) [0|4095] "Nm" GWM,TCCM + SG_ AwdLck_Tq_RqMn : 51|12@0+ (1,0) [0|4095] "Nm" GWM,TCCM + SG_ DrvSte_D_Stat : 19|4@0+ (1,0) [0|15] "SED" PSCM,GWM + SG_ DrvSte_Tq_Rq : 31|8@0+ (0.0625,-8) [-8|7.8125] "Nm" PSCM,GWM + SG_ EmgcyBrkLamp_D_Rq : 21|2@0+ (1,0) [0|3] "SED" GWM + SG_ StopLamp_B_RqBrk : 7|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 73 Global_PATS_SubTarget: 8 ABS_ESC + SG_ immoSubTarget1Data_T1 : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" ECM_Diesel,GWM,PCM,PCM_HEV + SG_ immoSubTarget1Cmd_T1 : 7|3@0+ (1,0) [0|7] "SED" ECM_Diesel,GWM,PCM,PCM_HEV + +BO_ 1034 GGCC_Config_Mgmt_ID_1_FD1: 8 GWM + SG_ VehicleGGCCData : 7|64@0+ (1,0) [0|1.84467E+019] "mixed" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,ECM_Diesel,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL + +BO_ 1440 TCM_AutoSar_NetworkMgt: 8 TCM_DSL + SG_ TCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX + +BO_ 561 TransGearData_2: 8 TCM_DSL + SG_ TrnMsgTxt2_D_Rq : 39|3@0+ (1,0) [0|7] "SED" GWM + SG_ TrnMsgTxt_D_Rq : 23|4@0+ (1,0) [0|15] "SED" GWM + +BO_ 330 TransData_3: 8 TCM_DSL + SG_ TrnAout_W_ActlUnfilt : 22|15@0+ (0.1,0) [0|3276.5] "rad/s" ECM_Diesel,GWM + +BO_ 1090 MtrTrac_Data2_FD1: 8 PCM_HEV + SG_ Mtr2State_D_ActlMntr : 31|3@0+ (1,0) [0|7] "SED" GWM + SG_ Inv1Ain_I_ActlMntr : 7|15@0+ (0.1,-1000) [-1000|2276.5] "ampere" GWM + SG_ HybVehMde_D_ActlMntr : 20|3@0+ (1,0) [0|7] "SED" GWM + SG_ ChrgStat_D_ActlMntr : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ VehElRnge_L_Dsply : 28|12@0+ (0.1,0) [0|409.3] "kilometer" GWM + +BO_ 870 Cluster_HEV_Data3_FD1: 8 PCM_HEV + SG_ EngMdeMsgTxt_D_Rq : 12|3@0+ (1,0) [0|7] "SED" GWM + SG_ EffRgenThres_Pc_Dsply : 9|10@0+ (0.1,-102.3) [-102.3|0] "percent" GWM + SG_ RngPerChrgInst_L_Dsply : 45|12@0+ (0.1,0) [0|409.3] "km" GWM + +BO_ 869 Cluster_HEV_Data2: 8 PCM_HEV + SG_ PwrFlowTxt_D_Dsply : 21|4@0+ (1,0) [0|15] "SED" GWM + SG_ EngOnMsg2_D_Dsply : 54|5@0+ (1,0) [0|31] "SED" GWM + SG_ EngOnMsg1_D_Dsply : 38|5@0+ (1,0) [0|31] "SED" GWM + SG_ FuelMaintMde_D_Dsply : 23|2@0+ (1,0) [0|3] "SED" GWM + SG_ EffWhlLvl2_Pc_Dsply : 17|10@0+ (0.2,-102.2) [-102.2|102.4] "percent" GWM + SG_ EffWhlThres_Pc_Dsply : 49|10@0+ (0.1,0) [0|102.3] "percent" GWM + SG_ EngPwLvl_Pc_Dsply : 1|10@0+ (0.1,0) [0|102.3] "percent" GWM + SG_ EngActv_B_Dsply : 2|1@0+ (1,0) [0|1] "SED" GWM + SG_ EffWhlThresOn_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 606 HEV_Powertrain_Data8_FD1: 8 PCM_HEV + SG_ ElVehLaterMde_D_Stat : 7|2@0+ (1,0) [0|3] "SED" GWM + SG_ ElVehNowMde_D_Stat : 5|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 374 PowertrainData_10: 8 PCM + SG_ GearEngag_D_Actl : 47|3@0+ (1,0) [0|7] "SED" GWM + SG_ TrnRng_D_Rq : 27|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,PSCM,ECM_Diesel,GWM + SG_ TrnPrkSys_D_Actl : 31|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,ECM_Diesel,GWM + SG_ GearLvr_D_ActlDrv : 7|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,TCCM,ECM_Diesel,GWM + SG_ GearPos_No_Cs : 23|8@0+ (1,0) [0|255] "unitless" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,ECM_Diesel,GWM + SG_ GearPos_D_Trg : 15|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,TCCM,ECM_Diesel,GWM + SG_ GearPos_No_Cnt : 11|4@0+ (1,0) [0|15] "unitless" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,ECM_Diesel,GWM + SG_ TrnIgnOffDly_T_Rq : 39|8@0+ (4,0) [0|1020] "ms" GWM + SG_ GearPos_D_Actl : 3|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1,PSCM,IPMA_ADAS,ABS_ESC,ECM_Diesel,GWM + +BO_ 603 HEV_Powertrain_Data2: 8 PCM_HEV + SG_ WhlDirAvgDrv_D_Actl : 6|2@0+ (1,0) [0|3] "SED" ABS_ESC,IPMA_ADAS,GWM + SG_ PrplTqMnRgen_B_Actl : 7|1@0+ (1,0) [0|1] "SED" ABS_ESC,GWM + SG_ BattTracCnnct_D_Rq : 20|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 602 HEV_Powertrain_Data: 8 PCM_HEV + SG_ HtrnWarnLamp_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM + SG_ HybPwLimOn_B_Stat : 7|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwPckTqRdy_B_Dsply : 31|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 1152 HEV_Powertrain_Data6: 8 PCM_HEV + SG_ BattTracDiagClr_B_Stat : 2|1@0+ (1,0) [0|1] "SED" GWM + SG_ EngTeHi_B_Actl : 5|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,GWM + SG_ DcdcOn_B_Rq : 6|1@0+ (1,0) [0|1] "SED" GWM + SG_ ULoBattSpprtSustn_B_Rq : 7|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,GWM + SG_ VehElEff_No_Avg : 15|7@0+ (10,-100) [-100|1150] "watt*hr/km" SOBDMC_HPCM_FD1,GWM + +BO_ 872 Cluster_HEV_Data5: 8 PCM_HEV + SG_ PlgActvArb_B_Dsply : 51|1@0+ (1,0) [0|1] "SED" GWM + SG_ HybMdeStat_D_Dsply : 39|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,GWM + +BO_ 560 TransGearData: 8 TCM_DSL + SG_ SelDrvMdeSwtch_D_Stat3 : 15|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC + SG_ TrnSrvcRqd_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ TrnShifActv_B_Actl : 0|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC,ECM_Diesel + SG_ GearLvrPos_D_Actl : 12|4@0+ (1,0) [0|15] "SED" VDM,IPMA_ADAS,GWM,ABS_ESC,PSCM,TCCM,ECM_Diesel + SG_ GboxOil_Te_Actl : 39|8@0+ (1,-60) [-60|193] "degC" SOBDMC_HPCM_FD1,GWM,TCCM,ECM_Diesel + +BO_ 369 EngineData_1: 8 PCM + SG_ SeatWorkSrfc_B_Falt : 12|1@0+ (1,0) [0|1] "SED" GWM + SG_ TrnIpcDsplyRng2_D_Actl : 23|4@0+ (1,0) [0|15] "SED" GWM + SG_ TrnIpcDsplyRng_D_Stat : 9|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrnIpcDsplyGear_D_Actl : 7|4@0+ (1,0) [0|15] "SED" GWM + SG_ TrnIpcDsplyMde_D_Stat : 3|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrnIpcDsplyMde_D_Actl : 15|3@0+ (1,0) [0|7] "SED" GWM + SG_ TrnIpcDsplyGear_D_Stat : 1|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 92 Gear_Shift_by_Wire_3: 8 PCM_HEV + SG_ TrnLvrV_D_Rq : 43|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrnSbwSysHlth_D_Actl : 1|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrnGearNtmAllow_B_Stat : 47|1@0+ (1,0) [0|1] "SED" GWM + SG_ TrnDtpCmd_D_Actl : 46|3@0+ (1,0) [0|7] "SED" GWM + SG_ GearSelLck_D_Rq : 41|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrnGearCmd_No_Cs : 31|8@0+ (1,0) [0|255] "Unitless" GWM + SG_ TrnValidGear_D_Cnfm : 11|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrnNtrlTowCmd_D_Actl : 6|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,GWM,ABS_ESC + SG_ TrnGearCmd_Pc_ActlPt : 9|10@0+ (0.1,0) [0|102.2] "percent duty cycle" GWM + SG_ TrnGear_D_RqPt : 4|3@0+ (1,0) [0|7] "SED" GWM + SG_ TrnCmdState_B_Actl : 39|1@0+ (1,0) [0|1] "SED" GWM + SG_ TrnCmdCnt_B_Actl : 7|1@0+ (1,0) [0|1] "unitless" GWM + SG_ PrkBrkActv_D_RqTrnGear : 38|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC + SG_ TrnGearMsgTxt_D_Rq : 36|5@0+ (1,0) [0|31] "SED" GWM + SG_ TrnGearCmd_No_Cnt : 15|4@0+ (1,0) [0|15] "Unitless" GWM + +BO_ 2030 TesterPhysicalResSOBDMCFD1: 64 ECM_Diesel + SG_ TesterPhysicalResSOBDMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1087 Powertrain_Data_5: 8 PCM_HEV + SG_ BattRgenLoChrg_D_RqEng : 15|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdasLcObtclAbrt_B_Stat : 0|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ BattRgenLoDChrg_D_RqEng : 13|2@0+ (1,0) [0|3] "SED" GWM + SG_ AirDamPos_D_Stat : 11|2@0+ (1,0) [0|3] "SED" GWM,ABS_ESC + SG_ FapLcInhbt_B_Rq : 1|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ FapLcStopHold_B_Rq : 2|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ FapLcPrchgBrk_B_Rq : 3|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ FapLcObstcl_B_Stat : 4|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ FapLcMaxGrdInhbt_B_Stat : 5|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ FapLcMaxGrdAbrt_B_Stat : 6|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + SG_ FapLcActv_B_Stat : 7|1@0+ (1,0) [0|1] "SED" GWM,IPMA_ADAS + +BO_ 332 CGEA_Urea_Strategy: 8 ECM_Diesel + SG_ UreaLvlQlty_D_RqDsply : 51|3@0+ (1,0) [0|7] "SED" GWM + SG_ UreaLvlTxtWarn_D_Rq : 63|4@0+ (1,0) [0|15] "SED" GWM + SG_ UreaQltySysWarn_D_Rq : 59|3@0+ (1,0) [0|7] "SED" GWM + SG_ DieslPrtcWarn_D_Rq : 55|4@0+ (1,0) [0|15] "SED" GWM + SG_ UreaQltyFlg_B_RqDsply : 24|1@0+ (1,0) [0|1] "SED" GWM + SG_ UreaLvl_Pc_Actl : 47|8@0+ (0.4,0) [0|102] "percent" GWM + SG_ VehUreaRnge2_L_DsplyMx : 3|12@0+ (1,0) [0|4095] "kilometer" GWM + SG_ UreaQltySys_D_RqDsply : 27|3@0+ (1,0) [0|7] "SED" GWM + SG_ UreaLvlTxt_D_RqDsply : 31|4@0+ (1,0) [0|15] "SED" GWM + SG_ VehUreaWarn_V_DsplyMx : 23|7@0+ (1,0) [0|127] "km/h" GWM + +BO_ 1896 TesterPhysicalResABS: 64 ABS_ESC + SG_ TesterPhysicalResABS : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1889 TesterPhysicalReqTCCM: 64 TSTR + SG_ TesterPhysicalReqTCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TCCM + +BO_ 1888 TesterPhysicalReqABS: 64 TSTR + SG_ TesterPhysicalReqABS : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" ABS_ESC + +BO_ 1848 TesterPhysicalResPSCM: 64 PSCM + SG_ TesterPhysicalResPSCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1840 TesterPhysicalReqPSCM: 64 TSTR + SG_ TesterPhysicalReqPSCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" PSCM + +BO_ 1713 ABS_Rapid_Data_Response_2: 8 ABS_ESC + SG_ UUDTABSResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1712 ABS_Rapid_Data_Response_1: 8 ABS_ESC + SG_ UUDTABSResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 2025 TesterPhysicalResTCM: 64 TCM_DSL + SG_ TesterPhysicalResTCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 2024 TesterPhysicalResPCM: 64 PCM_HEV + SG_ TesterPhysicalResPCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 2017 TesterPhysicalReqTCM: 64 TSTR + SG_ TesterPhysicalReqTCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TCM_DSL + +BO_ 2016 TesterPhysicalReqPCM: 64 TSTR + SG_ TesterPhysicalReqPCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" ECM_Diesel,PCM,PCM_HEV + +BO_ 2015 TesterFunctionalReq_FD1: 64 TSTR + SG_ TesterFunctionalReq : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCCM,TCM_DSL,PSCM,ABS_ESC,GWM + +BO_ 1897 TesterPhysicalResTCCM: 64 TCCM + SG_ TesterPhysicalResTCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1814 TesterPhysicalReqGWM_FD1: 64 TSTR + SG_ TesterPhysicalReqGWM_F1 : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" GWM + +BO_ 1701 TCM_Rapid_Data_Response_2: 8 TCM_DSL + SG_ UUDTTCMResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1700 TCM_Rapid_Data_Response_1: 8 TCM_DSL + SG_ UUDTTCMResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1697 PCM_Rapid_Data_Response_2: 8 PCM_HEV + SG_ UUDTPCMResponse2 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1696 PCM_Rapid_Data_Response_1: 8 PCM_HEV + SG_ UUDTPCMResponse1 : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" TSTR + +BO_ 1429 PCM_AutoSar_NetworkMgmt: 8 PCM_HEV + SG_ PCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" TCM_DSL + SG_ PCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" TCM_DSL + +BO_ 1100 PowertrainData_9: 8 PCM_HEV + SG_ EngExhMdeQuiet_D2_Stat : 28|3@0+ (1,0) [0|7] "SED" GWM + SG_ HvacCmprLim_D_Stat : 34|3@0+ (1,0) [0|7] "SED" GWM + SG_ WakeAlarm1_T_Rq : 55|15@0+ (1,0) [0|32767] "minute" GWM + SG_ WakeAlarm1_B_Typ : 56|1@0+ (1,0) [0|1] "SED" GWM + SG_ Veh_V_DsplyTrailCtlSet : 47|6@0+ (0.5,0) [0|31] "unitless" GWM + SG_ TrailCtlPt_B_Falt : 36|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + SG_ AutoTowAllw_D_StatMnu : 25|2@0+ (1,0) [0|3] "SED" GWM + SG_ AutoTowActv_B_Stat : 39|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ GrossTrainWeight_M_Est : 7|8@0+ (100,0) [0|25300] "kilogram" VDM,ABS_ESC,PSCM,IPMA_ADAS,TCCM,TCM_DSL,GWM + +BO_ 1098 EffDrvModeData: 8 ECM_Diesel + SG_ EdmVeh_V_Dsply : 31|5@0+ (5,0) [0|155] "km/h" GWM + SG_ EdmSailMdeOn_B_Stat : 25|1@0+ (1,0) [0|1] "SED" GWM + SG_ EdmPrev_Fe_Dsply : 23|8@0+ (0.1,0) [0|25.5] "litre/100km" GWM + SG_ EdmMsgTxt_D_Rq : 11|4@0+ (1,0) [0|15] "SED" GWM + SG_ EdmLamp_D_Dsply : 15|4@0+ (1,0) [0|15] "SED" GWM + SG_ EdmCurrent_Fe_Dsply : 7|8@0+ (0.1,0) [0|25.5] "litre/100km" GWM + SG_ EdmCmplnc_B_Dsply : 26|1@0+ (1,0) [0|1] "SED" GWM + SG_ EdmCmplnc_Pc_Dsply : 24|8@0+ (0.392157,0) [0|100.000035] "percent" GWM + +BO_ 1086 PowertrainData_3: 8 PCM_HEV + SG_ EngMnfld_P_Actl : 47|13@0+ (0.1,-206.8) [-206.8|612.3] "kilopascal" GWM + SG_ FuelPumpPwr_B_Rq : 20|1@0+ (1,0) [0|1] "SED" GWM + SG_ BattULoChrg_U_Cmd : 15|8@0+ (0.025,10.6) [10.6|16.975] "volt" GWM + SG_ ElLoadCtl_D_Rq : 23|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 1071 Engine_Clutch_Data: 8 PCM_HEV + SG_ EngAout_N_Dsply : 52|13@0+ (2,0) [0|16382] "rpm" GWM + SG_ CluPdl_PcRate_Actl : 7|8@0+ (0.04,-5) [-5|5.2] "%/ms" GWM + SG_ CluPdlPosPcMeas_D_Qf : 11|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + SG_ CluPdlPos_Pc_Meas : 9|10@0+ (0.1,0) [0|102.3] "%" ABS_ESC,GWM + SG_ EngAoutIdl_N_Ntrl : 31|11@0+ (2,0) [0|4094] "rpm" ABS_ESC,GWM + +BO_ 1069 PowertrainData_2: 8 PCM_HEV + SG_ SlMde_D_Stat : 57|2@0+ (1,0) [0|3] "SED" GWM + SG_ SlMde_D_RqDsply : 59|2@0+ (1,0) [0|3] "SED" GWM + SG_ IsaOffst_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM + SG_ GrllShtrPos_D_Cmd : 55|4@0+ (1,0) [0|15] "SED" GWM + SG_ GrllShtrPos_B_Falt : 51|1@0+ (1,0) [0|1] "SED" GWM + SG_ ObdWarmUp_B_Complt : 12|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,GWM + SG_ EngMsgTxt_D_Rq : 11|2@0+ (1,0) [0|3] "SED" GWM + SG_ EngClnt_Te_ActlDiag : 39|8@0+ (1,-40) [-40|215] "degC" SOBDMC_HPCM_FD1,TCM_DSL,GWM + SG_ EngLoad_Pc_CalcDiag : 47|8@0+ (0.392157,0) [0|100.000035] "%" SOBDMC_HPCM_FD1,TCM_DSL,GWM + SG_ EngAirIn_Te_Actl : 9|10@0+ (0.25,-128) [-128|127.25] "degC" GWM,TCM_DSL + SG_ ApedPos_Pc_ActlDiag : 31|8@0+ (0.392157,0) [0|100.000035] "%" SOBDMC_HPCM_FD1,TCM_DSL,GWM + +BO_ 1060 Powertrain_Data_4: 8 PCM_HEV + SG_ RearDiffOilTeWarn_B_Rq : 20|1@0+ (1,0) [0|1] "SED" GWM + SG_ RearDiffOil_Te_Actl : 15|9@0+ (1,-40) [-40|470] "degC" GWM + SG_ BpedDrvMsgTxt_B_Dsply : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ FuelLvl_Pc_DsplyEng : 41|10@0+ (0.108696,-5.217408) [-5.217408|105.9786] "percent" GWM + SG_ FuelLvlWarn_D_ActlEng : 19|3@0+ (1,0) [0|7] "SED" GWM + SG_ FuelRange_L_DsplyEng : 39|14@0+ (0.1,0) [0|1638.3] "kilometer" GWM + SG_ SelDrvMdePt_D_Stat : 25|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + +BO_ 1057 PowertrainData_1: 8 PCM_HEV + SG_ FohEng_D_Rq : 1|2@0+ (1,0) [0|3] "SED" GWM + SG_ EngIdlShutDwnTxt_D_Rq : 17|2@0+ (1,0) [0|3] "SED" GWM + SG_ EngIdlShutDown_D_Stat : 9|2@0+ (1,0) [0|3] "SED" GWM + SG_ FUEL_ALCOHOL_PERCNT : 63|8@0+ (0.393700787,0) [0|99.999899898] "Percent" GWM + SG_ TrnTotTq_Rt_Est : 39|16@0+ (0.001,0) [0|65.533] "Unitless" GWM + SG_ TrnTotLss_Tq_Est : 31|8@0+ (0.5,0) [0|126.5] "Nm" GWM + SG_ ECMMILRequest : 3|2@0+ (1,0) [0|3] "SED" GWM + SG_ AirCondFluidHi_P_Actl : 55|8@0+ (0.125,0) [0|31.625] "bar" SOBDMC_HPCM_FD1,GWM + SG_ OilPressureWarning : 18|1@0+ (1,0) [0|1] "SED" GWM + SG_ VehVLimStat_D_Actl : 6|3@0+ (1,0) [0|7] "SED" GWM,TCM_DSL + SG_ VehVLimActv_B_Actl : 7|1@0+ (1,0) [0|1] "SED" GWM,TCM_DSL + SG_ CoolantFanStepAct : 23|5@0+ (1,0) [0|31] "Steps" GWM + +BO_ 1055 PowertrainData_7: 8 PCM_HEV + SG_ EcoCochInstNeg_B_Dsply : 53|1@0+ (1,0) [0|1] "SED" GWM + SG_ EcoCochShif_Pc_Dsply : 39|8@0+ (0.392157,0) [0|100.000035] "percent" GWM + SG_ EcoCochInst_Pc_Dsply : 47|10@0+ (0.1,0) [0|102.3] "percent" GWM + SG_ EcoCochIdlFuel_Pc_Dsply : 31|8@0+ (0.392157,0) [0|100.000035] "percent" GWM + SG_ EcoCochDecel_Pc_Dsply : 23|8@0+ (0.392157,0) [0|100.000035] "percent" GWM + SG_ EcoCochCrus_Pc_Dsply : 15|8@0+ (0.392157,0) [0|100.000035] "percent" GWM + SG_ EcoCochA_Pc_Dsply : 7|8@0+ (0.392157,0) [0|100.000035] "percent" GWM + +BO_ 562 PowertrainData_11: 8 ECM_Diesel + SG_ GearNtrl_No_Cs : 15|8@0+ (1,0) [0|255] "unitless" GWM + SG_ GearNtrl_No_Cnt : 5|4@0+ (1,0) [0|15] "unitless" GWM + SG_ GearNtrl_D_Stat : 7|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + +BO_ 523 Engine_Data_18: 8 ECM_Diesel + SG_ EngAirFiltMsgTxt_D_Rq : 2|3@0+ (1,0) [0|7] "SED" GWM + SG_ WaterInFuel_B_Falt : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ UreaMnAdd_L2_Actl : 23|8@0+ (0.1,0) [0|25.4] "litre" GWM + SG_ VehUreaRnge3_L_DsplyMx : 31|16@0+ (1,0) [0|65535] "unitless" GWM + SG_ UreaMxAdd_L2_Actl : 47|9@0+ (0.1,0) [0|51] "litre" GWM + +BO_ 517 PowertrainData_6: 8 PCM_HEV + SG_ FapLc_B_Err : 10|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ BrkTot_Tq_RqFapLc : 7|13@0+ (4,0) [0|32764] "Nm" ABS_ESC,GWM + SG_ TrnAin_Pc_RqDrv : 9|10@0+ (0.1,0) [0|102.3] "percent" TCCM,GWM + +BO_ 516 EngVehicleSpThrottle: 8 PCM_HEV + SG_ EngAoutNActl_D_QF : 31|2@0+ (1,0) [0|3] "SED" TCM_DSL,GWM + SG_ EngAout3_N_Actl : 55|16@0+ (0.25,0) [0|16383.5] "RPM" SOBDMC_HPCM_FD1,GWM + SG_ ApedPos_PcRate_ActlArb : 23|8@0+ (0.04,-5) [-5|5.12] "%/ms" TCM_DSL,GWM + SG_ ApedPos_Pc_ActlArb : 1|10@0+ (0.1,0) [0|102.3] "%" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,TCCM,ABS_ESC,PSCM,TCM_DSL,GWM + SG_ ApedPosPcActl_D_Qf : 7|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,SOBDMC_HPCM_FD1,ABS_ESC,PSCM,TCM_DSL,GWM + SG_ EngAout_N_Actl : 28|13@0+ (2,0) [0|16382] "rpm" VDM,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM + SG_ ApedPosPcActl_No_Cnt : 5|4@0+ (1,0) [0|15] "Unitless" ABS_ESC,SOBDMC_HPCM_FD1,GWM + SG_ ApedPosPcActl_No_Cs : 47|8@0+ (1,0) [0|255] "Unitless" ABS_ESC,SOBDMC_HPCM_FD1,GWM + +BO_ 514 EngVehicleSpThrottle2: 8 PCM_HEV + SG_ StrtrMtrDlyStrt_B_Stat : 39|1@0+ (1,0) [0|1] "SED" GWM + SG_ VehVTrlrAid_B_Avail : 23|1@0+ (1,0) [0|1] "SED" PSCM,GWM + SG_ StrtrMtrCtlMsgTxt_D_Rq : 7|3@0+ (1,0) [0|7] "SED" GWM + SG_ VehVActlEng_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" PSCM,GWM + SG_ VehVActlEng_No_Cnt : 22|4@0+ (1,0) [0|15] "Unitless" PSCM,GWM + SG_ Veh_V_RqCcSet : 32|9@0+ (0.5,0) [0|255.5] "kph" IPMA_ADAS,ABS_ESC,TCM_DSL,GWM + SG_ VehVActlEng_D_Qf : 38|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ABS_ESC,PSCM,TCM_DSL,GWM + SG_ Veh_V_ActlEng : 55|16@0+ (0.01,0) [0|655.35] "kph" VDM,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,PSCM,TCM_DSL,GWM + SG_ GearRvrse_D_Actl : 4|3@0+ (1,0) [0|7] "SED" CMR_DSMC,IPMA_ADAS,ABS_ESC,PSCM,GWM + SG_ StrtrMtrCtlMsgTxt_D2_Rq : 1|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 512 TorqueDataEngFlags: 8 PCM_HEV + SG_ PrplWhlTotTqRq_No_Cs : 63|8@0+ (1,0) [0|255] "Unitless" ABS_ESC,GWM + SG_ PrplWhlTotTqRq_No_Cnt : 51|4@0+ (1,0) [0|15] "Unitless" ABS_ESC,GWM + SG_ PrplWhlTot_Tq_Rq : 39|16@0+ (4,-131072) [-131072|131068] "Nm" VDM,TCCM,ABS_ESC,GWM + SG_ PrplWhlTot_Tq_LimMn : 23|16@0+ (4,-131072) [-131072|131068] "Nm" ABS_ESC,GWM + SG_ PtDrvMde_D_Stat : 55|4@0+ (1,0) [0|15] "SED" IPMA_ADAS,GWM + +BO_ 381 EngineData_17: 8 ECM_Diesel + SG_ EngOilLife_T_Actl : 23|11@0+ (1,0) [0|2047] "days" GWM + SG_ EngOilSrvcMsgTxt_D_Rq : 55|3@0+ (1,0) [0|7] "SED" GWM + SG_ DistToNextOilChange : 7|16@0+ (1,0) [0|65535] "unitless" GWM + SG_ RunDryPrevent_B_Stat : 28|1@0+ (1,0) [0|1] "SED" GWM + SG_ WaterInFuel : 52|1@0+ (1,0) [0|1] "SED" GWM + SG_ GlowIndication : 51|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 380 EngineData_16: 8 PCM + SG_ EngOilLvlWarn_D_Rq1 : 55|3@0+ (1,0) [0|7] "SED" GWM + SG_ EngExhBrkOnLamp_B_Rq : 27|1@0+ (1,0) [0|1] "SED" GWM + SG_ EngExhBrkAutoLamp_B_Rq : 3|1@0+ (1,0) [0|1] "SED" GWM + SG_ EngAout_N_MxAllw : 52|13@0+ (2,0) [0|16382] "rpm" SOBDMC_HPCM_FD1,GWM + SG_ EngExhBrkMde_D_Actl : 31|4@0+ (1,0) [0|15] "SED" TCM_DSL,GWM + +BO_ 377 EngineData_7: 8 PCM_HEV + SG_ HvacAirFullOut_B_Rq : 23|1@0+ (1,0) [0|1] "SED" GWM + SG_ FuelFlw_Vl_Dsply : 49|10@0+ (25,0) [0|25575] "Micro_Liter" GWM + SG_ FuelFillInlet_B_Dsply : 32|1@0+ (1,0) [0|1] "SED" GWM + SG_ EngSrvcRqd_B_Rq : 19|1@0+ (1,0) [0|1] "SED" GWM + SG_ OdoCount : 47|8@0+ (0.2,0) [0|50.8] "Meters" GWM + SG_ EngOilLife_Pc_Actl : 39|7@0+ (1,0) [0|100] "Percent" GWM + SG_ FuelFilterLamp_B_Dsply : 50|1@0+ (1,0) [0|1] "SED" GWM + SG_ AirCondRec_B_Rq : 55|1@0+ (1,0) [0|1] "SED" GWM + SG_ AirCondClutch_B_Stats : 51|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 376 EngineClimateData: 8 PCM_HEV + SG_ GasPrtc_D_RqDsply : 22|3@0+ (1,0) [0|7] "SED" GWM + SG_ EngAout_Aa_Actl : 17|10@0+ (0.05,-25.6) [-25.6|25.55] "rpm/ms" ABS_ESC,GWM + SG_ DynoMde_B_Cmd : 4|1@0+ (1,0) [0|1] "SED" TCM_DSL,ABS_ESC,GWM + SG_ AslIconDsply_D_Rq : 3|2@0+ (1,0) [0|3] "SED" GWM + SG_ AslChime_B_Rq : 39|1@0+ (1,0) [0|1] "SED" GWM + SG_ HvacHtrCore2_Te_Actl : 1|10@0+ (0.25,-50) [-50|205.5] "degC" SOBDMC_HPCM_FD1,GWM + SG_ EcssLamp_D_RqDsply : 19|2@0+ (1,0) [0|3] "SED" GWM + SG_ AirAmbTe_D_Qf : 35|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,TCCM,GWM + SG_ AirAmb_Te_ActlFilt : 49|10@0+ (0.25,-128) [-128|127.75] "deg C" SOBDMC_HPCM_FD1,IPMA_ADAS,GWM + SG_ AirAmb_Te_Actl : 33|10@0+ (0.25,-128) [-128|127.75] "degC" ABS_ESC,TCCM,GWM + SG_ AirAmb_P_Actl : 55|6@0+ (10,500) [500|1110] "mbar" ABS_ESC,TCM_DSL,GWM + +BO_ 373 EngineData_11: 8 ECM_Diesel + SG_ DieslPrtc2_D_RqDsply : 47|4@0+ (1,0) [0|15] "SED" GWM + SG_ DieslPrtcRgen_D_Actl : 38|2@0+ (1,0) [0|3] "SED" TCM_DSL,GWM + SG_ EngTeColdPrtct_D_Stats : 4|2@0+ (1,0) [0|3] "SED" GWM + SG_ EngExhOvrTe_B_RqDsply : 39|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 359 VehicleOperatingModes: 8 PCM_HEV + SG_ PrplWhlRgenMn_Tq_Actl : 25|13@0+ (4,-16380) [-16380|16380] "Nm" ABS_ESC,GWM + SG_ ElPw_D_StatStrtStop : 31|4@0+ (1,0) [0|15] "SED" ABS_ESC,PSCM,GWM + SG_ TrnAin_Tq_Actl : 42|11@0+ (1,-500) [-500|1547] "Nm" ABS_ESC,GWM + SG_ PrplWhlTot2_Tq_Actl : 15|16@0+ (4,-131072) [-131072|131060] "Nm" ABS_ESC,PSCM,TCCM,GWM + SG_ PwPckTq_D_Stat : 5|2@0+ (1,0) [0|3] "SED" VDM,CMR_DSMC,IPMA_ADAS,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM + SG_ Eng_D_Stat : 7|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + SG_ PlgActvArb_B_Actl : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ ElPw_D_Stat : 3|3@0+ (1,0) [0|7] "SED" VDM,CMR_DSMC,IPMA_ADAS,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM + SG_ TrnAinTq_D_Qf : 44|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + +BO_ 358 Stop_Start: 8 PCM_HEV + SG_ StopStrtStdby_D_Indic : 55|3@0+ (1,0) [0|7] "SED" GWM + SG_ StopStrtIODTxt_D_Rq : 52|5@0+ (1,0) [0|31] "SED" GWM + SG_ StopStrtDrvMde_D_Indic : 13|2@0+ (1,0) [0|3] "SED" GWM + SG_ StopStrtMsgTxt_D_Rq : 11|4@0+ (1,0) [0|15] "SED" GWM + SG_ OdoTripVerify_L_Actl : 31|24@0+ (0.1,0) [0|1677721.4] "km" GWM + SG_ HiElPwInhbt_B_Stat : 15|1@0+ (1,0) [0|1] "SED" GWM + SG_ AutoStopPtDelta_I_Est : 7|8@0+ (1,-127) [-127|127] "Amps" GWM + +BO_ 357 EngBrakeData: 8 PCM_HEV + SG_ BPedDrvAppl_D_QF : 15|2@0+ (1,0) [0|3] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,PSCM,TCM_DSL,GWM + SG_ CmbbDeny_B_ActlPrpl : 3|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ PrplTqMnSat_B_Actl : 41|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ BpedDrvAppl_D_Actl : 5|2@0+ (1,0) [0|3] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,PSCM,TCCM,TCM_DSL,GWM + SG_ CmbbEngTqMn_B_Actl : 7|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,GWM + SG_ Veh_V_DsplyCcSet : 23|8@0+ (1,0) [0|253] "Unitless" GWM,IPMA_ADAS + SG_ AccEngStat_D_Actl : 2|3@0+ (1,0) [0|7] "SED" IPMA_ADAS,GWM + SG_ CcMde_D_Actl : 13|3@0+ (1,0) [0|7] "SED" VDM,TCM_DSL,ABS_ESC,GWM + SG_ CcStat_D_Actl : 10|3@0+ (1,0) [0|7] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,IPMA_ADAS,ABS_ESC,TCCM,TCM_DSL,GWM + SG_ EngAout_N_MnAllw : 52|13@0+ (2,0) [0|16382] "rpm" SOBDMC_HPCM_FD1,GWM + SG_ CcOvrrdActv_B_Actl : 6|1@0+ (1,0) [0|1] "SED" VDM,IPMA_ADAS,ABS_ESC,TCCM,TCM_DSL,GWM + SG_ AccStopMde_D_Rq : 39|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,ABS_ESC,GWM + +BO_ 355 EngineData_10: 8 ECM_Diesel + SG_ AutoRgenTxt_B_RqDsply : 48|1@0+ (1,0) [0|1] "SED" GWM + SG_ AccFllwMdeActv_B_Actl : 32|1@0+ (1,0) [0|1] "SED" GWM + SG_ EngPtoMde_D_Actl : 60|3@0+ (1,0) [0|7] "SED" GWM + SG_ ManRgenTxt_D_RqDsply : 63|3@0+ (1,0) [0|7] "SED" GWM + SG_ ManRgenSoot_Pc_RqDsply : 39|7@0+ (1,0) [0|126] "%" GWM + SG_ DieslMsgTxt_D_Rq : 57|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 342 EngineData_6: 8 PCM_HEV + SG_ EngOvrhtMitgActv_D_Ind : 36|2@0+ (1,0) [0|3] "SED" GWM + SG_ EngClntTe_D_Qf : 33|2@0+ (1,0) [0|3] "SED" VDM,SOBDMC_HPCM_FD1,TCM_DSL,GWM + SG_ EngGoutLss_Tq_Est : 31|8@0+ (1,0) [0|255] "Nm" SOBDMC_HPCM_FD1,GWM + SG_ EngOil_Te_Actl : 15|8@0+ (1,-60) [-60|193] "degC" GWM + SG_ EngClnt_Te_Actl : 7|8@0+ (1,-60) [-60|195] "degC" VDM,SOBDMC_HPCM_FD1,TCM_DSL,GWM + +BO_ 71 Global_PATS_TargetInfo: 8 PCM_HEV + SG_ immoTarget1Status : 7|3@0+ (1,0) [0|7] "SED" ABS_ESC,TCM_DSL,GWM + SG_ immoTarget1Data : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" ABS_ESC,GWM + SG_ immoTarget1Cmd : 4|3@0+ (1,0) [0|7] "SED" ABS_ESC,GWM + +BO_ 1822 TesterPhysicalResGWM_FD1: 64 GWM + SG_ TesterPhysicalResGWM_F1 : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1438 GWM_AutoSar_NetMgmt_FD1: 8 GWM + SG_ GWM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + SG_ GWM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" PCM_HEV,PCM,SOBDMC_HPCM_FD1,PSCM,ABS_ESC + +BO_ 954 Body_Info_10_FD1: 8 GWM + SG_ GenericSwtch3_No_Actl : 15|3@0+ (1,0) [0|7] "unitless" Vector__XXX + SG_ GenericSwtch2_No_Actl : 4|3@0+ (1,0) [0|7] "unitless" Vector__XXX + SG_ GenericSwtch1_No_Actl : 7|3@0+ (1,0) [0|7] "unitless" Vector__XXX + +BO_ 1006 Personality_IPMB_Data: 8 IPMA_ADAS + SG_ PersIndexIpmb_D_Actl : 39|3@0+ (1,0) [0|7] "SED" GWM + SG_ FeatNoIpmbActl : 23|16@0+ (1,0) [0|65535] "Number" GWM + SG_ FeatConfigIpmbActl : 7|16@0+ (1,0) [0|65535] "Undefined" GWM + +BO_ 820 Adaptive_Headlamp_Stat: 8 GWM + SG_ AhbStatGfhbFdbk_D_Actl : 53|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ HeadLghtDrvSide_B_Stat : 33|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ HeadLghtHiOn_B_StatHcm : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Adaptive_Hdlmp_Fault : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 137 ActiveFrontStrg_Stat_FD1: 8 GWM + SG_ SteWhlOffstRq_D_Stat : 43|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ SteWhlOffst_An_TotActl : 23|15@0+ (0.1,-1600) [-1600|1676.5] "degrees" ABS_ESC + SG_ SteWhlBrkOffst_An_Actl : 7|15@0+ (0.1,-1600) [-1600|1676.5] "degrees" ABS_ESC + SG_ SteWhlBrkAnActl_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" ABS_ESC + SG_ SteWhlBrkAnActl_No_Cnt : 47|4@0+ (1,0) [0|15] "Unitless" ABS_ESC + +BO_ 129 Steering_Wheel_Data2_FD1: 8 GWM + SG_ SelDrvMdeSwtch_D_Stat4 : 21|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ SteWhlSwtchView_B_Stat : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchSet_B_Stat : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchPhon_B_Stat : 9|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchNav_B_Stat : 10|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchMed_B_Stat : 11|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchIod_B_Stat : 12|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchHud_B_Stat : 13|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchBack_B_Stat : 14|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchMenu_B_Stat : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteEffortInc_B_RqDrv : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SelDrvMdeInc_B_RqDrv : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SelDrvMdeDec_B_RqDrv : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SuspDampInc_B_RqDrv : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchUp_B_Stat : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchRght_B_Stat : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchOk_B_Stat : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchLeft_B_Stat : 1|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchDown_B_Stat : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchHome_B_Stat : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ SteWhlSwtchInfo_B_Stat : 18|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 935 Side_Detect_R_Stat: 8 IPMA_ADAS + SG_ SodRight_D_Stat : 15|3@0+ (1,0) [0|7] "SED" GWM + SG_ CtaAlrtRight2_D_Stat : 30|3@0+ (1,0) [0|7] "SED" GWM + SG_ BttRight_D_Stat : 45|3@0+ (1,0) [0|7] "SED" GWM + SG_ BttRight_D_RqDrv : 47|2@0+ (1,0) [0|3] "SED" GWM + SG_ CtaBrkRightMsgTxt_B_Rq : 42|1@0+ (1,0) [0|1] "SED" GWM + SG_ CtaRightBrkEnbl_B_Rq : 31|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ CtaRightBrkDecel_B_Rq : 7|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ Side_Detect_R_Illum : 39|8@0+ (1,0) [0|255] "Percent" GWM + SG_ CtaSnsRight_D_Stat : 25|2@0+ (1,0) [0|3] "SED" GWM + SG_ CtaAlrtRight_D_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ CtaRight_D_Stat : 18|3@0+ (1,0) [0|7] "SED" GWM + SG_ SodSnsRight_D_Stat : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ SodAlrtRight_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ SodDetctRight_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ SodWarnRight_Prd_Rq : 6|7@0+ (1,0) [0|127] "millisecond" GWM + +BO_ 1108 RCMSerialNumber_FD1: 8 GWM + SG_ RCMSerialNoByte8 : 63|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte7 : 55|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte6 : 47|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte5 : 39|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte4 : 31|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte3 : 23|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte2 : 15|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + SG_ RCMSerialNoByte1 : 7|8@0+ (1,0) [0|253] "Unitless" ABS_ESC + +BO_ 261 APIM_Request_Signals_FD1: 8 GWM + SG_ ChrgStatDsply_D_Rq : 47|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ OffPeakTimeSetMin_Rq : 13|6@0+ (1,0) [0|63] "unitless" Vector__XXX + SG_ OffPeakTimeSetHR_Rq : 7|5@0+ (1,0) [0|31] "unitless" Vector__XXX + SG_ NextUsageTimeToggle_Rq : 15|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ LongTermParking_Rq : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ CbnCmrtPrefLstNmItm_Rq : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ CbnCmrtPrefListIndx_Rq : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ ModemReset_D_Rq : 45|4@0+ (1,0) [0|15] "SED" SOBDMC_HPCM_FD1 + SG_ StopStrtDrvMde_B_RqBtn3 : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TCU_ESN_D_Rq : 22|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ FactoryReset_Rq : 18|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + +BO_ 1146 TrailerInfo_2_FD1: 8 GWM + SG_ TrlrAidSwtch_D_RqDrv : 35|2@0+ (1,0) [0|3] "SED" PSCM,IPMA_ADAS + SG_ TrlrAidCtl_U_RqDrv : 31|12@0+ (0.00125,0) [0|5.11625] "volt" PSCM + +BO_ 533 APIM_Send_Signals_2_FD1: 8 GWM + SG_ DcacGfciTestBttn_B_Stat : 9|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ TrlrBrkGain_No_Rq : 55|5@0+ (0.5,0) [0|15.5] "unitless" Vector__XXX + SG_ DcacPwResetButtn_B_Stat : 11|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacPwOffButtn_B_Stat : 12|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacPwLoButtn_B_Stat : 13|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacPwHiButtn_B_Stat : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacPwButtn_B_Falt : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ TrlrHitch_D_RqMnu : 23|4@0+ (1,0) [0|15] "SED" IPMA_ADAS + SG_ AutoEpbZoomView_B_Stat : 32|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ AutoEpbButtn_B_Stat : 19|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ TrlrAidMde_D_Rq : 5|2@0+ (1,0) [0|3] "SED" PSCM + SG_ TCU_Init_Actvtn_St : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TCU_Final_Actvtn_St : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ OtaTrg_D_Stat : 41|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ OnbChrgGoTTouch_D_Rq : 43|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTPrcond_D_Rq : 34|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTOn_D_Rq : 25|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTMnte_D_Rq : 47|4@0+ (1,0) [0|15] "minute" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTHr_T_Rq : 39|5@0+ (1,0) [0|29] "hour" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTExtHtr_D_Rq : 27|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTElement_D_Rq : 31|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1 + SG_ OnbChrgGoTDelete_B_Rq : 17|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ OnbChrgClearAll_B_Rq : 18|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ PaakMyKey_D_Rq : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ OnbChrgGoTUpdate_B_Rq : 16|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + +BO_ 1041 AC_Compressor_Data_FD1: 8 GWM + SG_ ElCmprUHi_U_Actl : 31|8@0+ (2,0) [0|510] "volt" SOBDMC_HPCM_FD1 + SG_ ElCmprUHi_D_Stat : 23|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprOverTe_D_Stat : 21|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmpr_N_Actl : 15|8@0+ (50,0) [0|12700] "RPM" SOBDMC_HPCM_FD1 + SG_ ElCmpr_Pw_Actl : 7|8@0+ (40,0) [0|10160] "watts" SOBDMC_HPCM_FD1,PCM_HEV + SG_ ElCmpr_D_Stat : 19|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprPerfErr_D_Falt : 43|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprInnrErr_D_Falt : 35|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprLostComm_D_Falt : 33|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprOverLoad_D_Falt : 47|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprOverTe_D_Falt : 45|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprBattURng_D_Falt : 37|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprBattSysU_D_Falt : 39|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ ElCmprSysU_D_Falt : 41|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + +BO_ 1067 Battery_Mgmt_4_FD1: 8 GWM + SG_ BattULoAuxIsol_D_Rq : 25|2@0+ (1,0) [0|3] "SED" PCM_HEV + SG_ BattULoAux_U_Rq : 55|12@0+ (0.00390625,0) [0|15.9921875] "volt" PCM_HEV + SG_ BattULoAuxSoc_Pc_Actl : 15|7@0+ (1,0) [0|127] "percent" PCM_HEV + SG_ BattULoAux_I_Actl : 23|12@0+ (0.0625,-128) [-128|127.875] "ampere" PCM_HEV + SG_ BattULoAux_D_Qlty : 27|2@0+ (1,0) [0|3] "SED" PCM_HEV + SG_ BattULoCrnkStrt_U_Pred : 47|7@0+ (0.1,0) [0|12.7] "volt" PCM_HEV + SG_ BattULoCrnkBelt_U_Pred : 39|7@0+ (0.1,0) [0|12.7] "volt" PCM_HEV + SG_ BattULoAux_U_Actl : 7|8@0+ (0.0625,0) [0|15.875] "volt" PCM_HEV + SG_ BattULoAux_B_Falt : 8|1@0+ (1,0) [0|1] "SED" PCM_HEV + +BO_ 1112 Battery_Traction_6_FD1: 8 GWM + SG_ BattTracChrgSustn_B_Rq : 4|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracCnnct_D_Cmd : 18|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracHvilOpen_B_Stat : 8|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracDcdcDis_B_Rq : 7|1@0+ (1,0) [0|1] "SED" PCM_HEV + SG_ HtrnClntPump_D_Stat : 6|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ BattTracDelta_Te_Actl : 63|8@0+ (0.5,-60) [-60|67.5] "degC" SOBDMC_HPCM_FD1 + SG_ BattTracClntPmp_D_Stat : 33|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + +BO_ 139 CruiseCtrl_Strg_Data_FD1: 8 GWM + SG_ AfsPw_B_Rq : 24|1@0+ (1,0) [0|1] "SED" PCM + SG_ AccButtnGpTogglePress2 : 25|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TjaButtnOnOffPress2 : 26|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ActvFrontSteMsgTxt_D_Rq : 31|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ ActvFrontSteLck_D_Stat : 17|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ SelDrvMdeAdptSte_D_Stat : 28|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ AslButtnOnOffPress2 : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AslButtnOnOffCnclPres2 : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcButtnOnPress2 : 18|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcButtnOnOffPress2 : 19|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcButtnOnOffCnclPress2 : 20|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcButtnOffPress2 : 21|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAsllButtnResPress2 : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnSetPress2 : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnSetIncPress2 : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnSetDecPress2 : 9|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnResIncPress2 : 10|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnResDecPress2 : 11|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnOnPress2 : 12|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnOnOffCncl2 : 13|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnOffCnclPres2 : 14|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnIndxIncPres2 : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnIndxDecPres2 : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnDeny_B_Actl2 : 1|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnCnclResPres2 : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnCnclPress2 : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AccButtnGapIncPress2 : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AccButtnGapDecPress2 : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 1121 AllTerrainControlData_FD1: 8 GWM + SG_ SelDrvMdeSwtch_No_Actl : 2|2@0+ (1,0) [0|3] "unitless" ABS_ESC + SG_ SelDrvMdeSwtch_D_Stat : 4|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ SelDrvMdeCnt_D_Stat : 7|3@0+ (1,0) [0|7] "Counts" ABS_ESC + +BO_ 1120 FourByFourSwitchData_FD1: 8 GWM + SG_ DrvSlipCtlMde_B_Rq3 : 14|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ HybMdeSwtch_B_Rq : 13|1@0+ (1,0) [0|1] "SED" PCM_HEV + SG_ TrailCtlSwtch_B_Stat3 : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ RearDiffLck_D_RqDrv : 4|2@0+ (1,0) [0|3] "SED" PCM,TCCM + SG_ AwdMde_D_RqDrv : 7|3@0+ (1,0) [0|7] "SED" TCCM + SG_ HdcSwtchPos_B_Actl : 0|1@0+ (1,0) [0|1] "SED" ABS_ESC + +BO_ 1050 Climate_Control_Data_FD1: 8 GWM + SG_ AutoHoldSwtch_D_Stat : 20|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ LpdbPtc3_B_Rq : 36|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ LpdbPtc2_B_Rq : 37|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ LpdbPtc1_B_Rq : 38|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ LpdbHeatWiprPrk_B_Rq : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ LpdbDfrstRearOn_B_Rq : 24|1@0+ (1,0) [0|1] "SED" ECM_Diesel + SG_ SteWhlHeat_D_Rq : 13|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ MirrorHeatOn_B_Rq : 14|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Remote_Start_QuietMode : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Outside_Air_Temp_Stat : 7|8@0+ (0.5,-40) [-40|86.5] "Degrees C" VDM,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM + +BO_ 1137 Cluster_HEV_Data10_FD1: 8 PCM_HEV + SG_ RngPerChrgAvg_L_Dsply : 7|12@0+ (0.1,0) [0|409.3] "km" GWM + +BO_ 1255 BoundaryAlert_Right_4: 8 IPMA_ADAS + SG_ BalrRight4Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight4Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight4Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight4CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight4CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1254 BoundaryAlert_Right_3: 8 IPMA_ADAS + SG_ BalrRight3Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight3Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight3Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight3CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight3CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1253 BoundaryAlert_Right_2: 8 IPMA_ADAS + SG_ BalrRight2Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight2Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight2Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight2CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight2CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1252 BoundaryAlert_Right_1: 8 IPMA_ADAS + SG_ BalrRight1Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight1Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight1Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrRight1CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrRight1CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1251 BoundaryAlert_Left_4: 8 IPMA_ADAS + SG_ BalrLeft4Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft4Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft4Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft4CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft4CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1250 BoundaryAlert_Left_3: 8 IPMA_ADAS + SG_ BalrLeft3Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft3Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft3Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft3CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft3CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1249 BoundaryAlert_Left_2: 8 IPMA_ADAS + SG_ BalrLeft2Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft2Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft2Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft2CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft2CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1248 BoundaryAlert_Left_1: 8 IPMA_ADAS + SG_ BalrLeft1Threat_D_Stat : 16|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft1Prev3Y_L_Actl : 51|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1Prev3X_L_Actl : 42|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1Prev2Y_L_Actl : 33|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1Prev2X_L_Actl : 24|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1Prev1Y_L_Actl : 31|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1Prev1X_L_Actl : 23|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1Fast_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft1Dsply_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrLeft1CurntY_L_Actl : 15|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + SG_ BalrLeft1CurntX_L_Actl : 7|7@0+ (0.5,-32) [-32|31.5] "meter" GWM + +BO_ 1113 TrailerAid_Stat3: 8 IPMA_ADAS + SG_ TrlrTrgtAcquire_D_Stat : 51|3@0+ (1,0) [0|7] "SED" PSCM,GWM + SG_ TrlrAnOffst_An_Calc : 48|9@0+ (0.1,0) [0|51.1] "degrees" GWM + SG_ TrlrAnOffstDir_D_Calc : 33|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrlrAnCalib_B_Complt : 40|1@0+ (1,0) [0|1] "SED" GWM + SG_ TrlrRvrse_D_Stat : 42|2@0+ (1,0) [0|3] "SED" GWM,PSCM + SG_ TrlrAid_D2_Stat : 55|4@0+ (1,0) [0|15] "SED" GWM,PSCM + SG_ TrlrAidTrgtId_No_Actl : 47|5@0+ (1,0) [0|31] "unitless" GWM,PSCM + SG_ TrlrAid_An3_Actl : 28|11@0+ (0.125,-90) [-90|165.75] "degrees" PSCM,GWM + SG_ TrlrAid_AnRate2_Actl : 22|10@0+ (0.125,-50) [-50|77.75] "degrees/second" PSCM,GWM + SG_ HitchToVehAxle_L_Calc : 7|8@0+ (0.0127,-0.508) [-0.508|2.7178] "meter" PSCM,GWM + SG_ HitchToTrlrAxle_L_Calc2 : 15|9@0+ (0.0254,0) [0|12.9794] "meter" GWM + +BO_ 1105 Image_Processing_Data: 8 IPMA_ADAS + SG_ TrlrAidSwtchLamp_B_Rq : 32|1@0+ (1,0) [0|1] "SED" GWM + SG_ TrlrHitchMsgTxt_D_Rq : 47|6@0+ (1,0) [0|63] "SED" GWM + SG_ TrlrHitchIcon_D_Rq : 36|4@0+ (1,0) [0|15] "SED" GWM + SG_ TrlrHitchChime_D_Rq : 39|3@0+ (1,0) [0|7] "SED" GWM + SG_ TrlrAidEnbl_D_RqAdas : 5|3@0+ (1,0) [0|7] "SED" GWM,PSCM + SG_ TrlrRvrseMsgTxt_D2_Rq : 31|6@0+ (1,0) [0|63] "SED" PSCM,GWM + SG_ TrlrRvrseEnbl_D2_Stat : 18|3@0+ (1,0) [0|7] "SED" PSCM,GWM + SG_ RbaMsg_D_Rq : 22|2@0+ (1,0) [0|3] "SED" GWM + SG_ BrkDecel_B_RqRba : 8|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ BrkEnbl_B_RqRba : 23|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ Rba_D_Stat : 14|2@0+ (1,0) [0|3] "SED" GWM + SG_ RbaAlrt_D_Dsply : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ RbaMnu_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ CamraFrntStat_D_Stat : 7|2@0+ (1,0) [0|3] "SED" GWM + SG_ TrlrHitchLamp_D_Rq2 : 15|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 938 ParkAid_Aud_Warn_Stat: 8 IPMA_ADAS + SG_ SidePrkSnsR2_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM + SG_ SidePrkSnsR1_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM + SG_ SidePrkSnsL2_D_Stat : 51|4@0+ (1,0) [0|15] "SED" GWM + SG_ ApaMde_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ ApaActvSd_D_Actl : 14|2@0+ (1,0) [0|3] "SED" GWM + SG_ PrkAidSwtch_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ ApaMde_D_Avail : 12|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsFrCrnr_D_Stat : 47|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsFrCntr_D_Stat : 35|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsFlCrnr_D_Stat : 27|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsFlCntr_D_Stat : 31|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkBrkEl_B_RqFap : 20|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ RpaChime_D_Rq : 7|4@0+ (1,0) [0|15] "SED" GWM + SG_ FpaChime_D_Rq : 3|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidMsgTxt_D_Rq : 19|4@0+ (1,0) [0|15] "SED" GWM,PSCM + SG_ SidePrkSnsL1_D_Stat : 55|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidAudioMute_B_Rq : 15|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 939 ParkAid_Aud_Warn_Stat2: 8 IPMA_ADAS + SG_ ApaBrk_D_Rq : 51|2@0+ (1,0) [0|3] "SED" GWM + SG_ SidePrkSnsR4_D_Stat : 55|4@0+ (1,0) [0|15] "SED" GWM + SG_ SidePrkSnsR3_D_Stat : 47|4@0+ (1,0) [0|15] "SED" GWM + SG_ SidePrkSnsL4_D_Stat : 43|4@0+ (1,0) [0|15] "SED" GWM + SG_ SidePrkSnsL3_D_Stat : 37|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidChime_D_Stat : 4|2@0+ (1,0) [0|3] "SED" GWM + SG_ PrkAidSnsRlCntr_D_Stat : 15|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsRrCrnr_D_Stat : 31|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsRrCntr_D_Stat : 19|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidSnsRlCrnr_D_Stat : 11|4@0+ (1,0) [0|15] "SED" GWM + SG_ PrkAidRear_D_Stat : 39|2@0+ (1,0) [0|3] "SED" GWM + SG_ PrkAidFront_D_Stat : 2|2@0+ (1,0) [0|3] "SED" GWM + SG_ PrkAid_D_Falt : 7|3@0+ (1,0) [0|7] "SED" GWM + SG_ ApaLongCtrlEnbl_D_Rq : 0|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM + SG_ ApaBrk_A_Rq : 63|8@0+ (0.05,-12.75) [-12.75|0] "m/sec^2" ABS_ESC,ECM_Diesel,PCM,PCM_HEV,GWM + SG_ PrkAidLamp_D_Rq : 33|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 937 ParkAid_Data_2: 8 IPMA_ADAS + SG_ Veh_V_RqFap : 31|8@0+ (0.1,0) [0|25.5] "km/h" ECM_Diesel,PCM,PCM_HEV + SG_ TrnRngDRqFap_No_Cs : 23|8@0+ (1,0) [0|255] "unitless" PCM,PCM_HEV,TCM_DSL + SG_ TrnRngDRqFap_No_Cnt : 15|4@0+ (1,0) [0|15] "unitless" PCM,PCM_HEV,TCM_DSL + SG_ TrnRng_D_RqFap : 11|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL,GWM + SG_ FapLcDistToObj_L_Actl : 7|8@0+ (0.01,0) [0|2.53] "meter" ECM_Diesel,PCM,PCM_HEV + +BO_ 936 ParkAid_Data: 8 IPMA_ADAS + SG_ ApaButtnPrssd_B_Stat : 58|1@0+ (1,0) [0|1] "SED" PSCM + SG_ SAPPStatusCoding : 7|8@0+ (1,0) [0|255] "unitless" GWM + SG_ ApaSys_D_Stat : 61|3@0+ (1,0) [0|7] "SED" PSCM,GWM,ECM_Diesel,PCM,PCM_HEV + SG_ ApaSteWhl_D_RqDrv : 63|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaSteScanMde_D_Stat : 49|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaSelSapp_D_Stat : 51|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaSelPpa_D_Stat : 53|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaSelPoa_D_Stat : 55|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaScan_D_Stat : 41|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaLongCtl_D_RqDrv : 44|3@0+ (1,0) [0|7] "SED" GWM + SG_ ApaGearShif_D_RqDrv : 47|3@0+ (1,0) [0|7] "SED" GWM + SG_ ApaActvSide2_D_Stat : 33|2@0+ (1,0) [0|3] "SED" GWM + SG_ ApaAcsy_D_RqDrv : 36|3@0+ (1,0) [0|7] "SED" GWM + SG_ ApaTrgtDist_D_Stat : 11|4@0+ (1,0) [0|15] "SED" GWM + SG_ ApaMsgTxt_D_Rq : 15|4@0+ (1,0) [0|15] "SED" GWM + SG_ ApaChime_D_Rq : 39|3@0+ (1,0) [0|7] "SED" GWM + SG_ EPASExtAngleStatReq : 23|1@0+ (1,0) [0|1] "SED" PSCM,GWM,ABS_ESC + SG_ ExtSteeringAngleReq2 : 22|15@0+ (0.1,-1000) [-1000|2276.5] "Degrees" GWM,PSCM + +BO_ 877 HEV_Powertrain_Data7_FD1: 8 PCM_HEV + SG_ RngImpctDrv_L_Dsply : 39|9@0+ (1,-255) [-255|256] "km" GWM + SG_ RngImpctClim_L_Dsply : 16|9@0+ (1,-255) [-255|256] "km" GWM + SG_ VehElEffAvg_No_Dsply : 23|7@0+ (10,-100) [-100|1150] "wattHr/km" GWM + SG_ PwFlwFuelDrv_D_Dsply : 15|3@0+ (1,0) [0|7] "SED" GWM + SG_ PwFlwFuelClimt_B_Dsply : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwFlwFuelBatt_B_Dsply : 1|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwFlwBattClimt_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM + SG_ PwFlwBatt_D_Dsply : 7|4@0+ (1,0) [0|15] "SED" GWM + +BO_ 589 Battery_Traction_5_FD1: 8 GWM + SG_ BattTrac2_Pw_LimChrg : 31|13@0+ (50,0) [0|409550] "watts" PCM_HEV + SG_ BattTrac2_Pw_LimDchrg : 34|13@0+ (50,0) [0|409550] "watts" PCM_HEV + SG_ BattTrac2_Pw_DchrgInst : 53|13@0+ (50,0) [0|409550] "watts" PCM_HEV + SG_ BattTrac2_Pw_ChrgInst : 7|13@0+ (50,0) [0|409550] "watts" PCM_HEV + +BO_ 588 Battery_Traction_4_FD1: 8 GWM + SG_ BattTracSoc2_Pc_Actl : 29|14@0+ (0.01,0) [0|163.81] "%" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTrac_Te_Actl : 9|10@0+ (0.5,-50) [-50|460.5] "degC" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracDiagClr_B_Rq : 30|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 587 Battery_Traction_3_FD1: 8 GWM + SG_ BattTracClnt_Te_Actl : 41|8@0+ (0.5,-60) [-60|67.5] "degC" SOBDMC_HPCM_FD1 + SG_ BattTracWarnLamp_B_Rq : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ BattTracSrvcRqd_B_Rq : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ BattTracSoc_Pc_MxPrtct : 35|10@0+ (0.1,0) [0|100] "%" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracSoc_Pc_MnPrtct : 29|10@0+ (0.1,0) [0|100] "%" PCM_HEV + SG_ BattTracSoc_Pc_LimLo : 23|10@0+ (0.1,0) [0|100] "%" PCM_HEV + SG_ BattTracSoc_Pc_LimHi : 1|10@0+ (0.1,0) [0|100] "%" PCM_HEV + +BO_ 389 PreCond_Hev_Data2_FD1: 8 SOBDMC_HPCM_FD1 + SG_ BattTracClntFlw_Pc_Rq : 63|7@0+ (1,0) [0|127] "percent" GWM + SG_ HtrnOvrTeLamp_B_Dsply : 5|1@0+ (1,0) [0|1] "SED" GWM + SG_ HtrnMil_D_Rq : 7|2@0+ (1,0) [0|3] "SED" GWM + SG_ HtrnAin_UHi_Actl : 39|10@0+ (0.5,0) [0|510.5] "volt" GWM,PCM_HEV + SG_ HtrnSrvcRqd_B_Dsply : 3|1@0+ (1,0) [0|1] "SED" GWM + SG_ HtrnHvilOpen_B_Actl : 24|1@0+ (1,0) [0|1] "SED" GWM,PCM_HEV + SG_ PtWakeupDeltaT_T_Rq : 2|11@0+ (1,0) [0|2045] "minute" GWM + SG_ PreCondActv_B_Actl : 50|1@0+ (1,0) [0|1] "SED" GWM + SG_ DrvCondTpRrDefrs_B_Rq : 49|1@0+ (1,0) [0|1] "SED" GWM + SG_ BattTrac_I_EstVsc : 23|15@0+ (0.05,-750) [-750|888.25] "Amps" GWM + +BO_ 1009 APIM_Send_Signals1_FD1: 8 GWM + SG_ ChrgCordUnlock_B_Rq : 60|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AutoHoldSwtch_D_Stat3 : 50|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ TrlrTrgtAcquire_D_Rq : 63|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ TrlrAidCancl_B_Rq : 48|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PSCM + SG_ CenterStackRing_D_Actl : 59|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ APIM_NumberofTracks_St : 39|16@0+ (1,0) [0|65535] "unitless" Vector__XXX + SG_ APIM_ActiveTrackNum_St : 7|32@0+ (1,0) [0|4294967295] "unitless" Vector__XXX + SG_ ValetMode_D_Stat : 57|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TrlrAidSetup_D_Stat : 55|3@0+ (1,0) [0|7] "SED" Vector__XXX + +BO_ 360 Gear_Shift_by_Wire_2_FD1: 8 GWM + SG_ GsmSrvcRqd_B_Rq : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TrnGearPwmFalt_B_Actl : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ GearButtnStuck_B_Actl : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + +BO_ 122 Battery_Traction_1_FD1: 8 GWM + SG_ BattTrac_U_LimLo : 47|8@0+ (2,0) [0|510] "volt" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTrac_U_LimHi : 39|8@0+ (2,0) [0|510] "volt" SOBDMC_HPCM_FD1,PCM_HEV + SG_ VehStrtInhbt_B_RqBatt : 23|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracOffFst_D_Actl : 22|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracOff_B_Actl : 20|1@0+ (1,0) [0|1] "SED" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTracMil_D_Rq : 19|2@0+ (1,0) [0|3] "SED" PCM_HEV + SG_ BattTrac_U_Actl : 17|10@0+ (0.5,0) [0|510.5] "Volts" SOBDMC_HPCM_FD1,PCM_HEV + SG_ BattTrac_I_Actl : 6|15@0+ (0.05,-750) [-750|888.25] "Amps" SOBDMC_HPCM_FD1,PCM_HEV + +BO_ 90 Gear_Shift_by_Wire_FD1: 8 GWM + SG_ TrnGsmNtmState_D_Actl : 55|2@0+ (1,0) [0|3] "SED" ABS_ESC,PCM,PCM_HEV,TCM_DSL + SG_ DrQltyDrv_D_StatGsm : 42|3@0+ (1,0) [0|7] "SED" ABS_ESC,PCM,PCM_HEV,TCM_DSL,IPMA_ADAS + SG_ TrnBtsiOvrrd_B_Stat : 43|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ GsmGearMsgTxt_D_Rq : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TrnRng_D_RqGsm : 51|4@0+ (1,0) [0|15] "SED" PCM,TCM_DSL + SG_ PrkBrkActv_D_RqGsmGear : 53|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ TrnValidGearRq_D_Stat : 25|2@0+ (1,0) [0|3] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearRqCnt_B_Actl : 26|1@0+ (1,0) [0|1] "unitless" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_U_Actl : 23|8@0+ (0.05,0) [0|12.7] "VOLT" TCM_DSL + SG_ TrnGearButtn_B_ActlR2 : 8|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlR1 : 9|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlR0 : 10|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlP2 : 11|1@0+ (1,0) [0|1] "SED" TCM_DSL,PCM,PCM_HEV + SG_ TrnGearButtn_B_ActlP1 : 12|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlP0 : 13|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlN2 : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlN1 : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlN0 : 0|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlM2 : 1|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlM1 : 2|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlM0 : 3|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlD2 : 4|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlD1 : 5|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGearButtn_B_ActlD0 : 6|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ TrnGear_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" SOBDMC_HPCM_FD1,PCM,PCM_HEV,TCM_DSL + SG_ TrnGear_No_Cnt : 47|4@0+ (1,0) [0|15] "Unitless" SOBDMC_HPCM_FD1,PCM,PCM_HEV,TCM_DSL + SG_ TrnGear_D_RqDrv : 31|5@0+ (1,0) [0|31] "SED" SOBDMC_HPCM_FD1,PCM,PCM_HEV,TCM_DSL + SG_ BrkSwtchPos_B_ActlGsm : 7|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + +BO_ 1091 TrailerInfo_FD1: 8 GWM + SG_ ParkLampTrlrOut_B_Stat : 15|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TrlrLampCtl_D_Stat : 4|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TrlrBattChrg_D_Stat : 2|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ StopLampTrlrOut_B_Stat : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TurnLampTrlrRr_B_Stat : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TurnLampTrlrRl_B_Stat : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TrlrLampCnnct_B_Actl : 7|1@0+ (1,0) [0|1] "SED" VDM,PCM_HEV,ECM_Diesel,PCM,TCM_DSL,ABS_ESC,IPMA_ADAS,PSCM + +BO_ 138 ActiveFrontStrg_Stat2_FD1: 8 GWM + SG_ SteWhlRelCalib_T_Actl : 7|8@0+ (1,0) [0|255] "ms" ABS_ESC + SG_ SteWhlRelCalib_An_Sns : 15|15@0+ (0.1,-1600) [-1600|1676.5] "deg" CMR_DSMC,PSCM,TCCM + +BO_ 131 Steering_Data_FD1: 8 GWM + SG_ HeadLghtHiFlash_D_Stat : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TurnLghtSwtch_D_Stat : 5|2@0+ (1,0) [0|3] "SED" IPMA_ADAS,PSCM + SG_ WiprFront_D_Stat : 3|4@0+ (1,0) [0|15] "SED" ABS_ESC,IPMA_ADAS,PCM,PCM_HEV + SG_ LghtAmb_D_Sns : 15|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ AccButtnGapDecPress : 12|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ AccButtnGapIncPress : 11|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ AslButtnOnOffCnclPress : 10|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ AslButtnOnOffPress : 9|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ CcAslButtnCnclPress : 8|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ LaSwtchPos_D_Stat : 23|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ CcAslButtnCnclResPress : 21|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcAslButtnDeny_B_Actl : 20|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcAslButtnIndxDecPress : 19|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ CcAslButtnIndxIncPress : 18|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ CcAslButtnOffCnclPress : 17|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnOnOffCncl : 16|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnOnPress : 31|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcAslButtnResDecPress : 30|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAslButtnResIncPress : 29|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcAslButtnSetDecPress : 28|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcAslButtnSetIncPress : 27|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcAslButtnSetPress : 26|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CcAsllButtnResPress : 25|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcButtnOffPress : 24|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcButtnOnOffCnclPress : 39|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcButtnOnOffPress : 38|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ CcButtnOnPress : 37|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ HeadLghtHiFlash_D_Actl : 36|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ HeadLghtHiOn_B_StatAhb : 34|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ AhbStat_B_Dsply : 33|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AccButtnGapTogglePress : 32|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ WiprFrontSwtch_D_Stat : 47|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ HeadLghtHiCtrl_D_RqAhb : 43|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ TjaButtnOnOffPress : 40|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + +BO_ 787 Power_Liftgate_Stat_FD1: 8 GWM + SG_ DrLckCnt_No_ActlTgate : 12|4@0+ (1,0) [0|15] "unitless" Vector__XXX + SG_ DrTgateChime2_D_Rq : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ DrTGate_D_Rq : 2|2@0+ (1,0) [0|3] "SED" ECM_Diesel + SG_ PwLftgtIntSw_B_Stat : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Power_Liftgate_Mode_Stt : 4|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 953 Body_Info_8_FD1: 8 GWM + SG_ BattRgenLoDChrg_D_Rq : 27|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM + SG_ BattRgenLoChrg_D_Rq : 25|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM + SG_ ChrgCordLck_B_Stat : 31|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ChrgCordResp2_No_Actl : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ ChrgCordResp1_No_Actl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ WakeAlarm3_D_Stat : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ WakeAlarm2_D_Stat : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ WakeAlarm1_D_Stat : 5|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM_HEV + SG_ WakeAlarm0_D_Stat : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + +BO_ 1093 TrailerBrakeInfo_FD1: 8 GWM + SG_ TrlBrkInitOut_D_Stat : 10|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TrlrBrkOut_No_Dsply : 23|4@0+ (1,0) [0|15] "unitless" Vector__XXX + SG_ TrlrBrkMde_D_Actl : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TrlrBrkGain_No_Actl : 15|5@0+ (0.5,0) [0|15.5] "unitless" Vector__XXX + SG_ TrlrBrkDsply_B_Rq : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TrlrBrkDcnnt_B_Actl : 5|1@0+ (1,0) [0|1] "SED" VDM + SG_ TrlrBrkActCnnct_B_Actl : 6|1@0+ (1,0) [0|1] "SED" VDM,ECM_Diesel,PCM,TCM_DSL,ABS_ESC,PSCM,TCCM,IPMA_ADAS + SG_ StopLamp_B_RqTrlrBrk : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TrlrBrkCtl_B_Falt : 4|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ TrlrBrkActCirct_B_Falt : 1|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + +BO_ 792 IPC_Send_Signals_2_FD1: 8 GWM + SG_ FuelRange_L_Dsply : 45|14@0+ (0.1,0) [0|1638.3] "km" ECM_Diesel + SG_ ElTrip_L_Dsply : 31|16@0+ (0.1,0) [0|6553.3] "unitless" Vector__XXX + SG_ ElLongTerm_L_Dsply : 7|24@0+ (0.1,0) [0|1677721.3] "unitless" Vector__XXX + +BO_ 968 Cluster_Lighting_Rq_FD1: 8 GWM + SG_ SlMde_D_Rq : 27|2@0+ (1,0) [0|3] "SED" ECM_Diesel + SG_ IsaOffst_D_Rq : 31|4@0+ (1,0) [0|15] "SED" ECM_Diesel + +BO_ 819 Pass_Dr_Stat_FD1: 8 GWM + SG_ RollCode_No_ActlPdm : 31|16@0+ (1,0) [0|65535] "Unitless" Vector__XXX + SG_ Memory_3_SwPsngr_Stat : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Memory_2_SwPsngr_Stat : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Memory_1_SwPsngr_Stat : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ BLISLEDStatPassSide : 2|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ WndwPsngrSide_D_Stat : 4|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM + SG_ Pasngr_Lock_Sw_Stat : 6|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Pasngr_Lock_Sw_Cnt : 15|8@0+ (1,0) [0|255] "Cnt" Vector__XXX + SG_ ChildLckFdbckRp_B_Stat : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 818 Driver_Dr_Stat_FD1: 8 GWM + SG_ BLISLEDStatDriverSide : 47|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ ChildLckPw_N_Cnt : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ WndwDrvSide_D_Stat : 1|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM + SG_ RollCodeDrvDrKeyCyl : 23|16@0+ (1,0) [0|65535] "Unitless" Vector__XXX + SG_ KeyCylSwDrvDr_D_Stat : 3|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Driver_Lock_Sw_Stat : 5|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Driver_Lock_Sw_Cnt : 15|8@0+ (1,0) [0|255] "Cnt" Vector__XXX + SG_ ChildLckPw_D_Rq : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ChildLckFdbckRd_B_Stat : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ RvrseMirrorChime_B_Rq : 45|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 806 Compressor_Req_FD1: 8 GWM + SG_ SnowPlowMde_B_Enbl : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ StopStrtDrvMde_B_RqBtn : 3|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM + SG_ HvacHtrCore_Te_Rq : 49|10@0+ (0.25,-50) [-50|205.75] "degC" PCM_HEV,SOBDMC_HPCM_FD1,ECM_Diesel + SG_ ClimtHeat_D_Rq : 20|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV + SG_ ClimtCool_D_Rq : 23|3@0+ (1,0) [0|7] "SED" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV + SG_ HvacEvap_Te_Rq : 33|10@0+ (0.125,-50) [-50|77.875] "Degrees C" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV + SG_ HvacEvap_Te_Actl : 17|10@0+ (0.125,-50) [-50|77.75] "Degrees C" SOBDMC_HPCM_FD1,ECM_Diesel,PCM,PCM_HEV + SG_ HvacAirCond_B_Rq : 7|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ HvacEvap_Te_Offst : 1|10@0+ (0.125,-50) [-50|77.875] "Degrees C" ECM_Diesel,PCM,PCM_HEV + SG_ ClimtPw_B_Rq : 5|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM + +BO_ 765 Mc_Send_Signals_2_FD1: 8 GWM + SG_ Mc_VehTimeFrmtUsrSel_St : 1|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Running_Board_Cmd : 21|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ EngExhMdeQuiet_D2_Rq : 55|3@0+ (1,0) [0|7] "SED" PCM + SG_ EdmSailMde_B_RqDrv : 48|1@0+ (1,0) [0|1] "SED" ECM_Diesel + SG_ DrvInputRequired_B_Rq : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AwdRnge_D_ActlIpc : 29|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ BalrSwtch_D_Stat : 57|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ BalrMde_D_Rq : 59|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ WaitToStartLamp_D_Falt : 50|2@0+ (1,0) [0|3] "SED" ECM_Diesel + SG_ EsaOn_B_Rq : 15|1@0+ (1,0) [0|1] "SED" PSCM + SG_ BttOn_B_Rq : 26|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ Btt_L_Actl : 39|7@0+ (0.1,0) [0|12.5] "meter" IPMA_ADAS + SG_ SelDrvMdeTxtReset_B_Rq : 40|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ SelDrvMdeDsply_B_Avail : 41|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ Mc_VehUntTrpCoUsrSel_St : 23|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Mc_VehUnitTempUsrSel_St : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Mc_VehLangUsrSel_St : 7|6@0+ (1,0) [0|63] "SED" Vector__XXX + +BO_ 559 ElecHorizon_Data2_FD1: 8 GWM + SG_ EhData2_No_Actl : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" IPMA_ADAS,ECM_Diesel + +BO_ 558 ElecHorizon_Data1_FD1: 8 GWM + SG_ EhData1_No_Actl : 7|64@0+ (1,0) [0|1.84467440737096E+019] "unitless" IPMA_ADAS,ECM_Diesel + +BO_ 934 Side_Detect_L_Stat: 8 IPMA_ADAS + SG_ CtaAlrtLeft2_D_Stat : 30|3@0+ (1,0) [0|7] "SED" GWM + SG_ CtaBrkLeftMsgTxt_B_Rq : 42|1@0+ (1,0) [0|1] "SED" GWM + SG_ CtaLeftBrkDecel_B_Rq : 7|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ CtaLeftBrkEnbl_B_Rq : 31|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ Side_Detect_L_Illum : 39|8@0+ (1,0) [0|255] "Percent" GWM + SG_ BttLeft_D_Stat : 45|3@0+ (1,0) [0|7] "SED" GWM + SG_ BttLeft_D_RqDrv : 47|2@0+ (1,0) [0|3] "SED" GWM + SG_ CtaSnsLeft_D_Stat : 25|2@0+ (1,0) [0|3] "SED" GWM + SG_ SodDetctLeft_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ CtaLeft_D_Stat : 18|3@0+ (1,0) [0|7] "SED" GWM + SG_ CtaAlrtLeft_D_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ SodLeft_D_Stat : 15|3@0+ (1,0) [0|7] "SED" GWM + SG_ SodSnsLeft_D_Stat : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ SodAlrtLeft_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ SodWarnLeft_Prd_Rq : 6|7@0+ (1,0) [0|127] "millisecond" GWM + +BO_ 1072 Cluster_Info1_FD1: 8 GWM + SG_ LscmbbStat_B_Actl : 2|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ HaDsplyCpblty_B_Stat : 42|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ AccDeny_B_RqIpc : 7|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ DrvSlipCtlMde_D_Rq : 33|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ EngIdlShutDown_B_RqDrv : 3|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ HsaMde_D_Rq : 54|2@0+ (1,0) [0|3] "SED" ABS_ESC + SG_ NtrlTowMdeEnbl_B_RqDrv : 1|1@0+ (1,0) [0|1] "SED" TCCM,TCM_DSL,PCM_HEV,PCM + SG_ BulbChkActv_B_Stat : 55|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ParkDetect_Stat : 52|1@0+ (1,0) [0|1] "SED" PCM_HEV,PCM + SG_ ReducedGuard_D_Rq : 51|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TrlrBrkMde_D_Rq : 57|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TRLR_SWAY_CONFIG_CMD : 56|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ TRAILER_BRAKE_CONFIG : 37|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Power_Liftgate_Mode_Cmd : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ AccEnbl_B_RqDrv : 35|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ OdometerMasterValue : 15|24@0+ (1,0) [0|16777214] "km" VDM,SOBDMC_HPCM_FD1,TCCM,CMR_DSMC,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM,TCM_DSL + SG_ EngOilLife_B_RqReset : 43|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ ePRNDL_MODE : 0|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ DrvSlipCtlMde_B_Rq2 : 34|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ MetricActv_B_Actl : 6|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ KeyTypeChngMykey_D_Rq : 41|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ManRgen_D_Rq : 5|2@0+ (1,0) [0|3] "SED" ECM_Diesel + +BO_ 909 Body_Info_6_FD1: 8 GWM + SG_ IgnPsswrdDsply_B_Rq : 57|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ ElPwPoint_D_Rq : 59|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PoliceIdlMde_D_Stat : 55|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ DrLatchMsgTxt_D_Rq : 43|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ SecurityMsgTxt_D_Rq : 47|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PrmtrAlrmEvnt_D_Stat : 35|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ HeadLghtHiPrmsn_D_Stat : 51|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ SteWhlLckMsgTxt_D_Rq : 25|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ immoMsgTxt_D_Rq : 39|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ PrsnlDevcChrgEnbl_B_Rq : 40|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TracKeyMde_D_Stat : 45|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PEBackupSlot_Stats : 27|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ KeyMykeyTot_No_Cnt : 3|4@0+ (1,0) [0|15] "Counts" Vector__XXX + SG_ Keycode_Status : 15|20@0+ (1,0) [0|1048575] "unitless" Vector__XXX + SG_ KeyAdmnTot_No_Cnt : 7|4@0+ (1,0) [0|15] "Counts" Vector__XXX + +BO_ 963 BCM_Lamp_Stat_FD1: 8 GWM + SG_ Illuminated_Entry_Stat : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Dr_Courtesy_Light_Stat : 49|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Courtesy_Delay_Status : 51|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ImpactEvntFdbck_D_Stat : 53|2@0+ (1,0) [0|3] "SED" CMR_DSMC + SG_ WrlssAcsyChrgInhbt_B_Rq : 40|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PudLampPsngr_D_Rq : 57|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ HeadLampLoOut_B_Stat : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CrnrLghtRight_Pc_Rq : 47|7@0+ (1,0) [0|100] "percent" Vector__XXX + SG_ CrnrLghtLeft_Pc_Rq : 39|7@0+ (1,0) [0|100] "percent" Vector__XXX + SG_ HeadLghtHiFdbck_D_Stat : 55|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PudLampDrv_D_Rq : 59|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ TrnNotInPrkChime_B_Rq : 24|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PrkLightChime_B_Rq : 25|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ KeyInIgnWarn_B_Cmd : 27|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ HomeSafeLtChime_B_Rq : 28|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ StopLghtOn_B_Stat : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ RvrseLghtOn_B_Stat : 9|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PrkLght_D_Stat : 13|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ HeadLghtSwtch_D_Stat : 15|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ HeadLampLoFrOn_B_Stat : 2|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ HeadLampLoFlOn_B_Stat : 3|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ HeadLampLoActv_B_Stat : 4|1@0+ (1,0) [0|1] "SED" IPMA_ADAS,PCM,ECM_Diesel + SG_ Headlamp_On_Wrning_Cmd : 29|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Park_Brake_Chime_Rqst : 26|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ HeadLghtHiOn_B_Stat : 1|1@0+ (1,0) [0|1] "SED" ECM_Diesel,IPMA_ADAS,PCM + SG_ BrkWarnInd_B_Rq : 20|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Brk_Fluid_Lvl_Low : 31|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ ReducedGuard_D_Stat : 19|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Perimeter_Alarm_Status : 17|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ Courtesy_BSave_Stat : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ DrTgateLck_D_Stat : 61|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ WndwGlbl_D_Cmd : 23|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ PudLamp_D_Rq : 11|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ DayRnngLampOn_B_Stat : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PerimeterAlarmChimeRq : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 145 Yaw_Data_FD1: 8 GWM + SG_ VehYawWActl_D_Qf : 53|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ABS_ESC + SG_ VehRolWActl_D_Qf : 55|2@0+ (1,0) [0|3] "SED" VDM,IPMA_ADAS,ABS_ESC + SG_ VehRollYawW_No_Cs : 39|8@0+ (1,0) [0|255] "Unitless" IPMA_ADAS,ABS_ESC + SG_ VehRollYaw_No_Cnt : 47|8@0+ (1,0) [0|255] "Unitless" VDM,IPMA_ADAS,ABS_ESC + SG_ VehYaw_W_Actl : 23|16@0+ (0.0002,-6.5) [-6.5|6.6066] "rad/s" VDM,ABS_ESC,PSCM,IPMA_ADAS + SG_ VehRol_W_Actl : 7|16@0+ (0.0002,-6.5) [-6.5|6.6066] "rad/s" VDM,ABS_ESC,IPMA_ADAS + +BO_ 76 RCMStatusMessage2_FD1: 8 GWM + SG_ FirstRowBuckleMid : 28|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ SecondRowBucklePsngr : 23|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ SecondRowBuckleMid : 9|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ SecondRowBuckleDriver : 11|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ FirstRowBuckleDriver : 15|2@0+ (1,0) [0|3] "SED" CMR_DSMC,ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL + SG_ RILReq : 7|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ FirstRowBucklePsngr : 13|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ RstrnImpactEvntStatus : 3|3@0+ (1,0) [0|7] "SED" CMR_DSMC,SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV,TCM_DSL + SG_ PsngrFrntDetct_D_Actl : 5|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ EDRTriggerEvntSync : 29|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ PassRstrnInd_Req : 31|2@0+ (1,0) [0|3] "SED" Vector__XXX + +BO_ 65 Global_PATS_Cntrl_Info_FD1: 8 GWM + SG_ immoControlData_T1 : 15|40@0+ (1,0) [0|1099511627775] "Encrypted" ECM_Diesel,PCM,PCM_HEV + SG_ immoControlCmd_T1 : 7|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV + +BO_ 1076 Cluster_Info_3_FD1: 8 GWM + SG_ HILL_DESC_SW : 32|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ AutoRgen_D_Rq : 34|2@0+ (1,0) [0|3] "SED" ECM_Diesel + SG_ W2S_LAMP_OK : 37|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ OdoTripRx_B_Actl : 2|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ Veh_V_CompLimMx : 47|12@0+ (0.1,0) [0|409.5] "km/h" ECM_Diesel,PCM,PCM_HEV + SG_ DrvSlipCtlMde_B_RqMyKey : 38|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ FuelLvlWarn_D_Actl : 51|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ FuelSecndActv_B_Actl : 39|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ FuelLvlPssvSide_No_Raw : 17|10@0+ (1,0) [0|1023] "Unitless" ECM_Diesel,PCM,PCM_HEV + SG_ FUEL_SENSOR_NUM : 35|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ FuelLvlActvSide_No_Raw : 49|10@0+ (1,0) [0|1023] "Unitless" ECM_Diesel,PCM,PCM_HEV + SG_ FuelLvl_Pc_Dsply : 1|10@0+ (0.108696,-5.217408) [-5.217408|105.9786] "Percent" VDM,ECM_Diesel + SG_ DISPLAY_SPEED_SCALING : 23|4@0+ (0.5,100) [100|107.5] "%" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV + SG_ DISPLAY_SPEED_OFFSET : 7|3@0+ (0.5,0) [0|3.5] "kph" IPMA_ADAS,ECM_Diesel,PCM,PCM_HEV + +BO_ 862 Climate_Cntrl_Data_2_FD1: 8 GWM + SG_ AutoStpHvacDelta_I_Est : 15|8@0+ (1,-192) [-192|62] "ampere" Vector__XXX + SG_ HvacBlwrFront_D_Stat : 55|5@0+ (1,0) [0|31] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ CabnAmb_Te_Actl : 39|8@0+ (0.5,-57) [-57|70] "degreesC" SOBDMC_HPCM_FD1,PCM_HEV + SG_ HvacRemoteStrt_N_Rq : 7|4@0+ (100,450) [450|1950] "RPM" ECM_Diesel,PCM,PCM_HEV + SG_ ClimtThrmlLoad_No_Actl : 47|8@0+ (1,0) [0|254] "unitless" SOBDMC_HPCM_FD1,PCM_HEV + SG_ HvacRec_Pc_Est : 23|7@0+ (1,0) [0|127] "Percent" PCM_HEV,SOBDMC_HPCM_FD1 + SG_ HvacAir_Flw_Est : 16|9@0+ (0.5,0) [0|255.5] "liter/second" SOBDMC_HPCM_FD1 + +BO_ 931 Body_Info_9_FD1: 8 GWM + SG_ PtWakeReas_D_Stat : 38|4@0+ (1,0) [0|15] "SED" PCM_HEV + SG_ VehOnSrc_D_Stat : 19|4@0+ (1,0) [0|15] "SED" ABS_ESC,PCM_HEV,ECM_Diesel,PCM + SG_ StrtrMtrCtlDStat_No_Cs : 31|8@0+ (1,0) [0|255] "unitless" PCM_HEV,ECM_Diesel,PCM + SG_ EngStrtActv_B_Stat : 39|1@0+ (1,0) [0|1] "SED" PCM_HEV,ECM_Diesel,PCM + SG_ EngStrt_B_Rq : 0|1@0+ (1,0) [0|1] "SED" PCM_HEV,ECM_Diesel,PCM + SG_ DrvInCtl_B_Stat : 1|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ AdvStrt_D_Stat : 23|4@0+ (1,0) [0|15] "SED" PCM_HEV,ECM_Diesel,PCM + SG_ CrnkInhbt_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" ECM_Diesel,PCM,PCM_HEV + SG_ CrnkInhbt_No_Cnt : 6|4@0+ (1,0) [0|15] "Unitless" ECM_Diesel,PCM,PCM_HEV + SG_ CrnkInhbt_B_Stat : 7|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ IgnPreOffActv_B_Stat : 2|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + +BO_ 578 Body_Info_4_FD1: 8 GWM + SG_ PtLatchActv_B_RqBcm : 56|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,TCM_DSL + SG_ immoSecureIdleMode : 61|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ ReFuelSwtchStat_D_Actl : 63|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ FuelPumpPwr_D_Stat : 50|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ BattULo_U_Actl : 39|8@0+ (0.0625,0) [0|15.875] "volt" CMR_DSMC,SOBDMC_HPCM_FD1,ABS_ESC,IPMA_ADAS,PSCM,ECM_Diesel,PCM,PCM_HEV + SG_ PrkLckCtl_B_Enbl : 22|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PrkLckCtlMsgTxt_D_Rq : 55|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PrkLckCtlAvail_T_Stat : 47|8@0+ (1,0) [0|255] "second" Vector__XXX + SG_ BrkTrnShifLck_B_Stat : 23|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV,TCM_DSL + SG_ PrkLckCtlUnlck_D_Stat : 58|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ PrkLckCtlTow_B_Enbl : 59|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DriverCrankingReq : 51|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ EngOff_T_Actl : 7|16@0+ (1,0) [0|65534] "second^0.5" ABS_ESC,IPMA_ADAS,TCCM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL + SG_ DcacElPw_D_Rq : 53|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM + SG_ BattULo_I_Actl : 21|14@0+ (0.0625,-512) [-512|511.875] "ampere" ECM_Diesel,PCM,PCM_HEV + +BO_ 947 BodyInfo_3_FD1: 8 GWM + SG_ ValetMode_D_Mem : 16|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DimmingLvlEvnt_No_Actl : 18|2@0+ (1,0) [0|3] "unitless" Vector__XXX + SG_ DrStatDrvErrCnt_B_Stat : 19|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ TurnLghtRight_D_Rq : 63|2@0+ (1,0) [0|3] "SED" CMR_DSMC,IPMA_ADAS + SG_ TurnLghtRightOn_B_Stat : 35|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ TurnLghtLeftOn_B_Stat : 54|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ FogLghtRearOn_B_Stat : 1|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ Backlit_LED_Status : 23|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ TurnLghtLeft_D_Rq : 9|2@0+ (1,0) [0|3] "SED" CMR_DSMC,IPMA_ADAS + SG_ FogLghtFrontOn_B_Stat : 56|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ IgnKeyType_D_Actl : 39|4@0+ (1,0) [0|15] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV + SG_ Parklamp_Status : 3|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ Litval : 47|8@0+ (1,0) [0|253] "SED" IPMA_ADAS + SG_ Key_In_Ignition_Stat : 11|1@0+ (1,0) [0|1] "SED" ABS_ESC + SG_ Ignition_Status : 7|4@0+ (1,0) [0|15] "SED" VDM,CMR_DSMC,SOBDMC_HPCM_FD1,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM,TCCM,TCM_DSL + SG_ Dimming_Lvl : 31|8@0+ (1,0) [0|253] "SED" IPMA_ADAS + SG_ Day_Night_Status : 15|2@0+ (1,0) [0|3] "SED" CMR_DSMC,ECM_Diesel,IPMA_ADAS,PCM + SG_ Remote_Start_Status : 13|2@0+ (1,0) [0|3] "SED" CMR_DSMC,IPMA_ADAS + SG_ DrStatTgate_B_Actl : 0|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ DrStatRr_B_Actl : 49|1@0+ (1,0) [0|1] "SED" ABS_ESC,IPMA_ADAS + SG_ DrStatRl_B_Actl : 48|1@0+ (1,0) [0|1] "SED" ABS_ESC,IPMA_ADAS + SG_ DrStatPsngr_B_Actl : 60|1@0+ (1,0) [0|1] "SED" CMR_DSMC,ABS_ESC,IPMA_ADAS + SG_ DrStatInnrTgate_B_Actl : 58|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ DrStatHood_B_Actl : 59|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DrStatDrv_B_Actl : 61|1@0+ (1,0) [0|1] "SED" CMR_DSMC,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,TCCM + SG_ PrkBrkActv_B_Actl : 55|1@0+ (1,0) [0|1] "SED" ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,TCCM,TCM_DSL + SG_ LifeCycMde_D_Actl : 53|4@0+ (1,0) [0|15] "SED" VDM,SOBDMC_HPCM_FD1,ABS_ESC,ECM_Diesel,IPMA_ADAS,PCM,PCM_HEV,PSCM,TCM_DSL + SG_ Delay_Accy : 57|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CrashEvnt_D_Stat : 34|2@0+ (1,0) [0|3] "SED" Vector__XXX + SG_ FuelPmpInhbt_B_Stat : 32|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ BodySrvcRqd_B_Rq : 10|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 1084 Battery_Mgmt_3_FD1: 8 GWM + SG_ BattULoChrg_URate_RqMx : 63|6@0+ (0.1,0) [0|6.3] "volts/second" ECM_Diesel,PCM,PCM_HEV + SG_ BattULoChrg_U_RqMx : 55|6@0+ (0.1,10.6) [10.6|16.9] "volt" ECM_Diesel,PCM,PCM_HEV + SG_ BattULoChrg_U_RqMn : 45|6@0+ (0.1,10.6) [10.6|16.9] "volt" ECM_Diesel,PCM,PCM_HEV + SG_ BattULoState_D_Qlty : 47|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ BSFault : 7|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV + SG_ BattULo2_Te_Actl : 30|7@0+ (1,-40) [-40|86] "degC" ECM_Diesel,PCM,PCM_HEV + SG_ BSBattSOC : 22|7@0+ (1,0) [0|127] "%" ECM_Diesel,PCM,PCM_HEV + SG_ BSBattQDeltaRideAh : 6|15@0+ (0.0078125,-100) [-100|155.9921875] "ampere*hour" ECM_Diesel,PCM,PCM_HEV + SG_ BSBattQCapAh : 38|7@0+ (1,0) [0|127] "ampere*hour" ECM_Diesel,PCM,PCM_HEV + +BO_ 1068 Battery_Mgmt_2_FD1: 8 GWM + SG_ EngStrtInhbt_B_RqBatt : 2|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM + SG_ BattULoChrg_D_Rq : 7|2@0+ (1,0) [0|3] "SED" ECM_Diesel,PCM + SG_ PwSysULoFalt_D_Stat : 12|4@0+ (1,0) [0|15] "SED" Vector__XXX + SG_ Shed_T_Eng_Off_B : 8|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Shed_Feature_Group_ID : 20|5@0+ (1,0) [0|31] "SED" ECM_Diesel,PCM,PCM_HEV,IPMA_ADAS + SG_ Shed_Drain_Eng_Off_B : 0|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Shed_Level_Req : 23|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM,PCM_HEV,IPMA_ADAS + SG_ BattULoSrvc_T_Actl : 39|12@0+ (1,0) [0|4095] "days" Vector__XXX + SG_ ULoRgenTestMde_B_Rq : 31|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM + SG_ ChargeMode : 15|3@0+ (1,0) [0|7] "SED" ECM_Diesel,PCM + SG_ IdleSpeedIncrease_El : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ Batt_Lo_SoC_B : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ PeriodicElLoad_B_Stat : 1|1@0+ (1,0) [0|1] "SED" ECM_Diesel + SG_ Batt_Crit_SoC_B : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 146 Accel_Data_FD1: 8 GWM + SG_ VehVert2_A_Actl : 36|13@0+ (0.01,-40) [-40|41.89] "m/s^2" VDM,TCCM,IPMA_ADAS,ABS_ESC,ECM_Diesel + SG_ VehLatLongVertA_No_Cs : 55|8@0+ (1,0) [0|255] "Unitless" TCCM,IPMA_ADAS,ABS_ESC + SG_ VehLatLongVert_No_Cnt : 63|8@0+ (1,0) [0|255] "Unitless" VDM,TCCM,IPMA_ADAS,ABS_ESC + SG_ VehLong2_A_Actl : 20|13@0+ (0.01,-40) [-40|41.89] "m/s^2" VDM,TCCM,ABS_ESC,ECM_Diesel,IPMA_ADAS + SG_ VehLat2_A_Actl : 4|13@0+ (0.01,-40) [-40|41.89] "m/s^2" VDM,TCCM,ABS_ESC,ECM_Diesel,IPMA_ADAS + SG_ VehVertAActl_D_Qf : 38|2@0+ (1,0) [0|3] "SED" VDM,TCCM,IPMA_ADAS,ABS_ESC + SG_ VehLongAActl_D_Qf : 22|2@0+ (1,0) [0|3] "SED" VDM,TCCM,ABS_ESC,ECM_Diesel + SG_ VehLatAActl_D_Qf : 6|2@0+ (1,0) [0|3] "SED" VDM,TCCM,ABS_ESC + +BO_ 1900 TesterPhysicalResCCM: 64 IPMA_ADAS + SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1806 TesterPhysicalResIPMA: 64 IPMA_ADAS + SG_ TesterPhysicalResIPMA : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 997 Personality_CCM_Data: 8 IPMA_ADAS + SG_ PersIndexCcm_D_Actl : 39|3@0+ (1,0) [0|7] "SED" GWM + SG_ FeatNoCcmActl : 23|16@0+ (1,0) [0|65535] "Number" GWM + SG_ FeatConfigCcmActl : 7|16@0+ (1,0) [0|65535] "Undefined" GWM + +BO_ 983 Steer_Assist_Data: 8 IPMA_ADAS + SG_ CmbbObjRelLong_V_Actl : 39|10@0+ (0.1,-102.1) [-102.1|0] "meters/sec" PSCM + SG_ CmbbObjRelLat_V_Actl : 23|9@0+ (0.1,-25.5) [-25.5|25.4] "meters/sec" PSCM + SG_ CmbbObjDistLong_L_Actl : 7|10@0+ (0.1,0) [0|102.1] "meter" PSCM + SG_ CmbbObjDistLat_L_Actl : 45|9@0+ (0.1,-25.5) [-25.5|25.4] "meter" PSCM + SG_ CmbbObjConfdnc_D_Stat : 9|2@0+ (1,0) [0|3] "SED" PSCM + SG_ CmbbObjColl_T_Actl : 30|7@0+ (0.05,0) [0|6.25] "second" PSCM + SG_ CmbbObjClass_D_Stat : 13|4@0+ (1,0) [0|15] "SED" PSCM + SG_ EsaEnbl_D2_Rq : 52|2@0+ (1,0) [0|3] "SED" PSCM + +BO_ 982 LateralMotionControl2: 8 IPMA_ADAS + SG_ LatCtlCrv_NoRate2_Actl : 55|11@0+ (1E-006,-0.001024) [-0.001024|0.001023] "meter^2" PSCM + SG_ LatCtlPath_No_Cnt : 60|4@0+ (1,0) [0|15] "Unitless" PSCM + SG_ LatCtlPath_No_Cs : 15|8@0+ (1,0) [0|255] "Unitless" PSCM + SG_ LatCtl_D2_Rq : 6|3@0+ (1,0) [0|7] "SED" PSCM + SG_ HandsOffCnfm_B_Rq : 7|1@0+ (1,0) [0|1] "SED" PSCM + SG_ LatCtlRampType_D_Rq : 1|2@0+ (1,0) [0|3] "SED" PSCM + SG_ LatCtlPrecision_D_Rq : 3|2@0+ (1,0) [0|3] "SED" PSCM + SG_ LatCtlPathOffst_L_Actl : 33|10@0+ (0.01,-5.12) [-5.12|5.11] "meter" PSCM + SG_ LatCtlPath_An_Actl : 28|11@0+ (0.0005,-0.5) [-0.5|0.5235] "radians" PSCM + SG_ LatCtlCurv_No_Actl : 23|11@0+ (2E-005,-0.02) [-0.02|0.02094] "1/meter" PSCM + +BO_ 981 GlareFreeBeam: 8 IPMA_ADAS + SG_ AdbRamping_T_Rq : 44|4@0+ (200,0) [0|3000] "millisecond" GWM + SG_ AdbBrdrTop_An_Rq : 7|8@0+ (0.04,-9.54) [-9.54|0.58] "degrees" GWM + SG_ AdbBrdrRight_L_Stat : 37|9@0+ (2,0) [0|1018] "meter" GWM + SG_ AdbBrdrRight_An_Rq : 31|10@0+ (0.04,-20.4) [-20.4|20.44] "degrees" GWM + SG_ AdbBrdrLeft_L_Stat : 40|9@0+ (2,0) [0|1018] "meter" GWM + SG_ AdbBrdrLeft_An_Rq : 9|10@0+ (0.04,-20.4) [-20.4|20.44] "degrees" GWM + SG_ AdbBrdrBottom_An_Rq : 15|6@0+ (0.04,-1.86) [-1.86|0.58] "degrees" GWM + SG_ AdbBeam_D_Rq : 63|3@0+ (1,0) [0|7] "SED" GWM + +BO_ 980 AutoDriveBeam_Data1: 8 IPMA_ADAS + SG_ AdbBrdr1DistRigh_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM + SG_ AdbBrdr1DistLeft_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM + SG_ AdbMde1_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbIntns1_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbBrdr1Up_An_Rq : 36|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM + SG_ AdbBrdr1Right_An_Rq : 31|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM + SG_ AdbBrdr1Low_An_Rq : 8|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM + SG_ AdbBrdr1Left_An_Rq : 7|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM + SG_ AdbBrdr1CritRigh_T_Stat : 43|4@0+ (100,0) [0|1500] "millisecond" GWM + SG_ AdbBrdr1CritLeft_T_Stat : 55|4@0+ (100,0) [0|1500] "millisecond" GWM + +BO_ 979 LateralMotionControl: 8 IPMA_ADAS + SG_ LatCtlRng_L_Max : 63|6@0+ (2,0) [0|126] "meter" GWM + SG_ HandsOffCnfm_B_Rq : 51|1@0+ (1,0) [0|1] "SED" GWM + SG_ LatCtl_D_Rq : 36|3@0+ (1,0) [0|7] "SED" GWM + SG_ LatCtlRampType_D_Rq : 53|2@0+ (1,0) [0|3] "SED" GWM + SG_ LatCtlPrecision_D_Rq : 33|2@0+ (1,0) [0|3] "SED" GWM + SG_ LatCtlPathOffst_L_Actl : 47|10@0+ (0.01,-5.12) [-5.12|5.11] "meter" GWM + SG_ LatCtlPath_An_Actl : 31|11@0+ (0.0005,-0.5) [-0.5|0.5235] "radians" GWM + SG_ LatCtlCurv_NoRate_Actl : 12|13@0+ (2.5E-007,-0.001024) [-0.001024|0.00102375] "1/meter" GWM + SG_ LatCtlCurv_No_Actl : 7|11@0+ (2E-005,-0.02) [-0.02|0.02094] "1/meter" GWM + +BO_ 976 SuspensionRoad_Data: 8 IPMA_ADAS + SG_ SuspClkSync_No_Actl : 55|8@0+ (1,0) [0|253] "unitless" GWM + SG_ SrpSigValid_B_Stat : 47|1@0+ (1,0) [0|1] "SED" GWM + SG_ SrpHghtRight_L_Actl : 24|9@0+ (0.000625,-0.16) [-0.16|0.158125] "meter" GWM + SG_ SrpHghtLeft_L_Actl : 17|9@0+ (0.000625,-0.16) [-0.16|0.158125] "meter" GWM + SG_ SrpEventRight_D_Stat : 19|2@0+ (1,0) [0|3] "SED" GWM + SG_ SrpEventLeft_D_Stat : 21|2@0+ (1,0) [0|3] "SED" GWM + SG_ SrpDistRight_L_Actl : 14|9@0+ (0.02,0) [0|10.18] "meter" GWM + SG_ SrpDistLeft_L_Actl : 7|9@0+ (0.02,0) [0|10.18] "meter" GWM + +BO_ 973 Traffic_RecognitnData: 8 IPMA_ADAS + SG_ TsrVl2PrmntMsgTxt_D_Rq : 60|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrVl1PrmntMsgTxt_D_Rq : 41|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrVl2RstrcMsgTxt2_D_Rq : 63|3@0+ (1,0) [0|7] "SED" GWM + SG_ TsrVl1RstrcMsgTxt2_D_Rq : 51|3@0+ (1,0) [0|7] "SED" GWM + SG_ TsrOvtkMsgTxt2_D_Rq : 55|4@0+ (1,0) [0|15] "SED" GWM + SG_ WwaWarn_B_Rq : 48|1@0+ (1,0) [0|1] "SED" GWM + SG_ TsrVlUnitMsgTxt_D_Rq : 43|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrVLim2MsgTxt_D_Rq : 39|8@0+ (1,0) [0|255] "SED" GWM + SG_ TsrVLim1MsgTxt_D_Rq : 31|8@0+ (1,0) [0|255] "SED" GWM + SG_ TsrVl2StatMsgTxt_D_Rq : 47|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrVl2RstrcMsgTxt_D_Rq : 17|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrVl1StatMsgTxt_D_Rq : 21|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrVl1RstrcMsgTxt_D_Rq : 23|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrStatMsgTxt_D_Rq : 10|3@0+ (1,0) [0|7] "SED" GWM + SG_ TsrOvtkStatMsgTxt_D_Rq : 1|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrOvtkMsgTxt_D_Rq : 15|3@0+ (1,0) [0|7] "SED" GWM + SG_ TsrOswWarnMsgTxt_D_Rq : 3|2@0+ (1,0) [0|3] "SED" GWM + SG_ TsrMsgTxt_D_Rq : 7|4@0+ (1,0) [0|15] "SED" GWM + +BO_ 970 Lane_Assist_Data1: 8 IPMA_ADAS + SG_ LkaDrvOvrrd_D_Rq : 38|2@0+ (1,0) [0|3] "SED" PSCM + SG_ LkaActvStats_D2_Req : 7|3@0+ (1,0) [0|7] "SED" PSCM + SG_ LaRefAng_No_Req : 19|12@0+ (0.05,-102.4) [-102.4|102.3] "mrad" PSCM + SG_ LaRampType_B_Req : 39|1@0+ (1,0) [0|1] "SED" PSCM + SG_ LaCurvature_No_Calc : 15|12@0+ (5E-006,-0.01024) [-0.01024|0.01023] "1/m" PSCM + SG_ LdwActvStats_D_Req : 4|3@0+ (1,0) [0|7] "SED" PSCM + SG_ LdwActvIntns_D_Req : 1|2@0+ (1,0) [0|3] "SED" PSCM + +BO_ 962 AutoDriveBeam_Data3: 8 IPMA_ADAS + SG_ AdbBrdr3DistRigh_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM + SG_ AdbBrdr3DistLeft_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM + SG_ AdbMde3_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbIntns3_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbBrdr3Up_An_Rq : 36|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM + SG_ AdbBrdr3Right_An_Rq : 31|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM + SG_ AdbBrdr3Low_An_Rq : 8|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM + SG_ AdbBrdr3Left_An_Rq : 7|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM + SG_ AdbBrdr3CritRigh_T_Stat : 43|4@0+ (100,0) [0|1500] "millisecond" GWM + SG_ AdbBrdr3CritLeft_T_Stat : 55|4@0+ (100,0) [0|1500] "millisecond" GWM + +BO_ 961 AutoDriveBeam_Data2: 8 IPMA_ADAS + SG_ AdbBrdr2DistRigh_D_Stat : 59|4@0+ (1,0) [0|15] "SED" GWM + SG_ AdbBrdr2DistLeft_D_Stat : 63|4@0+ (1,0) [0|15] "SED" GWM + SG_ AdbMde2_D_Rq : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbIntns2_D_Rq : 12|2@0+ (1,0) [0|3] "SED" GWM + SG_ AdbBrdr2Up_An_Rq : 36|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM + SG_ AdbBrdr2Right_An_Rq : 31|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM + SG_ AdbBrdr2Low_An_Rq : 8|9@0+ (0.02,-8) [-8|2.18] "degrees" GWM + SG_ AdbBrdr2Left_An_Rq : 7|11@0+ (0.02,-20) [-20|20.9] "degrees" GWM + SG_ AdbBrdr2CritRigh_T_Stat : 43|4@0+ (100,0) [0|1500] "millisecond" GWM + SG_ AdbBrdr2CritLeft_T_Stat : 55|4@0+ (100,0) [0|1500] "millisecond" GWM + +BO_ 394 ACCDATA_3: 8 IPMA_ADAS + SG_ HaDsply_No_Cs : 63|8@0+ (1,0) [0|255] "Unitless" GWM + SG_ HaDsply_No_Cnt : 4|4@0+ (1,0) [0|15] "Unitless" GWM + SG_ AccStopStat_D_Dsply : 41|2@0+ (1,0) [0|3] "SED" GWM + SG_ AccTrgDist2_D_Dsply : 27|4@0+ (1,0) [0|15] "SED" GWM + SG_ AccStopRes_B_Dsply : 54|1@0+ (1,0) [0|1] "SED" GWM + SG_ TjaWarn_D_Rq : 50|3@0+ (1,0) [0|7] "SED" GWM + SG_ Tja_D_Stat : 44|3@0+ (1,0) [0|7] "SED" GWM + SG_ TjaMsgTxt_D_Dsply : 53|3@0+ (1,0) [0|7] "SED" GWM + SG_ IaccLamp_D_Rq : 46|2@0+ (1,0) [0|3] "SED" GWM + SG_ AccMsgTxt_D2_Rq : 31|4@0+ (1,0) [0|15] "SED" GWM + SG_ FcwDeny_B_Dsply : 10|1@0+ (1,0) [0|1] "SED" GWM + SG_ FcwMemStat_B_Actl : 13|1@0+ (1,0) [0|1] "SED" GWM + SG_ AccTGap_B_Dsply : 35|1@0+ (1,0) [0|1] "SED" GWM + SG_ CadsAlignIncplt_B_Actl : 11|1@0+ (1,0) [0|1] "SED" GWM + SG_ AccFllwMde_B_Dsply : 17|1@0+ (1,0) [0|1] "SED" GWM + SG_ CadsRadrBlck_B_Actl : 22|1@0+ (1,0) [0|1] "SED" GWM + SG_ CmbbPostEvnt_B_Dsply : 15|1@0+ (1,0) [0|1] "SED" GWM + SG_ AccStopMde_B_Dsply : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ FcwMemSens_D_Actl : 20|2@0+ (1,0) [0|3] "SED" GWM + SG_ FcwMsgTxt_D_Rq : 7|3@0+ (1,0) [0|7] "SED" GWM + SG_ AccWarn_D_Dsply : 39|2@0+ (1,0) [0|3] "SED" GWM + SG_ FcwVisblWarn_B_Rq : 47|1@0+ (1,0) [0|1] "SED" GWM + SG_ FcwAudioWarn_B_Rq : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ AccTGap_D_Dsply : 34|3@0+ (1,0) [0|7] "SED" GWM + SG_ AccMemEnbl_B_RqDrv : 36|1@0+ (1,0) [0|1] "SED" GWM + SG_ FdaMem_B_Stat : 37|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 391 ACCDATA_2: 8 IPMA_ADAS + SG_ CmbbBrkDecel_No_Cnt : 47|4@0+ (1,0) [0|15] "Unitless" GWM,ABS_ESC + SG_ HudDsplyIntns_No_Actl : 31|8@0+ (0.5,0) [0|100] "%" GWM + SG_ HudBlk3_B_Rq : 37|1@0+ (1,0) [0|1] "SED" GWM + SG_ HudBlk2_B_Rq : 51|1@0+ (1,0) [0|1] "SED" GWM + SG_ HudBlk1_B_Rq : 50|1@0+ (1,0) [0|1] "SED" GWM + SG_ HudFlashRate_D_Actl : 53|2@0+ (1,0) [0|3] "SED" GWM + SG_ CmbbBrkDecel_No_Cs : 7|8@0+ (1,0) [0|255] "Unitless" GWM,ABS_ESC + SG_ CmbbBrkDecel_A_Rq : 12|13@0+ (0.0039,-20) [-20|11.9449] "m/s^2" ABS_ESC,GWM + SG_ CmbbBrkPrchg_D_Rq : 55|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + SG_ CmbbBrkDecel_B_Rq : 15|1@0+ (1,0) [0|1] "SED" ABS_ESC,GWM + SG_ CmbbBaSens_D_Rq : 14|2@0+ (1,0) [0|3] "SED" ABS_ESC,GWM + +BO_ 390 ACCDATA: 8 IPMA_ADAS + SG_ AccBrkPulse_B_Rq : 36|1@0+ (1,0) [0|1] "SED" ABS_ESC,GWM + SG_ AccAutoResum_D_Rq : 7|2@0+ (1,0) [0|3] "SED" PCM_HEV,PCM,ECM_Diesel + SG_ AccBrkTot_A_Rq : 4|13@0+ (0.0039,-20) [-20|11.9449] "m/s^2" GWM,ABS_ESC + SG_ AccPrpl_A_Pred : 17|10@0+ (0.01,-5) [-5|5.23] "m/s^2" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ AccVeh_V_Trg : 32|9@0+ (0.5,0) [0|255.5] "kph" GWM,ECM_Diesel,PCM,PCM_HEV,TCM_DSL + SG_ AccBrkPrkEl_B_Rq : 38|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ Cmbb_B_Enbl : 50|1@0+ (1,0) [0|1] "SED" GWM + SG_ CmbbOvrrd_B_RqDrv : 51|1@0+ (1,0) [0|1] "SED" GWM + SG_ CmbbDeny_B_Actl : 37|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ CmbbEngTqMn_B_Rq : 52|1@0+ (1,0) [0|1] "SED" ECM_Diesel,PCM,PCM_HEV,GWM + SG_ AccPrpl_A_Rq : 49|10@0+ (0.01,-5) [-5|5.23] "m/s^2" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ AccDeny_B_Rq : 53|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ AccResumEnbl_B_Rq : 33|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM,PCM_HEV + SG_ AccCancl_B_Rq : 39|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC,ECM_Diesel,PCM,PCM_HEV + SG_ AccBrkPrchg_B_Rq : 54|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ AccBrkDecel_B_Rq : 55|1@0+ (1,0) [0|1] "SED" GWM,ABS_ESC + SG_ AccStopStat_B_Rq : 34|1@0+ (1,0) [0|1] "SED" GWM,ECM_Diesel,PCM,PCM_HEV,ABS_ESC + +BO_ 1441 TCCM_AutoSar_NetwkMgmt: 8 TCCM + SG_ TCCM_GWOnBoardTester : 39|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_GWNMProxy : 47|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_AutoSarNMReserved4 : 63|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_AutoSarNMReserved3 : 55|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_AutoSarNMReserved2 : 31|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_AutoSarNMReserved1 : 23|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_AutoSarNMNodeId : 7|8@0+ (1,0) [0|255] "unitless" Vector__XXX + SG_ TCCM_AutoSarNMControl : 15|8@0+ (1,0) [0|255] "unitless" Vector__XXX + +BO_ 1787 TesterPhysicalResSODCMD: 64 IPMA_ADAS + SG_ TesterPhysicalResSODCMD : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1779 TesterPhysicalReqSODCMD: 64 TSTR + SG_ TesterPhysicalReqSODCMD : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS + +BO_ 1786 TesterPhysicalResSODCMC: 64 IPMA_ADAS + SG_ TesterPhysicalResSODCMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1778 TesterPhysicalReqSODCMC: 64 TSTR + SG_ TesterPhysicalReqSODCMC : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS + +BO_ 1153 All_Terrain_Data_FD1: 8 GWM + SG_ TerrMde_D_RqDrv : 3|3@0+ (1,0) [0|7] "SED" Vector__XXX + +BO_ 942 ParkAid_Data2: 8 IPMA_ADAS + SG_ PrkAidRdiusRight_L_Dsply : 15|8@0+ (1,0) [0|255] "unitless" GWM + SG_ PrkAidRdiusLeft_L_Dsply : 7|8@0+ (1,0) [0|255] "unitless" GWM + SG_ PrkAidDrvDir_D_Stat : 23|3@0+ (1,0) [0|7] "SED" GWM + SG_ PrkAidAcsyRear_D_Stat : 18|2@0+ (1,0) [0|3] "SED" GWM + SG_ PrkAidAcsyFront_D_Stat : 20|2@0+ (1,0) [0|3] "SED" GWM + +BO_ 930 Bndry_Alert_R_Data: 8 IPMA_ADAS + SG_ BalrWndwRight_B_Stat : 19|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrSnsRight_D_Falt : 21|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwPsngrRear_D_RqBalrr : 25|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwPsngr_D_RqBalrr : 27|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwDrvRear_D_RqBalrr : 29|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwDrv_D_RqBalrr : 31|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrRight_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrMdeSelRight_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrMdeRight_D_Stat : 23|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrLckRight_B_Stat : 11|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrChimeRight_D_Rq : 2|2@0+ (1,0) [0|3] "SED" GWM + SG_ CamraRearOn_B_RqBalrr : 7|1@0+ (1,0) [0|1] "SED" GWM + SG_ DrLckCnt_No_ActlBalrr : 5|3@0+ (1,0) [0|7] "unitless" GWM + SG_ DrLckActv_B_RqBalrr : 6|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 929 Bndry_Alert_L_Data: 8 IPMA_ADAS + SG_ BalrChimeLeft_D_Rq : 2|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrLeft_D_Stat : 10|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrWndwLeft_B_Stat : 0|1@0+ (1,0) [0|1] "SED" GWM + SG_ WndwPsngrRear_D_RqBalrl : 25|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwPsngr_D_RqBalrl : 27|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwDrvRear_D_RqBalrl : 29|2@0+ (1,0) [0|3] "SED" GWM + SG_ WndwDrv_D_RqBalrl : 31|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrSnsLeft_D_Falt : 21|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrMdeSelLeft_B_Stat : 8|1@0+ (1,0) [0|1] "SED" GWM + SG_ BalrMdeLeft_D_Stat : 23|2@0+ (1,0) [0|3] "SED" GWM + SG_ BalrLckLeft_B_Stat : 11|1@0+ (1,0) [0|1] "SED" GWM + SG_ CamraRearOn_B_RqBalrl : 7|1@0+ (1,0) [0|1] "SED" GWM + SG_ DrLckCnt_No_ActlBalrl : 5|3@0+ (1,0) [0|7] "unitless" GWM + SG_ DrLckActv_B_RqBalrl : 6|1@0+ (1,0) [0|1] "SED" GWM + +BO_ 402 Dsp_Request_Signals11_FD1: 8 GWM + SG_ PrkAidSwtch_D_RqMnu : 11|1@0+ (1,0) [0|1] "SED" IPMA_ADAS + SG_ ApaSwtch_D_RqMnu : 10|2@0+ (1,0) [0|3] "SED" IPMA_ADAS + SG_ ApaMdeStat_D_RqDrv : 2|3@0+ (1,0) [0|7] "SED" IPMA_ADAS + SG_ CamraViewSplit_B_Rq : 3|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CamraZoomMan_D_Rq : 15|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ CamraOvrlStat_D_Rq : 4|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CamraOvrlDyn_D_Rq : 7|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ CamAutoTowbarZoom : 6|1@0+ (1,0) [0|1] "SED" Vector__XXX + SG_ DistanceBarSetting : 5|1@0+ (1,0) [0|1] "SED" Vector__XXX + +BO_ 924 DCACA_Data3_FD1: 8 GWM + SG_ DcacOut_Pw_Mx : 34|11@0+ (5,0) [0|10225] "watts" PCM,PCM_HEV + SG_ DcacOut2_Pw_Actl : 31|13@0+ (1,0) [0|8189] "watts" PCM_HEV + SG_ DcacOut1_Pw_Actl : 12|13@0+ (1,0) [0|8189] "watts" PCM,PCM_HEV + SG_ DcacIn_Pw_Mx : 7|11@0+ (5,0) [0|10225] "watts" PCM,PCM_HEV + +BO_ 923 DCACA_Data2_FD1: 8 GWM + SG_ DcacIn_U2_Actl : 39|12@0+ (0.01,0) [0|40.93] "volt" PCM + SG_ DcacIn_U_Actl : 19|12@0+ (0.1,0) [0|409.3] "volt" PCM,PCM_HEV + SG_ DcacIn_I_Actl : 15|11@0+ (0.1,0) [0|204.5] "Amps" PCM,PCM_HEV + SG_ Dcac_Te_Actl : 7|8@0+ (1,-60) [-60|193] "degC" PCM + +BO_ 1998 TesterPhysicalResSODR: 64 IPMA_ADAS + SG_ TesterPhysicalResSODR : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1996 TesterPhysicalResSODL: 64 IPMA_ADAS + SG_ TesterPhysicalResSODL : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" TSTR + +BO_ 1988 TesterPhysicalReqSODL: 64 TSTR + SG_ TesterPhysicalReqSODL : 7|64@0+ (1,0) [0|1.84467E+019] "unitless" IPMA_ADAS + +BO_ 922 DCACA_Data1_FD1: 8 GWM + SG_ DcacBp2BrkrOpn_B_Falt : 13|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacBp1BrkrOpn_B_Falt : 14|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacIpRcBrkrOpn_B_Falt : 10|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacRdy_D2_Stat : 23|2@0+ (1,0) [0|3] "SED" PCM,PCM_HEV + SG_ DcacOvrld_B_Falt : 8|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacOverTe_B_Falt : 9|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacGfci_B_Falt : 11|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacErr_B_Stat : 12|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacAcUDetct_B_Falt : 15|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacRdy_D_Stat : 2|3@0+ (1,0) [0|7] "SED" Vector__XXX + SG_ DcacPlugPrsnt_B_Stat : 3|1@0+ (1,0) [0|1] "SED" PCM,PCM_HEV + SG_ DcacClntFlw_D_Rq : 5|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + SG_ CoolFanDcac_D_Rq : 7|2@0+ (1,0) [0|3] "SED" SOBDMC_HPCM_FD1 + +BO_ 1082 INSTRUMENT_PANEL: 8 GWM + SG_ METRIC_UNITS : 54|1@0+ (1,0) [0|1] "SED" IPMA,PCM,PCM_HEV + +BO_TX_BU_ 2612224016 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 878 : PCM,PCM_HEV; +BO_TX_BU_ 1085 : ECM_Diesel,PCM; +BO_TX_BU_ 2611175440 : ECM_Diesel,PCM_HEV,PCM; +BO_TX_BU_ 2610126864 : ECM_Diesel,PCM_HEV,PCM; +BO_TX_BU_ 786 : PCM_HEV,SOBDMC_HPCM_FD1; +BO_TX_BU_ 1090 : SOBDMC_HPCM_FD1,PCM_HEV; +BO_TX_BU_ 374 : PCM_HEV,TCM_DSL,PCM; +BO_TX_BU_ 872 : SOBDMC_HPCM_FD1,PCM_HEV; +BO_TX_BU_ 560 : PCM,PCM_HEV,TCM_DSL; +BO_TX_BU_ 369 : PCM_HEV,TCM_DSL,PCM; +BO_TX_BU_ 92 : PCM,TCM_DSL,PCM_HEV; +BO_TX_BU_ 2030 : SOBDMC_HPCM_FD1,ECM_Diesel; +BO_TX_BU_ 1087 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 2024 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1697 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1696 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1429 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1100 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1086 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1071 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1069 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1060 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1057 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 1055 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 517 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 516 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 514 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 512 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 380 : ECM_Diesel,PCM; +BO_TX_BU_ 377 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 376 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 359 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 358 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 357 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 342 : ECM_Diesel,PCM,PCM_HEV; +BO_TX_BU_ 71 : ECM_Diesel,PCM,PCM_HEV; + +CM_ "New CAN FD network"; +CM_ BU_ CMR_DSMC "Driver Status Monitor Camera"; +CM_ BU_ IPMA_ADAS "Assist Driving Alert System"; +CM_ BU_ PSCM "Passenger Front Climate Control Seat Module"; +CM_ BU_ ABS_ESC "Anti-lock Brake / Traction Control Module"; +CM_ BU_ TCCM "Transfer Case Control Module, 4x4 Control Module"; +CM_ BU_ TCM_DSL "Transmission Control Module"; +CM_ BU_ PCM "Powertrain Control Module"; +CM_ BU_ ECM_Diesel "Diesel"; +CM_ BU_ GWM "Gateway Module CGEA1.3(Star Architecture)"; +CM_ BU_ TSTR "Diagnostic Tester"; + +CM_ SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs "Signal not transmitted on gas variants."; +CM_ SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt "Signal not transmitted on gas variants."; +CM_ SG_ 1150 LocationServices_1 "Tx by HS3 APIM"; +CM_ SG_ 542 LocationServices_3 "Tx by HS3 APIM"; +CM_ SG_ 810 NtfyDrvTrgtDist_L_Rq "Object.SetTripRangeAlert_Rq This signal is meant to provide the customer settings for the target distance remote notification"; +CM_ SG_ 810 NtfyDrvSocLvl1_Pc_Rq "Object.SetCustomerLevelAlert_Rq This signal is meant to provide the customer settings for the SOC remote notification."; +CM_ SG_ 810 PtRmtRprt_D_Stat "Object.RemoteDataReport_St"; +CM_ SG_ 550 PtWakeupActv1_B_Rq "ECG Application signal"; +CM_ SG_ 982 LatCtlPath_No_Cnt "Signal not transmitted on gas variants."; +CM_ SG_ 982 LatCtlPath_No_Cs "Signal not transmitted on gas variants."; +CM_ SG_ 1104 DrvEngageLevel_No_Cs "Signal not transmitted on gas variants."; +CM_ SG_ 1104 DrvEngageLevel_No_Cnt "Signal not transmitted on gas variants."; +CM_ SG_ 1085 ULoRgenTestMde_B_Stat "Signal not transmitted on HEV variants."; +CM_ SG_ 1085 PwSrcULoComm_B_Falt "Signal not transmitted on HEV variants."; +CM_ SG_ 1445 SOBDMC_AutoSarNMReserved4 "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 1445 SOBDMC_AutoSarNMReserved3 "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 1445 SOBDMC_AutoSarNMReserved2 "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 1445 SOBDMC_AutoSarNMReserved1 "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 1445 SOBDMC_AutoSarNMNodeId "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 1445 SOBDMC_AutoSarNMControl "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 1088 HvacPrecondMode2_D_Rq "Signal not transmitted on vehicles that do not have the Fuel operated heater feature."; +CM_ SG_ 1088 HvacPrecondBlwr2_D_Rq "Signal not transmitted on vehicles that do not have the Fuel operated heater feature."; +CM_ SG_ 786 ChrgStat_D_Dsply "Signal not transmitted by PCM_HEV"; +CM_ SG_ 66 immoControlData_T2 "Not transmitted on all vehicle variants"; +CM_ SG_ 66 immoControlCmd_T2 "Not transmitted on all vehicle variants"; +CM_ SG_ 549 BeltminderAudioMute "Object.MyKey.BeltMinderAudioMute.St"; +CM_ SG_ 549 Power_Up_Chime_Modules "Object.AlertMethod.IPC _Infotainment"; +CM_ SG_ 549 Chime_Source "Object.AlertMethod.IPC_infotainment"; +CM_ SG_ 611 AwdStat_D_RqDsply "Signal not transmitted on programs that do not have AWD."; +CM_ SG_ 611 AwdSrvcRqd_B_Rq "Signal not transmitted on programs that do not have AWD."; +CM_ SG_ 611 AwdLck_Tq_Rq "Signal not transmitted on programs that do not have AWD."; +CM_ SG_ 130 VehVTrlrAid_B_Rq "VR session start- req. limit blower speed no more than X volts. CC restriction on time msg. will be honored.Double Event msg1st event to request limit, 2nd event to release limit, No msg. CC Grammar v7.xls"; +CM_ SG_ 130 SteMdule_U_Meas "DCR 1745 to update Tx from GWM to EP100ms. SteMdule_I_Est & SteMdule_U_Meas are used by BMS system & filtered. The filter uses standard periodic rate & changing to EP would adversely affect the filter.(jweinfur)"; +CM_ SG_ 130 SteMdule_I_Est "DCR 1745 to update Tx from GWM to EP100ms. SteMdule_I_Est & SteMdule_U_Meas are used by BMS system & filtered. The filter uses standard periodic rate & changing to EP would adversely affect the filter.(jweinfur)"; +CM_ SG_ 126 StePinRelInit_An_Sns "SASM will transmit these signals on vehicles with SASM and without PSCM. SCCM will not Tx this signal when SASM is present."; +CM_ SG_ 126 StePinAn_No_Cs "Signal not transmitted on gas variants."; +CM_ BO_ 133 "Seen on Ford Edge MK2"; +CM_ SG_ 133 StePinRelInit_An_Sns "SASM will transmit these signals on vehicles with SASM and without PSCM. SCCM will not Tx this signal when SASM is present."; +CM_ SG_ 133 StePinAn_No_Cs "Signal not transmitted on gas variants."; +CM_ SG_ 1200 BrkTot_Tq_RqDrv "DCR 1836 to update Tx from GWM to EP100ms rejected due MPS6 TCM requires BrkTot_Tq_RqDrv at 20ms (bshu1)."; +CM_ SG_ 1046 TCMode "Signal data set to 0x0 for ABS only vehicle option content"; +CM_ SG_ 1046 DrvAntiLckLamp_D_Rq "update value table v8.34, not align w/GSDB, need etracker. ABS & IPC implemented as updated."; +CM_ SG_ 1046 BpedMove_D_Actl "CCMGenSigTimeoutTime=1000"; +CM_ SG_ 1044 StePinOffst_An_Est "SASM will transmit these signals on vehicles with SASM and without PSCM. SCCM will not Tx this signal when SASM is present."; +CM_ SG_ 1044 StePinOffst_No_Cs "Signal not transmitted on gas variants."; +CM_ SG_ 534 BrkObdData_No_Actl "Signal not transmitted on gas, diesel and HEV. Only supported on PHEV."; +CM_ SG_ 534 BrkObdIndex_No_Actl "Signal not transmitted on gas, diesel and HEV. Only supported on PHEV."; +CM_ SG_ 534 WhlRotatRr_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; +CM_ SG_ 534 WhlRotatRl_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; +CM_ SG_ 534 WhlRotatFr_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; +CM_ SG_ 534 WhlRotatFl_No_Cnt "DCR 1833 to update Tx from GWM to EP100ms. Wheel Count signals are used by complex algorithm to determine Tire Pressure by Location & can't change from 20msec. (jweinfur)"; +CM_ SG_ 531 VehLongOvrGnd_A_Est "CCMGenSigTimeoutTime=1000"; +CM_ SG_ 1034 VehicleGGCCData "RCMGenSigTimeout=6000"; +CM_ SG_ 1090 Mtr2State_D_ActlMntr "Signal Not transmitted on PCM_HEV variant"; +CM_ SG_ 1090 Inv1Ain_I_ActlMntr "Signal Not transmitted on PCM_HEV variant"; +CM_ SG_ 1090 VehElRnge_L_Dsply "Signal Not transmitted on HPCM variant"; +CM_ SG_ 374 TrnRng_D_Rq "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 374 TrnPrkSys_D_Actl "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 374 GearLvr_D_ActlDrv "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 374 GearPos_No_Cs "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 374 GearPos_D_Trg "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 374 GearPos_No_Cnt "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 374 GearPos_D_Actl "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 603 WhlDirAvgDrv_D_Actl "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; +CM_ SG_ 603 PrplTqMnRgen_B_Actl "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; +CM_ SG_ 603 BattTracCnnct_D_Rq "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; +CM_ SG_ 872 HybMdeStat_D_Dsply "Signal not transmitted by HPCM"; +CM_ SG_ 560 SelDrvMdeSwtch_D_Stat3 "ECM_HEV, PCM & PCM_HEV do not support or Transmit signal."; +CM_ SG_ 560 TrnSrvcRqd_B_Rq "Signal not transmitted on Diesel & HEV variants. MHT(U611/625) HPCM Rx 0x230 from PCM_HEV. Powersplit FWD HEVs(Cx482/3 430) HPCM Tx 0x230."; +CM_ SG_ 560 TrnShifActv_B_Actl "Signal not transmitted on HEV variants. MHT(U611/625) HPCM Rx 0x230 from PCM_HEV. Powersplit FWD HEVs(Cx482/3 430) HPCM Tx 0x230."; +CM_ SG_ 560 GboxOil_Te_Actl "Signal not transmitted on HEV variants. MHT(U611/625) HPCM Rx 0x230 from PCM_HEV. Powersplit FWD HEVs(Cx482/3 430) HPCM Tx 0x230."; +CM_ SG_ 369 SeatWorkSrfc_B_Falt "Signal Not transmitted by TCM_DSL"; +CM_ SG_ 369 TrnIpcDsplyRng2_D_Actl "Signal not transmitted on HEV variants."; +CM_ SG_ 369 TrnIpcDsplyRng_D_Stat "Signal not transmitted on HEV variants."; +CM_ SG_ 92 TrnLvrV_D_Rq "Signal not transmitted on vehicles with PCM_HEV"; +CM_ SG_ 92 TrnSbwSysHlth_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnGearNtmAllow_B_Stat "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnDtpCmd_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnGearCmd_No_Cs "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnValidGear_D_Cnfm "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnNtrlTowCmd_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnGearCmd_Pc_ActlPt "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnGear_D_RqPt "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnCmdState_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnCmdCnt_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 PrkBrkActv_D_RqTrnGear "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnGearMsgTxt_D_Rq "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 92 TrnGearCmd_No_Cnt "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 1087 BattRgenLoChrg_D_RqEng "Signal not transmitted on diesel variant"; +CM_ SG_ 1087 BattRgenLoDChrg_D_RqEng "Signal not transmitted on diesel variant"; +CM_ SG_ 1087 FapLcInhbt_B_Rq "Signal not transmitted on diesel variant"; +CM_ SG_ 1100 EngExhMdeQuiet_D2_Stat "Signal not transmitted on HEV & Diesel programs"; +CM_ SG_ 1100 HvacCmprLim_D_Stat "Signal not transmitted on Diesel variants"; +CM_ SG_ 1100 WakeAlarm1_T_Rq "Signal not transmitted on Gas variants"; +CM_ SG_ 1100 WakeAlarm1_B_Typ "Signal not transmitted on Gas variants"; +CM_ SG_ 1100 Veh_V_DsplyTrailCtlSet "Signal not transmitted on HEV & Diesel programs"; +CM_ SG_ 1100 TrailCtlPt_B_Falt "Signal not transmitted on HEV & Diesel programs"; +CM_ SG_ 1100 AutoTowAllw_D_StatMnu "Signal not transmitted on Gas & Diesel variants"; +CM_ SG_ 1100 AutoTowActv_B_Stat "Signal not transmitted on Gas & Diesel variants"; +CM_ SG_ 1086 EngMnfld_P_Actl "Signal not transmitted on HEV & Diesel programs"; +CM_ SG_ 1086 ElLoadCtl_D_Rq "Signal not transmitted on HEV variants."; +CM_ SG_ 1071 CluPdl_PcRate_Actl "Signal not transmitted on HEV and Gas variants."; +CM_ SG_ 1071 CluPdlPosPcMeas_D_Qf "Signal not transmitted on HEV and Gas variants."; +CM_ SG_ 1071 CluPdlPos_Pc_Meas "Signal not transmitted on HEV and Gas variants."; +CM_ SG_ 1071 EngAoutIdl_N_Ntrl "Signal not transmitted on HEV variants and diesel."; +CM_ SG_ 1069 SlMde_D_Stat "IPC and HUD_ADV Receve from HS3 FGW 0x42D, not HS3 0x38A, MSG DCR 506. Signal not transmitted on Gas & HEV variants"; +CM_ SG_ 1069 SlMde_D_RqDsply "IPC and HUD_ADV Receve from HS3 FGW 0x42D, not HS3 0x38A, MSG DCR 506. Signal not transmitted on Gas & HEV variants"; +CM_ SG_ 1069 IsaOffst_D_Stat "Signal not transmitted on Gas & HEV variants"; +CM_ SG_ 1069 ObdWarmUp_B_Complt "Signal not transmitted on diesel variants."; +CM_ SG_ 1069 EngMsgTxt_D_Rq "Signal not transmitted on diesel variants."; +CM_ SG_ 1069 EngClnt_Te_ActlDiag "Signal not transmitted on gas variants."; +CM_ SG_ 1069 EngLoad_Pc_CalcDiag "Signal not transmitted on gas variants."; +CM_ SG_ 1069 ApedPos_Pc_ActlDiag "Signal not transmitted on gas variants."; +CM_ SG_ 1060 RearDiffOilTeWarn_B_Rq "Signal not transmitted on HEV & Diesel programs"; +CM_ SG_ 1060 RearDiffOil_Te_Actl "Signal not transmitted on HEV & Diesel programs"; +CM_ SG_ 1057 FohEng_D_Rq "Signal not transmitted on vehicles that do not have the fuel operated heater feature. Signal not transmitted on HEV programs"; +CM_ SG_ 1057 EngIdlShutDown_D_Stat "Signal not transmitted on diesel variants."; +CM_ SG_ 1057 FUEL_ALCOHOL_PERCNT "signal not transmitted on diesel and HEV variants."; +CM_ SG_ 1057 TrnTotTq_Rt_Est "Signal not transmitted on gas and HEV variants."; +CM_ SG_ 1057 TrnTotLss_Tq_Est "Signal not transmitted on gas and HEV variants."; +CM_ SG_ 1057 VehVLimStat_D_Actl "Signal not transmitted on gas and HEV variants."; +CM_ SG_ 1057 VehVLimActv_B_Actl "Signal not transmitted on gas and HEV variants."; +CM_ SG_ 562 GearNtrl_No_Cs "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 562 GearNtrl_No_Cnt "Powersplit HEVs with HF45, HPCM will Tx this message. For all other programs it will be Tx by PCM or TCM. "; +CM_ SG_ 516 EngAoutNActl_D_QF "Signal not transmitted on Gas & HEV variants"; +CM_ SG_ 516 EngAout3_N_Actl "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 516 ApedPos_Pc_ActlArb "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 516 ApedPosPcActl_No_Cnt "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 516 ApedPosPcActl_No_Cs "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 514 VehVTrlrAid_B_Avail "Signal not transmitted on HEV variants."; +CM_ SG_ 514 GearRvrse_D_Actl "Do not implement GearRvrse_D_Actl until eTracker 8804151 is approved, 11/24/09"; +CM_ SG_ 512 PrplWhlTotTqRq_No_Cs "Signal not transmitted on gas & Diesel variants."; +CM_ SG_ 512 PrplWhlTotTqRq_No_Cnt "Signal not transmitted on gas & Diesel variants."; +CM_ SG_ 512 PtDrvMde_D_Stat "Signal not transmitted on Gas & HEV variants."; +CM_ SG_ 380 EngExhBrkOnLamp_B_Rq "Signal not transmitted on Gas variants"; +CM_ SG_ 380 EngExhBrkAutoLamp_B_Rq "Signal not transmitted on Gas variants"; +CM_ SG_ 380 EngAout_N_MxAllw "Signal not transmitted on Gas variants"; +CM_ SG_ 380 EngExhBrkMde_D_Actl "Signal not transmitted on Gas variants"; +CM_ SG_ 377 HvacAirFullOut_B_Rq "Signal not transmitted on diesel variant"; +CM_ SG_ 377 FuelFlw_Vl_Dsply "Signal not transmitted on diesel variants."; +CM_ SG_ 377 FuelFillInlet_B_Dsply "Signal not transmitted on diesel variants."; +CM_ SG_ 377 OdoCount "Signal not transmitted on diesel variants."; +CM_ SG_ 377 EngOilLife_Pc_Actl "Signal not transmitted on diesel variants."; +CM_ SG_ 377 FuelFilterLamp_B_Dsply "Signal not transmitted on Gas & HEV variants"; +CM_ SG_ 377 AirCondRec_B_Rq "Signal not transmitted on diesel variants."; +CM_ SG_ 377 AirCondClutch_B_Stats "Signal not transmitted on diesel variants."; +CM_ SG_ 376 GasPrtc_D_RqDsply "Signal not transmitted on HEV & Diesel variants."; +CM_ SG_ 376 EngAout_Aa_Actl "Signal not transmitted on HEV variants."; +CM_ SG_ 376 AslIconDsply_D_Rq "Signal not transmitted on HEV variants."; +CM_ SG_ 376 AslChime_B_Rq "Signal not transmitted on HEV variants."; +CM_ SG_ 376 HvacHtrCore2_Te_Actl "Signal not transmitted on Gas & Diesel variants"; +CM_ SG_ 376 EcssLamp_D_RqDsply "Signal not transmitted on Gas & HEV variants"; +CM_ SG_ 376 AirAmb_Te_Actl "Signal not transmitted on Gas variants"; +CM_ SG_ 359 PrplWhlRgenMn_Tq_Actl "Signal not transmitted on Gas & Diesel variants"; +CM_ SG_ 359 ElPw_D_StatStrtStop "Signal not transmitted on HEV variants."; +CM_ SG_ 359 TrnAin_Tq_Actl "Signal not transmitted on HEV variances."; +CM_ SG_ 359 PlgActvArb_B_Actl "Only supported on PHEV programs. PlgActvArb_B_Actl HPCM will Tx on Powersplit PHEVs, On MHT PHEVs the PCM_HEV will Tx and HPCM will Rx."; +CM_ SG_ 359 TrnAinTq_D_Qf "Signal not transmitted on HEV variances."; +CM_ SG_ 358 StopStrtStdby_D_Indic "Signal not transmitted on HEV variants."; +CM_ SG_ 358 StopStrtIODTxt_D_Rq "Signal not transmitted on HEV variants."; +CM_ SG_ 358 StopStrtDrvMde_D_Indic "Signal not transmitted on HEV variants."; +CM_ SG_ 358 StopStrtMsgTxt_D_Rq "Signal not transmitted on HEV variants."; +CM_ SG_ 358 HiElPwInhbt_B_Stat "Signal not transmitted on HEV programs"; +CM_ SG_ 358 AutoStopPtDelta_I_Est "Signal not transmitted on HEV variants. "; +CM_ SG_ 357 BpedDrvAppl_D_Actl "CCMGenSigTimeoutTime=1000"; +CM_ SG_ 357 CcStat_D_Actl "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 357 EngAout_N_MnAllw "Signal not transmitted on Gas & Diesel variants."; +CM_ SG_ 357 AccStopMde_D_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 342 EngOvrhtMitgActv_D_Ind "Signal not transmitted on diesel."; +CM_ SG_ 342 EngGoutLss_Tq_Est "Signal not transmitted on gas and diesel variants."; +CM_ SG_ 342 EngOil_Te_Actl "Signal not transmitted on Gas & HEV variants. "; +CM_ SG_ 954 GenericSwtch2_No_Actl "U625 Police Wig Wag feature"; +CM_ SG_ 935 SodRight_D_Stat "IPCGenSigTimeoutTime=1600"; +CM_ SG_ 935 Side_Detect_R_Illum "DDMGenSigTimeoutTime=2000"; +CM_ SG_ 935 SodSnsRight_D_Stat "IPCGenSigTimeoutTime=1600"; +CM_ SG_ 935 SodAlrtRight_D_Stat "DDMGenSigTimeoutTime=2000"; +CM_ SG_ 1112 BattTracClntPmp_D_Stat "48V mHEV: ECM_HEVDSL is Tx, MHT HEV: PCM_HEV is Tx, Powersplit HEV: SOBDMC_HPCM is Tx"; +CM_ SG_ 1050 Outside_Air_Temp_Stat "Filtered value, i.e. same as disply for customer"; +CM_ SG_ 1009 CenterStackRing_D_Actl "The Center Stack sends the CPLR a signal to turn On or Off the light Ring, This is a customer selectable preference switch"; +CM_ SG_ 1009 APIM_NumberofTracks_St "Object NumberofTracks"; +CM_ SG_ 1009 APIM_ActiveTrackNum_St "Object.ActiveTrackNum"; +CM_ SG_ 360 GsmSrvcRqd_B_Rq "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 360 TrnGearPwmFalt_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 360 GearButtnStuck_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGsmNtmState_D_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 DrQltyDrv_D_StatGsm "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnBtsiOvrrd_B_Stat "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnValidGearRq_D_Stat "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearRqCnt_B_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_U_Actl "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlR2 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlR1 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlR0 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlP2 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlP1 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlP0 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlN2 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlN1 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlN0 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlM2 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlM1 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlM0 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlD2 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlD1 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGearButtn_B_ActlD0 "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGear_No_Cs "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGear_No_Cnt "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 TrnGear_D_RqDrv "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 90 BrkSwtchPos_B_ActlGsm "Signal not transmitted on vehicles that do not have shift by wire."; +CM_ SG_ 138 SteWhlRelCalib_An_Sns "Signal is not transmitted on vehicles where PSCM is transmitting the message that contains this signal. Signal data set to 0x0 for ABS only vehicle option content"; +CM_ SG_ 1093 StopLamp_B_RqTrlrBrk "Signal not transmitted on all variants."; +CM_ SG_ 792 ElTrip_L_Dsply "Key cycle trip distance driven with the engine off (Trip EV Miles)"; +CM_ SG_ 792 ElLongTerm_L_Dsply "Long term distance distance driven with the engine off since the last long term reset (Long Term EV Miles)."; +CM_ SG_ 765 Mc_VehTimeFrmtUsrSel_St "Object.BodyInterface.Settings.VehicleTimeFormatUserSelection"; +CM_ SG_ 765 Mc_VehUntTrpCoUsrSel_St "Object.VehicleSettings.Disp_Miles_Kilometers.Rq"; +CM_ SG_ 765 Mc_VehUnitTempUsrSel_St "Object.VehicleSettings.Disp_Temperature.Rq"; +CM_ SG_ 765 Mc_VehLangUsrSel_St "Object.BodyInterface.Settings.VehicleLanguageUserSelection Object Vehicle Settings.Disp_LangSel"; +CM_ SG_ 934 Side_Detect_L_Illum "DDMGenSigTimeoutTime=2000"; +CM_ SG_ 934 SodLeft_D_Stat "IPCGenSigTimeoutTime=1600"; +CM_ SG_ 934 SodSnsLeft_D_Stat "IPCGenSigTimeoutTime=1600"; +CM_ SG_ 934 SodAlrtLeft_D_Stat "DDMGenSigTimeoutTime=2000"; +CM_ SG_ 1072 MetricActv_B_Actl "0 =Inactive(English), 1=Active(Metric)"; +CM_ SG_ 145 VehYaw_W_Actl "CCMGenSigTimeoutTime=1000"; +CM_ SG_ 931 CrnkInhbt_No_Cs "Signal not transmitted on gas and HEV variants."; +CM_ SG_ 931 CrnkInhbt_No_Cnt "Signal not transmitted on gas and HEV variants."; +CM_ SG_ 947 Dimming_Lvl "Refer to Vehicle Interior Illum Dimming Ctrl Sys Eng Spec, Table 2"; +CM_ SG_ 947 PrkBrkActv_B_Actl "Signal not transmitted on vehicles with electric park brake. "; +CM_ SG_ 394 HaDsply_No_Cs "Signal not transmitted on gas variants."; +CM_ SG_ 394 HaDsply_No_Cnt "Signal not transmitted on gas variants."; +CM_ SG_ 391 CmbbBrkDecel_A_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 391 CmbbBrkPrchg_D_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 391 CmbbBrkDecel_B_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 391 CmbbBaSens_D_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 390 AccBrkTot_A_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 390 AccBrkPrkEl_B_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 390 AccPrpl_A_Rq "PCMGenSigTimeoutTime=1000"; +CM_ SG_ 390 AccBrkPrchg_B_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 390 AccBrkDecel_B_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 390 AccStopStat_B_Rq "ABSGenSigTimeoutTime=1000"; +CM_ SG_ 942 PrkAidRdiusRight_L_Dsply "MSGDCR 679, set all signals to OnChange"; +CM_ SG_ 942 PrkAidRdiusLeft_L_Dsply "MSGDCR 679, set all signals to OnChange"; +CM_ SG_ 942 PrkAidDrvDir_D_Stat "MSGDCR 679, set all signals to OnChange"; + +BA_DEF_ BO_ "OvtpPushApplication" ENUM "FALSE","TRUE"; +BA_DEF_ BU_ "OvtpOperationMode" ENUM "SERVER","CLIENT"; +BA_DEF_ BU_ "OvtpEcuAddress" INT 0 1022; +BA_DEF_ SG_ "ECGUsedRxSignal" ENUM "No","Yes"; +BA_DEF_ SG_ "U_S650_MY2022_Rx" ENUM "No","Yes"; +BA_DEF_ SG_ "ECGUsedTxSignal" ENUM "No","Yes"; +BA_DEF_ SG_ "U_S650_MY2022_Tx" ENUM "No","Yes"; +BA_DEF_ SG_ "GenSigTimeoutTime_CHCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_SOBDMC_HPCM_F" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_CMR_DSMC" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ECM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ECM_HEVDSL" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_AWD_DLCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ECM_HEV" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_GENERIC" INT 0 100000; +BA_DEF_ BO_ "VFrameFormat" ENUM "StandardCAN","ExtendedCAN","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","reserved","StandardCAN_FD","ExtendedCAN_FD"; +BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_HCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ECM_Diesel" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TCCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TCM_DSL" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_IPMA_ADAS" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_PCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_PCM_HEV" INT 0 100000; +BA_DEF_ "BusType" STRING; +BA_DEF_ BO_ "FrameRouting" STRING; +BA_DEF_ BO_ "FrameGatewayNetwork" STRING; +BA_DEF_ BO_ "FrameGateway_LC1" HEX 0 1407; +BA_DEF_ BO_ "FrameGatewayLC1_HS3" HEX 0 1407; +BA_DEF_ BO_ "FrameGatewayMS1" HEX 0 1407; +BA_DEF_ BO_ "FrameGatewayHS3" HEX 0 1407; +BA_DEF_ BO_ "FrameGatewayHS2" HEX 0 1407; +BA_DEF_ BO_ "FrameGatewayHS1" HEX 0 1407; +BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes"; +BA_DEF_ BO_ "FrameGatewayId" HEX 0 1407; +BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; +BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes"; +BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; +BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; +BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; +BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; +BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; +BA_DEF_ BO_ "GenMsgSendType" ENUM "FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; +BA_DEF_ SG_ "U_T6_MCA_MY2020_Tx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_P702_MY2021_Tx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_CX727_MY2021_Tx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_F5X_MY20_Tx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_Commodity_MYXX_Tx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_T6_MCA_MY2020_Rx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_P702_MY2021_Rx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_CX727_MY2021_Rx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_F5X_MY20_Rx" ENUM "No","Yes"; +BA_DEF_ SG_ "U_Commodity_MYXX_Rx" ENUM "No","Yes"; +BA_DEF_ SG_ "GenSigStartValue" HEX 0 268435455; +BA_DEF_ SG_ "MetaData" ENUM "No","Yes"; +BA_DEF_ SG_ "ApprovedOrphan" ENUM "No","Yes"; +BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes"; +BA_DEF_ SG_ "GenSigStartValueInteger" INT 0 1000000000; +BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes"; +BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; +BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes"; +BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; +BA_DEF_ SG_ "GenSigSendType" ENUM "Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; +BA_DEF_ BO_ "SCP_FreshnessValueLength" INT 0 512; +BA_DEF_ BO_ "AuthFreshnessCounterSyncAttempt" INT 0 512; +BA_DEF_ BO_ "SCP_DataID" INT 0 65535; +BA_DEF_ BO_ "SCP_FreshnessValueTxLength" INT 0 512; +BA_DEF_ BO_ "SCP_AuthInfoTxLength" INT 0 512; +BA_DEF_ BO_ "SC_Message" ENUM "No","Yes"; +BA_DEF_ BO_ "ProgBWConditional" STRING; +BA_DEF_ BO_ "GenMsgRoutingTimeoutTime" INT 0 5000; +BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes"; +BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes"; +BA_DEF_ BO_ "TpApplType" STRING; +BA_DEF_ BO_ "DiagState" ENUM "No","Yes"; +BA_DEF_ BO_ "TpTxIndex" INT 0 536870911; +BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes"; +BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes"; +BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes"; +BA_DEF_ BO_ "NmMessage" ENUM "No","Yes"; +BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes"; +BA_DEF_ BU_ "Terminator" ENUM "No","Yes"; +BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; +BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; +BA_DEF_ BU_ "NmAsrNodeIdentifier" HEX 128 255; +BA_DEF_ BU_ "NmAsrNode" ENUM "No","Yes"; +BA_DEF_ BU_ "PowerType" ENUM "Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; +BA_DEF_ BU_ "DiagNode" ENUM "GGDS","GDS","NONE"; +BA_DEF_ BU_ "EOL_SB_Flash" ENUM "GGDS","GDS","NONE","vector_leerstring"; +BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes"; +BA_DEF_ BU_ "NmNode" ENUM "No","Yes"; +BA_DEF_ BU_ "NmStationAddress" INT 0 255; +BA_DEF_ BU_ "ILUsed" ENUM "No","Yes"; +BA_DEF_ BU_ "NosPackage" ENUM "None","I3_1","I3_2","1.0.1","RP","EuCD","Volcano","I3_3","FNOS_Autosar"; +BA_DEF_ BU_ "LIN_Master" ENUM "No","Yes"; +BA_DEF_ BU_ "PackageID" STRING; +BA_DEF_ BU_ "GatewayECU" ENUM "No","Yes"; +BA_DEF_ "NetworkSpeed" ENUM "500kBits/s","125kBit/s"; +BA_DEF_ "VersionNumber" INT 0 10000; +BA_DEF_ "StarNetworkGwType" ENUM "0=NotDefined","1=HS1","2=HS2","3=HS3","4=HS4","5=HS5","6=MS1","7=HS6","8=HS7","9=MS2","10=FD1","11=FD2","12=FD3","13=FD4","14=FD5","15=FD6","16=FD7","17=FD8"; +BA_DEF_ "CMDB_Version" STRING; +BA_DEF_ "NmType" STRING; +BA_DEF_ "NmAsrMessageCount" INT 128 128; +BA_DEF_ "NmAsrBaseAddress" HEX 1408 1408; +BA_DEF_ "DBName" STRING; +BA_DEF_ "VersionDay" INT 1 31; +BA_DEF_ "Manufacturer" STRING; +BA_DEF_ "VersionMonth" INT 1 12; +BA_DEF_ "VersionYear" INT 2000 3000; +BA_DEF_ "NmBaseAddress" HEX 1280 1280; +BA_DEF_ "NmMessageCount" INT 0 128; +BA_DEF_DEF_ "OvtpPushApplication" "FALSE"; +BA_DEF_DEF_ "OvtpOperationMode" "SERVER"; +BA_DEF_DEF_ "OvtpEcuAddress" 0; +BA_DEF_DEF_ "ECGUsedRxSignal" "No"; +BA_DEF_DEF_ "U_S650_MY2022_Rx" "No"; +BA_DEF_DEF_ "ECGUsedTxSignal" "No"; +BA_DEF_DEF_ "U_S650_MY2022_Tx" "No"; +BA_DEF_DEF_ "GenSigTimeoutTime_CHCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_SOBDMC_HPCM_F" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_CMR_DSMC" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ECM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ECM_HEVDSL" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_AWD_DLCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ECM_HEV" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_GENERIC" 0; +BA_DEF_DEF_ "VFrameFormat" "ExtendedCAN_FD"; +BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_HCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ECM_Diesel" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TCCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TCM_DSL" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_IPMA_ADAS" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_PCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_PCM_HEV" 0; +BA_DEF_DEF_ "BusType" ""; +BA_DEF_DEF_ "FrameRouting" "NONE"; +BA_DEF_DEF_ "FrameGatewayNetwork" "NONE"; +BA_DEF_DEF_ "FrameGateway_LC1" 0; +BA_DEF_DEF_ "FrameGatewayLC1_HS3" 0; +BA_DEF_DEF_ "FrameGatewayMS1" 0; +BA_DEF_DEF_ "FrameGatewayHS3" 0; +BA_DEF_DEF_ "FrameGatewayHS2" 0; +BA_DEF_DEF_ "FrameGatewayHS1" 0; +BA_DEF_DEF_ "NetworkInitialization" "Yes"; +BA_DEF_DEF_ "FrameGatewayId" 0; +BA_DEF_DEF_ "EventRateOfChange" 10000; +BA_DEF_DEF_ "ConfiguredTransmitter" "No"; +BA_DEF_DEF_ "GenMsgStartDelayTime" 0; +BA_DEF_DEF_ "GenMsgNrOfRepetition" 1; +BA_DEF_DEF_ "GenMsgDelayTime" 20; +BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; +BA_DEF_DEF_ "GenMsgCycleTime" 0; +BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; +BA_DEF_DEF_ "U_T6_MCA_MY2020_Tx" "No"; +BA_DEF_DEF_ "U_P702_MY2021_Tx" "No"; +BA_DEF_DEF_ "U_CX727_MY2021_Tx" "No"; +BA_DEF_DEF_ "U_F5X_MY20_Tx" "No"; +BA_DEF_DEF_ "U_Commodity_MYXX_Tx" "No"; +BA_DEF_DEF_ "U_T6_MCA_MY2020_Rx" "No"; +BA_DEF_DEF_ "U_P702_MY2021_Rx" "No"; +BA_DEF_DEF_ "U_CX727_MY2021_Rx" "No"; +BA_DEF_DEF_ "U_F5X_MY20_Rx" "No"; +BA_DEF_DEF_ "U_Commodity_MYXX_Rx" "No"; +BA_DEF_DEF_ "GenSigStartValue" 0; +BA_DEF_DEF_ "MetaData" "No"; +BA_DEF_DEF_ "ApprovedOrphan" "No"; +BA_DEF_DEF_ "ContentDependant" "No"; +BA_DEF_DEF_ "GenSigStartValueInteger" 0; +BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; +BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; +BA_DEF_DEF_ "WakeupSignal" "No"; +BA_DEF_DEF_ "GenSigInactiveValue" 0; +BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; +BA_DEF_DEF_ "SCP_FreshnessValueLength" 64; +BA_DEF_DEF_ "AuthFreshnessCounterSyncAttempt" 2; +BA_DEF_DEF_ "SCP_DataID" 0; +BA_DEF_DEF_ "SCP_FreshnessValueTxLength" 8; +BA_DEF_DEF_ "SCP_AuthInfoTxLength" 56; +BA_DEF_DEF_ "SC_Message" "No"; +BA_DEF_DEF_ "ProgBWConditional" "NONE"; +BA_DEF_DEF_ "GenMsgRoutingTimeoutTime" 0; +BA_DEF_DEF_ "MessageGateway" "No"; +BA_DEF_DEF_ "NmAsrMessage" "No"; +BA_DEF_DEF_ "TpApplType" ""; +BA_DEF_DEF_ "DiagState" "No"; +BA_DEF_DEF_ "TpTxIndex" 0; +BA_DEF_DEF_ "NetworkInitializationCommand" "No"; +BA_DEF_DEF_ "DiagRequest" "No"; +BA_DEF_DEF_ "DiagResponse" "No"; +BA_DEF_DEF_ "NmMessage" "No"; +BA_DEF_DEF_ "GenMsgILSupport" "Yes"; +BA_DEF_DEF_ "Terminator" "No"; +BA_DEF_DEF_ "NodeWakeUpTime" 10; +BA_DEF_DEF_ "NodeStartUpTime" 250; +BA_DEF_DEF_ "NmAsrNodeIdentifier" 128; +BA_DEF_DEF_ "NmAsrNode" "No"; +BA_DEF_DEF_ "PowerType" "Switched"; +BA_DEF_DEF_ "DiagNode" "GGDS"; +BA_DEF_DEF_ "EOL_SB_Flash" "GGDS"; +BA_DEF_DEF_ "NetworkInitializationUsed" "No"; +BA_DEF_DEF_ "NmNode" "No"; +BA_DEF_DEF_ "NmStationAddress" 0; +BA_DEF_DEF_ "ILUsed" "Yes"; +BA_DEF_DEF_ "NosPackage" "I3_3"; +BA_DEF_DEF_ "LIN_Master" "No"; +BA_DEF_DEF_ "PackageID" "08.05.00.00.71.xx.xx.rr.00.00"; +BA_DEF_DEF_ "GatewayECU" "No"; +BA_DEF_DEF_ "NetworkSpeed" "500kBits/s"; +BA_DEF_DEF_ "VersionNumber" 1; +BA_DEF_DEF_ "StarNetworkGwType" "0=NotDefined"; +BA_DEF_DEF_ "CMDB_Version" "v11.01"; +BA_DEF_DEF_ "NmType" "Ford-OSEK"; +BA_DEF_DEF_ "NmAsrMessageCount" 128; +BA_DEF_DEF_ "NmAsrBaseAddress" 1408; +BA_DEF_DEF_ "DBName" ""; +BA_DEF_DEF_ "VersionDay" 1; +BA_DEF_DEF_ "Manufacturer" "Ford"; +BA_DEF_DEF_ "VersionMonth" 1; +BA_DEF_DEF_ "VersionYear" 2011; +BA_DEF_DEF_ "NmBaseAddress" 1280; +BA_DEF_DEF_ "NmMessageCount" 128; +BA_ "BusType" "CAN FD"; +BA_ "VersionYear" 2019; +BA_ "VersionMonth" 4; +BA_ "Manufacturer" "Ford"; +BA_ "VersionDay" 11; +BA_ "CMDB_Version" "FNV2_v18.07"; +BA_ "StarNetworkGwType" 10; +BA_ "VersionNumber" 6; +BA_ "NmType" "Ford-OSEK"; +BA_ "DBName" "FD1_CAN"; +BA_ "NmStationAddress" BU_ VDM 48; +BA_ "OvtpEcuAddress" BU_ VDM 32; +BA_ "OvtpEcuAddress" BU_ CMR_DSMC 187; +BA_ "NmStationAddress" BU_ CMR_DSMC 95; +BA_ "PowerType" BU_ CMR_DSMC 2; +BA_ "NmAsrNode" BU_ CMR_DSMC 1; +BA_ "NmAsrNodeIdentifier" BU_ CMR_DSMC 223; +BA_ "OvtpEcuAddress" BU_ SOBDMC_HPCM_FD1 17; +BA_ "NmStationAddress" BU_ SOBDMC_HPCM_FD1 37; +BA_ "OvtpEcuAddress" BU_ IPMA_ADAS 33; +BA_ "NmStationAddress" BU_ IPMA_ADAS 28; +BA_ "NodeStartUpTime" BU_ IPMA_ADAS 300; +BA_ "OvtpEcuAddress" BU_ PSCM 48; +BA_ "NmStationAddress" BU_ PSCM 53; +BA_ "PowerType" BU_ PSCM 1; +BA_ "NmAsrNode" BU_ PSCM 1; +BA_ "NmAsrNodeIdentifier" BU_ PSCM 181; +BA_ "Terminator" BU_ PSCM 1; +BA_ "OvtpEcuAddress" BU_ ABS_ESC 40; +BA_ "NmStationAddress" BU_ ABS_ESC 22; +BA_ "PowerType" BU_ ABS_ESC 2; +BA_ "NmAsrNode" BU_ ABS_ESC 1; +BA_ "NmAsrNodeIdentifier" BU_ ABS_ESC 150; +BA_ "NodeStartUpTime" BU_ ABS_ESC 1000; +BA_ "NodeWakeUpTime" BU_ ABS_ESC 300; +BA_ "OvtpEcuAddress" BU_ TCCM 25; +BA_ "NmStationAddress" BU_ TCCM 33; +BA_ "NmAsrNode" BU_ TCCM 1; +BA_ "NmAsrNodeIdentifier" BU_ TCCM 161; +BA_ "NodeStartUpTime" BU_ TCCM 1000; +BA_ "NodeWakeUpTime" BU_ TCCM 25; +BA_ "OvtpEcuAddress" BU_ TCM_DSL 24; +BA_ "NmStationAddress" BU_ TCM_DSL 32; +BA_ "PowerType" BU_ TCM_DSL 1; +BA_ "NmAsrNode" BU_ TCM_DSL 1; +BA_ "NmAsrNodeIdentifier" BU_ TCM_DSL 160; +BA_ "NodeWakeUpTime" BU_ TCM_DSL 200; +BA_ "NosPackage" BU_ TCM_DSL 4; +BA_ "OvtpEcuAddress" BU_ PCM_HEV 16; +BA_ "NmStationAddress" BU_ PCM_HEV 21; +BA_ "PowerType" BU_ PCM_HEV 1; +BA_ "NmAsrNode" BU_ PCM_HEV 1; +BA_ "NmAsrNodeIdentifier" BU_ PCM_HEV 149; +BA_ "NodeStartUpTime" BU_ PCM_HEV 350; +BA_ "OvtpEcuAddress" BU_ PCM 16; +BA_ "NmStationAddress" BU_ PCM 21; +BA_ "PowerType" BU_ PCM 1; +BA_ "NmAsrNode" BU_ PCM 1; +BA_ "NmAsrNodeIdentifier" BU_ PCM 149; +BA_ "NodeStartUpTime" BU_ PCM 350; +BA_ "OvtpEcuAddress" BU_ ECM_Diesel 16; +BA_ "NmStationAddress" BU_ ECM_Diesel 21; +BA_ "PowerType" BU_ ECM_Diesel 1; +BA_ "NmAsrNode" BU_ ECM_Diesel 1; +BA_ "NmAsrNodeIdentifier" BU_ ECM_Diesel 149; +BA_ "OvtpEcuAddress" BU_ GWM 216; +BA_ "OvtpOperationMode" BU_ GWM 1; +BA_ "NmStationAddress" BU_ GWM 30; +BA_ "PowerType" BU_ GWM 2; +BA_ "NmAsrNode" BU_ GWM 1; +BA_ "NmAsrNodeIdentifier" BU_ GWM 158; +BA_ "NodeStartUpTime" BU_ GWM 100; +BA_ "Terminator" BU_ GWM 1; +BA_ "GatewayECU" BU_ GWM 1; +BA_ "NosPackage" BU_ GWM 4; +BA_ "GenMsgSendType" BO_ 823 5; +BA_ "GenMsgCycleTime" BO_ 823 1000; +BA_ "VFrameFormat" BO_ 823 14; +BA_ "GenMsgSendType" BO_ 824 5; +BA_ "GenMsgCycleTime" BO_ 824 1000; +BA_ "VFrameFormat" BO_ 824 14; +BA_ "FrameGatewayId" BO_ 949 949; +BA_ "FrameGatewayNetwork" BO_ 949 "HS1_CAN"; +BA_ "FrameRouting" BO_ 949 ""; +BA_ "VFrameFormat" BO_ 949 14; +BA_ "GenMsgILSupport" BO_ 1825 0; +BA_ "DiagRequest" BO_ 1825 1; +BA_ "GenMsgSendType" BO_ 1825 1; +BA_ "GenMsgDelayTime" BO_ 1825 0; +BA_ "NetworkInitialization" BO_ 1825 0; +BA_ "VFrameFormat" BO_ 1825 14; +BA_ "GenMsgDelayTime" BO_ 524 0; +BA_ "GenMsgCycleTime" BO_ 524 10; +BA_ "GenMsgSendType" BO_ 524 0; +BA_ "ProgBWConditional" BO_ 524 "MSGDCR1008_CX48X_V03_HS1D_56.84_mHEV_54.89"; +BA_ "VFrameFormat" BO_ 524 14; +BA_ "FrameRouting" BO_ 740 ""; +BA_ "FrameGatewayNetwork" BO_ 740 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 740 740; +BA_ "VFrameFormat" BO_ 740 14; +BA_ "GenMsgCycleTime" BO_ 1160 1000; +BA_ "GenMsgSendType" BO_ 1160 5; +BA_ "VFrameFormat" BO_ 1160 14; +BA_ "GenMsgCycleTime" BO_ 776 1000; +BA_ "GenMsgSendType" BO_ 776 5; +BA_ "VFrameFormat" BO_ 776 14; +BA_ "GenMsgCycleTime" BO_ 775 1000; +BA_ "GenMsgSendType" BO_ 775 5; +BA_ "VFrameFormat" BO_ 775 14; +BA_ "GenMsgCycleTime" BO_ 774 1000; +BA_ "GenMsgSendType" BO_ 774 5; +BA_ "VFrameFormat" BO_ 774 14; +BA_ "FrameGatewayId" BO_ 811 811; +BA_ "FrameGatewayNetwork" BO_ 811 "HS3_CAN"; +BA_ "FrameRouting" BO_ 811 ""; +BA_ "VFrameFormat" BO_ 811 14; +BA_ "GenMsgSendType" BO_ 850 0; +BA_ "GenMsgCycleTime" BO_ 850 150; +BA_ "VFrameFormat" BO_ 850 14; +BA_ "GenMsgCycleTime" BO_ 563 1000; +BA_ "GenMsgSendType" BO_ 563 5; +BA_ "VFrameFormat" BO_ 563 14; +BA_ "GenMsgILSupport" BO_ 1833 0; +BA_ "DiagResponse" BO_ 1833 1; +BA_ "GenMsgSendType" BO_ 1833 1; +BA_ "GenMsgDelayTime" BO_ 1833 0; +BA_ "NetworkInitialization" BO_ 1833 0; +BA_ "VFrameFormat" BO_ 1833 14; +BA_ "FrameRouting" BO_ 570 ""; +BA_ "GenMsgSendType" BO_ 570 0; +BA_ "GenMsgCycleTime" BO_ 570 20; +BA_ "GenMsgDelayTime" BO_ 570 10; +BA_ "VFrameFormat" BO_ 570 14; +BA_ "FrameRouting" BO_ 837 ""; +BA_ "GenMsgSendType" BO_ 837 5; +BA_ "GenMsgCycleTime" BO_ 837 1000; +BA_ "VFrameFormat" BO_ 837 14; +BA_ "FrameRouting" BO_ 885 ""; +BA_ "GenMsgSendType" BO_ 885 0; +BA_ "GenMsgCycleTime" BO_ 885 200; +BA_ "VFrameFormat" BO_ 885 14; +BA_ "FrameRouting" BO_ 1150 ""; +BA_ "FrameGatewayNetwork" BO_ 1150 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 1150 1118; +BA_ "VFrameFormat" BO_ 1150 14; +BA_ "FrameRouting" BO_ 542 ""; +BA_ "FrameGatewayNetwork" BO_ 542 "HS4_CAN"; +BA_ "FrameGatewayId" BO_ 542 542; +BA_ "VFrameFormat" BO_ 542 14; +BA_ "FrameRouting" BO_ 2612224016 ""; +BA_ "TpTxIndex" BO_ 2612224016 464535768; +BA_ "GenMsgSendType" BO_ 2612224016 1; +BA_ "GenMsgCycleTime" BO_ 2612224016 0; +BA_ "GenMsgDelayTime" BO_ 2612224016 0; +BA_ "NetworkInitialization" BO_ 2612224016 0; +BA_ "OvtpPushApplication" BO_ 2612224016 1; +BA_ "VFrameFormat" BO_ 2612224016 15; +BA_ "FrameRouting" BO_ 810 ""; +BA_ "GenMsgCycleTime" BO_ 810 1000; +BA_ "GenMsgSendType" BO_ 810 5; +BA_ "VFrameFormat" BO_ 810 14; +BA_ "FrameRouting" BO_ 550 ""; +BA_ "GenMsgCycleTime" BO_ 550 1000; +BA_ "GenMsgSendType" BO_ 550 5; +BA_ "VFrameFormat" BO_ 550 14; +BA_ "FrameRouting" BO_ 639 ""; +BA_ "GenMsgCycleTime" BO_ 639 1000; +BA_ "GenMsgSendType" BO_ 639 5; +BA_ "VFrameFormat" BO_ 639 14; +BA_ "FrameRouting" BO_ 530 ""; +BA_ "GenMsgCycleTime" BO_ 530 1000; +BA_ "GenMsgSendType" BO_ 530 5; +BA_ "VFrameFormat" BO_ 530 14; +BA_ "FrameRouting" BO_ 1142 ""; +BA_ "GenMsgSendType" BO_ 1142 0; +BA_ "GenMsgCycleTime" BO_ 1142 500; +BA_ "VFrameFormat" BO_ 1142 14; +BA_ "FrameRouting" BO_ 817 ""; +BA_ "FrameGatewayId" BO_ 817 817; +BA_ "FrameGatewayNetwork" BO_ 817 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 817 14; +BA_ "FrameRouting" BO_ 879 ""; +BA_ "FrameGatewayNetwork" BO_ 879 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 879 879; +BA_ "VFrameFormat" BO_ 879 14; +BA_ "FrameRouting" BO_ 878 ""; +BA_ "GenMsgSendType" BO_ 878 5; +BA_ "GenMsgCycleTime" BO_ 878 1000; +BA_ "VFrameFormat" BO_ 878 14; +BA_ "FrameRouting" BO_ 395 ""; +BA_ "FrameGatewayNetwork" BO_ 395 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 395 395; +BA_ "VFrameFormat" BO_ 395 14; +BA_ "TpTxIndex" BO_ 2611055832 463572184; +BA_ "FrameRouting" BO_ 2611055832 ""; +BA_ "NetworkInitialization" BO_ 2611055832 0; +BA_ "GenMsgDelayTime" BO_ 2611055832 0; +BA_ "GenMsgSendType" BO_ 2611055832 1; +BA_ "VFrameFormat" BO_ 2611055832 15; +BA_ "TpTxIndex" BO_ 2611054808 463571160; +BA_ "FrameRouting" BO_ 2611054808 ""; +BA_ "NetworkInitialization" BO_ 2611054808 0; +BA_ "GenMsgDelayTime" BO_ 2611054808 0; +BA_ "GenMsgSendType" BO_ 2611054808 1; +BA_ "VFrameFormat" BO_ 2611054808 15; +BA_ "TpTxIndex" BO_ 2611026136 463542488; +BA_ "FrameRouting" BO_ 2611026136 ""; +BA_ "NetworkInitialization" BO_ 2611026136 0; +BA_ "GenMsgDelayTime" BO_ 2611026136 0; +BA_ "GenMsgSendType" BO_ 2611026136 1; +BA_ "VFrameFormat" BO_ 2611026136 15; +BA_ "TpTxIndex" BO_ 2611025112 463541464; +BA_ "FrameRouting" BO_ 2611025112 ""; +BA_ "NetworkInitialization" BO_ 2611025112 0; +BA_ "GenMsgDelayTime" BO_ 2611025112 0; +BA_ "GenMsgSendType" BO_ 2611025112 1; +BA_ "VFrameFormat" BO_ 2611025112 15; +BA_ "TpTxIndex" BO_ 2610975960 463492312; +BA_ "FrameRouting" BO_ 2610975960 ""; +BA_ "NetworkInitialization" BO_ 2610975960 0; +BA_ "GenMsgDelayTime" BO_ 2610975960 0; +BA_ "GenMsgSendType" BO_ 2610975960 1; +BA_ "VFrameFormat" BO_ 2610975960 15; +BA_ "FrameRouting" BO_ 2610007256 ""; +BA_ "NetworkInitialization" BO_ 2610007256 0; +BA_ "GenMsgDelayTime" BO_ 2610007256 0; +BA_ "GenMsgSendType" BO_ 2610007256 1; +BA_ "TpTxIndex" BO_ 2610007256 462523608; +BA_ "VFrameFormat" BO_ 2610007256 15; +BA_ "FrameRouting" BO_ 2610006232 ""; +BA_ "NetworkInitialization" BO_ 2610006232 0; +BA_ "GenMsgDelayTime" BO_ 2610006232 0; +BA_ "GenMsgSendType" BO_ 2610006232 1; +BA_ "TpTxIndex" BO_ 2610006232 462522584; +BA_ "VFrameFormat" BO_ 2610006232 15; +BA_ "FrameRouting" BO_ 2609977560 ""; +BA_ "NetworkInitialization" BO_ 2609977560 0; +BA_ "GenMsgDelayTime" BO_ 2609977560 0; +BA_ "GenMsgSendType" BO_ 2609977560 1; +BA_ "TpTxIndex" BO_ 2609977560 462493912; +BA_ "VFrameFormat" BO_ 2609977560 15; +BA_ "FrameRouting" BO_ 2609976536 ""; +BA_ "NetworkInitialization" BO_ 2609976536 0; +BA_ "GenMsgDelayTime" BO_ 2609976536 0; +BA_ "GenMsgSendType" BO_ 2609976536 1; +BA_ "TpTxIndex" BO_ 2609976536 462492888; +BA_ "VFrameFormat" BO_ 2609976536 15; +BA_ "FrameRouting" BO_ 2609927384 ""; +BA_ "NetworkInitialization" BO_ 2609927384 0; +BA_ "GenMsgDelayTime" BO_ 2609927384 0; +BA_ "GenMsgSendType" BO_ 2609927384 1; +BA_ "TpTxIndex" BO_ 2609927384 462443736; +BA_ "VFrameFormat" BO_ 2609927384 15; +BA_ "TpTxIndex" BO_ 2611175523 463572184; +BA_ "FrameRouting" BO_ 2611175523 ""; +BA_ "NetworkInitialization" BO_ 2611175523 0; +BA_ "GenMsgDelayTime" BO_ 2611175523 0; +BA_ "GenMsgSendType" BO_ 2611175523 1; +BA_ "VFrameFormat" BO_ 2611175523 15; +BA_ "TpTxIndex" BO_ 2612224099 464620760; +BA_ "OvtpPushApplication" BO_ 2612224099 1; +BA_ "FrameRouting" BO_ 2612224099 ""; +BA_ "NetworkInitialization" BO_ 2612224099 0; +BA_ "GenMsgDelayTime" BO_ 2612224099 0; +BA_ "GenMsgSendType" BO_ 2612224099 1; +BA_ "VFrameFormat" BO_ 2612224099 15; +BA_ "TpTxIndex" BO_ 2611175522 463571160; +BA_ "FrameRouting" BO_ 2611175522 ""; +BA_ "NetworkInitialization" BO_ 2611175522 0; +BA_ "GenMsgDelayTime" BO_ 2611175522 0; +BA_ "GenMsgSendType" BO_ 2611175522 1; +BA_ "VFrameFormat" BO_ 2611175522 15; +BA_ "TpTxIndex" BO_ 2612224098 464619736; +BA_ "OvtpPushApplication" BO_ 2612224098 1; +BA_ "FrameRouting" BO_ 2612224098 ""; +BA_ "NetworkInitialization" BO_ 2612224098 0; +BA_ "GenMsgDelayTime" BO_ 2612224098 0; +BA_ "GenMsgSendType" BO_ 2612224098 1; +BA_ "VFrameFormat" BO_ 2612224098 15; +BA_ "TpTxIndex" BO_ 2611175494 463542488; +BA_ "FrameRouting" BO_ 2611175494 ""; +BA_ "NetworkInitialization" BO_ 2611175494 0; +BA_ "GenMsgDelayTime" BO_ 2611175494 0; +BA_ "GenMsgSendType" BO_ 2611175494 1; +BA_ "VFrameFormat" BO_ 2611175494 15; +BA_ "TpTxIndex" BO_ 2612224070 464591064; +BA_ "OvtpPushApplication" BO_ 2612224070 1; +BA_ "FrameRouting" BO_ 2612224070 ""; +BA_ "NetworkInitialization" BO_ 2612224070 0; +BA_ "GenMsgDelayTime" BO_ 2612224070 0; +BA_ "GenMsgSendType" BO_ 2612224070 1; +BA_ "VFrameFormat" BO_ 2612224070 15; +BA_ "TpTxIndex" BO_ 2611175493 463541464; +BA_ "FrameRouting" BO_ 2611175493 ""; +BA_ "NetworkInitialization" BO_ 2611175493 0; +BA_ "GenMsgDelayTime" BO_ 2611175493 0; +BA_ "GenMsgSendType" BO_ 2611175493 1; +BA_ "VFrameFormat" BO_ 2611175493 15; +BA_ "TpTxIndex" BO_ 2612224069 464590040; +BA_ "OvtpPushApplication" BO_ 2612224069 1; +BA_ "FrameRouting" BO_ 2612224069 ""; +BA_ "NetworkInitialization" BO_ 2612224069 0; +BA_ "GenMsgDelayTime" BO_ 2612224069 0; +BA_ "GenMsgSendType" BO_ 2612224069 1; +BA_ "VFrameFormat" BO_ 2612224069 15; +BA_ "TpTxIndex" BO_ 2611175445 463492312; +BA_ "FrameRouting" BO_ 2611175445 ""; +BA_ "NetworkInitialization" BO_ 2611175445 0; +BA_ "GenMsgDelayTime" BO_ 2611175445 0; +BA_ "GenMsgSendType" BO_ 2611175445 1; +BA_ "VFrameFormat" BO_ 2611175445 15; +BA_ "TpTxIndex" BO_ 2612224021 464540888; +BA_ "OvtpPushApplication" BO_ 2612224021 1; +BA_ "FrameRouting" BO_ 2612224021 ""; +BA_ "NetworkInitialization" BO_ 2612224021 0; +BA_ "GenMsgDelayTime" BO_ 2612224021 0; +BA_ "GenMsgSendType" BO_ 2612224021 1; +BA_ "VFrameFormat" BO_ 2612224021 15; +BA_ "TpTxIndex" BO_ 2610126947 462523608; +BA_ "FrameRouting" BO_ 2610126947 ""; +BA_ "NetworkInitialization" BO_ 2610126947 0; +BA_ "GenMsgDelayTime" BO_ 2610126947 0; +BA_ "GenMsgSendType" BO_ 2610126947 1; +BA_ "VFrameFormat" BO_ 2610126947 15; +BA_ "TpTxIndex" BO_ 2610126946 462522584; +BA_ "FrameRouting" BO_ 2610126946 ""; +BA_ "NetworkInitialization" BO_ 2610126946 0; +BA_ "GenMsgDelayTime" BO_ 2610126946 0; +BA_ "GenMsgSendType" BO_ 2610126946 1; +BA_ "VFrameFormat" BO_ 2610126946 15; +BA_ "TpTxIndex" BO_ 2610126918 462493912; +BA_ "FrameRouting" BO_ 2610126918 ""; +BA_ "NetworkInitialization" BO_ 2610126918 0; +BA_ "GenMsgDelayTime" BO_ 2610126918 0; +BA_ "GenMsgSendType" BO_ 2610126918 1; +BA_ "VFrameFormat" BO_ 2610126918 15; +BA_ "TpTxIndex" BO_ 2610126917 462492888; +BA_ "FrameRouting" BO_ 2610126917 ""; +BA_ "NetworkInitialization" BO_ 2610126917 0; +BA_ "GenMsgDelayTime" BO_ 2610126917 0; +BA_ "GenMsgSendType" BO_ 2610126917 1; +BA_ "VFrameFormat" BO_ 2610126917 15; +BA_ "FrameRouting" BO_ 2610126869 ""; +BA_ "NetworkInitialization" BO_ 2610126869 0; +BA_ "GenMsgDelayTime" BO_ 2610126869 0; +BA_ "GenMsgSendType" BO_ 2610126869 1; +BA_ "TpTxIndex" BO_ 2610126869 462443736; +BA_ "VFrameFormat" BO_ 2610126869 15; +BA_ "FrameRouting" BO_ 984 ""; +BA_ "GenMsgCycleTime" BO_ 984 1000; +BA_ "GenMsgSendType" BO_ 984 5; +BA_ "VFrameFormat" BO_ 984 14; +BA_ "FrameRouting" BO_ 985 ""; +BA_ "GenMsgSendType" BO_ 985 5; +BA_ "GenMsgCycleTime" BO_ 985 1000; +BA_ "VFrameFormat" BO_ 985 14; +BA_ "FrameRouting" BO_ 992 ""; +BA_ "FrameGatewayNetwork" BO_ 992 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 992 992; +BA_ "VFrameFormat" BO_ 992 14; +BA_ "OvtpPushApplication" BO_ 2612019416 1; +BA_ "FrameRouting" BO_ 2612019416 ""; +BA_ "TpTxIndex" BO_ 2612019416 464535768; +BA_ "NetworkInitialization" BO_ 2612019416 0; +BA_ "GenMsgDelayTime" BO_ 2612019416 0; +BA_ "GenMsgSendType" BO_ 2612019416 1; +BA_ "VFrameFormat" BO_ 2612019416 15; +BA_ "FrameRouting" BO_ 943 ""; +BA_ "GenMsgSendType" BO_ 943 0; +BA_ "GenMsgCycleTime" BO_ 943 20; +BA_ "GenMsgDelayTime" BO_ 943 10; +BA_ "VFrameFormat" BO_ 943 14; +BA_ "FrameRouting" BO_ 515 ""; +BA_ "GenMsgSendType" BO_ 515 5; +BA_ "GenMsgCycleTime" BO_ 515 100; +BA_ "VFrameFormat" BO_ 515 14; +BA_ "FrameRouting" BO_ 1111 ""; +BA_ "FrameGatewayId" BO_ 1111 1111; +BA_ "FrameGatewayNetwork" BO_ 1111 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 1111 14; +BA_ "FrameRouting" BO_ 1106 ""; +BA_ "FrameGatewayId" BO_ 1106 1106; +BA_ "FrameGatewayNetwork" BO_ 1106 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 1106 14; +BA_ "FrameRouting" BO_ 982 ""; +BA_ "GenMsgSendType" BO_ 982 0; +BA_ "GenMsgCycleTime" BO_ 982 50; +BA_ "VFrameFormat" BO_ 982 14; +BA_ "FrameRouting" BO_ 1985 ""; +BA_ "NetworkInitialization" BO_ 1985 0; +BA_ "GenMsgDelayTime" BO_ 1985 0; +BA_ "GenMsgSendType" BO_ 1985 1; +BA_ "DiagRequest" BO_ 1985 1; +BA_ "GenMsgILSupport" BO_ 1985 0; +BA_ "VFrameFormat" BO_ 1985 14; +BA_ "FrameRouting" BO_ 1993 ""; +BA_ "NetworkInitialization" BO_ 1993 0; +BA_ "GenMsgDelayTime" BO_ 1993 0; +BA_ "GenMsgSendType" BO_ 1993 1; +BA_ "DiagResponse" BO_ 1993 1; +BA_ "GenMsgILSupport" BO_ 1993 0; +BA_ "VFrameFormat" BO_ 1993 14; +BA_ "FrameRouting" BO_ 1104 ""; +BA_ "GenMsgCycleTime" BO_ 1104 200; +BA_ "GenMsgSendType" BO_ 1104 0; +BA_ "VFrameFormat" BO_ 1104 14; +BA_ "FrameRouting" BO_ 1503 ""; +BA_ "NetworkInitialization" BO_ 1503 0; +BA_ "GenMsgCycleTime" BO_ 1503 1000; +BA_ "GenMsgSendType" BO_ 1503 0; +BA_ "NmAsrMessage" BO_ 1503 1; +BA_ "GenMsgILSupport" BO_ 1503 0; +BA_ "VFrameFormat" BO_ 1503 14; +BA_ "TpTxIndex" BO_ 2610995416 463511768; +BA_ "FrameRouting" BO_ 2610995416 ""; +BA_ "NetworkInitialization" BO_ 2610995416 0; +BA_ "GenMsgDelayTime" BO_ 2610995416 0; +BA_ "GenMsgSendType" BO_ 2610995416 1; +BA_ "VFrameFormat" BO_ 2610995416 15; +BA_ "TpTxIndex" BO_ 2612043992 464560344; +BA_ "OvtpPushApplication" BO_ 2612043992 1; +BA_ "FrameRouting" BO_ 2612043992 ""; +BA_ "NetworkInitialization" BO_ 2612043992 0; +BA_ "GenMsgDelayTime" BO_ 2612043992 0; +BA_ "GenMsgSendType" BO_ 2612043992 1; +BA_ "VFrameFormat" BO_ 2612043992 15; +BA_ "FrameRouting" BO_ 2609946840 ""; +BA_ "NetworkInitialization" BO_ 2609946840 0; +BA_ "GenMsgDelayTime" BO_ 2609946840 0; +BA_ "GenMsgSendType" BO_ 2609946840 1; +BA_ "TpTxIndex" BO_ 2609946840 462463192; +BA_ "VFrameFormat" BO_ 2609946840 15; +BA_ "TpTxIndex" BO_ 2611175464 463511768; +BA_ "FrameRouting" BO_ 2611175464 ""; +BA_ "NetworkInitialization" BO_ 2611175464 0; +BA_ "GenMsgDelayTime" BO_ 2611175464 0; +BA_ "GenMsgSendType" BO_ 2611175464 1; +BA_ "VFrameFormat" BO_ 2611175464 15; +BA_ "TpTxIndex" BO_ 2612224040 464560344; +BA_ "OvtpPushApplication" BO_ 2612224040 1; +BA_ "FrameRouting" BO_ 2612224040 ""; +BA_ "NetworkInitialization" BO_ 2612224040 0; +BA_ "GenMsgDelayTime" BO_ 2612224040 0; +BA_ "GenMsgSendType" BO_ 2612224040 1; +BA_ "VFrameFormat" BO_ 2612224040 15; +BA_ "TpTxIndex" BO_ 2610126888 462463192; +BA_ "FrameRouting" BO_ 2610126888 ""; +BA_ "NetworkInitialization" BO_ 2610126888 0; +BA_ "GenMsgDelayTime" BO_ 2610126888 0; +BA_ "GenMsgSendType" BO_ 2610126888 1; +BA_ "VFrameFormat" BO_ 2610126888 15; +BA_ "TpTxIndex" BO_ 2610988248 463504600; +BA_ "FrameRouting" BO_ 2610988248 ""; +BA_ "NetworkInitialization" BO_ 2610988248 0; +BA_ "GenMsgDelayTime" BO_ 2610988248 0; +BA_ "GenMsgSendType" BO_ 2610988248 1; +BA_ "VFrameFormat" BO_ 2610988248 15; +BA_ "FrameRouting" BO_ 2609939672 ""; +BA_ "NetworkInitialization" BO_ 2609939672 0; +BA_ "GenMsgDelayTime" BO_ 2609939672 0; +BA_ "GenMsgSendType" BO_ 2609939672 1; +BA_ "TpTxIndex" BO_ 2609939672 462456024; +BA_ "VFrameFormat" BO_ 2609939672 15; +BA_ "FrameRouting" BO_ 1114 ""; +BA_ "FrameGatewayNetwork" BO_ 1114 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 1114 1114; +BA_ "VFrameFormat" BO_ 1114 14; +BA_ "FrameRouting" BO_ 1116 ""; +BA_ "FrameGatewayNetwork" BO_ 1116 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 1116 1116; +BA_ "VFrameFormat" BO_ 1116 14; +BA_ "TpTxIndex" BO_ 2611175457 463504600; +BA_ "FrameRouting" BO_ 2611175457 ""; +BA_ "NetworkInitialization" BO_ 2611175457 0; +BA_ "GenMsgDelayTime" BO_ 2611175457 0; +BA_ "GenMsgSendType" BO_ 2611175457 1; +BA_ "VFrameFormat" BO_ 2611175457 15; +BA_ "TpTxIndex" BO_ 2612224033 464553176; +BA_ "OvtpPushApplication" BO_ 2612224033 1; +BA_ "FrameRouting" BO_ 2612224033 ""; +BA_ "NetworkInitialization" BO_ 2612224033 0; +BA_ "GenMsgDelayTime" BO_ 2612224033 0; +BA_ "GenMsgSendType" BO_ 2612224033 1; +BA_ "VFrameFormat" BO_ 2612224033 15; +BA_ "TpTxIndex" BO_ 2610126881 462456024; +BA_ "FrameRouting" BO_ 2610126881 ""; +BA_ "NetworkInitialization" BO_ 2610126881 0; +BA_ "GenMsgDelayTime" BO_ 2610126881 0; +BA_ "GenMsgSendType" BO_ 2610126881 1; +BA_ "VFrameFormat" BO_ 2610126881 15; +BA_ "FrameRouting" BO_ 1085 ""; +BA_ "GenMsgSendType" BO_ 1085 0; +BA_ "GenMsgCycleTime" BO_ 1085 50; +BA_ "VFrameFormat" BO_ 1085 14; +BA_ "FrameRouting" BO_ 981 ""; +BA_ "GenMsgSendType" BO_ 981 0; +BA_ "GenMsgCycleTime" BO_ 981 30; +BA_ "VFrameFormat" BO_ 981 14; +BA_ "FrameRouting" BO_ 791 ""; +BA_ "FrameGatewayId" BO_ 791 791; +BA_ "FrameGatewayNetwork" BO_ 791 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 791 14; +BA_ "TpTxIndex" BO_ 2610970840 463487192; +BA_ "FrameRouting" BO_ 2610970840 ""; +BA_ "NetworkInitialization" BO_ 2610970840 0; +BA_ "GenMsgDelayTime" BO_ 2610970840 0; +BA_ "GenMsgSendType" BO_ 2610970840 1; +BA_ "VFrameFormat" BO_ 2610970840 15; +BA_ "TpTxIndex" BO_ 2609922264 462438616; +BA_ "FrameRouting" BO_ 2609922264 ""; +BA_ "NetworkInitialization" BO_ 2609922264 0; +BA_ "GenMsgDelayTime" BO_ 2609922264 0; +BA_ "GenMsgSendType" BO_ 2609922264 1; +BA_ "VFrameFormat" BO_ 2609922264 15; +BA_ "FrameRouting" BO_ 868 ""; +BA_ "FrameGatewayNetwork" BO_ 868 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 868 868; +BA_ "VFrameFormat" BO_ 868 14; +BA_ "FrameRouting" BO_ 867 ""; +BA_ "FrameGatewayNetwork" BO_ 867 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 867 867; +BA_ "VFrameFormat" BO_ 867 14; +BA_ "FrameRouting" BO_ 866 ""; +BA_ "FrameGatewayNetwork" BO_ 866 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 866 866; +BA_ "VFrameFormat" BO_ 866 14; +BA_ "FrameRouting" BO_ 865 ""; +BA_ "FrameGatewayNetwork" BO_ 865 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 865 865; +BA_ "VFrameFormat" BO_ 865 14; +BA_ "TpTxIndex" BO_ 2611175440 463487192; +BA_ "FrameRouting" BO_ 2611175440 ""; +BA_ "NetworkInitialization" BO_ 2611175440 0; +BA_ "GenMsgDelayTime" BO_ 2611175440 0; +BA_ "GenMsgCycleTime" BO_ 2611175440 0; +BA_ "GenMsgSendType" BO_ 2611175440 1; +BA_ "VFrameFormat" BO_ 2611175440 15; +BA_ "TpTxIndex" BO_ 2610126864 462438616; +BA_ "FrameRouting" BO_ 2610126864 ""; +BA_ "NetworkInitialization" BO_ 2610126864 0; +BA_ "GenMsgDelayTime" BO_ 2610126864 0; +BA_ "GenMsgSendType" BO_ 2610126864 1; +BA_ "VFrameFormat" BO_ 2610126864 15; +BA_ "TpTxIndex" BO_ 2611175441 463488216; +BA_ "FrameRouting" BO_ 2611175441 ""; +BA_ "NetworkInitialization" BO_ 2611175441 0; +BA_ "GenMsgDelayTime" BO_ 2611175441 0; +BA_ "GenMsgSendType" BO_ 2611175441 1; +BA_ "VFrameFormat" BO_ 2611175441 15; +BA_ "TpTxIndex" BO_ 2612224017 463488216; +BA_ "OvtpPushApplication" BO_ 2612224017 1; +BA_ "FrameRouting" BO_ 2612224017 ""; +BA_ "NetworkInitialization" BO_ 2612224017 0; +BA_ "GenMsgDelayTime" BO_ 2612224017 0; +BA_ "GenMsgSendType" BO_ 2612224017 1; +BA_ "VFrameFormat" BO_ 2612224017 15; +BA_ "FrameRouting" BO_ 2610126865 ""; +BA_ "NetworkInitialization" BO_ 2610126865 0; +BA_ "GenMsgDelayTime" BO_ 2610126865 0; +BA_ "GenMsgSendType" BO_ 2610126865 1; +BA_ "TpTxIndex" BO_ 2610126865 462439640; +BA_ "VFrameFormat" BO_ 2610126865 15; +BA_ "FrameRouting" BO_ 1679 ""; +BA_ "GenMsgCycleTime" BO_ 1679 0; +BA_ "GenMsgSendType" BO_ 1679 1; +BA_ "TpApplType" BO_ 1679 "DiagUUDTResponse"; +BA_ "GenMsgILSupport" BO_ 1679 0; +BA_ "VFrameFormat" BO_ 1679 14; +BA_ "FrameRouting" BO_ 1678 ""; +BA_ "GenMsgCycleTime" BO_ 1678 0; +BA_ "GenMsgSendType" BO_ 1678 1; +BA_ "TpApplType" BO_ 1678 "DiagUUDTResponse"; +BA_ "GenMsgILSupport" BO_ 1678 0; +BA_ "VFrameFormat" BO_ 1678 14; +BA_ "FrameRouting" BO_ 1677 ""; +BA_ "GenMsgCycleTime" BO_ 1677 0; +BA_ "GenMsgSendType" BO_ 1677 1; +BA_ "TpApplType" BO_ 1677 "DiagUUDTResponse"; +BA_ "GenMsgILSupport" BO_ 1677 0; +BA_ "VFrameFormat" BO_ 1677 14; +BA_ "FrameRouting" BO_ 1676 ""; +BA_ "GenMsgCycleTime" BO_ 1676 0; +BA_ "GenMsgSendType" BO_ 1676 1; +BA_ "TpApplType" BO_ 1676 "DiagUUDTResponse"; +BA_ "GenMsgILSupport" BO_ 1676 0; +BA_ "VFrameFormat" BO_ 1676 14; +BA_ "FrameRouting" BO_ 1445 ""; +BA_ "GenMsgILSupport" BO_ 1445 0; +BA_ "NmAsrMessage" BO_ 1445 1; +BA_ "GenMsgSendType" BO_ 1445 0; +BA_ "GenMsgCycleTime" BO_ 1445 1000; +BA_ "NetworkInitialization" BO_ 1445 0; +BA_ "VFrameFormat" BO_ 1445 14; +BA_ "FrameRouting" BO_ 1144 ""; +BA_ "GenMsgSendType" BO_ 1144 5; +BA_ "GenMsgCycleTime" BO_ 1144 1000; +BA_ "VFrameFormat" BO_ 1144 14; +BA_ "FrameRouting" BO_ 1141 ""; +BA_ "GenMsgSendType" BO_ 1141 0; +BA_ "GenMsgCycleTime" BO_ 1141 500; +BA_ "VFrameFormat" BO_ 1141 14; +BA_ "FrameRouting" BO_ 1140 ""; +BA_ "GenMsgSendType" BO_ 1140 0; +BA_ "GenMsgCycleTime" BO_ 1140 1000; +BA_ "VFrameFormat" BO_ 1140 14; +BA_ "FrameRouting" BO_ 1139 ""; +BA_ "GenMsgCycleTime" BO_ 1139 1500; +BA_ "GenMsgSendType" BO_ 1139 0; +BA_ "VFrameFormat" BO_ 1139 14; +BA_ "FrameRouting" BO_ 1138 ""; +BA_ "GenMsgCycleTime" BO_ 1138 1500; +BA_ "GenMsgSendType" BO_ 1138 0; +BA_ "VFrameFormat" BO_ 1138 14; +BA_ "FrameRouting" BO_ 1089 ""; +BA_ "GenMsgCycleTime" BO_ 1089 1000; +BA_ "GenMsgSendType" BO_ 1089 0; +BA_ "VFrameFormat" BO_ 1089 14; +BA_ "FrameRouting" BO_ 1088 ""; +BA_ "GenMsgCycleTime" BO_ 1088 1000; +BA_ "GenMsgSendType" BO_ 1088 0; +BA_ "VFrameFormat" BO_ 1088 14; +BA_ "FrameRouting" BO_ 1040 ""; +BA_ "GenMsgCycleTime" BO_ 1040 100; +BA_ "GenMsgSendType" BO_ 1040 0; +BA_ "VFrameFormat" BO_ 1040 14; +BA_ "FrameRouting" BO_ 1016 ""; +BA_ "GenMsgCycleTime" BO_ 1016 1000; +BA_ "GenMsgSendType" BO_ 1016 5; +BA_ "VFrameFormat" BO_ 1016 14; +BA_ "FrameRouting" BO_ 1013 ""; +BA_ "GenMsgCycleTime" BO_ 1013 1000; +BA_ "GenMsgSendType" BO_ 1013 5; +BA_ "VFrameFormat" BO_ 1013 14; +BA_ "FrameRouting" BO_ 1012 ""; +BA_ "GenMsgCycleTime" BO_ 1012 1000; +BA_ "GenMsgSendType" BO_ 1012 5; +BA_ "VFrameFormat" BO_ 1012 14; +BA_ "FrameRouting" BO_ 1011 ""; +BA_ "GenMsgCycleTime" BO_ 1011 1000; +BA_ "GenMsgSendType" BO_ 1011 5; +BA_ "VFrameFormat" BO_ 1011 14; +BA_ "FrameRouting" BO_ 871 ""; +BA_ "GenMsgCycleTime" BO_ 871 100; +BA_ "GenMsgSendType" BO_ 871 0; +BA_ "VFrameFormat" BO_ 871 14; +BA_ "FrameRouting" BO_ 786 ""; +BA_ "GenMsgCycleTime" BO_ 786 100; +BA_ "GenMsgSendType" BO_ 786 0; +BA_ "VFrameFormat" BO_ 786 14; +BA_ "FrameRouting" BO_ 72 ""; +BA_ "GenMsgDelayTime" BO_ 72 10; +BA_ "GenMsgCycleTime" BO_ 72 20; +BA_ "GenMsgSendType" BO_ 72 0; +BA_ "VFrameFormat" BO_ 72 14; +BA_ "FrameRouting" BO_ 912 ""; +BA_ "FrameGatewayNetwork" BO_ 912 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 912 912; +BA_ "VFrameFormat" BO_ 912 14; +BA_ "FrameRouting" BO_ 874 ""; +BA_ "FrameGatewayNetwork" BO_ 874 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 874 874; +BA_ "VFrameFormat" BO_ 874 14; +BA_ "FrameRouting" BO_ 651 ""; +BA_ "FrameGatewayNetwork" BO_ 651 "HS4_CAN"; +BA_ "FrameGatewayId" BO_ 651 651; +BA_ "VFrameFormat" BO_ 651 14; +BA_ "FrameRouting" BO_ 529 ""; +BA_ "FrameGatewayNetwork" BO_ 529 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 529 529; +BA_ "VFrameFormat" BO_ 529 14; +BA_ "FrameRouting" BO_ 66 ""; +BA_ "FrameGatewayNetwork" BO_ 66 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 66 66; +BA_ "DiagResponse" BO_ 66 0; +BA_ "VFrameFormat" BO_ 66 14; +BA_ "TpTxIndex" BO_ 2610971864 463488216; +BA_ "FrameRouting" BO_ 2610971864 ""; +BA_ "NetworkInitialization" BO_ 2610971864 0; +BA_ "GenMsgDelayTime" BO_ 2610971864 0; +BA_ "GenMsgSendType" BO_ 2610971864 1; +BA_ "VFrameFormat" BO_ 2610971864 15; +BA_ "TpTxIndex" BO_ 2612002008 464518360; +BA_ "FrameRouting" BO_ 2612002008 ""; +BA_ "NetworkInitialization" BO_ 2612002008 0; +BA_ "GenMsgDelayTime" BO_ 2612002008 0; +BA_ "GenMsgSendType" BO_ 2612002008 1; +BA_ "VFrameFormat" BO_ 2612002008 15; +BA_ "FrameRouting" BO_ 2609923288 ""; +BA_ "NetworkInitialization" BO_ 2609923288 0; +BA_ "GenMsgDelayTime" BO_ 2609923288 0; +BA_ "GenMsgSendType" BO_ 2609923288 1; +BA_ "TpTxIndex" BO_ 2609923288 462439640; +BA_ "VFrameFormat" BO_ 2609923288 15; +BA_ "TpTxIndex" BO_ 2610953432 463469784; +BA_ "FrameRouting" BO_ 2610953432 ""; +BA_ "NetworkInitialization" BO_ 2610953432 0; +BA_ "GenMsgDelayTime" BO_ 2610953432 0; +BA_ "GenMsgSendType" BO_ 2610953432 1; +BA_ "VFrameFormat" BO_ 2610953432 15; +BA_ "FrameRouting" BO_ 2022 ""; +BA_ "GenMsgILSupport" BO_ 2022 0; +BA_ "DiagRequest" BO_ 2022 1; +BA_ "GenMsgSendType" BO_ 2022 1; +BA_ "GenMsgDelayTime" BO_ 2022 0; +BA_ "VFrameFormat" BO_ 2022 14; +BA_ "FrameRouting" BO_ 1124 ""; +BA_ "FrameGatewayId" BO_ 1124 1124; +BA_ "FrameGatewayNetwork" BO_ 1124 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1124 14; +BA_ "FrameRouting" BO_ 1119 ""; +BA_ "FrameGatewayId" BO_ 1119 1119; +BA_ "FrameGatewayNetwork" BO_ 1119 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1119 14; +BA_ "FrameRouting" BO_ 132 ""; +BA_ "FrameGatewayNetwork" BO_ 132 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 132 132; +BA_ "VFrameFormat" BO_ 132 14; +BA_ "FrameRouting" BO_ 1990 ""; +BA_ "NetworkInitialization" BO_ 1990 0; +BA_ "GenMsgDelayTime" BO_ 1990 0; +BA_ "GenMsgSendType" BO_ 1990 1; +BA_ "DiagRequest" BO_ 1990 1; +BA_ "GenMsgILSupport" BO_ 1990 0; +BA_ "VFrameFormat" BO_ 1990 14; +BA_ "FrameRouting" BO_ 1892 ""; +BA_ "NetworkInitialization" BO_ 1892 0; +BA_ "GenMsgDelayTime" BO_ 1892 0; +BA_ "GenMsgSendType" BO_ 1892 1; +BA_ "DiagRequest" BO_ 1892 1; +BA_ "GenMsgILSupport" BO_ 1892 0; +BA_ "VFrameFormat" BO_ 1892 14; +BA_ "FrameRouting" BO_ 1798 ""; +BA_ "NetworkInitialization" BO_ 1798 0; +BA_ "GenMsgDelayTime" BO_ 1798 0; +BA_ "GenMsgSendType" BO_ 1798 1; +BA_ "DiagRequest" BO_ 1798 1; +BA_ "GenMsgILSupport" BO_ 1798 0; +BA_ "VFrameFormat" BO_ 1798 14; +BA_ "FrameRouting" BO_ 1123 ""; +BA_ "FrameGatewayNetwork" BO_ 1123 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 1123 1123; +BA_ "VFrameFormat" BO_ 1123 14; +BA_ "FrameRouting" BO_ 1122 ""; +BA_ "FrameGatewayNetwork" BO_ 1122 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 1122 1122; +BA_ "VFrameFormat" BO_ 1122 14; +BA_ "FrameRouting" BO_ 1003 ""; +BA_ "FrameGatewayNetwork" BO_ 1003 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 1003 1003; +BA_ "VFrameFormat" BO_ 1003 14; +BA_ "FrameRouting" BO_ 994 ""; +BA_ "FrameGatewayNetwork" BO_ 994 "HS3_CAN"; +BA_ "FrameGatewayId" BO_ 994 994; +BA_ "VFrameFormat" BO_ 994 14; +BA_ "FrameRouting" BO_ 778 ""; +BA_ "FrameGatewayId" BO_ 778 778; +BA_ "FrameGatewayNetwork" BO_ 778 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 778 14; +BA_ "FrameRouting" BO_ 549 ""; +BA_ "FrameGatewayId" BO_ 549 549; +BA_ "FrameGatewayNetwork" BO_ 549 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 549 14; +BA_ "FrameRouting" BO_ 551 ""; +BA_ "FrameGatewayId" BO_ 551 551; +BA_ "FrameGatewayNetwork" BO_ 551 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 551 14; +BA_ "FrameRouting" BO_ 1010 ""; +BA_ "GenMsgCycleTime" BO_ 1010 50; +BA_ "GenMsgSendType" BO_ 1010 0; +BA_ "VFrameFormat" BO_ 1010 14; +BA_ "FrameRouting" BO_ 1070 ""; +BA_ "FrameGatewayNetwork" BO_ 1070 "HS1_CAN"; +BA_ "FrameGatewayId" BO_ 1070 1070; +BA_ "VFrameFormat" BO_ 1070 14; +BA_ "FrameRouting" BO_ 1186 ""; +BA_ "GenMsgSendType" BO_ 1186 0; +BA_ "GenMsgCycleTime" BO_ 1186 100; +BA_ "VFrameFormat" BO_ 1186 14; +BA_ "FrameRouting" BO_ 611 ""; +BA_ "GenMsgSendType" BO_ 611 0; +BA_ "GenMsgCycleTime" BO_ 611 100; +BA_ "VFrameFormat" BO_ 611 14; +BA_ "FrameRouting" BO_ 1461 ""; +BA_ "GenMsgILSupport" BO_ 1461 0; +BA_ "NmAsrMessage" BO_ 1461 1; +BA_ "GenMsgSendType" BO_ 1461 0; +BA_ "GenMsgCycleTime" BO_ 1461 1000; +BA_ "NetworkInitialization" BO_ 1461 0; +BA_ "VFrameFormat" BO_ 1461 14; +BA_ "FrameRouting" BO_ 1047 ""; +BA_ "GenMsgSendType" BO_ 1047 5; +BA_ "GenMsgCycleTime" BO_ 1047 1000; +BA_ "VFrameFormat" BO_ 1047 14; +BA_ "FrameRouting" BO_ 972 ""; +BA_ "GenMsgSendType" BO_ 972 0; +BA_ "GenMsgCycleTime" BO_ 972 30; +BA_ "GenMsgDelayTime" BO_ 972 10; +BA_ "VFrameFormat" BO_ 972 14; +BA_ "FrameRouting" BO_ 130 ""; +BA_ "GenMsgSendType" BO_ 130 0; +BA_ "GenMsgCycleTime" BO_ 130 20; +BA_ "GenMsgDelayTime" BO_ 130 10; +BA_ "VFrameFormat" BO_ 130 14; +BA_ "FrameRouting" BO_ 126 ""; +BA_ "GenMsgSendType" BO_ 126 0; +BA_ "GenMsgCycleTime" BO_ 126 10; +BA_ "GenMsgDelayTime" BO_ 126 0; +BA_ "VFrameFormat" BO_ 126 14; +BA_ "FrameRouting" BO_ 133 ""; +BA_ "GenMsgSendType" BO_ 133 0; +BA_ "GenMsgCycleTime" BO_ 133 10; +BA_ "GenMsgDelayTime" BO_ 133 0; +BA_ "VFrameFormat" BO_ 133 14; +BA_ "FrameRouting" BO_ 1430 ""; +BA_ "GenMsgILSupport" BO_ 1430 0; +BA_ "NmAsrMessage" BO_ 1430 1; +BA_ "GenMsgSendType" BO_ 1430 0; +BA_ "GenMsgCycleTime" BO_ 1430 1000; +BA_ "NetworkInitialization" BO_ 1430 0; +BA_ "VFrameFormat" BO_ 1430 14; +BA_ "FrameRouting" BO_ 1200 ""; +BA_ "GenMsgSendType" BO_ 1200 0; +BA_ "GenMsgCycleTime" BO_ 1200 20; +BA_ "GenMsgDelayTime" BO_ 1200 10; +BA_ "VFrameFormat" BO_ 1200 14; +BA_ "FrameRouting" BO_ 1102 ""; +BA_ "GenMsgSendType" BO_ 1102 5; +BA_ "GenMsgCycleTime" BO_ 1102 100000; +BA_ "GenMsgStartDelayTime" BO_ 1102 1130; +BA_ "VFrameFormat" BO_ 1102 14; +BA_ "FrameRouting" BO_ 1056 ""; +BA_ "GenMsgSendType" BO_ 1056 5; +BA_ "GenMsgCycleTime" BO_ 1056 1000; +BA_ "VFrameFormat" BO_ 1056 14; +BA_ "FrameRouting" BO_ 1054 ""; +BA_ "GenMsgSendType" BO_ 1054 5; +BA_ "GenMsgCycleTime" BO_ 1054 1000; +BA_ "VFrameFormat" BO_ 1054 14; +BA_ "FrameRouting" BO_ 1046 ""; +BA_ "GenMsgSendType" BO_ 1046 0; +BA_ "GenMsgCycleTime" BO_ 1046 100; +BA_ "VFrameFormat" BO_ 1046 14; +BA_ "FrameRouting" BO_ 1045 ""; +BA_ "GenMsgSendType" BO_ 1045 0; +BA_ "GenMsgCycleTime" BO_ 1045 20; +BA_ "GenMsgDelayTime" BO_ 1045 10; +BA_ "VFrameFormat" BO_ 1045 14; +BA_ "FrameRouting" BO_ 1044 ""; +BA_ "GenMsgSendType" BO_ 1044 0; +BA_ "GenMsgCycleTime" BO_ 1044 100; +BA_ "VFrameFormat" BO_ 1044 14; +BA_ "FrameRouting" BO_ 1042 ""; +BA_ "GenMsgSendType" BO_ 1042 0; +BA_ "GenMsgCycleTime" BO_ 1042 50; +BA_ "VFrameFormat" BO_ 1042 14; +BA_ "FrameRouting" BO_ 535 ""; +BA_ "GenMsgSendType" BO_ 535 0; +BA_ "GenMsgCycleTime" BO_ 535 10; +BA_ "GenMsgDelayTime" BO_ 535 0; +BA_ "VFrameFormat" BO_ 535 14; +BA_ "FrameRouting" BO_ 534 ""; +BA_ "GenMsgSendType" BO_ 534 0; +BA_ "GenMsgCycleTime" BO_ 534 20; +BA_ "GenMsgDelayTime" BO_ 534 10; +BA_ "VFrameFormat" BO_ 534 14; +BA_ "FrameRouting" BO_ 532 ""; +BA_ "GenMsgSendType" BO_ 532 0; +BA_ "GenMsgCycleTime" BO_ 532 20; +BA_ "GenMsgDelayTime" BO_ 532 10; +BA_ "VFrameFormat" BO_ 532 14; +BA_ "FrameRouting" BO_ 531 ""; +BA_ "GenMsgSendType" BO_ 531 0; +BA_ "GenMsgCycleTime" BO_ 531 20; +BA_ "GenMsgDelayTime" BO_ 531 10; +BA_ "VFrameFormat" BO_ 531 14; +BA_ "FrameRouting" BO_ 136 ""; +BA_ "GenMsgSendType" BO_ 136 0; +BA_ "GenMsgCycleTime" BO_ 136 10; +BA_ "GenMsgDelayTime" BO_ 136 0; +BA_ "VFrameFormat" BO_ 136 14; +BA_ "FrameRouting" BO_ 125 ""; +BA_ "GenMsgSendType" BO_ 125 0; +BA_ "GenMsgCycleTime" BO_ 125 20; +BA_ "GenMsgDelayTime" BO_ 125 10; +BA_ "VFrameFormat" BO_ 125 14; +BA_ "FrameRouting" BO_ 119 ""; +BA_ "GenMsgSendType" BO_ 119 0; +BA_ "GenMsgCycleTime" BO_ 119 20; +BA_ "GenMsgDelayTime" BO_ 119 10; +BA_ "VFrameFormat" BO_ 119 14; +BA_ "FrameRouting" BO_ 118 ""; +BA_ "GenMsgSendType" BO_ 118 5; +BA_ "GenMsgCycleTime" BO_ 118 500; +BA_ "VFrameFormat" BO_ 118 14; +BA_ "FrameRouting" BO_ 73 ""; +BA_ "GenMsgSendType" BO_ 73 0; +BA_ "GenMsgCycleTime" BO_ 73 20; +BA_ "GenMsgDelayTime" BO_ 73 10; +BA_ "VFrameFormat" BO_ 73 14; +BA_ "FrameRouting" BO_ 1034 ""; +BA_ "FrameGatewayId" BO_ 1034 1034; +BA_ "FrameGatewayNetwork" BO_ 1034 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1034 14; +BA_ "FrameRouting" BO_ 1440 ""; +BA_ "GenMsgILSupport" BO_ 1440 0; +BA_ "NmAsrMessage" BO_ 1440 1; +BA_ "GenMsgSendType" BO_ 1440 0; +BA_ "GenMsgCycleTime" BO_ 1440 1000; +BA_ "NetworkInitialization" BO_ 1440 0; +BA_ "VFrameFormat" BO_ 1440 14; +BA_ "FrameRouting" BO_ 561 ""; +BA_ "GenMsgSendType" BO_ 561 0; +BA_ "GenMsgCycleTime" BO_ 561 100; +BA_ "VFrameFormat" BO_ 561 14; +BA_ "FrameRouting" BO_ 330 ""; +BA_ "GenMsgSendType" BO_ 330 0; +BA_ "GenMsgCycleTime" BO_ 330 10; +BA_ "GenMsgDelayTime" BO_ 330 0; +BA_ "VFrameFormat" BO_ 330 14; +BA_ "FrameRouting" BO_ 1090 ""; +BA_ "GenMsgSendType" BO_ 1090 0; +BA_ "GenMsgCycleTime" BO_ 1090 1000; +BA_ "VFrameFormat" BO_ 1090 14; +BA_ "FrameRouting" BO_ 870 ""; +BA_ "GenMsgSendType" BO_ 870 0; +BA_ "GenMsgCycleTime" BO_ 870 100; +BA_ "VFrameFormat" BO_ 870 14; +BA_ "FrameRouting" BO_ 869 ""; +BA_ "GenMsgSendType" BO_ 869 0; +BA_ "GenMsgCycleTime" BO_ 869 100; +BA_ "VFrameFormat" BO_ 869 14; +BA_ "FrameRouting" BO_ 606 ""; +BA_ "GenMsgSendType" BO_ 606 5; +BA_ "GenMsgCycleTime" BO_ 606 1000; +BA_ "VFrameFormat" BO_ 606 14; +BA_ "FrameRouting" BO_ 374 ""; +BA_ "GenMsgSendType" BO_ 374 5; +BA_ "GenMsgCycleTime" BO_ 374 100; +BA_ "VFrameFormat" BO_ 374 14; +BA_ "FrameRouting" BO_ 603 ""; +BA_ "GenMsgSendType" BO_ 603 0; +BA_ "GenMsgCycleTime" BO_ 603 20; +BA_ "GenMsgDelayTime" BO_ 603 10; +BA_ "VFrameFormat" BO_ 603 14; +BA_ "FrameRouting" BO_ 602 ""; +BA_ "GenMsgSendType" BO_ 602 0; +BA_ "GenMsgCycleTime" BO_ 602 100; +BA_ "VFrameFormat" BO_ 602 14; +BA_ "FrameRouting" BO_ 1152 ""; +BA_ "GenMsgSendType" BO_ 1152 5; +BA_ "GenMsgCycleTime" BO_ 1152 1000; +BA_ "VFrameFormat" BO_ 1152 14; +BA_ "FrameRouting" BO_ 872 ""; +BA_ "GenMsgSendType" BO_ 872 0; +BA_ "GenMsgCycleTime" BO_ 872 100; +BA_ "VFrameFormat" BO_ 872 14; +BA_ "FrameRouting" BO_ 560 ""; +BA_ "GenMsgSendType" BO_ 560 0; +BA_ "GenMsgCycleTime" BO_ 560 20; +BA_ "GenMsgDelayTime" BO_ 560 10; +BA_ "VFrameFormat" BO_ 560 14; +BA_ "FrameRouting" BO_ 369 ""; +BA_ "GenMsgSendType" BO_ 369 0; +BA_ "GenMsgCycleTime" BO_ 369 30; +BA_ "GenMsgDelayTime" BO_ 369 10; +BA_ "VFrameFormat" BO_ 369 14; +BA_ "FrameRouting" BO_ 92 ""; +BA_ "GenMsgSendType" BO_ 92 5; +BA_ "GenMsgCycleTime" BO_ 92 100; +BA_ "VFrameFormat" BO_ 92 14; +BA_ "FrameRouting" BO_ 2030 ""; +BA_ "GenMsgILSupport" BO_ 2030 0; +BA_ "DiagResponse" BO_ 2030 1; +BA_ "GenMsgSendType" BO_ 2030 1; +BA_ "GenMsgDelayTime" BO_ 2030 0; +BA_ "NetworkInitialization" BO_ 2030 0; +BA_ "VFrameFormat" BO_ 2030 14; +BA_ "FrameRouting" BO_ 1087 ""; +BA_ "GenMsgSendType" BO_ 1087 0; +BA_ "GenMsgCycleTime" BO_ 1087 100; +BA_ "VFrameFormat" BO_ 1087 14; +BA_ "FrameRouting" BO_ 332 ""; +BA_ "GenMsgSendType" BO_ 332 0; +BA_ "GenMsgCycleTime" BO_ 332 200; +BA_ "VFrameFormat" BO_ 332 14; +BA_ "FrameRouting" BO_ 1896 ""; +BA_ "GenMsgILSupport" BO_ 1896 0; +BA_ "DiagResponse" BO_ 1896 1; +BA_ "GenMsgSendType" BO_ 1896 1; +BA_ "GenMsgDelayTime" BO_ 1896 0; +BA_ "NetworkInitialization" BO_ 1896 0; +BA_ "VFrameFormat" BO_ 1896 14; +BA_ "FrameRouting" BO_ 1889 ""; +BA_ "GenMsgILSupport" BO_ 1889 0; +BA_ "DiagRequest" BO_ 1889 1; +BA_ "GenMsgSendType" BO_ 1889 1; +BA_ "GenMsgDelayTime" BO_ 1889 0; +BA_ "NetworkInitialization" BO_ 1889 0; +BA_ "VFrameFormat" BO_ 1889 14; +BA_ "FrameRouting" BO_ 1888 ""; +BA_ "GenMsgILSupport" BO_ 1888 0; +BA_ "DiagRequest" BO_ 1888 1; +BA_ "GenMsgSendType" BO_ 1888 1; +BA_ "GenMsgDelayTime" BO_ 1888 0; +BA_ "NetworkInitialization" BO_ 1888 0; +BA_ "VFrameFormat" BO_ 1888 14; +BA_ "FrameRouting" BO_ 1848 ""; +BA_ "GenMsgILSupport" BO_ 1848 0; +BA_ "DiagResponse" BO_ 1848 1; +BA_ "GenMsgSendType" BO_ 1848 1; +BA_ "GenMsgDelayTime" BO_ 1848 0; +BA_ "NetworkInitialization" BO_ 1848 0; +BA_ "VFrameFormat" BO_ 1848 14; +BA_ "FrameRouting" BO_ 1840 ""; +BA_ "GenMsgILSupport" BO_ 1840 0; +BA_ "DiagRequest" BO_ 1840 1; +BA_ "GenMsgSendType" BO_ 1840 1; +BA_ "GenMsgDelayTime" BO_ 1840 0; +BA_ "NetworkInitialization" BO_ 1840 0; +BA_ "VFrameFormat" BO_ 1840 14; +BA_ "FrameRouting" BO_ 1713 ""; +BA_ "GenMsgILSupport" BO_ 1713 0; +BA_ "TpApplType" BO_ 1713 "DiagUUDTResponse"; +BA_ "GenMsgSendType" BO_ 1713 1; +BA_ "NetworkInitialization" BO_ 1713 0; +BA_ "VFrameFormat" BO_ 1713 14; +BA_ "FrameRouting" BO_ 1712 ""; +BA_ "GenMsgILSupport" BO_ 1712 0; +BA_ "TpApplType" BO_ 1712 "DiagUUDTResponse"; +BA_ "GenMsgSendType" BO_ 1712 1; +BA_ "NetworkInitialization" BO_ 1712 0; +BA_ "VFrameFormat" BO_ 1712 14; +BA_ "FrameRouting" BO_ 2025 ""; +BA_ "GenMsgILSupport" BO_ 2025 0; +BA_ "DiagResponse" BO_ 2025 1; +BA_ "GenMsgSendType" BO_ 2025 1; +BA_ "GenMsgDelayTime" BO_ 2025 0; +BA_ "NetworkInitialization" BO_ 2025 0; +BA_ "VFrameFormat" BO_ 2025 14; +BA_ "FrameRouting" BO_ 2024 ""; +BA_ "GenMsgILSupport" BO_ 2024 0; +BA_ "DiagResponse" BO_ 2024 1; +BA_ "GenMsgSendType" BO_ 2024 1; +BA_ "GenMsgDelayTime" BO_ 2024 0; +BA_ "NetworkInitialization" BO_ 2024 0; +BA_ "VFrameFormat" BO_ 2024 14; +BA_ "FrameRouting" BO_ 2017 ""; +BA_ "GenMsgILSupport" BO_ 2017 0; +BA_ "DiagRequest" BO_ 2017 1; +BA_ "GenMsgSendType" BO_ 2017 1; +BA_ "GenMsgDelayTime" BO_ 2017 0; +BA_ "NetworkInitialization" BO_ 2017 0; +BA_ "VFrameFormat" BO_ 2017 14; +BA_ "FrameRouting" BO_ 2016 ""; +BA_ "GenMsgILSupport" BO_ 2016 0; +BA_ "DiagRequest" BO_ 2016 1; +BA_ "GenMsgSendType" BO_ 2016 1; +BA_ "GenMsgDelayTime" BO_ 2016 0; +BA_ "NetworkInitialization" BO_ 2016 0; +BA_ "VFrameFormat" BO_ 2016 14; +BA_ "FrameRouting" BO_ 2015 ""; +BA_ "GenMsgILSupport" BO_ 2015 0; +BA_ "DiagState" BO_ 2015 1; +BA_ "GenMsgSendType" BO_ 2015 1; +BA_ "GenMsgDelayTime" BO_ 2015 0; +BA_ "NetworkInitialization" BO_ 2015 0; +BA_ "VFrameFormat" BO_ 2015 14; +BA_ "FrameRouting" BO_ 1897 ""; +BA_ "GenMsgILSupport" BO_ 1897 0; +BA_ "DiagResponse" BO_ 1897 1; +BA_ "GenMsgSendType" BO_ 1897 1; +BA_ "GenMsgDelayTime" BO_ 1897 0; +BA_ "NetworkInitialization" BO_ 1897 0; +BA_ "VFrameFormat" BO_ 1897 14; +BA_ "FrameRouting" BO_ 1814 ""; +BA_ "GenMsgILSupport" BO_ 1814 0; +BA_ "DiagRequest" BO_ 1814 1; +BA_ "GenMsgSendType" BO_ 1814 1; +BA_ "GenMsgDelayTime" BO_ 1814 0; +BA_ "NetworkInitialization" BO_ 1814 0; +BA_ "VFrameFormat" BO_ 1814 14; +BA_ "FrameRouting" BO_ 1701 ""; +BA_ "GenMsgILSupport" BO_ 1701 0; +BA_ "TpApplType" BO_ 1701 "DiagUUDTResponse"; +BA_ "GenMsgSendType" BO_ 1701 1; +BA_ "NetworkInitialization" BO_ 1701 0; +BA_ "VFrameFormat" BO_ 1701 14; +BA_ "FrameRouting" BO_ 1700 ""; +BA_ "GenMsgILSupport" BO_ 1700 0; +BA_ "TpApplType" BO_ 1700 "DiagUUDTResponse"; +BA_ "GenMsgSendType" BO_ 1700 1; +BA_ "NetworkInitialization" BO_ 1700 0; +BA_ "VFrameFormat" BO_ 1700 14; +BA_ "FrameRouting" BO_ 1697 ""; +BA_ "GenMsgILSupport" BO_ 1697 0; +BA_ "TpApplType" BO_ 1697 "DiagUUDTResponse"; +BA_ "GenMsgSendType" BO_ 1697 1; +BA_ "NetworkInitialization" BO_ 1697 0; +BA_ "VFrameFormat" BO_ 1697 14; +BA_ "FrameRouting" BO_ 1696 ""; +BA_ "GenMsgILSupport" BO_ 1696 0; +BA_ "TpApplType" BO_ 1696 "DiagUUDTResponse"; +BA_ "GenMsgSendType" BO_ 1696 1; +BA_ "NetworkInitialization" BO_ 1696 0; +BA_ "VFrameFormat" BO_ 1696 14; +BA_ "FrameRouting" BO_ 1429 ""; +BA_ "GenMsgILSupport" BO_ 1429 0; +BA_ "NmAsrMessage" BO_ 1429 1; +BA_ "GenMsgSendType" BO_ 1429 0; +BA_ "GenMsgCycleTime" BO_ 1429 1000; +BA_ "NetworkInitialization" BO_ 1429 0; +BA_ "VFrameFormat" BO_ 1429 14; +BA_ "FrameRouting" BO_ 1100 ""; +BA_ "GenMsgSendType" BO_ 1100 0; +BA_ "GenMsgCycleTime" BO_ 1100 100; +BA_ "VFrameFormat" BO_ 1100 14; +BA_ "FrameRouting" BO_ 1098 ""; +BA_ "GenMsgSendType" BO_ 1098 5; +BA_ "GenMsgCycleTime" BO_ 1098 500; +BA_ "VFrameFormat" BO_ 1098 14; +BA_ "FrameRouting" BO_ 1086 ""; +BA_ "GenMsgSendType" BO_ 1086 0; +BA_ "GenMsgCycleTime" BO_ 1086 100; +BA_ "VFrameFormat" BO_ 1086 14; +BA_ "FrameRouting" BO_ 1071 ""; +BA_ "GenMsgSendType" BO_ 1071 0; +BA_ "GenMsgCycleTime" BO_ 1071 100; +BA_ "VFrameFormat" BO_ 1071 14; +BA_ "FrameRouting" BO_ 1069 ""; +BA_ "GenMsgSendType" BO_ 1069 0; +BA_ "GenMsgCycleTime" BO_ 1069 100; +BA_ "VFrameFormat" BO_ 1069 14; +BA_ "FrameRouting" BO_ 1060 ""; +BA_ "GenMsgSendType" BO_ 1060 0; +BA_ "GenMsgCycleTime" BO_ 1060 100; +BA_ "VFrameFormat" BO_ 1060 14; +BA_ "FrameRouting" BO_ 1057 ""; +BA_ "GenMsgSendType" BO_ 1057 0; +BA_ "GenMsgCycleTime" BO_ 1057 100; +BA_ "VFrameFormat" BO_ 1057 14; +BA_ "FrameRouting" BO_ 1055 ""; +BA_ "GenMsgSendType" BO_ 1055 0; +BA_ "GenMsgCycleTime" BO_ 1055 100; +BA_ "VFrameFormat" BO_ 1055 14; +BA_ "FrameRouting" BO_ 562 ""; +BA_ "GenMsgSendType" BO_ 562 0; +BA_ "GenMsgCycleTime" BO_ 562 100; +BA_ "VFrameFormat" BO_ 562 14; +BA_ "FrameRouting" BO_ 523 ""; +BA_ "GenMsgSendType" BO_ 523 0; +BA_ "GenMsgCycleTime" BO_ 523 1000; +BA_ "VFrameFormat" BO_ 523 14; +BA_ "FrameRouting" BO_ 517 ""; +BA_ "GenMsgSendType" BO_ 517 0; +BA_ "GenMsgCycleTime" BO_ 517 20; +BA_ "GenMsgDelayTime" BO_ 517 10; +BA_ "VFrameFormat" BO_ 517 14; +BA_ "FrameRouting" BO_ 516 ""; +BA_ "GenMsgSendType" BO_ 516 0; +BA_ "GenMsgCycleTime" BO_ 516 10; +BA_ "GenMsgDelayTime" BO_ 516 0; +BA_ "VFrameFormat" BO_ 516 14; +BA_ "FrameRouting" BO_ 514 ""; +BA_ "GenMsgSendType" BO_ 514 0; +BA_ "GenMsgCycleTime" BO_ 514 20; +BA_ "GenMsgDelayTime" BO_ 514 10; +BA_ "VFrameFormat" BO_ 514 14; +BA_ "FrameRouting" BO_ 512 ""; +BA_ "GenMsgSendType" BO_ 512 0; +BA_ "GenMsgCycleTime" BO_ 512 20; +BA_ "GenMsgDelayTime" BO_ 512 10; +BA_ "VFrameFormat" BO_ 512 14; +BA_ "FrameRouting" BO_ 381 ""; +BA_ "GenMsgSendType" BO_ 381 0; +BA_ "GenMsgCycleTime" BO_ 381 100; +BA_ "VFrameFormat" BO_ 381 14; +BA_ "FrameRouting" BO_ 380 ""; +BA_ "GenMsgSendType" BO_ 380 0; +BA_ "GenMsgCycleTime" BO_ 380 100; +BA_ "VFrameFormat" BO_ 380 14; +BA_ "FrameRouting" BO_ 377 ""; +BA_ "GenMsgSendType" BO_ 377 0; +BA_ "GenMsgCycleTime" BO_ 377 100; +BA_ "VFrameFormat" BO_ 377 14; +BA_ "FrameRouting" BO_ 376 ""; +BA_ "GenMsgSendType" BO_ 376 0; +BA_ "GenMsgCycleTime" BO_ 376 100; +BA_ "VFrameFormat" BO_ 376 14; +BA_ "FrameRouting" BO_ 373 ""; +BA_ "GenMsgSendType" BO_ 373 0; +BA_ "GenMsgCycleTime" BO_ 373 20; +BA_ "GenMsgDelayTime" BO_ 373 10; +BA_ "VFrameFormat" BO_ 373 14; +BA_ "FrameRouting" BO_ 359 ""; +BA_ "GenMsgSendType" BO_ 359 0; +BA_ "GenMsgCycleTime" BO_ 359 10; +BA_ "GenMsgDelayTime" BO_ 359 0; +BA_ "VFrameFormat" BO_ 359 14; +BA_ "FrameRouting" BO_ 358 ""; +BA_ "GenMsgSendType" BO_ 358 0; +BA_ "GenMsgCycleTime" BO_ 358 100; +BA_ "VFrameFormat" BO_ 358 14; +BA_ "FrameRouting" BO_ 357 ""; +BA_ "GenMsgSendType" BO_ 357 0; +BA_ "GenMsgCycleTime" BO_ 357 20; +BA_ "GenMsgDelayTime" BO_ 357 10; +BA_ "VFrameFormat" BO_ 357 14; +BA_ "FrameRouting" BO_ 355 ""; +BA_ "GenMsgSendType" BO_ 355 0; +BA_ "GenMsgCycleTime" BO_ 355 100; +BA_ "VFrameFormat" BO_ 355 14; +BA_ "FrameRouting" BO_ 342 ""; +BA_ "GenMsgSendType" BO_ 342 0; +BA_ "GenMsgCycleTime" BO_ 342 100; +BA_ "VFrameFormat" BO_ 342 14; +BA_ "FrameRouting" BO_ 71 ""; +BA_ "GenMsgSendType" BO_ 71 0; +BA_ "GenMsgCycleTime" BO_ 71 20; +BA_ "GenMsgDelayTime" BO_ 71 10; +BA_ "VFrameFormat" BO_ 71 14; +BA_ "FrameRouting" BO_ 1822 ""; +BA_ "GenMsgILSupport" BO_ 1822 0; +BA_ "DiagResponse" BO_ 1822 1; +BA_ "GenMsgSendType" BO_ 1822 1; +BA_ "GenMsgDelayTime" BO_ 1822 0; +BA_ "NetworkInitialization" BO_ 1822 0; +BA_ "VFrameFormat" BO_ 1822 14; +BA_ "FrameRouting" BO_ 1438 ""; +BA_ "GenMsgILSupport" BO_ 1438 0; +BA_ "NmAsrMessage" BO_ 1438 1; +BA_ "GenMsgSendType" BO_ 1438 0; +BA_ "GenMsgCycleTime" BO_ 1438 1000; +BA_ "NetworkInitialization" BO_ 1438 0; +BA_ "VFrameFormat" BO_ 1438 14; +BA_ "FrameRouting" BO_ 954 ""; +BA_ "FrameGatewayId" BO_ 954 954; +BA_ "FrameGatewayNetwork" BO_ 954 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 954 14; +BA_ "FrameRouting" BO_ 1006 ""; +BA_ "GenMsgSendType" BO_ 1006 5; +BA_ "GenMsgCycleTime" BO_ 1006 1000; +BA_ "VFrameFormat" BO_ 1006 14; +BA_ "FrameRouting" BO_ 820 ""; +BA_ "FrameGatewayNetwork" BO_ 820 "HS2_CAN"; +BA_ "FrameGatewayId" BO_ 820 820; +BA_ "VFrameFormat" BO_ 820 14; +BA_ "FrameRouting" BO_ 137 ""; +BA_ "FrameGatewayId" BO_ 137 137; +BA_ "FrameGatewayNetwork" BO_ 137 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 137 14; +BA_ "FrameRouting" BO_ 129 ""; +BA_ "FrameGatewayId" BO_ 129 129; +BA_ "FrameGatewayNetwork" BO_ 129 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 129 14; +BA_ "FrameRouting" BO_ 935 ""; +BA_ "GenMsgSendType" BO_ 935 5; +BA_ "GenMsgCycleTime" BO_ 935 200; +BA_ "VFrameFormat" BO_ 935 14; +BA_ "FrameRouting" BO_ 1108 ""; +BA_ "FrameGatewayId" BO_ 1108 1108; +BA_ "FrameGatewayNetwork" BO_ 1108 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 1108 14; +BA_ "FrameRouting" BO_ 261 ""; +BA_ "FrameGatewayId" BO_ 261 261; +BA_ "FrameGatewayNetwork" BO_ 261 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 261 14; +BA_ "FrameRouting" BO_ 1146 ""; +BA_ "FrameGatewayId" BO_ 1146 1146; +BA_ "FrameGatewayNetwork" BO_ 1146 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1146 14; +BA_ "FrameRouting" BO_ 533 ""; +BA_ "FrameGatewayId" BO_ 533 533; +BA_ "FrameGatewayNetwork" BO_ 533 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 533 14; +BA_ "FrameRouting" BO_ 1041 ""; +BA_ "FrameGatewayId" BO_ 1041 1041; +BA_ "FrameGatewayNetwork" BO_ 1041 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1041 14; +BA_ "FrameRouting" BO_ 1067 ""; +BA_ "FrameGatewayId" BO_ 1067 1067; +BA_ "FrameGatewayNetwork" BO_ 1067 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1067 14; +BA_ "FrameRouting" BO_ 1112 ""; +BA_ "FrameGatewayId" BO_ 1112 1112; +BA_ "FrameGatewayNetwork" BO_ 1112 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1112 14; +BA_ "FrameRouting" BO_ 139 ""; +BA_ "FrameGatewayId" BO_ 139 139; +BA_ "FrameGatewayNetwork" BO_ 139 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 139 14; +BA_ "FrameRouting" BO_ 1121 ""; +BA_ "FrameGatewayId" BO_ 1121 1121; +BA_ "FrameGatewayNetwork" BO_ 1121 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 1121 14; +BA_ "FrameRouting" BO_ 1120 ""; +BA_ "FrameGatewayId" BO_ 1120 1120; +BA_ "FrameGatewayNetwork" BO_ 1120 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 1120 14; +BA_ "FrameRouting" BO_ 1050 ""; +BA_ "FrameGatewayId" BO_ 1050 1050; +BA_ "FrameGatewayNetwork" BO_ 1050 "MS1_CAN"; +BA_ "VFrameFormat" BO_ 1050 14; +BA_ "FrameRouting" BO_ 1137 ""; +BA_ "GenMsgSendType" BO_ 1137 0; +BA_ "GenMsgCycleTime" BO_ 1137 1000; +BA_ "VFrameFormat" BO_ 1137 14; +BA_ "FrameRouting" BO_ 1255 ""; +BA_ "GenMsgSendType" BO_ 1255 0; +BA_ "GenMsgCycleTime" BO_ 1255 1000; +BA_ "VFrameFormat" BO_ 1255 14; +BA_ "FrameRouting" BO_ 1254 ""; +BA_ "GenMsgSendType" BO_ 1254 0; +BA_ "GenMsgCycleTime" BO_ 1254 1000; +BA_ "VFrameFormat" BO_ 1254 14; +BA_ "FrameRouting" BO_ 1253 ""; +BA_ "GenMsgSendType" BO_ 1253 0; +BA_ "GenMsgCycleTime" BO_ 1253 1000; +BA_ "VFrameFormat" BO_ 1253 14; +BA_ "FrameRouting" BO_ 1252 ""; +BA_ "GenMsgSendType" BO_ 1252 0; +BA_ "GenMsgCycleTime" BO_ 1252 1000; +BA_ "VFrameFormat" BO_ 1252 14; +BA_ "FrameRouting" BO_ 1251 ""; +BA_ "GenMsgSendType" BO_ 1251 0; +BA_ "GenMsgCycleTime" BO_ 1251 1000; +BA_ "VFrameFormat" BO_ 1251 14; +BA_ "FrameRouting" BO_ 1250 ""; +BA_ "GenMsgSendType" BO_ 1250 0; +BA_ "GenMsgCycleTime" BO_ 1250 1000; +BA_ "VFrameFormat" BO_ 1250 14; +BA_ "FrameRouting" BO_ 1249 ""; +BA_ "GenMsgSendType" BO_ 1249 0; +BA_ "GenMsgCycleTime" BO_ 1249 1000; +BA_ "VFrameFormat" BO_ 1249 14; +BA_ "FrameRouting" BO_ 1248 ""; +BA_ "GenMsgSendType" BO_ 1248 0; +BA_ "GenMsgCycleTime" BO_ 1248 1000; +BA_ "VFrameFormat" BO_ 1248 14; +BA_ "FrameRouting" BO_ 1113 ""; +BA_ "GenMsgSendType" BO_ 1113 0; +BA_ "GenMsgCycleTime" BO_ 1113 50; +BA_ "VFrameFormat" BO_ 1113 14; +BA_ "FrameRouting" BO_ 1105 ""; +BA_ "GenMsgSendType" BO_ 1105 5; +BA_ "GenMsgCycleTime" BO_ 1105 1000; +BA_ "VFrameFormat" BO_ 1105 14; +BA_ "FrameRouting" BO_ 938 ""; +BA_ "GenMsgSendType" BO_ 938 5; +BA_ "GenMsgCycleTime" BO_ 938 200; +BA_ "VFrameFormat" BO_ 938 14; +BA_ "FrameRouting" BO_ 939 ""; +BA_ "GenMsgSendType" BO_ 939 5; +BA_ "GenMsgCycleTime" BO_ 939 200; +BA_ "VFrameFormat" BO_ 939 14; +BA_ "FrameRouting" BO_ 937 ""; +BA_ "GenMsgSendType" BO_ 937 0; +BA_ "GenMsgCycleTime" BO_ 937 20; +BA_ "GenMsgDelayTime" BO_ 937 10; +BA_ "VFrameFormat" BO_ 937 14; +BA_ "FrameRouting" BO_ 936 ""; +BA_ "GenMsgSendType" BO_ 936 0; +BA_ "GenMsgCycleTime" BO_ 936 20; +BA_ "GenMsgDelayTime" BO_ 936 10; +BA_ "VFrameFormat" BO_ 936 14; +BA_ "FrameRouting" BO_ 877 ""; +BA_ "GenMsgSendType" BO_ 877 5; +BA_ "GenMsgCycleTime" BO_ 877 1000; +BA_ "VFrameFormat" BO_ 877 14; +BA_ "FrameRouting" BO_ 589 ""; +BA_ "FrameGatewayId" BO_ 589 589; +BA_ "FrameGatewayNetwork" BO_ 589 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 589 14; +BA_ "FrameRouting" BO_ 588 ""; +BA_ "FrameGatewayId" BO_ 588 588; +BA_ "FrameGatewayNetwork" BO_ 588 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 588 14; +BA_ "FrameRouting" BO_ 587 ""; +BA_ "FrameGatewayId" BO_ 587 587; +BA_ "FrameGatewayNetwork" BO_ 587 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 587 14; +BA_ "FrameRouting" BO_ 389 ""; +BA_ "GenMsgSendType" BO_ 389 0; +BA_ "GenMsgCycleTime" BO_ 389 100; +BA_ "VFrameFormat" BO_ 389 14; +BA_ "FrameRouting" BO_ 1009 ""; +BA_ "FrameGatewayId" BO_ 1009 1009; +BA_ "FrameGatewayNetwork" BO_ 1009 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1009 14; +BA_ "FrameRouting" BO_ 360 ""; +BA_ "FrameGatewayId" BO_ 360 360; +BA_ "FrameGatewayNetwork" BO_ 360 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 360 14; +BA_ "FrameRouting" BO_ 122 ""; +BA_ "FrameGatewayId" BO_ 122 122; +BA_ "FrameGatewayNetwork" BO_ 122 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 122 14; +BA_ "FrameRouting" BO_ 90 ""; +BA_ "FrameGatewayId" BO_ 90 90; +BA_ "FrameGatewayNetwork" BO_ 90 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 90 14; +BA_ "FrameRouting" BO_ 1091 ""; +BA_ "FrameGatewayId" BO_ 1091 1091; +BA_ "FrameGatewayNetwork" BO_ 1091 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1091 14; +BA_ "FrameRouting" BO_ 138 ""; +BA_ "FrameGatewayId" BO_ 138 138; +BA_ "FrameGatewayNetwork" BO_ 138 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 138 14; +BA_ "FrameRouting" BO_ 131 ""; +BA_ "FrameGatewayId" BO_ 131 131; +BA_ "FrameGatewayNetwork" BO_ 131 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 131 14; +BA_ "FrameRouting" BO_ 787 ""; +BA_ "FrameGatewayId" BO_ 787 787; +BA_ "FrameGatewayNetwork" BO_ 787 "MS2_CAN"; +BA_ "VFrameFormat" BO_ 787 14; +BA_ "FrameRouting" BO_ 953 ""; +BA_ "FrameGatewayId" BO_ 953 953; +BA_ "FrameGatewayNetwork" BO_ 953 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 953 14; +BA_ "FrameRouting" BO_ 1093 ""; +BA_ "FrameGatewayId" BO_ 1093 1093; +BA_ "FrameGatewayNetwork" BO_ 1093 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1093 14; +BA_ "FrameRouting" BO_ 792 ""; +BA_ "FrameGatewayId" BO_ 792 792; +BA_ "FrameGatewayNetwork" BO_ 792 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 792 14; +BA_ "FrameRouting" BO_ 968 ""; +BA_ "FrameGatewayId" BO_ 968 968; +BA_ "FrameGatewayNetwork" BO_ 968 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 968 14; +BA_ "FrameRouting" BO_ 819 ""; +BA_ "FrameGatewayId" BO_ 819 819; +BA_ "FrameGatewayNetwork" BO_ 819 "MS1_CAN"; +BA_ "VFrameFormat" BO_ 819 14; +BA_ "FrameRouting" BO_ 818 ""; +BA_ "FrameGatewayId" BO_ 818 818; +BA_ "FrameGatewayNetwork" BO_ 818 "MS1_CAN"; +BA_ "VFrameFormat" BO_ 818 14; +BA_ "FrameRouting" BO_ 806 ""; +BA_ "FrameGatewayId" BO_ 806 806; +BA_ "FrameGatewayNetwork" BO_ 806 "MS1_CAN"; +BA_ "VFrameFormat" BO_ 806 14; +BA_ "FrameRouting" BO_ 765 ""; +BA_ "FrameGatewayId" BO_ 765 765; +BA_ "FrameGatewayNetwork" BO_ 765 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 765 14; +BA_ "FrameRouting" BO_ 559 ""; +BA_ "FrameGatewayId" BO_ 559 559; +BA_ "FrameGatewayNetwork" BO_ 559 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 559 14; +BA_ "FrameRouting" BO_ 558 ""; +BA_ "FrameGatewayId" BO_ 558 558; +BA_ "FrameGatewayNetwork" BO_ 558 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 558 14; +BA_ "FrameRouting" BO_ 934 ""; +BA_ "GenMsgSendType" BO_ 934 5; +BA_ "GenMsgCycleTime" BO_ 934 200; +BA_ "VFrameFormat" BO_ 934 14; +BA_ "FrameRouting" BO_ 1072 ""; +BA_ "FrameGatewayId" BO_ 1072 1072; +BA_ "FrameGatewayNetwork" BO_ 1072 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1072 14; +BA_ "FrameRouting" BO_ 909 ""; +BA_ "FrameGatewayId" BO_ 909 909; +BA_ "FrameGatewayNetwork" BO_ 909 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 909 14; +BA_ "FrameRouting" BO_ 963 ""; +BA_ "FrameGatewayId" BO_ 963 963; +BA_ "FrameGatewayNetwork" BO_ 963 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 963 14; +BA_ "FrameRouting" BO_ 145 ""; +BA_ "FrameGatewayId" BO_ 145 145; +BA_ "FrameGatewayNetwork" BO_ 145 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 145 14; +BA_ "FrameRouting" BO_ 76 ""; +BA_ "FrameGatewayId" BO_ 76 76; +BA_ "FrameGatewayNetwork" BO_ 76 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 76 14; +BA_ "FrameRouting" BO_ 65 ""; +BA_ "DiagResponse" BO_ 65 0; +BA_ "FrameGatewayId" BO_ 65 65; +BA_ "FrameGatewayNetwork" BO_ 65 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 65 14; +BA_ "FrameRouting" BO_ 1076 ""; +BA_ "FrameGatewayId" BO_ 1076 1076; +BA_ "FrameGatewayNetwork" BO_ 1076 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 1076 14; +BA_ "FrameRouting" BO_ 862 ""; +BA_ "FrameGatewayId" BO_ 862 862; +BA_ "FrameGatewayNetwork" BO_ 862 "MS1_CAN"; +BA_ "VFrameFormat" BO_ 862 14; +BA_ "FrameRouting" BO_ 931 ""; +BA_ "FrameGatewayId" BO_ 931 931; +BA_ "FrameGatewayNetwork" BO_ 931 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 931 14; +BA_ "FrameRouting" BO_ 578 ""; +BA_ "FrameGatewayId" BO_ 578 578; +BA_ "FrameGatewayNetwork" BO_ 578 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 578 14; +BA_ "FrameRouting" BO_ 947 ""; +BA_ "FrameGatewayId" BO_ 947 947; +BA_ "FrameGatewayNetwork" BO_ 947 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 947 14; +BA_ "FrameRouting" BO_ 1084 ""; +BA_ "FrameGatewayId" BO_ 1084 1084; +BA_ "FrameGatewayNetwork" BO_ 1084 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1084 14; +BA_ "FrameRouting" BO_ 1068 ""; +BA_ "FrameGatewayId" BO_ 1068 1068; +BA_ "FrameGatewayNetwork" BO_ 1068 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 1068 14; +BA_ "FrameRouting" BO_ 146 ""; +BA_ "FrameGatewayId" BO_ 146 146; +BA_ "FrameGatewayNetwork" BO_ 146 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 146 14; +BA_ "FrameRouting" BO_ 1900 ""; +BA_ "GenMsgILSupport" BO_ 1900 0; +BA_ "DiagResponse" BO_ 1900 1; +BA_ "GenMsgSendType" BO_ 1900 1; +BA_ "GenMsgDelayTime" BO_ 1900 0; +BA_ "NetworkInitialization" BO_ 1900 0; +BA_ "VFrameFormat" BO_ 1900 14; +BA_ "FrameRouting" BO_ 1806 ""; +BA_ "GenMsgILSupport" BO_ 1806 0; +BA_ "DiagResponse" BO_ 1806 1; +BA_ "GenMsgSendType" BO_ 1806 1; +BA_ "GenMsgDelayTime" BO_ 1806 0; +BA_ "NetworkInitialization" BO_ 1806 0; +BA_ "VFrameFormat" BO_ 1806 14; +BA_ "FrameRouting" BO_ 997 ""; +BA_ "GenMsgSendType" BO_ 997 5; +BA_ "GenMsgCycleTime" BO_ 997 1000; +BA_ "VFrameFormat" BO_ 997 14; +BA_ "FrameRouting" BO_ 983 ""; +BA_ "GenMsgSendType" BO_ 983 0; +BA_ "GenMsgCycleTime" BO_ 983 50; +BA_ "VFrameFormat" BO_ 983 14; +BA_ "FrameRouting" BO_ 980 ""; +BA_ "GenMsgSendType" BO_ 980 0; +BA_ "GenMsgCycleTime" BO_ 980 30; +BA_ "GenMsgDelayTime" BO_ 980 10; +BA_ "VFrameFormat" BO_ 980 14; +BA_ "FrameRouting" BO_ 979 ""; +BA_ "GenMsgSendType" BO_ 979 0; +BA_ "GenMsgCycleTime" BO_ 979 50; +BA_ "VFrameFormat" BO_ 979 14; +BA_ "FrameRouting" BO_ 976 ""; +BA_ "GenMsgSendType" BO_ 976 0; +BA_ "GenMsgCycleTime" BO_ 976 100; +BA_ "VFrameFormat" BO_ 976 14; +BA_ "FrameRouting" BO_ 973 ""; +BA_ "GenMsgSendType" BO_ 973 5; +BA_ "GenMsgCycleTime" BO_ 973 1000; +BA_ "VFrameFormat" BO_ 973 14; +BA_ "FrameRouting" BO_ 970 ""; +BA_ "GenMsgSendType" BO_ 970 0; +BA_ "GenMsgCycleTime" BO_ 970 30; +BA_ "GenMsgDelayTime" BO_ 970 10; +BA_ "VFrameFormat" BO_ 970 14; +BA_ "FrameRouting" BO_ 962 ""; +BA_ "GenMsgSendType" BO_ 962 5; +BA_ "GenMsgCycleTime" BO_ 962 1000; +BA_ "VFrameFormat" BO_ 962 14; +BA_ "FrameRouting" BO_ 961 ""; +BA_ "GenMsgSendType" BO_ 961 5; +BA_ "GenMsgCycleTime" BO_ 961 1000; +BA_ "VFrameFormat" BO_ 961 14; +BA_ "FrameRouting" BO_ 394 ""; +BA_ "GenMsgSendType" BO_ 394 5; +BA_ "GenMsgCycleTime" BO_ 394 200; +BA_ "VFrameFormat" BO_ 394 14; +BA_ "FrameRouting" BO_ 391 ""; +BA_ "GenMsgSendType" BO_ 391 0; +BA_ "GenMsgCycleTime" BO_ 391 20; +BA_ "GenMsgDelayTime" BO_ 391 10; +BA_ "VFrameFormat" BO_ 391 14; +BA_ "FrameRouting" BO_ 390 ""; +BA_ "GenMsgSendType" BO_ 390 0; +BA_ "GenMsgCycleTime" BO_ 390 20; +BA_ "GenMsgDelayTime" BO_ 390 10; +BA_ "VFrameFormat" BO_ 390 14; +BA_ "FrameRouting" BO_ 1441 ""; +BA_ "GenMsgILSupport" BO_ 1441 0; +BA_ "NmAsrMessage" BO_ 1441 1; +BA_ "GenMsgSendType" BO_ 1441 0; +BA_ "GenMsgCycleTime" BO_ 1441 1000; +BA_ "NetworkInitialization" BO_ 1441 0; +BA_ "VFrameFormat" BO_ 1441 14; +BA_ "FrameRouting" BO_ 1787 ""; +BA_ "GenMsgILSupport" BO_ 1787 0; +BA_ "DiagResponse" BO_ 1787 1; +BA_ "GenMsgSendType" BO_ 1787 1; +BA_ "GenMsgDelayTime" BO_ 1787 0; +BA_ "VFrameFormat" BO_ 1787 14; +BA_ "FrameRouting" BO_ 1779 ""; +BA_ "GenMsgILSupport" BO_ 1779 0; +BA_ "DiagRequest" BO_ 1779 1; +BA_ "GenMsgSendType" BO_ 1779 1; +BA_ "GenMsgDelayTime" BO_ 1779 0; +BA_ "VFrameFormat" BO_ 1779 14; +BA_ "FrameRouting" BO_ 1786 ""; +BA_ "GenMsgILSupport" BO_ 1786 0; +BA_ "DiagResponse" BO_ 1786 1; +BA_ "GenMsgSendType" BO_ 1786 1; +BA_ "GenMsgDelayTime" BO_ 1786 0; +BA_ "VFrameFormat" BO_ 1786 14; +BA_ "FrameRouting" BO_ 1778 ""; +BA_ "GenMsgILSupport" BO_ 1778 0; +BA_ "DiagRequest" BO_ 1778 1; +BA_ "GenMsgSendType" BO_ 1778 1; +BA_ "GenMsgDelayTime" BO_ 1778 0; +BA_ "VFrameFormat" BO_ 1778 14; +BA_ "FrameRouting" BO_ 1153 ""; +BA_ "FrameGatewayId" BO_ 1153 1152; +BA_ "FrameGatewayNetwork" BO_ 1153 "HS2_CAN"; +BA_ "VFrameFormat" BO_ 1153 14; +BA_ "FrameRouting" BO_ 942 ""; +BA_ "GenMsgSendType" BO_ 942 5; +BA_ "GenMsgCycleTime" BO_ 942 1000; +BA_ "VFrameFormat" BO_ 942 14; +BA_ "FrameRouting" BO_ 930 ""; +BA_ "GenMsgSendType" BO_ 930 5; +BA_ "GenMsgCycleTime" BO_ 930 1000; +BA_ "VFrameFormat" BO_ 930 14; +BA_ "FrameRouting" BO_ 929 ""; +BA_ "GenMsgSendType" BO_ 929 5; +BA_ "GenMsgCycleTime" BO_ 929 1000; +BA_ "VFrameFormat" BO_ 929 14; +BA_ "FrameRouting" BO_ 402 ""; +BA_ "FrameGatewayId" BO_ 402 402; +BA_ "FrameGatewayNetwork" BO_ 402 "HS3_CAN"; +BA_ "VFrameFormat" BO_ 402 14; +BA_ "FrameRouting" BO_ 924 ""; +BA_ "FrameGatewayId" BO_ 924 924; +BA_ "FrameGatewayNetwork" BO_ 924 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 924 14; +BA_ "FrameRouting" BO_ 923 ""; +BA_ "FrameGatewayId" BO_ 923 923; +BA_ "FrameGatewayNetwork" BO_ 923 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 923 14; +BA_ "FrameRouting" BO_ 1998 ""; +BA_ "GenMsgILSupport" BO_ 1998 0; +BA_ "DiagResponse" BO_ 1998 1; +BA_ "GenMsgSendType" BO_ 1998 1; +BA_ "GenMsgDelayTime" BO_ 1998 0; +BA_ "NetworkInitialization" BO_ 1998 0; +BA_ "VFrameFormat" BO_ 1998 14; +BA_ "FrameRouting" BO_ 1996 ""; +BA_ "GenMsgILSupport" BO_ 1996 0; +BA_ "DiagResponse" BO_ 1996 1; +BA_ "GenMsgSendType" BO_ 1996 1; +BA_ "GenMsgDelayTime" BO_ 1996 0; +BA_ "NetworkInitialization" BO_ 1996 0; +BA_ "VFrameFormat" BO_ 1996 14; +BA_ "FrameRouting" BO_ 1988 ""; +BA_ "GenMsgILSupport" BO_ 1988 0; +BA_ "DiagRequest" BO_ 1988 1; +BA_ "GenMsgSendType" BO_ 1988 1; +BA_ "GenMsgDelayTime" BO_ 1988 0; +BA_ "NetworkInitialization" BO_ 1988 0; +BA_ "VFrameFormat" BO_ 1988 14; +BA_ "FrameRouting" BO_ 922 ""; +BA_ "FrameGatewayId" BO_ 922 922; +BA_ "FrameGatewayNetwork" BO_ 922 "HS1_CAN"; +BA_ "VFrameFormat" BO_ 922 14; +BA_ "GenSigSendType" SG_ 823 DteVehPwId_No_Actl 3; +BA_ "ECGUsedRxSignal" SG_ 823 DteVehPwId_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 823 DteVehEId_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 823 DteVehEffId_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 823 DteVeh_Pw_Actl 1; +BA_ "GenSigStartValue" SG_ 823 DteVeh_Eff_Actl 100; +BA_ "ECGUsedRxSignal" SG_ 823 DteVeh_Eff_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 823 DteVeh_E_Actl 1; +BA_ "GenSigSendType" SG_ 823 DteAcceptNew_B_Rq 3; +BA_ "ECGUsedRxSignal" SG_ 823 DteAcceptNew_B_Rq 1; +BA_ "GenSigSendType" SG_ 824 DteCldTrlrOn_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldTrlrOn_B_Stat 1; +BA_ "GenSigSendType" SG_ 824 DteCldTrlrOff_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldTrlrOff_B_Stat 1; +BA_ "GenSigStartValue" SG_ 824 DteCldTrip_L_Actl 100; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldTrip_L_Actl 1; +BA_ "GenSigSendType" SG_ 824 DteCldTraffic_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldTraffic_B_Stat 1; +BA_ "GenSigSendType" SG_ 824 DteCldTerrain_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldTerrain_B_Stat 1; +BA_ "GenSigSendType" SG_ 824 DteCldRoute_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldRoute_B_Stat 1; +BA_ "GenSigSendType" SG_ 824 DteCldPayload_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldPayload_B_Stat 1; +BA_ "GenSigSendType" SG_ 824 DteCldId_No_Actl 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldId_No_Actl 1; +BA_ "GenSigSendType" SG_ 824 DteCldExtTe_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldExtTe_B_Stat 1; +BA_ "GenSigStartValue" SG_ 824 DteCldExt_Eff_Actl 100; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldExt_Eff_Actl 1; +BA_ "GenSigStartValue" SG_ 824 DteCldDrv_Eff_Actl 100; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldDrv_Eff_Actl 1; +BA_ "GenSigSendType" SG_ 824 DteCldDcac_B_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldDcac_B_Stat 1; +BA_ "GenSigStartValue" SG_ 824 DteCldClimt_Eff_Actl 100; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldClimt_Eff_Actl 1; +BA_ "GenSigStartValue" SG_ 824 DteCldBattULo_Eff_Actl 100; +BA_ "ECGUsedTxSignal" SG_ 824 DteCldBattULo_Eff_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_RR_ORR_Data 65533; +BA_ "GenSigStartValue" SG_ 949 Tire_Press_RR_ORR_Data 65533; +BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_LR_OLR_Data 65533; +BA_ "GenSigStartValue" SG_ 949 Tire_Press_LR_OLR_Data 65533; +BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_LF_Data 65533; +BA_ "GenSigStartValue" SG_ 949 Tire_Press_LF_Data 65533; +BA_ "GenSigStartValueInteger" SG_ 949 Tire_Press_RF_Data 65533; +BA_ "GenSigStartValue" SG_ 949 Tire_Press_RF_Data 65533; +BA_ "GenSigSendType" SG_ 1825 TesterPhysicalReqVDM 3; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; +BA_ "MetaData" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; +BA_ "ContentDependant" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 524 PrplWhlTot_Tq_RqMxAwd 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 524 PrplWhlTot_Tq_RqMxAwd 1; +BA_ "GenSigStartValue" SG_ 524 PrplWhlTot_Tq_RqMxAwd 65535; +BA_ "GenSigStartValueInteger" SG_ 524 PrplWhlTot_Tq_RqMxAwd 65535; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; +BA_ "MetaData" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; +BA_ "ContentDependant" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 524 PrplWhlTotTqRqMxAwd_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 740 BattAuxCnnct_B_Cmd 1; +BA_ "GenSigSendType" SG_ 1160 DgtlCommPncReset_B_Req 3; +BA_ "ECGUsedTxSignal" SG_ 1160 DgtlCommPncReset_B_Req 1; +BA_ "ECGUsedTxSignal" SG_ 1160 DataMntrSustn_B_Rq 1; +BA_ "GenSigSendType" SG_ 1160 DataMntrSustn_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 1160 PwSustnRdata_B_RqTelem 1; +BA_ "GenSigSendType" SG_ 1160 PwSustnRdata_B_RqTelem 3; +BA_ "ECGUsedTxSignal" SG_ 776 ScMnSoc_Pc_RqCld 1; +BA_ "GenSigStartValue" SG_ 776 ScMnSoc_Pc_RqCld 100; +BA_ "GenSigSendType" SG_ 776 ScMnSoc_Pc_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 ScChrgrPwMax_Pw_RqCld 1; +BA_ "GenSigSendType" SG_ 776 ScChrgrPwMax_Pw_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 ScLocPwId_No_RqCld 1; +BA_ "GenSigSendType" SG_ 776 ScLocPwId_No_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 PrcondEdit_D_RqCld 1; +BA_ "GenSigSendType" SG_ 776 PrcondEdit_D_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 GoTEditMnte_T_RqCld 1; +BA_ "GenSigStartValue" SG_ 776 GoTEditMnte_T_RqCld 14; +BA_ "GenSigSendType" SG_ 776 GoTEditMnte_T_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 GoTEditHr_T_RqCld 1; +BA_ "GenSigStartValue" SG_ 776 GoTEditHr_T_RqCld 30; +BA_ "GenSigSendType" SG_ 776 GoTEditHr_T_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 ChrgToPcEdit_Pc_RqCld 1; +BA_ "GenSigStartValue" SG_ 776 ChrgToPcEdit_Pc_RqCld 126; +BA_ "GenSigSendType" SG_ 776 ChrgToPcEdit_Pc_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 AirAmb_Te_ActlCld 1; +BA_ "GenSigStartValueInteger" SG_ 776 AirAmb_Te_ActlCld 512; +BA_ "UsedOnPgmDBC" SG_ 776 AirAmb_Te_ActlCld 1; +BA_ "GenSigSendType" SG_ 776 AirAmb_Te_ActlCld 3; +BA_ "ECGUsedTxSignal" SG_ 776 ScFreshDataEnbl_B_Rq 1; +BA_ "GenSigSendType" SG_ 776 ScFreshDataEnbl_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 776 ScEnbl_D_RqCld 1; +BA_ "GenSigStartValue" SG_ 776 ScEnbl_D_RqCld 1; +BA_ "GenSigSendType" SG_ 776 ScEnbl_D_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScDayOfWeekId_D_RqCld 1; +BA_ "GenSigStartValue" SG_ 775 ScDayOfWeekId_D_RqCld 1; +BA_ "GenSigSendType" SG_ 775 ScDayOfWeekId_D_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScLocSetId_No_RqCld 1; +BA_ "GenSigSendType" SG_ 775 ScLocSetId_No_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScLocRdius_L_RqCld 1; +BA_ "GenSigStartValue" SG_ 775 ScLocRdius_L_RqCld 1; +BA_ "GenSigSendType" SG_ 775 ScLocRdius_L_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScChrgToPc_Pc_RqCld 1; +BA_ "GenSigStartValue" SG_ 775 ScChrgToPc_Pc_RqCld 100; +BA_ "GenSigSendType" SG_ 775 ScChrgToPc_Pc_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScChrgPrfl_No_RqCld 1; +BA_ "GenSigSendType" SG_ 775 ScChrgPrfl_No_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScChrgDurSet_D_RqCld 1; +BA_ "GenSigStartValue" SG_ 775 ScChrgDurSet_D_RqCld 1; +BA_ "GenSigSendType" SG_ 775 ScChrgDurSet_D_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 775 ScChrgDur_T_RqCld 1; +BA_ "GenSigSendType" SG_ 775 ScChrgDur_T_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocLongPostv_B_RqCld 1; +BA_ "GenSigSendType" SG_ 774 ScLocLongPostv_B_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocLongFrct_An_RqCld 1; +BA_ "GenSigStartValue" SG_ 774 ScLocLongFrct_An_RqCld 1048575; +BA_ "GenSigSendType" SG_ 774 ScLocLongFrct_An_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocLongDeg_An_RqCld 1; +BA_ "GenSigSendType" SG_ 774 ScLocLongDeg_An_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocLattPostv_B_RqCld 1; +BA_ "GenSigSendType" SG_ 774 ScLocLattPostv_B_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocLattFrct_An_RqCld 1; +BA_ "GenSigStartValue" SG_ 774 ScLocLattFrct_An_RqCld 1048575; +BA_ "GenSigSendType" SG_ 774 ScLocLattFrct_An_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocLattDeg_An_RqCld 1; +BA_ "GenSigSendType" SG_ 774 ScLocLattDeg_An_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocId_No_RqCld 1; +BA_ "GenSigSendType" SG_ 774 ScLocId_No_RqCld 3; +BA_ "ECGUsedTxSignal" SG_ 774 ScLocDelete_B_RqCld 1; +BA_ "GenSigSendType" SG_ 774 ScLocDelete_B_RqCld 3; +BA_ "GenSigStartValue" SG_ 811 DistToStopover_L_Actl 65535; +BA_ "WakeupSignal" SG_ 811 ExtLghtRight_D_RqMnu 1; +BA_ "WakeupSignal" SG_ 811 AutoLghtOvrrd_B_RqDrv 1; +BA_ "WakeupSignal" SG_ 811 ExtLghtRear_D_RqMnu 1; +BA_ "WakeupSignal" SG_ 811 ExtLghtLeft_D_RqMnu 1; +BA_ "WakeupSignal" SG_ 811 ExtLghtFront_D_RqMnu 1; +BA_ "GenSigStartValue" SG_ 811 GoTEditMnte_T_RqMnu 14; +BA_ "GenSigStartValue" SG_ 811 GoTEditHr_T_RqMnu 30; +BA_ "U_CX727_MY2021_Tx" SG_ 850 VehElRngeNut_L_Dsply 1; +BA_ "U_CX727_MY2021_Tx" SG_ 850 NxtUsgSocEst_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 850 EstmChrgTimeLP_St 1; +BA_ "U_CX727_MY2021_Tx" SG_ 850 EstmChrgTimeLP_St 1; +BA_ "ECGUsedRxSignal" SG_ 850 EstmChrgTimeHP_St 1; +BA_ "U_CX727_MY2021_Tx" SG_ 850 EstmChrgTimeHP_St 1; +BA_ "ECGUsedRxSignal" SG_ 850 ChargeNowDuration_St 1; +BA_ "U_CX727_MY2021_Tx" SG_ 850 ChargeNowDuration_St 1; +BA_ "ECGUsedTxSignal" SG_ 563 DrvBhavWarn_B_Rq 1; +BA_ "GenSigSendType" SG_ 563 DrvBhavWarn_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 563 OfbChrgSetSync_D_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 563 KeyOffPwMde_D_Stat 1; +BA_ "GenSigSendType" SG_ 563 KeyOffPwMde_D_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 563 ModemReset_D_Stat 1; +BA_ "GenSigSendType" SG_ 563 ModemReset_D_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 563 FactoryReset_St 1; +BA_ "GenSigSendType" SG_ 563 FactoryReset_St 3; +BA_ "GenSigSendType" SG_ 1833 TesterPhysicalResVDM 3; +BA_ "GenSigStartValueInteger" SG_ 570 SuspRearRight_L_Actl 511; +BA_ "GenSigStartValue" SG_ 570 SuspRearRight_L_Actl 511; +BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspRearRight_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 570 SuspFrntRight_L_Actl 511; +BA_ "GenSigStartValue" SG_ 570 SuspFrntRight_L_Actl 511; +BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspFrntRight_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 570 SuspRear_L_Prev 511; +BA_ "GenSigStartValue" SG_ 570 SuspRear_L_Prev 511; +BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspRear_L_Prev 1; +BA_ "U_P702_MY2021_Rx" SG_ 570 SuspRear_L_Prev 1; +BA_ "GenSigStartValueInteger" SG_ 570 SuspRear_L_Actl 511; +BA_ "GenSigStartValue" SG_ 570 SuspRear_L_Actl 511; +BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspRear_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 570 SuspRear_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 570 SuspFrnt_L_Prev 511; +BA_ "GenSigStartValue" SG_ 570 SuspFrnt_L_Prev 511; +BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspFrnt_L_Prev 1; +BA_ "U_P702_MY2021_Rx" SG_ 570 SuspFrnt_L_Prev 1; +BA_ "GenSigStartValueInteger" SG_ 570 SuspFrnt_L_Actl 511; +BA_ "GenSigStartValue" SG_ 570 SuspFrnt_L_Actl 511; +BA_ "U_CX727_MY2021_Rx" SG_ 570 SuspFrnt_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 570 SuspFrnt_L_Actl 1; +BA_ "GenSigSendType" SG_ 837 Ccd_B_Falt 3; +BA_ "GenSigInactiveValue" SG_ 837 Ccd_B_Falt 0; +BA_ "GenSigSendType" SG_ 837 SelDrvMdeSusp_D_Stat 3; +BA_ "GenSigInactiveValue" SG_ 837 SelDrvMdeSusp_D_Stat 0; +BA_ "U_CX727_MY2021_Rx" SG_ 837 SelDrvMdeSusp_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 837 SelDrvMdeSusp_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 837 SelDrvMdeSusp_D_Stat 1; +BA_ "GenSigSendType" SG_ 837 AdptDrvMdePt_D_Rq 3; +BA_ "GenSigInactiveValue" SG_ 837 AdptDrvMdePt_D_Rq 0; +BA_ "U_CX727_MY2021_Rx" SG_ 837 AdptDrvMdePt_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 837 AdptDrvMdePt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 837 AdptDrvMdePt_D_Rq 1; +BA_ "GenSigSendType" SG_ 837 AdptDrvMdeChassis_D_Rq 3; +BA_ "GenSigInactiveValue" SG_ 837 AdptDrvMdeChassis_D_Rq 0; +BA_ "U_CX727_MY2021_Rx" SG_ 837 AdptDrvMdeChassis_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 837 AdptDrvMdeChassis_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 837 AdptDrvMdeChassis_D_Rq 1; +BA_ "GenSigSendType" SG_ 837 CcdMsgTxt_D_RqDsply 3; +BA_ "GenSigInactiveValue" SG_ 837 CcdMsgTxt_D_RqDsply 0; +BA_ "UsedOnPgmDBC" SG_ 837 CcdMsgTxt_D_RqDsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 837 CcdMsgTxt_D_RqDsply 1; +BA_ "ECGUsedTxSignal" SG_ 885 BattULoChrg_D_RqOta 1; +BA_ "ECGUsedTxSignal" SG_ 885 VehStrtInhbt_T_Dsply 1; +BA_ "ECGUsedTxSignal" SG_ 885 VehStrtInhbt_D_Dsply 1; +BA_ "ECGUsedTxSignal" SG_ 885 VehOnRqstr_D_Stat 1; +BA_ "ECGUsedTxSignal" SG_ 885 VehStrtInhbt_D_RqCld 1; +BA_ "ECGUsedTxSignal" SG_ 885 VehOn_D_RqCld 1; +BA_ "ECGUsedTxSignal" SG_ 885 CanMsg375_No_Cnt 1; +BA_ "ECGUsedTxSignal" SG_ 885 CanMsg375_No_Crc 1; +BA_ "ECGUsedTxSignal" SG_ 885 OtaActv_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1150 LocationServices_1 1; +BA_ "GenSigSendType" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 3; +BA_ "U_P702_MY2021_Tx" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 1; +BA_ "ECGUsedRxSignal" SG_ 2612224016 PARSEDPushPCMtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 810 OBCCSerial_D_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 810 OBCCSerial_D_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 810 TlghtTest_D_RqArb 1; +BA_ "GenSigSendType" SG_ 810 TlghtTest_D_RqArb 3; +BA_ "ECGUsedTxSignal" SG_ 810 ChrgrPncSustn_B_Rq 1; +BA_ "GenSigStartValue" SG_ 810 ChrgrPncSustn_B_Rq 0; +BA_ "GenSigStartValueInteger" SG_ 810 ChrgrPncSustn_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; +BA_ "GenSigStartValue" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; +BA_ "WakeupSignal" SG_ 810 NtfyDrvTrgtDist_L_Rq 1; +BA_ "GenSigSendType" SG_ 810 NtfyDrvTrgtDist_L_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; +BA_ "GenSigStartValue" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; +BA_ "WakeupSignal" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 1; +BA_ "GenSigSendType" SG_ 810 NtfyDrvSocLvl1_Pc_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 810 PtRmtRprt_D_Stat 1; +BA_ "WakeupSignal" SG_ 810 PtRmtRprt_D_Stat 1; +BA_ "GenSigSendType" SG_ 810 PtRmtRprt_D_Stat 3; +BA_ "ECGUsedTxSignal" SG_ 810 ChrgrPncEnbl_D_Rq 1; +BA_ "GenSigStartValue" SG_ 810 ChrgrPncEnbl_D_Rq 3; +BA_ "GenSigStartValueInteger" SG_ 810 ChrgrPncEnbl_D_Rq 3; +BA_ "GenSigSendType" SG_ 810 ChrgrPncEnbl_D_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtDsply_B_StatArb 1; +BA_ "WakeupSignal" SG_ 810 ExtLghtDsply_B_StatArb 1; +BA_ "GenSigSendType" SG_ 810 ExtLghtDsply_B_StatArb 3; +BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtRight_D_RqOta 1; +BA_ "WakeupSignal" SG_ 810 ExtLghtRight_D_RqOta 1; +BA_ "GenSigSendType" SG_ 810 ExtLghtRight_D_RqOta 3; +BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtRear_D_RqOta 1; +BA_ "WakeupSignal" SG_ 810 ExtLghtRear_D_RqOta 1; +BA_ "GenSigSendType" SG_ 810 ExtLghtRear_D_RqOta 3; +BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtLeft_D_RqOta 1; +BA_ "WakeupSignal" SG_ 810 ExtLghtLeft_D_RqOta 1; +BA_ "GenSigSendType" SG_ 810 ExtLghtLeft_D_RqOta 3; +BA_ "ECGUsedTxSignal" SG_ 810 ExtLghtFront_D_RqOta 1; +BA_ "WakeupSignal" SG_ 810 ExtLghtFront_D_RqOta 1; +BA_ "GenSigSendType" SG_ 810 ExtLghtFront_D_RqOta 3; +BA_ "ECGUsedTxSignal" SG_ 550 PtWakeupActv1_B_Rq 1; +BA_ "WakeupSignal" SG_ 550 PtWakeupActv1_B_Rq 1; +BA_ "GenSigSendType" SG_ 550 PtWakeupActv1_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgPrflUpdate_B_Rq 1; +BA_ "GenSigSendType" SG_ 639 OfbChrgPrflUpdate_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgClearAll_B_Rq 1; +BA_ "GenSigSendType" SG_ 639 OfbChrgClearAll_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTTouch_D_Rq 1; +BA_ "GenSigSendType" SG_ 639 OfbChrgGoTTouch_D_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTPrcond_D_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTOn_D_Rq 1; +BA_ "GenSigStartValue" SG_ 639 OfbChrgGoTOn_D_Rq 2; +BA_ "GenSigStartValueInteger" SG_ 639 OfbChrgGoTOn_D_Rq 2; +BA_ "GenSigSendType" SG_ 639 OfbChrgGoTOn_D_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTMnte_D_Rq 1; +BA_ "MetaData" SG_ 639 OfbChrgGoTMnte_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 639 OfbChrgGoTMnte_D_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTHr_T_Rq 1; +BA_ "GenSigStartValue" SG_ 639 OfbChrgGoTHr_T_Rq 30; +BA_ "GenSigStartValueInteger" SG_ 639 OfbChrgGoTHr_T_Rq 30; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTExtHtr_D_Rq 1; +BA_ "GenSigSendType" SG_ 639 OfbChrgGoTExtHtr_D_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTElement_D_Rq 1; +BA_ "MetaData" SG_ 639 OfbChrgGoTElement_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 639 OfbChrgGoTElement_D_Rq 1; +BA_ "GenSigSendType" SG_ 639 OfbChrgGoTElement_D_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTDelete_B_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 639 OfbChrgGoTUpdate_B_Rq 1; +BA_ "GenSigSendType" SG_ 639 OfbChrgGoTUpdate_B_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgLocIdTrgt_No_Rq 1; +BA_ "MetaData" SG_ 530 OfbChrgLocIdTrgt_No_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 530 OfbChrgLocIdTrgt_No_Rq 1; +BA_ "GenSigSendType" SG_ 530 OfbChrgLocIdTrgt_No_Rq 3; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgToPcWknd_D_Actl 1; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgToPcWkdy_D_Actl 1; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgSetNow_D_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgSetDelete_B_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgPrflWknd_No_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgPrflWkdy_No_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 530 OfbChrgLocIdUns_B_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 1142 ConsTipV_No_Dsply 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1142 ConsTipV_No_Dsply 1; +BA_ "WakeupSignal" SG_ 817 DrTgateOpen_B_Rq 1; +BA_ "WakeupSignal" SG_ 817 DrTgateExtSwMde_B_Stat 1; +BA_ "WakeupSignal" SG_ 817 Remote_Device_Feedback 1; +BA_ "WakeupSignal" SG_ 817 Veh_Lock_Requestor 1; +BA_ "WakeupSignal" SG_ 817 R_Pwr_Sliding_Dr_Rqst 1; +BA_ "WakeupSignal" SG_ 817 Power_Liftgate_Rqst 1; +BA_ "WakeupSignal" SG_ 817 Veh_Lock_EvNum 1; +BA_ "WakeupSignal" SG_ 817 Power_Decklid_Rqst 1; +BA_ "WakeupSignal" SG_ 817 L_Pwr_Sliding_Dr_Rqst 1; +BA_ "WakeupSignal" SG_ 817 Keyfob_Pad_Msg_Count 1; +BA_ "WakeupSignal" SG_ 817 Veh_Lock_Status 1; +BA_ "GenSigStartValueInteger" SG_ 817 Veh_Lock_Status 1; +BA_ "GenSigStartValue" SG_ 817 Veh_Lock_Status 1; +BA_ "WakeupSignal" SG_ 817 ChildLck_D_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 817 ChildLck_D_Dsply 1; +BA_ "GenSigStartValue" SG_ 817 ChildLck_D_Dsply 1; +BA_ "WakeupSignal" SG_ 817 Lockmsgtxt_D_Rq 1; +BA_ "WakeupSignal" SG_ 817 LockInhibit 1; +BA_ "GenSigSendType" SG_ 878 DcacGfciTest_B_Rq 3; +BA_ "GenSigStartValue" SG_ 878 DcacOut_Pw_DsplyMx 0; +BA_ "GenSigStartValue" SG_ 878 DcacOut1_Pw_Dsply 0; +BA_ "GenSigStartValue" SG_ 878 DcacOut2_Pw_Dsply 0; +BA_ "GenSigSendType" SG_ 878 DcacHw_D_Confg 3; +BA_ "UsedOnPgmDBC" SG_ 878 DcacHw_D_Confg 1; +BA_ "GenSigStartValueInteger" SG_ 878 DcacHw_D_Confg 1; +BA_ "GenSigStartValue" SG_ 878 DcacHw_D_Confg 1; +BA_ "GenSigSendType" SG_ 878 DcacFaltMsgTxt_D_Rq 3; +BA_ "UsedOnPgmDBC" SG_ 878 DcacFaltMsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 878 DcacFaltMsgTxt_D_Rq 1; +BA_ "GenSigStartValue" SG_ 878 DcacFaltMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 878 DcacLoFuelMsgTxt_D_Rq 3; +BA_ "GenSigSendType" SG_ 878 DcacEngOnMsgTxt_D_Rq 3; +BA_ "GenSigSendType" SG_ 878 DcacElPw_D_Stat 3; +BA_ "UsedOnPgmDBC" SG_ 878 DcacElPw_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 878 DcacElPw_D_Stat 1; +BA_ "GenSigStartValue" SG_ 878 DcacElPw_D_Stat 1; +BA_ "GenSigSendType" SG_ 878 PwBedPnlEnbl_B_Rq 3; +BA_ "GenSigSendType" SG_ 878 DcacOn_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 878 DcacOn_B_Rq 1; +BA_ "GenSigSendType" SG_ 878 DcacSys_B_Falt 3; +BA_ "U_P702_MY2021_Tx" SG_ 878 DcacSys_B_Falt 1; +BA_ "GenSigSendType" SG_ 878 DcacLedCtl_D_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 878 DcacLedCtl_D_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 2611055832 PARSEDPhysGWM_ECGtoSODR 1; +BA_ "GenSigSendType" SG_ 2611055832 PARSEDPhysGWM_ECGtoSODR 3; +BA_ "ECGUsedTxSignal" SG_ 2611054808 PARSEDPhysGWM_ECGtoSODL 1; +BA_ "GenSigSendType" SG_ 2611054808 PARSEDPhysGWM_ECGtoSODL 3; +BA_ "ECGUsedTxSignal" SG_ 2611026136 PARSEDPhysGWM_ECGtoSODCMD 1; +BA_ "GenSigSendType" SG_ 2611026136 PARSEDPhysGWM_ECGtoSODCMD 3; +BA_ "ECGUsedTxSignal" SG_ 2611025112 PARSEDPhysGWM_ECGtoSODCMC 1; +BA_ "GenSigSendType" SG_ 2611025112 PARSEDPhysGWM_ECGtoSODCMC 3; +BA_ "ECGUsedTxSignal" SG_ 2610975960 PARSEDPhysGWM_ECGtoCCM 1; +BA_ "GenSigSendType" SG_ 2610975960 PARSEDPhysGWM_ECGtoCCM 3; +BA_ "ECGUsedTxSignal" SG_ 2610007256 OTAPhysGWM_ECGtoSODR 1; +BA_ "GenSigSendType" SG_ 2610007256 OTAPhysGWM_ECGtoSODR 3; +BA_ "ECGUsedTxSignal" SG_ 2610006232 OTAPhysGWM_ECGtoSODL 1; +BA_ "GenSigSendType" SG_ 2610006232 OTAPhysGWM_ECGtoSODL 3; +BA_ "ECGUsedTxSignal" SG_ 2609977560 OTAPhysGWM_ECGtoSODCMD 1; +BA_ "GenSigSendType" SG_ 2609977560 OTAPhysGWM_ECGtoSODCMD 3; +BA_ "ECGUsedTxSignal" SG_ 2609976536 OTAPhysGWM_ECGtoSODCMC 1; +BA_ "GenSigSendType" SG_ 2609976536 OTAPhysGWM_ECGtoSODCMC 3; +BA_ "ECGUsedTxSignal" SG_ 2609927384 OTAPhysGWM_ECGtoCCM 1; +BA_ "GenSigSendType" SG_ 2609927384 OTAPhysGWM_ECGtoCCM 3; +BA_ "ECGUsedRxSignal" SG_ 2611175523 PARSEDPhysSODRtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175523 PARSEDPhysSODRtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224099 PARSEDPhysSODR2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224099 PARSEDPhysSODR2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2611175522 PARSEDPhysSODLtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175522 PARSEDPhysSODLtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224098 PARSEDPhysSODL2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224098 PARSEDPhysSODL2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2611175494 PARSEDPhysSODCMDtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175494 PARSEDPhysSODCMDtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224070 PARSEDPhysSODCMD2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224070 PARSEDPhysSODCMD2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2611175493 PARSEDPhysSODCMCtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175493 PARSEDPhysSODCMCtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224069 PARSEDPhysSODCMC2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224069 PARSEDPhysSODCMC2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2611175445 PARSEDPhysCCMtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175445 PARSEDPhysCCMtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224021 PARSEDPhysCCM2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224021 PARSEDPhysCCM2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126947 OTAPhysSODRtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126947 OTAPhysSODRtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126946 OTAPhysSODLtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126946 OTAPhysSODLtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126918 OTAPhysSODCMDtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126918 OTAPhysSODCMDtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126917 OTAPhysSODCMCtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126917 OTAPhysSODCMCtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126869 OTAPhysCCMtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126869 OTAPhysCCMtoGWM_ECG 3; +BA_ "CrossOver_InfoCAN" SG_ 984 FeatConfigIpmaActl 1; +BA_ "CrossOver_InfoCAN" SG_ 984 FeatNoIpmaActl 1; +BA_ "GenSigStartValue" SG_ 984 PersIndexIpma_D_Actl 4; +BA_ "GenSigStartValueInteger" SG_ 984 PersIndexIpma_D_Actl 4; +BA_ "CrossOver_InfoCAN" SG_ 984 PersIndexIpma_D_Actl 1; +BA_ "GenSigSendType" SG_ 984 PersIndexIpma_D_Actl 3; +BA_ "U_P702_MY2021_Rx" SG_ 984 AhbcRampingV_D_Rq 1; +BA_ "GenSigSendType" SG_ 984 AhbcRampingV_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 984 LaActvStats_D_Dsply 1; +BA_ "GenSigSendType" SG_ 984 LaActvStats_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 984 LaDenyStats_B_Dsply 1; +BA_ "GenSigSendType" SG_ 984 LaDenyStats_B_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 984 LaHandsOff_D_Dsply 1; +BA_ "GenSigSendType" SG_ 984 LaHandsOff_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 984 CamraDefog_B_Req 1; +BA_ "GenSigSendType" SG_ 984 CamraDefog_B_Req 3; +BA_ "CrossOver_InfoCAN" SG_ 984 CamraStats_D_Dsply 1; +BA_ "GenSigSendType" SG_ 984 CamraStats_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 984 DasAlrtLvl_D_Dsply 1; +BA_ "GenSigSendType" SG_ 984 DasAlrtLvl_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 984 DasStats_D_Dsply 1; +BA_ "GenSigSendType" SG_ 984 DasStats_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 984 DasWarn_D_Dsply 1; +BA_ "GenSigSendType" SG_ 984 DasWarn_D_Dsply 3; +BA_ "GenSigSendType" SG_ 984 AhbHiBeam_D_Rq 3; +BA_ "GenSigSendType" SG_ 985 LdwChime_B_Rq 3; +BA_ "GenSigSendType" SG_ 985 TsrRegionTxt_D_Stat 3; +BA_ "GenSigSendType" SG_ 985 SblmPedCrossScnr_B_Stat 3; +BA_ "GenSigSendType" SG_ 985 LongCtrlEnbl_D_Rq 3; +BA_ "GenSigSendType" SG_ 985 SblmRndAbtScnr_B_Stat 3; +BA_ "GenSigSendType" SG_ 985 DasAlrtInfo_D_Dsply 3; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IaccVLim_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 985 IaccVLim_D_Rq 1; +BA_ "GenSigStartValue" SG_ 985 IaccVLim_D_Rq 254; +BA_ "GenSigStartValueInteger" SG_ 985 IaccVLim_D_Rq 254; +BA_ "GenSigSendType" SG_ 985 IaccVLim_D_Rq 3; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IaccVLimUnit_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 985 IaccVLimUnit_D_Rq 1; +BA_ "GenSigStartValue" SG_ 985 IaccVLimUnit_D_Rq 3; +BA_ "GenSigStartValueInteger" SG_ 985 IaccVLimUnit_D_Rq 3; +BA_ "GenSigSendType" SG_ 985 IaccVLimUnit_D_Rq 3; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IsaVLim_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 985 IsaVLim_D_Rq 1; +BA_ "GenSigStartValue" SG_ 985 IsaVLim_D_Rq 254; +BA_ "GenSigStartValueInteger" SG_ 985 IsaVLim_D_Rq 254; +BA_ "GenSigSendType" SG_ 985 IsaVLim_D_Rq 3; +BA_ "GenSigSendType" SG_ 985 SblmStopScnr_B_Stat 3; +BA_ "GenSigSendType" SG_ 985 SblmYieldScnr_B_Stat 3; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 985 IsaVLimUnit_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 985 IsaVLimUnit_D_Rq 1; +BA_ "GenSigSendType" SG_ 985 IsaVLimUnit_D_Rq 3; +BA_ "GenSigSendType" SG_ 985 AdbDividedRoad_B_Stat 3; +BA_ "GenSigSendType" SG_ 985 LcwaMsgTxt_D_Stat 3; +BA_ "GenSigSendType" SG_ 985 AdbDrvSide_B_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrDsplyOp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrDsplyOp_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrFeatNoRq 1; +BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrFeatNoRq 1; +BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrFeatConfigRq 1; +BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrFeatConfigRq 1; +BA_ "U_P702_MY2021_Rx" SG_ 992 MsgCntrPersIndex_D_Rq 1; +BA_ "GenSigStartValue" SG_ 992 MsgCntrPersIndex_D_Rq 4; +BA_ "GenSigStartValueInteger" SG_ 992 MsgCntrPersIndex_D_Rq 4; +BA_ "CrossOver_InfoCAN" SG_ 992 MsgCntrPersIndex_D_Rq 1; +BA_ "GenSigSendType" SG_ 2612019416 PARSEDPhysGWM_ECG2toPCM 3; +BA_ "ECGUsedTxSignal" SG_ 2612019416 PARSEDPhysGWM_ECG2toPCM 1; +BA_ "UsedOnPgmDBC" SG_ 943 VehVActlAdas_D_Qf 1; +BA_ "MetaData" SG_ 943 VehVActlAdas_D_Qf 1; +BA_ "GenSigStartValue" SG_ 943 VehVActlAdas_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 943 Veh_V_RqLsc 1; +BA_ "UsedOnPgmDBC" SG_ 943 Veh_V_ActlAdas 1; +BA_ "GenSigStartValue" SG_ 943 AdasLcDistToObj_L_Actl 4094; +BA_ "UsedOnPgmDBC" SG_ 515 PtIgnSwtch_No_Cs 1; +BA_ "MetaData" SG_ 515 PtIgnSwtch_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 515 PtIgnSwtch_No_Cnt 1; +BA_ "MetaData" SG_ 515 PtIgnSwtch_No_Cnt 1; +BA_ "GenSigSendType" SG_ 515 PtIgnSwtch_D_Stat 3; +BA_ "GenSigStartValue" SG_ 515 PtIgnSwtch_D_Stat 2; +BA_ "GenSigStartValueInteger" SG_ 1111 TrlrYawWActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 1111 TrlrYawWActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrYawWActl_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrYawWActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 1111 TrlrYaw_W_Actl 65534; +BA_ "GenSigStartValue" SG_ 1111 TrlrYaw_W_Actl 65534; +BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrYaw_W_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrYaw_W_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1111 TrlrHitYaw_AnRate_Actl 4094; +BA_ "GenSigStartValue" SG_ 1111 TrlrHitYaw_AnRate_Actl 4093; +BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrHitYaw_AnRate_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrHitYaw_AnRate_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrHitchYaw_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrHitchYaw_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1111 TrlrHitchYaw_An_Actl 4094; +BA_ "GenSigStartValue" SG_ 1111 TrlrHitchYaw_An_Actl 4093; +BA_ "U_P702_MY2021_Rx" SG_ 1111 TrlrHitchYaw_An_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1111 TrlrHitchYaw_An_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1106 TrlrSnsId_No_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1106 TrlrSnsId_No_Actl 1; +BA_ "GenSigStartValue" SG_ 982 LatCtlCrv_NoRate2_Actl 1024; +BA_ "UsedOnPgmDBC" SG_ 982 LatCtlPath_No_Cnt 1; +BA_ "ContentDependant" SG_ 982 LatCtlPath_No_Cnt 1; +BA_ "MetaData" SG_ 982 LatCtlPath_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 982 LatCtlPath_No_Cs 1; +BA_ "ContentDependant" SG_ 982 LatCtlPath_No_Cs 1; +BA_ "MetaData" SG_ 982 LatCtlPath_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 982 HandsOffCnfm_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 982 HandsOffCnfm_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlRampType_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlRampType_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlPrecision_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlPrecision_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 982 LatCtlPathOffst_L_Actl 512; +BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlPathOffst_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlPathOffst_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 982 LatCtlPath_An_Actl 1000; +BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlPath_An_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlPath_An_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 982 LatCtlCurv_No_Actl 1000; +BA_ "U_CX727_MY2021_Rx" SG_ 982 LatCtlCurv_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 982 LatCtlCurv_No_Actl 1; +BA_ "GenSigSendType" SG_ 1985 TesterPhysicalReqCMR_DSMC 3; +BA_ "GenSigSendType" SG_ 1993 TesterPhysicalResCMR_DSMC 3; +BA_ "MetaData" SG_ 1104 DrvEngageLevel_No_Cs 1; +BA_ "ContentDependant" SG_ 1104 DrvEngageLevel_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 1104 DrvEngageLevel_No_Cs 1; +BA_ "MetaData" SG_ 1104 DrvEngageLevel_No_Cnt 1; +BA_ "ContentDependant" SG_ 1104 DrvEngageLevel_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 1104 DrvEngageLevel_No_Cnt 1; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_GWOnBoardTester 255; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_GWNMProxY 255; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_GWNMProxY 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_GWNMProxY 255; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserved 255; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserved 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserved 255; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserve4 255; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserve4 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserve4 255; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserve3 255; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserve3 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserve3 255; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMReserve2 255; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMReserve2 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMReserve2 255; +BA_ "GenSigStartValue" SG_ 1503 CMR_DSMC_AutoSarNMNodeId 223; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMNodeId 1; +BA_ "GenSigStartValueInteger" SG_ 1503 CMR_DSMC_AutoSarNMNodeId 222; +BA_ "ContentDependant" SG_ 1503 CMR_DSMC_AutoSarNMControl 1; +BA_ "ECGUsedTxSignal" SG_ 2610995416 PARSEDPhysGWM_ECGtoABS 1; +BA_ "GenSigSendType" SG_ 2610995416 PARSEDPhysGWM_ECGtoABS 3; +BA_ "ECGUsedTxSignal" SG_ 2612043992 PARSEDPhysGWM_ECG2toABS 1; +BA_ "GenSigSendType" SG_ 2612043992 PARSEDPhysGWM_ECG2toABS 3; +BA_ "ECGUsedTxSignal" SG_ 2609946840 OTAPhysGWM_ECGtoABS 1; +BA_ "GenSigSendType" SG_ 2609946840 OTAPhysGWM_ECGtoABS 3; +BA_ "ECGUsedRxSignal" SG_ 2611175464 PARSEDPhysABStoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175464 PARSEDPhysABStoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224040 PARSEDPhysABS2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224040 PARSEDPhysABS2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126888 OTAPhysABStoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126888 OTAPhysABStoGWM_ECG 3; +BA_ "ECGUsedTxSignal" SG_ 2610988248 PARSEDPhysGWM_ECGtoIPMA 1; +BA_ "ECGUsedTxSignal" SG_ 2609939672 OTAPhysGWM_ECGtoIPMA 1; +BA_ "GenSigSendType" SG_ 2609939672 OTAPhysGWM_ECGtoIPMA 3; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1114 TrailCtlSwtch_B_Stat2 1; +BA_ "U_P702_MY2021_Rx" SG_ 1114 TrailCtlSwtch_B_Stat2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1116 TrlrAidSetup_D2_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1116 TrlrAidSetup_D2_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1116 TrlrAidEnbl_D2_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1116 TrlrAidEnbl_D2_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1116 TrlrTrgtToBmpr_L_Actl 0; +BA_ "U_P702_MY2021_Rx" SG_ 1116 TrlrIdType_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1116 TrlrIdType_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1116 TrlrBallToBmpr_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1116 TrlrAxleToBmpr_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1116 TrlrAnOffst_An_Mem 0; +BA_ "GenSigStartValueInteger" SG_ 1116 TrlrTrgtOffst_L_Actl 0; +BA_ "ECGUsedRxSignal" SG_ 2611175457 PARSEDPhysIPMAtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175457 PARSEDPhysIPMAtoGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2612224033 PARSEDPhysIPMA2toGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612224033 PARSEDPhysIPMA2toGWM_ECG 3; +BA_ "ECGUsedRxSignal" SG_ 2610126881 OTAPhysIPMAtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126881 OTAPhysIPMAtoGWM_ECG 3; +BA_ "UsedOnPgmDBC" SG_ 1085 ULoRgenTestMde_B_Stat 1; +BA_ "ContentDependant" SG_ 1085 ULoRgenTestMde_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 ULoRgenTestMde_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 ULoRgenTestMde_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoOvrTe_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoOvrTe_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoOvrTe_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoFalt_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoFalt_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoFalt_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoDcnnt_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoDcnnt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoDcnnt_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULo_Pc_Mx 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULo_Pc_Mx 1; +BA_ "UsedOnPgmDBC" SG_ 1085 PwSrcULoComm_B_Falt 1; +BA_ "ContentDependant" SG_ 1085 PwSrcULoComm_B_Falt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULoComm_B_Falt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULoComm_B_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1085 PwSrcULo_I_Mx 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULo_I_Mx 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULo_I_Mx 1; +BA_ "U_P702_MY2021_Rx" SG_ 1085 PwSrcULo_I_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1085 PwSrcULo_I_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1085 PwSrcULo_I_Actl 1; +BA_ "GenSigStartValue" SG_ 981 AdbBrdrTop_An_Rq 254; +BA_ "GenSigStartValue" SG_ 981 AdbBrdrRight_L_Stat 510; +BA_ "GenSigStartValue" SG_ 981 AdbBrdrRight_An_Rq 1022; +BA_ "GenSigStartValue" SG_ 981 AdbBrdrLeft_L_Stat 510; +BA_ "GenSigStartValue" SG_ 981 AdbBrdrLeft_An_Rq 1022; +BA_ "GenSigStartValue" SG_ 981 AdbBrdrBottom_An_Rq 62; +BA_ "U_P702_MY2021_Rx" SG_ 791 EngAirFilt_B_RqReset 1; +BA_ "CrossOver_InfoCAN" SG_ 791 GpsElMdeSel_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 791 LongTermReset_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 791 DrvEffLvl_No_Stat 1; +BA_ "ECGUsedTxSignal" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 1; +BA_ "U_P702_MY2021_Rx" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 1; +BA_ "GenSigSendType" SG_ 2610970840 PARSEDPhysGWM_ECGtoPCM 3; +BA_ "ECGUsedTxSignal" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 1; +BA_ "U_P702_MY2021_Rx" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 1; +BA_ "GenSigSendType" SG_ 2609922264 OTAPhysGWM_ECGtoPCM 3; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoStat_D_Qlty 1; +BA_ "GenSigStartValue" SG_ 868 BattRgenLoStat_D_Qlty 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoSoc_Pc_Actl 1; +BA_ "GenSigStartValue" SG_ 868 BattRgenLoSoc_Pc_Actl 50; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoPulse_U_Pred 1; +BA_ "GenSigStartValue" SG_ 868 BattRgenLoPulse_U_Pred 216; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoPrtct_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoDChrg_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoDchrg_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoChrg_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLoChrg_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLo_T_Est 1; +BA_ "U_P702_MY2021_Rx" SG_ 868 BattRgenLo_B_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLoBalnc_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_Te_Hi 1; +BA_ "GenSigStartValue" SG_ 867 BattRgenLo_Te_Hi 45; +BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_Te_Actl 1; +BA_ "GenSigStartValue" SG_ 867 BattRgenLo_Te_Actl 85; +BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_R_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_AhRide_Actl 1; +BA_ "GenSigStartValue" SG_ 867 BattRgenLo_AhRide_Actl 12800; +BA_ "U_P702_MY2021_Rx" SG_ 867 BattRgenLo_Ah_Actl 1; +BA_ "GenSigStartValue" SG_ 867 BattRgenLo_Ah_Actl 50; +BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoOpen_U_Actl 1; +BA_ "GenSigStartValue" SG_ 866 BattRgenLoOpen_U_Actl 180; +BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoDchrg_U_Mn 1; +BA_ "GenSigStartValue" SG_ 866 BattRgenLoDchrg_U_Mn 280; +BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoDchrg_I_Mx 1; +BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoChrg_U_Mx 1; +BA_ "GenSigStartValue" SG_ 866 BattRgenLoChrg_U_Mx 96; +BA_ "U_P702_MY2021_Rx" SG_ 866 BattRgenLoChrg_I_Mx 1; +BA_ "U_P702_MY2021_Rx" SG_ 865 BattRgenLo_U_Actl 1; +BA_ "GenSigStartValue" SG_ 865 BattRgenLo_U_Actl 768; +BA_ "U_P702_MY2021_Rx" SG_ 865 BattRgenLo_I_Actl 1; +BA_ "GenSigStartValue" SG_ 865 BattRgenLo_I_Actl 32768; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 1; +BA_ "U_P702_MY2021_Tx" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 1; +BA_ "ECGUsedRxSignal" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2611175440 PARSEDPhysPCMtoGWM_ECG 3; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 1; +BA_ "U_P702_MY2021_Tx" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 1; +BA_ "ECGUsedRxSignal" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126864 OTAPhysPCMtoGWM_ECG 3; +BA_ "GenSigSendType" SG_ 2611175441 PARSEDPhysHPCMtoGWM_ECG 3; +BA_ "GenSigSendType" SG_ 2612224017 PARSEDPhysHPCM2toGWM_ECG 3; +BA_ "U_P702_MY2021_Tx" SG_ 2610126865 OTAPhysHPCMtoGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610126865 OTAPhysHPCMtoGWM_ECG 3; +BA_ "U_P702_MY2021_Tx" SG_ 1679 UUDTSOBDMCResponse4 1; +BA_ "UsedOnPgmDBC" SG_ 1679 UUDTSOBDMCResponse4 1; +BA_ "GenSigSendType" SG_ 1679 UUDTSOBDMCResponse4 3; +BA_ "U_P702_MY2021_Tx" SG_ 1678 UUDTSOBDMCResponse3 1; +BA_ "UsedOnPgmDBC" SG_ 1678 UUDTSOBDMCResponse3 1; +BA_ "GenSigSendType" SG_ 1678 UUDTSOBDMCResponse3 3; +BA_ "U_P702_MY2021_Tx" SG_ 1677 UUDTSOBDMCResponse2 1; +BA_ "UsedOnPgmDBC" SG_ 1677 UUDTSOBDMCResponse2 1; +BA_ "GenSigSendType" SG_ 1677 UUDTSOBDMCResponse2 3; +BA_ "U_P702_MY2021_Tx" SG_ 1676 UUDTSOBDMCResponse1 1; +BA_ "UsedOnPgmDBC" SG_ 1676 UUDTSOBDMCResponse1 1; +BA_ "GenSigSendType" SG_ 1676 UUDTSOBDMCResponse1 3; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved4 255; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved3 255; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved2 255; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMReserved1 255; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_AutoSarNMNodeId 165; +BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_AutoSarNMNodeId 165; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1445 SOBDMC_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_AutoSarNMControl 1; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1445 SOBDMC_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_GWOnBoardTester 255; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1445 SOBDMC_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1445 SOBDMC_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1445 SOBDMC_GWNMProxy 255; +BA_ "U_P702_MY2021_Tx" SG_ 1445 SOBDMC_GWNMProxy 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1144 WakeAlarm0_T_Rq 1; +BA_ "GenSigStartValue" SG_ 1144 WakeAlarm0_T_Rq 32767; +BA_ "GenSigStartValueInteger" SG_ 1144 WakeAlarm0_T_Rq 32767; +BA_ "U_CX727_MY2021_Tx" SG_ 1144 WakeAlarm0_B_Typ 1; +BA_ "GenSigSendType" SG_ 1144 WakeAlarm0_B_Typ 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1144 PreCondBatt_B_Actl 1; +BA_ "GenSigSendType" SG_ 1144 PreCondBatt_B_Actl 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1144 HtrnDcdcDis_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1144 HtrnDcdcDis_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 HtrnDcdcDis_B_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1144 ChrgNowEvnt_B_Stat 1; +BA_ "GenSigSendType" SG_ 1144 ChrgNowEvnt_B_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1144 CabinDrvSustn_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1144 CabinDrvSustn_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 CabinDrvSustn_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1144 BattChrgTrgtSoC_D_Rq 1; +BA_ "GenSigSendType" SG_ 1144 CabnEvapSovFront_B_Rq 3; +BA_ "WakeupSignal" SG_ 1144 CabnEvapSovFront_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 CabnEvapSovFront_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 HeatCoreSovRear_B_Rq 3; +BA_ "WakeupSignal" SG_ 1144 HeatCoreSovRear_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 HeatCoreSovRear_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 BattChlrSov_B_Rq 3; +BA_ "WakeupSignal" SG_ 1144 BattChlrSov_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 BattChlrSov_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 CabnEvapSovRear_B_Rq 3; +BA_ "WakeupSignal" SG_ 1144 CabnEvapSovRear_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 CabnEvapSovRear_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 BrkAppl_D_RqPt 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1144 BrkAppl_D_RqPt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1144 BrkAppl_D_RqPt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 BrkAppl_D_RqPt 1; +BA_ "GenSigSendType" SG_ 1144 HtrnCnnctPwr_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1144 HtrnCnnctPwr_B_Stat 1; +BA_ "GenSigSendType" SG_ 1144 PtcHtr_D_Stat 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1144 PtcHtr_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1144 PtcHtr_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 PtcHtr_D_Stat 1; +BA_ "GenSigSendType" SG_ 1144 HtrnClntFlw_D_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1144 HtrnClntFlw_D_Rq 1; +BA_ "GenSigSendType" SG_ 1144 BattTracDrvSustn_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1144 BattTracDrvSustn_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1144 BattTracDrvSustn_B_Rq 1; +BA_ "GenSigSendType" SG_ 1144 BattTracClntVlv_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1144 BattTracClntVlv_B_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1141 OfbChrgSetSync_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1141 OfbChrgSetSync_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1141 PtRmtRprt_D_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 1141 PtRmtRprt_D_Rq 1; +BA_ "WakeupSignal" SG_ 1141 PtRmtRprt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1141 MtrTrac2_Tq_Actl 4095; +BA_ "GenSigStartValue" SG_ 1141 MtrTrac2_Tq_Actl 4095; +BA_ "U_P702_MY2021_Tx" SG_ 1141 MtrTrac2_Tq_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1141 MtrTrac2_Tq_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1141 NtfctnConflict1_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1141 NtfctnConflict1_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1140 RgenEvntLvl_Pc_Dsply 1; +BA_ "GenSigStartValue" SG_ 1140 RgenEvntLvl_Pc_Dsply 1022; +BA_ "GenSigStartValueInteger" SG_ 1140 RgenEvntLvl_Pc_Dsply 1023; +BA_ "U_CX727_MY2021_Tx" SG_ 1140 BrkEvntComplt_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1140 PreCondStat_D_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1140 PreCondStat_D_Dsply 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1139 ActChrgStrtYr_No2_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtYr_No2_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrtYr_No2_Actl 0; +BA_ "U_P702_MY2021_Tx" SG_ 1139 BattChrgTrgtLMax_T_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtYr_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrtYr_No_Actl 0; +BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtYr_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtMin_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtMin_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtHr_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtHr_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrtDay_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1139 ActChrgStrtDay_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrtDay_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrtDay_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1139 ActChrgStrMnth_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1139 ActChrgStrMnth_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1139 ActChrgStrMnth_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1139 ActChrgStrMnth_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndYr_No2_Actl 0; +BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndYr_No2_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1138 ActChrgEndYr_No2_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1138 BattChrgTrgtLMin_T_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndYr_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndYr_No_Actl 0; +BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndYr_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndMnth_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1138 ActChrgEndMnth_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndMnth_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndMnth_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndMin_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndMin_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndHr_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndHr_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1138 ActChrgEndDay_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1138 ActChrgEndDay_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1138 ActChrgEndDay_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1138 ActChrgEndDay_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 Mtr2Aout_W_ActlMntr 1; +BA_ "GenSigStartValue" SG_ 1089 Mtr2Aout_W_ActlMntr 1023; +BA_ "GenSigStartValueInteger" SG_ 1089 Mtr2Aout_W_ActlMntr 1023; +BA_ "ECGUsedRxSignal" SG_ 1089 Mtr2Aout_W_ActlMntr 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 Inv1_Te_Actl 1; +BA_ "GenSigStartValue" SG_ 1089 Inv1_Te_Actl 254; +BA_ "GenSigStartValueInteger" SG_ 1089 Inv1_Te_Actl 254; +BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2Coil_Te_Actl 1; +BA_ "GenSigStartValue" SG_ 1089 MtrTrac2Coil_Te_Actl 254; +BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2Coil_Te_Actl 254; +BA_ "ECGUsedRxSignal" SG_ 1089 MtrTrac2Coil_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2_U_Actl 1; +BA_ "GenSigStartValue" SG_ 1089 MtrTrac2_U_Actl 1023; +BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2_U_Actl 1023; +BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2Falt_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2TeAlrm_B_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1089 MtrTrac2TeAlrm_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 Mtr2CntlTeAlrm_B_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1089 Mtr2CntlTeAlrm_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2Inv_Te_Actl 1; +BA_ "GenSigStartValue" SG_ 1089 MtrTrac2Inv_Te_Actl 214; +BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2Inv_Te_Actl 214; +BA_ "ECGUsedRxSignal" SG_ 1089 MtrTrac2Inv_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1089 MtrTrac2_I_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1089 MtrTrac2_I_Actl 10000; +BA_ "U_CX727_MY2021_Tx" SG_ 1088 ChrgTMatch_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1088 ChrgStat_D2_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1088 ChrgStat_D2_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondRecirc_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondMode2_D_Rq 1; +BA_ "ContentDependant" SG_ 1088 HvacPrecondMode2_D_Rq 1; +BA_ "WakeupSignal" SG_ 1088 HvacPrecondMode2_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondBlwr2_D_Rq 1; +BA_ "ContentDependant" SG_ 1088 HvacPrecondBlwr2_D_Rq 1; +BA_ "WakeupSignal" SG_ 1088 HvacPrecondBlwr2_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecondAC_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1088 HvacPrecond_Te_Rq 1; +BA_ "GenSigStartValue" SG_ 1088 HvacPrecond_Te_Rq 2; +BA_ "GenSigStartValueInteger" SG_ 1088 HvacPrecond_Te_Rq 2; +BA_ "U_P702_MY2021_Tx" SG_ 1088 BattChrgInhbt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1040 ElCmprEnbl_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1040 ElCmprEnbl_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1040 ElCmprEnbl_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1040 ElCmpr_N_Rq 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTElement_B_Dsply 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTElement_B_Dsply 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1016 ChrgGoTElement_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgLocIdCurnt_D_Uns 1; +BA_ "GenSigSendType" SG_ 1016 ChrgLocIdCurnt_D_Uns 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgLocIdCurnt_D_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTTouchEnbl_B_Rq 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTTouchEnbl_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTTouch_B_Stat 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTTouch_B_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTTouch_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTPrcond_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTPrcond_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTNext_D_Stat 1; +BA_ "MetaData" SG_ 1016 ChrgGoTNext_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1016 ChrgGoTNext_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1016 ChrgGoTNext_D_Stat 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTNext_D_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTNext_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTMnte_D_Stat 1; +BA_ "MetaData" SG_ 1016 ChrgGoTMnte_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1016 ChrgGoTMnte_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1016 ChrgGoTMnte_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTMnte_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTHr_T_Stat 1; +BA_ "GenSigStartValue" SG_ 1016 ChrgGoTHr_T_Stat 30; +BA_ "GenSigStartValueInteger" SG_ 1016 ChrgGoTHr_T_Stat 30; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTHr_T_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTExtHtrEnbl_B_Rq 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTExtHtrEnbl_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTExtHtr_B_Stat 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTExtHtr_B_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTExtHtr_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTElement_D_Stat 1; +BA_ "MetaData" SG_ 1016 ChrgGoTElement_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1016 ChrgGoTElement_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1016 ChrgGoTElement_D_Stat 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTElement_D_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTElement_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1016 ChrgGoTAllOn_B_Stat 1; +BA_ "GenSigSendType" SG_ 1016 ChrgGoTAllOn_B_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1016 ChrgGoTAllOn_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgToPcWkndSav_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1013 ChrgToPcWkndSav_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgToPcWkndSav_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgToPcWkdySav_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1013 ChrgToPcWkdySav_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgToPcWkdySav_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgProgIdSaved_D_Stat 1; +BA_ "MetaData" SG_ 1013 ChrgProgIdSaved_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1013 ChrgProgIdSaved_D_Stat 1; +BA_ "GenSigSendType" SG_ 1013 ChrgProgIdSaved_D_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgProgIdSaved_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgNowEnbl_B_Saved 1; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgNowEnbl_B_Saved 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgLocIdUnsAck_B_Stat 1; +BA_ "GenSigSendType" SG_ 1013 ChrgLocIdUnsAck_B_Stat 3; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgLocIdUnsAck_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgLocIdCurnt_D_Sav 1; +BA_ "MetaData" SG_ 1013 ChrgLocIdCurnt_D_Sav 1; +BA_ "GenSigSendType" SG_ 1013 ChrgLocIdCurnt_D_Sav 3; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgLocIdCurnt_D_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgPrflWknd_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgPrflWknd_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1013 ChrgPrflWkdy_No_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 1013 ChrgPrflWkdy_No_Actl 1; +BA_ "GenSigSendType" SG_ 1012 ChrgNowCurnt_B_Dsply 3; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgNowCurnt_B_Dsply 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1012 ChrgNowCurnt_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgNowCurnt_B_Dsply 1; +BA_ "GenSigSendType" SG_ 1012 ChrgLocSaved_B_Dsply 3; +BA_ "UsedOnPgmDBC" SG_ 1012 ChrgLocSaved_B_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocSaved_B_Dsply 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1012 ChrgLocSaved_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocSaved_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLongPostv_B_Sav 1; +BA_ "UsedOnPgmDBC" SG_ 1012 ChrgLocLongPostv_B_Sav 1; +BA_ "CrossOver_InfoCAN" SG_ 1012 ChrgLocLongPostv_B_Sav 1; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLongPostv_B_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLongFrct_An_Sav 1; +BA_ "GenSigStartValue" SG_ 1012 ChrgLocLongFrct_An_Sav 1048575; +BA_ "GenSigStartValueInteger" SG_ 1012 ChrgLocLongFrct_An_Sav 1048575; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLongFrct_An_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLongDeg_An_Sav 1; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLongDeg_An_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLattPostv_B_Sav 1; +BA_ "UsedOnPgmDBC" SG_ 1012 ChrgLocLattPostv_B_Sav 1; +BA_ "CrossOver_InfoCAN" SG_ 1012 ChrgLocLattPostv_B_Sav 1; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLattPostv_B_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLattFrct_An_Sav 1; +BA_ "GenSigStartValue" SG_ 1012 ChrgLocLattFrct_An_Sav 1048575; +BA_ "GenSigStartValueInteger" SG_ 1012 ChrgLocLattFrct_An_Sav 1048575; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLattFrct_An_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocLattDeg_An_Sav 1; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocLattDeg_An_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1012 ChrgLocId_D_Sav 1; +BA_ "GenSigSendType" SG_ 1012 ChrgLocId_D_Sav 3; +BA_ "ECGUsedRxSignal" SG_ 1012 ChrgLocId_D_Sav 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLongPostv_B_Uns 1; +BA_ "UsedOnPgmDBC" SG_ 1011 ChrgLocLongPostv_B_Uns 1; +BA_ "CrossOver_InfoCAN" SG_ 1011 ChrgLocLongPostv_B_Uns 1; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLongPostv_B_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLongFrct_An_Uns 1; +BA_ "GenSigStartValue" SG_ 1011 ChrgLocLongFrct_An_Uns 1048575; +BA_ "GenSigStartValueInteger" SG_ 1011 ChrgLocLongFrct_An_Uns 1048575; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLongFrct_An_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLongDeg_An_Uns 1; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLongDeg_An_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLattPostv_B_Uns 1; +BA_ "UsedOnPgmDBC" SG_ 1011 ChrgLocLattPostv_B_Uns 1; +BA_ "CrossOver_InfoCAN" SG_ 1011 ChrgLocLattPostv_B_Uns 1; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLattPostv_B_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLattFrct_An_Uns 1; +BA_ "GenSigStartValue" SG_ 1011 ChrgLocLattFrct_An_Uns 1048575; +BA_ "GenSigStartValueInteger" SG_ 1011 ChrgLocLattFrct_An_Uns 1048575; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLattFrct_An_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocLattDeg_An_Uns 1; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocLattDeg_An_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 1011 ChrgLocId_D_Uns 1; +BA_ "GenSigSendType" SG_ 1011 ChrgLocId_D_Uns 3; +BA_ "ECGUsedRxSignal" SG_ 1011 ChrgLocId_D_Uns 1; +BA_ "U_P702_MY2021_Tx" SG_ 871 BattElecPerf_D_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 871 BattElecPerf_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 871 BattChrgTrgtLPt_T_Est 1; +BA_ "ECGUsedRxSignal" SG_ 871 BattChrgTrgtLPt_T_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 871 BattChrgTrgSocPt_T_Est 1; +BA_ "ECGUsedRxSignal" SG_ 871 BattChrgTrgSocPt_T_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 871 BattChrgCmpltPt_T_Est 1; +BA_ "ECGUsedRxSignal" SG_ 871 BattChrgCmpltPt_T_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 786 RgenTrip_Pc_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 786 RgenTrip_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 786 RgenTrip_Pc_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 786 RgenTrip_L_Dsply 1; +BA_ "GenSigStartValue" SG_ 786 RgenTrip_L_Dsply 65535; +BA_ "GenSigStartValueInteger" SG_ 786 RgenTrip_L_Dsply 65535; +BA_ "CrossOver_InfoCAN" SG_ 786 RgenTrip_L_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 786 RgenTrip_L_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 786 ChrgStat_D_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 786 ChrgStat_D_Dsply 1; +BA_ "UsedOnPgmDBC" SG_ 72 immoTarget2Status 1; +BA_ "UsedOnPgmDBC" SG_ 72 immoTarget2Data 1; +BA_ "UsedOnPgmDBC" SG_ 72 immoTarget2Cmd 1; +BA_ "U_P702_MY2021_Rx" SG_ 912 CabnEvapSovFront_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 912 BattChlrSov_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 912 BattTracClntVlv_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 874 BattTracShrtGrnd_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 874 BattTracShrtBatt_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 874 BattTracOpnCirct_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 874 BattChlrShrtGrnd_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 874 BattChlrShrtBatt_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 874 BattChlrOpnCirct_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 651 TelematicsSrvc_D_St 1; +BA_ "ECGUsedTxSignal" SG_ 651 OfbChrgSetSync_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgToPcWknd_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgToPcWknd_D_Actl 1; +BA_ "ECGUsedTxSignal" SG_ 529 OnbChrgToPcWknd_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgToPcWkdy_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgToPcWkdy_D_Actl 1; +BA_ "ECGUsedTxSignal" SG_ 529 OnbChrgToPcWkdy_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgSetNow_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgSetDelete_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgSetDelete_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgPrflWknd_No_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgPrflWkdy_No_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgPrflUpdate_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgPrflUpdate_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgLocIdUns_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgLocIdUns_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; +BA_ "MetaData" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 529 OnbChrgLocIdTrgt_No_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 66 immoControlData_T2 1; +BA_ "ContentDependant" SG_ 66 immoControlData_T2 1; +BA_ "U_P702_MY2021_Rx" SG_ 66 immoControlCmd_T2 1; +BA_ "ContentDependant" SG_ 66 immoControlCmd_T2 1; +BA_ "U_P702_MY2021_Rx" SG_ 2610971864 PARSEDPhysGWM_ECGtoHPCM 1; +BA_ "GenSigSendType" SG_ 2610971864 PARSEDPhysGWM_ECGtoHPCM 3; +BA_ "ECGUsedTxSignal" SG_ 2610971864 PARSEDPhysGWM_ECGtoHPCM 1; +BA_ "ECGUsedTxSignal" SG_ 2612002008 PARSEDFuncGWM_ECG 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2612002008 PARSEDFuncGWM_ECG 1; +BA_ "U_P702_MY2021_Rx" SG_ 2612002008 PARSEDFuncGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2612002008 PARSEDFuncGWM_ECG 3; +BA_ "U_P702_MY2021_Rx" SG_ 2609923288 OTAPhysGWM_ECGtoHPCM 1; +BA_ "GenSigSendType" SG_ 2609923288 OTAPhysGWM_ECGtoHPCM 3; +BA_ "ECGUsedTxSignal" SG_ 2609923288 OTAPhysGWM_ECGtoHPCM 1; +BA_ "ECGUsedTxSignal" SG_ 2610953432 OTAFuncGWM_ECG 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2610953432 OTAFuncGWM_ECG 1; +BA_ "U_P702_MY2021_Rx" SG_ 2610953432 OTAFuncGWM_ECG 1; +BA_ "GenSigSendType" SG_ 2610953432 OTAFuncGWM_ECG 3; +BA_ "GenSigSendType" SG_ 2022 TesterPhysicalReqSOBDMC 3; +BA_ "U_P702_MY2021_Rx" SG_ 2022 TesterPhysicalReqSOBDMC 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Vdop 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Speed 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Sat_num_in_view 1; +BA_ "U_P702_MY2021_Rx" SG_ 1124 GPS_Sat_num_in_view 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_MSL_altitude 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Heading 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_Hdop 1; +BA_ "CrossOver_InfoCAN" SG_ 1124 GPS_dimension 1; +BA_ "U_P702_MY2021_Rx" SG_ 1124 GPS_dimension 1; +BA_ "U_P702_MY2021_Rx" SG_ 1119 CoolFanDcdc_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1119 DcdcClntFlw_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkYr_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkScnd_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkMnte_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkHr_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 132 GlblClkDay_No_Actl 1; +BA_ "GenSigSendType" SG_ 1990 TesterPhysicalReqSODR 3; +BA_ "GenSigSendType" SG_ 1892 TesterPhysicalReqCCM 3; +BA_ "GenSigSendType" SG_ 1798 TesterPhysicalReqIPMA 3; +BA_ "GenSigStartValueInteger" SG_ 1123 GpsUtcYr_No_Actl 0; +BA_ "CrossOver_InfoCAN" SG_ 1123 GpsUtcYr_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1123 GpsUtcMnth_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1123 GpsUtcMnth_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GpsUtcMnth_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1123 GpsUtcDay_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1123 GpsUtcDay_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GpsUtcDay_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_UTC_seconds 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_UTC_minutes 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_UTC_hours 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_Pdop 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_Compass_direction 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 GPS_Actual_vs_Infer_pos 1; +BA_ "CrossOver_InfoCAN" SG_ 1123 Gps_B_Falt 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GpsHsphLongEast_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GpsHsphLattSth_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Longitude_Minutes 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Longitude_Min_dec 1; +BA_ "GenSigStartValueInteger" SG_ 1122 GPS_Longitude_Degrees 179; +BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Longitude_Degrees 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Latitude_Minutes 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Latitude_Min_dec 1; +BA_ "CrossOver_InfoCAN" SG_ 1122 GPS_Latitude_Degrees 1; +BA_ "GenSigStartValue" SG_ 1003 PersNoPos_D_Actl 4; +BA_ "GenSigStartValueInteger" SG_ 1003 PersNoPos_D_Actl 4; +BA_ "CrossOver_InfoCAN" SG_ 1003 PersNoPos_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1003 PersSetupRestr_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1003 PersSetupAccessCtrl 1; +BA_ "CrossOver_InfoCAN" SG_ 1003 PersSetup_No_Actl 1; +BA_ "GenSigStartValue" SG_ 1003 PersConflict_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1003 PersConflict_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1003 PersConflict_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1003 AssocConfirm_D_Actl 1; +BA_ "MetaData" SG_ 1003 RecallEvent_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 1003 RecallEvent_No_Cnt 1; +BA_ "GenSigStartValue" SG_ 1003 PersNo_D_Actl 4; +BA_ "GenSigStartValueInteger" SG_ 1003 PersNo_D_Actl 4; +BA_ "CrossOver_InfoCAN" SG_ 1003 PersNo_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 994 PersStore_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 994 Pers4OptIn_B_Stats 1; +BA_ "WakeupSignal" SG_ 994 Pers4OptIn_B_Stats 1; +BA_ "CrossOver_InfoCAN" SG_ 994 Pers3OptIn_B_Stats 1; +BA_ "WakeupSignal" SG_ 994 Pers3OptIn_B_Stats 1; +BA_ "CrossOver_InfoCAN" SG_ 994 Pers2OptIn_B_Stats 1; +BA_ "WakeupSignal" SG_ 994 Pers2OptIn_B_Stats 1; +BA_ "CrossOver_InfoCAN" SG_ 994 Pers1OptIn_B_Stats 1; +BA_ "WakeupSignal" SG_ 994 Pers1OptIn_B_Stats 1; +BA_ "GenSigStartValue" SG_ 994 CtrStkPersIndex_D_Actl 4; +BA_ "GenSigStartValueInteger" SG_ 994 CtrStkPersIndex_D_Actl 4; +BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkPersIndex_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkFeatNoActl 1; +BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkFeatConfigActl 1; +BA_ "CrossOver_InfoCAN" SG_ 994 CtrStkDsplyOp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 778 PrkAidFront_D_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 778 Cta_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 778 Cta_D_Rq 1; +BA_ "GenSigStartValue" SG_ 778 Cta_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 778 PrkAidRear_D_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 778 Sod_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 778 Sod_D_Rq 2; +BA_ "GenSigStartValue" SG_ 778 Sod_D_Rq 2; +BA_ "WakeupSignal" SG_ 549 Power_Up_Chime_Modules 1; +BA_ "WakeupSignal" SG_ 551 Cntr_Plg_Mode_Cmd 1; +BA_ "GenSigStartValue" SG_ 551 Btt_L_Actl2 30; +BA_ "GenSigStartValueInteger" SG_ 551 Btt_L_Actl2 126; +BA_ "WakeupSignal" SG_ 551 Em_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1010 CbdblActv_B_RqAdas 1; +BA_ "UsedOnPgmDBC" SG_ 1010 CbdblActv_B_RqAdas 1; +BA_ "U_P702_MY2021_Rx" SG_ 1010 LightRng_L_Max 1; +BA_ "U_P702_MY2021_Rx" SG_ 1010 LightPathOffst_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1010 LightPathOffst_L_Actl 512; +BA_ "U_P702_MY2021_Rx" SG_ 1010 LightPath_An_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1010 LightPath_An_Actl 1000; +BA_ "U_P702_MY2021_Rx" SG_ 1010 LightCurv_NoRate_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1010 LightCurv_NoRate_Actl 4096; +BA_ "U_P702_MY2021_Rx" SG_ 1010 LightCurv_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1010 LightCurv_No_Actl 1000; +BA_ "GenSigStartValue" SG_ 1070 BattULo24_Te_Actl 127; +BA_ "GenSigStartValueInteger" SG_ 1070 BattULo24_Te_Actl 127; +BA_ "UsedOnPgmDBC" SG_ 1070 BattULo24_Te_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24State_D_Qlty 1; +BA_ "GenSigStartValue" SG_ 1070 BattULo24State_D_Qlty 1; +BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24Soc_Pc_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1070 BattULo24Soc_Pc_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24_I_Actl 1; +BA_ "GenSigStartValue" SG_ 1070 BattULo24_I_Actl 8192; +BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24_B_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1070 BattULo24_Ah_DeltaRide 1; +BA_ "GenSigStartValue" SG_ 1070 BattULo24_Ah_DeltaRide 12800; +BA_ "GenSigStartValueInteger" SG_ 1186 SelDrvMdeAwd2_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1186 SelDrvMdeAwd2_D_Stat 31; +BA_ "U_CX727_MY2021_Rx" SG_ 1186 SelDrvMdeAwd2_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1186 SelDrvMdeAwd2_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1186 SelDrvMdeAwd2_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffLckMsg_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1186 RearDiffLckLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffLckLamp_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1186 RearDiffLck_Tq_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1186 RearDiffLck_Tq_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffLck_Tq_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1186 RearDiffFalt_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1186 RearDiffFalt_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1186 LsdSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1186 LsdSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdSys_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdSys_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdSys_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdStat_D_RqDsply 1; +BA_ "ContentDependant" SG_ 611 AwdStat_D_RqDsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdStat_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdStat_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdStat_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdLck_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 611 AwdLck_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdLck_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdLck_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdLck_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdSrvcRqd_B_Rq 1; +BA_ "ContentDependant" SG_ 611 AwdSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdSrvcRqd_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 NtrlTowAvail_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdLck_Tq_Rq 1; +BA_ "ContentDependant" SG_ 611 AwdLck_Tq_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdLck_Tq_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdLck_Tq_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 611 TrnAout_Tq_RqMx 1; +BA_ "GenSigStartValueInteger" SG_ 611 TrnAout_Tq_RqMx 8191; +BA_ "GenSigStartValue" SG_ 611 TrnAout_Tq_RqMx 8191; +BA_ "U_P702_MY2021_Rx" SG_ 611 TrnAout_Tq_RqMx 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 TrnAout_Tq_RqMx 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 TrnAout_Tq_RqMx 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdOffRoadMode_D_Stats 1; +BA_ "UsedOnPgmDBC" SG_ 611 AwdOffRoadMode_D_Stats 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdOffRoadMode_D_Stats 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdLoLamp_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdLoLamp_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdHiLamp_D_RqDsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdHiLamp_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdHiLamp_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdAutoLamp_D_RqDsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdAutoLamp_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdAutoLamp_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 611 Awd2wdLamp_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 Awd2wdLamp_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 611 AwdRnge_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 611 AwdRnge_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 611 AwdRnge_D_Actl 7; +BA_ "GenSigStartValue" SG_ 611 AwdRnge_D_Actl 7; +BA_ "U_P702_MY2021_Rx" SG_ 611 AwdRnge_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 611 AwdRnge_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 611 AwdRnge_D_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 611 AwdRnge_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1461 PSCM_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_GWOnBoardTester 255; +BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_GWOnBoardTester 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_GWOnBoardTester 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1461 PSCM_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_GWNMProxy 255; +BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_GWNMProxy 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_GWNMProxy 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_GWNMProxy 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved4 255; +BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_AutoSarNMReserved4 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved4 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved3 255; +BA_ "U_P702_MY2021_Rx" SG_ 1461 PSCM_AutoSarNMReserved3 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved3 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved2 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved2 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMReserved1 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved1 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1461 PSCM_AutoSarNMNodeId 181; +BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1461 PSCM_AutoSarNMNodeId 181; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMNodeId 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1461 PSCM_AutoSarNMControl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1461 PSCM_AutoSarNMControl 1; +BA_ "GenSigStartValueInteger" SG_ 1047 TrlrAnOffst_An2_Calc 128; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAnOffst_An2_Calc 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAn_An_WarnCalc 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAn_An_MxCalc 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidTrlrId_No_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidTrgtId_No_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidSetup_D2_Stat 1; +BA_ "GenSigSendType" SG_ 1047 TrlrAidEnbl_D2_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 1047 TrlrAidEnbl_D2_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1047 TrlrAidEnbl_D2_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidEnbl_D2_Stat 1; +BA_ "GenSigSendType" SG_ 1047 TrlrAidMsgTxt_D2_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 1047 TrlrAidMsgTxt_D2_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 TrlrAidMsgTxt_D2_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1047 EsaOn_B_Stat 1; +BA_ "GenSigStartValue" SG_ 1047 EsaOn_B_Stat 1; +BA_ "GenSigSendType" SG_ 1047 EsaOn_B_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1047 EsaOn_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 EsaOn_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 HitchToTrlrAxle_L_Calc 1; +BA_ "GenSigSendType" SG_ 1047 SelDrvMdeSte_D_Stat 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1047 SelDrvMdeSte_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1047 SelDrvMdeSte_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1047 SelDrvMdeSte_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1047 SelDrvMdeSte_D_Stat 1; +BA_ "GenSigSendType" SG_ 972 LatCtlSte_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 972 LatCtlSte_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LatCtlSte_D_Stat 1; +BA_ "GenSigSendType" SG_ 972 LatCtlLim_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 972 LatCtlLim_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LatCtlLim_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 972 LatCtlCpbltyDStat_No_Cnt 1; +BA_ "MetaData" SG_ 972 LatCtlCpbltyDStat_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 972 LatCtlCpbltyDStat_No_Cs 1; +BA_ "MetaData" SG_ 972 LatCtlCpbltyDStat_No_Cs 1; +BA_ "GenSigStartValueInteger" SG_ 972 TrlrAn_An_TrgtCalc 128; +BA_ "U_P702_MY2021_Tx" SG_ 972 TrlrAn_An_TrgtCalc 1; +BA_ "U_P702_MY2021_Rx" SG_ 972 LsmcBrkDecelEnbl_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LsmcBrkDecelEnbl_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; +BA_ "GenSigStartValue" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; +BA_ "U_CX727_MY2021_Tx" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 TjaHandsOnCnfdnc_B_Est 1; +BA_ "CrossOver_InfoCAN" SG_ 972 LaHandsOff_B_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 972 LaHandsOff_B_Actl 1; +BA_ "GenSigStartValue" SG_ 972 LaHandsOff_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 972 LaHandsOff_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LaHandsOff_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 972 LaActDeny_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 972 LaActDeny_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LaActDeny_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 972 LaActAvail_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 972 LaActAvail_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LaActAvail_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 972 LsmcBrk_Tq_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 972 LsmcBrk_Tq_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 130 TrlrHitchLamp_D_Rqst 1; +BA_ "UsedOnPgmDBC" SG_ 130 TrlrHitchLamp_D_Rqst 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 TrlrHitchLamp_D_Rqst 1; +BA_ "CrossOver_InfoCAN" SG_ 130 VehVTrlrAid_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 130 VehVTrlrAid_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 130 VehVTrlrAid_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 VehVTrlrAid_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 130 Veh_V_RqMxTrlrAid 255; +BA_ "GenSigStartValue" SG_ 130 Veh_V_RqMxTrlrAid 255; +BA_ "U_P702_MY2021_Rx" SG_ 130 Veh_V_RqMxTrlrAid 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 130 Veh_V_RqMxTrlrAid 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 Veh_V_RqMxTrlrAid 1; +BA_ "UsedOnPgmDBC" SG_ 130 DrvSteActv_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 130 DrvSteActv_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 DrvSteActv_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 130 DrvSte_Tq_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 130 DrvSte_Tq_Actl 128; +BA_ "U_P702_MY2021_Rx" SG_ 130 DrvSte_Tq_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 DrvSte_Tq_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SteMdule_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SteMdule_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 130 SteMdule_U_Meas 1; +BA_ "GenSigStartValueInteger" SG_ 130 SteMdule_U_Meas 255; +BA_ "GenSigStartValue" SG_ 130 SteMdule_U_Meas 255; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SteMdule_U_Meas 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SteMdule_U_Meas 1; +BA_ "UsedOnPgmDBC" SG_ 130 SteMdule_I_Est 1; +BA_ "GenSigStartValueInteger" SG_ 130 SteMdule_I_Est 4095; +BA_ "GenSigStartValue" SG_ 130 SteMdule_I_Est 4095; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SteMdule_I_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SteMdule_I_Est 1; +BA_ "CrossOver_InfoCAN" SG_ 130 EPAS_Failure 1; +BA_ "UsedOnPgmDBC" SG_ 130 EPAS_Failure 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 EPAS_Failure 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 EPAS_Failure 1; +BA_ "UsedOnPgmDBC" SG_ 130 SteeringColumnTorque 1; +BA_ "GenSigStartValueInteger" SG_ 130 SteeringColumnTorque 254; +BA_ "GenSigStartValue" SG_ 130 SteeringColumnTorque 254; +BA_ "U_CX727_MY2021_Rx" SG_ 130 SteeringColumnTorque 1; +BA_ "U_P702_MY2021_Rx" SG_ 130 SteeringColumnTorque 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SteeringColumnTorque 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SteeringColumnTorque 1; +BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat6 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat6 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat6 1; +BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat5 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat5 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat5 1; +BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat4 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat4 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat4 1; +BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat3 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat3 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat3 1; +BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat2 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat2 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat2 1; +BA_ "UsedOnPgmDBC" SG_ 130 SAPPAngleControlStat1 1; +BA_ "U_CX727_MY2021_Tx" SG_ 130 SAPPAngleControlStat1 1; +BA_ "U_P702_MY2021_Tx" SG_ 130 SAPPAngleControlStat1 1; +BA_ "UsedOnPgmDBC" SG_ 126 StePw_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 126 StePw_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePw_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 126 StePw_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "GenSigStartValueInteger" SG_ 126 StePinRelInit_An_Sns 65535; +BA_ "ContentDependant" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "GenSigStartValue" SG_ 126 StePinRelInit_An_Sns 65535; +BA_ "U_P702_MY2021_Rx" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "U_P702_MY2021_Tx" SG_ 126 StePinRelInit_An_Sns 1; +BA_ "CrossOver_InfoCAN" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "GenSigStartValue" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "ECGUsedRxSignal" SG_ 126 StePinCompAnEst_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 126 StePinComp_An_Est 16000; +BA_ "U_P702_MY2021_Rx" SG_ 126 StePinComp_An_Est 1; +BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinComp_An_Est 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 126 StePinComp_An_Est 1; +BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinComp_An_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 126 StePinComp_An_Est 1; +BA_ "ECGUsedRxSignal" SG_ 126 StePinComp_An_Est 1; +BA_ "UsedOnPgmDBC" SG_ 126 StePinAn_No_Cs 1; +BA_ "ContentDependant" SG_ 126 StePinAn_No_Cs 1; +BA_ "MetaData" SG_ 126 StePinAn_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 126 StePinAn_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinAn_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinAn_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 126 StePinAn_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 126 StePinAn_No_Cnt 1; +BA_ "MetaData" SG_ 126 StePinAn_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 126 StePinAn_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 126 StePinAn_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 126 StePinAn_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 126 StePinAn_No_Cnt 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1430 ABS_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_GWOnBoardTester 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_GWOnBoardTester 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1430 ABS_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_GWNMProxy 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_GWNMProxy 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_GWNMProxy 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved4 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved4 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved3 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved3 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved2 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved2 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMReserved1 255; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved1 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1430 ABS_AutoSarNMNodeId 150; +BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1430 ABS_AutoSarNMNodeId 150; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMNodeId 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1430 ABS_AutoSarNMControl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1430 ABS_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1430 ABS_AutoSarNMControl 1; +BA_ "GenSigStartValueInteger" SG_ 1200 HsaTrnAout_Tq_Rq 32768; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 HsaTrnAout_Tq_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 HsaTrnAout_Tq_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1200 BrkBstrVac_P_Actl 127; +BA_ "GenSigStartValue" SG_ 1200 BrkBstrVac_P_Actl 127; +BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkBstrVac_P_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkBstrVac_P_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkBstrVac_P_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkBstrVac_P_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1200 YawStabilityIndex 256; +BA_ "U_CX727_MY2021_Rx" SG_ 1200 YawStabilityIndex 1; +BA_ "U_P702_MY2021_Rx" SG_ 1200 YawStabilityIndex 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 YawStabilityIndex 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 YawStabilityIndex 1; +BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkTot_Tq_RqDrv 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkTot_Tq_RqDrv 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkTot_Tq_RqDrv 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkTot_Tq_RqDrv 1; +BA_ "MetaData" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cnt 1; +BA_ "MetaData" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 BrkTotTqRqDrv_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1200 HsaStat_D_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1200 HsaStat_D_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos12_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos12_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos12_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos12_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos12_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos11_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos11_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos11_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos11_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos11_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos10_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos10_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos10_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos10_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos10_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos09_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos09_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos09_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos09_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos09_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos08_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos08_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos08_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos08_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos08_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos07_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos07_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos07_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos07_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos07_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos06_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos06_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos06_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos06_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos06_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos05_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos05_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos05_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos05_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos05_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos04_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos04_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos04_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos04_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos04_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos03_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos03_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos03_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos03_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos03_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos02_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos02_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos02_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos02_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos02_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1102 SelDrvMdePos01_D_Stat 31; +BA_ "GenSigStartValue" SG_ 1102 SelDrvMdePos01_D_Stat 31; +BA_ "GenSigSendType" SG_ 1102 SelDrvMdePos01_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1102 SelDrvMdePos01_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1102 SelDrvMdePos01_D_Stat 1; +BA_ "GenSigSendType" SG_ 1056 AutoEpbMsgTxt_D_Rq 3; +BA_ "GenSigSendType" SG_ 1056 AutoEpbDsply_D_Stat 3; +BA_ "GenSigSendType" SG_ 1056 AutoEpbButtnOn_B_Stat 3; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos12_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos12_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos12_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos11_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos11_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos11_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos10_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos10_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos10_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos09_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos09_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos09_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos08_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos08_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos08_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos07_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos07_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos07_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos06_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos06_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos06_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos05_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos05_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos05_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos04_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos04_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos04_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos03_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos03_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos03_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos02_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos02_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos02_B_Avail 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePos01_B_Avail 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePos01_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePos01_B_Avail 1; +BA_ "GenSigStartValueInteger" SG_ 1056 ActvDrvMde_D2_Stat 31; +BA_ "GenSigStartValue" SG_ 1056 ActvDrvMde_D2_Stat 31; +BA_ "GenSigSendType" SG_ 1056 ActvDrvMde_D2_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 ActvDrvMde_D2_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 ActvDrvMde_D2_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1056 SelDrvMde_D2_Rq 31; +BA_ "GenSigStartValue" SG_ 1056 SelDrvMde_D2_Rq 31; +BA_ "GenSigSendType" SG_ 1056 SelDrvMde_D2_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMde_D2_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMde_D2_Rq 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdePt_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 1056 SelDrvMdePt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1056 SelDrvMdePt_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdePt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdePt_D_Rq 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMdeMsgTxt_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMdeMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMdeMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 1056 SelDrvMde_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 SelDrvMde_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 SelDrvMde_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1056 AwdMde_D_RqBrk 5; +BA_ "GenSigStartValue" SG_ 1056 AwdMde_D_RqBrk 5; +BA_ "GenSigSendType" SG_ 1056 AwdMde_D_RqBrk 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1056 AwdMde_D_RqBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 1056 AwdMde_D_RqBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 AirDamUp_B_RqBrk 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 AirDamUp_B_RqBrk 1; +BA_ "U_P702_MY2021_Rx" SG_ 1054 AirDamUp_B_RqBrk 1; +BA_ "GenSigSendType" SG_ 1054 AirDamUp_B_RqBrk 3; +BA_ "GenSigSendType" SG_ 1054 RbaBrk_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 RbaBrk_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 RbaBrk_D_Stat 1; +BA_ "GenSigSendType" SG_ 1054 SelDrvMdeChassis2_D_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1054 SelDrvMdeChassis2_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1054 SelDrvMdeChassis2_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 SelDrvMdeChassis2_D_Rq 1; +BA_ "GenSigSendType" SG_ 1054 TrailCtl_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 1054 TrailCtl_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 TrailCtl_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 TrailCtl_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 TrailCtl_D_Stat 1; +BA_ "GenSigSendType" SG_ 1054 TrailCtlMsgTxt_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 TrailCtlMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 TrailCtlMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 1054 BrkBstrVac_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 1054 BrkBstrVac_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 BrkBstrVac_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 BrkBstrVac_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 BrkBstrVac_D_Stat 1; +BA_ "GenSigSendType" SG_ 1054 DrvSlipCtlOffLamp_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 DrvSlipCtlOffLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 DrvSlipCtlOffLamp_D_Rq 1; +BA_ "GenSigSendType" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 1054 DrvSlipCtlMdeMsg_D_Rq 1; +BA_ "GenSigSendType" SG_ 1054 AutoHoldMsgTxt_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 AutoHoldMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 AutoHoldMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 1054 CtaBrk_D_Stat 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 CtaBrk_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 CtaBrk_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1054 SelDrvMdeAwd_D_Rq 31; +BA_ "GenSigStartValue" SG_ 1054 SelDrvMdeAwd_D_Rq 31; +BA_ "GenSigSendType" SG_ 1054 SelDrvMdeAwd_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 1054 SelDrvMdeAwd_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 SelDrvMdeAwd_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1054 AutoHoldSwMde_B_Ind 1; +BA_ "ContentDependant" SG_ 1054 AutoHoldSwMde_B_Ind 1; +BA_ "GenSigSendType" SG_ 1054 AutoHoldSwMde_B_Ind 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 AutoHoldSwMde_B_Ind 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 AutoHoldSwMde_B_Ind 1; +BA_ "GenSigSendType" SG_ 1054 AutoHoldMde_D_Ind 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 AutoHoldMde_D_Ind 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 AutoHoldMde_D_Ind 1; +BA_ "GenSigSendType" SG_ 1054 SelDrvMdeChassis_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 SelDrvMdeChassis_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 SelDrvMdeChassis_D_Rq 1; +BA_ "GenSigSendType" SG_ 1054 ApaBrk_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 1054 ApaBrk_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1054 ApaBrk_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1054 ApaBrk_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1054 ApaBrk_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 HsaMde_D_Mem 1; +BA_ "UsedOnPgmDBC" SG_ 1046 HsaMde_D_Mem 1; +BA_ "GenSigStartValueInteger" SG_ 1046 HsaMde_D_Mem 1; +BA_ "GenSigStartValue" SG_ 1046 HsaMde_D_Mem 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 HsaMde_D_Mem 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 HsaMde_D_Mem 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 BrkBstrVac_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 BrkBstrVac_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 BrkBstrVac_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 BrkBstrVac_B_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 BrkBstrVac_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 BrkBstrVac_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 HdcMde_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1046 HdcMde_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 HdcMde_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 HdcMde_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1046 RearDiffLck_Tq2_RqMx 4094; +BA_ "GenSigStartValue" SG_ 1046 RearDiffLck_Tq2_RqMx 4094; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 RearDiffLck_Tq2_RqMx 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 RearDiffLck_Tq2_RqMx 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 TRLR_SWAY_EVNT_IN_PROG 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 TRLR_SWAY_EVNT_IN_PROG 1; +BA_ "ECGUsedRxSignal" SG_ 1046 TRLR_SWAY_EVNT_IN_PROG 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 TRLR_SWAY_CONFIG_STAT 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 TRLR_SWAY_CONFIG_STAT 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 TCMode 1; +BA_ "UsedOnPgmDBC" SG_ 1046 TCMode 1; +BA_ "ContentDependant" SG_ 1046 TCMode 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 TCMode 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 TCMode 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 TCMode 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 TCMode 1; +BA_ "ECGUsedRxSignal" SG_ 1046 TCMode 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvSlipCtlLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 Abs_B_Falt 1; +BA_ "UsedOnPgmDBC" SG_ 1046 Abs_B_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 Abs_B_Falt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 Abs_B_Falt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 Abs_B_Falt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 Abs_B_Falt 1; +BA_ "ECGUsedRxSignal" SG_ 1046 Abs_B_Falt 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "UsedOnPgmDBC" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "ECGUsedRxSignal" SG_ 1046 DrvSlipCtlMde_D_Ind 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 DrvAntiLckLamp_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 DrvAntiLckLamp_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvAntiLckLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 BpedMove_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 1046 BpedMove_No_Cnt 1; +BA_ "MetaData" SG_ 1046 BpedMove_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1046 BpedMove_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 BpedMove_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 BpedMove_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 StabCtlBrk_B_Avail 1; +BA_ "UsedOnPgmDBC" SG_ 1046 StabCtlBrk_B_Avail 1; +BA_ "GenSigStartValueInteger" SG_ 1046 StabCtlBrk_B_Avail 1; +BA_ "GenSigStartValue" SG_ 1046 StabCtlBrk_B_Avail 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 StabCtlBrk_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 StabCtlBrk_B_Avail 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvHdcWarnInfo_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 DrvHdcMsg_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 DrvHdcMsg_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvHdcMsg_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvHdcMsg_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 DrvHdcLampInfo_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 DrvHdcLampInfo_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 DrvHdcLampInfo_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 DrvHdcLampInfo_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 BpedMove_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1046 BpedMove_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1046 BpedMove_D_Actl 3; +BA_ "GenSigStartValue" SG_ 1046 BpedMove_D_Actl 3; +BA_ "U_P702_MY2021_Rx" SG_ 1046 BpedMove_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 BpedMove_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 BpedMove_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 ChimeBrk_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 ChimeBrk_B_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 ChimeBrk_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 ChimeBrk_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 BrkLamp_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1046 BrkLamp_B_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 BrkLamp_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 BrkLamp_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1046 HILL_DESC_MC 1; +BA_ "UsedOnPgmDBC" SG_ 1046 HILL_DESC_MC 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1046 HILL_DESC_MC 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 HILL_DESC_MC 1; +BA_ "U_P702_MY2021_Tx" SG_ 1046 RearDiffElckrOpen_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1045 VehStab_D_Stat 14; +BA_ "GenSigStartValue" SG_ 1045 VehStab_D_Stat 14; +BA_ "U_P702_MY2021_Rx" SG_ 1045 VehStab_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehStab_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehStab_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 VehStab_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 BrkFluidLvl_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 BrkFluidLvl_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1045 LsmcBrkDecel_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 LsmcBrkDecel_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1045 VehYawNonLin_W_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1045 VehYawNonLin_W_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1045 VehYawNonLin_W_Rq 4094; +BA_ "GenSigStartValue" SG_ 1045 VehYawNonLin_W_Rq 4094; +BA_ "U_P702_MY2021_Rx" SG_ 1045 VehYawNonLin_W_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehYawNonLin_W_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehYawNonLin_W_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 VehYawNonLin_W_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1045 VehYawLin_W_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1045 VehYawLin_W_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1045 VehYawLin_W_Rq 4094; +BA_ "GenSigStartValue" SG_ 1045 VehYawLin_W_Rq 4094; +BA_ "U_P702_MY2021_Rx" SG_ 1045 VehYawLin_W_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehYawLin_W_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehYawLin_W_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 VehYawLin_W_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "MetaData" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "UsedOnPgmDBC" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "U_P702_MY2021_Rx" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 Veh_V_ActlBrk 1; +BA_ "CrossOver_InfoCAN" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "MetaData" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 VehVActlBrk_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "MetaData" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 1045 VehVActlBrk_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 1044 StePinOffst_An_Est 1; +BA_ "GenSigStartValueInteger" SG_ 1044 StePinOffst_An_Est 65534; +BA_ "ContentDependant" SG_ 1044 StePinOffst_An_Est 1; +BA_ "GenSigStartValue" SG_ 1044 StePinOffst_An_Est 65533; +BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_An_Est 1; +BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_An_Est 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_An_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_An_Est 1; +BA_ "UsedOnPgmDBC" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "ContentDependant" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "MetaData" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 1044 StePinOffst_No_Cnt 1; +BA_ "MetaData" SG_ 1044 StePinOffst_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1044 StePinOffst_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1044 StePinOffst_D_Stat 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1044 StePinOffst_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1044 StePinOffst_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1042 VehRol_An_Dsply 64; +BA_ "GenSigStartValue" SG_ 1042 VehRol_An_Dsply 0; +BA_ "U_P702_MY2021_Tx" SG_ 1042 VehRol_An_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1042 VehPtch_An_Dsply 64; +BA_ "GenSigStartValue" SG_ 1042 VehPtch_An_Dsply 0; +BA_ "U_P702_MY2021_Rx" SG_ 1042 VehPtch_An_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1042 VehPtch_An_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1042 TrlrBrk_Pc_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 535 WhlRr_W_Meas 1; +BA_ "U_P702_MY2021_Rx" SG_ 535 WhlRr_W_Meas 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlRr_W_Meas 1; +BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlRr_W_Meas 1; +BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlRr_W_Meas 1; +BA_ "U_P702_MY2021_Tx" SG_ 535 WhlRr_W_Meas 1; +BA_ "UsedOnPgmDBC" SG_ 535 WhlRl_W_Meas 1; +BA_ "U_P702_MY2021_Rx" SG_ 535 WhlRl_W_Meas 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlRl_W_Meas 1; +BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlRl_W_Meas 1; +BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlRl_W_Meas 1; +BA_ "U_P702_MY2021_Tx" SG_ 535 WhlRl_W_Meas 1; +BA_ "UsedOnPgmDBC" SG_ 535 WhlFr_W_Meas 1; +BA_ "U_P702_MY2021_Rx" SG_ 535 WhlFr_W_Meas 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlFr_W_Meas 1; +BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlFr_W_Meas 1; +BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlFr_W_Meas 1; +BA_ "U_P702_MY2021_Tx" SG_ 535 WhlFr_W_Meas 1; +BA_ "UsedOnPgmDBC" SG_ 535 WhlFl_W_Meas 1; +BA_ "U_P702_MY2021_Rx" SG_ 535 WhlFl_W_Meas 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 535 WhlFl_W_Meas 1; +BA_ "U_CX727_MY2021_Rx" SG_ 535 WhlFl_W_Meas 1; +BA_ "U_CX727_MY2021_Tx" SG_ 535 WhlFl_W_Meas 1; +BA_ "U_P702_MY2021_Tx" SG_ 535 WhlFl_W_Meas 1; +BA_ "ContentDependant" SG_ 534 BrkObdData_No_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 BrkObdData_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 BrkObdData_No_Actl 1; +BA_ "ContentDependant" SG_ 534 BrkObdIndex_No_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 BrkObdIndex_No_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 BrkObdIndex_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatRr_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatRr_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatRr_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatRr_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatRr_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirRr_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirRl_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirFr_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlDirFl_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatRl_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatRl_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatRl_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatRl_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatRl_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatFr_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatFr_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatFr_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatFr_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatFr_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 534 WhlRotatFl_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 534 WhlRotatFl_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 534 WhlRotatFl_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 534 WhlRotatFl_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 534 WhlRotatFl_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 532 RgenTqFalt_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 532 RgenTqFalt_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 532 RgenTqFalt_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 532 RgenTqFalt_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 532 RgenBrkDynoMde_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 532 RgenBrkDynoMde_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 532 RgenBrkDynoMde_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 532 RgenBrkDynoMde_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 532 PrplWhlTqRqMn_No_Cs 1; +BA_ "MetaData" SG_ 532 PrplWhlTqRqMn_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 532 PrplWhlTot_Tq_RqMn 1; +BA_ "U_P702_MY2021_Rx" SG_ 532 PrplWhlTot_Tq_RqMn 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 532 PrplWhlTot_Tq_RqMn 1; +BA_ "U_CX727_MY2021_Tx" SG_ 532 PrplWhlTot_Tq_RqMn 1; +BA_ "U_P702_MY2021_Tx" SG_ 532 PrplWhlTot_Tq_RqMn 1; +BA_ "UsedOnPgmDBC" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; +BA_ "MetaData" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 532 PrplWhlTqRqMn_No_Cnt 1; +BA_ "GenSigStartValueInteger" SG_ 531 VehStop_D_Stat 2; +BA_ "GenSigStartValue" SG_ 531 VehStop_D_Stat 2; +BA_ "U_CX727_MY2021_Tx" SG_ 531 VehStop_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 VehStop_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 531 TracCtlPtActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 TracCtlPtActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 TracCtlPtActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 TracCtlPtActv_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 TracCtlPtActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 TracCtlPtActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbMntr_B_Err 1; +BA_ "UsedOnPgmDBC" SG_ 531 LscmbbMntr_B_Err 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbMntr_B_Err 1; +BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbBrkDis_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 LscmbbBrkDis_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbBrkDis_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbDeny_B_ActlBrk 1; +BA_ "UsedOnPgmDBC" SG_ 531 LscmbbDeny_B_ActlBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbDeny_B_ActlBrk 1; +BA_ "WakeupSignal" SG_ 531 PrkBrkYwLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkYwLamp_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkYwLamp_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkYwLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkYwLamp_D_Rq 1; +BA_ "WakeupSignal" SG_ 531 PrkBrkRedLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkRedLamp_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkRedLamp_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkRedLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkRedLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbBrkDecel_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 LscmbbBrkDecel_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbBrkDecel_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AbsActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AbsActv_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 531 AbsActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 AbsActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AbsActv_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AbsActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AbsActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 531 StabCtlBrkActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBrkPrchg_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 CmbbBrkPrchg_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBrkPrchg_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBrkPrchg_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBrkDecel_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 CmbbBrkDecel_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBrkDecel_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBrkDecel_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBaSensInc_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 CmbbBaSensInc_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBaSensInc_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBaSensInc_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkWarm_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccBrkWarm_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkWarm_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkWarm_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkTotTqMn_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccBrkTotTqMn_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkTotTqMn_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkTotTqMn_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkPrchgActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccBrkPrchgActv_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkPrchgActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkPrchgActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkDis_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccBrkDis_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkDis_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkDis_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkDeny_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccBrkDeny_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 AccBrkDeny_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AccBrkDeny_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkDeny_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkDeny_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccBrkActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccBrkActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 AccBrkActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AccBrkActv_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccBrkActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccBrkActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 PrplDrgCtlActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 PrplDrgCtlActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 PrplDrgCtlActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 PrplDrgCtlActv_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 PrplDrgCtlActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 PrplDrgCtlActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 PrplWhlTot_Tq_RqMx 1; +BA_ "UsedOnPgmDBC" SG_ 531 PrplWhlTot_Tq_RqMx 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 PrplWhlTot_Tq_RqMx 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 PrplWhlTot_Tq_RqMx 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 PrplWhlTot_Tq_RqMx 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 PrplWhlTot_Tq_RqMx 1; +BA_ "CrossOver_InfoCAN" SG_ 531 LscmbbBaSensInc_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 LscmbbBaSensInc_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbbBaSensInc_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 CmbbBrkDis_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 CmbbBrkDis_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 531 CmbbBrkDis_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 CmbbBrkDis_B_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbBrkDis_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbBrkDis_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "UsedOnPgmDBC" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "U_CX727_MY2021_Rx" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 CmbbDeny_B_ActlBrk 1; +BA_ "CrossOver_InfoCAN" SG_ 531 CcDis_B_Cmd 1; +BA_ "UsedOnPgmDBC" SG_ 531 CcDis_B_Cmd 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 CcDis_B_Cmd 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 CcDis_B_Cmd 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 CcDis_B_Cmd 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 CcDis_B_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 531 VehLongOvrGnd_A_Est 1; +BA_ "UsedOnPgmDBC" SG_ 531 VehLongOvrGnd_A_Est 1; +BA_ "GenSigStartValueInteger" SG_ 531 VehLongOvrGnd_A_Est 511; +BA_ "U_P702_MY2021_Rx" SG_ 531 VehLongOvrGnd_A_Est 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 VehLongOvrGnd_A_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 VehLongOvrGnd_A_Est 1; +BA_ "CrossOver_InfoCAN" SG_ 531 LscmbBrkPrchg_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 531 LscmbBrkPrchg_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 LscmbBrkPrchg_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccStopActv_B_ActlBrk 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccStopActv_B_ActlBrk 1; +BA_ "U_P702_MY2021_Rx" SG_ 531 AccStopActv_B_ActlBrk 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 AccStopActv_B_ActlBrk 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccStopActv_B_ActlBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccStopActv_B_ActlBrk 1; +BA_ "CrossOver_InfoCAN" SG_ 531 AccDis_B_ActlEpb 1; +BA_ "UsedOnPgmDBC" SG_ 531 AccDis_B_ActlEpb 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 AccDis_B_ActlEpb 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 AccDis_B_ActlEpb 1; +BA_ "WakeupSignal" SG_ 531 PrkBrkMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkMsgTxt_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkMsgTxt_D_Rq 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 531 PrkBrkStatus 1; +BA_ "UsedOnPgmDBC" SG_ 531 PrkBrkStatus 1; +BA_ "GenSigStartValueInteger" SG_ 531 PrkBrkStatus 7; +BA_ "GenSigStartValue" SG_ 531 PrkBrkStatus 7; +BA_ "U_P702_MY2021_Rx" SG_ 531 PrkBrkStatus 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 531 PrkBrkStatus 1; +BA_ "U_CX727_MY2021_Tx" SG_ 531 PrkBrkStatus 1; +BA_ "U_P702_MY2021_Tx" SG_ 531 PrkBrkStatus 1; +BA_ "ECGUsedRxSignal" SG_ 531 PrkBrkStatus 1; +BA_ "GenSigStartValueInteger" SG_ 136 SteWhlBrkOffst_An_Rq 32766; +BA_ "GenSigStartValue" SG_ 136 SteWhlBrkOffst_An_Rq 32765; +BA_ "U_P702_MY2021_Tx" SG_ 136 SteWhlBrkOffst_An_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 136 SteWhlBrkAnRq_No_Cs 1; +BA_ "MetaData" SG_ 136 SteWhlBrkAnRq_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 136 SteWhlBrkAnRq_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 136 SteWhlBrkAnRq_No_Cnt 1; +BA_ "MetaData" SG_ 136 SteWhlBrkAnRq_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 136 SteWhlBrkAnRq_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 125 VehRolComp_W_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 125 VehRolComp_W_Actl 4094; +BA_ "GenSigStartValue" SG_ 125 VehRolComp_W_Actl 4094; +BA_ "U_CX727_MY2021_Tx" SG_ 125 VehRolComp_W_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 VehRolComp_W_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 125 VehVertComp_A_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 125 VehVertComp_A_Actl 1022; +BA_ "GenSigStartValue" SG_ 125 VehVertComp_A_Actl 1022; +BA_ "U_P702_MY2021_Rx" SG_ 125 VehVertComp_A_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 125 VehVertComp_A_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 VehVertComp_A_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 125 BrkTotTqRqArb_No_Cs 1; +BA_ "MetaData" SG_ 125 BrkTotTqRqArb_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTotTqRqArb_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTotTqRqArb_No_Cs 1; +BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 125 BrkTotTqRqArb_No_Cnt 1; +BA_ "MetaData" SG_ 125 BrkTotTqRqArb_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; +BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTotTqRqArb_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 125 BrkTot_Tq_RqArb 1; +BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTot_Tq_RqArb 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTot_Tq_RqArb 1; +BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTot_Tq_RqArb 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTot_Tq_RqArb 1; +BA_ "ECGUsedRxSignal" SG_ 125 BrkTot_Tq_RqArb 1; +BA_ "UsedOnPgmDBC" SG_ 125 BrkTot_Tq_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 125 BrkTot_Tq_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 125 BrkTot_Tq_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 BrkTot_Tq_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 125 BrkTot_Tq_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 BrkTot_Tq_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 125 HsaStat_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 125 HsaStat_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 125 HsaStat_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 125 HsaStat_D_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 125 HsaStat_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 125 HsaStat_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 119 VehTrvlDir_D_Stat 6; +BA_ "GenSigStartValue" SG_ 119 VehTrvlDir_D_Stat 6; +BA_ "U_P702_MY2021_Tx" SG_ 119 VehTrvlDir_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 119 VehOverGnd_V_Est 1; +BA_ "U_CX727_MY2021_Rx" SG_ 119 VehOverGnd_V_Est 1; +BA_ "U_P702_MY2021_Rx" SG_ 119 VehOverGnd_V_Est 1; +BA_ "U_CX727_MY2021_Tx" SG_ 119 VehOverGnd_V_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 119 VehOverGnd_V_Est 1; +BA_ "UsedOnPgmDBC" SG_ 119 VehLongComp_A_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 119 VehLongComp_A_Actl 1022; +BA_ "GenSigStartValue" SG_ 119 VehLongComp_A_Actl 1022; +BA_ "U_P702_MY2021_Rx" SG_ 119 VehLongComp_A_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 119 VehLongComp_A_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 119 VehLongComp_A_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 119 VehLongComp_A_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 119 VehLongComp_A_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 119 VehLatComp_A_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 119 VehLatComp_A_Actl 1022; +BA_ "GenSigStartValue" SG_ 119 VehLatComp_A_Actl 1022; +BA_ "U_P702_MY2021_Rx" SG_ 119 VehLatComp_A_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 119 VehLatComp_A_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 119 VehLatComp_A_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 119 VehLatComp_A_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 119 VehLatComp_A_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 119 VehLatComp_A_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 119 VehYawComp_W_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 119 VehYawComp_W_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 119 VehYawComp_W_Actl 4094; +BA_ "GenSigStartValue" SG_ 119 VehYawComp_W_Actl 4094; +BA_ "U_CX727_MY2021_Rx" SG_ 119 VehYawComp_W_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 119 VehYawComp_W_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 119 VehYawComp_W_Actl 1; +BA_ "U_CX727_MY2021_Tx" SG_ 119 VehYawComp_W_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 119 VehYawComp_W_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 119 VehYawComp_W_Actl 1; +BA_ "GenSigSendType" SG_ 118 BrkCtrFnd_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 118 BrkCtrFnd_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 118 AwdLck_Tq_RqMx 1; +BA_ "U_P702_MY2021_Rx" SG_ 118 AwdLck_Tq_RqMx 1; +BA_ "U_P702_MY2021_Tx" SG_ 118 AwdLck_Tq_RqMx 1; +BA_ "UsedOnPgmDBC" SG_ 118 AwdLck_Tq_RqMn 1; +BA_ "U_P702_MY2021_Rx" SG_ 118 AwdLck_Tq_RqMn 1; +BA_ "U_P702_MY2021_Tx" SG_ 118 AwdLck_Tq_RqMn 1; +BA_ "UsedOnPgmDBC" SG_ 118 DrvSte_D_Stat 1; +BA_ "GenSigSendType" SG_ 118 DrvSte_D_Stat 3; +BA_ "U_CX727_MY2021_Rx" SG_ 118 DrvSte_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 118 DrvSte_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 118 DrvSte_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 118 DrvSte_Tq_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 118 DrvSte_Tq_Rq 128; +BA_ "U_CX727_MY2021_Rx" SG_ 118 DrvSte_Tq_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 118 DrvSte_Tq_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 118 DrvSte_Tq_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 118 EmgcyBrkLamp_D_Rq 1; +BA_ "GenSigSendType" SG_ 118 EmgcyBrkLamp_D_Rq 3; +BA_ "U_CX727_MY2021_Tx" SG_ 118 EmgcyBrkLamp_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 118 EmgcyBrkLamp_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 118 StopLamp_B_RqBrk 1; +BA_ "GenSigSendType" SG_ 118 StopLamp_B_RqBrk 3; +BA_ "U_CX727_MY2021_Tx" SG_ 118 StopLamp_B_RqBrk 1; +BA_ "U_P702_MY2021_Tx" SG_ 118 StopLamp_B_RqBrk 1; +BA_ "UsedOnPgmDBC" SG_ 73 immoSubTarget1Data_T1 1; +BA_ "U_P702_MY2021_Rx" SG_ 73 immoSubTarget1Data_T1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 73 immoSubTarget1Data_T1 1; +BA_ "U_CX727_MY2021_Tx" SG_ 73 immoSubTarget1Data_T1 1; +BA_ "U_P702_MY2021_Tx" SG_ 73 immoSubTarget1Data_T1 1; +BA_ "UsedOnPgmDBC" SG_ 73 immoSubTarget1Cmd_T1 1; +BA_ "U_P702_MY2021_Rx" SG_ 73 immoSubTarget1Cmd_T1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 73 immoSubTarget1Cmd_T1 1; +BA_ "U_CX727_MY2021_Tx" SG_ 73 immoSubTarget1Cmd_T1 1; +BA_ "U_P702_MY2021_Tx" SG_ 73 immoSubTarget1Cmd_T1 1; +BA_ "CrossOver_InfoCAN" SG_ 1034 VehicleGGCCData 1; +BA_ "UsedOnPgmDBC" SG_ 1034 VehicleGGCCData 1; +BA_ "U_P702_MY2021_Rx" SG_ 1034 VehicleGGCCData 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1034 VehicleGGCCData 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1034 VehicleGGCCData 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1440 TCM_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_GWOnBoardTester 255; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_GWOnBoardTester 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1440 TCM_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_GWNMProxy 255; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_GWNMProxy 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_GWNMProxy 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved4 255; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved4 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved3 255; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved3 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved2 255; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved2 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMReserved1 255; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMReserved1 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1440 TCM_AutoSarNMNodeId 160; +BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1440 TCM_AutoSarNMNodeId 160; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMNodeId 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1440 TCM_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1440 TCM_AutoSarNMControl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1440 TCM_AutoSarNMControl 1; +BA_ "CrossOver_InfoCAN" SG_ 561 TrnMsgTxt2_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 561 TrnMsgTxt2_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 561 TrnMsgTxt2_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 561 TrnMsgTxt_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 561 TrnMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 561 TrnMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 561 TrnMsgTxt_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 330 TrnAout_W_ActlUnfilt 1; +BA_ "U_P702_MY2021_Rx" SG_ 330 TrnAout_W_ActlUnfilt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 330 TrnAout_W_ActlUnfilt 1; +BA_ "U_P702_MY2021_Tx" SG_ 330 TrnAout_W_ActlUnfilt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 330 TrnAout_W_ActlUnfilt 1; +BA_ "ECGUsedRxSignal" SG_ 1090 Mtr2State_D_ActlMntr 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1090 Mtr2State_D_ActlMntr 1; +BA_ "GenSigStartValueInteger" SG_ 1090 Inv1Ain_I_ActlMntr 32766; +BA_ "GenSigStartValue" SG_ 1090 Inv1Ain_I_ActlMntr 32765; +BA_ "ECGUsedRxSignal" SG_ 1090 Inv1Ain_I_ActlMntr 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1090 Inv1Ain_I_ActlMntr 1; +BA_ "ECGUsedRxSignal" SG_ 1090 HybVehMde_D_ActlMntr 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1090 HybVehMde_D_ActlMntr 1; +BA_ "ECGUsedRxSignal" SG_ 1090 ChrgStat_D_ActlMntr 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1090 ChrgStat_D_ActlMntr 1; +BA_ "CrossOver_InfoCAN" SG_ 1090 VehElRnge_L_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1090 VehElRnge_L_Dsply 4095; +BA_ "GenSigStartValue" SG_ 1090 VehElRnge_L_Dsply 4093; +BA_ "U_P702_MY2021_Tx" SG_ 1090 VehElRnge_L_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1090 VehElRnge_L_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 870 EngMdeMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 870 EffRgenThres_Pc_Dsply 1; +BA_ "GenSigStartValue" SG_ 870 EffRgenThres_Pc_Dsply 1023; +BA_ "CrossOver_InfoCAN" SG_ 870 EffRgenThres_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 870 RngPerChrgInst_L_Dsply 4094; +BA_ "GenSigStartValue" SG_ 870 RngPerChrgInst_L_Dsply 4093; +BA_ "U_P702_MY2021_Tx" SG_ 870 RngPerChrgInst_L_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 PwrFlowTxt_D_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 EngOnMsg2_D_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 EngOnMsg1_D_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 FuelMaintMde_D_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 869 EffWhlLvl2_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 869 EffWhlLvl2_Pc_Dsply 511; +BA_ "U_P702_MY2021_Tx" SG_ 869 EffWhlLvl2_Pc_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 869 EffWhlThres_Pc_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 EffWhlThres_Pc_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 869 EngPwLvl_Pc_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 EngPwLvl_Pc_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 869 EngActv_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 EngActv_B_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 869 EffWhlThresOn_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 869 EffWhlThresOn_B_Dsply 1; +BA_ "GenSigSendType" SG_ 606 ElVehLaterMde_D_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 606 ElVehLaterMde_D_Stat 1; +BA_ "GenSigSendType" SG_ 606 ElVehNowMde_D_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 606 ElVehNowMde_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 374 GearEngag_D_Actl 1; +BA_ "GenSigSendType" SG_ 374 GearEngag_D_Actl 3; +BA_ "U_P702_MY2021_Tx" SG_ 374 GearEngag_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 374 TrnRng_D_Rq 14; +BA_ "ContentDependant" SG_ 374 TrnRng_D_Rq 1; +BA_ "GenSigStartValue" SG_ 374 TrnRng_D_Rq 14; +BA_ "GenSigSendType" SG_ 374 TrnRng_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 374 TrnRng_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 TrnRng_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 TrnRng_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 TrnRng_D_Rq 1; +BA_ "ContentDependant" SG_ 374 TrnPrkSys_D_Actl 1; +BA_ "GenSigSendType" SG_ 374 TrnPrkSys_D_Actl 3; +BA_ "U_P702_MY2021_Rx" SG_ 374 TrnPrkSys_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 TrnPrkSys_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 TrnPrkSys_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 TrnPrkSys_D_Actl 1; +BA_ "ContentDependant" SG_ 374 GearLvr_D_ActlDrv 1; +BA_ "GenSigSendType" SG_ 374 GearLvr_D_ActlDrv 3; +BA_ "U_P702_MY2021_Rx" SG_ 374 GearLvr_D_ActlDrv 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearLvr_D_ActlDrv 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 GearLvr_D_ActlDrv 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearLvr_D_ActlDrv 1; +BA_ "ContentDependant" SG_ 374 GearPos_No_Cs 1; +BA_ "MetaData" SG_ 374 GearPos_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 374 GearPos_D_Trg 1; +BA_ "UsedOnPgmDBC" SG_ 374 GearPos_D_Trg 1; +BA_ "GenSigStartValueInteger" SG_ 374 GearPos_D_Trg 15; +BA_ "ContentDependant" SG_ 374 GearPos_D_Trg 1; +BA_ "GenSigStartValue" SG_ 374 GearPos_D_Trg 15; +BA_ "GenSigSendType" SG_ 374 GearPos_D_Trg 3; +BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_D_Trg 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_D_Trg 1; +BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_D_Trg 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_D_Trg 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_D_Trg 1; +BA_ "ContentDependant" SG_ 374 GearPos_No_Cnt 1; +BA_ "MetaData" SG_ 374 GearPos_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 TrnIgnOffDly_T_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 TrnIgnOffDly_T_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 374 GearPos_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 374 GearPos_D_Actl 15; +BA_ "ContentDependant" SG_ 374 GearPos_D_Actl 1; +BA_ "GenSigStartValue" SG_ 374 GearPos_D_Actl 15; +BA_ "GenSigSendType" SG_ 374 GearPos_D_Actl 3; +BA_ "U_P702_MY2021_Rx" SG_ 374 GearPos_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 374 GearPos_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 374 GearPos_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 374 GearPos_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 374 GearPos_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 603 WhlDirAvgDrv_D_Actl 1; +BA_ "ContentDependant" SG_ 603 WhlDirAvgDrv_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 603 WhlDirAvgDrv_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 603 PrplTqMnRgen_B_Actl 1; +BA_ "ContentDependant" SG_ 603 PrplTqMnRgen_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 603 PrplTqMnRgen_B_Actl 1; +BA_ "ContentDependant" SG_ 603 BattTracCnnct_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 603 BattTracCnnct_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 602 HtrnWarnLamp_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 602 HtrnWarnLamp_B_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 602 HtrnWarnLamp_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 602 HybPwLimOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 602 PwPckTqRdy_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 602 PwPckTqRdy_B_Dsply 1; +BA_ "GenSigSendType" SG_ 1152 BattTracDiagClr_B_Stat 3; +BA_ "GenSigSendType" SG_ 1152 EngTeHi_B_Actl 3; +BA_ "U_P702_MY2021_Tx" SG_ 1152 EngTeHi_B_Actl 1; +BA_ "GenSigSendType" SG_ 1152 DcdcOn_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1152 DcdcOn_B_Rq 1; +BA_ "GenSigSendType" SG_ 1152 ULoBattSpprtSustn_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1152 ULoBattSpprtSustn_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1152 VehElEff_No_Avg 126; +BA_ "GenSigStartValue" SG_ 1152 VehElEff_No_Avg 126; +BA_ "U_P702_MY2021_Tx" SG_ 1152 VehElEff_No_Avg 1; +BA_ "CrossOver_InfoCAN" SG_ 872 PlgActvArb_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 872 PlgActvArb_B_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 872 PlgActvArb_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 872 HybMdeStat_D_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 872 HybMdeStat_D_Dsply 1; +BA_ "ContentDependant" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; +BA_ "U_P702_MY2021_Rx" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; +BA_ "U_P702_MY2021_Tx" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 SelDrvMdeSwtch_D_Stat3 1; +BA_ "CrossOver_InfoCAN" SG_ 560 TrnSrvcRqd_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 560 TrnSrvcRqd_B_Rq 1; +BA_ "ContentDependant" SG_ 560 TrnSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 560 TrnSrvcRqd_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 TrnSrvcRqd_B_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 560 TrnSrvcRqd_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "ContentDependant" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 TrnShifActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 560 GearLvrPos_D_Actl 14; +BA_ "GenSigStartValue" SG_ 560 GearLvrPos_D_Actl 14; +BA_ "U_P702_MY2021_Rx" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 GearLvrPos_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 560 GboxOil_Te_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 560 GboxOil_Te_Actl 254; +BA_ "ContentDependant" SG_ 560 GboxOil_Te_Actl 1; +BA_ "GenSigStartValue" SG_ 560 GboxOil_Te_Actl 254; +BA_ "U_P702_MY2021_Rx" SG_ 560 GboxOil_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 560 GboxOil_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 560 GboxOil_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 560 GboxOil_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyRng2_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 369 TrnIpcDsplyRng2_D_Actl 15; +BA_ "GenSigStartValue" SG_ 369 TrnIpcDsplyRng2_D_Actl 15; +BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyRng2_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyRng2_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyRng_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyRng_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyGear_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyGear_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 369 TrnIpcDsplyGear_D_Actl 15; +BA_ "GenSigStartValue" SG_ 369 TrnIpcDsplyGear_D_Actl 15; +BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyGear_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyGear_D_Actl 1; +BA_ "WakeupSignal" SG_ 369 TrnIpcDsplyMde_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyMde_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyMde_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyMde_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyMde_D_Stat 1; +BA_ "WakeupSignal" SG_ 369 TrnIpcDsplyMde_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyMde_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyMde_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyMde_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 369 TrnIpcDsplyGear_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 369 TrnIpcDsplyGear_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 369 TrnIpcDsplyGear_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 369 TrnIpcDsplyGear_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 92 TrnLvrV_D_Rq 1; +BA_ "GenSigStartValue" SG_ 92 TrnLvrV_D_Rq 1; +BA_ "GenSigSendType" SG_ 92 TrnLvrV_D_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnLvrV_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnLvrV_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 92 TrnSbwSysHlth_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 92 TrnSbwSysHlth_D_Actl 1; +BA_ "ContentDependant" SG_ 92 TrnSbwSysHlth_D_Actl 1; +BA_ "GenSigStartValue" SG_ 92 TrnSbwSysHlth_D_Actl 1; +BA_ "GenSigSendType" SG_ 92 TrnSbwSysHlth_D_Actl 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnSbwSysHlth_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnSbwSysHlth_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 92 TrnGearNtmAllow_B_Stat 1; +BA_ "ContentDependant" SG_ 92 TrnGearNtmAllow_B_Stat 1; +BA_ "GenSigSendType" SG_ 92 TrnGearNtmAllow_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearNtmAllow_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearNtmAllow_B_Stat 1; +BA_ "WakeupSignal" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "ContentDependant" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "GenSigStartValue" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "GenSigSendType" SG_ 92 TrnDtpCmd_D_Actl 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnDtpCmd_D_Actl 1; +BA_ "GenSigSendType" SG_ 92 GearSelLck_D_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 GearSelLck_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 GearSelLck_D_Rq 1; +BA_ "ContentDependant" SG_ 92 TrnGearCmd_No_Cs 1; +BA_ "MetaData" SG_ 92 TrnGearCmd_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearCmd_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearCmd_No_Cs 1; +BA_ "ContentDependant" SG_ 92 TrnValidGear_D_Cnfm 1; +BA_ "GenSigSendType" SG_ 92 TrnValidGear_D_Cnfm 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnValidGear_D_Cnfm 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnValidGear_D_Cnfm 1; +BA_ "ContentDependant" SG_ 92 TrnNtrlTowCmd_D_Actl 1; +BA_ "GenSigSendType" SG_ 92 TrnNtrlTowCmd_D_Actl 3; +BA_ "U_CX727_MY2021_Rx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnNtrlTowCmd_D_Actl 1; +BA_ "ContentDependant" SG_ 92 TrnGearCmd_Pc_ActlPt 1; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearCmd_Pc_ActlPt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearCmd_Pc_ActlPt 1; +BA_ "ContentDependant" SG_ 92 TrnGear_D_RqPt 1; +BA_ "GenSigSendType" SG_ 92 TrnGear_D_RqPt 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGear_D_RqPt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGear_D_RqPt 1; +BA_ "ContentDependant" SG_ 92 TrnCmdState_B_Actl 1; +BA_ "GenSigSendType" SG_ 92 TrnCmdState_B_Actl 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnCmdState_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnCmdState_B_Actl 1; +BA_ "ContentDependant" SG_ 92 TrnCmdCnt_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnCmdCnt_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnCmdCnt_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "GenSigStartValueInteger" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "ContentDependant" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "GenSigStartValue" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "GenSigSendType" SG_ 92 PrkBrkActv_D_RqTrnGear 3; +BA_ "U_CX727_MY2021_Rx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "U_P702_MY2021_Rx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "U_P702_MY2021_Tx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 PrkBrkActv_D_RqTrnGear 1; +BA_ "CrossOver_InfoCAN" SG_ 92 TrnGearMsgTxt_D_Rq 1; +BA_ "ContentDependant" SG_ 92 TrnGearMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 92 TrnGearMsgTxt_D_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearMsgTxt_D_Rq 1; +BA_ "ContentDependant" SG_ 92 TrnGearCmd_No_Cnt 1; +BA_ "MetaData" SG_ 92 TrnGearCmd_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 92 TrnGearCmd_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 92 TrnGearCmd_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 2030 TesterPhysicalResSOBDMC 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 2030 TesterPhysicalResSOBDMC 1; +BA_ "U_P702_MY2021_Tx" SG_ 1087 BattRgenLoChrg_D_RqEng 1; +BA_ "GenSigSendType" SG_ 1087 BattRgenLoChrg_D_RqEng 3; +BA_ "GenSigSendType" SG_ 1087 AdasLcObtclAbrt_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1087 BattRgenLoDChrg_D_RqEng 1; +BA_ "GenSigSendType" SG_ 1087 BattRgenLoDChrg_D_RqEng 3; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 AirDamPos_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1087 AirDamPos_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1087 AirDamPos_D_Stat 1; +BA_ "GenSigSendType" SG_ 1087 FapLcInhbt_B_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcInhbt_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcInhbt_B_Rq 1; +BA_ "GenSigSendType" SG_ 1087 FapLcStopHold_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1087 FapLcStopHold_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1087 FapLcStopHold_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcStopHold_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcStopHold_B_Rq 1; +BA_ "GenSigSendType" SG_ 1087 FapLcPrchgBrk_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcPrchgBrk_B_Rq 1; +BA_ "GenSigSendType" SG_ 1087 FapLcObstcl_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcObstcl_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcObstcl_B_Stat 1; +BA_ "GenSigSendType" SG_ 1087 FapLcMaxGrdInhbt_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcMaxGrdInhbt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcMaxGrdInhbt_B_Stat 1; +BA_ "GenSigSendType" SG_ 1087 FapLcMaxGrdAbrt_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcMaxGrdAbrt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcMaxGrdAbrt_B_Stat 1; +BA_ "GenSigSendType" SG_ 1087 FapLcActv_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1087 FapLcActv_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1087 FapLcActv_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 332 UreaLvlQlty_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvlQlty_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvlQlty_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 332 UreaLvlTxtWarn_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvlTxtWarn_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvlTxtWarn_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 332 UreaQltySysWarn_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaQltySysWarn_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaQltySysWarn_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 DieslPrtcWarn_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 DieslPrtcWarn_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaQltyFlg_B_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaQltyFlg_B_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 332 UreaQltyFlg_B_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvl_Pc_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvl_Pc_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 332 UreaLvl_Pc_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 VehUreaRnge2_L_DsplyMx 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 VehUreaRnge2_L_DsplyMx 1; +BA_ "ECGUsedRxSignal" SG_ 332 VehUreaRnge2_L_DsplyMx 1; +BA_ "CrossOver_InfoCAN" SG_ 332 UreaQltySys_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaQltySys_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaQltySys_D_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 332 UreaQltySys_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 332 UreaLvlTxt_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 UreaLvlTxt_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 UreaLvlTxt_D_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 332 UreaLvlTxt_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 332 VehUreaWarn_V_DsplyMx 1; +BA_ "U_P702_MY2021_Tx" SG_ 332 VehUreaWarn_V_DsplyMx 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 332 VehUreaWarn_V_DsplyMx 1; +BA_ "ECGUsedRxSignal" SG_ 332 VehUreaWarn_V_DsplyMx 1; +BA_ "UsedOnPgmDBC" SG_ 1896 TesterPhysicalResABS 1; +BA_ "GenSigSendType" SG_ 1896 TesterPhysicalResABS 3; +BA_ "U_CX727_MY2021_Tx" SG_ 1896 TesterPhysicalResABS 1; +BA_ "U_P702_MY2021_Tx" SG_ 1896 TesterPhysicalResABS 1; +BA_ "GenSigSendType" SG_ 1889 TesterPhysicalReqTCCM 3; +BA_ "U_P702_MY2021_Rx" SG_ 1889 TesterPhysicalReqTCCM 1; +BA_ "UsedOnPgmDBC" SG_ 1888 TesterPhysicalReqABS 1; +BA_ "GenSigSendType" SG_ 1888 TesterPhysicalReqABS 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1888 TesterPhysicalReqABS 1; +BA_ "U_P702_MY2021_Rx" SG_ 1888 TesterPhysicalReqABS 1; +BA_ "UsedOnPgmDBC" SG_ 1848 TesterPhysicalResPSCM 1; +BA_ "U_CX727_MY2021_Tx" SG_ 1848 TesterPhysicalResPSCM 1; +BA_ "U_P702_MY2021_Tx" SG_ 1848 TesterPhysicalResPSCM 1; +BA_ "UsedOnPgmDBC" SG_ 1840 TesterPhysicalReqPSCM 1; +BA_ "GenSigSendType" SG_ 1840 TesterPhysicalReqPSCM 3; +BA_ "U_CX727_MY2021_Rx" SG_ 1840 TesterPhysicalReqPSCM 1; +BA_ "U_P702_MY2021_Rx" SG_ 1840 TesterPhysicalReqPSCM 1; +BA_ "UsedOnPgmDBC" SG_ 1713 UUDTABSResponse2 1; +BA_ "U_P702_MY2021_Tx" SG_ 1713 UUDTABSResponse2 1; +BA_ "UsedOnPgmDBC" SG_ 1712 UUDTABSResponse1 1; +BA_ "U_P702_MY2021_Tx" SG_ 1712 UUDTABSResponse1 1; +BA_ "UsedOnPgmDBC" SG_ 2025 TesterPhysicalResTCM 1; +BA_ "U_P702_MY2021_Tx" SG_ 2025 TesterPhysicalResTCM 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 2025 TesterPhysicalResTCM 1; +BA_ "UsedOnPgmDBC" SG_ 2024 TesterPhysicalResPCM 1; +BA_ "U_P702_MY2021_Tx" SG_ 2024 TesterPhysicalResPCM 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 2024 TesterPhysicalResPCM 1; +BA_ "UsedOnPgmDBC" SG_ 2017 TesterPhysicalReqTCM 1; +BA_ "GenSigSendType" SG_ 2017 TesterPhysicalReqTCM 3; +BA_ "U_P702_MY2021_Rx" SG_ 2017 TesterPhysicalReqTCM 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2017 TesterPhysicalReqTCM 1; +BA_ "UsedOnPgmDBC" SG_ 2016 TesterPhysicalReqPCM 1; +BA_ "GenSigSendType" SG_ 2016 TesterPhysicalReqPCM 3; +BA_ "U_P702_MY2021_Rx" SG_ 2016 TesterPhysicalReqPCM 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2016 TesterPhysicalReqPCM 1; +BA_ "CrossOver_InfoCAN" SG_ 2015 TesterFunctionalReq 1; +BA_ "UsedOnPgmDBC" SG_ 2015 TesterFunctionalReq 1; +BA_ "GenSigSendType" SG_ 2015 TesterFunctionalReq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 2015 TesterFunctionalReq 1; +BA_ "U_P702_MY2021_Rx" SG_ 2015 TesterFunctionalReq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 2015 TesterFunctionalReq 1; +BA_ "ECGUsedRxSignal" SG_ 2015 TesterFunctionalReq 1; +BA_ "GenSigSendType" SG_ 1897 TesterPhysicalResTCCM 3; +BA_ "U_P702_MY2021_Tx" SG_ 1897 TesterPhysicalResTCCM 1; +BA_ "GenSigSendType" SG_ 1814 TesterPhysicalReqGWM_F1 3; +BA_ "ECGUsedRxSignal" SG_ 1814 TesterPhysicalReqGWM_F1 1; +BA_ "UsedOnPgmDBC" SG_ 1701 UUDTTCMResponse2 1; +BA_ "U_P702_MY2021_Tx" SG_ 1701 UUDTTCMResponse2 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1701 UUDTTCMResponse2 1; +BA_ "UsedOnPgmDBC" SG_ 1700 UUDTTCMResponse1 1; +BA_ "U_P702_MY2021_Tx" SG_ 1700 UUDTTCMResponse1 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1700 UUDTTCMResponse1 1; +BA_ "UsedOnPgmDBC" SG_ 1697 UUDTPCMResponse2 1; +BA_ "U_P702_MY2021_Tx" SG_ 1697 UUDTPCMResponse2 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1697 UUDTPCMResponse2 1; +BA_ "UsedOnPgmDBC" SG_ 1696 UUDTPCMResponse1 1; +BA_ "U_P702_MY2021_Tx" SG_ 1696 UUDTPCMResponse1 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1696 UUDTPCMResponse1 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1429 PCM_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_GWOnBoardTester 255; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_GWOnBoardTester 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_GWOnBoardTester 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_GWOnBoardTester 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1429 PCM_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_GWNMProxy 255; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_GWNMProxy 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_GWNMProxy 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_GWNMProxy 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_GWNMProxy 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved4 255; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved4 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved4 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved4 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved3 255; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved3 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved3 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved3 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved2 255; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved2 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved2 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMReserved1 255; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMReserved1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMReserved1 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMReserved1 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1429 PCM_AutoSarNMNodeId 149; +BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1429 PCM_AutoSarNMNodeId 149; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMNodeId 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMNodeId 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMNodeId 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1429 PCM_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1429 PCM_AutoSarNMControl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1429 PCM_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1429 PCM_AutoSarNMControl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1429 PCM_AutoSarNMControl 1; +BA_ "GenSigStartValueInteger" SG_ 1100 EngExhMdeQuiet_D2_Stat 0; +BA_ "GenSigSendType" SG_ 1100 EngExhMdeQuiet_D2_Stat 3; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 HvacCmprLim_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1100 HvacCmprLim_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1100 WakeAlarm1_T_Rq 32767; +BA_ "GenSigStartValue" SG_ 1100 WakeAlarm1_T_Rq 32767; +BA_ "U_P702_MY2021_Tx" SG_ 1100 WakeAlarm1_T_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 WakeAlarm1_T_Rq 1; +BA_ "WakeupSignal" SG_ 1100 WakeAlarm1_B_Typ 1; +BA_ "GenSigSendType" SG_ 1100 WakeAlarm1_B_Typ 3; +BA_ "U_P702_MY2021_Tx" SG_ 1100 WakeAlarm1_B_Typ 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 WakeAlarm1_B_Typ 1; +BA_ "GenSigSendType" SG_ 1100 Veh_V_DsplyTrailCtlSet 3; +BA_ "U_P702_MY2021_Tx" SG_ 1100 Veh_V_DsplyTrailCtlSet 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 Veh_V_DsplyTrailCtlSet 1; +BA_ "GenSigSendType" SG_ 1100 TrailCtlPt_B_Falt 3; +BA_ "U_P702_MY2021_Rx" SG_ 1100 TrailCtlPt_B_Falt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1100 TrailCtlPt_B_Falt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 TrailCtlPt_B_Falt 1; +BA_ "GenSigSendType" SG_ 1100 AutoTowAllw_D_StatMnu 3; +BA_ "U_P702_MY2021_Tx" SG_ 1100 AutoTowAllw_D_StatMnu 1; +BA_ "GenSigSendType" SG_ 1100 AutoTowActv_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1100 AutoTowActv_B_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1100 GrossTrainWeight_M_Est 254; +BA_ "GenSigStartValue" SG_ 1100 GrossTrainWeight_M_Est 254; +BA_ "U_P702_MY2021_Rx" SG_ 1100 GrossTrainWeight_M_Est 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1100 GrossTrainWeight_M_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1100 GrossTrainWeight_M_Est 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1100 GrossTrainWeight_M_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmVeh_V_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmVeh_V_Dsply 1; +BA_ "GenSigSendType" SG_ 1098 EdmSailMdeOn_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmSailMdeOn_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmSailMdeOn_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmPrev_Fe_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmPrev_Fe_Dsply 1; +BA_ "GenSigSendType" SG_ 1098 EdmMsgTxt_D_Rq 3; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 1098 EdmLamp_D_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmLamp_D_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmLamp_D_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmCurrent_Fe_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmCurrent_Fe_Dsply 1; +BA_ "GenSigSendType" SG_ 1098 EdmCmplnc_B_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmCmplnc_B_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmCmplnc_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1098 EdmCmplnc_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1098 EdmCmplnc_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1086 EngMnfld_P_Actl 2068; +BA_ "U_P702_MY2021_Tx" SG_ 1086 EngMnfld_P_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 EngMnfld_P_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1086 FuelPumpPwr_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 FuelPumpPwr_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1086 BattULoChrg_U_Cmd 1; +BA_ "U_P702_MY2021_Tx" SG_ 1086 BattULoChrg_U_Cmd 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 BattULoChrg_U_Cmd 1; +BA_ "UsedOnPgmDBC" SG_ 1086 ElLoadCtl_D_Rq 1; +BA_ "ContentDependant" SG_ 1086 ElLoadCtl_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1086 ElLoadCtl_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1086 ElLoadCtl_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1071 EngAout_N_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 EngAout_N_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 1071 CluPdl_PcRate_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1071 CluPdl_PcRate_Actl 1; +BA_ "ContentDependant" SG_ 1071 CluPdl_PcRate_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1071 CluPdl_PcRate_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 CluPdl_PcRate_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "ContentDependant" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "MetaData" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "GenSigStartValue" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 CluPdlPosPcMeas_D_Qf 1; +BA_ "CrossOver_InfoCAN" SG_ 1071 CluPdlPos_Pc_Meas 1; +BA_ "UsedOnPgmDBC" SG_ 1071 CluPdlPos_Pc_Meas 1; +BA_ "ContentDependant" SG_ 1071 CluPdlPos_Pc_Meas 1; +BA_ "U_P702_MY2021_Rx" SG_ 1071 CluPdlPos_Pc_Meas 1; +BA_ "U_P702_MY2021_Tx" SG_ 1071 CluPdlPos_Pc_Meas 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 CluPdlPos_Pc_Meas 1; +BA_ "CrossOver_InfoCAN" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "UsedOnPgmDBC" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "ContentDependant" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1071 EngAoutIdl_N_Ntrl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 SlMde_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 SlMde_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 SlMde_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 SlMde_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 IsaOffst_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 IsaOffst_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 GrllShtrPos_D_Cmd 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 GrllShtrPos_D_Cmd 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 GrllShtrPos_D_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 GrllShtrPos_B_Falt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 GrllShtrPos_B_Falt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 GrllShtrPos_B_Falt 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 ObdWarmUp_B_Complt 1; +BA_ "ContentDependant" SG_ 1069 ObdWarmUp_B_Complt 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 ObdWarmUp_B_Complt 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 EngMsgTxt_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1069 EngMsgTxt_D_Rq 1; +BA_ "ContentDependant" SG_ 1069 EngMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 EngMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 EngClnt_Te_ActlDiag 1; +BA_ "ContentDependant" SG_ 1069 EngClnt_Te_ActlDiag 1; +BA_ "U_P702_MY2021_Rx" SG_ 1069 EngClnt_Te_ActlDiag 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 EngClnt_Te_ActlDiag 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 EngClnt_Te_ActlDiag 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngClnt_Te_ActlDiag 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 EngLoad_Pc_CalcDiag 1; +BA_ "ContentDependant" SG_ 1069 EngLoad_Pc_CalcDiag 1; +BA_ "U_P702_MY2021_Rx" SG_ 1069 EngLoad_Pc_CalcDiag 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 EngLoad_Pc_CalcDiag 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 EngLoad_Pc_CalcDiag 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngLoad_Pc_CalcDiag 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 EngAirIn_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1069 EngAirIn_Te_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1069 EngAirIn_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 EngAirIn_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 EngAirIn_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 EngAirIn_Te_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1069 ApedPos_Pc_ActlDiag 1; +BA_ "ContentDependant" SG_ 1069 ApedPos_Pc_ActlDiag 1; +BA_ "U_P702_MY2021_Rx" SG_ 1069 ApedPos_Pc_ActlDiag 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1069 ApedPos_Pc_ActlDiag 1; +BA_ "U_P702_MY2021_Tx" SG_ 1069 ApedPos_Pc_ActlDiag 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1069 ApedPos_Pc_ActlDiag 1; +BA_ "U_P702_MY2021_Tx" SG_ 1060 RearDiffOilTeWarn_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 RearDiffOilTeWarn_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1060 RearDiffOil_Te_Actl 77; +BA_ "GenSigStartValue" SG_ 1060 RearDiffOil_Te_Actl 77; +BA_ "U_P702_MY2021_Tx" SG_ 1060 RearDiffOil_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 RearDiffOil_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1060 BpedDrvMsgTxt_B_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 BpedDrvMsgTxt_B_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1060 FuelLvl_Pc_DsplyEng 48; +BA_ "GenSigStartValue" SG_ 1060 FuelLvl_Pc_DsplyEng 0; +BA_ "U_P702_MY2021_Tx" SG_ 1060 FuelLvl_Pc_DsplyEng 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 FuelLvl_Pc_DsplyEng 1; +BA_ "U_P702_MY2021_Tx" SG_ 1060 FuelLvlWarn_D_ActlEng 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 FuelLvlWarn_D_ActlEng 1; +BA_ "U_P702_MY2021_Tx" SG_ 1060 FuelRange_L_DsplyEng 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 FuelRange_L_DsplyEng 1; +BA_ "U_P702_MY2021_Rx" SG_ 1060 SelDrvMdePt_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1060 SelDrvMdePt_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1060 SelDrvMdePt_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 FohEng_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1057 FohEng_D_Rq 2; +BA_ "ContentDependant" SG_ 1057 FohEng_D_Rq 1; +BA_ "GenSigStartValue" SG_ 1057 FohEng_D_Rq 2; +BA_ "U_P702_MY2021_Tx" SG_ 1057 FohEng_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 FohEng_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 EngIdlShutDwnTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 EngIdlShutDwnTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 EngIdlShutDown_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1057 EngIdlShutDown_D_Stat 1; +BA_ "ContentDependant" SG_ 1057 EngIdlShutDown_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 EngIdlShutDown_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 EngIdlShutDown_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 1057 EngIdlShutDown_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; +BA_ "GenSigStartValueInteger" SG_ 1057 FUEL_ALCOHOL_PERCNT 255; +BA_ "ContentDependant" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; +BA_ "GenSigStartValue" SG_ 1057 FUEL_ALCOHOL_PERCNT 255; +BA_ "U_P702_MY2021_Tx" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 FUEL_ALCOHOL_PERCNT 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 TrnTotTq_Rt_Est 1; +BA_ "UsedOnPgmDBC" SG_ 1057 TrnTotTq_Rt_Est 1; +BA_ "ContentDependant" SG_ 1057 TrnTotTq_Rt_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 TrnTotTq_Rt_Est 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 TrnTotTq_Rt_Est 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 TrnTotLss_Tq_Est 1; +BA_ "UsedOnPgmDBC" SG_ 1057 TrnTotLss_Tq_Est 1; +BA_ "ContentDependant" SG_ 1057 TrnTotLss_Tq_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 TrnTotLss_Tq_Est 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 TrnTotLss_Tq_Est 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 ECMMILRequest 1; +BA_ "UsedOnPgmDBC" SG_ 1057 ECMMILRequest 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 ECMMILRequest 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 ECMMILRequest 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 AirCondFluidHi_P_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1057 AirCondFluidHi_P_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 AirCondFluidHi_P_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 AirCondFluidHi_P_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 OilPressureWarning 1; +BA_ "UsedOnPgmDBC" SG_ 1057 OilPressureWarning 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 OilPressureWarning 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 OilPressureWarning 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "ContentDependant" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 VehVLimStat_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "ContentDependant" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 VehVLimActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1057 CoolantFanStepAct 1; +BA_ "UsedOnPgmDBC" SG_ 1057 CoolantFanStepAct 1; +BA_ "U_P702_MY2021_Tx" SG_ 1057 CoolantFanStepAct 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1057 CoolantFanStepAct 1; +BA_ "CrossOver_InfoCAN" SG_ 1055 EcoCochInstNeg_B_Dsply 1; +BA_ "UsedOnPgmDBC" SG_ 1055 EcoCochInstNeg_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochInstNeg_B_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochInstNeg_B_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochInstNeg_B_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochShif_Pc_Dsply 255; +BA_ "GenSigStartValue" SG_ 1055 EcoCochShif_Pc_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochShif_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochShif_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochShif_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochInst_Pc_Dsply 1000; +BA_ "GenSigStartValue" SG_ 1055 EcoCochInst_Pc_Dsply 100; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochInst_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochInst_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochInst_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 255; +BA_ "GenSigStartValue" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochIdlFuel_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochDecel_Pc_Dsply 255; +BA_ "GenSigStartValue" SG_ 1055 EcoCochDecel_Pc_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochDecel_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochDecel_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochDecel_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochCrus_Pc_Dsply 255; +BA_ "GenSigStartValue" SG_ 1055 EcoCochCrus_Pc_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochCrus_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochCrus_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochCrus_Pc_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1055 EcoCochA_Pc_Dsply 255; +BA_ "GenSigStartValue" SG_ 1055 EcoCochA_Pc_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 1055 EcoCochA_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 1055 EcoCochA_Pc_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 1055 EcoCochA_Pc_Dsply 1; +BA_ "ContentDependant" SG_ 562 GearNtrl_No_Cs 1; +BA_ "MetaData" SG_ 562 GearNtrl_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 562 GearNtrl_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 562 GearNtrl_No_Cs 1; +BA_ "ContentDependant" SG_ 562 GearNtrl_No_Cnt 1; +BA_ "MetaData" SG_ 562 GearNtrl_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 562 GearNtrl_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 562 GearNtrl_No_Cnt 1; +BA_ "GenSigStartValueInteger" SG_ 562 GearNtrl_D_Stat 2; +BA_ "GenSigStartValue" SG_ 562 GearNtrl_D_Stat 2; +BA_ "GenSigSendType" SG_ 562 GearNtrl_D_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 562 GearNtrl_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 562 GearNtrl_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 523 EngAirFiltMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 EngAirFiltMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 523 WaterInFuel_B_Falt 1; +BA_ "UsedOnPgmDBC" SG_ 523 WaterInFuel_B_Falt 1; +BA_ "U_P702_MY2021_Tx" SG_ 523 WaterInFuel_B_Falt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 WaterInFuel_B_Falt 1; +BA_ "U_P702_MY2021_Tx" SG_ 523 UreaMnAdd_L2_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 UreaMnAdd_L2_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 523 VehUreaRnge3_L_DsplyMx 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 VehUreaRnge3_L_DsplyMx 1; +BA_ "ECGUsedRxSignal" SG_ 523 VehUreaRnge3_L_DsplyMx 1; +BA_ "GenSigStartValueInteger" SG_ 523 UreaMxAdd_L2_Actl 510; +BA_ "GenSigStartValue" SG_ 523 UreaMxAdd_L2_Actl 510; +BA_ "U_P702_MY2021_Tx" SG_ 523 UreaMxAdd_L2_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 523 UreaMxAdd_L2_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 517 FapLc_B_Err 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 517 FapLc_B_Err 1; +BA_ "U_CX727_MY2021_Rx" SG_ 517 BrkTot_Tq_RqFapLc 1; +BA_ "U_P702_MY2021_Rx" SG_ 517 BrkTot_Tq_RqFapLc 1; +BA_ "U_P702_MY2021_Tx" SG_ 517 BrkTot_Tq_RqFapLc 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 517 BrkTot_Tq_RqFapLc 1; +BA_ "U_P702_MY2021_Tx" SG_ 517 TrnAin_Pc_RqDrv 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 517 TrnAin_Pc_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "UsedOnPgmDBC" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "GenSigStartValueInteger" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "MetaData" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "GenSigStartValue" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "U_P702_MY2021_Rx" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 EngAoutNActl_D_QF 1; +BA_ "CrossOver_InfoCAN" SG_ 516 EngAout3_N_Actl 1; +BA_ "ContentDependant" SG_ 516 EngAout3_N_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 EngAout3_N_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 516 ApedPos_PcRate_ActlArb 1; +BA_ "UsedOnPgmDBC" SG_ 516 ApedPos_PcRate_ActlArb 1; +BA_ "U_P702_MY2021_Rx" SG_ 516 ApedPos_PcRate_ActlArb 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 ApedPos_PcRate_ActlArb 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPos_PcRate_ActlArb 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPos_PcRate_ActlArb 1; +BA_ "CrossOver_InfoCAN" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "UsedOnPgmDBC" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "U_P702_MY2021_Rx" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "U_CX727_MY2021_Rx" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "ECGUsedRxSignal" SG_ 516 ApedPos_Pc_ActlArb 1; +BA_ "CrossOver_InfoCAN" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "MetaData" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPosPcActl_D_Qf 1; +BA_ "CrossOver_InfoCAN" SG_ 516 EngAout_N_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 516 EngAout_N_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 516 EngAout_N_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 516 EngAout_N_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 516 EngAout_N_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 EngAout_N_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 EngAout_N_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 516 EngAout_N_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 516 ApedPosPcActl_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 516 ApedPosPcActl_No_Cnt 1; +BA_ "ContentDependant" SG_ 516 ApedPosPcActl_No_Cnt 1; +BA_ "MetaData" SG_ 516 ApedPosPcActl_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPosPcActl_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPosPcActl_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 516 ApedPosPcActl_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 516 ApedPosPcActl_No_Cs 1; +BA_ "ContentDependant" SG_ 516 ApedPosPcActl_No_Cs 1; +BA_ "MetaData" SG_ 516 ApedPosPcActl_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 516 ApedPosPcActl_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 516 ApedPosPcActl_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 StrtrMtrDlyStrt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 StrtrMtrDlyStrt_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 VehVTrlrAid_B_Avail 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 VehVTrlrAid_B_Avail 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVTrlrAid_B_Avail 1; +BA_ "CrossOver_InfoCAN" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "MetaData" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVActlEng_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "MetaData" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVActlEng_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 514 Veh_V_RqCcSet 1; +BA_ "UsedOnPgmDBC" SG_ 514 Veh_V_RqCcSet 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 Veh_V_RqCcSet 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 514 Veh_V_RqCcSet 1; +BA_ "U_CX727_MY2021_Rx" SG_ 514 Veh_V_RqCcSet 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 Veh_V_RqCcSet 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 Veh_V_RqCcSet 1; +BA_ "CrossOver_InfoCAN" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "MetaData" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 VehVActlEng_D_Qf 1; +BA_ "CrossOver_InfoCAN" SG_ 514 Veh_V_ActlEng 1; +BA_ "UsedOnPgmDBC" SG_ 514 Veh_V_ActlEng 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 Veh_V_ActlEng 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 514 Veh_V_ActlEng 1; +BA_ "U_CX727_MY2021_Rx" SG_ 514 Veh_V_ActlEng 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 Veh_V_ActlEng 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 Veh_V_ActlEng 1; +BA_ "ECGUsedRxSignal" SG_ 514 Veh_V_ActlEng 1; +BA_ "CrossOver_InfoCAN" SG_ 514 GearRvrse_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 514 GearRvrse_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 514 GearRvrse_D_Actl 7; +BA_ "GenSigStartValue" SG_ 514 GearRvrse_D_Actl 7; +BA_ "U_CX727_MY2021_Rx" SG_ 514 GearRvrse_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 514 GearRvrse_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 GearRvrse_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 GearRvrse_D_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 514 GearRvrse_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D2_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 514 StrtrMtrCtlMsgTxt_D2_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTotTqRq_No_Cs 1; +BA_ "ContentDependant" SG_ 512 PrplWhlTotTqRq_No_Cs 1; +BA_ "MetaData" SG_ 512 PrplWhlTotTqRq_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTotTqRq_No_Cs 1; +BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTotTqRq_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; +BA_ "ContentDependant" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; +BA_ "MetaData" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; +BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTotTqRq_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTot_Tq_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTot_Tq_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 512 PrplWhlTot_Tq_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 512 PrplWhlTot_Tq_LimMn 1; +BA_ "U_CX727_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_LimMn 1; +BA_ "U_P702_MY2021_Rx" SG_ 512 PrplWhlTot_Tq_LimMn 1; +BA_ "U_P702_MY2021_Tx" SG_ 512 PrplWhlTot_Tq_LimMn 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 512 PrplWhlTot_Tq_LimMn 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 512 PtDrvMde_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 512 PtDrvMde_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 381 EngOilLife_T_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 EngOilLife_T_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 381 EngOilSrvcMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 EngOilSrvcMsgTxt_D_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 381 EngOilSrvcMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 381 DistToNextOilChange 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 DistToNextOilChange 1; +BA_ "U_P702_MY2021_Tx" SG_ 381 RunDryPrevent_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 RunDryPrevent_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 381 WaterInFuel 1; +BA_ "UsedOnPgmDBC" SG_ 381 WaterInFuel 1; +BA_ "U_P702_MY2021_Tx" SG_ 381 WaterInFuel 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 WaterInFuel 1; +BA_ "ECGUsedRxSignal" SG_ 381 WaterInFuel 1; +BA_ "CrossOver_InfoCAN" SG_ 381 GlowIndication 1; +BA_ "UsedOnPgmDBC" SG_ 381 GlowIndication 1; +BA_ "U_P702_MY2021_Tx" SG_ 381 GlowIndication 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 381 GlowIndication 1; +BA_ "WakeupSignal" SG_ 380 EngOilLvlWarn_D_Rq1 1; +BA_ "CrossOver_InfoCAN" SG_ 380 EngOilLvlWarn_D_Rq1 1; +BA_ "U_P702_MY2021_Tx" SG_ 380 EngOilLvlWarn_D_Rq1 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngOilLvlWarn_D_Rq1 1; +BA_ "CrossOver_InfoCAN" SG_ 380 EngExhBrkOnLamp_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 380 EngExhBrkOnLamp_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngExhBrkOnLamp_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 380 EngExhBrkAutoLamp_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 380 EngExhBrkAutoLamp_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngExhBrkAutoLamp_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 380 EngAout_N_MxAllw 1; +BA_ "UsedOnPgmDBC" SG_ 380 EngAout_N_MxAllw 1; +BA_ "U_P702_MY2021_Tx" SG_ 380 EngAout_N_MxAllw 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngAout_N_MxAllw 1; +BA_ "CrossOver_InfoCAN" SG_ 380 EngExhBrkMde_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 380 EngExhBrkMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 380 EngExhBrkMde_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 380 EngExhBrkMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 380 EngExhBrkMde_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 377 HvacAirFullOut_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 HvacAirFullOut_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 377 FuelFlw_Vl_Dsply 1; +BA_ "UsedOnPgmDBC" SG_ 377 FuelFlw_Vl_Dsply 1; +BA_ "ContentDependant" SG_ 377 FuelFlw_Vl_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 FuelFlw_Vl_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 FuelFlw_Vl_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 377 FuelFlw_Vl_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 377 FuelFillInlet_B_Dsply 1; +BA_ "UsedOnPgmDBC" SG_ 377 FuelFillInlet_B_Dsply 1; +BA_ "ContentDependant" SG_ 377 FuelFillInlet_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 FuelFillInlet_B_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 FuelFillInlet_B_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 377 EngSrvcRqd_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 377 EngSrvcRqd_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 EngSrvcRqd_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 EngSrvcRqd_B_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 377 EngSrvcRqd_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 377 OdoCount 1; +BA_ "UsedOnPgmDBC" SG_ 377 OdoCount 1; +BA_ "ContentDependant" SG_ 377 OdoCount 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 OdoCount 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 OdoCount 1; +BA_ "CrossOver_InfoCAN" SG_ 377 EngOilLife_Pc_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 377 EngOilLife_Pc_Actl 1; +BA_ "ContentDependant" SG_ 377 EngOilLife_Pc_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 EngOilLife_Pc_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 EngOilLife_Pc_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 377 EngOilLife_Pc_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 377 FuelFilterLamp_B_Dsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 FuelFilterLamp_B_Dsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 FuelFilterLamp_B_Dsply 1; +BA_ "ECGUsedRxSignal" SG_ 377 FuelFilterLamp_B_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 377 AirCondRec_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 377 AirCondRec_B_Rq 1; +BA_ "ContentDependant" SG_ 377 AirCondRec_B_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 AirCondRec_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 AirCondRec_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 377 AirCondClutch_B_Stats 1; +BA_ "UsedOnPgmDBC" SG_ 377 AirCondClutch_B_Stats 1; +BA_ "ContentDependant" SG_ 377 AirCondClutch_B_Stats 1; +BA_ "U_P702_MY2021_Tx" SG_ 377 AirCondClutch_B_Stats 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 377 AirCondClutch_B_Stats 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 GasPrtc_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 GasPrtc_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 376 EngAout_Aa_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 376 EngAout_Aa_Actl 1; +BA_ "ContentDependant" SG_ 376 EngAout_Aa_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 376 EngAout_Aa_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 376 EngAout_Aa_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 EngAout_Aa_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 EngAout_Aa_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 376 DynoMde_B_Cmd 1; +BA_ "U_P702_MY2021_Rx" SG_ 376 DynoMde_B_Cmd 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 376 DynoMde_B_Cmd 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 DynoMde_B_Cmd 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 DynoMde_B_Cmd 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 AslIconDsply_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AslIconDsply_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 AslChime_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AslChime_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 376 HvacHtrCore2_Te_Actl 200; +BA_ "U_P702_MY2021_Tx" SG_ 376 HvacHtrCore2_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 EcssLamp_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 EcssLamp_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "MetaData" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "GenSigStartValue" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmbTe_D_Qf 1; +BA_ "CrossOver_InfoCAN" SG_ 376 AirAmb_Te_ActlFilt 1; +BA_ "UsedOnPgmDBC" SG_ 376 AirAmb_Te_ActlFilt 1; +BA_ "GenSigStartValueInteger" SG_ 376 AirAmb_Te_ActlFilt 512; +BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmb_Te_ActlFilt 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmb_Te_ActlFilt 1; +BA_ "ECGUsedRxSignal" SG_ 376 AirAmb_Te_ActlFilt 1; +BA_ "CrossOver_InfoCAN" SG_ 376 AirAmb_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 376 AirAmb_Te_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 376 AirAmb_Te_Actl 512; +BA_ "U_P702_MY2021_Rx" SG_ 376 AirAmb_Te_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 376 AirAmb_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmb_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmb_Te_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 376 AirAmb_P_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 376 AirAmb_P_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 376 AirAmb_P_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 376 AirAmb_P_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 376 AirAmb_P_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 373 DieslPrtc2_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 DieslPrtc2_D_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 373 DieslPrtc2_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 373 DieslPrtcRgen_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 373 DieslPrtcRgen_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 373 DieslPrtcRgen_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 373 DieslPrtcRgen_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 373 DieslPrtcRgen_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 DieslPrtcRgen_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 373 EngTeColdPrtct_D_Stats 1; +BA_ "UsedOnPgmDBC" SG_ 373 EngTeColdPrtct_D_Stats 1; +BA_ "U_P702_MY2021_Tx" SG_ 373 EngTeColdPrtct_D_Stats 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 EngTeColdPrtct_D_Stats 1; +BA_ "CrossOver_InfoCAN" SG_ 373 EngExhOvrTe_B_RqDsply 1; +BA_ "UsedOnPgmDBC" SG_ 373 EngExhOvrTe_B_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 373 EngExhOvrTe_B_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 373 EngExhOvrTe_B_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 373 EngExhOvrTe_B_RqDsply 1; +BA_ "GenSigStartValueInteger" SG_ 359 PrplWhlRgenMn_Tq_Actl 4095; +BA_ "U_CX727_MY2021_Rx" SG_ 359 PrplWhlRgenMn_Tq_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 PrplWhlRgenMn_Tq_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 PrplWhlRgenMn_Tq_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 359 ElPw_D_StatStrtStop 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 ElPw_D_StatStrtStop 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 ElPw_D_StatStrtStop 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 ElPw_D_StatStrtStop 1; +BA_ "CrossOver_InfoCAN" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "ContentDependant" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 TrnAin_Tq_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 359 PrplWhlTot2_Tq_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 359 PwPckTq_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 359 PwPckTq_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 PwPckTq_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 359 PwPckTq_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 359 PwPckTq_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 PwPckTq_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 PwPckTq_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 359 PwPckTq_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 359 Eng_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 359 Eng_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 359 Eng_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 Eng_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 Eng_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 Eng_D_Stat 1; +BA_ "ECGUsedRxSignal" SG_ 359 Eng_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 359 PlgActvArb_B_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 359 PlgActvArb_B_Actl 1; +BA_ "ContentDependant" SG_ 359 PlgActvArb_B_Actl 1; +BA_ "GenSigStartValue" SG_ 359 PlgActvArb_B_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 359 PlgActvArb_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 359 ElPw_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 359 ElPw_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 ElPw_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 359 ElPw_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 359 ElPw_D_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 ElPw_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 ElPw_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "ContentDependant" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "MetaData" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 359 TrnAinTq_D_Qf 1; +BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtStdby_D_Indic 1; +BA_ "GenSigStartValueInteger" SG_ 358 StopStrtStdby_D_Indic 0; +BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtStdby_D_Indic 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtStdby_D_Indic 1; +BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtIODTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtIODTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtIODTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtDrvMde_D_Indic 1; +BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtDrvMde_D_Indic 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtDrvMde_D_Indic 1; +BA_ "CrossOver_InfoCAN" SG_ 358 StopStrtMsgTxt_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 358 StopStrtMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 StopStrtMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 358 OdoTripVerify_L_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 358 OdoTripVerify_L_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 OdoTripVerify_L_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 358 HiElPwInhbt_B_Stat 1; +BA_ "ContentDependant" SG_ 358 HiElPwInhbt_B_Stat 1; +BA_ "U_P702_MY2021_Tx" SG_ 358 HiElPwInhbt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 HiElPwInhbt_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 358 AutoStopPtDelta_I_Est 1; +BA_ "GenSigStartValueInteger" SG_ 358 AutoStopPtDelta_I_Est 127; +BA_ "ContentDependant" SG_ 358 AutoStopPtDelta_I_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 358 AutoStopPtDelta_I_Est 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 358 AutoStopPtDelta_I_Est 1; +BA_ "UsedOnPgmDBC" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "GenSigStartValueInteger" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "MetaData" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "GenSigStartValue" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "U_P702_MY2021_Rx" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "U_CX727_MY2021_Rx" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 BPedDrvAppl_D_QF 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 CmbbDeny_B_ActlPrpl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CmbbDeny_B_ActlPrpl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 PrplTqMnSat_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 PrplTqMnSat_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "GenSigStartValue" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 357 BpedDrvAppl_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 CmbbEngTqMn_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CmbbEngTqMn_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 357 Veh_V_DsplyCcSet 1; +BA_ "UsedOnPgmDBC" SG_ 357 Veh_V_DsplyCcSet 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 Veh_V_DsplyCcSet 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 Veh_V_DsplyCcSet 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 AccEngStat_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 AccEngStat_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 357 CcMde_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 357 CcMde_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 357 CcMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 CcMde_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 CcMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CcMde_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 357 CcStat_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 357 CcStat_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 357 CcStat_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 CcStat_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 357 CcStat_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 CcStat_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CcStat_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 EngAout_N_MnAllw 1; +BA_ "CrossOver_InfoCAN" SG_ 357 CcOvrrdActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 357 CcOvrrdActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 357 CcOvrrdActv_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 357 CcOvrrdActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 CcOvrrdActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 CcOvrrdActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 357 AccStopMde_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 357 AccStopMde_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 357 AccStopMde_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 357 AccStopMde_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 357 AccStopMde_D_Rq 1; +BA_ "U_P702_MY2021_Tx" SG_ 355 AutoRgenTxt_B_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 AutoRgenTxt_B_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 355 AutoRgenTxt_B_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 355 AccFllwMdeActv_B_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 355 AccFllwMdeActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 AccFllwMdeActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 355 EngPtoMde_D_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 355 EngPtoMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 EngPtoMde_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 355 ManRgenTxt_D_RqDsply 1; +BA_ "UsedOnPgmDBC" SG_ 355 ManRgenTxt_D_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 355 ManRgenTxt_D_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 ManRgenTxt_D_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 355 ManRgenTxt_D_RqDsply 1; +BA_ "CrossOver_InfoCAN" SG_ 355 ManRgenSoot_Pc_RqDsply 1; +BA_ "UsedOnPgmDBC" SG_ 355 ManRgenSoot_Pc_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 355 ManRgenSoot_Pc_RqDsply 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 ManRgenSoot_Pc_RqDsply 1; +BA_ "ECGUsedRxSignal" SG_ 355 ManRgenSoot_Pc_RqDsply 1; +BA_ "U_P702_MY2021_Tx" SG_ 355 DieslMsgTxt_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 355 DieslMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 342 EngOvrhtMitgActv_D_Ind 1; +BA_ "UsedOnPgmDBC" SG_ 342 EngOvrhtMitgActv_D_Ind 1; +BA_ "ContentDependant" SG_ 342 EngOvrhtMitgActv_D_Ind 1; +BA_ "U_P702_MY2021_Tx" SG_ 342 EngOvrhtMitgActv_D_Ind 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngOvrhtMitgActv_D_Ind 1; +BA_ "CrossOver_InfoCAN" SG_ 342 EngClntTe_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 342 EngClntTe_D_Qf 1; +BA_ "MetaData" SG_ 342 EngClntTe_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 342 EngClntTe_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 342 EngClntTe_D_Qf 1; +BA_ "U_P702_MY2021_Tx" SG_ 342 EngClntTe_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngClntTe_D_Qf 1; +BA_ "CrossOver_InfoCAN" SG_ 342 EngGoutLss_Tq_Est 1; +BA_ "ContentDependant" SG_ 342 EngGoutLss_Tq_Est 1; +BA_ "U_P702_MY2021_Tx" SG_ 342 EngGoutLss_Tq_Est 1; +BA_ "CrossOver_InfoCAN" SG_ 342 EngOil_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 342 EngOil_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngOil_Te_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 342 EngClnt_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 342 EngClnt_Te_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 342 EngClnt_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 342 EngClnt_Te_Actl 1; +BA_ "U_P702_MY2021_Tx" SG_ 342 EngClnt_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 342 EngClnt_Te_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 342 EngClnt_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 71 immoTarget1Status 1; +BA_ "U_P702_MY2021_Rx" SG_ 71 immoTarget1Status 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 71 immoTarget1Status 1; +BA_ "U_CX727_MY2021_Rx" SG_ 71 immoTarget1Status 1; +BA_ "U_P702_MY2021_Tx" SG_ 71 immoTarget1Status 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 71 immoTarget1Status 1; +BA_ "UsedOnPgmDBC" SG_ 71 immoTarget1Data 1; +BA_ "U_CX727_MY2021_Rx" SG_ 71 immoTarget1Data 1; +BA_ "U_P702_MY2021_Rx" SG_ 71 immoTarget1Data 1; +BA_ "U_P702_MY2021_Tx" SG_ 71 immoTarget1Data 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 71 immoTarget1Data 1; +BA_ "UsedOnPgmDBC" SG_ 71 immoTarget1Cmd 1; +BA_ "U_CX727_MY2021_Rx" SG_ 71 immoTarget1Cmd 1; +BA_ "U_P702_MY2021_Rx" SG_ 71 immoTarget1Cmd 1; +BA_ "U_P702_MY2021_Tx" SG_ 71 immoTarget1Cmd 1; +BA_ "U_T6_MCA_MY2020_Tx" SG_ 71 immoTarget1Cmd 1; +BA_ "GenSigSendType" SG_ 1822 TesterPhysicalResGWM_F1 3; +BA_ "ECGUsedTxSignal" SG_ 1822 TesterPhysicalResGWM_F1 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1438 GWM_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_GWOnBoardTester 255; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1438 GWM_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_GWNMProxy 255; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_GWNMProxy 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved4 255; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved3 255; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved2 255; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMReserved1 255; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1438 GWM_AutoSarNMNodeId 158; +BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1438 GWM_AutoSarNMNodeId 158; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1438 GWM_AutoSarNMControl 1; +BA_ "ECGUsedTxSignal" SG_ 1438 GWM_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Rx" SG_ 954 GenericSwtch3_No_Actl 1; +BA_ "ContentDependant" SG_ 954 GenericSwtch2_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 954 GenericSwtch2_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 954 GenericSwtch1_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1006 PersIndexIpmb_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1006 PersIndexIpmb_D_Actl 4; +BA_ "GenSigStartValue" SG_ 1006 PersIndexIpmb_D_Actl 4; +BA_ "GenSigSendType" SG_ 1006 PersIndexIpmb_D_Actl 3; +BA_ "CrossOver_InfoCAN" SG_ 1006 FeatNoIpmbActl 1; +BA_ "GenSigSendType" SG_ 1006 FeatNoIpmbActl 3; +BA_ "CrossOver_InfoCAN" SG_ 1006 FeatConfigIpmbActl 1; +BA_ "GenSigSendType" SG_ 1006 FeatConfigIpmbActl 3; +BA_ "GenSigSendType" SG_ 820 AhbStatGfhbFdbk_D_Actl 3; +BA_ "U_P702_MY2021_Tx" SG_ 820 AhbStatGfhbFdbk_D_Actl 1; +BA_ "GenSigSendType" SG_ 820 HeadLghtDrvSide_B_Stat 3; +BA_ "U_P702_MY2021_Tx" SG_ 820 HeadLghtDrvSide_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 820 HeadLghtHiOn_B_StatHcm 1; +BA_ "GenSigSendType" SG_ 820 HeadLghtHiOn_B_StatHcm 3; +BA_ "U_P702_MY2021_Tx" SG_ 820 HeadLghtHiOn_B_StatHcm 1; +BA_ "CrossOver_InfoCAN" SG_ 820 Adaptive_Hdlmp_Fault 1; +BA_ "GenSigSendType" SG_ 820 Adaptive_Hdlmp_Fault 3; +BA_ "U_P702_MY2021_Tx" SG_ 820 Adaptive_Hdlmp_Fault 1; +BA_ "GenSigStartValueInteger" SG_ 137 SteWhlOffstRq_D_Stat 2; +BA_ "GenSigStartValue" SG_ 137 SteWhlOffstRq_D_Stat 2; +BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlOffstRq_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 137 SteWhlOffst_An_TotActl 32766; +BA_ "GenSigStartValue" SG_ 137 SteWhlOffst_An_TotActl 32765; +BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlOffst_An_TotActl 1; +BA_ "GenSigStartValueInteger" SG_ 137 SteWhlBrkOffst_An_Actl 32766; +BA_ "GenSigStartValue" SG_ 137 SteWhlBrkOffst_An_Actl 32765; +BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlBrkOffst_An_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 137 SteWhlBrkAnActl_No_Cs 1; +BA_ "MetaData" SG_ 137 SteWhlBrkAnActl_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlBrkAnActl_No_Cs 1; +BA_ "CrossOver_InfoCAN" SG_ 137 SteWhlBrkAnActl_No_Cnt 1; +BA_ "MetaData" SG_ 137 SteWhlBrkAnActl_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 137 SteWhlBrkAnActl_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 129 SelDrvMdeSwtch_D_Stat4 1; +BA_ "U_P702_MY2021_Rx" SG_ 129 SelDrvMdeSwtch_D_Stat4 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchView_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchSet_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchPhon_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchNav_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchMed_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchIod_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchHud_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchBack_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchMenu_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchUp_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchRght_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchOk_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchLeft_B_Stat 1; +BA_ "WakeupSignal" SG_ 129 SteWhlSwtchDown_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 935 SodRight_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 935 SodRight_D_Stat 2; +BA_ "GenSigStartValue" SG_ 935 SodRight_D_Stat 2; +BA_ "GenSigSendType" SG_ 935 SodRight_D_Stat 3; +BA_ "GenSigSendType" SG_ 935 CtaAlrtRight2_D_Stat 3; +BA_ "GenSigSendType" SG_ 935 BttRight_D_Stat 3; +BA_ "GenSigSendType" SG_ 935 BttRight_D_RqDrv 3; +BA_ "GenSigSendType" SG_ 935 CtaBrkRightMsgTxt_B_Rq 3; +BA_ "GenSigSendType" SG_ 935 CtaRightBrkEnbl_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 935 CtaRightBrkEnbl_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 935 CtaRightBrkEnbl_B_Rq 1; +BA_ "GenSigSendType" SG_ 935 CtaRightBrkDecel_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 935 CtaRightBrkDecel_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 935 CtaRightBrkDecel_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 935 Side_Detect_R_Illum 1; +BA_ "GenSigStartValueInteger" SG_ 935 Side_Detect_R_Illum 100; +BA_ "GenSigStartValue" SG_ 935 Side_Detect_R_Illum 100; +BA_ "CrossOver_InfoCAN" SG_ 935 CtaSnsRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 935 CtaSnsRight_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 935 CtaAlrtRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 935 CtaAlrtRight_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 935 CtaRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 935 CtaRight_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 935 SodSnsRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 935 SodSnsRight_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 935 SodAlrtRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 935 SodAlrtRight_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 935 SodDetctRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 935 SodDetctRight_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 935 SodWarnRight_Prd_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 935 SodWarnRight_Prd_Rq 14; +BA_ "GenSigStartValue" SG_ 935 SodWarnRight_Prd_Rq 14; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte8 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte8 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte8 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte7 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte7 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte7 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte6 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte6 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte6 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte5 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte5 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte5 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte4 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte4 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte4 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte3 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte3 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte3 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte2 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte2 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte2 1; +BA_ "UsedOnPgmDBC" SG_ 1108 RCMSerialNoByte1 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1108 RCMSerialNoByte1 1; +BA_ "U_P702_MY2021_Rx" SG_ 1108 RCMSerialNoByte1 1; +BA_ "GenSigStartValueInteger" SG_ 261 ChrgStatDsply_D_Rq 1; +BA_ "GenSigStartValue" SG_ 261 ChrgStatDsply_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1146 TrlrAidSwtch_D_RqDrv 1; +BA_ "GenSigStartValueInteger" SG_ 1146 TrlrAidCtl_U_RqDrv 4094; +BA_ "GenSigStartValue" SG_ 1146 TrlrAidCtl_U_RqDrv 4093; +BA_ "U_P702_MY2021_Rx" SG_ 1146 TrlrAidCtl_U_RqDrv 1; +BA_ "U_P702_MY2021_Rx" SG_ 533 TrlrAidMde_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTOn_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 533 OnbChrgGoTOn_D_Rq 2; +BA_ "GenSigStartValue" SG_ 533 OnbChrgGoTOn_D_Rq 2; +BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTMnte_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 533 OnbChrgGoTMnte_D_Rq 1; +BA_ "MetaData" SG_ 533 OnbChrgGoTMnte_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 533 OnbChrgGoTHr_T_Rq 30; +BA_ "GenSigStartValue" SG_ 533 OnbChrgGoTHr_T_Rq 30; +BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTElement_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 533 OnbChrgGoTElement_D_Rq 1; +BA_ "MetaData" SG_ 533 OnbChrgGoTElement_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTDelete_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgClearAll_B_Rq 1; +BA_ "ECGUsedTxSignal" SG_ 533 OnbChrgClearAll_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 533 OnbChrgGoTUpdate_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1041 ElCmpr_Pw_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAuxIsol_D_Rq 1; +BA_ "GenSigStartValue" SG_ 1067 BattULoAuxIsol_D_Rq 2; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_U_Rq 1; +BA_ "GenSigStartValue" SG_ 1067 BattULoAux_U_Rq 3296; +BA_ "GenSigStartValueInteger" SG_ 1067 BattULoAuxSoc_Pc_Actl 95; +BA_ "GenSigStartValue" SG_ 1067 BattULoAuxSoc_Pc_Actl 95; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAuxSoc_Pc_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1067 BattULoAux_I_Actl 2048; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_I_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_D_Qlty 1; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoCrnkStrt_U_Pred 1; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoCrnkBelt_U_Pred 1; +BA_ "GenSigStartValueInteger" SG_ 1067 BattULoAux_U_Actl 203; +BA_ "GenSigStartValue" SG_ 1067 BattULoAux_U_Actl 203; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_U_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1067 BattULoAux_B_Falt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1112 BattTracChrgSustn_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1112 BattTracCnnct_D_Cmd 1; +BA_ "U_P702_MY2021_Rx" SG_ 1112 BattTracHvilOpen_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1112 BattTracDcdcDis_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1112 BattTracDelta_Te_Actl 164; +BA_ "GenSigStartValue" SG_ 1112 BattTracDelta_Te_Actl 120; +BA_ "ContentDependant" SG_ 1112 BattTracClntPmp_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 139 AfsPw_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 139 AfsPw_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 139 ActvFrontSteLck_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 139 ActvFrontSteLck_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 139 SelDrvMdeAdptSte_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_No_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1121 SelDrvMdeSwtch_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1121 SelDrvMdeCnt_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1121 SelDrvMdeCnt_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1120 DrvSlipCtlMde_B_Rq3 1; +BA_ "UsedOnPgmDBC" SG_ 1120 DrvSlipCtlMde_B_Rq3 1; +BA_ "U_P702_MY2021_Rx" SG_ 1120 DrvSlipCtlMde_B_Rq3 1; +BA_ "U_P702_MY2021_Rx" SG_ 1120 HybMdeSwtch_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1120 RearDiffLck_D_RqDrv 2; +BA_ "GenSigStartValue" SG_ 1120 RearDiffLck_D_RqDrv 2; +BA_ "U_P702_MY2021_Rx" SG_ 1120 RearDiffLck_D_RqDrv 1; +BA_ "GenSigStartValueInteger" SG_ 1120 AwdMde_D_RqDrv 5; +BA_ "GenSigStartValue" SG_ 1120 AwdMde_D_RqDrv 5; +BA_ "U_P702_MY2021_Rx" SG_ 1120 AwdMde_D_RqDrv 1; +BA_ "UsedOnPgmDBC" SG_ 1120 HdcSwtchPos_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1120 HdcSwtchPos_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1050 Outside_Air_Temp_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1050 Outside_Air_Temp_Stat 254; +BA_ "GenSigStartValue" SG_ 1050 Outside_Air_Temp_Stat 254; +BA_ "U_P702_MY2021_Rx" SG_ 1050 Outside_Air_Temp_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1050 Outside_Air_Temp_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 1137 RngPerChrgAvg_L_Dsply 4094; +BA_ "GenSigStartValue" SG_ 1137 RngPerChrgAvg_L_Dsply 4093; +BA_ "U_P702_MY2021_Tx" SG_ 1137 RngPerChrgAvg_L_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev3X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4Prev1X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1255 BalrRight4CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1255 BalrRight4CurntX_L_Actl 0; +BA_ "GenSigSendType" SG_ 1254 BalrRight3Threat_D_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev3X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3Prev1X_L_Actl 0; +BA_ "GenSigSendType" SG_ 1254 BalrRight3Fast_B_Stat 3; +BA_ "GenSigSendType" SG_ 1254 BalrRight3Dsply_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1254 BalrRight3CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1254 BalrRight3CurntX_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev3X_L_Actl 0; +BA_ "GenSigSendType" SG_ 1253 BalrRight2Threat_D_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2Prev1X_L_Actl 0; +BA_ "GenSigSendType" SG_ 1253 BalrRight2Fast_B_Stat 3; +BA_ "GenSigSendType" SG_ 1253 BalrRight2Dsply_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1253 BalrRight2CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1253 BalrRight2CurntX_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev3X_L_Actl 0; +BA_ "GenSigSendType" SG_ 1252 BalrRight1Threat_D_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1Prev1X_L_Actl 0; +BA_ "GenSigSendType" SG_ 1252 BalrRight1Fast_B_Stat 3; +BA_ "GenSigSendType" SG_ 1252 BalrRight1Dsply_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1252 BalrRight1CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1252 BalrRight1CurntX_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev3X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4Prev1X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1251 BalrLeft4CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1251 BalrLeft4CurntX_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev3X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3Prev1X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1250 BalrLeft3CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1250 BalrLeft3CurntX_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev3X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2Prev1X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1249 BalrLeft2CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1249 BalrLeft2CurntX_L_Actl 0; +BA_ "GenSigSendType" SG_ 1248 BalrLeft1Threat_D_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev3Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev3Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev3X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev3X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev2Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev2Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev2X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev2X_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev1Y_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev1Y_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1Prev1X_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1Prev1X_L_Actl 0; +BA_ "GenSigSendType" SG_ 1248 BalrLeft1Fast_B_Stat 3; +BA_ "GenSigSendType" SG_ 1248 BalrLeft1Dsply_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1CurntY_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1CurntY_L_Actl 0; +BA_ "GenSigStartValueInteger" SG_ 1248 BalrLeft1CurntX_L_Actl 64; +BA_ "GenSigStartValue" SG_ 1248 BalrLeft1CurntX_L_Actl 0; +BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrTrgtAcquire_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrRvrse_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAid_D2_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAidTrgtId_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1113 TrlrAid_An3_Actl 720; +BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAid_An3_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1113 TrlrAid_AnRate2_Actl 400; +BA_ "U_P702_MY2021_Rx" SG_ 1113 TrlrAid_AnRate2_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1113 HitchToVehAxle_L_Calc 255; +BA_ "GenSigStartValue" SG_ 1113 HitchToVehAxle_L_Calc 255; +BA_ "U_P702_MY2021_Rx" SG_ 1113 HitchToVehAxle_L_Calc 1; +BA_ "GenSigSendType" SG_ 1105 TrlrAidSwtchLamp_B_Rq 3; +BA_ "GenSigSendType" SG_ 1105 TrlrHitchMsgTxt_D_Rq 3; +BA_ "GenSigSendType" SG_ 1105 TrlrHitchIcon_D_Rq 3; +BA_ "GenSigSendType" SG_ 1105 TrlrHitchChime_D_Rq 3; +BA_ "GenSigSendType" SG_ 1105 TrlrAidEnbl_D_RqAdas 3; +BA_ "U_P702_MY2021_Rx" SG_ 1105 TrlrAidEnbl_D_RqAdas 1; +BA_ "GenSigSendType" SG_ 1105 TrlrRvrseMsgTxt_D2_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 1105 TrlrRvrseMsgTxt_D2_Rq 1; +BA_ "GenSigSendType" SG_ 1105 TrlrRvrseEnbl_D2_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 1105 TrlrRvrseEnbl_D2_Stat 1; +BA_ "GenSigSendType" SG_ 1105 RbaMsg_D_Rq 3; +BA_ "WakeupSignal" SG_ 1105 BrkDecel_B_RqRba 1; +BA_ "CrossOver_InfoCAN" SG_ 1105 BrkDecel_B_RqRba 1; +BA_ "UsedOnPgmDBC" SG_ 1105 BrkDecel_B_RqRba 1; +BA_ "GenSigSendType" SG_ 1105 BrkDecel_B_RqRba 3; +BA_ "U_P702_MY2021_Rx" SG_ 1105 BrkDecel_B_RqRba 1; +BA_ "WakeupSignal" SG_ 1105 BrkEnbl_B_RqRba 1; +BA_ "CrossOver_InfoCAN" SG_ 1105 BrkEnbl_B_RqRba 1; +BA_ "UsedOnPgmDBC" SG_ 1105 BrkEnbl_B_RqRba 1; +BA_ "GenSigSendType" SG_ 1105 BrkEnbl_B_RqRba 3; +BA_ "U_P702_MY2021_Rx" SG_ 1105 BrkEnbl_B_RqRba 1; +BA_ "GenSigStartValueInteger" SG_ 1105 Rba_D_Stat 1; +BA_ "GenSigStartValue" SG_ 1105 Rba_D_Stat 1; +BA_ "GenSigSendType" SG_ 1105 Rba_D_Stat 3; +BA_ "GenSigSendType" SG_ 1105 RbaAlrt_D_Dsply 3; +BA_ "GenSigSendType" SG_ 1105 RbaMnu_D_Rq 3; +BA_ "GenSigSendType" SG_ 1105 CamraFrntStat_D_Stat 3; +BA_ "GenSigSendType" SG_ 1105 TrlrHitchLamp_D_Rq2 3; +BA_ "GenSigSendType" SG_ 938 SidePrkSnsR2_D_Stat 3; +BA_ "GenSigSendType" SG_ 938 SidePrkSnsR1_D_Stat 3; +BA_ "GenSigSendType" SG_ 938 SidePrkSnsL2_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 ApaMde_D_Stat 1; +BA_ "GenSigSendType" SG_ 938 ApaMde_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 ApaActvSd_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 938 ApaActvSd_D_Actl 1; +BA_ "GenSigStartValue" SG_ 938 ApaActvSd_D_Actl 1; +BA_ "GenSigSendType" SG_ 938 ApaActvSd_D_Actl 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSwtch_B_Stat 1; +BA_ "GenSigSendType" SG_ 938 PrkAidSwtch_B_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 ApaMde_D_Avail 1; +BA_ "GenSigSendType" SG_ 938 ApaMde_D_Avail 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFrCrnr_D_Stat 1; +BA_ "GenSigSendType" SG_ 938 PrkAidSnsFrCrnr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFrCntr_D_Stat 1; +BA_ "GenSigSendType" SG_ 938 PrkAidSnsFrCntr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFlCrnr_D_Stat 1; +BA_ "GenSigSendType" SG_ 938 PrkAidSnsFlCrnr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidSnsFlCntr_D_Stat 1; +BA_ "GenSigSendType" SG_ 938 PrkAidSnsFlCntr_D_Stat 3; +BA_ "GenSigSendType" SG_ 938 PrkBrkEl_B_RqFap 3; +BA_ "U_CX727_MY2021_Rx" SG_ 938 PrkBrkEl_B_RqFap 1; +BA_ "U_P702_MY2021_Rx" SG_ 938 PrkBrkEl_B_RqFap 1; +BA_ "CrossOver_InfoCAN" SG_ 938 RpaChime_D_Rq 1; +BA_ "GenSigSendType" SG_ 938 RpaChime_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 938 FpaChime_D_Rq 1; +BA_ "GenSigSendType" SG_ 938 FpaChime_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 938 PrkAidMsgTxt_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 938 PrkAidMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 938 SidePrkSnsL1_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 938 PrkAidAudioMute_B_Rq 1; +BA_ "GenSigSendType" SG_ 938 PrkAidAudioMute_B_Rq 3; +BA_ "GenSigSendType" SG_ 939 ApaBrk_D_Rq 3; +BA_ "GenSigSendType" SG_ 939 SidePrkSnsR4_D_Stat 3; +BA_ "GenSigSendType" SG_ 939 SidePrkSnsR3_D_Stat 3; +BA_ "GenSigSendType" SG_ 939 SidePrkSnsL4_D_Stat 3; +BA_ "GenSigSendType" SG_ 939 SidePrkSnsL3_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidChime_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidChime_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRlCntr_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidSnsRlCntr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRrCrnr_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidSnsRrCrnr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRrCntr_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidSnsRrCntr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidSnsRlCrnr_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidSnsRlCrnr_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidRear_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidRear_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAidFront_D_Stat 1; +BA_ "GenSigSendType" SG_ 939 PrkAidFront_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 939 PrkAid_D_Falt 1; +BA_ "GenSigSendType" SG_ 939 PrkAid_D_Falt 3; +BA_ "GenSigSendType" SG_ 939 ApaLongCtrlEnbl_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 939 ApaLongCtrlEnbl_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 939 ApaLongCtrlEnbl_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 939 ApaLongCtrlEnbl_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 939 ApaBrk_A_Rq 255; +BA_ "U_P702_MY2021_Rx" SG_ 939 ApaBrk_A_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 939 ApaBrk_A_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 939 ApaBrk_A_Rq 1; +BA_ "GenSigSendType" SG_ 939 PrkAidLamp_D_Rq 3; +BA_ "GenSigStartValueInteger" SG_ 937 Veh_V_RqFap 0; +BA_ "U_P702_MY2021_Rx" SG_ 937 Veh_V_RqFap 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 Veh_V_RqFap 1; +BA_ "MetaData" SG_ 937 TrnRngDRqFap_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 937 TrnRngDRqFap_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 TrnRngDRqFap_No_Cs 1; +BA_ "MetaData" SG_ 937 TrnRngDRqFap_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 937 TrnRngDRqFap_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 TrnRngDRqFap_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 937 TrnRng_D_RqFap 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 TrnRng_D_RqFap 1; +BA_ "GenSigStartValueInteger" SG_ 937 FapLcDistToObj_L_Actl 254; +BA_ "GenSigStartValue" SG_ 937 FapLcDistToObj_L_Actl 254; +BA_ "U_P702_MY2021_Rx" SG_ 937 FapLcDistToObj_L_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 937 FapLcDistToObj_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 936 ApaSys_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 936 ApaSys_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 936 EPASExtAngleStatReq 1; +BA_ "U_P702_MY2021_Rx" SG_ 936 EPASExtAngleStatReq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 936 ExtSteeringAngleReq2 1; +BA_ "U_P702_MY2021_Rx" SG_ 936 ExtSteeringAngleReq2 1; +BA_ "GenSigStartValueInteger" SG_ 877 RngImpctDrv_L_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 877 RngImpctDrv_L_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 877 RngImpctClim_L_Dsply 255; +BA_ "U_P702_MY2021_Tx" SG_ 877 RngImpctClim_L_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 877 VehElEffAvg_No_Dsply 126; +BA_ "GenSigStartValue" SG_ 877 VehElEffAvg_No_Dsply 126; +BA_ "U_P702_MY2021_Tx" SG_ 877 VehElEffAvg_No_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwFuelDrv_D_Dsply 1; +BA_ "GenSigSendType" SG_ 877 PwFlwFuelDrv_D_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwFuelDrv_D_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwFuelClimt_B_Dsply 1; +BA_ "GenSigSendType" SG_ 877 PwFlwFuelClimt_B_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwFuelClimt_B_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwFuelBatt_B_Dsply 1; +BA_ "GenSigSendType" SG_ 877 PwFlwFuelBatt_B_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwFuelBatt_B_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwBattClimt_B_Dsply 1; +BA_ "GenSigSendType" SG_ 877 PwFlwBattClimt_B_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwBattClimt_B_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 877 PwFlwBatt_D_Dsply 1; +BA_ "GenSigSendType" SG_ 877 PwFlwBatt_D_Dsply 3; +BA_ "U_P702_MY2021_Tx" SG_ 877 PwFlwBatt_D_Dsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_LimChrg 1; +BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_LimDchrg 1; +BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_DchrgInst 1; +BA_ "U_P702_MY2021_Rx" SG_ 589 BattTrac2_Pw_ChrgInst 1; +BA_ "GenSigStartValueInteger" SG_ 588 BattTracSoc2_Pc_Actl 16382; +BA_ "GenSigStartValue" SG_ 588 BattTracSoc2_Pc_Actl 16382; +BA_ "U_P702_MY2021_Rx" SG_ 588 BattTracSoc2_Pc_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 588 BattTrac_Te_Actl 150; +BA_ "GenSigStartValue" SG_ 588 BattTrac_Te_Actl 150; +BA_ "U_P702_MY2021_Rx" SG_ 588 BattTrac_Te_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 588 BattTracDiagClr_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 588 BattTracDiagClr_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 587 BattTracClnt_Te_Actl 164; +BA_ "GenSigStartValue" SG_ 587 BattTracClnt_Te_Actl 164; +BA_ "CrossOver_InfoCAN" SG_ 587 BattTracWarnLamp_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 587 BattTracSrvcRqd_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_MxPrtct 700; +BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_MxPrtct 700; +BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_MxPrtct 1; +BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_MnPrtct 300; +BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_MnPrtct 30; +BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_MnPrtct 1; +BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_LimLo 400; +BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_LimLo 400; +BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_LimLo 1; +BA_ "GenSigStartValueInteger" SG_ 587 BattTracSoc_Pc_LimHi 600; +BA_ "GenSigStartValue" SG_ 587 BattTracSoc_Pc_LimHi 600; +BA_ "U_P702_MY2021_Rx" SG_ 587 BattTracSoc_Pc_LimHi 1; +BA_ "CrossOver_InfoCAN" SG_ 389 HtrnOvrTeLamp_B_Dsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 389 HtrnAin_UHi_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 389 HtrnAin_UHi_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 389 HtrnSrvcRqd_B_Dsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 389 HtrnHvilOpen_B_Actl 1; +BA_ "ECGUsedRxSignal" SG_ 389 HtrnHvilOpen_B_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 389 BattTrac_I_EstVsc 15000; +BA_ "U_P702_MY2021_Rx" SG_ 1009 TrlrAidCancl_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1009 CenterStackRing_D_Actl 2; +BA_ "GenSigStartValue" SG_ 1009 CenterStackRing_D_Actl 2; +BA_ "CrossOver_InfoCAN" SG_ 1009 ValetMode_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 360 GsmSrvcRqd_B_Rq 1; +BA_ "ContentDependant" SG_ 360 GsmSrvcRqd_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 360 TrnGearPwmFalt_B_Actl 1; +BA_ "ContentDependant" SG_ 360 TrnGearPwmFalt_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 360 TrnGearPwmFalt_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 360 TrnGearPwmFalt_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 360 GearButtnStuck_B_Actl 1; +BA_ "ContentDependant" SG_ 360 GearButtnStuck_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 360 GearButtnStuck_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 360 GearButtnStuck_B_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_U_LimLo 88; +BA_ "GenSigStartValue" SG_ 122 BattTrac_U_LimLo 88; +BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_U_LimLo 1; +BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_U_LimHi 163; +BA_ "GenSigStartValue" SG_ 122 BattTrac_U_LimHi 163; +BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_U_LimHi 1; +BA_ "CrossOver_InfoCAN" SG_ 122 VehStrtInhbt_B_RqBatt 1; +BA_ "U_P702_MY2021_Rx" SG_ 122 VehStrtInhbt_B_RqBatt 1; +BA_ "U_P702_MY2021_Rx" SG_ 122 BattTracOffFst_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 122 BattTracOff_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 122 BattTracOff_B_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_U_Actl 1022; +BA_ "GenSigStartValue" SG_ 122 BattTrac_U_Actl 1022; +BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_U_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 122 BattTrac_I_Actl 15000; +BA_ "U_P702_MY2021_Rx" SG_ 122 BattTrac_I_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 90 TrnGsmNtmState_D_Actl 1; +BA_ "ContentDependant" SG_ 90 TrnGsmNtmState_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGsmNtmState_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGsmNtmState_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 90 TrnGsmNtmState_D_Actl 1; +BA_ "ContentDependant" SG_ 90 DrQltyDrv_D_StatGsm 1; +BA_ "GenSigStartValue" SG_ 90 DrQltyDrv_D_StatGsm 6; +BA_ "U_P702_MY2021_Rx" SG_ 90 DrQltyDrv_D_StatGsm 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 DrQltyDrv_D_StatGsm 1; +BA_ "U_CX727_MY2021_Rx" SG_ 90 DrQltyDrv_D_StatGsm 1; +BA_ "ContentDependant" SG_ 90 TrnBtsiOvrrd_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnBtsiOvrrd_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnBtsiOvrrd_B_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 90 TrnRng_D_RqGsm 14; +BA_ "GenSigStartValue" SG_ 90 TrnRng_D_RqGsm 14; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnRng_D_RqGsm 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnRng_D_RqGsm 1; +BA_ "U_CX727_MY2021_Rx" SG_ 90 PrkBrkActv_D_RqGsmGear 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 PrkBrkActv_D_RqGsmGear 1; +BA_ "ContentDependant" SG_ 90 TrnValidGearRq_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnValidGearRq_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnValidGearRq_D_Stat 1; +BA_ "ContentDependant" SG_ 90 TrnGearRqCnt_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearRqCnt_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearRqCnt_B_Actl 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_U_Actl 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_U_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_U_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_U_Actl 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlR2 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlR2 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlR2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlR2 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlR1 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlR1 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlR1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlR1 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlR0 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlR0 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlR0 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlR0 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlP2 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlP2 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlP2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlP2 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlP1 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlP1 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlP1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlP1 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlP0 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlP0 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlP0 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlP0 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlN2 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlN2 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlN2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlN2 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlN1 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlN1 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlN1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlN1 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlN0 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlN0 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlN0 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlN0 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlM2 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlM2 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlM2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlM2 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlM1 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlM1 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlM1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlM1 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlM0 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlM0 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlM0 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlM0 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlD2 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlD2 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlD2 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlD2 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlD1 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlD1 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlD1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlD1 1; +BA_ "WakeupSignal" SG_ 90 TrnGearButtn_B_ActlD0 1; +BA_ "ContentDependant" SG_ 90 TrnGearButtn_B_ActlD0 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGearButtn_B_ActlD0 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGearButtn_B_ActlD0 1; +BA_ "ContentDependant" SG_ 90 TrnGear_No_Cs 1; +BA_ "MetaData" SG_ 90 TrnGear_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGear_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGear_No_Cs 1; +BA_ "ContentDependant" SG_ 90 TrnGear_No_Cnt 1; +BA_ "MetaData" SG_ 90 TrnGear_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGear_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGear_No_Cnt 1; +BA_ "WakeupSignal" SG_ 90 TrnGear_D_RqDrv 1; +BA_ "ContentDependant" SG_ 90 TrnGear_D_RqDrv 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 TrnGear_D_RqDrv 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 TrnGear_D_RqDrv 1; +BA_ "ContentDependant" SG_ 90 BrkSwtchPos_B_ActlGsm 1; +BA_ "U_P702_MY2021_Rx" SG_ 90 BrkSwtchPos_B_ActlGsm 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 90 BrkSwtchPos_B_ActlGsm 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 ParkLampTrlrOut_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 TrlrLampCtl_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 TrlrBattChrg_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 StopLampTrlrOut_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 TurnLampTrlrRr_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 TurnLampTrlrRl_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1091 TrlrLampCnnct_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1091 TrlrLampCnnct_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1091 TrlrLampCnnct_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1091 TrlrLampCnnct_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1091 TrlrLampCnnct_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 138 SteWhlRelCalib_T_Actl 1; +BA_ "ContentDependant" SG_ 138 SteWhlRelCalib_An_Sns 1; +BA_ "U_P702_MY2021_Rx" SG_ 138 SteWhlRelCalib_An_Sns 1; +BA_ "U_CX727_MY2021_Rx" SG_ 138 SteWhlRelCalib_An_Sns 1; +BA_ "WakeupSignal" SG_ 131 HeadLghtHiCtrl_D_RqAhb 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 HeadLghtHiCtrl_D_RqAhb 1; +BA_ "GenSigStartValueInteger" SG_ 131 WiprFrontSwtch_D_Stat 9; +BA_ "GenSigStartValue" SG_ 131 WiprFrontSwtch_D_Stat 9; +BA_ "WakeupSignal" SG_ 131 HeadLghtHiOn_B_StatAhb 1; +BA_ "CrossOver_InfoCAN" SG_ 131 HeadLghtHiOn_B_StatAhb 1; +BA_ "WakeupSignal" SG_ 131 HeadLghtHiFlash_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 131 WiprFront_D_Stat 15; +BA_ "GenSigStartValue" SG_ 131 WiprFront_D_Stat 15; +BA_ "U_P702_MY2021_Rx" SG_ 131 WiprFront_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 WiprFront_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 131 WiprFront_D_Stat 1; +BA_ "WakeupSignal" SG_ 131 TurnLghtSwtch_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 131 TurnLghtSwtch_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 131 TurnLghtSwtch_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 TurnLghtSwtch_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 131 LghtAmb_D_Sns 7; +BA_ "GenSigStartValue" SG_ 131 LghtAmb_D_Sns 7; +BA_ "U_P702_MY2021_Rx" SG_ 131 LghtAmb_D_Sns 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 AslButtnOnOffPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 AslButtnOnOffPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 AslButtnOnOffCnclPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 AslButtnOnOffCnclPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOnPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOnPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOnOffPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOnOffPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOnOffCnclPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOnOffCnclPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcButtnOffPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcButtnOffPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAsllButtnResPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAsllButtnResPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnSetIncPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnSetIncPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnSetDecPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnSetDecPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnResIncPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnResIncPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnOnPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnOnPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnIndxIncPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnIndxIncPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnIndxDecPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnIndxDecPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnDeny_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnDeny_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnCnclResPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnCnclResPress 1; +BA_ "U_P702_MY2021_Rx" SG_ 131 CcAslButtnCnclPress 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 131 CcAslButtnCnclPress 1; +BA_ "WakeupSignal" SG_ 787 DrLckCnt_No_ActlTgate 1; +BA_ "WakeupSignal" SG_ 787 DrTgateChime2_D_Rq 1; +BA_ "WakeupSignal" SG_ 787 DrTGate_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 787 DrTGate_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 787 DrTGate_D_Rq 1; +BA_ "WakeupSignal" SG_ 787 PwLftgtIntSw_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 787 Power_Liftgate_Mode_Stt 1; +BA_ "U_P702_MY2021_Rx" SG_ 953 BattRgenLoDChrg_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 953 BattRgenLoChrg_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm3_D_Stat 3; +BA_ "GenSigStartValue" SG_ 953 WakeAlarm3_D_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm2_D_Stat 3; +BA_ "GenSigStartValue" SG_ 953 WakeAlarm2_D_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm1_D_Stat 3; +BA_ "GenSigStartValue" SG_ 953 WakeAlarm1_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 953 WakeAlarm1_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 953 WakeAlarm1_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 953 WakeAlarm0_D_Stat 3; +BA_ "GenSigStartValue" SG_ 953 WakeAlarm0_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 1093 TrlrBrkActCnnct_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1093 TrlrBrkActCnnct_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1093 TrlrBrkActCnnct_B_Actl 1; +BA_ "ContentDependant" SG_ 1093 StopLamp_B_RqTrlrBrk 1; +BA_ "U_P702_MY2021_Rx" SG_ 792 FuelRange_L_Dsply 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 792 FuelRange_L_Dsply 1; +BA_ "ContentDependant" SG_ 792 ElTrip_L_Dsply 1; +BA_ "ContentDependant" SG_ 792 ElLongTerm_L_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 968 SlMde_D_Rq 2; +BA_ "GenSigStartValue" SG_ 968 SlMde_D_Rq 2; +BA_ "U_P702_MY2021_Rx" SG_ 968 SlMde_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 968 SlMde_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 968 IsaOffst_D_Rq 14; +BA_ "GenSigStartValue" SG_ 968 IsaOffst_D_Rq 14; +BA_ "U_P702_MY2021_Rx" SG_ 968 IsaOffst_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 968 IsaOffst_D_Rq 1; +BA_ "WakeupSignal" SG_ 819 Memory_3_SwPsngr_Stat 1; +BA_ "WakeupSignal" SG_ 819 Memory_2_SwPsngr_Stat 1; +BA_ "WakeupSignal" SG_ 819 Memory_1_SwPsngr_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 819 WndwPsngrSide_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 819 WndwPsngrSide_D_Stat 1; +BA_ "WakeupSignal" SG_ 819 Pasngr_Lock_Sw_Stat 1; +BA_ "WakeupSignal" SG_ 819 Pasngr_Lock_Sw_Cnt 1; +BA_ "MetaData" SG_ 819 Pasngr_Lock_Sw_Cnt 1; +BA_ "WakeupSignal" SG_ 819 ChildLckFdbckRp_B_Stat 1; +BA_ "WakeupSignal" SG_ 818 ChildLckPw_N_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 818 WndwDrvSide_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 818 WndwDrvSide_D_Stat 1; +BA_ "WakeupSignal" SG_ 818 KeyCylSwDrvDr_D_Stat 1; +BA_ "GenSigInactiveValue" SG_ 818 Driver_Lock_Sw_Stat 0; +BA_ "WakeupSignal" SG_ 818 Driver_Lock_Sw_Stat 1; +BA_ "WakeupSignal" SG_ 818 Driver_Lock_Sw_Cnt 1; +BA_ "MetaData" SG_ 818 Driver_Lock_Sw_Cnt 1; +BA_ "WakeupSignal" SG_ 818 ChildLckPw_D_Rq 1; +BA_ "WakeupSignal" SG_ 818 ChildLckFdbckRd_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 818 RvrseMirrorChime_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 806 StopStrtDrvMde_B_RqBtn 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 StopStrtDrvMde_B_RqBtn 1; +BA_ "GenSigStartValueInteger" SG_ 806 HvacHtrCore_Te_Rq 0; +BA_ "U_P702_MY2021_Rx" SG_ 806 HvacHtrCore_Te_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacHtrCore_Te_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 806 ClimtHeat_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 ClimtHeat_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 806 ClimtCool_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 ClimtCool_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 806 HvacEvap_Te_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 806 HvacEvap_Te_Rq 400; +BA_ "U_P702_MY2021_Rx" SG_ 806 HvacEvap_Te_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacEvap_Te_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 806 HvacEvap_Te_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 806 HvacEvap_Te_Actl 400; +BA_ "U_P702_MY2021_Rx" SG_ 806 HvacEvap_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacEvap_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 806 HvacAirCond_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 806 HvacAirCond_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacAirCond_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 806 HvacEvap_Te_Offst 1; +BA_ "GenSigStartValueInteger" SG_ 806 HvacEvap_Te_Offst 400; +BA_ "U_P702_MY2021_Rx" SG_ 806 HvacEvap_Te_Offst 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 HvacEvap_Te_Offst 1; +BA_ "U_P702_MY2021_Rx" SG_ 806 ClimtPw_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 806 ClimtPw_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 765 EngExhMdeQuiet_D2_Rq 0; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 765 EdmSailMde_B_RqDrv 1; +BA_ "WakeupSignal" SG_ 765 DrvInputRequired_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 765 AwdRnge_D_ActlIpc 1; +BA_ "UsedOnPgmDBC" SG_ 765 AwdRnge_D_ActlIpc 1; +BA_ "GenSigStartValueInteger" SG_ 765 AwdRnge_D_ActlIpc 7; +BA_ "GenSigStartValue" SG_ 765 AwdRnge_D_ActlIpc 7; +BA_ "U_P702_MY2021_Rx" SG_ 765 AwdRnge_D_ActlIpc 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 765 AwdRnge_D_ActlIpc 1; +BA_ "GenSigStartValueInteger" SG_ 765 BalrSwtch_D_Stat 1; +BA_ "GenSigStartValue" SG_ 765 BalrSwtch_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 765 BalrMde_D_Rq 0; +BA_ "GenSigStartValueInteger" SG_ 765 WaitToStartLamp_D_Falt 1; +BA_ "GenSigStartValue" SG_ 765 WaitToStartLamp_D_Falt 1; +BA_ "U_P702_MY2021_Rx" SG_ 765 WaitToStartLamp_D_Falt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 765 WaitToStartLamp_D_Falt 1; +BA_ "GenSigStartValueInteger" SG_ 765 EsaOn_B_Rq 1; +BA_ "GenSigStartValue" SG_ 765 EsaOn_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 765 EsaOn_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 765 Btt_L_Actl 126; +BA_ "GenSigStartValue" SG_ 765 Btt_L_Actl 126; +BA_ "U_P702_MY2021_Rx" SG_ 765 SelDrvMdeTxtReset_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 765 SelDrvMdeDsply_B_Avail 1; +BA_ "CrossOver_InfoCAN" SG_ 765 Mc_VehUnitTempUsrSel_St 1; +BA_ "CrossOver_InfoCAN" SG_ 559 EhData2_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 559 EhData2_No_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 559 EhData2_No_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 558 EhData1_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 558 EhData1_No_Actl 0; +BA_ "U_P702_MY2021_Rx" SG_ 558 EhData1_No_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 558 EhData1_No_Actl 1; +BA_ "GenSigSendType" SG_ 934 CtaAlrtLeft2_D_Stat 3; +BA_ "GenSigSendType" SG_ 934 CtaBrkLeftMsgTxt_B_Rq 3; +BA_ "GenSigSendType" SG_ 934 CtaLeftBrkDecel_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 934 CtaLeftBrkDecel_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 934 CtaLeftBrkDecel_B_Rq 1; +BA_ "GenSigSendType" SG_ 934 CtaLeftBrkEnbl_B_Rq 3; +BA_ "U_CX727_MY2021_Rx" SG_ 934 CtaLeftBrkEnbl_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 934 CtaLeftBrkEnbl_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 934 Side_Detect_L_Illum 1; +BA_ "GenSigStartValueInteger" SG_ 934 Side_Detect_L_Illum 100; +BA_ "GenSigStartValue" SG_ 934 Side_Detect_L_Illum 100; +BA_ "GenSigSendType" SG_ 934 BttLeft_D_Stat 3; +BA_ "GenSigSendType" SG_ 934 BttLeft_D_RqDrv 3; +BA_ "CrossOver_InfoCAN" SG_ 934 CtaSnsLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 934 CtaSnsLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 SodDetctLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 934 SodDetctLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 CtaLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 934 CtaLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 CtaAlrtLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 934 CtaAlrtLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 SodLeft_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 934 SodLeft_D_Stat 2; +BA_ "GenSigStartValue" SG_ 934 SodLeft_D_Stat 2; +BA_ "GenSigSendType" SG_ 934 SodLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 SodSnsLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 934 SodSnsLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 SodAlrtLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 934 SodAlrtLeft_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 934 SodWarnLeft_Prd_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 934 SodWarnLeft_Prd_Rq 14; +BA_ "GenSigStartValue" SG_ 934 SodWarnLeft_Prd_Rq 14; +BA_ "CrossOver_InfoCAN" SG_ 1072 DrvSlipCtlMde_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1072 DrvSlipCtlMde_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 DrvSlipCtlMde_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 EngIdlShutDown_B_RqDrv 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 EngIdlShutDown_B_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 HsaMde_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1072 HsaMde_D_Rq 1; +BA_ "GenSigStartValue" SG_ 1072 HsaMde_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 NtrlTowMdeEnbl_B_RqDrv 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 NtrlTowMdeEnbl_B_RqDrv 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 NtrlTowMdeEnbl_B_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 BulbChkActv_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 ParkDetect_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1072 ParkDetect_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 ReducedGuard_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 TRLR_SWAY_CONFIG_CMD 1; +BA_ "WakeupSignal" SG_ 1072 Power_Liftgate_Mode_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 Power_Liftgate_Mode_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 AccEnbl_B_RqDrv 1; +BA_ "GenSigStartValueInteger" SG_ 1072 AccEnbl_B_RqDrv 1; +BA_ "GenSigStartValue" SG_ 1072 AccEnbl_B_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 OdometerMasterValue 1; +BA_ "UsedOnPgmDBC" SG_ 1072 OdometerMasterValue 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 OdometerMasterValue 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 OdometerMasterValue 1; +BA_ "U_CX727_MY2021_Rx" SG_ 1072 OdometerMasterValue 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 EngOilLife_B_RqReset 1; +BA_ "UsedOnPgmDBC" SG_ 1072 EngOilLife_B_RqReset 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 EngOilLife_B_RqReset 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 EngOilLife_B_RqReset 1; +BA_ "WakeupSignal" SG_ 1072 ePRNDL_MODE 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 ePRNDL_MODE 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 ePRNDL_MODE 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 ePRNDL_MODE 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 DrvSlipCtlMde_B_Rq2 1; +BA_ "UsedOnPgmDBC" SG_ 1072 DrvSlipCtlMde_B_Rq2 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 DrvSlipCtlMde_B_Rq2 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 MetricActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1072 MetricActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 MetricActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 MetricActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 KeyTypeChngMykey_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 1072 ManRgen_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1072 ManRgen_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1072 ManRgen_D_Rq 1; +BA_ "WakeupSignal" SG_ 909 IgnPsswrdDsply_B_Rq 1; +BA_ "WakeupSignal" SG_ 909 ElPwPoint_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 909 SecurityMsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 909 HeadLghtHiPrmsn_D_Stat 3; +BA_ "GenSigStartValue" SG_ 909 HeadLghtHiPrmsn_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 909 HeadLghtHiPrmsn_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 909 SteWhlLckMsgTxt_D_Rq 1; +BA_ "WakeupSignal" SG_ 909 immoMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 909 immoMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 909 PEBackupSlot_Stats 1; +BA_ "CrossOver_InfoCAN" SG_ 909 KeyMykeyTot_No_Cnt 1; +BA_ "MetaData" SG_ 909 KeyMykeyTot_No_Cnt 1; +BA_ "CrossOver_InfoCAN" SG_ 909 Keycode_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 909 KeyAdmnTot_No_Cnt 1; +BA_ "MetaData" SG_ 909 KeyAdmnTot_No_Cnt 1; +BA_ "WakeupSignal" SG_ 963 ImpactEvntFdbck_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 ImpactEvntFdbck_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 963 ImpactEvntFdbck_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoOut_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 963 HeadLampLoOut_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 CrnrLghtRight_Pc_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 CrnrLghtRight_Pc_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 CrnrLghtLeft_Pc_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 CrnrLghtLeft_Pc_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLghtHiFdbck_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 TrnNotInPrkChime_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 963 TrnNotInPrkChime_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 PrkLightChime_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 963 PrkLightChime_B_Rq 1; +BA_ "WakeupSignal" SG_ 963 KeyInIgnWarn_B_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 963 KeyInIgnWarn_B_Cmd 1; +BA_ "UsedOnPgmDBC" SG_ 963 KeyInIgnWarn_B_Cmd 1; +BA_ "WakeupSignal" SG_ 963 HomeSafeLtChime_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HomeSafeLtChime_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 963 HomeSafeLtChime_B_Rq 1; +BA_ "WakeupSignal" SG_ 963 StopLghtOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 StopLghtOn_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 963 StopLghtOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 StopLghtOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 RvrseLghtOn_B_Stat 1; +BA_ "WakeupSignal" SG_ 963 PrkLght_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 PrkLght_D_Stat 1; +BA_ "WakeupSignal" SG_ 963 HeadLghtSwtch_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLghtSwtch_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 963 HeadLghtSwtch_D_Stat 2; +BA_ "GenSigStartValue" SG_ 963 HeadLghtSwtch_D_Stat 2; +BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLghtSwtch_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoFrOn_B_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 963 HeadLampLoFrOn_B_Stat 1; +BA_ "GenSigStartValue" SG_ 963 HeadLampLoFrOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLampLoFrOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoFlOn_B_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 963 HeadLampLoFlOn_B_Stat 1; +BA_ "GenSigStartValue" SG_ 963 HeadLampLoFlOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLampLoFlOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLampLoActv_B_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 963 HeadLampLoActv_B_Stat 1; +BA_ "GenSigStartValue" SG_ 963 HeadLampLoActv_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLampLoActv_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 963 HeadLampLoActv_B_Stat 1; +BA_ "WakeupSignal" SG_ 963 Headlamp_On_Wrning_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 963 Headlamp_On_Wrning_Cmd 1; +BA_ "UsedOnPgmDBC" SG_ 963 Headlamp_On_Wrning_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 963 Park_Brake_Chime_Rqst 1; +BA_ "UsedOnPgmDBC" SG_ 963 Park_Brake_Chime_Rqst 1; +BA_ "WakeupSignal" SG_ 963 HeadLghtHiOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 HeadLghtHiOn_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 963 HeadLghtHiOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 HeadLghtHiOn_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 963 HeadLghtHiOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 BrkWarnInd_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 963 BrkWarnInd_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 Brk_Fluid_Lvl_Low 1; +BA_ "UsedOnPgmDBC" SG_ 963 Brk_Fluid_Lvl_Low 1; +BA_ "CrossOver_InfoCAN" SG_ 963 ReducedGuard_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 963 ReducedGuard_D_Stat 1; +BA_ "WakeupSignal" SG_ 963 Perimeter_Alarm_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 963 Perimeter_Alarm_Status 1; +BA_ "WakeupSignal" SG_ 963 Courtesy_BSave_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 963 Courtesy_BSave_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 963 Courtesy_BSave_Stat 1; +BA_ "GenSigStartValue" SG_ 963 Courtesy_BSave_Stat 1; +BA_ "WakeupSignal" SG_ 963 WndwGlbl_D_Cmd 1; +BA_ "CrossOver_InfoCAN" SG_ 963 WndwGlbl_D_Cmd 1; +BA_ "WakeupSignal" SG_ 963 PudLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 PudLamp_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 DayRnngLampOn_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 963 DayRnngLampOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 963 DayRnngLampOn_B_Stat 1; +BA_ "WakeupSignal" SG_ 963 PerimeterAlarmChimeRq 1; +BA_ "CrossOver_InfoCAN" SG_ 963 PerimeterAlarmChimeRq 1; +BA_ "UsedOnPgmDBC" SG_ 963 PerimeterAlarmChimeRq 1; +BA_ "UsedOnPgmDBC" SG_ 145 VehYawWActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 145 VehYawWActl_D_Qf 1; +BA_ "MetaData" SG_ 145 VehYawWActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 145 VehYawWActl_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 145 VehYawWActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 145 VehYawWActl_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 145 VehRolWActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 145 VehRolWActl_D_Qf 1; +BA_ "MetaData" SG_ 145 VehRolWActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 145 VehRolWActl_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRolWActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 145 VehRolWActl_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 145 VehRollYawW_No_Cs 1; +BA_ "MetaData" SG_ 145 VehRollYawW_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRollYawW_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 145 VehRollYawW_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 145 VehRollYaw_No_Cnt 1; +BA_ "MetaData" SG_ 145 VehRollYaw_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRollYaw_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 145 VehRollYaw_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 145 VehYaw_W_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 145 VehYaw_W_Actl 65534; +BA_ "GenSigStartValue" SG_ 145 VehYaw_W_Actl 65534; +BA_ "U_CX727_MY2021_Rx" SG_ 145 VehYaw_W_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 145 VehYaw_W_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 145 VehRol_W_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 145 VehRol_W_Actl 65534; +BA_ "GenSigStartValue" SG_ 145 VehRol_W_Actl 65534; +BA_ "U_CX727_MY2021_Rx" SG_ 145 VehRol_W_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 145 VehRol_W_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 76 FirstRowBuckleMid 1; +BA_ "UsedOnPgmDBC" SG_ 76 FirstRowBuckleMid 1; +BA_ "GenSigStartValueInteger" SG_ 76 FirstRowBuckleMid 3; +BA_ "GenSigStartValue" SG_ 76 FirstRowBuckleMid 3; +BA_ "CrossOver_InfoCAN" SG_ 76 SecondRowBucklePsngr 1; +BA_ "GenSigStartValueInteger" SG_ 76 SecondRowBucklePsngr 3; +BA_ "GenSigStartValue" SG_ 76 SecondRowBucklePsngr 3; +BA_ "CrossOver_InfoCAN" SG_ 76 SecondRowBuckleMid 1; +BA_ "GenSigStartValueInteger" SG_ 76 SecondRowBuckleMid 3; +BA_ "GenSigStartValue" SG_ 76 SecondRowBuckleMid 3; +BA_ "CrossOver_InfoCAN" SG_ 76 SecondRowBuckleDriver 1; +BA_ "GenSigStartValueInteger" SG_ 76 SecondRowBuckleDriver 3; +BA_ "GenSigStartValue" SG_ 76 SecondRowBuckleDriver 3; +BA_ "CrossOver_InfoCAN" SG_ 76 FirstRowBuckleDriver 1; +BA_ "UsedOnPgmDBC" SG_ 76 FirstRowBuckleDriver 1; +BA_ "GenSigStartValueInteger" SG_ 76 FirstRowBuckleDriver 3; +BA_ "GenSigStartValue" SG_ 76 FirstRowBuckleDriver 3; +BA_ "U_P702_MY2021_Rx" SG_ 76 FirstRowBuckleDriver 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 76 FirstRowBuckleDriver 1; +BA_ "U_CX727_MY2021_Rx" SG_ 76 FirstRowBuckleDriver 1; +BA_ "CrossOver_InfoCAN" SG_ 76 RILReq 1; +BA_ "UsedOnPgmDBC" SG_ 76 RILReq 1; +BA_ "CrossOver_InfoCAN" SG_ 76 FirstRowBucklePsngr 1; +BA_ "UsedOnPgmDBC" SG_ 76 FirstRowBucklePsngr 1; +BA_ "GenSigStartValueInteger" SG_ 76 FirstRowBucklePsngr 3; +BA_ "GenSigStartValue" SG_ 76 FirstRowBucklePsngr 3; +BA_ "WakeupSignal" SG_ 76 RstrnImpactEvntStatus 1; +BA_ "CrossOver_InfoCAN" SG_ 76 RstrnImpactEvntStatus 1; +BA_ "UsedOnPgmDBC" SG_ 76 RstrnImpactEvntStatus 1; +BA_ "U_P702_MY2021_Rx" SG_ 76 RstrnImpactEvntStatus 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 76 RstrnImpactEvntStatus 1; +BA_ "U_CX727_MY2021_Rx" SG_ 76 RstrnImpactEvntStatus 1; +BA_ "CrossOver_InfoCAN" SG_ 76 PsngrFrntDetct_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 76 PsngrFrntDetct_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 76 PsngrFrntDetct_D_Actl 3; +BA_ "GenSigStartValue" SG_ 76 PsngrFrntDetct_D_Actl 3; +BA_ "CrossOver_InfoCAN" SG_ 76 EDRTriggerEvntSync 1; +BA_ "CrossOver_InfoCAN" SG_ 76 PassRstrnInd_Req 1; +BA_ "GenSigStartValueInteger" SG_ 76 PassRstrnInd_Req 3; +BA_ "GenSigStartValue" SG_ 76 PassRstrnInd_Req 3; +BA_ "UsedOnPgmDBC" SG_ 65 immoControlData_T1 1; +BA_ "U_P702_MY2021_Rx" SG_ 65 immoControlData_T1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 65 immoControlData_T1 1; +BA_ "UsedOnPgmDBC" SG_ 65 immoControlCmd_T1 1; +BA_ "U_P702_MY2021_Rx" SG_ 65 immoControlCmd_T1 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 65 immoControlCmd_T1 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 HILL_DESC_SW 1; +BA_ "UsedOnPgmDBC" SG_ 1076 HILL_DESC_SW 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 HILL_DESC_SW 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 HILL_DESC_SW 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 AutoRgen_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 AutoRgen_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1076 W2S_LAMP_OK 1; +BA_ "GenSigStartValue" SG_ 1076 W2S_LAMP_OK 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 OdoTripRx_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 OdoTripRx_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 OdoTripRx_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 Veh_V_CompLimMx 1; +BA_ "GenSigStartValueInteger" SG_ 1076 Veh_V_CompLimMx 4095; +BA_ "GenSigStartValue" SG_ 1076 Veh_V_CompLimMx 4093; +BA_ "U_P702_MY2021_Rx" SG_ 1076 Veh_V_CompLimMx 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 Veh_V_CompLimMx 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 DrvSlipCtlMde_B_RqMyKey 1; +BA_ "UsedOnPgmDBC" SG_ 1076 DrvSlipCtlMde_B_RqMyKey 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvlWarn_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 FuelSecndActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvlPssvSide_No_Raw 1; +BA_ "UsedOnPgmDBC" SG_ 1076 FuelLvlPssvSide_No_Raw 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 FuelLvlPssvSide_No_Raw 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FuelLvlPssvSide_No_Raw 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 FUEL_SENSOR_NUM 1; +BA_ "UsedOnPgmDBC" SG_ 1076 FUEL_SENSOR_NUM 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 FUEL_SENSOR_NUM 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FUEL_SENSOR_NUM 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvlActvSide_No_Raw 1; +BA_ "UsedOnPgmDBC" SG_ 1076 FuelLvlActvSide_No_Raw 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 FuelLvlActvSide_No_Raw 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FuelLvlActvSide_No_Raw 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 FuelLvl_Pc_Dsply 1; +BA_ "UsedOnPgmDBC" SG_ 1076 FuelLvl_Pc_Dsply 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 FuelLvl_Pc_Dsply 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 FuelLvl_Pc_Dsply 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 DISPLAY_SPEED_SCALING 1; +BA_ "UsedOnPgmDBC" SG_ 1076 DISPLAY_SPEED_SCALING 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 DISPLAY_SPEED_SCALING 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 DISPLAY_SPEED_SCALING 1; +BA_ "CrossOver_InfoCAN" SG_ 1076 DISPLAY_SPEED_OFFSET 1; +BA_ "UsedOnPgmDBC" SG_ 1076 DISPLAY_SPEED_OFFSET 1; +BA_ "U_P702_MY2021_Rx" SG_ 1076 DISPLAY_SPEED_OFFSET 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1076 DISPLAY_SPEED_OFFSET 1; +BA_ "GenSigStartValueInteger" SG_ 862 AutoStpHvacDelta_I_Est 192; +BA_ "U_P702_MY2021_Rx" SG_ 862 HvacBlwrFront_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 862 HvacBlwrFront_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 862 CabnAmb_Te_Actl 114; +BA_ "GenSigStartValue" SG_ 862 CabnAmb_Te_Actl 0; +BA_ "U_P702_MY2021_Rx" SG_ 862 CabnAmb_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 862 HvacRemoteStrt_N_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 862 HvacRemoteStrt_N_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 862 HvacRemoteStrt_N_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 862 ClimtThrmlLoad_No_Actl 255; +BA_ "GenSigStartValue" SG_ 862 ClimtThrmlLoad_No_Actl 255; +BA_ "U_P702_MY2021_Rx" SG_ 862 ClimtThrmlLoad_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 PtWakeReas_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 VehOnSrc_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 VehOnSrc_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 StrtrMtrCtlDStat_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 StrtrMtrCtlDStat_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 EngStrtActv_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 EngStrtActv_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 EngStrt_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 EngStrt_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 DrvInCtl_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 DrvInCtl_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 AdvStrt_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 AdvStrt_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 931 CrnkInhbt_No_Cs 1; +BA_ "ContentDependant" SG_ 931 CrnkInhbt_No_Cs 1; +BA_ "MetaData" SG_ 931 CrnkInhbt_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 CrnkInhbt_No_Cs 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 CrnkInhbt_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 931 CrnkInhbt_No_Cnt 1; +BA_ "ContentDependant" SG_ 931 CrnkInhbt_No_Cnt 1; +BA_ "MetaData" SG_ 931 CrnkInhbt_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 CrnkInhbt_No_Cnt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 CrnkInhbt_No_Cnt 1; +BA_ "GenSigStartValueInteger" SG_ 931 CrnkInhbt_B_Stat 1; +BA_ "GenSigStartValue" SG_ 931 CrnkInhbt_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 CrnkInhbt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 CrnkInhbt_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 931 IgnPreOffActv_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 931 IgnPreOffActv_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 PtLatchActv_B_RqBcm 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 PtLatchActv_B_RqBcm 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 immoSecureIdleMode 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 immoSecureIdleMode 1; +BA_ "WakeupSignal" SG_ 578 ReFuelSwtchStat_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 FuelPumpPwr_D_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 FuelPumpPwr_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 578 BattULo_U_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 578 BattULo_U_Actl 255; +BA_ "GenSigStartValue" SG_ 578 BattULo_U_Actl 255; +BA_ "U_P702_MY2021_Rx" SG_ 578 BattULo_U_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 BattULo_U_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 578 BattULo_U_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 578 PrkLckCtl_B_Enbl 1; +BA_ "WakeupSignal" SG_ 578 PrkLckCtlMsgTxt_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 578 PrkLckCtlMsgTxt_D_Rq 1; +BA_ "WakeupSignal" SG_ 578 PrkLckCtlAvail_T_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 578 PrkLckCtlAvail_T_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 BrkTrnShifLck_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 BrkTrnShifLck_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 578 DriverCrankingReq 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 DriverCrankingReq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 DriverCrankingReq 1; +BA_ "UsedOnPgmDBC" SG_ 578 EngOff_T_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 EngOff_T_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 EngOff_T_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 578 EngOff_T_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 578 DcacElPw_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 578 DcacElPw_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 DcacElPw_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 578 BattULo_I_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 578 BattULo_I_Actl 16383; +BA_ "GenSigStartValue" SG_ 578 BattULo_I_Actl 16383; +BA_ "U_P702_MY2021_Rx" SG_ 578 BattULo_I_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 578 BattULo_I_Actl 1; +BA_ "WakeupSignal" SG_ 947 DimmingLvlEvnt_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatDrvErrCnt_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 DrStatDrvErrCnt_B_Stat 1; +BA_ "WakeupSignal" SG_ 947 TurnLghtRight_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtRight_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 TurnLghtRight_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtRightOn_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 947 TurnLghtRightOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtLeftOn_B_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 947 TurnLghtLeftOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 947 FogLghtRearOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 FogLghtRearOn_B_Stat 1; +BA_ "WakeupSignal" SG_ 947 Backlit_LED_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Backlit_LED_Status 1; +BA_ "WakeupSignal" SG_ 947 TurnLghtLeft_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 947 TurnLghtLeft_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 TurnLghtLeft_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 947 FogLghtFrontOn_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 FogLghtFrontOn_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 947 IgnKeyType_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 947 IgnKeyType_D_Actl 14; +BA_ "GenSigStartValue" SG_ 947 IgnKeyType_D_Actl 14; +BA_ "U_P702_MY2021_Rx" SG_ 947 IgnKeyType_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 IgnKeyType_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 947 IgnKeyType_D_Actl 1; +BA_ "WakeupSignal" SG_ 947 Parklamp_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Parklamp_Status 1; +BA_ "UsedOnPgmDBC" SG_ 947 Parklamp_Status 1; +BA_ "GenSigStartValueInteger" SG_ 947 Parklamp_Status 1; +BA_ "GenSigStartValue" SG_ 947 Parklamp_Status 1; +BA_ "WakeupSignal" SG_ 947 Litval 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Litval 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 Litval 1; +BA_ "WakeupSignal" SG_ 947 Key_In_Ignition_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Key_In_Ignition_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 947 Key_In_Ignition_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 947 Key_In_Ignition_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 Key_In_Ignition_Stat 1; +BA_ "WakeupSignal" SG_ 947 Ignition_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Ignition_Status 1; +BA_ "UsedOnPgmDBC" SG_ 947 Ignition_Status 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 Ignition_Status 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 Ignition_Status 1; +BA_ "U_CX727_MY2021_Rx" SG_ 947 Ignition_Status 1; +BA_ "WakeupSignal" SG_ 947 Dimming_Lvl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Dimming_Lvl 1; +BA_ "GenSigStartValueInteger" SG_ 947 Dimming_Lvl 12; +BA_ "GenSigStartValue" SG_ 947 Dimming_Lvl 12; +BA_ "WakeupSignal" SG_ 947 Day_Night_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Day_Night_Status 1; +BA_ "UsedOnPgmDBC" SG_ 947 Day_Night_Status 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 Day_Night_Status 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 Day_Night_Status 1; +BA_ "WakeupSignal" SG_ 947 Remote_Start_Status 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Remote_Start_Status 1; +BA_ "WakeupSignal" SG_ 947 DrStatTgate_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatTgate_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 DrStatRr_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatRr_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatRr_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 DrStatRl_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatRl_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatRl_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 DrStatPsngr_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatPsngr_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatPsngr_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 DrStatInnrTgate_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatInnrTgate_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 DrStatHood_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatHood_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 DrStatDrv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 DrStatDrv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 947 DrStatDrv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 DrStatDrv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 DrStatDrv_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 947 DrStatDrv_B_Actl 1; +BA_ "WakeupSignal" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "ContentDependant" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 947 PrkBrkActv_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 947 LifeCycMde_D_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 947 LifeCycMde_D_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 947 LifeCycMde_D_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 947 LifeCycMde_D_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 947 LifeCycMde_D_Actl 1; +BA_ "WakeupSignal" SG_ 947 Delay_Accy 1; +BA_ "CrossOver_InfoCAN" SG_ 947 Delay_Accy 1; +BA_ "WakeupSignal" SG_ 947 CrashEvnt_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 947 CrashEvnt_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 947 CrashEvnt_D_Stat 3; +BA_ "GenSigStartValue" SG_ 947 CrashEvnt_D_Stat 3; +BA_ "CrossOver_InfoCAN" SG_ 947 FuelPmpInhbt_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 947 BodySrvcRqd_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BattULoChrg_URate_RqMx 1; +BA_ "GenSigStartValueInteger" SG_ 1084 BattULoChrg_URate_RqMx 5; +BA_ "GenSigStartValue" SG_ 1084 BattULoChrg_URate_RqMx 5; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoChrg_URate_RqMx 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoChrg_URate_RqMx 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BattULoChrg_U_RqMx 1; +BA_ "GenSigStartValueInteger" SG_ 1084 BattULoChrg_U_RqMx 34; +BA_ "GenSigStartValue" SG_ 1084 BattULoChrg_U_RqMx 34; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoChrg_U_RqMx 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoChrg_U_RqMx 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BattULoChrg_U_RqMn 1; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoChrg_U_RqMn 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoChrg_U_RqMn 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BattULoState_D_Qlty 1; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULoState_D_Qlty 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULoState_D_Qlty 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BSFault 1; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BSFault 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSFault 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BattULo2_Te_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 1084 BattULo2_Te_Actl 127; +BA_ "GenSigStartValue" SG_ 1084 BattULo2_Te_Actl 127; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BattULo2_Te_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BattULo2_Te_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BSBattSOC 1; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BSBattSOC 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSBattSOC 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BSBattQDeltaRideAh 1; +BA_ "GenSigStartValueInteger" SG_ 1084 BSBattQDeltaRideAh 12800; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BSBattQDeltaRideAh 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSBattQDeltaRideAh 1; +BA_ "UsedOnPgmDBC" SG_ 1084 BSBattQCapAh 1; +BA_ "U_P702_MY2021_Rx" SG_ 1084 BSBattQCapAh 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1084 BSBattQCapAh 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 EngStrtInhbt_B_RqBatt 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 EngStrtInhbt_B_RqBatt 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 BattULoChrg_D_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 BattULoChrg_D_Rq 1; +BA_ "WakeupSignal" SG_ 1068 PwSysULoFalt_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1068 PwSysULoFalt_D_Stat 1; +BA_ "UsedOnPgmDBC" SG_ 1068 PwSysULoFalt_D_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1068 Shed_T_Eng_Off_B 1; +BA_ "WakeupSignal" SG_ 1068 Shed_Feature_Group_ID 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 Shed_Feature_Group_ID 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 Shed_Feature_Group_ID 1; +BA_ "CrossOver_InfoCAN" SG_ 1068 Shed_Drain_Eng_Off_B 1; +BA_ "WakeupSignal" SG_ 1068 Shed_Level_Req 1; +BA_ "CrossOver_InfoCAN" SG_ 1068 Shed_Level_Req 1; +BA_ "UsedOnPgmDBC" SG_ 1068 Shed_Level_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 Shed_Level_Req 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 Shed_Level_Req 1; +BA_ "UsedOnPgmDBC" SG_ 1068 ULoRgenTestMde_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 ULoRgenTestMde_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 ULoRgenTestMde_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 ChargeMode 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 ChargeMode 1; +BA_ "CrossOver_InfoCAN" SG_ 1068 Batt_Lo_SoC_B 1; +BA_ "UsedOnPgmDBC" SG_ 1068 PeriodicElLoad_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 1068 PeriodicElLoad_B_Stat 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 1068 PeriodicElLoad_B_Stat 1; +BA_ "CrossOver_InfoCAN" SG_ 1068 Batt_Crit_SoC_B 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehVert2_A_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 146 VehVert2_A_Actl 8190; +BA_ "GenSigStartValue" SG_ 146 VehVert2_A_Actl 8190; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehVert2_A_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehVert2_A_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehVert2_A_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehLatLongVertA_No_Cs 1; +BA_ "MetaData" SG_ 146 VehLatLongVertA_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLatLongVertA_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehLatLongVertA_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehLatLongVert_No_Cnt 1; +BA_ "MetaData" SG_ 146 VehLatLongVert_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLatLongVert_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehLatLongVert_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehLong2_A_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 146 VehLong2_A_Actl 8190; +BA_ "GenSigStartValue" SG_ 146 VehLong2_A_Actl 8190; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehLong2_A_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehLong2_A_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLong2_A_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehLat2_A_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 146 VehLat2_A_Actl 8190; +BA_ "GenSigStartValue" SG_ 146 VehLat2_A_Actl 8190; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehLat2_A_Actl 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehLat2_A_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLat2_A_Actl 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehVertAActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 146 VehVertAActl_D_Qf 1; +BA_ "MetaData" SG_ 146 VehVertAActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 146 VehVertAActl_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehVertAActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehVertAActl_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "MetaData" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLongAActl_D_Qf 1; +BA_ "UsedOnPgmDBC" SG_ 146 VehLatAActl_D_Qf 1; +BA_ "GenSigStartValueInteger" SG_ 146 VehLatAActl_D_Qf 1; +BA_ "MetaData" SG_ 146 VehLatAActl_D_Qf 1; +BA_ "GenSigStartValue" SG_ 146 VehLatAActl_D_Qf 1; +BA_ "U_CX727_MY2021_Rx" SG_ 146 VehLatAActl_D_Qf 1; +BA_ "U_P702_MY2021_Rx" SG_ 146 VehLatAActl_D_Qf 1; +BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 3; +BA_ "GenSigSendType" SG_ 1806 TesterPhysicalResIPMA 3; +BA_ "CrossOver_InfoCAN" SG_ 997 PersIndexCcm_D_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 997 PersIndexCcm_D_Actl 4; +BA_ "GenSigStartValue" SG_ 997 PersIndexCcm_D_Actl 4; +BA_ "GenSigSendType" SG_ 997 PersIndexCcm_D_Actl 3; +BA_ "CrossOver_InfoCAN" SG_ 997 FeatNoCcmActl 1; +BA_ "GenSigSendType" SG_ 997 FeatNoCcmActl 3; +BA_ "CrossOver_InfoCAN" SG_ 997 FeatConfigCcmActl 1; +BA_ "GenSigSendType" SG_ 997 FeatConfigCcmActl 3; +BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjRelLong_V_Actl 1022; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjRelLong_V_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjRelLong_V_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjRelLat_V_Actl 510; +BA_ "GenSigStartValue" SG_ 983 CmbbObjRelLat_V_Actl 510; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjRelLat_V_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjRelLat_V_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjDistLong_L_Actl 1022; +BA_ "GenSigStartValue" SG_ 983 CmbbObjDistLong_L_Actl 1022; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjDistLong_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjDistLong_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjDistLat_L_Actl 510; +BA_ "GenSigStartValue" SG_ 983 CmbbObjDistLat_L_Actl 510; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjDistLat_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjDistLat_L_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjConfdnc_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjConfdnc_D_Stat 1; +BA_ "GenSigStartValueInteger" SG_ 983 CmbbObjColl_T_Actl 126; +BA_ "GenSigStartValue" SG_ 983 CmbbObjColl_T_Actl 125; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjColl_T_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjColl_T_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 983 CmbbObjClass_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 CmbbObjClass_D_Stat 1; +BA_ "U_CX727_MY2021_Rx" SG_ 983 EsaEnbl_D2_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 983 EsaEnbl_D2_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1DistRigh_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1DistLeft_D_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbMde1_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbIntns1_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Up_An_Rq 510; +BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Up_An_Rq 509; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Up_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Right_An_Rq 2046; +BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Right_An_Rq 2046; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Right_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Low_An_Rq 510; +BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Low_An_Rq 509; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Low_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 980 AdbBrdr1Left_An_Rq 2046; +BA_ "GenSigStartValue" SG_ 980 AdbBrdr1Left_An_Rq 2046; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1Left_An_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1CritRigh_T_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 980 AdbBrdr1CritLeft_T_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlRng_L_Max 1; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlRng_L_Max 1; +BA_ "U_CX727_MY2021_Rx" SG_ 979 HandsOffCnfm_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 HandsOffCnfm_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtl_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtl_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlRampType_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlRampType_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlPrecision_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlPrecision_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 979 LatCtlPathOffst_L_Actl 512; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlPathOffst_L_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlPathOffst_L_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 979 LatCtlPath_An_Actl 1000; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlPath_An_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlPath_An_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 979 LatCtlCurv_NoRate_Actl 4096; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlCurv_NoRate_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlCurv_NoRate_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 979 LatCtlCurv_No_Actl 1000; +BA_ "U_CX727_MY2021_Rx" SG_ 979 LatCtlCurv_No_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 979 LatCtlCurv_No_Actl 1; +BA_ "GenSigStartValueInteger" SG_ 976 SrpHghtRight_L_Actl 256; +BA_ "GenSigStartValueInteger" SG_ 976 SrpHghtLeft_L_Actl 256; +BA_ "GenSigSendType" SG_ 973 TsrVl2PrmntMsgTxt_D_Rq 3; +BA_ "GenSigSendType" SG_ 973 TsrVl1PrmntMsgTxt_D_Rq 3; +BA_ "GenSigStartValueInteger" SG_ 973 TsrVl2RstrcMsgTxt2_D_Rq 1; +BA_ "GenSigStartValue" SG_ 973 TsrVl2RstrcMsgTxt2_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrVl2RstrcMsgTxt2_D_Rq 3; +BA_ "GenSigStartValueInteger" SG_ 973 TsrVl1RstrcMsgTxt2_D_Rq 1; +BA_ "GenSigStartValue" SG_ 973 TsrVl1RstrcMsgTxt2_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrVl1RstrcMsgTxt2_D_Rq 3; +BA_ "GenSigSendType" SG_ 973 TsrOvtkMsgTxt2_D_Rq 3; +BA_ "GenSigSendType" SG_ 973 WwaWarn_B_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVlUnitMsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 973 TsrVlUnitMsgTxt_D_Rq 2; +BA_ "GenSigStartValue" SG_ 973 TsrVlUnitMsgTxt_D_Rq 2; +BA_ "GenSigSendType" SG_ 973 TsrVlUnitMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVLim2MsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 973 TsrVLim2MsgTxt_D_Rq 255; +BA_ "GenSigStartValue" SG_ 973 TsrVLim2MsgTxt_D_Rq 255; +BA_ "GenSigSendType" SG_ 973 TsrVLim2MsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVLim1MsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 973 TsrVLim1MsgTxt_D_Rq 255; +BA_ "GenSigStartValue" SG_ 973 TsrVLim1MsgTxt_D_Rq 255; +BA_ "GenSigSendType" SG_ 973 TsrVLim1MsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl2StatMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrVl2StatMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl2RstrcMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrVl2RstrcMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl1StatMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrVl1StatMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrVl1RstrcMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrVl1RstrcMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrStatMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrStatMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrOvtkStatMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrOvtkStatMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrOvtkMsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 973 TsrOvtkMsgTxt_D_Rq 1; +BA_ "GenSigStartValue" SG_ 973 TsrOvtkMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrOvtkMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrOswWarnMsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 973 TsrOswWarnMsgTxt_D_Rq 1; +BA_ "GenSigStartValue" SG_ 973 TsrOswWarnMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrOswWarnMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 973 TsrMsgTxt_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 973 TsrMsgTxt_D_Rq 1; +BA_ "GenSigStartValue" SG_ 973 TsrMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 973 TsrMsgTxt_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 970 LkaDrvOvrrd_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 970 LkaActvStats_D2_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 970 LkaActvStats_D2_Req 1; +BA_ "GenSigStartValueInteger" SG_ 970 LaRefAng_No_Req 2048; +BA_ "U_CX727_MY2021_Rx" SG_ 970 LaRefAng_No_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 970 LaRefAng_No_Req 1; +BA_ "U_CX727_MY2021_Rx" SG_ 970 LaRampType_B_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 970 LaRampType_B_Req 1; +BA_ "GenSigStartValueInteger" SG_ 970 LaCurvature_No_Calc 2048; +BA_ "U_CX727_MY2021_Rx" SG_ 970 LaCurvature_No_Calc 1; +BA_ "U_P702_MY2021_Rx" SG_ 970 LaCurvature_No_Calc 1; +BA_ "U_CX727_MY2021_Rx" SG_ 970 LdwActvStats_D_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 970 LdwActvStats_D_Req 1; +BA_ "CrossOver_InfoCAN" SG_ 970 LdwActvIntns_D_Req 1; +BA_ "U_CX727_MY2021_Rx" SG_ 970 LdwActvIntns_D_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 970 LdwActvIntns_D_Req 1; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3DistRigh_D_Stat 1; +BA_ "GenSigSendType" SG_ 962 AdbBrdr3DistRigh_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3DistLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 962 AdbBrdr3DistLeft_D_Stat 3; +BA_ "GenSigSendType" SG_ 962 AdbMde3_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbMde3_D_Rq 1; +BA_ "GenSigSendType" SG_ 962 AdbIntns3_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbIntns3_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Up_An_Rq 510; +BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Up_An_Rq 509; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Up_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Right_An_Rq 2046; +BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Right_An_Rq 2046; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Right_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Low_An_Rq 510; +BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Low_An_Rq 509; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Low_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 962 AdbBrdr3Left_An_Rq 2046; +BA_ "GenSigStartValue" SG_ 962 AdbBrdr3Left_An_Rq 2046; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3Left_An_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3CritRigh_T_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 962 AdbBrdr3CritLeft_T_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2DistRigh_D_Stat 1; +BA_ "GenSigSendType" SG_ 961 AdbBrdr2DistRigh_D_Stat 3; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2DistLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 961 AdbBrdr2DistLeft_D_Stat 3; +BA_ "GenSigSendType" SG_ 961 AdbMde2_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbMde2_D_Rq 1; +BA_ "GenSigSendType" SG_ 961 AdbIntns2_D_Rq 3; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbIntns2_D_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Up_An_Rq 510; +BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Up_An_Rq 509; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Up_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Right_An_Rq 2046; +BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Right_An_Rq 2046; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Right_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Low_An_Rq 510; +BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Low_An_Rq 509; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Low_An_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 961 AdbBrdr2Left_An_Rq 2046; +BA_ "GenSigStartValue" SG_ 961 AdbBrdr2Left_An_Rq 2046; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2Left_An_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2CritRigh_T_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 961 AdbBrdr2CritLeft_T_Stat 1; +BA_ "MetaData" SG_ 394 HaDsply_No_Cs 1; +BA_ "ContentDependant" SG_ 394 HaDsply_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 394 HaDsply_No_Cs 1; +BA_ "GenSigSendType" SG_ 394 HaDsply_No_Cs 3; +BA_ "MetaData" SG_ 394 HaDsply_No_Cnt 1; +BA_ "ContentDependant" SG_ 394 HaDsply_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 394 HaDsply_No_Cnt 1; +BA_ "GenSigSendType" SG_ 394 HaDsply_No_Cnt 3; +BA_ "GenSigSendType" SG_ 394 AccStopStat_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 AccTrgDist2_D_Dsply 1; +BA_ "GenSigSendType" SG_ 394 AccTrgDist2_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 AccStopRes_B_Dsply 1; +BA_ "GenSigSendType" SG_ 394 AccStopRes_B_Dsply 3; +BA_ "GenSigSendType" SG_ 394 TjaWarn_D_Rq 3; +BA_ "GenSigSendType" SG_ 394 Tja_D_Stat 3; +BA_ "GenSigSendType" SG_ 394 TjaMsgTxt_D_Dsply 3; +BA_ "GenSigSendType" SG_ 394 IaccLamp_D_Rq 3; +BA_ "GenSigSendType" SG_ 394 AccMsgTxt_D2_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 394 FcwDeny_B_Dsply 1; +BA_ "GenSigSendType" SG_ 394 FcwDeny_B_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 FcwMemStat_B_Actl 1; +BA_ "GenSigSendType" SG_ 394 FcwMemStat_B_Actl 3; +BA_ "ECGUsedRxSignal" SG_ 394 FcwMemStat_B_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 394 AccTGap_B_Dsply 1; +BA_ "GenSigSendType" SG_ 394 AccTGap_B_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 CadsAlignIncplt_B_Actl 1; +BA_ "GenSigSendType" SG_ 394 CadsAlignIncplt_B_Actl 3; +BA_ "CrossOver_InfoCAN" SG_ 394 AccFllwMde_B_Dsply 1; +BA_ "GenSigSendType" SG_ 394 AccFllwMde_B_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 CadsRadrBlck_B_Actl 1; +BA_ "GenSigSendType" SG_ 394 CadsRadrBlck_B_Actl 3; +BA_ "CrossOver_InfoCAN" SG_ 394 CmbbPostEvnt_B_Dsply 1; +BA_ "GenSigSendType" SG_ 394 CmbbPostEvnt_B_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 AccStopMde_B_Dsply 1; +BA_ "GenSigSendType" SG_ 394 AccStopMde_B_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 FcwMemSens_D_Actl 1; +BA_ "GenSigSendType" SG_ 394 FcwMemSens_D_Actl 3; +BA_ "ECGUsedRxSignal" SG_ 394 FcwMemSens_D_Actl 1; +BA_ "CrossOver_InfoCAN" SG_ 394 FcwMsgTxt_D_Rq 1; +BA_ "GenSigSendType" SG_ 394 FcwMsgTxt_D_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 394 AccWarn_D_Dsply 1; +BA_ "GenSigSendType" SG_ 394 AccWarn_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 FcwVisblWarn_B_Rq 1; +BA_ "GenSigSendType" SG_ 394 FcwVisblWarn_B_Rq 3; +BA_ "CrossOver_InfoCAN" SG_ 394 FcwAudioWarn_B_Rq 1; +BA_ "GenSigSendType" SG_ 394 FcwAudioWarn_B_Rq 3; +BA_ "ECGUsedRxSignal" SG_ 394 FcwAudioWarn_B_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 394 AccTGap_D_Dsply 1; +BA_ "GenSigStartValueInteger" SG_ 394 AccTGap_D_Dsply 3; +BA_ "GenSigStartValue" SG_ 394 AccTGap_D_Dsply 3; +BA_ "GenSigSendType" SG_ 394 AccTGap_D_Dsply 3; +BA_ "CrossOver_InfoCAN" SG_ 394 AccMemEnbl_B_RqDrv 1; +BA_ "GenSigStartValueInteger" SG_ 394 AccMemEnbl_B_RqDrv 1; +BA_ "GenSigStartValue" SG_ 394 AccMemEnbl_B_RqDrv 1; +BA_ "GenSigSendType" SG_ 394 AccMemEnbl_B_RqDrv 3; +BA_ "CrossOver_InfoCAN" SG_ 394 FdaMem_B_Stat 1; +BA_ "GenSigSendType" SG_ 394 FdaMem_B_Stat 3; +BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_No_Cnt 1; +BA_ "MetaData" SG_ 391 CmbbBrkDecel_No_Cnt 1; +BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cnt 1; +BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cnt 1; +BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_No_Cs 1; +BA_ "MetaData" SG_ 391 CmbbBrkDecel_No_Cs 1; +BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cs 1; +BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_No_Cs 1; +BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_A_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 391 CmbbBrkDecel_A_Rq 5129; +BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_A_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_A_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkPrchg_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkPrchg_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkPrchg_D_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 391 CmbbBrkPrchg_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 391 CmbbBrkDecel_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBrkDecel_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBrkDecel_B_Rq 1; +BA_ "ECGUsedRxSignal" SG_ 391 CmbbBrkDecel_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 391 CmbbBaSens_D_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 391 CmbbBaSens_D_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 391 CmbbBaSens_D_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 390 AccBrkTot_A_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 390 AccBrkTot_A_Rq 5129; +BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkTot_A_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkTot_A_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccPrpl_A_Pred 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccPrpl_A_Pred 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccVeh_V_Trg 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccVeh_V_Trg 1; +BA_ "UsedOnPgmDBC" SG_ 390 AccBrkPrkEl_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkPrkEl_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkPrkEl_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 390 CmbbDeny_B_Actl 1; +BA_ "U_CX727_MY2021_Rx" SG_ 390 CmbbDeny_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 CmbbDeny_B_Actl 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 CmbbEngTqMn_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 CmbbEngTqMn_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccPrpl_A_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccPrpl_A_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccDeny_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccDeny_B_Rq 1; +BA_ "WakeupSignal" SG_ 390 AccResumEnbl_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccResumEnbl_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccResumEnbl_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 390 AccCancl_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccCancl_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccCancl_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 390 AccBrkPrchg_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkPrchg_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkPrchg_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 390 AccBrkDecel_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 390 AccBrkDecel_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccBrkDecel_B_Rq 1; +BA_ "UsedOnPgmDBC" SG_ 390 AccStopStat_B_Rq 1; +BA_ "U_CX727_MY2021_Rx" SG_ 390 AccStopStat_B_Rq 1; +BA_ "U_P702_MY2021_Rx" SG_ 390 AccStopStat_B_Rq 1; +BA_ "U_T6_MCA_MY2020_Rx" SG_ 390 AccStopStat_B_Rq 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_GWOnBoardTester 255; +BA_ "ContentDependant" SG_ 1441 TCCM_GWOnBoardTester 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_GWOnBoardTester 255; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_GWOnBoardTester 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_GWNMProxy 255; +BA_ "ContentDependant" SG_ 1441 TCCM_GWNMProxy 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_GWNMProxy 255; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_GWNMProxy 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved4 255; +BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved4 255; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved4 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved3 255; +BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved3 255; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved3 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved2 255; +BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved2 255; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved2 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMReserved1 255; +BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMReserved1 255; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMReserved1 1; +BA_ "GenSigStartValueInteger" SG_ 1441 TCCM_AutoSarNMNodeId 161; +BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMNodeId 1; +BA_ "GenSigStartValue" SG_ 1441 TCCM_AutoSarNMNodeId 161; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMNodeId 1; +BA_ "ContentDependant" SG_ 1441 TCCM_AutoSarNMControl 1; +BA_ "U_P702_MY2021_Tx" SG_ 1441 TCCM_AutoSarNMControl 1; +BA_ "GenSigSendType" SG_ 1787 TesterPhysicalResSODCMD 3; +BA_ "GenSigSendType" SG_ 1779 TesterPhysicalReqSODCMD 3; +BA_ "GenSigSendType" SG_ 1786 TesterPhysicalResSODCMC 3; +BA_ "GenSigSendType" SG_ 1778 TesterPhysicalReqSODCMC 3; +BA_ "CrossOver_InfoCAN" SG_ 1153 TerrMde_D_RqDrv 1; +BA_ "UsedOnPgmDBC" SG_ 1153 TerrMde_D_RqDrv 1; +BA_ "GenSigSendType" SG_ 942 PrkAidRdiusRight_L_Dsply 3; +BA_ "GenSigSendType" SG_ 942 PrkAidRdiusLeft_L_Dsply 3; +BA_ "GenSigSendType" SG_ 942 PrkAidDrvDir_D_Stat 3; +BA_ "GenSigSendType" SG_ 942 PrkAidAcsyRear_D_Stat 3; +BA_ "GenSigSendType" SG_ 942 PrkAidAcsyFront_D_Stat 3; +BA_ "GenSigSendType" SG_ 930 BalrWndwRight_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 930 BalrSnsRight_D_Falt 0; +BA_ "GenSigSendType" SG_ 930 BalrSnsRight_D_Falt 3; +BA_ "GenSigStartValueInteger" SG_ 930 WndwPsngrRear_D_RqBalrr 0; +BA_ "GenSigSendType" SG_ 930 WndwPsngrRear_D_RqBalrr 3; +BA_ "GenSigStartValueInteger" SG_ 930 WndwPsngr_D_RqBalrr 0; +BA_ "GenSigSendType" SG_ 930 WndwPsngr_D_RqBalrr 3; +BA_ "GenSigStartValueInteger" SG_ 930 WndwDrvRear_D_RqBalrr 0; +BA_ "GenSigSendType" SG_ 930 WndwDrvRear_D_RqBalrr 3; +BA_ "GenSigStartValueInteger" SG_ 930 WndwDrv_D_RqBalrr 0; +BA_ "GenSigSendType" SG_ 930 WndwDrv_D_RqBalrr 3; +BA_ "GenSigStartValueInteger" SG_ 930 BalrRight_D_Stat 2; +BA_ "GenSigStartValue" SG_ 930 BalrRight_D_Stat 2; +BA_ "GenSigSendType" SG_ 930 BalrRight_D_Stat 3; +BA_ "GenSigSendType" SG_ 930 BalrMdeSelRight_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 930 BalrMdeRight_D_Stat 1; +BA_ "GenSigStartValue" SG_ 930 BalrMdeRight_D_Stat 1; +BA_ "GenSigSendType" SG_ 930 BalrMdeRight_D_Stat 3; +BA_ "GenSigSendType" SG_ 930 BalrLckRight_B_Stat 3; +BA_ "GenSigSendType" SG_ 930 BalrChimeRight_D_Rq 3; +BA_ "GenSigSendType" SG_ 930 CamraRearOn_B_RqBalrr 3; +BA_ "GenSigSendType" SG_ 930 DrLckCnt_No_ActlBalrr 3; +BA_ "GenSigSendType" SG_ 930 DrLckActv_B_RqBalrr 3; +BA_ "GenSigSendType" SG_ 929 BalrChimeLeft_D_Rq 3; +BA_ "GenSigStartValueInteger" SG_ 929 BalrLeft_D_Stat 2; +BA_ "GenSigStartValue" SG_ 929 BalrLeft_D_Stat 2; +BA_ "GenSigSendType" SG_ 929 BalrLeft_D_Stat 3; +BA_ "GenSigSendType" SG_ 929 BalrWndwLeft_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 929 WndwPsngrRear_D_RqBalrl 0; +BA_ "GenSigSendType" SG_ 929 WndwPsngrRear_D_RqBalrl 3; +BA_ "GenSigStartValueInteger" SG_ 929 WndwPsngr_D_RqBalrl 0; +BA_ "GenSigSendType" SG_ 929 WndwPsngr_D_RqBalrl 3; +BA_ "GenSigStartValueInteger" SG_ 929 WndwDrvRear_D_RqBalrl 0; +BA_ "GenSigSendType" SG_ 929 WndwDrvRear_D_RqBalrl 3; +BA_ "GenSigStartValueInteger" SG_ 929 WndwDrv_D_RqBalrl 0; +BA_ "GenSigSendType" SG_ 929 WndwDrv_D_RqBalrl 3; +BA_ "GenSigStartValueInteger" SG_ 929 BalrSnsLeft_D_Falt 0; +BA_ "GenSigSendType" SG_ 929 BalrSnsLeft_D_Falt 3; +BA_ "GenSigSendType" SG_ 929 BalrMdeSelLeft_B_Stat 3; +BA_ "GenSigStartValueInteger" SG_ 929 BalrMdeLeft_D_Stat 1; +BA_ "GenSigStartValue" SG_ 929 BalrMdeLeft_D_Stat 1; +BA_ "GenSigSendType" SG_ 929 BalrMdeLeft_D_Stat 3; +BA_ "GenSigSendType" SG_ 929 BalrLckLeft_B_Stat 3; +BA_ "GenSigSendType" SG_ 929 CamraRearOn_B_RqBalrl 3; +BA_ "GenSigSendType" SG_ 929 DrLckCnt_No_ActlBalrl 3; +BA_ "GenSigSendType" SG_ 929 DrLckActv_B_RqBalrl 3; +BA_ "CrossOver_InfoCAN" SG_ 402 ApaMdeStat_D_RqDrv 1; +BA_ "CrossOver_InfoCAN" SG_ 402 CamraZoomMan_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 402 CamraOvrlStat_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 402 CamraOvrlDyn_D_Rq 1; +BA_ "CrossOver_InfoCAN" SG_ 402 CamAutoTowbarZoom 1; +BA_ "CrossOver_InfoCAN" SG_ 402 DistanceBarSetting 1; +BA_ "GenSigStartValue" SG_ 924 DcacOut_Pw_Mx 2046; +BA_ "U_P702_MY2021_Rx" SG_ 924 DcacOut_Pw_Mx 1; +BA_ "GenSigStartValue" SG_ 924 DcacOut2_Pw_Actl 8190; +BA_ "U_P702_MY2021_Rx" SG_ 924 DcacOut2_Pw_Actl 1; +BA_ "GenSigStartValue" SG_ 924 DcacOut1_Pw_Actl 8190; +BA_ "U_P702_MY2021_Rx" SG_ 924 DcacOut1_Pw_Actl 1; +BA_ "GenSigStartValue" SG_ 924 DcacIn_Pw_Mx 2046; +BA_ "U_P702_MY2021_Rx" SG_ 924 DcacIn_Pw_Mx 1; +BA_ "GenSigStartValue" SG_ 923 DcacIn_U2_Actl 4094; +BA_ "GenSigStartValue" SG_ 923 DcacIn_U_Actl 4094; +BA_ "U_P702_MY2021_Rx" SG_ 923 DcacIn_U_Actl 1; +BA_ "GenSigStartValue" SG_ 923 DcacIn_I_Actl 2046; +BA_ "U_P702_MY2021_Rx" SG_ 923 DcacIn_I_Actl 1; +BA_ "GenSigStartValue" SG_ 923 Dcac_Te_Actl 254; +BA_ "U_P702_MY2021_Rx" SG_ 923 Dcac_Te_Actl 1; +BA_ "GenSigSendType" SG_ 1998 TesterPhysicalResSODR 3; +BA_ "GenSigSendType" SG_ 1996 TesterPhysicalResSODL 3; +BA_ "GenSigSendType" SG_ 1988 TesterPhysicalReqSODL 3; +BA_ "U_P702_MY2021_Rx" SG_ 922 DcacRdy_D_Stat 1; +BA_ "GenSigStartValue" SG_ 922 DcacPlugPrsnt_B_Stat 1; +BA_ "U_P702_MY2021_Rx" SG_ 922 DcacPlugPrsnt_B_Stat 1; +VAL_ 823 DteAcceptNew_B_Rq 1 "Yes" 0 "No"; +VAL_ 824 DteCldTrlrOn_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldTrlrOff_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldTraffic_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldTerrain_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldRoute_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldPayload_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldExtTe_B_Stat 1 "Yes" 0 "No"; +VAL_ 824 DteCldDcac_B_Stat 1 "Yes" 0 "No"; +VAL_ 949 Tire_Press_RR_ORR_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; +VAL_ 949 Tire_Press_LR_OLR_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; +VAL_ 949 Tire_Press_LF_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; +VAL_ 949 Tire_Press_RF_Data 65535 "Not_Supported" 65534 "Invalid" 65533 "Unknown"; +VAL_ 740 BattAuxCnnct_B_Cmd 1 "Close" 0 "Open"; +VAL_ 1160 DgtlCommPncReset_B_Req 1 "Yes" 0 "No"; +VAL_ 1160 DataMntrSustn_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 1160 PwSustnRdata_B_RqTelem 1 "Active" 0 "Inactive"; +VAL_ 776 ScChrgrPwMax_Pw_RqCld 4095 "Faulty"; +VAL_ 776 PrcondEdit_D_RqCld 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "High" 3 "Medium" 2 "Low" 1 "Off" 0 "Null"; +VAL_ 776 GoTEditMnte_T_RqCld 15 "Faulty" 14 "NoDataExists" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; +VAL_ 776 GoTEditHr_T_RqCld 31 "Faulty" 30 "NoDataExists"; +VAL_ 776 ChrgToPcEdit_Pc_RqCld 127 "Faulty" 126 "NoDataExists"; +VAL_ 776 ScFreshDataEnbl_B_Rq 1 "Yes" 0 "No"; +VAL_ 776 ScEnbl_D_RqCld 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 775 ScDayOfWeekId_D_RqCld 7 "Sunday" 6 "Saturday" 5 "Friday" 4 "Thursday" 3 "Wednesday" 2 "Tuesday" 1 "Monday" 0 "NotUsed"; +VAL_ 775 ScChrgDurSet_D_RqCld 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 775 ScChrgDur_T_RqCld 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 774 ScLocLongPostv_B_RqCld 1 "Yes" 0 "No"; +VAL_ 774 ScLocLattPostv_B_RqCld 1 "Yes" 0 "No"; +VAL_ 774 ScLocDelete_B_RqCld 1 "Request" 0 "NoRequest"; +VAL_ 811 DistToStopover_L_Actl 65535 "Faulty"; +VAL_ 811 ExtLghtDsply_D_Stat 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 811 ExtLghtRight_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 811 AutoLghtOvrrd_B_RqDrv 1 "Allowed" 0 "NotAllowed"; +VAL_ 811 ExtLghtRear_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 811 ExtLghtLeft_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 811 ExtLghtFront_D_RqMnu 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 811 GoTEditMnte_T_RqMnu 15 "Faulty" 14 "NoDataExists" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; +VAL_ 811 GoTEditHr_T_RqMnu 31 "Faulty" 30 "NoDataExists"; +VAL_ 850 VehElRngeNut_L_Dsply 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 850 NxtUsgSocEst_Pc_Dsply 255 "Faulty" 254 "NoDataExists"; +VAL_ 850 EstmChrgTimeLP_St 255 "Invalid"; +VAL_ 850 EstmChrgTimeHP_St 255 "Invalid"; +VAL_ 850 ChargeNowDuration_St 255 "Invalid"; +VAL_ 563 DrvBhavWarn_B_Rq 1 "On" 0 "Off"; +VAL_ 563 OfbChrgSetSync_D_Rq 3 "Fail" 2 "Success" 1 "InProgress" 0 "NoSyncInProgress"; +VAL_ 563 KeyOffPwMde_D_Stat 7 "NotUsed_6" 6 "NotUsed_5" 5 "NotUsed_4" 4 "NotUsed_3" 0 "Inactive" 1 "On" 2 "NotUsed_1" 3 "NotUsed_2"; +VAL_ 563 ModemReset_D_Stat 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "WifiHotSpotResetComplete" 4 "CcsResetComplete" 3 "OnlineTrafficResetComplete" 2 "PaakResetComplete" 1 "ResetNotComplete" 0 "Null"; +VAL_ 563 FactoryReset_St 3 "NotUsed_2" 2 "NotUsed_1" 1 "FactoryDefaultsRestored" 0 "Null"; +VAL_ 570 SuspClkSync_No_Rq 255 "Faulty" 254 "NoDataExists"; +VAL_ 570 SuspRearRight_L_Actl 511 "Faulty"; +VAL_ 570 SuspFrntRight_L_Actl 511 "Faulty"; +VAL_ 570 SuspRear_L_Prev 511 "Fault"; +VAL_ 570 SuspRear_L_Actl 511 "Fault"; +VAL_ 570 SuspFrnt_L_Prev 511 "Fault"; +VAL_ 570 SuspFrnt_L_Actl 511 "Fault"; +VAL_ 837 Ccd_B_Falt 1 "Yes" 0 "No"; +VAL_ 837 SelDrvMdeSusp_D_Stat 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; +VAL_ 837 AdptDrvMdePt_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Powertrain2Sport" 2 "Powertrain2Normal" 1 "Powertrain2Comfort" 0 "AdaptiveNotActive"; +VAL_ 837 AdptDrvMdeChassis_D_Rq 7 "Faulty" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "Chassis2Sport" 2 "Chassis2Normal" 1 "Chassis2Comfort" 0 "AdaptiveNotActive"; +VAL_ 837 CcdMsgTxt_D_RqDsply 15 "Unused8" 14 "Unused7" 13 "Unused6" 12 "Unused5" 11 "Unused4" 10 "Unused3" 9 "Unused2" 8 "StationaryMode" 7 "Mode_Change_Unavailable" 6 "CCD_Temporarily_Off" 5 "CCD_Service_Required" 4 "Faulty" 3 "Sport" 2 "Normal" 1 "Comfort" 0 "No_Mode_Selected"; +VAL_ 885 BattULoChrg_D_RqOta 1 "Yes" 0 "No"; +VAL_ 885 VehStrtInhbt_T_Dsply 15 "NotUsed_12" 14 "NotUsed_11" 13 "NotUsed_10" 12 "NotUsed_9" 11 "NotUsed_8" 10 "NotUsed_7" 9 "NotUsed_6" 8 "NotUsed_5" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "PostOtaActivatePermFail" 2 "PostOtaActivateWarning" 1 "DuringOtaActivate" 0 "NoMessage"; +VAL_ 885 VehStrtInhbt_D_Dsply 15 "NotUsed_12" 14 "NotUsed_11" 13 "NotUsed_10" 12 "NotUsed_9" 11 "NotUsed_8" 10 "NotUsed_7" 9 "NotUsed_6" 8 "NotUsed_5" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "PostOtaActivatePermFail" 2 "PostOtaActivateWarning" 1 "DuringOtaActivate" 0 "NoMessage"; +VAL_ 885 VehOnRqstr_D_Stat 11 "NotUsed_8" 10 "NotUsed_7" 9 "NotUsed_6" 8 "NotUsed_5" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "FleetVehInhbt" 2 "StolenVehInhbt" 1 "OverTheAir" 0 "NoRequestor" 15 "NotUsed_12" 14 "NotUsed_11" 13 "NotUsed_10" 12 "NotUsed_9"; +VAL_ 885 VehStrtInhbt_D_RqCld 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 885 VehOn_D_RqCld 3 "NoControl" 2 "On" 1 "Off" 0 "Null"; +VAL_ 885 OtaActv_D_Stat 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "NonInterruptible_Pending" 4 "NonInterruptible_Config" 3 "NonInterruptible_ER" 2 "NonInterruptible_AB" 1 "Interruptible_AB" 0 "NoInVehicleOta"; +VAL_ 810 OBCCSerial_D_Rq 3 "PresentAndProvisioned" 2 "PresentAndProvAlertAck" 1 "PresentAndUnprovisioned" 0 "NotPresent"; +VAL_ 810 TlghtTest_D_RqArb 3 "TestEndAcknowledge" 2 "StartTest" 1 "StopTest" 0 "Null"; +VAL_ 810 ChrgrPncSustn_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 810 NtfyDrvTrgtDist_L_Rq 4095 "Trip_dist_alert_disabled" 0 "Inactive"; +VAL_ 810 NtfyDrvSocLvl1_Pc_Rq 127 "TargetSOCNotificationAlert" 0 "Inactive"; +VAL_ 810 PtRmtRprt_D_Stat 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "SettingUpdated" 10 "FastChargeComplete" 9 "ChargeNotOccurring" 8 "OneTimeSocReached" 7 "BatteryTemperatureRemind" 6 "ReducedPerformance" 5 "LimitedPerformance" 4 "ChargeFault" 3 "ChargeComplete" 2 "VehiclePreconditioned" 1 "TripDistanceAchieved" 0 "NoReportRequest"; +VAL_ 810 ChrgrPncEnbl_D_Rq 3 "NotUsed" 2 "Enable" 1 "Disable" 0 "Null"; +VAL_ 810 ExtLghtDsply_B_StatArb 1 "On" 0 "Off"; +VAL_ 810 ExtLghtRight_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 810 ExtLghtRear_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 810 ExtLghtLeft_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 810 ExtLghtFront_D_RqOta 7 "NotUsed" 6 "PressToOn3" 5 "PressToOff3" 4 "PressToOn2" 3 "PressToOff2" 2 "PressToOn1" 1 "PressToOff1" 0 "Reset"; +VAL_ 550 PtWakeupActv1_B_Rq 1 "Wake_up_Powertrain_via_HW" 0 "Don_t_Wake_Up_Powertrain"; +VAL_ 639 OfbChrgPrflUpdate_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 639 OfbChrgClearAll_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 639 OfbChrgGoTTouch_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 639 OfbChrgGoTPrcond_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 639 OfbChrgGoTOn_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 639 OfbChrgGoTMnte_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; +VAL_ 639 OfbChrgGoTHr_T_Rq 31 "Faulty" 30 "NoDataExists"; +VAL_ 639 OfbChrgGoTExtHtr_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 639 OfbChrgGoTDelete_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 639 OfbChrgGoTUpdate_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 530 OfbChrgToPcWknd_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 530 OfbChrgToPcWkdy_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 530 OfbChrgSetNow_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 530 OfbChrgSetDelete_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 530 OfbChrgLocIdUns_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 1142 ConsTipV_No_Dsply 1023 "Faulty" 1022 "NoDataExists"; +VAL_ 817 ChildLckMde_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 817 VehLckInd_D_Rq 3 "NotUsed" 2 "On_Day" 1 "On_Night" 0 "Off"; +VAL_ 817 DrTgateOpen_B_Rq 1 "Open" 0 "Null"; +VAL_ 817 DrTgateExtSwMde_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 817 Remote_Device_Feedback 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "Shutdown" 3 "Running" 2 "Starting" 1 "Acknowledge" 0 "Null"; +VAL_ 817 Veh_Lock_Requestor 31 "Unused8" 30 "Unused7" 29 "Unused6" 28 "Rgtm_Shutlock_Switch" 27 "Boundary_Alert" 26 "Transit_Vehicle_Relock" 25 "Transit_Cargo_Relock" 24 "Transit_Ajar_Lock" 23 "Diagnostics" 22 "Console_Lock" 21 "Child_Lock" 20 "Double_Lock" 19 "Passive_Pasenger" 18 "Passive_Driver" 17 "Slam_Lock_Protect" 16 "SYNC" 15 "Passport" 14 "Passive_Smart_Unlock" 13 "Autorelock" 12 "RemoteStart" 0 "Null" 1 "Autolock" 11 "Smart_Unlock" 10 "Sliding_Door" 9 "Passive" 8 "Remote" 7 "Programming" 6 "Powerslide" 5 "Keypad" 4 "Key_Cylinder" 3 "Interior" 2 "Auto_Unlock"; +VAL_ 817 R_Pwr_Sliding_Dr_Rqst 1 "Active" 0 "Null"; +VAL_ 817 Power_Liftgate_Rqst 1 "Active" 0 "Null"; +VAL_ 817 Power_Decklid_Rqst 1 "Active" 0 "Null"; +VAL_ 817 L_Pwr_Sliding_Dr_Rqst 1 "Active" 0 "Null"; +VAL_ 817 Veh_Lock_Sub_Id 15 "Unused7" 14 "Unused6" 13 "Unused5" 12 "Unused4" 11 "Unused3" 10 "Unused2" 9 "Unused1" 8 "Customer_8" 7 "Customer_7" 6 "Customer_6" 5 "Customer_5" 4 "Customer_4" 3 "Customer_3" 2 "Customer_2" 1 "Customer_1" 0 "Null"; +VAL_ 817 Veh_Lock_Status 3 "UNLOCK_DRV" 2 "UNLOCK_ALL" 1 "LOCK_ALL" 0 "LOCK_DBL"; +VAL_ 817 ChildLck_D_Dsply 3 "NOT_SUPPORTED" 2 "ERROR" 1 "CHILD_UNLOCK" 0 "CHILD_LOCK"; +VAL_ 817 WindowLockout_B_Stat 1 "Locked" 0 "Unlock"; +VAL_ 817 Lockmsgtxt_D_Rq 7 "MSG7" 6 "MSG6" 5 "MSG5" 4 "MSG4" 3 "MSG3" 2 "MSG2" 1 "MSG1" 0 "NO_WARNING"; +VAL_ 817 FobComm_D_Stat 3 "NotUsed" 2 "RemEngStartOK" 1 "RemEngStartFail" 0 "Null"; +VAL_ 817 LockInhibit 1 "Inhibit" 0 "No_Inhibit"; +VAL_ 879 WndwRearHeat_I_Actl 2047 "Faulty"; +VAL_ 879 WndwRearHeat_D_Stat 7 "NotUsed" 6 "FetLiftLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; +VAL_ 878 DcacGfciTest_B_Rq 1 "Pressed" 0 "Not_Pressed"; +VAL_ 878 DcacOut_Pw_DsplyMx 1023 "Faulty"; +VAL_ 878 DcacOut1_Pw_Dsply 63 "Faulty"; +VAL_ 878 DcacOut2_Pw_Dsply 63 "Faulty"; +VAL_ 878 DcacHw_D_Confg 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Power_2300W" 3 "Power_7200W" 2 "Power_2400W" 1 "Power_2000W" 0 "NoDcacHardware"; +VAL_ 878 DcacFaltMsgTxt_D_Rq 15 "NotUsed" 14 "OvercurrentLP" 13 "EngineRun" 12 "Service" 11 "NotAvailable" 10 "PlugWarn" 9 "PlugWarnDrive" 8 "BreakerC" 7 "BreakerB" 6 "BreakerA" 5 "FuelLow" 4 "AcOnOutput" 3 "Temperature" 2 "Gfci" 1 "Overcurrent" 0 "Ok"; +VAL_ 878 DcacLoFuelMsgTxt_D_Rq 31 "Minute_31" 30 "Minute_30" 29 "Minute_29" 28 "Minute_28" 27 "Minute_27" 26 "Minute_26" 25 "Minute_25" 24 "Minute_24" 23 "Minute_23" 22 "Minute_22" 21 "Minute_21" 20 "Minute_20" 19 "Minute_19" 18 "Minute_18" 17 "Minute_17" 16 "Minute_16" 15 "Minute_15" 14 "Minute_14" 13 "Minute_13" 12 "Minute_12" 11 "Minute_11" 10 "Minute_10" 9 "Minute_9" 8 "Minute_8" 7 "Minute_7" 6 "Minute_6" 5 "Minute_5" 4 "Minute_4" 3 "Minute_3" 2 "Minute_2" 1 "Minute_1" 0 "Ok"; +VAL_ 878 DcacEngOnMsgTxt_D_Rq 3 "NotUsed" 2 "DisplayQuestion" 1 "DisplayWarning" 0 "Ok"; +VAL_ 878 DcacElPw_D_Stat 3 "NotUsed" 2 "High" 1 "Low" 0 "Off"; +VAL_ 878 PwBedPnlEnbl_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 878 DcacOn_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 878 DcacSys_B_Falt 1 "Yes" 0 "No"; +VAL_ 878 DcacLedCtl_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 395 SelDrvMdeCnfm_D_Stat 3 "NotUsed" 2 "Accepted" 1 "NotAccepted" 0 "Null"; +VAL_ 984 PersIndexIpma_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 984 AhbcRampingV_D_Rq 3 "Slow" 2 "Medium" 1 "Fast" 0 "Immediately"; +VAL_ 984 LaActvStats_D_Dsply 31 "Unused7" 30 "LA_Off" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 24 "InerveneLeft_InterveneRght" 23 "WarnLeft_InterveneRight" 22 "SuppressLeft_InterveneRght" 21 "AvailLeft_InterveneRhtt" 20 "NoLeft_InterveneRight" 19 "InterveneLeft_WarnRight" 18 "WarnLeft_WarnRight" 17 "SuppressLeft_WarnRight" 16 "AvailableLeft_WarnRight" 15 "NoLeft_WarnRight" 14 "InterveneLeft_SuppressRght" 13 "WarnLeft_SuppressRight" 12 "SuppressLeft_SuppressRight" 11 "AvailLeft_SuppressRight" 10 "NoLeft_SuppressRight" 9 "InterveneLeft_AvailRight" 8 "WarnLeft_AvailRight" 7 "SuppressLeft_AvailRight" 6 "AvailableLeft_AvailRight" 5 "NoLeft_AvailableRight" 4 "InterveneLeft_NoRight" 3 "WarnLeft_NoRight" 2 "SuppressLeft_NoRight" 1 "AvailableLeft_NoRight" 0 "NoLeft_NoRight"; +VAL_ 984 LaDenyStats_B_Dsply 1 "Unavailable" 0 "Available"; +VAL_ 984 LaHandsOff_D_Dsply 3 "Suppressed" 2 "Level2" 1 "Level1" 0 "HandsOn"; +VAL_ 984 CamraDefog_B_Req 1 "On" 0 "Off"; +VAL_ 984 CamraStats_D_Dsply 3 "FrtCam_TempUnavailOther" 2 "FrtCam_TempUnavailVisibile" 1 "Front_Camera_Service_Reqd" 0 "Front_Camera_OK"; +VAL_ 984 DasAlrtLvl_D_Dsply 5 "Alertness_Level_5" 4 "Alertness_Level_4" 3 "Alertness_Level_3" 2 "Alertness_Level_2" 1 "Alertness_Level_1" 0 "Undefined"; +VAL_ 984 DasStats_D_Dsply 3 "Available" 2 "Unavailable_Other" 1 "Feedback_due_to_Speed" 0 "Off"; +VAL_ 984 DasWarn_D_Dsply 3 "Undefined" 2 "Warning_Level_2" 1 "Warning_Level_1" 0 "No_Warning"; +VAL_ 984 AhbHiBeam_D_Rq 3 "NotUsed" 2 "HighBeamRecommended" 1 "LowBeamRecommended" 0 "DeactivatedUnavailable"; +VAL_ 985 LdwChime_B_Rq 1 "On" 0 "Off"; +VAL_ 985 TsrRegionTxt_D_Stat 31 "Faulty" 30 "NotUsed_8" 29 "NotUsed_7" 28 "NotUsed_6" 27 "NotUsed_5" 26 "NotUsed_4" 25 "NotUsed_3" 24 "NotUsed_2" 23 "NotUsed_1" 22 "Region_22" 21 "Region_21" 20 "Region_20" 19 "Region_19" 18 "Region_18" 17 "Region_17" 16 "Region_16" 15 "Region_15" 14 "Region_14" 13 "Region_13" 12 "Region_12" 11 "Region_11" 10 "Region_10" 9 "Region_09" 8 "Region_08" 7 "Region_07" 6 "Region_06" 5 "Region_05" 4 "Region_04" 3 "Region_03" 2 "Region_02" 1 "Region_01" 0 "NotDetermined"; +VAL_ 985 SblmPedCrossScnr_B_Stat 1 "Yes" 0 "No"; +VAL_ 985 LongCtrlEnbl_D_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "RemoteParking" 2 "Autohitch" 1 "AutomaticParking" 0 "None"; +VAL_ 985 SblmRndAbtScnr_B_Stat 1 "Yes" 0 "No"; +VAL_ 985 DasAlrtInfo_D_Dsply 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 985 IaccVLim_D_Rq 252 "NotUsed_2" 250 "LimitSpeed_250" 240 "LimitSpeed_240" 230 "LimitSpeed_230" 220 "LimitSpeed_220" 210 "LimitSpeed_210" 200 "LimitSpeed_200" 190 "LimitSpeed_190" 150 "LimitSpeed_150" 140 "LimitSpeed_140" 130 "LimitSpeed_130" 120 "LimitSpeed_120" 110 "LimitSpeed_110" 100 "LimitSpeed_100" 90 "LimitSpeed_90" 80 "LimitSpeed_80" 70 "LimitSpeed_70" 60 "LimitSpeed_60" 50 "LimitSpeed_50" 40 "LimitSpeed_40" 30 "LimitSpeed_30" 20 "LimtSpeed_20" 251 "NotUsed_1" 255 "Faulty" 254 "NoDataExists" 253 "NotUsed_3" 180 "LimitSpeed_180" 179 "LimitSpeed_179" 178 "LimitSpeed_178" 177 "LimitSpeed_177" 176 "LimitSpeed_176" 175 "LimitSpeed_175" 174 "LimitSpeed_174" 173 "LimitSpeed_173" 172 "LimitSpeed_172" 171 "LimitSpeed_171" 170 "LimitSpeed_170" 169 "LimitSpeed_169" 168 "LimitSpeed_168" 167 "LimitSpeed_167" 166 "LimitSpeed_166" 165 "LimitSpeed_165" 164 "LimitSpeed_164" 163 "LimitSpeed_163" 162 "LimitSpeed_162" 161 "LimitSpeed_161" 160 "LimitSpeed_160" 15 "LimitSpeed_15" 14 "LimitSpeed_14" 13 "LimitSpeed_13" 12 "LimitSpeed_12" 11 "LimitSpeed_11" 10 "LimitSpeed_10" 9 "LimitSpeed_9" 8 "LimitSpeed_8" 7 "LimitSpeed_7" 6 "LimitSpeed_6" 5 "LimitSpeed_5" 4 "LimitSpeed_4" 3 "LimitSpeed_3" 2 "LimitSpeed_2" 1 "LimitSpeed_1" 0 "LimitSpeed_0"; +VAL_ 985 IaccVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; +VAL_ 985 IsaVLim_D_Rq 252 "NotUsed_2" 250 "LimitSpeed_250" 240 "LimitSpeed_240" 230 "LimitSpeed_230" 220 "LimitSpeed_220" 210 "LimitSpeed_210" 200 "LimitSpeed_200" 190 "LimitSpeed_190" 150 "LimitSpeed_150" 140 "LimitSpeed_140" 130 "LimitSpeed_130" 120 "LimitSpeed_120" 110 "LimitSpeed_110" 100 "LimitSpeed_100" 90 "LimitSpeed_90" 80 "LimitSpeed_80" 70 "LimitSpeed_70" 60 "LimitSpeed_60" 50 "LimitSpeed_50" 40 "LimitSpeed_40" 30 "LimitSpeed_30" 20 "LimtSpeed_20" 251 "NotUsed_1" 255 "Faulty" 254 "NoDataExists" 253 "NotUsed_3" 180 "LimitSpeed_180" 179 "LimitSpeed_179" 178 "LimitSpeed_178" 177 "LimitSpeed_177" 176 "LimitSpeed_176" 175 "LimitSpeed_175" 174 "LimitSpeed_174" 173 "LimitSpeed_173" 172 "LimitSpeed_172" 171 "LimitSpeed_171" 170 "LimitSpeed_170" 169 "LimitSpeed_169" 168 "LimitSpeed_168" 167 "LimitSpeed_167" 166 "LimitSpeed_166" 165 "LimitSpeed_165" 164 "LimitSpeed_164" 163 "LimitSpeed_163" 162 "LimitSpeed_162" 161 "LimitSpeed_161" 160 "LimitSpeed_160" 15 "LimitSpeed_15" 14 "LimitSpeed_14" 13 "LimitSpeed_13" 12 "LimitSpeed_12" 11 "LimitSpeed_11" 10 "LimitSpeed_10" 9 "LimitSpeed_9" 8 "LimitSpeed_8" 7 "LimitSpeed_7" 6 "LimitSpeed_6" 5 "LimitSpeed_5" 4 "LimitSpeed_4" 3 "LimitSpeed_3" 2 "LimitSpeed_2" 1 "LimitSpeed_1" 0 "LimitSpeed_0"; +VAL_ 985 SblmStopScnr_B_Stat 1 "Yes" 0 "No"; +VAL_ 985 SblmYieldScnr_B_Stat 1 "Yes" 0 "No"; +VAL_ 985 IsaVLimUnit_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; +VAL_ 985 AdbDividedRoad_B_Stat 1 "Yes" 0 "No"; +VAL_ 985 LcwaMsgTxt_D_Stat 3 "SodXFaulty" 2 "SodXBlocked" 1 "TrailerConnected" 0 "NoMessage"; +VAL_ 985 AdbDrvSide_B_Stat 1 "Left_Hand_Traffic" 0 "Right_Hand_Traffic"; +VAL_ 992 MsgCntrDsplyOp_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Copy" 4 "Restore" 3 "Upload" 2 "Set" 1 "Query" 0 "Null"; +VAL_ 992 MsgCntrPersIndex_D_Rq 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 943 VehVActlAdas_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 943 AdasLcDistToObj_L_Actl 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 515 PtIgnSwtch_D_Stat 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; +VAL_ 1111 TrlrYawWActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 1111 TrlrYaw_W_Actl 65535 "Faulty" 65534 "NoDataExists"; +VAL_ 1111 TrlrHitYaw_AnRate_Actl 4095 "Fault" 4094 "NoDataExists"; +VAL_ 1111 TrlrHitchYaw_D_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "FaultyYrsuConnection" 9 "FaultyYrsu" 8 "HiConfdLrndAngle" 7 "LowConfdLrndAngle" 6 "HiConfdAngleMem" 5 "LowConfdAngleMem" 4 "InitNoTadAngle" 3 "InitInputs" 2 "TadTrlrDataOutOfRange" 1 "TadNotWithinSpecification" 0 "NoConnectionWithYrsu"; +VAL_ 1111 TrlrHitchYaw_An_Actl 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 1106 TrlrSnsId_No_Actl -1 "Faulty_FFFFFFFFFFFF" -2 "NoDataExists_FFFFFFFFFFFE"; +VAL_ 982 LatCtl_D2_Rq 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "SafeRampOut" 2 "PathFollowingExtendedMode" 1 "PathFollowingLimitedMode" 0 "NoLateralControl"; +VAL_ 982 HandsOffCnfm_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 982 LatCtlRampType_D_Rq 3 "Immediately" 2 "Fast" 1 "Medium" 0 "Slow"; +VAL_ 982 LatCtlPrecision_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "Precise" 0 "Comfortable"; +VAL_ 1104 DrvEngageLevel_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Disengaged" 3 "Distracted" 2 "Attentive" 1 "Invalid" 0 "NotDetermined"; +VAL_ 1104 DrvImpLvlConfid_D_Stat 7 "Faulty" 6 "NotUsed" 5 "High" 4 "MediumHigh" 3 "Medium" 2 "LowMedium" 1 "Low" 0 "NotDetermined"; +VAL_ 1104 DrvImpairLvl_D_Stat 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "Incapacitated" 8 "Asleep" 7 "Microsleep" 6 "MostDrowsy" 5 "Drowsy_4" 4 "Drowsy_3" 3 "Drowsy_2" 2 "LeastDrowsy" 1 "Alert" 0 "NotDetermined"; +VAL_ 1104 DrvEngLvlConfid_D_Stat 7 "Faulty" 6 "NotUsed" 5 "High" 4 "MediumHigh" 3 "Medium" 2 "LowMedium" 1 "Low" 0 "NotDetermined"; +VAL_ 1104 DrvCamPassIR_D_Stat 3 "Faulty" 2 "Blocked" 1 "Ok" 0 "TemporaryUnavailable"; +VAL_ 1104 DrvCamera_D_Stat 3 "Faulty" 2 "Blocked" 1 "Ok" 0 "TemporaryUnavailable"; +VAL_ 1104 DrvCamDrvIR_D_Stat 3 "Faulty" 2 "Blocked" 1 "Ok" 0 "TemporaryUnavailable"; +VAL_ 1104 DrvAttentZone_D_Stat 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "PassengerSideWindow" 8 "DriverSideWindow" 7 "DriverSideMirror" 6 "RearviewMirror" 5 "PassengerSideMirror" 4 "Infotainment" 3 "Cluster" 2 "FrontWindshield" 1 "Other" 0 "NotDetermined"; +VAL_ 1104 DrvAlertSt_D_Stat 3 "Faulty" 2 "EyesOffRoad" 1 "EyesOnRoad" 0 "NotDetermined"; +VAL_ 1114 TrailCtlSwtch_B_Stat2 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1114 TrlBrkInitOut_D_Rq 3 "Heavy" 2 "Medium" 1 "Light" 0 "Null"; +VAL_ 1116 TrlrAidSetup_D2_Rq 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "CompleteSetup" 5 "ReturnToSetup" 4 "StickerNotCircled" 3 "ConfirmSetup" 2 "EndSetup" 1 "BeginSetup" 0 "Inactive"; +VAL_ 1116 TrlrAidEnbl_D2_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Deactivate" 2 "ActivateTrg" 1 "ActivateTba" 0 "Inactive"; +VAL_ 1116 TrlrRvrseCancl_B_Rq 1 "Cancel" 0 "Null"; +VAL_ 1116 TrlrIdType_D_Stat 3 "Gooseneck" 2 "FifthWheel" 1 "Conventional" 0 "Null"; +VAL_ 1116 TrlrAnOffstDir_D_Mem 3 "NotUSed" 2 "Right" 1 "Left_or_Center" 0 "Null"; +VAL_ 1085 ULoRgenTestMde_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1085 PwSrcULoOvrTe_B_Actl 1 "Yes" 0 "No"; +VAL_ 1085 PwSrcULoFalt_D_Stat 3 "Fault_No_Output" 2 "Fault_Reduced_Output" 1 "Fault_NonSpecific" 0 "No_Fault"; +VAL_ 1085 PwSrcULoDcnnt_B_Stat 1 "Loose_or_Disconnected" 0 "Connected"; +VAL_ 1085 PwSrcULo_Pc_Mx 255 "Fault"; +VAL_ 1085 PwSrcULoComm_B_Falt 1 "Fault" 0 "No_Fault"; +VAL_ 1085 PwSrcULo_I_Mx 255 "Fault"; +VAL_ 1085 PwSrcULo_I_Actl 255 "Fault"; +VAL_ 981 AdbBrdrTop_An_Rq 255 "Faulty" 254 "NoDataExists"; +VAL_ 981 AdbBrdrRight_L_Stat 511 "Faulty" 510 "NoDataExists"; +VAL_ 981 AdbBrdrRight_An_Rq 1023 "Faulty" 1022 "NoDataExists"; +VAL_ 981 AdbBrdrLeft_L_Stat 511 "Faulty" 510 "NoDataExists"; +VAL_ 981 AdbBrdrLeft_An_Rq 1023 "Faulty" 1022 "NoDataExists"; +VAL_ 981 AdbBrdrBottom_An_Rq 63 "Faulty" 62 "NoDataExists"; +VAL_ 981 AdbBeam_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "FullHighBeam" 3 "Spot_BothSide" 2 "Spot_OnlyRightSide" 1 "Spot_OnlyLeftSide" 0 "NoHighBeam"; +VAL_ 791 EngAirFilt_B_RqReset 1 "Yes" 0 "No"; +VAL_ 791 GpsElMdeSel_B_Rq 1 "On" 0 "Off"; +VAL_ 791 LongTermReset_B_Rq 1 "On" 0 "Off"; +VAL_ 791 DrvEffLvl_No_Stat 63 "Fault" 62 "NoDataExists"; +VAL_ 868 BattRgenLoStat_D_Qlty 3 "OK" 2 "Not_Within_Spec" 1 "Eval_In_Progress" 0 "Faulty"; +VAL_ 868 BattRgenLoPrtct_B_Stat 1 "Yes" 0 "No"; +VAL_ 868 BattRgenLoDChrg_D_Stat 3 "StuckClosed" 2 "StuckOpen" 1 "Closed" 0 "Open"; +VAL_ 868 BattRgenLoDchrg_B_Rq 1 "Yes" 0 "No"; +VAL_ 868 BattRgenLoChrg_D_Stat 3 "StuckClosed" 2 "StuckOpen" 1 "Closed" 0 "Open"; +VAL_ 868 BattRgenLoChrg_B_Rq 1 "Yes" 0 "No"; +VAL_ 868 BattRgenLo_B_Falt 1 "Yes" 0 "No"; +VAL_ 867 BattRgenLoBalnc_B_Rq 1 "Yes" 0 "No"; +VAL_ 867 BattRgenLo_Te_Actl 255 "Fault"; +VAL_ 865 BattRgenLo_U_Actl 2047 "Faulty"; +VAL_ 865 BattRgenLo_I_Actl 65535 "Faulty"; +VAL_ 1144 WakeAlarm0_B_Typ 1 "CanAndEcuDriveCircuit" 0 "CanOnly"; +VAL_ 1144 PreCondBatt_B_Actl 1 "On" 0 "Off"; +VAL_ 1144 HtrnDcdcDis_B_Rq 1 "Yes" 0 "No"; +VAL_ 1144 ChrgNowEvnt_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1144 CabinDrvSustn_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 1144 BattChrgTrgtSoC_D_Rq 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 1144 CabnEvapSovFront_B_Rq 1 "On" 0 "Off"; +VAL_ 1144 HeatCoreSovRear_B_Rq 1 "On" 0 "Off"; +VAL_ 1144 BattChlrSov_B_Rq 1 "On" 0 "Off"; +VAL_ 1144 CabnEvapSovRear_B_Rq 1 "On" 0 "Off"; +VAL_ 1144 BrkAppl_D_RqPt 3 "BrakesSlowRelease" 2 "BrakesFastRelease" 1 "BrakesEngage" 0 "NotActive"; +VAL_ 1144 HtrnCnnctPwr_B_Stat 1 "Asserted" 0 "NotAsserted"; +VAL_ 1144 PtcHtr_D_Stat 3 "Faulty" 2 "NotUsed" 1 "On" 0 "Off"; +VAL_ 1144 HtrnClntFlw_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 1144 BattTracDrvSustn_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 1144 BattTracClntVlv_B_Rq 1 "On" 0 "Off"; +VAL_ 1141 OfbChrgSetSync_D_Stat 3 "Fail" 2 "Success" 1 "InProgress" 0 "NoSyncInProgress"; +VAL_ 1141 PtRmtRprt_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "PlugInToMaintain12vBattery" 11 "SettingUpdated" 10 "FastChargeComplete" 9 "ChargeNotOccurring" 8 "OneTimeSocReached" 7 "BatteryTemperatureReminder" 6 "ReducedPerformance" 5 "LimitedPerformance" 4 "ChargeFault" 3 "ChargeComplete" 2 "VehiclePreconditioned" 1 "TripDistanceAchieved" 0 "NoReportRequest"; +VAL_ 1141 NtfctnConflict1_D_Rq 7 "NotUsed5" 6 "NotUsed4" 5 "NotUsed3" 4 "NotUsed2" 3 "NotUsed1" 2 "Clonflict_Exists" 1 "No_Conflict" 0 "Invalid"; +VAL_ 1140 RgenEvntLvl_Pc_Dsply 1023 "Fault" 1022 "NoDataExists"; +VAL_ 1140 BrkEvntComplt_B_Dsply 1 "On" 0 "Off"; +VAL_ 1140 PreCondStat_D_Dsply 7 "Reserved3" 6 "Reserved2" 5 "Reserved1" 4 "Faulted" 3 "Complete" 2 "In_Progress" 1 "Scheduled" 0 "Not_Scheduled"; +VAL_ 1139 BattChrgTrgtLMax_T_Est 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 1139 ActChrgStrtYr_No_Actl 31 "Invalid"; +VAL_ 1139 ActChrgStrtMin_No_Actl 63 "Invalid" 62 "Unknown"; +VAL_ 1139 ActChrgStrtHr_No_Actl 31 "Invalid" 30 "Unknown"; +VAL_ 1139 ActChrgStrtDay_No_Actl 31 "Invalid"; +VAL_ 1139 ActChrgStrMnth_No_Actl 15 "Invalid"; +VAL_ 1138 BattChrgTrgtLMin_T_Est 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 1138 ActChrgEndYr_No_Actl 31 "Invalid"; +VAL_ 1138 ActChrgEndMnth_No_Actl 15 "Invalid"; +VAL_ 1138 ActChrgEndMin_No_Actl 63 "Invalid" 62 "Unknown"; +VAL_ 1138 ActChrgEndHr_No_Actl 31 "Invalid" 30 "Unknown"; +VAL_ 1138 ActChrgEndDay_No_Actl 31 "Invalid"; +VAL_ 1089 Mtr2Aout_W_ActlMntr 1023 "Faulty"; +VAL_ 1089 Inv1_Te_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 1089 MtrTrac2Coil_Te_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 1089 MtrTrac2Falt_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1089 MtrTrac2TeAlrm_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1089 Mtr2CntlTeAlrm_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1089 MtrTrac2Inv_Te_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 1089 MtrTrac2_I_Actl 65535 "Faulty"; +VAL_ 1088 ChrgTMatch_B_Stat 1 "True" 0 "False"; +VAL_ 1088 ChrgStat_D2_Dsply 15 "NotUsed_2" 14 "NotUsed_1" 13 "ChargeTargetReached" 12 "DriveConditioning" 11 "CabinPreconditioning" 10 "ChargingSystemMaintain" 9 "ChargingInductive" 8 "ChargingDCFastChange" 7 "ChargingAC" 6 "ChargeScheduled" 5 "EvsePaused" 4 "EvseNotDetected" 3 "EvseNotCompatible" 2 "FaultOutsideCar" 1 "FaultInsideCar" 0 "NotReady"; +VAL_ 1088 HvacPrecondRecirc_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "Recirc" 0 "Outside"; +VAL_ 1088 HvacPrecondMode2_D_Rq 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "Last_User_Settings" 10 "Auto" 9 "Max_Defrost" 8 "Windshield_Panel_Floor" 7 "Windshield_Panel" 6 "Windshield" 5 "Windshield_Floor" 4 "Floor" 3 "Panel_Floor" 2 "Panel" 1 "MAX_AC" 0 "Off"; +VAL_ 1088 HvacPrecondBlwr2_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Last_User_Setting" 8 "Auto" 7 "Speed7" 6 "Speed6" 5 "Speed5" 4 "Speed4" 3 "Speed3" 2 "Speed2" 1 "Speed1" 0 "Off"; +VAL_ 1088 HvacPrecondAC_D_Rq 3 "Last_User_Setting" 2 "Auto" 1 "On" 0 "Off"; +VAL_ 1088 BattChrgInhbt_D_Rq 3 "MaintainTargetSoc" 2 "NotUsed" 1 "InhibitChargingThermal" 0 "Enable_Charging"; +VAL_ 1040 ElCmprEnbl_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 1016 ChrgGoTElement_B_Dsply 1 "Yes" 0 "No"; +VAL_ 1016 ChrgGoTTouchEnbl_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 1016 ChrgGoTTouch_B_Stat 1 "On" 0 "Off"; +VAL_ 1016 ChrgGoTPrcond_D_Stat 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 1016 ChrgGoTMnte_D_Stat 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; +VAL_ 1016 ChrgGoTHr_T_Stat 31 "Faulty" 30 "NoDataExists"; +VAL_ 1016 ChrgGoTExtHtrEnbl_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 1016 ChrgGoTExtHtr_B_Stat 1 "On" 0 "Off"; +VAL_ 1016 ChrgGoTAllOn_B_Stat 1 "On" 0 "Off"; +VAL_ 1013 ChrgToPcWkndSav_D_Stat 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 1013 ChrgToPcWkdySav_D_Stat 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 1013 ChrgNowEnbl_B_Saved 1 "On" 0 "Off"; +VAL_ 1013 ChrgLocIdUnsAck_B_Stat 1 "Yes" 0 "No"; +VAL_ 1012 ChrgNowCurnt_B_Dsply 1 "On" 0 "Off"; +VAL_ 1012 ChrgLocSaved_B_Dsply 1 "Yes" 0 "No"; +VAL_ 1012 ChrgLocLongPostv_B_Sav 1 "Yes" 0 "No"; +VAL_ 1012 ChrgLocLattPostv_B_Sav 1 "Yes" 0 "No"; +VAL_ 1011 ChrgLocLongPostv_B_Uns 1 "Yes" 0 "No"; +VAL_ 1011 ChrgLocLattPostv_B_Uns 1 "Yes" 0 "No"; +VAL_ 871 BattElecPerf_D_Actl 7 "NotUsed" 6 "Hot_Batt_Severe_Lim_Perf" 5 "Hot_Batt_Reduced_Perf" 4 "Hot_Batt_Close_to_lim_Per" 3 "Cold_Batt_Severe_Lim_Perf" 2 "Cold_Batt_Reduced_Perf" 1 "Cold_Batt_Close_to_lim_Pe" 0 "Ok_no_message_displayed"; +VAL_ 871 BattChrgTrgtLPt_T_Est 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 871 BattChrgTrgSocPt_T_Est 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 871 BattChrgCmpltPt_T_Est 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 786 RgenTrip_L_Dsply 65535 "Fault" 65534 "NoDataExists"; +VAL_ 786 ChrgStat_D_Dsply 7 "NotUsed" 6 "Complete" 5 "Scheduled" 4 "In_Progress" 3 "Fault_Outside_Car" 2 "Fault_Inside_Car" 1 "Fault_Unknown_Location" 0 "Not_Ready"; +VAL_ 72 immoTarget2Status 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "DISABLED_RESET " 2 "ENABLED_NONMOTIVE_START" 1 "ENABLED_MOTIVE_START" 0 "DISABLED"; +VAL_ 72 immoTarget2Cmd 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "TARGET1_IDBLOCK2" 2 "TARGET1_IDBLOCK1" 1 "CHALLENGE" 0 "IDLE"; +VAL_ 912 CabnEvapSovFront_D_Stat 7 "NotUsed_1" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; +VAL_ 912 BattChlrSov_D_Stat 7 "NotUsed_1" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; +VAL_ 912 BattTracClntVlv_D_Stat 7 "NotUsed" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; +VAL_ 874 AirCondCluOpen_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 AirCondCluLife_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 AirCondCluGnd_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 AirCondClu_D_Stat 7 "NotUsed" 6 "FetLifeLimitReached" 5 "FetOpenCircuit" 4 "FetOutputShortToPower" 3 "FetOutputShortToGround" 2 "FetNotControlled" 1 "OnPowerToLoad" 0 "OffNoPowerToLoad"; +VAL_ 874 AirCondCluBatt_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattTracShrtGrnd_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattTracShrtBatt_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattTracOpnCirct_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattTracLifeLim_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattChlrShrtGrnd_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattChlrShrtBatt_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattChlrOpnCirct_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattChlrLifeLim_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 874 BattTracLow_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 651 TelematicsSrvc_D_St 7 "NotUsed" 6 "NotifyNotActivatedYet" 5 "NotActivatedYet" 4 "NotifyExpired" 3 "Expired" 2 "ExpiringSoon" 1 "Active" 0 "Null"; +VAL_ 651 EmgcyCallMute_D_Stat 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "ManualEmergencyCallMute" 2 "AutomaticEmergencyCallMute" 1 "EmergencyCallUnmute" 0 "Null"; +VAL_ 651 OfbChrgSetSync_D_Rq 3 "Fail" 2 "Success" 1 "InProgress" 0 "NoSyncInProgress"; +VAL_ 529 OnbChrgToPcWknd_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 529 OnbChrgToPcWkdy_D_Actl 7 "Percent_50" 6 "Percent_60" 5 "Percent_70" 4 "Percent_80" 3 "Percent_85" 2 "Percent_90" 1 "Percent_95" 0 "Percent_100"; +VAL_ 529 OnbChrgSetNow_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 529 OnbChrgSetDelete_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 529 OnbChrgPrflUpdate_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 529 OnbChrgLocIdUns_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 66 immoControlCmd_T2 0 "IDLE" 1 "MOTIVE_START_RQST" 2 "NONMOTIVE_START_RQST" 3 "RQST_TARGET2_IDBLOCK1" 4 "RQST_TARGET2_IDBLOCK2" 5 "Unused" 6 "ECHO_TARGET2_IDBLOCK2" 7 "SHUTDOWN"; +VAL_ 1124 GPS_Vdop 31 "Invalid" 30 "Unknown"; +VAL_ 1124 GPS_Speed 255 "Invalid" 254 "Unknown"; +VAL_ 1124 GPS_Sat_num_in_view 31 "Invalid" 30 "Unknown"; +VAL_ 1124 GPS_MSL_altitude 4095 "Fault" 4094 "Unknown"; +VAL_ 1124 GPS_Heading 65535 "Fault" 65534 "Unknown"; +VAL_ 1124 GPS_Hdop 31 "Invalid" 30 "Unknown"; +VAL_ 1124 GPS_dimension 2 "_3D" 1 "_2D" 0 "No_Fix"; +VAL_ 1119 CoolFanDcdc_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 1119 DcdcClntFlw_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 1123 GpsUtcYr_No_Actl 31 "Fault"; +VAL_ 1123 GpsUtcMnth_No_Actl 15 "Fault"; +VAL_ 1123 GPS_UTC_seconds 63 "Fault" 62 "Unknown"; +VAL_ 1123 GPS_UTC_minutes 63 "Fault" 62 "Unknown"; +VAL_ 1123 GPS_UTC_hours 31 "Invalid" 30 "Unknown"; +VAL_ 1123 GPS_Pdop 31 "Invalid" 30 "Unknown"; +VAL_ 1123 GPS_Compass_direction 7 "NorthWest" 6 "West" 5 "SouthWest" 4 "South" 3 "SouthEast" 2 "East" 1 "NorthEast" 0 "North"; +VAL_ 1123 GPS_Actual_vs_Infer_pos 1 "Inferred_Position" 0 "Actual_Postition"; +VAL_ 1123 Gps_B_Falt 1 "Yes" 0 "No"; +VAL_ 1122 GpsHsphLongEast_D_Actl 0 "Invalid" 1 "Eastern" 2 "Western" 3 "Fault"; +VAL_ 1122 GpsHsphLattSth_D_Actl 3 "Fault" 2 "Northern" 1 "Southern" 0 "Invalid"; +VAL_ 1122 GPS_Longitude_Minutes 63 "Fault" 62 "Unknown"; +VAL_ 1122 GPS_Longitude_Min_dec 16383 "Invalid" 16382 "Unknown"; +VAL_ 1122 GPS_Longitude_Degrees 511 "Fault" 510 "Unknown"; +VAL_ 1122 GPS_Latitude_Minutes 63 "Fault" 62 "Unknown"; +VAL_ 1122 GPS_Latitude_Min_dec 16383 "Invalid" 16382 "Unknown"; +VAL_ 1122 GPS_Latitude_Degrees 255 "Invalid" 254 "Unknown"; +VAL_ 1003 PersRecallSrc_D_Actl 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "MemorySwitch" 3 "RemoteStart" 2 "KeyFob" 1 "CenterStack" 0 "Null"; +VAL_ 1003 Pers4Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; +VAL_ 1003 Pers3Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; +VAL_ 1003 Pers2Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; +VAL_ 1003 Pers1Key_D_Stat 3 "NotUsed_1" 2 "KeyUnAssociated" 1 "KeyAssociated" 0 "Null"; +VAL_ 1003 EmPrflNo_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; +VAL_ 1003 EmPrflKeyAssoc_D_Stat 7 "WrongDevice" 6 "KeyAssociateFailed" 5 "KeyAssociateSuccess" 4 "KeyAlreadyInUse" 3 "KeyDisassociated" 2 "KeyAssociationExited" 1 "KeyAssociationEntered" 0 "Null"; +VAL_ 1003 VehKeyActv_D_Stat 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "Key8Active" 7 "Key7Active" 6 "Key6Active" 5 "Key5Active" 4 "Key4Active" 3 "Key3Active" 2 "Key2Active" 1 "Key1Active" 0 "NoKeyActive"; +VAL_ 1003 PersNoPos_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 1003 PersSetupRestr_D_Actl 3 "Non_Moveable_Person" 2 "Moveable_Person" 1 "Vehicle" 0 "Factory"; +VAL_ 1003 PersSetupAccessCtrl 1 "Limited" 0 "Full"; +VAL_ 1003 PersConflict_D_Actl 1 "Conflict" 0 "No_Conflict"; +VAL_ 1003 AssocConfirm_D_Actl 0 "None" 7 "Associate" 6 "Keycode_Rejected" 5 "Keycode_Accepted" 4 "In_Progress" 3 "Erase" 2 "Duplicate" 1 "Disassociate"; +VAL_ 1003 PersNo_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "NotDetermined" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 994 PersStore_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Vehicle" 4 "PERS_4" 3 "PERS_3" 2 "PERS_2" 1 "PERS_1" 0 "Null"; +VAL_ 994 Pers4OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; +VAL_ 994 Pers3OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; +VAL_ 994 Pers2OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; +VAL_ 994 Pers1OptIn_B_Stats 1 "OPTED_IN" 0 "NOT_OPTED_IN"; +VAL_ 994 CtrStkPersIndex_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 994 CtrStkDsplyOp_D_Rq 7 "Unused_2" 6 "Unused_1" 5 "Copy" 4 "Restore" 3 "Upload" 2 "Set" 1 "Query" 0 "Null"; +VAL_ 778 PrkAidFront_D_RqDrv 2 "Status" 3 "NotUsed" 1 "Enabled" 0 "Disabled"; +VAL_ 778 PrkAidAcsyRear_D_RqDrv 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 778 PrkAidAcsyFront_D_RqDrv 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 778 Cta_D_Rq 3 "Unused" 2 "NoDataExists" 1 "On" 0 "Off"; +VAL_ 778 PrkAidRear_D_RqDrv 2 "Status" 3 "NotUsed" 1 "Enabled" 0 "Disabled"; +VAL_ 778 SteEffort_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "SpecialMode_2" 3 "SpecialMode_1" 2 "Comfort" 1 "Sport" 0 "Normal"; +VAL_ 778 Sod_D_Rq 2 "BLIS_On_Second_Warning_ON" 1 "BLIS_On_Second_Warning_OFF" 0 "Off"; +VAL_ 549 IPC_MyKeyVolLimit_St 0 "Invalid" 1 "Off" 2 "On"; +VAL_ 549 HdcOn_B_Rq 1 "On" 0 "Off"; +VAL_ 549 IPC_Attn_Info_Audio 7 "Unknown" 6 "Attenuation_6" 5 "Attenuation_5" 4 "Attenuation_4" 3 "Attenuation_3" 2 "Attenuation_2" 1 "Attenuation_1" 0 "No_Attenuation_of_Audio"; +VAL_ 549 BeltminderAudioMute 2 "On" 1 "Off" 0 "Invalid"; +VAL_ 549 Power_Up_Chime_Modules 1 "Active" 0 "Inactive"; +VAL_ 549 Chime_Source 2 "Cluster" 1 "Infotainment_Sys" 0 "Invalid"; +VAL_ 549 IPC_New_Attn_Event 1 "Active" 0 "Inactive"; +VAL_ 551 PmCabnLvl_D_Stat 7 "NotUsed_1" 6 "Level_6_Worst" 5 "Level_5" 4 "Level_4" 3 "Level_3" 2 "Level_2" 1 "Level_1_Best" 0 "NotKnown"; +VAL_ 551 PmCabn_D_Stat 3 "FilteringComplete" 2 "FilteringOn" 1 "FilteringOff" 0 "NotKnown"; +VAL_ 551 Cntr_Plg_Mode_Cmd 1 "Enable" 0 "Disable"; +VAL_ 551 ChrgCrdLckEnbl_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 551 PwRnngBoardT_D_Rq 3 "NotUsed" 2 "Timer2" 1 "Timer1" 0 "Inactive"; +VAL_ 551 PwRnngBoardSwtch_D_Rq 3 "NotUsed" 2 "DeployUnlocked" 1 "AlwaysActive" 0 "Inactive"; +VAL_ 551 PwRnngBoardMde_D_Rq 0 "Inactive" 1 "Off" 2 "Out" 3 "Auto"; +VAL_ 551 Btt_L_Actl2 127 "Faulty" 126 "NoDataExists"; +VAL_ 551 Rba_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 551 EmPrflNo_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Pers4" 3 "Pers3" 2 "Pers2" 1 "Pers1" 0 "Null"; +VAL_ 551 EmPrflButtnAssoc_D_Rq 3 "NotUsed" 2 "ExitButtonAssociation" 1 "EnterButtonAssociation" 0 "Null"; +VAL_ 551 EmPrflKeyAssoc_D_Rq 7 "NotUsed_3" 6 "DisassociatePhone" 5 "EnterPhoneAssociation" 4 "OverwriteKey" 3 "DisassociateKey" 2 "ExitKeyAssociation" 1 "EnterKeyAssociation" 0 "Null"; +VAL_ 551 Em_D_Stat 3 "NotSupported" 2 "ProfilesOff" 1 "ProfilesOn" 0 "Null"; +VAL_ 551 ChrgOvrdExitScrn_D_Rq 3 "NotUsed_1" 2 "Request_override" 1 "Do_not_request_override" 0 "Inactive"; +VAL_ 1010 MbdblActv_B_RqAdas 1 "Yes" 0 "No"; +VAL_ 1010 CbdblActv_B_RqAdas 1 "Yes" 0 "No"; +VAL_ 1010 AdbUrbanArea_B_Stat 1 "Yes" 0 "No"; +VAL_ 1070 BattULo24_D_Falt 3 "NotUsed" 2 "TemporaryFault" 1 "Fault" 0 "NoFault"; +VAL_ 1070 BattULo24_Te_Actl 127 "Fault"; +VAL_ 1070 BattULo24State_D_Qlty 3 "OK" 2 "Not_Within_Spec" 1 "Eval_In_Progress" 0 "Faulty"; +VAL_ 1070 BattULo24_I_Actl 16383 "Faulty"; +VAL_ 1070 BattULo24_B_Falt 1 "Yes" 0 "No"; +VAL_ 1186 SelDrvMdeAwd2_D_Stat 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; +VAL_ 1186 RearDiffLckMsg_D_Rq 7 "Locker_Disabled" 6 "Locker_Enabled" 5 "Locker_Accel_Pedal" 4 "Speed4" 3 "Speed3" 2 "Spee2" 1 "Speed1" 0 "Normal__No_Message "; +VAL_ 1186 RearDiffLckLamp_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 1186 RearDiffLck_Tq_Actl 4095 "Fault" 4094 "Unknown"; +VAL_ 1186 RearDiffFalt_D_Stat 3 "Diff_Failed_Closed" 2 "Diff_Failed_Open" 1 "Fault_Non_Specific" 0 "No_Fault"; +VAL_ 1186 LsdSrvcRqd_B_Rq 1 "On" 0 "Off"; +VAL_ 611 AwdSys_D_Stat 3 "Faulty" 2 "NotUsed" 1 "_4x4_L_H_Active" 0 "_4x4_L_H_Inactive"; +VAL_ 611 AwdStat_D_RqDsply 31 "NotUsed9" 30 "NotUsed8" 29 "NotUsed7" 28 "To_Engage_4x4_Release_Aped" 27 "To_Engage_4x4_Slow_To_3MPH" 26 "Shift_To_Neutral" 25 "Lkr_Mode_Unavail_TMS" 24 " _4x4_Mode_Unavail_TMS" 23 "Out_of_4Low_Crawl" 22 "AWD_PTU_Oil_Changed" 21 "Change_AWD_PTU_Oil" 20 "Neutral_Tow_Disabled" 19 "Neutral_Tow_Enabled" 18 "AWD_OFF" 17 "_4x4_Off_Road_Speed" 16 "_4x4_Extreme_Off_Road_Mode" 15 "_4x4_Exiting_Off_Road" 14 "_4x4_Off_Road_Mode" 10 "_4x4_Locked_Temporarily" 9 "Shift_In_Progress" 13 "Blocked_Shift_Assist" 12 "_4x4_Auto_Restored" 11 "_4x4_Disabled_Temporarily" 7 "Out_of_4Low__Neutral" 6 "Out_of_4Low__Brake" 5 "Out_of_4Low__Speed" 4 "Into_4Low__Clutch" 3 "Into_4Low__Neutral" 2 "Into_4Low__Brake" 1 "Into_4Low__Speed" 0 "Normal__No_Message" 8 "Out_of_4Low__Clutch"; +VAL_ 611 AwdLck_D_Stat 9 "Undefined" 8 "Under_External_Torque_Ctrl" 7 "Torque_Limited_by_Cmd" 6 "Fully_Locked_by_Cmd" 5 "Disabled" 4 "Warning" 3 "Fault" 2 "Inactive" 1 "Completely_Opened_by_Cmd" 0 "OK"; +VAL_ 611 AwdSrvcRqd_B_Rq 1 "On" 0 "Off"; +VAL_ 611 NtrlTowAvail_B_Stat 1 "Available" 0 "NotAvailable"; +VAL_ 611 AwdLck_Tq_Rq 4095 "Fault" 4094 "Unknown"; +VAL_ 611 AwdOffRoadMode_D_Stats 3 "Invalid" 2 "Extreme_Off_Road" 1 "Off_Road" 0 "Normal_Mode"; +VAL_ 611 AwdLoLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 611 AwdHiLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 611 AwdAutoLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 611 Awd2wdLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 611 AwdRnge_D_Actl 7 "Unknown" 6 "High_Range_2wd" 5 "High_Range_Auto" 4 "High_Range_Locked" 3 "Neutral" 2 "Low_Range_2wd" 1 "Low_Range_Auto" 0 "Low_Range_Locked"; +VAL_ 1047 TrlrAidSetup_D2_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "SetupAcquisitionSuccess" 4 "TbaTadMonitor" 3 "SetupStartAcquisition" 2 "SetupPrepForAcquisition" 1 "TbaActive" 0 "Null"; +VAL_ 1047 TrlrAidEnbl_D2_Stat 7 "NotUsed_1" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; +VAL_ 1047 TrlrAidMsgTxt_D2_Rq 63 "Message63" 62 "Message62" 61 "Message61" 60 "Message60" 55 "Message55" 50 "Message50" 45 "Message45" 40 "Message40" 35 "Message35" 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1047 EsaOn_B_Stat 1 "On" 0 "Off"; +VAL_ 1047 SelDrvMdeSte_D_Stat 0 "NotAvailable" 1 "Available" 2 "TemporarilyNotAvailable" 3 "Faulty"; +VAL_ 972 LatCtlSte_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Denied" 3 "RampOut" 2 "ContLatControlInProgress" 1 "Available" 0 "Unavailable"; +VAL_ 972 LatCtlLim_D_Stat 3 "LimitWithDriverActive" 2 "LimitReached" 1 "LimitClose" 0 "LimitNotReached"; +VAL_ 972 LatCtlCpblty_D_Stat 3 "Faulty" 2 "ExtendedModeAvailable" 1 "LimitedModeAvailable" 0 "NoModeAvailable"; +VAL_ 972 LsmcBrkDecelEnbl_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "On" 0 "Off"; +VAL_ 972 TjaHandsOnCnfdnc_B_Est 1 "High_Confidence" 0 "Low_Confidence"; +VAL_ 972 LaHandsOff_B_Actl 1 "Hands_Off" 0 "Hands_On"; +VAL_ 972 LaActDeny_B_Actl 1 "LA_Denied" 0 "LA_Not_Denied"; +VAL_ 972 LaActAvail_D_Actl 3 "LKA_LCA_LDW_Avail" 2 "LCA_LKA_Avail_LDW_Suppress" 1 "LCA_LKA_Suppress_LDW_Avail" 0 "LCA_LKA_LDW_Suppress"; +VAL_ 130 TrlrHitchLamp_D_Rqst 1 "On" 0 "Off"; +VAL_ 130 VehVTrlrAid_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 130 DrvSteActv_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 130 DrvSte_Tq_Actl 255 "Invalid" 254 "Unknown"; +VAL_ 130 SteMdule_D_Stat 7 "NotUsed" 6 "EPAS_Failure3" 5 "EPAS_Failure2" 4 "System_Failure" 3 "EPAS_Shutdown" 2 "Normal_Op_Full_Assist" 1 "Normal_Op_Limited_Assist" 0 "EPAS_Initialization"; +VAL_ 130 SteMdule_U_Meas 255 "Invalid"; +VAL_ 130 SteMdule_I_Est 4095 "Invalid"; +VAL_ 130 EPAS_Failure 3 "SERVICE_POWER_STEERING_NOW" 2 "SERVICE_POWER_STEERING" 1 "POWER_STRG_ASSIST_FAULT" 0 "EPAS_OK_NO_MESSAGE"; +VAL_ 130 SteeringColumnTorque 255 "Invalid" 254 "Unknown"; +VAL_ 130 SAPPAngleControlStat6 1 "RequestedAngleNotReached" 0 "RequestedAngleCanBeReached"; +VAL_ 130 SAPPAngleControlStat5 1 "StrgColTorqueExceed_EAROn" 0 "ExternalSigContentOKforEAC"; +VAL_ 130 SAPPAngleControlStat4 1 "SpeedLimitExceededEAROn" 0 "ExternalSigContentOKforEAC"; +VAL_ 130 SAPPAngleControlStat3 1 "EARactiveNoReverseEngage" 0 "ExternalSigContentOKforEAC"; +VAL_ 130 SAPPAngleControlStat2 1 "Rel_ExtSteeringAngleReqx" 0 "NoRel_ExtSteeringAngleReqx"; +VAL_ 130 SAPPAngleControlStat1 3 "Fault" 2 "Active" 1 "Open" 0 "Closed"; +VAL_ 126 StePw_B_Rq 1 "Yes" 0 "No"; +VAL_ 126 StePinRelInit_An_Sns 65535 "Faulty" 65534 "NoDataExists"; +VAL_ 126 StePinCompAnEst_D_Qf 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 133 StePw_B_Rq 1 "Yes" 0 "No"; +VAL_ 133 StePinRelInit_An_Sns 65535 "Faulty" 65534 "NoDataExists"; +VAL_ 133 StePinCompAnEst_D_Qf 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 1200 BrkHold_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "HeldSecondary" 3 "HeldSecure" 2 "Held" 1 "Inactive" 0 "Off"; +VAL_ 1200 HsaTrnAout_Tq_Rq 65535 "Fault" 65534 "Unknown"; +VAL_ 1200 BrkBstrVac_P_Actl 127 "Invalid"; +VAL_ 1200 YawStabilityIndex 511 "Fault" 510 "NoDataExists"; +VAL_ 1200 BrkTot_Tq_RqDrv 8191 "Fault"; +VAL_ 1200 HsaStat_D_Dsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "NotAvailable" 3 "SlowReleaseWithChime" 2 "SlowReleaseWithoutChime" 1 "Active" 0 "Inactive"; +VAL_ 1102 SelDrvMdePos12_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos11_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos10_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos09_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos08_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos07_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos06_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos05_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos04_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos03_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos02_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1102 SelDrvMdePos01_D_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1056 AutoEpbMsgTxt_D_Rq 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1056 AutoEpbDsply_D_Stat 1 "Available" 0 "NotAvailable"; +VAL_ 1056 AutoEpbButtnOn_B_Stat 1 "On" 0 "Off"; +VAL_ 1056 SelDrvMdePos12_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos11_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos10_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos09_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos08_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos07_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos06_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos05_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos04_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos03_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos02_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 SelDrvMdePos01_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 1056 ActvDrvMde_D2_Stat 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1056 SelDrvMde_D2_Rq 31 "Faulty" 30 "SelDrvMde31" 29 "SelDrvMde30" 28 "SelDrvMde29" 27 "SelDrvMde28" 26 "SelDrvMde27" 25 "SelDrvMde26" 24 "SelDrvMde25" 23 "SelDrvMde24" 22 "SelDrvMde23" 21 "SelDrvMde22" 20 "SelDrvMde21" 19 "SelDrvMde20" 18 "SelDrvMde19" 17 "SelDrvMde18" 16 "SelDrvMde17" 15 "SelDrvMde16" 14 "SelDrvMde15" 13 "SelDrvMde14" 12 "SelDrvMde13" 11 "SelDrvMde12" 10 "SelDrvMde11" 9 "SelDrvMde10" 8 "SelDrvMde09" 7 "SelDrvMde08" 6 "SelDrvMde07" 5 "SelDrvMde06" 4 "SelDrvMde05" 3 "SelDrvMde04" 2 "SelDrvMde03" 1 "SelDrvMde02" 0 "SelDrvMde01"; +VAL_ 1056 SelDrvMdePt_D_Rq 31 "Faulty" 30 "NotUsed15" 29 "NotUsed14" 28 "NotUsed13" 27 "NotUsed12" 26 "NotUsed11" 25 "NotUsed10" 24 "NotUsed9" 23 "NotUsed8" 22 "NotUsed7" 21 "NotUsed6" 20 "NotUsed5" 19 "NotUsed4" 18 "EvLaterChargerMode" 17 "EvNowMode" 16 "DragMode" 15 "HighSpeedDesertMode_Baja" 14 "SportAdaptiveMode" 13 "NotAvailable_13" 12 "NotAvailable_12" 11 "NotAvailable_11" 10 "NotAvailable_10" 9 "RockCrawlMode" 8 "MudRutsMode" 7 "SandMode" 6 "EconomyMode" 5 "GrassGravelSnow" 4 "NotAvailable_04" 3 "TowHaulMode" 2 "NotAvailable_02" 1 "SportMode" 0 "NormalMode"; +VAL_ 1056 SelDrvMdeMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1056 SelDrvMde_D_Stat 3 "NotUsed" 2 "DriveModeChangeRequest" 1 "DriveModeChangeSelection" 0 "NoDriveModeChangeRequest"; +VAL_ 1056 AwdMde_D_RqBrk 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; +VAL_ 1054 AirDamUp_B_RqBrk 1 "Up" 0 "NoRequest"; +VAL_ 1054 RbaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; +VAL_ 1054 SelDrvMdeChassis2_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "RoughRoadMode" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; +VAL_ 1054 TrailCtl_D_Stat 7 "Faulty" 6 "DescentOnly" 5 "EnabledDeny" 4 "StandbyOverThreshold" 3 "StandbyOverride" 2 "Active" 1 "EnabledDescent" 0 "Off"; +VAL_ 1054 TrailCtlMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1054 BrkBstrVac_D_Stat 3 "NotUsed" 2 "BoosterVacEstimator" 1 "BoosterVacSensor" 0 "NoBoosterVacuumMonitor"; +VAL_ 1054 DrvSlipCtlOffLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 1054 DrvSlipCtlMdeMsg_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1054 AutoHoldMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1054 CtaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; +VAL_ 1054 SelDrvMdeAwd_D_Rq 31 "Faulty" 30 "NotUsed_17" 29 "NotUsed_16" 28 "NotUsed_15" 27 "NotUsed_14" 26 "NotUsed_13" 25 "NotUsed_12" 24 "NotUsed_11" 23 "NotUsed_10" 22 "NotUsed_9" 21 "NotUsed_8" 20 "NotUsed_7" 19 "NotUsed_6" 18 "NotUsed_5" 17 "EvLaterChargeMode" 16 "EvNowMode" 15 "TrackMode" 14 "RoughRoadMode" 13 "NotAvailable" 12 "HighSpeedDesertMode_Baja" 11 "SportAdaptiveMode" 10 "RockCrawlMode" 9 "MudRutsMode" 8 "SandMode" 7 "EconomyMode" 6 "GrassGravelSnow" 5 "TowHaulMode" 4 "SportMode" 3 "Normal_4L" 2 "Normal_4A" 1 "Normal_2H" 0 "NormalMode"; +VAL_ 1054 AutoHoldSwMde_B_Ind 1 "On" 0 "Off"; +VAL_ 1054 AutoHoldMde_D_Ind 3 "Indication_3" 2 "Indication_2" 1 "Indication_1" 0 "Off"; +VAL_ 1054 SelDrvMdeChassis_D_Rq 31 "Faulty" 30 "NotUsed17" 29 "NotUsed16" 28 "NotUsed15" 27 "NotUsed14" 26 "NotUsed13" 25 "NotUsed12" 24 "NotUsed11" 23 "NotUsed10" 22 "NotUsed9" 21 "NotUsed8" 20 "NotUsed7" 19 "NotUsed6" 18 "NotUsed5" 17 "NotUsed4" 16 "NotUsed3" 15 "NotUsed2" 14 "NotUsed1" 13 "TrackMode" 12 "HighSpeedDesertMode" 11 "TowHaulMode" 10 "RockCrawlMode" 9 "SandMode" 8 "MudAndRutsMode" 7 "LowMuMode" 6 "ComfortAdaptiveMode" 5 "ComfortMode" 4 "SportAdaptiveMode" 3 "SportMode" 2 "EconomyMode" 1 "NormalAdaptiveMode" 0 "NormalMode"; +VAL_ 1054 ApaBrk_D_Stat 3 "Denied" 2 "Active" 1 "Open" 0 "Closed"; +VAL_ 1046 HsaMde_D_Mem 3 "Undefined" 2 "Manual" 1 "Automatic" 0 "Off"; +VAL_ 1046 BrkBstrVac_B_Rq 1 "Yes" 0 "No"; +VAL_ 1046 HdcMde_D_Actl 7 "Fault" 6 "Temporarily_Unavailable" 5 "NotEnabled_WrongGearSel" 4 "NotEnabled_SpdLimitExceed" 3 "Active_Braking" 2 "Not_Active_Braking" 1 "Off" 0 "Undefined"; +VAL_ 1046 RearDiffLck_Tq2_RqMx 4095 "Faulty"; +VAL_ 1046 TRLR_SWAY_EVNT_IN_PROG 1 "Yes" 0 "No"; +VAL_ 1046 TRLR_SWAY_CONFIG_STAT 1 "On" 0 "Off"; +VAL_ 1046 TCMode 1 "Active" 0 "Inactive"; +VAL_ 1046 DrvSlipCtlLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 1046 Abs_B_Falt 1 "Yes" 0 "No"; +VAL_ 1046 DrvSlipCtlMde_D_Ind 3 "App_Specific_Off_Mode_3" 2 "App_Specific_Off_Mode_2" 1 "App_Specific_Off_Mode_1" 0 "Default_Mode"; +VAL_ 1046 DrvAntiLckLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 1046 StabCtlBrk_B_Avail 1 "Yes" 0 "No"; +VAL_ 1046 DrvHdcWarnInfo_D_Rq 3 "Undefined" 2 "Lamp_On_Continuously" 1 "Lamp_Flashing" 0 "Lamp_Off_Continuously"; +VAL_ 1046 DrvHdcMsg_D_Rq 7 "Undefined" 6 "Speed_too_High" 5 "Temporarily_Unavailable" 4 "System_Fault" 3 "Select_Gear" 2 "Off" 1 "On" 0 "No_Message"; +VAL_ 1046 DrvHdcLampInfo_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 1046 BpedMove_D_Actl 3 "Unknown" 2 "DriverApplyingBrakePedal" 1 "NoAutonomousBrkPdlMovement" 0 "AutonomousBrkPedalMove"; +VAL_ 1046 ChimeBrk_B_Rq 1 "Yes" 0 "No"; +VAL_ 1046 BrkLamp_B_Rq 1 "Yes" 0 "No"; +VAL_ 1046 HILL_DESC_MC 7 "Fault_Detected" 6 "Cooling_Down" 5 "Abort_Apply_Brakes" 4 "Active" 3 "Disabled" 2 "Enabled" 1 "Off_Road" 0 "Normal"; +VAL_ 1046 RearDiffElckrOpen_B_Rq 1 "Yes" 0 "No"; +VAL_ 1045 VehStab_D_Stat 15 "Faulty" 14 "No_Data_Exists" 13 "NotUsed6" 12 "NotUsed5" 11 "NotUsed4" 10 "NotUsed3" 9 "NotUsed2" 8 "NotUsed1" 7 "High_SSRA_no_OS" 6 "Straight" 5 "Post_Oversteer" 4 "Post_Transition" 3 "Countersteer" 2 "Understeer" 1 "Oversteer" 0 "Linear"; +VAL_ 1045 BrkFluidLvl_D_Stat 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; +VAL_ 1045 LsmcBrkDecel_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Denied" 3 "FaultDegraded" 2 "FaultExt" 1 "On" 0 "Off"; +VAL_ 1045 VehYawNonLin_W_Rq 4095 "Fault" 4094 "Unknown"; +VAL_ 1045 VehYawLin_W_Rq 4095 "Fault" 4094 "Unknown"; +VAL_ 1045 VehVActlBrk_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 1044 StePinOffst_An_Est 65535 "Faulty" 65534 "NoDataExists"; +VAL_ 1044 StePinOffst_D_Stat 3 "FineOffset" 2 "CoarseOffset" 1 "StoredOffset" 0 "OffsetNotCalculated"; +VAL_ 1042 VehRol_An_Dsply 127 "Faulty" 126 "NoDataExists"; +VAL_ 1042 VehPtch_An_Dsply 127 "Faulty" 126 "NoDataExists"; +VAL_ 535 WhlRr_W_Meas 32767 "Fault" 32766 "Unknown"; +VAL_ 535 WhlRl_W_Meas 32767 "Fault" 32766 "Unknown"; +VAL_ 535 WhlFr_W_Meas 32767 "Fault" 32766 "Unknown"; +VAL_ 535 WhlFl_W_Meas 32767 "Fault" 32766 "Unknown"; +VAL_ 534 WhlDirRr_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; +VAL_ 534 WhlDirRl_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; +VAL_ 534 WhlDirFr_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; +VAL_ 534 WhlDirFl_D_Actl 3 "Faulty" 2 "NoDataExists" 1 "Backward" 0 "Forward"; +VAL_ 532 RgenTqFalt_B_Actl 1 "Fault" 0 "No_Fault"; +VAL_ 532 RgenBrkDynoMde_B_Actl 1 "TwoWheelDyno" 0 "NormalOperation"; +VAL_ 531 VehStop_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Yes" 0 "No"; +VAL_ 531 TracCtlPtActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 531 LscmbbMntr_B_Err 1 "DisplayMessage" 0 "NoMessage"; +VAL_ 531 LscmbbBrkDis_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 LscmbbDeny_B_ActlBrk 1 "Yes" 0 "No"; +VAL_ 531 PrkBrkYwLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 531 PrkBrkRedLamp_D_Rq 3 "Fast_Flash" 2 "Slow_Flash" 1 "On" 0 "Off"; +VAL_ 531 LscmbbBrkDecel_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AbsActv_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 StabCtlBrkActv_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 CmbbBrkPrchg_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 CmbbBrkDecel_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 CmbbBaSensInc_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AccBrkWarm_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AccBrkTotTqMn_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AccBrkPrchgActv_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AccBrkDis_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AccBrkDeny_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 AccBrkActv_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 PrplDrgCtlActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 531 LscmbbBaSensInc_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 CmbbBrkDis_B_Actl 1 "Yes" 0 "No"; +VAL_ 531 CmbbDeny_B_ActlBrk 1 "Yes" 0 "No"; +VAL_ 531 CcDis_B_Cmd 1 "Yes" 0 "No"; +VAL_ 531 VehLongOvrGnd_A_Est 1023 "Fault" 1022 "Unknown"; +VAL_ 531 LscmbBrkPrchg_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 531 AccStopActv_B_ActlBrk 1 "Yes" 0 "No"; +VAL_ 531 AccDis_B_ActlEpb 1 "Yes" 0 "No"; +VAL_ 531 PrkBrkMsgTxt_D_Rq 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "No_Message"; +VAL_ 531 PrkBrkStatus 7 "GeneralFault_MaintenceMode" 6 "ECD_by_Brake_ECU_Active" 5 "EPB_Limphome_Active" 4 "Rear_Caliper_Open" 3 "RWU_By_EPB_Active" 2 "Rear_Caliper_Transition" 1 "Rear_Caliper_Closed" 0 "Not_Supported"; +VAL_ 136 SteWhlBrkOffst_An_Rq 32767 "Faulty" 32766 "NoDataExists"; +VAL_ 125 VehRolComp_W_Actl 4094 "NoDataExists" 4095 "Fault"; +VAL_ 125 VehVertComp_A_Actl 1022 "NoDataExists" 1023 "Fault"; +VAL_ 125 BrkTot_Tq_RqArb 8191 "Fault" 8190 "Unknown"; +VAL_ 125 BrkTot_Tq_Actl 8191 "Fault" 8190 "Unknown"; +VAL_ 125 HsaStat_D_Actl 7 "Faulty" 6 "FaultyWithDriverIndication" 5 "SlowRelease" 4 "FastRelease" 3 "ActiveBrakePedalReleased" 2 "ActiveBrakePedalPressed" 1 "FindingGradient" 0 "Inactive"; +VAL_ 119 VehTrvlDir_D_Stat 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "Reverse" 2 "LikelyReverse" 1 "Forward" 0 "LikelyForward"; +VAL_ 119 VehOverGnd_V_Est 65535 "Invalid" 65534 "Unknown"; +VAL_ 119 VehLongComp_A_Actl 1023 "Fault" 1022 "NoDataExists"; +VAL_ 119 VehLatComp_A_Actl 1023 "Fault" 1022 "NoDataExists"; +VAL_ 119 VehYawComp_W_Actl 4095 "Fault" 4094 "NoDataExists"; +VAL_ 118 BrkCtrFnd_B_Stat 1 "Yes" 0 "No"; +VAL_ 118 DrvSte_D_Stat 15 "NotUsed10" 14 "NotUsed9" 13 "NotUsed8" 12 "NotUsed7" 11 "NotUsed6" 10 "NotUsed5" 9 "NotUsed4" 8 "NotUsed3" 7 "NotUsed2" 6 "NotUsed1" 5 "Request_Active" 4 "Ignition_Off" 3 "DSR_in_Normal_Idle_Mode" 2 "EPAS_Comm_Disturbed" 1 "DSR_Request_Not_Applicable" 0 "DSR_Deactivated"; +VAL_ 118 DrvSte_Tq_Rq 255 "Invalid" 254 "Unknown"; +VAL_ 118 EmgcyBrkLamp_D_Rq 3 "NotUsed" 2 "Active_at_standstill" 1 "Active_at_speed" 0 "Inactive"; +VAL_ 118 StopLamp_B_RqBrk 1 "Active" 0 "Inactive"; +VAL_ 73 immoSubTarget1Cmd_T1 7 "Unused3" 6 "Unused2" 5 "ECHO_TARGET1_IDBLOCK2" 4 "Unused1" 3 "RQST_TARGET1_IDBLOCK2" 2 "RQST_TARGET1_IDBLOCK1" 1 "RESPONSE" 0 "IDLE"; +VAL_ 561 TrnMsgTxt2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "TransTooHot_LoudChime" 3 "PressBrake_LoudChime" 2 "PressBrake_SoftChime" 1 "PressBrake_NoChime" 0 "NoText_NoChime"; +VAL_ 561 TrnMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; +VAL_ 330 TrnAout_W_ActlUnfilt 32767 "Fault" 32766 "Unknown"; +VAL_ 1090 Mtr2State_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_1" 4 "ReadinessState" 3 "DeactivationState" 2 "PowerGeneration" 1 "PowerConsumption" 0 "Null"; +VAL_ 1090 Inv1Ain_I_ActlMntr 32767 "Faulty" 32766 "NoDataExists"; +VAL_ 1090 HybVehMde_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Fuel" 2 "HybridElectric" 1 "AllElectric" 0 "Null"; +VAL_ 1090 ChrgStat_D_ActlMntr 7 "Faulty" 6 "NoDataExists" 5 "NotUsed" 4 "ChargingCompleted" 3 "NotCharging" 2 "ChargingInDrivingState" 1 "ChargingInParkingState" 0 "Null"; +VAL_ 1090 VehElRnge_L_Dsply 4094 "NoDataExists" 4095 "Fault"; +VAL_ 870 EngMdeMsgTxt_D_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Charge" 3 "GlowingCharge" 2 "Hybrid" 1 "Ev" 0 "NoMessage"; +VAL_ 870 RngPerChrgInst_L_Dsply 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 869 PwrFlowTxt_D_Dsply 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "Disply_Rgen_Chrg_Txt" 10 "Disp_Fast_Charge_Txt" 9 "Disp_Fast_Charge_Cmplt_Txt" 8 "Disp_Charge_Cmplt_Txt" 7 "Disp_Remote_Start_Txt" 6 "Disp_Eng_Drv_Txt" 5 "Disp_Elec_Drv_Txt" 4 "Disp_Idle_with_Chrg_Txt" 3 "Disp_Idle_Txt" 2 "Disp_Charg_HV_Batt_Txt" 1 "Disp_Hyb_Drive_Txt" 0 "No_Text"; +VAL_ 869 EngOnMsg2_D_Dsply 14 "_0xE_to_1F_NotUsed" 12 "Battery_Temperature" 11 "Hill_Decent_Control" 10 "Fuel_Maintenance" 9 "Oil_Maintenance" 8 "Normal_Operation" 7 "Low_Gear" 6 "Batt_Charging" 5 "Engine_Cold" 4 "Neutral_Gear" 3 "Heater_Setting" 2 "High_Speed" 1 "Acceleration" 0 "No_Display" 13 "Drive_Mode_Selection"; +VAL_ 869 EngOnMsg1_D_Dsply 14 "_0xE_to_1F_NotUsed" 12 "Battery_Temperature" 11 "Hill_Decent_Control" 10 "Fuel_Maintenance" 9 "Oil_Maintenance" 8 "Normal_Operation" 7 "Low_Gear" 6 "Batt_Charging" 5 "Engine_Cold" 4 "Neutral_Gear" 3 "Heater_Setting" 2 "High_Speed" 1 "Acceleration" 0 "No_Display" 13 "Drive_Mode_Selection"; +VAL_ 869 FuelMaintMde_D_Dsply 3 "Feature_Not_Present" 2 "In_Fuel_Maint_Mode" 1 "Close_to_Fuel_Maint" 0 "OK"; +VAL_ 869 EngActv_B_Dsply 1 "On" 0 "Off"; +VAL_ 869 EffWhlThresOn_B_Dsply 1 "On" 0 "Off"; +VAL_ 606 ElVehLaterMde_D_Stat 3 "NotUsed" 2 "Available" 1 "NotAvailable" 0 "Null"; +VAL_ 606 ElVehNowMde_D_Stat 3 "NotUsed" 2 "Available" 1 "NotAvailable" 0 "Null"; +VAL_ 374 GearEngag_D_Actl 7 "Undefined" 6 "Fwd_Clutch_Fully_Engaged" 5 "Neutral_Idle" 4 "Disengaged_to_Neutral_Idle" 3 "Disengaged_to_Neutral_Park" 2 "Engagement_in_Progress" 1 "InitializeFwdClutchEngagmt" 0 "Park_Neutral"; +VAL_ 374 TrnRng_D_Rq 15 "Fault" 14 "Unknown_Position" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Range6" 10 "Range5" 9 "Range4" 8 "Range3_M3_L3" 7 "Range2_M2_L2" 6 "Range1_M1_L1" 5 "Low" 4 "Sport_DriveSport_Mposition" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_ 374 TrnPrkSys_D_Actl 15 "Faulty" 14 "NotUsed_5" 13 "NotUsed_4" 12 "NotUsed_3" 11 "NotUsed_2" 10 "NotUsed_1" 9 "FrequencyError" 8 "OutOfRangeHigh" 7 "OutOfRangeLow" 6 "Override" 5 "OutOfPark" 4 "TransitionCloseToOutOfPark" 3 "AtNoSpring" 2 "TransitionCloseToPark" 1 "Park" 0 "NotKnown"; +VAL_ 374 GearLvr_D_ActlDrv 15 "Fault" 14 "Unknown_Position" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Range6" 10 "Range5" 9 "Range4" 8 "Range3_M3_L3" 7 "Range2_M2_L2" 6 "Range1_M1_L1" 5 "Low" 4 "Sport_DriveSport_Mposition" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_ 374 GearPos_D_Trg 15 "Unknown" 14 "Reverse" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Tenth" 9 "Ninth" 8 "Eighth" 7 "Seventh" 6 "Sixth" 5 "Fifth" 4 "Fourth" 3 "Third" 2 "Second" 1 "First" 0 "Neutral"; +VAL_ 374 GearPos_D_Actl 15 "Unknown" 14 "Reverse" 13 "Undefined_5" 12 "Undefined_4" 11 "Undefined_3" 10 "Tenth" 9 "Ninth" 8 "Eighth" 7 "Seventh" 6 "Sixth" 5 "Fifth" 4 "Fourth" 3 "Third" 2 "Second" 1 "First" 0 "Neutral"; +VAL_ 603 WhlDirAvgDrv_D_Actl 3 "Failed" 2 "Unknown" 1 "Backward" 0 "Forward"; +VAL_ 603 PrplTqMnRgen_B_Actl 1 "Yes" 0 "No"; +VAL_ 603 BattTracCnnct_D_Rq 3 "Undefined" 2 "Retain" 1 "Close" 0 "Open"; +VAL_ 602 HtrnWarnLamp_B_Dsply 1 "On" 0 "Off"; +VAL_ 602 HybPwLimOn_B_Stat 1 "Yes" 0 "No"; +VAL_ 602 PwPckTqRdy_B_Dsply 1 "On" 0 "Off"; +VAL_ 1152 BattTracDiagClr_B_Stat 1 "On" 0 "Off"; +VAL_ 1152 EngTeHi_B_Actl 1 "EngineTempHigh" 0 "Normal"; +VAL_ 1152 DcdcOn_B_Rq 1 "On" 0 "Off"; +VAL_ 1152 ULoBattSpprtSustn_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 1152 VehElEff_No_Avg 127 "Faulty" 126 "NoDataExists"; +VAL_ 872 PlgActvArb_B_Dsply 1 "On" 0 "Off"; +VAL_ 872 HybMdeStat_D_Dsply 7 "NotUsed2" 6 "EV_Charge" 5 "EV_Override" 4 "Forced_EV_Mode" 3 "Forced_Charge_Sustain_Mode" 2 "Auto_Charge_Sustain_Mode" 1 "Auto_Charge_Deplete_Mode" 0 "Null_State"; +VAL_ 560 SelDrvMdeSwtch_D_Stat3 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; +VAL_ 560 TrnSrvcRqd_B_Rq 1 "On" 0 "Off"; +VAL_ 560 TrnShifActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 560 GearLvrPos_D_Actl 15 "Fault" 14 "Unknown_Position" 13 "Undefined_Treat_as__Fault" 12 "Undefined_Treat_as_Fault" 11 "sixth" 10 "fifth" 9 "fourth" 8 "third" 7 "second" 6 "first" 5 "Low" 4 "Sport_DriveSport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_ 560 GboxOil_Te_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 369 SeatWorkSrfc_B_Falt 1 "Active" 0 "Inactive"; +VAL_ 369 TrnIpcDsplyRng2_D_Actl 15 "No_Range_Selected" 14 "Range_14" 13 "Range_13" 12 "Range_12" 11 "Range_11" 10 "Range_10" 9 "Range_9" 8 "Range_8" 7 "Range_7" 6 "Range_6" 5 "Range_5" 4 "Range_4" 3 "Range_3" 2 "Range_2" 1 "Range_1" 0 "NotUsed"; +VAL_ 369 TrnIpcDsplyRng_D_Stat 3 "NotUsed" 2 "Flash" 1 "On" 0 "Blank_No_Display"; +VAL_ 369 TrnIpcDsplyGear_D_Actl 15 "No_Gear_Selected" 14 "_14th_Gear" 13 "_13th_Gear" 12 "_12th_Gear" 11 "_11th_Gear" 10 "_10th_Gear" 9 "_9th_Gear" 8 "_8th_Gear" 7 "_7th_Gear" 6 "_6th_Gear" 5 "_5th_Gear" 4 "_4th_Gear" 3 "_3rd_Gear" 2 "_2nd_Gear" 1 "_1st_Gear" 0 "Neutral"; +VAL_ 369 TrnIpcDsplyMde_D_Stat 3 "Reserved_Blank_No_Display" 2 "Flash" 1 "On" 0 "Blank_No_Display"; +VAL_ 369 TrnIpcDsplyMde_D_Actl 7 "Manual_3" 6 "Manual_2" 5 "Manual_1_Low" 4 "Sport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_ 369 TrnIpcDsplyGear_D_Stat 3 "Reserved_Blank_No_Display" 2 "Flash" 1 "On" 0 "Blank_No_Display"; +VAL_ 92 TrnLvrV_D_Rq 3 "Full_Speed" 2 "Aggressive" 1 "Normal" 0 "Quiet"; +VAL_ 92 TrnSbwSysHlth_D_Actl 3 "OK" 2 "Degraded" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 92 TrnGearNtmAllow_B_Stat 1 "Yes" 0 "No"; +VAL_ 92 TrnDtpCmd_D_Actl 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "Relatch" 3 "Deploy" 2 "Self_Test" 1 "No_Command" 0 "NotUsed1"; +VAL_ 92 GearSelLck_D_Rq 3 "PreventionBlocker" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_ 92 TrnValidGear_D_Cnfm 3 "Accept" 2 "Reject" 1 "Internal_Request" 0 "No_Command"; +VAL_ 92 TrnNtrlTowCmd_D_Actl 3 "NotUsed" 2 "Neutral_Tow_Entry" 1 "Car_Wash_Mode" 0 "Normal_Mode"; +VAL_ 92 TrnGearCmd_Pc_ActlPt 1023 "Fault"; +VAL_ 92 TrnGear_D_RqPt 7 "Fault" 6 "NotUsed" 5 "Manual" 4 "Drive" 3 "Neutral" 2 "Reverse" 1 "Park" 0 "No_Gear"; +VAL_ 92 TrnCmdState_B_Actl 1 "Yes" 0 "No"; +VAL_ 92 PrkBrkActv_D_RqTrnGear 3 "NotUsed2" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "NotUsed1"; +VAL_ 92 TrnGearMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; +VAL_ 1087 BattRgenLoChrg_D_RqEng 3 "Disable" 2 "Retain" 1 "Closed" 0 "Open"; +VAL_ 1087 AdasLcObtclAbrt_B_Stat 1 "Yes" 0 "No"; +VAL_ 1087 BattRgenLoDChrg_D_RqEng 3 "Disable" 2 "Retain" 1 "Closed" 0 "Open"; +VAL_ 1087 AirDamPos_D_Stat 3 "Faulty" 2 "NotUsed" 1 "Down" 0 "Up"; +VAL_ 1087 FapLcInhbt_B_Rq 1 "Yes" 0 "No"; +VAL_ 1087 FapLcStopHold_B_Rq 1 "Yes" 0 "No"; +VAL_ 1087 FapLcPrchgBrk_B_Rq 1 "Yes" 0 "No"; +VAL_ 1087 FapLcObstcl_B_Stat 1 "Yes" 0 "No"; +VAL_ 1087 FapLcMaxGrdInhbt_B_Stat 1 "Yes" 0 "No"; +VAL_ 1087 FapLcMaxGrdAbrt_B_Stat 1 "Yes" 0 "No"; +VAL_ 1087 FapLcActv_B_Stat 1 "Yes" 0 "No"; +VAL_ 332 UreaLvlQlty_D_RqDsply 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "FlashChime" 1 "On" 0 "Off"; +VAL_ 332 UreaLvlTxtWarn_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "System_Error" 10 "Engine_Idled_See_Manual" 9 "Engine_Idled_Upon_Refuel" 8 "Speed_Limited_To_XX_mph" 7 "XXmph_Max_Upon_Restart" 6 "Speed_Limited_To_YY_mph" 5 "YYmph_Max_Upon_Restart" 4 "SpdLimtd_YYmph_In_XXmiles" 3 "ExFlRange_XXMiles_ScndWarn" 2 "Exh_Fluid_Range_XX_Miles" 1 "Exh_Fluid_Under_Half_Full" 0 "Exh_Fluid_Over_Half_Full"; +VAL_ 332 UreaQltySysWarn_D_Rq 7 "Undefined" 6 "ZZ_Overrides" 5 "EngineIdled" 4 "Engine_Idle_Upon_Refuel" 3 "SPEED_LIMITED_to_YY_mph" 2 "YY_MPH_MAX_UPON_Restart" 1 "CONTAMINATED_ExhFluid" 0 "NoQualityProblem"; +VAL_ 332 DieslPrtcWarn_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_OverLoaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_OverLimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_OverLoaded" 0 "DPF_Normal_Operation"; +VAL_ 332 UreaQltyFlg_B_RqDsply 1 "True" 0 "False"; +VAL_ 332 UreaQltySys_D_RqDsply 7 "Undefined" 6 "ZZ_Overrides" 5 "EngineIdled" 4 "Engine_Idle_Upon_Refuel" 3 "SPEED_LIMITED_to_YY_mph" 2 "YY_MPH_MAX_UPON_Restart" 1 "CONTAMINATED_ExhFluid" 0 "NoQualityProblem"; +VAL_ 332 UreaLvlTxt_D_RqDsply 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "System_Error" 10 "Engine_Idled_See_Manual" 9 "Engine_Idled_Upon_Refuel" 8 "Speed_Limited_To_XX_mph" 7 "XXmph_Max_Upon_Restart" 6 "Speed_Limited_To_YY_mph" 5 "YYmph_Max_Upon_Restart" 4 "SpdLimtd_YYmph_In_XXmiles" 3 "ExFlRange_XXMiles_ScndWarn" 2 "Exh_Fluid_Range_XX_Miles" 1 "Exh_Fluid_Under_Half_Full" 0 "Exh_Fluid_Over_Half_Full"; +VAL_ 1100 EngExhMdeQuiet_D2_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; +VAL_ 1100 HvacCmprLim_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "CompressorHeadPressure" 4 "AvailableTorque" 3 "PedalPosition" 2 "RPM" 1 "ECT" 0 "NoLimit"; +VAL_ 1100 WakeAlarm1_B_Typ 1 "CanAndEcuDriveCircuit" 0 "CanOnly"; +VAL_ 1100 Veh_V_DsplyTrailCtlSet 63 "Faulty"; +VAL_ 1100 TrailCtlPt_B_Falt 1 "Fault" 0 "No_Fault"; +VAL_ 1100 AutoTowAllw_D_StatMnu 3 "TowHaulCommandedOn" 2 "AutoTowHaulEnabled" 1 "AutoTowHaulDisabled" 0 "NoSelection"; +VAL_ 1100 AutoTowActv_B_Stat 1 "Yes" 0 "No"; +VAL_ 1100 GrossTrainWeight_M_Est 255 "Faulty" 254 "NoDataExists"; +VAL_ 1098 EdmSailMdeOn_B_Stat 1 "On" 0 "Off"; +VAL_ 1098 EdmMsgTxt_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "OverallGoodScore" 10 "WorkOnCompliance" 9 "GoodCompliance" 8 "WorkOnGearShifting" 7 "GoodGearShifting" 6 "WorkOnEfficientSpeed" 5 "GoodEfficientSpeed" 4 "WorkOnDeceleration" 3 "GoodDeceleration" 2 "WorkOnAcceleration" 1 "GoodAcceleration" 0 "NoMessage"; +VAL_ 1098 EdmLamp_D_Dsply 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "NotUsed_1" 8 "CoastingEngineBrake" 7 "CoastingShiftToNeutral" 6 "FreewayJunction" 5 "Curve2" 4 "Curve1" 3 "SpeedLimit" 2 "Crossing" 1 "FreewayExit" 0 "NoRecommendation"; +VAL_ 1098 EdmCmplnc_B_Dsply 1 "Yes" 0 "No"; +VAL_ 1086 FuelPumpPwr_B_Rq 1 "On" 0 "Off"; +VAL_ 1086 ElLoadCtl_D_Rq 7 "Unused3" 6 "Unused2" 5 "Unused1" 4 "HoldAllDrvrInvisibleLoads" 3 "StdDriverInvisibleLoadsOn" 2 "AllDriverInvisibleLoadsOn" 1 "All_Possible_Loads_Off" 0 "No_Request"; +VAL_ 1071 CluPdlPosPcMeas_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 1069 SlMde_D_Stat 3 "IsaNotConfigured" 2 "Manual_Mode" 1 "Auto_Mode" 0 "Null"; +VAL_ 1069 SlMde_D_RqDsply 3 "NotUsed" 2 "ManualSpeed_LimiterSymbol" 1 "AutoSpeed_LimiterSymbol" 0 "NoSpeed_LimiterSymbol"; +VAL_ 1069 IsaOffst_D_Stat 15 "Faulty" 14 "Null" 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero"; +VAL_ 1069 GrllShtrPos_D_Cmd 15 "Fully_Open" 14 "Position14" 13 "Position13" 12 "Position12" 11 "Position11" 10 "Position10" 9 "Position9" 8 "Position8" 7 "Position7" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Fully_Closed"; +VAL_ 1069 GrllShtrPos_B_Falt 1 "Fault" 0 "No_Fault"; +VAL_ 1069 ObdWarmUp_B_Complt 1 "Yes" 0 "No"; +VAL_ 1069 EngMsgTxt_D_Rq 3 "Undefined_2" 2 "Undefined_1" 1 "Power_Reduced_to_LowerTemp" 0 "No_Message"; +VAL_ 1069 EngAirIn_Te_Actl 1023 "Fault" 1022 "Unknown"; +VAL_ 1060 RearDiffOilTeWarn_B_Rq 1 "On" 0 "Off"; +VAL_ 1060 RearDiffOil_Te_Actl 511 "Faulty"; +VAL_ 1060 BpedDrvMsgTxt_B_Dsply 1 "On" 0 "Off"; +VAL_ 1060 FuelLvlWarn_D_ActlEng 7 "DteLevel5Lowest" 6 "DteLevel4" 5 "DteLevel3" 4 "DteLevel2NonMyKey" 3 "DteLevel1MyKey" 2 "VeryLow" 1 "Low" 0 "OK"; +VAL_ 1060 SelDrvMdePt_D_Stat 0 "NotAvailable" 1 "Available" 2 "TemporarilyNotAvailable" 3 "Faulty"; +VAL_ 1057 FohEng_D_Rq 3 "AutoEnable_ParkEnable" 2 "AutoDisable_ParkEnable" 1 "AutoEnable_ParkDisable" 0 "Disable_Stop"; +VAL_ 1057 EngIdlShutDwnTxt_D_Rq 3 "NotUsed" 2 "EngineShutdownOnPrevDrive" 1 "FeatureDisabledDueToFault" 0 "NoMessage"; +VAL_ 1057 EngIdlShutDown_D_Stat 3 "Not_used" 2 "Engine_Shutdown" 1 "Initiated_Countdown" 0 "Normal_Operation"; +VAL_ 1057 FUEL_ALCOHOL_PERCNT 255 "Invalid"; +VAL_ 1057 TrnTotTq_Rt_Est 65535 "Fault" 65534 "Unknown"; +VAL_ 1057 TrnTotLss_Tq_Est 255 "Fault" 254 "Unknown"; +VAL_ 1057 ECMMILRequest 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 1057 AirCondFluidHi_P_Actl 255 "Fault" 254 "Unknown"; +VAL_ 1057 OilPressureWarning 1 "Low_Pressure_Lamp_On" 0 "Normal_Pressure_Lamp_Off"; +VAL_ 1057 VehVLimStat_D_Actl 7 "Undefined_3" 6 "Undefined_2" 5 "Undefined_1" 4 "ASL_Fault_Condition" 3 "Active_and_Limiting" 2 "Active_but_Not_Limiting" 1 "Standby" 0 "Off"; +VAL_ 1057 VehVLimActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 1057 CoolantFanStepAct 31 "Unused7" 30 "Unused6" 29 "Unused5" 28 "Unused4" 27 "Unused3" 26 "Unused2" 25 "Unused1" 23 "Step23" 22 "Step22" 21 "Step21" 20 "Step20" 19 "Step19" 18 "Step18" 17 "Step17" 16 "Step16" 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 24 "Max_Fan_Speed_Req" 0 "Fan_Cmd_Off"; +VAL_ 1055 EcoCochInstNeg_B_Dsply 1 "True" 0 "False"; +VAL_ 562 GearNtrl_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Yes" 0 "No"; +VAL_ 523 EngAirFiltMsgTxt_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "EngineAirFilterMonitorFalt" 4 "ResetComplete" 3 "Clogged" 2 "ReplaceNow" 1 "ReplaceSoon" 0 "NoMessage"; +VAL_ 523 WaterInFuel_B_Falt 1 "Fault" 0 "No_Fault"; +VAL_ 523 UreaMnAdd_L2_Actl 255 "Faulty"; +VAL_ 523 UreaMxAdd_L2_Actl 511 "Faulty"; +VAL_ 517 FapLc_B_Err 1 "Yes" 0 "No"; +VAL_ 516 EngAoutNActl_D_QF 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 516 EngAout3_N_Actl 65535 "Invalid"; +VAL_ 516 ApedPos_PcRate_ActlArb 255 "Fault" 254 "Unknown"; +VAL_ 516 ApedPosPcActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 514 StrtrMtrDlyStrt_B_Stat 1 "Yes" 0 "No"; +VAL_ 514 VehVTrlrAid_B_Avail 1 "Yes" 0 "No"; +VAL_ 514 StrtrMtrCtlMsgTxt_D_Rq 7 "Start_In_Gear_Allowed" 6 "Pending_Start_Cancelled" 5 "Start_Pending_Please_Wait" 4 "Cranking_Limit_Exceeded" 3 "Press_Brk_and_Shift_to_P_N" 2 "Press_Clutch_and_Brake" 1 "Press_Clutch_To_Start" 0 "No_Display"; +VAL_ 514 VehVActlEng_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 514 GearRvrse_D_Actl 7 "Fault" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Active_confirmed" 2 "Active_not_confirmed" 1 "Inactive_confirmed" 0 "Inactive_not_confirmed"; +VAL_ 514 StrtrMtrCtlMsgTxt_D2_Rq 3 "NoRequestPcmStartingMsgCtl" 2 "ShiftToNeutralToStart" 1 "ShiftToParkToStart" 0 "NoRequestBcmStartingMsgCtl"; +VAL_ 512 PtDrvMde_D_Stat 15 "Faulty" 14 "NotUsed11" 13 "NotUsed10" 12 "NotUsed9" 11 "NotUsed8" 10 "NotUsed7" 9 "NotUsed6" 8 "NotUsed5" 7 "Drag" 6 "Rock" 5 "Baja" 4 "Sand" 3 "TowHaulGradeAssist" 2 "SnowWet" 1 "Sport" 0 "Normal"; +VAL_ 381 EngOilSrvcMsgTxt_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "ResetComplete" 3 "ResetInProgress" 2 "ChangeOilNow" 1 "ChangeOilSoon" 0 "NoText"; +VAL_ 381 RunDryPrevent_B_Stat 1 "True" 0 "False"; +VAL_ 381 WaterInFuel 1 "On" 0 "Off"; +VAL_ 381 GlowIndication 1 "On" 0 "Off"; +VAL_ 380 EngOilLvlWarn_D_Rq1 7 "Undefined_3" 6 "Undefined_2" 5 "Engine_Oil_Monitor_Fault" 3 "Engine_Oil_High" 2 "Engine_Oil_Critical_Low" 1 "Engine_Oil_Low" 0 "No_Message" 4 "Engine_Oil_Critical_High"; +VAL_ 380 EngExhBrkOnLamp_B_Rq 1 "On" 0 "Off"; +VAL_ 380 EngExhBrkAutoLamp_B_Rq 1 "On" 0 "Off"; +VAL_ 380 EngExhBrkMde_D_Actl 6 "ExhBrkDisable_NoError" 5 "ExhBrkActive_AUTO" 4 "ExhBrkActive_ON" 3 "ExhBrkRequest_AUTO" 2 "ExhBrkRequest_ON" 1 "ExhBrkNoRequest_OFF" 0 "ExhBrkUnavailable_Error"; +VAL_ 377 HvacAirFullOut_B_Rq 1 "Yes" 0 "No"; +VAL_ 377 FuelFillInlet_B_Dsply 1 "Yes" 0 "No"; +VAL_ 377 EngSrvcRqd_B_Rq 1 "Engine_Service_Required" 0 "No_engine_service_required"; +VAL_ 377 OdoCount 255 "Invalid"; +VAL_ 377 FuelFilterLamp_B_Dsply 1 "On" 0 "Off"; +VAL_ 377 AirCondRec_B_Rq 1 "Yes" 0 "No"; +VAL_ 377 AirCondClutch_B_Stats 1 "Yes" 0 "No"; +VAL_ 376 GasPrtc_D_RqDsply 7 "NotUsed_5" 6 "NotUsed_4" 5 "NotUsed_3" 4 "NotUsed_2" 3 "NotUsed_1" 2 "GpfOverLimit" 1 "GpfAtLimit" 0 "NormalOperation"; +VAL_ 376 DynoMde_B_Cmd 1 "Two_Wheel_Dyno" 0 "Normal_Operation"; +VAL_ 376 AslIconDsply_D_Rq 3 "On_Passive_Overridden" 2 "On_Active" 1 "On_Passive" 0 "Off"; +VAL_ 376 AslChime_B_Rq 1 "Yes" 0 "No"; +VAL_ 376 HvacHtrCore2_Te_Actl 1023 "Faulty"; +VAL_ 376 EcssLamp_D_RqDsply 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 376 AirAmbTe_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 376 AirAmb_P_Actl 63 "Fault" 62 "NoDataExists"; +VAL_ 373 DieslPrtc2_D_RqDsply 15 "NotUsed4" 14 "NotUsed3" 13 "NotUsed2" 12 "NotUsed1" 11 "OCR_ExhFilterClean_Stopped" 10 "OCR_ExhFilterCleaned" 9 "RgnOff_AtLimit" 8 "RgnOff_Overloaded" 7 "RgnOff_Loaded" 6 "Exhaust_Filter_Full" 5 "DPF_Overlimit" 4 "DPF_AtLimit" 3 "ExhFilter_Drive_Completed" 2 "Cleaning_Exhaust_Filter" 1 "DPF_Overloaded" 0 "DPF_Normal_Operation"; +VAL_ 373 DieslPrtcRgen_D_Actl 3 "Undefined" 2 "Regen_Level_2" 1 "Regen_Level_1" 0 "No_regen"; +VAL_ 373 EngTeColdPrtct_D_Stats 3 "Engine_Warm_RdcPwr" 2 "OK_to_Drive" 1 "Engine_Warm_PlsWait" 0 "Normal_Operation"; +VAL_ 373 EngExhOvrTe_B_RqDsply 1 "Active" 0 "Inactive"; +VAL_ 359 PrplWhlRgenMn_Tq_Actl 8191 "Faulty"; +VAL_ 359 ElPw_D_StatStrtStop 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Supported_Level_4" 8 "Supported_Level_3" 7 "Supported_Level_2" 6 "Supported_Level_1" 5 "Limited_Support" 4 "Fault_Limited" 3 "LV_Event_in_Progress" 2 "Not_Supported_Imminent" 1 "Supported_All" 0 "Not_Supported"; +VAL_ 359 PrplWhlTot2_Tq_Actl 65535 "Fault" 65534 "NoDataExists"; +VAL_ 359 PwPckTq_D_Stat 3 "PwPckOn_TqAvailable" 2 "StartInPrgrss_TqNotAvail" 1 "PwPckOn_TqNotAvailable" 0 "PwPckOff_TqNotAvailable"; +VAL_ 359 Eng_D_Stat 3 "NotUsed" 2 "EngAutoStopped" 1 "EngOn" 0 "EngOff"; +VAL_ 359 PlgActvArb_B_Actl 1 "On" 0 "Off"; +VAL_ 359 ElPw_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Fault_Limited" 3 "LV_Event_In_Progress" 2 "Not_Supported_Imminent" 1 "Supported" 0 "Not_Supported"; +VAL_ 359 TrnAinTq_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 358 StopStrtStdby_D_Indic 6 "NotUsed2" 5 "Telltale_Struck_Out" 4 "Telltale_Flashing_Amber" 3 "Telltale_On_Amber" 2 "Telltale_Flashing_Green" 1 "Telltale_On_Green" 0 "Telltale_Off" 7 "NotUsed3"; +VAL_ 358 StopStrtIODTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 358 StopStrtDrvMde_D_Indic 3 "NotUsed" 2 "StartStop_IndirectDeselect" 1 "StopStart_Deselected" 0 "StopStart_Selected"; +VAL_ 358 StopStrtMsgTxt_D_Rq 15 "Message_15" 14 "Message_14" 13 "Message_13" 12 "Message_12" 11 "Message_11" 10 "Message_10" 9 "Message_9" 8 "Message_8" 7 "Message_7" 6 "Message_6" 5 "Message_5" 4 "Message_4" 3 "Message_3" 2 "Message_2" 1 "Message_1" 0 "NoMessage"; +VAL_ 358 OdoTripVerify_L_Actl 16777215 "Fault"; +VAL_ 358 HiElPwInhbt_B_Stat 1 "Inhibit" 0 "No_Inibit"; +VAL_ 358 AutoStopPtDelta_I_Est 255 "Fault"; +VAL_ 357 BPedDrvAppl_D_QF 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 357 CmbbDeny_B_ActlPrpl 1 "Yes" 0 "No"; +VAL_ 357 PrplTqMnSat_B_Actl 1 "Yes" 0 "No"; +VAL_ 357 BpedDrvAppl_D_Actl 3 "_Not_Allowed" 2 "Driver_Braking" 1 "Driver_Not_Braking" 0 "Not_Allowed"; +VAL_ 357 CmbbEngTqMn_B_Actl 1 "Yes" 0 "No"; +VAL_ 357 Veh_V_DsplyCcSet 255 "Fault" 254 "Unknown"; +VAL_ 357 AccEngStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "ACCSoonCancel_due_Low_Spd" 4 "Shift_Down_Recommendation" 3 "Shift_Up_Recommendation" 2 "ACCNotAllowedToBeActivated" 1 "ACCStandby_due_Auto_Cancel" 0 "Normal_Operation"; +VAL_ 357 CcMde_D_Actl 7 "TapDownWaiting" 6 "TapUpWaiting" 5 "Resuming_Low" 4 "Resuming_High" 3 "Decelerating" 2 "Accelerating" 1 "Keeping_Speed" 0 "Not_Active"; +VAL_ 357 CcStat_D_Actl 7 "Undefined_2" 6 "Undefined_1" 5 "Active" 4 "Active_Que_Assist" 3 "Standby" 2 "Standby_Denied" 1 "Denied" 0 "Off"; +VAL_ 357 CcOvrrdActv_B_Actl 1 "Cruise_Overridden" 0 "Cruise_Req_Not_Overridden"; +VAL_ 357 AccStopMde_D_Rq 3 "Stop_Mode_Active" 2 "EPBApplyOrBrakeReleaseWarn" 1 "Limit_Rolling_Speed" 0 "Stop_Mode_Not_Active"; +VAL_ 355 AutoRgenTxt_B_RqDsply 1 "AutExhFilterCleanOFF" 0 "AutExhFilterCleanON"; +VAL_ 355 AccFllwMdeActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 355 EngPtoMde_D_Actl 7 "Undefined" 6 "Split_Shaft_Stationary" 5 "Not_Used_2" 4 "PTO_Mobile" 3 "Not_Used_1" 2 "PTO_Stationary" 1 "BCP" 0 "Off"; +VAL_ 355 ManRgenTxt_D_RqDsply 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Cleaning_Aborted_Stopped" 3 "Cleaning_Completed" 2 "Cleaning_In_Progress" 1 "Cleaning_Allowed" 0 "Cleaning_Not_Allowed"; +VAL_ 355 ManRgenSoot_Pc_RqDsply 127 "Fault"; +VAL_ 355 DieslMsgTxt_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "ReducedEnginePower" 0 "NoMessage"; +VAL_ 342 EngOvrhtMitgActv_D_Ind 3 "Undefined" 2 "Mode2" 1 "Mode1" 0 "Normal_Mode"; +VAL_ 342 EngClntTe_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 342 EngOil_Te_Actl 255 "Fault" 254 "Unknown"; +VAL_ 71 immoTarget1Status 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "DISABLED_RESET " 2 "ENABLED_NONMOTIVE_START" 1 "ENABLED_MOTIVE_START" 0 "DISABLED"; +VAL_ 71 immoTarget1Cmd 7 "Unused4" 6 "Unused3" 5 "Unused2" 4 "Unused1" 3 "TARGET1_IDBLOCK2" 2 "TARGET1_IDBLOCK1" 1 "CHALLENGE" 0 "IDLE"; +VAL_ 1006 PersIndexIpmb_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 820 AhbStatGfhbFdbk_D_Actl 3 "GfhbHighBeamFullyOn" 2 "GfhbHighBeamPartlyOn" 1 "GfhbHighBeamOff" 0 "GfhbUnavailable"; +VAL_ 820 HeadLghtDrvSide_B_Stat 1 "Left_Hand_Traffic" 0 "Right_Hand_Traffic"; +VAL_ 820 HeadLghtHiOn_B_StatHcm 1 "On" 0 "Off"; +VAL_ 820 Adaptive_Hdlmp_Fault 1 "Yes" 0 "No"; +VAL_ 137 SteWhlOffstRq_D_Stat 3 "Faulty" 2 "NoDataExists" 1 "Allow_External_Angle_Req" 0 "Deny_External_Angle_Req"; +VAL_ 137 SteWhlOffst_An_TotActl 32767 "Faulty" 32766 "NoDataExists"; +VAL_ 137 SteWhlBrkOffst_An_Actl 32767 "Faulty" 32766 "NoDataExists"; +VAL_ 129 SelDrvMdeSwtch_D_Stat4 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; +VAL_ 129 SteWhlSwtchView_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchSet_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchPhon_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchNav_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchMed_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchIod_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchHud_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchBack_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchMenu_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteEffortInc_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SelDrvMdeInc_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SelDrvMdeDec_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SuspDampInc_B_RqDrv 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchUp_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchRght_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchOk_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchLeft_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchDown_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchHome_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 129 SteWhlSwtchInfo_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 935 SodRight_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; +VAL_ 935 CtaAlrtRight2_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "AlertZone4" 3 "AlertZone3" 2 "AlertZone2" 1 "AlertZone1" 0 "Off"; +VAL_ 935 BttRight_D_Stat 7 "NotUsed" 6 "Disabled" 5 "Off" 4 "OffTemp" 3 "NotConnected" 2 "Pending" 1 "Connected" 0 "NotDetermined"; +VAL_ 935 BttRight_D_RqDrv 3 "NotUsed" 2 "Request" 1 "NoRequest" 0 "Null"; +VAL_ 935 CtaBrkRightMsgTxt_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 935 CtaRightBrkEnbl_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 935 CtaRightBrkDecel_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 935 CtaSnsRight_D_Stat 3 "Invalid" 2 "System_Failure" 1 "Blocked" 0 "Clear"; +VAL_ 935 CtaAlrtRight_D_Stat 1 "On" 0 "Off"; +VAL_ 935 CtaRight_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; +VAL_ 935 SodSnsRight_D_Stat 3 "Second_Warning_Audio" 2 "System_Failure" 1 "Blocked" 0 "Clear"; +VAL_ 935 SodAlrtRight_D_Stat 3 "Bulb_Proveout" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 935 SodDetctRight_D_Stat 4 "Sensor_Blocked" 3 "Sensor_Fault" 2 "Flash_On" 1 "Alert_On" 0 "AlertOff_FlashOff_SensrClr"; +VAL_ 1108 RCMSerialNoByte8 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte7 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte6 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte5 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte4 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte3 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte2 255 "Invalid" 254 "Unknown"; +VAL_ 1108 RCMSerialNoByte1 255 "Invalid" 254 "Unknown"; +VAL_ 261 ChrgStatDsply_D_Rq 3 "NotUsed_2" 2 "NotUsed_1" 1 "On" 0 "Off"; +VAL_ 261 NextUsageTimeToggle_Rq 0 "Inactive" 2 "Disable" 1 "Enable"; +VAL_ 261 LongTermParking_Rq 0 "Inactive" 1 "On" 2 "Off" 3 "NotUsed"; +VAL_ 261 ModemReset_D_Rq 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "BrandConnectReset2" 5 "BrandConnectReset1" 4 "CcsReset" 3 "OnlineTrafficReset" 2 "PaakReset" 1 "WifiHotspotReset" 0 "Null"; +VAL_ 261 StopStrtDrvMde_B_RqBtn3 1 "Pressed" 0 "Not_Pressed"; +VAL_ 261 TCU_ESN_D_Rq 3 "NotUsed" 2 "TCU_ESN_Request" 1 "NoRequest" 0 "Inactive"; +VAL_ 261 FactoryReset_Rq 1 "ResetFactoryDefaults" 0 "Inactive"; +VAL_ 1146 TrlrAidSwtch_D_RqDrv 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1146 TrlrAidCtl_U_RqDrv 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 533 DcacGfciTestBttn_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 533 DcacPwResetButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 533 DcacPwOffButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 533 DcacPwLoButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 533 DcacPwHiButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 533 DcacPwButtn_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 533 TrlrHitch_D_RqMnu 15 "NotUsed_10" 14 "NotUsed_9" 13 "NotUsed_8" 12 "NotUsed_7" 11 "NotUsed_6" 10 "NotUsed_5" 9 "NotUsed_4" 8 "NotUsed_3" 7 "NotUsed_2" 6 "NotUsed_1" 5 "GoToTraileringDomain" 4 "Confirm" 3 "TurnOnTba" 2 "TurnOnAutohitch" 1 "CancelAutohitch" 0 "NoRequest"; +VAL_ 533 AutoEpbZoomView_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 533 AutoEpbButtn_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 533 TrlrAidMde_D_Rq 3 "Mode_3" 2 "Mode_2" 1 "Mode_1" 0 "NoRequest"; +VAL_ 533 TCU_Init_Actvtn_St 3 "NotUsed" 2 "InitialActivateDeny" 1 "InitialActivateAccept" 0 "Invalid"; +VAL_ 533 TCU_Final_Actvtn_St 3 "NotUsed" 2 "FinalActivateDeny" 1 "FinalActivateAccept" 0 "Invalid"; +VAL_ 533 OtaTrg_D_Stat 3 "NotUsed_1" 2 "Accepted" 1 "NotAccepted" 0 "Null"; +VAL_ 533 OnbChrgGoTTouch_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 533 OnbChrgGoTPrcond_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 533 OnbChrgGoTOn_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 533 OnbChrgGoTMnte_D_Rq 15 "NotUsed_4" 14 "NotUsed_3" 13 "NotUsed_2" 12 "NotUsed_1" 11 "Minute_55" 10 "Minute_50" 9 "Minute_45" 8 "Minute_40" 7 "Minute_35" 6 "Minute_30" 5 "Minute_25" 4 "Minute_20" 3 "Minute_15" 2 "Minute_10" 1 "Minute_5" 0 "Minute_0"; +VAL_ 533 OnbChrgGoTHr_T_Rq 31 "Faulty" 30 "NoDataExists"; +VAL_ 533 OnbChrgGoTExtHtr_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 533 OnbChrgGoTDelete_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 533 OnbChrgClearAll_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 533 PaakMyKey_D_Rq 3 "NotUsed" 2 "ConfirmNewPaakMyKey" 1 "RequestNewPaakMyKey" 0 "None"; +VAL_ 533 OnbChrgGoTUpdate_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 1041 ElCmprUHi_D_Stat 3 "Overvoltage" 2 "Undervoltage" 1 "InRange" 0 "Undetermined"; +VAL_ 1041 ElCmprOverTe_D_Stat 3 "OverTempStop" 2 "OverTempWarning" 1 "Normal" 0 "Undefined"; +VAL_ 1041 ElCmpr_N_Actl 255 "Invalid"; +VAL_ 1041 ElCmpr_Pw_Actl 255 "Invalid"; +VAL_ 1041 ElCmpr_D_Stat 7 "Signal_Invalid" 6 "Comp_Off_ActlSpd_Abnormal" 5 "Comp_Off_TrgtSpd_OutRange" 4 "Comp_Shutdown" 3 "Comp_Stopped_Self_Protect" 2 "Comp_Degraded" 1 "Comp_On" 0 "Comp_Off"; +VAL_ 1041 ElCmprPerfErr_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprInnrErr_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprLostComm_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprOverLoad_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprOverTe_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprBattURng_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprBattSysU_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1041 ElCmprSysU_D_Falt 3 "NotUsed" 2 "Pass" 1 "Fail" 0 "Not_Diagnose_Yet"; +VAL_ 1067 BattULoAuxIsol_D_Rq 3 "Undefined" 2 "Retain" 1 "Close" 0 "Open"; +VAL_ 1067 BattULoAux_U_Rq 4095 "Faulty"; +VAL_ 1067 BattULoAux_I_Actl 4095 "Faulty"; +VAL_ 1067 BattULoAux_D_Qlty 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Faulty"; +VAL_ 1067 BattULoAux_U_Actl 255 "Faulty"; +VAL_ 1067 BattULoAux_B_Falt 1 "Fault" 0 "No_Fault"; +VAL_ 1112 BattTracChrgSustn_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 1112 BattTracCnnct_D_Cmd 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "WeldCheck" 3 "OkToDischarge" 2 "Closed" 1 "Precharge" 0 "Open"; +VAL_ 1112 BattTracHvilOpen_B_Stat 1 "Open" 0 "Closed"; +VAL_ 1112 BattTracDcdcDis_B_Rq 1 "Yes" 0 "No"; +VAL_ 1112 HtrnClntPump_D_Stat 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; +VAL_ 1112 BattTracClntPmp_D_Stat 3 "Faulty" 2 "No_Data_Exists" 1 "On" 0 "Off"; +VAL_ 139 AfsPw_B_Rq 1 "Yes" 0 "No"; +VAL_ 139 AccButtnGpTogglePress2 1 "Pressed" 0 "Not_Pressed"; +VAL_ 139 TjaButtnOnOffPress2 1 "Pressed" 0 "Not_Pressed"; +VAL_ 139 ActvFrontSteMsgTxt_D_Rq 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 139 ActvFrontSteLck_D_Stat 3 "Test_passed" 2 "Test_failed" 1 "Test_cannot_run" 0 "Test_incomplete"; +VAL_ 139 SelDrvMdeAdptSte_D_Stat 3 "Faulty" 2 "TemporarilyNotAvailable" 1 "Available" 0 "NotAvailable"; +VAL_ 139 AslButtnOnOffPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 AslButtnOnOffCnclPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcButtnOnPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcButtnOnOffPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcButtnOnOffCnclPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcButtnOffPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAsllButtnResPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnSetPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnSetIncPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnSetDecPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnResIncPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnResDecPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnOnPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnOnOffCncl2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnOffCnclPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnIndxIncPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnIndxDecPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnDeny_B_Actl2 1 "Yes" 0 "No"; +VAL_ 139 CcAslButtnCnclResPres2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 CcAslButtnCnclPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 AccButtnGapIncPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 139 AccButtnGapDecPress2 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 1121 SelDrvMdeSwtch_D_Stat 3 "Faulty" 2 "SwitchState2" 1 "SwitchState1" 0 "NotPressed"; +VAL_ 1121 SelDrvMdeCnt_D_Stat 4 "FourCounts" 3 "ThreeCounts" 2 "TwoCounts" 1 "OneCount" 0 "ZeroCounts" 7 "SevenOrMoreCounts" 6 "SixCounts" 5 "FiveCounts"; +VAL_ 1120 DrvSlipCtlMde_B_Rq3 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1120 HybMdeSwtch_B_Rq 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1120 TrailCtlSwtch_B_Stat3 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1120 RearDiffLck_D_RqDrv 3 "Faulty" 2 "NoRequest" 1 "On" 0 "Off"; +VAL_ 1120 AwdMde_D_RqDrv 7 "Faulty" 6 "NotUsed2" 5 "NoRequest" 4 "Neutral" 3 "FourByFourLow" 2 "FourByFourHigh" 1 "FourByFourAuto" 0 "FourByTwo"; +VAL_ 1120 HdcSwtchPos_B_Actl 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1050 AutoHoldSwtch_D_Stat 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1050 LpdbPtc3_B_Rq 1 "On" 0 "Off"; +VAL_ 1050 LpdbPtc2_B_Rq 1 "On" 0 "Off"; +VAL_ 1050 LpdbPtc1_B_Rq 1 "On" 0 "Off"; +VAL_ 1050 LpdbHeatWiprPrk_B_Rq 1 "On" 0 "Off"; +VAL_ 1050 LpdbDfrstRearOn_B_Rq 1 "On" 0 "Off"; +VAL_ 1050 SteWhlHeat_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "Reserved_3" 8 "Reserved_2" 7 "Reserved_1" 6 "Level_3_Heating" 5 "Level_3_Heating_LS" 4 "Level_2_Heating" 3 "Level_2_Heating_LS" 2 "Level_1_Heating" 1 "Level_1_Heating_LS" 0 "Off"; +VAL_ 1050 MirrorHeatOn_B_Rq 1 "True" 0 "False"; +VAL_ 1050 Remote_Start_QuietMode 1 "Quiet" 0 "Not_Quiet"; +VAL_ 1050 Outside_Air_Temp_Stat 255 "Invalid" 254 "Unknown"; +VAL_ 1137 RngPerChrgAvg_L_Dsply 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 1255 BalrRight4Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1255 BalrRight4Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1255 BalrRight4Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1254 BalrRight3Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1254 BalrRight3Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1254 BalrRight3Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1253 BalrRight2Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1253 BalrRight2Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1253 BalrRight2Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1252 BalrRight1Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1252 BalrRight1Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1252 BalrRight1Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1251 BalrLeft4Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1251 BalrLeft4Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1251 BalrLeft4Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1250 BalrLeft3Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1250 BalrLeft3Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1250 BalrLeft3Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1249 BalrLeft2Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1249 BalrLeft2Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1249 BalrLeft2Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1248 BalrLeft1Threat_D_Stat 1 "Yes" 0 "No"; +VAL_ 1248 BalrLeft1Fast_B_Stat 1 "Yes" 0 "No"; +VAL_ 1248 BalrLeft1Dsply_B_Stat 1 "Yes" 0 "No"; +VAL_ 1113 TrlrTrgtAcquire_D_Stat 7 "Faulty" 6 "NotUsed_2" 5 "NotUsed_1" 4 "RVCforTBA_Activated" 3 "Processing" 2 "TargetNotAcquired" 1 "TargetAcquired" 0 "Null"; +VAL_ 1113 TrlrAnOffstDir_D_Calc 3 "NotUSed" 2 "Right" 1 "Left_or_Center" 0 "Null"; +VAL_ 1113 TrlrAnCalib_B_Complt 1 "Yes" 0 "No"; +VAL_ 1113 TrlrRvrse_D_Stat 3 "Faulty" 2 "TrailerReverseGuidanceLite" 1 "On" 0 "Off"; +VAL_ 1113 TrlrAid_D2_Stat 15 "Faulty" 14 "NotUsed_4" 13 "NotUsed_3" 12 "NotUsed_2" 11 "NotUsed_1" 10 "DirtyCamera" 9 "IncorrectLighting" 8 "TrackingLost" 7 "TrackingUnknownConfidence" 6 "TrackingHighConfidence" 5 "TrackingMediumConfidence" 4 "TrackingLowConfidence" 3 "TurnRequested" 2 "DriveStraighRequested" 1 "Initializing" 0 "NotTracking"; +VAL_ 1113 TrlrAid_An3_Actl 2047 "Faulty"; +VAL_ 1113 TrlrAid_AnRate2_Actl 1023 "Faulty"; +VAL_ 1113 HitchToVehAxle_L_Calc 255 "Faulty"; +VAL_ 1105 TrlrAidSwtchLamp_B_Rq 1 "On" 0 "Off"; +VAL_ 1105 TrlrHitchMsgTxt_D_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage" 63 "Message63" 47 "Message47"; +VAL_ 1105 TrlrHitchIcon_D_Rq 15 "Icon15" 14 "Icon14" 13 "Icon13" 12 "Icon12" 11 "Icon11" 10 "Icon10" 9 "Icon9" 8 "Icon8" 7 "Icon7" 6 "Icon6" 5 "Icon5" 4 "Icon4" 3 "Icon3" 2 "Icon2" 1 "Icon1" 0 "NoIcon"; +VAL_ 1105 TrlrHitchChime_D_Rq 7 "NotUsed_1" 6 "NotUsed_1" 5 "WarningChime" 4 "NonCriticalAlertChime" 3 "StopNowChime" 2 "ManeuveringReadyChime" 1 "TrailerFoundChime" 0 "NoChime"; +VAL_ 1105 TrlrAidEnbl_D_RqAdas 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "Deactivate" 2 "NotAvailable" 1 "ActiveTba" 0 "Inactive"; +VAL_ 1105 TrlrRvrseMsgTxt_D2_Rq 31 "Message31" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 1105 TrlrRvrseEnbl_D2_Stat 7 "NotUsed" 6 "TbaActiveExpertActive" 5 "TbaActiveExpertAvail" 4 "TbaOffTrgActive" 3 "TbaOffTrgSetup" 2 "TbaSetup" 1 "TbaActive" 0 "Inactive"; +VAL_ 1105 RbaMsg_D_Rq 3 "Faulty" 2 "Unavailable" 1 "Off" 0 "Null"; +VAL_ 1105 BrkDecel_B_RqRba 1 "Enable" 0 "Disable"; +VAL_ 1105 BrkEnbl_B_RqRba 1 "Enable" 0 "Disable"; +VAL_ 1105 Rba_D_Stat 3 "NotUsed" 2 "Disabled" 1 "On" 0 "Off"; +VAL_ 1105 RbaAlrt_D_Dsply 3 "Both" 2 "Text" 1 "Graphic" 0 "Off"; +VAL_ 1105 RbaMnu_D_Rq 3 "NotUsed" 2 "Active" 1 "Inactive" 0 "None"; +VAL_ 1105 CamraFrntStat_D_Stat 3 "No_Data_Present" 2 "NotUsed" 1 "On" 0 "Off"; +VAL_ 1105 TrlrHitchLamp_D_Rq2 1 "On" 0 "Off"; +VAL_ 938 SidePrkSnsR2_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 938 SidePrkSnsR1_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 938 SidePrkSnsL2_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 938 ApaMde_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "POA" 3 "PPA" 2 "SAPP" 1 "Off" 0 "Null"; +VAL_ 938 ApaActvSd_D_Actl 3 "Dirver_Side" 2 "Passenger_Side" 1 "No_Side" 0 "Null"; +VAL_ 938 PrkAidSwtch_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 938 ApaMde_D_Avail 15 "NotUsed7" 14 "NotUsed6" 13 "NotUsed5" 12 "NotUsed4" 11 "NotUsed3" 10 "NotUsed2" 9 "NotUsed1" 8 "PPA_POA" 7 "SAPP_POA" 6 "POA" 5 "PPA" 4 "SAPP" 3 "SAPP_PPA_POA" 2 "SAPP_PPA" 1 "None" 0 "Null"; +VAL_ 938 PrkAidSnsFrCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 938 PrkAidSnsFrCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 938 PrkAidSnsFlCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 938 PrkAidSnsFlCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 938 PrkBrkEl_B_RqFap 1 "Yes" 0 "No"; +VAL_ 938 RpaChime_D_Rq 15 "Zone15_Chime" 14 "Zone14_Chime" 13 "Zone13_Chime" 12 "Zone12_Chime" 11 "Zone11_Chime" 10 "Zone10_Chime" 9 "Zone9_Chime" 8 "Zone8_Chime" 7 "Zone7_Chime" 6 "Zone6_Chime" 5 "Zone5_Chime" 4 "Zone4_Chime" 3 "Zone3_Chime" 2 "Zone2_Chime" 1 "Zone1_Chime" 0 "No_Chime"; +VAL_ 938 FpaChime_D_Rq 15 "Zone15_Chime" 14 "Zone14_Chime" 13 "Zone13_Chime" 12 "Zone12_Chime" 11 "Zone11_Chime" 10 "Zone10_Chime" 9 "Zone9_Chime" 8 "Zone8_Chime" 7 "Zone7_Chime" 6 "Zone6_Chime" 5 "Zone5_Chime" 4 "Zone4_Chime" 3 "Zone3_Chime" 2 "Zone2_Chime" 1 "Zone1_Chime" 0 "No_Chime"; +VAL_ 938 PrkAidMsgTxt_D_Rq 15 "All_Sns_Blk" 14 "R_Sns_ON_F_Sns_Blk" 13 "R_Sns_Blk_F_Sns_ON" 12 "R_Sns_Inactive_Trlr_atch" 11 "Not_Avail_Trlr_attchd" 10 "Fail_Mode_no_Chime" 9 "Fail_Mode_with_Chime" 8 "R_Sns_Trlr_F_Sns_Blk" 7 "NotUsed3" 6 "Park_Sys_Alternate_Mode" 5 "R_Snsrs_On_F_Snsrs_On" 4 "NotUsed2" 3 "Reset_Message_Warn" 2 "R_Snsrs_Off_F_Snsrs_On" 1 "R_Snsrs_On_F_Snsrs_Off" 0 "All_Park_Sensors_Off"; +VAL_ 938 SidePrkSnsL1_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 938 PrkAidAudioMute_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 939 ApaBrk_D_Rq 3 "NotUsed" 2 "LowDecel" 1 "HighDecel" 0 "NoRequest"; +VAL_ 939 SidePrkSnsR4_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 939 SidePrkSnsR3_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 939 SidePrkSnsL4_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 939 SidePrkSnsL3_D_Stat 15 "NotUsed" 14 "NotFullyScannedYet" 13 "NoObjectInSector" 12 "Zone12" 11 "Zone11" 10 "Zone10" 9 "Zone9" 8 "Zone8" 7 "Zone7" 6 "Zone6" 5 "Zone5" 4 "Zone4" 3 "Zone3" 2 "Zone2" 1 "Zone1" 0 "Off"; +VAL_ 939 PrkAidChime_D_Stat 3 "Fault" 2 "No_Data_Exists" 1 "On" 0 "Off"; +VAL_ 939 PrkAidSnsRlCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 939 PrkAidSnsRrCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 939 PrkAidSnsRrCntr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 939 PrkAidSnsRlCrnr_D_Stat 15 "Zone_15" 14 "Zone_14" 13 "Zone_13" 12 "Zone_12" 11 "Zone_11" 10 "Zone_10" 9 "Zone_9" 8 "Zone_8" 7 "Zone_7" 6 "Zone_6" 5 "Zone_5" 4 "Zone_4" 3 "Zone_3" 2 "Zone_2" 1 "Zone_1" 0 "Off"; +VAL_ 939 PrkAidRear_D_Stat 3 "Faulted" 2 "Unused" 1 "Enabled" 0 "Disabled"; +VAL_ 939 PrkAidFront_D_Stat 3 "Faulted" 2 "Unused" 1 "Enabled" 0 "Disabled"; +VAL_ 939 PrkAid_D_Falt 7 "NotUsed2" 6 "NotUsed1" 5 "Failure_Front_PSM_Sensors" 4 "No_Data_Exists" 3 "Failure_Rear_Sensors" 2 "Speaker_Fault" 1 "ECU_Fault" 0 "No_Fault"; +VAL_ 939 ApaLongCtrlEnbl_D_Rq 1 "Enable" 0 "Disable"; +VAL_ 939 PrkAidLamp_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 937 TrnRng_D_RqFap 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Backwards" 3 "Forwards" 2 "NoMotion" 1 "Immobilize" 0 "NoRequest"; +VAL_ 937 FapLcDistToObj_L_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 936 ApaButtnPrssd_B_Stat 1 "Pressed" 0 "Not_Pressed"; +VAL_ 936 ApaSys_D_Stat 7 "Faulty" 6 "Finished" 5 "NotAccessible" 4 "ApaCancelled" 3 "Overspeed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 936 ApaSteWhl_D_RqDrv 3 "TakeControl" 2 "RemoveHands" 1 "NoRequest" 0 "Null"; +VAL_ 936 ApaSteScanMde_D_Stat 3 "Steering" 2 "Scanning" 1 "NotScanning" 0 "Null"; +VAL_ 936 ApaSelSapp_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; +VAL_ 936 ApaSelPpa_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; +VAL_ 936 ApaSelPoa_D_Stat 3 "NotConfigured" 2 "NotSelectable" 1 "Selectable" 0 "Null"; +VAL_ 936 ApaScan_D_Stat 3 "ParkSlotReady" 2 "ParkSlotFound" 1 "NoParkSlot" 0 "Null"; +VAL_ 936 ApaLongCtl_D_RqDrv 7 "NotUsed3" 6 "NotUsed2" 5 "ReleaseBrake" 4 "DriveBackward" 3 "DriveForward" 2 "Stop" 1 "NoRequest" 0 "Null"; +VAL_ 936 ApaGearShif_D_RqDrv 7 "NotUSed2" 6 "NotUsed1" 5 "ShiftToP" 4 "ShiftToN" 3 "ShiftToD" 2 "ShiftToR" 1 "NoRequest" 0 "Null"; +VAL_ 936 ApaActvSide2_D_Stat 3 "NoSide" 2 "Right" 1 "Left" 0 "Null"; +VAL_ 936 ApaAcsy_D_RqDrv 7 "CloseDoor" 6 "SelectSideRight" 5 "SelectSideLeft" 4 "CheckForObject" 3 "PressApaButton" 2 "SelectSide" 1 "NoRequest" 0 "Null"; +VAL_ 936 ApaTrgtDist_D_Stat 15 "Step15" 14 "Step14" 13 "Step13" 12 "Step12" 11 "Step11" 10 "Step10" 9 "Step9" 8 "Step8" 7 "Step7" 6 "Step6" 5 "Step5" 4 "Step4" 3 "Step3" 2 "Step2" 1 "Step1" 0 "Off"; +VAL_ 936 ApaChime_D_Rq 7 "NotUsed2" 6 "NotUsed1" 5 "Warning_Chime" 4 "Finish_Chime" 3 "Stop_Now_Chime" 2 "Spot_Ready_Chime" 1 "Spot_Found_Chime" 0 "No_Chime"; +VAL_ 936 EPASExtAngleStatReq 1 "Request" 0 "NoRequest"; +VAL_ 936 ExtSteeringAngleReq2 32767 "Invalid" 32766 "Unknown"; +VAL_ 877 VehElEffAvg_No_Dsply 127 "Faulty" 126 "NoDataExists"; +VAL_ 877 PwFlwFuelDrv_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "FlwFromFuelToAllWhls" 2 "FlwFromFuelToFrontWhls" 1 "FlwFromFuelToRearWhls" 0 "NoFlow"; +VAL_ 877 PwFlwFuelClimt_B_Dsply 1 "On" 0 "Off"; +VAL_ 877 PwFlwFuelBatt_B_Dsply 1 "On" 0 "Off"; +VAL_ 877 PwFlwBattClimt_B_Dsply 1 "On" 0 "Off"; +VAL_ 877 PwFlwBatt_D_Dsply 15 "NotUsed_8" 14 "NotUsed_7" 13 "NotUsed_6" 12 "NotUsed_5" 11 "NotUsed_4" 10 "NotUsed_3" 9 "NotUsed_2" 8 "NotUsed_1" 7 "FlwFromWallToBatt" 6 "FlwFromAllWhlsToBatt" 5 "FlwFromBattToAllWhls" 4 "FlwFromFrontWhlsToBatt" 3 "FlwFromBattToFrontWhls" 2 "FlwFromRearWhlsToBatt" 1 "FlwFromBattToRearWhls" 0 "NoFlow"; +VAL_ 588 BattTracSoc2_Pc_Actl 16383 "Faulty" 16382 "NoDataExists"; +VAL_ 588 BattTrac_Te_Actl 1023 "Fault" 1022 "Unknown"; +VAL_ 588 BattTracDiagClr_B_Rq 1 "On" 0 "Off"; +VAL_ 587 BattTracWarnLamp_B_Rq 1 "On" 0 "Off"; +VAL_ 587 BattTracSrvcRqd_B_Rq 1 "On" 0 "Off"; +VAL_ 389 HtrnOvrTeLamp_B_Dsply 1 "On" 0 "Off"; +VAL_ 389 HtrnMil_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 389 HtrnAin_UHi_Actl 1023 "Fault" 1022 "Unknown"; +VAL_ 389 HtrnSrvcRqd_B_Dsply 1 "On" 0 "Off"; +VAL_ 389 HtrnHvilOpen_B_Actl 1 "HVIL_is_Open" 0 "Normal_Operation"; +VAL_ 389 PtWakeupDeltaT_T_Rq 2047 "Fault" 2046 "NoDataExists"; +VAL_ 389 PreCondActv_B_Actl 1 "On" 0 "Off"; +VAL_ 389 DrvCondTpRrDefrs_B_Rq 1 "On" 0 "Off"; +VAL_ 389 BattTrac_I_EstVsc 32767 "Fault" 32766 "NoDataExists"; +VAL_ 1009 ChrgCordUnlock_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 1009 AutoHoldSwtch_D_Stat3 3 "Faulty" 2 "NotUsed" 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1009 TrlrTrgtAcquire_D_Rq 7 "NotUsed_2" 6 "NotUsed_1" 5 "ActivateRVCforTBA" 4 "CancelAcquisition" 3 "RetryAcquisition" 2 "AcquisitionSuccessful" 1 "StartAcquisition" 0 "Inactive"; +VAL_ 1009 TrlrAidCancl_B_Rq 1 "Cancel" 0 "Null"; +VAL_ 1009 CenterStackRing_D_Actl 3 "LimitedOn" 2 "On" 1 "Off" 0 "Null"; +VAL_ 1009 ValetMode_D_Stat 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 1009 TrlrAidSetup_D_Stat 7 "Faulty" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "EnterParameters" 2 "EndSetup" 1 "BeginSetup" 0 "Null"; +VAL_ 360 GsmSrvcRqd_B_Rq 1 "Yes" 0 "No"; +VAL_ 360 TrnGearPwmFalt_B_Actl 1 "Yes" 0 "No"; +VAL_ 360 GearButtnStuck_B_Actl 1 "Yes" 0 "No"; +VAL_ 122 VehStrtInhbt_B_RqBatt 1 "Yes" 0 "No"; +VAL_ 122 BattTracOffFst_D_Actl 3 "Unexpected_Contactor_Open" 2 "Restraints_Impact_Event" 1 "Interlock_Open" 0 "Normal"; +VAL_ 122 BattTracOff_B_Actl 1 "Yes" 0 "No"; +VAL_ 122 BattTracMil_D_Rq 3 "Not_Used" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 122 BattTrac_U_Actl 1023 "Fault" 1022 "Unknown"; +VAL_ 122 BattTrac_I_Actl 32767 "Fault" 32766 "Unknown"; +VAL_ 90 TrnGsmNtmState_D_Actl 3 "Faulty" 2 "Neutral_Tow_Mode" 1 "Car_Wash_Mode" 0 "None"; +VAL_ 90 DrQltyDrv_D_StatGsm 7 "Faulty" 6 "NoDataExists" 5 "NotUsed2" 4 "NotUsed1" 3 "ClosedDegraded" 2 "OpenDegraded" 1 "ClosedOkay" 0 "OpenOkay"; +VAL_ 90 TrnBtsiOvrrd_B_Stat 1 "Override" 0 "Null"; +VAL_ 90 GsmGearMsgTxt_D_Rq 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 90 TrnRng_D_RqGsm 15 "Fault" 14 "UnknownPosition" 13 "Undefined_2" 12 "Undefined_1" 11 "_6" 10 "_5" 9 "_4" 8 "_3" 7 "_2" 6 "_1" 5 "Low" 4 "Sport_DriveSport" 3 "Drive" 2 "Neutral" 1 "Reverse" 0 "Park"; +VAL_ 90 PrkBrkActv_D_RqGsmGear 3 "NotUsed" 2 "RequestParkBrakeEngage" 1 "NoRequest" 0 "Null"; +VAL_ 90 TrnValidGearRq_D_Stat 3 "Valid_Request" 2 "Valid_Degraded_Request" 1 "Invalid_Request" 0 "No_Request"; +VAL_ 90 TrnGearButtn_U_Actl 255 "Fault"; +VAL_ 90 TrnGearButtn_B_ActlR2 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlR1 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlR0 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlP2 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlP1 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlP0 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlN2 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlN1 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlN0 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlM2 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlM1 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlM0 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlD2 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlD1 1 "Yes" 0 "No"; +VAL_ 90 TrnGearButtn_B_ActlD0 1 "Yes" 0 "No"; +VAL_ 90 TrnGear_D_RqDrv 31 "Fault" 30 "NotUsed_25" 29 "NotUsed_24" 28 "NotUsed_23" 27 "NotUsed_22" 26 "Return_to_Park" 25 "NotUsed_20" 24 "NotUsed_19" 23 "NotUsed_18" 22 "NotUsed_17" 21 "Return_To_Park" 20 "NotUsed_15" 19 "NotUsed_14" 18 "NotUsed_13" 17 "NotUsed_12" 16 "Manual" 15 "Not_Used11" 14 "Not_Used10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "Drive" 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "Neutral" 3 "NotUsed_1" 2 "Reverse" 1 "Park" 0 "No_Gear"; +VAL_ 90 BrkSwtchPos_B_ActlGsm 1 "Yes" 0 "No"; +VAL_ 1091 ParkLampTrlrOut_B_Stat 1 "Out" 0 "Null"; +VAL_ 1091 TrlrLampCtl_D_Stat 3 "NotUsed" 2 "TrlrLampCnnctDrvFailure" 1 "TrlrLampNotCnnctDrvFailure" 0 "Null"; +VAL_ 1091 TrlrBattChrg_D_Stat 3 "Reverse" 2 "Normal" 1 "Low" 0 "Null"; +VAL_ 1091 StopLampTrlrOut_B_Stat 1 "Out" 0 "Null"; +VAL_ 1091 TurnLampTrlrRr_B_Stat 1 "Out" 0 "Null"; +VAL_ 1091 TurnLampTrlrRl_B_Stat 1 "Out" 0 "Null"; +VAL_ 1091 TrlrLampCnnct_B_Actl 1 "Yes" 0 "No"; +VAL_ 138 SteWhlRelCalib_An_Sns 32767 "Fault" 32766 "NoDataExists"; +VAL_ 131 AccButtnGapDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 HeadLghtHiCtrl_D_RqAhb 7 "NotUsed2" 6 "NotUsed1" 5 "Auto_HiBeam" 4 "Auto_LoBeam" 3 "Flash" 2 "Man_HiBeam" 1 "Man_LoBeam" 0 "Null"; +VAL_ 131 AhbStat_B_Dsply 1 "On" 0 "Off"; +VAL_ 131 WiprFrontSwtch_D_Stat 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "PositionNotDetermined" 8 "High" 7 "Low" 6 "Position6" 5 "Position5" 4 "Position4" 3 "Position3" 2 "Position2" 1 "Position1" 0 "Off"; +VAL_ 131 HeadLghtHiOn_B_StatAhb 1 "On" 0 "Off"; +VAL_ 131 HeadLghtHiFlash_D_Actl 3 "NotUsed" 2 "High" 1 "Flash_to_Pass" 0 "Null"; +VAL_ 131 TjaButtnOnOffPress 1 "Pressed" 0 "Not_Pressed"; +VAL_ 131 AccButtnGapTogglePress 1 "Pressed" 0 "Not_Pressed"; +VAL_ 131 HeadLghtHiFlash_D_Stat 3 "NotUsed" 2 "High" 1 "Flash_to_Pass" 0 "Null"; +VAL_ 131 WiprFront_D_Stat 15 "NO_DATA_EXISTS" 14 "STALLED" 13 "RESERVED" 12 "AUTO_ADJUST" 11 "COURTESYWIPE" 10 "AUTO_HIGH" 9 "AUTO_LOW" 8 "WASH" 7 "MIST_FLICK" 6 "MAN_HIGH" 5 "MAN_LOW" 4 "MAN_INT_ON" 3 "MAN_INT_OFF" 2 "OFF_MOVING" 1 "AUTO_OFF" 0 "OFF"; +VAL_ 131 TurnLghtSwtch_D_Stat 3 "Unused_Treat_As_Off" 2 "Right" 1 "Left" 0 "Off"; +VAL_ 131 LghtAmb_D_Sns 7 "No_Data_Exists" 6 "Unused2" 5 "Unused1" 4 "Tunnel_Off" 3 "Tunnel_On" 2 "Twilight" 1 "Light" 0 "Dark"; +VAL_ 131 AccButtnGapIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 AslButtnOnOffPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 AslButtnOnOffCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcButtnOnPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcButtnOnOffPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcButtnOnOffCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcButtnOffPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAsllButtnResPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnSetPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnSetIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnSetDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnResIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnResDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnOnPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnOnOffCncl 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnOffCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnIndxIncPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnIndxDecPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnDeny_B_Actl 1 "Yes" 0 "No"; +VAL_ 131 CcAslButtnCnclResPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 CcAslButtnCnclPress 1 "Button_Pressed" 0 "Button_Not_Pressed"; +VAL_ 131 LaSwtchPos_D_Stat 3 "Fault" 2 "Unused" 1 "Pressed" 0 "Open"; +VAL_ 787 DrTgateChime2_D_Rq 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Long_Repeated" 3 "Fast" 2 "Short" 1 "Long" 0 "Off"; +VAL_ 787 DrTGate_D_Rq 3 "NotUsed" 2 "Closing" 1 "Opening" 0 "Not_Moving"; +VAL_ 787 PwLftgtIntSw_B_Stat 1 "Pressed" 0 "Null"; +VAL_ 787 Power_Liftgate_Mode_Stt 2 "Unused" 3 "Not_Supported" 1 "Enabled" 0 "Disabled"; +VAL_ 953 BattRgenLoDChrg_D_Rq 3 "DoNotCare" 2 "Retain" 1 "Closed" 0 "Open"; +VAL_ 953 BattRgenLoChrg_D_Rq 3 "DoNotCare" 2 "Retain" 1 "Closed" 0 "Open"; +VAL_ 953 ChrgCordLck_B_Stat 1 "Unlock" 0 "Null"; +VAL_ 953 WakeAlarm3_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; +VAL_ 953 WakeAlarm2_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; +VAL_ 953 WakeAlarm1_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; +VAL_ 953 WakeAlarm0_D_Stat 3 "PublisherReset" 2 "Wake" 1 "AlarmRunning" 0 "AlarmOff"; +VAL_ 1093 TrlBrkInitOut_D_Stat 3 "Heavy" 2 "Medium" 1 "Light" 0 "Null"; +VAL_ 1093 TrlrBrkMde_D_Actl 1 "Electric_Over_Hydraulic" 0 "Electric"; +VAL_ 1093 TrlrBrkDsply_B_Rq 1 "Yes" 0 "No"; +VAL_ 1093 TrlrBrkDcnnt_B_Actl 1 "Yes" 0 "No"; +VAL_ 1093 TrlrBrkActCnnct_B_Actl 1 "Yes" 0 "No"; +VAL_ 1093 StopLamp_B_RqTrlrBrk 1 "Yes" 0 "No"; +VAL_ 1093 TrlrBrkCtl_B_Falt 1 "Yes" 0 "No"; +VAL_ 1093 TrlrBrkActCirct_B_Falt 1 "Yes" 0 "No"; +VAL_ 792 ElTrip_L_Dsply 65535 "Fault" 65534 "No_Data_Exists"; +VAL_ 792 ElLongTerm_L_Dsply 16777215 "Fault" 16777214 "No_Data_Exists"; +VAL_ 968 SlMde_D_Rq 3 "IsaNotConfigured" 2 "Manual_Mode" 1 "Auto_Mode" 0 "Null"; +VAL_ 968 IsaOffst_D_Rq 15 "Faulty" 14 "Null" 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero"; +VAL_ 819 Memory_3_SwPsngr_Stat 1 "Pressed" 0 "Null"; +VAL_ 819 Memory_2_SwPsngr_Stat 1 "Pressed" 0 "Null"; +VAL_ 819 Memory_1_SwPsngr_Stat 1 "Pressed" 0 "Null"; +VAL_ 819 BLISLEDStatPassSide 3 "Fault" 2 "Unused" 1 "On" 0 "Off"; +VAL_ 819 WndwPsngrSide_D_Stat 3 "BothWindow_Operating" 2 "RearWindow_Operating" 1 "FrontWindow_Operating" 0 "NoWindows_Operating"; +VAL_ 819 Pasngr_Lock_Sw_Stat 3 "Invalid" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_ 819 ChildLckFdbckRp_B_Stat 1 "Locked" 0 "Unlock"; +VAL_ 818 BLISLEDStatDriverSide 3 "Fault" 2 "Unused" 1 "On" 0 "Off"; +VAL_ 818 WndwDrvSide_D_Stat 3 "BothWindow_Operating" 2 "RearWindow_Operating" 1 "FrontWindow_Operating" 0 "NoWindows_Operating"; +VAL_ 818 KeyCylSwDrvDr_D_Stat 3 "NotUsed" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_ 818 Driver_Lock_Sw_Stat 3 "Invalid" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_ 818 ChildLckPw_D_Rq 1 "Active" 0 "Null"; +VAL_ 818 ChildLckFdbckRd_B_Stat 1 "Locked" 0 "Unlock"; +VAL_ 818 RvrseMirrorChime_B_Rq 1 "Yes" 0 "No"; +VAL_ 806 SnowPlowMde_B_Enbl 1 "Enable" 0 "Disable"; +VAL_ 806 StopStrtDrvMde_B_RqBtn 1 "Pressed" 0 "Not_Pressed"; +VAL_ 806 ClimtHeat_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "PtcHtrTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownHeatingReq" 1 "OpportunisticHeatingReq" 0 "NoHeatingRequest"; +VAL_ 806 ClimtCool_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "ElACTestMde" 3 "Defrost_Defog" 2 "FastTempPullDownCoolReq" 1 "OpportunisticCoolingReq" 0 "NoCoolingRequest"; +VAL_ 806 HvacEvap_Te_Actl 1023 "Fault"; +VAL_ 806 HvacAirCond_B_Rq 1 "Yes" 0 "No"; +VAL_ 806 ClimtPw_B_Rq 1 "Yes" 0 "No"; +VAL_ 765 Mc_VehTimeFrmtUsrSel_St 2 "24h_mode" 1 "12h_mode" 0 "Invalid"; +VAL_ 765 Running_Board_Cmd 3 "Unused" 2 "Manually_Deployed" 1 "All_Enabled" 0 "All_Disabled"; +VAL_ 765 EngExhMdeQuiet_D2_Rq 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Track" 3 "Sport" 2 "Normal" 1 "Stealth" 0 "Null"; +VAL_ 765 EdmSailMde_B_RqDrv 1 "On" 0 "Off"; +VAL_ 765 DrvInputRequired_B_Rq 1 "Yes" 0 "No"; +VAL_ 765 AwdRnge_D_ActlIpc 7 "Unknown" 6 "High_Range_2wd" 5 "High_Range_Auto" 4 "High_Range_Locked" 3 "Neutral" 2 "Low_Range_2wd" 1 "Low_Range_Auto" 0 "Low_Range_Locked"; +VAL_ 765 BalrSwtch_D_Stat 3 "NotUsed" 2 "Pressed" 1 "NotPressed" 0 "Null"; +VAL_ 765 BalrMde_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Null"; +VAL_ 765 WaitToStartLamp_D_Falt 3 "NotUsed" 2 "Wait_to_start_lamp_failed" 1 "Diagnosis_not_ready" 0 "Wait_to_start_lamp_OK"; +VAL_ 765 EsaOn_B_Rq 1 "On" 0 "Off"; +VAL_ 765 BttOn_B_Rq 1 "On" 0 "Off"; +VAL_ 765 Btt_L_Actl 127 "Faulty" 126 "NoDataExists"; +VAL_ 765 SelDrvMdeTxtReset_B_Rq 1 "Yes" 0 "No"; +VAL_ 765 SelDrvMdeDsply_B_Avail 1 "Available" 0 "NotAvailable"; +VAL_ 765 Mc_VehUntTrpCoUsrSel_St 0 "TripComputer_metric" 1 "TripComputer_imperial"; +VAL_ 765 Mc_VehUnitTempUsrSel_St 0 "Temperature_deg_c" 1 "Temperature_deg_f"; +VAL_ 765 Mc_VehLangUsrSel_St 30 "Slovak" 29 "Arabic" 28 "Cantonese" 27 "Mandarin_Chinese" 26 "Korean" 25 "Japanese_Kanji" 24 "Japanese_Katakana" 23 "Braz_Portuguese" 22 "EU_Portuguese" 21 "Finish" 20 "Norwegian" 19 "Danish" 18 "Swedish" 17 "Hungarian" 16 "Greek" 15 "Czech" 14 "Polish" 13 "Flemish" 12 "Dutch" 11 "Russian" 10 "Turkish" 9 "Mex_Spanish" 8 "EU_Spanish" 7 "Cana_French" 6 "EU_French" 5 "Italian" 4 "German" 3 "NA_English" 2 "UK_English" 1 "Unknown" 0 "Invalid"; +VAL_ 934 CtaAlrtLeft2_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "AlertZone4" 3 "AlertZone3" 2 "AlertZone2" 1 "AlertZone1" 0 "Off"; +VAL_ 934 CtaBrkLeftMsgTxt_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 934 CtaLeftBrkDecel_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 934 CtaLeftBrkEnbl_B_Rq 1 "Enable" 0 "Disable"; +VAL_ 934 BttLeft_D_Stat 7 "NotUsed" 6 "Disabled" 5 "Off" 4 "OffTemp" 3 "NotConnected" 2 "Pending" 1 "Connected" 0 "NotDetermined"; +VAL_ 934 BttLeft_D_RqDrv 3 "NotUsed" 2 "Request" 1 "NoRequest" 0 "Null"; +VAL_ 934 CtaSnsLeft_D_Stat 3 "Invalid" 2 "System_Failure" 1 "Blocked" 0 "Clear"; +VAL_ 934 SodDetctLeft_D_Stat 4 "Sensor_Blocked" 3 "Sensor_Fault" 2 "Flash_On" 1 "Alert_On" 0 "AlertOff_FlashOff_SensrClr"; +VAL_ 934 CtaLeft_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; +VAL_ 934 CtaAlrtLeft_D_Stat 1 "On" 0 "Off"; +VAL_ 934 SodLeft_D_Stat 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "Invalid" 3 "Disabled" 2 "On" 1 "Trailer_Tow_Off" 0 "Off"; +VAL_ 934 SodSnsLeft_D_Stat 3 "Second_Warning_Audio" 2 "System_Failure" 1 "Blocked" 0 "Clear"; +VAL_ 934 SodAlrtLeft_D_Stat 3 "Bulb_Proveout" 2 "Flash" 1 "On" 0 "Off"; +VAL_ 1072 LscmbbStat_B_Actl 1 "On" 0 "Off"; +VAL_ 1072 HaDsplyCpblty_B_Stat 1 "Available" 0 "NotAvailable"; +VAL_ 1072 AccDeny_B_RqIpc 1 "Yes" 0 "No"; +VAL_ 1072 DrvSlipCtlMde_D_Rq 3 "App_Specific_Off_Mode_3" 2 "App_Specific_Off_Mode_2" 1 "App_Specific_Off_Mode_1" 0 "Default_Mode"; +VAL_ 1072 EngIdlShutDown_B_RqDrv 1 "Inhibit" 0 "No_Inibit"; +VAL_ 1072 HsaMde_D_Rq 3 "Undefined" 2 "Manual" 1 "Automatic" 0 "Off"; +VAL_ 1072 NtrlTowMdeEnbl_B_RqDrv 1 "Yes" 0 "No"; +VAL_ 1072 BulbChkActv_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1072 ParkDetect_Stat 1 "Park" 0 "Not_Park"; +VAL_ 1072 ReducedGuard_D_Rq 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 1072 TrlrBrkMde_D_Rq 1 "ElectricOverHydraulic" 0 "Electric"; +VAL_ 1072 TRLR_SWAY_CONFIG_CMD 1 "On" 0 "Off"; +VAL_ 1072 TRAILER_BRAKE_CONFIG 1 "Yes" 0 "No"; +VAL_ 1072 Power_Liftgate_Mode_Cmd 1 "Enable" 0 "Disable"; +VAL_ 1072 AccEnbl_B_RqDrv 1 "Adaptive_Cruise" 0 "Normal_Cruise"; +VAL_ 1072 OdometerMasterValue 16777215 "Invalid"; +VAL_ 1072 EngOilLife_B_RqReset 1 "Yes" 0 "No"; +VAL_ 1072 ePRNDL_MODE 1 "On" 0 "Off"; +VAL_ 1072 DrvSlipCtlMde_B_Rq2 1 "Pressed" 0 "Not_Pressed"; +VAL_ 1072 MetricActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 1072 KeyTypeChngMykey_D_Rq 3 "Search_PE_BackupSlot" 2 "Clear_All_MyKeys" 1 "Request_New_MyKey" 0 "None"; +VAL_ 1072 ManRgen_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "CustInitManExhFilterClean" 0 "No_Customer_Request"; +VAL_ 909 IgnPsswrdDsply_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 909 ElPwPoint_D_Rq 3 "On" 2 "Off2" 1 "Off1" 0 "Null"; +VAL_ 909 PoliceIdlMde_D_Stat 15 "NotUsed_7" 14 "NotUsed_6" 13 "NotUsed_5" 12 "NotUsed_4" 11 "NotUsed_3" 10 "NotUsed_2" 9 "PepsActive" 8 "Decommissioned" 7 "ActiveFault" 6 "ArmFault" 5 "PrearmedFault" 4 "OffFault" 3 "Active" 2 "Arm" 1 "Prearmed" 0 "Off"; +VAL_ 909 DrLatchMsgTxt_D_Rq 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 909 SecurityMsgTxt_D_Rq 3 "Message3" 2 "Message2" 1 "Message1" 0 "NoMessage"; +VAL_ 909 PrmtrAlrmEvnt_D_Stat 15 "Diag_Tamper" 14 "Trailer" 13 "Shock_Sensor" 12 "Post_Crash" 11 "Panic" 10 "Intrusion" 9 "Inclination" 8 "Ign_Tamper" 7 "LG_Door" 6 "Decklid" 5 "Hood" 4 "PR_Door" 3 "PF_Door" 2 "DR_Door" 1 "DF_Door" 0 "Null"; +VAL_ 909 HeadLghtHiPrmsn_D_Stat 3 "CancelAndSuppress" 2 "Cancel" 1 "Hold" 0 "AllowChange"; +VAL_ 909 SteWhlLckMsgTxt_D_Rq 3 "NotUsed" 2 "Message_2" 1 "Message_1" 0 "No_Message"; +VAL_ 909 immoMsgTxt_D_Rq 15 "Immo_Msg_15" 14 "Immo_Msg_14" 13 "Immo_Msg_13" 12 "Immo_Msg_12" 11 "Immo_Msg_11" 10 "Immo_Msg_10" 9 "Immo_Msg_9" 8 "Immo_Msg_8" 7 "Immo_Msg_7" 6 "Immo_Msg_6" 5 "Immo_Msg_5" 4 "Immo_Msg_4" 3 "Immo_Msg_3" 2 "Immo_Msg_2" 1 "Immo_Msg_1" 0 "Immo_Msg_0_Null"; +VAL_ 909 PrsnlDevcChrgEnbl_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 909 TracKeyMde_D_Stat 3 "NotUsed" 2 "NotActive" 1 "Active" 0 "ModeNotDetermined"; +VAL_ 909 PEBackupSlot_Stats 3 "No_Valid_FOB_In_Slot" 2 "MyKey_FOB_In_Slot" 1 "Standard_FOB_In_Slot" 0 "Null"; +VAL_ 909 KeyMykeyTot_No_Cnt 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero" 15 "Invalid" 14 "Unlimited"; +VAL_ 909 KeyAdmnTot_No_Cnt 13 "Thirteen" 12 "Twelve" 11 "Eleven" 10 "Ten" 9 "Nine" 8 "Eight" 7 "Seven" 6 "Six" 5 "Five" 4 "Four" 3 "Three" 2 "Two" 1 "One" 0 "Zero" 15 "Invalid" 14 "Unlimited"; +VAL_ 963 Illuminated_Entry_Stat 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; +VAL_ 963 Dr_Courtesy_Light_Stat 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; +VAL_ 963 Courtesy_Delay_Status 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; +VAL_ 963 ImpactEvntFdbck_D_Stat 3 "NotUsed" 2 "EventComplete" 1 "EventInProgress" 0 "Normal"; +VAL_ 963 WrlssAcsyChrgInhbt_B_Rq 1 "Yes" 0 "No"; +VAL_ 963 PudLampPsngr_D_Rq 3 "Ramp_Down" 2 "Ramp_Up" 1 "On" 0 "Off"; +VAL_ 963 HeadLampLoOut_B_Stat 1 "Out" 0 "Null"; +VAL_ 963 HeadLghtHiFdbck_D_Stat 3 "NotUsed" 2 "Cancel" 1 "Hold" 0 "Allow_Change"; +VAL_ 963 PudLampDrv_D_Rq 3 "Ramp_Down" 2 "Ramp_Up" 1 "On" 0 "Off"; +VAL_ 963 TrnNotInPrkChime_B_Rq 1 "On" 0 "Off"; +VAL_ 963 PrkLightChime_B_Rq 1 "On" 0 "Off"; +VAL_ 963 KeyInIgnWarn_B_Cmd 1 "On" 0 "Off"; +VAL_ 963 HomeSafeLtChime_B_Rq 1 "On" 0 "Off"; +VAL_ 963 StopLghtOn_B_Stat 1 "On" 0 "Off"; +VAL_ 963 RvrseLghtOn_B_Stat 1 "On" 0 "Off"; +VAL_ 963 PrkLght_D_Stat 3 "Park_Both" 2 "Park_Right" 1 "Park_Left" 0 "Off"; +VAL_ 963 HeadLghtSwtch_D_Stat 3 "Autolamp" 2 "Headlamp" 1 "Parklamp" 0 "Off"; +VAL_ 963 HeadLampLoFrOn_B_Stat 1 "Low" 0 "Not_Low"; +VAL_ 963 HeadLampLoFlOn_B_Stat 1 "Low" 0 "Not_Low"; +VAL_ 963 HeadLampLoActv_B_Stat 1 "On" 0 "Off"; +VAL_ 963 Headlamp_On_Wrning_Cmd 1 "On" 0 "Off"; +VAL_ 963 Park_Brake_Chime_Rqst 1 "On" 0 "Off"; +VAL_ 963 HeadLghtHiOn_B_Stat 1 "On" 0 "Off"; +VAL_ 963 BrkWarnInd_B_Rq 1 "On" 0 "Off"; +VAL_ 963 Brk_Fluid_Lvl_Low 3 "Invalid" 2 "Unknown" 1 "Low" 0 "OK"; +VAL_ 963 ReducedGuard_D_Stat 3 "NotUsed" 2 "Alarm_On" 1 "Alarm_Off_Previously_On" 0 "Alarm_Off"; +VAL_ 963 Perimeter_Alarm_Status 3 "Activated" 2 "Armed" 1 "Prearmed" 0 "Disarmed"; +VAL_ 963 Courtesy_BSave_Stat 3 "Invalid" 2 "Unknown" 1 "No_Effect" 0 "Off"; +VAL_ 963 DrTgateLck_D_Stat 3 "NotUsed" 2 "Unlock" 1 "Lock" 0 "Null"; +VAL_ 963 WndwGlbl_D_Cmd 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "GLEARN" 3 "GCLOSE" 2 "GOPEN" 1 "GSTOP" 0 "Null"; +VAL_ 963 PudLamp_D_Rq 3 "RAMP_DOWN" 2 "RAMP_UP" 1 "ON" 0 "OFF"; +VAL_ 963 DayRnngLampOn_B_Stat 1 "On" 0 "Off"; +VAL_ 963 PerimeterAlarmChimeRq 1 "On" 0 "Off"; +VAL_ 145 VehYawWActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 145 VehRolWActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 145 VehYaw_W_Actl 65535 "Faulty" 65534 "NoDataExists"; +VAL_ 145 VehRol_W_Actl 65535 "Faulty" 65534 "NoDataExists"; +VAL_ 76 FirstRowBuckleMid 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_ 76 SecondRowBucklePsngr 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_ 76 SecondRowBuckleMid 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_ 76 SecondRowBuckleDriver 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_ 76 FirstRowBuckleDriver 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_ 76 RILReq 3 "Not_Used" 2 "Plant_Mode" 1 "On" 0 "Off"; +VAL_ 76 FirstRowBucklePsngr 3 "Unknown" 2 "Unbelted" 1 "Belted" 0 "Faulty"; +VAL_ 76 RstrnImpactEvntStatus 7 "Invalid" 6 "Not_Used_4" 5 "Threshold_2_Exceeded" 4 "Not_Used_3" 3 "Threshold_1_Exceeded" 2 "Not_Used_2" 1 "Not_Used_1" 0 "Normal"; +VAL_ 76 PsngrFrntDetct_D_Actl 3 "Unknown" 2 "Empty" 0 "Faulty" 1 "Occupied"; +VAL_ 76 EDRTriggerEvntSync 1 "Threshold_Exceeded" 0 "Normal"; +VAL_ 76 PassRstrnInd_Req 3 "ABOnNotIllum_OffNotIllum" 2 "AirbagOnNot_Illum_OffIllum" 1 "AirbagOn_Illum_OffNotIllum" 0 "AirbagOn_Illum_Off_Illum"; +VAL_ 65 immoControlCmd_T1 0 "IDLE" 1 "MOTIVE_START_RQST" 2 "NONMOTIVE_START_RQST" 3 "RQST_TARGET1_IDBLOCK1" 4 "RQST_TARGET1_IDBLOCK2" 5 "Unused" 6 "ECHO_TARGET1_IDBLOCK2" 7 "SHUTDOWN"; +VAL_ 1076 HILL_DESC_SW 1 "On" 0 "Off"; +VAL_ 1076 AutoRgen_D_Rq 3 "NotUsed" 2 "AutExhFilterCleanOFF" 1 "AutExhFilterCleanON" 0 "No_Mode_Selected"; +VAL_ 1076 W2S_LAMP_OK 1 "Yes" 0 "No"; +VAL_ 1076 OdoTripRx_B_Actl 1 "Yes" 0 "No"; +VAL_ 1076 DrvSlipCtlMde_B_RqMyKey 1 "On" 0 "Off"; +VAL_ 1076 FuelLvlWarn_D_Actl 3 "NotUsed" 2 "VeryLow" 1 "Low" 0 "OK"; +VAL_ 1076 FuelSecndActv_B_Actl 1 "Yes" 0 "No"; +VAL_ 1076 FUEL_SENSOR_NUM 1 "Dual_Sensors" 0 "Single_Sensor"; +VAL_ 862 AutoStpHvacDelta_I_Est 255 "Fault"; +VAL_ 862 HvacBlwrFront_D_Stat 31 "Not_Used" 20 "Full_On" 19 "95_Percent" 18 "90_Percent" 17 "85_Percent" 16 "80_Percent" 15 "75_Percent" 14 "70_Percent" 13 "65_Percent" 12 "60_Percent" 11 "55_Percent" 10 "50_Percent" 9 "45_Percent" 8 "40_Percent" 7 "35_Percent" 6 "30_Percent" 5 "25_Percent" 4 "20_Percent" 3 "15_Percent" 2 "10_Percent" 1 "5_Percent" 0 "Off"; +VAL_ 862 CabnAmb_Te_Actl 255 "Fault"; +VAL_ 862 ClimtThrmlLoad_No_Actl 255 "Fault"; +VAL_ 931 PtWakeReas_D_Stat 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "ElapsedTime" 5 "ThirdPartyWakeup" 4 "DoorAjar" 3 "EarlyWake" 2 "NonMotiveStart" 1 "MotiveStart" 0 "Null"; +VAL_ 931 VehOnSrc_D_Stat 15 "NotUsed_11" 14 "NotUsed_10" 13 "NotUsed_9" 12 "NotUsed_8" 11 "NotUsed_7" 10 "NotUsed_6" 9 "NotUsed_5" 8 "NotUsed_4" 7 "NotUsed_3" 6 "NotUsed_2" 5 "NotUsed_1" 4 "OverTheAir" 3 "RemoteParkAssist" 2 "RemoteStart" 1 "Manual" 0 "Off"; +VAL_ 931 EngStrtActv_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 931 EngStrt_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 931 DrvInCtl_B_Stat 1 "Yes" 0 "No"; +VAL_ 931 AdvStrt_D_Stat 15 "NotUsed_15" 14 "NotUsed_14" 13 "NotUsed_13" 12 "NotUsed_12" 11 "NotUsed_11" 10 "NotUsed_10" 9 "NotUsed_9" 8 "NotUsed_8" 7 "NotUsed_7" 6 "NotUsed_6" 5 "NotUsed_5" 4 "NotUsed_4" 3 "NotUsed_3" 2 "NotUsed_2" 1 "NotUsed_1" 0 "NoAction"; +VAL_ 931 CrnkInhbt_B_Stat 1 "Inhibit" 0 "NoInhibit"; +VAL_ 931 IgnPreOffActv_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 578 PtLatchActv_B_RqBcm 1 "On" 0 "Off"; +VAL_ 578 immoSecureIdleMode 3 "NotUsed2" 2 "NotUsed1" 1 "Active" 0 "Inactive"; +VAL_ 578 ReFuelSwtchStat_D_Actl 3 "NotUsed2" 2 "NotUsed1" 1 "On" 0 "Off"; +VAL_ 578 FuelPumpPwr_D_Stat 7 "NotUsed3" 6 "NotUsed2" 5 "NotUsed1" 4 "Power_Off_Default" 3 "Power_Off_Command" 2 "Power_Off_Service" 1 "Power_Off_Impact" 0 "Power_On"; +VAL_ 578 BattULo_U_Actl 255 "Fault"; +VAL_ 578 PrkLckCtl_B_Enbl 1 "Enable" 0 "Disable"; +VAL_ 578 PrkLckCtlMsgTxt_D_Rq 3 "BTSI_DI_3" 2 "BTSI_DI_2" 1 "BTSI_DI_1" 0 "Null_BTSI_DI"; +VAL_ 578 BrkTrnShifLck_B_Stat 1 "Shift" 0 "NoShift"; +VAL_ 578 PrkLckCtlUnlck_D_Stat 3 "Trans_And_Steer_Unlckd" 2 "Steering_Unlckd" 1 "Transmission_Unlckd" 0 "Null"; +VAL_ 578 PrkLckCtlTow_B_Enbl 1 "Enable" 0 "Disable"; +VAL_ 578 DriverCrankingReq 1 "Crank_Request" 0 "No_Crank_Request"; +VAL_ 578 EngOff_T_Actl 65535 "Invalid"; +VAL_ 578 DcacElPw_D_Rq 3 "NotUsed" 2 "AC_HighPower_Requested" 1 "AC_LowPower_Requested" 0 "AC_Power_NotRequested"; +VAL_ 578 BattULo_I_Actl 16383 "Fault"; +VAL_ 947 ValetMode_D_Mem 1 "On" 0 "Off"; +VAL_ 947 DrStatDrvErrCnt_B_Stat 1 "Yes" 0 "No"; +VAL_ 947 TurnLghtRight_D_Rq 3 "Seq" 2 "On" 1 "Off" 0 "Null"; +VAL_ 947 TurnLghtRightOn_B_Stat 1 "On" 0 "Off"; +VAL_ 947 TurnLghtLeftOn_B_Stat 1 "On" 0 "Off"; +VAL_ 947 FogLghtRearOn_B_Stat 1 "On" 0 "Off"; +VAL_ 947 Backlit_LED_Status 15 "Unused3" 14 "Unused2" 13 "Unused1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; +VAL_ 947 TurnLghtLeft_D_Rq 3 "Seq" 2 "On" 1 "Off" 0 "Null"; +VAL_ 947 FogLghtFrontOn_B_Stat 1 "On" 0 "Off"; +VAL_ 947 IgnKeyType_D_Actl 15 "Invalid" 14 "Unknown" 3 "Key_Not_Prgrm_Read_Failure" 2 "Key_In_Ign_My_Key" 1 "Key_In_Ign_Standard_Key" 0 "Key_Read_In_Progress"; +VAL_ 947 Parklamp_Status 3 "Invalid" 2 "Unknown" 1 "On" 0 "Off"; +VAL_ 947 Litval 255 "Invalid" 254 "Unknown" 5 "Day" 4 "Twilight_4" 3 "Twilight_3" 2 "Twilight_2" 1 "Twilight_1" 0 "Night"; +VAL_ 947 Key_In_Ignition_Stat 1 "In" 0 "Out"; +VAL_ 947 Ignition_Status 0 "Unknown" 1 "Off" 15 "Invalid" 8 "Start" 4 "Run" 2 "Accessory"; +VAL_ 947 Dimming_Lvl 255 "Invalid" 254 "Unknown" 18 "Day_6" 17 "Day_5" 16 "Day_4" 15 "Day_3" 14 "Day_2" 13 "Day_1" 12 "Night_12" 11 "Night_11" 10 "Night_10" 9 "Night_9" 8 "Night_8" 7 "Night_7" 6 "Night_6" 5 "Night_5" 4 "Night_4" 3 "Night_3" 2 "Night_2" 1 "Night_1" 0 "Off"; +VAL_ 947 Day_Night_Status 3 "NotUsed" 2 "Night" 1 "Day" 0 "Null"; +VAL_ 947 Remote_Start_Status 3 "Invalid" 2 "Unknown" 1 "Remote" 0 "Null"; +VAL_ 947 DrStatTgate_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 DrStatRr_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 DrStatRl_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 DrStatPsngr_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 DrStatInnrTgate_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 DrStatHood_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 DrStatDrv_B_Actl 1 "Ajar" 0 "Closed"; +VAL_ 947 PrkBrkActv_B_Actl 1 "Active" 0 "Inactive"; +VAL_ 947 LifeCycMde_D_Actl 3 "Transport" 2 "NotUsed" 1 "Factory" 0 "Normal"; +VAL_ 947 Delay_Accy 1 "On" 0 "Off"; +VAL_ 947 CrashEvnt_D_Stat 3 "Invalid" 2 "Fuel_Cutoff_Event" 1 "Deploy_Event" 0 "No_Event"; +VAL_ 947 FuelPmpInhbt_B_Stat 1 "Inhibit" 0 "No_Inibit"; +VAL_ 947 BodySrvcRqd_B_Rq 1 "Yes" 0 "No"; +VAL_ 1084 BattULoState_D_Qlty 3 "OK" 2 "Not_Within_Specifications" 1 "Eval_In_Progress" 0 "Fault"; +VAL_ 1084 BSFault 1 "Fault" 0 "No_Fault"; +VAL_ 1084 BattULo2_Te_Actl 127 "Fault"; +VAL_ 1068 EngStrtInhbt_B_RqBatt 1 "Start_Inhibit" 0 "Dont_Care"; +VAL_ 1068 BattULoChrg_D_Rq 3 "Low_Battery_Temperature" 2 "Charging_Requested" 1 "Chrg_Requested_HighCurrent" 0 "No_Request"; +VAL_ 1068 PwSysULoFalt_D_Stat 15 "Not_Used_6" 14 "LowBatterySOC" 13 "PSS_Shed2_Contin" 12 "Not_Used_4" 11 "Not_Used_3" 10 "Not_Used_2" 9 "BattMonitoringSensorFault" 8 "LowBattVoltDuringPwSrcOn" 7 "LowBatt2_PowerSaveMode" 6 "LowBatt1_Warning" 5 "Overvoltage" 4 "Fault_NoOutput" 3 "Fault_ReducedOutput" 2 "Fault_Nonspecific" 1 "Cluster_Proveout" 0 "No_Fault"; +VAL_ 1068 Shed_T_Eng_Off_B 1 "Active" 0 "Inactive"; +VAL_ 1068 Shed_Feature_Group_ID 16 "PtcHeater" 14 "HtdMirr" 13 "HvacRearBlwr_Third" 12 "HvacRearBlwr_Second" 11 "HvacRearBlwr_First" 31 "All LSHED1 Features" 10 "Htd_Windscrn" 9 "SpltHtdBcklight_HtdMirr" 8 "HtdBcklight_HtdMirr" 7 "HtdCoolSeat_FrtDriver" 6 "HtdCoolSeat_FrtPass" 5 "HtdCoolSeat_RearPass" 4 "HtdCoolSeat_RearDriver" 3 "SmartTrlrTowBattCharge" 2 "Htd_StrWhl" 1 "Htd_Washer_Fluid" 0 "No_LSHED1_Features" 15 "Engine_Coolant_Fan"; +VAL_ 1068 Shed_Drain_Eng_Off_B 1 "Active" 0 "Inactive"; +VAL_ 1068 Shed_Level_Req 7 "Unused_2" 6 "Loads_On" 5 "SHED_ENG_OFF" 4 "SOON_ENG_OFF" 3 "SHED2_CONTIN" 2 "SHED2_TRANS" 1 "SHED1" 0 "NO_SHED"; +VAL_ 1068 ULoRgenTestMde_B_Rq 1 "Request" 0 "NoRequest"; +VAL_ 1068 ChargeMode 7 "Undefined_2" 6 "Undefined_1" 5 "Battery_Identify" 4 "Battery_Refresh" 3 "SlowRegenAllowNoDischarge" 2 "Fast_Regen_Allowed" 1 "Slow_Regen_Allowed" 0 "Conventional_Charging"; +VAL_ 1068 IdleSpeedIncrease_El 1 "Yes" 0 "No"; +VAL_ 1068 Batt_Lo_SoC_B 1 "Active" 0 "Inactive"; +VAL_ 1068 PeriodicElLoad_B_Stat 1 "Active" 0 "Inactive"; +VAL_ 1068 Batt_Crit_SoC_B 1 "Active" 0 "Inactive"; +VAL_ 146 VehVert2_A_Actl 8191 "Faulty" 8190 "NoDataExists"; +VAL_ 146 VehLong2_A_Actl 8191 "Faulty" 8190 "NoDataExists"; +VAL_ 146 VehLat2_A_Actl 8191 "Faulty" 8190 "NoDataExists"; +VAL_ 146 VehVertAActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 146 VehLongAActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 146 VehLatAActl_D_Qf 3 "OK" 2 "Not_Within_Specifications" 1 "No_Data_Exists" 0 "Faulty"; +VAL_ 997 PersIndexCcm_D_Actl 7 "Unused_3" 6 "Unused_2" 5 "Unused_1" 4 "Vehicle" 3 "PERS_4" 2 "PERS_3" 1 "PERS_2" 0 "PERS_1"; +VAL_ 983 CmbbObjRelLong_V_Actl 1023 "Faulty" 1022 "NoDataExists"; +VAL_ 983 CmbbObjRelLat_V_Actl 511 "Faulty" 510 "NoDataExists"; +VAL_ 983 CmbbObjDistLong_L_Actl 1023 "Faulty" 1022 "NoDataExists"; +VAL_ 983 CmbbObjDistLat_L_Actl 511 "Faulty" 510 "NoDataExists"; +VAL_ 983 CmbbObjConfdnc_D_Stat 3 "High" 2 "Medium" 1 "Low" 0 "NotDetermined"; +VAL_ 983 CmbbObjColl_T_Actl 127 "Faulty" 126 "NoDataExists"; +VAL_ 983 CmbbObjClass_D_Stat 15 "NotUsed_9" 14 "NotUsed_8" 13 "NotUsed_7" 12 "NotUsed_6" 11 "NotUsed_5" 10 "NotUsed_4" 9 "NotUsed_3" 8 "NotUsed_2" 7 "NotUsed_1" 6 "Unclassified_Vehicle" 5 "Bicycle" 4 "Pedestrian" 3 "Truck" 2 "Motorcycle" 1 "Vehicle" 0 "Undetermined"; +VAL_ 983 EsaEnbl_D2_Rq 3 "NotConfigured" 2 "Enabled" 1 "Pending" 0 "Disabled"; +VAL_ 980 AdbBrdr1DistRigh_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_ 980 AdbBrdr1DistLeft_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_ 980 AdbMde1_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; +VAL_ 980 AdbIntns1_D_Rq 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 980 AdbBrdr1Up_An_Rq 511 "Faulty" 510 "NoDataExists"; +VAL_ 980 AdbBrdr1Right_An_Rq 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 980 AdbBrdr1Low_An_Rq 511 "Faulty" 510 "NoDataExists"; +VAL_ 980 AdbBrdr1Left_An_Rq 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 979 HandsOffCnfm_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 979 LatCtl_D_Rq 7 "NotUsed4" 6 "NotUsed3" 5 "NotUsed2" 4 "NotUsed1" 3 "InterventionRight" 2 "InterventionLeft" 1 "ContinuousPathFollowing" 0 "NoLateralControl"; +VAL_ 979 LatCtlRampType_D_Rq 3 "Immediately" 2 "Fast" 1 "Medium" 0 "Slow"; +VAL_ 979 LatCtlPrecision_D_Rq 3 "NotUsed2" 2 "NotUsed1" 1 "Precise" 0 "Comfortable"; +VAL_ 976 SuspClkSync_No_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 976 SrpSigValid_B_Stat 1 "True" 0 "False"; +VAL_ 976 SrpHghtRight_L_Actl 511 "Faulty" 510 "NoDataExists"; +VAL_ 976 SrpHghtLeft_L_Actl 511 "Faulty" 510 "NoDataExists"; +VAL_ 976 SrpEventRight_D_Stat 3 "Faulty" 2 "Bump" 1 "Pothole" 0 "NoEvent"; +VAL_ 976 SrpEventLeft_D_Stat 3 "Faulty" 2 "Bump" 1 "Pothole" 0 "NoEvent"; +VAL_ 976 SrpDistRight_L_Actl 511 "Faulty" 510 "NoDataExists"; +VAL_ 976 SrpDistLeft_L_Actl 511 "Faulty" 510 "NoDataExists"; +VAL_ 973 TsrVl2PrmntMsgTxt_D_Rq 3 "NotUsed" 2 "ShowPermanentlyWithSupp" 1 "ShowPermanentlyWithoutSupp" 0 "DoNotShowSignPermanent"; +VAL_ 973 TsrVl1PrmntMsgTxt_D_Rq 3 "NotUsed" 2 "ShowPermanentlyWithSupp" 1 "ShowPermanentlyWithoutSupp" 0 "DoNotShowSignPermanent"; +VAL_ 973 TsrVl2RstrcMsgTxt2_D_Rq 7 "NotUsed" 6 "Time" 5 "Trailer" 4 "Snow" 3 "RainWet" 2 "NoRecognizableRestrictn" 1 "NoSpeedLimitRestrictn" 0 "Null"; +VAL_ 973 TsrVl1RstrcMsgTxt2_D_Rq 7 "NotUsed" 6 "Time" 5 "Trailer" 4 "Snow" 3 "RainWet" 2 "NoRecognizableRestrictn" 1 "NoSpeedLimitRestrictn" 0 "Null"; +VAL_ 973 TsrOvtkMsgTxt2_D_Rq 15 "NotUsed5" 14 "NotUsed4" 13 "NotUsed3" 12 "NotUsed2" 11 "NotUsed1" 10 "LimForTrucksCancelled" 9 "LimForTrucksWoQlfdRstrc" 8 "LimForTrucksWithoutRstrc" 7 "LimAllCancelled" 6 "LimAllWithRstrcTime" 5 "LimAllWithRstrcTrailer" 4 "LimAllWithRstrcSnow" 3 "LimAllWithRstrcRain" 2 "LimAllWithoutQlfdRstrc" 1 "LimAllWithoutRestriction" 0 "OvertakingAllowed"; +VAL_ 973 WwaWarn_B_Rq 1 "On" 0 "Off"; +VAL_ 973 TsrVlUnitMsgTxt_D_Rq 3 "NoDataExists" 2 "Mph" 1 "Kph" 0 "Null"; +VAL_ 973 TsrVLim2MsgTxt_D_Rq 255 "NoLimit" 254 "NotUsed2" 253 "NotUsed1" 252 "NotToBeDisplayed" 251 "LimitCancelled" 31 "1F_FA_Message31_250" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "Null"; +VAL_ 973 TsrVLim1MsgTxt_D_Rq 255 "NoLimit" 254 "NotUsed2" 253 "NotUsed1" 252 "NotToBeDisplayed" 251 "LimitCancelled" 31 "1F_FA_Message31_250" 30 "Message30" 29 "Message29" 28 "Message28" 27 "Message27" 26 "Message26" 25 "Message25" 24 "Message24" 23 "Message23" 22 "Message22" 21 "Message21" 20 "Message20" 19 "Message19" 18 "Message18" 17 "Message17" 16 "Message16" 15 "Message15" 14 "Message14" 13 "Message13" 12 "Message12" 11 "Message11" 10 "Message10" 9 "Message9" 8 "Message8" 7 "Message7" 6 "Message6" 5 "Message5" 4 "Message4" 3 "Message3" 2 "Message2" 1 "Message1" 0 "Null"; +VAL_ 973 TsrVl2StatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; +VAL_ 973 TsrVl2RstrcMsgTxt_D_Rq 3 "NotUsed" 2 "NoRecognizableRestriction" 1 "NoSpeedLimitRestriction" 0 "Null"; +VAL_ 973 TsrVl1StatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; +VAL_ 973 TsrVl1RstrcMsgTxt_D_Rq 3 "NotUsed" 2 "NoRecognizableRestriction" 1 "NoSpeedLimitRestriction" 0 "Null"; +VAL_ 973 TsrStatMsgTxt_D_Rq 7 "NotUsed" 6 "NoDataExists" 5 "TSR_Error" 4 "Available_NavigationOnly" 3 "Available_CameraOnly" 2 "Available_FusionMode" 1 "TSR_Off" 0 "Null"; +VAL_ 973 TsrOvtkStatMsgTxt_D_Rq 3 "LimitOutdated" 2 "LimitReiable" 1 "LimitChanged" 0 "Null"; +VAL_ 973 TsrOvtkMsgTxt_D_Rq 7 "LimForTrucksCancelled" 6 "LimForTrucksWoQlfdRstrc" 5 "LimForTrucksWithoutRstrc" 4 "LimAllCancelled" 3 "LimAllWithoutQlfdRstrc" 2 "LimAllWithoutRestriction" 1 "OvertakingAllowed" 0 "Null"; +VAL_ 973 TsrOswWarnMsgTxt_D_Rq 3 "NotUsed" 2 "True" 1 "False" 0 "Null"; +VAL_ 973 TsrMsgTxt_D_Rq 15 "NotUsed6" 14 "NotUsed5" 13 "NotUsed4" 12 "NotUsed3" 11 "NotUsed2" 10 "NotUsed1" 9 "RecgnzdSignNotUsblForDsply" 8 "LimitedSystemPerformance" 7 "OffRoad" 6 "RegionNotSupported" 5 "CountryNotSupported" 4 "WrngNavDatIncompDatCarrier" 3 "NoNavDataAvailable" 2 "NoNavAvailableSwitchedOff" 1 "NoInformationAllOK" 0 "Null"; +VAL_ 970 LkaDrvOvrrd_D_Rq 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Level_0"; +VAL_ 970 LkaActvStats_D2_Req 7 "NotUsed" 6 "LkaIncrIntervRight" 5 "LkaSupprRight" 4 "LkaStandIntervRight" 3 "LkaSupprLeft" 2 "LkaStandIntervLeft" 1 "LkaIncrIntervLeft" 0 "LkaNoInterv"; +VAL_ 970 LaRefAng_No_Req 4095 "Fault"; +VAL_ 970 LaRampType_B_Req 1 "Quick" 0 "Smooth"; +VAL_ 970 LaCurvature_No_Calc 4095 "Fault"; +VAL_ 970 LdwActvStats_D_Req 7 "LDW_Suppress_Right_Left" 6 "Not_Used2" 5 "LDW_Suppress_Right" 4 "LDW_Warning_Right" 3 "LDW_Suppress_Left" 2 "LDW_Warning_Left" 1 "LDW_DemoVibration" 0 "LDW_Idle"; +VAL_ 970 LdwActvIntns_D_Req 3 "High" 2 "Medium" 1 "Low" 0 "None"; +VAL_ 962 AdbBrdr3DistRigh_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_ 962 AdbBrdr3DistLeft_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_ 962 AdbMde3_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; +VAL_ 962 AdbIntns3_D_Rq 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 962 AdbBrdr3Up_An_Rq 511 "Faulty" 510 "NoDataExists"; +VAL_ 962 AdbBrdr3Right_An_Rq 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 962 AdbBrdr3Low_An_Rq 511 "Faulty" 510 "NoDataExists"; +VAL_ 962 AdbBrdr3Left_An_Rq 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 961 AdbBrdr2DistRigh_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_ 961 AdbBrdr2DistLeft_D_Stat 15 "DistGreater800m" 14 "Dist700mTo800m" 13 "Dist600mTo700m" 12 "Dist500mTo600m" 11 "Dist400mTo500m" 10 "Dist300mTo400m" 9 "Dist200mTo300m" 8 "Dist175mTo200m" 7 "Dist150mTo175m" 6 "Dist125mTo150m" 5 "Dist100mTo125m" 4 "Dist75mTo100m" 3 "Dist50mTo75m" 2 "Dist25mTo50m" 1 "Dist15mTo25m" 0 "Dist0mTo15m"; +VAL_ 961 AdbMde2_D_Rq 3 "MarkerLightFlashing" 2 "MarkerLightConstant" 1 "Spot" 0 "None"; +VAL_ 961 AdbIntns2_D_Rq 3 "Maximum" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 961 AdbBrdr2Up_An_Rq 511 "Faulty" 510 "NoDataExists"; +VAL_ 961 AdbBrdr2Right_An_Rq 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 961 AdbBrdr2Low_An_Rq 511 "Faulty" 510 "NoDataExists"; +VAL_ 961 AdbBrdr2Left_An_Rq 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 394 AccStopStat_D_Dsply 3 "PressResume" 2 "Stopped" 1 "ResumeReady" 0 "NoDisplay"; +VAL_ 394 AccTrgDist2_D_Dsply 15 "DIST_ACTIVE_13_Farthest" 14 "DIST_ACTIVE_12" 13 "DIST_ACTIVE_11" 12 "DIST_ACTIVE_10" 11 "DIST_ACTIVE_9" 10 "DIST_ACTIVE_8" 9 "DIST_ACTIVE_7" 8 "DIST_ACTIVE_6" 7 "DIST_ACTIVE_5" 6 "DIST_ACTIVE_4" 5 "DIST_ACTIVE_3" 4 "DIST_ACTIVE_2" 3 "DIST_ACTIVE_1_Closest" 2 "DIST_ACTIVE_No_Target" 1 "DIST_STANDBY" 0 "DIST_OFF"; +VAL_ 394 AccStopRes_B_Dsply 1 "Yes" 0 "No"; +VAL_ 394 TjaWarn_D_Rq 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "HardTakeOverLevel2" 2 "HardTakeOverLevel1" 1 "TrafficJamAssistCancel" 0 "NoWarning"; +VAL_ 394 Tja_D_Stat 7 "NotUsed_1" 6 "ActiveWarningRight" 5 "ActiveWarningLeft" 4 "ActiveInterventionRight" 3 "ActiveInterventionLeft" 2 "Active" 1 "Standby" 0 "Off"; +VAL_ 394 TjaMsgTxt_D_Dsply 7 "NotUsed_4" 6 "NotUsed_3" 5 "NotUsed_2" 4 "NotUsed_1" 3 "TurnOnAdaptCruiseControl" 2 "TrafficJamAssistSelected" 1 "TrafficJamAssistUnavailabl" 0 "NoMessage"; +VAL_ 394 IaccLamp_D_Rq 3 "NotUsed_2" 2 "NotUsed_1" 1 "DisplayIaccIcon" 0 "DoNotDisplayIaccIcon"; +VAL_ 394 AccMsgTxt_D2_Rq 15 "NotUsed_1" 14 "NCC_Enabled_Warning" 13 "IACC_TJA_Selected" 12 "ACC_TJA_Selected" 11 "IACC_Selected" 10 "Press_Brake_To_Hold" 9 "Only_Following_In_Low_Spd" 8 "TJA_Unavailable" 7 "Shift_Down" 6 "IACC_Unavailable" 5 "ACC_Selected" 4 "ACC_Overridden" 3 "Brake_Capacity_Warning" 2 "ACC_Cancelled" 1 "ACC_Unavailable" 0 "No_Text"; +VAL_ 394 FcwDeny_B_Dsply 1 "Yes" 0 "No"; +VAL_ 394 FcwMemStat_B_Actl 1 "On" 0 "Off"; +VAL_ 394 AccTGap_B_Dsply 1 "Yes" 0 "No"; +VAL_ 394 CadsAlignIncplt_B_Actl 1 "Yes" 0 "No"; +VAL_ 394 AccFllwMde_B_Dsply 1 "Yes" 0 "No"; +VAL_ 394 CadsRadrBlck_B_Actl 1 "Yes" 0 "No"; +VAL_ 394 CmbbPostEvnt_B_Dsply 1 "Yes" 0 "No"; +VAL_ 394 AccStopMde_B_Dsply 1 "Yes" 0 "No"; +VAL_ 394 FcwMemSens_D_Actl 3 "FCW_Sensitivity_3" 2 "FCW_Sensitivity_2" 1 "FCW_Sensitivity_1" 0 "Not_Used"; +VAL_ 394 FcwMsgTxt_D_Rq 7 "Undefined_3" 6 "Undefined_2" 5 "Low_Visibility" 4 "Unavailable_DueTo_LowSpeed" 3 "Available" 2 "Unavailable" 1 "Off" 0 "No_Text"; +VAL_ 394 AccWarn_D_Dsply 3 "BrakeReleaseWarn_In_StopMd" 2 "Brake_Capacity_Warning" 1 "Cancel_Warning" 0 "No_Warning"; +VAL_ 394 FcwVisblWarn_B_Rq 1 "On" 0 "Off"; +VAL_ 394 FcwAudioWarn_B_Rq 1 "On" 0 "Off"; +VAL_ 394 AccTGap_D_Dsply 7 "Undefined_2" 6 "Undefined_1" 5 "Time_Gap_5" 4 "Time_Gap_4" 3 "Time_Gap_3" 2 "Time_Gap_2" 1 "Time_Gap_1" 0 "Not_Used"; +VAL_ 394 AccMemEnbl_B_RqDrv 1 "Adaptive_Cruise" 0 "Normal_Cruise"; +VAL_ 394 FdaMem_B_Stat 1 "On" 0 "Off"; +VAL_ 391 HudBlk3_B_Rq 1 "Yes" 0 "No"; +VAL_ 391 HudBlk2_B_Rq 1 "Yes" 0 "No"; +VAL_ 391 HudBlk1_B_Rq 1 "Yes" 0 "No"; +VAL_ 391 HudFlashRate_D_Actl 3 "Unused" 2 "Flash_4Hz_50Prct_DutyCycle" 1 "On" 0 "Off"; +VAL_ 391 CmbbBrkPrchg_D_Rq 3 "Undefined" 2 "Level_2_PreCharge_Request" 1 "Level_1_PreCharge_Request" 0 "No_PreCharge_Request"; +VAL_ 391 CmbbBrkDecel_B_Rq 1 "Yes" 0 "No"; +VAL_ 391 CmbbBaSens_D_Rq 3 "Level_3" 2 "Level_2" 1 "Level_1" 0 "Normal"; +VAL_ 390 AccBrkPulse_B_Rq 1 "True" 0 "False"; +VAL_ 390 AccAutoResum_D_Rq 3 "NotUsed" 2 "Active" 1 "Pending" 0 "Off"; +VAL_ 390 AccBrkPrkEl_B_Rq 1 "Yes" 0 "No"; +VAL_ 390 Cmbb_B_Enbl 1 "Yes" 0 "No"; +VAL_ 390 CmbbOvrrd_B_RqDrv 1 "Yes" 0 "No"; +VAL_ 390 CmbbDeny_B_Actl 1 "Yes" 0 "No"; +VAL_ 390 CmbbEngTqMn_B_Rq 1 "Yes" 0 "No"; +VAL_ 390 AccDeny_B_Rq 1 "Yes" 0 "No"; +VAL_ 390 AccResumEnbl_B_Rq 1 "Yes" 0 "No"; +VAL_ 390 AccCancl_B_Rq 1 "Yes" 0 "No"; +VAL_ 390 AccBrkPrchg_B_Rq 1 "Yes" 0 "No"; +VAL_ 390 AccBrkDecel_B_Rq 1 "Active" 0 "Inactive"; +VAL_ 390 AccStopStat_B_Rq 1 "Yes" 0 "No"; +VAL_ 1153 TerrMde_D_RqDrv 7 "Fail_Safe_Default" 6 "Dynamic_Mode" 5 "Rock_Crawl_Mode" 4 "Mud_Ruts_Mode" 3 "Sand_Mode" 2 "Undefined" 1 "Low_Mu_Mode" 0 "Special_Operating_Mode_Off"; +VAL_ 942 PrkAidDrvDir_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "BackwardNegative" 4 "ForwardNegative" 3 "BackwardPositive" 2 "ForwardPositive" 1 "NoMotion" 0 "DirectionNotKnown"; +VAL_ 942 PrkAidAcsyRear_D_Stat 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 942 PrkAidAcsyFront_D_Stat 3 "NotUsed" 2 "On" 1 "Off" 0 "Null"; +VAL_ 930 BalrWndwRight_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 930 BalrSnsRight_D_Falt 3 "Invalid" 2 "SystemFailure" 1 "Blocked" 0 "Clear"; +VAL_ 930 WndwPsngrRear_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 930 WndwPsngr_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 930 WndwDrvRear_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 930 WndwDrv_D_RqBalrr 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 930 BalrRight_D_Stat 3 "Inhibited" 2 "Disabled" 1 "On" 0 "Off"; +VAL_ 930 BalrMdeSelRight_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 930 BalrMdeRight_D_Stat 3 "NotUsed" 2 "High" 1 "Medium" 0 "Low"; +VAL_ 930 BalrLckRight_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 930 BalrChimeRight_D_Rq 3 "NotUsed" 2 "Soft" 1 "Normal" 0 "Off"; +VAL_ 930 CamraRearOn_B_RqBalrr 1 "Active" 0 "Inactive"; +VAL_ 930 DrLckActv_B_RqBalrr 1 "Active" 0 "Null"; +VAL_ 929 BalrChimeLeft_D_Rq 3 "NotUsed" 2 "Soft" 1 "Normal" 0 "Off"; +VAL_ 929 BalrLeft_D_Stat 3 "Inhibited" 2 "Disabled" 1 "On" 0 "Off"; +VAL_ 929 BalrWndwLeft_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 929 WndwPsngrRear_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 929 WndwPsngr_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 929 WndwDrvRear_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 929 WndwDrv_D_RqBalrl 3 "NotUsed" 2 "Stop" 1 "AutoUp" 0 "NoRequest"; +VAL_ 929 BalrSnsLeft_D_Falt 3 "Invalid" 2 "SystemFailure" 1 "Blocked" 0 "Clear"; +VAL_ 929 BalrMdeSelLeft_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 929 BalrMdeLeft_D_Stat 3 "NotUsed" 2 "High" 1 "Medium" 0 "Low"; +VAL_ 929 BalrLckLeft_B_Stat 1 "Enable" 0 "Disable"; +VAL_ 929 CamraRearOn_B_RqBalrl 1 "Active" 0 "Inactive"; +VAL_ 929 DrLckActv_B_RqBalrl 1 "Active" 0 "Null"; +VAL_ 402 PrkAidSwtch_D_RqMnu 1 "Pressed" 0 "Not_Pressed"; +VAL_ 402 ApaSwtch_D_RqMnu 3 "NotUsed2" 2 "NotUsed1" 1 "Pressed" 0 "Not_Pressed"; +VAL_ 402 ApaMdeStat_D_RqDrv 7 "Faulty" 6 "Off" 5 "NotUsed2" 4 "NotUsed1" 3 "POA" 2 "PPA" 1 "SAPP" 0 "Inactive"; +VAL_ 402 CamraViewSplit_B_Rq 1 "On" 0 "Off"; +VAL_ 402 CamraZoomMan_D_Rq 7 "Unknown" 6 "Invalid" 5 "Zoom_Level_V" 4 "Zoom_Level_IV" 3 "Zoom_Level_III" 2 "Zoom_Level_II" 1 "Zoom_Level_I" 0 "Off"; +VAL_ 402 CamraOvrlStat_D_Rq 1 "On" 0 "Off"; +VAL_ 402 CamraOvrlDyn_D_Rq 1 "On" 0 "Off"; +VAL_ 402 CamAutoTowbarZoom 1 "On" 0 "Off"; +VAL_ 402 DistanceBarSetting 1 "On" 0 "Off"; +VAL_ 924 DcacOut_Pw_Mx 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 924 DcacOut2_Pw_Actl 8191 "Faulty" 8190 "NoDataExists"; +VAL_ 924 DcacOut1_Pw_Actl 8191 "Faulty" 8190 "NoDataExists"; +VAL_ 924 DcacIn_Pw_Mx 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 923 DcacIn_U2_Actl 4095 "Faulty" 4094 "NoDataExists"; +VAL_ 923 DcacIn_U_Actl 4095 "Fault" 4094 "NoDataExists"; +VAL_ 923 DcacIn_I_Actl 2047 "Faulty" 2046 "NoDataExists"; +VAL_ 923 Dcac_Te_Actl 255 "Faulty" 254 "NoDataExists"; +VAL_ 922 DcacBp2BrkrOpn_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacBp1BrkrOpn_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacIpRcBrkrOpn_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacRdy_D2_Stat 3 "Faulted" 2 "RecoverableFault" 1 "Active" 0 "Idle"; +VAL_ 922 DcacOvrld_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacOverTe_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacGfci_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacErr_B_Stat 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacAcUDetct_B_Falt 1 "Faulted" 0 "NotFaulted"; +VAL_ 922 DcacRdy_D_Stat 7 "NotUsed_2" 6 "NotUsed_1" 5 "Faulted" 4 "ProtectionTempearture" 3 "ProtectionOverload" 2 "ProtectionGfci" 1 "Active" 0 "Idle"; +VAL_ 922 DcacPlugPrsnt_B_Stat 1 "Yes" 0 "No"; +VAL_ 922 DcacClntFlw_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; +VAL_ 922 CoolFanDcac_D_Rq 3 "High" 2 "Medium" 1 "Low" 0 "Off"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore b/opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore new file mode 100644 index 0000000000..46fc4e0d88 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/chrysler/.gitignore @@ -0,0 +1 @@ +_*generated.dbc diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc new file mode 100644 index 0000000000..df913561de --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common.dbc @@ -0,0 +1,185 @@ +BO_ 258 STEERING: 8 XXX + SG_ STEERING_ANGLE : 5|14@0+ (0.5,-2048) [-2048|2047] "deg" XXX + SG_ STEERING_RATE : 21|14@0+ (0.5,-2048) [-2048|2047] "deg/s" XXX + SG_ STEERING_ANGLE_HP : 48|4@1+ (0.1,-0.4) [-0.4|0.4] "deg" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 264 ECM_1: 8 XXX + SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ ENGINE_TORQUE : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX + SG_ EXPECTED_ENGINE_TORQUE : 36|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 280 ECM_TRQ: 8 XXX + SG_ ENGINE_TORQ_MAX : 4|13@0+ (.25,-500) [-500|1547.5] "NM" XXX + SG_ ENGINE_TORQ_MIN : 20|13@0+ (.25,-500) [-500|1547.5] "NM" XXX + +BO_ 284 ESP_8: 8 XXX + SG_ BRK_PRESSURE : 3|12@0+ (1,0) [0|1] "" XXX + SG_ Vehicle_Stopped : 7|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_PEDAL : 19|12@0+ (1,0) [0|1] "" XXX + SG_ Vehicle_Speed : 39|16@0+ (0.0078125,0) [0|511.984375] "km/h" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 288 ECM_2: 7 XXX + SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX + SG_ ESC_TORQUE_REQ_ENABLE : 6|1@1+ (1,0) [0|0] "" XXX + SG_ TCM_TORQUE_REQ_ENABLE : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Accelerator_Position : 16|8@1+ (0.4,0) [0|100] "%" XXX + SG_ CRUISE_OVERRIDE : 31|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 47|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 55|8@0+ (1,0) [0|0] "" XXX + +BO_ 320 ESP_1: 8 XXX + SG_ Brake_State : 0|2@1+ (1,0) [0|0] "" XXX + SG_ Brake_Pedal_State : 2|2@1+ (1,0) [0|0] "" XXX + SG_ ACC_Engaged : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Enabled : 23|1@0+ (1,0) [0|1] "" XXX + SG_ Vehicle_Speed : 33|10@0+ (0.5,0) [0|511] "km/h" XXX + SG_ ACC_OFF_REQ : 39|2@0+ (1,0) [0|0] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_PRESSED_ACC : 6|1@0+ (1,0) [0|3] "" XXX + +BO_ 268 ESP_2: 8 ESC + SG_ ESC_TORQUE_REQ : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX + SG_ ACC_TORQUE_REQ_ENABLE : 5|1@1+ (1,0) [0|0] "" XXX + SG_ ESC_TORQUE_REQ_MAX : 6|1@1+ (1,0) [0|0] "" XXX + SG_ ESC_TORQUE_REQ_MIN : 7|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_TORQUE_REQ : 20|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX + SG_ TCS_ACTIVE : 21|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_TORQUE_REQ_MAX : 22|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_BRK_PREP : 40|1@1+ (1,0) [0|0] "" XXX + SG_ DISABLE_FUEL_SHUTOFF : 47|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_REQ_ACTIVE : 48|3@1+ (1,0) [0|0] "" XXX + SG_ COLLISION_BRK_PREP : 51|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" XXX + +BO_ 344 ESP_6: 8 XXX + SG_ WHEEL_SPEED_FL : 5|14@0+ (0.5,0) [0|8191] "rpm" XXX + SG_ WHEEL_SPEED_FR : 21|14@0+ (0.5,0) [0|8191] "rpm" XXX + SG_ WHEEL_SPEED_RL : 37|14@0+ (0.5,0) [0|8191] "rpm" XXX + SG_ WHEEL_SPEED_RR : 53|14@0+ (0.5,0) [0|8191] "rpm" XXX + +BO_ 368 Transmission_Status: 8 XXX + SG_ Gear_State : 2|3@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 464 ORC_1: 8 XXX + SG_ SEATBELT_DRIVER_UNLATCHED : 13|1@0+ (1,0) [0|1] "" XXX + +BO_ 500 DAS_3: 8 XXX + SG_ ENGINE_TORQUE_REQUEST : 4|13@0+ (0.25,-500) [-500|1547.5] "Nm" XXX + SG_ ENGINE_TORQUE_REQUEST_MAX : 7|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_STANDSTILL : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_GO : 6|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_DECEL : 19|12@0+ (0.004885,-16) [-16|4] "m/s2" XXX + SG_ ACC_AVAILABLE : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_ACTIVE : 21|1@0+ (1,0) [0|1] "" XXX + SG_ DISABLE_FUEL_SHUTOFF : 23|1@1+ (1,0) [0|0] "" XXX + SG_ GR_MAX_REQ : 32|4@1+ (1,0) [0|0] "" XXX + SG_ ACC_DECEL_REQ : 36|3@1+ (1,0) [0|0] "" XXX + SG_ ACC_FAULTED : 46|2@1+ (1,0) [0|0] "" XXX + SG_ COLLISION_BRK_PREP : 48|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_BRK_PREP : 49|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 501 DAS_4: 8 XXX + SG_ ACC_SET_SPEED_KPH : 15|8@0+ (1,0) [0|3] "km/h" XXX + SG_ ACC_SET_SPEED_MPH : 23|8@0+ (1,0) [0|3] "mph" XXX + SG_ ACC_DISTANCE_CONFIG_1 : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ACC_DISTANCE_CONFIG_2 : 41|2@0+ (1,0) [0|3] "" XXX + SG_ SPEED_DIGITAL : 63|8@0+ (1,0) [0|255] "mph" XXX + SG_ ACC_STATE : 38|3@0+ (1,0) [0|7] "" XXX + SG_ FCW_OFF : 25|2@0+ (1,0) [0|3] "" XXX + SG_ FCW_ERROR : 27|2@0+ (1,0) [0|3] "" XXX + SG_ FCW_BRAKE_ENABLED : 29|1@0+ (1,0) [0|1] "" XXX + SG_ FCW_BRAKE_DISABLED : 47|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_FAULTED : 50|1@0+ (1,0) [0|1] "" XXX + +BO_ 544 EPS_2: 8 XXX + SG_ LKAS_STATE : 23|4@0+ (1,0) [0|15] "" XXX + SG_ COLUMN_TORQUE : 2|11@0+ (1,-1024) [-1024|1023] "" XXX + SG_ TORQUE_OVERLAY_STATUS : 6|4@0+ (1,0) [0|15] "" XXX + SG_ EPS_TORQUE_MOTOR_RAW : 19|12@0+ (1,-2048) [-2048|2047] "" XXX + SG_ EPS_TORQUE_MOTOR : 34|11@0+ (1,-1024) [-1024|1023] "" XXX + SG_ LKAS_TEMPORARY_FAULT : 38|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_PARK_HAS_CONTROL_2 : 51|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 559 ECM_5: 8 XXX + SG_ Accelerator_Position : 0|8@1+ (0.4,0) [0|100] "%" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 571 CRUISE_BUTTONS: 3 XXX + SG_ ACC_Cancel : 0|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_Distance_Dec : 1|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_Accel : 2|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_Decel : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_Resume : 4|1@0+ (1,0) [0|1] "" XXX + SG_ Cruise_OnOff : 6|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_OnOff : 7|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_Distance_Inc : 8|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 625 DAS_5: 8 XXX + SG_ FCW_STATE : 2|1@1+ (1,0) [0|0] "" XXX + SG_ FCW_DISTANCE : 3|2@1+ (1,0) [0|0] "" XXX + SG_ ACCFCW_MESSAGE : 12|4@1+ (1,0) [0|0] "" XXX + SG_ SET_SPEED_KPH : 24|8@1+ (1,0) [0|250] "km/h" XXX + SG_ WHEEL_TORQUE_REQUEST : 38|15@0+ (1,-7767) [-7767|24999] "Nm" XXX + SG_ WHEEL_TORQUE_REQUEST_ACTIVE : 39|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 669 EPB_1: 3 XXX + SG_ PARKING_BRAKE_STATUS : 11|3@0+ (1,0) [0|7] "" XXX + SG_ COUNTER : 15|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 678 DAS_6: 8 XXX + SG_ LKAS_ICON_COLOR : 1|2@0+ (1,0) [0|3] "" XXX + SG_ LKAS_LANE_LINES : 19|4@0+ (1,0) [0|1] "" XXX + SG_ LKAS_ALERTS : 27|4@0+ (1,0) [0|1] "" XXX + SG_ CAR_MODEL : 15|8@0+ (1,0) [0|255] "" XXX + SG_ AUTO_HIGH_BEAM_ON : 47|1@1+ (1,0) [0|0] "" XXX + SG_ LKAS_DISABLED : 56|1@1+ (1,0) [0|0] "" XXX + +BO_ 720 BSM_1: 6 XXX + SG_ RIGHT_STATUS : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_STATUS : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 792 STEERING_LEVERS: 8 XXX + SG_ TURN_SIGNALS : 0|2@1+ (1,0) [0|3] "" XXX + SG_ HIGH_BEAM_PRESSED : 2|1@0+ (1,0) [0|3] "" XXX + +BO_ 820 BCM_1: 8 XXX + SG_ DOOR_OPEN_FL : 17|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 18|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 19|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 20|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_TRUNK : 22|1@0+ (1,0) [0|1] "" XXX + SG_ PARKING_BRAKE_SWITCH : 23|1@0+ (1,0) [0|1] "" XXX + SG_ TURN_LIGHT_LEFT : 31|1@0+ (1,0) [0|1] "" XXX + SG_ TURN_LIGHT_RIGHT : 30|1@0+ (1,0) [0|1] "" XXX + SG_ HIGH_BEAM_DISPLAY : 58|1@0+ (1,0) [0|1] "" XXX + +VAL_ 320 ACC_OFF_REQ 2 "PERMANENT" 1 "TEMPORARY" 0 "NONE" +VAL_ 368 Gear_State 4 "D" 2 "N" 1 "R" 0 "P" ; +VAL_ 669 PARKING_BRAKE_STATUS 3 "RELEASING" 2 "APPLYING" 1 "APPLIED" 0 "OFF" ; + +CM_ SG_ 258 STEERING_ANGLE_HP "Steering angle high precision"; +CM_ SG_ 264 ENGINE_TORQUE "Effective engine torque"; +CM_ SG_ 264 EXPECTED_ENGINE_TORQUE "Expected Engine Torque based on target engine speed"; +CM_ SG_ 678 LKAS_ICON_COLOR "3 is yellow, 2 is green, 1 is white, 0 is null"; +CM_ SG_ 678 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null"; +CM_ SG_ 678 LKAS_ALERTS "(0x01, 0x02) lane sense off, (0x03, 0x04, 0x06) place hands on steering wheel, 0x07 lane departure detected + place hands on steering wheel, (0x08, 0x09) lane sense unavailable + clean front windshield, 0x0b lane sense and auto high beam unavailable + clean front windshield, 0x0c lane sense unavailable + service required, (0x00, 0x05, 0x0a, 0x0d, 0x0e, 0x0f) null"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py b/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py new file mode 100755 index 0000000000..fa408f1315 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/chrysler/_stellantis_common_ram.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python3 +import os + +chrysler_to_ram = { + "_stellantis_common_ram_dt_generated.dbc": { + 258: 35, + 264: 37, + 268: 113, + 280: 181, + 284: 121, + 288: 123, + 320: 131, + 344: 139, + 368: 147, + 464: 464, + 500: 153, + 501: 232, + 544: 49, + 571: 177, + 559: 157, + 625: 163, + 669: 213, + 678: 250, + 720: 720, + 792: 792, + 820: 657, + }, + "_stellantis_common_ram_hd_generated.dbc": { + 571: 570, + 678: 629, + }, +} + +if __name__ == "__main__": + src = '_stellantis_common.dbc' + chrysler_path = os.path.dirname(os.path.realpath(__file__)) + + for out, addr_lookup in chrysler_to_ram.items(): + with open(os.path.join(chrysler_path, src), encoding='utf-8') as in_f, open(os.path.join(chrysler_path, out), 'w', encoding='utf-8') as out_f: + out_f.write(f'CM_ "Generated from {src}"\n\n') + + wrote_addrs = set() + for line in in_f.readlines(): + if line.startswith(('BO_', 'VAL_')): + sl = line.split(' ') + addr = int(sl[1]) + wrote_addrs.add(addr) + + sl[1] = str(addr_lookup.get(addr, addr)) + line = ' '.join(sl) + out_f.write(line) + + missing_addrs = set(addr_lookup.keys()) - wrote_addrs + assert len(missing_addrs) == 0, f"Missing addrs from {src}: {missing_addrs}" diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc new file mode 100644 index 0000000000..3f4b373843 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_pacifica_2017_hybrid.dbc @@ -0,0 +1,172 @@ +CM_ "IMPORT _stellantis_common.dbc"; + +BO_ 514 SPEED_1: 8 XXX + SG_ SPEED_LEFT : 7|12@0+ (0.071028,0) [0|65535] "m/s" XXX + SG_ SPEED_RIGHT : 23|12@0+ (0.071028,0) [0|1023] "m/s" XXX + +BO_ 653 BRAKE_MODULE: 2 XXX + SG_ BRAKE_PRESSURE : 15|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|4] "" XXX + +BO_ 746 GEAR: 5 XXX + SG_ PRNDL : 2|3@0+ (1,0) [0|7] "" XXX + SG_ GEAR_CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 31|4@0+ (1,0) [0|15] "" XXX + +BO_ 736 TRIP: 8 XXX + SG_ COUNTER : 7|16@0+ (1,0) [0|65535] "Meters" XXX + SG_ COUNTER_2 : 23|16@0+ (1,0) [0|65535] "Meters" XXX + +BO_ 658 LKAS_COMMAND: 6 XXX + SG_ COUNTER : 39|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + SG_ STEERING_TORQUE : 2|11@0+ (1,-1024) [0|1] "" XXX + SG_ LKAS_CONTROL_BIT : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 705 AUTO_PARK_BUTTON: 8 XXX + SG_ AUTO_PARK_TOGGLE_2 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_PARK_TOGGLE_1 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ INCREASING_UNKNOWN : 38|7@0+ (1,0) [0|15] "" XXX + +BO_ 719 AUTO_PARK_SIGNALS_1: 8 XXX + SG_ AUTO_PARK_UNKNOWN_1 : 7|16@0+ (1,0) [0|31] "" XXX + +BO_ 671 AUTO_PARK_REQUEST: 8 XXX + SG_ AUTO_PARK_CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ AUTO_PARK_STATUS : 7|5@0+ (1,0) [0|15] "" XXX + SG_ AUTO_PARK_COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ AUTO_PARK_MODE : 22|2@0+ (1,0) [0|3] "" XXX + SG_ AUTO_PARK_CMD : 2|11@0+ (1,-1024) [0|1] "NM" XXX + +BO_ 784 AUTO_PARK_LESS_INTERESTING: 8 XXX + SG_ INCREASING_UNKNOWN : 55|8@0+ (1,0) [0|7] "" XXX + SG_ AUTO_PARK_PERPENDICULAR_2 : 61|1@0+ (1,0) [0|255] "" XXX + +BO_ 826 AUTO_PARK_SIGNALS_3: 8 XXX + SG_ AUTO_PARK_HAS_CONTROL_3 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HUMAN_HAS_CONTROL : 2|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_PARK_GEAR_1 : 27|4@0+ (1,0) [0|255] "" XXX + SG_ AUTO_PARK_GEAR_2 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ AUTO_PARK_GEAR_3 : 51|4@0+ (1,0) [0|15] "" XXX + +BO_ 332 STEERING_2: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ ENERGY_RELATED : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ STEER_ANGLE_2 : 7|13@0+ (0.3187251,-1307.888) [-360|360] "deg" XXX + +BO_ 331 BRAKE_3: 8 XXX + SG_ BRAKE_RELATED_3 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 608 PARKSENSE_SIGNAL: 8 XXX + SG_ PARKSENSE_DISABLED : 34|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ IN_REVERSE : 10|1@0+ (1,0) [0|255] "" XXX + SG_ AUTO_PARK_HAS_CONTROL_1 : 16|1@0+ (1,0) [0|255] "" XXX + SG_ HUMAN_HAS_CONTROL : 17|1@0+ (1,0) [0|3] "" XXX + +BO_ 729 LKAS_HEARTBIT: 5 XXX + SG_ LKAS_STATUS_OK : 31|16@0+ (1,0) [0|65535] "" XXX + +BO_ 257 ACCEL_RELATED_101: 5 XXX + SG_ ENERGY_OR_RPM : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 825 AUDIBLE_BEEP_339: 2 XXX + SG_ BEEP_339 : 7|16@0+ (1,0) [0|65535] "" XXX + +BO_ 168 ACCEL_RELATED_a8: 8 XXX + SG_ ACCEL_RELATED : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 270 ACCEL_RELATED_10e: 8 XXX + SG_ ACCEL_OR_RPM : 7|16@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ ELECTRIC_MOTOR : 23|16@0+ (1,0) [0|65535] "" XXX + +BO_ 291 ENERGY_RELATED_123: 8 XXX + SG_ ENERGY_GAIN_LOSS : 18|11@0- (1,0) [0|255] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ ENERGY_SMOOTHER_CURVE : 35|12@0+ (1,0) [0|2047] "" XXX + +BO_ 294 ENERGY_RELATED_126: 8 XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_126_1 : 3|12@0+ (1,0) [0|4095] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ UNKNOWN_126_2 : 35|12@0+ (1,0) [0|4095] "" XXX + SG_ ENERGY_GAIN_LOSS_NOISY : 19|12@0+ (1,0) [0|2047] "" XXX + +BO_ 308 ACCEL_GAS_134: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ ACCEL_134 : 46|7@0+ (1,0) [0|127] "" XXX + +BO_ 532 ENERGY_RELATED_214: 8 XXX + SG_ NOISY_SLOWLY_DECREASING : 16|9@0+ (1,0) [0|255] "" XXX + SG_ ENERGY_RELATED : 0|9@0+ (1,0) [0|255] "" XXX + +BO_ 655 CHARGING_MAYBE_28F: 8 XXX + SG_ CHARGING : 1|2@0+ (1,0) [0|3] "" XXX + +BO_ 660 BRAKE_RELATED_294: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_PERHAPS_294 : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 764 ACCEL_RELATED_2FC: 8 XXX + SG_ ACCEL_2FC : 13|6@0+ (1,0) [0|255] "" XXX + +BO_ 816 TRACTION_BUTTON: 8 XXX + SG_ TRACTION_OFF : 19|1@0+ (1,0) [0|3] "" XXX + SG_ TOGGLE_PARKSENSE : 52|1@0+ (1,0) [0|3] "" XXX + +BO_ 878 ACCEL_RELATED_36E: 8 XXX + SG_ ACCEL_OR_RPM_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ACCEL_OR_RPM_1 : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 324 SPEED_2: 8 XXX + SG_ SPEED_2 : 31|16@0+ (0.01,0) [0|255] "m/s" XXX + +BO_ 832 UNKNOWN_340: 8 XXX + SG_ SPEED_DIGITAL : 63|8@0+ (1,0) [0|255] "mph" XXX + +CM_ SG_ 653 BRAKE_PRESSURE "max seems to be 148"; +CM_ SG_ 746 PRNDL "5=L, 4=D, 3=N, 2=R, 1=P"; +CM_ SG_ 320 BRAKE_PRESSED_2 "Value is 5 when brake is pressed by human, 1 when ACC brake"; +CM_ SG_ 320 BRAKE_PRESSED_ACC "set when ACC brakes"; +CM_ SG_ 792 TURN_SIGNALS "1=Left, 2=Right"; +CM_ SG_ 264 ACCEL_PEDAL "not in ACC so seems to be actual pedal. Use for gasPressed"; +CM_ SG_ 544 LKAS_STATE "2 when autopark has control, 8 when is actuatable by lkas, 4 when there is a fault"; +CM_ SG_ 658 LKAS_STEERING_TORQUE "Most sent by stock system is 1024+-230. + is left. typically changes by 2 or 3 each 0.01s"; +CM_ SG_ 678 LKAS_ICON_COLOR "3 is yellow, 2 is green, 1 is white, 0 is null"; +CM_ SG_ 678 LKAS_LANE_LINES "0x01 transparent lines, 0x02 left white, 0x03 right white, 0x04 left yellow with car on top, 0x05 left yellow with car on top, 0x06 both white, 0x07 left yellow, 0x08 left yellow right white, 0x09 right yellow, 0x0a right yellow left white, 0x0b left yellow with car on top right white, 0x0c right yellow with car on top left white, (0x00, 0x0d, 0x0e, 0x0f) null"; +CM_ SG_ 678 LKAS_ALERTS "(0x01, 0x02) lane sense off, (0x03, 0x04, 0x06) place hands on steering wheel, 0x07 lane departure detected + place hands on steering wheel, (0x08, 0x09) lane sense unavailable + clean front windshield, 0x0b lane sense and auto high beam unavailable + clean front windshield, 0x0c lane sense unavailable + service required, (0x00, 0x05, 0x0a, 0x0d, 0x0e, 0x0f) null"; +CM_ SG_ 705 AUTO_PARK_TOGGLE_1 "set briefly when turning on or off self-parking"; +CM_ SG_ 671 AUTO_PARK_CMD "Request Appears to be in NM"; +CM_ SG_ 671 AUTO_PARK_STATUS "1 = IDLE / NO REQUEST 9 = START REQUEST 10 = REQUEST MODE 11 = REQUEST MODE"; +CM_ SG_ 826 AUTO_PARK_GEAR_1 "Reverse=0, Forward=f"; +CM_ SG_ 826 AUTO_PARK_GEAR_2 "Reverse=0, Forward=f"; +CM_ SG_ 826 AUTO_PARK_GEAR_3 "Reverse=0, Forward=f"; +CM_ SG_ 332 STEER_ANGLE_2 "slightly lags the other steer_angle signal. also more noisy."; +CM_ SG_ 608 PARKSENSE_DISABLED "set if parksense is disabled"; +CM_ SG_ 729 LKAS_STATUS_OK "Set to 0x0820 when LKAS system is plugged in."; +CM_ SG_ 825 BEEP_339 "sent every 0.5s. 0050 is no beep. To beep send 4355 or 4155. Used by ParkSense warning."; +CM_ SG_ 270 ELECTRIC_MOTOR "0x7fff indicates electric motor not in use"; +CM_ SG_ 291 ENERGY_GAIN_LOSS "unsure what this actually is"; +CM_ SG_ 291 ENERGY_SMOOTHER_CURVE "unsure what it is, but smoother"; +CM_ SG_ 308 ACCEL_134 "only set when human presses accel pedal"; +CM_ SG_ 532 NOISY_SLOWLY_DECREASING "perhaps battery but do not know"; +CM_ SG_ 816 TRACTION_OFF "set when traction off button is enabled"; +CM_ SG_ 816 TOGGLE_PARKSENSE "sending 3000071ec0ff9000 enables or disables parksense"; +CM_ SG_ 324 SPEED_2 "signal is approx half other speeds"; +CM_ SG_ 501 ACC_SPEED_CONFIG_KPH "speed configured for ACC"; +CM_ SG_ 501 ACC_SPEED_CONFIG_MPH "speed configured for ACC"; +CM_ SG_ 501 CRUISE_STATE "may just be an icon, but seems to indicate different cruise modes: ACC and Non-ACC and engaged state for both."; +CM_ SG_ 625 SPEED "zero on non-acc drives"; + +VAL_ 501 CRUISE_STATE 0 "Off" 1 "CC On" 2 "CC Engaged" 3 "ACC On" 4 "ACC Engaged"; +VAL_ 746 PRNDL 5 "L" 4 "D" 3 "N" 2 "R" 1 "P"; +VAL_ 792 TURN_SIGNALS 2 "Right" 1 "Left"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc new file mode 100644 index 0000000000..c9be635e10 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_dt.dbc @@ -0,0 +1,57 @@ +CM_ "IMPORT _stellantis_common_ram_dt_generated.dbc"; + +BO_ 53 PCM_2: 8 XXX + SG_ ENG_TORQUE_REQ : 3|12@0+ (1,0) [0|7] "" XXX + SG_ ENG_TORQUE_OUT : 19|12@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + +BO_ 133 TCM_1: 8 XXX + SG_ SHIFT_PENDING : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACTUAL_GEAR : 11|4@0+ (1,0) [0|15] "" XXX + SG_ DESIRED_GEAR : 15|4@0+ (1,0) [0|1] "" XXX + SG_ TC_LOCKED : 17|1@1+ (1,0) [0|0] "" XXX + SG_ OUTPUT_SPEED : 31|16@0+ (1,0) [0|65534] "rpm" XXX + SG_ INPUT_SPEED : 47|16@0+ (1,0) [0|65534] "rpm" XXX + SG_ OUTPUT_SPEED_SIGN : 57|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 61|4@0+ (1,0) [0|15] "" XXX + +BO_ 135 ABS_2: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|1] "" XXX + SG_ DRIVER_BRAKE : 15|8@0+ (1,0) [0|1] "" XXX + +BO_ 137 ESP_4: 8 XXX + SG_ Yaw_Rate : 7|16@0+ (0.01,-327.68) [-327.68|327.66] "deg/s" XXX + SG_ Acceleration : 32|8@1+ (0.08,-10.24) [-10.24|10.08] "m/s2" XXX + +BO_ 164 EPS_3: 8 XXX + SG_ DASM_FAULT : 34|1@0+ (1,0) [0|1] "" XXX + SG_ Activation_Status : 48|3@1+ (1,0) [0|1] "" XXX + SG_ Driver_Override : 35|1@0+ (1,0) [0|1] "" XXX + SG_ Hands_on_Wheel : 51|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 166 LKAS_COMMAND: 8 XXX + SG_ STEERING_TORQUE : 10|11@0+ (1,-1024) [0|1] "" XXX + SG_ LKAS_CONTROL_BIT : 24|3@1+ (1,0) [0|1] "" XXX + SG_ DASM_FAULT : 51|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 221 Center_Stack_1: 8 XXX + SG_ LKAS_Button : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Traction_Button : 54|1@0+ (1,0) [0|1] "" XXX + +BO_ 650 Center_Stack_2: 8 XXX + SG_ LKAS_Button : 57|1@1+ (1,0) [0|0] "" XXX + + +CM_ SG_ 133 ACTUAL_GEAR "0xd = P, 0x1-8 = D (actual gear), 0xb = R or N?? TODO find R vs N"; +CM_ SG_ 153 ACC_Engaged "SENT BY FORWARD CAMERA 1 = ACTIVE, 3 = ENGAGED, 0 = DISENGAGED/OFF"; +CM_ SG_ 166 LKAS_CONTROL_BIT "0=IDLE, 1=HAS 2=LKAS 3=ABSD, 4=TJA, 7=SNA"; +CM_ SG_ 250 Auto_High_Beam "1 = HIGH BEAMS OK 0 = HIGH BEAMS OFF "; +CM_ SG_ 250 LKAS_LANE_LINES "9 = LEFT CAUTION, 11 = VERY LEFT CAUTION 10 = RIGHT CAUTION, 14 = VERY RIGHT, 4 = NO LINES DETECTED, 3 = LINES DETECTED, SYSTEM ACTIVE"; +CM_ SG_ 464 Driver_Seatbelt_Status "1 unbuckled 0 buckled"; +CM_ SG_ 792 High_Beam_Lever_Status "1 is high beam, 0 reg"; diff --git a/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc new file mode 100644 index 0000000000..373c041667 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/chrysler/chrysler_ram_hd.dbc @@ -0,0 +1,17 @@ +CM_ "IMPORT _stellantis_common_ram_hd_generated.dbc"; + +BO_ 545 EPS_3: 8 XXX + SG_ DASM_FAULT : 34|1@0+ (1,0) [0|1] "" XXX + SG_ Activation_Status : 48|3@1+ (1,0) [0|1] "" XXX + SG_ Driver_Override : 35|1@0+ (1,0) [0|1] "" XXX + SG_ Hands_on_Wheel : 51|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 630 LKAS_COMMAND: 8 XXX + SG_ STEERING_TORQUE : 10|11@0+ (1,-1024) [0|1] "" XXX + SG_ LKAS_CONTROL_BIT : 24|3@1+ (1,0) [0|1] "" XXX + SG_ DASM_FAULT : 51|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + diff --git a/opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh b/opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh new file mode 100755 index 0000000000..4732a854e5 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/ford/FORD_CADS_64.sh @@ -0,0 +1,2845 @@ +#!/bin/bash + +OUT_FILENAME="../../FORD_CADS_64.dbc" + + +build_bo(){ +id=$1 +# bo=$(($id + 287)) +bo=$(expr $id + 287) + +len=64 +if [ "$id" = "22" ]; then + len=24 +fi + +cat <> ${OUT_FILENAME} +BO_ ${bo} MRR_Detection_0${id}: ${len} MRR +EOF + +build_bo_segment $id "01" +build_bo_segment $id "02" +build_bo_segment $id "03" +if [ "$id" != "22" ]; then + build_bo_segment $id "04" + build_bo_segment $id "05" + build_bo_segment $id "06" +fi +echo "" >> ${OUT_FILENAME} + +} + +build_bo_segment(){ + id=$1 + seg=$2 + base=$((($2 - 1)*72)) +cat <> ${OUT_FILENAME} + SG_ CAN_DET_CONFID_AZIMUTH_${id}_${seg} : $(expr $base + 33)|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_${id}_${seg} : $(expr $base + 56)|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_${id}_${seg} : $(expr $base + 48)|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_${id}_${seg} : $(expr $base + 49)|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_${id}_${seg} : $(expr $base + 0)|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_${id}_${seg} : $(expr $base + 47)|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_${id}_${seg} : $(expr $base + 31)|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_${id}_${seg} : $(expr $base + 15)|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_${id}_${seg} : $(expr $base + 7)|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_${id}_${seg} : $(expr $base + 17)|2@0+ (1,0) [0|3] "" IFV_VFP +EOF +} + + +build_ba(){ +id=$1 +# bo=$(($id + 287)) +ba=$(expr $id + 287) + +len=64 +if [ "$id" = "22" ]; then + len=24 +fi + +cat <> ${OUT_FILENAME} +BA_ "GenMsgSendType" BO_ ${ba} 1; +BA_ "GenMsgILSupport" BO_ ${ba} 1; +BA_ "GenMsgNrOfRepetition" BO_ ${ba} 0; +BA_ "GenMsgCycleTime" BO_ ${ba} 0; +BA_ "NetworkInitialization" BO_ ${ba} 0; +BA_ "GenMsgDelayTime" BO_ ${ba} 0; +EOF + +build_ba_segment $ba $id "01" +build_ba_segment $ba $id "02" +build_ba_segment $ba $id "03" +if [ "$id" != "22" ]; then + build_ba_segment $ba $id "04" + build_ba_segment $ba $id "05" + build_ba_segment $ba $id "06" +fi + +} + +build_ba_segment(){ + ba=$1 + id=$2 + seg=$3 + +cat <> ${OUT_FILENAME} +BA_ "GenSigVtEn" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} "CAN_DET_CONFID_AZIMUTH_${id}_${seg}"; +BA_ "GenSigVtName" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} "CAN_DET_CONFID_AZIMUTH_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_CONFID_AZIMUTH_${id}_${seg} "CAN_DET_CONFID_AZIMUTH_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_SUPER_RES_TARGET_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_SUPER_RES_TARGET_${id}_${seg} "CAN_DET_SUPER_RES_TARGET_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_ND_TARGET_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_ND_TARGET_${id}_${seg} "CAN_DET_ND_TARGET_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_HOST_VEH_CLUTTER_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_HOST_VEH_CLUTTER_${id}_${seg} "CAN_DET_HOST_VEH_CLUTTER_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_VALID_LEVEL_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_VALID_LEVEL_${id}_${seg} "CAN_DET_VALID_LEVEL_${id}_${seg}"; +BA_ "GenSigStartValue" SG_ ${ba} CAN_DET_AZIMUTH_${id}_${seg} 0; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_AZIMUTH_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_AZIMUTH_${id}_${seg} "CAN_DET_AZIMUTH_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_RANGE_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_RANGE_${id}_${seg} "CAN_DET_RANGE_${id}_${seg}"; +BA_ "GenSigStartValue" SG_ ${ba} CAN_DET_RANGE_RATE_${id}_${seg} 0; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_RANGE_RATE_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_RANGE_RATE_${id}_${seg} "CAN_DET_RANGE_RATE_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_DET_AMPLITUDE_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_DET_AMPLITUDE_${id}_${seg} "CAN_DET_AMPLITUDE_${id}_${seg}"; +BA_ "GenSigSendType" SG_ ${ba} CAN_SCAN_INDEX_2LSB_${id}_${seg} 0; +BA_ "GenSigCmt" SG_ ${ba} CAN_SCAN_INDEX_2LSB_${id}_${seg} "CAN_SCAN_INDEX_2LSB_${id}_${seg}"; +EOF +} + +build_val(){ +id=$1 +# bo=$(($id + 287)) +val=$(expr $id + 287) + +cat <> ${OUT_FILENAME} +VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_01 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_02 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_03 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +EOF +if [ "$id" != "22" ]; then +cat <> ${OUT_FILENAME} +VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_04 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_05 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ ${val} CAN_DET_CONFID_AZIMUTH_${id}_06 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +EOF +fi + +} + + +cat < ${OUT_FILENAME} +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: +BU_: MRR +BO_ 1073741824 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX + SG_ New_Signal_943 : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ CAN_SENSOR_VANGLE_OFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_SENSOR_FOV_VER : 0|8@0+ (1,0) [0|255] "deg" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE_QF : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE_REF : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_AUTO_ALIGN_VANGLE : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_MMIC_Temp4 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_MMIC_Temp3 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_MMIC_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_Processor_Temp2 : 0|8@0+ (1,-50) [-50|205] "C" Vector__XXX + SG_ CAN_CHECKSUM : 0|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ CAN_COUNTER : 0|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_VEHICLE_MODE : 0|4@0+ (1,0) [0|15] "" Vector__XXX + SG_ CAN_USC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_USC_CAL_VER_MINOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_SMC_CAL_VER_MAJOR : 0|16@0+ (1,0) [0|65535] "" Vector__XXX + SG_ CAN_HW_VERSION : 0|32@0+ (1,0) [0|4.29497e+09] "" Vector__XXX + SG_ CAN_FAC_TGT_MTG_SPACE_VER : 0|8@0+ (1,-128) [-128|127] "cm" Vector__XXX + SG_ CAN_ANGLE_MISALIGNMENT_VER : 0|10@0+ (0.03125,-10) [-10|21.9688] "deg" Vector__XXX + SG_ CAN_ANGLE_MOUNTING_VOFFSET : 0|8@0+ (0.0625,-8) [-8|7.9375] "deg" Vector__XXX + SG_ CAN_LATCH_FAULTS : 0|64@0+ (1,0) [0|100] "" Vector__XXX + SG_ CAN_ACTIVE_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX + SG_ CAN_HISTORY_FAULTS : 0|64@0+ (1,0) [0|1.84467e+19] "" Vector__XXX + SG_ CAN_SERV_ALIGN_ENABLE : 0|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ CAN_LONG_MOUNTING_OFFSET : 0|8@0+ (0.015625,-2) [-2|1.98438] "" Vector__XXX + SG_ CAN_BEAMWIDTH_VERT : 0|7@0+ (0.125,0) [0|15.875] "deg" Vector__XXX + SG_ CAN_VEHICLE_SPEED_CALC_QF : 0|2@0+ (1,0) [0|3] "" Vector__XXX + +BO_ 34 Active_Fault_Latched_2: 8 MRR + SG_ IPMA_PCAN_DataRangeCheck : 4|1@1+ (1,0) [0|1] "" External_Tool + SG_ IPMA_PCAN_MissingMsg : 3|1@1+ (1,0) [0|1] "" External_Tool + SG_ VINSignalCompareFailure : 2|1@1+ (1,0) [0|1] "" External_Tool + SG_ ModuleNotConfiguredError : 1|1@1+ (1,0) [0|1] "" External_Tool + SG_ CarCfgNotConfiguredError : 0|1@1+ (1,0) [0|1] "" External_Tool + +BO_ 33 Active_Fault_Latched_1: 8 MRR + SG_ Active_Flt_Latched_byte7_bit7 : 63|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit6 : 62|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit5 : 61|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte7_bit4 : 60|1@1+ (1,0) [0|1] "" External_Tool + SG_ ARMtoDSPChksumFault : 59|1@1+ (1,0) [0|1] "" External_Tool + SG_ DSPtoArmChksumFault : 58|1@1+ (1,0) [0|1] "" External_Tool + SG_ HostToArmChksumFault : 57|1@1+ (1,0) [0|1] "" External_Tool + SG_ ARMtoHostChksumFault : 56|1@1+ (1,0) [0|1] "" External_Tool + SG_ LoopBWOutOfRange : 55|1@1+ (1,0) [0|1] "" External_Tool + SG_ DSPOverrunFault : 54|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte6_bit5 : 53|1@1+ (1,0) [0|1] "" External_Tool + SG_ TuningSensitivityFault : 52|1@1+ (1,0) [0|1] "" External_Tool + SG_ SaturatedTuningFreqFault : 51|1@1+ (1,0) [0|1] "" External_Tool + SG_ LocalOscPowerFault : 50|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterPowerFault : 49|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte6_bit0 : 48|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit7 : 47|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit6 : 46|1@1+ (1,0) [0|1] "" External_Tool + SG_ XCVRDeviceSPIFault : 45|1@1+ (1,0) [0|1] "" External_Tool + SG_ FreqSynthesizerSPIFault : 44|1@1+ (1,0) [0|1] "" External_Tool + SG_ AnalogConverterDevicSPIFault : 43|1@1+ (1,0) [0|1] "" External_Tool + SG_ SidelobeBlockage : 42|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte5_bit1 : 41|1@1+ (1,0) [0|1] "" External_Tool + SG_ MNRBlocked : 40|1@1+ (1,0) [0|1] "" External_Tool + SG_ ECUTempHighFault : 39|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterTempHighFault : 38|1@1+ (1,0) [0|1] "" External_Tool + SG_ AlignmentRoutineFailedFault : 37|1@1+ (1,0) [0|1] "" External_Tool + SG_ UnreasonableRadarData : 36|1@1+ (1,0) [0|1] "" External_Tool + SG_ MicroprocessorTempHighFault : 35|1@1+ (1,0) [0|1] "" External_Tool + SG_ VerticalAlignmentOutOfRange : 34|1@1+ (1,0) [0|1] "" External_Tool + SG_ HorizontalAlignmentOutOfRange : 33|1@1+ (1,0) [0|1] "" External_Tool + SG_ FactoryAlignmentMode : 32|1@1+ (1,0) [0|1] "" External_Tool + SG_ BatteryLowFault : 31|1@1+ (1,0) [0|1] "" External_Tool + SG_ BatteryHighFault : 30|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_1p25SupplyOutOfRange : 29|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte3_bit4 : 28|1@1+ (1,0) [0|1] "" External_Tool + SG_ ThermistorOutOfRange : 27|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_3p3DACSupplyOutOfRange : 26|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_3p3RAWSupplyOutOfRange : 25|1@1+ (1,0) [0|1] "" External_Tool + SG_ v_5_SupplyOutOfRange : 24|1@1+ (1,0) [0|1] "" External_Tool + SG_ TransmitterIDFault : 23|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit6 : 22|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit5 : 21|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit4 : 20|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit3 : 19|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte2_bit2 : 18|1@1+ (1,0) [0|1] "" External_Tool + SG_ PCANMissingMsgFault : 17|1@1+ (1,0) [0|1] "" External_Tool + SG_ PCANBusOff : 16|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit7 : 15|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit6 : 14|1@1+ (1,0) [0|1] "" External_Tool + SG_ InstructionSetCheckFault : 13|1@1+ (1,0) [0|1] "" External_Tool + SG_ StackOverflowFault : 12|1@1+ (1,0) [0|1] "" External_Tool + SG_ WatchdogFault : 11|1@1+ (1,0) [0|1] "" External_Tool + SG_ PLLLockFault : 10|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte1_bit1 : 9|1@1+ (1,0) [0|1] "" External_Tool + SG_ RAMMemoryTestFault : 8|1@1+ (1,0) [0|1] "" External_Tool + SG_ USCValidationFault : 7|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit6 : 6|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit5 : 5|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit4 : 4|1@1+ (1,0) [0|1] "" External_Tool + SG_ Active_Flt_Latched_byte0_bit3 : 3|1@1+ (1,0) [0|1] "" External_Tool + SG_ KeepAliveChecksumFault : 2|1@1+ (1,0) [0|1] "" External_Tool + SG_ ProgramCalibrationFlashChecksum : 1|1@1+ (1,0) [0|1] "" External_Tool + SG_ ApplicationFlashChecksumFault : 0|1@1+ (1,0) [0|1] "" External_Tool + +BO_ 500 XCP_MRR_DAQ_RESP: 8 MRR + SG_ MRR_xcp_daq_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_daq_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 499 XCP_MRR_DTO_RESP: 8 MRR + SG_ MRR_xcp_dto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_dto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 497 XCP_MRR_CTO_RESP: 8 MRR + SG_ MRR_xcp_cto_resp_byte7 : 63|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte6 : 55|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte5 : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte4 : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte3 : 31|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte2 : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte1 : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ MRR_xcp_cto_resp_byte0 : 7|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 1900 Ford_Diag_Resp_Phys: 8 MRR + SG_ TesterPhysicalResCCM : 7|64@0+ (1,0) [0|1.84467e+19] "" IFV_Host + +BO_ 261 MRR_Status_SerialNumber: 8 MRR + SG_ CAN_SEQUENCE_NUMBER : 55|16@0+ (1,0) [0|65535] "" External_Tool + SG_ CAN_SERIAL_NUMBER : 7|40@0+ (1,0) [0|1.09951e+12] "" External_Tool + +BO_ 264 MRR_Status_SwVersion: 8 MRR + SG_ CAN_PBL_Field_Revision : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_PBL_Promote_Revision : 39|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Field_Revision : 23|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Promote_Revision : 15|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_SW_Release_Revision : 7|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_PBL_Release_Revision : 31|8@0+ (1,0) [0|255] "" External_Tool + +BO_ 373 MRR_Header_SensorPosition: 8 MRR + SG_ CAN_SENSOR_POLARITY : 55|1@0+ (1,0) [0|1] "" External_Tool + SG_ CAN_SENSOR_LAT_OFFSET : 39|16@0+ (0.01,0) [0|655.35] "cm" External_Tool + SG_ CAN_SENSOR_LONG_OFFSET : 23|16@0+ (0.01,0) [0|655.35] "cm" External_Tool + SG_ CAN_SENSOR_HANGLE_OFFSET : 7|8@0+ (0.0625,-8) [-8|7.9375] "deg" External_Tool + +BO_ 372 MRR_Header_SensorCoverage: 8 MRR + SG_ CAN_SENSOR_FOV_HOR : 39|8@0+ (1,0) [0|255] "deg" IFV_VFP + SG_ CAN_DOPPLER_COVERAGE : 23|8@0+ (1,-128) [-128|127] "m/s" IFV_VFP + SG_ CAN_RANGE_COVERAGE : 7|8@0+ (1,0) [0|255] "m" IFV_VFP + +BO_ 371 MRR_Header_AlignmentState: 8 MRR + SG_ CAN_AUTO_ALIGN_HANGLE_QF : 13|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_ALIGNMENT_STATUS : 51|4@0+ (1,0) [0|11] "" IFV_VFP + SG_ CAN_ALIGNMENT_STATE : 55|3@0+ (1,0) [0|7] "" IFV_VFP + SG_ CAN_AUTO_ALIGN_HANGLE_REF : 11|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP + SG_ CAN_AUTO_ALIGN_HANGLE : 7|10@0+ (0.000341218,-0.174533) [-0.174533|0.174533] "rad" IFV_VFP + +BO_ 369 MRR_Header_Timestamps: 8 MRR + SG_ CAN_DET_TIME_SINCE_MEAS : 39|11@0+ (0.1,0) [0|204.7] "ms" IFV_Host + SG_ CAN_SENSOR_TIME_STAMP : 7|32@0+ (0.1,0) [0|4.29497e+08] "ms" IFV_VFP + +BO_ 368 MRR_Header_InformationDetections: 8 MRR + SG_ CAN_ALIGN_UPDATES_DONE : 55|16@0+ (1,0) [0|65535] "" IFV_VFP + SG_ CAN_SCAN_INDEX : 31|16@0+ (1,0) [0|65535] "" IFV_VFP + SG_ CAN_NUMBER_OF_DET : 47|8@0+ (1,0) [0|255] "" External_Tool + SG_ CAN_LOOK_ID : 23|2@0+ (1,0) [0|3] "" External_Tool + SG_ CAN_LOOK_INDEX : 7|16@0+ (1,0) [0|65535] "" External_Tool + +BO_ 265 MRR_Status_Temp_Volt: 8 MRR + SG_ CAN_BATT_VOLTS : 63|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_1_25_V : 55|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_5_V : 47|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_3_3_V_RAW : 31|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_3_3_V_DAC : 15|8@0+ (0.08,0) [0|20.4] "V" External_Tool + SG_ CAN_MMIC_Temp1 : 39|8@0+ (1,-50) [-50|205] "C" External_Tool + SG_ CAN_Processor_Thermistor : 23|8@0+ (1,-50) [-50|205] "C" External_Tool + SG_ CAN_Processor_Temp1 : 7|8@0+ (1,-50) [-50|205] "C" External_Tool + +EOF + +build_bo "04" + +cat <> ${OUT_FILENAME} +BO_ 351 MRR_Detection_064: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_64 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_64 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_64 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_64 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_64 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_64 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_64 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_64 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_64 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_64 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 350 MRR_Detection_063: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_63 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_63 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_63 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_63 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_63 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_63 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_63 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_63 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_63 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_63 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 349 MRR_Detection_062: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_62 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_62 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_62 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_62 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_62 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_62 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_62 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_62 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_62 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_62 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 348 MRR_Detection_061: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_61 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_61 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_61 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_61 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_61 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_61 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_61 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_61 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_61 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_61 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 347 MRR_Detection_060: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_60 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_60 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_60 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_60 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_60 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_60 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_60 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_60 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_60 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_60 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 346 MRR_Detection_059: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_59 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_59 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_59 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_59 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_59 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_59 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_59 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_59 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_59 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_59 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 345 MRR_Detection_058: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_58 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_58 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_58 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_58 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_58 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_58 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_58 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_58 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_58 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_58 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 344 MRR_Detection_057: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_57 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_57 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_57 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_57 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_57 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_57 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_57 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_57 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_57 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_57 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 343 MRR_Detection_056: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_56 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_56 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_56 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_56 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_56 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_56 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_56 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_56 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_56 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_56 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 342 MRR_Detection_055: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_55 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_55 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_55 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_55 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_55 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_55 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_55 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_55 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_55 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_55 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 335 MRR_Detection_048: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_48 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_48 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_48 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_48 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_48 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_48 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_48 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_48 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_48 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_48 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 334 MRR_Detection_047: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_47 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_47 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_47 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_47 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_47 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_47 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_47 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_47 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_47 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_47 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 333 MRR_Detection_046: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_46 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_46 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_46 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_46 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_46 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_46 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_46 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_46 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_46 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_46 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 332 MRR_Detection_045: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_45 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_45 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_45 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_45 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_45 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_45 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_45 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_45 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_45 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_45 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 331 MRR_Detection_044: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_44 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_44 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_44 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_44 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_44 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_44 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_44 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_44 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_44 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_44 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 330 MRR_Detection_043: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_43 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_43 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_43 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_43 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_43 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_43 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_43 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_43 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_43 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_43 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 329 MRR_Detection_042: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_42 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_42 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_42 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_42 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_42 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_42 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_42 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_42 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_42 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_42 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 328 MRR_Detection_041: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_41 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_41 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_41 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_41 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_41 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_41 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_41 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_41 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_41 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_41 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 327 MRR_Detection_040: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_40 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_40 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_40 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_40 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_40 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_40 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_40 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_40 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_40 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_40 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 325 MRR_Detection_038: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_38 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_38 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_38 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_38 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_38 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_38 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_38 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_38 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_38 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_38 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 324 MRR_Detection_037: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_37 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_37 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_37 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_37 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_37 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_37 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_37 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_37 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_37 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_37 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 323 MRR_Detection_036: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_36 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_36 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_36 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_36 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_36 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_36 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_36 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_36 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_36 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_36 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 322 MRR_Detection_035: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_35 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_35 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_35 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_35 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_35 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_35 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_35 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_35 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_35 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_35 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 321 MRR_Detection_034: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_34 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_34 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_34 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_34 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_34 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_34 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_34 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_34 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_34 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_34 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 320 MRR_Detection_033: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_33 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_33 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_33 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_33 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_33 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_33 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_33 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_33 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_33 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_33 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 319 MRR_Detection_032: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_32 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_32 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_32 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_32 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_32 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_32 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_32 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_32 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_32 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_32 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 318 MRR_Detection_031: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_31 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_31 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_31 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_31 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_31 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_31 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_31 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_31 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_31 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_31 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 317 MRR_Detection_030: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_30 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_30 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_30 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_30 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_30 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_30 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_30 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_30 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_30 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_30 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 316 MRR_Detection_029: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_29 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_29 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_29 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_29 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_29 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_29 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_29 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_29 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_29 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_29 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 314 MRR_Detection_027: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_27 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_27 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_27 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_27 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_27 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_27 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_27 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_27 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_27 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_27 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 313 MRR_Detection_026: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_26 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_26 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_26 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_26 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_26 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_26 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_26 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_26 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_26 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_26 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 312 MRR_Detection_025: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_25 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_25 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_25 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_25 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_25 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_25 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_25 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_25 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_25 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_25 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 311 MRR_Detection_024: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_24 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_24 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_24 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_24 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_24 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_24 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_24 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_24 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_24 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_24 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 310 MRR_Detection_023: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_23 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_23 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_23 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_23 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_23 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_23 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_23 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_23 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_23 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_23 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +EOF + +build_bo "22" +build_bo "21" +build_bo "20" +build_bo "19" +build_bo "18" + +cat <> ${OUT_FILENAME} +BO_ 341 MRR_Detection_054: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_54 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_54 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_54 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_54 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_54 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_54 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_54 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_54 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_54 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_54 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 340 MRR_Detection_053: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_53 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_53 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_53 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_53 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_53 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_53 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_53 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_53 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_53 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_53 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 339 MRR_Detection_052: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_52 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_52 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_52 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_52 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_52 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_52 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_52 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_52 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_52 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_52 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 338 MRR_Detection_051: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_51 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_51 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_51 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_51 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_51 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_51 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_51 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_51 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_51 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_51 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 337 MRR_Detection_050: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_50 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_50 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_50 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_50 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_50 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_50 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_50 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_50 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_50 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_50 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 336 MRR_Detection_049: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_49 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_49 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_49 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_49 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_49 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_49 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_49 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_49 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_49 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_49 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 326 MRR_Detection_039: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_39 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_39 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_39 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_39 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_39 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_39 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_39 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_39 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_39 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_39 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +BO_ 315 MRR_Detection_028: 8 MRR + SG_ CAN_DET_CONFID_AZIMUTH_28 : 33|2@0+ (1,0) [0|3] "" IFV_VFP + SG_ CAN_DET_SUPER_RES_TARGET_28 : 56|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_ND_TARGET_28 : 48|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_HOST_VEH_CLUTTER_28 : 49|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_VALID_LEVEL_28 : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_DET_AZIMUTH_28 : 47|14@0+ (0.0003834,-3.1416) [-3.1416|3.13964] "rad" IFV_VFP + SG_ CAN_DET_RANGE_28 : 31|14@0+ (0.015625,0) [0|255.984] "m" IFV_VFP + SG_ CAN_DET_RANGE_RATE_28 : 15|14@0+ (0.015625,-128) [-128|127.984] "m/s" IFV_VFP + SG_ CAN_DET_AMPLITUDE_28 : 7|7@0+ (1,-64) [-64|63] "dBsm" IFV_VFP + SG_ CAN_SCAN_INDEX_2LSB_28 : 17|2@0+ (1,0) [0|3] "" IFV_VFP + +EOF + +build_bo "17" +build_bo "16" +build_bo "15" +build_bo "14" +build_bo "13" +build_bo "12" +build_bo "11" +build_bo "10" +build_bo "09" +build_bo "08" +build_bo "07" +build_bo "06" +build_bo "05" +build_bo "03" +build_bo "02" + +cat <> ${OUT_FILENAME} +BO_ 256 MRR_Status_CANVersion: 8 MRR + SG_ CAN_USC_SECTION_COMPATIBILITY : 23|16@0+ (1,0) [0|65535] "" External_Tool + SG_ CAN_PCAN_MINOR_MRR : 7|8@0+ (1,0) [0|255] "" IFV_VFP + SG_ CAN_PCAN_MAJOR_MRR : 15|8@0+ (1,0) [0|255] "" IFV_VFP + +BO_ 257 MRR_Status_Radar: 8 MRR + SG_ CAN_INTERFERENCE_TYPE : 11|2@0+ (1,0) [0|3] "" IFV_Host + SG_ CAN_RECOMMEND_UNCONVERGE : 9|1@0+ (1,0) [0|1] "" IFV_Host + SG_ CAN_BLOCKAGE_SIDELOBE_FILTER_VAL : 15|4@0+ (1,0) [0|15] "" IFV_Host + SG_ CAN_RADAR_ALIGN_INCOMPLETE : 8|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_BLOCKAGE_SIDELOBE : 4|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_BLOCKAGE_MNR : 5|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_EXT_COND_NOK : 1|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_ALIGN_OUT_RANGE : 2|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_ALIGN_NOT_START : 0|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_OVERHEAT_ERROR : 3|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_RADAR_NOT_OP : 6|1@0+ (1,0) [0|1] "" IFV_VFP + SG_ CAN_XCVR_OPERATIONAL : 7|1@0+ (1,0) [0|1] "" IFV_VFP + +EOF + +build_bo "01" + +cat <> ${OUT_FILENAME} +BA_DEF_ SG_ "CrossOver_InfoCAN" ENUM "No","Yes"; +BA_DEF_ SG_ "CrossOver_LIN" ENUM "No","Yes","No","Yes"; +BA_DEF_ SG_ "UsedOnPgmDBC" ENUM "No","Yes","No","Yes","No","Yes"; +BA_DEF_ SG_ "ContentDependant" ENUM "No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ SG_ "GenSigTimeoutTime_RCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_GWM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_OCS" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_ABS_ESC" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_CCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_IPMA" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_TSTR" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_SCCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_PSCM" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime__delete" INT 0 100000; +BA_DEF_ SG_ "GenSigTimeoutTime_Generic_BCM" INT 0 100000; +BA_DEF_ BO_ "NmMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "DiagResponse" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "DiagRequest" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "TpTxIndex" INT 0 255; +BA_DEF_ BO_ "DiagState" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "TpApplType" STRING ; +BA_DEF_ BO_ "NmAsrMessage" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "Mulitplexer" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "ConfiguredTransmitter" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "EventRateOfChange" INT 10 10000; +BA_DEF_ BO_ "GenMsgHandlingTypeDoc" STRING ; +BA_DEF_ BO_ "GenMsgHandlingTypeCode" STRING ; +BA_DEF_ BO_ "GenMsgMarked" STRING ; +BA_DEF_ SG_ "GenSigMarked" STRING ; +BA_DEF_ SG_ "GenSigVtIndex" STRING ; +BA_DEF_ SG_ "GenSigVtName" STRING ; +BA_DEF_ SG_ "GenSigVtEn" STRING ; +BA_DEF_ SG_ "GenSigSNA" STRING ; +BA_DEF_ SG_ "GenSigCmt" STRING ; +BA_DEF_ BO_ "GenMsgCmt" STRING ; +BA_DEF_ SG_ "GenSigSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType"; +BA_DEF_ SG_ "GenSigInactiveValue" INT 0 100000; +BA_DEF_ SG_ "GenSigMissingSourceValue" INT 0 1e+09; +BA_DEF_ SG_ "WakeupSignal" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes"; +BA_DEF_ SG_ "GenSigStartValue" INT 0 1e+09; +BA_DEF_ BO_ "GenMsgILSupport" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes"; +BA_DEF_ BO_ "NetworkInitializationCommand" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BO_ "GenMsgSendType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType"; +BA_DEF_ BO_ "GenMsgCycleTime" INT 0 100000; +BA_DEF_ BO_ "GenMsgCycleTimeFast" INT 0 100000; +BA_DEF_ BO_ "GenMsgDelayTime" INT 0 1000; +BA_DEF_ BO_ "GenMsgNrOfRepetition" INT 0 100; +BA_DEF_ BO_ "GenMsgStartDelayTime" INT 0 10000; +BA_DEF_ BO_ "NetworkInitialization" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes"; +BA_DEF_ BO_ "MessageGateway" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes"; +BA_DEF_ BU_ "ILUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BU_ "NetworkInitializationUsed" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes"; +BA_DEF_ BU_ "PowerType" ENUM "No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","No","Yes","Cyclic","OnWrite","vector_leerstring","OnChange","vector_leerstring","IfActive","vector_leerstring","NoSigSendType","No","Yes","No","Yes","No","Yes","FixedPeriodic","Event","EnabledPeriodic","NotUsed","NotUsed","EventPeriodic","NotUsed","NotUsed","NoMsgSendType","No","Yes","No","Yes","No","Yes","No","Yes","Switched","Latched","Sleep","vector_leerstring","vector_leerstring"; +BA_DEF_ BU_ "NodeStartUpTime" INT 0 10000; +BA_DEF_ BU_ "NodeWakeUpTime" INT 0 10000; +BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; +BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; +BA_ "GenMsgCycleTime" BO_ 34 1000; +BA_ "GenMsgSendType" BO_ 34 0; +BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; +BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_DataRangeCheck "IPMA_PCAN_DataRangeCheck"; +BA_ "GenSigVtEn" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; +BA_ "GenSigVtName" SG_ 34 IPMA_PCAN_MissingMsg "IPMA_PCAN_MissingMsg"; +BA_ "GenSigVtEn" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; +BA_ "GenSigVtName" SG_ 34 VINSignalCompareFailure "VINSignalCompareFailure"; +BA_ "GenSigVtEn" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; +BA_ "GenSigVtName" SG_ 34 ModuleNotConfiguredError "ModuleNotConfiguredError"; +BA_ "GenSigVtEn" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; +BA_ "GenSigVtName" SG_ 34 CarCfgNotConfiguredError "CarCfgNotConfiguredError"; +BA_ "GenMsgCycleTime" BO_ 33 1000; +BA_ "GenMsgSendType" BO_ 33 0; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit7 "Active_Flt_Latched_byte7_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit6 "Active_Flt_Latched_byte7_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit5 "Active_Flt_Latched_byte7_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte7_bit4 "Active_Flt_Latched_byte7_bit4"; +BA_ "GenSigVtEn" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; +BA_ "GenSigVtName" SG_ 33 ARMtoDSPChksumFault "ARMtoDSPChksumFault"; +BA_ "GenSigVtEn" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; +BA_ "GenSigVtName" SG_ 33 DSPtoArmChksumFault "DSPtoArmChksumFault"; +BA_ "GenSigVtEn" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; +BA_ "GenSigVtName" SG_ 33 HostToArmChksumFault "HostToArmChksumFault"; +BA_ "GenSigVtEn" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; +BA_ "GenSigVtName" SG_ 33 ARMtoHostChksumFault "ARMtoHostChksumFault"; +BA_ "GenSigVtEn" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; +BA_ "GenSigVtName" SG_ 33 LoopBWOutOfRange "LoopBWOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 DSPOverrunFault "DSPOverrunFault"; +BA_ "GenSigVtName" SG_ 33 DSPOverrunFault "DSPOverrunFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit5 "Active_Flt_Latched_byte6_bit5"; +BA_ "GenSigVtEn" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; +BA_ "GenSigVtName" SG_ 33 TuningSensitivityFault "TuningSensitivityFault"; +BA_ "GenSigVtEn" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; +BA_ "GenSigVtName" SG_ 33 SaturatedTuningFreqFault "SaturatedTuningFreqFault"; +BA_ "GenSigVtEn" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; +BA_ "GenSigVtName" SG_ 33 LocalOscPowerFault "LocalOscPowerFault"; +BA_ "GenSigVtEn" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterPowerFault "TransmitterPowerFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte6_bit0 "Active_Flt_Latched_byte6_bit0"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit7 "Active_Flt_Latched_byte5_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit6 "Active_Flt_Latched_byte5_bit6"; +BA_ "GenSigVtEn" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; +BA_ "GenSigVtName" SG_ 33 XCVRDeviceSPIFault "XCVRDeviceSPIFault"; +BA_ "GenSigVtEn" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; +BA_ "GenSigVtName" SG_ 33 FreqSynthesizerSPIFault "FreqSynthesizerSPIFault"; +BA_ "GenSigVtEn" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; +BA_ "GenSigVtName" SG_ 33 AnalogConverterDevicSPIFault "AnalogConverterDevicSPIFault"; +BA_ "GenSigVtEn" SG_ 33 SidelobeBlockage "SidelobeBlockage"; +BA_ "GenSigVtName" SG_ 33 SidelobeBlockage "SidelobeBlockage"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte5_bit1 "Active_Flt_Latched_byte5_bit1"; +BA_ "GenSigVtEn" SG_ 33 MNRBlocked "MNRBlocked"; +BA_ "GenSigVtName" SG_ 33 MNRBlocked "MNRBlocked"; +BA_ "GenSigVtEn" SG_ 33 ECUTempHighFault "ECUTempHighFault"; +BA_ "GenSigVtName" SG_ 33 ECUTempHighFault "ECUTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterTempHighFault "TransmitterTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; +BA_ "GenSigVtName" SG_ 33 AlignmentRoutineFailedFault "AlignmentRoutineFailedFault"; +BA_ "GenSigVtEn" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; +BA_ "GenSigVtName" SG_ 33 UnreasonableRadarData "UnreasonableRadarData"; +BA_ "GenSigVtEn" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; +BA_ "GenSigVtName" SG_ 33 MicroprocessorTempHighFault "MicroprocessorTempHighFault"; +BA_ "GenSigVtEn" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; +BA_ "GenSigVtName" SG_ 33 VerticalAlignmentOutOfRange "VerticalAlignmentOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; +BA_ "GenSigVtName" SG_ 33 HorizontalAlignmentOutOfRange "HorizontalAlignmentOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; +BA_ "GenSigVtName" SG_ 33 FactoryAlignmentMode "FactoryAlignmentMode"; +BA_ "GenSigVtEn" SG_ 33 BatteryLowFault "BatteryLowFault"; +BA_ "GenSigVtName" SG_ 33 BatteryLowFault "BatteryLowFault"; +BA_ "GenSigVtEn" SG_ 33 BatteryHighFault "BatteryHighFault"; +BA_ "GenSigVtName" SG_ 33 BatteryHighFault "BatteryHighFault"; +BA_ "GenSigVtEn" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_1p25SupplyOutOfRange "v_1p25SupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte3_bit4 "Active_Flt_Latched_byte3_bit4"; +BA_ "GenSigVtEn" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; +BA_ "GenSigVtName" SG_ 33 ThermistorOutOfRange "ThermistorOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_3p3DACSupplyOutOfRange "v_3p3DACSupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_3p3RAWSupplyOutOfRange "v_3p3RAWSupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; +BA_ "GenSigVtName" SG_ 33 v_5_SupplyOutOfRange "v_5_SupplyOutOfRange"; +BA_ "GenSigVtEn" SG_ 33 TransmitterIDFault "TransmitterIDFault"; +BA_ "GenSigVtName" SG_ 33 TransmitterIDFault "TransmitterIDFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit6 "Active_Flt_Latched_byte2_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit5 "Active_Flt_Latched_byte2_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit4 "Active_Flt_Latched_byte2_bit4"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit3 "Active_Flt_Latched_byte2_bit3"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte2_bit2 "Active_Flt_Latched_byte2_bit2"; +BA_ "GenSigVtEn" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; +BA_ "GenSigVtName" SG_ 33 PCANMissingMsgFault "PCANMissingMsgFault"; +BA_ "GenSigVtEn" SG_ 33 PCANBusOff "PCANBusOff"; +BA_ "GenSigVtName" SG_ 33 PCANBusOff "PCANBusOff"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit7 "Active_Flt_Latched_byte1_bit7"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit6 "Active_Flt_Latched_byte1_bit6"; +BA_ "GenSigVtEn" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; +BA_ "GenSigVtName" SG_ 33 InstructionSetCheckFault "InstructionSetCheckFault"; +BA_ "GenSigVtEn" SG_ 33 StackOverflowFault "StackOverflowFault"; +BA_ "GenSigVtName" SG_ 33 StackOverflowFault "StackOverflowFault"; +BA_ "GenSigVtEn" SG_ 33 WatchdogFault "WatchdogFault"; +BA_ "GenSigVtName" SG_ 33 WatchdogFault "WatchdogFault"; +BA_ "GenSigVtEn" SG_ 33 PLLLockFault "PLLLockFault"; +BA_ "GenSigVtName" SG_ 33 PLLLockFault "PLLLockFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte1_bit1 "Active_Flt_Latched_byte1_bit1"; +BA_ "GenSigVtEn" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; +BA_ "GenSigVtName" SG_ 33 RAMMemoryTestFault "RAMMemoryTestFault"; +BA_ "GenSigVtName" SG_ 33 USCValidationFault "USCValidationFault"; +BA_ "GenSigVtEn" SG_ 33 USCValidationFault "USCValidationFault"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit6 "Active_Flt_Latched_byte0_bit6"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit5 "Active_Flt_Latched_byte0_bit5"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit4 "Active_Flt_Latched_byte0_bit4"; +BA_ "GenSigVtEn" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; +BA_ "GenSigVtName" SG_ 33 Active_Flt_Latched_byte0_bit3 "Active_Flt_Latched_byte0_bit3"; +BA_ "GenSigVtEn" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; +BA_ "GenSigVtName" SG_ 33 KeepAliveChecksumFault "KeepAliveChecksumFault"; +BA_ "GenSigVtEn" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; +BA_ "GenSigVtName" SG_ 33 ProgramCalibrationFlashChecksum "ProgramCalibrationFlashChecksum"; +BA_ "GenSigVtEn" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; +BA_ "GenSigVtName" SG_ 33 ApplicationFlashChecksumFault "ApplicationFlashChecksumFault"; +BA_ "GenMsgNrOfRepetition" BO_ 500 0; +BA_ "GenMsgSendType" BO_ 500 1; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte7 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte7 "MRR_xcp_daq_resp_byte7"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte6 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte6 "MRR_xcp_daq_resp_byte6"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte5 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte5 "MRR_xcp_daq_resp_byte5"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte4 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte4 "MRR_xcp_daq_resp_byte4"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte3 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte3 "MRR_xcp_daq_resp_byte3"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte2 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte2 "MRR_xcp_daq_resp_byte2"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte1 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte1 "MRR_xcp_daq_resp_byte1"; +BA_ "GenSigSendType" SG_ 500 MRR_xcp_daq_resp_byte0 0; +BA_ "GenSigCmt" SG_ 500 MRR_xcp_daq_resp_byte0 "MRR_xcp_daq_resp_byte0"; +BA_ "GenMsgNrOfRepetition" BO_ 499 0; +BA_ "GenMsgSendType" BO_ 499 1; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte7 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte7 "MRR_xcp_dto_resp_byte7"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte6 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte6 "MRR_xcp_dto_resp_byte6"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte5 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte5 "MRR_xcp_dto_resp_byte5"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte4 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte4 "MRR_xcp_dto_resp_byte4"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte3 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte3 "MRR_xcp_dto_resp_byte3"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte2 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte2 "MRR_xcp_dto_resp_byte2"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte1 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte1 "MRR_xcp_dto_resp_byte1"; +BA_ "GenSigSendType" SG_ 499 MRR_xcp_dto_resp_byte0 0; +BA_ "GenSigCmt" SG_ 499 MRR_xcp_dto_resp_byte0 "MRR_xcp_dto_resp_byte0"; +BA_ "GenMsgNrOfRepetition" BO_ 497 0; +BA_ "GenMsgSendType" BO_ 497 1; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte7 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte7 "MRR_xcp_cto_resp_byte7"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte6 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte6 "MRR_xcp_cto_resp_byte6"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte5 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte5 "MRR_xcp_cto_resp_byte5"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte4 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte4 "MRR_xcp_cto_resp_byte4"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte3 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte3 "MRR_xcp_cto_resp_byte3"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte2 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte2 "MRR_xcp_cto_resp_byte2"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte1 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte1 "MRR_xcp_cto_resp_byte1"; +BA_ "GenSigSendType" SG_ 497 MRR_xcp_cto_resp_byte0 0; +BA_ "GenSigCmt" SG_ 497 MRR_xcp_cto_resp_byte0 "MRR_xcp_cto_resp_byte0"; +BA_ "GenMsgSendType" BO_ 1900 1; +BA_ "GenMsgNrOfRepetition" BO_ 1900 0; +BA_ "DiagResponse" BO_ 1900 1; +BA_ "GenSigCmt" SG_ 1900 TesterPhysicalResCCM "TesterPhysicalResCCM"; +BA_ "GenSigSendType" SG_ 1900 TesterPhysicalResCCM 0; +BA_ "GenMsgSendType" BO_ 261 0; +BA_ "GenMsgCycleTime" BO_ 261 1000; +BA_ "GenMsgNrOfRepetition" BO_ 261 0; +BA_ "GenSigCmt" SG_ 261 CAN_SEQUENCE_NUMBER "CAN_SEQUENCE_NUMBER"; +BA_ "GenSigCmt" SG_ 261 CAN_SERIAL_NUMBER "CAN_SERIAL_NUMBER"; +BA_ "GenSigSendType" SG_ 261 CAN_SERIAL_NUMBER 0; +BA_ "GenMsgSendType" BO_ 264 1; +BA_ "GenMsgNrOfRepetition" BO_ 264 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Field_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Promote_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Field_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Promote_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_SW_Release_Revision 0; +BA_ "GenSigSendType" SG_ 264 CAN_PBL_Release_Revision 0; +BA_ "GenMsgSendType" BO_ 373 1; +BA_ "NetworkInitialization" BO_ 373 0; +BA_ "GenMsgNrOfRepetition" BO_ 373 0; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_POLARITY 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_POLARITY "CAN_SENSOR_POLARITY"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LAT_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LAT_OFFSET "CAN_SENSOR_LAT_OFFSET"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_LONG_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_LONG_OFFSET "CAN_SENSOR_LONG_OFFSET"; +BA_ "GenSigSendType" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; +BA_ "GenSigCmt" SG_ 373 CAN_SENSOR_HANGLE_OFFSET "CAN_SENSOR_HANGLE_OFFSET"; +BA_ "GenSigStartValue" SG_ 373 CAN_SENSOR_HANGLE_OFFSET 0; +BA_ "GenMsgSendType" BO_ 372 1; +BA_ "NetworkInitialization" BO_ 372 0; +BA_ "GenMsgNrOfRepetition" BO_ 372 0; +BA_ "GenSigSendType" SG_ 372 CAN_SENSOR_FOV_HOR 0; +BA_ "GenSigCmt" SG_ 372 CAN_SENSOR_FOV_HOR "CAN_SENSOR_FOV_HOR"; +BA_ "GenSigStartValue" SG_ 372 CAN_SENSOR_FOV_HOR 0; +BA_ "GenSigSendType" SG_ 372 CAN_DOPPLER_COVERAGE 0; +BA_ "GenSigCmt" SG_ 372 CAN_DOPPLER_COVERAGE "CAN_DOPPLER_COVERAGE"; +BA_ "GenSigStartValue" SG_ 372 CAN_DOPPLER_COVERAGE 0; +BA_ "GenSigSendType" SG_ 372 CAN_RANGE_COVERAGE 0; +BA_ "GenSigCmt" SG_ 372 CAN_RANGE_COVERAGE "CAN_RANGE_COVERAGE"; +BA_ "GenMsgSendType" BO_ 371 1; +BA_ "NetworkInitialization" BO_ 371 0; +BA_ "GenMsgNrOfRepetition" BO_ 371 0; +BA_ "GenSigVtEn" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigVtName" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_QF "CAN_AUTO_ALIGN_HANGLE_QF"; +BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATUS 0; +BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATUS "CAN_ALIGNMENT_STATUS"; +BA_ "GenSigVtEn" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigVtName" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigSendType" SG_ 371 CAN_ALIGNMENT_STATE 0; +BA_ "GenSigCmt" SG_ 371 CAN_ALIGNMENT_STATE "CAN_ALIGNMENT_STATE"; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; +BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE_REF "CAN_AUTO_ALIGN_HANGLE_REF"; +BA_ "GenSigStartValue" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; +BA_ "GenSigSendType" SG_ 371 CAN_AUTO_ALIGN_HANGLE 0; +BA_ "GenSigCmt" SG_ 371 CAN_AUTO_ALIGN_HANGLE "CAN_AUTO_ALIGN_HANGLE"; +BA_ "GenMsgSendType" BO_ 369 1; +BA_ "NetworkInitialization" BO_ 369 0; +BA_ "GenMsgNrOfRepetition" BO_ 369 0; +BA_ "GenSigCmt" SG_ 369 CAN_DET_TIME_SINCE_MEAS "CAN_DET_TIME_SINCE_MEAS"; +BA_ "GenSigSendType" SG_ 369 CAN_DET_TIME_SINCE_MEAS 0; +BA_ "GenSigSendType" SG_ 369 CAN_SENSOR_TIME_STAMP 0; +BA_ "GenSigCmt" SG_ 369 CAN_SENSOR_TIME_STAMP "CAN_SENSOR_TIME_STAMP"; +BA_ "GenMsgSendType" BO_ 368 1; +BA_ "NetworkInitialization" BO_ 368 0; +BA_ "GenMsgNrOfRepetition" BO_ 368 0; +BA_ "GenSigSendType" SG_ 368 CAN_ALIGN_UPDATES_DONE 0; +BA_ "GenSigCmt" SG_ 368 CAN_ALIGN_UPDATES_DONE "CAN_ALIGN_UPDATES_DONE"; +BA_ "GenSigSendType" SG_ 368 CAN_SCAN_INDEX 0; +BA_ "GenSigCmt" SG_ 368 CAN_SCAN_INDEX "CAN_SCAN_INDEX"; +BA_ "GenSigSendType" SG_ 368 CAN_NUMBER_OF_DET 0; +BA_ "GenSigCmt" SG_ 368 CAN_NUMBER_OF_DET "CAN_NUMBER_OF_DET"; +BA_ "GenSigSendType" SG_ 368 CAN_LOOK_ID 0; +BA_ "GenSigCmt" SG_ 368 CAN_LOOK_ID "CAN_LOOK_ID"; +BA_ "GenSigSendType" SG_ 368 CAN_LOOK_INDEX 0; +BA_ "GenSigCmt" SG_ 368 CAN_LOOK_INDEX "CAN_LOOK_INDEX"; +BA_ "GenMsgSendType" BO_ 265 1; +BA_ "NetworkInitialization" BO_ 265 0; +BA_ "GenMsgNrOfRepetition" BO_ 265 0; +BA_ "GenSigCmt" SG_ 265 CAN_BATT_VOLTS "CAN_BATT_VOLTS"; +BA_ "GenSigCmt" SG_ 265 CAN_1_25_V "CAN_1_25_V"; +BA_ "GenSigCmt" SG_ 265 CAN_5_V "CAN_5_V"; +BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_RAW "CAN_3_3_V_RAW"; +BA_ "GenSigCmt" SG_ 265 CAN_3_3_V_DAC "CAN_3_3_V_DAC"; +BA_ "GenSigSendType" SG_ 265 CAN_MMIC_Temp1 0; +BA_ "GenSigCmt" SG_ 265 CAN_MMIC_Temp1 "CAN_MMIC_Temp1"; +BA_ "GenSigStartValue" SG_ 265 CAN_MMIC_Temp1 0; +BA_ "GenSigSendType" SG_ 265 CAN_Processor_Thermistor 0; +BA_ "GenSigCmt" SG_ 265 CAN_Processor_Thermistor "CAN_Processor_Thermistor"; +BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Thermistor 0; +BA_ "GenSigSendType" SG_ 265 CAN_Processor_Temp1 0; +BA_ "GenSigCmt" SG_ 265 CAN_Processor_Temp1 "CAN_Processor_Temp1"; +BA_ "GenSigStartValue" SG_ 265 CAN_Processor_Temp1 0; +EOF + +build_ba "04" + +cat <> ${OUT_FILENAME} +BA_ "GenMsgSendType" BO_ 351 1; +BA_ "GenMsgILSupport" BO_ 351 1; +BA_ "GenMsgNrOfRepetition" BO_ 351 0; +BA_ "GenMsgCycleTime" BO_ 351 0; +BA_ "NetworkInitialization" BO_ 351 0; +BA_ "GenMsgDelayTime" BO_ 351 0; +BA_ "GenSigVtEn" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigVtName" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_CONFID_AZIMUTH_64 "CAN_DET_CONFID_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_SUPER_RES_TARGET_64 "CAN_DET_SUPER_RES_TARGET_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_ND_TARGET_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_ND_TARGET_64 "CAN_DET_ND_TARGET_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_HOST_VEH_CLUTTER_64 "CAN_DET_HOST_VEH_CLUTTER_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_VALID_LEVEL_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_VALID_LEVEL_64 "CAN_DET_VALID_LEVEL_64"; +BA_ "GenSigStartValue" SG_ 351 CAN_DET_AZIMUTH_64 0; +BA_ "GenSigSendType" SG_ 351 CAN_DET_AZIMUTH_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_AZIMUTH_64 "CAN_DET_AZIMUTH_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_64 "CAN_DET_RANGE_64"; +BA_ "GenSigStartValue" SG_ 351 CAN_DET_RANGE_RATE_64 0; +BA_ "GenSigSendType" SG_ 351 CAN_DET_RANGE_RATE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_RANGE_RATE_64 "CAN_DET_RANGE_RATE_64"; +BA_ "GenSigSendType" SG_ 351 CAN_DET_AMPLITUDE_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_DET_AMPLITUDE_64 "CAN_DET_AMPLITUDE_64"; +BA_ "GenSigSendType" SG_ 351 CAN_SCAN_INDEX_2LSB_64 0; +BA_ "GenSigCmt" SG_ 351 CAN_SCAN_INDEX_2LSB_64 "CAN_SCAN_INDEX_2LSB_64"; +BA_ "GenMsgSendType" BO_ 350 1; +BA_ "GenMsgILSupport" BO_ 350 1; +BA_ "GenMsgNrOfRepetition" BO_ 350 0; +BA_ "GenMsgCycleTime" BO_ 350 0; +BA_ "NetworkInitialization" BO_ 350 0; +BA_ "GenMsgDelayTime" BO_ 350 0; +BA_ "GenSigVtEn" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigVtName" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_CONFID_AZIMUTH_63 "CAN_DET_CONFID_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_SUPER_RES_TARGET_63 "CAN_DET_SUPER_RES_TARGET_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_ND_TARGET_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_ND_TARGET_63 "CAN_DET_ND_TARGET_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_HOST_VEH_CLUTTER_63 "CAN_DET_HOST_VEH_CLUTTER_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_VALID_LEVEL_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_VALID_LEVEL_63 "CAN_DET_VALID_LEVEL_63"; +BA_ "GenSigStartValue" SG_ 350 CAN_DET_AZIMUTH_63 0; +BA_ "GenSigSendType" SG_ 350 CAN_DET_AZIMUTH_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_AZIMUTH_63 "CAN_DET_AZIMUTH_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_63 "CAN_DET_RANGE_63"; +BA_ "GenSigStartValue" SG_ 350 CAN_DET_RANGE_RATE_63 0; +BA_ "GenSigSendType" SG_ 350 CAN_DET_RANGE_RATE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_RANGE_RATE_63 "CAN_DET_RANGE_RATE_63"; +BA_ "GenSigSendType" SG_ 350 CAN_DET_AMPLITUDE_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_DET_AMPLITUDE_63 "CAN_DET_AMPLITUDE_63"; +BA_ "GenSigSendType" SG_ 350 CAN_SCAN_INDEX_2LSB_63 0; +BA_ "GenSigCmt" SG_ 350 CAN_SCAN_INDEX_2LSB_63 "CAN_SCAN_INDEX_2LSB_63"; +BA_ "GenMsgSendType" BO_ 349 1; +BA_ "GenMsgILSupport" BO_ 349 1; +BA_ "GenMsgNrOfRepetition" BO_ 349 0; +BA_ "GenMsgCycleTime" BO_ 349 0; +BA_ "NetworkInitialization" BO_ 349 0; +BA_ "GenMsgDelayTime" BO_ 349 0; +BA_ "GenSigVtEn" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigVtName" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_CONFID_AZIMUTH_62 "CAN_DET_CONFID_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_SUPER_RES_TARGET_62 "CAN_DET_SUPER_RES_TARGET_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_ND_TARGET_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_ND_TARGET_62 "CAN_DET_ND_TARGET_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_HOST_VEH_CLUTTER_62 "CAN_DET_HOST_VEH_CLUTTER_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_VALID_LEVEL_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_VALID_LEVEL_62 "CAN_DET_VALID_LEVEL_62"; +BA_ "GenSigStartValue" SG_ 349 CAN_DET_AZIMUTH_62 0; +BA_ "GenSigSendType" SG_ 349 CAN_DET_AZIMUTH_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_AZIMUTH_62 "CAN_DET_AZIMUTH_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_62 "CAN_DET_RANGE_62"; +BA_ "GenSigStartValue" SG_ 349 CAN_DET_RANGE_RATE_62 0; +BA_ "GenSigSendType" SG_ 349 CAN_DET_RANGE_RATE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_RANGE_RATE_62 "CAN_DET_RANGE_RATE_62"; +BA_ "GenSigSendType" SG_ 349 CAN_DET_AMPLITUDE_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_DET_AMPLITUDE_62 "CAN_DET_AMPLITUDE_62"; +BA_ "GenSigSendType" SG_ 349 CAN_SCAN_INDEX_2LSB_62 0; +BA_ "GenSigCmt" SG_ 349 CAN_SCAN_INDEX_2LSB_62 "CAN_SCAN_INDEX_2LSB_62"; +BA_ "GenMsgSendType" BO_ 348 1; +BA_ "GenMsgILSupport" BO_ 348 1; +BA_ "GenMsgNrOfRepetition" BO_ 348 0; +BA_ "GenMsgCycleTime" BO_ 348 0; +BA_ "NetworkInitialization" BO_ 348 0; +BA_ "GenMsgDelayTime" BO_ 348 0; +BA_ "GenSigVtEn" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigVtName" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_CONFID_AZIMUTH_61 "CAN_DET_CONFID_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_SUPER_RES_TARGET_61 "CAN_DET_SUPER_RES_TARGET_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_ND_TARGET_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_ND_TARGET_61 "CAN_DET_ND_TARGET_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_HOST_VEH_CLUTTER_61 "CAN_DET_HOST_VEH_CLUTTER_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_VALID_LEVEL_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_VALID_LEVEL_61 "CAN_DET_VALID_LEVEL_61"; +BA_ "GenSigStartValue" SG_ 348 CAN_DET_AZIMUTH_61 0; +BA_ "GenSigSendType" SG_ 348 CAN_DET_AZIMUTH_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_AZIMUTH_61 "CAN_DET_AZIMUTH_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_61 "CAN_DET_RANGE_61"; +BA_ "GenSigStartValue" SG_ 348 CAN_DET_RANGE_RATE_61 0; +BA_ "GenSigSendType" SG_ 348 CAN_DET_RANGE_RATE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_RANGE_RATE_61 "CAN_DET_RANGE_RATE_61"; +BA_ "GenSigSendType" SG_ 348 CAN_DET_AMPLITUDE_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_DET_AMPLITUDE_61 "CAN_DET_AMPLITUDE_61"; +BA_ "GenSigSendType" SG_ 348 CAN_SCAN_INDEX_2LSB_61 0; +BA_ "GenSigCmt" SG_ 348 CAN_SCAN_INDEX_2LSB_61 "CAN_SCAN_INDEX_2LSB_61"; +BA_ "GenMsgSendType" BO_ 347 1; +BA_ "GenMsgILSupport" BO_ 347 1; +BA_ "GenMsgNrOfRepetition" BO_ 347 0; +BA_ "GenMsgCycleTime" BO_ 347 0; +BA_ "NetworkInitialization" BO_ 347 0; +BA_ "GenMsgDelayTime" BO_ 347 0; +BA_ "GenSigVtEn" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigVtName" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_CONFID_AZIMUTH_60 "CAN_DET_CONFID_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_SUPER_RES_TARGET_60 "CAN_DET_SUPER_RES_TARGET_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_ND_TARGET_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_ND_TARGET_60 "CAN_DET_ND_TARGET_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_HOST_VEH_CLUTTER_60 "CAN_DET_HOST_VEH_CLUTTER_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_VALID_LEVEL_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_VALID_LEVEL_60 "CAN_DET_VALID_LEVEL_60"; +BA_ "GenSigStartValue" SG_ 347 CAN_DET_AZIMUTH_60 0; +BA_ "GenSigSendType" SG_ 347 CAN_DET_AZIMUTH_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_AZIMUTH_60 "CAN_DET_AZIMUTH_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_60 "CAN_DET_RANGE_60"; +BA_ "GenSigStartValue" SG_ 347 CAN_DET_RANGE_RATE_60 0; +BA_ "GenSigSendType" SG_ 347 CAN_DET_RANGE_RATE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_RANGE_RATE_60 "CAN_DET_RANGE_RATE_60"; +BA_ "GenSigSendType" SG_ 347 CAN_DET_AMPLITUDE_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_DET_AMPLITUDE_60 "CAN_DET_AMPLITUDE_60"; +BA_ "GenSigSendType" SG_ 347 CAN_SCAN_INDEX_2LSB_60 0; +BA_ "GenSigCmt" SG_ 347 CAN_SCAN_INDEX_2LSB_60 "CAN_SCAN_INDEX_2LSB_60"; +BA_ "GenMsgSendType" BO_ 346 1; +BA_ "GenMsgILSupport" BO_ 346 1; +BA_ "GenMsgNrOfRepetition" BO_ 346 0; +BA_ "GenMsgCycleTime" BO_ 346 0; +BA_ "NetworkInitialization" BO_ 346 0; +BA_ "GenMsgDelayTime" BO_ 346 0; +BA_ "GenSigVtEn" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigVtName" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_CONFID_AZIMUTH_59 "CAN_DET_CONFID_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_SUPER_RES_TARGET_59 "CAN_DET_SUPER_RES_TARGET_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_ND_TARGET_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_ND_TARGET_59 "CAN_DET_ND_TARGET_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_HOST_VEH_CLUTTER_59 "CAN_DET_HOST_VEH_CLUTTER_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_VALID_LEVEL_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_VALID_LEVEL_59 "CAN_DET_VALID_LEVEL_59"; +BA_ "GenSigStartValue" SG_ 346 CAN_DET_AZIMUTH_59 0; +BA_ "GenSigSendType" SG_ 346 CAN_DET_AZIMUTH_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_AZIMUTH_59 "CAN_DET_AZIMUTH_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_59 "CAN_DET_RANGE_59"; +BA_ "GenSigStartValue" SG_ 346 CAN_DET_RANGE_RATE_59 0; +BA_ "GenSigSendType" SG_ 346 CAN_DET_RANGE_RATE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_RANGE_RATE_59 "CAN_DET_RANGE_RATE_59"; +BA_ "GenSigSendType" SG_ 346 CAN_DET_AMPLITUDE_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_DET_AMPLITUDE_59 "CAN_DET_AMPLITUDE_59"; +BA_ "GenSigSendType" SG_ 346 CAN_SCAN_INDEX_2LSB_59 0; +BA_ "GenSigCmt" SG_ 346 CAN_SCAN_INDEX_2LSB_59 "CAN_SCAN_INDEX_2LSB_59"; +BA_ "GenMsgSendType" BO_ 345 1; +BA_ "GenMsgILSupport" BO_ 345 1; +BA_ "GenMsgNrOfRepetition" BO_ 345 0; +BA_ "GenMsgCycleTime" BO_ 345 0; +BA_ "NetworkInitialization" BO_ 345 0; +BA_ "GenMsgDelayTime" BO_ 345 0; +BA_ "GenSigVtEn" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigVtName" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_CONFID_AZIMUTH_58 "CAN_DET_CONFID_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_SUPER_RES_TARGET_58 "CAN_DET_SUPER_RES_TARGET_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_ND_TARGET_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_ND_TARGET_58 "CAN_DET_ND_TARGET_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_HOST_VEH_CLUTTER_58 "CAN_DET_HOST_VEH_CLUTTER_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_VALID_LEVEL_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_VALID_LEVEL_58 "CAN_DET_VALID_LEVEL_58"; +BA_ "GenSigStartValue" SG_ 345 CAN_DET_AZIMUTH_58 0; +BA_ "GenSigSendType" SG_ 345 CAN_DET_AZIMUTH_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_AZIMUTH_58 "CAN_DET_AZIMUTH_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_58 "CAN_DET_RANGE_58"; +BA_ "GenSigStartValue" SG_ 345 CAN_DET_RANGE_RATE_58 0; +BA_ "GenSigSendType" SG_ 345 CAN_DET_RANGE_RATE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_RANGE_RATE_58 "CAN_DET_RANGE_RATE_58"; +BA_ "GenSigSendType" SG_ 345 CAN_DET_AMPLITUDE_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_DET_AMPLITUDE_58 "CAN_DET_AMPLITUDE_58"; +BA_ "GenSigSendType" SG_ 345 CAN_SCAN_INDEX_2LSB_58 0; +BA_ "GenSigCmt" SG_ 345 CAN_SCAN_INDEX_2LSB_58 "CAN_SCAN_INDEX_2LSB_58"; +BA_ "GenMsgSendType" BO_ 344 1; +BA_ "GenMsgILSupport" BO_ 344 1; +BA_ "GenMsgNrOfRepetition" BO_ 344 0; +BA_ "GenMsgCycleTime" BO_ 344 0; +BA_ "NetworkInitialization" BO_ 344 0; +BA_ "GenMsgDelayTime" BO_ 344 0; +BA_ "GenSigVtEn" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigVtName" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_CONFID_AZIMUTH_57 "CAN_DET_CONFID_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_SUPER_RES_TARGET_57 "CAN_DET_SUPER_RES_TARGET_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_ND_TARGET_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_ND_TARGET_57 "CAN_DET_ND_TARGET_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_HOST_VEH_CLUTTER_57 "CAN_DET_HOST_VEH_CLUTTER_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_VALID_LEVEL_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_VALID_LEVEL_57 "CAN_DET_VALID_LEVEL_57"; +BA_ "GenSigStartValue" SG_ 344 CAN_DET_AZIMUTH_57 0; +BA_ "GenSigSendType" SG_ 344 CAN_DET_AZIMUTH_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_AZIMUTH_57 "CAN_DET_AZIMUTH_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_57 "CAN_DET_RANGE_57"; +BA_ "GenSigStartValue" SG_ 344 CAN_DET_RANGE_RATE_57 0; +BA_ "GenSigSendType" SG_ 344 CAN_DET_RANGE_RATE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_RANGE_RATE_57 "CAN_DET_RANGE_RATE_57"; +BA_ "GenSigSendType" SG_ 344 CAN_DET_AMPLITUDE_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_DET_AMPLITUDE_57 "CAN_DET_AMPLITUDE_57"; +BA_ "GenSigSendType" SG_ 344 CAN_SCAN_INDEX_2LSB_57 0; +BA_ "GenSigCmt" SG_ 344 CAN_SCAN_INDEX_2LSB_57 "CAN_SCAN_INDEX_2LSB_57"; +BA_ "GenMsgSendType" BO_ 343 1; +BA_ "GenMsgILSupport" BO_ 343 1; +BA_ "GenMsgNrOfRepetition" BO_ 343 0; +BA_ "GenMsgCycleTime" BO_ 343 0; +BA_ "NetworkInitialization" BO_ 343 0; +BA_ "GenMsgDelayTime" BO_ 343 0; +BA_ "GenSigVtEn" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigVtName" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_CONFID_AZIMUTH_56 "CAN_DET_CONFID_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_SUPER_RES_TARGET_56 "CAN_DET_SUPER_RES_TARGET_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_ND_TARGET_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_ND_TARGET_56 "CAN_DET_ND_TARGET_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_HOST_VEH_CLUTTER_56 "CAN_DET_HOST_VEH_CLUTTER_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_VALID_LEVEL_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_VALID_LEVEL_56 "CAN_DET_VALID_LEVEL_56"; +BA_ "GenSigStartValue" SG_ 343 CAN_DET_AZIMUTH_56 0; +BA_ "GenSigSendType" SG_ 343 CAN_DET_AZIMUTH_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_AZIMUTH_56 "CAN_DET_AZIMUTH_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_56 "CAN_DET_RANGE_56"; +BA_ "GenSigStartValue" SG_ 343 CAN_DET_RANGE_RATE_56 0; +BA_ "GenSigSendType" SG_ 343 CAN_DET_RANGE_RATE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_RANGE_RATE_56 "CAN_DET_RANGE_RATE_56"; +BA_ "GenSigSendType" SG_ 343 CAN_DET_AMPLITUDE_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_DET_AMPLITUDE_56 "CAN_DET_AMPLITUDE_56"; +BA_ "GenSigSendType" SG_ 343 CAN_SCAN_INDEX_2LSB_56 0; +BA_ "GenSigCmt" SG_ 343 CAN_SCAN_INDEX_2LSB_56 "CAN_SCAN_INDEX_2LSB_56"; +BA_ "GenMsgSendType" BO_ 342 1; +BA_ "GenMsgILSupport" BO_ 342 1; +BA_ "GenMsgNrOfRepetition" BO_ 342 0; +BA_ "GenMsgCycleTime" BO_ 342 0; +BA_ "NetworkInitialization" BO_ 342 0; +BA_ "GenMsgDelayTime" BO_ 342 0; +BA_ "GenSigVtEn" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigVtName" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_CONFID_AZIMUTH_55 "CAN_DET_CONFID_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_SUPER_RES_TARGET_55 "CAN_DET_SUPER_RES_TARGET_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_ND_TARGET_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_ND_TARGET_55 "CAN_DET_ND_TARGET_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_HOST_VEH_CLUTTER_55 "CAN_DET_HOST_VEH_CLUTTER_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_VALID_LEVEL_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_VALID_LEVEL_55 "CAN_DET_VALID_LEVEL_55"; +BA_ "GenSigStartValue" SG_ 342 CAN_DET_AZIMUTH_55 0; +BA_ "GenSigSendType" SG_ 342 CAN_DET_AZIMUTH_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_AZIMUTH_55 "CAN_DET_AZIMUTH_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_55 "CAN_DET_RANGE_55"; +BA_ "GenSigStartValue" SG_ 342 CAN_DET_RANGE_RATE_55 0; +BA_ "GenSigSendType" SG_ 342 CAN_DET_RANGE_RATE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_RANGE_RATE_55 "CAN_DET_RANGE_RATE_55"; +BA_ "GenSigSendType" SG_ 342 CAN_DET_AMPLITUDE_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_DET_AMPLITUDE_55 "CAN_DET_AMPLITUDE_55"; +BA_ "GenSigSendType" SG_ 342 CAN_SCAN_INDEX_2LSB_55 0; +BA_ "GenSigCmt" SG_ 342 CAN_SCAN_INDEX_2LSB_55 "CAN_SCAN_INDEX_2LSB_55"; +BA_ "GenMsgSendType" BO_ 335 1; +BA_ "GenMsgILSupport" BO_ 335 1; +BA_ "GenMsgNrOfRepetition" BO_ 335 0; +BA_ "GenMsgCycleTime" BO_ 335 0; +BA_ "NetworkInitialization" BO_ 335 0; +BA_ "GenMsgDelayTime" BO_ 335 0; +BA_ "GenSigVtEn" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigVtName" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_CONFID_AZIMUTH_48 "CAN_DET_CONFID_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_SUPER_RES_TARGET_48 "CAN_DET_SUPER_RES_TARGET_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_ND_TARGET_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_ND_TARGET_48 "CAN_DET_ND_TARGET_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_HOST_VEH_CLUTTER_48 "CAN_DET_HOST_VEH_CLUTTER_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_VALID_LEVEL_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_VALID_LEVEL_48 "CAN_DET_VALID_LEVEL_48"; +BA_ "GenSigStartValue" SG_ 335 CAN_DET_AZIMUTH_48 0; +BA_ "GenSigSendType" SG_ 335 CAN_DET_AZIMUTH_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_AZIMUTH_48 "CAN_DET_AZIMUTH_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_48 "CAN_DET_RANGE_48"; +BA_ "GenSigStartValue" SG_ 335 CAN_DET_RANGE_RATE_48 0; +BA_ "GenSigSendType" SG_ 335 CAN_DET_RANGE_RATE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_RANGE_RATE_48 "CAN_DET_RANGE_RATE_48"; +BA_ "GenSigSendType" SG_ 335 CAN_DET_AMPLITUDE_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_DET_AMPLITUDE_48 "CAN_DET_AMPLITUDE_48"; +BA_ "GenSigSendType" SG_ 335 CAN_SCAN_INDEX_2LSB_48 0; +BA_ "GenSigCmt" SG_ 335 CAN_SCAN_INDEX_2LSB_48 "CAN_SCAN_INDEX_2LSB_48"; +BA_ "GenMsgSendType" BO_ 334 1; +BA_ "GenMsgILSupport" BO_ 334 1; +BA_ "GenMsgNrOfRepetition" BO_ 334 0; +BA_ "GenMsgCycleTime" BO_ 334 0; +BA_ "NetworkInitialization" BO_ 334 0; +BA_ "GenMsgDelayTime" BO_ 334 0; +BA_ "GenSigVtEn" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigVtName" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_CONFID_AZIMUTH_47 "CAN_DET_CONFID_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_SUPER_RES_TARGET_47 "CAN_DET_SUPER_RES_TARGET_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_ND_TARGET_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_ND_TARGET_47 "CAN_DET_ND_TARGET_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_HOST_VEH_CLUTTER_47 "CAN_DET_HOST_VEH_CLUTTER_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_VALID_LEVEL_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_VALID_LEVEL_47 "CAN_DET_VALID_LEVEL_47"; +BA_ "GenSigStartValue" SG_ 334 CAN_DET_AZIMUTH_47 0; +BA_ "GenSigSendType" SG_ 334 CAN_DET_AZIMUTH_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_AZIMUTH_47 "CAN_DET_AZIMUTH_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_47 "CAN_DET_RANGE_47"; +BA_ "GenSigStartValue" SG_ 334 CAN_DET_RANGE_RATE_47 0; +BA_ "GenSigSendType" SG_ 334 CAN_DET_RANGE_RATE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_RANGE_RATE_47 "CAN_DET_RANGE_RATE_47"; +BA_ "GenSigSendType" SG_ 334 CAN_DET_AMPLITUDE_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_DET_AMPLITUDE_47 "CAN_DET_AMPLITUDE_47"; +BA_ "GenSigSendType" SG_ 334 CAN_SCAN_INDEX_2LSB_47 0; +BA_ "GenSigCmt" SG_ 334 CAN_SCAN_INDEX_2LSB_47 "CAN_SCAN_INDEX_2LSB_47"; +BA_ "GenMsgSendType" BO_ 333 1; +BA_ "GenMsgILSupport" BO_ 333 1; +BA_ "GenMsgNrOfRepetition" BO_ 333 0; +BA_ "GenMsgCycleTime" BO_ 333 0; +BA_ "NetworkInitialization" BO_ 333 0; +BA_ "GenMsgDelayTime" BO_ 333 0; +BA_ "GenSigVtEn" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigVtName" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_CONFID_AZIMUTH_46 "CAN_DET_CONFID_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_SUPER_RES_TARGET_46 "CAN_DET_SUPER_RES_TARGET_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_ND_TARGET_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_ND_TARGET_46 "CAN_DET_ND_TARGET_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_HOST_VEH_CLUTTER_46 "CAN_DET_HOST_VEH_CLUTTER_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_VALID_LEVEL_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_VALID_LEVEL_46 "CAN_DET_VALID_LEVEL_46"; +BA_ "GenSigStartValue" SG_ 333 CAN_DET_AZIMUTH_46 0; +BA_ "GenSigSendType" SG_ 333 CAN_DET_AZIMUTH_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_AZIMUTH_46 "CAN_DET_AZIMUTH_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_46 "CAN_DET_RANGE_46"; +BA_ "GenSigStartValue" SG_ 333 CAN_DET_RANGE_RATE_46 0; +BA_ "GenSigSendType" SG_ 333 CAN_DET_RANGE_RATE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_RANGE_RATE_46 "CAN_DET_RANGE_RATE_46"; +BA_ "GenSigSendType" SG_ 333 CAN_DET_AMPLITUDE_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_DET_AMPLITUDE_46 "CAN_DET_AMPLITUDE_46"; +BA_ "GenSigSendType" SG_ 333 CAN_SCAN_INDEX_2LSB_46 0; +BA_ "GenSigCmt" SG_ 333 CAN_SCAN_INDEX_2LSB_46 "CAN_SCAN_INDEX_2LSB_46"; +BA_ "GenMsgSendType" BO_ 332 1; +BA_ "GenMsgILSupport" BO_ 332 1; +BA_ "GenMsgNrOfRepetition" BO_ 332 0; +BA_ "GenMsgCycleTime" BO_ 332 0; +BA_ "NetworkInitialization" BO_ 332 0; +BA_ "GenMsgDelayTime" BO_ 332 0; +BA_ "GenSigVtEn" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigVtName" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_CONFID_AZIMUTH_45 "CAN_DET_CONFID_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_SUPER_RES_TARGET_45 "CAN_DET_SUPER_RES_TARGET_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_ND_TARGET_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_ND_TARGET_45 "CAN_DET_ND_TARGET_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_HOST_VEH_CLUTTER_45 "CAN_DET_HOST_VEH_CLUTTER_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_VALID_LEVEL_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_VALID_LEVEL_45 "CAN_DET_VALID_LEVEL_45"; +BA_ "GenSigStartValue" SG_ 332 CAN_DET_AZIMUTH_45 0; +BA_ "GenSigSendType" SG_ 332 CAN_DET_AZIMUTH_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_AZIMUTH_45 "CAN_DET_AZIMUTH_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_45 "CAN_DET_RANGE_45"; +BA_ "GenSigStartValue" SG_ 332 CAN_DET_RANGE_RATE_45 0; +BA_ "GenSigSendType" SG_ 332 CAN_DET_RANGE_RATE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_RANGE_RATE_45 "CAN_DET_RANGE_RATE_45"; +BA_ "GenSigSendType" SG_ 332 CAN_DET_AMPLITUDE_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_DET_AMPLITUDE_45 "CAN_DET_AMPLITUDE_45"; +BA_ "GenSigSendType" SG_ 332 CAN_SCAN_INDEX_2LSB_45 0; +BA_ "GenSigCmt" SG_ 332 CAN_SCAN_INDEX_2LSB_45 "CAN_SCAN_INDEX_2LSB_45"; +BA_ "GenMsgSendType" BO_ 331 1; +BA_ "GenMsgILSupport" BO_ 331 1; +BA_ "GenMsgNrOfRepetition" BO_ 331 0; +BA_ "GenMsgCycleTime" BO_ 331 0; +BA_ "NetworkInitialization" BO_ 331 0; +BA_ "GenMsgDelayTime" BO_ 331 0; +BA_ "GenSigVtEn" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigVtName" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_CONFID_AZIMUTH_44 "CAN_DET_CONFID_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_SUPER_RES_TARGET_44 "CAN_DET_SUPER_RES_TARGET_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_ND_TARGET_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_ND_TARGET_44 "CAN_DET_ND_TARGET_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_HOST_VEH_CLUTTER_44 "CAN_DET_HOST_VEH_CLUTTER_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_VALID_LEVEL_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_VALID_LEVEL_44 "CAN_DET_VALID_LEVEL_44"; +BA_ "GenSigStartValue" SG_ 331 CAN_DET_AZIMUTH_44 0; +BA_ "GenSigSendType" SG_ 331 CAN_DET_AZIMUTH_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_AZIMUTH_44 "CAN_DET_AZIMUTH_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_44 "CAN_DET_RANGE_44"; +BA_ "GenSigStartValue" SG_ 331 CAN_DET_RANGE_RATE_44 0; +BA_ "GenSigSendType" SG_ 331 CAN_DET_RANGE_RATE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_RANGE_RATE_44 "CAN_DET_RANGE_RATE_44"; +BA_ "GenSigSendType" SG_ 331 CAN_DET_AMPLITUDE_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_DET_AMPLITUDE_44 "CAN_DET_AMPLITUDE_44"; +BA_ "GenSigSendType" SG_ 331 CAN_SCAN_INDEX_2LSB_44 0; +BA_ "GenSigCmt" SG_ 331 CAN_SCAN_INDEX_2LSB_44 "CAN_SCAN_INDEX_2LSB_44"; +BA_ "GenMsgSendType" BO_ 330 1; +BA_ "GenMsgILSupport" BO_ 330 1; +BA_ "GenMsgNrOfRepetition" BO_ 330 0; +BA_ "GenMsgCycleTime" BO_ 330 0; +BA_ "NetworkInitialization" BO_ 330 0; +BA_ "GenMsgDelayTime" BO_ 330 0; +BA_ "GenSigVtEn" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigVtName" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_CONFID_AZIMUTH_43 "CAN_DET_CONFID_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_SUPER_RES_TARGET_43 "CAN_DET_SUPER_RES_TARGET_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_ND_TARGET_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_ND_TARGET_43 "CAN_DET_ND_TARGET_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_HOST_VEH_CLUTTER_43 "CAN_DET_HOST_VEH_CLUTTER_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_VALID_LEVEL_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_VALID_LEVEL_43 "CAN_DET_VALID_LEVEL_43"; +BA_ "GenSigStartValue" SG_ 330 CAN_DET_AZIMUTH_43 0; +BA_ "GenSigSendType" SG_ 330 CAN_DET_AZIMUTH_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_AZIMUTH_43 "CAN_DET_AZIMUTH_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_43 "CAN_DET_RANGE_43"; +BA_ "GenSigStartValue" SG_ 330 CAN_DET_RANGE_RATE_43 0; +BA_ "GenSigSendType" SG_ 330 CAN_DET_RANGE_RATE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_RANGE_RATE_43 "CAN_DET_RANGE_RATE_43"; +BA_ "GenSigSendType" SG_ 330 CAN_DET_AMPLITUDE_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_DET_AMPLITUDE_43 "CAN_DET_AMPLITUDE_43"; +BA_ "GenSigSendType" SG_ 330 CAN_SCAN_INDEX_2LSB_43 0; +BA_ "GenSigCmt" SG_ 330 CAN_SCAN_INDEX_2LSB_43 "CAN_SCAN_INDEX_2LSB_43"; +BA_ "GenMsgSendType" BO_ 329 1; +BA_ "GenMsgILSupport" BO_ 329 1; +BA_ "GenMsgNrOfRepetition" BO_ 329 0; +BA_ "GenMsgCycleTime" BO_ 329 0; +BA_ "NetworkInitialization" BO_ 329 0; +BA_ "GenMsgDelayTime" BO_ 329 0; +BA_ "GenSigVtEn" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigVtName" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_CONFID_AZIMUTH_42 "CAN_DET_CONFID_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_SUPER_RES_TARGET_42 "CAN_DET_SUPER_RES_TARGET_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_ND_TARGET_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_ND_TARGET_42 "CAN_DET_ND_TARGET_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_HOST_VEH_CLUTTER_42 "CAN_DET_HOST_VEH_CLUTTER_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_VALID_LEVEL_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_VALID_LEVEL_42 "CAN_DET_VALID_LEVEL_42"; +BA_ "GenSigStartValue" SG_ 329 CAN_DET_AZIMUTH_42 0; +BA_ "GenSigSendType" SG_ 329 CAN_DET_AZIMUTH_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_AZIMUTH_42 "CAN_DET_AZIMUTH_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_42 "CAN_DET_RANGE_42"; +BA_ "GenSigStartValue" SG_ 329 CAN_DET_RANGE_RATE_42 0; +BA_ "GenSigSendType" SG_ 329 CAN_DET_RANGE_RATE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_RANGE_RATE_42 "CAN_DET_RANGE_RATE_42"; +BA_ "GenSigSendType" SG_ 329 CAN_DET_AMPLITUDE_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_DET_AMPLITUDE_42 "CAN_DET_AMPLITUDE_42"; +BA_ "GenSigSendType" SG_ 329 CAN_SCAN_INDEX_2LSB_42 0; +BA_ "GenSigCmt" SG_ 329 CAN_SCAN_INDEX_2LSB_42 "CAN_SCAN_INDEX_2LSB_42"; +BA_ "GenMsgSendType" BO_ 328 1; +BA_ "GenMsgILSupport" BO_ 328 1; +BA_ "GenMsgNrOfRepetition" BO_ 328 0; +BA_ "GenMsgCycleTime" BO_ 328 0; +BA_ "NetworkInitialization" BO_ 328 0; +BA_ "GenMsgDelayTime" BO_ 328 0; +BA_ "GenSigVtEn" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigVtName" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_CONFID_AZIMUTH_41 "CAN_DET_CONFID_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_SUPER_RES_TARGET_41 "CAN_DET_SUPER_RES_TARGET_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_ND_TARGET_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_ND_TARGET_41 "CAN_DET_ND_TARGET_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_HOST_VEH_CLUTTER_41 "CAN_DET_HOST_VEH_CLUTTER_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_VALID_LEVEL_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_VALID_LEVEL_41 "CAN_DET_VALID_LEVEL_41"; +BA_ "GenSigStartValue" SG_ 328 CAN_DET_AZIMUTH_41 0; +BA_ "GenSigSendType" SG_ 328 CAN_DET_AZIMUTH_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_AZIMUTH_41 "CAN_DET_AZIMUTH_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_41 "CAN_DET_RANGE_41"; +BA_ "GenSigStartValue" SG_ 328 CAN_DET_RANGE_RATE_41 0; +BA_ "GenSigSendType" SG_ 328 CAN_DET_RANGE_RATE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_RANGE_RATE_41 "CAN_DET_RANGE_RATE_41"; +BA_ "GenSigSendType" SG_ 328 CAN_DET_AMPLITUDE_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_DET_AMPLITUDE_41 "CAN_DET_AMPLITUDE_41"; +BA_ "GenSigSendType" SG_ 328 CAN_SCAN_INDEX_2LSB_41 0; +BA_ "GenSigCmt" SG_ 328 CAN_SCAN_INDEX_2LSB_41 "CAN_SCAN_INDEX_2LSB_41"; +BA_ "GenMsgSendType" BO_ 327 1; +BA_ "GenMsgILSupport" BO_ 327 1; +BA_ "GenMsgNrOfRepetition" BO_ 327 0; +BA_ "GenMsgCycleTime" BO_ 327 0; +BA_ "NetworkInitialization" BO_ 327 0; +BA_ "GenMsgDelayTime" BO_ 327 0; +BA_ "GenSigVtEn" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigVtName" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_CONFID_AZIMUTH_40 "CAN_DET_CONFID_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_SUPER_RES_TARGET_40 "CAN_DET_SUPER_RES_TARGET_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_ND_TARGET_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_ND_TARGET_40 "CAN_DET_ND_TARGET_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_HOST_VEH_CLUTTER_40 "CAN_DET_HOST_VEH_CLUTTER_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_VALID_LEVEL_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_VALID_LEVEL_40 "CAN_DET_VALID_LEVEL_40"; +BA_ "GenSigStartValue" SG_ 327 CAN_DET_AZIMUTH_40 0; +BA_ "GenSigSendType" SG_ 327 CAN_DET_AZIMUTH_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_AZIMUTH_40 "CAN_DET_AZIMUTH_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_40 "CAN_DET_RANGE_40"; +BA_ "GenSigStartValue" SG_ 327 CAN_DET_RANGE_RATE_40 0; +BA_ "GenSigSendType" SG_ 327 CAN_DET_RANGE_RATE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_RANGE_RATE_40 "CAN_DET_RANGE_RATE_40"; +BA_ "GenSigSendType" SG_ 327 CAN_DET_AMPLITUDE_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_DET_AMPLITUDE_40 "CAN_DET_AMPLITUDE_40"; +BA_ "GenSigSendType" SG_ 327 CAN_SCAN_INDEX_2LSB_40 0; +BA_ "GenSigCmt" SG_ 327 CAN_SCAN_INDEX_2LSB_40 "CAN_SCAN_INDEX_2LSB_40"; +BA_ "GenMsgSendType" BO_ 325 1; +BA_ "GenMsgILSupport" BO_ 325 1; +BA_ "GenMsgNrOfRepetition" BO_ 325 0; +BA_ "GenMsgCycleTime" BO_ 325 0; +BA_ "NetworkInitialization" BO_ 325 0; +BA_ "GenMsgDelayTime" BO_ 325 0; +BA_ "GenSigVtEn" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigVtName" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_CONFID_AZIMUTH_38 "CAN_DET_CONFID_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_SUPER_RES_TARGET_38 "CAN_DET_SUPER_RES_TARGET_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_ND_TARGET_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_ND_TARGET_38 "CAN_DET_ND_TARGET_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_HOST_VEH_CLUTTER_38 "CAN_DET_HOST_VEH_CLUTTER_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_VALID_LEVEL_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_VALID_LEVEL_38 "CAN_DET_VALID_LEVEL_38"; +BA_ "GenSigStartValue" SG_ 325 CAN_DET_AZIMUTH_38 0; +BA_ "GenSigSendType" SG_ 325 CAN_DET_AZIMUTH_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_AZIMUTH_38 "CAN_DET_AZIMUTH_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_38 "CAN_DET_RANGE_38"; +BA_ "GenSigStartValue" SG_ 325 CAN_DET_RANGE_RATE_38 0; +BA_ "GenSigSendType" SG_ 325 CAN_DET_RANGE_RATE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_RANGE_RATE_38 "CAN_DET_RANGE_RATE_38"; +BA_ "GenSigSendType" SG_ 325 CAN_DET_AMPLITUDE_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_DET_AMPLITUDE_38 "CAN_DET_AMPLITUDE_38"; +BA_ "GenSigSendType" SG_ 325 CAN_SCAN_INDEX_2LSB_38 0; +BA_ "GenSigCmt" SG_ 325 CAN_SCAN_INDEX_2LSB_38 "CAN_SCAN_INDEX_2LSB_38"; +BA_ "GenMsgSendType" BO_ 324 1; +BA_ "GenMsgILSupport" BO_ 324 1; +BA_ "GenMsgNrOfRepetition" BO_ 324 0; +BA_ "GenMsgCycleTime" BO_ 324 0; +BA_ "NetworkInitialization" BO_ 324 0; +BA_ "GenMsgDelayTime" BO_ 324 0; +BA_ "GenSigVtEn" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigVtName" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_CONFID_AZIMUTH_37 "CAN_DET_CONFID_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_SUPER_RES_TARGET_37 "CAN_DET_SUPER_RES_TARGET_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_ND_TARGET_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_ND_TARGET_37 "CAN_DET_ND_TARGET_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_HOST_VEH_CLUTTER_37 "CAN_DET_HOST_VEH_CLUTTER_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_VALID_LEVEL_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_VALID_LEVEL_37 "CAN_DET_VALID_LEVEL_37"; +BA_ "GenSigStartValue" SG_ 324 CAN_DET_AZIMUTH_37 0; +BA_ "GenSigSendType" SG_ 324 CAN_DET_AZIMUTH_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_AZIMUTH_37 "CAN_DET_AZIMUTH_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_37 "CAN_DET_RANGE_37"; +BA_ "GenSigStartValue" SG_ 324 CAN_DET_RANGE_RATE_37 0; +BA_ "GenSigSendType" SG_ 324 CAN_DET_RANGE_RATE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_RANGE_RATE_37 "CAN_DET_RANGE_RATE_37"; +BA_ "GenSigSendType" SG_ 324 CAN_DET_AMPLITUDE_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_DET_AMPLITUDE_37 "CAN_DET_AMPLITUDE_37"; +BA_ "GenSigSendType" SG_ 324 CAN_SCAN_INDEX_2LSB_37 0; +BA_ "GenSigCmt" SG_ 324 CAN_SCAN_INDEX_2LSB_37 "CAN_SCAN_INDEX_2LSB_37"; +BA_ "GenMsgSendType" BO_ 323 1; +BA_ "GenMsgILSupport" BO_ 323 1; +BA_ "GenMsgNrOfRepetition" BO_ 323 0; +BA_ "GenMsgCycleTime" BO_ 323 0; +BA_ "NetworkInitialization" BO_ 323 0; +BA_ "GenMsgDelayTime" BO_ 323 0; +BA_ "GenSigVtEn" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigVtName" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_CONFID_AZIMUTH_36 "CAN_DET_CONFID_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_SUPER_RES_TARGET_36 "CAN_DET_SUPER_RES_TARGET_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_ND_TARGET_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_ND_TARGET_36 "CAN_DET_ND_TARGET_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_HOST_VEH_CLUTTER_36 "CAN_DET_HOST_VEH_CLUTTER_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_VALID_LEVEL_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_VALID_LEVEL_36 "CAN_DET_VALID_LEVEL_36"; +BA_ "GenSigStartValue" SG_ 323 CAN_DET_AZIMUTH_36 0; +BA_ "GenSigSendType" SG_ 323 CAN_DET_AZIMUTH_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_AZIMUTH_36 "CAN_DET_AZIMUTH_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_36 "CAN_DET_RANGE_36"; +BA_ "GenSigStartValue" SG_ 323 CAN_DET_RANGE_RATE_36 0; +BA_ "GenSigSendType" SG_ 323 CAN_DET_RANGE_RATE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_RANGE_RATE_36 "CAN_DET_RANGE_RATE_36"; +BA_ "GenSigSendType" SG_ 323 CAN_DET_AMPLITUDE_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_DET_AMPLITUDE_36 "CAN_DET_AMPLITUDE_36"; +BA_ "GenSigSendType" SG_ 323 CAN_SCAN_INDEX_2LSB_36 0; +BA_ "GenSigCmt" SG_ 323 CAN_SCAN_INDEX_2LSB_36 "CAN_SCAN_INDEX_2LSB_36"; +BA_ "GenMsgSendType" BO_ 322 1; +BA_ "GenMsgILSupport" BO_ 322 1; +BA_ "GenMsgNrOfRepetition" BO_ 322 0; +BA_ "GenMsgCycleTime" BO_ 322 0; +BA_ "NetworkInitialization" BO_ 322 0; +BA_ "GenMsgDelayTime" BO_ 322 0; +BA_ "GenSigVtEn" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigVtName" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_CONFID_AZIMUTH_35 "CAN_DET_CONFID_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_SUPER_RES_TARGET_35 "CAN_DET_SUPER_RES_TARGET_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_ND_TARGET_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_ND_TARGET_35 "CAN_DET_ND_TARGET_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_HOST_VEH_CLUTTER_35 "CAN_DET_HOST_VEH_CLUTTER_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_VALID_LEVEL_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_VALID_LEVEL_35 "CAN_DET_VALID_LEVEL_35"; +BA_ "GenSigStartValue" SG_ 322 CAN_DET_AZIMUTH_35 0; +BA_ "GenSigSendType" SG_ 322 CAN_DET_AZIMUTH_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_AZIMUTH_35 "CAN_DET_AZIMUTH_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_35 "CAN_DET_RANGE_35"; +BA_ "GenSigStartValue" SG_ 322 CAN_DET_RANGE_RATE_35 0; +BA_ "GenSigSendType" SG_ 322 CAN_DET_RANGE_RATE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_RANGE_RATE_35 "CAN_DET_RANGE_RATE_35"; +BA_ "GenSigSendType" SG_ 322 CAN_DET_AMPLITUDE_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_DET_AMPLITUDE_35 "CAN_DET_AMPLITUDE_35"; +BA_ "GenSigSendType" SG_ 322 CAN_SCAN_INDEX_2LSB_35 0; +BA_ "GenSigCmt" SG_ 322 CAN_SCAN_INDEX_2LSB_35 "CAN_SCAN_INDEX_2LSB_35"; +BA_ "GenMsgSendType" BO_ 321 1; +BA_ "GenMsgILSupport" BO_ 321 1; +BA_ "GenMsgNrOfRepetition" BO_ 321 0; +BA_ "GenMsgCycleTime" BO_ 321 0; +BA_ "NetworkInitialization" BO_ 321 0; +BA_ "GenMsgDelayTime" BO_ 321 0; +BA_ "GenSigVtEn" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigVtName" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_CONFID_AZIMUTH_34 "CAN_DET_CONFID_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_SUPER_RES_TARGET_34 "CAN_DET_SUPER_RES_TARGET_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_ND_TARGET_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_ND_TARGET_34 "CAN_DET_ND_TARGET_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_HOST_VEH_CLUTTER_34 "CAN_DET_HOST_VEH_CLUTTER_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_VALID_LEVEL_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_VALID_LEVEL_34 "CAN_DET_VALID_LEVEL_34"; +BA_ "GenSigStartValue" SG_ 321 CAN_DET_AZIMUTH_34 0; +BA_ "GenSigSendType" SG_ 321 CAN_DET_AZIMUTH_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_AZIMUTH_34 "CAN_DET_AZIMUTH_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_34 "CAN_DET_RANGE_34"; +BA_ "GenSigStartValue" SG_ 321 CAN_DET_RANGE_RATE_34 0; +BA_ "GenSigSendType" SG_ 321 CAN_DET_RANGE_RATE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_RANGE_RATE_34 "CAN_DET_RANGE_RATE_34"; +BA_ "GenSigSendType" SG_ 321 CAN_DET_AMPLITUDE_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_DET_AMPLITUDE_34 "CAN_DET_AMPLITUDE_34"; +BA_ "GenSigSendType" SG_ 321 CAN_SCAN_INDEX_2LSB_34 0; +BA_ "GenSigCmt" SG_ 321 CAN_SCAN_INDEX_2LSB_34 "CAN_SCAN_INDEX_2LSB_34"; +BA_ "GenMsgSendType" BO_ 320 1; +BA_ "GenMsgILSupport" BO_ 320 1; +BA_ "GenMsgNrOfRepetition" BO_ 320 0; +BA_ "GenMsgCycleTime" BO_ 320 0; +BA_ "NetworkInitialization" BO_ 320 0; +BA_ "GenMsgDelayTime" BO_ 320 0; +BA_ "GenSigVtEn" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigVtName" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_CONFID_AZIMUTH_33 "CAN_DET_CONFID_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_SUPER_RES_TARGET_33 "CAN_DET_SUPER_RES_TARGET_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_ND_TARGET_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_ND_TARGET_33 "CAN_DET_ND_TARGET_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_HOST_VEH_CLUTTER_33 "CAN_DET_HOST_VEH_CLUTTER_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_VALID_LEVEL_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_VALID_LEVEL_33 "CAN_DET_VALID_LEVEL_33"; +BA_ "GenSigStartValue" SG_ 320 CAN_DET_AZIMUTH_33 0; +BA_ "GenSigSendType" SG_ 320 CAN_DET_AZIMUTH_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_AZIMUTH_33 "CAN_DET_AZIMUTH_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_33 "CAN_DET_RANGE_33"; +BA_ "GenSigStartValue" SG_ 320 CAN_DET_RANGE_RATE_33 0; +BA_ "GenSigSendType" SG_ 320 CAN_DET_RANGE_RATE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_RANGE_RATE_33 "CAN_DET_RANGE_RATE_33"; +BA_ "GenSigSendType" SG_ 320 CAN_DET_AMPLITUDE_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_DET_AMPLITUDE_33 "CAN_DET_AMPLITUDE_33"; +BA_ "GenSigSendType" SG_ 320 CAN_SCAN_INDEX_2LSB_33 0; +BA_ "GenSigCmt" SG_ 320 CAN_SCAN_INDEX_2LSB_33 "CAN_SCAN_INDEX_2LSB_33"; +BA_ "GenMsgSendType" BO_ 319 1; +BA_ "GenMsgILSupport" BO_ 319 1; +BA_ "GenMsgNrOfRepetition" BO_ 319 0; +BA_ "GenMsgCycleTime" BO_ 319 0; +BA_ "NetworkInitialization" BO_ 319 0; +BA_ "GenMsgDelayTime" BO_ 319 0; +BA_ "GenSigVtEn" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigVtName" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_CONFID_AZIMUTH_32 "CAN_DET_CONFID_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_SUPER_RES_TARGET_32 "CAN_DET_SUPER_RES_TARGET_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_ND_TARGET_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_ND_TARGET_32 "CAN_DET_ND_TARGET_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_HOST_VEH_CLUTTER_32 "CAN_DET_HOST_VEH_CLUTTER_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_VALID_LEVEL_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_VALID_LEVEL_32 "CAN_DET_VALID_LEVEL_32"; +BA_ "GenSigStartValue" SG_ 319 CAN_DET_AZIMUTH_32 0; +BA_ "GenSigSendType" SG_ 319 CAN_DET_AZIMUTH_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_AZIMUTH_32 "CAN_DET_AZIMUTH_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_32 "CAN_DET_RANGE_32"; +BA_ "GenSigStartValue" SG_ 319 CAN_DET_RANGE_RATE_32 0; +BA_ "GenSigSendType" SG_ 319 CAN_DET_RANGE_RATE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_RANGE_RATE_32 "CAN_DET_RANGE_RATE_32"; +BA_ "GenSigSendType" SG_ 319 CAN_DET_AMPLITUDE_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_DET_AMPLITUDE_32 "CAN_DET_AMPLITUDE_32"; +BA_ "GenSigSendType" SG_ 319 CAN_SCAN_INDEX_2LSB_32 0; +BA_ "GenSigCmt" SG_ 319 CAN_SCAN_INDEX_2LSB_32 "CAN_SCAN_INDEX_2LSB_32"; +BA_ "GenMsgSendType" BO_ 318 1; +BA_ "GenMsgILSupport" BO_ 318 1; +BA_ "GenMsgNrOfRepetition" BO_ 318 0; +BA_ "GenMsgCycleTime" BO_ 318 0; +BA_ "NetworkInitialization" BO_ 318 0; +BA_ "GenMsgDelayTime" BO_ 318 0; +BA_ "GenSigVtEn" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigVtName" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_CONFID_AZIMUTH_31 "CAN_DET_CONFID_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_SUPER_RES_TARGET_31 "CAN_DET_SUPER_RES_TARGET_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_ND_TARGET_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_ND_TARGET_31 "CAN_DET_ND_TARGET_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_HOST_VEH_CLUTTER_31 "CAN_DET_HOST_VEH_CLUTTER_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_VALID_LEVEL_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_VALID_LEVEL_31 "CAN_DET_VALID_LEVEL_31"; +BA_ "GenSigStartValue" SG_ 318 CAN_DET_AZIMUTH_31 0; +BA_ "GenSigSendType" SG_ 318 CAN_DET_AZIMUTH_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_AZIMUTH_31 "CAN_DET_AZIMUTH_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_31 "CAN_DET_RANGE_31"; +BA_ "GenSigStartValue" SG_ 318 CAN_DET_RANGE_RATE_31 0; +BA_ "GenSigSendType" SG_ 318 CAN_DET_RANGE_RATE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_RANGE_RATE_31 "CAN_DET_RANGE_RATE_31"; +BA_ "GenSigSendType" SG_ 318 CAN_DET_AMPLITUDE_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_DET_AMPLITUDE_31 "CAN_DET_AMPLITUDE_31"; +BA_ "GenSigSendType" SG_ 318 CAN_SCAN_INDEX_2LSB_31 0; +BA_ "GenSigCmt" SG_ 318 CAN_SCAN_INDEX_2LSB_31 "CAN_SCAN_INDEX_2LSB_31"; +BA_ "GenMsgSendType" BO_ 317 1; +BA_ "GenMsgILSupport" BO_ 317 1; +BA_ "GenMsgNrOfRepetition" BO_ 317 0; +BA_ "GenMsgCycleTime" BO_ 317 0; +BA_ "NetworkInitialization" BO_ 317 0; +BA_ "GenMsgDelayTime" BO_ 317 0; +BA_ "GenSigVtEn" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigVtName" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_CONFID_AZIMUTH_30 "CAN_DET_CONFID_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_SUPER_RES_TARGET_30 "CAN_DET_SUPER_RES_TARGET_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_ND_TARGET_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_ND_TARGET_30 "CAN_DET_ND_TARGET_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_HOST_VEH_CLUTTER_30 "CAN_DET_HOST_VEH_CLUTTER_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_VALID_LEVEL_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_VALID_LEVEL_30 "CAN_DET_VALID_LEVEL_30"; +BA_ "GenSigStartValue" SG_ 317 CAN_DET_AZIMUTH_30 0; +BA_ "GenSigSendType" SG_ 317 CAN_DET_AZIMUTH_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_AZIMUTH_30 "CAN_DET_AZIMUTH_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_30 "CAN_DET_RANGE_30"; +BA_ "GenSigStartValue" SG_ 317 CAN_DET_RANGE_RATE_30 0; +BA_ "GenSigSendType" SG_ 317 CAN_DET_RANGE_RATE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_RANGE_RATE_30 "CAN_DET_RANGE_RATE_30"; +BA_ "GenSigSendType" SG_ 317 CAN_DET_AMPLITUDE_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_DET_AMPLITUDE_30 "CAN_DET_AMPLITUDE_30"; +BA_ "GenSigSendType" SG_ 317 CAN_SCAN_INDEX_2LSB_30 0; +BA_ "GenSigCmt" SG_ 317 CAN_SCAN_INDEX_2LSB_30 "CAN_SCAN_INDEX_2LSB_30"; +BA_ "GenMsgSendType" BO_ 316 1; +BA_ "GenMsgILSupport" BO_ 316 1; +BA_ "GenMsgNrOfRepetition" BO_ 316 0; +BA_ "GenMsgCycleTime" BO_ 316 0; +BA_ "NetworkInitialization" BO_ 316 0; +BA_ "GenMsgDelayTime" BO_ 316 0; +BA_ "GenSigVtEn" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigVtName" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_CONFID_AZIMUTH_29 "CAN_DET_CONFID_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_SUPER_RES_TARGET_29 "CAN_DET_SUPER_RES_TARGET_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_ND_TARGET_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_ND_TARGET_29 "CAN_DET_ND_TARGET_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_HOST_VEH_CLUTTER_29 "CAN_DET_HOST_VEH_CLUTTER_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_VALID_LEVEL_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_VALID_LEVEL_29 "CAN_DET_VALID_LEVEL_29"; +BA_ "GenSigStartValue" SG_ 316 CAN_DET_AZIMUTH_29 0; +BA_ "GenSigSendType" SG_ 316 CAN_DET_AZIMUTH_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_AZIMUTH_29 "CAN_DET_AZIMUTH_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_29 "CAN_DET_RANGE_29"; +BA_ "GenSigStartValue" SG_ 316 CAN_DET_RANGE_RATE_29 0; +BA_ "GenSigSendType" SG_ 316 CAN_DET_RANGE_RATE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_RANGE_RATE_29 "CAN_DET_RANGE_RATE_29"; +BA_ "GenSigSendType" SG_ 316 CAN_DET_AMPLITUDE_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_DET_AMPLITUDE_29 "CAN_DET_AMPLITUDE_29"; +BA_ "GenSigSendType" SG_ 316 CAN_SCAN_INDEX_2LSB_29 0; +BA_ "GenSigCmt" SG_ 316 CAN_SCAN_INDEX_2LSB_29 "CAN_SCAN_INDEX_2LSB_29"; +BA_ "GenMsgSendType" BO_ 314 1; +BA_ "GenMsgILSupport" BO_ 314 1; +BA_ "GenMsgNrOfRepetition" BO_ 314 0; +BA_ "GenMsgCycleTime" BO_ 314 0; +BA_ "NetworkInitialization" BO_ 314 0; +BA_ "GenMsgDelayTime" BO_ 314 0; +BA_ "GenSigVtEn" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigVtName" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_CONFID_AZIMUTH_27 "CAN_DET_CONFID_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_SUPER_RES_TARGET_27 "CAN_DET_SUPER_RES_TARGET_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_ND_TARGET_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_ND_TARGET_27 "CAN_DET_ND_TARGET_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_HOST_VEH_CLUTTER_27 "CAN_DET_HOST_VEH_CLUTTER_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_VALID_LEVEL_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_VALID_LEVEL_27 "CAN_DET_VALID_LEVEL_27"; +BA_ "GenSigStartValue" SG_ 314 CAN_DET_AZIMUTH_27 0; +BA_ "GenSigSendType" SG_ 314 CAN_DET_AZIMUTH_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_AZIMUTH_27 "CAN_DET_AZIMUTH_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_27 "CAN_DET_RANGE_27"; +BA_ "GenSigStartValue" SG_ 314 CAN_DET_RANGE_RATE_27 0; +BA_ "GenSigSendType" SG_ 314 CAN_DET_RANGE_RATE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_RANGE_RATE_27 "CAN_DET_RANGE_RATE_27"; +BA_ "GenSigSendType" SG_ 314 CAN_DET_AMPLITUDE_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_DET_AMPLITUDE_27 "CAN_DET_AMPLITUDE_27"; +BA_ "GenSigSendType" SG_ 314 CAN_SCAN_INDEX_2LSB_27 0; +BA_ "GenSigCmt" SG_ 314 CAN_SCAN_INDEX_2LSB_27 "CAN_SCAN_INDEX_2LSB_27"; +BA_ "GenMsgSendType" BO_ 313 1; +BA_ "GenMsgILSupport" BO_ 313 1; +BA_ "GenMsgNrOfRepetition" BO_ 313 0; +BA_ "GenMsgCycleTime" BO_ 313 0; +BA_ "NetworkInitialization" BO_ 313 0; +BA_ "GenMsgDelayTime" BO_ 313 0; +BA_ "GenSigVtEn" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigVtName" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_CONFID_AZIMUTH_26 "CAN_DET_CONFID_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_SUPER_RES_TARGET_26 "CAN_DET_SUPER_RES_TARGET_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_ND_TARGET_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_ND_TARGET_26 "CAN_DET_ND_TARGET_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_HOST_VEH_CLUTTER_26 "CAN_DET_HOST_VEH_CLUTTER_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_VALID_LEVEL_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_VALID_LEVEL_26 "CAN_DET_VALID_LEVEL_26"; +BA_ "GenSigStartValue" SG_ 313 CAN_DET_AZIMUTH_26 0; +BA_ "GenSigSendType" SG_ 313 CAN_DET_AZIMUTH_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_AZIMUTH_26 "CAN_DET_AZIMUTH_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_26 "CAN_DET_RANGE_26"; +BA_ "GenSigStartValue" SG_ 313 CAN_DET_RANGE_RATE_26 0; +BA_ "GenSigSendType" SG_ 313 CAN_DET_RANGE_RATE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_RANGE_RATE_26 "CAN_DET_RANGE_RATE_26"; +BA_ "GenSigSendType" SG_ 313 CAN_DET_AMPLITUDE_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_DET_AMPLITUDE_26 "CAN_DET_AMPLITUDE_26"; +BA_ "GenSigSendType" SG_ 313 CAN_SCAN_INDEX_2LSB_26 0; +BA_ "GenSigCmt" SG_ 313 CAN_SCAN_INDEX_2LSB_26 "CAN_SCAN_INDEX_2LSB_26"; +BA_ "GenMsgSendType" BO_ 312 1; +BA_ "GenMsgILSupport" BO_ 312 1; +BA_ "GenMsgNrOfRepetition" BO_ 312 0; +BA_ "GenMsgCycleTime" BO_ 312 0; +BA_ "NetworkInitialization" BO_ 312 0; +BA_ "GenMsgDelayTime" BO_ 312 0; +BA_ "GenSigVtEn" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigVtName" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_CONFID_AZIMUTH_25 "CAN_DET_CONFID_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_SUPER_RES_TARGET_25 "CAN_DET_SUPER_RES_TARGET_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_ND_TARGET_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_ND_TARGET_25 "CAN_DET_ND_TARGET_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_HOST_VEH_CLUTTER_25 "CAN_DET_HOST_VEH_CLUTTER_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_VALID_LEVEL_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_VALID_LEVEL_25 "CAN_DET_VALID_LEVEL_25"; +BA_ "GenSigStartValue" SG_ 312 CAN_DET_AZIMUTH_25 0; +BA_ "GenSigSendType" SG_ 312 CAN_DET_AZIMUTH_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_AZIMUTH_25 "CAN_DET_AZIMUTH_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_25 "CAN_DET_RANGE_25"; +BA_ "GenSigStartValue" SG_ 312 CAN_DET_RANGE_RATE_25 0; +BA_ "GenSigSendType" SG_ 312 CAN_DET_RANGE_RATE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_RANGE_RATE_25 "CAN_DET_RANGE_RATE_25"; +BA_ "GenSigSendType" SG_ 312 CAN_DET_AMPLITUDE_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_DET_AMPLITUDE_25 "CAN_DET_AMPLITUDE_25"; +BA_ "GenSigSendType" SG_ 312 CAN_SCAN_INDEX_2LSB_25 0; +BA_ "GenSigCmt" SG_ 312 CAN_SCAN_INDEX_2LSB_25 "CAN_SCAN_INDEX_2LSB_25"; +BA_ "GenMsgSendType" BO_ 311 1; +BA_ "GenMsgILSupport" BO_ 311 1; +BA_ "GenMsgNrOfRepetition" BO_ 311 0; +BA_ "GenMsgCycleTime" BO_ 311 0; +BA_ "NetworkInitialization" BO_ 311 0; +BA_ "GenMsgDelayTime" BO_ 311 0; +BA_ "GenSigVtEn" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigVtName" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_CONFID_AZIMUTH_24 "CAN_DET_CONFID_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_SUPER_RES_TARGET_24 "CAN_DET_SUPER_RES_TARGET_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_ND_TARGET_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_ND_TARGET_24 "CAN_DET_ND_TARGET_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_HOST_VEH_CLUTTER_24 "CAN_DET_HOST_VEH_CLUTTER_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_VALID_LEVEL_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_VALID_LEVEL_24 "CAN_DET_VALID_LEVEL_24"; +BA_ "GenSigStartValue" SG_ 311 CAN_DET_AZIMUTH_24 0; +BA_ "GenSigSendType" SG_ 311 CAN_DET_AZIMUTH_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_AZIMUTH_24 "CAN_DET_AZIMUTH_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_24 "CAN_DET_RANGE_24"; +BA_ "GenSigStartValue" SG_ 311 CAN_DET_RANGE_RATE_24 0; +BA_ "GenSigSendType" SG_ 311 CAN_DET_RANGE_RATE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_RANGE_RATE_24 "CAN_DET_RANGE_RATE_24"; +BA_ "GenSigSendType" SG_ 311 CAN_DET_AMPLITUDE_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_DET_AMPLITUDE_24 "CAN_DET_AMPLITUDE_24"; +BA_ "GenSigSendType" SG_ 311 CAN_SCAN_INDEX_2LSB_24 0; +BA_ "GenSigCmt" SG_ 311 CAN_SCAN_INDEX_2LSB_24 "CAN_SCAN_INDEX_2LSB_24"; +BA_ "GenMsgSendType" BO_ 310 1; +BA_ "GenMsgILSupport" BO_ 310 1; +BA_ "GenMsgNrOfRepetition" BO_ 310 0; +BA_ "GenMsgCycleTime" BO_ 310 0; +BA_ "NetworkInitialization" BO_ 310 0; +BA_ "GenMsgDelayTime" BO_ 310 0; +BA_ "GenSigVtEn" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigVtName" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_CONFID_AZIMUTH_23 "CAN_DET_CONFID_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_SUPER_RES_TARGET_23 "CAN_DET_SUPER_RES_TARGET_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_ND_TARGET_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_ND_TARGET_23 "CAN_DET_ND_TARGET_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_HOST_VEH_CLUTTER_23 "CAN_DET_HOST_VEH_CLUTTER_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_VALID_LEVEL_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_VALID_LEVEL_23 "CAN_DET_VALID_LEVEL_23"; +BA_ "GenSigStartValue" SG_ 310 CAN_DET_AZIMUTH_23 0; +BA_ "GenSigSendType" SG_ 310 CAN_DET_AZIMUTH_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_AZIMUTH_23 "CAN_DET_AZIMUTH_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_23 "CAN_DET_RANGE_23"; +BA_ "GenSigStartValue" SG_ 310 CAN_DET_RANGE_RATE_23 0; +BA_ "GenSigSendType" SG_ 310 CAN_DET_RANGE_RATE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_RANGE_RATE_23 "CAN_DET_RANGE_RATE_23"; +BA_ "GenSigSendType" SG_ 310 CAN_DET_AMPLITUDE_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_DET_AMPLITUDE_23 "CAN_DET_AMPLITUDE_23"; +BA_ "GenSigSendType" SG_ 310 CAN_SCAN_INDEX_2LSB_23 0; +BA_ "GenSigCmt" SG_ 310 CAN_SCAN_INDEX_2LSB_23 "CAN_SCAN_INDEX_2LSB_23"; +EOF + +build_ba "22" +build_ba "21" +build_ba "20" +build_ba "19" +build_ba "18" + +cat <> ${OUT_FILENAME} +BA_ "GenMsgSendType" BO_ 341 1; +BA_ "GenMsgILSupport" BO_ 341 1; +BA_ "GenMsgNrOfRepetition" BO_ 341 0; +BA_ "GenMsgCycleTime" BO_ 341 0; +BA_ "NetworkInitialization" BO_ 341 0; +BA_ "GenMsgDelayTime" BO_ 341 0; +BA_ "GenSigVtEn" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigVtName" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_CONFID_AZIMUTH_54 "CAN_DET_CONFID_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_SUPER_RES_TARGET_54 "CAN_DET_SUPER_RES_TARGET_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_ND_TARGET_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_ND_TARGET_54 "CAN_DET_ND_TARGET_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_HOST_VEH_CLUTTER_54 "CAN_DET_HOST_VEH_CLUTTER_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_VALID_LEVEL_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_VALID_LEVEL_54 "CAN_DET_VALID_LEVEL_54"; +BA_ "GenSigStartValue" SG_ 341 CAN_DET_AZIMUTH_54 0; +BA_ "GenSigSendType" SG_ 341 CAN_DET_AZIMUTH_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_AZIMUTH_54 "CAN_DET_AZIMUTH_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_54 "CAN_DET_RANGE_54"; +BA_ "GenSigStartValue" SG_ 341 CAN_DET_RANGE_RATE_54 0; +BA_ "GenSigSendType" SG_ 341 CAN_DET_RANGE_RATE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_RANGE_RATE_54 "CAN_DET_RANGE_RATE_54"; +BA_ "GenSigSendType" SG_ 341 CAN_DET_AMPLITUDE_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_DET_AMPLITUDE_54 "CAN_DET_AMPLITUDE_54"; +BA_ "GenSigSendType" SG_ 341 CAN_SCAN_INDEX_2LSB_54 0; +BA_ "GenSigCmt" SG_ 341 CAN_SCAN_INDEX_2LSB_54 "CAN_SCAN_INDEX_2LSB_54"; +BA_ "GenMsgSendType" BO_ 340 1; +BA_ "GenMsgILSupport" BO_ 340 1; +BA_ "GenMsgNrOfRepetition" BO_ 340 0; +BA_ "GenMsgCycleTime" BO_ 340 0; +BA_ "NetworkInitialization" BO_ 340 0; +BA_ "GenMsgDelayTime" BO_ 340 0; +BA_ "GenSigVtEn" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigVtName" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_CONFID_AZIMUTH_53 "CAN_DET_CONFID_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_SUPER_RES_TARGET_53 "CAN_DET_SUPER_RES_TARGET_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_ND_TARGET_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_ND_TARGET_53 "CAN_DET_ND_TARGET_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_HOST_VEH_CLUTTER_53 "CAN_DET_HOST_VEH_CLUTTER_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_VALID_LEVEL_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_VALID_LEVEL_53 "CAN_DET_VALID_LEVEL_53"; +BA_ "GenSigStartValue" SG_ 340 CAN_DET_AZIMUTH_53 0; +BA_ "GenSigSendType" SG_ 340 CAN_DET_AZIMUTH_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_AZIMUTH_53 "CAN_DET_AZIMUTH_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_53 "CAN_DET_RANGE_53"; +BA_ "GenSigStartValue" SG_ 340 CAN_DET_RANGE_RATE_53 0; +BA_ "GenSigSendType" SG_ 340 CAN_DET_RANGE_RATE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_RANGE_RATE_53 "CAN_DET_RANGE_RATE_53"; +BA_ "GenSigSendType" SG_ 340 CAN_DET_AMPLITUDE_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_DET_AMPLITUDE_53 "CAN_DET_AMPLITUDE_53"; +BA_ "GenSigSendType" SG_ 340 CAN_SCAN_INDEX_2LSB_53 0; +BA_ "GenSigCmt" SG_ 340 CAN_SCAN_INDEX_2LSB_53 "CAN_SCAN_INDEX_2LSB_53"; +BA_ "GenMsgSendType" BO_ 339 1; +BA_ "GenMsgILSupport" BO_ 339 1; +BA_ "GenMsgNrOfRepetition" BO_ 339 0; +BA_ "GenMsgCycleTime" BO_ 339 0; +BA_ "NetworkInitialization" BO_ 339 0; +BA_ "GenMsgDelayTime" BO_ 339 0; +BA_ "GenSigVtEn" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigVtName" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_CONFID_AZIMUTH_52 "CAN_DET_CONFID_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_SUPER_RES_TARGET_52 "CAN_DET_SUPER_RES_TARGET_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_ND_TARGET_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_ND_TARGET_52 "CAN_DET_ND_TARGET_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_HOST_VEH_CLUTTER_52 "CAN_DET_HOST_VEH_CLUTTER_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_VALID_LEVEL_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_VALID_LEVEL_52 "CAN_DET_VALID_LEVEL_52"; +BA_ "GenSigStartValue" SG_ 339 CAN_DET_AZIMUTH_52 0; +BA_ "GenSigSendType" SG_ 339 CAN_DET_AZIMUTH_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_AZIMUTH_52 "CAN_DET_AZIMUTH_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_52 "CAN_DET_RANGE_52"; +BA_ "GenSigStartValue" SG_ 339 CAN_DET_RANGE_RATE_52 0; +BA_ "GenSigSendType" SG_ 339 CAN_DET_RANGE_RATE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_RANGE_RATE_52 "CAN_DET_RANGE_RATE_52"; +BA_ "GenSigSendType" SG_ 339 CAN_DET_AMPLITUDE_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_DET_AMPLITUDE_52 "CAN_DET_AMPLITUDE_52"; +BA_ "GenSigSendType" SG_ 339 CAN_SCAN_INDEX_2LSB_52 0; +BA_ "GenSigCmt" SG_ 339 CAN_SCAN_INDEX_2LSB_52 "CAN_SCAN_INDEX_2LSB_52"; +BA_ "GenMsgSendType" BO_ 338 1; +BA_ "GenMsgILSupport" BO_ 338 1; +BA_ "GenMsgNrOfRepetition" BO_ 338 0; +BA_ "GenMsgCycleTime" BO_ 338 0; +BA_ "NetworkInitialization" BO_ 338 0; +BA_ "GenMsgDelayTime" BO_ 338 0; +BA_ "GenSigVtEn" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigVtName" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_CONFID_AZIMUTH_51 "CAN_DET_CONFID_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_SUPER_RES_TARGET_51 "CAN_DET_SUPER_RES_TARGET_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_ND_TARGET_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_ND_TARGET_51 "CAN_DET_ND_TARGET_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_HOST_VEH_CLUTTER_51 "CAN_DET_HOST_VEH_CLUTTER_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_VALID_LEVEL_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_VALID_LEVEL_51 "CAN_DET_VALID_LEVEL_51"; +BA_ "GenSigStartValue" SG_ 338 CAN_DET_AZIMUTH_51 0; +BA_ "GenSigSendType" SG_ 338 CAN_DET_AZIMUTH_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_AZIMUTH_51 "CAN_DET_AZIMUTH_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_51 "CAN_DET_RANGE_51"; +BA_ "GenSigStartValue" SG_ 338 CAN_DET_RANGE_RATE_51 0; +BA_ "GenSigSendType" SG_ 338 CAN_DET_RANGE_RATE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_RANGE_RATE_51 "CAN_DET_RANGE_RATE_51"; +BA_ "GenSigSendType" SG_ 338 CAN_DET_AMPLITUDE_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_DET_AMPLITUDE_51 "CAN_DET_AMPLITUDE_51"; +BA_ "GenSigSendType" SG_ 338 CAN_SCAN_INDEX_2LSB_51 0; +BA_ "GenSigCmt" SG_ 338 CAN_SCAN_INDEX_2LSB_51 "CAN_SCAN_INDEX_2LSB_51"; +BA_ "GenMsgSendType" BO_ 337 1; +BA_ "GenMsgILSupport" BO_ 337 1; +BA_ "GenMsgNrOfRepetition" BO_ 337 0; +BA_ "GenMsgCycleTime" BO_ 337 0; +BA_ "NetworkInitialization" BO_ 337 0; +BA_ "GenMsgDelayTime" BO_ 337 0; +BA_ "GenSigVtEn" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigVtName" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_CONFID_AZIMUTH_50 "CAN_DET_CONFID_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_SUPER_RES_TARGET_50 "CAN_DET_SUPER_RES_TARGET_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_ND_TARGET_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_ND_TARGET_50 "CAN_DET_ND_TARGET_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_HOST_VEH_CLUTTER_50 "CAN_DET_HOST_VEH_CLUTTER_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_VALID_LEVEL_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_VALID_LEVEL_50 "CAN_DET_VALID_LEVEL_50"; +BA_ "GenSigStartValue" SG_ 337 CAN_DET_AZIMUTH_50 0; +BA_ "GenSigSendType" SG_ 337 CAN_DET_AZIMUTH_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_AZIMUTH_50 "CAN_DET_AZIMUTH_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_50 "CAN_DET_RANGE_50"; +BA_ "GenSigStartValue" SG_ 337 CAN_DET_RANGE_RATE_50 0; +BA_ "GenSigSendType" SG_ 337 CAN_DET_RANGE_RATE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_RANGE_RATE_50 "CAN_DET_RANGE_RATE_50"; +BA_ "GenSigSendType" SG_ 337 CAN_DET_AMPLITUDE_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_DET_AMPLITUDE_50 "CAN_DET_AMPLITUDE_50"; +BA_ "GenSigSendType" SG_ 337 CAN_SCAN_INDEX_2LSB_50 0; +BA_ "GenSigCmt" SG_ 337 CAN_SCAN_INDEX_2LSB_50 "CAN_SCAN_INDEX_2LSB_50"; +BA_ "GenMsgSendType" BO_ 336 1; +BA_ "GenMsgILSupport" BO_ 336 1; +BA_ "GenMsgNrOfRepetition" BO_ 336 0; +BA_ "GenMsgCycleTime" BO_ 336 0; +BA_ "NetworkInitialization" BO_ 336 0; +BA_ "GenMsgDelayTime" BO_ 336 0; +BA_ "GenSigVtEn" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigVtName" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_CONFID_AZIMUTH_49 "CAN_DET_CONFID_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_SUPER_RES_TARGET_49 "CAN_DET_SUPER_RES_TARGET_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_ND_TARGET_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_ND_TARGET_49 "CAN_DET_ND_TARGET_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_HOST_VEH_CLUTTER_49 "CAN_DET_HOST_VEH_CLUTTER_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_VALID_LEVEL_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_VALID_LEVEL_49 "CAN_DET_VALID_LEVEL_49"; +BA_ "GenSigStartValue" SG_ 336 CAN_DET_AZIMUTH_49 0; +BA_ "GenSigSendType" SG_ 336 CAN_DET_AZIMUTH_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_AZIMUTH_49 "CAN_DET_AZIMUTH_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_49 "CAN_DET_RANGE_49"; +BA_ "GenSigStartValue" SG_ 336 CAN_DET_RANGE_RATE_49 0; +BA_ "GenSigSendType" SG_ 336 CAN_DET_RANGE_RATE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_RANGE_RATE_49 "CAN_DET_RANGE_RATE_49"; +BA_ "GenSigSendType" SG_ 336 CAN_DET_AMPLITUDE_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_DET_AMPLITUDE_49 "CAN_DET_AMPLITUDE_49"; +BA_ "GenSigSendType" SG_ 336 CAN_SCAN_INDEX_2LSB_49 0; +BA_ "GenSigCmt" SG_ 336 CAN_SCAN_INDEX_2LSB_49 "CAN_SCAN_INDEX_2LSB_49"; +BA_ "GenMsgSendType" BO_ 326 1; +BA_ "GenMsgILSupport" BO_ 326 1; +BA_ "GenMsgNrOfRepetition" BO_ 326 0; +BA_ "GenMsgCycleTime" BO_ 326 0; +BA_ "NetworkInitialization" BO_ 326 0; +BA_ "GenMsgDelayTime" BO_ 326 0; +BA_ "GenSigVtEn" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigVtName" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_CONFID_AZIMUTH_39 "CAN_DET_CONFID_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_SUPER_RES_TARGET_39 "CAN_DET_SUPER_RES_TARGET_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_ND_TARGET_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_ND_TARGET_39 "CAN_DET_ND_TARGET_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_HOST_VEH_CLUTTER_39 "CAN_DET_HOST_VEH_CLUTTER_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_VALID_LEVEL_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_VALID_LEVEL_39 "CAN_DET_VALID_LEVEL_39"; +BA_ "GenSigStartValue" SG_ 326 CAN_DET_AZIMUTH_39 0; +BA_ "GenSigSendType" SG_ 326 CAN_DET_AZIMUTH_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_AZIMUTH_39 "CAN_DET_AZIMUTH_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_39 "CAN_DET_RANGE_39"; +BA_ "GenSigStartValue" SG_ 326 CAN_DET_RANGE_RATE_39 0; +BA_ "GenSigSendType" SG_ 326 CAN_DET_RANGE_RATE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_RANGE_RATE_39 "CAN_DET_RANGE_RATE_39"; +BA_ "GenSigSendType" SG_ 326 CAN_DET_AMPLITUDE_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_DET_AMPLITUDE_39 "CAN_DET_AMPLITUDE_39"; +BA_ "GenSigSendType" SG_ 326 CAN_SCAN_INDEX_2LSB_39 0; +BA_ "GenSigCmt" SG_ 326 CAN_SCAN_INDEX_2LSB_39 "CAN_SCAN_INDEX_2LSB_39"; +BA_ "GenMsgSendType" BO_ 315 1; +BA_ "GenMsgILSupport" BO_ 315 1; +BA_ "GenMsgNrOfRepetition" BO_ 315 0; +BA_ "GenMsgCycleTime" BO_ 315 0; +BA_ "NetworkInitialization" BO_ 315 0; +BA_ "GenMsgDelayTime" BO_ 315 0; +BA_ "GenSigVtEn" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigVtName" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_CONFID_AZIMUTH_28 "CAN_DET_CONFID_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_SUPER_RES_TARGET_28 "CAN_DET_SUPER_RES_TARGET_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_ND_TARGET_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_ND_TARGET_28 "CAN_DET_ND_TARGET_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_HOST_VEH_CLUTTER_28 "CAN_DET_HOST_VEH_CLUTTER_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_VALID_LEVEL_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_VALID_LEVEL_28 "CAN_DET_VALID_LEVEL_28"; +BA_ "GenSigStartValue" SG_ 315 CAN_DET_AZIMUTH_28 0; +BA_ "GenSigSendType" SG_ 315 CAN_DET_AZIMUTH_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_AZIMUTH_28 "CAN_DET_AZIMUTH_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_28 "CAN_DET_RANGE_28"; +BA_ "GenSigStartValue" SG_ 315 CAN_DET_RANGE_RATE_28 0; +BA_ "GenSigSendType" SG_ 315 CAN_DET_RANGE_RATE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_RANGE_RATE_28 "CAN_DET_RANGE_RATE_28"; +BA_ "GenSigSendType" SG_ 315 CAN_DET_AMPLITUDE_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_DET_AMPLITUDE_28 "CAN_DET_AMPLITUDE_28"; +BA_ "GenSigSendType" SG_ 315 CAN_SCAN_INDEX_2LSB_28 0; +BA_ "GenSigCmt" SG_ 315 CAN_SCAN_INDEX_2LSB_28 "CAN_SCAN_INDEX_2LSB_28"; +EOF + +build_ba "17" +build_ba "16" +build_ba "15" +build_ba "14" +build_ba "13" +build_ba "12" +build_ba "11" +build_ba "10" +build_ba "09" +build_ba "08" +build_ba "07" +build_ba "06" +build_ba "05" +build_ba "03" +build_ba "02" + +cat <> ${OUT_FILENAME} +BA_ "GenMsgSendType" BO_ 256 1; +BA_ "GenMsgILSupport" BO_ 256 1; +BA_ "GenMsgNrOfRepetition" BO_ 256 0; +BA_ "NetworkInitialization" BO_ 256 0; +BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MINOR_MRR "CAN_PCAN_MINOR_MRR"; +BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MINOR_MRR 0; +BA_ "GenSigCmt" SG_ 256 CAN_PCAN_MAJOR_MRR "CAN_PCAN_MAJOR_MRR"; +BA_ "GenSigSendType" SG_ 256 CAN_PCAN_MAJOR_MRR 0; +BA_ "GenMsgCycleTime" BO_ 257 30; +BA_ "GenMsgSendType" BO_ 257 0; +BA_ "GenMsgILSupport" BO_ 257 1; +BA_ "GenMsgNrOfRepetition" BO_ 257 0; +BA_ "NetworkInitialization" BO_ 257 0; +BA_ "GenSigCmt" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtEn" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtName" SG_ 257 CAN_INTERFERENCE_TYPE "CAN_INTERFERENCE_TYPE"; +BA_ "GenSigVtName" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigCmt" SG_ 257 CAN_RECOMMEND_UNCONVERGE "CAN_RECOMMEND_UNCONVERGE"; +BA_ "GenSigStartValue" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL 0; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE_FILTER_VAL "CAN_BLOCKAGE_SIDELOBE_FILTER_VAL"; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_INCOMPLETE "CAN_RADAR_ALIGN_INCOMPLETE"; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_SIDELOBE "CAN_BLOCKAGE_SIDELOBE"; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_SIDELOBE 0; +BA_ "GenSigCmt" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigVtEn" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigVtName" SG_ 257 CAN_BLOCKAGE_MNR "CAN_BLOCKAGE_MNR"; +BA_ "GenSigSendType" SG_ 257 CAN_BLOCKAGE_MNR 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_EXT_COND_NOK "CAN_RADAR_EXT_COND_NOK"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_EXT_COND_NOK 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE "CAN_RADAR_ALIGN_OUT_RANGE"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_OUT_RANGE 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_ALIGN_NOT_START "CAN_RADAR_ALIGN_NOT_START"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_ALIGN_NOT_START 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_OVERHEAT_ERROR "CAN_RADAR_OVERHEAT_ERROR"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_OVERHEAT_ERROR 0; +BA_ "GenSigCmt" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigVtEn" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigVtName" SG_ 257 CAN_RADAR_NOT_OP "CAN_RADAR_NOT_OP"; +BA_ "GenSigSendType" SG_ 257 CAN_RADAR_NOT_OP 0; +BA_ "GenSigCmt" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigVtEn" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigVtName" SG_ 257 CAN_XCVR_OPERATIONAL "CAN_XCVR_OPERATIONAL"; +BA_ "GenSigSendType" SG_ 257 CAN_XCVR_OPERATIONAL 0; +EOF + +build_ba "01" + +cat <> ${OUT_FILENAME} +BA_DEF_DEF_ "CrossOver_InfoCAN" "No"; +BA_DEF_DEF_ "CrossOver_LIN" "No"; +BA_DEF_DEF_ "UsedOnPgmDBC" "Yes"; +BA_DEF_DEF_ "ContentDependant" "No"; +BA_DEF_DEF_ "GenSigTimeoutTime_RCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_GWM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_OCS" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_ABS_ESC" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_CCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_IPMA" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_TSTR" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_SCCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_PSCM" 0; +BA_DEF_DEF_ "GenSigTimeoutTime__delete" 0; +BA_DEF_DEF_ "GenSigTimeoutTime_Generic_BCM" 0; +BA_DEF_DEF_ "NmMessage" "No"; +BA_DEF_DEF_ "DiagResponse" "No"; +BA_DEF_DEF_ "DiagRequest" "No"; +BA_DEF_DEF_ "TpTxIndex" 0; +BA_DEF_DEF_ "DiagState" "No"; +BA_DEF_DEF_ "TpApplType" ""; +BA_DEF_DEF_ "NmAsrMessage" "No"; +BA_DEF_DEF_ "Mulitplexer" "No"; +BA_DEF_DEF_ "ConfiguredTransmitter" "No"; +BA_DEF_DEF_ "EventRateOfChange" 10000; +BA_DEF_DEF_ "GenMsgHandlingTypeDoc" ""; +BA_DEF_DEF_ "GenMsgHandlingTypeCode" ""; +BA_DEF_DEF_ "GenMsgMarked" ""; +BA_DEF_DEF_ "GenSigMarked" ""; +BA_DEF_DEF_ "GenSigVtIndex" ""; +BA_DEF_DEF_ "GenSigVtName" ""; +BA_DEF_DEF_ "GenSigVtEn" ""; +BA_DEF_DEF_ "GenSigSNA" ""; +BA_DEF_DEF_ "GenSigCmt" ""; +BA_DEF_DEF_ "GenMsgCmt" ""; +BA_DEF_DEF_ "GenSigSendType" "NoSigSendType"; +BA_DEF_DEF_ "GenSigInactiveValue" 0; +BA_DEF_DEF_ "GenSigMissingSourceValue" 0; +BA_DEF_DEF_ "WakeupSignal" "No"; +BA_DEF_DEF_ "GenSigStartValue" 0; +BA_DEF_DEF_ "GenMsgILSupport" "Yes"; +BA_DEF_DEF_ "NetworkInitializationCommand" "No"; +BA_DEF_DEF_ "GenMsgSendType" "NoMsgSendType"; +BA_DEF_DEF_ "GenMsgCycleTime" 0; +BA_DEF_DEF_ "GenMsgCycleTimeFast" 0; +BA_DEF_DEF_ "GenMsgDelayTime" 0; +BA_DEF_DEF_ "GenMsgNrOfRepetition" 0; +BA_DEF_DEF_ "GenMsgStartDelayTime" 0; +BA_DEF_DEF_ "NetworkInitialization" "No"; +BA_DEF_DEF_ "MessageGateway" "No"; +BA_DEF_DEF_ "ILUsed" "Yes"; +BA_DEF_DEF_ "NetworkInitializationUsed" "No"; +BA_DEF_DEF_ "PowerType" "Switched"; +BA_DEF_DEF_ "NodeStartUpTime" 250; +BA_DEF_DEF_ "NodeWakeUpTime" 10; +BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; +BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; +VAL_ 34 IPMA_PCAN_DataRangeCheck 1 "Fault Present" 0 "No Fault"; +VAL_ 34 IPMA_PCAN_MissingMsg 1 "Fault Present" 0 "No Fault "; +VAL_ 34 VINSignalCompareFailure 1 "Fault Present" 0 "No Fault"; +VAL_ 34 ModuleNotConfiguredError 1 "Fault Present" 0 "No Fault"; +VAL_ 34 CarCfgNotConfiguredError 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte7_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ARMtoDSPChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 DSPtoArmChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 HostToArmChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ARMtoHostChksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 LoopBWOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 DSPOverrunFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte6_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TuningSensitivityFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 SaturatedTuningFreqFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 LocalOscPowerFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterPowerFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte6_bit0 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 XCVRDeviceSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 FreqSynthesizerSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 AnalogConverterDevicSPIFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 SidelobeBlockage 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte5_bit1 1 "Fault Present" 0 "No Fault"; +VAL_ 33 MNRBlocked 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ECUTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 AlignmentRoutineFailedFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 UnreasonableRadarData 1 "Fault Present" 0 "No Fault"; +VAL_ 33 MicroprocessorTempHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 VerticalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 HorizontalAlignmentOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 FactoryAlignmentMode 1 "Fault Present" 0 "No Fault"; +VAL_ 33 BatteryLowFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 BatteryHighFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_1p25SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte3_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ThermistorOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_3p3DACSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_3p3RAWSupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 v_5_SupplyOutOfRange 1 "Fault Present" 0 "No Fault"; +VAL_ 33 TransmitterIDFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit3 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte2_bit2 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PCANMissingMsgFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PCANBusOff 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit7 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 InstructionSetCheckFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 StackOverflowFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 WatchdogFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 PLLLockFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte1_bit1 1 "Fault Present" 0 "No Fault"; +VAL_ 33 RAMMemoryTestFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 USCValidationFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit6 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit5 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit4 1 "Fault Present" 0 "No Fault"; +VAL_ 33 Active_Flt_Latched_byte0_bit3 1 "Fault Present" 0 "No Fault"; +VAL_ 33 KeepAliveChecksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ProgramCalibrationFlashChecksum 1 "Fault Present" 0 "No Fault"; +VAL_ 33 ApplicationFlashChecksumFault 1 "Fault Present" 0 "No Fault"; +VAL_ 371 CAN_AUTO_ALIGN_HANGLE_QF 3 "Accurate" 2 "Inaccurate" 1 "Temporarily undefined" 0 "Undefined"; +VAL_ 371 CAN_ALIGNMENT_STATUS 15 "Undefined_2" 14 "Undefined_1" 13 "Low Amplitude (Flat-plate only)" 12 "No Peak (Flat-plate only)" 11 "Fail Ver and Hor OutOfRange" 10 "Fail Vertical Align OutOfRange" 9 "Fail Horizontal Align OutOfRange" 8 "Fail Time Out" 7 "Fail Only Right Target Found" 6 "Fail Only Left Target Found" 5 "Fail Variance Too Large" 4 "Fail Deviation Too Large" 3 "Fail No Target" 2 "Success" 1 "Busy" 0 "Off"; +VAL_ 371 CAN_ALIGNMENT_STATE 6 "Static alignment flat-plate" 5 "Static alignment 2-target" 4 "Static alignment 1-target" 3 "Service alignment" 2 "Short track alignment" 1 "Auto alignment" 0 "Off"; +EOF + +build_val "04" + +cat <> ${OUT_FILENAME} +VAL_ 351 CAN_DET_CONFID_AZIMUTH_64 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 350 CAN_DET_CONFID_AZIMUTH_63 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 349 CAN_DET_CONFID_AZIMUTH_62 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 348 CAN_DET_CONFID_AZIMUTH_61 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 347 CAN_DET_CONFID_AZIMUTH_60 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 346 CAN_DET_CONFID_AZIMUTH_59 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 345 CAN_DET_CONFID_AZIMUTH_58 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 344 CAN_DET_CONFID_AZIMUTH_57 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 343 CAN_DET_CONFID_AZIMUTH_56 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 342 CAN_DET_CONFID_AZIMUTH_55 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 335 CAN_DET_CONFID_AZIMUTH_48 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 334 CAN_DET_CONFID_AZIMUTH_47 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 333 CAN_DET_CONFID_AZIMUTH_46 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 332 CAN_DET_CONFID_AZIMUTH_45 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 331 CAN_DET_CONFID_AZIMUTH_44 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 330 CAN_DET_CONFID_AZIMUTH_43 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 329 CAN_DET_CONFID_AZIMUTH_42 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 328 CAN_DET_CONFID_AZIMUTH_41 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 327 CAN_DET_CONFID_AZIMUTH_40 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 325 CAN_DET_CONFID_AZIMUTH_38 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 324 CAN_DET_CONFID_AZIMUTH_37 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 323 CAN_DET_CONFID_AZIMUTH_36 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 322 CAN_DET_CONFID_AZIMUTH_35 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 321 CAN_DET_CONFID_AZIMUTH_34 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 320 CAN_DET_CONFID_AZIMUTH_33 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 319 CAN_DET_CONFID_AZIMUTH_32 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 318 CAN_DET_CONFID_AZIMUTH_31 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 317 CAN_DET_CONFID_AZIMUTH_30 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 316 CAN_DET_CONFID_AZIMUTH_29 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 314 CAN_DET_CONFID_AZIMUTH_27 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 313 CAN_DET_CONFID_AZIMUTH_26 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 312 CAN_DET_CONFID_AZIMUTH_25 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 311 CAN_DET_CONFID_AZIMUTH_24 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 310 CAN_DET_CONFID_AZIMUTH_23 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +EOF + +build_val "22" +build_val "21" +build_val "20" +build_val "19" +build_val "18" + +cat <> ${OUT_FILENAME} +VAL_ 341 CAN_DET_CONFID_AZIMUTH_54 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 340 CAN_DET_CONFID_AZIMUTH_53 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 339 CAN_DET_CONFID_AZIMUTH_52 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 338 CAN_DET_CONFID_AZIMUTH_51 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 337 CAN_DET_CONFID_AZIMUTH_50 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 336 CAN_DET_CONFID_AZIMUTH_49 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 326 CAN_DET_CONFID_AZIMUTH_39 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +VAL_ 315 CAN_DET_CONFID_AZIMUTH_28 3 "Low" 2 "Medium_Low" 1 "Medium_High" 0 "High"; +EOF + +build_val "17" +build_val "16" +build_val "15" +build_val "14" +build_val "13" +build_val "12" +build_val "11" +build_val "10" +build_val "09" +build_val "08" +build_val "07" +build_val "06" +build_val "05" +build_val "03" +build_val "02" + +cat <> ${OUT_FILENAME} +VAL_ 257 CAN_INTERFERENCE_TYPE 2 "Star PD-Like" 1 "Slow FMCW" 0 "No Interference"; +VAL_ 257 CAN_RECOMMEND_UNCONVERGE 1 "Recommended" 0 "Not Recommended"; +VAL_ 257 CAN_RADAR_ALIGN_INCOMPLETE 1 "Alignment Incomplete" 0 "Alignment Completed"; +VAL_ 257 CAN_BLOCKAGE_SIDELOBE 1 "Radar Blockage" 0 "No Radar Blockage"; +VAL_ 257 CAN_BLOCKAGE_MNR 1 "Radar Blockage" 0 "No Radar Blockage"; +VAL_ 257 CAN_RADAR_EXT_COND_NOK 1 "Too high temp or insufficient pw" 0 "External conditions OK"; +VAL_ 257 CAN_RADAR_ALIGN_OUT_RANGE 1 "Radar out of range" 0 "Radar within range"; +VAL_ 257 CAN_RADAR_ALIGN_NOT_START 1 "Radar align not started" 0 "Radar align started"; +VAL_ 257 CAN_RADAR_OVERHEAT_ERROR 1 "Radar overheat condition" 0 "No Overheat"; +VAL_ 257 CAN_RADAR_NOT_OP 1 "Radar not operational" 0 "Radar operational"; +VAL_ 257 CAN_XCVR_OPERATIONAL 1 "On" 0 "Off "; +EOF + +build_val "01" \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/generator.py b/opendbc_repo/opendbc/dbc/generator/generator.py new file mode 100755 index 0000000000..d0f41fc80a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/generator.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +import os +import re +import glob +import subprocess + +generator_path = os.path.dirname(os.path.realpath(__file__)) +opendbc_root = os.path.join(generator_path, '../') +include_pattern = re.compile(r'CM_ "IMPORT (.*?)";\n') +generated_suffix = '_generated.dbc' + + +def read_dbc(src_dir: str, filename: str) -> str: + with open(os.path.join(src_dir, filename), encoding='utf-8') as file_in: + return file_in.read() + + +def create_dbc(src_dir: str, filename: str, output_path: str): + dbc_file_in = read_dbc(src_dir, filename) + + includes = include_pattern.findall(dbc_file_in) + + output_filename = filename.replace('.dbc', generated_suffix) + output_file_location = os.path.join(output_path, output_filename) + + with open(output_file_location, 'w', encoding='utf-8') as dbc_file_out: + dbc_file_out.write('CM_ "AUTOGENERATED FILE, DO NOT EDIT";\n') + + for include_filename in includes: + include_file_header = f'\n\nCM_ "Imported file {include_filename} starts here";\n' + dbc_file_out.write(include_file_header) + + include_file = read_dbc(src_dir, include_filename) + dbc_file_out.write(include_file) + + dbc_file_out.write(f'\nCM_ "{filename} starts here";\n') + + core_dbc = include_pattern.sub('', dbc_file_in) + dbc_file_out.write(core_dbc) + + +def create_all(output_path: str): + # clear out old DBCs + for f in glob.glob(f"{output_path}/*{generated_suffix}"): + os.remove(f) + + # run python generator scripts first + for f in glob.glob(f"{generator_path}/*/*.py"): + subprocess.check_call(f) + + for src_dir, _, filenames in os.walk(generator_path): + if src_dir == generator_path: + continue + + #print(src_dir) + for filename in filenames: + if filename.startswith('_') or not filename.endswith('.dbc'): + continue + + #print(filename) + create_dbc(src_dir, filename, output_path) + +if __name__ == "__main__": + create_all(opendbc_root) diff --git a/opendbc_repo/opendbc/dbc/generator/gm/_community.dbc b/opendbc_repo/opendbc/dbc/generator/gm/_community.dbc new file mode 100644 index 0000000000..d8855b3594 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/gm/_community.dbc @@ -0,0 +1,15 @@ +BO_ 512 GAS_COMMAND: 6 NEO + SG_ GAS_COMMAND : 7|16@0+ (0.125677,-75.909) [0|1] "" INTERCEPTOR + SG_ GAS_COMMAND2 : 23|16@0+ (0.251976,-76.601) [0|1] "" INTERCEPTOR + SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR + SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR + SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR + +BO_ 513 GAS_SENSOR: 6 INTERCEPTOR + SG_ INTERCEPTOR_GAS : 7|16@0+ (0.125677,-75.909) [0|1] "" NEO + SG_ INTERCEPTOR_GAS2 : 23|16@0+ (0.251976,-76.601) [0|1] "" NEO + SG_ STATE : 39|4@0+ (1,0) [0|15] "" NEO + SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" NEO + SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" NEO + +VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; diff --git a/opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc b/opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc new file mode 100644 index 0000000000..4730a0f56d --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/gm/gm_global_a_powertrain.dbc @@ -0,0 +1,353 @@ + +CM_ "IMPORT _community.dbc"; +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: K16_BECM K73_TCIC K9_BCM K43_PSCM K17_EBCM K20_ECM K114B_HPCM NEO K124_ASCM EPB +VAL_TABLE_ TurnSignals 2 "Right Turn" 1 "Left Turn" 0 "None" ; +VAL_TABLE_ Intellibeam 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HighBeamsActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HighBeamsTemporary 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCLeadCar 1 "Present" 0 "Not Present" ; +VAL_TABLE_ ACCCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ BrakePedalPressed 1 "Pressed" 0 "Depressed" ; +VAL_TABLE_ DistanceButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ LKAButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_TABLE_ DriveModeButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; +VAL_TABLE_ ESPButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ DoorStatus 1 "Opened" 0 "Closed" ; +VAL_TABLE_ SeatBeltStatus 1 "Latched" 0 "Unlatched" ; +VAL_TABLE_ LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; +VAL_TABLE_ GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; +VAL_TABLE_ GasRegenCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HandsOffSWDetectionStatus 1 "Hands On" 0 "Hands Off" ; +VAL_TABLE_ HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; + + +BO_ 189 EBCMRegenPaddle: 7 K17_EBCM + SG_ RegenPaddle : 7|4@0+ (1,0) [0|0] "" NEO + +BO_ 190 ECMAcceleratorPos: 6 K20_ECM + SG_ BrakePedalPos : 15|8@0+ (1,0) [0|0] "sticky" NEO + SG_ GasPedalAndAcc : 23|8@0+ (1,0) [0|0] "" NEO + +BO_ 201 ECMEngineStatus: 8 K20_ECM + SG_ EngineTPS : 39|8@0+ (0.392156863,0) [0|100.000000065] "%" NEO + SG_ EngineRPM : 15|16@0+ (0.25,0) [0|0] "RPM" NEO + SG_ CruiseMainOn : 29|1@0+ (1,0) [0|1] "" NEO + SG_ BrakePressed : 40|1@0+ (1,0) [0|1] "" NEO + SG_ Standstill : 2|1@0+ (1,0) [0|1] "" NEO + SG_ CruiseActive : 31|2@0+ (1,0) [0|3] "" NEO + +BO_ 209 EBCMBrakePedalSensors: 7 K17_EBCM + SG_ Counter1 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ Counter2 : 23|2@0+ (1,0) [0|3] "" XXX + SG_ BrakePedalPosition1 : 5|14@0+ (1,0) [0|16383] "" XXX + SG_ BrakePedalPosition2 : 21|14@0- (-1,0) [0|16383] "" XXX + SG_ BrakeNormalized1 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ BrakeNormalized2 : 47|8@0- (-1,0) [0|255] "" XXX + +BO_ 241 EBCMBrakePedalPosition: 6 K17_EBCM + SG_ BrakePressed : 1|1@0+ (1,0) [0|1] "" XXX + SG_ BrakePedalPosition : 15|8@0+ (1,0) [0|255] "" NEO + +BO_ 298 BCMDoorBeltStatus: 8 K9_BCM + SG_ RearLeftDoor : 8|1@0+ (1,0) [0|0] "" NEO + SG_ FrontLeftDoor : 9|1@0+ (1,0) [0|0] "" NEO + SG_ FrontRightDoor : 10|1@0+ (1,0) [0|0] "" NEO + SG_ RearRightDoor : 23|1@0+ (1,0) [0|0] "" NEO + SG_ LeftSeatBelt : 12|1@0+ (1,0) [0|0] "" NEO + SG_ RightSeatBelt : 53|1@0+ (1,0) [0|0] "" NEO + +BO_ 309 ECMPRDNL: 8 K20_ECM + SG_ PRNDL : 2|3@0+ (1,0) [0|0] "" NEO + SG_ ESPButton : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 320 BCMTurnSignals: 3 K9_BCM + SG_ TurnSignals : 19|2@0+ (1,0) [0|0] "" NEO + SG_ Intellibeam : 13|1@0+ (1,0) [0|1] "" XXX + SG_ HighBeamsActive : 7|1@0+ (1,0) [0|1] "" XXX + SG_ HighBeamsTemporary : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 322 BCMBlindSpotMonitor: 7 K9_BCM + SG_ LeftBSM : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RightBSM : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 328 PSCM_148: 1 K43_PSCM + +BO_ 381 ESPStatus: 6 K20_ECM + SG_ TractionControlOn : 5|1@0+ (1,0) [0|0] "" NEO + SG_ MSG17D_AccPower : 35|12@0- (1,0) [0|0] "" NEO + +BO_ 384 ASCMLKASteeringCmd: 4 NEO + SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdChecksum : 19|12@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdActive : 3|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmd : 2|11@0- (1,0) [0|0] "" NEO + +BO_ 388 PSCMStatus: 8 K43_PSCM + SG_ HandsOffSWDetectionMode : 20|2@0+ (1,0) [0|3] "" NEO + SG_ HandsOffSWlDetectionStatus : 21|1@0+ (1,0) [0|1] "" NEO + SG_ LKATorqueDeliveredStatus : 5|3@0+ (1,0) [0|7] "" NEO + SG_ LKADriverAppldTrq : 50|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO + SG_ LKATorqueDelivered : 18|11@0- (0.01,0) [0|1] "" NEO + SG_ LKATotalTorqueDelivered : 2|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO + SG_ RollingCounter : 38|4@0+ (1,0) [0|15] "" XXX + SG_ PSCMStatusChecksum : 33|10@0+ (1,0) [0|1023] "" XXX + +BO_ 417 AcceleratorPedal: 7 XXX + SG_ AcceleratorPedal : 55|8@0+ (1,0) [0|0] "" NEO + +BO_ 451 GasAndAcc: 8 XXX + SG_ GasPedalAndAcc2 : 55|8@0+ (1,0) [0|0] "" NEO + +BO_ 452 AcceleratorPedal2: 8 XXX + SG_ CruiseState : 15|3@0+ (1,0) [0|7] "" NEO + SG_ AcceleratorPedal2 : 47|8@0+ (1,0) [0|0] "" NEO + +BO_ 481 ASCMSteeringButton: 7 K124_ASCM + SG_ DistanceButton : 22|1@0+ (1,0) [0|0] "" NEO + SG_ LKAButton : 23|1@0+ (1,0) [0|0] "" NEO + SG_ ACCAlwaysOne : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ACCButtons : 46|3@0+ (1,0) [0|0] "" NEO + SG_ DriveModeButton : 39|1@0+ (1,0) [0|1] "" XXX + SG_ RollingCounter : 33|2@0+ (1,0) [0|3] "" NEO + SG_ SteeringButtonChecksum : 43|12@0+ (1,0) [0|255] "" NEO + +BO_ 485 PSCMSteeringAngle: 8 K43_PSCM + SG_ SteeringWheelAngle : 15|16@0- (0.0625,0) [-2047|2047] "deg" NEO + SG_ SteeringWheelRate : 27|12@0- (1,0) [-2047|2047] "deg/s" NEO + +BO_ 489 EBCMVehicleDynamic: 8 K17_EBCM + SG_ BrakePedalPressed : 6|1@0+ (1,0) [0|0] "" NEO + SG_ LateralAcceleration : 3|10@0- (0.161,0) [-2047|2047] "m/s2" NEO + SG_ YawRate : 35|12@0- (0.625,0) [0|1] "" NEO + SG_ YawRate2 : 51|12@0- (0.0625,0) [-2047|2047] "grad/s" NEO + +BO_ 352 BCMImmobilizer: 5 K9_BCM + SG_ ImmobilizerInfo : 7|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 497 BCMGeneralPlatformStatus: 8 K9_BCM + SG_ SystemPowerMode : 1|2@0+ (1,0) [0|3] "" XXX + SG_ SystemBackUpPowerMode : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ParkBrakeSwActive : 36|1@0+ (1,0) [0|3] "" XXX + +BO_ 500 SportMode: 6 XXX + SG_ SnowIceMode : 9|1@0+ (1,0) [0|1] "" XXX + SG_ SportMode : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 501 ECMPRDNL2: 8 K20_ECM + SG_ TransmissionState : 48|4@1+ (1,0) [0|7] "" NEO + SG_ PRNDL2 : 27|4@0+ (1,0) [0|255] "" NEO + SG_ ManualMode : 41|1@0+ (1,0) [0|1] "" NEO + +BO_ 532 BRAKE_RELATED: 6 XXX + SG_ UserBrakePressure : 0|9@0+ (1,0) [0|511] "" XXX + +BO_ 560 EPBStatus: 8 EPB + SG_ EPBClosed : 12|1@0+ (1,0) [0|1] "" NEO + +BO_ 562 EBCMFrictionBrakeStatus: 8 K17_EBCM + SG_ FrictionBrakeUnavailable : 46|1@0+ (1,0) [0|1] "" XXX + +BO_ 608 SPEED_RELATED: 8 XXX + SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" XXX + SG_ ClusterSpeed : 31|8@0+ (1,0) [0|0] "" XXX + +BO_ 711 BECMBatteryVoltageCurrent: 6 K17_EBCM + SG_ HVBatteryVoltage : 31|12@0+ (0.125,0) [0|511.875] "V" NEO + SG_ HVBatteryCurrent : 12|13@0- (0.15,0) [-614.4|614.25] "A" NEO + +BO_ 715 ASCMGasRegenCmd: 8 K124_ASCM + SG_ GasRegenAccType : 15|2@0+ (1,0) [0|3] "" NEO + SG_ GasRegenChecksum : 32|25@0+ (1,0) [0|0] "" NEO + SG_ GasRegenFullStopActive : 13|1@0+ (1,0) [0|0] "" NEO + SG_ GasRegenCmdActive : 0|1@0+ (1,0) [0|0] "" NEO + SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" NEO + SG_ GasRegenCmd : 10|19@0+ (0.125,-22534) [-22534|43001.875] "Nm" NEO + +BO_ 717 ASCM_2CD: 5 K124_ASCM + +BO_ 761 BRAKE_RELATED_2: 7 XXX + SG_ UserBrakePressure2 : 47|9@0+ (1,0) [0|511] "" XXX + +BO_ 789 EBCMFrictionBrakeCmd: 5 K124_ASCM + SG_ RollingCounter : 33|2@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO + +BO_ 800 AEBCmd: 6 K124_ASCM + SG_ RollingCounter : 5|2@0+ (1,0) [0|3] "" NEO + SG_ AEBChecksum : 27|20@0+ (1,0) [0|0] "" NEO + SG_ AEBCmdActive : 3|1@1+ (1,0) [0|1] "" NEO + SG_ AEBCmd : 2|11@0+ (1,0) [0|0] "" NEO + SG_ AEBCmd2 : 23|8@0+ (1,0) [0|0] "" NEO + +BO_ 810 TCICOnStarGPSPosition: 8 K73_TCIC + SG_ GPSLongitude : 39|32@0+ (1,-2147483648) [0|0] "milliarcsecond" NEO + SG_ GPSLatitude : 7|32@0+ (1,0) [0|0] "milliarcsecond" NEO + +BO_ 840 EBCMWheelSpdFront: 5 K17_EBCM + SG_ FLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ FRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO + +BO_ 842 EBCMWheelSpdRear: 5 K17_EBCM + SG_ RLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ RRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ RRWheelDir : 34|3@0+ (1,0) [0|7] "" NEO + SG_ RLWheelDir : 37|3@0+ (1,0) [0|7] "" NEO + +BO_ 869 ASCM_365: 4 K124_ASCM + +BO_ 880 ASCMActiveCruiseControlStatus: 6 K124_ASCM + SG_ ACCCruiseState : 8|3@1+ (1,0) [0|7] "" XXX + SG_ ACCLeadCar : 44|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCAlwaysOne2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCAlwaysOne : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCSpeedSetpoint : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" NEO + SG_ ACCGapLevel : 21|2@0+ (1,0) [0|0] "" NEO + SG_ ACCResumeButton : 1|1@0+ (1,0) [0|0] "" NEO + SG_ ACCCmdActive : 23|1@0+ (1,0) [0|0] "" NEO + SG_ FCWAlert : 41|2@0+ (1,0) [0|3] "" XXX + +BO_ 967 EVDriveMode: 4 XXX + SG_ SinglePedalModeActive : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SinglePedalModeRisingEdge : 21|1@0+ (1,0) [0|1] "" XXX + SG_ SinglePedalModeFallingEdge : 22|1@0+ (1,0) [0|1] "" XXX + +BO_ 977 ECMCruiseControl: 8 K20_ECM + SG_ CruiseActive : 39|1@0+ (1,0) [0|3] "" NEO + SG_ CruiseSetSpeed : 19|12@0+ (0.0625,0) [0|0] "km/h" NEO + +BO_ 1001 ECMVehicleSpeed: 8 K20_ECM + SG_ VehicleSpeed : 7|16@0+ (0.01,0) [0|0] "mph" NEO + SG_ VehicleSpeedLeft : 39|16@0+ (0.01,0) [0|0] "mph" NEO + +BO_ 1033 ASCMKeepAlive: 7 NEO + SG_ ASCMKeepAliveAllZero : 7|56@0+ (1,0) [0|0] "" NEO + +BO_ 1034 ASCM_40A: 7 K124_ASCM + +BO_ 1217 ECMEngineCoolantTemp: 8 K20_ECM + SG_ EngineCoolantTemp : 23|8@0+ (1,-40) [0|0] "C" NEO + +BO_ 1249 VIN_Part2: 8 K20_ECM + SG_ VINPart2 : 7|64@0+ (1,0) [0|0] "" NEO + +BO_ 1296 ASCM_510: 4 K124_ASCM + +BO_ 1300 VIN_Part1: 8 K20_ECM + SG_ VINPart1 : 7|64@0+ (1,0) [0|0] "" NEO + +BO_ 1912 PSCM_778: 8 K43_PSCM + +BO_ 1930 ASCM_78A: 7 K124_ASCM + +BO_TX_BU_ 384 : K124_ASCM,NEO; +BO_TX_BU_ 880 : NEO,K124_ASCM; +BO_TX_BU_ 1033 : K124_ASCM,NEO; +BO_TX_BU_ 715 : NEO,K124_ASCM; +BO_TX_BU_ 789 : NEO,K124_ASCM; +BO_TX_BU_ 800 : NEO,K124_ASCM; + + +CM_ BU_ K16_BECM "Battery Energy Control Module"; +CM_ BU_ K73_TCIC "Telematics Communication Control Module"; +CM_ BU_ K9_BCM "Body Control Module"; +CM_ BU_ K43_PSCM "Power Steering Control Module"; +CM_ BU_ K17_EBCM "Electronic Brake Control Module"; +CM_ BU_ K20_ECM "Engine Control Module"; +CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; +CM_ BU_ NEO "Comma NEO"; +CM_ BU_ K124_ASCM "Active Safety Control Module"; +CM_ SG_ 381 MSG17D_AccPower "Need to investigate"; +CM_ BO_ 190 "Length varies from 6 to 8 bytes by car"; +CM_ SG_ 190 GasPedalAndAcc "ACC baseline is 62"; +CM_ SG_ 322 LeftBSM "For some cars, this can only be when the blinker is also active"; +CM_ SG_ 322 RightBSM "For some cars, this can only be when the blinker is also active"; +CM_ SG_ 352 ImmobilizerInfo "Non-zero when ignition or accessory mode"; +CM_ SG_ 451 GasPedalAndAcc2 "ACC baseline is 62"; +CM_ SG_ 481 ACCAlwaysOne "Usually 1 if the car is equipped with ACC"; +CM_ SG_ 562 FrictionBrakeUnavailable "1 when ACC brake control is unavailable. Stays high if brake command messages are blocked for a period of time"; +CM_ SG_ 497 SystemPowerMode "Describes ignition"; +CM_ SG_ 497 SystemBackUpPowerMode "Describes ignition + preconditioning mode, noisy"; +CM_ SG_ 501 PRNDL2 "When ManualMode is Active, Value is 13=L1 12=L2 11=L3 ... 4=L10"; +CM_ SG_ 532 UserBrakePressure "can be lower than other brake position signals when the brakes are pre-filled from ACC braking and the user presses on the brakes. user-only pressure?"; +CM_ SG_ 608 ClusterSpeed "Cluster speed signal seems to match dash on newer cars, but is a lower rate and can be noisier."; +CM_ SG_ 761 UserBrakePressure2 "Similar to BRAKE_RELATED->UserBrakePressure"; +CM_ SG_ 1001 VehicleSpeed "Spinouts show here on 2wd. Speed derived from right front wheel (drive tire)"; +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; +BA_ "UseGMParameterIDs" 0; +VAL_ 497 SystemPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; +VAL_ 497 SystemBackUpPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; +VAL_ 481 DistanceButton 1 "Active" 0 "Inactive" ; +VAL_ 481 LKAButton 1 "Active" 0 "Inactive" ; +VAL_ 481 ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_ 481 DriveModeButton 1 "Active" 0 "Inactive" ; +VAL_ 452 CruiseState 4 "Standstill" 3 "Faulted" 2 "Standby" 1 "Active" 0 "Off" ; +VAL_ 309 PRNDL 3 "R" 2 "D" 1 "N" 0 "P" ; +VAL_ 309 ESPButton 1 "Active" 0 "Inactive" ; +VAL_ 384 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 842 RRWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; +VAL_ 842 RLWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; +VAL_ 880 ACCCruiseState 2 "Adaptive" 3 "Adaptive" 4 "Non-adaptive" 5 "Non-adaptive" ; +VAL_ 880 ACCLeadCar 1 "Present" 0 "Not Present" ; +VAL_ 880 ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; +VAL_ 880 ACCResumeButton 1 "Pressed" 0 "Depressed" ; +VAL_ 880 ACCCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 388 HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; +VAL_ 388 HandsOffSWlDetectionStatus 1 "Hands On" 0 "Hands Off" ; +VAL_ 388 LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; +VAL_ 489 BrakePedalPressed 1 "Pressed" 0 "Depressed" ; +VAL_ 715 GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; +VAL_ 715 GasRegenCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 320 Intellibeam 1 "Active" 0 "Inactive" ; +VAL_ 320 HighBeamsActive 1 "Active" 0 "Inactive" ; +VAL_ 320 HighBeamsTemporary 1 "Active" 0 "Inactive" ; +VAL_ 501 PRNDL2 6 "L" 4 "D" 3 "N" 2 "R" 1 "P" 0 "Shifting"; +VAL_ 501 TransmissionState 11 "Shifting" 10 "Reverse" 9 "Forward" 8 "Disengaged"; +VAL_ 501 ManualMode 1 "Active" 0 "Inactive" diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc new file mode 100644 index 0000000000..b5e8c14d6c --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_bosch_2018.dbc @@ -0,0 +1,232 @@ +BO_ 148 KINEMATICS: 8 XXX + SG_ LAT_ACCEL : 7|10@0+ (-0.035,17.92) [-20|20] "m/s2" EON + SG_ LONG_ACCEL : 25|10@0+ (-0.035,17.92) [-20|20] "m/s2" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + +BO_ 228 STEERING_CONTROL: 5 EON + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-4096|4096] "" EPS + SG_ STEER_DOWN_TO_ZERO : 38|1@0+ (1,0) [0|1] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS + +BO_ 229 BOSCH_SUPPLEMENTAL_1: 8 XXX + SG_ SET_ME_X04 : 0|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_X80 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_X10 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 232 BRAKE_HOLD: 7 XXX + SG_ XMISSION_SPEED : 7|14@0- (1,0) [1|0] "" XXX + SG_ COMPUTER_BRAKE : 39|16@0+ (1,0) [0|0] "" XXX + SG_ COMPUTER_BRAKE_REQUEST : 29|1@0+ (1,0) [0|0] "" XXX + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" XXX + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 450 EPB_STATUS: 8 EPB + SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" EON + SG_ EPB_STATE : 29|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 545 XXX_16: 6 SCM + SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVE_MODE : 37|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" BDY + +BO_ 576 LEFT_LANE_LINE_1: 8 CAM + SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX + SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX + SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX + SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX + SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 577 LEFT_LANE_LINE_2: 8 CAM + SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX + SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX + SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX + SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 579 RIGHT_LANE_LINE_1: 8 CAM + SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX + SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX + SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX + SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX + SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 580 RIGHT_LANE_LINE_2: 8 CAM + SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX + SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX + SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX + SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 582 ADJACENT_LEFT_LANE_LINE_1: 8 CAM + SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX + SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX + SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX + SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX + SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 583 ADJACENT_LEFT_LANE_LINE_2: 8 CAM + SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX + SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX + SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX + SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 585 ADJACENT_RIGHT_LANE_LINE_1: 8 CAM + SG_ LINE_DISTANCE_VISIBLE : 39|9@0+ (1,0) [0|1] "" XXX + SG_ LINE_PROBABILITY : 46|6@0+ (0.015625,0) [0|1] "" XXX + SG_ LINE_OFFSET : 23|12@0+ (0.004,-8.192) [0|1] "Meters" XXX + SG_ LINE_ANGLE : 7|12@0+ (0.0005,-1.024) [0|1] "" XXX + SG_ FRAME_INDEX : 8|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 586 ADJACENT_RIGHT_LANE_LINE_2: 8 CAM + SG_ LINE_FAR_EDGE_POSITION : 55|8@0+ (1,-128) [0|1] "" XXX + SG_ LINE_SOLID : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_DASHED : 14|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_CURVATURE : 23|12@0+ (0.00001,-0.02048) [0|1] "" XXX + SG_ LINE_PARAMETER : 39|12@0+ (1,0) [0|1] "" XXX + SG_ FRAME_INDEX : 7|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|1] "" XXX + +BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA + SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "mph" EON + SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "mph" EON + SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "mph" EON + SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "mph" EON + SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON + SG_ LONG_COUNTER : 55|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 662 SCM_BUTTONS: 4 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON + +BO_ 806 SCM_FEEDBACK: 8 SCM + SG_ DRIVERS_DOOR_OPEN : 17|1@0+ (1,0) [0|1] "" XXX + SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON + SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON + SG_ CMBS_STATES : 22|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 862 CAMERA_MESSAGES: 8 CAM + SG_ ZEROS_BOH : 7|16@0+ (1,0) [0|127] "" BDY + SG_ SPEED_LIMIT_SIGN : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ROAD_SIGN : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH_2 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 927 RADAR_HUD: 8 RADAR + SG_ ZEROS_BOH : 7|10@0+ (1,0) [0|127] "" BDY + SG_ CMBS_OFF : 12|1@0+ (1,0) [0|1] "" BDY + SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|1] "" XXX + SG_ SET_TO_1 : 13|1@0+ (1,0) [0|1] "" BDY + SG_ ZEROS_BOH2 : 11|4@0+ (1,0) [0|1] "" XXX + SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|1] "" BDY + SG_ SET_TO_0 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ HUD_LEAD : 40|1@0+ (1,0) [0|1] "" XXX + SG_ SET_TO_64 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ LEAD_DISTANCE : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH3 : 47|7@0+ (1,0) [0|127] "" XXX + SG_ ZEROS_BOH4 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 13274 LKAS_HUD_A: 5 ADAS + SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY + SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY + SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY + SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY + SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY + SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" BDY + SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY + SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" BDY + SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY + SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY + SG_ SET_ME_X01 : 20|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY + SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY + +BO_ 13275 LKAS_HUD_B: 8 ADAS + SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY + SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY + SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY + SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY + SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY + SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" BDY + SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY + SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" BDY + SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY + SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY + SG_ SET_ME_X01 : 20|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY + SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY + +CM_ SG_ 450 EPB_STATE "3: On, 2: Disengaging, 1: Engaging, 0: Off"; +CM_ SG_ 576 LINE_DISTANCE_VISIBLE "Length of line visible, undecoded"; +CM_ SG_ 577 LINE_FAR_EDGE_POSITION "Appears to be a measure of line thickness, indicates location of the portion of the line furthest from the car, undecoded"; +CM_ SG_ 577 LINE_PARAMETER "Unclear if this is low quality line curvature rate or if this is something else, but it is correlated with line curvature, undecoded"; +CM_ SG_ 577 LINE_DASHED "1 = line is dashed"; +CM_ SG_ 577 LINE_SOLID "1 = line is solid"; + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal"; +VAL_ 862 SPEED_LIMIT_SIGN 97 "SPEED_LIMIT_5" 98 "SPEED_LIMIT_10" 99 "SPEED_LIMIT_15" 100 "SPEED_LIMIT_20" 101 "SPEED_LIMIT_25" 102 "SPEED_LIMIT_30" 103 "SPEED_LIMIT_35" 104 "SPEED_LIMIT_40" 105 "SPEED_LIMIT_45" 106 "SPEED_LIMIT_50" 107 "SPEED_LIMIT_55" 108 "SPEED_LIMIT_60" 109 "SPEED_LIMIT_65" 110 "SPEED_LIMIT_70" 111 "SPEED_LIMIT_75" 112 "SPEED_LIMIT_80" 113 "SPEED_LIMIT_85" 125 "SPEED_LIMIT_NA" 0 "STOP_SIGN"; +VAL_ 862 ROAD_SIGN 0 "NO_SIGN" 89 "STOP_SIGN"; \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc new file mode 100644 index 0000000000..ec7c41ceec --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_bosch_adas_2018.dbc @@ -0,0 +1,57 @@ +BO_ 479 ACC_CONTROL: 8 EON + SG_ SET_TO_0 : 20|5@0+ (1,0) [0|1] "" XXX + SG_ CONTROL_ON : 23|3@0+ (1,0) [0|5] "" XXX + SG_ GAS_COMMAND : 7|16@0- (1,0) [0|0] "" XXX + SG_ ACCEL_COMMAND : 31|11@0- (0.01,0) [0|0] "m/s2" XXX + SG_ BRAKE_LIGHTS : 62|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_REQUEST : 34|1@0+ (1,0) [0|1] "" XXX + SG_ STANDSTILL : 35|1@0+ (1,0) [0|1] "" XXX + SG_ STANDSTILL_RELEASE : 36|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_STATUS : 33|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 495 ACC_CONTROL_ON: 8 XXX + SG_ SET_TO_75 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_30 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH2 : 47|16@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_FF : 15|8@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_3 : 6|7@0+ (1,0) [0|4095] "" XXX + SG_ CONTROL_ON : 7|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 829 LKAS_HUD: 5 ADAS + SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY + SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY + SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY + SG_ CAMERA_OVERHEAT : 15|1@0+ (1,0) [0|1] "" BDY + SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY + SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY + SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY + SG_ LANE_DEPARTURE_ALERT : 9|1@0+ (1,0) [0|1] "" BDY + SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_ICON : 22|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY + SG_ BEEP : 18|3@0+ (1,0) [0|7] "" BDY + SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY + SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY + SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" BDY + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY + +CM_ SG_ 479 CONTROL_ON "Set to 5 when car is being controlled"; +CM_ SG_ 479 AEB_STATUS "set for the duration of AEB event"; +CM_ SG_ 479 AEB_BRAKING "set when braking is commanded during AEB event"; +CM_ SG_ 479 AEB_PREPARE "set 1s before AEB"; +CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnngs etc..."; +CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High"; +CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot"; + +VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_community.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_community.dbc new file mode 100644 index 0000000000..8be69203ef --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_community.dbc @@ -0,0 +1,15 @@ +BO_ 512 GAS_COMMAND: 6 EON + SG_ GAS_COMMAND : 7|16@0+ (0.253984064,-83.3) [0|1] "" INTERCEPTOR + SG_ GAS_COMMAND2 : 23|16@0+ (0.126992032,-83.3) [0|1] "" INTERCEPTOR + SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR + SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR + SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR + +BO_ 513 GAS_SENSOR: 6 INTERCEPTOR + SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON + SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON + SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON + SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON + +VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc new file mode 100644 index 0000000000..44a2ce4bcc --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_honda_common.dbc @@ -0,0 +1,163 @@ +BO_ 304 GAS_PEDAL_2: 8 PCM + SG_ ENGINE_TORQUE_ESTIMATE : 7|16@0- (1,0) [-1000|1000] "Nm" EON + SG_ ENGINE_TORQUE_REQUEST : 23|16@0- (1,0) [-1000|1000] "Nm" EON + SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 316 GAS_PEDAL: 8 PCM + SG_ CAR_GAS : 39|8@0+ (1,0) [0|255] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 344 ENGINE_DATA: 8 PCM + SG_ XMISSION_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" EON + SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON + SG_ XMISSION_SPEED2 : 39|16@0+ (0.01,0) [0|250] "kph" EON + SG_ ODOMETER : 55|8@0+ (10,0) [0|2550] "m" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 380 POWERTRAIN_DATA: 8 PCM + SG_ PEDAL_GAS : 7|8@0+ (1,0) [0|255] "" EON + SG_ ENGINE_RPM : 23|16@0+ (1,0) [0|15000] "rpm" EON + SG_ GAS_PRESSED : 39|1@0+ (1,0) [0|1] "" EON + SG_ ACC_STATUS : 38|1@0+ (1,0) [0|1] "" EON + SG_ BOH_17C : 37|5@0+ (1,0) [0|1] "" EON + SG_ BRAKE_SWITCH : 32|1@0+ (1,0) [0|1] "" EON + SG_ BOH2_17C : 47|10@0+ (1,0) [0|1] "" EON + SG_ BRAKE_PRESSED : 53|1@0+ (1,0) [0|1] "" EON + SG_ BOH3_17C : 52|5@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 420 VSA_STATUS: 8 VSA + SG_ USER_BRAKE : 7|16@0+ (0.015625,-1.609375) [0|1000] "" EON + SG_ COMPUTER_BRAKING : 23|1@0+ (1,0) [0|1] "" EON + SG_ ESP_DISABLED : 28|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_HOLD_RELATED : 52|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_HOLD_ACTIVE : 46|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_HOLD_ENABLED : 45|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 427 STEER_MOTOR_TORQUE: 3 EPS + SG_ CONFIG_VALID : 7|1@0+ (1,0) [0|1] "" EON + SG_ MOTOR_TORQUE : 1|10@0+ (1,0) [0|256] "" EON + SG_ OUTPUT_DISABLED : 22|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" EON + +BO_ 464 WHEEL_SPEEDS: 8 VSA + SG_ WHEEL_SPEED_FL : 7|15@0+ (0.01,0) [0|250] "kph" EON + SG_ WHEEL_SPEED_FR : 8|15@0+ (0.01,0) [0|250] "kph" EON + SG_ WHEEL_SPEED_RL : 25|15@0+ (0.01,0) [0|250] "kph" EON + SG_ WHEEL_SPEED_RR : 42|15@0+ (0.01,0) [0|250] "kph" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 490 VEHICLE_DYNAMICS: 8 VSA + SG_ LAT_ACCEL : 7|16@0- (0.0015,0) [-20|20] "m/s2" EON + SG_ LONG_ACCEL : 23|16@0- (0.0015,0) [-20|20] "m/s2" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 773 SEATBELT_STATUS: 7 BDY + SG_ SEATBELT_DRIVER_LAMP : 7|1@0+ (1,0) [0|1] "" EON + SG_ SEATBELT_PASS_UNLATCHED : 10|1@0+ (1,0) [0|1] "" EON + SG_ SEATBELT_PASS_LATCHED : 11|1@0+ (1,0) [0|1] "" EON + SG_ SEATBELT_DRIVER_UNLATCHED : 12|1@0+ (1,0) [0|1] "" EON + SG_ SEATBELT_DRIVER_LATCHED : 13|1@0+ (1,0) [0|1] "" EON + SG_ PASS_AIRBAG_OFF : 14|1@0+ (1,0) [0|1] "" EON + SG_ PASS_AIRBAG_ON : 15|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 777 CAR_SPEED: 8 PCM + SG_ ROUGH_CAR_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX + SG_ CAR_SPEED : 7|16@0+ (0.01,0) [0|65535] "kph" XXX + SG_ ROUGH_CAR_SPEED_3 : 39|16@0+ (0.01,0) [0|65535] "kph" XXX + SG_ ROUGH_CAR_SPEED_2 : 31|8@0+ (1,0) [0|255] "mph" XXX + SG_ LOCK_STATUS : 55|2@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ IMPERIAL_UNIT : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 780 ACC_HUD: 8 ADAS + SG_ PCM_SPEED : 7|16@0+ (0.01,0) [0|250] "kph" BDY + SG_ PCM_GAS : 23|8@0+ (1,0) [0|127] "" BDY + SG_ CRUISE_SPEED : 31|8@0+ (1,0) [0|255] "kph" BDY + SG_ DTC_MODE : 39|1@0+ (1,0) [0|1] "" BDY + SG_ BRAKE_SYSTEM_ICON : 38|1@0+ (1,0) [0|1] "" BDY + SG_ ACC_PROBLEM : 37|1@0+ (1,0) [0|1] "" BDY + SG_ FCM_OFF : 35|1@0+ (1,0) [0|1] "" BDY + SG_ FCM_OFF_2 : 36|1@0+ (1,0) [0|1] "" BDY + SG_ FCM_PROBLEM : 34|1@0+ (1,0) [0|1] "" BDY + SG_ RADAR_OBSTRUCTED : 33|1@0+ (1,0) [0|1] "" BDY + SG_ ENABLE_MINI_CAR : 32|1@0+ (1,0) [0|1] "" BDY + SG_ HUD_DISTANCE : 47|2@0+ (1,0) [0|3] "" BDY + SG_ HUD_LEAD : 45|2@0+ (1,0) [0|3] "" BDY + SG_ BOH_3 : 43|1@0+ (1,0) [0|3] "" BDY + SG_ BOH_4 : 42|1@0+ (1,0) [0|3] "" BDY + SG_ BOH_5 : 41|1@0+ (1,0) [0|3] "" BDY + SG_ CRUISE_CONTROL_LABEL : 40|1@0+ (1,0) [0|3] "" BDY + SG_ SET_ME_X01_2 : 55|1@0+ (1,0) [0|1] "" BDY + SG_ IMPERIAL_UNIT : 54|1@0+ (1,0) [0|1] "" BDY + SG_ ACC_ON : 52|1@0+ (1,0) [0|1] "" BDY + SG_ CHIME : 51|3@0+ (1,0) [0|1] "" BDY + SG_ SET_ME_X01 : 48|1@0+ (1,0) [0|1] "" BDY + SG_ ICONS : 63|2@0+ (1,0) [0|1] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY + +BO_ 804 CRUISE: 8 PCM + SG_ HUD_SPEED_KPH : 7|8@0+ (1,0) [0|255] "kph" EON + SG_ HUD_SPEED_MPH : 15|8@0+ (1,0) [0|255] "mph" EON + SG_ TRIP_FUEL_CONSUMED : 23|16@0+ (1,0) [0|255] "" EON + SG_ CRUISE_SPEED_PCM : 39|8@0+ (1,0) [0|255] "" EON + SG_ BOH2 : 47|8@0- (1,0) [0|255] "" EON + SG_ BOH3 : 55|8@0+ (1,0) [0|255] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 884 STALK_STATUS: 8 XXX + SG_ DASHBOARD_ALERT : 39|8@0+ (1,0) [0|255] "" EON + SG_ AUTO_HEADLIGHTS : 46|1@0+ (1,0) [0|1] "" EON + SG_ HIGH_BEAM_HOLD : 47|1@0+ (1,0) [0|1] "" EON + SG_ HIGH_BEAM_FLASH : 45|1@0+ (1,0) [0|1] "" EON + SG_ HEADLIGHTS_ON : 54|1@0+ (1,0) [0|1] "" EON + SG_ WIPER_SWITCH : 53|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 891 STALK_STATUS_2: 8 XXX + SG_ WIPERS : 17|2@0+ (1,0) [0|3] "" EON + SG_ LOW_BEAMS : 35|1@0+ (1,0) [0|1] "" XXX + SG_ HIGH_BEAMS : 34|1@0+ (1,0) [0|1] "" XXX + SG_ PARK_LIGHTS : 36|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 1029 DOORS_STATUS: 8 BDY + SG_ DOOR_OPEN_FL : 37|1@0+ (1,0) [0|1] "" EON + SG_ DOOR_OPEN_FR : 38|1@0+ (1,0) [0|1] "" EON + SG_ DOOR_OPEN_RL : 39|1@0+ (1,0) [0|1] "" EON + SG_ DOOR_OPEN_RR : 40|1@0+ (1,0) [0|1] "" EON + SG_ TRUNK_OPEN : 41|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +CM_ SG_ 304 "Seems to be platform-agnostic"; +CM_ SG_ 316 "Should exist on Nidec"; +CM_ SG_ 420 BRAKE_HOLD_RELATED "On when Brake Hold engaged"; +CM_ SG_ 490 LONG_ACCEL "wheel speed derivative, noisy and zero snapping"; +CM_ SG_ 773 PASS_AIRBAG_ON "Might just be indicator light"; +CM_ SG_ 773 PASS_AIRBAG_OFF "Might just be indicator light"; +CM_ SG_ 780 CRUISE_SPEED "255 = no speed"; +CM_ SG_ 780 PCM_SPEED "Used by Nidec"; +CM_ SG_ 780 PCM_GAS "Used by Nidec"; +CM_ SG_ 804 CRUISE_SPEED_PCM "255 = no speed"; + +VAL_ 780 CRUISE_SPEED 255 "no_speed" 252 "stopped"; +VAL_ 780 HUD_LEAD 3 "acc_off" 2 "solid_car" 1 "dashed_car" 0 "no_car"; +VAL_ 884 DASHBOARD_ALERT 0 "none" 51 "acc_problem" 55 "cmbs_problem" 75 "key_not_detected" 79 "fasten_seatbelt" 111 "lkas_problem" 131 "brake_system_problem" 132 "brake_hold_problem" 139 "tbd" 161 "door_open"; +VAL_ 891 WIPERS 4 "High" 2 "Low" 0 "Off"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc new file mode 100644 index 0000000000..36611eebcf --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_nidec_common.dbc @@ -0,0 +1,96 @@ +BO_ 145 KINEMATICS: 8 XXX + SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 148 KINEMATICS_ALT: 8 XXX + SG_ LAT_ACCEL : 7|10@0+ (0.02,-512) [-20|20] "m/s2" EON + SG_ LONG_ACCEL : 24|9@0- (-0.02,0) [-20|20] "m/s2" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + +BO_ 432 STANDSTILL: 7 VSA + SG_ CONTROLLED_STANDSTILL : 0|1@0+ (1,0) [0|1] "" EON + SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 487 BRAKE_PRESSURE: 4 VSA + SG_ BRAKE_PRESSURE1 : 7|10@0+ (0.015625,-103) [0|1000] "" EON + SG_ BRAKE_PRESSURE2 : 9|10@0+ (0.015625,-103) [0|1000] "" EON + SG_ CHECKSUM : 27|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON + +BO_ 506 BRAKE_COMMAND: 8 ADAS + SG_ COMPUTER_BRAKE : 7|10@0+ (1,0) [0|1] "" EBCM + SG_ BRAKE_PUMP_REQUEST : 8|1@0+ (1,0) [0|1] "" EBCM + SG_ BRAKE_PUMP_REQUEST_ALT : 11|1@0+ (1,0) [0|1] "" EBCM + SG_ SET_ME_X00 : 23|3@0+ (1,0) [0|1] "" EBCM + SG_ CRUISE_OVERRIDE : 20|1@0+ (1,0) [0|1] "" EBCM + SG_ SET_ME_X00_2 : 19|1@0+ (1,0) [0|1] "" EBCM + SG_ CRUISE_FAULT_CMD : 18|1@0+ (1,0) [0|1] "" EBCM + SG_ CRUISE_CANCEL_CMD : 17|1@0+ (1,0) [0|1] "" EBCM + SG_ COMPUTER_BRAKE_REQUEST : 16|1@0+ (1,0) [0|1] "" EBCM + SG_ SET_ME_1 : 31|1@0+ (1,0) [0|1] "" EBCM + SG_ AEB_REQ_1 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_REQ_2 : 26|3@0+ (1,0) [0|7] "" XXX + SG_ BRAKE_LIGHTS : 39|1@0+ (1,0) [0|1] "" EBCM + SG_ CRUISE_STATES : 38|7@0+ (1,0) [0|1] "" EBCM + SG_ CHIME : 47|3@0+ (1,0) [0|7] "" EBCM + SG_ SET_ME_X00_3 : 44|1@0+ (1,0) [0|1] "" EBCM + SG_ FCW : 43|2@0+ (1,0) [0|3] "" EBCM + SG_ AEB_STATUS : 41|2@0+ (1,0) [0|3] "" XXX + SG_ COMPUTER_BRAKE_ALT : 55|10@0+ (1,0) [0|0] "" EBCM + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EBCM + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EBCM + +BO_ 597 ROUGH_WHEEL_SPEED: 8 VSA + SG_ WHEEL_SPEED_FL : 7|8@0+ (1,0) [0|255] "mph" EON + SG_ WHEEL_SPEED_FR : 15|8@0+ (1,0) [0|255] "mph" EON + SG_ WHEEL_SPEED_RL : 23|8@0+ (1,0) [0|255] "mph" EON + SG_ WHEEL_SPEED_RR : 31|8@0+ (1,0) [0|255] "mph" EON + SG_ SET_TO_X55 : 39|8@0+ (1,0) [0|255] "" EON + SG_ SET_TO_X55_2 : 47|8@0+ (1,0) [0|255] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 829 LKAS_HUD: 5 ADAS + SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY + SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY + SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY + SG_ CAMERA_OVERHEAT : 15|1@0+ (1,0) [0|1] "" BDY + SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY + SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY + SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY + SG_ LANE_DEPARTURE_ALERT : 9|1@0+ (1,0) [0|1] "" BDY + SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_ICON : 22|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY + SG_ BEEP : 18|3@0+ (1,0) [0|7] "" BDY + SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY + SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY + SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" BDY + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" BDY + +BO_ 892 CRUISE_PARAMS: 8 PCM + SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + +CM_ SG_ 506 AEB_REQ_1 "set for duration of suspected AEB event"; +CM_ SG_ 506 COMPUTER_BRAKE_ALT "Used by dual-can Nidec"; +CM_ SG_ 506 BRAKE_PUMP_REQUEST_ALT "Used by dual-can Nidec"; +CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnngs etc..."; +CM_ SG_ 829 CAM_TEMP_HIGH "Some Driver Assist Systems Cannot Operate: Camera Temperature Too High"; +CM_ SG_ 829 CAMERA_OVERHEAT "Lane Keeping Assist Cannot Operate: Camera Too Hot"; + +VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw"; +VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime"; +VAL_ 506 AEB_STATUS 3 "aeb_prepare" 2 "aeb_ready" 1 "aeb_braking" 0 "no_aeb"; +VAL_ 829 BEEP 5 "solid_beep" 4 "double_beep" 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc new file mode 100644 index 0000000000..52805d6227 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_a.dbc @@ -0,0 +1,9 @@ +BO_ 330 STEERING_SENSORS: 8 EPS + SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON + SG_ STEER_SENSOR_STATUS_1 : 34|1@0+ (1,0) [0|1] "" EON + SG_ STEER_SENSOR_STATUS_2 : 33|1@0+ (1,0) [0|1] "" EON + SG_ STEER_SENSOR_STATUS_3 : 32|1@0+ (1,0) [0|1] "" EON + SG_ STEER_WHEEL_ANGLE : 47|16@0- (-0.1,0) [-500|500] "deg" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON diff --git a/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc b/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc new file mode 100644 index 0000000000..35e9b27520 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/_steering_sensors_b.dbc @@ -0,0 +1,5 @@ +BO_ 342 STEERING_SENSORS: 6 EPS + SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-1,0) [-3000|3000] "deg/s" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON diff --git a/opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc new file mode 100644 index 0000000000..5a60a9c9e1 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/acura_ilx_2016_can.dbc @@ -0,0 +1,50 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_b.dbc"; + +BO_ 228 STEERING_CONTROL: 5 ADAS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EPS + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 419 GEARBOX: 8 PCM + SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON + SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + +CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; +CM_ SG_ 780 CRUISE_SPEED "255 = no speed"; + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; +VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 506 CHIME 4 "double_chime" 3 "single_chime" 2 "continuous_chime" 1 "repeating_chime" 0 "no_chime" ; +VAL_ 506 FCW 3 "fcw" 2 "fcw" 1 "fcw" 0 "no_fcw" ; +VAL_ 780 HUD_LEAD 3 "no_car" 2 "solid_car" 1 "dashed_car" 0 "no_car" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc new file mode 100644 index 0000000000..06327f928f --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2018_can.dbc @@ -0,0 +1,46 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_b.dbc"; + +BO_ 392 GEARBOX: 6 XXX + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" XXX + SG_ GEAR_SHIFTER : 27|4@0+ (1,0) [0|15] "" EON + SG_ GEAR : 36|5@0+ (1,0) [0|31] "" EON + +BO_ 399 STEER_STATUS: 6 EPS + SG_ STEER_TORQUE_SENSOR : 7|12@0- (-1,0) [-2047.5|2047.5] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 35|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 36|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON + +BO_ 404 STEERING_CONTROL: 4 EON + SG_ STEER_TORQUE : 7|12@0- (1,0) [-768|768] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ PARKING_BRAKE_LIGHT : 2|1@0+ (1,0) [0|1] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +CM_ SG_ 422 PARKING_BRAKE_LIGHT "Believe this is just the dash light for the parking break"; +VAL_ 392 GEAR_SHIFTER 0 "S" 1 "P" 2 "R" 4 "N" 8 "D" ; +VAL_ 392 GEAR 26 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc new file mode 100644 index 0000000000..38a312c311 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/acura_rdx_2020_can.dbc @@ -0,0 +1,32 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _bosch_adas_2018.dbc"; +CM_ "IMPORT _steering_sensors_b.dbc"; + +BO_ 419 GEARBOX: 8 PCM + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON + SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON + +BO_ 432 STANDSTILL: 7 VSA + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 446 BRAKE_MODULE: 3 VSA + SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +VAL_ 419 GEAR_SHIFTER 32 "D" 8 "R" 4 "P" ; +VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc new file mode 100644 index 0000000000..e9f2fb41aa --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_accord_2018_can.dbc @@ -0,0 +1,55 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _bosch_adas_2018.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 401 GEARBOX_15T: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX + SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX + SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 419 GEARBOX: 8 XXX + SG_ GEAR_SHIFTER : 24|8@1+ (1,0) [0|255] "" XXX + SG_ GEAR : 32|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 432 STANDSTILL: 7 VSA + SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 446 BRAKE_MODULE: 3 VSA + SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 506 LEGACY_BRAKE_COMMAND: 8 ADAS + SG_ CHIME : 40|8@1+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 892 CRUISE_PARAMS: 8 PCM + SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|15] "" EON + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P"; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P"; +VAL_ 419 GEAR_SHIFTER 2 "S" 32 "D" 16 "N" 8 "R" 4 "P"; +VAL_ 419 GEAR 26 "S" 20 "D" 19 "N" 18 "R" 17 "P"; +VAL_ 545 ECON_ON_2 0 "off" 3 "on"; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none"; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none"; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc new file mode 100644 index 0000000000..bbe3eadb31 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_ex_2022_can.dbc @@ -0,0 +1,107 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX + SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX + SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 419 GEARBOX_ALT: 8 PCM + SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON + SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 432 STANDSTILL: 7 VSA + SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 446 BRAKE_MODULE: 3 VSA + SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_FAULT : 22|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 456 ACC_CONTROL: 8 XXX + SG_ ACCEL_COMMAND : 7|12@0- (0.01,0) [0|0] "m/s^2" XXX + SG_ IDLESTOP_ALLOW : 8|1@0+ (1,0) [0|1] "" XXX + SG_ STANDSTILL : 9|1@0+ (1,0) [0|1] "" XXX + SG_ CONTROL_ON : 10|1@0+ (1,0) [0|1] "" XXX + SG_ BOH : 23|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_STATUS : 33|1@1+ (1,0) [0|7] "" XXX + SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX + SG_ FCW_1 : 24|1@1+ (1,0) [0|3] "" XXX + SG_ FCW_2 : 54|1@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 467 CRUISE_FAULT_STATUS: 8 XXX + SG_ CRUISE_FAULT : 3|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 477 GEARBOX_ALT_2: 8 XXX + SG_ GEAR_MT : 39|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 495 SPEED_LIMIT_DASH_DISPLAY: 8 ADAS + SG_ SPEED_LIMIT : 47|8@0+ (1,0) [0|255] "mph" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 829 LKAS_HUD: 8 ADAS + SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" BDY + SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" BDY + SG_ BOH : 6|7@0+ (1,0) [0|127] "" BDY + SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" BDY + SG_ DTC : 13|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" BDY + SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" BDY + SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" BDY + SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" BDY + SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" BDY + SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" BDY + SG_ BEEP : 17|2@0+ (1,0) [0|1] "" BDY + SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" BDY + SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" BDY + SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" BDY + SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" BDY + SG_ LANE_LINES : 36|2@0+ (1,0) [0|3] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY + +BO_ 882 CRUISE_PARAMS: 8 PCM + SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|15] "" EON + +BO_ 254913108 LKAS_HUD_2: 8 ADAS + SG_ COUNTER_2 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ SET_ME_X01 : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_BOH_1 : 15|6@0+ (1,0) [0|63] "" XXX + SG_ LEFT_LANE : 23|2@0+ (1,0) [0|3] "" XXX + SG_ RIGHT_LANE : 21|2@0+ (1,0) [0|3] "" XXX + SG_ LKAS_BOH_2 : 30|5@0+ (1,0) [0|31] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +CM_ 446 "If exists, describes cruise faults and what the PCM uses for brake press detection."; +CM_ SG_ 456 IDLESTOP_ALLOW "allows car to turn off engine at a standstill"; +CM_ SG_ 456 STANDSTILL "set to 1 when camera requests -4.0 m/s^2"; +CM_ SG_ 495 SPEED_LIMIT "Defaults to 0xFF if no speed limit found"; + +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P"; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P"; +VAL_ 419 GEAR_SHIFTER 32 "D" 16 "N" 8 "R" 4 "P" 0 "B" ; +VAL_ 477 GEAR_MT 14 "reverse" 6 "6th" 5 "5th" 4 "4th" 3 "3rd" 2 "2nd" 1 "1st" 0 "Clutch"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc new file mode 100644 index 0000000000..dc14d2968a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_hatchback_ex_2017_can.dbc @@ -0,0 +1,37 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _bosch_adas_2018.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX + SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX + SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 432 STANDSTILL: 7 VSA + SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 506 LEGACY_BRAKE_COMMAND: 8 ADAS + SG_ CHIME : 40|8@1+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 892 CRUISE_PARAMS: 8 PCM + SG_ CRUISE_SPEED_OFFSET : 31|8@0- (0.1,0) [-128|127] "kph" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|15] "" EON + +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc new file mode 100644 index 0000000000..89b6ceae35 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_civic_touring_2016_can.dbc @@ -0,0 +1,95 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 228 STEERING_CONTROL: 5 ADAS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ GEAR : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 450 EPB_STATUS: 8 EPB + SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" EON + SG_ EPB_STATE : 29|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 493 HUD_SETTING: 5 XXX + SG_ IMPERIAL_UNIT : 5|1@0+ (1,0) [0|1] "" EON + +BO_ 545 ECON_STATUS: 6 XXX + SG_ ECON_ON_2 : 37|2@0+ (1,0) [0|3] "" EON + SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + +BO_ 662 SCM_BUTTONS: 4 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON + +BO_ 806 SCM_FEEDBACK: 8 SCM + SG_ CMBS_BUTTON : 22|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON + SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON + SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 862 HIGHBEAM_CONTROL: 8 ADAS + SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY + SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 927 RADAR_HUD: 8 ADAS + SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY + SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY + SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY + SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY + SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY + SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY + SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY + SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY + SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; +CM_ SG_ 806 REVERSE_LIGHT "Might be reverse gear selected and not the lights"; + +VAL_ 399 STEER_STATUS 7 "permanent_fault" 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ; +VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; +VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc new file mode 100644 index 0000000000..edeaa29993 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_clarity_hybrid_2018_can.dbc @@ -0,0 +1,113 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 228 STEERING_CONTROL: 5 ADAS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS + +BO_ 388 BRAKE_ERROR: 8 XXX + SG_ BRAKE_ERROR_1 : 32|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 34|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 419 GEARBOX: 8 PCM + SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON + SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 450 EPB_STATUS: 8 EPB + SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" EON + SG_ EPB_STATE : 29|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 545 ECON_STATUS: 6 XXX + SG_ ECON_ON_2 : 37|2@0+ (1,0) [0|3] "" EON + SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + +BO_ 662 SCM_BUTTONS: 4 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON + +BO_ 768 VEHICLE_STATE: 8 ADAS + SG_ SET_ME_XF9 : 7|8@0+ (1,0) [0|255] "" Vector__XXX + SG_ VEHICLE_SPEED : 15|8@0+ (1,0) [0|255] "kph" Vector__XXX + SG_ SET_ME_X8A : 23|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_XD0 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SALTED_WITH_IDX : 39|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 769 VEHICLE_STATE2: 8 ADAS + SG_ SET_ME_X5D : 23|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X02 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X5F : 39|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 806 SCM_FEEDBACK: 8 SCM + SG_ CMBS_BUTTON : 22|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON + SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON + SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 862 HIGHBEAM_CONTROL: 8 ADAS + SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY + SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 927 RADAR_HUD: 8 ADAS + SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY + SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY + SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY + SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY + SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY + SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY + SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY + SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY + SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY + +BO_ 1302 XXX_27: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; +CM_ SG_ 806 REVERSE_LIGHT "Might be reverse gear selected and not the lights"; + +VAL_ 399 STEER_STATUS 5 "tmp_fault" 4 "no_torque_alert_2" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ; +VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; +VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc new file mode 100644 index 0000000000..363b595817 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_body.dbc @@ -0,0 +1,10 @@ +BO_ 318291879 BSM_STATUS_RIGHT: 8 XXX + SG_ BSM_ALERT : 4|1@0+ (1,0) [0|1] "" XXX + SG_ BSM_MODE : 6|2@0+ (1,0) [0|3] "" XXX + +BO_ 318291615 BSM_STATUS_LEFT: 8 XXX + SG_ BSM_ALERT : 4|1@0+ (1,0) [0|1] "" XXX + SG_ BSM_MODE : 6|2@0+ (1,0) [0|3] "" XXX + +VAL_ 318291879 BSM_MODE 2 "blind_spot" 1 "cross_traffic" 0 "off"; +VAL_ 318291615 BSM_MODE 2 "blind_spot" 1 "cross_traffic" 0 "off"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc new file mode 100644 index 0000000000..fe2ae8f940 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_ex_2017_can.dbc @@ -0,0 +1,40 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _bosch_adas_2018.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ BOH : 45|6@0+ (1,0) [0|63] "" XXX + SG_ GEAR2 : 31|8@0+ (1,0) [0|1] "" XXX + SG_ GEAR : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH : 47|2@0+ (1,0) [0|3] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 432 STANDSTILL: 7 VSA + SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 446 BRAKE_MODULE: 3 VSA + SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +CM_ SG_ 479 RELATED_TO_GAS "bits 7, 3, and 1 set to 1 when gas not applied"; +CM_ SG_ 479 GAS_BRAKE "Signed value, negative when braking and positive when applying gas"; + +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 545 ECON_ON_2 0 "off" 3 "on" ; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc new file mode 100644 index 0000000000..7d0af49217 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_executive_2016_can.dbc @@ -0,0 +1,51 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; + +BO_ 342 STEERING_SENSORS: 6 EPS + SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON + +BO_ 399 STEER_STATUS: 6 EPS + SG_ STEER_TORQUE_SENSOR : 7|12@0- (-1,0) [-2047.5|2047.5] "tbd" EON + SG_ STEER_TORQUE_MOTOR : 23|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_CONTROL_ACTIVE : 36|1@0+ (1,0) [0|1] "" EON + SG_ STEER_STATUS : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON + +BO_ 419 GEARBOX: 8 PCM + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON + SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON + +BO_ 404 STEERING_CONTROL: 4 EON + SG_ STEER_TORQUE : 7|12@0- (1,0) [-768|768] "" EPS + SG_ SET_ME_X00 : 11|4@0+ (1,0) [0|15] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00_2 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 419 GEAR_SHIFTER 32 "D" 8 "R" 4 "P" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; +VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc new file mode 100644 index 0000000000..75fd63f3b0 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_crv_touring_2016_can.dbc @@ -0,0 +1,49 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_b.dbc"; + +BO_ 399 STEER_STATUS: 6 EPS + SG_ STEER_TORQUE_SENSOR : 7|12@0- (-1,0) [-2047.5|2047.5] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_CONTROL_ACTIVE : 36|1@0+ (1,0) [0|1] "" EON + SG_ STEER_STATUS : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ GEAR : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 404 STEERING_CONTROL: 4 EON + SG_ STEER_TORQUE : 7|12@0- (1,0) [-768|768] "" EPS + SG_ SET_ME_X00 : 11|4@0+ (1,0) [0|15] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00_2 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; +VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc new file mode 100644 index 0000000000..371ddd19a8 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_ex_2018_can.dbc @@ -0,0 +1,59 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_b.dbc"; + +BO_ 228 STEERING_CONTROL: 5 ADAS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ GEAR : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 862 HIGHBEAM_CONTROL: 8 ADAS + SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY + SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; +VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc new file mode 100644 index 0000000000..fa445b3496 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_fit_hybrid_2018_can.dbc @@ -0,0 +1,80 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; + +BO_ 228 STEERING_CONTROL: 5 ADAS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ SET_ME_X00_2 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|15] "" EPS + +BO_ 342 STEERING_SENSORS: 6 EPS + SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|3] "" EON + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 419 GEARBOX: 8 PCM + SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON + SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 545 ECON_STATUS: 5 XXX + SG_ ECON_ON : 23|1@0+ (1,0) [0|1] "" EON + SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EON + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 862 HIGHBEAM_CONTROL: 8 ADAS + SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY + SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 927 RADAR_HUD: 8 ADAS + SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY + SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY + SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY + SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY + SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY + SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY + SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY + SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY + SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" BDY + +CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; +VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc new file mode 100644 index 0000000000..79c6dc1617 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_insight_ex_2019_can.dbc @@ -0,0 +1,19 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _bosch_adas_2018.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 419 GEARBOX: 8 PCM + SG_ GEAR : 7|8@0+ (1,0) [0|255] "" EON + SG_ GEAR_SHIFTER : 29|6@0+ (1,0) [0|63] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 432 STANDSTILL: 7 VSA + SG_ BRAKE_ERROR_1 : 13|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 12|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +VAL_ 419 GEAR 10 "R" 1 "D" 0 "P"; +VAL_ 419 GEAR_SHIFTER 32 "D" 16 "N" 8 "R" 4 "P"; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc new file mode 100644 index 0000000000..7a37e0124f --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_exl_2018.dbc @@ -0,0 +1,86 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; +CM_ "IMPORT _steering_sensors_b.dbc"; + +BO_ 228 STEERING_CONTROL: 5 ADAS + SG_ STEER_TORQUE : 7|16@0- (1,0) [-3840|3840] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|0] "" EPS + SG_ COUNTER : 37|2@0+ (1,0) [0|3] "" EPS + SG_ CHECKSUM : 35|4@0+ (1,0) [0|3] "" EPS + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-31000|31000] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 39|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|3] "" EON + +BO_ 419 GEARBOX: 8 PCM + SG_ GEAR : 7|8@0+ (1,0) [0|256] "" EON + SG_ GEAR_SHIFTER : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 450 EPB_STATUS: 8 XXX + SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX + SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX + SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 662 SCM_BUTTONS: 4 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ CRUISE_SETTING : 3|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 29|2@0+ (1,0) [0|3] "" EON + +BO_ 806 SCM_FEEDBACK: 8 SCM + SG_ CMBS_BUTTON : 22|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 28|1@0+ (1,0) [0|1] "" EON + SG_ RIGHT_BLINKER : 27|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 26|1@0+ (1,0) [0|1] "" EON + SG_ REVERSE_LIGHT : 18|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +BO_ 862 HIGHBEAM_CONTROL: 8 ADAS + SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY + SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 927 RADAR_HUD: 8 ADAS + SG_ ZEROS_BOH : 7|17@0+ (1,0) [0|127] "" BDY + SG_ APPLY_BRAKES_FOR_CANC : 23|1@0+ (1,0) [0|15] "" BDY + SG_ ZEROS_BOH2 : 31|8@0+ (1,0) [0|127] "" BDY + SG_ RESUME_INSTRUCTION : 21|1@0+ (1,0) [0|15] "" BDY + SG_ ACC_ALERTS : 20|5@0+ (1,0) [0|15] "" BDY + SG_ LEAD_SPEED : 39|9@0+ (1,0) [0|127] "" BDY + SG_ LEAD_STATE : 46|3@0+ (1,0) [0|127] "" BDY + SG_ LEAD_DISTANCE : 43|5@0+ (1,0) [0|31] "" BDY + SG_ ZEROS_BOH3 : 54|7@0+ (1,0) [0|127] "" BDY + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" BDY + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" BDY + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +CM_ SG_ 419 GEAR "10 = reverse, 11 = transition"; +CM_ SG_ 780 CRUISE_SPEED "255 = no speed"; +CM_ SG_ 806 REVERSE_LIGHT "Might be reverse gear selected and not the lights"; + +VAL_ 399 STEER_STATUS 6 "tmp_fault" 5 "fault_1" 4 "no_torque_alert_2" 3 "low_speed_lockout" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 419 GEAR_SHIFTER 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 450 EPB_STATE 3 "engaged" 2 "disengaging" 1 "engaging" 0 "disengaged" ; +VAL_ 662 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 662 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; +VAL_ 780 HUD_LEAD 3 "no_car" 2 "solid_car" 1 "dashed_car" 0 "no_car" ; +VAL_ 927 ACC_ALERTS 29 "esp_active_acc_canceled" 10 "b_pedal_applied" 9 "speed_too_low" 8 "speed_too_high" 7 "p_brake_applied" 6 "gear_no_d" 5 "seatbelt" 4 "too_steep_downhill" 3 "too_steep_uphill" 2 "too_close" 1 "no_vehicle_ahead" ; +VAL_ 806 CMBS_BUTTON 3 "pressed" 0 "released" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc new file mode 100644 index 0000000000..fed29d0664 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_odyssey_extreme_edition_2018_china_can.dbc @@ -0,0 +1,74 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _nidec_common.dbc"; + +BO_ 342 STEERING_SENSORS: 6 EPS + SG_ STEER_ANGLE_RATE : 23|16@0- (1,0) [-3000|3000] "deg/s" EON + SG_ COUNTER : 45|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 43|4@0+ (1,0) [0|15] "" EON + SG_ STEER_ANGLE : 7|16@0- (-0.1,0) [-500|500] "deg" EON + +BO_ 399 STEER_STATUS: 7 EPS + SG_ STEER_TORQUE_SENSOR : 7|16@0- (-1,0) [-2985|2985] "tbd" EON + SG_ STEER_ANGLE_RATE : 23|16@0- (-0.1,0) [-31000|31000] "deg/s" EON + SG_ STEER_STATUS : 43|4@0+ (1,0) [0|15] "" EON + SG_ STEER_CONTROL_ACTIVE : 35|1@0+ (1,0) [0|1] "" EON + SG_ STEER_CONFIG_INDEX : 43|4@0+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + +BO_ 401 GEARBOX: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ GEAR : 35|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 404 STEERING_CONTROL: 4 EON + SG_ SET_ME_X00 : 22|7@0+ (1,0) [0|127] "" EPS + SG_ STEER_TORQUE_REQUEST : 23|1@0+ (1,0) [0|1] "" EPS + SG_ COUNTER : 29|2@0+ (1,0) [0|15] "" EPS + SG_ CHECKSUM : 27|4@0+ (1,0) [0|3] "" EPS + SG_ STEER_TORQUE : 7|16@0- (-1,0) [-32767|32767] "" EPS + +BO_ 422 SCM_BUTTONS: 8 SCM + SG_ CRUISE_BUTTONS : 7|3@0+ (1,0) [0|7] "" EON + SG_ LIGHTS_SETTING : 1|2@0+ (1,0) [0|3] "" EON + SG_ MAIN_ON : 47|1@0+ (1,0) [0|1] "" EON + SG_ CRUISE_SETTING : 43|2@0+ (1,0) [0|3] "" EON + SG_ DRIVERS_DOOR_OPEN : 63|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 450 EPB_STATUS: 8 XXX + SG_ EPB_BRAKE_AND_PULL : 6|1@0+ (1,0) [0|1] "" XXX + SG_ EPB_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX + SG_ EPB_STATE : 29|2@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 660 SCM_FEEDBACK: 8 SCM + SG_ RIGHT_BLINKER : 6|1@0+ (1,0) [0|1] "" EON + SG_ LEFT_BLINKER : 5|1@0+ (1,0) [0|1] "" EON + SG_ WIPERS_SPEED : 4|2@0+ (1,0) [0|3] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 862 HIGHBEAM_CONTROL: 8 ADAS + SG_ ZEROS_BOH : 7|50@0+ (1,0) [0|127] "" BDY + SG_ ZEROS_BOH_2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ HIGHBEAMS_ON : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AUTO_HIGHBEAMS_ACTIVE : 53|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +CM_ SG_ 401 GEAR "10 = reverse, 11 = transition"; +VAL_ 399 STEER_STATUS 5 "fault" 4 "no_torque_alert_2" 2 "no_torque_alert_1" 0 "normal" ; +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P" ; +VAL_ 401 GEAR 7 "L" 10 "S" 4 "D" 3 "N" 2 "R" 1 "P" ; +VAL_ 422 CRUISE_BUTTONS 7 "tbd" 6 "tbd" 5 "tbd" 4 "accel_res" 3 "decel_set" 2 "cancel" 1 "main" 0 "none" ; +VAL_ 422 LIGHTS_SETTING 3 "high_beam" 2 "low_beam" 1 "position" 0 "no_lights" ; +VAL_ 422 CRUISE_SETTING 3 "distance_adj" 2 "tbd" 1 "lkas_button" 0 "none" ; diff --git a/opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc b/opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc new file mode 100644 index 0000000000..646245b74c --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/honda/honda_pilot_2023_can.dbc @@ -0,0 +1,92 @@ +CM_ "IMPORT _honda_common.dbc"; +CM_ "IMPORT _bosch_2018.dbc"; +CM_ "IMPORT _steering_sensors_a.dbc"; + +BO_ 401 GEARBOX_15T: 8 PCM + SG_ GEAR_SHIFTER : 5|6@0+ (1,0) [0|63] "" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" EON + +BO_ 419 GEARBOX: 8 XXX + SG_ GEAR_SHIFTER : 24|8@1+ (1,0) [0|255] "" XXX + SG_ GEAR : 32|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 432 STANDSTILL: 7 VSA + SG_ WHEELS_MOVING : 12|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_1 : 11|1@0+ (1,0) [0|1] "" EON + SG_ BRAKE_ERROR_2 : 9|1@0+ (1,0) [0|1] "" EON + SG_ COUNTER : 53|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 51|4@0+ (1,0) [0|15] "" EON + +BO_ 446 BRAKE_MODULE: 3 VSA + SG_ BRAKE_PRESSED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 21|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 479 ACC_CONTROL: 8 EON + SG_ SET_TO_0 : 20|5@0+ (1,0) [0|1] "" XXX + SG_ CONTROL_ON : 23|3@0+ (1,0) [0|5] "" XXX + SG_ GAS_COMMAND : 7|16@0- (1,0) [0|0] "" XXX + SG_ ACCEL_COMMAND : 31|11@0- (0.01,0) [0|0] "m/s2" XXX + SG_ BRAKE_LIGHTS : 62|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_REQUEST : 34|1@0+ (1,0) [0|1] "" XXX + SG_ STANDSTILL : 35|1@0+ (1,0) [0|1] "" XXX + SG_ STANDSTILL_RELEASE : 36|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_STATUS : 33|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_BRAKING : 47|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_PREPARE : 43|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 495 ACC_CONTROL_ON: 8 XXX + SG_ SET_TO_75 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_30 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ZEROS_BOH2 : 47|16@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_FF : 15|8@0+ (1,0) [0|255] "" XXX + SG_ SET_TO_3 : 6|7@0+ (1,0) [0|4095] "" XXX + SG_ CONTROL_ON : 7|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 829 LKAS_HUD: 8 XXX + SG_ SET_ME_X41 : 6|7@0+ (1,0) [0|127] "" XXX + SG_ BOH : 6|7@0+ (1,0) [0|127] "" XXX + SG_ CAM_TEMP_HIGH : 7|1@0+ (1,0) [0|255] "" XXX + SG_ STEERING_REQUIRED : 8|1@0+ (1,0) [0|1] "" XXX + SG_ LDW_RIGHT : 9|1@0+ (1,0) [0|1] "" XXX + SG_ SOLID_LANES : 10|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_OFF : 11|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_PROBLEM : 12|1@0+ (1,0) [0|1] "" XXX + SG_ DTC : 13|1@0+ (1,0) [0|1] "" XXX + SG_ DASHED_LANES : 14|1@0+ (1,0) [0|1] "" XXX + SG_ BEEP : 17|2@0+ (1,0) [0|1] "" XXX + SG_ LDW_PROBLEM : 21|1@0+ (1,0) [0|1] "" XXX + SG_ BOH_2 : 23|2@0+ (1,0) [0|4] "" XXX + SG_ CLEAN_WINDSHIELD : 26|1@0+ (1,0) [0|1] "" XXX + SG_ LDW_OFF : 27|1@0+ (1,0) [0|1] "" XXX + SG_ LDW_ON : 28|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_X48 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ LANE_LINES : 36|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 59|4@0+ (1,0) [0|15] "" XXX + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 1302 ODOMETER: 8 XXX + SG_ ODOMETER : 7|24@0+ (1,0) [0|16777215] "km" EON + SG_ COUNTER : 61|2@0+ (1,0) [0|3] "" EON + SG_ CHECKSUM : 59|4@0+ (1,0) [0|3] "" EON + +CM_ SG_ 479 CONTROL_ON "Set to 5 when car is being controlled"; +CM_ SG_ 479 AEB_STATUS "set for the duration of AEB event"; +CM_ SG_ 479 AEB_BRAKING "set when braking is commanded during AEB event"; +CM_ SG_ 479 AEB_PREPARE "set 1s before AEB"; +CM_ SG_ 829 BEEP "beeps are pleasant, chimes are for warnings etc..."; +CM_ SG_ 829 LANE_LINES "related to lane lines on cluster, left/right white/green"; + +VAL_ 401 GEAR_SHIFTER 32 "L" 16 "S" 8 "D" 4 "N" 2 "R" 1 "P"; +VAL_ 419 GEAR_SHIFTER 2 "S" 32 "D" 16 "N" 8 "R" 4 "P"; +VAL_ 419 GEAR 26 "S" 20 "D" 19 "N" 18 "R" 17 "P"; +VAL_ 829 BEEP 3 "single_beep" 2 "triple_beep" 1 "repeated_beep" 0 "no_beep"; +VAL_ 829 LANE_LINES 7 "both_lines_green" 6 "both_lines_white" 2 "left_line_white" 0 "no_lines"; diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore b/opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore new file mode 100644 index 0000000000..81f73f3551 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/.gitignore @@ -0,0 +1,2 @@ +hyundai_kia_mando_front_radar.dbc +hyundai_kia_mando_corner_radar.dbc diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc new file mode 100644 index 0000000000..52a06931f5 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/_hyundai_common.dbc @@ -0,0 +1,235 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX CAMERA FRONT_RADAR ADRV APRK + + +BO_ 80 LKAS: 16 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX + SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|255] "" XXX + SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX + SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX + SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX + SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX + SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX + SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX + SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX + SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX + SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX + SG_ VALUE104 : 104|8@1+ (1,0) [0|255] "" XXX + +BO_ 81 ADRV_0x51: 32 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" 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 + +BO_ 385 CAM_0x181: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 386 CAM_0x182: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 387 CAM_0x183: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 388 CAM_0x184: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 389 CAM_0x185: 8 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 438 CAM_0x1b6: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 439 CAM_0x1b7: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 440 CAM_0x1b8: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +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_ 513 RADAR_0x201: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 528 RADAR_0x210: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 529 RADAR_0x211: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 530 RADAR_0x212: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 531 RADAR_0x213: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 532 RADAR_0x214: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 533 RADAR_0x215: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 534 RADAR_0x216: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 535 RADAR_0x217: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 536 RADAR_0x218: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 537 RADAR_0x219: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 538 RADAR_0x21a: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 539 RADAR_0x21b: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 540 RADAR_0x21c: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 541 RADAR_0x21d: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 542 RADAR_0x21e: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 543 RADAR_0x21f: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 576 RADAR_0x240: 16 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 674 CAM_0x2a2: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 675 CAM_0x2a3: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 676 CAM_0x2a4: 24 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX + SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX + SG_ BYTE8 : 64|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE9 : 72|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE10 : 80|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE11 : 88|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE12 : 96|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE13 : 104|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE14 : 112|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE15 : 120|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE16 : 128|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE17 : 136|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE18 : 144|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE19 : 152|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE20 : 160|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE21 : 168|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE22 : 176|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE23 : 184|8@1+ (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 + +BO_ 700 CAM_0x2bc: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 701 CAM_0x2bd: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 702 CAM_0x2be: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +CM_ BO_ 676 "Contains signals with detailed lane line information. Used by ADAS ECU on HDA 2 vehicles to operate LFA."; + +CM_ SG_ 80 HAS_LANE_SAFETY "If 0, hides LKAS 'Lane Safety' menu from vehicle settings"; +CM_ SG_ 676 LEFT_LANE_LINE "Left lane line confidence"; +CM_ SG_ 676 RIGHT_LANE_LINE "Right lane line confidence"; +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_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; +VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc new file mode 100644 index 0000000000..1b3b74b251 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd.dbc @@ -0,0 +1,1077 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +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 + +BO_ 64 GEAR_ALT: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ GEAR : 32|3@1+ (1,0) [0|7] "" XXX + SG_ GEAR_STEP : 67|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 68|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 76|4@1+ (1,0) [0|15] "" XXX + +BO_ 69 GEAR: 24 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ GEAR : 44|3@1+ (1,0) [0|7] "" XXX + SG_ RIGHT_PADDLE : 57|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_PADDLE : 58|1@0+ (1,0) [0|1] "" XXX + SG_ GEAR_STEP : 146|5@1+ (1,0) [0|31] "" XXX + SG_ GEAR_STEP1 : 154|5@1+ (1,0) [0|31] "" XXX + +BO_ 80 LKAS: 16 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX + SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|255] "" XXX + SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX + SG_ LKA_ICON : 38|2@1+ (1,0) [0|255] "" XXX + SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX + SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX + SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX + SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|255] "" XXX + SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX + SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX + SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX + SG_ VALUE104 : 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 + +BO_ 96 ESP_STATUS: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ TRACTION_AND_STABILITY_CONTROL : 42|3@1+ (1,0) [0|63] "" XXX + SG_ BRAKE_PRESSURE : 128|11@1+ (1,0) [0|2047] "" XXX + SG_ BRAKE_PRESSED : 148|1@1+ (1,0) [0|3] "" XXX + SG_ AUTO_HOLD : 192|1@0+ (1,0) [0|1] "" XXX + +BO_ 101 BRAKE: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ BRAKE_LIGHT : 29|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_POSITION : 40|16@1- (1,0) [0|65535] "" XXX + SG_ BRAKE_PRESSED : 57|1@1+ (1,0) [0|3] "" XXX + +BO_ 112 GEAR_ALT_2: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ GEAR : 60|3@1+ (1,0) [0|7] "" XXX + +BO_ 160 WHEEL_SPEEDS: 24 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ MOVING_FORWARD : 56|1@0+ (1,0) [0|1] "" XXX + SG_ MOVING_BACKWARD : 57|1@0+ (1,0) [0|1] "" XXX + SG_ MOVING_FORWARD2 : 58|1@0+ (1,0) [0|1] "" XXX + SG_ MOVING_BACKWARD2 : 59|1@0+ (1,0) [0|1] "" XXX + SG_ WHEEL_SPEED_1 : 64|16@1+ (0.03125,0) [0|65535] "kph" XXX + SG_ WHEEL_SPEED_2 : 80|16@1+ (0.03125,0) [0|65535] "kph" XXX + SG_ WHEEL_SPEED_3 : 96|16@1+ (0.03125,0) [0|65535] "kph" XXX + SG_ WHEEL_SPEED_4 : 112|16@1+ (0.03125,0) [0|65535] "kph" XXX + +BO_ 203 LFA_ALT: 24 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LKAS_ANGLE_ACTIVE : 29|2@0+ (1,0) [0|3] "" XXX + SG_ LKAS_ANGLE_CMD : 32|14@1- (-0.1,0) [0|511] "" XXX + SG_ LKAS_ANGLE_MAX_TORQUE : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 234 MDPS: 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_1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ LKA_ACTIVE : 48|1@0+ (1,0) [0|16777215] "" XXX + SG_ LKA_FAULT : 54|1@0+ (1,0) [0|1] "" XXX + SG_ STEERING_OUT_TORQUE : 64|12@1+ (0.1,-204.8) [0|65535] "" XXX + SG_ STEERING_COL_TORQUE : 80|13@1+ (1,-4095) [0|4095] "" XXX + SG_ STEERING_ANGLE : 96|16@1- (-0.1,0) [0|255] "deg" XXX + SG_ STEERING_ANGLE_2 : 128|16@1- (-0.1,0) [0|65535] "deg" XXX + SG_ LFA2_ACTIVE : 145|2@0+ (1,0) [0|3] "" XXX + SG_ LFA2_FAULT : 149|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 159|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 167|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 175|8@0+ (1,0) [0|255] "" XXX + +BO_ 256 ACCELERATOR_BRAKE_ALT: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ BRAKE_PRESSED : 32|1@1+ (1,0) [0|1] "" XXX + SG_ ACCELERATOR_PEDAL_PRESSED : 176|1@1+ (1,0) [0|1] "" XXX + +BO_ 261 ACCELERATOR_ALT: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ ACCELERATOR_PEDAL : 103|10@1+ (0.25,0) [0|1022] "" XXX + +BO_ 272 LKAS_ALT: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX + SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|3] "" XXX + SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX + SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX + SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX + SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX + SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX + SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|1] "" XXX + SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX + SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX + SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX + SG_ DampingGain : 104|8@1+ (1,0) [0|255] "" XXX + SG_ VALUE231 : 231|8@0+ (1,0) [0|255] "" XXX + SG_ VALUE239 : 239|8@0+ (1,0) [0|255] "" XXX + SG_ VALUE247 : 247|8@0+ (1,0) [0|255] "" XXX + SG_ VALUE255 : 255|8@0+ (1,0) [0|255] "" 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 + +BO_ 298 LFA: 16 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LKA_MODE : 24|3@1+ (1,0) [0|7] "" XXX + SG_ LKA_ACTIVE : 27|2@1+ (1,0) [0|3] "" XXX + SG_ LKA_WARNING : 32|1@1+ (1,0) [0|1] "" XXX + SG_ LKA_ICON : 38|2@1+ (1,0) [0|3] "" XXX + SG_ FCA_SYSWARN : 40|1@0+ (1,0) [0|1] "" XXX + SG_ TORQUE_REQUEST : 41|11@1+ (1,-1024) [0|4095] "" XXX + SG_ STEER_REQ : 52|1@1+ (1,0) [0|1] "" XXX + SG_ LFA_BUTTON : 56|1@1+ (1,0) [0|1] "" XXX + SG_ VALUE63 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ VALUE64 : 64|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ LKAS_ANGLE_ACTIVE : 77|2@0+ (1,0) [0|3] "" XXX + SG_ HAS_LANE_SAFETY : 80|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_ANGLE_CMD : 82|14@1- (-0.1,0) [0|511] "" XXX + SG_ LKAS_ANGLE_MAX_TORQUE : 96|8@1+ (1,0) [0|255] "" XXX + SG_ DampingGain : 104|8@1+ (1,0) [0|255] "" XXX + SG_ VALUE231 : 231|8@0+ (1,0) [0|255] "" XXX + SG_ VALUE239 : 239|8@0+ (1,0) [0|255] "" XXX + SG_ VALUE247 : 247|8@0+ (1,0) [0|255] "" XXX + SG_ VALUE255 : 255|8@0+ (1,0) [0|255] "" XXX + +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 + +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_ 352 ADRV_0x160: 16 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ AEB_SETTING : 24|2@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_2 : 56|8@1+ (1,0) [0|1] "" XXX + SG_ SET_ME_FF : 64|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_FC : 72|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_9 : 80|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 95|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 102|1@0+ (1,0) [0|1] "" XXX + +BO_ 353 ADRV_0x161: 32 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ FCA_ICON : 24|3@1+ (1,0) [0|7] "" XXX + SG_ FCA_ALT_ICON : 27|3@1+ (1,0) [0|7] "" XXX + SG_ LKA_ICON : 30|3@1+ (1,0) [0|3] "" XXX + SG_ HBA_ICON : 33|3@1+ (1,0) [0|7] "" XXX + SG_ FCA_IMAGE : 42|3@1+ (1,0) [0|7] "" XXX + SG_ BCA_LEFT : 51|3@1+ (1,0) [0|7] "" XXX + SG_ BCA_RIGHT : 54|3@1+ (1,0) [0|7] "" XXX + SG_ LCA_LEFT_ARROW : 57|3@1+ (1,0) [0|7] "" XXX + SG_ LCA_RIGHT_ARROW : 60|3@1+ (1,0) [0|7] "" XXX + SG_ CENTERLINE : 64|2@1+ (1,0) [0|3] "" XXX + SG_ TARGET : 66|3@1+ (1,0) [0|7] "" XXX + SG_ TARGET_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ LANELINE_LEFT : 80|4@1+ (1,0) [0|15] "" XXX + SG_ LANELINE_LEFT_POSITION : 84|6@1+ (1,0) [0|15] "" XXX + SG_ LANELINE_RIGHT : 90|4@1+ (1,0) [0|15] "" XXX + SG_ LANELINE_RIGHT_POSITION : 94|6@1+ (1,0) [0|15] "" XXX + SG_ LANELINE_CURVATURE : 100|4@1+ (1,0) [0|31] "" XXX + SG_ LANELINE_CURVATURE_DIRECTION : 104|1@0+ (1,0) [0|1] "" XXX + SG_ LANE_HIGHLIGHT : 105|4@1+ (1,0) [0|15] "" XXX + SG_ LANE_HIGHLIGHT_DISTANCE : 109|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ LANE_LEFT : 120|3@1+ (1,0) [0|7] "" XXX + SG_ LANE_RIGHT : 123|3@1+ (1,0) [0|7] "" XXX + SG_ LANE_ZOOM : 126|2@1+ (1,0) [0|3] "" XXX + SG_ ALERTS_1 : 128|6@1+ (1,0) [0|63] "" XXX + SG_ ALERTS_2 : 134|5@1+ (1,0) [0|31] "" XXX + SG_ ALERTS_3 : 139|5@1+ (1,0) [0|31] "" XXX + SG_ ALERTS_4 : 144|8@1+ (1,0) [0|255] "" XXX + SG_ ALERTS_5 : 152|5@1+ (1,0) [0|31] "" XXX + SG_ MUTE : 157|3@1+ (1,0) [0|7] "" XXX + SG_ SOUNDS_1 : 160|4@1+ (1,0) [0|3] "" XXX + SG_ SOUNDS_2 : 164|4@1+ (1,0) [0|3] "" XXX + SG_ SOUNDS_3 : 168|4@1+ (1,0) [0|15] "" XXX + SG_ SOUNDS_4 : 172|3@1+ (1,0) [0|7] "" XXX + SG_ SETSPEED_HUD : 181|3@1+ (1,0) [0|7] "" XXX + SG_ DISTANCE_LEAD : 184|5@1+ (1,0) [0|31] "" XXX + SG_ DISTANCE_CAR : 189|3@1+ (1,0) [0|7] "" XXX + SG_ DISTANCE_SPACING : 192|4@1+ (1,0) [0|15] "" XXX + SG_ DISTANCE : 196|4@1+ (1,0) [0|7] "" XXX + SG_ vSetDis : 200|8@1+ (1,0) [0|255] "" XXX + SG_ SETSPEED : 208|4@1+ (1,0) [0|7] "" XXX + SG_ HDA_ICON : 212|3@1+ (1,0) [0|7] "" XXX + SG_ SLA_ICON : 216|4@1+ (1,0) [0|15] "" XXX + SG_ NAV_ICON : 220|3@1+ (1,0) [0|7] "" XXX + SG_ LFA_ICON : 224|3@1+ (1,0) [0|7] "" XXX + SG_ LCA_LEFT_ICON : 228|3@1+ (1,0) [0|7] "" XXX + SG_ LCA_RIGHT_ICON : 232|3@1+ (1,0) [0|7] "" XXX + SG_ BACKGROUND : 236|4@1+ (1,0) [0|15] "" XXX + SG_ DAW_ICON : 240|3@1+ (1,0) [0|7] "" XXX + SG_ CAR_CIRCLE : 243|3@1+ (1,0) [0|7] "" XXX + +BO_ 354 CCNC_0x162: 32 CCNC + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTRY : 24|4@1+ (1,0) [0|7] "" XXX + SG_ SPEEDLIMIT_FLASH : 28|4@1+ (1,0) [0|15] "" XXX + SG_ SPEEDLIMIT : 32|8@1+ (1,0) [0|255] "" XXX + SG_ SIGNS : 40|8@1+ (1,0) [0|15] "" XXX + SG_ SPEEDLIMIT_WEATHER : 48|4@1+ (1,0) [0|15] "" XXX + SG_ VIBRATE : 52|1@0+ (1,0) [0|1] "" XXX + SG_ FF_DETECT : 64|5@1+ (1,0) [0|31] "" XXX + SG_ FF_DISTANCE : 69|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ FF_LATERAL : 80|7@1+ (0.1,0) [0|127] "m" XXX + SG_ FF_DETECT_ALT : 88|5@1+ (1,0) [0|31] "" XXX + SG_ FF_DISTANCE_ALT : 93|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ FF_LATERAL_ALT : 104|7@1+ (0.1,0) [0|127] "m" XXX + SG_ LF_DETECT : 112|5@1+ (1,0) [0|31] "" XXX + SG_ LF_DETECT_DISTANCE : 117|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ LF_DETECT_LATERAL : 128|7@1+ (0.1,0) [0|127] "m" XXX + SG_ RF_DETECT : 136|5@1+ (1,0) [0|31] "" XXX + SG_ RF_DETECT_DISTANCE : 141|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ RF_DETECT_LATERAL : 152|7@1+ (0.1,0) [0|127] "m" XXX + SG_ LR_DETECT : 163|5@1+ (1,0) [0|31] "" XXX + SG_ LR_DETECT_DISTANCE : 175|8@0+ (0.1,0) [0|255] "" XXX + SG_ LR_DETECT_LATERAL : 176|7@1+ (0.1,0) [0|127] "" XXX + SG_ RR_DETECT : 192|5@1+ (1,0) [0|31] "" XXX + SG_ RR_DETECT_DISTANCE : 197|8@1+ (0.1,0) [0|255] "" XXX + SG_ RR_DETECT_LATERAL : 205|7@1+ (0.1,0) [0|127] "" XXX + SG_ FAULT_FSS : 213|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_FCA : 216|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_LSS : 219|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_SLA : 222|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_DAW : 225|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_HBA : 228|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_SCC : 231|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_LFA : 234|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_HDA : 237|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_LCA : 240|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_HDP : 243|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_DAS : 246|3@1+ (1,0) [0|7] "" XXX + SG_ FAULT_ESS : 249|3@1+ (1,0) [0|7] "" 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 + +BO_ 385 CAM_0x181: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 386 CAM_0x182: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 387 CAM_0x183: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 388 CAM_0x184: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 389 CAM_0x185: 8 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 416 SCC_CONTROL: 32 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ ACC_ObjDist : 24|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ ACC_ObjRelSpd : 35|12@1+ (0.1,-170) [-16.4|34.7] "m/s" XXX + SG_ ACC_ObjLatPos : 47|9@1- (0.1,-20) [0|511] "" XXX + SG_ ZEROS_7 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ SysFailState : 64|2@1+ (1,0) [0|3] "" XXX + SG_ MainMode_ACC : 66|1@1+ (1,0) [0|1] "" XXX + SG_ ACCMode : 68|3@1+ (1,0) [0|7] "" XXX + SG_ TakeOverReq : 73|2@0+ (1,0) [0|3] "" XXX + SG_ InfoDisplay : 74|3@1+ (1,0) [0|7] "" XXX + SG_ DriverAlert : 77|2@1+ (1,0) [0|3] "" XXX + SG_ ObjDistLevel : 80|8@1+ (1,0) [0|255] "" XXX + SG_ DISTANCE_SETTING : 88|4@1+ (1,0) [0|15] "" XXX + SG_ VSetDis : 103|8@0+ (1,0) [0|255] "km/h or mph" XXX + SG_ NSCCOper : 104|2@1+ (1,0) [0|3] "" XXX + SG_ NSCCOnOff : 106|2@1+ (1,0) [0|3] "" XXX + SG_ HUD_LEAD_INFO : 108|3@1+ (1,0) [0|7] "" XXX + SG_ DriveMode : 112|3@1+ (1,0) [0|7] "" XXX + SG_ aReqValue : 128|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX + SG_ aReqRaw : 140|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX + SG_ JerkUpperLimit : 158|7@0+ (0.1,0) [0|0] "" XXX + SG_ JerkLowerLimit : 166|7@0+ (0.1,0) [0|12.7] "m/s^3" XXX + SG_ AccelLimitBandUpper : 173|6@0+ (0.02,0) [0|63] "" XXX + SG_ AccelLimitBandLower : 181|6@0+ (0.02,0) [0|63] "" XXX + SG_ StopReq : 185|2@0+ (1,0) [0|3] "" XXX + SG_ CRUSE_INFO_SET_2 : 189|2@0+ (1,0) [0|3] "" XXX + SG_ TARGET_DISTANCE : 192|11@1+ (0.1,0) [0|204.7] "m" XXX + SG_ ZEROS_2 : 207|5@0+ (1,0) [0|63] "" XXX + SG_ ZEROS : 215|48@0+ (1,0) [0|281474976710655] "" XXX + +BO_ 426 CRUISE_BUTTONS_ALT: 16 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 24|4@1+ (1,0) [0|15] "" XXX + SG_ SET_ME_1 : 28|2@1+ (1,0) [0|3] "" XXX + SG_ DISTANCE_UNIT : 30|1@1+ (1,0) [0|1] "" 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_ 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 + SG_ SET_ME_2 : 44|3@1+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_6 : 47|1@1+ (1,0) [0|1] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|255] "" XXX + SG_ CLU_SPEED : 64|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE9 : 72|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE10 : 80|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE11 : 88|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE12 : 96|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE13 : 104|8@1+ (1,0) [0|255] "" XXX + SG_ BYTE14 : 112|8@1+ (1,0) [0|255] "" 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 + +BO_ 438 CAM_0x1b6: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 439 CAM_0x1b7: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 440 CAM_0x1b8: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +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_ 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_ 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_ : 40|1@0+ (1,0) [0|1] "" XXX + +BO_ 474 ADRV_0x1da: 32 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_22 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_41 : 47|8@0+ (1,0) [0|255] "" XXX + +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 + +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 + SG_ NEW_SIGNAL_4 : 25|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_3 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_BLINK_HOLD : 29|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_BLINK_HOLD : 30|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ HDA_MODE2 : 32|3@1+ (1,0) [0|3] "" XXX + SG_ LANE_LEFT : 36|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_6 : 39|3@0+ (1,0) [0|7] "" XXX + SG_ LANE_RIGHT : 41|2@0+ (1,0) [0|3] "" XXX + SG_ LANE_CHANGING : 45|3@0+ (1,0) [0|1] "" XXX + SG_ LF_DETECT_DISTANCE : 46|11@1+ (0.1,0) [0|2047] "" XXX + SG_ LF_DETECT_LATERAL : 70|7@0+ (0.1,0) [0|127] "" XXX + SG_ LF_DETECT : 74|3@0+ (1,0) [0|7] "" XXX + SG_ RF_DETECT_DISTANCE : 75|11@1+ (0.1,0) [0|2047] "" XXX + SG_ RF_DETECT_LATERAL : 94|7@0+ (0.1,0) [0|127] "" XXX + SG_ RF_DETECT : 98|3@0+ (1,0) [0|7] "" XXX + SG_ SET_ME_FF : 120|8@1+ (1,0) [0|255] "" XXX + SG_ LR_DETECT_DISTANCE : 139|8@1+ (0.1,0) [0|511] "m" XXX + SG_ LR_DETECT_LATERAL : 152|6@1+ (0.1,0) [0|63] "" XXX + SG_ LR_DETECT : 162|3@0+ (1,0) [0|1] "" XXX + SG_ RR_DETECT_DISTANCE : 163|8@1+ (0.1,0) [0|511] "m" XXX + SG_ RR_DETECT_LATERAL : 172|6@1+ (0.1,0) [0|63] "" XXX + SG_ RR_DETECT : 186|3@0+ (1,0) [0|1] "" XXX + SG_ AUTOLANECHANGE_MSG : 207|4@0+ (1,0) [0|3] "" XXX + SG_ LANELINE_CURVATURE : 208|4@1+ (1,0) [0|31] "" XXX + SG_ LANELINE_CURVATURE_DIRECTION : 212|1@0+ (1,0) [0|1] "" XXX + SG_ LANELINE_LEFT_POSITION : 239|8@0+ (1,0) [0|255] "" XXX + 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_ 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 + +BO_ 512 ADRV_0x200: 8 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_E1 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ TauGapSet : 32|3@1+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_2 : 35|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_1 : 39|3@0+ (1,0) [0|7] "" XXX + SG_ TauGapSet_ : 42|3@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_3 : 47|5@0+ (1,0) [0|31] "" XXX + +BO_ 513 RADAR_0x201: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 528 RADAR_0x210: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 529 RADAR_0x211: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 530 RADAR_0x212: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 531 RADAR_0x213: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 532 RADAR_0x214: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 533 RADAR_0x215: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 534 RADAR_0x216: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 535 RADAR_0x217: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 536 RADAR_0x218: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 537 RADAR_0x219: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 538 RADAR_0x21a: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 539 RADAR_0x21b: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 540 RADAR_0x21c: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 541 RADAR_0x21d: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 542 RADAR_0x21e: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 543 RADAR_0x21f: 32 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 576 RADAR_0x240: 16 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 593 RADAR_0x251: 16 FRONT_RADAR + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 674 CAM_0x2a2: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 675 CAM_0x2a3: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 676 CAM_0x2a4: 24 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LEFT_LANE_PROB : 31|8@0+ (1,0) [0|255] "" XXX + SG_ RIGHT_LANE_PROB : 39|8@0+ (1,0) [0|255] "" XXX + SG_ LEFT_LANE_TYPE : 43|4@0+ (1,0) [0|15] "" XXX + SG_ RIGHT_LANE_TYPE : 47|4@0+ (1,0) [0|15] "" XXX + SG_ LEFT_LANE_COLOR : 48|4@1+ (1,0) [0|15] "" XXX + SG_ RIGHT_LANE_COLOR : 52|4@1+ (1,0) [0|15] "" XXX + SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX + SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 67|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 71|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 79|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 80|10@1- (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_6 : 96|10@1- (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_7 : 112|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_8 : 128|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_9 : 144|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_10 : 160|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_11 : 176|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_12 : 192|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_13 : 208|16@1+ (1,0) [0|65535] "" 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_ 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 + +BO_ 700 CAM_0x2bc: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 701 CAM_0x2bd: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 702 CAM_0x2be: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 736 MANUAL_SPEED_LIMIT_ASSIST: 32 XXX + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ MSLA_STATUS : 26|2@1+ (1,0) [0|3] "" XXX + SG_ MSLA_ENABLED : 38|1@1+ (1,0) [0|1] "" XXX + SG_ MAX_SPEED : 55|8@0+ (1,0) [0|255] "" XXX + SG_ MAX_SPEED_COPY : 144|8@1+ (1,0) [0|255] "" XXX + +BO_ 837 ADRV_0x345: 8 ADRV + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_15 : 24|8@1+ (1,0) [0|255] "" XXX + +BO_ 866 CAM_0x362: 32 CAMERA + SG_ CHECKSUM : 0|16@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LEFT_LANE_PROB : 31|8@0+ (1,0) [0|255] "" XXX + SG_ RIGHT_LANE_PROB : 39|8@0+ (1,0) [0|255] "" XXX + SG_ LEFT_LANE_TYPE : 43|4@0+ (1,0) [0|15] "" XXX + SG_ RIGHT_LANE_TYPE : 47|4@0+ (1,0) [0|15] "" XXX + SG_ LEFT_LANE_COLOR : 48|4@1+ (1,0) [0|15] "" XXX + SG_ RIGHT_LANE_COLOR : 52|4@1+ (1,0) [0|15] "" XXX + SG_ LEFT_LANE_LINE : 56|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0 : 58|2@1+ (1,0) [0|3] "" XXX + SG_ RIGHT_LANE_LINE : 60|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0_2 : 62|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 67|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 71|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 75|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 79|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 80|10@1- (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_6 : 96|10@1- (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_7 : 112|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_8 : 128|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_9 : 144|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_10 : 160|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_11 : 176|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_12 : 192|16@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_13 : 208|16@1+ (1,0) [0|65535] "" 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_ 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 + SG_ PRESSURE_RL : 55|8@0+ (1,0) [0|255] "" XXX + SG_ PRESSURE_RR : 63|8@0+ (1,0) [0|255] "" XXX + SG_ STATUS_TPMS : 66|3@0+ (1,0) [0|3] "" XXX + SG_ UNIT : 68|2@0+ (1,0) [0|3] "" XXX + +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_ 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 + +BO_ 1041 DOORS_SEATBELTS: 8 XXX + SG_ CHECKSUM_MAYBE : 7|8@0+ (1,0) [0|65535] "" 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_ 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 + SG_ RIGHT_STALK : 10|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER_ALT : 15|4@0+ (1,0) [0|15] "" XXX + SG_ LEFT_LAMP : 20|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_LAMP : 22|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_LAMP_ALT : 59|1@0+ (1,0) [0|1] "" 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_ 1144 DRIVE_MODE: 8 XXX + SG_ DRIVE_MODE : 0|16@1+ (1,-61611) [0|61611] "" XXX + SG_ DRIVE_MODE2 : 28|3@1+ (1,0) [1|3] "" XXX + +BO_ 1151 HVAC_TOUCH_BUTTONS: 8 XXX + SG_ AUTO_BUTTON : 8|1@0+ (1,0) [0|1] "" XXX + SG_ SYNC_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX + SG_ FR_DEFROST_BUTTON : 20|1@0+ (1,0) [0|1] "" XXX + SG_ RR_DEFROST_BUTTON : 22|1@0+ (1,0) [0|1] "" XXX + SG_ FAN_SPEED_UP_BUTTON : 24|1@0+ (1,0) [0|1] "" XXX + SG_ FAN_SPEED_DOWN_BUTTON : 26|1@0+ (1,0) [0|1] "" XXX + SG_ AIR_DIRECTION_BUTTON : 28|1@0+ (1,0) [0|1] "" XXX + SG_ AC_BUTTON : 40|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVER_ONLY_BUTTON : 44|1@0+ (1,0) [0|1] "" XXX + SG_ RECIRC_BUTTON : 48|1@0+ (1,0) [0|1] "" XXX + SG_ HEAT_BUTTON : 52|1@0+ (1,0) [0|1] "" XXX + +BO_ 1187 HDA_INFO_4A3: 8 XXX + SG_ LinkClass : 0|3@1+ (1,0) [0|7] "" XXX + SG_ Frwinfo : 3|3@1+ (1,0) [0|7] "" XXX + SG_ SpeedUnit : 6|2@1+ (1,0) [0|3] "" XXX + SG_ SPEED_LIMIT : 15|8@0+ (1,0) [0|255] "" XXX + SG_ CountryCode : 16|10@1+ (1,0) [0|1023] "" XXX + SG_ MapSource : 27|3@1+ (1,0) [0|7] "" XXX + SG_ TollExist : 30|2@1+ (1,0) [0|3] "" XXX + SG_ TunnelExist : 38|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_6 : 47|24@0+ (1,0) [0|16777215] "" XXX + +BO_ 1204 NEW_MSG_4B4: 8 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_7 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1209 NEW_MSG_4B9: 8 XXX + SG_ BYTE_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_3 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_4 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_5 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_6 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_7 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_8 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1214 NEW_MSG_4BE: 8 XXX + SG_ BYTE_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_3 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_4 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_5 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_6 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_7 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ BYTE_8 : 63|8@0+ (1,0) [0|255] "" 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 + SG_ SECONDS : 24|6@1+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_3 : 39|1@0+ (1,0) [0|1] "" XXX + +BO_ 1264 LOCAL_TIME: 8 XXX + SG_ HOURS : 12|5@0+ (1,0) [0|31] "" XXX + SG_ MINUTES : 21|6@0+ (1,0) [0|63] "" XXX + SG_ SECONDS : 31|8@0+ (1,0) [0|59] "" XXX + SG_ MONTH : 37|4@0+ (1,0) [0|15] "" 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_ 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_ 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"; +CM_ SG_ 736 MAX_SPEED "Display units. Restricts car from driving above this speed unless accelerator pedal is depressed beyond pressure point"; +CM_ SG_ 866 LEFT_LANE_LINE "Left lane line confidence"; +CM_ SG_ 866 RIGHT_LANE_LINE "Right lane line confidence"; +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_ 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_ 96 TRACTION_AND_STABILITY_CONTROL 0 "On" 5 "Limited" 1 "Off"; +VAL_ 234 LKA_FAULT 0 "ok" 1 "lka fault" ; +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_ 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_ 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 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 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"; +VAL_ 353 ALERTS_4 0 "HIDDEN" 1 "TAKE_FOOT_OFF_THE_ACCELERATOR_PEDAL" 2 "TAKE_FOOT_OFF_THE_BRAKE_PEDAL" 3 "UNAVAILABLE_WHILE_HIGHWAY_DRIVING_PILOT_SYSTEM_IS_ACTIVE" 4 "TO_EXIT_HDP_GRASP_THE_STEERING_WHEEL_THEN_PRESS_AND_HOLD_THE_HDP_BUTTON" 5 "ACCELERATOR_PEDAL_OPERATION_LIMITED_FOR_SAFETY" 6 "TURN_OFF_HAZARD_WARNING_LIGHTS_AND_TURN_SIGNAL" 7 "KEEP_THE_DRIVERS_SEAT_IN_A_SAFE_DRIVING_POSITION" 16 "SET_SPEED_CHANGED" 17 "ACTIVATING_WINDSHIELD_DEFOG_TO_MAINTAIN_THE_DRIVERS_VIEW" 18 "SET_THE_WIPER_AND_LIGHT_CONTROLS_TO_AUTO" 19 "VEHICLE_SPEED_REDUCED_FOR_SAFETY_MERGING_LANES_AHEAD" 20 "SPEED_REDUCED_FOR_SAFETY_CONSTRUCTION_ZONE_DETECTED" 21 "VEHICLE_SPEED_LIMITED_SENSOR_DETECTION_RANGE_LIMITED" 22 "PREPARE_TO_TAKE_CONTROL_UNSUPPORTED_ROAD_TYPE_AHEAD" 23 "PREPARE_TO_TAKE_CONTROL_ENTRANCE_AND_EXIT_RAMPS_AHEAD" 24 "PREPARE_TO_TAKE_CONTROL_TOLLGATE_AHEAD" 25 "PREPARE_TO_TAKE_CONTROL_ROAD_EVENT_AHEAD" 26 "CLEARING_PATH_FOR_EMERGENCY_VEHICLE" 27 "VEHICLE_IS_TOO_SLOW_COMPARED_TO_TRAFFIC_FLOW" 28 "AFTER_SUNSET_HDP_IS_AVAILABLE_IN_AN_INSIDE_LANE_BEHIND_A_LEADING_VEHICLE" 29 "VEHICLE_SPEED_LIMITED_MERGING_LANES_AHEAD" 30 "VEHICLE_SPEED_LIMITED_CONSTRUCTION_ZONE_DETECTED" 31 "VEHICLE_SPEED_TEMPORARILY_LIMITED_FOR_SAFETY" 32 "PRESS_AND_HOLD_THE_BUTTON_TO_ACTIVATE_HIGHWAY_DRIVING_PILOT" 40 "HIGHWAY_DRIVING_PILOT_SYSTEM_IS_AVAILABLE" 64 "RESTART_VEHICLE_AFTER_EMERGENCY_STOP" 65 "CONNECTED_SERVICES_UNAVAILABLE" 66 "AVAILABLE_AFTER_VEHICLE_SOFTWARE_IS_UPDATED" 67 "ROAD_TYPE_NOT_SUPPORTED" 68 "ONLY_AVAILABLE_WHILE_DRIVING_ON_HIGHWAY_LANES" 69 "UNAVAILABLE_WHILE_OTHER_WARNINGS_ARE_ACTIVE" 70 "CANNOT_ACTIVATE_AT_ENTRANCE_EXIT_RAMPS" 71 "LANE_UNSUPPORTED" 72 "NOT_AVAILABLE_IN_THIS_COUNTRY" 79 "CHECKING_THE_DETECTION_RANGE_OF_THE_SENSOR" 80 "SHIFT_TO_D" 81 "ENGINE_STOPPED_BY_AUTO_STOP" 82 "INCREASE_DISTANCE_FROM_VEHICLE_AHEAD" 83 "VEHICLE_SPEED_IS_TOO_HIGH" 84 "CENTER_VEHICLE_IN_THE_LANE" 85 "PARKING_ASSIST_IS_ACTIVE" 86 "ESC_ACTIVIATION_REQUIRED" 87 "UNFOLD_SIDE_VIEW_MIRRORS" 88 "UNAVAILABLE_IN_THE_OUTER_LANE_AFTER_SUNSET" 89 "VEHICLE_SPEED_LIMITED_AFTER_SUNSET_FOR_SAFETY" 90 "LEADING_VEHICLE_NOT_DETECTED" 104 "AGGRESSIVE_BRAKING_OR_STEERING_DETECTED" 110 "SENSOR_AUTO_CALIBRATION_IN_PROGRESS_THIS_MAY_TAKE_SEVERAL_MINUTES" 111 "HIGHWAY_DRIVING_PILOT_WILL_BE_AVAILABLE_SHORTLY" 112 "IF_STEERING_WHEEL_IS_USED_HDP_WILL_BE_DEACTIVATED" 120 "IMPACT_DETECTED" 128 "UNSUITABLE_USE_OF_ACCELERATOR_PEDAL_DETECTED" 129 "GEAR_SHIFTER_USE_DETECTED" 130 "UNSUITABLE_BRAKE_PEDAL_USE_DETECTED" 131 "VEHICLE_START_BUTTON_PRESSED" 132 "VEHICLE_HAS_BEEN_STOPPED_FOR_TOO_LONG" 141 "TRAFFIC_CONGESTION_HAS_CLEARED" 142 "ENTRANCE_AND_EXIT_RAMPS_AHEAD" 143 "UNSUPPORTED_LANE_AHEAD" 144 "UNSUPPORTED_ROAD_TYPE_AHEAD" 145 "LANE_DEPARTURE_DETECTED" 146 "MAXIMUM_SPEED_EXCEEDED" 147 "HIGHWAY_DRIVING_PILOT_LIMITED_ABNORMAL_VEHICLE_CONTROLLER_STATUS" 148 "WIPER_LIGHT_CONTROL_SETTINGS_ARE_UNSUITABLE_FOR_USE_WITH_HDP" 149 "WINDSHIELD_DEFOG_SYSTEM_STATUS_IS_UNSUITABLE_FOR_USE_WITH_HDP" 150 "HAZARD_WARNING_LIGHTS_OR_TURN_SIGNAL_OPERATION_DETECTED" 151 "PERFORMING_EVASIVE_STEERING_OBSTACLES_DETECTED_AHEAD" 152 "HIGHWAY_DRIVING_PILOT_LIMITED_SENSOR_DETECTION_RANGE_LIMITED" 160 "CHECK_HIGHWAY_DRIVING_PILOT_SYSTEM" 161 "SAFETY_FUNCTION_ACTIVATED" 176 "CAMERA_OBSCURED" 177 "RADAR_BLOCKED" 178 "LIDAR_BLOCKED" 179 "AIRBAG_WARNING_LIGHT_IS_ON" 180 "ATTACHED_TRAILED_DETECTED" 181 "HIGH_OUTSIDE_TEMPERATURE" 182 "LOW_OUTSIDE_TEMPERATURE" 190 "UNAVAILABLE_DUE_TO_THE_ROAD_EVENT_INFORMATION_RECEIVED" 191 "UNAVAILABLE_NEAR_TOLLGATES" 192 "DRIVERS_SEAT_IS_NOT_IN_A_SAFE_DRIVING_POSITION" 193 "VEHICLE_DRIVING_THE_WRONG_WAY_DETECTED_AHEAD" 194 "EMERGENCY_VEHICLE_DETECTED" 195 "OBSTACLE_DETECTED_AHEAD" 196 "SENSOR_BLOCKED_DUE_TO_RAIN_SNOW_OR_ROAD_DEBRIS" 197 "SLIPPERY_ROAD_SURFACE_DETECTED" 198 "CONSTRUCTION_ZONE_DETECTED_AHEAD" 199 "PEDESTRIAN_DETECTED_AHEAD" 200 "UNSUITABLE_DRIVERS_SEAT_POSITION_DETECTED" 201 "FOLDED_SIDE_VIEW_MIRRORS_DETECTED" 208 "VEHICLE_POSITION_NOT_DETECTED" 209 "LANE_NOT_DETECTED" 210 "DRIVER_NOT_DETECTED" 211 "KEEP_YOUR_EYES_ON_THE_ROAD" 212 "LEADING_VEHICLE_REQUIRED_AFTER_SUNSET" 213 "TBD" 240 "LOW_FUEL" 241 "LOW_TIRE_PRESSURE" 242 "DOOR_OPEN" 243 "TRUNK_OPEN" 244 "HOOD_OPEN" 245 "SEAT_BELT_NOT_FASTENED" 246 "PARKING_BRAKE_ACTIVATED" 247 "LOW_EV_BATTERY" 248 "HDP_DEACTIVATION_DELAYED_RISK_OF_COLLISION_DETECTED" 249 "LIFTGATE_OPENED"; +VAL_ 353 ALERTS_5 0 "HIDDEN" 1 "DRIVERS_GRASP_NOT_DETECTED_DRIVING_SPEED_WILL_BE_LIMITED" 2 "WATCH_FOR_SURROUNDING_VEHICLES" 3 "SMART_CRUISE_CONTROL_DEACTIVATED" 4 "SMART_CRUISE_CONTROL_CONDITIONS_NOT_MET" 5 "USE_SWITCH_OR_PEDAL_TO_ACCELERATE" 6 "DRIVER_ASSISTNCE_SYSTEM_LIMITED_TRAILER_ATTACHED" 7 "DRIVER_ASSISTNCE_SYSTEM_LIMITED_DRIVER_FULL_FACE_NOT_VISIBLE" 11 "LEADING_VEHICLE_IS_DRIVING_AWAY" 12 "STOP_VEHICLE_THEN_TRY_AGAIN" 19 "ACTIVATING_HIGHWAY_DRIVING_PILOT_SYSTEM" 20 "CONTINUING_USE_OF_HIGHWAY_DRIVING_PILOT_WILL_RESULT_IN_DEVIATION_FROM_THE_NAVIGATION_ROUTE" 21 "HIGHWAY_DRIVING_PILOT_SYSTEM_DEACTIVATED_SILENT" 22 "HIGHWAY_DRIVING_PILOT_SYSTEM_NOT_APPLIED" 23 "HIGHWAY_DRIVING_PILOT_CONDITIONS_NOT_MET_SILENT"; +VAL_ 353 MUTE 0 "NONE" 1 "MUTED"; +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 BACKGROUND 0 "HIDDEN" 1 "BLUE" 3 "ORANGE" 4 "FLASHING ORANGE" 6 "FLASHING RED" 7 "GRAY"; +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 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 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"; +VAL_ 354 FAULT_LSS 0 "HIDDEN" 1 "CHECK_LANE_SAFETY_SYSTEM" 2 "LANE_SAFETY_SYSTEM_DISABLED_CAMERA_OBSCURED"; +VAL_ 354 FAULT_SLA 0 "HIDDEN" 1 "CHECK_SPEED_LIMIT_SYSTEM" 2 "SPEED_LIMIT_SYSTEM_DISABLED_CAMERA_OBSCURED"; +VAL_ 354 FAULT_DAW 0 "HIDDEN" 1 "CHECK_INATTENTIVE_DRIVING_WARNING_SYSTEM" 2 "INATTENTIVE_DRIVING_WARNING_SYSTEM_DISABLED_CAMERA_OBSCURED"; +VAL_ 354 FAULT_HBA 0 "HIDDEN" 1 "CHECK_HIGH_BEAM_ASSIST_SYSTEM"; +VAL_ 354 FAULT_SCC 0 "HIDDEN" 1 "CHECK_SMART_CRUISE_CONTROL_SYSTEM" 2 "SMART_CRUISE_CONTROL_DISABLED_RADAR_BLOCKED"; +VAL_ 354 FAULT_LFA 0 "HIDDEN" 1 "CHECK_LANE_FOLLOWING_SYSTEM_ASSIST_SYSTEM"; +VAL_ 354 FAULT_HDA 0 "HIDDEN" 1 "CHECK_HIGHWAY_DRIVING_ASSIST_SYSTEM"; +VAL_ 354 FAULT_LCA 0 "HIDDEN" 1 "CHECK_LANE_CHANGE_ASSIST_FUNCTION" 2 "LANE_CHANGE_ASSIST_FUNCTION_DISABLED_CAMERA_OBSCURED" 3 "LANE_CHANGE_ASSIST_FUNCTION_DISABLED_RADAR_BLOCKED"; +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 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_ 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_ 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"; +VAL_ 490 LANE_CHANGING 0 "IDLE" 1 "LEFT_CHECK" 3 "LEFT_CHANGING" 2 "RIGHT_CHECK" 4 "RIGHT_CHANGING"; +VAL_ 490 LF_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; +VAL_ 490 RF_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; +VAL_ 490 LR_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; +VAL_ 490 RR_DETECT 0 "none" 1 "gray" 2 "white" 3 "white" 4 "hide"; +VAL_ 490 AUTOLANECHANGE_MSG 1 "Check surrounding conditions" 2 "Operating conditions not met" 3 "Analyzing driving lane" 4 "Sharp curve ahead" 5 "Current lane is too narrow" 6 "Not an operational section" 7 "Hazard lights are on" 8 "Vehicle speed is too low" 9 "Please hold the steering wheel" 10 "Not an operable lane" 11 "Steering input detected" 12 "Press the OK button to activate lane change assist"; +VAL_ 490 LANELINE_CURVATURE_DIRECTION 0 "LEFT" 1 "RIGHT"; +VAL_ 676 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; +VAL_ 676 RIGHT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High Confidence"; +VAL_ 736 MSLA_STATUS 0 "disabled" 1 "active" 2 "paused"; +VAL_ 866 LEFT_LANE_LINE 0 "Not Detected" 1 "Low Confidence" 2 "Medium Confidence" 3 "High 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 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_ 1144 DRIVE_MODE2 3 "Set Sport" 1 "Set Normal" 2 "Set Eco"; +VAL_ 1240 DISTANCE_UNIT 1 "Miles" 0 "Kilometers"; diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py new file mode 100755 index 0000000000..b3dd97987b --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_canfd_radar.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python3 +import os + +if __name__ == "__main__": + dbc_name = os.path.basename(__file__).replace(".py", ".dbc") + hyundai_path = os.path.dirname(os.path.realpath(__file__)) + with open(os.path.join(hyundai_path, dbc_name), "w", encoding='utf-8') as f: + f.write(""" +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + """) + + for a in range(0x210, 0x210 + 16): + f.write(f""" +BO_ {a} RADAR_TRACK_{a:x}: 32 RADAR + SG_ NEW_SIGNAL_25 : 26|3@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_24 : 28|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_21 : 36|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_20 : 39|3@0+ (1,0) [0|7] "" XXX + SG_ VALID_CNT1 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_15 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_14 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 63|8@0- (1,0) [0|255] "" XXX + SG_ LONG_DIST1 : 64|12@1+ (0.05,0) [0|4095] "" XXX + SG_ LAT_DIST1 : 76|12@1- (0.05,0) [0|4095] "" XXX + SG_ REL_SPEED1 : 88|14@1- (0.01,0) [0|16383] "" XXX + SG_ NEW_SIGNAL_16 : 103|2@0+ (1,0) [0|3] "" XXX + SG_ LAT_SPEED1 : 104|13@1- (0.01,0) [0|8191] "" XXX + SG_ REL_ACCEL1 : 118|10@1- (0.05,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_27 : 154|3@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_26 : 156|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_23 : 164|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_22 : 167|3@0+ (1,0) [0|7] "" XXX + SG_ VALID_CNT2 : 175|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_13 : 179|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_12 : 183|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_11 : 191|8@0- (1,0) [0|255] "" XXX + SG_ LONG_DIST2 : 192|12@1+ (0.05,0) [0|4095] "" XXX + SG_ LAT_DIST2 : 204|12@1- (0.05,0) [0|4095] "" XXX + SG_ REL_SPEED2 : 216|14@1- (0.01,0) [0|16383] "" XXX + SG_ NEW_SIGNAL_17 : 231|2@0+ (1,0) [0|3] "" XXX + SG_ LAT_SPEED2 : 232|13@1- (0.01,0) [0|8191] "" XXX + SG_ REL_ACCEL2 : 246|10@1- (0.05,0) [0|1023] "" XXX + """) + for a in range(0x3a5, 0x3a5 + 32): + f.write(f""" +BO_ {a} RADAR_TRACK_{a:x}: 24 RADAR + SG_ VALID : 25|2@0+ (1,0) [0|3] "" XXX + SG_ VALID2 : 28|2@0+ (1,0) [0|3] "" XXX + SG_ PROB : 30|10@1+ (1,0) [0|1023] "" XXX + SG_ VALID_CNT : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_6 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 62|7@0- (1,0) [0|127] "" XXX + SG_ LONG_DIST : 63|13@1+ (0.05,0) [0|8191] "" XXX + SG_ LAT_DIST : 76|12@1- (0.05,0) [0|4095] "" XXX + SG_ REL_SPEED : 88|14@1- (0.01,0) [0|16383] "" XXX + SG_ IN_MYLANE : 103|2@0+ (1,0) [0|3] "" XXX + SG_ LAT_SPEED : 104|13@1- (0.01,0) [0|8191] "" XXX + SG_ REL_ACCEL : 118|10@1- (0.05,0) [0|1023] "" XXX + """) diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py new file mode 100755 index 0000000000..aad417e32a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_corner_radar.py @@ -0,0 +1,170 @@ +#!/usr/bin/env python3 +from collections import namedtuple +import os + +if __name__ == "__main__": + dbc_name = os.path.basename(__file__).replace(".py", ".dbc") + hyundai_path = os.path.dirname(os.path.realpath(__file__)) + with open(os.path.join(hyundai_path, dbc_name), "w", encoding='utf-8') as f: + f.write(""" +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX +""") + + for a in [0x100, 0x200]: + f.write(f""" +BO_ {a} RADAR_POINTS_METADATA_0x{a:x}: 64 RADAR + SG_ SIGNAL_1 : 0|32@1+ (1,0) [0|255] "" XXX + SG_ SIGNAL_2 : 32|32@1+ (1,0) [0|65535] "" XXX + SG_ SIGNAL_3 : 64|4@1+ (1,0) [0|15] "" XXX + SG_ SIGNAL_4 : 68|4@1+ (1,0) [0|15] "" XXX + SG_ RADAR_POINT_COUNT : 72|8@1+ (1,0) [0|255] "" XXX + SG_ SIGNAL_6 : 80|7@1+ (0.015625,0) [0|3] "" XXX + SG_ SIGNAL_7 : 87|1@1+ (1,0) [0|1] "" XXX + SG_ SIGNAL_8 : 88|3@1+ (1,0) [0|7] "" XXX + SG_ SIGNAL_9 : 91|5@1+ (0.0625,0) [0|31] "" XXX + SG_ SIGNAL_10 : 96|8@1+ (1,0) [0|255] "" XXX + SG_ SIGNAL_11 : 104|7@1+ (0.015625,0) [0|127] "" XXX + SG_ SIGNAL_12 : 111|2@1+ (1,0) [0|65535] "" XXX + SG_ SIGNAL_13 : 113|7@1+ (0.015625,0) [0|127] "" XXX + SG_ SIGNAL_14 : 120|7@1+ (0.015625,0) [0|127] "" XXX + SG_ SIGNAL_15 : 127|3@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_16 : 130|2@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_17 : 133|2@0+ (1,0) [0|3] "" XXX + SG_ SIGNAL_18 : 134|1@0+ (1,0) [0|3] "" XXX + SG_ SIGNAL_19 : 135|3@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_20 : 138|8@1+ (1,0) [0|63] "" XXX + SG_ SIGNAL_21 : 146|2@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_22 : 148|1@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_23 : 149|4@1+ (1,0) [0|7] "" XXX + SG_ SIGNAL_24 : 153|1@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_25 : 154|2@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_26 : 157|2@0+ (1,0) [0|3] "" XXX + SG_ SIGNAL_27 : 158|7@1+ (0.125,0) [0|3] "" XXX + SG_ SIGNAL_28 : 165|7@1+ (0.015625,0) [0|31] "" XXX + SG_ SIGNAL_29 : 172|7@1+ (0.125,0) [0|3] "" XXX + SG_ SIGNAL_30 : 179|7@1+ (0.015625,0) [0|1] "" XXX + SG_ SIGNAL_31 : 186|4@1+ (1,0) [0|7] "" XXX + SG_ SIGNAL_32 : 190|14@1+ (0.015625,0) [0|15] "" XXX + SG_ SIGNAL_33 : 204|11@1+ (0.03125,0) [0|8191] "" XXX + SG_ SIGNAL_34 : 215|2@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_35 : 217|7@1+ (1,0) [0|127] "" XXX + SG_ SIGNAL_36 : 224|6@1+ (1,0) [0|63] "" XXX + SG_ SIGNAL_37 : 230|6@1+ (0.2,0) [0|31] "" XXX + SG_ SIGNAL_38 : 236|6@1+ (0.2,0) [0|7] "" XXX + SG_ SIGNAL_39 : 242|8@1+ (1,-90) [0|255] "" XXX + SG_ SIGNAL_40 : 250|6@1+ (1,0) [0|63] "" XXX + SG_ SIGNAL_41 : 256|8@1+ (0.25,0) [0|255] "" XXX + SG_ SIGNAL_42 : 264|3@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_43 : 267|12@1+ (0.01,0) [0|31] "" XXX + SG_ SIGNAL_44 : 279|32@1+ (1,0) [0|63] "" XXX + SG_ SIGNAL_45 : 311|1@1+ (1,0) [0|1] "" XXX + SG_ SIGNAL_46 : 312|2@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_47 : 314|32@1+ (1,0) [0|255] "" XXX + SG_ SIGNAL_48 : 346|6@1+ (1,0) [0|63] "" XXX + SG_ SIGNAL_49 : 352|7@1+ (0.25,0) [0|127] "" XXX + SG_ SIGNAL_50 : 359|6@1+ (0.03125,0) [0|31] "" XXX + SG_ SIGNAL_51 : 365|10@1+ (0.125,0) [0|3] "" XXX + SG_ SIGNAL_52 : 375|10@1+ (0.125,0) [0|63] "" XXX + SG_ SIGNAL_53 : 385|7@1+ (1,0) [0|127] "" XXX + SG_ SIGNAL_54 : 392|7@1+ (1,0) [0|127] "" XXX + SG_ SIGNAL_55 : 399|8@1+ (0.00390625,0) [0|31] "" XXX + SG_ SIGNAL_56 : 407|10@1+ (0.125,0) [0|63] "" XXX + SG_ SIGNAL_57 : 417|1@1+ (1,0) [0|3] "" XXX + SG_ SIGNAL_58 : 418|1@1+ (1,0) [0|3] "" XXX +""") + + # radar points are sent at 20 Hz in groups of 1 to 13 messages + # each message has 5 radar points for a total of 65 points max + # each radar point is 101 bits so the alignment is not consistent + RadarPointSignal = namedtuple("RadarPointSignal", ["name", "start", "length", "scale", "offset"]) + radar_point_signals = ( + RadarPointSignal("DISTANCE", 7, 14, 1/64, 0), + RadarPointSignal("", 21, 2, 1, 0), + RadarPointSignal("", 23, 8, 1/512, -127/512), + RadarPointSignal("REL_VELOCITY", 31, 13, 1/32, -66), + RadarPointSignal("", 44, 2, 1, 0), + RadarPointSignal("", 46, 2, 1, 0), + RadarPointSignal("AZIMUTH", 48, 12, 1/512, -2047/512), + RadarPointSignal("", 60, 2, 1, 0), + RadarPointSignal("", 62, 1, 1, 0), + RadarPointSignal("", 63, 7, 1, 0), + RadarPointSignal("", 70, 1, 1, 0), + RadarPointSignal("", 71, 6, 1, 0), + RadarPointSignal("", 77, 2, 1, 0), + RadarPointSignal("", 79, 8, 1/512, -127/512), + RadarPointSignal("", 87, 1, 1, 0), + RadarPointSignal("", 88, 2, 1, 0), + RadarPointSignal("", 90, 3, 1, 0), + # last 15 bits are controlled by LAYOUT_ID (seems to always zero, so below is layout 0) + RadarPointSignal("", 93, 6, 1, 0), + RadarPointSignal("", 99, 8, 1, 0), + RadarPointSignal("", 107, 1, 1, 0), + ) + radar_point_bit_count = sum([s.length for s in radar_point_signals]) + + for a in [0x101, 0x201]: + f.write(f""" +BO_ {a} RADAR_POINTS_0x{a:x}: 64 RADAR + SG_ MESSAGE_ID : 0|5@1+ (1,0) [0|31] "" XXX + SG_ LAYOUT_ID : 5|2@1+ (1,0) [0|3] "" XXX +""") + bit_idx = radar_point_signals[0].start + for i in range(5): + signal_idx = 1 + for sig in radar_point_signals: + if sig.name: + sig_name = f"POINT_{i+1}_{sig.name}" + else: + sig_name = f"POINT_{i+1}_SIGNAL_{signal_idx}" + signal_idx += 1 + + sig_start_idx = i * radar_point_bit_count + sig.start + assert bit_idx == sig_start_idx, f"signal overlap or gap!!! {bit_idx} != {sig_start_idx}" + min_val = round(sig.offset, 10) + max_val = round((2**sig.length - 1) * sig.scale + sig.offset, 10) + + f.write(f" SG_ {sig_name} : {sig_start_idx}|{sig.length}@1+ ({sig.scale},{sig.offset}) [{min_val}|{max_val}] \"\" XXX\n") + bit_idx += sig.length + + # checksum is across a group of 0x100/200 and 0x101/201 messages (no checksums inside the other messages) + # ccitt_crc16 = mkCrcFun(0x11021, initCrc=0xffff, xorOut=0x0000, rev=False) + for a in [0x104, 0x204]: + f.write(f""" +BO_ {a} RADAR_POINTS_CHECKSUM_0x{a:x}: 3 RADAR + SG_ CRC16 : 0|16@1+ (1,0) [0|65535] "" XXX +""") diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py new file mode 100755 index 0000000000..ee8dde64d4 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_kia_mando_front_radar.py @@ -0,0 +1,61 @@ +#!/usr/bin/env python3 +import os + +if __name__ == "__main__": + dbc_name = os.path.basename(__file__).replace(".py", ".dbc") + hyundai_path = os.path.dirname(os.path.realpath(__file__)) + with open(os.path.join(hyundai_path, dbc_name), "w", encoding='utf-8') as f: + f.write(""" +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + """) + + # note: 0x501/0x502 seem to be special in 0x5XX range + for a in range(0x500, 0x500 + 32): + f.write(f""" +BO_ {a} RADAR_TRACK_{a:x}: 8 RADAR + SG_ UNKNOWN_1 : 7|8@0- (1,0) [-128|127] "" XXX + SG_ AZIMUTH : 12|10@0- (0.2,0) [-102.4|102.2] "" XXX + SG_ STATE : 15|3@0+ (1,0) [0|7] "" XXX + SG_ LONG_DIST : 18|11@0+ (0.1,0) [0|204.7] "" XXX + SG_ REL_ACCEL : 33|10@0- (0.02,0) [-10.24|10.22] "" XXX + SG_ ZEROS : 37|4@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 38|1@0+ (1,0) [0|1] "" XXX + SG_ STATE_3 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX + SG_ STATE_2 : 55|2@0+ (1,0) [0|3] "" XXX + """) diff --git a/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc new file mode 100644 index 0000000000..b8ecca7666 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/hyundai/hyundai_palisade_2023.dbc @@ -0,0 +1,865 @@ +CM_ "IMPORT _hyundai_common.dbc"; + +BO_ 67 DATC13: 8 XXX + SG_ CF_Datc_AcDisp : 22|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_AqsDisp : 20|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_AutoDefogBlink : 16|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_AutoDisp : 12|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_ChgReqDisp : 8|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_ClmScanDisp : 18|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_DualDisp : 30|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_FrDefLed : 14|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_FrontBlwDisp : 60|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_IntakeDisp : 10|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_IonClean : 6|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_ModDisp : 2|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_OpSts : 25|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_PSModDisp : 56|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_PwrInf : 32|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearAutoDisp : 40|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearBlwDisp : 52|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearChgReqDisp : 46|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearClimateScnDisp : 44|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearManual : 38|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearModDisp : 48|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_RearOffDisp : 42|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Datc_TempDispUnit : 0|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Mtc_MaxAcDisp : 28|2@1+ (1,0) [0|0] "" XXX + +BO_ 127 CGW5: 8 XXX + SG_ C_DRLLampLhOpenSts : 7|1@1+ (1,0) [0|0] "" XXX + SG_ C_DRLLampRhOpenSts : 8|1@1+ (1,0) [0|0] "" XXX + SG_ C_FrontEXTTailLhOpenSts : 15|1@1+ (1,0) [0|0] "" XXX + SG_ C_FrontEXTTailRhOpenSts : 16|1@1+ (1,0) [0|0] "" XXX + SG_ C_FrontFOGLhOpenSts : 11|1@1+ (1,0) [0|0] "" XXX + SG_ C_FrontFOGRhOpenSts : 12|1@1+ (1,0) [0|0] "" XXX + SG_ C_FrontTSIGLhOpenSts : 19|1@1+ (1,0) [0|0] "" XXX + SG_ C_FrontTSIGRhOpenSts : 20|1@1+ (1,0) [0|0] "" XXX + SG_ C_HLampHighLhOpenSts : 5|1@1+ (1,0) [0|0] "" XXX + SG_ C_HLampHighRhOpenSts : 6|1@1+ (1,0) [0|0] "" XXX + SG_ C_HLampLowLhOpenSts : 3|1@1+ (1,0) [0|0] "" XXX + SG_ C_HLampLowRhOpenSts : 4|1@1+ (1,0) [0|0] "" XXX + SG_ C_HMSLOpenSts : 2|1@1+ (1,0) [0|0] "" XXX + SG_ C_LicensePlateLhOpenSts : 23|1@1+ (1,0) [0|0] "" XXX + SG_ C_LicensePlateRhOpenSts : 24|1@1+ (1,0) [0|0] "" XXX + SG_ C_RearEXTTailLhOpenSts : 13|1@1+ (1,0) [0|0] "" XXX + SG_ C_RearEXTTailRhOpenSts : 14|1@1+ (1,0) [0|0] "" XXX + SG_ C_RearFOGLhOpenSts : 9|1@1+ (1,0) [0|0] "" XXX + SG_ C_RearFOGRhOpenSts : 10|1@1+ (1,0) [0|0] "" XXX + SG_ C_RearTSIGLhOpenSts : 17|1@1+ (1,0) [0|0] "" XXX + SG_ C_RearTSIGRhOpenSts : 18|1@1+ (1,0) [0|0] "" XXX + SG_ C_SBendingLhOpenSts : 21|1@1+ (1,0) [0|0] "" XXX + SG_ C_SBendingRhOpenSts : 22|1@1+ (1,0) [0|0] "" XXX + SG_ C_StopLampLhOpenSts : 0|1@1+ (1,0) [0|0] "" XXX + SG_ C_StopLampRhOpenSts : 1|1@1+ (1,0) [0|0] "" XXX + +BO_ 304 YRS11: 8 XXX + SG_ CF_Yrs_LatAcStat : 36|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Yrs_MCUStat : 40|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Yrs_YrStat : 32|4@1+ (1,0) [0|0] "" XXX + SG_ CR_Yrs_Crc1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ CR_Yrs_LatAc : 16|16@1+ (0.000127465,-4.17677312) [0|0] "" XXX + SG_ CR_Yrs_MsgCnt1 : 48|4@1+ (1,0) [0|0] "" XXX + SG_ CR_Yrs_Yr : 0|16@1+ (0.005,-163.84) [0|0] "" XXX + +BO_ 320 YRS12: 8 XXX + SG_ CF_IMU_ResetStat : 20|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Yrs_LongAcStat : 16|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Yrs_Type : 36|4@1+ (1,0) [0|0] "" XXX + SG_ CR_Yrs_Crc2 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ CR_Yrs_LongAc : 0|16@1+ (0.000127465,-4.17677312) [0|0] "" XXX + SG_ CR_Yrs_MsgCnt2 : 48|4@1+ (1,0) [0|0] "" XXX + SG_ YRS_Temp : 24|8@1+ (1,-68) [0|0] "" XXX + SG_ YRS_TempStat : 32|4@1+ (1,0) [0|0] "" XXX + +BO_ 339 TCS11: 8 XXX + SG_ ABS_ACT : 10|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_DEF : 7|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_DIAG : 6|1@1+ (1,0) [0|0] "" XXX + SG_ AliveCounter_TCS1 : 52|4@1+ (1,0) [0|0] "" XXX + SG_ BLA_CTL : 49|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Esc_BrkCtl : 48|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Esc_LimoInfo : 4|2@1+ (1,0) [0|0] "" XXX + SG_ CheckSum_TCS1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ DBC_CTL : 16|1@1+ (1,0) [0|0] "" XXX + SG_ DBC_DEF : 18|1@1+ (1,0) [0|0] "" XXX + SG_ DBC_PAS : 17|1@1+ (1,0) [0|0] "" XXX + SG_ EBD_DEF : 11|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_CTL : 14|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_DEF : 13|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_PAS : 12|1@1+ (1,0) [0|0] "" XXX + SG_ ESS_STAT : 22|2@1+ (1,0) [0|0] "" XXX + SG_ HAC_CTL : 19|1@1+ (1,0) [0|0] "" XXX + SG_ HAC_DEF : 21|1@1+ (1,0) [0|0] "" XXX + SG_ HAC_PAS : 20|1@1+ (1,0) [0|0] "" XXX + SG_ MSR_C_REQ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ TCS_CTL : 9|1@1+ (1,0) [0|0] "" XXX + SG_ TCS_DEF : 8|1@1+ (1,0) [0|0] "" XXX + SG_ TCS_GSC : 3|1@1+ (1,0) [0|0] "" XXX + SG_ TCS_MFRN : 15|1@1+ (1,0) [0|0] "" XXX + SG_ TCS_PAS : 2|1@1+ (1,0) [0|0] "" XXX + SG_ TCS_REQ : 0|1@1+ (1,0) [0|0] "" XXX + SG_ TQI_MSR : 32|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_TCS : 24|8@1+ (0.390625,0) [0|0] "" XXX + +BO_ 356 VSM11: 4 XXX + SG_ CF_Esc_Act : 12|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Esc_AliveCnt : 17|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Esc_Chksum : 24|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Esc_CtrMode : 13|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Esc_Def : 16|1@1+ (1,0) [0|0] "" XXX + SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [0|0] "" XXX + +BO_ 544 ESP12: 8 XXX + SG_ CYL_PRES : 26|12@1+ (0.1,0) [0|0] "" XXX + SG_ CYL_PRESS_DIAG : 39|1@1+ (1,0) [0|0] "" XXX + SG_ CYL_PRES_STAT : 38|1@1+ (1,0) [0|0] "" XXX + SG_ ESP12_AliveCounter : 60|4@1+ (1,0) [0|0] "" XXX + SG_ ESP12_Checksum : 56|4@1+ (1,0) [0|0] "" XXX + SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [0|0] "" XXX + SG_ LAT_ACCEL_DIAG : 12|1@1+ (1,0) [0|0] "" XXX + SG_ LAT_ACCEL_STAT : 11|1@1+ (1,0) [0|0] "" XXX + SG_ LONG_ACCEL : 13|11@1+ (0.01,-10.23) [0|0] "" XXX + SG_ LONG_ACCEL_DIAG : 25|1@1+ (1,0) [0|0] "" XXX + SG_ LONG_ACCEL_STAT : 24|1@1+ (1,0) [0|0] "" XXX + SG_ YAW_RATE : 40|13@1+ (0.01,-40.95) [0|0] "" XXX + SG_ YAW_RATE_DIAG : 54|1@1+ (1,0) [0|0] "" XXX + SG_ YAW_RATE_STAT : 53|1@1+ (1,0) [0|0] "" XXX + +BO_ 593 MDPS12: 8 XXX + SG_ CF_Mdps_Chksum2 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_Def : 11|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_FailStat : 15|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_MsgCount2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_SErr : 37|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_ToiActive : 13|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_ToiFlt : 14|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_ToiUnavail : 12|1@1+ (1,0) [0|0] "" XXX + SG_ CR_Mdps_OutTq : 52|12@1+ (0.1,-204.8) [0|0] "" XXX + SG_ CR_Mdps_StrColTq : 0|11@1+ (1,-1024) [0|0] "" XXX + SG_ CR_Mdps_StrTq : 40|12@1+ (0.01,-20.48) [0|0] "" XXX + +BO_ 608 EMS16: 8 XXX + SG_ AliveCounter : 60|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_AclAct : 62|2@1+ (1,0) [0|0] "" XXX + SG_ CRUISE_LAMP_M : 25|1@1+ (1,0) [0|0] "" XXX + SG_ CRUISE_LAMP_S : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Checksum : 56|4@1+ (1,0) [0|0] "" XXX + SG_ ENG_STAT : 28|3@1+ (1,0) [0|0] "" XXX + SG_ GLOW_STAT : 24|1@1+ (1,0) [0|0] "" XXX + SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1,0) [0|0] "" XXX + SG_ SOAK_TIME : 32|8@1+ (1,0) [0|0] "" XXX + SG_ SOAK_TIME_ERROR : 31|1@1+ (1,0) [0|0] "" XXX + SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [0|0] "" XXX + SG_ TQI : 8|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_MAX : 40|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_MIN : 0|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_TARGET : 16|8@1+ (0.390625,0) [0|0] "" XXX + +BO_ 625 LPI11: 8 XXX + SG_ BFS_CYL : 48|8@1+ (1,0) [0|0] "" XXX + SG_ ERR_GAS : 16|8@1+ (1,0) [0|0] "" XXX + SG_ FAC_TI_GAS_COR : 24|16@1+ (3.05e-05,0) [0|0] "" XXX + SG_ FTL_AFU : 40|8@1+ (0.392,0) [0|0] "" XXX + SG_ FUP_LPG_MMV : 0|8@1+ (128,0) [0|0] "" XXX + SG_ LPI_OBD : 12|4@1+ (1,0) [0|0] "" XXX + SG_ LV_BFS_IN_PROGRESS : 9|1@1+ (1,0) [0|0] "" XXX + SG_ LV_CONF_INJECTION_DELAY : 57|1@1+ (1,0) [0|0] "" XXX + SG_ LV_FUEL_TYPE_BOX : 8|1@1+ (1,0) [0|0] "" XXX + SG_ LV_FUP_ENA_THD : 11|1@1+ (1,0) [0|0] "" XXX + SG_ LV_GAS_OK : 10|1@1+ (1,0) [0|0] "" XXX + SG_ LV_LPG_SW_DRIVER_REQ : 58|1@1+ (1,0) [0|0] "" XXX + SG_ LV_PRE_CDN_LEAK : 56|1@1+ (1,0) [0|0] "" XXX + +BO_ 640 EMS13: 8 XXX + SG_ AMP : 56|8@1+ (21.22,0) [0|0] "" XXX + SG_ EOS : 16|8@1+ (1,0) [0|0] "" XXX + SG_ ERR_FUEL : 8|8@1+ (1,0) [0|0] "" XXX + SG_ LV_BFS_CFIRM : 1|1@1+ (1,0) [0|0] "" XXX + SG_ LV_CRASH : 2|1@1+ (1,0) [0|0] "" XXX + SG_ LV_ENG_TURN : 5|1@1+ (1,0) [0|0] "" XXX + SG_ LV_FUEL_TYPE_ECU : 0|1@1+ (1,0) [0|0] "" XXX + SG_ LV_GSL_MAP : 4|1@1+ (1,0) [0|0] "" XXX + SG_ LV_VB_OFF_ACT : 3|1@1+ (1,0) [0|0] "" XXX + SG_ MAF : 40|8@1+ (5.447,0) [0|0] "" XXX + SG_ MAP : 56|8@1+ (0.47058,0) [0|0] "" XXX + SG_ N_32 : 32|8@1+ (32,0) [0|0] "" XXX + SG_ TCO : 24|8@1+ (0.75,-48) [0|0] "" XXX + SG_ TIA : 48|8@1+ (0.75,-48) [0|0] "" XXX + +BO_ 688 SAS11: 5 XXX + SG_ CheckSum : 36|4@1+ (1,0) [0|0] "" XXX + SG_ MsgCount : 32|4@1+ (1,0) [0|0] "" XXX + SG_ SAS_Angle : 0|16@1- (0.1,0) [0|0] "" XXX + SG_ SAS_Speed : 16|8@1+ (4,0) [0|0] "" XXX + SG_ SAS_Stat : 24|8@1+ (1,0) [0|0] "" XXX + +BO_ 790 EMS11: 8 XXX + SG_ ACK_TCS : 2|1@1+ (1,0) [0|0] "" XXX + SG_ F_N_ENG : 1|1@1+ (1,0) [0|0] "" XXX + SG_ F_SUB_TQI : 7|1@1+ (1,0) [0|0] "" XXX + SG_ N : 16|16@1+ (0.25,0) [0|0] "" XXX + SG_ PUC_STAT : 3|1@1+ (1,0) [0|0] "" XXX + SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0) [0|0] "" XXX + SG_ RLY_AC : 6|1@1+ (1,0) [0|0] "" XXX + SG_ SWI_IGK : 0|1@1+ (1,0) [0|0] "" XXX + SG_ TQFR : 40|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI : 32|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_ACOR : 8|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQ_COR_STAT : 4|2@1+ (1,0) [0|0] "" XXX + SG_ VS : 48|8@1+ (1,0) [0|0] "" XXX + +BO_ 809 EMS12: 8 XXX + SG_ ACC_ACT : 30|1@1+ (1,0) [0|0] "" XXX + SG_ ACK_ES : 25|1@1+ (1,0) [0|0] "" XXX + SG_ BRAKE_ACT : 32|2@1+ (1,0) [0|0] "" XXX + SG_ CAN_VERS : 0|6@1+ (1,0) [0|0] "" XXX + SG_ CLU_ACK : 31|1@1+ (1,0) [0|0] "" XXX + SG_ CONF_MIL_FMY : 26|3@1+ (1,0) [0|0] "" XXX + SG_ CONF_TCU : 0|6@1+ (1,0) [0|0] "" XXX + SG_ ENG_CHR : 34|4@1+ (1,0) [0|0] "" XXX + SG_ ENG_VOL : 56|8@1+ (0.1,0) [0|0] "" XXX + SG_ GP_CTL : 38|2@1+ (1,0) [0|0] "" XXX + SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0) [0|0] "" XXX + SG_ MUL_CODE : 6|2@1+ (1,0) [0|0] "" XXX + SG_ OBD_FRF_ACK : 0|6@1+ (1,0) [0|0] "" XXX + SG_ OD_OFF_REQ : 29|1@1+ (1,0) [0|0] "" XXX + SG_ PV_AV_CAN : 48|8@1+ (0.3906,0) [0|0] "" XXX + SG_ TEMP_ENG : 8|8@1+ (0.75,-48) [0|0] "" XXX + SG_ TPS : 40|8@1+ (0.4694836,-15.0234742) [0|0] "" XXX + SG_ TQ_STND : 0|6@1+ (10,0) [0|0] "" XXX + SG_ VB_OFF_ACT : 24|1@1+ (1,0) [0|0] "" XXX + +BO_ 832 LKAS11: 8 XXX + SG_ CF_Lkas_ActToi : 27|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Lkas_Chksum : 0|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Lkas_FcwOpt_USM : 32|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Lkas_LdwsActivemode : 30|2@1+ (1,0) [0|3] "" CLU,IBOX,PSB + SG_ CF_Lkas_LdwsLHWarning : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB + SG_ CF_Lkas_LdwsRHWarning : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB + SG_ CF_Lkas_MsgCount : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,MDPS + SG_ CF_Lkas_ToiFlt : 28|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CR_Lkas_StrToqReq : 16|11@1+ (1.0,-1024.0) [-1024.0|1024.0] "" MDPS + SG_ NEW_SIGNAL_1 : 8|2@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_2 : 14|2@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_3 : 29|1@0+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_4 : 35|1@0+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 854 M_356: 8 XXX + SG_ PAINT1 : 32|1@0+ (1,0) [0|0] "" XXX + SG_ PAINT2 : 34|2@0+ (1,0) [0|0] "" XXX + SG_ PAINT3 : 36|2@0+ (1,0) [0|0] "" XXX + SG_ PAINT4 : 38|1@0+ (1,0) [0|0] "" XXX + +BO_ 867 RADAR_0x363: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ FCA_ESA : 8|2@1+ (1,0) [0|3] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 870 EMS_366: 8 XXX + SG_ N : 8|16@1+ (0.25,0) [0|0] "" XXX + SG_ SWI_IGK : 48|1@0+ (1,0) [0|0] "" XXX + SG_ TQI_1 : 0|8@1+ (0.390625,0) [0|0] "" XXX + SG_ TQI_2 : 24|8@1+ (0.390625,0) [0|0] "" XXX + SG_ VS : 40|8@1+ (1,0) [0|0] "" XXX + +BO_ 871 LVR12: 8 XXX + SG_ CF_Lvr_CruiseSet : 0|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_Gear : 32|4@1+ (1,0) [0|0] "" XXX + +BO_ 872 LVR11: 8 XXX + SG_ CF_Lvr_AC : 48|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_BkeAct : 5|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_CS : 52|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_GearInf : 0|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_NFnStat : 6|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_PNStat : 20|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_PRelStat : 4|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_PosCpl : 12|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_PosInf : 8|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_ShfErrInf : 28|20@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_ShtLkStat : 24|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Lvr_UlkButStat : 18|2@1+ (1,0) [0|0] "" XXX + +BO_ 897 MDPS11: 8 XXX + SG_ CF_MDPS_VSM_FUNC : 56|1@0+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_ALTRequest : 23|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_AliveCnt : 40|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_Chksum : 48|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_CurrMode : 59|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_Flex : 2|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_FlexDisp : 5|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_LKAS_FUNC : 58|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_SPAS_FUNC : 57|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_Stat : 7|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_Type : 61|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Mdps_WLmp : 0|2@1+ (1,0) [0|0] "" XXX + SG_ CR_Mdps_DrvTq : 11|12@1+ (1,-2048) [0|0] "" XXX + SG_ CR_Mdps_StrAng : 24|16@1- (0.1,0) [0|0] "" XXX + +BO_ 902 WHL_SPD11: 8 XXX + SG_ WHL_SPD_AliveCounter_LSB : 14|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_SPD_AliveCounter_MSB : 30|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_SPD_Checksum_LSB : 46|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_SPD_Checksum_MSB : 62|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0) [0|0] "" XXX + SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0) [0|0] "" XXX + SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0) [0|0] "" XXX + SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0) [0|0] "" XXX + +BO_ 903 WHL_PUL11: 6 XXX + SG_ WHL_DIR_FL : 32|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_DIR_FR : 34|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_DIR_RL : 36|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_DIR_RR : 38|2@1+ (1,0) [0|0] "" XXX + SG_ WHL_PUL_Chksum : 40|8@1+ (1,0) [0|0] "" XXX + SG_ WHL_PUL_FL : 0|8@1+ (0.5,0) [0|0] "" XXX + SG_ WHL_PUL_FR : 8|8@1+ (0.5,0) [0|0] "" XXX + SG_ WHL_PUL_RL : 16|8@1+ (0.5,0) [0|0] "" XXX + SG_ WHL_PUL_RR : 24|8@1+ (0.5,0) [0|0] "" XXX + +BO_ 905 SCC14: 8 XXX + SG_ ACC_ObjLatPos : 16|9@1+ (0.1,-20) [-20|31.1] "m" ABS,ESC + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ ObjGap : 51|3@1+ (1,0) [0|255] "" CLU,HUD,ESC + +BO_ 909 FCA11: 8 XXX + SG_ CR_FCA_ChkSum : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ CR_FCA_Alive : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 913 BCM_PO_11: 8 XXX + SG_ BCM_Door_Dri_Status : 5|1@0+ (1,0) [0|0] "" XXX + SG_ BCM_Shift_R_MT_SW_Status : 39|2@0+ (1,0) [0|0] "" XXX + SG_ LFA_Pressed : 4|1@0+ (1,0) [0|0] "" XXX + +BO_ 916 TCS13: 8 XXX + SG_ ACCEL_REF_ACC : 32|11@1+ (0.01,-10.23) [0|0] "" XXX + SG_ ACCEnable : 43|2@1+ (1,0) [0|0] "" XXX + SG_ ACC_EQUIP : 52|1@1+ (1,0) [0|0] "" XXX + SG_ ACC_REQ : 54|1@1+ (1,0) [0|0] "" XXX + SG_ AEB_EQUIP : 63|1@1+ (1,0) [0|0] "" XXX + SG_ AliveCounterTCS : 13|3@1+ (1,0) [0|0] "" XXX + SG_ BrakeLight : 11|1@1+ (1,0) [0|0] "" XXX + SG_ CF_DriBkeStat : 60|1@1+ (1,0) [0|0] "" XXX + SG_ CF_VSM_Avail : 57|2@1+ (1,0) [0|0] "" XXX + SG_ CF_VSM_Coded : 56|1@1+ (1,0) [0|0] "" XXX + SG_ CF_VSM_ConfSwi : 61|2@1+ (1,0) [0|0] "" XXX + SG_ CF_VSM_Handshake : 59|1@1+ (1,0) [0|0] "" XXX + SG_ CheckSum_TCS3 : 48|4@1+ (1,0) [0|0] "" XXX + SG_ DCEnable : 12|1@1+ (1,0) [0|0] "" XXX + SG_ DF_BF_STAT : 19|2@1+ (1,0) [0|0] "" XXX + SG_ DriverBraking : 55|1@1+ (1,0) [0|0] "" XXX + SG_ DriverOverride : 45|2@1+ (1,0) [0|0] "" XXX + SG_ EBA_ACK : 17|1@1+ (1,0) [0|0] "" XXX + SG_ FCA_ACK : 18|1@1+ (1,0) [0|0] "" XXX + SG_ PBRAKE_ACT : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Pre_TCS_CTL : 16|1@1+ (1,0) [0|0] "" XXX + SG_ SCCReqLim : 22|2@1+ (1,0) [0|0] "" XXX + SG_ StandStill : 47|1@1+ (1,0) [0|0] "" XXX + SG_ TQI_SCC : 24|8@1+ (0.390625,0) [0|0] "" XXX + SG_ aBasis : 0|11@1+ (0.01,-10.23) [0|0] "" XXX + +BO_ 920 RADAR_0x398: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 921 RADAR_0x399: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 922 RADAR_0x39a: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 923 RADAR_0x39b: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 924 RADAR_0x39c: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 1040 CGW_USM1: 8 XXX + SG_ CF_Gway_ADrLRValue : 8|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ADrURValue : 11|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ATTurnRValue : 0|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_AutoLightRValue : 35|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrLockSoundRValue : 24|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_EscortHLRValue : 4|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HAnBRValue : 27|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HfreeTrunkRValue : 32|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_MoodLpRValue : 30|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_OTTurnRValue : 21|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PSMRValue : 18|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PTGMRValue : 2|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PasSpkrLvRValue : 40|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RearWiperRValue : 38|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SCMRValue : 14|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_TTUnlockRValue : 6|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WlightRValue : 16|2@1+ (1,0) [0|0] "" XXX + +BO_ 1042 ICM_412h: 8 XXX + SG_ PopupMessageOutput_1Level : 48|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_2Level : 49|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_3Level : 50|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_4Level : 51|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_5Level : 52|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_6Level : 53|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_7Level : 54|1@0+ (1,0) [0|0] "" XXX + SG_ PopupMessageOutput_8Level : 55|1@0+ (1,0) [0|0] "" XXX + SG_ TRIP_A_DT_Display_clock : 22|7@0+ (1,0) [0|0] "" XXX + SG_ TRIP_A_DT_Display_minute : 29|6@0+ (1,0) [0|0] "" XXX + SG_ TRIP_B_DT_Display_clock : 38|7@0+ (1,0) [0|0] "" XXX + SG_ TRIP_B_DT_Display_minute : 45|6@0+ (1,0) [0|0] "" XXX + SG_ T_Outside_input : 0|9@0+ (0.01,0) [0|0] "" XXX + SG_ WarningSoundOutput_1Group : 5|1@0+ (1,0) [0|0] "" XXX + SG_ WarningSoundOutput_2Group : 6|1@0+ (1,0) [0|0] "" XXX + SG_ WarningSoundOutput_3Group : 7|1@0+ (1,0) [0|0] "" XXX + +BO_ 1056 SCC11: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ AliveCounterACC : 12|4@1+ (1,0) [0|15] "" CLU,EMS,ESC,TCU + SG_ JerkLowerLimit : 50|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC + SG_ JerkUpperLimit : 43|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC + SG_ ObjValid : 59|1@1+ (1,0) [0|1] "" CLU,ESC,TCU + SG_ aReqRaw : 27|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX + SG_ aReqValue : 16|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX + +BO_ 1057 SCC12: 8 XXX + SG_ ACCMode : 28|2@1+ (1,0) [0|3] "" CLU,HUD,LDWS_LKAS,ESC + SG_ ACCMode_Inactive : 30|1@1+ (1,0) [0|1] "" CLU,HUD,LDWS_LKAS,ESC + SG_ ACC_ObjDist : 16|11@1+ (0.1,0) [0|204.7] "m" ABS,ESC + SG_ CR_VSM_ChkSum : 0|8@1+ (1,0) [0|0] "" XXX + SG_ CR_VSM_Alive : 12|4@1+ (1,0) [0|15] "" ESC,PSB + SG_ MainMode_ACC : 27|1@1+ (1,0) [0|1] "" CLU,EMS,ESC + SG_ SCCInfoDisplay : 32|3@1+ (1,0) [0|7] "" CLU,ESC + SG_ TauGapSet : 37|3@1+ (1,0) [0|7] "" CLU,ESC,TCU + SG_ VSetDis : 41|8@1+ (1,0) [0|255] "km/h or MPH" CLU,ESC,TCU + SG_ StopReq : 49|1@1+ (1,0) [0|1] "" EPB,ESC + +BO_ 1064 _4WD11: 8 XXX + SG_ AUTO_ACT : 43|1@1+ (1,0) [0|0] "" XXX + SG_ CLU_DUTY : 16|8@1+ (1,0) [0|0] "" XXX + SG_ LOCK_ACT : 44|1@1+ (1,0) [0|0] "" XXX + SG_ LOW_ACT : 42|1@1+ (1,0) [0|0] "" XXX + SG_ R_TIRE : 24|8@1+ (1,200) [0|0] "" XXX + SG_ _2H_ACT : 40|1@1+ (1,0) [0|0] "" XXX + SG_ _4H_ACT : 41|1@1+ (1,0) [0|0] "" XXX + SG_ _4WD_ERR : 8|8@1+ (1,0) [0|0] "" XXX + SG_ _4WD_SUPPORT : 2|2@1+ (1,0) [0|0] "" XXX + SG_ _4WD_SW : 32|8@1+ (1,0) [0|0] "" XXX + SG_ _4WD_TQC_CUR : 48|16@1+ (1,0) [0|0] "" XXX + SG_ _4WD_TYPE : 0|2@1+ (1,0) [0|0] "" XXX + +BO_ 1078 PAS11: 4 XXX + SG_ CF_Gway_PASCheckSound : 22|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDisplayFCTR : 8|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDisplayFLH : 0|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDisplayFRH : 3|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDisplayRCTR : 11|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDisplayRLH : 16|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDisplayRRH : 19|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASDistance : 28|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASFsound : 14|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASOption : 26|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASRsound : 6|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PASSystemOn : 24|2@1+ (1,0) [0|0] "" XXX + +BO_ 1082 RADAR_0x43a: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 1136 P_STS: 8 XXX + SG_ Checksum : 62|2@1+ (1,0) [0|0] "" XXX + SG_ Counter : 58|4@1+ (1,0) [0|0] "" XXX + SG_ HCU1_STS : 6|2@1+ (1,0) [0|0] "" XXX + SG_ HCU5_STS : 8|2@1+ (1,0) [0|0] "" XXX + +BO_ 1151 ESP11: 6 XXX + SG_ AVH_STAT : 0|2@1+ (1,0) [0|0] "" XXX + SG_ ECD_ACT : 6|1@1+ (1,0) [0|0] "" XXX + SG_ LDM_STAT : 2|1@1+ (1,0) [0|0] "" XXX + SG_ REQ_EPB_ACT : 3|2@1+ (1,0) [0|0] "" XXX + SG_ REQ_EPB_STAT : 5|1@1+ (1,0) [0|0] "" XXX + SG_ ROL_CNT_ESP : 8|8@1+ (1,0) [0|0] "" XXX + SG_ _4WD_CLU_LIM : 32|8@1+ (0.390625,0) [0|0] "" XXX + SG_ _4WD_LIM_MODE : 42|1@1+ (1,0) [0|0] "" XXX + SG_ _4WD_LIM_REQ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ _4WD_OPEN : 40|2@1+ (1,0) [0|0] "" XXX + SG_ _4WD_TQC_LIM : 16|16@1+ (1,0) [0|0] "" XXX + +BO_ 1157 LFAHDA_MFC: 8 XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_1 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_2 : 16|1@0+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_3 : 17|1@0+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_4 : 18|1@0+ (1,0) [0|0] "" XXX + SG_ HDA_Icon_State : 19|2@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_5 : 21|3@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_6 : 24|1@0+ (1,0) [0|0] "" XXX + SG_ LFA_Icon_State : 25|2@1+ (1,0) [0|0] "" XXX + SG_ NEW_SIGNAL_7 : 27|37@1+ (1,0) [0|0] "" XXX + +BO_ 1162 BCA11: 8 XXX + SG_ AliveCounter : 21|4@1+ (1,0) [0|0] "" XXX + SG_ CF_BCA_State : 16|3@1+ (1,0) [0|0] "" XXX + SG_ CF_BCA_Warning : 19|2@1+ (1,0) [0|0] "" XXX + SG_ Check_Sum : 56|8@1+ (1,0) [0|0] "" XXX + SG_ RCCA_Brake_Command : 29|1@1+ (1,0) [0|0] "" XXX + +BO_ 1168 EPB11: 7 XXX + SG_ EPB_ALARM : 6|2@1+ (1,0) [0|0] "" XXX + SG_ EPB_CLU : 8|8@1+ (1,0) [0|0] "" XXX + SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0) [0|0] "" XXX + SG_ EPB_DBF_REQ : 26|1@1+ (1,0) [0|0] "" XXX + SG_ EPB_DBF_STAT : 24|1@1+ (1,0) [0|0] "" XXX + SG_ EPB_FAIL : 29|3@1+ (1,0) [0|0] "" XXX + SG_ EPB_FORCE : 32|12@1+ (1,-1000) [0|0] "" XXX + SG_ EPB_FRC_ERR : 22|2@1+ (1,0) [0|0] "" XXX + SG_ EPB_F_LAMP : 4|2@1+ (1,0) [0|0] "" XXX + SG_ EPB_I_LAMP : 0|4@1+ (1,0) [0|0] "" XXX + SG_ EPB_RBL : 18|1@1+ (1,0) [0|0] "" XXX + SG_ EPB_STATUS : 19|3@1+ (1,0) [0|0] "" XXX + SG_ EPB_SWITCH : 16|2@1+ (1,0) [0|0] "" XXX + SG_ ESP_ACK : 25|1@1+ (1,0) [0|0] "" XXX + +BO_ 1170 EMS19: 8 XXX + SG_ BAT_LAMP_STAT : 42|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_BrkReq : 0|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_DecelReq : 8|12@1+ (0.001,-4.094) [0|0] "" XXX + SG_ CF_Ems_DnShftReq : 1|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41) [0|0] "" XXX + SG_ CF_Ems_OPSFail : 56|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Ems_RepModChk : 5|2@1+ (1,0) [0|0] "" XXX + SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0) [0|0] "" XXX + SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40) [0|0] "" XXX + SG_ DPF_LAMP_STAT : 40|2@1+ (1,0) [0|0] "" XXX + +BO_ 1173 YRS13: 8 XXX + SG_ YRS_SeralNo : 16|48@1+ (1,0) [0|0] "" XXX + +BO_ 1186 FRT_RADAR11: 2 XXX + SG_ BYTE0 : 0|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE1 : 8|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE2 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE3 : 24|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE4 : 32|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE6 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ BYTE7 : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 1265 CLU11: 4 XXX + SG_ CF_Clu_AliveCnt1 : 28|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_AmpInfo : 25|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_CluInfo : 24|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_CruiseSwMain : 3|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_CruiseSwState : 0|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_DetentOut : 18|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_ParityBit1 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_RheostatLevel : 19|5@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_SPEED_UNIT : 17|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_SldMainSW : 4|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0) [0|0] "" XXX + SG_ CF_Clu_VanzDecimal : 6|2@1+ (0.125,0) [0|0] "" XXX + +BO_ 1280 ACU14: 1 XXX + SG_ CF_SBR_Ind : 4|2@1+ (1,0) [0|0] "" XXX + SG_ CF_SWL_Ind : 0|2@1+ (1,0) [0|0] "" XXX + SG_ CF_TTL_Ind : 2|2@1+ (1,0) [0|0] "" XXX + +BO_ 1287 TCS15: 4 XXX + SG_ ABS_W_LAMP : 0|1@1+ (1,0) [0|0] "" XXX + SG_ AVH_ALARM : 27|2@1+ (1,0) [0|0] "" XXX + SG_ AVH_CLU : 16|8@1+ (1,0) [0|0] "" XXX + SG_ AVH_I_LAMP : 24|2@1+ (1,0) [0|0] "" XXX + SG_ AVH_LAMP : 29|3@1+ (1,0) [0|0] "" XXX + SG_ DBC_F_LAMP : 6|2@1+ (1,0) [0|0] "" XXX + SG_ DBC_W_LAMP : 5|1@1+ (1,0) [0|0] "" XXX + SG_ EBD_W_LAMP : 26|1@1+ (1,0) [0|0] "" XXX + SG_ ESC_Off_Step : 8|2@1+ (1,0) [0|0] "" XXX + SG_ TCS_LAMP : 3|2@1+ (1,0) [0|0] "" XXX + SG_ TCS_OFF_LAMP : 1|2@1+ (1,0) [0|0] "" XXX + +BO_ 1292 CLU13: 8 XXX + SG_ CF_Clu_ActiveEcoSW : 39|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_AliveCnt2 : 60|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_AltLStatus : 59|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_AvgFCI : 6|10@1+ (0.1,0) [0|0] "" XXX + SG_ CF_Clu_AvgFCU : 3|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_AvsmCur : 5|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_DTE : 24|10@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_DrivingModeSwi : 16|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_FlexSteerSW : 23|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_FuelDispLvl : 18|5@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_IsaMainSW : 43|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_LdwsLkasSW : 56|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_LowfuelWarn : 0|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_RefDetMod : 2|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_SWL_Stat : 36|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_TripUnit : 34|2@1+ (1,0) [0|0] "" XXX + +BO_ 1312 CGW3: 8 XXX + SG_ CF_Hoodsw_memory : 22|2@1+ (1,0) [0|0] "" XXX + SG_ CR_Photosensor_LH : 0|8@1+ (78.125,0) [0|0] "" XXX + SG_ CR_Photosensor_RH : 10|8@1+ (78.125,0) [0|0] "" XXX + SG_ C_MirOutTempSns : 24|8@1+ (0.5,-40.5) [0|0] "" XXX + +BO_ 1322 CLU15: 8 XXX + SG_ CF_Clu_ClusterSound : 38|1@1- (1,0) [0|0] "" XXX + SG_ CF_Clu_Gear : 9|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudBrightDnSW : 24|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudBrightUpSW : 22|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudFontColorSet : 20|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudFontSizeSet : 31|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudHeightDnSW : 28|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudHeightUpSW : 26|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudInfoSet : 13|7@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_HudSet : 30|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_LanguageInfo : 33|5@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_VehicleSpeed : 0|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Clu_VehicleSpeed2 : 48|8@1+ (1,0) [0|0] "" XXX + +BO_ 1342 LKAS12: 8 XXX + SG_ CF_LkasDawStatus : 40|3@1+ (1,0) [0|0] "" XXX + SG_ CF_LkasTsrSpeed_Display_Navi : 24|8@1+ (1,0) [0|0] "" XXX + SG_ CF_Lkas_Daw_USM : 37|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Lkas_TsrAddinfo_Display : 32|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Lkas_TsrSlifOpt : 10|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Lkas_TsrSpeed_Display_Clu : 16|8@1+ (1,0) [0|0] "" XXX + SG_ _CHECKSUM : 0|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|0] "" XXX + +BO_ 1345 CGW1: 8 XXX + SG_ CF_Gway_ALightStat : 37|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_AstDrSw : 35|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_AstSeatBeltSw : 14|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DefoggerRly : 36|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DriveTypeOption : 43|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvDrSw : 8|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvKeyLockSw : 6|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvKeyUnlockSw : 7|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvSeatBeltSw : 10|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_Frt_Fog_Act : 40|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HBAControlMode : 52|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HLpHighSw : 53|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HazardSw : 33|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HeadLampHigh : 32|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HeadLampLow : 31|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HoodSw : 17|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_IGNSw : 0|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_Ign1 : 58|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_Ign2 : 59|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_InhibitRMT : 54|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_LightSwState : 38|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ParkBrakeSw : 60|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PassingSW : 51|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PassiveAccessLock : 45|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PassiveAccessUnlock : 48|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RKECmd : 3|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RainSnsOption : 56|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RainSnsState : 28|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RrSunRoofOpenState : 50|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SMKOption : 16|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_StarterRlyState : 44|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_TSigLHSw : 42|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_TSigRHSw : 41|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_TrunkTgSw : 12|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_TurnSigLh : 19|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_TurnSigRh : 62|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperAutoSw : 27|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperHighSw : 26|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperIntSw : 24|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperIntT : 21|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperLowSw : 25|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperMistSw : 47|1@1+ (1,0) [0|0] "" XXX + SG_ C_SunRoofOpenState : 57|1@1+ (1,0) [0|0] "" XXX + +BO_ 1348 Navi_HU: 8 XXX + SG_ SpeedLim_Nav_Clu : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 1363 CGW2: 8 XXX + SG_ CF_Gway_AutoLightOption : 54|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_AutoLightValue : 16|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_AvTail : 20|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_BCMRKEID : 41|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_BrakeFluidSw : 17|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_CLUSwEnter : 15|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_CLUSwGroup : 13|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_CLUSwGuiCtrl : 10|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_CLUSwMode : 14|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_CountryCfg : 26|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DDMDiagState : 1|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DeactivationWarn : 45|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvSeatBeltInd : 18|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ESCLFailWarn : 35|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ESCLNotLockedWarn : 36|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ESCLNotUnlockWarn : 37|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ExtTailAct : 22|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_GwayDiagState : 0|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HLLowLHFail : 33|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_HLLowRHFail : 34|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_IDoutWarn : 38|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_IPMDiagState : 5|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_ImmoLp : 40|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_IntTailAct : 25|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_KeyBATDischargeWarn : 46|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_KeyoutLp : 56|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_LDMFail : 6|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PSMDiagState : 3|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RLDrSw : 24|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RRDrSw : 23|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RearFogAct : 21|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SCMDiagState : 2|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SJBDeliveryMode : 55|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SJBDiagState : 4|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SMKDispWarn : 57|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SMKFobID : 48|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SMKRKECmd : 51|3@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_SSBWarn : 47|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_VehicleNotPWarn : 44|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WiperParkPosition : 32|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_WngBuz : 61|3@1+ (1,0) [0|0] "" XXX + +BO_ 1369 CGW4: 8 XXX + SG_ CF_Gway_AstSeatBeltInd : 38|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_AstWdwStat : 11|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvSeatBeltInd : 36|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_DrvWdwStat : 8|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_IMSBuzzer : 15|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_MemoryEnable : 12|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_MemoryP1Cmd : 0|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_MemoryP2Cmd : 1|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PBACKStop : 14|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PBACKStopCmd : 13|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PBackP1Cmd : 2|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PBackP2Cmd : 3|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_PBackStopCmd : 5|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RCSeatBeltInd : 40|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RLSeatBeltInd : 42|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RLWdwState : 9|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RRSeatBeltInd : 44|2@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RRWdwState : 10|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RrWiperHighSw : 46|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_RrWiperLowSw : 47|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_StaticBendLhAct : 6|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_StaticBendRhAct : 7|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Gway_StrgWhlHeatedState : 4|1@1+ (1,0) [0|0] "" XXX + +BO_ 1370 HU_AVM_PE_00: 8 XXX + SG_ HU_AVM_Status : 0|2@1+ (1,0) [0|0] "" XXX + +BO_ 1371 AVM_HU_PE_00: 8 XXX + SG_ AVM_Display_Message : 8|8@1+ (1,0) [0|0] "" XXX + SG_ AVM_FrontBtn_Type : 28|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_HU_FrontViewPointOpt : 36|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_HU_FrontView_Option : 44|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_HU_RearView_Option : 40|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_Option : 32|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_ParkingAssist_BtnSts : 5|3@1+ (1,0) [0|0] "" XXX + SG_ AVM_ParkingAssist_Step : 24|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_Popup_Msg : 16|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_Ready : 20|4@1+ (1,0) [0|0] "" XXX + SG_ AVM_Version : 48|16@1+ (1,0) [0|0] "" XXX + SG_ AVM_View : 0|5@1+ (1,0) [0|0] "" XXX + +BO_ 1407 HU_MON_PE_01: 8 XXX + SG_ HU_Type : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1419 LCA11: 8 XXX + SG_ CF_Lca_IndLeft : 29|1@1+ (1,0) [0|0] "" XXX + SG_ CF_Lca_IndRight : 37|1@1+ (1,0) [0|0] "" XXX + +BO_ 1427 TPMS11: 6 XXX + SG_ POS_FL_W_LAMP : 4|1@1+ (1,0) [0|0] "" XXX + SG_ POS_FR_W_LAMP : 5|1@1+ (1,0) [0|0] "" XXX + SG_ POS_RL_W_LAMP : 6|1@1+ (1,0) [0|0] "" XXX + SG_ POS_RR_W_LAMP : 7|1@1+ (1,0) [0|0] "" XXX + SG_ PRESSURE_FL : 16|8@1+ (1,0) [0|0] "" XXX + SG_ PRESSURE_FR : 24|8@1+ (1,0) [0|0] "" XXX + SG_ PRESSURE_RL : 32|8@1+ (1,0) [0|0] "" XXX + SG_ PRESSURE_RR : 40|8@1+ (1,0) [0|0] "" XXX + SG_ STATUS_TPMS : 8|3@1+ (1,0) [0|0] "" XXX + SG_ TPMS_W_LAMP : 0|2@1+ (1,0) [0|0] "" XXX + SG_ TREAD_W_LAMP : 2|2@1+ (1,0) [0|0] "" XXX + SG_ UNIT : 11|2@1+ (1,0) [0|0] "" XXX + +BO_ 1456 CLU12: 4 XXX + SG_ CF_Clu_Odometer : 0|24@1+ (0.1,0) [0|0] "" XXX + + +CM_ SG_ 1348 SpeedLim_Nav_Clu "Speed limit displayed on Nav, Cluster and HUD"; + +VAL_ 871 CF_Lvr_Gear 12 "T" 5 "D" 8 "S" 6 "N" 7 "R" 0 "P"; +VAL_ 909 CF_VSM_Warn 2 "FCW" 3 "AEB"; +VAL_ 916 ACCEnable 0 "SCC ready" 1 "SCC temp fault" 2 "SCC permanent fault" 3 "SCC permanent fault, communication issue"; +VAL_ 1057 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled"; +VAL_ 1157 HDA_Icon_State 0 "no_hda" 1 "white_hda" 2 "green_hda"; +VAL_ 1157 LFA_SysWarning 0 "no_message" 1 "switching_to_hda" 2 "switching_to_scc" 3 "lfa_error" 4 "check_hda" 5 "keep_hands_on_wheel_orange" 6 "keep_hands_on_wheel_red"; +VAL_ 1157 LFA_Icon_State 0 "no_wheel" 1 "white_wheel" 2 "green_wheel" 3 "green_wheel_blink"; +VAL_ 1157 HDA_SysWarning 0 "no_message" 1 "driving_convenience_systems_cancelled" 2 "highway_drive_assist_system_cancelled"; +VAL_ 1322 CF_Clu_Gear 1 "P" 2 "R" 4 "N" 8 "D"; diff --git a/opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc b/opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc new file mode 100644 index 0000000000..13da6361b6 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/nissan/_nissan_common.dbc @@ -0,0 +1,113 @@ +BO_ 2 STEER_ANGLE_SENSOR: 5 XXX + SG_ STEER_ANGLE_RATE : 16|8@1+ (1,0) [0|255] "" XXX + SG_ SET_ME_X07 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ STEER_ANGLE : 0|16@1- (-0.1,0) [0|65535] "" XXX + SG_ COUNTER : 32|4@1+ (1,0) [0|15] "" XXX + +BO_ 361 LKAS: 8 XXX + SG_ MAX_TORQUE : 39|8@0+ (0.01,0) [0|255] "Nm" XXX + SG_ SET_0x80 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ LKA_ACTIVE : 52|1@0+ (1,0) [0|15] "" XXX + SG_ SET_0x80_2 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ DESIRED_ANGLE : 7|18@0+ (-0.01,1310) [-1311.43|1310] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 389 STEER_TORQUE_SENSOR: 8 XXX + SG_ LKAS_ACTIVE : 37|1@0+ (1,0) [0|3] "" XXX + SG_ STEER_TORQUE_LKAS : 47|8@0+ (1,0) [0|255] "" XXX + SG_ STEER_ANGLE : 23|18@0+ (-0.01,1310) [0|262143] "" XXX + SG_ STEER_TORQUE_DRIVER : 7|12@0+ (-0.01,20.47) [0|4095] "Nm" XXX + SG_ COUNTER : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|127] "" XXX + +BO_ 645 WHEEL_SPEEDS_REAR: 8 XXX + SG_ WHEEL_SPEED_RR : 7|16@0+ (0.005,0) [0|65535] "KPH" XXX + SG_ WHEEL_SPEED_RL : 23|16@0+ (0.005,0) [0|65535] "KPH" XXX + +BO_ 689 PROPILOT_HUD: 8 XXX + SG_ LARGE_WARNING_FLASHING : 9|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_ERROR_FLASHING1 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_ERROR_FLASHING2 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_LANE_YELLOW_FLASH : 12|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_LANE_YELLOW_FLASH : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LEAD_CAR : 14|1@0+ (1,0) [0|1] "" XXX + SG_ LEAD_CAR_ERROR : 15|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_RADAR_ERROR : 16|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_RADAR_ERROR_FLASHING : 17|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_LANE_GREEN : 24|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_LANE_GREEN : 25|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_ERROR_FLASHING3 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_ERROR_FLASHING : 29|1@0+ (1,0) [0|1] "" XXX + SG_ SAFETY_SHIELD_ACTIVE : 44|1@0+ (1,0) [0|1] "" XXX + SG_ LARGE_STEERING_WHEEL_ICON : 61|2@0+ (1,0) [0|3] "" XXX + SG_ RIGHT_LANE_GREEN_FLASH : 62|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_LANE_GREEN_FLASH : 63|1@0+ (1,0) [0|1] "" XXX + SG_ FOLLOW_DISTANCE : 3|2@0+ (1,0) [0|3] "" XXX + SG_ AUDIBLE_TONE : 47|3@0+ (1,0) [0|8] "" XXX + SG_ SPEED_SET_ICON : 7|2@0+ (1,0) [0|3] "" XXX + SG_ SMALL_STEERING_WHEEL_ICON : 42|3@0+ (1,0) [0|7] "" XXX + SG_ SET_SPEED : 39|8@0+ (1,0) [0|255] "" XXX + SG_ unknown02 : 1|2@0+ (1,0) [0|3] "" XXX + SG_ unknown05 : 5|2@0+ (1,0) [0|3] "" XXX + SG_ unknown08 : 8|7@0+ (1,0) [0|63] "" XXX + SG_ unknown26 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ unknown28 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ unknown31 : 31|2@0+ (1,0) [0|3] "" XXX + SG_ unknown43 : 43|1@0+ (1,0) [0|1] "" XXX + SG_ unknown55 : 55|8@0+ (1,0) [0|63] "" XXX + SG_ unknown59 : 59|4@0+ (1,0) [0|15] "" XXX + +BO_ 783 CRUISE_STATE: 3 XXX + SG_ CRUISE_ENABLED : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 1228 PROPILOT_HUD_INFO_MSG: 8 XXX + SG_ NA_HIGH_ACCEL_TEMP : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_NA_HIGH_CABIN_TEMP : 8|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_MALFUNCTION : 11|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_MALFUNCTION : 12|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_RADAR_MALFUNCTION : 13|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_NA_CLEAN_REAR_CAMERA : 14|1@0+ (1,0) [0|1] "" XXX + SG_ NA_POOR_ROAD_CONDITIONS : 16|1@0+ (1,0) [0|1] "" XXX + SG_ CURRENTLY_UNAVAILABLE : 17|1@0+ (1,0) [0|1] "" XXX + SG_ SAFETY_SHIELD_OFF : 18|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_COLLISION_NA_FRONT_RADAR_OBSTRUCTION : 20|1@0+ (1,0) [0|1] "" XXX + SG_ PEDAL_MISSAPPLICATION_SYSTEM_ACTIVATED : 24|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_IMPACT_NA_RADAR_OBSTRUCTION : 25|1@0+ (1,0) [0|1] "" XXX + SG_ WARNING_DO_NOT_ENTER : 33|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_IMPACT_SYSTEM_OFF : 34|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_IMPACT_MALFUNCTION : 35|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_COLLISION_MALFUNCTION : 36|1@0+ (1,0) [0|1] "" XXX + SG_ SIDE_RADAR_MALFUNCTION2 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_MALFUNCTION2 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_RADAR_MALFUNCTION2 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ PROPILOT_NA_MSGS : 42|3@0+ (1,0) [0|7] "" XXX + SG_ BOTTOM_MSG : 45|3@0+ (1,0) [0|7] "" XXX + SG_ HANDS_ON_WHEEL_WARNING : 47|1@0+ (1,0) [0|1] "" XXX + SG_ WARNING_STEP_ON_BRAKE_NOW : 51|1@0+ (1,0) [0|1] "" XXX + SG_ PROPILOT_NA_FRONT_CAMERA_OBSTRUCTED : 52|1@0+ (1,0) [0|1] "" XXX + SG_ PROPILOT_NA_HIGH_CABIN_TEMP : 53|1@0+ (1,0) [0|1] "" XXX + SG_ WARNING_PROPILOT_MALFUNCTION : 54|1@0+ (1,0) [0|3] "" XXX + SG_ ACC_UNAVAILABLE_HIGH_CABIN_TEMP : 62|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_NA_FRONT_CAMERA_IMPARED : 63|1@0+ (1,0) [0|1] "" XXX + SG_ unknown07 : 7|7@0+ (1,0) [0|127] "" XXX + SG_ unknown10 : 10|2@0+ (1,0) [0|3] "" XXX + SG_ unknown15 : 15|1@0+ (1,0) [0|1] "" XXX + SG_ unknown23 : 23|3@0+ (1,0) [0|7] "" XXX + SG_ unknown19 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ unknown31 : 31|6@0+ (1,0) [0|63] "" XXX + SG_ unknown32 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ unknown46 : 46|1@0+ (1,0) [0|1] "" XXX + SG_ unknown50 : 50|3@0+ (1,0) [0|7] "" XXX + SG_ unknown55 : 55|1@0+ (1,0) [0|1] "" XXX + SG_ unknown61 : 61|6@0+ (1,0) [0|63] "" XXX + +BO_ 1227 LKAS_SETTINGS: 8 XXX + SG_ LKAS_ENABLED : 51|1@0+ (1,0) [0|1] "" XXX + +VAL_ 1228 PROPILOT_NA_MSGS 0 "NO_MSG" 1 "NA_FRONT_CAMERA_IMPARED" 2 "STEERING_ASSIST_ON_STANDBY" 3 "NA_PARKING_ASSIST_ENABLED" 4 "STEER_ASSIST_CURRENTLY_NA" 5 "NA_BAD_WEATHER" 6 "NA_PARK_BRAKE_ON" 7 "NA_SEATBELT_NOT_FASTENED" ; +VAL_ 1228 BOTTOM_MSG 0 "OK_STEER_ASSIST_SETTINGS" 1 "NO_MSG" 2 "PRESS_SET_TO_SET_SPEED" 3 "PRESS_RES_SET_TO_CHANGE_SPEED" 4 "PRESS_RES_TO_RESTART" 5 "NO_MSG" 6 "CRUISE_NOT_AVAIL" 7 "NO_MSG" ; +VAL_ 689 FOLLOW_DISTANCE 0 "NO_FOLLOW_DISTANCE" 1 "FOLLOW_DISTANCE_1" 2 "FOLLOW_DISTANCE_2" 3 "FOLLOW_DISTANCE_3" ; +VAL_ 689 AUDIBLE_TONE 0 "NO_TONE" 1 "CONT" 2 "FAST_BEEP_CONT" 3 "TRIPLE_FAST_BEEP_CONT" 4 "SLOW_BEEP_CONT" 5 "QUAD_SLOW_BEEP_CONT" 6 "SINGLE_BEEP_ONCE" 7 "DOUBLE_BEEP_ONCE" ; +VAL_ 689 SMALL_STEERING_WHEEL_ICON 0 "NO_ICON" 1 "GRAY_ICON" 2 "GRAY_ICON_FLASHING" 3 "GREEN_ICON" 4 "GREEN_ICON_FLASHING" 5 "RED_ICON" 6 "RED_ICON_FLASHING" 7 "YELLOW_ICON" ; +VAL_ 689 LARGE_STEERING_WHEEL_ICON 0 "NO_STEERINGWHEEL" 1 "GRAY_STEERINGWHEEL" 2 "GREEN_STEERINGWHEEL" 3 "GREEN_STEERINGWHEEL_FLASHING" ; diff --git a/opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc b/opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc new file mode 100644 index 0000000000..3376c3784c --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/nissan/nissan_leaf_2018.dbc @@ -0,0 +1,62 @@ +CM_ "IMPORT _nissan_common.dbc"; + +BO_ 42 SEATBELT: 8 XXX + SG_ SEATBELT_DRIVER_LATCHED : 27|1@1+ (1,0) [0|3] "" XXX + SG_ SEATBELT_DRIVER_UNLATCHED : 26|1@0+ (1,0) [0|1] "" XXX + SG_ unknown2 : 31|4@0+ (1,0) [0|15] "" XXX + SG_ unknown3 : 24|2@1+ (1,0) [0|3] "" XXX + SG_ unknown1 : 7|24@0+ (1,0) [0|16777215] "" XXX + SG_ unknown4 : 39|16@0+ (1,0) [0|65535] "" XXX + +BO_ 460 BRAKE_PEDAL: 8 XXX + SG_ BRAKE_PEDAL : 7|8@0+ (1,0) [0|256] "" XXX + +BO_ 569 CRUISE_THROTTLE: 8 XXX + SG_ GAS_PEDAL_INVERTED : 15|8@0+ (1,0) [0|255] "" XXX + SG_ GAS_PEDAL : 7|8@0+ (1,0) [0|255] "" XXX + SG_ CRUISE_AVAILABLE : 17|1@0+ (1,0) [0|1] "" XXX + SG_ unsure1 : 23|6@0+ (1,0) [0|63] "" XXX + SG_ unsure2 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ unsure3 : 31|2@0+ (1,0) [0|3] "" XXX + SG_ NO_BUTTON_PRESSED : 29|1@0+ (1,0) [0|1] "" XXX + SG_ RES_BUTTON : 28|1@0+ (1,0) [0|1] "" XXX + SG_ SET_BUTTON : 27|1@0+ (1,0) [0|1] "" XXX + SG_ FOLLOW_DISTANCE_BUTTON : 26|1@0+ (1,0) [0|1] "" XXX + SG_ CANCEL_BUTTON : 25|1@0+ (1,0) [0|1] "" XXX + SG_ PROPILOT_BUTTON : 24|1@0+ (1,0) [0|1] "" XXX + SG_ USER_BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 32|2@1+ (1,0) [0|3] "" XXX + SG_ unsure5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ unsure6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ unsure7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 640 CANCEL_MSG: 8 XXX + SG_ CANCEL_SEATBELT : 1|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 7|6@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_2 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 15|56@0+ (1,0) [0|72057594037927940] "" XXX + +BO_ 644 WHEEL_SPEEDS_FRONT: 8 XXX + SG_ WHEEL_SPEED_FR : 7|16@0+ (0.005,0) [0|65535] "KPH" XXX + SG_ WHEEL_SPEED_FL : 23|16@0+ (0.005,0) [0|65535] "KPH" XXX + +BO_ 852 ESP: 8 XXX + SG_ ESP_DISABLED : 38|1@0+ (1,0) [0|1] "" XXX + +BO_ 853 HUD_SETTINGS: 8 XXX + SG_ SPEED_MPH : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 856 LIGHTS: 8 XXX + SG_ LEFT_BLINKER : 17|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_BLINKER : 18|1@0+ (1,0) [0|1] "" XXX + +BO_ 1057 GEARBOX: 3 XXX + SG_ GEAR_SHIFTER : 5|3@0+ (1,0) [0|255] "" XXX + +BO_ 1549 DOORS_LIGHTS: 8 XXX + SG_ DOOR_OPEN_FL : 3|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 5|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 6|1@0+ (1,0) [0|1] "" XXX + +VAL_ 1057 GEAR_SHIFTER 7 "B" 4 "D" 3 "N" 2 "R" 1 "P" ; diff --git a/opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc b/opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc new file mode 100644 index 0000000000..46e6f9c99a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/nissan/nissan_x_trail_2017.dbc @@ -0,0 +1,69 @@ +CM_ "IMPORT _nissan_common.dbc"; + +BO_ 348 GAS_PEDAL: 8 XXX + SG_ GAS_PEDAL_RAW : 26|11@0+ (1,0) [0|2047] "" XXX + SG_ GAS_PEDAL : 47|10@0+ (1,0) [0|1023] "" XXX + +BO_ 438 PRO_PILOT: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X03 : 33|2@0+ (1,0) [0|15] "" XXX + SG_ CRUISE_ACTIVATED : 38|1@0+ (1,0) [0|3] "" XXX + SG_ CRUISE_ON : 36|1@0+ (1,0) [0|255] "" XXX + SG_ STEER_STATUS : 51|1@0+ (1,0) [0|3] "" XXX + +BO_ 523 CRUISE_THROTTLE: 6 XXX + SG_ PROPILOT_BUTTON : 8|1@0+ (1,0) [0|1] "" XXX + SG_ CANCEL_BUTTON : 9|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_PEDAL_INVERTED : 37|10@0+ (1,0) [0|1023] "" XXX + SG_ SET_BUTTON : 11|1@0+ (1,0) [0|1] "" XXX + SG_ RES_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX + SG_ FOLLOW_DISTANCE_BUTTON : 10|1@0+ (1,0) [0|1] "" XXX + SG_ NO_BUTTON_PRESSED : 13|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_PEDAL : 31|10@0+ (1,0) [0|255] "" XXX + SG_ USER_BRAKE_PRESSED : 21|1@0+ (1,0) [0|1] "" XXX + SG_ USER_BRAKE_PRESSED_INVERTED : 22|1@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_PRESSED_INVERTED : 20|1@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 17|2@0+ (1,0) [0|3] "" XXX + SG_ unsure1 : 7|10@0+ (1,0) [0|1023] "" XXX + SG_ unsure2 : 43|4@0+ (1,0) [0|1] "" XXX + SG_ unsure3 : 19|2@0+ (1,0) [0|3] "" XXX + +BO_ 665 ESP: 8 XXX + SG_ ESP_DISABLED : 24|1@0+ (1,0) [0|1] "" XXX + +BO_ 666 WHEEL_SPEEDS_FRONT: 8 XXX + SG_ WHEEL_SPEED_FR : 7|16@0+ (0.005,0) [0|65535] "KPH" XXX + SG_ WHEEL_SPEED_FL : 23|16@0+ (0.005,0) [0|65535] "KPH" XXX + +BO_ 768 STEER_TORQUE_SENSOR2: 2 XXX + SG_ STEERING_TORQUE : 6|7@0+ (1,0) [0|127] "" XXX + SG_ STEERING_PRESSED : 15|1@0+ (-1,1) [0|7] "" XXX + +BO_ 1055 GEARBOX: 2 XXX + SG_ SPORTS_MODE : 13|1@0+ (1,0) [0|1] "" XXX + SG_ GEAR_SHIFTER : 5|3@0+ (1,0) [0|255] "" XXX + +BO_ 1107 LIGHTS: 8 XXX + SG_ RIGHT_BLINKER : 12|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_BLINKER : 11|1@0+ (1,0) [0|1] "" XXX + SG_ HEADLIGHTS : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 1108 DOORS_LIGHTS: 8 XXX + SG_ DOOR_CLOSED_RR : 40|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 41|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_RL : 42|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 43|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_FL : 44|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FL : 45|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_FR : 46|1@0+ (1,0) [0|3] "" XXX + SG_ DOOR_OPEN_FR : 47|1@0+ (1,0) [0|3] "" XXX + SG_ BOOT_OPEN : 55|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_LIGHT : 54|1@0+ (1,0) [0|1] "" XXX + SG_ USER_BRAKE_PRESSED : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 1273 HUD: 7 XXX + SG_ SEATBELT_DRIVER_LATCHED : 25|1@0+ (1,0) [0|1] "" XXX + SG_ SPEED_MPH : 5|1@0+ (1,0) [0|1] "" XXX + +VAL_ 1055 GEAR_SHIFTER 6 "L" 4 "D" 3 "N" 2 "R" 1 "P" ; diff --git a/opendbc_repo/opendbc/dbc/generator/rivian/.gitignore b/opendbc_repo/opendbc/dbc/generator/rivian/.gitignore new file mode 100644 index 0000000000..c6687b3e56 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/rivian/.gitignore @@ -0,0 +1 @@ +rivian_mando_front_radar.dbc \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py b/opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py new file mode 100755 index 0000000000..cdddfd8f28 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/rivian/rivian_mando_front_radar.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 +import os + +if __name__ == "__main__": + dbc_name = os.path.basename(__file__).replace(".py", ".dbc") + rivian_path = os.path.dirname(os.path.realpath(__file__)) + with open(os.path.join(rivian_path, dbc_name), "w", encoding='utf-8') as f: + f.write(""" +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + """) + + # note: 0x501/0x502 seem to be special in 0x5XX range + for a in range(0x500, 0x500 + 32): + f.write(f""" +BO_ {a} RADAR_TRACK_{a:x}: 8 RADAR + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX + SG_ UNKNOWN_1 : 23|8@0- (1,0) [-128|127] "" XXX + SG_ AZIMUTH : 28|10@0- (0.1,0) [-61.2|62.1] "" XXX + SG_ STATE : 31|3@0+ (1,0) [0|7] "" XXX + SG_ LONG_DIST : 34|11@0+ (0.1,0) [0|204.7] "" XXX + SG_ STATE_2 : 55|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 53|14@0- (0.01,0) [-81.92|81.92] "" XXX + """) diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc new file mode 100644 index 0000000000..69c8361938 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_global.dbc @@ -0,0 +1,302 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX X + + +BO_ 2 Steering: 8 XXX + SG_ Steering_Angle : 7|16@0- (0.1,0) [0|65535] "" XXX + SG_ COUNTER : 25|3@1+ (1,0) [0|7] "" XXX + SG_ CHECKSUM : 32|8@1+ (1,0) [0|255] "" XXX + +BO_ 64 Throttle: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Engine_RPM : 16|12@1+ (1,0) [0|4095] "" XXX + SG_ Signal2 : 28|4@1+ (1,0) [0|15] "" XXX + SG_ Throttle_Pedal : 32|8@1+ (1,0) [0|255] "" XXX + SG_ Throttle_Cruise : 40|8@1+ (1,0) [0|255] "" XXX + SG_ Throttle_Combo : 48|8@1+ (1,0) [0|255] "" XXX + SG_ Signal3 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ Off_Accel : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 316 Brake_Status: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|46@1+ (1,0) [0|1] "" XXX + SG_ ES_Brake : 58|1@1+ (1,0) [0|1] "" XXX + SG_ Signal2 : 59|3@1+ (1,0) [0|1] "" XXX + SG_ Brake : 62|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 326 Cruise_Buttons: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|30@1+ (1,0) [0|1073741823] "" XXX + SG_ Main : 42|1@1+ (1,0) [0|1] "" XXX + SG_ Set : 43|1@1+ (1,0) [0|1] "" XXX + SG_ Resume : 44|1@1+ (1,0) [0|1] "" XXX + SG_ Signal2 : 45|19@1+ (1,0) [0|524287] "" XXX + +BO_ 315 G_Sensor: 8 XXX + SG_ Lateral : 48|8@1- (-0.1,0) [0|255] "m/s2" XXX + SG_ Longitudinal : 56|8@1- (-0.1,0) [0|255] "m/s2" XXX + +BO_ 314 Wheel_Speeds: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ FR : 12|13@1+ (0.057,0) [0|255] "kph" XXX + SG_ RR : 25|13@1+ (0.057,0) [0|255] "kph" XXX + SG_ FL : 51|13@1+ (0.057,0) [0|255] "kph" XXX + SG_ RL : 38|13@1+ (0.057,0) [0|255] "kph" XXX + +BO_ 280 Steering_Torque_2: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Steer_Torque_Output : 13|11@1- (-10,0) [0|255] "" XXX + SG_ Signal1 : 24|8@1+ (1,0) [0|511] "" XXX + SG_ Steer_Torque_Sensor : 45|11@1- (-1,0) [0|255] "" XXX + SG_ Steering_Active : 61|1@0+ (1,0) [0|1] "" XXX + SG_ Steering_Disabled : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 281 Steering_Torque: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Steer_Error_1 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ Steer_Torque_Sensor : 16|11@1- (-1,0) [-1000|1000] "" XXX + SG_ Steer_Error_2 : 28|1@1+ (1,0) [0|1] "" XXX + SG_ Steer_Warning : 29|1@1+ (1,0) [0|1] "" XXX + SG_ Steering_Angle : 32|16@1- (-0.0217,0) [-600|600] "" X + SG_ Steer_Torque_Output : 48|11@1- (-10,0) [-1000|1000] "" XXX + +BO_ 282 Steering_2: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|1] "" XXX + SG_ Steering_Angle : 24|17@1- (-0.01,0) [0|1] "" XXX + +BO_ 312 Brake_Pressure_L_R: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Brake_1 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ Brake_2 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 313 Brake_Pedal: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Speed : 16|12@1+ (0.05625,0) [0|255] "kph" XXX + SG_ Signal2 : 28|6@1+ (1,0) [0|63] "" XXX + SG_ Brake_Lights : 34|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 35|1@1+ (1,0) [0|1] "" XXX + SG_ Brake_Pedal : 36|12@1+ (1,0) [0|4095] "" XXX + SG_ Signal4 : 48|16@1+ (1,0) [0|65535] "" XXX + +BO_ 372 Engine_Stop_Start: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ Counter : 8|4@1+ (1,0) [0|15] "" XXX + SG_ STOP_START_STATE : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 290 ES_LKAS: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ SET_1 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_Output : 16|13@1- (-1,0) [-8191|8191] "" XXX + SG_ LKAS_Request : 29|1@0+ (1,0) [0|1] "" XXX + +BO_ 292 ES_LKAS_ANGLE: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Request : 12|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Output : 40|17@1- (-0.01,0) [0|1] "deg" XXX + SG_ SET_3 : 60|2@1+ (1,0) [0|1] "" XXX + +BO_ 544 ES_Brake: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Brake_Pressure : 16|16@1+ (1,0) [0|65535] "" XXX + SG_ AEB_Status : 32|4@1+ (1,0) [0|15] "" XXX + SG_ Cruise_Brake_Lights : 36|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Brake_Fault : 37|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Brake_Active : 38|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 39|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 40|24@1+ (1,0) [0|16777215] "" XXX + +BO_ 577 Cruise_Status: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Cruise_Set_Speed : 51|12@0+ (1,0) [0|120] "" XXX + SG_ Cruise_On : 54|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 55|1@1+ (1,0) [0|1] "" XXX + +BO_ 552 BSD_RCTA: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ R_ADJACENT : 48|1@1+ (1,0) [0|1] "" XXX + SG_ L_ADJACENT : 49|1@1+ (1,0) [0|1] "" XXX + SG_ R_APPROACHING : 58|1@1+ (1,0) [0|1] "" XXX + SG_ L_APPROACHING : 59|1@1+ (1,0) [0|1] "" XXX + +BO_ 912 Dashlights: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ UNITS : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ICY_ROAD : 32|2@1+ (1,0) [0|3] "" XXX + SG_ SEATBELT_FL : 48|1@1+ (1,0) [0|1] "" XXX + SG_ LEFT_BLINKER : 50|1@1+ (1,0) [0|1] "" XXX + SG_ RIGHT_BLINKER : 51|1@1+ (1,0) [0|1] "" XXX + SG_ STOP_START : 54|1@0+ (1,0) [0|1] "" XXX + +BO_ 940 BodyInfo: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ DOOR_OPEN_FL : 32|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 33|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 34|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 35|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_TRUNK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE : 54|1@1+ (1,0) [0|1] "" XXX + SG_ DASH_BTN_LIGHTS : 56|1@0+ (1,0) [0|1] "" XXX + SG_ LOWBEAM : 57|1@1+ (1,0) [0|1] "" XXX + SG_ HIGHBEAM : 58|1@1+ (1,0) [0|1] "" XXX + SG_ FOG_LIGHTS : 60|1@1+ (1,0) [0|1] "" XXX + SG_ WIPERS : 62|1@0+ (1,0) [0|1] "" XXX + +BO_ 801 ES_DashStatus: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ PCB_Off : 12|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Off : 13|1@1+ (1,0) [0|1] "" XXX + SG_ Signal1 : 14|2@1+ (1,0) [0|3] "" XXX + SG_ Cruise_State_Msg : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LKAS_State_Msg : 20|3@1+ (1,0) [0|7] "" XXX + SG_ Signal2 : 23|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Soft_Disable : 24|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Status_Msg : 25|2@1+ (1,0) [0|3] "" XXX + SG_ Signal3 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Distance : 28|3@1+ (1,0) [0|7] "" XXX + SG_ Signal4 : 31|1@1+ (1,0) [0|1] "" XXX + SG_ Conventional_Cruise : 32|1@1+ (1,0) [0|1] "" XXX + SG_ Signal5 : 33|2@1+ (1,0) [0|3] "" XXX + SG_ Cruise_Disengaged : 35|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 36|1@1+ (1,0) [0|1] "" XXX + SG_ Signal6 : 37|3@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Set_Speed : 40|8@1+ (1,0) [0|255] "" XXX + SG_ Cruise_Fault : 48|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_On : 49|1@1+ (1,0) [0|1] "" XXX + SG_ Display_Own_Car : 50|1@1+ (1,0) [0|1] "" XXX + SG_ Brake_Lights : 51|1@1+ (1,0) [0|1] "" XXX + SG_ Car_Follow : 52|1@1+ (1,0) [0|1] "" XXX + SG_ Signal7 : 53|3@1+ (1,0) [0|1] "" XXX + SG_ Far_Distance : 56|4@1+ (5,0) [0|75] "m" XXX + SG_ Cruise_State : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 802 ES_LKAS_State: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ LKAS_Alert_Msg : 12|3@1+ (1,0) [0|7] "" XXX + SG_ Signal1 : 15|2@1+ (1,0) [0|3] "" XXX + SG_ LKAS_ACTIVE : 17|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Dash_State : 18|2@1+ (1,0) [0|2] "" XXX + SG_ Signal2 : 20|3@1+ (1,0) [0|7] "" XXX + SG_ Backward_Speed_Limit_Menu : 23|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Left_Line_Enable : 24|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Left_Line_Light_Blink : 25|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Right_Line_Enable : 26|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Right_Line_Light_Blink : 27|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Left_Line_Visible : 28|2@1+ (1,0) [0|3] "" XXX + SG_ LKAS_Right_Line_Visible : 30|2@1+ (1,0) [0|3] "" XXX + SG_ LKAS_Alert : 32|5@1+ (1,0) [0|31] "" XXX + SG_ Signal3 : 37|27@1+ (1,0) [0|1] "" XXX + +BO_ 803 ES_Infotainment: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ LKAS_Blue_Lines : 15|4@0+ (1,0) [0|15] "" XXX + SG_ Signal1 : 19|4@0+ (1,0) [0|15] "" XXX + SG_ LKAS_State_Infotainment : 22|3@0+ (1,0) [0|7] "" XXX + SG_ Signal2 : 24|1@0+ (1,0) [0|1] "" XXX + +BO_ 722 AC_State: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AC_Mode : 37|3@1+ (1,0) [0|1] "" XXX + SG_ AC_ON : 24|2@1+ (1,0) [0|1] "" XXX + +BO_ 1677 Dash_State: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Units : 29|3@1+ (1,0) [0|7] "" XXX + +BO_ 554 ES_HighBeamAssist: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ HBA_Available : 13|1@0+ (1,0) [0|1] "" XXX + +BO_ 805 ES_STATIC_1: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ SET_3 : 23|2@0+ (1,0) [0|3] "" XXX + +BO_ 289 ES_STATIC_2: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ SET_3 : 15|2@1+ (1,0) [0|3] "" XXX + SG_ Cruise_Fault : 18|1@0+ (1,0) [0|1] "" XXX + +CM_ SG_ 64 Throttle_Combo "Throttle Cruise + Pedal"; +CM_ SG_ 313 Brake_Lights "Driver or Cruise Brake on"; +CM_ SG_ 544 Cruise_Brake_Lights "1 = switch on brake lights"; +CM_ SG_ 544 Brake_Pressure "Winds down after cruise disabled. Also can be non-zero when likely preparing for AEB"; +CM_ SG_ 544 Signal3 "Usually goes to 2 if AEB_Status is 4"; +CM_ SG_ 544 AEB_Status "Occasionally is 4 instead of 8 while Brake_Pressure is non-zero, unsure why"; +CM_ SG_ 801 PCB_Off "Pre-Collision Braking off"; +CM_ SG_ 801 Brake_Lights "Driver or Cruise brake on"; +CM_ SG_ 801 Cruise_State "0 = Normal, 1 = Hold+User Brake, 2 = Ready, 3 = Hold"; +CM_ SG_ 801 Far_Distance "1=0-5m, 2=5-10m, 3=10-15m, 4=15-20m, 5=20-25m, 6=25-30m, 7=30-35m, 8=35-40m, 9=40-45m, 10=45-50m, 11=50-55m, 12=55-60m, 13=60-65m, 14=65-70m, 15=75m+"; +CM_ SG_ 801 LKAS_State_Msg "1 = LKAS_Off_Sharp_Curve, 2 = Keep_Hands_On_Steering_wheel_disabled, 3 = LKAS_Off, 4 = LKAS_Off_Too_Slow, 5 = LKAS_Off_Too_Fast"; +CM_ SG_ 801 Cruise_State_Msg "1 = Cruise_Off_Steep_Slope, 2 = Cruise_lvl1_eco, 3 = Cruise_lvl2_comfort, 4 = Cruise_off_empty_reason, 5 = Cruise_off, 6 = Cruise_Unable_to_set, 7 = Cruise_Unable_to_set_brakes_applied, 8 = Eyesight_not_ready, 9 = Cruise_lvl3_standard, 10 = Cruise_lvl4_dynamic, 11 = Cruise_Unable_to_set_steep_slope"; +CM_ SG_ 801 Cruise_Soft_Disable "Eyesight soft disable (eg direct sunlight)"; +CM_ SG_ 801 Cruise_Status_Msg "1 = Disabled_Bad_Visibility, 2 = Disabled_Check_Manual"; +CM_ SG_ 802 LKAS_ACTIVE "Turns on the full LKAS dash display"; +CM_ SG_ 802 LKAS_Alert_Msg "1 = Keep_Hands_On_Wheel, 6 = Pre_Collision_Braking, 7 = Keep_Hands_On_Wheel_Off"; +CM_ SG_ 802 LKAS_Alert "1 = FCW_Cont_Beep, 2 = FCW_Repeated_Beep, 3 = Throttle_Management_Activated_Warning, 4 = Throttle_Management_Activated_Alert, 5 = Pre_Collision_Activated_Alert, 8 = Traffic_Light_Ahead, 9 = Apply_Brake_to_Hold Position, 11 = LDW_Right, 12 = LDW_Left, 13 = Stay_Alert, 14 = Lead_Vehicle_Start_Alert, 18 = Keep_Hands_On_Steering_Alert, 24 = Audio_Beep, 25 = Audio_Lead_Car_Change, 26 = Audio_ACC_Disengaged, 27 = Audio_LKAS_disabled, 28 = Audio_Ding_Ding, 30 = Audio_Repeated_Beep"; +CM_ SG_ 802 LKAS_Left_Line_Visible "0 = Off, 1 = White, 2 = Green, 3 = Orange"; +CM_ SG_ 802 LKAS_Dash_State "0 = Off, 1 = Ready, 2 = Active"; +CM_ SG_ 802 LKAS_Right_Line_Visible "0 = Off, 1 = White, 2 = Green, 3 = Orange"; +CM_ SG_ 912 UNITS "0 = Metric, 1 = Imperial"; +CM_ SG_ 912 ICY_ROAD "1 = DASHLIGHT ON, 2 = WARNING, 3 = OFF"; +VAL_ 544 AEB_Status 12 "AEB related" 8 "AEB actuation" 4 "AEB related" 0 "No AEB actuation"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc new file mode 100644 index 0000000000..68481791fb --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/_subaru_preglobal_2015.dbc @@ -0,0 +1,245 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX X + + +BO_ 2 Steering: 8 XXX + SG_ Steering_Angle : 7|16@0- (0.1,0) [-500|500] "degree" XXX + SG_ COUNTER : 27|3@0+ (1,0) [0|7] "" XXX + SG_ Checksum : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 208 G_Sensor: 8 XXX + SG_ Steering_Angle : 0|16@1- (-0.1,0) [-500|500] "" XXX + SG_ Lateral : 16|16@1- (-0.0035,1) [-255|255] "" XXX + SG_ Longitudinal : 48|16@1- (-0.00035,0) [-255|255] "" XXX + +BO_ 209 Brake_Pedal: 4 XXX + SG_ Speed : 0|16@1+ (0.05625,0) [0|255] "KPH" XXX + SG_ Brake_Pedal : 16|8@1+ (1,0) [0|255] "" XXX + +BO_ 210 Brake_2: 8 XXX + SG_ Brake_Light : 35|1@1+ (1,0) [0|1] "" XXX + SG_ Brake_Related : 36|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Brake : 48|8@1+ (1,0) [0|255] "" XXX + SG_ Left_Brake : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 211 Brake_Type: 8 XXX + SG_ Brake_Light : 21|1@1+ (1,0) [0|1] "" XXX + SG_ Speed_Counter : 32|8@1+ (1,0) [0|255] "" XXX + SG_ Brake_Cruise_On : 42|1@1+ (1,0) [0|1] "" XXX + SG_ Brake_Pedal_On : 46|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 48|8@1+ (1,0) [0|255] "" XXX + +BO_ 212 Wheel_Speeds: 8 XXX + SG_ FL : 0|16@1+ (0.0592,0) [0|255] "KPH" XXX + SG_ FR : 16|16@1+ (0.0592,0) [0|255] "KPH" XXX + SG_ RL : 32|16@1+ (0.0592,0) [0|255] "KPH" XXX + SG_ RR : 48|16@1+ (0.0592,0) [0|255] "KPH" XXX + +BO_ 320 Throttle: 8 XXX + SG_ Throttle_Pedal : 0|8@1+ (0.392157,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|2@1+ (1,0) [0|7] "" XXX + SG_ Not_Full_Throttle : 14|1@1+ (1,0) [0|1] "" XXX + SG_ Signal2 : 15|1@1+ (1,0) [0|1] "" XXX + SG_ Engine_RPM : 16|14@1+ (1,0) [0|32767] "" XXX + SG_ Off_Throttle : 30|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 31|1@1+ (1,0) [0|1] "" XXX + SG_ Throttle_Cruise : 32|8@1+ (1,0) [0|255] "" XXX + SG_ Throttle_Combo : 40|8@1+ (1,0) [0|255] "" XXX + SG_ Throttle_Body : 48|8@1+ (1,0) [0|255] "" XXX + SG_ Off_Throttle_2 : 56|1@1+ (1,0) [0|1] "" XXX + SG_ Signal4 : 57|7@1+ (1,0) [0|127] "" XXX + +BO_ 321 Engine: 8 XXX + SG_ Engine_Torque : 0|15@1+ (1,0) [0|255] "" XXX + SG_ Engine_Stop : 15|1@1+ (1,0) [0|1] "" XXX + SG_ Wheel_Torque : 16|12@1+ (1,0) [0|4095] "" XXX + SG_ Engine_RPM : 32|12@1+ (1,0) [0|8191] "" XXX + +BO_ 324 CruiseControl: 8 XXX + SG_ OnOffButton : 2|1@1+ (1,0) [0|1] "" XXX + SG_ SET_BUTTON : 3|1@1+ (1,0) [0|1] "" XXX + SG_ RES_BUTTON : 4|1@1+ (1,0) [0|1] "" XXX + SG_ Button : 13|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_On : 48|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 49|1@1+ (1,0) [0|1] "" XXX + SG_ Brake_Pedal_On : 51|1@1+ (1,0) [0|1] "" XXX + +BO_ 328 Transmission: 8 XXX + SG_ Manual_Gear : 4|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Transmission_Engine : 16|15@1+ (1,0) [0|65535] "" XXX + SG_ Gear : 48|4@1+ (1,0) [0|15] "" XXX + SG_ Gear_2 : 52|4@1+ (1,0) [0|15] "" XXX + SG_ Paddle_Shift : 60|2@1+ (1,0) [0|3] "" XXX + +BO_ 329 CVT_Ratio: 8 XXX + +BO_ 336 Brake_Pressure: 8 XXX + SG_ Brake_Pressure_Right : 0|8@1+ (1,0) [0|255] "" XXX + SG_ Brake_Pressure_Left : 8|8@1+ (1,0) [0|255] "" XXX + +BO_ 338 Stalk: 8 XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Brake_Light : 52|1@1+ (1,0) [0|1] "" XXX + SG_ Runlights : 58|1@1+ (1,0) [0|1] "" XXX + SG_ Headlights : 59|1@1+ (1,0) [0|1] "" XXX + SG_ Highbeam : 60|1@1+ (1,0) [0|1] "" XXX + SG_ Wiper : 62|1@1+ (1,0) [0|1] "" XXX + +BO_ 352 ES_Brake: 8 XXX + SG_ Brake_Pressure : 0|16@1+ (1,0) [0|255] "" XXX + SG_ Cruise_Brake_Lights : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Fault : 21|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Brake_Active : 22|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 23|1@1+ (1,0) [0|1] "" XXX + SG_ SET_1 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 48|3@1+ (1,0) [0|7] "" XXX + SG_ Checksum : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 353 ES_Distance: 8 XXX + SG_ Cruise_Throttle : 0|12@1+ (1,0) [0|4095] "" XXX + SG_ Signal1 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Car_Follow : 16|1@1+ (1,0) [0|1] "" XXX + SG_ Signal2 : 17|3@1+ (1,0) [0|7] "" XXX + SG_ Cruise_Brake_Active : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Distance_Swap : 21|1@1+ (1,0) [0|1] "" XXX + SG_ Standstill : 22|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 23|1@1+ (1,0) [0|1] "" XXX + SG_ Close_Distance : 24|8@1+ (0.019607,0) [0|5] "m" XXX + SG_ Signal4 : 32|9@1+ (1,0) [0|255] "" XXX + SG_ Standstill_2 : 41|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Fault : 42|1@1+ (1,0) [0|1] "" XXX + SG_ Signal5 : 43|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 44|3@1+ (1,0) [0|7] "" XXX + SG_ Signal6 : 47|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Button : 48|3@1+ (1,0) [0|7] "" XXX + SG_ Signal7 : 51|5@1+ (1,0) [0|31] "" XXX + SG_ Checksum : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 354 ES_Status: 8 XXX + SG_ Brake : 8|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 9|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_RPM : 16|16@1+ (1,0) [0|65535] "" XXX + SG_ Checksum : 32|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 48|3@1+ (1,0) [0|7] "" XXX + +BO_ 356 ES_LKAS: 8 XXX + SG_ COUNTER : 0|3@1+ (1,0) [0|7] "" XXX + SG_ LKAS_Command : 8|13@1- (-1,0) [-4096|4096] "" XXX + SG_ LKAS_Active : 24|1@1+ (1,0) [0|1] "" XXX + SG_ Checksum : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 359 ES_LDW: 8 XXX + SG_ All_depart_2015 : 0|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Line_2017 : 24|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Line_2017 : 25|1@1+ (1,0) [0|1] "" XXX + SG_ Sig1All_Depart : 28|1@1+ (1,0) [0|1] "" XXX + SG_ Sig2All_Depart : 31|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Inactive_2017 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_Active : 37|1@1+ (1,0) [0|1] "" XXX + SG_ Sig1Right_Depart : 48|1@1+ (1,0) [0|1] "" XXX + SG_ Sig1Right_Depart_Front : 49|1@1+ (1,0) [0|1] "" XXX + SG_ Sig2Right_Depart : 50|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Depart_Front : 51|1@1+ (1,0) [0|1] "" XXX + SG_ Sig3All_Depart : 52|1@1+ (1,0) [0|1] "" XXX + +BO_ 604 BSD_RCTA: 8 XXX + SG_ COUNTER : 0|3@1+ (1,0) [0|7] "" XXX + SG_ State : 5|1@1+ (1,0) [0|1] "" XXX + SG_ R_ADJACENT : 32|1@1+ (1,0) [0|1] "" XXX + SG_ L_ADJACENT : 33|1@1+ (1,0) [0|1] "" XXX + SG_ R_APPROACHING : 42|1@1+ (1,0) [0|1] "" XXX + SG_ L_APPROACHING : 43|1@1+ (1,0) [0|1] "" XXX + SG_ R_RCTA : 46|1@1+ (1,0) [0|1] "" XXX + SG_ L_RCTA : 47|1@1+ (1,0) [0|1] "" XXX + +BO_ 642 Dashlights: 8 XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX + SG_ SEATBELT_FL : 40|1@1+ (1,0) [0|1] "" XXX + SG_ LEFT_BLINKER : 44|1@1+ (1,0) [0|1] "" XXX + SG_ RIGHT_BLINKER : 45|1@1+ (1,0) [0|1] "" XXX + +BO_ 880 Steering_Torque_2: 8 XXX + SG_ Steering_Voltage_Flat : 0|8@1+ (1,0) [0|255] "" XXX + SG_ Steer_Torque_Sensor : 29|11@1- (-1,0) [-1000|1000] "" XXX + SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" XXX + +BO_ 884 BodyInfo: 8 XXX + SG_ DOOR_OPEN_FR : 24|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FL : 25|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 26|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 27|1@1+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_Hatch : 28|1@1+ (1,0) [0|1] "" XXX + +BO_ 864 Engine_Temp: 8 XXX + SG_ Oil_Temp : 16|8@1+ (1,-40) [0|255] "" XXX + SG_ Coolant_Temp : 24|8@1+ (1,-40) [0|255] "" XXX + SG_ Cruise_Activated : 45|1@1+ (1,0) [0|1] "" XXX + SG_ Saved_Speed : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 866 Fuel: 8 XXX + +BO_ 977 Dash_State2: 8 XXX + SG_ UNITS : 15|1@1+ (1,0) [0|1] "" XXX + +BO_ 1745 Dash_State: 8 XXX + SG_ Units : 15|1@1+ (1,0) [0|1] "" XXX + +CM_ SG_ 320 Off_Throttle_2 "Less sensitive"; +CM_ SG_ 320 Throttle_Body "Throttle related"; +CM_ SG_ 328 Gear "15 = P, 14 = R, 0 = N, 1-6=gear"; +CM_ SG_ 328 Gear_2 "15 = P, 14 = R, 0 = N, 1-6=gear"; +CM_ SG_ 353 Cruise_Button "1 = main, 2 = set shallow, 3 = set deep, 4 = resume shallow, 5 resume deep"; +CM_ SG_ 354 RPM "20hz version of Transmission_Engine under Transmission"; +CM_ SG_ 359 Sig1Right_Depart "right depart, hill steep and seatbelt disengage"; +CM_ SG_ 359 LKAS_Inactive_2017 "1 when not steering, 0 when lkas steering"; +CM_ SG_ 359 Sig1Right_Depart_Front "object in front, right depart, hill steep and seatbelt disengage alert "; +CM_ SG_ 359 Left_Depart_Front "warning after acceleration into car in front and left depart"; +CM_ SG_ 359 Sig1All_Depart "Left and right depart"; +CM_ SG_ 359 Sig2All_Depart "Left and right depart"; +CM_ SG_ 359 All_depart_2015 "always 1 on 2017"; +CM_ SG_ 604 R_APPROACHING "Faster car approaching in far right lane"; +CM_ SG_ 604 L_APPROACHING "Faster car approaching in far left lane"; +CM_ SG_ 604 R_RCTA "Rear cross traffic alert, only when in R gear"; +CM_ SG_ 604 L_RCTA "Rear cross traffic alert, only when in R gear"; +CM_ SG_ 642 COUNTER "Affected by signals"; +CM_ SG_ 642 SEATBELT_FL "Driver seatbelt"; +CM_ SG_ 880 Steering_Voltage_Flat "receives later than 371"; +CM_ SG_ 977 UNITS "0 = Metric, 1 = Imperial"; + +VAL_ 328 Gear 0 "N" 1 "D" 2 "D" 3 "D" 4 "D" 5 "D" 6 "D" 14 "R" 15 "P"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc new file mode 100644 index 0000000000..6d5d46bc9a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_forester_2017.dbc @@ -0,0 +1,18 @@ +CM_ "IMPORT _subaru_preglobal_2015.dbc"; + +BO_ 355 ES_DashStatus: 8 XXX + SG_ Not_Ready_Startup : 4|2@1+ (1,0) [0|3] "" XXX + SG_ Cruise_On : 16|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 17|1@0+ (1,0) [0|1] "" XXX + SG_ Cruise_Set_Speed : 24|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 40|3@1+ (1,0) [0|7] "" XXX + SG_ Brake : 43|1@1+ (1,0) [0|1] "" XXX + SG_ Car_Follow : 54|1@1+ (1,0) [0|1] "" XXX + SG_ Far_Distance : 56|4@1+ (5,0) [0|75] "m" XXX + +BO_ 881 Steering_Torque: 8 XXX + SG_ Steering_Motor_Flat : 0|10@1+ (32,0) [0|1000] "" XXX + SG_ Steer_Torque_Output : 16|11@1- (-32,0) [-1000|1000] "" XXX + SG_ Steer_Error_1 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Steer_Torque_Sensor : 29|11@1- (-1,0) [-1000|1000] "" XXX + SG_ Steering_Angle : 40|16@1- (-0.033,0) [-600|600] "" XXX diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc new file mode 100644 index 0000000000..83a36ff8f7 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2017.dbc @@ -0,0 +1,65 @@ +CM_ "IMPORT _subaru_global.dbc"; + +BO_ 72 Transmission: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Gear : 24|8@1+ (1,0) [0|255] "" XXX + SG_ RPM : 40|15@1+ (1,0) [0|65535] "" XXX + +BO_ 73 CVT: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ CVT_Gear : 24|8@1+ (1,0) [0|255] "" XXX + +BO_ 545 ES_Distance: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|3@1+ (1,0) [0|7] "" XXX + SG_ Cruise_Fault : 15|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Throttle : 16|13@1+ (1,0) [0|4095] "" XXX + SG_ Signal2 : 29|3@1+ (1,0) [0|15] "" XXX + SG_ Car_Follow : 32|1@1+ (1,0) [0|1] "" XXX + SG_ Low_Speed_Follow : 33|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Soft_Disable : 34|1@1+ (1,0) [0|1] "" XXX + SG_ Signal7 : 35|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Brake_Active : 36|1@1+ (1,0) [0|1] "" XXX + SG_ Distance_Swap : 37|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_EPB : 38|1@1+ (1,0) [0|1] "" XXX + SG_ Signal4 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ Close_Distance : 40|8@1+ (0.019607,0) [0|5] "m" XXX + SG_ Signal5 : 48|8@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Cancel : 56|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Set : 57|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Resume : 58|1@1+ (1,0) [0|1] "" XXX + SG_ Signal6 : 59|5@1+ (1,0) [0|1] "" XXX + +BO_ 546 ES_Status: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|3@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Fault : 15|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_RPM : 16|13@1+ (1,0) [0|4095] "" XXX + SG_ Cruise_Activated : 29|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_Lights : 30|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Hold : 31|1@1+ (1,0) [0|1] "" XXX + SG_ Signal3 : 32|32@1+ (1,0) [0|1] "" XXX + +BO_ 576 CruiseControl: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Signal1 : 12|28@1+ (1,0) [0|268435455] "" XXX + SG_ Cruise_On : 40|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 41|1@1+ (1,0) [0|1] "" XXX + SG_ Signal2 : 42|22@1+ (1,0) [0|4194303] "" XXX + +CM_ SG_ 545 Cruise_Throttle "RPM-like output signal"; +CM_ SG_ 545 Cruise_EPB "1 = Electric Parking Brake set"; +CM_ SG_ 545 Distance_Swap "Switch from Close to Far distance"; +CM_ SG_ 545 Cruise_Soft_Disable "Eyesight Temporary disable, sets CruiseControl Activated = 0"; +CM_ SG_ 546 Cruise_RPM "ES RPM output for ECM and TCM"; +CM_ SG_ 546 Signal3 "0 when cruise_activated = 1"; +CM_ SG_ 803 Signal1 "Seems to be static, set only on some cars"; +CM_ SG_ 803 Signal2 "Seems to be static, set only on some cars"; +VAL_ 803 LKAS_Blue_Lines 0 "no modifier" 2 "changes lines to blue"; +VAL_ 803 LKAS_State_Infotainment 0 "none" 2 "Obstacle Detected" 3 "Keep Hands On Wheel" 4 "Keep Hands On Wheel Off"; +VAL_ 72 Gear 2 "N" 3 "R" 4 "P" 121 "D" 137 "1" 145 "2" 153 "3" 161 "4" 169 "5" 177 "6"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc new file mode 100644 index 0000000000..a4dbe9c37d --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_global_2020_hybrid.dbc @@ -0,0 +1,18 @@ +CM_ "IMPORT _subaru_global.dbc"; + +BO_ 39 Cruise_Status_2: 8 XXX + SG_ Cruise_Activated : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 295 Transmission: 8 XXX + SG_ Gear : 44|4@1+ (1,0) [0|15] "" XXX + +BO_ 360 Throttle_Hybrid: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Throttle_Pedal : 32|8@1+ (1,0) [0|255] "" XXX + +BO_ 550 Brake_Hybrid: 8 XXX + SG_ Brake_Pedal : 24|8@1+ (1,0) [0|1] "" XXX + SG_ Brake : 37|1@1+ (1,0) [0|1] "" XXX + +VAL_ 295 Gear 0 "P" 1 "R" 3 "D"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc new file mode 100644 index 0000000000..cc1fa16d19 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2015.dbc @@ -0,0 +1,30 @@ +CM_ "IMPORT _subaru_preglobal_2015.dbc"; + +BO_ 358 ES_DashStatus: 8 XXX + SG_ Not_Ready_Startup : 0|3@1+ (1,0) [0|7] "" XXX + SG_ Seatbelt_Disengage : 12|2@1+ (1,0) [0|3] "" XXX + SG_ Disengage_Alert : 14|2@1+ (1,0) [0|3] "" XXX + SG_ Cruise_On : 16|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 17|1@1+ (1,0) [0|1] "" XXX + SG_ Signal1 : 18|1@1+ (1,0) [0|1] "" XXX + SG_ WHEELS_MOVING_2015 : 19|1@1+ (1,0) [0|1] "" XXX + SG_ Driver_Input : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Distance : 21|3@1+ (1,0) [0|7] "" XXX + SG_ Cruise_Set_Speed : 24|8@1+ (1,0) [0|255] "" XXX + SG_ Cruise_Fault : 32|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_On_2 : 34|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 37|3@1+ (1,0) [0|7] "" XXX + SG_ Steep_Hill_Disengage : 44|1@1+ (1,0) [0|3] "" XXX + SG_ Car_Follow : 46|1@1+ (1,0) [0|1] "" XXX + SG_ Far_Distance : 48|4@1+ (5,0) [0|75] "m" XXX + +BO_ 881 Steering_Torque: 8 XXX + SG_ Steering_Motor_Flat : 0|10@1+ (32,0) [0|1000] "" XXX + SG_ Steer_Torque_Output : 16|11@1- (-32,0) [-1000|1000] "" XXX + SG_ Steer_Error_1 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Steer_Torque_Sensor : 29|11@1- (1,0) [-1000|1000] "" XXX + SG_ Steering_Angle : 40|16@1- (-0.033,0) [-600|600] "" XXX + +CM_ SG_ 358 Disengage_Alert "seatbelt and steep hill disengage"; +CM_ SG_ 358 Cruise_Fault "No engagement until restart"; +CM_ SG_ 358 Car_Follow "lead car detected"; diff --git a/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc new file mode 100644 index 0000000000..d886954cfe --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/subaru/subaru_outback_2019.dbc @@ -0,0 +1,30 @@ +CM_ "IMPORT _subaru_preglobal_2015.dbc"; + +BO_ 358 ES_DashStatus: 8 XXX + SG_ Not_Ready_Startup : 0|3@1+ (1,0) [0|7] "" XXX + SG_ Seatbelt_Disengage : 12|2@1+ (1,0) [0|3] "" XXX + SG_ Disengage_Alert : 14|2@1+ (1,0) [0|3] "" XXX + SG_ Cruise_On : 16|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Activated : 17|1@1+ (1,0) [0|1] "" XXX + SG_ Signal1 : 18|1@1+ (1,0) [0|1] "" XXX + SG_ WHEELS_MOVING_2015 : 19|1@1+ (1,0) [0|1] "" XXX + SG_ Driver_Input : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Distance : 21|3@1+ (1,0) [0|7] "" XXX + SG_ Cruise_Set_Speed : 24|8@1+ (1,0) [0|255] "" XXX + SG_ Cruise_Fault : 32|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_On_2 : 34|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 37|3@1+ (1,0) [0|7] "" XXX + SG_ Steep_Hill_Disengage : 44|1@1+ (1,0) [0|3] "" XXX + SG_ Car_Follow : 46|1@1+ (1,0) [0|1] "" XXX + SG_ Far_Distance : 48|4@1+ (5,0) [0|75] "m" XXX + +BO_ 881 Steering_Torque: 8 XXX + SG_ Steering_Motor_Flat : 0|10@1+ (32,0) [0|1000] "" XXX + SG_ Steer_Torque_Output : 16|11@1- (-32,0) [-1000|1000] "" XXX + SG_ Steer_Error_1 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Steer_Torque_Sensor : 29|11@1- (-1,0) [-1000|1000] "" XXX + SG_ Steering_Angle : 40|16@1- (-0.033,0) [-600|600] "" XXX + +CM_ SG_ 358 Disengage_Alert "seatbelt and steep hill disengage"; +CM_ SG_ 358 Cruise_Fault "No engagement until restart"; +CM_ SG_ 358 Car_Follow "lead car detected"; diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/.gitignore b/opendbc_repo/opendbc/dbc/generator/tesla/.gitignore new file mode 100644 index 0000000000..554aeeaf24 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/tesla/.gitignore @@ -0,0 +1 @@ +*.dbc \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py b/opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py new file mode 100755 index 0000000000..737c203b02 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/tesla/_radar_common.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python3 + +def get_radar_point_definition(base_id, base_name): + return f""" +BO_ {base_id} {base_name}_A: 8 Radar + SG_ LongDist : 0|12@1+ (0.0625,0) [0|255.9] "meters" Autopilot + SG_ LongSpeed : 12|12@1+ (0.0625,-128) [-128|128] "meters/sec" Autopilot + SG_ LatDist : 24|11@1+ (0.125,-128) [-128|128] "meters" Autopilot + SG_ ProbExist : 35|5@1+ (3.125,0) [0|96.875] "%" Autopilot + SG_ LongAccel : 40|10@1+ (0.03125,-16) [-16|16] "meters/sec/sec" Autopilot + SG_ ProbObstacle : 50|5@1+ (3.125,0) [0|96.875] "%" Autopilot + SG_ Valid : 55|1@1+ (1,0) [0|1] "" Autopilot + SG_ ProbNonObstacle : 56|5@1+ (3.125,0) [0|96.875] "%" Autopilot + SG_ Meas : 61|1@1+ (1,0) [0|1] "" Autopilot + SG_ Tracked : 62|1@1+ (1,0) [0|1] "" Autopilot + SG_ Index : 63|1@1+ (1,0) [0|1] "" Autopilot + +BO_ {base_id+1} {base_name}_B: 8 Radar + SG_ LatSpeed : 0|10@1+ (0.125,-64) [-64|64] "meters/sec" Autopilot + SG_ Length : 10|6@1+ (0.125,0) [0|7.875] "m" Autopilot + SG_ dZ : 16|6@1+ (0.25,-5) [-5|10.75] "m" Autopilot + SG_ MovingState : 22|2@1+ (1,0) [0|3] "" Autopilot + SG_ dxSigma : 24|6@1+ (1,0) [0|63] "" Autopilot + SG_ vxSigma : 30|6@1+ (1,0) [0|63] "" Autopilot + SG_ axSigma : 36|6@1+ (1,0) [0|63] "" Autopilot + SG_ dySigma : 42|6@1+ (1,0) [0|63] "" Autopilot + SG_ ProbClass : 48|5@1+ (3.125,0) [0|96.875] "%" Autopilot + SG_ Class : 53|3@1+ (1,0) [0|7] "" Autopilot + SG_ dxRearEndLoss : 56|6@1+ (1,0) [0|63] "" Autopilot + SG_ NotUsed : 62|1@1+ (1,0) [0|1] "" Autopilot + SG_ Index2 : 63|1@1+ (1,0) [0|1] "" Autopilot +""" + +def get_val_definition(base_id): + return f""" +VAL_ {base_id+1} MovingState 3 "RADAR_MOVESTATE_STANDING" 2 "RADAR_MOVESTATE_STOPPED" 1 "RADAR_MOVESTATE_MOVING" 0 "RADAR_MOVESTATE_INDETERMINATE" ; +VAL_ {base_id+1} Class 4 "RADAR_CLASS_CONSTRUCTION_ELEMENT" 3 "RADAR_CLASS_MOVING_PEDESTRIAN" 2 "RADAR_CLASS_MOVING_TWO_WHEEL_VEHICLE" 1 \ +"RADAR_CLASS_MOVING_FOUR_WHEEL_VEHICLE" 0 "RADAR_CLASS_UNKNOWN" ;""" \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py b/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py new file mode 100755 index 0000000000..6586655ec0 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_bosch.py @@ -0,0 +1,282 @@ +#!/usr/bin/env python3 + +import os +from opendbc.dbc.generator.tesla._radar_common import get_radar_point_definition, get_val_definition + +if __name__ == "__main__": + dbc_name = os.path.basename(__file__).replace(".py", ".dbc") + tesla_path = os.path.dirname(os.path.realpath(__file__)) + with open(os.path.join(tesla_path, dbc_name), "w", encoding='utf-8') as f: + f.write(""" +VERSION "" + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: Autopilot Radar Diag + + +BO_ 769 TeslaRadarSguInfo: 8 Radar + SG_ RADC_VerticalMisalignment : 0|8@1+ (1,0) [0|255] "" Autopilot + SG_ RADC_SCUTemperature : 8|8@1+ (1,-128) [-128|127] "" Autopilot + SG_ RADC_VMA_Plaus : 16|8@1+ (1,0) [0|255] "" Autopilot + SG_ RADC_SGU_ITC : 24|8@1+ (1,0) [0|255] "" Autopilot + SG_ RADC_HorizontMisalignment : 32|12@1+ (1,0) [0|4096] "" Autopilot + SG_ RADC_SensorDirty : 44|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_HWFail : 45|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_SGUFail : 46|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_SGUInfoConsistBit : 47|1@1+ (1,0) [0|1] "" Autopilot + +BO_ 770 TeslaRadarTguInfo: 8 Radar + SG_ RADC_ACCTargObj1_sguIndex : 0|6@1+ (1,0) [0|63] "" Autopilot + SG_ RADC_ACCTargObj2_sguIndex : 6|6@1+ (1,0) [0|63] "" Autopilot + SG_ RADC_ACCTargObj3_sguIndex : 12|6@1+ (1,0) [0|63] "" Autopilot + SG_ RADC_ACCTargObj4_sguIndex : 18|6@1+ (1,0) [0|63] "" Autopilot + SG_ RADC_ACCTargObj5_sguIndex : 24|6@1+ (1,0) [0|63] "" Autopilot + SG_ unused30 : 30|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_TGUInfoConsistBit : 31|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_ACCTargObj1_dBPower : 32|16@1+ (1,0) [0|65535] "" Autopilot + SG_ RADC_ACCTargObj5_dBPower : 48|16@1+ (1,0) [0|65535] "" Autopilot + +BO_ 1281 TeslaRadarAlertMatrix: 8 Radar + SG_ RADC_a001_ecuInternalPerf : 0|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a002_flashPerformance : 1|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a003_vBatHigh : 2|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a004_adjustmentNotDone : 3|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a005_adjustmentReq : 4|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a006_adjustmentNotOk : 5|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a007_sensorBlinded : 6|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a008_plantModeActive : 7|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a009_configMismatch : 8|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a010_canBusOff : 9|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a011_bdyMIA : 10|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a012_espMIA : 11|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a013_gtwMIA : 12|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a014_sccmMIA : 13|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a015_adasMIA : 14|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a016_bdyInvalidCount : 15|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a017_adasInvalidCount : 16|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a018_espInvalidCount : 17|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a019_sccmInvalidCount : 18|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a020_bdyInvalidChkSm : 19|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a021_espInvalidChkSm : 20|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a022_sccmInvalidChkSm : 21|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a023_sccmInvalidChkSm : 22|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a024_absValidity : 23|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a025_ambTValidity : 24|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a026_brakeValidity : 25|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a027_CntryCdValidity : 26|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a028_espValidity : 27|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a029_longAccOffValidity : 28|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a030_longAccValidity : 29|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a031_odoValidity : 30|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a032_gearValidity : 31|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a033_steerAngValidity : 32|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a034_steerAngSpdValidity : 33|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a035_indctrValidity : 34|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a036_vehStandStillValidity : 35|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a037_vinValidity : 36|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a038_whlRotValidity : 37|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a039_whlSpdValidity : 38|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a040_whlStandStillValidity : 39|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a041_wiperValidity : 40|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a042_xwdValidity : 41|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a043_yawOffValidity : 42|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a044_yawValidity : 43|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a045_bsdSanity : 44|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a046_rctaSanity : 45|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a047_lcwSanity : 46|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a048_steerAngOffSanity : 47|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a049_tireSizeSanity : 48|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a050_velocitySanity : 49|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a051_yawSanity : 50|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a052_radomeHtrInop : 51|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a053_espmodValidity : 52|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a054_gtwmodValidity : 53|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a055_stwmodValidity : 54|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a056_bcmodValidity : 55|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a057_dimodValidity : 56|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a058_opmodValidity : 57|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a059_drmiInvalidChkSm : 58|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a060_drmiInvalidCount : 59|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a061_radPositionMismatch : 60|1@1+ (1,0) [0|1] "" Autopilot + SG_ RADC_a062_strRackMismatch : 61|1@1+ (1,0) [0|1] "" Autopilot + SG_ unused62 : 62|2@1+ (1,0) [0|3] "" Autopilot +""") + + M_RANGE = range(0x310, 0x36D + 1, 3) + for i, base_id in enumerate(M_RANGE): + f.write(get_radar_point_definition(base_id, f"RadarPoint{i}")) + + L_RANGE = range(0x371, 0x37D + 1, 3) + for i, base_id in enumerate(L_RANGE): + f.write(get_radar_point_definition(base_id, f"ProcessedRadarPoint{i+1}")) + + f.write(""" +BO_ 697 VIN_VIP_405HS: 8 Autopilot + SG_ VIN_MuxID M : 0|8@1+ (1,0) [0|0] "" Radar + SG_ VIN_Part1 m16 : 47|24@0+ (1,0) [0|16777215] "" Radar + SG_ VIN_Part2 m17 : 15|56@0+ (1,0) [0|7.2057594038E+16] "" Radar + SG_ VIN_Part3 m18 : 15|56@0+ (1,0) [0|7.2057594038E+16] "" Radar + +BO_ 681 Msg2A9_GTW_carConfig: 8 Autopilot + SG_ Msg2A9_Always0x02 : 48|8@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_Always0x10 : 56|8@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_Always0x16 : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_Always0x41 : 24|8@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_Value1_0x02 : 0|3@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_FourWheelDrive : 3|2@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_Value2_0x02 : 5|3@1+ (1,0) [0|0] "" Radar + SG_ Msg2A9_Always0x43 : 16|8@1+ (1,0) [0|0] "" Radar + +BO_ 409 Msg199_STW_ANGLHP_STAT: 8 Autopilot + SG_ Msg199Always0x04 : 32|8@1+ (1,0) [0|0] "" Radar + SG_ Msg199Always0x20 : 16|8@1+ (1,0) [0|0] "" Radar + SG_ Msg199Always0x2F : 0|8@1+ (1,0) [0|0] "" Radar + SG_ Msg199Always0x67 : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg199Always0xFF : 40|8@1+ (1,0) [0|0] "" Radar + SG_ Msg199Checksum : 56|8@1+ (1,0) [0|0] "" Radar + SG_ Msg199Counter : 52|4@1+ (1,0) [0|0] "" Radar + +BO_ 361 Msg169_ESP_wheelSpeeds: 8 Autopilot + SG_ ESP_wheelSpeedFrL_HS : 0|13@1+ (0.04,0) [0|327.64] "km/h" Radar + SG_ ESP_wheelSpeedFrR_HS : 13|13@1+ (0.04,0) [0|327.64] "km/h" Radar + SG_ ESP_wheelSpeedReL_HS : 26|13@1+ (0.04,0) [0|327.64] "km/h" Radar + SG_ ESP_wheelSpeedReR_HS : 39|13@1+ (0.04,0) [0|327.64] "km/h" Radar + SG_ Msg169Checksum : 56|8@1+ (1,0) [0|0] "" Radar + SG_ Msg169Counter : 52|4@1+ (1,0) [0|0] "" Radar + +BO_ 345 Msg159_ESP_C: 8 Autopilot + SG_ Msg159Always0x3A : 16|8@1+ (1,0) [0|0] "" Radar + SG_ Msg159Always0xA5 : 0|8@1+ (1,0) [0|0] "" Radar + SG_ Msg159Always0xCF : 32|8@1+ (1,0) [0|0] "" Radar + SG_ Msg159Always0xF4 : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg159Counter : 44|4@1+ (1,0) [0|0] "" Radar + SG_ Msg159Checksum : 24|8@1+ (1,0) [0|0] "" Radar + +BO_ 329 Msg149_ESP_145h: 8 Autopilot + SG_ Msg149Always0x02 : 16|8@1+ (1,0) [0|0] "" Radar + SG_ Msg149Always0x04 : 40|8@1+ (1,0) [0|0] "" Radar + SG_ Msg149Always0x26 : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg149Always0x6A : 24|8@1+ (1,0) [0|0] "" Radar + SG_ Msg149Always0xAA : 32|8@1+ (1,0) [0|0] "" Radar + SG_ Msg149Always0xF : 48|4@1+ (1,0) [0|0] "" Radar + SG_ Msg149Checksum : 56|8@1+ (1,0) [0|0] "" Radar + SG_ Msg149Counter : 52|4@1+ (1,0) [0|0] "" Radar + +BO_ 297 Msg129_ESP_115h: 6 Autopilot + SG_ Msg129Always0x20 : 24|8@1+ (1,0) [0|0] "" Radar + SG_ Msg129Checksum : 40|8@1+ (1,0) [0|0] "" Radar + SG_ Msg129Counter : 36|4@1+ (1,0) [0|0] "" Radar + +BO_ 281 Msg119_DI_torque2: 6 Autopilot + SG_ Msg119Always0x11 : 24|8@1+ (1,0) [0|0] "" Radar + SG_ Msg119Always0x1F : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg119Always0x8 : 36|4@1+ (1,0) [0|0] "" Radar + SG_ Msg119Always0xF4 : 16|8@1+ (1,0) [0|0] "" Radar + SG_ Msg119Always0xFF : 0|8@1+ (1,0) [0|0] "" Radar + SG_ Msg119Checksum : 40|8@1+ (1,0) [0|0] "" Radar + SG_ Msg119Counter : 32|4@1+ (1,0) [0|0] "" Radar + +BO_ 265 Msg109_DI_torque1: 8 Autopilot + SG_ Msg109Always0x80 : 24|8@1+ (1,0) [0|0] "" Radar + SG_ Msg109Checksum : 56|8@1+ (1,0) [0|0] "" Radar + SG_ Msg109Counter : 13|3@1+ (1,0) [0|0] "" Radar + +BO_ 521 Msg209_GTW_odo: 8 Autopilot + SG_ Msg209Always0x61 : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg209Always0x94 : 16|8@1+ (1,0) [0|0] "" Radar + SG_ Msg209Always0x52 : 24|8@1+ (1,0) [0|0] "" Radar + SG_ Msg209Always0x13 : 32|8@1+ (1,0) [0|0] "" Radar + SG_ Msg209Always0x03 : 40|8@1+ (1,0) [0|0] "" Radar + SG_ Msg209Always0x80 : 48|8@1+ (1,0) [0|0] "" Radar + +BO_ 537 Msg219_STW_ACTN_RQ: 8 Autopilot + SG_ Msg219Counter : 52|4@1+ (1,0) [0|15] "" Radar + SG_ Msg219CRC : 56|8@1+ (1,0) [0|0] "" Radar + +BO_ 425 Msg1A9_DI_espControl: 5 Autopilot + SG_ Msg1A9Always0x0C : 16|8@1+ (1,0) [0|0] "" Radar + SG_ Msg1A9Counter : 28|4@1+ (1,0) [0|0] "" Radar + SG_ Msg1A9Checksum : 32|8@1+ (1,0) [0|0] "" Radar + +BO_ 729 Msg2D9_BC_status : 8 Autopilot + SG_ Msg2D9Always0x80 : 0|8@1+ (1,0) [0|0] "" Radar + SG_ Msg2D9Always0x40 : 8|8@1+ (1,0) [0|0] "" Radar + SG_ Msg2D9Always0x83 : 16|8@1+ (1,0) [0|0] "" Radar + +BO_ 1601 UDS_radarRequest: 8 Diag + SG_ UDS_radarRequestData : 7|64@0+ (1,0) [0|0] "" Radar + +BO_ 1617 Radar_udsResponse: 8 Radar + SG_ Radar_udsResponseData : 7|64@0+ (1,0) [0|0] "" Diag + +CM_ BO_ 697 "Start with MuxID 0x12, then 0x11 and finally 0x10 (VIN is then transmitted in the reverse order)"; +CM_ BO_ 681 "Message sent every 1000 ms. All fixed bytes, no checksum, the byte for RWD or AWD needs to match VIN config"; +CM_ BO_ 409 "Message sent every 10ms. Checksum : use all first 7 bytes with the SAE J1850 CRC algo"; +CM_ BO_ 361 "Message sent every 10ms. Checksum : Sum of all first 7 bytes + 0x76"; +CM_ BO_ 345 "Message sent every 20ms. Checksum : Sum of all first bytes + 0xc; place checksum in 4th octet"; +CM_ BO_ 329 "Message sent every 20ms. Checksum : Sum of all first 7 bytes + 0x46"; +CM_ BO_ 297 "Message sent every 20ms. Checksum : Sum of all first 5 bytes + 0x16"; +CM_ BO_ 281 "Message sent every 10ms. Checksum : Sum of all first 5 bytes + 0x17"; +CM_ BO_ 265 "Message sent every 10ms. Checksum : Sum of all first 7 bytes + 0x7"; +CM_ BO_ 521 "Message sent every 100ms. All fixed bytes, no checksum."; +CM_ BO_ 537 "Message sent every 100ms. Checksum : use all first 7 bytes with the SAE J1850 CRC algo"; +CM_ BO_ 425 "Message sent every 20ms. Checksum : Sum of all first 4 bytes + 0x38"; +CM_ BO_ 729 "Message sent every 1000ms. All fixed bytes, no checksum."; + +BA_DEF_ "BusType" STRING ; +BA_DEF_ BO_ "GenMsgCycleTime" INT 0 0; +BA_DEF_ SG_ "FieldType" STRING ; + +BA_DEF_DEF_ "BusType" "CAN"; +BA_DEF_DEF_ "FieldType" ""; +BA_DEF_DEF_ "GenMsgCycleTime" 0; + +BA_ "GenMsgCycleTime" BO_ 697 250; +BA_ "GenMsgCycleTime" BO_ 681 1000; +BA_ "GenMsgCycleTime" BO_ 409 10; +BA_ "GenMsgCycleTime" BO_ 361 10; +BA_ "GenMsgCycleTime" BO_ 345 20; +BA_ "GenMsgCycleTime" BO_ 329 20; +BA_ "GenMsgCycleTime" BO_ 297 20; +BA_ "GenMsgCycleTime" BO_ 281 10; +BA_ "GenMsgCycleTime" BO_ 265 10; +BA_ "GenMsgCycleTime" BO_ 521 100; +BA_ "GenMsgCycleTime" BO_ 537 100; +BA_ "GenMsgCycleTime" BO_ 425 20; +BA_ "GenMsgCycleTime" BO_ 729 1000; + +VAL_ 681 Msg2A9_FourWheelDrive 3 "SNA" 2 "UNUSED" 1 "4WD" 0 "2WD" ;""") + + for base_id in list(M_RANGE) + list(L_RANGE): + f.write(get_val_definition(base_id)) diff --git a/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py b/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py new file mode 100755 index 0000000000..36355d4a03 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/tesla/tesla_radar_continental.py @@ -0,0 +1,77 @@ +#!/usr/bin/env python3 + +import os +from opendbc.dbc.generator.tesla._radar_common import get_radar_point_definition, get_val_definition + +if __name__ == "__main__": + dbc_name = os.path.basename(__file__).replace(".py", ".dbc") + tesla_path = os.path.dirname(os.path.realpath(__file__)) + with open(os.path.join(tesla_path, dbc_name), "w", encoding='utf-8') as f: + f.write(""" +VERSION "" + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: Autopilot Radar Diag + +BO_ 1025 RadarStatus: 8 Radar + SG_ carparkDetected : 29|1@1+ (1,0) [0|1] "" Autopilot + SG_ decreaseBlockage : 25|1@1+ (1,0) [0|1] "" Autopilot + SG_ horizontMisalignment : 8|12@1+ (0.00012207,-0.25) [-0.25|0.249878] "rad" Autopilot + SG_ increaseBlockage : 24|1@1+ (1,0) [0|1] "" Autopilot + SG_ lowPowerMode : 20|2@1+ (1,0) [0|3] "" Autopilot + SG_ powerOnSelfTest : 22|1@1+ (1,0) [0|1] "" Autopilot + SG_ sensorBlocked : 26|1@1+ (1,0) [0|1] "" Autopilot + SG_ sensorInfoConsistBit : 30|1@1+ (1,0) [0|1] "" Autopilot + SG_ sensorReplace : 31|1@1+ (1,0) [0|1] "" Autopilot + SG_ shortTermUnavailable : 23|1@1+ (1,0) [0|1] "" Autopilot + SG_ tunnelDetected : 28|1@1+ (1,0) [0|1] "" Autopilot + SG_ vehDynamicsError : 27|1@1+ (1,0) [0|1] "" Autopilot + SG_ verticalMisalignment : 0|8@1+ (0.00195313,-0.25) [-0.25|0.248047] "rad" Autopilot + +BO_ 1617 Radar_udsResponse: 8 Radar + SG_ Radar_udsResponseData : 7|64@0+ (1,0) [0|1.84467e+19] "" Diag + +BO_ 1601 UDS_radcRequest: 8 Diag + SG_ UDS_radcRequestData : 7|64@0+ (1,0) [0|1.84467e+19] "" Radar +""") + + POINT_RANGE = range(0x410, 0x45E + 1, 2) + for i, base_id in enumerate(POINT_RANGE): + f.write(get_radar_point_definition(base_id, f"RadarPoint{i}")) + + f.write(""" +VAL_ 1025 lowPowerMode 1 "COMMANDED_LOW_POWER" 0 "DEFAULT_LOW_POWER" 2 "NORMAL_POWER" 3 "SNA";""") + + for base_id in list(POINT_RANGE): + f.write(get_val_definition(base_id)) diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc new file mode 100644 index 0000000000..58bcfd3be4 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/_community.dbc @@ -0,0 +1,41 @@ +BO_ 359 STEERING_IPAS_COMMA: 8 IPAS + SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX + SG_ ANGLE : 3|12@0- (1.5,0) [-510|510] "deg" XXX + SG_ SET_ME_X10 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ DIRECTION_CMD : 38|2@0+ (1,0) [0|3] "" XXX + SG_ SET_ME_X40 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00_1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "BO_ STEERING_IPAS_COMMA: Copy of msg 614 so we can do angle control while the Park Assist ECU is connected (Panda spoofs 614 with 359 on connector J70). Note that addresses 0x266 and 0x167 are checksum-invariant"; + +BO_ 512 GAS_COMMAND: 6 EON + SG_ GAS_COMMAND : 7|16@0+ (0.159375,-75.555) [0|1] "" INTERCEPTOR + SG_ GAS_COMMAND2 : 23|16@0+ (0.159375,-151.111) [0|1] "" INTERCEPTOR + SG_ ENABLE : 39|1@0+ (1,0) [0|1] "" INTERCEPTOR + SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" INTERCEPTOR + SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" INTERCEPTOR + +BO_ 513 GAS_SENSOR: 6 INTERCEPTOR + SG_ INTERCEPTOR_GAS : 7|16@0+ (1,0) [0|1] "" EON + SG_ INTERCEPTOR_GAS2 : 23|16@0+ (1,0) [0|1] "" EON + SG_ STATE : 39|4@0+ (1,0) [0|15] "" EON + SG_ COUNTER_PEDAL : 35|4@0+ (1,0) [0|15] "" EON + SG_ CHECKSUM_PEDAL : 47|8@0+ (1,0) [0|255] "" EON + +VAL_ 513 STATE 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; + +BO_ 35 SECONDARY_STEER_ANGLE: 8 XXX + SG_ ZORRO_STEER : 7|24@0- (0.004901594652,0) [-500|500] "" XXX + +CM_ "BO_ SECONDARY_STEER_ANGLE: ZSS is a high-precision steering angle sensor that can replace the lower resolution sensor in most TSS1 Toyotas. Learn more: https://github.com/commaai/openpilot/wiki/Toyota-Lexus#zorro-steering-sensor-zss"; + +BO_ 767 SDSU: 8 XXX + SG_ FD_BUTTON : 7|1@0+ (1,0) [0|1] "" XXX + SG_ STATE : 23|4@0+ (1,0) [0|15] "" XXX + +CM_ "BO_ SDSU: The sDSU is a modified DSU for use in TSS-P Toyotas. Learn more: https://github.com/RetroPilot/ocelot/tree/main/firmware/smart_dsu"; +CM_ SG_ 767 FD_BUTTON "The follow distance button signal as forwarded by the sdsu"; + +VAL_ 767 STATE 7 "STATE_AEB_CTRL" 6 "FAULT_INVALID" 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc new file mode 100644 index 0000000000..92ddd5fc16 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_2017.dbc @@ -0,0 +1,548 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX DSU HCU EPS IPAS CGW BGM + +BO_ 36 KINEMATICS: 8 XXX + SG_ ACCEL_Y : 33|10@0+ (0.03589,-18.375) [0|65535] "m/s^2" XXX + SG_ YAW_RATE : 1|10@0+ (0.244,-125) [0|65535] "deg/s" XXX + SG_ ACCEL_X : 17|10@0+ (0.03589,-18.375) [0|65535] "m/s^2" XXX + +BO_ 37 STEER_ANGLE_SENSOR: 8 XXX + SG_ STEER_ANGLE : 3|12@0- (1.5,0) [-500|500] "deg" XXX + SG_ STEER_FRACTION : 39|4@0- (0.1,0) [-0.7|0.7] "deg" XXX + SG_ STEER_RATE : 35|12@0- (1,0) [-2000|2000] "deg/s" XXX + +BO_ 119 ENG2F41: 6 CGW + SG_ FDRV : 7|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ FDRVREAL : 23|13@0- (10,0) [0|0] "N" Vector__XXX + SG_ XAECT : 39|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XFDRVCOL : 38|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FDRVSELP : 34|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ ENG2F41S : 47|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 120 ENG2F42: 4 CGW + SG_ FAVLMCHH : 7|16@0- (2,0) [0|0] "N" Vector__XX228X + SG_ CCRNG : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FDRVTYPD : 22|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ GEARHD : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ENG2F42S : 31|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 166 BRAKE: 8 XXX + SG_ BRAKE_AMOUNT : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_FORCE : 23|8@0+ (40,0) [0|10200] "N" XXX + +BO_ 170 WHEEL_SPEEDS: 8 XXX + SG_ WHEEL_SPEED_FR : 7|16@0+ (0.01,-67.67) [0|250] "km/h" XXX + SG_ WHEEL_SPEED_FL : 23|16@0+ (0.01,-67.67) [0|250] "km/h" XXX + SG_ WHEEL_SPEED_RR : 39|16@0+ (0.01,-67.67) [0|250] "km/h" XXX + SG_ WHEEL_SPEED_RL : 55|16@0+ (0.01,-67.67) [0|250] "km/h" XXX + +BO_ 180 SPEED: 8 XXX + SG_ ENCODER : 39|8@0+ (1,0) [0|255] "" XXX + SG_ SPEED : 47|16@0+ (0.01,0) [0|250] "km/h" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 295 GEAR_PACKET_HYBRID: 8 XXX + SG_ FDRVREAL : 26|11@0- (25,0) [-25600|25575] "N" XXX + SG_ UNKNOWN : 55|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ GEAR : 47|4@0+ (1,0) [0|15] "" XXX + +BO_ 353 DSU_SPEED: 7 XXX + SG_ FORWARD_SPEED : 15|16@0- (0.00390625,-30) [0|255] "km/h" XXX + +BO_ 452 ENGINE_RPM: 8 CGW + SG_ RPM : 7|16@0- (0.78125,0) [0|0] "rpm" SCS + SG_ ENGINE_RUNNING : 27|1@0+ (1,0) [0|1] "" XXX + +BO_ 467 PCM_CRUISE_2: 8 XXX + SG_ BRAKE_PRESSED : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PCM_FOLLOW_DISTANCE : 12|2@0+ (1,0) [0|3] "" XXX + SG_ LOW_SPEED_LOCKOUT : 14|2@0+ (1,0) [0|3] "" XXX + SG_ MAIN_ON : 15|1@0+ (1,0) [0|1] "" XXX + SG_ SET_SPEED : 23|8@0+ (1,0) [0|255] "km/h" XXX + SG_ ACC_FAULTED : 47|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 552 VSC1S29: 4 CGW + SG_ ICBACT : 7|1@0+ (1,0) [0|0] "" DS1 + SG_ DVS0PCS : 6|15@0- (0.001,0) [0|0] "m/s^2" DS1 + SG_ SM228 : 31|8@0+ (1,0) [0|0] "" DS1 + +BO_ 560 BRAKE_2: 7 XXX + SG_ BRAKE_PRESSED : 26|1@0+ (1,0) [0|1] "" XXX + +BO_ 581 GAS_PEDAL_HYBRID: 8 XXX + SG_ GAS_PEDAL : 23|8@0+ (0.005,0) [0|1] "" XXX + +BO_ 608 STEER_TORQUE_SENSOR: 8 XXX + SG_ STEER_TORQUE_EPS : 47|16@0- (1,0) [-32768|32767] "" XXX + SG_ STEER_TORQUE_DRIVER : 15|16@0- (1,0) [-32768|32767] "" XXX + SG_ STEER_ANGLE : 31|16@0- (0.0573,0) [-500|500] "" XXX + SG_ STEER_ANGLE_INITIALIZING : 3|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_OVERRIDE : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 614 STEERING_IPAS: 8 IPAS + SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX + SG_ ANGLE : 3|12@0- (1.5,0) [-510|510] "deg" XXX + SG_ SET_ME_X10 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ DIRECTION_CMD : 38|2@0+ (1,0) [0|3] "" XXX + SG_ SET_ME_X40 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00_1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 742 LEAD_INFO: 8 DSU + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" HCU + SG_ LEAD_REL_SPEED : 23|12@0- (0.025,0) [-100|100] "m/s" HCU + SG_ LEAD_LONG_DIST : 7|13@0+ (0.05,0) [0|300] "m" HCU + +BO_ 800 VSC1S07: 8 CGW + SG_ FBKRLY : 6|1@0+ (1,0) [0|0] "" DS1 + SG_ FVSCM : 4|1@0+ (1,0) [0|0] "" DS1 + SG_ FVSCSFT : 3|1@0+ (1,0) [0|0] "" DS1 + SG_ FABS : 2|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ TSVSC : 1|1@0+ (1,0) [0|0] "" DS1 + SG_ FVSCL : 0|1@0+ (1,0) [0|0] "" DS1 + SG_ RQCSTBKB : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PSBSTBY : 14|1@0+ (1,0) [0|0] "" DS1 + SG_ P2BRXMK : 13|1@0+ (1,0) [0|0] "" DS1 + SG_ MCC : 11|1@0+ (1,0) [0|0] "" DS1 + SG_ RQBKB : 10|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRSTOP : 9|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ BRKON : 8|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ ASLP : 23|8@0- (1,0) [0|0] "deg" DS1 + SG_ BRTYPACC : 31|2@0+ (1,0) [0|0] "" DS1 + SG_ BRKABT3 : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRKABT2 : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRKABT1 : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GVC : 39|8@0- (0.04,0) [0|0] "m/s^2" DS1 + SG_ XGVCINV : 43|1@0+ (1,0) [0|0] "" DS1 + SG_ S07CNT : 52|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSBRSTA : 50|2@0+ (1,0) [0|0] "" DS1 + SG_ VSC07SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 835 ACC_CONTROL: 8 DSU + SG_ ACCEL_CMD : 7|16@0- (0.001,0) [-20|20] "m/s^2" HCU + SG_ ALLOW_LONG_PRESS : 17|2@0+ (1,0) [0|2] "" XXX + SG_ ACC_MALFUNCTION : 18|1@0+ (1,0) [0|0] "" XXX + SG_ RADAR_DIRTY : 19|1@0+ (1,0) [0|1] "" XXX + SG_ DISTANCE : 20|1@0+ (1,0) [0|1] "" XXX + SG_ MINI_CAR : 21|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_TYPE : 23|2@0+ (1,0) [0|3] "" HCU + SG_ CANCEL_REQ : 24|1@0+ (1,0) [0|1] "" HCU + SG_ ACC_CUT_IN : 25|1@0+ (1,0) [0|1] "" XXX + SG_ LEAD_VEHICLE_STOPPED : 29|1@0+ (1,0) [0|0] "" DSU + SG_ PERMIT_BRAKING : 30|1@0+ (1,0) [0|1] "" HCU + SG_ RELEASE_STANDSTILL : 31|1@0+ (1,0) [0|1] "" HCU + SG_ ITS_CONNECT_LEAD : 39|8@0+ (1,0) [0|1] "" Vector__XXX + SG_ ACCEL_CMD_ALT : 47|8@0- (0.05,0) [0|0] "m/s^2" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 865 CLUTCH: 8 XXX + SG_ ACC_FAULTED : 32|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_PEDAL_ALT : 23|8@0+ (0.005,0) [0|1] "" XXX + SG_ CLUTCH_RELEASED : 38|1@0+ (1,0) [0|1] "" XXX + SG_ ACCEL_NET : 48|16@1+ (0.0002,-6.5536) [-6.5536|6.5534] "" XXX + +BO_ 869 DSU_CRUISE : 7 DSU + SG_ RES_BTN : 3|1@0+ (1,0) [0|0] "" XXX + SG_ SET_BTN : 2|1@0+ (1,0) [0|0] "" XXX + SG_ CANCEL_BTN : 1|1@0+ (1,0) [0|0] "" XXX + SG_ MAIN_ON : 0|1@0+ (1,0) [0|0] "" XXX + SG_ SET_SPEED : 15|8@0+ (1,0) [0|0] "km/h" XXX + SG_ CRUISE_REQUEST : 31|8@0+ (100,-12800) [0|0] "N" XXX + SG_ LEAD_DISTANCE : 39|8@0+ (1,0) [0|0] "m" XXX + +BO_ 921 PCM_CRUISE_SM: 8 XXX + SG_ MAIN_ON : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_STATE : 11|4@0+ (1,0) [0|15] "" XXX + SG_ DISTANCE_LINES : 14|2@0+ (1,0) [0|3] "" XXX + SG_ TEMP_ACC_FAULTED : 15|1@0+ (1,0) [0|1] "" XXX + SG_ UI_SET_SPEED : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 951 ESP_CONTROL: 8 ESP + SG_ TC_DISABLED : 13|1@0+ (1,0) [0|1] "" XXX + SG_ VSC_DISABLED : 12|2@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_LIGHTS_ACC : 18|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_HOLD_ENABLED : 33|1@1+ (1,0) [0|1] "" XXX + SG_ BRAKE_HOLD_ACTIVE : 36|1@0+ (1,0) [0|1] "" XXX + +BO_ 956 GEAR_PACKET: 8 XXX + SG_ SPORT_ON : 2|1@0+ (1,0) [0|1] "" XXX + SG_ GEAR : 13|6@0+ (1,0) [0|63] "" XXX + SG_ SPORT_GEAR_ON : 33|1@0+ (1,0) [0|1] "" XXX + SG_ SPORT_GEAR : 38|3@0+ (1,0) [0|7] "" XXX + SG_ ECON_ON : 40|1@0+ (1,0) [0|1] "" XXX + SG_ B_GEAR_ENGAGED : 41|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVE_ENGAGED : 47|1@0+ (1,0) [0|1] "" XXX + +BO_ 1005 REVERSE_CAMERA_STATE: 2 BGM + SG_ REVERSE_CAMERA_GUIDELINES : 9|2@0+ (1,0) [1|3] "" XXX + +BO_ 1009 PCM_CRUISE_ALT: 8 XXX + SG_ PCM_FOLLOW_DISTANCE : 4|2@1+ (1,0) [0|3] "" XXX + SG_ MAIN_ON : 13|1@0+ (1,0) [0|3] "" XXX + SG_ CRUISE_STATE : 10|1@0+ (1,0) [0|1] "" XXX + SG_ UI_SET_SPEED : 23|8@0+ (1,0) [0|255] "mph" XXX + +BO_ 1020 SOLAR_SENSOR: 8 XXX + SG_ LUX_SENSOR : 55|13@0+ (1,0) [0|0] "" XXX + +BO_ 1041 PCS_HUD: 8 DSU + SG_ PCS_INDICATOR : 7|2@0+ (1,0) [0|3] "" XXX + SG_ FCW : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_X20 : 15|8@0+ (1,0) [0|1] "" XXX + SG_ PCS_DUST : 34|1@0+ (1,0) [0|0] "" XXX + SG_ PCS_TEMP : 35|1@0+ (1,0) [0|0] "" XXX + SG_ PCS_DUST2 : 41|1@0+ (1,0) [0|0] "" XXX + SG_ PCS_TEMP2 : 42|1@0+ (1,0) [0|0] "" XXX + SG_ SET_ME_X10 : 39|8@0+ (1,0) [0|1] "" XXX + SG_ PCS_OFF : 40|1@0+ (1,0) [0|0] "" XXX + SG_ FRD_ADJ : 53|3@0+ (1,0) [0|0] "" XXX + SG_ PCS_SENSITIVITY : 55|8@0+ (1,0) [0|1] "" XXX + +BO_ 1042 LKAS_HUD: 8 DSU + SG_ BARRIERS : 1|2@0+ (1,0) [0|3] "" XXX + SG_ RIGHT_LINE : 3|2@0+ (1,0) [0|3] "" XXX + SG_ LEFT_LINE : 5|2@0+ (1,0) [0|3] "" XXX + SG_ LKAS_STATUS : 7|2@0+ (1,0) [0|3] "" XXX + SG_ LDA_ALERT : 9|2@0+ (1,0) [0|3] "" XXX + SG_ LDW_EXIST : 10|1@0+ (1,0) [0|1] "" XXX + SG_ TWO_BEEPS : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ADJUSTING_CAMERA : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_UNAVAILABLE_QUIET : 14|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_MALFUNCTION : 15|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_UNAVAILABLE : 16|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_SENSITIVITY : 18|2@0+ (1,0) [0|3] "" XXX + SG_ LDA_SA_TOGGLE : 20|2@0+ (1,0) [0|3] "" XXX + SG_ LDA_MESSAGES : 23|3@0+ (1,0) [0|1] "" XXX + SG_ LDA_ON_MESSAGE : 31|2@0+ (1,0) [0|3] "" XXX + SG_ REPEATED_BEEPS : 32|1@0+ (1,0) [0|1] "" XXX + SG_ LANE_SWAY_TOGGLE : 43|1@0+ (1,0) [0|1] "" XXX + SG_ LANE_SWAY_SENSITIVITY : 45|2@0+ (1,0) [0|3] "" XXX + SG_ TAKE_CONTROL : 46|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_FRONT_CAMERA_BLOCKED : 47|1@0+ (1,0) [0|1] "" XXX + SG_ LANE_SWAY_BUZZER : 50|2@0+ (1,0) [0|0] "" XXX + SG_ LANE_SWAY_FLD : 53|3@0+ (1,0) [0|7] "" XXX + SG_ LANE_SWAY_WARNING : 55|2@0+ (1,0) [0|3] "" XXX + SG_ SET_ME_X01 : 42|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_X02 : 63|8@0+ (1,0) [0|1] "" XXX + +BO_ 1043 TIME : 8 CGW + SG_ YEAR : 7|8@0+ (1,0) [0|0] "year" XXX + SG_ MONTH : 15|8@0+ (1,0) [0|0] "month" XXX + SG_ DAY : 23|8@0+ (1,0) [0|0] "day" XXX + SG_ HOUR : 31|8@0+ (1,0) [0|0] "hour" XXX + SG_ MINUTE : 39|8@0+ (1,0) [0|0] "minute" XXX + SG_ GMT_DIFF : 55|1@0+ (1,0) [0|0] "" XXX + SG_ GMTDIFF_HOURS : 54|4@0+ (1,0) [0|0] "hours" XXX + SG_ GMTDIFF_MINUTES : 50|6@0+ (1,0) [0|0] "minutes" XXX + SG_ SUMMER : 60|1@0+ (1,0) [0|0] "" XXX + +BO_ 1044 AUTO_HIGH_BEAM: 8 FCM + SG_ AHB_DUTY : 47|8@0+ (0.5,0) [0|0] "%" Vector__XXX + SG_ F_AHB : 55|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_AHB : 51|4@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1056 VSC1S08: 8 CGW + SG_ YR1Z : 7|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV + SG_ YR2Z : 23|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV + SG_ GL1Z : 39|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS + SG_ GL2Z : 47|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS + SG_ YRGSDIR : 55|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,SCS + SG_ GLZS : 51|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ YRZF : 50|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRZS : 49|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRZKS : 48|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ VSC08SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + +BO_ 1083 AUTOPARK_STATUS: 8 IPAS + SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX + +BO_ 1161 RSA1: 8 FCM + SG_ TSGN1 : 7|8@0+ (1,0) [0|0] "" XXX + SG_ TSGNGRY1 : 12|3@0+ (1,0) [0|0] "" XXX + SG_ TSGNHLT1 : 9|2@0+ (1,0) [0|0] "" XXX + SG_ SPDVAL1 : 23|8@0+ (1,0) [0|0] "km/h" XXX + SG_ SPLSGN1 : 31|4@0+ (1,0) [0|0] "" XXX + SG_ SPLSGN2 : 27|4@0+ (1,0) [0|0] "" XXX + SG_ TSGN2 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ TSGNGRY2 : 44|3@0+ (1,0) [0|0] "" XXX + SG_ TSGNHLT2 : 41|2@0+ (1,0) [0|0] "" XXX + SG_ SPDVAL2 : 55|8@0+ (1,0) [0|0] "" XXX + SG_ BZRRQ_P : 63|2@0+ (1,0) [0|0] "" XXX + SG_ BZRRQ_A : 61|2@0+ (1,0) [0|0] "" XXX + SG_ SYNCID1 : 59|4@0+ (1,0) [0|0] "" XXX + +BO_ 1162 RSA2: 8 FCM + SG_ TSGN3 : 7|8@0+ (1,0) [0|0] "" XXX + SG_ TSGNGRY3 : 12|3@0+ (1,0) [0|0] "" XXX + SG_ TSGNHLT3 : 9|2@0+ (1,0) [0|0] "" XXX + SG_ SPLSGN3 : 31|4@0+ (1,0) [0|0] "" XXX + SG_ SPLSGN4 : 27|4@0+ (1,0) [0|0] "" XXX + SG_ TSGN4 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ TSGNGRY4 : 44|3@0+ (1,0) [0|0] "" XXX + SG_ TSGNHLT4 : 41|2@0+ (1,0) [0|0] "" XXX + SG_ DPSGNREQ : 54|1@0+ (1,0) [0|0] "" XXX + SG_ SGNNUMP : 53|3@0+ (1,0) [0|0] "" XXX + SG_ SGNNUMA : 50|3@0+ (1,0) [0|0] "" XXX + SG_ SPDUNT : 63|2@0+ (1,0) [0|0] "" XXX + SG_ TSRWMSG : 61|2@0+ (1,0) [0|0] "" XXX + SG_ SYNCID2 : 59|4@0+ (1,0) [0|0] "" XXX + +BO_ 1163 RSA3: 8 FCM + SG_ TSREQPD : 7|1@0+ (1,0) [0|0] "" XXX + SG_ TSRMSW : 6|1@0+ (1,0) [0|0] "" XXX + SG_ OTSGNNTM : 5|2@0+ (1,0) [0|0] "" XXX + SG_ NTLVLSPD : 3|2@0+ (1,0) [0|0] "" XXX + SG_ OVSPNTM : 1|2@0+ (1,0) [0|0] "" XXX + SG_ OVSPVALL : 11|4@0+ (1,-5) [0|0] "" XXX + SG_ OVSPVALM : 19|4@0+ (1,-5) [0|0] "" XXX + SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" XXX + SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" XXX + +BO_ 1408 VIN_PART_1: 8 CGW + SG_ VIN_1 : 7|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_2 : 15|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_3 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_4 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_5 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_6 : 47|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_7 : 55|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_8 : 63|8@0+ (1,0) [0|0] "" XXX + +BO_ 1409 VIN_PART_2: 8 CGW + SG_ VIN_9 : 7|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_10 : 15|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_11 : 23|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_12 : 31|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_13 : 39|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_14 : 47|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_15 : 55|8@0+ (1,0) [0|0] "" XXX + SG_ VIN_16 : 63|8@0+ (1,0) [0|0] "" XXX + +BO_ 1410 VIN_PART_3: 8 CGW + SG_ VIN_17 : 7|8@0+ (1,0) [0|0] "" XXX + +BO_ 1552 BODY_CONTROL_STATE_2: 8 XXX + SG_ UI_SPEED : 23|8@0+ (1,0) [0|255] "" XXX + SG_ METER_SLIDER_BRIGHTNESS_PCT : 30|7@0+ (1,0) [12|100] "%" XXX + SG_ METER_SLIDER_LOW_BRIGHTNESS : 37|1@0+ (1,0) [0|1] "" XXX + SG_ METER_SLIDER_DIMMED : 38|1@0+ (1,0) [0|1] "" XXX + SG_ UNITS : 63|3@0+ (1,0) [1|4] "" XXX + +BO_ 1553 UI_SETTING: 8 XXX + SG_ UNITS : 26|2@0+ (1,0) [0|3] "" XXX + SG_ ODOMETER : 39|32@0+ (1,0) [0|1048575] "" XXX + +BO_ 1556 BLINKERS_STATE: 8 XXX + SG_ BLINKER_BUTTON_PRESSED : 15|1@0+ (1,0) [0|1] "" XXX + SG_ HAZARD_LIGHT : 27|1@0+ (1,0) [0|1] "" XXX + SG_ TURN_SIGNALS : 29|2@0+ (1,0) [0|3] "" XXX + +BO_ 1568 BODY_CONTROL_STATE: 8 XXX + SG_ METER_DIMMED : 38|1@0+ (1,0) [0|1] "" XXX + SG_ PARKING_BRAKE : 60|1@0+ (1,0) [0|1] "" XXX + SG_ SEATBELT_DRIVER_UNLATCHED : 62|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FL : 45|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 42|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 43|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 44|1@0+ (1,0) [0|1] "" XXX + +BO_ 1570 LIGHT_STALK: 8 SCM + SG_ AUTO_HIGH_BEAM : 37|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_FOG : 27|1@0+ (1,0) [0|1] "" XXX + SG_ PARKING_LIGHT : 28|1@0+ (1,0) [0|1] "" XXX + SG_ LOW_BEAM : 29|1@0+ (1,0) [0|1] "" XXX + SG_ HIGH_BEAM : 30|1@0+ (1,0) [0|1] "" XXX + SG_ DAYTIME_RUNNING_LIGHT : 31|1@0+ (1,0) [0|1] "" XXX + +BO_ 1571 CERTIFICATION_ECU: 8 CGW + SG_ DOOR_LOCK_FEEDBACK_LIGHT : 15|1@0+ (1,0) [0|0] "" XXX + SG_ KEYFOB_LOCKING_FEEDBACK_LIGHT : 61|1@0+ (1,0) [0|0] "" XXX + SG_ KEYFOB_UNLOCKING_FEEDBACK_LIGHT : 62|1@0+ (1,0) [0|0] "" XXX + +BO_ 1592 DOOR_LOCKS: 8 XXX + SG_ LOCK_STATUS_CHANGED : 15|1@0+ (1,0) [0|1] "" XXX + SG_ LOCK_STATUS : 20|1@0+ (1,0) [0|1] "" XXX + SG_ LOCKED_VIA_KEYFOB : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 1779 ADAS_TOGGLE_STATE: 8 XXX + SG_ OK_BUTTON_PRESSED : 15|1@0+ (1,0) [0|1] "" BCM + SG_ SWS_TOGGLE_CMD : 24|1@0+ (1,0) [0|1] "" XXX + SG_ SWS_SENSITIVITY_CMD : 26|2@0+ (1,0) [0|3] "" XXX + SG_ LKAS_ON_CMD : 28|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_OFF_CMD : 29|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_SENSITIVITY_HI_CMD : 30|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_SENSITIVITY_STD_CMD : 31|1@0+ (1,0) [0|1] "" XXX + SG_ IPAS_TOGGLE : 34|1@0+ (1,0) [0|1] "" XXX + SG_ BSM_TOGGLE_CMD : 37|1@0+ (1,0) [0|1] "" XXX + SG_ IPAS_SONAR_TOGGLE : 38|1@0+ (1,0) [0|1] "" XXX + SG_ PCS_TOGGLE_CMD : 40|1@0+ (1,0) [0|1] "" XXX + SG_ PCS_SENSITIVITY_CMD : 41|1@0+ (1,0) [0|1] "" XXX + +CM_ SG_ 36 YAW_RATE "verify"; +CM_ SG_ 36 ACCEL_X "x-axis accel"; +CM_ SG_ 37 STEER_FRACTION "1/15th of the signal STEER_ANGLE, which is 1.5 deg; note that 0x8 is never set"; +CM_ SG_ 37 STEER_RATE "factor is tbd"; +CM_ SG_ 119 FDRVREAL "ICE only: force applied by wheels from the engine. includes creeping force, regen, and engine braking"; +CM_ SG_ 166 BRAKE_FORCE "hybrid only: force applied by friction brakes from user or ACC command"; +CM_ SG_ 295 FDRVREAL "hybrid only: force applied by wheels from the engine and/or electric motors. includes creeping force, regen, and engine braking"; +CM_ SG_ 467 ACC_FAULTED "1 when ACC is faulted and the PCM disallows engagement"; +CM_ SG_ 467 SET_SPEED "43 km/h are shown as 28 mph, so conversion isn't perfect"; +CM_ SG_ 467 LOW_SPEED_LOCKOUT "in low speed lockout, system would always disengage below 28mph"; +CM_ SG_ 560 BRAKE_PRESSED "another brake pressed?"; +CM_ SG_ 581 GAS_PEDAL "it seems slightly filtered"; +CM_ SG_ 608 STEER_TORQUE_DRIVER "driver torque"; +CM_ SG_ 608 STEER_OVERRIDE "set when driver torque exceeds a certain value"; +CM_ SG_ 614 ANGLE "set to measured angle when ipas control isn't active"; +CM_ SG_ 800 SLOPE_ANGLE "potentially used by the PCM to compensate for road pitch"; +CM_ SG_ 800 ACCEL "filtered ego acceleration"; +CM_ SG_ 835 ACC_TYPE "if 2, car is likely to have a permanent low speed lockout. 1 is ok"; +CM_ SG_ 835 RADAR_DIRTY "Display Clean Radar Sensor message on HUD"; +CM_ SG_ 835 ACC_MALFUNCTION "display ACC fault on dash if set to 1"; +CM_ SG_ 835 ACC_CUT_IN "Display blinking yellow lead if set to 1"; +CM_ SG_ 835 DISTANCE "Cycle through ACC following distance from long, mid, short when set to 1"; +CM_ SG_ 835 ITS_CONNECT_LEAD "Displayed when lead car is capable of ITS Connect"; +CM_ SG_ 835 LEAD_VEHICLE_STOPPED "Set to 1 when lead is stopped, likely only used in older TSS-P vehicles"; +CM_ SG_ 835 ALLOW_LONG_PRESS "Enable Toyota's factory set speed increment behaviour, available on both metrics cars and imperial unit cars"; +CM_ SG_ 835 PERMIT_BRAKING "Original ACC has this going high when a car in front is detected. In openpilot and before the PERMIT_BRAKING name, this was 'SET_ME_1' and is hardcoded to be high. Unsure if only informational or has an effect though existing usage in openpilot is to always set it to 1. Originally 'PMTBRKG' in the leaked toyota_2017_ref_pt.dbc file and name expansion speculated to be PerMiT BRaKinG."; +CM_ SG_ 835 ACCEL_CMD_ALT "Copy of main ACCEL_CMD, but across 8 bits instead of 16 bits like ACCEL_CMD. Unsure if only informational or has an effect. Likely informational as existing openpilot sets this to 0 and no loss of functionality observed. Originally 'AT_RAW' in leaked toyota_2017_ref_pt.dbc file."; +CM_ SG_ 865 GAS_PEDAL_ALT "copy of main GAS_PEDAL. Both use 8 bits. Might indicate that this message is for pedals."; +CM_ SG_ 865 CLUTCH_RELEASED "boolean of clutch for 6MT."; +CM_ SG_ 865 ACCEL_NET "net positive acceleration (gas) applied by the system if on flat ground, may not include creeping force"; +CM_ SG_ 865 ACC_FAULTED "1 when ACC is faulted and the PCM disallows engagement. Also describes a lockout when the ACC_CONTROL->ACC_MALFUNCTION bit is set."; +CM_ SG_ 921 UI_SET_SPEED "set speed shown in the vehicle's UI with the vehicle's unit"; +CM_ SG_ 921 TEMP_ACC_FAULTED "1 when the UI is displaying or playing fault-related alerts or sounds. Also 1 when pressing main on."; +CM_ SG_ 951 BRAKE_LIGHTS_ACC "brake lights when ACC commands decel"; +CM_ SG_ 956 GEAR "on 6MT, only R shows."; +CM_ SG_ 1009 UI_SET_SPEED "units seem to be whatever the car is set to"; +CM_ SG_ 1041 PCS_INDICATOR "Pre-Collision System Indicator"; +CM_ SG_ 1041 PCS_SENSITIVITY "Pre-Collision System Sensitivity"; +CM_ SG_ 1041 PCS_DUST "alert: Front Camera Low Visibility Unavailable See Owner's Manual"; +CM_ SG_ 1041 PCS_DUST2 "alert: Pre-Collision System Radar Sensor Blocked Unavailable Clean Radar Sensor"; +CM_ SG_ 1041 PCS_TEMP "alert: Front Camera Out of Temperature Range Unavailable Wait until Normal Temperature"; +CM_ SG_ 1041 PCS_TEMP2 "alert: Pre-Collision System Out of Temperature Range Unavailable See Owner's Manual"; +CM_ SG_ 1041 FRD_ADJ "alert: ERROR ADJUSTING FRONT RADAR BEAM"; +CM_ SG_ 1042 LDA_SA_TOGGLE "LDA Steering Assist Toggle"; +CM_ SG_ 1042 LDW_EXIST "Unclear what this is, it's usually set to 0"; +CM_ SG_ 1042 LDA_SENSITIVITY "LDA Sensitivity"; +CM_ SG_ 1042 LDA_ON_MESSAGE "Display LDA Turned ON message"; +CM_ SG_ 1042 REPEATED_BEEPS "LDA audible warning"; +CM_ SG_ 1042 LDA_UNAVAILABLE_QUIET "LDA toggles and sensitivity settings are greyed out if set to 1"; +CM_ SG_ 1042 LDA_MESSAGES "Various LDA Messages"; +CM_ SG_ 1042 LDA_FRONT_CAMERA_BLOCKED "originally LDAFCVB, LDA related settings are greyed out if set to 1"; +CM_ SG_ 1042 TAKE_CONTROL "Please Control Steering Wheel warning"; +CM_ SG_ 1042 LANE_SWAY_TOGGLE "Lane Sway Warning System SWS Switch"; +CM_ SG_ 1042 LANE_SWAY_WARNING "Lane Sway Warning System Triggered"; +CM_ SG_ 1042 LANE_SWAY_FLD "Unknown signal for Lane Sway Warning System, set to 7 on stock system when SWS is enabled, 0 when SWS is disabled"; +CM_ SG_ 1042 LANE_SWAY_BUZZER "Similar to TWO_BEEPS"; +CM_ SG_ 1042 SET_ME_X01 "empty bit on leaked dbc, always set to 1 during normal operations"; +CM_ SG_ 1042 SET_ME_X02 "empty bit on leaked dbc, always set to 2 during normal operations"; +CM_ SG_ 1083 STATE "when the dashboard button is pressed, the value changes from zero to non-zero"; +CM_ SG_ 1161 SPDVAL1 "Numbers 0-199 is displayed, 200-254 displays circle without number and 255 is for no limit."; +CM_ SG_ 1161 SYNCID1 "counter from 1 to f at 1 Hz"; +CM_ SG_ 1161 SPDVAL2 "conditional speed value 70"; +CM_ SG_ 1162 SGNNUMP "1 if SPDVAL1 is set, otherwise 0"; +CM_ SG_ 1162 SYNCID2 "counter from 1 to f at 1 Hz"; +CM_ SG_ 1163 TSREQPD "always 1"; +CM_ SG_ 1163 TSRMSW "always 1"; +CM_ SG_ 1163 OTSGNNTM "always 3"; +CM_ SG_ 1163 NTLVLSPD "always 3"; +CM_ SG_ 1163 OVSPNTM "always 3"; +CM_ SG_ 1163 OVSPVALL "-5 at start then 2 after 2 seconds"; +CM_ SG_ 1163 OVSPVALM "-5 at start then 5 after 2 seconds"; +CM_ SG_ 1163 OVSPVALH "-5 at start then 10 after 2 seconds"; +CM_ SG_ 1163 TSRSPU "always 1"; +CM_ SG_ 1552 UI_SPEED "Does not appear to match dash"; +CM_ SG_ 1552 METER_SLIDER_BRIGHTNESS_PCT "Combination display brightness setting, scales from 12 per cent to 100 per cent, reflects combination meter settings only, not linked with headlight state"; +CM_ SG_ 1552 METER_SLIDER_LOW_BRIGHTNESS "Combination display low brightness mode, also controls footwell lighting"; +CM_ SG_ 1552 METER_SLIDER_DIMMED "Combination display slider not at max, reflects combination meter settings only, not linked with headlight state"; +CM_ SG_ 1553 ODOMETER "Unit is dependent upon units signal"; +CM_ SG_ 1592 LOCK_STATUS_CHANGED "1 on rising edge of lock/unlocking"; +CM_ SG_ 1592 LOCK_STATUS "The next 3 bits always seem to follow this signal."; +CM_ SG_ 1592 LOCKED_VIA_KEYFOB "1 for as long as car is locked with key fob or door handle touch"; + +VAL_ 295 GEAR 0 "P" 1 "R" 2 "N" 3 "D" 4 "B"; +VAL_ 467 LOW_SPEED_LOCKOUT 2 "low speed locked" 1 "ok"; +VAL_ 467 PCM_FOLLOW_DISTANCE 1 "far" 2 "medium" 3 "close"; +VAL_ 614 STATE 3 "enabled" 1 "disabled"; +VAL_ 614 DIRECTION_CMD 3 "right" 2 "center" 1 "left"; +VAL_ 835 ACC_TYPE 2 "permanent low speed lockout" 1 "ok"; +VAL_ 835 ACC_MALFUNCTION 1 "faulted" 0 "ok"; +VAL_ 835 ACC_CUT_IN 1 "CUT-IN Detected" 0 "clear"; +VAL_ 835 ALLOW_LONG_PRESS 2 "set speed increase by 5 speed units regardless" 1 "set speed increase by 1 speed unit on short press, 5 speed units on long press"; +VAL_ 865 CLUTCH_RELEASED 0 "clutch pressed any amount" 1 "clutch released"; +VAL_ 921 CRUISE_CONTROL_STATE 2 "disabled" 11 "hold" 10 "hold_waiting_user_cmd" 6 "enabled" 5 "faulted"; +VAL_ 921 DISTANCE_LINES 0 "not displayed" 1 "close" 2 "medium" 3 "far"; +VAL_ 956 SPORT_ON 0 "off" 1 "on"; +VAL_ 956 GEAR 0 "D" 1 "S" 8 "N" 16 "R" 32 "P"; +VAL_ 956 SPORT_GEAR_ON 0 "off" 1 "on"; +VAL_ 956 SPORT_GEAR 1 "S1" 2 "S2" 3 "S3" 4 "S4" 5 "S5" 6 "S6"; +VAL_ 956 ECON_ON 0 "off" 1 "on"; +VAL_ 956 B_GEAR_ENGAGED 0 "off" 1 "on"; +VAL_ 956 DRIVE_ENGAGED 0 "off" 1 "on"; +VAL_ 1005 REVERSE_CAMERA_GUIDELINES 3 "No guidelines" 2 "Static guidelines" 1 "Active guidelines"; +VAL_ 1009 PCM_FOLLOW_DISTANCE 1 "far" 2 "medium" 3 "close"; +VAL_ 1041 PCS_INDICATOR 2 "PCS Faulted" 1 "PCS Turned Off By User" 0 "PCS Enabled"; +VAL_ 1041 PCS_SENSITIVITY 64 "high sensitivity" 128 "mid sensitivity" 192 "low sensitivity" 0 "off"; +VAL_ 1042 LDA_ALERT 3 "hold with continuous beep" 2 "LDA unavailable" 1 "hold" 0 "none"; +VAL_ 1042 BARRIERS 3 "left" 2 "right" 1 "both" 0 "none"; +VAL_ 1042 RIGHT_LINE 3 "orange" 2 "faded" 1 "solid" 0 "none"; +VAL_ 1042 LKAS_STATUS 1 "on" 0 "off"; +VAL_ 1042 LEFT_LINE 3 "orange" 2 "faded" 1 "solid" 0 "none"; +VAL_ 1042 LDA_ON_MESSAGE 2 "Lane Departure Alert Turned ON, Steering Assist Inactive" 1 "Lane Departure Alert Turned ON, Steering Assist Active" 0 "clear"; +VAL_ 1042 LDA_SA_TOGGLE 2 "steering assist off" 1 "steering assist on"; +VAL_ 1042 LDA_SENSITIVITY 2 "standard" 1 "high" 0 "undefined"; +VAL_ 1042 LDA_MESSAGES 4 "lda unavailable at this speed" 1 "lda unavailable below approx 50km/h" 0 "ok"; +VAL_ 1042 LDA_FRONT_CAMERA_BLOCKED 1 "lda unavailable" 0 "ok"; +VAL_ 1042 TAKE_CONTROL 1 "take control" 0 "ok"; +VAL_ 1042 LANE_SWAY_WARNING 3 "ok" 2 "orange please take a break" 1 "prompt would you like to take a break" 0 "ok"; +VAL_ 1042 LANE_SWAY_BUZZER 3 "ok" 2 "beep twice" 1 "beep twice" 0 "ok"; +VAL_ 1161 TSGN1 1 "speed sign" 0 "none"; +VAL_ 1161 TSGN2 1 "speed sign" 0 "none"; +VAL_ 1161 SPLSGN2 15 "conditional blank" 4 "wet road" 5 "rain" 0 "none"; +VAL_ 1162 TSGN3 0 "none" 1 "speed sign" 2 "0 unlimited" 7 "unlimited" 16 "highway" 17 "no highway" 18 "motorway" 19 "no motorway" 20 "in city" 21 "outside city" 22 "pedestrian area" 23 "no pedestrian area" 65 "no overtaking left" 66 "no overtaking right" 67 "overtaking allowed again" 81 "no right turn" 97 "stop" 105 "yield" 113 "stop" 114 "yield us" 129 "no entry" 138 "no entry tss2" 145 "do not enter"; +VAL_ 1162 SPLSGN3 15 "conditional blank" 4 "wet road" 5 "rain" 0 "none"; +VAL_ 1552 METER_SLIDER_LOW_BRIGHTNESS 1 "Low brightness mode, footwell lights off" 0 "Normal mode, footwell lights on"; +VAL_ 1552 METER_SLIDER_DIMMED 1 "Dimmed" 0 "Not Dimmed"; +VAL_ 1552 UNITS 1 "km (km/L)" 2 "km (L/100km)" 3 "miles (MPG US)" 4 "miles (MPG Imperial)"; +VAL_ 1553 UNITS 1 "km" 2 "miles"; +VAL_ 1556 TURN_SIGNALS 3 "none" 2 "right" 1 "left"; +VAL_ 1556 BLINKER_BUTTON_PRESSED 1 "button pressed" 0 "not pressed"; +VAL_ 1592 LOCK_STATUS 0 "locked" 1 "unlocked"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc new file mode 100644 index 0000000000..20680225aa --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/_toyota_adas_standard.dbc @@ -0,0 +1,56 @@ +BO_ 466 PCM_CRUISE: 8 XXX + SG_ GAS_RELEASED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_ACTIVE : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_BRAKING : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ACCEL_NET : 23|16@0- (0.0009765625,0) [-20|20] "m/s^2" XXX + SG_ NEUTRAL_FORCE : 39|16@0- (2,0) [-65536|65534] "N" XXX + SG_ CRUISE_STATE : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CANCEL_REQ : 49|1@1+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 643 PRE_COLLISION: 7 DSU + SG_ _COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ FORCE : 23|16@0- (2,0) [0|255] "N" XXX + SG_ SET_ME_X002 : 33|8@0+ (1,0) [0|3] "" XXX + SG_ BRAKE_STATUS : 39|3@0+ (1,0) [0|255] "" XXX + SG_ STATE : 36|3@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X003 : 40|1@0+ (1,0) [0|1] "" XXX + SG_ PRECOLLISION_ACTIVE : 41|1@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 705 GAS_PEDAL: 8 XXX + SG_ GAS_RELEASED : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ETQLVSC : 15|16@0- (0.03125,0) [0|0] "Nm" XXX + SG_ ETQREAL : 31|16@0- (0.03125,0) [0|0] "Nm" SCS + SG_ ETQISC : 47|8@0+ (1,-192) [0|0] "Nm" XXX + SG_ GAS_PEDAL : 55|8@0+ (0.5,0) [0|0] "%" DS1,FCM + SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 740 STEERING_LKA: 5 XXX + SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX + SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 6|6@0+ (1,0) [0|63] "" XXX + SG_ SET_ME_1 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_TORQUE_CMD : 15|16@0- (1,0) [0|65535] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 836 PRE_COLLISION_2: 8 DSU + SG_ DSS1GDRV : 7|10@0- (0.1,0) [0|0] "m/s^2" Vector__XXX + SG_ PCSALM : 17|1@0+ (1,0) [0|0] "" FCM + SG_ IBTRGR : 27|1@0+ (1,0) [0|0] "" FCM + SG_ PBATRGR : 30|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PREFILL : 33|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVSTRGR : 36|1@0+ (1,0) [0|0] "" SCS + SG_ CHECKSUM : 63|8@0+ (1,0) [0|0] "" XXX + +CM_ SG_ 466 NEUTRAL_FORCE "force in newtons the engine/electric motors are applying without any acceleration commands or user input"; +CM_ SG_ 466 ACC_BRAKING "whether brakes are being actuated from ACC command"; +CM_ SG_ 466 ACCEL_NET "net negative acceleration (braking) applied by the system if on flat ground"; +CM_ SG_ 466 CRUISE_STATE "Active state is 8, if standstill is requested will switch to state 11(3 sec timer), after timer is elapsed will switch into state 7(standstill). If plus button was pressed - status 9, minus button pressed - status 10"; +CM_ SG_ 643 _COUNTER "only used on cars that use this msg for cruise control"; +CM_ SG_ 643 BRAKE_STATUS "only used on cars that use this msg for cruise control"; +CM_ SG_ 643 PRECOLLISION_ACTIVE "set 0.5s before any braking"; + +VAL_ 466 CRUISE_STATE 11 "timer_3sec" 10 "adaptive click down" 9 "adaptive click up" 8 "adaptive engaged" 7 "standstill" 6 "non-adaptive click up" 5 "non-adaptive click down" 4 "non-adaptive hold down" 3 "non-adaptive hold up" 2 "non-adaptive being engaged" 1 "non-adaptive engaged" 0 "off"; +VAL_ 643 STATE 0 "normal" 1 "adaptive_cruise_control" 3 "emergency_braking"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc new file mode 100644 index 0000000000..f1bf8f8b07 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_new_mc_pt.dbc @@ -0,0 +1,22 @@ +CM_ "IMPORT _toyota_2017.dbc"; +CM_ "IMPORT _toyota_adas_standard.dbc"; + +BO_ 548 BRAKE_MODULE: 8 XXX + SG_ BRAKE_PRESSURE : 43|12@0+ (1,0) [0|4047] "" XXX + SG_ BRAKE_PRESSED : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 610 EPS_STATUS: 5 EPS + SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX + SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 1178 BRAKE_RELATED: 8 XXX + SG_ BRAKE_PRESSED : 48|1@0+ (1,0) [0|1] "" XXX + +CM_ SG_ 548 BRAKE_PRESSURE "seems prop to pedal force"; +CM_ SG_ 548 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; +CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; + +VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; +VAL_ 610 LKA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc new file mode 100644 index 0000000000..a7ffbf1564 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_nodsu_pt.dbc @@ -0,0 +1,78 @@ +CM_ "IMPORT _toyota_2017.dbc"; +CM_ "IMPORT _toyota_adas_standard.dbc"; + +BO_ 401 STEERING_LTA: 8 XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ SETME_X3 : 29|2@0+ (1,0) [0|3] "" XXX + SG_ PERCENTAGE : 39|8@0+ (1,0) [0|255] "" XXX + SG_ TORQUE_WIND_DOWN : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ANGLE : 55|8@0- (0.5,0) [0|255] "" XXX + SG_ STEER_ANGLE_CMD : 15|16@0- (0.0573,0) [-540|540] "" XXX + SG_ STEER_REQUEST_2 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ LKA_ACTIVE : 26|1@0+ (1,0) [0|1] "" XXX + SG_ CLEAR_HOLD_STEERING_ALERT : 30|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 6|6@0+ (1,0) [0|255] "" XXX + SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SETME_X1 : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 550 BRAKE_MODULE: 8 XXX + SG_ BRAKE_PRESSURE : 0|9@0+ (1,0) [0|511] "" XXX + SG_ BRAKE_POSITION : 16|9@0+ (1,0) [0|511] "" XXX + SG_ BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 610 EPS_STATUS: 8 EPS + SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX + SG_ LTA_STATE : 15|5@0+ (1,0) [0|31] "" XXX + SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 881 LTA_RELATED: 8 FCM + SG_ GAS_PEDAL : 15|8@0+ (0.005,0) [0|1] "" XXX + SG_ STEER_ANGLE : 23|16@0- (0.0573,0) [-500|500] "" XXX + SG_ TURN_SIGNALS : 35|2@0+ (1,0) [0|3] "" XXX + SG_ UNKNOWN_2 : 58|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_SA_TOGGLE : 59|1@0+ (1,0) [0|1] "" XXX + SG_ LTA_STEER_REQUEST : 60|1@0+ (1,0) [0|1] "" XXX + SG_ UNKNOWN : 61|1@0+ (1,0) [0|1] "" XXX + SG_ STEERING_PRESSED : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 1014 BSM: 8 XXX + SG_ L_ADJACENT : 0|1@0+ (1,0) [0|1] "" XXX + SG_ L_APPROACHING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ R_ADJACENT : 1|1@0+ (1,0) [0|1] "" XXX + SG_ R_APPROACHING : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ADJACENT_ENABLED : 7|1@0+ (1,0) [0|1] "" XXX + SG_ APPROACHING_ENABLED : 15|1@0+ (1,0) [0|1] "" XXX + +CM_ SG_ 401 PERCENTAGE "driver override percentage (0-100), very close to steeringPressed in OP"; +CM_ SG_ 401 TORQUE_WIND_DOWN "used to wind down torque on user override"; +CM_ SG_ 401 ANGLE "angle of car relative to lane center on LTA camera"; +CM_ SG_ 401 STEER_ANGLE_CMD "desired angle, OEM steers up to 95 degrees, no angle limit but torque will bottom out"; +CM_ SG_ 401 CLEAR_HOLD_STEERING_ALERT "set to 1 when user clears LKAS_HUD->LDA_ALERT ('Hold Steering') by applying torque to steering wheel"; +CM_ SG_ 401 STEER_REQUEST "enable bit for steering, 1 to steer, 0 to not"; +CM_ SG_ 401 STEER_REQUEST_2 "enable bit for steering, 1 to steer, 0 to not"; +CM_ SG_ 401 LKA_ACTIVE "1 when using LTA for LKA"; +CM_ SG_ 401 SETME_X1 "usually 1, seen at 0 on some South American Corollas indicating lack of stock Lane Tracing Assist"; +CM_ SG_ 401 SETME_X3 "almost completely correlates with Toyota Safety Sense version, but may instead describe max torque when using LTA. if TSS 2.5 or 2022 RAV4, this is always 1. if TSS 2.0 this is always 3 (or 0 on Alphard, Highlander, NX)"; +CM_ SG_ 550 BRAKE_PRESSURE "seems prop to pedal force"; +CM_ SG_ 550 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; +CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; +CM_ SG_ 881 GAS_PEDAL "not set on all cars, only seen on TSS 2.5 Camry Hybrid so far"; +CM_ SG_ 881 STEER_ANGLE "matches STEER_TORQUE_SENSOR->STEER_ANGLE"; +CM_ SG_ 881 TURN_SIGNALS "flipped on some cars"; +CM_ SG_ 881 LDA_SA_TOGGLE "not applicable for all cars"; +CM_ SG_ 881 LTA_STEER_REQUEST "only applicable for TSS 2.5: matches STEERING_LTA->STEER_REQUEST"; +CM_ SG_ 881 UNKNOWN "related to steering wheel angle"; +CM_ SG_ 881 STEERING_PRESSED "only applicable for TSS 2.5: low sensitivity steering wheel pressed by driver signal"; +CM_ SG_ 1014 L_ADJACENT "vehicle adjacent left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 L_APPROACHING "vehicle approaching from left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 R_ADJACENT "vehicle adjacent right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 R_APPROACHING "vehicle approaching from right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 ADJACENT_ENABLED "when BSM is enabled in settings, this is on along with APPROACHING_ENABLED. this controls bsm alert visibility"; +CM_ SG_ 1014 APPROACHING_ENABLED "when BSM is enabled in settings, this is on along with ADJACENT_ENABLED. this controls bsm alert visibility"; + +VAL_ 401 SETME_X3 3 "TSS 2.0" 1 "TSS 2.5 or 2022 RAV4" 0 "TSS 2.0 on Alphard, Highlander, NX"; +VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; +VAL_ 610 LKA_STATE 25 "temporary_fault" 17 "permanent_fault" 11 "lka_missing_unavailable2" 9 "temporary_fault2" 5 "active" 3 "lka_missing_unavailable" 1 "standby"; +VAL_ 610 LTA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 3 "lta_missing_unavailable" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc new file mode 100644 index 0000000000..eefe990667 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_secoc_pt.dbc @@ -0,0 +1,156 @@ +CM_ "IMPORT _toyota_2017.dbc"; + +BO_ 15 SECOC_SYNCHRONIZATION: 8 XXX + SG_ TRIP_CNT : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ RESET_CNT : 23|20@0+ (1,0) [0|65535] "" XXX + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + +BO_ 257 BRAKE_MODULE: 8 XXX + SG_ BRAKE_PRESSED : 3|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_PRESSURE_1 : 31|8@0+ (1,0) [0|15] "" XXX + SG_ BRAKE_PRESSURE_2 : 61|6@0+ (1,0) [0|63] "" XXX + +BO_ 278 GAS_PEDAL: 8 XXX + SG_ GAS_PEDAL_ACC : 7|8@0+ (0.005,0) [0|255] "" XXX + SG_ GAS_PEDAL_USER : 15|8@0+ (0.005,0) [0|255] "" XXX + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 305 STEERING_LTA_2: 8 XXX + SG_ STEER_REQUEST_2 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_REQUEST : 3|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 13|6@0+ (1,0) [0|63] "" XXX + SG_ STEER_ANGLE_CMD : 23|16@0- (0.0573,0) [0|65535] "" XXX + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 374 PCM_CRUISE: 8 XXX + SG_ CRUISE_ACTIVE : 5|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_STATE : 31|4@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 375 PCM_CRUISE_3: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0- (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 21|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ GAS_RELEASED : 30|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 387 ACC_CONTROL_2: 8 XXX + SG_ ACCEL_CMD : 7|16@0- (0.001,0) [-20|20] "m/s^2" HCU + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 401 STEERING_LTA: 8 XXX + SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 6|6@0+ (1,0) [0|255] "" XXX + SG_ SETME_X1 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_ANGLE_CMD : 15|16@0- (0.0573,0) [-540|540] "" XXX + SG_ STEER_REQUEST_2 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ LKA_ACTIVE : 26|1@0+ (1,0) [0|1] "" XXX + SG_ SETME_X3 : 29|2@0+ (1,0) [0|3] "" XXX + SG_ CLEAR_HOLD_STEERING_ALERT : 30|1@0+ (1,0) [0|1] "" XXX + SG_ PERCENTAGE : 39|8@0+ (1,0) [0|255] "" XXX + SG_ TORQUE_WIND_DOWN : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ANGLE : 55|8@0- (0.5,0) [0|255] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 418 CRUISE_RELATED: 8 XXX + SG_ CRUISE_ACTIVE : 7|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 589 PCM_CRUISE_4: 8 PCM + SG_ DISTANCE : 2|1@0+ (1,0) [0|1] "" XXX + SG_ CANCEL : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DECREASE : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ENABLE : 6|1@0+ (1,0) [0|1] "" XXX + SG_ INCREASE : 7|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 27|4@0+ (1,0) [0|15] "" XXX + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 610 EPS_STATUS: 8 EPS + SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LTA_STATE : 15|5@0+ (1,0) [0|31] "" XXX + SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX + SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 643 PRE_COLLISION: 8 DSU + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 740 STEERING_LKA: 8 XXX + SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 6|6@0+ (1,0) [0|63] "" XXX + SG_ SET_ME_1 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_TORQUE_CMD : 15|16@0- (1,0) [0|65535] "" XXX + SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 836 PRE_COLLISION_2: 8 DSU + SG_ AUTHENTICATOR : 35|28@0+ (1,0) [0|268435455] "" XXX + SG_ RESET_FLAG : 37|2@0+ (1,0) [0|3] "" XXX + SG_ MSG_CNT_LOWER : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 881 LTA_RELATED: 8 FCM + SG_ GAS_PEDAL : 15|8@0+ (0.005,0) [0|1] "" XXX + SG_ STEER_ANGLE : 23|16@0- (0.0573,0) [-500|500] "" XXX + SG_ TURN_SIGNALS : 35|2@0+ (1,0) [0|3] "" XXX + SG_ UNKNOWN_2 : 58|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_SA_TOGGLE : 59|1@0+ (1,0) [0|1] "" XXX + SG_ LTA_STEER_REQUEST : 60|1@0+ (1,0) [0|1] "" XXX + SG_ UNKNOWN : 61|1@0+ (1,0) [0|1] "" XXX + SG_ STEERING_PRESSED : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 1014 BSM: 8 XXX + SG_ L_ADJACENT : 0|1@0+ (1,0) [0|1] "" XXX + SG_ R_ADJACENT : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ADJACENT_ENABLED : 7|1@0+ (1,0) [0|1] "" XXX + SG_ L_APPROACHING : 8|1@0+ (1,0) [0|1] "" XXX + SG_ R_APPROACHING : 10|1@0+ (1,0) [0|1] "" XXX + SG_ APPROACHING_ENABLED : 15|1@0+ (1,0) [0|1] "" XXX + +CM_ SG_ 305 STEER_ANGLE_CMD "Used in place of STEERING_LTA.STEER_ANGLE_CMD on SecOC cars"; +CM_ SG_ 387 ACCEL_CMD "Used in place of ACC_CONTROL.ACCEL_CMD on SecOC cars"; +CM_ SG_ 401 STEER_REQUEST "enable bit for steering, 1 to steer, 0 to not"; +CM_ SG_ 401 SETME_X1 "usually 1, seen at 0 on some South American Corollas indicating lack of stock Lane Tracing Assist"; +CM_ SG_ 401 STEER_ANGLE_CMD "desired angle, OEM steers up to 95 degrees, no angle limit but torque will bottom out"; +CM_ SG_ 401 STEER_REQUEST_2 "enable bit for steering, 1 to steer, 0 to not"; +CM_ SG_ 401 LKA_ACTIVE "1 when using LTA for LKA"; +CM_ SG_ 401 SETME_X3 "almost completely correlates with Toyota Safety Sense version, but may instead describe max torque when using LTA. if TSS 2.5 or 2022 RAV4, this is always 1. if TSS 2.0 this is always 3 (or 0 on Alphard, Highlander, NX)"; +CM_ SG_ 401 CLEAR_HOLD_STEERING_ALERT "set to 1 when user clears LKAS_HUD->LDA_ALERT ('Hold Steering') by applying torque to steering wheel"; +CM_ SG_ 401 PERCENTAGE "driver override percentage (0-100), very close to steeringPressed in OP"; +CM_ SG_ 401 TORQUE_WIND_DOWN "used to wind down torque on user override"; +CM_ SG_ 401 ANGLE "angle of car relative to lane center on LTA camera"; +CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; +CM_ SG_ 881 GAS_PEDAL "not set on all cars, only seen on TSS 2.5 Camry Hybrid so far"; +CM_ SG_ 881 STEER_ANGLE "matches STEER_TORQUE_SENSOR->STEER_ANGLE"; +CM_ SG_ 881 TURN_SIGNALS "flipped on some cars"; +CM_ SG_ 881 LDA_SA_TOGGLE "not applicable for all cars"; +CM_ SG_ 881 LTA_STEER_REQUEST "only applicable for TSS 2.5: matches STEERING_LTA->STEER_REQUEST"; +CM_ SG_ 881 UNKNOWN "related to steering wheel angle"; +CM_ SG_ 881 STEERING_PRESSED "only applicable for TSS 2.5: low sensitivity steering wheel pressed by driver signal"; +CM_ SG_ 1014 L_ADJACENT "vehicle adjacent left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 R_ADJACENT "vehicle adjacent right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 ADJACENT_ENABLED "when BSM is enabled in settings, this is on along with APPROACHING_ENABLED. this controls bsm alert visibility"; +CM_ SG_ 1014 L_APPROACHING "vehicle approaching from left side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 R_APPROACHING "vehicle approaching from right side of car. enabled above 10mph, regardless of ADJACENT_ENABLED or APPROACHING_ENABLED"; +CM_ SG_ 1014 APPROACHING_ENABLED "when BSM is enabled in settings, this is on along with ADJACENT_ENABLED. this controls bsm alert visibility"; + +VAL_ 401 SETME_X3 3 "TSS 2.0" 1 "TSS 2.5 or 2022 RAV4" 0 "TSS 2.0 on Alphard, Highlander, NX"; +VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; +VAL_ 610 LTA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 3 "lta_missing_unavailable" 1 "standby"; +VAL_ 610 LKA_STATE 25 "temporary_fault" 17 "permanent_fault" 11 "lka_missing_unavailable2" 9 "temporary_fault2" 5 "active" 3 "lka_missing_unavailable" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc new file mode 100644 index 0000000000..a8f071c368 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/generator/toyota/toyota_tnga_k_pt.dbc @@ -0,0 +1,20 @@ +CM_ "IMPORT _toyota_2017.dbc"; +CM_ "IMPORT _toyota_adas_standard.dbc"; + +BO_ 550 BRAKE_MODULE: 8 XXX + SG_ BRAKE_PRESSURE : 0|9@0+ (1,0) [0|511] "" XXX + SG_ BRAKE_POSITION : 16|9@0+ (1,0) [0|511] "" XXX + SG_ BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 610 EPS_STATUS: 5 EPS + SG_ IPAS_STATE : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LKA_STATE : 31|7@0+ (1,0) [0|127] "" XXX + SG_ TYPE : 24|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + +CM_ SG_ 550 BRAKE_PRESSURE "seems prop to pedal force"; +CM_ SG_ 550 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; +CM_ SG_ 610 TYPE "seems 1 on Corolla, 0 on all others"; + +VAL_ 610 IPAS_STATE 5 "override" 3 "enabled" 1 "disabled"; +VAL_ 610 LKA_STATE 25 "temporary_fault" 9 "temporary_fault2" 5 "active" 1 "standby"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc new file mode 100644 index 0000000000..e1fc1ccbff --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_chassis.dbc @@ -0,0 +1,75 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: K182_PACM K43_PSCM K17_EBCM NEO K124_ASCM + + + +BO_ 823 PACMParkAssitCmd: 7 NEO + SG_ RollingCounter : 35|2@0+ (1,0) [0|0] "" NEO + SG_ SteeringWheelChecksum : 47|16@0+ (1,0) [0|0] "" NEO + SG_ SteeringWheelCmd : 23|16@0+ (1,0) [0|0] "" NEO + +BO_ 560 EBCMRegen: 6 K17_EBCM + SG_ Regen : 1|10@0+ (1,0) [0|0] "" NEO + +BO_ 368 EBCMFrictionBrakeStatus: 8 K17_EBCM + SG_ FrictionBrakePressure : 23|16@0+ (1,0) [0|0] "" NEO + +BO_ 789 EBCMFrictionBrakeCmd: 5 K17_EBCM + SG_ RollingCounter : 33|2@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO + +BO_TX_BU_ 823 : K43_PSCM,NEO; +BO_TX_BU_ 789 : NEO,K17_EBCM; + + +CM_ BU_ K182_PACM "Parking Assist Control Module"; +CM_ BU_ K43_PSCM "Power Steering Control Module"; +CM_ BU_ K17_EBCM "Electronic Brake Control Module"; +CM_ BU_ NEO "Comma NEO"; +CM_ BU_ K124_ASCM "Active Safety Control Module"; +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "UseGMParameterIDs" 0; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; + diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc new file mode 100644 index 0000000000..60729e5692 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_high_voltage_management.dbc @@ -0,0 +1,196 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: +BU_: K16_BECM K114B_HPCM T18_BatteryCharger +BO_ 512 Battery_Module_1: 8 K16_BECM + SG_ Voltage_1_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_1_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Cell_Bank_Number_1 M : 55|3@0+ (1,0) [0|0] "" K16_BECM + +BO_ 514 Battery_Module_2: 8 K16_BECM + SG_ Voltage_2_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_2_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Cell_Bank_Number_2 M : 55|3@0+ (1,0) [0|0] "" K16_BECM + +BO_ 516 Battery_Module_3: 8 K16_BECM + SG_ Voltage_3_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_3_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Cell_Bank_Number_3 M : 55|3@0+ (1,0) [0|0] "" K16_BECM + +BO_ 518 Battery_Module_4: 8 K16_BECM + SG_ Voltage_4_0_A m0 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_0_B m0 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_0_C m0 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_1_A m1 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_1_B m1 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_1_C m1 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_2_A m2 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_2_B m2 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_2_C m2 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_3_A m3 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_3_B m3 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_3_C m3 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_4_A m4 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_4_B m4 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_4_C m4 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_5_A m5 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_5_B m5 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_5_C m5 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_6_A m6 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_6_B m6 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_6_C m6 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_7_A m7 : 4|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_7_B m7 : 20|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Voltage_4_7_C m7 : 39|12@0+ (0.00125,0) [0|0] "V" K16_BECM + SG_ Cell_Bank_Number_4 M : 55|3@0+ (1,0) [0|0] "" K16_BECM + +BO_ 528 Pack_Stats: 8 K16_BECM + SG_ Pack_Voltage : 7|12@0+ (0.125,0) [0|0] "V" K16_BECM + SG_ Pack_Current : 23|8@0- (0.1,-0.1) [0|0] "A" K16_BECM + +BO_ 530 Charger_stats: 6 T18_BatteryCharger + SG_ Charger_HV_Current : 7|13@0+ (0.05,0) [0|0] "A" K16_BECM + SG_ HV_Voltage : 10|10@0+ (0.5,0) [0|0] "V" K16_BECM + SG_ LV_Current : 16|8@0+ (0.2,0) [0|0] "A" K16_BECM + SG_ LV_Voltage : 24|8@0+ (0.1,0) [0|0] "V" K16_BECM + +BO_ 770 Battery_temp: 8 K16_BECM + SG_ Temp_A m0 : 8|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_B m0 : 16|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_C m0 : 24|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_D m0 : 32|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_E m0 : 40|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_F m0 : 48|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_G m1 : 8|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_H m1 : 16|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Temp_I m1 : 24|8@1+ (0.5,-40) [0|0] "C" K16_BECM + SG_ Switch M : 2|1@1+ (1,0) [0|0] "" K16_BECM + +BO_ 782 Charger_Command: 1 T18_BatteryCharger + SG_ Command : 0|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 772 Charger_parameters: 4 T18_BatteryCharger + SG_ Unknown : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ Current : 8|8@1+ (0.05,0) [0|0] "A" Vector__XXX + SG_ Voltage : 23|16@0+ (0.5,0) [0|0] "V" Vector__XXX + +BO_ 1120 Coolant_Temp: 4 K16_BECM + SG_ Inlet_Coolant_Temp : 1|10@0+ (0.125,-40) [0|0] "" Vector__XXX + SG_ Outlet_Coolant_Temp : 17|10@0+ (0.125,-40) [0|0] "" Vector__XXX + +BO_ 778 AC_Stats: 7 T18_BatteryCharger + SG_ Mains_Voltage : 10|2@0+ (1,0) [0|0] "V" Vector__XXX + SG_ Total_Charge : 19|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 776 Charger_status: 5 T18_BatteryCharger + SG_ Status : 20|3@1+ (1,0) [0|0] "" Vector__XXX + +BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; +BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; +BA_DEF_ BO_ "isj1939dbc" INT 0 0; +BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; +BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; +BA_DEF_DEF_ "isj1939dbc" 0; +CM_ BU_ K16_BECM "Battery Energy Control Module"; +CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; +CM_ BU_ T18_BatteryCharger "Battery Charger"; +VAL_ 782 Command 1 "12V_Only" 2 "HV_Only" 3 "12V_and_HV"; +VAL_ 778 Mains_Voltage 0 "Unplugged" 1 "110V" 3 "220V"; +VAL_ 776 Status 0 "Off" 5 "LV_Only" 7 "HV_and_LV" 3 "HV_Only"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc new file mode 100644 index 0000000000..524eeed8be --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed.dbc @@ -0,0 +1,118 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: GMLAN NEO +VAL_TABLE_ GearShifter 3 "Park" 0 "Drive/Low" ; +VAL_TABLE_ DriverDoorStatus 1 "Opened" 0 "Closed" ; +VAL_TABLE_ LKAGapButton 2 "???" 1 "??" 0 "None" ; +VAL_TABLE_ CruiseButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_TABLE_ CruiseControlActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ BlinkerStatus 1 "Active" 0 "Inactive" ; + + +BO_ 274923520 DriverDoorStatus: 1 GMLAN + SG_ DriverDoorOpened : 0|1@0+ (1,0) [0|0] "" NEO + +BO_ 272629760 Chime: 5 NEO + SG_ ChimeType : 7|8@0+ (1,0) [0|0] "" GMLAN + SG_ ChimeRepeat : 23|8@0+ (1,0) [0|0] "" GMLAN + SG_ ChimeDuration : 15|8@0+ (1,0) [0|0] "" GMLAN + SG_ ChimeByte5 : 39|8@0+ (1,0) [0|0] "" GMLAN + SG_ ChimeByte4 : 31|8@0+ (1,0) [0|0] "" GMLAN + +BO_ 270581760 BlinkerStatus: 5 GMLAN + SG_ RightBlinker : 6|1@0+ (1,0) [0|0] "" NEO + SG_ LeftBlinker : 7|1@0+ (1,0) [0|0] "" NEO + SG_ BlinkerLight : 25|1@0+ (1,0) [0|0] "" NEO + +BO_ 270794752 SteeringWheelAngle: 8 GMLAN + SG_ SteeringWheelAngle : 39|16@0- (0.0625,0) [-540|540] "deg" NEO + +BO_ 271368192 GearShifter: 8 GMLAN + SG_ GearShifter : 17|2@0+ (1,0) [0|3] "" NEO + +BO_ 271360000 GasPedalRegenCruise: 8 GMLAN + SG_ CruiseControlActive : 56|1@0+ (1,0) [0|0] "" GMLAN + SG_ MaxRegen : 12|1@0+ (1,0) [0|1] "" GMLAN,NEO + SG_ GasPedal : 47|8@0+ (1,0) [0|254] "" GMLAN,NEO + SG_ GearShifter2NotUsed : 55|8@0+ (1,0) [0|255] "" GMLAN,NEO + +BO_ 270860288 BrakePedal: 2 GMLAN + SG_ BrakeLevel : 2|2@0+ (1,0) [0|3] "" NEO + SG_ BrakeSensor : 15|8@0+ (1,0) [0|255] "" NEO + +BO_ 275480576 WheelSpeed: 8 GMLAN + SG_ WheelSpeedFL : 7|16@0+ (0.01,0) [0|70] "yd/s" NEO + SG_ WheelSpeedFR : 39|16@0+ (0.01,0) [0|70] "yd/s" NEO + SG_ WheelSpeedRL : 23|16@0+ (0.01,0) [0|70] "yd/s" NEO + SG_ WheelSpeedRR : 55|16@0+ (0.01,0) [0|70] "yd/s" NEO + +BO_ 270598144 VehicleSpeed: 8 GMLAN + SG_ VehicleSpeed1 : 7|16@0+ (0.01,0) [0|100] "mph" NEO + SG_ VehicleSpeed2 : 39|16@0+ (0.01,0) [0|100] "mph" NEO + +BO_ 276135936 CruiseButtons: 3 GMLAN + SG_ CruiseButtons : 3|3@0+ (1,0) [0|12] "" NEO + +BO_ 276127744 CruiseButtons2: 1 GMLAN + SG_ LKAGapButton : 1|2@0+ (1,0) [0|2] "" NEO + +BO_ 275955897 LeftRadar: 2 GMLAN + SG_ BSM_Indicator_Light : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 275980379 RightRadar: 2 GMLAN + SG_ BSM_Indicator_Light : 0|1@0+ (1,0) [0|1] "" XXX + + + +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; +VAL_ 274923520 DriverDoorOpened 1 "Opened" 0 "Closed" ; +VAL_ 270581760 RightBlinker 1 "Active" 0 "Inactive" ; +VAL_ 270581760 LeftBlinker 1 "Active" 0 "Inactive" ; +VAL_ 270581760 BlinkerLight 1 "Active" 0 "Inactive" ; +VAL_ 271368192 GearShifter 3 "Park" 0 "Drive/Low" ; +VAL_ 271360000 CruiseControlActive 1 "Active" 0 "Inactive" ; +VAL_ 276135936 CruiseButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_ 276127744 LKAGapButton 2 "???" 1 "??" 0 "None" ; +VAL_ 275955897 BSM_Indicator_Light 0 "Disabled" 1 "Enabled"; +VAL_ 275980379 BSM_Indicator_Right 0 "Disabled" 1 "Enabled"; + diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc new file mode 100644 index 0000000000..3f5b15e6f2 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_lowspeed_1818125.dbc @@ -0,0 +1,3993 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 2152177664 OTA_Electric_Pwr_Readiness_LS: 1 XXX + SG_ RmtRflshElecPwrRdness : 7|8@0+ (0.025,0) [0|6.375] "AmpHour" XXX + +BO_ 2152013824 Smart_High_Beam_Cust_LS: 1 XXX + SG_ SmrtHgBmAstCstSetAvail : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SmrtHgBmAstCstCurrSetVal : 7|3@0+ (1,0) [0|7] "" XXX + +BO_ 2159255552 ODI_CenterStack_2_BCM_LS: 8 XXX + SG_ ODI_CntrStck2BCM : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159247360 ODI_BCM_2_CenterStack_LS: 8 XXX + SG_ ODI_BCM2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2152046592 Remote_Climate_Control_Req_LS: 5 XXX + SG_ RmClmCtrlHMIActIndReq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RmClmCtrlRcrcSetReq : 3|3@0+ (1,0) [0|7] "" XXX + SG_ RmClmCtrlACSetReq : 10|3@0+ (1,0) [0|7] "" XXX + SG_ RmClmCtrlFrntFanStReq : 15|5@0+ (1,0) [0|31] "" XXX + SG_ RmClmCtrlFLAirDtStReq : 19|4@0+ (1,0) [0|15] "" XXX + SG_ RmClmCtrlClmModSetReq : 23|4@0+ (1,0) [0|15] "" XXX + SG_ RmClmCtrlLtSTempStReq : 29|6@0+ (1,0) [0|63] "" XXX + SG_ RmClmCtrlRrDfgSetReq : 31|2@0+ (1,0) [0|3] "" XXX + SG_ RmClmCtrlRtSTempStReq : 37|6@0+ (1,0) [0|63] "" XXX + SG_ RmClmCtrlSyncSetReq : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152030208 Tuner_Frequency_Request_LS: 8 XXX + SG_ TnrFrqBndReq : 3|4@0+ (1,0) [0|15] "" XXX + SG_ TnrFrqChnlReq : 15|56@0+ (1,0) [0|1] "" XXX + +BO_ 2150531072 Regen_Power_Ind_LS: 4 XXX + SG_ RegPwrLmtdDspPrcnt : 0|9@0- (0.392157,0) [-100.392192|100.000035] "%" XXX + SG_ RegPwrLmtdDspPrcntVs : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RegPwrLmtdIO : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151833600 Heated_Wndshild_CstmrIhbt_Req_LS: 1 XXX + SG_ HtdFrntWSCustRqIhbt : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HtdFrntWSDispReq : 7|2@0+ (1,0) [0|3] "" XXX + +BO_ 2151817216 Heated_Wndshild_Cstmr_Req_LS: 1 XXX + SG_ HtdFrntWSCustRq : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151849984 Seat_Level_Setting_Request_LS: 2 XXX + SG_ AutoThrmlStPasLvlStRq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ AutoThrmlStDrvLvStRq : 5|3@0+ (1,0) [0|7] "" XXX + SG_ AutoThrmlStPassMdStRq : 7|2@0+ (1,0) [0|3] "" XXX + SG_ AutoThrmlStDrvMdStRq : 15|2@0+ (1,0) [0|3] "" XXX + +BO_ 2153897984 ARB_OpMode_Customization_LS: 1 XXX + SG_ RunBrdExtdFtrAvail : 3|1@0+ (1,0) [0|1] "" XXX + SG_ RunBrdOpMdCstCurrStVal : 6|3@0+ (1,0) [0|7] "" XXX + SG_ RunBrdOpMdCstStAvail : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151702528 Lane_Keeping_Assist_LS: 2 XXX + SG_ LnKpngAstRecfblIndRq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ LnMrkngIndLft : 4|2@0+ (1,0) [0|3] "" XXX + SG_ LnKepAsstStIndLft : 7|3@0+ (1,0) [0|7] "" XXX + SG_ LnMrkngIndRgt : 12|2@0+ (1,0) [0|3] "" XXX + SG_ LnKepAsstStIndRgt : 15|3@0+ (1,0) [0|7] "" XXX + +BO_ 2156986368 PassPhrase_3_AMM_LS: 8 XXX + SG_ WiFiPssPhrsDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156978176 PassPhrase_2_AMM_LS: 8 XXX + SG_ WiFiPssPhrsDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156969984 PassPhrase_1_AMM_LS: 8 XXX + SG_ WiFiPssPhrsDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2150236160 Unlock_Key_Store_Crypt_2_LS: 8 XXX + SG_ UlckKyStrCrptoDt2Group : 4|61@0+ (1,0) [0|0] "" XXX + SG_ UlckKyStrCrptoDt2 : 3|60@0+ (1,0) [0|1.15292150460685E+018] "" XXX + SG_ UlckKyStrCrptoDt2M : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150170624 Unlock_Key_Store_Crypt_1_LS: 8 XXX + SG_ UlckKyStrCrptoDt1Group : 4|61@0+ (1,0) [0|0] "" XXX + SG_ UlckKyStrCrptoDt1 : 3|60@0+ (1,0) [0|1.15292150460685E+018] "" XXX + SG_ UlckKyStrCrptoDt1M : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155126784 Drvr_Seat_Rearward_Movmnt_LS: 1 XXX + SG_ DrvrSetRrwrdMvmnt : 7|3@0+ (1,0) [0|7] "" XXX + +BO_ 2154725376 Auxiliary_Heater_LS: 1 XXX + SG_ AuxHtrAtv378 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ AuxHtrRq : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2157051904 WiFi_Station_AMM_LS: 5 XXX + SG_ WiFiStatnMpReq : 1|34@0+ (1,0) [0|0] "" XXX + SG_ WSMR_WiFiAssnReq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ WSMR_WiFiStnMpMACAddr : 15|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2156994560 WiFi_AP_Data_AMM_LS: 2 XXX + SG_ WiFiAccsPntData_Mp : 0|9@0+ (1,0) [0|0] "" XXX + SG_ WAPDM_WiFiEnStat : 0|1@0+ (1,0) [0|1] "" XXX + SG_ WAPDM_EncrptnType : 11|4@0+ (1,0) [0|15] "" XXX + SG_ WAPDM_SecurityType : 15|4@0+ (1,0) [0|15] "" XXX + +BO_ 2158133248 Hill_Top_Customization_LS: 6 XXX + SG_ HTRCsStAvail : 0|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCsAvail : 7|7@0+ (1,0) [0|0] "" XXX + SG_ HTRCA_Res3Avail : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCA_Res2Avail : 2|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCA_Res1Avail : 3|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCA_OnAwAvail : 4|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCA_OnHmAvail : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCA_OnAvail : 6|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCA_OffAvail : 7|1@0+ (1,0) [0|1] "" XXX + SG_ HTRCsCrStVal : 10|3@0+ (1,0) [0|7] "" XXX + SG_ HVDpltnMdMxCnfdcRgExt : 21|14@0+ (0.1,0) [0|1638.3] "km" XXX + SG_ HVDpltnMdMiCnfdcRgExt : 37|14@0+ (0.1,0) [0|1638.3] "km" XXX + +BO_ 2154651648 Telematics_Audio_Control_LS: 1 XXX + SG_ TeleAudCtl : 7|8@0+ (1,0) [0|0] "" XXX + SG_ TAC_AudConctOutcm : 3|4@0+ (1,0) [0|15] "" XXX + SG_ TAC_AudChConctStat : 7|4@0+ (1,0) [0|15] "" XXX + +BO_ 2154635264 Telematics_Audio_Request_LS: 1 XXX + SG_ TeleAudReq : 7|8@0+ (1,0) [0|0] "" XXX + SG_ TAR_AudSrcStat : 3|4@0+ (1,0) [0|15] "" XXX + SG_ TAR_AudConctReq : 7|4@0+ (1,0) [0|15] "" XXX + +BO_ 2152529920 LVM_Audio_Video_Command_LS: 2 XXX + SG_ LowVolModAudVidCmd : 5|14@0+ (1,0) [0|0] "" XXX + SG_ LVMAVC_StreoAudRsp : 0|2@0+ (1,0) [0|3] "" XXX + SG_ LVMAVC_PrmtAudRsp : 2|2@0+ (1,0) [0|3] "" XXX + SG_ LVMAVC_RemtEnbl : 5|3@0+ (1,0) [0|7] "" XXX + SG_ LVMAVC_SpchRcgnAval : 9|2@0+ (1,0) [0|3] "" XXX + SG_ LVMAVC_RemSpchRcgnActn : 11|2@0+ (1,0) [0|3] "" XXX + SG_ LVMAVC_RemSpchRcgnID : 14|3@0+ (1,0) [0|7] "" XXX + +BO_ 2152513536 LVM_Audio_Video_Req_LS: 2 XXX + SG_ LowVolModAudVidReq : 0|9@0+ (1,0) [0|0] "" XXX + SG_ LVMAVR_DispReq : 0|3@0+ (1,0) [0|7] "" XXX + SG_ LVMAVR_SpchRcgnAct : 9|2@0+ (1,0) [0|3] "" XXX + SG_ LVMAVR_PrmtAudReq : 11|2@0+ (1,0) [0|3] "" XXX + SG_ LVMAVR_StreoAudReq : 13|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154889216 Cluster_HMI_Animation_Req_LS: 1 XXX + SG_ ClstrHMIAnmReq : 7|3@0+ (1,0) [0|7] "" XXX + +BO_ 2154872832 Infotainment_Activation_Req_LS: 1 XXX + SG_ RmRflshUpdtAvail : 6|1@0+ (1,0) [0|1] "" XXX + SG_ InfoActvnReq : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2156961792 SSID_AMM_3_LS: 8 XXX + SG_ WiFiSSIDDgts17to24_Mp : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2154569728 Infotainment_System_State_LS: 1 XXX + SG_ InfotnmntSysSt : 7|5@0+ (1,0) [0|31] "" XXX + +BO_ 2151931904 Custom_Launch_Ctrl_LS: 8 XXX + SG_ LnchCtrlMdStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ LnchCtrlWhlSlpStat : 7|5@0+ (1,0) [0|31] "" XXX + SG_ PTExPrtclFltWrng3IO : 8|1@0+ (1,0) [0|1] "" XXX + SG_ AWDRecmndIO : 9|1@0+ (1,0) [0|1] "" XXX + SG_ LnchCtrlEngRPMStat : 15|6@0+ (1,0) [0|63] "" XXX + SG_ ACCSysSltdMd : 17|2@0+ (1,0) [0|3] "" XXX + SG_ VehSpdCntlSystmType : 20|3@0+ (1,0) [0|7] "" XXX + SG_ PTExPartFltManRegStat : 23|3@0+ (1,0) [0|7] "" XXX + SG_ TCSTempDsblReqIO : 24|1@0+ (1,0) [0|1] "" XXX + SG_ VehStbCmptvMdCstAvl : 25|1@0+ (1,0) [0|1] "" XXX + SG_ VehStbEnmntCstAvl : 26|1@0+ (1,0) [0|1] "" XXX + SG_ TCSysCstAvl : 27|1@0+ (1,0) [0|1] "" XXX + SG_ VehStbCmptvMdCurSt : 28|1@0+ (1,0) [0|1] "" XXX + SG_ ElctShfPriLtdPerfMdIO : 29|1@0+ (1,0) [0|1] "" XXX + SG_ RegVltCtlEngyRcvryAct : 30|1@0+ (1,0) [0|1] "" XXX + SG_ ACCSysSltdMdDispIO : 31|1@0+ (1,0) [0|1] "" XXX + SG_ LnchCtrlTmrVal : 35|4@0+ (1,0) [0|15] "" XXX + SG_ VehStbEnhmntCurSt : 36|1@0+ (1,0) [0|1] "" XXX + SG_ TCSysCurSt : 37|1@0+ (1,0) [0|1] "" XXX + SG_ TracAndStbScrnCnfg : 39|2@0+ (1,0) [0|3] "" XXX + SG_ BiFuelRflGaslinIndReq : 42|3@0+ (1,0) [0|7] "" XXX + SG_ AutoShtdwnIO : 43|1@0+ (1,0) [0|1] "" XXX + SG_ LnchCtrlBrkPresVal : 47|4@0+ (10,0) [0|150] "%" XXX + SG_ AutoShtdwnTmr : 55|8@0+ (1,0) [0|255] "min" XXX + SG_ FuelMdTrnstnIndReq : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2150244352 HMI_EngyConsmpHistGrph_1_LS: 8 XXX + SG_ EngyCnsHsGrphDspDtVal : 7|55@0+ (1,0) [0|0] "" XXX + SG_ ECHGDDV_Col1 : 2|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_EngyConsAvg : 7|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col3 : 8|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col2 : 13|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col4 : 19|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col6 : 25|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col5 : 30|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col7 : 36|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col9 : 42|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col8 : 47|5@0+ (1,0) [0|31] "" XXX + SG_ ECHGDDV_Col10 : 53|5@0+ (1,0) [0|31] "" XXX + +BO_ 2156953600 SSID_AMM_2_LS: 8 XXX + SG_ WiFiSSIDDgts9to16_Mp : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2151686144 SD_Card_LS: 2 XXX + SG_ SDCrdFullIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SDCrdErrIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ NoSDCrdPrIO : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155028480 Lane_Change_Threat_LS: 2 XXX + SG_ RgtLnChgThrt : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RtLnChngThrtAprchSpd : 15|8@0- (1,0) [-128|127] "km/h" XXX + +BO_ 2151915520 HMI_Display_LS: 8 XXX + SG_ AHDisbldDrOpnIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ AHDisbldStbltIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ AHAppBrkPedlIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ AHServcIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ShfToPrkBfExtngIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ AHEnbld : 5|1@0+ (1,0) [0|1] "" XXX + SG_ AHAct : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ESPDrvrIlkShfAtdIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ ESPTransMalfIO : 9|1@0+ (1,0) [0|1] "" XXX + SG_ ESPRngInvldReqIO : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ESPPrkInvldReqIO : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ESPHldShfLvrToEngRgIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ESPDrvrPrkIlkSftAtdIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ EngIntkArBstPrExtRngGroup : 14|15@0+ (1,0) [0|0] "" XXX + SG_ EngIntkArBstPrExtRng : 8|9@0+ (1,-110) [-110|401] "kPa" XXX + SG_ EngIntkArBstPrExtRngV : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ElcTransRngSlctVDA : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ElecShfRngDispRCExtd : 27|4@0+ (1,0) [0|15] "" XXX + SG_ ElecShfRngDisp : 31|4@0+ (1,0) [0|15] "" XXX + SG_ DrvEffInd : 39|8@0- (0.78125,0) [-100|99.21875] "%" XXX + SG_ ESPShfToDrvTryAgnIO : 43|1@0+ (1,0) [0|1] "" XXX + SG_ ESPTrnVehOffFrPrkIO : 44|1@0+ (1,0) [0|1] "" XXX + SG_ ESPTrnsCtlrMalfIO : 45|1@0+ (1,0) [0|1] "" XXX + SG_ ElcShfPriTwoGrsSlInRq : 47|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152153088 Right_Rear_Seat_Display_Stats_LS: 6 XXX + SG_ RRStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX + SG_ RRSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX + SG_ RRSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX + SG_ RRSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_HdrstFdRrUDn : 22|3@0+ (1,0) [0|7] "" XXX + SG_ RRSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX + SG_ RRSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX + SG_ RRSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX + SG_ RRSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX + SG_ RRSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX + SG_ RRSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152136704 Right_Rear_Seat_Massage_LS: 8 XXX + SG_ RRStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ RRSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ RRSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX + SG_ RRSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX + SG_ RRSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2152120320 Right_Rear_Seat_Actuator_LS: 8 XXX + SG_ RRStActPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ RRSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX + SG_ RRSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2152103936 Left_Rear_Seat_Display_Status_LS: 6 XXX + SG_ LRStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX + SG_ LRSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX + SG_ LRSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX + SG_ LRSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_HdrstFdRrUDn : 22|3@0+ (1,0) [0|7] "" XXX + SG_ LRSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX + SG_ LRSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX + SG_ LRSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX + SG_ LRSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX + SG_ LRSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX + SG_ LRSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152087552 Left_Rear_Seat_Massage_LS: 8 XXX + SG_ LRStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ LRSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ LRSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX + SG_ LRSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX + SG_ LRSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2152071168 Left_Rear_Seat_Actuator_LS: 8 XXX + SG_ LRStActPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ LRSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX + SG_ LRSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2153947136 Remote_Reflash_Stat_LS: 1 XXX + SG_ RmtRflshMdAct : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2152628224 OnBoard_Tester_Response_LS: 2 XXX + SG_ OBTCResp : 2|11@0+ (1,0) [0|0] "" XXX + SG_ OBTCR_Stat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ OBTCR_ReqstrID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ OBTCMstrStat : 5|3@0+ (1,0) [0|7] "" XXX + +BO_ 2152112128 Performanc_Mode_Vis_Scrn_Stat_LS: 5 XXX + SG_ PerfMdVislztnScrnStat : 0|33@0+ (1,0) [0|0] "" XXX + SG_ PMVSS_Snd : 0|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Trans : 10|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Eng : 13|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Drvln : 17|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Susp : 20|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Strng : 23|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_PsngrSeat : 24|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_DrvrSeat : 27|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_AdptCrsCnt : 30|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Disps : 34|3@0+ (1,0) [0|7] "" XXX + SG_ PMVSS_Exhst : 37|3@0+ (1,0) [0|7] "" XXX + SG_ PerfMdMainMenuType : 3|3@0+ (1,0) [0|7] "" XXX + +BO_ 2152775680 Front_360_Camera_On_LS: 3 XXX + SG_ DispFrt360CamOn : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RrPedDetCstStAvl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RrPedDetCstStVal : 4|3@0+ (1,0) [0|7] "" XXX + SG_ RrPdDetHptcStVbRqSeqN : 6|2@0+ (1,0) [0|3] "" XXX + SG_ TrgdVidRecFetrPrsnt : 7|1@0+ (1,0) [0|1] "" XXX + SG_ RrPdDetHptcStVbRq : 13|6@0+ (1,0) [0|63] "Pulse" XXX + SG_ DispTrgdVidOn : 14|1@0+ (1,0) [0|1] "" XXX + SG_ a_360DegVidFetrPrsnt : 15|1@0+ (1,0) [0|1] "" XXX + SG_ DispSmrtTwVidOn : 16|1@0+ (1,0) [0|1] "" XXX + SG_ RrPedDetCstAvail : 23|7@0+ (1,0) [0|0] "" XXX + SG_ RPDCA_Resrv3Avail : 17|1@0+ (1,0) [0|1] "" XXX + SG_ RPDCA_Resrv2Avail : 18|1@0+ (1,0) [0|1] "" XXX + SG_ RPDCA_Resrv1Avail : 19|1@0+ (1,0) [0|1] "" XXX + SG_ RPDCA_AlrtBrkAvail : 20|1@0+ (1,0) [0|1] "" XXX + SG_ RPDCA_AlrtAvail : 21|1@0+ (1,0) [0|1] "" XXX + SG_ RPDCA_OnAvail : 22|1@0+ (1,0) [0|1] "" XXX + SG_ RPDCA_OfAvail : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 2153857024 Teen_Driver_Event_Report_2_LS: 8 XXX + SG_ TnDrvRptCrdAvlDspDat : 6|13@0+ (1,0) [0|0] "" XXX + SG_ TDRCADD_FCHdwyAlrt : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_ABSAtvEvt : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_StCtrlEvnts : 2|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_TrCtrlEvnts : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_OvSpdEvnt : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_DistDrvn : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_MaxSpd : 6|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_LDWEvnts : 10|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_WOTEvnts : 11|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_DrwDrvAlrt : 12|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_FCMBrEvts : 13|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_RCMBrEvts : 14|1@0+ (1,0) [0|1] "" XXX + SG_ TDRCADD_FCImntAlrts : 15|1@0+ (1,0) [0|1] "" XXX + SG_ TeenDrvWOTEvntsRpt : 9|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TnDrvABSAtvEvntsRpt : 31|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TnDrvStblCtrlEvntsRpt : 37|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TnDrvDrowDrvAlrtsRpt : 43|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TnDrvTrCtrlEvntsRpt : 49|10@0+ (1,0) [0|1023] "counts" XXX + +BO_ 2153865216 Teen_Driver_Customization_Req_LS: 4 XXX + SG_ TeenDrvReq : 3|4@0+ (1,0) [0|15] "" XXX + SG_ TDOvSpdWrnCstStReq : 12|5@0+ (1,0) [0|0] "" XXX + SG_ TDOWCSR_DecSwAct : 8|1@0+ (1,0) [0|1] "" XXX + SG_ TDOWCSR_IncSwAct : 9|1@0+ (1,0) [0|1] "" XXX + SG_ TDOWCSR_StatReq : 12|3@0+ (1,0) [0|7] "" XXX + SG_ TnDrvSpdLmtCstStReq : 15|3@0+ (1,0) [0|7] "" XXX + SG_ TeenDrvPinCd : 23|16@0+ (1,0) [0|39321] "" XXX + +BO_ 2153840640 Teen_Driver_Event_Report_1_LS: 8 XXX + SG_ TDFwdClnHdwyAlrtsRpt : 5|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TnDrvDRLOffUnbIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvALCOffUnbIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ TDFwdClnImntAlrtsRpt : 11|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TDFwdClnMtgnBrEvRpt : 17|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TDRevClnMtgnBrEvRpt : 39|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TeenDrvMaxSpdRpt : 45|12@0+ (0.0625,0) [0|255.9375] "km/h" XXX + SG_ TeenDrvLDWEvntsRpt : 49|10@0+ (1,0) [0|1023] "counts" XXX + +BO_ 2153824256 Teen_Driver_Control_Info_LS: 8 XXX + SG_ TnDrvSpdLmtCstCrStVl : 2|11@0+ (1,0) [0|0] "" XXX + SG_ TDSLCCSV_SpLmtStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ TDSLCCSV_SpLmDisVl : 15|8@0+ (2,0) [0|510] "km/h" XXX + SG_ TnDrvSpdLmtCstStAvl : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvOvrSpdIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvGapAdjUnbIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TeenDrvPINStrd : 6|1@0+ (1,0) [0|1] "" XXX + SG_ TeenDrvFtrAvl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ TDOvSpdWrnCstCrStVl : 22|15@0+ (1,0) [0|0] "" XXX + SG_ TDOWCCSV_CrStVl : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" XXX + SG_ TDOWCCSV_CrStat : 22|3@0+ (1,0) [0|7] "" XXX + SG_ TDOvSpdWrnCstStAvl : 23|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvOvSpdEvntsRpt : 33|10@0+ (1,0) [0|1023] "counts" XXX + SG_ TeenDrvRsp : 37|4@0+ (1,0) [0|15] "" XXX + SG_ TeenDrvAct : 38|1@0+ (1,0) [0|1] "" XXX + SG_ TeenDrvAccelLimIO : 39|1@0+ (1,0) [0|1] "" XXX + SG_ TeenDrvDistDrvnRpt : 55|16@0+ (1,0) [0|65535] "km" XXX + +BO_ 2155151360 Psngr_Seat_Massage_Priority_LS: 8 XXX + SG_ PsngrStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ PSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ PSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX + SG_ PSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX + SG_ PSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2155134976 Psngr_Seat_Control_Disp_Stat_LS: 6 XXX + SG_ PsngrStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX + SG_ PSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX + SG_ PSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX + SG_ PSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_HdrstUDnFdRr : 22|3@0+ (1,0) [0|7] "" XXX + SG_ PSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX + SG_ PSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX + SG_ PSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX + SG_ PSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX + SG_ PSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX + SG_ PSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX + SG_ PsngrSetRrwdMvmnt : 6|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155118592 Psngr_Seat_Actuator_Priority_LS: 8 XXX + SG_ PsngrStActPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ PSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX + SG_ PSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2155102208 Driver_Seat_Massage_Priority_LS: 8 XXX + SG_ DrvStMassgPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ DSMP_Type2 : 3|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type1 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type4 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type3 : 15|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type6 : 19|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type5 : 23|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type8 : 27|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type7 : 31|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type10 : 35|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type9 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type12 : 43|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type11 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type14 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_Type13 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ DSMP_UnsdRsrvd : 56|1@0+ (1,0) [0|1] "" XXX + SG_ DSMP_MaxDispVal : 59|3@0+ (1,0) [0|7] "" XXX + SG_ DSMP_Type15 : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2155085824 Driver_Seat_Control_Disp_Stat_LS: 8 XXX + SG_ DrvStCtlDispStat : 3|44@0+ (1,0) [0|0] "" XXX + SG_ DSCDS_MassgTyp : 1|4@0+ (1,0) [0|15] "" XXX + SG_ DSCDS_Massg : 3|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_HdrstFwdRrwd : 8|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_HdrstUpDn : 10|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_MassgIntsty : 13|3@0+ (1,0) [0|7] "" XXX + SG_ DSCDS_HdrstTltFwdRr : 17|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_HdrstWngInOt : 19|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_HdrstUDnFdRr : 22|3@0+ (1,0) [0|7] "" XXX + SG_ DSCDS_LmbrUDnFdRr : 25|3@0+ (1,0) [0|7] "" XXX + SG_ DSCDS_LmbrFwdRr : 27|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_LmbrUpDwn : 29|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_UprShldrFdRr : 31|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_BkCshBlstInOt : 34|3@0+ (1,0) [0|7] "" XXX + SG_ DSCDS_CshBlstrInOut : 36|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_BkBlstrInOut : 38|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_UnsdRsrvd : 42|3@0+ (1,0) [0|7] "" XXX + SG_ DSCDS_DispReq : 43|1@0+ (1,0) [0|1] "" XXX + SG_ DSCDS_DispSz : 45|2@0+ (1,0) [0|3] "" XXX + SG_ DSCDS_CshLgAdjFdRr : 47|2@0+ (1,0) [0|3] "" XXX + SG_ CPMAPINFO4 : 5|1@0+ (1,0) [0|1] "" XXX + SG_ StrgColCommsFlt : 7|2@0+ (1,0) [0|3] "" XXX + SG_ StrgColInOutPos : 55|8@0+ (1,0) [0|255] "" XXX + SG_ StrgColUpDwnPos : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2155069440 Driver_Seat_Actuator_Priority_LS: 8 XXX + SG_ DrvStActPrty : 7|64@0+ (1,0) [0|0] "" XXX + SG_ DSAP_HdrstUpDn : 3|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_Massg : 7|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_HdrstUpDnFdRr : 11|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_HdrstFwdRrwd : 15|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_HdrstTltFwdRr : 19|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_HdrstWngsInOut : 23|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_LmbrUpDwn : 27|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_UprShldrFwdRr : 31|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_LmbrUpDnFdRr : 35|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_LmbrFwdRr : 39|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_CshBlstrInOut : 43|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_BkBlstrInOut : 47|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_CshLgthAdjFdRr : 51|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_BkCshBlstrInOut : 55|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_UnsdRsrvd : 59|4@0+ (1,0) [0|15] "" XXX + SG_ DSAP_DispSz : 63|4@0+ (1,0) [0|15] "" XXX + +BO_ 2156937216 PassPhrase_Digits_17_to_24_LS: 8 XXX + SG_ WiFiPssPhrsDgts17to24 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156929024 PassPhrase_Digits_9_to_16_LS: 8 XXX + SG_ WiFiPssPhrsDgts9to16 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156920832 PassPhrase_Digits_1_to_8_LS: 8 XXX + SG_ WiFiPssPhrsDgts1to8 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156871680 SSID_Digits_17_to_24_LS: 8 XXX + SG_ WiFiSSIDDgts17to24 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156863488 SSID_Digits_9_to_16_LS: 8 XXX + SG_ WiFiSSIDDgts9to16 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156855296 SSID_Digits_1_to_8_LS: 8 XXX + SG_ WiFiSSIDDgts1to8 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2152480768 Perfr_Data_Recorder_Lap_Info_LS: 6 XXX + SG_ PerfDatRecBstLpInfo : 2|19@0+ (1,0) [0|0] "" XXX + SG_ PDRBLI_BstLpTmMins : 2|6@0+ (1,0) [0|63] "min" XXX + SG_ PDRBLI_BstLpTmSecs : 12|6@0+ (1,0) [0|63] "sec" XXX + SG_ PDRBLI_BstLpTm100s : 22|7@0+ (0.01,0) [0|1.27] "sec" XXX + SG_ PerfDatRecLstLpInfo : 26|19@0+ (1,0) [0|0] "" XXX + SG_ PDRLLI_LstLpTmMins : 26|6@0+ (1,0) [0|63] "min" XXX + SG_ PDRLLI_LstLpTmSecs : 36|6@0+ (1,0) [0|63] "sec" XXX + SG_ PDRLLI_LstLpTm100s : 46|7@0+ (0.01,0) [0|1.27] "sec" XXX + +BO_ 2152497152 Perf_Data_Recroder_RT_Info_LS: 4 XXX + SG_ PerfDatRecRltmInfo : 1|26@0+ (1,0) [0|0] "" XXX + SG_ PDRRI_CrLpTmMins : 1|6@0+ (1,0) [0|63] "min" XXX + SG_ PDRRI_CrLpTmSecs : 11|6@0+ (1,0) [0|63] "" XXX + SG_ PDRRI_LpDiffTmSecs : 17|6@0+ (1,0) [0|63] "sec" XXX + SG_ PDRRI_CrLpTm10sSec : 21|4@0+ (0.1,0) [0|1.5] "sec" XXX + SG_ PDRRI_LpDiffTm10s : 27|4@0+ (0.1,0) [0|1.5] "sec" XXX + +BO_ 2153791488 ARB_State_LS: 1 XXX + SG_ ArtcldRngBrdSt : 2|3@0+ (1,0) [0|7] "" XXX + +BO_ 2149883904 BluetoothTetheringPairingRsp_LS: 7 XXX + SG_ BTTethrngPrngRsp : 4|53@0+ (1,0) [0|0] "" XXX + SG_ BTPR_RspInfoAvail : 0|1@0+ (1,0) [0|1] "" XXX + SG_ BTPR_RspStat : 4|4@0+ (1,0) [0|15] "" XXX + SG_ BTPR_RspVal : 15|48@0+ (1,0) [0|281474976710655] "" XXX + +BO_ 2150252544 HMI_EngyConsmpHistGrph_LS: 8 XXX + SG_ EngyConsmpHistGrph : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ECHG_EngyCnsmdAvg : 4|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_MeasUnit : 7|3@0+ (1,0) [0|7] "" XXX + SG_ ECHG_Column02 : 10|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column01 : 15|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column04 : 16|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column03 : 21|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column05 : 27|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column07 : 33|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column06 : 38|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column08 : 44|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column10 : 50|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_Column09 : 55|5@0+ (1,0) [0|31] "" XXX + SG_ ECHG_YAxisMaxVal : 58|3@0+ (1,0) [0|7] "" XXX + SG_ ECHG_XAxisTkMrkIntvl : 61|3@0+ (1,0) [0|7] "" XXX + +BO_ 2150391808 HMI_Hourmeter_Data_LS: 6 XXX + SG_ EngIdlAtvTm : 7|24@0+ (1,0) [0|16777215] "min" XXX + SG_ EngRunAtvTm : 31|24@0+ (1,0) [0|16777215] "min" XXX + +BO_ 2155913216 Diesel_Information_2_LS: 7 XXX + SG_ DslExhFldRmngDstHRsGroup : 7|16@0+ (1,0) [0|0] "" XXX + SG_ DslExhFldRmngDstHRs : 6|15@0+ (2,0) [0|65534] "km" XXX + SG_ DslExhFldRmngDstHRsV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ DslExhFluidLvlPrcntGroup : 16|9@0+ (1,0) [0|0] "" XXX + SG_ DslExhFluidLvlPrcntV : 16|1@0+ (1,0) [0|1] "" XXX + SG_ DslExhFluidLvlPrcnt : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DslEmnsOBDMrkt : 18|2@0+ (1,0) [0|3] "" XXX + SG_ PedFrndlyAlrtCsCrStVal : 21|3@0+ (1,0) [0|7] "" XXX + SG_ PedFrndlyAlrtCsSetAvl : 22|1@0+ (1,0) [0|1] "" XXX + SG_ PedFrndlyAlrtStat : 39|24@0+ (1,0) [0|0] "" XXX + SG_ PFAS_PFACrsOvrSpd : 34|8@0+ (1,0) [0|255] "km/h" XXX + SG_ PFAS_PFARevSnd : 36|2@0+ (1,0) [0|3] "" XXX + SG_ PFAS_PFAFwdSnd : 38|2@0+ (1,0) [0|3] "" XXX + SG_ PFAS_PFASndGenEn : 39|1@0+ (1,0) [0|1] "" XXX + SG_ PFAS_PFASndVolCtrl : 42|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ PFAS_SrvPedAlrtIO : 48|1@0+ (1,0) [0|1] "" XXX + SG_ PFAS_PFASysStat : 50|2@0+ (1,0) [0|3] "" XXX + +BO_ 2034 CCP_Data_Transmission_Object_LS: 8 XXX + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2032 CCP_Command_Receive_Object_LS: 8 XXX + SG_ DgnInf : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2152095744 HSGMLAN_Customization_Setings_LS: 5 XXX + SG_ DrvlnPerfMdCustAvl : 5|6@0+ (1,0) [0|0] "" XXX + SG_ DPMCA_DrvlPrfMd6Avl : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DrvlPrfMd5Avl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DrvlPrfMd4Avl : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DrvlPrfMd3Avl : 3|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DrvlPrfMd2Avl : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DrvlPrfMd1Avl : 5|1@0+ (1,0) [0|1] "" XXX + SG_ DispPerfCustMdAvl : 13|6@0+ (1,0) [0|0] "" XXX + SG_ DPMCA_DispPrfMd6Avl : 8|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DispPrfMd5Avl : 9|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DispPrfMd4Avl : 10|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DispPrfMd3Avl : 11|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DispPrfMd2Avl : 12|1@0+ (1,0) [0|1] "" XXX + SG_ DPMCA_DispPrfMd1Avl : 13|1@0+ (1,0) [0|1] "" XXX + SG_ SndPerfMdCustAvl : 21|6@0+ (1,0) [0|0] "" XXX + SG_ SPMCA_SndPrfMd6Avl : 16|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SndPrfMd5Avl : 17|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SndPrfMd4Avl : 18|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SndPrfMd3Avl : 19|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SndPrfMd2Avl : 20|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SndPrfMd1Avl : 21|1@0+ (1,0) [0|1] "" XXX + SG_ StrPerfMdCustAvl : 29|6@0+ (1,0) [0|0] "" XXX + SG_ SPMCA_StrPrfMd6Avl : 24|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_StrPrfMd5Avl : 25|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_StrPrfMd4Avl : 26|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_StrPrfMd3Avl : 27|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_StrPrfMd2Avl : 28|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_StrPrfMd1Avl : 29|1@0+ (1,0) [0|1] "" XXX + SG_ SusPerfMdCustAvl : 37|6@0+ (1,0) [0|0] "" XXX + SG_ SPMCA_SusPrfMd6Avl : 32|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SusPrfMd5Avl : 33|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SusPrfMd4Avl : 34|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SusPrfMd3Avl : 35|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SusPrfMd2Avl : 36|1@0+ (1,0) [0|1] "" XXX + SG_ SPMCA_SusPrfMd1Avl : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 2156945408 SSID_AMM_1_LS: 8 XXX + SG_ WiFiSSIDDgts1to8_Mp : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2152611840 OnBoard_Tester_Request_LS: 2 XXX + SG_ OBTCReq : 4|5@0+ (1,0) [0|0] "" XXX + SG_ OBTCR_Prty : 3|4@0+ (1,0) [0|15] "" XXX + SG_ OBTCR_Actv : 4|1@0+ (1,0) [0|1] "" XXX + SG_ OBTCReqstrStat : 7|3@0+ (1,0) [0|7] "" XXX + SG_ OBTCReqstrID : 15|8@0+ (1,0) [0|255] "" XXX + +BO_ 2153308160 Hyb_Redundant_Batt_Data2_LS: 4 XXX + SG_ RdHVltBatPckCrntGroup : 6|15@0+ (1,0) [0|0] "" XXX + SG_ RdHVltBatPckCrnt : 4|13@0- (0.15,0) [-614.4|614.25] "A" XXX + SG_ RdHVltBatPckCrntV : 5|1@0+ (1,0) [0|1] "" XXX + SG_ RdHVltBatPckCrntM : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RdHVltBatPckVltGroup : 21|14@0+ (1,0) [0|0] "" XXX + SG_ RdHVltBatPckVlt : 19|12@0+ (0.125,0) [0|511.875] "V" XXX + SG_ RdHVltBatPckVltV : 20|1@0+ (1,0) [0|1] "" XXX + SG_ RdHVltBatPckVltM : 21|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155970560 HVAC_PowerManager_Status_LS: 1 XXX + SG_ ClmCntLdShdLvlRq : 3|4@0+ (1,0) [0|15] "" XXX + SG_ ClmCntBatSaverIO : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151178240 Lighting_Customization_Rqst_1_LS: 4 XXX + SG_ LtRtHnTrGPSCstStRq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ LtRtHnTrCstStReq : 5|3@0+ (1,0) [0|7] "" XXX + SG_ AutHgBmAsSnCsStRq : 10|3@0+ (1,0) [0|7] "" XXX + SG_ AutHgBmAstCstStRq : 13|3@0+ (1,0) [0|7] "" XXX + SG_ AdpHgBmAsSnCsStRq : 18|3@0+ (1,0) [0|7] "" XXX + SG_ AdpHgBmAstCstStRq : 21|3@0+ (1,0) [0|7] "" XXX + SG_ AFLGPSCstStReq : 26|3@0+ (1,0) [0|7] "" XXX + SG_ AFLCstStReq : 29|3@0+ (1,0) [0|7] "" XXX + +BO_ 2154790912 Lighting_Customization_Info_2_LS: 2 XXX + SG_ AutHgBmAsCsCrStVal : 2|3@0+ (1,0) [0|7] "" XXX + SG_ AutHgBmAsSnCsCrStVa : 5|3@0+ (1,0) [0|7] "" XXX + SG_ AutHgBmAsCsStAvl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ AutHgBmAsSnCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ AdpHgBmAsCsCrStVal : 10|3@0+ (1,0) [0|7] "" XXX + SG_ AdpHgBmAsSnCsCrStVal : 13|3@0+ (1,0) [0|7] "" XXX + SG_ AdpHgBmAsCsStAvl : 14|1@0+ (1,0) [0|1] "" XXX + SG_ AdpHgBmAsSnCsStAvl : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151292928 V2V_Customization_Menu_LS: 5 XXX + SG_ TrfRdsdInfCsStAvail : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CntdVehBrkAltCsStAvl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ IntrStopAlrtCsSetAvl : 2|1@0+ (1,0) [0|1] "" XXX + SG_ IntrStAlrtCsCrSetVal : 5|3@0+ (1,0) [0|7] "" XXX + SG_ TrfRdsdInfCsCrStVal : 10|3@0+ (1,0) [0|7] "" XXX + SG_ CntdVehBrAltCsCrStVal : 13|3@0+ (1,0) [0|7] "" XXX + SG_ IntrStAlrtCsAvail : 22|7@0+ (1,0) [0|0] "" XXX + SG_ ISACA_Resrv4Avail : 16|1@0+ (1,0) [0|1] "" XXX + SG_ ISACA_Resrv3Avail : 17|1@0+ (1,0) [0|1] "" XXX + SG_ ISACA_Resrv2Avail : 18|1@0+ (1,0) [0|1] "" XXX + SG_ ISACA_Resrv1Avail : 19|1@0+ (1,0) [0|1] "" XXX + SG_ ISACA_AlrtBrkAvail : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ISACA_AlrtAvail : 21|1@0+ (1,0) [0|1] "" XXX + SG_ ISACA_OfAvail : 22|1@0+ (1,0) [0|1] "" XXX + SG_ CntdVehBrkAlrtCsAvail : 30|7@0+ (1,0) [0|0] "" XXX + SG_ CVBACA_Resrv5Avail : 24|1@0+ (1,0) [0|1] "" XXX + SG_ CVBACA_Resrv4Avail : 25|1@0+ (1,0) [0|1] "" XXX + SG_ CVBACA_Resrv3Avail : 26|1@0+ (1,0) [0|1] "" XXX + SG_ CVBACA_Resrv2Avail : 27|1@0+ (1,0) [0|1] "" XXX + SG_ CVBACA_Resrv1Avail : 28|1@0+ (1,0) [0|1] "" XXX + SG_ CVBACA_OnAvail : 29|1@0+ (1,0) [0|1] "" XXX + SG_ CVBACA_OfAvail : 30|1@0+ (1,0) [0|1] "" XXX + SG_ TrfRdsdInfCsAvail : 38|7@0+ (1,0) [0|0] "" XXX + SG_ TRICA_Resrv5Avail : 32|1@0+ (1,0) [0|1] "" XXX + SG_ TRICA_Resrv4Avail : 33|1@0+ (1,0) [0|1] "" XXX + SG_ TRICA_Resrv3Avail : 34|1@0+ (1,0) [0|1] "" XXX + SG_ TRICA_Resrv2Avail : 35|1@0+ (1,0) [0|1] "" XXX + SG_ TRICA_Resrv1Avail : 36|1@0+ (1,0) [0|1] "" XXX + SG_ TRICA_OnAvail : 37|1@0+ (1,0) [0|1] "" XXX + SG_ TRICA_OfAvail : 38|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151464960 V2V_Warnings_LS: 5 XXX + SG_ V2VWrngIndReq : 4|5@0+ (1,0) [0|31] "" XXX + SG_ V2VWrngDirctn : 7|3@0+ (1,0) [0|7] "" XXX + SG_ V2VWrngDistRemng : 9|10@0+ (1,0) [0|1023] "" XXX + SG_ V2VTrfLghtInfo : 28|13@0+ (1,0) [0|0] "" XXX + SG_ V2VTLI_TrfLghtTmPhsSw : 28|6@0+ (1,0) [0|63] "" XXX + SG_ V2VTLI_TrfLghtMntngDirctn : 32|1@0+ (1,0) [0|1] "" XXX + SG_ V2VTLI_TrfLghtValDirctn : 34|2@0+ (1,0) [0|3] "" XXX + SG_ V2VTLI_TrfLghtPhsArivl : 36|2@0+ (1,0) [0|3] "" XXX + SG_ V2VTLI_TrfLghtActlPhs : 38|2@0+ (1,0) [0|3] "" XXX + SG_ V2VSrvIndReq : 30|2@0+ (1,0) [0|3] "" XXX + +BO_ 2151448576 V2V_Seat_Vib_Request_LS: 3 XXX + SG_ V2VSysHptcStVibReq : 5|6@0+ (1,0) [0|63] "" XXX + SG_ V2VSysHptStVibRqSN : 7|2@0+ (1,0) [0|3] "" XXX + SG_ V2VSyLftHptStVbRq : 13|6@0+ (1,0) [0|63] "" XXX + SG_ V2VSyLftHptStVbRqSN : 15|2@0+ (1,0) [0|3] "" XXX + SG_ V2VSyRghtHptStVbRq : 21|6@0+ (1,0) [0|63] "" XXX + SG_ V2VSyRghtHptStVbRqSN : 23|2@0+ (1,0) [0|3] "" XXX + +BO_ 2153930752 Lane_Centering_Convenience_LS: 3 XXX + SG_ LCWrnIndReq : 4|5@0+ (1,0) [0|31] "" XXX + SG_ LCCDrvrAwrnsIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LnCntrVhlStpd : 6|1@0+ (1,0) [0|1] "" XXX + SG_ LnCntrNonRspDrvrCnd : 7|1@0+ (1,0) [0|1] "" XXX + SG_ LCConvMsgIndreq : 12|5@0+ (1,0) [0|31] "" XXX + SG_ LCCIndReq : 15|3@0+ (1,0) [0|7] "" XXX + SG_ LnCntrEsclnStat : 17|2@0+ (1,0) [0|3] "" XXX + SG_ LnCntrSpchPrmtReq : 19|2@0+ (1,0) [0|3] "" XXX + SG_ LnCntrngCtlIcnLoctn : 23|4@0- (1,0) [-8|7] "" XXX + +BO_ 2153889792 Lane_Centering_Arrow_LS: 5 XXX + SG_ LCArrwBlk1Act : 0|1@0+ (1,0) [0|1] "" XXX + SG_ LCArrwBlk2Act : 1|1@0+ (1,0) [0|1] "" XXX + SG_ LCArrwBlk3Act : 2|1@0+ (1,0) [0|1] "" XXX + SG_ LCArrwBlk4Act : 3|1@0+ (1,0) [0|1] "" XXX + SG_ LCArrwBlk5Act : 4|1@0+ (1,0) [0|1] "" XXX + SG_ LCArrwBlk2Offst : 15|8@0- (1,0) [-128|127] "" XXX + SG_ LCArrwBlk3Offst : 23|8@0- (1,0) [-128|127] "" XXX + SG_ LCArrwBlk4Offst : 31|8@0- (1,0) [-128|127] "" XXX + SG_ LCArrwBlk5Offst : 39|8@0- (1,0) [-128|127] "" XXX + +BO_ 2153914368 Energy_Usage_LS: 7 XXX + SG_ EngyUsgScrScal : 7|56@0+ (1,0) [0|0] "" XXX + SG_ EUSS_OTEgUgScrMxScVal : 0|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_OTEgUgScrMnScVal : 7|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_ITEgUgScrMnScVal : 9|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_ITEgUgScrMxScVal : 18|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_TcEgUgScrMnScVal : 27|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_TcEgUgScrMxScVal : 36|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_TrEgUgScrMnScVal : 45|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUSS_TrEgUgScrMxScVal : 54|7@0- (0.1,0) [-5|5] "" XXX + +BO_ 2151882752 PTO_Customization_Request_LS: 3 XXX + SG_ PTOTpStpSpdCsStReq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ PTOEngRnTmrCsStRq : 11|4@0+ (1,0) [0|15] "" XXX + SG_ PTOStdbySpdCsStReq : 14|3@0+ (1,0) [0|7] "" XXX + SG_ PTOSet1SpdCsStReq : 19|4@0+ (1,0) [0|15] "" XXX + SG_ PTOSet2SpdCsStReq : 23|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151899136 PTO_Status_LS: 5 XXX + SG_ PTORelBrkPedIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ PTORelAccPedIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PTORedEngSpdIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PTOPrsRelCltPedIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PTOPrsRelBrkPedIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PTOEngmntStatInd : 6|2@0+ (1,0) [0|3] "" XXX + SG_ PTODisengCrsCntlIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ PTOSet1SpdCsStAvl : 8|1@0+ (1,0) [0|1] "" XXX + SG_ PTOSet2SpdCsStAvl : 9|1@0+ (1,0) [0|1] "" XXX + SG_ PTOTpStpSpdCsStAvl : 10|1@0+ (1,0) [0|1] "" XXX + SG_ PTOEngRnTmrCsStAvl : 11|1@0+ (1,0) [0|1] "" XXX + SG_ PTOStdbySpdCsStAvl : 12|1@0+ (1,0) [0|1] "" XXX + SG_ PTOTransInGearIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ PTOSetPrkBrkIO : 14|1@0+ (1,0) [0|1] "" XXX + SG_ PTORelCltPedIO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ PTOStdbSpdCsCrStVal : 18|3@0+ (1,0) [0|7] "" XXX + SG_ PTOGroup : 20|2@0+ (1,0) [0|0] "" XXX + SG_ PTOVDA : 19|1@0+ (1,0) [0|1] "" XXX + SG_ PTOVDM : 20|1@0+ (1,0) [0|1] "" XXX + SG_ PTOManTransInGrIO : 21|1@0+ (1,0) [0|1] "" XXX + SG_ PTOAccelUpnBrkRelIO : 22|1@0+ (1,0) [0|1] "" XXX + SG_ PTOEngUpnBrkRelIO : 23|1@0+ (1,0) [0|1] "" XXX + SG_ PTOTpStSpdCsCrStVal : 26|3@0+ (1,0) [0|7] "" XXX + SG_ PTOEnRnTmCsCrStVal : 30|4@0+ (1,0) [0|15] "" XXX + SG_ PTOServIndOn : 31|1@0+ (1,0) [0|1] "" XXX + SG_ PTOSet1SpdCsCrStVal : 35|4@0+ (1,0) [0|15] "" XXX + SG_ PTOSet2SpdCsCrStVal : 39|4@0+ (1,0) [0|15] "" XXX + +BO_ 2150580224 HMI_UtlChrgIntrfr_Indication_LS: 5 XXX + SG_ CstmrNonUsblSOCGroup : 1|10@0+ (1,0) [0|0] "" XXX + SG_ CstmrNonUsblSOCV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ CstmrNonUsblSOC : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ CstNonUsbSOCDspLvl : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ PrpDspTtlPwrLvlPct : 24|9@0- (0.392157,0) [-100.392192|100.000035] "%" XXX + +BO_ 2151735296 Rear_Cross_Traffic_Alert_Ind_LS: 1 XXX + SG_ RrCrsTrfcAlrtOffIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ LnChgAlrtOffIndOn : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RtRrCrsTrfcAlrtEnbld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RtSBZAlrtEnbld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ RtLnChgAlrtEnbld : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RtSdDetSysTmpDsbld : 5|1@0+ (1,0) [0|1] "" XXX + SG_ RtSdDetSysServDsbld : 6|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151792640 Rear_Cross_Traffic_Alert_Rght_LS: 5 XXX + SG_ RrCTfcRHptcStRqSqN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ RrCTfcRHptcStReq : 7|6@0+ (1,0) [0|63] "" XXX + SG_ RrCrsTrfAltRgtIndCtrl : 34|3@0+ (1,0) [0|0] "" XXX + SG_ RCTARIC_IndReq : 33|2@0+ (1,0) [0|3] "" XXX + SG_ RCTARIC_Indctr1Act : 34|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149826560 FCA_VisionBased_Info_2_LS: 4 XXX + SG_ FCAGpStng : 2|3@0+ (1,0) [0|7] "" XXX + SG_ FCAHdwyStngIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ FCACrusCtrlCnclReqd : 4|1@0+ (1,0) [0|1] "" XXX + SG_ FCABrkPrflReq : 5|1@0+ (1,0) [0|1] "" XXX + SG_ FwdClnAlrtOffIO11E : 6|1@0+ (1,0) [0|1] "" XXX + SG_ FwdClnAlrtPr11E : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtVsnFsdSpdGroup : 15|15@0+ (1,0) [0|0] "" XXX + SG_ SpdLmtVsnFsdSpd : 15|8@0+ (1,0) [0|255] "" XXX + SG_ SpdLmtVsnFsdSpdM : 17|1@0+ (1,0) [0|1] "" XXX + SG_ FwdObjAlrtInd11E : 16|9@0+ (1,0) [0|0] "" XXX + SG_ FOAI_AlrtChmIhbRq11E : 16|1@0+ (1,0) [0|1] "" XXX + SG_ FOAI_VehAhdIndRq11E : 27|4@0+ (1,0) [0|15] "" XXX + SG_ FOAI_AlrtWrnIndRq11E : 31|4@0+ (1,0) [0|15] "" XXX + SG_ SpdLmtVnFsSpdNwDet : 18|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtVsnFsdSpdUnt : 19|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149957632 Park_Assist_ESSprocess_Info_LS: 1 XXX + SG_ ClsnMtgtnInhbtd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstInhbtReq : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstRrObjSnsngRqAct : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstOprtrDsrdStat : 4|2@0+ (1,0) [0|3] "" XXX + +BO_ 2149941248 Park_Assist_ESSbased_Info_LS: 5 XXX + SG_ PrkAstRrExtdDstUnfltd : 3|12@0+ (0.01,0) [0|40.95] "m" XXX + SG_ PrkAstRrSysStatUnfltd : 5|2@0+ (1,0) [0|3] "" XXX + SG_ PrkAstFntnSnsDstrbdIO : 16|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstFntnSnrsBlkd : 17|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstFntnFld : 18|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstFntnDsbldIO : 19|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstFntnClnPrkAstIO : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ClsnMtgtnInhbtReqtd : 21|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstRrObjSnsngAct : 22|1@0+ (1,0) [0|1] "" XXX + SG_ PARrRgn3ObjStatUnfltd : 27|4@0+ (1,0) [0|15] "" XXX + SG_ PARrRgn4ObjStatUnfltd : 31|4@0+ (1,0) [0|15] "" XXX + SG_ PARrRgn1ObjStatUnfltd : 35|4@0+ (1,0) [0|15] "" XXX + SG_ PARrRgn2ObjStatUnfltd : 39|4@0+ (1,0) [0|15] "" XXX + +BO_ 2156314624 High_Volt_Time_Based_Chrg_LS: 8 XXX + SG_ TODCNxtPlnndDprtrTm : 5|14@0+ (1,0) [0|0] "" XXX + SG_ TODCNPDT_Hr : 2|5@0+ (1,0) [0|31] "Hour" XXX + SG_ TODCNPDT_DyOfWk : 5|3@0+ (1,0) [0|7] "" XXX + SG_ TODCNPDT_Min : 13|6@0+ (1,0) [0|63] "Minute" XXX + SG_ OffBrdCSFltDtctd : 6|1@0+ (1,0) [0|1] "" XXX + SG_ OBVhCsACChgRqBnVs : 7|1@0+ (1,0) [0|1] "" XXX + SG_ HVChgSyChgLvlPrfDt : 16|25@0+ (1,0) [0|0] "" XXX + SG_ HVCSCLPD_UsrIntTyp : 16|2@0+ (1,0) [0|3] "" XXX + SG_ HVCSCLPD_NrmChrgC : 27|5@0+ (1,0) [0|31] "A" XXX + SG_ HVCSCLPD_ChgLvlPfS : 30|3@0+ (1,0) [0|7] "" XXX + SG_ HVCSCLPD_RdCrntLv2 : 33|5@0+ (1,0) [0|31] "A" XXX + SG_ HVCSCLPD_RdCrntLv1 : 38|5@0+ (1,0) [0|31] "A" XXX + SG_ HVCSCLPD_RdCrntLv3 : 44|5@0+ (1,0) [0|31] "A" XXX + SG_ HVChrgAbrtRsn : 19|3@0+ (1,0) [0|7] "" XXX + SG_ TODCOpMd : 22|3@0+ (1,0) [0|7] "" XXX + SG_ HVChrgSysSplyFltIO : 23|1@0+ (1,0) [0|1] "" XXX + SG_ TODCDspMnPgTmpOr : 52|5@0+ (1,0) [0|0] "" XXX + SG_ TODCDMPTO_TpOvR : 51|4@0+ (1,0) [0|15] "" XXX + SG_ TODCDMPTO_CmPgR : 52|1@0+ (1,0) [0|1] "" XXX + SG_ HVChrgSysStNot : 55|3@0+ (1,0) [0|7] "" XXX + SG_ HVBatBlkSOC : 63|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2150449152 Engine_Information_5_LS: 4 XXX + SG_ SrvcFlSysPrkInOpnArIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvTrCtrlOffUnbIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvStblCtrlOffUnbIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ InActFuelMdFuelLvlIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ FuelSysNEmsRltMalfAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ EngInltSpcfcHmdtyGroup : 7|16@0+ (1,0) [0|0] "" XXX + SG_ EngInltSpcfcHmdtyM : 6|1@0+ (1,0) [0|1] "" XXX + SG_ EngInltSpcfcHmdtyV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EngInltSpcfcHmdty : 15|8@0+ (0.0196078,0) [0|4.999989] "% water" XXX + SG_ AutoStpInhbtRsnInd : 23|8@0+ (1,0) [0|0] "" XXX + SG_ ASIRI_Indication08 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication07 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication06 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication05 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication04 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication03 : 21|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication02 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ASIRI_Indication01 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtrSttngTypAct : 25|2@0+ (1,0) [0|3] "" XXX + SG_ ManTransIndReq : 28|3@0+ (1,0) [0|7] "" XXX + SG_ ESPDrvrExtIO : 29|1@0+ (1,0) [0|1] "" XXX + SG_ ESPDrvrDrStIndtrmntIO : 30|1@0+ (1,0) [0|1] "" XXX + SG_ ESPAutoPrkIO : 31|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149810176 FCA_VisionBased_Info_1_LS: 1 XXX + SG_ FCAHptcStVbnRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ FCAHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX + +BO_ 2149793792 FCA_VisionBased_Info_LS: 6 XXX + SG_ FwdClnAlrtCustCrntSetngVal : 3|3@0+ (1,0) [0|7] "" XXX + SG_ FCACustStngAvlbl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ VhlAhdDstIndReq : 26|19@0+ (1,0) [0|0] "" XXX + SG_ VADIR_IndLvl : 26|4@0+ (1,0) [0|15] "" XXX + SG_ VADIR_FlwTme : 38|7@0+ (0.1,0) [0|12.7] "s" XXX + SG_ VADIR_FlwDst : 47|8@0+ (1,0) [0|255] "m" XXX + +BO_ 2150080512 Aux_Coolant_Heater_Status_LS: 8 XXX + SG_ EngAstHtDfrdHtMdAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCsCrStVal : 2|2@0+ (1,0) [0|3] "" XXX + SG_ AuxClntHtrVlvStat : 5|3@0+ (1,0) [0|7] "" XXX + SG_ LBCChrgLvlPrfExpIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCstmrDaRstResp : 12|5@0+ (1,0) [0|0] "" XXX + SG_ LBCCDRR_PosNumbr : 10|3@0+ (1,0) [0|7] "" XXX + SG_ LBCCDRR_ClrStrdPosResp : 12|2@0+ (1,0) [0|3] "" XXX + SG_ LBCPosStgStat : 20|5@0+ (1,0) [0|0] "" XXX + SG_ LBCPSS_PosUpdtLct : 18|3@0+ (1,0) [0|7] "" XXX + SG_ LBCPSS_PosUpdtStat : 20|2@0+ (1,0) [0|3] "" XXX + SG_ LBCVehLctStat : 27|4@0+ (1,0) [0|0] "" XXX + SG_ LBCVLS_VehGPSLct : 26|3@0+ (1,0) [0|7] "" XXX + SG_ LBCVLS_VehGPSLctV : 27|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCstmrFdbk : 31|4@0+ (1,0) [0|0] "" XXX + SG_ LBCCF_Lct4PosStrdIO : 28|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCF_Lct3PosStrdIO : 29|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCF_Lct2PosStrdIO : 30|1@0+ (1,0) [0|1] "" XXX + SG_ LBCCF_Lct1PosStrdIO : 31|1@0+ (1,0) [0|1] "" XXX + SG_ ChrgCyclElecEngyEcnEq : 35|12@0+ (0.1,0) [0|409.5] "km/l" XXX + SG_ ChrgCyclOvrlEngyEcnEq : 51|12@0+ (0.1,0) [0|409.5] "km/l" XXX + +BO_ 2153873408 Heated_Steering_Whl_Rqsted_LS: 1 XXX + SG_ MnlHtdStWhlRqstd : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2152128512 Performance_Mode_Cust_Setings_LS: 4 XXX + SG_ ACCPerfMdCustAvl : 5|6@0+ (1,0) [0|0] "" XXX + SG_ ACCPMCA_ACCPrfMd6Avl : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ACCPMCA_ACCPrfMd5Avl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ACCPMCA_ACCPrfMd4Avl : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACCPMCA_ACCPrfMd3Avl : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ACCPMCA_ACCPrfMd2Avl : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ACCPMCA_ACCPrfMd1Avl : 5|1@0+ (1,0) [0|1] "" XXX + SG_ DrvrStPerfMdCustAvl : 13|6@0+ (1,0) [0|0] "" XXX + SG_ DSPMCA_DrvrStPrfMd6Avl : 8|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvrStPrfMd5Avl : 9|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvrStPrfMd4Avl : 10|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvrStPrfMd3Avl : 11|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvrStPrfMd2Avl : 12|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvrStPrfMd1Avl : 13|1@0+ (1,0) [0|1] "" XXX + SG_ PsngStPerfMdCustAvl : 21|6@0+ (1,0) [0|0] "" XXX + SG_ PSPMCA_PsngStPrfMd6Avl : 16|1@0+ (1,0) [0|1] "" XXX + SG_ PSPMCA_PsngStPrfMd5Avl : 17|1@0+ (1,0) [0|1] "" XXX + SG_ PSPMCA_PsngStPrfMd4Avl : 18|1@0+ (1,0) [0|1] "" XXX + SG_ PSPMCA_PsngStPrfMd3Avl : 19|1@0+ (1,0) [0|1] "" XXX + SG_ PSPMCA_PsngStPrfMd2Avl : 20|1@0+ (1,0) [0|1] "" XXX + SG_ PSPMCA_PsngStPrfMd1Avl : 21|1@0+ (1,0) [0|1] "" XXX + SG_ DrvStyPerfMdCustAvl : 30|7@0+ (1,0) [0|0] "" XXX + SG_ DSPMCA_DrvStyPrfMd7Avl : 24|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvStyPrfMd6Avl : 25|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvStyPrfMd5Avl : 26|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvStyPrfMd4Avl : 27|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvStyPrfMd3Avl : 28|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvStyPrfMd2Avl : 29|1@0+ (1,0) [0|1] "" XXX + SG_ DSPMCA_DrvStyPrfMd1Avl : 30|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151997440 Driver_Drowsiness_Dtctn_Stat_LS: 5 XXX + SG_ DrvDrowSysIndRq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ DrvDrwDetCsCrStVal : 5|3@0+ (1,0) [0|7] "" XXX + SG_ DrvDrowDetCstStAvl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ DrvDrsnHptcStRqSeqN : 9|2@0+ (1,0) [0|3] "" XXX + SG_ DrDrwSysHptcStVbnRq : 15|6@0+ (1,0) [0|63] "" XXX + +BO_ 2156331008 High_Voltage_EnergyMgmt_Ctrl_LS: 7 XXX + SG_ LwRngLVLdShdRq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ HVDpltnMdMxCnfdcRg : 11|12@0+ (0.1,0) [0|409.5] "km" XXX + SG_ HVDpltnMdMiCnfdcRg : 27|12@0+ (0.1,0) [0|409.5] "km" XXX + SG_ HVDpltnMdMxGugRg : 43|12@0+ (0.1,0) [0|409.5] "km" XXX + +BO_ 2151776256 Rear_Cross_Traffic_Alert_Left_LS: 5 XXX + SG_ RrCTfcLHptcStRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ RrCTfcLHptcStReq : 7|6@0+ (1,0) [0|63] "" XXX + SG_ RrCrsTrfAltLftIndCtrl : 34|3@0+ (1,0) [0|0] "" XXX + SG_ RCTALIC_IndReq : 33|2@0+ (1,0) [0|3] "" XXX + SG_ RCTALIC_Indctr1Act : 34|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154774528 Lighting_Customization_Info_1_LS: 1 XXX + SG_ LtRtHnTrCstStVal : 2|3@0+ (1,0) [0|7] "" XXX + SG_ LtRtHnTrGPCsCrStVal : 5|3@0+ (1,0) [0|7] "" XXX + SG_ LtRtHnTrCstStAvail : 6|1@0+ (1,0) [0|1] "" XXX + SG_ LtRtHnTrGPSCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150375424 Eng_Maintenance_Mode_Strt_Req_LS: 3 XXX + SG_ MntnceMdStEngRq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ EngAstHtCstStRq : 3|3@0+ (1,0) [0|7] "" XXX + SG_ EngAstHtPlgInCstStRq : 6|3@0+ (1,0) [0|7] "" XXX + SG_ DsplTrnsShftLvrLckRqd : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EngyCnsHistGrphRstRq : 8|1@0+ (1,0) [0|1] "" XXX + SG_ USBProgInPrgrs : 9|1@0+ (1,0) [0|1] "" XXX + SG_ LBCPosMdfcReq : 12|3@0+ (1,0) [0|7] "" XXX + SG_ LBCCsStReq : 14|2@0+ (1,0) [0|3] "" XXX + SG_ LBCCstmrDaRstReq : 20|5@0+ (1,0) [0|0] "" XXX + SG_ LBCCDRR_PosNum : 18|3@0+ (1,0) [0|7] "" XXX + SG_ LBCCDRR_ClrStrdPosReq : 20|2@0+ (1,0) [0|3] "" XXX + +BO_ 2150383616 Engine_Maintenance_Mode_Req_LS: 8 XXX + SG_ MntnceMdDsplyRq : 3|4@0+ (1,0) [0|15] "" XXX + SG_ EngMntnceMdAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ EngMntncePrcntCpl : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ EngPrpDspPwrLvlPct : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ EstElecPrpCap : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ PrpCapDspOpPs : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ PrpDspTtlPwr : 45|13@0+ (0.5,-326.6) [-326.6|3768.9] "kW" XXX + SG_ BatPrpDspPwrLvlPct : 48|9@0- (0.392157,0) [-100.392192|100.000035] "%" XXX + +BO_ 2151981056 Drive_Cycle_Efficiency_LS: 8 XXX + SG_ DstTrvldDt : 7|51@0+ (1,0) [0|0] "" XXX + SG_ DTD_BattPrpDstTrvld : 7|17@0+ (0.015625,0) [0|2047.984375] "km" XXX + SG_ DTD_FuelPrpDstTrvld : 22|17@0+ (0.015625,0) [0|2047.984375] "km" XXX + SG_ DTD_DrvCyclDstTrvld : 37|17@0+ (0.015625,0) [0|2047.984375] "km" XXX + SG_ DrvCyclBatPropRat : 50|11@0+ (0.048852,0) [0|100.000044] "%" XXX + +BO_ 2151964672 Drive_Cycle_Energy_Efficiency_LS: 8 XXX + SG_ DrvCyclBatCondEnrgEfncy : 7|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DrvCyclCbnCondEnrgEfncy : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DrvCyclDrvStEnrgEfncy : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DrvCyclTtlEnrgEfncy : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DrvCyclFuelEnmy : 47|12@0+ (0.1,0) [0|409.5] "km/liters" XXX + SG_ DrvCyclFuelUsd : 51|12@0+ (0.125,0) [0|511.875] "liters" XXX + +BO_ 2156298240 High_Volt_Batt_Time_Pwr_Chrg_LS: 8 XXX + SG_ HVBatCmpltTmHghPwrChrg : 7|14@0+ (1,0) [0|0] "" XXX + SG_ HVBCTHPC_HrOfDy : 4|5@0+ (1,0) [0|31] "Hour" XXX + SG_ HVBCTHPC_DyOfWk : 7|3@0+ (1,0) [0|7] "" XXX + SG_ HVBCTHPC_MntOfHr : 15|6@0+ (1,0) [0|63] "Minute" XXX + SG_ HVBatCmpltTmLwPwrChrg : 9|14@0+ (1,0) [0|0] "" XXX + SG_ HVBCTLPC_DyOfWk : 9|3@0+ (1,0) [0|7] "" XXX + SG_ HVBCTLPC_MntOfHr : 17|6@0+ (1,0) [0|63] "Minute" XXX + SG_ HVBCTLPC_HrOfDy : 22|5@0+ (1,0) [0|31] "Hour" XXX + SG_ HVBatStrTmHghPwrChrg : 27|14@0+ (1,0) [0|0] "" XXX + SG_ HVBSTHPC_HrOfDy : 24|5@0+ (1,0) [0|31] "Hour" XXX + SG_ HVBSTHPC_DyOfWk : 27|3@0+ (1,0) [0|7] "" XXX + SG_ HVBSTHPC_MntOfHr : 35|6@0+ (1,0) [0|63] "Minute" XXX + SG_ HVBatStrTmLwPwrChrg : 45|14@0+ (1,0) [0|0] "" XXX + SG_ HVBSTLPC_HrOfDy : 42|5@0+ (1,0) [0|31] "Hour" XXX + SG_ HVBSTLPC_DyOfWk : 45|3@0+ (1,0) [0|7] "" XXX + SG_ HVBSTLPC_MntOfHr : 53|6@0+ (1,0) [0|63] "Minute" XXX + SG_ HVChrgSysDpTmExdSt : 58|3@0+ (1,0) [0|0] "" XXX + SG_ HVCSDTES_NPDTIO : 56|1@0+ (1,0) [0|1] "" XXX + SG_ HVCSDTES_HiPwrCIO : 57|1@0+ (1,0) [0|1] "" XXX + SG_ HVCSDTES_LoPwrCIO : 58|1@0+ (1,0) [0|1] "" XXX + SG_ HTRActvIndOn : 59|1@0+ (1,0) [0|1] "" XXX + SG_ InsfcntTmTFlChrgIO : 60|1@0+ (1,0) [0|1] "" XXX + SG_ InvldHMIEtrIO : 61|1@0+ (1,0) [0|1] "" XXX + SG_ HVBatChrgCrdAlrtReq : 63|2@0+ (1,0) [0|3] "" XXX + +BO_ 2149924864 Drv_Pref_Mode_Switch_Status_LS: 8 XXX + SG_ DrvSelMd1Stat : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd1ReqDnd : 1|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd2Stat : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd2ReqDnd : 3|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd3Stat : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd3ReqDnd : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HilRlbkCtrlActIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ FwdClnMtgnBrkReqAct : 7|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMdSelnStat : 8|17@0+ (1,0) [0|0] "" XXX + SG_ DSMSS_DrvSelMd1Un : 8|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd1Pn : 16|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd8Un : 17|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd7Un : 18|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd6Un : 19|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd5Un : 20|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd4Un : 21|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd3Un : 22|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd2Un : 23|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd0Pn : 24|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd8Pn : 25|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd7Pn : 26|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd6Pn : 27|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd5Pn : 28|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd4Pn : 29|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd3Pn : 30|1@0+ (1,0) [0|1] "" XXX + SG_ DSMSS_DrvSelMd2Pn : 31|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd4Stat : 9|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd4ReqDnd : 10|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd5Stat : 11|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd5ReqDnd : 12|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd6Stat : 13|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd6ReqDnd : 14|1@0+ (1,0) [0|1] "" XXX + SG_ PTOMobModTrnsInGrIO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ECODrvAsstDsplyStat : 34|11@0+ (1,0) [0|0] "" XXX + SG_ EDADS_ShftIndStat : 33|2@0+ (1,0) [0|3] "" XXX + SG_ EDADS_EcoDrvShftIO : 34|1@0+ (1,0) [0|1] "" XXX + SG_ EDADS_RcmndtFwdGr : 43|4@0+ (1,0) [0|15] "" XXX + SG_ EDADS_CrntFwdMsdG : 47|4@0+ (1,0) [0|15] "" XXX + SG_ DrvSelMd7Stat : 35|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd7ReqDnd : 36|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd8Stat : 37|1@0+ (1,0) [0|1] "" XXX + SG_ DrvSelMd8ReqDnd : 38|1@0+ (1,0) [0|1] "" XXX + SG_ FstIdlMdAct : 39|1@0+ (1,0) [0|1] "" XXX + SG_ DsplyPerfMdRq : 50|3@0+ (1,0) [0|7] "" XXX + SG_ TireLFLowTracIO : 51|1@0+ (1,0) [0|1] "" XXX + SG_ TireLRLowTracIO : 52|1@0+ (1,0) [0|1] "" XXX + SG_ TireRFLowTracIO : 53|1@0+ (1,0) [0|1] "" XXX + SG_ TireRRLowTracIO : 54|1@0+ (1,0) [0|1] "" XXX + SG_ a_12VBatSysUnstab : 55|1@0+ (1,0) [0|1] "" XXX + SG_ ColPrepSysCustAvail : 62|7@0+ (1,0) [0|0] "" XXX + SG_ CPSCA_Resrv3Avail : 56|1@0+ (1,0) [0|1] "" XXX + SG_ CPSCA_Resrv2Avail : 57|1@0+ (1,0) [0|1] "" XXX + SG_ CPSCA_Resrv1Avail : 58|1@0+ (1,0) [0|1] "" XXX + SG_ CPSCA_AlrtBrkStrAvail : 59|1@0+ (1,0) [0|1] "" XXX + SG_ CPSCA_AlrtBrkAvail : 60|1@0+ (1,0) [0|1] "" XXX + SG_ CPSCA_AlrtAvail : 61|1@0+ (1,0) [0|1] "" XXX + SG_ CPSCA_OffAvail : 62|1@0+ (1,0) [0|1] "" XXX + +BO_ 2152054784 HMI_Disp_Hyb_Animation_Status_LS: 1 XXX + SG_ AnmStrtReq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ IntPnlClstrAnmtStat : 5|3@0+ (1,0) [0|7] "" XXX + SG_ FuelEconMetDispUnts : 6|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150301696 HMI_Animation_Initiator_LS: 1 XXX + SG_ WlcAnmReq : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150563840 HMI_AnimationHybridRadio_LS: 3 XXX + SG_ RadAnmtStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ RadAudQueStat : 5|3@0+ (1,0) [0|7] "" XXX + SG_ DrStStatDispAct : 6|1@0+ (1,0) [0|1] "" XXX + SG_ PsStStatDispAct : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154758144 Auxiliary_Heater_Active_LS: 1 XXX + SG_ ChldLckOtSwAct : 1|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154577920 Amp_Sink_Stat_LS: 2 XXX + SG_ AmpSnkStat : 4|13@0+ (1,0) [0|0] "" XXX + SG_ ASS_SurndAvail : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPAvail : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_VehNoisCmpnAvail : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_PhLckdLpLckd : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_MtxSnkMutStat : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd7Prsnt : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd6Prsnt : 9|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd5Prsnt : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd4Prsnt : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd3Prsnt : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd2Prsnt : 13|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd1Prsnt : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ASS_DSPMd0Prsnt : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154594304 Amp_Settings_Tone_Ctrl_LS: 5 XXX + SG_ AmpSetTonCtrl : 1|34@0+ (1,0) [0|0] "" XXX + SG_ ASTC_ChimSnkLvl : 1|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX + SG_ ASTC_ChimSnkSpkrPos : 9|4@0+ (1,0) [0|15] "" XXX + SG_ ASTC_SurndLvl : 21|6@0- (1,0) [-32|31] "" XXX + SG_ ASTC_MtxSnkMutRmpTm : 25|8@0+ (5,0) [0|1275] "ms" XXX + SG_ ASTC_MtxSnkMut : 26|1@0+ (1,0) [0|1] "" XXX + SG_ ASTC_DSPMd : 30|4@0+ (1,0) [0|15] "" XXX + SG_ ASTC_VehNoisCmpnAct : 31|1@0+ (1,0) [0|1] "" XXX + SG_ ASTC_GblAudSnkMut : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ASTC_AmpLwPwrSt : 33|1@0+ (1,0) [0|1] "" XXX + SG_ InfotnBkltngConfigSt : 3|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154586112 Amp_Settings_Sink_Lvl_Ctrl_LS: 8 XXX + SG_ AmpSetSnkLvlCtrl : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ASSLC_MtxSnkLvl : 7|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX + SG_ ASSLC_MxPrmtSnkLvl : 15|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX + SG_ ASSLC_AudFdbkSnkLvl : 23|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX + SG_ ASSLC_FvSnkLvl : 31|8@0+ (0.5,-127.5) [-127.5|0] "dB" XXX + SG_ ASSLC_MtxSnkFd : 33|6@0- (1,0) [-32|31] "" XXX + SG_ ASSLC_MtxSnkBal : 39|6@0- (1,0) [-32|31] "" XXX + SG_ ASSLC_MtxSnkBass : 43|6@0- (1,0) [-32|31] "" XXX + SG_ ASSLC_MtxSnkMdrng : 53|6@0- (1,0) [-32|31] "" XXX + SG_ ASSLC_AutoLdnsCmpnAct : 56|1@0+ (1,0) [0|1] "" XXX + SG_ ASSLC_VcSrcActOnMtx : 57|1@0+ (1,0) [0|1] "" XXX + SG_ ASSLC_MtxSnkTrbl : 63|6@0- (1,0) [-32|31] "" XXX + +BO_ 2152857600 ACC_TrafficJam_RouteSpd_Stat_LS: 3 XXX + SG_ ACCRteSpdDrvIntvReq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ACCTrfcJamAstActStat : 10|3@0+ (1,0) [0|7] "" XXX + SG_ ACCRteSpdAdaptStat : 12|2@0+ (1,0) [0|3] "" XXX + SG_ ACCGrnMdStat : 14|2@0+ (1,0) [0|3] "" XXX + SG_ ACCTrfcJamAstRmnTm : 23|8@0+ (1,0) [0|255] "sec" XXX + +BO_ 2158149632 High_Volt_Bat_Time_Bsd_Rsp_1_LS: 7 XXX + SG_ HVBatTmBsSsnChRsp : 0|14@0+ (1,0) [0|0] "" XXX + SG_ HVBTBSCR_SsnStat : 0|2@0+ (1,0) [0|3] "" XXX + SG_ HVBTBSCR_SsnMthStat : 11|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBSCR_SsnSlctStat : 14|3@0+ (1,0) [0|7] "" XXX + SG_ HVBTBSCR_SsnDyStat : 23|5@0+ (1,0) [0|31] "day" XXX + SG_ HVBatTmBsChrgStRsp : 3|3@0+ (1,0) [0|7] "" XXX + SG_ HVBatCrgDspStat : 6|3@0+ (1,0) [0|7] "" XXX + SG_ HVBatTmBsChrgRtRsp : 17|10@0+ (1,0) [0|0] "" XXX + SG_ HVBTBCRS_ChRtEnblStat : 17|2@0+ (1,0) [0|3] "" XXX + SG_ HVBTBCRS_ChRtSlctStat : 27|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBCRS_ChRtDStat : 31|4@0+ (1,0) [0|15] "" XXX + SG_ EngyCnsHsGrphCnfgDt : 36|13@0+ (1,0) [0|0] "" XXX + SG_ ECHGCD_YAxMaxVal : 32|6@0+ (4,0) [0|252] "" XXX + SG_ ECHGCD_MeasUt : 36|4@0+ (1,0) [0|15] "" XXX + SG_ ECHGCD_XAxTkMrkInterv : 42|3@0+ (1,0) [0|7] "" XXX + SG_ EgyCnsHstGphInsEgyCns : 55|5@0+ (1,0) [0|31] "" XXX + +BO_ 2158116864 High_Volt_Bat_Time_Bsd_Rsp_LS: 8 XXX + SG_ OBHVBCMinsRmng : 5|6@0+ (1,0) [0|63] "" XXX + SG_ OBHVBCCompTmDispFrmt : 7|2@0+ (1,0) [0|3] "" XXX + SG_ HVBatTmBsDelChrgRsp : 12|21@0+ (1,0) [0|0] "" XXX + SG_ HVBTBDCRS_DlChHRsp : 12|5@0+ (1,0) [0|31] "hr" XXX + SG_ HVBTBDCRS_DlChSlctStat : 19|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBDCRS_DlChDStat : 23|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBDCRS_DlChMHRsp : 29|6@0+ (1,0) [0|63] "min" XXX + SG_ HVBTBDCRS_DlChSsnStat : 31|2@0+ (1,0) [0|3] "" XXX + SG_ HVBatTmBsRtChrgRsp : 34|27@0+ (1,0) [0|0] "" XXX + SG_ HVBTBRCR_RtChMHRsp : 32|6@0+ (1,0) [0|63] "min" XXX + SG_ HVBTBRCR_RtChSsnStat : 34|2@0+ (1,0) [0|3] "" XXX + SG_ HVBTBRCR_RtChSlctStat : 42|3@0+ (1,0) [0|7] "" XXX + SG_ HVBTBRCR_RtChDStat : 50|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBRCR_RtChHRsp : 55|5@0+ (1,0) [0|31] "hr" XXX + SG_ HVBTBRCR_RtCHSlctTblRwStat : 58|3@0+ (1,0) [0|7] "rows" XXX + SG_ HVBTBRCR_RtChSlRtStat : 62|4@0+ (1,0) [0|15] "" XXX + +BO_ 2156281856 High_Volt_Bat_Time_Bsd_Req_1_LS: 7 XXX + SG_ HVBatTmBsSsnChStReq : 0|14@0+ (1,0) [0|0] "" XXX + SG_ HVBTBSCSR_SsnStReq : 0|2@0+ (1,0) [0|3] "" XXX + SG_ HVBTBSCSR_SsnMthStReq : 11|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBSCSR_SsnSlStReq : 14|3@0+ (1,0) [0|7] "" XXX + SG_ HVBTBSCSR_SsnDayStReq : 23|5@0+ (1,0) [0|31] "day" XXX + SG_ HVBatTmBsChrgMdReq : 3|3@0+ (1,0) [0|7] "" XXX + SG_ HVChgSyChgLvlPrfSt : 6|3@0+ (1,0) [0|7] "" XXX + SG_ StTODChrgTmpOvrd : 7|1@0+ (1,0) [0|1] "" XXX + SG_ HVBatTmBsChrgRtStReq : 17|10@0+ (1,0) [0|0] "" XXX + SG_ HVBTBCRSR_ChRtEnblStReq : 17|2@0+ (1,0) [0|3] "" XXX + SG_ HVBTBCRSR_ChRtSlStReq : 27|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBCRSR_ChRtDStReq : 31|4@0+ (1,0) [0|15] "" XXX + SG_ TmpOvdNxtPlnDptTmRq : 32|17@0+ (1,0) [0|0] "" XXX + SG_ TONPDTR_StTmpOvrAtv : 32|2@0+ (1,0) [0|3] "" XXX + SG_ TONPDTR_HrOfDy : 42|5@0+ (1,0) [0|31] "Hour" XXX + SG_ TONPDTR_DyOfWk : 46|4@0+ (1,0) [0|15] "" XXX + SG_ TONPDTR_MntOfHr : 53|6@0+ (1,0) [0|63] "Minute" XXX + SG_ RtBsChrgCmplnTmPrfReq : 34|2@0+ (1,0) [0|3] "" XXX + SG_ HTRCsStReq : 37|3@0+ (1,0) [0|7] "" XXX + +BO_ 2156265472 High_Volt_Bat_Time_Bsd_Req_LS: 8 XXX + SG_ ChgCdTfAlCzStRq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ ChgPwLsAlCzStRq : 5|3@0+ (1,0) [0|7] "" XXX + SG_ PrtyChrgRq : 7|2@0+ (1,0) [0|3] "" XXX + SG_ HVBatTmBsDlChStReq : 12|21@0+ (1,0) [0|0] "" XXX + SG_ HVBTBDCSRQ_DlChHStReq : 12|5@0+ (1,0) [0|31] "hr" XXX + SG_ HVBTBDCSRQ_DlChSlStReq : 19|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBDCSRQ_DlChDStReq : 23|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBDCSRQ_DlChMHStReq : 29|6@0+ (1,0) [0|63] "min" XXX + SG_ HVBTBDCSRQ_DlChSsnStReq : 31|2@0+ (1,0) [0|3] "" XXX + SG_ ChgSysAudInCsStReq : 15|3@0+ (1,0) [0|7] "" XXX + SG_ HVBatTmBsRtChrgStReq : 34|27@0+ (1,0) [0|0] "" XXX + SG_ HVBTBRCSR_RtChDStReq : 34|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBRCSR_RtChSlStReq : 42|3@0+ (1,0) [0|7] "" XXX + SG_ HVBTBRCSR_RtChSlRtStReq : 46|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBRCSR_RtChMHStReq : 48|6@0+ (1,0) [0|63] "min" XXX + SG_ HVBTBRCSR_RtChSsnStReq : 50|2@0+ (1,0) [0|3] "" XXX + SG_ HVBTBRCSR_RtChHStReq : 55|5@0+ (1,0) [0|31] "hr" XXX + SG_ HVBTBRCSR_RtChSlTbRwReq : 58|3@0+ (1,0) [0|7] "rows" XXX + SG_ OffBrdHVCVehCsChRq : 35|1@0+ (1,0) [0|1] "" XXX + SG_ EngyUsgScrnMeasUtStat : 39|4@0+ (1,0) [0|15] "" XXX + +BO_ 2150113280 Energy_Storage_System_LS: 8 XXX + SG_ EngyStgSysActCoolEnb : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrvCycElEnrgUsd : 21|14@0+ (0.36,0) [0|5897.88] "MJ" XXX + SG_ DrvCyclElecEngyEcon : 32|9@0+ (0.1,0) [0|51.1] "" XXX + SG_ HVChrgInhbRsn : 36|4@0+ (1,0) [0|15] "" XXX + SG_ DrvCyclTrpDstTrvld : 54|15@0+ (0.1,0) [0|3276.7] "km" XXX + +BO_ 2150055936 Climate_Control_Status_LS: 5 XXX + SG_ ClmtCtrlUpprPwrLmt : 7|8@0+ (0.1,0) [0|25.5] "kW" XXX + SG_ ClmtCtrlLwrPwrLmt : 15|8@0+ (0.1,0) [0|25.5] "kW" XXX + SG_ ClimCtrlHVDvcShtdwnCmd : 16|1@0+ (1,0) [0|1] "" XXX + SG_ ClmCntCmpPwrUsdClc : 39|8@0+ (0.04,0) [0|10.2] "kW" XXX + +BO_ 2150039552 Thrml_Ref_Compressor_Status_LS: 5 XXX + SG_ ThrmlRefCompStat : 3|4@0+ (1,0) [0|15] "" XXX + SG_ EvpCorOtltAirTmpCalcdGroup : 4|13@0+ (1,0) [0|0] "" XXX + SG_ EvpCorOtltAirTmpCalcdV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ EvpCorOtltAirTmpCalcd : 15|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + SG_ ThrmlRefCompSpdGroup : 22|15@0+ (1,0) [0|0] "" XXX + SG_ ThrmlRefCompSpd : 21|14@0+ (1,0) [0|16383] "rpm" XXX + SG_ ThrmlRefCompSpdV : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ThrmlRfCmpOvTmpFltPr : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154856448 Humidity_Sensor_Status_LS: 5 XXX + SG_ HmdtySnsrGlssTemp : 1|10@0+ (0.146628,-50) [-50|100.000444] "deg C" XXX + SG_ HmdtySnsrTemp : 17|10@0+ (0.146628,-50) [-50|100.000444] "deg C" XXX + SG_ HmdtySnsrRltvHmdty : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2151342080 Park_Assistant_Right_Status_LS: 2 XXX + SG_ PARtRgn1ObjStat : 3|4@0+ (1,0) [0|15] "" XXX + SG_ PrkAstRtSysStat : 5|2@0+ (1,0) [0|3] "" XXX + SG_ PARtRgn3ObjStat : 11|4@0+ (1,0) [0|15] "" XXX + SG_ PARtRgn2ObjStat : 15|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151325696 Park_Assistant_Left_Status_LS: 2 XXX + SG_ PALtRgn1ObjStat : 3|4@0+ (1,0) [0|15] "" XXX + SG_ PrkAstLtSysStat : 5|2@0+ (1,0) [0|3] "" XXX + SG_ PALtRgn3ObjStat : 11|4@0+ (1,0) [0|15] "" XXX + SG_ PALtRgn2ObjStat : 15|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151809024 Drv_Cycl_Elec_Enrgy_Consumd_LS: 8 XXX + SG_ DrvCycElecEngySt5 : 5|14@0+ (0.36,0) [0|5897.88] "MJ" XXX + SG_ DrvCycElecEngyCnsmd : 23|32@0+ (1,0) [0|0] "" XXX + SG_ DCEEC_EngyPct1 : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DCEEC_EngyPct2 : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DCEEC_EngyPct3 : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ DCEEC_EngyPct4 : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ ElecEngyEconAvg : 48|9@0+ (0.1,0) [0|51.1] "" XXX + +BO_ 2151858176 Drv_Cycl_Elec_Enrgy_States_LS: 8 XXX + SG_ DrvCycElecEngySt1 : 5|14@0+ (0.36,0) [0|5897.88] "MJ" XXX + SG_ DrvCycElecEngySt2 : 21|14@0+ (0.36,0) [0|5897.88] "MJ" XXX + SG_ DrvCycElecEngySt3 : 37|14@0+ (0.36,0) [0|5897.88] "MJ" XXX + SG_ DrvCycElecEngySt4 : 53|14@0+ (0.36,0) [0|5897.88] "MJ" XXX + +BO_ 2150547456 HMI_Hybrid_Vehicle_Status_LS: 8 XXX + SG_ HVDpltnMdRng : 0|16@0+ (0.015625,0) [0|1023.984375] "km" XXX + SG_ VehChrgMdSt : 3|3@0+ (1,0) [0|7] "" XXX + SG_ GrnAudQueReq : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SvcHybChrgSysIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HVBatChrgCrdConnIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ CntrsOpnUndrTmpIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ OffBrdHVCVehCplrLkd : 16|1@0+ (1,0) [0|1] "" XXX + SG_ HVBatLimDTmpInd : 25|2@0+ (1,0) [0|3] "" XXX + SG_ OffBrdHVCVehPwrDrtd : 26|1@0+ (1,0) [0|1] "" XXX + SG_ HVChrgrSysStat : 29|3@0+ (1,0) [0|7] "" XXX + SG_ HVChrgrCplrStat : 31|2@0+ (1,0) [0|3] "" XXX + SG_ ChgrSysAdblIndReq : 33|2@0+ (1,0) [0|3] "" XXX + SG_ HVBatOutOfEnrgyInd : 36|3@0+ (1,0) [0|7] "" XXX + SG_ OffBrdHVBlkChrgCmp : 37|1@0+ (1,0) [0|1] "" XXX + SG_ ElecPrplsnMtrOvrSpdIO : 38|1@0+ (1,0) [0|1] "" XXX + SG_ HVBatCntctrsOpnIO : 39|1@0+ (1,0) [0|1] "" XXX + SG_ HVDpltnMdCnfdcTrndg : 47|8@0- (0.787402,0) [-100.787456|100.000054] "%" XXX + SG_ OffBrdHVBlkChgCpltTm : 53|14@0+ (1,0) [0|0] "" XXX + SG_ OBHVBCCT_HrofDay : 50|5@0+ (1,0) [0|31] "" XXX + SG_ OBHVBCCT_DayofWk : 53|3@0+ (1,0) [0|7] "" XXX + SG_ OBHVBCCT_MinofHr : 61|6@0+ (1,0) [0|63] "" XXX + SG_ OffBrdHVCVehPwrLvl : 55|2@0+ (1,0) [0|3] "" XXX + +BO_ 2151489536 CSV_EOCM_R_Indications_LS: 1 XXX + SG_ RVBShtToPrkBfExtngVehIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RVBAutoBrkRlsIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ NVSysStat : 4|3@0+ (1,0) [0|7] "" XXX + +BO_ 2149761024 Chassis_Information_2_LS: 6 XXX + SG_ PerfTrcCrnExStngVal : 4|5@0+ (1,0) [0|31] "" XXX + SG_ ActVehAccelGroup : 5|22@0+ (1,0) [0|0] "" XXX + SG_ ActVehAccelV : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ActVehAccel : 11|12@0- (0.01,0) [-20.48|20.47] "m/s^2" XXX + SG_ TrlrStabAstActIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ElvtdIdlCstStAvl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ ElvtdIdlCstCrStVal : 13|2@0+ (1,0) [0|3] "" XXX + SG_ TrnsCltchThrmlProtIndR : 27|20@0+ (1,0) [0|0] "" XXX + SG_ TCTPIR_DrvNotfn : 27|4@0+ (1,0) [0|15] "" XXX + SG_ TCTPIR_TnsEsClTmpD : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ TCTPIR_TnsEsClCDwT : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ PsngStPerfMdCsCrStVal : 30|3@0+ (1,0) [0|7] "" XXX + SG_ PsngStPerfMdCsStAvl : 31|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155012096 SBZA_Right_Status_LS: 1 XXX + SG_ SODTmpUnavlbleIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SODSnsClnRqdIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SODRtIndCntl : 6|5@0+ (1,0) [0|0] "" XXX + SG_ SODRIC_Ind3 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ SODRIC_Ind2 : 3|1@0+ (1,0) [0|1] "" XXX + SG_ SODRIC_Ind1 : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SODRIC_IndReq : 6|2@0+ (1,0) [0|3] "" XXX + SG_ SrvSODSysIO : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150514688 Power_Slidining_Door_Status_LS: 1 XXX + SG_ SldngDrRgtStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ SldngDrLftStat : 5|3@0+ (1,0) [0|7] "" XXX + SG_ PwrSldngDrUnavlblIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ SdClsrObstclDtctdStat : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2158067712 Video_Master_Info_2_LS: 5 XXX + SG_ TchScnDsplUsrActnExt : 1|34@0+ (1,0) [0|0] "" XXX + SG_ TSDUAE_RotBtnPsh : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TSDUAE_ScrnPrsdRq : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TSDUAE_GrphStrkInfRq : 15|8@0+ (1,0) [0|255] "" XXX + SG_ TSDUAE_XCoOdntRq : 23|8@0+ (1,0) [0|255] "" XXX + SG_ TSDUAE_YCoOdntRq : 31|8@0+ (1,0) [0|255] "" XXX + SG_ TSDUAE_RotEnc : 39|8@0- (1,0) [-128|127] "Detentions" XXX + +BO_ 2158051328 Video_Master_Info_1_LS: 5 XXX + SG_ RemRcvrSrcInpCmd : 3|4@0+ (1,0) [0|15] "" XXX + SG_ VidMstrDsplyMd : 5|2@0+ (1,0) [0|3] "" XXX + SG_ VidSrcUICntrlStat : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RmtRcvrTunCmnd : 12|5@0+ (1,0) [0|31] "" XXX + SG_ VidMstrArbCmd : 15|3@0+ (1,0) [0|7] "" XXX + SG_ RmtRcvrTunVal : 23|16@0- (1,0) [-32768|32767] "" XXX + SG_ VidMstrSrcType : 36|5@0+ (1,0) [0|31] "" XXX + SG_ TVDspCmd : 39|3@0+ (1,0) [0|7] "" XXX + +BO_ 2158034944 TV_Tuner_Info_LS: 6 XXX + SG_ VidSrcCompFormatER : 3|4@0+ (1,0) [0|15] "" XXX + SG_ CurntTVStnServc : 6|3@0+ (1,0) [0|7] "" XXX + SG_ CurntTVStnQual : 7|1@0+ (1,0) [0|1] "" XXX + SG_ RmtRcvrCmndStat : 10|3@0+ (1,0) [0|7] "" XXX + SG_ RmtRecvtDataTyp : 13|3@0+ (1,0) [0|7] "" XXX + SG_ RmtRcvrTunStat : 14|1@0+ (1,0) [0|1] "" XXX + SG_ TVTunerPres : 15|1@0+ (1,0) [0|1] "" XXX + SG_ RmtRcvrPrgrmServID : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ VidSrcStatCode : 35|4@0+ (1,0) [0|15] "" XXX + SG_ RemRcvrSrcInpStat : 39|4@0+ (1,0) [0|15] "" XXX + SG_ VidSrcType : 44|5@0+ (1,0) [0|31] "" XXX + +BO_ 2158018560 TV_Station_Name_LS: 8 XXX + SG_ TVStatNmeChar1_8 : 7|64@0+ (1,0) [0|0] "" XXX + +BO_ 2156838912 WiFi_Station_LS: 7 XXX + SG_ WiFiStationResp : 3|52@0+ (1,0) [0|0] "" XXX + SG_ WSR_WiFiAssnStat : 3|4@0+ (1,0) [0|15] "" XXX + SG_ WSR_WiFiStnMACAddr : 15|48@0+ (1,0) [0|281474976710655] "" XXX + +BO_ 2156822528 WiFi_AP_Data_LS: 2 XXX + SG_ WiFiAccsPntData : 0|9@0+ (1,0) [0|0] "" XXX + SG_ WAPD_IHUWiFiEnStat : 0|1@0+ (1,0) [0|1] "" XXX + SG_ WAPD_EncrptnType : 11|4@0+ (1,0) [0|15] "" XXX + SG_ WAPD_SecurityType : 15|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151948288 Driver_Drow_Det_Cst_Rqst_LS: 1 XXX + SG_ DrvDrowDetCstStRq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ RunBrdOpMdCstStReq : 7|3@0+ (1,0) [0|7] "" XXX + +BO_ 2158002176 XM_Radio_Service_LS: 1 XXX + SG_ CurntStnServc : 2|3@0+ (1,0) [0|7] "" XXX + SG_ SrvcPrvdr : 5|3@0+ (1,0) [0|7] "" XXX + +BO_ 2149728256 Charging_Sys_Trans_Shift_Lock_LS: 5 XXX + SG_ ChrgSysTrnsShftLckRq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ChrgPrtDrStat : 2|2@0+ (1,0) [0|3] "" XXX + SG_ PrtyChrgActIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PrtyChrgAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ HghVltgPropState : 7|3@0+ (1,0) [0|7] "" XXX + SG_ ChgCdTfAlCzCrStVal : 10|3@0+ (1,0) [0|7] "" XXX + SG_ ChgCdTfAlCzStAvbl : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ChgPwLsAlCzCrStVal : 14|3@0+ (1,0) [0|7] "" XXX + SG_ ChgPwLsAlCzStAvbl : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ChgSyAudInCsCrStVa : 18|3@0+ (1,0) [0|7] "" XXX + SG_ ChgSysAudInCsStAvl : 19|1@0+ (1,0) [0|1] "" XXX + SG_ HVChrgPwrLvl : 22|3@0+ (1,0) [0|7] "" XXX + SG_ EngAstHtCsCrStVal : 26|3@0+ (1,0) [0|7] "" XXX + SG_ EngAstHtCsStAvl : 27|1@0+ (1,0) [0|1] "" XXX + SG_ EngAstHtPlgInCsCrStVl : 30|3@0+ (1,0) [0|7] "" XXX + SG_ EngAstHtPlgInCsStAvl : 31|1@0+ (1,0) [0|1] "" XXX + SG_ PrtyChrgStPnt : 38|7@0+ (1,0) [0|127] "" XXX + +BO_ 2150023168 Hybrid_Information_LS: 5 XXX + SG_ HybChrgMdStat : 1|2@0+ (1,0) [0|3] "" XXX + SG_ HVInvRatVltGroup : 2|19@0+ (1,0) [0|0] "" XXX + SG_ HVInvRatVltV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ HVInvRatVlt : 8|9@0+ (1,0) [0|511] "volts" XXX + SG_ OffBrdVehImmbNot : 5|3@0+ (1,0) [0|7] "" XXX + SG_ ElecPrplsnMtrTach : 28|13@0+ (1,0) [0|8191] "rpm" XXX + +BO_ 2153988096 Power_Elec_Info_LS: 7 XXX + SG_ PwrElecCoolLpTempGroup : 1|10@0+ (1,0) [0|0] "" XXX + SG_ PwrElecCoolLpTempV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ PwrElecCoolLpTempM : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PwrElecCoolLpTemp : 15|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ EngyUsgScr : 20|37@0+ (1,0) [0|0] "" XXX + SG_ EUS_TcEngyUsgScrAvVal : 20|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUS_TrEngyUsgScrAvVal : 29|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUS_OTEngyUsgScrAvVal : 38|7@0- (0.1,0) [-5|5] "" XXX + SG_ EUS_TtEngyUsgScrAvVal : 40|9@0- (0.1,0) [-20|20] "" XXX + SG_ EUS_ITEngyUsgScrAvVal : 47|7@0- (0.1,0) [-5|5] "" XXX + +BO_ 2155945984 Jump_Start_Req_LS: 1 XXX + SG_ JmpStrtReq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TCSysCurStReq : 2|2@0+ (1,0) [0|3] "" XXX + SG_ VehStbEnhmntCurStRq : 4|2@0+ (1,0) [0|3] "" XXX + SG_ VehStbCmptvMdCurStRq : 6|2@0+ (1,0) [0|3] "" XXX + +BO_ 2155585536 MSB_Customization_Setting_Req_LS: 1 XXX + SG_ StBltTgtCSRq : 2|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155569152 CPS_Customization_Setting_Req_LS: 3 XXX + SG_ ColPrSysCustReq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ ExtHlStrAssCsStRq : 5|3@0+ (1,0) [0|7] "" XXX + SG_ IntDimSeldClrTypStReq : 12|5@0+ (1,0) [0|31] "" XXX + SG_ HLOCCstSetReq : 15|3@0+ (1,0) [0|7] "" XXX + SG_ IntDimSeldAnmTypStReq : 19|4@0+ (1,0) [0|15] "" XXX + SG_ SmPhRmFunCstStReq : 22|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155233280 VICM_Info_LS: 8 XXX + SG_ VehRefuelSt : 2|3@0+ (1,0) [0|7] "" XXX + SG_ FlDrOpenIndOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ UtlChrgPopUpAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ UtlChrgIntrfrIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ShftPrkIO_3B2 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ NtrlCstdwnCrtMdActvIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ RtBsChrgCmplnTmPrfRsp : 9|2@0+ (1,0) [0|3] "" XXX + SG_ EngRnngDutoVehSpdIO : 10|1@0+ (1,0) [0|1] "" XXX + SG_ NtrlGrWrngIO : 11|1@0+ (1,0) [0|1] "" XXX + SG_ LftmFuelEcon : 19|12@0+ (0.1,0) [0|409.5] "kilometers/liter" XXX + SG_ LiftimeFuelEcnEquiv : 35|12@0+ (0.1,0) [0|409.5] "km/l" XXX + SG_ ChrgCyclFuelEcn : 51|12@0+ (0.1,0) [0|409.5] "km/l" XXX + +BO_ 2152169472 Coolant_Heater_Status_LS: 3 XXX + SG_ ClntHtrSt : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ClntHtrPCBOvTmpFlt : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ClntHtrHtSnkOvTmpFlt : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ClntHtrElecPwrGroup : 4|13@0+ (1,0) [0|0] "" XXX + SG_ ClntHtrElecPwrV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ClntHtrElecPwr : 15|8@0+ (0.04,0) [0|10.2] "kW" XXX + SG_ ClntHtrFlt : 7|3@0+ (1,0) [0|7] "" XXX + SG_ ClntHtrInltClntTmp : 23|8@0+ (1,-40) [-40|215] "deg C" XXX + +BO_ 2152759296 SITM_Front_Sensor_IO_LS: 1 XXX + SG_ FrtCmrBlckdIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ FrtEOCMMdlFldIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ FrtCmrFldIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ FrtRdrFldIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PedWrnIndReq : 5|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152742912 SITM_Rear_Sensor_IO_LS: 1 XXX + SG_ RrEOCMMdlFldIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RrRdrBlckdIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RrRdrFldIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ShrtRngRdrOffIO : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150891520 Go_Notifier_Req_LS: 5 XXX + SG_ DgtlMapSpdCat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ FwdClnAlrtCustStngReq : 5|3@0+ (1,0) [0|7] "" XXX + SG_ GNCustStngReq : 7|2@0+ (1,0) [0|3] "" XXX + SG_ DgtlMapDrvngSd : 8|1@0+ (1,0) [0|1] "" XXX + SG_ DgtlMapPsgRstrctn : 11|3@0+ (1,0) [0|7] "" XXX + SG_ RrStRmndrCstSetReq : 14|3@0+ (1,0) [0|7] "" XXX + SG_ DgtlMapEffSpdLmt : 20|5@0+ (1,0) [0|31] "" XXX + SG_ DgtlMapEffSpdLmtTyp : 23|3@0+ (1,0) [0|7] "" XXX + SG_ DgtlMapVerYr : 29|6@0+ (1,0) [0|63] "" XXX + SG_ DgtlMapVerQtr : 31|2@0+ (1,0) [0|3] "" XXX + SG_ DgtlMapCndlSpdLmt : 36|5@0+ (1,0) [0|31] "" XXX + SG_ DgtlMapCndlSpdLmtTyp : 39|3@0+ (1,0) [0|7] "" XXX + +BO_ 2151751680 Haptic_Seat_Status_LS: 3 XXX + SG_ CrshAlrtDrvrSlctdType : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CrshAlrtStPrsnt : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HptcStVbnStat : 3|2@0+ (1,0) [0|3] "" XXX + SG_ HptcStFldIO : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155536384 Rear_Virtual_Bmper_Indication_LS: 1 XXX + SG_ RVBDsbldIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RVBEnbldIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RVBFldIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RVBUnblIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvRIMOffUnbIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RevClnMtgnBrkReqAct : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151481344 CSV_FSRACC_Indications_LS: 1 XXX + SG_ AutoBrkRlsIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ShtToPrkBfExtngVehIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HdUpDsplyUnblIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ FSRACCFrstRsmPrssIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ FrtRdrBlckdIO : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151432192 ACC_Drv_Seat_Vib_Req_IO_LS: 1 XXX + SG_ ACCHptcStVbnRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ACCHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX + +BO_ 2151415808 Ln_Dep_Wrn_Drv_Seat_Vib_Req_LS: 5 XXX + SG_ LDWLftHptcStRqSN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ LDWLftHptcStRq : 7|6@0+ (1,0) [0|63] "" XXX + SG_ LDWRghtHptcStRqSN : 9|2@0+ (1,0) [0|3] "" XXX + SG_ LDWRghtHptcStRq : 15|6@0+ (1,0) [0|63] "" XXX + SG_ LftLnChgThrtHptStRqSN : 17|2@0+ (1,0) [0|3] "" XXX + SG_ LftLnChgThrtHptStRq : 23|6@0+ (1,0) [0|63] "Pulse" XXX + SG_ RgtLnChgThrtHptStRqSN : 25|2@0+ (1,0) [0|3] "" XXX + SG_ RgtLnChgThrtHptStRq : 31|6@0+ (1,0) [0|63] "Pulse" XXX + SG_ FrPedDetCsStAvl : 32|1@0+ (1,0) [0|1] "" XXX + SG_ FrPedDetCsCrStVal : 35|3@0+ (1,0) [0|7] "" XXX + +BO_ 2151350272 Frnt_Prk_Ast_Drv_Seat_Vib_Req_LS: 3 XXX + SG_ FPAHptcStVbnRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ FPAHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX + SG_ APAIconDispRq : 10|3@0+ (1,0) [0|7] "" XXX + SG_ APAIconFilPctRq : 22|7@0+ (1,0) [0|127] "" XXX + +BO_ 2151333888 Rear_Prk_Ast_Drv_Seat_Vib_Req_LS: 1 XXX + SG_ RPAHptcStVbRqSeqN : 1|2@0+ (1,0) [0|3] "" XXX + SG_ RPAHptcStVbnReq : 7|6@0+ (1,0) [0|63] "" XXX + +BO_ 2151522304 Reset_FuelLife_Request_LS: 1 XXX + SG_ FuelFltLfRstRqd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ElEngyEconAvgRstRq : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TCSTmpDsblReqConf : 3|2@0+ (1,0) [0|3] "" XXX + SG_ LnchCtrlRelLnLockReqd : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150629376 CV_System_Failure_LS: 1 XXX + SG_ CVSysFlrIO : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155929600 Diesel_Information_LS: 8 XXX + SG_ DslExFldTpWrngIndRq : 3|4@0+ (1,0) [0|15] "" XXX + SG_ DslExhFldDiagWrnIdRq : 6|3@0+ (1,0) [0|7] "" XXX + SG_ DslExhFldQlyWrngIReq : 11|4@0+ (1,0) [0|15] "" XXX + SG_ DslExhFldWrngIdRqER : 15|4@0+ (1,0) [0|15] "" XXX + SG_ DslExhFluidDistTIndcmt : 22|15@0+ (2,0) [0|65534] "km" XXX + SG_ DslExNxEmWrngIndRq : 35|4@0+ (1,0) [0|15] "" XXX + SG_ DslExFldCnWrngIndRq : 39|4@0+ (1,0) [0|15] "" XXX + SG_ DslExFldWrngVSpdLmt : 47|24@0+ (1,0) [0|0] "" XXX + SG_ DEFWVSL_S1SpdLmt : 47|8@0+ (1,0) [0|255] "km / h" XXX + SG_ DEFWVSL_S2SpdLmt : 55|8@0+ (1,0) [0|255] "km / h" XXX + SG_ DEFWVSL_S3SpdLmt : 63|8@0+ (1,0) [0|255] "km / h" XXX + +BO_ 2154741760 RSA_Status_LS: 1 XXX + SG_ RSAPrsnt : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154807296 Lighting_Customization_Info_3_LS: 4 XXX + SG_ AFLGPSCstCrStVal : 2|3@0+ (1,0) [0|7] "" XXX + SG_ AFLCstCrStVal : 5|3@0+ (1,0) [0|7] "" XXX + SG_ AFLGPSCstStAvl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ AFLCstStAvl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ AFLGPSMnu2CstStAvl : 8|1@0+ (1,0) [0|1] "" XXX + SG_ AFLMnu2CstStAvl : 9|1@0+ (1,0) [0|1] "" XXX + SG_ AFLMnu3CstStAvl : 10|1@0+ (1,0) [0|1] "" XXX + SG_ EngAutoStpNotProb : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ESCMHiEleclLdReqAct : 12|1@0+ (1,0) [0|1] "" XXX + SG_ EngAutoStrtStpInfo : 17|10@0+ (1,0) [0|0] "" XXX + SG_ EASSI_StrtStpSt : 17|2@0+ (1,0) [0|3] "" XXX + SG_ EASSI_UnsdRsrvd2 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ EASSI_TorqDetdIndet : 25|1@0+ (1,0) [0|1] "" XXX + SG_ EASSI_StlDetd : 26|1@0+ (1,0) [0|1] "" XXX + SG_ EASSI_TrqDetd : 27|1@0+ (1,0) [0|1] "" XXX + SG_ EASSI_FuelReqOn : 28|1@0+ (1,0) [0|1] "" XXX + SG_ EASSI_StrtTyp : 31|3@0+ (1,0) [0|7] "" XXX + +BO_ 2151079936 PDIM_Status_LS: 1 XXX + SG_ PDIMPrsnt : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155364352 Hybrid_Information_SuperSlow_LS: 5 XXX + SG_ SvcHybridSysIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ JmpStrtStat : 3|3@0+ (1,0) [0|7] "" XXX + SG_ HybMdDisp : 7|4@0+ (1,0) [0|15] "" XXX + SG_ CstmrUsblSOCGroup : 15|15@0+ (1,0) [0|0] "" XXX + SG_ CstmrUsblSOC : 15|8@0+ (0.39216,0) [0|100.0008] "%" XXX + SG_ CstmrUsblSOCV : 17|1@0+ (1,0) [0|1] "" XXX + SG_ BattCntrlPrcssrVDA : 16|1@0+ (1,0) [0|1] "" XXX + SG_ InstDrvEff : 31|8@0- (0.78125,0) [-100|99.21875] "%" XXX + SG_ ClntCrcFlwRtEst : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2154979328 Front_Seat_Heat_Cool_Req_LS: 1 XXX + SG_ FrntStVoltBstModReq : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155282432 RearSeat_HeatVent_Cool_LS: 1 XXX + SG_ RrStVoltBstModReq : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151505920 VehInfoTripComputer_LS: 7 XXX + SG_ SpdCurvAdvSysEnbld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrBrkDsplyAct : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ACCSettingType : 3|2@0+ (1,0) [0|3] "" XXX + SG_ AutoMdSpdLmtCnfrmd : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PTExPrtclFltManRgnRqd : 5|1@0+ (1,0) [0|1] "" XXX + SG_ Trp2OdomtrGroup : 6|55@0+ (1,0) [0|0] "" XXX + SG_ Trp2OdomtrV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ Trp2Odomtr : 38|23@0+ (0.015625,0) [0|131071.984375] "km" XXX + SG_ Trp1OdomtrGroup : 7|32@0+ (1,0) [0|0] "" XXX + SG_ Trp1OdomtrV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ Trp1Odomtr : 14|23@0+ (0.015625,0) [0|131071.984375] "km" XXX + +BO_ 2155896832 Alternative_Fuel_Information_LS: 5 XXX + SG_ FuelMdStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ AltFuelMdReqDndIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ FlLvlTank2PctGroup : 4|13@0+ (1,0) [0|0] "" XXX + SG_ FlLvlTank2PctV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ FlLvlTank2Pct : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ AltFuelAccWrnngAct : 5|1@0+ (1,0) [0|1] "" XXX + SG_ AltFuelLvlLo : 6|1@0+ (1,0) [0|1] "" XXX + SG_ AltFuelPHeatAct : 7|1@0+ (1,0) [0|1] "" XXX + SG_ FuelTotCapTnk2 : 19|12@0+ (0.125,0) [0|511.875] "liters" XXX + SG_ FuelAlchlCompAdptnPrg : 20|1@0+ (1,0) [0|1] "" XXX + SG_ FuelAlcoholCompGroup : 21|22@0+ (1,0) [0|0] "" XXX + SG_ FuelAlcoholCompV : 21|1@0+ (1,0) [0|1] "" XXX + SG_ FuelAlcoholComp : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2155552768 Exterior_Lock_Switch_Req_LS: 1 XXX + SG_ PsvEntCmftWndRq : 1|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154496000 Rear_Closure_Soft_Top_Info_LS: 1 XXX + SG_ CmpSftTopMotBfrOpTrnkIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TargaTopStateGroup : 2|2@0+ (1,0) [0|0] "" XXX + SG_ TargaTopState : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TargaTopStateV : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155208704 Power_Conv_Top_Info_LS: 3 XXX + SG_ SftTpAbvWrngSpdIndOn : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpFlrIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpLtcIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpMnlLtchIndOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpMchnOvhtIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpRmCrgCrrIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpStrIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpTmpLwIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpTneuCvrIO : 8|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpVehOvSpdIndOn : 9|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpVltLwIO : 10|1@0+ (1,0) [0|1] "" XXX + SG_ CkSoftTpIO : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ClsTrnkLidIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ FTUpdWndPsLmtEnbld : 13|1@0+ (1,0) [0|1] "" XXX + SG_ VltSwAtvIndOn : 14|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpTrnLmpsRqd : 15|1@0+ (1,0) [0|1] "" XXX + SG_ FldngTpSt : 18|3@0+ (1,0) [0|7] "" XXX + SG_ FldngTpWndCmftRq : 20|2@0+ (1,0) [0|3] "" XXX + SG_ SftTpPlsDnSrtdIndOn : 21|1@0+ (1,0) [0|1] "" XXX + SG_ SftTpPlsDnWrngIndOn : 22|1@0+ (1,0) [0|1] "" XXX + +BO_ 2153390080 Manual_Liftgate_Control_LS: 1 XXX + SG_ RrClosOpenSwAct_2D1Group : 3|3@0+ (1,0) [0|0] "" XXX + SG_ RrClosOpenSwAct_2D1 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RrClosOpenSwAct_2D1V : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155175936 CruiseControlGapSwitch_LS: 1 XXX + SG_ AdptCrsGapSwAct : 1|2@0+ (1,0) [0|3] "" XXX + SG_ AdptCrsLKALDWSwAct : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2156806144 Cellular_Network_Date_and_Time: 6 XXX + SG_ CldrDayCmpstdVal : 4|5@0+ (1,0) [0|31] "days" XXX + SG_ HrsCmpstdValGroup : 5|30@0+ (1,0) [0|0] "" XXX + SG_ HrsCmpstdValV : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HrsCmpstdVal : 28|5@0+ (1,0) [0|31] "h" XXX + SG_ MinsCmpstdValGroup : 6|39@0+ (1,0) [0|0] "" XXX + SG_ MinsCmpstdValV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ MinsCmpstdVal : 37|6@0+ (1,0) [0|63] "min" XXX + SG_ SecCmpstdValGroup : 7|48@0+ (1,0) [0|0] "" XXX + SG_ SecCmpstdValV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SecCmpstdVal : 45|6@0+ (1,0) [0|63] "secs" XXX + SG_ CldrMthCmpstdVal : 11|4@0+ (1,0) [0|15] "" XXX + SG_ CellNtwrkDtTmAvl : 12|1@0+ (1,0) [0|1] "" XXX + SG_ CldrYrCmpstdVal : 23|8@0+ (1,2000) [2000|2255] "year" XXX + +BO_ 2154078208 Window_Position_Status_LS: 2 XXX + SG_ DrvWndPosStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ LRWndPosStat : 5|3@0+ (1,0) [0|7] "" XXX + SG_ PsWndPosStat : 10|3@0+ (1,0) [0|7] "" XXX + SG_ RRWndPosStat : 13|3@0+ (1,0) [0|7] "" XXX + +BO_ 2159058944 ODIEvent_IPC_LS: 3 XXX + SG_ ODIEvntPkt_IPC : 5|22@0+ (1,0) [0|0] "" XXX + SG_ ODIEI_EvID : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ODIEI_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODIEI_MultiFrRetCh : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 2159042560 ODI_DynData_IPC_LS: 8 XXX + SG_ ODIDynData_IPC : 14|55@0+ (1,0) [0|0] "" XXX + SG_ ODDI_InvldData : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ODDI_DataType : 14|6@0+ (1,0) [0|63] "" XXX + SG_ ODDI_FUCID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDI_DataId : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDI_DataVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2150006784 System_Power_Mode_Pushbutton_LS: 1 XXX + SG_ SysPwrMdPshbtnActGroup : 1|2@0+ (1,0) [0|0] "" XXX + SG_ SysPwrMdPshbtnAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SysPwrMdPshbtnActV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PEPSRunCrnkRlyDctd : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155216896 Road_Type_Information_LS: 6 XXX + SG_ MpDataAvlbl : 0|1@0+ (1,0) [0|1] "" XXX + SG_ BldUpArDet : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SprtLnRd : 2|1@0+ (1,0) [0|1] "" XXX + SG_ CntrldAccRd : 3|1@0+ (1,0) [0|1] "" XXX + SG_ CurvAdvInd : 5|2@0+ (1,0) [0|3] "" XXX + SG_ SpdLmtPstdSpdGroup : 6|23@0+ (1,0) [0|0] "" XXX + SG_ SpdLmtPstdSpdM : 6|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtPstdSpd : 23|8@0+ (1,0) [0|255] "" XXX + SG_ DgtlMapPstdSpdLimAsrd : 7|1@0+ (1,0) [0|1] "" XXX + SG_ FncRdClass : 10|3@0+ (1,0) [0|7] "" XXX + SG_ RdSpdCatType : 12|2@0+ (1,0) [0|3] "" XXX + SG_ LnCat : 14|2@0+ (1,0) [0|3] "" XXX + SG_ SpdLmtUnits : 15|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtRecmndSpd : 31|8@0+ (1,0) [0|255] "" XXX + SG_ IntlStdAlph2CddCntryCd : 33|10@0+ (1,0) [0|0] "" XXX + SG_ ISA2CCC_FrstCdChr : 33|5@0+ (1,0) [0|31] "" XXX + SG_ ISA2CCC_ScndCdChr : 44|5@0+ (1,0) [0|31] "" XXX + +BO_ 2156216320 TTY_Status_LS: 1 XXX + SG_ TxtTelephoneDevPr : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2158813184 ODIIndication_IPC_LS: 8 XXX + SG_ ODIInd_IPC : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODIIIPC_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODIIIPC_ODIInd8 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd7 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd6 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd5 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd4 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd3 : 13|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd2 : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd1 : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd16 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd15 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd14 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd13 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd12 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd11 : 21|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd10 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd9 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd24 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd23 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd22 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd21 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd20 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd19 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd18 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd17 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd32 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd31 : 33|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd30 : 34|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd29 : 35|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd28 : 36|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd27 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd26 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd25 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd40 : 40|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd39 : 41|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd38 : 42|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd37 : 43|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd36 : 44|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd35 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd34 : 46|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd33 : 47|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd48 : 48|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd47 : 49|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd46 : 50|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd45 : 51|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd44 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd43 : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd42 : 54|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd41 : 55|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd56 : 56|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd55 : 57|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd54 : 58|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd53 : 59|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd52 : 60|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd51 : 61|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd50 : 62|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIIPC_ODIInd49 : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150277120 GPS_Geographical_Position_LS: 8 XXX + SG_ PsngSysLatGroup : 6|31@0+ (1,0) [0|0] "" XXX + SG_ PsngSysLat : 5|30@0- (1,0) [-536870912|536870911] "mas" XXX + SG_ PsngSysLatV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ PsngSysLongGroup : 39|32@0+ (1,0) [0|0] "" XXX + SG_ PsngSysLong : 38|31@0- (1,0) [-1073741824|1073741823] "mas" XXX + SG_ PsngSysLongV : 39|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150285312 GPS_Elevation_and_Heading_LS: 8 XXX + SG_ PsngSysHdingGroup : 3|37@0+ (1,0) [0|0] "" XXX + SG_ PsngSysHding : 3|12@0+ (0.1,0) [0|409.5] "deg" XXX + SG_ PsngSysHdingV : 47|1@0+ (1,0) [0|1] "" XXX + SG_ PsngSysDilPrcsGroup : 4|29@0+ (1,0) [0|0] "" XXX + SG_ PsngSysDilPrcsV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PsngSysDilPrcs : 17|10@0+ (0.1,0) [0|102.3] "" XXX + SG_ PsngSysCalcSpdGroup : 39|10@0+ (1,0) [0|0] "" XXX + SG_ PsngSysCalcSpd : 39|8@0+ (1,0) [0|255] "km / h" XXX + SG_ PsngSysCalcSpdV : 46|1@0+ (1,0) [0|1] "" XXX + SG_ PsngSysElvtnGroup : 45|22@0+ (1,0) [0|0] "" XXX + SG_ PsngSysElvtn : 44|21@0+ (1,-100000) [-100000|1997151] "cm" XXX + SG_ PsngSysElvtnV : 45|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151890944 Telematics_Indication_Request_LS: 4 XXX + SG_ TlmtcsIndCntrlReq : 15|24@0+ (1,0) [0|0] "" XXX + SG_ TICR_Ind1Cnt : 11|4@0+ (1,0) [0|15] "" XXX + SG_ TICR_Ind1 : 13|2@0+ (1,0) [0|3] "" XXX + SG_ TICR_Ind1Req : 15|2@0+ (1,0) [0|3] "" XXX + SG_ TICR_Ind1FlshRtOff : 23|8@0+ (10,0) [0|2550] "ms" XXX + SG_ TICR_Ind1FlshRtOn : 31|8@0+ (10,0) [0|2550] "ms" XXX + +BO_ 2151251968 Telematics_Indication_Control_LS: 4 XXX + SG_ TlmtcsIndCntrlStat : 12|21@0+ (1,0) [0|0] "" XXX + SG_ TICS_Ind1V : 8|1@0+ (1,0) [0|1] "" XXX + SG_ TICS_Ind1 : 10|2@0+ (1,0) [0|3] "" XXX + SG_ TICS_Ind1Stat : 12|2@0+ (1,0) [0|3] "" XXX + SG_ TICS_Ind1FlshRtOffSt : 23|8@0+ (10,0) [0|2550] "ms" XXX + SG_ TICS_Ind1FlshRtOnSt : 31|8@0+ (10,0) [0|2550] "ms" XXX + +BO_ 2155495424 Remote_Start_Seat_Request_LS: 1 XXX + SG_ RmStrCldStEnReq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RmStrHtdStEnRq : 1|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149990400 HS_Indications_Fast_LS: 8 XXX + SG_ ABSIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ StpOnBrkToRelPBIndOn : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrBrkngVDA : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DrvThrtlOvrdIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TreInfMonSysRstPrfmd : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ACCHdwayStngIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ACCDrvrSeltdSpdIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrWiringFltIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ AdvHlmpsVDA : 9|1@0+ (1,0) [0|1] "" XXX + SG_ SADmpVDA : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ScndryAxleVDA : 11|1@0+ (1,0) [0|1] "" XXX + SG_ SrvTrlrBrkngSysIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrBrkngGainSetIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrCnctdIO : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ChkTrlrIO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrBrkngFrcOtpt : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ TrlrBrkngGainSet : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ TrlrHtchSwAtv_ITBC : 32|1@0+ (1,0) [0|1] "" XXX + SG_ TransNtrlCntrlMdStat : 34|2@0+ (1,0) [0|3] "" XXX + SG_ MotStBltFldIO : 35|1@0+ (1,0) [0|1] "" XXX + SG_ MotStBltUnblIO : 36|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsfrCsRngShfSpdLmt : 47|8@0+ (1,0) [0|255] "km / h" XXX + SG_ InstFuelConsmpRate : 51|12@0+ (0.025,0) [0|102.375] "liters/hr" XXX + SG_ SecAxlOperMod : 55|4@0+ (1,0) [0|15] "" XXX + +BO_ 2155380736 HS_Indications_SuperSlow_LS: 6 XXX + SG_ VehOvrLdIndOn : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SrvLevSysIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HdLtLvlFlrIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RrLevVDA : 3|1@0+ (1,0) [0|1] "" XXX + SG_ AirCndOffIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilHotIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ PTExPrtclFltrWrnIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ DslGlwPlgIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EngHotFuelEnrchmntIO : 8|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilChngIO : 9|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilLvlLwIO : 10|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilPrsLwIO : 11|1@0+ (1,0) [0|1] "" XXX + SG_ EngWtrInFlIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ RdcdPwrIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ CkFlFilrCapIO : 14|1@0+ (1,0) [0|1] "" XXX + SG_ EngHt_StpEngIO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ StrAsstRdcdLvl2IO : 16|1@0+ (1,0) [0|1] "" XXX + SG_ PwrStrIO : 17|1@0+ (1,0) [0|1] "" XXX + SG_ PTExPrtclFltrWrn2IO : 18|1@0+ (1,0) [0|1] "" XXX + SG_ AdvFrntLghtSysIndRq : 21|3@0+ (1,0) [0|7] "" XXX + SG_ StrngAsstRdcdIO : 22|1@0+ (1,0) [0|1] "" XXX + SG_ StrAsstRdcdLvl3IO : 23|1@0+ (1,0) [0|1] "" XXX + SG_ PwrPckAirInTempFlt : 31|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ PwrPkFnSpd : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ ARSFlrIO : 40|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150498304 Analog_Values_Slow_LS: 8 XXX + SG_ EngCltTmpGroup : 0|57@0+ (1,0) [0|0] "" XXX + SG_ EngCltTmpV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ EngCltTmp : 63|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ EngIntAirTmpGroup : 1|50@0+ (1,0) [0|0] "" XXX + SG_ EngIntAirTmpV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ EngIntAirTmp : 55|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ EngOilTmpGroup : 2|43@0+ (1,0) [0|0] "" XXX + SG_ EngOilTmpV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilTmp : 47|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ OAT_PT_EstGroup : 4|37@0+ (1,0) [0|0] "" XXX + SG_ OAT_PT_EstV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ OAT_PT_EstM : 4|1@0+ (1,0) [0|1] "" XXX + SG_ OAT_PT_Est : 39|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + SG_ TrnOilTmpGroup : 5|30@0+ (1,0) [0|0] "" XXX + SG_ TrnOilTmpV : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TrnOilTmp : 31|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ BarPrsAbsGroup : 6|23@0+ (1,0) [0|0] "" XXX + SG_ BarPrsAbsV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ BarPrsAbs : 23|8@0+ (0.5,0) [0|127.5] "kPa" XXX + SG_ EngOilPrsGroup : 7|16@0+ (1,0) [0|0] "" XXX + SG_ EngOilPrsV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilPrs : 15|8@0+ (4,0) [0|1020] "kPa" XXX + +BO_ 2151047168 HUD_Status_LS: 1 XXX + SG_ HUDActv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ HdUpDspAnmtStat : 3|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155331584 Wheel_Pulses_LS: 4 XXX + SG_ WhlPlsPerRevDrvn : 6|7@0+ (1,0) [0|127] "" XXX + SG_ WhlPlsPerRevNonDrvn : 14|7@0+ (1,0) [0|127] "" XXX + SG_ WhlRotStatTmstmpRes : 18|11@0+ (0.002,0) [0|4.094] "uSec" XXX + +BO_ 2154225664 Door_Handle_Switch_Status_LS: 1 XXX + SG_ DrvDrHndleSwAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ PasDrHndleSwAtv : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RCHndleSwAtv : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RRDrHndleSwAtv : 3|1@0+ (1,0) [0|1] "" XXX + SG_ RLDrHndleSwAtv : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149900288 Telematics_Contol_LS: 3 XXX + SG_ EnhSrvRClsRlsRq : 1|1@0+ (1,0) [0|1] "" XXX + SG_ EnhSrvVisAlRq : 3|2@0+ (1,0) [0|3] "" XXX + SG_ EnhSrvAudAlRq : 5|2@0+ (1,0) [0|3] "" XXX + SG_ EnhSrvRmStrtRq : 7|2@0+ (1,0) [0|3] "" XXX + SG_ EnhSrvLckRq : 10|3@0+ (1,0) [0|7] "" XXX + SG_ BTTethrngPrngReq : 14|4@0+ (1,0) [0|15] "" XXX + SG_ EnhSvVehTopSpdLim : 23|8@0+ (2,0) [0|510] "km / h" XXX + +BO_ 2159001600 ODIEnumDynamicData_IPC_LS: 8 XXX + SG_ ODIEnmDynData_IPC : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIEDDIPC_Data2Value : 2|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data1Value : 5|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data5Value : 9|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data4Value : 12|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data3Value : 15|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data8Value : 16|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data7Value : 19|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data6Value : 22|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data10Value : 26|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data9Value : 29|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data13Value : 33|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data12Value : 36|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data11Value : 39|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data16Value : 40|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data15Value : 43|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data14Value : 46|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data18Value : 50|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_Data17Value : 53|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDIPC_FUCID : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2158993408 ODIEnumDynamicData_CntrStack_LS: 8 XXX + SG_ ODIEnmDynData_CenterStack : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIEDDCS_Data2Value : 2|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data1Value : 5|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data5Value : 9|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data4Value : 12|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data3Value : 15|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data8Value : 16|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data7Value : 19|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data6Value : 22|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data10Value : 26|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data9Value : 29|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data13Value : 33|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data12Value : 36|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data11Value : 39|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data16Value : 40|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data15Value : 43|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data14Value : 46|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data18Value : 50|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_Data17Value : 53|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDDCS_FUCID : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2154708992 Audio_Master_Source_Status_LS: 2 XXX + SG_ AudSrcStat2 : 3|12@0+ (1,0) [0|0] "" XXX + SG_ ASS2AudSrcType : 3|5@0+ (1,0) [0|31] "" XXX + SG_ ASS2AudSrcStatCode : 11|4@0+ (1,0) [0|15] "" XXX + SG_ ASS2AudSrcChType : 14|3@0+ (1,0) [0|7] "" XXX + +BO_ 2158985216 ODIDynDataMultiReq_OTIM_LS: 8 XXX + SG_ ODIDynDataMltRq_OTIM : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODDMO_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMO_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMO_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMO_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMO_ReqType : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ODDMO_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMO_DispMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMO_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMO_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMO_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMO_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMO_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2154471424 Rear_Closure_Ajar_Switch_Status: 1 XXX + SG_ RrClosAjarSwAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RrClsrSnwLdIO : 1|1@0+ (1,0) [0|1] "" XXX + +BO_ 2159149056 ODI_TEL_2_CenterStack_LS: 8 XXX + SG_ ODI_TEL2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159116288 ODI_TEL_2_AuxIP_LS: 8 XXX + SG_ ODI_TEL2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2158796800 ODIIndication_LS: 8 XXX + SG_ ODIInd : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODII_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODII_ODIInd8 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd7 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd6 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd5 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd4 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd3 : 13|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd2 : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd1 : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd16 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd15 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd14 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd13 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd12 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd11 : 21|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd10 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd9 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd24 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd23 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd22 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd21 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd20 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd19 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd18 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd17 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd32 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd31 : 33|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd30 : 34|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd29 : 35|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd28 : 36|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd27 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd26 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd25 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd40 : 40|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd39 : 41|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd38 : 42|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd37 : 43|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd36 : 44|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd35 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd34 : 46|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd33 : 47|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd48 : 48|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd47 : 49|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd46 : 50|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd45 : 51|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd44 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd43 : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd42 : 54|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd41 : 55|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd56 : 56|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd55 : 57|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd54 : 58|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd53 : 59|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd52 : 60|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd51 : 61|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd50 : 62|1@0+ (1,0) [0|1] "" XXX + SG_ ODII_ODIInd49 : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 2158755840 ODIEvent_LS: 4 XXX + SG_ ODIEvntPkt : 13|22@0+ (1,0) [0|0] "" XXX + SG_ ODIE_EvID : 13|6@0+ (1,0) [0|63] "" XXX + SG_ ODIE_FUCID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIE_MultiFrRetCh : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 2159157248 ODI_CenterStack_2_TEL_LS: 8 XXX + SG_ ODI_CntrStck2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2153955328 Infrastructure_Timer_Status_LS: 5 XXX + SG_ EngOffTmExtRngGroup : 0|33@0+ (1,0) [0|0] "" XXX + SG_ EngOffTmExtRngV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ EngOffTmExtRng : 39|8@0+ (4,0) [0|1020] "min" XXX + SG_ ElpsdTimeCntRstOcc : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ElpsdTimeCnt : 15|24@0+ (1,0) [0|16777215] "min" XXX + +BO_ 2151063552 Infotainment_Operation_LS: 7 XXX + SG_ InftnOprAlwd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ValetMdAct : 1|1@0+ (1,0) [0|1] "" XXX + SG_ Frnt360CamSwAct : 2|1@0+ (1,0) [0|1] "" XXX + SG_ CamVideoICSDispAct : 3|1@0+ (1,0) [0|1] "" XXX + SG_ LRStStatDispAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RRStStatDispAct : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TrgdVidRecSwAct : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RrPedDetCstStReq : 10|3@0+ (1,0) [0|7] "" XXX + SG_ IntrStopAlrtCsSetReq : 13|3@0+ (1,0) [0|7] "" XXX + SG_ ICSTchStat : 17|34@0+ (1,0) [0|0] "" XXX + SG_ ICSTS_TchPrxmty : 17|2@0+ (1,0) [0|3] "" XXX + SG_ ICSTS_X1TchCrdnt : 31|16@0+ (0.001526,0) [0|100] "" XXX + SG_ ICSTS_Y1TchCrdnt : 47|16@0+ (0.001526,0) [0|100] "" XXX + SG_ TrfRdsdInfCsStReq : 20|3@0+ (1,0) [0|7] "" XXX + SG_ CntdVehBrAltCsStReq : 23|3@0+ (1,0) [0|7] "" XXX + +BO_ 2157985792 Fob_Programming_Request_LS: 1 XXX + SG_ FobProgEvntRqd : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151284736 Park_Assistant_General_Status: 1 XXX + SG_ PrkAsstClnPrkAstIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAsstDisablIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstFld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstSnrsBlk : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstSnsDistrbdIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvPrkAstOffUnbIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAstOprtrDsrdStat_1D0 : 7|2@0+ (1,0) [0|3] "" XXX + +BO_ 2159099904 ODI_DAB_2_AuxIP_LS: 8 XXX + SG_ ODI_DAB2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159067136 ODI_DAB_2_IPC_LS: 8 XXX + SG_ ODI_DAB2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159206400 ODI_AuxIP_2_IPC_LS: 8 XXX + SG_ ODI_AxIP2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159198208 ODI_IPC_2_AuxIP_LS: 8 XXX + SG_ ODI_IPC2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159190016 ODI_AuxIP_2_CenterStack_LS: 8 XXX + SG_ ODI_AxIP2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159181824 ODI_CenterStack_2_AuxIP_LS: 8 XXX + SG_ ODI_CntrStck2AxIP : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159173632 ODI_IPC_2_CenterStack_LS: 8 XXX + SG_ ODI_IPC2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159165440 ODI_CenterStack_2_IPC_LS: 8 XXX + SG_ ODI_CntrStck2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159108096 ODI_AuxIP_2_DAB_LS: 8 XXX + SG_ ODI_AxIP2DAB : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159075328 ODI_IPC_2_DAB_LS: 8 XXX + SG_ ODI_IPC2DAB : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2151718912 Chime_Active: 1 XXX + SG_ ChmAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ChmVolSt : 2|2@0+ (1,0) [0|3] "" XXX + +BO_ 2155479040 Customization_Setting_Request_LS: 5 XXX + SG_ DrvlnCustStngReq : 2|3@0+ (1,0) [0|7] "" XXX + SG_ RstrCustFctrDef : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PedFrndlyAlrtCsStReq : 6|3@0+ (1,0) [0|7] "" XXX + SG_ SusCustStngReq : 10|3@0+ (1,0) [0|7] "" XXX + SG_ StrCustStngReq : 13|3@0+ (1,0) [0|7] "" XXX + SG_ ElvtdIdlCstStReq : 15|2@0+ (1,0) [0|3] "" XXX + SG_ SndPerfMdCsStRq : 18|3@0+ (1,0) [0|7] "" XXX + SG_ DispPerfMdCsStRq : 21|3@0+ (1,0) [0|7] "" XXX + SG_ ACCPerfMdCsStReq : 26|3@0+ (1,0) [0|7] "" XXX + SG_ DrvrStPerfMdCsStReq : 29|3@0+ (1,0) [0|7] "" XXX + SG_ PsngStPerfMdCsStReq : 34|3@0+ (1,0) [0|7] "" XXX + SG_ DrvStyPerfMdCsStReq : 37|3@0+ (1,0) [0|7] "" XXX + +BO_ 2151383040 Reset_TP_request_LS: 1 XXX + SG_ TreInfMonSysRstReq : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155421696 Passive_Entry_Challenge_LS: 5 XXX + SG_ PsvEntChlng : 7|32@0+ (1,0) [0|4294967295] "passwrd" XXX + SG_ ServKylsStSysIO : 32|1@0+ (1,0) [0|1] "" XXX + SG_ PsvEntApprchDtcd : 33|1@0+ (1,0) [0|1] "" XXX + SG_ PsvEntAprchDrctn : 36|3@0+ (1,0) [0|7] "" XXX + SG_ PsvEntApprchCnfgReq : 39|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155413504 Drv_Dr_Key_Cyl_Status_LS: 3 XXX + SG_ DrvrDrKeyCylUlkSwActGroup : 1|2@0+ (1,0) [0|0] "" XXX + SG_ DrvrDrKeyCylUlkSwAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrvrDrKeyCylUlkSwActV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PsvLckngReqd : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PsvApprchVehId : 15|16@0+ (1,0) [0|65535] "" XXX + +BO_ 2159026176 ODIDynamicData_LS: 8 XXX + SG_ ODIDynData : 14|55@0+ (1,0) [0|0] "" XXX + SG_ ODD_InvldData : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ODD_DataType : 14|6@0+ (1,0) [0|63] "" XXX + SG_ ODD_FUCID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODD_DataId : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODD_DataVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2158936064 ODIEnumDynamicData_LS: 8 XXX + SG_ ODIEnmDynData : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIEDD_Data2Value : 2|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data1Value : 5|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data5Value : 9|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data4Value : 12|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data3Value : 15|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data8Value : 16|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data7Value : 19|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data6Value : 22|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data10Value : 26|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data9Value : 29|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data13Value : 33|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data12Value : 36|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data11Value : 39|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data16Value : 40|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data15Value : 43|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data14Value : 46|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data18Value : 50|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_Data17Value : 53|3@0+ (1,0) [0|7] "" XXX + SG_ ODIEDD_FUCID : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2158845952 ODIAction_CntrStack_LS: 8 XXX + SG_ ODIActn_CntrStck : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIAC_DaTy : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ODIAC_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAC_ActnID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAC_DspMID : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAC_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2158886912 ODIDynDataListRequest_IPC_LS: 8 XXX + SG_ ODIDynDataLstRq_IPC : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODDLI_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLI_DataId : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLI_DspMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLI_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLI_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX + SG_ ODDLI_Idx : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ ODDLI_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX + SG_ ODDLI_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLI_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLI_ReqType : 55|2@0+ (1,0) [0|3] "" XXX + +BO_ 2151366656 Man_Prk_Brk_LS: 1 XXX + SG_ RrAxlLckIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ FrntAxlLckIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PrkBrkSwAtv : 2|1@0+ (1,0) [0|1] "" XXX + SG_ AxlLcksServIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ AxlLckUnavailIndReq : 6|3@0+ (1,0) [0|7] "" XXX + SG_ AxlLcksVDA : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149842944 Vehicle_Stability_LS: 8 XXX + SG_ IMUProtLonAccGroup : 2|11@0+ (1,0) [0|0] "" XXX + SG_ IMUProtLonAcc : 1|10@0- (0.03,0) [-15.36|15.33] "m/s^2" XXX + SG_ IMUProtLonAccV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ TCSysAtv : 3|1@0+ (1,0) [0|1] "" XXX + SG_ BrkSysAutBrkFld : 4|1@0+ (1,0) [0|1] "" XXX + SG_ VSEAct : 5|1@0+ (1,0) [0|1] "" XXX + SG_ StrWhAngGroup : 6|47@0+ (1,0) [0|0] "" XXX + SG_ StrWhAngV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ StrWhAng : 39|16@0- (0.0625,0) [-2048|2047.9375] "deg" XXX + SG_ StWhAnVDA : 7|1@0+ (1,0) [0|1] "" XXX + SG_ VehStabEnhmntStat : 18|3@0+ (1,0) [0|7] "" XXX + SG_ VehStabEnhmntMd : 21|3@0+ (1,0) [0|7] "" XXX + SG_ StrWhlAngSenCalStat : 23|2@0+ (1,0) [0|3] "" XXX + SG_ TCSysOpMd : 26|3@0+ (1,0) [0|7] "" XXX + SG_ TCSysOpStat : 29|3@0+ (1,0) [0|7] "" XXX + SG_ VSELatAccGroup : 52|13@0+ (1,0) [0|0] "" XXX + SG_ VSELatAcc : 51|12@0- (0.015625,0) [-32|31.984375] "m/s^2" XXX + SG_ VSELatAccV : 52|1@0+ (1,0) [0|1] "" XXX + SG_ AdptDrvrSeatStng : 55|3@0+ (1,0) [0|7] "" XXX + +BO_ 2159132672 ODIAction_RearSeat_LS: 8 XXX + SG_ ODIActn_RSD : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIAR_DaTy : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ODIAR_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAR_ActnID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAR_DspMID : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAR_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2158968832 ODI_RearSeat_2_Centerstack_LS: 8 XXX + SG_ ODI_RSD2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2158960640 ODIIndication_Centerstack_LS: 8 XXX + SG_ ODIInd_CntrStck : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODIIC_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODIIC_ODIInd8 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd7 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd6 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd5 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd4 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd3 : 13|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd2 : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd1 : 15|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd16 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd15 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd14 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd13 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd12 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd11 : 21|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd10 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd9 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd24 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd23 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd22 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd21 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd20 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd19 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd18 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd17 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd32 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd31 : 33|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd30 : 34|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd29 : 35|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd28 : 36|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd27 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd26 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd25 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd40 : 40|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd39 : 41|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd38 : 42|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd37 : 43|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd36 : 44|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd35 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd34 : 46|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd33 : 47|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd48 : 48|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd47 : 49|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd46 : 50|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd45 : 51|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd44 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd43 : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd42 : 54|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd41 : 55|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd56 : 56|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd55 : 57|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd54 : 58|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd53 : 59|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd52 : 60|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd51 : 61|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd50 : 62|1@0+ (1,0) [0|1] "" XXX + SG_ ODIIC_ODIInd49 : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 2158977024 ODIEvent_Centerstack_LS: 4 XXX + SG_ ODIEvntPkt_CntrStck : 13|22@0+ (1,0) [0|0] "" XXX + SG_ ODIEC_EvID : 13|6@0+ (1,0) [0|63] "" XXX + SG_ ODIEC_FUCID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIEC_MultiFrRetCh : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 2158952448 ODIDynDataMultiReq_RearSeat_LS: 8 XXX + SG_ ODIDynDataMltRq_RSD : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODDMR_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMR_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMR_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMR_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMR_ReqType : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ODDMR_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMR_DispMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMR_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMR_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMR_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMR_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMR_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2158944256 ODIDynDataListReq_RearSeat_LS: 8 XXX + SG_ ODIDynDataLstRq_RSD : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODDLR_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLR_DataId : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLR_DspMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLR_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLR_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX + SG_ ODDLR_Idx : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ ODDLR_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX + SG_ ODDLR_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLR_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLR_ReqType : 55|2@0+ (1,0) [0|3] "" XXX + +BO_ 2158927872 ODI_DynData_CenterStack_LS: 8 XXX + SG_ ODIDynData_CntrStck : 14|55@0+ (1,0) [0|0] "" XXX + SG_ ODDC_InvldData : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ODDC_DataType : 14|6@0+ (1,0) [0|63] "" XXX + SG_ ODDC_FUCID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDC_DataId : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDC_DataVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2158895104 ODI_CenterStack_2_RearSeat_LS: 8 XXX + SG_ ODI_CntrStck2RSD : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2152038400 Infomatics_Response_Payload_LS: 8 XXX + SG_ InfMdRspPld : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2152022016 Infomatics_Metadata_Response_LS: 7 XXX + SG_ InfMdRspCmplt : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ InfMdRspInf : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ InfMdStRsp : 35|4@0+ (1,0) [0|15] "" XXX + SG_ AudSelctdSrcReq : 44|5@0+ (1,0) [0|31] "" XXX + SG_ AudSysVolSetCtrl : 55|8@0+ (1,0) [0|0] "" XXX + SG_ ASVSC_ReqEnbld : 48|1@0+ (1,0) [0|1] "" XXX + SG_ ASVSC_VolReq : 55|7@0+ (0.787402,0) [0|100.000054] "" XXX + +BO_ 2152005632 Infomatics_Request_Payload_LS: 8 XXX + SG_ InfMdRqstPld : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2151989248 Infomatics_Metadata_Request_LS: 5 XXX + SG_ InfMdRqstCmplt : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ InfMdRqstInt : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ InfMdStReq : 35|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151972864 Fuel_Level_Status_LS: 4 XXX + SG_ FuelLvlLwIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ LnchCtrlMdReq : 2|2@0+ (1,0) [0|3] "" XXX + SG_ LnchCtrlWhlSlpReq : 7|5@0+ (1,0) [0|31] "" XXX + SG_ VehFuelRngCalcGroup : 9|18@0+ (1,0) [0|0] "" XXX + SG_ VehFuelRngCalc : 8|17@0+ (0.015625,0) [0|2047.984375] "km" XXX + SG_ VehFuelRngCalcV : 9|1@0+ (1,0) [0|1] "" XXX + SG_ LnchCtrlEngRPMReq : 15|6@0+ (1,0) [0|63] "" XXX + +BO_ 2154528768 Wheel_Grnd_Velocity_LS: 8 XXX + SG_ WhlGrndVlctyLftDrvnGroup : 6|15@0+ (1,0) [0|0] "" XXX + SG_ WhlGrndVlctyLftDrvn : 5|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX + SG_ WhlGrndVlctyLftDrvnV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ WhlGrndVlctyLftNnDrvnGroup : 22|15@0+ (1,0) [0|0] "" XXX + SG_ WhlGrndVlctyLftNnDrvn : 21|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX + SG_ WhlGrndVlctyLftNnDrvnV : 22|1@0+ (1,0) [0|1] "" XXX + SG_ WhlGrndVlctyRtDrvnGroup : 38|15@0+ (1,0) [0|0] "" XXX + SG_ WhlGrndVlctyRtDrvn : 37|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX + SG_ WhlGrndVlctyRtDrvnV : 38|1@0+ (1,0) [0|1] "" XXX + SG_ WhlGrndVlctyRtNnDrvnGroup : 54|15@0+ (1,0) [0|0] "" XXX + SG_ WhlGrndVlctyRtNnDrvn : 53|14@0+ (0.03125,0) [0|511.96875] "km / h" XXX + SG_ WhlGrndVlctyRtNnDrvnV : 54|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150916096 Park_Heater_Info_LS: 4 XXX + SG_ PrkHtrAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ClntCircPmpAct : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PrkHtrCoolntTempGroup : 2|11@0+ (1,0) [0|0] "" XXX + SG_ PrkHtrCoolntTempV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PrkHtrCoolntTemp : 15|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ PrkHtrFlCsmdRlCntRsOc : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PrkHtrFlCnsmdRolCntGroup : 4|29@0+ (1,0) [0|0] "" XXX + SG_ PrkHtrFlCnsmdRolCntV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PrkHtrFlCnsmdRolCnt : 23|16@0+ (3.05176E-006,0) [0|0.1999970916] "liters" XXX + SG_ PrkHtrPrhtAch : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150367232 Immobilizer_Identifier_LS: 5 XXX + SG_ ImoId : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ LrnEnvId : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ LrnEnvIdSt : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ImoIdSt : 33|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150621184 Keyless_Start_Auth_LS: 1 XXX + SG_ KylsStrAuthRslt : 7|8@0+ (1,0) [0|0] "" XXX + SG_ KSARUID8 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID7 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID6 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID5 : 3|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID4 : 4|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID3 : 5|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID2 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ KSARUID1 : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151309312 Inflatable_Restraints_Key_Id_LS: 2 XXX + SG_ InflRestId : 7|16@0+ (1,0) [0|39321] "" XXX + +BO_ 2154061824 Window_Normalized_Indication_LS: 1 XXX + SG_ PsWndNtNrmIndOn : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrWndNtNrmIndOn : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RLWndNtNrmIndOn : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RRWndNtNrmIndOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ RmtWndMvmntAtv : 4|1@0+ (1,0) [0|1] "" XXX + SG_ WndOprAlwd : 5|1@0+ (1,0) [0|1] "" XXX + SG_ RrDrUnlckIO : 6|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154512384 Rear_Closure_Rel_Sw_Sta_LS: 1 XXX + SG_ RrClosRelSwActGroup : 1|2@0+ (1,0) [0|0] "" XXX + SG_ RrClosRelSwAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RrClosRelSwActV : 1|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155347968 HS_Indications_Slow_LS: 8 XXX + SG_ ActVbnCtrlMlfIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ PedtrnProtSysDpl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TirePrsLowIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACCUnavlbleDTWthrIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilStrvtnIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ SecAxlNonEmMalfIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ BrkFldLvlLwGroup : 7|4@0+ (1,0) [0|0] "" XXX + SG_ BrkFldLvlLwV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ BrkFldLvlLw : 7|1@0+ (1,0) [0|1] "" XXX + SG_ ACCSnsClnRqdIO : 8|1@0+ (1,0) [0|1] "" XXX + SG_ ACCTmpUnavlbleIO : 9|1@0+ (1,0) [0|1] "" XXX + SG_ EngRecmndUpshftIO : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ServAdpCrsCtrlIndOn : 11|1@0+ (1,0) [0|1] "" XXX + SG_ SrvSuspSysIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ BrkPadWrnIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ BrkSysMalFuncIndOn : 15|1@0+ (1,0) [0|1] "" XXX + SG_ EngEmsRelMalfIndReq : 18|3@0+ (1,0) [0|7] "" XXX + SG_ RrAxlMalfIO : 19|1@0+ (1,0) [0|1] "" XXX + SG_ DrShftCntrlReqDndIO : 20|1@0+ (1,0) [0|1] "" XXX + SG_ CompOvrhtIndOn : 21|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsSkpShftIO : 22|1@0+ (1,0) [0|1] "" XXX + SG_ RrAxlTmpInhIO : 23|1@0+ (1,0) [0|1] "" XXX + SG_ SecAxlTmpInhIO : 24|1@0+ (1,0) [0|1] "" XXX + SG_ CPSAlrtOnlIO : 25|1@0+ (1,0) [0|1] "" XXX + SG_ EPBSysStatIndReq : 27|2@0+ (1,0) [0|3] "" XXX + SG_ EPBSysWrnIndReq : 29|2@0+ (1,0) [0|3] "" XXX + SG_ CPSFldIO : 30|1@0+ (1,0) [0|1] "" XXX + SG_ CPSOffIO : 31|1@0+ (1,0) [0|1] "" XXX + SG_ CPSUnblIO : 32|1@0+ (1,0) [0|1] "" XXX + SG_ SrvPedtrnProtSysIO : 33|1@0+ (1,0) [0|1] "" XXX + SG_ PedtrnProtSysDisbld : 34|1@0+ (1,0) [0|1] "" XXX + SG_ PedtrnProtVDA : 35|1@0+ (1,0) [0|1] "" XXX + SG_ AppCltchAutSrtIO : 36|1@0+ (1,0) [0|1] "" XXX + SG_ StBltTgtSetAvl : 37|1@0+ (1,0) [0|1] "" XXX + SG_ FourWhlDrvIndReq : 42|3@0+ (1,0) [0|7] "" XXX + SG_ EngRecDwnshftIO : 43|1@0+ (1,0) [0|1] "" XXX + SG_ StBltTgtCrtSetVal : 46|3@0+ (1,0) [0|7] "" XXX + SG_ HillDesCtrlRedVehSpIO : 47|1@0+ (1,0) [0|1] "" XXX + SG_ VehRollAngleGroup : 55|8@0+ (1,0) [0|0] "" XXX + SG_ VehRollAngle : 54|7@0+ (0.703125,-45) [-45|44.296875] "deg" XXX + SG_ VehRollAngleV : 55|1@0+ (1,0) [0|1] "" XXX + SG_ ACCPerfMdCsCrStVal : 58|3@0+ (1,0) [0|7] "" XXX + SG_ ACCPerfMdCsStAvl : 59|1@0+ (1,0) [0|1] "" XXX + SG_ DrvrStPerfMdCsCrStVal : 62|3@0+ (1,0) [0|7] "" XXX + SG_ DrvrStPerfMdCsStAvl : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149777408 Non_Drvn_Whl_Rot_Status_LS: 8 XXX + SG_ WhlRotStatLftNDrvn : 7|32@0+ (1,0) [0|0] "" XXX + SG_ WRSLNDWhlDistPCntr : 1|10@0+ (1,0) [0|1023] "counts" XXX + SG_ WRSLNDWhlDistVal : 2|1@0+ (1,0) [0|1] "" XXX + SG_ WRSLNDWhlRotStRst : 3|1@0+ (1,0) [0|1] "" XXX + SG_ WRSLNDSeqNum : 5|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSLNDWhlDisTpRC : 7|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSLNDWhlDistTstm : 23|16@0+ (1,0) [0|65535] "counts" XXX + SG_ WhlRotStatRghtNDrvn : 39|32@0+ (1,0) [0|0] "" XXX + SG_ WRSRNDWhlDistPCntr : 33|10@0+ (1,0) [0|1023] "counts" XXX + SG_ WRSRNDWhlDistVal : 34|1@0+ (1,0) [0|1] "" XXX + SG_ WRSRNDWhlRotStRst : 35|1@0+ (1,0) [0|1] "" XXX + SG_ WRSRNDSeqNum : 37|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSRNDWhlDisTpRC : 39|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSRNDWhlDistTstm : 55|16@0+ (1,0) [0|65535] "counts" XXX + +BO_ 2149769216 Driven_Whl_Rotational_Stat_LS: 8 XXX + SG_ WhlRotatStatLftDrvn : 7|32@0+ (1,0) [0|0] "" XXX + SG_ WRSLDWhlDistPlsCntr : 1|10@0+ (1,0) [0|1023] "counts" XXX + SG_ WRSLDWhlDistVal : 2|1@0+ (1,0) [0|1] "" XXX + SG_ WRSLDWhlRotStatRst : 3|1@0+ (1,0) [0|1] "" XXX + SG_ WRSLDSeqNum : 5|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSLDWhlDisTpRC : 7|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSLDWhlDistTmstm : 23|16@0+ (1,0) [0|65535] "counts" XXX + SG_ WhlRotatStatRtDrvn : 39|32@0+ (1,0) [0|0] "" XXX + SG_ WRSRDWhlDistPlsCntr : 33|10@0+ (1,0) [0|1023] "counts" XXX + SG_ WRSRDWhlDistVal : 34|1@0+ (1,0) [0|1] "" XXX + SG_ WRSRDWhlRotStatRst : 35|1@0+ (1,0) [0|1] "" XXX + SG_ WRSRDSeqNum : 37|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSRDWhlDisTpRC : 39|2@0+ (1,0) [0|3] "counts" XXX + SG_ WRSRDWhlDistTmstm : 55|16@0+ (1,0) [0|65535] "counts" XXX + +BO_ 2156789760 Time_of_Day_LS: 6 XXX + SG_ CldrYr : 7|8@0+ (1,2000) [2000|2255] "year" XXX + SG_ CldrMth : 11|4@0+ (1,0) [0|15] "" XXX + SG_ FrPedDetCsStReq : 14|3@0+ (1,0) [0|7] "" XXX + SG_ CldrDay : 20|5@0+ (1,0) [0|31] "days" XXX + SG_ SmrtHgBmAstCstSetReq : 23|3@0+ (1,0) [0|7] "" XXX + SG_ TmofDay : 24|17@0+ (1,0) [0|0] "" XXX + SG_ TOD_HrofDay : 24|5@0+ (1,0) [0|31] "hr" XXX + SG_ TOD_MinofHr : 35|6@0+ (1,0) [0|63] "min" XXX + SG_ TOD_SecofMin : 45|6@0+ (1,0) [0|63] "s" XXX + SG_ TimeDispFormat : 25|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155020288 Language_Selection_LS: 1 XXX + SG_ LngSelExt : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ChVolRq2 : 7|2@0+ (1,0) [0|3] "" XXX + +BO_ 2150432768 Engine_Information_4_LS: 8 XXX + SG_ TransOilTempSensPres : 0|1@0+ (1,0) [0|1] "" XXX + SG_ GenFldDutCycGroup : 1|42@0+ (1,0) [0|0] "" XXX + SG_ GenFldDutCycV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ GenFldDutCyc : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ FuelFltLifRstPerf : 2|1@0+ (1,0) [0|1] "" XXX + SG_ TrnEmsMlfAtv : 3|1@0+ (1,0) [0|1] "" XXX + SG_ GrdBrkgAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsNEmsRltMalfActv : 5|1@0+ (1,0) [0|1] "" XXX + SG_ EngShtdwnPndgIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ EngManfldAirTempCrtdGroup : 7|16@0+ (1,0) [0|0] "" XXX + SG_ EngManfldAirTempCrtdV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EngManfldAirTempCrtd : 15|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ FuelTotCap : 19|12@0+ (0.125,0) [0|511.875] "liters" XXX + SG_ TrnsThrmlMngmntStat : 21|2@0+ (1,0) [0|3] "" XXX + SG_ PTHiElecLdReqd : 22|1@0+ (1,0) [0|1] "" XXX + SG_ EngOilRmnLf : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ FuelFltRmnLf : 63|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2155298816 Tire_Pressure_Sensor_Prog_Req_LS: 1 XXX + SG_ TrPrsSnsProgEvntRqd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TrPrsMntrTrLdRstRqstd : 2|2@0+ (1,0) [0|3] "" XXX + +BO_ 2158878720 ODIDynDataListReq_CntrStack_LS: 8 XXX + SG_ ODIDynDataLstRq_CntrStck : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODDLC_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLC_DataId : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLC_DspMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLC_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLC_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX + SG_ ODDLC_Idx : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ ODDLC_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX + SG_ ODDLC_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLC_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLC_ReqType : 55|2@0+ (1,0) [0|3] "" XXX + +BO_ 2158870528 ODIDynDataListRequest_AuxIP_LS: 8 XXX + SG_ ODIDynDataLstRq_AxIP : 7|64@0+ (1,0) [0|0] "" XXX + SG_ ODDLA_FUCID : 7|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLA_DataId : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLA_DspMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDLA_ReqDir : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLA_NmEntries : 31|7@0+ (1,0) [0|127] "" XXX + SG_ ODDLA_Idx : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ ODDLA_SubIdReqM : 51|12@0+ (1,0) [0|4095] "" XXX + SG_ ODDLA_WrpArnd : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLA_BckgndFlag : 53|1@0+ (1,0) [0|1] "" XXX + SG_ ODDLA_ReqType : 55|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154692608 Audio_Source_Status_LS: 2 XXX + SG_ AudSrcStat : 3|12@0+ (1,0) [0|0] "" XXX + SG_ ASSAudSrcType : 3|5@0+ (1,0) [0|31] "" XXX + SG_ ASSAudSrcStatCode : 11|4@0+ (1,0) [0|15] "" XXX + SG_ ASSAudSrcChType : 14|3@0+ (1,0) [0|7] "" XXX + SG_ LgclAVChnl : 7|4@0+ (1,0) [0|15] "" XXX + +BO_ 2154627072 Audio_Master_Arbitration_Command: 2 XXX + SG_ AudMstrArbCom : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LgclAVChnl_368 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ AudMstrSrcTyp : 12|5@0+ (1,0) [0|31] "" XXX + SG_ AudMstrChnnlTyp : 15|3@0+ (1,0) [0|7] "" XXX + +BO_ 2151112704 Occupant_Sensning_Status_LS: 2 XXX + SG_ FrntPassClass : 2|3@0+ (1,0) [0|7] "" XXX + SG_ FrPsSeatOccSnsOpMd : 5|3@0+ (1,0) [0|7] "N/A" XXX + SG_ FrPasSeatResCtrlOccStGroup : 7|14@0+ (1,0) [0|0] "" XXX + SG_ FrPasSeatResCtrlOccSt : 7|2@0+ (1,0) [0|3] "" XXX + SG_ FrPasSeatResCtrlOccStV : 10|1@0+ (1,0) [0|1] "" XXX + SG_ FrPsSeatOccFltSt : 9|2@0+ (1,0) [0|3] "N/A" XXX + SG_ FrPasSeatbltRemOccSt : 11|1@0+ (1,0) [0|1] "" XXX + +BO_ 2153938944 Remote_Reflash_Req_LS: 1 XXX + SG_ RmtRflshMdReqtd : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2159239168 ODI_TEL_2_OTIM_LS: 8 XXX + SG_ ODI_TEL2OTIM : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159230976 ODI_OTIM_2_TEL_LS: 8 XXX + SG_ ODI_OTIM2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159222784 ODI_PDIM_2_CenterStack_LS: 8 XXX + SG_ ODI_PDIM2CntrStck : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2159214592 ODI_CenterStack_2_PDIM_LS: 8 XXX + SG_ ODI_CntrStck2PDIM : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2158862336 ODIAction_OTIM_LS: 8 XXX + SG_ ODIActn_OTIM : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIAOT_DaTy : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ODIAOT_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAOT_ActnID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAOT_DspMID : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAOT_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2150662144 Environment_Id_Resp_3_LS: 3 XXX + SG_ EnvIdRsp3 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ EnvIdRspSt3 : 17|2@0+ (1,0) [0|3] "" XXX + +BO_ 2150653952 Environment_Id_Resp_2_LS: 3 XXX + SG_ EnvIdRsp2 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ EnvIdRspSt2 : 17|2@0+ (1,0) [0|3] "" XXX + +BO_ 2150850560 Seatbelt_Information_LS: 1 XXX + SG_ DrSbltAtcGroup : 1|2@0+ (1,0) [0|0] "" XXX + SG_ DrSbltAtc : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrSbltAtcV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PsSbltAtcGroup : 3|2@0+ (1,0) [0|0] "" XXX + SG_ PsSbltAtc : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PsSbltAtcV : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154659840 Column_Lock_Status_2: 2 XXX + SG_ UnlckRtryRotIndOn : 2|1@0+ (1,0) [0|1] "" XXX + SG_ UnlockRtryPshIndOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ StrgClmnLckVisNot : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ClmnLckStatGroup : 5|6@0+ (1,0) [0|0] "" XXX + SG_ ClmnLckStat : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ClmnLckStatV : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ClmSysFlrIndOn : 7|1@0+ (1,0) [0|1] "" XXX + SG_ StrngClmnLckTT : 9|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154938368 Fob_Programming_Mode_Status_LS: 1 XXX + SG_ FobProgMdStat : 1|2@0+ (1,0) [0|3] "" XXX + +BO_ 2155266048 Rear_Seat_Heat_Cool_Switches_LS: 1 XXX + SG_ RLHCSeatSw1Act : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSeatSw2Act : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSeatSw3Act : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSeatSw1Act : 3|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSeatSw2Act : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSeatSw3Act : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155249664 Rear_Seat_Heat_Cool_Control_LS: 4 XXX + SG_ RLHCSModeIndCtrl : 4|5@0+ (1,0) [0|0] "" XXX + SG_ RLHCSMInd3 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSMInd2 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSMInd1 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSMIndReq : 4|2@0+ (1,0) [0|3] "" XXX + SG_ RRHCSModeIndCtrl : 12|5@0+ (1,0) [0|0] "" XXX + SG_ RRHCSMInd3 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSMInd2 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSMInd1 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSMIndReq : 12|2@0+ (1,0) [0|3] "" XXX + SG_ RLHCSeatLevIndCtrl : 22|7@0+ (1,0) [0|0] "" XXX + SG_ RLHCSLSeatLev5 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSLSeatLev4 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSLSeatLev3 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSLSeatLev2 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSLSeatLev1 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ RLHCSLIndReq : 22|2@0+ (1,0) [0|3] "" XXX + SG_ RRHCSeatLevIndCtrl : 30|7@0+ (1,0) [0|0] "" XXX + SG_ RRHCSLSeatLev5 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSLSeatLev4 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSLSeatLev3 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSLSeatLev2 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSLSeatLev1 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ RRHCSLIndReq : 30|2@0+ (1,0) [0|3] "" XXX + +BO_ 2155184128 CruiseControl_LS: 3 XXX + SG_ CrsCntAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CrsSpdLmtrSwStat : 4|4@0+ (1,0) [0|15] "" XXX + SG_ TrnsShftLvrLckStat : 5|1@0+ (1,0) [0|1] "" XXX + SG_ RrStRmndrIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RrStRmndrCstSetAvail : 7|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntrlSwStat : 15|8@0+ (1,0) [0|0] "" XXX + SG_ CrsCntrlSwStSwDataIntgty : 9|2@0+ (1,0) [0|3] "" XXX + SG_ CrsCntrlSwStSpDcSwAct : 10|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntrlSwStSpdInSwAct : 11|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntrlSwStSetSwAct : 12|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntrlSwStResSwAct : 13|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntrlSwStOnSwAct : 14|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntrlSwStCanSwAct : 15|1@0+ (1,0) [0|1] "" XXX + SG_ SmPhRmFunCstCurStVal : 18|3@0+ (1,0) [0|7] "" XXX + SG_ SmPhRmFunCstStAval : 19|1@0+ (1,0) [0|1] "" XXX + SG_ IdlRecmndToClEngIO : 20|1@0+ (1,0) [0|1] "" XXX + SG_ RrStRmndrCstCurrSetVal : 23|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155167744 Power_Mode_Info_LS: 3 XXX + SG_ ShftPrkIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ShftToNtrlIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ Ky_IdDevPr : 2|1@0+ (1,0) [0|1] "" XXX + SG_ SecPwrMdPshBtnAtv : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TransModActIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TransModInactIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ KylsStrtUseTxPckIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ TrStLgMdAtv : 7|1@0+ (1,0) [0|1] "" XXX + SG_ VehMovState : 10|3@0+ (1,0) [0|7] "" XXX + SG_ AutoShtdwnDsblIO : 11|1@0+ (1,0) [0|1] "" XXX + SG_ AppPrkBrkIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ NRmtDtdPsCluRstIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ ApplyBrkPdlIO : 14|1@0+ (1,0) [0|1] "" XXX + SG_ ApplyCltPdlIO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ NoReDetInOn : 16|1@0+ (1,0) [0|1] "" XXX + SG_ NRmtDtdPsBrkRstIO : 17|1@0+ (1,0) [0|1] "" XXX + SG_ PrsBtnAgnTTrnEngOffIO : 18|1@0+ (1,0) [0|1] "" XXX + SG_ TSLgMdPwrCtOWAtv : 19|1@0+ (1,0) [0|1] "" XXX + SG_ NRmtDtctdRstrtAllwd : 20|1@0+ (1,0) [0|1] "" XXX + SG_ PrsStrtAgnIO : 21|1@0+ (1,0) [0|1] "" XXX + SG_ PrsCltchPrsStrtAgnIO : 22|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154921984 Fob_Status_LS: 2 XXX + SG_ RFAFnc : 1|10@0+ (1,0) [0|0] "" XXX + SG_ RFRmtCntFobNm : 1|3@0+ (1,0) [0|7] "" XXX + SG_ RFRmtCntFobBatLw : 8|1@0+ (1,0) [0|1] "" XXX + SG_ RFRmtCntrlFobFnc : 14|6@0+ (1,0) [0|63] "" XXX + SG_ FobPogLimRchdIndOn : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151317504 Park_Assistant_Rear_Status: 4 XXX + SG_ PrkAsstRrExtdDist : 3|12@0+ (0.01,0) [0|40.95] "m" XXX + SG_ PrkAstRrSysStat : 5|2@0+ (1,0) [0|3] "" XXX + SG_ PARrRgn1ObjStat : 19|4@0+ (1,0) [0|15] "" XXX + SG_ PARrRgn2ObjStat : 23|4@0+ (1,0) [0|15] "" XXX + SG_ PARrRgn3ObjStat : 27|4@0+ (1,0) [0|15] "" XXX + SG_ PARrRgn4ObjStat : 31|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151301120 Park_Assistant_Front_Status: 4 XXX + SG_ PrkAsstFrtExtdDist : 3|12@0+ (0.01,0) [0|40.95] "m" XXX + SG_ PrkAstFrSysStat : 5|2@0+ (1,0) [0|3] "" XXX + SG_ PrkAstAdvSysAct : 6|1@0+ (1,0) [0|1] "" XXX + SG_ PrkAsstRrOffIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ PAFrtRgn1ObjStat : 19|4@0+ (1,0) [0|15] "" XXX + SG_ PAFrtRgn2ObjStat : 23|4@0+ (1,0) [0|15] "" XXX + SG_ PAFrtRgn3ObjStat : 27|4@0+ (1,0) [0|15] "" XXX + SG_ PAFrtRgn4ObjStat : 31|4@0+ (1,0) [0|15] "" XXX + +BO_ 2159083520 ODI_TEL_2_IPC_LS: 8 XXX + SG_ ODI_TEL2IPC : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2153922560 Climate_Control_Voltage_LS: 3 XXX + SG_ ClimCtrlVoltBstModReq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ClmtCtrlHtrEngRunRq : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HtrVlvRqstdPstn : 3|2@0+ (1,0) [0|3] "" XXX + SG_ ClntHtrElecPwrRatGroup : 4|13@0+ (1,0) [0|0] "" XXX + SG_ ClntHtrElecPwrRatV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ClntHtrElecPwrRat : 15|8@0+ (0.04,0) [0|10.2] "kW" XXX + SG_ ClmCtrHiVltPwrRqtd : 23|8@0+ (0.1,0) [0|25.5] "kW" XXX + +BO_ 2153807872 Door_Open_Switch_Status_LS: 1 XXX + SG_ DrDoorOpenSwActGroup : 1|2@0+ (1,0) [0|0] "" XXX + SG_ DrDoorOpenSwAct : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrDoorOpenSwActV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ PsDoorOpenSwActGroup : 3|2@0+ (1,0) [0|0] "" XXX + SG_ PsDoorOpenSwAct : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PsDoorOpenSwActV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ClmSysAuxFlrIndOn : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PsvStrtStrngClmnLckTT : 6|2@0+ (1,0) [0|3] "" XXX + +BO_ 2150703104 Audio_Amplifier_Status: 1 XXX + SG_ AudSysDigSigProcPres : 0|1@0+ (1,0) [0|1] "" XXX + SG_ AudSysSurSndSysPres : 1|1@0+ (1,0) [0|1] "" XXX + SG_ AudSysVNoisCompPres : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151399424 Wash_Level_LS: 1 XXX + SG_ WshFldLw : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151956480 Driver_Workload_LS: 2 XXX + SG_ DrvWrkldLvl : 3|4@0+ (1,0) [0|15] "" XXX + SG_ ClstrHMIAnmSt : 6|3@0+ (1,0) [0|7] "" XXX + SG_ ClstrHMIRdy : 7|1@0+ (1,0) [0|1] "" XXX + SG_ StrWhlThbwhlCnts : 13|6@0- (1,0) [-32|31] "counts" XXX + +BO_ 2151940096 Alarm_2_Request_LS: 7 XXX + SG_ Alrm2ExtRngReq : 1|26@0+ (1,0) [0|0] "" XXX + SG_ A2ERRAlrmReq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ A2ERRAlrmTime : 15|24@0+ (1,0) [0|16777215] "min" XXX + SG_ EstBulkIntAirTmpGroup : 2|35@0+ (1,0) [0|0] "" XXX + SG_ EstBulkIntAirTmpV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ EstBulkIntAirTmp : 39|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + SG_ EstIntRfSrfcTmpGroup : 3|44@0+ (1,0) [0|0] "" XXX + SG_ EstIntRfSrfcTmpV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ EstIntRfSrfcTmp : 47|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + SG_ EstIntHorzDshSrfTmpGroup : 4|53@0+ (1,0) [0|0] "" XXX + SG_ EstIntHorzDshSrfTmpM : 4|1@0+ (1,0) [0|1] "" XXX + SG_ EstIntHorzDshSrfTmp : 55|8@0+ (1,-40) [-40|215] "deg C" XXX + +BO_ 2151923712 Alarm_1_Request_LS: 5 XXX + SG_ Alrm1ExtRngReq : 1|26@0+ (1,0) [0|0] "" XXX + SG_ A1ERRAlrmReq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ A1ERRAlrmTime : 15|24@0+ (1,0) [0|16777215] "min" XXX + SG_ HLOCCstCurrSetVal : 6|3@0+ (1,0) [0|7] "" XXX + SG_ HLOCCstSetAvail : 7|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCstAvail : 39|7@0+ (1,0) [0|0] "" XXX + SG_ HLOCCA_Res4Avail : 33|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCA_Res3Avail : 34|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCA_Res2Avail : 35|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCA_Res1Avail : 36|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCA_OnOpnOnlyAvail : 37|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCA_OnAvail : 38|1@0+ (1,0) [0|1] "" XXX + SG_ HLOCCA_OffAvail : 39|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150645760 Environment_Id_Resp_1_LS: 3 XXX + SG_ EnvIdRsp1 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ EnvIdRspSt1 : 17|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152464384 Lane_Departure_Warning_LS: 3 XXX + SG_ LaneDepWrnDisbldIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ LnKpAstDisbldIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SrvcLaneDepWrnSysIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ SrvcLnKpAstSysIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ HndsOffStrWhlDtIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TnDrvLDWOffUnbIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LftLnDepWrnSt : 7|2@0+ (1,0) [0|3] "" XXX + SG_ LaneDepWrnIndCntrl : 13|6@0+ (1,0) [0|0] "" XXX + SG_ LDWIC_LnDepWAWLn : 9|2@0+ (1,0) [0|3] "" XXX + SG_ LDWIC_Ind2 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ LDWIC_Ind1 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ LDWIC_IndReq : 13|2@0+ (1,0) [0|3] "" XXX + SG_ RtLnDepWrnSt : 15|2@0+ (1,0) [0|3] "" XXX + SG_ LnKpAstIndCntrl : 21|6@0+ (1,0) [0|0] "" XXX + SG_ LKAIC_AdbWngLn : 17|2@0+ (1,0) [0|3] "" XXX + SG_ LKAIC_Ind2 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ LKAIC_Ind1 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ LKAIC_IndReq : 21|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154971136 Front_Seat_Heat_Cool_Switches_LS: 1 XXX + SG_ DrvHCSeatSw1Act : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSeatSw2Act : 1|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSeatSw3Act : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSeatSw1Act : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSeatSw2Act : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSeatSw3Act : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154962944 Front_Seat_Heat_Cool_Control_LS: 4 XXX + SG_ DrvHCSModeIndCtrl : 4|5@0+ (1,0) [0|0] "" XXX + SG_ DrvHCSMInd3 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSMInd2 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSMInd1 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSMIndReq : 4|2@0+ (1,0) [0|3] "" XXX + SG_ PassHCSModeIndCtrl : 12|5@0+ (1,0) [0|0] "" XXX + SG_ PassHCSMInd3 : 8|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSMInd2 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSMInd1 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSMIndReq : 12|2@0+ (1,0) [0|3] "" XXX + SG_ DrvHCSLevIndCtrl : 22|7@0+ (1,0) [0|0] "" XXX + SG_ DrvHCSLSeatLev5 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSLSeatLev4 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSLSeatLev3 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSLSeatLev2 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSLSeatLev1 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ DrvHCSLIndReq : 22|2@0+ (1,0) [0|3] "" XXX + SG_ PassHCSeatLevIndCtrl : 30|7@0+ (1,0) [0|0] "" XXX + SG_ PassHCSLSeatLev5 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSLSeatLev4 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSLSeatLev3 : 26|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSLSeatLev2 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSLSeatLev1 : 28|1@0+ (1,0) [0|1] "" XXX + SG_ PassHCSLIndReq : 30|2@0+ (1,0) [0|3] "" XXX + +BO_ 2156232704 Alarm_Clock_Status_LS: 4 XXX + SG_ AlrmClkStat : 7|32@0+ (1,0) [0|0] "" XXX + SG_ ACSAlarm3 : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm2 : 3|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm1 : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm0 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm7 : 9|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm6 : 11|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm5 : 13|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm4 : 15|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm11 : 17|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm10 : 19|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm9 : 21|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm8 : 23|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm15 : 25|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm14 : 27|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm13 : 29|2@0+ (1,0) [0|3] "" XXX + SG_ ACSAlarm12 : 31|2@0+ (1,0) [0|3] "" XXX + +BO_ 2154987520 Hood_Status_LS: 1 XXX + SG_ HdStGroup : 2|3@0+ (1,0) [0|0] "" XXX + SG_ HdSt : 1|2@0+ (1,0) [0|3] "" XXX + SG_ HdStV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ WrlsChrgSysChrgStat : 5|3@0+ (1,0) [0|7] "" XXX + +BO_ 2154840064 Compass_Status_LS: 4 XXX + SG_ CmpsOctHdingDataSrc : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsModFltPrs : 1|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsModManCalInPrc : 2|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsZnNvrSet : 3|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsDecZone : 11|4@0+ (1,0) [0|15] "" XXX + SG_ CmpsOctHding : 14|3@0+ (1,0) [0|7] "" XXX + SG_ CmpsSatrtd : 15|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsCrHding : 23|16@0+ (0.0054932,0) [0|359.996862] "deg" XXX + +BO_ 2154676224 Compass_Request_LS: 1 XXX + SG_ CmpsDecZonCmndVal : 3|4@0+ (1,0) [0|15] "" XXX + SG_ CmpsDecZonSetReq : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsModManCalReq : 5|1@0+ (1,0) [0|1] "" XXX + SG_ CmpsModSlfTstReq : 6|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154643456 Auxiliary_Heater_Status_LS: 3 XXX + SG_ AuxHtrAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ HtrCoreInltClntTmpCalcGroup : 4|21@0+ (1,0) [0|0] "" XXX + SG_ HtrCoreInltClntTmpCalcV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ HtrCoreInltClntTmpCalc : 23|8@0+ (1,-40) [-40|215] "deg C" XXX + SG_ CCClntCrcFlwRtReq : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2154905600 Driver_Identifier_LS: 1 XXX + SG_ DrId : 2|3@0+ (1,0) [0|7] "" XXX + SG_ DrvSeatPrsMemID : 5|3@0+ (1,0) [0|7] "" XXX + +BO_ 2154954752 High_Volt_Climate_Pwr_Status_LS: 5 XXX + SG_ ClmtHtPwrRqd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ HtdStWhlCmd : 2|2@0+ (1,0) [0|3] "" XXX + SG_ HtdStWhlInd : 4|2@0+ (1,0) [0|3] "" XXX + SG_ HtdStWhlCtrlSrc : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ClntHtrElecPwrReq : 15|8@0+ (0.04,0) [0|10.2] "kW" XXX + SG_ EstACCompPwrRchCbnCmf : 23|8@0+ (0.04,0) [0|10.2] "kw" XXX + SG_ EstACCompPwrMtnCbnCmf : 31|8@0+ (0.04,0) [0|10.2] "kW" XXX + +BO_ 2153381888 Control_Power_Liftgate_LS: 4 XXX + SG_ FnshRrClsrMtnBfrDrvIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RrClsrObstclDtctd : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RrClsrInMtn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ RrClosOpenSwActGroup : 4|3@0+ (1,0) [0|0] "" XXX + SG_ RrClosOpenSwAct : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RrClosOpenSwActV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RrWprInhbRq : 5|1@0+ (1,0) [0|1] "" XXX + SG_ GrgPrgMdCmpl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ PwrLftgtInclAngGroup : 7|16@0+ (1,0) [0|0] "" XXX + SG_ PwrLftgtInclAngV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ PwrLftgtInclAng : 15|8@0+ (1,0) [0|255] "" XXX + SG_ VehIncAngEst : 23|8@0+ (1,0) [0|255] "deg" XXX + SG_ PwrLftgtMotStat : 26|3@0+ (1,0) [0|7] "" XXX + SG_ VltActRrAccUnavlIO : 27|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149752832 Chassis_Information_LS: 8 XXX + SG_ VehHghtStatGroup : 0|9@0+ (1,0) [0|0] "" XXX + SG_ VehHghtStatV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ VehHghtStat : 11|4@0+ (1,0) [0|15] "" XXX + SG_ IntBrkAssPreFilReq : 1|1@0+ (1,0) [0|1] "N/A" XXX + SG_ BksOvht : 2|1@0+ (1,0) [0|1] "" XXX + SG_ HalfSysFail : 3|1@0+ (1,0) [0|1] "" XXX + SG_ BrkSysRedBrkTlltlReq : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ABSAtv : 5|1@0+ (1,0) [0|1] "" XXX + SG_ DrvlnCustStngAvlbl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ StrCustStngAvlbl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ PrkBrkVDA : 12|1@0+ (1,0) [0|1] "" XXX + SG_ PowStVDA : 13|1@0+ (1,0) [0|1] "" XXX + SG_ RrDrCntVDA : 14|1@0+ (1,0) [0|1] "" XXX + SG_ BrkSysVDA : 15|1@0+ (1,0) [0|1] "" XXX + SG_ SprTireSt : 18|3@0+ (1,0) [0|7] "" XXX + SG_ EPBSysAudWarnReq : 20|2@0+ (1,0) [0|3] "" XXX + SG_ EPBSysDspMsgReq : 23|3@0+ (1,0) [0|7] "" XXX + SG_ DrvlnCustCurrStngVal : 26|3@0+ (1,0) [0|7] "" XXX + SG_ StrCustCurrStngVal : 29|3@0+ (1,0) [0|7] "" XXX + SG_ SusCustStngAvlbl : 30|1@0+ (1,0) [0|1] "" XXX + SG_ EBDFailed : 31|1@0+ (1,0) [0|1] "" XXX + SG_ SusCustCurrStngVal : 34|3@0+ (1,0) [0|7] "" XXX + SG_ HillDscntCntlSysStat : 37|3@0+ (1,0) [0|7] "" XXX + SG_ ElecPrkBrkStat : 39|2@0+ (1,0) [0|3] "" XXX + SG_ HlStrAssActIO : 41|1@0+ (1,0) [0|1] "" XXX + SG_ ColPrSysStngAvl : 42|1@0+ (1,0) [0|1] "" XXX + SG_ GNCustSetngAvlbl : 44|1@0+ (1,0) [0|1] "" XXX + SG_ GNCustCrntStngVal : 47|3@0+ (1,0) [0|7] "" XXX + SG_ CPSInfotmntMtReq : 49|2@0+ (1,0) [0|3] "" XXX + SG_ ColPrSysCrntStng : 52|3@0+ (1,0) [0|7] "" XXX + SG_ SndEnhcmtPerfMdRq : 55|3@0+ (1,0) [0|7] "" XXX + SG_ DispPerfMdCsCrStVal : 58|3@0+ (1,0) [0|7] "" XXX + SG_ DispPerfMdCsStAvl : 59|1@0+ (1,0) [0|1] "" XXX + SG_ SndPerfMdCsCrStVal : 62|3@0+ (1,0) [0|7] "" XXX + SG_ SndPerfMdCsStAvl : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151514112 Reset_OilLife_Request_LS: 1 XXX + SG_ EngOilLfRstRq : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2158903296 ODIDynDataMultiRequest_AuxIP_LS: 8 XXX + SG_ ODIDynDataMltRq_AuxIP : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODDMA_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMA_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMA_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMA_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMA_ReqType : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ODDMA_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMA_DispMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMA_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMA_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMA_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMA_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMA_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2158911488 ODIDynDataMultiReq_CntrStack_LS: 8 XXX + SG_ ODIDynDataMltRq_CntrStck : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODDMC_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMC_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMC_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMC_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMC_ReqType : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ODDMC_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMC_DispMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMC_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMC_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMC_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMC_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMC_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2158919680 ODIDynDataMultiRequest_IPC_LS: 8 XXX + SG_ ODIDynDataMltRq_IPC : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODDMI_DataID2Vld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMI_DataID3Vld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMI_DataID4Vld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMI_DataID5Vld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ODDMI_ReqType : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ODDMI_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMI_DispMID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMI_DataID1 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMI_DataID2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMI_DataID3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMI_DataID4 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ODDMI_DataID5 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2151825408 Outside_Air_Temperature_LS: 3 XXX + SG_ OtsAirTmpCrValGroup : 0|9@0+ (1,0) [0|0] "" XXX + SG_ OtsAirTmpCrValV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ OtsAirTmpCrVal : 15|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + SG_ OtsAirTmpGroup : 1|18@0+ (1,0) [0|0] "" XXX + SG_ OtsAirTmpV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ OtsAirTmp : 23|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + SG_ OtsAirTmpCrValMsk : 2|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151153664 Rear_Window_Defog_Status_LS: 1 XXX + SG_ RrWndDfgOn : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151170048 Trailer_Status_LS: 2 XXX + SG_ TrlrHtchSwAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrBrkLtFld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrFgLtFld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrRvsLtFld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrTlLtFld : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrFgLtPrs : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TrlrRtTrInLtFld : 6|1@0+ (1,0) [0|1] "" XXX + SG_ TrlLfTrInLtFld : 7|1@0+ (1,0) [0|1] "" XXX + SG_ LftSecTrnIndFld : 8|1@0+ (1,0) [0|1] "" XXX + SG_ RtSecTrnIndFld : 9|1@0+ (1,0) [0|1] "" XXX + SG_ DisRrPrmryLmps : 10|1@0+ (1,0) [0|1] "" XXX + SG_ RLftPrkLmpFld : 11|1@0+ (1,0) [0|1] "" XXX + SG_ RRPrkLmpFld : 12|1@0+ (1,0) [0|1] "" XXX + SG_ RrEndCrrStat : 13|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151841792 Wipe_Wash_Status_LS: 1 XXX + SG_ TurnWprIntIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RnSnsActIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RnSnsOffIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ WSWprAct : 3|1@0+ (1,0) [0|1] "" XXX + SG_ HtdFrntWSSt : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154995712 Air_Conditioning_Comp_Type_LS: 1 XXX + SG_ HVHtrOvrTmpIndOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ HVHtrFldIO : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154094592 Adjustable_Pedal_Motion_Inh_LS: 8 XXX + SG_ AdjPdlMotInhbtd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ IntDimSeldAnmTypStVal : 4|4@0+ (1,0) [0|15] "" XXX + SG_ IntDimSeldClrTypStVal : 12|5@0+ (1,0) [0|31] "" XXX + SG_ IntDimAnmTypAvl : 22|15@0+ (1,0) [0|0] "" XXX + SG_ IDATA_AnmTyp6Avl : 16|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp5Avl : 17|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp4Avl : 18|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp3Avl : 19|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp2Avl : 20|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp1Avl : 21|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_OffAvl : 22|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp14Avl : 24|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp13Avl : 25|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp12Avl : 26|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp11Avl : 27|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp10Avl : 28|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp9Avl : 29|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp8Avl : 30|1@0+ (1,0) [0|1] "" XXX + SG_ IDATA_AnmTyp7Avl : 31|1@0+ (1,0) [0|1] "" XXX + SG_ IntDimClrTypAvl : 38|31@0+ (1,0) [0|0] "" XXX + SG_ IDCTA_ClrTyp6Avl : 32|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp5Avl : 33|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp4Avl : 34|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp3Avl : 35|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp2Avl : 36|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp1Avl : 37|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_OffAvl : 38|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp14Avl : 40|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp13Avl : 41|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp12Avl : 42|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp11Avl : 43|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp10Avl : 44|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp9Avl : 45|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp8Avl : 46|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp7Avl : 47|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp22Avl : 48|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp21Avl : 49|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp20Avl : 50|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp19Avl : 51|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp18Avl : 52|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp17Avl : 53|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp16Avl : 54|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp15Avl : 55|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp30Avl : 56|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp29Avl : 57|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp28Avl : 58|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp27Avl : 59|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp26Avl : 60|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp25Avl : 61|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp24Avl : 62|1@0+ (1,0) [0|1] "" XXX + SG_ IDCTA_ClrTyp23Avl : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149711872 ACC_YawRate_Information_LS: 8 XXX + SG_ ACCDrvrSeltdSpd : 3|12@0+ (0.0625,0) [0|255.9375] "km / h" XXX + SG_ AdapCrsCntVDA : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ACCAct370 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ CrsCntlDrSelSpdAct : 7|1@0+ (1,0) [0|1] "" XXX + SG_ CrsSpdLmtrDrvSelSpd : 19|12@0+ (0.0625,0) [0|255.9375] "km / h" XXX + SG_ ACCHdwyStg : 22|3@0+ (1,0) [0|7] "" XXX + SG_ FwdClnAlrtPr : 23|1@0+ (1,0) [0|1] "" XXX + SG_ VehDynYawRateGroup : 36|13@0+ (1,0) [0|0] "" XXX + SG_ VehDynYawRate : 35|12@0- (0.0625,0) [-128|127.9375] "deg/sec" XXX + SG_ VehDynYawRateV : 36|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtrSpdWrngEnbld : 37|1@0+ (1,0) [0|1] "" XXX + SG_ SpdLmtrSpdWrngAct : 38|1@0+ (1,0) [0|1] "" XXX + SG_ FwdClnAlrtOffIO : 39|1@0+ (1,0) [0|1] "" XXX + SG_ FwdObjAlrtInd : 48|9@0+ (1,0) [0|0] "" XXX + SG_ FOAI_AlrtChmIhbRq : 48|1@0+ (1,0) [0|1] "" XXX + SG_ FOAI_AlrtWrnIndRq : 59|4@0+ (1,0) [0|15] "" XXX + SG_ FOAI_VehAhdIndRq : 63|4@0+ (1,0) [0|15] "" XXX + SG_ AutoMdSpdLmtStat : 50|2@0+ (1,0) [0|3] "" XXX + SG_ ACCAutoSetSpdStat : 52|2@0+ (1,0) [0|3] "" XXX + SG_ SetSpdLmtRchd : 54|2@0+ (1,0) [0|3] "" XXX + +BO_ 2153979904 BulbOutage_LS: 2 XXX + SG_ CHMSLFld : 0|1@0+ (1,0) [0|1] "" XXX + SG_ FLTrnIndLtFld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ FRTrnIndLtFld : 2|1@0+ (1,0) [0|1] "" XXX + SG_ LftBrkLtFld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ LftLwBmFld : 4|1@0+ (1,0) [0|1] "" XXX + SG_ LftPrkLtFld : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LicPltLtFld : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RLTrnIndLtFld : 7|1@0+ (1,0) [0|1] "" XXX + SG_ RRTrnIndLtFld : 8|1@0+ (1,0) [0|1] "" XXX + SG_ RtBrkLtFld : 9|1@0+ (1,0) [0|1] "" XXX + SG_ RtLwBmFld : 10|1@0+ (1,0) [0|1] "" XXX + SG_ RtPrkLtFld : 11|1@0+ (1,0) [0|1] "" XXX + SG_ RFgLtFld : 12|1@0+ (1,0) [0|1] "" XXX + SG_ RvsLtFld : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LftDytmRunLmpFld : 14|1@0+ (1,0) [0|1] "" XXX + SG_ RtDytmRunLmpFld : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150154240 Passive_Entry_Reply_LS: 8 XXX + SG_ PsvEntVehIdExt : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ PsvEntChlngRply : 39|32@0+ (1,0) [0|4294967295] "passwrd" XXX + +BO_ 2155003904 Side_Blind_Zone_Alert_Status: 2 XXX + SG_ SBZASysClnIndOn : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SBZASysOffIndOn : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SBZASysSrvIndOn : 2|1@0+ (1,0) [0|1] "" XXX + SG_ SBZATmpUnvIndOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ LftLnChgThrt : 4|1@0+ (1,0) [0|1] "" XXX + SG_ LfLnChngThrtAprchSpd : 15|8@0- (1,0) [-128|127] "km/h" XXX + +BO_ 2150817792 Airbag_Impact_Data_5: 3 XXX + SG_ ImpMaxLateralDeltaVel : 7|8@0- (1,0) [-128|127] "" XXX + SG_ ImpMaxLongDeltaVel : 15|8@0- (1,0) [-128|127] "" XXX + SG_ ImpTimeToMaxDeltaVel : 23|8@0+ (10,0) [0|2550] "ms" XXX + +BO_ 2150227968 Phone_Speech_Rec_Status_LS: 1 XXX + SG_ PhnSpRcgnApSt : 1|2@0+ (1,0) [0|3] "" XXX + +BO_ 2162982912 VIN_Digits_10_to_17: 8 XXX + SG_ VehIdNmDig10_17 : 7|64@0+ (1,0) [0|1] "" XXX + +BO_ 2162966528 VIN_Digits_2_to_9: 8 XXX + SG_ VehIdNmDig2_9 : 7|64@0+ (1,0) [0|1] "" XXX + +BO_ 2151497728 Tire_Pressure_Sensors_LS: 6 XXX + SG_ TireLFPrsGroup : 0|17@0+ (1,0) [0|0] "" XXX + SG_ TireLFPrsV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TireLFPrs : 23|8@0+ (4,0) [0|1020] "kPaG" XXX + SG_ TireRFPrsGroup : 1|34@0+ (1,0) [0|0] "" XXX + SG_ TireRFPrsV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TireRFPrs : 39|8@0+ (4,0) [0|1020] "kPaG" XXX + SG_ TireLFPrsStat : 4|3@0+ (1,0) [0|7] "" XXX + SG_ TireRFPrsStat : 7|3@0+ (1,0) [0|7] "" XXX + SG_ TireLRPrsGroup : 8|17@0+ (1,0) [0|0] "" XXX + SG_ TireLRPrsV : 8|1@0+ (1,0) [0|1] "" XXX + SG_ TireLRPrs : 31|8@0+ (4,0) [0|1020] "kPaG" XXX + SG_ TireRRPrsGroup : 9|34@0+ (1,0) [0|0] "" XXX + SG_ TireRRPrsV : 9|1@0+ (1,0) [0|1] "" XXX + SG_ TireRRPrs : 47|8@0+ (4,0) [0|1020] "kPaG" XXX + SG_ TireLRPrsStat : 12|3@0+ (1,0) [0|7] "" XXX + SG_ TireRRPrsStat : 15|3@0+ (1,0) [0|7] "" XXX + +BO_ 2151219200 Remote_Start_Status: 1 XXX + SG_ RemStrtSt : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RmVehStrRq : 1|1@0+ (1,0) [0|1] "" XXX + +BO_ 2153775104 DTC_Triggered: 7 XXX + SG_ DTCInfo : 7|56@0+ (1,0) [0|0] "" XXX + SG_ DTCI_DTCTriggered : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused1 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused2 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused3 : 3|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused4 : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused5 : 5|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused6 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ DTCIUnused7 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_DTCSource : 15|8@0+ (1,0) [0|255] "" XXX + SG_ DTCI_DTCNumber : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ DTCI_DTCFailType : 39|8@0+ (1,0) [0|255] "" XXX + SG_ DTCI_CodeSupported : 40|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_CurrentStatus : 41|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_TstNPsdCdClrdSt : 42|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_TstFldCdClrdStat : 43|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_HistStat : 44|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_TstNPsdPwrUpSt : 45|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_TstFldPwrUpSt : 46|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_WrnIndRqdSt : 47|1@0+ (1,0) [0|1] "" XXX + SG_ DTCI_DTCFaultType : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 2151235584 Vehicle_Theft_Notification_Stat: 5 XXX + SG_ DrIdDevLrnd : 0|1@0+ (1,0) [0|1] "" XXX + SG_ VehSecSysFldIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ VTDTmprDetected : 2|1@0+ (1,0) [0|1] "" XXX + SG_ EhnSrvEngImmStat : 3|1@0+ (1,0) [0|1] "" XXX + SG_ IllDrIdDevDtctd : 4|1@0+ (1,0) [0|1] "" XXX + SG_ AlcKyIIncmIndOn : 5|1@0+ (1,0) [0|1] "" XXX + SG_ VehSecStrgColLckPwdGroup : 6|31@0+ (1,0) [0|0] "" XXX + SG_ VehSecStrgColLckPwdV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ VehSecStrgColLckPwd : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ VehSecAuthnSesComp : 7|1@0+ (1,0) [0|1] "" XXX + SG_ VhSecNImmoIndRq : 9|2@0+ (1,0) [0|3] "" XXX + SG_ StrgColLckCmd : 11|2@0+ (1,0) [0|3] "" XXX + SG_ NmofPrgKFbExtd : 15|4@0+ (1,0) [0|15] "" XXX + SG_ VehStatStAtv : 32|1@0+ (1,0) [0|1] "" XXX + SG_ EhnSrvImmbComRst : 33|1@0+ (1,0) [0|1] "" XXX + SG_ ClmSysBkupFlrIndOn : 34|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150809600 Airbag_Impact_Data_4: 8 XXX + SG_ ImpDltVlcSamp12 : 7|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS12_Axis1 : 7|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS12_Axis2 : 15|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp13 : 23|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS13_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS13_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp14 : 39|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS14_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS14_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp15 : 55|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS15_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS15_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX + +BO_ 2150793216 Airbag_Impact_Data_2: 8 XXX + SG_ ImpDltVlcSamp4 : 7|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS4_Axis1 : 7|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS4_Axis2 : 15|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp5 : 23|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS5_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS5_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp6 : 39|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS6_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS6_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp7 : 55|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS7_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS7_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX + +BO_ 2150801408 Airbag_Impact_Data_3: 8 XXX + SG_ ImpDltVlcSamp8 : 7|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS8_Axis1 : 7|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS8_Axis2 : 15|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp9 : 23|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS9_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS9_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp10 : 39|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS10_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS10_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp11 : 55|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS11_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS11_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX + +BO_ 2150785024 Airbag_Impact_Data_1: 8 XXX + SG_ ImpDltVlcScal : 7|8@0+ (0.00245,0.706) [0.706|1.33075] "kph/cnt" XXX + SG_ AirbgAccelOrien : 10|3@0+ (45,0) [0|315] "deg" XXX + SG_ ImpDltVlcSamp1 : 23|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS1_Axis1 : 23|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS1_Axis2 : 31|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp2 : 39|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS2_Axis1 : 39|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS2_Axis2 : 47|8@0- (1,0) [-128|127] "counts" XXX + SG_ ImpDltVlcSamp3 : 55|16@0+ (1,0) [0|0] "" XXX + SG_ IDVS3_Axis1 : 55|8@0- (1,0) [-128|127] "counts" XXX + SG_ IDVS3_Axis2 : 63|8@0- (1,0) [-128|127] "counts" XXX + +BO_ 2151202816 Rear_Window_Defog_Inhibit: 5 XXX + SG_ RrWndDfgInhRq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RrWndDfgSwAtv : 1|1@0+ (1,0) [0|1] "" XXX + SG_ ILSSCommErr : 2|1@0+ (1,0) [0|1] "" XXX + SG_ IPSnsrRwSolrIntFltd : 3|1@0+ (1,0) [0|1] "" XXX + SG_ IPSnsrSolrAnglFltd : 4|1@0+ (1,0) [0|1] "" XXX + SG_ IPSnsrTpCvrTempFltd : 5|1@0+ (1,0) [0|1] "" XXX + SG_ AuxHtrAlwd : 6|1@0+ (1,0) [0|1] "" XXX + SG_ IPSnsrRwSolrInt : 15|8@0+ (3,0) [0|765] "W/m2" XXX + SG_ IPSnsrSolrAzmthAngl : 23|8@0+ (2,-180) [-180|330] "deg" XXX + SG_ IPSnsrSolrElvtnAngl : 31|8@0+ (1,0) [0|255] "deg" XXX + SG_ IPSnsrTpCvrTemp : 39|8@0+ (0.5,-40) [-40|87.5] "deg C" XXX + +BO_ 2150825984 Airbag_Indications: 6 XXX + SG_ FsnDrvStbltIC : 7|8@0+ (1,0) [0|0] "" XXX + SG_ FDSIC_IndPer : 3|4@0+ (1,0) [0|15] "" XXX + SG_ FDSIC_IndDC : 6|3@0+ (12.5,12.5) [12.5|100] "%" XXX + SG_ FDSIC_IO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ FsnPsngStbltIC : 15|8@0+ (1,0) [0|0] "" XXX + SG_ FPSIC_IndPer : 11|4@0+ (1,0) [0|15] "" XXX + SG_ FPSIC_IndDtCyc : 14|3@0+ (12.5,12.5) [12.5|100] "%" XXX + SG_ FPSIC_IO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ AirbgIC : 23|8@0+ (1,0) [0|0] "" XXX + SG_ AirbgICIndPer : 19|4@0+ (1,0) [0|15] "" XXX + SG_ AirbgICDutCyc : 22|3@0+ (12.5,12.5) [12.5|100] "%" XXX + SG_ AirbgICIO : 23|1@0+ (1,0) [0|1] "" XXX + SG_ FstnSndRwLtPsStbtInR : 25|2@0+ (1,0) [0|3] "" XXX + SG_ FstnSndRwCtPsStbtInR : 27|2@0+ (1,0) [0|3] "" XXX + SG_ FstnSndRwRtPsStbtInR : 29|2@0+ (1,0) [0|3] "" XXX + SG_ FsnDrStbAuxIR : 31|2@0+ (1,0) [0|3] "" XXX + SG_ FsnPsStbAuxIR : 34|3@0+ (1,0) [0|7] "" XXX + SG_ AirbgFldIO : 35|1@0+ (1,0) [0|1] "" XXX + SG_ SndRwStbltRdIndMd : 37|2@0+ (1,0) [0|3] "" XXX + SG_ FstnThrdRwCtPsStbtInR : 39|2@0+ (1,0) [0|3] "" XXX + SG_ FstnThrdRwRtPsStbtInR : 41|2@0+ (1,0) [0|3] "" XXX + SG_ FstnThrdRwLtPsStbtInR : 43|2@0+ (1,0) [0|3] "" XXX + SG_ SrvIntdPdstProtSysIO : 44|1@0+ (1,0) [0|1] "" XXX + SG_ PdstIntdProtSysDsbld : 45|1@0+ (1,0) [0|1] "" XXX + SG_ PdstIntdProtSysDplyd : 46|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151759872 Door_Lock_Command: 4 XXX + SG_ CntrlLckRqwExtActFun : 9|18@0+ (1,0) [0|0] "" XXX + SG_ CLRAF_Unl_Lk : 9|3@0+ (1,0) [0|7] "" XXX + SG_ CLRAF_FuelD : 16|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_RrCls : 17|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_Hd : 18|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_RLD : 19|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_RRD : 20|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_PD : 21|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_DD : 22|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_ActFunc : 28|5@0+ (1,0) [0|31] "" XXX + SG_ CLRAF_UnandRsv3 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_UnandRsv2 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ CLRAF_UnandRsv1 : 31|1@0+ (1,0) [0|1] "" XXX + SG_ RrClsRelRq : 10|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149974016 Content_Theft_Sensor_Status: 3 XXX + SG_ SrvAlrmSysIO : 0|1@0+ (1,0) [0|1] "" XXX + SG_ IntrSnsDisbld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgDrvDr : 3|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgPsngDr : 4|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgRrRtDr : 5|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgRrLftDr : 6|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrigTonn : 7|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgTrnk : 8|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgTltSns : 9|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgIntMvmntSns : 10|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrggrdBattRcnctd : 11|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgGlsBrkSns : 12|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgNonOffPM : 13|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrigMidClsr : 14|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmTrgdIO : 15|1@0+ (1,0) [0|1] "" XXX + SG_ AlrmStat : 18|3@0+ (1,0) [0|7] "" XXX + SG_ AlrmTrgHd : 21|1@0+ (1,0) [0|1] "" XXX + +BO_ 2151907328 Steering_Wheel_Control_Switches: 1 XXX + SG_ StrgWhlUnit1SwStat : 3|4@0+ (1,0) [0|15] "" XXX + SG_ StrgWhlUnit2SwStat : 7|4@0+ (1,0) [0|15] "" XXX + +BO_ 2150219776 Voice_Recognition_Status: 1 XXX + SG_ PhnSpRcgnRq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ VcRecVcFdbckSt : 3|2@0+ (1,0) [0|3] "" XXX + +BO_ 2152685568 Radiomarks_Response: 8 XXX + SG_ RadBrdcstSrc : 3|4@0+ (1,0) [0|15] "" XXX + SG_ RadConInfReqSrc : 7|4@0+ (1,0) [0|15] "" XXX + SG_ RadConInfCmd : 11|4@0+ (1,0) [0|15] "" XXX + SG_ RadConInfID : 31|40@0+ (1,0) [0|1099511627775] "" XXX + +BO_ 2151874560 Vehicle_Theft_Notify_Reset_Req: 8 XXX + SG_ EhnSrvEngImmbCom : 0|57@0+ (1,0) [0|0] "" XXX + SG_ ESEIC_EngImmbRq : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ESEIC_EngImRqPsw : 15|56@0+ (1,0) [0|1] "" XXX + SG_ RstVTDTmprDtctd : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RstIllDrIdDevDtctd : 2|1@0+ (1,0) [0|1] "" XXX + SG_ RstDrIdDevLrnd : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150268928 GPS_Date_and_Time_LS: 6 XXX + SG_ CldrYr_154 : 7|8@0+ (1,2000) [2000|2255] "year" XXX + SG_ CldrMth_154 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ CldrDay_154 : 20|5@0+ (1,0) [0|31] "days" XXX + SG_ HrsGroup : 29|6@0+ (1,0) [0|0] "" XXX + SG_ Hrs : 28|5@0+ (1,0) [0|31] "h" XXX + SG_ HrsV : 29|1@0+ (1,0) [0|1] "" XXX + SG_ MinsGroup : 38|7@0+ (1,0) [0|0] "" XXX + SG_ Mins : 37|6@0+ (1,0) [0|63] "min" XXX + SG_ MinsV : 38|1@0+ (1,0) [0|1] "" XXX + SG_ SecGroup : 46|7@0+ (1,0) [0|0] "" XXX + SG_ Sec : 45|6@0+ (1,0) [0|63] "s" XXX + SG_ SecV : 46|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150137856 RFA_Status_LS: 3 XXX + SG_ FobPrevLrndIndOn : 0|1@0+ (1,0) [0|1] "" XXX + SG_ Ky_IdDevNotPrIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ FbProgCustActRqd : 2|1@0+ (1,0) [0|1] "" XXX + SG_ KeyInWrnIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ VehSecAtoLrnAtv : 4|1@0+ (1,0) [0|1] "" XXX + SG_ Ky_IdDevPrgmAuthReq : 5|1@0+ (1,0) [0|1] "" XXX + SG_ LMTTCPrsnOffStat : 6|1@0+ (1,0) [0|1] "" XXX + SG_ VehSecAtoLrnDlyTmr : 12|5@0+ (1,0) [0|31] "min" XXX + SG_ FldTpMotReq : 15|3@0+ (1,0) [0|7] "" XXX + SG_ RemCtrlFobNumForProgER : 19|4@0+ (1,0) [0|15] "" XXX + +BO_ 2151677952 Chime_Command: 5 XXX + SG_ SndChrs : 3|28@0+ (1,0) [0|0] "" XXX + SG_ SC_SndTne : 3|4@0+ (1,0) [0|15] "" XXX + SG_ SC_SndCdnPrd : 15|8@0+ (10,0) [0|2550] "ms" XXX + SG_ SC_NmofRp : 23|8@0+ (1,0) [0|255] "reps" XXX + SG_ SC_SndDutCyc : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ SndLoc : 7|4@0+ (1,0) [0|0] "" XXX + SG_ SndLocRtRr : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SndLocLftRr : 5|1@0+ (1,0) [0|1] "" XXX + SG_ SndLocPasFr : 6|1@0+ (1,0) [0|1] "" XXX + SG_ SndLocDrFr : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SndPriority : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 2150776832 Airbag_Status: 6 XXX + SG_ ShfUlkBrToShftIndCtrl : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ShftLkdBuStbltIndCtrl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SbItlkTrnsShftLvLkRd : 2|1@0+ (1,0) [0|1] "" XXX + SG_ MmryRclImpctDisRq : 3|1@0+ (1,0) [0|1] "" XXX + SG_ EvntEnbld : 4|1@0+ (1,0) [0|1] "" XXX + SG_ SftyMuteRd : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HybVehHiVltInvDisRqd : 6|1@0+ (1,0) [0|1] "" XXX + SG_ HybImpSnsDsbld : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SIREvntSychCntr : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ FrPsngrStOccSnsngPriDat : 39|16@0+ (1,0) [0|39321] "" XXX + +BO_ 2150760448 Airbag_Impact_Data: 8 XXX + SG_ SIRDpl : 1|1@0+ (1,0) [0|1] "" XXX + SG_ NotPsSeatStat : 5|2@0+ (1,0) [0|3] "" XXX + SG_ NotDrvSeatStat : 7|2@0+ (1,0) [0|3] "" XXX + SG_ NotSecRowRtSeaOccStat : 9|2@0+ (1,0) [0|3] "" XXX + SG_ NotSndRwMdlSeatStat : 11|2@0+ (1,0) [0|3] "" XXX + SG_ NotSndRwRtSeatStat : 13|2@0+ (1,0) [0|3] "" XXX + SG_ NotSndRwLtSeatStat : 15|2@0+ (1,0) [0|3] "" XXX + SG_ NotEventStat : 17|2@0+ (1,0) [0|3] "" XXX + SG_ NotSecRowLeSeaOccStat : 25|2@0+ (1,0) [0|3] "" XXX + SG_ NotSecRowCtSeaOccStat : 27|2@0+ (1,0) [0|3] "" XXX + SG_ NotiFrntPasSeatOccSta : 34|3@0+ (1,0) [0|7] "" XXX + SG_ NoEvDeLoSt : 46|7@0+ (1,0) [0|0] "" XXX + SG_ NEDLSSdCrtnArbgDpld : 40|1@0+ (1,0) [0|1] "" XXX + SG_ NEDLSRtSdArbgDld : 41|1@0+ (1,0) [0|1] "" XXX + SG_ NEDLSLtSdArbgDld : 42|1@0+ (1,0) [0|1] "" XXX + SG_ NEDLSPaFrSt2De : 43|1@0+ (1,0) [0|1] "" XXX + SG_ NEDLSPaFrSt1De : 44|1@0+ (1,0) [0|1] "" XXX + SG_ NEDLSDrFrSt2De : 45|1@0+ (1,0) [0|1] "" XXX + SG_ NEDLSDrFrSt1De : 46|1@0+ (1,0) [0|1] "" XXX + SG_ NoEvSevSt : 54|7@0+ (1,0) [0|0] "" XXX + SG_ NESSRoSevSt : 48|1@0+ (1,0) [0|1] "" XXX + SG_ NESSRiSiSevSt : 49|1@0+ (1,0) [0|1] "" XXX + SG_ NESSReImpSevSt : 50|1@0+ (1,0) [0|1] "" XXX + SG_ NESSLeSiSevSt : 51|1@0+ (1,0) [0|1] "" XXX + SG_ NESSFrImpSt2SevSt : 52|1@0+ (1,0) [0|1] "" XXX + SG_ NESSFrImpSt1SevSt : 53|1@0+ (1,0) [0|1] "" XXX + SG_ NESSFrImpPreSevSt : 54|1@0+ (1,0) [0|1] "" XXX + SG_ NotiEventCount : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 2155872256 Fuel_Information: 6 XXX + SG_ FlLvlPctGroup : 0|9@0+ (1,0) [0|0] "" XXX + SG_ FlLvlPctV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ FlLvlPct : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ FlInjRlCtRstOcc : 1|1@0+ (1,0) [0|1] "" XXX + SG_ FuelFltChgNwIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DrvStyPerfMdCsCrStVal : 5|3@0+ (1,0) [0|7] "" XXX + SG_ DrvStyPerfMdCsStAvl : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RdWhlAngGroup : 23|8@0+ (1,0) [0|0] "" XXX + SG_ RdWhlAng : 22|7@0+ (0.703125,-45) [-45|44.296875] "deg" XXX + SG_ RdWhlAngV : 23|1@0+ (1,0) [0|1] "" XXX + SG_ VehPitchAngleGroup : 31|8@0+ (1,0) [0|0] "" XXX + SG_ VehPitchAngle : 30|7@0+ (0.703125,-45) [-45|44.296875] "deg" XXX + SG_ VehPitchAngleV : 31|1@0+ (1,0) [0|1] "" XXX + SG_ FlInjRlCt : 39|16@0+ (3.05176E-005,0) [0|1.999970916] "liters" XXX + +BO_ 2156175360 Display_Measurement_System_LS: 1 XXX + SG_ DispMeasSysExt : 1|2@0+ (1,0) [0|3] "" XXX + SG_ DispMeasSys : 2|1@0+ (1,0) [0|1] "" XXX + SG_ NtVsnSysEnbld : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149859328 System_Power_Mode_Backup_LS: 1 XXX + SG_ SysBkupPwrMdEn : 2|1@0+ (1,0) [0|1] "" XXX + SG_ SysBkUpPwrMdGroup : 3|4@0+ (1,0) [0|0] "" XXX + SG_ SysBkUpPwrMd : 1|2@0+ (1,0) [0|3] "" XXX + SG_ SysBkUpPwrMdV : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2158854144 ODIAction_IPC_LS: 8 XXX + SG_ ODIActn_IPC : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIAI_DaTy : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ODIAI_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAI_ActnID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAI_DspMID : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAI_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2158837760 ODIAction_AuxIP_LS: 8 XXX + SG_ ODIActn_AxIP : 5|62@0+ (1,0) [0|0] "" XXX + SG_ ODIAA_DaTy : 5|6@0+ (1,0) [0|63] "" XXX + SG_ ODIAA_FUCID : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAA_ActnID : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAA_DspMID : 31|8@0+ (1,0) [0|255] "" XXX + SG_ ODIAA_ActnVal : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2159091712 ODI_IPC_2_TEL_LS: 8 XXX + SG_ ODI_IPC2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2154561536 Vehicle_Odo_LS: 5 XXX + SG_ VehOdoGroup : 7|40@0+ (1,0) [0|0] "" XXX + SG_ VehOdo : 7|32@0+ (0.015625,0) [0|67108863.984375] "km" XXX + SG_ VehOdoV : 32|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149908480 Brake_Pedal_Status_LS: 2 XXX + SG_ BrkPedInitTrvlAchvdStat : 1|2@0+ (1,0) [0|0] "" XXX + SG_ BrkPedTrvlAchvdV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ BrkPedTrvlAchvd : 1|1@0+ (1,0) [0|1] "" XXX + SG_ BrkPdlModTrvlGroup : 3|2@0+ (1,0) [0|0] "" XXX + SG_ BrkPdlModTrvl : 2|1@0+ (1,0) [0|1] "" XXX + SG_ BrkPdlModTrvlV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ BrkPdlPos : 15|8@0+ (0.392157,0) [0|100.000035] "% full" XXX + +BO_ 2151268352 Column_Lock_Status: 1 XXX + SG_ ClmnLckTT : 1|2@0+ (1,0) [0|3] "" XXX + +BO_ 2150604800 Right_Rear_Door_Status: 1 XXX + SG_ RRDoorAjarSwAct : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150588416 Passenger_Door_Status_LS: 1 XXX + SG_ PDAjrSwAtv : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150596608 Left_Rear_Door_Status: 1 XXX + SG_ RLDoorAjarSwAct : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 2155036672 Climate_Control_General_Status: 6 XXX + SG_ ACCompNormLdGroup : 0|9@0+ (1,0) [0|0] "" XXX + SG_ ACCompNormLdV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ACCompNormLd : 15|8@0+ (0.1,0) [0|25.5] "l/min" XXX + SG_ ACCmEngRunReq : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACCmpsrFldOn : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ACCompModReq : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ClmtCtrlTrgtTemp : 17|10@0+ (0.1,-10) [-10|92.3] "deg C" XXX + +BO_ 2150424576 Engine_Information_3_LS: 8 XXX + SG_ TrnsEngdStateGroup : 2|3@0+ (1,0) [0|0] "" XXX + SG_ TrnsEngdState : 1|2@0+ (1,0) [0|3] "" XXX + SG_ TrnsEngdStateV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACRfHiSdFldPrsGroup : 3|20@0+ (1,0) [0|0] "" XXX + SG_ ACRfHiSdFldPrsV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ACRfHiSdFldPrs : 23|8@0+ (14,0) [0|3570] "kPaG" XXX + SG_ ACCompCmnd : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RrAxlELSDCplLwResGroup : 5|46@0+ (1,0) [0|0] "" XXX + SG_ RrAxlELSDCplLwResV : 5|1@0+ (1,0) [0|1] "" XXX + SG_ RrAxlELSDCplLwRes : 47|8@0+ (10,0) [0|2550] "Nm" XXX + SG_ EngAirIntBstPrGroup : 6|39@0+ (1,0) [0|0] "" XXX + SG_ EngAirIntBstPrV : 6|1@0+ (1,0) [0|1] "" XXX + SG_ EngAirIntBstPr : 39|8@0- (1,0) [-128|127] "kPaG" XXX + SG_ ExtHlStrAssCsStAvl : 7|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsRngInhbtStat : 10|3@0+ (1,0) [0|7] "" XXX + SG_ DrvtShftCntrlTrgtGear : 14|4@0+ (1,0) [0|15] "" XXX + SG_ ACCmpNrmLdGrdAld : 31|8@0+ (0.1,0) [0|25.5] "dm3/m/s" XXX + SG_ EngTrqDrRqdExtRngGroup : 52|13@0+ (1,0) [0|0] "" XXX + SG_ EngTrqDrRqdExtRng : 51|12@0+ (0.5,-848) [-848|1199.5] "Nm" XXX + SG_ EngTrqDrRqdExtRngV : 52|1@0+ (1,0) [0|1] "" XXX + SG_ ExtHlStrAssCsCrStVal : 55|3@0+ (1,0) [0|7] "" XXX + +BO_ 2150416384 Engine_Information_2_LS: 8 XXX + SG_ EngBstPrsIndGroup : 0|33@0+ (1,0) [0|0] "" XXX + SG_ EngBstPrsIndV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ EngBstPrsInd : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ VaccBoostFailure : 2|1@0+ (1,0) [0|1] "" XXX + SG_ GenFld : 3|1@0+ (1,0) [0|1] "" XXX + SG_ EngSpdLmtnMdAct : 4|1@0+ (1,0) [0|1] "" XXX + SG_ PTWrmgWtToShftIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ EngNEmsnsRelMalfAct : 6|1@0+ (1,0) [0|1] "" XXX + SG_ EngCstFlCutAct : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EngRunAtv : 8|1@0+ (1,0) [0|1] "" XXX + SG_ EngIdlAtv : 11|1@0+ (1,0) [0|1] "" XXX + SG_ VehTopSpdLmtMdAct : 13|1@0+ (1,0) [0|1] "" XXX + SG_ EngCylDeactMd : 15|2@0+ (1,0) [0|3] "" XXX + SG_ TransEstGearGroup : 20|5@0+ (1,0) [0|0] "" XXX + SG_ TransEstGear : 19|4@0+ (1,0) [0|15] "" XXX + SG_ TransEstGearV : 20|1@0+ (1,0) [0|1] "" XXX + SG_ EngTrqActExtRngGroup : 21|46@0+ (1,0) [0|0] "" XXX + SG_ EngTrqActExtRngV : 21|1@0+ (1,0) [0|1] "" XXX + SG_ EngTrqActExtRng : 51|12@0+ (0.5,-848) [-848|1199.5] "Nm" XXX + SG_ EngVDA : 22|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsVDA : 23|1@0+ (1,0) [0|1] "" XXX + SG_ EngCoolFanSpd : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ VehTopSpdLmtArbVal : 47|8@0+ (2,0) [0|510] "km / h" XXX + SG_ EngSpdStat : 53|2@0+ (1,0) [0|3] "" XXX + SG_ RmVhStrtEngRng : 54|1@0+ (1,0) [0|1] "" XXX + SG_ TrnCrpMdAtv : 55|1@0+ (1,0) [0|1] "" XXX + +BO_ 2150408192 Engine_Information_1_LS: 8 XXX + SG_ TrnsSftMdStat : 2|3@0+ (1,0) [0|7] "" XXX + SG_ ThrPosGroup : 3|36@0+ (1,0) [0|0] "" XXX + SG_ ThrPosV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ThrPos : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ AccActPosGroup : 4|45@0+ (1,0) [0|0] "" XXX + SG_ AccActPosV : 4|1@0+ (1,0) [0|1] "" XXX + SG_ AccActPos : 47|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ ElcRngSelDrvAct : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TmpDrvrShftCtlAct : 6|1@0+ (1,0) [0|1] "" XXX + SG_ AccPdlOvrrdAtv : 7|1@0+ (1,0) [0|1] "" XXX + SG_ TrnShftPtrnActStat : 10|3@0+ (1,0) [0|7] "" XXX + SG_ TransTUDMdStat : 12|2@0+ (1,0) [0|3] "" XXX + SG_ Eng12vStrtrMtrCmmdOn : 13|1@0+ (1,0) [0|1] "" XXX + SG_ EngRunng : 14|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsShftLvrPosGroup : 15|48@0+ (1,0) [0|0] "" XXX + SG_ TrnsShftLvrPosV : 15|1@0+ (1,0) [0|1] "" XXX + SG_ TrnsShftLvrPos : 51|4@0+ (1,0) [0|15] "" XXX + SG_ EngSpd : 23|16@0+ (0.25,0) [0|16383.75] "rpm" XXX + SG_ AutoTransComndGear : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CrsCntEnbld : 56|1@0+ (1,0) [0|1] "" XXX + SG_ CltStartSwAtvGroup : 58|2@0+ (1,0) [0|0] "" XXX + SG_ CltStartSwAtv : 57|1@0+ (1,0) [0|1] "" XXX + SG_ CltStartSwAtvV : 58|1@0+ (1,0) [0|1] "" XXX + SG_ TopTrvlCltchSwActGroup : 60|2@0+ (1,0) [0|0] "" XXX + SG_ TopTrvlCltchSwAct : 59|1@0+ (1,0) [0|1] "" XXX + SG_ TopTrvlCltchSwActV : 60|1@0+ (1,0) [0|1] "" XXX + SG_ AdptPsngrSeatStng : 63|3@0+ (1,0) [0|7] "" XXX + +BO_ 2155954176 Climate_Control_Basic_Status_LS: 4 XXX + SG_ ACHtIdleBstLevReq : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ClimCtrlAftBlowModActv : 2|1@0+ (1,0) [0|1] "" XXX + SG_ AirCndActIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ ClmCntlExtDefActIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ClntCircPmpRq : 7|1@0+ (1,0) [0|1] "" XXX + SG_ ClmCntFrBlwFnSp : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ AirCndCmptLdEst : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ ClmCntRrBlwFnSp : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2153971712 Driver_Door_Status: 1 XXX + SG_ LftglsAjrSwAct : 1|1@0+ (1,0) [0|1] "" XXX + SG_ LftglsRelSwAct : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DDAjrSwAtvGroup : 7|8@0+ (1,0) [0|0] "" XXX + SG_ DDAjrSwAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DDAjrSwAtvM : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149875712 Battery_Voltage: 7 XXX + SG_ BatVltGroup : 0|17@0+ (1,0) [0|0] "" XXX + SG_ BatVltV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ BatVlt : 23|8@0+ (0.1,3) [3|28.5] "volts" XXX + SG_ BatSaverIO : 1|1@0+ (1,0) [0|1] "" XXX + SG_ SrvBattChrgSysIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ BatSOCGroup : 3|28@0+ (1,0) [0|0] "" XXX + SG_ BatSOCV : 3|1@0+ (1,0) [0|1] "" XXX + SG_ BatSOC : 31|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ BattStOfChrgCrtyLow : 4|1@0+ (1,0) [0|1] "" XXX + SG_ IntlgntBattSnsFldIO : 5|1@0+ (1,0) [0|1] "" XXX + SG_ BattStOfChrgLowIO : 6|1@0+ (1,0) [0|1] "" XXX + SG_ DCCnvStblznErrIO : 7|1@0+ (1,0) [0|1] "" XXX + SG_ EnrgMgtLdShdRq : 11|4@0+ (1,0) [0|15] "" XXX + SG_ BattVltIRq : 13|2@0+ (1,0) [0|3] "" XXX + SG_ PwrMdOffBattSOC : 39|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ BattCrntFltrd : 47|8@0- (0.5,0) [-64|63.5] "A" XXX + SG_ BatSvrMdSevLvl : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 2151186432 Auto_High_Beam_Status: 1 XXX + SG_ AutoBmSlctStat : 1|2@0+ (1,0) [0|3] "" XXX + SG_ CtLghtDet : 2|1@0+ (1,0) [0|1] "" XXX + SG_ AutoHgBmCtrlInOn : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2149629952 Lighting_Status_LS: 5 XXX + SG_ OtsdAmbtLtLvlStatGroup : 0|23@0+ (1,0) [0|0] "" XXX + SG_ OtsdAmbtLtLvlStatV : 0|1@0+ (1,0) [0|1] "" XXX + SG_ OtsdAmbtLtLvlStat : 27|2@0+ (1,0) [0|3] "" XXX + SG_ DRLAct : 1|1@0+ (1,0) [0|1] "" XXX + SG_ HazSwAtv : 2|1@0+ (1,0) [0|1] "" XXX + SG_ PrkLtLeftIO : 3|1@0+ (1,0) [0|1] "" XXX + SG_ PrkLtRightIO : 4|1@0+ (1,0) [0|1] "" XXX + SG_ TrnSwAct : 6|2@0+ (1,0) [0|3] "" XXX + SG_ FrFogLmpsAct : 7|1@0+ (1,0) [0|1] "" XXX + SG_ PrkLtLeftOn : 8|1@0+ (1,0) [0|1] "" XXX + SG_ FrFgLtIO : 9|1@0+ (1,0) [0|1] "" XXX + SG_ AutoLtsInactIO : 10|1@0+ (1,0) [0|1] "" XXX + SG_ AutoLtsActIO : 11|1@0+ (1,0) [0|1] "" XXX + SG_ RrFgLtIO : 12|1@0+ (1,0) [0|1] "" XXX + SG_ HiBmIO : 13|1@0+ (1,0) [0|1] "" XXX + SG_ PrkLtIO : 14|1@0+ (1,0) [0|1] "" XXX + SG_ BrkLtsAtv : 15|1@0+ (1,0) [0|1] "" XXX + SG_ FlToPsSwAtv : 16|1@0+ (1,0) [0|1] "" XXX + SG_ RevLmpAtv : 17|1@0+ (1,0) [0|1] "N/A" XXX + SG_ PrkngLtsAct : 18|1@0+ (1,0) [0|1] "" XXX + SG_ RrFogLmpsAct : 19|1@0+ (1,0) [0|1] "" XXX + SG_ HiBmReqd : 20|1@0+ (1,0) [0|1] "" XXX + SG_ AutoBmSlctAllwd : 21|1@0+ (1,0) [0|1] "" XXX + SG_ PrkLtRightOn : 22|1@0+ (1,0) [0|1] "" XXX + SG_ SrvlnceMdAct : 23|1@0+ (1,0) [0|1] "" XXX + SG_ RtTrnLmpAtv : 25|2@0+ (1,0) [0|3] "" XXX + SG_ LftTrnLmpAtv : 29|2@0+ (1,0) [0|3] "" XXX + SG_ MainLghtSw : 31|2@0+ (1,0) [0|3] "N/A" XXX + SG_ HdlmpBmSelectStat : 33|2@0+ (1,0) [0|3] "" XXX + +BO_ 2149646336 Vehicle_Speed_Information: 8 XXX + SG_ VehSpdAvgDrvnGroup : 7|16@0+ (1,0) [0|0] "" XXX + SG_ VehSpdAvgDrvn : 6|15@0+ (0.015625,0) [0|511.984375] "km / h" XXX + SG_ VehSpdAvgDrvnV : 7|1@0+ (1,0) [0|1] "" XXX + SG_ DstRolCntAvgDrnRstOc : 21|1@0+ (1,0) [0|1] "" XXX + SG_ DistRollCntAvgDrvnGroup : 22|15@0+ (1,0) [0|0] "" XXX + SG_ DistRollCntAvgDrvn : 20|13@0+ (0.125,0) [0|1023.875] "m" XXX + SG_ DistRollCntAvgDrvnV : 22|1@0+ (1,0) [0|1] "" XXX + SG_ VehSpdAvgDrvnSrc : 23|1@0+ (1,0) [0|1] "" XXX + SG_ VehSpdAvgNDrvnGroup : 38|17@0+ (1,0) [0|0] "" XXX + SG_ VehSpdAvgNDrvn : 38|15@0+ (0.015625,0) [0|511.984375] "km / h" XXX + SG_ VehSpdAvgNDrvnV : 54|1@0+ (1,0) [0|1] "" XXX + SG_ DstRolCntAvgNonDrvnGroup : 39|32@0+ (1,0) [0|0] "" XXX + SG_ DstRolCntAvgNonDrvnV : 39|1@0+ (1,0) [0|1] "" XXX + SG_ DstRolCntAvgNonDrvn : 52|13@0+ (0.125,0) [0|1023.875] "m" XXX + SG_ DstRolCntAvNDrRstOc : 53|1@0+ (1,0) [0|1] "" XXX + SG_ DistRollCntAvgDrvnSrc : 55|1@0+ (1,0) [0|1] "" XXX + +BO_ 2154053632 Dimming_Information_LS: 3 XXX + SG_ IntDimNtPnlAtv : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DispNtSchmAtv : 1|1@0+ (1,0) [0|1] "" XXX + SG_ CargoLmpActIO : 2|1@0+ (1,0) [0|1] "" XXX + SG_ IntDimLvl : 15|8@0+ (0.392157,0) [0|100.000035] "%" XXX + SG_ IntDimDspLvl : 23|8@0+ (0.392157,0) [0|100.000035] "%" XXX + +BO_ 2149851136 System_Power_Mode_LS: 1 XXX + SG_ SysPwrMdGroup : 2|3@0+ (1,0) [0|0] "" XXX + SG_ SysPwrMd : 1|2@0+ (1,0) [0|3] "" XXX + SG_ SysPwrMdV : 2|1@0+ (1,0) [0|1] "" XXX + SG_ KylsStrtAuthRq : 3|1@0+ (1,0) [0|1] "" XXX + +BO_ 2159124480 ODI_AuxIP_2_TEL_LS: 8 XXX + SG_ ODI_AxIP2TEL : 7|64@0+ (1,0) [0|1.84467440737096E+019] "" XXX + +BO_ 2151530496 TPM_Display_Commands: 6 XXX + SG_ TPMTrLrnMdCmplt : 0|1@0+ (1,0) [0|1] "" XXX + SG_ TrPrsMntrAtLocFld : 1|1@0+ (1,0) [0|1] "" XXX + SG_ TrPrsMntrTrLdStat : 3|2@0+ (1,0) [0|3] "" XXX + SG_ TireTrdTmpStat : 6|3@0+ (1,0) [0|7] "" XXX + SG_ TrFrntAxlPresStat : 9|2@0+ (1,0) [0|3] "" XXX + SG_ TrRrAxlPresStat : 11|2@0+ (1,0) [0|3] "" XXX + SG_ WintTrRecIndOn : 12|1@0+ (1,0) [0|1] "" XXX + SG_ TrPrsMntrFld : 13|1@0+ (1,0) [0|1] "" XXX + SG_ TireLocatnWarnEn : 15|1@0+ (1,0) [0|1] "" XXX + SG_ HVChgSyChgLvPfStRmt1 : 18|3@0+ (1,0) [0|7] "" XXX + SG_ StTODChrgTmpOvrdRmt1 : 20|2@0+ (1,0) [0|3] "" XXX + SG_ PrtyChrgRqRmt1 : 22|2@0+ (1,0) [0|3] "" XXX + SG_ OfBrdHVCVhCsChRqRmt1 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ HVBatTmBsDlChStRqRmt1 : 28|21@0+ (1,0) [0|0] "" XXX + SG_ HVBTBDCSRR1_DChHStRq : 28|5@0+ (1,0) [0|31] "hr" XXX + SG_ HVBTBDCSRR1_DChSlSRq : 35|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBDCSRR1_DChDStRq : 39|4@0+ (1,0) [0|15] "" XXX + SG_ HVBTBDCSRR1_DChMHSRq : 45|6@0+ (1,0) [0|63] "min" XXX + SG_ HVBTBDCSRR1_DChSnSRq : 47|2@0+ (1,0) [0|3] "" XXX + SG_ HVBatTmBsChgMdRqRmt1 : 31|3@0+ (1,0) [0|7] "" XXX + + + +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "ProtocolType" "GMLAN"; +BA_ "BusType" "CAN"; + diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_object.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_object.dbc new file mode 100644 index 0000000000..4643a640ac --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_object.dbc @@ -0,0 +1,724 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: K109_FCM B233B_LRR NEO VIS_FO VIS2_FO K124_ASCM Vector__XXX EOCM_F_FO EOCM2A_IMX6_FO EOCM2A_K2_FO EOCM2A_K1_FO EOCM2B_IMX6_FO EOCM2B_K2_FO EOCM2B_K1_FO +VAL_TABLE_ RangeMode 1 "Active" 0 "Inactive" ; +VAL_TABLE_ TrkConf 3 "Confident" 2 "Speculative" 1 "Highly speculative" 0 "Invalid" ; +VAL_TABLE_ TrkMeasStatus 3 "Measured current cycle" 2 "Latent track not detected" 1 "New object" 0 "No object" ; +VAL_TABLE_ TrkDynProp 4 "Moving in opposite direction" 3 "Moving in same direction" 2 "Has moved but currently stopped" 1 "Has never moved," 0 "Unknown" ; +VAL_TABLE_ FrntVsnInPthVehBrkNwSt 10 "Active" 5 "Inactive" ; +VAL_TABLE_ FrntVsnClostPedBrkNwSt 10 "Active" 5 "Inactive" ; +VAL_TABLE_ LaneSnsLLnPosValid 1 "Invalid" 0 "Valid" ; +VAL_TABLE_ LnSnsRLnPosValid 1 "Invalid" 0 "Valid" ; +VAL_TABLE_ ObjectType 7 "no object present" 6 "fixed roadside object" 5 "fixed overhead object" 4 "pedestrian" 3 "motocycle / bicycle" 2 "Large vehicle (semi)" 1 "4 Wheel Vehicle (car, small trk)" 0 "Unknown" ; +VAL_TABLE_ FwVsnCinCoutPotT9Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT8Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT7Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT6Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT5Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT4Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT3Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT2Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT1Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT12Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT11Rev 2 "Right" 1 "Left" 0 "None" ; +VAL_TABLE_ FwVsnCinCoutPotT10Rev 2 "Right" 1 "Left" 0 "None" ; + + +BO_ 3221225472 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX + SG_ Always12 : 0|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TimeStatusChecksum : 0|12@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 161 ASCMTimeStatus: 7 NEO + SG_ TimeStatus : 7|28@0+ (1,0) [0|0] "" B233B_LRR + SG_ RollingCounter : 27|2@0+ (1,0) [0|0] "" B233B_LRR + +BO_ 774 ASCMSteeringStatus: 8 NEO + SG_ ASCMSterringStatusChecksum : 55|16@0+ (1,0) [0|0] "" B233B_LRR + SG_ AlwaysF0 : 15|8@0+ (1,0) [0|0] "" B233B_LRR + SG_ Always20 : 23|8@0+ (1,0) [0|0] "" B233B_LRR + SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" B233B_LRR + +BO_ 784 ASCMHeadlight: 2 NEO + SG_ Always42 : 7|8@0+ (1,0) [0|0] "" B233B_LRR + SG_ Always4 : 15|8@0+ (1,0) [0|0] "" B233B_LRR + +BO_ 776 ASCMAccSpeedStatus: 7 NEO + SG_ AccSpeedChecksum : 42|11@0+ (1,0) [0|0] "" B233B_LRR + SG_ RollingCounter : 46|2@0+ (1,0) [0|0] "" B233B_LRR + SG_ NearRangeMode : 43|1@0+ (1,0) [0|0] "" B233B_LRR + SG_ FarRangeMode : 44|1@0+ (1,0) [0|0] "" B233B_LRR + SG_ VehicleAcceleration : 19|12@0+ (1,0) [0|0] "" B233B_LRR + SG_ VehicleSpeed : 15|12@0+ (1,0) [0|0] "" B233B_LRR + SG_ AlwaysOne : 3|1@0+ (1,0) [0|0] "" B233B_LRR + +BO_ 1120 F_LRR_Obj_Header: 8 LRR_FO + SG_ FLRRRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FLRRModeCmdFdbk : 23|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRNumValidTargets : 20|5@0+ (1,0) [0|31] "" EOCM_F_FO + SG_ FLRRTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRTimeStamp : 2|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ FLRRRoadTypeInfo : 5|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FLRRBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + SG_ FLRRDiagSpare : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRVltgOutRngLo : 44|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRVltgOutRngHi : 43|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRSvcAlgnInPrcs : 38|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRSnsrBlckd : 45|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRSnstvFltPrsntInt : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRPlntAlgnInProc : 37|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnYawRt : 47|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnYawLt : 46|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRLonVelPlsblityFlt : 35|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRYawRtPlsblityFlt : 34|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnPtchUp : 32|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRMsalgnPtchDn : 33|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRInitDiagCmplt : 40|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRHWFltPrsntInt : 25|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRExtIntrfrnc : 36|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRCANSgnlSpvFld : 29|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRCANRxErr : 28|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRTunlDtctd : 27|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAmbTmpOutRngLw : 42|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAmbTmpOutRngHi : 41|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAntTngFltPrsnt : 26|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FLRRAlgnFltPrsnt : 39|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1134 LRRObject14: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1132 LRRObject12: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1131 LRRObject11: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1130 LRRObject10: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1129 LRRObject09: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1128 LRRObject08: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1127 LRRObject07: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1126 LRRObject06: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1125 LRRObject05: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1124 LRRObject04: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1123 LRRObject03: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1140 LRRObject20: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1139 LRRObject19: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1138 LRRObject18: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1137 LRRObject17: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1136 LRRObject16: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1135 LRRObject15: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1133 LRRObject13: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1122 LRRObject02: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + +BO_ 1121 LRRObject01: 8 B233B_LRR + SG_ TrkRange : 5|11@0+ (0.125,0) [0|255.875] "m" NEO + SG_ TrkRangeRate : 10|11@0- (0.125,0) [-128|127.875] "m/s" NEO + SG_ TrkRangeAccel : 31|9@0- (0.125,0) [-32|31.875] "m/s^2" NEO + SG_ TrkAzimuth : 35|12@0- (0.125,0) [-256|255.875] "deg" NEO + SG_ TrkWidth : 55|6@0+ (0.25,0) [0|15.75] "m" NEO + SG_ TrkObjectID : 61|6@0+ (1,0) [0|63] "" NEO + + BO_ 1094 F_Vision_Obj_Track_12: 8 VIS2_FO + SG_ FwdVsnObjTypTr12Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk12Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk12Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FVisionWidthTrk12 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FVisionMeasStatTrk12 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk12 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisionRelLaneTrk12 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk12 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO + SG_ FVisionConfTrk12 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ ObjDirTrk12 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk12 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk12 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1093 F_Vision_Obj_Track_11: 8 VIS2_FO + SG_ FwdVsnObjTypTr11Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk11Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk11Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FVisionWidthTrk11 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FVisionMeasStatTrk11 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk11 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisionRelLaneTrk11 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk11 : 34|11@0- (0.125,0) [-128|127.875] "deg/sec" EOCM_F_FO + SG_ FVisionConfTrk11 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ ObjDirTrk11 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk11 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk11 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + +BO_ 1100 F_Vision_Obj_Track_12_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT12Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk12 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk12 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk12 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk12 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr12 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk12 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo12 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1099 F_Vision_Obj_Track_11_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT11Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk11 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk11 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk11 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk11 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr11 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk11 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo11 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1098 F_Vision_Obj_Track_10_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT10Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk10 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk10 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk10 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk10 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr10 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk10 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo10 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1097 F_Vision_Obj_Track_9_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT9Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk9 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk9 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk9 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk9 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr9 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk9 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo9 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1096 F_Vision_Obj_Track_8_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT8Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk8 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk8 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk8 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk8 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr8 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk8 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo8 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1095 F_Vision_Obj_Track_7_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT7Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk7 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk7 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk7 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk7 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr7 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk7 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo7 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1068 F_Vision_Obj_Track_6_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT6Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk6 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk6 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk6 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk6 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr6 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk6 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo6 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1067 F_Vision_Obj_Track_5_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT5Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk5 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk5 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk5 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk5 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr5 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk5 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo5 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1066 F_Vision_Obj_Track_4_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT4Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk4 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk4 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk4 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk4 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr4 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk4 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo4 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1065 F_Vision_Obj_Track_3_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT3Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk3 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk3 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk3 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk3 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr3 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk3 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo3 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1064 F_Vision_Obj_Track_2_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT2Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjAgeTrk2 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk2 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk2 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk2 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr2 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk2 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo2 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1063 F_Vision_Obj_Track_1_B: 8 VIS2_FO + SG_ FwVsnCinCoutPotT1Rev : 5|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnObjSclChgTrk1 : 15|16@0- (0.0002,0) [-6.5536|6.5534] "pix/sec" EOCM_F_FO + SG_ FwdVsnObjAgeTrk1 : 62|7@0+ (1,0) [0|127] "" EOCM_F_FO + SG_ FwdVsnLongVlctyTrk1 : 42|12@0- (0.0625,0) [-128|127.9375] "m/sec" EOCM_F_FO + SG_ FwdVsnLatOfstTrk1 : 36|10@0- (0.125,0) [-64|63.875] "m" EOCM_F_FO + SG_ FwdVsnBrkLtStatTrk1 : 38|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FwdVsnTrnSigStatTr1 : 25|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FrtVsnBrstIDAddInfo1 : 7|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1088 F_Vision_Obj_Header_2: 8 VIS2_FO + SG_ FrntVsnInPthVehBrkNwSt : 35|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FrntVsnClostPedBrkNwSt : 39|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FrntVsnClostPedObjID : 29|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FrntVsnClostPedAlrtNwFlg : 30|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrntVsnClostPedNotftnFlg : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrntVsnInPthVehAlrtNwFlg : 2|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnVldTgtNum2 : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FrtVsnTmStmp2V : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnTmStmp2 : 10|11@0+ (1,0) [0|2047] "" EOCM_F_FO + SG_ FrtVsnRollCnt2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FrtVsnBrstChksum2 : 55|16@0+ (1,0) [0|65535] "" EOCM_F_FO + +BO_ 854 F_Vision_Environment_7: 3 VIS2_FO + SG_ FwdVsnCnstrctAreaDst : 13|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnCnstrctZnDet : 15|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnEgoVehLnPos : 17|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnRdTypDet : 9|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnTunnlDetd : 23|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ FwdVsnTunnlDst : 21|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBrstID5 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 853 F_Vision_Environment_6: 8 VIS2_FO + SG_ LnMrkg4LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvtGrad : 47|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnSnsLnCrvt : 31|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBrstID4 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 852 F_Vision_Environment_5: 8 VIS2_FO + SG_ LnMrkg3LnSnsLnHdngTngtV : 7|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnHdngTngt : 23|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnDstV : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnDst : 15|8@0- (0.1,0) [-12.8|12.7] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvtV : 6|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvtGradV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvtGrad : 47|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/(m*sec)" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnSnsLnCrvt : 31|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnQltyConfLvl : 63|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMrkrTyp : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBrstID3 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 309 LHT_CameraObjConfirmation_FO: 1 VIS_FO + SG_ HiBmRecmnd : 1|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ CtLghtDet : 0|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 848 F_Vision_Environment: 8 VIS_FO + SG_ FwdVsnEnvIllum : 37|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnRtV : 1|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnRt : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnChngStatus : 39|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstChecksum : 55|16@0+ (1,0) [0|65535] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseRollingCount : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseSystemOK : 4|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSnsLLnPosValid : 2|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSenseDistToLLnEdge : 14|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsRLnPosValid : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsDistToRLnEdge : 22|7@0+ (0.05,0) [0|6.35] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseTimeStampV : 5|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseTimeStamp : 34|11@0+ (1,0) [0|2047] "ms" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LaneSenseSystemOKV : 3|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 849 F_Vision_Environment_2: 8 VIS_FO + SG_ LnSnsLatVRelToRgtMrkg : 23|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM_F_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO + SG_ LnSnsRtLnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntRtV : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnMrkgWdthRt : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsRtAnchrLn : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtAnchrLn : 56|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrRghtV : 0|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrRght : 47|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntRt : 31|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstID : 2|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLatVRelToLftMrkg : 15|8@0- (0.02,0) [-2.56|2.54] "m/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + +BO_ 1056 F_Vision_Obj_Header: 6 VIS_FO + SG_ FVsnSnsrBlckd : 24|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ ClstInPathVehObjID : 30|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FrtVsnFld : 6|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnIniDiagSuccCmpt : 5|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnSrvAlgnInPrcs : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FrtVsnUnvlbl : 7|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionRollingCnt : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVISModeCmdFdbk : 4|3@0+ (1,0) [0|7] "" EOCM_F_FO + SG_ FVisionNumValidTrgts : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FVisionTimeStampV : 31|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionTimeStamp : 10|11@0+ (1,0) [0|2047] "ms" EOCM_F_FO + SG_ VISBurstChecksum : 39|16@0+ (1,0) [0|65535] "" EOCM_F_FO + +BO_ 1057 F_Vision_Obj_Track_1: 8 VIS_FO + SG_ FwdVsnRngTrk1Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk1Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr1Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk1 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisBurstIDTrk1 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk1 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk1 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk1 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk1 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk1 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk1 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ ObjDirTrk1 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1058 F_Vision_Obj_Track_2: 8 VIS_FO + SG_ FwdVsnVertPosTrk2 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk2Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk2Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ ObjDirTrk2 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FwdVsnObjTypTr2Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FVisBurstIDTrk2 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk2 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk2 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk2 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk2 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk2 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk2 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1059 F_Vision_Obj_Track_3: 8 VIS_FO + SG_ FwdVsnVertPosTrk3 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk3Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk3Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr3Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk3 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk3 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk3 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk3 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk3 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk3 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk3 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk3 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1060 F_Vision_Obj_Track_4: 8 VIS_FO + SG_ FwdVsnVertPosTrk4 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FVisionMeasStatTrk4 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk4 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FwdVsnRngTrk4Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk4Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr4Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FVisBurstIDTrk4 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk4 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ ObjDirTrk4 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionConfTrk4 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk4 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk4 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + +BO_ 1061 F_Vision_Obj_Track_5: 8 VIS_FO + SG_ FwdVsnVertPosTrk5 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk5Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk5Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr5Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk5 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk5 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk5 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk5 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk5 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk5 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk5 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk5 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1062 F_Vision_Obj_Track_6: 8 VIS_FO + SG_ FwdVsnVertPosTrk6 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk6Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk6Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr6Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk6 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk6 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk6 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk6 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk6 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk6 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk6 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk6 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1089 F_Vision_Obj_Track_7: 8 VIS2_FO + SG_ FVisBurstIDTrk7 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk7 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk7 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk7 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk7 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk7 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk7 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + SG_ FwdVsnRngTrk7Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnObjTypTr7Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk7Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnVertPosTrk7 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ ObjDirTrk7 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + +BO_ 1090 F_Vision_Obj_Track_8: 8 VIS2_FO + SG_ FVisBurstIDTrk8 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk8 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FwdVsnAzmthTrk8Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnVertPosTrk8 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk8Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnObjTypTr8Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk8 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisionConfTrk8 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk8 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk8 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk8 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk8 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1091 F_Vision_Obj_Track_9: 8 VIS2_FO + SG_ FwdVsnVertPosTrk9 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ FwdVsnRngTrk9Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk9Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr9Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ ObjDirTrk9 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk9 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk9 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk9 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk9 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk9 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk9 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk9 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 1092 F_Vision_Obj_Track_10: 8 VIS2_FO + SG_ FwdVsnRngTrk10Rev : 16|12@0+ (0.1,0) [0|409.5] "m" EOCM_F_FO + SG_ FwdVsnAzmthTrk10Rev : 10|10@0- (0.1,0) [-51.2|51.1] "deg" EOCM_F_FO + SG_ FwdVsnObjTypTr10Rev : 14|4@0+ (1,0) [0|15] "" EOCM_F_FO + SG_ FwdVsnVertPosTrk10 : 53|6@0+ (0.25,-2) [-2|13.75] "deg" EOCM_F_FO + SG_ ObjDirTrk10 : 15|1@0+ (1,0) [0|1] "" EOCM_F_FO + SG_ FVisBurstIDTrk10 : 1|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionObjectIDTrk10 : 7|6@0+ (1,0) [0|63] "" EOCM_F_FO + SG_ FVisionConfTrk10 : 36|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionAzRateTrk10 : 34|11@0- (0.125,0) [-128|127.875] "deg/s" EOCM_F_FO + SG_ FVisionRelLaneTrk10 : 55|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionMeasStatTrk10 : 63|2@0+ (1,0) [0|3] "" EOCM_F_FO + SG_ FVisionWidthTrk10 : 61|6@0+ (0.25,0) [0|15.75] "m" EOCM_F_FO + +BO_ 851 F_Vision_Environment_4: 8 VIS_FO + SG_ LnMrkg3LnPrvwDst : 45|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTtlNmLnMrkgDetRt : 4|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsRtLinCrsTm : 25|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsNumPrlLnsDetRt : 33|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsNumPrlLnsDetLt : 36|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntLftV : 31|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtLinCrsTm : 30|5@0+ (0.1,0) [0|3.1] "s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnPrvwDst : 50|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMrkgTypChgDst : 61|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMrkgTypChgDst : 40|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMrkgWdth : 62|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4LnMarkrElvtd : 51|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg4AnchrLnLin : 57|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMrkgWdth : 41|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3LnMarkrElvtd : 46|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkg3AnchrLnLin : 52|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstID2 : 1|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsCrvtGrdntLft : 15|16@0- (5.96e-8,0) [-0.0019529728|0.0019529132] "1/rad/s" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + + BO_ 850 F_Vision_Environment_3: 8 VIS_FO + SG_ LnSnsTtlNmLnMrkgDetLt : 58|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtLnMrkgWdth : 63|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLtLnMrkgTypChgDst : 62|4@0+ (10,0) [0|150] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnLftV : 23|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsTngtOfHdngLnLft : 31|8@0- (0.002,0) [-0.256|0.254] "m/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrLftV : 15|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsLnCrvtrLft : 39|16@0- (9.53e-7,0) [-0.031227904|0.031226951] "1/m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrTypRght : 50|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrTypLft : 53|3@0+ (1,0) [0|7] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrElvtdRght : 54|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnMrkrElvtdLft : 55|1@0+ (1,0) [0|1] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnSnsBurstID1 : 7|2@0+ (1,0) [0|3] "" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnQltyCnfdncLvlRght : 22|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnQltyCnfdncLvlLft : 14|7@0+ (0.7874016,0) [0|100.0000032] "%" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnPrvwDstncRght : 2|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + SG_ LnPrvwDstncLft : 5|3@0+ (10,0) [0|70] "m" EOCM2A_IMX6_FO,EOCM2A_K2_FO,EOCM2A_K1_FO,EOCM2B_IMX6_FO,EOCM2B_K2_FO,EOCM2B_K1_FO,EOCM_F_FO + + +BO_TX_BU_ 161 : K124_ASCM,NEO; +BO_TX_BU_ 774 : K124_ASCM,NEO; +BO_TX_BU_ 784 : K124_ASCM,NEO; +BO_TX_BU_ 776 : K124_ASCM,NEO; + + +CM_ BU_ K109_FCM "Frontview Camera Module"; +CM_ BU_ B233B_LRR "Radar Sensor Module Long Range"; +CM_ BU_ NEO "Comma NEO"; +CM_ BU_ VIS_FO "Front Camera Data"; +CM_ BU_ VIS2_FO "Front Camera Data2"; +CM_ BU_ K124_ASCM "Active Safety Control Module"; +CM_ BO_ 3221225472 "This is a message for not used signals, created by Vector CANdb++ DBC OLE DB Provider."; +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; +BA_ "UseGMParameterIDs" 0; +VAL_ 776 NearRangeMode 1 "Active" 0 "Inactive"; +VAL_ 776 FarRangeMode 1 "Active" 0 "Inactive"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc new file mode 100644 index 0000000000..b18ac6974d --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_expansion.dbc @@ -0,0 +1,56 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: +BU_: K1_APM +BO_ 470 APM_Stats: 7 K1_APM + SG_ APM_Low_Voltage_Sensed : 16|8@1+ (0.0787402,0) [0|0] "V" Vector__XXX + SG_ APM_Temperature_1 : 24|8@1+ (1,-40) [0|0] "C" Vector__XXX + SG_ APM_Temperature_2 : 32|8@1+ (1,-40) [0|0] "C" Vector__XXX + SG_ APM_Low_Voltage_Current_Output : 40|8@1- (1,0) [0|0] "A" Vector__XXX + SG_ APM_Status : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ APM_High_Voltage_Input_Current : 8|8@1- (0.15,-7) [0|0] "A" Vector__XXX + SG_ APM_Counter : 48|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 468 APM_Command: 2 K1_APM + SG_ APM_Status : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ APM_Voltage_Requested : 8|8@1+ (0.0787402,0) [0|0] "V" Vector__XXX + +BA_DEF_ BO_ "GenMsgBackgroundColor" STRING ; +BA_DEF_ BO_ "GenMsgForegroundColor" STRING ; +BA_DEF_ BO_ "isj1939dbc" INT 0 0; +BA_DEF_DEF_ "GenMsgBackgroundColor" "#ffffff"; +BA_DEF_DEF_ "GenMsgForegroundColor" "#000000"; +BA_DEF_DEF_ "isj1939dbc" 0; +CM_ BU_ K1_APM "14V Power Module"; +VAL_ 468 APM_Status 0 "Off" 160 "On"; diff --git a/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc b/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc new file mode 100644 index 0000000000..75122aa2bf --- /dev/null +++ b/opendbc_repo/opendbc/dbc/gm_global_a_powertrain_volt.dbc @@ -0,0 +1,352 @@ + +CM_ "IMPORT _community.dbc"; +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: K16_BECM K73_TCIC K9_BCM K43_PSCM K17_EBCM K20_ECM K114B_HPCM NEO K124_ASCM EPB +VAL_TABLE_ TurnSignals 2 "Right Turn" 1 "Left Turn" 0 "None" ; +VAL_TABLE_ Intellibeam 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HighBeamsActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HighBeamsTemporary 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCLeadCar 1 "Present" 0 "Not Present" ; +VAL_TABLE_ ACCCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ BrakePedalPressed 1 "Pressed" 0 "Depressed" ; +VAL_TABLE_ DistanceButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ LKAButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_TABLE_ DriveModeButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ PRNDL 3 "Reverse" 2 "Drive" 1 "Neutral" 0 "Park" ; +VAL_TABLE_ ESPButton 1 "Active" 0 "Inactive" ; +VAL_TABLE_ DoorStatus 1 "Opened" 0 "Closed" ; +VAL_TABLE_ SeatBeltStatus 1 "Latched" 0 "Unlatched" ; +VAL_TABLE_ LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; +VAL_TABLE_ GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; +VAL_TABLE_ GasRegenCmdActive 1 "Active" 0 "Inactive" ; +VAL_TABLE_ LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; +VAL_TABLE_ HandsOffSWDetectionStatus 1 "Hands On" 0 "Hands Off" ; +VAL_TABLE_ HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; + + +BO_ 189 EBCMRegenPaddle: 7 K17_EBCM + SG_ RegenPaddle : 7|4@0+ (1,0) [0|0] "" NEO + +BO_ 190 ECMAcceleratorPos: 6 K20_ECM + SG_ BrakePedalPos : 15|8@0+ (1,0) [0|0] "sticky" NEO + SG_ GasPedalAndAcc : 23|8@0+ (1,0) [0|0] "" NEO + +BO_ 201 ECMEngineStatus: 8 K20_ECM + SG_ EngineTPS : 39|8@0+ (0.392156863,0) [0|100.000000065] "%" NEO + SG_ EngineRPM : 15|16@0+ (0.25,0) [0|0] "RPM" NEO + SG_ CruiseMainOn : 29|1@0+ (1,0) [0|1] "" NEO + SG_ BrakePressed : 40|1@0+ (1,0) [0|1] "" NEO + SG_ Standstill : 2|1@0+ (1,0) [0|1] "" NEO + SG_ CruiseActive : 31|2@0+ (1,0) [0|3] "" NEO + +BO_ 209 EBCMBrakePedalSensors: 7 K17_EBCM + SG_ Counter1 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ Counter2 : 23|2@0+ (1,0) [0|3] "" XXX + SG_ BrakePedalPosition1 : 5|14@0+ (1,0) [0|16383] "" XXX + SG_ BrakePedalPosition2 : 21|14@0- (-1,0) [0|16383] "" XXX + SG_ BrakeNormalized1 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ BrakeNormalized2 : 47|8@0- (-1,0) [0|255] "" XXX + +BO_ 241 EBCMBrakePedalPosition: 6 K17_EBCM + SG_ BrakePressed : 1|1@0+ (1,0) [0|1] "" XXX + SG_ BrakePedalPosition : 15|8@0+ (1,0) [0|255] "" NEO + +BO_ 298 BCMDoorBeltStatus: 8 K9_BCM + SG_ RearLeftDoor : 8|1@0+ (1,0) [0|0] "" NEO + SG_ FrontLeftDoor : 9|1@0+ (1,0) [0|0] "" NEO + SG_ FrontRightDoor : 10|1@0+ (1,0) [0|0] "" NEO + SG_ RearRightDoor : 23|1@0+ (1,0) [0|0] "" NEO + SG_ LeftSeatBelt : 12|1@0+ (1,0) [0|0] "" NEO + SG_ RightSeatBelt : 53|1@0+ (1,0) [0|0] "" NEO + +BO_ 309 ECMPRDNL: 8 K20_ECM + SG_ PRNDL : 2|3@0+ (1,0) [0|0] "" NEO + SG_ ESPButton : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 320 BCMTurnSignals: 3 K9_BCM + SG_ TurnSignals : 19|2@0+ (1,0) [0|0] "" NEO + SG_ Intellibeam : 13|1@0+ (1,0) [0|1] "" XXX + SG_ HighBeamsActive : 7|1@0+ (1,0) [0|1] "" XXX + SG_ HighBeamsTemporary : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 322 BCMBlindSpotMonitor: 7 K9_BCM + SG_ LeftBSM : 6|1@0+ (1,0) [0|1] "" XXX + SG_ RightBSM : 7|1@0+ (1,0) [0|1] "" XXX + +BO_ 328 PSCM_148: 1 K43_PSCM + +BO_ 381 ESPStatus: 6 K20_ECM + SG_ TractionControlOn : 5|1@0+ (1,0) [0|0] "" NEO + SG_ MSG17D_AccPower : 35|12@0- (1,0) [0|0] "" NEO + +BO_ 384 ASCMLKASteeringCmd: 4 NEO + SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdChecksum : 19|12@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmdActive : 3|1@0+ (1,0) [0|0] "" NEO + SG_ LKASteeringCmd : 2|11@0- (1,0) [0|0] "" NEO + +BO_ 388 PSCMStatus: 8 K43_PSCM + SG_ HandsOffSWDetectionMode : 20|2@0+ (1,0) [0|3] "" NEO + SG_ HandsOffSWlDetectionStatus : 21|1@0+ (1,0) [0|1] "" NEO + SG_ LKATorqueDeliveredStatus : 5|3@0+ (1,0) [0|7] "" NEO + SG_ LKADriverAppldTrq : 50|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO + SG_ LKATorqueDelivered : 18|11@0- (0.01,0) [0|1] "" NEO + SG_ LKATotalTorqueDelivered : 2|11@0- (0.01,0) [-10.24|10.23] "Nm" NEO + SG_ RollingCounter : 38|4@0+ (1,0) [0|15] "" XXX + SG_ PSCMStatusChecksum : 33|10@0+ (1,0) [0|1023] "" XXX + +BO_ 417 AcceleratorPedal: 7 XXX + SG_ AcceleratorPedal : 55|8@0+ (1,0) [0|0] "" NEO + +BO_ 451 GasAndAcc: 8 XXX + SG_ GasPedalAndAcc2 : 55|8@0+ (1,0) [0|0] "" NEO + +BO_ 452 AcceleratorPedal2: 8 XXX + SG_ CruiseState : 15|3@0+ (1,0) [0|7] "" NEO + SG_ AcceleratorPedal2 : 47|8@0+ (1,0) [0|0] "" NEO + +BO_ 481 ASCMSteeringButton: 7 K124_ASCM + SG_ DistanceButton : 22|1@0+ (1,0) [0|0] "" NEO + SG_ LKAButton : 23|1@0+ (1,0) [0|0] "" NEO + SG_ ACCAlwaysOne : 24|1@0+ (1,0) [0|1] "" XXX + SG_ ACCButtons : 46|3@0+ (1,0) [0|0] "" NEO + SG_ DriveModeButton : 39|1@0+ (1,0) [0|1] "" XXX + SG_ RollingCounter : 33|2@0+ (1,0) [0|3] "" NEO + SG_ SteeringButtonChecksum : 43|12@0+ (1,0) [0|255] "" NEO + +BO_ 485 PSCMSteeringAngle: 8 K43_PSCM + SG_ SteeringWheelAngle : 15|16@0- (0.0625,0) [-2047|2047] "deg" NEO + SG_ SteeringWheelRate : 27|12@0- (1,0) [-2047|2047] "deg/s" NEO + +BO_ 489 EBCMVehicleDynamic: 8 K17_EBCM + SG_ BrakePedalPressed : 6|1@0+ (1,0) [0|0] "" NEO + SG_ LateralAcceleration : 3|10@0- (0.161,0) [-2047|2047] "m/s2" NEO + SG_ YawRate : 35|12@0- (0.625,0) [0|1] "" NEO + SG_ YawRate2 : 51|12@0- (0.0625,0) [-2047|2047] "grad/s" NEO + +BO_ 352 BCMImmobilizer: 5 K9_BCM + SG_ ImmobilizerInfo : 7|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 497 BCMGeneralPlatformStatus: 8 K9_BCM + SG_ SystemPowerMode : 1|2@0+ (1,0) [0|3] "" XXX + SG_ SystemBackUpPowerMode : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ParkBrakeSwActive : 36|1@0+ (1,0) [0|3] "" XXX + +BO_ 500 SportMode: 6 XXX + SG_ SportMode : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 501 ECMPRDNL2: 8 K20_ECM + SG_ TransmissionState : 48|4@1+ (1,0) [0|7] "" NEO + SG_ PRNDL2 : 27|4@0+ (1,0) [0|255] "" NEO + SG_ ManualMode : 41|1@0+ (1,0) [0|1] "" NEO + +BO_ 532 BRAKE_RELATED: 6 XXX + SG_ UserBrakePressure : 0|9@0+ (1,0) [0|511] "" XXX + +BO_ 560 EPBStatus: 8 EPB + SG_ EPBClosed : 12|1@0+ (1,0) [0|1] "" NEO + +BO_ 562 EBCMFrictionBrakeStatus: 8 K17_EBCM + SG_ FrictionBrakeUnavailable : 46|1@0+ (1,0) [0|1] "" XXX + +BO_ 608 SPEED_RELATED: 8 XXX + SG_ RollingCounter : 5|2@0+ (1,0) [0|0] "" XXX + SG_ ClusterSpeed : 31|8@0+ (1,0) [0|0] "" XXX + +BO_ 711 BECMBatteryVoltageCurrent: 6 K17_EBCM + SG_ HVBatteryVoltage : 31|12@0+ (0.125,0) [0|511.875] "V" NEO + SG_ HVBatteryCurrent : 12|13@0- (0.15,0) [-614.4|614.25] "A" NEO + +BO_ 715 ASCMGasRegenCmd: 8 K124_ASCM + SG_ GasRegenAccType : 15|2@0+ (1,0) [0|3] "" NEO + SG_ GasRegenChecksum : 32|25@0+ (1,0) [0|0] "" NEO + SG_ GasRegenFullStopActive : 13|1@0+ (1,0) [0|0] "" NEO + SG_ GasRegenCmdActive : 0|1@0+ (1,0) [0|0] "" NEO + SG_ RollingCounter : 7|2@0+ (1,0) [0|0] "" NEO + SG_ GasRegenCmd : 10|19@0+ (0.125,-22534) [-22534|43001.875] "Nm" NEO + +BO_ 717 ASCM_2CD: 5 K124_ASCM + +BO_ 761 BRAKE_RELATED_2: 7 XXX + SG_ UserBrakePressure2 : 47|9@0+ (1,0) [0|511] "" XXX + +BO_ 789 EBCMFrictionBrakeCmd: 5 K124_ASCM + SG_ RollingCounter : 33|2@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeMode : 7|4@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeChecksum : 23|16@0+ (1,0) [0|0] "" NEO + SG_ FrictionBrakeCmd : 3|12@0- (1,0) [0|0] "" NEO + +BO_ 800 AEBCmd: 6 K124_ASCM + SG_ RollingCounter : 5|2@0+ (1,0) [0|3] "" NEO + SG_ AEBChecksum : 27|20@0+ (1,0) [0|0] "" NEO + SG_ AEBCmdActive : 3|1@1+ (1,0) [0|1] "" NEO + SG_ AEBCmd : 2|11@0+ (1,0) [0|0] "" NEO + SG_ AEBCmd2 : 23|8@0+ (1,0) [0|0] "" NEO + +BO_ 810 TCICOnStarGPSPosition: 8 K73_TCIC + SG_ GPSLongitude : 39|32@0+ (1,-2147483648) [0|0] "milliarcsecond" NEO + SG_ GPSLatitude : 7|32@0+ (1,0) [0|0] "milliarcsecond" NEO + +BO_ 840 EBCMWheelSpdFront: 5 K17_EBCM + SG_ FLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ FRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO + +BO_ 842 EBCMWheelSpdRear: 5 K17_EBCM + SG_ RLWheelSpd : 7|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ RRWheelSpd : 23|16@0+ (0.0311,0) [0|255] "km/h" NEO + SG_ RRWheelDir : 34|3@0+ (1,0) [0|7] "" NEO + SG_ RLWheelDir : 37|3@0+ (1,0) [0|7] "" NEO + +BO_ 869 ASCM_365: 4 K124_ASCM + +BO_ 880 ASCMActiveCruiseControlStatus: 6 K124_ASCM + SG_ ACCCruiseState : 8|3@1+ (1,0) [0|7] "" XXX + SG_ ACCLeadCar : 44|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCAlwaysOne2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCAlwaysOne : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCSpeedSetpoint : 19|12@0+ (0.0625,0) [0|255.9375] "km/h" NEO + SG_ ACCGapLevel : 21|2@0+ (1,0) [0|0] "" NEO + SG_ ACCResumeButton : 1|1@0+ (1,0) [0|0] "" NEO + SG_ ACCCmdActive : 23|1@0+ (1,0) [0|0] "" NEO + SG_ FCWAlert : 41|2@0+ (1,0) [0|3] "" XXX + +BO_ 967 EVDriveMode: 4 XXX + SG_ SinglePedalModeActive : 7|1@0+ (1,0) [0|1] "" XXX + SG_ SinglePedalModeRisingEdge : 21|1@0+ (1,0) [0|1] "" XXX + SG_ SinglePedalModeFallingEdge : 22|1@0+ (1,0) [0|1] "" XXX + +BO_ 977 ECMCruiseControl: 8 K20_ECM + SG_ CruiseActive : 39|1@0+ (1,0) [0|3] "" NEO + SG_ CruiseSetSpeed : 19|12@0+ (0.0625,0) [0|0] "km/h" NEO + +BO_ 1001 ECMVehicleSpeed: 8 K20_ECM + SG_ VehicleSpeed : 7|16@0+ (0.01,0) [0|0] "mph" NEO + SG_ VehicleSpeedLeft : 39|16@0+ (0.01,0) [0|0] "mph" NEO + +BO_ 1033 ASCMKeepAlive: 7 NEO + SG_ ASCMKeepAliveAllZero : 7|56@0+ (1,0) [0|0] "" NEO + +BO_ 1034 ASCM_40A: 7 K124_ASCM + +BO_ 1217 ECMEngineCoolantTemp: 8 K20_ECM + SG_ EngineCoolantTemp : 23|8@0+ (1,-40) [0|0] "C" NEO + +BO_ 1249 VIN_Part2: 8 K20_ECM + SG_ VINPart2 : 7|64@0+ (1,0) [0|0] "" NEO + +BO_ 1296 ASCM_510: 4 K124_ASCM + +BO_ 1300 VIN_Part1: 8 K20_ECM + SG_ VINPart1 : 7|64@0+ (1,0) [0|0] "" NEO + +BO_ 1912 PSCM_778: 8 K43_PSCM + +BO_ 1930 ASCM_78A: 7 K124_ASCM + +BO_TX_BU_ 384 : K124_ASCM,NEO; +BO_TX_BU_ 880 : NEO,K124_ASCM; +BO_TX_BU_ 1033 : K124_ASCM,NEO; +BO_TX_BU_ 715 : NEO,K124_ASCM; +BO_TX_BU_ 789 : NEO,K124_ASCM; +BO_TX_BU_ 800 : NEO,K124_ASCM; + + +CM_ BU_ K16_BECM "Battery Energy Control Module"; +CM_ BU_ K73_TCIC "Telematics Communication Control Module"; +CM_ BU_ K9_BCM "Body Control Module"; +CM_ BU_ K43_PSCM "Power Steering Control Module"; +CM_ BU_ K17_EBCM "Electronic Brake Control Module"; +CM_ BU_ K20_ECM "Engine Control Module"; +CM_ BU_ K114B_HPCM "Hybrid Powertrain Control Module"; +CM_ BU_ NEO "Comma NEO"; +CM_ BU_ K124_ASCM "Active Safety Control Module"; +CM_ SG_ 381 MSG17D_AccPower "Need to investigate"; +CM_ BO_ 190 "Length varies from 6 to 8 bytes by car"; +CM_ SG_ 190 GasPedalAndAcc "ACC baseline is 62"; +CM_ SG_ 322 LeftBSM "For some cars, this can only be when the blinker is also active"; +CM_ SG_ 322 RightBSM "For some cars, this can only be when the blinker is also active"; +CM_ SG_ 352 ImmobilizerInfo "Non-zero when ignition or accessory mode"; +CM_ SG_ 451 GasPedalAndAcc2 "ACC baseline is 62"; +CM_ SG_ 481 ACCAlwaysOne "Usually 1 if the car is equipped with ACC"; +CM_ SG_ 562 FrictionBrakeUnavailable "1 when ACC brake control is unavailable. Stays high if brake command messages are blocked for a period of time"; +CM_ SG_ 497 SystemPowerMode "Describes ignition"; +CM_ SG_ 497 SystemBackUpPowerMode "Describes ignition + preconditioning mode, noisy"; +CM_ SG_ 501 PRNDL2 "When ManualMode is Active, Value is 13=L1 12=L2 11=L3 ... 4=L10"; +CM_ SG_ 532 UserBrakePressure "can be lower than other brake position signals when the brakes are pre-filled from ACC braking and the user presses on the brakes. user-only pressure?"; +CM_ SG_ 608 ClusterSpeed "Cluster speed signal seems to match dash on newer cars, but is a lower rate and can be noisier."; +CM_ SG_ 761 UserBrakePressure2 "Similar to BRAKE_RELATED->UserBrakePressure"; +CM_ SG_ 1001 VehicleSpeed "Spinouts show here on 2wd. Speed derived from right front wheel (drive tire)"; +BA_DEF_ "UseGMParameterIDs" INT 0 0; +BA_DEF_ "ProtocolType" STRING ; +BA_DEF_ "BusType" STRING ; +BA_DEF_DEF_ "UseGMParameterIDs" 1; +BA_DEF_DEF_ "ProtocolType" "GMLAN"; +BA_DEF_DEF_ "BusType" ""; +BA_ "BusType" "CAN"; +BA_ "ProtocolType" "GMLAN"; +BA_ "UseGMParameterIDs" 0; +VAL_ 497 SystemPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; +VAL_ 497 SystemBackUpPowerMode 3 "Crank Request" 2 "Run" 1 "Accessory" 0 "Off"; +VAL_ 481 DistanceButton 1 "Active" 0 "Inactive" ; +VAL_ 481 LKAButton 1 "Active" 0 "Inactive" ; +VAL_ 481 ACCButtons 6 "Cancel" 5 "Main" 3 "Set" 2 "Resume" 1 "None" ; +VAL_ 481 DriveModeButton 1 "Active" 0 "Inactive" ; +VAL_ 452 CruiseState 4 "Standstill" 3 "Faulted" 2 "Standby" 1 "Active" 0 "Off" ; +VAL_ 309 PRNDL 3 "R" 2 "D" 1 "N" 0 "P" ; +VAL_ 309 ESPButton 1 "Active" 0 "Inactive" ; +VAL_ 384 LKASteeringCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 842 RRWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; +VAL_ 842 RLWheelDir 0 "Stationary" 1 "Forward" 2 "Reverse" 3 "Unsupported" 4 "Fault"; +VAL_ 880 ACCCruiseState 2 "Adaptive" 3 "Adaptive" 4 "Non-adaptive" 5 "Non-adaptive" ; +VAL_ 880 ACCLeadCar 1 "Present" 0 "Not Present" ; +VAL_ 880 ACCGapLevel 3 "Far" 2 "Med" 1 "Near" 0 "Inactive" ; +VAL_ 880 ACCResumeButton 1 "Pressed" 0 "Depressed" ; +VAL_ 880 ACCCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 388 HandsOffSWDetectionMode 2 "Failed" 1 "Enabled" 0 "Disabled" ; +VAL_ 388 HandsOffSWlDetectionStatus 1 "Hands On" 0 "Hands Off" ; +VAL_ 388 LKATorqueDeliveredStatus 3 "Failed" 2 "Temp. Limited" 1 "Active" 0 "Inactive" ; +VAL_ 489 BrakePedalPressed 1 "Pressed" 0 "Depressed" ; +VAL_ 715 GasRegenCmdActiveInv 1 "Inactive" 0 "Active" ; +VAL_ 715 GasRegenCmdActive 1 "Active" 0 "Inactive" ; +VAL_ 320 Intellibeam 1 "Active" 0 "Inactive" ; +VAL_ 320 HighBeamsActive 1 "Active" 0 "Inactive" ; +VAL_ 320 HighBeamsTemporary 1 "Active" 0 "Inactive" ; +VAL_ 501 PRNDL2 6 "L" 4 "D" 3 "N" 2 "R" 1 "P" 0 "Shifting"; +VAL_ 501 TransmissionState 11 "Shifting" 10 "Reverse" 9 "Forward" 8 "Disengaged"; +VAL_ 501 ManualMode 1 "Active" 0 "Inactive" diff --git a/opendbc_repo/opendbc/dbc/hongqi_hs5.dbc b/opendbc_repo/opendbc/dbc/hongqi_hs5.dbc new file mode 100644 index 0000000000..76b41d873c --- /dev/null +++ b/opendbc_repo/opendbc/dbc/hongqi_hs5.dbc @@ -0,0 +1,160 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 146 ECM_1: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ THROTTLE_1 : 8|12@1+ (1,0) [0|255] "" XXX + SG_ THROTTLE_2 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ THROTTLE_3 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ DRIVER_THROTTLE : 40|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 192 ABS_1: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX + SG_ FRONT_LEFT : 8|16@1+ (0.01,0) [0|65535] "km/h" XXX + SG_ FRONT_RIGHT : 24|16@1+ (0.01,0) [0|65535] "km/h" XXX + SG_ VEHICLE_SPEED : 40|16@1+ (0.01,0) [0|65535] "km/h" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 194 ABS_2: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX + SG_ REAR_LEFT : 8|16@1+ (0.01,0) [0|65535] "km/h" XXX + SG_ REAR_RIGHT : 24|16@1+ (0.01,0) [0|65535] "km/h" XXX + SG_ BRAKE_PRESSURE : 40|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 208 EPS_1: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX + SG_ STEER_ANGLE : 8|15@1+ (0.0225,0) [0|65535] "" XXX + SG_ STEER_ANGLE_DIRECTION : 23|1@1+ (1,0) [0|1] "direction" XXX + SG_ STEER_RATE : 24|15@1+ (0.0225,0) [0|65535] "" XXX + SG_ STEER_RATE_DIRECTION : 39|1@1+ (1,0) [0|1] "direction" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 336 EPS_2: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ EPS_TORQUE : 8|10@1- (1,0) [0|255] "" XXX + SG_ EPS_TORQUE_DIRECTION : 18|1@1+ (1,0) [0|1] "direction" XXX + SG_ UNKNOWN : 22|2@1+ (1,0) [0|3] "" XXX + SG_ LKAS_STATUS : 24|4@1+ (1,0) [0|15] "" XXX + SG_ DRIVER_INPUT_TORQUE : 32|8@1+ (1,0) [0|255] "" XXX + SG_ LKAS_TORQUE : 40|10@1+ (1,0) [0|1023] "" XXX + SG_ LKAS_TORQUE_DIRECTION : 50|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 272 ACC: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_1 : 8|12@1+ (1,0) [0|4095] "" XXX + SG_ UNKNOWN_2 : 20|4@1+ (1,0) [0|15] "" XXX + SG_ ACCELERATION : 24|12@1+ (1,-300) [0|255] "" XXX + SG_ STATUS : 36|4@1+ (1,0) [0|31] "x" XXX + SG_ UNKNOWN_3 : 46|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 274 LKAS: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ LKAS_TORQUE : 8|10@1+ (1,0) [0|2047] "x" XXX + SG_ LKAS_TORQUE_DIRECTION : 18|1@1+ (1,0) [0|1] "" XXX + SG_ LKAS_TORQUE_ACTIVE : 19|1@1+ (1,0) [0|1] "" XXX + SG_ UNKNOWN_ACTIVE_STATE : 26|1@1+ (1,0) [0|1] "" XXX + SG_ MAYBE_HUD_LANE_STATES : 28|2@1+ (1,0) [0|3] "" XXX + SG_ LKAS_ACTIVE : 32|1@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 148 MAYBE_ABS: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ UNKNOWN_1 : 8|16@1+ (1,0) [0|15] "x" XXX + SG_ UNKNOWN_2 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ BRAKE_PRESSED : 35|1@1+ (1,0) [0|1] "x" XXX + SG_ UNKNOWN_3 : 46|2@1+ (1,0) [0|3] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 304 ABS_3: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 15|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 23|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 31|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 47|8@1+ (1,0) [0|255] "" XXX + SG_ DRIVER_BRAKE_PRESSURE : 48|12@1+ (1,0) [0|65535] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 144 MAYBE_ENGINE: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 8|12@1+ (1,0) [0|255] "" XXX + SG_ MAYBE_RPM : 20|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 46|14@1+ (1,0) [0|4095] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 422 MAYBE_ACC_BUTTONS: 8 XXX + SG_ NEW_SIGNAL_1 : 18|1@0+ (1,0) [0|1] "" XXX + +BO_ 560 TURN_SIGNALS: 8 XXX + SG_ RIGHT_TURN_SIGNALING : 45|1@1+ (1,0) [0|1] "" XXX + SG_ LEFT_TURN_SIGNALING : 44|1@1+ (1,0) [0|1] "" XXX + SG_ RIGHT_TURN_BULB_3 : 21|1@1+ (1,0) [0|1] "" XXX + SG_ LEFT_TURN_BULB_3 : 20|1@1+ (1,0) [0|1] "" XXX + SG_ RIGHT_TURN_BULB_2 : 19|1@1+ (1,0) [0|1] "" XXX + SG_ LEFT_TURN_BULB_2 : 18|1@1+ (1,0) [0|1] "" XXX + SG_ LEFT_TURN_BULB_1 : 16|1@1+ (1,0) [0|1] "" XXX + SG_ RIGHT_TURN_BULB_1 : 17|1@1+ (1,0) [0|1] "" XXX + +BO_ 586 DOOR_FL: 8 XXX + SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX + +BO_ 588 DOOR_FR: 8 XXX + SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX + +BO_ 590 DOOR_RL: 8 XXX + SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX + +BO_ 591 DOOR_RR: 8 XXX + SG_ OPEN : 2|1@1+ (1,0) [0|1] "" XXX + + + + +CM_ SG_ 274 UNKNOWN_ACTIVE_STATE "Triggers changes from 8 to 9 in EPS_2.LKAS_STATUS"; +CM_ SG_ 560 RIGHT_TURN_SIGNALING "Includes 2.5 second convenience lane change interval"; +CM_ SG_ 560 LEFT_TURN_SIGNALING "Includes 2.5 second convenience lane change interval"; +VAL_ 336 LKAS_STATUS 1 "INITIALIZING" 5 "READY" 8 "ACTIVE_1" 9 "ACTIVE_2" 13 "FAULT" ; +VAL_ 586 OPEN 0 "CLOSED" 1 "OPEN" ; +VAL_ 588 OPEN 0 "CLOSED" 1 "OPEN" ; +VAL_ 590 OPEN 0 "CLOSED" 1 "OPEN" ; +VAL_ 591 OPEN 0 "CLOSED" 1 "OPEN" ; diff --git a/opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc b/opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc new file mode 100644 index 0000000000..fc1e173907 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/hyundai_2015_ccan.dbc @@ -0,0 +1,1416 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: IAP ODS _4WD BCM HUD DATC MDPS AAF_Tester AEMC SMK _4WD EPB CUBIS MTS TMU EVP CGW TPMS LPI DI_BOX SPAS EMS LCA TCU IBOX FATC AFLS FPCM SCC AHLS AVM ABS SNV OPI PGS SAS AAF Dummy LDWS_LKAS LVR ESC PSB CLU ECS ACU REA + +BO_ 1532 ODS13: 5 ODS + SG_ CR_Ods_ID : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_Chksum_H : 8|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + SG_ CR_Ods_Chksum_L : 16|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + SG_ CR_Ods_RomID_H : 24|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + SG_ CR_Ods_RomID_L : 32|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + +BO_ 1531 ODS12: 8 ODS + SG_ CR_Ods_SerNum0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum3 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum4 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum5 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum6 : 48|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum7 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + +BO_ 1530 ODS11: 8 ODS + SG_ CF_Ods_PrcCmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy + SG_ CF_Ods_BtsFail : 3|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy + SG_ CF_Ods_AcuRcvSN : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_EolCal : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_PsFail : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_EcuFail : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_WgtStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_OccStat : 16|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CR_Wcs_ErrStat : 32|8@1+ (1.0,0.0) [0.0|63.0] "" ACU + SG_ CR_Wcs_ClassStat : 40|8@1+ (1.0,0.0) [0.0|4.0] "" ACU,BCM + +BO_ 1017 ECS12: 4 ECS + SG_ Height_FL : 0|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + SG_ Height_FR : 8|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + SG_ Height_RL : 16|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + SG_ Height_RR : 24|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + +BO_ 1268 SPAS12: 8 SPAS + SG_ CF_Spas_HMI_Stat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_Spas_Disp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS + SG_ CF_Spas_FIL_Ind : 10|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FIR_Ind : 13|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FOL_Ind : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FOR_Ind : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_VolDown : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_RIL_Ind : 24|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_RIR_Ind : 27|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FLS_Alarm : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_ROL_Ind : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_ROR_Ind : 35|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FCS_Alarm : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_FI_Ind : 40|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_RI_Ind : 43|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FRS_Alarm : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_FR_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Spas_RR_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Spas_BEEP_Alarm : 52|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Spas_StatAlarm : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Spas_RLS_Alarm : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_RCS_Alarm : 59|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_RRS_Alarm : 61|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1265 CLU11: 4 CLU + SG_ CF_Clu_CruiseSwState : 0|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,LDWS_LKAS,SCC + SG_ CF_Clu_CruiseSwMain : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,LDWS_LKAS,SCC + SG_ CF_Clu_SldMainSW : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Clu_ParityBit1 : 5|1@1+ (1.0,0.0) [0.0|1.0] "pulse count" EMS + SG_ CF_Clu_VanzDecimal : 6|2@1+ (0.125,0.0) [0.0|0.375] "" EMS + SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0.0) [0.0|255.5] "km/h or MPH" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC + SG_ CF_Clu_SPEED_UNIT : 17|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC + SG_ CF_Clu_DetentOut : 18|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,BCM,LCA,PGS,SPAS + SG_ CF_Clu_RheostatLevel : 19|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,BCM,LCA,PGS,SPAS + SG_ CF_Clu_CluInfo : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_AmpInfo : 25|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_AliveCnt1 : 28|4@1+ (1.0,0.0) [0.0|15.0] "" AHLS,EMS,EPB,LDWS_LKAS,MDPS,SCC + +BO_ 1492 TMU_GW_PE_01: 8 CLU + SG_ TMU_IVRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ TMU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + +BO_ 1491 HU_DATC_PE_00: 8 CLU + SG_ HU_VRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ HU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ BlowerNoiseControl : 4|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + +BO_ 1490 HU_DATC_E_02: 8 CLU + SG_ HU_DATC_RearOnOffSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ HU_DATC_ADSOnOffSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + +BO_ 1479 EMS21: 8 EMS + SG_ SCR_LEVEL_WARN_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ SCR_LEVEL_WARN : 1|3@1+ (1.0,0.0) [0.0|4.0] "" CLU + SG_ SCR_SYS_ERROR_WARN : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ SCR_SYSTEM_WARN_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ SCR_INDUCEMENT_EXIT_COND : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ SCR_UREA_LEVEL : 16|8@1+ (0.5,0.0) [0.0|100.0] "%" CLU + SG_ SCR_NO_REMAINING_RESTARTS : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ SCR_REMAINING_DISTANCE : 32|16@1+ (1.0,0.0) [0.0|25000.0] "km" CLU + +BO_ 1472 GW_Warning_PE: 8 BCM + SG_ Audio_VolumeDown : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Flh_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Fcnt_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Frh_Alarm : 52|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Rlh_Alarm : 56|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS + SG_ Pas_Spkr_Rcnt_Alarm : 58|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Rrh_Alarm : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS + +BO_ 1984 CAL_SAS11: 2 ESC + SG_ CCW : 0|4@1+ (1.0,0.0) [0.0|15.0] "" SAS + SG_ SAS_CID : 4|11@1+ (1.0,0.0) [0.0|2047.0] "" SAS + +BO_ 1456 CLU12: 4 CLU + SG_ CF_Clu_Odometer : 0|24@1+ (0.1,0.0) [0.0|1677721.4] "km" _4WD,AAF,BCM,CUBIS,EMS,EPB,IBOX,LDWS_LKAS,SCC,TPMS + +BO_ 688 SAS11: 5 MDPS + SG_ SAS_Angle : 0|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" _4WD,ACU,AFLS,AVM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU,_4WD,ACU,AFLS,AVM,BCM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU + SG_ SAS_Speed : 16|8@1+ (4.0,0.0) [0.0|1016.0] "" AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU,AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU + SG_ SAS_Stat : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ MsgCount : 32|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS + SG_ CheckSum : 36|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS + +BO_ 1441 ACU12: 8 ACU + SG_ CR_Acu_SN : 0|64@1+ (1.0,0.0) [0.0|0.0] "" ODS + +BO_ 1440 ACU11: 8 ACU + SG_ CF_Ods_SNRcv : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Ods_IDRcv : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Ods_RZReq : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Abg_DepInhEnt : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Abg_DepEnt : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_PasBkl_FltStat : 28|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB + SG_ CF_DriBkl_FltStat : 29|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB + SG_ CF_PasBkl_Stat : 30|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,ODS,PSB,TMU + SG_ CF_DriBkl_Stat : 31|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB + SG_ CF_SWL_Ind : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX + SG_ CF_Acu_FltStat : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX + SG_ CF_Acu_ExtOfSab : 36|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,CUBIS,IBOX + SG_ CF_Acu_Dtc : 40|16@1+ (1.0,0.0) [0.0|65535.0] "" CUBIS,IBOX + SG_ CF_Acu_NumOfFlt : 56|8@1+ (1.0,0.0) [0.0|255.0] "" CUBIS,IBOX + +BO_ 1437 AHLS11: 8 AHLS + SG_ CF_Ahls_WarnLamp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Ahls_WarnMsg : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1434 PSB11: 2 PSB + SG_ PSB_LH_FAIL : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ PSB_LH_TGL : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ PSB_LH_ACT : 3|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy + SG_ PSB_RH_FAIL : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ PSB_RH_TGL : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ PSB_RH_ACT : 11|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy + +BO_ 916 TCS13: 8 ESC + SG_ aBasis : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC + SG_ BrakeLight : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,SCC + SG_ DCEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ AliveCounterTCS : 13|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,SCC + SG_ ACCReqLim : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC + SG_ TQI_ACC : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS + SG_ ACCEL_REF_ACC : 32|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC + SG_ ACCEnable : 43|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC + SG_ DriverOverride : 45|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC + SG_ StandStill : 47|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ CheckSum_TCS3 : 48|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,SCC + SG_ ACC_EQUIP : 52|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ PBRAKE_ACT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ ACC_REQ : 54|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ DriverBraking : 55|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ CF_VSM_Coded : 56|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + SG_ CF_VSM_Avail : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,SCC + SG_ CF_VSM_Handshake : 59|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + SG_ CF_DriBkeStat : 60|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + SG_ CF_VSM_ConfSwi : 61|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ AEB_EQUIP : 63|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + +BO_ 1427 TPMS11: 6 BCM + SG_ TPMS_W_LAMP : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX + SG_ TREAD_W_LAMP : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX + SG_ POS_FL_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ POS_FR_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ POS_RL_W_LAMP : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ POS_RR_W_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ STATUS_TPMS : 8|3@1+ (1.0,0.0) [0.0|0.0] "" CLU + SG_ UNIT : 11|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ PRESSURE_FL : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ PRESSURE_FR : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ PRESSURE_RL : 32|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ PRESSURE_RR : 40|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + +BO_ 915 TCS12: 4 ESC + SG_ SA_COUNT : 0|16@1+ (2.0,-32768.0) [-32768.0|98302.0] "" _4WD,ACU,MDPS + SG_ SA_Z_COUNT : 16|15@1+ (2.0,-32768.0) [-32768.0|32766.0] "" _4WD,ACU,MDPS + SG_ SA_Z_FLAG : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,MDPS + +BO_ 1170 EMS19: 8 EMS + SG_ CF_Ems_BrkReq : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,TCU + SG_ CF_Ems_DnShftReq : 1|4@1+ (1.0,0.0) [0.0|14.0] "" IBOX,TCU + SG_ CF_Ems_RepModChk : 5|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX + SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,IBOX + SG_ CF_Ems_DecelReq : 8|12@1+ (0.0010,-4.094) [-4.094|0.0] "m/s^2" ESC,IBOX,TCU + SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0.0) [0.0|4094.0] "hPa" CLU,IBOX + SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40.0) [0.0|254.0] "deg" CLU,IBOX + SG_ DPF_LAMP_STAT : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX + SG_ BAT_LAMP_STAT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41.0) [-41.0|85.5] "deg" AAF,IBOX + SG_ CF_Ems_OPSFail : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU + SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU + +BO_ 1425 AFLS11: 2 AFLS + SG_ AFLS_STAT : 1|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Afls_TrfChgStat : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Afls_LedHLStat : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 912 SPAS11: 7 SPAS + SG_ CF_Spas_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,MDPS + SG_ CF_Spas_TestMode : 4|2@1+ (1.0,0.0) [0.0|3.0] "" MDPS + SG_ CR_Spas_StrAngCmd : 8|16@1- (0.1,0.0) [-3276.8|3276.7] "" MDPS + SG_ CF_Spas_BeepAlarm : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Spas_Mode_Seq : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_AliveCnt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Spas_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Spas_PasVol : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CGW,CLU + +BO_ 1168 EPB11: 7 EPB + SG_ EPB_I_LAMP : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU,CUBIS,ESC,IBOX + SG_ EPB_F_LAMP : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,ESC,IBOX + SG_ EPB_ALARM : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC + SG_ EPB_CLU : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC + SG_ EPB_SWITCH : 16|2@1+ (1.0,0.0) [0.0|3.0] "" ESC,SCC + SG_ EPB_RBL : 18|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,ESC + SG_ EPB_STATUS : 19|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC,SCC,TCU + SG_ EPB_FRC_ERR : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,SCC,TCU + SG_ EPB_DBF_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ ESP_ACK : 25|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ EPB_DBF_REQ : 26|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ EPB_FAIL : 29|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,SCC + SG_ EPB_FORCE : 32|12@1+ (1.0,-1000.0) [-1000.0|3000.0] "" ESC + SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0.0) [0.0|2.54] "g" ESC + +BO_ 399 EMS_H12: 8 EMS + SG_ R_TqAcnApvC : 0|8@1+ (0.2,0.0) [0.0|51.0] "Nm" DATC,IBOX + SG_ R_PAcnC : 8|8@1+ (125.0,0.0) [0.0|31875.0] "hPa" DATC,IBOX + SG_ TQI_B : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ABS,ESC,IBOX + SG_ SLD_VS : 24|8@1+ (1.0,0.0) [0.0|255.0] "km/h" CLU,IBOX + SG_ CF_CdaStat : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AEMC,IBOX,TCU + SG_ CF_Ems_IsgStat : 35|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,MDPS,SMK,TCU + SG_ CF_Ems_OilChg : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_EtcLimpMod : 39|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ R_NEngIdlTgC : 40|8@1+ (10.0,0.0) [0.0|2550.0] "rpm" DATC,IBOX,TCU + SG_ CF_Ems_UpTarGr : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_DownTarGr : 49|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_DesCurGr : 50|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX + SG_ CF_Ems_SldAct : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_SldPosAct : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_HPresStat : 56|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ CF_Ems_IsgBuz : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_IdlStpFCO : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_FCopen : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_ActEcoAct : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU + SG_ CF_Ems_EngRunNorm : 61|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,IBOX,TCU + SG_ CF_Ems_IsgStat2 : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX,TCU + +BO_ 1419 LCA11: 8 LCA + SG_ CF_Lca_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Rcta_Stat : 4|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Lca_IndLeft : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Rcw_Stat : 10|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_RCW_Warning : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Lca_IndRight : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Lca_SndWan_Stat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_FR_SndWan : 20|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_FL_SndWan : 21|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_RR_SndWan : 22|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_RL_SndWan : 23|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_Lca_IndBriLeft : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_Lca_IndBriRight : 32|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_RCTA_IndBriLeft : 40|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_RCTA_IndBriRight : 48|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_RCTA_IndLeft : 56|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_RCTA_IndRight : 58|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_SndWarnForClu : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 906 ABS11: 8 ABS + SG_ ABS_DEF : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EMS,SPAS,TCU + SG_ EBD_DEF : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,SPAS,TCU + SG_ ABS_ACT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EPB,SPAS,TCU + SG_ ABS_W_LAMP : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,MTS,TMU + SG_ EBD_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ ABS_DIAG : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ ESS_STAT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS + +BO_ 903 WHL_PUL11: 6 ABS + SG_ WHL_PUL_FL : 0|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_PUL_FR : 8|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_PUL_RL : 16|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_PUL_RR : 24|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_DIR_FL : 32|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_DIR_FR : 34|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_DIR_RL : 36|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_DIR_RR : 38|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_PUL_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,SPAS,TPMS,EPB,LCA,LDWS_LKAS,SPAS,TPMS + +BO_ 1415 TMU11: 8 IBOX + SG_ CF_Tmu_VehSld : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Tmu_VehImmo : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Tmu_ReqRepCnd : 2|2@1+ (1.0,0.0) [0.0|3.0] "" EMS + SG_ CF_Tmu_AirconCtr : 4|1@1+ (1.0,0.0) [0.0|1.0] "" DATC + SG_ CF_Tmu_TempMd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" DATC + SG_ CF_Tmu_TempSet : 6|16@1+ (1.0,0.0) [0.0|20.0] "" DATC + SG_ CF_Tmu_DefrostCtr : 22|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,FATC + SG_ CF_Tmu_AliveCnt1 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" EMS + +BO_ 902 WHL_SPD11: 8 ABS + SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,ACU,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,BCM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,BCM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_AliveCounter_LSB : 14|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ WHL_SPD_AliveCounter_MSB : 30|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ WHL_SPD_Checksum_LSB : 46|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ WHL_SPD_Checksum_MSB : 62|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + +BO_ 1414 EVP11: 3 EVP + SG_ CF_Evp_Stat : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 1412 AAF11: 8 AAF + SG_ CF_Aaf_ActFlapStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester + SG_ CF_Aaf_ModeStatus : 2|3@1+ (1.0,0.0) [0.0|7.0] "" AAF_Tester + SG_ CF_Aaf_WrnLamp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Aaf_ErrStatus : 6|10@1+ (1.0,0.0) [0.0|1023.0] "" AAF_Tester,EMS + SG_ CF_Aaf_OpenRqSysAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester + SG_ CF_Aaf_PStatus : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" AAF_Tester + SG_ CF_Aaf_OpenRqSysSol : 32|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester + SG_ CF_Aaf_SolFlapStatus : 40|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester + SG_ CF_Aaf_MilOnReq : 42|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 900 EMS17: 8 EMS + SG_ CF_Ems_PkpCurMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_HolCurMSV : 8|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_InjVBnkAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_InjVActSet : 24|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_DiagFulHDEV : 32|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CF_Ems_SwiOffIC1 : 33|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CF_Ems_SwiOffIC2 : 34|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CF_Ems_DiagReqHDEV : 38|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CR_Ems_DutyCycMSV : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" DI_BOX + SG_ CR_Ems_BatVolRly : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" DI_BOX + +BO_ 387 REA11: 8 REA + SG_ CF_EndBst_PwmDuH : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PwmDuL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PwmFqOutRng : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_HbriOverCur : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_HbriOverTemp : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PosSnsKOR : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PosSnsOSOR : 7|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_EepFlt : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_RomFlt : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_RamFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_CanFlt : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_AgH : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_AgL : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_ORVol : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CR_EndBst_ActPos : 16|16@1+ (0.117,0.0) [1.989|118.053] "" EMS + SG_ CR_EndBst_DemPos : 32|16@1+ (0.117,0.0) [0.0|119.691] "" EMS + SG_ CR_EndBst_HbriPwr : 48|16@1+ (0.045,0.0) [0.0|99.99] "%" EMS + +BO_ 1411 CUBIS11: 8 CUBIS + SG_ CF_Cubis_HUDisp : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + +BO_ 899 FATC11: 8 DATC + SG_ CR_Fatc_TqAcnOut : 0|8@1+ (0.2,0.0) [0.0|50.8] "Nm" EMS,IBOX + SG_ CF_Fatc_AcnRqSwi : 8|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,EMS,IBOX + SG_ CF_Fatc_AcnCltEnRq : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_EcvFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_BlwrOn : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_FATC_Iden : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Fatc_BlwrMax : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX + SG_ CF_Fatc_EngStartReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_IsgStopReq : 16|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_CtrInf : 17|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX + SG_ CF_Fatc_MsgCnt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX + SG_ CR_Fatc_OutTemp : 24|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU,EMS,IBOX,SPAS,TCU,TPMS + SG_ CR_Fatc_OutTempSns : 32|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" AAF,AHLS,CLU,EMS,IBOX,SPAS,TCU + SG_ CF_Fatc_Compload : 40|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX + SG_ CF_Fatc_ActiveEco : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Fatc_AutoActivation : 44|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX + SG_ CF_Fatc_DefSw : 45|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,IBOX + SG_ CF_Fatc_PtcRlyStat : 46|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_ChkSum : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,IBOX,SPAS + +BO_ 129 EMS_DCT12: 8 EMS + SG_ CR_Ems_SoakTimeExt : 0|6@1+ (5.0,0.0) [0.0|315.0] "Min" TCU + SG_ BRAKE_ACT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" TCU + SG_ CF_Ems_EngOperStat : 8|8@1+ (1.0,0.0) [0.0|255.0] "" TCU + SG_ CR_Ems_IndAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" TCU + SG_ CF_Ems_Alive2 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Ems_ChkSum2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + +BO_ 897 MDPS11: 8 MDPS + SG_ CF_Mdps_WLmp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,EMS,IBOX,SPAS + SG_ CF_Mdps_Flex : 2|3@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS + SG_ CF_Mdps_FlexDisp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Mdps_Stat : 7|4@1+ (1.0,0.0) [0.0|15.0] "" SPAS + SG_ CR_Mdps_DrvTq : 11|12@1+ (0.01,-20.48) [-20.48|20.46] "" SPAS + SG_ CF_Mdps_ALTRequest : 23|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CR_Mdps_StrAng : 24|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" SPAS + SG_ CF_Mdps_AliveCnt : 40|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS + SG_ CF_Mdps_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS + SG_ CF_Mdps_SPAS_FUNC : 57|1@1+ (1.0,0.0) [0.0|1.0] "flag" SPAS + SG_ CF_Mdps_LKAS_FUNC : 58|1@1+ (1.0,0.0) [0.0|1.0] "flag" LDWS_LKAS + SG_ CF_Mdps_CurrMode : 59|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Mdps_Type : 61|2@1+ (1.0,0.0) [0.0|2.0] "" LDWS_LKAS,SPAS + +BO_ 896 DI_BOX13: 8 DI_BOX + SG_ CF_DiBox_HPreInjVConfStat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVStat1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVStat2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVPkp : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVBpt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_ErrRegFrtMSV : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_ErrRegSedMSV : 48|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SPIErrSedMSV : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_SPIErrFrtMSV : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_IDErrSedMSV : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_IDErrFrtMSV : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_IniStatMSV : 60|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 640 EMS13: 8 EMS + SG_ LV_FUEL_TYPE_ECU : 0|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,LPI,SMK + SG_ LV_BFS_CFIRM : 1|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_CRASH : 2|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_VB_OFF_ACT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_GSL_MAP M : 4|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_ENG_TURN : 5|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ ERR_FUEL : 8|8@1+ (1.0,0.0) [0.0|255.0] "" LPI + SG_ EOS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" LPI + SG_ TCO : 24|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI + SG_ N_32 : 32|8@1+ (32.0,0.0) [0.0|8160.0] "rpm" LPI + SG_ MAF : 40|8@1+ (5.447,0.0) [0.0|1388.985] "mg/TDC" LPI + SG_ TIA : 48|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI + SG_ MAP m1 : 56|8@1+ (0.47058,0.0) [0.0|119.9979] "kPa" LPI + SG_ AMP m0 : 56|8@1+ (21.22,0.0) [0.0|5411.1] "hPa" LPI + +BO_ 128 EMS_DCT11: 8 EMS + SG_ PV_AV_CAN : 0|8@1+ (0.3906,0.0) [0.0|99.603] "%" TCU + SG_ TQ_STND : 8|6@1+ (10.0,0.0) [0.0|630.0] "Nm" TCU + SG_ F_N_ENG : 14|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ F_SUB_TQI : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" TCU + SG_ TQI_ACOR : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" IBOX,TCU + SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" TCU + SG_ TQI : 48|8@1+ (0.390625,0.0) [0.0|99.609375] "%" TCU + SG_ CF_Ems_Alive : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Ems_ChkSum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + +BO_ 1407 HU_MON_PE_01: 8 CLU + SG_ HU_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" AVM,PGS + +BO_ 127 CGW5: 8 BCM + SG_ C_StopLampLhOpenSts : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_StopLampRhOpenSts : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HMSLOpenSts : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampLowLhOpenSts : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampLowRhOpenSts : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampHighLhOpenSts : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampHighRhOpenSts : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_DRLLampLhOpenSts : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_DRLLampRhOpenSts : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearFOGLhOpenSts : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearFOGRhOpenSts : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontFOGLhOpenSts : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontFOGRhOpenSts : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearEXTTailLhOpenSts : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearEXTTailRhOpenSts : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontEXTTailLhOpenSts : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontEXTTailRhOpenSts : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearTSIGLhOpenSts : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearTSIGRhOpenSts : 18|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontTSIGLhOpenSts : 19|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontTSIGRhOpenSts : 20|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_SBendingLhOpenSts : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_SBendingRhOpenSts : 22|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_LicensePlateLhOpenSts : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_LicensePlateRhOpenSts : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 1151 ESP11: 6 ESC + SG_ AVH_STAT : 0|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,TCU + SG_ LDM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EPB,TCU + SG_ REQ_EPB_ACT : 3|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,TCU + SG_ REQ_EPB_STAT : 5|1@1+ (1.0,0.0) [0.0|1.0] "" EPB + SG_ ECD_ACT : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EPB + SG_ _4WD_LIM_REQ : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS + SG_ ROL_CNT_ESP : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,TCU + SG_ _4WD_TQC_LIM : 16|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" _4WD,EMS + SG_ _4WD_CLU_LIM : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" _4WD,EMS + SG_ _4WD_OPEN : 40|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS + SG_ _4WD_LIM_MODE : 42|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD + +BO_ 1397 HU_AVM_E_00: 8 CLU + SG_ HU_AVM_Cal_Cmd : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_Cal_Method : 4|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + SG_ HU_AVM_Save_Controlpoint : 6|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + SG_ HU_AVM_PT_X : 8|12@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_RearViewPointOpt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_PT_Y : 24|12@1+ (1.0,0.0) [0.0|4095.0] "" AVM,PGS + SG_ HU_AVM_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_SelectedMenu : 40|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS + SG_ HU_AVM_CameraOff : 45|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + SG_ HU_AVM_Option : 48|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_CrossLineMove_Cmd : 52|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_RearView_Option : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_FrontView_Option : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + +BO_ 1395 HU_AVM_E_01: 8 CLU + SG_ HU_PGSSelectedMenu : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_PGSOption : 8|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS + SG_ HU_AVM_ParkingAssistMenu : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_ParkingAssistSB : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + +BO_ 1393 OPI11: 5 OPI + SG_ CR_Opi_Spd_Rpm : 0|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" TCU + SG_ CF_Opi_Over_Temp : 8|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Opi_Over_Cur : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU + SG_ CF_Opi_Over_Vol : 10|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Opi_Hall_Fail : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU + SG_ CF_Opi_Flt : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU + SG_ CF_Opi_Motor_Dir : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Opi_Romver : 16|8@1+ (1.0,0.0) [0.0|255.0] "" TCU + SG_ CF_Opi_PWM_Rate : 24|12@1+ (1.0,0.0) [0.0|100.0] "%" TCU + +BO_ 625 LPI11: 8 LPI + SG_ FUP_LPG_MMV : 0|8@1+ (128.0,0.0) [0.0|32640.0] "hPa" EMS + SG_ LV_FUEL_TYPE_BOX : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_BFS_IN_PROGRESS : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_GAS_OK : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_FUP_ENA_THD : 11|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,EMS,SMK + SG_ LPI_OBD : 12|4@1+ (1.0,0.0) [0.0|15.0] "" EMS + SG_ ERR_GAS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ FAC_TI_GAS_COR : 24|16@1+ (3.05E-5,0.0) [0.0|1.9988175] "" EMS + SG_ FTL_AFU : 40|8@1+ (0.392,0.0) [0.0|99.96] "%" EMS + SG_ BFS_CYL : 48|8@1+ (1.0,0.0) [0.0|6.0] "Cyl Nr." EMS + SG_ LV_PRE_CDN_LEAK : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_CONF_INJECTION_DELAY : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_LPG_SW_DRIVER_REQ : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 356 VSM11: 4 ESC + SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" MDPS + SG_ CF_Esc_Act : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,MDPS + SG_ CF_Esc_CtrMode : 13|3@1+ (1.0,0.0) [0.0|7.0] "" MDPS + SG_ CF_Esc_Def : 16|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Esc_AliveCnt : 17|4@1+ (1.0,0.0) [0.0|15.0] "" LDWS_LKAS,MDPS + SG_ CF_Esc_Chksum : 24|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,MDPS + +BO_ 1379 PGS_HU_PE_01: 8 PGS + SG_ PGS_State : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ PGS_ParkGuideState : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ PGS_Option : 16|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ PGS_Version : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU + +BO_ 354 TCU_DCT13: 3 TCU + SG_ Clutch_Driving_Tq : 0|10@1+ (1.0,-512.0) [0.0|0.0] "Nm" ESC + SG_ Cluster_Engine_RPM : 10|13@1+ (0.9766,0.0) [0.0|0.0] "" CLU + SG_ Cluster_Engine_RPM_Flag : 23|1@1+ (1.0,0.0) [0.0|0.0] "" CLU + +BO_ 1378 HUD11: 4 HUD + SG_ CF_Hud_HeightStaus : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ CF_Hud_PBackStatus : 6|2@1+ (1.0,0.0) [0.0|0.0] "" BCM,CLU + SG_ CF_Hud_Brightness : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + +BO_ 608 EMS16: 8 EMS + SG_ TQI_MIN : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU + SG_ TQI : 8|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU + SG_ TQI_TARGET : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EPB,ESC,IBOX,TCU + SG_ GLOW_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,IBOX,SMK + SG_ CRUISE_LAMP_M : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU + SG_ CRUISE_LAMP_S : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU + SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ ENG_STAT : 28|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,AHLS,AVM,BCM,CLU,EPB,ESC,EVP,FPCM,IBOX,LCA,LDWS_LKAS,MDPS,SCC,SMK,TCU + SG_ SOAK_TIME_ERROR : 31|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EPB,IBOX,TCU + SG_ SOAK_TIME : 32|8@1+ (1.0,0.0) [0.0|255.0] "Min" _4WD,DATC,EPB,IBOX,TCU + SG_ TQI_MAX : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU + SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [-35.625|60.0] "" IBOX,TCU + SG_ Checksum : 56|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,IBOX,LDWS_LKAS,MDPS,SCC + SG_ AliveCounter : 60|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,LDWS_LKAS,MDPS,SCC + SG_ CF_Ems_AclAct : 62|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,SCC + +BO_ 1371 AVM_HU_PE_00: 8 AVM + SG_ AVM_View : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ AVM_ParkingAssist_BtnSts : 5|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ AVM_Display_Message : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ AVM_Popup_Msg : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_Ready : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_ParkingAssist_Step : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_FrontBtn_Type : 28|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_Option : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_HU_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_HU_RearView_Option : 40|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_HU_FrontView_Option : 44|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_Version : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU + +BO_ 1370 HU_AVM_PE_00: 8 CLU + SG_ HU_AVM_Status : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + +BO_ 1369 CGW4: 8 BCM + SG_ CF_Gway_MemoryP1Cmd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_MemoryP2Cmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBackP1Cmd : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBackP2Cmd : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_StrgWhlHeatedState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBackStopCmd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD + SG_ CF_Gway_StaticBendLhAct : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_StaticBendRhAct : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_DrvWdwStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_RLWdwState : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_RRWdwState : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_AstWdwStat : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_MemoryEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBACKStopCmd : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBACKStop : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD + SG_ CF_Gway_IMSBuzzer : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_DrvSeatBeltInd : 36|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_AstSeatBeltInd : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RCSeatBeltInd : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RLSeatBeltInd : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RRSeatBeltInd : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RrWiperHighSw : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_RrWiperLowSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 1367 EngFrzFrm12: 8 EMS + SG_ PID_06h : 0|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_07h : 8|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_08h : 16|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_09h : 24|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_0Bh : 32|8@1+ (1.0,0.0) [0.0|255.0] "kPa" AAF,IBOX,TCU + SG_ PID_23h : 40|16@1+ (10.0,0.0) [0.0|655350.0] "kPa" AAF,IBOX,TCU + +BO_ 1366 EngFrzFrm11: 8 EMS + SG_ PID_04h : 0|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU + SG_ PID_05h : 8|8@1+ (1.0,-40.0) [-40.0|215.0] "deg" AAF,TCU + SG_ PID_0Ch : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" AAF,TCU + SG_ PID_0Dh : 32|8@1+ (1.0,0.0) [0.0|255.0] "km/h" AAF,TCU + SG_ PID_11h : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU + SG_ PID_03h : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" AAF,TCU + +BO_ 1365 FPCM11: 8 FPCM + SG_ CR_Fpcm_LPActPre : 0|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" EMS + SG_ CF_Fpcm_LPPumpOverCur : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrHi : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrDisc : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrShort : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_LPPumpDiscShort : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_LP_System_Error : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrSigErr : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_LPCtrCirFlt : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 852 LVR11: 7 LVR + SG_ CF_Lvr_GearInf : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,TCU + SG_ CF_Lvr_PRelStat : 4|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,SMK,TCU + SG_ CF_Lvr_BkeAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Lvr_NFnStat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Lvr_PosInf : 8|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_PosCpl : 12|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_UlkButStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" TCU + SG_ CF_Lvr_PNStat : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lvr_ShtLkStat : 24|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_ShfErrInf : 28|20@1+ (1.0,0.0) [0.0|8191.0] "" CLU,TCU + SG_ CF_Lvr_AC : 48|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_CS : 52|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + +BO_ 1363 CGW2: 8 BCM + SG_ CF_Gway_GwayDiagState : 0|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_DDMDiagState : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SCMDiagState : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_PSMDiagState : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SJBDiagState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_IPMDiagState : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_LDMFail : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS,LDWS_LKAS + SG_ CF_Gway_CLUSwGuiCtrl : 10|3@1+ (1.0,0.0) [0.0|63.0] "" CLU,Dummy + SG_ CF_Gway_CLUSwGroup : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_CLUSwMode : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_CLUSwEnter : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_AutoLightValue : 16|1@1+ (1.0,0.0) [0.0|1.0] "" LCA,LCA + SG_ CF_Gway_BrakeFluidSw : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_DrvSeatBeltInd : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_AvTail : 20|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,SNV,SNV + SG_ CF_Gway_RearFogAct : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ExtTailAct : 22|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,CLU,LCA,PGS,SPAS,AVM,LCA,PGS,SPAS + SG_ CF_Gway_RRDrSw : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_RLDrSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_IntTailAct : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_CountryCfg : 26|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,Dummy + SG_ CF_Gway_WiperParkPosition : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,EMS,LDWS_LKAS,AFLS,EMS,LDWS_LKAS + SG_ CF_Gway_HLLowLHFail : 33|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV + SG_ CF_Gway_HLLowRHFail : 34|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV + SG_ CF_Gway_ESCLFailWarn : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ESCLNotLockedWarn : 36|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ESCLNotUnlockWarn : 37|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_IDoutWarn : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ImmoLp : 40|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_BCMRKEID : 41|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + SG_ CF_Gway_VehicleNotPWarn : 44|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_DeactivationWarn : 45|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_KeyBATDischargeWarn : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SSBWarn : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SMKFobID : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + SG_ CF_Gway_SMKRKECmd : 51|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + SG_ CF_Gway_AutoLightOption : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_SJBDeliveryMode : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_KeyoutLp : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SMKDispWarn : 57|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,Dummy + SG_ CF_Gway_WngBuz : 61|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + +BO_ 339 TCS11: 8 ESC + SG_ TCS_REQ : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,TCU + SG_ MSR_C_REQ : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,SCC,TCU + SG_ TCS_PAS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,SCC,SPAS,TCU + SG_ TCS_GSC : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,TCU + SG_ CF_Esc_LimoInfo : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,SCC + SG_ ABS_DIAG : 6|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB + SG_ ABS_DEF : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,SCC,SPAS,TCU + SG_ TCS_DEF : 8|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU + SG_ TCS_CTL : 9|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU + SG_ ABS_ACT : 10|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU + SG_ EBD_DEF : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SPAS,TCU + SG_ ESP_PAS : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU,EMS,EPB,LDWS_LKAS,SCC,TCU + SG_ ESP_DEF : 13|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,TCU + SG_ ESP_CTL : 14|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU + SG_ TCS_MFRN : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,TCU + SG_ DBC_CTL : 16|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB + SG_ DBC_PAS : 17|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB + SG_ DBC_DEF : 18|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB + SG_ HAC_CTL : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU + SG_ HAC_PAS : 20|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU + SG_ HAC_DEF : 21|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU + SG_ ESS_STAT : 22|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS,EPB + SG_ TQI_TCS : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU + SG_ TQI_MSR : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU + SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU + SG_ CF_Esc_BrkCtl : 48|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ BLA_CTL : 49|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CGW,CLU + SG_ AliveCounter_TCS1 : 52|4@1+ (1.0,0.0) [0.0|14.0] "" EMS,EPB,LDWS_LKAS + SG_ CheckSum_TCS1 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,EPB,LDWS_LKAS + +BO_ 1362 SNV11: 4 SNV + SG_ CF_SNV_DisplayControl : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD + SG_ CF_Snv_BeepWarning : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD + SG_ CF_Snv_WarningMessage : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,HUD + SG_ CF_Snv_DetectionEnable : 7|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,HUD + SG_ CF_Snv_PedestrianDetect : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD + SG_ CF_Snv_IRLampControl : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD + +BO_ 593 MDPS12: 8 MDPS + SG_ CR_Mdps_StrColTq : 0|11@1+ (0.0078125,-8.0) [-8.0|7.9921875] "Nm" LDWS_LKAS + SG_ CF_Mdps_Def : 11|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ CF_Mdps_ToiUnavail : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_ToiActive : 13|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_ToiFlt : 14|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_FailStat : 15|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_MsgCount2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS + SG_ CF_Mdps_Chksum2 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS + SG_ CF_Mdps_SErr : 37|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ CR_Mdps_StrTq : 40|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" ESC + SG_ CR_Mdps_OutTq : 52|12@1+ (0.1,-204.8) [-204.8|204.7] "" ESC,LDWS_LKAS + +BO_ 1360 IAP11: 3 IAP + SG_ CF_Iap_EcoPmodSwi : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Iap_EcoPmodAct : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Iap_ReqWarn : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1356 TCU_DCT14: 8 TCU + SG_ Vehicle_Stop_Time : 0|5@1+ (1.0,0.0) [0.0|0.0] "" CLU + SG_ HILL_HOLD_WARNING : 5|1@1+ (1.0,0.0) [0.0|0.0] "" CLU + +BO_ 1353 BAT11: 8 EMS + SG_ BAT_SNSR_I : 0|16@1+ (0.01,-327.0) [-327.0|328.0] "A" CGW,CUBIS,IBOX,TMU + SG_ BAT_SOC : 16|8@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_V : 24|14@1+ (0.0010,6.0) [6.0|18.0] "V" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_Temp : 38|9@1- (0.5,-40.0) [-40.0|125.0] "deg" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_State : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU + SG_ BAT_SOH : 48|7@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_Invalid : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU + SG_ BAT_SOF : 56|7@1+ (0.1,0.0) [0.0|12.0] "V" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_Error : 63|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU + +BO_ 1351 EMS15: 8 EMS + SG_ ECGPOvrd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,SCC + SG_ QECACC : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ ECFail : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ SwitchOffCondExt : 3|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ BLECFail : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ CF_Ems_IsaAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ FA_PV_CAN : 8|8@1+ (0.3906,0.0) [0.0|99.2] "%" IBOX,LDWS_LKAS,TCU + SG_ IntAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,ECS,EPB,IBOX,TCU + SG_ STATE_DC_OBD : 24|7@1+ (1.0,0.0) [0.0|127.0] "" IBOX,TCU + SG_ INH_DC_OBD : 31|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ CTR_IG_CYC_OBD : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" ACU,IBOX,TCU + SG_ CTR_CDN_OBD : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" IBOX,TCU + +BO_ 1350 DI_BOX12: 8 DI_BOX + SG_ CF_DiBox_FrtInjVDiagReg0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_FrtInjVDiagReg1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_FrtInjVDiagReg2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SedInjVDiagReg0 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SedInjVDiagReg1 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SedInjVDiagReg2 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CR_DiBox_BatVol : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" EMS + SG_ CF_DiBox_SedInjVChg : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_FrtInjVChg : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_SedInjVErrSPI : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_FrtInjVErrSPI : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 1349 EMS14: 8 EMS + SG_ IMMO_LAMP_STAT : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ L_MIL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX + SG_ IM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ AMP_CAN : 3|5@1+ (10.731613,458.98) [458.98|791.660003] "mmHg" CLU,IBOX,TCU,TPMS + SG_ BAT_Alt_FR_Duty : 8|8@1+ (0.4,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU + SG_ VB : 24|8@1+ (0.1015625,0.0) [0.0|25.8984375] "V" CLU,CUBIS,DATC,EPB,FPCM,IBOX + SG_ EMS_VS : 32|12@1+ (0.0625,0.0) [0.0|255.875] "km/h" CLU + SG_ TEMP_FUEL : 56|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" FPCM + +BO_ 68 DATC11: 8 DATC + SG_ CF_Datc_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_Datc_VerMaj : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_Datc_VerMin : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CR_Datc_OutTempC : 24|8@1+ (0.5,-41.0) [-41.0|86.5] "deg" CLU,FPCM + SG_ CR_Datc_OutTempF : 32|8@1+ (1.0,-42.0) [-42.0|213.0] "deg" CLU + SG_ CF_Datc_IncarTemp : 40|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU + +BO_ 67 DATC13: 8 DATC + SG_ CF_Datc_TempDispUnit : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX + SG_ CF_Datc_ModDisp : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_IonClean : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_ChgReqDisp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_IntakeDisp : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_AutoDisp : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_FrDefLed : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX + SG_ CF_Datc_AutoDefogBlink : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_ClmScanDisp : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_AqsDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_AcDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_OpSts : 25|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Mtc_MaxAcDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_DualDisp : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_PwrInf : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_RearManual : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearAutoDisp : 40|2@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Datc_RearOffDisp : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearClimateScnDisp : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearChgReqDisp : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearModDisp : 48|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_RearBlwDisp : 52|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_PSModDisp : 56|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_FrontBlwDisp : 60|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX + +BO_ 66 DATC12: 8 DATC + SG_ CR_Datc_DrTempDispC : 0|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX + SG_ CR_Datc_DrTempDispF : 8|8@1+ (1.0,56.0) [58.0|90.0] "" CLU,IBOX + SG_ CR_Datc_PsTempDispC : 16|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX + SG_ CR_Datc_PsTempDispF : 24|8@1+ (1.0,56.0) [58.0|90.0] "" CLU,IBOX + SG_ CR_Datc_RearDrTempDispC : 40|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU + SG_ CR_Datc_RearDrTempDispF : 48|8@1+ (1.0,58.0) [58.0|90.0] "" CLU + SG_ CF_Datc_CO2_Warning : 56|8@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1345 CGW1: 8 BCM + SG_ CF_Gway_IGNSw : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC + SG_ CF_Gway_RKECmd : 3|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX + SG_ CF_Gway_DrvKeyLockSw : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX + SG_ CF_Gway_DrvKeyUnlockSw : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX + SG_ CF_Gway_DrvDrSw : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU + SG_ CF_Gway_DrvSeatBeltSw : 10|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,PSB,TCU,EMS,EPB,ESC,IBOX,PSB,TCU + SG_ CF_Gway_TrunkTgSw : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,ECS,EMS,EPB,ESC,IBOX + SG_ CF_Gway_AstSeatBeltSw : 14|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,PSB,IBOX,PSB + SG_ CF_Gway_SMKOption : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,EMS,IBOX,SMK + SG_ CF_Gway_HoodSw : 17|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,EPB,ESC,IBOX,EMS,EPB,ESC,IBOX + SG_ CF_Gway_TurnSigLh : 19|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC + SG_ CF_Gway_WiperIntT : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperIntSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperLowSw : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperHighSw : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperAutoSw : 27|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_RainSnsState : 28|3@1+ (1.0,0.0) [0.0|7.0] "" AFLS,EMS,IBOX,LDWS_LKAS,AFLS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_HeadLampLow : 31|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,SNV,AFLS,EMS,IBOX,LDWS_LKAS,SNV + SG_ CF_Gway_HeadLampHigh : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,AFLS,EMS,IBOX,LDWS_LKAS + SG_ CF_Gway_HazardSw : 33|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS,ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS + SG_ CF_Gway_AstDrSw : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,IBOX + SG_ CF_Gway_DefoggerRly : 36|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX + SG_ CF_Gway_ALightStat : 37|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_LightSwState : 38|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_Frt_Fog_Act : 40|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_TSigRHSw : 41|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_TSigLHSw : 42|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_DriveTypeOption : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_StarterRlyState : 44|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX,SMK + SG_ CF_Gway_PassiveAccessLock : 45|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK + SG_ CF_Gway_WiperMistSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS + SG_ CF_Gway_PassiveAccessUnlock : 48|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK + SG_ CF_Gway_RrSunRoofOpenState : 50|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX + SG_ CF_Gway_PassingSW : 51|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_HBAControlMode : 52|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_HLpHighSw : 53|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_InhibitRMT : 54|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,MDPS,PGS,SCC,SPAS,TPMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,PGS,SCC,SPAS,TPMS + SG_ CF_Gway_RainSnsOption : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_SunRoofOpenState : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX,DATC,IBOX + SG_ CF_Gway_Ign1 : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_Ign2 : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_ParkBrakeSw : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IBOX,SCC,ESC,IBOX,SCC + SG_ CF_Gway_TurnSigRh : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC + +BO_ 64 DATC14: 8 DATC + SG_ CF_Datc_AqsLevelOut : 0|4@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_DiagMode : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CR_Datc_SelfDiagCode : 8|8@1+ (1.0,-1.0) [0.0|254.0] "" CLU + SG_ DATC_SyncDisp : 16|4@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_OffDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_SmartVentDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_SmartVentOnOffStatus : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_AutoDefogSysOff_Disp : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_ADSDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 832 LKAS11: 8 LDWS_LKAS + SG_ CF_Lkas_LdwsSysState : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX,PSB + SG_ CF_Lkas_SysWarning : 6|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Lkas_LdwsLHWarning : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB + SG_ CF_Lkas_LdwsRHWarning : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB + SG_ CF_Lkas_HbaLamp : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Lkas_FcwBasReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC + SG_ CR_Lkas_StrToqReq : 16|11@1+ (0.0078125,-8.0) [-8.0|8.0] "Nm" MDPS + SG_ CF_Lkas_ActToi : 27|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Lkas_ToiFlt : 28|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Lkas_HbaSysState : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM,CLU + SG_ CF_Lkas_FcwOpt : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lkas_HbaOpt : 34|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CGW + SG_ CF_Lkas_MsgCount : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,MDPS + SG_ CF_Lkas_FcwSysState : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Lkas_FcwCollisionWarning : 43|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lkas_FusionState : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Lkas_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Lkas_FcwOpt_USM : 56|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Lkas_LdwsOpt_USM : 59|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,MDPS + +BO_ 1342 LKAS12: 6 LDWS_LKAS + SG_ CF_Lkas_TsrSlifOpt : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_LkasTsrStatus : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lkas_TsrSpeed_Display_Clu : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_LkasTsrSpeed_Display_Navi : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_Lkas_TsrAddinfo_Display : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1338 TMU_GW_E_01: 8 CLU + SG_ CF_Gway_TeleReqDrLock : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqDrUnlock : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqHazard : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqHorn : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqEngineOperate : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 1078 PAS11: 4 BCM + SG_ CF_Gway_PASDisplayFLH : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM + SG_ CF_Gway_PASDisplayFRH : 3|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM + SG_ CF_Gway_PASRsound : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASDisplayFCTR : 8|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM + SG_ CF_Gway_PASDisplayRCTR : 11|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM + SG_ CF_Gway_PASFsound : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASDisplayRLH : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM + SG_ CF_Gway_PASDisplayRRH : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM + SG_ CF_Gway_PASCheckSound : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASSystemOn : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASOption : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PASDistance : 28|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 48 EMS18: 6 EMS + SG_ CF_Ems_DC1NumPerMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_DC2NumPerMSV : 8|16@1+ (1.0,0.0) [0.0|65535.0] "" DI_BOX + SG_ CR_Ems_DutyCyc1MSV : 24|8@1+ (0.1953,0.0) [0.0|49.8] "%" DI_BOX + SG_ CR_Ems_DutyCyc2MSV : 32|8@1+ (0.13725,0.0) [0.0|35.0] "%" DI_BOX + SG_ CR_Ems_DutyCyc3MSV : 40|8@1+ (0.392,0.0) [0.0|100.0] "%" DI_BOX + +BO_ 1322 CLU15: 8 CLU + SG_ CF_Clu_VehicleSpeed : 0|8@1+ (1.0,0.0) [0.0|255.0] "" BCM + SG_ CF_Clu_InhibitP : 9|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_InhibitR : 10|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_InhibitN : 11|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_InhibitD : 12|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_HudInfoSet : 13|7@1+ (1.0,0.0) [0.0|127.0] "" HUD + SG_ CF_Clu_HudFontColorSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudBrightUpSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudBrightDnSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudHeightUpSW : 26|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudHeightDnSW : 28|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudSet : 30|1@1+ (1.0,0.0) [0.0|1.0] "" HUD + SG_ CF_Clu_HudFontSizeSet : 31|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_LanguageInfo : 33|5@1+ (1.0,0.0) [0.0|31.0] "" BCM,PGS + SG_ CF_Clu_ClusterSound : 38|1@1- (1.0,0.0) [0.0|0.0] "" BCM,CGW,FATC + +BO_ 1066 _4WD13: 6 _4WD + SG_ _4WD_CURRENT : 0|8@1+ (0.390625,0.0) [-50.0|50.0] "A" TCU + SG_ _4WD_POSITION : 8|16@1+ (0.015625,0.0) [-180.0|180.0] "Deg" TCU + SG_ _4WD_CLU_THERM_STR : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" TCU + SG_ _4WD_STATUS : 32|8@1+ (1.0,0.0) [0.0|15.0] "" ESC,TCU + +BO_ 1065 _4WD12: 8 _4WD + SG_ Ster_Pos : 0|16@1+ (1.0,-600.0) [-600.0|600.0] "Deg" ESC + SG_ FRSS : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ FLSS : 24|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ RRSS : 32|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ RLSS : 40|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ CLU_PRES : 48|16@1+ (0.0625,-50.0) [-50.0|50.0] "Bar" ESC + +BO_ 809 EMS12: 8 EMS + SG_ CONF_TCU m1 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LCA,SMK + SG_ CAN_VERS m0 : 0|6@1+ (1.0,0.0) [0.0|7.7] "" _4WD,ABS,ESC,IBOX + SG_ TQ_STND m3 : 0|6@1+ (10.0,0.0) [0.0|630.0] "Nm" _4WD,DATC,ECS,EPB,ESC,FATC,IBOX + SG_ OBD_FRF_ACK m2 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ESC,IBOX + SG_ MUL_CODE M : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,BCM,CLU,DATC,ECS,EPB,ESC,IBOX,LCA,SMK,TCU + SG_ TEMP_ENG : 8|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,BCM,CLU,DATC,EPB,ESC,IBOX,SMK,TCU + SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0.0) [0.0|1.99155] "" IBOX,TCU + SG_ VB_OFF_ACT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ ACK_ES : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,IBOX + SG_ CONF_MIL_FMY : 26|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,IBOX,TCU + SG_ OD_OFF_REQ : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ ACC_ACT : 30|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,CLU,ESC,IAP,IBOX,SCC,TCU + SG_ CLU_ACK : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EPB,ESC,IBOX + SG_ BRAKE_ACT : 32|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,AFLS,CLU,DATC,ECS,EPB,ESC,IBOX,LDWS_LKAS,TCU + SG_ ENG_CHR : 34|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,ABS,ACU,CLU,DATC,EPB,ESC,FATC,IBOX,SCC,SMK,TCU + SG_ GP_CTL : 38|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX + SG_ TPS : 40|8@1+ (0.4694836,-15.0234742) [-15.0234742|104.6948357] "%" _4WD,ABS,ACU,CLU,DATC,ECS,EPB,ESC,IBOX,TCU + SG_ PV_AV_CAN : 48|8@1+ (0.3906,0.0) [0.0|99.603] "%" _4WD,AAF,ABS,ACU,AFLS,CLU,DATC,EPB,ESC,IAP,IBOX,LDWS_LKAS,SCC,TCU + SG_ ENG_VOL : 56|8@1+ (0.1,0.0) [0.0|25.5] "liter" _4WD,ABS,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,SCC,SMK + +BO_ 1064 _4WD11: 8 _4WD + SG_ _4WD_TYPE : 0|2@1+ (1.0,0.0) [0.0|3.0] "" ACU,ESC,TPMS + SG_ _4WD_SUPPORT : 2|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,ESC,TPMS + SG_ _4WD_ERR : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC + SG_ CLU_DUTY : 16|8@1+ (1.0,0.0) [0.0|64.0] "%" ABS,ESC + SG_ R_TIRE : 24|8@1+ (1.0,200.0) [200.0|455.0] "mm" ABS,ESC,TPMS + SG_ _4WD_SW : 32|8@1+ (1.0,0.0) [0.0|9.9] "" ESC + SG_ _2H_ACT : 40|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC + SG_ _4H_ACT : 41|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS + SG_ LOW_ACT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TCU,TPMS + SG_ AUTO_ACT : 43|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TPMS + SG_ LOCK_ACT : 44|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS + SG_ _4WD_TQC_CUR : 48|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" ABS,ESC + +BO_ 1319 HU_GW_E_01: 8 CLU + SG_ C_ADrLNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ C_ADrUNValueSet : 4|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ C_TwUnNValueSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_ABuzzerNValueSet : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_ArmWKeyNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_PSMNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_SCMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_HLEscortNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_WELNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_TriTurnLNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_SNVWarnNValueSet : 24|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_LkasWarnNValueSet : 26|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 1318 HU_GW_E_00: 8 CLU + SG_ C_ADrLURValueReq : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_TwUnRValueReq : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_AlarmRValueReq : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_IMSRValueReq : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_HLEscortRValueReq : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_WELRValueReq : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_TriTurnLRValueReq : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_SNVWarnRValueReq : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_LkasWarnRValueReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 1317 GW_HU_E_01: 8 BCM + SG_ C_ADrLRValue : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_ADrURValue : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_TwUnRValue : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ABuzzerRValue : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ArmWKeyRValue : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_PSMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SCMRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_HLEscortRValue : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_WELRValue : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TriTurnLRValue : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1316 GW_HU_E_00: 8 BCM + SG_ C_ADrLUNValueConf : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TwUnNValueConf : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_AlarmNValueConf : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_PSMNValueConf : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SCMNValueConf : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_HLEscortNValueConf : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_WELNValueConf : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TriTurnLNValueConf : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1315 GW_SWRC_PE: 8 BCM + SG_ C_ModeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_MuteSW : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SeekDnSW : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SeekUpSW : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_BTPhoneCallSW : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_BTPhoneHangUpSW : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_DISCDownSW : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_DISCUpSW : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SdsSW : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_MTSSW : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_VolDnSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_VolUpSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1314 GW_IPM_PE_1: 8 BCM + SG_ C_AV_Tail : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ParkingBrakeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_RKECMD : 4|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ C_BAState : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_IGNSW : 12|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_CountryCfg : 16|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_TailLampActivity : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ RearSW_RSELockOnOff : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SMKTeleCrankingState : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SMKTeleCrankingFailRes : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1057 SCC12: 8 SCC + SG_ CF_VSM_Prefill : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ CF_VSM_DecCmdAct : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ CF_VSM_HBACmd : 2|2@1+ (1.0,0.0) [0.0|3.0] "" ESC + SG_ CF_VSM_Warn : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IAP + SG_ CF_VSM_Stat : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,PSB + SG_ CF_VSM_BeltCmd : 8|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,PSB + SG_ ACCFailInfo : 11|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,ESC,IBOX + SG_ ACCMode : 13|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IBOX,TCU + SG_ StopReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EPB,ESC + SG_ CR_VSM_DecCmd : 16|8@1+ (0.01,0.0) [0.0|2.55] "g" ESC + SG_ aReqMax : 24|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,ESC,TCU + SG_ TakeOverReq : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,ESC,TCU + SG_ PreFill : 36|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,TCU + SG_ aReqMin : 37|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,ESC,TCU + SG_ CF_VSM_ConfMode : 48|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC + SG_ AEB_Failinfo : 50|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC + SG_ AEB_Status : 52|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC + SG_ AEB_CmdAct : 54|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ AEB_StopReq : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,ESC + SG_ CR_VSM_Alive : 56|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,PSB + SG_ CR_VSM_ChkSum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,PSB + +BO_ 1313 GW_DDM_PE: 8 BCM + SG_ C_DRVDoorStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ASTDoorStatus : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_RLDoorStatus : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_RRDoorStatus : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TrunkStatus : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_OSMirrorStatus : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1056 SCC11: 8 SCC + SG_ MainMode_ACC : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,ESC + SG_ SCCInfoDisplay : 1|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ESC + SG_ AliveCounterACC : 4|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,EMS,ESC,TCU + SG_ VSetDis : 8|8@1+ (1.0,0.0) [0.0|255.0] "km/h or MPH" CLU,ESC,TCU + SG_ ObjValid : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,ESC,TCU + SG_ DriverAlertDisplay : 17|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC + SG_ TauGapSet : 19|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ESC,TCU + SG_ ACC_ObjStatus : 22|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,ESC + SG_ ACC_ObjLatPos : 24|9@1+ (0.1,-20.0) [-20.0|31.1] "m" ABS,ESC + SG_ ACC_ObjDist : 33|11@1+ (0.1,0.0) [0.0|204.7] "m" ABS,ESC + SG_ ACC_ObjRelSpd : 44|12@1+ (0.1,-170.0) [-170.0|239.5] "m/s" ABS,ESC + SG_ Navi_SCC_Curve_Status : 56|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Navi_SCC_Curve_Act : 58|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Navi_SCC_Camera_Act : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Navi_SCC_Camera_Status : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1312 CGW3: 8 BCM + SG_ CR_Photosensor_LH : 0|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC + SG_ CR_Photosensor_RH : 10|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC + SG_ CF_Hoodsw_memory : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EMS + SG_ C_MirOutTempSns : 24|8@1+ (0.5,-40.5) [-40.0|60.0] "deg" AAF,CLU,DATC,EMS,SPAS,AAF,DATC,EMS,SPAS + +BO_ 544 ESP12: 8 ESC + SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,TCU + SG_ LAT_ACCEL_STAT : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU + SG_ LAT_ACCEL_DIAG : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU + SG_ LONG_ACCEL : 13|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ LONG_ACCEL_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ LONG_ACCEL_DIAG : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ CYL_PRES : 26|12@1+ (0.1,0.0) [0.0|409.5] "Bar" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU + SG_ CYL_PRES_STAT : 38|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU + SG_ CYL_PRESS_DIAG : 39|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,PSB,SCC,TCU + SG_ YAW_RATE : 40|13@1+ (0.01,-40.95) [-40.95|40.96] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU + SG_ YAW_RATE_STAT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU + SG_ YAW_RATE_DIAG : 54|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU + SG_ ESP12_AliveCounter : 56|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ ESP12_Checksum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + +BO_ 1307 CLU16: 8 CLU + SG_ CF_Clu_TirePressUnitNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" TPMS + SG_ CF_Clu_SlifNValueSet : 3|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Clu_RearWiperNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 790 EMS11: 8 EMS + SG_ SWI_IGK : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,ACU,AHLS,CUBIS,DI_BOX,ECS,EPB,ESC,IBOX,LDWS_LKAS,MDPS,REA,SAS,SCC,TCU + SG_ F_N_ENG : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,IBOX,MDPS,SCC,TCU + SG_ ACK_TCS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ PUC_STAT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,DATC,IBOX,TCU + SG_ TQ_COR_STAT : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ESC,IBOX,TCU + SG_ RLY_AC : 6|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,IBOX,TCU + SG_ F_SUB_TQI : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EPB,ESC,IBOX,TCU + SG_ TQI_ACOR : 8|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU + SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,FPCM,IBOX,MDPS,SCC,TCU + SG_ TQI : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,ECS,EPB,ESC,IBOX,TCU + SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU + SG_ VS : 48|8@1+ (1.0,0.0) [0.0|254.0] "km/h" _4WD,AAF,ACU,AHLS,BCM,CLU,DATC,ECS,EPB,IBOX,LCA,LDWS_LKAS,LVR,MDPS,ODS,SCC,SMK,SPAS,TCU,TPMS + SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0.0) [0.0|2.0] "" _4WD,IBOX,TCU + +BO_ 1301 CLU14: 8 CLU + SG_ CF_Clu_ADrUNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_ADrLNValueSet : 3|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_EscortHLNValueSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_DoorLSNValueSet : 8|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_PSMNValueSet : 11|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_TTUnlockNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_PTGMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_SCMNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_WlightNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_TempUnitNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,DATC + SG_ CF_Clu_MoodLpNValueSet : 24|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_TrfChgSet : 27|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS + SG_ CF_Clu_OTTurnNValueSet : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_LcaNValueSet : 32|2@1+ (1.0,0.0) [0.0|3.0] "" LCA + SG_ CF_Clu_RctaNValueSet : 34|2@1+ (1.0,0.0) [0.0|3.0] "" LCA + SG_ CF_Clu_RcwNValueSet : 36|2@1+ (1.0,0.0) [0.0|3.0] "" LCA + SG_ CF_Clu_EscOffNValueSet : 38|3@1+ (1.0,0.0) [0.0|7.0] "" ESC + SG_ CF_Clu_SccNaviCrvNValueSet : 41|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Clu_SccNaviCamNValueSet : 43|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Clu_SccAebNValueSet : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Clu_LkasModeNValueSet : 47|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Clu_FcwNValueSet : 51|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Clu_PasSpkrLvNValueSet : 53|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_SccDrvModeNValueSet : 56|3@1+ (1.0,0.0) [0.0|7.0] "" SCC + SG_ CF_Clu_HAnBNValueSet : 59|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_HfreeTrunkTgNValueSet : 61|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + +BO_ 275 TCU13: 8 TCU + SG_ N_TGT_LUP : 0|8@1+ (10.0,500.0) [500.0|3040.0] "rpm" EMS,IBOX + SG_ SLOPE_TCU : 8|6@1+ (0.5,-16.0) [-16.0|15.5] "%" CLU,CUBIS,EMS,IBOX + SG_ CF_Tcu_InhCda : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_IsgInhib : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_BkeOnReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_NCStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_TarGr : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,DATC,EMS,EPB,ESC,IBOX,SCC + SG_ CF_Tcu_ShfPatt : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,CUBIS,EMS,IBOX + SG_ CF_Tcu_InhVis : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_PRelReq : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LVR + SG_ CF_Tcu_ITPhase : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_ActEcoRdy : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_TqGrdLim : 32|8@1+ (10.0,0.0) [0.0|2540.0] "Nm/s" EMS,IBOX + SG_ CR_Tcu_IsgTgtRPM : 40|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" EMS,IBOX + SG_ CF_Tcu_SptRdy : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Tcu_SbwPInfo : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_Alive3 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_ChkSum3 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX + +BO_ 274 TCU12: 8 TCU + SG_ ETL_TCU : 0|8@1+ (2.0,0.0) [0.0|508.0] "Nm" EMS,IBOX + SG_ CUR_GR : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,ESC,IBOX,SCC,TPMS + SG_ CF_Tcu_Alive : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC + SG_ CF_Tcu_ChkSum : 14|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC + SG_ VS_TCU : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" BCM,CLU,DATC,EMS,IBOX,LCA,LVR,PGS,SMK,SNV + SG_ FUEL_CUT_TCU : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ INH_FUEL_CUT : 29|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ IDLE_UP_TCU : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ N_INC_TCU : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15.0|15.0] "" EMS,IBOX + SG_ N_TC_RAW : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" EMS,IBOX + SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0.0) [0.0|0.9921875] "km/h" CLU,EMS,IBOX,LCA + +BO_ 273 TCU11: 8 TCU + SG_ TQI_TCU_INC : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX + SG_ G_SEL_DISP : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,AFLS,AVM,BCM,CGW,CLU,CUBIS,ECS,EMS,EPB,ESC,IAP,IBOX,LCA,LDWS_LKAS,LVR,MDPS,PGS,SCC,SMK,SNV,SPAS,TPMS + SG_ F_TCU : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX + SG_ TCU_TYPE : 14|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS,ESC,IBOX + SG_ TCU_OBD : 16|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,ESC,IBOX + SG_ SWI_GS : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,ESC,IBOX,SCC + SG_ GEAR_TYPE : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,EMS,ESC,IBOX,SCC + SG_ TQI_TCU : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX + SG_ TEMP_AT : 32|8@1+ (1.0,-40.0) [-40.0|214.0] "deg" AAF,CLU,CUBIS,EMS,ESC,IBOX + SG_ N_TC : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" _4WD,EMS,EPB,ESC,IBOX + SG_ SWI_CC : 56|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU,EMS,ESC,IBOX + SG_ CF_Tcu_Alive1 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_ChkSum1 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX + +BO_ 16 ACU13: 8 ACU + SG_ CF_Acu_CshAct : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CUBIS,IBOX,ODS + +BO_ 1040 CGW_USM1: 8 BCM + SG_ CF_Gway_ATTurnRValue : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PTGMRValue : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_EscortHLRValue : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_TTUnlockRValue : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_ADrLRValue : 8|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_ADrURValue : 11|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_SCMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_WlightRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PSMRValue : 18|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_OTTurnRValue : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_DrLockSoundRValue : 24|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_HAnBRValue : 27|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_MoodLpRValue : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_HfreeTrunkRValue : 32|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_AutoLightRValue : 35|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_RearWiperRValue : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PasSpkrLvRValue : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + +BO_ 1292 CLU13: 8 CLU + SG_ CF_Clu_LowfuelWarn : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,FPCM,IBOX + SG_ CF_Clu_RefDetMod : 2|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX + SG_ CF_Clu_AvgFCU : 3|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX + SG_ CF_Clu_AvsmCur : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,SCC + SG_ CF_Clu_AvgFCI : 6|10@1+ (0.1,0.0) [0.0|102.2] "" IBOX + SG_ CF_Clu_DrivingModeSwi : 16|2@1+ (1.0,0.0) [0.0|3.0] "" DATC,ECS,EMS,ESC,IAP,MDPS,TCU + SG_ CF_Clu_FuelDispLvl : 18|5@1+ (1.0,0.0) [0.0|31.0] "" CGW,IBOX + SG_ CF_Clu_FlexSteerSW : 23|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Clu_DTE : 24|10@1+ (1.0,0.0) [0.0|1023.0] "" DATC + SG_ CF_Clu_TripUnit : 34|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ CF_Clu_SWL_Stat : 36|3@1+ (1.0,0.0) [0.0|7.0] "" ACU,EMS + SG_ CF_Clu_ActiveEcoSW : 39|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EMS,TCU + SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CUBIS,EMS,IAP,IBOX + SG_ CF_Clu_IsaMainSW : 43|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Clu_LdwsLkasSW : 56|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Clu_AltLStatus : 59|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,DATC,EMS + SG_ CF_Clu_AliveCnt2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,LDWS_LKAS + +BO_ 1290 SCC13: 8 SCC + SG_ SCCDrvModeRValue : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ SCC_Equip : 3|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ AebDrvSetStatus : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ESC + +BO_ 1287 TCS15: 4 ESC + SG_ ABS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,IBOX + SG_ TCS_OFF_LAMP : 1|2@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU + SG_ TCS_LAMP : 3|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ACU,CLU,CUBIS,IBOX,SCC + SG_ DBC_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ DBC_F_LAMP : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU + SG_ ESC_Off_Step : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ AVH_CLU : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,EPB + SG_ AVH_I_LAMP : 24|2@1+ (1.0,0.0) [0.0|3.0] "" EPB + SG_ EBD_W_LAMP : 26|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ AVH_ALARM : 27|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ AVH_LAMP : 29|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EPB,SPAS + +BO_ 1282 TCU14: 4 TCU + SG_ CF_TCU_WarnMsg : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_TCU_WarnImg : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_TCU_WarnSnd : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Tcu_GSel_BlinkReq : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,LVR + SG_ CF_Tcu_StRelStat : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,ESC + SG_ CF_Tcu_DriWarn1 : 13|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC + SG_ CF_Tcu_DriWarn2 : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,ESC + +BO_ 1281 ECS11: 3 ECS + SG_ ECS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX + SG_ SYS_NA : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ ECS_DEF : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ ECS_DIAG : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ L_CHG_NA : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Leveling_Off : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ LC_overheat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Lifting : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Lowering : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Damping_Mode : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ REQ_Damping : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ REQ_Height : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ REQ_level : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ ACT_Height : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + +BO_ 1024 CLU_CFG11: 2 CLU + SG_ Vehicle_Type : 0|16@1+ (1.0,0.0) [0.0|65536.0] "" _4WD + +BO_ 1280 ACU14: 1 ACU + SG_ CF_SWL_Ind : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_TTL_Ind : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_SBR_Ind : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + +BO_ 512 EMS20: 6 EMS + SG_ FCO : 0|16@1+ (0.128,0.0) [0.0|8388.48] "ul" CLU,CUBIS,FPCM,IBOX + SG_ CF_Ems_PumpTPres : 16|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" FPCM,IBOX + SG_ Split_Stat : 32|1@1+ (1.0,0.0) [0.0|1.0] "" FPCM diff --git a/opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc b/opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc new file mode 100644 index 0000000000..6bcd771e51 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/hyundai_2015_mcan.dbc @@ -0,0 +1,1564 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: CLOCK HUD H_U DATC CCP KMA_TMU CUBIS TMU IPM RSE_R RRC CGW RSE_L AMP EDT SWRC IBOX CLU FHCU ASD MON AVM KBD + + +BO_ 3221225472 VECTOR__INDEPENDENT_SIG_MSG: 0 Vector__XXX + SG_ C_WHEEL_FL : 0|12@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_WHEEL_FR : 0|12@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_WHEEL_RL : 0|12@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_WHEEL_RR : 0|12@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 2046 TP_EDT_AMP: 8 EDT + SG_ Byte0_TCP_7FE : 7|8@0+ (1,0) [0|0] "" AMP + SG_ Byte1_Data_7FE : 15|8@0+ (1,0) [0|0] "" AMP + SG_ Byte2_Data_7FE : 23|8@0+ (1,0) [0|0] "" AMP + SG_ Byte3_Data_7FE : 31|8@0+ (1,0) [0|0] "" AMP + SG_ Byte4_Data_7FE : 39|8@0+ (1,0) [0|0] "" AMP + SG_ Byte5_Data_7FE : 47|8@0+ (1,0) [0|0] "" AMP + SG_ Byte6_Data_7FE : 55|8@0+ (1,0) [0|0] "" AMP + SG_ Byte7_Data_7FE : 63|8@0+ (1,0) [0|0] "" AMP + +BO_ 251 HU_TMU_E_02: 8 H_U + SG_ HU_GPS_Year : 7|8@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ HU_GPS_Month : 15|8@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ HU_GPS_Day : 23|8@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ HU_GPS_Hour : 31|8@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ HU_GPS_Minute : 39|8@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ HU_GPS_Second : 47|8@0+ (1,0) [0|0] "" CUBIS,TMU + +BO_ 250 HU_TMU_E_01: 8 H_U + SG_ HU_VoiceRecCom : 2|3@0+ (1,0) [0|0] "" TMU + SG_ HU_LangChgCom : 5|3@0+ (1,0) [0|0] "" TMU + SG_ HU_CallEndCmd : 9|2@0+ (1,0) [0|0] "" TMU + SG_ HU_ServiceReqtID : 13|4@0+ (1,0) [0|0] "" TMU + SG_ HU_MicReqCmd : 15|2@0+ (1,0) [0|0] "" TMU + SG_ HU_SeviceAction : 18|3@0+ (1,0) [0|0] "" TMU + SG_ HU_eCallStatus : 20|2@0+ (1,0) [0|0] "" TMU + +BO_ 1269 TP_CLU_ANDAUTO_HU: 8 CLU + SG_ Byte0_TCP_4F5 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4F5 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4F5 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4F5 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4F5 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4F5 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4F5 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4F5 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1268 TP_HU_ANDAUTO_CLU: 8 H_U + SG_ Byte0_TCP_4F4 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4F4 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4F4 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4F4 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4F4 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4F4 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4F4 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4F4 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1267 TP_CLU_CARPLAY_HU: 8 CLU + SG_ Byte0_TCP_4F3 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4F3 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4F3 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4F3 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4F3 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4F3 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4F3 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4F3 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1266 TP_HU_CARPLAY_CLU: 8 H_U + SG_ Byte0_TCP_4F2 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4F2 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4F2 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4F2 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4F2 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4F2 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4F2 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4F2 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1263 TP_CLU_IBOX_HU: 8 CLU + SG_ Byte0_TCP_4EF : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4EF : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4EF : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4EF : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4EF : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4EF : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4EF : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4EF : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1262 TP_HU_IBOX_CLU: 8 H_U + SG_ Byte0_TCP_4EE : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4EE : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4EE : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4EE : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4EE : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4EE : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4EE : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4EE : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1261 TP_CLU_DLNA_HU: 8 CLU + SG_ Byte0_TCP_4ED : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4ED : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4ED : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4ED : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4ED : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4ED : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4ED : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4ED : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1260 TP_HU_DLNA_CLU: 8 H_U + SG_ Byte0_TCP_4EC : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4EC : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4EC : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4EC : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4EC : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4EC : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4EC : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4EC : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 491 GW_DDM_PE: 8 CLU + SG_ C_DRVDoorStatus : 1|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ C_ASTDoorStatus : 3|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ C_RLDoorStatus : 5|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ C_RRDoorStatus : 7|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ C_TrunkStatus : 9|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ C_OSMirrorStatus : 11|2@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CUBIS,DATC,EDT,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + +BO_ 1259 TP_CLU_MP_HU: 8 CLU + SG_ Byte0_TCP_4EB : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4EB : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4EB : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4EB : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4EB : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4EB : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4EB : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4EB : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1258 TP_HU_MP_CLU: 8 H_U + SG_ Byte0_TCP_4EA : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4EA : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4EA : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4EA : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4EA : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4EA : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4EA : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4EA : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1257 TP_CLU_FM_HU: 8 CLU + SG_ Byte0_TCP_4E9 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4E9 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4E9 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4E9 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4E9 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4E9 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4E9 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4E9 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1256 TP_HU_FM_CLU: 8 H_U + SG_ Byte0_TCP_4E8 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4E8 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4E8 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4E8 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4E8 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4E8 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4E8 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4E8 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1255 TP_CLU_MLT_HU: 8 CLU + SG_ Byte0_TCP_4E7 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4E7 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4E7 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4E7 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4E7 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4E7 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4E7 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4E7 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 487 HU_CLU_PE_13: 8 H_U + SG_ Navi_DistToPoint1_F : 11|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint1_I : 7|12@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint1_U : 23|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint2_I : 19|12@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint2_F : 35|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint2_U : 39|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint3_F : 51|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint3_I : 47|12@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToPoint3_U : 63|4@0+ (1,0) [0|0] "" CLU,HUD + +BO_ 1254 TP_HU_MLT_CLU: 8 H_U + SG_ Byte0_TCP_4E6 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4E6 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4E6 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4E6 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4E6 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4E6 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4E6 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4E6 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 486 HU_CLU_PE_12: 8 H_U + SG_ Navi_DistToDest_I : 7|16@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToDest_F : 19|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_DistToDest_U : 23|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_EstimHour : 31|8@0+ (1,0) [0|254] "hh" CLU,HUD + SG_ Navi_EstimMin : 37|6@0+ (1,0) [0|59] "mm" CLU,HUD + SG_ Navi_EstimTimeType : 39|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_Compass : 45|6@0+ (7.5,-7.5) [0|352.5] "Degree" CLU,HUD + +BO_ 229 HU_SYS_E_00: 8 H_U + SG_ SYS_SW_Ver_Req : 1|2@0+ (1,0) [0|0] "" AMP,CCP,CGW,CLOCK,CLU,HUD,IBOX,RRC,RSE_L + SG_ SYS_CAN_Ver_Req : 3|2@0+ (1,0) [0|0] "" AMP,CCP,CGW,CLOCK,CLU,HUD,IBOX,RRC,RSE_L + SG_ SYS_HW_Ver_Req : 5|2@0+ (1,0) [0|0] "" AMP,CCP,CGW,CLOCK,CLU,IBOX,RRC + SG_ SYS_RBD_Req : 9|2@0+ (1,0) [0|0] "" AMP,IBOX + SG_ SYS_MOSTErrorDiag_Req : 11|2@0+ (1,0) [0|0] "" AMP,IBOX + SG_ SYS_Reset_Req : 17|2@0+ (1,0) [0|0] "" AMP,IBOX + +BO_ 1253 TP_CLU_VCDC_HU: 8 CLU + SG_ Byte0_TCP_4E5 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4E5 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4E5 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4E5 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4E5 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4E5 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4E5 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4E5 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 485 HU_CLU_PE_11: 8 H_U + SG_ Navi_FixedSpdTrap : 3|4@0+ (10,0) [10|110] "Km/h" CLU,HUD + SG_ Navi_MobileSpdTrap : 7|4@0+ (10,0) [10|110] "Km/h" CLU,HUD + SG_ Navi_OverSpdAlarm : 11|2@0+ (1,0) [0|0] "" CGW,CLU,HUD + SG_ Navi_SpdRedlightTrap : 15|4@0+ (10,0) [10|110] "Km/h" CLU,HUD + SG_ Navi_NonSpdTrap : 20|5@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_WarningZone : 27|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_MergeWarning : 33|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_CurveWarning : 39|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_BusSpdTrap : 43|4@0+ (10,0) [10|110] "Km/h" CLU,HUD + SG_ Navi_SpdLimit_Type : 49|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_SpdLimit_Unit : 51|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_SpdInfo_Type : 55|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ Navi_SpdLimit : 63|8@0+ (1,0) [1|254] "" CLU,HUD + +BO_ 1252 TP_HU_VCDC_CLU: 8 H_U + SG_ Byte0_TCP_4E4 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4E4 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4E4 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4E4 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4E4 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4E4 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4E4 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4E4 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1251 TP_CLU_JB_HU: 8 CLU + SG_ Byte0_TCP_4E3 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4E3 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4E3 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4E3 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4E3 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4E3 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4E3 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4E3 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1250 TP_HU_JB_CLU: 8 H_U + SG_ Byte0_TCP_4E2 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4E2 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4E2 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4E2 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4E2 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4E2 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4E2 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4E2 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1248 TP_TMU_HU: 8 TMU + SG_ Byte0_TCP_4E0 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4E0 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4E0 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4E0 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4E0 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4E0 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4E0 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4E0 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 479 CLU_HU_PE_01: 8 CLU + SG_ CLU_Type : 7|8@0+ (1,0) [0|0] "" H_U + SG_ CLU_Region : 15|8@0+ (1,0) [0|0] "" H_U + SG_ CLU_VersionMinor : 23|8@0+ (1,0) [0|0] "" H_U + SG_ CLU_VersionMajor : 31|8@0+ (1,0) [0|0] "" H_U + SG_ CLU_CurrentDispState : 39|8@0+ (1,0) [0|0] "" H_U + SG_ C_DRVDRSW : 41|2@0+ (1,0) [0|0] "" H_U + SG_ CF_Clu_LowfuelWarning : 44|2@0+ (1,0) [0|0] "" H_U + SG_ CLU_PowerInfo : 46|2@0+ (1,0) [0|0] "" H_U + SG_ C_DrivingModeState : 50|3@0+ (1,0) [0|0] "" H_U + SG_ Clu_RheostatLvl : 55|5@0+ (1,0) [0|0] "" H_U,MON,SWRC + SG_ C_Clu_ActiveEcoSW : 57|2@0+ (1,0) [0|0] "" H_U + SG_ C_Detent : 59|2@0+ (1,0) [0|0] "" CCP,CLOCK,H_U,KBD,MON,RRC,RSE_L,RSE_R + SG_ C_DrivingModeOn : 61|2@0+ (1,0) [0|0] "" H_U + +BO_ 2015 TP_EDT_All_Req: 8 EDT + SG_ Byte0_TCP_7DF : 7|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte1_Data_7DF : 15|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte2_Data_7DF : 23|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte3_Data_7DF : 31|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte4_Data_7DF : 39|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte5_Data_7DF : 47|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte6_Data_7DF : 55|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + SG_ Byte7_Data_7DF : 63|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,FHCU,HUD,H_U,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + +BO_ 474 CLU_HU_PE_02: 8 CLU + SG_ CF_Clu_AvgFCU : 1|2@0+ (1,0) [0|0] "" H_U + SG_ CF_Clu_AvgFCL : 9|10@0+ (1,0) [0|0] "" H_U + SG_ CF_Clu_TermAvgSync : 25|2@0+ (1,0) [0|0] "" H_U + SG_ CF_Clu_EcoDriveInf : 36|3@0+ (1,0) [0|0] "" H_U + SG_ CR_Clu_TermAvgFCI : 33|10@0+ (1,0) [0|0] "" H_U + SG_ CF_CLU_EcoScore : 55|16@0+ (1,0) [0|0] "" H_U + +BO_ 1495 CLU_HU_P_05: 8 CLU + SG_ Clu_TripUnit : 9|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ Clu_DTEWarn : 11|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ Clu_DTE : 7|12@0+ (1,0) [0|1500] "km" H_U,IBOX + SG_ Clu_AFC : 23|10@0+ (0.1,0) [0|99.9] "" H_U,IBOX + SG_ Clu_IFC : 29|10@0+ (0.1,0) [0|99.9] "" H_U,IBOX + SG_ Clu_Odometer : 47|24@0+ (1,0) [0|999999] "" H_U,IBOX + +BO_ 1494 CLU_HU_P_01: 8 CLU + SG_ CF_TripUnit : 13|2@0+ (1,0) [0|0] "" H_U + SG_ CF_DTE : 7|10@0+ (1,0) [0|0] "" H_U + +BO_ 214 AMP_HU_E_SYS: 8 AMP + SG_ AMP_SWVerMajor : 7|8@0+ (1,0) [0|254] "" H_U,IBOX + SG_ AMP_SWVerMinor : 15|8@0+ (1,0) [0|254] "" H_U,IBOX + SG_ AMP_CANVerMajor : 23|8@0+ (1,0) [0|254] "" H_U,IBOX + SG_ AMP_CANVerMinor : 31|8@0+ (1,0) [0|254] "" H_U,IBOX + SG_ AMP_RBDResult : 34|3@0+ (1,0) [0|0] "" H_U + SG_ AMP_MOSTErrorDiagResult : 38|3@0+ (1,0) [0|0] "" H_U + SG_ AMP_HWVerMajor : 55|8@0+ (1,0) [0|254] "" H_U,IBOX + SG_ AMP_HWVerMinor : 63|8@0+ (1,0) [0|254] "" H_U,IBOX + +BO_ 1492 CLU_HU_P_04: 8 CLU + SG_ MM_CR_Fatc_AcnComCst_W : 7|10@0+ (10,0) [0|8000] "W" H_U + SG_ MM_CR_Ldc_PwrMon_W : 12|8@0+ (10,0) [0|2550] "W" H_U + SG_ MM_CR_Fatc_PTCPwrCon_W : 17|10@0+ (10,0) [0|10000] "W" H_U + SG_ MM_CR_BmsChgExp_T_Fast : 39|16@0+ (1,0) [0|0] "minute" H_U + SG_ MM_CR_BmsChgExp_T_Slow : 55|16@0+ (1,0) [0|0] "minute" H_U + +BO_ 1491 CLU_HU_P_03: 8 CLU + SG_ MM_CF_Vcu_EvMod : 3|4@0+ (1,0) [0|0] "" H_U + SG_ MM_CF_Vcu_GarSelDisp : 7|4@0+ (999,0) [0|0] "" H_U + SG_ MM_CF_Vcu_ThiBatTir : 8|1@0+ (1,0) [0|0] "" H_U + SG_ CR_Mcu_MotEstTqPc : 23|10@0+ (0.2,-100) [-100|99.8] "%" H_U + SG_ CR_Mcu_MotActRotSpd_rpm : 39|16@0+ (1,-32768) [-32768|32767] "rpm" H_U + +BO_ 1490 CLU_HU_P_02: 8 CLU + SG_ MM_CR_Vcu_EcoSco : 3|4@0+ (1,0) [0|0] "" H_U + SG_ MM_CF_Vcu_PgmRun5 : 5|2@0+ (1,0) [0|0] "" H_U + SG_ MM_CR_Clu_Odometer_kph : 15|24@0+ (0.1,0) [0|0] "km" H_U + +BO_ 1489 DATC_P_B_01: 8 CLU + SG_ C_InhibitR_DATC : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_InhibitP_DATC : 50|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_InhibitN_DATC : 49|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_InhibitD_DATC : 48|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 465 CLU_HU_PE_03: 8 CLU + SG_ CF_Clu_EVDTEDisp : 0|9@0+ (1,0) [0|0] "" H_U,IBOX + SG_ CF_Clu_GasDTEDisp : 17|10@0+ (1,0) [0|0] "" H_U,IBOX + SG_ MM_CR_Clu_TotalDTEDisp : 34|11@0+ (1,0) [0|0] "" H_U,IBOX + SG_ CF_Clu_TripUnit : 49|2@0+ (1,0) [0|0] "" H_U,IBOX + +BO_ 1232 TP_HU_TMU: 8 H_U + SG_ Byte0_TCP_4D0 : 7|8@0+ (1,0) [0|0] "" TMU + SG_ Byte1_Data_4D0 : 15|8@0+ (1,0) [0|0] "" TMU + SG_ Byte2_Data_4D0 : 23|8@0+ (1,0) [0|0] "" TMU + SG_ Byte3_Data_4D0 : 31|8@0+ (1,0) [0|0] "" TMU + SG_ Byte4_Data_4D0 : 39|8@0+ (1,0) [0|0] "" TMU + SG_ Byte5_Data_4D0 : 47|8@0+ (1,0) [0|0] "" TMU + SG_ Byte6_Data_4D0 : 55|8@0+ (1,0) [0|0] "" TMU + SG_ Byte7_Data_4D0 : 63|8@0+ (1,0) [0|0] "" TMU + +BO_ 1488 CLU_HU_P_00: 8 CLU + SG_ MM_CR_Mcu_VehSpd_Kph : 7|8@0+ (1,0) [0|0] "" H_U + SG_ MM_CR_Mcu_VehSpdDec_Kph : 15|8@0+ (1,0) [0|0] "" H_U + SG_ MM_CR_Bms_Soc_Pc : 23|8@0+ (1,0) [0|0] "" H_U + SG_ MM_CR_Vcu_TqMotClu_Pc : 31|8@0+ (1,-127) [0|0] "" H_U + SG_ MM_CR_Bms_DrvEnaDist : 39|8@0+ (1,0) [0|0] "" H_U + SG_ MM_CR_Clu_Soc_Seg : 44|5@0+ (1,0) [0|0] "" H_U,IBOX + +BO_ 208 CLU_HU_E_SYS: 8 CLU + SG_ CLU_SWVerMajor : 7|8@0+ (1,0) [0|254] "" H_U + SG_ CLU_SWVerMinor : 15|8@0+ (1,0) [0|254] "" H_U + SG_ CLU_CANVerMajor : 23|8@0+ (1,0) [0|254] "" H_U + SG_ CLU_CANVerMinor : 31|8@0+ (1,0) [0|254] "" H_U + SG_ CLU_HWVerMajor : 55|8@0+ (1,0) [0|254] "" H_U + SG_ CLU_HWVerMinor : 63|8@0+ (1,0) [0|254] "" H_U + +BO_ 448 HU_DATC_PE_00: 8 H_U + SG_ DATC_AqsLevelChg : 3|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ RSELockOnOff : 7|2@0+ (1,0) [0|0] "" CGW,DATC,IPM,RRC + SG_ DATC_AqsMode : 9|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_Graphreset_Info : 17|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_VRActivity : 33|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_PhoneActivity : 35|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ BlowerNoiseControl : 37|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + +BO_ 1211 TP_HU_TBT_CLU: 8 H_U + SG_ Byte0_TCP_4BB : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4BB : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4BB : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4BB : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4BB : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4BB : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4BB : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4BB : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1207 TP_HU_DAB_CLU: 8 H_U + SG_ Byte0_TCP_4B7 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4B7 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4B7 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4B7 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4B7 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4B7 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4B7 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4B7 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1206 TP_HU_XM_CLU: 8 H_U + SG_ Byte0_TCP_4B6 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4B6 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4B6 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4B6 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4B6 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4B6 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4B6 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4B6 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1204 TP_HU_DMB_CLU: 8 H_U + SG_ Byte0_TCP_4B4 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_4B4 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_4B4 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_4B4 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_4B4 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_4B4 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_4B4 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_4B4 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 432 TMU_GW_PE_01: 8 TMU + SG_ C_DATCOnOffReq : 1|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM + SG_ C_DATCTempUnit : 3|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM + SG_ C_DATCTempSet : 15|8@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM + SG_ TMU_IVRActivity : 33|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM + SG_ TMU_PhoneActivity : 35|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM + +BO_ 1195 TP_CLU_TBT_HU: 8 CLU + SG_ Byte0_TCP_4AB : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4AB : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4AB : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4AB : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4AB : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4AB : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4AB : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4AB : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1191 TP_CLU_DAB_HU: 8 CLU + SG_ Byte0_TCP_4A7 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4A7 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4A7 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4A7 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4A7 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4A7 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4A7 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4A7 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1190 TP_CLU_XM_HU: 8 CLU + SG_ Byte0_TCP_4A6 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4A6 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4A6 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4A6 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4A6 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4A6 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4A6 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4A6 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1188 TP_CLU_DMB_HU: 8 CLU + SG_ Byte0_TCP_4A4 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_4A4 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_4A4 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_4A4 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_4A4 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_4A4 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_4A4 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_4A4 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1179 TP_HU_NAVI_CLU: 8 H_U + SG_ Byte0_TCP_49B : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_49B : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_49B : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_49B : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_49B : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_49B : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_49B : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_49B : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1178 TP_CLU_Ipod_HU: 8 CLU + SG_ Byte0_TCP_49A : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_49A : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_49A : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_49A : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_49A : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_49A : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_49A : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_49A : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 410 HU_CLU_PE_08: 8 H_U + SG_ VCDC_SelDiscNo : 11|4@0+ (1,0) [0|0] "" CLU + SG_ VCDC_TrackChapterNo : 7|10@0+ (1,0) [0|0] "" CLU + SG_ VCDC_PlayTime : 23|24@0+ (1,0) [0|0] "" CLU + SG_ MLT_PlayTime : 47|24@0+ (1,0) [0|0] "" CLU + +BO_ 1176 TP_CLU_DVD_HU: 8 CLU + SG_ Byte0_TCP_498 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_498 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_498 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_498 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_498 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_498 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_498 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_498 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 1175 TP_CLU_USB_HU: 8 CLU + SG_ Byte0_TCP_497 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_497 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_497 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_497 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_497 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_497 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_497 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_497 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 407 HU_CLU_PE_05: 8 H_U + SG_ HU_LanguageInfo : 7|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ HU_MuteStatus : 9|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ HU_VolumeStatus : 15|6@0+ (1,0) [0|0] "" CLU,HUD + SG_ HU_NaviDisp : 17|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ HU_NaviStatus : 19|2@0+ (1,0) [0|0] "" CGW,CLU,HUD,IPM + SG_ HU_DistanceUnit : 21|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ HU_Navigation_On_Off : 23|2@0+ (1,0) [0|0] "" AVM,CGW,CLU,DATC,HUD,IPM + +BO_ 1942 TP_AMP_HU_DiagRes: 8 AMP + SG_ Byte0_TCP_796 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_796 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_796 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_796 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_796 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_796 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_796 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_796 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 406 HU_CLU_PE_04: 8 H_U + SG_ C_SDARS_ChannelNo : 7|8@0+ (1,0) [0|0] "" CLU + SG_ C_NaviRouteGuidance : 11|2@0+ (1,0) [0|0] "" CLU + SG_ HD_SPS_ChannelNo : 15|4@0+ (1,0) [0|0] "" CLU + SG_ C_SDARS_PresetNo : 19|4@0+ (1,0) [0|0] "" CLU + SG_ DAB_ServiceFollowing : 21|2@0+ (1,0) [0|0] "" CLU + SG_ SXM_ChannelNo : 25|10@0+ (1,0) [0|999] "" AMP,CLU,HUD + +BO_ 1941 TP_HU_AMP_DiagReq: 8 H_U + SG_ Byte0_TCP_795 : 7|8@0+ (1,0) [0|0] "" AMP + SG_ Byte1_Data_795 : 15|8@0+ (1,0) [0|0] "" AMP + SG_ Byte2_Data_795 : 23|8@0+ (1,0) [0|0] "" AMP + SG_ Byte3_Data_795 : 31|8@0+ (1,0) [0|0] "" AMP + SG_ Byte4_Data_795 : 39|8@0+ (1,0) [0|0] "" AMP + SG_ Byte5_Data_795 : 47|8@0+ (1,0) [0|0] "" AMP + SG_ Byte6_Data_795 : 55|8@0+ (1,0) [0|0] "" AMP + SG_ Byte7_Data_795 : 63|8@0+ (1,0) [0|0] "" AMP + +BO_ 1173 TP_CLU_CD_HU: 8 CLU + SG_ Byte0_TCP_495 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_495 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_495 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_495 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_495 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_495 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_495 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_495 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 405 HU_CLU_PE_03: 8 H_U + SG_ HU_IntegPresetNum : 7|8@0+ (1,0) [0|0] "" AMP,CLU,HUD + SG_ Radio_Area : 10|8@0+ (1,0) [0|0] "" CLU + SG_ DMB_PresetNo : 29|5@0+ (1,0) [0|0] "" CLU + SG_ RADIO_PresetNo : 18|5@0+ (1,0) [0|0] "" CLU + SG_ HU_Opstate_DIS2 : 38|7@0+ (1,0) [0|0] "" AMP,CLU,HUD + +BO_ 1168 TP_HU_USB_CLU: 8 H_U + SG_ Byte0_TCP_490 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_490 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_490 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_490 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_490 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_490 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_490 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_490 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1936 TP_HU_All_Req: 8 H_U + SG_ Byte0_TCP_790 : 7|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte1_Data_790 : 15|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte2_Data_790 : 23|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte3_Data_790 : 31|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte4_Data_790 : 39|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte5_Data_790 : 47|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte6_Data_790 : 55|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + SG_ Byte7_Data_790 : 63|8@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CGW,CLOCK,CLU,CUBIS,DATC,EDT,FHCU,HUD,IBOX,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,SWRC,TMU + +BO_ 1167 TP_HU_Ipod_CLU: 8 H_U + SG_ Byte0_TCP_48F : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_48F : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_48F : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_48F : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_48F : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_48F : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_48F : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_48F : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1166 TP_HU_DVD_CLU: 8 H_U + SG_ Byte0_TCP_48E : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_48E : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_48E : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_48E : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_48E : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_48E : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_48E : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_48E : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1165 TP_HU_CD_CLU: 8 H_U + SG_ Byte0_TCP_48D : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_48D : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_48D : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_48D : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_48D : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_48D : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_48D : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_48D : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 1164 TP_CLU_NAVI_HU: 8 CLU + SG_ Byte0_TCP_48C : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_48C : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_48C : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_48C : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_48C : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_48C : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_48C : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_48C : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 139 AMP_HU_E_12: 8 AMP + SG_ AMP_Beep2VolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep2FrequencyState : 15|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep2OutputMaskState : 31|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep2DOnState : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep2DOffState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep2NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 138 AMP_HU_E_11: 8 AMP + SG_ AMP_Beep1VolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep1FrequencyState : 15|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep1OutputMaskState : 31|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep1DOnState : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep1DOffState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep1NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 137 AMP_HU_E_10: 8 AMP + SG_ AMP_MTSOutputMaskSupport : 1|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_MTSMuteMaskSupport : 5|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_HFOutputMaskSupport : 9|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_HFMuteMaskSupport : 13|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_NaviOutputMaskSupport : 17|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_NaviMuteMaskSupport : 21|2@0+ (1,0) [0|0] "" H_U + +BO_ 1928 TP_HU_PhyRes: 8 H_U + SG_ Byte0_TCP_788 : 7|8@0+ (1,0) [0|0] "" EDT + SG_ Byte1_Data_788 : 15|8@0+ (1,0) [0|0] "" EDT + SG_ Byte2_Data_788 : 23|8@0+ (1,0) [0|0] "" EDT + SG_ Byte3_Data_788 : 31|8@0+ (1,0) [0|0] "" EDT + SG_ Byte4_Data_788 : 39|8@0+ (1,0) [0|0] "" EDT + SG_ Byte5_Data_788 : 47|8@0+ (1,0) [0|0] "" EDT + SG_ Byte6_Data_788 : 55|8@0+ (1,0) [0|0] "" EDT + SG_ Byte7_Data_788 : 63|8@0+ (1,0) [0|0] "" EDT + +BO_ 136 AMP_HU_E_09: 8 AMP + SG_ AMP_MaxBeep2VolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep2Freq_State : 15|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep2OutputMaskSup : 33|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep2DOnState : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep2DOffState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep2NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 135 AMP_HU_E_08: 8 AMP + SG_ AMP_MaxBeep1VolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep1Freq_State : 15|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_Beep1OutputMaskSup : 33|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep1DOnState : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep1DOffState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBeep1NOfCycleState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 134 AMP_HU_E_07: 8 AMP + SG_ ASD_SetValue : 2|3@0+ (1,0) [0|0] "" H_U,IBOX + SG_ ASD_Version : 15|8@0+ (1,0) [0|0] "" H_U,IBOX + +BO_ 1157 TP_HU_CLU_HF: 8 H_U + SG_ Byte0_TCP_485 : 7|8@0+ (1,0) [0|0] "" CLU + SG_ Byte1_Data_485 : 15|8@0+ (1,0) [0|0] "" CLU + SG_ Byte2_Data_485 : 23|8@0+ (1,0) [0|0] "" CLU + SG_ Byte3_Data_485 : 31|8@0+ (1,0) [0|0] "" CLU + SG_ Byte4_Data_485 : 39|8@0+ (1,0) [0|0] "" CLU + SG_ Byte5_Data_485 : 47|8@0+ (1,0) [0|0] "" CLU + SG_ Byte6_Data_485 : 55|8@0+ (1,0) [0|0] "" CLU + SG_ Byte7_Data_485 : 63|8@0+ (1,0) [0|0] "" CLU + +BO_ 133 AMP_HU_E_06: 8 AMP + SG_ AMP_MaxVolumeStep : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBalanceStep : 15|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxFadeStep : 23|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxBassStep : 31|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxMidStep : 39|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxTrebleStep : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_ASDMajorVer : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_ASDMinorVer : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 389 AMP_HU_PE_05: 8 AMP + SG_ AMP_EngOrderC2Setting : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_EngOrderC4Setting : 15|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_EngOrderC6Setting : 23|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_APSBand0Setting : 31|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_APSBand1Setting : 39|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_APSBand2Setting : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_APSBand3Setting : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_APSBand4Setting : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 132 AMP_HU_E_05: 8 AMP + SG_ AMP_HFVolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_HFAudioCutState : 15|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_HFOutputMaskState : 23|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_HFMuteMaskState : 39|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxHFVolumeState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxHFAudioCutState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 388 AMP_HU_PE_04: 8 AMP + SG_ AMP_PESSModeState : 1|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_PESSDesignSetting : 4|3@0+ (1,0) [0|0] "" H_U + SG_ AMP_PESSAPSSetting : 7|3@0+ (1,0) [0|0] "" H_U + SG_ AMP_PESSVolumeSetting : 15|8@0+ (1,0) [0|0] "" H_U + +BO_ 1156 TP_CLU_HF_HU: 8 CLU + SG_ Byte0_TCP_484 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_484 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_484 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_484 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_484 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_484 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_484 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_484 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 131 AMP_HU_E_04: 8 AMP + SG_ AMP_MTSVolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MTSAudioCutState : 15|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MTSOutputMaskState : 23|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_MTSMuteMaskState : 39|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxMTSVolumeState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxMTSAudioCutState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 387 AMP_HU_PE_03: 8 AMP + SG_ AMP_MainVolumeSetting : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_BalanceSetting : 15|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_FadeSetting : 23|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_BassSetting : 31|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MidSetting : 39|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_TrebleSetting : 47|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_VehicleSpeedamp : 55|8@0+ (1,0) [0|0] "" H_U + +BO_ 130 AMP_HU_E_03: 8 AMP + SG_ AMP_NaviVolumeState : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_NaviAudioCutState : 15|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_NaviOutputMaskState : 23|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_NaviMuteMaskState : 39|16@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxNaviVolumeState : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_MaxNaviAudioCutState : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 129 AMP_HU_E_02: 8 AMP + SG_ AMP_DriveState : 1|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_ConvertibleTopState : 5|2@0+ (1,0) [0|0] "" H_U + +BO_ 385 AMP_HU_PE_02: 8 AMP + SG_ AMP_MuteState : 1|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_RearSpMuteState : 3|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SurroundModeState : 9|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_EQState : 13|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SPDIFMuteSt : 17|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_BeatsModeState : 21|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_DefaultBeep1St : 25|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_DefaultBeep2St : 29|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_AudioSource : 39|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_VIPModeState : 41|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_QLSModeState : 43|2@0+ (1,0) [0|0] "" H_U + +BO_ 128 AMP_HU_E_01: 8 AMP + SG_ AMP_CurrentVehicleID : 7|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_SPDIFModeState : 11|4@0+ (1,0) [0|0] "" H_U + SG_ AMP_MajorVer : 23|8@0+ (1,0) [0|0] "" H_U,MON + SG_ AMP_MinorVer : 31|8@0+ (1,0) [0|0] "" H_U,MON + SG_ AMP_UpdateStartResp : 33|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_UpdateEndResp : 41|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_TuningMajorVer : 55|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_TuningMinorVer : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 384 AMP_HU_PE_01: 8 AMP + SG_ AMP_HFModeState : 1|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ HU_InitInfo : 3|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_ASDModeState : 6|3@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_NaviModeState : 9|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_SPDIFInfo : 12|3@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_MTSModeState : 17|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_VSCModeState : 25|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_SDVCStepState : 29|3@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_Beep1ModeState : 33|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_Beep2ModeState : 41|2@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_DistrInfoState : 55|8@0+ (1,0) [0|0] "" CLU,H_U + SG_ AMP_INFORM_TO_IPM : 57|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,H_U,IPM + SG_ AMP_SignalDoctorState : 59|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_AutoVolumeState : 61|2@0+ (1,0) [0|0] "" H_U + +BO_ 1408 AMP_HU_P_01: 8 AMP + SG_ AMP_SupportMute : 1|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportHFMode : 3|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportCfgBeep1 : 5|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportCfgBeep2 : 7|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportSpeedAdjust : 9|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportSurroundMode : 11|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportNaviMode : 13|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportMTSMode : 15|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportTopState : 17|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportBothLHDandRHD : 19|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportEQState : 21|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportVehicleID : 23|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportAudioSource : 25|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportSPDIFModeState : 27|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportRearSpMute : 29|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportVEQMode : 31|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_MakerID : 39|8@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportASDMode : 41|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportBeatsMode : 43|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportVIPMode : 45|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportQLS : 47|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportSignalDoctor : 49|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportAutoVolume : 51|2@0+ (1,0) [0|0] "" H_U + SG_ AMP_SupportPESSMode : 53|2@0+ (1,0) [0|0] "" H_U + +BO_ 1920 TP_HU_PhyReq: 8 EDT + SG_ Byte0_TCP_780 : 7|8@0+ (1,0) [0|0] "" H_U + SG_ Byte1_Data_780 : 15|8@0+ (1,0) [0|0] "" H_U + SG_ Byte2_Data_780 : 23|8@0+ (1,0) [0|0] "" H_U + SG_ Byte3_Data_780 : 31|8@0+ (1,0) [0|0] "" H_U + SG_ Byte4_Data_780 : 39|8@0+ (1,0) [0|0] "" H_U + SG_ Byte5_Data_780 : 47|8@0+ (1,0) [0|0] "" H_U + SG_ Byte6_Data_780 : 55|8@0+ (1,0) [0|0] "" H_U + SG_ Byte7_Data_780 : 63|8@0+ (1,0) [0|0] "" H_U + +BO_ 371 HU_TMU_PE_01: 8 H_U + SG_ HU_AliveStatus : 1|2@0+ (1,0) [0|0] "" CLU,CGW,TMU + SG_ HU_DeviceType : 5|4@0+ (1,0) [0|0] "" TMU + SG_ HU_DistanceUnit : 7|2@0+ (1,0) [0|0] "" TMU + SG_ HU_AudAllocStatus : 9|2@0+ (1,0) [0|0] "" TMU + SG_ HU_PowerStatus : 12|3@0+ (1,0) [0|0] "" TMU + SG_ HU_BTCallStatus : 15|3@0+ (1,0) [0|0] "" TMU + SG_ HU_VoiceRecStatus : 17|2@0+ (1,0) [0|0] "" TMU + SG_ HU_LangStatus : 20|3@0+ (1,0) [0|0] "" TMU + +BO_ 369 HU_Car_PE_01: 8 H_U + SG_ HU_VehiclePwr : 3|4@0+ (1,0) [0|0] "" AMP,ASD,AVM,CCP,CLOCK,CLU,CUBIS,DATC,FHCU,IPM,KBD,KMA_TMU,MON,RRC,RSE_L,RSE_R,TMU + +BO_ 1392 HU_TMU_P_01: 8 H_U + SG_ HU_GPS_Signal : 7|64@0+ (1,0) [0|0] "" TMU + +BO_ 112 HU_AMP_E_09: 8 H_U + SG_ AMP_Beep1VolumeStep : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep1Frequency : 15|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep1Ch_OutputMask : 31|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep1DurationOn : 47|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep1DurationOff : 55|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep1NumberOfCycles : 63|8@0+ (1,0) [0|0] "" AMP + +BO_ 1390 GW_CLU_P: 8 CLU + SG_ C_VehicleSpeed : 7|8@0+ (1,0) [0|254] "" H_U,IBOX + SG_ C_Odometer : 15|24@0+ (1,0) [0|999999] "" H_U,IBOX + +BO_ 363 GW_IPM_PE_2: 8 CLU + SG_ C_DRVUnlockState : 1|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_ASTUnlockState : 3|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_RLUnlockstate : 5|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_RRUnlockState : 7|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_VehicleInfoTMU : 9|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_Engine_Status : 11|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_TMULockFeedBack : 23|2@0+ (1,0) [0|0] "" CUBIS,TMU + +BO_ 362 GW_IPM_PE_1: 8 CLU + SG_ C_AV_Tail : 1|2@0+ (1,0) [0|0] "" AMP,CCP,CLOCK,CLU,HUD,H_U,IBOX,RRC,RSE_L + SG_ C_ParkingBrakeSW : 3|2@0+ (1,0) [0|0] "" H_U + SG_ C_RKECMD : 7|4@0+ (1,0) [0|0] "" H_U + SG_ C_BAState : 9|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_IGNSW : 14|3@0+ (1,0) [0|0] "" AMP,AVM,CUBIS,EDT,H_U,MON,RRC,SWRC + SG_ C_CountryCfg : 18|3@0+ (1,0) [0|0] "" AVM,H_U + SG_ C_AltL : 25|2@0+ (1,0) [0|0] "" H_U + SG_ C_TailLampActivity : 27|2@0+ (1,0) [0|0] "" AMP,CCP,CLOCK,HUD,H_U,IBOX,RRC,RSE_L,SWRC + SG_ RearSW_RSELockOnOff : 29|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_TMULockFeedBack : 31|2@0+ (1,0) [0|0] "" CUBIS,TMU + SG_ C_SMKTeleCrankingState : 33|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_SMKTeleCrankingFailRes : 35|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_RKECMD_GEN2 : 39|3@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_Acu_CshAct : 41|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_IntTailAct : 43|2@0+ (1,0) [0|0] "" AMP,CCP,CLOCK,CLU,HUD,H_U,IBOX,RRC,RSE_L + SG_ C_PassiveAccessUnlock : 47|3@0+ (1,0) [0|0] "" H_U,IBOX + SG_ Lca_IndLeft : 49|2@0+ (1,0) [0|0] "" H_U + SG_ FL_SndWarn : 51|2@0+ (1,0) [0|0] "" AMP + SG_ FR_SndWarn : 53|2@0+ (1,0) [0|0] "" AMP + SG_ Lca_IndRight : 55|2@0+ (1,0) [0|0] "" H_U + SG_ RCTA_IndLeft : 57|2@0+ (1,0) [0|0] "" H_U + SG_ RL_SndWarn : 59|2@0+ (1,0) [0|0] "" AMP + SG_ RR_SndWarn : 61|2@0+ (1,0) [0|0] "" AMP + SG_ RCTA_IndRight : 63|2@0+ (1,0) [0|0] "" H_U + +BO_ 361 GW_CHASSIS_PE_1: 8 CLU + SG_ C_Inhibit_State : 3|4@0+ (1,0) [0|0] "" AVM,H_U + SG_ C_P_BrakeStatus : 5|2@0+ (1,0) [0|0] "" AVM,H_U + SG_ C_Clu_AltLStatus : 7|2@0+ (1,0) [0|0] "" AVM,H_U + +BO_ 359 GW_WARNING_PE_01: 8 CLU + SG_ Spas_BEEP_Alarm : 3|4@0+ (1,0) [0|0] "" AMP + SG_ Spas_Audio_VolumeDown : 5|2@0+ (1,0) [0|0] "" AMP + SG_ Spas_Spkr_Flh_Alarm : 9|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Spas_Spkr_Fcnt_Alarm : 11|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Spas_Spkr_Frh_Alarm : 13|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Spas_Spkr_Rlh_Alarm : 17|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Spas_Spkr_Rcnt_Alarm : 19|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Spas_Spkr_Rrh_Alarm : 21|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Lkas_SysStatus : 27|4@0+ (1,0) [0|0] "" AMP,H_U + SG_ Lkas_LH_Warning : 29|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Lkas_RH_Warning : 31|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Spas_Spkr_Level : 35|3@0+ (1,0) [0|0] "" AMP + SG_ Lkas_Audio_VolumeDown : 37|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Audio_VolumeDown : 39|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_BEEP_Alarm : 43|4@0+ (1,0) [0|0] "" AMP + SG_ Pas_Audio_VolumeDown : 45|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_Spkr_Level : 32|3@0+ (1,0) [0|0] "" AMP + SG_ Pas_Spkr_Flh_Alarm : 49|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_Spkr_Fcnt_Alarm : 51|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_Spkr_Frh_Alarm : 53|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_Spkr_Rlh_Alarm : 57|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_Spkr_Rcnt_Alarm : 59|2@0+ (1,0) [0|0] "" AMP,H_U + SG_ Pas_Spkr_Rrh_Alarm : 61|2@0+ (1,0) [0|0] "" AMP,H_U + +BO_ 1376 HU_TMU_P_02: 8 H_U + SG_ HU_GPS_Signal2 : 7|8@0+ (2,0) [0|0] "Degree" TMU + SG_ HU_GPS_Signal3 : 9|2@0+ (1,0) [0|0] "" TMU + SG_ HU_GPS_Signal4 : 12|3@0+ (1,0) [0|0] "" TMU + +BO_ 93 DATC_HU_E_SYS: 8 CLU + SG_ DATC_SWVerMajor : 7|8@0+ (1,0) [0|254] "" H_U + SG_ DATC_SWVerMinor : 15|8@0+ (1,0) [0|254] "" H_U + SG_ DATC_CANVerMajor : 23|8@0+ (1,0) [0|254] "" H_U + SG_ DATC_CANVerMinor : 31|8@0+ (1,0) [0|254] "" H_U + +BO_ 344 GW_CLU_PE: 8 CLU + SG_ C_InhibitP : 1|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_InhibitR : 3|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_InhibitN : 5|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_InhibitD : 7|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_P_BrakeStatus : 9|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_Clu_AltLStatus : 11|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ CF_Clu_LowfuelWarning : 13|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ C_InhibitRMT : 15|2@0+ (1,0) [0|0] "" H_U + SG_ CF_SMKRKECmd : 18|3@0+ (1,0) [0|0] "" H_U + +BO_ 87 HU_E_02: 8 H_U + SG_ NaviValidity : 1|2@0+ (1,0) [0|0] "" CGW,CLU + +BO_ 343 GW_WARNING_PE_02: 8 CLU + SG_ CF_Lkas_TsrSlifOpt : 1|2@0+ (1,0) [0|3] "" H_U + SG_ CF_Lkas_TsrStatus : 3|2@0+ (1,0) [0|3] "" H_U + SG_ CF_Lkas_TsrAddinfo_Disp : 7|2@0+ (1,0) [0|3] "" H_U + SG_ CF_Lkas_TsrSpeed_Display : 15|8@0+ (1,0) [0|255] "" H_U + +BO_ 75 HU_AMP_E_12: 8 H_U + SG_ AMP_EngOrderC2GainSet : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_EngOrderC4GainSet : 15|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_EngOrderC6GainSet : 23|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_APSBand0GainSet : 31|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_APSBand1GainSet : 39|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_APSBand2GainSet : 47|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_APSBand3GainSet : 55|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_APSBand4GainSet : 63|8@0+ (1,0) [0|0] "" AMP + +BO_ 74 HU_AMP_E_11: 8 H_U + SG_ AMP_PESSMode : 1|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_PESSDesignSet : 4|3@0+ (1,0) [0|0] "" AMP + SG_ AMP_PESSAPSSet : 7|3@0+ (1,0) [0|0] "" AMP + SG_ AMP_PESSVolumeSet : 15|8@0+ (1,0) [0|0] "" AMP + +BO_ 1864 TP_AMP_EDT: 8 AMP + SG_ Byte0_TCP_748 : 7|8@0+ (1,0) [0|0] "" EDT + SG_ Byte1_Data_748 : 15|8@0+ (1,0) [0|0] "" EDT + SG_ Byte2_Data_748 : 23|8@0+ (1,0) [0|0] "" EDT + SG_ Byte3_Data_748 : 31|8@0+ (1,0) [0|0] "" EDT + SG_ Byte4_Data_748 : 39|8@0+ (1,0) [0|0] "" EDT + SG_ Byte5_Data_748 : 47|8@0+ (1,0) [0|0] "" EDT + SG_ Byte6_Data_748 : 55|8@0+ (1,0) [0|0] "" EDT + SG_ Byte7_Data_748 : 63|8@0+ (1,0) [0|0] "" EDT + +BO_ 327 TMU_HU_PE_03: 8 TMU + SG_ TMU_TbT_TurnIcon : 7|8@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_CountDownBar : 11|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_Distance_Unit : 13|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_DestDistance_Unit : 15|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_DistanceLo : 27|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_DistanceHi : 23|12@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_DestDistanceLo : 43|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_DestDistanceHi : 39|12@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_ExpectRemainHour : 55|8@0+ (1,0) [0|0] "" H_U + SG_ TMU_TbT_ExpectRemainMin : 61|6@0+ (1,0) [0|0] "" H_U + +BO_ 326 TMU_HU_PE_02: 8 TMU + SG_ TMU_CallStatus : 3|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_CallType : 6|3@0+ (1,0) [0|0] "" H_U + SG_ TMU_CDMA_Streng : 11|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_PacketStatus : 13|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_TalkTimeHour : 20|5@0+ (1,0) [0|0] "" H_U + SG_ TMU_TalkTimeMinute : 29|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_TalkTimeSecond : 37|6@0+ (1,0) [0|0] "" H_U + +BO_ 325 TMU_HU_PE_01: 8 TMU + SG_ TMU_AliveStatus : 2|3@0+ (1,0) [0|0] "" H_U + SG_ TMU_AudioStatus : 4|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_UpdateStatus : 7|3@0+ (1,0) [0|0] "" H_U + SG_ TMU_LangStatus : 10|3@0+ (1,0) [0|0] "" H_U + SG_ TMU_VoiceRecStatus : 12|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_MicStatus : 14|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_ServCommuStatus : 19|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_PowerStatus : 21|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_EngineStatus : 23|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_DownProgress : 31|8@0+ (1,0) [0|0] "" H_U + +BO_ 69 TMU_HU_E_04: 8 TMU + SG_ TMU_eCall : 1|2@0+ (1,0) [0|0] "" H_U + +BO_ 67 TMU_GW_E_01: 8 TMU + SG_ C_ReqDrLock : 1|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ C_ReqDrUnlock : 3|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ C_ReqHazard : 5|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ C_ReqHorn : 7|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ C_ReqEngineOperate : 9|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + +BO_ 66 TMU_HU_E_03: 8 TMU + SG_ CDMA_SelfDiag : 1|2@0+ (1,0) [0|0] "" H_U + SG_ CDMA_Antena_SelfDiag : 3|2@0+ (1,0) [0|0] "" H_U + +BO_ 1345 TMU_HU_P_02: 8 TMU + SG_ TMU_SupVoiceTextService : 1|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_SupEcoCoachService : 3|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_SupSongTagService : 5|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_SupContentService : 7|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_MajorVersion : 15|8@0+ (1,0) [0|0] "" H_U + SG_ TMU_MinorVersion : 23|8@0+ (1,0) [0|0] "" H_U + SG_ TMU_DistributeInfo : 27|4@0+ (1,0) [0|0] "" H_U + +BO_ 65 TMU_HU_E_02: 8 TMU + SG_ TMU_BarLevel1 : 7|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel2 : 1|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel4 : 21|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel3 : 11|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel5 : 31|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel6 : 25|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel8 : 45|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel7 : 35|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel9 : 55|6@0+ (1,0) [0|0] "" H_U + SG_ TMU_BarLevel10 : 63|6@0+ (1,0) [0|0] "" H_U + +BO_ 1344 TMU_HU_P_01: 8 TMU + SG_ TMU_Arrow : 3|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_ReFill_Info : 5|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_AverageMPG : 1|10@0+ (1,0) [0|0] "" H_U + SG_ TMU_TotalMPG : 23|10@0+ (1,0) [0|0] "" H_U + SG_ TMU_RewardStar : 37|14@0+ (1,0) [0|0] "" H_U + +BO_ 64 TMU_HU_E_01: 8 TMU + SG_ TMU_DisMode : 3|4@0+ (1,0) [0|0] "" H_U + SG_ TMU_AudSrcType : 7|4@0+ (1,0) [0|0] "" CLU,DATC,H_U + SG_ TMU_AudReqCmd : 9|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_LangCmd : 12|3@0+ (1,0) [0|0] "" H_U + SG_ TMU_ServReq : 15|3@0+ (1,0) [0|0] "" H_U + SG_ TMU_ErrorEvent : 23|8@0+ (1,0) [0|0] "" H_U + SG_ TMU_BeepCmd : 25|2@0+ (1,0) [0|0] "" H_U + SG_ TMU_eCall : 28|3@0+ (1,0) [0|0] "" H_U + +BO_ 62 HU_Navi_E_00: 8 H_U + SG_ Navi_SLIF_SpdUnit : 1|2@0+ (1,0) [0|0] "" CGW,CLU,HUD + SG_ Navi_SLIF_Frwinfo : 4|3@0+ (1,0) [0|0] "" CGW,CLU,HUD + SG_ Navi_SLIF_LinkClass : 7|3@0+ (1,0) [0|0] "" CGW,CLU,HUD + SG_ Navi_SLIF_SpdLimit : 15|8@0+ (1,0) [1|254] "" CGW,CLU,HUD + SG_ Navi_SLIFMapSource : 29|4@0+ (1,0) [0|8] "" CGW,CLU,HUD + SG_ Navi_SLIF_CountryCode : 23|10@0+ (1,0) [0|0] "" CGW,CLU,HUD + +BO_ 52 HU_DATC_E_02: 8 H_U + SG_ HU_DATC_DrTempUpDn : 1|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_PsTempUpDn : 3|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_RlTempUpDn : 5|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_RrTempUpDn : 7|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_MainBlower : 11|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_SubBlower : 15|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_RearBlower : 19|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATCRearPsModeSet : 23|4@0+ (1,0) [0|0] "" CGW,CLU + SG_ HU_DATC_FrontModeSet : 27|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_RearModeSet : 31|4@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_AutoSet : 33|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_OffReq : 35|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_IntakeSet : 37|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_RearOnOffSet : 39|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_AcSet : 41|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_AqsSet : 43|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_FrontDefog : 45|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_RearDefog : 47|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_ZoneControl : 49|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ HU_DATC_CO2Set : 51|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ DATC_SmartVentOnOffSet : 53|2@0+ (1,0) [0|0] "" CGW,CLU,DATC,IPM + SG_ DATC_ADSOnOffSet : 55|2@0+ (1,0) [0|0] "" CGW,CLU + SG_ HU_DATC_RearAutoDisp : 57|2@0+ (1,0) [0|0] "" CGW,CLU + SG_ HU_DATC_RearOffDisp : 59|2@0+ (1,0) [0|0] "" CGW,CLU + +BO_ 308 DATC_PE_05: 8 CLU + SG_ DATC_PwrInfo : 3|4@0+ (1,0) [0|0] "" AMP,AVM,CUBIS,H_U,MON + SG_ DATC_AltL : 5|2@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_CarInfo : 7|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_ParkingBrake : 9|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_LowFuelWarn : 11|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_Rear_Off_Disp : 13|2@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_Rear_AutoDisp : 15|2@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_Rear_BlowerDisp : 19|4@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_DrSeatWarmerDisp : 22|3@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_SyncDisp : 27|4@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_RearDispCtrl : 31|4@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_RearDrModeDisp : 35|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_PsSeatWarmerDisp : 38|3@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_DrVentSeatDisp : 42|3@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_PSVentSeatDisp : 46|3@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_RrDefLed : 49|2@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_SmartVentOnOffStatus : 51|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_ADSOnOffStatus : 53|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_AcDisp_OSD : 55|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_PsModeDisp_OSD : 59|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_ModeDisp_OSD : 63|4@0+ (1,0) [0|0] "" H_U + +BO_ 307 DATC_PE_04: 8 CLU + SG_ DATC_DiagMode : 1|2@0+ (1,0) [0|0] "" H_U,IBOX,MON + SG_ DATC_Rear_ChangeReqDisp : 3|2@0+ (1,0) [0|0] "" H_U,IBOX,MON + SG_ DATC_Rear_ClimateScnDisp : 5|2@0+ (1,0) [0|0] "" H_U,IBOX,MON + SG_ DATC_CO2OnOffStatus : 7|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_SelfDiagDisp : 15|8@0+ (1,0) [0|0] "" H_U,IBOX,MON + SG_ DATC_RearBlwDisp_OSD : 19|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_AqsLevelOut : 23|4@0+ (1,0) [0|0] "" H_U,IBOX,MON + SG_ DATC_RearModeDisp : 27|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_RearPsModeDisp : 31|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_FrontBlwDisp_Ps : 35|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_AutoDisp_Ps : 39|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_RearModeDisp_OSD : 43|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_RearPSModeDisp_OSD : 47|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_FrontBlwDisp_OSD : 51|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_FrontBlwDispPs_OSD : 55|4@0+ (1,0) [0|0] "" H_U + SG_ DATC_Variant : 63|8@0+ (1,0) [0|0] "" H_U,IBOX,MON + +BO_ 306 DATC_PE_03: 8 CLU + SG_ DATC_ModeDisp : 3|4@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_TempUnit : 5|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_AutoDisp : 9|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_IntakeDisp : 11|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_ChangeReqDisp : 13|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_AcDisp : 17|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_AqsDisp : 19|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_ClimateScnDisp : 21|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_DualDisp : 25|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_OffDisp : 27|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_OpSts : 30|3@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_RearManual : 33|2@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_FrDefLed : 37|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_SmartVentDisp : 39|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_AutoDefogBlink : 41|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_ADSDisp : 43|2@0+ (1,0) [0|0] "" H_U + SG_ DATC_IonClean : 45|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_CO2Warning : 47|2@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_SubBlowerDisp : 51|4@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_BeepReq : 55|4@0+ (1,0) [0|0] "" H_U,KBD,MON + SG_ DATC_MainBlowerDisp : 59|4@0+ (1,0) [0|0] "" H_U,IBOX + SG_ DATC_PsModeDisp : 63|4@0+ (1,0) [0|0] "" H_U,IBOX + +BO_ 1329 DATC_P_02: 8 CLU + SG_ DATC_AmbientTemp_C : 7|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_AmbientTemp_F : 23|8@0+ (1,0) [0|0] "" H_U,MON + +BO_ 305 DATC_PE_02: 8 CLU + SG_ DATC_DrTempDispC : 7|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON + SG_ DATC_Rear_DrTempDispC : 15|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON + SG_ DATC_DrTempDispF : 23|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON + SG_ DATC_Rear_DrTempDispF : 31|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON + SG_ DATC_PsTempDispC : 39|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON + SG_ Datc_RearPsTempDispC : 47|8@0+ (0.5,14) [15|32] "C" H_U,IBOX,MON + SG_ DATC_PsTempDispF : 55|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON + SG_ DATC_RearPsTempDispF : 63|8@0+ (1,56) [58|90] "F" H_U,IBOX,MON + +BO_ 304 DATC_PE_01: 8 CLU + SG_ DATC_Type : 7|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_VerMMMajor : 15|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_VerMMMinor : 23|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_VerBDFMajor : 31|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_VerBDMinor : 39|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_VerCSMajor : 47|8@0+ (1,0) [0|0] "" H_U,MON + SG_ DATC_VerCSMinor : 55|8@0+ (1,0) [0|0] "" H_U,MON + +BO_ 291 HU_CLU_PE_07: 8 H_U + SG_ NV_DS_Curve : 3|4@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_Merge : 7|4@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_RailCross : 9|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_FallingRocks : 11|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_SchoolZone : 13|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_AccidentBlack : 15|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_SpeedBump : 17|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_RoadKill : 19|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_Downhill : 21|2@0+ (1,0) [0|0] "" CLU + SG_ NV_DS_Fog : 23|2@0+ (1,0) [0|0] "" CLU + SG_ NV_Display_TG : 31|2@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_Charge : 39|16@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_Charge_Unit : 55|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ TBT_BarGraph100Level : 63|8@0+ (1,0) [0|100] "%" CLU,HUD + +BO_ 290 HU_CLU_PE_06: 8 H_U + SG_ NV_SD_SpdLimit2 : 3|4@0+ (10,0) [0|0] "km/h" CLU + SG_ NV_SD_SpdLimit1 : 7|4@0+ (10,0) [0|0] "km/h" CLU + SG_ NV_SD_EtcCam : 11|4@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_SpdLimit3 : 15|4@0+ (10,0) [0|0] "km/h" CLU + SG_ NV_SD_SignCam : 17|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_SignOverCam : 19|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_MobileCam : 21|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_FixedCam : 23|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_OverLoadCam : 25|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_ParkCam : 27|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_CutInCam : 29|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_BusOnlyCam : 31|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_ShoulderCam : 35|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_TrafficCam : 37|2@0+ (1,0) [0|0] "" CLU + SG_ NV_SD_PlateRcgCam : 39|2@0+ (1,0) [0|0] "" CLU + +BO_ 286 HU_CLU_PE_10: 8 H_U + SG_ Navi_TBTInfo : 63|8@0+ (1,0) [0|0] "" CGW,CLU + +BO_ 29 CLU_HU_E_00: 8 CLU + SG_ SYS_CLUVer : 7|16@0+ (1,0) [0|0] "" CUBIS,H_U + SG_ CLU_ClockInfoReq : 17|2@0+ (1,0) [0|0] "" H_U + SG_ CLU_DateInfoReq : 19|2@0+ (1,0) [0|0] "" H_U + +BO_ 27 AMP_HU_E_00: 8 AMP + SG_ SYS_AMPVer : 7|16@0+ (1,0) [0|0] "" H_U + +BO_ 23 HU_IPM_E_00: 8 H_U + SG_ C_ADrLNValueSet : 2|3@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ADrUNValueSet : 5|3@0+ (1,0) [0|0] "" DATC,IPM + SG_ SYS_Ver_Req : 7|2@0+ (1,0) [0|0] "" AMP,AVM,CLU,CUBIS,DATC,IPM + SG_ C_IMSRValueReq : 9|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_PSMNValueSet : 11|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_SCMNValueSet : 13|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ADrLURValueReq : 15|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ABuzzerNValueSet : 17|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_AlarmRValueReq : 19|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ArmWKeyNValueSet : 21|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_TwUnRValueReq : 23|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_TwUnNValueSet : 25|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_AutoMRFoldRValueReq : 27|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_AutoMRFoldNValueSet : 29|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ADrLRValueReq : 31|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ArmWKeyRValueReq : 33|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ABuzzerRValueReq : 35|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_ADrURValueReq : 37|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_PSMRValueReq : 39|2@0+ (1,0) [0|0] "" DATC,IPM + SG_ C_SCMRValueReq : 47|2@0+ (1,0) [0|0] "" DATC,IPM + +BO_ 277 HU_CLU_PE_02: 8 H_U + SG_ TBT_Display_Type : 7|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ TBT_Side_Street : 15|16@0+ (1,0) [0|0] "" CLU,HUD + SG_ TBT_Direction : 31|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ TBT_Distance_Turn_Point : 39|16@0+ (1,0) [0|0] "m" CLU,HUD + SG_ TBT_Combined_Side_Street : 51|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ TBT_Scale : 55|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ TBT_DistancetoTurnPoint : 59|4@0+ (1,0) [0|0] "times" CLU,HUD + SG_ TBT_Bar_Graph_Level : 63|4@0+ (10,0) [0|100] "" CLU,HUD + +BO_ 276 HU_CLU_PE_01: 8 H_U + SG_ HU_OpState : 6|7@0+ (1,0) [0|0] "" AMP,CLU + SG_ HU_Navi_On_Off : 7|1@0+ (1,0) [0|0] "" CLU,HUD + SG_ HU_Preset_Number : 12|5@0+ (1,1) [1|30] "" AMP,CLU + SG_ HU_Tuner_Area : 15|3@0+ (1,0) [0|0] "" AMP,CLU + SG_ HU_Track_Number : 23|16@0+ (1,0) [0|0] "" CLU + SG_ HU_Play_time_Sec : 39|6@0+ (1,0) [0|0] "" CLU + SG_ HU_Play_time_Min : 33|7@0+ (1,0) [0|0] "" CLU + SG_ HU_Play_time_Hour : 42|6@0+ (1,0) [0|0] "" CLU + SG_ HU_Disc_select_No : 59|4@0+ (1,0) [0|0] "" CLU + SG_ HU_Frequency : 52|9@0+ (1,0) [0|0] "" AMP,CLU + +BO_ 17 HU_AMP_E_10: 8 H_U + SG_ AMP_Beep2VolumeStep : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep2Frequency : 15|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep2Ch_OutputMask : 31|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep2DurationOn : 47|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep2DurationOff : 55|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep2NumberOfCycles : 63|8@0+ (1,0) [0|0] "" AMP + +BO_ 15 HU_AMP_E_08: 8 H_U + SG_ AMP_MainVolumeSet : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_BalanceSet : 15|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_FadeSet : 23|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_BassSet : 31|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_MidSet : 39|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_TrebleSet : 47|8@0+ (1,0) [0|0] "" AMP + +BO_ 14 HU_AMP_E_07: 8 H_U + SG_ AMP_HFVolumeStep : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_HFMainAudioCut : 15|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_HFChannelOutputMask : 23|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_HFChannelMuteMask : 39|16@0+ (1,0) [0|0] "" AMP + +BO_ 13 HU_AMP_E_06: 8 H_U + SG_ AMP_MTSVolumeStep : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_MTSMainAudioCut : 15|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_MTSChannelOutputMask : 23|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_MTSChannelMuteMask : 39|16@0+ (1,0) [0|0] "" AMP + +BO_ 12 HU_AMP_E_05: 8 H_U + SG_ AMP_NaviVolumeStep : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_NaviMainAudioCut : 15|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_NaviChannelOutputMask : 23|16@0+ (1,0) [0|0] "" AMP + SG_ AMP_NaviChannelMuteMask : 39|16@0+ (1,0) [0|0] "" AMP + +BO_ 11 HU_AMP_E_04: 8 H_U + SG_ AMP_Drive : 1|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_ConvertibleTop : 5|2@0+ (1,0) [0|0] "" AMP + +BO_ 10 HU_AMP_E_03: 8 H_U + SG_ AMP_CrtVehicleID : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_SPDIFMode : 11|4@0+ (1,0) [0|0] "" AMP + SG_ AMP_VersionReq : 17|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_UpdateStart : 25|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_UpdateEnd : 33|2@0+ (1,0) [0|0] "" AMP + +BO_ 9 HU_AMP_E_02: 8 H_U + SG_ AMP_Mute : 1|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_RearSpMute : 3|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_SurroundMode : 5|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_VEQMode : 7|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_AudioMode : 15|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_EQ : 17|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_Reset : 19|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_SPDIFMute : 21|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_DefaultBeep1 : 25|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_DefaultBeep2 : 29|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_BeatsMode : 33|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_VIPMode : 35|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_QLSMode : 37|2@0+ (1,0) [0|0] "" AMP + +BO_ 1288 HU_CLU_P_02: 8 H_U + SG_ NV_TIME_TYPE : 3|4@0+ (1,0) [0|0] "" CLU + SG_ NV_Hour : 15|8@0+ (1,0) [0|0] "" CLU + SG_ NV_Min : 23|8@0+ (1,0) [0|0] "" CLU + +BO_ 8 HU_AMP_E_01: 8 H_U + SG_ AMP_HFMode : 1|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_NaviMode : 3|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_MTSMode : 5|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_VSCMode : 7|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep1Mode : 9|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_Beep2Mode : 11|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_SDVCStep : 14|3@0+ (1,0) [0|0] "" AMP + SG_ AMP_ASDMode : 18|3@0+ (1,0) [0|0] "" AMP + SG_ AMP_SignalDoctor : 20|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_AutoVolume : 22|2@0+ (1,0) [0|0] "" AMP + +BO_ 1287 HU_CLU_P_01: 8 H_U + SG_ NV_DistToTurn_F1 : 3|4@0+ (1,0) [0|0] "" CLU + SG_ NV_DistToTurn_Unit : 7|4@0+ (1,0) [0|0] "" CLU + SG_ NV_DistToTurn_F3 : 11|4@0+ (1,0) [0|0] "" CLU + SG_ NV_DistToTurn_F2 : 15|4@0+ (1,0) [0|0] "" CLU + SG_ NV_DistToTurn_I1 : 23|16@0+ (1,0) [0|0] "" CLU + SG_ NV_DistToTurn_I2 : 39|16@0+ (1,0) [0|0] "" CLU + SG_ NV_DistToTurn_I3 : 55|16@0+ (1,0) [0|0] "" CLU + +BO_ 1286 HU_CLU_P_00: 8 H_U + SG_ NV_EstDist_F : 3|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_EstDist_Unit : 7|4@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_EstHour : 15|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_EstMin : 23|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_Azimuth : 31|8@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_EstDist_I : 39|16@0+ (1,0) [0|0] "" CLU,HUD + SG_ NV_EstimTimeType : 49|2@0+ (1,0) [0|0] "" CGW,CLU,HUD + SG_ NV_EstimTimeFormat : 51|2@0+ (1,0) [0|0] "" CGW,CLU,HUD + +BO_ 1284 HU_AMP_P_01: 8 H_U + SG_ HU_VehicleSpeed : 7|8@0+ (1,0) [0|0] "" AMP + SG_ AMP_SetMaxMainVolStep : 9|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_LKASWarningOn : 21|2@0+ (1,0) [0|0] "" AMP + SG_ AMP_BSDWarningOn : 23|2@0+ (1,0) [0|0] "" AMP + +BO_ 256 HU_MON_PE_01: 8 H_U + SG_ HU_Type : 7|8@0+ (1,0) [0|0] "" AMP,CGW,CLU,HUD,KMA_TMU + SG_ HU_VerMajor : 15|8@0+ (1,0) [0|0] "" AMP,CLU,KMA_TMU,MON + SG_ HU_VerMinor : 23|8@0+ (1,0) [0|0] "" AMP,CLU,KMA_TMU,MON + SG_ HU_DistributeInfo : 31|8@0+ (1,0) [0|0] "" AMP,CGW,CLU,KMA_TMU,MON,RRC + SG_ HU_SubVerMajor : 39|8@0+ (1,0) [0|0] "" AMP,MON + SG_ HU_SubVerMinor : 47|8@0+ (1,0) [0|0] "" AMP,MON + SG_ HU_SDARSVersion : 55|8@0+ (1,0) [0|0] "" AMP,MON + SG_ HU_AdasSupport : 58|3@0+ (1,0) [0|0] "" CGW,CLU + +BO_ 1092 NM_CLOCK: 8 CLOCK + SG_ Destination_CLOCK : 7|8@0+ (1,0) [0|0] "" HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_CLOCK : 13|2@0+ (1,0) [0|0] "" HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_CLOCK : 10|3@0+ (1,0) [0|0] "" HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1108 NM_HUD: 8 HUD + SG_ Destination_HUD : 7|8@0+ (1,0) [0|0] "" CLOCK,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_HUD : 13|2@0+ (1,0) [0|0] "" CLOCK,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_HUD : 10|3@0+ (1,0) [0|0] "" CLOCK,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1088 NM_H_U: 8 H_U + SG_ Destination_H_U : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_H_U : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_H_U : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1091 NM_DATC: 8 DATC + SG_ Destination_DATC : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_DATC : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_DATC : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1105 NM_CCP: 8 CCP + SG_ Destination_CCP : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_CCP : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_CCP : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1100 NM_KMA_TMU: 8 KMA_TMU + SG_ Destination_KMA_TMU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_KMA_TMU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_KMA_TMU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1098 NM_CUBIS: 8 CUBIS + SG_ Destination_CUBIS : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_CUBIS : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_CUBIS : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1099 NM_TMU: 8 TMU + SG_ Destination_TMU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_TMU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_TMU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1095 NM_IPM: 8 IPM + SG_ Destination_IPM : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_IPM : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_IPM : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1107 NM_RSE_R: 8 RSE_R + SG_ Destination_RSE_R : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_RSE_R : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_RSE_R : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1093 NM_RRC: 8 RRC + SG_ Destination_RRC : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_RRC : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_RRC : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1109 NM_CGW: 8 CGW + SG_ Destination_CGW : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_CGW : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_CGW : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1106 NM_RSE_L: 8 RSE_L + SG_ Destination_RSE_L : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_RSE_L : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_RSE_L : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1096 NM_AMP: 8 AMP + SG_ Destination_AMP : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_AMP : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_AMP : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1103 NM_EDT: 8 EDT + SG_ Destination_EDT : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_EDT : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_EDT : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1110 NM_SWRC: 8 SWRC + SG_ Destination_SWRC : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_SWRC : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_SWRC : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,IBOX,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1102 NM_IBOX: 8 IBOX + SG_ Destination_IBOX : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_IBOX : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,CLU,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_IBOX : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,CLU,FHCU,ASD,MON,AVM,KBD + +BO_ 1101 NM_CLU: 8 CLU + SG_ Destination_CLU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,FHCU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_CLU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,FHCU,ASD,MON,AVM,KBD + SG_ NMCommandCode_CLU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,FHCU,ASD,MON,AVM,KBD + +BO_ 1097 NM_FHCU: 8 FHCU + SG_ Destination_FHCU : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,ASD,MON,AVM,KBD + SG_ NMSleepFlag_FHCU : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,ASD,MON,AVM,KBD + SG_ NMCommandCode_FHCU : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,ASD,MON,AVM,KBD + +BO_ 1094 NM_ASD: 8 ASD + SG_ Destination_ASD : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,MON,AVM,KBD + SG_ NMSleepFlag_ASD : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,MON,AVM,KBD + SG_ NMCommandCode_ASD : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,MON,AVM,KBD + +BO_ 1089 NM_MON: 8 MON + SG_ Destination_MON : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,AVM,KBD + SG_ NMSleepFlag_MON : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,AVM,KBD + SG_ NMCommandCode_MON : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,AVM,KBD + +BO_ 1104 NM_AVM: 8 AVM + SG_ Destination_AVM : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,KBD + SG_ NMSleepFlag_AVM : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,KBD + SG_ NMCommandCode_AVM : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,KBD + +BO_ 1090 NM_KBD: 8 KBD + SG_ Destination_KBD : 7|8@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM + SG_ NMSleepFlag_KBD : 13|2@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM + SG_ NMCommandCode_KBD : 10|3@0+ (1,0) [0|0] "" CLOCK,HUD,H_U,DATC,CCP,KMA_TMU,CUBIS,TMU,IPM,RSE_R,RRC,CGW,RSE_L,AMP,EDT,SWRC,IBOX,CLU,FHCU,ASD,MON,AVM + diff --git a/opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc b/opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc new file mode 100644 index 0000000000..3524f9b21a --- /dev/null +++ b/opendbc_repo/opendbc/dbc/hyundai_i30_2014.dbc @@ -0,0 +1,549 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 128 EMS_DCT1: 8 XXX + SG_ PV_AV_CAN : 0|8@1+ (0.3906,0) [0|99.603] "%" XXX + SG_ TQ_STND : 8|6@1+ (10,0) [0|630] "Nm" XXX + SG_ F_N_ENG : 14|1@1+ (1,0) [0|1] "" XXX + SG_ F_SUB_TQI : 15|1@1+ (1,0) [0|1] "" XXX + SG_ N : 16|16@1+ (0.25,0) [0|16383.8] "rpm" XXX + SG_ TQI_ACOR : 32|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQFR : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQI : 48|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ CF_Ems_Alive : 56|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Ems_ChkSum : 60|4@1+ (1,0) [0|15] "" XXX + + +BO_ 129 EMS_DCT2: 8 XXX + SG_ CR_Ems_SoakTimeExt : 0|6@1+ (5,0) [0|315] "Min" XXX + SG_ BRAKE_ACT : 6|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Ems_EngOperStat : 8|8@1+ (1,0) [0|255] "" XXX + SG_ CR_Ems_IndAirTemp : 16|8@1+ (0.75,-48) [-48|143.25] "" XXX + SG_ CF_Ems_Alive2 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Ems_ChkSum2 : 60|4@1+ (1,0) [0|15] "" XXX + + +BO_ 160 EngFrzFrm1: 8 XXX + SG_ PID_04h : 0|8@1+ (0.392157,0) [0|100] "%" XXX + SG_ PID_05h : 8|8@1+ (1,-40) [-40|215] "" XXX + SG_ PID_0Ch : 16|16@1+ (0.25,0) [0|16383.8] "rpm" XXX + SG_ PID_0Dh : 32|8@1+ (1,0) [0|255] "km/h" XXX + SG_ PID_11h : 40|8@1+ (0.392157,0) [0|100] "%" XXX + SG_ PID_03h : 48|16@1+ (1,0) [0|65535] "" XXX + + +BO_ 161 EngFrzFrm2: 8 XXX + SG_ PID_06h : 0|8@1+ (0.78125,-100) [-100|99.22] "%" XXX + SG_ PID_07h : 8|8@1+ (0.78125,-100) [-100|99.22] "%" XXX + SG_ PID_08h : 16|8@1+ (0.78125,-100) [-100|99.22] "%" XXX + SG_ PID_09h : 24|8@1+ (0.78125,-100) [-100|99.22] "%" XXX + SG_ PID_0Bh : 32|8@1+ (1,0) [0|255] "kPa" XXX + SG_ PID_23h : 40|16@1+ (10,0) [0|655350] "kPa" XXX + + +BO_ 304 YRS1: 8 XXX + SG_ CR_Yrs_Yr : 0|16@1+ (0.005,-163.84) [-163.84|163.83] "" XXX + SG_ CF_Yrs_SnsStat1 : 16|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Yrs_YrStat : 20|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Yrs_LatAc : 32|16@1+ (0.000127465,-4.17677) [-4.17677|4.17652] "g" XXX + SG_ CR_Yrs_MsgCnt1 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Yrs_LatAcStat1 : 52|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Yrs_Crc1 : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 305 YRS3: 8 XXX + SG_ CR_Yrs_YawAcc : 0|16@1+ (0.125,-4096) [-4096|4095.75] "" XXX + SG_ CF_Yrs_YawAccStat : 20|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Yrs_Ax : 32|16@1+ (0.000127465,-4.17677) [-4.17677|4.17652] "g" XXX + SG_ CR_Yrs_MsgCnt3 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Yrs_AxStat : 52|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Yrs_Crc3 : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 320 YRS2: 8 XXX + SG_ CF_Yrs_McuStat : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CF_Yrs_SnsStat2 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ CF_Yrs_ExtSysStat : 32|8@1+ (1,0) [0|255] "" XXX + SG_ CR_Yrs_Diag : 40|8@1+ (1,0) [0|255] "" XXX + SG_ CR_Yrs_MsgCnt2 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Yrs_Type : 52|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Yrs_Crc2 : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 339 TCS1: 8 XXX + SG_ TCS_REQ : 0|1@1+ (1,0) [0|1] "" XXX + SG_ MSR_C_REQ : 1|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_PAS : 2|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_GSC : 3|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Esc_LimoInfo : 4|2@1+ (1,0) [0|3] "" XXX + SG_ ABS_DIAG : 6|1@1+ (1,0) [0|1] "" XXX + SG_ ABS_DEF : 7|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_DEF : 8|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_CTL : 9|1@1+ (1,0) [0|1] "" XXX + SG_ ABS_ACT : 10|1@1+ (1,0) [0|1] "" XXX + SG_ EBD_DEF : 11|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_PAS : 12|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_DEF : 13|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_CTL : 14|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_MFRN : 15|1@1+ (1,0) [0|1] "" XXX + SG_ DBC_CTL : 16|1@1+ (1,0) [0|1] "" XXX + SG_ DBC_PAS : 17|1@1+ (1,0) [0|1] "" XXX + SG_ DBC_DEF : 18|1@1+ (1,0) [0|1] "" XXX + SG_ HAC_CTL : 19|1@1+ (1,0) [0|1] "" XXX + SG_ HAC_PAS : 20|1@1+ (1,0) [0|1] "" XXX + SG_ HAC_DEF : 21|1@1+ (1,0) [0|1] "" XXX + SG_ ESS_STAT : 22|2@1+ (1,0) [0|3] "" XXX + SG_ TQI_TCS : 24|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQI_MSR : 32|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ CF_Esc_BrkCtl : 48|1@1+ (1,0) [0|1] "" XXX + SG_ ESC_OFF_STEP : 49|2@1+ (1,0) [0|3] "" XXX + SG_ _4WD_Status : 51|1@1+ (1,0) [0|1] "" XXX + SG_ AliveCounter_TCS1 : 52|4@1+ (1,0) [0|1] "" XXX + SG_ CheckSum_TCS1 : 56|8@1+ (1,0) [0|1] "" XXX + + +BO_ 356 VSM1: 8 XXX + SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" XXX + SG_ CF_Esc_Act : 12|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Esc_CtrMode : 13|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Esc_Def : 16|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Esc_AliveCnt : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Esc_Chksum : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 357 VSM2: 8 XXX + SG_ CR_Mdps_StrTq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" XXX + SG_ CR_Mdps_OutTq : 12|12@1+ (0.1,-204.8) [-204.8|204.7] "" XXX + SG_ CF_Mdps_Def : 24|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Mdps_SErr : 25|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Mdps_AliveCnt : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Mdps_Chksum : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 399 EMS_H2: 8 XXX + SG_ R_TqAcnApvC : 0|8@1+ (0.2,0) [0|51] "Nm" XXX + SG_ R_PAcnC : 8|8@1+ (125,0) [0|31875] "hPa" XXX + SG_ TQI_B : 16|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ SLD_VS : 24|8@1+ (1,0) [0|255] "km/h" XXX + SG_ CF_CdaStat : 32|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Ems_IsgStat : 35|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Ems_OilChg : 38|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_EtcLimpMod : 39|1@1+ (1,0) [0|1] "" XXX + SG_ R_NEngIdlTgC : 40|8@1+ (10,0) [0|2550] "rpm" XXX + SG_ CF_Ems_UpTarGr : 48|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_DownTarGr : 49|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_DesCurGr : 50|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Ems_SldAct : 54|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_SldPosAct : 55|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_HPresStat : 56|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_IsgBuz : 57|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_IdlStpFCO : 58|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_FCopen : 59|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_ActEcoAct : 60|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_EngRunNorm : 61|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_IsgStat2 : 62|2@1+ (2,0) [0|3] "" XXX + + +BO_ 497 TCS5: 8 XXX + SG_ ABS_W_LAMP : 0|1@1+ (1,0) [0|1] "" XXX + SG_ EBD_W_LAMP : 1|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_OFF_LAMP : 2|1@1+ (1,0) [0|1] "" XXX + SG_ TCS_LAMP : 3|2@1+ (1,0) [0|3] "" XXX + SG_ DBC_W_LAMP : 5|1@1+ (1,0) [0|1] "" XXX + SG_ DBC_F_LAMP : 6|2@1+ (1,0) [0|3] "" XXX + SG_ ODOMETER_LEFT : 8|4@1+ (1,0) [0|15] "m" XXX + SG_ ODOMETER_RIGHT : 12|4@1+ (1,0) [0|15] "m" XXX + SG_ WHEEL_FL : 16|12@1+ (0.125,0) [0|511.875] "km/h" XXX + SG_ WHEEL_FR : 28|12@1+ (0.125,0) [0|511.875] "km/h" XXX + SG_ WHEEL_RL : 40|12@1+ (0.125,0) [0|511.875] "km/h" XXX + SG_ WHEEL_RR : 52|12@1+ (0.125,0) [0|511.875] "km/h" XXX + + +BO_ 544 ESP2: 8 XXX + SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX + SG_ ESP2_AliveCounter_LSB : 11|3@1+ (1,0) [0|7] "" XXX + SG_ LAT_ACCEL_STAT : 14|1@1+ (1,0) [0|1] "" XXX + SG_ LAT_ACCEL_DIAG : 15|1@1+ (1,0) [0|1] "" XXX + SG_ LONG_ACCEL : 16|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" XXX + SG_ ESP2_AliveCounter_MSB : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ESP2_Checksum_LSB : 28|2@1+ (1,0) [0|3] "" XXX + SG_ LONG_ACCEL_STAT : 30|1@1+ (1,0) [0|1] "" XXX + SG_ LONG_ACCEL_DIAG : 31|1@1+ (1,0) [0|1] "" XXX + SG_ CYL_PRES : 32|12@1+ (0.1,0) [0|409.5] "Bar" XXX + SG_ ESP12_Checksum_MSB : 44|2@1+ (1,0) [0|3] "" XXX + SG_ CYL_PRES_STAT : 46|1@1+ (1,0) [0|1] "" XXX + SG_ CYL_PRESS_DIAG : 47|1@1+ (1,0) [0|1] "" XXX + SG_ YAW_RATE : 48|13@1+ (0.01,-40.95) [-40.95|40.96] "" XXX + SG_ CYL_PRES_FLAG : 61|1@1+ (1,0) [0|1] "" XXX + SG_ YAW_RATE_STAT : 62|1@1+ (1,0) [0|1] "" XXX + SG_ YAW_RATE_DIAG : 63|1@1+ (1,0) [0|1] "" XXX + + +BO_ 608 EMS6: 8 XXX + SG_ TQI_MIN : 0|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQI : 8|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQI_TARGET : 16|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ GLOW_STAT : 24|1@1+ (1,0) [0|1] "" XXX + SG_ CRUISE_LAMP_M : 25|1@1+ (1,0) [0|1] "" XXX + SG_ CRUISE_LAMP_S : 26|1@1+ (1,0) [0|1] "" XXX + SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ENG_STAT : 28|3@1+ (1,0) [0|7] "" XXX + SG_ SOAK_TIME_ERROR : 31|1@1+ (1,0) [0|1] "" XXX + SG_ SOAK_TIME : 32|8@1+ (1,0) [0|255] "Min" XXX + SG_ TQI_MAX : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [-35.625|60] "" XXX + SG_ Checksum : 56|4@1+ (1,0) [0|15] "" XXX + SG_ AliveCounter : 60|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Ems_AclAct : 62|2@1+ (1,0) [0|3] "" XXX + + +BO_ 672 EMS5: 8 XXX + SG_ ECGPOvrd : 0|1@1+ (1,0) [0|1] "" XXX + SG_ QECACC : 1|1@1+ (1,0) [0|1] "" XXX + SG_ ECFail : 2|1@1+ (1,0) [0|1] "" XXX + SG_ SwitchOffCondExt : 3|1@1+ (1,0) [0|1] "" XXX + SG_ BLECFail : 4|1@1+ (1,0) [0|1] "" XXX + SG_ AliveCounter : 5|2@1+ (1,0) [0|3] "" XXX + SG_ Byte0Parity : 7|1@1+ (1,0) [0|1] "" XXX + SG_ FA_PV_CAN : 8|8@1+ (0.3906,0) [0|99.2] "%" XXX + SG_ IntAirTemp : 16|8@1+ (0.75,-48) [-48|143.25] "" XXX + SG_ STATE_DC_OBD : 24|7@1+ (1,0) [0|127] "" XXX + SG_ INH_DC_OBD : 31|1@1+ (1,0) [0|1] "" XXX + SG_ CTR_IG_CYC_OBD : 32|16@1+ (1,0) [0|65535] "" XXX + SG_ CTR_CDN_OBD : 48|16@1+ (1,0) [0|65535] "" XXX + + +BO_ 688 SAS1: 8 XXX + SG_ SAS_Angle : 0|16@1+ (0.1,0) [-3276.8|3276.7] "Deg" XXX + SG_ SAS_Speed : 16|8@1+ (4,0) [0|1016] "" XXX + SG_ SAS_Stat : 24|8@1+ (1,0) [0|255] "" XXX + SG_ MsgCount : 32|4@1+ (1,0) [0|15] "" XXX + SG_ CheckSum : 36|4@1+ (1,0) [0|15] "" XXX + + +BO_ 790 EMS1: 8 XXX + SG_ SWI_IGK : 0|1@1+ (1,0) [0|1] "" XXX + SG_ F_N_ENG : 1|1@1+ (1,0) [0|1] "" XXX + SG_ ACK_TCS : 2|1@1+ (1,0) [0|1] "" XXX + SG_ PUC_STAT : 3|1@1+ (1,0) [0|1] "" XXX + SG_ TQ_COR_STAT : 4|2@1+ (1,0) [0|3] "" XXX + SG_ RLY_AC : 6|1@1+ (1,0) [0|1] "" XXX + SG_ F_SUB_TQI : 7|1@1+ (1,0) [0|1] "" XXX + SG_ TQI_ACOR : 8|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ N : 16|16@1+ (0.25,0) [0|16383.8] "rpm" XXX + SG_ TQI : 32|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ TQFR : 40|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ VS : 48|8@1+ (1,0) [0|254] "km/h" XXX + SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0) [0|2] "" XXX + + +BO_ 809 EMS2: 8 XXX + SG_ TQ_STND : 0|6@1+ (10,0) [0|630] "Nm" XXX + SG_ CAN_VERS : 0|6@1+ (1,0) [0|7.7] "" XXX + SG_ CONF_TCU : 0|6@1+ (1,0) [0|63] "" XXX + SG_ OBD_FRF_ACK : 0|6@1+ (1,0) [0|63] "" XXX + SG_ MUL_CODE : 6|2@1+ (1,0) [0|3] "" XXX + SG_ TEMP_ENG : 8|8@1+ (0.75,-48) [-48|143.25] "" XXX + SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0) [0|1.99155] "" XXX + SG_ VB_OFF_ACT : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ACK_ES : 25|1@1+ (1,0) [0|1] "" XXX + SG_ CONF_MIL_FMY : 26|3@1+ (1,0) [0|7] "" XXX + SG_ OD_OFF_REQ : 29|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_ACT : 30|1@1+ (1,0) [0|1] "" XXX + SG_ CLU_ACK : 31|1@1+ (1,0) [0|1] "" XXX + SG_ BRAKE_ACT : 32|2@1+ (1,0) [0|3] "" XXX + SG_ ENG_CHR : 34|4@1+ (1,0) [0|15] "" XXX + SG_ GP_CTL : 38|2@1+ (1,0) [0|3] "" XXX + SG_ TPS : 40|8@1+ (0.469484,-15.0235) [-15.0235|104.695] "%" XXX + SG_ PV_AV_CAN : 48|8@1+ (0.3906,0) [0|99.603] "%" XXX + SG_ ENG_VOL : 56|8@1+ (0.1,0) [0|25.5] "liter" XXX + + +BO_ 848 FATC: 8 XXX + SG_ CR_Fatc_TqAcnOut : 0|8@1+ (0.2,0) [0|50.8] "Nm" XXX + SG_ CF_Fatc_AcnRqSwi : 8|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_AcnCltEnRq : 9|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_EcvFlt : 10|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_BlwrOn : 11|1@1+ (1,0) [0|1] "" XXX + SG_ CF_FATC_Iden : 12|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Fatc_BlwrMax : 14|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_EngStartReq : 15|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_IsgStopReq : 16|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_CtrInf : 17|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Fatc_MsgCnt : 20|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Fatc_OutTemp : 24|8@1+ (0.5,-40) [-40|60] "" XXX + SG_ CR_Fatc_OutTempSns : 32|8@1+ (0.5,-40) [-40|60] "" XXX + SG_ CF_Fatc_Compload : 40|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Fatc_ActiveEco : 43|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_AutoActivation : 44|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_DefSw : 45|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_PtcRlyStat : 46|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Fatc_ChkSum : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 880 TCU3: 8 XXX + SG_ N_TGT_LUP : 0|8@1+ (10,500) [500|3040] "rpm" XXX + SG_ SLOPE_TCU : 8|6@1+ (0.5,-16) [-16|15.5] "%" XXX + SG_ CF_Tcu_InhCda : 14|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_IsgInhib : 15|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_BkeOnReq : 16|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_NCStat : 18|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_TarGr : 20|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Tcu_ShfPatt : 24|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Tcu_InhVis : 28|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_PRelReq : 29|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_ITPhase : 30|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_ActEcoRdy : 31|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_TqGrdLim : 32|8@1+ (10,0) [0|2540] "Nm/s" XXX + SG_ CR_Tcu_IsgTgtRPM : 40|8@1+ (20,0) [0|3500] "rpm" XXX + SG_ TQI_TCU_INC : 48|8@1+ (0.390625,0) [0|99.6094] "%" XXX + SG_ CF_Tcu_SbwPInfo : 56|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_SptRdy : 57|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_Alive3 : 58|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_ChkSum3 : 60|4@1+ (1,0) [0|15] "" XXX + + +BO_ 898 EMS9: 8 XXX + SG_ CF_Ems_BrkReq : 0|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_DnShftReq : 1|4@1+ (1,0) [0|14] "" XXX + SG_ CF_Ems_RepModChk : 5|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_DecelReq : 8|12@1+ (0.001,-4.094) [-4.094|0] "m/s^2" XXX + SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0) [0|4094] "hPa" XXX + SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40) [0|254] "" XXX + SG_ CF_Ems_PumpTPres : 40|8@1+ (3.13725,0) [0|800] "kPa" XXX + SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41) [-40|60] "" XXX + SG_ CF_Ems_OPSFail : 56|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_ECTTRQLIM : 57|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1,0) [0|15] "" XXX + + +BO_ 1075 EPB1: 8 XXX + SG_ EPB_I_LAMP : 0|4@1+ (1,0) [0|15] "" XXX + SG_ EPB_F_LAMP : 4|2@1+ (1,0) [0|3] "" XXX + SG_ EPB_ALARM : 6|2@1+ (1,0) [0|3] "" XXX + SG_ EPB_CLU : 8|8@1+ (1,0) [0|255] "" XXX + SG_ EPB_SWITCH : 16|2@1+ (1,0) [0|3] "" XXX + SG_ EPB_RBL : 18|1@1+ (1,0) [0|1] "" XXX + SG_ EPB_STATUS : 19|3@1+ (1,0) [0|7] "" XXX + SG_ EPB_FRC_ERR : 22|2@1+ (1,0) [0|3] "" XXX + SG_ EPB_DBF_STAT : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_ACK : 25|1@1+ (1,0) [0|1] "" XXX + SG_ EPB_DBF_REQ : 26|1@1+ (1,0) [0|1] "" XXX + SG_ EPB_FAIL : 29|3@1+ (1,0) [0|7] "" XXX + SG_ EPB_FORCE : 32|12@1+ (1,-1000) [-1000|3000] "" XXX + SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0) [0|2.54] "g" XXX + + +BO_ 1087 TCU1: 8 XXX + SG_ ETL_TCU : 0|8@1+ (2,0) [0|508] "Nm" XXX + SG_ CUR_GR : 8|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Tcu_Alive : 12|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_ChkSum : 14|2@1+ (1,0) [0|3] "" XXX + SG_ VS_TCU : 16|8@1+ (1,0) [0|254] "km/h" XXX + SG_ FAN_CTRL_TCU : 24|2@1+ (1,0) [0|3] "" XXX + SG_ BRAKE_ACT_TCU : 26|2@1+ (1,0) [0|3] "" XXX + SG_ FUEL_CUT_TCU : 28|1@1+ (1,0) [0|1] "" XXX + SG_ INH_FUEL_CUT : 29|1@1+ (1,0) [0|1] "" XXX + SG_ IDLE_UP_TCU : 30|1@1+ (1,0) [0|1] "" XXX + SG_ N_INC_TCU : 31|1@1+ (1,0) [0|1] "" XXX + SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15|15] "" XXX + SG_ N_TC_RAW : 40|16@1+ (0.25,0) [0|16383.5] "rpm" XXX + SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0) [0|0.992188] "km/h" XXX + + +BO_ 1088 TCU2: 8 XXX + SG_ ETL_TCU : 0|8@1+ (2,0) [0|508] "Nm" XXX + SG_ CUR_GR : 8|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Tcu_Alive : 12|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_ChkSum : 14|2@1+ (1,0) [0|3] "" XXX + SG_ VS_TCU : 16|8@1+ (1,0) [0|254] "km/h" XXX + SG_ FAN_CTRL_TCU : 24|2@1+ (1,0) [0|3] "" XXX + SG_ BRAKE_ACT_TCU : 26|2@1+ (1,0) [0|3] "" XXX + SG_ FUEL_CUT_TCU : 28|1@1+ (1,0) [0|1] "" XXX + SG_ INH_FUEL_CUT : 29|1@1+ (1,0) [0|1] "" XXX + SG_ IDLE_UP_TCU : 30|1@1+ (1,0) [0|1] "" XXX + SG_ N_INC_TCU : 31|1@1+ (1,0) [0|1] "" XXX + SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15|15] "" XXX + SG_ N_TC_RAW : 40|16@1+ (0.25,0) [0|16383.5] "rpm" XXX + SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0) [0|0.992188] "km/h" XXX + + +BO_ 1200 WHL_SPD: 8 XXX + SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0) [0|511.969] "km/h" XXX + SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0) [0|511.969] "km/h" XXX + SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0) [0|511.969] "km/h" XXX + SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0) [0|511.969] "km/h" XXX + + +BO_ 1201 WHL_PUL: 8 XXX + SG_ WHL_PUL_FL : 0|8@1+ (0.5,0) [0|127.5] "pulse count" XXX + SG_ WHL_PUL_FR : 8|8@1+ (0.5,0) [0|127.5] "pulse count" XXX + SG_ WHL_PUL_RL : 16|8@1+ (0.5,0) [0|127.5] "pulse count" XXX + SG_ WHL_PUL_RR : 24|8@1+ (0.5,0) [0|127.5] "pulse count" XXX + SG_ WHL_DIR_FL : 32|2@1+ (1,0) [0|3] "" XXX + SG_ WHL_DIR_FR : 34|2@1+ (1,0) [0|3] "" XXX + SG_ WHL_DIR_RL : 36|2@1+ (1,0) [0|3] "" XXX + SG_ WHL_DIR_RR : 38|2@1+ (1,0) [0|3] "" XXX + SG_ WHL_PUL_Chksum : 56|8@1+ (1,0) [0|255] "" XXX + + +BO_ 1264 CLU1: 8 XXX + SG_ CF_Clu_CruiseSwState : 0|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Blr_MaxStat : 3|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_SldMainSW : 4|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_ParityBit1 : 5|1@1+ (1,0) [0|1] "pulse count" XXX + SG_ CF_Clu_SPEED_UNIT : 6|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_ParkBrakeSw : 7|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0) [0|255.5] "km/h or MPH" XXX + SG_ CF_Clu_AliveCounter : 17|7@1+ (1,0) [0|127] "" XXX + SG_ CF_Clu_CruiseSwMain : 24|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_VanzDecimal : 25|2@1+ (1,0) [0|0.375] "" XXX + SG_ VEHICLE_INFO : 27|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_StrRlyState : 30|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_SMKOption : 31|1@1+ (1,0) [0|1] "" XXX + SG_ R_TqAcnOutC : 32|8@1+ (1,0) [0|51] "Nm" XXX + SG_ CF_Clu_Odometer : 40|24@1+ (0.1,0) [0|1.67772e+006] "km" XXX + + +BO_ 1265 CLU3: 8 XXX + SG_ CF_Clu_AcnRqSwi : 0|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_AcnCltEnRq : 1|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_RefDetMod : 2|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_DefoggerRly : 5|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_LowfuelWarn : 16|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_SportsModeSwi : 18|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_ALightStat : 20|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_FrtFog : 21|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_DetentOut : 22|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HeadLampTail : 23|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_TrailerMode : 24|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_DTE : 25|10@1+ (1,0) [0|1023] "" XXX + SG_ CF_Clu_TripUnit : 35|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_IsaMainSW : 37|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_FlexSteerSW : 40|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_AvsmCur : 41|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HudSpeedset : 42|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HudTbtSet : 43|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HudSccSet : 44|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HudLdwsSet : 45|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HudDisSet : 46|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HudFontSizeSet : 47|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_HudFontColorSet : 49|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_HudBrightSet : 51|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_HudHeightSet : 53|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_CluInfo : 55|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_RheostatLevel : 56|5@1+ (1,0) [0|31] "" XXX + SG_ CF_Clu_DrivinglampStat : 61|3@1+ (1,0) [0|7] "" XXX + + +BO_ 1349 EMS4: 8 XXX + SG_ IMMO_LAMP_STAT : 0|1@1+ (1,0) [0|1] "" XXX + SG_ L_MIL : 1|1@1+ (1,0) [0|1] "" XXX + SG_ IM_STAT : 2|1@1+ (1,0) [0|1] "" XXX + SG_ AMP_CAN : 3|5@1+ (10.7316,458.98) [458.98|791.66] "mmHg" XXX + SG_ FCO : 8|16@1+ (0.128,0) [0|8388.48] "ul" XXX + SG_ VB : 24|8@1+ (0.101563,0) [0|25.8984] "V" XXX + SG_ TEMP_FUEL : 48|8@1+ (0.75,-48) [-48|143.25] "" XXX + SG_ Split_Stat : 56|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Ems_IsaAct : 57|1@1+ (1,0) [0|1] "" XXX + + +BO_ 1435 TCU4: 8 XXX + SG_ CF_TCU_WarnMsg : 0|3@1+ (1,0) [0|7] "" XXX + SG_ CF_TCU_WarnImg : 3|1@1+ (1,0) [0|1] "" XXX + SG_ CF_TCU_WarnSnd : 4|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_EolStat : 5|1@1+ (1,0) [0|1] "" XXX + SG_ CR_Tcu_GearSelDisp2 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Tcu_StRelStat : 12|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_DriWarn1 : 13|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Tcu_DriWarn2 : 16|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_DrivingModeReq : 18|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Tcu_DrivingModeDisp : 22|4@1+ (1,0) [0|0] "" XXX + SG_ CF_Tcu_SiCluster : 26|5@1+ (1,0) [0|0] "" XXX + SG_ CF_Tcu_DSmode_Inf : 31|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Tcu_Alive4 : 58|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Tcu_ChkSum4 : 60|4@1+ (1,0) [0|15] "" XXX + + +BO_ 1508 MDPS1: 8 XXX + SG_ CF_Mdps_WLmp : 1|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Mdps_ALTRequest : 5|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Mdps_Flex : 8|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Mdps_FlexDisp : 11|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Mdps_CurrMode : 12|2@1+ (1,0) [0|3] "" XXX + + +BO_ 1680 CLU2: 8 XXX + SG_ CF_Clu_IGNSw : 0|3@1+ (1,0) [0|7] "" XXX + SG_ RKE_CMD : 3|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_DrvDrSw : 6|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_DrvKeyLockSw : 8|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_DrvKeyUnlockSw : 9|1@1+ (1,0) [0|1] "" XXX + SG_ PIC_Lock : 10|3@1+ (1,0) [0|7] "" XXX + SG_ PIC_Unlock : 13|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_DrvSeatBeltSw : 16|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_TrunkTgSw : 18|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_AstSeatBeltSw : 20|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_HoodSw : 22|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_TurnSigLh : 24|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_TurnSigRh : 25|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_LdwsLkasSW : 26|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_WiperIntT : 27|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_WiperIntSW : 30|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_WiperLow : 31|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_WiperHigh : 32|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_WiperAuto : 33|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_RainSnsStat : 34|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_HeadLampLow : 37|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HeadLampHigh : 38|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_AltLStatus : 39|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_SwiGearR : 43|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_SWL_Stat : 45|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Clu_ActiveEcoSW : 48|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_HazardSW : 49|1@1+ (1,0) [0|1] "" XXX + SG_ CF_Clu_AliveCnt2 : 50|4@1+ (1,0) [0|15] "" XXX + SG_ CF_Clu_AstDrSw : 54|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_LkasDispMode : 56|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_AutoLightLevel : 58|2@1+ (1,0) [0|3] "" XXX + SG_ CF_Clu_SunRoofOpenState : 60|1@1+ (1,0) [0|1] "" XXX + + diff --git a/opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc b/opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc new file mode 100644 index 0000000000..b3bde5fd6b --- /dev/null +++ b/opendbc_repo/opendbc/dbc/hyundai_kia_generic.dbc @@ -0,0 +1,1703 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: IAP ODS _4WD BCM HUD DATC MDPS AAF_Tester AEMC SMK _4WD EPB CUBIS MTS TMU EVP CGW TPMS LPI DI_BOX SPAS EMS LCA TCU IBOX FATC AFLS FPCM SCC AHLS AVM ABS SNV OPI PGS SAS AAF Dummy LDWS_LKAS LVR ESC PSB CLU ECS ACU REA + +BO_ 1532 ODS13: 5 ODS + SG_ CR_Ods_ID : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_Chksum_H : 8|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + SG_ CR_Ods_Chksum_L : 16|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + SG_ CR_Ods_RomID_H : 24|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + SG_ CR_Ods_RomID_L : 32|8@1+ (1.0,0.0) [0.0|255.0] "" Dummy + +BO_ 1531 ODS12: 8 ODS + SG_ CR_Ods_SerNum0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum3 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum4 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum5 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum6 : 48|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + SG_ CR_Ods_SerNum7 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" ACU + +BO_ 1530 ODS11: 8 ODS + SG_ CF_Ods_PrcCmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy + SG_ CF_Ods_BtsFail : 3|1@1+ (1.0,0.0) [0.0|1.0] "" Dummy + SG_ CF_Ods_AcuRcvSN : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_EolCal : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_PsFail : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_EcuFail : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_WgtStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CF_Ods_OccStat : 16|1@1+ (1.0,0.0) [0.0|1.0] "" ACU + SG_ CR_Wcs_ErrStat : 32|8@1+ (1.0,0.0) [0.0|63.0] "" ACU + SG_ CR_Wcs_ClassStat : 40|8@1+ (1.0,0.0) [0.0|4.0] "" ACU,BCM + +BO_ 1017 ECS12: 4 ECS + SG_ Height_FL : 0|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + SG_ Height_FR : 8|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + SG_ Height_RL : 16|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + SG_ Height_RR : 24|8@1+ (1.0,-128.0) [-128.0|127.0] "mm" AFLS + +BO_ 1268 SPAS12: 8 SPAS + SG_ CF_Spas_HMI_Stat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_Spas_Disp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS + SG_ CF_Spas_FIL_Ind : 10|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FIR_Ind : 13|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FOL_Ind : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FOR_Ind : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_VolDown : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_RIL_Ind : 24|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_RIR_Ind : 27|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FLS_Alarm : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_ROL_Ind : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_ROR_Ind : 35|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FCS_Alarm : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_FI_Ind : 40|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_RI_Ind : 43|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU + SG_ CF_Spas_FRS_Alarm : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_FR_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Spas_RR_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Spas_BEEP_Alarm : 52|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Spas_StatAlarm : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Spas_RLS_Alarm : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_RCS_Alarm : 59|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_RRS_Alarm : 61|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1265 CLU11: 4 CLU + SG_ CF_Clu_CruiseSwState : 0|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,LDWS_LKAS,SCC + SG_ CF_Clu_CruiseSwMain : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,LDWS_LKAS,SCC + SG_ CF_Clu_SldMainSW : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Clu_ParityBit1 : 5|1@1+ (1.0,0.0) [0.0|1.0] "pulse count" EMS + SG_ CF_Clu_VanzDecimal : 6|2@1+ (0.125,0.0) [0.0|0.375] "" EMS + SG_ CF_Clu_Vanz : 8|9@1+ (0.5,0.0) [0.0|255.5] "km/h or MPH" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC + SG_ CF_Clu_SPEED_UNIT : 17|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CUBIS,EMS,IBOX,LDWS_LKAS,MDPS,SCC + SG_ CF_Clu_DetentOut : 18|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,BCM,LCA,PGS,SPAS + SG_ CF_Clu_RheostatLevel : 19|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,BCM,LCA,PGS,SPAS + SG_ CF_Clu_CluInfo : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_AmpInfo : 25|1@1+ (1.0,0.0) [0.0|1.0] "" BCM + SG_ CF_Clu_AliveCnt1 : 28|4@1+ (1.0,0.0) [0.0|15.0] "" AHLS,EMS,EPB,LDWS_LKAS,MDPS,SCC + +BO_ 1260 Sign_Detection: 8 XXX + SG_ SpeedLim_Nav_Cam : 40|8@1+ (1,0) [0|255] "km/h / mph" XXX + SG_ SpeedLim_Nav_Cam2 : 48|8@1+ (1,0) [0|255] "km/h / mph" XXX + +BO_ 1492 TMU_GW_PE_01: 8 CLU + SG_ TMU_IVRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ TMU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + +BO_ 1491 HU_DATC_PE_00: 8 CLU + SG_ HU_VRActivity : 0|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ HU_PhoneActivity : 2|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ BlowerNoiseControl : 4|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + +BO_ 1490 HU_DATC_E_02: 8 CLU + SG_ HU_DATC_RearOnOffSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ HU_DATC_ADSOnOffSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + +BO_ 1479 EMS21: 8 EMS + SG_ SCR_LEVEL_WARN_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ SCR_LEVEL_WARN : 1|3@1+ (1.0,0.0) [0.0|4.0] "" CLU + SG_ SCR_SYS_ERROR_WARN : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ SCR_SYSTEM_WARN_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ SCR_INDUCEMENT_EXIT_COND : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ SCR_UREA_LEVEL : 16|8@1+ (0.5,0.0) [0.0|100.0] "%" CLU + SG_ SCR_NO_REMAINING_RESTARTS : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ SCR_REMAINING_DISTANCE : 32|16@1+ (1.0,0.0) [0.0|25000.0] "km" CLU + +BO_ 1472 GW_Warning_PE: 8 BCM + SG_ Audio_VolumeDown : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Flh_Alarm : 48|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Fcnt_Alarm : 50|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Frh_Alarm : 52|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Rlh_Alarm : 56|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS + SG_ Pas_Spkr_Rcnt_Alarm : 58|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ Pas_Spkr_Rrh_Alarm : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,PGS + +BO_ 1984 CAL_SAS11: 2 ESC + SG_ CCW : 0|4@1+ (1.0,0.0) [0.0|15.0] "" SAS + SG_ SAS_CID : 4|11@1+ (1.0,0.0) [0.0|2047.0] "" SAS + +BO_ 1456 CLU12: 4 CLU + SG_ CF_Clu_Odometer : 0|24@1+ (0.1,0.0) [0.0|1677721.4] "km" _4WD,AAF,BCM,CUBIS,EMS,EPB,IBOX,LDWS_LKAS,SCC,TPMS + +BO_ 688 SAS11: 5 MDPS + SG_ SAS_Angle : 0|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" _4WD,ACU,AFLS,AVM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU,_4WD,ACU,AFLS,AVM,BCM,CLU,ECS,EMS,ESC,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SPAS,TCU + SG_ SAS_Speed : 16|8@1+ (4.0,0.0) [0.0|1016.0] "" AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU,AFLS,ECS,ESC,IBOX,LDWS_LKAS,SCC,SPAS,TCU + SG_ SAS_Stat : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ MsgCount : 32|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS + SG_ CheckSum : 36|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS,ECS,EMS,ESC,IBOX,LDWS_LKAS,PSB,SCC,SPAS + +BO_ 1441 ACU12: 8 ACU + SG_ CR_Acu_SN : 0|64@1+ (1.0,0.0) [0.0|0.0] "" ODS + +BO_ 1440 ACU11: 8 ACU + SG_ CF_Ods_SNRcv : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Ods_IDRcv : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Ods_RZReq : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Abg_DepInhEnt : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_Abg_DepEnt : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ODS + SG_ CF_PasBkl_FltStat : 28|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB + SG_ CF_DriBkl_FltStat : 29|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB + SG_ CF_PasBkl_Stat : 30|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,ODS,PSB,TMU + SG_ CF_DriBkl_Stat : 31|1@1+ (1.0,0.0) [0.0|1.0] "" ODS,PSB + SG_ CF_SWL_Ind : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX + SG_ CF_Acu_FltStat : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CUBIS,IBOX + SG_ CF_Acu_ExtOfSab : 36|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,CUBIS,IBOX + SG_ CF_Acu_Dtc : 40|16@1+ (1.0,0.0) [0.0|65535.0] "" CUBIS,IBOX + SG_ CF_Acu_NumOfFlt : 56|8@1+ (1.0,0.0) [0.0|255.0] "" CUBIS,IBOX + +BO_ 1437 AHLS11: 8 AHLS + SG_ CF_Ahls_WarnLamp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Ahls_WarnMsg : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1434 PSB11: 2 PSB + SG_ PSB_LH_FAIL : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ PSB_LH_TGL : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ PSB_LH_ACT : 3|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy + SG_ PSB_RH_FAIL : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ PSB_RH_TGL : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ PSB_RH_ACT : 11|4@1+ (1.0,0.0) [0.0|4.0] "" Dummy + +BO_ 916 TCS13: 8 ESC + SG_ aBasis : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC + SG_ BrakeLight : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,SCC + SG_ DCEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ AliveCounterTCS : 13|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,SCC + SG_ Pre_TCS_CTL : 16|1@1+ (1.0,0.0) [0.0|1.0] "" Vector__XXX + SG_ EBA_ACK : 17|1@1+ (1.0,0.0) [0.0|1.0] "" Vector__XXX + SG_ FCA_ACK : 18|1@1+ (1.0,0.0) [0.0|1.0] "" Vector__XXX + SG_ DF_BF_STAT : 19|2@1+ (1.0,0.0) [0.0|3.0] "" BCW + SG_ SCCReqLim : 22|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ TQI_SCC : 24|8@1+ (0.390625,0.0) [0.0|199.609375] "%" Vector__XXX + SG_ ACCEL_REF_ACC : 32|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" EMS,SCC + SG_ ACCEnable : 43|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC + SG_ DriverOverride : 45|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,SCC + SG_ StandStill : 47|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ CheckSum_TCS3 : 48|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,SCC + SG_ ACC_EQUIP : 52|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ PBRAKE_ACT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ ACC_REQ : 54|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ DriverBraking : 55|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,SCC + SG_ CF_VSM_Coded : 56|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + SG_ CF_VSM_Avail : 57|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,SCC + SG_ CF_VSM_Handshake : 59|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + SG_ CF_DriBkeStat : 60|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + SG_ CF_VSM_ConfSwi : 61|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ AEB_EQUIP : 63|1@1+ (1.0,0.0) [0.0|1.0] "" SCC + +BO_ 1427 TPMS11: 6 BCM + SG_ TPMS_W_LAMP : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX + SG_ TREAD_W_LAMP : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,HUD,IBOX,CLU,CUBIS,HUD,IBOX + SG_ POS_FL_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ POS_FR_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ POS_RL_W_LAMP : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ POS_RR_W_LAMP : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,HUD,IBOX + SG_ STATUS_TPMS : 8|3@1+ (1.0,0.0) [0.0|0.0] "" CLU + SG_ UNIT : 11|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ PRESSURE_FL : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ PRESSURE_FR : 24|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ PRESSURE_RL : 32|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ PRESSURE_RR : 40|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + +BO_ 915 TCS12: 4 ESC + SG_ SA_COUNT : 0|16@1+ (2.0,-32768.0) [-32768.0|98302.0] "" _4WD,ACU,MDPS + SG_ SA_Z_COUNT : 16|15@1+ (2.0,-32768.0) [-32768.0|32766.0] "" _4WD,ACU,MDPS + SG_ SA_Z_FLAG : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,MDPS + +BO_ 1170 EMS19: 8 EMS + SG_ CF_Ems_BrkReq : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,TCU + SG_ CF_Ems_DnShftReq : 1|4@1+ (1.0,0.0) [0.0|14.0] "" IBOX,TCU + SG_ CF_Ems_RepModChk : 5|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX + SG_ CF_Ems_AAFOpenReq : 7|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,IBOX + SG_ CF_Ems_DecelReq : 8|12@1+ (0.0010,-4.094) [-4.094|0.0] "m/s^2" ESC,IBOX,TCU + SG_ CR_Ems_BstPre : 20|12@1+ (1.322,0.0) [0.0|4094.0] "hPa" CLU,IBOX + SG_ CR_Ems_EngOilTemp : 32|8@1+ (0.75,-40.0) [0.0|254.0] "deg" CLU,IBOX + SG_ DPF_LAMP_STAT : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX + SG_ BAT_LAMP_STAT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_ModeledAmbTemp : 48|8@1+ (0.5,-41.0) [-41.0|85.5] "deg" AAF,IBOX + SG_ CF_Ems_OPSFail : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_AliveCounterEMS9 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU + SG_ CF_Ems_ChecksumEMS9 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AAF,ABS,CUBIS,ECS,EPB,IBOX,MDPS,REA,SCC,SMK,TCU + +BO_ 1425 AFLS11: 2 AFLS + SG_ AFLS_STAT : 1|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Afls_TrfChgStat : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Afls_LedHLStat : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 912 SPAS11: 7 SPAS + SG_ CF_Spas_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" ESC,MDPS + SG_ CF_Spas_TestMode : 4|2@1+ (1.0,0.0) [0.0|3.0] "" MDPS + SG_ CR_Spas_StrAngCmd : 8|16@1- (0.1,0.0) [-3276.8|3276.7] "" MDPS + SG_ CF_Spas_BeepAlarm : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Spas_Mode_Seq : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Spas_AliveCnt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Spas_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Spas_PasVol : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CGW,CLU + +BO_ 1168 EPB11: 7 EPB + SG_ EPB_I_LAMP : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU,CUBIS,ESC,IBOX + SG_ EPB_F_LAMP : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,ESC,IBOX + SG_ EPB_ALARM : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC + SG_ EPB_CLU : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC + SG_ EPB_SWITCH : 16|2@1+ (1.0,0.0) [0.0|3.0] "" ESC,SCC + SG_ EPB_RBL : 18|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,ESC + SG_ EPB_STATUS : 19|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC,SCC,TCU + SG_ EPB_FRC_ERR : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,SCC,TCU + SG_ EPB_DBF_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ ESP_ACK : 25|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ EPB_DBF_REQ : 26|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ EPB_FAIL : 29|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,SCC + SG_ EPB_FORCE : 32|12@1+ (1.0,-1000.0) [-1000.0|3000.0] "" ESC + SG_ EPB_DBF_DECEL : 48|8@1+ (0.01,0.0) [0.0|2.54] "g" ESC + +BO_ 399 EMS_H12: 8 EMS + SG_ R_TqAcnApvC : 0|8@1+ (0.2,0.0) [0.0|51.0] "Nm" DATC,IBOX + SG_ R_PAcnC : 8|8@1+ (125.0,0.0) [0.0|31875.0] "hPa" DATC,IBOX + SG_ TQI_B : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ABS,ESC,IBOX + SG_ SLD_VS : 24|8@1+ (1.0,0.0) [0.0|255.0] "km/h" CLU,IBOX + SG_ CF_CdaStat : 32|3@1+ (1.0,0.0) [0.0|7.0] "" AEMC,IBOX,TCU + SG_ CF_Ems_IsgStat : 35|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,MDPS,SMK,TCU + SG_ CF_Ems_OilChg : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_EtcLimpMod : 39|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ R_NEngIdlTgC : 40|8@1+ (10.0,0.0) [0.0|2550.0] "rpm" DATC,IBOX,TCU + SG_ CF_Ems_UpTarGr : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_DownTarGr : 49|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_DesCurGr : 50|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX + SG_ CF_Ems_SldAct : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_SldPosAct : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_HPresStat : 56|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ CF_Ems_IsgBuz : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_IdlStpFCO : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_FCopen : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Ems_ActEcoAct : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU + SG_ CF_Ems_EngRunNorm : 61|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,IBOX,TCU + SG_ CF_Ems_IsgStat2 : 62|2@1+ (2.0,0.0) [0.0|3.0] "" CLU,IBOX,TCU + +BO_ 1419 LCA11: 8 LCA + SG_ CF_Lca_Stat : 0|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Rcta_Stat : 4|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Lca_IndLeft : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Rcw_Stat : 10|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_RCW_Warning : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Lca_IndRight : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_Lca_SndWan_Stat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_FR_SndWan : 20|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_FL_SndWan : 21|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_RR_SndWan : 22|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_RL_SndWan : 23|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU + SG_ CF_Lca_IndBriLeft : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_Lca_IndBriRight : 32|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_RCTA_IndBriLeft : 40|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_RCTA_IndBriRight : 48|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_RCTA_IndLeft : 56|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_RCTA_IndRight : 58|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + SG_ CF_SndWarnForClu : 60|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 906 ABS11: 8 ABS + SG_ ABS_DEF : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EMS,SPAS,TCU + SG_ EBD_DEF : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,SPAS,TCU + SG_ ABS_ACT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,EPB,SPAS,TCU + SG_ ABS_W_LAMP : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,MTS,TMU + SG_ EBD_W_LAMP : 4|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ ABS_DIAG : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ ESS_STAT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS + +BO_ 903 WHL_PUL11: 6 ABS + SG_ WHL_PUL_FL : 0|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_PUL_FR : 8|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_PUL_RL : 16|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_PUL_RR : 24|8@1+ (0.5,0.0) [0.0|127.5] "pulse count" CUBIS,EPB,IBOX,SPAS,TMU,TPMS,CUBIS,EPB,IBOX,LDWS_LKAS,SPAS,TMU,TPMS + SG_ WHL_DIR_FL : 32|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_DIR_FR : 34|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_DIR_RL : 36|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_DIR_RR : 38|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,SPAS,TPMS,EPB,LCA,SPAS,TPMS + SG_ WHL_PUL_Chksum : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,SPAS,TPMS,EPB,LCA,LDWS_LKAS,SPAS,TPMS + +BO_ 1415 TMU11: 8 IBOX + SG_ CF_Tmu_VehSld : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Tmu_VehImmo : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Tmu_ReqRepCnd : 2|2@1+ (1.0,0.0) [0.0|3.0] "" EMS + SG_ CF_Tmu_AirconCtr : 4|1@1+ (1.0,0.0) [0.0|1.0] "" DATC + SG_ CF_Tmu_TempMd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" DATC + SG_ CF_Tmu_TempSet : 6|16@1+ (1.0,0.0) [0.0|20.0] "" DATC + SG_ CF_Tmu_DefrostCtr : 22|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,FATC + SG_ CF_Tmu_AliveCnt1 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" EMS + +BO_ 902 WHL_SPD11: 8 ABS + SG_ WHL_SPD_FL : 0|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_FR : 16|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,ACU,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_RL : 32|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,BCM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,BCM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_RR : 48|14@1+ (0.03125,0.0) [0.0|511.96875] "km/h" _4WD,AFLS,AHLS,AVM,CLU,CUBIS,ECS,EMS,EPB,IBOX,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS,_4WD,ACU,AFLS,AHLS,AVM,CLU,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PGS,PSB,SCC,SMK,SPAS,TCU,TPMS + SG_ WHL_SPD_AliveCounter_LSB : 14|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ WHL_SPD_AliveCounter_MSB : 30|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ WHL_SPD_Checksum_LSB : 46|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ WHL_SPD_Checksum_MSB : 62|2@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + +BO_ 1414 EVP11: 3 EVP + SG_ CF_Evp_Stat : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 1412 AAF11: 8 AAF + SG_ CF_Aaf_ActFlapStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester + SG_ CF_Aaf_ModeStatus : 2|3@1+ (1.0,0.0) [0.0|7.0] "" AAF_Tester + SG_ CF_Aaf_WrnLamp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Aaf_ErrStatus : 6|10@1+ (1.0,0.0) [0.0|1023.0] "" AAF_Tester,EMS + SG_ CF_Aaf_OpenRqSysAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester + SG_ CF_Aaf_PStatus : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" AAF_Tester + SG_ CF_Aaf_OpenRqSysSol : 32|8@1+ (1.0,0.0) [0.0|255.0] "" AAF_Tester + SG_ CF_Aaf_SolFlapStatus : 40|2@1+ (1.0,0.0) [0.0|3.0] "" AAF_Tester + SG_ CF_Aaf_MilOnReq : 42|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 900 EMS17: 8 EMS + SG_ CF_Ems_PkpCurMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_HolCurMSV : 8|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_InjVBnkAct : 16|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_InjVActSet : 24|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_DiagFulHDEV : 32|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CF_Ems_SwiOffIC1 : 33|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CF_Ems_SwiOffIC2 : 34|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CF_Ems_DiagReqHDEV : 38|1@1+ (1.0,0.0) [0.0|1.0] "" DI_BOX + SG_ CR_Ems_DutyCycMSV : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" DI_BOX + SG_ CR_Ems_BatVolRly : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" DI_BOX + +BO_ 387 REA11: 8 REA + SG_ CF_EndBst_PwmDuH : 0|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PwmDuL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PwmFqOutRng : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_HbriOverCur : 3|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_HbriOverTemp : 4|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PosSnsKOR : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_PosSnsOSOR : 7|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_EepFlt : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_RomFlt : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_RamFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_CanFlt : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_AgH : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_AgL : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_EndBst_ORVol : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CR_EndBst_ActPos : 16|16@1+ (0.117,0.0) [1.989|118.053] "" EMS + SG_ CR_EndBst_DemPos : 32|16@1+ (0.117,0.0) [0.0|119.691] "" EMS + SG_ CR_EndBst_HbriPwr : 48|16@1+ (0.045,0.0) [0.0|99.99] "%" EMS + +BO_ 1411 CUBIS11: 8 CUBIS + SG_ CF_Cubis_HUDisp : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + +BO_ 899 FATC11: 8 DATC + SG_ CR_Fatc_TqAcnOut : 0|8@1+ (0.2,0.0) [0.0|50.8] "Nm" EMS,IBOX + SG_ CF_Fatc_AcnRqSwi : 8|1@1+ (1.0,0.0) [0.0|1.0] "" AAF,EMS,IBOX + SG_ CF_Fatc_AcnCltEnRq : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_EcvFlt : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_BlwrOn : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_FATC_Iden : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Fatc_BlwrMax : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX + SG_ CF_Fatc_EngStartReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_IsgStopReq : 16|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_CtrInf : 17|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX + SG_ CF_Fatc_MsgCnt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX + SG_ CR_Fatc_OutTemp : 24|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU,EMS,IBOX,SPAS,TCU,TPMS + SG_ CR_Fatc_OutTempSns : 32|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" AAF,AHLS,CLU,EMS,IBOX,SPAS,TCU + SG_ CF_Fatc_Compload : 40|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,IBOX + SG_ CF_Fatc_ActiveEco : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Fatc_AutoActivation : 44|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX + SG_ CF_Fatc_DefSw : 45|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,IBOX + SG_ CF_Fatc_PtcRlyStat : 46|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Fatc_ChkSum : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,IBOX,SPAS + +BO_ 129 EMS_DCT12: 8 EMS + SG_ CR_Ems_SoakTimeExt : 0|6@1+ (5.0,0.0) [0.0|315.0] "Min" TCU + SG_ BRAKE_ACT : 6|2@1+ (1.0,0.0) [0.0|3.0] "" TCU + SG_ CF_Ems_EngOperStat : 8|8@1+ (1.0,0.0) [0.0|255.0] "" TCU + SG_ CR_Ems_IndAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" TCU + SG_ CF_Ems_Alive2 : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Ems_ChkSum2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + +BO_ 145 FCEV_ACCELERATOR: 8 XXX + SG_ ACCELERATOR_PEDAL : 48|8@1+ (1,0) [0|255] "" XXX + +BO_ 897 MDPS11: 8 MDPS + SG_ CF_Mdps_WLmp : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,CUBIS,EMS,IBOX,SPAS + SG_ CF_Mdps_Flex : 2|3@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS + SG_ CF_Mdps_FlexDisp : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Mdps_Stat : 7|4@1+ (1.0,0.0) [0.0|15.0] "" SPAS + SG_ CR_Mdps_DrvTq : 11|12@1+ (1.0,-2048.0) [-2048.0|2046.0] "" SPAS + SG_ CF_Mdps_ALTRequest : 23|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CR_Mdps_StrAng : 24|16@1- (0.1,0.0) [-3276.8|3276.7] "Deg" SPAS + SG_ CF_Mdps_AliveCnt : 40|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS + SG_ CF_Mdps_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,SPAS + SG_ CF_Mdps_SPAS_FUNC : 57|1@1+ (1.0,0.0) [0.0|1.0] "flag" SPAS + SG_ CF_Mdps_LKAS_FUNC : 58|1@1+ (1.0,0.0) [0.0|1.0] "flag" LDWS_LKAS + SG_ CF_Mdps_CurrMode : 59|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Mdps_Type : 61|2@1+ (1.0,0.0) [0.0|2.0] "" LDWS_LKAS,SPAS + SG_ CF_MDPS_VSM_FUNC : 56|1@0+ (1.0,0.0) [0.0|1.0] "" XXX + +BO_ 896 DI_BOX13: 8 DI_BOX + SG_ CF_DiBox_HPreInjVConfStat : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVStat1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVStat2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVPkp : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_HPreInjVBpt : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_ErrRegFrtMSV : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_ErrRegSedMSV : 48|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SPIErrSedMSV : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_SPIErrFrtMSV : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_IDErrSedMSV : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_IDErrFrtMSV : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_IniStatMSV : 60|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 640 EMS13: 8 EMS + SG_ LV_FUEL_TYPE_ECU : 0|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,LPI,SMK + SG_ LV_BFS_CFIRM : 1|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_CRASH : 2|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_VB_OFF_ACT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_GSL_MAP M : 4|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ LV_ENG_TURN : 5|1@1+ (1.0,0.0) [0.0|1.0] "" LPI + SG_ ERR_FUEL : 8|8@1+ (1.0,0.0) [0.0|255.0] "" LPI + SG_ EOS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" LPI + SG_ TCO : 24|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI + SG_ N_32 : 32|8@1+ (32.0,0.0) [0.0|8160.0] "rpm" LPI + SG_ MAF : 40|8@1+ (5.447,0.0) [0.0|1388.985] "mg/TDC" LPI + SG_ TIA : 48|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" LPI + SG_ MAP m1 : 56|8@1+ (0.47058,0.0) [0.0|119.9979] "kPa" LPI + SG_ AMP m0 : 56|8@1+ (21.22,0.0) [0.0|5411.1] "hPa" LPI + +BO_ 128 EMS_DCT11: 8 EMS + SG_ PV_AV_CAN : 0|8@1+ (0.3906,0.0) [0.0|99.603] "%" TCU + SG_ TQ_STND : 8|6@1+ (10.0,0.0) [0.0|630.0] "Nm" TCU + SG_ F_N_ENG : 14|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ F_SUB_TQI : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" TCU + SG_ TQI_ACOR : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" IBOX,TCU + SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" TCU + SG_ TQI : 48|8@1+ (0.390625,0.0) [0.0|99.609375] "%" TCU + SG_ CF_Ems_Alive : 56|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Ems_ChkSum : 60|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + +BO_ 1407 HU_MON_PE_01: 8 CLU + SG_ HU_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" AVM,PGS + +BO_ 127 CGW5: 8 BCM + SG_ C_StopLampLhOpenSts : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_StopLampRhOpenSts : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HMSLOpenSts : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampLowLhOpenSts : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampLowRhOpenSts : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampHighLhOpenSts : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_HLampHighRhOpenSts : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_DRLLampLhOpenSts : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_DRLLampRhOpenSts : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearFOGLhOpenSts : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearFOGRhOpenSts : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontFOGLhOpenSts : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontFOGRhOpenSts : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearEXTTailLhOpenSts : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearEXTTailRhOpenSts : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontEXTTailLhOpenSts : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontEXTTailRhOpenSts : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearTSIGLhOpenSts : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_RearTSIGRhOpenSts : 18|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontTSIGLhOpenSts : 19|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_FrontTSIGRhOpenSts : 20|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_SBendingLhOpenSts : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_SBendingRhOpenSts : 22|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_LicensePlateLhOpenSts : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_LicensePlateRhOpenSts : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 1151 ESP11: 6 ESC + SG_ AVH_STAT : 0|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,TCU + SG_ LDM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" EPB,TCU + SG_ REQ_EPB_ACT : 3|2@1+ (1.0,0.0) [0.0|3.0] "" EPB,TCU + SG_ REQ_EPB_STAT : 5|1@1+ (1.0,0.0) [0.0|1.0] "" EPB + SG_ ECD_ACT : 6|1@1+ (1.0,0.0) [0.0|1.0] "" EPB + SG_ _4WD_LIM_REQ : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS + SG_ ROL_CNT_ESP : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EPB,TCU + SG_ _4WD_TQC_LIM : 16|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" _4WD,EMS + SG_ _4WD_CLU_LIM : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" _4WD,EMS + SG_ _4WD_OPEN : 40|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS + SG_ _4WD_LIM_MODE : 42|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD + +BO_ 1397 HU_AVM_E_00: 8 CLU + SG_ HU_AVM_Cal_Cmd : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_Cal_Method : 4|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + SG_ HU_AVM_Save_Controlpoint : 6|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + SG_ HU_AVM_PT_X : 8|12@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_RearViewPointOpt : 20|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_PT_Y : 24|12@1+ (1.0,0.0) [0.0|4095.0] "" AVM,PGS + SG_ HU_AVM_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_SelectedMenu : 40|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS + SG_ HU_AVM_CameraOff : 45|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + SG_ HU_AVM_Option : 48|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_CrossLineMove_Cmd : 52|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_RearView_Option : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_FrontView_Option : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + +BO_ 1395 HU_AVM_E_01: 8 CLU + SG_ HU_PGSSelectedMenu : 0|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_PGSOption : 8|5@1+ (1.0,0.0) [0.0|31.0] "" AVM,PGS + SG_ HU_AVM_ParkingAssistMenu : 56|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + SG_ HU_AVM_ParkingAssistSB : 60|4@1+ (1.0,0.0) [0.0|15.0] "" AVM,PGS + +BO_ 1393 OPI11: 5 OPI + SG_ CR_Opi_Spd_Rpm : 0|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" TCU + SG_ CF_Opi_Over_Temp : 8|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Opi_Over_Cur : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU + SG_ CF_Opi_Over_Vol : 10|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Opi_Hall_Fail : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU + SG_ CF_Opi_Flt : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,TCU + SG_ CF_Opi_Motor_Dir : 15|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Opi_Romver : 16|8@1+ (1.0,0.0) [0.0|255.0] "" TCU + SG_ CF_Opi_PWM_Rate : 24|12@1+ (1.0,0.0) [0.0|100.0] "%" TCU + +BO_ 625 LPI11: 8 LPI + SG_ FUP_LPG_MMV : 0|8@1+ (128.0,0.0) [0.0|32640.0] "hPa" EMS + SG_ LV_FUEL_TYPE_BOX : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_BFS_IN_PROGRESS : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_GAS_OK : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_FUP_ENA_THD : 11|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,EMS,SMK + SG_ LPI_OBD : 12|4@1+ (1.0,0.0) [0.0|15.0] "" EMS + SG_ ERR_GAS : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ FAC_TI_GAS_COR : 24|16@1+ (3.05E-5,0.0) [0.0|1.9988175] "" EMS + SG_ FTL_AFU : 40|8@1+ (0.392,0.0) [0.0|99.96] "%" EMS + SG_ BFS_CYL : 48|8@1+ (1.0,0.0) [0.0|6.0] "Cyl Nr." EMS + SG_ LV_PRE_CDN_LEAK : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_CONF_INJECTION_DELAY : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ LV_LPG_SW_DRIVER_REQ : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 356 VSM11: 4 ESC + SG_ CR_Esc_StrTqReq : 0|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" MDPS + SG_ CF_Esc_Act : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,MDPS + SG_ CF_Esc_CtrMode : 13|3@1+ (1.0,0.0) [0.0|7.0] "" MDPS + SG_ CF_Esc_Def : 16|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Esc_AliveCnt : 17|4@1+ (1.0,0.0) [0.0|15.0] "" LDWS_LKAS,MDPS + SG_ CF_Esc_Chksum : 24|8@1+ (1.0,0.0) [0.0|255.0] "" LDWS_LKAS,MDPS + +BO_ 1379 PGS_HU_PE_01: 8 PGS + SG_ PGS_State : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ PGS_ParkGuideState : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ PGS_Option : 16|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ PGS_Version : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU + +BO_ 354 TCU_DCT13: 3 TCU + SG_ Clutch_Driving_Tq : 0|10@1+ (1.0,-512.0) [0.0|0.0] "Nm" ESC + SG_ Cluster_Engine_RPM : 10|13@1+ (0.9766,0.0) [0.0|0.0] "" CLU + SG_ Cluster_Engine_RPM_Flag : 23|1@1+ (1.0,0.0) [0.0|0.0] "" CLU + +BO_ 1378 HUD11: 4 HUD + SG_ CF_Hud_HeightStaus : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ CF_Hud_PBackStatus : 6|2@1+ (1.0,0.0) [0.0|0.0] "" BCM,CLU + SG_ CF_Hud_Brightness : 8|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + +BO_ 608 EMS16: 8 EMS + SG_ TQI_MIN : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU + SG_ TQI : 8|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU + SG_ TQI_TARGET : 16|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EPB,ESC,IBOX,TCU + SG_ GLOW_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,IBOX,SMK + SG_ CRUISE_LAMP_M : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU + SG_ CRUISE_LAMP_S : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,TCU + SG_ PRE_FUEL_CUT_IN : 27|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ ENG_STAT : 28|3@1+ (1.0,0.0) [0.0|7.0] "" ABS,AHLS,AVM,BCM,CLU,EPB,ESC,EVP,FPCM,IBOX,LCA,LDWS_LKAS,MDPS,SCC,SMK,TCU + SG_ SOAK_TIME_ERROR : 31|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EPB,IBOX,TCU + SG_ SOAK_TIME : 32|8@1+ (1.0,0.0) [0.0|255.0] "Min" _4WD,DATC,EPB,IBOX,TCU + SG_ TQI_MAX : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" ESC,IBOX,TCU + SG_ SPK_TIME_CUR : 48|8@1+ (0.375,-35.625) [-35.625|60.0] "" IBOX,TCU + SG_ Checksum : 56|4@1+ (1.0,0.0) [0.0|15.0] "" ECS,IBOX,LDWS_LKAS,MDPS,SCC + SG_ AliveCounter : 60|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,LDWS_LKAS,MDPS,SCC + SG_ CF_Ems_AclAct : 62|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,SCC + +BO_ 1371 AVM_HU_PE_00: 8 AVM + SG_ AVM_View : 0|5@1+ (1.0,0.0) [0.0|31.0] "" CLU + SG_ AVM_ParkingAssist_BtnSts : 5|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ AVM_Display_Message : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ AVM_Popup_Msg : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_Ready : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_ParkingAssist_Step : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_FrontBtn_Type : 28|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_Option : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_HU_FrontViewPointOpt : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_HU_RearView_Option : 40|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_HU_FrontView_Option : 44|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ AVM_Version : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" CLU + +BO_ 1370 HU_AVM_PE_00: 8 CLU + SG_ HU_AVM_Status : 0|2@1+ (1.0,0.0) [0.0|3.0] "" AVM,PGS + +BO_ 1369 CGW4: 8 BCM + SG_ CF_Gway_MemoryP1Cmd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_MemoryP2Cmd : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBackP1Cmd : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBackP2Cmd : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_StrgWhlHeatedState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBackStopCmd : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD + SG_ CF_Gway_StaticBendLhAct : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_StaticBendRhAct : 7|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_DrvWdwStat : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_RLWdwState : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_RRWdwState : 10|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_AstWdwStat : 11|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_MemoryEnable : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBACKStopCmd : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_PBACKStop : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,HUD + SG_ CF_Gway_IMSBuzzer : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_DrvSeatBeltInd : 36|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_AstSeatBeltInd : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RCSeatBeltInd : 40|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RLSeatBeltInd : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RRSeatBeltInd : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_RrWiperHighSw : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_RrWiperLowSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 1367 EngFrzFrm12: 8 EMS + SG_ PID_06h : 0|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_07h : 8|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_08h : 16|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_09h : 24|8@1+ (0.78125,-100.0) [-100.0|99.22] "%" AAF,IBOX,TCU + SG_ PID_0Bh : 32|8@1+ (1.0,0.0) [0.0|255.0] "kPa" AAF,IBOX,TCU + SG_ PID_23h : 40|16@1+ (10.0,0.0) [0.0|655350.0] "kPa" AAF,IBOX,TCU + +BO_ 1366 EngFrzFrm11: 8 EMS + SG_ PID_04h : 0|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU + SG_ PID_05h : 8|8@1+ (1.0,-40.0) [-40.0|215.0] "deg" AAF,TCU + SG_ PID_0Ch : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" AAF,TCU + SG_ PID_0Dh : 32|8@1+ (1.0,0.0) [0.0|255.0] "km/h" AAF,TCU + SG_ PID_11h : 40|8@1+ (0.3921568627,0.0) [0.0|100.0] "%" AAF,TCU + SG_ PID_03h : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" AAF,TCU + +BO_ 1365 FPCM11: 8 FPCM + SG_ CR_Fpcm_LPActPre : 0|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" EMS + SG_ CF_Fpcm_LPPumpOverCur : 8|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrHi : 9|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrDisc : 10|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrShort : 11|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_LPPumpDiscShort : 12|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_LP_System_Error : 13|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_PreSnrSigErr : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Fpcm_LPCtrCirFlt : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 871 LVR12: 8 LVR + SG_ CF_Lvr_CruiseSet : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,TCU + SG_ CF_Lvr_IsgState : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,TCU + SG_ CF_Lvr_Gear : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,TCU + +BO_ 872 LVR11: 8 LVR + SG_ CF_Lvr_GearInf : 0|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,TCU + SG_ CF_Lvr_PRelStat : 4|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,SMK,TCU + SG_ CF_Lvr_BkeAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" TCU + SG_ CF_Lvr_NFnStat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Lvr_PosInf : 8|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_PosCpl : 12|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_UlkButStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" TCU + SG_ CF_Lvr_PNStat : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lvr_ShtLkStat : 24|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_ShfErrInf : 28|20@1+ (1.0,0.0) [0.0|8191.0] "" CLU,TCU + SG_ CF_Lvr_AC : 48|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + SG_ CF_Lvr_CS : 52|4@1+ (1.0,0.0) [0.0|15.0] "" TCU + +BO_ 1363 CGW2: 8 BCM + SG_ CF_Gway_GwayDiagState : 0|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_DDMDiagState : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SCMDiagState : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_PSMDiagState : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SJBDiagState : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_IPMDiagState : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_LDMFail : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,LDWS_LKAS,LDWS_LKAS + SG_ CF_Gway_CLUSwGuiCtrl : 10|3@1+ (1.0,0.0) [0.0|63.0] "" CLU,Dummy + SG_ CF_Gway_CLUSwGroup : 13|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_CLUSwMode : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_CLUSwEnter : 15|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_AutoLightValue : 16|1@1+ (1.0,0.0) [0.0|1.0] "" LCA,LCA + SG_ CF_Gway_BrakeFluidSw : 17|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_DrvSeatBeltInd : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_AvTail : 20|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,SNV,SNV + SG_ CF_Gway_RearFogAct : 21|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ExtTailAct : 22|1@1+ (1.0,0.0) [0.0|1.0] "" AVM,CLU,LCA,PGS,SPAS,AVM,LCA,PGS,SPAS + SG_ CF_Gway_RRDrSw : 23|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_RLDrSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_IntTailAct : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_CountryCfg : 26|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,Dummy + SG_ CF_Gway_WiperParkPosition : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,EMS,LDWS_LKAS,AFLS,EMS,LDWS_LKAS + SG_ CF_Gway_HLLowLHFail : 33|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV + SG_ CF_Gway_HLLowRHFail : 34|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS,SNV,LDWS_LKAS,SNV + SG_ CF_Gway_ESCLFailWarn : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ESCLNotLockedWarn : 36|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ESCLNotUnlockWarn : 37|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_IDoutWarn : 38|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_ImmoLp : 40|1@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_BCMRKEID : 41|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + SG_ CF_Gway_VehicleNotPWarn : 44|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_DeactivationWarn : 45|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_KeyBATDischargeWarn : 46|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SSBWarn : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SMKFobID : 48|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + SG_ CF_Gway_SMKRKECmd : 51|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + SG_ CF_Gway_AutoLightOption : 54|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_SJBDeliveryMode : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_KeyoutLp : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,Dummy + SG_ CF_Gway_SMKDispWarn : 57|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,Dummy + SG_ CF_Gway_WngBuz : 61|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,Dummy + +BO_ 339 TCS11: 8 ESC + SG_ TCS_REQ : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,TCU + SG_ MSR_C_REQ : 1|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,SCC,TCU + SG_ TCS_PAS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,SCC,SPAS,TCU + SG_ TCS_GSC : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,TCU + SG_ CF_Esc_LimoInfo : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,SCC + SG_ ABS_DIAG : 6|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB + SG_ ABS_DEF : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,SCC,SPAS,TCU + SG_ TCS_DEF : 8|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU + SG_ TCS_CTL : 9|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SCC,SPAS,TCU + SG_ ABS_ACT : 10|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU + SG_ EBD_DEF : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,SPAS,TCU + SG_ ESP_PAS : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU,EMS,EPB,LDWS_LKAS,SCC,TCU + SG_ ESP_DEF : 13|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,TCU + SG_ ESP_CTL : 14|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,ECS,EMS,EPB,LDWS_LKAS,SCC,SPAS,TCU + SG_ TCS_MFRN : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,EPB,TCU + SG_ DBC_CTL : 16|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB + SG_ DBC_PAS : 17|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB + SG_ DBC_DEF : 18|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB + SG_ HAC_CTL : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU + SG_ HAC_PAS : 20|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU + SG_ HAC_DEF : 21|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,EMS,EPB,TCU + SG_ ESS_STAT : 22|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,BCM,CLU,EMS,EPB + SG_ TQI_TCS : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU + SG_ TQI_MSR : 32|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU + SG_ TQI_SLW_TCS : 40|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,EPB,TCU + SG_ CF_Esc_BrkCtl : 48|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ BLA_CTL : 49|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CGW,CLU + SG_ AliveCounter_TCS1 : 52|4@1+ (1.0,0.0) [0.0|14.0] "" EMS,EPB,LDWS_LKAS + SG_ CheckSum_TCS1 : 56|8@1+ (1.0,0.0) [0.0|255.0] "" EMS,EPB,LDWS_LKAS + +BO_ 1362 SNV11: 4 SNV + SG_ CF_SNV_DisplayControl : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD + SG_ CF_Snv_BeepWarning : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,HUD + SG_ CF_Snv_WarningMessage : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,HUD + SG_ CF_Snv_DetectionEnable : 7|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,CLU,HUD + SG_ CF_Snv_PedestrianDetect : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD + SG_ CF_Snv_IRLampControl : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,HUD + +BO_ 593 MDPS12: 8 MDPS + SG_ CR_Mdps_StrColTq : 0|11@1+ (1.0,-1024.0) [-1024.0|1024.0] "" LDWS_LKAS + SG_ CF_Mdps_Def : 11|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ CF_Mdps_ToiUnavail : 12|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_ToiActive : 13|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_ToiFlt : 14|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_FailStat : 15|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Mdps_MsgCount2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS + SG_ CF_Mdps_Chksum2 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" ESC,LDWS_LKAS + SG_ CF_Mdps_SErr : 37|1@1+ (1.0,0.0) [0.0|1.0] "" ESC + SG_ CR_Mdps_StrTq : 40|12@1+ (0.01,-20.48) [-20.48|20.47] "Nm" ESC + SG_ CR_Mdps_OutTq : 52|12@1+ (0.1,-204.8) [-204.8|204.7] "" ESC,LDWS_LKAS + +BO_ 1360 IAP11: 3 IAP + SG_ CF_Iap_EcoPmodSwi : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Iap_EcoPmodAct : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Iap_ReqWarn : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1356 TCU_DCT14: 8 TCU + SG_ Vehicle_Stop_Time : 0|5@1+ (1.0,0.0) [0.0|0.0] "" CLU + SG_ HILL_HOLD_WARNING : 5|1@1+ (1.0,0.0) [0.0|0.0] "" CLU + +BO_ 1353 BAT11: 8 EMS + SG_ BAT_SNSR_I : 0|16@1+ (0.01,-327.0) [-327.0|328.0] "A" CGW,CUBIS,IBOX,TMU + SG_ BAT_SOC : 16|8@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_V : 24|14@1+ (0.0010,6.0) [6.0|18.0] "V" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_Temp : 38|9@1- (0.5,-40.0) [-40.0|125.0] "deg" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_State : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU + SG_ BAT_SOH : 48|7@1+ (1.0,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_Invalid : 55|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU + SG_ BAT_SOF : 56|7@1+ (0.1,0.0) [0.0|12.0] "V" CGW,CUBIS,IBOX,TMU + SG_ BAT_SNSR_Error : 63|1@1+ (1.0,0.0) [0.0|1.0] "" CGW,CUBIS,IBOX,TMU + +BO_ 1351 EMS15: 8 EMS + SG_ ECGPOvrd : 0|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX,SCC + SG_ QECACC : 1|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ ECFail : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ SwitchOffCondExt : 3|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ BLECFail : 4|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ CF_Ems_IsaAct : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ FA_PV_CAN : 8|8@1+ (0.3906,0.0) [0.0|99.2] "%" IBOX,LDWS_LKAS,TCU + SG_ IntAirTemp : 16|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,ECS,EPB,IBOX,TCU + SG_ STATE_DC_OBD : 24|7@1+ (1.0,0.0) [0.0|127.0] "" IBOX,TCU + SG_ INH_DC_OBD : 31|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ CTR_IG_CYC_OBD : 32|16@1+ (1.0,0.0) [0.0|65535.0] "" ACU,IBOX,TCU + SG_ CTR_CDN_OBD : 48|16@1+ (1.0,0.0) [0.0|65535.0] "" IBOX,TCU + +BO_ 1350 DI_BOX12: 8 DI_BOX + SG_ CF_DiBox_FrtInjVDiagReg0 : 0|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_FrtInjVDiagReg1 : 8|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_FrtInjVDiagReg2 : 16|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SedInjVDiagReg0 : 24|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SedInjVDiagReg1 : 32|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CF_DiBox_SedInjVDiagReg2 : 40|8@1+ (1.0,0.0) [0.0|255.0] "" EMS + SG_ CR_DiBox_BatVol : 48|8@1+ (0.1,0.0) [0.0|25.5] "V" EMS + SG_ CF_DiBox_SedInjVChg : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_FrtInjVChg : 57|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_SedInjVErrSPI : 58|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_DiBox_FrtInjVErrSPI : 59|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + +BO_ 1349 EMS14: 8 EMS + SG_ IMMO_LAMP_STAT : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ L_MIL : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX + SG_ IM_STAT : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ AMP_CAN : 3|5@1+ (10.731613,458.98) [458.98|791.660003] "mmHg" CLU,IBOX,TCU,TPMS + SG_ BAT_Alt_FR_Duty : 8|8@1+ (0.4,0.0) [0.0|100.0] "%" CGW,CUBIS,IBOX,TMU + SG_ VB : 24|8@1+ (0.1015625,0.0) [0.0|25.8984375] "V" CLU,CUBIS,DATC,EPB,FPCM,IBOX + SG_ EMS_VS : 32|12@1+ (0.0625,0.0) [0.0|255.875] "km/h" CLU + SG_ TEMP_FUEL : 56|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" FPCM + +BO_ 68 DATC11: 8 DATC + SG_ CF_Datc_Type : 0|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_Datc_VerMaj : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_Datc_VerMin : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CR_Datc_OutTempC : 24|8@1+ (0.5,-41.0) [-41.0|86.5] "deg" CLU,FPCM + SG_ CR_Datc_OutTempF : 32|8@1+ (1.0,-42.0) [-42.0|213.0] "deg" CLU + SG_ CF_Datc_IncarTemp : 40|8@1+ (0.5,-40.0) [-40.0|60.0] "deg" BCM,CLU + +BO_ 67 DATC13: 8 DATC + SG_ CF_Datc_TempDispUnit : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX + SG_ CF_Datc_ModDisp : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_IonClean : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_ChgReqDisp : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_IntakeDisp : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_AutoDisp : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_FrDefLed : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,IBOX + SG_ CF_Datc_AutoDefogBlink : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_ClmScanDisp : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_AqsDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_AcDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_OpSts : 25|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Mtc_MaxAcDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_DualDisp : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_PwrInf : 32|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_RearManual : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearAutoDisp : 40|2@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Datc_RearOffDisp : 42|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearClimateScnDisp : 44|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearChgReqDisp : 46|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_RearModDisp : 48|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_RearBlwDisp : 52|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_PSModDisp : 56|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ CF_Datc_FrontBlwDisp : 60|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX + +BO_ 66 DATC12: 8 DATC + SG_ CR_Datc_DrTempDispC : 0|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX + SG_ CR_Datc_DrTempDispF : 8|8@1+ (1.0,56.0) [58.0|90.0] "deg" CLU,IBOX + SG_ CR_Datc_PsTempDispC : 16|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU,IBOX + SG_ CR_Datc_PsTempDispF : 24|8@1+ (1.0,56.0) [58.0|90.0] "deg" CLU,IBOX + SG_ CR_Datc_RearDrTempDispC : 40|8@1+ (0.5,14.0) [15.0|32.0] "deg" CLU + SG_ CR_Datc_RearDrTempDispF : 48|8@1+ (1.0,58.0) [58.0|90.0] "deg" CLU + SG_ CF_Datc_CO2_Warning : 56|8@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1345 CGW1: 8 BCM + SG_ CF_Gway_IGNSw : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC,ECS,EMS,EPB,ESC,IBOX,LVR,MDPS,SAS,SCC + SG_ CF_Gway_RKECmd : 3|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX + SG_ CF_Gway_DrvKeyLockSw : 6|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX + SG_ CF_Gway_DrvKeyUnlockSw : 7|1@1+ (1.0,0.0) [0.0|1.0] "" ECS,EMS,IBOX,ECS,EMS,IBOX + SG_ CF_Gway_DrvDrSw : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU,ECS,EMS,EPB,ESC,IBOX,SCC,TCU + SG_ CF_Gway_DrvSeatBeltSw : 10|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,PSB,TCU,EMS,EPB,ESC,IBOX,PSB,TCU + SG_ CF_Gway_TrunkTgSw : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ECS,EMS,EPB,ESC,IBOX,ECS,EMS,EPB,ESC,IBOX + SG_ CF_Gway_AstSeatBeltSw : 14|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX,PSB,IBOX,PSB + SG_ CF_Gway_SMKOption : 16|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,EMS,IBOX,SMK + SG_ CF_Gway_HoodSw : 17|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,EPB,ESC,IBOX,EMS,EPB,ESC,IBOX + SG_ CF_Gway_TurnSigLh : 19|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC + SG_ CF_Gway_WiperIntT : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperIntSw : 24|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperLowSw : 25|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperHighSw : 26|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_WiperAutoSw : 27|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_RainSnsState : 28|3@1+ (1.0,0.0) [0.0|7.0] "" AFLS,EMS,IBOX,LDWS_LKAS,AFLS,EMS,ESC,IBOX,LDWS_LKAS + SG_ CF_Gway_HeadLampLow : 31|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,SNV,AFLS,EMS,IBOX,LDWS_LKAS,SNV + SG_ CF_Gway_HeadLampHigh : 32|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,EMS,IBOX,LDWS_LKAS,AFLS,EMS,IBOX,LDWS_LKAS + SG_ CF_Gway_HazardSw : 33|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS,ABS,EMS,ESC,IBOX,LCA,LDWS_LKAS + SG_ CF_Gway_AstDrSw : 35|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,IBOX + SG_ CF_Gway_DefoggerRly : 36|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX + SG_ CF_Gway_ALightStat : 37|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_LightSwState : 38|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_Frt_Fog_Act : 40|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,CLU,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_TSigRHSw : 41|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_TSigLHSw : 42|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_DriveTypeOption : 43|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_StarterRlyState : 44|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX,EMS,IBOX,SMK + SG_ CF_Gway_PassiveAccessLock : 45|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK + SG_ CF_Gway_WiperMistSw : 47|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,IBOX,LDWS_LKAS + SG_ CF_Gway_PassiveAccessUnlock : 48|2@1+ (1.0,0.0) [0.0|7.0] "" CLU,ECS,EMS,IBOX,ECS,EMS,IBOX,SMK + SG_ CF_Gway_RrSunRoofOpenState : 50|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX + SG_ CF_Gway_PassingSW : 51|1@1+ (1.0,0.0) [0.0|1.0] "" AFLS,IBOX,LDWS_LKAS,AFLS,IBOX,LDWS_LKAS + SG_ CF_Gway_HBAControlMode : 52|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_HLpHighSw : 53|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LDWS_LKAS,IBOX,LDWS_LKAS + SG_ CF_Gway_InhibitRMT : 54|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,MDPS,PGS,SCC,SPAS,TPMS,EPB,ESC,IBOX,LCA,LDWS_LKAS,PGS,SCC,SPAS,TPMS + SG_ CF_Gway_RainSnsOption : 56|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ C_SunRoofOpenState : 57|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,DATC,IBOX,DATC,IBOX + SG_ CF_Gway_Ign1 : 58|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_Ign2 : 59|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Gway_ParkBrakeSw : 60|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,ESC,IBOX,SCC,ESC,IBOX,SCC + SG_ CF_Gway_TurnSigRh : 62|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,IBOX,LCA,LDWS_LKAS,SCC,EMS,IBOX,LCA,LDWS_LKAS,SCC + +BO_ 64 DATC14: 8 DATC + SG_ CF_Datc_AqsLevelOut : 0|4@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Datc_DiagMode : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CR_Datc_SelfDiagCode : 8|8@1+ (1.0,-1.0) [0.0|254.0] "" CLU + SG_ DATC_SyncDisp : 16|4@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_OffDisp : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_SmartVentDisp : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_SmartVentOnOffStatus : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_AutoDefogSysOff_Disp : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ DATC_ADSDisp : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 832 LKAS11: 8 LDWS_LKAS + SG_ CF_Lkas_LdwsActivemode : 0|2@1+ (1,0) [0|3] "" CLU,IBOX,PSB + SG_ CF_Lkas_LdwsSysState : 2|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,IBOX,PSB + SG_ CF_Lkas_SysWarning : 6|4@1+ (1.0,0.0) [0.0|15.0] "" BCM,CLU + SG_ CF_Lkas_LdwsLHWarning : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB + SG_ CF_Lkas_LdwsRHWarning : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU,PSB + SG_ CF_Lkas_HbaLamp : 14|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Lkas_FcwBasReq : 15|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC + SG_ CR_Lkas_StrToqReq : 16|11@1+ (1.0,-1024.0) [-1024.0|1024.0] "" MDPS + SG_ CF_Lkas_ActToi : 27|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Lkas_ToiFlt : 28|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Lkas_HbaSysState : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM,CLU + SG_ CF_Lkas_FcwOpt : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lkas_HbaOpt : 34|2@1+ (1.0,0.0) [0.0|1.0] "" BCM,CGW + SG_ CF_Lkas_MsgCount : 36|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,MDPS + SG_ CF_Lkas_FcwSysState : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Lkas_FcwCollisionWarning : 43|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lkas_FusionState : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Lkas_Unknown1 : 47|1@1+ (1.0,0.0) [0.0|1.0] "" XXX + SG_ CF_Lkas_Chksum : 48|8@1+ (1.0,0.0) [0.0|255.0] "" MDPS + SG_ CF_Lkas_FcwOpt_USM : 56|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Lkas_LdwsOpt_USM : 59|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,MDPS + SG_ CF_Lkas_Unknown2 : 62|2@1+ (1.0,0.0) [0.0|1.0] "" XXX + +BO_ 1342 LKAS12: 6 LDWS_LKAS + SG_ CF_Lkas_TsrSlifOpt : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_LkasTsrStatus : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Lkas_TsrSpeed_Display_Clu : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU + SG_ CF_LkasTsrSpeed_Display_Navi : 24|8@1+ (1.0,0.0) [0.0|255.0] "" BCM,CLU + SG_ CF_Lkas_TsrAddinfo_Display : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_LkasDawStatus : 40|3@1+ (1,0) [0|7] "" CLU + SG_ CF_Lkas_Daw_USM : 37|3@1+ (1,0) [0|7] "" CLU + +BO_ 1338 TMU_GW_E_01: 8 CLU + SG_ CF_Gway_TeleReqDrLock : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqDrUnlock : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqHazard : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqHorn : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Gway_TeleReqEngineOperate : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 1078 PAS11: 4 BCM + SG_ CF_Gway_PASDisplayFLH : 0|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM + SG_ CF_Gway_PASDisplayFRH : 3|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM + SG_ CF_Gway_PASRsound : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASDisplayFCTR : 8|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,AVM + SG_ CF_Gway_PASDisplayRCTR : 11|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM + SG_ CF_Gway_PASFsound : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASDisplayRLH : 16|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM + SG_ CF_Gway_PASDisplayRRH : 19|3@1+ (1.0,0.0) [0.0|7.0] "" AVM,CLU,PGS,AVM + SG_ CF_Gway_PASCheckSound : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASSystemOn : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,Dummy + SG_ CF_Gway_PASOption : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PASDistance : 28|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + +BO_ 48 EMS18: 6 EMS + SG_ CF_Ems_DC1NumPerMSV : 0|8@1+ (1.0,0.0) [0.0|255.0] "" DI_BOX + SG_ CF_Ems_DC2NumPerMSV : 8|16@1+ (1.0,0.0) [0.0|65535.0] "" DI_BOX + SG_ CR_Ems_DutyCyc1MSV : 24|8@1+ (0.1953,0.0) [0.0|49.8] "%" DI_BOX + SG_ CR_Ems_DutyCyc2MSV : 32|8@1+ (0.13725,0.0) [0.0|35.0] "%" DI_BOX + SG_ CR_Ems_DutyCyc3MSV : 40|8@1+ (0.392,0.0) [0.0|100.0] "%" DI_BOX + +BO_ 1322 CLU15: 8 CLU + SG_ CF_Clu_VehicleSpeed : 0|8@1+ (1.0,0.0) [0.0|255.0] "" BCM + SG_ CF_Clu_Gear : 9|4@1+ (1,0) [0|15] "" BCM + SG_ CF_Clu_HudInfoSet : 13|7@1+ (1.0,0.0) [0.0|127.0] "" HUD + SG_ CF_Clu_HudFontColorSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudBrightUpSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudBrightDnSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudHeightUpSW : 26|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudHeightDnSW : 28|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_HudSet : 30|1@1+ (1.0,0.0) [0.0|1.0] "" HUD + SG_ CF_Clu_HudFontSizeSet : 31|2@1+ (1.0,0.0) [0.0|3.0] "" HUD + SG_ CF_Clu_LanguageInfo : 33|5@1+ (1.0,0.0) [0.0|31.0] "" BCM,PGS + SG_ CF_Clu_ClusterSound : 38|1@1- (1.0,0.0) [0.0|0.0] "" BCM,CGW,FATC + SG_ CF_Clu_VehicleSpeed2 : 48|8@1+ (1,0) [0|255] "" XXX + +BO_ 1066 _4WD13: 6 _4WD + SG_ _4WD_CURRENT : 0|8@1+ (0.390625,0.0) [-50.0|50.0] "A" TCU + SG_ _4WD_POSITION : 8|16@1+ (0.015625,0.0) [-180.0|180.0] "Deg" TCU + SG_ _4WD_CLU_THERM_STR : 24|8@1+ (1.0,0.0) [0.0|100.0] "%" TCU + SG_ _4WD_STATUS : 32|8@1+ (1.0,0.0) [0.0|15.0] "" ESC,TCU + +BO_ 1065 _4WD12: 8 _4WD + SG_ Ster_Pos : 0|16@1+ (1.0,-600.0) [-600.0|600.0] "Deg" ESC + SG_ FRSS : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ FLSS : 24|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ RRSS : 32|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ RLSS : 40|8@1+ (1.0,0.0) [0.0|254.0] "km/h" ESC + SG_ CLU_PRES : 48|16@1+ (0.0625,-50.0) [-50.0|50.0] "Bar" ESC + +BO_ 809 EMS12: 8 EMS + SG_ CONF_TCU m1 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LCA,SMK + SG_ CAN_VERS m0 : 0|6@1+ (1.0,0.0) [0.0|7.7] "" _4WD,ABS,ESC,IBOX + SG_ TQ_STND m3 : 0|6@1+ (10.0,0.0) [0.0|630.0] "Nm" _4WD,DATC,ECS,EPB,ESC,FATC,IBOX + SG_ OBD_FRF_ACK m2 : 0|6@1+ (1.0,0.0) [0.0|63.0] "" _4WD,ESC,IBOX + SG_ MUL_CODE M : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,BCM,CLU,DATC,ECS,EPB,ESC,IBOX,LCA,SMK,TCU + SG_ TEMP_ENG : 8|8@1+ (0.75,-48.0) [-48.0|143.25] "deg" _4WD,BCM,CLU,DATC,EPB,ESC,IBOX,SMK,TCU + SG_ MAF_FAC_ALTI_MMV : 16|8@1+ (0.00781,0.0) [0.0|1.99155] "" IBOX,TCU + SG_ VB_OFF_ACT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ ACK_ES : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,IBOX + SG_ CONF_MIL_FMY : 26|3@1+ (1.0,0.0) [0.0|7.0] "" ESC,IBOX,TCU + SG_ OD_OFF_REQ : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,TCU + SG_ ACC_ACT : 30|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,CLU,ESC,IAP,IBOX,SCC,TCU + SG_ CLU_ACK : 31|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EPB,ESC,IBOX + SG_ BRAKE_ACT : 32|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ABS,ACU,AFLS,CLU,DATC,ECS,EPB,ESC,IBOX,LDWS_LKAS,TCU + SG_ ENG_CHR : 34|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,ABS,ACU,CLU,DATC,EPB,ESC,FATC,IBOX,SCC,SMK,TCU + SG_ GP_CTL : 38|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX + SG_ TPS : 40|8@1+ (0.4694836,-15.0234742) [-15.0234742|104.6948357] "%" _4WD,ABS,ACU,CLU,DATC,ECS,EPB,ESC,IBOX,TCU + SG_ PV_AV_CAN : 48|8@1+ (0.3906,0.0) [0.0|99.603] "%" _4WD,AAF,ABS,ACU,AFLS,CLU,DATC,EPB,ESC,IAP,IBOX,LDWS_LKAS,SCC,TCU + SG_ ENG_VOL : 56|8@1+ (0.1,0.0) [0.0|25.5] "liter" _4WD,ABS,ACU,BCM,CLU,DATC,EPB,ESC,IBOX,LDWS_LKAS,SCC,SMK + +BO_ 1064 _4WD11: 8 _4WD + SG_ _4WD_TYPE : 0|2@1+ (1.0,0.0) [0.0|3.0] "" ACU,ESC,TPMS + SG_ _4WD_SUPPORT : 2|2@1+ (1.0,0.0) [0.0|3.0] "" ABS,ESC,TPMS + SG_ _4WD_ERR : 8|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,ESC + SG_ CLU_DUTY : 16|8@1+ (1.0,0.0) [0.0|64.0] "%" ABS,ESC + SG_ R_TIRE : 24|8@1+ (1.0,200.0) [200.0|455.0] "mm" ABS,ESC,TPMS + SG_ _4WD_SW : 32|8@1+ (1.0,0.0) [0.0|9.9] "" ESC + SG_ _2H_ACT : 40|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC + SG_ _4H_ACT : 41|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS + SG_ LOW_ACT : 42|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TCU,TPMS + SG_ AUTO_ACT : 43|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,ESC,TPMS + SG_ LOCK_ACT : 44|1@1+ (1.0,0.0) [0.0|1.0] "" ABS,CLU,ESC,TPMS + SG_ _4WD_TQC_CUR : 48|16@1+ (1.0,0.0) [0.0|65535.0] "Nm" ABS,ESC + +BO_ 1319 HU_GW_E_01: 8 CLU + SG_ C_ADrLNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ C_ADrUNValueSet : 4|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ C_TwUnNValueSet : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_ABuzzerNValueSet : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_ArmWKeyNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_PSMNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_SCMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_HLEscortNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_WELNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_TriTurnLNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_SNVWarnNValueSet : 24|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_LkasWarnNValueSet : 26|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 1318 HU_GW_E_00: 8 CLU + SG_ C_ADrLURValueReq : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_TwUnRValueReq : 2|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_AlarmRValueReq : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_IMSRValueReq : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_HLEscortRValueReq : 8|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_WELRValueReq : 10|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_TriTurnLRValueReq : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_SNVWarnRValueReq : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ C_LkasWarnRValueReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 1317 GW_HU_E_01: 8 BCM + SG_ C_ADrLRValue : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_ADrURValue : 4|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_TwUnRValue : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ABuzzerRValue : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ArmWKeyRValue : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_PSMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SCMRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_HLEscortRValue : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_WELRValue : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TriTurnLRValue : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1316 GW_HU_E_00: 8 BCM + SG_ C_ADrLUNValueConf : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TwUnNValueConf : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_AlarmNValueConf : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_PSMNValueConf : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SCMNValueConf : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_HLEscortNValueConf : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_WELNValueConf : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TriTurnLNValueConf : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1315 GW_SWRC_PE: 8 BCM + SG_ C_ModeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_MuteSW : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SeekDnSW : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SeekUpSW : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_BTPhoneCallSW : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_BTPhoneHangUpSW : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_DISCDownSW : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_DISCUpSW : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SdsSW : 18|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_MTSSW : 20|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_VolDnSW : 22|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_VolUpSW : 24|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1314 GW_IPM_PE_1: 8 BCM + SG_ C_AV_Tail : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ParkingBrakeSW : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_RKECMD : 4|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ C_BAState : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_IGNSW : 12|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_CountryCfg : 16|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ C_TailLampActivity : 26|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ RearSW_RSELockOnOff : 28|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SMKTeleCrankingState : 32|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_SMKTeleCrankingFailRes : 34|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1057 SCC12: 8 SCC + SG_ CF_VSM_Prefill : 0|1@1+ (1,0) [0|1] "" ESC + SG_ CF_VSM_DecCmdAct : 1|1@1+ (1,0) [0|1] "" ESC + SG_ CF_VSM_HBACmd : 2|2@1+ (1,0) [0|3] "" ESC + SG_ CF_VSM_Warn : 4|2@1+ (1,0) [0|3] "" CLU,ESC,IAP + SG_ CF_VSM_Stat : 6|2@1+ (1,0) [0|3] "" CLU,ESC,PSB + SG_ CF_VSM_BeltCmd : 8|3@1+ (1,0) [0|7] "" ESC,PSB + SG_ ACCFailInfo : 11|2@1+ (1,0) [0|3] "" CLU,CUBIS,ESC,IBOX + SG_ ACCMode : 13|2@1+ (1,0) [0|3] "" CLU,ESC,IBOX,TCU + SG_ StopReq : 15|1@1+ (1,0) [0|1] "" EPB,ESC + SG_ CR_VSM_DecCmd : 16|8@1+ (0.01,0) [0|2.55] "g" ESC + SG_ TakeOverReq : 35|1@1+ (1,0) [0|1] "" CLU,ESC,TCU + SG_ PreFill : 36|1@1+ (1,0) [0|1] "" ESC,TCU + SG_ CF_VSM_ConfMode : 48|2@1+ (1,0) [0|3] "" CLU,ESC + SG_ AEB_Failinfo : 50|2@1+ (1,0) [0|3] "" CLU,ESC + SG_ AEB_Status : 52|2@1+ (1,0) [0|3] "" CLU,ESC + SG_ AEB_CmdAct : 54|1@1+ (1,0) [0|1] "" ESC + SG_ AEB_StopReq : 55|1@1+ (1,0) [0|1] "" CLU,ESC + SG_ CR_VSM_Alive : 56|4@1+ (1,0) [0|15] "" ESC,PSB + SG_ CR_VSM_ChkSum : 60|4@1+ (1,0) [0|15] "" ESC,PSB + SG_ aReqValue : 37|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX + SG_ aReqRaw : 24|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" Vector__XXX + +BO_ 1313 GW_DDM_PE: 8 BCM + SG_ C_DRVDoorStatus : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_ASTDoorStatus : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_RLDoorStatus : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_RRDoorStatus : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_TrunkStatus : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ C_OSMirrorStatus : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + +BO_ 1056 SCC11: 8 SCC + SG_ MainMode_ACC : 0|1@1+ (1,0) [0|1] "" CLU,EMS,ESC + SG_ SCCInfoDisplay : 1|3@1+ (1,0) [0|7] "" CLU,ESC + SG_ AliveCounterACC : 4|4@1+ (1,0) [0|15] "" CLU,EMS,ESC,TCU + SG_ VSetDis : 8|8@1+ (1,0) [0|255] "km/h or MPH" CLU,ESC,TCU + SG_ ObjValid : 16|1@1+ (1,0) [0|1] "" CLU,ESC,TCU + SG_ DriverAlertDisplay : 17|2@1+ (1,0) [0|3] "" CLU,ESC + SG_ TauGapSet : 19|3@1+ (1,0) [0|7] "" CLU,ESC,TCU + SG_ Navi_SCC_Curve_Status : 56|2@1+ (1,0) [0|3] "" CLU + SG_ Navi_SCC_Curve_Act : 58|2@1+ (1,0) [0|3] "" CLU + SG_ Navi_SCC_Camera_Act : 60|2@1+ (1,0) [0|3] "" CLU + SG_ Navi_SCC_Camera_Status : 62|2@1+ (1,0) [0|3] "" CLU + SG_ ACC_ObjStatus : 22|2@1+ (1,0) [0|3] "" ABS,ESC + SG_ ACC_ObjLatPos : 24|9@1+ (0.1,-20) [-20|31.1] "m" ABS,ESC + SG_ ACC_ObjRelSpd : 44|12@1+ (0.1,-170) [-170|239.5] "m/s" ABS,ESC + SG_ ACC_ObjDist : 33|11@1+ (0.1,0) [0|204.7] "m" ABS,ESC + +BO_ 1312 CGW3: 8 BCM + SG_ CR_Photosensor_LH : 0|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC + SG_ CR_Photosensor_RH : 10|8@1+ (78.125,0.0) [0.0|20000.0] "" DATC,DATC + SG_ CF_Hoodsw_memory : 22|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,EMS + SG_ C_MirOutTempSns : 24|8@1+ (0.5,-40.5) [-40.0|60.0] "deg" AAF,CLU,DATC,EMS,SPAS,AAF,DATC,EMS,SPAS + +BO_ 544 ESP12: 8 ESC + SG_ LAT_ACCEL : 0|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,TCU + SG_ LAT_ACCEL_STAT : 11|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU + SG_ LAT_ACCEL_DIAG : 12|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,IBOX,LDWS_LKAS,MDPS,PSB,SCC,TCU + SG_ LONG_ACCEL : 13|11@1+ (0.01,-10.23) [-10.23|10.24] "m/s^2" _4WD,ECS,EMS,EPB,IBOX,LCA,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ LONG_ACCEL_STAT : 24|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ LONG_ACCEL_DIAG : 25|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,SPAS,TCU + SG_ CYL_PRES : 26|12@1+ (0.1,0.0) [0.0|409.5] "Bar" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU + SG_ CYL_PRES_STAT : 38|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,LDWS_LKAS,PSB,SCC,TCU + SG_ CYL_PRESS_DIAG : 39|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EMS,EPB,IBOX,PSB,SCC,TCU + SG_ YAW_RATE : 40|13@1+ (0.01,-40.95) [-40.95|40.96] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU + SG_ YAW_RATE_STAT : 53|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU + SG_ YAW_RATE_DIAG : 54|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,AFLS,IBOX,LCA,LDWS_LKAS,MDPS,PSB,SCC,SPAS,TCU + SG_ ESP12_Checksum : 56|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + SG_ ESP12_AliveCounter : 60|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,LPI,TCU,TMU + +BO_ 1307 CLU16: 8 CLU + SG_ CF_Clu_TirePressUnitNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" TPMS + SG_ CF_Clu_SlifNValueSet : 3|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Clu_RearWiperNValueSet : 12|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + +BO_ 790 EMS11: 8 EMS + SG_ SWI_IGK : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ABS,ACU,AHLS,CUBIS,DI_BOX,ECS,EPB,ESC,IBOX,LDWS_LKAS,MDPS,REA,SAS,SCC,TCU + SG_ F_N_ENG : 1|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,IBOX,MDPS,SCC,TCU + SG_ ACK_TCS : 2|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,IBOX + SG_ PUC_STAT : 3|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,DATC,IBOX,TCU + SG_ TQ_COR_STAT : 4|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ESC,IBOX,TCU + SG_ RLY_AC : 6|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,IBOX,TCU + SG_ F_SUB_TQI : 7|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ECS,EPB,ESC,IBOX,TCU + SG_ TQI_ACOR : 8|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU + SG_ N : 16|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" _4WD,ACU,AFLS,CLU,CUBIS,DATC,ECS,EPB,ESC,FPCM,IBOX,MDPS,SCC,TCU + SG_ TQI : 32|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,ECS,EPB,ESC,IBOX,TCU + SG_ TQFR : 40|8@1+ (0.390625,0.0) [0.0|99.6094] "%" _4WD,EPB,ESC,IBOX,TCU + SG_ VS : 48|8@1+ (1.0,0.0) [0.0|254.0] "km/h" _4WD,AAF,ACU,AHLS,BCM,CLU,DATC,ECS,EPB,IBOX,LCA,LDWS_LKAS,LVR,MDPS,ODS,SCC,SMK,SPAS,TCU,TPMS + SG_ RATIO_TQI_BAS_MAX_STND : 56|8@1+ (0.0078,0.0) [0.0|2.0] "" _4WD,IBOX,TCU + +BO_ 1301 CLU14: 8 CLU + SG_ CF_Clu_ADrUNValueSet : 0|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_ADrLNValueSet : 3|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_EscortHLNValueSet : 6|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_DoorLSNValueSet : 8|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_PSMNValueSet : 11|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_TTUnlockNValueSet : 14|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_PTGMNValueSet : 16|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_SCMNValueSet : 18|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_WlightNValueSet : 20|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_TempUnitNValueSet : 22|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,DATC + SG_ CF_Clu_MoodLpNValueSet : 24|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_TrfChgSet : 27|2@1+ (1.0,0.0) [0.0|3.0] "" AFLS + SG_ CF_Clu_OTTurnNValueSet : 29|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_LcaNValueSet : 32|2@1+ (1.0,0.0) [0.0|3.0] "" LCA + SG_ CF_Clu_RctaNValueSet : 34|2@1+ (1.0,0.0) [0.0|3.0] "" LCA + SG_ CF_Clu_RcwNValueSet : 36|2@1+ (1.0,0.0) [0.0|3.0] "" LCA + SG_ CF_Clu_EscOffNValueSet : 38|3@1+ (1.0,0.0) [0.0|7.0] "" ESC + SG_ CF_Clu_SccNaviCrvNValueSet : 41|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Clu_SccNaviCamNValueSet : 43|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Clu_SccAebNValueSet : 45|2@1+ (1.0,0.0) [0.0|3.0] "" SCC + SG_ CF_Clu_LkasModeNValueSet : 47|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Clu_FcwNValueSet : 51|2@1+ (1.0,0.0) [0.0|3.0] "" LDWS_LKAS + SG_ CF_Clu_PasSpkrLvNValueSet : 53|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + SG_ CF_Clu_SccDrvModeNValueSet : 56|3@1+ (1.0,0.0) [0.0|7.0] "" SCC + SG_ CF_Clu_HAnBNValueSet : 59|2@1+ (1.0,0.0) [0.0|3.0] "" BCM + SG_ CF_Clu_HfreeTrunkTgNValueSet : 61|3@1+ (1.0,0.0) [0.0|7.0] "" BCM + +BO_ 275 TCU13: 8 TCU + SG_ N_TGT_LUP : 0|8@1+ (10.0,500.0) [500.0|3040.0] "rpm" EMS,IBOX + SG_ SLOPE_TCU : 8|6@1+ (0.5,-16.0) [-16.0|15.5] "%" CLU,CUBIS,EMS,IBOX + SG_ CF_Tcu_InhCda : 14|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_IsgInhib : 15|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_BkeOnReq : 16|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_NCStat : 18|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_TarGr : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,DATC,EMS,EPB,ESC,IBOX,SCC + SG_ CF_Tcu_ShfPatt : 24|4@1+ (1.0,0.0) [0.0|15.0] "" CLU,CUBIS,EMS,IBOX + SG_ CF_Tcu_InhVis : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_PRelReq : 29|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX,LVR + SG_ CF_Tcu_ITPhase : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_ActEcoRdy : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_TqGrdLim : 32|8@1+ (10.0,0.0) [0.0|2540.0] "Nm/s" EMS,IBOX + SG_ CR_Tcu_IsgTgtRPM : 40|8@1+ (20.0,0.0) [0.0|3500.0] "rpm" EMS,IBOX + SG_ CF_Tcu_SptRdy : 48|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,IBOX + SG_ CF_Tcu_SbwPInfo : 56|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ CF_Tcu_Alive3 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_ChkSum3 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX + +BO_ 274 TCU12: 8 TCU + SG_ ETL_TCU : 0|8@1+ (2.0,0.0) [0.0|508.0] "Nm" EMS,IBOX + SG_ CUR_GR : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,EMS,ESC,IBOX,SCC,TPMS + SG_ CF_Tcu_Alive : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC + SG_ CF_Tcu_ChkSum : 14|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX,SCC + SG_ VS_TCU : 16|8@1+ (1.0,0.0) [0.0|254.0] "km/h" BCM,CLU,DATC,EMS,IBOX,LCA,LVR,PGS,SMK,SNV + SG_ FUEL_CUT_TCU : 28|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ INH_FUEL_CUT : 29|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ IDLE_UP_TCU : 30|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ N_INC_TCU : 31|1@1+ (1.0,0.0) [0.0|1.0] "" EMS,IBOX + SG_ SPK_RTD_TCU : 32|8@1+ (0.375,-23.625) [-15.0|15.0] "" EMS,IBOX + SG_ N_TC_RAW : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" EMS,IBOX + SG_ VS_TCU_DECIMAL : 56|8@1+ (0.0078125,0.0) [0.0|0.9921875] "km/h" CLU,EMS,IBOX,LCA + +BO_ 273 TCU11: 8 TCU + SG_ TQI_TCU_INC : 0|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX + SG_ G_SEL_DISP : 8|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,AFLS,AVM,BCM,CGW,CLU,CUBIS,ECS,EMS,EPB,ESC,IAP,IBOX,LCA,LDWS_LKAS,LVR,MDPS,PGS,SCC,SMK,SNV,SPAS,TPMS + SG_ F_TCU : 12|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,ESC,IBOX + SG_ TCU_TYPE : 14|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,EMS,ESC,IBOX + SG_ TCU_OBD : 16|3@1+ (1.0,0.0) [0.0|7.0] "" EMS,ESC,IBOX + SG_ SWI_GS : 19|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,EMS,EPB,ESC,IBOX,SCC + SG_ GEAR_TYPE : 20|4@1+ (1.0,0.0) [0.0|15.0] "" _4WD,CLU,EMS,ESC,IBOX,SCC + SG_ TQI_TCU : 24|8@1+ (0.390625,0.0) [0.0|99.609375] "%" EMS,ESC,IBOX + SG_ TEMP_AT : 32|8@1+ (1.0,-40.0) [-40.0|214.0] "deg" AAF,CLU,CUBIS,EMS,ESC,IBOX + SG_ N_TC : 40|16@1+ (0.25,0.0) [0.0|16383.5] "rpm" _4WD,EMS,EPB,ESC,IBOX + SG_ SWI_CC : 56|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU,EMS,ESC,IBOX + SG_ CF_Tcu_Alive1 : 58|2@1+ (1.0,0.0) [0.0|3.0] "" EMS,IBOX + SG_ CF_Tcu_ChkSum1 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,IBOX + +BO_ 16 ACU13: 8 ACU + SG_ CF_Acu_CshAct : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CUBIS,IBOX,ODS + +BO_ 1007 CRUISE_BUTTON_ALT: 8 XXX + SG_ SET_ME_1 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseSwMain : 58|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseSwState : 60|3@1+ (1,0) [0|7] "" XXX + +BO_ 1046 CRUISE_BUTTON_LFA: 8 XXX + SG_ NEW_SIGNAL_2 : 49|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 54|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 57|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseSwLfa : 58|1@0+ (1,0) [0|1] "" XXX + +BO_ 1040 CGW_USM1: 8 BCM + SG_ CF_Gway_ATTurnRValue : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PTGMRValue : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_EscortHLRValue : 4|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_TTUnlockRValue : 6|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_ADrLRValue : 8|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_ADrURValue : 11|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_SCMRValue : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_WlightRValue : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PSMRValue : 18|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_OTTurnRValue : 21|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_DrLockSoundRValue : 24|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_HAnBRValue : 27|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_MoodLpRValue : 30|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_HfreeTrunkRValue : 32|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_AutoLightRValue : 35|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_Gway_RearWiperRValue : 38|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_Gway_PasSpkrLvRValue : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + +BO_ 1292 CLU13: 8 CLU + SG_ CF_Clu_LowfuelWarn : 0|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,FPCM,IBOX + SG_ CF_Clu_RefDetMod : 2|1@1+ (1.0,0.0) [0.0|1.0] "" IBOX + SG_ CF_Clu_AvgFCU : 3|2@1+ (1.0,0.0) [0.0|3.0] "" IBOX + SG_ CF_Clu_AvsmCur : 5|1@1+ (1.0,0.0) [0.0|1.0] "" ESC,SCC + SG_ CF_Clu_AvgFCI : 6|10@1+ (0.1,0.0) [0.0|102.2] "" IBOX + SG_ CF_Clu_DrivingModeSwi : 16|2@1+ (1.0,0.0) [0.0|3.0] "" DATC,ECS,EMS,ESC,IAP,MDPS,TCU + SG_ CF_Clu_FuelDispLvl : 18|5@1+ (1.0,0.0) [0.0|31.0] "" CGW,IBOX + SG_ CF_Clu_FlexSteerSW : 23|1@1+ (1.0,0.0) [0.0|1.0] "" MDPS + SG_ CF_Clu_DTE : 24|10@1+ (1.0,0.0) [0.0|1023.0] "" DATC + SG_ CF_Clu_TripUnit : 34|2@1+ (1.0,0.0) [0.0|3.0] "" DATC + SG_ CF_Clu_SWL_Stat : 36|3@1+ (1.0,0.0) [0.0|7.0] "" ACU,EMS + SG_ CF_Clu_ActiveEcoSW : 39|1@1+ (1.0,0.0) [0.0|1.0] "" DATC,EMS,TCU + SG_ CF_Clu_EcoDriveInf : 40|3@1+ (1.0,0.0) [0.0|7.0] "" CUBIS,EMS,IAP,IBOX + SG_ CF_Clu_IsaMainSW : 43|1@1+ (1.0,0.0) [0.0|1.0] "" EMS + SG_ CF_Clu_LdwsLkasSW : 56|1@1+ (1.0,0.0) [0.0|1.0] "" LDWS_LKAS + SG_ CF_Clu_AltLStatus : 59|1@1+ (1.0,0.0) [0.0|1.0] "" BCM,DATC,EMS + SG_ CF_Clu_AliveCnt2 : 60|4@1+ (1.0,0.0) [0.0|15.0] "" EMS,LDWS_LKAS + +BO_ 1290 SCC13: 8 SCC + SG_ SCCDrvModeRValue : 0|3@1+ (1,0) [0|7] "" CLU + SG_ SCC_Equip : 3|1@1+ (1,0) [0|1] "" ESC + SG_ AebDrvSetStatus : 4|3@1+ (1,0) [0|7] "" CLU,ESC + SG_ Lead_Veh_Dep_Alert_USM : 13|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 1287 TCS15: 4 ESC + SG_ ABS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU,CUBIS,IBOX + SG_ TCS_OFF_LAMP : 1|2@1+ (1.0,0.0) [0.0|1.0] "" _4WD,ACU,CLU + SG_ TCS_LAMP : 3|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,ACU,CLU,CUBIS,IBOX,SCC + SG_ DBC_W_LAMP : 5|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ DBC_F_LAMP : 6|2@1+ (1.0,0.0) [0.0|3.0] "" _4WD,CLU + SG_ ESC_Off_Step : 8|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ AVH_CLU : 16|8@1+ (1.0,0.0) [0.0|255.0] "" CLU,EPB + SG_ AVH_I_LAMP : 24|2@1+ (1.0,0.0) [0.0|3.0] "" EPB + SG_ EBD_W_LAMP : 26|1@1+ (1.0,0.0) [0.0|1.0] "" _4WD,CLU + SG_ AVH_ALARM : 27|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ AVH_LAMP : 29|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EPB,SPAS + +BO_ 1282 TCU14: 4 TCU + SG_ CF_TCU_WarnMsg : 0|3@1+ (1.0,0.0) [0.0|7.0] "" CLU + SG_ CF_TCU_WarnImg : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_TCU_WarnSnd : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ CF_Tcu_GSel_BlinkReq : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,LVR + SG_ CF_Tcu_StRelStat : 12|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,EMS,ESC + SG_ CF_Tcu_DriWarn1 : 13|3@1+ (1.0,0.0) [0.0|7.0] "" CLU,EMS,ESC + SG_ CF_Tcu_DriWarn2 : 16|2@1+ (1.0,0.0) [0.0|3.0] "" CLU,EMS,ESC + +BO_ 1281 ECS11: 3 ECS + SG_ ECS_W_LAMP : 0|1@1+ (1.0,0.0) [0.0|1.0] "" CLU,CUBIS,IBOX + SG_ SYS_NA : 1|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ ECS_DEF : 2|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ ECS_DIAG : 3|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ L_CHG_NA : 4|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Leveling_Off : 5|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ LC_overheat : 6|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Lifting : 8|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Lowering : 9|1@1+ (1.0,0.0) [0.0|1.0] "" CLU + SG_ Damping_Mode : 10|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ REQ_Damping : 12|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ REQ_Height : 14|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ REQ_level : 16|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + SG_ ACT_Height : 20|4@1+ (1.0,0.0) [0.0|15.0] "" CLU + +BO_ 1024 CLU_CFG11: 2 CLU + SG_ Vehicle_Type : 0|16@1+ (1.0,0.0) [0.0|65536.0] "" _4WD + +BO_ 1280 ACU14: 1 ACU + SG_ CF_SWL_Ind : 0|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_TTL_Ind : 2|2@1+ (1.0,0.0) [0.0|3.0] "" CLU + SG_ CF_SBR_Ind : 4|2@1+ (1.0,0.0) [0.0|3.0] "" BCM,CLU + +BO_ 512 EMS20: 6 EMS + SG_ HYDROGEN_GEAR_SHIFTER : 11|3@1+ (1,0) [0|7] "" XXX + SG_ CF_Ems_PumpTPres : 16|8@1+ (3.137254902,0.0) [0.0|800.0] "kPa" FPCM,IBOX + SG_ Split_Stat : 32|1@1+ (1.0,0.0) [0.0|1.0] "" FPCM + +BO_ 909 FCA11: 8 FCA + SG_ CF_VSM_Prefill : 0|1@1+ (1,0) [0|1] "" ESC + SG_ CF_VSM_HBACmd : 1|2@1+ (1,0) [0|3] "" ESC + SG_ CF_VSM_Warn : 3|2@1+ (1,0) [0|3] "" ACU,CLU,ESC + SG_ CF_VSM_BeltCmd : 5|3@1+ (1,0) [0|7] "" ESC + SG_ CR_VSM_DecCmd : 8|8@1+ (0.01,0) [0|2.55] "g" ESC + SG_ FCA_Status : 18|2@1+ (1,0) [0|3] "" ACU,CLU,ESC + SG_ FCA_CmdAct : 20|1@1+ (1,0) [0|1] "" ESC + SG_ FCA_StopReq : 21|1@1+ (1,0) [0|1] "" CLU,ESC + SG_ FCA_DrvSetStatus : 22|3@1+ (1,0) [0|7] "" CLU,ESC + SG_ CF_VSM_DecCmdAct : 31|1@1+ (1,0) [0|1] "" ESC + SG_ FCA_Failinfo : 32|3@1+ (1,0) [0|7] "" ACU,CLU,ESC + SG_ CR_FCA_Alive : 35|4@1+ (1,0) [0|15] "" ESC + SG_ FCA_RelativeVelocity : 39|9@1+ (0.1,-25.5) [-25.5|25.5] "m/s" iBAU + SG_ FCA_TimetoCollision : 48|8@1+ (10,0) [0|2540] "ms" iBAU + SG_ CR_FCA_ChkSum : 56|8@1+ (1,0) [0|255] "" ESC + SG_ PAINT1_Status : 16|2@1+ (1,0) [0|1] "" XXX + +BO_ 1156 HDA11_MFC: 8 XXX + SG_ Counter : 5|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 1|2@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_3 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 16|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 18|14@1+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_6 : 33|2@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 34|14@1+ (1,0) [0|16383] "" XXX + SG_ NEW_SIGNAL_8 : 49|2@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_9 : 50|14@1- (1,-4095) [0|16383] "" XXX + +BO_ 1155 FCA12: 8 FCA + SG_ FCA_USM : 0|3@1+ (1,0) [0|7] "" CGW,CLU,ESC + SG_ FCA_DrvSetState : 3|3@1+ (1,0) [0|7] "" CGW + +BO_ 1186 FRT_RADAR11: 2 FCA + SG_ CF_FCA_Equip_Front_Radar : 0|3@1+ (1,0) [0|7] "" LDWS_LKAS,LDW_LKA,ESC + +BO_ 905 SCC14: 8 SCC + SG_ ComfortBandUpper : 0|6@1+ (0.02,0) [0|1.26] "m/s^2" ESC + SG_ ComfortBandLower : 6|6@1+ (0.02,0) [0|1.26] "m/s^2" ESC + SG_ JerkUpperLimit : 12|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC + SG_ JerkLowerLimit : 19|7@1+ (0.1,0) [0|12.7] "m/s^3" ESC + SG_ NEW_SIGNAL_1 : 26|6@1+ (1,0) [0|63] "" XXX + SG_ ACCMode : 32|3@1+ (1,0) [0|7] "" CLU,HUD,LDWS_LKAS,ESC + SG_ ObjDistStat : 42|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ObjGap : 56|8@1+ (1,0) [0|255] "" CLU,HUD,ESC + +BO_ 1157 LFAHDA_MFC: 8 XXX + SG_ HDA_USM : 0|2@1+ (1,0) [0|3] "" XXX + SG_ HDA_Active : 2|1@1+ (1,0) [0|1] "" XXX + SG_ HDA_Icon_State : 3|2@1+ (1,0) [0|3] "" XXX + SG_ HDA_Chime : 7|1@1+ (1,0) [0|1] "" XXX + SG_ HDA_VSetReq : 8|8@1+ (1,0) [0|255] "km/h" XXX + SG_ LFA_SysWarning : 16|3@1+ (1,0) [0|7] "" XXX + SG_ HDA_Icon_Wheel : 20|1@1+ (1,0) [0|1] "" XXX + SG_ HDA_LdwSysState : 21|2@1+ (1,0) [0|3] "" XXX + SG_ LFA_Icon_State : 24|2@1+ (1,0) [0|3] "" XXX + SG_ LFA_USM : 27|2@1+ (1,0) [0|3] "" XXX + SG_ HDA_SysWarning : 29|2@1+ (1,0) [0|3] "" XXX + +BO_ 913 BCM_PO_11: 8 Vector__XXX + SG_ BCM_Door_Dri_Status : 5|1@0+ (1,0) [0|1] "" PT_ESC_ABS + SG_ BCM_Shift_R_MT_SW_Status : 39|2@0+ (1,0) [0|3] "" PT_ESC_ABS + SG_ LFA_Pressed : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 1426 LABEL11: 8 XXX + SG_ CC_React : 34|1@1+ (1,0) [0|1] "" XXX + +BO_ 910 WHL_SPD12_FS: 5 iBAU + SG_ CRC : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ WHL_SPD12_AliveCounter : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ WHL_SPD_FL : 12|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX + SG_ WHL_SPD_FR : 26|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX + +BO_ 911 WHL_SPD13_FS: 5 iBAU + SG_ CRC : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ WHL_SPD13_AliveCounter : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ WHL_SPD_RL : 12|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX + SG_ WHL_SPD_RR : 26|14@1+ (0.03125,0) [0|511.96875] "km/h" Vector__XXX + +BO_ 865 ADAS_PRK_11: 8 ADAS_PRK + SG_ CF_PCA_BrkReq : 24|1@1+ (1,0) [0|0] "" Vector__XXX + SG_ CF_PCA_DclTrgtVal : 28|4@1+ (0.04,0) [0|0] "g" Vector__XXX + SG_ PCA_ALIVE_CNT : 40|4@1+ (1,0) [0|0] "" Vector__XXX + SG_ PCA_CHECK_SUM : 48|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 882 ELECT_GEAR: 8 XXX + SG_ Elect_Gear_Shifter : 16|4@1+ (1,0) [0|7] "" CLU + SG_ Elect_Gear_Shifter_NEXO : 16|16@1+ (1,0) [0|65535] "" CLU + SG_ Elect_Gear_Step : 22|3@0+ (1,0) [0|7] "" XXX + SG_ Elect_Motor_Speed : 0|8@1+ (1,0) [0|255] "" XXX + SG_ SLC_ON : 31|1@0+ (1,0) [0|1] "" CLU + SG_ SLC_SET_SPEED : 32|8@1+ (1,0) [0|255] "" CLU + +BO_ 881 E_EMS11: 8 XXX + SG_ Brake_Pedal_Pos : 0|8@1+ (1,0) [0|127] "" XXX + SG_ IG_Reactive_Stat : 8|3@1+ (1,0) [0|3] "" XXX + SG_ Gear_Change : 12|1@0+ (1,0) [0|31] "" XXX + SG_ Cruise_Limit_Status : 13|1@1+ (1,0) [0|1] "" XXX + SG_ Cruise_Limit_Target : 23|8@1+ (1,0) [0|15] "" XXX + SG_ Accel_Pedal_Pos : 31|8@1+ (1,0) [0|254] "" XXX + SG_ CR_Vcu_AccPedDep_Pos : 56|8@1+ (1,0) [0|254] "" XXX + SG_ Engine_Run : 14|1@0+ (1,0) [0|1] "" XXX + SG_ N : 18|13@1+ (1,0) [0|15] "" XXX + +BO_ 1355 EV_PC6: 8 CGW + SG_ CF_Vcu_SbwWarnMsg : 16|3@1+ (1,0) [0|7] "" Vector__XXX + +BO_ 1430 EV_PC2: 8 CGW + SG_ CR_Ldc_ActVol_LS_V : 32|8@1+ (0.1,0) [0|0] "V" Vector__XXX + +BO_ 1535 EV_PC10: 8 CGW + SG_ CF_Vcu_EpbRequest : 37|1@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 908 RSPA11: 8 RSPA + SG_ CF_RSPA_State : 0|4@1+ (1,0) [0|15] "" XXX + SG_ CF_RSPA_Act : 4|2@1+ (1,0) [0|3] "" XXX + SG_ CF_RSPA_DecCmd : 6|2@1+ (1,0) [0|3] "" XXX + SG_ CF_RSPA_Trgt_Spd : 8|10@1+ (0.01,0) [0|10.23] "km/h" XXX + SG_ CF_RSPA_StopReq : 18|1@1+ (1,0) [0|2] "" XXX + SG_ CR_RSPA_EPB_Req : 22|2@1+ (1,0) [0|3] "" XXX + SG_ CF_RSPA_ACC_ACT : 50|1@1+ (1,0) [0|2] "" XXX + SG_ CF_RSPA_AliveCounter : 52|4@1+ (1,0) [0|15] "" XXX + SG_ CF_RSPA_CRC : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 914 S_MDPS11: 8 XXX + SG_ CF_Mdps_Stat : 0|4@1+ (1,0) [0|15] "" XXX + SG_ CR_Mdps_DrvTq : 8|12@1+ (1,0) [0|15] "" XXX + SG_ CR_Mdps_StrAng : 24|16@1- (1,0) [0|65535] "" XXX + SG_ CF_Mdps_AliveCnt : 47|8@0+ (1,0) [0|255] "" XXX + SG_ CF_Mdps_Chksum : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 357 S_MDPS12: 8 XXX + SG_ NEW_SIGNAL_1 : 0|12@1+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_2 : 12|12@1+ (1,0) [0|4095] "" XXX + SG_ Counter : 48|4@1+ (1,0) [0|15] "" XXX + SG_ Checksum : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 352 AHB1: 8 iBAU + SG_ CF_Ahb_SLmp : 0|2@1+ (1,0) [0|3] "" CLU + SG_ CF_Ahb_Def : 2|2@1+ (1,0) [0|3] "" CGW + SG_ CF_Ahb_Act : 4|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ CF_Ahb_Diag : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ CF_Ahb_WLmp : 7|1@1+ (1,0) [0|1] "" CLU + SG_ CR_Ahb_StDep_mm : 8|16@1- (0.1,0) [-3276.8|3276.7] "mm" Vector__XXX + SG_ CF_Ahb_SnsFail : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ CF_Ahb_PedalCalStat : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ CF_Ahb_Bzzr : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ CF_Ahb_ChkSum : 56|8@1+ (1,0) [0|255] "" Vector__XXX + +BO_ 1191 MFC_4a7: 2 XXX + SG_ PAINT1 : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 1162 BCA11: 8 BCW + SG_ CF_BCA_State : 16|3@1+ (1,0) [0|7] "" CLU,iBAU + SG_ CF_BCA_Warning : 19|2@1+ (1,0) [0|3] "" CLU,iBAU + SG_ AliveCounter : 21|4@1+ (1,0) [0|15] "" CLU,iBAU + SG_ RCCA_Brake_Command : 29|1@1+ (1,0) [0|1] "" iBAU + SG_ Check_Sum : 56|8@1+ (1,0) [0|16] "" iBAU + +BO_ 1136 P_STS: 8 CGW + SG_ HCU1_STS : 6|2@1+ (1,0) [0|3] "" BCW,EPB,FCA,MDPS,SCC,iBAU + SG_ HCU5_STS : 8|2@1+ (1,0) [0|3] "" EPB,FCA,MDPS,iBAU + SG_ Counter : 58|4@1+ (1,0) [0|15] "" MDPS + SG_ Checksum : 62|2@1+ (1,0) [0|3] "" MDPS + +BO_ 304 YRS11: 8 ACU + SG_ CR_Yrs_Yr : 0|16@1+ (0.005,-163.84) [-163.84|163.83] "deg/s" CGW,iBAU + SG_ CR_Yrs_LatAc : 16|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.17651819] "g" iBAU + SG_ CF_Yrs_YrStat : 32|4@1+ (1,0) [0|15] "" iBAU + SG_ CF_Yrs_LatAcStat : 36|4@1+ (1,0) [0|15] "" iBAU + SG_ CF_Yrs_MCUStat : 40|4@1+ (1,0) [0|15] "" iBAU + SG_ CR_Yrs_MsgCnt1 : 48|4@1+ (1,0) [0|15] "" iBAU + SG_ CR_Yrs_Crc1 : 56|8@1+ (1,0) [0|255] "" iBAU + +BO_ 320 YRS12: 8 ACU + SG_ CF_Yrs_LongAcStat : 16|4@1+ (1,0) [0|15] "" iBAU + SG_ CF_IMU_ResetStat : 20|4@1+ (1,0) [0|15] "" iBAU + SG_ YRS_Temp : 24|8@1+ (1,-68) [-68|187] "" iBAU + SG_ YRS_TempStat : 32|4@1+ (1,0) [0|15] "" iBAU + SG_ CF_Yrs_Type : 36|4@1+ (1,0) [0|15] "" iBAU + SG_ CR_Yrs_MsgCnt2 : 48|4@1+ (1,0) [0|15] "" iBAU + SG_ CR_Yrs_Crc2 : 56|8@1+ (1,0) [0|255] "" iBAU + SG_ CR_Yrs_LongAc : 0|16@1+ (0.000127465,-4.17677312) [-4.17677312|4.17651819] "g" CGW,iBAU + +BO_ 1173 YRS13: 8 ACU + SG_ YRS_SeralNo : 16|48@1+ (1,0) [0|281474976710655] "" iBAU + +BO_ 870 EMS_366: 8 EMS + SG_ TQI_1 : 0|8@1+ (0.390625,0) [0|99.6094] "%" MDPS + SG_ N : 8|16@1+ (0.25,0.0) [0.0|16383.75] "rpm" MDPS + SG_ TQI_2 : 24|8@1+ (0.390625,0) [0|99.6094] "%" MDPS + SG_ VS : 40|8@1+ (1,0) [0|255] "km/h" MDPS + SG_ SWI_IGK : 48|1@0+ (1,0) [0|1] "" XXX + +BO_ 854 M_356: 8 XXX + SG_ PAINT1 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ PAINT2 : 34|2@0+ (1,0) [0|1] "" XXX + SG_ PAINT3 : 36|2@0+ (1,0) [0|3] "" XXX + SG_ PAINT4 : 38|1@0+ (1,0) [0|1] "" XXX + +BO_ 1042 ICM_412h: 8 ICM + SG_ T_Outside_input : 0|9@0+ (0.01,0) [0|5] "V" Vector__XXX + SG_ WarningSoundOutput_1Group : 5|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ WarningSoundOutput_2Group : 6|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ WarningSoundOutput_3Group : 7|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ TRIP_A_DT_Display_clock : 22|7@0+ (1,0) [0|99] "clock" Vector__XXX + SG_ TRIP_A_DT_Display_minute : 29|6@0+ (1,0) [0|59] "minute" Vector__XXX + SG_ TRIP_B_DT_Display_clock : 38|7@0+ (1,0) [0|99] "clock" Vector__XXX + SG_ TRIP_B_DT_Display_minute : 45|6@0+ (1,0) [0|59] "minute" Vector__XXX + SG_ PopupMessageOutput_1Level : 48|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_2Level : 49|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_3Level : 50|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_4Level : 51|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_5Level : 52|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_6Level : 53|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_7Level : 54|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ PopupMessageOutput_8Level : 55|1@0+ (1,0) [0|1] "" Vector__XXX + +BO_ 1348 Navi_HU: 8 XXX + SG_ SpeedLim_Nav_Clu : 7|8@0+ (1,0) [0|255] "" XXX + SG_ SpeedLim_Nav_General : 29|1@0+ (1,0) [0|1] "" XXX + SG_ SpeedLim_Nav_Cam : 30|1@0+ (1,0) [0|1] "" XXX + +BO_ 1291 EV_Info: 8 XXX + SG_ OPKR_EV_Charge_Level : 17|7@1+ (1,0) [0|100] "%" XXX +CM_ "BO_ E_EMS11: All (plug-in) hybrids use this gas signal: CR_Vcu_AccPedDep_Pos, and all EVs use the Accel_Pedal_Pos signal. See hyundai/values.py for a specific car list"; +CM_ 145 "Contains signal with accelerator pedal press. Used by fuel cell hydrogen-powered (FCEV) cars such as the 2021 Hyundai Nexo."; +CM_ 512 "Contains signal with gear shifter. Used by fuel cell hydrogen-powered (FCEV) cars such as the 2021 Hyundai Nexo."; +CM_ SG_ 871 CF_Lvr_IsgState "Idle Stop and Go"; +CM_ SG_ 1056 SCCInfoDisplay "Goes to 1 for a second while transitioning from Cruise Control to No Message"; +CM_ SG_ 1348 SpeedLim_Nav_Clu "Speed limit displayed on Nav, Cluster and HUD"; +CM_ SG_ 1348 SpeedLim_Nav_Cam "Speed limit if speed cam exist"; +VAL_ 882 Elect_Gear_Shifter_NEXO 1546 "D" 2314 "N" 2566 "R" 2569 "P"; + +VAL_ 274 CUR_GR 1 "D" 2 "D" 3 "D" 4 "D" 5 "D" 6 "D" 7 "D" 8 "D" 14 "R" 0 "P"; +VAL_ 512 HYDROGEN_GEAR_SHIFTER 5 "D" 8 "S" 6 "N" 7 "R" 0 "P"; +VAL_ 871 CF_Lvr_IsgState 0 "enabled" 1 "activated" 2 "unknown" 3 "disabled"; +VAL_ 871 CF_Lvr_Gear 12 "T" 5 "D" 8 "S" 6 "N" 7 "R" 0 "P"; +VAL_ 882 Elect_Gear_Shifter 4 "S" 5 "D" 8 "S" 6 "N" 7 "R" 0 "P" 12 "T"; +VAL_ 905 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault" 4 "cancelled"; +VAL_ 905 ObjDistStat 0 "no_object" 1 "receding" 2 "approaching"; +VAL_ 909 CF_VSM_Warn 2 "FCW" 3 "AEB"; +VAL_ 916 ACCEnable 0 "SCC ready" 1 "SCC temp fault" 2 "SCC permanent fault" 3 "SCC permanent fault, communication issue"; +VAL_ 1056 SCCInfoDisplay 0 "No Message" 2 "Cruise Control" 3 "Lost Lead" 4 "Standstill"; +VAL_ 1057 ACCMode 0 "off" 1 "enabled" 2 "driver_override" 3 "off_maybe_fault"; +VAL_ 1157 HDA_Icon_State 0 "no_hda" 1 "white_hda" 2 "green_hda"; +VAL_ 1157 LFA_SysWarning 0 "no_message" 1 "switching_to_hda" 2 "switching_to_scc" 3 "lfa_error" 4 "check_hda" 5 "keep_hands_on_wheel_orange" 6 "keep_hands_on_wheel_red"; +VAL_ 1157 LFA_Icon_State 0 "no_wheel" 1 "white_wheel" 2 "green_wheel" 3 "green_wheel_blink"; +VAL_ 1157 HDA_SysWarning 0 "no_message" 1 "driving_convenience_systems_cancelled" 2 "highway_drive_assist_system_cancelled"; +VAL_ 1322 CF_Clu_Gear 1 "P" 2 "R" 4 "N" 8 "D"; diff --git a/opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc b/opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc new file mode 100644 index 0000000000..c0f4f7e180 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/hyundai_santafe_2007.dbc @@ -0,0 +1,118 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: AWD ECU TCU ESP SAS ABS + + +BO_ 339 ESP_Flags: 8 ESP + SG_ ABD_Active : 3|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU + SG_ TCS_Active : 9|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU + SG_ ABS_Active : 10|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU + SG_ ESP_Off : 12|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU + SG_ ESP_Active : 14|1@1+ (1,0) [0|1] "yes/no" AWD,ECU,TCU + SG_ VehicleSpeed : 16|8@1+ (1,0) [0|254] "km/h" AWD,ECU,TCU + SG_ TorqueRequestFast : 24|8@1+ (0.390625,0) [0|99.609375] "%" ECU,TCU + SG_ TorqueRequestSlow : 40|8@1+ (0.390625,0) [0|99.609375] "%" ECU,TCU + +BO_ 497 ESP_WheelSpeed: 8 ESP + SG_ FrontRightWheelSpeed : 16|12@1+ (0.125,0) [0|511.875] "km/h" AWD + SG_ FrontLeftWheelSpeed : 28|12@1+ (0.125,0) [0|511.875] "km/h" AWD + SG_ RearRightWheelSpeed : 40|12@1+ (0.125,0) [0|511.875] "km/h" AWD + SG_ RearLeftWheelSpeed : 52|12@1+ (0.125,0) [0|511.875] "km/h" AWD + +BO_ 608 ECU_Data1: 8 ECU + SG_ TorqueMin : 0|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU + SG_ Torque : 8|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU + SG_ TorqueTarget : 16|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU + SG_ CruiseEnabled : 25|1@1+ (1,0) [0|1] "yes/no" TCU + SG_ CruiseActive : 26|1@1+ (1,0) [0|1] "yes/no" TCU + SG_ TorqueMax : 40|8@1+ (0.390625,0) [0|99.609375] "%" ESP,TCU + +BO_ 640 ECU_Data2: 8 ECU + SG_ RPM : 32|8@1+ (32,0) [0|8160] "rpm" TCU + SG_ MAF : 40|8@1+ (5.447,0) [0|1388.985] "mg/TDC" TCU + SG_ IAT : 48|8@1- (0.75,-48) [-48|143.25] "C" TCU + SG_ MAP : 56|8@1+ (0.47058,0) [0|119.9979] "KPa" TCU + +BO_ 688 SAS_Data: 5 SAS + SG_ SAS_Angle : 0|16@1- (0.1,0) [-3276.8|3276.7] "deg" AWD,ECU,ESP,TCU + SG_ SAS_Speed : 16|8@1+ (4,0) [0|1016] "deg/s" ESP,TCU + SG_ SAS_Status : 24|8@1+ (1,0) [0|255] "" ESP,TCU + SG_ Msg_Count : 32|4@1+ (1,0) [0|15] "" ESP + SG_ Check_Sum : 36|4@1+ (1,0) [0|15] "" ECU,ESP + +BO_ 809 ECU_Data5: 8 ECU + SG_ ECT : 8|8@1- (0.75,-48) [-48|143.25] "C" AWD,ABS,ESP,TCU + SG_ BrakeActive : 32|2@1+ (1,0) [0|3] "yes/no" AWD,ABS,ESP,TCU + SG_ TPS : 40|8@1+ (0.47265625,-15) [-15|105.52734375] "%" AWD,ABS,ESP,TCU + +BO_ 1064 AWD_Data1: 8 AWD + SG_ ClutchDuty : 16|8@1+ (1,0) [0|100] "%" ABS,ESP + SG_ ClutchLocked : 44|1@1+ (1,0) [0|1] "yes/no" ABS,ESP + +BO_ 1065 AWD_Data2: 8 AWD + SG_ SteeringWheelPosition : 0|16@1+ (1,-600) [-600|600] "deg" ABS + SG_ FrontRightWheelSpeed : 16|8@1+ (1,0) [0|254] "km/h" ABS + SG_ FrontLeftWheelSpeed : 24|8@1+ (1,0) [0|254] "km/h" ABS + SG_ RearRightWheelSpeed : 32|8@1+ (1,0) [0|254] "km/h" ABS + SG_ RearLeftWheelSpeed : 40|8@1+ (1,0) [0|254] "km/h" ABS + +BO_ 1087 TCU_Data: 8 TCU + SG_ CurrentGear : 0|3@1+ (1,0) [0|7] "" ECU + SG_ GearSwitch : 3|1@1+ (1,0) [0|1] "yes/no" ECU + SG_ SelectorPosition : 8|4@1+ (1,0) [0|15] "" ECU + SG_ InputShaftSpeed : 40|16@1+ (0.25,0) [0|16383.5] "rpm" ECU + +BO_ 1349 ECU_Data6: 8 ECU + SG_ BatteryVoltage : 24|8@1+ (0.1015625,0) [0|25.8984375] "V" ABS,ESP + +BO_ 1408 ABS_WheelSpeed: 8 ABS + SG_ FrontRightWheelSpeed : 16|12@1+ (0.125,0) [0|511.875] "km/h" AWD + SG_ FrontLeftWheelSpeed : 28|12@1+ (0.125,0) [0|511.875] "km/h" AWD + SG_ RearRightWheelSpeed : 40|12@1+ (0.125,0) [0|511.875] "km/h" AWD + SG_ RearLeftWheelSpeed : 52|12@1+ (0.125,0) [0|511.875] "km/h" AWD + +BO_ 1695 ECU_Data7: 8 ECU + SG_ ECU_Temperature : 8|8@1- (1,-28) [-28|227] "C" TCU + +BO_ 1984 SAS_Calibration: 2 ESP + SG_ CCW : 0|4@1+ (1,0) [0|15] "" SAS + SG_ CID : 4|11@1+ (1,0) [0|2047] "" SAS + + + +VAL_ 1087 CurrentGear 7 "R" 0 "N" 1 "1" 2 "2" 3 "3" 4 "4" ; +VAL_ 1087 SelectorPosition 7 "R" 6 "N" 5 "D" 8 "M" 15 "P" ; + diff --git a/opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc b/opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc new file mode 100644 index 0000000000..34fe6b6460 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/luxgen_s5_2015.dbc @@ -0,0 +1,153 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 928 EPB_STATUS: 8 XXX + SG_ EPB_BRAKE : 16|1@1+ (1,0) [0|3] "" XXX + +BO_ 1104 SEATBELT_STATUS: 8 XXX + SG_ DRIVER_SEAT_BELT_ONOFF : 21|1@0+ (1,0) [0|3] "" XXX + +BO_ 1056 BODY_ECU_STATUS: 8 XXX + SG_ DOOR_RL_STATUS : 18|1@0+ (1,0) [0|255] "" XXX + SG_ DOOR_FL_STATUS : 13|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_FR_STATUS : 12|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_RR_STATUS : 19|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_BACK_DOOR_STATUS : 22|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_SIGNAL_STATUS : 10|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_SIGNAL_STATUS : 9|1@0+ (1,0) [0|1] "" XXX + +BO_ 832 GEAR_RPM_SPEED_STATUS: 8 XXX + SG_ TRANS_MODE : 7|5@1+ (1,0) [0|0] "" XXX + SG_ TRANS_GEAR_POS : 2|3@0+ (1,0) [0|1] "" XXX + SG_ ENGINE_RPM1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ENGINE_TEMP : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 821 THROTTLE_STATUS: 8 XXX + SG_ CRUSE_ONOFF : 2|1@0+ (1,0) [0|1] "on/off" XXX + SG_ CRUSE_ENABLED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ THROTTLE_PEDAL_POS : 32|8@1+ (1,0) [0|255] "" XXX + SG_ THROTTLE_POS : 24|8@1+ (1,0) [0|255] "" XXX + SG_ RPM : 48|8@1- (1,0) [0|65535] "" XXX + +BO_ 922 STEERING_ANGLE_STATUS: 8 XXX + SG_ STEER_ANGLE_9000 : 7|16@0- (1,0) [0|65535] "" XXX + +BO_ 906 WHEEL_SPEEDS: 8 XXX + SG_ SPEED_FR : 24|8@1+ (1,0) [0|255] "" XXX + SG_ ABS_UNDEF1 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ SPEED_FL : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 848 ABS_WHEELS_STATUS: 8 XXX + SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 15|8@0+ (1,0) [0|255] "" XXX + +BO_ 1402 DASH_STATUS: 8 XXX + SG_ CAR_SPEED : 32|8@1+ (1,0) [0|255] "" XXX + SG_ DASH_INFO2 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ DASH_INFO0 : 0|8@1+ (1,0) [0|255] "" XXX + SG_ DASH_INFO_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ DASH_INFO_3 : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 1306 _SPEEDX: 8 XXX + SG_ DASH_CAR_SPEED : 7|9@0+ (1,0) [0|255] "" XXX + +BO_ 1296 undefined: 8 XXX + +BO_ 790 ENGINE_DATA: 8 XXX + SG_ _X2 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 1313 undefined_2: 8 XXX + +BO_ 1312 __trigger_every_range: 8 XXX + SG_ __SIGNAL_every_interval : 4|1@0+ (1,0) [0|1] "" XXX + +BO_ 896 undefined_3: 8 XXX + SG_ NEW_SIGNAL_1 : 32|4@1+ (1,0) [0|15] "" XXX + +BO_ 809 undefined_4: 8 XXX + +BO_ 864 BREAK_TCS_STATUS: 8 XXX + SG_ SPEED3 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ TCS_ON_FF : 45|1@0+ (1,0) [0|1] "" XXX + SG_ XXXX1 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_PRSSED : 42|1@0+ (1,0) [0|1] "" XXX + +BO_ 842 undefined_5: 8 XXX + +BO_ 880 WHEEL_RPM_STATUS: 8 XXX + SG_ WHEEL_RL_SPEED : 23|16@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_FR_SPEED : 39|16@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_FL_SPEED : 55|16@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_RR_SPEED : 7|16@0- (1,0) [0|255] "" XXX + +BO_ 1040 CONSOLE_STATUS: 8 XXX + SG_ LEFT_SIGNAL_SWITCH : 1|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_SIGNAL_SWITCH : 2|1@0+ (1,0) [0|1] "" XXX + SG_ HEAD_LIGHT_HANDLE_SWITCH : 3|1@0+ (1,0) [0|1] "" XXX + SG_ HID_LIGHT_SWITCH : 4|1@0+ (1,0) [0|1] "" XXX + SG_ YELLOW_WARN_TEMP_TRIGGER : 5|1@0+ (1,0) [0|1] "" XXX + SG_ HID_LIGHT_HANDLE_SWITCH : 6|1@0+ (1,0) [0|1] "" XXX + SG_ MIX_MODE : 7|1@0+ (1,0) [0|1] "" XXX + SG_ slider_rain_bar : 13|1@0+ (1,0) [0|1] "" XXX + SG_ temp_slider_rain_bar : 15|1@0+ (1,0) [0|1] "" XXX + SG_ temp_water_push : 11|1@0+ (1,0) [0|1] "" XXX + +BO_ 1120 HAVC_STATUS: 8 XXX + SG_ HAVC_TEMP : 32|8@1+ (1,0) [0|255] "" XXX + + +CM_ SG_ 1104 DRIVER_SEAT_BELT_ONOFF "0 - on , 1 = off"; +CM_ SG_ 1056 DOOR_RL_STATUS "04 - RL - open"; +CM_ SG_ 1056 DOOR_FL_STATUS "28 - FL open , 38 - FR"; +CM_ SG_ 1056 RIGHT_SIGNAL_STATUS "R,L shows at same time means hazard"; +CM_ SG_ 832 TRANS_MODE "AT - 85 / MT - 8D"; +CM_ SG_ 832 TRANS_GEAR_POS "R-7 , 0 - N"; +CM_ SG_ 821 CRUSE_ONOFF "Cruse Switch"; +CM_ SG_ 821 CRUSE_ENABLED "Cruse enabled"; +CM_ SG_ 821 THROTTLE_PEDAL_POS "Real Pedal Pos"; +CM_ SG_ 821 THROTTLE_POS "Throttle Pos for Cruse Mode"; +CM_ SG_ 906 ABS_UNDEF1 "ABS force"; +CM_ SG_ 906 SPEED_FL "used for car speed in dash board"; +CM_ SG_ 864 TCS_ON_FF "ON = 1, OFF =0"; diff --git a/opendbc_repo/opendbc/dbc/mazda_2017.dbc b/opendbc_repo/opendbc/dbc/mazda_2017.dbc new file mode 100644 index 0000000000..d2bb77b351 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/mazda_2017.dbc @@ -0,0 +1,791 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 117 STEER_RELATED: 8 XXX + SG_ CTR : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 48|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 49|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 50|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 54|4@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_3 : 55|1@0+ (1,0) [0|63] "" XXX + SG_ STEER_ANGLE_2 : 39|16@0+ (0.1,-1800) [0|131071] "" XXX + SG_ STEER_TORQUE : 19|12@0+ (1,-2000) [0|255] "" XXX + +BO_ 118 RPM_RELATED: 8 XXX + SG_ CTR : 7|8@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_2 : 19|12@0+ (1,0) [0|4095] "" XXX + +BO_ 514 ENGINE_DATA: 8 XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|127] "" XXX + SG_ RPM : 7|16@0+ (0.25,0) [0|8500] "rpm" XXX + SG_ SPEED : 23|16@0+ (0.01,0) [0|32767] "kph" XXX + SG_ PEDAL_GAS : 39|12@0+ (1,0) [0|255] "%" XXX + +BO_ 357 PEDALS: 8 XXX + SG_ NEW_SIGNAL_6 : 31|4@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 8|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_OFF : 2|1@1+ (1,0) [0|15] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX + SG_ STANDSTILL : 26|1@0+ (1,0) [0|16777215] "" XXX + SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|3] "" XXX + SG_ BRAKE_ON : 4|1@0+ (1,0) [0|1] "" XXX + SG_ NO_BRAKE : 6|1@0+ (1,0) [0|7] "" XXX + SG_ BRAKE_ON_2 : 7|1@1+ (1,0) [0|255] "" XXX + SG_ NO_BRAKE_2 : 15|1@0+ (1,0) [0|7] "" XXX + SG_ GEAR : 48|5@1+ (1,0) [0|255] "" XXX + +BO_ 533 WHEEL_SPEEDS: 8 XXX + SG_ FL : 7|16@0+ (0.01,-100) [0|16383] "kph" XXX + SG_ FR : 23|16@0+ (0.01,-100) [0|65535] "kph" XXX + SG_ RL : 39|16@0+ (0.01,-100) [0|15] "kph" XXX + SG_ RR : 55|16@0+ (0.01,-100) [0|65535] "kph" XXX + +BO_ 134 STEER2: 8 XXX + SG_ CTR : 22|4@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_4 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ CTR_2 : 28|3@1+ (1,0) [0|7] "" XXX + SG_ STEER_ANGLE_ROUGH : 26|11@0+ (1,-1000) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 18|3@0+ (1,0) [0|1] "" XXX + SG_ STEER_ANGLE : 7|16@0+ (0.1,-1600) [-500|500] "deg" XXX + SG_ NEW_SIGNAL_1 : 63|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|7] "" XXX + +BO_ 576 STEER_TORQUE: 8 XXX + SG_ NEW_SIGNAL_1 : 23|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 47|1@0+ (1,0) [0|1] "" XXX + SG_ SENSOR1 : 39|8@0+ (1,-128) [0|127] "" XXX + SG_ STEER_TORQUE_MOTOR : 46|15@0- (0.1,0) [-3000|3000] "tbd" XXX + SG_ NEW_SIGNAL_2 : 62|4@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_4 : 15|8@0+ (1,0) [0|127] "" XXX + SG_ STEER_TORQUE_SENSOR : 7|8@0+ (1,-127) [-85|85] "" XXX + +BO_ 577 STEER_RATE: 8 XXX + SG_ STEER_ANGLE_RATE : 23|16@0+ (0.25,-8192) [0|1] "deg/s" XXX + SG_ CTR : 7|4@0+ (1,0) [0|15] "" XXX + SG_ LKAS_REQUEST : 3|12@0+ (1,-2048) [0|15] "" XXX + SG_ LKAS_EFFECTIVE : 39|12@0+ (1,-2048) [0|255] "" XXX + SG_ HANDS_OFF_5_SECONDS : 51|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_BLOCK : 50|1@1+ (1,0) [0|3] "" XXX + SG_ LKAS_TRACK_STATE : 52|1@0+ (1,0) [0|3] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 582 CAM_LANEMAYBE: 8 XXX + SG_ NEW_SIGNAL_4 : 40|8@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_1 : 31|16@0- (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 55|16@0+ (1,0) [0|65535] "" XXX + SG_ CTR : 7|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_3 : 15|16@0+ (1,0) [0|65535] "" XXX + +BO_ 541 CAM_EMPTY: 8 XXX + +BO_ 605 CAM_PEDESTRIAN: 8 XXX + SG_ CTR : 17|4@0+ (1,0) [0|255] "" XXX + SG_ AEB_NOT_ENGAGED : 13|1@0+ (1,0) [0|1] "" XXX + SG_ PED_WARNING : 9|1@0+ (1,0) [0|255] "" XXX + SG_ PED_BRAKE : 3|3@0+ (1,0) [0|7] "" XXX + SG_ RST_CTR : 23|6@0+ (1,0) [0|63] "" XXX + SG_ S1 : 29|4@0+ (1,0) [0|31] "" XXX + SG_ BRAKE_WARNING : 25|1@0+ (1,0) [0|1] "" XXX + +BO_ 578 CAM_LANETRACK: 8 XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ ZERO : 53|6@0+ (1,0) [0|63] "" XXX + SG_ CTR : 7|4@0+ (1,0) [0|15] "" XXX + SG_ LINE2 : 9|10@0+ (1,-686) [0|255] "" XXX + SG_ LANE_CURVE : 31|8@0+ (1,-127) [0|255] "" XXX + SG_ SIG1 : 39|8@0+ (1,-128) [0|255] "" XXX + SG_ SIG2 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ SIG3 : 55|2@0+ (1,0) [0|3] "" XXX + SG_ LINE1 : 3|10@0+ (1,-686) [0|1] "" XXX + +BO_ 579 CAM_LKAS: 8 XXX + SG_ CTR : 7|4@0+ (1,0) [0|15] "" XXX + SG_ ERR_BIT_1 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX + SG_ LINE_NOT_VISIBLE : 19|1@0+ (1,0) [0|1] "" XXX + SG_ BIT_1 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ LDW : 23|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_REQUEST : 3|12@0+ (1,-2048) [0|2048] "" XXX + SG_ ERR_BIT_2 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ ANGLE_ENABLED : 52|1@0+ (1,0) [0|1] "" XXX + SG_ STEERING_ANGLE : 33|12@0+ (1,-2048) [-2048|2047] "" XXX + +BO_ 580 CAM_DISTANCE: 8 XXX + SG_ S1 : 0|8@1+ (1,0) [0|127] "" XXX + SG_ S2 : 15|8@0+ (1,0) [0|1] "" XXX + SG_ S3 : 16|8@1+ (1,0) [0|3] "" XXX + SG_ S4 : 24|8@1+ (1,0) [0|31] "" XXX + SG_ S5 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ DISTANCE : 47|8@0+ (1,0) [0|65535] "" XXX + SG_ S6 : 55|16@0+ (1,0) [0|255] "" XXX + +BO_ 581 CAM_IDK3: 8 XXX + SG_ S1 : 0|8@1+ (1,0) [0|15] "" XXX + SG_ S2 : 8|6@1+ (1,0) [0|255] "" XXX + SG_ S3 : 15|2@0+ (1,0) [0|3] "" XXX + SG_ S4 : 16|8@1+ (1,0) [0|15] "" XXX + SG_ S5 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ S6 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ S7 : 40|8@1+ (1,0) [0|3] "" XXX + SG_ S8 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ S9 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 863 CAM_TRAFFIC_SIGNS: 8 XXX + SG_ NEW_SIGNAL_3 : 55|1@0+ (1,0) [0|127] "" XXX + SG_ FORWARD_COLLISION : 40|8@1+ (1,0) [0|7] "" XXX + SG_ SPEED_SIGN : 4|7@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 52|5@0+ (1,0) [0|31] "" XXX + SG_ SPEED_SIGN_CAM : 32|1@0+ (1,0) [0|32767] "" XXX + SG_ SPEED_SIGN_ON : 12|1@0+ (1,0) [0|3] "" XXX + SG_ STOP_SIGN : 31|4@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 33|1@0+ (1,0) [0|1] "" XXX + +BO_ 1157 CAM_SETTINGS: 8 XXX + SG_ SBS_WARNING_DISTANCE : 25|2@0+ (1,0) [0|127] "" XXX + SG_ SBS_SCBC : 28|2@0+ (1,0) [0|7] "" XXX + SG_ LKAS_ASSIT_TIMING : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LKAS_SENSETIVITY : 10|1@0+ (1,0) [0|1] "" XXX + SG_ ILKAS_NTERVENTION_ON2 : 17|1@0+ (1,0) [0|255] "" XXX + SG_ LANEE_DEPARTURE_ALERT : 16|2@0+ (1,0) [0|1] "" XXX + SG_ LKAS_INERVENTION_ON1 : 15|1@0+ (1,0) [0|1] "" XXX + SG_ WARNING : 11|1@0+ (1,0) [0|1] "" XXX + SG_ BIT1 : 12|1@0+ (1,0) [0|7] "" XXX + SG_ BIT2 : 14|1@0+ (1,0) [0|1] "" XXX + SG_ BIT3 : 18|1@0+ (1,0) [0|1] "" XXX + +BO_ 1160 CAM_Empty3: 8 XXX + SG_ NEW_SIGNAL_1 : 47|24@0+ (1,0) [0|16777215] "" XXX + +BO_ 1088 CAM_LANEINFO: 8 XXX + SG_ BIT3 : 62|1@0+ (1,0) [0|3] "" XXX + SG_ HANDS_ON_STEER_WARN_2 : 59|1@0+ (1,0) [0|1] "" XXX + SG_ HANDS_ON_STEER_WARN : 56|1@0+ (1,0) [0|3] "" XXX + SG_ S1_HBEAM : 54|1@0+ (1,0) [0|31] "" XXX + SG_ S1 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ HANDS_WARN_3_BITS : 51|3@0+ (1,0) [0|7] "" XXX + SG_ ERR_BIT : 40|1@0+ (1,0) [0|1] "" XXX + SG_ NO_ERR_BIT : 14|1@0+ (1,0) [0|1] "" XXX + SG_ BIT2 : 13|1@0+ (1,0) [0|15] "" XXX + SG_ LANE_LINES : 10|3@0+ (1,0) [0|3] "" XXX + SG_ BIT1 : 6|1@0+ (1,0) [0|65535] "" XXX + SG_ LINE_NOT_VISIBLE : 1|1@0+ (1,0) [0|1] "" XXX + SG_ LINE_VISIBLE : 0|1@0+ (1,0) [0|3] "" XXX + SG_ LDW_WARN_RL : 58|1@0+ (1,0) [0|1] "" XXX + SG_ LDW_WARN_LL : 57|1@0+ (1,0) [0|1] "" XXX + SG_ TJA : 38|3@0+ (1,0) [0|7] "" XXX + SG_ TJA_TRANSITION : 27|2@0+ (1,0) [0|63] "" XXX + +BO_ 1479 NEW_MSG_470: 8 XXX + +BO_ 1456 NEW_MSG_300: 8 XXX + +BO_ 1446 NEW_MSG_a600: 8 XXX + +BO_ 1416 MSG_18: 8 XXX + +BO_ 1086 DOORS: 8 XXX + SG_ LEFTGATE : 32|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 53|1@0+ (1,0) [0|255] "" XXX + SG_ KEYFOB_HORN : 2|1@0+ (1,0) [0|1] "" XXX + SG_ KEYFOB_LOCK : 3|1@0+ (1,0) [0|1] "" XXX + SG_ KEYFOB_UNLOCK : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CTR1 : 8|4@1+ (1,0) [0|3] "" XXX + SG_ CTR2 : 16|4@1+ (1,0) [0|15] "" XXX + SG_ BR : 34|1@0+ (1,0) [0|1] "" XXX + SG_ BL : 35|1@0+ (1,0) [0|1] "" XXX + SG_ FR : 36|1@0+ (1,0) [0|1] "" XXX + SG_ FL : 37|1@0+ (1,0) [0|255] "" XXX + SG_ DOORS_UNLOCKED : 30|1@0+ (1,0) [0|255] "" XXX + +BO_ 977 TWO_STATES: 8 XXX + SG_ NEW_SIGNAL_1 : 50|1@1+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_2 : 56|4@1+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_3 : 28|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 24|4@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 36|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 47|8@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 51|1@0+ (1,0) [0|1] "" XXX + +BO_ 1085 MSG_12: 8 XXX + SG_ NEW_SIGNAL_3 : 36|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 16|8@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 48|8@1+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 31|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 24|1@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_6 : 40|3@1+ (1,0) [0|7] "" XXX + +BO_ 159 MSG_11: 8 XXX + SG_ NEW_SIGNAL_1 : 50|4@1+ (1,0) [0|15] "" XXX + SG_ INCREASEING : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 1278 NEW_MSG_3: 8 XXX + SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ MILAGE_MAYBE : 7|16@0+ (1,0) [0|255] "" XXX + +BO_ 1277 NEW_MSG_10: 8 XXX + SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ counter : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 1275 2017_5: 8 XXX + SG_ counter : 4|5@0+ (1,0) [0|255] "" XXX + +BO_ 1274 NEW_MSG_12: 8 XXX + SG_ NEW_SIGNAL_1 : 24|4@1+ (1,0) [0|15] "" XXX + SG_ CTR : 55|4@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_2 : 35|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 32|3@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_4 : 48|4@1+ (1,0) [0|7] "" XXX + +BO_ 1180 last_byte_roughRPM: 8 XXX + SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1078 HVAC: 8 XXX + SG_ NEW_SIGNAL_1 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 8|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 23|1@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 56|5@0+ (1,0) [0|255] "" XXX + +BO_ 1056 CHECK_AND_TEMP: 8 XXX + SG_ NEW_SIGNAL_1 : 29|6@0+ (1,0) [0|255] "" XXX + SG_ counter_or_GEAR : 15|8@0+ (1,0) [0|255] "" XXX + SG_ CTR : 23|8@0+ (1,0) [0|255] "" XXX + SG_ STANDSTILL : 32|1@0+ (1,0) [0|255] "" XXX + SG_ COOLANT_TEMP : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LOW_ENGINE_OIL_PRESSURE : 43|1@0+ (1,0) [0|1] "" XXX + SG_ CHECK_FUEL_CAP : 40|1@0+ (1,0) [0|1] "" XXX + SG_ CHARGING_SYSTEM_MALFUNCTION : 38|1@0+ (1,0) [0|1] "" XXX + SG_ OUTDOOR_TEMP : 63|8@0+ (0.25,-63) [0|255] "cel" XXX + +BO_ 1045 TRACTION: 8 XXX + SG_ NEW_SIGNAL_2 : 20|1@0+ (1,0) [0|3] "" XXX + SG_ CTR2 : 19|4@0+ (1,0) [0|31] "" XXX + SG_ CTR3 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ IS_MOVING : 12|1@0+ (1,0) [0|3] "" XXX + SG_ CTR1 : 53|6@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 54|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE : 55|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_WARNING : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ABS_MALFUNCTION : 1|2@0+ (1,0) [0|3] "" XXX + SG_ DSC_OFF : 3|1@0+ (1,0) [0|1] "" XXX + SG_ TCS_DCS_MALFUNCTION : 6|2@0+ (1,0) [0|3] "" XXX + SG_ LOUD_BEEP : 28|1@0+ (1,0) [0|1] "" XXX + SG_ TPMS_WARNING_DOUBLE_BLINK : 31|1@0+ (1,0) [0|1] "" XXX + +BO_ 1034 MSG_07: 8 XXX + SG_ NEW_SIGNAL_1 : 6|3@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 0|4@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_3 : 15|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_9 : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 870 RADAR_366_STATIC: 8 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 867 RADAR_363: 8 XXX + SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX + SG_ STATIC_4 : 43|16@0+ (1,0) [0|255] "" XXX + SG_ FLIPPY_1 : 31|3@0+ (1,0) [0|7] "" XXX + SG_ FLIPPY_2 : 47|1@0+ (1,0) [0|15] "" XXX + SG_ FLIPPY_4 : 44|1@0+ (1,0) [0|3] "" XXX + SG_ FLIPPY_3 : 46|1@0+ (1,0) [0|3] "" XXX + SG_ CURVE_1 : 7|12@0+ (1,0) [0|255] "" XXX + SG_ CURVE_2 : 11|12@0+ (1,0) [0|255] "" XXX + SG_ CURVE_3 : 28|13@0+ (1,0) [0|255] "" XXX + +BO_ 130 STEER: 8 XXX + SG_ NEW_SIGNAL_5 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ CTR : 47|4@0+ (1,0) [0|255] "" XXX + SG_ STEER_ANGLE : 23|16@0+ (0.05,-1600) [500|-500] "deg" XXX + SG_ CHKSUM_MAYBE : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 120 BRAKE: 8 XXX + SG_ CTR : 55|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_PRESSURE : 39|8@0+ (1,0) [0|255] "" XXX + SG_ VEHICLE_ACC_X : 5|13@0+ (0.01,-40) [-40|40] "m/s^2" XXX + SG_ VEHICLE_ACC_Y : 8|13@0+ (0.001,-4.096) [-4.096|4.096] "m/s^2" XXX + +BO_ 304 GEAR_RELATED: 8 XXX + SG_ NEW_SIGNAL_1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 865 RADAR_DISTANCE: 8 XXX + SG_ CTR : 56|4@1+ (1,0) [0|15] "" XXX + SG_ STATIC : 36|3@0+ (1,0) [0|31] "" XXX + SG_ DISTANCE_RELATED : 33|4@0+ (1,0) [0|3] "" XXX + SG_ SPEED_INVERSE : 43|12@0- (-0.225,0) [0|255] "kph" XXX + SG_ DISTANCE_LEAD : 7|24@0+ (1,0) [0|31] "" XXX + SG_ RELATIVE_VEL_LEAD : 31|11@0- (1,0) [0|255] "" XXX + +BO_ 836 NEW_MSG_19: 8 XXX + SG_ CTR : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CTR2 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 832 SEATBELT: 8 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ PASSENGER_SEATBELT : 26|1@1+ (1,0) [0|7] "" XXX + SG_ CTR1 : 15|4@0+ (1,0) [0|15] "" XXX + SG_ CTR2 : 23|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 8|4@1+ (1,0) [0|3] "" XXX + SG_ DRIVER_SEATBELT : 27|1@0+ (1,0) [0|1] "" XXX + +BO_ 866 RADAR_TURN: 8 XXX + SG_ CTR : 59|4@0+ (1,0) [0|15] "" XXX + SG_ STEER_ANGLE : 43|12@0+ (-1,2048) [0|7] "" XXX + SG_ STATIC_2 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ CURVE_1 : 7|12@0+ (1,0) [0|131071] "" XXX + SG_ CURVE_2 : 11|12@0- (1,0) [0|127] "" XXX + SG_ FLIPPY_1 : 44|1@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 34|3@1+ (1,0) [0|3] "" XXX + SG_ CURVE_3 : 31|11@0- (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_1 : 33|4@0+ (1,0) [0|3] "" XXX + +BO_ 158 MSG_05: 8 XXX + SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 157 CRZ_BTNS: 8 XXX + SG_ BIT1 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ BIT2 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ BIT3 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ SET_P_INV : 21|1@0+ (1,0) [0|1] "" XXX + SG_ CAN_OFF_INV : 17|1@0+ (1,0) [0|1] "" XXX + SG_ CAN_OFF : 0|1@0+ (1,0) [0|1] "" XXX + SG_ SET_M_INV : 22|1@0+ (1,0) [0|1] "" XXX + SG_ SET_M : 5|1@0+ (1,0) [0|1] "" XXX + SG_ SET_P : 4|1@0+ (1,0) [0|1] "" XXX + SG_ RES_INV : 19|1@0+ (1,0) [0|1] "" XXX + SG_ RES : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DISTANCE_LESS : 7|1@0+ (1,0) [0|1] "" XXX + SG_ DISTANCE_LESS_INV : 8|1@0+ (1,0) [0|1] "" XXX + SG_ DISTANCE_MORE : 6|1@0+ (1,0) [0|1] "" XXX + SG_ DISTANCE_MORE_INV : 23|1@0+ (1,0) [0|1] "" XXX + SG_ MODE_Y : 13|1@0+ (1,0) [0|1] "" XXX + SG_ MODE_X : 14|1@0+ (1,0) [0|1] "" XXX + SG_ MODE_Y_INV : 30|1@0+ (1,0) [0|1] "" XXX + SG_ MODE_X_INV : 31|1@0+ (1,0) [0|1] "" XXX + SG_ CTR : 29|4@0+ (1,0) [0|15] "" XXX + +BO_ 154 BLINK_INFO: 8 XXX + SG_ LEFT_BLINK : 18|1@1+ (1,0) [0|3] "" XXX + SG_ RIGHT_BLINK : 19|1@0+ (1,0) [0|255] "" XXX + SG_ REAR_WIPER_ON : 0|1@0+ (1,0) [0|1] "" XXX + SG_ WIPER_LO : 33|1@1+ (1,0) [0|31] "" XXX + SG_ WIPER_HI : 34|1@0+ (1,0) [0|1] "" XXX + SG_ LOW_BEAMS : 5|2@0+ (1,0) [0|3] "" XXX + SG_ HIGH_BEAMS : 7|2@0+ (1,0) [0|3] "" XXX + SG_ LBEAM1 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ LBEAM2 : 50|1@0+ (1,0) [0|1] "" XXX + SG_ LBEAM3 : 60|1@0+ (1,0) [0|1] "" XXX + +BO_ 145 TURN_SWITCH: 8 XXX + SG_ HAZARD : 10|1@0+ (1,0) [0|1] "" XXX + SG_ TURN_RIGHT_SWITCH : 12|1@0+ (1,0) [0|3] "" XXX + SG_ TURN_LEFT_SWITCH : 13|1@0+ (1,0) [0|255] "" XXX + SG_ CTR : 27|4@0+ (1,0) [0|255] "" XXX + SG_ CHKSUM : 39|8@0+ (1,0) [0|15] "" XXX + +BO_ 80 MSG_04: 8 XXX + SG_ NEW_SIGNAL_1 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ SIGNAL : 24|1@0+ (1,0) [0|1] "" XXX + +BO_ 978 MSG_03: 8 XXX + SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ CTR : 1|2@0+ (1,0) [0|255] "" XXX + +BO_ 607 NEW_MSG_25: 8 XXX + +BO_ 1115 MSG_02: 8 XXX + SG_ NEW_SIGNAL_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 47|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 63|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ CTR : 2|3@0+ (1,0) [0|255] "" XXX + +BO_ 1067 NEW_MSG_27: 8 XXX + SG_ NEW_SIGNAL_2 : 3|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 11|1@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_7 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_9 : 8|1@0+ (1,0) [0|1] "" XXX + +BO_ 358 NEW_MSG_28: 8 XXX + +BO_ 608 NEW_MSG_29: 8 XXX + SG_ NEW_SIGNAL_1 : 8|5@1+ (1,0) [0|7] "" XXX + +BO_ 606 SPEED_TBD: 8 XXX + SG_ SPEED_TBD : 7|12@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 23|12@0- (1,0) [0|65535] "" XXX + +BO_ 552 GEAR: 8 XXX + SG_ NEW_SIGNAL_3 : 11|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 26|3@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 31|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_7 : 39|1@0+ (1,0) [0|255] "" XXX + SG_ MORE_GEAR : 7|4@0+ (1,0) [0|15] "" XXX + SG_ GEAR : 2|3@0+ (1,0) [0|7] "" XXX + SG_ GEAR_BOX : 36|4@0+ (1,0) [0|15] "" XXX + +BO_ 543 CRZ_EVENTS: 8 XXX + SG_ CTR : 51|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_21 : 23|1@0+ (1,0) [0|15] "" XXX + SG_ GAS_MAYBE : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ACCEL_CMD : 46|8@0- (1,0) [0|15] "" XXX + SG_ CRUISE_ACTIVE_CAR_MOVING : 16|1@0+ (1,0) [0|1] "" XXX + SG_ PLUS_ONE_CRZ : 17|1@0+ (1,0) [0|255] "" XXX + SG_ CRZ_STARTED : 18|1@0+ (1,0) [0|1] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX + SG_ PLUS_ONE_CRZ_2 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ ACCEL_CMD_LOW_RES : 29|8@0- (1,0) [0|255] "" XXX + SG_ CRZ_SPEED : 7|16@0+ (0.005,-0.5) [0|328] "kph" XXX + +BO_ 542 NEW_MSG_33: 8 XXX + SG_ CTR : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CTR2 : 56|4@1+ (1,0) [0|15] "" XXX + +BO_ 868 RADAR_364: 8 XXX + SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 7|12@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 11|12@0- (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 27|12@0- (1,0) [0|255] "" XXX + SG_ FLIPPERS_1 : 31|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 44|1@1+ (1,0) [0|3] "" XXX + SG_ FLIPPY_1 : 46|1@0+ (1,0) [0|3] "" XXX + SG_ STATIC_1 : 47|1@0+ (1,0) [0|15] "" XXX + SG_ STATIC_2 : 43|16@0+ (1,0) [0|7] "" XXX + +BO_ 869 RADAR_365: 8 XXX + SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|6@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_1 : 7|14@0+ (1,0) [0|65535] "" XXX + SG_ RELATED_1 : 9|18@0+ (1,0) [0|3] "" XXX + SG_ RELATED_2 : 33|18@0+ (1,0) [0|15] "" XXX + SG_ STATIC : 61|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 63|2@0+ (1,0) [0|15] "" XXX + +BO_ 1114 NEW_MSG_4: 8 XXX + +BO_ 535 CURVE_CTRS: 8 XXX + SG_ CTR_A_1 : 4|3@0+ (1,0) [0|31] "" XXX + SG_ CTR_A_2 : 7|3@0+ (1,0) [0|255] "" XXX + SG_ CTR_B_1 : 12|3@0+ (1,0) [0|7] "" XXX + SG_ CTR_B_2 : 15|3@0+ (1,0) [0|7] "" XXX + SG_ CTR_C_1 : 20|3@0+ (1,0) [0|7] "" XXX + SG_ CTR_C_2 : 23|3@0+ (1,0) [0|255] "" XXX + SG_ CTR_D_2 : 31|3@0+ (1,0) [0|7] "" XXX + SG_ CTR_D_1 : 28|3@0+ (1,0) [0|7] "" XXX + SG_ SPEED : 39|16@0+ (0.01,0) [0|7] "kph" XXX + SG_ CTR : 55|8@0+ (1,0) [0|255] "" XXX + SG_ CHK_MAYBE : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 17|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 25|1@0+ (1,0) [0|1] "" XXX + SG_ SEATBELT_MAYBE : 8|1@0+ (1,0) [0|1] "" XXX + SG_ NO_SEATBELT_MAYBE : 16|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 9|1@0+ (1,0) [0|1] "" XXX + +BO_ 540 CRZ_CTRL: 8 XXX + SG_ NEW_SIGNAL_6 : 10|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_9 : 31|1@0+ (1,0) [0|255] "" XXX + SG_ ACC_GAS_MAYBE2 : 29|1@0+ (1,0) [0|1] "" XXX + SG_ HANDS_OFF_STEERING : 48|1@0+ (1,0) [0|1] "" XXX + SG_ HANDS_ON_STEER_WARN : 59|4@0+ (1,0) [0|255] "" XXX + SG_ CRZ_ACTIVE : 3|1@0+ (1,0) [0|1] "" XXX + SG_ CRZ_AVAILABLE : 17|1@0+ (1,0) [0|255] "" XXX + SG_ DISTANCE_SETTING : 20|3@0+ (1,0) [0|7] "" XXX + SG_ MSG_1_INV : 1|1@0+ (1,0) [0|1] "" XXX + SG_ MSG_1_COPY : 9|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_GAS_MAYBE : 23|1@0+ (1,0) [0|31] "" XXX + SG_ ACC_ACTIVE_2 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_10 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ MSG_1 : 0|1@0+ (1,0) [0|3] "" XXX + SG_ 5_SEC_DISABLE_TIMER : 45|3@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_3 : 13|1@0+ (1,0) [0|3] "" XXX + SG_ MSG_1_INV_COPY : 8|1@0+ (1,0) [0|7] "" XXX + SG_ RADAR_HAS_LEAD : 23|1@0+ (1,0) [0|1] "" XXX + SG_ RADAR_LEAD_RELATIVE_DISTANCE : 31|3@0+ (1,0) [0|5] "" XXX + +BO_ 539 CRZ_INFO: 8 XXX + SG_ CTR1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ ACC_ACTIVE : 33|1@0+ (1,0) [0|1] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 47|1@0+ (1,0) [0|255] "" XXX + SG_ ACC_SET_ALLOWED : 34|1@0+ (1,0) [0|1] "" XXX + SG_ CRZ_ENDED : 36|1@0+ (1,0) [0|255] "" XXX + SG_ ACCEL_CMD : 17|13@0+ (1,-4096) [0|1] "" XXX + SG_ STATIC_1 : 15|11@0+ (1,0) [0|16383] "" XXX + SG_ STATIC_2 : 18|3@1+ (1,0) [0|3] "" XXX + SG_ ERROR_STATUS : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 121 EPB: 8 XXX + SG_ NEW_SIGNAL_1 : 4|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 25|2@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ CTR : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 41|2@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_9 : 47|1@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_10 : 46|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_11 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ EPB_ACTIVE : 29|1@0+ (1,0) [0|15] "" XXX + +BO_ 1070 2017_1: 8 XXX + +BO_ 1183 2017_2: 8 XXX + +BO_ 1243 2017_3: 8 XXX + SG_ NEW_SIGNAL_1 : 7|64@0+ (1,0) [0|18446744073709552000] "" XXX + +BO_ 1269 MSG_2017_4: 8 XXX + SG_ NEW_SIGNAL_1 : 55|16@0+ (1,0) [0|18446744073709552000] "" XXX + +BO_ 1178 2017_6: 8 XXX + SG_ NEW_SIGNAL_1 : 7|64@0+ (1,0) [0|18446744073709552000] "" XXX + +BO_ 1179 2017_7: 8 XXX + SG_ NEW_SIGNAL_1 : 7|64@0+ (1,0) [0|18446744073709552000] "" XXX + +BO_ 1435 2017_8: 8 XXX + +BO_ 253 GAS: 8 XXX + SG_ NEW_SIGNAL_1 : 16|1@0+ (1,0) [0|65535] "" XXX + SG_ CTR : 23|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 41|1@0+ (1,0) [0|255] "" XXX + SG_ CRZ_NOT_ACTIVE : 61|1@0+ (1,0) [0|255] "" XXX + SG_ GAS_CMD : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 359 MORE_GAS: 8 XXX + SG_ NEW_SIGNAL_1 : 15|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ CTR : 31|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 36|5@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 38|1@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 47|4@0+ (1,0) [0|255] "" XXX + +BO_ 512 NEW_MSG_30: 8 XXX + SG_ NEW_SIGNAL_1 : 6|7@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 23|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 22|7@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_6 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 38|7@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_9 : 40|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_10 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ CTR : 51|3@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_11 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 515 MSG_01: 8 XXX + SG_ CTR : 39|4@0+ (1,0) [0|65535] "" XXX + SG_ CHKSUM : 47|8@0+ (1,0) [0|255] "" XXX + SG_ START1 : 6|1@0+ (1,0) [0|1] "" XXX + SG_ START2 : 28|5@0+ (1,0) [0|255] "" XXX + +BO_ 529 NEW_MSG_36: 8 XXX + SG_ NEW_SIGNAL_1 : 22|5@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 32|4@1+ (1,0) [0|3] "" XXX + SG_ CTR : 39|4@0+ (1,0) [0|255] "" XXX + SG_ CTR_2 : 47|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 40|4@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 53|1@0+ (1,0) [0|255] "" XXX + +BO_ 1242 NEW_MSG_37: 8 XXX + +BO_ 1266 MSG_09: 8 XXX + SG_ NEW_SIGNAL_1 : 20|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 19|4@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 31|1@0+ (1,0) [0|255] "" XXX + +BO_ 976 MSG_15: 8 XXX + SG_ NEW_SIGNAL_1 : 55|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 61|6@0+ (1,0) [0|1] "" XXX + +BO_ 155 MSG_14: 8 XXX + +BO_ 1267 MSG_10: 8 XXX + SG_ NEW_SIGNAL_1 : 40|1@0+ (1,0) [0|16777215] "" XXX + SG_ NEW_SIGNAL_2 : 42|1@0+ (1,0) [0|1] "" XXX + +BO_ 305 NEW_MSG_6: 8 XXX + SG_ NEW_SIGNAL_1 : 8|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 9|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 10|1@0+ (1,0) [0|1] "" XXX + +BO_ 1238 TEMPERATURE: 8 XXX + SG_ TEMPERATURE_MAYBE : 47|8@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1087 NEW_MSG_1: 8 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 1143 BSM: 8 XXX + SG_ BSM_OFF : 0|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_BS_3 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ STANDSTILL : 8|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_BS_STATUS : 13|2@0+ (1,0) [0|3] "" XXX + SG_ RIGHT_BS_STATUS : 15|2@0+ (1,0) [0|3] "" XXX + SG_ LEFT_BS3 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_BS4 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_BS_SIDE : 36|1@0+ (1,0) [0|1] "" XXX + SG_ IS_MOVING : 9|1@0+ (1,0) [0|1] "" XXX + SG_ LEFT_BS_BEHIND : 46|2@1+ (1,0) [0|16777215] "" XXX + SG_ RIGHT_BS_DISTANCE : 35|3@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ REAR_CT_ALERT : 23|5@0+ (1,0) [0|63] "" XXX + +BO_ 480 ACCEL_TEST: 8 XXX + SG_ ACCEL_COMMAND : 7|32@0- (1,0) [-2147483647|2147483647] "" XXX + SG_ ENABLED : 32|1@0+ (1,0) [0|1] "" XXX + SG_ STARTING : 40|1@0+ (1,0) [0|1] "" XXX + SG_ STOPPING : 48|1@0+ (1,0) [0|1] "" XXX + +BO_ 1361 KEY_POSITION: 8 XXX + +BO_ 1283 KEY_POSITION2: 8 XXX + +BO_ 628 MSG_06: 8 XXX + +BO_ 1154 MSG_08: 8 XXX + +BO_ 1139 MSG_13: 8 XXX + +BO_ 1270 MSG_16: 8 XXX + +BO_ 1272 MSG_17: 8 XXX + +BO_ 1425 MSG_19: 8 XXX + +BO_ 70 MOB1: 8 XXX + SG_ NEW_SIGNAL_1 : 1|3@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 14|6@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_3 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 30|6@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 38|6@0+ (1,0) [0|7] "" XXX + +BO_ 64 MOB2: 8 XXX + SG_ NEW_SIGNAL_1 : 7|2@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 10|3@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 16|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 24|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 35|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 0|3@1+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_7 : 13|3@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_8 : 15|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_9 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_10 : 31|6@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_11 : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 1171 MOB3: 8 XXX + +BO_ 1248 MOB4: 8 XXX + +BO_ 1177 RADAR_499_STATIC: 8 XXX + + + + +CM_ SG_ 357 GEAR "13P, 26R, 13N, 24D"; +CM_ SG_ 605 PED_BRAKE "3: no brake, 4: brake"; +CM_ SG_ 605 BRAKE_WARNING "Flashing brake warning and audible alert for potential forward collision"; +CM_ SG_ 579 STEERING_ANGLE "steering angle aligns with 0.022 factor and -45.06 offset"; +CM_ SG_ 863 SPEED_SIGN "speed limit in MPH"; +CM_ SG_ 863 SPEED_SIGN_CAM "1: The speed limit is recognized by the camera. 0: speed limit is map based or is not available"; +CM_ SG_ 863 STOP_SIGN "value 9 when stop sign is active"; +CM_ SG_ 1157 SBS_WARNING_DISTANCE "1 far, 2 mid, 3 near"; +CM_ SG_ 1157 SBS_SCBC "1 off, 2 on"; +CM_ SG_ 1157 LKAS_ASSIT_TIMING "1 at, 0 before"; +CM_ SG_ 1157 LKAS_SENSETIVITY "0 low, 1 high"; +CM_ SG_ 1157 LANEE_DEPARTURE_ALERT "1 off, 2 on"; +CM_ SG_ 1157 WARNING "1 Rare, 0 often"; +CM_ SG_ 1088 LANE_LINES "0 LKAS disabled, 1 no lines, 2 two lines, 3 left line, 4 right line"; +CM_ SG_ 1088 TJA "2: crz not active, 3: TJA not allowed, 4: TJA allowed"; +CM_ SG_ 1088 TJA_TRANSITION "3: if TJA signal is 3, otherwise set to 0"; +CM_ SG_ 1045 ABS_MALFUNCTION "off: 0, solid: 1, slow blink: 2, fast blink: 3"; +CM_ SG_ 120 VEHICLE_ACC_X "Vehicle acceleration of X-axis wrt. NED frame."; +CM_ SG_ 120 VEHICLE_ACC_Y "Vehicle acceleration of Y-axis wrt. NED frame."; +CM_ SG_ 157 CAN_OFF "Disengage Cruise if enabled, if already disabled TURN it OFF "; +CM_ SG_ 552 MORE_GEAR ""; +CM_ SG_ 552 GEAR "0 Shifting, 1 P, 2 R, 3 N, 4 D"; +CM_ SG_ 552 GEAR_BOX "0 P, 14 R, 1 though 6 D for speeds, 15 Shift"; +CM_ SG_ 540 HANDS_ON_STEER_WARN "0 no warning, b warning"; +CM_ SG_ 540 DISTANCE_SETTING "Radar distance 0: disabled, 1: 4 bars, 2: 3 bars, 3: 2 bars, 4: 1 bar"; +CM_ SG_ 1143 REAR_CT_ALERT "Rear Cross Traffic Alert"; +VAL_ 552 GEAR 1 "P" 2 "R" 3 "N" 4 "D" ; +VAL_ 540 RADAR_HAS_LEAD 0 "NO LEAD" 1 "HAS LEAD" ; +VAL_ 540 RADAR_LEAD_RELATIVE_DISTANCE 0 "NO LEAD" 1 "FARTHEST" 2 "4" 3 "3" 4 "2" 5 "NEAREST" ; +VAL_ 1143 LEFT_BS_STATUS 0 "No object detected" 1 "Object detected in left blindspot" 2 "Object detected in left blindspot with blinker - warning" +VAL_ 1143 RIGHT_BS_STATUS 0 "No object detected" 1 "Object detected in right blindspot" 2 "Object detected in right blindspot with blinker - warning" diff --git a/opendbc_repo/opendbc/dbc/mazda_3_2019.dbc b/opendbc_repo/opendbc/dbc/mazda_3_2019.dbc new file mode 100644 index 0000000000..b23e7196bf --- /dev/null +++ b/opendbc_repo/opendbc/dbc/mazda_3_2019.dbc @@ -0,0 +1,408 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 256 CAM_Start: 8 XXX + SG_ NEW_SIGNAL_7 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_8 : 61|2@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_10 : 44|12@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 63|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 24|12@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 2|2@0+ (1,0) [0|1] "" XXX + SG_ ACTIVE_TARGET : 4|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 20|12@0+ (1,0) [0|7] "" XXX + SG_ DISTANCE_LEAD_CAR : 0|12@0+ (1,0) [0|255] "" XXX + +BO_ 358 CAM_End: 8 XXX + SG_ NEW_SIGNAL_2 : 61|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_3 : 59|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 1216 CAM_69: 8 XXX + SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_5 : 55|12@0+ (1,0) [0|7] "" XXX + +BO_ 1120 CAM_KEEP_ALIVE_2: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 1436 CAM_71: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 18 STEER: 8 XXX + SG_ NEW_SIGNAL_3 : 55|2@0+ (1,0) [0|15] "" XXX + SG_ CTR : 41|2@0+ (1,0) [0|3] "" XXX + SG_ STEER_LEFT_BIT : 26|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_ANGLE : 25|14@0- (1,375) [0|65536] "" XXX + SG_ ENGINE_OFF : 43|2@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_2 : 53|6@0+ (1,0) [0|15] "" XXX + +BO_ 257 LKAS: 8 XXX + SG_ CTR : 59|4@0+ (1,0) [0|255] "" XXX + SG_ CTR_ACT : 61|2@0+ (1,0) [0|3] "" XXX + SG_ SET_0 : 48|1@1+ (1,0) [0|3] "" XXX + SG_ SET_0_1 : 63|2@0+ (1,0) [0|3] "" XXX + SG_ SET_19 : 2|2@0+ (1,0) [0|255] "" XXX + SG_ LEAD_DIST : 0|12@0+ (1,0) [0|255] "" XXX + SG_ ANGLE_TARGET : 20|12@0+ (1,0) [0|4095] "" XXX + SG_ UNKNOWN : 24|12@0+ (1,0) [0|4095] "" XXX + SG_ MAX_TORQUE__ : 44|12@0- (1,0) [0|4095] "" XXX + +BO_ 258 NEW_MSG_3: 8 XXX + SG_ NEW_SIGNAL_3 : 59|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 44|10@0- (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 1|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_4 : 39|10@0- (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 13|10@0- (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 18|10@0- (1,0) [0|255] "" XXX + +BO_ 28 WHEEL_SPEEDS: 8 XXX + SG_ RR : 55|16@0+ (0.01,-100) [0|65535] "" XXX + SG_ RL : 39|16@0+ (0.01,-102) [0|65535] "" XXX + SG_ FL : 7|16@0+ (0.01,-100) [0|65535] "" XXX + SG_ FR : 23|16@0+ (0.01,-100) [0|65535] "" XXX + +BO_ 259 NEW_MSG_5: 8 XXX + SG_ NEW_SIGNAL_3 : 39|10@0- (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 44|10@0- (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 0|12@0- (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 19|11@0- (1,0) [0|10000000] "" XXX + +BO_ 260 NEW_MSG_6: 8 XXX + SG_ NEW_SIGNAL_1 : 0|12@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 24|12@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 20|12@0- (1,0) [0|1] "" XXX + +BO_ 261 NEW_MSG_7: 8 XXX + SG_ NEW_SIGNAL_1 : 15|8@0+ (1,0) [0|255] "" XXX + +BO_ 262 NEW_MSG_8: 8 XXX + SG_ NEW_SIGNAL_1 : 15|8@0- (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 263 NEW_MSG_9: 8 XXX + SG_ NEW_SIGNAL_1 : 15|8@0+ (1,0) [0|255] "" XXX + +BO_ 310 NEW_MSG_10: 8 XXX + SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 308 ACC_POSSIBLY: 8 XXX + SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 4|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 54|7@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 0|7@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_7 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 18|7@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 36|7@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 55|1@0+ (1,0) [0|1] "" XXX + +BO_ 304 CAM_LANES: 8 XXX + SG_ NEW_SIGNAL_3 : 59|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 61|2@0+ (1,0) [0|3] "" XXX + SG_ LEFT_LANE_DETECTED : 7|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_LANE_DETECTED : 4|1@0+ (1,0) [0|255] "" XXX + SG_ DISTANCE_TO_LEFT_LANE_LOW_RES : 29|8@0+ (1,0) [0|4095] "" XXX + SG_ DISTANCE_TO_RIGHT_LANE_LOW_RES : 37|8@0+ (1,0) [0|15] "" XXX + SG_ DISTANCE_TO_RIGHT_LANE : 23|10@0- (1,0) [0|2047] "" XXX + SG_ DISTANCE_TO_LEFT_LANE : 1|10@0- (1,0) [0|1] "" XXX + +BO_ 305 CAM_LANES_2_MAYBE: 8 XXX + SG_ NEW_SIGNAL_1 : 1|10@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 37|8@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_6 : 61|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_4 : 29|8@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 4|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 23|10@0+ (1,0) [0|4095] "" XXX + +BO_ 352 NEW_MSG_14: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 355 NEW_MSG_15: 8 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|127] "" XXX + +BO_ 356 NEW_MSG_16: 8 XXX + SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 61|2@0+ (1,0) [0|3] "" XXX + +BO_ 357 NEW_MSG_17: 8 XXX + SG_ NEW_SIGNAL_1 : 61|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ NEW_SIGNAL_3 : 56|4@1+ (1,0) [0|15] "" XXX + +BO_ 59 STEER_RATE: 8 XXX + SG_ NEW_SIGNAL_2 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ STEER_ANGLE_RATE : 55|8@0+ (0.05,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_1 : 43|4@0+ (1,0) [0|15] "" XXX + SG_ STEER_ANGLE : 23|16@0+ (0.05,-1600) [-500|500] "" XXX + SG_ CHKSUM : 39|8@0+ (1,0) [0|15] "" XXX + +BO_ 24 BRAKE_PEDAL: 8 XXX + SG_ BRAKE_PEDAL_PRESSED_AND_ENGINE_ON : 0|1@0+ (1,0) [0|3] "" XXX + SG_ NOT_BRAKE_PEDAL_PRESSED : 6|1@0+ (1,0) [0|3] "" XXX + SG_ BRAKE_PEDAL_PRESSED : 7|1@0+ (1,0) [0|65535] "" XXX + SG_ NOT_BRAKE_PEDAL_PRESSED_AND_ENGINE_ON : 15|1@0+ (1,0) [0|7] "" XXX + +BO_ 26 ENGINE_DATA: 8 XXX + SG_ PEDAL_GAS : 39|10@0+ (1,0) [0|15] "" XXX + SG_ CHKSUM : 63|8@0- (1,0) [0|15] "" XXX + SG_ RPM : 7|13@0+ (1,0) [0|15] "" XXX + SG_ ENGINE_ON : 52|1@0+ (1,0) [0|15] "" XXX + +BO_ 145 BLINK_INFO: 8 XXX + SG_ RIGHT_BLINK : 12|1@0+ (1,0) [0|3] "" XXX + SG_ LEFT_BLINK : 13|1@0+ (1,0) [0|3] "" XXX + SG_ Speed : 27|12@0+ (1,0) [0|255] "" XXX + SG_ CTR : 51|4@0+ (1,0) [0|15] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|15] "" XXX + +BO_ 16 STEER_TORQUE: 8 XXX + SG_ NEW_SIGNAL_12 : 7|2@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 43|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 51|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ STEER_TORQUE_SENSOR : 5|13@0+ (1,-4000) [0|15] "" XXX + SG_ CHKSUM : 63|8@0- (1,0) [0|15] "" XXX + SG_ STEER_TORQUE_MOTOR : 8|13@0+ (0.05,-205) [0|15] "" XXX + SG_ BRAKE_PREASURE : 27|12@0+ (1,0) [0|15] "" XXX + +BO_ 17 STEER_TORQUE_2: 8 XXX + SG_ CTR : 51|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ STEER_TORQUE_MOTOR : 7|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 27|14@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 45|6@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 23|12@0+ (1,0) [0|255] "" XXX + +BO_ 29 WHEEL: 8 XXX + SG_ STANDSTILL : 52|1@0+ (1,0) [0|15] "" XXX + SG_ SPEED : 39|16@0+ (1,0) [0|127] "" XXX + SG_ ENCODER_1 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ ENCODER_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_6 : 55|3@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 51|4@0+ (1,0) [0|15] "" XXX + +BO_ 31 GEAR: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX + SG_ GEAR : 36|4@0+ (1,0) [0|65535] "" XXX + +BO_ 96 STEER2: 8 XXX + SG_ NEW_SIGNAL_5 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ CTR : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ TURN_ON : 34|1@0+ (1,0) [0|1] "" XXX + SG_ TURN_OFF : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ENGINE_ON : 33|1@0+ (1,0) [0|1] "" XXX + SG_ CAR_MOVING_FORWARD : 21|1@0+ (1,0) [0|15] "" XXX + SG_ CAR_REVERSING : 22|1@0+ (1,0) [0|1] "" XXX + SG_ ENGINE_OFF : 23|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 45|1@0+ (1,0) [0|15] "" XXX + SG_ SPEED : 18|16@0- (0.00621371,-62.1371) [-65635|65635] "MPH" XXX + SG_ STEER__ : 7|16@0+ (1,0) [0|65535] "" XXX + +BO_ 1209 KEEP_ALIVE_1: 8 XXX + SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_6 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 4|5@0+ (1,0) [0|127] "" XXX + +BO_ 37 BLANK_1: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 44 BLANK_2: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|16777215] "" XXX + SG_ NEW_SIGNAL_3 : 55|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 39|16@0+ (1,0) [0|16777215] "" XXX + +BO_ 128 RADARS: 8 XXX + SG_ NEW_SIGNAL_1 : 59|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 15|1@0+ (1,0) [0|255] "" XXX + SG_ FRONT_LEFT : 19|1@0+ (1,0) [0|255] "" XXX + SG_ FRONT : 21|1@0+ (1,0) [0|1] "" XXX + SG_ FRONT_RIGHT : 18|1@0+ (1,0) [0|1] "" XXX + SG_ REAR_RIGHT : 20|1@0+ (1,0) [0|15] "" XXX + SG_ REAR_LEFT : 17|1@0+ (1,0) [0|1] "" XXX + +BO_ 129 NEW_MSG_19: 8 XXX + SG_ NEW_SIGNAL_2 : 15|1@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 31|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 47|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_5 : 56|8@1+ (1,0) [0|15] "" XXX + +BO_ 1034 KEEP_ALIVE_2: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 23|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 55|16@0+ (1,0) [0|255] "" XXX + +BO_ 1200 KEEP_ALIVE_3: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 55|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 39|16@0+ (1,0) [0|65535] "" XXX + +BO_ 354 CAM_KEEP_ALIVE_1: 8 XXX + SG_ NEW_SIGNAL_1 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_2 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_3 : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_4 : 55|30@0+ (1,0) [0|65535] "" XXX + +BO_ 336 NEW_MSG_20: 8 XXX + SG_ NEW_SIGNAL_2 : 7|8@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_1 : 11|12@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 342 NEW_MSG_21: 8 XXX + SG_ NEW_SIGNAL_1 : 56|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 63|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 55|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 39|16@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 48|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_7 : 7|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 23|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_6 : 40|4@1+ (1,0) [0|15] "" XXX + +BO_ 264 NEW_MSG_2: 8 XXX + SG_ NEW_SIGNAL_1 : 56|8@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 49|3@1+ (1,0) [0|7] "" XXX + SG_ CRZ_CTRL_PRESSED : 48|1@0+ (1,0) [0|1] "" XXX + +BO_ 22 CRZ_CTRL_BTNS: 8 XXX + SG_ CRZ_CTRL_BTN_PRESSED : 48|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 51|3@0+ (1,0) [0|7] "" XXX + SG_ SIGNAL : 45|1@0+ (1,0) [0|15] "" XXX + SG_ NOT_SIGNAL : 46|1@0+ (1,0) [0|3] "" XXX + +BO_ 306 CAM_LANE_3_MAYBE: 8 XXX + SG_ NEW_SIGNAL_1 : 19|10@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_2 : 13|10@0+ (1,0) [0|255] "" XXX + SG_ LANE_DETECTED_1 : 44|1@0+ (1,0) [0|1] "" XXX + SG_ LANE_DETECTED_2 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 25|10@0+ (1,0) [0|1] "" XXX + SG_ STEER : 7|10@0+ (1,0) [0|1] "" XXX + +BO_ 307 NEW_MSG_1: 8 XXX + SG_ NEW_SIGNAL_2 : 13|10@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 61|6@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 25|10@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 7|10@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 19|10@0+ (1,0) [0|1] "" XXX + +BO_ 320 NEW_MSG_4: 8 XXX + SG_ NEW_SIGNAL_4 : 16|1@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 43|6@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 36|9@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 27|7@0+ (1,0) [0|1] "" XXX + +BO_ 321 NEW_MSG_11: 8 XXX + SG_ NEW_SIGNAL_1 : 5|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 32|1@0+ (1,0) [0|1] "" XXX + +BO_ 293 NEW_MSG_12: 8 XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 39|16@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 19|4@0+ (1,0) [0|1] "" XXX + +BO_ 294 NEW_MSG_13: 8 XXX + SG_ NEW_SIGNAL_1 : 59|4@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 61|2@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 7|16@0+ (1,0) [0|1] "" XXX + +BO_ 292 NEW_MSG_18: 8 XXX + SG_ NEW_SIGNAL_1 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 291 NEW_MSG_22: 8 XXX + SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 290 NEW_MSG_23: 8 XXX + SG_ NEW_SIGNAL_1 : 31|5@0+ (1,0) [0|255] "" XXX + +BO_ 277 NEW_MSG_24: 8 XXX + SG_ NEW_SIGNAL_1 : 47|8@0+ (1,0) [0|1] "" XXX + +BO_ 278 NEW_MSG_25: 8 XXX + +BO_ 273 NEW_MSG_26: 8 XXX + SG_ NEW_SIGNAL_1 : 23|4@0+ (1,0) [0|3] "" XXX + +BO_ 274 NEW_MSG_27: 8 XXX + SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|1] "" XXX + +BO_ 289 NEW_MSG_28: 8 XXX + SG_ NEW_SIGNAL_1 : 55|8@0+ (1,0) [0|1] "" XXX + +BO_ 20 NEW_MSG_29: 8 XXX + SG_ RIGHT_BLINK_CLOCK : 23|8@0+ (1,0) [0|1] "" XXX + +BO_ 288 NEW_MSG_30: 8 XXX + + + + +CM_ SG_ 31 GEAR "13-P, 12-R, 11-N, 1-6-D"; +CM_ SG_ 96 SPEED ""; +VAL_ 31 GEAR 13 "P" 12 "R" 11 "N" 1 "D" 2 "D" 3 "D" 4 "D" 5 "D" 6 "D"; diff --git a/opendbc_repo/opendbc/dbc/mazda_radar.dbc b/opendbc_repo/opendbc/dbc/mazda_radar.dbc new file mode 100644 index 0000000000..a4fe3b4b9e --- /dev/null +++ b/opendbc_repo/opendbc/dbc/mazda_radar.dbc @@ -0,0 +1,73 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 540 CRZ_CTRL: 8 XXX + +BO_ 539 CRZ_INFO: 8 XXX + +BO_ 865 RADAR_TRACK_361: 8 XXX + SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX + SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX + +BO_ 866 RADAR_TRACK_362: 8 XXX + SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX + SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX + +BO_ 867 RADAR_TRACK_363: 8 XXX + SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX + SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX + +BO_ 868 RADAR_TRACK_364: 8 XXX + SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX + SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX + +BO_ 869 RADAR_TRACK_365: 8 XXX + SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX + SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX + +BO_ 870 RADAR_TRACK_366: 8 XXX + SG_ DIST_OBJ : 7|12@0+ (1,0) [0|4095] "" XXX + SG_ ANG_OBJ : 11|12@0- (1,0) [-2047|2047] "" XXX + SG_ RELV_OBJ : 31|11@0- (1,0) [-1023|1023] "" XXX + +BO_ 1177 RADAR_499: 8 XXX \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/mazda_rx8.dbc b/opendbc_repo/opendbc/dbc/mazda_rx8.dbc new file mode 100644 index 0000000000..f491a9698f --- /dev/null +++ b/opendbc_repo/opendbc/dbc/mazda_rx8.dbc @@ -0,0 +1,77 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: PowertrainControlModule InstrumentCluster ElectricPowerSteering AntilockBrakeSystem + + +BO_ 129 steering: 8 ElectricPowerSteering + SG_ SteeringAngle : 23|16@0- (1,0) [0|0] "deg" Vector__XXX + +BO_ 513 speed: 8 PowertrainControlModule + SG_ EngineRPM : 7|16@0+ (0.25,0) [0|0] "rpm" Vector__XXX + SG_ VehicleSpeed : 39|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX + SG_ AcceleratorPos : 55|8@0+ (0.5,0) [0|0] "%" Vector__XXX + +BO_ 592 throttle_body: 8 PowertrainControlModule + SG_ IntakeAirTemperature : 31|8@0+ (1,-40) [0|0] "Cel" Vector__XXX + SG_ AcceleratorPedalSensorRaw : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ AcceleratorPedalSensorFiltered : 55|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 658 brake_controls: 8 PowertrainControlModule + SG_ BrakePedalSwitch : 43|1@1+ (1,0) [0|0] "" Vector__XXX + SG_ ParkingBrakeSwitch : 38|1@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 1056 coolant: 8 PowertrainControlModule + SG_ CoolantTemperature : 7|8@0+ (1,-40) [0|0] "Cel" Vector__XXX + +BO_ 1072 instrument_cluster: 8 InstrumentCluster + SG_ FuelLevel : 7|8@0+ (0.392156,0) [0|0] "%" Vector__XXX + SG_ FuelTankSensorLeft : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ FuelTankSensorRight : 23|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1200 wheel_speed: 8 AntilockBrakeSystem + SG_ WheelSpeedFL : 7|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX + SG_ WheelSpeedFR : 23|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX + SG_ WheelSpeedRL : 39|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX + SG_ WheelSpeedRR : 55|16@0+ (0.01,-100) [0|0] "kph" Vector__XXX + +CM_ SG_ 129 SteeringAngle "Steering wheel angle: positive is right and negative is left"; +CM_ SG_ 513 AcceleratorPos "processed interpretation of AcceleratorPedalSensor values"; +CM_ SG_ 1072 FuelTankSensorLeft "lower sensor values indicate a more full tank"; +CM_ SG_ 1072 FuelTankSensorRight "lower sensor values indicate a more full tank"; + + + + diff --git a/opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc b/opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc new file mode 100644 index 0000000000..da6ae4c15e --- /dev/null +++ b/opendbc_repo/opendbc/dbc/mercedes_benz_e350_2010.dbc @@ -0,0 +1,176 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 3 STEER_SENSOR: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ STEER_RATE : 19|12@0- (0.5,0) [0|255] "" XXX + SG_ STEER_DIRECTION : 4|1@0+ (1,2) [0|1] "" XXX + SG_ STEER_ANGLE : 3|12@0- (-0.5,0) [-500|500] "degrees" XXX + +BO_ 5 BRAKE_MODULE: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_HOLD : 2|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_POSITION : 17|10@0+ (1,0) [0|65535] "" XXX + SG_ DRIVER_BRAKE : 4|1@0+ (1,0) [0|1] "" XXX + SG_ COMPUTER_BRAKE : 10|1@0+ (1,0) [0|1] "" XXX + SG_ BRAKE_PRESSED : 0|1@1+ (1,0) [0|1] "" XXX + +BO_ 69 DRIVER_CONTROLS: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ STEERING_WHEEL_BUTTONS : 32|16@1+ (1,0) [0|255] "4 directional, 2 volume control & 2 phone buttons" XXX + SG_ LEFT_BLINKER : 16|1@0+ (1,0) [0|1] "" XXX + SG_ RIGHT_BLINKER : 17|1@0+ (1,0) [0|1] "" XXX + SG_ HIGHBEAM_TOGGLE : 18|1@0+ (1,0) [0|1] "" XXX + SG_ HIGHBEAM_MOMENTARY : 19|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_CANCEL : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_RESUME : 1|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_ACCEL_HIGH : 2|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_DECEL_HIGH : 3|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_ACCEL_LOW : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_DECEL_LOW : 5|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_XFF : 15|8@0+ (1,0) [0|255] "" XXX + +BO_ 513 WHEEL_ENCODERS: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ WHEEL_ENCODER_2 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_ENCODER_3 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ WHEEL_ENCODER_4 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|255] "" XXX + SG_ WHEEL_ENCODER_1 : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 261 GAS_PEDAL: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ ENGINE_RPM : 4|5@0+ (1,0) [0|255] "" XXX + SG_ GAS_PEDAL : 39|8@0+ (1,0) [0|255] "" XXX + SG_ COMBINED_GAS : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 643 DOOR_SENSORS: 8 XXX + SG_ BRAKE_PRESSED : 27|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 3|1@1+ (1,0) [0|3] "" XXX + SG_ DOOR_OPEN_RL : 5|1@0+ (1,0) [0|3] "" XXX + SG_ DOOR_OPEN_RR : 7|1@0+ (1,0) [0|3] "" XXX + SG_ DOOR_OPEN_FL : 1|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_FL : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_FR : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_RL : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_CLOSED_RR : 6|1@0+ (1,0) [0|1] "" XXX + +BO_ 885 SEATBELT_SENSORS: 8 XXX + SG_ SEATBELT_DRIVER_LATCHED : 16|1@0+ (1,0) [0|1] "" XXX + SG_ SEATBELT_PASSENGER_LATCHED : 18|1@0+ (1,0) [0|1] "" XXX + +BO_ 257 CRUISE_CONTROL: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 6|1@0+ (1,0) [0|255] "" XXX + SG_ CRUISE_DISABLED : 23|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_X002 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X003 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_1 : 5|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_ACCELERATING : 22|1@0+ (1,0) [0|1] "" XXX + SG_ LONGITUDINAL_ACCEL_REQUEST : 15|8@0- (1,0) [0|127] "" XXX + +BO_ 260 CRUISE_CONTROL2: 8 XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_XFF : 31|8@0+ (1,0) [0|65535] "" XXX + SG_ SET_ME_X02 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_XFF2 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 7|4@0+ (1,0) [0|255] "" XXX + +BO_ 14 STEER_TORQUE: 8 XXX + SG_ STEER_TORQUE : 15|8@0+ (1,0) [0|255] "" XXX + SG_ COUNTER : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 888 CRUISE_CONTROL3: 8 XXX + SG_ NEW_SIGNAL_2 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_DISABLED : 36|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_ENABLED : 34|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_X003 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X004 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X002 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ CRUISE_SET_SPEED : 15|8@0+ (1,0) [0|63] "mph" XXX + SG_ CRUISE_SPEED_CHANGE : 55|1@0+ (1,0) [0|1] "" XXX + +BO_ 307 POWER_SEATS: 8 XXX + SG_ DRIVER_FORWARD : 0|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVER_BACK : 1|1@0+ (1,0) [0|1] "" XXX + +BO_ 109 GEAR_LEVER: 8 XXX + SG_ PARK_BUTTON : 12|1@0+ (1,0) [0|1] "" XXX + SG_ NEUTRAL_UP : 9|1@0+ (1,0) [0|1] "" XXX + SG_ NEUTRAL_DOWN : 10|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVE : 11|1@0+ (1,0) [0|1] "" XXX + SG_ REVERSE : 8|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 23|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 115 GEAR_PACKET: 8 XXX + SG_ GEAR : 0|4@1+ (1,0) [0|15] "" XXX + +BO_ 581 IGNITION: 8 XXX + +BO_ 515 WHEEL_SPEEDS: 8 XXX + SG_ WHEEL_MOVING_FR : 22|1@1+ (1,0) [0|15] "" XXX + SG_ WHEEL_MOVING_RL : 38|1@0+ (1,0) [0|1] "" XXX + SG_ WHEEL_MOVING_FL : 6|1@0+ (1,0) [0|1] "" XXX + SG_ WHEEL_MOVING_RR : 54|1@0+ (1,0) [0|1] "" XXX + SG_ WHEEL_SPEED_FL : 2|11@0+ (0.0375,0) [0|255] "mph" XXX + SG_ WHEEL_SPEED_FR : 18|11@0+ (0.0375,0) [0|255] "mph" XXX + SG_ WHEEL_SPEED_RL : 34|11@0+ (0.0375,0) [0|255] "mph" XXX + SG_ WHEEL_SPEED_RR : 50|11@0+ (0.0375,0) [0|255] "mph" XXX + + + + +CM_ SG_ 3 STEER_DIRECTION "0 = left, 1 = right"; +CM_ SG_ 5 BRAKE_POSITION "computer and driver"; +CM_ SG_ 5 BRAKE_PRESSED "computer and driver"; +CM_ SG_ 261 GAS_PEDAL "user gas input"; +CM_ SG_ 261 COMBINED_GAS "computer and driver gas"; +CM_ SG_ 257 CRUISE_ACCELERATING ""; \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc b/opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc new file mode 100644 index 0000000000..1e7bd4c4ae --- /dev/null +++ b/opendbc_repo/opendbc/dbc/nissan_xterra_2011.dbc @@ -0,0 +1,96 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + +BO_ 2 STEERING: 5 XXX + SG_ COUNTER : 35|4@0+ (1,0) [0|255] "" XXX + SG_ STEERING_ANGLE : 0|16@1- (0.1,0) [0|65535] "deg" XXX + SG_ POWER_STEER_RATE : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 505 ENGINE_1: 8 XXX + SG_ RPM : 16|16@1+ (0.125,0) [0|45000] "R/min" XXX + SG_ FAN_REQ : 6|2@1+ (1,0) [0|3] "" XXX + SG_ AC_REQ : 3|1@1+ (1,0) [0|1] "" XXX + +BO_ 561 ENGINE_2: 8 XXX + SG_ Pedal_position : 16|8@1+ (0.5,0) [0|200] "%" XXX + +BO_ 563 ENGINE_7: 8 XXX + SG_ CLT : 0|8@1+ (0.366666,0) [0|255] "C" XXX + SG_ RPMlow : 32|8@1+ (3.15,0) [0|45000] "R/min" XXX + SG_ RPMhi : 56|8@1+ (3.15,0) [0|45000] "R/min" XXX + +BO_ 573 ENGINE_3: 8 XXX + SG_ Pedal_position : 8|8@1+ (0.392,0) [0|255] "%" XXX + SG_ Throttle_position_capped : 16|8@1+ (0.392,0) [0|255] "%" XXX + SG_ RPM : 24|16@1+ (3.15,0) [0|45000] "R/min" XXX + SG_ CLT : 56|8@1+ (0.366666,0) [0|255] "C" XXX + +BO_ 574 ENGINE_4: 8 XXX + SG_ Throttle_position_inverted : 16|8@1+ (0.392,0) [0|255] "%" XXX + SG_ EstimatedTorque : 24|16@1+ (0.1,0) [0|45000] "nM" XXX + SG_ Throttle_position : 48|8@1+ (0.392,0) [0|255] "%" XXX + +BO_ 595 TCU_1: 8 XXX + SG_ SHAFT_1_SPEED : 32|16@1+ (1,0) [0|45000] "r/min" XXX + SG_ SHAFT_2_SPEED : 48|16@1+ (1,0) [0|45000] "r/min" XXX + +BO_ 640 SPEED: 8 XXX + SG_ SPEED : 32|16@1+ (0.01,0) [0|45000] "km/h" XXX + +BO_ 644 ABS_1: 8 XXX + SG_ WHEEL_1 : 0|16@1+ (0.01,0) [0|45000] "km/h" XXX + SG_ WHEEL_2 : 15|16@1+ (0.01,0) [0|45000] "km/h" XXX + +BO_ 645 ABS_2: 8 XXX + SG_ WHEEL_3 : 0|16@1+ (0.01,0) [0|45000] "km/h" XXX + SG_ WHEEL_4 : 15|16@1+ (0.01,0) [0|45000] "km/h" XXX + +BO_ 852 SPEED_BREAK: 8 XXX + SG_ BREAK_LIGHT : 52|1@0+ (1,0) [0|3] "" XXX + SG_ SPEED_MPH : 7|16@0+ (0.0066,0) [0|65535] "mph" XXX + SG_ TCS_OFF : 38|1@0+ (1,0) [0|255] "" XXX + +BO_ 861 BCM: 8 XXX + +BO_ 1361 ENGINE_5: 8 XXX + SG_ CLT : 0|8@1+ (1,-45) [-45|150] "" XXX + +BO_ 1408 ENGINE_6: 8 XXX + SG_ RPM : 7|16@0+ (1.5,0) [0|65535] "" XXX + SG_ OIL_TEMP : 32|8@1+ (1,-40) [-40|150] "" XXX + +BO_ 1477 MILEAGE: 8 XXX \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/ocelot_controls.dbc b/opendbc_repo/opendbc/dbc/ocelot_controls.dbc new file mode 100644 index 0000000000..aec1abfde9 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/ocelot_controls.dbc @@ -0,0 +1,113 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: EON PED IBST SSC +VAL_TABLE_ BRAKEMODE 3 "Reserved" 2 "Position Control" 1 "Relative Control" 0 "Disengadged" ; +VAL_TABLE_ STATUS 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; +VAL_TABLE_ YESNO 1 "Yes" 0 "No" ; + +BO_ 512 PEDAL_GAS_COMMAND: 6 EON + SG_ GAS_COMMAND : 8|16@1+ (1,0) [0|1] "" PED + SG_ GAS_COMMAND2 : 24|16@1+ (1,0) [0|1] "" PED + SG_ ENABLE : 47|1@1+ (1,0) [0|1] "" PED + SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" PED + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" PED + +BO_ 513 PEDAL_GAS_SENSOR: 6 PED + SG_ PED_GAS : 8|16@1+ (1,0) [0|1] "" EON + SG_ PED_GAS2 : 24|16@1+ (1,0) [0|1] "" EON + SG_ STATE : 44|4@1+ (1,0) [0|15] "" EON + SG_ COUNTER : 40|4@1+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON + +BO_ 526 OCELOT_BRAKE_COMMAND: 6 EON + SG_ BRAKE_POSITION_COMMAND : 32|12@1+ (0.015625,-5) [-5|47] "mm" IBST + SG_ BRAKE_RELATIVE_COMMAND : 16|16@1+ (0.0078125,-252) [-252|252] "" IBST + SG_ BRAKE_MODE : 12|2@1+ (1,0) [0|3] "" IBST + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" IBST + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" IBST + +BO_ 527 OCELOT_BRAKE_STATUS: 5 IBST + SG_ BRAKE_PEDAL_POSITION : 20|12@1+ (0.015625,-5) [-5|47] "mm" EON + SG_ BRAKE_APPLIED : 18|1@1+ (1,0) [0|1] "" EON + SG_ DRIVER_BRAKE_APPLIED : 17|1@1+ (1,0) [0|1] "" EON + SG_ BRAKE_OK : 16|1@1+ (1,0) [0|1] "" EON + SG_ STATUS : 12|4@1+ (1,0) [0|15] "" EON + SG_ EXT_STATUS1 : 32|4@1+ (1,0) [0|15] "" EON + SG_ EXT_STATUS2 : 36|4@1+ (1,0) [0|15] "" EON + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON + +BO_ 558 STEERING_COMMAND: 5 EON + SG_ STEER_TORQUE : 32|8@1- (0.125,0) [-16|15.875] "Nm" SSC + SG_ STEER_ANGLE : 16|16@1- (0.125,0) [-4096|4095.875] "deg" SSC + SG_ STEER_MODE : 12|2@1+ (1,0) [0|3] "" SSC + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" SSC + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" SSC + +BO_ 559 STEERING_STATUS: 8 SSC + SG_ STEERING_ANGLE : 40|16@1- (0.125,0) [-4096|4095.875] "deg" EON + SG_ STEERING_SPEED : 24|8@1- (0.015625,0) [-2|1.984375] "rev/s" EON + SG_ STEERING_TORQUE : 16|8@1- (0.125,0) [-16|15.875] "Nm" EON + SG_ CONTROL_STATUS : 12|4@1+ (1,0) [0|15] "" EON + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" EON + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" EON + SG_ TEMPERATURE : 32|8@1+ (1,-60) [-60|195] "C" EON + SG_ DEBUG_STATES : 56|8@1+ (1,0) [0|255] "" EON + + + +CM_ SG_ 558 STEER_TORQUE "Steering torque request"; +CM_ SG_ 558 STEER_ANGLE "Steering relative angle request for internal close loop controller"; +CM_ SG_ 558 STEER_MODE "Control mode request. +Off - instant 0 torque +TorqueControl - use steer_torque, +AngleControl - use steer_angle as relative target and steer_torque as feedforward, +SoftOff - ramp torque down with constant rate, command Off after SoftOff to resume control"; +CM_ SG_ 558 COUNTER "Rolling counter"; +CM_ SG_ 558 CHECKSUM "8bit sum of all bytes and message id"; +CM_ SG_ 559 STEERING_ANGLE "Steering angle calculated from motor position sensor"; +CM_ SG_ 559 STEERING_SPEED "Steering speed calculated from motor position sensor"; +CM_ SG_ 559 STEERING_TORQUE "Motor torque calculated at the steering"; +CM_ SG_ 559 CONTROL_STATUS "Bitwise states: bit0 - sensored torque control is enabled, bit1 - sensor feedback enabled, bit2 - openloop soft off active, bit3 - internal closeloop mode enabled"; +CM_ SG_ 559 COUNTER "Rolling counter"; +CM_ SG_ 559 CHECKSUM "8bit sum of all bytes and message id"; +CM_ SG_ 559 TEMPERATURE "Motor PCB temperature"; +CM_ SG_ 559 DEBUG_STATES "Bitwise status. Refer to source"; +VAL_ 526 BRAKE_MODE 3 "Reserved" 2 "Position Control" 1 "Relative Control" 0 "Disengadged" ; +VAL_ 527 BRAKE_OK 1 "Yes" 0 "No" ; +VAL_ 527 STATUS 5 "FAULT_TIMEOUT" 4 "FAULT_STARTUP" 3 "FAULT_SCE" 2 "FAULT_SEND" 1 "FAULT_BAD_CHECKSUM" 0 "NO_FAULT" ; +VAL_ 558 STEER_MODE 0 "Off" 1 "TorqueControl" 2 "AngleControl" 3 "SoftOff" ; + diff --git a/opendbc_repo/opendbc/dbc/opel_omega_2001.dbc b/opendbc_repo/opendbc/dbc/opel_omega_2001.dbc new file mode 100644 index 0000000000..8f8e0cfdea --- /dev/null +++ b/opendbc_repo/opendbc/dbc/opel_omega_2001.dbc @@ -0,0 +1,104 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: ABS ESP ECU TCU SAS + + +BO_ 272 TCU_Data1: 8 TCU + SG_ TorqueRequest1 : 15|8@0+ (1,0) [0|255] "" ABS,ESP,ECU + SG_ TorqueRequest2 : 31|8@0+ (1,0) [0|255] "" ABS,ESP,ECU + SG_ OutputShaftSpeed : 55|16@0+ (1,0) [0|65535] "rpm" ABS,ESP,ECU + +BO_ 288 ESP_Data1: 8 ESP + SG_ ABD_Active : 4|1@0+ (1,0) [0|1] "yes/no" ECU,TCU + SG_ TorqueRequestFast : 15|8@0+ (1,0) [0|255] "" ECU,TCU + SG_ TorqueRequestSlow : 31|8@0+ (1,0) [0|255] "" ECU,TCU + +BO_ 384 SAS_Data: 8 SAS + SG_ SteeringAngle : 0|16@1- (0.1,0) [-3276.8|3276.7] "yes/no" ECU,TCU + SG_ SteeringSpeed : 16|8@1+ (1,0) [0|255] "" ECU,TCU + +BO_ 416 ECU_Data1: 8 ECU + SG_ RPM : 15|16@0+ (1,0) [0|65535] "rpm" ABS,ESP,TCU + SG_ TorqueResponse : 31|8@0+ (1,0) [0|255] "" ABS,ESP,TCU + SG_ TorqueLost : 39|8@0+ (1,0) [0|255] "" ABS,ESP,TCU + SG_ APP : 47|8@0+ (1,0) [0|102] "" ABS,ESP,TCU + SG_ TorqueRequest : 63|8@0+ (1,0) [0|255] "" ABS,ESP,TCU + +BO_ 448 ECU_Data2: 8 ECU + SG_ TPS : 23|8@0+ (1,0) [0|100] "" ABS,ESP,TCU + +BO_ 640 ECU_Data3: 8 ECU + SG_ BrakeActive : 18|1@0+ (1,0) [0|1] "yes/no" ABS,ESP,TCU + SG_ KickdownActive : 20|1@0+ (1,0) [0|1] "yes/no" ABS,ESP,TCU + SG_ CruiseActive : 22|1@0+ (1,0) [0|1] "yes/no" ABS,ESP,TCU + +BO_ 736 TCU_Data2: 8 TCU + SG_ TOT : 31|8@0- (1,-40) [-40|215] "" ECU + SG_ InputShaftSpeed : 47|16@0+ (1,0) [0|65535] "rpm" ECU + +BO_ 768 ABS_WheelSpeed: 8 ABS + SG_ FrontLeftWheelSpeed : 5|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU + SG_ FrontLeftWheelErrorFlag : 7|1@0+ (1,0) [0|1] "" ECU,TCU + SG_ FrontRightWheelSpeed : 21|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU + SG_ FrontRightWheelErrorFlag : 23|1@0+ (1,0) [0|1] "" ECU,TCU + SG_ RearLeftWheelSpeed : 37|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU + SG_ RearLeftWheelErrorFlag : 39|1@0+ (1,0) [0|1] "" ECU,TCU + SG_ RearRightWheelSpeed : 53|14@0+ (0.112,0) [0|255] "km/h" ECU,TCU + SG_ RearRightWheelErrorFlag : 55|1@0+ (1,0) [0|1] "" ECU,TCU + +BO_ 792 ESP_Data2: 8 ESP + SG_ ABS_Active : 12|1@0+ (1,0) [0|1] "yes/no" ECU,TCU + SG_ ESP_Off : 20|1@0+ (1,0) [0|1] "yes/no" ECU,TCU + SG_ ESP_Active : 21|1@0+ (1,0) [0|1] "yes/no" ECU,TCU + +BO_ 992 TCU_Data3: 8 TCU + SG_ CurrentGear : 11|4@0+ (1,0) [0|15] "" ECU + SG_ SelectorPosition : 18|3@0+ (1,0) [0|7] "" ECU + SG_ AutoNeutralActive : 26|1@0+ (1,0) [0|1] "yes/no" ECU + SG_ WinterModeActive : 29|1@0+ (1,0) [0|1] "yes/no" ECU + SG_ SportModeActive : 30|1@0+ (1,0) [0|1] "yes/no" ECU + SG_ TCC_State : 37|2@0+ (1,0) [0|2] "" ECU + +BO_ 1472 ECU_Data4: 8 ECU + SG_ ECT : 15|8@0- (1,-40) [-40|215] "" TCU + SG_ IAT : 47|8@0- (1,-40) [-40|215] "" TCU + + + +VAL_ 992 CurrentGear 5 "1" 6 "2" 7 "3" 8 "4" ; +VAL_ 992 SelectorPosition 1 "P" 2 "R" 3 "N" 4 "D" 7 "3" 6 "2" 5 "1" ; +VAL_ 992 TCC_State 0 "Off" 1 "Partially Locked" 2 "Locked" ; + diff --git a/opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc b/opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc new file mode 100644 index 0000000000..6422562d0d --- /dev/null +++ b/opendbc_repo/opendbc/dbc/rivian_primary_actuator.dbc @@ -0,0 +1,1019 @@ +VERSION "PrimaryActuatorCAN" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: ACM CGM EPAS_P ESP IBM OCS RCM SAS TestTool VDM Vector_XXX + + +BO_ 64 SAS_Status: 8 SAS + SG_ SAS_Status_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM,EPAS_P,ESP,RCM,VDM + SG_ SAS_Status_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM,EPAS_P,ESP,RCM,VDM + SG_ SAS_Status_AngleSafe : 23|15@0- (0.0009765625,0) [-14.5|14.5] "rad" ACM,EPAS_P,ESP,RCM,VDM + SG_ SAS_Status_Calibrated : 24|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,RCM,VDM + SG_ SAS_Status_AngleSpeedSafe : 39|14@0- (0.0078125,0) [-50|50] "rad/s" ACM,EPAS_P,ESP,RCM,VDM + SG_ SAS_StatusQ : 41|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,RCM,VDM + +BO_ 256 ACM_Status: 8 ACM + SG_ ACM_Status_Checksum : 7|8@0+ (1,0) [0|255] "-" EPAS_P,VDM + SG_ ACM_Status_Counter : 11|4@0+ (1,0) [0|15] "-" EPAS_P,VDM + SG_ ACM_Unkown1 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ ACM_FeatureStatus : 23|3@0+ (1,0) [0|7] "" EPAS_P,VDM + SG_ ACM_FaultStatus : 26|3@0+ (1,0) [0|7] "" EPAS_P,VDM + SG_ ACM_Unkown2 : 41|2@0+ (1,0) [0|3] "" XXX + +BO_ 257 ACM_AebRequest: 8 ACM + SG_ ACM_AebRequest_Checksum : 7|8@0+ (1,0) [0|255] "" ESP,VDM + SG_ ACM_AebRequest_Counter : 11|4@0+ (1,0) [0|15] "" ESP,VDM + SG_ ACM_StopRequest : 17|1@0+ (1,0) [0|1] "" ESP,VDM + SG_ ACM_FailInfo : 19|2@0+ (1,0) [0|3] "" ESP,VDM + SG_ ACM_DbsLevel : 21|2@0+ (1,0) [0|3] "" ESP,VDM + SG_ ACM_OnOffStatus : 23|2@0+ (1,0) [0|3] "" ESP,VDM + SG_ ACM_DecelRequest : 27|12@0+ (0.004885,0) [0|15.998375] "m/s^2" ESP,VDM + SG_ ACM_WarnLevel : 44|2@0+ (1,0) [0|3] "" ESP,VDM + SG_ ACM_PrefillEnableRequest : 46|1@0+ (1,0) [0|1] "" ESP,VDM + SG_ ACM_EnableRequest : 47|1@0+ (1,0) [0|1] "" ESP,VDM + +BO_ 258 ESP_AebFb: 8 ESP + SG_ ESP_AebFeedback_Checksum : 7|8@0+ (1,0) [0|255] "" ACM + SG_ ESP_AebFeedback_Counter : 11|4@0+ (1,0) [0|15] "" ACM + SG_ iB_BrakePedalApplied_Q : 14|2@0+ (1,0) [0|3] "" ACM + SG_ iB_BrakePedalApplied : 15|1@0+ (1,0) [0|1] "" ACM + SG_ ESP_DecelFeedback : 23|12@0+ (0.004885,-16) [-16|3.99919] "m/s^2" ACM + SG_ ESP_AebActive : 24|1@0+ (1,0) [0|1] "" ACM + SG_ ESP_AebAvailable : 25|1@0+ (1,0) [0|1] "" ACM + SG_ ESP_DbsActive : 26|1@0+ (1,0) [0|1] "" ACM + SG_ ESP_PrefillActiveFeedback : 27|1@0+ (1,0) [0|1] "" ACM + SG_ ESP_PrefillAvailable : 32|1@0+ (1,0) [0|1] "" ACM + SG_ ESP_DbsAvailable : 33|1@0+ (1,0) [0|1] "" ACM + +BO_ 272 ACM_SteeringControl: 8 ACM + SG_ ACM_SteeringControl_Checksum : 7|8@0+ (1,0) [0|0] "" EPAS_P + SG_ ACM_SteeringControl_Counter : 11|4@0+ (1,0) [0|0] "" EPAS_P + SG_ ACM_EacEnabled : 13|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_HapticRequired : 15|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_SteeringAngleRequest : 23|15@0+ (0.1,-1638.4) [-1638.4|1638.3] "deg" EPAS_P + +BO_ 288 ACM_lkaHbaCmd: 8 ACM + SG_ ACM_lkaHbaCmd_Checksum : 7|8@0+ (1,0) [0|255] "" EPAS_P + SG_ ACM_lkaHbaCmd_Counter : 11|4@0+ (1,0) [0|15] "" EPAS_P + SG_ ACM_lkaElkRequest : 14|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_HapticRequest : 15|1@0+ (1,0) [0|1] "" EPAS_P + SG_ ACM_lkaStrToqReq : 23|11@0+ (1,-1024) [-1024|1024] "" EPAS_P + SG_ ACM_lkaSymbolState : 26|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_lkaToiFlt : 27|1@0+ (1,0) [0|1] "" EPAS_P + SG_ ACM_lkaActToi : 28|1@0+ (1,0) [0|1] "" EPAS_P + SG_ ACM_hbaSysState : 34|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_hbaLamp : 35|1@0+ (1,0) [0|1] "" EPAS_P + SG_ ACM_slifOnOffState : 37|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_elkOnOffState : 39|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_ldwLHWarning : 43|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_lkaLaneRecogState : 45|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_hbaOnOffState : 47|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_ldwlkaOnOffState : 48|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_ldwWarnTimingState : 51|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_lkaHandsoffSoundWarning : 53|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_lkaHandsoffDisplayWarning : 55|2@0+ (1,0) [0|3] "" EPAS_P + SG_ ACM_ldwRHWarning : 58|3@0+ (1,0) [0|7] "" EPAS_P + SG_ ACM_ldwWarnTypeState : 61|3@0+ (1,0) [0|7] "" EPAS_P + +BO_ 304 RCM_IMU_LatAccYaw: 8 RCM + SG_ RCM_LateralAccelYaw_Checksum : 7|8@0+ (1,0) [0|25] "" ACM,ESP,VDM + SG_ RCM_LateralAccelYaw_Counter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM + SG_ RCM_IMU_LatAcc_Stat_SensAvail : 12|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LatAcc_Stat_Fail : 13|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LatAcc_Stat_Init : 14|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LatAcc_Stat_Startup : 15|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_Yaw_Stat_SensAvail : 16|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_Yaw_Stat_Fail : 17|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_Yaw_Stat_Init : 18|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_Yaw_Stat_Startup : 19|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LatAcc : 39|16@0+ (0.004998293,-163.784065024) [-40.961|40.961] "m/s2" ACM,ESP,VDM + SG_ RCM_IMU_Yaw : 55|16@0+ (0.0125,-409.6) [-163.85|163.85] "deg/sec" ACM,ESP,VDM + +BO_ 309 RCM_IMU_HeaveRoll: 8 RCM + SG_ RCM_HeaveRoll_Checksum : 7|8@0+ (1,0) [0|25] "" VDM + SG_ RCM_HeaveRoll_Counter : 11|4@0+ (1,0) [0|15] "" VDM + SG_ RCM_IMU_Heave : 23|16@0+ (0.004998293,-163.784065024) [-34.32328|34.32328] "m/s2" VDM + SG_ RCM_IMU_Roll : 39|16@0+ (0.0125,-409.6) [-100.0125|100.0125] "deg/sec" VDM + SG_ RCM_IMU_Roll_Stat_SensAvail : 48|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Roll_Stat_Fail : 49|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Roll_Stat_Init : 50|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Roll_Stat_Startup : 51|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Heave_Stat_SensAvail : 52|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Heave_Stat_Fail : 53|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Heave_Stat_Init : 54|1@0+ (1,0) [0|1] "" VDM + SG_ RCM_IMU_Heave_Stat_Startup : 55|1@0+ (1,0) [0|1] "" VDM + +BO_ 320 RCM_IMU_LongAcc: 8 RCM + SG_ RCM_LongAcc_Checksum : 7|8@0+ (1,0) [0|25] "" ACM,ESP,VDM + SG_ RCM_LongAcc_Counter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM + SG_ RCM_IMU_LongAcc_Sig : 39|16@0+ (0.004998293,-163.784065024) [-40.961|40.961] "m/s2" ACM,ESP,VDM + SG_ RCM_IMU_LongAcc_Stat_SensAvail : 48|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LongAcc_Stat_Fail : 49|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LongAcc_Stat_Init : 50|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ RCM_IMU_LongAcc_Stat_Startup : 51|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + +BO_ 336 VDM_PropStatus: 7 VDM + SG_ VDM_PropStatus_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM,EPAS_P,ESP,RCM + SG_ VDM_PropStatus_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM,EPAS_P,ESP,RCM + SG_ VDM_PropsnActv : 13|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,RCM + SG_ VDM_VehicleSpeedQ : 15|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,RCM + SG_ VDM_Prndl_Status : 19|4@0+ (1,0) [0|15] "" ACM,EPAS_P,ESP,RCM + SG_ VDM_Prndl_Request : 23|4@0+ (1,0) [0|15] "" ACM,EPAS_P,ESP,RCM + SG_ VDM_AcceleratorPedalPosition : 31|10@0+ (0.1,0) [0|102.3] "" ACM,EPAS_P,ESP,RCM + SG_ VDM_VehicleSpeed : 47|16@0+ (0.01,0) [0|400] "Kph" ACM,EPAS_P,ESP,RCM + +BO_ 338 VDM_OutputSignals: 8 VDM + SG_ VDM_OutputSigs_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_OutputSigs_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_LfcRequestType : 13|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_LfcActiveRequest : 14|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_BrakeLightRequest : 15|1@0+ (1,0) [0|0] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_Lfc_BrakeTorqueRequest : 23|15@0+ (2,-65534) [-65534|0] "Nm" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_StcTorqueRequest : 39|11@0+ (0.0078125,-8) [-8|7.9921875] "Nm" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_StcFault : 43|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_StcActiveRequest : 44|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_EpbRequest : 49|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_ABSOffRoadModeRequest : 50|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_HhcActiveRequest : 51|1@0+ (1,0) [0|1] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_EspPartialModeRequest : 53|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_SteeringModeRequest : 59|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM + SG_ VDM_EpasPowerMode : 61|2@0+ (1,0) [0|3] "" ACM,EPAS_P,ESP,IBM,RCM + +BO_ 352 ACM_longitudinalRequest: 5 ACM + SG_ ACM_longitudinalRequest_Checksum : 7|8@0+ (1,0) [0|255] "-" VDM + SG_ ACM_longitudinalRequest_Counter : 11|4@0+ (1,0) [0|15] "-" VDM + SG_ ACM_AccelerationRequest : 23|11@0+ (0.01,-10.24) [-10.24|10.23] "m/s^2" VDM + SG_ ACM_VehicleHoldRequired : 24|1@0+ (1,0) [0|1] "" VDM + SG_ ACM_PrndRequired : 27|3@0+ (1,0) [0|7] "" VDM + SG_ ACM_longInterfaceEnable : 37|2@0+ (1,0) [0|3] "" VDM + SG_ ACM_AccelerationRequestType : 39|2@0+ (1,0) [0|3] "" VDM + +BO_ 354 VDM_AdasSts: 8 VDM + SG_ VDM_AdasStatus_Checksum : 7|8@0+ (1,0) [0|0] "" ACM + SG_ VDM_AdasStatus_Counter : 11|4@0+ (1,0) [0|0] "" ACM + SG_ VDM_AdasDecelLimit : 17|10@0+ (0.01,0) [0|10.23] "m/s^2" ACM + SG_ VDM_AdasDriverAccelPriorityStatus : 19|2@0+ (1,0) [0|3] "" ACM + SG_ VDM_AdasFaultStatus : 23|4@0+ (1,0) [0|15] "" ACM + SG_ VDM_AdasAccelLimit : 33|10@0+ (0.01,0) [0|10.23] "m/s^2" ACM + SG_ VDM_AdasDriverModeStatus : 36|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AdasAccelRequest : 50|11@0+ (0.01,-10.24) [-10.24|10.23] "m/s^2" ACM + SG_ VDM_AdasInterfaceStatus : 52|2@0+ (1,0) [0|3] "" ACM + SG_ VDM_AdasAccelRequestAcknowledged : 54|2@0+ (1,0) [0|3] "" ACM + SG_ VDM_AdasVehicleHoldStatus : 55|1@0+ (1,0) [0|1] "" ACM + +BO_ 357 VDM_AdasStalk: 4 VDM + SG_ VDM_AdasStalk_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ACM + SG_ VDM_AdasStalk_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ACM + SG_ VDM_AdasStalkGapAdjust : 17|2@0+ (1,0) [0|3] "" ACM + SG_ VDM_AdasStalkAccCancelRes : 19|2@0+ (1,0) [0|3] "" ACM + SG_ VDM_AdasStalkAutonomyButton : 20|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AdasStalkAccEnableAdj : 23|3@0+ (1,0) [0|7] "" ACM + +BO_ 384 VDM_CGM_GW: 8 CGM + SG_ VDM_CGM_GW_Checksum : 7|8@0+ (1,0) [0|0] "" ESP,IBM + SG_ VDM_CGM_GW_Counter : 11|4@0+ (1,0) [0|0] "" ESP,IBM + SG_ CGM_TrailerPresent : 13|2@0+ (1,0) [0|3] "" ESP,IBM + SG_ CGM_DriverPresent : 15|2@0+ (1,0) [0|3] "" ESP,IBM + SG_ CGM_TimeSinceLastIgnitionOn : 23|16@0+ (1,0) [0|65535] "s" ESP,IBM + SG_ CGM_IgnSwtState : 35|4@0+ (1,0) [0|15] "" ESP,IBM + +BO_ 432 ESP_TorqueLimit_Front: 8 ESP + SG_ ESP_Torque_Front_Checksum : 7|8@0+ (1,0) [0|255] "" VDM + SG_ ESP_Torque_Front_Counter : 11|4@0+ (1,0) [0|15] "" VDM + SG_ ESP_Torque_Front_MinQ : 14|1@0+ (1,0) [0|1] "" VDM + SG_ ESP_Torque_Front_MaxQ : 15|1@0+ (1,0) [0|1] "" VDM + SG_ ESP_Torque_Front_Max : 23|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM + SG_ ESP_Torque_Front_Min : 39|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM + +BO_ 448 ESP_TorqueLimit_Rear: 8 ESP + SG_ ESP_Torque_Rear_Checksum : 7|8@0+ (1,0) [0|255] "" VDM + SG_ ESP_Torque_Rear_Counter : 11|4@0+ (1,0) [0|15] "" VDM + SG_ ESP_Torque_Rear_MinQ : 14|1@0+ (1,0) [0|1] "" VDM + SG_ ESP_Torque_Rear_MaxQ : 15|1@0+ (1,0) [0|1] "" VDM + SG_ ESP_Torque_Rear_Max : 23|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM + SG_ ESP_Torque_Rear_Min : 39|16@0+ (0.5,-16384) [-16384|16383] "Nm" VDM + +BO_ 516 RCM_ALR_Status: 8 RCM + SG_ RCM_ALR_Status_Signal : 0|2@1+ (1,0) [0|3] "" OCS + +BO_ 520 ESP_Status: 8 ESP + SG_ ESP_Status_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Status_Counter : 11|4@0+ (1,0) [0|15] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_BrakeLightActive_Q : 12|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_BrakeLightActive : 13|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Hhc_Active : 14|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Hhc_Available : 15|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Abs_OffRoad_Mode : 16|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Tsm_Active : 17|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_FaultLamp_EBD : 18|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_FaultLamp_VDC : 19|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_FaultLamp_ABS : 20|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Esp_Active : 21|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Abs_Active : 23|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Partial_Mode : 25|2@0+ (1,0) [0|3] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Dtc_Active : 26|1@0+ (1,0) [0|1] "Enum" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Vehicle_Speed_Q : 28|2@0+ (1,0) [0|3] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Lfc_Available : 30|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Hba_Active : 31|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_BrkTrq : 38|15@0+ (2,-65534) [-65534|0] "Nm" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Lfc_Active : 39|1@0+ (1,0) [0|1] "" ACM,CGM,EPAS_P,RCM,VDM + SG_ ESP_Vehicle_Speed : 55|16@0+ (0.01,0) [0|400] "kph" ACM,CGM,EPAS_P,RCM,VDM + +BO_ 521 ESP_WSpeed_Front: 8 ESP + SG_ ESP_WSpeed_Front_CRC : 7|8@0+ (1,0) [0|255] "" ACM,VDM + SG_ ESP_WSpeed_Front_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ ESP_Wheel_Speed_Left_Front_Q : 13|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Speed_Right_Front_Q : 15|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Speed_Left_Front : 23|16@0+ (0.01,0) [0|400] "kph" ACM,VDM + SG_ ESP_Wheel_Speed_Right_Front : 39|16@0+ (0.01,0) [0|400] "kph" ACM,VDM + SG_ ESP_Wheel_Dir_Right_Front : 53|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Dir_Left_Front : 55|2@0+ (1,0) [0|3] "" ACM,VDM + +BO_ 522 ESP_WSpeed_Rear: 8 ESP + SG_ ESP_WSpeed_Rear_CRC : 7|8@0+ (1,0) [0|255] "" ACM,VDM + SG_ ESP_WSpeed_Rear_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ ESP_Wheel_Speed_Left_Rear_Q : 13|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Speed_Right_Rear_Q : 15|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Speed_Left_Rear : 23|16@0+ (0.01,0) [0|400] "kph" ACM,VDM + SG_ ESP_Wheel_Speed_Right_Rear : 39|16@0+ (0.01,0) [0|400] "kph" ACM,VDM + SG_ ESP_Wheel_Dir_Right_Rear : 53|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Dir_Left_Rear : 55|2@0+ (1,0) [0|3] "" ACM,VDM + +BO_ 523 ESP_Wheel_Pulse_Veh: 8 ESP + SG_ ESP_Wheel_Pulse_CRC : 7|8@0+ (1,0) [0|255] "" ACM,VDM + SG_ ESP_Wheel_Pulse_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ ESP_Wheel_Pulse_Left_Front : 23|8@0+ (1,0) [0|255] "Pulse" ACM,VDM + SG_ ESP_Wheel_Pulse_Left_Rear : 31|8@0+ (1,0) [0|255] "Pulse" ACM,VDM + SG_ ESP_Wheel_Pulse_Right_Front : 39|8@0+ (1,0) [0|255] "Pulse" ACM,VDM + SG_ ESP_Wheel_Pulse_Right_Rear : 47|8@0+ (1,0) [0|255] "Pulse" ACM,VDM + SG_ ESP_Wheel_Pulse_Right_Front_Q : 49|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Pulse_Right_Rear_Q : 51|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Pulse_Left_Rear_Q : 53|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_Wheel_Pulse_Left_Front_Q : 55|2@0+ (1,0) [0|3] "" ACM,VDM + +BO_ 524 ESP_Brake_Pressure: 8 ESP + SG_ ESP_BrakeP_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,RCM,VDM + SG_ ESP_BrakeP_Message_Counter : 11|4@0+ (1,0) [0|15] "" ACM,RCM,VDM + SG_ ESP_BrakePressure_RF_Q : 13|2@0+ (1,0) [0|3] "" ACM,RCM,VDM + SG_ ESP_BrakePressure_LF_Q : 15|2@0+ (1,0) [0|3] "" ACM,RCM,VDM + SG_ ESP_BrakePressure_LF : 23|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM + SG_ ESP_BrakePressure_LR : 31|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM + SG_ ESP_BrakePressure_RF : 39|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM + SG_ ESP_BrakePressure_RR : 47|8@0+ (1,0) [0|255] "bar" ACM,RCM,VDM + SG_ ESP_MasterCyl_Pressure : 55|10@0+ (0.25,0) [0|255] "bar" ACM,RCM,VDM + SG_ ESP_MasterCyl_Pressure_Q : 57|2@0+ (1,0) [0|3] "" ACM,RCM,VDM + SG_ ESP_BrakePressure_RR_Q : 59|2@0+ (1,0) [0|3] "" ACM,RCM,VDM + SG_ ESP_BrakePressure_LR_Q : 61|2@0+ (1,0) [0|3] "" ACM,RCM,VDM + +BO_ 529 VDM_Torque_Front: 8 VDM + SG_ VDM_Torque_Front_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ESP + SG_ VDM_Torque_Front_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ESP + SG_ VDM_Torque_Front_Max : 23|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_Torque_Front_Min : 26|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_Torque_Front_MaxQ : 28|1@0+ (1,0) [0|1] "" ESP + SG_ VDM_OutputTorqueFront : 47|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_DriverIntendedTorqueFront : 50|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_OutputTorqueFrontQ : 51|1@0+ (1,0) [0|1] "" ESP + SG_ VDM_Torque_Front_MinQ : 52|1@0+ (1,0) [0|1] "" ESP + +BO_ 530 VDM_Torque_Rear: 8 VDM + SG_ VDM_Torque_Rear_Checksum : 7|8@0+ (1,0) [0|255] "Unitless" ESP + SG_ VDM_Torque_Rear_Counter : 11|4@0+ (1,0) [0|15] "Unitless" ESP + SG_ VDM_Torque_Rear_Max : 23|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_Torque_Rear_Min : 26|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_Torque_Rear_MaxQ : 28|1@0+ (1,0) [0|1] "" ESP + SG_ VDM_OutputTorqueRear : 47|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_DriverIntendedTorque_Rear : 50|11@0+ (1,-1023) [-1023|1024] "Nm" ESP + SG_ VDM_OutputTorqueRearQ : 51|1@0+ (1,0) [0|1] "" ESP + SG_ VDM_Torque_Rear_MinQ : 52|1@0+ (1,0) [0|1] "" ESP + +BO_ 565 IndicatorLights: 8 XXX + SG_ checksum : 0|8@1+ (1,0) [0|255] "" XXX + SG_ counter : 8|4@1+ (1,0) [0|15] "" XXX + SG_ RearDriverDoor : 24|2@0+ (1,0) [0|3] "" XXX + SG_ FrontPassengerDoor : 26|2@0+ (1,0) [0|3] "" XXX + SG_ DriverDoor : 28|2@0+ (1,0) [0|3] "" XXX + SG_ RearPassengerDoor : 38|2@0+ (1,0) [0|3] "" XXX + SG_ TurnLightLeft : 40|2@0+ (1,0) [0|3] "" XXX + SG_ TurnLightRight : 54|2@0+ (1,0) [0|3] "" XXX + +BO_ 592 VDM_EcasStatus: 8 VDM + SG_ VDM_EcasHeightFL : 7|8@0- (1,0) [-128|127] "mm" ACM + SG_ VDM_EcasHeightFR : 15|8@0- (1,0) [-128|127] "mm" ACM + SG_ VDM_EcasHeightRL : 23|8@0- (1,0) [-128|127] "mm" ACM + SG_ VDM_EcasHeightRR : 31|8@0- (1,0) [-128|127] "mm" ACM + +BO_ 789 BCM_Status: 8 VDM + SG_ BCM_AmbientAirTemperature : 15|8@0- (1,0) [-60|100] "degC" ESP + +BO_ 801 SCCM_WheelTouch: 7 SCCM + SG_ SCCM_WheelTouch_Checksum : 7|8@0+ (1,0) [0|255] "" XXX + SG_ SCCM_WheelTouch_Counter : 11|4@0+ (1,0) [0|15] "" XXX + SG_ SCCM_WheelTouch_HandsOn : 21|1@0+ (1,0) [0|1] "" XXX + SG_ SETME_X52 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ SCCM_WheelTouch_CapacitiveValue : 32|12@1+ (1,0) [0|4095] "" XXX + +BO_ 811 ESP_EpbStatus: 8 ESP + SG_ ESP_EpbStatus_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,VDM + SG_ ESP_EpbStatus_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ ESP_EpbAvailable : 12|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ ESP_EpbServiceMode : 13|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ ESP_EpbWarningLamp : 15|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ ESP_EpbMessageDisplayRequest : 20|5@0+ (1,0) [0|30] "" ACM,VDM + SG_ ESP_EpbStatus : 23|3@0+ (1,0) [0|7] "" ACM,VDM + SG_ ESP_EpbClampForce : 31|16@0+ (1,0) [0|65534] "N" ACM,VDM + SG_ ESP_EpbFunctionLamp : 47|2@0+ (1,0) [0|3] "" ACM,VDM + +BO_ 826 RCM_Status: 8 RCM + SG_ RCM_IMU_LongAcc_Checksum : 7|8@0+ (1,0) [0|25] "" ACM,ESP,VDM + SG_ RCM_IMU_LongAcc_MSG_Counter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM + SG_ RCM_Status_DETECT_CRUSH : 21|3@0+ (1,0) [0|7] "" ACM,ESP,VDM + SG_ RCM_Status_IND_WARN_RCM : 23|2@0+ (1,0) [0|3] "" ACM,ESP,VDM + SG_ RCM_Status_IND_ACT_RCM_PASS : 25|2@0+ (1,0) [0|3] "" ACM,ESP,VDM + SG_ RCM_Status_IND_WARN_BELT_DRIVER : 27|2@0+ (1,0) [0|3] "" ACM,ESP,VDM + SG_ RCM_Status_IND_WARN_BELT_PASS : 31|2@0+ (1,0) [0|3] "" ACM,ESP,VDM + +BO_ 848 EPASP_Status: 4 EPAS_P + SG_ EPAS_Ecu1Status_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,VDM + SG_ EPAS_Ecu1Status_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ EPAS_Ecu1EacSts : 14|3@0+ (1,0) [0|7] "" ACM,VDM + SG_ EPAS_Ecu1PowerMode : 18|3@0+ (1,0) [0|7] "" ACM,VDM + SG_ EPAS_Ecu1Role : 20|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ EPAS_Ecu1State : 31|4@0+ (1,0) [0|15] "" ACM,VDM + +BO_ 864 EPASS_Status: 4 VDM + SG_ EPASS_Ecu2Status_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,EPAS_P + SG_ EPASS_Ecu2Status_Counter : 11|4@0+ (1,0) [0|15] "" ACM,EPAS_P + SG_ EPAS_Ecu2EacSts : 14|3@0+ (1,0) [0|7] "" ACM,EPAS_P + SG_ EPAS_Ecu2PowerMode : 18|3@0+ (1,0) [0|7] "" ACM,EPAS_P + SG_ EPASS_Ecu2Role : 20|2@0+ (1,0) [0|3] "" ACM,EPAS_P + SG_ EPASS_Ecu2State : 31|4@0+ (1,0) [0|15] "" ACM,EPAS_P + +BO_ 880 ACM_tsrCmd: 8 ACM + SG_ ACM_tsrCmd_Checksum : 7|8@0+ (1,0) [0|0] "" Vector_XXX + SG_ ACM_tsrCmd_Counter : 11|4@0+ (1,0) [0|15] "" Vector_XXX + SG_ ACM_tsrConInfoStaCon2 : 19|4@0+ (1,0) [0|15] "" Vector_XXX + SG_ ACM_tsrConInfoStaCon1 : 23|4@0+ (1,0) [0|15] "" Vector_XXX + SG_ ACM_tsrSpdDisClsMain : 31|8@0+ (1,0) [0|255] "" Vector_XXX + SG_ ACM_tsrSpdDisCluCon1 : 39|8@0+ (1,0) [0|255] "" Vector_XXX + SG_ ACM_tsrSpdDisCluCon2 : 47|8@0+ (1,0) [0|255] "" Vector_XXX + SG_ ACM_tsrSpdDisCluConM : 55|8@0+ (1,0) [0|255] "" Vector_XXX + SG_ ACM_tsrAddInfoDisplay : 59|2@0+ (1,0) [0|3] "" Vector_XXX + SG_ ACM_tsrOvrlapSignDis : 61|2@0+ (1,0) [0|3] "" Vector_XXX + SG_ ACM_tsrStatus : 63|2@0+ (1,0) [0|3] "" Vector_XXX + +BO_ 896 EPAS_SystemStatus: 5 EPAS_P + SG_ EPAS_SytemStatus_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,VDM + SG_ EPAS_SystemStatus_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ EPAS_SteeringReduced : 12|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ EPAS_SteeringFault : 13|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ EPAS_SteeringMode : 15|2@0+ (1,0) [0|3] "" ACM,VDM + SG_ EPAS_TorsionBarTorque : 23|12@0+ (0.01,-20.5) [-20.49|20.43] "" ACM,VDM + SG_ EPAS_StcFault : 32|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ EPAS_StcActive : 33|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ EPAS_StcUnavailable : 34|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ H_CAN_EPSS_ToiFlt : 35|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ H_CAN_EPSS_ToiActive : 36|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ H_CAN_EPS_ToiUnavailable : 37|1@0+ (1,0) [0|1] "" ACM,VDM + SG_ EPAS_HandsOnLevel : 39|2@0+ (1,0) [0|3] "" ACM,VDM + +BO_ 907 ESPiB1: 6 ESP + SG_ ESPiB1_Checksum : 7|8@0+ (1,0) [0|255] "" IBM + SG_ ESPiB1_AliveCounter : 11|4@0+ (1,0) [0|15] "" IBM + SG_ ESPiB1_IgnitionOn : 12|1@0+ (1,0) [0|1] "" IBM + SG_ ESPiB1_VehicleSpeed_Q : 15|2@0+ (1,0) [0|3] "" IBM + SG_ ESPiB1_VehicleSpeed : 23|8@0+ (0.4,0) [0|100] "m/s" IBM + +BO_ 908 ESPiB2: 4 ESP + SG_ ESPiB2_Checksum : 7|8@0+ (1,0) [0|255] "" IBM + SG_ ESPiB2_Alive_Counter : 11|4@0+ (1,0) [0|15] "" IBM + SG_ ESPiB2_qTargetExternal_Q : 15|2@0+ (1,0) [0|3] "" IBM + SG_ ESPiB2_qTargetExternal : 23|16@0+ (0.0078125,-252) [-252|252] "ml/s" IBM + +BO_ 909 ESPiB3: 7 ESP + SG_ ESPiB3_Checksum : 7|8@0+ (1,0) [0|255] "" IBM + SG_ ESPiB3_AliveCounter : 11|4@0+ (1,0) [0|15] "" IBM + SG_ ESPiB3_ABSActive : 12|1@0+ (1,0) [0|1] "" IBM + SG_ ESPiB3_ForceBlendingActive : 15|2@0+ (1,0) [0|3] "" IBM + SG_ ESPiB3_pMcVirtual : 23|10@0+ (0.25,0) [0|250] "bar" IBM + SG_ ESPiB3_pMcVirtual_Q : 29|2@0+ (1,0) [0|3] "" IBM + SG_ ESPiB3_pForceBlendingMC : 39|10@0+ (0.25,0) [0|250] "" IBM + SG_ ESPiB3_pMC1 : 43|10@0+ (0.3,-30) [-30|276.6] "bar" IBM + SG_ ESPiB3_pForceBlendingMC_Q : 45|2@0+ (1,0) [0|3] "" IBM + SG_ ESPiB3_pMC1_Q : 49|2@0+ (1,0) [0|3] "" IBM + +BO_ 910 iBESP1: 7 IBM + SG_ iBESP1_Checksum : 7|8@0+ (1,0) [0|255] "" ESP,VDM + SG_ iBESP1_AliveCounter : 11|4@0+ (1,0) [0|15] "" ESP,VDM + SG_ iBESP1_ExtReqPrio : 12|1@0+ (1,0) [0|1] "" ESP,VDM + SG_ iBESP1_ExtReqStatus : 15|3@0+ (1,0) [0|7] "" ESP,VDM + SG_ iBESP1_sOutputRodDriver : 23|12@0+ (0.015625,-5) [-5|47] "mm" ESP,VDM + SG_ iBESP1_sOutputRodDriver_Q : 27|2@0+ (1,0) [0|3] "" ESP,VDM + SG_ iBESP1_sOutputRodAct : 39|12@0+ (0.015625,-5) [-5|47] "mm" ESP,VDM + SG_ iBESP1_sOutputRodAct_Q : 43|2@0+ (1,0) [0|3] "" ESP,VDM + +BO_ 911 iBESP2: 6 IBM + SG_ iBESP2_Checksum : 7|8@0+ (1,0) [0|255] "" ACM,ESP,VDM + SG_ iBESP2_AliveCounter : 11|4@0+ (1,0) [0|15] "" ACM,ESP,VDM + SG_ iBESP2_CompatibilityIndex : 15|4@0+ (1,0) [0|15] "" ACM,ESP,VDM + SG_ iBESP2_pRunout_Q : 17|2@0+ (1,0) [0|3] "" ACM,ESP,VDM + SG_ iBESP2_iBDiagActive : 19|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ iBESP2_HbcRequest : 20|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ iBESP2_BrakePedalApplied_Q : 22|2@0+ (1,0) [0|3] "" ACM,ESP,VDM + SG_ iBESP2_BrakePedalApplied : 23|1@0+ (1,0) [0|1] "" ACM,ESP,VDM + SG_ iBESP2_pRunout : 31|8@0+ (1,0) [0|250] "bar" ACM,ESP,VDM + SG_ iBESP2_RprMode : 39|3@0+ (1,0) [0|7] "" ACM,ESP,VDM + +BO_ 912 EPAS_AdasStatus: 7 EPAS_P + SG_ EPAS_AdasStatus_Checksum : 7|8@0+ (1,0) [0|0] "" ACM,VDM + SG_ EPAS_AdasStatus_Counter : 11|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ EPAS_SteeringAngleSpeed : 23|14@0+ (0.1,-819) [-819|819.3] "deg/s" ACM,VDM + SG_ EPAS_EacStatus : 35|3@0+ (1,0) [0|7] "" ACM,VDM + SG_ EPAS_EacErrorCode : 39|4@0+ (1,0) [0|15] "" ACM,VDM + SG_ EPAS_InternalSas : 47|14@0+ (0.1,-819.2) [-819.2|819] "deg" ACM,VDM + SG_ EPAS_InternalSasQ : 49|1@0+ (1,0) [0|1] "" ACM,VDM + +BO_ 929 VDM_ModSw_DrvModPosSts_GW: 8 VDM + SG_ VDM_AchDriveModeRequestConfirm : 0|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AchDriveModeRequestPullRearw : 1|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AchDriveModeRequestPushDown : 2|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AchDriveModeRequestPushForwa : 3|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AchDriveModeRequestPushUp : 4|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AchDriveModeRequestRest : 5|1@0+ (1,0) [0|1] "" ACM + SG_ VDM_AchDriveMode4x4 : 20|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveMode : 23|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeAirSuspension : 28|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeAbs : 31|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeDrivability : 36|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeDamping : 39|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeRollControl : 44|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeEsp : 47|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeEpas : 52|3@0+ (1,0) [0|7] "" ACM + SG_ VDM_AchDriveModeTcs : 55|3@0+ (1,0) [0|7] "" ACM + +BO_ 1024 VehicleConfig: 7 CGM + SG_ VCM_VehicleType : 7|8@0+ (1,0) [0|255] "" ACM,ESP + SG_ VCM_HandOfDrive : 9|1@0+ (1,0) [0|1] "" ACM,ESP + SG_ VCM_BatterySize : 15|6@0+ (1,0) [0|63] "" ACM,ESP + SG_ VCM_Market : 23|8@0+ (1,0) [0|255] "" ACM,ESP + +BO_ 1265 Cluster: 6 XXX + SG_ Cluster_VehicleSpeed : 8|8@1+ (1,0) [0|255] "mph" XXX + +BO_ 1280 RCM_Dtc: 8 RCM + SG_ RCM_Dtc_Checksum : 7|8@0+ (1,0) [0|25] "" VDM + SG_ RCM_Dtc_Counter : 11|4@0+ (1,0) [0|15] "" VDM + SG_ RCM_Dtc_HighByte : 23|8@0+ (1,0) [0|255] "" VDM + SG_ RCM_Dtc_MidByte : 31|8@0+ (1,0) [0|255] "" VDM + SG_ RCM_Dtc_LowByte : 39|8@0+ (1,0) [0|255] "" VDM + SG_ RCM_Dtc_Stat_Bit : 47|8@0+ (1,0) [0|255] "" VDM + SG_ RCM_Dtc_Number : 55|8@0+ (1,0) [0|255] "" VDM + +BO_ 1281 RCM_SerialIdentifier: 8 RCM + SG_ RCM_SerialNumber : 7|64@0+ (1,0) [0|1.84467440737096e+19] "" ESP,VDM + +BO_ 1328 Dummy_ACM_PrimaryActuatorCAN: 8 ACM + SG_ Dummy_ACM_PrimaryActuatorCAN : 7|8@0+ (1,0) [0|255] "" TestTool + +BO_ 1329 Dummy_CGM_PrimaryActuatorCAN: 1 CGM + SG_ Dummy_CGM_PrimaryActuatorCAN : 7|8@0+ (1,0) [0|255] "" TestTool + +BO_ 1330 Dummy_VDM_PrimaryActuatorCAN: 1 VDM + SG_ Dummy_VDM_PrimaryActuatorCAN : 7|8@0+ (1,0) [0|255] "" TestTool + +BO_ 1535 DoorStatus: 8 XXX + SG_ DoorOpen : 8|1@0+ (1,0) [0|1] "" XXX + +BO_ 1545 XCP_Cmd_VDM: 8 TestTool + +BO_ 1609 XCP_Resp_VDM: 8 VDM + +BO_ 1635 XCP_Cmd_EPAS_P: 8 TestTool + +BO_ 1636 XCP_Daq_EPAS_P: 8 EPAS_P + +BO_ 1637 XCP_Resp_EPAS_P: 8 EPAS_P + +BO_ 1640 OCS_PassSeatInfo: 8 OCS + SG_ OCS_Checksum : 0|8@1+ (1,0) [0|255] "-" RCM + SG_ OCS_Counter : 8|4@1+ (1,0) [0|15] "-" RCM + SG_ OCS_FrontPassClass : 16|4@1+ (1,0) [0|15] "" RCM + SG_ OCS_FrontPassClassValid : 20|1@1+ (1,0) [0|1] "" RCM + SG_ OCS_FrontPassFaultStatus : 21|2@1+ (1,0) [0|3] "" RCM + SG_ OCS_Reserved_1 : 23|1@1+ (1,0) [0|1] "" RCM + SG_ OCS_FrontPassSBRStatus : 24|4@1+ (1,0) [0|15] "" RCM + SG_ OCS_OperatingMode : 28|4@1+ (1,0) [0|15] "" RCM + SG_ OCS_Reserved_2 : 56|8@1+ (1,0) [0|255] "" RCM + +BO_ 1705 XCP_Daq_VDM: 8 VDM + +BO_ 1800 Diag_PhysReq_ACM_PrimaryActuator: 8 TestTool + +BO_ 1843 Diag_PhysReq_EPAS_P_PrimaryActua: 8 TestTool + +BO_ 1844 Diag_PhysReq_RCM_PrimaryActuator: 8 TestTool + +BO_ 1845 Diag_PhysReq_ESP_PrimaryActuator: 8 TestTool + +BO_ 1846 Diag_PhysReq_IBM_PrimaryActuator: 8 TestTool + +BO_ 1864 Diag_PhysResp_ACM_PrimaryActuato: 8 ACM + +BO_ 1907 Diag_PhysResp_EPAS_P_PrimaryActu: 8 EPAS_P + +BO_ 1908 Diag_PhysResp_RCM_PrimaryActuato: 8 RCM + +BO_ 1909 Diag_PhysResp_ESP_PrimaryActuato: 8 ESP + +BO_ 1910 Diag_PhysResp_IBM_PrimaryActuato: 8 IBM + +CM_ BO_ 64 "External steering angle sensor message."; +CM_ BO_ 801 "Not a reference message. Suspected ECU source is SCCM (Steering Column Control Module). Used by ACM to show hold wheel message on ACC engagement."; +CM_ SG_ 64 SAS_Status_Checksum "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Checksum for steering wheel sensor data."; +CM_ SG_ 64 SAS_Status_Counter "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Counter value for steering wheel sensor data."; +CM_ SG_ 64 SAS_Status_AngleSafe "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel"; +CM_ SG_ 64 SAS_Status_AngleSpeedSafe "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Steering angle speed with steering wheel rotation direction. Turning the steering wheel left (counterclockwise) is represented by positive values and"; +CM_ SG_ 64 SAS_StatusQ "Actual steering wheel angle from the actual centre position of the steering wheel. The signal value is a signed value from zero (at centre steering wheel position) where a left turn (counterclockwise from steering wheel centre position) is represented by positive values and right turn (clockwise from steering wheel centre position) will have negative value. Qf for steering wheel sensor information"; +CM_ SG_ 256 ACM_Status_Checksum "Checksum signal for frame"; +CM_ SG_ 256 ACM_Status_Counter "Message counter signal for frame"; +CM_ SG_ 256 ACM_FeatureStatus "Current active ADAS feature"; +CM_ SG_ 256 ACM_FaultStatus "Reason for ACM fault"; +CM_ SG_ 257 ACM_AebRequest_Checksum "J1850"; +CM_ SG_ 257 ACM_AebRequest_Counter "Message Counter"; +CM_ SG_ 257 ACM_StopRequest "AEB Stop Request subsequent to AEB event"; +CM_ SG_ 257 ACM_FailInfo "AEB System Failure flags"; +CM_ SG_ 257 ACM_DbsLevel "Dynamic Braking Support (DBS) Level"; +CM_ SG_ 257 ACM_OnOffStatus "AEB System On/Off Status"; +CM_ SG_ 257 ACM_DecelRequest "AEB Target Deceleration command"; +CM_ SG_ 257 ACM_WarnLevel "AEB Warning Level"; +CM_ SG_ 257 ACM_PrefillEnableRequest "AEB Pre-fill Enable Request"; +CM_ SG_ 257 ACM_EnableRequest "AEB Enable Request"; +CM_ SG_ 258 ESP_AebFeedback_Checksum "J1850 Checksum"; +CM_ SG_ 258 ESP_AebFeedback_Counter "Message Counter"; +CM_ SG_ 258 iB_BrakePedalApplied_Q "Description: Qualifier for iBESP2_BrakePedalApplied signal"; +CM_ SG_ 258 iB_BrakePedalApplied "Description: Indicates whether the driver operates the brake pedal. Only active when the driver brakes, not when an external brake command implemented on iB + +Note: +1.Needed for HBB and HBC + +2. Monitoring for pMC (BSM)"; +CM_ SG_ 258 ESP_DecelFeedback "AEB Decel Feedback"; +CM_ SG_ 258 ESP_AebActive "AEB Active"; +CM_ SG_ 258 ESP_AebAvailable "AEB Available"; +CM_ SG_ 258 ESP_DbsActive "DBS Active"; +CM_ SG_ 258 ESP_PrefillActiveFeedback "Prefill Active Feedback"; +CM_ BO_ 272 "External steering angle control message for EPAS."; +CM_ SG_ 272 ACM_SteeringControl_Checksum "Checksum for DAS_steeringControl message. Refer to AUTOSAR E2E library Profile 1."; +CM_ SG_ 272 ACM_SteeringControl_Counter "Message counter for DAS_steeringControl message. It counts from 0 to 14 and rolls back to 0 after reaching14. Refer to AUTOSAR E2E library Profile 1."; +CM_ SG_ 272 ACM_EacEnabled "External angle control type for EPAS."; +CM_ SG_ 272 ACM_HapticRequired "External angle control type for EPAS."; +CM_ SG_ 272 ACM_SteeringAngleRequest "External angle control request for EPAS"; +CM_ SG_ 304 RCM_IMU_LatAcc "Inertial Measurement Unit Lateral Acceleration Primary"; +CM_ SG_ 320 RCM_IMU_LongAcc_Sig "Inertial Measurement Unit Longitudinal Accleration Primary"; +CM_ SG_ 338 VDM_EpbRequest "Apply and release request (EVIC, Shift to From Park/Stalk Switch Input)"; +CM_ SG_ 338 VDM_EpasPowerMode "EPAS power mode request."; +CM_ SG_ 352 ACM_longitudinalRequest_Checksum "Checksum signal for frame"; +CM_ SG_ 352 ACM_longitudinalRequest_Counter "Message counter signal for frame"; +CM_ SG_ 352 ACM_AccelerationRequest "Acceleration Request command from the ACM"; +CM_ SG_ 352 ACM_VehicleHoldRequired "Vehicle hold request flag"; +CM_ SG_ 352 ACM_PrndRequired "Drive state Request command from the ACM"; +CM_ SG_ 352 ACM_longInterfaceEnable "Acceleration Interface Enable Request from the ACM"; +CM_ SG_ 352 ACM_AccelerationRequestType "Acceleration Request type(positive/negative) from the ACM"; +CM_ SG_ 354 VDM_AdasStatus_Checksum "VDM_AdasSts message j1850 checksum."; +CM_ SG_ 354 VDM_AdasStatus_Counter "VDM_AdasSts message counter."; +CM_ SG_ 354 VDM_AdasFaultStatus "Fault status of ADAS requests from VDM."; +CM_ SG_ 354 VDM_AdasDriverModeStatus "Signal which describes who is commanding the torque - Human or ADAS"; +CM_ SG_ 354 VDM_AdasAccelRequestAcknowledged "An acknowleddge signal to the ADAS system to show that TQM is honoring their request"; +CM_ SG_ 432 ESP_Torque_Front_MinQ "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 432 ESP_Torque_Front_MaxQ "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 432 ESP_Torque_Front_Max "ESP intervention, ESP tractive torque limit per axle."; +CM_ SG_ 432 ESP_Torque_Front_Min "ESP intervention, ESP regen torque limit per axle."; +CM_ SG_ 448 ESP_Torque_Rear_Checksum "J1850 Checksum"; +CM_ SG_ 448 ESP_Torque_Rear_Counter "Message Counter"; +CM_ SG_ 448 ESP_Torque_Rear_MinQ "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 448 ESP_Torque_Rear_MaxQ "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 448 ESP_Torque_Rear_Max "ESP intervention, ESP tractive torque limit per axle."; +CM_ SG_ 448 ESP_Torque_Rear_Min "ESP intervention, ESP regen torque limit per axle."; +CM_ SG_ 520 ESP_Status_Checksum "J1850 Checksum"; +CM_ SG_ 520 ESP_Status_Counter "Message Counter"; +CM_ SG_ 520 ESP_BrakeLightActive_Q "Indication of whether ESP_BrakeLightActive signal is valid"; +CM_ SG_ 520 ESP_BrakeLightActive "ESP Request to Activate Rear Brake Lamps"; +CM_ SG_ 520 ESP_Hhc_Active "HHC Active"; +CM_ SG_ 520 ESP_Hhc_Available "HHC Available"; +CM_ SG_ 520 ESP_Tsm_Active "Trailer Sway Mitigation Active Flag"; +CM_ SG_ 520 ESP_FaultLamp_EBD "ESP request to display ABS-TC Fault Lamp"; +CM_ SG_ 520 ESP_FaultLamp_VDC "ESP request to display ABS/ESP Fault Lamp"; +CM_ SG_ 520 ESP_FaultLamp_ABS "ESP request to display ABS Fault Lamp"; +CM_ SG_ 520 ESP_Esp_Active "Vehicle Stability Control is actively managing a stability event"; +CM_ SG_ 520 ESP_Abs_Active "Anti-Lock Brakes is actively working to prevent the brakes from locking up"; +CM_ SG_ 520 ESP_Partial_Mode "ESP current PATA mode"; +CM_ SG_ 520 ESP_Dtc_Active "Drag Torque Control is actively requesting torque."; +CM_ SG_ 520 ESP_Vehicle_Speed_Q "Indication of whether ESP_VehicleSpeed signal is valid"; +CM_ SG_ 520 ESP_Lfc_Available "LFC Available"; +CM_ SG_ 520 ESP_Hba_Active "HBA Active"; +CM_ SG_ 520 ESP_BrkTrq "ESP Brake Torque"; +CM_ SG_ 520 ESP_Lfc_Active "LFC Active"; +CM_ SG_ 520 ESP_Vehicle_Speed "ESP calculated vehicle speed. Average of front wheels on rear wheel drive vehicles. Average of all four wheels on dual motor vehicles."; +CM_ SG_ 521 ESP_WSpeed_Front_CRC "J1850 Checksum"; +CM_ SG_ 521 ESP_WSpeed_Front_Message_Counter "Message Counter"; +CM_ SG_ 521 ESP_Wheel_Speed_Left_Front_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 521 ESP_Wheel_Speed_Right_Front_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 521 ESP_Wheel_Speed_Left_Front "Wheel Speed Left Front"; +CM_ SG_ 521 ESP_Wheel_Speed_Right_Front "Wheel Speed Right Front"; +CM_ SG_ 521 ESP_Wheel_Dir_Right_Front "Wheel Rotation Direction Right Front"; +CM_ SG_ 521 ESP_Wheel_Dir_Left_Front "Wheel Rotation Direction Left Front"; +CM_ SG_ 522 ESP_WSpeed_Rear_CRC "J1850 Checksum"; +CM_ SG_ 522 ESP_WSpeed_Rear_Message_Counter "Message Counter"; +CM_ SG_ 522 ESP_Wheel_Speed_Left_Rear_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 522 ESP_Wheel_Speed_Right_Rear_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 522 ESP_Wheel_Speed_Left_Rear "Wheel Speed Left Rear"; +CM_ SG_ 522 ESP_Wheel_Speed_Right_Rear "Wheel Speed Right Rear"; +CM_ SG_ 522 ESP_Wheel_Dir_Right_Rear "Wheel Rotation Direction Right Rear"; +CM_ SG_ 522 ESP_Wheel_Dir_Left_Rear "Wheel Rotation Direction Left Rear"; +CM_ SG_ 523 ESP_Wheel_Pulse_CRC "J1850 Checksum"; +CM_ SG_ 523 ESP_Wheel_Pulse_Message_Counter "Message Counter"; +CM_ SG_ 523 ESP_Wheel_Pulse_Left_Front "Wheel Pulse Left Front"; +CM_ SG_ 523 ESP_Wheel_Pulse_Left_Rear "Wheel Pule Left Rear"; +CM_ SG_ 523 ESP_Wheel_Pulse_Right_Front "Wheel Pulse Right Front"; +CM_ SG_ 523 ESP_Wheel_Pulse_Right_Rear "Wheel Pulse Right Rear"; +CM_ SG_ 523 ESP_Wheel_Pulse_Right_Front_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 523 ESP_Wheel_Pulse_Right_Rear_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 523 ESP_Wheel_Pulse_Left_Rear_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 523 ESP_Wheel_Pulse_Left_Front_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 524 ESP_BrakeP_Checksum "J1850 Checksum"; +CM_ SG_ 524 ESP_BrakeP_Message_Counter "Message Counter"; +CM_ SG_ 524 ESP_BrakePressure_RF_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 524 ESP_BrakePressure_LF_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 524 ESP_BrakePressure_LF "Brake Pressure Left Front"; +CM_ SG_ 524 ESP_BrakePressure_LR "Brake Pressure Left Rear"; +CM_ SG_ 524 ESP_BrakePressure_RF "Brake Pressure Right Front"; +CM_ SG_ 524 ESP_BrakePressure_RR "Brake Pressure Right Rear"; +CM_ SG_ 524 ESP_MasterCyl_Pressure "Master Cyclinder Brake Pressure"; +CM_ SG_ 524 ESP_MasterCyl_Pressure_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 524 ESP_BrakePressure_RR_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 524 ESP_BrakePressure_LR_Q "Indication of whether signal with corresponding name is valid"; +CM_ SG_ 529 VDM_OutputTorqueFront "Output torque which is currently provided by the electric machine"; +CM_ SG_ 529 VDM_DriverIntendedTorqueFront "Driver Requested Torque pre ESP limits being applied"; +CM_ SG_ 530 VDM_OutputTorqueRear "Output torque which is currently provided by the electric machine"; +CM_ SG_ 530 VDM_DriverIntendedTorque_Rear "Driver Requested Torque pre ESP limits being applied"; +CM_ SG_ 592 VDM_EcasHeightFL "Change in ride height, with zero referenced to normal/design ride height"; +CM_ SG_ 592 VDM_EcasHeightFR "Change in ride height, with zero referenced to normal/design ride height"; +CM_ SG_ 592 VDM_EcasHeightRL "Change in ride height, with zero referenced to normal/design ride height"; +CM_ SG_ 592 VDM_EcasHeightRR "Change in ride height, with zero referenced to normal/design ride height"; +CM_ SG_ 811 ESP_EpbStatus_Checksum "J1850 Checksum"; +CM_ SG_ 811 ESP_EpbStatus_Counter "Message Counter"; +CM_ SG_ 811 ESP_EpbAvailable "EPB Availability. Shows the availability of the EPB function."; +CM_ SG_ 811 ESP_EpbServiceMode "Indication whether EPB is in service mode."; +CM_ SG_ 811 ESP_EpbWarningLamp "Failure Driver Lamp indication for EPB."; +CM_ SG_ 811 ESP_EpbMessageDisplayRequest "EPB text message"; +CM_ SG_ 811 ESP_EpbStatus "Current EPB actuator state."; +CM_ SG_ 811 ESP_EpbClampForce "Currently applied clamp force of EPB."; +CM_ SG_ 811 ESP_EpbFunctionLamp "Driver Lamp indication for EPB (LED on button)."; +CM_ BO_ 848 "Forwarded Message from EPAS Primary to Secondary ECU via Public CAN."; +CM_ BO_ 864 "Forwarded Message from EPAS Secondary to Primary ECU via Public CAN ."; +CM_ BO_ 896 "EPAS status info."; +CM_ SG_ 896 EPAS_SytemStatus_Checksum "Checksum for EPAS_sysStatus message. Refer to AUTOSAR E2E library Profile 1."; +CM_ SG_ 896 EPAS_SystemStatus_Counter "Message counter for EPAS_sysStatus message. It counts from 0 to 14 and rolls back to 0 after reaching14. Refer to AUTOSAR E2E library Profile 1."; +CM_ SG_ 896 EPAS_SteeringReduced "Power steering is functional, but reduced."; +CM_ SG_ 896 EPAS_SteeringFault "Power steering is not-available."; +CM_ SG_ 896 EPAS_SteeringMode "ESP current PATA mode"; +CM_ BO_ 907 "Basic communication ESP iBooster"; +CM_ SG_ 907 ESPiB1_Checksum "J1850 Checksum"; +CM_ SG_ 907 ESPiB1_AliveCounter "Message Counter"; +CM_ SG_ 907 ESPiB1_IgnitionOn "Description: Indicates whether the key is turned or not in the car + +Note: Used in PostRun calculation in iBooster"; +CM_ SG_ 907 ESPiB1_VehicleSpeed_Q "Description: Qualifier of the signal : ESPiB1_VehicleSpeed_Q + +Note: Robert Bosch Standard qualifier"; +CM_ SG_ 907 ESPiB1_VehicleSpeed "Description: Averaged wheel speed (signal in m/s on CAN but monitored in km/h in dbc) + +Note: +for standstill detection in iBooster + +1. For HEV function in iBoosterhev + +2. For EBR +3. Logic for Pressure Reduction"; +CM_ SG_ 908 ESPiB2_Checksum "J1850 Checksum"; +CM_ SG_ 908 ESPiB2_Alive_Counter "Message Counter"; +CM_ SG_ 908 ESPiB2_qTargetExternal_Q "Description: Qualifier for the volume flow interface + +Note: Qualifier for the volume flow interface"; +CM_ SG_ 908 ESPiB2_qTargetExternal "Description: Target flow of the brake system to be applied by iBooster for EBR. + +Note: For EBR through iBooster, interface needs to be operated together with ESPiB_pTargetExternal."; +CM_ BO_ 909 "Extended communication ESP iBooster"; +CM_ SG_ 909 ESPiB3_Checksum "J1850 Checksum"; +CM_ SG_ 909 ESPiB3_AliveCounter "Message Counter"; +CM_ SG_ 909 ESPiB3_ABSActive "Description: Indicates that at least one wheel ABS is in control + +Note: +1. For ABS pressure limitation + +2. For HEV function"; +CM_ SG_ 909 ESPiB3_ForceBlendingActive "Description: Control state of force-blending interface + +Note: Used by PFC in iB"; +CM_ SG_ 909 ESPiB3_pMcVirtual "Description: Virtual master cylinder pressure determined in ESP from boost body position of iBooster. + +note: +1. to control the force-blending of recuperation in ESPhev. +2. For JumpIn/Gain Adjustment in iBooster"; +CM_ SG_ 909 ESPiB3_pMcVirtual_Q "Description: Qualifier for the ESPiB3_pMcVirtual_Q signal"; +CM_ SG_ 909 ESPiB3_pForceBlendingMC "Description : Master Cylinder pressure used by force blending function. Can differ from real master cylinder pressure, to avoid short peaks and disturbances which should not be compensated by force-blending + +Note: Used by PFC in iB"; +CM_ SG_ 909 ESPiB3_pMC1 "Description: Current pressure of the master cylinder pressure sensor in the ESP. Raw value without offset compensation. + + +Note: +1. For pressure reduction logic + +2. For HEV Function + +3. For EBR + +4. For runout definition"; +CM_ SG_ 909 ESPiB3_pForceBlendingMC_Q "Description: Qualifier for the ESPiB3_pForceBlendingMC"; +CM_ SG_ 909 ESPiB3_pMC1_Q "Description: Qualifier for ESPiB3_pMC1_Q signal"; +CM_ SG_ 910 iBESP1_ExtReqPrio "To determine driver's braking request for EBR together with sPushRod, eg for CDD"; +CM_ SG_ 910 iBESP1_ExtReqStatus "Status of external brake request (EBR) function"; +CM_ SG_ 910 iBESP1_sOutputRodDriver "Information of driver brake request. +Calculation of: +- target value for output rod in iBooster +Also shows pedal travel with active pressure increase via iBooster"; +CM_ SG_ 910 iBESP1_sOutputRodDriver_Q "Information about the signal quality of sOutputRodDriver"; +CM_ SG_ 910 iBESP1_sOutputRodAct "Current value for output rod in iBooster indicates the shifted volume in master cylinder. Gives information, if the compensation port is closed."; +CM_ SG_ 910 iBESP1_sOutputRodAct_Q "Information about the signal quality of sOutputRodAct"; +CM_ SG_ 911 iBESP2_CompatibilityIndex "Description: iB is sending an static number which which must fit to the same number monitored in ESP to ensure the compatibility of the two ECU."; +CM_ SG_ 911 iBESP2_pRunout_Q "Description: Qualifier for the iBESP2_pRunout signal"; +CM_ SG_ 911 iBESP2_iBDiagActive "iB is in extended Diag Session (iB_ActiveMode = Diagnosis)"; +CM_ SG_ 911 iBESP2_HbcRequest "request HBC if amplification of iB is not possible"; +CM_ SG_ 911 iBESP2_BrakePedalApplied_Q "Description: Qualifier for iBESP2_BrakePedalApplied signal"; +CM_ SG_ 911 iBESP2_BrakePedalApplied "Description: Indicates whether the driver operates the brake pedal. Only active when the driver brakes, not when an external brake command implemented on iB + +Note: +1.Needed for HBB and HBC + +2. Monitoring for pMC (BSM)"; +CM_ SG_ 911 iBESP2_pRunout "Description: In driver braking: maximum achievable master cylinder pressure with boost (runout.) +With an active pressure increase: maximum achievable brake master cylinder pressure. + +Note: +1. Required for HBB + +2. For LDM demand on iB (EBR)"; +CM_ SG_ 912 EPAS_EacStatus "Status of the EAC function of EPAS, to indicate what mode is active."; +CM_ SG_ 912 EPAS_EacErrorCode "EPAS external angle control error code."; +CM_ SG_ 912 EPAS_InternalSas "Steering wheel angle measured by EPAS"; +CM_ SG_ 912 EPAS_InternalSasQ "Steering angle sensor validity status"; +CM_ SG_ 1640 OCS_Checksum "Checksum signal for frame"; +VAL_ 64 SAS_Status_Calibrated 0 "SAS_Status_Calibrated_Not_Calibrated" 1 "SAS_Status_Calibrated_Calibrated"; +VAL_ 64 SAS_StatusQ 0 "SAS_Status_UndefinedDataACCur" 1 "SAS_Status_TmpUnDefinedData" 2 "SAS_Status_DataACCurrentNotWithinSpecification" 3 "SAS_Status_ACCurrentData"; +VAL_ 256 ACM_FeatureStatus 0 "ACM_FeatureStatus_Standby" 1 "ACM_FeatureStatus_Acc" 2 "ACM_FeatureStatus_Hwp" 3 "ACM_FeatureStatus_Uf" 4 "ACM_FeatureStatus_Faulted"; +VAL_ 256 ACM_FaultStatus 0 "ACM_FaultStatus_NoFault" 1 "ACM_FaultStatus_Faulted" 7 "ACM_FaultStatus_Sna"; +VAL_ 257 ACM_StopRequest 0 "ACM_StopRequest_No_Request" 1 "ACM_StopRequest_Request"; +VAL_ 257 ACM_FailInfo 0 "ACM_FailInfo_Normal" 1 "ACM_FailInfo_Temp_Unav_By_Camera" 2 "ACM_FailInfo_Temp_Unav_By_Radar" 3 "ACM_FailInfo_Service_Required"; +VAL_ 257 ACM_DbsLevel 0 "ACM_DbsLevel_No_Activation" 1 "ACM_DbsLevel_Level_1" 2 "ACM_DbsLevel_Level_2" 3 "ACM_DbsLevel_Level_3"; +VAL_ 257 ACM_OnOffStatus 0 "ACM_OnOffStatus_Off" 1 "ACM_OnOffStatus_On_Fcw" 2 "ACM_OnOffStatus_On_Aeb" 3 "ACM_OnOffStatus_Invalid"; +VAL_ 257 ACM_WarnLevel 0 "ACM_WarnLevel_No_Warning" 1 "ACM_WarnLevel_Warning_Level_1" 2 "ACM_WarnLevel_Warning_Level_2" 3 "ACM_WarnLevel_Warning_Level_3"; +VAL_ 257 ACM_PrefillEnableRequest 0 "ACM_PrefillEnableRequest_Disable" 1 "ACM_PrefillEnableRequest_Enable"; +VAL_ 257 ACM_EnableRequest 0 "ACM_EnableRequest_Disable" 1 "ACM_EnableRequest_Enable"; +VAL_ 258 iB_BrakePedalApplied_Q 0 "iB_BrakePedalApplied_Q_No_Init_Or_Off" 1 "iB_BrakePedalApplied_Q_Applied_Normal" 2 "iB_BrakePedalApplied_Q_Applied_Faulty"; +VAL_ 258 iB_BrakePedalApplied 0 "iB_BrakePedalApplied_NotApplied" 1 "iB_BrakePedalApplied_Applied"; +VAL_ 258 ESP_AebActive 0 "ESP_AebActive_Inactive" 1 "ESP_AebActive_Active"; +VAL_ 258 ESP_AebAvailable 0 "ESP_AebAvailable_Not_Available" 1 "ESP_AebAvailable_Available"; +VAL_ 258 ESP_DbsActive 0 "ESP_DbsActive_Dbs_Inactive" 1 "ESP_DbsActive_Dbs_Active"; +VAL_ 258 ESP_PrefillActiveFeedback 0 "ESP_PrefillActiveFeedback_Inactive" 1 "ESP_PrefillActiveFeedback_Active"; +VAL_ 258 ESP_PrefillAvailable 0 "ESP_PrefillAvailible_NotAvailable" 1 "ESP_PrefillAvailible_Available"; +VAL_ 258 ESP_DbsAvailable 0 "ESP_DbsAvailable_NotAvailable" 1 "ESP_DbsAvailable_Available"; +VAL_ 272 ACM_EacEnabled 0 "ACM_EacEnable_None" 1 "ACM_EacEnable_Enabled" 2 "ACM_EacEnable_Reserved"; +VAL_ 272 ACM_HapticRequired 0 "ACM_HapticRequired_Inactive" 1 "ACM_HapticRequired_Active"; +VAL_ 288 ACM_HapticRequest 0 "ACM_HapticRequest_No_Request" 1 "ACM_HapticRequest_Haptic_Request"; +VAL_ 288 ACM_lkaSymbolState 0 "ACM_LKASYMBOLSTATE_OFF" 1 "ACM_LKASYMBOLSTATE_WHITE_ON_LDW_STANDBY" 2 "ACM_LKASYMBOLSTATE_GREEN_ON_LDW_LKA_STANDBY" 3 "ACM_LKASYMBOLSTATE_GREEN_BLNK_LDW_WARN_OR_LKA_CNTRL" 4 "ACM_LKASYMBOLSTATE_ORANGE_ON_FAIL" 5 "ACM_LKASYMBOLSTATE_ORANGE_BLINK_NOT_CALIBRATED" 6 "ACM_LKASYMBOLSTATE_ORANGE_ON_REGULATION" 7 "ACM_LKASYMBOLSTATE_WHITE_BLINK"; +VAL_ 288 ACM_lkaToiFlt 0 "ACM_LKATOIFLT_NO_FAULT" 1 "ACM_LKATOIFLT_FAULT_PRESENT"; +VAL_ 288 ACM_lkaActToi 0 "ACM_LKAACTTOI_DE_ACTIVATE_TOI" 1 "ACM_LKAACTTOI_ACTIVATE_TOI"; +VAL_ 288 ACM_hbaSysState 0 "ACM_HBASYSSTATE_DEFAULT_DISABLE" 1 "ACM_HBASYSSTATE_HBA_ENABLE_HIGH_BEAM_OFF" 2 "ACM_HBASYSSTATE_HBA_ENABLE_HIGH_BEAM_ON" 7 "ACM_HBASYSSTATE_SYSTEM_FAIL"; +VAL_ 288 ACM_ldwRHWarning 0 "ACM_LKARHWARNING_NO_WARNING" 1 "ACM_LKARHWARNING_HAPTIC_WARNING_AND_DISPLAY" 2 "ACM_LKARHWARNING_ACOUSTIC_WARNING_AND_DISPLAY" 3 "ACM_LKARHWARNING_HAPTIC_ACOUSTIC_AND_DISPLAY"; +VAL_ 288 ACM_ldwLHWarning 0 "ACM_LKALHWARNING_NO_WARNING" 1 "ACM_LKALHWARNING_HAPTIC_WARNING_AND_DISPLAY" 2 "ACM_LKALHWARNING_ACOUSTIC_WARNING_AND_DISPLAY" 3 "ACM_LKALHWARNING_HAPTIC_ACOUSTIC_AND_DISPLAY"; +VAL_ 288 ACM_lkaLaneRecogState 0 "ACM_LKALANERECOGSTATE_NOT_RECOGNITION" 1 "ACM_LKALANERECOGSTATE_LEFT_LANE_RECOGNITION" 2 "ACM_LKALANERECOGSTATE_RIGHT_LANE_RECOGNITION" 3 "ACM_LKALANERECOGSTATE_FULL_LANE_RECOGNITION"; +VAL_ 288 ACM_hbaLamp 0 "ACM_HBALAMP_HBA_INDICATOR_LAMP_OFF" 1 "ACM_HBALAMP_HBA_INDICATOR_LAMP_ON"; +VAL_ 288 ACM_lkaHandsoffSoundWarning 0 "ACM_LKAHANDSOFFSOUNDWARNING_NO_INFO" 1 "ACM_LKAHANDSOFFSOUNDWARNING_WARNING" 2 "ACM_LKAHANDSOFFSOUNDWARNING_RESERVED_2" 3 "ACM_LKAHANDSOFFSOUNDWARNING_RESERVED_3"; +VAL_ 288 ACM_lkaHandsoffDisplayWarning 0 "ACM_LKAHANDSOFFDISPLAYWARNING_NO_INFO" 1 "ACM_LKAHANDSOFFDISPLAYWARNING_WARNING" 2 "ACM_LKAHANDSOFFDISPLAYWARNING_RESERVED_2" 3 "ACM_LKAHANDSOFFDISPLAYWARNING_RESERVED_3"; +VAL_ 288 ACM_lkaElkRequest 0 "off" 1 "applying torque right for left departure" 2 "applying torque left for right departure"; +VAL_ 288 ACM_ldwlkaOnOffState 1 "LDW on" 2 "LKAS+LDW on" 3 "all off"; +VAL_ 288 ACM_elkOnOffState 1 "LKAS toggled on" 2 "LKAS toggled off"; +VAL_ 304 RCM_IMU_LatAcc_Stat_SensAvail 0 "RCM_IMU_LatAcc_Stat_SensAvail_InSpec" 1 "RCM_IMU_LatAcc_Stat_SensAvail_NotInSpec"; +VAL_ 304 RCM_IMU_LatAcc_Stat_Fail 0 "RCM_IMU_LatAcc_Stat_Fail_NotFailed" 1 "RCM_IMU_LatAcc_Stat_Fail_Failed"; +VAL_ 304 RCM_IMU_LatAcc_Stat_Init 0 "RCM_IMU_LatAcc_Stat_Init_Finished" 1 "RCM_IMU_LatAcc_Stat_Init_Running"; +VAL_ 304 RCM_IMU_LatAcc_Stat_Startup 0 "RCM_IMU_LatAcc_Stat_Startup_Finished" 1 "RCM_IMU_LatAcc_Stat_Startup_Running"; +VAL_ 304 RCM_IMU_Yaw_Stat_SensAvail 0 "RCM_IMU_Yaw_Stat_SensAvail_InSpec" 1 "RCM_IMU_Yaw_Stat_SensAvail_NotInSpec"; +VAL_ 304 RCM_IMU_Yaw_Stat_Fail 0 "RCM_IMU_Yaw_Stat_Fail_NotFailed" 1 "RCM_IMU_Yaw_Stat_Fail_Failed"; +VAL_ 304 RCM_IMU_Yaw_Stat_Init 0 "RCM_IMU_Yaw_Stat_Init_Finish" 1 "RCM_IMU_Yaw_Stat_Init_Running"; +VAL_ 304 RCM_IMU_Yaw_Stat_Startup 0 "RCM_IMU_Yaw_Stat_Startup_Finished" 1 "RCM_IMU_Yaw_Stat_Startup_Running"; +VAL_ 309 RCM_IMU_Roll_Stat_SensAvail 0 "RCM_IMU_Roll_Stat_SensAvail_InSpec" 1 "RCM_IMU_Roll_Stat_SensAvail_NotInSpec"; +VAL_ 309 RCM_IMU_Roll_Stat_Fail 0 "RCM_IMU_Roll_Stat_Fail_NotFailed" 1 "RCM_IMU_Roll_Stat_Fail_Failed"; +VAL_ 309 RCM_IMU_Roll_Stat_Init 0 "RCM_IMU_Roll_Stat_Init_Finished" 1 "RCM_IMU_Roll_Stat_Init_Running"; +VAL_ 309 RCM_IMU_Roll_Stat_Startup 0 "RCM_IMU_Roll_Stat_Startup_Finished" 1 "RCM_IMU_Roll_Stat_Startup_Running"; +VAL_ 309 RCM_IMU_Heave_Stat_SensAvail 0 "RCM_IMU_Heave_Stat_SensAvail_InSpec" 1 "RCM_IMU_Heave_Stat_SensAvail_NotInSpec"; +VAL_ 309 RCM_IMU_Heave_Stat_Fail 0 "RCM_IMU_Heave_Stat_Fail_NotFailed" 1 "RCM_IMU_Heave_Stat_Fail_Failed"; +VAL_ 309 RCM_IMU_Heave_Stat_Init 0 "RCM_IMU_Heave_Stat_Init_Finished" 1 "RCM_IMU_Heave_Stat_Init_Running"; +VAL_ 309 RCM_IMU_Heave_Stat_Startup 0 "RCM_IMU_Heave_Stat_Startup_Finished" 1 "RCM_IMU_Heave_Stat_Startup_Running"; +VAL_ 320 RCM_IMU_LongAcc_Stat_SensAvail 0 "RCM_IMU_LongAcc_Stat_SensAvail_InSpec" 1 "RCM_IMU_LongAcc_Stat_SensAvail_NotInSpec"; +VAL_ 320 RCM_IMU_LongAcc_Stat_Fail 0 "RCM_IMU_LongAcc_Stat_Fail_NotFailed" 1 "RCM_IMU_LongAcc_Stat_Fail_Failed"; +VAL_ 320 RCM_IMU_LongAcc_Stat_Init 0 "RCM_IMU_LongAcc_Stat_Init_Finished" 1 "RCM_IMU_LongAcc_Stat_Init_Running"; +VAL_ 320 RCM_IMU_LongAcc_Stat_Startup 0 "RCM_IMU_LongAcc_Stat_Startup_Finished" 1 "RCM_IMU_LongAcc_Stat_Startup_Running"; +VAL_ 336 VDM_PropsnActv 0 "VDM_PropsnActv_Not_Defined" 1 "VDM_PropsnActv_Active" 2 "VDM_PropsnActv_Inactive"; +VAL_ 336 VDM_VehicleSpeedQ 0 "VDM_VehSpdQ_Inactive" 1 "VDM_VehSpdQ_Active"; +VAL_ 336 VDM_Prndl_Status 0 "VDM_Prndl_Status_Not_Defined" 1 "VDM_Prndl_Status_Park" 2 "VDM_Prndl_Status_Reverse" 3 "VDM_Prndl_Status_Neutral" 4 "VDM_Prndl_Status_Drive"; +VAL_ 336 VDM_Prndl_Request 0 "VDM_Prndl_Request_No_Req" 1 "VDM_Prndl_Request_Park" 2 "VDM_Prndl_Request_Reverse" 3 "VDM_Prndl_Request_Neutral" 4 "VDM_Prndl_Request_Drive"; +VAL_ 338 VDM_LfcRequestType 0 "LFC_Request_Type_No_Request" 1 "LFC_Request_Type_Brake_Torque_Request_Fx" 2 "LFC_Request_Type_Standstill_Hold_Request_Ssm" 3 "LFC_Request_Type_Release_Ssm"; +VAL_ 338 VDM_LfcActiveRequest 0 "VDM_LfcActiveRequest_Inactive" 1 "VDM_LfcActiveRequest_Active"; +VAL_ 338 VDM_StcFault 0 "Stc_NoFault" 1 "Stc_Fault"; +VAL_ 338 VDM_StcActiveRequest 0 "Stc_NotActive" 1 "Stc_Active"; +VAL_ 338 VDM_EpbRequest 0 "VDM_EpbRequest_No_Request" 1 "VDM_EpbRequest_Release_Req" 2 "VDM_EpbRequest_Apply_Req" 3 "VDM_EpbRequest_Sna"; +VAL_ 338 VDM_ABSOffRoadModeRequest 0 "VDM_ABSOffRoadModeRequest_Inactive" 1 "VDM_ABSOffRoadModeRequest_Active"; +VAL_ 338 VDM_HhcActiveRequest 0 "VDM_HhcActiveRequest_Inactive" 1 "VDM_HhcActiveRequest_Active"; +VAL_ 338 VDM_EspPartialModeRequest 0 "VDM_EspPartialModeRequest_Normal" 1 "VDM_EspPartialModeRequest_Sport" 2 "VDM_EspPartialModeRequest_Esc_Off" 3 "VDM_EspPartialModeRequest_Reserved"; +VAL_ 338 VDM_SteeringModeRequest 0 "VDM_SteeringModeRequest_Default" 1 "VDM_SteeringModeRequest_Normal" 2 "VDM_SteeringModeRequest_Sport" 3 "VDM_SteeringModeRequest_Comfort"; +VAL_ 338 VDM_EpasPowerMode 0 "VDM_EpasPowerMode_Drive_Off" 1 "VDM_EpasPowerMode_Drive_On" 2 "VDM_EpasPowerMode_Shutdown"; +VAL_ 352 ACM_VehicleHoldRequired 0 "ACM_VEHICLEHOLDREQ_NO_REQUEST" 1 "ACM_VEHICLEHOLDREQ_VEHICLE_HOLD_REQUEST"; +VAL_ 352 ACM_PrndRequired 0 "ACM_PRNDREQ_PARK" 1 "ACM_PRNDREQ_REVERSE" 2 "ACM_PRNDREQ_NEUTRAL" 3 "ACM_PRNDREQ_DRIVE" 4 "ACM_PRNDREQ_NOT_USED"; +VAL_ 352 ACM_longInterfaceEnable 0 "ACM_LONGIFEN_INIT" 1 "ACM_LONGIFEN_LONGITUDINAL_INTERFACE_ENABLE" 2 "ACM_LONGIFEN_LONGITUDINAL_INTERFACE_DISABLE" 3 "ACM_LONGIFEN_SNA"; +VAL_ 352 ACM_AccelerationRequestType 0 "ACM_ACCELREQTYPE_INIT" 1 "ACM_ACCELREQTYPE_ACCEL_NEGATIVE" 2 "ACM_ACCELREQTYPE_ACCEL_POSITIVE" 3 "ACM_ACCELREQTYPE_SNA"; +VAL_ 354 VDM_AdasDriverAccelPriorityStatus 0 "VDM_AdasDriverAccelPriorityStatus_Driver" 1 "VDM_AdasDriverAccelPriorityStatus_Adas"; +VAL_ 354 VDM_AdasFaultStatus 0 "VDM_AdasFlaultStatus_No_Fault" 1 "VDM_AdasFaultStatus_Brk_Intv" 2 "VDM_AdasFlaultStatus_Cntr_Fault" 3 "VDM_AdasFlaultStatus_Imps_Cmd" 15 "VDM_AdasFlaultStatus_Sna"; +VAL_ 354 VDM_AdasDriverModeStatus 0 "VDM_AdasDriverModeStatus_Human" 1 "VDM_AdasDriverModeStatus_Adas" 2 "VDM_AdasDriverModeStatus_Reserved" 3 "VDM_AdasDriverModeStatus_Sna"; +VAL_ 354 VDM_AdasInterfaceStatus 0 "VDM_AdasInterfaceStatus_Unavailable" 1 "VDM_AdasInterfaceStatus_Available" 2 "VDM_AdasInterfaceStatus_Enabled" 3 "VDM_AdasInterfaceStatus_Faulted"; +VAL_ 354 VDM_AdasAccelRequestAcknowledged 0 "VDM_AdasAccelRequestAcknowledged_Not_Acknowledged" 1 "VDM_AdasAccelRequestAcknowledged_Acknowledged" 2 "VDM_AdasAccelRequestAcknowledged_Fault_Ignored" 3 "VDM_AdasAccelRequestAcknowledged_Sna"; +VAL_ 354 VDM_AdasVehicleHoldStatus 0 "VDM_AdasVehicleHoldStatus_NotHold" 1 "VDM_AdasVehicleHoldStatus_Hold"; +VAL_ 357 VDM_AdasStalkGapAdjust 0 "VDM_AdasStalkGapAdjust_No_Required" 1 "VDM_AdasStalkGapAdjust_GapDecrement" 2 "VDM_AdasStalkGapAdjust_GapIncrement"; +VAL_ 357 VDM_AdasStalkAccCancelRes 0 "VDM_AdasStalkAccCancelRes_NoRequired" 1 "VDM_AdasStalkAccCancelRes_Cancel" 2 "VDM_AdasStalkAccCancelRes_Resume"; +VAL_ 357 VDM_AdasStalkAutonomyButton 0 "VDM_AdasStalkAutonomyButton_No_Required" 1 "VDM_AdasStalkAutonomyButton_Pressed"; +VAL_ 357 VDM_AdasStalkAccEnableAdj 0 "VDM_AdasStalkAccEnableAdj_No_Required" 1 "VDM_AdasStalkAccEnableAdj_UpDetent1" 2 "VDM_AdasStalkAccEnableAdj_UpDetent2" 3 "VDM_AdasStalkAccEnableAdj_DownDetent1" 4 "VDM_AdasStalkAccEnableAdj_DownDetent2"; +VAL_ 384 CGM_TrailerPresent 0 "CGM_TrailerPresent_Trailer_Not_Present" 1 "CGM_TrailerPresent_Trailer_Present" 3 "CGM_TrailerPresent_Invalid"; +VAL_ 384 CGM_DriverPresent 0 "CGM_DriverPresent_Driver_Not_Present" 1 "CGM_DriverPresent_Driver_Present" 3 "CGM_DriverPresent_Invalid"; +VAL_ 384 CGM_IgnSwtState 0 "IGNSWTSTATE_OFF" 1 "IGNSWTSTATE_STANDBY" 2 "IGNSWTSTATE_ACCESSORY" 3 "IGNSWTSTATE_RUN" 4 "IGNSWTSTATE_CRANK"; +VAL_ 432 ESP_Torque_Front_MinQ 0 "ESP_TorqueFront_MinQ_Invalid" 1 "ESP_TorqueFront_MinQ_Valid"; +VAL_ 432 ESP_Torque_Front_MaxQ 0 "ESP_TorqueFront_MaxQ_Invalid" 1 "ESP_TorqueFront_MaxQ_Valid"; +VAL_ 448 ESP_Torque_Rear_MinQ 0 "ESP_TorqueLimitRear_MinQ_Invalid" 1 "ESP_TorqueLimitRear_MinQ_Valid"; +VAL_ 448 ESP_Torque_Rear_MaxQ 0 "ESP_TorqueLimitRear_MaxQ_Invalid" 1 "ESP_TorqueLimitRear_MaxQ_Valid"; +VAL_ 516 RCM_ALR_Status_Signal 0 "ALR_Unknown" 1 "ALR_Not_Engaged" 2 "ALR_Engaged" 3 "ALR_Invalid"; +VAL_ 520 ESP_BrakeLightActive_Q 0 "ESP_BRAKELIGHTACTIVE_Q_INVALID" 1 "ESP_BRAKELIGHTACTIVE_Q_VALID"; +VAL_ 520 ESP_BrakeLightActive 0 "ESP_BRAKELIGHTACTIVE_INACTIVE" 1 "ESP_BRAKELIGHTACTIVE_ACTIVE"; +VAL_ 520 ESP_Hhc_Active 0 "ESP_HHCACTV_INACTIVE" 1 "ESP_HHCACTV_ACTIVE"; +VAL_ 520 ESP_Hhc_Available 0 "ESP_HHCAVL_NOT_INITIALIZED" 1 "ESP_HHCAVL_ACTIVE"; +VAL_ 520 ESP_Abs_OffRoad_Mode 0 "ABS_OFFROAD_NORMAL" 1 "ABS_OFFROAD_OFFROAD"; +VAL_ 520 ESP_Tsm_Active 0 "TSM_ACTIVE_INACTIVE" 1 "TSM_ACTIVE_ACTIVE"; +VAL_ 520 ESP_FaultLamp_EBD 0 "ESP_FAULTLAMP_EBD_OFF" 1 "ESP_FAULTLAMP_EBD_ON"; +VAL_ 520 ESP_FaultLamp_VDC 0 "ESP_FAULTLAMP_VDC_OFF" 1 "ESP_FAULTLAMP_VDC_ON"; +VAL_ 520 ESP_FaultLamp_ABS 0 "ESP_FAULTLAMP_ABS_OFF" 1 "ESP_FAULTLAMP_ABS_ON"; +VAL_ 520 ESP_Esp_Active 0 "ESP_ACTIVE_INACTIVE" 1 "ESP_ACTIVE_ACTIVE"; +VAL_ 520 ESP_Abs_Active 0 "ABS_ACTIVE_INACTIVE" 1 "ABS_ACTIVE_ACTIVE"; +VAL_ 520 ESP_Partial_Mode 0 "ESP_PATA_MODE_NORMAL" 1 "ESP_PATA_MODE_SPORT" 2 "ESP_PATA_MODE_ESC_OFF" 3 "ESP_PATA_MODE_RESERVED"; +VAL_ 520 ESP_Vehicle_Speed_Q 0 "ESP_VEHICLE_SPEED_Q_NOT_INITIALIZED" 1 "ESP_VEHICLE_SPEED_Q_NORMAL" 2 "ESP_VEHICLE_SPEED_Q_FAULT"; +VAL_ 520 ESP_Lfc_Available 0 "LFC_AVAILABLE_NOT_AVAILABLE" 1 "LFC_AVAILABLE_AVAILABLE"; +VAL_ 520 ESP_Hba_Active 0 "ESP_HBAACTV_INACTIVE" 1 "ESP_HBAACTV_ACTIVE"; +VAL_ 520 ESP_Lfc_Active 0 "LFC_ACTIVE_INACTIVE" 1 "LFC_ACTIVE_ACTIVE"; +VAL_ 521 ESP_Wheel_Speed_Left_Front_Q 0 "ESP_WHEEL_SPEED_LEFT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_LEFT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_SPEED_LEFT_FRONT_Q_FAULT"; +VAL_ 521 ESP_Wheel_Speed_Right_Front_Q 0 "ESP_WHEEL_SPEED_RIGHT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_RIGHT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_SPEED_RIGHT_FRONT_Q_FAULT"; +VAL_ 521 ESP_Wheel_Dir_Right_Front 0 "ESP_WHEEL_DIR_RIGHT_FRONT_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_RIGHT_FRONT_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_RIGHT_FRONT_STANDSTILL" 3 "ESP_WHEEL_DIR_RIGHT_FRONT_NOTDEFINABLE"; +VAL_ 521 ESP_Wheel_Dir_Left_Front 0 "ESP_WHEEL_DIR_LEFT_FRONT_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_LEFT_FRONT_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_LEFT_FRONT_STANDSTILL" 3 "ESP_WHEEL_DIR_LEFT_FRONT_NOTDEFINABLE"; +VAL_ 522 ESP_Wheel_Speed_Left_Rear_Q 0 "ESP_WHEEL_SPEED_LEFT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_LEFT_REAR_Q_NORMAL" 2 "ESP_WHEEL_SPEED_LEFT_REAR_Q_FAULT"; +VAL_ 522 ESP_Wheel_Speed_Right_Rear_Q 0 "ESP_WHEEL_SPEED_RIGHT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_SPEED_RIGHT_REAR_Q_NORMAL" 2 "ESP_WHEEL_SPEED_RIGHT_REAR_Q_FAULT"; +VAL_ 522 ESP_Wheel_Dir_Right_Rear 0 "ESP_WHEEL_DIR_RIGHT_REAR_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_RIGHT_REAR_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_RIGHT_REAR_STANDSTILL" 3 "ESP_WHEEL_DIR_RIGHT_REAR_NOTDEFINABLE"; +VAL_ 522 ESP_Wheel_Dir_Left_Rear 0 "ESP_WHEEL_DIR_LEFT_REAR_FORWARDDIRECTION" 1 "ESP_WHEEL_DIR_LEFT_REAR_BACKWARDDIRECTION" 2 "ESP_WHEEL_DIR_LEFT_REAR_STANDSTILL" 3 "ESP_WHEEL_DIR_LEFT_REAR_NOTDEFINABLE"; +VAL_ 523 ESP_Wheel_Pulse_Right_Front_Q 0 "ESP_WHEEL_PULSE_RIGHT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_RIGHT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_PULSE_RIGHT_FRONT_Q_FAULT"; +VAL_ 523 ESP_Wheel_Pulse_Right_Rear_Q 0 "ESP_WHEEL_PULSE_RIGHT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_RIGHT_REAR_Q_NORMAL" 2 "ESP_WHEEL_PULSE_RIGHT_REAR_Q_FAULT"; +VAL_ 523 ESP_Wheel_Pulse_Left_Rear_Q 0 "ESP_WHEEL_PULSE_LEFT_REAR_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_LEFT_REAR_Q_NORMAL" 2 "ESP_WHEEL_PULSE_LEFT_REAR_Q_FAULT"; +VAL_ 523 ESP_Wheel_Pulse_Left_Front_Q 0 "ESP_WHEEL_PULSE_LEFT_FRONT_Q_NOT_INITIALIZED" 1 "ESP_WHEEL_PULSE_LEFT_FRONT_Q_NORMAL" 2 "ESP_WHEEL_PULSE_LEFT_FRONT_Q_FAULT"; +VAL_ 524 ESP_BrakePressure_RF_Q 0 "ESP_BRAKEPRESSURE_RF_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_RF_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_RF_Q_FAULT"; +VAL_ 524 ESP_BrakePressure_LF_Q 0 "ESP_BRAKEPRESSURE_LF_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_LF_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_LF_Q_FAULT"; +VAL_ 524 ESP_MasterCyl_Pressure_Q 0 "ESP_MASTERCYL_PRESSURE_Q_NOT_INITIALIZED" 1 "ESP_MASTERCYL_PRESSURE_Q_NORMAL" 2 "ESP_MASTERCYL_PRESSURE_Q_FAULT"; +VAL_ 524 ESP_BrakePressure_RR_Q 0 "ESP_BRAKEPRESSURE_RR_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_RR_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_RR_Q_FAULT"; +VAL_ 524 ESP_BrakePressure_LR_Q 0 "ESP_BRAKEPRESSURE_LR_Q_NOT_INITIALIZED" 1 "ESP_BRAKEPRESSURE_LR_Q_NORMAL" 2 "ESP_BRAKEPRESSURE_LR_Q_FAULT"; +VAL_ 529 VDM_Torque_Front_MaxQ 0 "VDM_Torque_Front_MaxQ_Invalid" 1 "VDM_Torque_Front_MaxQ_Valid"; +VAL_ 529 VDM_OutputTorqueFrontQ 0 "VDM_OutputTorqueFrontQ_Invalid" 1 "VDM_OutputTorqueFrontQ_Valid"; +VAL_ 529 VDM_Torque_Front_MinQ 0 "VDM_Torque_Front_MinQ_Invalid" 1 "VDM_Torque_FrontinQ_Valid"; +VAL_ 530 VDM_Torque_Rear_MaxQ 0 "VDM_Torque_Rear_MaxQ_Invalid" 1 "VDM_Torque_Rear_MaxQ_Valid"; +VAL_ 530 VDM_OutputTorqueRearQ 0 "VDM_OutputTorqueRearQ_Invalid" 1 "VDM_OutputTorqueRearQ_Valid"; +VAL_ 530 VDM_Torque_Rear_MinQ 0 "VDM_Torque_Rear_MinQ_Invalid" 1 "VDM_Torque_Rear_MinQ_Valid"; +VAL_ 565 RearDriverDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; +VAL_ 565 FrontPassengerDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; +VAL_ 565 DriverDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; +VAL_ 565 RearPassengerDoor 0 "SNA" 1 "Open" 2 "Closed" 3 "SNA"; +VAL_ 811 ESP_EpbAvailable 0 "ESP_EpbAvailable_Not_Available" 1 "ESP_EpbAvailable_Available"; +VAL_ 811 ESP_EpbServiceMode 0 "ESP_EpbServiceMode_Not_Active" 1 "ESP_EpbServiceMode_Active"; +VAL_ 811 ESP_EpbWarningLamp 0 "ESP_EpbWarningLamp_Off" 1 "ESP_EpbWarningLamp_Continous" 2 "ESP_EpbWarningLamp_Blink" 3 "ESP_EpbWarningLamp_Sna"; +VAL_ 811 ESP_EpbStatus 0 "ESP_EpbStatus_Released" 1 "ESP_EpbStatus_Applied" 2 "ESP_EpbStatus_Releasing" 3 "ESP_EpbStatus_Applying" 4 "ESP_EpbStatus_Dynamic_Control" 5 "ESP_EpbStatus_Unknown" 7 "ESP_EpbStatus_Sna"; +VAL_ 811 ESP_EpbFunctionLamp 0 "ESP_EpbFunction_Lamp_Off" 1 "ESP_EpbFunctionLamp_Continous" 2 "ESP_EpbFunctionLamp_Blink" 3 "ESP_EpbFunctionLamp_Sna"; +VAL_ 826 RCM_Status_DETECT_CRUSH 0 "DETECT_CRUSH_Normal_Condition" 1 "DETECT_CRUSH_Collision_Detection"; +VAL_ 826 RCM_Status_IND_WARN_RCM 0 "IND_WARN_RCM_Off" 1 "IND_WARN_RCM_Lighting"; +VAL_ 826 RCM_Status_IND_ACT_RCM_PASS 0 "IWBP_On_Ind_onOFF_Ind_on" 1 "IWBP_On_Ind_offOFF_Ind_on" 2 "IWBP_On_Ind_onOFF_Ind_off" 3 "IWBP_On_Ind_offOFF_Ind_off"; +VAL_ 826 RCM_Status_IND_WARN_BELT_DRIVER 0 "IWBP_Equipped" 1 "IWBP_Not_Equipped" 2 "IWBP_Undetermined" 3 "IWBP_SW_Failure"; +VAL_ 826 RCM_Status_IND_WARN_BELT_PASS 0 "IWBP_Equipped" 1 "IWBP_Not_Equipped" 2 "IWBP_Undetermined" 3 "IWBP_SW_Failure"; +VAL_ 848 EPAS_Ecu1EacSts 0 "EPAS_Ecu1EacSts_Eac_Inhibited" 1 "EPAS_Ecu1EacSts_Eac_Available" 2 "EPAS_Ecu1EacSts_Eac_Active" 3 "EPAS_Ecu1EacSts_Eac_Fault" 7 "EPAS_Ecu1EacSts_Sna"; +VAL_ 848 EPAS_Ecu1PowerMode 0 "EPASP_powerMode_Drive_Off" 1 "EPASP_powerMode_Drive_On" 2 "EPASP_powerMode_Shutdown" 3 "EPASP_powerMode_Sna"; +VAL_ 848 EPAS_Ecu1Role 0 "EPASP_ROLE_MASTER" 1 "EPASP_ROLE_SLAVE" 2 "EPASP_ROLE_RESERVED"; +VAL_ 848 EPAS_Ecu1State 0 "EPAS_Ecu1State_Initialisation_Arbitration" 1 "EPAS_Ecu1State_Reserved" 2 "EPAS_Ecu1State_Reserved1" 3 "EPAS_Ecu1State_Initialisation_Complete" 4 "EPAS_Ecu1State_Passive" 5 "EPAS_Ecu1State_Passive_Faulted" 6 "EPAS_Ecu1State_Assist_Active" 7 "EPAS_Ecu1State_Assist_Standby" 8 "EPAS_Ecu1State_Eac_Active" 9 "EPAS_Ecu1State_Eac_Standby" 15 "EPAS_Ecu1State_Invalid"; +VAL_ 864 EPAS_Ecu2EacSts 0 "EPAS_Ecu2EacSts_Eac_Inhibited" 1 "EPAS_Ecu2EacSts_Eac_Available" 2 "EPAS_Ecu2EacSts_Eac_Active" 3 "EPAS_Ecu2EacSts_Eac_Fault" 7 "EPAS_Ecu2EacSts_Sna"; +VAL_ 864 EPAS_Ecu2PowerMode 0 "EPASS_powerMode_Drive_Off" 1 "EPASS_powerMode_Drive_On" 2 "EPASS_powerMode_Shutdown" 3 "EPASS_powerMode_Sna"; +VAL_ 864 EPASS_Ecu2Role 0 "EPASS_Ecu2Role_Master" 1 "EPASS_Ecu2Role_Slave" 2 "EPASS_Ecu2Role_Reserved"; +VAL_ 864 EPASS_Ecu2State 0 "EPASS_Ecu2State_Initialisation_Arbitration" 1 "EPASS_Ecu2State_Reserved" 2 "EPASS_Ecu2State_Reserved1" 3 "EPASS_Ecu2State_Initialisation_Complete" 4 "EPASS_Ecu2State_Passive" 5 "EPASS_Ecu2State_Passive_Faulted" 6 "EPASS_Ecu2State_Assist_Active" 7 "EPASS_Ecu2State_Assist_Standby" 8 "EPASS_Ecu2State_Eac_Active" 9 "EPASS_Ecu2State_Eac_Standby" 15 "EPASS_Ecu2State_Invalid"; +VAL_ 880 ACM_tsrConInfoStaCon2 0 "ACM_TSRCONINFOSTACON2_NONE_DEFAULT" 1 "ACM_TSRCONINFOSTACON2_RAIN" 2 "ACM_TSRCONINFOSTACON2_SNOW" 3 "ACM_TSRCONINFOSTACON2_SNOW_RAIN" 4 "ACM_TSRCONINFOSTACON2_TARILER" 5 "ACM_TSRCONINFOSTACON2_DISTANCE" 6 "ACM_TSRCONINFOSTACON2_TIME" 7 "ACM_TSRCONINFOSTACON2_FOG" 8 "ACM_TSRCONINFOSTACON2_RESERVED_8" 9 "ACM_TSRCONINFOSTACON2_RESERVED_9" 10 "ACM_TSRCONINFOSTACON2_RESERVED_10" 11 "ACM_TSRCONINFOSTACON2_RESERVED_11" 12 "ACM_TSRCONINFOSTACON2_RESERVED_12" 14 "ACM_TSRCONINFOSTACON2_GENERIC" 15 "ACM_TSRCONINFOSTACON2_RESERVED_15"; +VAL_ 880 ACM_tsrConInfoStaCon1 0 "ACM_TSRCONINFOSTACON1_NONE_DEFAULT" 1 "ACM_TSRCONINFOSTACON1_RAIN" 2 "ACM_TSRCONINFOSTACON1_SNOW" 3 "ACM_TSRCONINFOSTACON1_SNOW_RAIN" 4 "ACM_TSRCONINFOSTACON1_TARILER" 5 "ACM_TSRCONINFOSTACON1_DISTANCE" 6 "ACM_TSRCONINFOSTACON1_TIME" 7 "ACM_TSRCONINFOSTACON1_FOG" 8 "ACM_TSRCONINFOSTACON1_RESERVED_8" 9 "ACM_TSRCONINFOSTACON1_RESERVED_9" 10 "ACM_TSRCONINFOSTACON1_RESERVED_10" 11 "ACM_TSRCONINFOSTACON1_RESERVED_11" 12 "ACM_TSRCONINFOSTACON1_RESERVED_12" 14 "ACM_TSRCONINFOSTACON1_GENERIC" 15 "ACM_TSRCONINFOSTACON1_RESERVED_15"; +VAL_ 880 ACM_tsrSpdDisClsMain 0 "TSR_Speed_No_Recognition_Default" 253 "TSR_Speed_Unlimited_Speed" 254 "TSR_Speed_Reserved" 255 "TSR_Speed_Invalid"; +VAL_ 880 ACM_tsrSpdDisCluCon1 0 "ACM_TSRSPDDISCLUCON1_NO_RECOGNITION_DEFAULT" 1 "ACM_TSRSPDDISCLUCON1_A1_252_PH_1XHEX_KPHORMPH" 253 "ACM_TSRSPDDISCLUCON1_LHD_CONDITIONAL_NO_PASSING_ZONE" 254 "ACM_TSRSPDDISCLUCON1_RHD_CONDITIONAL_NO_PASSING_ZONE" 255 "ACM_TSRSPDDISCLUCON1_INVALID"; +VAL_ 880 ACM_tsrSpdDisCluCon2 0 "ACM_TSRSPDDISCLUCON2_NO_RECOGNITION_DEFAULT" 1 "ACM_TSRSPDDISCLUCON2_A1_252_PH_1XHEX_KPHORMPH" 253 "ACM_TSRSPDDISCLUCON2_LHD_CONDITIONAL_NO_PASSING_ZONE" 254 "ACM_TSRSPDDISCLUCON2_RHD_CONDITIONAL_NO_PASSING_ZONE" 255 "ACM_TSRSPDDISCLUCON2_INVALID"; +VAL_ 880 ACM_tsrSpdDisCluConM 0 "ACM_TSRSPDDISCLUCONM_NO_RECOGNITION_DEFAULT" 253 "ACM_TSRSPDDISCLUCONM_UNLIMITED_SPEED" 254 "ACM_TSRSPDDISCLUCONM_RESERVED" 255 "ACM_TSRSPDDISCLUCONM_INVALID"; +VAL_ 880 ACM_tsrAddInfoDisplay 0 "ACM_TSRADDINFODISPLAY_NONE_DISPLAY_DEFAULT" 1 "ACM_TSRADDINFODISPLAY_LHD_NO_PASSING_ZONE_DISPLAY" 2 "ACM_TSRADDINFODISPLAY_RHD_NO_PASSING_ZONE_DISPLAY" 3 "ACM_TSRADDINFODISPLAY_INVALID"; +VAL_ 880 ACM_tsrOvrlapSignDis 0 "ACM_TSROVRLAPSIGNDIS_NONE_DEFAULT" 1 "ACM_TSROVRLAPSIGNDIS_OVERLAP_SIGN" 2 "ACM_TSROVRLAPSIGNDIS_RESERVED"; +VAL_ 880 ACM_tsrStatus 0 "ACM_TSRSTATUS_TSR_INFORMATION_VALID_DEFAULT" 1 "ACM_TSRSTATUS_TSR_INFORMATION_INVALID_FAILURE" 2 "ACM_TSRSTATUS_TSR_INFORMATION_TEMPORARY_UNAVAILABLE"; +VAL_ 896 EPAS_SteeringReduced 0 "EPAS_EPAS_SteeringReduced_Normal_Assist" 1 "EPAS_EPAS_SteeringReduced_Reduced_Assist"; +VAL_ 896 EPAS_SteeringFault 0 "EPAS_SteeringFault_No_Fault" 1 "EPAS_SteeringFault_Fault"; +VAL_ 896 EPAS_SteeringMode 0 "EPASP_SteeringMode_Default" 1 "EPASP_SteeringMode_Normal" 2 "EPASP_SteeringMode_Sport" 3 "EPASP_SteeringMode_Comfort"; +VAL_ 896 EPAS_StcFault 0 "Stc_NoFault" 1 "Stc_Fault"; +VAL_ 896 EPAS_StcActive 0 "Stc_NotActive" 1 "Stc_Active"; +VAL_ 896 EPAS_StcUnavailable 0 "Stc_Available" 1 "Stc_Unavailable"; +VAL_ 896 H_CAN_EPSS_ToiFlt 0 "H_CAN_EPS_ToiFault_No_Fault" 1 "H_CAN_EPS_ToiFault_Fault"; +VAL_ 896 H_CAN_EPSS_ToiActive 0 "H_CAN_EPS_ToiActive_Deactivated" 1 "H_CAN_EPS_ToiActive_Activated"; +VAL_ 896 H_CAN_EPS_ToiUnavailable 0 "H_CAN_EPS_ToiUnavailable_Available" 1 "H_CAN_EPS_ToiUnavailable_Unavailable"; +VAL_ 896 EPAS_HandsOnLevel 0 "EPAS_HandsOnLevel_Level_0" 1 "EPAS_HandsOnLevel_Level_1" 2 "EPAS_HandsOnLevel_Level_2" 3 "EPAS_HandsOnLevel_Level_3"; +VAL_ 907 ESPiB1_IgnitionOn 0 "ESPIB1_IgnitionOn_Not_Initilized" 1 "ESPIB1_IgnitionOn_Normal"; +VAL_ 907 ESPiB1_VehicleSpeed_Q 0 "ESPiB1_VehicleSpeed_Q_VehicleSpeedQualifier_NotInit" 1 "ESPiB1_VehicleSpeed_Q_VehicleSpeedQualifier_Normal" 2 "ESPiB1_VehicleSpeed_Q_VehicleSpeedQualifier_Faulty"; +VAL_ 908 ESPiB2_qTargetExternal_Q 0 "ESPiB2_qTargetExternal_Q_QTarget_Off" 1 "ESPiB2_qTargetExternal_Q_QTarget_EBR" 2 "ESPiB2_qTargetExternal_Q_QTarget_EBRmaxPerformance"; +VAL_ 909 ESPiB3_ABSActive 0 "ESPIB3_ABSACTIVE_ABS_IS_INACTIVE" 1 "ESPIB3_ABSACTIVE_ABS_IS_ACTIVE"; +VAL_ 909 ESPiB3_ForceBlendingActive 0 "ESPIB3_FORCEBLENDINGACTIVE_PFC_INACTIVE" 1 "ESPIB3_FORCEBLENDINGACTIVE_PFC_HOLD" 2 "ESPIB3_FORCEBLENDINGACTIVE_PFC_ACTIVE"; +VAL_ 909 ESPiB3_pMcVirtual_Q 0 "ESPIB3_PMCVIRTUAL_Q_PMCVIRTUAL_NOTINITIALIZED" 1 "ESPIB3_PMCVIRTUAL_Q_PMCVIRTUAL_NORMAL" 2 "ESPIB3_PMCVIRTUAL_Q_PMCVIRTUAL_FAULTY"; +VAL_ 909 ESPiB3_pForceBlendingMC_Q 0 "ESPIB3_PFORCEBLENDINGMC_Q_PFORCEBLENDINGMC_NOTINITIALIZED" 1 "ESPIB3_PFORCEBLENDINGMC_Q_PFORCEBLENDINGMC_NORMAL" 2 "ESPIB3_PFORCEBLENDINGMC_Q_PFORCEBLENDINGMC_FAULTY"; +VAL_ 909 ESPiB3_pMC1_Q 0 "ESPIB3_PMC1_Q_MCPRESSUREQUALIFIER_NOTINIT" 1 "ESPIB3_PMC1_Q_MCPRESSUREQUALIFIER_NORMAL" 2 "ESPIB3_PMC1_Q_MCPRESSUREQUALIFIER_FAULTY"; +VAL_ 910 iBESP1_ExtReqStatus 0 "iBESP1_ExtReqStatus_NotInitialized" 1 "iBESP1_ExtReqStatus_EBR_NotAvailable" 2 "iBESP1_ExtReqStatus_EBR_Available"; +VAL_ 910 iBESP1_sOutputRodDriver_Q 0 "IBESP1_SOUTPUTRODDRIVER_Q_SOUTPUTRODDRIVER_NOTINITIALIZED" 1 "IBESP1_SOUTPUTRODDRIVER_Q_SOUTPUTRODDRIVER_NORMAL" 2 "IBESP1_SOUTPUTRODDRIVER_Q_SOUTPUTRODDRIVER_FAULTY"; +VAL_ 910 iBESP1_sOutputRodAct_Q 0 "IBESP1_SOUTPUTRODACT_Q_SOUTPUTRODACT_NOTINITIALIZED" 1 "IBESP1_SOUTPUTRODACT_Q_SOUTPUTRODACT_NORMAL" 2 "IBESP1_SOUTPUTRODACT_Q_SOUTPUTRODACT_FAULTY"; +VAL_ 911 iBESP2_pRunout_Q 0 "IBESP2_PRUNOUT_Q_P_RUNOUT_NOT_INITIALIZED" 1 "IBESP2_PRUNOUT_Q_P_RUNOUT_NORMAL" 2 "IBESP2_PRUNOUT_Q_P_RUNOUT_FAULTY"; +VAL_ 911 iBESP2_BrakePedalApplied_Q 0 "IBESP2_BRAKEPEDALAPPLIED_Q_BRAKE_PEDAL_APPLIED_NO_INIT_OR_OFF" 1 "IBESP2_BRAKEPEDALAPPLIED_Q_BRAKE_PEDAL_APPLIED_NORMAL" 2 "IBESP2_BRAKEPEDALAPPLIED_Q_BRAKE_PEDAL_APPLIED_FAULTY"; +VAL_ 911 iBESP2_BrakePedalApplied 0 "iBESP2_BrakePedalApplied_NotApplied" 1 "iBESP2_BrakePedalApplied_Applied"; +VAL_ 911 iBESP2_RprMode 0 "IBESP2_RPRMODE_RPR_PASSIVE" 1 "IBESP2_RPRMODE_RPR_PRELOAD" 2 "IBESP2_RPRMODE_RPR_HOLD" 3 "IBESP2_RPRMODE_RPR_SUCTION" 4 "IBESP2_RPRMODE_RPR_HOLDLOWPRESSURE" 5 "IBESP2_RPRMODE_RPR_ABORT"; +VAL_ 912 EPAS_EacStatus 0 "EPAS_EacStatus_Eac_Inhibited" 1 "EPAS_EacStatus_Eac_Available" 2 "EPAS_EacStatus_Eac_Active" 3 "EPAS_EacStatus_Eac_Standby" 4 "EPAS_EacStatus_Eac_Fault" 5 "EPAS_EacStatus_Sna"; +VAL_ 912 EPAS_EacErrorCode 0 "EPAS_No_Err" 1 "EPAS_High_Angle_Cmd_Err" 2 "EPAS_High_Actual_Angle_Err" 3 "EPAS_High_Actual_Angle_Rate_Err" 4 "EPAS_Feature_Fault_Err" 5 "EPAS_Feature_Status_Invalid_Err" 6 "EPAS_Feature_Angle_Thd_Err" 7 "EPAS_Angle_Control_Cntr_Err" 8 "EPAS_Angle_Control_Mia_Err" 9 "EPAS_Angle_Control_Crc_Err" 10 "EPAS_Vehspd_Corrln_Failr_Err" 11 "EPAS_Vehspd_Max_Thd_Err" 12 "EPAS_Hands_On_Detn_Err" 13 "EPAS_Ext_Angle_Plausibility_Err" 14 "EPAS_High_Delta_Angle_Err" 15 "EPAS_Max_Steady_State_Err"; +VAL_ 912 EPAS_InternalSasQ 0 "EPAS_INTERNALSASQF_VALID" 1 "EPAS_INTERNALSASQF_INVALID"; +VAL_ 929 VDM_AchDriveModeRequestConfirm 0 "VDM_AchDriveModeRequestConfirm_NoRequest" 1 "VDM_AchDriveModeRequestConfirm_Request"; +VAL_ 929 VDM_AchDriveModeRequestPullRearw 0 "VDM_AchDriveModeRequestPullRearward_NoRequired" 1 "VDM_AchDriveModeRequestPullRearward_Required"; +VAL_ 929 VDM_AchDriveModeRequestPushDown 0 "VDM_AchDriveModeRequestPushDown_NoRequired" 1 "VDM_AchDriveModeRequestPushDown_Required"; +VAL_ 929 VDM_AchDriveModeRequestPushForwa 0 "VDM_AchDriveModeRequestPushForward_NoRequired" 1 "VDM_AchDriveModeRequestPushForward_Required"; +VAL_ 929 VDM_AchDriveModeRequestPushUp 0 "VDM_AchDriveModeRequestPushUp_NoRequired" 1 "VDM_AchDriveModeRequestPushUp_Required"; +VAL_ 929 VDM_AchDriveModeRequestRest 0 "VDM_AchDriveModeRequestRest_NoRequired" 1 "VDM_AchDriveModeRequestRest_Required"; +VAL_ 929 VDM_AchDriveMode4x4 0 "VDM_AchDriveMode4x4_A4x4Auto" 1 "VDM_AchDriveMode4x4_P4x4Permenant" 6 "VDM_AchDriveMode4x4_I_Transition" 7 "VDM_AchDriveMode4x4_Fault"; +VAL_ 929 VDM_AchDriveMode 0 "VDM_AchDriveMode_Eco" 1 "VDM_AchDriveMode_OnRoadComford" 2 "VDM_AchDriveMode_OnRoadSport" 3 "VDM_AchDriveMode_OffRoad" 4 "VDM_AchDriveMode_OffRoadSport" 5 "VDM_AchDriveMode_Autonomy"; +VAL_ 929 VDM_AchDriveModeAirSuspension 0 "VDM_AchDriveModeAirSuspension_Kneel" 1 "VDM_AchDriveModeAirSuspension_Aero" 2 "VDM_AchDriveModeAirSuspension_Design" 3 "VDM_AchDriveModeAirSuspension_High" 4 "VDM_AchDriveModeAirSuspension_Max" 7 "VDM_AchDriveModeAirSuspension_Null"; +VAL_ 929 VDM_AchDriveModeAbs 0 "VDM_AchDriveModeAbs_OnRoad" 1 "VDM_AchDriveModeAbs_OffRoad" 6 "VDM_AchDriveModeAbs_InTransition" 7 "VDM_AchDriveModeAbs_Fault"; +VAL_ 929 VDM_AchDriveModeDrivability 0 "VDM_AchDriveModeDrivability_Eco" 1 "VDM_AchDriveModeDrivability_Sport" 2 "VDM_AchDriveModeDrivability_OffRoad" 6 "VDM_AchDriveModeDrivability_InTransition" 7 "VDM_AchDriveModeDrivability_Null"; +VAL_ 929 VDM_AchDriveModeDamping 0 "VDM_AchDriveModeDamping_Kneel" 1 "VDM_AchDriveModeDamping_Aero" 2 "VDM_AchDriveModeDamping_Design" 3 "VDM_AchDriveModeDamping_High" 4 "VDM_AchDriveModeDamping_AirSuspensionMax" 6 "VDM_AchDriveModeDamping_InTransition" 7 "VDM_AchDriveModeDamping_Fault"; +VAL_ 929 VDM_AchDriveModeRollControl 0 "VDM_AchDriveModeRollControl_Low" 1 "VDM_AchDriveModeRollControl_Middle" 2 "VDM_AchDriveModeRollControl_High" 6 "VDM_AchDriveModeRollControl_InTransition" 7 "VDM_AchDriveModeRollControl_Null"; +VAL_ 929 VDM_AchDriveModeEsp 0 "VDM_AchDriveModeEsp_EspOn" 1 "VDM_AchDriveModeEsp_EspReduced" 2 "VDM_AchDriveModeEsp_EspOff" 6 "VDM_AchDriveModeEsp_InTransition" 7 "VDM_AchDriveModeEsp_Null"; +VAL_ 929 VDM_AchDriveModeEpas 0 "VDM_AchDriveModeEpas_TcsStable" 1 "VDM_AchDriveModeEpas_TcsSportRoad" 2 "VDM_AchDriveModeEpas_TcsSportOffRoad" 3 "VDM_AchDriveModeEpas_TcsOff" 7 "VDM_AchDriveModeEpas_Null"; +VAL_ 929 VDM_AchDriveModeTcs 0 "VDM_AchDriveModeTcs_Stable" 1 "VDM_AchDriveModeTcs_SportRoad" 2 "VDM_AchDriveModeTcs_SportOffRoad" 3 "VDM_AchDriveModeTcs_Off" 7 "VDM_AchDriveModeTcs_Null"; +VAL_ 1024 VCM_VehicleType 0 "VCM_VehicleType_Sna" 1 "VCM_VehicleType_R1T" 2 "VCM_VehicleType_R1S" 3 "VCM_VehicleType_Reserved_AProj" 4 "VCM_VehicleType_Reserved_BProj" 5 "VCM_VehicleType_Reserved_CProj" 6 "VCM_VehicleType_Reserved_DProj" 7 "VCM_VehicleType_Reserved_EProj"; +VAL_ 1024 VCM_HandOfDrive 0 "VCM_HandOfDrive_Lhd" 1 "VCM_HandOfDrive_Rhd"; +VAL_ 1024 VCM_BatterySize 0 "VCM_BatterySize_Sna" 1 "VCM_BatterySize_A105kW" 2 "VCM_BatterySize_A130kW" 3 "VCM_BatterySize_A180kW" 4 "VCM_BatterySize_BxxxkW" 5 "VCM_BatterySize_CxxxkW" 6 "VCM_BatterySize_DxxxkW" 7 "VCM_BatterySize_ExxxkW"; +VAL_ 1024 VCM_Market 0 "VCM_Market_Sna" 1 "VCM_Market_RegionB" 2 "VCM_Market_RegionC" 3 "VCM_Market_RegionD" 4 "VCM_Market_RegionE" 5 "VCM_Market_RegionF" 6 "VCM_Market_RegionG" 7 "VCM_Market_RegionH"; +VAL_ 1640 OCS_FrontPassClass 0 "OCS_FrontPassClass_Classification_Unknown" 1 "OCS_FrontPassClass_Reserved_1" 2 "OCS_FrontPassClass_One_YO_CRS" 3 "OCS_FrontPassClass_Reserved_2" 4 "OCS_FrontPassClass_Reserved_3" 5 "OCS_FrontPassClass_Reserved_4" 6 "OCS_FrontPassClass_Small_Adult" 7 "OCS_FrontPassClass_Medium_Adult" 8 "OCS_FrontPassClass_Reserved_5" 9 "OCS_FrontPassClass_Reserved_6" 10 "OCS_FrontPassClass_Reserved_7" 11 "OCS_FrontPassClass_Reserved_8" 12 "OCS_FrontPassClass_Reserved_9" 13 "OCS_FrontPassClass_Reserved_10" 14 "OCS_FrontPassClass_Reserved_11" 15 "OCS_FrontPassClass_Reserved_12"; +VAL_ 1640 OCS_FrontPassClassValid 0 "Not_Valid" 1 "Valid"; +VAL_ 1640 OCS_FrontPassFaultStatus 0 "No_Fault_Present" 1 "Fault_Status" 2 "Reserved_1" 3 "Reserved_2"; +VAL_ 1640 OCS_Reserved_1 0 "OCS_Reserved_Reserved"; +VAL_ 1640 OCS_FrontPassSBRStatus 0 "Unknown" 1 "Empty" 2 "Occupied"; +VAL_ 1640 OCS_OperatingMode 0 "OCS_OperatingMode_Initialisation" 1 "OCS_OperatingMode_Normal_Mode" 2 "OCS_OperatingMode_Empty_Seat_Calibration_Active" 3 "OCS_OperatingMode_Barrier_Airbag_Test_Mode" 4 "OCS_OperatingMode_Voltage_Out_Of_Range" 5 "OCS_OperatingMode_Falut_Active" 6 "OCS_OperatingMode_Reserved_1" 7 "OCS_OperatingMode_Reserved_2" 8 "OCS_OperatingMode_Reserved_3" 9 "OCS_OperatingMode_Reserved_4" 10 "OCS_OperatingMode_Reserved_5" 11 "OCS_OperatingMode_Reserved_6" 12 "OCS_OperatingMode_Reserved_7" 13 "OCS_OperatingMode_Reserved_8" 14 "OCS_OperatingMode_Reserved_9" 15 "OCS_OperatingMode_Reserved_10"; +VAL_ 1640 OCS_Reserved_2 0 "OCS_Reserved_2_Reserved"; diff --git a/opendbc_repo/opendbc/dbc/tesla_can.dbc b/opendbc_repo/opendbc/dbc/tesla_can.dbc new file mode 100644 index 0000000000..56624c3e54 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/tesla_can.dbc @@ -0,0 +1,901 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: + NEO + MCU + GTW + EPAS + DI + ESP + SBW + STW + APP + DAS + XXX + +VAL_TABLE_ StW_AnglHP_Spd 16383 "SNA" ; +VAL_TABLE_ DI_aebFaultReason 15 "DI_AEB_FAULT_DAS_REQ_DI_UNAVAIL" 14 "DI_AEB_FAULT_ACCEL_REQ_INVALID" 13 "DI_AEB_FAULT_MIN_TIME_BTWN_EVENTS" 12 "DI_AEB_FAULT_ESP_MIA" 11 "DI_AEB_FAULT_ESP_FAULT" 10 "DI_AEB_FAULT_EPB_NOT_PARKED" 9 "DI_AEB_FAULT_ACCEL_OUT_OF_BOUNDS" 8 "DI_AEB_FAULT_PM_REQUEST" 7 "DI_AEB_FAULT_VEL_EST_ABNORMAL" 6 "DI_AEB_FAULT_DAS_SNA" 5 "DI_AEB_FAULT_DAS_CONTROL_MIA" 4 "DI_AEB_FAULT_SPEED_DELTA" 3 "DI_AEB_FAULT_EBR_FAULT" 2 "DI_AEB_FAULT_PM_MIA" 1 "DI_AEB_FAULT_EPB_MIA" 0 "DI_AEB_FAULT_NONE" ; +VAL_TABLE_ DI_aebLockState 3 "AEB_LOCK_STATE_SNA" 2 "AEB_LOCK_STATE_UNUSED" 1 "AEB_LOCK_STATE_UNLOCKED" 0 "AEB_LOCK_STATE_LOCKED" ; +VAL_TABLE_ DI_aebSmState 7 "DI_AEB_STATE_FAULT" 6 "DI_AEB_STATE_EXIT" 5 "DI_AEB_STATE_STANDSTILL" 4 "DI_AEB_STATE_STOPPING" 3 "DI_AEB_STATE_ENABLE" 2 "DI_AEB_STATE_ENABLE_INIT" 1 "DI_AEB_STATE_STANDBY" 0 "DI_AEB_STATE_UNAVAILABLE" ; +VAL_TABLE_ DI_aebState 7 "AEB_CAN_STATE_SNA" 4 "AEB_CAN_STATE_FAULT" 3 "AEB_CAN_STATE_STANDSTILL" 2 "AEB_CAN_STATE_ENABLED" 1 "AEB_CAN_STATE_STANDBY" 0 "AEB_CAN_STATE_UNAVAILABLE" ; +VAL_TABLE_ DI_epbInterfaceReady 1 "EPB_INTERFACE_READY" 0 "EPB_INTERFACE_NOT_READY" ; +VAL_TABLE_ DI_gear 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; +VAL_TABLE_ DI_gpoReason 8 "DI_GPO_NUMREASONS" 7 "DI_GPO_CAPACITOR_OVERTEMP" 6 "DI_GPO_NOT_ENOUGH_12V" 5 "DI_GPO_NO_BATTERY_POWER" 4 "DI_GPO_AMBIENT_OVERTEMP" 3 "DI_GPO_FLUID_DELTAT" 2 "DI_GPO_STATOR_OVERTEMP" 1 "DI_GPO_HEATSINK_OVERTEMP" 0 "DI_GPO_OUTLET_OVERTEMP" ; +VAL_TABLE_ DI_immobilizerCondition 1 "DI_IMM_CONDITION_LEARNED" 0 "DI_IMM_CONDITION_VIRGIN_SNA" ; +VAL_TABLE_ DI_immobilizerState 7 "DI_IMM_STATE_FAULT" 6 "DI_IMM_STATE_FAULTRETRY" 5 "DI_IMM_STATE_RESET" 4 "DI_IMM_STATE_LEARN" 3 "DI_IMM_STATE_DISARMED" 2 "DI_IMM_STATE_AUTHENTICATING" 1 "DI_IMM_STATE_REQUEST" 0 "DI_IMM_STATE_INIT_SNA" ; +VAL_TABLE_ DI_limpReason 24 "DI_LIMP_NUMREASONS" 23 "DI_LIMP_CAPACITOR_OVERTEMP" 22 "DI_LIMP_GTW_MIA" 21 "DI_LIMP_TRQCMD_VALIDITY_UNKNOWN" 20 "DI_LIMP_DI_MIA" 19 "DI_LIMP_CONFIG_MISMATCH" 18 "DI_LIMP_HEATSINK_TEMP" 17 "DI_LIMP_PMREQUEST" 16 "DI_LIMP_PMHEARTBEAT" 15 "DI_LIMP_TRQ_CROSS_CHECK" 14 "DI_LIMP_EXTERNAL_COMMAND" 13 "DI_LIMP_WRONG_CS_CALIBRATION" 12 "DI_LIMP_STATOR_TEMP" 11 "DI_LIMP_DELTAT_TOO_NEGATIVE" 10 "DI_LIMP_DELTAT_TOO_POSITIVE" 9 "DI_LIMP_AMBIENT_TEMP" 8 "DI_LIMP_OUTLET_TEMP" 7 "DI_LIMP_LOW_FLOW" 6 "DI_LIMP_BMS_MIA" 5 "DI_LIMP_12V_SUPPLY_UNDERVOLTAGE" 4 "DI_LIMP_NO_FLUID" 3 "DI_LIMP_NO_FUNC_HEATSINK_SENSOR" 2 "DI_LIMP_NO_FUNC_STATORT_SENSOR" 1 "DI_LIMP_BUSV_SENSOR_IRRATIONAL" 0 "DI_LIMP_PHASE_IMBALANCE" ; +VAL_TABLE_ DI_mode 2 "DI_MODE_DYNO" 1 "DI_MODE_DRIVE" 0 "DI_MODE_UNDEF" ; +VAL_TABLE_ DI_motorType 14 "DI_MOTOR_F2AE" 13 "DI_MOTOR_F2AD" 12 "DI_MOTOR_F2AC" 11 "DI_MOTOR_F2AB" 10 "DI_MOTOR_F1AC" 9 "DI_MOTOR_SSR1A" 8 "DI_MOTOR_F1A" 7 "DI_MOTOR_M7M6" 6 "DI_MOTOR_M8A" 5 "DI_MOTOR_M7M5" 4 "DI_MOTOR_M7M4" 3 "DI_MOTOR_M7M3" 2 "DI_MOTOR_ROADSTER_SPORT" 1 "DI_MOTOR_ROADSTER_BASE" 0 "DI_MOTOR_SNA" ; +VAL_TABLE_ DI_speedUnits 1 "DI_SPEED_KPH" 0 "DI_SPEED_MPH" ; +VAL_TABLE_ DI_state 4 "DI_STATE_ENABLE" 3 "DI_STATE_FAULT" 2 "DI_STATE_CLEAR_FAULT" 1 "DI_STATE_STANDBY" 0 "DI_STATE_PREAUTH" ; +VAL_TABLE_ DI_velocityEstimatorState 4 "VE_STATE_BACKUP_MOTOR" 3 "VE_STATE_BACKUP_WHEELS_B" 2 "VE_STATE_BACKUP_WHEELS_A" 1 "VE_STATE_WHEELS_NORMAL" 0 "VE_STATE_NOT_INITIALIZED" ; + + +BO_ 1160 DAS_steeringControl: 4 NEO + SG_ DAS_steeringControlType : 23|2@0+ (1,0) [0|0] "" EPAS + SG_ DAS_steeringControlChecksum : 31|8@0+ (1,0) [0|0] "" EPAS + SG_ DAS_steeringControlCounter : 19|4@0+ (1,0) [0|0] "" EPAS + SG_ DAS_steeringAngleRequest : 6|15@0+ (0.1,-1638.35) [-1638.35|1638.35] "deg" EPAS + SG_ DAS_steeringHapticRequest : 7|1@0+ (1,0) [0|0] "" EPAS + +BO_ 697 DAS_control: 8 NEO + SG_ DAS_setSpeed : 0|12@1+ (0.1,0) [0|409.4] "kph" NEO + SG_ DAS_accState : 12|4@1+ (1,0) [0|0] "" NEO + SG_ DAS_aebEvent : 16|2@1+ (1,0) [0|3] "" NEO + SG_ DAS_jerkMin : 18|9@1+ (0.03,-15.232) [-15.232|0.098] "m/s^3" NEO + SG_ DAS_jerkMax : 27|8@1+ (0.059,0) [0|15.045] "m/s^3" NEO + SG_ DAS_accelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO + SG_ DAS_accelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO + SG_ DAS_controlCounter : 53|3@1+ (1,0) [0|0] "" NEO + SG_ DAS_controlChecksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 521 DAS_longControl: 8 NEO + SG_ DAS_locMode : 0|2@1+ (1,0) [0|0] "" NEO + SG_ DAS_locState : 2|3@1+ (1,0) [0|0] "" NEO + SG_ DAS_locRequest : 5|3@1+ (1,0) [0|0] "" NEO + SG_ DAS_locJerkMin : 8|8@1+ (0.034,-8.67) [-8.67|0] "m/s^3" NEO + SG_ DAS_locJerkMax : 16|8@1+ (0.034,0) [0|8.67] "m/s^3" NEO + SG_ DAS_locSpeed : 24|11@1+ (0.1,0) [0|204.7] "kph" NEO + SG_ DAS_locAccelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO + SG_ DAS_locAccelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" NEO + SG_ DAS_longControlCounter : 53|3@1+ (1,0) [0|0] "" NEO + SG_ DAS_longControlChecksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 569 DAS_lanes: 8 NEO + SG_ DAS_leftLaneExists : 0|1@1+ (1,0) [0|0] "" NEO + SG_ DAS_rightLaneExists : 1|1@1+ (1,0) [0|0] "" NEO + SG_ DAS_virtualLaneWidth : 4|4@1+ (0.3125,2) [2|7] "m" NEO + SG_ DAS_virtualLaneViewRange : 8|8@1+ (1,0) [0|160] "m" NEO + SG_ DAS_virtualLaneC0 : 16|8@1+ (0.035,-3.5) [-3.5|3.5] "m" NEO + SG_ DAS_virtualLaneC1 : 24|8@1+ (0.0016,-0.2) [-0.2|0.2] "rad" NEO + SG_ DAS_virtualLaneC2 : 32|8@1+ (2E-05,-0.0025) [-0.0025|0.0025] "m-1" NEO + SG_ DAS_virtualLaneC3 : 40|8@1+ (2.4E-07,-3E-05) [-3E-05|3E-05] "m-2" NEO + SG_ DAS_leftLineUsage : 48|2@1+ (1,0) [0|3] "" NEO + SG_ DAS_rightLineUsage : 50|2@1+ (1,0) [0|3] "" NEO + SG_ DAS_leftFork : 52|2@1+ (1,0) [0|3] "" NEO + SG_ DAS_rightFork : 54|2@1+ (1,0) [0|3] "" NEO + SG_ DAS_lanesCounter : 60|4@1+ (1,0) [0|0] "" NEO + +BO_ 257 GTW_epasControl: 3 NEO + SG_ GTW_epasControlChecksum : 23|8@0+ (1,0) [0|255] "" NEO + SG_ GTW_epasControlCounter : 11|4@0+ (1,0) [0|15] "" NEO + SG_ GTW_epasControlType : 15|2@0+ (1,0) [-1|4] "" NEO + SG_ GTW_epasEmergencyOn : 7|1@0+ (1,0) [-1|2] "" NEO + SG_ GTW_epasLDWEnabled : 12|1@0+ (1,0) [-1|2] "" NEO + SG_ GTW_epasPowerMode : 6|4@0+ (1,0) [4|14] "" NEO + SG_ GTW_epasTuneRequest : 2|3@0+ (1,0) [-1|8] "" NEO + +BO_ 880 EPAS_sysStatus: 8 EPAS + SG_ EPAS_currentTuneMode : 7|4@0+ (1,0) [8|15] "" NEO + SG_ EPAS_eacErrorCode : 23|4@0+ (1,0) [-1|16] "" NEO + SG_ EPAS_eacStatus : 55|3@0+ (1,0) [5|7] "" NEO + SG_ EPAS_handsOnLevel : 39|2@0+ (1,0) [-1|4] "" NEO + SG_ EPAS_internalSAS : 37|14@0+ (0.1,-819.200012) [0|0] "deg" NEO + SG_ EPAS_steeringFault : 2|1@0+ (1,0) [-1|2] "" NEO + SG_ EPAS_steeringRackForce : 1|10@0+ (50,-25575) [0|0] "N" NEO + SG_ EPAS_steeringReduced : 3|1@0+ (1,0) [-1|2] "" NEO + SG_ EPAS_sysStatusChecksum : 63|8@0+ (1,0) [0|255] "" NEO + SG_ EPAS_sysStatusCounter : 51|4@0+ (1,0) [0|15] "" NEO + SG_ EPAS_torsionBarTorque : 19|12@0+ (0.01,-20.5) [0|0] "Nm" NEO + +BO_ 305 EPAS3P_sysStatus: 8 NEO + SG_ EPAS_currentTuneMode : 7|4@0+ (1,0) [0|0] "" NEO + SG_ EPAS_eacErrorCode : 23|4@0+ (1,0) [0|15] "" NEO + SG_ EPAS_eacStatus : 55|3@0+ (1,0) [0|7] "" NEO + SG_ EPAS_handsOnLevel : 39|2@0+ (1,0) [0|3] "" NEO + SG_ EPAS_internalSAS : 37|14@0+ (0.1,-819.2) [-819.2|819] "deg" NEO + SG_ EPAS_steeringFault : 2|1@0+ (1,0) [0|1] "" NEO + SG_ EPAS_steeringRackForce : 1|10@0+ (50,-25575) [-25575|25575] "N" NEO + SG_ EPAS_steeringReduced : 3|1@0+ (1,0) [0|1] "" NEO + SG_ EPAS_sysStatusChecksum : 63|8@0+ (1,0) [0|255] "" NEO + SG_ EPAS_sysStatusCounter : 51|4@0+ (1,0) [0|15] "" NEO + SG_ EPAS_torsionBarTorque : 19|12@0+ (0.01,-20.5) [-20.5|20.45] "Nm" NEO + +BO_ 3 STW_ANGL_STAT: 8 STW + SG_ StW_Angl : 5|14@0+ (0.5,-2048) [0|0] "deg" NEO + SG_ StW_AnglSpd : 21|14@0+ (0.5,-2048) [0|0] "/s" NEO + SG_ StW_AnglSens_Stat : 33|2@0+ (1,0) [-1|4] "" NEO + SG_ StW_AnglSens_Id : 35|2@0+ (1,0) [3|3] "" NEO + SG_ MC_STW_ANGL_STAT : 55|4@0+ (1,0) [0|15] "" NEO + SG_ CRC_STW_ANGL_STAT : 63|8@0+ (1,0) [0|255] "" NEO + +BO_ 14 STW_ANGLHP_STAT: 8 STW + SG_ StW_AnglHP : 5|14@0+ (0.1,-819.2) [-819.2|819] "deg" NEO + SG_ StW_AnglHP_Spd : 21|14@0+ (0.5,-4096) [-4096|4095.5] "deg/s" NEO + SG_ StW_AnglHP_Sens_Stat : 33|2@0+ (1,0) [0|0] "" NEO + SG_ StW_AnglHP_Sens_Id : 35|2@0+ (1,0) [0|0] "" NEO + SG_ MC_STW_ANGLHP_STAT : 55|4@0+ (1,0) [0|15] "" NEO + SG_ CRC_STW_ANGLHP_STAT : 63|8@0+ (1,0) [0|0] "" NEO + +BO_ 264 DI_torque1: 8 DI + SG_ DI_torqueDriver : 0|13@1- (0.25,0) [-750|750] "Nm" NEO + SG_ DI_torque1Counter : 13|3@1+ (1,0) [0|0] "" NEO + SG_ DI_torqueMotor : 16|13@1- (0.25,0) [-750|750] "Nm" NEO + SG_ DI_soptState : 29|3@1+ (1,0) [0|0] "" NEO + SG_ DI_motorRPM : 32|16@1- (1,0) [-17000|17000] "RPM" NEO + SG_ DI_pedalPos : 48|8@1+ (0.4,0) [0|100] "%" NEO + SG_ DI_torque1Checksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 280 DI_torque2: 6 DI + SG_ DI_torqueEstimate : 0|12@1- (0.5,0) [-750|750] "Nm" NEO + SG_ DI_gear : 12|3@1+ (1,0) [0|0] "" NEO + SG_ DI_brakePedal : 15|1@1+ (1,0) [0|0] "" NEO + SG_ DI_vehicleSpeed : 16|12@1+ (0.05,-25) [-25|179.75] "MPH" NEO + SG_ DI_gearRequest : 28|3@1+ (1,0) [0|0] "" NEO + SG_ DI_torqueInterfaceFailure : 31|1@1+ (1,0) [0|0] "" NEO + SG_ DI_torque2Counter : 32|4@1+ (1,0) [0|0] "" NEO + SG_ DI_brakePedalState : 36|2@1+ (1,0) [0|0] "" NEO + SG_ DI_epbParkRequest : 38|1@1+ (1,0) [0|0] "" NEO + SG_ DI_epbInterfaceReady : 39|1@1+ (1,0) [0|0] "" NEO + SG_ DI_torque2Checksum : 40|8@1+ (1,0) [0|0] "" NEO + +BO_ 309 ESP_135h: 5 ESP + SG_ ESP_135hChecksum : 23|8@0+ (1,0) [0|255] "" NEO + SG_ ESP_135hCounter : 11|4@0+ (1,0) [0|15] "" NEO + SG_ ESP_absBrakeEvent : 2|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_brakeDiscWipingActive : 4|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_brakeLamp : 3|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_espFaultLamp : 6|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_espLampFlash : 7|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_hillStartAssistActive : 1|2@0+ (1,0) [-1|4] "" NEO + SG_ ESP_messagePumpService : 24|1@0+ (1,0) [0|1] "" NEO + SG_ ESP_messagePumpFailure : 25|1@0+ (1,0) [0|1] "" NEO + SG_ ESP_messageEBDFailure : 26|1@0+ (1,0) [0|1] "" NEO + SG_ ESP_absFaultLamp : 27|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_tcDisabledByFault : 28|1@0+ (1,0) [0|1] "" NEO + SG_ ESP_messageDynoModeActive : 29|1@0+ (1,0) [0|1] "" NEO + SG_ ESP_hydraulicBoostEnabled : 30|1@0+ (1,0) [0|1] "" NEO + SG_ ESP_espOffLamp : 31|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_stabilityControlSts : 14|3@0+ (1,0) [6|7] "" NEO + SG_ ESP_tcLampFlash : 5|1@0+ (1,0) [-1|2] "" NEO + SG_ ESP_tcOffLamp : 15|1@0+ (1,0) [0|1] "" NEO + +BO_ 341 ESP_B: 8 ESP + SG_ ESP_BChecksum : 39|8@0+ (1,0) [0|255] "" NEO,EPAS + SG_ ESP_BCounter : 62|4@0+ (1,0) [1|15] "" NEO,EPAS + SG_ ESP_vehicleSpeed : 47|16@0+ (0.00999999978,0) [0|0] "kph" NEO,EPAS + SG_ ESP_vehicleSpeedQF : 57|2@0+ (1,0) [1|2] "" NEO,EPAS + SG_ ESP_wheelPulseCountFrL : 7|8@0+ (1,0) [0|254] "" NEO,EPAS + SG_ ESP_wheelPulseCountFrR : 15|8@0+ (1,0) [0|254] "" NEO,EPAS + SG_ ESP_wheelPulseCountReL : 23|8@0+ (1,0) [0|254] "" NEO,EPAS + SG_ ESP_wheelPulseCountReR : 31|8@0+ (1,0) [0|254] "" NEO,EPAS + +BO_ 513 SDM1: 5 GTW + SG_ SDM_bcklPassStatus : 3|2@0+ (1,0) [0|3] "" NEO + SG_ SDM_bcklDrivStatus : 5|2@0+ (1,0) [0|3] "" NEO + +BO_ 532 EPB_epasControl: 3 EPB + SG_ EPB_epasControlChecksum : 23|8@0+ (1,0) [0|255] "" NEO,EPAS + SG_ EPB_epasControlCounter : 11|4@0+ (1,0) [0|15] "" NEO,EPAS + SG_ EPB_epasEACAllow : 2|3@0+ (1,0) [4|7] "" NEO,EPAS + +BO_ 792 GTW_carState: 8 GTW + SG_ YEAR : 0|7@1+ (1,2000) [2000|2127] "Year" NEO + SG_ CERRD : 7|1@1+ (1,0) [0|1] "" NEO + SG_ MONTH : 8|4@1+ (1,0) [1|12] "Month" NEO + SG_ DOOR_STATE_FL : 12|2@1+ (1,0) [0|3] "" NEO + SG_ DOOR_STATE_FR : 14|2@1+ (1,0) [0|3] "" NEO + SG_ SECOND : 16|6@1+ (1,0) [0|59] "s" NEO + SG_ DOOR_STATE_RL : 22|2@1+ (1,0) [0|3] "" NEO + SG_ Hour : 24|5@1+ (1,0) [0|23] "h" NEO + SG_ DOOR_STATE_RR : 29|2@1+ (1,0) [0|3] "" NEO + SG_ DAY : 32|5@1+ (1,0) [0|31] "" NEO + SG_ MINUTE : 40|6@1+ (1,0) [0|59] "min" NEO + SG_ BOOT_STATE : 46|2@1+ (1,0) [0|3] "" NEO + SG_ GTW_updateInProgress : 48|2@1+ (1,0) [0|3] "" NEO + SG_ DOOR_STATE_FrontTrunk : 50|2@1+ (1,0) [0|3] "" NEO + SG_ MCU_factoryMode : 52|1@1+ (1,0) [0|1] "" NEO + SG_ MCU_transportModeOn : 53|1@0+ (1,0) [0|1] "" NEO + SG_ BC_headLightLStatus : 55|2@0+ (1,0) [0|3] "" NEO + SG_ BC_headLightRStatus : 57|2@0+ (1,0) [0|3] "" NEO + SG_ BC_indicatorLStatus : 59|2@0+ (1,0) [0|3] "" NEO + SG_ BC_indicatorRStatus : 61|2@0+ (1,0) [0|3] "" NEO + +BO_ 872 DI_state: 8 DI + SG_ DI_systemState : 0|3@1+ (1,0) [0|0] "" NEO + SG_ DI_vehicleHoldState : 3|3@1+ (1,0) [0|0] "" NEO + SG_ DI_proximity : 6|1@1+ (1,0) [0|0] "" NEO + SG_ DI_driveReady : 7|1@1+ (1,0) [0|0] "" NEO + SG_ DI_regenLight : 8|1@1+ (1,0) [0|0] "" NEO + SG_ DI_state : 9|3@1+ (1,0) [0|0] "" NEO + SG_ DI_cruiseState : 12|4@1+ (1,0) [0|0] "" NEO + SG_ DI_analogSpeed : 16|12@1+ (0.1,0) [0|150] "speed" NEO + SG_ DI_immobilizerState : 28|3@1+ (1,0) [0|0] "" NEO + SG_ DI_speedUnits : 31|1@1+ (1,0) [0|1] "" NEO + SG_ DI_cruiseSet : 32|9@1+ (0.5,0) [0|255.5] "speed" NEO + SG_ DI_aebState : 41|3@1+ (1,0) [0|0] "" NEO + SG_ DI_stateCounter : 44|4@1+ (1,0) [0|0] "" NEO + SG_ DI_digitalSpeed : 48|8@1+ (1,0) [0|250] "" NEO + SG_ DI_stateChecksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 109 SBW_RQ_SCCM: 4 STW + SG_ StW_Sw_Stat3 : 0|3@1+ (1,0) [0|0] "" NEO + SG_ MsgTxmtId : 6|2@1+ (1,0) [0|0] "" NEO + SG_ TSL_RND_Posn_StW : 8|4@1+ (1,0) [0|0] "" NEO + SG_ TSL_P_Psd_StW : 12|2@1+ (1,0) [0|0] "" NEO + SG_ MC_SBW_RQ_SCCM : 20|4@1+ (1,0) [0|15] "" NEO + SG_ CRC_SBW_RQ_SCCM : 24|8@1+ (1,0) [0|0] "" NEO + +BO_ 69 STW_ACTN_RQ: 8 STW + SG_ SpdCtrlLvr_Stat : 0|6@1+ (1,0) [0|0] "" NEO + SG_ VSL_Enbl_Rq : 6|1@1+ (1,0) [0|0] "" NEO + SG_ SpdCtrlLvrStat_Inv : 7|1@1+ (1,0) [0|0] "" NEO + SG_ DTR_Dist_Rq : 8|8@1+ (1,0) [0|200] "" NEO + SG_ TurnIndLvr_Stat : 16|2@1+ (1,0) [0|0] "" NEO + SG_ HiBmLvr_Stat : 18|2@1+ (1,0) [0|0] "" NEO + SG_ WprWashSw_Psd : 20|2@1+ (1,0) [0|0] "" NEO + SG_ WprWash_R_Sw_Posn_V2 : 22|2@1+ (1,0) [0|0] "" NEO + SG_ StW_Lvr_Stat : 24|3@1+ (1,0) [0|0] "" NEO + SG_ StW_Cond_Flt : 27|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Cond_Psd : 28|2@1+ (1,0) [0|0] "" NEO + SG_ HrnSw_Psd : 30|2@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw00_Psd : 32|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw01_Psd : 33|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw02_Psd : 34|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw03_Psd : 35|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw04_Psd : 36|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw05_Psd : 37|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw06_Psd : 38|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw07_Psd : 39|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw08_Psd : 40|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw09_Psd : 41|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw10_Psd : 42|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw11_Psd : 43|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw12_Psd : 44|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw13_Psd : 45|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw14_Psd : 46|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw15_Psd : 47|1@1+ (1,0) [0|0] "" NEO + SG_ WprSw6Posn : 48|3@1+ (1,0) [0|0] "" NEO + SG_ MC_STW_ACTN_RQ : 52|4@1+ (1,0) [0|15] "" NEO + SG_ CRC_STW_ACTN_RQ : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 643 BODY_R1: 8 GTW + SG_ AirTemp_Insd : 47|8@0+ (0.25,0) [0|63.5] "C" NEO + SG_ AirTemp_Outsd : 63|8@0+ (0.5,-40) [-40|86.5] "C" NEO + SG_ Bckl_Sw_RL_Stat_SAM_R : 49|2@0+ (1,0) [-1|4] "" NEO + SG_ Bckl_Sw_RM_Stat_SAM_R : 53|2@0+ (1,0) [-1|4] "" NEO + SG_ Bckl_Sw_RR_Stat_SAM_R : 51|2@0+ (1,0) [-1|4] "" NEO + SG_ DL_RLtch_Stat : 9|2@0+ (1,0) [-1|4] "" NEO + SG_ DrRLtch_FL_Stat : 1|2@0+ (1,0) [-1|4] "" NEO + SG_ DrRLtch_FR_Stat : 3|2@0+ (1,0) [-1|4] "" NEO + SG_ DrRLtch_RL_Stat : 5|2@0+ (1,0) [-1|4] "" NEO + SG_ DrRLtch_RR_Stat : 7|2@0+ (1,0) [-1|4] "" NEO + SG_ EngHd_Stat : 11|2@0+ (1,0) [-1|4] "" NEO + SG_ LoBm_On_Rq : 32|1@0+ (1,0) [0|1] "" NEO + SG_ HiBm_On : 33|1@0+ (1,0) [0|1] "" NEO + SG_ Hrn_On : 26|1@0+ (1,0) [0|1] "" NEO + SG_ IrLmp_D_Lt_Flt : 34|1@0+ (1,0) [0|1] "" NEO + SG_ IrLmp_P_Rt_Flt : 35|1@0+ (1,0) [0|1] "" NEO + SG_ LgtSens_Twlgt : 18|3@0+ (1,0) [0|7] "Steps" NEO + SG_ LgtSens_SNA : 19|1@0+ (1,0) [0|1] "" NEO + SG_ LgtSens_Tunnel : 20|1@0+ (1,0) [0|1] "" NEO + SG_ LgtSens_Flt : 21|1@0+ (1,0) [0|1] "" NEO + SG_ LgtSens_Night : 22|1@0+ (1,0) [-1|2] "" NEO + SG_ ADL_LoBm_On_Rq : 23|1@0+ (1,0) [0|1] "" NEO + SG_ LoBm_D_Lt_Flt : 36|1@0+ (1,0) [0|1] "" NEO + SG_ LoBm_P_Rt_Flt : 37|1@0+ (1,0) [0|1] "" NEO + SG_ MPkBrk_Stat : 28|1@0+ (1,0) [-1|2] "" NEO + SG_ RevGr_Engg : 39|2@0+ (1,0) [-1|4] "" NEO + SG_ StW_Cond_Stat : 55|2@0+ (1,0) [-1|4] "" NEO + SG_ Term54_Actv : 27|1@0+ (1,0) [0|1] "" NEO + SG_ Trlr_Stat : 25|2@0+ (1,0) [-1|4] "" NEO + SG_ VTA_Alm_Actv : 13|1@0+ (1,0) [0|1] "" NEO + SG_ WprOutsdPkPosn : 29|1@0+ (1,0) [0|1] "" NEO + +BO_ 760 UI_gpsVehicleSpeed: 8 GTW + SG_ UI_gpsHDOP : 0|8@1+ (0.1,0) [0|25.5] "1" DAS + SG_ UI_gpsVehicleHeading : 8|16@1+ (0.0078125,0) [0|511.9921875] "deg" DAS + SG_ UI_gpsVehicleSpeed : 24|16@1+ (0.00390625,0) [0|250.996] "km/hr" Vector__XXX + SG_ UI_userSpeedOffset : 40|6@1+ (1,-30) [-30|33] "kph/mph" DAS + SG_ UI_mapSpeedLimitUnits : 46|1@1+ (1,0) [0|1] "" DAS + SG_ UI_userSpeedOffsetUnits : 47|1@1+ (1,0) [0|1] "" DAS + SG_ UI_mppSpeedLimit : 48|5@1+ (5,0) [0|155] "kph/mph" DAS + SG_ UI_gpsNmeaMIA : 53|1@1+ (1,0) [0|0] "" DAS + +BO_ 536 MCU_chassisControl: 8 GTW + SG_ MCU_dasDebugEnable : 0|1@1+ (1,0) [0|0] "" NEO + SG_ MCU_parkBrakeRequest : 1|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_trailerModeCH : 3|1@1+ (1,0) [0|0] "" NEO + SG_ MCU_fcwSensitivity : 4|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_fcwEnable : 6|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_latControlEnable : 8|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_accOvertakeEnable : 10|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_ldwEnable : 12|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_aebEnable : 14|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_bsdEnable : 16|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_ahlbEnable : 18|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_parkSetting : 20|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_pedalSafetyEnable : 22|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_frontDefrostReq_das : 24|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_autoParkRequest : 26|4@1+ (1,0) [0|0] "" NEO + SG_ MCU_redLightStopSignEnable : 30|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_enableCreepTorqueCH : 32|1@1+ (1,0) [0|0] "" NEO + SG_ MCU_narrowGarages : 33|1@1+ (1,0) [0|0] "" NEO + SG_ MCU_rebootAutopilot : 34|1@1+ (1,0) [0|0] "" NEO + SG_ MCU_enableAutowipers : 35|1@1+ (1,0) [0|0] "" NEO + SG_ MCU_overPaintedUSS : 38|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_selfParkTune : 40|4@1+ (1,0) [0|15] "" NEO + SG_ MCU_towModeEnable : 44|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_zeroSpeedConfirmed : 46|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_aesEnable : 48|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_autoLaneChangeEnable : 50|2@1+ (1,0) [0|0] "" NEO + SG_ MCU_chassisControlCounter : 52|4@1+ (1,0) [0|0] "" NEO + SG_ MCU_chassisControlChecksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 904 MCU_clusterBacklightRequest: 3 NEO + SG_ MCU_clusterBacklightOn : 7|1@1+ (1,0) [0|1] "" NEO + SG_ MCU_clusterBrightnessLevel : 8|8@1+ (0.5,0) [0|127.5] "%" NEO + SG_ MCU_clusterReadyForDrive : 6|1@1+ (1,0) [-1|2] "" NEO + SG_ MCU_clusterReadyForPowerOff : 5|1@1+ (1,0) [0|1] "" NEO + +BO_ 984 MCU_locationStatus: 8 MCU + SG_ MCU_gpsAccuracy : 57|7@1+ (0.2,0) [0|0] "m" NEO + SG_ MCU_latitude : 0|28@1- (1E-06,0) [0|0] "deg" NEO + SG_ MCU_longitude : 28|29@1- (1E-06,0) [0|0] "deg" NEO + +BO_ 104 MCU_locationStatus2: 8 MCU + SG_ MCU_elevation : 0|32@1- (0.1,0) [0|0] "m" GTW + SG_ MCU_navigonExpectedSpeed : 32|7@1+ (1,0) [0|126] "mph" GTW + +BO_ 840 GTW_status: 8 GTW + SG_ GTW_accGoingDown : 6|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_accRailReq : 8|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_brakePressed : 1|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_driveGoingDown : 7|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_driveRailReq : 0|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_driverIsLeaving : 5|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_driverPresent : 2|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_hvacGoingDown : 11|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_hvacRailReq : 9|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_icPowerOff : 4|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_notEnough12VForDrive : 3|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_preconditionRequest : 10|1@0+ (1,0) [0|1] "" NEO + SG_ GTW_statusChecksum : 63|8@0+ (1,0) [0|255] "" NEO + SG_ GTW_statusCounter : 51|4@0+ (1,0) [0|15] "" NEO + +BO_ 920 GTW_carConfig: 8 GTW + SG_ GTW_performanceConfig : 2|3@0+ (1,0) [0|0] "" NEO + SG_ GTW_fourWheelDrive : 4|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_unknown1 : 5|1@0+ (1,0) [0|0] "" NEO + SG_ GTW_dasHw : 7|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_parkAssistInstalled : 9|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_forwardRadarHw : 11|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_airSuspensionInstalled : 14|3@0+ (1,0) [0|0] "" NEO + SG_ GTW_unknown2 : 15|1@0+ (1,0) [0|0] "" NEO + SG_ GTW_country : 23|16@0+ (1,0) [0|0] "" NEO + SG_ GTW_parkSensorGeometryType : 33|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_rhd : 34|1@0+ (1,0) [0|0] "" NEO + SG_ GTW_bodyControlsType : 35|1@0+ (1,0) [0|0] "" NEO + SG_ GTW_radarPosition : 39|4@0+ (1,0) [0|0] "" NEO + SG_ GTW_rearCornerRadarHw : 41|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_frontCornerRadarHw : 43|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_epasType : 45|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_chassisType : 47|2@0+ (1,0) [0|2] "" NEO + SG_ GTW_wheelType : 52|5@0+ (1,0) [0|0] "" NEO + SG_ GTW_rearSeatControllerMask : 55|3@0+ (1,0) [0|7] "" NEO + SG_ GTW_euVehicle : 56|1@0+ (1,0) [0|0] "" NEO + SG_ GTW_foldingMirrorsInstalled : 57|1@0+ (1,0) [0|0] "" NEO + SG_ GTW_brakeHwType : 59|2@0+ (1,0) [0|2] "" NEO + SG_ GTW_autopilot : 61|2@0+ (1,0) [0|0] "" NEO + SG_ GTW_unknown3 : 63|2@0+ (1,0) [0|0] "" NEO + +BO_ 1006 UI_autopilotControl: 8 GTW + SG_ UI_autopilotControlIndex M : 0|3@1+ (1,0) [0|7] "" APP,APS + SG_ UI_hovEnabled m0 : 3|1@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donDisableAutoWiperDuration m0 : 4|3@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donDisableOnAutoWiperSpeed m0 : 7|4@1+ (1,0) [0|0] "" APP,APS + SG_ UI_blindspotMinSpeed m0 : 11|4@1+ (1,0) [0|0] "" APP,APS + SG_ UI_blindspotDistance m0 : 15|3@1+ (1,0) [0|0] "" APP,APS + SG_ UI_blindspotTTC m0 : 18|3@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donStopEndOfRampBuffer m0 : 21|3@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donDisableCutin m0 : 24|1@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donMinGoreWidthForAbortMap m0 : 25|4@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donAlcProgGoreAbortThres m0 : 29|4@1+ (1,0) [0|0] "" APP,APS + SG_ UI_donMinGoreWidthForAbortNotMap m0 : 33|4@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcDisableUltrasonicCheck m0 : 37|1@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcUltrasonicDistance m0 : 38|4@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcUltrasonicWaitTime m0 : 42|3@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcEgoLeadingReactionAccel m0 : 48|2@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcMergIntervalRearDHyst m0 : 50|2@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcMergingIntervalHeadwayHyst m0 : 52|2@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcAssertivenessRate m0 : 54|2@1+ (1,0) [0|0] "" APP,APS + SG_ UI_alcViewRangeSensitivity m0 : 56|2@1+ (1,0) [0|0] "" APP,APS + SG_ UI_camBlockLaneCheckDisable m1 : 3|1@1+ (1,0) [0|0] "" APP,APS + SG_ UI_camBlockLaneCheckThreshold m1 : 4|6@1+ (0.01587,0) [0|1] "%" APP,APS + SG_ UI_camBlockBlurDisable m1 : 10|1@1+ (1,0) [0|0] "" APP,APS + SG_ UI_camBlockBlurThreshold m1 : 11|6@1+ (0.01587,0) [0|1] "%" APP,APS + +BO_ 728 UI_csaOfframpCurvature: 8 GTW + SG_ UI_csaOfframpCurvC2 : 0|16@1- (1E-06,0) [-0.032768|0.032767] "1/m" DAS + SG_ UI_csaOfframpCurvC3 : 16|16@1- (4E-09,0) [-0.000131072|0.000131068] "1/m2" DAS + SG_ UI_csaOfframpCurvRange : 32|8@1+ (2,0) [0|510] "m" DAS + SG_ UI_csaOfframpCurvCounter : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ UI_csaOfframpCurvUsingTspline : 48|1@1+ (1,0) [0|1] "" DAS + SG_ UI_csaOfframpCurvReserved : 49|7@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_csaOfframpCurvChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 744 UI_csaRoadCurvature: 8 GTW + SG_ UI_csaRoadCurvC2 : 0|16@1- (1E-06,0) [-0.032768|0.032767] "1/m" DAS + SG_ UI_csaRoadCurvC3 : 16|16@1- (4E-09,0) [-0.000131072|0.000131068] "1/m2" DAS + SG_ UI_csaRoadCurvRange : 32|8@1+ (2,0) [0|510] "m" DAS + SG_ UI_csaRoadCurvCounter : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ UI_csaRoadCurvUsingTspline : 48|1@1+ (1,0) [0|1] "" DAS + SG_ UI_csaRoadCurvReserved : 49|7@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_csaRoadCurvChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 1080 UI_driverAssistAnonDebugParams: 8 GTW + SG_ UI_anonDebugParam1 : 0|7@1+ (1,0) [0|100] "" DAS + SG_ UI_anonDebugFlag1 : 7|1@1+ (1,0) [0|0] "" DAS + SG_ UI_anonDebugParam2 : 8|7@1+ (1,0) [0|100] "" DAS + SG_ UI_anonDebugFlag2 : 15|1@1+ (1,0) [0|0] "" DAS + SG_ UI_anonDebugParam3 : 16|7@1+ (1,0) [0|100] "" DAS + SG_ UI_anonDebugFlag3 : 23|1@1+ (1,0) [0|0] "" DAS + SG_ UI_anonDebugParam4 : 24|7@1+ (1,0) [0|100] "" DAS + SG_ UI_anonDebugFlag4 : 31|1@1+ (1,0) [0|0] "" DAS + SG_ UI_anonDebugParam5 : 32|7@1+ (1,0) [0|100] "" DAS + SG_ UI_anonDebugParam6 : 40|7@1+ (1,0) [0|100] "" DAS + SG_ UI_anonDebugParam7 : 48|7@1+ (1,0) [0|100] "" DAS + SG_ UI_visionSpeedSlider : 56|7@1+ (1,0) [0|100] "" DAS + +BO_ 1000 UI_driverAssistControl: 8 GTW + SG_ UI_autopilotControlRequest : 0|1@1+ (1,0) [1|0] "" DAS + SG_ UI_ulcStalkConfirm : 1|1@1+ (1,0) [1|0] "" DAS + SG_ UI_summonHeartbeat : 2|2@1+ (1,0) [0|0] "" DAS + SG_ UI_curvSpeedAdaptDisable : 4|1@1+ (1,0) [0|0] "" DAS + SG_ UI_dasDeveloper : 5|1@1+ (1,0) [0|0] "" DAS + SG_ UI_enableVinAssociation : 6|1@1+ (1,0) [0|0] "" DAS + SG_ UI_lssLkaEnabled : 7|1@1+ (1,0) [0|0] "" DAS + SG_ UI_lssLdwEnabled : 8|1@1+ (1,0) [0|0] "" DAS + SG_ UI_autoSummonEnable : 10|1@1+ (1,0) [0|1] "" DAS + SG_ UI_exceptionListEnable : 11|1@1+ (1,0) [0|1] "" APP + SG_ UI_roadCheckDisable : 12|1@1+ (1,0) [0|0] "" DAS + SG_ UI_driveOnMapsEnable : 13|1@1+ (1,0) [0|0] "" DAS + SG_ UI_handsOnRequirementDisable : 14|1@1+ (1,0) [0|0] "" DAS + SG_ UI_forksEnable : 15|1@1+ (1,0) [0|0] "" DAS + SG_ UI_fuseLanesDisable : 16|1@1+ (1,0) [0|0] "" DAS + SG_ UI_fuseHPPDisable : 17|1@1+ (1,0) [0|0] "" DAS + SG_ UI_fuseVehiclesDisable : 18|1@1+ (1,0) [0|0] "" DAS + SG_ UI_enableNextGenACC : 19|1@1+ (1,0) [0|1] "" APP + SG_ UI_visionSpeedType : 20|2@1+ (1,0) [0|0] "" APP + SG_ UI_curvatureDatabaseOnly : 22|1@1+ (1,0) [0|0] "" DAS + SG_ UI_lssElkEnabled : 23|1@1+ (1,0) [0|0] "" DAS + SG_ UI_summonExitType : 24|2@1+ (1,0) [0|3] "" DAS + SG_ UI_summonEntryType : 26|2@1+ (1,0) [0|3] "" DAS + SG_ UI_selfParkRequest : 28|4@1+ (1,0) [0|15] "" DAS,PARK + SG_ UI_summonReverseDist : 32|6@1+ (1,0) [0|63] "" DAS + SG_ UI_undertakeAssistEnable : 38|1@1+ (1,0) [0|0] "" DAS + SG_ UI_adaptiveSetSpeedEnable : 39|1@1+ (1,0) [0|0] "" DAS + SG_ UI_drivingSide : 40|2@1+ (1,0) [0|3] "" DAS + SG_ UI_enableClipTelemetry : 42|1@1+ (1,0) [0|0] "" APP + SG_ UI_enableTripTelemetry : 43|1@1+ (1,0) [0|0] "" APP + SG_ UI_enableRoadSegmentTelemetry : 44|1@1+ (1,0) [0|0] "" APP + SG_ UI_followNavRouteEnable : 46|1@1+ (1,0) [0|0] "" APP + SG_ UI_ulcSpeedConfig : 48|2@1+ (1,0) [0|3] "" APP + SG_ UI_ulcBlindSpotConfig : 50|2@1+ (1,0) [0|3] "" APP + SG_ UI_autopilotAlwaysOn : 52|1@1+ (1,0) [0|1] "" APP + SG_ UI_accFromZero : 53|1@1+ (1,0) [0|1] "" APP + SG_ UI_alcOffHighwayEnable : 54|1@1+ (1,0) [0|1] "" APP + SG_ UI_validationLoop : 55|1@1+ (1,0) [0|1] "" APP + SG_ UI_ulcOffHighway : 56|1@1+ (1,0) [0|1] "" APP + SG_ UI_enableNavRouteCSA : 57|1@1+ (1,0) [0|1] "" APP + SG_ UI_enableCutinExperiments : 58|1@1+ (1,0) [0|1] "" APP + SG_ UI_source3D : 60|3@1+ (1,0) [0|7] "" APP + SG_ UI_enableVisionOnlyStops : 63|1@1+ (1,0) [0|1] "" APP + +BO_ 968 UI_driverAssistMapData: 8 GTW + SG_ UI_mapSpeedLimitDependency : 0|3@1+ (1,0) [0|0] "" DAS + SG_ UI_roadClass : 3|3@1+ (1,0) [0|0] "" DAS + SG_ UI_inSuperchargerGeofence : 6|1@1+ (1,0) [0|0] "" DAS + SG_ UI_mapSpeedUnits : 7|1@1+ (1,0) [0|0] "" DAS + SG_ UI_mapSpeedLimit : 8|5@1+ (1,0) [0|0] "" DAS + SG_ UI_mapSpeedLimitType : 13|3@1+ (1,0) [0|0] "" DAS + SG_ UI_countryCode : 16|10@1+ (1,0) [0|0] "" DAS + SG_ UI_streetCount : 26|2@1+ (1,0) [0|0] "" DAS + SG_ UI_gpsRoadMatch : 28|1@1+ (1,0) [0|0] "" DAS + SG_ UI_navRouteActive : 29|1@1+ (1,0) [0|0] "" DAS + SG_ UI_parallelAutoparkEnabled : 30|1@1+ (1,0) [0|1] "" DAS + SG_ UI_perpendicularAutoparkEnabled : 31|1@1+ (1,0) [0|1] "" DAS + SG_ UI_nextBranchDist : 32|5@1+ (10,0) [0|300] "m" DAS + SG_ UI_controlledAccess : 37|1@1+ (1,0) [0|0] "" DAS + SG_ UI_nextBranchLeftOffRamp : 38|1@1+ (1,0) [0|0] "" DAS + SG_ UI_nextBranchRightOffRamp : 39|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectLeftLane : 40|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectRightLane : 41|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectHPP : 42|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectNav : 43|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectLeftFreeSpace : 44|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectRightFreeSpace : 45|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectAutosteer : 46|1@1+ (1,0) [0|0] "" DAS + SG_ UI_rejectHandsOn : 47|1@1+ (1,0) [0|0] "" DAS + SG_ UI_acceptBottsDots : 48|1@1+ (1,0) [0|0] "" DAS + SG_ UI_autosteerRestricted : 49|1@1+ (1,0) [0|0] "" DAS + SG_ UI_pmmEnabled : 50|1@1+ (1,0) [0|0] "" DAS + SG_ UI_scaEnabled : 51|1@1+ (1,0) [0|0] "" DAS + SG_ UI_mapDataCounter : 52|4@1+ (1,0) [0|0] "" DAS + SG_ UI_mapDataChecksum : 56|8@1+ (1,0) [0|0] "" DAS + +BO_ 568 UI_driverAssistRoadSign: 8 GTW + SG_ UI_roadSign M : 0|8@1+ (1,0) [0|0] "" DAS + SG_ UI_splineLocConfidence : 40|7@1+ (1,0) [0|100] "" DAS + SG_ UI_splineID : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ UI_roadSignCounter : 52|4@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_roadSignChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_dummyData m0 : 8|1@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_stopSignStopLineDist m1 : 8|10@1+ (0.25,-8) [-8|247.5] "m" Vector__XXX + SG_ UI_stopSignStopLineConf m1 : 18|7@1+ (1,0) [0|100] "" Vector__XXX + SG_ UI_trafficLightStopLineDist m2 : 8|10@1+ (0.25,-8) [-8|247.5] "m" Vector__XXX + SG_ UI_trafficLightStopLineConf m2 : 18|7@1+ (1,0) [0|100] "" Vector__XXX + SG_ UI_baseMapSpeedLimitMPS m3 : 8|8@1+ (0.25,0) [0|63.75] "m/s" DAS + SG_ UI_bottomQrtlFleetSpeedMPS m3 : 16|8@1+ (0.25,0) [0|63.75] "m/s" DAS + SG_ UI_topQrtlFleetSpeedMPS m3 : 24|8@1+ (0.25,0) [0|63.75] "m/s" DAS + SG_ UI_meanFleetSplineSpeedMPS m4 : 8|8@1+ (0.25,0) [0|63.75] "m/s" DAS + SG_ UI_medianFleetSpeedMPS m4 : 16|8@1+ (0.25,0) [0|63.75] "m/s" DAS + SG_ UI_meanFleetSplineAccelMPS2 m4 : 24|8@1+ (0.05,-6.35) [-6.35|6.4] "m/s^2" DAS + SG_ UI_rampType m4 : 32|3@1+ (1,0) [0|7] "" DAS + SG_ UI_currSplineIdFull m5 : 8|32@1+ (1,0) [0|1] "" APP + + +BO_ 696 UI_radarMapData: 8 GTW + SG_ UI_radarTargetDx : 0|8@1+ (1,-95) [-95|160] "m" DAS + SG_ UI_radarTargetDxEnd : 8|8@1+ (1,0) [0|255] "m" DAS + SG_ UI_radarTargetTrustMap : 16|1@1+ (1,0) [0|1] "" DAS + SG_ UI_radarEnableBraking : 17|1@1+ (1,0) [0|1] "" DAS + SG_ UI_radarMapDataCounter : 52|4@1+ (1,0) [0|0] "" DAS + SG_ UI_radarMapDataChecksum : 56|8@1+ (1,0) [0|0] "" DAS + +BO_ 712 UI_roadCurvature: 8 GTW + SG_ UI_roadCurvC0 : 0|11@1- (0.02,0) [-20.48|20.46] "m" DAS + SG_ UI_roadCurvC1 : 11|10@1- (0.00075,0) [-0.384|0.38325] "1" DAS + SG_ UI_roadCurvC2 : 21|14@1- (7.5E-06,0) [-0.03072|0.03071625] "1/m" DAS + SG_ UI_roadCurvC3 : 35|13@1- (3E-08,0) [-0.00012288|0.00012285] "1/m2" DAS + SG_ UI_roadCurvRange : 48|6@1+ (4,0) [0|252] "m" DAS + SG_ UI_roadCurvHealth : 54|2@1+ (1,0) [0|0] "" DAS + SG_ UI_roadCurvChecksum : 56|8@1+ (1,0) [0|0] "" Vector__XXX + +BO_ 582 UI_solarData: 5 GTW + SG_ UI_solarAzimuthAngle : 0|16@1- (1,0) [0|360] "deg" APP + SG_ UI_solarAzimuthAngleCarRef : 16|9@1- (1,0) [-180|180] "deg" APP + SG_ UI_isSunUp : 25|1@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_solarElevationAngle : 32|8@1- (1,0) [-90|90] "deg" APP + +BO_ 824 UI_status: 8 GTW + SG_ UI_touchActive : 0|1@1+ (1,0) [0|0] "" IC + SG_ UI_audioActive : 1|1@1+ (1,0) [0|0] "" IC + SG_ UI_bluetoothActive : 2|1@1+ (1,0) [0|0] "" IC + SG_ UI_cellActive : 3|1@1+ (1,0) [0|0] "" IC + SG_ UI_displayReady : 4|1@1+ (1,0) [0|0] "" IC + SG_ UI_gpsActive : 5|1@1+ (1,0) [0|0] "" IC + SG_ UI_wifiConnected : 6|1@1+ (1,0) [0|0] "" IC,APP + SG_ UI_systemActive : 7|1@1+ (1,0) [0|0] "" IC + SG_ UI_xmActive : 8|1@1+ (1,0) [0|0] "" IC + SG_ UI_displayOn : 9|1@1+ (1,0) [0|0] "" IC,APP + SG_ UI_readyForDrive : 10|1@1+ (1,0) [0|0] "" IC + SG_ UI_cellConnected : 11|1@1+ (1,0) [0|0] "" IC,APP + SG_ UI_vpnActive : 12|1@1+ (1,0) [0|0] "" IC,APP + SG_ UI_wifiActive : 13|1@1+ (1,0) [0|0] "" IC + SG_ UI_cameraActive : 14|1@1+ (1,0) [0|0] "" IC,APP + SG_ UI_usbActive : 15|1@1+ (1,0) [0|0] "" IC + SG_ UI_screenshotActive : 16|1@1+ (1,0) [0|0] "" IC,APP + SG_ UI_monitorModemPower : 17|1@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_factoryReset : 18|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ UI_cellNetworkTechnology : 20|4@1+ (1,0) [0|15] "" APP + SG_ UI_tegraCoreTemperature : 24|8@1+ (1,-64) [0|0] "deg C" IC + SG_ UI_tegraAmbientTemperature : 32|8@1+ (1,-64) [0|0] "deg C" IC + SG_ UI_googleWifiUsages : 40|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_autopilotTrial : 48|2@1+ (1,0) [0|0] "" APP + SG_ UI_cellSignalBars : 50|3@1+ (1,0) [0|7] "" APP + SG_ UI_hardwareType : 53|2@1+ (1,0) [0|3] "" APP + SG_ UI_developmentCar : 55|1@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_cellReceiverPower : 56|8@1+ (1,-128) [-128|127] "dB" APP + +BO_ 1064 UI_telemetryControl: 8 GTW + SG_ UI_TCR_enable : 0|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_moveStateStanding : 1|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_moveStateStopped : 2|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_moveStateMoving : 3|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_moveStateIndeterm : 4|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_classConstElem : 5|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_classMovingPed : 6|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_classMovingTwoWheel : 7|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_classMovingFourWheel : 8|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_classUnknown : 9|1@1+ (1,0) [0|0] "" DAS + SG_ UI_TCR_downSampleFactor : 16|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ UI_TCR_wExist : 24|5@1+ (1,0) [0|31] "" Vector__XXX + SG_ UI_TCR_vehSpeed : 32|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ UI_TCR_minRCS : 40|8@1+ (0.25,-14) [-14|49.75] "dB" Vector__XXX + SG_ UI_TCR_maxDy : 48|5@1+ (0.5,0) [0|15.5] "m" Vector__XXX + SG_ UI_TCR_maxObjects : 56|5@1+ (1,0) [0|31] "" Vector__XXX + SG_ UI_TCR_maxRoadClass : 61|3@1+ (1,0) [0|7] "" Vector__XXX + +BO_ 522 BrakeMessage: 8 XXX + SG_ driverBrakeStatus : 2|2@1+ (1,0) [0|3] "" XXX + +BO_ 921 AutopilotStatus: 8 XXX + SG_ autopilotStatus : 0|4@1+ (1,0) [0|0] "" XXX + SG_ DAS_blindSpotRearLeft : 4|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_blindSpotRearRight : 6|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_fusedSpeedLimit : 8|5@1+ (5,0) [0|150] "kph/mph" XXX + SG_ DAS_suppressSpeedWarning : 13|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_summonObstacle : 14|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_summonClearedGate : 15|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_visionOnlySpeedLimit : 16|5@1+ (5,0) [0|150] "kph/mph" XXX + SG_ DAS_heaterState : 21|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_forwardCollisionWarning : 22|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_autoparkReady : 24|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_autoParked : 25|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_autoparkWaitingForBrake : 26|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_summonFwdLeashReached : 28|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_summonRvsLeashReached : 29|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_sideCollisionAvoid : 30|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_sideCollisionWarning : 32|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_sideCollisionInhibit : 34|1@1+ (1,0) [0|0] "" XXX + SG_ DAS_csaState : 35|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_laneDepartureWarning : 37|3@1+ (1,0) [0|0] "" XXX + SG_ DAS_fleetSpeedState : 40|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_autopilotHandsOnState : 42|4@1+ (1,0) [0|0] "" XXX + SG_ DAS_autoLaneChangeState : 46|5@1+ (1,0) [0|0] "" XXX + SG_ DAS_summonAvailable : 51|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_statusCounter : 52|4@1+ (1,0) [0|0] "" XXX + SG_ DAS_statusChecksum : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 905 DAS_status2: 8 XXX + SG_ DAS_accSpeedLimit : 0|10@1+ (0.2,0) [0|204.6] "mph" XXX + SG_ DAS_pmmObstacleSeverity : 10|3@1+ (1,0) [0|7] "" XXX + SG_ DAS_pmmLoggingRequest : 13|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_activationFailureStatus : 14|2@1+ (1,0) [0|1] "" XXX + SG_ DAS_pmmUltrasonicsFaultReason : 16|3@1+ (1,0) [0|7] "" XXX + SG_ DAS_pmmRadarFaultReason : 19|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_pmmSysFaultReason : 21|3@1+ (1,0) [0|7] "" XXX + SG_ DAS_pmmCameraFaultReason : 24|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_ACC_report : 26|5@1+ (1,0) [0|0] "" XXX + SG_ DAS_lssState : 31|3@1+ (1,0) [0|0] "" XXX + SG_ DAS_radarTelemetry : 34|2@1+ (1,0) [0|0] "" XXX + SG_ DAS_robState : 36|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_driverInteractionLevel : 38|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_ppOffsetDesiredRamp : 40|8@1+ (0.01,-1.28) [-1.28|1.27] "m" XXX + SG_ DAS_longCollisionWarning : 48|4@1+ (1,0) [0|15] "" XXX + SG_ DAS_status2Counter : 52|4@1+ (1,0) [0|0] "" XXX + SG_ DAS_status2Checksum : 56|8@1+ (1,0) [0|0] "" XXX + +BO_ 1001 DAS_bodyControls: 8 XXX + SG_ DAS_headlightRequest : 0|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_hazardLightRequest : 2|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_wiperSpeed : 4|4@1+ (1,0) [0|15] "" XXX + SG_ DAS_turnIndicatorRequest : 8|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_highLowBeamDecision : 10|2@1+ (1,0) [0|3] "" XXX + SG_ DAS_highLowBeamOffReason : 12|3@1+ (1,0) [0|4] "" XXX + SG_ DAS_turnIndicatorRequestReason : 16|4@1+ (1,0) [0|15] "" XXX + SG_ DAS_bodyControlsCounter : 52|4@1+ (1,0) [0|15] "" XXX + SG_ DAS_bodyControlsChecksum : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 780 DriverSeat: 8 XXX + SG_ occupancyStatus : 16|3@1+ (1,0) [0|7] "" XXX + SG_ buckleStatus : 19|2@1+ (1,0) [0|3] "" XXX + +VAL_ 3 StW_Angl 16383 "SNA" ; +VAL_ 3 StW_AnglSens_Id 2 "MUST" 0 "PSBL" 1 "SELF" ; +VAL_ 3 StW_AnglSens_Stat 2 "ERR" 3 "ERR_INI" 1 "INI" 0 "OK" ; +VAL_ 3 StW_AnglSpd 16383 "SNA" ; +VAL_ 14 StW_AnglHP 16383 "SNA" ; +VAL_ 14 StW_AnglHP_Spd 16383 "SNA" ; +VAL_ 14 StW_AnglHP_Sens_Stat 3 "SNA" 2 "ERR" 1 "INI" 0 "OK" ; +VAL_ 14 StW_AnglHP_Sens_Id 3 "SNA" 2 "KOSTAL" 1 "DELPHI" 0 "TEST" ; +VAL_ 69 SpdCtrlLvr_Stat 32 "DN_1ST" 16 "UP_1ST" 8 "DN_2ND" 4 "UP_2ND" 2 "RWD" 1 "FWD" 0 "IDLE" ; +VAL_ 69 DTR_Dist_Rq 255 "SNA" 200 "ACC_DIST_7" 166 "ACC_DIST_6" 133 "ACC_DIST_5" 100 "ACC_DIST_4" 66 "ACC_DIST_3" 33 "ACC_DIST_2" 0 "ACC_DIST_1" ; +VAL_ 69 TurnIndLvr_Stat 3 "SNA" 2 "RIGHT" 1 "LEFT" 0 "IDLE" ; +VAL_ 69 HiBmLvr_Stat 3 "SNA" 2 "HIBM_FLSH_ON_PSD" 1 "HIBM_ON_PSD" 0 "IDLE" ; +VAL_ 69 WprWashSw_Psd 3 "SNA" 2 "WASH" 1 "TIPWIPE" 0 "NPSD" ; +VAL_ 69 WprWash_R_Sw_Posn_V2 3 "SNA" 2 "WASH" 1 "INTERVAL" 0 "OFF" ; +VAL_ 69 StW_Lvr_Stat 4 "STW_BACK" 3 "STW_FWD" 2 "STW_DOWN" 1 "STW_UP" 0 "NPSD" ; +VAL_ 69 StW_Cond_Psd 3 "SNA" 2 "DOWN" 1 "UP" 0 "NPSD" ; +VAL_ 69 HrnSw_Psd 3 "SNA" 2 "NDEF2" 1 "PSD" 0 "NPSD" ; +VAL_ 69 StW_Sw00_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 69 StW_Sw01_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 69 StW_Sw03_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 69 StW_Sw04_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 69 WprSw6Posn 7 "SNA" 6 "STAGE2" 5 "STAGE1" 4 "INTERVAL4" 3 "INTERVAL3" 2 "INTERVAL2" 1 "INTERVAL1" 0 "OFF" ; +VAL_ 257 GTW_epasControlType 0 "WITHOUT" 1 "WITH_ANGLE" 3 "WITH_BOTH" 2 "WITH_TORQUE" ; +VAL_ 109 StW_Sw_Stat3 7 "SNA" 6 "NDEF6" 5 "NDEF5" 4 "NDEF4" 3 "PLUS_MINUS" 2 "MINUS" 1 "PLUS" 0 "NPSD" ; +VAL_ 109 MsgTxmtId 3 "NDEF3" 2 "NDEF2" 1 "SCCM" 0 "EWM" ; +VAL_ 109 TSL_RND_Posn_StW 15 "SNA" 8 "D" 6 "INI" 4 "N_DOWN" 2 "N_UP" 1 "R" 0 "IDLE" ; +VAL_ 109 TSL_P_Psd_StW 3 "SNA" 2 "INI" 1 "PSD" 0 "IDLE" ; +VAL_ 257 GTW_epasEmergencyOn 1 "EMERGENCY_POWER" 0 "NONE" ; +VAL_ 257 GTW_epasLDWEnabled 1 "ALLOWED" 0 "INHIBITED" ; +VAL_ 257 GTW_epasPowerMode 0 "DRIVE_OFF" 1 "DRIVE_ON" 3 "LOAD_SHED" 2 "SHUTTING_DOWN" 15 "SNA" ; +VAL_ 257 GTW_epasTuneRequest 1 "DM_COMFORT" 3 "DM_SPORT" 2 "DM_STANDARD" 0 "FAIL_SAFE_DEFAULT" 4 "RWD_COMFORT" 6 "RWD_SPORT" 5 "RWD_STANDARD" 7 "SNA" ; +VAL_ 264 DI_torqueDriver -4096 "SNA" ; +VAL_ 264 DI_torqueMotor -4096 "SNA" ; +VAL_ 264 DI_soptState 7 "SOPT_TEST_SNA" 4 "SOPT_TEST_NOT_RUN" 3 "SOPT_TEST_PASSED" 2 "SOPT_TEST_FAILED" 1 "SOPT_TEST_IN_PROGRESS" 0 "SOPT_PRE_TEST" ; +VAL_ 264 DI_motorRPM -32768 "SNA" ; +VAL_ 264 DI_pedalPos 255 "SNA" ; +VAL_ 280 DI_torqueEstimate -2048 "SNA" ; +VAL_ 280 DI_gear 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; +VAL_ 280 DI_brakePedal 1 "Applied" 0 "Not_applied" ; +VAL_ 280 DI_vehicleSpeed 4095 "SNA" ; +VAL_ 280 DI_gearRequest 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; +VAL_ 280 DI_torqueInterfaceFailure 1 "TORQUE_INTERFACE_FAILED" 0 "TORQUE_INTERFACE_NORMAL" ; +VAL_ 280 DI_brakePedalState 3 "SNA" 2 "INVALID" 1 "ON" 0 "OFF" ; +VAL_ 280 DI_epbParkRequest 1 "Park_requested" 0 "No_request" ; +VAL_ 280 DI_epbInterfaceReady 1 "EPB_INTERFACE_READY" 0 "EPB_INTERFACE_NOT_READY" ; +VAL_ 309 ESP_absBrakeEvent 1 "ACTIVE" 0 "NOT_ACTIVE" ; +VAL_ 309 ESP_brakeDiscWipingActive 1 "ACTIVE" 0 "INACTIVE" ; +VAL_ 309 ESP_brakeLamp 0 "OFF" 1 "ON" ; +VAL_ 309 ESP_espFaultLamp 0 "OFF" 1 "ON" ; +VAL_ 309 ESP_espLampFlash 1 "FLASH" 0 "OFF" ; +VAL_ 309 ESP_hillStartAssistActive 1 "ACTIVE" 0 "INACTIVE" 2 "NOT_AVAILABLE" 3 "SNA" ; +VAL_ 309 ESP_absFaultLamp 0 "OFF" 1 "ON" ; +VAL_ 309 ESP_espOffLamp 0 "OFF" 1 "ON" ; +VAL_ 309 ESP_stabilityControlSts 2 "ENGAGED" 3 "FAULTED" 5 "INIT" 4 "NOT_CONFIGURED" 0 "OFF" 1 "ON" ; +VAL_ 309 ESP_tcLampFlash 1 "FLASH" 0 "OFF" ; +VAL_ 568 UI_mapSpeedLimit 31 "SNA" 30 "UNLIMITED" 29 "LESS_OR_EQ_160" 28 "LESS_OR_EQ_150" 27 "LESS_OR_EQ_140" 26 "LESS_OR_EQ_130" 25 "LESS_OR_EQ_120" 24 "LESS_OR_EQ_115" 23 "LESS_OR_EQ_110" 22 "LESS_OR_EQ_105" 21 "LESS_OR_EQ_100" 20 "LESS_OR_EQ_95" 19 "LESS_OR_EQ_90" 18 "LESS_OR_EQ_85" 17 "LESS_OR_EQ_80" 16 "LESS_OR_EQ_75" 15 "LESS_OR_EQ_70" 14 "LESS_OR_EQ_65" 13 "LESS_OR_EQ_60" 12 "LESS_OR_EQ_55" 11 "LESS_OR_EQ_50" 10 "LESS_OR_EQ_45" 9 "LESS_OR_EQ_40" 8 "LESS_OR_EQ_35" 7 "LESS_OR_EQ_30" 6 "LESS_OR_EQ_25" 5 "LESS_OR_EQ_20" 4 "LESS_OR_EQ_15" 3 "LESS_OR_EQ_10" 2 "LESS_OR_EQ_7" 1 "LESS_OR_EQ_5" 0 "UNKNOWN" ; +VAL_ 569 DAS_leftLineUsage 3 "BLACKLISTED" 2 "FUSED" 1 "AVAILABLE" 0 "REJECTED_UNAVAILABLE" ; +VAL_ 569 DAS_rightLineUsage 3 "BLACKLISTED" 2 "FUSED" 1 "AVAILABLE" 0 "REJECTED_UNAVAILABLE" ; +VAL_ 569 DAS_leftFork 3 "LEFT_FORK_UNAVAILABLE" 2 "LEFT_FORK_SELECTED" 1 "LEFT_FORK_AVAILABLE" 0 "LEFT_FORK_NONE" ; +VAL_ 569 DAS_rightFork 3 "RIGHT_FORK_UNAVAILABLE" 2 "RIGHT_FORK_SELECTED" 1 "RIGHT_FORK_AVAILABLE" 0 "RIGHT_FORK_NONE" ; +VAL_ 521 DAS_locMode 3 "DAS_LOC_DRIVERLESS" 2 "DAS_LOC_RESTRICTED" 1 "DAS_LOC_NORMAL" 0 "DAS_LOC_OFF" ; +VAL_ 521 DAS_locState 7 "DAS_LOC_FAULT_SNA" 6 "DAS_LOC_AEB_ACTIVE" 2 "DAS_LOC_CANCEL_SILENT" 1 "DAS_LOC_CANCEL_GENERIC" 0 "DAS_LOC_HEALTHY" ; +VAL_ 521 DAS_locRequest 4 "DAS_RQ_PARK" 3 "DAS_RQ_HOLD" 2 "DAS_RQ_BACKWARD" 1 "DAS_RQ_FORWARD" 0 "DAS_RQ_IDLE" ; +VAL_ 521 DAS_locJerkMin 255 "SNA" ; +VAL_ 521 DAS_locJerkMax 255 "SNA" ; +VAL_ 521 DAS_locSpeed 2047 "SNA" ; +VAL_ 521 DAS_locAccelMin 511 "SNA" ; +VAL_ 521 DAS_locAccelMax 511 "SNA" ; +VAL_ 522 driverBrakeStatus 2 "APPLIED" 1 "NOT_APPLIED" ; +VAL_ 760 UI_mapSpeedLimitUnits 1 "KPH" 0 "MPH" ; +VAL_ 760 UI_userSpeedOffsetUnits 1 "KPH" 0 "MPH" ; +VAL_ 643 AirTemp_Insd 255 "SNA" ; +VAL_ 643 AirTemp_Outsd 254 "INIT" 255 "SNA" ; +VAL_ 643 Bckl_Sw_RL_Stat_SAM_R 2 "FLT" 1 "NOT" 0 "OK" 3 "SNA" ; +VAL_ 643 Bckl_Sw_RM_Stat_SAM_R 2 "FLT" 1 "NOT" 0 "OK" 3 "SNA" ; +VAL_ 643 Bckl_Sw_RR_Stat_SAM_R 2 "FLT" 1 "NOT" 0 "OK" 3 "SNA" ; +VAL_ 643 DL_RLtch_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; +VAL_ 643 DrRLtch_FL_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; +VAL_ 643 DrRLtch_FR_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; +VAL_ 643 DrRLtch_RL_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; +VAL_ 643 DrRLtch_RR_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; +VAL_ 643 EngHd_Stat 1 "CLS" 0 "NDEF0" 2 "OPN" 3 "SNA" ; +VAL_ 643 LgtSens_Night 0 "DAY" 1 "NIGHT" ; +VAL_ 643 MPkBrk_Stat 1 "ENGG" 0 "RELS" ; +VAL_ 643 RevGr_Engg 0 "DISENGG" 1 "ENGG" 2 "NDEF2" 3 "SNA" ; +VAL_ 643 StW_Cond_Stat 3 "BLINK" 1 "NDEF1" 0 "OFF" 2 "ON" ; +VAL_ 643 Trlr_Stat 2 "NDEF2" 0 "NONE" 1 "OK" 3 "SNA" ; +VAL_ 697 DAS_setSpeed 4095 "SNA" ; +VAL_ 697 DAS_accState 15 "FAULT_SNA" 13 "ACC_CANCEL_GENERIC_SILENT" 11 "APC_SELFPARK_START" 10 "APC_UNPARK_COMPLETE" 9 "APC_PAUSE" 8 "APC_ABORT" 7 "APC_COMPLETE" 6 "APC_FORWARD" 5 "APC_BACKWARD" 4 "ACC_ON" 3 "ACC_HOLD" 0 "ACC_CANCEL_GENERIC" ; +VAL_ 697 DAS_aebEvent 3 "AEB_SNA" 2 "AEB_FAULT" 1 "AEB_ACTIVE" 0 "AEB_NOT_ACTIVE" ; +VAL_ 697 DAS_jerkMin 511 "SNA" ; +VAL_ 697 DAS_jerkMax 255 "SNA" ; +VAL_ 697 DAS_accelMin 511 "SNA" ; +VAL_ 697 DAS_accelMax 511 "SNA" ; +VAL_ 780 occupancyStatus 1 "OCCUPIED" 0 "UNOCCUPIED" ; +VAL_ 780 buckleStatus 1 "LATCHED" 0 "UNLATCHED" ; +VAL_ 792 BOOT_STATE 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; +VAL_ 792 CERRD 1 "CAN error detect" 0 "no Can error detected" ; +VAL_ 792 DAY 1 "Init" 0 "SNA" ; +VAL_ 792 DOOR_STATE_FL 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; +VAL_ 792 DOOR_STATE_FR 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; +VAL_ 792 DOOR_STATE_FrontTrunk 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; +VAL_ 792 DOOR_STATE_RL 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; +VAL_ 792 DOOR_STATE_RR 2 "Init" 3 "SNA" 0 "closed" 1 "open" ; +VAL_ 792 GTW_updateInProgress 1 "IN_PROGRESS" 2 "IN_PROGRESS_NOT_USED" 3 "IN_PROGRESS_SNA" 0 "NOT_IN_PROGRESS" ; +VAL_ 792 Hour 30 "Init" 31 "SNA" ; +VAL_ 792 MCU_factoryMode 1 "FACTORY_MODE" 0 "NORMAL_MODE" ; +VAL_ 792 MCU_transportModeOn 0 "NORMAL_MODE" ; +VAL_ 792 MINUTE 62 "Init" 63 "SNA" ; +VAL_ 792 MONTH 1 "Init" 15 "SNA" ; +VAL_ 792 SECOND 62 "Init" 63 "SNA" ; +VAL_ 792 YEAR 126 "Init" 127 "SNA" ; +VAL_ 872 DI_aebState 2 "ENABLED" 4 "FAULT" 7 "SNA" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; +VAL_ 872 DI_analogSpeed 4095 "SNA" ; +VAL_ 872 DI_cruiseState 2 "ENABLED" 5 "FAULT" 0 "OFF" 4 "OVERRIDE" 7 "PRE_CANCEL" 6 "PRE_FAULT" 1 "STANDBY" 3 "STANDSTILL" ; +VAL_ 872 DI_digitalSpeed 255 "SNA" ; +VAL_ 872 DI_immobilizerState 2 "AUTHENTICATING" 3 "DISARMED" 6 "FAULT" 4 "IDLE" 0 "INIT_SNA" 1 "REQUEST" 5 "RESET" ; +VAL_ 872 DI_speedUnits 1 "KPH" 0 "MPH" ; +VAL_ 872 DI_state 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; +VAL_ 872 DI_systemState 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; +VAL_ 872 DI_vehicleHoldState 2 "BLEND_IN" 4 "BLEND_OUT" 6 "FAULT" 7 "INIT" 5 "PARK" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; +VAL_ 880 EPAS_currentTuneMode 1 "DM_COMFORT" 3 "DM_SPORT" 2 "DM_STANDARD" 0 "FAIL_SAFE_DEFAULT" 4 "RWD_COMFORT" 6 "RWD_SPORT" 5 "RWD_STANDARD" 7 "UNAVAILABLE" ; +VAL_ 880 EPAS_eacErrorCode 14 "EAC_ERROR_EPB_INHIBIT" 3 "EAC_ERROR_HANDS_ON" 7 "EAC_ERROR_HIGH_ANGLE_RATE_REQ" 9 "EAC_ERROR_HIGH_ANGLE_RATE_SAFETY" 6 "EAC_ERROR_HIGH_ANGLE_REQ" 8 "EAC_ERROR_HIGH_ANGLE_SAFETY" 10 "EAC_ERROR_HIGH_MMOT_SAFETY" 11 "EAC_ERROR_HIGH_TORSION_SAFETY" 0 "EAC_ERROR_IDLE" 12 "EAC_ERROR_LOW_ASSIST" 2 "EAC_ERROR_MAX_SPEED" 1 "EAC_ERROR_MIN_SPEED" 13 "EAC_ERROR_PINION_VEL_DIFF" 4 "EAC_ERROR_TMP_FAULT" 5 "EAR_ERROR_MAX_STEER_DELTA" 15 "SNA" ; +VAL_ 880 EPAS_eacStatus 2 "EAC_ACTIVE" 1 "EAC_AVAILABLE" 3 "EAC_FAULT" 0 "EAC_INHIBITED" 4 "SNA" ; +VAL_ 880 EPAS_handsOnLevel 0 "0" 1 "1" 2 "2" 3 "3" ; +VAL_ 880 EPAS_steeringFault 1 "FAULT" 0 "NO_FAULT" ; +VAL_ 880 EPAS_steeringRackForce 1022 "NOT_IN_SPEC" 1023 "SNA" ; +VAL_ 880 EPAS_steeringReduced 0 "NORMAL_ASSIST" 1 "REDUCED_ASSIST" ; +VAL_ 880 EPAS_torsionBarTorque 0 "SEE_SPECIFICATION" 4095 "SNA" 4094 "UNDEFINABLE_DATA" ; +VAL_ 904 MCU_clusterReadyForDrive 0 "NO_SNA" 1 "YES" ; +VAL_ 905 DAS_accSpeedLimit 1023 "SNA" 0 "NONE" ; +VAL_ 905 DAS_pmmObstacleSeverity 7 "PMM_SNA" 6 "PMM_ACCEL_LIMIT" 5 "PMM_CRASH_FRONT" 4 "PMM_CRASH_REAR" 3 "PMM_BRAKE_REQUEST" 2 "PMM_IMMINENT_FRONT" 1 "PMM_IMMINENT_REAR" 0 "PMM_NONE" ; +VAL_ 905 DAS_pmmLoggingRequest 1 "TRUE" 0 "FALSE" ; +VAL_ 905 DAS_activationFailureStatus 2 "LC_ACTIVATION_FAILED_2" 1 "LC_ACTIVATION_FAILED_1" 0 "LC_ACTIVATION_IDLE" ; +VAL_ 905 DAS_pmmUltrasonicsFaultReason 4 "PMM_ULTRASONICS_INVALID_MIA" 3 "PMM_ULTRASONICS_BLOCKED_BOTH" 2 "PMM_ULTRASONICS_BLOCKED_REAR" 1 "PMM_ULTRASONICS_BLOCKED_FRONT" 0 "PMM_ULTRASONICS_NO_FAULT" ; +VAL_ 905 DAS_pmmRadarFaultReason 2 "PMM_RADAR_INVALID_MIA" 1 "PMM_RADAR_BLOCKED_FRONT" 0 "PMM_RADAR_NO_FAULT" ; +VAL_ 905 DAS_pmmSysFaultReason 7 "PMM_FAULT_BRAKE_PEDAL_INHIBIT" 6 "PMM_FAULT_ROAD_TYPE" 5 "PMM_FAULT_DISABLED_BY_USER" 4 "PMM_FAULT_STEERING_ANGLE_RATE" 3 "PMM_FAULT_DI_FAULT" 2 "PMM_FAULT_SPEED" 1 "PMM_FAULT_DAS_DISABLED" 0 "PMM_FAULT_NONE" ; +VAL_ 905 DAS_pmmCameraFaultReason 2 "PMM_CAMERA_INVALID_MIA" 1 "PMM_CAMERA_BLOCKED_FRONT" 0 "PMM_CAMERA_NO_FAULT" ; +VAL_ 905 DAS_ACC_report 24 "ACC_REPORT_BEHAVIOR_REPORT" 23 "ACC_REPORT_CAMERA_ONLY" 22 "ACC_REPORT_RADAR_OBJ_FIVE" 21 "ACC_REPORT_CIPV_CUTTING_OUT" 20 "ACC_REPORT_MCVLR_IN_PATH" 19 "ACC_REPORT_MCVLR_DPP" 18 "ACC_REPORT_FLEET_SPEEDS" 17 "ACC_REPORT_TARGET_MCP" 16 "ACC_REPORT_RADAR_OBJ_TWO" 15 "ACC_REPORT_RADAR_OBJ_ONE" 14 "ACC_REPORT_LC_EXTERNAL_STATE_ACTIVE_RESTRICTED" 13 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTED" 12 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTING" 11 "ACC_REPORT_LC_HANDS_ON_REQD_STRUCK_OUT" 10 "ACC_REPORT_CSA" 9 "ACC_REPORT_TARGET_TYPE_FAULT" 8 "ACC_REPORT_TARGET_TYPE_IPSO" 7 "ACC_REPORT_TARGET_TYPE_TRAFFIC_LIGHT" 6 "ACC_REPORT_TARGET_TYPE_STOP_SIGN" 5 "ACC_REPORT_TARGET_CUTIN" 4 "ACC_REPORT_TARGET_MCVR" 3 "ACC_REPORT_TARGET_MCVL" 2 "ACC_REPORT_TARGET_IN_FRONT_OF_CIPV" 1 "ACC_REPORT_TARGET_CIPV" 0 "ACC_REPORT_TARGET_NONE" ; +VAL_ 905 DAS_lssState 7 "LSS_STATE_OFF" 6 "LSS_STATE_ABORT" 5 "LSS_STATE_BLINDSPOT" 4 "LSS_STATE_MONITOR" 3 "LSS_STATE_ELK" 2 "LSS_STATE_LKA" 1 "LSS_STATE_LDW" 0 "LSS_STATE_FAULT" ; +VAL_ 905 DAS_radarTelemetry 2 "RADAR_TELEMETRY_URGENT" 1 "RADAR_TELEMETRY_NORMAL" 0 "RADAR_TELEMETRY_IDLE" ; +VAL_ 905 DAS_robState 3 "ROB_STATE_MAPLESS" 2 "ROB_STATE_ACTIVE" 1 "ROB_STATE_MEASURE" 0 "ROB_STATE_INHIBITED" ; +VAL_ 905 DAS_driverInteractionLevel 2 "CONTINUED_DRIVER_NOT_INTERACTING" 1 "DRIVER_NOT_INTERACTING" 0 "DRIVER_INTERACTING" ; +VAL_ 905 DAS_ppOffsetDesiredRamp 128 "PP_NO_OFFSET" ; +VAL_ 905 DAS_longCollisionWarning 15 "FCM_LONG_COLLISION_WARNING_SNA" 12 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV2" 11 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR2" 10 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR" 9 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL2" 8 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL" 7 "FCM_LONG_COLLISION_WARNING_VEHICLE_CUTIN" 6 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV" 5 "FCM_LONG_COLLISION_WARNING_TFL_STOPLINE" 4 "FCM_LONG_COLLISION_WARNING_STOPSIGN_STOPLINE" 3 "FCM_LONG_COLLISION_WARNING_IPSO" 2 "FCM_LONG_COLLISION_WARNING_PEDESTRIAN" 1 "FCM_LONG_COLLISION_WARNING_VEHICLE_UNKNOWN" 0 "FCM_LONG_COLLISION_WARNING_NONE" ; +VAL_ 921 autopilotStatus 5 "ACTIVE_NAVIGATE_ON_AUTOPILOT" 4 "ACTIVE_2" 3 "ACTIVE_1" 2 "AVAILABLE" 1 "UNAVAILABLE" 0 "DISABLED" ; +VAL_ 921 DAS_blindSpotRearLeft 3 "SNA" 2 "WARNING_LEVEL_2" 1 "WARNING_LEVEL_1" 0 "NO_WARNING" ; +VAL_ 921 DAS_blindSpotRearRight 3 "SNA" 2 "WARNING_LEVEL_2" 1 "WARNING_LEVEL_1" 0 "NO_WARNING" ; +VAL_ 921 DAS_fusedSpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; +VAL_ 921 DAS_suppressSpeedWarning 1 "Suppress_Speed_Warning" 0 "Do_Not_Suppress" ; +VAL_ 921 DAS_visionOnlySpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; +VAL_ 921 DAS_heaterState 1 "HEATER_ON" 0 "HEATER_OFF_SNA" ; +VAL_ 921 DAS_forwardCollisionWarning 3 "SNA" 1 "FORWARD_COLLISION_WARNING" 0 "NONE" ; +VAL_ 921 DAS_autoparkReady 1 "AUTOPARK_READY" 0 "AUTOPARK_UNAVAILABLE" ; +VAL_ 921 DAS_sideCollisionAvoid 3 "SNA" 2 "AVOID_RIGHT" 1 "AVOID_LEFT" 0 "NONE" ; +VAL_ 921 DAS_sideCollisionWarning 3 "WARN_LEFT_RIGHT" 2 "WARN_RIGHT" 1 "WARN_LEFT" 0 "NONE" ; +VAL_ 921 DAS_sideCollisionInhibit 1 "INHIBIT" 0 "NO_INHIBIT" ; +VAL_ 921 DAS_csaState 3 "CSA_EXTERNAL_STATE_HOLD" 2 "CSA_EXTERNAL_STATE_ENABLE" 1 "CSA_EXTERNAL_STATE_AVAILABLE" 0 "CSA_EXTERNAL_STATE_UNAVAILABLE" ; +VAL_ 921 DAS_laneDepartureWarning 5 "SNA" 4 "RIGHT_WARNING_SEVERE" 3 "LEFT_WARNING_SEVERE" 2 "RIGHT_WARNING" 1 "LEFT_WARNING" 0 "NONE" ; +VAL_ 921 DAS_fleetSpeedState 3 "FLEETSPEED_HOLD" 2 "FLEETSPEED_ACTIVE" 1 "FLEETSPEED_AVAILABLE" 0 "FLEETSPEED_UNAVAILABLE" ; +VAL_ 921 DAS_autopilotHandsOnState 15 "LC_HANDS_ON_SNA" 8 "LC_HANDS_ON_SUSPENDED" 7 "LC_HANDS_ON_REQD_STRUCK_OUT" 5 "LC_HANDS_ON_REQD_CHIME_2" 4 "LC_HANDS_ON_REQD_CHIME_1" 3 "LC_HANDS_ON_REQD_VISUAL" 2 "LC_HANDS_ON_REQD_NOT_DETECTED" 1 "LC_HANDS_ON_REQD_DETECTED" 0 "LC_HANDS_ON_NOT_REQD" ; +VAL_ 921 DAS_autoLaneChangeState 31 "ALC_SNA" 30 "ALC_ABORT_MISSION_PLAN_INVALID" 29 "ALC_ABORT_TIMEOUT" 28 "ALC_WAITING_HANDS_ON" 27 "ALC_BLOCKED_LANE_TYPE_R" 26 "ALC_BLOCKED_LANE_TYPE_L" 25 "ALC_BLOCKED_VEH_TTC_AND_USS_R" 24 "ALC_BLOCKED_VEH_TTC_R" 23 "ALC_BLOCKED_VEH_TTC_AND_USS_L" 22 "ALC_BLOCKED_VEH_TTC_L" 21 "ALC_UNAVAILABLE_SOLID_LANE_LINE" 20 "ALC_ABORT_OTHER_REASON" 19 "ALC_ABORT_BLINKER_TURNED_OFF" 18 "ALC_ABORT_LC_HEALTH_BAD" 17 "ALC_ABORT_POOR_VIEW_RANGE" 16 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_R" 15 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_L" 14 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_R" 13 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_L" 12 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_R" 11 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_L" 10 "ALC_IN_PROGRESS_R" 9 "ALC_IN_PROGRESS_L" 8 "ALC_AVAILABLE_BOTH" 7 "ALC_AVAILABLE_ONLY_R" 6 "ALC_AVAILABLE_ONLY_L" 5 "ALC_UNAVAILABLE_VEHICLE_SPEED" 4 "ALC_UNAVAILABLE_EXITING_HIGHWAY" 3 "ALC_UNAVAILABLE_TP_FOLLOW" 2 "ALC_UNAVAILABLE_SONICS_INVALID" 1 "ALC_UNAVAILABLE_NO_LANES" 0 "ALC_UNAVAILABLE_DISABLED" ; +VAL_ 1001 DAS_headlightRequest 3 "DAS_HEADLIGHT_REQUEST_INVALID" 1 "DAS_HEADLIGHT_REQUEST_ON" 0 "DAS_HEADLIGHT_REQUEST_OFF" ; +VAL_ 1001 DAS_hazardLightRequest 3 "DAS_REQUEST_HAZARDS_SNA" 2 "DAS_REQUEST_HAZARDS_UNUSED" 1 "DAS_REQUEST_HAZARDS_ON" 0 "DAS_REQUEST_HAZARDS_OFF" ; +VAL_ 1001 DAS_wiperSpeed 15 "DAS_WIPER_SPEED_INVALID" 14 "DAS_WIPER_SPEED_14" 13 "DAS_WIPER_SPEED_13" 12 "DAS_WIPER_SPEED_12" 11 "DAS_WIPER_SPEED_11" 10 "DAS_WIPER_SPEED_10" 9 "DAS_WIPER_SPEED_9" 8 "DAS_WIPER_SPEED_8" 7 "DAS_WIPER_SPEED_7" 6 "DAS_WIPER_SPEED_6" 5 "DAS_WIPER_SPEED_5" 4 "DAS_WIPER_SPEED_4" 3 "DAS_WIPER_SPEED_3" 2 "DAS_WIPER_SPEED_2" 1 "DAS_WIPER_SPEED_1" 0 "DAS_WIPER_SPEED_OFF" ; +VAL_ 1001 DAS_turnIndicatorRequest 3 "DAS_TURN_INDICATOR_CANCEL" 2 "DAS_TURN_INDICATOR_RIGHT" 1 "DAS_TURN_INDICATOR_LEFT" 0 "DAS_TURN_INDICATOR_NONE" ; +VAL_ 1001 DAS_highLowBeamDecision 3 "DAS_HIGH_BEAM_SNA" 2 "DAS_HIGH_BEAM_ON" 1 "DAS_HIGH_BEAM_OFF" 0 "DAS_HIGH_BEAM_UNDECIDED" ; +VAL_ 1001 DAS_highLowBeamOffReason 5 "HIGH_BEAM_OFF_REASON_SNA" 4 "HIGH_BEAM_OFF_REASON_HEAD_LIGHT" 3 "HIGH_BEAM_OFF_REASON_AMBIENT_LIGHT" 2 "HIGH_BEAM_OFF_REASON_MOVING_RADAR_TARGET" 1 "HIGH_BEAM_OFF_REASON_MOVING_VISION_TARGET" 0 "HIGH_BEAM_ON" ; +VAL_ 1001 DAS_turnIndicatorRequestReason 6 "DAS_ACTIVE_COMMANDED_LANE_CHANGE" 5 "DAS_CANCEL_FORK" 4 "DAS_CANCEL_LANE_CHANGE" 3 "DAS_ACTIVE_FORK" 2 "DAS_ACTIVE_SPEED_LANE_CHANGE" 1 "DAS_ACTIVE_NAV_LANE_CHANGE" 0 "DAS_NONE" ; +VAL_ 1160 DAS_steeringAngleRequest 16384 "ZERO_ANGLE" ; +VAL_ 1160 DAS_steeringControlType 1 "ANGLE_CONTROL" 3 "DISABLED" 0 "NONE" 2 "RESERVED" ; +VAL_ 1160 DAS_steeringHapticRequest 1 "ACTIVE" 0 "IDLE" ; + + diff --git a/opendbc_repo/opendbc/dbc/tesla_model3_party.dbc b/opendbc_repo/opendbc/dbc/tesla_model3_party.dbc new file mode 100644 index 0000000000..2f7b67a0c4 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/tesla_model3_party.dbc @@ -0,0 +1,429 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: CH DIPF DIPR ETH FC HVI HVS PARTY SDCV VEH VIRT + + +BO_ 905 DAS_status2: 8 PARTY + SG_ DAS_status2Checksum : 56|8@1+ (1,0) [0|255] "" aps + SG_ DAS_status2Counter : 52|4@1+ (1,0) [0|15] "" aps + SG_ DAS_longCollisionWarning : 48|4@1+ (1,0) [0|15] "" aps + SG_ DAS_ppOffsetDesiredRamp : 40|8@1+ (0.01,-1.28) [-1.28|1.27] "m" aps + SG_ DAS_driverInteractionLevel : 38|2@1+ (1,0) [0|2] "" aps + SG_ DAS_robState : 36|2@1+ (1,0) [0|3] "" aps + SG_ DAS_radarTelemetry : 34|2@1+ (1,0) [0|2] "" aps + SG_ DAS_lssState : 31|3@1+ (1,0) [0|7] "" aps + SG_ DAS_ACC_report : 26|5@1+ (1,0) [0|24] "" aps + SG_ DAS_pmmCameraFaultReason : 24|2@1+ (1,0) [0|2] "" aps + SG_ DAS_pmmSysFaultReason : 21|3@1+ (1,0) [0|7] "" aps + SG_ DAS_pmmRadarFaultReason : 19|2@1+ (1,0) [0|2] "" aps + SG_ DAS_pmmUltrasonicsFaultReason : 16|3@1+ (1,0) [0|4] "" aps + SG_ DAS_activationFailureStatus : 14|2@1+ (1,0) [0|2] "" aps + SG_ DAS_pmmLoggingRequest : 13|1@1+ (1,0) [0|1] "" aps + SG_ DAS_pmmObstacleSeverity : 10|3@1+ (1,0) [0|7] "" aps + SG_ DAS_accSpeedLimit : 0|10@1+ (0.4,0) [0|204.6] "mph" aps + +BO_ 264 DI_torque: 8 PARTY + SG_ DI_axleSpeed : 40|16@1- (0.1,0.0) [-2750|2750] "RPM" epas3s + SG_ DI_torqueActual : 27|13@1- (2,0) [-7500|7500] "Nm" X + SG_ DI_torqueCommand : 12|13@1- (2,0) [-7500|7500] "Nm" X + SG_ DI_torqueCounter : 8|4@1+ (1,0) [0|15] "" epas3s + SG_ DI_torqueChecksum : 0|8@1+ (1,0) [0|255] "" epas3s + +BO_ 585 SCCM_leftStalk: 3 PARTY + SG_ SCCM_leftStalkReserved1 : 19|5@1+ (1,0) [0|31] "" X + SG_ SCCM_turnIndicatorStalkStatus : 16|3@1+ (1,0) [0|5] "" park + SG_ SCCM_washWipeButtonStatus : 14|2@1+ (1,0) [0|3] "" X + SG_ SCCM_highBeamStalkStatus : 12|2@1+ (1,0) [0|3] "" X + SG_ SCCM_leftStalkCounter : 8|4@1+ (1,0) [0|15] "" X + SG_ SCCM_leftStalkCrc : 0|8@1+ (1,0) [0|255] "" X + +BO_ 280 DI_systemStatus: 8 PARTY + SG_ DI_trackModeState : 48|2@1+ (1,0) [0|2] "" X + SG_ DI_keepAliveRequest : 47|1@1+ (1,0) [0|1] "" X + SG_ DI_proximity : 46|1@1+ (1,0) [0|1] "" X + SG_ DI_epbRequest : 44|2@1+ (1,0) [0|2] "" X + SG_ DI_tractionControlMode : 40|3@1+ (1,0) [0|5] "" X + SG_ DI_accelPedalPos : 32|8@1+ (0.4,0) [0|100] "%" X + SG_ DI_immobilizerState : 27|3@1+ (1,0) [0|6] "" X + SG_ DI_regenLight : 26|1@1+ (1,0) [0|1] "" X + SG_ DI_gear : 21|3@1+ (1,0) [0|7] "" park + SG_ DI_brakePedalState : 19|2@1+ (1,0) [0|2] "" X + SG_ DI_systemState : 16|3@1+ (1,0) [0|5] "" X + SG_ DI_systemStatusCounter : 8|4@1+ (1,0) [0|15] "" X + SG_ DI_systemStatusChecksum : 0|8@1+ (1,0) [0|255] "" X + +BO_ 697 DAS_control: 8 PARTY + SG_ DAS_controlChecksum : 56|8@1+ (1,0) [0|255] "" aps + SG_ DAS_controlCounter : 53|3@1+ (1,0) [0|7] "" aps + SG_ DAS_accelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" aps + SG_ DAS_accelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" aps + SG_ DAS_jerkMax : 27|8@1+ (0.034,0) [0|8.67] "m/s^3" aps + SG_ DAS_jerkMin : 18|9@1+ (0.018,-9.1) [-9.1|0.097999999999999] "m/s^3" aps + SG_ DAS_aebEvent : 16|2@1+ (1,0) [0|3] "" aps + SG_ DAS_accState : 12|4@1+ (1,0) [0|15] "" aps + SG_ DAS_setSpeed : 0|12@1+ (0.1,0) [0|409.4] "kph" aps + +BO_ 341 ESP_B: 8 PARTY + SG_ ESP_wheelRotationChecksum : 56|8@1+ (1,0) [0|255] "" app + SG_ ESP_wheelRotationCounter : 52|4@1+ (1,0) [0|15] "" app + SG_ ESP_vehicleSpeed : 42|10@1+ (0.5,0) [0|511] "kph" app + SG_ ESP_vehicleStandstillSts : 41|1@1+ (1,0) [0|1] "" park + SG_ ESP_wheelSpeedsQF : 40|1@1+ (1,0) [0|1] "" epas3s + SG_ ESP_WheelRotationFrL : 38|2@1+ (1,0) [0|3] "" aps + SG_ ESP_WheelRotationFrR : 36|2@1+ (1,0) [0|3] "" aps + SG_ ESP_WheelRotationReL : 34|2@1+ (1,0) [0|3] "" aps + SG_ ESP_WheelRotationReR : 32|2@1+ (1,0) [0|3] "" aps + SG_ ESP_wheelPulseCountReR : 24|8@1+ (1,0) [0|254] "1" das + SG_ ESP_wheelPulseCountReL : 16|8@1+ (1,0) [0|254] "1" das + SG_ ESP_wheelPulseCountFrR : 8|8@1+ (1,0) [0|254] "1" app + SG_ ESP_wheelPulseCountFrL : 0|8@1+ (1,0) [0|254] "1" app + +BO_ 969 APS_status: 4 PARTY + SG_ APS_statusCounter : 22|4@1+ (1,0) [0|15] "" X + SG_ APS_apbGpioState : 20|2@1+ (1,0) [0|3] "" gtw + SG_ APS_apbStatusMonitorState : 16|3@1+ (1,0) [0|7] "" gtw + SG_ APS_switchState : 15|1@1+ (1,0) [0|1] "" X + SG_ APS_eacInternalState : 12|3@1+ (1,0) [0|7] "" gtw + SG_ APS_appGpioState : 10|2@1+ (1,0) [0|3] "" gtw + SG_ APS_canMaster : 8|2@1+ (1,0) [0|3] "" gtw + SG_ APS_vehBehaviorState : 4|3@1+ (1,0) [0|7] "" gtw + SG_ APS_appStatusMonitorState : 0|3@1+ (1,0) [0|7] "" gtw + +BO_ 925 IBST_status: 5 PARTY + SG_ IBST_sInputRodDriver : 21|12@1+ (0.015625,-5) [-5|47] "mm" gtw + SG_ IBST_internalState : 18|3@1+ (1,0) [0|6] "" gtw + SG_ IBST_driverBrakeApply : 16|2@1+ (1,0) [0|3] "" gtw + SG_ IBST_iBoosterStatus : 12|3@1+ (1,0) [0|6] "" gtw + SG_ IBST_statusCounter : 8|4@1+ (1,0) [0|15] "" X + SG_ IBST_statusChecksum : 0|8@1+ (1,0) [0|255] "" X + +BO_ 880 EPAS3S_sysStatus: 8 PARTY + SG_ EPAS3S_sysStatusChecksum : 63|8@0+ (1,0) [0|255] "" park + SG_ EPAS3S_sysStatusCounter : 51|4@0+ (1,0) [0|15] "" gtw + SG_ EPAS3S_eacStatus : 55|3@0+ (1,0) [0|7] "" das + SG_ EPAS3S_internalSAS : 37|14@0+ (0.1,-819.2) [-819.2|819] "deg" das + SG_ EPAS3S_handsOnLevel : 39|2@0+ (1,0) [0|3] "" das + SG_ EPAS3S_torsionBarTorque : 19|12@0+ (0.01,-20.5) [-20.5|20.45] "Nm" das + SG_ EPAS3S_eacErrorCode : 23|4@0+ (1,0) [0|15] "" das + SG_ EPAS3S_steeringRackForce : 1|10@0+ (50,-25575) [-25575|25575] "N" gtw + SG_ EPAS3S_steeringFault : 2|1@0+ (1,0) [0|1] "" das + SG_ EPAS3S_steeringReduced : 3|1@0+ (1,0) [0|1] "" das + SG_ EPAS3S_internalSASQF : 4|1@0+ (1,0) [0|1] "" gtw + SG_ EPAS3S_currentTuneMode : 7|3@0+ (1,0) [0|5] "" gtw + +BO_ 637 APS_eacMonitor: 3 PARTY + SG_ APS_eacAllow : 0|2@1+ (1,0) [0|0] "" X + SG_ APS_eacMonitorChecksum : 16|8@1+ (1,0) [0|0] "" X + SG_ APS_eacMonitorCounter : 8|4@1+ (1,0) [0|0] "" X + +BO_ 545 VCFRONT_LVPowerState: 8 CH + SG_ VCFRONT_LVPowerStateChecksum : 56|8@1+ (1,0) [0|255] "" ibst + SG_ VCFRONT_LVPowerStateCounter : 52|4@1+ (1,0) [0|15] "" ibst + SG_ VCFRONT_uiAudioLVState m0 : 50|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_uiHiCurrentLVState m0 : 48|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_vcrightHiCurrentLVState m0 : 46|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_vcleftHiCurrentLVState m0 : 44|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_ocsLVRequest m0 : 42|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_oilPumpRearLVRequest m0 : 40|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_oilPumpFrontLVState m0 : 38|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_disLVState m0 : 36|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_diLVRequest m0 : 34|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_das2HighCurrentLVState m0 : 32|2@1+ (1,0) [0|3] "" das + SG_ VCFRONT_das1HighCurrentLVState m0 : 30|2@1+ (1,0) [0|3] "" das + SG_ VCFRONT_amplifierLVRequest m0 : 28|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_tunerLVRequest m0 : 26|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_iBoosterLVState m0 : 24|2@1+ (1,0) [0|3] "" ibst + SG_ VCFRONT_rcmLVRequest m0 : 22|2@1+ (1,0) [0|3] "" rcm + SG_ VCFRONT_tpmsLVRequest m0 : 20|2@1+ (1,0) [0|3] "" tpms + SG_ VCFRONT_sccmLVRequest m0 : 18|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_pcsLVState m1 : 16|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_ptcLVRequest m0 : 16|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_hvacCompLVState m0 : 14|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_tasLVState m1 : 14|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_hvcLVRequest m1 : 12|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_radcLVState m0 : 12|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_epasLVState m1 : 10|2@1+ (1,0) [0|3] "" epas3s + SG_ VCFRONT_espLVState m0 : 10|2@1+ (1,0) [0|3] "" ibst + SG_ VCFRONT_parkLVState m0 : 8|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_cpLVRequest m1 : 8|2@1+ (1,0) [0|3] "" X + SG_ VCFRONT_vehiclePowerState : 5|2@1+ (1,0) [0|3] "" park + SG_ VCFRONT_LVPowerStateIndex M : 0|5@1+ (1,0) [0|1] "" epas3s + +BO_ 599 DI_speed: 8 PARTY + SG_ DI_uiSpeedUnits : 32|1@1+ (1,0) [0|1] "" das + SG_ DI_uiSpeed : 24|8@1+ (1,0) [0|254] "" das + SG_ DI_vehicleSpeed : 12|12@1+ (0.08,-40) [-40|285] "kph" park + SG_ DI_speedCounter : 8|4@1+ (1,0) [0|15] "" park + SG_ DI_speedChecksum : 0|8@1+ (1,0) [0|255] "" park + +BO_ 605 XXX_longitudinalRelated: 6 XXX + +BO_ 1160 DAS_steeringControl: 4 PARTY + SG_ DAS_steeringControlChecksum : 31|8@0+ (1,0) [0|255] "" aps + SG_ DAS_steeringControlCounter : 19|4@0+ (1,0) [0|15] "" aps + SG_ DAS_steeringControlType : 23|2@0+ (1,0) [0|3] "" aps + SG_ DAS_steeringAngleRequest : 6|15@0+ (0.1,-1638.35) [-1638.35|1638.35] "deg" aps + SG_ DAS_steeringHapticRequest : 7|1@0+ (1,0) [0|1] "" aps + +BO_ 297 SCCM_steeringAngleSensor: 8 PARTY + SG_ SCCM_steeringAngleSensorReservd3 : 56|8@1+ (1,0) [0|255] "" X + SG_ SCCM_steeringAngleSensorReservd2 : 48|8@1+ (1,0) [0|255] "" X + SG_ SCCM_steeringAngleSensorReservd1 : 46|2@1+ (1,0) [0|3] "" X + SG_ SCCM_steeringAngleSpeed : 32|14@1+ (0.5,-4096) [-4096|4095.5] "deg/s" park + SG_ SCCM_steeringAngleValidity : 30|2@1+ (1,0) [0|3] "" park + SG_ SCCM_steeringAngle : 16|14@1+ (0.1,-819.2) [-819.2|819] "deg" epas3s + SG_ SCCM_steeringAngleSensorStatus : 14|2@1+ (1,0) [0|3] "" epas3s + SG_ SCCM_supplierID : 12|2@1+ (1,0) [0|3] "" park + SG_ SCCM_steeringAngleCounter : 8|4@1+ (1,0) [0|15] "" epas3s + SG_ SCCM_steeringAngleCrc : 0|8@1+ (1,0) [0|255] "" epas3s + +BO_ 646 DI_state: 8 ETH + SG_ DI_summonInPanic : 48|1@1+ (1,0) [0|0] "" X + SG_ DI_rollPreventionState : 45|3@1+ (1,0) [0|0] "" X + SG_ DI_vehicleHoldState : 42|3@1+ (1,0) [0|0] "" X + SG_ DI_pmmStatus : 40|2@1+ (1,0) [0|0] "" X + SG_ DI_aebState : 37|3@1+ (1,0) [0|0] "" X + SG_ DI_autopilotRequest : 36|1@1+ (1,0) [0|0] "" X + SG_ DI_parkBrakeState : 32|4@1+ (1,0) [0|0] "" X + SG_ DI_autoparkState : 25|4@1+ (1,0) [0|0] "" X + SG_ DI_speedUnits : 24|1@1+ (1,0) [0|0] "" X + SG_ DI_digitalSpeed : 15|9@1+ (0.5,0) [0|0] "speed" X + SG_ DI_cruiseState : 12|3@1+ (1,0) [0|0] "" X + SG_ DI_locStatusCounter : 8|4@1+ (1,0) [0|0] "" X + SG_ DI_locStatusChecksum : 0|8@1+ (1,0) [0|0] "" X + +BO_ 659 DAS_settings: 8 XXX + SG_ DAS_driverSteeringWeight : 1|2@0+ (1,0) [0|255] "" XXX + SG_ DAS_slipStart : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DAS_offRoadAssist : 3|2@1+ (1,0) [0|63] "" XXX + SG_ DAS_distanceUnits : 13|1@1+ (1,0) [0|255] "" XXX + SG_ DAS_aebEnabled : 18|1@0+ (1,0) [0|255] "" XXX + SG_ DAS_adaptiveHeadlights : 22|1@1+ (1,0) [0|31] "" XXX + SG_ DAS_autosteerEnabled2 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ DAS_fcwEnabled : 34|1@0+ (1,0) [0|1] "" XXX + SG_ DAS_fcwSensitivity : 37|2@0+ (1,0) [0|63] "" XXX + SG_ DAS_autosteerEnabled : 38|1@0+ (1,0) [0|1] "" XXX + SG_ DAS_obstacleAwareAcceleration : 42|1@0+ (1,0) [0|1] "" XXX + SG_ DAS_driverAccelerationMode : 44|1@1+ (1,0) [0|127] "" XXX + SG_ DAS_settingCounter : 52|4@1+ (1,0) [0|15] "" XXX + SG_ DAS_settingChecksum : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 785 UI_warning: 7 XXX + SG_ buckleStatus : 13|1@0+ (1,0) [0|1] "" XXX + SG_ scrollWheelPressed : 21|1@0+ (1,0) [0|1] "" XXX + SG_ leftBlinkerOn : 22|1@0+ (1,0) [0|1] "" XXX + SG_ rightBlinkerOn : 23|1@0+ (1,0) [0|1] "" XXX + SG_ leftBlinkerBlinking : 25|2@0+ (1,0) [0|3] "" XXX + SG_ rightBlinkerBlinking : 26|2@1+ (1,0) [0|15] "" XXX + SG_ anyDoorOpen : 28|1@0+ (1,0) [0|1] "" XXX + SG_ wiperSettings : 39|8@0+ (1,0) [0|255] "" XXX + SG_ highBeam : 50|1@0+ (1,0) [0|1] "" XXX + +BO_ 923 DAS_status: 8 PARTY + SG_ DAS_statusChecksum : 56|8@1+ (1,0) [0|255] "" aps + SG_ DAS_statusCounter : 52|4@1+ (1,0) [0|15] "" aps + SG_ DAS_summonAvailable : 51|1@1+ (1,0) [0|1] "" aps + SG_ DAS_autoLaneChangeState : 46|5@1+ (1,0) [0|31] "" aps + SG_ DAS_autopilotHandsOnState : 42|4@1+ (1,0) [0|15] "" aps + SG_ DAS_fleetSpeedState : 40|2@1+ (1,0) [0|3] "" aps + SG_ DAS_laneDepartureWarning : 37|3@1+ (1,0) [0|5] "" aps + SG_ DAS_csaState : 35|2@1+ (1,0) [0|3] "" aps + SG_ DAS_sideCollisionInhibit : 34|1@1+ (1,0) [0|1] "" aps + SG_ DAS_sideCollisionWarning : 32|2@1+ (1,0) [0|3] "" aps + SG_ DAS_sideCollisionAvoid : 30|2@1+ (1,0) [0|3] "" aps + SG_ DAS_summonRvsLeashReached : 29|1@1+ (1,0) [0|1] "" aps + SG_ DAS_summonFwdLeashReached : 28|1@1+ (1,0) [0|1] "" aps + SG_ DAS_autoparkWaitingForBrake : 26|1@1+ (1,0) [0|1] "" gtw + SG_ DAS_autoParked : 25|1@1+ (1,0) [0|1] "" aps + SG_ DAS_autoparkReady : 24|1@1+ (1,0) [0|1] "" aps + SG_ DAS_forwardCollisionWarning : 22|2@1+ (1,0) [0|3] "" aps + SG_ DAS_heaterState : 21|1@1+ (1,0) [0|1] "" gtw + SG_ DAS_visionOnlySpeedLimit : 16|5@1+ (5,0) [0|150] "kph/mph" aps + SG_ DAS_summonClearedGate : 15|1@1+ (1,0) [0|1] "" aps + SG_ DAS_summonObstacle : 14|1@1+ (1,0) [0|1] "" aps + SG_ DAS_suppressSpeedWarning : 13|1@1+ (1,0) [0|1] "" aps + SG_ DAS_fusedSpeedLimit : 8|5@1+ (5,0) [0|150] "kph/mph" aps + SG_ DAS_blindSpotRearRight : 6|2@1+ (1,0) [0|3] "" aps + SG_ DAS_blindSpotRearLeft : 4|2@1+ (1,0) [0|3] "" aps + SG_ DAS_autopilotState : 0|4@1+ (1,0) [0|15] "" aps + + +CM_ BO_ 605 "Bytes change when toggling between FSD and AP, as well as Traffic Light and Stop Sign Control in TACC"; + +CM_ SG_ 659 DAS_autosteerEnabled "1 if Autosteer or FSD is enabled, 0 otherwise"; +CM_ SG_ 785 leftBlinkerOn "only describes stalk position if half pressed without auto-cancel blinkers. otherwise acts as expected"; +CM_ SG_ 785 rightBlinkerOn "only describes stalk position if half pressed without auto-cancel blinkers. otherwise acts as expected"; +CM_ SG_ 785 scrollWheelPressed "captures either scroll wheel left, right or down press"; + +VAL_ 545 VCFRONT_uiAudioLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_uiHiCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_vcrightHiCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_vcleftHiCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_ocsLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_oilPumpRearLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_oilPumpFrontLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_disLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_diLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_das2HighCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_das1HighCurrentLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_amplifierLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_tunerLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_iBoosterLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_rcmLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_tpmsLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_sccmLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_pcsLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_ptcLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_hvacCompLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_tasLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_hvcLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_radcLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_epasLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_espLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_parkLVState 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_cpLVRequest 1 "LV_ON" 2 "LV_GOING_DOWN" 3 "LV_FAULT" 0 "LV_OFF" ; +VAL_ 545 VCFRONT_vehiclePowerState 3 "VEHICLE_POWER_STATE_DRIVE" 1 "VEHICLE_POWER_STATE_CONDITIONING" 2 "VEHICLE_POWER_STATE_ACCESSORY" 0 "VEHICLE_POWER_STATE_OFF" ; +VAL_ 545 VCFRONT_LVPowerStateIndex 0 "Mux0" 1 "Mux1" ; +VAL_ 905 DAS_longCollisionWarning 7 "FCM_LONG_COLLISION_WARNING_VEHICLE_CUTIN" 0 "FCM_LONG_COLLISION_WARNING_NONE" 4 "FCM_LONG_COLLISION_WARNING_STOPSIGN_STOPLINE" 9 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL2" 15 "FCM_LONG_COLLISION_WARNING_SNA" 8 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVL" 5 "FCM_LONG_COLLISION_WARNING_TFL_STOPLINE" 2 "FCM_LONG_COLLISION_WARNING_PEDESTRIAN" 12 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV2" 6 "FCM_LONG_COLLISION_WARNING_VEHICLE_CIPV" 10 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR" 3 "FCM_LONG_COLLISION_WARNING_IPSO" 1 "FCM_LONG_COLLISION_WARNING_VEHICLE_UNKNOWN" 11 "FCM_LONG_COLLISION_WARNING_VEHICLE_MCVR2" ; +VAL_ 905 DAS_ppOffsetDesiredRamp 128 "PP_NO_OFFSET" ; +VAL_ 905 DAS_driverInteractionLevel 0 "DRIVER_INTERACTING" 1 "DRIVER_NOT_INTERACTING" 2 "CONTINUED_DRIVER_NOT_INTERACTING" ; +VAL_ 905 DAS_robState 0 "ROB_STATE_INHIBITED" 2 "ROB_STATE_ACTIVE" 3 "ROB_STATE_MAPLESS" 1 "ROB_STATE_MEASURE" ; +VAL_ 905 DAS_radarTelemetry 0 "RADAR_TELEMETRY_IDLE" 1 "RADAR_TELEMETRY_NORMAL" 2 "RADAR_TELEMETRY_URGENT" ; +VAL_ 905 DAS_lssState 7 "LSS_STATE_OFF" 1 "LSS_STATE_LDW" 4 "LSS_STATE_MONITOR" 2 "LSS_STATE_LKA" 3 "LSS_STATE_ELK" 0 "LSS_STATE_FAULT" 5 "LSS_STATE_BLINDSPOT" 6 "LSS_STATE_ABORT" ; +VAL_ 905 DAS_ACC_report 12 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTING" 17 "ACC_REPORT_TARGET_MCP" 11 "ACC_REPORT_LC_HANDS_ON_REQD_STRUCK_OUT" 19 "ACC_REPORT_MCVLR_DPP" 1 "ACC_REPORT_TARGET_CIPV" 15 "ACC_REPORT_RADAR_OBJ_ONE" 16 "ACC_REPORT_RADAR_OBJ_TWO" 14 "ACC_REPORT_LC_EXTERNAL_STATE_ACTIVE_RESTRICTED" 4 "ACC_REPORT_TARGET_MCVR" 20 "ACC_REPORT_MCVLR_IN_PATH" 10 "ACC_REPORT_CSA" 5 "ACC_REPORT_TARGET_CUTIN" 9 "ACC_REPORT_TARGET_TYPE_FAULT" 7 "ACC_REPORT_TARGET_TYPE_TRAFFIC_LIGHT" 6 "ACC_REPORT_TARGET_TYPE_STOP_SIGN" 24 "ACC_REPORT_BEHAVIOR_REPORT" 18 "ACC_REPORT_FLEET_SPEEDS" 2 "ACC_REPORT_TARGET_IN_FRONT_OF_CIPV" 23 "ACC_REPORT_CAMERA_ONLY" 3 "ACC_REPORT_TARGET_MCVL" 22 "ACC_REPORT_RADAR_OBJ_FIVE" 0 "ACC_REPORT_TARGET_NONE" 8 "ACC_REPORT_TARGET_TYPE_IPSO" 21 "ACC_REPORT_CIPV_CUTTING_OUT" 13 "ACC_REPORT_LC_EXTERNAL_STATE_ABORTED" ; +VAL_ 905 DAS_pmmCameraFaultReason 1 "PMM_CAMERA_BLOCKED_FRONT" 2 "PMM_CAMERA_INVALID_MIA" 0 "PMM_CAMERA_NO_FAULT" ; +VAL_ 905 DAS_pmmSysFaultReason 4 "PMM_FAULT_STEERING_ANGLE_RATE" 6 "PMM_FAULT_ROAD_TYPE" 5 "PMM_FAULT_DISABLED_BY_USER" 0 "PMM_FAULT_NONE" 1 "PMM_FAULT_DAS_DISABLED" 3 "PMM_FAULT_DI_FAULT" 2 "PMM_FAULT_SPEED" 7 "PMM_FAULT_BRAKE_PEDAL_INHIBIT" ; +VAL_ 905 DAS_pmmRadarFaultReason 2 "PMM_RADAR_INVALID_MIA" 1 "PMM_RADAR_BLOCKED_FRONT" 0 "PMM_RADAR_NO_FAULT" ; +VAL_ 905 DAS_pmmUltrasonicsFaultReason 2 "PMM_ULTRASONICS_BLOCKED_REAR" 0 "PMM_ULTRASONICS_NO_FAULT" 1 "PMM_ULTRASONICS_BLOCKED_FRONT" 3 "PMM_ULTRASONICS_BLOCKED_BOTH" 4 "PMM_ULTRASONICS_INVALID_MIA" ; +VAL_ 905 DAS_activationFailureStatus 0 "LC_ACTIVATION_IDLE" 2 "LC_ACTIVATION_FAILED_2" 1 "LC_ACTIVATION_FAILED_1" ; +VAL_ 905 DAS_pmmLoggingRequest 0 "FALSE" 1 "TRUE" ; +VAL_ 905 DAS_pmmObstacleSeverity 5 "PMM_CRASH_FRONT" 0 "PMM_NONE" 2 "PMM_IMMINENT_FRONT" 4 "PMM_CRASH_REAR" 1 "PMM_IMMINENT_REAR" 6 "PMM_ACCEL_LIMIT" 7 "PMM_SNA" 3 "PMM_BRAKE_REQUEST" ; +VAL_ 905 DAS_accSpeedLimit 1023 "SNA" 0 "NONE" ; +VAL_ 264 DI_axleSpeed -32768 "SNA" ; +VAL_ 264 DI_torqueActual -4096 "SNA" ; +VAL_ 264 DI_torqueCommand -4096 "SNA" ; +VAL_ 585 SCCM_turnIndicatorStalkStatus 3 "DOWN_1" 5 "SNA" 0 "IDLE" 1 "UP_1" 4 "DOWN_2" 2 "UP_2" ; +VAL_ 585 SCCM_washWipeButtonStatus 3 "SNA" 0 "NOT_PRESSED" 2 "2ND_DETENT" 1 "1ST_DETENT" ; +VAL_ 585 SCCM_highBeamStalkStatus 3 "SNA" 0 "IDLE" 1 "PULL" 2 "PUSH" ; +VAL_ 280 DI_trackModeState 0 "TRACK_MODE_UNAVAILABLE" 1 "TRACK_MODE_AVAILABLE" 2 "TRACK_MODE_ON" ; +VAL_ 280 DI_keepAliveRequest 1 "KEEP_ALIVE" 0 "NO_REQUEST" ; +VAL_ 280 DI_epbRequest 0 "DI_EPBREQUEST_NO_REQUEST" 1 "DI_EPBREQUEST_PARK" 2 "DI_EPBREQUEST_UNPARK" ; +VAL_ 280 DI_tractionControlMode 0 "TC_NORMAL" 1 "TC_SLIP_START" 4 "TC_ROLLS_MODE" 2 "TC_DEV_MODE_1" 5 "TC_DYNO_MODE" 3 "TC_DEV_MODE_2" ; +VAL_ 280 DI_accelPedalPos 255 "SNA" ; +VAL_ 280 DI_immobilizerState 2 "DI_IMM_STATE_AUTHENTICATING" 0 "DI_IMM_STATE_INIT_SNA" 3 "DI_IMM_STATE_DISARMED" 4 "DI_IMM_STATE_IDLE" 6 "DI_IMM_STATE_FAULT" 1 "DI_IMM_STATE_REQUEST" 5 "DI_IMM_STATE_RESET" ; +VAL_ 280 DI_gear 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" 7 "DI_GEAR_SNA" 2 "DI_GEAR_R" 3 "DI_GEAR_N" 4 "DI_GEAR_D" ; +VAL_ 280 DI_brakePedalState 2 "INVALID" 0 "OFF" 1 "ON" ; +VAL_ 280 DI_systemState 5 "DI_SYS_ENABLE" 1 "DI_SYS_IDLE" 2 "DI_SYS_STANDBY" 0 "DI_SYS_UNAVAILABLE" 3 "DI_SYS_FAULT" 4 "DI_SYS_ABORT" ; +VAL_ 697 DAS_accelMax 511 "SNA" ; +VAL_ 697 DAS_accelMin 511 "SNA" ; +VAL_ 697 DAS_jerkMax 255 "SNA" ; +VAL_ 697 DAS_jerkMin 511 "SNA" ; +VAL_ 697 DAS_aebEvent 2 "AEB_FAULT" 0 "AEB_NOT_ACTIVE" 3 "AEB_SNA" 1 "AEB_ACTIVE" ; +VAL_ 697 DAS_accState 4 "ACC_ON" 9 "APC_PAUSE" 14 "ACC_CANCEL_OUT_OF_CALIBRATION" 10 "APC_UNPARK_COMPLETE" 6 "APC_FORWARD" 3 "ACC_HOLD" 2 "ACC_CANCEL_RADAR_BLIND" 7 "APC_COMPLETE" 1 "ACC_CANCEL_CAMERA_BLIND" 8 "APC_ABORT" 13 "ACC_CANCEL_GENERIC_SILENT" 5 "APC_BACKWARD" 11 "APC_SELFPARK_START" 0 "ACC_CANCEL_GENERIC" 12 "ACC_CANCEL_PATH_NOT_CLEAR" 15 "FAULT_SNA" ; +VAL_ 697 DAS_setSpeed 4095 "SNA" ; +VAL_ 341 ESP_vehicleSpeed 1023 "ESP_VEHICLE_SPEED_SNA" ; +VAL_ 341 ESP_vehicleStandstillSts 1 "STANDSTILL" 0 "NOT_STANDSTILL" ; +VAL_ 341 ESP_wheelSpeedsQF 0 "ONE_OR_MORE_WSS_INVALID" 1 "ALL_WSS_VALID" ; +VAL_ 341 ESP_WheelRotationFrL 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; +VAL_ 341 ESP_WheelRotationFrR 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; +VAL_ 341 ESP_WheelRotationReL 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; +VAL_ 341 ESP_WheelRotationReR 1 "WR_BACKWARD" 0 "WR_FORWARD" 3 "WR_NOT_DEFINABLE" 2 "WR_STANDSTILL" ; +VAL_ 341 ESP_wheelPulseCountReR 255 "SNA" ; +VAL_ 341 ESP_wheelPulseCountReL 255 "SNA" ; +VAL_ 341 ESP_wheelPulseCountFrR 255 "SNA" ; +VAL_ 341 ESP_wheelPulseCountFrL 255 "SNA" ; +VAL_ 969 APS_apbGpioState 0 "AP_GPIO_STATE_PWR_DOWN_REBOOT" 3 "AP_GPIO_STATE_HEALTHY" 1 "AP_GPIO_STATE_DISABLED" 2 "AP_GPIO_STATE_CRITICAL" ; +VAL_ 969 APS_apbStatusMonitorState 1 "STATUS_MONITOR_STATE_PWR_OFF" 2 "STATUS_MONITOR_STATE_INIT" 7 "STATUS_MONITOR_NUM_STATES" 0 "STATUS_MONITOR_STATE_UNKNOWN" 4 "STATUS_MONITOR_STATE_CRITICAL" 6 "STATUS_MONITOR_STATE_RECOVERY" 5 "STATUS_MONITOR_STATE_SHUTTING_DOWN" 3 "STATUS_MONITOR_STATE_NOMINAL" ; +VAL_ 969 APS_eacInternalState 1 "APS_EAC_STATE_MOMENTARY" 3 "APS_EAC_STATE_AUTOPARK" 5 "APS_EAC_STATE_OVERRIDE" 4 "APS_EAC_STATE_INHIBIT" 0 "APS_EAC_STATE_INIT" 2 "APS_EAC_STATE_CONTINUOUS" 7 "APS_EAC_NUM_STATES" 6 "APS_EAC_STATE_LSS" ; +VAL_ 969 APS_appGpioState 0 "AP_GPIO_STATE_PWR_DOWN_REBOOT" 3 "AP_GPIO_STATE_HEALTHY" 1 "AP_GPIO_STATE_DISABLED" 2 "AP_GPIO_STATE_CRITICAL" ; +VAL_ 969 APS_canMaster 0 "CAN_MASTER_APS" 2 "CAN_MASTER_APB" 3 "CAN_MASTER_SNA" 1 "CAN_MASTER_APP" ; +VAL_ 969 APS_vehBehaviorState 0 "VEH_BEHAVIOR_STATE_UNKNOWN" 3 "VEH_BEHAVIOR_STATE_APS_BRIDGE_APP" 1 "VEH_BEHAVIOR_STATE_APS_AVAILABLE" 5 "VEH_BEHAVIOR_STATE_APS_FAIL_SAFE" 7 "VEH_BEHAVIOR_NUM_STATES" 2 "VEH_BEHAVIOR_STATE_APS_CONTROL" 6 "VEH_BEHAVIOR_STATE_APS_OVERRIDE" 4 "VEH_BEHAVIOR_STATE_APS_BRIDGE_APB" ; +VAL_ 969 APS_appStatusMonitorState 1 "STATUS_MONITOR_STATE_PWR_OFF" 2 "STATUS_MONITOR_STATE_INIT" 7 "STATUS_MONITOR_NUM_STATES" 0 "STATUS_MONITOR_STATE_UNKNOWN" 4 "STATUS_MONITOR_STATE_CRITICAL" 6 "STATUS_MONITOR_STATE_RECOVERY" 5 "STATUS_MONITOR_STATE_SHUTTING_DOWN" 3 "STATUS_MONITOR_STATE_NOMINAL" ; +VAL_ 925 IBST_internalState 5 "TRANSITION_TO_IDLE" 0 "NO_MODE_ACTIVE" 4 "DIAGNOSTIC" 6 "POST_DRIVE_CHECK" 1 "PRE_DRIVE_CHECK" 3 "EXTERNAL_BRAKE_REQUEST" 2 "LOCAL_BRAKE_REQUEST" ; +VAL_ 925 IBST_driverBrakeApply 1 "BRAKES_NOT_APPLIED" 2 "DRIVER_APPLYING_BRAKES" 3 "FAULT" 0 "NOT_INIT_OR_OFF" ; +VAL_ 925 IBST_iBoosterStatus 6 "IBOOSTER_ACTUATION" 4 "IBOOSTER_ACTIVE_GOOD_CHECK" 2 "IBOOSTER_FAILURE" 5 "IBOOSTER_READY" 3 "IBOOSTER_DIAGNOSTIC" 0 "IBOOSTER_OFF" 1 "IBOOSTER_INIT" ; +VAL_ 880 EPAS3S_eacStatus 7 "SNA" 2 "EAC_ACTIVE" 4 "LANE_KEEP_ASSIST" 3 "EAC_FAULT" 1 "EAC_AVAILABLE" 5 "EMERGENCY_LANE_KEEP" 0 "EAC_INHIBITED" ; +VAL_ 880 EPAS3S_handsOnLevel 1 "LEVEL_1" 0 "LEVEL_0" 3 "LEVEL_3" 2 "LEVEL_2" ; +VAL_ 880 EPAS3S_torsionBarTorque 4095 "SNA" 4094 "UNDEFINABLE_DATA" ; +VAL_ 880 EPAS3S_eacErrorCode 15 "SNA" 11 "EAC_ERROR_HIGH_TORSION_SAFETY" 4 "EAC_ERROR_TMP_FAULT" 2 "EAC_ERROR_MAX_SPEED" 7 "EAC_ERROR_HIGH_ANGLE_RATE_REQ" 0 "EAC_ERROR_IDLE" 10 "EAC_ERROR_HIGH_MMOT_SAFETY" 6 "EAC_ERROR_HIGH_ANGLE_REQ" 8 "EAC_ERROR_HIGH_ANGLE_SAFETY" 5 "EAR_ERROR_MAX_STEER_DELTA" 13 "EAC_ERROR_PINION_VEL_DIFF" 1 "EAC_ERROR_MIN_SPEED" 14 "EAC_EXTERNAL_MONITOR_INHIBIT" 12 "EAC_ERROR_LOW_ASSIST" 9 "EAC_ERROR_HIGH_ANGLE_RATE_SAFETY" 3 "EAC_ERROR_HANDS_ON" ; +VAL_ 880 EPAS3S_steeringRackForce 1023 "SNA" 1022 "NOT_IN_SPEC" ; +VAL_ 880 EPAS3S_steeringFault 0 "NO_FAULT" 1 "FAULT" ; +VAL_ 880 EPAS3S_steeringReduced 0 "NORMAL_ASSIST" 1 "REDUCED_ASSIST" ; +VAL_ 880 EPAS3S_internalSASQF 1 "IN_SPEC" 0 "UNDEFINABLE_ACCURACY" ; +VAL_ 880 EPAS3S_currentTuneMode 3 "STEERING_TUNE_RWD_COMFORT" 1 "STEERING_TUNE_DM_STANDARD" 5 "STEERING_TUNE_RWD_SPORT" 0 "STEERING_TUNE_DM_COMFORT" 4 "STEERING_TUNE_RWD_STANDARD" 2 "STEERING_TUNE_DM_SPORT" ; +VAL_ 599 DI_uiSpeedUnits 0 "DI_SPEED_MPH" 1 "DI_SPEED_KPH" ; +VAL_ 599 DI_uiSpeed 255 "DI_UI_SPEED_SNA" ; +VAL_ 599 DI_vehicleSpeed 4095 "SNA" ; +VAL_ 637 APS_eacAllow 0 "INHIBIT" 1 "ALLOW" 2 "RESERVED" 3 "SNA"; +VAL_ 1160 DAS_steeringControlType 2 "LANE_KEEP_ASSIST" 0 "NONE" 1 "ANGLE_CONTROL" 3 "EMERGENCY_LANE_KEEP" ; +VAL_ 1160 DAS_steeringAngleRequest 16384 "ZERO_ANGLE" ; +VAL_ 297 SCCM_steeringAngleValidity 3 "SNA" 2 "INIT" 0 "INVALID" 1 "VALID" ; +VAL_ 297 SCCM_steeringAngleSensorStatus 0 "OK" 1 "INIT" 2 "ERROR" 3 "ERROR_INIT" ; +VAL_ 646 DI_rollPreventionState 0 "UNAVAILABLE" 1 "STANDBY" 2 "READY" 3 "BUILD" 4 "HOLD" 5 "PARK" 6 "FAULT" 7 "INIT" ; +VAL_ 646 DI_vehicleHoldState 0 "UNAVAILABLE" 1 "STANDBY" 2 "BLEND_IN" 3 "STANDSTILL" 4 "BLEND_OUT" 5 "PARK" 6 "FAULT" 7 "INIT" ; +VAL_ 646 DI_pmmStatus 0 "INACTIVE" 1 "ACTIVE" 2 "LOGGING_ACTIVE" 3 "SNA" ; +VAL_ 646 DI_aebState 0 "UNAVAILABLE" 1 "STANDBY" 2 "ENABLED" 3 "STANDSTILL" 4 "FAULT" 7 "SNA" ; +VAL_ 646 DI_autopilotRequest 0 "IDLE" 1 "ACTIVATE" ; +VAL_ 646 DI_parkBrakeState 0 "UNAVAILABLE" 1 "RELEASED" 2 "REQUESTED" 3 "APPLIED" 4 "FAULTED" 5 "PANIC_EPB" 6 "PANIC_SKID" 7 "RELEASING" 15 "SNA" ; +VAL_ 646 DI_autoparkState 0 "UNAVAILABLE" 1 "STANDBY" 2 "STARTED" 3 "ACTIVE" 4 "COMPLETE" 5 "PAUSED" 6 "ABORTED" 7 "RESUMED" 8 "UNPARK_COMPLETE" 9 "SELFPARK_STARTED" 15 "SNA" ; +VAL_ 646 DI_speedUnits 0 "MPH" 1 "KPH" ; +VAL_ 646 DI_cruiseState 0 "UNAVAILABLE" 1 "STANDBY" 2 "ENABLED" 3 "STANDSTILL" 4 "OVERRIDE" 5 "FAULT" 6 "PRE_FAULT" 7 "PRE_CANCEL" ; +VAL_ 659 DAS_driverSteeringWeight 0 "light" 1 "standard" 2 "heavy"; +VAL_ 659 DAS_offRoadAssist 0 "disabled" 3 "enabled"; +VAL_ 659 DAS_distanceUnits 1 "miles" 0 "kilometers"; +VAL_ 659 DAS_fcwSensitivity 0 "early" 1 "medium" 2 "late" 3 "off"; +VAL_ 659 DAS_driverAccelerationMode 0 "chill" 1 "standard"; +VAL_ 785 buckleStatus 1 "LATCHED" 0 "UNLATCHED" ; +VAL_ 785 anyDoorOpen 1 "OPEN" 0 "CLOSED" ; +VAL_ 785 leftBlinkerBlinking 0 "off" 1 "blinking, off" 2 "blinking, on"; +VAL_ 785 rightBlinkerBlinking 0 "off" 1 "blinking, off" 2 "blinking, on"; +VAL_ 923 DAS_autoLaneChangeState 5 "ALC_UNAVAILABLE_VEHICLE_SPEED" 17 "ALC_ABORT_POOR_VIEW_RANGE" 23 "ALC_BLOCKED_VEH_TTC_AND_USS_L" 0 "ALC_UNAVAILABLE_DISABLED" 26 "ALC_BLOCKED_LANE_TYPE_L" 29 "ALC_ABORT_TIMEOUT" 9 "ALC_IN_PROGRESS_L" 4 "ALC_UNAVAILABLE_EXITING_HIGHWAY" 22 "ALC_BLOCKED_VEH_TTC_L" 12 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_R" 18 "ALC_ABORT_LC_HEALTH_BAD" 28 "ALC_WAITING_HANDS_ON" 8 "ALC_AVAILABLE_BOTH" 11 "ALC_WAITING_FOR_SIDE_OBST_TO_PASS_L" 3 "ALC_UNAVAILABLE_TP_FOLLOW" 2 "ALC_UNAVAILABLE_SONICS_INVALID" 21 "ALC_UNAVAILABLE_SOLID_LANE_LINE" 24 "ALC_BLOCKED_VEH_TTC_R" 1 "ALC_UNAVAILABLE_NO_LANES" 25 "ALC_BLOCKED_VEH_TTC_AND_USS_R" 30 "ALC_ABORT_MISSION_PLAN_INVALID" 27 "ALC_BLOCKED_LANE_TYPE_R" 19 "ALC_ABORT_BLINKER_TURNED_OFF" 31 "ALC_SNA" 13 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_L" 16 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_R" 6 "ALC_AVAILABLE_ONLY_L" 20 "ALC_ABORT_OTHER_REASON" 15 "ALC_ABORT_SIDE_OBSTACLE_PRESENT_L" 7 "ALC_AVAILABLE_ONLY_R" 14 "ALC_WAITING_FOR_FWD_OBST_TO_PASS_R" 10 "ALC_IN_PROGRESS_R" ; +VAL_ 923 DAS_autopilotHandsOnState 8 "LC_HANDS_ON_SUSPENDED" 15 "LC_HANDS_ON_SNA" 7 "LC_HANDS_ON_REQD_STRUCK_OUT" 3 "LC_HANDS_ON_REQD_VISUAL" 4 "LC_HANDS_ON_REQD_CHIME_1" 6 "LC_HANDS_ON_REQD_SLOWING" 1 "LC_HANDS_ON_REQD_DETECTED" 2 "LC_HANDS_ON_REQD_NOT_DETECTED" 5 "LC_HANDS_ON_REQD_CHIME_2" 0 "LC_HANDS_ON_NOT_REQD" ; +VAL_ 923 DAS_fleetSpeedState 0 "FLEETSPEED_UNAVAILABLE" 1 "FLEETSPEED_AVAILABLE" 2 "FLEETSPEED_ACTIVE" 3 "FLEETSPEED_HOLD" ; +VAL_ 923 DAS_laneDepartureWarning 5 "SNA" 0 "NONE" 2 "RIGHT_WARNING" 4 "RIGHT_WARNING_SEVERE" 3 "LEFT_WARNING_SEVERE" 1 "LEFT_WARNING" ; +VAL_ 923 DAS_csaState 1 "CSA_EXTERNAL_STATE_AVAILABLE" 3 "CSA_EXTERNAL_STATE_HOLD" 2 "CSA_EXTERNAL_STATE_ENABLE" 0 "CSA_EXTERNAL_STATE_UNAVAILABLE" ; +VAL_ 923 DAS_sideCollisionInhibit 0 "NO_INHIBIT" 1 "INHIBIT" ; +VAL_ 923 DAS_sideCollisionWarning 0 "NONE" 2 "WARN_RIGHT" 1 "WARN_LEFT" 3 "WARN_LEFT_RIGHT" ; +VAL_ 923 DAS_sideCollisionAvoid 3 "SNA" 0 "NONE" 1 "AVOID_LEFT" 2 "AVOID_RIGHT" ; +VAL_ 923 DAS_autoparkReady 0 "AUTOPARK_UNAVAILABLE" 1 "AUTOPARK_READY" ; +VAL_ 923 DAS_forwardCollisionWarning 3 "SNA" 0 "NONE" 1 "FORWARD_COLLISION_WARNING" ; +VAL_ 923 DAS_heaterState 0 "HEATER_OFF_SNA" 1 "HEATER_ON" ; +VAL_ 923 DAS_visionOnlySpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; +VAL_ 923 DAS_suppressSpeedWarning 1 "Suppress_Speed_Warning" 0 "Do_Not_Suppress" ; +VAL_ 923 DAS_fusedSpeedLimit 31 "NONE" 0 "UNKNOWN_SNA" ; +VAL_ 923 DAS_blindSpotRearRight 3 "SNA" 0 "NO_WARNING" 1 "WARNING_LEVEL_1" 2 "WARNING_LEVEL_2" ; +VAL_ 923 DAS_blindSpotRearLeft 3 "SNA" 0 "NO_WARNING" 1 "WARNING_LEVEL_1" 2 "WARNING_LEVEL_2" ; +VAL_ 923 DAS_autopilotState 15 "SNA" 8 "ABORTING" 3 "ACTIVE_NOMINAL" 0 "DISABLED" 4 "ACTIVE_RESTRICTED" 5 "ACTIVE_NAV" 14 "FAULT" 1 "UNAVAILABLE" 9 "ABORTED" 2 "AVAILABLE" ; diff --git a/opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc b/opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc new file mode 100644 index 0000000000..604db8fe27 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/tesla_model3_vehicle.dbc @@ -0,0 +1,339 @@ +VERSION "" + + +BU_: CH DIPF DIPR ETH FC HVI HVS PARTY SDCV VEH VIRT + + +BO_ 962 VCLEFT_switchStatus: 8 VEH + SG_ VCLEFT_frontBuckleSwitch m0: 48|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_btnWindowSwPackUpLF m0: 32|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_frontSeatTrackBack m0: 8|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoDownLF m0: 35|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackDownRR m0: 46|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoUpRR m0: 45|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoDownRR m0: 47|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_rightMirrorTilt m0: 5|3@1+ (1,0) [0|4] "" vcright + SG_ VCLEFT_btnWindowSwPackUpRR m0: 44|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_frontOccupancySwitch m0: 50|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_swcRightTiltLeft m1: 8|2@1+ (1,0) [0|3] "" das + SG_ VCLEFT_rearRightOccupancySwitch m0: 58|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_btnWindowSwPackDownLF m0: 34|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoUpLF m0: 33|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_swcLeftTiltRight m1: 3|2@1+ (1,0) [0|3] "" das + SG_ VCLEFT_frontSeatBackrestForward m0: 22|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_swcRightTiltRight m1: 10|2@1+ (1,0) [0|3] "" das + SG_ VCLEFT_swcLeftScrollTicks m1: 16|6@1- (1,0) [-32|31] "" das + SG_ VCLEFT_btnWindowUpLR m1: 32|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowAutoDownLR m1: 35|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackDownRF m0: 42|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoUpRF m0: 41|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_frontSeatLumbarIn m0: 28|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_frontSeatLiftUp m0: 18|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_btnWindowSwPackDownLR m0: 38|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoUpLR m0: 37|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_frontSeatLumbarDown m0: 24|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_driverPresent m0: 4|1@1+ (1,0) [0|1] "" das + SG_ VCLEFT_frontSeatTiltDown m0: 12|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_frontSeatTrackForward m0: 10|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_rearLeftBuckleSwitch m0: 52|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_hazardButtonPressed m0: 3|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_swcRightScrollTicks m1: 24|6@1- (1,0) [-32|31] "" das + SG_ VCLEFT_swcRightPressed m1: 12|2@1+ (1,0) [0|3] "" das + SG_ VCLEFT_frontSeatLumbarOut m0: 30|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_brakePressed m0: 60|1@1+ (1,0) [0|1] "" di + SG_ VCLEFT_swcLeftTiltLeft m1: 14|2@1+ (1,0) [0|3] "" das + SG_ VCLEFT_swcLeftPressed m1: 5|2@1+ (1,0) [0|3] "" das + SG_ VCLEFT_btnWindowSwPackUpLR m0: 36|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_frontSeatTiltUp m0: 14|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_rearLeftOccupancySwitch m0: 56|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_frontSeatBackrestBack m0: 20|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoDownLR m0: 39|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_rearCenterOccupancySwitch m0: 54|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_frontSeatLumbarUp m0: 26|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_frontSeatLiftDown m0: 16|2@1+ (1,0) [0|3] "" gtw + SG_ VCLEFT_hornSwitchPressed m0: 2|1@1+ (1,0) [0|1] "" app + SG_ VCLEFT_btnWindowSwPackUpRF m0: 40|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowAutoUpLR m1: 33|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_btnWindowSwPackAutoDownRF m0: 43|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_switchStatusIndex M: 0|2@1+ (1,0) [0|2] "" X + SG_ VCLEFT_btnWindowDownLR m1: 34|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_rearHVACButtonPressed m0: 61|1@1+ (1,0) [0|1] "" gtw + +BO_ 259 VCRIGHT_doorStatus: 8 VEH + SG_ VCRIGHT_reservedForBackCompat : 28|2@1+ (1,0) [0|3] "" X + SG_ VCRIGHT_trunkLatchStatus : 56|4@1+ (1,0) [0|8] "" di + SG_ VCRIGHT_mirrorFoldState : 52|3@1+ (1,0) [0|4] "" gtw + SG_ VCRIGHT_rearLatchStatus : 4|4@1+ (1,0) [0|8] "" aps + SG_ VCRIGHT_mirrorTiltYPosition : 41|8@1+ (0.02,0) [0|5] "V" gtw + SG_ VCRIGHT_frontRelActuatorSwitch : 12|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_mirrorRecallState : 60|3@1+ (1,0) [0|5] "" gtw + SG_ VCRIGHT_frontIntSwitchPressed : 31|1@1+ (1,0) [0|1] "" aps + SG_ VCRIGHT_mirrorState : 49|3@1+ (1,0) [0|4] "" gtw + SG_ VCRIGHT_rearRelActuatorSwitch : 13|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_frontHandlePulledPersist : 30|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_mirrorTiltXPosition : 33|8@1+ (0.02,0) [0|5] "V" gtw + SG_ VCRIGHT_mirrorDipped : 63|1@1+ (1,0) [0|1] "" X + SG_ VCRIGHT_frontHandlePulled : 10|1@1+ (1,0) [0|1] "" aps + SG_ VCRIGHT_frontLatchStatus : 0|4@1+ (1,0) [0|8] "" aps + SG_ VCRIGHT_rearHandlePulled : 11|1@1+ (1,0) [0|1] "" aps + SG_ VCRIGHT_frontHandlePWM : 14|7@1+ (1,0) [0|100] "%" X + SG_ VCRIGHT_frontLatchSwitch : 8|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_rearLatchSwitch : 9|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_rearHandlePWM : 21|7@1+ (1,0) [0|100] "%" X + SG_ VCRIGHT_rearIntSwitchPressed : 32|1@1+ (1,0) [0|1] "" aps + +BO_ 585 SCCM_leftStalk: 3 VEH + SG_ SCCM_leftStalkCounter : 8|4@1+ (1,0) [0|15] "" X + SG_ SCCM_washWipeButtonStatus : 14|2@1+ (1,0) [0|3] "" das + SG_ SCCM_turnIndicatorStalkStatus : 16|3@1+ (1,0) [0|5] "" das + SG_ SCCM_leftStalkCrc : 0|8@1+ (1,0) [0|255] "" X + SG_ SCCM_leftStalkReserved1 : 19|5@1+ (1,0) [0|31] "" X + SG_ SCCM_highBeamStalkStatus : 12|2@1+ (1,0) [0|3] "" das + +BO_ 280 DI_systemStatus: 8 VEH + SG_ DI_epbRequest : 44|2@1+ (1,0) [0|2] "" epbl + SG_ DI_systemStatusCounter : 8|4@1+ (1,0) [0|15] "" X + SG_ DI_proximity : 46|1@1+ (1,0) [0|1] "" bms + SG_ DI_keepAliveRequest : 47|1@1+ (1,0) [0|1] "" bms + SG_ DI_accelPedalPos : 32|8@1+ (0.4,0) [0|100] "%" vcfront + SG_ DI_gear : 21|3@1+ (1,0) [0|7] "" gtw + SG_ DI_tractionControlMode : 40|3@1+ (1,0) [0|5] "" X + SG_ DI_trackModeState : 48|2@1+ (1,0) [0|2] "" gtw + SG_ DI_regenLight : 26|1@1+ (1,0) [0|1] "" vcleft + SG_ DI_systemState : 16|3@1+ (1,0) [0|5] "" epbl + SG_ DI_immobilizerState : 27|3@1+ (1,0) [0|6] "" X + SG_ DI_systemStatusChecksum : 0|8@1+ (1,0) [0|255] "" X + SG_ DI_brakePedalState : 19|2@1+ (1,0) [0|2] "" vcleft + +BO_ 835 VCRIGHT_status: 8 VEH + SG_ VCRIGHT_5AVoltage : 18|10@1+ (0.005443676098,0) [0|5.56888] "V" gtw + SG_ VCRIGHT_loadShedPriority : 0|8@1+ (1,0) [0|255] "" X + SG_ VCRIGHT_rearDefrostState : 11|3@1+ (1,0) [0|4] "" gtw + SG_ VCRIGHT_vbatProt : 28|12@1+ (0.005443676098,0) [0|22.29185] "V" gtw + SG_ VCRIGHT_vehiclePowerStateDBG : 8|2@1+ (1,0) [0|3] "" gtw + SG_ VCRIGHT_swEnStatus : 10|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_mirrorHeatState : 14|3@1+ (1,0) [0|4] "" X + SG_ VCRIGHT_OTAState : 17|1@1+ (1,0) [0|1] "" gtw + SG_ VCRIGHT_footwellLightCurrent : 40|12@1- (0.1,0) [-204.8|204.7] "mA" X + SG_ VCRIGHT_pcbaTemperature : 52|11@1+ (0.125,-40) [-40|150] "degC" gtw + +BO_ 553 SCCM_rightStalk: 3 VEH + SG_ SCCM_rightStalkCounter : 8|4@1+ (1,0) [0|15] "" X + SG_ SCCM_rightStalkCrc : 0|8@1+ (1,0) [0|255] "" X + SG_ SCCM_rightStalkReserved1 : 15|1@1+ (1,0) [0|1] "" X + SG_ SCCM_parkButtonStatus : 16|2@1+ (1,0) [0|3] "" das + SG_ SCCM_rightStalkReserved2 : 18|6@1+ (1,0) [0|63] "" X + SG_ SCCM_rightStalkStatus : 12|3@1+ (1,0) [0|6] "" das + +BO_ 297 SCCM_steeringAngleSensor: 8 VEH + SG_ SCCM_steeringAngleValidity : 30|2@1+ (1,0) [0|3] "" gtw + SG_ SCCM_supplierID : 12|2@1+ (1,0) [0|3] "" gtw + SG_ SCCM_steeringAngleSensorReservd1 : 46|2@1+ (1,0) [0|3] "" X + SG_ SCCM_steeringAngleCrc : 0|8@1+ (1,0) [0|255] "" gtw + SG_ SCCM_steeringAngleSensorStatus : 14|2@1+ (1,0) [0|3] "" aps + SG_ SCCM_steeringAngleSpeed : 32|14@1+ (0.5,-4096) [-4096|4095.5] "deg/s" das + SG_ SCCM_steeringAngle : 16|14@1+ (0.1,-819.2) [-819.2|819] "deg" aps + SG_ SCCM_steeringAngleSensorReservd2 : 48|8@1+ (1,0) [0|255] "" X + SG_ SCCM_steeringAngleCounter : 8|4@1+ (1,0) [0|15] "" gtw + SG_ SCCM_steeringAngleSensorReservd3 : 56|8@1+ (1,0) [0|255] "" X + +BO_ 258 VCLEFT_doorStatus: 8 VEH + SG_ VCLEFT_mirrorDipped : 61|1@1+ (1,0) [0|1] "" X + SG_ VCLEFT_frontHandlePulledPersist : 62|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_mirrorRecallState : 55|3@1+ (1,0) [0|5] "" gtw + SG_ VCLEFT_rearIntSwitchPressed : 32|1@1+ (1,0) [0|1] "" aps + SG_ VCLEFT_rearLatchSwitch : 9|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_rearHandlePWM : 24|7@1+ (1,0) [0|100] "%" X + SG_ VCLEFT_frontLatchSwitch : 8|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_frontHandlePWM : 16|7@1+ (1,0) [0|100] "%" X + SG_ VCLEFT_rearHandlePulled : 11|1@1+ (1,0) [0|1] "" aps + SG_ VCLEFT_rearLatchStatus : 4|4@1+ (1,0) [0|8] "" aps + SG_ VCLEFT_frontHandlePulled : 10|1@1+ (1,0) [0|1] "" aps + SG_ VCLEFT_mirrorTiltXPosition : 33|8@1+ (0.02,0) [0|5] "V" gtw + SG_ VCLEFT_mirrorState : 49|3@1+ (1,0) [0|4] "" gtw + SG_ VCLEFT_frontIntSwitchPressed : 31|1@1+ (1,0) [0|1] "" aps + SG_ VCLEFT_rearRelActuatorSwitch : 13|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_mirrorHeatState : 58|3@1+ (1,0) [0|4] "" X + SG_ VCLEFT_frontRelActuatorSwitch : 12|1@1+ (1,0) [0|1] "" gtw + SG_ VCLEFT_mirrorTiltYPosition : 41|8@1+ (0.02,0) [0|5] "V" gtw + SG_ VCLEFT_frontLatchStatus : 0|4@1+ (1,0) [0|8] "" aps + SG_ VCLEFT_mirrorFoldState : 52|3@1+ (1,0) [0|4] "" gtw + + +BO_ 568 STW_ACTN_RQ: 8 STW + SG_ SpdCtrlLvr_Stat : 0|6@1+ (1,0) [0|0] "" NEO + SG_ VSL_Enbl_Rq : 6|1@1+ (1,0) [0|0] "" NEO + SG_ SpdCtrlLvrStat_Inv : 7|1@1+ (1,0) [0|0] "" NEO + SG_ DTR_Dist_Rq : 8|8@1+ (1,0) [0|200] "" NEO + SG_ TurnIndLvr_Stat : 16|2@1+ (1,0) [0|0] "" NEO + SG_ HiBmLvr_Stat : 18|2@1+ (1,0) [0|0] "" NEO + SG_ WprWashSw_Psd : 20|2@1+ (1,0) [0|0] "" NEO + SG_ WprWash_R_Sw_Posn_V2 : 22|2@1+ (1,0) [0|0] "" NEO + SG_ StW_Lvr_Stat : 24|3@1+ (1,0) [0|0] "" NEO + SG_ StW_Cond_Flt : 27|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Cond_Psd : 28|2@1+ (1,0) [0|0] "" NEO + SG_ HrnSw_Psd : 30|2@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw00_Psd : 32|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw01_Psd : 33|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw02_Psd : 34|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw03_Psd : 35|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw04_Psd : 36|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw05_Psd : 37|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw06_Psd : 38|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw07_Psd : 39|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw08_Psd : 40|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw09_Psd : 41|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw10_Psd : 42|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw11_Psd : 43|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw12_Psd : 44|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw13_Psd : 45|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw14_Psd : 46|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw15_Psd : 47|1@1+ (1,0) [0|0] "" NEO + SG_ WprSw6Posn : 48|3@1+ (1,0) [0|0] "" NEO + SG_ MC_STW_ACTN_RQ : 52|4@1+ (1,0) [0|15] "" NEO + SG_ CRC_STW_ACTN_RQ : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 1001 DAS_bodyControls: 8 VEH + SG_ DAS_headlightRequest : 0|2@1+ (1,0) [0|3] "" aps + SG_ DAS_hazardLightRequest : 2|2@1+ (1,0) [0|3] "" aps + SG_ DAS_wiperSpeed : 4|4@1+ (1,0) [0|15] "" aps + SG_ DAS_turnIndicatorRequest : 8|2@1+ (1,0) [0|3] "" aps + SG_ DAS_highLowBeamDecision : 10|2@1+ (1,0) [0|3] "" aps + SG_ DAS_heaterRequest : 12|2@1+ (1,0) [0|2] "" aps + SG_ DAS_turnIndicatorRequestReason : 17|4@1+ (1,0) [0|8] "" aps + SG_ DAS_autopilotActive : 24|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_accActive : 29|1@1+ (1,0) [0|1] "" XXX + SG_ DAS_bodyControlsCounter : 52|4@1+ (1,0) [0|15] "" aps + SG_ DAS_bodyControlsChecksum : 56|8@1+ (1,0) [0|255] "" aps + +BO_ 1013 ID3F5VCFRONT_lighting: 8 VEH + SG_ VCFRONT_lowBeamsCalibrated : 62|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_lowBeamsOnForDRL : 61|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_simLatchingStalk : 59|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_highBeamSwitchActive : 58|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_parkRightStatus : 56|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_parkLeftStatus : 54|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_turnSignalRightStatus : 52|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_turnSignalLeftStatus : 50|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_sideRepeaterRightStatus : 48|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_sideRepeaterLeftStatus : 46|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_sideMarkersStatus : 44|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_fogRightStatus : 42|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_fogLeftStatus : 40|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_DRLRightStatus : 38|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_DRLLeftStatus : 36|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_highBeamRightStatus : 34|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_highBeamLeftStatus : 32|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_lowBeamRightStatus : 30|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_lowBeamLeftStatus : 28|2@1+ (1,0) [0|3] "" Receiver + SG_ VCFRONT_hazardSwitchBacklight : 27|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_seeYouHomeLightingReq : 26|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_approachLightingRequest : 25|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_courtesyLightingRequest : 24|1@1+ (1,0) [0|1] "" Receiver + SG_ VCFRONT_switchLightingBrightness : 16|8@1+ (0.5,0) [0|127] "%" Receiver + SG_ VCFRONT_ambientLightingBrightnes : 8|8@1+ (0.5,0) [0|127] "%" Receiver + SG_ VCFRONT_hazardLightRequest : 4|4@1+ (1,0) [0|8] "" Receiver + SG_ VCFRONT_indicatorRightRequest : 2|2@1+ (1,0) [0|2] "" Receiver + SG_ VCFRONT_indicatorLeftRequest : 0|2@1+ (1,0) [0|2] "" Receiver + +VAL_ 568 SpdCtrlLvr_Stat 32 "DN_1ST" 16 "UP_1ST" 8 "DN_2ND" 4 "UP_2ND" 2 "RWD" 1 "FWD" 0 "IDLE" ; +VAL_ 568 DTR_Dist_Rq 255 "SNA" 200 "ACC_DIST_7" 166 "ACC_DIST_6" 133 "ACC_DIST_5" 100 "ACC_DIST_4" 66 "ACC_DIST_3" 33 "ACC_DIST_2" 0 "ACC_DIST_1" ; +VAL_ 568 TurnIndLvr_Stat 3 "SNA" 2 "RIGHT" 1 "LEFT" 0 "IDLE" ; +VAL_ 568 HiBmLvr_Stat 3 "SNA" 2 "HIBM_FLSH_ON_PSD" 1 "HIBM_ON_PSD" 0 "IDLE" ; +VAL_ 568 WprWashSw_Psd 3 "SNA" 2 "WASH" 1 "TIPWIPE" 0 "NPSD" ; +VAL_ 568 WprWash_R_Sw_Posn_V2 3 "SNA" 2 "WASH" 1 "INTERVAL" 0 "OFF" ; +VAL_ 568 StW_Lvr_Stat 4 "STW_BACK" 3 "STW_FWD" 2 "STW_DOWN" 1 "STW_UP" 0 "NPSD" ; +VAL_ 568 StW_Cond_Psd 3 "SNA" 2 "DOWN" 1 "UP" 0 "NPSD" ; +VAL_ 568 HrnSw_Psd 3 "SNA" 2 "NDEF2" 1 "PSD" 0 "NPSD" ; +VAL_ 568 StW_Sw00_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 StW_Sw01_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 StW_Sw03_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 StW_Sw04_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 WprSw6Posn 7 "SNA" 6 "STAGE2" 5 "STAGE1" 4 "INTERVAL4" 3 "INTERVAL3" 2 "INTERVAL2" 1 "INTERVAL1" 0 "OFF" ; + +VAL_ 1001 DAS_headlightRequest 3 "DAS_HEADLIGHT_REQUEST_INVALID" 1 "DAS_HEADLIGHT_REQUEST_ON" 0 "DAS_HEADLIGHT_REQUEST_OFF"; +VAL_ 1001 DAS_hazardLightRequest 3 "DAS_REQUEST_HAZARDS_SNA" 2 "DAS_REQUEST_HAZARDS_UNUSED" 0 "DAS_REQUEST_HAZARDS_OFF" 1 "DAS_REQUEST_HAZARDS_ON"; +VAL_ 1001 DAS_wiperSpeed 3 "DAS_WIPER_SPEED_3" 12 "DAS_WIPER_SPEED_12" 8 "DAS_WIPER_SPEED_8" 14 "DAS_WIPER_SPEED_14" 5 "DAS_WIPER_SPEED_5" 13 "DAS_WIPER_SPEED_13" 2 "DAS_WIPER_SPEED_2" 0 "DAS_WIPER_SPEED_OFF" 4 "DAS_WIPER_SPEED_4" 1 "DAS_WIPER_SPEED_1" 15 "DAS_WIPER_SPEED_INVALID" 10 "DAS_WIPER_SPEED_10" 11 "DAS_WIPER_SPEED_11" 7 "DAS_WIPER_SPEED_7" 9 "DAS_WIPER_SPEED_9" 6 "DAS_WIPER_SPEED_6"; +VAL_ 1001 DAS_turnIndicatorRequest 0 "DAS_TURN_INDICATOR_NONE" 2 "DAS_TURN_INDICATOR_RIGHT" 3 "DAS_TURN_INDICATOR_CANCEL" 1 "DAS_TURN_INDICATOR_LEFT"; +VAL_ 1001 DAS_highLowBeamDecision 2 "DAS_HIGH_BEAM_ON" 1 "DAS_HIGH_BEAM_OFF" 3 "DAS_HIGH_BEAM_SNA" 0 "DAS_HIGH_BEAM_UNDECIDED"; +VAL_ 1001 DAS_heaterRequest 0 "DAS_HEATER_SNA" 2 "DAS_HEATER_ON" 1 "DAS_HEATER_OFF"; +VAL_ 1001 DAS_turnIndicatorRequestReason 8 "DAS_ACTIVE_COMMANDED_LANE_CHANGE" 4 "DAS_CANCEL_LANE_CHANGE" 6 "DAS_ACTIVE_MERGE" 2 "DAS_ACTIVE_SPEED_LANE_CHANGE" 5 "DAS_CANCEL_FORK" 0 "DAS_NONE" 3 "DAS_ACTIVE_FORK" 7 "DAS_CANCEL_MERGE" 1 "DAS_ACTIVE_NAV_LANE_CHANGE"; + +VAL_ 1013 VCFRONT_DRLLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_DRLRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_ambientLightingBrightnes 255 "SNA" ; +VAL_ 1013 VCFRONT_fogLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_fogRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_hazardLightRequest 1 "HAZARD_REQUEST_BUTTON" 6 "HAZARD_REQUEST_CAR_ALARM" 5 "HAZARD_REQUEST_CRASH" 7 "HAZARD_REQUEST_DAS" 2 "HAZARD_REQUEST_LOCK" 4 "HAZARD_REQUEST_MISLOCK" 0 "HAZARD_REQUEST_NONE" 8 "HAZARD_REQUEST_UDS" 3 "HAZARD_REQUEST_UNLOCK" ; +VAL_ 1013 VCFRONT_highBeamLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_highBeamRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_indicatorLeftRequest 2 "TURN_SIGNAL_ACTIVE_HIGH" 1 "TURN_SIGNAL_ACTIVE_LOW" 0 "TURN_SIGNAL_OFF" ; +VAL_ 1013 VCFRONT_indicatorRightRequest 2 "TURN_SIGNAL_ACTIVE_HIGH" 1 "TURN_SIGNAL_ACTIVE_LOW" 0 "TURN_SIGNAL_OFF" ; +VAL_ 1013 VCFRONT_lowBeamLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_lowBeamRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_parkLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_parkRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_sideMarkersStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_sideRepeaterLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_sideRepeaterRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_simLatchingStalk 0 "SIMULATED_LATCHING_STALK_IDLE" 1 "SIMULATED_LATCHING_STALK_LEFT" 2 "SIMULATED_LATCHING_STALK_RIGHT" 3 "SIMULATED_LATCHING_STALK_SNA" ; +VAL_ 1013 VCFRONT_switchLightingBrightness 255 "SNA" ; +VAL_ 1013 VCFRONT_turnSignalLeftStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 1013 VCFRONT_turnSignalRightStatus 2 "LIGHT_FAULT" 0 "LIGHT_OFF" 1 "LIGHT_ON" 3 "LIGHT_SNA" ; +VAL_ 962 VCLEFT_frontBuckleSwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatTrackBack 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_rightMirrorTilt 4 "MIRROR_TILT_LEFT" 2 "MIRROR_TILT_UP" 3 "MIRROR_TILT_RIGHT" 0 "MIRROR_TILT_STOP" 1 "MIRROR_TILT_DOWN"; +VAL_ 962 VCLEFT_frontOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_swcRightTiltLeft 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_rearRightOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_swcLeftTiltRight 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatBackrestForward 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_swcRightTiltRight 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatLumbarIn 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatLiftUp 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatLumbarDown 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatTiltDown 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatTrackForward 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_rearLeftBuckleSwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_swcRightPressed 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatLumbarOut 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_swcLeftTiltLeft 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_swcLeftPressed 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatTiltUp 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_rearLeftOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatBackrestBack 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_rearCenterOccupancySwitch 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatLumbarUp 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_frontSeatLiftDown 2 "SWITCH_ON" 0 "SWITCH_SNA" 3 "SWITCH_FAULT" 1 "SWITCH_OFF"; +VAL_ 962 VCLEFT_switchStatusIndex 1 "VCLEFT_SWITCH_STATUS_INDEX_1" 2 "VCLEFT_SWITCH_STATUS_INDEX_INVALID" 0 "VCLEFT_SWITCH_STATUS_INDEX_0"; +VAL_ 259 VCRIGHT_trunkLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; +VAL_ 259 VCRIGHT_mirrorFoldState 4 "MIRROR_FOLD_STATE_UNFOLDING" 1 "MIRROR_FOLD_STATE_FOLDED" 3 "MIRROR_FOLD_STATE_FOLDING" 0 "MIRROR_FOLD_STATE_UNKNOWN" 2 "MIRROR_FOLD_STATE_UNFOLDED"; +VAL_ 259 VCRIGHT_rearLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; +VAL_ 259 VCRIGHT_mirrorRecallState 5 "MIRROR_RECALL_STATE_RECALLING_STOPPED" 2 "MIRROR_RECALL_STATE_RECALLING_AXIS_2" 0 "MIRROR_RECALL_STATE_INIT" 3 "MIRROR_RECALL_STATE_RECALLING_COMPLETE" 4 "MIRROR_RECALL_STATE_RECALLING_FAILED" 1 "MIRROR_RECALL_STATE_RECALLING_AXIS_1"; +VAL_ 259 VCRIGHT_mirrorState 3 "MIRROR_STATE_FOLD_UNFOLD" 1 "MIRROR_STATE_TILT_X" 0 "MIRROR_STATE_IDLE" 2 "MIRROR_STATE_TILT_Y" 4 "MIRROR_STATE_RECALL"; +VAL_ 259 VCRIGHT_frontLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; +VAL_ 585 SCCM_washWipeButtonStatus 3 "SNA" 0 "NOT_PRESSED" 2 "2ND_DETENT" 1 "1ST_DETENT"; +VAL_ 585 SCCM_turnIndicatorStalkStatus 3 "DOWN_1" 5 "SNA" 0 "IDLE" 1 "UP_1" 4 "DOWN_2" 2 "UP_2"; +VAL_ 585 SCCM_highBeamStalkStatus 3 "SNA" 0 "IDLE" 1 "PULL" 2 "PUSH"; +VAL_ 280 DI_epbRequest 0 "DI_EPBREQUEST_NO_REQUEST" 1 "DI_EPBREQUEST_PARK" 2 "DI_EPBREQUEST_UNPARK"; +VAL_ 280 DI_keepAliveRequest 1 "KEEP_ALIVE" 0 "NO_REQUEST"; +VAL_ 280 DI_accelPedalPos 255 "SNA"; +VAL_ 280 DI_gear 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" 7 "DI_GEAR_SNA" 2 "DI_GEAR_R" 3 "DI_GEAR_N" 4 "DI_GEAR_D"; +VAL_ 280 DI_tractionControlMode 0 "TC_NORMAL" 1 "TC_SLIP_START" 4 "TC_ROLLS_MODE" 2 "TC_DEV_MODE_1" 5 "TC_DYNO_MODE" 3 "TC_DEV_MODE_2"; +VAL_ 280 DI_trackModeState 0 "TRACK_MODE_UNAVAILABLE" 1 "TRACK_MODE_AVAILABLE" 2 "TRACK_MODE_ON"; +VAL_ 280 DI_systemState 5 "DI_SYS_ENABLE" 1 "DI_SYS_IDLE" 2 "DI_SYS_STANDBY" 0 "DI_SYS_UNAVAILABLE" 3 "DI_SYS_FAULT" 4 "DI_SYS_ABORT"; +VAL_ 280 DI_immobilizerState 2 "DI_IMM_STATE_AUTHENTICATING" 0 "DI_IMM_STATE_INIT_SNA" 3 "DI_IMM_STATE_DISARMED" 4 "DI_IMM_STATE_IDLE" 6 "DI_IMM_STATE_FAULT" 1 "DI_IMM_STATE_REQUEST" 5 "DI_IMM_STATE_RESET"; +VAL_ 280 DI_brakePedalState 2 "INVALID" 0 "OFF" 1 "ON"; +VAL_ 835 VCRIGHT_rearDefrostState 2 "HEATER_STATE_OFF" 4 "HEATER_STATE_FAULT" 1 "HEATER_STATE_ON" 0 "HEATER_STATE_SNA" 3 "HEATER_STATE_OFF_UNAVAILABLE"; +VAL_ 835 VCRIGHT_vehiclePowerStateDBG 3 "VEHICLE_POWER_STATE_DRIVE" 1 "VEHICLE_POWER_STATE_CONDITIONING" 2 "VEHICLE_POWER_STATE_ACCESSORY" 0 "VEHICLE_POWER_STATE_OFF"; +VAL_ 835 VCRIGHT_mirrorHeatState 2 "HEATER_STATE_OFF" 4 "HEATER_STATE_FAULT" 1 "HEATER_STATE_ON" 0 "HEATER_STATE_SNA" 3 "HEATER_STATE_OFF_UNAVAILABLE"; +VAL_ 553 SCCM_parkButtonStatus 3 "SNA" 0 "NOT_PRESSED" 2 "INIT" 1 "PRESSED"; +VAL_ 553 SCCM_rightStalkStatus 3 "DOWN_1" 6 "SNA" 0 "IDLE" 5 "INIT" 1 "UP_1" 4 "DOWN_2" 2 "UP_2"; +VAL_ 297 SCCM_steeringAngleValidity 3 "SNA" 2 "INIT" 0 "INVALID" 1 "VALID"; +VAL_ 297 SCCM_steeringAngleSensorStatus 0 "OK" 1 "INIT" 2 "ERROR" 3 "ERROR_INIT"; +VAL_ 258 VCLEFT_mirrorRecallState 5 "MIRROR_RECALL_STATE_RECALLING_STOPPED" 2 "MIRROR_RECALL_STATE_RECALLING_AXIS_2" 0 "MIRROR_RECALL_STATE_INIT" 3 "MIRROR_RECALL_STATE_RECALLING_COMPLETE" 4 "MIRROR_RECALL_STATE_RECALLING_FAILED" 1 "MIRROR_RECALL_STATE_RECALLING_AXIS_1"; +VAL_ 258 VCLEFT_rearLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; +VAL_ 258 VCLEFT_mirrorState 3 "MIRROR_STATE_FOLD_UNFOLD" 1 "MIRROR_STATE_TILT_X" 0 "MIRROR_STATE_IDLE" 2 "MIRROR_STATE_TILT_Y" 4 "MIRROR_STATE_RECALL"; +VAL_ 258 VCLEFT_mirrorHeatState 2 "HEATER_STATE_OFF" 4 "HEATER_STATE_FAULT" 1 "HEATER_STATE_ON" 0 "HEATER_STATE_SNA" 3 "HEATER_STATE_OFF_UNAVAILABLE"; +VAL_ 258 VCLEFT_frontLatchStatus 8 "LATCH_FAULT" 2 "LATCH_CLOSED" 1 "LATCH_OPENED" 3 "LATCH_CLOSING" 7 "LATCH_DEFAULT" 4 "LATCH_OPENING" 5 "LATCH_AJAR" 6 "LATCH_TIMEOUT" 0 "LATCH_SNA"; +VAL_ 258 VCLEFT_mirrorFoldState 4 "MIRROR_FOLD_STATE_UNFOLDING" 1 "MIRROR_FOLD_STATE_FOLDED" 3 "MIRROR_FOLD_STATE_FOLDING" 0 "MIRROR_FOLD_STATE_UNKNOWN" 2 "MIRROR_FOLD_STATE_UNFOLDED"; diff --git a/opendbc_repo/opendbc/dbc/tesla_powertrain.dbc b/opendbc_repo/opendbc/dbc/tesla_powertrain.dbc new file mode 100644 index 0000000000..8572ee20f4 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/tesla_powertrain.dbc @@ -0,0 +1,179 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: + NEO + MCU + GTW + EPAS + DI + ESP + SBW + STW + APP + DAS + XXX + +BO_ 262 DI_torque1: 8 DI + SG_ DI_torqueDriver : 0|13@1- (0.25,0) [-750|750] "Nm" NEO + SG_ DI_torque1Counter : 13|3@1+ (1,0) [0|0] "" NEO + SG_ DI_torqueMotor : 16|13@1- (0.25,0) [-750|750] "Nm" NEO + SG_ DI_soptState : 29|3@1+ (1,0) [0|0] "" NEO + SG_ DI_motorRPM : 32|16@1- (1,0) [-17000|17000] "RPM" NEO + SG_ DI_pedalPos : 48|8@1+ (0.4,0) [0|100] "%" NEO + SG_ DI_torque1Checksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 278 DI_torque2: 6 DI + SG_ DI_torqueEstimate : 0|12@1- (0.5,0) [-750|750] "Nm" NEO + SG_ DI_gear : 12|3@1+ (1,0) [0|0] "" NEO + SG_ DI_brakePedal : 15|1@1+ (1,0) [0|0] "" NEO + SG_ DI_vehicleSpeed : 16|12@1+ (0.05,-25) [-25|179.75] "MPH" NEO + SG_ DI_gearRequest : 28|3@1+ (1,0) [0|0] "" NEO + SG_ DI_torqueInterfaceFailure : 31|1@1+ (1,0) [0|0] "" NEO + SG_ DI_torque2Counter : 32|4@1+ (1,0) [0|0] "" NEO + SG_ DI_brakePedalState : 36|2@1+ (1,0) [0|0] "" NEO + SG_ DI_epbParkRequest : 38|1@1+ (1,0) [0|0] "" NEO + SG_ DI_epbInterfaceReady : 39|1@1+ (1,0) [0|0] "" NEO + SG_ DI_torque2Checksum : 40|8@1+ (1,0) [0|0] "" NEO + +BO_ 504 BrakeMessage: 8 XXX + SG_ driverBrakeStatus : 2|2@1+ (1,0) [0|3] "" XXX + +BO_ 568 STW_ACTN_RQ: 8 STW + SG_ SpdCtrlLvr_Stat : 0|6@1+ (1,0) [0|0] "" NEO + SG_ VSL_Enbl_Rq : 6|1@1+ (1,0) [0|0] "" NEO + SG_ SpdCtrlLvrStat_Inv : 7|1@1+ (1,0) [0|0] "" NEO + SG_ DTR_Dist_Rq : 8|8@1+ (1,0) [0|200] "" NEO + SG_ TurnIndLvr_Stat : 16|2@1+ (1,0) [0|0] "" NEO + SG_ HiBmLvr_Stat : 18|2@1+ (1,0) [0|0] "" NEO + SG_ WprWashSw_Psd : 20|2@1+ (1,0) [0|0] "" NEO + SG_ WprWash_R_Sw_Posn_V2 : 22|2@1+ (1,0) [0|0] "" NEO + SG_ StW_Lvr_Stat : 24|3@1+ (1,0) [0|0] "" NEO + SG_ StW_Cond_Flt : 27|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Cond_Psd : 28|2@1+ (1,0) [0|0] "" NEO + SG_ HrnSw_Psd : 30|2@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw00_Psd : 32|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw01_Psd : 33|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw02_Psd : 34|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw03_Psd : 35|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw04_Psd : 36|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw05_Psd : 37|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw06_Psd : 38|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw07_Psd : 39|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw08_Psd : 40|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw09_Psd : 41|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw10_Psd : 42|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw11_Psd : 43|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw12_Psd : 44|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw13_Psd : 45|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw14_Psd : 46|1@1+ (1,0) [0|0] "" NEO + SG_ StW_Sw15_Psd : 47|1@1+ (1,0) [0|0] "" NEO + SG_ WprSw6Posn : 48|3@1+ (1,0) [0|0] "" NEO + SG_ MC_STW_ACTN_RQ : 52|4@1+ (1,0) [0|15] "" NEO + SG_ CRC_STW_ACTN_RQ : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 598 DI_state: 8 DI + SG_ DI_systemState : 0|3@1+ (1,0) [0|0] "" NEO + SG_ DI_vehicleHoldState : 3|3@1+ (1,0) [0|0] "" NEO + SG_ DI_proximity : 6|1@1+ (1,0) [0|0] "" NEO + SG_ DI_driveReady : 7|1@1+ (1,0) [0|0] "" NEO + SG_ DI_regenLight : 8|1@1+ (1,0) [0|0] "" NEO + SG_ DI_state : 9|3@1+ (1,0) [0|0] "" NEO + SG_ DI_cruiseState : 12|4@1+ (1,0) [0|0] "" NEO + SG_ DI_analogSpeed : 16|12@1+ (0.1,0) [0|150] "speed" NEO + SG_ DI_immobilizerState : 28|3@1+ (1,0) [0|0] "" NEO + SG_ DI_speedUnits : 31|1@1+ (1,0) [0|1] "" NEO + SG_ DI_cruiseSet : 32|9@1+ (0.5,0) [0|255.5] "speed" NEO + SG_ DI_aebState : 41|3@1+ (1,0) [0|0] "" NEO + SG_ DI_stateCounter : 44|4@1+ (1,0) [0|0] "" NEO + SG_ DI_digitalSpeed : 48|8@1+ (1,0) [0|250] "" NEO + SG_ DI_stateChecksum : 56|8@1+ (1,0) [0|0] "" NEO + +BO_ 703 DAS_control: 8 GTW + SG_ DAS_setSpeed : 0|12@1+ (0.1,0) [0|409.4] "kph" DI,PM,APS + SG_ DAS_accState : 12|4@1+ (1,0) [0|0] "" DI,PM,APS + SG_ DAS_aebEvent : 16|2@1+ (1,0) [0|3] "" DI,PM,APS + SG_ DAS_jerkMin : 18|9@1+ (0.03,-15.232) [-15.232|0.098] "m/s^3" DI,PM,APS + SG_ DAS_jerkMax : 27|8@1+ (0.059,0) [0|15.045] "m/s^3" DI,PM,APS + SG_ DAS_accelMin : 35|9@1+ (0.04,-15) [-15|5.44] "m/s^2" DI,PM,APS + SG_ DAS_accelMax : 44|9@1+ (0.04,-15) [-15|5.44] "m/s^2" DI,PM,APS + SG_ DAS_controlCounter : 53|3@1+ (1,0) [0|0] "" DI,PM,APS + SG_ DAS_controlChecksum : 56|8@1+ (1,0) [0|0] "" DI,PM,APS + +VAL_ 262 DI_torqueDriver -4096 "SNA" ; +VAL_ 262 DI_torqueMotor -4096 "SNA" ; +VAL_ 262 DI_soptState 7 "SOPT_TEST_SNA" 4 "SOPT_TEST_NOT_RUN" 3 "SOPT_TEST_PASSED" 2 "SOPT_TEST_FAILED" 1 "SOPT_TEST_IN_PROGRESS" 0 "SOPT_PRE_TEST" ; +VAL_ 262 DI_motorRPM -32768 "SNA" ; +VAL_ 262 DI_pedalPos 255 "SNA" ; +VAL_ 278 DI_torqueEstimate -2048 "SNA" ; +VAL_ 278 DI_gear 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; +VAL_ 278 DI_brakePedal 1 "Applied" 0 "Not_applied" ; +VAL_ 278 DI_vehicleSpeed 4095 "SNA" ; +VAL_ 278 DI_gearRequest 7 "DI_GEAR_SNA" 4 "DI_GEAR_D" 3 "DI_GEAR_N" 2 "DI_GEAR_R" 1 "DI_GEAR_P" 0 "DI_GEAR_INVALID" ; +VAL_ 278 DI_torqueInterfaceFailure 1 "TORQUE_INTERFACE_FAILED" 0 "TORQUE_INTERFACE_NORMAL" ; +VAL_ 278 DI_brakePedalState 3 "SNA" 2 "INVALID" 1 "ON" 0 "OFF" ; +VAL_ 278 DI_epbParkRequest 1 "Park_requested" 0 "No_request" ; +VAL_ 278 DI_epbInterfaceReady 1 "EPB_INTERFACE_READY" 0 "EPB_INTERFACE_NOT_READY" ; +VAL_ 504 driverBrakeStatus 2 "APPLIED" 1 "NOT_APPLIED" ; +VAL_ 568 SpdCtrlLvr_Stat 32 "DN_1ST" 16 "UP_1ST" 8 "DN_2ND" 4 "UP_2ND" 2 "RWD" 1 "FWD" 0 "IDLE" ; +VAL_ 568 DTR_Dist_Rq 255 "SNA" 200 "ACC_DIST_7" 166 "ACC_DIST_6" 133 "ACC_DIST_5" 100 "ACC_DIST_4" 66 "ACC_DIST_3" 33 "ACC_DIST_2" 0 "ACC_DIST_1" ; +VAL_ 568 TurnIndLvr_Stat 3 "SNA" 2 "RIGHT" 1 "LEFT" 0 "IDLE" ; +VAL_ 568 HiBmLvr_Stat 3 "SNA" 2 "HIBM_FLSH_ON_PSD" 1 "HIBM_ON_PSD" 0 "IDLE" ; +VAL_ 568 WprWashSw_Psd 3 "SNA" 2 "WASH" 1 "TIPWIPE" 0 "NPSD" ; +VAL_ 568 WprWash_R_Sw_Posn_V2 3 "SNA" 2 "WASH" 1 "INTERVAL" 0 "OFF" ; +VAL_ 568 StW_Lvr_Stat 4 "STW_BACK" 3 "STW_FWD" 2 "STW_DOWN" 1 "STW_UP" 0 "NPSD" ; +VAL_ 568 StW_Cond_Psd 3 "SNA" 2 "DOWN" 1 "UP" 0 "NPSD" ; +VAL_ 568 HrnSw_Psd 3 "SNA" 2 "NDEF2" 1 "PSD" 0 "NPSD" ; +VAL_ 568 StW_Sw00_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 StW_Sw01_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 StW_Sw03_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 StW_Sw04_Psd 1 "PRESSED" 0 "NOT_PRESSED_SNA" ; +VAL_ 568 WprSw6Posn 7 "SNA" 6 "STAGE2" 5 "STAGE1" 4 "INTERVAL4" 3 "INTERVAL3" 2 "INTERVAL2" 1 "INTERVAL1" 0 "OFF" ; +VAL_ 598 DI_aebState 2 "ENABLED" 4 "FAULT" 7 "SNA" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; +VAL_ 598 DI_analogSpeed 4095 "SNA" ; +VAL_ 598 DI_cruiseState 2 "ENABLED" 5 "FAULT" 0 "OFF" 4 "OVERRIDE" 7 "PRE_CANCEL" 6 "PRE_FAULT" 1 "STANDBY" 3 "STANDSTILL" ; +VAL_ 598 DI_digitalSpeed 255 "SNA" ; +VAL_ 598 DI_immobilizerState 2 "AUTHENTICATING" 3 "DISARMED" 6 "FAULT" 4 "IDLE" 0 "INIT_SNA" 1 "REQUEST" 5 "RESET" ; +VAL_ 598 DI_speedUnits 1 "KPH" 0 "MPH" ; +VAL_ 598 DI_state 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; +VAL_ 598 DI_systemState 3 "ABORT" 4 "ENABLE" 2 "FAULT" 1 "STANDBY" 0 "UNAVAILABLE" ; +VAL_ 598 DI_vehicleHoldState 2 "BLEND_IN" 4 "BLEND_OUT" 6 "FAULT" 7 "INIT" 5 "PARK" 1 "STANDBY" 3 "STANDSTILL" 0 "UNAVAILABLE" ; +VAL_ 703 DAS_setSpeed 4095 "SNA" ; +VAL_ 703 DAS_accState 15 "FAULT_SNA" 13 "ACC_CANCEL_GENERIC_SILENT" 11 "APC_SELFPARK_START" 10 "APC_UNPARK_COMPLETE" 9 "APC_PAUSE" 8 "APC_ABORT" 7 "APC_COMPLETE" 6 "APC_FORWARD" 5 "APC_BACKWARD" 4 "ACC_ON" 3 "ACC_HOLD" 0 "ACC_CANCEL_GENERIC" ; +VAL_ 703 DAS_aebEvent 3 "AEB_SNA" 2 "AEB_FAULT" 1 "AEB_ACTIVE" 0 "AEB_NOT_ACTIVE" ; +VAL_ 703 DAS_jerkMin 511 "SNA" ; +VAL_ 703 DAS_jerkMax 255 "SNA" ; +VAL_ 703 DAS_accelMin 511 "SNA" ; +VAL_ 703 DAS_accelMax 511 "SNA" ; \ No newline at end of file diff --git a/opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc b/opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc new file mode 100644 index 0000000000..17cd8f1b36 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/toyota_2017_ref_pt.dbc @@ -0,0 +1,1638 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: AFS BSR CGW CSR DS1 FCM FRD KSS MAV SCS Vector__XXX + + +BO_ 1196 ABG1D50: 8 CGW + SG_ DRABG01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1212 ABG1D51: 8 CGW + SG_ DRABG09 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG10 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG11 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG12 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG13 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG14 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG15 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRABG16 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 945 ABG1S01: 8 CGW + SG_ CDT : 22|3@0+ (1,0) [0|0] "" DS1 + SG_ AB : 19|2@0+ (1,0) [0|0] "" DS1 + SG_ DBKLAB : 17|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PODT : 27|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PBKLAB : 25|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ EDRTRG : 44|2@0+ (1,0) [0|0] "" DS1 + +BO_ 836 ACC1F01: 8 DS1 + SG_ DSS1GDRV : 7|10@0- (0.1,0) [0|0] "m/s^2" Vector__XXX + SG_ DS1STAT2 : 13|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ DS1STBK2 : 10|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSWAR : 18|1@0+ (1,0) [0|0] "" FCM + SG_ PCSALM : 17|1@0+ (1,0) [0|0] "" FCM + SG_ PCSOPR : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSABK : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PBATRGR : 30|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PPTRGR : 28|1@0+ (1,0) [0|0] "" FCM + SG_ IBTRGR : 27|1@0+ (1,0) [0|0] "" FCM + SG_ CLEXTRGR : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ IRLT_REQ : 25|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRKHLD : 37|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVSTRGR : 36|1@0+ (1,0) [0|0] "" SCS + SG_ VGRSTRGR : 35|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PREFILL : 33|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PBRTRGR : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSDIS : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PBPREPMP : 40|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCF01SM : 63|8@0+ (1,0) [0|0] "" FCM + +BO_ 1227 ACC1N01: 8 DS1 + SG_ ACCNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ ACCSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ ACCSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ ACCREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 835 ACC1S03: 8 DS1 + SG_ ATACC2 : 7|16@0- (0.001,0) [0|0] "m/s^2" Vector__XXX + SG_ ACCTYPE : 23|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ XTRGT2 : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XLTMD2 : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LCDT2 : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LCNG : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SMC : 17|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ STOKJD : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PMTBRKG : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LVSTP : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LCCWOK : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LCBW2 : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACC : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ AT_RAW : 47|8@0- (0.05,0) [0|0] "m/s^2" Vector__XXX + SG_ ACC03SUM : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 896 ACN1S01: 8 CGW + SG_ R_AC2 : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_HTR : 5|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECOSW : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_EGON : 1|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ BLWON : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SCAC : 13|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CGIH : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FAN_AC : 22|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACHI : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACMAX : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_VSCUS : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_SHTR : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_PTC : 29|2@0+ (1,0) [0|0] "piece" Vector__XXX + SG_ GNRTIH : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_COL_TM : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_HET_TM : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TAMOUT : 55|8@0- (0.625,0) [0|0] "" Vector__XXX + +BO_ 897 ACN1S04: 8 CGW + SG_ R_ACCALL : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_AC_WNG : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_SW_CON : 5|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_BEEP : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_RA_AUT : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_RA_AC : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_RA_LO : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_RA_HI : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_AUTO_D : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_AUTO_P : 14|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_DEF : 13|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_RRDEF : 12|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_RFAUT : 11|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_REC : 10|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_FRS : 9|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_AC : 8|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_MHTR : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_WIPD : 22|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_DUSY : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_SWNG : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_BLW_F : 19|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_OAUT_D : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_OLET_D : 30|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_OAUT_P : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_OLET_P : 26|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ ST_BMN_F : 39|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_AIRPR : 47|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_O2 : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_PLSM : 45|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_KAFUN : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_SAFS : 42|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_ACOFF : 41|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_ONSCRN : 40|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 944 ACN1S07: 6 CGW + SG_ RDEF : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MHTR : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TR_TEMP : 15|8@0+ (0.25,-6.5) [0|0] "" Vector__XXX + SG_ ACN_AMB : 31|8@0+ (1,0) [0|0] "" CSR,DS1,FCM + SG_ AC_AMB05 : 44|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AC_MODE : 43|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1250 AFS1N01: 8 AFS + SG_ AFSNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ AFSSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ AFSSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ AFSREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 913 AFS1S01: 8 AFS + SG_ HLLI : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AZB_ADV : 5|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ HEDH_AZB : 3|1@0+ (1,0) [0|0] "" FCM + SG_ AZB_IND : 13|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ AZB_HIND : 11|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AZB_PRE : 10|1@0+ (1,0) [0|0] "" FCM + SG_ LED_HLI : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LPECU_PR : 24|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 845 AFS1S02: 5 AFS + SG_ AHRR : 17|10@0+ (0.0048828125,0) [0|0] "V" Vector__XXX + SG_ AHVLD : 39|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AHFAIL : 38|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1044 AHB1S01: 8 FCM + SG_ AHB_DUTY : 47|8@0+ (0.5,0) [0|0] "%" Vector__XXX + SG_ F_AHB : 55|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_AHB : 51|4@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 900 AVN1S01: 6 CGW + SG_ RDC : 7|4@0+ (1,0) [0|0] "" SCS + SG_ CONFID01 : 3|2@0+ (1,0) [0|0] "" SCS + SG_ CONF : 1|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LYT : 15|4@0+ (1,0) [0|0] "" SCS + SG_ DRVW : 9|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MWMP : 8|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GRAD : 23|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ HARSHID : 19|4@0+ (1,0) [0|0] "" SCS + SG_ BRANCH : 27|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ HARSH : 35|2@0+ (1,0) [0|0] "" SCS + SG_ TOLLGATE : 33|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TUNL : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LEAVEOUT : 47|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MRGLANE : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LVLANE : 45|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 902 AVN1S03: 6 CGW + SG_ ANS : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CRS1 : 15|1@0+ (1,0) [0|0] "" SCS + SG_ RQAC : 14|7@0+ (0.02,0) [0|0] "G" Vector__XXX + SG_ GUID : 23|1@0+ (1,0) [0|0] "" SCS + SG_ GYRO : 22|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ NCRN : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CRN6 : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CRN5 : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CRN3 : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CRN2 : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CRN1 : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CONFID03 : 31|2@0+ (1,0) [0|0] "" SCS + SG_ CURV : 29|2@0+ (1,0) [0|0] "" SCS + SG_ CVST : 27|1@0+ (1,0) [0|0] "" SCS + SG_ NAVI_STR : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MIND : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ONOFF : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HWPB : 39|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RAD : 38|7@0+ (5,0) [0|0] "m" SCS + SG_ AFS_SW : 41|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVS_SW : 40|1@0+ (1,0) [0|0] "" SCS + +BO_ 911 AVN1S07: 8 CGW + SG_ TOFC_RST : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SL_CSTM : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SL_RMDG : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ST_RTCOM : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVN07VLD : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ST_UCST : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSCOM51 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSCOM52 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSCOM53 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSCOM54 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSCOM55 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSCOM56 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 905 AVN1S08: 8 CGW + SG_ VVSW : 7|3@0+ (1,0) [0|0] "" CSR + SG_ BZV : 4|3@0+ (1,0) [0|0] "" CSR + SG_ DFS : 1|2@0+ (1,0) [0|0] "" CSR + SG_ BZ_M_SW : 15|1@0+ (1,0) [0|0] "" CSR + SG_ VOL_SW : 14|1@0+ (1,0) [0|0] "" CSR + SG_ BM : 13|1@0+ (1,0) [0|0] "" CSR + SG_ DOFR : 12|1@0+ (1,0) [0|0] "" CSR + SG_ RDSW : 11|1@0+ (1,0) [0|0] "" CSR + SG_ FDSW : 10|1@0+ (1,0) [0|0] "" CSR + SG_ RBSW : 9|1@0+ (1,0) [0|0] "" CSR + SG_ FBSW : 8|1@0+ (1,0) [0|0] "" CSR + SG_ NVDP_OK : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DEVICE : 22|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ DISPSIZE : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HPTCSW_L : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HPTCSW_R : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HPTCSW_E : 28|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_MODE : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VARBGM : 26|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ WBGM : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ X_LL : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ Y_LL : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ X_RH : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ Y_RH : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 998 AVN1S11: 5 CGW + SG_ SENSPFM : 7|3@0+ (1,0) [0|0] "" SCS + SG_ SENSFAIL : 4|3@0+ (1,0) [0|0] "" SCS + SG_ CONFID11 : 1|2@0+ (1,0) [0|0] "" SCS + SG_ CONFMMC : 15|8@0+ (1,0) [0|0] "" SCS + SG_ DISTERR : 23|8@0+ (1,0) [0|0] "" SCS + SG_ CONFLANE : 31|8@0+ (1,0) [0|0] "" SCS + SG_ CONFDIR : 39|8@0+ (1,0) [0|0] "" SCS + +BO_ 933 AVN1S13: 8 CGW + SG_ HUD_DISP : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRVSIDE : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DT_GP : 5|6@0+ (1,0) [0|0] "" Vector__XXX + SG_ DT_UNIT : 15|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ DIR_TURN : 12|5@0+ (11.25,0) [0|0] "degree" Vector__XXX + SG_ ROTARY : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ROAD_TP1 : 22|15@0+ (1,0) [0|0] "" Vector__XXX + SG_ ROAD_TP2 : 39|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ N_H_UP : 55|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ COMPASS : 54|6@0+ (11.25,0) [0|0] "degree" Vector__XXX + SG_ DIR : 63|6@0+ (11.25,0) [0|0] "degree" Vector__XXX + +BO_ 936 AVN1S16: 5 CGW + SG_ NDADVSRY : 7|5@0+ (1,0) [0|0] "" Vector__XXX + SG_ NDCAUTON : 15|5@0+ (1,0) [0|0] "" Vector__XXX + SG_ NDSSLCT : 23|5@0+ (1,0) [0|0] "" Vector__XXX + SG_ NDCNFDID : 18|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ NDINDST : 25|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVN16SUM : 39|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 999 AVN1S17: 7 CGW + SG_ AVN17VLD : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANEID17 : 6|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRVLANE : 3|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRV_SIDE : 12|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE_NS : 11|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE1FLG : 23|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE2FLG : 19|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE1DIR : 31|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE2DIR : 47|16@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1000 AVN1S18: 8 CGW + SG_ AVN18VLD : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANEID18 : 6|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE3FLG : 3|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE4FLG : 15|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE5FLG : 11|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE3DIR : 23|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE4DIR : 39|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE5DIR : 55|16@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1001 AVN1S19: 8 CGW + SG_ AVN19VLD : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANEID19 : 6|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE6FLG : 3|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE7FLG : 15|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE8FLG : 11|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE6DIR : 23|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE7DIR : 39|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ LANE8DIR : 55|16@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1076 AVN1S20: 8 CGW + SG_ A_LNG_ST : 7|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LANG : 5|6@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB1 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB2 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB3 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB4 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB5 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB6 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGDB7 : 63|7@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_LNGCHG : 56|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1077 AVN1S21: 8 CGW + SG_ A_OPEN_S : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ OPENCHG : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CAPSW_S : 5|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_CLR_S : 3|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ DISP_BRT : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DISP_CNT : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MM_CLOCK : 31|11@0+ (1,0) [0|0] "" Vector__XXX + SG_ CLK_OFST : 36|4@0- (5,0) [0|0] "min" Vector__XXX + SG_ DST : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CLK_TYP : 47|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_UNTTMP : 45|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_UNTSP : 43|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_UNTDST : 41|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_UNTCSP : 55|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_CLRCHG : 52|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_TMPCHG : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_SPCHG : 50|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_DSTCHG : 49|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_CSPCHG : 48|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ A_SPLM : 63|6@0+ (5,0) [0|0] "" Vector__XXX + SG_ A_UTSPLM : 57|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1043 AVN1S31: 8 CGW + SG_ GPSTM_Y : 7|8@0+ (1,0) [0|0] "year" Vector__XXX + SG_ GPSTM_MO : 15|8@0+ (1,0) [0|0] "month" Vector__XXX + SG_ GPSTM_D : 23|8@0+ (1,0) [0|0] "day" Vector__XXX + SG_ GPSTM_H : 31|8@0+ (1,0) [0|0] "hour" Vector__XXX + SG_ GPSTM_MI : 39|8@0+ (1,0) [0|0] "minute" Vector__XXX + SG_ GMT_DIFF : 55|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GMTDIF_H : 54|4@0+ (1,0) [0|0] "hour" Vector__XXX + SG_ GMTDIF_M : 50|6@0+ (1,0) [0|0] "minute" Vector__XXX + SG_ SUMMERTM : 60|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075054137 BDB1F01_14: 8 CGW + SG_ BDBF01ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDBF01IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ SALR : 23|6@0+ (1,0) [0|0] "" Vector__XXX + SG_ HDCY_BDB : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AARE_B : 31|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ I_SEN_B : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ INTSET_B : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ INCSET_B : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ISSD_BDB : 39|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SEID : 37|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ WS_ID : 44|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ WS_SWON : 41|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ WS_DATA : 55|16@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075185211 BDB1F03_16: 8 CGW + SG_ BDBF03ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ BDBF03IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ TRIP_CNT : 23|16@0+ (1,0) [0|0] "trip" AFS,BSR,CSR,DS1,FCM,MAV + SG_ TIME_CNT : 39|32@0+ (100,0) [0|0] "ms" AFS,BSR,CSR,DS1,FCM,MAV + +BO_ 1074791968 BDB1S01_10: 8 CGW + SG_ BDB01_ID : 7|8@0+ (1,0) [0|0] "" FCM,MAV + SG_ BDB01_IF : 15|8@0+ (1,0) [0|0] "" FCM + SG_ LX : 23|16@0+ (0.2,0) [0|0] "ms" FCM + SG_ ADIM : 39|2@0+ (1,0) [0|0] "" AFS,BSR,CSR + SG_ IG_BDB : 37|1@0+ (1,0) [0|0] "" AFS,MAV + SG_ ACC_BDB : 36|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SKSW : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DCTY : 45|1@0+ (1,0) [0|0] "" FCM,MAV,SCS + SG_ PCTY : 44|1@0+ (1,0) [0|0] "" MAV,SCS + SG_ RRCY : 43|1@0+ (1,0) [0|0] "" MAV,SCS + SG_ RLCY : 42|1@0+ (1,0) [0|0] "" MAV,SCS + SG_ BCTY : 41|1@0+ (1,0) [0|0] "" MAV,SCS + SG_ PSW : 51|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SRBZ : 49|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DBKL : 63|2@0+ (1,0) [0|0] "" FCM + SG_ PKB_BDB : 60|1@0+ (1,0) [0|0] "" CSR + SG_ SREXIST : 59|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SRPOS : 58|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1074857505 BDB1S02_11: 8 CGW + SG_ BDB02_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB02_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ LUD : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRNKOPN : 45|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1074923042 BDB1S03_12: 8 CGW + SG_ BDB03_ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ BDB03_IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ LTS : 23|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ PANL : 19|1@0+ (1,0) [0|0] "" BSR,CSR + SG_ UDRL : 31|1@0+ (1,0) [0|0] "" AFS + SG_ HEDH : 30|1@0+ (1,0) [0|0] "" AFS,DS1,FCM + SG_ HEDL : 29|1@0+ (1,0) [0|0] "" AFS,DS1 + SG_ TAIL : 28|1@0+ (1,0) [0|0] "" AFS,BSR,CSR,DS1 + SG_ FFOG : 27|1@0+ (1,0) [0|0] "" DS1 + SG_ RFOG : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SB_IND : 39|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SB_OK : 37|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RTRRQ : 35|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SRWARN : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PWWARN : 50|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ WEL_REQ : 48|1@0+ (1,0) [0|0] "" AFS + SG_ DRPBZ_R : 62|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075381795 BDB1S04_19: 8 CGW + SG_ BDB04_ID : 7|8@0+ (1,0) [0|0] "" MAV + SG_ BDB04_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MRMV_R : 23|2@0+ (1,0) [0|0] "" MAV + SG_ RSEL : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LSEL : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MHR : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MHL : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MVU : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MVD : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GHSW : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GCTY : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GHOPN : 42|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ ABIF : 55|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ FLSHRQ : 63|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SB_ADV : 60|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1074988600 BDB1S05_13: 8 CGW + SG_ BDB05_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB05_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ PARK : 23|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSWB : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LSWD : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LSWP : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LSWR : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LSWL : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LSWB : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRVKS_R : 31|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ PWDRD : 39|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PWDRP : 37|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PWDRR : 35|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PWDRL : 33|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ DKLS : 43|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ BKLS : 54|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ KIDSCN_R : 51|7@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075250736 BDB1S06_17: 8 CGW + SG_ BDB06_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB06_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TBSW : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ WBZF : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ WVOL : 42|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075316273 BDB1S07_18: 8 CGW + SG_ BDB07_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB07_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ WCD : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ W1D : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ W2D : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ W3D : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB7SUM1 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB7SUM2 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075447332 BDB1S08_1A: 8 CGW + SG_ BDB08_ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ BDB08_IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ DEST_BDB : 23|8@0+ (1,0) [0|0] "" AFS,BSR,CSR,DS1,FCM,MAV + SG_ DS_PACK1 : 31|8@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,MAV + SG_ DS_PACK2 : 39|8@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,MAV + SG_ STRG_WHL : 47|2@0+ (1,0) [0|0] "" AFS,CSR,DS1,FCM,MAV + SG_ DEICER : 40|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ KEYPLATE : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DBLLCK : 62|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ U2OP_CST : 61|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ U2OP_DFT : 60|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075643943 BDB1S11_1D: 8 CGW + SG_ BDB11_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB11_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDBREQ11 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDBREQ12 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1083704892 BDB1S17_98: 8 CGW + SG_ BDB17_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB17_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ CHABASE1 : 23|8@0+ (1,0) [0|0] "" AFS + SG_ CHABASE2 : 31|8@0+ (1,0) [0|0] "" AFS + SG_ CHABASE3 : 39|8@0+ (1,0) [0|0] "" AFS + SG_ CHA_NO1 : 47|4@0+ (1,0) [0|0] "" AFS + SG_ CHA_NO2 : 43|4@0+ (1,0) [0|0] "" AFS + SG_ CHA_NO3 : 55|4@0+ (1,0) [0|0] "" AFS + SG_ SP_BODY : 63|5@0+ (1,0) [0|0] "" AFS + +BO_ 1083770429 BDB1S18_99: 8 CGW + SG_ BDB18_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB18_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ POP_NAME : 23|8@0+ (1,0) [0|0] "" AFS + SG_ BODY : 31|8@0+ (1,0) [0|0] "" AFS + SG_ GEAR : 39|8@0+ (1,0) [0|0] "" AFS + SG_ GRADE : 47|8@0+ (1,0) [0|0] "" AFS + SG_ ENGINE : 55|8@0+ (1,0) [0|0] "" AFS + +BO_ 1020 BDB1S19: 8 CGW + SG_ SOLAR_R : 23|9@0+ (100,0) [0|0] "" Vector__XXX + SG_ SOLAR_L : 39|9@0+ (100,0) [0|0] "" Vector__XXX + SG_ N_LX : 55|13@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1083835966 BDB1S20_9A: 8 CGW + SG_ BDB20_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB20_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RNBDYC : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RNBDYD : 39|32@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1083901503 BDB1S21_9B: 8 CGW + SG_ BDB21_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BDB21_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ RFOG_SW : 22|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FFOG_SW : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HF_SW : 20|1@0+ (1,0) [0|0] "" AFS + SG_ HU_SW : 19|1@0+ (1,0) [0|0] "" AFS + SG_ AUTO_SW : 18|1@0+ (1,0) [0|0] "" AFS + SG_ HEAD_SW : 17|1@0+ (1,0) [0|0] "" AFS + SG_ TAIL_SW : 16|1@0+ (1,0) [0|0] "" AFS + SG_ DRL_OFF : 24|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1005 BGM1S01: 2 CGW + SG_ WCAA : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ R_DISP : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BGM_BEEP : 11|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ BGM_MODE : 9|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1237 BSR1N01: 8 BSR + SG_ BSRNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ BSRSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ BSRSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ BSRREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 1014 BSR1S01: 8 BSR + SG_ BSD_STAT : 7|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ BSD_SW : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BSD_BUZ : 23|1@0+ (1,0) [0|0] "" CSR + +BO_ 1114 CGW1N02: 8 CGW + SG_ CGW2REV : 7|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1228 CSR1N01: 8 CSR + SG_ CSRNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ CSRSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ CSRSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ CSRREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 918 CSR1S01: 7 CSR + SG_ CSV : 7|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ CSSR : 4|2@0+ (1,0) [0|0] "" MAV + SG_ CSD : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CSME : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CSIN : 0|1@0+ (1,0) [0|0] "" MAV + SG_ FL_INFO : 15|4@0+ (1,0) [0|0] "" MAV + SG_ FR_INFO : 11|4@0+ (1,0) [0|0] "" MAV + SG_ RB_INFO : 23|4@0+ (1,0) [0|0] "" MAV + SG_ FC_INFO : 19|4@0+ (1,0) [0|0] "" MAV + SG_ RL_INFO : 31|4@0+ (1,0) [0|0] "" MAV + SG_ RR_INFO : 27|4@0+ (1,0) [0|0] "" MAV + SG_ CZV : 39|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ VOT : 47|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ FCZD : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RCZD : 42|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FCDD : 41|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RCDD : 40|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VOL : 55|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ CDG : 52|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ MUTE : 49|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BZ_OFF : 48|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1087768273 DMS1S02_D6: 8 CGW + SG_ SS_MODE : 25|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 869 DS11D70: 7 DS1 + SG_ D_TRGJDG : 7|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_RESSW : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_SETSW : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_CANSW : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_MAINSW : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_VMCC : 15|8@0+ (1,0) [0|0] "km/h" Vector__XXX + SG_ D_VNCC : 23|8@0+ (1,0) [0|0] "km/h" Vector__XXX + SG_ D_CCREQ : 31|8@0+ (100,-12800) [0|0] "N" Vector__XXX + SG_ D_TGTDST : 39|8@0+ (1,0) [0|0] "m" Vector__XXX + SG_ D_VRCC : 47|8@0- (1,0) [0|0] "km/h" Vector__XXX + SG_ D_WSTL : 55|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_DSW : 54|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_FDJDG : 52|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ D_DSSJDG : 51|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 870 DS11D71: 7 DS1 + SG_ XREQALM : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XREQABK : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TGT_DIST : 5|14@0+ (0.01,0) [0|0] "m" Vector__XXX + SG_ XREQPBA : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XREQFPB : 22|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XREQPB : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XREQEXT : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XREQPSB : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TGT_VGAP : 18|11@0+ (0.025,-51.175) [0|0] "m/s" Vector__XXX + SG_ PCSDISP : 39|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ XPCSRDY : 35|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TGT_NUMB : 34|3@0+ (1,1) [0|0] "" Vector__XXX + SG_ TGT_POSX : 47|8@0- (0.04,0) [0|0] "m" Vector__XXX + +BO_ 871 DS11D72: 2 FCM + SG_ LKADRTRG : 7|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKADRSHR : 5|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKADRSLK : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKADRSLD : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKADRCC : 2|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKADRTUR : 15|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKADRINV : 13|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 643 DS11F01: 7 DS1 + SG_ DSCOUNT : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DSLCCW1 : 15|1@0+ (1,0) [0|0] "" FCM + SG_ DSSTPBZ : 14|1@0+ (1,0) [0|0] "" FCM + SG_ PBRTRGR2 : 12|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DSSFTRQD : 11|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ DSS1FDRV : 23|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ DSS1STBK : 39|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ DSS1STAT : 36|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ DSBHOK : 33|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PPTRGR2 : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DSRQBH : 47|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ IBTRGR2 : 45|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSABK2 : 44|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSNOCHG : 41|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ DS1F01SM : 55|8@0+ (1,0) [0|0] "" FCM + +BO_ 1041 DS12F02: 8 DS1 + SG_ PCSINDI : 7|2@0+ (1,0) [0|0] "" FCM + SG_ PCSWM : 5|2@0+ (1,0) [0|0] "" FCM + SG_ PCSFCT : 3|1@0+ (1,0) [0|0] "" FCM + SG_ PCSTUCT : 2|1@0+ (1,0) [0|0] "" FCM + SG_ DS1LCCK : 1|2@0+ (1,0) [0|0] "" FCM + SG_ PBTUCT : 14|1@0+ (1,0) [0|0] "" FCM + SG_ PCSEXIST : 13|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSWDUCT : 11|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSWD : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSDW : 39|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSDSRF : 36|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSTEMP : 35|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSDUST : 34|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSLCCK : 33|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSPEDW : 47|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSPVSN : 44|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCTEMP2 : 42|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSDUST2 : 41|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSOFFS : 40|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSWDS : 55|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ FRDADJ : 53|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1042 DS12F03: 8 FCM + SG_ LKAINDI : 7|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKAWLSL : 5|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKAWLSR : 3|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKAFCT : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKATUCT : 14|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKACAMT : 13|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LDWEXIST : 10|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKASPCND : 23|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKAWTCS : 18|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKASAUT : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LDWBZ : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LDAFCVB : 47|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LDARDA : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SWSSENSD : 45|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SWSSWD : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SWSRAD : 55|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SWSFLD : 53|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SWSBUZ : 50|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1207 ECO1D50: 8 CGW + SG_ DRECO01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECO08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 355 ECO1S01: 5 CGW + SG_ ECOSTAON : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECOMODE : 18|3@0+ (1,0) [0|0] "" KSS,SCS + SG_ FCREQ : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SSVMREQ : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ E2MRXMK : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BPHLDRQ : 36|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BPHLDRQ2 : 35|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECOEGSTP : 33|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 922 ECO1S90: 8 CGW + SG_ ECOBZR : 23|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECOLMP : 21|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ TESTECO : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ OPLMPMSK : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MSTART : 28|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECOMODE3 : 27|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ INFSSCOP : 39|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ INFSSSTL : 36|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECLMP : 34|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ AUTOSTA : 47|1@0+ (1,0) [0|0] "" SCS + SG_ INFSSFAL : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ INFSSINH : 45|6@0+ (1,0) [0|0] "" Vector__XXX + SG_ SSACMODE : 52|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ INFSSADV : 50|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1182 ECT1D50: 8 CGW + SG_ DRECT01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1183 ECT1D51: 8 CGW + SG_ DRECT11 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT12 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT13 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT14 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT15 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT16 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT17 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT18 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1200 ECT1D52: 8 CGW + SG_ DRECT21 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT22 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT23 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT24 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT25 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT26 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT27 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT28 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1201 ECT1D53: 8 CGW + SG_ DRECT31 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT32 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT33 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT34 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT35 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT36 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT37 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT38 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1202 ECT1D54: 8 CGW + SG_ DRECT41 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT42 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT43 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT44 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT45 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT46 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT47 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT48 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1203 ECT1D55: 8 CGW + SG_ DRECT51 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT52 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT53 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT54 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT55 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT56 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT57 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRECT58 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 464 ECT1F03: 8 CGW + SG_ NT : 7|16@0- (0.390625,0) [0|0] "rpm" Vector__XXX + SG_ ACT : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XDMET : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XNTSW : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XNMET : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XRMET : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XPMET : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SFTOUT_S : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ X3MET : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ X2MET : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XLOMET : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ L4SW : 38|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SNOW : 36|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XFSFT : 35|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SFTOUT : 34|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ HSSLWN : 55|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HSINH : 54|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CLTMODBK : 53|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ LUOUT : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LUKG : 50|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ FBCOA : 48|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ECTF03SM : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 725 ECT1S10: 2 CGW + SG_ VTORATIO : 7|16@0+ (0.0009765625,0) [0|0] "" Vector__XXX + +BO_ 956 ECT1S92: 8 CGW + SG_ B_OILW : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_OILMD : 5|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_ISNW : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_RJTB : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_WNDL : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_LMULRJ : 14|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_P : 13|1@0+ (1,0) [0|0] "" AFS,CSR,MAV + SG_ B_R : 12|1@0+ (1,0) [0|0] "" AFS,BSR,CSR,DS1,FCM,MAV + SG_ B_N : 11|1@0+ (1,0) [0|0] "" AFS,CSR,MAV + SG_ B_ISPTM : 10|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ BV_THOCL : 23|16@0+ (0.625,-50) [0|0] "" Vector__XXX + SG_ B_GEAR : 39|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_SMDE : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_D : 47|1@0+ (1,0) [0|0] "" AFS,CSR,DS1,MAV + SG_ B_ECOMI : 40|1@0+ (1,0) [0|0] "" DS1 + SG_ B_SPTMI : 55|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_PWRM : 54|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_OILWM : 51|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_SPTMS : 49|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_DMODE : 61|3@0+ (1,0) [0|0] "" SCS + +BO_ 1176 ENG1D50: 8 CGW + SG_ DRENG01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1177 ENG1D51: 8 CGW + SG_ DRENG11 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG12 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG13 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG14 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG15 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG16 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG17 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG18 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1178 ENG1D52: 8 CGW + SG_ DRENG21 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG22 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG23 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG24 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG25 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG26 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG27 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG28 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1179 ENG1D53: 8 CGW + SG_ DRENG31 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG32 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG33 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG34 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG35 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG36 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG37 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG38 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1180 ENG1D54: 8 CGW + SG_ DRENG41 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG42 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG43 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG44 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG45 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG46 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG47 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG48 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1181 ENG1D55: 8 CGW + SG_ DRENG51 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG52 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG53 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG54 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG55 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG56 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG57 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG58 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1192 ENG1D56: 8 CGW + SG_ DRENG61 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG62 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG63 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG64 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG65 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG66 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG67 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG68 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1191 ENG1D57: 8 CGW + SG_ DRENG71 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG72 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG73 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG74 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG75 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG76 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG77 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG78 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1197 ENG1D58: 8 CGW + SG_ DRENG81 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG82 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG83 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG84 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG85 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG86 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG87 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG88 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1198 ENG1D59: 8 CGW + SG_ DRENG91 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG92 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG93 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG94 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG95 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG96 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG97 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG98 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1199 ENG1D60: 8 CGW + SG_ DRENG101 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG102 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG103 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG104 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG105 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG106 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG107 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRENG108 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1017 ENG1F03: 8 CGW + SG_ VARENG1 : 7|4@0+ (1,0) [0|0] "" AFS,SCS + SG_ VARENG2 : 3|4@0+ (1,0) [0|0] "" AFS,SCS + SG_ VARENG3 : 15|4@0+ (1,0) [0|0] "" AFS,SCS + SG_ VARENG4 : 11|1@0+ (1,0) [0|0] "" AFS,SCS + SG_ HVFLAG : 10|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,SCS + SG_ VARTRM1 : 23|4@0+ (1,0) [0|0] "" AFS,CSR,FCM,MAV,SCS + SG_ GEARINF : 19|4@0+ (1,0) [0|0] "" SCS + SG_ DVINF : 31|2@0+ (1,0) [0|0] "" AFS,DS1,FCM,SCS + SG_ OBDINF : 27|4@0+ (1,0) [0|0] "" BSR,DS1,FCM,SCS + SG_ ECOFLAG : 39|1@0+ (1,0) [0|0] "" FCM + SG_ CDYMD : 38|2@0+ (1,0) [0|0] "" DS1,FCM + SG_ ENGF03SM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + +BO_ 452 ENG1F07: 8 CGW + SG_ NE1 : 7|16@0- (0.78125,0) [0|0] "rpm" SCS + SG_ THA1 : 23|8@0+ (2.5,-40) [0|0] "" Vector__XXX + SG_ THWX : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ EGF : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ T2ERXF : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ T2ERXMK : 28|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ASTEFI : 27|1@0+ (1,0) [0|0] "" AFS + SG_ B2ERXMK : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PDLF : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ENTCAL2 : 39|8@0+ (12.5,0) [0|0] "rpm" Vector__XXX + SG_ EGFB : 46|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ PTFB : 45|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MILREQ : 43|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_ECOL : 55|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_IECOCR : 53|6@0+ (2,0) [0|0] "" Vector__XXX + SG_ ENGF07SM : 63|8@0+ (1,0) [0|0] "" AFS,DS1,FCM + +BO_ 114 ENG1F43: 5 CGW + SG_ FAVLMCHL : 7|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ FAVLMONL : 23|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ ENGF43SM : 39|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 705 ENG1S01: 8 CGW + SG_ ETCSFB : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ETCSF : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSCTH : 5|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ THF : 4|1@0+ (1,0) [0|0] "" DS1 + SG_ IDL1 : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XCCACT2 : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ STPSWF : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ WTC : 0|1@0+ (1,0) [0|0] "" KSS,SCS + SG_ ETQLVSC : 15|16@0- (0.03125,0) [0|0] "Nm" Vector__XXX + SG_ ETQREAL : 31|16@0- (0.03125,0) [0|0] "Nm" SCS + SG_ ETQISC : 47|8@0+ (1,-192) [0|0] "Nm" Vector__XXX + SG_ EACCP : 55|8@0+ (0.5,0) [0|0] "%" DS1,FCM + SG_ ENG01SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 961 ENG1S23: 3 CGW + SG_ EKLSM : 7|8@0+ (0.625,0) [0|0] "%" Vector__XXX + SG_ GATHW : 15|16@0- (0.625,0) [0|0] "" Vector__XXX + +BO_ 979 ENG1S28: 2 CGW + SG_ B_FC : 7|16@0+ (0.0005,0) [0|0] "ml" Vector__XXX + +BO_ 1408 ENG1S51: 8 CGW + SG_ VIN_1 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_2 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_3 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_4 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_5 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_6 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_7 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_8 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1409 ENG1S52: 8 CGW + SG_ VIN_9 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_10 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_11 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_12 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_13 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_14 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_15 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VIN_16 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1410 ENG1S54: 8 CGW + SG_ VIN_17 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ VC : 52|5@0+ (1,0) [0|0] "" Vector__XXX + SG_ TES : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 955 ENG1S92: 8 CGW + SG_ B_ST : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_TC : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_GLOW : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_STPE : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_OMWI : 15|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_SILUP : 13|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_SILDN : 12|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_WSTP : 11|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_LOUT : 10|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_OILPL : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_TMP : 23|8@0+ (0.5,0) [0|0] "" Vector__XXX + SG_ OGENETCS : 30|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_DPFW : 28|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ BOSLAMP : 37|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ BOSMINF : 34|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ GOSLAMP : 45|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ GOSMINF : 42|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 921 ENG1S95: 8 CGW + SG_ B_LLSP2 : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TLSTBZ : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_ASLBZ2 : 5|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_SPU2 : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACASID1 : 3|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACASID2 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_LSP2 : 31|8@0+ (1,0) [0|0] "km/h Emph" Vector__XXX + SG_ B_ASLSP2 : 39|8@0+ (1,0) [0|0] "km/h Emph" Vector__XXX + SG_ CACCTRN : 47|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCINF : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCFR2 : 45|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCFR1 : 44|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCFLD : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCCM3 : 42|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCCM2 : 41|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CACCCM1 : 40|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 238 ENG2F01: 4 CGW + SG_ STOFOK : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GROWIND : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_TMP3 : 15|8@0+ (0.5,0) [0|0] "" Vector__XXX + SG_ IMMINJST : 23|16@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 466 ENG2F04: 8 CGW + SG_ XLDR : 7|1@0+ (1,0) [0|0] "" DS1 + SG_ XACCACTV : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XACCACT : 5|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ XPAIDLV : 4|1@0+ (1,0) [0|0] "" DS1 + SG_ XPAIDL : 3|1@0+ (1,0) [0|0] "" DS1 + SG_ BHOK : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RQBH : 1|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCSTAT : 15|3@0+ (1,0) [0|0] "" DS1 + SG_ ACCSTBK : 12|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ STPBZ : 9|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ PLOCKF : 8|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ACCREQ : 23|16@0- (0.0009765625,0) [0|0] "m/s^2" DS1 + SG_ ACCAVL : 39|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ SPDSTAT : 55|4@0+ (1,0) [0|0] "" DS1 + SG_ SSTOK : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CANREQ : 49|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FCACT : 48|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SM1D2 : 63|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 467 ENG2F05: 8 CGW + SG_ LCCW2 : 4|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ WSTL2 : 3|1@0+ (1,0) [0|0] "" DS1 + SG_ LCCHK : 2|3@0+ (1,0) [0|0] "" DS1 + SG_ XCCOK2 : 15|1@0+ (1,0) [0|0] "" DS1 + SG_ SLTACC : 14|2@0+ (1,0) [0|0] "" DS1 + SG_ LTME2 : 12|2@0+ (1,0) [0|0] "" DS1 + SG_ STPSWF2 : 10|1@0+ (1,0) [0|0] "" DS1 + SG_ CCSF : 9|1@0+ (1,0) [0|0] "" DS1 + SG_ CCSNG : 8|1@0+ (1,0) [0|0] "" DS1 + SG_ VM : 23|16@0+ (0.00390625,0) [0|0] "km/h" DS1 + SG_ INTG : 39|8@0- (0.04,0) [0|0] "m/s^2" DS1 + SG_ D2PRXMK : 47|1@0+ (1,0) [0|0] "" DS1 + SG_ SM1D3 : 63|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 119 ENG2F41: 6 CGW + SG_ FDRV : 7|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ FDRVREAL : 23|13@0- (10,0) [0|0] "N" Vector__XXX + SG_ XAECT : 39|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ XFDRVCOL : 38|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FDRVSELP : 34|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ ENG2F41S : 47|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 120 ENG2F42: 4 CGW + SG_ FAVLMCHH : 7|16@0- (2,0) [0|0] "N" Vector__XXX + SG_ CCRNG : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FDRVTYPD : 22|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ GEARHD : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ENG2F42S : 31|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 916 EPS1S90: 1 CGW + SG_ B_WPS0 : 1|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1235 FCM1N01: 8 FCM + SG_ FCMNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ FCMSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ FCMSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ FCMREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 1161 FCM1S10: 8 FCM + SG_ TSGN1 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNGRY1 : 12|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNHLT1 : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPDVAL1 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPLSGN1 : 31|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPLSGN2 : 27|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGN2 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNGRY2 : 44|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNHLT2 : 41|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPDVAL2 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ BZRRQ_P : 63|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ BZRRQ_A : 61|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SYNCID1 : 59|4@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1162 FCM1S11: 8 FCM + SG_ TSGN3 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNGRY3 : 12|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNHLT3 : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPLSGN3 : 31|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPLSGN4 : 27|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGN4 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNGRY4 : 44|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSGNHLT4 : 41|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ DPSGNREQ : 54|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SGNNUMP : 53|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SGNNUMA : 50|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SPDUNT : 63|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSRWMSG : 61|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ SYNCID2 : 59|4@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1163 FCM1S12: 8 FCM + SG_ TSREQPD : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSRMSW : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ OTSGNNTM : 5|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ NTLVLSPD : 3|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ OVSPNTM : 1|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ OVSPVALL : 11|4@0+ (1,-5) [0|0] "" Vector__XXX + SG_ OVSPVALM : 19|4@0+ (1,-5) [0|0] "" Vector__XXX + SG_ OVSPVALH : 27|4@0+ (1,-5) [0|0] "" Vector__XXX + SG_ TSRSPU : 33|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1279 FRD1N01: 8 FRD + SG_ FRDNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ FRDSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ FRDSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ FRDREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 737 FWM1S01: 2 CGW + SG_ ACTHLF : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MOT4WD : 6|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CCANCEL : 5|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AI4WD : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LOW4 : 3|1@0+ (1,0) [0|0] "" MAV,SCS + SG_ DLOCK : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RDLOCK : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HLN : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ F_SP4WD : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RQ_SP4WD : 14|7@0+ (1,73) [0|0] "km/h" Vector__XXX + +BO_ 1082263092 IDT1S03_82: 8 CGW + SG_ IDT03_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ IDT03_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ CO_IDT : 23|16@0+ (1,0) [0|0] "" Vector__XXX + SG_ UACK : 39|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ WRT : 38|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RSTP : 37|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1082328629 IDT1S04_83: 8 CGW + SG_ IDT04_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ IDT04_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ OSID : 47|16@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1257 KSS1N01: 8 KSS + SG_ KSSNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ KSSSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ KSSSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ KSSREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 927 KSS1S90: 1 KSS + SG_ LKSS0 : 1|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1263 MAV1N01: 8 MAV + SG_ MAVNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ MAVSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ MAVSPF : 23|16@0+ (1,0) [0|0] "" CGW + +BO_ 1075840528 MET1S01_20: 8 CGW + SG_ MET01_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET01_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET_SPD : 23|8@0+ (1,0) [0|0] "km/h" CSR + SG_ RHEOSTAT : 30|7@0+ (1,0) [0|0] "%" Vector__XXX + SG_ TAIL_CN : 39|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ILL_OF : 37|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ UNIT_TMP : 33|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ IN_FC : 47|16@0+ (0.1,0) [0|0] "Note" Vector__XXX + SG_ UNIT_0 : 63|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SP_TL : 60|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET_TC : 56|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075906065 MET1S02_21: 8 CGW + SG_ MET02_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET02_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET_DEST : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ ODO_UNIT : 29|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ OMRS : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ UNIT_CH : 26|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ ODO : 39|32@0+ (1,0) [0|0] "km/mile" Vector__XXX + +BO_ 1076037145 MET1S04_23: 8 CGW + SG_ MET04_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET04_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ AF_FC : 23|16@0+ (0.1,0) [0|0] "Note" Vector__XXX + SG_ UNIT_3 : 39|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ RANGE : 47|16@0+ (1,0) [0|0] "Note" Vector__XXX + SG_ UNIT_4 : 63|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1076102682 MET1S05_24: 8 CGW + SG_ MET05_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET05_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TO_SP : 23|16@0+ (0.1,0) [0|0] "km/h,MPH" Vector__XXX + SG_ UNIT_5 : 39|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ TO_FC : 47|16@0+ (0.1,0) [0|0] "MPG Ekm/l El/100km Ekm/gallon" Vector__XXX + SG_ UNIT_6 : 63|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1076299282 MET1S08_27: 8 CGW + SG_ MET08_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET08_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ TO_DT : 23|16@0+ (1,0) [0|0] "km,mile" Vector__XXX + SG_ UNIT_10 : 39|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1076364819 MET1S09_28: 8 CGW + SG_ MET09_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET09_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ WASH : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BLVW : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_CW : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ENGW : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ABSW : 28|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSCW : 27|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ OPW : 37|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ OLW : 36|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LW : 35|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FSRS : 33|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ HALW : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRW : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TIRW : 42|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FWW : 40|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SUSW : 53|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LKAW : 61|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET_PCSW : 59|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ WTPW : 57|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1076430356 MET1S10_29: 8 CGW + SG_ MET10_ID : 7|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ MET10_IF : 15|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ OM_MLG : 23|7@0+ (100,0) [0|0] "miles" Vector__XXX + SG_ PR_OM_FL : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TNS : 29|2@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM + SG_ HZS : 27|1@0+ (1,0) [0|0] "" AFS,FCM + +BO_ 1076495893 MET1S11_2A: 8 CGW + SG_ MET11_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET11_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ UNIT_CH2 : 23|2@0+ (1,0) [0|0] "" FCM + SG_ TOLER_A : 21|6@0+ (0.002,0.94) [0|0] "" FCM + SG_ CDISP_EX : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TOLER_B : 29|6@0- (0.2,0) [0|0] "km/h" FCM + SG_ TRIP_B : 39|32@0+ (0.1,0) [0|0] "km/MILE" Vector__XXX + +BO_ 1076561430 MET1S12_2B: 8 CGW + SG_ MET12_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ MET12_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ ESLW : 19|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CSOW : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LHLW : 37|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SMBW : 33|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ KDSW : 32|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ OMRW : 46|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BSDW : 54|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ MTSW : 48|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ ATSW : 63|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 992 MET1S18: 8 CGW + SG_ M_LANG : 7|6@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNG_ST : 1|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB1 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB2 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB3 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB4 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB5 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB6 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ M_LNGDB7 : 63|7@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1075840755 MET1S22_20: 8 CGW + SG_ ID6F320 : 7|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ IF6F320 : 15|8@0+ (1,0) [0|0] "" DS1,FCM + SG_ TSR_OSM : 22|2@0+ (1,0) [0|0] "" FCM + SG_ TSR_OSL : 20|2@0+ (1,0) [0|0] "" FCM + SG_ TSR_SNM : 18|2@0+ (1,0) [0|0] "" FCM + SG_ TSR_MAIN : 16|1@0+ (1,0) [0|0] "" FCM + SG_ LDAMCUS : 31|2@0+ (1,0) [0|0] "" FCM + SG_ LDAMSW : 29|2@0+ (1,0) [0|0] "" FCM + SG_ FCMUSER : 27|1@0+ (1,0) [0|0] "" FCM + SG_ FCMMCUS : 26|2@0+ (1,0) [0|0] "" FCM + SG_ FCMMSW : 24|1@0+ (1,0) [0|0] "" FCM + SG_ BSMMSW : 37|1@0+ (1,0) [0|0] "" BSR + SG_ CSRMSW : 34|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSMCUS : 41|1@0+ (1,0) [0|0] "" DS1 + SG_ PCSMSW : 40|1@0+ (1,0) [0|0] "" DS1 + SG_ LKACTCSW : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ LDA_SFB : 50|3@0+ (1,0) [0|0] "" FCM + +BO_ 1088685760 PMN1F03_E4: 8 CGW + SG_ PMNF03ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ PMNF03IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ PSSW_PMN : 17|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PSW_PMN : 31|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ KCC_PMN : 29|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PMOD_PMN : 27|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ MOD_EIG : 39|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SWBZ_EIG : 36|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1193 SCS1D50: 8 SCS + SG_ DRSCS01 : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS02 : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS03 : 23|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS04 : 31|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS05 : 39|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS06 : 47|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS07 : 55|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ DRSCS08 : 63|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1226 SCS1N01: 8 SCS + SG_ SCSNID : 7|8@0+ (1,0) [0|0] "" CGW + SG_ SCSSNG : 15|1@0+ (1,0) [0|0] "" CGW + SG_ SCSSPF : 23|16@0+ (1,0) [0|0] "" CGW + SG_ SCSREV : 39|32@0+ (1,0) [0|0] "" CGW + +BO_ 744 SCS1S01: 8 SCS + SG_ SELECTOR : 3|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVS_MD : 63|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 815 SCS1S06: 5 SCS + SG_ RRVH : 23|8@0- (1,0) [0|0] "mm" AFS + SG_ RLVH : 31|8@0- (1,0) [0|0] "mm" AFS + SG_ SCECOINH : 35|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 917 SCS1S90: 4 SCS + SG_ B_LSUS6 : 7|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_LSUS4 : 5|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_LSUS2 : 3|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_LSUS8 : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ DLR_HSID : 23|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LAR_HS : 18|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ AVSNI : 16|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 37 STR1S01: 8 CGW + SG_ STS3 : 7|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,MAV + SG_ STS2 : 6|1@0+ (1,0) [0|0] "" AFS,DS1,FCM,KSS,MAV,SCS + SG_ STS1 : 5|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM,KSS,MAV,SCS + SG_ STS0 : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ SSA : 3|12@0- (1.5,0) [0|0] "deg" AFS,BSR,DS1,FCM,KSS,MAV,SCS + SG_ SAZS : 23|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM + SG_ SFRZ : 22|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ SSAZ : 19|12@0- (1.5,0) [0|0] "deg" AFS,BSR,DS1,FCM + SG_ SSAS : 39|4@0- (0.1,0) [0|0] "deg" FCM,KSS,SCS + SG_ SSAV : 35|12@0- (1,0) [0|0] "deg/s" FCM,KSS,SCS + SG_ STDID : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ STR01SUM : 63|8@0+ (1,0) [0|0] "" AFS,DS1,FCM,MAV + +BO_ 1059 STR1S02: 1 CGW + SG_ SFR : 5|1@0+ (1,0) [0|0] "" MAV + SG_ STRWVG : 4|1@0+ (1,0) [0|0] "" AFS,BSR,DS1,FCM + +BO_ 170 VSC1F01: 8 CGW + SG_ VXFREF : 7|1@0+ (1,0) [0|0] "" AFS,FCM,MAV + SG_ VXFR : 6|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS + SG_ VXFLEF : 23|1@0+ (1,0) [0|0] "" AFS,FCM,MAV + SG_ VXFL : 22|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS + SG_ VXRREF : 39|1@0+ (1,0) [0|0] "" AFS,FCM,MAV + SG_ VXRR : 38|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS + SG_ VXRLEF : 55|1@0+ (1,0) [0|0] "" AFS,FCM,MAV + SG_ VXRL : 54|15@0+ (0.01,-67.67) [0|0] "km/h" AFS,BSR,DS1,FCM,KSS,MAV,SCS + +BO_ 426 VSC1F02: 6 CGW + SG_ VXFRF : 7|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV + SG_ VXFRIGS : 6|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV + SG_ VXFRHDS : 5|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS + SG_ VXFLF : 2|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV + SG_ VXFLIGS : 1|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV + SG_ VXFLHDS : 0|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS + SG_ VXRRF : 13|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV + SG_ VXRRIGS : 12|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV + SG_ VXRRHDS : 11|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS + SG_ VXRLF : 8|1@0+ (1,0) [0|0] "" AFS,BSR,FCM,MAV + SG_ VXRLIGS : 23|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV + SG_ VXRLHDS : 22|1@0+ (1,0) [0|0] "" FCM,KSS,MAV,SCS + SG_ VSCF02SM : 47|8@0+ (1,0) [0|0] "" AFS,DS1,FCM,MAV + +BO_ 550 VSC1F06: 8 CGW + SG_ VSCF01FG : 7|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ AHCURQ : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PMCF : 3|1@0+ (1,0) [0|0] "" DS1 + SG_ PMCS : 2|1@0+ (1,0) [0|0] "" DS1 + SG_ PMC : 1|10@0+ (0.02,0) [0|0] "Mpa" DS1 + SG_ ECOEN : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ CCS : 22|1@0+ (1,0) [0|0] "" DS1 + SG_ FBA : 21|1@0+ (1,0) [0|0] "" DS1 + SG_ TRBRKSYS : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TS : 38|1@0+ (1,0) [0|0] "" KSS,SCS + SG_ WSTP : 37|1@0+ (1,0) [0|0] "" DS1,KSS,SCS + SG_ VSCACT : 36|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ BAEX : 35|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TEM : 34|3@0+ (1,0) [0|0] "" SCS + SG_ FSTP : 60|1@0+ (1,0) [0|0] "" DS1 + SG_ ABSACT : 59|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + +BO_ 180 VSC1S03: 8 CGW + SG_ SP1P : 39|6@0+ (1,0) [0|0] "" DS1,FCM + SG_ SP1S : 33|1@0+ (1,0) [0|0] "" BSR,DS1,FCM,MAV + SG_ SP1 : 47|16@0- (0.01,0) [0|0] "km/h" BSR,DS1,FCM,MAV + SG_ VSC03SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + +BO_ 800 VSC1S07: 8 CGW + SG_ FBKRLY : 6|1@0+ (1,0) [0|0] "" DS1 + SG_ FVSCM : 4|1@0+ (1,0) [0|0] "" DS1 + SG_ FVSCSFT : 3|1@0+ (1,0) [0|0] "" DS1 + SG_ FABS : 2|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ TSVSC : 1|1@0+ (1,0) [0|0] "" DS1 + SG_ FVSCL : 0|1@0+ (1,0) [0|0] "" DS1 + SG_ RQCSTBKB : 15|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PSBSTBY : 14|1@0+ (1,0) [0|0] "" DS1 + SG_ P2BRXMK : 13|1@0+ (1,0) [0|0] "" DS1 + SG_ MCC : 11|1@0+ (1,0) [0|0] "" DS1 + SG_ RQBKB : 10|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRSTOP : 9|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ BRKON : 8|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ ASLP : 23|8@0- (1,0) [0|0] "deg" DS1 + SG_ BRTYPACC : 31|2@0+ (1,0) [0|0] "" DS1 + SG_ BRKABT3 : 26|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRKABT2 : 25|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRKABT1 : 24|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ GVC : 39|8@0- (0.04,0) [0|0] "m/s^2" DS1 + SG_ XGVCINV : 43|1@0+ (1,0) [0|0] "" DS1 + SG_ S07CNT : 52|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ PCSBRSTA : 50|2@0+ (1,0) [0|0] "" DS1 + SG_ VSC07SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 1056 VSC1S08: 8 CGW + SG_ YR1Z : 7|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV + SG_ YR2Z : 23|16@0- (1,0) [0|0] "rad/s" DS1,FCM,MAV + SG_ GL1Z : 39|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS + SG_ GL2Z : 47|8@0- (0.0359,0) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS + SG_ YRGSDIR : 55|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,SCS + SG_ GLZS : 51|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ YRZF : 50|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRZS : 49|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRZKS : 48|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ VSC08SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + +BO_ 186 VSC1S12: 4 CGW + SG_ HAC2ESRQ : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FHACHOLD : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSC12SUM : 31|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 562 VSC1S14: 6 CGW + SG_ VWPSUMFR : 7|8@0+ (1,0) [0|0] "" MAV + SG_ VWPSUMFL : 15|8@0+ (1,0) [0|0] "" MAV + SG_ VWPFRPM : 23|1@0+ (1,0) [0|0] "" MAV + SG_ VWPFLPM : 22|1@0+ (1,0) [0|0] "" MAV + SG_ S14CNT : 21|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ VWPFRPMS : 18|1@0+ (1,0) [0|0] "" MAV + SG_ VWPFLPMS : 17|1@0+ (1,0) [0|0] "" MAV + SG_ VWPSUMRR : 31|8@0+ (1,0) [0|0] "" MAV + SG_ VWPSUMRL : 39|8@0+ (1,0) [0|0] "" MAV + SG_ VSC14SUM : 47|8@0+ (1,0) [0|0] "" MAV + +BO_ 552 VSC1S29: 4 CGW + SG_ ICBACT : 7|1@0+ (1,0) [0|0] "" DS1 + SG_ DVS0PCS : 6|15@0- (0.001,0) [0|0] "m/s^2" DS1 + SG_ SM228 : 31|8@0+ (1,0) [0|0] "" DS1 + +BO_ 1168 VSC1S92: 1 CGW + SG_ C_DCMOD1 : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_DCMOD2 : 6|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ C_DCMOD3 : 3|4@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 951 VSC1S95: 8 CGW + SG_ B_BRKW : 7|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_ABS : 5|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_BRLV : 14|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRCOFF : 13|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ VSCOFF : 12|2@0+ (1,0) [0|0] "" DS1,FCM + SG_ SLP_WL : 10|3@0+ (1,0) [0|0] "" MAV + SG_ B_MCST : 19|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_BUZZER : 31|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_ALSD : 27|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_DACIND : 25|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ OGENVSC : 37|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_ATRC : 47|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_STRC : 46|3@0+ (1,0) [0|0] "" MAV + SG_ B_HZD : 43|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSCSWIH : 51|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ STRCDISP : 50|3@0+ (1,0) [0|0] "" Vector__XXX + SG_ STRCDSP2 : 60|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSCEXIST : 59|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1063 VSC1S96: 8 CGW + SG_ MTS_DISP : 5|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ B_MTS : 1|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRCCONRL : 11|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRCCONRR : 10|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRCCONFL : 9|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRCCONFR : 8|1@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 545 VSC2F05: 5 CGW + SG_ TQER : 7|16@0- (0.03125,0) [0|0] "Nm" Vector__XXX + SG_ REQC : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ REQ2 : 22|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ REQ1 : 21|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ AIDWI : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ RTD : 19|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ LOMUSFT : 31|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSC2F05S : 39|8@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 544 VSC2F07: 4 CGW + SG_ FSROT : 7|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRK2 : 4|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ BRK1 : 3|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ FCNG : 1|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TSLP : 0|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ TRCACT : 15|1@0+ (1,0) [0|0] "" DS1,FCM + SG_ ABSSLP : 14|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ VDMACT : 13|1@0+ (1,0) [0|0] "" FCM + SG_ DAC_CND : 9|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ VSC2F07S : 31|8@0+ (1,0) [0|0] "" DS1,FCM + +BO_ 36 YGS1S03: 8 CGW + SG_ YRS11S : 7|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRS14S : 6|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRS21S : 5|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YRS24S : 4|1@0+ (1,0) [0|0] "" DS1,FCM,MAV + SG_ YGS1 : 3|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ YGS0 : 2|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR : 1|10@0+ (0.244,-125) [0|0] "deg/sec" DS1,FCM,MAV + SG_ YR_CPUMN : 23|4@0+ (1,0) [0|0] "" Vector__XXX + SG_ GS4S : 19|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ GS1S : 18|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ GL1X : 17|10@0+ (0.03589,-18.375) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS + SG_ YG_ID : 39|4@0+ (1,0) [0|0] "" DS1,FCM,KSS,SCS + SG_ GS5S : 35|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ GS2S : 34|1@0+ (1,0) [0|0] "" DS1,FCM,KSS,MAV,SCS + SG_ GL2Y : 33|10@0+ (0.03589,-18.375) [0|0] "m/s^2" DS1,FCM,KSS,MAV,SCS + SG_ YR_DIF : 55|8@0+ (0.244,-31) [0|0] "deg/sec" DS1,FCM,MAV + SG_ YGS03SUM : 63|8@0+ (1,0) [0|0] "" DS1,FCM,MAV + +BO_ 1073743490 YGW1S01_0: 8 CGW + SG_ YGW01_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ YGW01_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_STSW : 22|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_EGST : 20|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_DRLK : 18|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_KLEG : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_HZRD : 26|3@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1073743491 YGW1S02_0: 8 CGW + SG_ YGW02_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ YGW02_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_DEFOG : 19|2@0+ (1,0) [0|0] "" Vector__XXX + SG_ YR_ARCON : 17|2@0+ (1,0) [0|0] "" Vector__XXX + +BO_ 1073743494 YGW1S05_0: 8 CGW + SG_ YGW05_ID : 7|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ YGW05_IF : 15|8@0+ (1,0) [0|0] "" Vector__XXX + SG_ YI_IMO_E : 23|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YI_UREQ : 16|1@0+ (1,0) [0|0] "" Vector__XXX + SG_ YI_RE : 47|16@0+ (1,0) [0|0] "" Vector__XXX diff --git a/opendbc_repo/opendbc/dbc/toyota_adas.dbc b/opendbc_repo/opendbc/dbc/toyota_adas.dbc new file mode 100644 index 0000000000..4aae65aa40 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/toyota_adas.dbc @@ -0,0 +1,276 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + +BO_ 528 TRACK_A_0: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 529 TRACK_A_1: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 530 TRACK_A_2: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 531 TRACK_A_3: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 532 TRACK_A_4: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 533 TRACK_A_5: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 534 TRACK_A_6: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 535 TRACK_A_7: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 536 TRACK_A_8: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 537 TRACK_A_9: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 538 TRACK_A_10: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 539 TRACK_A_11: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 540 TRACK_A_12: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 541 TRACK_A_13: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 542 TRACK_A_14: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 543 TRACK_A_15: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 544 TRACK_B_0: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 545 TRACK_B_1: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 546 TRACK_B_2: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 547 TRACK_B_3: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 548 TRACK_B_4: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 549 TRACK_B_5: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 550 TRACK_B_6: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 551 TRACK_B_7: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 552 TRACK_B_8: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 553 TRACK_B_9: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 554 TRACK_B_10: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 555 TRACK_B_11: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 556 TRACK_B_12: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 557 TRACK_B_13: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 558 TRACK_B_14: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 559 TRACK_B_15: 6 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 47|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc b/opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc new file mode 100644 index 0000000000..2213e1ade2 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/toyota_iQ_2009_can.dbc @@ -0,0 +1,196 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + +BO_ 1552 CONTAINS_LRES_SPEED: 8 XXX + SG_ SPEED_LOWRES : 16|8@1+ (1,0) [0|255] "km/h?" XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 452 ENGINE: 8 XXX + SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "rpm" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ DIFFERENT_EACH_RIDE : 23|8@0+ (1,0) [0|255] "" XXX + SG_ A_DECREASING_VALUE : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 37 STEERING: 8 XXX + SG_ STEER_DIRECTION : 3|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 42|2@0- (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 44|2@0- (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 46|2@0- (1,0) [0|3] "" XXX + SG_ STEER_ANGLE : 2|11@0- (1,0) [-350|350] "" XXX + +BO_ 36 ACCELERATIONS: 8 XXX + SG_ ACC_LAT_CLEAN : 2|11@0- (1,0) [0|255] "" XXX + SG_ ACC_LATERAL : 63|8@0- (1,0) [0|255] "" XXX + SG_ ACC_FRONT_BACK_1 : 31|8@0- (1,0) [0|255] "" XXX + SG_ ACC_FRONT_BACK_2 : 47|8@0- (1,0) [0|255] "" XXX + +BO_ 947 LOW_RES_INDICATORS: 8 XXX + SG_ LOW_RES_ACC_PEDAL : 23|7@0+ (1,0) [0|63] "" XXX + SG_ LOW_RES_RPM : 7|16@0+ (1,0) [0|255] "rpm" XXX + +BO_ 955 BRAKING_PLUS_OTHER: 8 XXX + SG_ IS_BRAKING_2 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ENGINE_TEMPERATURE : 23|8@0+ (1,0) [0|255] "" XXX + SG_ MAYBE_CLUTCH : 13|1@0+ (1,0) [0|1] "" XXX + +BO_ 1595 CONTAINS_TIME: 8 XXX + SG_ TIME_ON : 55|16@0+ (0.1,0) [0|65535] "s" XXX + SG_ BETWEEN_RIDES : 7|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 170 WHEELS_SPEEDS: 8 XXX + SG_ FRONT_LEFT_WHEEL_SPEED : 23|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX + SG_ REAR_RIGHT_WHEEL_SPEED : 39|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX + SG_ REAR_LEFT_WHEEL_SPEED : 55|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX + SG_ FRONT_RIGHT_WHEEL_SPEED : 7|16@0+ (0.01,-67.67) [0|65535] "km/h" XXX + +BO_ 180 VEHICLE_DYNAMICS: 8 XXX + SG_ WIERD_STUFF : 8|2@1+ (1,0) [0|3] "" XXX + SG_ VEHICLE_SPEED : 47|16@0+ (0.01,0) [0|255] "km/h" XXX + SG_ SPEED_MOD_256 : 63|8@0- (1,0) [0|255] "" XXX + SG_ MAYBE_DISTANCE_MOD_256 : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 186 NEW_MSG_9: 8 XXX + SG_ NEW_SIGNAL_2 : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 426 NEW_MSG_5: 8 XXX + SG_ CONSTANT : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 906 BOOLS: 8 XXX + SG_ MAY_CONTAIN_LIGHTS : 7|4@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_1 : 3|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ MOVEMENT_START_TRIGGER : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 979 LOW_RES_ACCELERATOR: 8 XXX + SG_ VERY_LRES_ACC : 7|16@0+ (1,0) [0|65535] "" XXX + +BO_ 1600 SLOW_VARIABLE_INFOS: 8 XXX + SG_ CHANGES_EACH_RIDE : 31|8@0+ (1,0) [0|255] "" XXX + SG_ INCREASING_VALUE_FUEL : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 1568 DOORS: 8 XXX + SG_ KEY_ACC : 36|1@0+ (1,0) [0|1] "" XXX + SG_ KEY_ON : 37|1@0+ (1,0) [0|1] "" XXX + SG_ KEY_INSERT : 46|1@0+ (1,0) [0|1] "" XXX + SG_ NOT_ON : 63|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_RIGHT : 44|1@0+ (1,0) [0|3] "" XXX + SG_ DOOR_TRUNK : 41|1@1+ (1,0) [0|3] "" XXX + SG_ DOOR_LEFT : 45|1@0+ (1,0) [0|255] "" XXX + SG_ HANDBRAKE : 60|1@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_1 : 4|1@0+ (1,0) [0|1] "" XXX + SG_ DRIVER_SEATBELT : 62|1@0+ (1,0) [0|1] "" XXX + SG_ TRIGGER_BOOL : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 705 COMMAND: 8 XXX + SG_ NOT_ACCELERATING_PEDAL : 3|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_PEDAL_SENSOR : 55|16@0+ (1,0) [0|65535] "" XXX + SG_ ACC_COMMAND : 31|16@0- (1,0) [0|7] "" XXX + SG_ ACC_PEDAL_MEAN : 15|16@0- (1,0) [0|255] "" XXX + SG_ NEGATIVE_COMMAND_OFFSET : 47|8@0- (1,0) [0|255] "" XXX + +BO_ 928 STEER2_MAYBE: 8 XXX + SG_ NEW_SIGNAL_1 : 13|6@0+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_2 : 60|5@0+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_4 : 5|6@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 46|7@0+ (1,0) [0|15] "" XXX + +BO_ 896 LONG_TERM_2: 8 XXX + SG_ NEW_SIGNAL_1 : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 944 LONG_TERM_MSG: 8 XXX + SG_ LONG_TERM_SIGN : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 1553 TOTAL_DIST: 8 XXX + SG_ TOTAL_DISTANCE : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 1572 WHY_THESE_VALUES: 8 XXX + +BO_ 1555 BETWEEN_RIDES_CHANGE_1: 8 XXX + SG_ BETWEEN_RIDES : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 1090 ASYNC_MSG_ACK: 8 XXX + SG_ NEW_SIGNAL_1 : 13|2@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 1592 NEW_MSG_14: 8 XXX + SG_ DOORS_LOCKED2 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ DOORS_LOCKED1 : 16|1@0+ (1,0) [0|1] "" XXX + +BO_ 608 NEW_MSG_6: 8 XXX + SG_ VERY_SMALL_SIGNAL2 : 56|1@0+ (1,0) [0|255] "" XXX + SG_ VERY_SMALL_SIGNAL1 : 0|1@0+ (1,0) [0|1] "" XXX + +BO_ 945 BETWEEN_RIDES_CHANGES_2: 8 XXX + SG_ BETWEEN_RIDES : 24|1@0+ (1,0) [0|65535] "" XXX + + + + +CM_ SG_ 1552 SPEED_LOWRES "Negative values to check"; +CM_ SG_ 452 CHECKSUM "Follows path of RPMs but more precise & 1 byte only"; +CM_ SG_ 452 A_DECREASING_VALUE "stabilizes to 62 after ~10 mins"; +CM_ SG_ 37 STEER_DIRECTION "Could be intended as 12 bit steering angle"; +CM_ SG_ 37 STEER_ANGLE "can convert to degrees (imprecise) or percentage of max amplitude"; +CM_ SG_ 36 ACC_FRONT_BACK_1 "more likely up-down"; +CM_ SG_ 36 ACC_FRONT_BACK_2 "more likely front-back"; +CM_ SG_ 947 LOW_RES_ACC_PEDAL "Follows rather closely other acceleration commands"; +CM_ SG_ 947 LOW_RES_RPM "Maybe used for onboard display?"; +CM_ SG_ 955 MAYBE_CLUTCH "might be related to shifting gears"; +CM_ SG_ 1595 TIME_ON "Time since last ignition, tenth of seconds"; +CM_ SG_ 1595 BETWEEN_RIDES "the fourth byte (at least) changes between rides"; +CM_ SG_ 180 WIERD_STUFF "Might be a signed value on the whole two bytes (sometimes all set)"; +CM_ SG_ 180 VEHICLE_SPEED "Roughly 2 seconds before wheel speeds"; +CM_ SG_ 180 SPEED_MOD_256 "One byte speed, a bit before vehicle speed"; +CM_ SG_ 180 MAYBE_DISTANCE_MOD_256 "Looks like measure for distance or wheel angle"; +CM_ SG_ 906 MOVEMENT_START_TRIGGER "trigger of when speed becomes != 0"; +CM_ SG_ 979 VERY_LRES_ACC "Power used by engine? moves alongside speed, very low res, goes from 0 to 9 max?"; +CM_ SG_ 1600 CHANGES_EACH_RIDE "Small decrementation during some rides, possibly long term fuel"; +CM_ SG_ 1600 INCREASING_VALUE_FUEL "Fuel/distance? Average fuel consumption?"; +CM_ SG_ 705 NOT_ACCELERATING_PEDAL "Looks like opposite of accelerating bit"; +CM_ SG_ 705 ACC_PEDAL_SENSOR "similar to pedal sensor maybe checksum."; +CM_ SG_ 705 ACC_COMMAND "Similar to other pedal indicator., cleaner, must be sent back to engine"; +CM_ SG_ 705 ACC_PEDAL_MEAN "Actual sensor for pedal (works when engine off)"; +CM_ SG_ 705 NEGATIVE_COMMAND_OFFSET "Mysterious for now"; +CM_ SG_ 928 NEW_SIGNAL_1 "Very slow changing noisy value, 45-49 in 10 min"; +CM_ SG_ 928 NEW_SIGNAL_2 "Other very slow changing 24-26 in 10 min"; +CM_ SG_ 928 NEW_SIGNAL_4 "Inconsistent across rides"; +CM_ SG_ 896 NEW_SIGNAL_1 "there is a difference at the beginning of 2017-10-31--12-04-05"; +CM_ SG_ 1553 TOTAL_DISTANCE "Probably also contains the previous/two previous bytes but can't confirm"; +CM_ SG_ 945 BETWEEN_RIDES "Might be others in the same message. at least this one"; + diff --git a/opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc b/opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc new file mode 100644 index 0000000000..5c7df7d18b --- /dev/null +++ b/opendbc_repo/opendbc/dbc/toyota_prius_2010_pt.dbc @@ -0,0 +1,203 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX DSU HCU EPS IPAS + + +BO_ 36 KINEMATICS: 8 XXX + SG_ ACCEL_Y : 33|10@0+ (1,-512) [0|65535] "" XXX + SG_ STEERING_TORQUE : 17|10@0+ (1,-512) [0|65535] "" XXX + SG_ YAW_RATE : 1|10@0+ (1,-512) [0|65535] "" XXX + +BO_ 166 BRAKE: 8 XXX + SG_ BRAKE_AMOUNT : 7|8@0+ (1,0) [0|255] "" XXX + SG_ BRAKE_PEDAL : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 170 WHEEL_SPEEDS: 8 XXX + SG_ WHEEL_SPEED_FR : 7|16@0+ (0.0062,-67.67) [0|250] "mph" XXX + SG_ WHEEL_SPEED_FL : 23|16@0+ (0.0062,-67.67) [0|250] "mph" XXX + SG_ WHEEL_SPEED_RR : 39|16@0+ (0.0062,-67.67) [0|250] "mph" XXX + SG_ WHEEL_SPEED_RL : 55|16@0+ (0.0062,-67.67) [0|250] "mph" XXX + +BO_ 180 SPEED: 8 XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ SPEED : 47|16@0+ (0.0062,0) [0|115] "mph" XXX + SG_ ENCODER : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 295 GEAR_PACKET: 8 XXX + SG_ CAR_MOVEMENT : 39|8@0- (1,0) [0|255] "" XXX + SG_ COUNTER : 55|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + SG_ GEAR : 47|4@0+ (1,0) [0|15] "" XXX + +BO_ 466 PCM_CRUISE: 8 XXX + SG_ GAS_RELEASED : 4|1@0+ (1,0) [0|1] "" XXX + SG_ ACCEL_NET : 23|16@0- (0.001,0) [-20|20] "m/s2" XXX + SG_ CRUISE_STATE : 55|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 550 BRAKE_MODULE: 8 XXX + SG_ BRAKE_PRESSURE : 0|9@0+ (1,0) [0|511] "" XXX + SG_ BRAKE_POSITION : 16|9@0+ (1,0) [0|511] "" XXX + SG_ BRAKE_PRESSED : 37|1@0+ (1,0) [0|1] "" XXX + +BO_ 552 ACCELEROMETER: 8 XXX + SG_ ACCEL_Z : 22|15@0- (1,0) [0|32767] "" XXX + SG_ ACCEL_X : 6|15@0- (0.001,0) [-20|20] "m/s2" XXX + +BO_ 560 BRAKE_MODULE2: 8 XXX + SG_ BRAKE_LIGHTS : 26|1@0+ (1,0) [0|1] "" XXX + +BO_ 581 GAS_PEDAL: 8 XXX + SG_ GAS_PEDAL : 23|8@0+ (0.005,0) [0|1] "" XXX + +BO_ 608 STEER_TORQUE_SENSOR: 8 XXX + SG_ STEER_TORQUE_EPS : 47|16@0- (0.66,0) [-20000|20000] "" XXX + SG_ STEER_TORQUE_DRIVER : 15|16@0- (1,0) [-32768|32767] "" XXX + SG_ STEER_OVERRIDE : 0|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 610 EPS_STATUS: 5 EPS + SG_ STATE : 3|4@0+ (1,0) [0|15] "" XXX + SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 614 STEERING_IPAS: 8 IPAS + SG_ STATE : 7|4@0+ (1,0) [0|15] "" XXX + SG_ ANGLE : 3|12@0- (1,0) [0|16777215] "" XXX + SG_ SET_ME_X10 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ SET_ME_X00_1 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ DIRECTION_CMD : 38|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 643 PRE_COLLISION: 8 XXX + +BO_ 740 STEERING_LKA: 8 XXX + SG_ LKA_STATE : 31|8@0+ (1,0) [0|255] "" XXX + SG_ CHECKSUM : 39|8@0+ (1,0) [0|255] "" XXX + SG_ STEER_REQUEST : 0|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 6|6@0+ (1,0) [0|63] "" XXX + SG_ SET_ME_1 : 7|1@0+ (1,0) [0|1] "" XXX + SG_ STEER_TORQUE_CMD : 15|16@0- (1,0) [0|65535] "" XXX + +BO_ 742 LEAD_INFO: 8 DSU + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" HCU + SG_ LEAD_REL_SPEED : 23|12@0- (0.025,0) [-100|100] "m/s" HCU + SG_ LEAD_LONG_DIST : 7|13@0+ (0.05,0) [0|300] "m" HCU + +BO_ 835 ACC_CONTROL: 8 DSU + SG_ ACCEL_CMD : 7|16@0- (0.001,0) [-20|20] "m/s2" HCU + +BO_ 1556 STEERING_LEVERS: 8 XXX + SG_ TURN_SIGNALS : 29|2@0+ (1,0) [0|3] "" XXX + +BO_ 37 STEER_ANGLE_SENSOR: 8 XXX + SG_ STEER_ANGLE : 3|12@0- (1.5,0) [-500|500] "deg" XXX + SG_ STEER_FRACTION : 39|4@0- (0.1,0) [-0.7|0.7] "deg" XXX + SG_ STEER_RATE : 35|12@0- (1,0) [-2000|2000] "deg/s" XXX + +BO_ 467 PCM_CRUISE_2: 8 XXX + SG_ MAIN_ON : 15|1@0+ (1,0) [0|1] "" XXX + SG_ LOW_SPEED_LOCKOUT : 14|2@0+ (1,0) [0|3] "kph" XXX + SG_ SET_SPEED : 23|8@0+ (1,0) [0|255] "kph" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 921 PCM_CRUISE_SM: 8 XXX + SG_ MAIN_ON : 4|1@0+ (1,0) [0|1] "" XXX + SG_ CRUISE_CONTROL_STATE : 11|4@0+ (1,0) [0|15] "" XXX + SG_ UI_SET_SPEED : 31|8@0+ (1,0) [0|255] "" XXX + +BO_ 951 ESP_CONTROL: 8 ESP + SG_ TC_DISABLED : 13|1@0+ (1,0) [0|1] "" XXX + +BO_ 1042 LKAS_HUD: 8 XXX + SG_ BARRIERS : 1|2@0+ (1,0) [0|3] "" XXX + SG_ RIGHT_LINE : 3|2@0+ (1,0) [0|3] "" XXX + SG_ LEFT_LINE : 5|2@0+ (1,0) [0|3] "" XXX + SG_ SET_ME_1 : 7|2@0+ (1,0) [0|3] "" XXX + SG_ LDA_ALERT : 9|2@0+ (1,0) [0|3] "" XXX + SG_ TWO_BEEPS : 12|1@0+ (1,0) [0|1] "" XXX + SG_ ADJUSTING_CAMERA : 13|1@0+ (1,0) [0|1] "" XXX + SG_ LDA_MALFUNCTION : 15|1@0+ (1,0) [0|1] "" XXX + +BO_ 1553 UI_SEETING: 8 XXX + SG_ UNITS : 26|2@0+ (1,0) [0|3] "" XXX + +BO_ 1568 SEATS_DOORS: 8 XXX + SG_ SEATBELT_DRIVER_UNLATCHED : 62|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FL : 45|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RL : 42|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_RR : 43|1@0+ (1,0) [0|1] "" XXX + SG_ DOOR_OPEN_FR : 44|1@0+ (1,0) [0|1] "" XXX + +BO_ 452 POWERTRAIN: 8 XXX + SG_ ENGINE_RPM : 7|16@0+ (1,0) [0|65535] "rpm" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + + + + +CM_ SG_ 36 ACCEL_Y "unit is tbd"; +CM_ SG_ 36 STEERING_TORQUE "does not seem the steer torque, tbd"; +CM_ SG_ 36 YAW_RATE "verify"; +CM_ SG_ 466 ACCEL_NET "net acceleration produced by the system, given ACCEL_CMD, road grade and other factors"; +CM_ SG_ 466 CRUISE_STATE "Active state is 8, if standstill is requested will switch to state 11(3 sec timer), after timer is elapsed will switch into state 7(standstill). If plus button was pressed - status 9, minus button pressed - status 10"; +CM_ SG_ 550 BRAKE_PRESSURE "seems prop to pedal force"; +CM_ SG_ 550 BRAKE_POSITION "seems proportional to pedal displacement, unclear the max value of 0x1c8"; +CM_ SG_ 560 BRAKE_LIGHTS "double check"; +CM_ SG_ 581 GAS_PEDAL "it seems slightly filtered"; +CM_ SG_ 608 STEER_TORQUE_DRIVER "driver torque"; +CM_ SG_ 608 STEER_OVERRIDE "set when driver torque exceeds a certain value"; +CM_ SG_ 614 ANGLE "set to measured angle when ipas control isn't active"; +CM_ SG_ 37 STEER_FRACTION "1/15th of the signal STEER_ANGLE, which is 1.5 deg; note that 0x8 is never set"; +CM_ SG_ 37 STEER_RATE "factor is tbd"; +CM_ SG_ 467 LOW_SPEED_LOCKOUT "in low speed lockout, system would always disengage below 28mph"; +CM_ SG_ 467 SET_SPEED "43 kph are shown as 28mph, so conversion isn't perfect"; +CM_ SG_ 921 UI_SET_SPEED "set speed shown in UI with user set unit"; +CM_ SG_ 1042 SET_ME_1 "unclear what this is, nut it's always 1 in drive traces"; +VAL_ 295 GEAR 0 "P" 1 "R" 2 "N" 3 "D" 4 "B" ; +VAL_ 466 CRUISE_STATE 11 "timer_3sec" 10 "setspeeddown" 9 "setspeedup" 8 "active" 7 "standstill" 1 "off" 0 "off"; +VAL_ 610 STATE 5 "override" 3 "enabled" 1 "disabled" ; +VAL_ 610 LKA_STATE 50 "temporary_fault" ; +VAL_ 614 STATE 3 "enabled" 1 "disabled" ; +VAL_ 614 DIRECTION_CMD 3 "right" 2 "center" 1 "left" ; +VAL_ 1556 TURN_SIGNALS 3 "none" 2 "right" 1 "left" ; +VAL_ 467 LOW_SPEED_LOCKOUT 2 "low speed locked" 1 "ok" ; +VAL_ 921 CRUISE_CONTROL_STATE 2 "disabled" 11 "hold" 10 "hold_waiting_user_cmd" 6 "enabled" 5 "faulted" ; +VAL_ 1042 BARRIERS 3 "both" 2 "right" 1 "left" 0 "none" ; +VAL_ 1042 RIGHT_LINE 3 "orange" 2 "double" 1 "solid" 0 "none" ; +VAL_ 1042 LEFT_LINE 3 "orange" 2 "double" 1 "solid" 0 "none" ; +VAL_ 1042 LDA_ALERT 3 "hold with continuous beep" 2 "LDA unavailable" 1 "hold" 0 "none" ; +VAL_ 1553 UNITS 1 "km" 2 "miles" ; diff --git a/opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc b/opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc new file mode 100644 index 0000000000..168e589136 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/toyota_radar_dsu_tssp.dbc @@ -0,0 +1,194 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX RADAR + +BO_ 768 BUTTONS: 8 RADAR + SG_ LKAS_PRESS : 2|1@0+ (1,0) [0|1] "" XXX + SG_ DISTANCE_PRESS : 5|1@0+ (1,0) [0|1] "" XXX + +BO_ 769 OBJECT_0: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 771 OBJECT_1: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 773 OBJECT_2: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 775 OBJECT_3: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 777 OBJECT_4: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 779 OBJECT_5: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 781 OBJECT_6: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 783 OBJECT_7: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 785 OBJECT_8: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 787 OBJECT_9: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 789 OBJECT_10: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 791 OBJECT_11: 8 RADAR + SG_ ID : 5|6@0+ (1,0) [0|255] "" XXX + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|65535] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.018,0) [0|15] "" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "Front target" +BO_ 1664 CLUSTER_F: 8 RADAR + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "Front target ahead" +BO_ 1665 CLUSTER_F_A: 8 RADAR + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "Left target" +BO_ 1666 CLUSTER_L: 8 RADAR + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "Right target" +BO_ 1667 CLUSTER_R: 8 RADAR + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "Left target ahead" +BO_ 1668 CLUSTER_L_A: 8 RADAR + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ "Right target ahead" +BO_ 1669 CLUSTER_R_A: 8 RADAR + SG_ LONG_DIST : 7|13@1+ (0.03,0) [0|255] "m" XXX + SG_ LAT_DIST : 20|11@1- (0.015,0) [-20|20] "m" XXX + SG_ SPEED : 31|10@1- (0.06944444444,0) [0|71] "m/s" XXX + SG_ VALID : 6|1@0+ (1,0) [0|1] "" XXX + SG_ ID : 0|6@1+ (1,0) [0|63] "" XXX + SG_ LAT_SPEED : 48|7@1- (0.1,0) [0|127] "m/s" XXX + SG_ RCS : 63|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc b/opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc new file mode 100644 index 0000000000..d472debd61 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/toyota_tss2_adas.dbc @@ -0,0 +1,285 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX + + +BO_ 384 TRACK_A_0: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 385 TRACK_A_1: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 386 TRACK_A_2: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 387 TRACK_A_3: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 388 TRACK_A_4: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 389 TRACK_A_5: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 390 TRACK_A_6: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 391 TRACK_A_7: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 392 TRACK_A_8: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 393 TRACK_A_9: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 394 TRACK_A_10: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 395 TRACK_A_11: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 396 TRACK_A_12: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 397 TRACK_A_13: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 398 TRACK_A_14: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 399 TRACK_A_15: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ LAT_DIST : 31|11@0- (0.04,0) [-50|50] "m" XXX + SG_ LONG_DIST : 15|13@0+ (0.04,0) [0|300] "m" XXX + SG_ NEW_TRACK : 36|1@0+ (1,0) [0|1] "" XXX + SG_ REL_SPEED : 47|12@0- (0.025,0) [-100|100] "m/s" XXX + SG_ VALID : 48|1@0+ (1,0) [0|1] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 400 TRACK_B_0: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 401 TRACK_B_1: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 402 TRACK_B_2: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 403 TRACK_B_3: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 404 TRACK_B_4: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 405 TRACK_B_5: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 406 TRACK_B_6: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 407 TRACK_B_7: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 408 TRACK_B_8: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 409 TRACK_B_9: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 410 TRACK_B_10: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 411 TRACK_B_11: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 412 TRACK_B_12: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 413 TRACK_B_13: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 414 TRACK_B_14: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 415 TRACK_B_15: 8 XXX + SG_ COUNTER : 7|8@0+ (1,0) [0|255] "" XXX + SG_ REL_ACCEL : 15|7@0- (1,0) [-64|63] "" XXX + SG_ SCORE : 23|8@0+ (1,0) [0|100] "" XXX + SG_ CHECKSUM : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 576 NEW_MSG_1: 8 XXX + SG_ NEW_SIGNAL_1 : 15|7@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 577 NEW_MSG_2: 8 XXX + SG_ NEW_SIGNAL_1 : 15|7@0+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_2 : 23|8@0+ (1,0) [0|255] "" XXX diff --git a/opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc b/opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc new file mode 100644 index 0000000000..3c04331649 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/volvo_v40_2017_pt.dbc @@ -0,0 +1,363 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX BCM CEM CVM DIM ECM FSM PSCM SAS SRS TCM + +BO_ 8 SAS0: 8 SAS + SG_ SteeringDirection : 42|1@0+ (1,0) [0|1] "" XXX + SG_ RelativeTurnDirection : 43|1@0+ (1,0) [0|1] "" XXX + SG_ SteeringAngle : 53|14@0+ (0.04395,0) [0|65535] "degrees" XXX + SG_ NEW_SIGNAL_1 : 47|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ AngleRate : 21|14@0+ (0.075,0) [0|1500] "deg/S" XXX + +BO_ 16 CCButtons: 8 CEM + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|5@0+ (1,0) [0|31] "" XXX + SG_ B7b0 : 56|1@0+ (1,0) [0|1] "" XXX + SG_ B7b1 : 57|1@0+ (1,0) [0|1] "" XXX + SG_ B7b6 : 62|1@0+ (1,0) [0|1] "" XXX + SG_ ACCOnOffBtn : 58|1@0+ (1,0) [0|1] "" XXX + SG_ ACCSetBtn : 63|1@0+ (1,0) [0|1] "" XXX + SG_ ACCStopBtn : 60|1@0+ (1,0) [0|1] "" XXX + SG_ ACCResumeBtn : 61|1@0+ (1,0) [0|1] "" XXX + SG_ ACCMinusBtn : 48|1@0+ (1,0) [0|1] "" XXX + SG_ TimeGapIncreaseBtn : 49|1@0+ (1,0) [0|1] "" XXX + SG_ TimeGapDecreaseBtn : 50|1@0+ (1,0) [0|1] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ B7b3 : 59|1@0+ (1,0) [0|1] "" XXX + +BO_ 48 FSM0: 8 FSM + SG_ ACCStatusTracking : 56|1@0+ (1,0) [0|1] "" XXX + SG_ ACCStatusOnOff : 57|1@0+ (1,0) [0|1] "" XXX + SG_ ACCStatusActive : 58|1@0+ (1,0) [0|1] "" XXX + SG_ FCWSomething : 25|3@0+ (1,0) [0|3] "" XXX + SG_ StatusSomething : 55|8@0+ (1,0) [0|255] "" XXX + +BO_ 64 TCM0: 8 TCM + SG_ RPMSomething : 42|11@0+ (1,0) [0|2047] "" XXX + SG_ GearShifter : 46|2@0+ (1,0) [0|3] "" XXX + +BO_ 85 PedalandBrake: 8 ECM + SG_ AccPedal : 9|10@0+ (0.1,0) [0|1023] "%" XXX + SG_ BrakePedalActive2 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 35|12@0+ (1,0) [0|4095] "" XXX + SG_ BrakePedalActive : 38|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 101 EngineInfo: 8 XXX + SG_ NEW_SIGNAL_1 : 17|10@0+ (1,-512) [0|1023] "" XXX + SG_ EngineSpeed : 52|13@0+ (1,0) [0|1023] "" XXX + +BO_ 112 NEW_MSG_4: 8 XXX + SG_ NEW_SIGNAL_1 : 39|8@0+ (1,0) [0|255] "" XXX + +BO_ 114 ECM1: 8 ECM1 + SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ ECM_ACC_ONOFF_INV : 43|1@0+ (1,0) [0|1] "" XXX + SG_ ECM_ACC_RESUME_INV : 45|1@0+ (1,0) [0|1] "" XXX + SG_ ECM_ACC_SET_INV : 47|1@0+ (1,0) [0|1] "" XXX + SG_ ECM_ACC_TIMEGAP_INC_INV : 33|1@0+ (1,0) [0|1] "" XXX + SG_ ECM_ACC_DEC_INV : 32|1@0+ (1,0) [0|1] "" XXX + SG_ ECM_ACC_TIMEGAP_DEC_INV : 34|1@0+ (1,0) [0|1] "" XXX + +BO_ 117 ECM1_2: 8 ECM + +BO_ 128 NEW_MSG_5: 8 XXX + SG_ NEW_SIGNAL_2 : 26|11@0+ (1,0) [0|2047] "" XXX + SG_ NEW_SIGNAL_1 : 52|13@0+ (1,0) [0|8191] "" XXX + +BO_ 176 ECM2: 8 ECM + SG_ NEW_SIGNAL_1 : 50|11@0+ (1,0) [0|2047] "" XXX + SG_ NEW_SIGNAL_2 : 47|8@0+ (1,0) [0|63] "" XXX + +BO_ 192 Gear: 8 XXX + SG_ TransmissionGear : 36|3@0+ (1,1) [0|7] "" XXX + +BO_ 208 FSM1: 8 FSM + SG_ SET_X_E3 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ SET_X_B4 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ SET_X_08 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ TrqLim : 31|8@0+ (1,-128) [0|255] "" XXX + SG_ Checksum : 55|8@0+ (1,0) [0|255] "" XXX + SG_ LKASteerDirection : 57|2@0+ (1,0) [0|2] "" XXX + SG_ SET_X_25 : 63|6@0+ (1,0) [0|63] "" XXX + SG_ LKAAngleReq : 37|14@0+ (0.04395,-360.0384) [-360.0384|359.99445] "degrees" XXX + SG_ SET_X_02 : 39|2@0+ (1,0) [0|3] "" XXX + +BO_ 224 PSCM0: 8 PSCM + SG_ NEW_SIGNAL_2 : 12|5@0+ (1,0) [0|31] "" XXX + SG_ counter_07 : 15|3@0+ (1,0) [0|7] "" XXX + SG_ counter2_07 : 37|3@0+ (1,0) [0|16383] "" XXX + SG_ rate_of_something : 46|7@0+ (1,0) [0|62] "" XXX + SG_ OneDuringDriving : 49|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 245 wheelspeed0: 8 BCM + SG_ counter1 : 21|6@0+ (1,0) [0|65535] "" XXX + SG_ counter0 : 7|16@0+ (1,0) [0|65535] "" XXX + SG_ WhlSpdLF : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ WhlSpdRF : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 272 SpeedSignal0: 8 XXX + SG_ VehicleSpeedSignal : 55|16@0+ (0.01,0) [0|65535] "" XXX + +BO_ 288 wheel_speed1: 8 BCM + SG_ WhlSpdLR : 39|16@0+ (1,0) [0|65535] "" XXX + SG_ WhlSpdRR : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 293 PSCM1: 8 PSCM + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + SG_ LKATorque : 11|12@0+ (1,-2000) [0|4095] "" XXX + SG_ SteeringAngleServo : 47|16@0+ (0.04395,-1440.1536) [0|65535] "deg" XXX + SG_ LKAActive : 15|4@0+ (1,0) [0|15] "" XXX + +BO_ 304 VehicleSpeed0: 8 BCM + SG_ NEW_SIGNAL_2 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ VehicleSpeed : 31|16@0+ (0.01,0) [0|65535] "km/h" XXX + SG_ NEW_SIGNAL_1 : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 325 ECM3: 8 ECM + +BO_ 336 VehicleSpeed1: 8 BCM + SG_ NEW_SIGNAL_2 : 31|16@0+ (1,0) [0|65535] "" XXX + SG_ NEW_SIGNAL_1 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ VehicleSpeed : 55|16@0+ (0.01,0) [0|65535] "" XXX + +BO_ 352 FSM2: 8 FSM + SG_ LkaDimLine : 51|2@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_2 : 56|7@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 55|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 7|24@0+ (1,0) [0|16777215] "" XXX + SG_ NEW_SIGNAL_4 : 36|5@0+ (1,0) [0|31] "" XXX + +BO_ 432 BrakeMessages: 8 BCM + SG_ BrakePress0 : 1|10@0+ (1,0) [0|1023] "" XXX + SG_ BrakePress1 : 33|10@0+ (1,0) [0|1023] "" XXX + SG_ BrakeStatus : 18|3@0+ (1,0) [0|7] "" XXX + +BO_ 464 DIM0: 8 DIM + +BO_ 480 BCM0: 8 BCM + +BO_ 528 CEM0: 8 CEM + +BO_ 608 CVM0: 8 CVM + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 15|5@0+ (1,0) [0|32] "" XXX + SG_ Distance : 10|11@0+ (1,0) [0|2048] "" XXX + +BO_ 624 FSM3: 8 FSM + SG_ NEW_SIGNAL_1 : 23|8@0+ (1,0) [0|255] "" XXX + +BO_ 640 FSM4: 8 FSM + SG_ SpeedTarget : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_1 : 49|10@0+ (1,0) [0|255] "" XXX + +BO_ 648 SRS0: 8 SRS + +BO_ 652 ECM4: 8 ECM + +BO_ 656 ECM5: 8 ECM + +BO_ 657 ECM6: 8 ECM + +BO_ 681 MiscCarInfo: 8 CEM + SG_ TurnSignal : 1|2@0+ (1,0) [0|3] "" XXX + SG_ HighBeamOn : 52|1@0+ (1,0) [0|1] "" XX + +BO_ 693 ECM7: 8 ECM + +BO_ 709 ACC: 8 ECM + SG_ SpeedTargetACC : 0|9@0+ (0.5,0) [0|511] "" XXX + +BO_ 853 FSM5: 8 FSM + SG_ TargetSpeedOdo : 23|8@0+ (1,0) [0|63] "kph" XXX + SG_ SpeedSign : 36|5@0+ (5,0) [0|32] "" XXX + SG_ TextUnderSign : 37|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 39|3@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ LaneMarkingsOdo : 15|4@0+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_2 : 11|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_4 : 55|16@0+ (1,0) [0|65535] "" XXX + +BO_ 864 CEM1: 8 CEM + +BO_ 912 DIM1: 8 DIM + +BO_ 968 SRS1: 8 SRS + SG_ PassengerSeatBelt : 22|1@0+ (1,0) [0|1] "" XXX + SG_ DriverSeatBelt : 19|1@0+ (1,0) [0|1] "" XXX + +BO_ 1029 CEMBCM0: 8 CEM + +BO_ 1344 NEW_MSG_1: 8 XXX + SG_ NEW_SIGNAL_1 : 4|13@0+ (1,0) [0|8191] "" XXX + +BO_ 1830 diagCEMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1838 diagCEMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1840 diagPSCMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1848 diagPSCMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1892 diagFSMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1900 diagFSMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1939 diagCVMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1947 diagCVMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2015 diagGlobalReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + + + + +CM_ SG_ 85 BrakePedalActive2 "Active during braking"; +CM_ SG_ 85 NEW_SIGNAL_1 "Not yet figured out."; +CM_ SG_ 85 BrakePedalActive "Brake pedal pushed"; +CM_ SG_ 8 SteeringDirection "1=Right turn, 0=Left turn. Steering wheel pointing left or right from center (0 deg)."; +CM_ SG_ 8 RelativeTurnDirection "1=Right turn, 0=Left turn. Steering wheel currently turning the way."; +CM_ SG_ 101 NEW_SIGNAL_1 "Rate of something?"; +CM_ SG_ 192 TransmissionGear "0 = 1st gear, 1= 2nd gear..."; +CM_ SG_ 681 TurnSignal "0 = Nothing, 1= Left, 3=Right"; +CM_ SG_ 681 HighBeamOn "1=HighBeam On, 0=HighBeam Off"; +CM_ SG_ 48 ACCStatusTracking "ACC Tracking vehicle, distance control."; +CM_ SG_ 48 ACCStatusOnOff "Turns one after pressing on/off button on steering wheeel"; +CM_ SG_ 48 ACCStatusActive "ACC Active"; +CM_ SG_ 48 FCWSomething "All bit set during fcw"; +CM_ SG_ 48 StatusSomething "Some status changes when zeroing DTCs"; +CM_ SG_ 208 TrqLim "Used in checksum calculation, Limit directional torque based on the number."; +CM_ SG_ 208 Checksum "Checksum calculated as a one-complement addition of LKAAngleRequest+LKADirection+Unkown, Zeros used to pad missing bits."; +CM_ SG_ 208 SET_X_02 "Bit 0 = Vibrate steering wheel., Bit 1 = Heartbeat"; +CM_ SG_ 352 LkaDimLine "Not true, but follows lka steer direction."; +CM_ SG_ 352 NEW_SIGNAL_1 "Turned one. Got LKA service needed can this be the one?"; +CM_ SG_ 640 SpeedTarget "SpeedTarget ACC (noisy bf starting acc Jumps from 0->252->0)"; +CM_ SG_ 853 TargetSpeedOdo "Probably target speed odo"; +CM_ SG_ 853 LaneMarkingsOdo "Bit 3=Left lane, Bit 2=Right lane, Bit 1=LKA on?, Bit 0=?"; +CM_ SG_ 709 SpeedTargetACC "SpeedTargetACC"; +CM_ SG_ 224 rate_of_something "Seems to be some kind of torque rather than rate."; +CM_ SG_ 224 OneDuringDriving "Set to 1 when vehicle is rolling."; +CM_ SG_ 293 byte7 "Bit0=0 when gearshift in park, else 1"; +CM_ SG_ 293 LKAActive "Bit0=0 when gear in park otherwise =1, Bit1=1 when LKA Active, 0 when not active. Bit2=? Bit3=?"; +CM_ SG_ 16 ACCOnOffBtn "Cruise control on/off button pressed"; +CM_ SG_ 16 ACCSetBtn "Acc Set button (+) pressed"; +CM_ SG_ 16 ACCStopBtn "ACC Stop button pressed"; +CM_ SG_ 16 ACCResumeBtn "ACC Resume button pressed"; +CM_ SG_ 16 ACCMinusBtn "ACC Minus (-) button pressed"; +CM_ SG_ 16 TimeGapIncreaseBtn "Increase the time gap on ACC"; +CM_ SG_ 16 TimeGapDecreaseBtn "Decrease the time gap on ACC"; +CM_ SG_ 245 counter0 "Speed based counter"; +CM_ SG_ 245 WhlSpdLF "Wheel speed left front"; +CM_ SG_ 245 WhlSpdRF "Wheel speed right front"; +CM_ SG_ 288 WhlSpdLR "Wheel speed left rear"; +CM_ SG_ 288 WhlSpdRR "Wheel speed right rear"; +CM_ SG_ 64 RPMSomething "TransmissionOutput?"; +CM_ SG_ 64 GearShifter "P=0, R=1, N=2, D=3"; +CM_ SG_ 272 VehicleSpeedSignal "km/h"; +CM_ SG_ 432 BrakePress0 "Brake being pressed"; +CM_ SG_ 432 BrakePress1 "Brake being pressed"; +CM_ SG_ 432 BrakeStatus "ACC brake?"; +CM_ SG_ 437 Counter0 "Related to braking? Maybe one per wheel?"; +CM_ SG_ 437 Counter1 "Related to braking? Maybe one per wheel?"; +CM_ SG_ 437 Counter2 "Related to braking? Maybe one per wheel?"; +CM_ SG_ 437 Counter3 "Related to braking? Maybe one per wheel?"; +CM_ SG_ 114 NEW_SIGNAL_1 "Jumped from 0 -> 120 during start. Makes triangle from time to time"; +CM_ SG_ 608 NEW_SIGNAL_1 "Status?"; +CM_ SG_ 608 NEW_SIGNAL_2 "Classification of object?"; +CM_ SG_ 608 Distance "Distance to object in front."; +CM_ SG_ 968 PassengerSeatBelt "1 = Seatbalt latched"; +CM_ SG_ 968 DriverSeatBelt "1=Seatbelt latched"; +VAL_ 64 GearShifter 0 "P" 1 "R" 2 "N" 3 "D" ; diff --git a/opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc b/opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc new file mode 100644 index 0000000000..59e9b9ad93 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/volvo_v60_2015_pt.dbc @@ -0,0 +1,298 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: XXX BCM CEM FSM PSCM SAS + +BO_ 16 SAS0: 8 SAS + SG_ Counter0 : 3|8@0+ (1,0) [0|511] "" XXX + SG_ SteeringDirection : 6|1@0+ (1,0) [0|1] "" XXX + SG_ SteeringRateOfChange2 : 22|15@0+ (1,0) [0|32767] "" XXX + SG_ SteeringPressureOnIt : 23|1@0+ (1,0) [0|1] "" XXX + SG_ SteeringRateOfChange : 39|16@0+ (1,-32768) [0|65535] "" XXX + SG_ SteeringAngle : 53|14@0+ (0.0445,0) [0|65535] "degrees" XXX + +BO_ 32 AccPedal: 8 XXX + SG_ AccPedal : 17|10@0+ (0.1,0) [0|100.0] "%" XXX + +BO_ 81 FSM0: 8 FSM + SG_ ACCStatus : 18|3@0+ (1,0) [0|7] "" XXX + +BO_ 277 NEW_MSG_7: 8 XXX + SG_ NEW_SIGNAL_1 : 39|16@0+ (1,0) [0|65535] "" XXX + +BO_ 295 CCButtons: 8 CEM + SG_ ACCMinusBtnInv : 32|1@0+ (1,0) [0|1] "" XXX + SG_ TimeGapIncreaseBtnInv : 33|1@0+ (1,0) [0|1] "" XXX + SG_ TimeGapDecreaseBtnInv : 34|1@0+ (1,0) [0|1] "" XXX + SG_ ACCOnOffBtnInv : 43|1@0+ (1,0) [0|1] "" XXX + SG_ ACCResumeBtnInv : 45|1@0+ (1,0) [0|1] "" XXX + SG_ ACCSetBtnInv : 47|1@0+ (1,0) [0|1] "" XXX + SG_ ACCMinusBtn : 48|1@0+ (1,0) [0|1] "" XXX + SG_ TimeGapIncreaseBtn : 49|1@0+ (1,0) [0|1] "" XXX + SG_ TimeGapDecreaseBtn : 50|1@0+ (1,0) [0|1] "" XXX + SG_ ACCOnOffBtn : 59|1@0+ (1,0) [0|1] "" XXX + SG_ ACCResumeBtn : 61|1@0+ (1,0) [0|1] "" XXX + SG_ ACCSetBtn : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 298 EngineData: 8 XXX + SG_ NEW_SIGNAL_1 : 1|10@0+ (1,0) [0|1023] "" XXX + SG_ BrakePressed2 : 2|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 25|2@0+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 33|10@0- (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_3 : 34|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 35|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 36|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 37|1@0+ (1,0) [0|1] "" XXX + SG_ BrakePressed : 38|1@0+ (1,0) [0|1] "" XXX + SG_ EngineRpm : 52|13@0+ (1,0) [0|8000] "" XXX + +BO_ 307 NEW_MSG_133: 8 XXX + SG_ Brake : 14|7@0+ (1,0) [0|127] "" XXX + +BO_ 328 VehicleSpeed1: 8 XXX + SG_ BrakePressure2 : 33|10@0+ (1,0) [0|63] "" XXX + SG_ COUNTER : 37|4@0+ (1,0) [0|15] "" XXX + SG_ VehicleSpeed : 55|16@0+ (0.01,0) [0|65535] "" XXX + +BO_ 336 NEW_MSG_8: 8 XXX + SG_ NEW_SIGNAL_1 : 3|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_2 : 19|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_3 : 35|12@0+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_4 : 51|12@0+ (1,0) [0|4095] "" XXX + +BO_ 359 ACC_Speed: 8 XXX + SG_ ACC_Speed : 0|8@0+ (1,0) [0|255] "km/h" XXX + SG_ GasPedal : 51|12@0- (1,0) [0|255] "" XXX + SG_ GasPressed : 52|1@0+ (1,0) [0|1] "" XXX + +BO_ 384 Accessories_02: 8 XXX + SG_ Park_Assist_State : 42|1@0+ (1,0) [0|1] "" XXX + SG_ StartStop_Inv : 44|1@0+ (1,0) [0|1] "" XXX + +BO_ 465 NEW_MSG_4: 8 XXX + SG_ BrakePressedInv : 3|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 55|16@0+ (1,0) [0|4095] "" XXX + +BO_ 522 Brake_Info: 8 XXX + SG_ NEW_SIGNAL_2 : 1|1@0+ (1,0) [0|1] "" XXX + SG_ COUNTER : 11|4@0+ (1,0) [0|15] "" XXX + SG_ BrakeCmd : 13|1@0+ (1,0) [0|1] "" XXX + SG_ BrakePressure : 17|10@0+ (1,0) [0|255] "" XXX + SG_ BrakePedal : 19|2@0+ (1,0) [0|3] "" XXX + SG_ BrakePedal2 : 33|2@0+ (1,0) [0|3] "" XXX + SG_ CHECKSUM : 39|4@0+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 544 wheelspeed1: 8 BCM + SG_ WhlSpdRR : 39|16@0+ (0.01,-327.68) [0|65535] "" XXX + SG_ WhlSpdLR : 55|16@0+ (0.01,-327.68) [0|65535] "" XXX + +BO_ 565 wheelspeed0: 8 BCM + SG_ WhlSpdRF : 39|16@0+ (0.01,-327.68) [0|65535] "" XXX + SG_ WhlSpdLF : 55|16@0+ (0.01,-327.68) [0|65535] "" XXX + +BO_ 582 PSCM1: 8 PSCM + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ SteeringWheelRateOfChange : 15|8@0+ (1,0) [0|255] "" XXX + SG_ SteeringAngleServo : 23|16@0+ (0.0447,-1464.8) [0|65535] "deg" XXX + SG_ LKATorque : 35|12@0+ (1,-2000) [0|65535] "" XXX + SG_ byte4 : 39|4@0+ (1,0) [0|15] "" XXX + SG_ LKAActive : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 608 FSM1: 8 FSM + SG_ ACC_Distance : 7|8@0+ (1,0) [0|255] "" XXX + +BO_ 609 fromWhere: 8 XXX + SG_ COUNTER : 3|4@0+ (1,0) [0|15] "" XXX + SG_ CHECKSUM : 15|4@0+ (1,0) [0|15] "" XXX + SG_ SteeringAngle : 21|14@0+ (0.1,-1021) [0|65535] "deg" XXX + +BO_ 610 FSM2: 8 FSM + SG_ SET_X_22 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ TrqLim : 23|8@0+ (1,-128) [0|255] "" PSCM + SG_ LKAAngleReq : 29|14@0+ (0.04,-327.68) [0|16383] "" PSCM + SG_ SET_X_02 : 31|2@0+ (1,0) [0|3] "" XXX + SG_ LKASteerDirection : 41|2@0+ (1,0) [0|3] "" PSCM + SG_ SET_X_10 : 47|6@0+ (1,0) [0|63] "" XXX + SG_ Checksum : 55|8@0+ (1,0) [0|255] "" PSCM + SG_ SET_X_A4 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 612 Accessories_03: 8 XXX + SG_ Park_Assist_Button : 60|1@0+ (1,0) [0|1] "" XXX + +BO_ 624 FSM3: 8 FSM + SG_ ACC_Standstill : 0|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Check : 2|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_AccelDecel : 15|8@0+ (1,0) [0|255] "" XXX + SG_ ACC_Some : 17|10@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 47|8@0+ (1,0) [0|255] "" XXX + +BO_ 648 BrakePedal: 8 XXX + SG_ Counter : 0|3@1+ (1,0) [0|6] "" XXX + SG_ BrakePressure : 17|10@0+ (1,0) [0|1023] "" XXX + +BO_ 750 HandBrake: 8 XXX + SG_ Hand_Brake_Button : 33|2@0+ (1,0) [0|3] "" XXX + SG_ Hand_Brake_State : 44|4@0+ (1,0) [0|15] "" XXX + +BO_ 794 FSM4: 8 FSM + SG_ ACC_LeadSpeed : 31|8@0+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_2 : 32|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 47|16@0+ (1,-46090) [0|16383] "" XXX + +BO_ 802 StartStop: 8 XXX + SG_ StartStop : 8|1@0+ (1,0) [0|1] "" XXX + +BO_ 923 Accessories_01: 8 XXX + SG_ NEW_SIGNAL_1 : 15|16@0+ (1,0) [0|65535] "" XXX + SG_ Wipers : 38|2@0+ (1,0) [0|3] "" XXX + +BO_ 1006 Doors: 8 XXX + SG_ DriverDoorClosed : 8|1@0+ (1,0) [0|1] "" XXX + SG_ PassengerDoorClosed : 9|1@0+ (1,0) [0|1] "" XXX + +BO_ 1021 FSM5: 8 FSM + SG_ TSR_Speed : 25|4@1+ (10,0) [0|15] "km/h" XXX + +BO_ 1024 NEW_MSG_400: 8 XXX + SG_ NEW_SIGNAL_1 : 25|8@0+ (1,0) [0|255] "" XXX + +BO_ 1039 MiscCarInfo: 8 XXX + SG_ TurnSignal : 33|2@0+ (1,0) [0|3] "" XXX + +BO_ 1174 Lights: 8 XXX + SG_ High_Beam : 23|1@0+ (1,0) [0|1] "" XXX + +BO_ 1279 PSCM3: 8 PSCM + +BO_ 1830 diagCEMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1838 diagCEMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1840 diagPSCMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1848 diagPSCMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1892 diagFSMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1900 diagFSMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 1939 diagCVMReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +BO_ 1947 diagCVMResp: 8 XXX + SG_ byte03 : 7|32@0+ (1,0) [0|4294967295] "" XXX + SG_ byte47 : 39|32@0+ (1,0) [0|4294967295] "" XXX + +BO_ 2015 diagGlobalReq: 8 XXX + SG_ byte0 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ byte1 : 15|8@0+ (1,0) [0|255] "" XXX + SG_ byte2 : 23|8@0+ (1,0) [0|255] "" XXX + SG_ byte3 : 31|8@0+ (1,0) [0|255] "" XXX + SG_ byte4 : 39|8@0+ (1,0) [0|255] "" XXX + SG_ byte5 : 47|8@0+ (1,0) [0|255] "" XXX + SG_ byte6 : 55|8@0+ (1,0) [0|255] "" XXX + SG_ byte7 : 63|8@0+ (1,0) [0|255] "" XXX + +CM_ SG_ 16 SteeringDirection "0 = CCW, 1=CW (turning left or right of center)"; +CM_ SG_ 16 SteeringRateOfChange "Rate of change? Torque?"; +CM_ SG_ 81 ACCStatus "0=Acc Unavailable, 1=???, 2=Acc Ready, 3,4=???, 6= Acc Active, 7=Acc active tracking object (probably)"; +CM_ SG_ 295 ACCMinusBtnInv "Active zero when button pressed."; +CM_ SG_ 295 TimeGapIncreaseBtnInv "Active zero when button pressed."; +CM_ SG_ 295 TimeGapDecreaseBtnInv "Active zero when button pressed."; +CM_ SG_ 295 ACCOnOffBtnInv "Active zero when button pressed."; +CM_ SG_ 295 ACCResumeBtnInv "Active zero when button pressed."; +CM_ SG_ 295 ACCSetBtnInv "Active zero when button pressed."; +CM_ SG_ 295 ACCMinusBtn "ACC Minus (-) button pressed"; +CM_ SG_ 295 TimeGapIncreaseBtn "Increase the time gap on ACC"; +CM_ SG_ 295 TimeGapDecreaseBtn "Decrease the time gap on ACC"; +CM_ SG_ 295 ACCOnOffBtn "Cruise control on/off button pressed"; +CM_ SG_ 295 ACCResumeBtn "ACC Resume button pressed"; +CM_ SG_ 295 ACCSetBtn "Acc Set button (+) pressed"; +CM_ SG_ 298 NEW_SIGNAL_4 "related to gas pedal"; +CM_ SG_ 298 NEW_SIGNAL_5 "related to ACCStatus"; +CM_ SG_ 298 NEW_SIGNAL_6 "went high at same time as ACCStatus >= 2"; +CM_ SG_ 298 BrakePressed "driver"; +CM_ SG_ 298 EngineRpm "Might be engine rpm. But behaves abit weird."; +CM_ SG_ 582 byte0 "0=CCW, 1=CW, bit 2,"; +CM_ SG_ 582 SteeringWheelRateOfChange "Some rate of change for steering wheel? Torque?"; +CM_ SG_ 582 byte4 "High nibble"; +CM_ SG_ 582 LKAActive "Bit 1, 1 When LKA Active, Bit 3, 1 When denying?"; +CM_ SG_ 608 ACC_Distance "Seems to track distance, or speed of vehicle in front."; +CM_ SG_ 610 SET_X_22 "0x20 Heartbeat, VEgo <58kph = 0x03, VEgo >65kph = 0x04, 0x05"; +CM_ SG_ 624 ACC_AccelDecel "Might be some acc speed, moved abit after activating acc"; +CM_ SG_ 624 ACC_Some "Jumps to life after activating ACC, 0 when not active"; +CM_ SG_ 648 Counter "counts 0 to 6"; +CM_ SG_ 1021 TSR_Speed "Traffic Sign Recognition speed"; +CM_ SG_ 1039 TurnSignal "0 = Nothing, 1= Left, 3=Right"; +VAL_ 522 BrakePedal 1 "Not Pressed" 2 "Pressed"; diff --git a/opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc b/opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc new file mode 100644 index 0000000000..6f14789135 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/vw_golf_mk4.dbc @@ -0,0 +1,1676 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + +BS_: + +BU_: XXX + + +BO_ 1394 ZAS_1: 2 XXX + SG_ Fehlerspeichereintrag__ZAS_ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_ZAS_1_3 : 8|7@1+ (1,0) [0|0] "" XXX + SG_ Frei_ZAS_1_2 : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_15_SV : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_ZAS_1_1 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_P__Parklichtstellung_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_50__Starten_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_X__Startvorgang_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_15__Z_ndung_ein_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ S_Kontakt__Schl_ssel_steckt_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1336 Wischer_1: 2 XXX + SG_ Blockierung_Heckwischer_erkannt : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Wischer_1_2 : 12|3@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag__Wischer_ : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Scheibenwischer_Hec : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Wascher_Heck : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Scheibenwischer_Heck_eingeschal : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Blockierung_Frontwischer_erkann : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Wischer_1_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Waschduesenheizung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Parklage_Frontwischer : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Frontwischer_Schnel : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Frontwischer_Normal : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Wascher_Front : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Frontwischer__eingeschaltet : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1464 WFS_1: 2 XXX + SG_ WFS_Textbits : 8|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_WFS_1_1 : 1|7@1+ (1,0) [0|0] "" XXX + SG_ WFS_LED : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1096 Waehlhebel_1: 4 XXX + SG_ Frei_Waehlhebel_1_1 : 29|3@1+ (1,0) [0|0] "" XXX + SG_ Test_aktiv_Flag : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Waehlhebel_1 : 24|4@1+ (1,0) [0|15] "" XXX + SG_ Waehlhebel_Testergebnis : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Fehler_Waehlhebel : 8|8@1+ (1,0) [0|0] "" XXX + SG_ Waehlhebelposition : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Waehlhebel_Initialisierung : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Shiftlock_Position : 0|3@1+ (1,0) [0|0] "" XXX + +BO_ 1496 Verbauliste_1: 8 XXX + SG_ TV_Tuner : 63|1@1+ (1,0) [0|0] "" XXX + SG_ DSP : 62|1@1+ (1,0) [0|0] "" XXX + SG_ CD_Wechsler : 61|1@1+ (1,0) [0|0] "" XXX + SG_ Spracheingabe : 60|1@1+ (1,0) [0|0] "" XXX + SG_ Telematik : 59|1@1+ (1,0) [0|0] "" XXX + SG_ Navigation : 58|1@1+ (1,0) [0|0] "" XXX + SG_ Telefon : 57|1@1+ (1,0) [0|0] "" XXX + SG_ Radio : 56|1@1+ (1,0) [0|0] "" XXX + SG_ MMI_vorne : 55|1@1+ (1,0) [0|0] "" XXX + SG_ MMI_hinten : 54|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_11 : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Klimabedienteil_HL : 52|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_10 : 50|2@1+ (1,0) [0|0] "" XXX + SG_ Tankgeber : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Assistenzfahrlicht : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Memory_hinter_Fahrer : 47|1@1+ (1,0) [0|0] "" XXX + SG_ Sitzmemory_hinten : 46|1@1+ (1,0) [0|0] "" XXX + SG_ Sitzmemory_Beifahrer : 45|1@1+ (1,0) [0|0] "" XXX + SG_ Anh_ngersteuergeraet : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Energiemanagement : 43|1@1+ (1,0) [0|0] "" XXX + SG_ Wischermodul : 42|1@1+ (1,0) [0|0] "" XXX + SG_ EZS___Kessy__Komfort_ : 41|1@1+ (1,0) [0|0] "" XXX + SG_ Verdecksteuergeraet : 40|1@1+ (1,0) [0|0] "" XXX + SG_ Standheizung : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_9 : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Einparkhilfe : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Klimasteuergeraet_Komfort : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Gateway : 35|1@1+ (1,0) [0|0] "" XXX + SG_ Lenksaeulenmodul : 34|1@1+ (1,0) [0|0] "" XXX + SG_ Reifendruck : 33|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstrument_Komfort : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Dachmodul : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Memory : 30|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_HR : 29|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_HL : 28|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_BT : 27|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_FT : 26|1@1+ (1,0) [0|0] "" XXX + SG_ ZKE : 25|1@1+ (1,0) [0|0] "" XXX + SG_ BSG_Komfort : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_8 : 19|5@1+ (1,0) [0|0] "" XXX + SG_ Stabi_Entkopplung : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Waehlhebel : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Batteriemanager : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Daempfer_SG : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Niveauregulierung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ EZS___Kessy__Antrieb_ : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsbooster : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Antrieb : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Einspritzpumpe : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Allrad : 7|1@1+ (1,0) [0|0] "" XXX + SG_ BSG_Antrieb : 6|1@1+ (1,0) [0|0] "" XXX + SG_ ADR : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Climatronic_Antrieb : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ABS : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Getriebesteuergeraet : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Motorsteuergeraet : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1488 Systeminfo_1: 6 XXX + SG_ CAN_Stand_4_1_Antrieb_Daten_Hau : 44|4@1+ (1,0) [0|15] "" XXX + SG_ CAN_Stand_4_1_Antrieb_Daten_Neb : 40|4@1+ (1,0) [0|15] "" XXX + SG_ CAN_Stand_4_1_Komfort_Daten_Hau : 36|4@1+ (1,0) [0|15] "" XXX + SG_ CAN_Stand_4_1_Komfort_Daten_Neb : 32|4@1+ (1,0) [0|15] "" XXX + SG_ Frei_Systeminfo_1_6 : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Viertuerer : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Rechtslenker : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrzeug_Index : 24|4@1+ (1,0) [0|0] "" XXX + SG_ Fahrzeug_Generation : 20|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrzeug_Derivat : 16|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrzeug_Marke_2 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrzeug_Klasse : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Verbauinformation_gueltig : 7|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Infotainment_verbaut : 6|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Infotainment_in_Diagnose : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Sleep_CAN_Infotainment : 4|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Komfort_in_Diagnose : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Sleep_CAN_Komfort : 2|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Antrieb_in_Diagnose : 1|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Extern_zugeschaltet : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 268 Slave_1: 8 XXX + SG_ Delta_reduziertes_Sollmoment : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Delta_Drosselklappenwinkel : 32|16@1+ (1,0) [0|0] "" XXX + SG_ Frei_Slave_1_1 : 25|7@1+ (1,0) [0|0] "" XXX + SG_ Delta_Zuendwinkelausgabe : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Ubat_Freigabe_DVE__Slave_ : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Drosselklappe_Sollwertbegrenzun : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Einspritzverbot_lernen__Slave_ : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Master_erkannt__Slave_ : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Momentenausgabe : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Getriebe_Moment : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Bremsenbotschaft : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Indiziertes_Istmoment__Slave_ : 0|16@1+ (0.0015259,0) [0|99.998] "%" XXX + SG_ Timeout_Bremsenbotschaft : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1332 Sitz_info: 2 XXX + SG_ Positionserkennung_Beifahrersit : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Beifahrersitz_im_vorderen_Dritt : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Positionserkennung_Fahrersitz_u : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrersitz_im_vorderen_Drittel : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Sitzinfo : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Checksumme_Sitzinfo : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1810 PSG_3: 2 XXX + SG_ Selbsttestergebnis : 0|16@1+ (1,0) [0|0] "" XXX + +BO_ 1298 PSG_2: 8 XXX + SG_ RAM_Inhalt_4 : 48|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Inhalt_3 : 32|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Inhalt_2 : 16|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Inhalt_1 : 0|16@1+ (1,0) [0|0] "" XXX + +BO_ 274 PSG_1: 8 XXX + SG_ Pumpentemperatur__2_1_ : 48|16@1+ (0.0625,0) [0|4096] "K" XXX + SG_ Pumpentemperatur__3_2_2_ : 44|12@1+ (1,0) [0|0] "" XXX + SG_ Zylinderzaehler__3_2_2_ : 43|3@1+ (1,0) [1|8] "Zaehler" XXX + SG_ Ansteuerdauer__3_2_2_ : 32|11@1+ (0.0469,0) [0|96] "NW" XXX + SG_ Nockenwellendrehzahl__3_2_2_ : 20|12@1+ (4,0) [0|16380] "upm" XXX + SG_ Pumpen_Statuswort__3_2_2_ : 0|20@1+ (1,0) [0|0] "" XXX + +BO_ 1300 NOX_1: 8 XXX + SG_ OBD_fuer_NOX : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_NOX1_4 : 53|3@1+ (1,0) [0|0] "" XXX + SG_ IP2 : 52|1@1+ (1,0) [0|0] "" XXX + SG_ IP1 : 51|1@1+ (1,0) [0|0] "" XXX + SG_ IP0 : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Sondenheizung_NOX : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Offsetkorrektur_NOX : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_NOX1_3 : 43|5@1+ (1,0) [0|0] "" XXX + SG_ Sauerstoff_binaer : 32|11@1+ (1,-200) [-200|1847] "mV" XXX + SG_ Frei_NOX1_2 : 27|5@1+ (1,0) [0|0] "" XXX + SG_ Sauerstoff_linear : 16|11@1+ (1,0) [0|2047] "1000/Lambd" XXX + SG_ Frei_NOX1_1 : 11|5@1+ (1,0) [0|0] "" XXX + SG_ NOX_Signal : 0|11@1+ (1,0) [0|2047] "ppm" XXX + +BO_ 1424 Niveau_1: 6 XXX + SG_ Beladungszustand : 40|8@1+ (1,0) [0|253] "Zuladung" XXX + SG_ Fehlerspeichereintrag__Niveau_1 : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Systemstatus__Niveau_1_ : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Reserve_Fahrzeugart : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrzeugart_Niveau : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Textbits__Niveau_1_ : 32|4@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_HL : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_HR : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_VL : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_VR : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Absenkung_Fahrzeug : 27|1@1+ (1,0) [0|0] "" XXX + SG_ Anhebung_Fahrzeug : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_aktiv : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Kompressorlauf_in_Kuerze : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Niveau_1_5 : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Taster_Niveau : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Parkniveau : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Zwischenniveau : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Niveaustati : 16|4@1+ (1,0) [0|0] "" XXX + SG_ MSG_Einschraenkung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_Beeinflussung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Warnlampe_Niveau_1 : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Niveau_1_1 : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Niveau_1 : 8|4@1+ (1,0) [0|15] "Zaehler" XXX + SG_ Checksumme_Niveau_1 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1328 Navigation_1: 7 XXX + SG_ Kreuzungstyp : 54|2@1+ (1,0) [0|3] "" XXX + SG_ Entfernung_bis_Kreuzung : 48|6@1+ (5,0) [0|315] "m" XXX + SG_ Entfernung_bis_Kurvenanfang : 40|8@1+ (1,0) [0|255] "m" XXX + SG_ Voarusliegende_Kurvenrichtung : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Vorausliegender_Kurvenverlauf : 32|7@1+ (50,0) [0|6350] "m" XXX + SG_ Fehler_Navigation : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Anzahl_Fahrbahnen__0_ist_unguel : 28|3@1+ (1,0) [1|7] "" XXX + SG_ Strassentyp : 24|4@1+ (1,0) [0|15] "" XXX + SG_ Laenderkennung : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Vorzeichen_Gierrate______ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Gierratenfehler : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Gierrate : 0|14@1+ (0.01,0) [0|100] "deg/sek" XXX + +BO_ 1792 MSG_3: 3 XXX + SG_ MSG_Konfiguration : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Lage_des_OT_Impuls : 0|16@1+ (0.01172,-384) [-384|384] "KW" XXX + +BO_ 1280 MSG_2: 8 XXX + SG_ RAM_Adresse_4 : 48|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Adresse_3 : 32|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Adresse_2 : 16|16@1+ (1,0) [0|0] "" XXX + SG_ Ram_Adresse_1 : 0|16@1+ (1,0) [0|0] "" XXX + +BO_ 256 MSG_1: 8 XXX + SG_ Kurbelwellendrehzahl__3_2_2_ : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Soll_Foerderbeginn_KW__3_2_2_ : 40|16@1+ (0.01172,-384) [-384|384] "KW" XXX + SG_ Soll_Foerderbeginn_NW__3_2_2_ : 28|12@1+ (0.01172,0) [0|768] "degNW" XXX + SG_ Soll_Voreinspritzung : 16|12@1+ (1,0) [0|0] "" XXX + SG_ Soll_Einspritzmenge : 0|16@1+ (0.03125,0) [0|2047] "mg/H" XXX + +BO_ 1796 Motor_NOX: 8 XXX + SG_ Frei_Motor_NOX_1_2 : 24|40@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_NOX_1_1 : 19|5@1+ (1,0) [0|0] "" XXX + SG_ Heizleistungsanforderung : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Offsetkorrektur_moeglich : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Betriebsbereich : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Abgastemperatur_NOX : 8|8@1+ (5,-40) [-40|1230] "C" XXX + SG_ Abgasdruck_NOX : 0|8@1+ (5,600) [600|1870] "mbar" XXX + +BO_ 900 Motor_Momente: 8 XXX + SG_ Momentenangaben_ungenau__Moment : 35|2@1+ (1,0) [0|0] "" XXX + +BO_ 1408 Motor_Flexia: 8 XXX + SG_ Ansaugsystem m0 : 63|1@1+ (1,0) [0|0] "" XXX + SG_ Hubraum m0 : 56|7@1+ (0.1,0) [0|12.7] "l" XXX + SG_ Steigung_der_Befuellungskennlin m1 : 56|8@1+ (0.001,0) [0|0.255] "l/mm" XXX + SG_ Anzahl_Zylinder m0 : 52|4@1+ (1,0) [0|15] "Vent./Zyl." XXX + SG_ Bewertungsfaktor_Russindex_Turb m1 : 50|6@1+ (0.1,0) [0|6.3] "" XXX + SG_ Anzahl_Ventile m0 : 49|3@1+ (1,0) [0|7] "Vent./Zyl." XXX + SG_ Bewertungsfaktor_Verschleissind m1 : 44|6@1+ (0.1,0) [0|6.3] "" XXX + SG_ Hersteller_Code m1 : 40|4@1+ (1,0) [0|15] "" XXX + SG_ Motorleistung m0 : 40|9@1+ (1,0) [0|512] "KW" XXX + SG_ Max_Drehmoment m0 : 32|8@1+ (10,0) [0|2550] "Nm" XXX + SG_ Normierter_Verbrauch m1 : 32|8@1+ (10,0) [0|2550] "l/Zyl." XXX + SG_ Oelniveauschwelle m1 : 24|8@1+ (0.25,0) [0|63.75] "cm" XXX + SG_ Drehzahl_MaxNorm m0 : 24|8@1+ (100,0) [0|25500] "U/min" XXX + SG_ Verschleissindex : 16|8@1+ (1,0) [0|254] "" XXX + SG_ Russindex : 8|8@1+ (1,0) [0|254] "" XXX + SG_ Verbrennungsart : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_Flexia_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Warm_Up_Cycle : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Driving_Cycle : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Motor_Flexia : 1|3@1+ (1,0) [0|15] "" XXX + SG_ Multiplex_Schalter_Motor_Flexia M : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1416 Motor_7: 8 XXX + SG_ Oltemperatur : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_7_3 : 40|16@1+ (1,0) [0|0] "" XXX + SG_ Ladedruck : 32|8@1+ (0.01,0) [0|2.54] "bar" XXX + SG_ Vorzeichen_Motordrehzahlgradien : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Motordrehzahlgradient : 24|7@1+ (1,0) [0|126] "U/min" XXX + SG_ Hoeheninfo__Motor_7_ : 16|8@1+ (0.00787,0) [0|2] "" XXX + SG_ Klemme_DFM : 8|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ PTC___Gluehstifte_ausgeschaltet : 5|3@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_7_1 : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag__Motor_7_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Statusbit_Geschwindikeitsbegren : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Geschwindigkegrenzung_aktivierb : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Leerlauf_Solldrehzahl_auf_Max_W : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1160 Motor_6: 8 XXX + SG_ Zaehler_Motor_6 : 60|4@1+ (1,0) [0|15] "" XXX + SG_ Frei_Motor_6_4 : 58|2@1+ (1,0) [0|0] "" XXX + SG_ ltemperaturschutz : 57|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_Bremseingriff_Freigabe : 56|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_6_3 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ Ruckmeldung_Momenten : 40|8@1+ (0.39,0) [0|100] "" XXX + SG_ GRA_Sollbeschleunigung : 32|8@1+ (0.024,-3.984) [-3.984|2.112] "m/s2" XXX + SG_ Hoeheninfo__Motor_6_ : 24|8@1+ (0.00787,0) [0|2] "" XXX + SG_ Istmoment_f_r_Getriebe : 16|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Sollmoment_f_r_Getriebe : 8|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Checksumme_Motor_6 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1152 Motor_5: 8 XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Motortext_Bits__4_1_ : 52|4@1+ (1,0) [0|0] "" XXX + SG_ Doppelte_Momente : 51|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_Hauptschalter : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Anlasser_Ausspuren : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Anlasser_Freigabe : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Klimadrucksignal__Motor_5_ : 40|8@1+ (0.2,0) [0|50.8] "bar" XXX + SG_ K_hlerluefteransteuerung : 32|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Verbrauch_Ueberlauf : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Kraftstoffverbrauchssignal : 16|15@1+ (1,0) [0|32767] "ul" XXX + SG_ Klimakompressor_Leistungsreduzi : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Kennfeldkuehlung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Klimakompressor_aus__Motor_5_ : 13|1@1+ (1,0) [0|0] "" XXX + SG_ CAT_Warnung : 12|1@1+ (1,0) [0|0] "" XXX + SG_ OBD_2_Lampe : 11|1@1+ (1,0) [0|0] "" XXX + SG_ E_Gas_Lampe : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Vorgluehlampe__Motor_5_ : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Ladekontroll_Lampe : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Code M : 6|2@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_norm__Verbrauch m3 : 0|6@1+ (20,0) [0|1260] "l/Zyl" XXX + SG_ Multiplex_Info_Motortyp m2 : 0|6@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Drehzahl_MD_Max m1 : 0|6@1+ (100,0) [0|6300] "U/min" XXX + SG_ Multiplex_Info_Max_Drehmoment m0 : 0|6@1+ (10,0) [0|630] "Nm" XXX + +BO_ 896 Motor_3: 8 XXX + SG_ Drosselklappenpoti : 56|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Motor_Wunschdrehzahl : 48|8@1+ (25,0) [0|6350] "U/min" XXX + SG_ Motordrehzahlbeeinflussung : 40|8@1+ (0.392,0) [0|100] "%" XXX + SG_ Kein_Start_Stop : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Kein_E_Gas : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Reserviert_Motor_3_1 : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Vorzeichen_Rad_Wunschmoment : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Rad_Wunschmoment : 24|12@1+ (0.39,0) [0|1597] "MDI" XXX + SG_ Fahrpedal_Rohsignal : 16|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Ansauglufttemperatur : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX + SG_ Fehlerstatus_Ansauglufttemperat : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Motorsteuerger_t_gesperrt : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Drosselklappenwinkel_ungenau : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrpedalwert_ungenau__Motor_3_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_3_1 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Motor_Wunschdrehzahl_Priorit_t : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Uebertemperaturschutz__Motor_3_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Vorgluehmeldung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 648 Motor_2: 8 XXX + SG_ Minimales_Motormoment_bei_Zuend : 56|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Begrenzungsmoment : 48|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Leerlaufsolldrehzahl__Motor_2_ : 40|8@1+ (10,0) [0|2540] "U/min" XXX + SG_ Soll_Geschwindigkeit_bei_GRA_Be : 32|8@1+ (1.28,0) [0|325] "km/h" XXX + SG_ Fahrzeuggeschwindigkeit : 24|8@1+ (1.28,0) [0|325] "km/h" XXX + SG_ GRA_Status : 22|2@1+ (1,0) [0|0] "" XXX + SG_ OBD_2_freeze_frame : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Normalbetrieb : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Klima__4_1_ : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kuhlmitteltempera : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Bremstestschalter : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Bremslichtschalter : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Kuehlmitteltemperatur__Motor_2_ : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX + SG_ Multiplex_Code_Motor_2 M : 6|2@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Motorcode__4_x_ m1 : 0|6@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Getriebecode m2 : 0|6@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Max_Moment__Norm m3 : 0|6@1+ (10,0) [0|630] "Nm" XXX + SG_ Multiplex_Info_CAN_Stand m0 : 0|6@1+ (1,0) [0|0] "" XXX + +BO_ 640 Motor_1: 8 XXX + SG_ Fahrerwunschmoment : 56|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ mechanisches_Motor_Verlustmomen : 48|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Fahrpedalwert_oder_Drosselklapp : 40|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ inneres_Motor_Moment_ohne_exter : 32|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Motordrehzahl : 16|16@1+ (0.25,0) [0|16256] "U/min" XXX + SG_ inneres_Motor_Moment : 8|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Momentenangaben_ungenau : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Getriebe_Momentene : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Brems_Momenteneing : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Time_Out_Bremsen_Botschaft : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Kupplungsschalter : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Kickdownschalter : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrpedalwert_ungenau__Motor_1_ M : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Leergasinformation : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 262 Master_3: 8 XXX + SG_ Frei_Master_3_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Motortemperatur_linearisiert : 48|8@1+ (0.75,-48) [-48|143.25] "" XXX + SG_ Indiziertes_Sollmoment_f_r_Vmax : 32|16@1+ (0.0015259,0) [0|100] "%" XXX + SG_ Relative_Momentenanforderung_de : 16|16@1+ (0.003052,0) [0|200] "%" XXX + SG_ Delta_Motormoment_aus_Verlustmo : 0|16@1+ (0.003052,-100) [-100|100] "%" XXX + +BO_ 260 Master_2: 8 XXX + SG_ Ubat_Freigabe_DVE : 45|1@1+ (1,0) [0|0] "" XXX + SG_ DK_Sollwertbegrenzung : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Einspritzverbot_DV_E_lernen : 43|1@1+ (1,0) [0|0] "" XXX + SG_ Master_erkannt : 42|1@1+ (1,0) [0|0] "" XXX + SG_ Vmax_Begrenzung_aktiv : 41|1@1+ (1,0) [0|0] "" XXX + SG_ SA_Verbot_von_FGR : 40|1@1+ (1,0) [0|0] "" XXX + SG_ Pedalwert_Komplement : 24|16@1+ (1,0) [0|0] "" XXX + SG_ Zaehler__Master_2_ : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Normierter_Fahrpedalwinkel : 0|16@1+ (0.001526,0) [0|100] "%" XXX + +BO_ 258 Master_1: 8 XXX + SG_ Stationaere_Solldrehzahl : 56|8@1+ (10,0) [0|2550] "Umin" XXX + SG_ Drehmoment_LLR__I_Anteil_ : 40|16@1+ (0.003052,-100) [-100|100] "%" XXX + SG_ Drehmoment_LLR__PD_Anteil_ : 24|16@1+ (0.003052,-100) [-100|100] "%" XXX + SG_ Drehmoment_LLR__Luftpfad_ : 8|16@1+ (0.003052,-100) [-100|100] "%" XXX + SG_ Frei_Master_1_1 : 4|4@1+ (1,0) [0|0] "" XXX + SG_ LLR_ist_aktiv : 3|1@1+ (1,0) [0|0] "" XXX + SG_ I_Anteil_der_LLR_aktiv : 2|1@1+ (1,0) [0|0] "" XXX + SG_ PD_Anteil_der_LLR_aktiv : 1|1@1+ (1,0) [0|0] "" XXX + SG_ LLR_Freigabe_nach_Start : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1984 LWS_Kalibrierung: 2 XXX + SG_ Frei_LWS_Kalibrierung_1_1 : 15|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Identifier : 8|7@1+ (1,0) [0|0] "" XXX + SG_ Frei_LWS_Kalibrierung_1_2 : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Command_Dode_Word : 0|4@1+ (1,0) [0|0] "" XXX + +BO_ 1986 Lenkwinkel_Init: 4 XXX + SG_ Kodierbytes : 8|24@1+ (1,0) [0|0] "" XXX + SG_ Identiifier_f_r_LWS_Init : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 192 Lenkwinkel_1__RB_: 2 XXX + SG_ Vorzeichen__RB_ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel__RB_ : 5|10@1+ (2.5,-720) [-720|720] "" XXX + SG_ LWS_OK__RB_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Abgleich__RB_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkwinkel_1_1__RB_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ FINE_CHECK__RB_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ COARSE_CHECK__RB_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 196 Lenkwinkel_1__ITT_: 2 XXX + SG_ Vorzeichen__ITT_ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel__ITT_ : 5|10@1+ (1.5,-768) [-768|766.5] "" XXX + SG_ LWS_OK : 4|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Abgleich__ITT_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Initialisierung__ITT_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ FINE_CHECK__ITT_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ COARSE_CHECK__ITT_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 194 Lenkwinkel_1: 8 XXX + SG_ Checksumme_Lenkwinkel_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Kodierdaten : 48|8@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Lenkwinkel_1 : 44|4@1+ (1,0) [0|15] "" XXX + SG_ Status_KL30_Ausfall__z_Zt__nur : 43|1@1+ (1,0) [0|0] "" XXX + SG_ Interner_Status : 41|2@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkwinkel_1_1 : 40|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel_ID : 32|8@1+ (1,0) [0|0] "" XXX + SG_ Lenkradwinkel_Geschwindigkeit_S : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkradwinkel_Geschwindigkeit : 16|15@1+ (0.04375,0) [0|1433.6] "Grad/Sek" XXX + SG_ Lenkradwinkel_Sign : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkradwinkel : 0|15@1+ (0.04375,0) [0|1433.6] "Grad" XXX + +BO_ 1502 Lenkhilfe_Fehler: 7 XXX + SG_ Werkstattcode : 48|8@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Signal : 45|3@1+ (1,0) [0|7] "" XXX + SG_ Sensorcodierung_Lenkhilfe : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Kennliniencodierung_Lenkhilfe : 40|4@1+ (1,0) [0|15] "Kennlinie" XXX + SG_ Geber_f__Lenkw__Speicher_ausles : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstr__Speicher_auslesen : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Steuerger__Speicher_auslesen : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Steuergeraet_defekt : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_3 : 32|4@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_4 : 30|2@1+ (1,0) [0|0] "" XXX + SG_ Geber_f__Lenkwi__k__CAN_Komm_sp : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Geber_f__Lenkwinkel_k__CAN_Komm : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstr__k__CAN_Kommunik__sp : 27|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstrument_k__CAN_Kommunik : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Steuergeraet_k__CAN_Kommunik__S : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Steuergeraet_keine_CAN_Kommunik : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks__nach_Mas : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks_nach_Mass : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks__nach___s : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks__nach__ : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Temperaturschutz_sp_ : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Temperaturschutz : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Betrieb_unpl__Sig__sp : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Betrieb_unpl__Signal : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_k__Kommunik__sp : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_keine_Kommunik_ : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_defekt_sp_ : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_defekt : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_Unterbrechung_s : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_Unterbrechung : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_Ks_nach_Masse_s : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhifesensor_Ks_nach_Masse : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_15_zu_klein_sp_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_15_zu_klein : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_5 : 4|2@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_klein_sp_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_klein : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_gro__sp_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_gro_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 976 Lenkhilfe_1: 2 XXX + SG_ Fehlerspeichereintrag__Lenkhilf : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_2 : 9|6@1+ (1,0) [0|0] "" XXX + SG_ Fehlerlampe_Lenkhilfe : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Lastinformation : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Lastinformation : 0|7@1+ (1,0) [0|127] "A" XXX + +BO_ 1312 Kombi_3: 8 XXX + SG_ Frei_Kombi_3_2 : 60|4@1+ (1,0) [0|0] "" XXX + SG_ Kilometerstand : 40|20@1+ (1,0) [0|1000000] "km" XXX + SG_ Fehlerstatus_Standzeit : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Standzeit : 24|15@1+ (4,0) [0|131068] "sec" XXX + SG_ Frei_Kombi_3_1 : 20|4@1+ (1,0) [0|0] "" XXX + SG_ Schluesselinfo : 16|4@1+ (1,0) [0|15] "" XXX + SG_ Kombi_Multiplex_Code M : 14|2@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Niveauregulie m3 : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Marke m1 : 11|3@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Lenkhilfe m3 : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Dieselpumpe m3 : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Lenkwinkel m3 : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Baureihe m1 : 8|3@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Laendervariante m0 : 8|6@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Allrad m3 : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Bordnetz m3 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_ACC m3 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Airbag m3 : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Generation m1 : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Klima m3 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_ABS m3 : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Motor m3 : 0|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Derivat m1 : 0|4@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Sprachvariante m0 : 0|8@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Reifenumfang m2 : 0|12@1+ (1,0) [0|4095] "mm" XXX + +BO_ 1056 Kombi_2: 8 XXX + SG_ Frei_Kombi_2_2 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kl__58_s : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58s__Kombi_2_ : 48|7@1+ (1,0) [0|100] "%" XXX + SG_ Fehlerstatus_Kl__58_d : 47|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58d__Kombi_2_ : 40|7@1+ (1,0) [0|100] "%" XXX + SG_ Kuehlmitteltemp__4_1__Kombi_2_ : 32|8@1+ (0.75,-48) [-48|142.5] "C" XXX + SG_ Oeltemperatur_4_1 : 24|8@1+ (1,-60) [-60|194] "C" XXX + SG_ Aussentemp__ungefiltert_4_1__Ko : 16|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Aussentemperatur_gefiltert : 8|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Fehlerspeichereintrag__Kombi_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Kombi_2_1 : 4|3@1+ (1,0) [0|0] "" XXX + SG_ Anhaenger_erkannt : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerst__Kuehlmitteltemp__4_1 : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Oeltemperatur_4_1 : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Aussentemp__4_1 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 800 Kombi_1: 8 XXX + SG_ Frei_Kombi_1_3 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Angezeigte_Geschwindigkeit : 46|10@1+ (0.32,0) [0|325] "km/h" XXX + SG_ Blinker_rechts_4_1 : 45|1@1+ (1,0) [0|0] "" XXX + SG_ Blinker_links_4_1 : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Gesetzte_Zeitluecke__Kombi_1_ : 43|1@1+ (1,0) [0|0] "" XXX + SG_ ADR_Summer_abgeschaltet : 42|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Kombi_1_2 : 40|2@1+ (1,0) [0|0] "" XXX + SG_ Geschwindigkeit__Kombi_1_ : 25|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Signalquelle_Geschwindigkeit_4_ : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Tankwarnung : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Tankinhalt : 16|7@1+ (1,0) [0|126] "l" XXX + SG_ Tankstop : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Kombi_1_7 : 12|3@1+ (1,0) [0|0] "" XXX + SG_ Kombi_im_Stellgliedtest : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Ladekontroll_Lampe__Kombi_ : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsinfo : 8|2@1+ (1,0) [0|0] "" XXX + SG_ Vorgluehlampe__Kombi_1_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Tankwarnlampe : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Heissleuchten_Vorwarnung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Kuehlmittelmangel : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Dynamische_Oeldruckwarnung : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Oeldruck : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Tank : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrertuer_4_1 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1504 Klima_1: 8 XXX + SG_ Aussentemp__ungef__Sto_f__4_1 : 56|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Fehlerspeichereintrag__Klima_ : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Klima_1_5 : 50|5@1+ (1,0) [0|0] "" XXX + SG_ AC_Schalter : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Temperatureinheit : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Kuehlerluefteransteuerung__Klim : 40|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Geblaeselast_4_1 : 32|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Kompressorlast : 24|8@1+ (0.25,0) [0|63.5] "Nm" XXX + SG_ Klimadrucksignal__Klima_1_ : 16|8@1+ (0.2,0) [0|50.8] "bar" XXX + SG_ Aussentemp__ungef__4_1__Klima_1 : 8|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Kaeltemitteldruck_veraltet : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Kompressormoment_veraltet_4_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Keine_Heizleistg_gewuenscht_4_1 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Kompressorzustand__4_1_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Frontscheibe : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Heckscheibe : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrerwunsch_Zuheizer : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Drehzahlanhebung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 906 GRA_Neu: 4 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ GRA_Hauptschalt : 8|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Abbrechen : 9|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Down_kurz : 10|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Up_kurz : 11|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Down_lang : 12|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Up_lang : 13|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Fehler_Bed : 14|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Kodierinfo : 15|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Neu_Setzen : 16|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Recall : 17|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Sender : 18|2@1+ (1,0) [0|3] "" XXX + SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX + SG_ GRA_Tip_Down : 24|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Tip_Up : 25|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Zeitluecke : 26|2@1+ (1,0) [0|3] "" XXX + SG_ GRA_Sta_Limiter : 28|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Typ_Hauptschalt : 29|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Sportschalter : 30|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Fehler_Tip : 31|1@1+ (1,0) [0|1] "" XXX + +BO_ 904 GRA: 3 XXX + SG_ Checksumme_GRA_alt : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_GRA_alt : 15|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR_Bedienteil_Fehler : 14|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR_beschleunigen : 13|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR_verzoegern : 12|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Tipschalter__Wie : 11|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Tipschalter__Set : 10|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Tipschalter__Aus : 9|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Hauptschalter : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_GRA_alt : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 1352 Getriebe_4: 3 XXX + SG_ Testparameter_2 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Testparameter_1 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ Waehlhebelausleuchtung : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Frei_Getriebe_4_1 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Testfreigabeflag : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Handbremserinnerung_s_Lampe : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Shiftlock_Getriebe_4 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1344 Getriebe_2: 8 XXX + SG_ eingelegte_Fahrstufe : 60|4@1+ (1,0) [0|0] "" XXX + SG_ Ganganzeige_Kombi___Getriebe_Va : 56|4@1+ (1,0) [0|15] "" XXX + SG_ Fehlerlampe_f_r_Kupplung_bei_VL : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Anforderung_Kriechadaption : 54|1@1+ (1,0) [0|0] "" XXX + SG_ ECO_Anzeige__4_1_ : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Shift_Lock_Lampe : 52|1@1+ (1,0) [0|0] "" XXX + SG_ Unterdrueckung_von_Warnungen : 51|1@1+ (1,0) [0|0] "" XXX + SG_ Gong : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Starter_wird_angesteuert : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Hochschaltlampe : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Synchronisationszeit : 40|8@1+ (20,0) [0|5080] "ms" XXX + SG_ invertierte_Synchronisations_Wu : 32|8@1+ (25,0) [0|6350] "U/min" XXX + SG_ Synchronisations_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "U/min" XXX + SG_ Gradientenbegrenzung : 16|8@1+ (10,0) [0|2540] "Nm/s" XXX + SG_ Leerlaufsolldrehzahl__Getriebe : 8|8@1+ (10,0) [0|2540] "U/min" XXX + SG_ Zahler_Getriebe_2 : 4|4@1+ (1,0) [0|15] "" XXX + SG_ Zwischengasflag : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Ecomatic__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Schubabschaltunterstuetzung : 1|1@1+ (1,0) [0|0] "" XXX + SG_ LFR_Adaption_Freigabeflag : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1088 Getriebe_1: 8 XXX + SG_ Wandlerverlustmoment : 56|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ Fehlerspeichereintrag__Getriebe : 55|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 51|4@1+ (1,0) [0|15] "" XXX + SG_ Gang_eingelegt : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltabsicht : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Motor_aus : 48|1@1+ (1,0) [0|0] "" XXX + SG_ OBD_Status__Getriebe_1___4_1_ : 46|2@1+ (1,0) [0|0] "" XXX + SG_ Kuehlleistung : 44|2@1+ (1,0) [0|0] "" XXX + SG_ Getriebe_Notlauf : 40|4@1+ (1,0) [0|0] "" XXX + SG_ Fahrwiderstandsindex : 32|8@1+ (0.249,-31.6) [-31.6|31.6] "" XXX + SG_ inneres_Soll_Motormoment : 24|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ Uebertragungsfunktion : 16|8@1+ (0.1,0) [0|25.4] "" XXX + SG_ Waehlhebelposition__Getriebe_1_ : 12|4@1+ (1,0) [0|0] "" XXX + SG_ Zielgang_oder_eingelegter_Gang : 8|4@1+ (1,0) [0|0] "" XXX + SG_ EGS_Anforderung : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Kodierung_im_MSG : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Leerlaufsolldrehzahlanhebung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Wandlerkupplung : 3|2@1+ (1,0) [0|0] "" XXX + SG_ Klimakompressor_aus__Getriebe_1 : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Getriebe_und_Wandlerschu : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltung_aktiv__Getriebe_1_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 912 Gate_Komf_1: 8 XXX + SG_ GK1_Sta_RDK_Warn : 0|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Anhaen : 1|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Licht3 : 3|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Tuerkont : 4|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Li_vorn : 5|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SleepAckn : 7|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_CharismaModus m1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ GK1_SamFktNr M : 12|4@1+ (1,0) [0|15] "" XXX + SG_ GK1_Fa_Tuerkont : 16|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_RueckfahrSch : 17|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_ELV_verrieg : 18|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Kessy_2 : 19|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Stdhzg : 20|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SH_Verbau : 21|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_ParkFrontWi : 22|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_KW_Warm : 23|1@1+ (1,0) [0|1] "" XXX + SG_ BCM_Remotestart_Betrieb : 24|1@1+ (1,0) [0|1] "" XXX + SG_ BSK_HL_geoeffnet : 26|1@1+ (1,0) [0|1] "" XXX + SG_ BSK_HR_geoeffnet : 27|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Rueckfahr : 28|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_links : 29|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_rechts : 30|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_mitte : 31|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BLS_ILM : 32|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_EDC_ILM : 33|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Blinker_li : 34|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Blinker_re : 35|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_def_P_verr : 36|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_LS1_Fernlicht : 37|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Licht2 : 38|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_LSM : 39|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Count_Anhaen : 40|4@1+ (1,0) [0|15] "" XXX + SG_ BSK_BT_geoeffnet : 41|1@1+ (1,0) [0|1] "" XXX + SG_ BSK_HD_Hauptraste : 43|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BLS_AAG : 44|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_EDC_AAG : 45|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Anhaenger : 46|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_Anhaen : 47|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Abblendlicht : 48|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Fernlicht : 49|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Wischer_vorn : 50|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_ILM_F_1 : 51|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Abbl_VL_def : 52|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Abbl_VR_def : 53|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Blink_Autob : 54|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Warnblk_Status : 55|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SH_laeuft : 56|1@1+ (1,0) [0|1] "" XXX + SG_ SH1_ein_Wasserpumpe : 57|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Nebel_ein : 58|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Bremslicht : 59|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Anh_abgesteckt : 60|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_AnhKonLamp : 61|1@1+ (1,0) [0|1] "" XXX + SG_ LDS_Stellung_AFL : 62|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SH_Zusatzfkt : 63|1@1+ (1,0) [0|1] "" XXX + + +BO_ 1340 Fahrwerk_1: 1 XXX + SG_ Frei_Fahrwerk_1_2 : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Fahrwerk_1_1 : 6|2@1+ (1,0) [0|0] "" XXX + SG_ Einstellung_Fahrwerkdaempfung_4 : 4|3@1+ (1,0) [0|7] "" XXX + SG_ Ansteuererung_Fahrzeugniveau : 0|4@1+ (1,0) [0|15] "" XXX + +BO_ 1472 EPB_1: 8 XXX + SG_ COUNTER : 0|4@1+ (1,0) [0|15] "" XXX + SG_ EP1_Fehler_Sta : 4|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EP1_Sta_EPB : 6|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Sta_Schalter : 7|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Spannkraft : 8|5@1+ (1,0) [0|30] "Unit_KiloNewto" XXX + SG_ EP1_Schalterinfo : 13|2@1+ (1,0) [0|3] "" XXX + SG_ EP1_Sta_NWS : 15|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Neig_winkel : 16|8@1+ (1,-128) [-128|127] "Unit_PerCentOfForceOfGravi" XXX + SG_ EP1_Verzoegerung : 24|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" XXX + SG_ EP1_Fehlereintr : 32|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Freigabe_Ver : 33|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_AutoHold_zul : 34|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_AutoHold_aktiv : 35|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_SleepInd : 36|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Status_Kl_15 : 37|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Lampe_AutoP : 38|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Bremslicht : 39|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Warnton1 : 40|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Warnton2 : 41|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_AnfShLock : 42|1@1+ (1,0) [0|1] "" XXX + SG_ EPB_Autoholdlampe : 43|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_QualNeigWi : 44|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_KuppModBer : 45|2@1+ (1,0) [0|3] "" XXX + SG_ EP1_HydrHalten : 47|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Fkt_Lampe : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EP1_Warnton : 49|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Fehler_BKL : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EP1_Fehler_gelb : 51|1@1+ (1,0) [0|1] "" XXX + SG_ EP1__Text : 52|4@1+ (1,0) [0|8] "" Vector__XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 1326 Diag_Lenkhilfe: 3 XXX + SG_ Werkstattcode__Diag_ : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Signal__Diag_ : 13|3@1+ (1,0) [0|7] "" XXX + SG_ Befehl_Sensorcodierung_Lenkhilf : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Befehl_Kennliniencodierung_Lenk : 8|4@1+ (1,0) [0|0] "" XXX + SG_ Befehl_Fehlerspeicher_loeschen : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1432 Daempfer_1: 2 XXX + SG_ Frei_Daempfer_1_4 : 12|4@1+ (1,0) [0|0] "" XXX + SG_ Textbits_Daempfer : 8|4@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeicherbit__Daempfer_1_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Systemstatus__Daempfer_1_ : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Daempfer_1_3 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Status_CDC_Taster : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Daempfer_1_2 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Daempferregelung_4_1 : 0|3@1+ (1,0) [0|7] "" XXX + +BO_ 1392 BSG_Last: 4 XXX + SG_ Klimaanlage_abschalten : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Sitzbelueftung_abschalten : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Wischwasserheizung_abschalten : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkradheizung_abschalten : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Sitze_abschalten : 27|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Aussenspiegel_abschalt : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Frontscheibe_abschalte : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Heckscheibe_abschalten : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Batteriespannung_Bordnetzbatter : 16|8@1+ (0.05,5) [5|17.7] "V" XXX + SG_ Motorhaubenkontakt : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Leuchtweitenregulierung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag__BSG_Last : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Zustand_der_Starterbatterie : 11|2@1+ (1,0) [0|0] "" XXX + SG_ Zustand_der_Bordnetzbatterie : 9|2@1+ (1,0) [0|0] "" XXX + SG_ LL_Drehzahlanhebung : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_L : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_BSG_Last_1_1 : 4|3@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_50 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_X : 2|1@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_15 : 1|1@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_S : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1136 BSG_Kombi: 5 XXX + SG_ Frei_BSG_Kombi_1_3 : 36|4@1+ (1,0) [0|0] "" XXX + SG_ Ruecksitzlehne_HR_verr__4_1 : 35|1@1+ (1,0) [0|0] "" XXX + SG_ Ruecksitzlehne_HL_verr__4_1 : 34|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerlampe_Lenkhilfe_veraltet : 33|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerlampe_Lenkhilfe__BSG_Komb : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kl__58s : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58s__BSG_Kombi_ : 24|7@1+ (1,0) [0|100] "%" XXX + SG_ Fehlerstatus_Kl__58d : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58d__BSG_Kombi_ : 16|7@1+ (1,0) [0|100] "%" XXX + SG_ Unterspannung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_BSG_Kombi_1_2 : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Heckdeckel_geoeffnet : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Motorhaube_geoeffnet : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Tuer_hinten_rechts_geoeffnet : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Tuer_hinten_links_geoeffnet : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Beifahrertuer_geoeffnet : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrertuer_geoeffnet : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Lade_Kontrollampe : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_BSG_Kombi_1_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Rueckfahrlicht : 5|1@1+ (1,0) [0|0] "" XXX + SG_ DWA_Akku : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Warnblink_Mode : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Anhaenger_Kontrollampe : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Blinker_rechts_Kontrollampe : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Blinker_links_Kontrollampe : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 424 Bremse_6: 3 XXX + SG_ Checksumme_Bremse_6 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Bremse_6 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Status_Bremsdruck__Bremse_6__du : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_6_1 : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsdruck__Bremse_6_ : 0|10@1+ (0.3255,-40) [-40|293] "bar" XXX + +BO_ 1192 Bremse_5: 8 XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 52|4@1+ (1,0) [0|15] "" XXX + SG_ Bremslicht_ECD : 51|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsentemperatur_vorn : 48|3@1+ (125,125) [125|1000] "C" XXX + SG_ Frei_Bremse_5_5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ Offset_Gierrate : 32|8@1+ (0.05,-6.375) [-6.375|6.375] "deg/s" XXX + SG_ Vorzeichen_Bremsdruck : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Bremsdruck_durch_ESP_Sys : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsdruck_ungueltig : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_5_3 : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsdruck : 16|12@1+ (0.1,0) [0|250] "bar" XXX + SG_ Vorzeichen_der_Giergeschwindigk : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Gierrate_ungueltig : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Giergeschwindigkeit : 0|14@1+ (0.01,0) [0|100] "Grad/sec" XXX + +BO_ 672 Bremse_4: 3 XXX + SG_ Frei_Bremse_4_1 : 17|7@1+ (1,0) [0|0] "" XXX + SG_ Einheit_Kupplungssteifigkeit : 16|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_Vorgabewert_hinten_Kupplung : 8|8@1+ (0.7874,0) [0|100] "%" XXX + SG_ ABS_Vorgabewert_mitte_Kupplungs : 0|8@1+ (3,-381) [-381|378] "Nm/min" XXX + +BO_ 1184 Bremse_3: 8 XXX + SG_ Radgeschw__HR_4_1 : 49|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_4 : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Radgeschw__HL_4_1 : 33|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_3 : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Radgeschw__VR_4_1 : 17|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_2 : 16|1@1+ (0.01,0) [0|325] "km/h" XXX + SG_ Radgeschw__VL_4_1 : 1|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_1 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1440 Bremse_2: 8 XXX + SG_ gemessene_Querbeschleunigung : 63|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_2_2 : 62|1@1+ (1,0) [0|0] "" XXX + SG_ Impulszahl : 56|6@1+ (1,0) [0|63] "" XXX + SG_ Fehlerstatus_Wegimpulse_4_1 : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_2_5 : 54|1@1+ (1,0) [0|0] "" XXX + SG_ Warnlampe_DDS : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag_Bremse : 52|1@1+ (1,0) [0|0] "" XXX + SG_ Wegimpulszaehlerstatus : 51|1@1+ (1,0) [0|0] "" XXX + SG_ Wegimpulse_Vorderachse : 40|11@1+ (1,0) [0|2047] "" XXX + SG_ Zeitstempel : 24|16@1+ (1,0) [0|65535] "tics" XXX + SG_ mittlere_Raddrehzahl__Bremse_2 : 9|15@1+ (0.002,0) [0|65.278] "U/sec" XXX + SG_ Querbeschl__TimerTic M : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Timer m1 : 0|8@1+ (0.04,0) [0|10.2] "usec" XXX + SG_ Querbeschleunigung m0 : 0|8@1+ (0.01,-1.27) [-1.27|1.27] "g" XXX + +BO_ 416 Bremse_1: 8 XXX + SG_ Geschwindigkeitsersatzwert : 63|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_Systemstatus_4_1 : 62|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_Passiv_getastet : 61|1@1+ (1,0) [0|0] "" XXX + SG_ ASR_Steuerger_t : 60|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 56|4@1+ (1,0) [0|15] "" XXX + SG_ MSR_Eingriffsmoment : 48|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ ASR_Eingriffsmoment_schnell : 40|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ ASR_Eingriffsmoment_langsam : 32|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ Geschwindigkeit_neu__Bremse_1_ : 17|15@1+ (0.01,0) [0|326.39] "km/h" XXX + SG_ Aktiver_Bremskraftverstaerker : 16|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_in_Diagnose : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Schlechtwegausblen : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Schlechtwegausblendung : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrer_bremst__Bremse_1___4_1_ : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Bremskontroll_Lampe : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Lampe_ASR___ESP : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Lampe_ABS : 8|1@1+ (1,0) [0|0] "" XXX + SG_ EBV_Eingriff : 7|1@1+ (1,0) [0|0] "" XXX + SG_ ASR_Schaltbeeinflussung : 5|2@1+ (1,0) [0|0] "" XXX + SG_ ESP_Eingriff : 4|1@1+ (1,0) [0|0] "" XXX + SG_ EDS_Eingriff : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_Bremsung__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ MSR_Anforderung : 1|1@1+ (1,0) [0|0] "" XXX + SG_ ASR_Anforderung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 680 Bremsbooster_1: 3 XXX + SG_ Fehlerspeichereintrag_Booster : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Loseschalter_unplausibel_Boost : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Position_Standby : 21|1@1+ (1,0) [0|0] "" XXX + SG_ ADR_Relais_ge_ffnet : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Bremsbooster_Steuerung : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsbooster_verf_gbar : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Eingriff_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Bremseingriff_Fahrer : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremsbooster_1_1 : 12|4@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Booster_1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Checksumme_Booster_1 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1400 BatMan_1: 1 XXX + SG_ Fehlerspeichereintrag__BatMan_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Leistungsrelais : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Messung_Starterleitung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Zustand_Starterleitung : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Umschaltrelais_Bordnetzbatterie : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Ladung_Starterbatterie : 1|2@1+ (1,0) [0|0] "" XXX + SG_ Startmodus : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 704 Allrad_1: 5 XXX + SG_ Kupplungssteifigkeit_Hinten__Is : 32|8@1+ (0.7874,0) [0|100] "%" XXX + SG_ Fehlerspeichereintrag_Allrad_1 : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Allrad_1_1 : 26|5@1+ (1,0) [0|0] "" XXX + SG_ Schaltung_Vorwarnung : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltung_aktiv__Allrad_1_ : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Ganginfo__PNG_ : 20|4@1+ (1,0) [0|0] "" XXX + SG_ PNG_Anzeige_blinkend : 19|1@1+ (1,0) [0|0] "" XXX + SG_ PNG_Status_4_1 : 16|3@1+ (1,0) [0|0] "" XXX + SG_ Kupplungssteifigkeit_Mitte__Ist : 8|8@1+ (3,-381) [-381|378] "Nm/min" XXX + SG_ Einheit_der_Kupplungssteifigkei : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Geschwindigkeitsbegrenzung : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Allrad_Warnlampe : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Notlauf : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Kupplung_komplett_offen : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kupplungssteifigke : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Ubertemperaturschutz__Allrad_1_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Allrad_Kupplung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1360 Airbag_2: 2 XXX + SG_ OOP_Beifahrer : 14|2@1+ (1,0) [0|0] "" XXX + SG_ OOP_Fahrer : 12|2@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_hinten_mitte : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_hinten_recht : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_hinten_links : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_Beifahrersit : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Checksumme_Airbag_2__reserviert : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 80 Airbag_1: 4 XXX + SG_ CHECKSUM : 24|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX + SG_ Fehlerspeichereintrag : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Airbag_1_2 : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_im_Stellgliedtest : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_in_Diagnose : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtwarnung_Beifahrer : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtschalter_Beifahrer : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtwarnung_Fahrer : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtschalter_Fahrer : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_Systemfehler : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Kindersitzerkennung : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_deaktiviert : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_Lampe : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Crash_Intensitaet : 5|3@1+ (1,0) [0|111] "B" XXX + SG_ Rollover : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Seiten_Crash_Beifahrer : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Seiten_Crash_Fahrer : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Heck_Crash : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Front_Crash : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 864 ADR_System: 8 XXX + SG_ S_Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ S_Frei_ADR_1_1 : 52|4@1+ (1,0) [0|0] "" XXX + SG_ S_Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX + SG_ S_Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX + SG_ S_Fehlerspeichereintrag_Bremsbo : 46|1@1+ (1,0) [0|0] "" XXX + SG_ S_ADR_Relais_geoeffnet : 45|1@1+ (1,0) [0|0] "" XXX + SG_ S_Bremsbooster_Status : 43|2@1+ (1,0) [0|0] "" XXX + SG_ S_Eingriff_Bremsbooster : 42|1@1+ (1,0) [0|0] "" XXX + SG_ S_Loeseschalter_unplausibel : 41|1@1+ (1,0) [0|0] "" XXX + SG_ S_Bremseingriff_Fahrer : 40|1@1+ (1,0) [0|0] "" XXX + SG_ S_Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX + SG_ S_Ansteuerung_optischer_Fahrerh : 38|1@1+ (1,0) [0|0] "" XXX + SG_ S_Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX + SG_ S_Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX + SG_ S_Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX + SG_ S_Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX + SG_ S_Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX + SG_ S_Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX + SG_ S_Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX + SG_ S_Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX + SG_ S_Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX + SG_ S_Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX + SG_ S_Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ S_Status_ADR_1__S_ : 13|2@1+ (1,0) [0|0] "" XXX + SG_ S_Fehler_ADR_1__S_ : 12|1@1+ (1,0) [0|0] "" XXX + SG_ S_Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ S_Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX + +BO_ 608 ADR_2: 4 XXX + SG_ Frei_ADR_2_2 : 27|5@1+ (1,0) [0|0] "" XXX + SG_ Anforderung_Bremsdruck : 16|11@1+ (0.0625,0) [0|127.9375] "bar" XXX + SG_ Frei_ADR_2_1 : 14|2@1+ (1,0) [0|0] "" XXX + SG_ Relais_Test_Fehler : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Standby : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_ADR_2 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Checksumme_ADR_2 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1324 ADR_1: 8 XXX + SG_ Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_ADR_1_5 : 52|4@1+ (1,0) [0|0] "" XXX + SG_ Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX + SG_ Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX + SG_ Reserviert_ADR_1_1 : 40|7@1+ (1,0) [0|0] "" XXX + SG_ Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_optischer_Fahrerhin : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX + SG_ Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX + SG_ Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX + SG_ Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX + SG_ Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX + SG_ Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Status_ADR_1 : 13|2@1+ (1,0) [0|0] "" XXX + SG_ Fehler_ADR_1 : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX + +BO_ 1550 Einheiten_1: 2 XXX + SG_ MFA_v_Einheit_02 : 0|1@1+ (1,0) [0|1] "" XXX + +BO_ 872 ACC_System: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACS_Sta_ADR : 12|2@1+ (1,0) [0|3] "" XXX + SG_ ACS_ADR_Schub : 14|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Schubabsch : 15|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_StSt_Info : 16|2@1+ (1,0) [0|3] "" XXX + SG_ ACS_MomEingriff : 18|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Typ_ACC : 19|2@1+ (1,0) [0|3] "" XXX + SG_ ACS_FreigSollB : 23|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Sollbeschl : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + SG_ ACS_Anhaltewunsch : 38|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Fehler : 39|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_zul_Regelabw : 40|8@1+ (0.005,0) [0|1.265] "Unit_MeterPerSeconSquar" XXX + SG_ ACS_max_AendGrad : 48|8@1+ (0.02,0) [0.02|5.06] "Unit_MeterPerSeconSquar" XXX + +BO_ 1386 ACC_GRA_Anzeige: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ACA_StaACC : 8|3@1+ (1,0) [0|7] "" XXX + SG_ ACA_ID_StaACC : 11|5@1+ (1,0) [0|31] "" XXX + SG_ ACA_Fahrerhinw : 16|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_AnzDisplay : 17|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Zeitluecke : 18|4@1+ (1,0) [0|15] "" XXX + SG_ ACA_V_Wunsch : 24|8@1+ (1,0) [0|255] "Unit_KiloMeterPerHour" XXX + SG_ ACA_kmh_mph : 32|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Akustik1 : 33|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Akustik2 : 34|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_PrioDisp : 35|2@1+ (1,0) [0|3] "" XXX + SG_ ACA_gemZeitl : 40|4@1+ (1,0) [0|15] "" XXX + SG_ ACA_ACC_Verz : 44|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_StaGRA : 48|3@1+ (1,0) [0|7] "" XXX + SG_ ACA_ID_StaGRA : 51|5@1+ (1,0) [0|31] "" XXX + SG_ ACA_Codierung : 56|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Tachokranz : 57|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Aend_Zeitluecke : 58|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 208 Lenkhilfe_3: 6 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ LH3_BS_Spiegel : 8|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX + SG_ LH3_LM : 16|10@1+ (1,0) [0|1023] "" XXX + SG_ LH3_LMSign : 26|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_LMValid : 27|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_Sta_DSR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ LH3_BLW : 32|12@1+ (0.15,0) [0|615] "" XXX + SG_ LH3_BLWSign : 44|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_BLWValid : 45|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_Lenkungstyp : 46|2@1+ (1,0) [0|3] "" XXX + +BO_ 978 Lenkhilfe_2: 7 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_Geradeaus : 12|1@1+ (1,0) [0|1] "" XXX + SG_ LH2_Sta_Charisma : 13|3@1+ (1,0) [0|7] "" XXX + SG_ LH2_Sta_HCA : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_Ausg_LW1 : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LH2_Ausg_LW1_gue : 21|1@1+ (1,0) [0|1] "" XXX + SG_ LH2_StatEPS_PLA : 24|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_aktLenkeingriff : 32|8@1+ (1,0) [0|255] "" XXX + SG_ LH2_PLA_Err : 48|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_PLA_Abbr : 52|4@1+ (1,0) [0|15] "" XXX + +BO_ 210 HCA_1: 5 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ HCA_Status : 12|4@1+ (1,0) [0|15] "" XXX + SG_ LM_Offset : 16|15@1+ (0.03125,0) [0|300] "cNm" XXX + SG_ LM_OffSign : 31|1@1+ (1,0) [0|1] "" XXX + SG_ Vib_Freq : 32|4@1+ (4,0) [0|60] "Hz" XXX + SG_ Vib_Amp : 36|4@1+ (0.5,0) [0|7.5] "Nm" XXX + +BO_ 644 Motor_Bremse: 6 XXX + SG_ MOB_Standby : 12|1@1+ (1,0) [0|1] "" XXX + SG_ MOB_Freigabe : 14|1@1+ (1,0) [0|1] "" BCM_Gateway,Bremse_MK25AESP,Gateway_separat + SG_ MOB_Anhaltewunsch : 13|1@1+ (1,0) [0|1] "" Bremse_MK25AESP,Getriebe_DQ + SG_ MOB_CHECKSUM : 0|8@1+ (1,0) [0|255] "" Bremse_MK25AESP + SG_ MOB_COUNTER : 8|4@1+ (1,0) [0|15] "" Bremse_MK25AESP + SG_ TSK_v_Begrenzung_aktiv : 15|1@0+ (1,0) [0|1] "" XXX + SG_ TSK_ax_Getriebe_01 : 40|8@1+ (0.048,0) [0|255] "m/s2" XXX + SG_ MOB_Bremsstgr : 16|11@1+ (0.048852,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ MOB_Bremsmom : 27|13@1+ (4,0) [0|32760] "Unit_NewtoMeter" Bremse_MK25AESP + +BO_ 870 AWV: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ AWV_Text : 12|4@1+ (1,0) [0|14] "" Vector__XXX + SG_ AWV_1_Freigabe : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_1_Prefill : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_1_Parameter : 18|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AWV_only : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_CityANB_Auspraegung : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Halten : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_Teilbremsung_Freigabe : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Status : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Fehler : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_SU_Warnzeit : 26|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AWV_2_SU_Bremsruck : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_SU_Gong : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_SU_Lampe : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Umfeldwarn : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Freigabe : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Ruckprofil : 33|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ AWV_2_Warnton : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Warnsymbol : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Infoton : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Gurtstraffer : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Menueanf : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Vorw_Menueanf : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Status : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Vorw_Status : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Abstandswarnung : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_Zielbremsung_Freigabe : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_CM_Anforderung : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_Ziel_Teilbrems_Verz_Anf : 54|10@1+ (0.024,-20.016) [0|1023] "Unit_MeterPerSeconSquar" Vector__XXX + +BO_ 1470 LDW_Status: 8 XXX + SG_ LDW_Lernmodus_rechts : 0|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus_links : 2|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus : 9|3@1+ (1,0) [0|3] "" XXX + SG_ LDW_Textbits : 12|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Gong : 16|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Kameratyp : 18|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lampe_gelb : 19|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lampe_gruen : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_links : 21|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_rechts : 22|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_KD_Fehler : 23|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_DLC : 24|8@1+ (0.01,-1.25) [-1.25|1.25] "" XXX + SG_ LDW_TLC : 32|5@1+ (0.1,0) [0|3] "" XXX + SG_ LDW_Seite_DLCTLC : 37|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Frueh_Spaet : 38|2@1+ (1,0) [0|3] "" XXX + +BO_ 428 Bremse_8: 8 XXX + SG_ BR8_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX + SG_ BR8_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BR8_Sta_ACC_Anf : 12|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Verz_EPB_akt : 13|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_Br_temp : 14|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_Br_Druck : 15|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_TolAbgl_HL : 16|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX + SG_ BR8_TolAbgl_HR : 24|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX + SG_ BR8_Istbeschl : 32|9@1+ (0.02,-7.22) [-7.22|2.98] "Unit_MeterPerSeconSquar" XXX + SG_ BR8_Sta_HW_BLS : 41|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_QB_LBeschl : 42|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_ESC_Mode : 43|2@1+ (1,0) [0|3] "" XXX + SG_ BR8_aktBrSyst : 45|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Fa_bremst : 46|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_StaBrSyst : 47|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Laengsbeschl : 48|10@1+ (0.03125,-16) [-15.96875|15.9375] "Unit_MeterPerSeconSquar" XXX + SG_ BR8_Sta_ADR_BR : 58|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Quattro : 59|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_VerzReg : 60|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_BLS : 61|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Verz_EPB : 62|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Check_EPB : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 928 Bremse_10: 8 XXX + SG_ B10_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX + SG_ B10_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX + SG_ B10_QB_Wegimp_VL : 12|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Wegimp_VR : 13|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Wegimp_HL : 14|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Wegimp_HR : 15|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Wegimp_VL : 16|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_Wegimp_VR : 26|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_Wegimp_HL : 36|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_Wegimp_HR : 46|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_QB_Fahrtr_VL : 56|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Fahrtr_VR : 57|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Fahrtr_HL : 58|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Fahrtr_HR : 59|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_VL : 60|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_VR : 61|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_HL : 62|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_HR : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 835 RDK_Status: 3 XXX + SG_ RKS_Reifen_VL : 0|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_VR : 1|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_HL : 2|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_HR : 3|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_RR : 4|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Warnung_2 : 5|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Warnung_1 : 6|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Systemfehler : 7|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Kalibrier_abgew : 8|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Druckdiff_Vorn : 9|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Druckdiff_Hinten : 10|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Befuellung_RR_low : 11|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Funkstoerung : 12|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_System_Aus : 13|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_KD_Fehler : 15|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Lampe : 16|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Ton : 17|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Gong : 18|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_RDK_Blinkbit : 19|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Teillast : 20|1@1+ (1,0) [0|1] "" XXX + +BO_ 914 Gate_Komf_2: 8 XXX + SG_ GK2_Sta_LSM : 0|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Lichtsensor : 1|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_VSG : 3|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Schluessel : 4|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Profil : 5|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Clima2 : 6|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_BSG4 : 7|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Kessy_4 : 8|1@1+ (1,0) [0|1] "" XXX + SG_ BS4_Gleitende_Leuchtw_Anf : 9|1@1+ (1,0) [0|1] "" XXX + SG_ BS4_GLW_Fernlicht_Anf : 10|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Blk_L_Kontrolle : 11|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Blk_R_Kontrolle : 12|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_LS_KomFehler : 14|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_LS_def : 15|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Helligkeit : 16|3@1+ (714.286,0) [0|5000.002] "Unit_Lux" XXX + SG_ GK2_VD_zu_ver : 19|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_VD_entriegelt : 20|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_VD_offen_ver : 21|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Verdeck_Anf : 22|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_VDKD_auf : 23|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Schluessel : 24|4@1+ (1,0) [0|15] "" XXX + SG_ GK2_Hardtop : 28|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_AFL_Schalter : 29|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Nebelschluss : 30|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_EM_LIN_ungueltig : 31|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Profil : 32|4@1+ (1,0) [0|15] "" XXX + SG_ GK2_Kl_StSt_Info : 36|2@1+ (1,0) [0|3] "" XXX + SG_ GK2_BSG_StSt_Info : 38|2@1+ (1,0) [0|3] "" XXX + SG_ GK2_BEM_P_Generator : 40|8@1+ (50,0) [0|12700] "Unit_Watt" XXX + SG_ GK2_BEM_Abschaltstufen : 48|3@1+ (1,0) [0|7] "" XXX + SG_ GK2_BEM_DFM : 51|5@1+ (3.225,0.025) [0.025|100] "Unit_PerCent" XXX + SG_ GK2_Kessy_StSt_Info : 56|2@1+ (1,0) [0|3] "" XXX + SG_ GK2_BEM_StSt_Info : 58|2@1+ (1,0) [0|3] "" XXX + +BO_ 954 SWA_1: 8 SWA + SG_ SWA_Textbits : 12|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Gong : 16|2@1+ (1,0) [0|3] "" XXX + SG_ SWA_Sta_passiv : 19|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Sta_aktiv : 20|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_KD_Fehler : 59|1@1+ (1,0) [0|1] "" XXX + +BO_ 1175 Parkhilfe_01: 8 XXX + SG_ PH_Abschaltursache : 13|3@1+ (1,0) [0|7] "" XXX + SG_ PH_Opt_Anzeige_V_ein : 16|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Opt_Anzeige_H_ein : 17|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Opt_Anz_V_Hindernis : 18|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Opt_Anz_H_Hindernis : 19|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Tongeber_V_aktiv : 20|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Tongeber_H_aktiv : 21|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Tongeber_mute : 22|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Anf_Audioabsenkung : 23|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Frequenz_hinten : 32|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Lautstaerke_hinten : 36|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Frequenz_vorn : 40|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Lautstaerke_vorn : 44|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Trigger_Bildaufschaltung : 48|1@1+ (1,0) [0|1] "" XXX + SG_ PH_StartStopp_Info : 49|2@1+ (1,0) [0|3] "" XXX + SG_ PH_Aufbauten_erk : 51|1@1+ (1,0) [0|1] "" XXX + SG_ PH_BerErk_vorn : 52|2@1+ (1,0) [0|3] "" XXX + SG_ PH_BerErk_hinten : 54|2@1+ (1,0) [0|3] "" XXX + SG_ PH_defekt : 56|1@1+ (1,0) [0|1] "" XXX + SG_ PH_gestoert : 57|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Systemzustand : 58|3@1+ (1,0) [0|7] "" XXX + SG_ PH_Display_Kundenwunsch : 61|2@1+ (1,0) [0|3] "" XXX + SG_ PH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 1463 Bremse_11: 8 XXX + SG_ B11_HydHalten : 13|1@1+ (1,0) [0|1] "" XXX + SG_ B11_Br_StSt_Info : 14|2@1+ (1,0) [0|3] "" XXX + SG_ B11_OBD_Nib_VL : 16|4@1+ (1,0) [0|15] "" XXX + SG_ B11_OBD_Nib_VR : 20|4@1+ (1,0) [0|15] "" XXX + SG_ B11_OBD_Nib_HL : 24|4@1+ (1,0) [0|15] "" XXX + SG_ B11_OBD_Nib_HR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ B11_EPB_Steller_akt : 32|1@1+ (1,0) [0|1] "" XXX + SG_ B11_EPB_Steller_gue : 33|1@1+ (1,0) [0|1] "" XXX + +BO_ 1500 Soll_Verbauliste_neu: 8 XXX + SG_ VL1_Motor_SG : 0|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Getr_SG : 1|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ABS : 2|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Kombi : 3|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_LSM : 4|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Airbag : 5|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Lenkhilfe : 6|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_dyn_LWR : 7|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_res_08 : 8|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Allrad : 9|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ADR : 10|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ADR_getrennt : 11|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_EPB : 12|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_res_13 : 13|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Daempfer : 14|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Quersperre : 15|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_MotorSlave : 16|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_SWA : 17|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_HCA : 18|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_RKA_Plus : 19|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_PLA : 20|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_WFS_KBI : 21|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Kombi_KBI : 22|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Soll_eq_Ist : 23|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_BSG_Komf : 24|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ZKE : 25|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_FT : 26|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_BT : 27|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_HL : 28|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_HR : 29|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Memory : 30|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Dachmodul_K : 31|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Zentralelektrik_II : 32|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_RDK : 33|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Lenksaeule : 34|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Gateway : 35|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Clima_Komf : 36|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Einparkhilfe : 37|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_PTC_Heizung : 38|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Standheiz : 39|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Verdeck : 40|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_RSE_I : 41|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_res_42 : 42|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_MDI_I : 43|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Anhaenger : 44|1@1+ (1,0) [0|1] "" SWA + SG_ VL1_Memory_BF : 45|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Easy_Entry_VF : 46|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Easy_Entry_VB : 47|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Heckdeckel : 48|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Rearview : 49|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Sonderfzg_SG : 50|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Tastenmodul : 51|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Kompass : 52|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_WFS_K : 53|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_GSM_Pager : 54|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_InfoElektronik : 55|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_DSP : 56|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_DAB : 57|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Telematik : 58|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Navigation : 59|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TV_Tuner : 60|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Neigungsmodul_I : 61|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Radio : 62|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Telefon : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 1490 Ident: 8 XXX + SG_ IDT_Mux M : 0|2@1+ (1,0) [0|2] "" XXX + SG_ IDT_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 2000 Diagnose_1: 8 XXX + SG_ DI1_VerlernZaehl : 0|8@1+ (1,0) [0|254] "" XXX + SG_ DI1_km_Stand : 8|20@1+ (1,0) [0|1048575] "Unit_KiloMeter" XXX + SG_ DI1_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" XXX + SG_ DI1_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" XXX + SG_ DI1_Tag : 39|5@1+ (1,0) [0|31] "Unit_Day" XXX + SG_ DI1_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" XXX + SG_ DI1_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" XXX + SG_ DI1_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" XXX + SG_ DI1_KM_Stand_alt : 62|1@1+ (1,0) [0|1] "" XXX + SG_ DI1_Zeit_alt : 63|1@1+ (1,0) [0|1] "" XXX + +CM_ SG_ 80 Checksumme_Airbag_1 "Checksum Airbag_1"; +CM_ SG_ 80 Zaehler_Airbag_1 "Counter Airbag_1"; + +CM_ SG_ 210 LM_Offset "centiNewton-meters for ease of calculation without FP math in Panda"; +CM_ SG_ 210 Vib_Amp "Steering wheel haptic, amplitude"; +CM_ SG_ 210 Vib_Freq "Steering wheel haptic, frequency"; + +CM_ SG_ 416 Zaehler_Bremse_1 "Counter Bremse_1"; + +CM_ SG_ 640 inneres_Motor_Moment "Engine Indicated Torque"; +CM_ SG_ 640 Fahrerwunschmoment "Driver Requested Torque"; +CM_ SG_ 640 mechanisches_Motor_Verlustmomen "Mechanical Torque Loss"; +CM_ SG_ 640 Fahrpedalwert_oder_Drosselklapp "Accelerator Pedal or Throttle Position"; +CM_ SG_ 640 Motordrehzahl "Engine Speed"; +CM_ SG_ 640 Momentenangaben_ungenau "Approximate Torque Values"; +CM_ SG_ 640 inneres_Motor_Moment_ohne_exter "Inner torque without external"; + +CM_ SG_ 644 MOB_CHECKSUM "Checksum MOB"; +CM_ SG_ 644 MOB_COUNTER "Counter MOB"; + +CM_ SG_ 648 Minimales_Motormoment_bei_Zuend "Minimum Torque Adjustment"; +CM_ SG_ 648 Begrenzungsmoment "Maximum Inner Torque"; +CM_ SG_ 648 Bremstestschalter "Brake Test Switch"; +CM_ SG_ 648 Soll_Geschwindigkeit_bei_GRA_Be "Desired Vehicle Speed"; +CM_ SG_ 648 Bremslichtschalter "Brake Light Switch"; +CM_ SG_ 648 Leerlaufsolldrehzahl__Motor_2_ "Target Idle Speed"; +CM_ SG_ 648 Fahrzeuggeschwindigkeit "Vehicle Speed"; +CM_ SG_ 648 Kuehlmitteltemperatur__Motor_2_ "Coolant Temperature"; + +CM_ SG_ 896 Drosselklappenpoti "Throttle Position"; +CM_ SG_ 896 Motor_Wunschdrehzahl "Desired engine speed"; +CM_ SG_ 896 Motordrehzahlbeeinflussung "Shift Target Influence"; +CM_ SG_ 896 Fahrpedal_Rohsignal "Accelerator Pedal Position"; +CM_ SG_ 896 Ansauglufttemperatur "Intake Air Temperature"; +CM_ SG_ 896 Kein_E_Gas "ETB flag"; +CM_ SG_ 896 Kein_Start_Stop "Start/stop flag"; +CM_ SG_ 896 Rad_Wunschmoment "Desired wheel torque"; + +CM_ SG_ 912 GK1_Fa_Tuerkont "Status of the driver's door rotary latch"; +CM_ SG_ 912 BSK_HL_geoeffnet "Status of the rear left door rotary latch"; +CM_ SG_ 912 BSK_HR_geoeffnet "Status of the rear right door rotary latch"; +CM_ SG_ 912 BSK_BT_geoeffnet "Status of the passenger door rotary latch"; +CM_ SG_ 912 BSK_HD_Hauptraste "Status of trunk lid main detent"; + +CM_ SG_ 1088 Zaehler_Getriebe_1 "Counter Getriebe_1"; +CM_ SG_ 1088 Waehlhebelposition__Getriebe_1_ "Gear Selector Position"; +CM_ SG_ 1088 inneres_Soll_Motormoment "Desired Inner Torque"; +CM_ SG_ 1088 Gang_eingelegt "Gear Engaged"; +CM_ SG_ 1088 Schaltabsicht "Shift Intent"; +CM_ SG_ 1088 Kuehlleistung "Cooling Power"; +CM_ SG_ 1088 Wandlerverlustmoment "Converter Torque Loss"; +CM_ SG_ 1088 Getriebe_Notlauf "Transmission_Notlauf"; +CM_ SG_ 1088 Zielgang_oder_eingelegter_Gang "target_gear_or_gear_in_engagement"; +CM_ SG_ 1088 Uebertragungsfunktion "transfer function"; +CM_ SG_ 1088 EGS_Anforderung "EGS Requirement"; +CM_ SG_ 1088 Schaltung_aktiv__Getriebe_1_ "Shift Activity"; + +CM_ SG_ 1056 Fehlerstatus_Aussentemp__4_1 "ambient temp error"; +CM_ SG_ 1056 Fehlerstatus_Oeltemperatur_4_1 "oil temp error"; +CM_ SG_ 1056 Fehlerst__Kuehlmitteltemp__4_1 "water temp error"; +CM_ SG_ 1056 Aussentemperatur_gefiltert "outside temp, filtered"; +CM_ SG_ 1056 Oeltemperatur_4_1 "kombi oil temperature"; +CM_ SG_ 1056 Kuehlmitteltemp__4_1__Kombi_2_ "kombi coolant temperature"; + +CM_ SG_ 1096 Zaehler_Waehlhebel_1 "Counter Waehlhebel_1"; + +CM_ SG_ 1152 CHECKSUM "Checksum Motor_5"; +CM_ SG_ 1152 Anlasser_Ausspuren "Starter Disable"; +CM_ SG_ 1152 Anlasser_Freigabe "Starter Release"; +CM_ SG_ 1152 Klimadrucksignal__Motor_5_ "Air conditioning pressure signal"; +CM_ SG_ 1152 Kraftstoffverbrauchssignal "Fuel consumption signal"; +CM_ SG_ 1152 K_hlerluefteransteuerung "Cooling fan control signal"; +CM_ SG_ 1152 Klimakompressor_Leistungsreduzi "Air conditioning compressor power reduction flag"; +CM_ SG_ 1152 Klimakompressor_aus__Motor_5_ "Air conditioning compressor"; +CM_ SG_ 1152 Anlasser_Freigabe "Starter release"; +CM_ SG_ 1152 OBD_2_Lampe "OBD light"; +CM_ SG_ 1152 E_Gas_Lampe "ETB light"; +CM_ SG_ 1152 Ladekontroll_Lampe "Charge light"; +CM_ SG_ 1152 Vorgluehlampe__Motor_5_ "Glow light"; + +CM_ SG_ 1160 Zaehler_Motor_6 "Counter Motor_6"; +CM_ SG_ 1160 Hoeheninfo__Motor_6_ "Altitude Correction"; +CM_ SG_ 1160 Istmoment_f_r_Getriebe "Actual torque for gear"; +CM_ SG_ 1160 Sollmoment_f_r_Getriebe "Target torque for gearbox"; +CM_ SG_ 1160 Checksumme_Motor_6 "Checksum Motor_6"; +CM_ SG_ 1160 GRA_Sollbeschleunigung "GRA target acceleration"; +CM_ SG_ 1160 Ruckmeldung_Momenten "Feedback torque-integral gear intervention"; + +CM_ SG_ 1344 Zahler_Getriebe_2 "Counter Getriebe_2"; +CM_ SG_ 1344 Hochschaltlampe "Upshift Flag"; + +CM_ SG_ 1386 ACA_V_Wunsch "255=unset"; + +CM_ SG_ 1408 Zaehler_Motor_Flexia "Counter Motor_Flexia"; +CM_ SG_ 1408 Verbrennungsart "Type of combustion"; +CM_ SG_ 1408 Max_Drehmoment "Maximum torque"; +CM_ SG_ 1408 Drehzahl_MaxNorm "RPM of maximum torque"; +CM_ SG_ 1408 Hubraum "Displacement"; +CM_ SG_ 1408 Anzahl_Zylinder "Number of cylinders"; +CM_ SG_ 1408 Anzahl_Ventile "Number of valves"; +CM_ SG_ 1408 Ansaugsystem "Induction System"; +CM_ SG_ 1408 Motorleistung "Maximum engine power"; + +CM_ SG_ 1416 Ladedruck "Boost Pressure"; +CM_ SG_ 1416 Motordrehzahlgradient "Engine speed gradient"; +CM_ SG_ 1416 Hoeheninfo__Motor_7_ "Altitude correction factor"; +CM_ SG_ 1416 Oltemperatur "Oil temperature"; + +CM_ SG_ 1470 LDW_Direction "0=right,1=left"; +CM_ SG_ 1470 XX_DLCORTLC1 "Might be DLC or TLC"; +CM_ SG_ 1470 XX_DLCORTLC2 "Might be DLC or TLC, might have wrong size"; + +CM_ SG_ 1550 MFA_v_Signal_02 "0=km/h, 1=mph"; + +VAL_ 870 AWV_Text 0 "kein_Text" 1 "FrontAssist_aus" 2 "FrontAssist_startet" 3 "FrontAssist_Warnung" 4 "FrontAssist_Sens_reinig" 5 "FrontAssist_Failure" 6 "FrontAssist_Demo" 7 "Vorhalt" 8 "Bremsung_wird_gerade_durchgefuehrt" 9 "Sensor_not_verfuegbar" 10 "Sensor_reinigen" 11 "Service_notwendig_Failure" 12 "Funktion_vom_Fahrer_deactivated" 13 "Funktion_vom_Fahrer_activated" 14 "FrontAssist_zur_Zeit_not_verfuegbar__rev_Failure"; +VAL_ 870 AWV_1_Freigabe 0 "nicht_freigegeben" 1 "freigegeben"; +VAL_ 870 AWV_1_Prefill 0 "keine_Prefill_Anf" 1 "Prefill_Anf"; +VAL_ 870 AWV_1_Parameter 0 "Defaultparametersatz" 1 "Par_leicht_erh_Empf" 2 "Par_erh_Empf" 3 "Par_hoechster_Empf"; +VAL_ 870 AWV_only 0 "ACC_und_AWV_verbaut" 1 "AWV_ohne_ACC_verbaut"; +VAL_ 870 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich"; +VAL_ 870 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten"; +VAL_ 870 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben"; +VAL_ 870 AWV_2_Status 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 870 AWV_2_Fehler 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 870 AWV_2_SU_Warnzeit 0 "frueh" 1 "normal" 2 "spaet" 3 "adaptiv"; +VAL_ 870 AWV_2_SU_Bremsruck 0 "Bremsruck_deaktiviert" 1 "Bremsruck_aktiviert"; +VAL_ 870 AWV_2_SU_Gong 0 "Gong_deaktiviert" 1 "Gong_aktiviert"; +VAL_ 870 AWV_2_SU_Lampe 0 "Lampe_deaktiviert" 1 "Lampe_aktiviert"; +VAL_ 870 AWV_2_Umfeldwarn 0 "keine_Warnung" 1 "Warnung"; +VAL_ 870 AWV_2_Freigabe 0 "keine_Ruckfreigabe" 1 "Ruckfreigabe"; +VAL_ 870 AWV_2_Ruckprofil 0 "kein_Ruck" 1 "Ruckprofil_1" 2 "Ruckprofil_2" 3 "Ruckprofil_3" 4 "Ruckprofil_4" 5 "Ruckprofil_5" 6 "not_erlaubt" 7 "not_erlaubt"; +VAL_ 870 AWV_2_Warnton 0 "Aus" 1 "Ein"; +VAL_ 870 AWV_2_Warnsymbol 0 "Aus" 1 "Ein"; +VAL_ 870 AWV_Infoton 0 "Aus" 1 "Ein"; +VAL_ 870 AWV_2_Gurtstraffer 0 "Gurt_not_straffen" 1 "Gurt_straffen"; +VAL_ 870 AWV_Konfiguration_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; +VAL_ 870 AWV_Konfiguration_Vorw_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; +VAL_ 870 AWV_Konfiguration_Status 0 "AWV_inaktiv" 1 "AWV_aktiv"; +VAL_ 870 AWV_Konfiguration_Vorw_Status 0 "AWV_Vorwarnung_inaktiv" 1 "AWV_Vorwarnung_aktiv"; +VAL_ 870 AWV_2_Abstandswarnung 0 "kein_Warnhinweis" 1 "Warnhinweis"; +VAL_ 870 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben"; +VAL_ 870 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv"; + +VAL_ 872 ACS_Sta_ADR 2 "ADR_passiv" 0 "ADR_nicht_aktiv" 1 "ADR_aktiv" 3 "irrev_Fehler" ; +VAL_ 872 ACS_ADR_Schub 1 "Verz_begr_auf_Schub" 0 "Verz_nicht_begr_auf_Schub" ; +VAL_ 872 ACS_Schubabsch 1 "SA_nicht_zulaessig" 0 "SA_zulaessig" ; +VAL_ 872 ACS_StSt_Info 3 "Systemfehler" 0 "Motorlauf_nn" 1 "Stoppverbot_Motoranlauf_nn" 2 "Motoranlauf_notwendig" ; +VAL_ 872 ACS_MomEingriff 1 "MomEingr_verhindern" 0 "keine_Beeinfl_MomEingr_Mot" ; +VAL_ 872 ACS_Typ_ACC 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 3 "frei" 2 "frei" ; +VAL_ 872 ACS_FreigSollB 0 "Sollbeschl_nicht_freigeg" 1 "Sollbeschl_freigeg" ; +VAL_ 872 ACS_Sollbeschl 2046 "ADR_nicht_aktiv" 2047 "Fehler" ; +VAL_ 872 ACS_Anhaltewunsch 0 "kein_Haltewunsch" 1 "Fzg_haelt_an" ; +VAL_ 872 ACS_Fehler 1 "Fehlerspeichereintrag" 0 "kein_Fehlerspeichereintrag" ; +VAL_ 872 ACS_zul_Regelabw 254 "ADR_nicht_aktiv" 255 "Fehler" ; +VAL_ 872 ACS_max_AendGrad 254 "Neutralwert" 0 "Neutralwert" 255 "Fehler" ; + +VAL_ 978 LH2_Sta_HCA 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active"; +VAL_ 1088 Waehlhebelposition__Getriebe_1_ 8 "P" 7 "R" 6 "N" 5 "D" 9 "U" 12 "S" 14 "T" 10 "T" 11 "T"; + +VAL_ 1386 ACA_StaACC 6 "ACC_rev_aus" 0 "Hauptschalter_aus" 4 "ACC_im_Hintergrund" 3 "ACC_aktiv" 1 "Reserve" 2 "ACC_passiv" 7 "ACC_irrev_aus" 5 "frei" ; +VAL_ 1386 ACA_ID_StaACC 0 "keine_Anzeige" ; +VAL_ 1386 ACA_Fahrerhinw 1 "Ein" 0 "Aus" ; +VAL_ 1386 ACA_AnzDisplay 1 "Anzeige_erw" 0 "Anzeige_nicht_erw" ; +VAL_ 1386 ACA_Zeitluecke 3 "Zeitluecke3" 10 "Zeitluecke10" 4 "Zeitluecke4" 14 "Zeitluecke14" 11 "Zeitluecke11" 2 "Zeitluecke2" 13 "Zeitluecke13" 9 "Zeitluecke9" 1 "Zeitluecke1" 8 "Zeitluecke8" 5 "Zeitluecke5" 15 "Zeitluecke15" 0 "nicht_definiert" 12 "Zeitluecke12" 6 "Zeitluecke6" 7 "Zeitluecke7" ; +VAL_ 1386 ACA_V_Wunsch 255 "kein_Wert_im_Speicher" ; +VAL_ 1386 ACA_kmh_mph 0 "km_h" 1 "mph" ; +VAL_ 1386 ACA_Akustik1 0 "kein_Gong" 1 "Gong" ; +VAL_ 1386 ACA_Akustik2 0 "kein_Summer" 1 "Summer" ; +VAL_ 1386 ACA_PrioDisp 1 "mittlere_Prio" 3 "keine_Anzeige_Anf" 0 "hohe_Prio" 2 "niedrige_Prio" ; +VAL_ 1386 ACA_gemZeitl 6 "Zeitluecke6" 2 "Zeitluecke2" 7 "Zeitluecke7" 13 "Zeitluecke13" 11 "Zeitluecke11" 4 "Zeitluecke4" 8 "Zeitluecke8" 12 "Zeitluecke12" 10 "Zeitluecke10" 0 "Kein_Objekt_erfasst" 1 "Zeitluecke1" 3 "Zeitluecke3" 9 "Zeitluecke9" 15 "Zeitluecke15" 14 "Zeitluecke14" 5 "Zeitluecke5" ; +VAL_ 1386 ACA_ACC_Verz 0 "ACC_verzoegert_nicht" 1 "ACC_verzoegert" ; +VAL_ 1386 ACA_StaGRA 3 "GRA_aktiv" 4 "GRA_uebertreten" 2 "GRA_passiv" 0 "Hauptschalter_aus" 6 "frei" 7 "GRA_Fehler" 1 "Reserve" 5 "frei" ; +VAL_ 1386 ACA_ID_StaGRA 0 "keine_Anzeige" ; +VAL_ 1386 ACA_Codierung 0 "ACC" 1 "GRA" ; +VAL_ 1386 ACA_Tachokranz 0 "nicht_beleuchtet" 1 "beleuchtet" ; +VAL_ 1386 ACA_Aend_Zeitluecke 1 "Anzeige_angef" 0 "keine_Anzeige" ; + +VAL_ 1472 EP1_Fehler_Sta 0 "volle_Funktion" 1 "linke_Seite_fehlerhaft" 2 "rechte_Seite_fehlerhaft" 3 "beide_Seiten_fehlerhaft"; +VAL_ 1472 EP1_Sta_EPB 0 "Bremse_geoeffnet" 1 "Bremse_geschlossen"; +VAL_ 1472 EP1_Sta_Schalter 0 "volle_Funktion" 1 "Schalter_ausser_Funktion"; +VAL_ 1472 EP1_Spannkraft 31 "Fehler"; +VAL_ 1472 EP1_Schalterinfo 0 "keine_Fahreranforderung" 1 "Fahreranforderung_oeffnen" 2 "Fahreranforderung_schliessen" 3 "Schalterfehler"; +VAL_ 1472 EP1_Sta_NWS 0 "volle_Funktion" 1 "keine_Funktion"; +VAL_ 1472 EP1_Fehlereintr 0 "kein_Fehlerspeichereintrag" 1 "Fehlerspeichereintrag"; +VAL_ 1472 EP1_Freigabe_Ver 0 "Verzoegerungsanf_nicht_freigegeb" 1 "Verzoegerungsanf_freigegeben"; +VAL_ 1472 EP1_AutoHold_zul 0 "Pers_nicht_zulaessig" 1 "Pers_zulaessig"; +VAL_ 1472 EP1_AutoHold_aktiv 0 "nein" 1 "ja"; +VAL_ 1472 EP1_SleepInd 0 "CAN_wird_benoetigt" 1 "Sleep_bereit"; +VAL_ 1472 EP1_Status_Kl_15 0 "Kl_15_aus" 1 "Kl_15_ein"; +VAL_ 1472 EP1_Lampe_AutoP 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1_Bremslicht 0 "Aus" 1 "Ein"; +VAL_ 1472 EP1_Warnton1 0 "Aus" 1 "Ein"; +VAL_ 1472 EP1_Warnton2 0 "Aus" 1 "Ein"; +VAL_ 1472 EP1_AnfShLock 0 "Aus" 1 "Ein"; +VAL_ 1472 EPB_Autoholdlampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1_QualNeigWi 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1472 EP1_KuppModBer 0 "Kuppsensor_aus_Modbereich" 1 "Kupplsensor_im_Modbereich" 2 "Sensorsignal_ungenau" 3 "Sensor_defekt"; +VAL_ 1472 EP1_HydrHalten 0 "Fzg_nicht_hydr_geh" 1 "Fzg_hydr_geh"; +VAL_ 1472 EP1_Fkt_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1_Warnton 0 "Warnton_aus" 1 "Warnton_an"; +VAL_ 1472 EP1_Fehler_BKL 0 "BKL_aus" 1 "BKL_an"; +VAL_ 1472 EP1_Fehler_gelb 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1__Text 0 "kein_Text" 1 "Text_1" 2 "Text_2" 3 "Text_3" 4 "Text_4" 5 "Text_5" 6 "reserviert" 7 "reserviert" 8 "Text_8"; diff --git a/opendbc_repo/opendbc/dbc/vw_meb.dbc b/opendbc_repo/opendbc/dbc/vw_meb.dbc new file mode 100644 index 0000000000..98125aaa69 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/vw_meb.dbc @@ -0,0 +1,3408 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: BAP_Tester BedienDisp_vo BedienSG_hi CGS DDA Gateway Gateway_PAG GurtMikrofon OTA_FC ZR_High ZR_LIMU ZR_MIB_TOP_ab_Gen3 ZR_Standard + + +BO_ 64 Airbag_01: 8 Gateway + SG_ Airbag_01_CRC : 0|8@1+ (1,0) [0|255] "" AWC,BMC_MLBevo,BMS_NV,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,DCDC_IHEV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,Sub_Gateway + SG_ Airbag_01_BZ : 8|4@1+ (1,0) [0|15] "" AWC,BMC_MLBevo,BMS_NV,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,DCDC_IHEV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,Sub_Gateway + SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" FCU_MLBevo_FCEV,Sub_Gateway,TME + SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway,TME + SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Deaktivierung_HV : 42|3@1+ (1,0) [0|7] "" AWC,BMC_MLBevo,BMS_NV,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,DCDC_IHEV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,Sub_Gateway,TME + SG_ AB_EDR_Trigger : 45|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ AB_Belegung_VF : 47|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ SC_Masterzeit_Offset : 53|2@1+ (5.08,0) [0|15.24] "Unit_Secon" FCU_MLBevo_FCEV,Sub_Gateway + SG_ SC_LowSpeedCrashErkannt : 55|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV,Sub_Gateway + SG_ SC_Masterzeit : 57|7@1+ (0.04,0) [0|5.04] "Unit_Secon" FCU_MLBevo_FCEV,Sub_Gateway + +BO_ 134 LWI_01: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" ZR_High + SG_ LWI_MFL_Abschaltung : 14|1@1+ (1,0) [0|1] "" ZR_High + SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ LWI_Lenkradwinkel : 16|13@1+ (0.0843,0) [0|800] "Unit_DegreOfArc" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" OTA_FC,ZR_High + SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 159 LH_EPS_03: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX + SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX + SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 167 Motor_11: 8 Motor_Diesel_MQB + SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB + SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 168 Motor_12: 8 Motor_Diesel_MQB + SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + +BO_ 173 Getriebe_11: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "" Vector__XXX + SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "" Vector__XXX + SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" Vector__XXX + SG_ GE_Fahrstufe : 42|4@1+ (1,0) [0|15] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ GE_reserv_Fahrstufe : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GE_Schaltablauf : 47|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ GE_Uefkt_unplausibel : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GE_MMom_Status_02 : 50|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ GE_Status_Kraftschluss : 53|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" OTA_FC,ZR_High + +BO_ 184 EM1_HYB_13: 8 Gateway + SG_ EM1_Freigabe_Info_WFS : 12|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_Sperr_Info_WFS : 13|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_AR_aktiv : 14|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_Eta_Sys : 15|9@1+ (0.2,0) [0|101.8] "Unit_PerCent" Sub_Gateway + SG_ EM1_IstStrom : 24|11@1+ (1,-1023) [-1023|1022] "Unit_Amper" Sub_Gateway + SG_ EM1_Fehler_ElAntriebFreilauf_Anf : 35|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_Abregelung_Temperatur : 36|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_AnlernenElMotor_Anf : 43|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_Moment_HVVerbraucher : 44|10@1+ (1,-511) [-511|511] "Unit_NewtoMeter" Sub_Gateway + SG_ EM1_Freigabe_Verfallsinfo_WFS : 55|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ EM1_Parken_WFS_Status : 56|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ EM1_HV_betriebsbereit : 58|1@1+ (1,0) [0|1] "" Sub_Gateway + +BO_ 190 MEB_HVEM_01: 48 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Engine_RPM_Max : 12|14@1+ (2,-9658) [0|15] "RPM" XXX + SG_ Engine_RPM_Min : 26|14@1+ (2,-10300) [0|63] "RPM" XXX + SG_ In_Motion_04 : 48|3@1+ (1,0) [0|7] "" XXX + SG_ In_Motion_03 : 52|1@0+ (1,0) [0|1] "" XXX + SG_ In_Motion_02 : 54|1@0+ (1,0) [0|1] "" XXX + SG_ Engine_Power : 56|12@1+ (0.5,-1023) [0|255] "kW" XXX + SG_ In_Motion : 68|1@1+ (1,0) [0|3] "" XXX + SG_ Standstill : 71|1@0+ (1,0) [0|1] "" XXX + SG_ Unknown_04 : 72|10@1+ (1,0) [0|255] "" XXX + SG_ Battery_Voltage : 86|12@1+ (0.2,0) [0|3] "Volt" XXX + SG_ Unknown_01 : 100|9@1+ (1,0) [0|7] "" XXX + SG_ Battery_Voltage_02 : 113|11@1+ (0.24,0) [0|127] "Volt" XXX + SG_ Engine_Status : 296|2@1+ (1,0) [0|3] "" XXX + SG_ Inactive : 300|1@0+ (1,0) [0|1] "" XXX + SG_ Inactive_02 : 303|1@0+ (1,0) [0|1] "" XXX + +BO_ 192 EM1_01: 32 XXX + SG_ Schubbetrieb : 79|1@0+ (1,0) [0|1] "" XXX + +BO_ 219 AWV_03: 48 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ FCW_Active : 64|1@0+ (1,0) [0|1] "" XXX + SG_ Pre_Brake_Fill : 76|1@0+ (1,0) [0|1] "" XXX + +BO_ 247 MEB_HVEM_02: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_3 : 44|10@1+ (1,0) [0|7] "" XXX + SG_ NEW_SIGNAL_2 : 54|7@1+ (1,0) [0|3] "" XXX + +BO_ 252 ESC_51: 48 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AEB_Breaking_01 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ AEB_Breaking_02 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ Accelerator_Higher_Speed : 40|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_Pressure : 42|9@1+ (0.195,0) [0|100] "Unit_Percent" XXX + SG_ HL_Radgeschw : 64|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX + SG_ HR_Radgeschw : 80|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX + SG_ VL_Radgeschw : 96|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX + SG_ VR_Radgeschw : 112|16@1+ (0.0075,0) [0|491.5125] "Unit_KilometerPerHour" XXX + SG_ HL_Brake_Pressure : 152|8@1+ (1,0) [0|100] "" XXX + SG_ HR_Brake_Pressure : 160|8@1+ (1,0) [0|100] "" XXX + SG_ VL_Brake_Pressure : 168|8@1+ (1,0) [0|100] "" XXX + SG_ VR_Brake_Pressure : 176|8@1+ (1,0) [0|100] "" XXX + SG_ Steering_Wheel_CW : 184|8@1+ (1.67,0) [0|255] "" XXX + SG_ Steering_Wheel_CCW : 192|8@1+ (1.67,0) [0|255] "" XXX + +BO_ 253 ESP_21: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "" Vector__XXX + SG_ ESP_Diagnose : 23|1@1+ (1,0) [0|1] "" ZR_High + SG_ ESC_v_Signal_Qualifier_High_Low : 24|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ ESP_Vorsteuerung : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ OBD_Schlechtweg : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ OBD_QBit_Schlechtweg : 31|1@1+ (1,0) [0|1] "" ZR_High + SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0|655.32] "Unit_KiloMeterPerHour" BedienSG_hi,DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ASR_Tastung_passiv : 48|1@1+ (1,0) [0|1] "" OTA_FC + SG_ ESP_Tastung_passiv : 49|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ ESP_Systemstatus : 50|1@1+ (1,0) [0|1] "" OTA_FC + SG_ ASR_Schalteingriff : 51|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_QBit_v_Signal : 55|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ABS_Bremsung : 56|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ ASR_Anf : 57|1@1+ (1,0) [0|1] "" ZR_High + SG_ MSR_Anf : 58|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ EBV_Eingriff : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EDS_Eingriff : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingriff : 61|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ ESP_ASP : 62|1@1+ (1,0) [0|1] "" ZR_High + SG_ ESC_Neutralschaltung : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 258 ESC_50: 48 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Lateral_Accel : 16|8@1+ (0.15,-18.9) [0|255] "Unit_MeterPerSquareSecond" XXX + SG_ Longitudinal_Accel : 24|10@1+ (0.03125,-16) [0|255] "Unit_MeterPerSquareSecond" XXX + SG_ Yaw_Rate : 40|14@1+ (0.01,0) [0|16383] "Unit_DegreePerSecond" XXX + SG_ Yaw_Rate_Sign : 54|1@0+ (1,0) [0|1] "" XXX + SG_ Regen_Braking : 123|1@1+ (1,0) [0|7] "" XXX + SG_ Standstill : 171|1@0+ (1,0) [0|1] "" XXX + SG_ Longitudinal_Speed : 181|10@1+ (0.25,0) [0|255] "Unit_KilometerPerHour" XXX + +BO_ 261 VMM_01: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 13|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 40|2@1+ (1,0) [0|3] "" XXX + SG_ Brake : 53|7@1+ (1,0) [0|3] "" XXX + +BO_ 267 Motor_51: 32 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Accel_Pedal_Pressure : 12|9@1+ (0.4,0) [0|255] "" XXX + SG_ Accel_Low_Pressed_Support : 21|1@1+ (1,0) [0|7] "" XXX + SG_ TSK_Status : 88|3@1+ (1,0) [0|7] "" XXX + SG_ TSK_Limiter_ausgewaehlt : 95|1@1+ (1,0) [0|3] "" XXX + +BO_ 278 ESP_10: 8 Gateway_MQB + SG_ ESP_10_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_10_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 285 LH_EPS_02: 8 Gateway_D4C7 + SG_ EPS_02_CRC : 0|8@1+ (1,0) [0|255] "" SCU_D4 + SG_ EPS_02_BZ : 8|4@1+ (1,0) [0|15] "" SCU_D4 + SG_ EPS_Notlauf : 12|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ EPS_Lastinfo : 16|8@1+ (1,0) [0|253] "Unit_Amper" Vector__XXX + SG_ EPS_Unterstuetzungsleistung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" SCU_D4 + SG_ EPS_Drehzahlreserve : 32|7@1+ (10,0) [0|1000] "Unit_DegreOfArcPerSecon" SCU_D4 + SG_ EPS_VZ_Drehzahlreserve : 39|1@1+ (1,0) [0|1] "" SCU_D4 + SG_ EPS_Leistungsanforderung : 40|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 294 HCA_01: 8 Frontsensorik + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [18|30] "Unit_Hertz" Vector__XXX + SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX + SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar + SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ HCA_01_Enable : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Available : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Standby : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Request : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX + SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar + +BO_ 299 GRA_ACC_01: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" ZR_High + SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" ZR_High + SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_LIM_Taste_verfuegbar : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_Tip_Stufe_2 : 26|1@1+ (1,0) [0|1] "" ZR_High + SG_ GRA_ButtonTypeInfo : 27|3@1+ (1,0) [0|7] "" ZR_High + SG_ GRA_TravelAssist : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GRA_reserveByte4 : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GRA_reserveByte5 : 32|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ GRA_reserveByte6 : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ GRA_reserveByte7 : 48|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ GRA_reserveByte8 : 56|8@1+ (1,0) [0|255] "" Vector__XXX + +BO_ 312 IPA_01: 32 XXX + +BO_ 313 VMM_02: 32 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Brake_Pressed_1 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_Pressed_2 : 27|1@0+ (1,0) [0|1] "" XXX + SG_ AEB_Active : 31|1@0+ (1,0) [0|1] "" XXX + SG_ ESP_Hold : 35|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_Pressed_3 : 48|1@0+ (1,0) [0|1] "" XXX + SG_ FCW_Active : 56|1@1+ (1,0) [0|1] "" XXX + SG_ Brake_Pressure : 76|11@1+ (1,0) [0|100] "" XXX + +BO_ 317 QFK_01: 32 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_5 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_9 : 14|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_8 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ LatCon_HCA_Accept : 17|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_2 : 19|1@0+ (1,0) [0|1] "" XXX + SG_ LatCon_HCA_Status : 20|3@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 23|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_10 : 24|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 30|3@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_7 : 34|3@0+ (1,0) [0|1] "" XXX + SG_ Steering_Angle_VZ : 36|1@0+ (1,0) [0|1] "" XXX + SG_ Curvature : 40|15@1+ (6.7e-06,0) [0|65535] "" XXX + SG_ Curvature_VZ : 55|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 56|7@1+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_4 : 63|1@0+ (1,0) [0|1] "" XXX + SG_ Steering_Angle : 76|17@1+ (0.00906,0) [0|32767] "" XXX + +BO_ 319 PreCrash_02: 8 Gateway + SG_ PreCrash_02_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ PreCrash_02_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PreCrash_Charisma_FahrPr : 12|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PreCrash_Charisma_Status : 16|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ PreCrash_Schiebedach_schliessen : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PreCrash_Fenster_schliessen : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PreCrash_Blinken : 20|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ SC_PreSense_FCWP : 23|1@1+ (1,0) [0|1] "" NightVision + SG_ PreCrash_Tueren_Verriegeln : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PreCrash_Anforderung_AFR : 26|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ SC_PreCrash_LED : 29|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ PreCrash_FS_Pneumatik_ansteuern : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PreCrash_BFS_Pneumatik_ansteuern : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PreCrash_Fo_Pneumatik_ansteuern : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PreCrash_FS_Sitzlehne_verfahren : 34|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ PreCrash_BFS_Sitzlehne_verfahren : 37|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ PreCrash_Fo_Sitzlehne_verfahren : 40|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ PreCrash_FS_KSV_verfahren : 43|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PreCrash_BFS_KSV_verfahren : 47|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PreCrash_Fo_KSV_verfahren : 51|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ SC_PreCrash_Warnung : 56|4@1+ (1,0) [0|15] "" NightVision + SG_ SC_PreCrash_Texte : 60|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 332 Motor_54: 32 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Accelerator_Pressure : 175|8@0+ (0.391,-14.467) [0|100] "Unit_Percent" XXX + +BO_ 333 ACC_18: 32 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_DynErhoehung : 14|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anhalteweg : 64|11@1+ (0.01,0) [0|2046] "" XXX + SG_ ACC_Anforderung_HMS : 77|3@1+ (1,0) [0|7] "" XXX + SG_ SET_ME_0XFE : 80|8@1+ (1,0) [0|255] "" XXX + SG_ ACC_AKTIV_regelt : 90|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_0X1 : 92|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_0X9 : 232|4@1+ (1,0) [0|15] "" XXX + SG_ Speed : 236|11@1+ (0.1,0) [0|15] "" XXX + SG_ Accel_Boost : 248|6@1+ (1,0) [0|3] "" XXX + SG_ Reversing : 254|1@0+ (1,0) [0|1] "" XXX + +BO_ 339 MSG_HYB_30: 8 Gateway + SG_ MSG_HYB_30_CRC : 0|8@1+ (1,0) [0|255] "" Ladegeraet_Konzern + SG_ MSG_HYB_30_BZ : 8|4@1+ (1,0) [0|15] "" Ladegeraet_Konzern + SG_ MO_HVEM_Eskalation : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_ErwGrenzen_Anf : 13|1@1+ (1,0) [0|1] "" BMC_MLBevo + SG_ MO_Fehler_Notentladung_Anf : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_HVEM_MaxLeistung : 15|9@1+ (50,0) [0|25450] "Unit_Watt" Vector__XXX + SG_ MO_HVK_EmIstzustand : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ MO_HVK_AntriebFehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_MVK_Bordnetz_Anf : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_HVK_AntriebZustand : 41|3@1+ (1,0) [0|7] "" TME + SG_ MO_HVK_EmFehlerstatus : 44|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_MVK_AntriebFehlerstatus : 47|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_MVK_AntriebZustand : 50|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_MVK_EmFehlerstatus : 53|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_MVK_EmIstzustand : 56|8@1+ (1,0) [0|255] "" Vector__XXX + +BO_ 387 MEB_Camera_01: 64 XXX + SG_ NEW_SIGNAL_1 : 191|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 200|9@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 209|9@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_9 : 218|6@1+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_10 : 224|8@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_4 : 232|9@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_5 : 241|9@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_8 : 250|6@1+ (1,0) [0|63] "" XXX + SG_ Lane_Center_Offset : 256|12@1+ (0.001,-2.5) [0|255] "Unit_Meter" XXX + SG_ NEW_SIGNAL_6 : 268|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_7 : 280|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_11 : 292|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_12 : 304|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_13 : 320|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_14 : 332|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_15 : 344|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_16 : 356|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_17 : 368|10@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_18 : 384|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_19 : 396|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_20 : 408|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_21 : 420|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_22 : 432|5@1+ (1,0) [0|31] "" XXX + SG_ NEW_SIGNAL_23 : 448|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_24 : 460|12@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_25 : 472|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_26 : 484|12@1+ (1,0) [0|15] "" XXX + +BO_ 420 EA_01: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ EA_Parken_beibehalten_HMS : 12|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EA_Warnruckprofil : 28|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EA_eCall_Anf : 31|2@1+ (1,0) [0|3] "" ZR_High + SG_ EA_Funktionsstatus : 40|4@1+ (1,0) [0|15] "" ZR_High + SG_ EA_Gurtstraffer_Anf : 44|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EA_Anforderung_HMS : 48|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EA_Sollbeschleunigung : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" Vector__XXX + +BO_ 496 EA_02: 8 Gateway + SG_ EA_02_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ EA_02_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ EA_Texte : 12|4@1+ (1,0) [0|15] "" ZR_High + SG_ ACF_Lampe_Hands_Off : 16|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EA_Infotainment_Anf : 22|2@1+ (1,0) [0|3] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ EA_Tueren_Anf : 24|1@1+ (1,0) [0|1] "" ZR_High + SG_ EA_Innenraumlicht_Anf : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ zFAS_Warnblinken : 26|2@1+ (1,0) [0|3] "" ZR_High + SG_ STP_Primaeranz : 28|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EA_Bremslichtblinken : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EA_Blinken : 32|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EA_Unknown : 60|3@0+ (1,0) [0|7] "" XXX + +BO_ 517 SAM_01: 8 XXX + SG_ Brake_Light : 36|1@0+ (1,0) [0|1] "" XXX + SG_ Left_Blinker : 37|1@0+ (1,0) [0|1] "" XXX + SG_ Right_Blinker : 38|1@0+ (1,0) [0|1] "" XXX + +BO_ 518 Parken_01: 24 XXX + SG_ CHK : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AEB_Active : 16|1@0+ (1,0) [0|1] "" XXX + +BO_ 522 EML_06: 64 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Yaw_Rate_VZ : 33|1@1+ (1,0) [0|1] "" XXX + SG_ Yaw_Rate : 200|16@1+ (0.007,-229.34) [0|255] "" XXX + +BO_ 564 MEB_Camera_02: 64 XXX + SG_ NEW_SIGNAL_1 : 12|6@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_2 : 18|6@1+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_3 : 24|6@1+ (1,0) [0|63] "" XXX + SG_ NEW_SIGNAL_4 : 30|6@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_7 : 178|13@1+ (1,0) [0|127] "" XXX + SG_ NEW_SIGNAL_6 : 192|12@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_8 : 286|9@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_5 : 295|9@1+ (1,0) [0|255] "" XXX + +BO_ 588 MEB_Side_Assist_01: 16 XXX + SG_ Blind_Spot_Right : 12|7@1+ (1,0) [0|15] "" XXX + SG_ Blind_Spot_Left : 19|7@1+ (1,0) [0|15] "" XXX + SG_ Blind_Spot_Info_Right : 26|1@0+ (1,0) [0|1] "" XXX + SG_ Blind_Spot_Warn_Right : 27|1@0+ (1,0) [0|1] "" XXX + SG_ Blind_Spot_Info_Left : 29|1@0+ (1,0) [0|1] "" XXX + SG_ Blind_Spot_Warn_Left : 30|1@0+ (1,0) [0|1] "" XXX + SG_ Lower_Speed_01 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ Higher_Speed_01 : 33|1@0+ (1,0) [0|1] "" XXX + SG_ Higher_Speed_02 : 83|1@0+ (1,0) [0|1] "" XXX + SG_ Lower_Speed_02 : 84|1@0+ (1,0) [0|1] "" XXX + SG_ Standstill : 86|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 98|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_6 : 119|1@0+ (1,0) [0|1] "" XXX + +BO_ 589 MEB_Side_Assist_02: 64 XXX + SG_ Unknown_01 : 100|3@0+ (1,0) [0|7] "" XXX + SG_ Unknown_02 : 108|3@0+ (1,0) [0|7] "" XXX + +BO_ 591 MEB_Distance_01: 64 XXX + SG_ Unknown_01 : 12|1@0+ (1,0) [0|1] "" XXX + SG_ Distance_Status : 13|2@1+ (1,0) [0|3] "" XXX + SG_ Same_Lane_01_ObjectID : 16|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX + SG_ Left_Lane_01_ObjectID : 22|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX + SG_ Right_Lane_01_ObjectID : 28|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX + SG_ Same_Lane_02_ObjectID : 34|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX + SG_ Left_Lane_02_ObjectID : 40|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX + SG_ Right_Lane_02_ObjectID : 46|6@1+ (1,0) [0|63] "Unit_ObjectID" XXX + SG_ Unknown_02 : 52|2@1+ (1,0) [0|3] "" XXX + SG_ Unknown_03 : 54|10@1+ (1,0) [0|3] "" XXX + SG_ Same_Lane_01_Long_Distance : 64|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX + SG_ Same_Lane_01_Lat_Distance : 76|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX + SG_ Same_Lane_01_Rel_Velo : 86|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX + SG_ Left_Lane_01_Long_Distance : 96|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX + SG_ Left_Lane_01_Lat_Distance : 108|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX + SG_ Left_Lane_01_Rel_Velo : 118|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX + SG_ Right_Lane_01_Long_Distance : 128|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX + SG_ Right_Lane_01_Lat_Distance : 140|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX + SG_ Right_Lane_01_Rel_Velo : 150|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX + SG_ Same_Lane_02_Long_Distance : 160|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX + SG_ Same_Lane_02_Lat_Distance : 172|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX + SG_ Same_Lane_02_Rel_Velo : 182|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX + SG_ Left_Lane_02_Long_Distance : 192|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX + SG_ Left_Lane_02_Lat_Distance : 204|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX + SG_ Left_Lane_02_Rel_Velo : 214|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX + SG_ Right_Lane_02_Long_Distance : 224|12@1+ (0.07,-6) [0|300] "Unit_Meter" XXX + SG_ Right_Lane_02_Lat_Distance : 236|10@1+ (0.065,-33.28) [-50|50] "Unit_Meter" XXX + SG_ Right_Lane_02_Rel_Velo : 246|10@1+ (0.25,-128) [-100|100] "Unit_MeterPerSecond" XXX + SG_ Unknown_04 : 256|8@1+ (1,-128) [0|31] "" XXX + SG_ Unknown_05 : 264|6@1+ (1,-15) [0|31] "" XXX + SG_ Unknown_06 : 270|6@1+ (1,0) [0|127] "" XXX + SG_ Unknown_07 : 277|6@1+ (1,0) [0|7] "" XXX + SG_ Unknown_08 : 284|6@1+ (1,0) [0|1] "" XXX + +BO_ 605 KLR_01: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ KLR_Fehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KLR_ResponseError : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KLR_Lokalaktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KLR_Fehler_Codierung : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KLR_Touchintensitaet_1 : 16|8@1+ (1,0) [0|250] "Unit_None" Vector__XXX + SG_ KLR_Touchintensitaet_2 : 24|8@1+ (1,0) [0|250] "Unit_None" Vector__XXX + SG_ KLR_Touchintensitaet_3 : 32|8@1+ (1,0) [0|250] "Unit_None" Vector__XXX + SG_ KLR_Touchauswertung : 40|4@1+ (1,0) [0|15] "" ZR_High + +BO_ 619 TA_01: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Travel_Assist_Status : 13|3@1+ (1,0) [0|3] "" XXX + SG_ Travel_Assist_Request : 19|3@1+ (1,0) [0|7] "" XXX + SG_ Travel_Assist_Available : 23|1@1+ (1,0) [0|1] "" XXX + +BO_ 695 RCTA_01: 8 XXX + SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 706 Motor_41: 8 Gateway + SG_ MO_Anzeige_StSt_Text : 12|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MO_Anzeige_StSt_Symbol : 16|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_ADR_Status : 19|2@1+ (1,0) [0|3] "" ZR_High + SG_ MO_AGA_Sound_Texte : 21|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_Anzeige_FMAus_Text : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Fehler_MSpG : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PEA_Texte : 25|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_Ueberstimmt_vMax_FahrerInfo : 28|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_Avus_Motorschutz : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_Rekuperationsstufe : 32|3@1+ (1,0) [0|7] "" OTA_FC + SG_ TSK_Einheit_vMax_FahrerInfo : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_Status_vMax_FahrerInfo : 36|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_Red_Fahrleistung : 38|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_Anz_Kuehlerluefter : 47|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_im_Leerlauf : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Enable_Oeldr_Motor : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_OelMessung_Dauer : 52|4@1+ (15,15) [15|225] "Unit_Secon" Vector__XXX + SG_ TSK_vMax_FahrerInfo : 56|8@1+ (1,15) [16|270] "" Vector__XXX + +BO_ 768 MEB_ACC_01: 48 XXX + SG_ ACC_Tempolimit : 64|5@1+ (1,0) [0|31] "" OTA_FC + SG_ ACC_Wunschgeschw_Farbe : 69|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ACC_Warnung_Verkehrszeichen_1 : 70|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ACA_Querfuehrung : 71|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ Unknown_02 : 73|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Regelung_AIO : 75|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ ACC_Wunschgeschw_02 : 76|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Vector__XXX + SG_ ACC_Abstandsindex_02 : 86|10@1+ (1,0) [1|1021] "" Vector__XXX + SG_ ACC_Display_Prio : 96|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ACC_rel_Objekt_Zusatzanz : 98|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ACC_Gesetzte_Zeitluecke : 101|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ ACC_Optischer_Fahrerhinweis : 104|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ACC_Warnhinweis : 105|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ACC_EGO_Fahrzeug : 106|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ ACC_Relevantes_Objekt_02 : 109|2@1+ (1,0) [0|3] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ ACC_Wunschgeschw_erreicht : 112|1@1+ (1,0) [0|1] "" OTA_FC + SG_ ACC_Anzeige_Zeitluecke : 113|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ACC_Texte_Primaeranz_02 : 114|6@1+ (1,0) [0|63] "" Vector__XXX + SG_ ACC_Texte_Zusatzanz_02 : 120|6@1+ (1,0) [0|63] "" Vector__XXX + SG_ STA_Primaeranz : 126|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ SET_ME_0X3FF : 140|10@1+ (1,0) [0|15] "" XXX + SG_ Heartbeat : 150|9@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0XFFFF : 160|16@1+ (1,0) [0|65535] "" XXX + SG_ ACC_Enabled : 186|1@0+ (1,0) [0|1] "" XXX + SG_ Zeitluecke_Farbe : 189|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_0X1 : 199|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Status_ACC : 208|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Akustischer_Fahrerhinweis : 211|2@1+ (1,0) [0|1] "" XXX + SG_ Unknown_08 : 224|1@0+ (1,0) [0|1] "" XXX + SG_ Unknown_01 : 225|1@0+ (1,0) [0|1] "" XXX + SG_ Unknown_06 : 226|1@0+ (1,0) [0|1] "" XXX + SG_ Unknown_07 : 228|1@0+ (1,0) [0|1] "" XXX + SG_ SET_ME_0X7FFF : 240|16@1+ (1,0) [0|65535] "" XXX + SG_ Unknown_09 : 262|1@0+ (1,0) [0|3] "" XXX + SG_ Lead_Type_Detected : 265|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Standby_Override : 266|1@0+ (1,0) [0|1] "" XXX + SG_ Street_Color : 267|1@0+ (1,0) [0|1] "" XXX + SG_ ACC_Limiter_Mode : 268|1@0+ (1,0) [0|1] "" XXX + SG_ Lead_Brightness : 269|4@1+ (1,0) [0|7] "" XXX + SG_ SET_ME_0X6A : 273|8@1+ (1,0) [0|7] "" XXX + SG_ Lead_Type : 287|3@1+ (1,0) [0|3] "" XXX + SG_ Lead_Distance : 290|10@1+ (0.2,0) [0|7] "Unit_Meter" XXX + SG_ ACC_Events : 332|4@0+ (1,0) [0|3] "Unit_Meter" XXX + SG_ Zeitluecke_1 : 334|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX + SG_ Zeitluecke_2 : 344|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX + SG_ Zeitluecke_3 : 354|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX + SG_ Zeitluecke_4 : 364|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX + SG_ Zeitluecke_5 : 374|9@1+ (0.171,0) [0|100] "Unit_Meter" XXX + +BO_ 771 HCA_03: 24 XXX + SG_ RequestStatus : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Power : 16|8@1+ (0.4,0) [0.0|100.0] "percent" XXX + SG_ Curvature : 24|15@1+ (6.7e-06,0) [0|0.219] "Unit_rad/m" XXX + SG_ Curvature_VZ : 39|1@1+ (1,0) [0|1] "" XXX + SG_ Unknown_01 : 53|1@0+ (1,0) [0|1] "" XXX + SG_ Vibration : 56|1@0+ (1,0) [0|1] "" XXX + SG_ HighSendRate : 66|1@1+ (1,0) [0|1] "" XXX + +BO_ 792 MEB_Camera_03: 8 XXX + +BO_ 795 ESP_24: 8 Gateway + SG_ ESP_Lampe : 12|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ABS_Lampe : 13|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ BK_Lampe_02 : 14|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ TC_Lampe : 16|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ESP_m_Raddrehz : 17|15@1+ (0.002,0) [0|65.278] "Unit_Hertz" Sub_Gateway + SG_ ESP_Textanzeigen_03 : 32|5@1+ (1,0) [0|31] "" Sub_Gateway + SG_ ESP_Meldungen : 37|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ ESP_Wegimp_VA : 40|11@1+ (1,0) [0|2047] "" Sub_Gateway + SG_ ESP_Fehlerstatus_Wegimp : 51|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ESP_Wegimp_Ueberlauf : 52|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ESP_QBit_Wegimp_VA : 53|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ESP_HDC_Geschw_Farbe : 54|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ESP_Off_Lampe : 55|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ ESP_HDC_Regelgeschw : 56|7@1+ (0.32,0) [0.32|39.68] "Unit_KiloMeterPerHour" Sub_Gateway + SG_ ESP_BKV_Warnung : 63|1@1+ (1,0) [0|1] "" Sub_Gateway + +BO_ 817 MFL_01: 8 Gateway + SG_ MFL_Zaehler : 0|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Toggle : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MFL_Lokalaktiv : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MFL_M_Taste : 6|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Paddle_Verbau : 7|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Tastencode_1 : 8|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ MFL_Tastencode_2 : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ MFL_Eventcode_1 : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Eventcode_2 : 28|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Marke : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Variante : 36|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Dummy_0_Signal_1 : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ MFL_Tip_Down : 48|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Tip_Up : 49|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_SatModul_links_Err : 50|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_SatModul_rechts_Err : 51|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Dummy_0_Signal_2 : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MFL_Dummy_0_Signal_3 : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MFL_LR_HZG_Status : 54|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_LR_HZG_Err : 55|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Signalhorn : 56|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ MFL_Signalhorn_Err : 57|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Tip_links_Err : 58|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Tip_rechts_Err : 59|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Taste_links_Err : 60|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Taste_rechts_Err : 61|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_ECU_Err : 62|1@1+ (1,0) [0|1] "" ZR_High + SG_ MFL_Response_Err : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 850 Parken_SM_03: 8 Gateway + SG_ Parken_SM_03_MUX M : 0|3@1+ (1,0) [0|7] "" DDA + SG_ Parken_SM_03_Traj_Trans_ID_00 m0 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P1_Pos_X m0 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P1_Pos_Y m0 : 20|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P1_Tangent m0 : 33|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_Traj_P2_Pos_X m0 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_SM_03_Traj_Trans_ID_01 m1 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P2_Pos_Y m1 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P2_Tangent m1 : 20|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_Traj_P3_Pos_X m1 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P3_Pos_Y m1 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_SM_03_Traj_Trans_ID_02 m2 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P3_Tangent m2 : 7|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_Traj_P4_Pos_X m2 : 17|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P4_Pos_Y m2 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P4_Tangent m2 : 43|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_SM_03_Traj_Trans_ID_03 m3 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P5_Pos_X m3 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P5_Pos_Y m3 : 20|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P5_Tangent m3 : 33|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_Traj_P6_Pos_X m3 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_SM_03_Traj_Trans_ID_04 m4 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P6_Pos_Y m4 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P6_Tangent m4 : 20|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_Traj_P7_Pos_X m4 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P7_Pos_Y m4 : 43|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_SM_03_Traj_Trans_ID_05 m5 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P7_Tangent m5 : 7|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_Traj_P8_Pos_X m5 : 17|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P8_Pos_Y m5 : 30|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P8_Tangent m5 : 43|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + SG_ Parken_SM_03_Traj_Trans_ID_06 m6 : 3|4@1+ (1,0) [0|15] "" DDA + SG_ Parken_Traj_P9_Pos_X m6 : 7|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P9_Pos_Y m6 : 20|13@1+ (0.5,-2047.5) [-2047.5|2048] "Unit_Centimeter" DDA + SG_ Parken_Traj_P9_Tangent m6 : 33|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" DDA + +BO_ 869 NVEM_05: 8 Gateway + SG_ NVEM_05_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NVEM_05_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ NVEM_Pilot_Info : 12|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ NVEM_P_Generator_Status : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Vector__XXX + SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Vector__XXX + SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" DCDC_800V_PAG,DCDC_IHEV + SG_ BEM_Hybrid_Info : 44|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ NVEM_Red_KL : 46|2@1+ (1,0) [0|3] "" TME + SG_ NVEM_Freilauf_Info : 48|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" DCDC_800V_PAG,DCDC_HV,LE_MLBevo + SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Vector__XXX + +BO_ 870 Blinkmodi_02: 8 Gateway + SG_ BM_ZV_auf : 12|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_ZV_zu : 13|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_DWA_ein : 14|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_DWA_Alarm : 15|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Crash : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Panik : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Not_Bremsung : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_GDO : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BM_Warnblinken : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Taxi_Notalarm : 21|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Telematik : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_links : 23|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_rechts : 24|1@1+ (1,0) [0|1] "" ZR_High + SG_ Blinken_li_Fzg_Takt : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ Blinken_re_Fzg_Takt : 26|1@1+ (1,0) [0|1] "" ZR_High + SG_ Blinken_li_Kombi_Takt : 27|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ Blinken_re_Kombi_Takt : 28|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ BM_NBA_n_codiert_n_aktiv : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BM_NBA_Status : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BM_WBT_Beleuchtung : 32|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_HD_Oeffnung_angelernt : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BM_Autobahn : 34|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ BM_Rollenmodus_Blinken : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BM_Recas : 36|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Wischblinken : 37|1@1+ (1,0) [0|1] "" ZR_High + SG_ BM_Telematik_Abbruchgrund : 38|6@1+ (1,0) [0|63] "" Vector__XXX + SG_ BM_PiloPa : 44|1@1+ (1,0) [0|1] "" ZR_High + SG_ DWA_Alarmquelle : 59|5@1+ (1,0) [0|31] "" ZR_High + +BO_ 888 GNSS_04: 8 Gateway + SG_ GNSS_Nachrichtenpaket_ID4 : 0|2@1+ (1,0) [0|3] "Unit_Bit" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Ortung_Zeit_in_GPSWoche : 2|30@1+ (1,0) [0|604800001] "Unit_MilliSecon" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Ortung_Hoehe : 32|12@1+ (2,-500) [-500|7686] "Unit_Meter" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + +BO_ 891 GNSS_05: 8 Gateway + SG_ GNSS_UTC_Zeit : 0|32@1+ (1,0) [1|4294967295] "Unit_Secon" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Empfaenger_Status : 32|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_GPS_in_Nutzung : 33|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_GLONASS_in_Nutzung : 34|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Empfangbare_Satelliten : 35|5@1+ (1,0) [1|30] "Unit_None" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Sichtbare_Satelliten : 40|5@1+ (1,0) [1|30] "Unit_None" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Genutzte_Satelliten : 45|5@1+ (1,0) [1|30] "Unit_None" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GNSS_Nachrichtenpaket_ID5 : 50|2@1+ (1,0) [0|3] "Unit_Bit" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + +BO_ 896 APS_Master: 8 XXX + SG_ Active : 54|1@0+ (1,0) [0|1] "" XXX + SG_ Distance : 55|9@1+ (1,0) [0|255] "" XXX + +BO_ 916 WBA_03: 8 Gateway + SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Sub_Gateway + SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Sub_Gateway + SG_ WBA_GE_Zusatzwarnungen : 37|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ GE_Sollgang : 40|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ GE_Tipschaltempf_verfuegbar : 44|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ WBA_GE_Texte_02 : 45|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ WBA_GE_Texte_03 : 48|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ WBA_Blinken : 54|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Wiederstart_Anz_Std : 55|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_01 : 56|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_02 : 57|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_03 : 58|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_04 : 59|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_05 : 60|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_06 : 61|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_07 : 62|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ GE_Stoppverbot_Anz_Std : 63|1@1+ (1,0) [0|1] "" Sub_Gateway + +BO_ 919 LDW_02: 8 XXX + SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX + SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX + SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX + SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 949 Klima_11: 8 Gateway + SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" TME + SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" TME + SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" TME + SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" TME + SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" TME + SG_ KL_Kompressorkupplung_linear : 8|8@1+ (20,0) [0|4000] "Unit_MilliAmper" Vector__XXX + SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" TME + SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" TME + SG_ KL_nachtr_Stopp_Anf : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_T_Charge : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" TME + SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" TME + SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" TME + SG_ KL_Freilauf_Info : 38|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" TME + SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" TME + SG_ KL_Ausstattung_Klima : 51|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ KL_Variante_Standheizung : 54|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 958 Motor_14: 8 Gateway + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Sub_Gateway,TME + SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" BMS_NV,Sub_Gateway,TME + SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" BMS_NV,Sub_Gateway,TME + SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Sub_Gateway,TME + SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" DCDC_IHEV,Ladegeraet_Konzern,Sub_Gateway + SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" AWC,Sub_Gateway,TME + SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Sub_Gateway,TME + SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" AWC,BMS_NV,Ladegeraet_Konzern,Sub_Gateway,TME + SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Sub_Gateway,TME + SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_KomFehler_ESP : 32|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Sub_Gateway,TME + SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Sub_Gateway,TME + SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Sub_Gateway,TME + SG_ MO_QBit_KL_75 : 41|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Remotestart_moeglich : 53|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_FMAus_aktiv : 55|1@1+ (1,0) [0|1] "" BMS_NV,Sub_Gateway + SG_ MO_FMAus_Startvariante : 56|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_BMS_NV_Anf_stuetzen : 58|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Zylinderabschaltung : 59|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_HYB_VM_aktiv : 61|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_StartVorauss_erfuellt : 62|2@1+ (1,0) [0|3] "" AWC,Ladegeraet_Konzern,Sub_Gateway + +BO_ 960 Klemmen_Status_01: 4 Gateway + SG_ Klemmen_Status_01_CRC : 0|8@1+ (1,0) [0|255] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ Klemmen_Status_01_BZ : 8|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ RSt_Fahrerhinweise : 12|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,GurtMikrofon,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,GurtMikrofon,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZAS_Kl_50_Startanforderung : 19|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ BCM_Remotestart_Betrieb : 20|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZAS_Kl_Infotainment : 21|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ BCM_Remotestart_KL15_Anf : 22|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ BCM_Remotestart_MO_Start : 23|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Warn_P1_ZST_def : 24|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Warn_P2_ZST_def : 25|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Fahrerhinweis_1 : 26|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Fahrerhinweis_2 : 27|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ BCM_Ausparken_Betrieb : 28|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Fahrerhinweis_4 : 29|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Fahrerhinweis_5 : 30|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ KST_Fahrerhinweis_6 : 31|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + +BO_ 967 Motor_26: 8 Gateway + SG_ MO_Kuehlerluefter_MUX M : 0|1@1+ (1,0) [0|1] "" TME + SG_ MO_Kuehlerluefter_1 m0 : 1|7@1+ (1,0) [0|100] "Unit_PerCent" TME + SG_ MO_Kuehlerluefter_2 m1 : 1|7@1+ (1,0) [0|100] "Unit_PerCent" TME + SG_ MO_EFLEX_Lampe : 8|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_KJS_nicht_bereit : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_ITM_Warnung_Pumpe : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" TME + SG_ OLEV_Systemstoerung : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Oelwarnung_max : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_E_Warnungen : 28|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MO_E_Texte : 36|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ WIV_Oeldyn_avl : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ OLEV_Oelstand_nicht_vorhanden : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Vector__XXX + SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" TME + SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_RedFahrleistung_Lampe : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Vorglueh_Lampe : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_E_Mode : 61|3@1+ (1,0) [0|7] "" Vector__XXX + +BO_ 974 TSG_HFS_01: 8 Gateway + SG_ HFS_Tuer_geoeffnet : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_verriegelt : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_gesafet : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Heckrollotaster_betaetigt : 3|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Tuerschloss_defekt : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Unlock_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Lock_Taster : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Sperrklinke : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_TAG_betaetigt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_TIG_betaetigt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_HBFS_AutoHoch : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_HBFS_AutoTief : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_HBFS_ManHoch : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_HBFS_ManTief : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Tuer_Status : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ HFS_SAD_Schalter : 16|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HFS_FH_S_ManHoch : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_AutoHoch : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_ManTief : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_S_AutoTief : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_Oeffnung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ HFS_FH_Bew_hoch : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_Bew_tief : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_Fang : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_Block : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_Thermo : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_UEKB_aktiviert : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Tueroeffnen_Warnung : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_FH_normiert : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ASW_Warnung_aktiv_HFS : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Zuziehhilfe_aktiv : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Seitenrollo_hoch : 42|1@1+ (1,0) [0|1] "" TME + SG_ HFS_Seitenrollo_tief : 43|1@1+ (1,0) [0|1] "" TME + SG_ HFS_Status_KiSi : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SSR_HFS_Pos_Unten : 45|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Oben_Block_erw : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Unten_Block_erw : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHFS_M_Taste : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHFS_Pos1 : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHFS_Pos2 : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHFS_Pos3 : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_MRollo_Schalter : 52|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ HFS_Lock_Taster_inv : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_Status_eTAG : 56|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ HFS_Tuer_Status_QBit : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HFS_TCR_Mode_aktiv : 59|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 975 TSG_HBFS_01: 8 Gateway + SG_ HBFS_Tuer_geoeffnet : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_verriegelt : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_gesafet : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Heckrollotaster_betaetigt : 3|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Tuerschloss_defekt : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Unlock_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Lock_Taster : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Sperrklinke : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_TAG_betaetigt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_TIG_betaetigt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_HFS_AutoHoch : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_HFS_AutoTief : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_HFS_ManHoch : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_HFS_ManTief : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Tuer_Status : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ HBFS_SAD_Schalter : 16|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HBFS_FH_S_ManHoch : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_AutoHoch : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_ManTief : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_S_AutoTief : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_Oeffnung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ HBFS_FH_Bew_hoch : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_Bew_tief : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_Fang : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_Block : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_Thermo : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_UEKB_aktiviert : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Tueroeffnen_Warnung : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_FH_normiert : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ASW_Warnung_aktiv_HBFS : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Zuziehhilfe_aktiv : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Seitenrollo_hoch : 42|1@1+ (1,0) [0|1] "" TME + SG_ HBFS_Seitenrollo_tief : 43|1@1+ (1,0) [0|1] "" TME + SG_ HBFS_Status_KiSi : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SSR_HBFS_Pos_Unten : 45|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Oben_Block_erw : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Unten_Block_erw : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHBFS_M_Taste : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHBFS_Pos1 : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHBFS_Pos2 : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MTHBFS_Pos3 : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_MRollo_Schalter : 52|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ HBFS_Lock_Taster_inv : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Status_KiSi_inv : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_Status_eTAG : 57|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ HBFS_Tuer_Status_QBit : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_TIG_betaetigt_schliessen : 60|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 976 TSG_FT_01: 8 Gateway + SG_ FT_Tuer_geoeffnet : 0|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern,TME + SG_ FT_verriegelt : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_gesafet : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Schluesselschalter_auf : 3|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV + SG_ FT_Schluesselschalter_zu : 4|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV + SG_ FT_Unlock_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Lock_Taster : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Sperrklinke : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_TAG_betaetigt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_TIG_betaetigt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_IRUE_Taste : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_HD_Taste : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_TD_Taste_Fehler : 12|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern + SG_ FT_TD_Taste : 13|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Ladegeraet_Konzern + SG_ SSR_Temp_Freigabe : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Sp_Heizung_Anf : 15|1@1+ (100,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ FT_HD_Taste_2 : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_TSG_hinten_verbaut : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Sp_Blk_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_S_ManHoch : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_S_AutoHoch : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_S_ManTief : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_S_AutoTief : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_Oeffnung : 24|8@1+ (0.5,0) [0|100] "Unit_PerCent" TME + SG_ FT_FH_Bew_hoch : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_Bew_tief : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_Fang : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_Block : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_Thermo : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_UEKB_aktiviert : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ASW_HMI_defekt : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_normiert : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Schliesstaster : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Zuziehhilfe_aktiv : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_SP_ausgerastet : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_SP_lr_aktiv : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_SP_ht_aktiv : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ASW_wakeup : 45|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Oben_Block_erw : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Unten_Block_erw : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Kisi_li_aktiv : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Kisi_re_aktiv : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Kisi_Taster_li : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Kisi_Taster_re : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_BFS_Fond_Freigabe : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Kisi_Fehler : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Daemmglas : 54|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_SP_Heizung_Status : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ASW_Warnung_aktiv_FS : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_FH_Pos_oben : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Tuerschloss_defekt : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_SWA_Taster : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_HMI_Diagnose : 60|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ FS_Status_eTAG : 62|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 980 SMLS_01: 8 Gateway + SG_ SMLS_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ SMLS_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BH_Blinker_li : 12|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ BH_Blinker_re : 13|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ BH_Lichthupe : 14|1@1+ (1,0) [0|1] "" ZR_High + SG_ BH_Fernlicht : 15|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_Tipwischen : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_Intervall : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_WischerStufe1 : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_WischerStufe2 : 19|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_Frontwaschen : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_Heckintervall : 21|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_Heckwaschen : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ WH_Intervallstufen : 23|4@1+ (1,0) [0|15] "" ZR_High + SG_ FAS_Taster : 27|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ FAS_Taster_Fehler : 28|1@1+ (1,0) [0|1] "" ZR_High + SG_ SMLS_Hupe : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LRH_On_Off : 30|2@1+ (1,0) [0|3] "" ZR_High + SG_ LRH_aktiv : 40|1@1+ (1,0) [0|1] "" ZR_High + SG_ SMLS_P_verriegelt_plausibel : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WH_SRA : 44|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ WH_Wischer_Fehler : 45|1@1+ (1,0) [0|1] "" ZR_High + SG_ BH_Blinker_Fehler : 46|1@1+ (1,0) [0|1] "" ZR_High + SG_ SMLS_PTT : 47|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ WH_Tipwischen_lang : 48|1@1+ (1,0) [0|1] "" ZR_High + +BO_ 981 Licht_Anf_01: 8 Gateway + SG_ Licht_Anf_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ Licht_Anf_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_Kurvenlicht_links_Anf : 12|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Kurvenlicht_rechts_Anf : 13|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Standlicht_Anf : 14|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Abblendlicht_Anf : 15|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ BCM1_Fernlicht_Anf : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Nebellicht_Anf : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Parklicht_li_Anf : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Parklicht_re_Anf : 19|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Nebelschluss_Ahg_Anf : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Nebelschluss_Fzg_Anf : 21|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Schlusslicht_Anf : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM_Rueckfahrlicht_Anf : 23|1@1+ (1,0) [0|1] "" ZR_High,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ BCM1_Signaturlicht_Anf : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Umfeldleuchten_Anf : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Tagfahrlicht_Anf : 26|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Regenlicht_Anf : 27|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Autobahnlicht_Anf : 28|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Touristen_Licht_Anf : 29|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_CH_aktiv : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_LH_aktiv : 31|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Gleitende_Leuchtw_Anf : 32|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_GLW_Fernlicht_Anf : 33|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Adaptive_Lichtvert_Anf : 34|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_FoD_Sperrung_WiBli : 35|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BCM1_FOD_Sperrung_Animationen_HL : 37|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BCM1_Animationssperrung : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_CH_LH_aktiv : 40|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Allwetterlicht_Anf : 41|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Schlusslicht_Signatur : 60|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 982 Licht_hinten_01: 8 Gateway + SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Zusatzschlussl_def : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Diag_Status_re_def : 28|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Diag_Status_li_def : 29|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Diag_LED_li_def : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Diag_LED_re_def : 31|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schluss_Brems_mi_def : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Schlusslicht_mi_def : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_mi_def : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" ZR_High + SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" ZR_High + +BO_ 987 Gateway_72: 8 Gateway_MQB + SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 988 Gateway_73: 8 XXX + SG_ UNKNOWN_1 : 15|2@0+ (1,0) [0|3] "" XXX + SG_ GE_Fahrstufe : 40|4@1+ (1,0) [0|15] "" XXX + SG_ EPB_Status : 53|3@1+ (1,0) [0|7] "" XXX + SG_ UNKNOWN_2 : 58|3@0+ (1,0) [0|7] "" XXX + +BO_ 997 TSG_FT_02: 8 Gateway + SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ FT_Tuer_Status : 12|2@1+ (1,0) [0|3] "" OTA_FC,ZR_High + SG_ FT_Tuer_Status_QBit : 14|1@1+ (1,0) [0|1] "" ZR_High + SG_ FT_Lock_Taster_02 : 15|1@1+ (1,0) [0|1] "" ZR_High + SG_ FT_Schluesselschalter_zu_02 : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ FT_BFS_Tuer_Status : 17|2@1+ (1,0) [0|3] "" ZR_High + SG_ FT_HBFS_Tuer_Status : 19|2@1+ (1,0) [0|3] "" ZR_High + SG_ FT_HFS_Tuer_Status : 21|2@1+ (1,0) [0|3] "" ZR_High + SG_ FT_Tueroeffnen_Warnung : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_SP_Heizung_ein : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FT_Kisi_Taster_li_02 : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ FT_Kisi_Taster_re_02 : 26|1@1+ (1,0) [0|1] "" ZR_High + SG_ FT_TD_Taste_Status : 27|2@1+ (1,0) [0|3] "" ZR_High + SG_ FT_TCR_Mode_aktiv : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FS_Push_Tuergriff : 36|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1004 MEB_TSK_01: 8 XXX + SG_ TSK_State : 53|3@1+ (1,0) [0|7] "" XXX + +BO_ 1031 PLA_04: 8 XXX + +BO_ 1122 PSD_04: 8 ZR_High + SG_ PSD_Segment_ID : 0|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Vorgaenger_Segment_ID : 6|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Segmentlaenge : 12|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG,OTA_FC + SG_ PSD_Strassenkategorie : 19|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,OTA_FC + SG_ PSD_Endkruemmung : 22|8@1+ (1,0) [0|254] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Endkruemmung_Vorz : 30|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Idenditaets_ID : 31|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_ADAS_Qualitaet : 37|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_wahrscheinlichster_Pfad : 38|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Geradester_Pfad : 39|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Fahrspuren_Anzahl : 40|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,OTA_FC + SG_ PSD_Bebauung : 43|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Segment_Komplett : 44|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Rampe : 45|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Anfangskruemmung : 47|8@1+ (1,0) [0|254] "" Gateway,Gateway_PAG + SG_ PSD_Anfangskruemmung_Vorz : 55|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Abzweigerichtung : 56|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Abzweigewinkel : 57|7@1+ (1.417323,0) [0|180.000021] "" Gateway,Gateway_PAG + +BO_ 1123 PSD_05: 8 ZR_High + SG_ PSD_Pos_Segment_ID : 0|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Pos_Segmentlaenge : 6|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Pos_Inhibitzeit : 13|5@1+ (10,0) [0|310] "Unit_MilliSecon" Gateway,Gateway_PAG + SG_ PSD_Pos_Standort_Eindeutig : 18|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Pos_Fehler_Laengsrichtung : 19|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Pos_Fahrspur : 22|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,OTA_FC + SG_ PSD_Attribut_Segment_ID_05 : 25|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_1_ID : 31|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_1_Wert : 36|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_1_Offset : 40|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Attribut_2_ID : 47|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_2_Wert : 52|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_2_Offset : 56|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Attribute_Komplett_05 : 63|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + +BO_ 1124 PSD_06: 8 ZR_High + SG_ PSD_06_Mux M : 0|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Segment_ID m0 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Laendercode m0 : 9|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Geschwindigkeit_Einheit m0 : 17|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Verkehrsrichtung m0 : 18|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Geometrieguete m0 : 19|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Mapmatchingguete m0 : 21|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Alter_Karte m0 : 23|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Zielfuehrung m0 : 26|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,OTA_FC + SG_ PSD_Sys_US_State m0 : 27|6@1+ (1,0) [0|63] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_Geometrien m0 : 33|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_Ortsinfo m0 : 36|2@1+ (1,0) [0|3] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_verfuegbar m0 : 38|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Zielfuehrung_geaendert m0 : 39|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Geometrieguete_erweitert m0 : 40|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_sonstige_Attribute m0 : 48|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_Steigungen m0 : 51|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_Strassenkennz m0 : 54|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_Tempolimits m0 : 57|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Sys_Quali_Vorfahrtsregelung m0 : 60|3@1+ (1,0) [0|7] "Unit_None" Gateway,Gateway_PAG + SG_ PSD_Attribut_Segment_ID m1 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_3_ID m1 : 9|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_3_Offset m1 : 14|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Attribut_3_Wert m1 : 21|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_4_ID m1 : 25|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_4_Wert m1 : 30|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_4_Offset m1 : 34|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Attribut_5_ID m1 : 41|5@1+ (1,0) [1|31] "" Gateway,Gateway_PAG + SG_ PSD_Attribut_5_Offset m1 : 46|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Attribut_5_Wert m1 : 53|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ PSD_Attribute_Komplett_06 m1 : 57|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Segment_ID m2 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Offset m2 : 9|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit m2 : 16|5@1+ (1,0) [0|31] "" Gateway,Gateway_PAG,OTA_FC + SG_ PSD_Ges_Typ m2 : 21|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Spur_Geschw_Begrenzung m2 : 23|6@1+ (1,0) [0|63] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit_Gespann m2 : 29|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit_Witter m2 : 31|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit_Tag_Anf m2 : 33|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit_Tag_Ende m2 : 36|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit_Std_Anf m2 : 39|5@1+ (1,0) [0|24] "Unit_Hours" Gateway,Gateway_PAG + SG_ PSD_Ges_Geschwindigkeit_Std_Ende m2 : 44|5@1+ (1,0) [0|24] "Unit_Hours" Gateway,Gateway_PAG + SG_ PSD_Ges_Ueberholverbot m2 : 49|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Wechselverkehrszeichen m2 : 51|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Wechselverkehrszeichen_Typ m2 : 54|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Gesetzlich_Kategorie m2 : 56|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Gesetzlich_Zusatz m2 : 59|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Verkehrszeichen_Quelle m2 : 61|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ PSD_Ges_Attribute_Komplett m2 : 63|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Baum_Laenge_VZ m3 : 3|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Baum_Laenge m3 : 4|25@1+ (1e-05,0) [0|180] "Unit_DegreOfArc" Gateway,Gateway_PAG + SG_ PSD_Baum_Breite_VZ m3 : 29|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Baum_Breite m3 : 30|24@1+ (1e-05,0) [0|90] "Unit_DegreOfArc" Gateway,Gateway_PAG + SG_ PSD_Baum_Ausrichtung m3 : 54|10@1+ (0.3515625,0) [0|359.6484375] "Unit_DegreOfArc" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_Segment_ID m4 : 3|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_A_Steigung m4 : 9|7@1+ (0.12,0) [0|15] "Unit_PerCent" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_A_Vorz m4 : 16|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_A_Offset m4 : 17|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_B_Steigung m4 : 24|7@1+ (0.12,0) [0|15] "Unit_PerCent" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_B_Vorz m4 : 31|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_B_Offset m4 : 32|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Steigung_1_Attribute_kompl m4 : 39|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Steigung_2_Segment_ID m4 : 40|6@1+ (1,0) [2|63] "" Gateway,Gateway_PAG + SG_ PSD_Steigung_2_Steigung m4 : 46|7@1+ (0.12,0) [0|15] "Unit_PerCent" Gateway,Gateway_PAG + SG_ PSD_Steigung_2_Vorz m4 : 53|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ PSD_Steigung_2_Offset m4 : 54|7@1+ (2,0) [0|254] "Unit_Meter" Gateway,Gateway_PAG + SG_ PSD_Steigung_2_Attribute_kompl m4 : 61|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + +BO_ 1153 MainUnit_01: 8 ZR_High + SG_ ZR_LoGeWa_Event_Kombiwarnung : 0|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ Nav_FoD_Status : 4|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ MIB_Tongenerator_PH_verfuegbar : 9|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ MMI_Counter_Bedienevent : 12|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ DSSS_Warning : 16|5@1+ (1,0) [0|31] "" Gateway,Gateway_PAG + SG_ ZR_Kindersicherung_RSE : 21|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ ZR_RSE_aktivieren : 22|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ MMI_SDS_aktiv : 23|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ MU_SecondDisplay : 24|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG + SG_ MMI_Telefon_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG + SG_ MMI_Gurt_Mic_ref : 28|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,GurtMikrofon + SG_ ZR_Sta_Inszenierung : 29|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ MMI_Gauges_active : 31|1@1+ (1,0) [0|1] "" BedienDisp_vo,Gateway,Gateway_PAG + SG_ MU_Update_Time : 32|8@1+ (0.1,0) [0|25.5] "Unit_Hours" Gateway,Gateway_PAG + SG_ ZR_MXB_Manoever_Ansage : 42|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ ZR_LAPP_Sondermodus_Status : 44|2@1+ (1,0) [0|3] "" DDA,Gateway,Gateway_PAG + SG_ MMI_StartStopp_Info : 46|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG + SG_ ZR_Parken_Sondermodus : 48|4@1+ (1,0) [0|15] "" DDA,Gateway,Gateway_PAG + SG_ ZR_Rundenbewertung : 52|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG + SG_ ZR_Rundenfortschritt : 56|8@1+ (0.5,0) [0|100] "Unit_PerCent" Gateway,Gateway_PAG + +BO_ 1155 Motor_Hybrid_06: 8 Gateway + SG_ Mo_Powermeter_Grenze : 0|12@1+ (1,0) [0|4092] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ MO_Text_Aktivierung_Antrieb : 12|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MO_Powermeter_Inszenierung_aktiv : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Powermeter_Charge_Grenze : 18|10@1+ (1,0) [0|1021] "Unit_None" Vector__XXX + SG_ MO_Powermeter_Grenze_strategisch : 28|12@1+ (1,0) [0|4093] "Unit_None" Vector__XXX + SG_ MO_Powermeter_untere_E_Grenze : 40|12@1+ (1,0) [0|4093] "Unit_None" Vector__XXX + SG_ MO_Powermeter_obere_E_Grenze : 52|12@1+ (1,0) [0|4093] "Unit_None" Vector__XXX + +BO_ 1163 BEM_06: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 1175 Parkhilfe_01: 8 Gateway + SG_ PH_Visualisierung : 0|3@1+ (1,0) [0|7] "" AWC + SG_ PDC_Tonausgabe_Front : 4|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PDC_Tonausgabe_Heck : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_nachtr_Stopp_Anf : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Abschaltursache : 13|3@1+ (1,0) [0|7] "" AWC + SG_ PH_Opt_Anzeige_V_ein : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Opt_Anzeige_H_ein : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Opt_Anz_V_Hindernis : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Opt_Anz_H_Hindernis : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Tongeber_V_aktiv : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Tongeber_H_aktiv : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Tongeber_mute : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Anf_Audioabsenkung : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Tongeber_H_verfuegbar : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PLA_Anf_Aufschaltung_RVC : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Taster : 28|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ PH_Anf_Verdeck : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ PH_Frequenz_hinten : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_Lautstaerke_hinten : 36|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_Frequenz_vorn : 40|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_Lautstaerke_vorn : 44|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_StartStopp_Info : 49|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ PH_Stoermeldung : 52|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_defekt : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_gestoert : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ PH_Systemzustand : 58|3@1+ (1,0) [0|7] "" AWC + SG_ PH_Display_Kundenwunsch : 61|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1283 HVK_01: 8 Gateway + SG_ HVK_01_CRC : 0|8@1+ (1,0) [0|255] "" BMC_MLBevo,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo,TME + SG_ HVK_01_BZ : 8|4@1+ (1,0) [0|15] "" BMC_MLBevo,DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo,TME + SG_ HVK_Istmodus_Anf : 12|1@1+ (1,0) [0|1] "" BMC_MLBevo,DCDC_HV,FCU_MLBevo_FCEV,Ladegeraet_2,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo + SG_ HVK_TN1_Sollmodus : 13|2@1+ (1,0) [0|3] "" DCDC_HV_02,FCU_MLBevo_FCEV + SG_ HVK_MO_EmSollzustand : 16|8@1+ (1,0) [0|255] "" FCU_MLBevo_FCEV + SG_ HVK_BMS_Sollmodus : 24|3@1+ (1,0) [0|7] "" BMC_MLBevo,FCU_MLBevo_FCEV + SG_ HVK_DCDC_Sollmodus : 27|3@1+ (1,0) [0|7] "" DCDC_800V_PAG,DCDC_HV,FCU_MLBevo_FCEV,LE_MLBevo + SG_ HVK_EKK_Sollmodus : 30|3@1+ (1,0) [0|7] "" FCU_MLBevo_FCEV,TME + SG_ HVK_HVPTC_Sollmodus : 33|3@1+ (1,0) [0|7] "" FCU_MLBevo_FCEV,TME + SG_ HVK_HVLM_Sollmodus : 36|3@1+ (1,0) [0|7] "" DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_Konzern + SG_ HVK_HV_Netz_Warnungen : 39|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV + SG_ HV_Bordnetz_aktiv : 41|1@1+ (1,0) [0|1] "" DCDC_HV_02,FCU_MLBevo_FCEV,Ladegeraet_Konzern,LE1,LE2,LE_MLBevo + SG_ HV_Bordnetz_Fehler : 42|1@1+ (1,0) [0|1] "" FCU_MLBevo_FCEV,Ladegeraet_Konzern,TME + SG_ HVK_Gesamtst_Spgfreiheit : 43|2@1+ (1,0) [0|3] "" FCU_MLBevo_FCEV + SG_ HVK_AktiveEntladung_Anf : 45|1@1+ (1,0) [0|1] "" DCDC_800V_PAG,DCDC_HV,DCDC_HV_02,FCU_MLBevo_FCEV,LE1,LE2,LE_MLBevo + SG_ HVK_Iso_Messung_Start : 50|3@1+ (1,0) [0|7] "" BMC_MLBevo,FCU_MLBevo_FCEV + SG_ HVK_DCDC_EKK_Sollmodus : 62|2@1+ (1,0) [0|3] "" DCDC_800V_PAG,FCU_MLBevo_FCEV + +BO_ 1312 Airbag_02: 8 Gateway + SG_ LoGeWa_Event_Kombiwarnung : 12|4@1+ (1,0) [0|15] "" ZR_High + SG_ AB_Anforderung_eCall : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ AB_Anprall_Seite_Beifahrer : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Anprall_Rollover : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Anprall_FGS : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Anprall_Front_Beifahrer : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Anprall_Front_Fahrer : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Anprall_Heck_Beifahrer : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Anprall_Heck_Fahrer : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AB_Wickelklappung_Reihe2_MI : 24|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" BedienSG_hi,GurtMikrofon,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ AB_Abschaltanf_SIH_BF : 28|1@1+ (1,0) [0|1] "" ZR_High + SG_ AB_Anprall_Seite_Fahrer : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SC_PAO_Schriftzug_Anf : 30|2@1+ (1,0) [0|3] "" ZR_High + SG_ SC_PAO_ON_Anf : 32|2@1+ (1,0) [0|3] "" ZR_High + SG_ SC_PAO_OFF_Anf : 34|2@1+ (1,0) [0|3] "" ZR_High + SG_ AB_Crashschwere : 36|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ AB_Anforderung_USM : 39|1@1+ (1,0) [0|1] "" ZR_Standard + SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" BedienSG_hi,GurtMikrofon,ZR_High + SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" BedienSG_hi,GurtMikrofon,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High + SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High + SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" BedienSG_hi,ZR_High + SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" ZR_High + SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" ZR_High + SG_ AB_Wickelklappung_Reihe2_BF : 60|2@1+ (1,0) [0|3] "" ZR_High + SG_ AB_Wickelklappung_Reihe2_FA : 62|2@1+ (1,0) [0|3] "" ZR_High + +BO_ 1349 Airbag_04: 8 Gateway + SG_ AB_Gurtwarn_Reihe2_FA : 20|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AB_Gurtwarn_Reihe2_BF : 22|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AbstWarn_MV_FAS_Fkt_Status : 24|2@1+ (1,0) [0|3] "" ZR_High + SG_ WarnBrems_Charisma_Status : 26|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WarnBrems_Charisma_FahrPr : 28|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ AB_Gurtwarn_Reihe2_MI : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AB_Gurtwarn_Reihe3_FA : 34|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AB_Gurtwarn_Reihe3_MI : 36|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AB_Gurtwarn_Reihe3_BF : 38|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ LGI_FAS_Fkt_Status : 40|2@1+ (1,0) [0|3] "" ZR_High + SG_ PreCrash_FAS_Fkt_Status : 42|3@1+ (1,0) [0|7] "" ZR_High + SG_ AB_SBR_hinten_verbau : 48|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AWV_Einstellung_System_ASG : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Einstellung_Warnung_ASG : 52|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ SC_PreSense_Modus_Warnung_NV : 55|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ SC_PreSense_Modus_Warnung_MV : 58|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ SC_PreSense_Modus_System_MV : 61|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SC_PreSense_Modus_System_NV : 62|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SC_PreSense_Modus_System_KAS : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1355 Parkhilfe_04: 8 Gateway + SG_ PH_Verschmutzungsmeldung : 12|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ PH_Aufschaltursache : 16|5@1+ (1,0) [0|31] "" AWC + SG_ PH_Ton_Ausgabe : 21|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ PH_Ton_Pausenlaenge : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ PH_Ton_Richtung : 49|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ PH_Ton_Lautstaerke : 52|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ BCM_WAH_Meldung : 55|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ PDC_Charisma_Status : 58|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ PDC_Charisma_FahrPr : 60|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 1361 WFS_01: 8 Gateway + SG_ WFS_Schluessel_Fahrberecht : 0|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ WFS_ID_Geb_autorisiert : 5|1@1+ (1,0) [0|1] "" ZR_High + SG_ WFS_ID_Geb_autorisiert_in_Kl15 : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_ID_Geb_steckt : 7|1@1+ (1,0) [0|1] "" ZR_High + SG_ WFS_Schluessel_Soll : 8|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ WFS_Schluessel_Ist : 12|4@1+ (1,0) [0|15] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ WFS_Safe : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_LZ : 17|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WFS_ELV_authorisiert : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_LF_Aktiv : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_Betrieb_Lesespule : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_Klemmenfreigabe : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_Fahrerhinweise : 34|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WFS_Parken_Status : 36|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1385 MEB_HVEM_03: 8 XXX + SG_ NEW_SIGNAL_12 : 0|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_1 : 1|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_10 : 3|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 4|2@1+ (1,0) [0|3] "" XXX + SG_ PTC_ON : 7|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 25|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_13 : 32|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_4 : 33|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_11 : 35|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_5 : 36|2@1+ (1,0) [0|3] "" XXX + SG_ NEW_SIGNAL_6 : 38|1@0+ (1,0) [0|1] "" XXX + SG_ PTC_ein_02 : 39|1@0+ (1,0) [0|1] "" XXX + SG_ PTC_ein_03 : 57|1@0+ (1,0) [0|1] "" XXX + SG_ PTC_ein_04 : 59|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_9 : 61|2@1+ (1,0) [0|3] "" XXX + +BO_ 1411 ZV_02: 8 Gateway + SG_ BCM_FH_Freigabe : 12|1@1+ (1,0) [0|1] "" BedienDisp_vo + SG_ BCM_Komfortfkt_Freigabe : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_HSK_Freigabe : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Verdeck_Freigabe : 15|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_verriegelt_intern_ist : 16|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High + SG_ ZV_verriegelt_extern_ist : 17|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High + SG_ ZV_verriegelt_intern_soll : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_verriegelt_extern_soll : 19|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZV_gesafet_extern_ist : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_gesafet_extern_soll : 21|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3 + SG_ ZV_Einzeltuerentriegelung : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_Heckeinzelentriegelung : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_FT_offen : 24|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZV_BT_offen : 25|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZV_HFS_offen : 26|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZV_HBFS_offen : 27|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZV_HD_offen : 28|1@1+ (1,0) [0|1] "" DDA,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ ZV_HS_offen : 29|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ IRUE_aktiv : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ DWA_aktiv : 31|1@1+ (1,0) [0|1] "" ZR_High + SG_ HD_Hauptraste : 32|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ HD_Vorraste : 33|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ FFB_CarFinder : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FFB_Komfortoeffnen : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ FFB_Komfortschliessen : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_Schluessel_Zugang : 42|4@1+ (1,0) [0|15] "" ZR_High + SG_ ZV_SafeFunktion_aktiv : 46|1@1+ (1,0) [0|1] "" ZR_High + SG_ FBS_Warn_Schluessel_Batt : 47|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_Oeffnungsmodus : 48|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ HFS_verriegelt : 50|1@1+ (1,0) [0|1] "" OTA_FC + SG_ HFS_gesafet : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HBFS_verriegelt : 52|1@1+ (1,0) [0|1] "" OTA_FC + SG_ HBFS_gesafet : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_ist_Zustand_verfuegbar : 54|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ IRUE_Taster_Fkts_LED : 55|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_Tankklappe_offen : 56|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_Rollo_auf : 57|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_Rollo_zu : 58|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_SAD_auf : 59|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_SAD_zu : 60|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM_Tankklappensteller_Fehler : 61|1@1+ (1,0) [0|1] "" ZR_High + SG_ ZV_verriegelt_soll : 62|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1413 Systeminfo_01: 8 Gateway + SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_Diagnose_Aktiv : 7|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" BedienDisp_vo,BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" ZR_High,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_T_Schutz : 14|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" BedienSG_hi,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" BedienSG_hi,DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" DDA,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_Bus_Identifikation : 32|8@1+ (1,0) [0|255] "" OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + SG_ SI_CAB : 40|24@1+ (1,0) [0|16777215] "" BedienSG_hi,OTA_FC,ZR_High,ZR_LIMU,ZR_MIB_TOP_ab_Gen3,ZR_Standard + +BO_ 1420 Klemmen_Steuerung_01: 8 Gateway + SG_ Klemmen_Steuerung_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ Klemmen_Steuerung_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ KST_Txt_P_Gang : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KST_Txt_Panikabschaltung : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KST_Anf_Klemmenfreigabe_ELV : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KST_Txt_Komfortabschaltung : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KST_ZAT_betaetigt : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ KST_Unterdr_Zuendungsmeldung : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KST_aut_Abschaltung_Zuendung : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KST_Anf_ZV_Verriegelung : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Relais_VoKo_angesteuert : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ RSt_Anforderung_HMS : 26|3@1+ (1,0) [0|7] "" Vector__XXX + +BO_ 1426 Kessy_04: 8 XXX + +BO_ 1440 RLS_01: 8 Gateway + SG_ LS_Helligkeit_IR : 0|8@1+ (400,0) [0|101200] "Unit_Lux" ZR_High + SG_ LS_Helligkeit_FW : 8|10@1+ (6,0) [0|6126] "Unit_Lux" ZR_High + SG_ LS_defekt : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ LS_Verbau : 23|1@1+ (1,0) [0|1] "" ZR_High + SG_ RS_Regenmenge : 24|4@1+ (10,0) [0|100] "Unit_PerCent" OTA_FC,ZR_High + SG_ RS_Verbau : 29|1@1+ (1,0) [0|1] "" ZR_High + SG_ RS_Verglasung_schliessen : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ RS_defekt : 31|1@1+ (1,0) [0|1] "" ZR_High + SG_ RS_Wischergeschwindigkeit : 32|3@1+ (1,0) [0|7] "" OTA_FC,ZR_High + SG_ RLS_Vorfeldhelligkeit_Boost : 35|4@1+ (1,0) [0|15] "" ZR_High + +BO_ 1442 BMS_04: 8 BMC_MLBevo + SG_ BMS_04_CRC : 0|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ BMS_04_BZ : 8|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ BMS_Status_ServiceDisconnect : 13|1@1+ (1,0) [0|1] "" DCDC_800V_PAG,DCDC_HV,Gateway,Gateway_PAG,Sub_Gateway + SG_ BMS_Status_Spgfreiheit : 14|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ BMS_OBD_Lampe_Anf : 16|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ BMS_IstModus : 17|3@1+ (1,0) [0|7] "" AWC,Gateway,Gateway_PAG,Ladegeraet_Konzern,LE1,LE2,LE2_3_MLBevo_LB,Sub_Gateway,TME + SG_ BMS_Fehlerstatus : 20|3@1+ (1,0) [0|7] "" AWC,DCDC_800V_PAG,DCDC_HV,Gateway,Gateway_PAG,Ladegeraet_Konzern,Sub_Gateway + SG_ BMS_Kapazitaet_02 : 23|11@1+ (0.2,0) [0|409.2] "Unit_AmperHour" Gateway,Gateway_PAG,Ladegeraet_Konzern,Sub_Gateway + SG_ BMS_Soll_SOC_HiRes : 53|11@1+ (0.05,0) [0|100] "Unit_PerCent" Gateway,Gateway_PAG,Sub_Gateway + +BO_ 1447 TM_01: 8 Gateway + SG_ TM_Spiegel_Anklappen : 47|1@1+ (1,0) [0|1] "" ZR_High + SG_ TM_Nur_Hupen : 48|1@1+ (1,0) [0|1] "" ZR_High + SG_ TM_Door_Lock : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TM_Door_Unlock : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TM_Warnblinken : 51|1@1+ (1,0) [0|1] "" ZR_High + SG_ TM_Panik_Alarm : 52|1@1+ (1,0) [0|1] "" ZR_High + SG_ TM_ZV_Signatur : 53|11@1+ (1,0) [1|2047] "Unit_None" Vector__XXX + +BO_ 1452 HVEM_02: 8 Gateway + SG_ HVEM_IstStrom_HVVerbraucher : 0|12@1+ (0.1,-204.7) [-204.7|204.6] "Unit_Amper" Vector__XXX + SG_ HVEM_Energie_Klima_Vorgabe_HighR : 12|3@1+ (10,0) [0|50] "Unit_WattHour" TME + SG_ HVEM_IstLeistungNA : 15|9@1+ (50,0) [0|25450] "Unit_Watt" Vector__XXX + SG_ HVEM_Leistung_Klima_Vorgabe : 24|8@1+ (50,0) [0|12650] "Unit_Watt" TME + SG_ HVEM_Nutzbare_Energie : 32|11@1+ (50,0) [0|102200] "Unit_WattHour" Ladegeraet_Konzern + SG_ HVEM_Energie_Klima_Vorgabe : 43|8@1+ (50,0) [0|12650] "Unit_WattHour" TME + SG_ HVEM_MO_MaxLeistungIgnoriert : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1485 DCDC_03: 8 DCDC_800V_PAG + SG_ DCDC_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ DCDC_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ DC_Fehlerstatus : 16|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ DC_Peakstrom_verfuegbar : 19|1@1+ (1,0) [0|1] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ DC_Abregelung_Temperatur : 20|1@1+ (1,0) [0|1] "" Gateway_PAG,Sub_Gateway,TME + SG_ DC_IstModus_02 : 21|3@1+ (1,0) [0|7] "" DCDC_HV_02,Gateway,Gateway_PAG,Ladegeraet_Konzern,Sub_Gateway,TME + SG_ DC_HV_EKK_IstModus : 28|3@1+ (1,0) [0|7] "" Gateway,Gateway_PAG,Sub_Gateway,TME + SG_ DC_Status_Spgfreiheit_HV : 46|2@1+ (1,0) [0|3] "" Gateway,Gateway_PAG,Sub_Gateway + SG_ DC_IstSpannung_EKK_HV : 48|8@1+ (2,0) [0|508] "Unit_Volt" Gateway,Gateway_PAG,Sub_Gateway + SG_ DC_Temperatur : 56|8@1+ (1,-40) [-40|213] "Unit_DegreCelsi" Gateway,Gateway_PAG,Sub_Gateway,TME + +BO_ 1505 Klima_Sensor_02: 8 Gateway + SG_ BCM1_Aussen_Temp_ungef : 0|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" BMC_MLBevo,BMS_NV,FCU_MLBevo_FCEV,Ladegeraet_Konzern,TME + SG_ BCM_Heizungsabsperrventil_Status : 8|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BCM_Heizungspumpe_Status : 10|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BCM_Kompressorkupplung_Status : 12|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BCM1_PTC_stufig_Status : 28|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ BCM1_FStatus_Aussentemp_ungef : 31|1@1+ (1,0) [0|1] "" TME + SG_ BCM1_Kompressorstrom_ist : 32|8@1+ (4,0) [0|1000] "Unit_MilliAmper" Vector__XXX + SG_ BCM1_OBD_FStatus_ATemp : 44|4@1+ (1,0) [0|15] "" BMC_MLBevo,Ladegeraet_Konzern,TME + +BO_ 1513 Klima_Sensor_04: 8 Gateway + SG_ DS_Kaeltemittel_P : 8|11@1+ (0.0161,0) [0|32.9245] "Unit_Bar" TME + SG_ DS_Status : 19|2@1+ (1,0) [0|3] "" TME + SG_ ION_Status : 21|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ION_Status_LED : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAU_Geblaese : 24|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ ION_Status_Taster : 31|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1520 Dimmung_01: 8 Gateway_MQB + SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB + SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 1524 Innenlicht_11: 8 Gateway + SG_ IL_Dimmung_V_Tuerkontur : 0|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High + SG_ IL_Dimmung_H_Tuerkontur : 8|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High + SG_ IL_Dimmung_Tuerinnengriff : 16|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High + SG_ IL_Dimmung_Umfeldbel : 24|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High + SG_ IL_Bel_FS_Ausstieg : 32|1@1+ (1,0) [0|1] "" ZR_High + SG_ IL_Bel_BFS_Ausstieg : 33|1@1+ (1,0) [0|1] "" ZR_High + SG_ IL_Bel_HFS_Ausstieg : 34|1@1+ (1,0) [0|1] "" ZR_High + SG_ IL_Bel_HBFS_Ausstieg : 35|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Innenlicht_gedimmt_V : 36|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Innenlicht_gedimmt_H : 37|1@1+ (1,0) [0|1] "" ZR_High + SG_ IL_Innenlicht_aktiv : 38|1@1+ (1,0) [0|1] "" ZR_High + SG_ IL_Klemme_30G_aktiv : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_DI_Rampe_Innenlicht : 40|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_DI_Rampe_Leselicht : 41|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Innenlicht_H : 42|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Innenlicht_V : 43|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Leselicht_Anf_hl : 44|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Leselicht_Anf_hr : 45|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Leselicht_Anf_vl : 46|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Leselicht_Anf_vr : 47|1@1+ (1,0) [0|1] "" ZR_High + SG_ BCM1_Leuchten_Aus : 48|1@1+ (1,0) [0|1] "" ZR_High + SG_ AMB_Charisma_FahrPr : 49|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ AMB_Charisma_Status : 53|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ IL_Dimmung_Lautspr : 56|8@1+ (1,0) [0|100] "Unit_PerCent" ZR_High + +BO_ 1600 Motor_07: 8 Motor_Diesel_MQB + SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB + SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB + +BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB + SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB + SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB + SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB + SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1603 Einheiten_01: 8 Gateway + SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern + SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" TME + SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Ladegeraet_Konzern + SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Verbrauch_elektr : 12|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KBI_Einheit_Verbrauch_Gas : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ KBI_Einheit_Masse : 28|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1622 ELV_01: 8 Gateway + SG_ ELV_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ ELV_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ ELV_Anf_Klemme_S : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Anf_Klemme_15 : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Anf_Klemme_50 : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_01_Sendestatus : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Verriegelt : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ ELV_Entriegelt : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ ELV_ZAT_betaetigt : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Lebenszustand : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Anlernmodus : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Klemmenfreigabe : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Abbruch_Anf_Klemmenfreigabe : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_LED_Rot : 24|1@1+ (1,0) [0|1] "" ZR_High + SG_ ELV_LED_Gelb : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Txt_Panikabschaltung : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Txt_Lkg_Bewegen : 28|1@1+ (1,0) [0|1] "" ZR_High + SG_ ELV_Txt_Werkstatt : 29|1@1+ (1,0) [0|1] "" ZR_High + SG_ ELV_Txt_Defekt : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ ELV_Txt_P_Gang : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Txt_PN_Gang : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Txt_Kupplung : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_Txt_Bremse : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ELV_P_verriegelt : 35|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1624 Licht_vorne_01: 8 Gateway + SG_ Licht_Vorne_01_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ Licht_Vorne_01_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ LV_Standlicht_Anzeige : 12|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Abblendlicht_Anzeige : 13|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Fernlicht_Anzeige : 14|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Nebellicht_Anzeige : 15|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Nebelschlusslicht_Anzeige : 16|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Tagfahrlicht_Anzeige : 17|1@1+ (1,0) [0|1] "" BedienSG_hi,OTA_FC,ZR_High + SG_ LV_AFL_aktiv_Anzeige : 18|1@1+ (1,0) [0|1] "" BedienSG_hi,OTA_FC,ZR_High + SG_ LV_AFL_defekt : 19|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Blinker_li_def : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Standlicht_li_def : 21|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abblendlicht_li_def : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Fernlicht_li_def : 23|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Nebellicht_li_def : 24|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Blk_li_Seite_def : 25|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Tagfahrlicht_li_def : 26|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_FLA_aktiv_Anzeige : 27|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_FLA_defekt : 28|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_FLA_Sensor_blockiert : 29|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Blinker_re_def : 30|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Standlicht_re_def : 31|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abblendlicht_re_def : 32|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Fernlicht_re_def : 33|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Nebellicht_re_def : 34|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Blk_re_Seite_def : 35|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Tagfahrlicht_re_def : 36|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Aussenlicht_def : 37|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abblendlicht_TFL_li_def : 38|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Nebellicht_TFL_li_def : 39|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Standlicht_TFL_li_def : 40|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abblend_Fernlicht_li_def : 41|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abblendlicht_TFL_re_def : 42|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Nebellicht_TFL_re_def : 43|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Standlicht_TFL_re_def : 44|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abblend_Fernlicht_re_def : 45|1@1+ (1,0) [0|1] "" ZR_High + SG_ LV_Abbiegelicht_li_def : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LV_Abbiegelicht_re_def : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Linksverkehr : 48|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ BCM1_Licht_Dunkelheit_aktiv : 49|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_LED_Scheinwerfer_li_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LV_LED_Scheinwerfer_re_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LV_Blinker_VL_aktiv : 52|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_Blinker_VR_aktiv : 53|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ LV_MXB_Status_Anzeige : 54|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1629 ESP_20: 8 Gateway + SG_ ESP_20_CRC : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ ESP_20_BZ : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_Wiederstart_Anz_01 : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Wiederstart_Anz_02 : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Wiederstart_Anz_03 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Wiederstart_Anz_04 : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_01 : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_02 : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_03 : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_04 : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_05 : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_06 : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_07 : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_Std : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Dachrelingsensor : 42|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_Stoppverbot_Anz_08 : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HDC_Charisma_FahrPr : 45|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HDC_Charisma_Status : 49|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" AWC + SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" AWC + +BO_ 1631 Motor_16: 8 Gateway + SG_ TSK_Grundmasse : 0|8@1+ (32,0) [0|8128] "Unit_KiloGram" ZR_High + SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" ZR_High + SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Vector__XXX + SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Vector__XXX + SG_ MO_Anzeige_Kaltleuchte : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_P_Generator_ungefiltert_Anf : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_Getriebeinfo : 34|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ MO_Energieinhalt_BMS : 36|12@1+ (25,0) [0|102325] "Unit_WattHour" Vector__XXX + SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" OTA_FC,ZR_High + SG_ TSK_Steigung_02 : 56|8@1+ (0.8,-101.6) [-100.8|101.6] "Unit_PerCent" OTA_FC + +BO_ 1640 Klima_12: 8 Gateway + SG_ KL_LRH_Taster : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_LRH_Stufe : 1|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ HSH_Taster : 3|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ FSH_Taster : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zuheizer_Freigabe : 6|1@1+ (1,0) [0|1] "" TME + SG_ KL_Beschlagsgefahr : 7|1@1+ (1,0) [0|1] "" TME + SG_ KL_SIH_Soll_li : 8|3@1+ (1,0) [0|7] "" TME + SG_ KL_SIH_Soll_re : 11|3@1+ (1,0) [0|7] "" TME + SG_ KRH_Soll_li : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_SIL_Soll_li : 16|3@1+ (1,0) [0|7] "" TME + SG_ KL_SIL_Soll_re : 19|3@1+ (1,0) [0|7] "" TME + SG_ KRH_Soll_re : 22|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Geblspng_Soll : 24|8@1+ (0.05,1.45) [1.5|14] "Unit_Volt" Vector__XXX + SG_ KL_Geblspng_Fond_Soll : 32|8@1+ (0.05,1.45) [1.5|14] "Unit_Volt" Vector__XXX + SG_ KL_I_Geblaese : 40|8@1+ (0.25,0) [0|63.5] "Unit_Amper" Vector__XXX + SG_ KL_Kompressorstrom_soll : 48|10@1+ (1,0) [0|1021] "" TME + SG_ KL_Umluftklappe_Status : 58|4@1+ (1,0) [0|15] "" TME + SG_ KL_PTC_Verbauinfo : 62|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1648 Motor_18: 8 Gateway + SG_ MO_max_Ladedruck : 0|6@1+ (0.1,0) [0|6.3] "Unit_Bar" Sub_Gateway + SG_ MO_ANC_Kennfeld_Anf : 6|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_Bremslicht_Reku : 8|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_StartStopp_PopUp : 9|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO1_Sperr_Info_WFS : 11|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO1_Freigabe_Info_WFS : 12|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_EPCL : 13|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ MO_Zylabsch_Texte_02 : 16|4@1+ (1,0) [0|15] "" Sub_Gateway + SG_ MO_Fahrzeugtyp : 20|3@1+ (1,0) [0|7] "" BMS_NV,Sub_Gateway + SG_ MO_NMAX_Schaltanzeige : 23|9@1+ (25,0) [0|12775] "Unit_MinutInver" Sub_Gateway + SG_ MO_Abstellzeit : 32|8@1+ (8,0) [0|2024] "Unit_Minut" BMS_NV,Sub_Gateway,TME + SG_ MO_Abstellzeit_Status : 40|2@1+ (1,0) [0|3] "" BMS_NV,Sub_Gateway,TME + SG_ MO1_Freigabe_Verfallsinfo_WFS : 42|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_Fehler_Zylabsch : 45|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Sub_Gateway + SG_ MO_Ethanol_BS_Texte : 52|3@1+ (1,0) [0|7] "" Sub_Gateway + SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Sub_Gateway + SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Sub_Gateway + +BO_ 1710 Spiegel_01: 8 Gateway + SG_ SP_FT_oben : 0|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_FT_unten : 1|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_FT_links : 2|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_FT_rechts : 3|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_BT_oben : 4|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_BT_unten : 5|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_BT_links : 6|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_BT_rechts : 7|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_abklappen : 8|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_anklappen : 9|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_normieren : 10|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_Hzg_Taster : 12|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ SP_S_oben : 16|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_S_unten : 17|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_S_links : 18|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_S_rechts : 19|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_Auswahl_li : 20|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_Auswahl_re : 21|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_ARA_Status : 22|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_S_Klappen : 23|1@1+ (1,0) [0|1] "" ZR_High + SG_ SP_Verstellschalter_Fehler : 24|1@1+ (1,0) [0|1] "" ZR_High + +BO_ 1711 Rear_View_01: 8 Gateway + SG_ RV_Video_on : 0|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ RV_Dark_Screen : 1|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ RV_HMI_Mode : 2|2@1+ (1,0) [0|3] "" ZR_High,ZR_Standard + SG_ RV_GL_side : 4|2@1+ (1,0) [0|3] "" ZR_High,ZR_Standard + SG_ RV_System_aktiv : 6|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ RV_Reinigung_Anf : 7|1@1+ (1,0) [0|1] "" OTA_FC,ZR_High + SG_ RV_Settings_enabled : 8|1@1+ (1,0) [0|1] "" ZR_High + SG_ RV_Menu_Item : 9|2@1+ (1,0) [0|3] "" ZR_High + SG_ SV_Video_on : 11|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ RV_Calib_Fehler : 12|1@1+ (1,0) [0|1] "" ZR_High + SG_ RV_GL_Trailer_connect : 13|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ RV_GL_Trunk_open : 14|1@1+ (1,0) [0|1] "" ZR_High,ZR_Standard + SG_ RV_GL_LWS_Fehler : 15|1@1+ (1,0) [0|1] "" ZR_High + SG_ RV_Helligkeit : 16|7@1+ (1,0) [0|100] "Unit_PerCent" ZR_High,ZR_Standard + SG_ ZFAS_Umfeldbeleuchtung_Anf : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ RV_Kontrast : 24|7@1+ (1,0) [0|100] "Unit_PerCent" ZR_High,ZR_Standard + SG_ RV_Farbe : 32|7@1+ (1,0) [0|100] "Unit_PerCent" ZR_High,ZR_Standard + +BO_ 1714 Diagnose_01: 8 Gateway_MQB + SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + +BO_ 1716 VIN_01: 8 Gateway_MQB + SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB + SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + +BO_ 316495015 MEB_Camera_04: 32 XXX + +BO_ 316495049 SAL_01: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CNT : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Brake_Unknown : 18|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_Light_01 : 20|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_2 : 22|1@0+ (1,0) [0|1] "" XXX + SG_ Right_Blinker : 25|1@0+ (1,0) [0|1] "" XXX + SG_ Left_Blinker : 26|1@1+ (1,0) [0|3] "" XXX + SG_ Reverse_Light : 27|1@0+ (1,0) [0|1] "" XXX + SG_ Brake_Light_02 : 30|1@0+ (1,0) [0|1] "" XXX + SG_ Right_Blinker_02 : 44|1@1+ (1,0) [0|3] "" XXX + SG_ Left_Blinker_02 : 45|1@0+ (1,0) [0|1] "" XXX + SG_ NEW_SIGNAL_3 : 52|8@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_4 : 63|1@0+ (1,0) [0|1] "" XXX + +BO_ 316495081 MEB_Camera_05: 8 XXX + +BO_ 316495106 AAA_01: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 316495140 MEB_Camera_06: 64 XXX + +BO_ 316495165 HVL_01: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 380195935 IPA_02: 8 XXX + +BO_ 380196019 MEB_Camera_07: 16 XXX + +BO_ 380196036 MEB_Camera_08: 8 XXX + +BO_ 389241616 MEB_Camera_09: 8 XXX + +BO_ 389241617 MEB_Camera_10: 8 XXX + +BO_ 401604687 MEB_Camera_11: 8 XXX + +BO_ 402522959 MEB_Camera_14: 8 XXX + +BO_ 441800001 EML_02: 8 XXX + SG_ CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CHK : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 441800082 MEB_Camera_12: 8 XXX + +BO_ 452984911 MEB_Camera_13: 8 XXX + +CM_ BO_ 184 "Motorsteuergerät"; +CM_ BO_ 192 "Motorsteuergerät"; +CM_ BO_ 317 "Lenkungssteuergerät"; +CM_ BO_ 517 "Steuergerät für Motorstart"; +CM_ BO_ 522 "Steuergerät für Fahrzeugbewegung"; +CM_ BO_ 1622 "Steuergerät für Lenkungsverriegelung"; +CM_ BO_ 316495165 "Steuergerät ICAS1"; +CM_ BO_ 441800001 "Steuergerät für Fahrzeugbewegung"; +VAL_ 64 AB_RGS_Anst 4 "aktiv_Niveau_1" 5 "aktiv_Niveau_2" 6 "aktiv_Niveau_3" 7 "aktiv_Niveau_4" 8 "deaktiviert"; +VAL_ 64 AB_Front_Crash 0 "kein_Front_Crash" 1 "Front_Crash"; +VAL_ 64 AB_Heck_Crash 0 "kein_Heck_Crash" 1 "Heck_Crash"; +VAL_ 64 AB_SF_Crash 0 "kein_Seiten_Crash_Fahrer" 1 "Seiten_Crash_Fahrer"; +VAL_ 64 AB_SB_Crash 0 "kein_Seiten_Crash_Beifahrer" 1 "Seiten_Crash_Beifahrer"; +VAL_ 64 AB_Rollover_Crash 0 "kein_Rollover" 1 "Rollover"; +VAL_ 64 AB_Crash_Int 0 "kein_Crash" 1 "Crash_Intensitaet_1" 2 "Crash_Intensitaet_2_(nur_Stellgliedtest_MLB_B8)" 3 "Crash_Intensitaet_2_(nur_D4_C7_Colorado_NF_PAG__Crash_im_MLB_B8)" 4 "Crash_Intensitaet_3_(alt_VW/AUDI__Stellgliedtest_MLB_B8)" 5 "Crash_Intensitaet_3_(alt_PAG)" 7 "Crash_Intensitaet_3"; +VAL_ 64 AB_Lampe 0 "Aus" 1 "Ein"; +VAL_ 64 AB_Deaktiviert 0 "aktiv" 1 "deaktiviert"; +VAL_ 64 AB_VB_deaktiviert 0 "Beifahrerairbag_aktiv" 1 "Beifahrerairbag_deaktiviert"; +VAL_ 64 AB_Systemfehler 0 "kein_Fehler" 1 "Airbag_Systemfehler"; +VAL_ 64 AB_Diagnose 0 "nicht_in_Diagnose" 1 "in_Diagnose"; +VAL_ 64 AB_Stellgliedtest 0 "nicht_im_Stellgliedtest" 1 "Airbag_im_Stellgliedtest"; +VAL_ 64 AB_Erh_Auf_VB 0 "keine_Anzeige" 1 "Beifahrerairbag_deaktiviert" 2 "Beifahrerairbag_aktiviert" 3 "nicht_definiert"; +VAL_ 64 AB_Gurtwarn_VF 0 "keine_Warnung" 1 "Gurtwarnung_ausloesen"; +VAL_ 64 AB_Gurtwarn_VB 0 "keine_Warnung" 1 "Gurtwarnung_ausloesen"; +VAL_ 64 AB_Anzeige_Fussg 0 "keine_FSG_Aktion_ausgeloest" 1 "Motorhaube_offen" 2 "Systemfehler"; +VAL_ 64 AB_Texte_AKS 0 "keine_AKS_Ausloesung" 1 "AKS_ausgeloest" 2 "AKS_Systemfehler"; +VAL_ 64 AB_MKB_gueltig 0 "Multikollisionsbremsung_nicht_freigeschaltet" 1 "Multikollisionsbremsung_freigeschaltet"; +VAL_ 64 AB_MKB_Anforderung 0 "Multikollisionsbremsung_nicht_angefordert" 1 "Multikollisionsbremsung_angefordert"; +VAL_ 64 AB_Versorgungsspannung 0 "plausibel" 1 "unplausibel"; +VAL_ 64 AB_Deaktivierung_HV 0 "keine_Deaktivierung" 1 "Deaktivierung_1" 2 "Deaktivierung_2" 3 "Deaktivierung_3" 4 "Deaktivierung_4" 5 "Deaktivierung_5" 6 "Deaktivierung_6" 7 "Fehler"; +VAL_ 64 AB_EDR_Trigger 0 "No_Event" 1 "Start_Event" 2 "NonDeployment_Event" 3 "Deployment_Event"; +VAL_ 64 AB_Belegung_VF 0 "nicht_verfuegbar" 1 "Fehler" 2 "nicht_belegt" 3 "belegt"; +VAL_ 64 SC_LowSpeedCrashErkannt 0 "kein_Crash_erkannt" 1 "Crash_Frontbereich_erkannt" 2 "Crash_Heckbereich_erkannt" 3 "Crash_Front_und_Heckbereich_erkannt"; +VAL_ 64 SC_Masterzeit 127 "Init"; +VAL_ 134 LWI_Sensorstatus 0 "iO" 1 "nicht kalibriert"; +VAL_ 134 LWI_QBit_Sub_Daten 0 "LWS-Subinfo real (Lenkradwinkelinformation ADS-tauglich)" 1 "LWS-Subinfo simuliert (Lenkradwinkelinformation nicht ADS-tauglich )"; +VAL_ 134 LWI_MFL_Abschaltung 0 "inaktiv" 1 "aktiv"; +VAL_ 134 LWI_QBit_Lenkradwinkel 0 "gültiger Wert" 1 "ausserhalb der Spezifikation"; +VAL_ 134 LWI_Lenkradwinkel 8190 "Init" 8191 "Fehler"; +VAL_ 134 LWI_VZ_Lenkradwinkel 0 "positiv_links_von_der_Nullstellung" 1 "negativ"; +VAL_ 134 LWI_VZ_Lenkradw_Geschw 0 "positiv_links_von_der_Nullstellung" 1 "negativ"; +VAL_ 134 LWI_Lenkradw_Geschw 510 "Init" 511 "Fehler"; +VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active" 8 "preempted"; +VAL_ 167 MO_Mom_Soll_Roh 1022 "Init"; +VAL_ 167 MO_Mom_Ist_Summe 1022 "Init"; +VAL_ 167 MO_Mom_Traegheit_Summe 1022 "Init"; +VAL_ 167 MO_Mom_Soll_gefiltert 1022 "Init"; +VAL_ 167 MO_Mom_Schub 510 "Init"; +VAL_ 167 MO_Status_Normalbetrieb_01 0 "kein_Normalbetrieb" 1 "Normalbetrieb_erreicht"; +VAL_ 167 MO_erste_Ungenauschwelle 0 "genau" 1 "Momente ungenauer >8%"; +VAL_ 167 MO_QBit_Motormomente 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 168 MO_Mom_neg_verfuegbar 510 "Init" 511 "Fehler"; +VAL_ 168 MO_Mom_Begr_stat 510 "Init"; +VAL_ 168 MO_Mom_Begr_dyn 1022 "Init"; +VAL_ 168 MO_QBit_Drehzahl_01 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 173 GE_MMom_Soll_02 1022 "keine_Anforderung_Init" 1023 "Fehler"; +VAL_ 173 GE_MMom_Vorhalt_02 1022 "Init" 1023 "Fehler"; +VAL_ 173 GE_Uefkt 1023 "Fehler"; +VAL_ 173 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; +VAL_ 173 GE_Schaltablauf 0 "keine_Schaltung" 1 "Momentenueberschneidung" 2 "Befuellphase" 3 "Drehzahlueberfuehrung"; +VAL_ 173 GE_Uefkt_unplausibel 0 "Uefkt_plausibel" 1 "Uefkt_unplausibel"; +VAL_ 173 GE_MMom_Status_02 0 "kein_Eingriff" 1 "abs_reduzierender_Eingriff_auf_Gesamt_Antrieb_nur_schneller_Pfad" 2 "abs_erhoehender_Eingriff_auf_Gesamt_Antrieb" 3 "relativer_Eingriff_auf_Gesamt_Antrieb" 4 "relativer_Eingriff_auf_E_Maschine" 5 "abs_red_Eingr_auf_Gesamt_Antrieb_nur_Luftpfad" 6 "abs_red_Eingr_auf_Gesamt_Antrieb_Luft-_und_schnellen_Pfad" 7 "abs_Eingriff_auf_Gesamtantrieb_erhoehend_und_reduzierend"; +VAL_ 173 GE_Status_Kraftschluss 0 "offen_kein_Kraftschluss" 1 "offen_mit_Kraftschluss" 2 "schlupfend_geregelt" 3 "abgesichert_offen_kein_Kraftschl" 4 "geschlossen_mit_Mikroschlupf" 5 "geschlossen_mit_Ueberanpressung" 6 "sonstige_Fehler" 7 "fehlerhaft_geschlossen"; +VAL_ 173 GE_MMom_Status 0 "keine Anforderung" 1 "reduzierender Getriebeeingriff" 2 "erhöhender Getriebeeingriff" 3 "Įderung mit Sprung"; +VAL_ 173 GE_Freig_MMom_Vorhalt 0 "nicht_freigegeben" 1 "freigegeben"; +VAL_ 173 GE_Verbot_Ausblendung 0 "kein_Verbot" 1 "Verbot"; +VAL_ 173 GE_Zielgang 0 "Gang P/N (ausgekuppelt)" 1 "Gang 1" 2 "Gang 2" 3 "Gang 3" 4 "Gang 4" 5 "Gang 5" 6 "Gang 6" 7 "Gang 7" 8 "Gang R" 11 "Gang 8" 12 "Gang 9" 13 "Gang10" 14 "Istgang nicht definiert" 15 "Fehler"; +VAL_ 184 EM1_Freigabe_Info_WFS 0 "ungueltig" 1 "gueltig"; +VAL_ 184 EM1_Sperr_Info_WFS 0 "nicht_gesperrt" 1 "gesperrt"; +VAL_ 184 EM1_AR_aktiv 0 "Init" 1 "Ruckeldaempfer_aktiv"; +VAL_ 184 EM1_Eta_Sys 510 "Init" 511 "Fehler"; +VAL_ 184 EM1_IstStrom 2046 "Init" 2047 "Fehler"; +VAL_ 184 EM1_Fehler_ElAntriebFreilauf_Anf 0 "Init" 1 "Fehler_EM_im_Freilauf"; +VAL_ 184 EM1_Abregelung_Temperatur 0 "Init" 1 "Abregelung_Temperatur"; +VAL_ 184 EM1_AnlernenElMotor_Anf 0 "kein_Diagnose_Request" 1 "Diagnose_Request"; +VAL_ 184 EM1_Moment_HVVerbraucher 1023 "Init"; +VAL_ 184 EM1_Freigabe_Verfallsinfo_WFS 0 "Aus" 1 "Ein"; +VAL_ 184 EM1_Parken_WFS_Status 0 "Limitierung_Inaktiv" 1 "Limitierung_Aktiv" 2 "Abbruch"; +VAL_ 184 EM1_HV_betriebsbereit 0 "Init" 1 "Ready_HV"; +VAL_ 190 Engine_Status 1 "Ready" 2 "Online"; +VAL_ 253 BR_Eingriffsmoment 1022 "Init" 1023 "Fehler"; +VAL_ 253 ESP_Diagnose 0 "ESP_nicht_in_Diagnose" 1 "ESP_in_Diagnose"; +VAL_ 253 ESC_v_Signal_Qualifier_High_Low 0 "Gueteschwelle_kleiner_1kmh" 1 "Gueteschwelle_kleiner_3kmh" 2 "Gueteschwelle_kleiner_5kmh" 3 "Gueteschwelle_kleiner_10kmh" 4 "Gueteschwelle_kleiner_20kmh" 5 "Gueteschwelle_groessergleich_20kmh" 6 "Init" 7 "Fehler"; +VAL_ 253 ESP_Vorsteuerung 0 "keine_Vorsteuerung_aktiv" 1 "Vorsteuerung_aktiv"; +VAL_ 253 OBD_Schlechtweg 0 "kein_Schlechtweg_erkannt" 1 "Schlechtweg_erkannt"; +VAL_ 253 OBD_QBit_Schlechtweg 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 253 ESP_v_Signal 65533 "Unterspannung" 65534 "Init" 65535 "Fehler"; +VAL_ 253 ASR_Tastung_passiv 0 "ASR_aktiviert" 1 "ASR_passiv_getastet_oder_Schwellen_geaendert"; +VAL_ 253 ESP_Tastung_passiv 0 "ESP_aktiviert" 1 "ESP_passiv_getastet_oder_Schwellen_geaendert"; +VAL_ 253 ESP_Systemstatus 0 "iO" 1 "Fehler"; +VAL_ 253 ASR_Schalteingriff 0 "keine_Anforderung" 1 "ASR_Schaltkennfeld" 2 "Rueckschaltung" 3 "Schaltverbot"; +VAL_ 253 ESP_QBit_v_Signal 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 253 ABS_Bremsung 0 "keine_ABS_Regelung" 1 "ABS_Regelung_aktiv"; +VAL_ 253 ASR_Anf 0 "keine_Anforderung" 1 "ASR_Anforderung"; +VAL_ 253 MSR_Anf 0 "keine Anfoderung" 1 "MSR-Anforderung"; +VAL_ 253 EBV_Eingriff 0 "kein_EBV_Eingriff" 1 "EBV_Eingriff"; +VAL_ 253 EDS_Eingriff 0 "kein_EDS_Eingriff" 1 "EDS_Eingriff"; +VAL_ 253 ESP_Eingriff 0 "kein_ESP_Eingriff" 1 "ESP_Eingriff_aktiv"; +VAL_ 253 ESP_ASP 0 "inaktiv" 1 "aktiv"; +VAL_ 253 ESC_Neutralschaltung 0 "keine_Anforderung" 1 "Neutralschaltung_angefordert"; +VAL_ 267 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault"; +VAL_ 278 ESP_QBit_Wegimpuls_VL 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 278 ESP_QBit_Wegimpuls_VR 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 278 ESP_QBit_Wegimpuls_HL 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 278 ESP_QBit_Wegimpuls_HR 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 278 ESP_Wegimpuls_VL 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; +VAL_ 278 ESP_Wegimpuls_VR 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; +VAL_ 278 ESP_Wegimpuls_HL 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; +VAL_ 278 ESP_Wegimpuls_HR 1021 "Init" 1022 "Unterspannung" 1023 "Fehler"; +VAL_ 278 ESP_VL_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; +VAL_ 278 ESP_VR_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; +VAL_ 278 ESP_HL_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; +VAL_ 278 ESP_HR_Fahrtrichtung 0 "Vorwaerts" 1 "Rueckwaerts" 2 "Init" 3 "ungueltig_oder_nicht_verbaut"; +VAL_ 299 GRA_Hauptschalter 0 "Hauptschalter_aus__Taster_nicht_betaetigt" 1 "Hauptschalter_ein__Taster_betaetigt"; +VAL_ 299 GRA_Abbrechen 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 299 GRA_Typ_Hauptschalter 0 "gerasteter_Lenkstockschalter" 1 "getasteter_Lenkstockschalter"; +VAL_ 299 GRA_Limiter 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 299 GRA_Tip_Setzen 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 299 GRA_Tip_Hoch 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 299 GRA_Tip_Runter 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 299 GRA_Tip_Wiederaufnahme 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 299 GRA_Verstellung_Zeitluecke 0 "Taste_nicht_betaetigt" 1 "Dist_minus_1" 2 "Dist_plus_1" 3 "Dist_Toggle"; +VAL_ 299 GRA_Codierung 0 "kein_Hebel" 1 "GRA_Hebel" 2 "ACC_Hebel" 3 "Limiter_Only"; +VAL_ 299 GRA_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 299 GRA_LIM_Taste_verfuegbar 0 "Limiter_Taste_nicht_vorhanden" 1 "Limiter_Taste_vorhanden"; +VAL_ 299 GRA_Tip_Stufe_2 0 "Tip_Stufe_1__keine_Betaetigung" 1 "Tip_Stufe_2"; +VAL_ 299 GRA_TravelAssist 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 317 LatCon_HCA_Status 0 "disabled" 1 "initializing" 2 "ready" 3 "fault" 4 "active" 5 "preempted" 6 "fault" 7 "rejected"; +VAL_ 319 PreCrash_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 319 PreCrash_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 319 PreCrash_Schiebedach_schliessen 0 "keine_Schliessung" 1 "Schliessung_angefordert"; +VAL_ 319 PreCrash_Fenster_schliessen 0 "keine_Schliessung" 1 "Schliessung_angefordert"; +VAL_ 319 PreCrash_Blinken 0 "keine_Blinkanforderung" 1 "Warnblinken" 2 "RECAS_Blinken" 3 "Notbremsblinken"; +VAL_ 319 SC_PreSense_FCWP 0 "Warnung_gilt_fuer_Objekte" 1 "Warnung_gitl_fuer_Fussgaenger"; +VAL_ 319 PreCrash_Tueren_Verriegeln 0 "keine_Anforderung" 1 "Tueren_Verriegeln"; +VAL_ 319 PreCrash_Anforderung_AFR 0 "keine_Anforderung" 1 "linke_Seite" 2 "rechte_Seite" 3 "Vorderachse" 4 "Hinterachse" 5 "Vorwarnung" 7 "Init"; +VAL_ 319 SC_PreCrash_LED 0 "keine_Anzeige" 1 "Stufe_1_glimmen" 2 "Stufe_2_leuchten" 3 "Stufe_3_blinken"; +VAL_ 319 PreCrash_FS_Pneumatik_ansteuern 0 "keine_Anforderung" 1 "Pneumatik_ansteuern"; +VAL_ 319 PreCrash_BFS_Pneumatik_ansteuern 0 "keine_Anforderung" 1 "Pneumatik_ansteuern"; +VAL_ 319 PreCrash_Fo_Pneumatik_ansteuern 0 "keine_Anforderung" 1 "Pneumatik_ansteuern"; +VAL_ 319 PreCrash_FS_Sitzlehne_verfahren 0 "keine_Anforderung" 1 "Sitzlehne_in_pos_x-Richtung_verfahren(vor)" 2 "Sitzlehne_in_neg_x-Richtung_verfahren(zurueck)" 3 "Sitzlehnenkopf_in_pos_x-Richtung_verfahren(vor)" 4 "Sitzlehnenkopf_in_neg_x-Richtung_verfahren(zurueck)" 6 "Lehnenverstellung_ansteuern" 7 "Lehnenkopfverstellung_ansteuern"; +VAL_ 319 PreCrash_BFS_Sitzlehne_verfahren 0 "keine_Anforderung" 1 "Sitzlehne_in_pos_x-Richtung_verfahren(vor)" 2 "Sitzlehne_in_neg_x-Richtung_verfahren(zurueck)" 3 "Sitzlehnenkopf_in_pos_x-Richtung_verfahren(vor)" 4 "Sitzlehnenkopf_in_neg_x-Richtung_verfahren(zurueck)" 6 "Lehnenverstellung_ansteuern" 7 "Lehnenkopfverstellung_ansteuern"; +VAL_ 319 PreCrash_Fo_Sitzlehne_verfahren 0 "keine_Anforderung" 1 "Sitzlehne_in_pos_x-Richtung_verfahren(vor)" 2 "Sitzlehne_in_neg_x-Richtung_verfahren(zurueck)" 3 "Sitzlehnenkopf_in_pos_x-Richtung_verfahren(vor)" 4 "Sitzlehnenkopf_in_neg_x-Richtung_verfahren(zurueck)"; +VAL_ 319 PreCrash_FS_KSV_verfahren 0 "keine_Anforderung" 1 "in_pos_x-Richtung_verfahren" 2 "in_neg_x-Richung_verfahren" 3 "in_pos_z-Richtung_verfahren" 4 "in_neg_z-Richtung_verfahren" 5 "in_pos_x-Richtung_und_neg_z-Richtung_verfahren" 6 "in_pos_x_Richtung_und_pos_z-Richtung_verfahren" 7 "in_neg_x-Richtung_und_neg_z-Richtung_verfahren" 8 "in_neg_x-Richtung_und_pos_z-Richtung_verfahren" 9 "Kopfstuetze_ansteuern"; +VAL_ 319 PreCrash_BFS_KSV_verfahren 0 "keine_Anforderung" 1 "in_pos_x-Richtung_verfahren" 2 "in_neg_x-Richung_verfahren" 3 "in_pos_z-Richtung_verfahren" 4 "in_neg_z-Richtung_verfahren" 5 "in_pos_x-Richtung_und_neg_z-Richtung_verfahren" 6 "in_pos_x_Richtung_und_pos_z-Richtung_verfahren" 7 "in_neg_x-Richtung_und_neg_z-Richtung_verfahren" 8 "in_neg_x-Richtung_und_pos_z-Richtung_verfahren" 9 "Kopfstuetze_ansteuern"; +VAL_ 319 PreCrash_Fo_KSV_verfahren 0 "keine_Anforderung" 1 "in_pos_x-Richtung_verfahren" 2 "in_neg_x-Richung_verfahren" 3 "in_pos_z-Richtung_verfahren" 4 "in_neg_z-Richtung_verfahren" 5 "in_pos_x-Richtung_und_neg_z-Richtung_verfahren" 6 "in_pos_x_Richtung_und_pos_z-Richtung_verfahren" 7 "in_neg_x-Richtung_und_neg_z-Richtung_verfahren" 8 "in_neg_x-Richtung_und_pos_z-Richtung_verfahren"; +VAL_ 319 SC_PreCrash_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung" 7 "Basiseingriff" 8 "Heckeingriff"; +VAL_ 319 SC_PreCrash_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "Anhaengerbetrieb" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt" 8 "zurzeit_eingeschraenkt_ESP_Aus" 9 "Initialisierung"; +VAL_ 333 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert"; +VAL_ 333 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 333 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler"; +VAL_ 333 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler"; +VAL_ 333 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren"; +VAL_ 333 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht"; +VAL_ 333 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert"; +VAL_ 333 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System"; +VAL_ 333 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv"; +VAL_ 333 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler"; +VAL_ 333 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe"; +VAL_ 333 Accel_Boost 3 "Driving" 0 "Stop" 2 "Driving" 1 "Driving"; +VAL_ 339 MO_HVEM_Eskalation 0 "keine_Eskalation_HVEM" 1 "Eskalation_HVEM"; +VAL_ 339 MO_ErwGrenzen_Anf 0 "normal" 1 "erweitert"; +VAL_ 339 MO_Fehler_Notentladung_Anf 0 "Init"; +VAL_ 339 MO_HVEM_MaxLeistung 510 "Init"; +VAL_ 339 MO_HVK_EmIstzustand 0 "HvOff" 1 "HvStbyReq" 2 "HvStbyOk" 3 "HvBattOnReq" 4 "HvBattOnOk" 10 "HvOnIdle" 18 "HvOnDrvReq" 19 "HvOnDrvOk" 20 "HvOnDrvRdy" 28 "HvStepUpReq" 29 "HvStepUpOk" 30 "HvStepUp" 38 "HvStepDownReq" 39 "HvStepDownOk" 40 "HvStepDown" 46 "HvAcChPreReq" 47 "HvAcChPreOk" 48 "HvAcChReq" 49 "HvAcChOk" 50 "HvAcCh" 56 "HvDcChPreReq" 57 "HvDcChPreOk" 58 "HvDcChReq" 59 "HvDcChOk" 60 "HvDcCh" 67 "HvChOffReq" 68 "HvChOffOk" 69 "HvOnIdleReq" 70 "HvOnIdleOk" 96 "HvCpntOffReq" 97 "HvCpntOffOk" 98 "HvBattOffReq" 99 "HvBattOffOk" 109 "HvDcDcFailOffReq" 110 "HvDcDcFail" 119 "HvElmOffReq" 120 "HvElmOff" 126 "HvFailCpntOffReq" 127 "HvFailCpntOffOk" 128 "HvFailBattOffReq" 129 "HvFailBattOffOk" 130 "HvFailBattOff" 138 "HvFailUCtlReq" 139 "HvFailUCtlOk" 140 "HvFailUCtl" 150 "HvEmgcyOff" 255 "Init"; +VAL_ 339 MO_HVK_AntriebFehlerstatus 0 "Komponente_IO" 6 "Keine_Komponentenfunktion" 7 "Init"; +VAL_ 339 MO_MVK_Bordnetz_Anf 0 "keine_Anforderung" 1 "Bordnetzaktivitaet_gefordert"; +VAL_ 339 MO_HVK_AntriebZustand 0 "Antrieb_AUS" 1 "Antrieb_Startphase" 2 "E_Fahren" 3 "Hybrid_Fahren" 7 "Init"; +VAL_ 339 MO_HVK_EmFehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Teilbetrieb" 3 "Eingeschr_KompFkt_Interlock" 6 "Keine_Komponentenfunktion" 7 "Init"; +VAL_ 339 MO_MVK_AntriebFehlerstatus 0 "Komponente_IO" 6 "Keine_Komponentenfunktion" 7 "Init"; +VAL_ 339 MO_MVK_AntriebZustand 0 "Antrieb_AUS" 1 "Antrieb_Startphase" 2 "FreilaufMotorAus" 7 "Init"; +VAL_ 339 MO_MVK_EmFehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Teilbetrieb" 6 "Keine_Komponentenfunktion" 7 "Init"; +VAL_ 339 MO_MVK_EmIstzustand 0 "MvOff" 1 "MvStbyReq" 2 "MvStbyOk" 3 "MvBattOnReq" 4 "MvBattOnOk" 10 "MvOnIdle" 18 "MvOnDrvReq" 19 "MvOnDrvOk" 20 "MvOnDrv" 28 "MvStepUpReq" 29 "MvStepUpOk" 30 "MvStepUp" 38 "MvStepDownReq" 39 "MvStepDownOk" 40 "MvStepDown" 96 "MvCpntOffReq" 97 "MvCpntOffOk" 98 "MvBattOffReq" 99 "MvBattOffOk" 109 "MvDcDcFailOffReq" 110 "MvDcDcFail" 119 "MvElmFailOffReq" 120 "MvElmFail" 126 "MvFailCpntOffReq" 127 "MvFailCpntOffOk" 128 "MvFailBattOffReq" 129 "MvFailBattOffOk" 130 "MvFailBattOff" 138 "MvFailUCtlReq" 139 "MvFailUCtlOk" 140 "MvFailUCtl" 150 "MvEmgcyOff" 255 "Init"; +VAL_ 420 EA_Parken_beibehalten_HMS 0 "Parken_nicht_beibehalten" 1 "Parken_beibehalten" 2 "Init" 3 "Fehler"; +VAL_ 420 EA_Warnruckprofil 0 "keine_Ruckanforderung" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7"; +VAL_ 420 EA_eCall_Anf 0 "Keine_Anforderung" 1 "Ausloesen_eCall"; +VAL_ 420 EA_Funktionsstatus 0 "EA_INIT" 1 "EA_OFF" 2 "EA_STANDBY" 3 "EA_PHASE0_AKTIV" 4 "EA_PHASE1_AKTIV" 5 "EA_PHASE2_AKTIV" 6 "EA_PHASE3_AKTIV" 7 "EA_REVERSIBLER_FEHLER" 8 "EA_IRREVERSIBLER_FEHLER"; +VAL_ 420 EA_Gurtstraffer_Anf 0 "Keine_Anforderung" 1 "Haptik_1" 2 "Haptik_2" 3 "Haptik_3"; +VAL_ 420 EA_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" 6 "Parken_mit_P"; +VAL_ 420 EA_Sollbeschleunigung 2046 "Neutralwert" 2047 "Fehler"; +VAL_ 496 EA_Texte 0 "keine_Anzeige" 1 "Nothalteassistent_fehlende_Fahreraktivitaet" 2 "Nothalteassistent_aktiv_Fahrzeugfuehrung_uebernehmen" 3 "Nothalteassistent_automatischer_Nothalt_wird_durchgefuehrt" 4 "Nothalteassistent_automatischer_Nothalt_durchgefuehrt" 5 "Nothalteassistent_Verbindung_zum_Notruf_wird_aufgebaut" 6 "Nothalteassistent_deaktiviert" 7 "Nothalteassistent_Eingriff_abgebrochen" 8 "Nothalteassistent_fehlende_Fahreraktivitaet_2" 9 "Sekundenschlaf_erkannt" 10 "LaneAssist_Lenkung_uebernehmen" 11 "ACA_Fahrzeugfuehrung_uebernehmen" 12 "EA_Fahr_Standstreifenwechsel" 14 "Nothalteassistent_nicht_verfuegbar_reversibel" 15 "Nothalteassistent_Stoerung_irreversibel"; +VAL_ 496 ACF_Lampe_Hands_Off 0 "keine_Anzeige" 1 "Hands_Off_erkannt"; +VAL_ 496 EA_Infotainment_Anf 0 "Init" 1 "Keine_Absenkung" 2 "Absenkung" 3 "Mute"; +VAL_ 496 EA_Tueren_Anf 0 "Keine_Anforderung" 1 "Tueren_entriegeln"; +VAL_ 496 EA_Innenraumlicht_Anf 0 "Innenraumbeleuchtung_ausschalten" 1 "Innenraumbeleuchtung_einschalten"; +VAL_ 496 zFAS_Warnblinken 0 "Aus" 1 "Statisch" 2 "Taster" 3 "Statisch_ohne_WBT"; +VAL_ 496 STP_Primaeranz 0 "keine_Anzeige" 1 "Verfuegbar" 2 "Aktiv" 3 "Uebernahme" 4 "Aktiv_Warnung" 5 "Nicht_Verfuegbar"; +VAL_ 496 EA_Bremslichtblinken 0 "kein_Blinken" 1 "Anforderung_Bremslichtblinken"; +VAL_ 496 EA_Blinken 0 "Kein_Blinken" 1 "Wechselblinken_links" 2 "Wechselblinken_rechts" 3 "Warnblinken" 4 "Warnblinken_Taster"; +VAL_ 591 Distance_Status 0 "Valid" 3 "Invalid"; +VAL_ 619 Travel_Assist_Status 4 "enabled" 0 "disabled" 2 "ready" 3 "pre_ready"; +VAL_ 619 Travel_Assist_Request 4 "enable" 3 "disable" 0 "no_request" 1 "error"; +VAL_ 619 Travel_Assist_Available 0 "not_available" 1 "available"; +VAL_ 706 MO_Anzeige_StSt_Text 0 "keine_Anzeige" 1 "Systemfehler" 2 "Motor_manuell_starten" 3 "Rueckmeldung_durch_Fahrstufe_einlegen" 4 "Zuendungsabschaltwarnung_Timerstart" 5 "Zum_Motorstart_Bremse_treten" 6 "StSt_Aktivierung_nicht_moeglich_auf_Grund_Fahrprogramm"; +VAL_ 706 MO_Anzeige_StSt_Symbol 0 "keine_Anzeige" 1 "StSt_aktiv" 2 "Motorlauf_noetig" 3 "Fahrer_temporaer_abwesend" 4 "Fahrer_vielleicht_anwesend"; +VAL_ 706 MO_ADR_Status 0 "nicht_aktiv" 1 "ADR_angefordert" 2 "ADR_aktiv" 3 "ADR_Fehler"; +VAL_ 706 MO_AGA_Sound_Texte 0 "keine_Anzeige" 1 "Sound_off" 2 "Sound_on"; +VAL_ 706 MO_Anzeige_FMAus_Text 0 "keine_Anzeige" 1 "FMAus_Systemfehler"; +VAL_ 706 MO_Fehler_MSpG 0 "i.O." 1 "Gebl䳥 defekt oder Motorraumtemp. zu hoch"; +VAL_ 706 PEA_Texte 0 "Keine_Anzeige" 1 "PEA_Fahreruebernahme_noetig" 2 "PEA_Reku_nicht_verfuegbar"; +VAL_ 706 TSK_Ueberstimmt_vMax_FahrerInfo 0 "nicht_ueberstimmbar" 1 "ueberstimmbar" 2 "ueberstimmt"; +VAL_ 706 MO_Avus_Motorschutz 0 "keine Warnung" 1 "Drehzahlwarnung Stufe 1" 2 "Drehzahlwarnung Stufe 2" 3 "Drehzahlwarnung Stufe 3"; +VAL_ 706 MO_Rekuperationsstufe 0 "keine_Anzeige" 1 "Rekuperationsstufe_1" 2 "Rekuperationsstufe_2" 3 "Rekuperationsstufe_3" 4 "Rekuperationsstufe_4" 5 "Rekuperationsstufe_5" 6 "Rekuperationsstufe_auto" 7 "Init"; +VAL_ 706 TSK_Einheit_vMax_FahrerInfo 0 "km_h" 1 "mph"; +VAL_ 706 TSK_Status_vMax_FahrerInfo 0 "keine_Anzeige" 1 "Anzeige_im_Fahrzeugstatus" 2 "PopUp_ohne_Gong__Eintrag_FhzStat" 3 "PopUp_mit_Gong__Eintrag_FhzStat"; +VAL_ 706 MO_Red_Fahrleistung 0 "keine_Anzeige" 1 "kleine_Red" 2 "mittlere_Red_temp" 3 "mittlere_Red" 4 "grosse_Red_temp" 5 "grosse_Red"; +VAL_ 706 MO_Anz_Kuehlerluefter 0 "Kein_KuehlerluefterNachlauf" 1 "Text_Luefternachlauf_aktiv" 2 "Text_Luefternachlauf_DPF_aktiv" 3 "Platzhalter_weitere_Signale" 4 "Platzhalter_weitere_Signale" 5 "Platzhalter_weitere_Signale" 6 "Platzhalter_weitere_Signale" 7 "Platzhalter_weitere_Signale"; +VAL_ 706 MO_im_Leerlauf 0 "nicht_im_Leerlauf" 1 "im_Leerlauf"; +VAL_ 706 WIV_Enable_Oeldr_Motor 0 "Oeldruckauswertung_im_Kombi" 1 "Oeldruckauswertung_im_MSG"; +VAL_ 706 MO_OelMessung_Dauer 15 "keine_Messung_aktiv"; +VAL_ 706 TSK_vMax_FahrerInfo 0 "Init___kein_Wert"; +VAL_ 768 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw"; +VAL_ 768 ACC_Wunschgeschw_Farbe 0 "Grundfarbe" 1 "Farbe_1"; +VAL_ 768 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung"; +VAL_ 768 ACA_Querfuehrung 0 "keine_Anzeige_oder_init" 1 "passiv" 2 "aktiv" 3 "Warnung"; +VAL_ 768 ACC_Regelung_AIO 0 "Regelung_Ampel_nicht_aktiv" 1 "Regelung_Ampel_aktiv"; +VAL_ 768 ACC_Wunschgeschw_02 1023 "keine_Anzeige"; +VAL_ 768 ACC_Abstandsindex_02 0 "Audi (Init), VW (passiv/aktiv_Freifahrt)" 1022 "aus_passiv" 1023 "aktiv_Freifahrt"; +VAL_ 768 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio"; +VAL_ 768 ACC_rel_Objekt_Zusatzanz 0 "keine Anzeige" 1 "Relevantes_Objekt_erkannt" 2 "Relevantes_Objekt_Abstandswarnung"; +VAL_ 768 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert"; +VAL_ 768 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN"; +VAL_ 768 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis"; +VAL_ 768 ACC_EGO_Fahrzeug 0 "keine_Anzeige" 1 "aktiv" 2 "Warnung" 3 "aktiv_stop" 4 "passiv"; +VAL_ 768 ACC_Relevantes_Objekt_02 0 "keine_Anzeige" 1 "Relevantes_Objekt_erkannt" 2 "Relevantes_Objekt_Warnung" 3 "passiv"; +VAL_ 768 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht"; +VAL_ 768 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert"; +VAL_ 768 ACC_Texte_Primaeranz_02 0 "keine Anzeige" 1 "VDA_ACC_Symbol_YYY_kmh_mph" 2 "Kurven_Symbol_YYY_kmh_mph" 3 "Tempolimit_Symbol_YYY_kmh_mph" 4 "ACC_anfahrbereit" 5 "eingestellte_Zeitluecke" 6 "Tuer offen !" 7 "Stehendes Objekt voraus" 8 "o o o" 9 "ACC aus" 10 "ACC startet" 11 "ACC Sensor Sicht !" 12 "ACC nicht verfuegbar" 13 "ACC Fehler" 14 "ESP Eingriff" 15 "ESP PASSIV !" 16 "Parkbremse !" 17 "Geschwindigkeitsgrenze" 18 "Waehlhebelposition !" 19 "Fahrer Gurtschloss offen !" 20 "Schalthebelposition !" 21 "Drehzahl !" 22 "HDC aktiv" 23 "Kupplung betaetigt" 24 "Gang einlegen !" 25 "Bremse ueberhitzt !" 26 "Steigung_Gefaelle_zu_gross" 27 "ABSTAND" 28 "Rechtsueberholen_verhindert" 29 "Linksueberholen_verhindert" 30 "Kreuzungs_Symbol" 31 "Kreisverkehr_Symbol" 32 "Gefaelle_Symbol" 33 "Tempolimit_Kurvenassistent_ein" 34 "Kurvenassistent_ein" 35 "Tempolimitassistent_ein" 36 "Achtung_Geschwindigkeitsueberschreitung" 37 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar" 38 "Tempolimit_nicht_verfuegbar" 39 "Kurvenassistent_nicht_verfuegbar" 40 "Autobahnausfahrt_Symbol" 41 "Stauende_Symbol" 42 "Engstelle_Symbol" 43 "STP_verfuegbar" 44 "Ampel_vertikal" 45 "Ampel_horizontal" 46 "STA_verfuegbar"; +VAL_ 768 ACC_Texte_Zusatzanz_02 0 "keine_Anzeige" 1 "ACC_AUS" 2 "Standby" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_5" 10 "DISTANZ_1__dyn" 11 "DISTANZ_2__dyn" 12 "DISTANZ_3__dyn" 13 "DISTANZ_4__dyn" 14 "DISTANZ_5__dyn" 15 "DISTANZ_1__comf" 16 "DISTANZ_2__comf" 17 "DISTANZ_3__comf" 18 "DISTANZ_4__comf" 19 "DISTANZ_5__comf" 20 "DISTANZ_1__efficiency" 21 "DISTANZ_2__efficiency" 22 "DISTANZ_3__efficiency" 23 "DISTANZ_4__efficiency" 24 "DISTANZ_5__efficiency" 25 "DISTANZ_1__Stau" 26 "DISTANZ_2__Stau" 27 "DISTANZ_3__Stau" 28 "DISTANZ_4__Stau" 29 "DISTANZ_5__Stau" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanzeige_Warnung_aktiviert" 33 "STA_verfuegbar" 34 "Engstelle" 35 "RUV_aktiv_Rechtsverkehr" 36 "RUV_aktiv_Linksverkehr" 37 "STP_Verfuegbar" 38 "AW_Warnschwelle_1" 39 "AW_Warnschwelle_2" 40 "AW_Warnschwelle_3" 41 "AW_Warnung_1" 42 "AW_Warnung_2" 43 "AW_Warnung_3"; +VAL_ 768 STA_Primaeranz 0 "keine_Anzeige" 1 "STA_standby" 2 "STA_aktiv" 3 "STA_Warnung"; +VAL_ 768 Heartbeat 1 "ACC_Init_Low" 420 "ACC_Init_High" 221 "ACC_Available_Low" 360 "ACC_Available_High"; +VAL_ 768 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System"; +VAL_ 768 Lead_Type_Detected 1 "Lead_Detected" 0 "No_Lead_Detected"; +VAL_ 768 Lead_Type 5 "Bicycle" 3 "Car" 0 "None" 2 "Truck" 4 "Motorcycle"; +VAL_ 768 ACC_Events 3 "Starting_Available" 0 "None" 5 "Speed_Limit_Camera" 9 "Street_Type" 4 "Speed_Limit_in_Nav"; +VAL_ 768 Zeitluecke_1 0 "keine Anzeige"; +VAL_ 768 Zeitluecke_2 0 "keine Anzeige" 32 "Minimum"; +VAL_ 768 Zeitluecke_3 0 "keine Anzeige"; +VAL_ 768 Zeitluecke_4 0 "keine Anzeige" 40 "Minimum"; +VAL_ 768 Zeitluecke_5 0 "keine Anzeige"; +VAL_ 795 ESP_Lampe 0 "Aus" 1 "Ein"; +VAL_ 795 ABS_Lampe 0 "Aus" 1 "Ein"; +VAL_ 795 BK_Lampe_02 0 "aus" 1 "ein_statisch" 3 "Warnung"; +VAL_ 795 TC_Lampe 0 "Aus" 1 "Ein"; +VAL_ 795 ESP_m_Raddrehz 32765 "Unterspannung" 32766 "Init" 32767 "Fehler"; +VAL_ 795 ESP_Textanzeigen_03 0 "kein_Text" 1 "ESP_Stoerung" 2 "ABS_Stoerung" 3 "ESP_ABS_Stoerung" 4 "Werkstatt_Bremse" 5 "ASR_Stoerung" 6 "ESP_switched_off" 7 "ASR_off" 8 "ESP_ASR_on" 10 "keine_Bremskraftverstaerkung" 11 "ASR_aktiviert" 12 "ABS_ASR_Stoerung" 15 "ESP_offroad" 17 "ESP_sport" 18 "ESP_Zwangsaktivierung" 19 "ESP_Taster_Info" 20 "TC_aktiv" 21 "reserviert_fuer_Verlwarn" 22 "TC_switched_off" 23 "Verlwarn_akt_Rollsicher_inakt" 24 "ESP_SuperSport" 25 "ESP_Offroad_nicht_verfuegbar"; +VAL_ 795 ESP_Meldungen 0 "keine_Anzeige" 1 "Autohold_Hinweis_1" 2 "Stoerung_Autohold" 3 "Stoerung_Hillholder" 4 "Uebernehmen" 5 "Autohold_aus" 6 "Autohold_Hinweis_2"; +VAL_ 795 ESP_Fehlerstatus_Wegimp 0 "Wegimpulse_iO" 1 "Fehler"; +VAL_ 795 ESP_Wegimp_Ueberlauf 0 "Reset_und_kein_Ueberlauf" 1 "mindestens_1x_Ueberlauf"; +VAL_ 795 ESP_QBit_Wegimp_VA 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 795 ESP_HDC_Geschw_Farbe 0 "Standard_Farbe" 1 "abweichende_Farbe"; +VAL_ 795 ESP_Off_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 795 ESP_HDC_Regelgeschw 0 "nicht_verbaut" 125 "HDC_Standby" 126 "Init" 127 "Fehler"; +VAL_ 795 ESP_BKV_Warnung 0 "keine_Anzeige" 1 "keine_Bremskraftverstaerkung"; +VAL_ 817 MFL_Lokalaktiv 0 "war_nicht_lokal_aktiv" 1 "war_lokal_aktiv"; +VAL_ 817 MFL_M_Taste 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 817 MFL_Paddle_Verbau 0 "verbaut" 1 "nicht_verbaut"; +VAL_ 817 MFL_Tastencode_1 0 "Key_Released__No_Key" 1 "Context_Menu" 2 "Menu_Up__Next_Screen" 3 "Menu_Down__Previous_Screen" 4 "Up" 5 "Down" 6 "Up__Down_ThumbWheel" 7 "OK__ThumbWheel_Button" 8 "Cancel__Escape" 9 "Main_Menu" 10 "Side_Menu_left" 11 "Side_Menu_right" 12 "FAS_Menu" 13 "Left__Right_ThumbWheel" 14 "FAS_Menu_ThumbWheel" 16 "Volume_Up" 17 "Volume_Down" 18 "Volume_Up__Down_ThumbWheel" 19 "Volume_ThumbWheel_Button" 20 "Audio_Source" 21 "Arrow_A_Up__Right" 22 "Arrow_A_Down__Left" 23 "Arrow_B_Up__Right" 24 "Arrow_B_Down__Left" 25 "PTT__PushToTalk" 26 "PTT_Cancel" 27 "Route_Info" 28 "Hook" 29 "Hang_Up" 30 "Off_Hook" 31 "Light_On__Off" 32 "Mute" 33 "Joker1" 34 "Joker2" 35 "View" 36 "Arrow_A_Up__Down_ThumbWheel" 37 "Lenkradheizung" 38 "Rekuperation" 39 "Tube_Toggle" 40 "DRS_Drag_Reduction_System" 41 "Stopwatch_Start_Stop" 42 "Stopwatch_Nextlap" 100 "MAP" 101 "MAP_Boost" 102 "Turn_signal_left" 103 "Turn_signal_right" 104 "Turn_signal_off" 105 "Flashlight" 106 "Highbeam" 107 "Washer_button" 108 "Wiper_button_left" 109 "Wiper_button_right" 110 "Wiper_button_cancel" 111 "Exhaust_Sound" 112 "Drive_Select_button" 113 "Sport_button" 114 "ESP_Drift_Selection_ThumbWheel" 115 "PTT_special_vehicle" 116 "TravelAssist" 117 "Launch_Control" 118 "Drift_Mode_Button_Increase" 119 "Drift_Mode_Button_Decrease" 120 "Drift_Mode_Button_Select" 121 "Drive_Mode_Button_Increase" 122 "Drive_Mode_Button_Decrease" 123 "Drive_Mode_Button_Select" 124 "E_Boost_Button_Increase" 125 "E_Boost_Button_Decrease" 126 "E_Boost_Button_Select" 127 "PerformanceHybridButton_Increase" 128 "PerformanceHybridButton_Decrease" 129 "EV_Mode_Button" 130 "HUD_Button" 131 "PASM_Wheel" 132 "PASM_Button" 133 "PTV_Wheel" 134 "PTV_Button" 135 "TC_ESC_Wheel" 136 "TC_ESC_Button" 240 "Startup_Reset" 241 "Initialization"; +VAL_ 817 MFL_Tastencode_2 0 "Key_Released__No_Key" 1 "Context_Menu" 2 "Menu_Up__Next_Screen" 3 "Menu_Down__Previous_Screen" 4 "Up" 5 "Down" 6 "Up__Down_ThumbWheel" 7 "OK__ThumbWheel_Button" 8 "Cancel__Escape" 9 "Main_Menu" 10 "Side_Menu_left" 11 "Side_Menu_right" 12 "FAS_Menu" 13 "Left__Right_ThumbWheel" 14 "FAS_Menu_ThumbWheel" 16 "Volume_Up" 17 "Volume_Down" 18 "Volume_Up__Down_ThumbWheel" 19 "Volume_ThumbWheel_Button" 20 "Audio_Source" 21 "Arrow_A_Up__Right" 22 "Arrow_A_Down__Left" 23 "Arrow_B_Up__Right" 24 "Arrow_B_Down__Left" 25 "PTT__PushToTalk" 26 "PTT_Cancel" 27 "Route_Info" 28 "Hook" 29 "Hang_Up" 30 "Off_Hook" 31 "Light_On__Off" 32 "Mute" 33 "Joker1" 34 "Joker2" 35 "View" 36 "Arrow_A_Up_Right_Down_Left_ThumbWheel" 37 "Lenkradheizung" 38 "Rekuperation" 39 "Tube_Toggle" 40 "DRS_Drag_Reduction_System" 41 "Stopwatch_Start_Stop" 42 "Stopwatch_Nextlap" 100 "MAP" 101 "MAP_Boost" 102 "Turn_signal_left" 103 "Turn_signal_right" 104 "Turn_signal_off" 105 "Flashlight" 106 "Highbeam" 107 "Washer_button" 108 "Wiper_button_left" 109 "Wiper_button_right" 110 "Wiper_button_cancel" 111 "Exhaust_Sound" 112 "Drive_Select_button" 113 "Sport_button" 114 "ESP_Drift_Selection_ThumbWheel" 115 "PTT_special_vehicle" 116 "TravelAssist" 117 "Launch_Control" 118 "Drift_Mode_Button_Increase" 119 "Drift_Mode_Button_Decrease" 120 "Drift_Mode_Button_Select" 121 "Drive_Mode_Button_Increase" 122 "Drive_Mode_Button_Decrease" 123 "Drive_Mode_Button_Select" 124 "E_Boost_Button_Increase" 125 "E_Boost_Button_Decrease" 126 "E_Boost_Button_Select" 127 "PerformanceHybridButton_Increase" 128 "PerformanceHybridButton_Decrease" 129 "EV_Mode_Button" 130 "HUD_Button" 131 "PASM_Wheel" 132 "PASM_Button" 133 "PTV_Wheel" 134 "PTV_Button" 135 "TC_ESC_Wheel" 136 "TC_ESC_Button" 240 "Startup_Reset" 241 "Initialization"; +VAL_ 817 MFL_Eventcode_1 0 "W_no_event____T_no_event" 1 "W_1_Tick_up__T_pressed_normal" 2 "W_2_Ticks_up__T_touched" 3 "W_3_Ticks_up__T_double_click_nor" 4 "W_4_Ticks_up__T_long_press_nor_1" 5 "W_5_Ticks_up__T_long_press_nor_2" 6 "W_6_Ticks_up__T_long_press_nor_3" 7 "W_7_Ticks_up" 9 "W_7_Ticks_dn__T_pressed_strong" 10 "W_6_Ticks_dn" 11 "W_5_Ticks_dn__T_double_click_str" 12 "W_4_Ticks_dn__T_long_press_str_1" 13 "W_3_Ticks_dn__T_long_press_str_2" 14 "W_2_Ticks_dn__T_long_press_str_3" 15 "W_1_Tick_dn"; +VAL_ 817 MFL_Eventcode_2 0 "W_no_event____T_no_event" 1 "W_1_Tick_up__T_pressed_normal" 2 "W_2_Ticks_up__T_touched" 3 "W_3_Ticks_up__T_double_click_nor" 4 "W_4_Ticks_up__T_long_press_nor_1" 5 "W_5_Ticks_up__T_long_press_nor_2" 6 "W_6_Ticks_up__T_long_press_nor_3" 7 "W_7_Ticks_up" 9 "W_7_Ticks_dn__T_pressed_strong" 10 "W_6_Ticks_dn" 11 "W_5_Ticks_dn__T_double_click_str" 12 "W_4_Ticks_dn__T_long_press_str_1" 13 "W_3_Ticks_dn__T_long_press_str_2" 14 "W_2_Ticks_dn__T_long_press_str_3" 15 "W_1_Tick_dn"; +VAL_ 817 MFL_Marke 0 "VW" 1 "Audi" 2 "Seat" 3 "Skoda" 4 "VW_Nutzf" 5 "Bugatti" 6 "Lamborghini" 7 "Bentley" 8 "Rolls Royce" 9 "Quattro" 10 "kein_Hersteller_1" 11 "kein_Hersteller_2" 12 "kein_Hersteller_3" 13 "kein_Hersteller_4" 14 "Ford" 15 "Porsche"; +VAL_ 817 MFL_Tip_Down 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 817 MFL_Tip_Up 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 817 MFL_SatModul_links_Err 0 "kein_Fehler" 1 "Fehler"; +VAL_ 817 MFL_SatModul_rechts_Err 0 "kein_Fehler" 1 "Fehler"; +VAL_ 817 MFL_LR_HZG_Status 0 "inaktiv" 1 "aktiv"; +VAL_ 817 MFL_LR_HZG_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_Signalhorn 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 817 MFL_Signalhorn_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_Tip_links_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_Tip_rechts_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_Taste_links_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_Taste_rechts_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_ECU_Err 0 "normal" 1 "Fehler"; +VAL_ 817 MFL_Response_Err 0 "normal" 1 "Fehler"; +VAL_ 850 Parken_SM_03_MUX 0 "MUX_Gruppe_Punktinfo_0" 1 "MUX_Gruppe_Punktinfo_1" 2 "MUX_Gruppe_Punktinfo_2" 3 "MUX_Gruppe_Punktinfo_3" 4 "MUX_Gruppe_Punktinfo_4" 5 "MUX_Gruppe_Punktinfo_5" 6 "MUX_Gruppe_Punktinfo_6"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_00 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_01 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_02 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_03 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_04 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_05 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 850 Parken_SM_03_Traj_Trans_ID_06 0 "Transaktions_ID_0" 1 "Transaktions_ID_1" 2 "Transaktions_ID_2" 3 "Transaktions_ID_3" 4 "Transaktions_ID_4" 5 "Transaktions_ID_5" 6 "Transaktions_ID_6" 7 "Transaktions_ID_7" 8 "Transaktions_ID_8" 9 "Transaktions_ID_9" 10 "Transaktions_ID_10" 11 "Transaktions_ID_11" 12 "Transaktions_ID_12" 13 "Transaktions_ID_13" 14 "Transaktions_ID_14" 15 "Transaktions_ID_15"; +VAL_ 869 NVEM_Pilot_Info 0 "Init" 1 "keine_Einschraenkung" 2 "Veto_1" 3 "Veto_2"; +VAL_ 869 NVEM_P_Generator_Status 0 "gefiltert" 1 "ungefiltert"; +VAL_ 869 BEM_P_Generator 255 "Fehler"; +VAL_ 869 BEM_n_LLA 0 "keine_Erhoehung" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; +VAL_ 869 BEM_Anf_KL 0 "keine Anforderung" 1 "Anforderung Kühlerlüfter Ansteuerung"; +VAL_ 869 BEM_StartStopp_Info 0 "Motorlauf_nicht_notwendig_(Stoppfreigabe)" 1 "Motoranlauf_nicht_zwingend_notwendig_(Stoppverbot,keine_Startanforderung)" 2 "Motoranlauf_zwingend_notwendig_(Startanforderung)" 3 "Systemfehler"; +VAL_ 869 BEM_Batt_Ab 0 "verbunden" 1 "nicht_verbunden"; +VAL_ 869 BEM_Hybrid_Info 0 "keine_Einschraenkung_durch_Energiemanagement" 1 "Motorstart_ueber_12V_Starter_nur_bei_0kmh_moeglich" 2 "kein_Motorstart_ueber_12V_Starter_nach_el_Fahrtbetrieb" 3 "Systemfehler"; +VAL_ 869 NVEM_Red_KL 0 "Init" 1 "Abschaltung_KL" 2 "Reduzierung_KL"; +VAL_ 869 NVEM_Freilauf_Info 0 "Freilauf_freigegeben" 1 "Weiches_Veto_uebertippbar" 2 "Hartes_Veto_Abbruch" 3 "Freilauf_Anforderung"; +VAL_ 869 BEM_HYB_DC_uMinLV 254 "Init" 255 "Fehler"; +VAL_ 870 BM_ZV_auf 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_ZV_zu 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_DWA_ein 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_DWA_Alarm 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Crash 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Panik 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Not_Bremsung 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_GDO 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Warnblinken 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Taxi_Notalarm 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Telematik 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_links 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_rechts 0 "inaktiv" 1 "aktiv"; +VAL_ 870 Blinken_li_Fzg_Takt 0 "Blinker_links_ausgeschaltet" 1 "Blinker_links_eingeschaltet"; +VAL_ 870 Blinken_re_Fzg_Takt 0 "Blinker_rechts_ausgeschaltet" 1 "Blinker_rechts_eingeschaltet"; +VAL_ 870 Blinken_li_Kombi_Takt 0 "Blinkerkontrolllampe_links_ausgeschaltet" 1 "Blinkerkontrolllampe_links_eingeschaltet"; +VAL_ 870 Blinken_re_Kombi_Takt 0 "Blinkerkontrolllampe_rechts_ausgeschaltet" 1 "Blinkerkontrolllampe_rechts_eingeschaltet"; +VAL_ 870 BM_NBA_n_codiert_n_aktiv 0 "codiert_AND_kein_Fehler" 1 "nicht_codiert_OR_Fehler_erkannt"; +VAL_ 870 BM_NBA_Status 0 "NBA_nicht_aktiv" 1 "BRL_Dunkelphase" 3 "BRL_Hellphase"; +VAL_ 870 BM_WBT_Beleuchtung 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_HD_Oeffnung_angelernt 0 "keine_Quittierung" 1 "Quittierung"; +VAL_ 870 BM_Autobahn 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Rollenmodus_Blinken 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Recas 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Wischblinken 0 "inaktiv" 1 "aktiv"; +VAL_ 870 BM_Telematik_Abbruchgrund 0 "Init" 1 "speed_out_of_range" 2 "defect" 3 "clamp_s_on" 4 "clamp_15_on" 5 "door_open" 6 "engine_hood_open" 7 "trunk_open" 8 "convertible_top_not_locked" 9 "horn_activated_by_user" 10 "Higher_Prioritiy_Function_active" 11 "Central_Lock_status_changed" 12 "Request_Dropped_by_Requester" 13 "Service_Duration_Expired" 14 "not_possible_due_to_coding" 15 "no_reason_or_unknown_timeout"; +VAL_ 870 BM_PiloPa 0 "PiloPa_Blinkerquittierung_inaktiv" 1 "PiloPa_Blinkerquittierung_aktiv"; +VAL_ 870 DWA_Alarmquelle 0 "kein_Ausloesegrund" 1 "Tuerkontakt_Fahrertuer" 2 "Tuerkontakt_Beifahrertuer" 3 "Tuerkontakt_hinten_links" 4 "Tuerkontakt_hinten_rechts" 5 "Motorhaubenkontakt_vorne" 6 "Kofferraum_hinten" 7 "Masseschleife_der_Heckscheibe" 8 "Innenraumueberwachung" 9 "Alarm_durch_Noteinstieg" 10 "Sounder" 11 "Neigungssensor" 12 "TSG_FT_am_CAN_Bus" 13 "TSG_BT_am_CAN_Bus" 14 "TSG_HFS_am_CAN_Bus" 15 "TSG_HBFS_am_CAN_Bus" 16 "Klemme_15" 17 "Klemme_15sig" 18 "frei" 19 "Anhaengerueberwachung" 20 "Scheinwerferueberwachung_links" 21 "Scheinwerferueberwachung_rechts" 22 "Handschuhkasten" 23 "Verdeckueberwachung" 24 "OBD_Alarm" 25 "Power_on_Reset" 30 "Init" 31 "Fehler"; +VAL_ 888 GNSS_Ortung_Hoehe 4094 "Init" 4095 "Fehler"; +VAL_ 891 GNSS_UTC_Zeit 0 "Init"; +VAL_ 891 GNSS_Empfaenger_Status 0 "Backup_Mode" 1 "Live"; +VAL_ 891 GNSS_GPS_in_Nutzung 0 "unbenutzt" 1 "benutzt"; +VAL_ 891 GNSS_GLONASS_in_Nutzung 0 "unbenutzt" 1 "benutzt"; +VAL_ 891 GNSS_Empfangbare_Satelliten 0 "Init" 31 "31_oder_mehr"; +VAL_ 891 GNSS_Sichtbare_Satelliten 0 "Init" 31 "31_oder_mehr"; +VAL_ 891 GNSS_Genutzte_Satelliten 0 "Init" 31 "31_oder_mehr"; +VAL_ 916 WBA_Fahrstufe_02 0 "Zwischenstellung_keine_Position" 1 "Position_P" 2 "Position_R" 3 "Position_N" 4 "Position_D" 5 "Position_S" 6 "Position_M_Tippfunktion" 7 "Kurzzeit_M" 8 "Position_E" 9 "Position_MS" 10 "Position_S_Plus" 11 "Position_MS_Plus" 12 "Position_Offroad" 13 "Position_B"; +VAL_ 916 WBA_ZielFahrstufe 0 "keine_Gangempfehlung_kein_Gang_eingelegt" 1 "Pfeil_nach_S" 2 "Pfeil_nach_D" 3 "Pfeil_nach_M" 4 "Pfeil_nach_E"; +VAL_ 916 WBA_GE_Warnung_02 0 "keine_Anzeige" 1 "Fehlereskalationsstufe_I" 2 "Fehlereskalationsstufe_II" 3 "Weiterfahrt_nur_eingeschraenkt_moeglich__Kein_R_Gang" 4 "Getriebefehler_Weiterfahrt_nur_in_D_moeglich__P_bei_Motor_aus" 5 "Wegrollgefahr__P_nicht_moeglich" 6 "Paddlenotbetrieb_Schema+Warnung" 7 "Paddlenotbetrieb_Schema" 8 "Geschwindigkeitsbegrenzung_Notlauf" 9 "Fehlereskalationsst_o_Einschr" 10 "Fehlereskalationsstufe_v_Limit" 11 "Parksperre_Infostufe" 12 "Parksperre_Warnstufe_I" 13 "Parksperre_Warnstufe_II"; +VAL_ 916 WBA_eing_Gang_02 0 "keine_Ganganzeige" 1 "Gang_1" 2 "Gang_2" 3 "Gang_3" 4 "Gang_4" 5 "Gang_5" 6 "Gang_6" 7 "Gang_7" 8 "Gang_8" 9 "Gang_9" 10 "Funktion_Ganganzeigeunterdrueckung" 11 "Gang_10"; +VAL_ 916 WBA_GE_Texte 0 "keine_Anzeige" 1 "zum_Einlegen_einer_Fahrstufe_Fussbremse_betaetigen__ShiftLock_Information" 2 "zum_Einlegen_von_R_N_D_Fussbremse_betaetigen_und_Motor_starten" 3 "Wegrollgefahr_bitte_P_einlegen" 4 "Achtung_Zeitueberschreitung_P_wird_eingelegt" 5 "Wiederanmeldeprozedur_Bremse_betaetigen" 6 "P_nur_im_Stillstand_moeglich" 7 "Rennstart_aktiv"; +VAL_ 916 WBA_Segeln_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 916 WBA_Schaltschema 0 "kein_Schaltschema" 1 "xxxD(S)" 2 "xxxD_S" 3 "xxxS(D)" 4 "xxxS_D" 5 "xxxM(D)" 6 "xxxM_D" 7 "xxxM(S)" 8 "xxxM_S" 9 "xxxE(D)" 10 "xxxE_D" 11 "xxxE(S)" 12 "xxxE_S" 13 "xxxE(M)" 14 "xxxE_M"; +VAL_ 916 WBA_GE_Zusatzwarnungen 0 "keine_Anzeige" 1 "Getriebeueberhitzung_Warnstufe_I" 2 "Getriebeueberhitzung_Warnstufe_II" 3 "Getriebefehler_Bitte_anhalten_und_P_einlegen"; +VAL_ 916 GE_Sollgang 0 "keine_Empfehlung" 1 "Gang_1" 2 "Gang_2" 3 "Gang_3" 4 "Gang_4" 5 "Gang_5" 6 "Gang_6" 7 "Gang_7" 8 "Gang_8" 9 "Gang_9" 11 "Gang_10"; +VAL_ 916 GE_Tipschaltempf_verfuegbar 0 "nicht_verfuegbar" 1 "verfuegbar"; +VAL_ 916 WBA_GE_Texte_02 0 "Keine_Anzeige" 1 "Fahrtrichtungswechsel_nur_nach_Stillstandt" 2 "Ladestecker_gesteckt" 3 "zusaetzlicher_Service_erforderlich" 4 "eLaunch_Aktiv" 5 "eLaunch_nicht_moeglich" 6 "WH_S_nicht_moeglich_Offroad" 7 "WH_S_nicht_moeglich_RangeMode"; +VAL_ 916 WBA_GE_Texte_03 0 "init" 1 "LC_not_available" 2 "LCperformance_not_possible" 3 "LCperformance_possible" 4 "LCperformance_armed" 5 "LCperformance_preparation" 6 "LCperformance_launch" 7 "LCperformance_aborted" 8 "LCsmoke_not_possible" 9 "LCsmoke_possible" 10 "LCsmoke_armed" 11 "LCsmoke_launch" 12 "LCsmoke_aborted" 15 "Fehler"; +VAL_ 916 WBA_Blinken 0 "kein_WBA_Blinken" 1 "WBA_Blinken"; +VAL_ 916 GE_Wiederstart_Anz_Std 0 "keine_Anzeige" 1 "Standard_Wiederstartgrund"; +VAL_ 916 GE_Stoppverbot_Anz_01 0 "keine_Anzeige" 1 "Temperaturbedingung"; +VAL_ 916 GE_Stoppverbot_Anz_02 0 "keine_Anzeige" 1 "Drucksensorausfall"; +VAL_ 916 GE_Stoppverbot_Anz_03 0 "keine_Anzeige" 1 "Grundeinstellung"; +VAL_ 916 GE_Stoppverbot_Anz_04 0 "keine_Anzeige" 1 "Demontagestellung"; +VAL_ 916 GE_Stoppverbot_Anz_05 0 "keine_Anzeige" 1 "Eingeschraenkte_Fahrfunktion_Notlauf_Liegenbleiber"; +VAL_ 916 GE_Stoppverbot_Anz_06 0 "keine_Anzeige" 1 "Stoppverbot_ueber_Applikation"; +VAL_ 916 GE_Stoppverbot_Anz_07 0 "keine_Anzeige" 1 "Schaltung_aktiv"; +VAL_ 916 GE_Stoppverbot_Anz_Std 0 "keine_Anzeige" 1 "Standard_Stoppvetogrund"; +VAL_ 919 LDW_Gong 1 "Chime" 2 "Beep" 0 "None"; +VAL_ 919 LDW_Texte 8 "laneAssistTakeOver" 4 "laneAssistTakeOverUrgent" 0 "none"; +VAL_ 949 KL_Drehz_Anh 0 "keine_Anhebung" 1 "Drehzahlanhebung_vom_Motor_angefordert"; +VAL_ 949 KL_Vorwarn_Komp_ein 0 "Init" 1 "Vorwarnung_Kompressor_ein"; +VAL_ 949 KL_AC_Schalter 0 "aus" 1 "ein"; +VAL_ 949 KL_Komp_Moment_alt 1 "veraltet_bzw_Ermittlung_des_Moments_nicht_moeglich__zB_keine_Drehzahl_kein_Kaeltemitteldruck"; +VAL_ 949 KL_Vorwarn_Zuheizer_ein 0 "keine_Vorwarnung" 1 "Vorwarnung_Zuheizer_ein"; +VAL_ 949 KL_Zustand 0 "Aus" 1 "Ein"; +VAL_ 949 KL_Kompressorkupplung_linear 253 "volle_Ansteuerung" 254 "Init__nicht_bedient"; +VAL_ 949 KL_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 949 KL_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 949 KL_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 949 KL_T_Charge 0 "Taster_nicht_betaetigt" 1 "Taster_betaetigt"; +VAL_ 949 KL_Last_Kompr 255 "Fehler"; +VAL_ 949 KL_Spannungs_Anf 0 "keine_Anforderung" 1 "Anforderung_Stufe_1" 2 "Anforderung_Stufe_2" 3 "Anforderung_Stufe_3"; +VAL_ 949 KL_Thermomanagement 0 "keine_Freigabe_TMM__max_Heizbedarf" 1 "kleine_Freigabe_TMM" 2 "mittlere_Freigabe_TMM" 3 "volle_Freigabe_TMM__kein_Heizbedarf"; +VAL_ 949 KL_StartStopp_Info 0 "Motorlauf_nicht_notwendig_(Stoppfreigabe)" 1 "Motoranlauf_nicht_zwingend_notwendig_(Stoppverbot,keine_Startanforderung)" 2 "Motoranlauf_zwingend_notwendig_(Startanforderung)" 3 "Systemfehler"; +VAL_ 949 KL_Freilauf_Info 0 "Freilauf_freigegeben" 1 "Uebergang_in_Freilauf_unzulaessig" 2 "Freilauf_nicht_freigegeben_Abbruch" 3 "Freilauf_Anforderung"; +VAL_ 949 KL_Anf_KL 255 "Fehler"; +VAL_ 949 KL_el_Zuheizer_Stufe 0 "Aus" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; +VAL_ 949 KL_Ausstattung_Klima 0 "Heizung_elektrisch" 1 "Klimamanuell_elektrisch" 2 "Climatic__1_Zone" 3 "Climatronic__1_Zone" 4 "Climatronic__2_Zonen" 5 "Climatronic__3_Zonen" 6 "Climatronic__4_Zonen" 7 "reserviert"; +VAL_ 949 KL_Variante_Standheizung 0 "Wasserstandheizung_60_min_Laufzeit" 1 "Luftstandheizung_120_min_Laufzeit" 2 "Wasserstandheizung_120_min_Laufzeit" 3 "Wasser_und_Luftstandheizung_120_min_Laufzeit"; +VAL_ 958 MO_StartStopp_Status 0 "System_in_diesem_KL15_Zyklus_nicht_verfuegbar" 1 "System_aktiv_keine_Freigabe_durch_StartStop_Koordinator" 2 "System_aktiv_alle_Freigaben_liegen_vor" 3 "System_aktiv_mindestens_eine_Freigabe_fehlt"; +VAL_ 958 MO_StartStopp_Wiederstart 0 "Wiederstart_inaktiv" 1 "Wiederstart_aktiv"; +VAL_ 958 MO_StartStopp_Motorstopp 0 "Motor_Stop_inaktiv" 1 "Motor_Stop_aktiv"; +VAL_ 958 MO_Freig_Reku 0 "Rekuperations-Modus aus" 1 "Empfehlung Spannungsanhebung" 2 "Empfehlung Spannungsabsenkung" 3 "Rekuperationsmodus aktiv, Spannungsvariation nicht notwendig"; +VAL_ 958 MO_Kl_75 0 "Aus" 1 "Ein"; +VAL_ 958 MO_Kl_50 0 "aus" 1 "KL50_ein_Startausfuehrung_Fahrer"; +VAL_ 958 MO_Gangposition 0 "Gang_N" 1 "Gang_1" 2 "Gang_2" 3 "Gang_3" 4 "Gang_4" 5 "Gang_5" 6 "Gang_6" 7 "Gang_7" 8 "Gang_8" 9 "Automat_P" 10 "Automat_Vorwaerts_S" 11 "Automat_Vorwaerts_D/E" 12 "Zwischenstellung" 13 "Gang_R" 14 "Istgang_nicht_definiert" 15 "Fehler"; +VAL_ 958 MO_StartStopp_Fahrerwunsch 0 "Init" 1 "Stoppverbot_durch_Fahrer" 2 "Stoppfreigabe_durch_Fahrer" 3 "Stoppanforderung_durch_Fahrer"; +VAL_ 958 MO_HYB_Fahrbereitschaft 0 "keine_Fahrbereitschaft" 1 "Fahrbereitschaft"; +VAL_ 958 MO_Ext_E_Fahrt_aktiv 0 "Rueckmeldung_E_Taster_aus" 1 "Rueckmeldung_E_Taster_ein"; +VAL_ 958 MO_Fahrer_bremst 0 "kein_Bremsen" 1 "Bremse_betaetigt"; +VAL_ 958 MO_QBit_Fahrer_bremst 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 958 MO_BLS 0 "kein_Bremsen" 1 "Bremse_betaetigt"; +VAL_ 958 MO_Konsistenz_Bremsped 0 "Bremspedalinformation_plausibel" 1 "Bremspedalinformation_unplausibel"; +VAL_ 958 MO_KomFehler_ESP 0 "kein_Fehler" 1 "Fehler"; +VAL_ 958 MO_Klima_Eingr 0 "kein Eingriff" 1 "Klimakompressor ausschalten" 2 "Klimakompressor Leistungsreduzierung" 3 "Klimakompressor aufgrund der Heissleuchtenvorwarnung ausschalten"; +VAL_ 958 MO_Aussp_Anlass 0 "Anlasser_darf_angesteuert_werden" 1 "Anlasser_ausspuren__Ansteuerung_nicht_moeglich"; +VAL_ 958 MO_Freig_Anlass 0 "Start_nicht_zulaessig" 1 "Startfreigabe"; +VAL_ 958 MO_Kuppl_schalter 0 "Schalter_sagt_ausgekuppelt" 1 "Schalter_sagt_eingekuppelt"; +VAL_ 958 MO_Interlock 0 "Interlockschalter_nicht_betaetigt" 1 "Interlockschalter_betaetigt"; +VAL_ 958 MO_Motor_laeuft 0 "Motor_laeuft_nicht" 1 "Motor_laeuft_autark_und_stabil_und_darf_mechanisch_belastet_werden"; +VAL_ 958 MO_Kickdown 0 "kein_Kickdown" 1 "Kickdown"; +VAL_ 958 MO_QBit_KL_75 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 958 MO_EKlKomLeiRed 0 "keine_Leistungsbegr" 1 "Leistungsbegr_75" 2 "Leistungsbegr_50" 3 "Leistungsbegr_25"; +VAL_ 958 MO_Handshake_STH 0 "keine EKP-Ansteuerung durch STH-Anforderung" 1 "EKP-Ansteuerung durch STH-Anforderung"; +VAL_ 958 MO_BKV_Unterdruckwarnung 0 "Unterdruckhaushalt_iO" 1 "Unterdruckhaushalt_niO"; +VAL_ 958 MO_Freigabe_Segeln 0 "Segelbetrieb_nicht_freigegeben" 1 "Segelbetrieb_freigegeben"; +VAL_ 958 MO_PTC_Status 0 "nicht_unterstuetzt" 1 "Stufe_0" 2 "Stufe_1" 3 "Stufe_2" 4 "Stufe_3" 7 "PTC_am_BCM"; +VAL_ 958 MO_QBit_Gangposition 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 958 MO_Signalquelle_Gangposition 0 "Sensorsignal" 1 "Modellsignal"; +VAL_ 958 MO_Remotestart_Betrieb 0 "MSG_nicht_bereit_fuer_RS_Betrieb" 1 "MSG_bereit_fuer_oder_im_RS_Betrieb"; +VAL_ 958 MO_Remotestart_moeglich 0 "Remotestart_nicht_moeglich" 1 "Remotestart_moeglich"; +VAL_ 958 MO_FMAus_aktiv 0 "inaktiv" 1 "Segeln_mit_Motor_aus_aktiv"; +VAL_ 958 MO_FMAus_Startvariante 0 "kein_Motorstart" 1 "Motorstart_elektrischer_Starter" 2 "GetriebeAnschleppstart" 3 "GetriebeNotAnschleppstart"; +VAL_ 958 MO_BMS_NV_Anf_stuetzen 0 "nicht_notwendig" 1 "notwendig"; +VAL_ 958 MO_Zylinderabschaltung 0 "Vollmotorbetrieb_VMB" 1 "Uebergang_HMB_in_VMB" 2 "Uebergang_VMB_in_HMB" 3 "Halbmotorbetrieb_HMB"; +VAL_ 958 MO_HYB_VM_aktiv 0 "VM_nicht_aktiv" 1 "VM_aktiv"; +VAL_ 958 MO_StartVorauss_erfuellt 0 "Signal_nicht_bedient" 1 "StartVorauss_nicht_ueberpruefbar" 2 "StartVorauss_nicht_erfuellt" 3 "StartVorauss_erfuellt"; +VAL_ 960 RSt_Fahrerhinweise 0 "Init" 1 "Fahreruebernahme_Hinweis_ZAT_Automat_ohne_Gong" 2 "Fahreruebernahme_Hinweis_ZAT_Automat_mit_Gong" 3 "Fahreruebernahme_Hinweis_ZAT_Handschalter_ohne_Gong" 4 "Fahreruebernahme_Hinweis_ZAT_Handschalter_mit_Gong" 5 "Fahreruebernahme_Hinweis_ZAS_Automat_ohne_Gong" 6 "Fahreruebernahme_Hinweis_ZAS_Automat_mit_Gong" 7 "Fahreruebernahme_Hinweis_ZAS_Handschalter_ohne_Gong" 8 "Fahreruebernahme_Hinweis_ZAS_Handschalter_mit_Gong" 9 "RemoteStart_aktiv_ohne_Gong" 10 "RemoteStart_aktiv_mit_Gong" 11 "void" 12 "void" 13 "void" 14 "void" 15 "void"; +VAL_ 960 ZAS_Kl_S 0 "aus" 1 "S_Kontakt_ein"; +VAL_ 960 ZAS_Kl_15 0 "aus" 1 "ein"; +VAL_ 960 ZAS_Kl_X 0 "aus" 1 "ein"; +VAL_ 960 ZAS_Kl_50_Startanforderung 0 "aus" 1 "KL50_ein_Startwunsch_Fahrer"; +VAL_ 960 BCM_Remotestart_Betrieb 0 "kein_RS_Betrieb" 1 "RS_Betrieb"; +VAL_ 960 ZAS_Kl_Infotainment 0 "inaktiv" 1 "aktiv"; +VAL_ 960 BCM_Remotestart_KL15_Anf 0 "inaktiv" 1 "aktiv"; +VAL_ 960 BCM_Remotestart_MO_Start 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 960 KST_Warn_P1_ZST_def 0 "nicht_defekt" 1 "defekt"; +VAL_ 960 KST_Warn_P2_ZST_def 0 "nicht_defekt" 1 "defekt"; +VAL_ 960 KST_Fahrerhinweis_1 0 "inaktiv" 1 "aktiv"; +VAL_ 960 KST_Fahrerhinweis_2 0 "inaktiv" 1 "aktiv"; +VAL_ 960 BCM_Ausparken_Betrieb 0 "kein_Betrieb" 1 "Ausparkvorgang_aktiv"; +VAL_ 960 KST_Fahrerhinweis_4 0 "inaktiv" 1 "aktiv"; +VAL_ 960 KST_Fahrerhinweis_5 0 "inaktiv" 1 "aktiv"; +VAL_ 960 KST_Fahrerhinweis_6 0 "inaktiv" 1 "aktiv"; +VAL_ 967 MO_Kuehlerluefter_MUX 0 "Kuehlerluefter_1" 1 "Kuehlerluefter_2"; +VAL_ 967 MO_Kuehlerluefter_1 126 "Init" 127 "Fehler"; +VAL_ 967 MO_Kuehlerluefter_2 126 "Init" 127 "Fehler"; +VAL_ 967 MO_EFLEX_Lampe 0 "Lampe_aus" 1 "Lampe_ein" 2 "Lampe_blinkend" 3 "Lampe_blinkend_mit_Akustik"; +VAL_ 967 MO_KJS_nicht_bereit 0 "kein_Fehler" 1 "Fehler"; +VAL_ 967 MO_ITM_Warnung_Pumpe 0 "keine_Warnung" 1 "ITM_Warnung"; +VAL_ 967 WIV_Anzeige_aktiv 0 "Anzeige aus" 1 "WIV Anzeige aktiv"; +VAL_ 967 WIV_Oelmin_Warn 0 "in_Ordnung" 1 "Warnung"; +VAL_ 967 WIV_Sensorfehler 0 "in_Ordnung" 1 "Sensor_defekt"; +VAL_ 967 WIV_Schieflage 0 "Fahrzeug_gerade" 1 "Fahrzeug_in_Schieflage"; +VAL_ 967 MO_Zustand_HWP 0 "HWP_nicht_schaltbar" 1 "HWP_foerdert_nicht" 2 "HWP_foerdert" 3 "reserviert"; +VAL_ 967 OLEV_Systemstoerung 0 "֬system i.O." 1 "Systemstörung ֬system"; +VAL_ 967 MO_Oelwarnung_max 0 "keine_Warnung" 1 "Warnfall_aktiv"; +VAL_ 967 WIV_Oelsystem_aktiv 0 "Anzeige_aus" 1 "Anzeige_aktiv"; +VAL_ 967 WIV_nicht_betriebswarm 0 "Motor_warm" 1 "Motor_nicht_betriebswarm"; +VAL_ 967 WIV_Ueberfuell_Warn 0 "in_Ordnung" 1 "Ueberfuellwarnung"; +VAL_ 967 WIV_laufender_Motor 0 "Messung_moeglich" 1 "Messung_nicht_moeglich"; +VAL_ 967 MO_E_Warnungen 0 "keine_Anzeige" 1 "Fehler_Elektrosystem_Anhalten" 2 "Fehler_Elektrosystem_Werkstatt" 3 "Elektrosystem_ueberhitzt_Stopp" 4 "Fehler_Hybridsystem_Anhalten" 5 "Fehler_Hybridsystem_Werkstatt" 6 "Fehler_Wasserstoffsystem_Anhalte" 7 "Fehler_Wasserstoffsystem_Werksta" 8 "reserviert_keine_Anzeige" 9 "reserviert_keine_Anzeige" 10 "reserviert_keine_Anzeige" 11 "reserviert_keine_Anzeige" 12 "reserviert_keine_Anzeige" 13 "reserviert_keine_Anzeige" 14 "reserviert_keine_Anzeige" 15 "reserviert_keine_Anzeige"; +VAL_ 967 MO_Text_Motorstart 0 "keine_Anzeige" 1 "Motor_im_Stoppbetrieb" 2 "StartStopp_sicherheitsbedingt_deaktiviert" 3 "System_fordert_Wiederstart" 4 "Aufforderung_Motorstart" 5 "Motorlauf_noetig" 6 "Motorlaufwarnung" 9 "Unerwuenschter_Motorstillstand" 10 "Motorstart_nicht_moeglich" 11 "Fehler_Kupplungsschalter" 12 "Motor_startet" 13 "Kupplung_betaetigen" 14 "Waehlhebel_in_PN_Position" 15 "Bremse_treten"; +VAL_ 967 MO_E_Texte 0 "keine_Anzeige" 1 "Batterie_fast_leer" 2 "Ladestecker_nicht_fahrbereit" 3 "VM_Betrieb_erforderlich" 4 "Batterie_laedt_Nicht_ausschalten" 5 "Bitte_Bremse_treten" 6 "manueller_Neustart_erforderlich" 7 "Stopp_Fahrzeug_nicht_abschleppen" 8 "kein_Neustart_Haube_nicht_oeffnen" 9 "Motorstart_im_naechsten_Zyklus" 10 "VM_erforderlich_EVMode_abwaehlen" 11 "laengerer_VMBetrieb_Bordbuch" 12 "Tank_leer_VM_nicht_verfuegbar" 13 "Bitte_warten_Motor_startet" 14 "kein_Start_Batterietemperatur" 15 "Ende_elektrische_Reichweite_erreicht"; +VAL_ 967 WIV_Oeldyn_avl 0 "Oeldyn_nicht_vorhanden" 1 "Oeldyn_vorhanden"; +VAL_ 967 OLEV_Oelstand_nicht_vorhanden 0 "֬stand vorhanden" 1 "֬stand nicht vorhanden"; +VAL_ 967 MO_Systemlampe 0 "Lampe aus" 1 "Lampe ein"; +VAL_ 967 MO_OBD2_Lampe 0 "Lampe aus" 1 "Lampe ein"; +VAL_ 967 MO_Heissleuchte 0 "Lampe aus" 1 "Lampe ein"; +VAL_ 967 MO_Partikel_Lampe 0 "Lampe aus" 1 "Lampe ein"; +VAL_ 967 MO_RedFahrleistung_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 967 WIV_Oelstand_nicht_vorhanden 0 "֬stand vorhanden" 1 "֬stand nicht vorhanden"; +VAL_ 967 WIV_nachfuellanzeige_ein 0 "keine_Nachfuellanzeige" 1 "Nachfuellanzeige"; +VAL_ 967 WIV_Ueberfuell_deaktiv 0 "Ueberfuellwarnung_am_Kombi_aktiv" 1 "Ueberfuellwarnung_am_Kombi_deaktiv"; +VAL_ 967 WIV_Unterfuell_Warn 0 "in_Ordnung" 1 "Unterfuellwarnung"; +VAL_ 967 MO_Tankdeckel_Lampe 0 "Lampe aus" 1 "Lampe ein"; +VAL_ 967 MO_Text_Tankdeckelwarn 0 "kein_Text" 1 "Anzeige_Text_Tankdeckelwarnung_im_Kombi"; +VAL_ 967 MO_Vorglueh_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 967 WIV_Oeldr_Warn_Motor 0 "keine_Warnung" 1 "niedrige_Oeldruckstufe_nicht_erreicht"; +VAL_ 967 MO_E_Mode 0 "keine_Anzeige" 1 "E_Mode_passiv" 2 "E_Mode_aktiv" 3 "E_Mode_inaktiv_nicht_verfuegbar" 4 "E_Mode_aktiv_nicht_verfuegbar" 5 "reserviert_keine_Anzeige" 6 "reserviert_keine_Anzeige" 7 "reserviert_keine_Anzeige"; +VAL_ 974 HFS_Tuer_geoeffnet 0 "geschlossen" 1 "offen"; +VAL_ 974 HFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; +VAL_ 974 HFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; +VAL_ 974 HFS_Heckrollotaster_betaetigt 0 "keine_Verfahranweisung_in_Richtung_Hoch" 1 "In_Richtung_Hoch_Verfahren"; +VAL_ 974 HFS_Tuerschloss_defekt 0 "Tuerschloss_funktionsfaehig" 1 "Tuerschloss_defekt"; +VAL_ 974 HFS_Unlock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_Lock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_Sperrklinke 0 "Schloss_in_Vorraste_und_Hauptraste" 1 "Tuer_auf_oder_Tuer_Position_zwischen_Vor_und_Hauptraste"; +VAL_ 974 HFS_TAG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_TIG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_FH_S_HBFS_AutoHoch 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; +VAL_ 974 HFS_FH_S_HBFS_AutoTief 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; +VAL_ 974 HFS_FH_S_HBFS_ManHoch 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; +VAL_ 974 HFS_FH_S_HBFS_ManTief 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; +VAL_ 974 HFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; +VAL_ 974 HFS_SAD_Schalter 0 "nicht_betaetigt" 5 "AUF_manuell" 6 "AUF_automatik" 7 "ZU_manuell" 8 "ZU_automatik" 13 "nicht_verfuegbar" 14 "Init" 15 "Fehler"; +VAL_ 974 HFS_FH_S_ManHoch 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_FH_S_AutoHoch 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_FH_S_ManTief 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_FH_S_AutoTief 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_FH_Bew_hoch 0 "inaktiv" 1 "aktiv"; +VAL_ 974 HFS_FH_Bew_tief 0 "inaktiv" 1 "aktiv"; +VAL_ 974 HFS_FH_Fang 0 "ausserhalb_Fangbereich" 1 "innerhalb_Fangbereich"; +VAL_ 974 HFS_FH_Block 0 "inaktiv" 1 "aktiv"; +VAL_ 974 HFS_FH_Thermo 0 "inaktiv" 1 "aktiv"; +VAL_ 974 HFS_UEKB_aktiviert 0 "inaktiv" 1 "aktiv"; +VAL_ 974 HFS_Tueroeffnen_Warnung 0 "Tuerwarnung_nicht_aktiv" 1 "Tuerwarnung_aktiv"; +VAL_ 974 HFS_FH_normiert 0 "inaktiv" 1 "aktiv"; +VAL_ 974 ASW_Warnung_aktiv_HFS 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 974 HFS_Zuziehhilfe_aktiv 0 "Init" 1 "Zuziehhilfe_aktiv"; +VAL_ 974 HFS_Seitenrollo_hoch 1 "Seitenrollo_in_Bewegung_hoch"; +VAL_ 974 HFS_Seitenrollo_tief 1 "Seitenrollo_in_Bewegung_tief"; +VAL_ 974 HFS_Status_KiSi 0 "inaktiv" 1 "aktiv"; +VAL_ 974 SSR_HFS_Pos_Unten 0 "SSR_Oben" 1 "SSR_Unten"; +VAL_ 974 HFS_Oben_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_o"; +VAL_ 974 HFS_Unten_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_u"; +VAL_ 974 MTHFS_M_Taste 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 MTHFS_Pos1 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 MTHFS_Pos2 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 MTHFS_Pos3 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 974 HFS_MRollo_Schalter 0 "nicht_betaetigt" 1 "ZU_manuell" 2 "ZU_automatik" 3 "AUF_manuell" 4 "AUF_automatik" 5 "nicht_verfuegbar" 6 "Init" 7 "Fehler"; +VAL_ 974 HFS_Lock_Taster_inv 0 "Lock Taster bet䴧it" 1 "Lock Taster nicht bet䴩gt"; +VAL_ 974 HFS_Status_eTAG 0 "Init" 1 "Griff_ausgefahren" 2 "Griff_eingefahren" 3 "Fehler"; +VAL_ 974 HFS_Tuer_Status_QBit 0 "Status_Tuerkontakt_sicher" 1 "Status_Tuerkontakt_unsicher"; +VAL_ 974 HFS_TCR_Mode_aktiv 0 "TCR_Mode_deaktiv" 1 "TCR_Mode_aktiv"; +VAL_ 975 HBFS_Tuer_geoeffnet 0 "geschlossen" 1 "offen"; +VAL_ 975 HBFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; +VAL_ 975 HBFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; +VAL_ 975 HBFS_Heckrollotaster_betaetigt 0 "keine_Verfahranweisung_in_Richtung_Hoch" 1 "In_Richtung_Hoch_Verfahren"; +VAL_ 975 HBFS_Tuerschloss_defekt 0 "Tuerschloss_funktionsfaehig" 1 "Tuerschloss_defekt"; +VAL_ 975 HBFS_Unlock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_Lock_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_Sperrklinke 0 "Schloss_in_Vorraste_und_Hauptraste" 1 "Tuer_auf_oder_Tuer_Position_zwischen_Vor_und_Hauptraste"; +VAL_ 975 HBFS_TAG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_TIG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_FH_S_HFS_AutoHoch 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; +VAL_ 975 HBFS_FH_S_HFS_AutoTief 0 "keine_Bedienung" 1 "Automatiklauf_Angefordert"; +VAL_ 975 HBFS_FH_S_HFS_ManHoch 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; +VAL_ 975 HBFS_FH_S_HFS_ManTief 0 "keine_Bedienung" 1 "Manueller_Lauf_Angefordert"; +VAL_ 975 HBFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; +VAL_ 975 HBFS_SAD_Schalter 0 "nicht_betaetigt" 5 "AUF_manuell" 6 "AUF_automatik" 7 "ZU_manuell" 8 "ZU_automatik" 13 "nicht_verfuegbar" 14 "Init" 15 "Fehler"; +VAL_ 975 HBFS_FH_S_ManHoch 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_FH_S_AutoHoch 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_FH_S_ManTief 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_FH_S_AutoTief 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_FH_Bew_hoch 0 "inaktiv" 1 "aktiv"; +VAL_ 975 HBFS_FH_Bew_tief 0 "inaktiv" 1 "aktiv"; +VAL_ 975 HBFS_FH_Fang 0 "ausserhalb_Fangbereich" 1 "innerhalb_Fangbereich"; +VAL_ 975 HBFS_FH_Block 0 "inaktiv" 1 "aktiv"; +VAL_ 975 HBFS_FH_Thermo 0 "inaktiv" 1 "aktiv"; +VAL_ 975 HBFS_UEKB_aktiviert 0 "inaktiv" 1 "aktiv"; +VAL_ 975 HBFS_Tueroeffnen_Warnung 0 "Tuerwarnung_nicht_aktiv" 1 "Tuerwarnung_aktiv"; +VAL_ 975 HBFS_FH_normiert 0 "inaktiv" 1 "aktiv"; +VAL_ 975 ASW_Warnung_aktiv_HBFS 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 975 HBFS_Zuziehhilfe_aktiv 0 "Init" 1 "Zuziehhilfe_aktiv"; +VAL_ 975 HBFS_Seitenrollo_hoch 1 "Seitenrollo_in_Bewegung_hoch"; +VAL_ 975 HBFS_Seitenrollo_tief 1 "Seitenrollo_in_Bewegung_tief"; +VAL_ 975 HBFS_Status_KiSi 0 "inaktiv" 1 "aktiv"; +VAL_ 975 SSR_HBFS_Pos_Unten 0 "SSR_Oben" 1 "SSR_Unten"; +VAL_ 975 HBFS_Oben_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_o"; +VAL_ 975 HBFS_Unten_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_u"; +VAL_ 975 MTHBFS_M_Taste 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 MTHBFS_Pos1 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 MTHBFS_Pos2 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 MTHBFS_Pos3 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 975 HBFS_MRollo_Schalter 0 "nicht_betaetigt" 1 "ZU_manuell" 2 "ZU_automatik" 3 "AUF_manuell" 4 "AUF_automatik" 5 "nicht_verfuegbar" 6 "Init" 7 "Fehler"; +VAL_ 975 HBFS_Lock_Taster_inv 0 "Lock Taster bet䴧it" 1 "Lock Taster nicht bet䴩gt"; +VAL_ 975 HBFS_Status_KiSi_inv 0 "aktiv" 1 "inaktiv"; +VAL_ 975 HBFS_Status_eTAG 0 "Init" 1 "Griff_ausgefahren" 2 "Griff_eingefahren" 3 "Fehler"; +VAL_ 975 HBFS_Tuer_Status_QBit 0 "Status_Tuerkontakt_sicher" 1 "Status_Tuerkontakt_unsicher"; +VAL_ 975 HBFS_TIG_betaetigt_schliessen 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 976 FT_Tuer_geoeffnet 0 "Init" 1 "Tuer offen"; +VAL_ 976 FT_verriegelt 0 "Init" 1 "verriegelt"; +VAL_ 976 FT_gesafet 0 "Init" 1 "gesafet"; +VAL_ 976 FT_Schluesselschalter_auf 0 "Init" 1 "Schluesselschalter_auf_betaetigt"; +VAL_ 976 FT_Schluesselschalter_zu 1 "Schluesselschalter zu betaetigt"; +VAL_ 976 FT_Unlock_Taster 0 "Init" 1 "Unlock_Taster_betaetigt"; +VAL_ 976 FT_Lock_Taster 0 "Init" 1 "Lock_Taster_betaetigt"; +VAL_ 976 FT_Sperrklinke 0 "Schloss_in_Vorraste_und_Hauptraste" 1 "Tuer_auf_oder_Tuer_Position_zwischen_Vor_und_Hauptraste"; +VAL_ 976 FT_TAG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 976 FT_TIG_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 976 FT_IRUE_Taste 0 "Init" 1 "IRUE_Taste_betaetigt"; +VAL_ 976 FT_HD_Taste 0 "Init" 1 "Heckdeckel_oeffnen"; +VAL_ 976 FT_TD_Taste_Fehler 0 "iO" 1 "defekt"; +VAL_ 976 FT_TD_Taste 1 "Tankdeckelentriegelungs Taster gedrückt"; +VAL_ 976 SSR_Temp_Freigabe 0 "SSR_Deaktiviert" 1 "SSR_Freigegeben"; +VAL_ 976 FT_HD_Taste_2 0 "Taste_nicht_gedrueckt" 1 "Taste_gedrueckt"; +VAL_ 976 FT_TSG_hinten_verbaut 0 "nicht verbaut" 1 "verbaut"; +VAL_ 976 FT_Sp_Blk_def 0 "iO" 1 "defekt"; +VAL_ 976 FT_FH_S_ManHoch 0 "Init" 1 "FH_Schalter_man_hoch_betaetigt"; +VAL_ 976 FT_FH_S_AutoHoch 0 "Init" 1 "FH_Schalter_auto_hoch_betaetigt"; +VAL_ 976 FT_FH_S_ManTief 0 "Init" 1 "FH_Schalter_man_tief_betaetigt"; +VAL_ 976 FT_FH_S_AutoTief 0 "Init" 1 "FH_Schalter_auto_tief_betaetigt"; +VAL_ 976 FT_FH_Bew_hoch 0 "Init" 1 "FH_in_Bewegung_hoch"; +VAL_ 976 FT_FH_Bew_tief 0 "Init" 1 "FH_in_Bewegung_tief"; +VAL_ 976 FT_FH_Fang 0 "ausserhalb_Fangbereich" 1 "innerhalb_Fangbereich"; +VAL_ 976 FT_FH_Block 0 "Init" 1 "Fenster_Block"; +VAL_ 976 FT_FH_Thermo 0 "Init" 1 "Thermoschutz_aktiv"; +VAL_ 976 FT_UEKB_aktiviert 0 "Init" 1 "UEKB_aktiv"; +VAL_ 976 ASW_HMI_defekt 0 "iO" 1 "defekt"; +VAL_ 976 FT_FH_normiert 0 "Init" 1 "Fenster_normiert"; +VAL_ 976 FT_Schliesstaster 1 "Schliesstaster_betaetigt"; +VAL_ 976 FT_Zuziehhilfe_aktiv 0 "Init" 1 "Zuziehilfe_aktiv"; +VAL_ 976 FT_SP_ausgerastet 0 "Init" 1 "Spiegel_ausgerastet"; +VAL_ 976 FT_SP_lr_aktiv 0 "Init" 1 "Spiegel_xAchse_aktiv"; +VAL_ 976 FT_SP_ht_aktiv 0 "Init" 1 "Spiegel_yAchse_aktiv"; +VAL_ 976 ASW_wakeup 0 "Sleep" 1 "Wakeup"; +VAL_ 976 FT_Oben_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_o"; +VAL_ 976 FT_Unten_Block_erw 0 "Fensterheber_nicht_in_Blockerwar" 1 "Fensterheber_in_Blockerwartung_u"; +VAL_ 976 FT_Kisi_li_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 976 FT_Kisi_re_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 976 FT_Kisi_Taster_li 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 976 FT_Kisi_Taster_re 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 976 FT_BFS_Fond_Freigabe 0 "Init" 1 "Freigabe_fuer_Fondbedienung_BFS"; +VAL_ 976 FT_Kisi_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 976 FT_Daemmglas 0 "Normalglas_verbaut" 1 "Daemmglas_verbaut"; +VAL_ 976 FT_SP_Heizung_Status 0 "Init" 1 "Status_Spiegelheizung_ein"; +VAL_ 976 ASW_Warnung_aktiv_FS 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 976 FT_FH_Pos_oben 1 "Scheibe oben (nach Absenken auf Position)"; +VAL_ 976 FT_Tuerschloss_defekt 0 "Tuerschloss_funktionsfaehig" 1 "Tuerschloss_defekt"; +VAL_ 976 FT_SWA_Taster 0 "Taster_nicht_betaetigt" 1 "Taster_betaetigt"; +VAL_ 976 SWA_HMI_Diagnose 0 "kein_Fehler_erkannt" 1 "Fehler_Taster_erkannt" 2 "Fehler_LED_erkannt" 3 "Fehler_LED_und_Taster_erkannt"; +VAL_ 976 FS_Status_eTAG 0 "Init" 1 "Griff_ausgefahren" 2 "Griff_eingefahren" 3 "Fehler"; +VAL_ 980 BH_Blinker_li 0 "nicht_betaetigt" 1 "Blinkerhebel_Pos_li_betaetigt"; +VAL_ 980 BH_Blinker_re 0 "nicht_betaetigt" 1 "Blinkerhebel_Pos_re_betaetigt"; +VAL_ 980 BH_Lichthupe 0 "nicht_betaetigt" 1 "Blinkerhebel in Richtung Lichthupe betaetigt"; +VAL_ 980 BH_Fernlicht 0 "nicht_betaetigt" 1 "Blinkerhebel_in_Richtung_Fernlicht_betaetigt"; +VAL_ 980 WH_Tipwischen 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 980 WH_Intervall 0 "aus" 1 "Wischerhebel in Stellung Intervall"; +VAL_ 980 WH_WischerStufe1 0 "aus" 1 "Wischerhebel in Stufe Wischen 1"; +VAL_ 980 WH_WischerStufe2 0 "aus" 1 "Wischerhebel in Stufe Wischen 2"; +VAL_ 980 WH_Frontwaschen 0 "aus" 1 "Wischerhebel in Stellung Wisch Wasch vorne"; +VAL_ 980 WH_Heckintervall 0 "nicht_betaetigt" 1 "Wischerhebel in Stellung Heckintervall"; +VAL_ 980 WH_Heckwaschen 0 "nicht_betaetigt" 1 "Wischerhebel in Stellung Wisch Wasch hinten"; +VAL_ 980 WH_Intervallstufen 0 "Init / Default" 1 "Intervallstufe 1" 5 "Intervallstufe 2" 9 "Intervallstufe 3" 13 "Intervallstufe 4" 15 "Fehler"; +VAL_ 980 FAS_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 980 FAS_Taster_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 980 SMLS_Hupe 0 "nicht_betaetigt" 1 "Hupe_gedrueckt"; +VAL_ 980 LRH_On_Off 0 "LRH_aus__keine Anzeige" 1 "LRH_aus" 2 "LRH_ein" 3 "Fehler"; +VAL_ 980 LRH_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 980 SMLS_P_verriegelt_plausibel 0 "unplausibel" 1 "plausibel"; +VAL_ 980 WH_SRA 0 "SRA_Aus" 1 "SRA_Ein"; +VAL_ 980 WH_Wischer_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 980 BH_Blinker_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 980 SMLS_PTT 0 "nicht_betaetigt" 1 "PTT_gedrueckt"; +VAL_ 980 WH_Tipwischen_lang 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 981 BCM1_Kurvenlicht_links_Anf 0 "linkes_Kurvenlicht/Abbiegelicht_durch_BCM1_nicht_angesteuert" 1 "linkes_Kurven/Abbiegelicht_durch_BCM1_angesteuert"; +VAL_ 981 BCM1_Kurvenlicht_rechts_Anf 0 "rechtes_Kurvenlicht/Abbiegelicht_durch_BCM1_nicht_angesteuert" 1 "rechtes_Kurvenlicht/Abbiegelicht_durch_BCM1_angesteuert"; +VAL_ 981 BCM1_Standlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Abblendlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Fernlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Nebellicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Parklicht_li_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Parklicht_re_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Nebelschluss_Ahg_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Nebelschluss_Fzg_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Schlusslicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM_Rueckfahrlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht_angefordert"; +VAL_ 981 BCM1_Signaturlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht_ist_einzuschalten"; +VAL_ 981 BCM1_Umfeldleuchten_Anf 0 "Licht_nicht_angefordert" 1 "Licht_ist_einzuschalten"; +VAL_ 981 BCM1_Tagfahrlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Regenlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Autobahnlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht ist einzuschalten"; +VAL_ 981 BCM1_Touristen_Licht_Anf 0 "Licht_nicht_angefordert" 1 "Anforderung von Touristenlicht"; +VAL_ 981 BCM1_CH_aktiv 0 "Inaktiv" 1 "Aktiv"; +VAL_ 981 BCM1_LH_aktiv 0 "Inaktiv" 1 "Aktiv"; +VAL_ 981 BCM1_Gleitende_Leuchtw_Anf 0 "Aus" 1 "Ein"; +VAL_ 981 BCM1_GLW_Fernlicht_Anf 0 "Aus" 1 "Ein"; +VAL_ 981 BCM1_Adaptive_Lichtvert_Anf 0 "Aus" 1 "Ein"; +VAL_ 981 BCM1_FoD_Sperrung_WiBli 0 "Freigabe_WiBli" 1 "Sperrung_WiBli" 2 "Init"; +VAL_ 981 BCM1_FOD_Sperrung_Animationen_HL 0 "Freigabe_Animationen" 1 "Sperrung_Animationen" 2 "Init"; +VAL_ 981 BCM1_Animationssperrung 0 "keine_Sperrung" 1 "Sperrung"; +VAL_ 981 BCM1_CH_LH_aktiv 0 "Comming_Home_Bzw._Leaving_Home_nicht_aktiv" 1 "Comming Home bzw. Leaving Home aktiv"; +VAL_ 981 BCM1_Allwetterlicht_Anf 0 "Licht_nicht_angefordert" 1 "Licht_ist_einzuschalten"; +VAL_ 981 BCM1_Schlusslicht_Signatur 0 "keine_Signatur" 1 "Signatur_1" 2 "Signatur_2" 3 "Signatur_3" 4 "Signatur_4" 5 "Signatur_5" 6 "Signatur_6" 7 "Signatur_7" 8 "Signatur_8" 9 "Signatur_9" 10 "Signatur_10" 11 "Signatur_11" 12 "Signatur_12" 13 "Signatur_13" 14 "Signatur_14" 15 "Signatur_15"; +VAL_ 982 BCM2_Bremsl_durch_ECD 0 "Bremslicht_ist_aus" 1 "Bremslicht_durch_ECD_aktiv"; +VAL_ 982 LH_Aussenlicht_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Standlicht_H_aktiv 1 "Standlicht hinten aktiv"; +VAL_ 982 LH_Parklicht_HL_aktiv 0 "nicht aktiv" 1 "Parklicht hinten links aktiv"; +VAL_ 982 LH_Parklicht_HR_aktiv 0 "nicht aktiv" 1 "Parklicht hinten rechts aktiv"; +VAL_ 982 LH_Bremslicht_H_aktiv 1 "Bremslicht hinten aktiv"; +VAL_ 982 LH_Nebelschluss_aktiv 0 "nicht aktiv" 1 "aktiv"; +VAL_ 982 LH_Rueckfahrlicht_aktiv 0 "nicht aktiv" 1 "aktiv"; +VAL_ 982 LH_Blinker_HL_akt 1 "Blinker hinten links aktiv"; +VAL_ 982 LH_Blinker_HR_akt 1 "Blinker hinten rechts aktiv"; +VAL_ 982 LH_Blinker_li_def 0 "OK" 1 "Blinker hinten links defekt"; +VAL_ 982 LH_Bremsl_li_def 0 "OK" 1 "mindestens ein Bremslicht hinten links defekt"; +VAL_ 982 LH_Schlusslicht_li_def 0 "OK" 1 "mindestens ein Schlusslicht hinten links defekt"; +VAL_ 982 LH_Rueckf_li_def 0 "OK" 1 "Rückfahrlicht hinten links defekt"; +VAL_ 982 LH_Nebel_li_def 0 "OK" 1 "Nebelschlusslicht hinten links defekt"; +VAL_ 982 LH_Schluss_Brems_Nebel_li_def 0 "iO" 1 "defekt"; +VAL_ 982 LH_Schluss_Brems_Nebel_re_def 0 "iO" 1 "defekt"; +VAL_ 982 LH_Zusatzschlussl_def 0 "OK" 1 "mindestens_ein_Zusatzschlusslicht_defekt"; +VAL_ 982 LH_Schluss_Brems_li_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Schluss_Nebel_li_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_SL_BRL_BLK_li_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Brems_Blk_li_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Diag_Status_re_def 0 "OK" 1 "Aussenlict_Diagnose_Systemstoerung_rechts"; +VAL_ 982 LH_Diag_Status_li_def 0 "OK" 1 "Aussenlicht_Diagnose_Systemstoerung_links"; +VAL_ 982 LH_Diag_LED_li_def 0 "OK" 1 "Heckleuchte_links_defekt"; +VAL_ 982 LH_Diag_LED_re_def 0 "OK" 1 "Heckleuchte_rechts_defekt"; +VAL_ 982 LH_Blinker_re_def 0 "OK" 1 "Blinker hinten rechts defekt"; +VAL_ 982 LH_Bremsl_re_def 0 "OK" 1 "mindestens ein Bremslicht hinten rechts defekt"; +VAL_ 982 LH_Schlusslicht_re_def 0 "OK" 1 "mindestens ein Schlusslicht hinten rechts defekt"; +VAL_ 982 LH_Rueckf_re_def 0 "OK" 1 "Rückfahrlicht hinten rechts defekt"; +VAL_ 982 LH_Nebel_re_def 0 "OK" 1 "Nebelschlusslicht hinten rechts defekt"; +VAL_ 982 LH_Schluss_Brems_mi_def 0 "OK" 1 "Defekt"; +VAL_ 982 LH_Schluss_Brems_re_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Schluss_Nebel_re_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_SL_BRL_BLK_re_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Brems_Blk_re_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Kennzl_def 0 "OK" 1 "Kennzeichenbeleuchtung hinten defekt"; +VAL_ 982 LH_3_Bremsl_def 0 "OK" 1 "hochgesetzte Bremsleuchte defekt"; +VAL_ 982 LH_Nebel_mi_def 0 "OK" 1 "Nebelschlusslicht hinten Mitte defekt"; +VAL_ 982 LH_Rueckf_mi_def 0 "OK" 1 "Rückfahllicht Mitte defekt"; +VAL_ 982 LH_Schlusslicht_mi_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Bremsl_mi_def 0 "OK" 1 "defekt"; +VAL_ 982 LH_Bremsl_li_ges_def 0 "OK" 1 "Alle Bremslichter hinten links defekt"; +VAL_ 982 LH_Bremsl_re_ges_def 0 "OK" 1 "Alle Bremslichter hinten rechts defekt"; +VAL_ 988 EPB_Status 0 "offen" 1 "geschlossen_Parken" 2 "teilgespannt_Halten" 3 "im_Lauf_oeffnen" 4 "im_Lauf_schliessen" 5 "tbd" 6 "Init" 7 "unbekannt"; +VAL_ 988 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; +VAL_ 997 FT_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; +VAL_ 997 FT_Tuer_Status_QBit 0 "Status_Tuerkontakt_sicher" 1 "Status_Tuerkontakt_unsicher"; +VAL_ 997 FT_Lock_Taster_02 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 997 FT_Schluesselschalter_zu_02 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 997 FT_BFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; +VAL_ 997 FT_HBFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; +VAL_ 997 FT_HFS_Tuer_Status 0 "Init" 1 "Tuer_geschlossen" 2 "Tuer_offen" 3 "Fehler"; +VAL_ 997 FT_Tueroeffnen_Warnung 0 "Tuerwarnung_nicht_aktiv" 1 "Tuerwarnung_aktiv"; +VAL_ 997 FT_SP_Heizung_ein 0 "Aus" 1 "Ein"; +VAL_ 997 FT_Kisi_Taster_li_02 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 997 FT_Kisi_Taster_re_02 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 997 FT_TD_Taste_Status 0 "kein_Fehler" 1 "Kurzschluss_nach_Minus" 2 "Kurzschluss_nach_Plus" 3 "Leitungsunterbrechung"; +VAL_ 997 FT_TCR_Mode_aktiv 0 "TCR_Mode_deaktiv" 1 "TCR_Mode_aktiv"; +VAL_ 997 FS_Push_Tuergriff 0 "nicht_erkannt" 1 "erkannt"; +VAL_ 1004 TSK_State 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault"; +VAL_ 1122 PSD_Segment_ID 0 "keine Segmentinformationen vorhanden" 1 "Fehlerwert"; +VAL_ 1122 PSD_Vorgaenger_Segment_ID 0 "keine Segmentinformation vorhanden" 1 "Fehlerwert"; +VAL_ 1122 PSD_Strassenkategorie 0 "Rest_Feldweg_Schotterweg_Privatweg" 1 "Ortsstraߥ" 2 "Kreisstraߥ" 3 "Landstraߥ" 4 "Bundesstraߥ" 5 "Autobahn" 7 "Init"; +VAL_ 1122 PSD_Endkruemmung 255 "Gerade"; +VAL_ 1122 PSD_Endkruemmung_Vorz 0 "Kruemmung_positiv" 1 "Kruemmung_negativ"; +VAL_ 1122 PSD_Idenditaets_ID 0 "keine_Segment_Informationen_vorhanden" 1 "Fehler"; +VAL_ 1122 PSD_ADAS_Qualitaet 0 "keine_ADAS_Qualitaet" 1 "ADAS_Qualitaet"; +VAL_ 1122 PSD_wahrscheinlichster_Pfad 0 "Pfad_mit_geringer_Wahrscheinlichkeit" 1 "wahrscheinlichster_Pfad"; +VAL_ 1122 PSD_Geradester_Pfad 0 "nicht_geradester_PFad" 1 "geradester_Pfad"; +VAL_ 1122 PSD_Fahrspuren_Anzahl 0 "Einbahnstrasse_in_falsche_Richtung" 1 "eine_Fahrspur" 2 "zwei_Fahrspuren" 3 "drei_Fahrspuren" 4 "vier_Fahrspuren" 5 "fuenf_Fahrspuren" 6 "sechs_Fahrspuren" 7 "mehr_als_sechs_Fahrspuren"; +VAL_ 1122 PSD_Bebauung 0 "ausserhalb_bebauten_Gebietes" 1 "innerhalb_bebauten_Gebietes"; +VAL_ 1122 PSD_Segment_Komplett 0 "Segment_Attribute_nicht_komplett" 1 "Segment_Attribute_komplett"; +VAL_ 1122 PSD_Rampe 0 "Strasse_mit_Gegenverkehr" 1 "Auffahrt_Einbahnstr" 2 "Abfahrt_Einbahnstr" 3 "Einbahnstrasse"; +VAL_ 1122 PSD_Anfangskruemmung 255 "Gerade"; +VAL_ 1122 PSD_Anfangskruemmung_Vorz 0 "positiv" 1 "negativ"; +VAL_ 1122 PSD_Abzweigerichtung 0 "rects_abzweigende_Strasse" 1 "links_abzweigende_Strasse"; +VAL_ 1123 PSD_Pos_Segment_ID 0 "keine Position gegeben" 1 "Fehlerwert"; +VAL_ 1123 PSD_Pos_Standort_Eindeutig 0 "mehrdeutiger_Standort" 1 "eindeutiger_Standort"; +VAL_ 1123 PSD_Pos_Fehler_Laengsrichtung 0 "Init" 1 "< 2m" 2 "< 5m" 3 "< 10m" 4 "< 20m" 5 "< 50m" 6 "> 50m" 7 "Off-Road"; +VAL_ 1123 PSD_Pos_Fahrspur 0 "unbekannt" 1 "Erste_Spur_von_rechts" 2 "Zweite_Spur_von_rechts" 3 "Dritte_Spur_von_rechts" 4 "Vierte_Spur_von_rechts" 5 "Fuenfte_Spur_von_rechts" 6 "Sechte_Spur_von_rechts" 7 "Siebte_oder_weitere_Spur_von_rechts"; +VAL_ 1123 PSD_Attribut_Segment_ID_05 0 "keine_Segment_Information" 1 "Fehler"; +VAL_ 1123 PSD_Attribut_1_ID 0 "keine_Information"; +VAL_ 1123 PSD_Attribut_2_ID 0 "keine_Information"; +VAL_ 1123 PSD_Attribute_Komplett_05 0 "Attribute_nicht_komplett" 1 "Attribute_komplett"; +VAL_ 1124 PSD_06_Mux 0 "Init"; +VAL_ 1124 PSD_Sys_Segment_ID 0 "keine Segmentinformationen vorhanden" 1 "nicht zulaessig"; +VAL_ 1124 PSD_Sys_Geschwindigkeit_Einheit 0 "km/h" 1 "mph"; +VAL_ 1124 PSD_Sys_Verkehrsrichtung 0 "Rechtsverkehr" 1 "Linksverkehr"; +VAL_ 1124 PSD_Sys_Geometrieguete 0 "Geringe_Guete" 1 "tbd" 2 "tbd" 3 "Hohe_Guete"; +VAL_ 1124 PSD_Sys_Mapmatchingguete 0 "geringe_Guete" 1 "res" 2 "res" 3 "hohe_Guete"; +VAL_ 1124 PSD_Sys_Alter_Karte 0 "kleiner_1_Jahr" 1 "1_Jahr" 2 "2_Jahre" 3 "3_Jahre" 4 "4_Jahre" 5 "5_Jahre" 6 "6_Jahre" 7 "groesser_7_Jahre"; +VAL_ 1124 PSD_Sys_Zielfuehrung 0 "Zielfuehrung nicht aktiv" 1 "Zielfuehrung aktiv"; +VAL_ 1124 PSD_Sys_US_State 0 "kein_US_State" 1 "Alabama" 2 "Alaska" 3 "Arkansas" 4 "Arizona" 5 "California" 6 "Colorado" 7 "Conneticut" 8 "District_of_Columbia" 9 "Delaware" 10 "Florida" 11 "Georgia" 12 "Hawaii" 13 "Idaho" 14 "Illinois" 15 "Iowa" 16 "Indiana" 17 "Kansas" 18 "Kentucky" 19 "Louisiana" 20 "Massachusetts" 21 "Maryland" 22 "Maine" 23 "Michigan" 24 "Minnesota" 25 "Missouri" 26 "Mississippi" 27 "Montana" 28 "North_Carolina" 29 "North_Dakota" 30 "Nebraska" 31 "Nevada" 32 "New_Hampshire" 33 "New_Jersey" 34 "New_Mexico" 35 "New_York" 36 "Ohio" 37 "Oklahoma" 38 "Oregon" 39 "Pennsylvania" 40 "Puerto_Rico" 41 "Rhode_Island" 42 "South_Carolina" 43 "South_Dakota" 44 "Tennessee" 45 "Texas" 46 "Utah" 47 "Virginia" 48 "Virgin_Islands" 49 "Vermont" 50 "Washington" 51 "Wisconsin" 52 "West_Virginia" 53 "Wyoming"; +VAL_ 1124 PSD_Sys_Quali_verfuegbar 0 "Qualitaetskriterien_nicht_verfuegbar" 1 "Qualitaetskriterien_verfuegbar"; +VAL_ 1124 PSD_Sys_Zielfuehrung_geaendert 0 "Zielfuehrung_nicht_geaendert" 1 "Zielfuehrung_geaendert"; +VAL_ 1124 PSD_Sys_Geometrieguete_erweitert 0 "Init"; +VAL_ 1124 PSD_Attribut_Segment_ID 0 "keine_Segment_Information_vorhanden" 1 "Fehler"; +VAL_ 1124 PSD_Attribut_3_ID 0 "keine_Information"; +VAL_ 1124 PSD_Attribut_4_ID 0 "keine_Information"; +VAL_ 1124 PSD_Attribut_5_ID 0 "keine_Information"; +VAL_ 1124 PSD_Attribute_Komplett_06 0 "Attribute_nicht_komplett" 1 "Attribute_komplett"; +VAL_ 1124 PSD_Ges_Segment_ID 0 "keine Segmentinformationen vorhanden" 1 "nicht zulaessig"; +VAL_ 1124 PSD_Ges_Geschwindigkeit 0 "Kein Geschwindigkeitsgebot" 1 "0 km/h < v_max < 5 km/h" 2 "5 km/h < v_max < 10km/h" 3 "10 km/h < v_max < 15 km/h" 4 "15 km/h < v_max < 20 km/h" 5 "20 km/h < v_max < 25 km/h" 6 "25 km/h < v_max < 30 km/h" 7 "30 km/h < v_max < 35 km/h" 8 "35 km/h < v_max < 40 km/h" 9 "40 km/h < v_max < 45 km/h" 10 "45 km/h < v_max < 50 km/h" 11 "50 km/h < v_max < 60 km/h" 12 "60 km/h < v_max < 70 km/h" 13 "70 km/h < v_max < 80 km/h" 14 "80 km/h < v_max < 90 km/h" 15 "90 km/h < v_max < 100 km/h" 16 "100 km/h < v_max < 110 km/h" 17 "110 km/h < v_max < 120 km/h" 18 "120 km/h < v_max < 130 km/h" 19 "130 km/h < v_max < 140 km/h" 20 "140 km/h < v_max < 150 km/h" 21 "150 km/h < v_max < 160 km/h" 22 "160 km/h < v_max" 23 "Geschwindigkeitsgebot aufgehoben" 24 "..0x1F ungültig"; +VAL_ 1124 PSD_Ges_Typ 0 "Geschw_Klasse_des_Kartendatensuppliers" 1 "Explizit_abgeleiteten_Begrenzung" 2 "Durch_Gesetzg_vorgeg_allgem_Gebot_fuer_uebertr_Rahmenbed" 3 "Init"; +VAL_ 1124 PSD_Ges_Spur_Geschw_Begrenzung 0 "Gebot_fuer_alle_spuren_gueltig"; +VAL_ 1124 PSD_Ges_Geschwindigkeit_Gespann 0 "alle Fahrzeuge" 1 "PKW mit Gespann" 2 "LKW, Busse, etc."; +VAL_ 1124 PSD_Ges_Geschwindigkeit_Witter 0 "Witterungsunabh䮧ig" 1 "N䳳e, Regen, Niederschlag" 2 "Gl䴴e" 3 "Nebel"; +VAL_ 1124 PSD_Ges_Geschwindigkeit_Tag_Anf 0 "kein Beginn definiert" 1 "Montag" 2 "Dienstag" 3 "Mittwoch" 4 "Donnerstag" 5 "Freitag" 6 "Samstag" 7 "Sonntag"; +VAL_ 1124 PSD_Ges_Geschwindigkeit_Tag_Ende 0 "kein Ende definiert" 1 "Montag" 2 "Dienstag" 3 "Mittwoch" 4 "Donnerstag" 5 "Freitag" 6 "Samstag" 7 "Sonntag"; +VAL_ 1124 PSD_Ges_Geschwindigkeit_Std_Anf 25 "kein Beginn für stundenweise Einschr䮫ungen"; +VAL_ 1124 PSD_Ges_Geschwindigkeit_Std_Ende 25 "kein Ende für stundenweise Einschr䮫ungen"; +VAL_ 1124 PSD_Ges_Ueberholverbot 0 "kein ܢerholverbot" 1 "alle Fahrzeuge" 2 "ܢerholverbot für PKW mit Gespann" 3 "ܢerholverbot für LKW, Busse, etc."; +VAL_ 1124 PSD_Ges_Wechselverkehrszeichen 0 "Kein Wechselverkehrszeichen" 1 "Wechselverkehrszeichen links" 2 "Wechselverkehrszeichen rechts" 3 "Wechselverkehrszeichen links und rechts" 4 "Wechselverkerhszeichen über der Fahrbahn"; +VAL_ 1124 PSD_Wechselverkehrszeichen_Typ 0 "kein_Wechselverkehrszeichen" 1 "LED_Wechselverkehrszeichen" 2 "nicht_LED_Wechselverkehrszeichen"; +VAL_ 1124 PSD_Ges_Gesetzlich_Kategorie 0 "kein_legales_Verbot" 1 "innerorts" 2 "ausserorts" 3 "Autobahn"; +VAL_ 1124 PSD_Ges_Gesetzlich_Zusatz 0 "kein_Zusatz_zu_legalem_Gebot" 1 "Anhaenger_Klasse_1" 2 "Anhaenger_Klasse_2"; +VAL_ 1124 PSD_Ges_Verkehrszeichen_Quelle 0 "VZA_kein_Onlinedienst" 1 "nur_VZA" 2 "nur_VZO" 3 "VZA_und_VZO"; +VAL_ 1124 PSD_Ges_Attribute_Komplett 0 "Attribute_nicht_komplett" 1 "Attribute_komplett"; +VAL_ 1124 PSD_Baum_Laenge_VZ 0 "Ost" 1 "West"; +VAL_ 1124 PSD_Baum_Breite_VZ 0 "Nord" 1 "Sued"; +VAL_ 1124 PSD_Steigung_1_Segment_ID 0 "keine_Segment_Information_vorhanden" 1 "Fehler"; +VAL_ 1124 PSD_Steigung_1_A_Steigung 126 "mehr_als_15_Prozent" 127 "Steigung_unbekannt"; +VAL_ 1124 PSD_Steigung_1_A_Vorz 0 "Gefaelle" 1 "Steigung"; +VAL_ 1124 PSD_Steigung_1_B_Steigung 126 "mehr_als_15_Prozent" 127 "Steigung_unbekannt"; +VAL_ 1124 PSD_Steigung_1_B_Vorz 0 "Gefaelle" 1 "Steigung"; +VAL_ 1124 PSD_Steigung_1_Attribute_kompl 0 "Steigungen_nicht_komplett" 1 "Steigungen_komplett"; +VAL_ 1124 PSD_Steigung_2_Segment_ID 0 "keine_Segment_Information_vorhanden" 1 "Fehler"; +VAL_ 1124 PSD_Steigung_2_Steigung 126 "mehr_als_15_Prozent" 127 "Steigung_unbekannt"; +VAL_ 1124 PSD_Steigung_2_Vorz 0 "Gefaelle" 1 "Steigung"; +VAL_ 1124 PSD_Steigung_2_Attribute_kompl 0 "Steigungen_nicht_komplett" 1 "Steigungen_komplett"; +VAL_ 1153 ZR_LoGeWa_Event_Kombiwarnung 0 "Init" 1 "Unfall" 2 "Traktionsverlust" 3 "Panne" 4 "Sichtbehinderung" 5 "Aquaplaning" 6 "EEBL" 7 "SEF_stat" 8 "SEF_dyn_allgemein" 9 "SEF_dyn_vorne" 10 "SEF_dyn_hinten" 11 "SEF_dyn_links" 12 "SEF_dyn_rechts" 13 "Stauende"; +VAL_ 1153 Nav_FoD_Status 0 "Init" 1 "Nav_permanently_available" 2 "FoD_Nav_not_activated" 3 "FoD_Nav_activated" 4 "R4N_Nav_not_activated"; +VAL_ 1153 MIB_Tongenerator_PH_verfuegbar 0 "Tongenerator_nicht_verfuegbar" 1 "Tongenerator_vorne_verfuegbar" 2 "Tongenerator_hinten_verfuegbar" 3 "Tongenerator_gesamt_verfuegbar" 4 "Tongenerator_im_AMP"; +VAL_ 1153 DSSS_Warning 0 "No_Warning" 1 "Red_traffic_light_guidance" 2 "Stop_sign_warning" 3 "Rear_end_collision_avoidance_warning" 4 "Intersection_collision_avoidance_warning_right" 5 "Intersection_collision_avoidance_warning_left" 6 "turn_right_collision_avoidance" 7 "turn_left_collision_avoidance" 8 "pedestrian_crossing_right" 9 "pedestrian_crossing_left" 10 "bicycle_collision_right" 11 "bicycle_collision_left"; +VAL_ 1153 ZR_Kindersicherung_RSE 0 "inaktiv" 1 "aktiv"; +VAL_ 1153 ZR_RSE_aktivieren 0 "inaktiv" 1 "aktiv"; +VAL_ 1153 MMI_SDS_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1153 MU_SecondDisplay 0 "Init" 1 "gueltige_Karte" 2 "ungueltiges_Signal" 3 "Nicht_Verbaut"; +VAL_ 1153 MMI_Telefon_aktiv 0 "Telefongespraech_nicht_aktiv" 1 "Telefongespraech_aktiv"; +VAL_ 1153 MMI_Gurt_Mic_ref 0 "Downlink_inaktiv" 1 "Downlink_aktiv"; +VAL_ 1153 ZR_Sta_Inszenierung 0 "Init" 1 "Inszenierung_deaktiviert" 2 "Inszenierung_Start" 3 "Inszenierung_Stop"; +VAL_ 1153 MMI_Gauges_active 0 "gauges_inactive" 1 "gauges_active"; +VAL_ 1153 ZR_MXB_Manoever_Ansage 0 "keine_Ansage" 1 "Ansage_ohne_Richtung" 2 "Ansage_rechte_Richtung" 3 "Ansage_linke_Richtung"; +VAL_ 1153 ZR_LAPP_Sondermodus_Status 0 "keine_Anforderung" 1 "Sondermodus_aktiv" 2 "Aktivierung_nicht_moeglich"; +VAL_ 1153 MMI_StartStopp_Info 0 "Stoppfreigabe" 1 "Stoppverbot" 2 "Startanforderung" 3 "Fehler"; +VAL_ 1153 ZR_Parken_Sondermodus 0 "Init" 1 "Sondermodus_aktiv" 2 "Sondermodus_nicht_verfuegbar" 3 "WLAN_aus" 4 "WLAN_auscodiert" 15 "keine_WLAN_HW"; +VAL_ 1153 ZR_Rundenbewertung 0 "Bewertung_nicht_aktiv" 1 "langsamer" 2 "gleich_schnell" 3 "schneller" 4 "reserviert" 5 "reserviert" 6 "reserviert" 7 "reserviert" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "Init" 15 "Funktion_nicht_verbaut"; +VAL_ 1153 ZR_Rundenfortschritt 254 "Init" 255 "Funktion_nicht_verbaut"; +VAL_ 1155 Mo_Powermeter_Grenze 4093 "OFF"; +VAL_ 1155 MO_Text_Aktivierung_Antrieb 0 "keine_Anzeige" 1 "Ladestecker_nicht_fahrbereit" 2 "erneute_Aktivierung_erforderlich" 3 "Warten_Antrieb_wird_aktiviert" 4 "zum_Fahren_Bremse_und_Fahrstufe" 5 "h2_Tankklappe_nicht_fahrbereit" 6 "zum_Starten_Bremse_treten" 7 "zum_Starten_Kupplung_treten" 15 "Init"; +VAL_ 1155 MO_Powermeter_Inszenierung_aktiv 0 "keine_Anzeige" 1 "Inszenierung_aktiv"; +VAL_ 1155 MO_Powermeter_Charge_Grenze 1022 "Init" 1023 "Fehler"; +VAL_ 1155 MO_Powermeter_Grenze_strategisch 4094 "Init" 4095 "Fehler"; +VAL_ 1155 MO_Powermeter_untere_E_Grenze 4094 "Init" 4095 "Fehler"; +VAL_ 1155 MO_Powermeter_obere_E_Grenze 4094 "Init" 4095 "Fehler"; +VAL_ 1175 PH_Visualisierung 0 "Aus" 1 "Angefragt" 2 "InAnzeige" 3 "Abgefordert" 6 "Init" 7 "Fehler"; +VAL_ 1175 PDC_Tonausgabe_Front 0 "kein_Ton" 1 "Intervallton_1" 2 "Intervallton_2" 3 "Intervallton_3" 4 "Intervallton_4" 5 "Intervallton_5" 6 "Dauerton" 7 "Fehlerton" 8 "RCTATon"; +VAL_ 1175 PDC_Tonausgabe_Heck 0 "kein_Ton" 1 "Intervallton_1" 2 "Intervallton_2" 3 "Intervallton_3" 4 "Intervallton_4" 5 "Intervallton_5" 6 "Dauerton" 7 "Fehlerton" 8 "Erstwarnton_hinten" 9 "RCTATon"; +VAL_ 1175 PH_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 1175 PH_Abschaltursache 0 "keine, bzw. System aktiv" 1 "Abschaltung durch Herausnahme R-Gang" 2 "Abschaltung ueber Geschwindigkeit" 3 "Abschaltung ueber PDC-Taster" 4 "Abschaltung wegen PLA" 5 "Abschaltung durch KL 15 Bit = 0" 6 "tbd." 7 "Fehler-/gestört Zustand, System noch aktiv"; +VAL_ 1175 PH_Opt_Anzeige_V_ein 0 "optische Anzeige vorne nicht aktiv" 1 "optische Anzeige vorne aktiviert"; +VAL_ 1175 PH_Opt_Anzeige_H_ein 0 "Optische Anzeige aus" 1 "optische Anzeige hinten aktiviert"; +VAL_ 1175 PH_Opt_Anz_V_Hindernis 0 "optische Anzeige vorne meldet kein Hindernis" 1 "optische Anzeige vorne meldet Hindernis im Warnbereich"; +VAL_ 1175 PH_Opt_Anz_H_Hindernis 0 "optische Anzeige hinten meldet kein Hindernis" 1 "optische Anzeige hinten meldet Hindernis im Warnbereich"; +VAL_ 1175 PH_Tongeber_V_aktiv 0 "Tongeber vorne nicht aktiv" 1 "Tongeber vorne aktiv"; +VAL_ 1175 PH_Tongeber_H_aktiv 0 "Tongeber hinten nicht aktiv" 1 "Tongeber hinten aktiv"; +VAL_ 1175 PH_Tongeber_mute 0 "Tongeber nicht stummgeschaltet" 1 "Tongeber stummgeschaltet"; +VAL_ 1175 PH_Anf_Audioabsenkung 0 "Keine_Audioabsenkung" 1 "Anforderung_Audioabsenkung"; +VAL_ 1175 PH_Tongeber_H_verfuegbar 0 "nicht verfügbar" 1 "verfügbar"; +VAL_ 1175 PLA_Anf_Aufschaltung_RVC 0 "Keine_RVC_Aufschalteanf" 1 "RVC_Aufschalteanforderung"; +VAL_ 1175 PH_Taster 0 "Taster_nicht_gedrueckt" 1 "Taster_gedrueckt" 2 "reserviert" 3 "Fehler"; +VAL_ 1175 PH_Anf_Verdeck 0 "Verdeckbetrieb_freigegeben" 1 "Verdeckbetrieb_sperren" 2 "reserviert" 3 "reserviert"; +VAL_ 1175 PH_StartStopp_Info 0 "Motorlauf_nicht_notwendig_(Stoppfreigabe)" 1 "Motoranlauf_nicht_zwingend_notwendig_(Stoppverbot,keine_Startanforderung)" 2 "Motoranlauf_zwingend_notwendig_(Startanforderung)" 3 "Systemfehler"; +VAL_ 1175 PH_Stoermeldung 0 "keine_Anzeige_kein_Gong" 1 "Textmeldung_PDC_hinten_gestoert_mit_Gong" 2 "Textmeldung_PDC_hinten_gestoert_ohne_Gong" 3 "Textmeldung_PDC_vorn_gestoert_mit_Gong" 4 "Textmeldung_PDC_vorn_gestoert_ohne_Gong" 5 "Textmeldung_PDC_gestoert_mit_Gong" 6 "Textmeldung_PDC_gestoert_ohne_Gong" 7 "Textmeldung_PDC_seitlich_gestoert_mit_Gong" 8 "Textmeldung_PDC_seitlich_gestoert_ohne_Gong"; +VAL_ 1175 PH_defekt 0 "PH aktiv" 1 "PH wurde aufgrund eines Defektes deaktiviert"; +VAL_ 1175 PH_gestoert 0 "PH aktiv" 1 "PH wurde auf Grund einer Stoerung tempraer deaktiviert"; +VAL_ 1175 PH_Systemzustand 0 "Anlage aus" 1 "Anlage durch einlegen R-Gang aktiviert" 2 "Anlage manuell durch Taster aktiviert" 3 "Anlage automatisch aktiviert" 4 "Anlage durch ARA aktiviert" 6 "Init - Initialisierungsphase nach Kl. 15 ein / Reset" 7 "Fehler-/gestört Zustand, System noch aktiv"; +VAL_ 1175 PH_Display_Kundenwunsch 0 "Anzeige aus" 1 "Grafik" 2 "Rear View" 3 "automatisch"; +VAL_ 1283 HVK_Istmodus_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 1283 HVK_TN1_Sollmodus 0 "HV_Off" 1 "HV_On" 2 "reserviert" 3 "Initialisierung"; +VAL_ 1283 HVK_MO_EmSollzustand 0 "HvOff" 1 "HvStbyReq" 2 "HvStbyWait" 3 "HvBattOnReq" 4 "HvBattOnWait" 10 "HvOnIdle" 18 "HvOnDrvReq" 19 "HvOnDrvWait" 20 "HvOnDrvRdy" 28 "HvStepUpReq" 29 "HvStepUpWait" 30 "HvStepUp" 38 "HvStepDownReq" 39 "HvStepDownWait" 40 "HvStepDown" 46 "HvAcChPreReq" 47 "HvAcChPreWait" 48 "HvAcChReq" 49 "HvAcChWait" 50 "HvAcCh" 56 "HvDcChPreReq" 57 "HvDcChPreWait" 58 "HvDcChReq" 59 "HvDcChWait" 60 "HvDcCh" 67 "HvChOffReq" 68 "HvChOffWait" 69 "HvOnIdleReq" 70 "HvOnIdleWait" 96 "HvCpntOffReq" 97 "HvCpntOffWait" 98 "HvBattOffReq" 99 "HvBattOffWait" 109 "HvDcDcFailOffReq" 110 "HvDcDcFail" 119 "HvElmOffReq" 120 "HvElmOff" 126 "HvFailCpntOffReq" 127 "HvFailCpntOffWait" 128 "HvFailBattOffReq" 129 "HvFailBattOffWait" 130 "HvFailBattOff" 138 "HvFailUCtlReq" 139 "HvFailUCtlWait" 140 "HvFailUCtl" 150 "HvEmgcyOff" 255 "Init"; +VAL_ 1283 HVK_BMS_Sollmodus 0 "HV_Off" 1 "HV_On" 3 "AC_Laden_erw" 4 "AC_Laden" 6 "DC_Laden" 7 "Init"; +VAL_ 1283 HVK_DCDC_Sollmodus 0 "Standby" 1 "HV_On_Vorladen" 2 "Tiefsetzen" 3 "Hochsetzen" 4 "Pruefpuls_12V" 7 "Initialisierung"; +VAL_ 1283 HVK_EKK_Sollmodus 0 "Keine_Freigabe" 1 "Freigabe" 2 "Freigabe_ausgesetzt" 7 "Init"; +VAL_ 1283 HVK_HVPTC_Sollmodus 0 "Keine_Freigabe" 1 "Freigabe" 2 "Freigabe_ausgesetzt" 7 "Init"; +VAL_ 1283 HVK_HVLM_Sollmodus 0 "keine_Freigabe" 1 "Freigabe_Lademanager" 2 "Vorladung_AC_Pfad" 7 "Init"; +VAL_ 1283 HVK_HV_Netz_Warnungen 0 "Keine_Warnung" 1 "Warntext_HV_Netz_Anf" 2 "Fehlertext_HV_Netz_Anf" 3 "Warnung_Kein_Wiederstart_moeglich"; +VAL_ 1283 HV_Bordnetz_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1283 HV_Bordnetz_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 1283 HVK_Gesamtst_Spgfreiheit 0 "Funktion_Init__ohne_Funktion" 1 "HV_System_spannungsfrei" 2 "HV_System_nicht_spannungsfrei" 3 "Fehler"; +VAL_ 1283 HVK_AktiveEntladung_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 1283 HVK_Iso_Messung_Start 0 "keine_Messung" 1 "Messung_HV_Netz_1" 2 "Messung_HV_Netz_2" 4 "deaktiviert"; +VAL_ 1283 HVK_DCDC_EKK_Sollmodus 0 "aus" 1 "ein" 2 "reserviert" 3 "Init"; +VAL_ 1312 LoGeWa_Event_Kombiwarnung 0 "Init" 1 "Unfall" 2 "Traktionsverlust" 3 "Panne" 4 "Sichtbehinderung" 5 "Aquaplaning"; +VAL_ 1312 AB_Anforderung_eCall 0 "keine_Anforderung" 1 "Anforderung"; +VAL_ 1312 AB_Anprall_Seite_Beifahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Anprall_Rollover 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Anprall_FGS 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Anprall_Front_Beifahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Anprall_Front_Fahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Anprall_Heck_Beifahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Anprall_Heck_Fahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 AB_Wickelklappung_Reihe2_MI 0 "nicht_verbaut" 1 "nicht_verfuegbar__Fehler_oder_Init" 2 "nicht_verriegelt" 3 "verriegelt"; +VAL_ 1312 AB_Belegung_VB 0 "nicht_verfuegbar" 1 "Fehler" 2 "nicht_belegt" 3 "belegt"; +VAL_ 1312 AB_Abschaltanf_SIH_BF 0 "Normalbetrieb" 1 "Abschaltung_angefordert"; +VAL_ 1312 AB_Anprall_Seite_Fahrer 0 "kein_Anprall" 1 "Anprall_erkannt"; +VAL_ 1312 SC_PAO_Schriftzug_Anf 0 "LED aus" 1 "LED an" 2 "LED blinken" 3 "reserviert"; +VAL_ 1312 SC_PAO_ON_Anf 0 "LED aus" 1 "LED an" 2 "LED blinken" 3 "reserviert"; +VAL_ 1312 SC_PAO_OFF_Anf 0 "LED aus" 1 "LED an" 2 "LED blinken" 3 "reserviert"; +VAL_ 1312 AB_Crashschwere 0 "kein_Ereignis" 1 "Crashschwere_1" 2 "Crashschwere_2" 3 "Crashschwere_3" 4 "Crashschwere_4" 5 "Crashschwere_5" 6 "Crashschwere_2_bis_5" 7 "Fehler"; +VAL_ 1312 AB_Anforderung_USM 0 "keine_Anforderung" 1 "Anforderung"; +VAL_ 1312 AB_Gurtschloss_FA 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_BF 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_Reihe2_FA 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_Reihe2_MI 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_Reihe2_BF 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_Reihe3_FA 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_Reihe3_MI 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Gurtschloss_Reihe3_BF 0 "nicht_verbaut" 1 "nicht_verfügbar (Fehler oder Init)" 2 "nicht_gesteckt" 3 "gesteckt"; +VAL_ 1312 AB_Sitzpos_Sens_FA 0 "nicht verfügbar" 1 "Fehler" 2 "Sitz nicht vorne" 3 "Sitz vorne"; +VAL_ 1312 AB_Sitzpos_Sens_BF 0 "nicht verfügbar" 1 "Fehler" 2 "Sitz nicht vorne" 3 "Sitz vorne"; +VAL_ 1312 AB_Wickelklappung_Reihe2_BF 0 "nicht_verbaut" 1 "nicht_verfuegbar__Fehler_oder_Init" 2 "nicht_verriegelt" 3 "verriegelt"; +VAL_ 1312 AB_Wickelklappung_Reihe2_FA 0 "nicht_verbaut" 1 "nicht_verfuegbar__Fehler_oder_Init" 2 "nicht_verriegelt" 3 "verriegelt"; +VAL_ 1349 AB_Gurtwarn_Reihe2_FA 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; +VAL_ 1349 AB_Gurtwarn_Reihe2_BF 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; +VAL_ 1349 AbstWarn_MV_FAS_Fkt_Status 0 "Init" 1 "Funktion_Ist_Ein" 2 "Funktion_Ist_Aus" 3 "Fehler"; +VAL_ 1349 WarnBrems_Charisma_Status 0 "Init" 1 "verfügbar" 2 "nicht verfügbar" 3 "asynchron durch Fahrerwunsch"; +VAL_ 1349 WarnBrems_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 1349 AB_Gurtwarn_Reihe2_MI 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; +VAL_ 1349 AB_Gurtwarn_Reihe3_FA 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; +VAL_ 1349 AB_Gurtwarn_Reihe3_MI 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; +VAL_ 1349 AB_Gurtwarn_Reihe3_BF 0 "nicht_verbaut" 1 "keine_Gurtwarnung_Sitz_leer" 2 "keine_Gurtwarnung_Sitz_belegt" 3 "Gurtwarnung_Sitz_belegt"; +VAL_ 1349 LGI_FAS_Fkt_Status 0 "Init" 1 "Funktion_Ist_Ein" 2 "Funktion_Ist_Aus" 3 "Fehler"; +VAL_ 1349 PreCrash_FAS_Fkt_Status 0 "Init" 1 "Funktion_Ist_Ein" 2 "Funktion_Ist_Aus" 3 "Fehler"; +VAL_ 1349 AB_SBR_hinten_verbau 0 "ohne_SBR_hinten" 1 "mit_SBR_hinten" 2 "nicht_definiert" 3 "Init"; +VAL_ 1349 AWV_Einstellung_System_ASG 0 "deaktiviert" 1 "aktiviert"; +VAL_ 1349 AWV_Einstellung_Warnung_ASG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; +VAL_ 1349 SC_PreSense_Modus_Warnung_NV 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; +VAL_ 1349 SC_PreSense_Modus_Warnung_MV 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; +VAL_ 1349 SC_PreSense_Modus_System_MV 0 "deaktiviert" 1 "aktiviert"; +VAL_ 1349 SC_PreSense_Modus_System_NV 0 "deaktiviert" 1 "aktiviert"; +VAL_ 1349 SC_PreSense_Modus_System_KAS 0 "deaktiviert" 1 "aktiviert"; +VAL_ 1355 PH_Verschmutzungsmeldung 0 "keine_Anzeige_kein_Gong" 1 "Textmeldung_PDC_hinten_verschmutzt_mit_Gong" 2 "Textmeldung_PDC_hinten_verschmutzt_ohne_Gong" 3 "Textmeldung_PDC_vorn_verschmutzt_mit_Gong" 4 "Textmeldung_PDC_vorn_verschmutzt_ohne_Gong" 5 "Textmeldung_PDC_verschmutzt_mit_Gong" 6 "Textmeldung_PDC_verschmutzt_ohne_Gong" 7 "Textmeldung_PDC_seitlich_verschmutzt_mit_Gong" 8 "Textmeldung_PDC_seitlich_verschmutzt_ohne_Gong"; +VAL_ 1355 PH_Aufschaltursache 0 "Anlage aus" 1 "Anlage durch einlegen R-Gang aktiviert" 2 "Anlage manuell durch Taster aktiviert" 3 "Anlage automatisch aktiviert" 4 "Anlage durch ARA aktiviert" 5 "Rueckwaertsrollen" 6 "Anlage_durch_PLA_aktiviert" 7 "Anlage_durch_IPA_aktiviert" 8 "Anlage_durch_FA_aktiviert" 9 "Anlage_durch_RBF_oder_MA_aktiviert" 10 "Anlage_durch_Smartphone_aktiviert" 11 "Anlage_durch_Jokertaste_aktiviert" 12 "Anlage_durch_Favoritentasten_aktiviert" 13 "Anlage_durch_SideViewTaster_aktiviert" 14 "Anlage_durch_RCTA_aktiviert" 15 "Anlage_durch_KAS_aktiviert" 16 "Anlage_durch_AWC_aktiviert" 30 "Init_Initialisierungsphase_nach_Kl_15_ein_oder_Reset" 31 "Fehler_gestoerter_Zustand_System_noch_aktiv"; +VAL_ 1355 PH_Ton_Ausgabe 0 "Init" 1 "Intervallton_vorne" 2 "Intervallton_hinten" 3 "Dauerton_vorne" 4 "Dauerton_hinten" 5 "Quittierungston" 6 "Reserviert" 7 "Fehler"; +VAL_ 1355 PH_Ton_Pausenlaenge 0 "Init" 1 "Pause_5ms" 2 "Pause_10ms" 3 "Pause_15ms" 100 "Pause_500ms" 101 "Reserviert" 126 "Reserviert" 127 "Fehler"; +VAL_ 1355 PH_Ton_Richtung 0 "vorne" 1 "vorne_rechts" 2 "rechts" 3 "rechts_hinten" 4 "hinten" 5 "hinten_links" 6 "links" 7 "vorne_links"; +VAL_ 1355 PH_Ton_Lautstaerke 0 "Minimallautstaerke" 1 "Lautstaerke_1" 2 "Lautstaerke_2" 3 "Lautstaerke_3" 4 "Lautstaerke_4" 5 "Lautstaerke_5" 6 "Lautstaerke_6" 7 "Maximallautstaerke"; +VAL_ 1355 BCM_WAH_Meldung 0 "Init" 1 "Fehlermeldung_bei_Nichtverfuegbarkeit_mit_Gong" 2 "Fehlermeldung_bei_Nichtverfuegbarkeit_ohne_Gong" 3 "Anzeige_dass_Fahrzeug_erkannt_wurde_und_Funktion_aktiv_ist" 4 "Wiederanfahrhinweis_mit_Gong" 5 "Wiederanfahrhinweis_ohne_Gong"; +VAL_ 1355 PDC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 1355 PDC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 1361 WFS_Schluessel_Fahrberecht 0 "kein authorisierter Schluessel erkannt" 1 "aktive_Funkschluessel_Nr_01" 2 "aktive_Funkschluessel_Nr_02" 3 "aktive_Funkschluessel_Nr_03" 4 "aktive_Funkschluessel_Nr_04" 5 "aktive_Funkschluessel_Nr_05" 6 "aktive_Funkschluessel_Nr_06" 7 "aktive_Funkschluessel_Nr_07" 8 "aktive_Funkschluessel_Nr_08" 9 "ungueltig_09" 10 "ungueltig_10" 11 "ungueltig_11" 12 "ungueltig_12" 13 "ungueltig_13" 14 "ungueltig_14" 15 "digitaler_Schluessel_aktiv"; +VAL_ 1361 WFS_ID_Geb_autorisiert 0 "Schluessel_nicht_authorisiert" 1 "Schluessel authorisiert"; +VAL_ 1361 WFS_ID_Geb_autorisiert_in_Kl15 0 "nicht_authorisiert_in_Kl15" 1 "authorisiert_in_Kl15"; +VAL_ 1361 WFS_ID_Geb_steckt 0 "kein_Schluessel_im_Zuendschloss" 1 "Schluessel steckt im Zuendschloss"; +VAL_ 1361 WFS_Schluessel_Soll 0 "Init"; +VAL_ 1361 WFS_Schluessel_Ist 0 "Init"; +VAL_ 1361 WFS_Safe 0 "Init" 1 "WFS nicht deaktiviert"; +VAL_ 1361 WFS_LZ 0 "nicht def." 1 "LZ 1" 2 "LZ 2" 3 "LZ 3"; +VAL_ 1361 WFS_ELV_authorisiert 0 "ELV_nicht_authorisiert" 1 "ELV_authorisiert"; +VAL_ 1361 WFS_LF_Aktiv 0 "Funktempfang_nicht_aktiv" 1 "LF_Funkempfang_aktiv"; +VAL_ 1361 WFS_Betrieb_Lesespule 0 "keine_Schluesselkomm_Lesespule" 1 "Schluesselkomm_Lesespule"; +VAL_ 1361 WFS_Klemmenfreigabe 0 "keine_Freigabe" 1 "Freigabe"; +VAL_ 1361 WFS_Fahrerhinweise 0 "Keine_Anzeigeanforderung" 1 "Schuessel_Auth_niO" 2 "Notlauf_aktiv" 3 "Schluessel_Kessy_nicht_gefunden"; +VAL_ 1361 WFS_Parken_Status 0 "Limitierung_inaktiv" 1 "Limitierung_aktiv" 2 "Abbruch"; +VAL_ 1411 BCM_FH_Freigabe 1 "Funktionsfreigabe Fensterheber"; +VAL_ 1411 BCM_Komfortfkt_Freigabe 0 "Komfortfunktion gesperrt" 1 "globale Freigabe der Komfortfunktion erteilt"; +VAL_ 1411 BCM_HSK_Freigabe 0 "erlauben" 1 "sperren"; +VAL_ 1411 BCM_Verdeck_Freigabe 0 "Verdeckbetrieb nicht erlaubt" 1 "Verdeckbetrieb erlaubt"; +VAL_ 1411 ZV_verriegelt_intern_ist 1 "Fahrzeug innen verriegelt; Istzustand"; +VAL_ 1411 ZV_verriegelt_extern_ist 1 "Fahrzeug_aussen_verriegelt_Istzustand"; +VAL_ 1411 ZV_verriegelt_intern_soll 1 "Fahrzeug verriegelt intern; Sollzusstand"; +VAL_ 1411 ZV_verriegelt_extern_soll 1 "Fahrzeug verriegelt extern; Sollzusstand"; +VAL_ 1411 ZV_gesafet_extern_ist 1 "Fahrzeug aussen gesafet; Istzustand"; +VAL_ 1411 ZV_gesafet_extern_soll 1 "Fahrzeug_aussen_gesafet_Sollzustand"; +VAL_ 1411 ZV_Einzeltuerentriegelung 1 "Fahrzeug an Einzeltuer entriegelt"; +VAL_ 1411 ZV_Heckeinzelentriegelung 1 "Heckdeckeleinzelentriegelung"; +VAL_ 1411 ZV_FT_offen 0 "FT_geschlossen" 1 "FT_geoeffnet"; +VAL_ 1411 ZV_BT_offen 0 "BT_geschlossen" 1 "BT_geoeffnet"; +VAL_ 1411 ZV_HFS_offen 0 "geschlossen" 1 "offen"; +VAL_ 1411 ZV_HBFS_offen 0 "geschlossen" 1 "offen"; +VAL_ 1411 ZV_HD_offen 1 "Heckdeckel_auf"; +VAL_ 1411 ZV_HS_offen 0 "Heckscheibe_geschlossen" 1 "Heckscheibe auf"; +VAL_ 1411 IRUE_aktiv 0 "unscharf" 1 "scharf"; +VAL_ 1411 DWA_aktiv 0 "unscharf" 1 "scharf"; +VAL_ 1411 HD_Hauptraste 0 "geschlossen" 1 "offen"; +VAL_ 1411 HD_Vorraste 0 "geschlossen" 1 "offen"; +VAL_ 1411 FFB_CarFinder 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1411 FFB_Komfortoeffnen 0 "kein_Komfortoeffnen_empfangen" 1 "Komfortoeffnen ueber Funk empfangen"; +VAL_ 1411 FFB_Komfortschliessen 0 "kein_Komfortschliessen_empfangen" 1 "Komfortschliessen ueber Funk empfangen"; +VAL_ 1411 ZV_Schluessel_Zugang 0 "kein_auth_Schluessel_erkannt" 1 "aktive_Funkschluessel_Nr_01" 2 "aktive_Funkschluessel_Nr_02" 3 "aktive_Funkschluessel_Nr_03" 4 "aktive_Funkschluessel_Nr_04" 5 "aktive_Funkschluessel_Nr_05" 6 "aktive_Funkschluessel_Nr_06" 7 "aktive_Funkschluessel_Nr_07" 8 "aktive_Funkschluessel_Nr_08" 9 "ungueltig_09" 10 "ungueltig_10" 11 "ungueltig_11" 12 "ungueltig_12" 13 "ungueltig_13" 14 "ungueltig_14" 15 "ungueltig_15"; +VAL_ 1411 ZV_SafeFunktion_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1411 FBS_Warn_Schluessel_Batt 0 "i.O." 1 "defekt"; +VAL_ 1411 ZV_Oeffnungsmodus 0 "globale_Oeffnung" 1 "ZV_mit_Einzeltuerentr" 2 "ZV_individuell_selektiv" 3 "ZV_seitenselektiv"; +VAL_ 1411 HFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; +VAL_ 1411 HFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; +VAL_ 1411 HBFS_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; +VAL_ 1411 HBFS_gesafet 0 "nicht_gesafet" 1 "gesafet"; +VAL_ 1411 ZV_ist_Zustand_verfuegbar 0 "nicht_verfuegbar" 1 "verfuegbar_alle_TSGs_am_Bus"; +VAL_ 1411 IRUE_Taster_Fkts_LED 0 "LED_aus" 1 "LED_ein"; +VAL_ 1411 ZV_Tankklappe_offen 0 "Tankklappe_geschlossen" 1 "Tankklappe_offen"; +VAL_ 1411 ZV_Rollo_auf 0 "inaktiv" 1 "aktiv"; +VAL_ 1411 ZV_Rollo_zu 0 "inaktiv" 1 "aktiv"; +VAL_ 1411 ZV_SAD_auf 0 "inaktiv" 1 "aktiv"; +VAL_ 1411 ZV_SAD_zu 0 "inaktiv" 1 "aktiv"; +VAL_ 1411 BCM_Tankklappensteller_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 1411 ZV_verriegelt_soll 0 "Init" 1 "nicht_verriegelt" 2 "verriegelt"; +VAL_ 1413 SI_Sammel_SG_Fehler 61 "Reserviert" 62 "Overflow" 63 "ungueltig"; +VAL_ 1413 SI_Diagnose_Aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1413 SI_QRS_Mode 0 "QRS_Messmodus_nicht_aktiv" 1 "QRS_Messmodus_aktiv"; +VAL_ 1413 SI_T_Mode 0 "Transportmodus_nicht_aktiv" 1 "Transportmodus_aktiv"; +VAL_ 1413 SI_NWDF 0 "Ueberwachung_nicht_freigegeben" 1 "Ueberwachung_freigegeben"; +VAL_ 1413 SI_NWDF_gueltig 0 "NWDF_wird_nicht_unterstuetzt" 1 "NWDF_wird_unterstuetzt"; +VAL_ 1413 SI_Sammelfehler 0 "kein_Sammelfehler" 1 "Sammelfehler"; +VAL_ 1413 GW_KD_Fehler 0 "kein_KD_Fehler" 1 "KD_Fehler"; +VAL_ 1413 SI_T_Schutz 0 "Transportschutz_nicht_aktiv" 1 "Transportschutz_aktiv"; +VAL_ 1413 SI_BUS_01 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_02 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_03 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_04 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_05 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_06 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_07 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_08 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_09 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_10 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_11 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_12 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_13 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_14 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_BUS_15 0 "keine_Busruhe" 1 "Busruhe"; +VAL_ 1413 SI_Bus_Identifikation 16 "CAN_Diagnose" 17 "CAN_Antrieb" 18 "CAN_Komfort" 19 "CAN_Infotainment" 20 "CAN_Fahrwerk" 21 "CAN_Extended" 22 "CAN_Hybrid" 23 "CAN_Lade" 24 "CAN_Kombi" 25 "CAN_Komfort_2" 26 "CAN_AFS" 33 "CAN_FahrerAssistenzSysteme" 34 "CAN_Migration" 35 "CAN_Connect" 36 "CAN_AnzeigeBedienung" 37 "CAN_ElectricalVehicle" 40 "CAN_Telematik" 41 "CAN_MFL" 42 "CAN_FahrerAssistenzSysteme_2" 48 "FlexRay_A" 49 "FlexRay_B" 97 "VLAN_FAS" 98 "VLAN_Infotainment" 99 "VLAN_Connect" 100 "VLAN_Komfort" 101 "VLAN_Antrieb" 102 "VLAN_Diagnose" 103 "VLAN_Internet" 104 "VLAN_Gateway" 105 "VLAN_Remote_FC" 106 "VLAN_Connect_2" 107 "VLAN_Licht" 108 "VLAN_Charge" 109 "VLAN_Cockpit" 176 "HCP1_CANFD01" 177 "HCP1_CANFD02" 178 "HCP1_CANFD03" 179 "HCP1_CANFD04" 180 "HCP1_CANFD05" 181 "HCP1_CANFD06" 182 "HCP1_CANFD07" 183 "HCP1_CANFD08" 186 "HCP4_CANFD03" 187 "HCP4_CANFD04" 188 "HCP1_CANFD09" 189 "HCP4_CANFD06" 190 "HCP4_CANFD07" 191 "HCP4_CANFD08" 192 "HCP4_CANFD09" 193 "HCP4_CANFD10" 194 "HCP1_CANFD10" 195 "ICAS1_CANFD2_HCP5_CANFD02" 196 "HCP1_CANFD11" 197 "WU_HCP1_CANFD" 198 "WU_HCP2_1_CANFD" 199 "WU_HCP_2_CANFD" 200 "WU_HCP_3_CANFD" 201 "WU_HCP4_CANFD" 202 "WU_HCP3_CANFD02" 204 "ESC_CANFD" 205 "HCP4_CANFD11" 206 "HCP4_CANFD12" 207 "HCP5_CANFD04" 208 "HCP5_CANFD05" 212 "WU_ConMod_CANFD" 213 "WU_PASD_CANFD"; +VAL_ 1413 SI_CAB 0 "inaktiv" 1 "CAB_01__Tueren" 2 "CAB_02__Anhaenger" 4 "CAB_03__Nightvision" 8 "CAB_04__Sitzverstellung" 16 "CAB_05__Klappen" 32 "CAB_06__Infotainment" 64 "CAB_07__Sub_Infotainment" 128 "CAB_08__Anzeige" 256 "CAB_09__Laden" 512 "CAB_10__Klima" 1024 "CAB_11__FlexRay" 262144 "CAB_19_VLAN_Remote_FC" 524288 "CAB_20_VLAN_Komfort"; +VAL_ 1420 KST_Txt_P_Gang 0 "Aus" 1 "Ein"; +VAL_ 1420 KST_Txt_Panikabschaltung 0 "Aus" 1 "Ein"; +VAL_ 1420 KST_Anf_Klemmenfreigabe_ELV 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 1420 KST_Txt_Komfortabschaltung 0 "inaktiv" 1 "aktiv"; +VAL_ 1420 KST_ZAT_betaetigt 0 "Aus" 1 "Ein"; +VAL_ 1420 KST_Unterdr_Zuendungsmeldung 0 "keine_Unterdr_der_Zuendungsmeldung" 1 "Unterdr_der_Zuendungsmeldung_aktiv"; +VAL_ 1420 KST_aut_Abschaltung_Zuendung 0 "Zuendung_wird_bei_Verl_nicht_deaktiviert" 1 "Zuendung_wird_bei_Verl_deaktiviert"; +VAL_ 1420 KST_Anf_ZV_Verriegelung 0 "inaktiv" 1 "aktiv"; +VAL_ 1420 Relais_VoKo_angesteuert 0 "nicht_angesteuert" 1 "angesteuert"; +VAL_ 1420 RSt_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" 6 "Parken_mit_P"; +VAL_ 1440 LS_Helligkeit_IR 254 "Init" 255 "Fehler"; +VAL_ 1440 LS_Helligkeit_FW 1022 "Init" 1023 "Fehler"; +VAL_ 1440 LS_defekt 0 "OK" 1 "defekt"; +VAL_ 1440 LS_Verbau 0 "Init" 1 "Lichtsensor_verbaut"; +VAL_ 1440 RS_Regenmenge 14 "Init" 15 "Fehler"; +VAL_ 1440 RS_Verbau 0 "Init" 1 "Regensensor verbaut"; +VAL_ 1440 RS_Verglasung_schliessen 0 "Verglasung nicht schliessen" 1 "Verglasung schliessen"; +VAL_ 1440 RS_defekt 0 "OK" 1 "defekt"; +VAL_ 1440 RS_Wischergeschwindigkeit 0 "kein Wischen" 1 "42 Huebe/min" 2 "45 Huebe/min" 3 "48 Huebe/min" 4 "51 Huebe/min" 5 "54 Huebe/min" 6 "57 Huebe/min" 7 "60 Huebe/min"; +VAL_ 1440 RLS_Vorfeldhelligkeit_Boost 0 "groesser_24413_Lux" 1 "bis_24413_Lux" 2 "bis_22193_Lux" 3 "bis_20176_Lux" 4 "bis_18342_Lux" 5 "bis_16647_Lux" 6 "bis_15158_Lux" 7 "bis_13780_Lux" 8 "bis_12527_Lux" 9 "bis_11388_Lux" 10 "bis_10353_Lux" 11 "bis_9412_Lux" 12 "bis_8556_Lux" 13 "bis_7778_Lux" 14 "bis_7071_Lux" 15 "bis_6428_Lux"; +VAL_ 1442 BMS_Status_ServiceDisconnect 0 "gesteckt" 1 "gezogen"; +VAL_ 1442 BMS_Status_Spgfreiheit 0 "Init" 1 "HV_Komponente_spannungsfrei" 2 "HV_Komp_nicht_spannungsfrei" 3 "Fehler_nicht_spannungsfrei"; +VAL_ 1442 BMS_OBD_Lampe_Anf 0 "kein_MIL_Request" 1 "MIL_Request"; +VAL_ 1442 BMS_IstModus 0 "HV_inaktiv" 1 "Fahren_HV_aktiv" 2 "stBalancing" 3 "externes_Laden" 4 "AC_Laden" 5 "Error_Batt" 6 "DC_Laden" 7 "Init"; +VAL_ 1442 BMS_Fehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Isofehler_I" 2 "Eingeschr_KompFkt_Isofehler_II" 3 "Eingeschr_KompFkt_Interlock" 4 "Eingeschr_KompFkt_SD" 5 "Eingeschr_KompFkt_Leistungsred" 6 "Keine_Komponentenfunktion" 7 "Init"; +VAL_ 1442 BMS_Kapazitaet_02 2047 "Init"; +VAL_ 1442 BMS_Soll_SOC_HiRes 2046 "Init" 2047 "Fehler"; +VAL_ 1447 TM_Spiegel_Anklappen 0 "Init" 1 "Spiegel_anklappen"; +VAL_ 1447 TM_Nur_Hupen 0 "inaktiv" 1 "aktiv"; +VAL_ 1447 TM_Door_Lock 0 "Init" 1 "door_lock"; +VAL_ 1447 TM_Door_Unlock 0 "Init" 1 "door_unlock"; +VAL_ 1447 TM_Warnblinken 0 "Init" 1 "Warnblinken_on"; +VAL_ 1447 TM_Panik_Alarm 0 "Init" 1 "panik_alarm_on"; +VAL_ 1447 TM_ZV_Signatur 0 "Init"; +VAL_ 1452 HVEM_IstStrom_HVVerbraucher 4094 "Init" 4095 "Fehler"; +VAL_ 1452 HVEM_Energie_Klima_Vorgabe_HighR 6 "Init" 7 "Fehler"; +VAL_ 1452 HVEM_IstLeistungNA 510 "Init" 511 "Fehler"; +VAL_ 1452 HVEM_Leistung_Klima_Vorgabe 254 "Init" 255 "Fehler"; +VAL_ 1452 HVEM_Nutzbare_Energie 2045 "Max" 2046 "Init" 2047 "Fehler"; +VAL_ 1452 HVEM_Energie_Klima_Vorgabe 254 "Init" 255 "Fehler"; +VAL_ 1452 HVEM_MO_MaxLeistungIgnoriert 0 "Max_Leistung_nicht_ignoriert" 1 "Max_Leistung_ignoriert"; +VAL_ 1485 DC_Fehlerstatus 0 "Komponente_IO" 1 "Eingeschr_KompFkt_Entlad_defekt" 3 "Eingeschr_KompFkt_Interlock" 6 "Keine_Komponentenfunktion" 7 "Init"; +VAL_ 1485 DC_Peakstrom_verfuegbar 0 "Peakstrom_nicht_verfuegbar" 1 "Peakstrom_verfuegbar"; +VAL_ 1485 DC_Abregelung_Temperatur 0 "keine_Abregelung" 1 "Abregelung_Temp"; +VAL_ 1485 DC_IstModus_02 0 "Standby" 1 "HV_On_Vorladen" 2 "Tiefsetzen" 3 "Hochsetzen" 4 "Pruefimpuls_12V" 5 "Fehler" 7 "Initialisierung"; +VAL_ 1485 DC_HV_EKK_IstModus 0 "Standby" 2 "Tiefsetzen" 3 "Hochsetzen" 5 "Fehler" 7 "Initialisierung"; +VAL_ 1485 DC_Status_Spgfreiheit_HV 0 "Init" 1 "HV_Komponente_spannungsfrei" 2 "HV_Komp_nicht_spannungsfrei" 3 "Fehler_nicht_spannungsfrei"; +VAL_ 1485 DC_IstSpannung_EKK_HV 255 "Init"; +VAL_ 1485 DC_Temperatur 254 "Init" 255 "Fehler"; +VAL_ 1505 BCM1_Aussen_Temp_ungef 253 "nicht_verbaut" 254 "Initwert" 255 "Fehler"; +VAL_ 1505 BCM_Heizungsabsperrventil_Status 0 "HAV_offen" 1 "HAV_geschlossen" 2 "Init_oder_nicht_verbaut" 3 "Fehler"; +VAL_ 1505 BCM_Heizungspumpe_Status 0 "Pumpe_aus" 1 "Pumpe_aktiv_und_Stauts_iO" 2 "Init_oder_nicht_verbaut" 3 "Fehler"; +VAL_ 1505 BCM_Kompressorkupplung_Status 0 "Kupplung_offen" 1 "Kupplung_geschlossen" 2 "Init_oder_nicht_verbaut" 3 "Fehler"; +VAL_ 1505 BCM1_PTC_stufig_Status 0 "Aus" 1 "Stufe_1_aktiv" 2 "Stufe_2_aktiv" 3 "Stufe_3_aktiv" 6 "Init_oder_nicht_verbaut" 7 "Fehler"; +VAL_ 1505 BCM1_FStatus_Aussentemp_ungef 0 "iO" 1 "niO"; +VAL_ 1505 BCM1_Kompressorstrom_ist 254 "Init, bzw. nicht verfuegbar" 255 "Fehler"; +VAL_ 1505 BCM1_OBD_FStatus_ATemp 0 "kein Fehler / Init / nicht verbaut" 1 "KS- (Kurzschluss nach minus)" 2 "KS+ (Kurzschluss nach plus)" 3 "OC (Leitungsunterbrechung)" 4 "OOR+ (Signal zu gross)" 5 "OOR- (Signal zu klein)" 6 "RC+ (Signal unplausibel zu gross)" 7 "RC- (Signal unplausibel zu klein)" 8 "KS+/OC (Kurzschluss nach plus/Unterbrechung)" 9 "KS-/OC (Kurzschluss nach minus/Unterbrechung)" 10 "KS-/KS+ (Kurzschluss nach minus/plus)" 11 "KS-/KS+/OC (Kurzschluss nach minus/plus/Unterbrechung)" 12 "frei" 13 "frei" 14 "frei" 15 "frei"; +VAL_ 1513 DS_Kaeltemittel_P 2046 "Init" 2047 "Fehler"; +VAL_ 1513 DS_Status 0 "i.O." 1 "t.b.d." 2 "Init bzw. nicht verfügbar" 3 "Fehler"; +VAL_ 1513 ION_Status 0 "Hochspannung_ausgeschaltet" 1 "Hochspannung_eingeschaltet" 2 "Init"; +VAL_ 1513 ION_Status_LED 0 "Aus" 1 "Ein"; +VAL_ 1513 AAU_Geblaese 126 "Init" 127 "Fehler"; +VAL_ 1513 ION_Status_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1520 DI_KL_58xd 254 "Init" 255 "Fehler"; +VAL_ 1520 DI_KL_58xs 126 "Init" 127 "Fehler"; +VAL_ 1520 DI_KL_58xt 126 "Init" 127 "Fehler"; +VAL_ 1524 IL_Bel_FS_Ausstieg 0 "inaktiv" 1 "aktiv"; +VAL_ 1524 IL_Bel_BFS_Ausstieg 0 "inaktiv" 1 "aktiv"; +VAL_ 1524 IL_Bel_HFS_Ausstieg 0 "inaktiv" 1 "aktiv"; +VAL_ 1524 IL_Bel_HBFS_Ausstieg 0 "inaktiv" 1 "aktiv"; +VAL_ 1524 BCM1_Innenlicht_gedimmt_V 0 "100% Innenlicht" 1 "gedimmtes Innenlicht"; +VAL_ 1524 BCM1_Innenlicht_gedimmt_H 0 "100% Innenlicht" 1 "gedimmtes Innenlicht"; +VAL_ 1524 IL_Innenlicht_aktiv 0 "Innenlicht inaktiv" 1 "Innenlicht aktiv"; +VAL_ 1524 IL_Klemme_30G_aktiv 0 "Kl_30G_abgeschaltet" 1 "eingeschaltet"; +VAL_ 1524 BCM1_DI_Rampe_Innenlicht 0 "Dimmrampe 0" 1 "Dimmrampe 1"; +VAL_ 1524 BCM1_DI_Rampe_Leselicht 0 "Dimmrampe 0" 1 "Dimmrampe 1"; +VAL_ 1524 BCM1_Innenlicht_H 0 "Aus" 1 "Ein"; +VAL_ 1524 BCM1_Innenlicht_V 0 "Aus" 1 "Ein"; +VAL_ 1524 BCM1_Leselicht_Anf_hl 0 "Aus" 1 "Ein"; +VAL_ 1524 BCM1_Leselicht_Anf_hr 0 "Aus" 1 "Ein"; +VAL_ 1524 BCM1_Leselicht_Anf_vl 0 "Aus" 1 "Ein"; +VAL_ 1524 BCM1_Leselicht_Anf_vr 0 "Aus" 1 "Ein"; +VAL_ 1524 BCM1_Leuchten_Aus 0 "keine Aenderung" 1 "Aus"; +VAL_ 1524 AMB_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 1524 AMB_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 1600 MO_QBit_Ansaugluft_Temp 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1600 MO_QBit_Oel_Temp 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1600 MO_QBit_Kuehlmittel_Temp 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1600 MO_HYB_Fehler_HV_Netz 0 "i_O" 1 "kein_generatorischer_Betrieb_moeglich"; +VAL_ 1600 MO_aktives_Getriebeheizen 0 "kein_Ventil_ansteuern" 1 "Ventil_muss_angesteuert_werden"; +VAL_ 1600 MO_Absperrventil_oeffnen 0 "nicht_verfuegbar" 1 "Ansteuerung_Ventil_zulaessig" 2 "Ventil_oeffnen_oder_geoeffnet" 3 "Ventil_schliessen_oder_geschlossen"; +VAL_ 1600 MO_Ansaugluft_Temp 254 "Init" 255 "Fehler"; +VAL_ 1600 MO_Oel_Temp 253 "nicht_verbaut" 254 "Init" 255 "Fehler"; +VAL_ 1600 MO_Kuehlmittel_Temp 254 "Init" 255 "Fehler"; +VAL_ 1600 MO_Hoeheninfo 255 "Fehler"; +VAL_ 1600 MO_Kennfeldk 0 "keine Kennfeldkühlung vorhanden" 1 "Kennfeldkühlung vorhanden"; +VAL_ 1600 MO_Getriebe_kuehlen 0 "nicht_kuehlen" 1 "kuehlen"; +VAL_ 1600 MO_Heizungspumpenansteuerung 13 "Fehler" 14 "Init" 15 "nicht_verbaut"; +VAL_ 1600 MO_SpannungsAnf 0 "keine_Anforderung" 1 "Anforderung"; +VAL_ 1601 MO_Faktor_Momente_02 0 "nicht_belegt"; +VAL_ 1601 MO_Hybridfahrzeug 0 "kein_Hybridfahrzeug" 1 "Mild_Hybrid" 2 "Full_Hybrid" 3 "PlugIn_Hybrid"; +VAL_ 1601 MO_Getriebe_Code 0 "Init" 2 "DL501" 3 "DL800" 4 "VL381" 5 "DL382_Front" 6 "DL382_Allrad" 7 "DL702" 8 "AL552_Allrad" 9 "AL552_Front" 10 "AL651" 11 "AL551__AL951__AL1000_8A" 12 "PDK_PAG" 13 "AL551_Hybrid" 15 "Handschalter_konventionell" 16 "AQ250_160" 17 "AQ450" 18 "DQ200" 19 "DQ250" 20 "DQ500" 21 "SQ100" 22 "SQ200" 23 "DQ400E" 24 "DQ381" 25 "AL550" 26 "AQ300" 31 "DL800E" 32 "Single_Gear__ohne_GSG_WH_am_MSG" 33 "EQ550_2P"; +VAL_ 1601 MO_StartStopp_Codiert 0 "Start_Stopp_nicht_verbaut" 1 "Start_Stopp_verbaut"; +VAL_ 1601 MO_Anzahl_Zyl 0 "kein_Zylinder" 1 "1_Zylinder" 2 "2_Zylinder" 3 "3_Zylinder" 4 "4_Zylinder" 5 "5_Zylinder" 6 "6_Zylinder" 7 "7_Zylinder" 8 "8_Zylinder" 9 "9_Zylinder" 10 "10_Zylinder" 11 "11_Zylinder" 12 "12_Zylinder" 13 "15_Zylinder" 14 "16_Zylinder" 15 "18_Zylinder"; +VAL_ 1601 MO_Kraftstoffart 0 "Diesel" 1 "Benzin_inkl_E25_E85" 2 "CNG" 3 "LPG" 4 "Wasserstoff" 5 "E100_Ethanol" 15 "kein_Verbrennungskraftstoff"; +VAL_ 1601 MO_Ansaugsystem 0 "Turbo" 1 "Sauger"; +VAL_ 1601 MO_DPF_verbaut 0 "kein_DPF_verbaut" 1 "DPF_verbaut"; +VAL_ 1601 TSK_Codierung 0 "kein_Fahrgeschwindigkeitsregler" 1 "GRA" 2 "GRA_Plus" 3 "Basis_ACC" 4 "ACC_Follow_to_Stop" 5 "ACC_Stop_and_Go" 7 "Codierung_in_Plausibilisierungsphase"; +VAL_ 1603 KBI_Einheit_Datum 0 "Tag/Monat/Jahr" 1 "Monat/Tag/Jahr" 2 "Jahr/Monat/Tag" 3 "reserviert"; +VAL_ 1603 KBI_Einheit_Druck 0 "Druckangabe in bar" 1 "Druckangabe in psi" 2 "Druckangabe in kPa" 3 "tbd."; +VAL_ 1603 KBI_Einheit_Streckenanz 0 "Kilometer" 1 "Meilen"; +VAL_ 1603 KBI_MFA_v_Einheit_02 0 "kmh" 1 "mph"; +VAL_ 1603 KBI_Einheit_Temp 0 "Grad Celsius °C" 1 "Grad Fahrenheit °F"; +VAL_ 1603 KBI_Einheit_Uhrzeit 0 "24h" 1 "12h AM/PM"; +VAL_ 1603 KBI_Einheit_Verbrauch 0 "mpg UK" 1 "mpg USA" 2 "Liter/100km" 3 "km/Liter"; +VAL_ 1603 KBI_Einheit_Volumen 0 "Liter" 1 "Gallonen UK" 2 "Gallonen USA" 3 "reserviert"; +VAL_ 1603 KBI_Einheit_Verbrauch_elektr 0 "kWh_pro_100km" 1 "km_pro_kWh" 2 "kWh_pro_100mls" 3 "mls_pro_kWh" 4 "MPGe"; +VAL_ 1603 KBI_Einheit_Verbrauch_Gas 0 "kg_per_100km" 1 "km_per_kg" 2 "m3_per_100km" 3 "km_per_m3" 4 "miles_per_lbs" 5 "miles_per_yard3" 6 "miles_per_kg" 7 "miles_per_m3" 8 "miles_per_gallon_equivalent_US"; +VAL_ 1603 KBI_Einheit_Masse 0 "kg" 1 "lbs" 2 "reserviert"; +VAL_ 1622 ELV_Anf_Klemme_S 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Anf_Klemme_15 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Anf_Klemme_50 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_01_Sendestatus 0 "ELV_sendet_mit_1000ms" 1 "ELV_sendet_mit_50ms"; +VAL_ 1622 ELV_Verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; +VAL_ 1622 ELV_Entriegelt 0 "ELV_nicht_entriegelt" 1 "ELV_entriegelt"; +VAL_ 1622 ELV_ZAT_betaetigt 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1622 ELV_Lebenszustand 0 "Lebenszustand_0" 1 "Lebenszustand_4"; +VAL_ 1622 ELV_Anlernmodus 0 "Normalbetrieb" 1 "Anlernmodus"; +VAL_ 1622 ELV_Klemmenfreigabe 0 "keine_Freigabe" 1 "Freigabe"; +VAL_ 1622 ELV_Abbruch_Anf_Klemmenfreigabe 0 "kein_Abbruch" 1 "Abbruch"; +VAL_ 1622 ELV_LED_Rot 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_LED_Gelb 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_Panikabschaltung 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_Lkg_Bewegen 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_Werkstatt 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_Defekt 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_P_Gang 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_PN_Gang 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_Kupplung 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_Txt_Bremse 0 "Aus" 1 "Ein"; +VAL_ 1622 ELV_P_verriegelt 0 "nicht_verriegelt" 1 "verriegelt"; +VAL_ 1624 LV_Standlicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1624 LV_Abblendlicht_Anzeige 0 "inaktiv" 1 "aktiv"; +VAL_ 1624 LV_Fernlicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1624 LV_Nebellicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1624 LV_Nebelschlusslicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1624 LV_Tagfahrlicht_Anzeige 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1624 LV_AFL_aktiv_Anzeige 0 "nicht aktiv" 1 "aktiv"; +VAL_ 1624 LV_AFL_defekt 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Blinker_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Standlicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abblendlicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Fernlicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Nebellicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Blk_li_Seite_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Tagfahrlicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_FLA_aktiv_Anzeige 0 "aus" 1 "ein"; +VAL_ 1624 LV_FLA_defekt 0 "i.O." 1 "FLA defekt"; +VAL_ 1624 LV_FLA_Sensor_blockiert 0 "i.O." 1 "FLA-Sensor blockiert"; +VAL_ 1624 LV_Blinker_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Standlicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abblendlicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Fernlicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Nebellicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Blk_re_Seite_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Tagfahrlicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Aussenlicht_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abblendlicht_TFL_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Nebellicht_TFL_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Standlicht_TFL_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abblend_Fernlicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abblendlicht_TFL_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Nebellicht_TFL_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Standlicht_TFL_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abblend_Fernlicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abbiegelicht_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Abbiegelicht_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 BCM1_Linksverkehr 0 "Rechtsverkehr" 1 "Linksverkehr"; +VAL_ 1624 BCM1_Licht_Dunkelheit_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1624 LV_LED_Scheinwerfer_li_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_LED_Scheinwerfer_re_def 0 "OK" 1 "defekt"; +VAL_ 1624 LV_Blinker_VL_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1624 LV_Blinker_VR_aktiv 0 "inaktiv" 1 "aktiv"; +VAL_ 1624 LV_MXB_Status_Anzeige 0 "MXB_aus" 1 "MXB_regelt" 2 "MXB_volles_Fernlicht" 3 "MXB_und_Laser_aktiv"; +VAL_ 1629 BR_Systemart 0 "ABS" 1 "ABS_ASR" 2 "ESP" 3 "ESP_mit_integrierter_EPB"; +VAL_ 1629 ESP_SpannungsAnf_02 0 "keine_Anforderung" 1 "Anforderung_Stufe1" 2 "Anforderung_Stufe2" 3 "Anforderung_Stufe3"; +VAL_ 1629 ESP_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 1629 ESP_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 1629 ESP_Wiederstart_Anz_01 0 "keine_Anzeige" 1 "Rueckwaertsrollen"; +VAL_ 1629 ESP_Wiederstart_Anz_02 0 "keine_Anzeige" 1 "Autohold_Rutschen"; +VAL_ 1629 ESP_Wiederstart_Anz_03 0 "keine_Anzeige" 1 "Offroad_HDC"; +VAL_ 1629 ESP_Wiederstart_Anz_04 0 "keine_Anzeige" 1 "ESC_Off"; +VAL_ 1629 ESP_Stoppverbot_Anz_01 0 "keine_Anzeige" 1 "Notbremsung_aktiv"; +VAL_ 1629 ESP_Stoppverbot_Anz_02 0 "keine_Anzeige" 1 "Autohold_AVH_Rutschen"; +VAL_ 1629 ESP_Stoppverbot_Anz_03 0 "keine_Anzeige" 1 "Rueckwaertsrollen"; +VAL_ 1629 ESP_Stoppverbot_Anz_04 0 "keine_Anzeige" 1 "ESP_Pumpenlauf"; +VAL_ 1629 ESP_Stoppverbot_Anz_05 0 "keine_Anzeige" 1 "ESP_OFF"; +VAL_ 1629 ESP_Stoppverbot_Anz_06 0 "keine_Anzeige" 1 "Offroad_HDC"; +VAL_ 1629 ESP_Stoppverbot_Anz_07 0 "keine_Anzeige" 1 "ESP_Haltefunktion_nicht_verfuegbar"; +VAL_ 1629 ESP_Stoppverbot_Anz_Std 0 "keine_Anzeige" 1 "Standard_Stoppvetogrund"; +VAL_ 1629 ESP_Dachrelingsensor 0 "Sensor_nicht_verbaut" 1 "Quertraeger_montiert" 2 "Quertraeger_nicht_montiert" 3 "Fehler"; +VAL_ 1629 ESP_Stoppverbot_Anz_08 0 "keine_Anzeige" 1 "Neigungsbegrenzung"; +VAL_ 1629 HDC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 1629 HDC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 1629 BR_QBit_Reifenumfang 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1631 TSK_QBit_Steigung 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1631 TSK_QBit_Fahrzeugmasse 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1631 MO_SpannungsAnf_02 0 "keine_Anforderung" 1 "Anforderung_Stufe_1" 2 "Anforderung_Stufe_2" 3 "Anforderung_Stufe_3"; +VAL_ 1631 MO_DPF_reg 0 "DPF_regeneriert_nicht" 1 "DPF_regeneriert"; +VAL_ 1631 MO_Heizstrom_EKAT 127 "Fehler"; +VAL_ 1631 MO_Heizstrom_SCR 63 "Fehler"; +VAL_ 1631 MO_Anzeige_Kaltleuchte 0 "Lampe_aus" 1 "Lampe_an"; +VAL_ 1631 MO_P_Generator_ungefiltert_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 1631 TSK_Getriebeinfo 0 "Handschalter" 1 "AL_AQ_Getriebe" 2 "DL_DQ_Getriebe" 3 "CVT_Getriebe"; +VAL_ 1631 MO_Energieinhalt_BMS 4094 "Init" 4095 "Fehler"; +VAL_ 1631 TSK_Fahrzeugmasse_02 255 "Fehler"; +VAL_ 1631 TSK_Steigung_02 0 "Init_oder_nicht_verbaut" 255 "Fehler"; +VAL_ 1640 KL_LRH_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1640 KL_LRH_Stufe 0 "Stufe_niedrig" 1 "Stufe_mittel" 2 "Stufe_hoch" 3 "AUS"; +VAL_ 1640 HSH_Taster 0 "nicht_betaetigt" 1 "short_push" 2 "long_push" 3 "tbd"; +VAL_ 1640 FSH_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1640 KL_Zuheizer_Freigabe 0 "keine_Freigabe_Zuheizer" 1 "Zuheizerfreigabe"; +VAL_ 1640 KL_Beschlagsgefahr 0 "keine_Beschlagsgefahr" 1 "Beschlagsgefahr"; +VAL_ 1640 KRH_Soll_li 0 "aus" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; +VAL_ 1640 KRH_Soll_re 0 "aus" 1 "Stufe_1" 2 "Stufe_2" 3 "Stufe_3"; +VAL_ 1640 KL_Geblspng_Soll 0 "0V_Motorspannung" 252 "0V_sofort_Abschalten" 253 "0V_senken_mit_Rampe" 254 "reserviert" 255 "Fehler"; +VAL_ 1640 KL_Geblspng_Fond_Soll 0 "0V_Motorspannung" 252 "0V_sofort_Abschalten" 253 "0V_senken_mit_Rampe" 254 "reserviert" 255 "Fehler"; +VAL_ 1640 KL_I_Geblaese 255 "Fehler"; +VAL_ 1640 KL_Kompressorstrom_soll 1022 "Init" 1023 "Fehler"; +VAL_ 1640 KL_Umluftklappe_Status 0 "Frischluft" 1 "Teilumluft_10" 2 "Teilumluft_20" 3 "Teilumluft_30" 4 "Teilumluft_40" 5 "Teilumluft_50" 6 "Teilumluft_60" 7 "Teilumluft_70" 8 "Teilumluft_80" 9 "Teilumluft_90" 10 "Umluft" 14 "Init" 15 "Fehler"; +VAL_ 1640 KL_PTC_Verbauinfo 0 "kein_PTC" 1 "600W_geschaltet" 2 "1000W_geschaltet" 3 "1400W_LIN"; +VAL_ 1648 MO_ANC_Kennfeld_Anf 0 "Kennfeld_1" 1 "Uebergang_Kennfeld_2_nach_1" 2 "Uebergang_Kennfeld_1_nach_2" 3 "Kennfeld_2"; +VAL_ 1648 MO_Bremslicht_Reku 0 "Aus" 1 "Ein"; +VAL_ 1648 MO_StartStopp_PopUp 0 "Statuswechsel_ohne_Taster (Init)" 1 "StSt_per_Taster_deaktiviert" 2 "StSt_per_Taster_aktiviert" 3 "nicht verwendet"; +VAL_ 1648 MO1_Sperr_Info_WFS 0 "nicht_gesperrt" 1 "gesperrt"; +VAL_ 1648 MO1_Freigabe_Info_WFS 0 "ungueltig" 1 "gueltig"; +VAL_ 1648 MO_EPCL 0 "EPCL_aus_kein_Text" 1 "EPCL_gelb_Stoerung" 2 "EPCL_gelb_Leistungsbeschraenkung" 3 "EPCL_rot_Fzg_sicher_abstellen"; +VAL_ 1648 MO_Zylabsch_Texte_02 0 "ein_ZAS_generell_keine_ZAS_Anzeigen" 1 "ZAS_im_VMB" 2 "ZAS_im_ASB_1_Zyl_aktiv" 3 "ZAS_im_ASB_2_Zyl_aktiv" 4 "ZAS_im_ASB_3_Zyl_aktiv" 5 "ZAS_im_ASB_4_Zyl_aktiv" 6 "ZAS_im_ASB_5_Zyl_aktiv" 7 "ZAS_im_ASB_6_Zyl_aktiv" 8 "ZAS_im_ASB_8_Zyl_aktiv" 9 "ZAS_im_ASB_12_Zyl_aktiv" 13 "Uebergangsbetrieb" 14 "keine_ZAS_Anzeige_ggf_Stopp_Schub_Betrieb" 15 "ZAS_Stoerungs_Anzeige"; +VAL_ 1648 MO_Fahrzeugtyp 0 "Verbrenner_Fahrzeug" 1 "Hybrid" 2 "E_Fahrzeug" 3 "E_Fahrzeug_mit_Range_Extender" 4 "Brennstoffzellenfahrzeug" 5 "tbd" 6 "tbd" 7 "tbd"; +VAL_ 1648 MO_Abstellzeit 254 "Init" 255 "reserviert"; +VAL_ 1648 MO_Abstellzeit_Status 0 "Abstellzeit_nicht_berechnet" 1 "Abstellzeit_berechnet" 2 "Abstellzeit_Minimalwert" 3 "Abstellzeit_ungueltig"; +VAL_ 1648 MO1_Freigabe_Verfallsinfo_WFS 0 "verfaellt_nicht" 1 "verfaellt"; +VAL_ 1648 MO_Hybrid_StartStopp_LED 0 "LED_aus_und_Blinken_aus" 1 "LED_ein_und_Blinken_aus" 2 "LED_ein_und_Blinken_ein_50_percent" 3 "reserviert"; +VAL_ 1648 MO_Fehler_Zylabsch 0 "kein_Fehler" 1 "Notlauf_Vollmotorbetrieb" 2 "Notlauf_mindestens_einem_abgesch_Zylinder"; +VAL_ 1648 MO_Anzahl_Abgesch_Zyl 0 "Vollmotorbetrieb" 1 "1_Zylinder_abgeschaltet" 2 "2_Zylinder_abgeschaltet" 3 "3_Zylinder_abgeschaltet" 4 "4_Zylinder_abgeschaltet" 5 "5_Zylinder_abgeschaltet" 6 "6_Zylinder_abgeschaltet" 7 "8_Zylinder_abgeschaltet"; +VAL_ 1648 MO_Zylabsch_Texte 0 "keine_Texte" 1 "Zylinderabschaltung_deaktivieren" 2 "Zylinderabschaltung_aktivieren" 3 "Zylinderabschaltung_unruhig"; +VAL_ 1648 MO_Ethanol_BS_Texte 0 "kein_Text" 1 "E85_Warm_Up" 2 "FlexFuel_Warnung_Stufe_3" 3 "Warmfahrempfehlung_MQB__FlexFuel_Warnung_Stufe_1" 4 "FlexFuel_Warnung_Stufe_2" 5 "FlexFuel_Warnung_Stufe_4" 6 "E25_Warm_Up"; +VAL_ 1648 MO_Drehzahl_Warnung 0 "keinen_Warnhinweis_anzeigen" 1 "Warnhinweis_anzeigen"; +VAL_ 1648 MO_obere_Drehzahlgrenze 0 "Init"; +VAL_ 1710 SP_FT_oben 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_FT_unten 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_FT_links 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_FT_rechts 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_BT_oben 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_BT_unten 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_BT_links 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_BT_rechts 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_abklappen 0 "Spiegel_abklappen_nicht_aktiv" 1 "Spiegel_abklappen_aktiv"; +VAL_ 1710 SP_anklappen 0 "Spiegle_anklappen_nicht_aktiv" 1 "Spiegel_anklappen_aktiv"; +VAL_ 1710 SP_normieren 0 "Spiegel_nicht_normiert" 1 "Spiegel_normiert"; +VAL_ 1710 SP_Hzg_Taster 0 "nicht_betaetigt" 1 "betaetigt"; +VAL_ 1710 SP_S_oben 1 "Spiegelschalter in Stellung oben"; +VAL_ 1710 SP_S_unten 1 "Spiegelschalter in Stellung unten"; +VAL_ 1710 SP_S_links 1 "Spiegelschalter in Stellung links"; +VAL_ 1710 SP_S_rechts 1 "Spiegelschalter in Stellung rechts"; +VAL_ 1710 SP_Auswahl_li 1 "Spiegelschalter in Stellung Auswahl links"; +VAL_ 1710 SP_Auswahl_re 1 "Spiegelschalter in Stellung Auswahl rechts"; +VAL_ 1710 SP_ARA_Status 0 "TSG nicht im ARA-Modus" 1 "TSG im ARA-Modus"; +VAL_ 1710 SP_S_Klappen 1 "Spiegelschalter in Stellung Klappen"; +VAL_ 1710 SP_Verstellschalter_Fehler 0 "kein_Fehler" 1 "Fehler"; +VAL_ 1711 RV_Video_on 0 "Kamerabild wird nicht angezeigt" 1 "Kamerabild wird angezeigt"; +VAL_ 1711 RV_Dark_Screen 0 "Kamerabild nicht verdunkeln" 1 "Kamerabild verdunkeln"; +VAL_ 1711 RV_HMI_Mode 0 "Parkluecke (Modus 1)" 1 "Parallel zur Straߥ (Modus 2)" 2 "reserviert" 3 "Kalibrierung (nur Diagnose)"; +VAL_ 1711 RV_GL_side 0 "Guidelines_abgeschaltet" 1 "Guidelines_Anzeige_rechte_Seite" 2 "Guiedelines_Anzeige_linke_Seite" 3 "Guiedelines_Anzeige_beide_Seiten"; +VAL_ 1711 RV_System_aktiv 0 "System nicht betriebsbereit" 1 "System betriebsbereit"; +VAL_ 1711 RV_Reinigung_Anf 0 "nicht_reinigen" 1 "reinigen"; +VAL_ 1711 RV_Settings_enabled 0 "Menu 'Einstellungen' nicht aktiviert" 1 "Menu 'Einstellungen' aktiviert"; +VAL_ 1711 RV_Menu_Item 0 "HMI Mode als ausgewaehlt markiert" 1 "Helligkeit als ausgewaehlt markiert" 2 "Kontrast als ausgewaehlt markiert" 3 "Farbsaettigung als ausgewaehlt markiert"; +VAL_ 1711 SV_Video_on 0 "SideView_aus_/_nicht_verbaut" 1 "SideView_an"; +VAL_ 1711 RV_Calib_Fehler 0 "Kalibrierung_i.O." 1 "RearView_nicht_kalibriert"; +VAL_ 1711 RV_GL_Trailer_connect 0 "Guidelines_werden_angezeigt" 1 "Guidelines_wegen_angekoppeltem_Anh䮧er_deaktiviert"; +VAL_ 1711 RV_GL_Trunk_open 0 "Guidelines_werden_angezeigt" 1 "Guidelines_wegen_geöffneter_Heckklappe_deaktiviert"; +VAL_ 1711 RV_GL_LWS_Fehler 0 "Guidelines_werden_angezeigt" 1 "Guidelines_wegen_nicht_kalibriertem_Lenkwinkelsensor_deaktiviert"; +VAL_ 1711 ZFAS_Umfeldbeleuchtung_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 1714 DGN_Verlernzaehler 255 "ungültiger Z䨬erstand oder kein gültiger Fahrzyklus"; +VAL_ 1714 UH_Monat 0 "Init" 14 "Relatives_Datum" 15 "Fehler"; +VAL_ 1714 UH_Tag 0 "Init"; +VAL_ 1714 Kombi_02_alt 0 "aktuell" 1 "veraltet"; +VAL_ 1714 Uhrzeit_01_alt 0 "aktuell" 1 "veraltet"; diff --git a/opendbc_repo/opendbc/dbc/vw_mqb.dbc b/opendbc_repo/opendbc/dbc/vw_mqb.dbc new file mode 100644 index 0000000000..500f7c5367 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/vw_mqb.dbc @@ -0,0 +1,1773 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: Airbag_MQB BAP_Tester_MQB BMS_MQB Datenlogger_MQB Gateway_MQB Getriebe_DQ_Hybrid_MQB Getriebe_DQ_MQB LEH_MQB Motor_Diesel_MQB Motor_Hybrid_MQB Motor_Otto_MQB SAK_MQB Waehlhebel_MQB Vector__XXX l c i XXX + + +BO_ 290 ACC_06: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_DynErhoehung : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 279 ACC_10: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AWV1_Anf_Prefill : 16|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_CM_Info : 17|1@1+ (1,0) [0|1] "" XXX + SG_ AWV2_Freigabe : 18|1@1+ (1,0) [0|1] "" XXX + SG_ AWV1_HBA_Param : 19|2@1+ (1,0) [0|3] "" XXX + SG_ AWV2_Ruckprofil : 21|3@1+ (1,0) [0|7] "" XXX + SG_ AWV2_Priowarnung : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_CM_Anforderung : 25|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Info_Teilbremsung : 26|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Notfallblinken : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Teilbremsung_Freigabe : 28|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Zielbrems_Teilbrems_Verz_Anf : 29|10@1+ (0.024,-20.016) [-20.016|4.536] "Unit_MeterPerSeconSquar" XXX + SG_ ANB_Zielbremsung_Freigabe : 39|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Vorstufe : 40|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Halten : 41|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_CityANB_Auspraegung : 42|1@1+ (1,0) [0|1] "" XXX + SG_ PCF_Freigabe : 43|1@1+ (1,0) [0|1] "" XXX + SG_ AWV1_ECD_Anlauf : 44|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_AWA_VZ_Anf_Lenkmomoffset : 46|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ AWV_AWA_Anf_Lenkmomoffset : 47|9@1+ (0.01,0) [0.00|5.11] "Unit_NewtoMeter" XXX + SG_ PCF_Time_to_collision : 56|8@1+ (0.01,0) [0|2.5] "Unit_Secon" XXX + +BO_ 679 ACC_13: 8 XXX + SG_ ACC_Regelgeschw : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Einheit_maxSetzgeschw : 22|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_maxSetzgeschw : 23|9@1+ (1,0) [0|510] "" XXX + SG_ ACC_minRegelgeschw : 32|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX + SG_ ACC_maxRegelgeschw : 40|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Tempolimitassistent : 48|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Kurvenassistent : 52|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_RUV : 56|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Tachokranz : 58|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz_unten : 59|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_ENG_Texte : 60|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_ADAPTIVE : 63|2@0+ (1,0) [0|3] "" XXX + +BO_ 681 ACC_15: 8 XXX + SG_ AWV_Warnung : 16|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Texte : 24|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Status_Anzeige : 32|2@1+ (1,0) [0|3] "" XXX + SG_ AWV_Einstellung_System_FSG : 34|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Einstellung_Warnung_FSG : 36|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Warnlevel : 58|6@1+ (1,0) [0|63] "" XXX + +BO_ 64 Airbag_01: 8 Airbag_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_PAO_Leuchte_Anf : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Deaktivierung_HV : 42|3@1+ (1.0,0.0) [0.0|7] "" BMS,Gateway_MQB,LEH_MQB,Motor_Hybrid_MQB + SG_ AB_EDR_Trigger : 45|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB + SG_ AB_Gurtwarn_HFS : 47|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ AB_Gurtwarn_HBFS : 48|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ SC_Masterzeit_Offset : 53|2@1+ (5.08,0) [0.00|15.24] "Unit_Secon" Gateway_MQB + SG_ SC_Masterzeit : 57|7@1+ (0.04,0) [0.00|5.04] "Unit_Secon" Gateway_MQB + +BO_ 1312 Airbag_02: 8 Airbag_MQB + SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 65 Airbag_03: 8 Airbag_MQB + SG_ Airbag_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Airbag_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_MKB_Safing : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1633 Anhaenger_01: 8 Gateway_MQB + SG_ AAG_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_abgesteckt : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_NSL_aktiv : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Anhaenger_erkannt : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Blinker_H_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Blinker_HL_def : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Blinker_HR_def : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Bremslicht_H_def : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Schlusslicht_HL_def : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Schlusslicht_HR_def : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_AVS_Fehler_02 : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_AVS_Stati : 20|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 1626 BCM_01: 8 Gateway_MQB + SG_ BCM_Bremsbelag_Sensor : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Bremsfluessigkeit_Sensor : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Licht_Warn : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Waschwasser_Sensor : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Kuehlmittel_Sensor : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_Kl_15_HW_erkannt : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Eis_Offroad_Taste : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZZH_Endlage_oben : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZZH_Endlage_unten : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZZH_Endlage_unplausibel : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM2_EZS_gedrueckt : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM2_SST_gedrueckt : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Hybrid_StartStopp_Taste : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Warnblink_Taster : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Valet_Parking_Taster : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Remotestart_Betrieb : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_HSK_Taster : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Heckrollo_Taster : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_MH_Schalter : 31|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_MH_WIV_Schalter : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Eco_Charisma_Taste : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Thermomanagement_Fehler : 36|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Thermomanagement_gueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Lichtwarn_Texte : 38|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 869 BEM_05: 8 Gateway_MQB + SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_01_Abschaltstufen : 26|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_EMLIN_ungueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Segel_Info : 48|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" LEH_MQB + SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" LEH_MQB + +BO_ 1628 BMS_Hybrid_01: 8 BMS_MQB + SG_ BMS_HYB_ASV_hinten_Status : 13|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_ASV_vorne_Status : 14|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_BattFanSpd : 16|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ BMS_HYB_VentilationReq : 20|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_Spuelbetrieb_Status : 21|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_Kuehlung_Anf : 22|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ BMS_HYB_Temp_vor_Verd : 24|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_HYB_Temp_nach_Verd : 32|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_Temperatur : 40|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_Temperatur_Ansaugluft : 48|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_IstSpannung_HV : 56|8@1+ (1,100) [100|350] "Unit_Volt" Gateway_MQB + +BO_ 901 Charisma_01: 8 Gateway_MQB + SG_ CHA_Ziel_FahrPr_ALR : 0|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_ESP : 4|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_FL : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Fahrer_Umschaltung : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ CHA_Ziel_FahrPr_MO : 16|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ CHA_Ziel_FahrPr_GE : 20|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ CHA_Ziel_FahrPr_ST : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_SCU : 28|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_DR : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_QS : 36|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_AFS : 40|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_RGS : 44|4@1+ (1,0) [0|15] "" Airbag_MQB + SG_ CHA_Ziel_FahrPr_EPS : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_ACC : 52|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_SAK : 56|4@1+ (1,0) [0|15] "" SAK_MQB + SG_ CHA_Ziel_FahrPr_MStSt : 60|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 945 DC_Hybrid_01: 8 LEH_MQB + SG_ DC_HYB_iAktLV : 12|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB + SG_ DC_HYB_iAktReserveLV : 22|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB + SG_ DC_HYB_uAktLV : 32|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Gateway_MQB + SG_ DC_HYB_LangsRegelung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Abregelung_Temperatur : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_RedLeistung : 42|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_intern : 43|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_Spannung : 44|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Auslastungsgrad : 56|8@1+ (0.4,0) [0|100] "Unit_PerCent" Gateway_MQB + +BO_ 1714 Diagnose_01: 8 Gateway_MQB + SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + +BO_ 1520 Dimmung_01: 8 Gateway_MQB + SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB + SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 1603 Einheiten_01: 8 Gateway_MQB + SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX + +BO_ 260 EPB_01: 8 Gateway_MQB + SG_ EPB_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_01_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_QBit_Laengsbeschleunigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_QBit_Pedalweg_Kuppl : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_BCM2_Motor_Wakeup : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_Freig_Verzoeg_Anf : 15|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_Verzoeg_Anf : 16|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" Vector__XXX + SG_ EPB_Laengsbeschleunigung : 24|8@1+ (1,-128) [-128|126] "Unit_PerCentOfForceOfGravi" Vector__XXX + SG_ EPB_Pedalweg_Kuppl : 32|8@1+ (0.4,0) [8|92] "Unit_PerCent" Vector__XXX + SG_ EPB_Anfahrwunsch_erkannt : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_DAA_Randbed_erf : 49|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ EPB_Fehlerstatus : 50|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EPB_Schalterposition : 52|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_QBit_Schalterpos : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_Konsistenz_ACC : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_Spannkraft : 56|5@1+ (1,0) [0|29] "Unit_KiloNewto" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ EPB_Status : 61|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 257 ESP_02: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Gierrate : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_QBit_Laengsbeschl : 13|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Querb : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Stillstandsflag : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Querbeschleunigung : 16|8@1+ (0.01,-1.27) [-1.27|1.27] "Unit_ForceOfGravi" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Laengsbeschl : 24|10@1+ (0.03125,-16) [-16|15.90625] "Unit_MeterPerSeconSquar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verteil_Wankmom : 34|5@1+ (0.1,-1) [-1|1] "" Vector__XXX + SG_ ESP_QBit_Anf_Vert_Wank : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Gierrate : 40|14@1+ (0.01,0) [0|163.82] "Unit_DegreOfArcPerSecon" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_VZ_Gierrate : 54|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Notbremsanzeige : 55|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_SpannungsAnf : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_PLA_Abbruch : 57|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ ESP_Status_ESP_PLA : 60|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 262 ESP_05: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Bremsdruck : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Fahrer_bremst : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Schwelle_Unterdruck : 14|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Bremsdruck : 16|10@1+ (0.3,-30) [-30|276.6] "Unit_Bar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Fahrer_bremst : 26|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verz_TSK_aktiv : 27|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Lenkeingriff_ADS : 28|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Konsistenz_TSK : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Bremsruck_AWV2 : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Konsistenz_AWV2 : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ECD_Fehler : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ECD_nicht_verfuegbar : 33|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Status_Bremsentemp : 34|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Autohold_Standby : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_HDC_Standby : 36|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_HBA_aktiv : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Prefill_ausgeloest : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Rueckwaertsfahrt_erkannt : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Status_Anfahrhilfe : 40|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HDC_aktiv : 41|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_StartStopp_Info : 42|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ESP_Eingr_HL : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_HR : 45|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_VL : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_VR : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_BKV_Unterdruck : 48|8@1+ (4,0) [0|1012] "Unit_MilliBar" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Autohold_aktiv : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_FStatus_Anfahrhilfe : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Verz_EPB_aktiv : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ECD_Bremslicht : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verzoeg_EPB_verf : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Status_Bremsdruck : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Anforderung_EPB : 62|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 914 ESP_07: 8 Gateway_MQB + SG_ ESP_07_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_07_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_ACC_LDE : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Quattro_Antrieb : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Codierung_ADS : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_RTA_HL : 16|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ ESP_RTA_HR : 24|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ ESP_RTA_VR : 32|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ OBD_Fehler_Radsensor_HL : 40|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_HR : 44|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_VL : 48|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_VR : 52|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Qualifizierung_Antriebsart : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Offroad_Modus : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_MKB_ausloesbar : 58|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_MKB_Status : 59|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_CM_Variante : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_OBD_Status : 61|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 278 ESP_10: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 178 ESP_19: 8 Gateway_MQB + SG_ ESP_HL_Radgeschw_02 : 0|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Radgeschw_02 : 16|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Radgeschw_02 : 32|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Radgeschw_02 : 48|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1629 ESP_20: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" XXX + SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_Wiederstart_Anz_01 : 30|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Wiederstart_Anz_02 : 31|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Wiederstart_Anz_03 : 32|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Wiederstart_Anz_04 : 33|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_01 : 34|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_02 : 35|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_03 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_04 : 37|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_05 : 38|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_06 : 39|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_07 : 40|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_Std : 41|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Dachrelingsensor : 42|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_Stoppverbot_Anz_08 : 44|1@1+ (1,0) [0|1] "" XXX + SG_ HDC_Charisma_FahrPr : 45|4@1+ (1,0) [0|15] "" XXX + SG_ HDC_Charisma_Status : 49|2@1+ (1,0) [0|3] "" XXX + SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" XXX + SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + +BO_ 253 ESP_21: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "" XXX + SG_ ESP_PLA_Bremseingriff : 22|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Diagnose : 23|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESC_Reku_Freigabe : 24|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESC_v_Signal_Qualifier_High_Low : 25|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ ESP_Vorsteuerung : 28|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_AWV3_Brems_aktiv : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ OBD_Schlechtweg : 30|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ OBD_QBit_Schlechtweg : 31|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0.00|655.32] "Unit_KiloMeterPerHour" XXX + SG_ ASR_Tastung_passiv : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Tastung_passiv : 49|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Systemstatus : 50|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ASR_Schalteingriff : 51|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ ESP_Haltebestaetigung : 53|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_MKB_Abbruch_Geschw : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_QBit_v_Signal : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ABS_Bremsung : 56|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ASR_Anf : 57|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MSR_Anf : 58|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ EBV_Eingriff : 59|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ EDS_Eingriff : 60|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Eingriff : 61|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_ASP : 62|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Anhaltevorgang_ACC_aktiv : 63|1@1+ (1.0,0.0) [0.0|1] "" XXX + +BO_ 987 Gateway_72: 8 Gateway_MQB + SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 989 Gateway_74: 8 Gateway_MQB + SG_ LH_EPS_01_alt : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ Kessy_04_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ LIN_2_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MFG_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ GW_74_va_14 : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Klima_02_alt : 5|1@1+ (1,0) [0|1] "" BMS_MQB + SG_ Parkhilfe_01_alt : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ELV_01_alt : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KY_StartStopp_Info : 16|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ PH_StartStopp_Info : 18|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ EPS_Lenkerposition : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB + SG_ ELV_Anf_Klemme_50 : 22|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ MF_StartStopp_Info : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ KL_Geblaesespannung_Soll : 40|8@1+ (0.05,0.5) [2|13] "Unit_Volt" BMS_MQB + SG_ KL_Umluftklappe_Status : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Tip_Down : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MFL_Tip_Up : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ LS_Tiptronic_Fehler : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 296 Getriebe_06: 3 Getriebe_DQ_Hybrid_MQB + SG_ GE_WH_Sperre : 0|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Ausleuchtungsmode : 1|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Test_Freigabe : 2|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Ist_Fahrstufe : 4|4@1+ (1,0) [0|15] "" Waehlhebel_MQB + SG_ GE_Testparameter_1 : 8|8@1+ (1,0) [0|255] "" Waehlhebel_MQB + SG_ GE_Testparameter_2 : 16|8@1+ (1,0) [0|255] "" Waehlhebel_MQB + +BO_ 173 Getriebe_11: 8 Getriebe_DQ_Hybrid_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER_DISABLED : 8|4@1+ (1,0) [0|15] "" XXX + SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "" XXX + SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "" XXX + SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" XXX + SG_ GE_Fahrstufe : 42|4@1+ (1,0) [0|15] "" XXX + SG_ GE_reserv_Fahrstufe : 46|1@1+ (1,0) [0|1] "" XXX + SG_ GE_Schaltablauf : 47|2@1+ (1,0) [0|3] "" XXX + SG_ GE_Uefkt_unplausibel : 49|1@1+ (1,0) [0|1] "" XXX + SG_ GE_MMom_Status_02 : 50|3@1+ (1,0) [0|7] "" XXX + SG_ GE_Status_Kraftschluss : 53|3@1+ (1,0) [0|7] "" XXX + SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" XXX + SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" XXX + SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" XXX + SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 174 Getriebe_12: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_12_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Getriebe_12_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Drehzahlmesser_Daempfung : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Schubabschalt_Unt : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freigabe_Synchro : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Synchro_Wunschdrehz : 15|9@1+ (25,0) [0|12750] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Synchro_Zeit : 24|8@1+ (20,0) [0|5080] "Unit_MilliSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Mom_Begr_Gradient : 32|8@1+ (10,0) [0|2540] "Unit_NewtoMeterPerSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Anheb_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Aufnahmemoment : 48|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Anf_Zylabsch : 58|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ GE_HYB_DZ_Eingriff : 62|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB + +BO_ 301 Getriebe_13: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_13_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Getriebe_13_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_StartStopp_Info : 12|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ GE_Langfr_Schutzmom_02 : 14|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Eingangsdrehz : 48|14@1+ (1,0) [0|16381] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Notlauf : 62|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freig_Langfr_Schutzmom : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 968 Getriebe_14: 8 Getriebe_DQ_Hybrid_MQB + SG_ GE_OBD_AbsperrVent : 12|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_amax_moeglich : 16|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Charisma_FahrPr : 25|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ GE_Charisma_Status : 29|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ GE_Verlustmoment : 32|8@1+ (1,0) [0|254] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freigabe_Verfallsinfo_WFS : 49|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_Codierung_MSG : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_LaunchControl : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_Heizwunsch : 52|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_OBD_Status : 54|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_LFR_Adaption : 55|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Sumpftemperatur : 56|8@1+ (1,-58) [-58|196] "Unit_DegreCelsi" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 158 Getriebe_Hybrid_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB + SG_ Getriebe_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB + SG_ GE_HYB_Fehlerstatus : 12|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freigabe_K0 : 16|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freigabe_LL_Reg : 17|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freig_sSchl_K0 : 18|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freig_VM_EM_Stop : 19|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Wiederstart : 20|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Filt_MomAufbau : 21|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB + SG_ GE_HYB_nK0 : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Vector__XXX + SG_ GE_HYB_MomEingriff_EM : 32|6@1+ (0.5,0) [0|31.5] "Unit_NewtoMeter" LEH_MQB + SG_ GE_HYB_VZ_MomEingriff_EM : 38|1@1+ (1,0) [0|1] "" LEH_MQB + SG_ GE_HYB_Sportfaktor : 56|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB + SG_ GE_HYB_VM_akt_halten : 61|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_StartAnf : 62|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_VM_Startkontr : 63|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + +BO_ 299 GRA_ACC_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Typ468 : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Stufe_2 : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_ButtonTypeInfo : 28|2@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 960 Klemmen_Status_01: 4 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZAS_Kl_50 : 19|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 949 Klima_11: 8 Gateway_MQB + SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zonen : 4|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Comp_rev_rq : 8|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX + SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Comp_enable : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB + +BO_ 1625 Klimakomp_01: 8 Gateway_MQB + SG_ EKL_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EKL_Comp_SCI_com_stat : 16|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_output_stat : 18|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_main_stat : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EKL_Comp_ovld_stat : 21|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EKL_Comp_Inv_stat : 24|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_photo_temp_stat : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_photo_temp : 32|8@1+ (1,0) [0|254] "Unit_DegreCelsi" Vector__XXX + SG_ EKL_Comp_current : 40|8@1+ (0.1,0) [0|25.4] "Unit_Amper" Motor_Hybrid_MQB + SG_ EKL_Comp_rev_stat : 48|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX + +BO_ 2549088277 KN_Airbag_01: 8 Airbag_MQB + SG_ Airbag_01_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Airbag_01_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088380 KN_EMotor_01: 8 LEH_MQB + SG_ EMotor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EMotor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ EM_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088375 KN_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Getriebe_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ GE_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088379 KN_Hybrid_01: 8 BMS_MQB + SG_ Hybrid_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Hybrid_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ BMS_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088374 KN_MO_01: 8 Motor_Diesel_MQB + SG_ Motor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Motor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088284 KN_SAK: 8 SAK_MQB + SG_ SAK_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SAK_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ SAK_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 779 Kombi_01: 8 Gateway_MQB + SG_ KBI_ABS_Lampe : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_ESP_Lampe : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_BKL_Lampe : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Airbag_Lampe : 3|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_SILA_gueltig : 4|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_Lenkung_Lampe : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Vorglueh_System_Lampe : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ KBI_NV_in_Anzeige : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Kombi_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Anzeigestatus_ACC : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigestatus_GRA : 13|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Oeldruck_Schalter : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Tankwarnung : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_MFA_v_Einheit_01 : 17|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_im_Stellgliedtest : 18|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_Anzeigefehler_LDW : 19|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Variante_USA : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Oeldruckwarnung : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Handbremse : 23|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ KBI_V_Digital : 24|9@1+ (1,0) [0|511] "" Vector__XXX + SG_ KBI_PLA_in_Anzeige : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigefehler_NV : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigestatus_LIM : 35|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_angez_Geschw : 48|10@1+ (0.32,0) [0|325.12] "Unit_KiloMeterPerHour" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Einheit_Tacho : 58|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Konsistenz_ACC : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Fehler_Anzeige_ACC : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigefehler_SWA : 61|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1719 Kombi_02: 8 Gateway_MQB + SG_ KBI_Kilometerstand : 0|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Vector__XXX + SG_ KBI_Standzeit_02 : 20|17@1+ (1,0) [0|131068] "Unit_Secon" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Inhalt_Tank : 40|7@1+ (1,0) [0|125] "Unit_Liter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_FStatus_Tank : 47|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_QBit_Aussen_Temp_gef : 55|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Aussen_Temp_gef : 56|8@1+ (0.5,-50) [-50|75] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 982 Licht_hinten_01: 8 Gateway_MQB + SG_ Licht_hinten_01_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 134 LWI_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_Lenkradwinkel : 16|13@1+ (0.1,0) [0|800] "Unit_DegreOfArc" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" Vector__XXX + SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 263 Motor_04: 8 Motor_Diesel_MQB + SG_ MO_Istgang : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Sollgang : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Oeldruck : 16|8@1+ (0.04,0) [0|10] "Unit_Bar" Gateway_MQB + SG_ MO_Anzeigedrehz : 24|12@1+ (3,0) [0|12282] "Unit_MinutInver" Gateway_MQB + SG_ MO_Schaltempf_verfbar : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Ladedruck : 39|9@1+ (0.01,0) [0|5.1] "Unit_Bar" Gateway_MQB + SG_ MO_KVS : 48|15@1+ (1,0) [0|32767] "Unit_MicroLiter" Gateway_MQB + SG_ MO_KVS_Ueberlauf : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1600 Motor_07: 8 Motor_Diesel_MQB + SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB + SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB + +BO_ 1607 Motor_09: 8 Motor_Diesel_MQB + SG_ MO_ITM_Kuehlmittel_Temp : 0|8@1+ (0.75,-48) [-45.75|143.25] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_E85_Sensor : 8|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ SCR_Anz_Motorstarts : 12|4@1+ (1,0) [0|8] "" Gateway_MQB + SG_ SCR_Reichweite : 16|15@1+ (1,0) [0|32766] "" Gateway_MQB + SG_ SCR_Warnstufe_1 : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Warnstufe_2 : 33|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Text : 34|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ SCR_Akustik : 37|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Kraftstofffilter_Wasser : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Systemfehler : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Inducement_Strategie : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_CO2_Faktor : 44|12@1+ (1,0) [1|4094] "Unit_GramPerLiter" Gateway_MQB + +BO_ 167 Motor_11: 8 Motor_Diesel_MQB + SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB + SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 168 Motor_12: 8 Motor_Diesel_MQB + SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + +BO_ 958 Motor_14: 8 Motor_Diesel_MQB + SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" Gateway_MQB,LEH_MQB + SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB + SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Timeout_ESP : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Zylabschalt_01 : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1631 Motor_16: 8 Motor_Diesel_MQB + SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Gateway_MQB + SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Gateway_MQB + SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Steigung : 56|8@1+ (0.8,-101.6) [-101.6|101.6] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 812 Motor_17: 8 Motor_Diesel_MQB + SG_ MO_Prio_MAX_Wunschdrehzahl : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Prio_MIN_Wunschdrehzahl : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Luftpfad_aktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_v_Begrenz_Aktivierbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Drehzahlbeeinflussung : 16|8@1+ (0.39,0) [0|99.45] "Unit_PerCent" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_MIN_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_MAX_Wunschdrehzahl : 32|9@1+ (25,0) [0|12750] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Charisma_FahrPr : 41|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Charisma_Status : 45|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 1648 Motor_18: 8 Motor_Diesel_MQB + SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Eis_Offroad_LED : 45|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_E85_BS_Texte : 52|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 289 Motor_20: 8 Motor_Diesel_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|255] "" XXX + SG_ MO_Fahrpedalrohwert_01 : 12|8@1+ (0.4,0) [0.0|101.6] "Unit_PerCent" XXX + SG_ MO_QBit_Fahrpedalwerte_01 : 20|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Fahrpedalgradient : 21|8@1+ (25,0) [0|6350] "Unit_PerCentPerSecon" XXX + SG_ MO_Sig_Fahrpedalgradient : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_rel_Saugrohrdruck : 30|6@1+ (18,0) [0|1116] "Unit_MilliBar" XXX + SG_ MO_rel_Saugrohrdruck_gem_err : 36|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Moment_im_Leerlauf : 37|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Schubabschaltung : 38|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_StartStopp_StoppVorbereitung : 39|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" XXX + SG_ MO_Entkopplung_Sollschlupf : 48|7@1+ (20,0) [0|2480] "Unit_MinutInver" XXX + SG_ MO_temporaere_Fahrerabwesenheit : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ TSK_a_Soll_gradientenbegrenzt : 57|7@1+ (0.1,-7.2) [-7.2|5.4] "Unit_MeterPerSeconSquar" XXX + +BO_ 967 Motor_26: 8 Motor_Diesel_MQB + SG_ MO_HYB_Status_HV_Ladung : 8|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_1 : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_2 : 29|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_3 : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_4 : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_HYB_Text_5 : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_6 : 37|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_7 : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Gateway_MQB + SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Winterfahrprog : 52|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB + SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB + SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB + SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB + SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 157 Motor_Hybrid_01: 8 Motor_Hybrid_MQB + SG_ Motor_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB + SG_ Motor_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_IstStatusK0 : 12|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_max_ind_VM_Mom : 16|10@1+ (1,0) [0|1021] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Zielzustand : 26|3@1+ (1,0) [0|7] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Startmodus : 29|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_HYB_Startmodus_PQ3x : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Stoppmodus : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_VM_Mom_oE : 40|10@1+ (1,-100) [-100|922] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_VM_aktiv : 50|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Schaltverhinderung : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + +BO_ 811 Motor_Hybrid_02: 8 Motor_Hybrid_MQB + SG_ MO_HYB_E_Faktor : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Drehzahl_VM : 16|16@1+ (0.25,0) [0|16256] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_LowSpeedModus : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + +BO_ 2600468501 NMH_Airbag_01: 8 Airbag_MQB + SG_ NM_Airbag_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Airbag_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Airbag_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Airbag_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468604 NMH_EMotor_01: 8 LEH_MQB + SG_ NM_EMotor_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_EMotor_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_EMotor_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_EMotor_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468496 NMH_Gateway: 8 Gateway_MQB + SG_ NM_Gateway_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Gateway_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Gateway_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ACAN_Aktivitaet : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_FCAN_Aktivitaet : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_KCAN_Aktivitaet : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ICAN_Aktivitaet : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_DiagCAN_Aktivitaet : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ECAN_Aktivitaet : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Energie_LIN_Aktivi000 : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Bedien_LIN_Aktivitaet : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_EM_Aktivitaet : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_EM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Shutdown : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Spg_Messung : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Wakeup_Monitor : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468599 NMH_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ NM_Getriebe_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Getriebe_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Getriebe_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Getriebe_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_v_gr_0 : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Pos_Erk : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Umg_Bed : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468603 NMH_Hybrid_01: 8 BMS_MQB + SG_ NM_Hybrid_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Hybrid_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Hybrid_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Hybrid_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NL_Luefter : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468598 NMH_MO_01: 8 Motor_Diesel_MQB + SG_ NM_MO_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_MO_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_MO_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_MO_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_HV_Abschaltung : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_EKP_Vorlauf : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_STH_Betrieb : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Kuehlerluefter : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Diagnose : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_WFS : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_EEPROM : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Sonstige : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 913 OBD_01: 8 Motor_Diesel_MQB + SG_ OBD_Calc_Load_Val : 0|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Eng_Cool_Temp : 8|8@1+ (1,-40) [-40|215] "Unit_DegreCelsi" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Throttle_Pos : 16|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Load_Val : 24|16@1+ (0.39215686275,0) [0|25700] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Pedal_Pos : 40|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Kaltstart_Denominator : 59|1@1+ (1,0) [0|1] "" BMS_MQB,LEH_MQB + SG_ OBD_Minimum_Trip : 60|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Driving_Cycle : 61|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Warm_Up_Cycle : 62|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Normed_Trip : 63|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + +BO_ 1630 OBD_Tankgeber_01: 8 Gateway_MQB + SG_ OBD_TG_F_Status_1 : 0|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_2 : 4|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_3 : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_4 : 12|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_1 : 16|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_2 : 28|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_3 : 40|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_4 : 52|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1437 Remotestart_FFB: 8 Gateway_MQB + SG_ RSF_Tastencode_1 : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ RSF_Tastencode_2 : 8|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ RSF_Tastencode_Maske : 16|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + +BO_ 984 RGS_VL_01: 8 Airbag_MQB + SG_ RGS_VL_Texte : 12|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ RGS_VL_Charisma_FahrPr : 14|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ RGS_VL_Charisma_Status : 18|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ RGS_VL_aktiv : 21|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Sitz : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Schiebedach : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Fenster : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Warnblinken : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_Precrash_Basis : 32|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ RGS_VL_Precrash_Front : 40|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ RGS_VL_Precrash_Rear : 48|8@1+ (1,0) [0|255] "" Gateway_MQB + +BO_ 1528 SAK_01: 8 SAK_MQB + SG_ SAK_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ SAK_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 1313 STH_01: 8 Gateway_MQB + SG_ STH_Funk_ein : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Funk_aus : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Zusatzheizung : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_LED : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Pumpe_ein : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Geblaese : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_EKP_Anst : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Start_folgt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Ventiloeffnungszeit : 8|6@1+ (1,0) [0|63] "Unit_Minut" Vector__XXX + SG_ STH_Ventil_Status : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Waermeeintrag : 16|6@1+ (1,0) [0|63] "" Vector__XXX + SG_ STH_KVS : 24|13@1+ (1,0) [0|8191] "Unit_MilliLiter" Vector__XXX + SG_ STH_Fehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ STH_Heizleistung : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ STH_Wassertemp : 48|8@1+ (0.75,-40) [-40|142.25] "Unit_DegreCelsi" Vector__XXX + SG_ STH_Motorvorwaermung : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Servicemode : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_war_aktiv : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_KVS_Ueberlauf : 62|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1172 STS_01: 8 Gateway_MQB + SG_ STS_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STS_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STS_Car_not_under_theft : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Car_under_theft : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Anlassersperre : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Typencodierung : 16|5@1+ (1,0) [0|31] "" Vector__XXX + SG_ STS_LIN_aktiv : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Standlicht : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Fahrlicht : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Alarm_still : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Texte : 27|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ STS_Laderelais : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Summer : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Alarm_Blinker : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Notstart : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Signalhorn : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Leerlaufschaltung : 56|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1413 Systeminfo_01: 8 Gateway_MQB + SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" Vector__XXX + SG_ SI_Rollenmode : 6|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" SAK_MQB + SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" SAK_MQB + SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 288 TSK_06: 8 Motor_Diesel_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Radbremsmom : 12|12@1+ (8,0) [0|32760] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Status : 24|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_v_Begrenzung_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Standby_Anf_ESP : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Freig_WU : 29|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Freig_Verzoeg_Anf : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Limiter_ausgewaehlt : 31|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Wunsch_Uebersetz : 32|10@1+ (0.0245,0) [0.0245|25.0635] "" Gateway_MQB + SG_ TSK_Hauptschalter_GRA_ACC : 42|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB + SG_ TSK_SRBM_Anf_ASIL : 44|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB + SG_ TSK_ax_Getriebe_02 : 48|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Zwangszusch_ESP : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_zul_Regelabw : 58|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 798 TSK_07: 8 Motor_Diesel_MQB + SG_ TSK_07_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_AQ + SG_ TSK_07_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_AQ + SG_ TSK_Wunschgeschw : 12|10@1+ (0.32,0) [0.00|326.72] "Unit_KiloMeterPerHour" Gateway_MQB,Getriebe_AQ + SG_ TSK_Texte : 40|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB + SG_ TSK_Akustik : 45|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB + SG_ TSK_Texte_Primaeranz : 48|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB + SG_ TSK_Limiter_Fahrerinfo : 53|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB + SG_ TSK_Limiter_Anzeige : 55|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Fahrzeugstatus_GRA : 56|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Fahrzeugstatus_Limiter : 57|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ MO_Motorlaufwarnung : 58|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Status_Anzeige : 61|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB + +BO_ 346 TSK_08: 8 Motor_Diesel_MQB + SG_ TSK_08_CRC : 0|8@1+ (1,0) [0|255] "" Frontradar + SG_ TSK_08_BZ : 8|4@1+ (1,0) [0|15] "" Frontradar + SG_ MO_Anforderung_HMS : 12|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_Status_EA : 32|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_vMax_Fahrerassistenz : 40|9@1+ (1,0) [0|510] "" Frontradar + SG_ TSK_Einheit_vMax_Fahrerassistenz : 49|1@1+ (1,0) [0|1] "" Frontradar + SG_ TSK_Status_PLA : 50|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_aktives_System : 53|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_erhoehter_Fahrwiderstand : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_Anf_Antriebsmoment : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_Status_ARA : 58|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_Status_IPA : 61|3@1+ (1,0) [0|7] "" Vector__XXX + +BO_ 1716 VIN_01: 8 Gateway_MQB + SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB + SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + +BO_ 175 Waehlhebel_03: 4 Waehlhebel_MQB + SG_ WH_Status_Sperre : 0|3@1+ (1,0) [0|7] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Initialisierung : 3|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_SensorPos_roh : 4|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_03_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_SensorPos_roh_inv : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Testergebnis : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Test_Aktiv : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Status : 25|7@1+ (1,0) [0|127] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 916 WBA_03: 8 Getriebe_DQ_Hybrid_MQB + SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Gateway_MQB + +BO_ 1602 WIV_01: 8 Motor_Diesel_MQB + SG_ WIV_Verschleissindex : 0|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB + SG_ WIV_Russindex : 16|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB + SG_ WIV_t_min : 32|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB + SG_ WIV_t_max : 40|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB + SG_ WIV_W_min : 48|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB + SG_ WIV_W_max : 56|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB + +BO_ 294 HCA_01: 8 Frontsensorik + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [15|30] "Unit_Hertz" Vector__XXX + SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX + SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar + SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ HCA_01_Sendestatus : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Status_HCA : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX + SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar + +BO_ 159 LH_EPS_03: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX + SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX + SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 286 ESP_08: 8 Gateway_MQB + SG_ ESP_08_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_08_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ESP_ANB_CM_Rueckk_Umsetz : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Konsistenz_ACC_Botschaft : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Stillstandsphase_erschoepft : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_ZT_Rueckk_Umsetz : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Tuerkontakt_Fahrertuer : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Abrutschen_Stillstand : 18|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Fahrer_tritt_ZBR_Schw : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_QBit_v_ref : 41|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_v_ref_Fahrtrichtung : 42|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ ESC_Bremsdruckgradient : 44|8@1+ (10,0) [0|2500] "Unit_BarPerSecon" XXX + SG_ ESP_v_ref : 52|12@1+ (0.125,0) [0.000|511.500] "Unit_KiloMeterPerHour" XXX + +BO_ 919 LDW_02: 8 XXX + SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX + SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX + SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX + SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 780 ACC_02: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Wunschgeschw_02 : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Status_Prim_Anz : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Abstandsindex : 24|10@1+ (1,0) [1|1021] "" XXX + SG_ ACC_Akustik_02 : 34|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Warnung_Verkehrszeichen_1 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Gesetzte_Zeitluecke : 37|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Optischer_Fahrerhinweis : 40|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz : 41|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anzeige_Zeitluecke : 42|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Tachokranz : 43|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Display_Prio : 44|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Relevantes_Objekt : 46|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Texte_Primaeranz : 48|7@1+ (1,0) [0|127] "" XXX + SG_ ACC_Wunschgeschw_erreicht : 55|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz_unten : 60|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" XXX + +BO_ 302 ACC_07: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Anhalteweg : 12|11@1+ (0.01,0) [0|20.45] "Unit_Meter" XXX + SG_ ACC_Anhalten : 23|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Boost_Anf : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilauf_Anf : 25|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilauf_Info : 26|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Anforderung_HMS : 28|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Anfahren : 31|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Folgebeschl : 32|8@1+ (0.03,-4.6) [-4.6|2.99] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_Sollbeschleunigung_02 : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + +BO_ 264 Fahrwerk_01: 8 XXX + SG_ Fahrwerk_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrwerk_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 695 RCTA_01: 8 XXX + SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 783 SWA_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Anzeigen : 12|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Blindheit_erkannt : 16|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_rel_Nichtverf : 17|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_rel_Fehler : 18|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Sta_aktiv : 19|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Sta_passiv : 20|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_FT_RueckLED : 21|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Status : 22|2@1+ (1,0) [0|3] "" XXX + SG_ SWA_Standziele_li : 24|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Kolonne_li : 25|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Warnung_FS : 28|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Warnung_BFS : 29|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Kombitexte : 30|3@1+ (1,0) [0|7] "" XXX + SG_ SWA_Kolonne_mi : 33|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Standziele_re : 40|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Kolonne_re : 41|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX + SG_ HRE_Anzeigetexte : 44|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Gischtzaehler : 48|7@1+ (1,0) [0|100] "Unit_PerCent" XXX + SG_ Heckradar_Kombitexte : 56|5@1+ (1,0) [0|31] "" XXX + SG_ RCTA_Kombitexte : 61|3@1+ (1,0) [0|7] "" XXX + +BO_ 804 ACC_04: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Texte_Sekundaeranz : 12|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Texte_Zusatzanz : 16|6@1+ (1,0) [0|63] "" XXX + SG_ ACC_Status_Zusatzanz : 22|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Texte : 27|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Texte_braking_guard : 32|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Warnhinweis : 35|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Zeitluecke_Abstandswarner : 36|6@1+ (0.1,0) [0|6] "Unit_Secon" XXX + SG_ ACC_Abstand_Abstandswarner : 42|9@1+ (1,0) [0|508] "" XXX + SG_ ACC_Tempolimit : 51|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Charisma_FahrPr : 56|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Charisma_Status : 60|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Texte_Abstandswarner : 62|2@1+ (1,0) [0|3] "" XXX + +BO_ 917 LWR_AFS_01: 8 XXX + +BO_ 991 Gateway_76: 8 XXX + +BO_ 997 TSG_FT_02: 8 XXX + SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 1175 Parkhilfe_01: 8 XXX + +BO_ 427 ESP_33: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_AHW_aktiv : 12|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_AHW_nicht_verfuegbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_ANB_CM_aktiv : 16|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_ANB_CM_nicht_verfuegbar : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Warnruck_aktiv : 19|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Warnruck_nicht_verfuegbar : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Prefill_aktiv : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Prefill_nicht_verfuegbar : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_HBA_aktiv : 26|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESC_HBA_nicht_verfuegbar : 27|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESC_TSK_SRBM_Anf : 28|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_TSK_SRBM_nicht_verfuegbar : 29|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Verz_Reg_aktiv : 30|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Verz_Reg_nicht_verfuegbar : 34|1@1+ (1,0) [0|1] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Verz_Reg_TB_nicht_verfuegbar : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Verz_Reg_ZB_nicht_verfuegbar : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Bremslicht_unplausibel : 37|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Konsistenz_ACC : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_AWV : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_ARA : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_IPA : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_FCW : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_NV : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_RCTA : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_TSK : 45|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Konsistenz_vFGS : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_STA : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Fahrer_Bremsdruck_bestimmend : 48|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Konsistenz_EA : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_BFF : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_MKB : 51|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESC_Verz_ASIL_Verfuegbarkeit : 52|3@1+ (1,0) [0|7] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Pumpenanlauf_aktiv : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_AGW : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_KAS : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_PCF : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_FAS_VK : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Verz_Begrenzung : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_AWA : 61|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 418 ESP_15: 8 XXX + SG_ ESP_15_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_15_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 1122 PSD_04: 8 XXX + SG_ PSD_Object_Index : 0|6@1+ (1,0) [0|63] "" XXX + +BO_ 1123 PSD_05: 8 XXX + SG_ PSD_Current_Route_Index : 0|6@1+ (1,0) [0|63] "" XXX + SG_ Route_Distance_Remaining : 8|5@1+ (1,0) [0|31] "" XXX + +BO_ 1124 PSD_06: 8 XXX + +BO_ 988 Gateway_73: 8 XXX + SG_ UNKNOWN_1 : 15|2@0+ (1,0) [0|3] "" XXX + SG_ GE_Fahrstufe : 40|4@1+ (1,0) [0|15] "" XXX + SG_ EPB_Status : 53|3@1+ (1,0) [0|7] "" XXX + SG_ UNKNOWN_2 : 58|3@0+ (1,0) [0|7] "" XXX + +BO_ 792 Kamera_Status: 8 XXX + +BO_ 981 Licht_Anf_01: 8 Vector__XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_Kurvenlicht_links_Anf : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Kurvenlicht_rechts_Anf : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Standlicht_Anf : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Abblendlicht_Anf : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Fernlicht_Anf : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Nebellicht_Anf : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Parklicht_li_Anf : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Parklicht_re_Anf : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Nebelschluss_Ahg_Anf : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Nebelschluss_Fzg_Anf : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Schlusslicht_Anf : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Rueckfahrlicht_Anf : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Signaturlicht_Anf : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Umfeldleuchten_Anf : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Tagfahrlicht_Anf : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Regenlicht_Anf : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Autobahnlicht_Anf : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Touristen_Licht_Anf : 29|1@1+ (1,0) [0|1] "" Frontradar + SG_ BCM1_CH_aktiv : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_LH_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Gleitende_Leuchtw_Anf : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_GLW_Fernlicht_Anf : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Adaptive_Lichtvert_Anf : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_CH_LH_aktiv : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Allwetterlicht_Anf : 41|1@1+ (1,0) [0|1] "" Frontradar + +BO_ 1440 RLS_01: 8 XXX + +BO_ 870 Blinkmodi_02: 8 XXX + SG_ Hazard_Switch : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Comfort_Signal_Left : 23|1@1+ (1,0) [0|1] "" XXX + SG_ Comfort_Signal_Right : 24|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Turn_Exterior_Bulb_1 : 25|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Turn_Exterior_Bulb_1 : 26|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Turn_Exterior_Bulb_2 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Turn_Exterior_Bulb_2 : 28|1@1+ (1,0) [0|1] "" XXX + SG_ Fast_Send_Rate_Active : 37|1@1+ (1,0) [0|1] "" XXX + +BO_ 1385 HVEM_04: 8 XXX + +BO_ 1605 FLA_01: 8 XXX + +BO_ 1624 Licht_vorne_01: 8 XXX + +BO_ 1646 Klima_03: 8 XXX + +BO_ 1720 Kombi_03: 8 XXX + SG_ KBI_Reifenumfang : 0|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + SG_ KBI_Variante_USA : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Variante : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_BCmE_aktiv : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Sparhinweis_quittiert : 17|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Tankfuellstand_Prozent : 18|7@1+ (1,0) [0|100] "Unit_PerCent" XXX + SG_ KBI_Nachtanken_erkannt : 25|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Tankinhalt_hochaufl : 26|14@1+ (0.01,0) [0.00|163.81] "Unit_Liter" XXX + SG_ KBI_Max_Tankinhalt : 40|8@1+ (0.5,0) [0.0|126.5] "" XXX + SG_ KBI_Reifenumfang_Sekundaer : 48|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + +BO_ 391 Motor_EV_01: 8 Motor_MQB_BEV + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EV_Rekuperationsstufe : 12|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ HV_Bordnetz_aktiv : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Waehlpos : 16|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ MO_Fehler_NTKreis : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Fehler_Notabschaltung_Klima : 20|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ MO_KLE_FStatus : 22|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ MO_WH_Texte : 24|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ MO_Drehzahl_VM : 32|16@1+ (0.25,0) [0.00|16383.00] "Unit_MinutInver" XXX + SG_ HV_Bordnetz_Fehler : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Tankbereitschaft_Status : 49|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ MO_Tankklappensteuerung : 52|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ MO_HVEM_Eskalation : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_HVEM_MaxLeistung : 55|9@1+ (50,0) [0|25450] "Unit_Watt" XXX + +CM_ SG_ 134 LWI_Lenkradwinkel "Steering angle WITH variable ratio effect included"; +CM_ SG_ 159 EPS_HCA_Status "Status of Heading Control Assist feature"; +CM_ SG_ 159 EPS_Lenkmoment "Steering input by driver, torque"; +CM_ SG_ 159 EPS_VZ_Lenkmoment "Steering input by driver, direction"; +CM_ SG_ 159 EPS_Berechneter_LW "Raw steering angle, degrees"; +CM_ SG_ 159 EPS_VZ_BLW "Raw steering angle, direction"; +CM_ SG_ 173 COUNTER_DISABLED "Message not renamed to COUNTER because J533 rate-limiting makes it look like messages are being lost"; +CM_ SG_ 294 HCA_01_Vib_Freq "Frequenz der Lenkradvibration"; +CM_ SG_ 294 HCA_01_LM_Offset "Von HCA angefordertes Lenkmoment (Betrag)"; +CM_ SG_ 294 EA_ACC_Sollstatus "Status-Anforderung ACC von Emergency Alert. Statuswechsel bei Flanke. Solange Wert=1, wird EA_ACC_Wunschgeschwindigkeit übernommen. Wert=2 führt zu Zustand ¿ACC_GRA_passiv¿"; +CM_ SG_ 294 EA_Ruckprofil "Emergency Alert Anforderung an ESP, welcher Ruck verwendet werden soll. Eine Umsetzung der Ruckanforderung im ESP erfolgt nur mit gesetztem Bit 'EA_Ruckfreigabe'."; +CM_ SG_ 294 HCA_01_Sendestatus "Gibt den Sendestatus der HCA_01 an (notwendig für IL-Unterstützung)"; +CM_ SG_ 294 HCA_01_LM_OffSign "Vorzeichen des HCA-Lenkmoments"; +CM_ SG_ 294 HCA_01_Status_HCA "Statusinformation vom HCA und Manoevrierassistent für Handshakemechanismus mit der Lenkung"; +CM_ SG_ 294 HCA_01_Vib_Amp "Momentenamplitude der Lenkradvibration"; +CM_ SG_ 294 EA_Ruckfreigabe "Emergency Alert Freigabit für die Warnruck-Anforderung an das ESP"; +CM_ SG_ 294 EA_ACC_Wunschgeschwindigkeit "Emergency Alert Anforderung neue Wunschgeschwindigkeit"; +CM_ SG_ 302 ACC_Hold_Request "Active request for ABS brake hold in ACC_Hold_Type"; +CM_ SG_ 302 ACC_Boost_Request "Hybrid engine start related"; +CM_ SG_ 302 ACC_Freewheel_Request "Active request for DSG sailing/coasting in ACC_Freewheel_Type"; +CM_ SG_ 302 ACC_Hold_Release "Request to ABS to release brake hold"; +CM_ SG_ 302 ACC_Accel_Secondary "Target acceleration of the secondary controller"; +CM_ SG_ 302 ACC_Accel_TSK "Mirror of request to TSK to implement a target acceleration"; +CM_ SG_ 870 Hazard_Switch "Four-way flashers active"; +CM_ SG_ 870 Comfort_Signal_Left "Comfort turn signal active, left"; +CM_ SG_ 870 Comfort_Signal_Right "Comfort turn signal active, right"; +CM_ SG_ 870 Left_Turn_Exterior_Bulb_1 "Probably front"; +CM_ SG_ 870 Right_Turn_Exterior_Bulb_1 "Probably front"; +CM_ SG_ 870 Left_Turn_Exterior_Bulb_2 "Probably rear"; +CM_ SG_ 870 Right_Turn_Exterior_Bulb_2 "Probably rear"; +CM_ SG_ 870 Fast_Send_Rate_Active "CAN message send rate"; +CM_ SG_ 919 LDW_DLC "Probable DLC (distance to line crossing)"; +CM_ SG_ 919 LDW_TLC "Probable TLC (time to line crossing)"; +CM_ SG_ 919 LDW_Unknown "Might be a steering pressed / driver active flag"; +CM_ SG_ 919 Alert_Message "Static table of alert messages to be invoked in the instrument cluster, some with or without beeps, 0 = no current message"; +CM_ SG_ 919 LDW_Direction "Left/right indicator for DLC and TLC"; +CM_ SG_ 919 Right_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; +CM_ SG_ 919 Left_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; +CM_ SG_ 919 Kombi_Lamp_Orange "Enables orange LDW light in instrument cluster"; +CM_ SG_ 919 Kombi_Lamp_Green "Enables green LDW light in instrument cluster"; +CM_ SG_ 780 Folgefahrt "Following another vehicle"; +CM_ SG_ 780 SetAbstand "Set following distance"; +CM_ SG_ 780 Abstand "Following distance"; +CM_ SG_ 780 SetSpeed "ACC set speed"; +CM_ SG_ 391 MO_Waehlpos "Traditional PRND plus B-mode aggressive regen, B-mode mapped to Drive"; +CM_ SG_ 679 ACC_ADAPTIVE "TSK_06.TSK_Limiter_ausgewaehlt seems to take precedence"; +CM_ SG_ 960 ZAS_Kl_15 "Indicates ignition on"; +CM_ SG_ 1720 KBI_BCmE_aktiv "Anzeige BCmE aktiv (BCmE-Screen oder Einsparhinweis in der Anzeige)"; +CM_ SG_ 1720 KBI_Max_Tankinhalt "Mitteilung des maximalen Tankinhalts an das Reichweitenmodul"; +CM_ SG_ 1720 KBI_Nachtanken_erkannt "Statusinformation Nachtankmodus"; +CM_ SG_ 1720 KBI_Reifenumfang "Mittlerer Radumfang aus der K-Zahl gerechnet in Millimeter. Byte 2 Bit 5,4 reserviert, Byte 2 Bit 3..0 und Byte 1 Bit 7..0; Wertebereich 0..4096 mm +"; +CM_ SG_ 1720 KBI_Reifenumfang_Sekundaer "Fahrzeuge mit unterschiedlichen Reifenumfängen Vorderachse / Hinterachse: + +Primärachse: KBI_Reifenumfang +Sekundärachse: KBI_Reifenumfang_Sekundaer +"; +CM_ SG_ 1720 KBI_Sparhinweis_quittiert "angezeigter Sparhinweis ist quittiert. Signal wird nach zwei Sendebotschaften wieder auf '0' gesetzt."; +CM_ SG_ 1720 KBI_Tankfuellstand_Prozent "Tankfüllstand in %"; +CM_ SG_ 1720 KBI_Tankinhalt_hochaufl "angezeigter Tankinhalt hochauflösend zur Restreichweitenberechnung"; +CM_ SG_ 1720 KBI_Variante "Zeigt an ob es sich um ein konventionelles Zeiger-Kombiinstrument handelt oder um eine Volldisplay-Kombiinstrument"; +CM_ SG_ 1720 KBI_Variante_USA "In diesem Signal wird die HW-Variante des Kombis ausgegeben, ACC plausibilisiert auf dieses Signal hin seine US-Codierung"; + + +VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active" 8 "preempted" ; +VAL_ 173 GE_Fahrstufe 5 "P" 6 "R" 7 "N" 8 "D" 9 "S" 10 "E" 13 "T" 14 "T" ; +VAL_ 288 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault" ; +VAL_ 288 TSK_v_Begrenzung_aktiv 0 "inaktiv" 1 "aktiv" ; +VAL_ 288 TSK_Standby_Anf_ESP 0 "keine_Standby_Anforderung" 1 "Standby_Anforderung" ; +VAL_ 288 TSK_Freig_WU 0 "TSK_Uebersetzungswunsch_nicht_freigegeben" 1 "TSK_Uebersetzungswunsch_freigegeben" ; +VAL_ 288 TSK_Freig_Verzoeg_Anf 0 "Verzoegerungsanforderung_nicht_freigegeben" 1 "Verzoegerungsanforderung_freigegeben" ; +VAL_ 288 TSK_Limiter_ausgewaehlt 0 "kein_Limiter_ausgewaehlt" 1 "Limiter_ausgewaehlt" ; +VAL_ 288 TSK_Wunsch_Uebersetz 0 "Init" ; +VAL_ 288 TSK_Hauptschalter_GRA_ACC 0 "Init" 1 "Aus" 2 "Ein" 3 "Fehler" ; +VAL_ 288 TSK_ax_Getriebe_02 511 "Neutralwert" ; +VAL_ 288 TSK_Zwangszusch_ESP 0 "keine_ESP_ASR_Beeinflussung" 1 "ESP_ASR_Beeinflussung" ; +VAL_ 294 EA_ACC_Sollstatus 0 "Init" 1 "ACC_aktivieren" 2 "ACC_deaktivieren" ; +VAL_ 294 EA_Ruckprofil 0 "Init" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7" ; +VAL_ 294 HCA_01_Sendestatus 0 "HCA_sendet_mit_1000ms" 1 "HCA_sendet_mit_20ms" ; +VAL_ 294 HCA_01_LM_OffSign 0 "positives_Vorzeichen" 1 "negatives_Vorzeichen" ; +VAL_ 294 HCA_01_Status_HCA 0 "deaktiviert" 1 "reserviert" 2 "reserviert" 3 "funktionsbereit" 4 "reserviert" 5 "HCA_Momenteneingriff_1" 6 "MA_Aktiv" 7 "HCA_Momenteneingriff_2" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "reserviert" 15 "reserviert" ; +VAL_ 294 EA_Ruckfreigabe 0 "keine_Freigabe" 1 "Freigabe" ; +VAL_ 294 EA_ACC_Wunschgeschwindigkeit 1023 "Init" ; +VAL_ 346 MO_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; +VAL_ 346 TSK_Status_EA 0 "Aus" 1 "Init_oder_nicht_verbaut" 3 "Aktiv" 4 "Uebertreten" 5 "Abschaltung_laeuft" 6 "Reversibel_aus" 7 "Irreversibel_Aus" ; +VAL_ 346 TSK_vMax_Fahrerassistenz 511 "Init_ungueltig_keine_Beschraenkung" ; +VAL_ 346 TSK_Einheit_vMax_Fahrerassistenz 0 "kmh" 1 "mph" ; +VAL_ 346 TSK_Status_PLA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; +VAL_ 346 TSK_aktives_System 0 "keine_Funktion_aktiv" 1 "GRA_ACC" 2 "ARA" 3 "Speedlimiter" 4 "IPA" 5 "PLA" 6 "PEA_Ausrollassistent" 7 "EA" ; +VAL_ 346 TSK_erhoehter_Fahrwiderstand 0 "kein_erhoehter_Fahrwiderstand" 1 "erhoehter_Fahrwiderstand" ; +VAL_ 346 TSK_Anf_Antriebsmoment 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; +VAL_ 346 TSK_Status_ARA 0 "Aus" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; +VAL_ 346 TSK_Status_IPA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laueft" 6 "reversibel_aus" 7 "Fehler" ; +VAL_ 798 TSK_Wunschgeschw 1022 "keine_Anzeige" 1023 "kein_Wert_im_Speicher" ; +VAL_ 798 TSK_Texte 0 "kein_Text" 1 "GRA_Modus_ausgewaehlt" 2 "ACC_Modus_ausgewaehlt" 3 "Lim_Modus_ausgewaehlt" 4 "Lim_nicht_verfuegbar_ESC_passiv" 5 "GRA_nicht_verfuegbar_ESC_passiv" 6 "Lim_nicht_verfuegbar_Charisma" 7 "GRA_nicht_verfuegbar_Charisma" 8 "Lim_nicht_verfuegbar_HDC" 9 "GRA_nicht_verfuegbar_HDC" ; +VAL_ 798 TSK_Akustik 0 "keine_Akustik" 1 "einzelner_Warnton" 2 "dauerhafter_Warnton" ; +VAL_ 798 TSK_Texte_Primaeranz 0 "keine_Anzeige" 1 "GRA_Symbol_passiv_xxx_kmh_mph" 2 "GRA_Symbol_aktiv_xxx_kmh_mph" 3 "Bremse_ueberhitzt" 4 "Limiter_Modus_aktiviert" 5 "GRA_Modus_aktiviert" 6 "ACC_Modus_aktiviert" 7 "Opt_Geschwindigkeitswarnung" 8 "Opt_und_akustische_GeschwWarnung" 9 "Opt_GeschwWarnung_dauerhaft_mit_einmal_Akustik" 10 "Limiter_passiv_mit_Akustik" 11 "Limiter_Fehler_mit_Akustik" 12 "Limiter_Symbol_passiv_xxx_kmh_mph" 13 "Limiter_Symbol_aktiv_xxx_kmh_mph" 14 "Popup_Geschw_zu_hoch__Resume_unzulaessig" ; +VAL_ 798 TSK_Limiter_Fahrerinfo 0 "keine_Info" 1 "Limit_erreicht" 2 "Ueberschritten" 3 "Vom_Fahrer_Ueberstimmt" ; +VAL_ 798 TSK_Limiter_Anzeige 0 "Display_Anzeige_GRA_ACC" 1 "Display_Anzeige_Limiter" ; +VAL_ 798 TSK_Fahrzeugstatus_GRA 0 "GRA_verfuegbar" 1 "GRA_nicht_verfuegbar" ; +VAL_ 798 TSK_Fahrzeugstatus_Limiter 0 "Limiter_verfuegbar" 1 "Limiter_nicht_verfuegbar" ; +VAL_ 798 MO_Motorlaufwarnung 0 "keine_Anzeige" 1 "Anforderung_Motorlaufwarnung" ; +VAL_ 798 TSK_Status_Anzeige 0 "Hauptschalter_aus" 1 "Init" 2 "passiv" 3 "aktiv" 4 "Uebertreten" 5 "Limitiierung_aktiv" 6 "reversibel_aus" 7 "irreversibel_aus" ; +VAL_ 780 ACC_Wunschgeschw_02 1023 "keine_Anzeige" ; +VAL_ 780 ACC_Status_Prim_Anz 0 "Symbol nicht beleuchtet" 1 "Farbe 1 (typisch 'gruen')" 2 "Farbe 2 (typisch 'rot')" 3 "Farbe 3 (typisch 'gelb')" ; +VAL_ 780 ACC_Abstandsindex 0 "Sonderanzeige_graue_Fahrbahn" 1022 "Sonderanzeige_graue_Fahrbahn" 1023 "Sonderanzeige_Fahrbahn_mit_gruenem_roten_Bereich" ; +VAL_ 780 ACC_Akustik_02 0 "keine_Akustik" 1 "hochpriore_Akustik" 2 "niederpriore_Akustik" 3 "hochpriore_Dauerakustik" ; +VAL_ 780 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung" ; +VAL_ 780 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert" ; +VAL_ 780 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN" ; +VAL_ 780 ACC_Typ_Tachokranz 0 "Tachokranz_lang" 1 "Tachokranz_kurz" ; +VAL_ 780 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert" ; +VAL_ 780 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; +VAL_ 780 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio" ; +VAL_ 780 ACC_Relevantes_Objekt 0 "Symbol_nicht_beleuchtet" 1 "Farbe_1_typisch_gruen" 2 "Farbe_2_typisch_rot" 3 "Farbe_3_typisch_gelb" ; +VAL_ 780 ACC_Texte_Primaeranz 0 "keine Anzeige" 1 "ACC nicht verfuegbar !" 2 "Auto_Auto_ _ _" 3 "Auto_ _Auto_ _" 4 "Auto_ _ _Auto_" 5 "Auto_ _ _ _Auto" 6 "Auto_Auto_ _ _ Gong (durchgestrichen)" 7 "Auto_ _Auto_ _ Gong (durchgestrichen)" 8 "Auto_ _ _Auto_ Gong (durchgestrichen)" 9 "Auto_ _ _ _Auto Gong (durchgestrichen)" 10 "ACC bereit" 11 "keine Abstandsregelung" 12 "ACC Sensor Sicht !" 13 "ACC nicht verfuegbar" 14 "o o o" 15 "Hochschalten" 16 "ESP Eingriff" 17 "Herunterschalten" 18 "Parkbremse !" 19 "Geschwindigkeitsgrenze" 20 "Waehlhebelposition !" 21 "VDA ACC-Symbol YYY km/h / mph" 22 "Tempolimit XXX km/h / mph" 23 "Kurve XXX km/h / mph" 24 "ACC Abschaltung" 25 "Symbol 'Eieruhr'" 26 "!" 27 "--- km/h / mph" 28 "XXX km/h / mph (Schriftart 2)" 29 "Lenkradwinkel" 30 "Anfahren bestaetigen" 31 "Fahrzeug verloren" 32 "Im Stand nicht moeglich" 33 "Ungueltiger Anfahrbefehl" 34 "Tuer offen !" 35 "Fahrer Gurtschloss offen !" 36 "Schalthebelposition !" 37 "Drehzahl !" 38 "Kurvenassistent aus" 39 "Tempolimit aus" 40 "Abbiegeassistent" 41 "Ortsanfang XXX km/h / mph" 42 "Ortsende XXX km/h / mph" 43 "Tempolimit Ende XXX km/h / mph" 44 "HDC aktiv" 45 "braking guard Bremsruck" 46 "braking guard aus" 47 "braking guard aus" 48 "Uebernehmen !" 49 "Steigung zu gross" 50 "Stehendes Objekt voraus" 51 "SET / 'GRA Symbol'___xxx km/h / mph" 52 "SET / 'GRA Symbol' xxx km/h / mph" 53 "ACC aus" 54 "ACC startet" 55 "ACC reinigen" 56 "ACC Fehler" 57 "ACC haelt an !" 58 "Bremse betaetigen !" 59 "Kupplung betaetigt" 60 "LIM AUS" 61 "LIM AKTIV" 62 "LIM PASSIV" 63 "LIM FEHLER" 64 "Bremse ueberhitzt !" 65 "Bremse haelt !" 66 "ESP PASSIV !" 67 "ACC_anfahrbereit" 68 "Gang_einlegen" 69 "Rechtsueberholen_verhindert" 70 "Linksueberholen_verhindert" 71 "Achtung_Geschwindigkeitsueberschreitung" 72 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar" ; +VAL_ 780 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht" ; +VAL_ 780 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; +VAL_ 780 ACC_Status_Anzeige 0 "ACC_GRA_Hauptschalter_aus" 1 "ACC_in_Init_nicht_bei_GRA" 2 "ACC_GRA_passiv" 3 "ACC_GRA_aktiv" 4 "ACC_GRA_im_Hintergrund_uebertreten" 5 "ACC_GRA_Abschaltreaktion" 6 "ACC_reversibel_aus_nicht_bei_GRA" 7 "ACC_GRA_irreversibel_aus" ; +VAL_ 804 ACC_Texte_Sekundaeranz 0 "keine_Anzeige" 1 "Zielfahrzeug_erkannt" 2 "Rechtskurve_voraus" 3 "Linkskurve_voraus" 4 "Tempolimit_voraus" 5 "Sensorsicht" 6 "Anfahrbereit" 7 "Tempolimit_erkannt" 8 "Kreuzung_voraus" 9 "Kreisverkehr_voraus" ; +VAL_ 804 ACC_Texte_Zusatzanz 0 "keine_Anzeige" 1 "ACC_AUS" 2 "ACC_BEREIT" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_1__dyn" 10 "DISTANZ_2__dyn" 11 "DISTANZ_3__dyn" 12 "DISTANZ_4__dyn" 13 "DISTANZ_1__stand" 14 "DISTANZ_2__stand" 15 "DISTANZ_3__stand" 16 "DISTANZ_4__stand" 17 "DISTANZ_1__comf" 18 "DISTANZ_2__comf" 19 "DISTANZ_3__comf" 20 "DISTANZ_4__comf" 21 "DISTANZ_1__efficiency" 22 "DISTANZ_2__efficiency" 23 "DISTANZ_3__efficiency" 24 "DISTANZ_4__efficiency" 25 "DISTANZ_5" 26 "DISTANZ_5__dyn" 27 "DISTANZ_5__stand" 28 "DISTANZ_5__comf" 29 "DISTANZ_5__efficiency" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanz_Warnung_aktiviert" ; +VAL_ 804 ACC_Status_Zusatzanz 0 "keine Anzeige" 1 "Bild 1 (Fzg. Silhouette, typ. farblos)" 2 "Bild 2 (Fzg. Farbe 1, typ. grau)" 3 "Bild 3 (Fzg. Farbe 2, typ. rot)" 4 "Bild 4 (Symbol 1 ACCplus, typ. Doppelfzg. gelb)" 5 "Bild 5 (Symbol 2 ACCplus, typ. Doppelfzg. grau)" 6 "Bild 6 (Fzg. Farbe 2, typ. rot) mit Priorität im Kombi (Pop-up)" ; +VAL_ 804 ACC_Texte 0 "keine_Anzeige" 1 "ACC_nicht_verfuegbar" 2 "ACC_und_AWV_nicht_verfuegbar" 3 "ACC_keine_Sensorsicht" 4 "ACC_und_AWV_keine_Sensorsicht" 5 "ACC_Steigung_zu_gross" 6 "ACC_nur_in_Fahrstufe_verfuegbar" 7 "ACC_Parkbremse_betaetigt" 8 "ACC_ESP_Eingriff" 9 "ACC_Bitte_uebernehmen" 10 "ACC_HDC_betaetigt" 11 "ACC_Geschwindigkeitsgrenze" 12 "ACC_Schalthebelposition" 13 "ACC_Drehzahl" 14 "ACC_Kupplung_betaetigt" 15 "ACC_Aktivierverhinderung" 16 "ACC_Abschaltung" 17 "ACC_Parkassistent_aktiv" 18 "ACC_ESC_aus" 19 "ACC_Charisma_Modus_inkompatibel" 20 "ACC_Stehendes_Objekt_voraus" 21 "ACA_Fahreruebernahme" 22 "ACA_Querfuehrung_nicht_verfuegbar" ; +VAL_ 804 ACC_Texte_braking_guard 0 "keine_Anzeige" 1 "AWV_aus" 2 "AWV_Warnung" 3 "AWV_Demomodus" 4 "AWV_Systemstoerung" 5 "AWV_Eingriff" 6 "AWV_Vorwarnung_aus" 7 "AWV_keine_Sensorsicht" ; +VAL_ 804 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis" ; +VAL_ 804 ACC_Zeitluecke_Abstandswarner 61 "Freifahrt" 62 "nicht_definiert" 63 "keine_Anzeige" ; +VAL_ 804 ACC_Abstand_Abstandswarner 509 "Freifahrt" 510 "nicht_definiert" 511 "keine_Anzeige" ; +VAL_ 804 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw" ; +VAL_ 804 ACC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15" ; +VAL_ 804 ACC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch" ; +VAL_ 804 ACC_Texte_Abstandswarner 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "zurzeit_eingeschraenkt" ; +VAL_ 290 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert" ; +VAL_ 290 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert" ; +VAL_ 290 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler" ; +VAL_ 290 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; +VAL_ 290 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; +VAL_ 290 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; +VAL_ 290 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert" ; +VAL_ 290 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System" ; +VAL_ 290 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv" ; +VAL_ 302 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler" ; +VAL_ 302 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; +VAL_ 302 ACC_Freilauf_Anf 0 "keine Freilauf-Anforderung" 1 "Freilauf-Anforderung" ; +VAL_ 302 ACC_Freilauf_Info 0 "Freilauf_freigegeben" 1 "kein_Uebergang_in_Freilauf_zulaessig" 2 "Freilauf_nicht_freigegeben" 3 "Freilauf_Anforderung" ; +VAL_ 302 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; +VAL_ 302 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; +VAL_ 302 ACC_Folgebeschl 254 "Neutralwert" ; +VAL_ 302 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; +VAL_ 279 AWV1_Anf_Prefill 0 "Prefill_nicht_aktivieren" 1 "Prefill_aktivieren" ; +VAL_ 279 ANB_CM_Info 0 "Standard" 1 "Erweitert" ; +VAL_ 279 AWV2_Freigabe 0 "keine_Freigabe" 1 "Freigabe" ; +VAL_ 279 AWV1_HBA_Param 0 "Defaultparametersatz" 1 "Parametersatz_mit_leicht_erhoehter_Empfindlichkeit" 2 "Parametersatz_mit_erhoehter_Empfindlichkeit" 3 "Parametersatz_mit_hoechster_Empfindlichkeit" ; +VAL_ 279 AWV2_Priowarnung 0 "Anzeige_Verlassen_der_Fahrspur_wird_nicht_unterdrueckt" 1 "Anzeige_Verlassen_der_Fahrspur_wird_unterdrueckt" ; +VAL_ 279 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; +VAL_ 279 ANB_Info_Teilbremsung 0 "Auspraegung_Standard" 1 "Auspraegung_Erweitert" ; +VAL_ 279 ANB_Notfallblinken 0 "kein_ANB_Notfallblinken" 1 "Notfallblinken_ANB_angefordert" ; +VAL_ 279 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben" ; +VAL_ 279 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben" ; +VAL_ 279 AWV_Vorstufe 0 "keine_Notbremsung_erwartet" 1 "Notbremsung_in_Kuerze" ; +VAL_ 279 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten" ; +VAL_ 279 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich" ; +VAL_ 279 PCF_Freigabe 0 "keine_Freigabe_PreCrashFront" 1 "Freigabe_PreCrashFront" ; +VAL_ 279 AWV1_ECD_Anlauf 0 "ECD_Anlauf_nicht_aktivieren" 1 "ECD_Anlauf_aktivieren" ; +VAL_ 279 PCF_Time_to_collision 255 "Objektstatus=0x0__oder_berechneter_TTC_Wert_groesser_als_Maximalwert" ; +VAL_ 679 ACC_Regelgeschw 1023 "keine_Anzeige" ; +VAL_ 679 ACC_Einheit_maxSetzgeschw 0 "kmh" 1 "mph" ; +VAL_ 679 ACC_maxSetzgeschw 511 "Init_Neutralwert" ; +VAL_ 679 ACC_minRegelgeschw 255 "keine_Anzeige" ; +VAL_ 679 ACC_maxRegelgeschw 255 "keine_Anzeige" ; +VAL_ 679 ACC_Tempolimitassistent 0 "keine_Anzeige" 1 "Tempolimitassistent_aktiv" 2 "Tempolimitassistent_nicht_verfuegbar" 3 "Tempolimitassistent_Fahreruebernahme" ; +VAL_ 679 ACC_Kurvenassistent 0 "keine_Anzeige" 1 "Kreuzung" 2 "Rechtskurve" 3 "Linkskurve" 4 "Kreisverkehr" ; +VAL_ 679 ACC_RUV 0 "keine_Anzeige" 1 "RUV_aktiv_Rechtsverkehr" 2 "RUV_aktiv_Linksverkehr" ; +VAL_ 679 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; +VAL_ 679 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; +VAL_ 679 ACC_ENG_Texte 0 "keine_Anzeige" 1 "keine_Laenderverfuegbarkeit" 2 "nicht_verfuegbar" 3 "Geschwindigkeitsgrenze" ; +VAL_ 679 ACC_ADAPTIVE 1 "adaptive" 2 "non-adaptive" ; +VAL_ 681 AWV_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung" ; +VAL_ 681 AWV_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "nicht_definiert" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt" ; +VAL_ 681 AWV_Status_Anzeige 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" ; +VAL_ 681 AWV_Einstellung_System_FSG 0 "deaktiviert" 1 "aktiviert" ; +VAL_ 681 AWV_Einstellung_Warnung_FSG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein" ; +VAL_ 681 AWV_Warnlevel 0 "keine_Gefaehrdung" 63 "max_Gefaehrdung" ; +VAL_ 391 MO_Waehlpos 2 "P" 3 "R" 4 "N" 5 "D" 6 "D" ; +VAL_ 391 EV_Rekuperationsstufe 0 "default" 1 "B1" 2 "B2" 3 "B3" ; +VAL_ 870 Fast_Send_Rate_Active 0 "1 Hz" 1 "50 Hz" ; +VAL_ 988 EPB_Status 0 "offen" 1 "geschlossen_Parken" 2 "teilgespannt_Halten" 3 "im_Lauf_oeffnen" 4 "im_Lauf_schliessen" 5 "tbd" 6 "Init" 7 "unbekannt"; +VAL_ 988 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; +VAL_ 1720 KBI_Variante_USA 0 "keine USA-Variante" 1 "USA-Variante" ; +VAL_ 1720 KBI_Variante 0 "Zeiger Kombiinstrument" 1 "Volldisplay Kombiinstrument" ; +VAL_ 1720 KBI_BCmE_aktiv 0 "Anzeige_nicht_aktiv" 1 "Anzeige_aktiv" ; +VAL_ 1720 KBI_Sparhinweis_quittiert 0 "nicht_quittiert" 1 "quittiert" ; +VAL_ 1720 KBI_Tankfuellstand_Prozent 126 "Init" 127 "Fehler" ; +VAL_ 1720 KBI_Nachtanken_erkannt 0 "Geberbetrieb" 1 "Nachtankmodus" ; +VAL_ 1720 KBI_Tankinhalt_hochaufl 16382 "Init" 16383 "Fehler" ; +VAL_ 1720 KBI_Max_Tankinhalt 254 "Init" 255 "Fehler" ; diff --git a/opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc b/opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc new file mode 100644 index 0000000000..500f7c5367 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/vw_mqb_2010.dbc @@ -0,0 +1,1773 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + BO_TX_BU_ + BA_DEF_REL_ + BA_REL_ + BA_DEF_DEF_REL_ + BU_SG_REL_ + BU_EV_REL_ + BU_BO_REL_ + SG_MUL_VAL_ + +BS_: + +BU_: Airbag_MQB BAP_Tester_MQB BMS_MQB Datenlogger_MQB Gateway_MQB Getriebe_DQ_Hybrid_MQB Getriebe_DQ_MQB LEH_MQB Motor_Diesel_MQB Motor_Hybrid_MQB Motor_Otto_MQB SAK_MQB Waehlhebel_MQB Vector__XXX l c i XXX + + +BO_ 290 ACC_06: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_DynErhoehung : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 279 ACC_10: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AWV1_Anf_Prefill : 16|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_CM_Info : 17|1@1+ (1,0) [0|1] "" XXX + SG_ AWV2_Freigabe : 18|1@1+ (1,0) [0|1] "" XXX + SG_ AWV1_HBA_Param : 19|2@1+ (1,0) [0|3] "" XXX + SG_ AWV2_Ruckprofil : 21|3@1+ (1,0) [0|7] "" XXX + SG_ AWV2_Priowarnung : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_CM_Anforderung : 25|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Info_Teilbremsung : 26|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Notfallblinken : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Teilbremsung_Freigabe : 28|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Zielbrems_Teilbrems_Verz_Anf : 29|10@1+ (0.024,-20.016) [-20.016|4.536] "Unit_MeterPerSeconSquar" XXX + SG_ ANB_Zielbremsung_Freigabe : 39|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Vorstufe : 40|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Halten : 41|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_CityANB_Auspraegung : 42|1@1+ (1,0) [0|1] "" XXX + SG_ PCF_Freigabe : 43|1@1+ (1,0) [0|1] "" XXX + SG_ AWV1_ECD_Anlauf : 44|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_AWA_VZ_Anf_Lenkmomoffset : 46|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ AWV_AWA_Anf_Lenkmomoffset : 47|9@1+ (0.01,0) [0.00|5.11] "Unit_NewtoMeter" XXX + SG_ PCF_Time_to_collision : 56|8@1+ (0.01,0) [0|2.5] "Unit_Secon" XXX + +BO_ 679 ACC_13: 8 XXX + SG_ ACC_Regelgeschw : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Einheit_maxSetzgeschw : 22|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_maxSetzgeschw : 23|9@1+ (1,0) [0|510] "" XXX + SG_ ACC_minRegelgeschw : 32|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX + SG_ ACC_maxRegelgeschw : 40|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Tempolimitassistent : 48|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Kurvenassistent : 52|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_RUV : 56|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Tachokranz : 58|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz_unten : 59|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_ENG_Texte : 60|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_ADAPTIVE : 63|2@0+ (1,0) [0|3] "" XXX + +BO_ 681 ACC_15: 8 XXX + SG_ AWV_Warnung : 16|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Texte : 24|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Status_Anzeige : 32|2@1+ (1,0) [0|3] "" XXX + SG_ AWV_Einstellung_System_FSG : 34|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Einstellung_Warnung_FSG : 36|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Warnlevel : 58|6@1+ (1,0) [0|63] "" XXX + +BO_ 64 Airbag_01: 8 Airbag_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_PAO_Leuchte_Anf : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Deaktivierung_HV : 42|3@1+ (1.0,0.0) [0.0|7] "" BMS,Gateway_MQB,LEH_MQB,Motor_Hybrid_MQB + SG_ AB_EDR_Trigger : 45|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB + SG_ AB_Gurtwarn_HFS : 47|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ AB_Gurtwarn_HBFS : 48|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ SC_Masterzeit_Offset : 53|2@1+ (5.08,0) [0.00|15.24] "Unit_Secon" Gateway_MQB + SG_ SC_Masterzeit : 57|7@1+ (0.04,0) [0.00|5.04] "Unit_Secon" Gateway_MQB + +BO_ 1312 Airbag_02: 8 Airbag_MQB + SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 65 Airbag_03: 8 Airbag_MQB + SG_ Airbag_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Airbag_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_MKB_Safing : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1633 Anhaenger_01: 8 Gateway_MQB + SG_ AAG_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_abgesteckt : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_NSL_aktiv : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Anhaenger_erkannt : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Blinker_H_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Blinker_HL_def : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Blinker_HR_def : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Bremslicht_H_def : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Schlusslicht_HL_def : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Schlusslicht_HR_def : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_AVS_Fehler_02 : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_AVS_Stati : 20|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 1626 BCM_01: 8 Gateway_MQB + SG_ BCM_Bremsbelag_Sensor : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Bremsfluessigkeit_Sensor : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Licht_Warn : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Waschwasser_Sensor : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Kuehlmittel_Sensor : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_Kl_15_HW_erkannt : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Eis_Offroad_Taste : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZZH_Endlage_oben : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZZH_Endlage_unten : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZZH_Endlage_unplausibel : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM2_EZS_gedrueckt : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM2_SST_gedrueckt : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Hybrid_StartStopp_Taste : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Warnblink_Taster : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Valet_Parking_Taster : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Remotestart_Betrieb : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_HSK_Taster : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Heckrollo_Taster : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_MH_Schalter : 31|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_MH_WIV_Schalter : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Eco_Charisma_Taste : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Thermomanagement_Fehler : 36|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Thermomanagement_gueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Lichtwarn_Texte : 38|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 869 BEM_05: 8 Gateway_MQB + SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_01_Abschaltstufen : 26|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_EMLIN_ungueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Segel_Info : 48|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" LEH_MQB + SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" LEH_MQB + +BO_ 1628 BMS_Hybrid_01: 8 BMS_MQB + SG_ BMS_HYB_ASV_hinten_Status : 13|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_ASV_vorne_Status : 14|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_BattFanSpd : 16|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ BMS_HYB_VentilationReq : 20|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_Spuelbetrieb_Status : 21|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_Kuehlung_Anf : 22|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ BMS_HYB_Temp_vor_Verd : 24|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_HYB_Temp_nach_Verd : 32|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_Temperatur : 40|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_Temperatur_Ansaugluft : 48|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_IstSpannung_HV : 56|8@1+ (1,100) [100|350] "Unit_Volt" Gateway_MQB + +BO_ 901 Charisma_01: 8 Gateway_MQB + SG_ CHA_Ziel_FahrPr_ALR : 0|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_ESP : 4|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_FL : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Fahrer_Umschaltung : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ CHA_Ziel_FahrPr_MO : 16|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ CHA_Ziel_FahrPr_GE : 20|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ CHA_Ziel_FahrPr_ST : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_SCU : 28|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_DR : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_QS : 36|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_AFS : 40|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_RGS : 44|4@1+ (1,0) [0|15] "" Airbag_MQB + SG_ CHA_Ziel_FahrPr_EPS : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_ACC : 52|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_SAK : 56|4@1+ (1,0) [0|15] "" SAK_MQB + SG_ CHA_Ziel_FahrPr_MStSt : 60|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 945 DC_Hybrid_01: 8 LEH_MQB + SG_ DC_HYB_iAktLV : 12|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB + SG_ DC_HYB_iAktReserveLV : 22|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB + SG_ DC_HYB_uAktLV : 32|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Gateway_MQB + SG_ DC_HYB_LangsRegelung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Abregelung_Temperatur : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_RedLeistung : 42|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_intern : 43|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_Spannung : 44|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Auslastungsgrad : 56|8@1+ (0.4,0) [0|100] "Unit_PerCent" Gateway_MQB + +BO_ 1714 Diagnose_01: 8 Gateway_MQB + SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + +BO_ 1520 Dimmung_01: 8 Gateway_MQB + SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB + SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 1603 Einheiten_01: 8 Gateway_MQB + SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX + +BO_ 260 EPB_01: 8 Gateway_MQB + SG_ EPB_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_01_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_QBit_Laengsbeschleunigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_QBit_Pedalweg_Kuppl : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_BCM2_Motor_Wakeup : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_Freig_Verzoeg_Anf : 15|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_Verzoeg_Anf : 16|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" Vector__XXX + SG_ EPB_Laengsbeschleunigung : 24|8@1+ (1,-128) [-128|126] "Unit_PerCentOfForceOfGravi" Vector__XXX + SG_ EPB_Pedalweg_Kuppl : 32|8@1+ (0.4,0) [8|92] "Unit_PerCent" Vector__XXX + SG_ EPB_Anfahrwunsch_erkannt : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_DAA_Randbed_erf : 49|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ EPB_Fehlerstatus : 50|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EPB_Schalterposition : 52|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_QBit_Schalterpos : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_Konsistenz_ACC : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_Spannkraft : 56|5@1+ (1,0) [0|29] "Unit_KiloNewto" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ EPB_Status : 61|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 257 ESP_02: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Gierrate : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_QBit_Laengsbeschl : 13|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Querb : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Stillstandsflag : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Querbeschleunigung : 16|8@1+ (0.01,-1.27) [-1.27|1.27] "Unit_ForceOfGravi" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Laengsbeschl : 24|10@1+ (0.03125,-16) [-16|15.90625] "Unit_MeterPerSeconSquar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verteil_Wankmom : 34|5@1+ (0.1,-1) [-1|1] "" Vector__XXX + SG_ ESP_QBit_Anf_Vert_Wank : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Gierrate : 40|14@1+ (0.01,0) [0|163.82] "Unit_DegreOfArcPerSecon" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_VZ_Gierrate : 54|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Notbremsanzeige : 55|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_SpannungsAnf : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_PLA_Abbruch : 57|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ ESP_Status_ESP_PLA : 60|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 262 ESP_05: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Bremsdruck : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Fahrer_bremst : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Schwelle_Unterdruck : 14|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Bremsdruck : 16|10@1+ (0.3,-30) [-30|276.6] "Unit_Bar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Fahrer_bremst : 26|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verz_TSK_aktiv : 27|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Lenkeingriff_ADS : 28|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Konsistenz_TSK : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Bremsruck_AWV2 : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Konsistenz_AWV2 : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ECD_Fehler : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ECD_nicht_verfuegbar : 33|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Status_Bremsentemp : 34|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Autohold_Standby : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_HDC_Standby : 36|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_HBA_aktiv : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Prefill_ausgeloest : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Rueckwaertsfahrt_erkannt : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Status_Anfahrhilfe : 40|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HDC_aktiv : 41|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_StartStopp_Info : 42|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ESP_Eingr_HL : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_HR : 45|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_VL : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_VR : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_BKV_Unterdruck : 48|8@1+ (4,0) [0|1012] "Unit_MilliBar" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Autohold_aktiv : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_FStatus_Anfahrhilfe : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Verz_EPB_aktiv : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ECD_Bremslicht : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verzoeg_EPB_verf : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Status_Bremsdruck : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Anforderung_EPB : 62|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 914 ESP_07: 8 Gateway_MQB + SG_ ESP_07_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_07_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_ACC_LDE : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Quattro_Antrieb : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Codierung_ADS : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_RTA_HL : 16|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ ESP_RTA_HR : 24|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ ESP_RTA_VR : 32|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ OBD_Fehler_Radsensor_HL : 40|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_HR : 44|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_VL : 48|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_VR : 52|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Qualifizierung_Antriebsart : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Offroad_Modus : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_MKB_ausloesbar : 58|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_MKB_Status : 59|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_CM_Variante : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_OBD_Status : 61|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 278 ESP_10: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 178 ESP_19: 8 Gateway_MQB + SG_ ESP_HL_Radgeschw_02 : 0|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Radgeschw_02 : 16|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Radgeschw_02 : 32|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Radgeschw_02 : 48|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1629 ESP_20: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" XXX + SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_Wiederstart_Anz_01 : 30|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Wiederstart_Anz_02 : 31|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Wiederstart_Anz_03 : 32|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Wiederstart_Anz_04 : 33|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_01 : 34|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_02 : 35|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_03 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_04 : 37|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_05 : 38|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_06 : 39|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_07 : 40|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Stoppverbot_Anz_Std : 41|1@1+ (1,0) [0|1] "" XXX + SG_ ESP_Dachrelingsensor : 42|2@1+ (1,0) [0|3] "" XXX + SG_ ESP_Stoppverbot_Anz_08 : 44|1@1+ (1,0) [0|1] "" XXX + SG_ HDC_Charisma_FahrPr : 45|4@1+ (1,0) [0|15] "" XXX + SG_ HDC_Charisma_Status : 49|2@1+ (1,0) [0|3] "" XXX + SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" XXX + SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + +BO_ 253 ESP_21: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "" XXX + SG_ ESP_PLA_Bremseingriff : 22|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Diagnose : 23|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESC_Reku_Freigabe : 24|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESC_v_Signal_Qualifier_High_Low : 25|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ ESP_Vorsteuerung : 28|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_AWV3_Brems_aktiv : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ OBD_Schlechtweg : 30|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ OBD_QBit_Schlechtweg : 31|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0.00|655.32] "Unit_KiloMeterPerHour" XXX + SG_ ASR_Tastung_passiv : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Tastung_passiv : 49|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Systemstatus : 50|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ASR_Schalteingriff : 51|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ ESP_Haltebestaetigung : 53|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_MKB_Abbruch_Geschw : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_QBit_v_Signal : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ABS_Bremsung : 56|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ASR_Anf : 57|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MSR_Anf : 58|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ EBV_Eingriff : 59|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ EDS_Eingriff : 60|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Eingriff : 61|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_ASP : 62|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Anhaltevorgang_ACC_aktiv : 63|1@1+ (1.0,0.0) [0.0|1] "" XXX + +BO_ 987 Gateway_72: 8 Gateway_MQB + SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 989 Gateway_74: 8 Gateway_MQB + SG_ LH_EPS_01_alt : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ Kessy_04_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ LIN_2_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MFG_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ GW_74_va_14 : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Klima_02_alt : 5|1@1+ (1,0) [0|1] "" BMS_MQB + SG_ Parkhilfe_01_alt : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ELV_01_alt : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KY_StartStopp_Info : 16|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ PH_StartStopp_Info : 18|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ EPS_Lenkerposition : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB + SG_ ELV_Anf_Klemme_50 : 22|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ MF_StartStopp_Info : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ KL_Geblaesespannung_Soll : 40|8@1+ (0.05,0.5) [2|13] "Unit_Volt" BMS_MQB + SG_ KL_Umluftklappe_Status : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Tip_Down : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MFL_Tip_Up : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ LS_Tiptronic_Fehler : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 296 Getriebe_06: 3 Getriebe_DQ_Hybrid_MQB + SG_ GE_WH_Sperre : 0|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Ausleuchtungsmode : 1|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Test_Freigabe : 2|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Ist_Fahrstufe : 4|4@1+ (1,0) [0|15] "" Waehlhebel_MQB + SG_ GE_Testparameter_1 : 8|8@1+ (1,0) [0|255] "" Waehlhebel_MQB + SG_ GE_Testparameter_2 : 16|8@1+ (1,0) [0|255] "" Waehlhebel_MQB + +BO_ 173 Getriebe_11: 8 Getriebe_DQ_Hybrid_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER_DISABLED : 8|4@1+ (1,0) [0|15] "" XXX + SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "" XXX + SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "" XXX + SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" XXX + SG_ GE_Fahrstufe : 42|4@1+ (1,0) [0|15] "" XXX + SG_ GE_reserv_Fahrstufe : 46|1@1+ (1,0) [0|1] "" XXX + SG_ GE_Schaltablauf : 47|2@1+ (1,0) [0|3] "" XXX + SG_ GE_Uefkt_unplausibel : 49|1@1+ (1,0) [0|1] "" XXX + SG_ GE_MMom_Status_02 : 50|3@1+ (1,0) [0|7] "" XXX + SG_ GE_Status_Kraftschluss : 53|3@1+ (1,0) [0|7] "" XXX + SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" XXX + SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" XXX + SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" XXX + SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 174 Getriebe_12: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_12_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Getriebe_12_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Drehzahlmesser_Daempfung : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Schubabschalt_Unt : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freigabe_Synchro : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Synchro_Wunschdrehz : 15|9@1+ (25,0) [0|12750] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Synchro_Zeit : 24|8@1+ (20,0) [0|5080] "Unit_MilliSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Mom_Begr_Gradient : 32|8@1+ (10,0) [0|2540] "Unit_NewtoMeterPerSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Anheb_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Aufnahmemoment : 48|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Anf_Zylabsch : 58|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ GE_HYB_DZ_Eingriff : 62|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB + +BO_ 301 Getriebe_13: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_13_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Getriebe_13_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_StartStopp_Info : 12|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ GE_Langfr_Schutzmom_02 : 14|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Eingangsdrehz : 48|14@1+ (1,0) [0|16381] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Notlauf : 62|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freig_Langfr_Schutzmom : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 968 Getriebe_14: 8 Getriebe_DQ_Hybrid_MQB + SG_ GE_OBD_AbsperrVent : 12|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_amax_moeglich : 16|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Charisma_FahrPr : 25|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ GE_Charisma_Status : 29|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ GE_Verlustmoment : 32|8@1+ (1,0) [0|254] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freigabe_Verfallsinfo_WFS : 49|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_Codierung_MSG : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_LaunchControl : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_Heizwunsch : 52|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_OBD_Status : 54|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_LFR_Adaption : 55|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Sumpftemperatur : 56|8@1+ (1,-58) [-58|196] "Unit_DegreCelsi" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 158 Getriebe_Hybrid_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB + SG_ Getriebe_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB + SG_ GE_HYB_Fehlerstatus : 12|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freigabe_K0 : 16|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freigabe_LL_Reg : 17|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freig_sSchl_K0 : 18|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freig_VM_EM_Stop : 19|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Wiederstart : 20|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Filt_MomAufbau : 21|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB + SG_ GE_HYB_nK0 : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Vector__XXX + SG_ GE_HYB_MomEingriff_EM : 32|6@1+ (0.5,0) [0|31.5] "Unit_NewtoMeter" LEH_MQB + SG_ GE_HYB_VZ_MomEingriff_EM : 38|1@1+ (1,0) [0|1] "" LEH_MQB + SG_ GE_HYB_Sportfaktor : 56|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB + SG_ GE_HYB_VM_akt_halten : 61|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_StartAnf : 62|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_VM_Startkontr : 63|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + +BO_ 299 GRA_ACC_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Typ468 : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Stufe_2 : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_ButtonTypeInfo : 28|2@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 960 Klemmen_Status_01: 4 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZAS_Kl_50 : 19|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 949 Klima_11: 8 Gateway_MQB + SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zonen : 4|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Comp_rev_rq : 8|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX + SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Comp_enable : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB + +BO_ 1625 Klimakomp_01: 8 Gateway_MQB + SG_ EKL_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EKL_Comp_SCI_com_stat : 16|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_output_stat : 18|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_main_stat : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EKL_Comp_ovld_stat : 21|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EKL_Comp_Inv_stat : 24|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_photo_temp_stat : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_photo_temp : 32|8@1+ (1,0) [0|254] "Unit_DegreCelsi" Vector__XXX + SG_ EKL_Comp_current : 40|8@1+ (0.1,0) [0|25.4] "Unit_Amper" Motor_Hybrid_MQB + SG_ EKL_Comp_rev_stat : 48|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX + +BO_ 2549088277 KN_Airbag_01: 8 Airbag_MQB + SG_ Airbag_01_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Airbag_01_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088380 KN_EMotor_01: 8 LEH_MQB + SG_ EMotor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EMotor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ EM_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088375 KN_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Getriebe_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ GE_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088379 KN_Hybrid_01: 8 BMS_MQB + SG_ Hybrid_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Hybrid_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ BMS_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088374 KN_MO_01: 8 Motor_Diesel_MQB + SG_ Motor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Motor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088284 KN_SAK: 8 SAK_MQB + SG_ SAK_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SAK_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ SAK_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 779 Kombi_01: 8 Gateway_MQB + SG_ KBI_ABS_Lampe : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_ESP_Lampe : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_BKL_Lampe : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Airbag_Lampe : 3|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_SILA_gueltig : 4|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_Lenkung_Lampe : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Vorglueh_System_Lampe : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ KBI_NV_in_Anzeige : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Kombi_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Anzeigestatus_ACC : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigestatus_GRA : 13|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Oeldruck_Schalter : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Tankwarnung : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_MFA_v_Einheit_01 : 17|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_im_Stellgliedtest : 18|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_Anzeigefehler_LDW : 19|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Variante_USA : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Oeldruckwarnung : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Handbremse : 23|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ KBI_V_Digital : 24|9@1+ (1,0) [0|511] "" Vector__XXX + SG_ KBI_PLA_in_Anzeige : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigefehler_NV : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigestatus_LIM : 35|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_angez_Geschw : 48|10@1+ (0.32,0) [0|325.12] "Unit_KiloMeterPerHour" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Einheit_Tacho : 58|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Konsistenz_ACC : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Fehler_Anzeige_ACC : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigefehler_SWA : 61|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1719 Kombi_02: 8 Gateway_MQB + SG_ KBI_Kilometerstand : 0|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Vector__XXX + SG_ KBI_Standzeit_02 : 20|17@1+ (1,0) [0|131068] "Unit_Secon" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Inhalt_Tank : 40|7@1+ (1,0) [0|125] "Unit_Liter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_FStatus_Tank : 47|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_QBit_Aussen_Temp_gef : 55|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Aussen_Temp_gef : 56|8@1+ (0.5,-50) [-50|75] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 982 Licht_hinten_01: 8 Gateway_MQB + SG_ Licht_hinten_01_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 134 LWI_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_Lenkradwinkel : 16|13@1+ (0.1,0) [0|800] "Unit_DegreOfArc" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" Vector__XXX + SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 263 Motor_04: 8 Motor_Diesel_MQB + SG_ MO_Istgang : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Sollgang : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Oeldruck : 16|8@1+ (0.04,0) [0|10] "Unit_Bar" Gateway_MQB + SG_ MO_Anzeigedrehz : 24|12@1+ (3,0) [0|12282] "Unit_MinutInver" Gateway_MQB + SG_ MO_Schaltempf_verfbar : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Ladedruck : 39|9@1+ (0.01,0) [0|5.1] "Unit_Bar" Gateway_MQB + SG_ MO_KVS : 48|15@1+ (1,0) [0|32767] "Unit_MicroLiter" Gateway_MQB + SG_ MO_KVS_Ueberlauf : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1600 Motor_07: 8 Motor_Diesel_MQB + SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB + SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB + +BO_ 1607 Motor_09: 8 Motor_Diesel_MQB + SG_ MO_ITM_Kuehlmittel_Temp : 0|8@1+ (0.75,-48) [-45.75|143.25] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_E85_Sensor : 8|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ SCR_Anz_Motorstarts : 12|4@1+ (1,0) [0|8] "" Gateway_MQB + SG_ SCR_Reichweite : 16|15@1+ (1,0) [0|32766] "" Gateway_MQB + SG_ SCR_Warnstufe_1 : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Warnstufe_2 : 33|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Text : 34|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ SCR_Akustik : 37|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Kraftstofffilter_Wasser : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Systemfehler : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Inducement_Strategie : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_CO2_Faktor : 44|12@1+ (1,0) [1|4094] "Unit_GramPerLiter" Gateway_MQB + +BO_ 167 Motor_11: 8 Motor_Diesel_MQB + SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB + SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 168 Motor_12: 8 Motor_Diesel_MQB + SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + +BO_ 958 Motor_14: 8 Motor_Diesel_MQB + SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" Gateway_MQB,LEH_MQB + SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB + SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Timeout_ESP : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Zylabschalt_01 : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1631 Motor_16: 8 Motor_Diesel_MQB + SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Gateway_MQB + SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Gateway_MQB + SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Steigung : 56|8@1+ (0.8,-101.6) [-101.6|101.6] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 812 Motor_17: 8 Motor_Diesel_MQB + SG_ MO_Prio_MAX_Wunschdrehzahl : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Prio_MIN_Wunschdrehzahl : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Luftpfad_aktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_v_Begrenz_Aktivierbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Drehzahlbeeinflussung : 16|8@1+ (0.39,0) [0|99.45] "Unit_PerCent" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_MIN_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_MAX_Wunschdrehzahl : 32|9@1+ (25,0) [0|12750] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Charisma_FahrPr : 41|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Charisma_Status : 45|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 1648 Motor_18: 8 Motor_Diesel_MQB + SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Eis_Offroad_LED : 45|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_E85_BS_Texte : 52|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 289 Motor_20: 8 Motor_Diesel_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|255] "" XXX + SG_ MO_Fahrpedalrohwert_01 : 12|8@1+ (0.4,0) [0.0|101.6] "Unit_PerCent" XXX + SG_ MO_QBit_Fahrpedalwerte_01 : 20|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Fahrpedalgradient : 21|8@1+ (25,0) [0|6350] "Unit_PerCentPerSecon" XXX + SG_ MO_Sig_Fahrpedalgradient : 29|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_rel_Saugrohrdruck : 30|6@1+ (18,0) [0|1116] "Unit_MilliBar" XXX + SG_ MO_rel_Saugrohrdruck_gem_err : 36|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Moment_im_Leerlauf : 37|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Schubabschaltung : 38|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_StartStopp_StoppVorbereitung : 39|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" XXX + SG_ MO_Entkopplung_Sollschlupf : 48|7@1+ (20,0) [0|2480] "Unit_MinutInver" XXX + SG_ MO_temporaere_Fahrerabwesenheit : 55|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ TSK_a_Soll_gradientenbegrenzt : 57|7@1+ (0.1,-7.2) [-7.2|5.4] "Unit_MeterPerSeconSquar" XXX + +BO_ 967 Motor_26: 8 Motor_Diesel_MQB + SG_ MO_HYB_Status_HV_Ladung : 8|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_1 : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_2 : 29|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_3 : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_4 : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_HYB_Text_5 : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_6 : 37|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_7 : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Gateway_MQB + SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Winterfahrprog : 52|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB + SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB + SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB + SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB + SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 157 Motor_Hybrid_01: 8 Motor_Hybrid_MQB + SG_ Motor_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB + SG_ Motor_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_IstStatusK0 : 12|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_max_ind_VM_Mom : 16|10@1+ (1,0) [0|1021] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Zielzustand : 26|3@1+ (1,0) [0|7] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Startmodus : 29|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_HYB_Startmodus_PQ3x : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Stoppmodus : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_VM_Mom_oE : 40|10@1+ (1,-100) [-100|922] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_VM_aktiv : 50|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Schaltverhinderung : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + +BO_ 811 Motor_Hybrid_02: 8 Motor_Hybrid_MQB + SG_ MO_HYB_E_Faktor : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Drehzahl_VM : 16|16@1+ (0.25,0) [0|16256] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_LowSpeedModus : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + +BO_ 2600468501 NMH_Airbag_01: 8 Airbag_MQB + SG_ NM_Airbag_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Airbag_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Airbag_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Airbag_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468604 NMH_EMotor_01: 8 LEH_MQB + SG_ NM_EMotor_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_EMotor_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_EMotor_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_EMotor_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468496 NMH_Gateway: 8 Gateway_MQB + SG_ NM_Gateway_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Gateway_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Gateway_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ACAN_Aktivitaet : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_FCAN_Aktivitaet : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_KCAN_Aktivitaet : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ICAN_Aktivitaet : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_DiagCAN_Aktivitaet : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ECAN_Aktivitaet : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Energie_LIN_Aktivi000 : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Bedien_LIN_Aktivitaet : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_EM_Aktivitaet : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_EM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Shutdown : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Spg_Messung : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Wakeup_Monitor : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468599 NMH_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ NM_Getriebe_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Getriebe_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Getriebe_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Getriebe_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_v_gr_0 : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Pos_Erk : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Umg_Bed : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468603 NMH_Hybrid_01: 8 BMS_MQB + SG_ NM_Hybrid_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Hybrid_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Hybrid_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Hybrid_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NL_Luefter : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468598 NMH_MO_01: 8 Motor_Diesel_MQB + SG_ NM_MO_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_MO_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_MO_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_MO_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_HV_Abschaltung : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_EKP_Vorlauf : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_STH_Betrieb : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Kuehlerluefter : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Diagnose : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_WFS : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_EEPROM : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Sonstige : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 913 OBD_01: 8 Motor_Diesel_MQB + SG_ OBD_Calc_Load_Val : 0|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Eng_Cool_Temp : 8|8@1+ (1,-40) [-40|215] "Unit_DegreCelsi" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Throttle_Pos : 16|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Load_Val : 24|16@1+ (0.39215686275,0) [0|25700] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Pedal_Pos : 40|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Kaltstart_Denominator : 59|1@1+ (1,0) [0|1] "" BMS_MQB,LEH_MQB + SG_ OBD_Minimum_Trip : 60|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Driving_Cycle : 61|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Warm_Up_Cycle : 62|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Normed_Trip : 63|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + +BO_ 1630 OBD_Tankgeber_01: 8 Gateway_MQB + SG_ OBD_TG_F_Status_1 : 0|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_2 : 4|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_3 : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_4 : 12|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_1 : 16|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_2 : 28|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_3 : 40|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_4 : 52|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1437 Remotestart_FFB: 8 Gateway_MQB + SG_ RSF_Tastencode_1 : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ RSF_Tastencode_2 : 8|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ RSF_Tastencode_Maske : 16|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + +BO_ 984 RGS_VL_01: 8 Airbag_MQB + SG_ RGS_VL_Texte : 12|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ RGS_VL_Charisma_FahrPr : 14|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ RGS_VL_Charisma_Status : 18|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ RGS_VL_aktiv : 21|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Sitz : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Schiebedach : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Fenster : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Warnblinken : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_Precrash_Basis : 32|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ RGS_VL_Precrash_Front : 40|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ RGS_VL_Precrash_Rear : 48|8@1+ (1,0) [0|255] "" Gateway_MQB + +BO_ 1528 SAK_01: 8 SAK_MQB + SG_ SAK_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ SAK_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 1313 STH_01: 8 Gateway_MQB + SG_ STH_Funk_ein : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Funk_aus : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Zusatzheizung : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_LED : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Pumpe_ein : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Geblaese : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_EKP_Anst : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Start_folgt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Ventiloeffnungszeit : 8|6@1+ (1,0) [0|63] "Unit_Minut" Vector__XXX + SG_ STH_Ventil_Status : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Waermeeintrag : 16|6@1+ (1,0) [0|63] "" Vector__XXX + SG_ STH_KVS : 24|13@1+ (1,0) [0|8191] "Unit_MilliLiter" Vector__XXX + SG_ STH_Fehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ STH_Heizleistung : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ STH_Wassertemp : 48|8@1+ (0.75,-40) [-40|142.25] "Unit_DegreCelsi" Vector__XXX + SG_ STH_Motorvorwaermung : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Servicemode : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_war_aktiv : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_KVS_Ueberlauf : 62|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1172 STS_01: 8 Gateway_MQB + SG_ STS_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STS_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STS_Car_not_under_theft : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Car_under_theft : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Anlassersperre : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Typencodierung : 16|5@1+ (1,0) [0|31] "" Vector__XXX + SG_ STS_LIN_aktiv : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Standlicht : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Fahrlicht : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Alarm_still : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Texte : 27|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ STS_Laderelais : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Summer : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Alarm_Blinker : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Notstart : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Signalhorn : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Leerlaufschaltung : 56|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1413 Systeminfo_01: 8 Gateway_MQB + SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" Vector__XXX + SG_ SI_Rollenmode : 6|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" SAK_MQB + SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" SAK_MQB + SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 288 TSK_06: 8 Motor_Diesel_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Radbremsmom : 12|12@1+ (8,0) [0|32760] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Status : 24|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_v_Begrenzung_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Standby_Anf_ESP : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Freig_WU : 29|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Freig_Verzoeg_Anf : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Limiter_ausgewaehlt : 31|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Wunsch_Uebersetz : 32|10@1+ (0.0245,0) [0.0245|25.0635] "" Gateway_MQB + SG_ TSK_Hauptschalter_GRA_ACC : 42|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB + SG_ TSK_SRBM_Anf_ASIL : 44|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB + SG_ TSK_ax_Getriebe_02 : 48|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Zwangszusch_ESP : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_zul_Regelabw : 58|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 798 TSK_07: 8 Motor_Diesel_MQB + SG_ TSK_07_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_AQ + SG_ TSK_07_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_AQ + SG_ TSK_Wunschgeschw : 12|10@1+ (0.32,0) [0.00|326.72] "Unit_KiloMeterPerHour" Gateway_MQB,Getriebe_AQ + SG_ TSK_Texte : 40|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB + SG_ TSK_Akustik : 45|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB + SG_ TSK_Texte_Primaeranz : 48|5@1+ (1.0,0.0) [0.0|31] "" Gateway_MQB + SG_ TSK_Limiter_Fahrerinfo : 53|2@1+ (1.0,0.0) [0.0|3] "" Gateway_MQB + SG_ TSK_Limiter_Anzeige : 55|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Fahrzeugstatus_GRA : 56|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Fahrzeugstatus_Limiter : 57|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ MO_Motorlaufwarnung : 58|1@1+ (1.0,0.0) [0.0|1] "" Gateway_MQB + SG_ TSK_Status_Anzeige : 61|3@1+ (1.0,0.0) [0.0|7] "" Gateway_MQB + +BO_ 346 TSK_08: 8 Motor_Diesel_MQB + SG_ TSK_08_CRC : 0|8@1+ (1,0) [0|255] "" Frontradar + SG_ TSK_08_BZ : 8|4@1+ (1,0) [0|15] "" Frontradar + SG_ MO_Anforderung_HMS : 12|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_Status_EA : 32|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_vMax_Fahrerassistenz : 40|9@1+ (1,0) [0|510] "" Frontradar + SG_ TSK_Einheit_vMax_Fahrerassistenz : 49|1@1+ (1,0) [0|1] "" Frontradar + SG_ TSK_Status_PLA : 50|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_aktives_System : 53|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_erhoehter_Fahrwiderstand : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_Anf_Antriebsmoment : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ TSK_Status_ARA : 58|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ TSK_Status_IPA : 61|3@1+ (1,0) [0|7] "" Vector__XXX + +BO_ 1716 VIN_01: 8 Gateway_MQB + SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB + SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + +BO_ 175 Waehlhebel_03: 4 Waehlhebel_MQB + SG_ WH_Status_Sperre : 0|3@1+ (1,0) [0|7] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Initialisierung : 3|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_SensorPos_roh : 4|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_03_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_SensorPos_roh_inv : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Testergebnis : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Test_Aktiv : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Status : 25|7@1+ (1,0) [0|127] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 916 WBA_03: 8 Getriebe_DQ_Hybrid_MQB + SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Gateway_MQB + +BO_ 1602 WIV_01: 8 Motor_Diesel_MQB + SG_ WIV_Verschleissindex : 0|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB + SG_ WIV_Russindex : 16|16@1+ (2e-8,0) [0|0.00131068] "" Gateway_MQB + SG_ WIV_t_min : 32|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB + SG_ WIV_t_max : 40|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB + SG_ WIV_W_min : 48|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB + SG_ WIV_W_max : 56|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB + +BO_ 294 HCA_01: 8 Frontsensorik + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [15|30] "Unit_Hertz" Vector__XXX + SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX + SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar + SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ HCA_01_Sendestatus : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Status_HCA : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX + SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar + +BO_ 159 LH_EPS_03: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX + SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX + SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 286 ESP_08: 8 Gateway_MQB + SG_ ESP_08_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_08_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ESP_ANB_CM_Rueckk_Umsetz : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Konsistenz_ACC_Botschaft : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Stillstandsphase_erschoepft : 14|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_ZT_Rueckk_Umsetz : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Tuerkontakt_Fahrertuer : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Abrutschen_Stillstand : 18|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_Fahrer_tritt_ZBR_Schw : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_QBit_v_ref : 41|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ ESP_v_ref_Fahrtrichtung : 42|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ ESC_Bremsdruckgradient : 44|8@1+ (10,0) [0|2500] "Unit_BarPerSecon" XXX + SG_ ESP_v_ref : 52|12@1+ (0.125,0) [0.000|511.500] "Unit_KiloMeterPerHour" XXX + +BO_ 919 LDW_02: 8 XXX + SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX + SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX + SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX + SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 780 ACC_02: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Wunschgeschw_02 : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Status_Prim_Anz : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Abstandsindex : 24|10@1+ (1,0) [1|1021] "" XXX + SG_ ACC_Akustik_02 : 34|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Warnung_Verkehrszeichen_1 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Gesetzte_Zeitluecke : 37|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Optischer_Fahrerhinweis : 40|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz : 41|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anzeige_Zeitluecke : 42|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Tachokranz : 43|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Display_Prio : 44|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Relevantes_Objekt : 46|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Texte_Primaeranz : 48|7@1+ (1,0) [0|127] "" XXX + SG_ ACC_Wunschgeschw_erreicht : 55|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz_unten : 60|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" XXX + +BO_ 302 ACC_07: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Anhalteweg : 12|11@1+ (0.01,0) [0|20.45] "Unit_Meter" XXX + SG_ ACC_Anhalten : 23|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Boost_Anf : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilauf_Anf : 25|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilauf_Info : 26|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Anforderung_HMS : 28|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Anfahren : 31|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Folgebeschl : 32|8@1+ (0.03,-4.6) [-4.6|2.99] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_Sollbeschleunigung_02 : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + +BO_ 264 Fahrwerk_01: 8 XXX + SG_ Fahrwerk_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrwerk_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 695 RCTA_01: 8 XXX + SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 783 SWA_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Anzeigen : 12|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Blindheit_erkannt : 16|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_rel_Nichtverf : 17|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_rel_Fehler : 18|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Sta_aktiv : 19|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Sta_passiv : 20|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_FT_RueckLED : 21|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Status : 22|2@1+ (1,0) [0|3] "" XXX + SG_ SWA_Standziele_li : 24|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Kolonne_li : 25|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Warnung_FS : 28|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Warnung_BFS : 29|1@1+ (1,0) [0|1] "" XXX + SG_ ASW_Kombitexte : 30|3@1+ (1,0) [0|7] "" XXX + SG_ SWA_Kolonne_mi : 33|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Standziele_re : 40|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Kolonne_re : 41|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX + SG_ HRE_Anzeigetexte : 44|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Gischtzaehler : 48|7@1+ (1,0) [0|100] "Unit_PerCent" XXX + SG_ Heckradar_Kombitexte : 56|5@1+ (1,0) [0|31] "" XXX + SG_ RCTA_Kombitexte : 61|3@1+ (1,0) [0|7] "" XXX + +BO_ 804 ACC_04: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Texte_Sekundaeranz : 12|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Texte_Zusatzanz : 16|6@1+ (1,0) [0|63] "" XXX + SG_ ACC_Status_Zusatzanz : 22|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Texte : 27|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Texte_braking_guard : 32|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Warnhinweis : 35|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Zeitluecke_Abstandswarner : 36|6@1+ (0.1,0) [0|6] "Unit_Secon" XXX + SG_ ACC_Abstand_Abstandswarner : 42|9@1+ (1,0) [0|508] "" XXX + SG_ ACC_Tempolimit : 51|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Charisma_FahrPr : 56|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Charisma_Status : 60|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Texte_Abstandswarner : 62|2@1+ (1,0) [0|3] "" XXX + +BO_ 917 LWR_AFS_01: 8 XXX + +BO_ 991 Gateway_76: 8 XXX + +BO_ 997 TSG_FT_02: 8 XXX + SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 1175 Parkhilfe_01: 8 XXX + +BO_ 427 ESP_33: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_AHW_aktiv : 12|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_AHW_nicht_verfuegbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_ANB_CM_aktiv : 16|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_ANB_CM_nicht_verfuegbar : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Warnruck_aktiv : 19|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Warnruck_nicht_verfuegbar : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Prefill_aktiv : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Prefill_nicht_verfuegbar : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_HBA_aktiv : 26|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESC_HBA_nicht_verfuegbar : 27|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESC_TSK_SRBM_Anf : 28|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_TSK_SRBM_nicht_verfuegbar : 29|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Verz_Reg_aktiv : 30|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Verz_Reg_nicht_verfuegbar : 34|1@1+ (1,0) [0|1] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Verz_Reg_TB_nicht_verfuegbar : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Verz_Reg_ZB_nicht_verfuegbar : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Bremslicht_unplausibel : 37|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Konsistenz_ACC : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_AWV : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_ARA : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_IPA : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_FCW : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_NV : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_RCTA : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_TSK : 45|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Konsistenz_vFGS : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_STA : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Fahrer_Bremsdruck_bestimmend : 48|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Konsistenz_EA : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_BFF : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_MKB : 51|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESC_Verz_ASIL_Verfuegbarkeit : 52|3@1+ (1,0) [0|7] "" Airbag_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESC_Pumpenanlauf_aktiv : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_AGW : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_KAS : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_PCF : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_FAS_VK : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Verz_Begrenzung : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESC_Konsistenz_AWA : 61|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 418 ESP_15: 8 XXX + SG_ ESP_15_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_15_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 1122 PSD_04: 8 XXX + SG_ PSD_Object_Index : 0|6@1+ (1,0) [0|63] "" XXX + +BO_ 1123 PSD_05: 8 XXX + SG_ PSD_Current_Route_Index : 0|6@1+ (1,0) [0|63] "" XXX + SG_ Route_Distance_Remaining : 8|5@1+ (1,0) [0|31] "" XXX + +BO_ 1124 PSD_06: 8 XXX + +BO_ 988 Gateway_73: 8 XXX + SG_ UNKNOWN_1 : 15|2@0+ (1,0) [0|3] "" XXX + SG_ GE_Fahrstufe : 40|4@1+ (1,0) [0|15] "" XXX + SG_ EPB_Status : 53|3@1+ (1,0) [0|7] "" XXX + SG_ UNKNOWN_2 : 58|3@0+ (1,0) [0|7] "" XXX + +BO_ 792 Kamera_Status: 8 XXX + +BO_ 981 Licht_Anf_01: 8 Vector__XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_Kurvenlicht_links_Anf : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Kurvenlicht_rechts_Anf : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Standlicht_Anf : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Abblendlicht_Anf : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Fernlicht_Anf : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Nebellicht_Anf : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Parklicht_li_Anf : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Parklicht_re_Anf : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Nebelschluss_Ahg_Anf : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Nebelschluss_Fzg_Anf : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Schlusslicht_Anf : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Rueckfahrlicht_Anf : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Signaturlicht_Anf : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Umfeldleuchten_Anf : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Tagfahrlicht_Anf : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Regenlicht_Anf : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Autobahnlicht_Anf : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Touristen_Licht_Anf : 29|1@1+ (1,0) [0|1] "" Frontradar + SG_ BCM1_CH_aktiv : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_LH_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Gleitende_Leuchtw_Anf : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_GLW_Fernlicht_Anf : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Adaptive_Lichtvert_Anf : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_CH_LH_aktiv : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Allwetterlicht_Anf : 41|1@1+ (1,0) [0|1] "" Frontradar + +BO_ 1440 RLS_01: 8 XXX + +BO_ 870 Blinkmodi_02: 8 XXX + SG_ Hazard_Switch : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Comfort_Signal_Left : 23|1@1+ (1,0) [0|1] "" XXX + SG_ Comfort_Signal_Right : 24|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Turn_Exterior_Bulb_1 : 25|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Turn_Exterior_Bulb_1 : 26|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Turn_Exterior_Bulb_2 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Turn_Exterior_Bulb_2 : 28|1@1+ (1,0) [0|1] "" XXX + SG_ Fast_Send_Rate_Active : 37|1@1+ (1,0) [0|1] "" XXX + +BO_ 1385 HVEM_04: 8 XXX + +BO_ 1605 FLA_01: 8 XXX + +BO_ 1624 Licht_vorne_01: 8 XXX + +BO_ 1646 Klima_03: 8 XXX + +BO_ 1720 Kombi_03: 8 XXX + SG_ KBI_Reifenumfang : 0|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + SG_ KBI_Variante_USA : 12|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Variante : 13|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_BCmE_aktiv : 16|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Sparhinweis_quittiert : 17|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Tankfuellstand_Prozent : 18|7@1+ (1,0) [0|100] "Unit_PerCent" XXX + SG_ KBI_Nachtanken_erkannt : 25|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ KBI_Tankinhalt_hochaufl : 26|14@1+ (0.01,0) [0.00|163.81] "Unit_Liter" XXX + SG_ KBI_Max_Tankinhalt : 40|8@1+ (0.5,0) [0.0|126.5] "" XXX + SG_ KBI_Reifenumfang_Sekundaer : 48|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + +BO_ 391 Motor_EV_01: 8 Motor_MQB_BEV + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EV_Rekuperationsstufe : 12|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ HV_Bordnetz_aktiv : 15|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Waehlpos : 16|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ MO_Fehler_NTKreis : 19|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Fehler_Notabschaltung_Klima : 20|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ MO_KLE_FStatus : 22|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ MO_WH_Texte : 24|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ MO_Drehzahl_VM : 32|16@1+ (0.25,0) [0.00|16383.00] "Unit_MinutInver" XXX + SG_ HV_Bordnetz_Fehler : 48|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_Tankbereitschaft_Status : 49|3@1+ (1.0,0.0) [0.0|7] "" XXX + SG_ MO_Tankklappensteuerung : 52|2@1+ (1.0,0.0) [0.0|3] "" XXX + SG_ MO_HVEM_Eskalation : 54|1@1+ (1.0,0.0) [0.0|1] "" XXX + SG_ MO_HVEM_MaxLeistung : 55|9@1+ (50,0) [0|25450] "Unit_Watt" XXX + +CM_ SG_ 134 LWI_Lenkradwinkel "Steering angle WITH variable ratio effect included"; +CM_ SG_ 159 EPS_HCA_Status "Status of Heading Control Assist feature"; +CM_ SG_ 159 EPS_Lenkmoment "Steering input by driver, torque"; +CM_ SG_ 159 EPS_VZ_Lenkmoment "Steering input by driver, direction"; +CM_ SG_ 159 EPS_Berechneter_LW "Raw steering angle, degrees"; +CM_ SG_ 159 EPS_VZ_BLW "Raw steering angle, direction"; +CM_ SG_ 173 COUNTER_DISABLED "Message not renamed to COUNTER because J533 rate-limiting makes it look like messages are being lost"; +CM_ SG_ 294 HCA_01_Vib_Freq "Frequenz der Lenkradvibration"; +CM_ SG_ 294 HCA_01_LM_Offset "Von HCA angefordertes Lenkmoment (Betrag)"; +CM_ SG_ 294 EA_ACC_Sollstatus "Status-Anforderung ACC von Emergency Alert. Statuswechsel bei Flanke. Solange Wert=1, wird EA_ACC_Wunschgeschwindigkeit übernommen. Wert=2 führt zu Zustand ¿ACC_GRA_passiv¿"; +CM_ SG_ 294 EA_Ruckprofil "Emergency Alert Anforderung an ESP, welcher Ruck verwendet werden soll. Eine Umsetzung der Ruckanforderung im ESP erfolgt nur mit gesetztem Bit 'EA_Ruckfreigabe'."; +CM_ SG_ 294 HCA_01_Sendestatus "Gibt den Sendestatus der HCA_01 an (notwendig für IL-Unterstützung)"; +CM_ SG_ 294 HCA_01_LM_OffSign "Vorzeichen des HCA-Lenkmoments"; +CM_ SG_ 294 HCA_01_Status_HCA "Statusinformation vom HCA und Manoevrierassistent für Handshakemechanismus mit der Lenkung"; +CM_ SG_ 294 HCA_01_Vib_Amp "Momentenamplitude der Lenkradvibration"; +CM_ SG_ 294 EA_Ruckfreigabe "Emergency Alert Freigabit für die Warnruck-Anforderung an das ESP"; +CM_ SG_ 294 EA_ACC_Wunschgeschwindigkeit "Emergency Alert Anforderung neue Wunschgeschwindigkeit"; +CM_ SG_ 302 ACC_Hold_Request "Active request for ABS brake hold in ACC_Hold_Type"; +CM_ SG_ 302 ACC_Boost_Request "Hybrid engine start related"; +CM_ SG_ 302 ACC_Freewheel_Request "Active request for DSG sailing/coasting in ACC_Freewheel_Type"; +CM_ SG_ 302 ACC_Hold_Release "Request to ABS to release brake hold"; +CM_ SG_ 302 ACC_Accel_Secondary "Target acceleration of the secondary controller"; +CM_ SG_ 302 ACC_Accel_TSK "Mirror of request to TSK to implement a target acceleration"; +CM_ SG_ 870 Hazard_Switch "Four-way flashers active"; +CM_ SG_ 870 Comfort_Signal_Left "Comfort turn signal active, left"; +CM_ SG_ 870 Comfort_Signal_Right "Comfort turn signal active, right"; +CM_ SG_ 870 Left_Turn_Exterior_Bulb_1 "Probably front"; +CM_ SG_ 870 Right_Turn_Exterior_Bulb_1 "Probably front"; +CM_ SG_ 870 Left_Turn_Exterior_Bulb_2 "Probably rear"; +CM_ SG_ 870 Right_Turn_Exterior_Bulb_2 "Probably rear"; +CM_ SG_ 870 Fast_Send_Rate_Active "CAN message send rate"; +CM_ SG_ 919 LDW_DLC "Probable DLC (distance to line crossing)"; +CM_ SG_ 919 LDW_TLC "Probable TLC (time to line crossing)"; +CM_ SG_ 919 LDW_Unknown "Might be a steering pressed / driver active flag"; +CM_ SG_ 919 Alert_Message "Static table of alert messages to be invoked in the instrument cluster, some with or without beeps, 0 = no current message"; +CM_ SG_ 919 LDW_Direction "Left/right indicator for DLC and TLC"; +CM_ SG_ 919 Right_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; +CM_ SG_ 919 Left_Lane_Status "Display brightness range, 0 = no lane, 3 = full brightness"; +CM_ SG_ 919 Kombi_Lamp_Orange "Enables orange LDW light in instrument cluster"; +CM_ SG_ 919 Kombi_Lamp_Green "Enables green LDW light in instrument cluster"; +CM_ SG_ 780 Folgefahrt "Following another vehicle"; +CM_ SG_ 780 SetAbstand "Set following distance"; +CM_ SG_ 780 Abstand "Following distance"; +CM_ SG_ 780 SetSpeed "ACC set speed"; +CM_ SG_ 391 MO_Waehlpos "Traditional PRND plus B-mode aggressive regen, B-mode mapped to Drive"; +CM_ SG_ 679 ACC_ADAPTIVE "TSK_06.TSK_Limiter_ausgewaehlt seems to take precedence"; +CM_ SG_ 960 ZAS_Kl_15 "Indicates ignition on"; +CM_ SG_ 1720 KBI_BCmE_aktiv "Anzeige BCmE aktiv (BCmE-Screen oder Einsparhinweis in der Anzeige)"; +CM_ SG_ 1720 KBI_Max_Tankinhalt "Mitteilung des maximalen Tankinhalts an das Reichweitenmodul"; +CM_ SG_ 1720 KBI_Nachtanken_erkannt "Statusinformation Nachtankmodus"; +CM_ SG_ 1720 KBI_Reifenumfang "Mittlerer Radumfang aus der K-Zahl gerechnet in Millimeter. Byte 2 Bit 5,4 reserviert, Byte 2 Bit 3..0 und Byte 1 Bit 7..0; Wertebereich 0..4096 mm +"; +CM_ SG_ 1720 KBI_Reifenumfang_Sekundaer "Fahrzeuge mit unterschiedlichen Reifenumfängen Vorderachse / Hinterachse: + +Primärachse: KBI_Reifenumfang +Sekundärachse: KBI_Reifenumfang_Sekundaer +"; +CM_ SG_ 1720 KBI_Sparhinweis_quittiert "angezeigter Sparhinweis ist quittiert. Signal wird nach zwei Sendebotschaften wieder auf '0' gesetzt."; +CM_ SG_ 1720 KBI_Tankfuellstand_Prozent "Tankfüllstand in %"; +CM_ SG_ 1720 KBI_Tankinhalt_hochaufl "angezeigter Tankinhalt hochauflösend zur Restreichweitenberechnung"; +CM_ SG_ 1720 KBI_Variante "Zeigt an ob es sich um ein konventionelles Zeiger-Kombiinstrument handelt oder um eine Volldisplay-Kombiinstrument"; +CM_ SG_ 1720 KBI_Variante_USA "In diesem Signal wird die HW-Variante des Kombis ausgegeben, ACC plausibilisiert auf dieses Signal hin seine US-Codierung"; + + +VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active" 8 "preempted" ; +VAL_ 173 GE_Fahrstufe 5 "P" 6 "R" 7 "N" 8 "D" 9 "S" 10 "E" 13 "T" 14 "T" ; +VAL_ 288 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault" ; +VAL_ 288 TSK_v_Begrenzung_aktiv 0 "inaktiv" 1 "aktiv" ; +VAL_ 288 TSK_Standby_Anf_ESP 0 "keine_Standby_Anforderung" 1 "Standby_Anforderung" ; +VAL_ 288 TSK_Freig_WU 0 "TSK_Uebersetzungswunsch_nicht_freigegeben" 1 "TSK_Uebersetzungswunsch_freigegeben" ; +VAL_ 288 TSK_Freig_Verzoeg_Anf 0 "Verzoegerungsanforderung_nicht_freigegeben" 1 "Verzoegerungsanforderung_freigegeben" ; +VAL_ 288 TSK_Limiter_ausgewaehlt 0 "kein_Limiter_ausgewaehlt" 1 "Limiter_ausgewaehlt" ; +VAL_ 288 TSK_Wunsch_Uebersetz 0 "Init" ; +VAL_ 288 TSK_Hauptschalter_GRA_ACC 0 "Init" 1 "Aus" 2 "Ein" 3 "Fehler" ; +VAL_ 288 TSK_ax_Getriebe_02 511 "Neutralwert" ; +VAL_ 288 TSK_Zwangszusch_ESP 0 "keine_ESP_ASR_Beeinflussung" 1 "ESP_ASR_Beeinflussung" ; +VAL_ 294 EA_ACC_Sollstatus 0 "Init" 1 "ACC_aktivieren" 2 "ACC_deaktivieren" ; +VAL_ 294 EA_Ruckprofil 0 "Init" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7" ; +VAL_ 294 HCA_01_Sendestatus 0 "HCA_sendet_mit_1000ms" 1 "HCA_sendet_mit_20ms" ; +VAL_ 294 HCA_01_LM_OffSign 0 "positives_Vorzeichen" 1 "negatives_Vorzeichen" ; +VAL_ 294 HCA_01_Status_HCA 0 "deaktiviert" 1 "reserviert" 2 "reserviert" 3 "funktionsbereit" 4 "reserviert" 5 "HCA_Momenteneingriff_1" 6 "MA_Aktiv" 7 "HCA_Momenteneingriff_2" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "reserviert" 15 "reserviert" ; +VAL_ 294 EA_Ruckfreigabe 0 "keine_Freigabe" 1 "Freigabe" ; +VAL_ 294 EA_ACC_Wunschgeschwindigkeit 1023 "Init" ; +VAL_ 346 MO_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; +VAL_ 346 TSK_Status_EA 0 "Aus" 1 "Init_oder_nicht_verbaut" 3 "Aktiv" 4 "Uebertreten" 5 "Abschaltung_laeuft" 6 "Reversibel_aus" 7 "Irreversibel_Aus" ; +VAL_ 346 TSK_vMax_Fahrerassistenz 511 "Init_ungueltig_keine_Beschraenkung" ; +VAL_ 346 TSK_Einheit_vMax_Fahrerassistenz 0 "kmh" 1 "mph" ; +VAL_ 346 TSK_Status_PLA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; +VAL_ 346 TSK_aktives_System 0 "keine_Funktion_aktiv" 1 "GRA_ACC" 2 "ARA" 3 "Speedlimiter" 4 "IPA" 5 "PLA" 6 "PEA_Ausrollassistent" 7 "EA" ; +VAL_ 346 TSK_erhoehter_Fahrwiderstand 0 "kein_erhoehter_Fahrwiderstand" 1 "erhoehter_Fahrwiderstand" ; +VAL_ 346 TSK_Anf_Antriebsmoment 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; +VAL_ 346 TSK_Status_ARA 0 "Aus" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "abschaltung_laeuft" 6 "reversibel_aus" 7 "Fehler" ; +VAL_ 346 TSK_Status_IPA 0 "Aus_Funktionsbereit" 1 "Init_oder_nicht_verbaut" 2 "aktivierbar" 3 "aktiv" 5 "Abschaltung_laueft" 6 "reversibel_aus" 7 "Fehler" ; +VAL_ 798 TSK_Wunschgeschw 1022 "keine_Anzeige" 1023 "kein_Wert_im_Speicher" ; +VAL_ 798 TSK_Texte 0 "kein_Text" 1 "GRA_Modus_ausgewaehlt" 2 "ACC_Modus_ausgewaehlt" 3 "Lim_Modus_ausgewaehlt" 4 "Lim_nicht_verfuegbar_ESC_passiv" 5 "GRA_nicht_verfuegbar_ESC_passiv" 6 "Lim_nicht_verfuegbar_Charisma" 7 "GRA_nicht_verfuegbar_Charisma" 8 "Lim_nicht_verfuegbar_HDC" 9 "GRA_nicht_verfuegbar_HDC" ; +VAL_ 798 TSK_Akustik 0 "keine_Akustik" 1 "einzelner_Warnton" 2 "dauerhafter_Warnton" ; +VAL_ 798 TSK_Texte_Primaeranz 0 "keine_Anzeige" 1 "GRA_Symbol_passiv_xxx_kmh_mph" 2 "GRA_Symbol_aktiv_xxx_kmh_mph" 3 "Bremse_ueberhitzt" 4 "Limiter_Modus_aktiviert" 5 "GRA_Modus_aktiviert" 6 "ACC_Modus_aktiviert" 7 "Opt_Geschwindigkeitswarnung" 8 "Opt_und_akustische_GeschwWarnung" 9 "Opt_GeschwWarnung_dauerhaft_mit_einmal_Akustik" 10 "Limiter_passiv_mit_Akustik" 11 "Limiter_Fehler_mit_Akustik" 12 "Limiter_Symbol_passiv_xxx_kmh_mph" 13 "Limiter_Symbol_aktiv_xxx_kmh_mph" 14 "Popup_Geschw_zu_hoch__Resume_unzulaessig" ; +VAL_ 798 TSK_Limiter_Fahrerinfo 0 "keine_Info" 1 "Limit_erreicht" 2 "Ueberschritten" 3 "Vom_Fahrer_Ueberstimmt" ; +VAL_ 798 TSK_Limiter_Anzeige 0 "Display_Anzeige_GRA_ACC" 1 "Display_Anzeige_Limiter" ; +VAL_ 798 TSK_Fahrzeugstatus_GRA 0 "GRA_verfuegbar" 1 "GRA_nicht_verfuegbar" ; +VAL_ 798 TSK_Fahrzeugstatus_Limiter 0 "Limiter_verfuegbar" 1 "Limiter_nicht_verfuegbar" ; +VAL_ 798 MO_Motorlaufwarnung 0 "keine_Anzeige" 1 "Anforderung_Motorlaufwarnung" ; +VAL_ 798 TSK_Status_Anzeige 0 "Hauptschalter_aus" 1 "Init" 2 "passiv" 3 "aktiv" 4 "Uebertreten" 5 "Limitiierung_aktiv" 6 "reversibel_aus" 7 "irreversibel_aus" ; +VAL_ 780 ACC_Wunschgeschw_02 1023 "keine_Anzeige" ; +VAL_ 780 ACC_Status_Prim_Anz 0 "Symbol nicht beleuchtet" 1 "Farbe 1 (typisch 'gruen')" 2 "Farbe 2 (typisch 'rot')" 3 "Farbe 3 (typisch 'gelb')" ; +VAL_ 780 ACC_Abstandsindex 0 "Sonderanzeige_graue_Fahrbahn" 1022 "Sonderanzeige_graue_Fahrbahn" 1023 "Sonderanzeige_Fahrbahn_mit_gruenem_roten_Bereich" ; +VAL_ 780 ACC_Akustik_02 0 "keine_Akustik" 1 "hochpriore_Akustik" 2 "niederpriore_Akustik" 3 "hochpriore_Dauerakustik" ; +VAL_ 780 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung" ; +VAL_ 780 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert" ; +VAL_ 780 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN" ; +VAL_ 780 ACC_Typ_Tachokranz 0 "Tachokranz_lang" 1 "Tachokranz_kurz" ; +VAL_ 780 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert" ; +VAL_ 780 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; +VAL_ 780 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio" ; +VAL_ 780 ACC_Relevantes_Objekt 0 "Symbol_nicht_beleuchtet" 1 "Farbe_1_typisch_gruen" 2 "Farbe_2_typisch_rot" 3 "Farbe_3_typisch_gelb" ; +VAL_ 780 ACC_Texte_Primaeranz 0 "keine Anzeige" 1 "ACC nicht verfuegbar !" 2 "Auto_Auto_ _ _" 3 "Auto_ _Auto_ _" 4 "Auto_ _ _Auto_" 5 "Auto_ _ _ _Auto" 6 "Auto_Auto_ _ _ Gong (durchgestrichen)" 7 "Auto_ _Auto_ _ Gong (durchgestrichen)" 8 "Auto_ _ _Auto_ Gong (durchgestrichen)" 9 "Auto_ _ _ _Auto Gong (durchgestrichen)" 10 "ACC bereit" 11 "keine Abstandsregelung" 12 "ACC Sensor Sicht !" 13 "ACC nicht verfuegbar" 14 "o o o" 15 "Hochschalten" 16 "ESP Eingriff" 17 "Herunterschalten" 18 "Parkbremse !" 19 "Geschwindigkeitsgrenze" 20 "Waehlhebelposition !" 21 "VDA ACC-Symbol YYY km/h / mph" 22 "Tempolimit XXX km/h / mph" 23 "Kurve XXX km/h / mph" 24 "ACC Abschaltung" 25 "Symbol 'Eieruhr'" 26 "!" 27 "--- km/h / mph" 28 "XXX km/h / mph (Schriftart 2)" 29 "Lenkradwinkel" 30 "Anfahren bestaetigen" 31 "Fahrzeug verloren" 32 "Im Stand nicht moeglich" 33 "Ungueltiger Anfahrbefehl" 34 "Tuer offen !" 35 "Fahrer Gurtschloss offen !" 36 "Schalthebelposition !" 37 "Drehzahl !" 38 "Kurvenassistent aus" 39 "Tempolimit aus" 40 "Abbiegeassistent" 41 "Ortsanfang XXX km/h / mph" 42 "Ortsende XXX km/h / mph" 43 "Tempolimit Ende XXX km/h / mph" 44 "HDC aktiv" 45 "braking guard Bremsruck" 46 "braking guard aus" 47 "braking guard aus" 48 "Uebernehmen !" 49 "Steigung zu gross" 50 "Stehendes Objekt voraus" 51 "SET / 'GRA Symbol'___xxx km/h / mph" 52 "SET / 'GRA Symbol' xxx km/h / mph" 53 "ACC aus" 54 "ACC startet" 55 "ACC reinigen" 56 "ACC Fehler" 57 "ACC haelt an !" 58 "Bremse betaetigen !" 59 "Kupplung betaetigt" 60 "LIM AUS" 61 "LIM AKTIV" 62 "LIM PASSIV" 63 "LIM FEHLER" 64 "Bremse ueberhitzt !" 65 "Bremse haelt !" 66 "ESP PASSIV !" 67 "ACC_anfahrbereit" 68 "Gang_einlegen" 69 "Rechtsueberholen_verhindert" 70 "Linksueberholen_verhindert" 71 "Achtung_Geschwindigkeitsueberschreitung" 72 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar" ; +VAL_ 780 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht" ; +VAL_ 780 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; +VAL_ 780 ACC_Status_Anzeige 0 "ACC_GRA_Hauptschalter_aus" 1 "ACC_in_Init_nicht_bei_GRA" 2 "ACC_GRA_passiv" 3 "ACC_GRA_aktiv" 4 "ACC_GRA_im_Hintergrund_uebertreten" 5 "ACC_GRA_Abschaltreaktion" 6 "ACC_reversibel_aus_nicht_bei_GRA" 7 "ACC_GRA_irreversibel_aus" ; +VAL_ 804 ACC_Texte_Sekundaeranz 0 "keine_Anzeige" 1 "Zielfahrzeug_erkannt" 2 "Rechtskurve_voraus" 3 "Linkskurve_voraus" 4 "Tempolimit_voraus" 5 "Sensorsicht" 6 "Anfahrbereit" 7 "Tempolimit_erkannt" 8 "Kreuzung_voraus" 9 "Kreisverkehr_voraus" ; +VAL_ 804 ACC_Texte_Zusatzanz 0 "keine_Anzeige" 1 "ACC_AUS" 2 "ACC_BEREIT" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_1__dyn" 10 "DISTANZ_2__dyn" 11 "DISTANZ_3__dyn" 12 "DISTANZ_4__dyn" 13 "DISTANZ_1__stand" 14 "DISTANZ_2__stand" 15 "DISTANZ_3__stand" 16 "DISTANZ_4__stand" 17 "DISTANZ_1__comf" 18 "DISTANZ_2__comf" 19 "DISTANZ_3__comf" 20 "DISTANZ_4__comf" 21 "DISTANZ_1__efficiency" 22 "DISTANZ_2__efficiency" 23 "DISTANZ_3__efficiency" 24 "DISTANZ_4__efficiency" 25 "DISTANZ_5" 26 "DISTANZ_5__dyn" 27 "DISTANZ_5__stand" 28 "DISTANZ_5__comf" 29 "DISTANZ_5__efficiency" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanz_Warnung_aktiviert" ; +VAL_ 804 ACC_Status_Zusatzanz 0 "keine Anzeige" 1 "Bild 1 (Fzg. Silhouette, typ. farblos)" 2 "Bild 2 (Fzg. Farbe 1, typ. grau)" 3 "Bild 3 (Fzg. Farbe 2, typ. rot)" 4 "Bild 4 (Symbol 1 ACCplus, typ. Doppelfzg. gelb)" 5 "Bild 5 (Symbol 2 ACCplus, typ. Doppelfzg. grau)" 6 "Bild 6 (Fzg. Farbe 2, typ. rot) mit Priorität im Kombi (Pop-up)" ; +VAL_ 804 ACC_Texte 0 "keine_Anzeige" 1 "ACC_nicht_verfuegbar" 2 "ACC_und_AWV_nicht_verfuegbar" 3 "ACC_keine_Sensorsicht" 4 "ACC_und_AWV_keine_Sensorsicht" 5 "ACC_Steigung_zu_gross" 6 "ACC_nur_in_Fahrstufe_verfuegbar" 7 "ACC_Parkbremse_betaetigt" 8 "ACC_ESP_Eingriff" 9 "ACC_Bitte_uebernehmen" 10 "ACC_HDC_betaetigt" 11 "ACC_Geschwindigkeitsgrenze" 12 "ACC_Schalthebelposition" 13 "ACC_Drehzahl" 14 "ACC_Kupplung_betaetigt" 15 "ACC_Aktivierverhinderung" 16 "ACC_Abschaltung" 17 "ACC_Parkassistent_aktiv" 18 "ACC_ESC_aus" 19 "ACC_Charisma_Modus_inkompatibel" 20 "ACC_Stehendes_Objekt_voraus" 21 "ACA_Fahreruebernahme" 22 "ACA_Querfuehrung_nicht_verfuegbar" ; +VAL_ 804 ACC_Texte_braking_guard 0 "keine_Anzeige" 1 "AWV_aus" 2 "AWV_Warnung" 3 "AWV_Demomodus" 4 "AWV_Systemstoerung" 5 "AWV_Eingriff" 6 "AWV_Vorwarnung_aus" 7 "AWV_keine_Sensorsicht" ; +VAL_ 804 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis" ; +VAL_ 804 ACC_Zeitluecke_Abstandswarner 61 "Freifahrt" 62 "nicht_definiert" 63 "keine_Anzeige" ; +VAL_ 804 ACC_Abstand_Abstandswarner 509 "Freifahrt" 510 "nicht_definiert" 511 "keine_Anzeige" ; +VAL_ 804 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw" ; +VAL_ 804 ACC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15" ; +VAL_ 804 ACC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch" ; +VAL_ 804 ACC_Texte_Abstandswarner 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "zurzeit_eingeschraenkt" ; +VAL_ 290 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert" ; +VAL_ 290 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert" ; +VAL_ 290 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler" ; +VAL_ 290 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; +VAL_ 290 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; +VAL_ 290 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; +VAL_ 290 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert" ; +VAL_ 290 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System" ; +VAL_ 290 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv" ; +VAL_ 302 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler" ; +VAL_ 302 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht" ; +VAL_ 302 ACC_Freilauf_Anf 0 "keine Freilauf-Anforderung" 1 "Freilauf-Anforderung" ; +VAL_ 302 ACC_Freilauf_Info 0 "Freilauf_freigegeben" 1 "kein_Uebergang_in_Freilauf_zulaessig" 2 "Freilauf_nicht_freigegeben" 3 "Freilauf_Anforderung" ; +VAL_ 302 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe" ; +VAL_ 302 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren" ; +VAL_ 302 ACC_Folgebeschl 254 "Neutralwert" ; +VAL_ 302 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler" ; +VAL_ 279 AWV1_Anf_Prefill 0 "Prefill_nicht_aktivieren" 1 "Prefill_aktivieren" ; +VAL_ 279 ANB_CM_Info 0 "Standard" 1 "Erweitert" ; +VAL_ 279 AWV2_Freigabe 0 "keine_Freigabe" 1 "Freigabe" ; +VAL_ 279 AWV1_HBA_Param 0 "Defaultparametersatz" 1 "Parametersatz_mit_leicht_erhoehter_Empfindlichkeit" 2 "Parametersatz_mit_erhoehter_Empfindlichkeit" 3 "Parametersatz_mit_hoechster_Empfindlichkeit" ; +VAL_ 279 AWV2_Priowarnung 0 "Anzeige_Verlassen_der_Fahrspur_wird_nicht_unterdrueckt" 1 "Anzeige_Verlassen_der_Fahrspur_wird_unterdrueckt" ; +VAL_ 279 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv" ; +VAL_ 279 ANB_Info_Teilbremsung 0 "Auspraegung_Standard" 1 "Auspraegung_Erweitert" ; +VAL_ 279 ANB_Notfallblinken 0 "kein_ANB_Notfallblinken" 1 "Notfallblinken_ANB_angefordert" ; +VAL_ 279 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben" ; +VAL_ 279 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben" ; +VAL_ 279 AWV_Vorstufe 0 "keine_Notbremsung_erwartet" 1 "Notbremsung_in_Kuerze" ; +VAL_ 279 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten" ; +VAL_ 279 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich" ; +VAL_ 279 PCF_Freigabe 0 "keine_Freigabe_PreCrashFront" 1 "Freigabe_PreCrashFront" ; +VAL_ 279 AWV1_ECD_Anlauf 0 "ECD_Anlauf_nicht_aktivieren" 1 "ECD_Anlauf_aktivieren" ; +VAL_ 279 PCF_Time_to_collision 255 "Objektstatus=0x0__oder_berechneter_TTC_Wert_groesser_als_Maximalwert" ; +VAL_ 679 ACC_Regelgeschw 1023 "keine_Anzeige" ; +VAL_ 679 ACC_Einheit_maxSetzgeschw 0 "kmh" 1 "mph" ; +VAL_ 679 ACC_maxSetzgeschw 511 "Init_Neutralwert" ; +VAL_ 679 ACC_minRegelgeschw 255 "keine_Anzeige" ; +VAL_ 679 ACC_maxRegelgeschw 255 "keine_Anzeige" ; +VAL_ 679 ACC_Tempolimitassistent 0 "keine_Anzeige" 1 "Tempolimitassistent_aktiv" 2 "Tempolimitassistent_nicht_verfuegbar" 3 "Tempolimitassistent_Fahreruebernahme" ; +VAL_ 679 ACC_Kurvenassistent 0 "keine_Anzeige" 1 "Kreuzung" 2 "Rechtskurve" 3 "Linkskurve" 4 "Kreisverkehr" ; +VAL_ 679 ACC_RUV 0 "keine_Anzeige" 1 "RUV_aktiv_Rechtsverkehr" 2 "RUV_aktiv_Linksverkehr" ; +VAL_ 679 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet" ; +VAL_ 679 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus" ; +VAL_ 679 ACC_ENG_Texte 0 "keine_Anzeige" 1 "keine_Laenderverfuegbarkeit" 2 "nicht_verfuegbar" 3 "Geschwindigkeitsgrenze" ; +VAL_ 679 ACC_ADAPTIVE 1 "adaptive" 2 "non-adaptive" ; +VAL_ 681 AWV_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung" ; +VAL_ 681 AWV_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "nicht_definiert" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt" ; +VAL_ 681 AWV_Status_Anzeige 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" ; +VAL_ 681 AWV_Einstellung_System_FSG 0 "deaktiviert" 1 "aktiviert" ; +VAL_ 681 AWV_Einstellung_Warnung_FSG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein" ; +VAL_ 681 AWV_Warnlevel 0 "keine_Gefaehrdung" 63 "max_Gefaehrdung" ; +VAL_ 391 MO_Waehlpos 2 "P" 3 "R" 4 "N" 5 "D" 6 "D" ; +VAL_ 391 EV_Rekuperationsstufe 0 "default" 1 "B1" 2 "B2" 3 "B3" ; +VAL_ 870 Fast_Send_Rate_Active 0 "1 Hz" 1 "50 Hz" ; +VAL_ 988 EPB_Status 0 "offen" 1 "geschlossen_Parken" 2 "teilgespannt_Halten" 3 "im_Lauf_oeffnen" 4 "im_Lauf_schliessen" 5 "tbd" 6 "Init" 7 "unbekannt"; +VAL_ 988 GE_Fahrstufe 0 "Zwischenstellung" 1 "Init" 5 "P" 6 "R" 7 "N" 8 "D" 9 "D" 10 "E" 13 "T" 14 "T" 15 "Fehler"; +VAL_ 1720 KBI_Variante_USA 0 "keine USA-Variante" 1 "USA-Variante" ; +VAL_ 1720 KBI_Variante 0 "Zeiger Kombiinstrument" 1 "Volldisplay Kombiinstrument" ; +VAL_ 1720 KBI_BCmE_aktiv 0 "Anzeige_nicht_aktiv" 1 "Anzeige_aktiv" ; +VAL_ 1720 KBI_Sparhinweis_quittiert 0 "nicht_quittiert" 1 "quittiert" ; +VAL_ 1720 KBI_Tankfuellstand_Prozent 126 "Init" 127 "Fehler" ; +VAL_ 1720 KBI_Nachtanken_erkannt 0 "Geberbetrieb" 1 "Nachtankmodus" ; +VAL_ 1720 KBI_Tankinhalt_hochaufl 16382 "Init" 16383 "Fehler" ; +VAL_ 1720 KBI_Max_Tankinhalt 254 "Init" 255 "Fehler" ; diff --git a/opendbc_repo/opendbc/dbc/vw_mqbevo.dbc b/opendbc_repo/opendbc/dbc/vw_mqbevo.dbc new file mode 100644 index 0000000000..91be4a2465 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/vw_mqbevo.dbc @@ -0,0 +1,1612 @@ +BO_ 64 Airbag_01: 8 Airbag_MQB + SG_ Airbag_01_CRC : 0|8@1+ (1,0) [0|255] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Airbag_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_RGS_Anst : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_Front_Crash : 16|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Heck_Crash : 17|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_SF_Crash : 18|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_SB_Crash : 19|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Rollover_Crash : 20|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Crash_Int : 21|3@1+ (1,0) [0|7] "" BMS_MQB,Gateway_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_Lampe : 24|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Deaktiviert : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_VB_deaktiviert : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Systemfehler : 27|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ AB_Diagnose : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Stellgliedtest : 29|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AB_Erh_Auf_VB : 30|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtwarn_VF : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Gurtwarn_VB : 33|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Anzeige_Fussg : 34|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Texte_AKS : 36|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_PAO_Leuchte_Anf : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_MKB_gueltig : 39|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_MKB_Anforderung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ AB_Versorgungsspannung : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 65 Airbag_03: 8 Airbag_MQB + SG_ Airbag_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Airbag_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_MKB_Safing : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 134 LWI_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_Sensorstatus : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_QBit_Sub_Daten : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LWI_QBit_Lenkradwinkel : 15|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_Lenkradwinkel : 16|13@1+ (0.1,0) [0|800] "Unit_DegreOfArc" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_VZ_Lenkradwinkel : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LWI_VZ_Lenkradw_Geschw : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LWI_Lenkradw_Geschw : 31|9@1+ (5,0) [0|2500] "Unit_DegreOfArcPerSecon" Vector__XXX + SG_ LWI_Sub_Daten : 40|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 157 Motor_Hybrid_01: 8 Motor_Hybrid_MQB + SG_ Motor_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB + SG_ Motor_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_IstStatusK0 : 12|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_max_ind_VM_Mom : 16|10@1+ (1,0) [0|1021] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Zielzustand : 26|3@1+ (1,0) [0|7] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Startmodus : 29|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ MO_HYB_Startmodus_PQ3x : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Stoppmodus : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_VM_Mom_oE : 40|10@1+ (1,-100) [-100|922] "Unit_NewtoMeter" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_VM_aktiv : 50|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Schaltverhinderung : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + +BO_ 158 Getriebe_Hybrid_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_Hybrid_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Hybrid_MQB + SG_ Getriebe_Hybrid_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB + SG_ GE_HYB_Fehlerstatus : 12|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freigabe_K0 : 16|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freigabe_LL_Reg : 17|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freig_sSchl_K0 : 18|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Freig_VM_EM_Stop : 19|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Wiederstart : 20|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_Filt_MomAufbau : 21|3@1+ (1,0) [0|7] "" Motor_Hybrid_MQB + SG_ GE_HYB_nK0 : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Vector__XXX + SG_ GE_HYB_MomEingriff_EM : 32|6@1+ (0.5,0) [0|31.5] "Unit_NewtoMeter" LEH_MQB + SG_ GE_HYB_VZ_MomEingriff_EM : 38|1@1+ (1,0) [0|1] "" LEH_MQB + SG_ GE_HYB_Sportfaktor : 56|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB + SG_ GE_HYB_VM_akt_halten : 61|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_StartAnf : 62|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + SG_ GE_HYB_VM_Startkontr : 63|1@1+ (1,0) [0|1] "" Motor_Hybrid_MQB + +BO_ 159 LH_EPS_03: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_DSR_Status : 12|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Berechneter_LW : 16|12@1+ (0.15,0) [0|613.95] "Unit_DegreOfArc" XXX + SG_ EPS_BLW_QBit : 30|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_BLW : 31|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_HCA_Status : 32|4@1+ (1,0) [0|15] "" XXX + SG_ EPS_Lenkmoment : 40|10@1+ (1,0) [0|8] "Unit_centiNewtoMeter" XXX + SG_ EPS_Lenkmoment_QBit : 54|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_VZ_Lenkmoment : 55|1@1+ (1,0) [0|1] "" XXX + SG_ EPS_Lenkungstyp : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 167 Motor_11: 8 Motor_Diesel_MQB + SG_ Motor_11_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Motor_11_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_Roh : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Ist_Summe : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,SAK_MQB + SG_ MO_Mom_Traegheit_Summe : 32|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Soll_gefiltert : 42|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Schub : 52|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Normalbetrieb_01 : 61|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_erste_Ungenauschwelle : 62|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Motormomente : 63|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 168 Motor_12: 8 Motor_Diesel_MQB + SG_ Motor_12_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ Motor_12_BZ : 8|4@1+ (1,0) [0|15] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Mom_neg_verfuegbar : 12|9@1+ (1,-509) [-509|0] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Mom_Begr_stat : 21|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Begr_dyn : 30|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB + SG_ MO_Momentenintegral_02 : 40|7@1+ (1,0) [0|100] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Drehzahl_01 : 47|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Drehzahl_01 : 48|16@1+ (0.25,0) [0|16383] "Unit_MinutInver" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + +BO_ 173 Getriebe_11: 8 Getriebe_DQ_Hybrid_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTERXX : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_MMom_Soll_02 : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_MMom_Vorhalt_02 : 22|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Uefkt : 32|10@1+ (0.1,0) [0|102.2] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Fahrstufe : 42|5@1+ (1,0) [0|31] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Schaltvorgang : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Status_Kupplung : 54|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_MMom_Status : 56|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freig_MMom_Vorhalt : 58|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Verbot_Ausblendung : 59|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Zielgang : 60|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 174 Getriebe_12: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_12_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Getriebe_12_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Drehzahlmesser_Daempfung : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Schubabschalt_Unt : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freigabe_Synchro : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Synchro_Wunschdrehz : 15|9@1+ (25,0) [0|12750] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Synchro_Zeit : 24|8@1+ (20,0) [0|5080] "Unit_MilliSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Mom_Begr_Gradient : 32|8@1+ (10,0) [0|2540] "Unit_NewtoMeterPerSecon" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Anheb_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Aufnahmemoment : 48|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Anf_Zylabsch : 58|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ GE_HYB_DZ_Eingriff : 62|2@1+ (1,0) [0|3] "" Motor_Hybrid_MQB + +BO_ 175 Waehlhebel_03: 4 Waehlhebel_MQB + SG_ WH_Status_Sperre : 0|3@1+ (1,0) [0|7] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Initialisierung : 3|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_SensorPos_roh : 4|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_03_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_SensorPos_roh_inv : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Testergebnis : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Test_Aktiv : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WH_Status : 25|7@1+ (1,0) [0|127] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 178 ESP_19: 8 Gateway_MQB + SG_ ESP_HL_Radgeschw_02 : 0|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Radgeschw_02 : 16|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Radgeschw_02 : 32|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Radgeschw_02 : 48|16@1+ (0.0075,0) [0|491.49] "Unit_KiloMeterPerHour" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 252 ESP_NEW_1: 48 XXX + SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ WHEEL_SPEED_RL : 64|16@1+ (0.0075,0) [0|65535] "" XXX + SG_ WHEEL_SPEED_RR : 80|16@1+ (0.0075,0) [0|65535] "" XXX + SG_ WHEEL_SPEED_FL : 96|16@1+ (0.0075,0) [0|65535] "" XXX + SG_ WHEEL_SPEED_FR : 112|16@1+ (0.0075,0) [0|65535] "" XXX + +BO_ 253 ESP_21: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BR_Eingriffsmoment : 12|10@1+ (1,-509) [-509|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_v_Signal : 32|16@1+ (0.01,0) [0|655.32] "Unit_KiloMeterPerHour" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ ASR_Tastung_passiv : 48|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Tastung_passiv : 49|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Systemstatus : 50|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ASR_Schalteingriff : 51|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Haltebestaetigung : 53|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_v_Signal : 55|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ABS_Bremsung : 56|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ASR_Anf : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ MSR_Anf : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EBV_Eingriff : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EDS_Eingriff : 60|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Eingriff : 61|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_ASP : 62|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Anhaltevorgang_ACC_aktiv : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 257 ESP_02: 8 Gateway_MQB + SG_ ESP_02_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_02_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Gierrate : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_QBit_Laengsbeschl : 13|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Querb : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Stillstandsflag : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Querbeschleunigung : 16|8@1+ (0.01,-1.27) [-1.27|1.27] "Unit_ForceOfGravi" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Laengsbeschl : 24|10@1+ (0.03125,-16) [-16|15.90625] "Unit_MeterPerSeconSquar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verteil_Wankmom : 34|5@1+ (0.1,-1) [-1|1] "" Vector__XXX + SG_ ESP_QBit_Anf_Vert_Wank : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Gierrate : 40|14@1+ (0.01,0) [0|163.82] "Unit_DegreOfArcPerSecon" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_VZ_Gierrate : 54|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Notbremsanzeige : 55|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_SpannungsAnf : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_PLA_Abbruch : 57|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ ESP_Status_ESP_PLA : 60|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 258 ESP_NEW_2: 48 XXX + SG_ LATERAL_ACCEL : 16|8@1+ (1,0) [0|255] "" XXX + SG_ LONGITUDINAL_ACCEL : 24|8@1- (1,0) [0|255] "" XXX + SG_ YAW_RATE : 40|14@1+ (1,0) [0|16383] "" XXX + SG_ YAW_RATE_SIGN : 54|1@1+ (1,0) [0|1] "" XXX + +BO_ 260 EPB_01: 8 Gateway_MQB + SG_ EPB_01_CRC : 0|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_01_BZ : 8|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_QBit_Laengsbeschleunigung : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_QBit_Pedalweg_Kuppl : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_BCM2_Motor_Wakeup : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_Freig_Verzoeg_Anf : 15|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_Verzoeg_Anf : 16|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" Vector__XXX + SG_ EPB_Laengsbeschleunigung : 24|8@1+ (1,-128) [-128|126] "Unit_PerCentOfForceOfGravi" Vector__XXX + SG_ EPB_Pedalweg_Kuppl : 32|8@1+ (0.4,0) [8|92] "Unit_PerCent" Vector__XXX + SG_ EPB_Anfahrwunsch_erkannt : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_DAA_Randbed_erf : 49|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ EPB_Fehlerstatus : 50|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EPB_Schalterposition : 52|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_QBit_Schalterpos : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ EPB_Konsistenz_ACC : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EPB_Spannkraft : 56|5@1+ (1,0) [0|29] "Unit_KiloNewto" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ EPB_Status : 61|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 262 ESP_05: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Bremsdruck : 12|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Fahrer_bremst : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Schwelle_Unterdruck : 14|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Bremsdruck : 16|10@1+ (0.3,-30) [-30|276.6] "Unit_Bar" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Fahrer_bremst : 26|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verz_TSK_aktiv : 27|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Lenkeingriff_ADS : 28|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Konsistenz_TSK : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Bremsruck_AWV2 : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Konsistenz_AWV2 : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ECD_Fehler : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ECD_nicht_verfuegbar : 33|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Status_Bremsentemp : 34|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Autohold_Standby : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_HDC_Standby : 36|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_HBA_aktiv : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Prefill_ausgeloest : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Rueckwaertsfahrt_erkannt : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Status_Anfahrhilfe : 40|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HDC_aktiv : 41|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_StartStopp_Info : 42|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ESP_Eingr_HL : 44|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_HR : 45|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_VL : 46|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Eingr_VR : 47|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_BKV_Unterdruck : 48|8@1+ (4,0) [0|1012] "Unit_MilliBar" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Autohold_aktiv : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_FStatus_Anfahrhilfe : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Verz_EPB_aktiv : 58|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ECD_Bremslicht : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Verzoeg_EPB_verf : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Status_Bremsdruck : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Anforderung_EPB : 62|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 263 Motor_04: 8 Motor_Diesel_MQB + SG_ MO_Istgang : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Sollgang : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Oeldruck : 16|8@1+ (0.04,0) [0|10] "Unit_Bar" Gateway_MQB + SG_ MO_Anzeigedrehz : 24|12@1+ (3,0) [0|12282] "Unit_MinutInver" Gateway_MQB + SG_ MO_Schaltempf_verfbar : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Ladedruck : 39|9@1+ (0.01,0) [0|5.1] "Unit_Bar" Gateway_MQB + SG_ MO_KVS : 48|15@1+ (1,0) [0|32767] "Unit_MicroLiter" Gateway_MQB + SG_ MO_KVS_Ueberlauf : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 264 Fahrwerk_01: 8 XXX + SG_ Fahrwerk_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ Fahrwerk_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 267 MOTOR_NEW_1: 32 XXX + SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACCEL_PEDAL : 12|8@1+ (0.4,0) [0|255] "" XXX + SG_ TSK_STATUS : 88|3@1+ (1,0) [0|7] "" XXX + +BO_ 278 ESP_10: 8 Gateway_MQB + SG_ ESP_10_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_10_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VL : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_VR : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HL : 14|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_QBit_Wegimpuls_HR : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VL : 16|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_VR : 26|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HL : 36|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Wegimpuls_HR : 46|10@1+ (1,0) [0|1000] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VL_Fahrtrichtung : 56|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_VR_Fahrtrichtung : 58|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HL_Fahrtrichtung : 60|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_HR_Fahrtrichtung : 62|2@1+ (1,0) [0|3] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 279 ACC_10: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AWV1_Anf_Prefill : 16|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_CM_Info : 17|1@1+ (1,0) [0|1] "" XXX + SG_ AWV2_Freigabe : 18|1@1+ (1,0) [0|1] "" XXX + SG_ AWV1_HBA_Param : 19|2@1+ (1,0) [0|3] "" XXX + SG_ AWV2_Ruckprofil : 21|3@1+ (1,0) [0|7] "" XXX + SG_ AWV2_Priowarnung : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_CM_Anforderung : 25|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Info_Teilbremsung : 26|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Notfallblinken : 27|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Teilbremsung_Freigabe : 28|1@1+ (1,0) [0|1] "" XXX + SG_ ANB_Zielbrems_Teilbrems_Verz_Anf : 29|10@1+ (0.024,-20.016) [-20.016|4.536] "Unit_MeterPerSeconSquar" XXX + SG_ ANB_Zielbremsung_Freigabe : 39|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Vorstufe : 40|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Halten : 41|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_CityANB_Auspraegung : 42|1@1+ (1,0) [0|1] "" XXX + SG_ PCF_Freigabe : 43|1@1+ (1,0) [0|1] "" XXX + SG_ AWV1_ECD_Anlauf : 44|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_AWA_VZ_Anf_Lenkmomoffset : 46|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_AWA_Anf_Lenkmomoffset : 47|9@1+ (0.01,0) [0|5.11] "Unit_NewtoMeter" XXX + SG_ PCF_Time_to_collision : 56|8@1+ (0.01,0) [0|2.5] "Unit_Secon" XXX + +BO_ 286 VehicleSpeed: 8 XXX + SG_ VehicleSpeed_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ VehicleSpeed_BZ : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Speed : 52|12@1+ (0.125,0) [0|1] "" XXX + +BO_ 288 TSK_06: 8 Motor_Diesel_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Radbremsmom : 12|12@1+ (8,0) [0|32760] "Unit_NewtoMeter" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Status : 24|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_v_Begrenzung_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Standby_Anf_ESP : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Freig_Verzoeg_Anf : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Limiter_ausgewaehlt : 31|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_ax_Getriebe_02 : 48|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Zwangszusch_ESP : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_zul_Regelabw : 58|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 289 Motor_20: 8 Motor_Diesel_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|255] "" XXX + SG_ MO_Fahrpedalrohwert_01 : 12|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Fahrpedalwerte_01 : 20|1@1+ (1,0) [0|1] "" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Fahrpedalgradient : 21|8@1+ (25,0) [0|6350] "Unit_PerCentPerSecon" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Sig_Fahrpedalgradient : 29|1@1+ (1,0) [0|1] "" Airbag_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_rel_Saugrohrdruck : 30|6@1+ (18,0) [0|1116] "Unit_MilliBar" Gateway_MQB + SG_ MO_rel_Saugrohrdruck_gem_err : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Moment_im_Leerlauf : 37|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Schubabschaltung : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Solldrehz_Leerlauf : 40|8@1+ (10,0) [0|2540] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 290 ACC_06: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_limitierte_Anfahrdyn : 12|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_nachtr_Stopp_Anf : 13|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_DynErhoehung : 14|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilaufstrategie_TSK : 15|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_zul_Regelabw_unten : 16|6@1+ (0.024,0) [0|1.512] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_StartStopp_Info : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Sollbeschleunigung_02 : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_zul_Regelabw_oben : 35|5@1+ (0.0625,0) [0|1.9375] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_neg_Sollbeschl_Grad_02 : 40|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_pos_Sollbeschl_Grad_02 : 48|8@1+ (0.05,0) [0|12.75] "Unit_MeterPerCubicSecon" XXX + SG_ ACC_Anfahren : 56|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anhalten : 57|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ : 58|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Status_ACC : 60|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Minimale_Bremsung : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 294 HCA_01: 8 Frontsensorik + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Freq : 12|4@1+ (1,15) [15|30] "Unit_Hertz" Vector__XXX + SG_ HCA_01_LM_Offset : 16|9@1+ (1,0) [0|511] "Unit_centiNewtoMeter" Vector__XXX + SG_ EA_ACC_Sollstatus : 25|2@1+ (1,0) [0|3] "" Frontradar + SG_ EA_Ruckprofil : 27|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ HCA_01_Sendestatus : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_LM_OffSign : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ HCA_01_Status_HCA : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ HCA_01_Vib_Amp : 36|4@1+ (0.2,0) [0|3] "Unit_NewtoMeter" Vector__XXX + SG_ EA_Ruckfreigabe : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EA_ACC_Wunschgeschwindigkeit : 41|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" Frontradar + +BO_ 296 Getriebe_06: 3 Getriebe_DQ_Hybrid_MQB + SG_ GE_WH_Sperre : 0|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Ausleuchtungsmode : 1|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Test_Freigabe : 2|1@1+ (1,0) [0|1] "" Waehlhebel_MQB + SG_ GE_Ist_Fahrstufe : 4|4@1+ (1,0) [0|15] "" Waehlhebel_MQB + SG_ GE_Testparameter_1 : 8|8@1+ (1,0) [0|255] "" Waehlhebel_MQB + SG_ GE_Testparameter_2 : 16|8@1+ (1,0) [0|255] "" Waehlhebel_MQB + +BO_ 299 GRA_ACC_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Hauptschalter : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Abbrechen : 13|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Typ_Hauptschalter : 14|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Limiter : 15|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Setzen : 16|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Hoch : 17|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Runter : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Wiederaufnahme : 19|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Verstellung_Zeitluecke : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Codierung : 22|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Fehler : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Typ468 : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_Tip_Stufe_2 : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GRA_ButtonTypeInfo : 28|2@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ MAYBE_TRAVEL_ASSIST : 30|1@1+ (1,0) [0|1] "" XXX + +BO_ 301 Getriebe_13: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_13_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Getriebe_13_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_StartStopp_Info : 12|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ GE_Langfr_Schutzmom_02 : 14|9@1+ (1,0) [0|509] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Eingangsdrehz : 48|14@1+ (1,0) [0|16381] "Unit_MinutInver" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Notlauf : 62|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freig_Langfr_Schutzmom : 63|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 302 ACC_07: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Anhalteweg : 12|11@1+ (0.01,0) [0|20.45] "Unit_Meter" XXX + SG_ ACC_Anhalten : 23|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Boost_Anf : 24|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilauf_Anf : 25|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Freilauf_Info : 26|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Anforderung_HMS : 28|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Anfahren : 31|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Folgebeschl : 32|8@1+ (0.03,-4.6) [-4.6|2.99] "Unit_MeterPerSeconSquar" XXX + SG_ ACC_Sollbeschleunigung_02 : 53|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + +BO_ 313 ESP_NEW_3: 32 XXX + SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BRAKE_PRESSED_1 : 16|1@1+ (1,0) [0|1] "" XXX + SG_ BRAKE_PRESSED_2 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ BRAKE_PRESSED_3 : 48|1@1+ (1,0) [0|1] "" XXX + SG_ BRAKE_PRESSURE : 76|10@1+ (1,0) [0|1023] "" XXX + +BO_ 317 MOTOR_NEW_2: 32 XXX + SG_ XCHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ UNKNOWN : 76|10@1+ (1,0) [0|1023] "" XXX + +BO_ 333 ACC_NEW_1: 32 XXX + SG_ NEW_SIGNAL_1 : 24|12@1+ (1,0) [0|4095] "" XXX + SG_ NEW_SIGNAL_2 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ NEW_SIGNAL_3 : 248|8@1+ (1,0) [0|255] "" XXX + +BO_ 387 CAMERA_NEW_3_HF: 64 XXX + SG_ NEW_SIGNAL_1 : 28|12@1+ (1,0) [0|15] "" XXX + +BO_ 391 EV_Gearshift: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ RegenBrakingMode : 12|2@1+ (1,0) [0|3] "" XXX + SG_ GearPosition : 16|4@1+ (1,0) [0|255] "" XXX + +BO_ 418 ESP_15: 8 XXX + SG_ ESP_15_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_15_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 420 CAMERA_NEW_11: 8 XXX + +BO_ 427 ESP_33: 8 XXX + SG_ ESP_33_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ESP_33_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 496 CAMERA_NEW_10: 8 XXX + +BO_ 519 CAMERA_NEW_1_HF: 64 XXX + SG_ NEW_SIGNAL_2 : 36|11@1+ (1,0) [0|2047] "" XXX + SG_ NEW_SIGNAL_1 : 48|12@1+ (1,0) [0|4095] "" XXX + +BO_ 564 CAMERA_NEW_2_HF: 64 XXX + +BO_ 589 NEW_MSG_24D: 64 XXX + SG_ NEW_SIGNAL_1 : 24|12@1+ (1,0) [0|4095] "" XXX + +BO_ 619 CAMERA_NEW_5: 8 XXX + +BO_ 679 ACC_13: 8 XXX + SG_ ACC_Regelgeschw : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Einheit_maxSetzgeschw : 22|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_maxSetzgeschw : 23|9@1+ (1,0) [0|510] "" XXX + SG_ ACC_minRegelgeschw : 32|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX + SG_ ACC_maxRegelgeschw : 40|8@1+ (0.32,0) [0|81.28] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Tempolimitassistent : 48|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Kurvenassistent : 52|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_RUV : 56|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Tachokranz : 58|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz_unten : 59|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_ENG_Texte : 60|2@1+ (1,0) [0|3] "" XXX + +BO_ 681 ACC_15: 8 XXX + SG_ AWV_Warnung : 16|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Texte : 24|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Status_Anzeige : 32|2@1+ (1,0) [0|3] "" XXX + SG_ AWV_Einstellung_System_FSG : 34|1@1+ (1,0) [0|1] "" XXX + SG_ AWV_Einstellung_Warnung_FSG : 36|3@1+ (1,0) [0|7] "" XXX + SG_ AWV_Warnlevel : 58|6@1+ (1,0) [0|63] "" XXX + +BO_ 695 RCTA_01: 8 XXX + SG_ RCTA_01_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ RCTA_01_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 768 ACC_NEW_2: 48 XXX + SG_ SET_SPEED : 76|10@1+ (0.32,0) [0|163.51] "kmh" XXX + SG_ NEW_SIGNAL_2 : 86|10@1+ (1,0) [0|1023] "" XXX + SG_ NEW_SIGNAL_3 : 96|8@1+ (1,0) [0|255] "" XXX + +BO_ 771 HCA_NEW: 24 XXX + SG_ ENABLED_1 : 13|2@1+ (1,0) [0|3] "" XXX + SG_ SET_ME_0X54 : 16|7@1+ (1,0) [0|127] "" XXX + SG_ ASSIST_TORQUE : 24|10@1+ (1,0) [0|1023] "" XXX + SG_ ASSIST_DIRECTION : 39|1@1+ (1,0) [0|1] "" XXX + SG_ ENABLED_2 : 66|1@1+ (1,0) [0|1] "" XXX + +BO_ 779 Kombi_01: 8 Gateway_MQB + SG_ KBI_ABS_Lampe : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_ESP_Lampe : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_BKL_Lampe : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Airbag_Lampe : 3|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_SILA_gueltig : 4|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_Lenkung_Lampe : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Vorglueh_System_Lampe : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ KBI_NV_in_Anzeige : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Kombi_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Anzeigestatus_ACC : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigestatus_GRA : 13|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Oeldruck_Schalter : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Tankwarnung : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_MFA_v_Einheit_01 : 17|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_im_Stellgliedtest : 18|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ KBI_Anzeigefehler_LDW : 19|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Variante_USA : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Oeldruckwarnung : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Handbremse : 23|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ KBI_V_Digital : 24|9@1+ (1,0) [0|511] "" Vector__XXX + SG_ KBI_PLA_in_Anzeige : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigefehler_NV : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigestatus_LIM : 35|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_angez_Geschw : 48|10@1+ (0.32,0) [0|325.12] "Unit_KiloMeterPerHour" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Einheit_Tacho : 58|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Konsistenz_ACC : 59|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Fehler_Anzeige_ACC : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Anzeigefehler_SWA : 61|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 780 ACC_02: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Wunschgeschw_02 : 12|10@1+ (0.32,0) [0|327.04] "Unit_KiloMeterPerHour" XXX + SG_ ACC_Status_Prim_Anz : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Abstandsindex : 24|10@1+ (1,0) [1|1021] "" XXX + SG_ ACC_Akustik_02 : 34|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Warnung_Verkehrszeichen_1 : 36|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Gesetzte_Zeitluecke : 37|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Optischer_Fahrerhinweis : 40|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz : 41|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Anzeige_Zeitluecke : 42|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Tachokranz : 43|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Display_Prio : 44|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Relevantes_Objekt : 46|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Texte_Primaeranz : 48|7@1+ (1,0) [0|127] "" XXX + SG_ ACC_Wunschgeschw_erreicht : 55|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Typ_Tachokranz_unten : 60|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" XXX + +BO_ 783 SWA_01: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ SWA_Anzeigen : 12|4@1+ (1,0) [0|15] "" Kombi_D4 + SG_ SWA_Blindheit_erkannt : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_rel_Nichtverf : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_rel_Fehler : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Sta_aktiv : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Sta_passiv : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Standziele_li : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Kolonne_li : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Kolonne_mi : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Standziele_re : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Kolonne_re : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SWA_Gischtzaehler : 48|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ SWA_KD_Fehler : 59|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 792 Kamera_Status: 8 XXX + +BO_ 798 TSK_07: 8 Motor_Diesel_MQB + SG_ TSK_07_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ TSK_07_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ TSK_Wunschgeschw : 12|10@1+ (0.32,0) [0|326.72] "Unit_KiloMeterPerHour" Gateway_MQB + SG_ TSK_Texte_Primaeranz : 48|5@1+ (1,0) [0|31] "" Gateway_MQB + SG_ TSK_Limiter_Anzeige : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Status_Anzeige : 61|3@1+ (1,0) [0|7] "" Gateway_MQB + +BO_ 804 ACC_04: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Texte_Sekundaeranz : 12|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Texte_Zusatzanz : 16|6@1+ (1,0) [0|63] "" XXX + SG_ ACC_Status_Zusatzanz : 22|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Texte : 27|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Texte_braking_guard : 32|3@1+ (1,0) [0|7] "" XXX + SG_ ACC_Warnhinweis : 35|1@1+ (1,0) [0|1] "" XXX + SG_ ACC_Zeitluecke_Abstandswarner : 36|6@1+ (0.1,0) [0|6] "Unit_Secon" XXX + SG_ ACC_Abstand_Abstandswarner : 42|9@1+ (1,0) [0|508] "" XXX + SG_ ACC_Tempolimit : 51|5@1+ (1,0) [0|31] "" XXX + SG_ ACC_Charisma_FahrPr : 56|4@1+ (1,0) [0|15] "" XXX + SG_ ACC_Charisma_Status : 60|2@1+ (1,0) [0|3] "" XXX + SG_ ACC_Texte_Abstandswarner : 62|2@1+ (1,0) [0|3] "" XXX + +BO_ 811 Motor_Hybrid_02: 8 Motor_Hybrid_MQB + SG_ MO_HYB_E_Faktor : 12|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_Drehzahl_VM : 16|16@1+ (0.25,0) [0|16256] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB + SG_ MO_HYB_LowSpeedModus : 32|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB + +BO_ 812 Motor_17: 8 Motor_Diesel_MQB + SG_ MO_Prio_MAX_Wunschdrehzahl : 12|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Prio_MIN_Wunschdrehzahl : 13|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Luftpfad_aktiv : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_v_Begrenz_Aktivierbar : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ MO_Drehzahlbeeinflussung : 16|8@1+ (0.39,0) [0|99.45] "Unit_PerCent" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_MIN_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_MAX_Wunschdrehzahl : 32|9@1+ (25,0) [0|12750] "Unit_MinutInver" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Charisma_FahrPr : 41|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Charisma_Status : 45|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 869 BEM_05: 8 Gateway_MQB + SG_ BEM_P_Generator : 16|8@1+ (50,0) [0|12700] "Unit_Watt" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_n_LLA : 24|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_01_Abschaltstufen : 26|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Anf_KL : 29|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_StartStopp_Info : 30|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BEM_DFM : 32|5@1+ (3.225,0.025) [0.025|100] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_EMLIN_ungueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Batt_Ab : 38|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_Segel_Info : 48|2@1+ (1,0) [0|3] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BEM_HYB_DC_uSollLV : 50|6@1+ (0.1,10.6) [10.6|16] "Unit_Volt" LEH_MQB + SG_ BEM_HYB_DC_uMinLV : 56|8@1+ (0.1,0) [0|25.3] "Unit_Volt" LEH_MQB + +BO_ 870 Blinkmodi_02: 8 XXX + SG_ Hazard_Switch : 20|1@1+ (1,0) [0|1] "" XXX + SG_ Comfort_Signal_Left : 23|1@1+ (1,0) [0|1] "" XXX + SG_ Comfort_Signal_Right : 24|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Turn_Exterior_Bulb_1 : 25|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Turn_Exterior_Bulb_1 : 26|1@1+ (1,0) [0|1] "" XXX + SG_ Left_Turn_Exterior_Bulb_2 : 27|1@1+ (1,0) [0|1] "" XXX + SG_ Right_Turn_Exterior_Bulb_2 : 28|1@1+ (1,0) [0|1] "" XXX + SG_ Fast_Send_Rate_Active : 37|1@1+ (1,0) [0|1] "" XXX + +BO_ 873 CAMERA_NEW_4: 8 XXX + +BO_ 901 Charisma_01: 8 Gateway_MQB + SG_ CHA_Ziel_FahrPr_ALR : 0|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_ESP : 4|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_FL : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Fahrer_Umschaltung : 14|1@1+ (1,0) [0|1] "" Airbag_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ CHA_Ziel_FahrPr_MO : 16|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ CHA_Ziel_FahrPr_GE : 20|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ CHA_Ziel_FahrPr_ST : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_SCU : 28|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_DR : 32|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_QS : 36|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_AFS : 40|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_RGS : 44|4@1+ (1,0) [0|15] "" Airbag_MQB + SG_ CHA_Ziel_FahrPr_EPS : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_ACC : 52|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ CHA_Ziel_FahrPr_SAK : 56|4@1+ (1,0) [0|15] "" SAK_MQB + SG_ CHA_Ziel_FahrPr_MStSt : 60|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 913 OBD_01: 8 Motor_Diesel_MQB + SG_ OBD_Calc_Load_Val : 0|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Eng_Cool_Temp : 8|8@1+ (1,-40) [-40|215] "Unit_DegreCelsi" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Throttle_Pos : 16|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Load_Val : 24|16@1+ (0.39215686275,0) [0|25700] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Abs_Pedal_Pos : 40|8@1+ (0.39215686275,0) [0|100] "Unit_PerCent" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Kaltstart_Denominator : 59|1@1+ (1,0) [0|1] "" BMS_MQB,LEH_MQB + SG_ OBD_Minimum_Trip : 60|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Driving_Cycle : 61|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Warm_Up_Cycle : 62|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ OBD_Normed_Trip : 63|1@1+ (1,0) [0|1] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + +BO_ 914 ESP_07: 8 Gateway_MQB + SG_ ESP_07_CRC : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_07_BZ : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_ACC_LDE : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Quattro_Antrieb : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Codierung_ADS : 14|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_RTA_HL : 16|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ ESP_RTA_HR : 24|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ ESP_RTA_VR : 32|8@1+ (0.048828125,-6.20117) [-6.20117|6.152345625] "Unit_PerCent" Vector__XXX + SG_ OBD_Fehler_Radsensor_HL : 40|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_HR : 44|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_VL : 48|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_Fehler_Radsensor_VR : 52|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ESP_Qualifizierung_Antriebsart : 56|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_Offroad_Modus : 57|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_MKB_ausloesbar : 58|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_MKB_Status : 59|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ESP_CM_Variante : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ESP_OBD_Status : 61|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 916 WBA_03: 8 Getriebe_DQ_Hybrid_MQB + SG_ WBA_03_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ WBA_03_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_Fahrstufe_02 : 12|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_ZielFahrstufe : 16|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_GE_Warnung_02 : 20|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ WBA_eing_Gang_02 : 24|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ WBA_GE_Texte : 28|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ WBA_Segeln_aktiv : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WBA_Schaltschema : 32|5@1+ (1,0) [0|31] "" Gateway_MQB + +BO_ 917 LWR_AFS_01: 8 XXX + +BO_ 919 LDW_02: 8 XXX + SG_ LDW_Gong : 12|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_SW_Warnung_links : 14|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_rechts : 15|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Texte : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Seite_DLCTLC : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lernmodus : 21|3@1+ (1,0) [0|7] "" XXX + SG_ LDW_Anlaufsp_VLR : 24|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Vib_Amp_VLR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Anlaufzeit_VLR : 32|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Lernmodus_rechts : 36|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus_links : 38|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_DLC : 40|8@1+ (0.01,-1.25) [-1.25|1.25] "Unit_Meter" XXX + SG_ LDW_TLC : 48|5@1+ (0.1,0) [0|3] "Unit_Secon" XXX + SG_ LDW_Warnung_links : 56|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Warnung_rechts : 57|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Codierinfo_fuer_VLR : 58|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Frontscheibenheizung_aktiv : 60|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gelb : 61|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Status_LED_gruen : 62|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 945 DC_Hybrid_01: 8 LEH_MQB + SG_ DC_HYB_iAktLV : 12|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB + SG_ DC_HYB_iAktReserveLV : 22|10@1+ (1,-511) [-511|510] "Unit_Amper" Gateway_MQB + SG_ DC_HYB_uAktLV : 32|8@1+ (0.1,0) [0|25.3] "Unit_Volt" Gateway_MQB + SG_ DC_HYB_LangsRegelung : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Abregelung_Temperatur : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_RedLeistung : 42|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_intern : 43|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Fehler_Spannung : 44|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ DC_HYB_Auslastungsgrad : 56|8@1+ (0.4,0) [0|100] "Unit_PerCent" Gateway_MQB + +BO_ 949 Klima_11: 8 Gateway_MQB + SG_ KL_Drehz_Anh : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Vorwarn_Komp_ein : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_AC_Schalter : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Komp_Moment_alt : 3|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zonen : 4|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Vorwarn_Zuheizer_ein : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Zustand : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Comp_rev_rq : 8|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX + SG_ KL_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ KL_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Comp_enable : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Last_Kompr : 24|8@1+ (0.25,0) [0|63.5] "Unit_NewtoMeter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_Spannungs_Anf : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KL_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_StartStopp_Info : 36|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ KL_Anf_KL : 40|8@1+ (0.4,0) [0|101.6] "Unit_PerCent" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KL_el_Zuheizer_Stufe : 48|3@1+ (1,0) [0|7] "" Motor_Diesel_MQB + +BO_ 958 Motor_14: 8 Motor_Diesel_MQB + SG_ MO_StartStopp_Status : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_StartStopp_Wiederstart : 14|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_StartStopp_Motorstopp : 15|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Freig_Reku : 16|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Kl_75 : 18|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Kl_50 : 19|1@1+ (1,0) [0|1] "" Gateway_MQB,LEH_MQB + SG_ MO_Gangposition : 20|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_StartStopp_Fahrerwunsch : 24|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_HYB_Fahrbereitschaft : 26|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB + SG_ MO_Ext_E_Fahrt_aktiv : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Fahrer_bremst : 28|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Fahrer_bremst : 29|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_BLS : 30|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Konsistenz_Bremsped : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Timeout_ESP : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Klima_Eingr : 33|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Aussp_Anlass : 35|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Freig_Anlass : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Kuppl_schalter : 37|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Interlock : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Motor_laeuft : 39|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kickdown : 40|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Status_Zylabschalt_01 : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_EKlKomLeiRed : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Handshake_STH : 44|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_BKV_Unterdruckwarnung : 45|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Freigabe_Segeln : 46|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_PTC_Status : 47|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_QBit_Gangposition : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Signalquelle_Gangposition : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Remotestart_Betrieb : 52|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 960 Klemmen_Status_01: 4 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ZAS_Kl_S : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZAS_Kl_15 : 17|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ ZAS_Kl_X : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZAS_Kl_50 : 19|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 967 Motor_26: 8 Motor_Diesel_MQB + SG_ MO_HYB_Status_HV_Ladung : 8|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ WIV_Anzeige_aktiv : 12|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelmin_Warn : 13|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Sensorfehler : 14|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Schieflage : 15|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelstand : 16|4@1+ (12.5,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_Zustand_HWP : 20|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ WIV_Oelsystem_aktiv : 24|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_nicht_betriebswarm : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Ueberfuell_Warn : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_laufender_Motor : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_1 : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_2 : 29|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_3 : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_4 : 31|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Motorstart : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_HYB_Text_5 : 36|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_6 : 37|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Text_7 : 38|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Partikelfil_Reg : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oelmenge : 43|5@1+ (125,0) [0|3875] "Unit_MilliLiter" Gateway_MQB + SG_ MO_Systemlampe : 48|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_OBD2_Lampe : 49|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Heissleuchte : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Partikel_Lampe : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Winterfahrprog : 52|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ WIV_Oelstand_nicht_vorhanden : 53|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_nachfuellanzeige_ein : 54|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Ueberfuell_deaktiv : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Unterfuell_Warn : 56|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Tankdeckel_Lampe : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Text_Tankdeckelwarn : 58|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ WIV_Oeldr_Warn_Motor : 60|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 968 Getriebe_14: 8 Getriebe_DQ_Hybrid_MQB + SG_ GE_OBD_AbsperrVent : 12|4@1+ (1,0) [0|15] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_amax_moeglich : 16|9@1+ (0.024,-2.016) [-2.016|10.224] "Unit_MeterPerSeconSquar" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Charisma_FahrPr : 25|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ GE_Charisma_Status : 29|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ GE_Verlustmoment : 32|8@1+ (1,0) [0|254] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Freigabe_Verfallsinfo_WFS : 49|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_Codierung_MSG : 50|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_LaunchControl : 51|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ GE_Heizwunsch : 52|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_OBD_Status : 54|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_LFR_Adaption : 55|1@1+ (1,0) [0|1] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ GE_Sumpftemperatur : 56|8@1+ (1,-58) [-58|196] "Unit_DegreCelsi" Gateway_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 981 Licht_Anf_01: 8 XXX + +BO_ 982 Licht_hinten_01: 8 Gateway_MQB + SG_ Licht_hinten_01_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM2_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Aussenlicht_def : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Standlicht_H_aktiv : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Parklicht_HL_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Parklicht_HR_aktiv : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremslicht_H_aktiv : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebelschluss_aktiv : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckfahrlicht_aktiv : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_HL_akt : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_HR_akt : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_li_def : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_def : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schlusslicht_li_def : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_li_def : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebel_li_def : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_Nebel_li_def : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_Nebel_re_def : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_li_def : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Nebel_li_def : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_SL_BRL_BLK_li_def : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Brems_Blk_li_def : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Blinker_re_def : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_re_def : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schlusslicht_re_def : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_re_def : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Nebel_re_def : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Brems_re_def : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Schluss_Nebel_re_def : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_SL_BRL_BLK_re_def : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Brems_Blk_re_def : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Kennzl_def : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_3_Bremsl_def : 49|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Nebel_mi_def : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Rueckf_mi_def : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ LH_Bremsl_li_ges_def : 54|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ LH_Bremsl_re_ges_def : 55|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 984 RGS_VL_01: 8 Airbag_MQB + SG_ RGS_VL_Texte : 12|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ RGS_VL_Charisma_FahrPr : 14|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ RGS_VL_Charisma_Status : 18|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ RGS_VL_aktiv : 21|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Sitz : 25|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Schiebedach : 26|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Fenster : 27|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_PC_Aktuator_Warnblinken : 28|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ RGS_VL_Precrash_Basis : 32|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ RGS_VL_Precrash_Front : 40|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ RGS_VL_Precrash_Rear : 48|8@1+ (1,0) [0|255] "" Gateway_MQB + +BO_ 987 Gateway_72: 8 Gateway_MQB + SG_ BCM_01_alt : 0|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ SMLS_01_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZV_02_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Anhaenger_01_alt : 4|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ Klima_Sensor_02_alt : 5|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ VSG_01_alt : 6|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ Klima_01_alt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ WFS_01_alt : 8|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Licht_Anf_01_alt : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HFS_offen : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HBFS_offen : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ VS_VD_offen_ver : 22|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ VS_VD_zu_ver : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_BT_offen : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 25|1@1+ (1,0) [0|1] "" Airbag_MQB + SG_ ZV_FT_offen : 26|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ Wischer_vorne_aktiv : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_erkannt : 28|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM1_MH_Schalter : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZV_HD_offen : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Waschen_vorne_aktiv : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KL_Thermomanagement : 32|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ WFS_Schluessel_Fahrberecht : 34|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BCM1_RFahrlicht_Fzg_Anf : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_RFahrlicht_Ahg_Anf : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Fernlicht : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BH_Blinker_li : 50|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BH_Blinker_re : 51|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_OBD_FStatus_ATemp : 52|4@1+ (1,0) [0|15] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Aussen_Temp_ungef : 56|8@1+ (0.5,-50) [-50|76] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 988 Gateway_73: 8 XXX + +BO_ 989 Gateway_74: 8 Gateway_MQB + SG_ LH_EPS_01_alt : 0|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ Kessy_04_alt : 1|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ LIN_2_alt : 2|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MFG_01_alt : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ GW_74_va_14 : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Klima_02_alt : 5|1@1+ (1,0) [0|1] "" BMS_MQB + SG_ Parkhilfe_01_alt : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ELV_01_alt : 7|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KY_StartStopp_Info : 16|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ PH_StartStopp_Info : 18|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ EPS_Lenkerposition : 20|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB + SG_ ELV_Anf_Klemme_50 : 22|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ MF_StartStopp_Info : 25|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ KL_Geblaesespannung_Soll : 40|8@1+ (0.05,0.5) [2|13] "Unit_Volt" BMS_MQB + SG_ KL_Umluftklappe_Status : 48|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ MFL_Tip_Down : 56|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MFL_Tip_Up : 57|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ LS_Tiptronic_Fehler : 58|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 991 Gateway_76: 8 XXX + +BO_ 997 TSG_FT_02: 8 XXX + SG_ TSG_FT_02_CRC : 0|8@1+ (1,0) [0|255] "" XXX + SG_ TSG_FT_02_BZ : 8|4@1+ (1,0) [0|15] "" XXX + +BO_ 1122 PSD_04: 8 XXX + SG_ PSD_Object_Index : 0|6@1+ (1,0) [0|63] "" XXX + +BO_ 1123 PSD_05: 8 XXX + SG_ PSD_Current_Route_Index : 0|6@1+ (1,0) [0|63] "" XXX + SG_ Route_Distance_Remaining : 8|5@1+ (1,0) [0|31] "" XXX + +BO_ 1124 PSD_06: 8 XXX + +BO_ 1172 STS_01: 8 Gateway_MQB + SG_ STS_01_CRC : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STS_01_BZ : 8|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STS_Car_not_under_theft : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Car_under_theft : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Anlassersperre : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Typencodierung : 16|5@1+ (1,0) [0|31] "" Vector__XXX + SG_ STS_LIN_aktiv : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Standlicht : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Fahrlicht : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Alarm_still : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Texte : 27|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ STS_Laderelais : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Summer : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Alarm_Blinker : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Notstart : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Signalhorn : 55|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STS_Leerlaufschaltung : 56|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1175 Parkhilfe_01: 8 XXX + +BO_ 1312 Airbag_02: 8 Airbag_MQB + SG_ AB_Belegung_VB : 26|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_FA : 40|2@1+ (1,0) [0|3] "" Gateway_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ AB_Gurtschloss_BF : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_FA : 44|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_MI : 46|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe2_BF : 48|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_FA : 50|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_MI : 52|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Gurtschloss_Reihe3_BF : 54|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Sitzpos_Sens_FA : 56|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ AB_Sitzpos_Sens_BF : 58|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 1313 STH_01: 8 Gateway_MQB + SG_ STH_Funk_ein : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Funk_aus : 1|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Zusatzheizung : 2|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_LED : 3|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Pumpe_ein : 4|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Geblaese : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_EKP_Anst : 6|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Start_folgt : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Ventiloeffnungszeit : 8|6@1+ (1,0) [0|63] "Unit_Minut" Vector__XXX + SG_ STH_Ventil_Status : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_Waermeeintrag : 16|6@1+ (1,0) [0|63] "" Vector__XXX + SG_ STH_KVS : 24|13@1+ (1,0) [0|8191] "Unit_MilliLiter" Vector__XXX + SG_ STH_Fehlerstatus : 37|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ STH_Heizleistung : 40|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ STH_Wassertemp : 48|8@1+ (0.75,-40) [-40|142.25] "Unit_DegreCelsi" Vector__XXX + SG_ STH_Motorvorwaermung : 59|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_Servicemode : 60|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_war_aktiv : 61|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ STH_KVS_Ueberlauf : 62|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ STH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1385 HVEM_04: 8 XXX + +BO_ 1413 Systeminfo_01: 8 Gateway_MQB + SG_ SI_Sammel_SG_Fehler : 0|6@1+ (1,0) [0|60] "" Vector__XXX + SG_ SI_Rollenmode : 6|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ SI_QRS_Mode : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ SI_T_Mode : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_NWDF : 10|1@1+ (1,0) [0|1] "" SAK_MQB + SG_ SI_NWDF_gueltig : 11|1@1+ (1,0) [0|1] "" SAK_MQB + SG_ SI_Sammelfehler : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ GW_KD_Fehler : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_01 : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_02 : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_03 : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_04 : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_05 : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_06 : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_07 : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_08 : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_09 : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_10 : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_11 : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_12 : 27|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_13 : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_14 : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SI_BUS_15 : 30|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 1437 Remotestart_FFB: 8 Gateway_MQB + SG_ RSF_Tastencode_1 : 0|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ RSF_Tastencode_2 : 8|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ RSF_Tastencode_Maske : 16|8@1+ (1,0) [0|255] "" Motor_Diesel_MQB,Motor_Otto_MQB + +BO_ 1440 RLS_01: 8 XXX + +BO_ 1520 Dimmung_01: 8 Gateway_MQB + SG_ DI_KL_58xd : 0|8@1+ (1,0) [0|253] "" Airbag_MQB + SG_ DI_KL_58xs : 8|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Display_Nachtdesign : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ DI_KL_58xt : 16|7@1+ (1,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ DI_Fotosensor : 24|16@1+ (1,0) [0|65535] "" Vector__XXX + +BO_ 1528 SAK_01: 8 SAK_MQB + SG_ SAK_Charisma_FahrPr : 16|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ SAK_Charisma_Status : 20|2@1+ (1,0) [0|3] "" Gateway_MQB + +BO_ 1600 Motor_07: 8 Motor_Diesel_MQB + SG_ MO_QBit_Ansaugluft_Temp : 0|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_QBit_Oel_Temp : 1|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_QBit_Kuehlmittel_Temp : 2|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Stellgliedtest_Soundaktuator : 3|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_HYB_Fehler_HV_Netz : 4|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_aktives_Getriebeheizen : 5|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Absperrventil_oeffnen : 6|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Ansaugluft_Temp : 8|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB + SG_ MO_Oel_Temp : 16|8@1+ (1,-60) [-60|192] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kuehlmittel_Temp : 24|8@1+ (0.75,-48) [-48|141.75] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB + SG_ MO_Hoeheninfo : 32|8@1+ (0.00781,0) [0|1.98374] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Kennfeldk : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Versionsinfo : 41|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_Getriebe_kuehlen : 47|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Mom_Traegheit_02 : 48|5@1+ (0.01,0) [0|0.31] "Unit_KiloGramMeterSquar" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizungspumpenansteuerung : 53|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ MO_SpannungsAnf : 57|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Nachlaufzeit_Heizungspumpe : 58|6@1+ (15,0) [0|945] "Unit_Secon" Gateway_MQB + +BO_ 1601 Motor_Code_01: 8 Motor_Diesel_MQB + SG_ Motor_Code_01_CRC : 0|8@1+ (1,0) [0|255] "" Gateway_MQB + SG_ Motor_Code_01_BZ : 8|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Faktor_Momente_02 : 12|2@1+ (1,0) [0|3] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hybridfahrzeug : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Code : 16|8@1+ (1,0) [0|255] "" Gateway_MQB,SAK_MQB + SG_ MO_Getriebe_Code : 24|6@1+ (1,0) [0|63] "" Gateway_MQB + SG_ MO_StartStopp_Codiert : 30|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Anzahl_Zyl : 32|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_Kraftstoffart : 36|4@1+ (1,0) [0|15] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Hubraum : 40|7@1+ (0.1,0) [0|12.7] "Unit_Liter" Gateway_MQB + SG_ MO_Ansaugsystem : 47|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_Leistung : 48|9@1+ (1,0) [0|511] "Unit_KiloWatt" Gateway_MQB + SG_ MO_Abgastyp_EOBD : 57|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_Abgastyp_OBD : 58|1@1+ (1,0) [0|1] "" BMS_MQB,Gateway_MQB,LEH_MQB + SG_ MO_DPF_verbaut : 59|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ TSK_Codierung : 60|3@1+ (1,0) [0|7] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Einspritzart : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 1602 WIV_01: 8 Motor_Diesel_MQB + SG_ WIV_Verschleissindex : 0|16@1+ (2e-08,0) [0|0.00131068] "" Gateway_MQB + SG_ WIV_Russindex : 16|16@1+ (2e-08,0) [0|0.00131068] "" Gateway_MQB + SG_ WIV_t_min : 32|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB + SG_ WIV_t_max : 40|6@1+ (1,0) [0|63] "Unit_Month" Gateway_MQB + SG_ WIV_W_min : 48|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB + SG_ WIV_W_max : 56|7@1+ (1000,0) [0|127000] "Unit_KiloMeter" Gateway_MQB + +BO_ 1603 Einheiten_01: 8 Gateway_MQB + SG_ KBI_Einheit_Datum : 0|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Druck : 2|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Streckenanz : 4|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB + SG_ KBI_MFA_v_Einheit_02 : 5|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Temp : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Uhrzeit : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ KBI_Einheit_Verbrauch : 8|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Volumen : 10|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ KBI_Einheit_Sprache : 16|8@1+ (1,0) [0|255] "" Vector__XXX + +BO_ 1605 FLA_01: 8 XXX + +BO_ 1607 Motor_09: 8 Motor_Diesel_MQB + SG_ MO_ITM_Kuehlmittel_Temp : 0|8@1+ (0.75,-48) [-45.75|143.25] "Unit_DegreCelsi" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_E85_Sensor : 8|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ SCR_Anz_Motorstarts : 12|4@1+ (1,0) [0|8] "" Gateway_MQB + SG_ SCR_Reichweite : 16|15@1+ (1,0) [0|32766] "" Gateway_MQB + SG_ SCR_Warnstufe_1 : 32|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Warnstufe_2 : 33|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Text : 34|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ SCR_Akustik : 37|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Kraftstofffilter_Wasser : 40|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Systemfehler : 41|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ SCR_Inducement_Strategie : 42|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_CO2_Faktor : 44|12@1+ (1,0) [1|4094] "Unit_GramPerLiter" Gateway_MQB + +BO_ 1624 Licht_vorne_01: 8 XXX + +BO_ 1625 Klimakomp_01: 8 Gateway_MQB + SG_ EKL_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EKL_Comp_SCI_com_stat : 16|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_output_stat : 18|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_main_stat : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EKL_Comp_ovld_stat : 21|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ EKL_Comp_Inv_stat : 24|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_photo_temp_stat : 30|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EKL_Comp_photo_temp : 32|8@1+ (1,0) [0|254] "Unit_DegreCelsi" Vector__XXX + SG_ EKL_Comp_current : 40|8@1+ (0.1,0) [0|25.4] "Unit_Amper" Motor_Hybrid_MQB + SG_ EKL_Comp_rev_stat : 48|8@1+ (50,0) [0|8600] "Unit_MinutInver" Vector__XXX + +BO_ 1626 BCM_01: 8 Gateway_MQB + SG_ BCM_Bremsbelag_Sensor : 12|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Bremsfluessigkeit_Sensor : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Licht_Warn : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Waschwasser_Sensor : 15|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Kuehlmittel_Sensor : 16|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_Kl_15_HW_erkannt : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Eis_Offroad_Taste : 18|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Otto_MQB + SG_ ZZH_Endlage_oben : 19|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZZH_Endlage_unten : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ZZH_Endlage_unplausibel : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM2_EZS_gedrueckt : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM2_SST_gedrueckt : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Hybrid_StartStopp_Taste : 24|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Warnblink_Taster : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Valet_Parking_Taster : 26|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM_Remotestart_Betrieb : 27|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_HSK_Taster : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Heckrollo_Taster : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ BCM1_Rueckfahrlicht_Schalter : 30|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_MH_Schalter : 31|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Otto_MQB + SG_ BCM1_MH_WIV_Schalter : 32|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Eco_Charisma_Taste : 33|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BCM_Thermomanagement : 34|2@1+ (1,0) [0|3] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Thermomanagement_Fehler : 36|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM_Thermomanagement_gueltig : 37|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ BCM1_Lichtwarn_Texte : 38|2@1+ (1,0) [0|3] "" Vector__XXX + +BO_ 1628 BMS_Hybrid_01: 8 BMS_MQB + SG_ BMS_HYB_ASV_hinten_Status : 13|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_ASV_vorne_Status : 14|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_KD_Fehler : 15|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_BattFanSpd : 16|4@1+ (10,0) [0|100] "Unit_PerCent" Gateway_MQB + SG_ BMS_HYB_VentilationReq : 20|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_Spuelbetrieb_Status : 21|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ BMS_HYB_Kuehlung_Anf : 22|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ BMS_HYB_Temp_vor_Verd : 24|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_HYB_Temp_nach_Verd : 32|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_Temperatur : 40|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_Temperatur_Ansaugluft : 48|8@1+ (0.5,-40) [-40|86.5] "Unit_DegreCelsi" Gateway_MQB + SG_ BMS_IstSpannung_HV : 56|8@1+ (1,100) [100|350] "Unit_Volt" Gateway_MQB + +BO_ 1629 ESP_20: 8 Gateway_MQB + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ BR_Systemart : 12|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ ESP_Zaehnezahl : 16|8@1+ (1,0) [0|255] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ ESP_Charisma_FahrPr : 24|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ ESP_Charisma_Status : 28|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ BR_QBit_Reifenumfang : 51|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ BR_Reifenumfang : 52|12@1+ (1,0) [0|4095] "Unit_MilliMeter" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 1630 OBD_Tankgeber_01: 8 Gateway_MQB + SG_ OBD_TG_F_Status_1 : 0|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_2 : 4|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_3 : 8|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_F_Status_4 : 12|4@1+ (1,0) [0|15] "" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_1 : 16|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_2 : 28|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_3 : 40|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ OBD_TG_Sens_Rohwert_4 : 52|12@1+ (0.5,0) [0|2047.5] "Unit_Ohm" Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1631 Motor_16: 8 Motor_Diesel_MQB + SG_ TSK_QBit_Steigung : 12|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_QBit_Fahrzeugmasse : 13|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_SpannungsAnf_02 : 14|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_DPF_reg : 16|1@1+ (1,0) [0|1] "" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ MO_Heizstrom_EKAT : 17|7@1+ (1,0) [0|126] "Unit_Amper" Gateway_MQB + SG_ MO_Heizstrom_SCR : 24|6@1+ (1,0) [0|62] "Unit_Amper" Gateway_MQB + SG_ TSK_Fahrzeugmasse_02 : 48|8@1+ (32,0) [0|8128] "Unit_KiloGram" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + SG_ TSK_Steigung : 56|8@1+ (0.8,-101.6) [-101.6|101.6] "Unit_PerCent" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 1633 Anhaenger_01: 8 Gateway_MQB + SG_ AAG_BZ : 0|4@1+ (1,0) [0|15] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Bremsl_durch_ECD : 5|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Anhaenger_abgesteckt : 6|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_NSL_aktiv : 7|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Anhaenger_erkannt : 8|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Blinker_H_aktiv : 9|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Blinker_HL_def : 10|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Blinker_HR_def : 11|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Bremslicht_H_def : 12|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ AAG_Schlusslicht_HL_def : 13|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_Schlusslicht_HR_def : 14|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_AVS_Fehler_02 : 18|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AAG_AVS_Stati : 20|4@1+ (1,0) [0|15] "" Vector__XXX + +BO_ 1646 Klima_03: 8 XXX + +BO_ 1648 Motor_18: 8 Motor_Diesel_MQB + SG_ MO_Hybrid_StartStopp_LED : 43|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Eis_Offroad_LED : 45|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_Anzahl_Abgesch_Zyl : 47|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_Zylabsch_Texte : 50|2@1+ (1,0) [0|3] "" Gateway_MQB + SG_ MO_E85_BS_Texte : 52|3@1+ (1,0) [0|7] "" Gateway_MQB + SG_ MO_Drehzahl_Warnung : 55|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ MO_obere_Drehzahlgrenze : 56|8@1+ (50,0) [50|12750] "Unit_MinutInver" Gateway_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB + +BO_ 1714 Diagnose_01: 8 Gateway_MQB + SG_ DGN_Verlernzaehler : 0|8@1+ (1,0) [0|254] "" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,SAK_MQB + SG_ KBI_Kilometerstand : 8|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Tag : 39|5@1+ (1,0) [1|31] "Unit_Day" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ UH_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" Airbag_MQB,BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB,SAK_MQB + SG_ Kombi_02_alt : 62|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + SG_ Uhrzeit_01_alt : 63|1@1+ (1,0) [0|1] "" Airbag_MQB,BMS_MQB,LEH_MQB + +BO_ 1716 VIN_01: 8 Gateway_MQB + SG_ VIN_01_MUX M : 0|2@1+ (1,0) [0|3] "" Airbag_MQB + SG_ KS_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KS_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KS_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ KS_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" Airbag_MQB + SG_ VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" Airbag_MQB + +BO_ 1719 Kombi_02: 8 Gateway_MQB + SG_ KBI_Kilometerstand : 0|20@1+ (1,0) [0|1048573] "Unit_KiloMeter" Vector__XXX + SG_ KBI_Standzeit_02 : 20|17@1+ (1,0) [0|131068] "Unit_Secon" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Inhalt_Tank : 40|7@1+ (1,0) [0|125] "Unit_Liter" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_FStatus_Tank : 47|1@1+ (1,0) [0|1] "" Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_QBit_Aussen_Temp_gef : 55|1@1+ (1,0) [0|1] "" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ KBI_Aussen_Temp_gef : 56|8@1+ (0.5,-50) [-50|75] "Unit_DegreCelsi" Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + +BO_ 1720 Kombi_03: 8 XXX + SG_ KBI_Reifenumfang : 0|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + SG_ KBI_Variante_USA : 12|1@1+ (1,0) [0|1] "" XXX + SG_ KBI_Variante : 13|1@1+ (1,0) [0|1] "" XXX + SG_ KBI_BCmE_aktiv : 16|1@1+ (1,0) [0|1] "" XXX + SG_ KBI_Sparhinweis_quittiert : 17|1@1+ (1,0) [0|1] "" XXX + SG_ KBI_Tankfuellstand_Prozent : 18|7@1+ (1,0) [0|100] "Unit_PerCent" XXX + SG_ KBI_Nachtanken_erkannt : 25|1@1+ (1,0) [0|1] "" XXX + SG_ KBI_Tankinhalt_hochaufl : 26|14@1+ (0.01,0) [0|163.81] "Unit_Liter" XXX + SG_ KBI_Max_Tankinhalt : 40|8@1+ (0.5,0) [0|126.5] "" XXX + SG_ KBI_Reifenumfang_Sekundaer : 48|12@1+ (1,0) [0|4095] "Unit_MilliMeter" XXX + +BO_ 316495015 CAMERA_NEW_6: 32 XXX + +BO_ 380196019 CAMERA_NEW_16: 16 XXX + +BO_ 380196036 CAMERA_NEW_18: 8 XXX + +BO_ 389224720 CAMERA_NEW_13: 3 XXX + +BO_ 389226768 CAMERA_NEW_12: 2 XXX + +BO_ 389241616 CAMERA_NEW_14: 5 XXX + +BO_ 401604687 CAMERA_NEW_9: 8 XXX + +BO_ 441800082 CAMERA_NEW_15: 8 XXX + +BO_ 441800100 CAMERA_NEW_8: 64 XXX + +BO_ 441800101 CAMERA_NEW_7: 64 XXX + +BO_ 2549088277 KN_Airbag_01: 8 Airbag_MQB + SG_ Airbag_01_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Airbag_01_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ AB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088284 KN_SAK: 8 SAK_MQB + SG_ SAK_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ SAK_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ SAK_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088374 KN_MO_01: 8 Motor_Diesel_MQB + SG_ Motor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Motor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ MO_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088375 KN_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ Getriebe_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Getriebe_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ GE_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088379 KN_Hybrid_01: 8 BMS_MQB + SG_ Hybrid_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ Hybrid_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ BMS_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2549088380 KN_EMotor_01: 8 LEH_MQB + SG_ EMotor_KompSchutz : 0|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EMotor_Nachlauftyp : 4|4@1+ (1,0) [0|15] "" Gateway_MQB + SG_ EM_HYB_KD_Fehler : 63|1@1+ (1,0) [0|1] "" Gateway_MQB + +BO_ 2600468496 NMH_Gateway: 8 Gateway_MQB + SG_ NM_Gateway_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Gateway_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Gateway_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ACAN_Aktivitaet : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_FCAN_Aktivitaet : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_KCAN_Aktivitaet : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ICAN_Aktivitaet : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_DiagCAN_Aktivitaet : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_ECAN_Aktivitaet : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Energie_LIN_Aktivi000 : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_Bedien_LIN_Aktivitaet : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_EM_Aktivitaet : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_EM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Shutdown : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Spg_Messung : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_NL_Wakeup_Monitor : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Gateway_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468501 NMH_Airbag_01: 8 Airbag_MQB + SG_ NM_Airbag_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Airbag_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Airbag_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Airbag_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Airbag_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468598 NMH_MO_01: 8 Motor_Diesel_MQB + SG_ NM_MO_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_MO_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_MO_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_MO_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_HV_Abschaltung : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_EKP_Vorlauf : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NM_aktiv_STH_Betrieb : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Kuehlerluefter : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Diagnose : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_WFS : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_EEPROM : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_NL_Sonstige : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_MO_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468599 NMH_Getriebe_01: 8 Getriebe_DQ_Hybrid_MQB + SG_ NM_Getriebe_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Getriebe_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Getriebe_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Getriebe_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_v_gr_0 : 35|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Pos_Erk : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NM_aktiv_Umg_Bed : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Getriebe_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468603 NMH_Hybrid_01: 8 BMS_MQB + SG_ NM_Hybrid_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Hybrid_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_Hybrid_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_Hybrid_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_NL_Luefter : 49|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_Hybrid_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +BO_ 2600468604 NMH_EMotor_01: 8 LEH_MQB + SG_ NM_EMotor_01_SNI : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_EMotor_01_NM_State : 16|6@1+ (1,0) [0|63] "" BMS_MQB,Getriebe_DQ_Hybrid_MQB,Getriebe_DQ_MQB,LEH_MQB,Motor_Diesel_MQB,Motor_Hybrid_MQB,Motor_Otto_MQB + SG_ NM_EMotor_01_Car_Wakeup : 22|1@1+ (1,0) [0|1] "" Gateway_MQB + SG_ NM_EMotor_01_Wakeup : 24|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_KL15 : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_Diagnose : 33|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NM_aktiv_Tmin : 34|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_NL_Daten_EEPROM : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ NM_EMotor_01_UDS_CC : 63|1@1+ (1,0) [0|1] "" Vector__XXX + +CM_ SG_ 134 LWI_Lenkradwinkel "Steering angle WITH variable ratio effect included"; +CM_ SG_ 159 EPS_Berechneter_LW "Raw steering angle, degrees"; +CM_ SG_ 159 EPS_VZ_BLW "Raw steering angle, direction"; +CM_ SG_ 159 EPS_HCA_Status "Status of Heading Control Assist feature"; +CM_ SG_ 159 EPS_Lenkmoment "Steering input by driver, torque"; +CM_ SG_ 159 EPS_VZ_Lenkmoment "Steering input by driver, direction"; +CM_ SG_ 173 COUNTERXX "Message not renamed to COUNTER because J533 rate-limiting makes it look like messages are being lost"; +CM_ SG_ 294 HCA_01_Vib_Freq "Frequenz der Lenkradvibration"; +CM_ SG_ 294 HCA_01_LM_Offset "Von HCA angefordertes Lenkmoment (Betrag)"; +CM_ SG_ 294 EA_ACC_Sollstatus "Status-Anforderung ACC von Emergency Alert. Statuswechsel bei Flanke. Solange Wert=1, wird EA_ACC_Wunschgeschwindigkeit übernommen. Wert=2 führt zu Zustand ¿ACC_GRA_passiv¿"; +CM_ SG_ 294 EA_Ruckprofil "Emergency Alert Anforderung an ESP, welcher Ruck verwendet werden soll. Eine Umsetzung der Ruckanforderung im ESP erfolgt nur mit gesetztem Bit 'EA_Ruckfreigabe'."; +CM_ SG_ 294 HCA_01_Sendestatus "Gibt den Sendestatus der HCA_01 an (notwendig für IL-Unterstützung)"; +CM_ SG_ 294 HCA_01_LM_OffSign "Vorzeichen des HCA-Lenkmoments"; +CM_ SG_ 294 HCA_01_Status_HCA "Statusinformation vom HCA und Manoevrierassistent für Handshakemechanismus mit der Lenkung"; +CM_ SG_ 294 HCA_01_Vib_Amp "Momentenamplitude der Lenkradvibration"; +CM_ SG_ 294 EA_Ruckfreigabe "Emergency Alert Freigabit für die Warnruck-Anforderung an das ESP"; +CM_ SG_ 294 EA_ACC_Wunschgeschwindigkeit "Emergency Alert Anforderung neue Wunschgeschwindigkeit"; +CM_ SG_ 391 GearPosition "Traditional PRND plus B-mode aggressive regen, B-mode mapped to Drive"; +CM_ SG_ 771 SET_ME_0X54 "Varies but not sure how, may indicate path or curvature"; +CM_ SG_ 870 Hazard_Switch "Four-way flashers active"; +CM_ SG_ 870 Comfort_Signal_Left "Comfort turn signal active, left"; +CM_ SG_ 870 Comfort_Signal_Right "Comfort turn signal active, right"; +CM_ SG_ 870 Left_Turn_Exterior_Bulb_1 "Probably front"; +CM_ SG_ 870 Right_Turn_Exterior_Bulb_1 "Probably front"; +CM_ SG_ 870 Left_Turn_Exterior_Bulb_2 "Probably rear"; +CM_ SG_ 870 Right_Turn_Exterior_Bulb_2 "Probably rear"; +CM_ SG_ 870 Fast_Send_Rate_Active "CAN message send rate"; +CM_ SG_ 919 LDW_DLC "Probable DLC (distance to line crossing)"; +CM_ SG_ 919 LDW_TLC "Probable TLC (time to line crossing)"; +CM_ SG_ 960 ZAS_Kl_15 "Indicates ignition on"; +CM_ SG_ 1720 KBI_Reifenumfang "Mittlerer Radumfang aus der K-Zahl gerechnet in Millimeter. Byte 2 Bit 5,4 reserviert, Byte 2 Bit 3..0 und Byte 1 Bit 7..0; Wertebereich 0..4096 mm"; +CM_ SG_ 1720 KBI_Variante_USA "In diesem Signal wird die HW-Variante des Kombis ausgegeben, ACC plausibilisiert auf dieses Signal hin seine US-Codierung"; +CM_ SG_ 1720 KBI_Variante "Zeigt an ob es sich um ein konventionelles Zeiger-Kombiinstrument handelt oder um eine Volldisplay-Kombiinstrument"; +CM_ SG_ 1720 KBI_BCmE_aktiv "Anzeige BCmE aktiv (BCmE-Screen oder Einsparhinweis in der Anzeige)"; +CM_ SG_ 1720 KBI_Sparhinweis_quittiert "angezeigter Sparhinweis ist quittiert. Signal wird nach zwei Sendebotschaften wieder auf '0' gesetzt."; +CM_ SG_ 1720 KBI_Tankfuellstand_Prozent "Tankfüllstand in %"; +CM_ SG_ 1720 KBI_Nachtanken_erkannt "Statusinformation Nachtankmodus"; +CM_ SG_ 1720 KBI_Tankinhalt_hochaufl "angezeigter Tankinhalt hochauflösend zur Restreichweitenberechnung"; +CM_ SG_ 1720 KBI_Max_Tankinhalt "Mitteilung des maximalen Tankinhalts an das Reichweitenmodul"; +CM_ SG_ 1720 KBI_Reifenumfang_Sekundaer "Fahrzeuge mit unterschiedlichen Reifenumfängen Vorderachse / Hinterachse: + +Primärachse: KBI_Reifenumfang +Sekundärachse: KBI_Reifenumfang_Sekundaer"; +VAL_ 159 EPS_HCA_Status 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active"; +VAL_ 173 GE_Fahrstufe 5 "P" 6 "R" 7 "N" 8 "D" 9 "S" 10 "E" 13 "T" 14 "T"; +VAL_ 279 AWV1_Anf_Prefill 0 "Prefill_nicht_aktivieren" 1 "Prefill_aktivieren"; +VAL_ 279 ANB_CM_Info 0 "Standard" 1 "Erweitert"; +VAL_ 279 AWV2_Freigabe 0 "keine_Freigabe" 1 "Freigabe"; +VAL_ 279 AWV1_HBA_Param 0 "Defaultparametersatz" 1 "Parametersatz_mit_leicht_erhoehter_Empfindlichkeit" 2 "Parametersatz_mit_erhoehter_Empfindlichkeit" 3 "Parametersatz_mit_hoechster_Empfindlichkeit"; +VAL_ 279 AWV2_Priowarnung 0 "Anzeige_Verlassen_der_Fahrspur_wird_nicht_unterdrueckt" 1 "Anzeige_Verlassen_der_Fahrspur_wird_unterdrueckt"; +VAL_ 279 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv"; +VAL_ 279 ANB_Info_Teilbremsung 0 "Auspraegung_Standard" 1 "Auspraegung_Erweitert"; +VAL_ 279 ANB_Notfallblinken 0 "kein_ANB_Notfallblinken" 1 "Notfallblinken_ANB_angefordert"; +VAL_ 279 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben"; +VAL_ 279 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben"; +VAL_ 279 AWV_Vorstufe 0 "keine_Notbremsung_erwartet" 1 "Notbremsung_in_Kuerze"; +VAL_ 279 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten"; +VAL_ 279 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich"; +VAL_ 279 PCF_Freigabe 0 "keine_Freigabe_PreCrashFront" 1 "Freigabe_PreCrashFront"; +VAL_ 279 AWV1_ECD_Anlauf 0 "ECD_Anlauf_nicht_aktivieren" 1 "ECD_Anlauf_aktivieren"; +VAL_ 279 PCF_Time_to_collision 255 "Objektstatus=0x0__oder_berechneter_TTC_Wert_groesser_als_Maximalwert"; +VAL_ 288 TSK_Status 0 "init" 1 "disabled" 2 "enabled" 3 "regulating" 4 "accel_pedal_override" 5 "brake_only" 6 "temp_fault" 7 "perm_fault"; +VAL_ 290 ACC_limitierte_Anfahrdyn 0 "keine_Limitierung" 1 "Limitierung_Anfahrdynamik_angefordert"; +VAL_ 290 ACC_nachtr_Stopp_Anf 0 "nicht_angefordert" 1 "angefordert"; +VAL_ 290 ACC_StartStopp_Info 0 "Motorlauf_langfristig_nicht_notwendig_Stoppfreigabe" 1 "Motoranlauf_nicht_zwingend_notwendig_Stoppverbot_keine_Startanforderung" 2 "Motoranlauf_zwingend_notwendig_Startanforderung" 3 "Systemfehler"; +VAL_ 290 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler"; +VAL_ 290 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren"; +VAL_ 290 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht"; +VAL_ 290 ACC_Typ 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 2 "ACC_mit_StopAndGo" 3 "ACC_nicht_codiert"; +VAL_ 290 ACC_Status_ACC 0 "ACC_OFF_Hauptschalter_aus" 1 "ACC_INIT" 2 "ACC_STANDBY" 3 "ACC_AKTIV_regelt" 4 "ACC_OVERRIDE" 5 "ACC_Abschaltreaktion" 6 "reversibler_Fehler_im_ACC_System" 7 "irreversibler_Fehler_im_ACC_System"; +VAL_ 290 ACC_Minimale_Bremsung 0 "Anforderung_Minimale_Bremsung_nicht_aktiv" 1 "Anforderung_Minimale_Bremsung_aktiv"; +VAL_ 294 EA_ACC_Sollstatus 0 "Init" 1 "ACC_aktivieren" 2 "ACC_deaktivieren"; +VAL_ 294 EA_Ruckprofil 0 "Init" 1 "Profil_1" 2 "Profil_2" 3 "Profil_3" 4 "Profil_4" 5 "Profil_5" 6 "Profil_6" 7 "Profil_7"; +VAL_ 294 HCA_01_Sendestatus 0 "HCA_sendet_mit_1000ms" 1 "HCA_sendet_mit_20ms"; +VAL_ 294 HCA_01_LM_OffSign 0 "positives_Vorzeichen" 1 "negatives_Vorzeichen"; +VAL_ 294 HCA_01_Status_HCA 0 "deaktiviert" 1 "reserviert" 2 "reserviert" 3 "funktionsbereit" 4 "reserviert" 5 "HCA_Momenteneingriff_1" 6 "MA_Aktiv" 7 "HCA_Momenteneingriff_2" 8 "reserviert" 9 "reserviert" 10 "reserviert" 11 "reserviert" 12 "reserviert" 13 "reserviert" 14 "reserviert" 15 "reserviert"; +VAL_ 294 EA_Ruckfreigabe 0 "keine_Freigabe" 1 "Freigabe"; +VAL_ 294 EA_ACC_Wunschgeschwindigkeit 1023 "Init"; +VAL_ 302 ACC_Anhalteweg 2046 "Neutralwert" 2047 "Fehler"; +VAL_ 302 ACC_Anhalten 0 "kein_Anhalten_gewuenscht" 1 "Anhalten_gewuenscht"; +VAL_ 302 ACC_Freilauf_Anf 0 "keine Freilauf-Anforderung" 1 "Freilauf-Anforderung"; +VAL_ 302 ACC_Freilauf_Info 0 "Freilauf_freigegeben" 1 "kein_Uebergang_in_Freilauf_zulaessig" 2 "Freilauf_nicht_freigegeben" 3 "Freilauf_Anforderung"; +VAL_ 302 ACC_Anforderung_HMS 0 "keine_Anforderung" 1 "halten" 2 "parken" 3 "halten_Standby" 4 "anfahren" 5 "Loesen_ueber_Rampe"; +VAL_ 302 ACC_Anfahren 0 "keine_Anforderung_Anfahren" 1 "Anforderung_Anfahren"; +VAL_ 302 ACC_Folgebeschl 254 "Neutralwert"; +VAL_ 302 ACC_Sollbeschleunigung_02 2046 "Neutralwert" 2047 "Fehler"; +VAL_ 391 RegenBrakingMode 0 "default" 1 "B1" 2 "B2" 3 "B3"; +VAL_ 391 GearPosition 2 "P" 3 "R" 4 "N" 5 "D" 6 "D"; +VAL_ 679 ACC_Regelgeschw 1023 "keine_Anzeige"; +VAL_ 679 ACC_Einheit_maxSetzgeschw 0 "kmh" 1 "mph"; +VAL_ 679 ACC_maxSetzgeschw 511 "Init_Neutralwert"; +VAL_ 679 ACC_minRegelgeschw 255 "keine_Anzeige"; +VAL_ 679 ACC_maxRegelgeschw 255 "keine_Anzeige"; +VAL_ 679 ACC_Tempolimitassistent 0 "keine_Anzeige" 1 "Tempolimitassistent_aktiv" 2 "Tempolimitassistent_nicht_verfuegbar" 3 "Tempolimitassistent_Fahreruebernahme"; +VAL_ 679 ACC_Kurvenassistent 0 "keine_Anzeige" 1 "Kreuzung" 2 "Rechtskurve" 3 "Linkskurve" 4 "Kreisverkehr"; +VAL_ 679 ACC_RUV 0 "keine_Anzeige" 1 "RUV_aktiv_Rechtsverkehr" 2 "RUV_aktiv_Linksverkehr"; +VAL_ 679 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet"; +VAL_ 679 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus"; +VAL_ 679 ACC_ENG_Texte 0 "keine_Anzeige" 1 "keine_Laenderverfuegbarkeit" 2 "nicht_verfuegbar" 3 "Geschwindigkeitsgrenze"; +VAL_ 681 AWV_Warnung 0 "keine_Anzeige" 1 "latente_Vorwarnung" 2 "Vorwarnung" 3 "Akutwarnung" 4 "Eingriff" 5 "Fahreruebernahmeaufforderung" 6 "Abbiegewarnung"; +VAL_ 681 AWV_Texte 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "Demomodus" 4 "System_aus" 5 "nicht_definiert" 6 "ESC_aus" 7 "zurzeit_eingeschraenkt"; +VAL_ 681 AWV_Status_Anzeige 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar"; +VAL_ 681 AWV_Einstellung_System_FSG 0 "deaktiviert" 1 "aktiviert"; +VAL_ 681 AWV_Einstellung_Warnung_FSG 0 "Aus" 1 "Setting_2" 2 "Setting_3" 3 "Setting_4" 4 "Setting_5" 5 "Ein"; +VAL_ 681 AWV_Warnlevel 0 "keine_Gefaehrdung" 63 "max_Gefaehrdung"; +VAL_ 780 ACC_Wunschgeschw_02 1023 "keine_Anzeige"; +VAL_ 780 ACC_Status_Prim_Anz 0 "Symbol nicht beleuchtet" 1 "Farbe 1 (typisch 'gruen')" 2 "Farbe 2 (typisch 'rot')" 3 "Farbe 3 (typisch 'gelb')"; +VAL_ 780 ACC_Abstandsindex 0 "Sonderanzeige_graue_Fahrbahn" 1022 "Sonderanzeige_graue_Fahrbahn" 1023 "Sonderanzeige_Fahrbahn_mit_gruenem_roten_Bereich"; +VAL_ 780 ACC_Akustik_02 0 "keine_Akustik" 1 "hochpriore_Akustik" 2 "niederpriore_Akustik" 3 "hochpriore_Dauerakustik"; +VAL_ 780 ACC_Warnung_Verkehrszeichen_1 0 "keine_Warnung_Initialwert" 1 "Warnung"; +VAL_ 780 ACC_Gesetzte_Zeitluecke 0 "keine_Anzeige" 1 "Zeitluecke_1" 2 "Zeitluecke_2" 3 "Zeitluecke_3" 4 "Zeitluecke_4" 5 "Zeitluecke_5" 6 "nicht_definiert" 7 "nicht_definiert"; +VAL_ 780 ACC_Optischer_Fahrerhinweis 0 "optischer_Fahrerhinweis_AUS" 1 "optischer_Fahrerhinweis_EIN"; +VAL_ 780 ACC_Typ_Tachokranz 0 "Tachokranz_lang" 1 "Tachokranz_kurz"; +VAL_ 780 ACC_Anzeige_Zeitluecke 0 "Anzeige_Zeitluecke_nicht_angefordert" 1 "Anzeige_Zeitluecke_angefordert"; +VAL_ 780 ACC_Tachokranz 0 "Tachokranz_nicht_beleuchtet" 1 "Tachokranz_beleuchtet"; +VAL_ 780 ACC_Display_Prio 0 "hoechste_Prio" 1 "mittlere_Prio" 2 "geringe_Prio" 3 "keine_Prio"; +VAL_ 780 ACC_Relevantes_Objekt 0 "Symbol_nicht_beleuchtet" 1 "Farbe_1_typisch_gruen" 2 "Farbe_2_typisch_rot" 3 "Farbe_3_typisch_gelb"; +VAL_ 780 ACC_Texte_Primaeranz 0 "keine Anzeige" 1 "ACC nicht verfuegbar !" 2 "Auto_Auto_ _ _" 3 "Auto_ _Auto_ _" 4 "Auto_ _ _Auto_" 5 "Auto_ _ _ _Auto" 6 "Auto_Auto_ _ _ Gong (durchgestrichen)" 7 "Auto_ _Auto_ _ Gong (durchgestrichen)" 8 "Auto_ _ _Auto_ Gong (durchgestrichen)" 9 "Auto_ _ _ _Auto Gong (durchgestrichen)" 10 "ACC bereit" 11 "keine Abstandsregelung" 12 "ACC Sensor Sicht !" 13 "ACC nicht verfuegbar" 14 "o o o" 15 "Hochschalten" 16 "ESP Eingriff" 17 "Herunterschalten" 18 "Parkbremse !" 19 "Geschwindigkeitsgrenze" 20 "Waehlhebelposition !" 21 "VDA ACC-Symbol YYY km/h / mph" 22 "Tempolimit XXX km/h / mph" 23 "Kurve XXX km/h / mph" 24 "ACC Abschaltung" 25 "Symbol 'Eieruhr'" 26 "!" 27 "--- km/h / mph" 28 "XXX km/h / mph (Schriftart 2)" 29 "Lenkradwinkel" 30 "Anfahren bestaetigen" 31 "Fahrzeug verloren" 32 "Im Stand nicht moeglich" 33 "Ungueltiger Anfahrbefehl" 34 "Tuer offen !" 35 "Fahrer Gurtschloss offen !" 36 "Schalthebelposition !" 37 "Drehzahl !" 38 "Kurvenassistent aus" 39 "Tempolimit aus" 40 "Abbiegeassistent" 41 "Ortsanfang XXX km/h / mph" 42 "Ortsende XXX km/h / mph" 43 "Tempolimit Ende XXX km/h / mph" 44 "HDC aktiv" 45 "braking guard Bremsruck" 46 "braking guard aus" 47 "braking guard aus" 48 "Uebernehmen !" 49 "Steigung zu gross" 50 "Stehendes Objekt voraus" 51 "SET / 'GRA Symbol'___xxx km/h / mph" 52 "SET / 'GRA Symbol' xxx km/h / mph" 53 "ACC aus" 54 "ACC startet" 55 "ACC reinigen" 56 "ACC Fehler" 57 "ACC haelt an !" 58 "Bremse betaetigen !" 59 "Kupplung betaetigt" 60 "LIM AUS" 61 "LIM AKTIV" 62 "LIM PASSIV" 63 "LIM FEHLER" 64 "Bremse ueberhitzt !" 65 "Bremse haelt !" 66 "ESP PASSIV !" 67 "ACC_anfahrbereit" 68 "Gang_einlegen" 69 "Rechtsueberholen_verhindert" 70 "Linksueberholen_verhindert" 71 "Achtung_Geschwindigkeitsueberschreitung" 72 "Tempolimit_und_Kurvenassistent_nicht_verfuegbar"; +VAL_ 780 ACC_Wunschgeschw_erreicht 0 "Wunschgeschwindigkeit_nicht_erreicht" 1 "Wunschgeschwindigkeit_erreicht"; +VAL_ 780 ACC_Typ_Tachokranz_unten 0 "LEDs_an" 1 "LEDs_aus"; +VAL_ 780 ACC_Status_Anzeige 0 "ACC_GRA_Hauptschalter_aus" 1 "ACC_in_Init_nicht_bei_GRA" 2 "ACC_GRA_passiv" 3 "ACC_GRA_aktiv" 4 "ACC_GRA_im_Hintergrund_uebertreten" 5 "ACC_GRA_Abschaltreaktion" 6 "ACC_reversibel_aus_nicht_bei_GRA" 7 "ACC_GRA_irreversibel_aus"; +VAL_ 804 ACC_Texte_Sekundaeranz 0 "keine_Anzeige" 1 "Zielfahrzeug_erkannt" 2 "Rechtskurve_voraus" 3 "Linkskurve_voraus" 4 "Tempolimit_voraus" 5 "Sensorsicht" 6 "Anfahrbereit" 7 "Tempolimit_erkannt" 8 "Kreuzung_voraus" 9 "Kreisverkehr_voraus"; +VAL_ 804 ACC_Texte_Zusatzanz 0 "keine_Anzeige" 1 "ACC_AUS" 2 "ACC_BEREIT" 3 "UEBERTRETEN" 4 "ABSTAND" 5 "DISTANZ_1" 6 "DISTANZ_2" 7 "DISTANZ_3" 8 "DISTANZ_4" 9 "DISTANZ_1__dyn" 10 "DISTANZ_2__dyn" 11 "DISTANZ_3__dyn" 12 "DISTANZ_4__dyn" 13 "DISTANZ_1__stand" 14 "DISTANZ_2__stand" 15 "DISTANZ_3__stand" 16 "DISTANZ_4__stand" 17 "DISTANZ_1__comf" 18 "DISTANZ_2__comf" 19 "DISTANZ_3__comf" 20 "DISTANZ_4__comf" 21 "DISTANZ_1__efficiency" 22 "DISTANZ_2__efficiency" 23 "DISTANZ_3__efficiency" 24 "DISTANZ_4__efficiency" 25 "DISTANZ_5" 26 "DISTANZ_5__dyn" 27 "DISTANZ_5__stand" 28 "DISTANZ_5__comf" 29 "DISTANZ_5__efficiency" 30 "ACHTUNG" 31 "Abstandsanzeige" 32 "Abstandsanz_Warnung_aktiviert"; +VAL_ 804 ACC_Status_Zusatzanz 0 "keine Anzeige" 1 "Bild 1 (Fzg. Silhouette, typ. farblos)" 2 "Bild 2 (Fzg. Farbe 1, typ. grau)" 3 "Bild 3 (Fzg. Farbe 2, typ. rot)" 4 "Bild 4 (Symbol 1 ACCplus, typ. Doppelfzg. gelb)" 5 "Bild 5 (Symbol 2 ACCplus, typ. Doppelfzg. grau)" 6 "Bild 6 (Fzg. Farbe 2, typ. rot) mit Priorität im Kombi (Pop-up)"; +VAL_ 804 ACC_Texte 0 "keine_Anzeige" 1 "ACC_nicht_verfuegbar" 2 "ACC_und_AWV_nicht_verfuegbar" 3 "ACC_keine_Sensorsicht" 4 "ACC_und_AWV_keine_Sensorsicht" 5 "ACC_Steigung_zu_gross" 6 "ACC_nur_in_Fahrstufe_verfuegbar" 7 "ACC_Parkbremse_betaetigt" 8 "ACC_ESP_Eingriff" 9 "ACC_Bitte_uebernehmen" 10 "ACC_HDC_betaetigt" 11 "ACC_Geschwindigkeitsgrenze" 12 "ACC_Schalthebelposition" 13 "ACC_Drehzahl" 14 "ACC_Kupplung_betaetigt" 15 "ACC_Aktivierverhinderung" 16 "ACC_Abschaltung" 17 "ACC_Parkassistent_aktiv" 18 "ACC_ESC_aus" 19 "ACC_Charisma_Modus_inkompatibel" 20 "ACC_Stehendes_Objekt_voraus" 21 "ACA_Fahreruebernahme" 22 "ACA_Querfuehrung_nicht_verfuegbar"; +VAL_ 804 ACC_Texte_braking_guard 0 "keine_Anzeige" 1 "AWV_aus" 2 "AWV_Warnung" 3 "AWV_Demomodus" 4 "AWV_Systemstoerung" 5 "AWV_Eingriff" 6 "AWV_Vorwarnung_aus" 7 "AWV_keine_Sensorsicht"; +VAL_ 804 ACC_Warnhinweis 0 "kein_Warnhinweis" 1 "Warnhinweis"; +VAL_ 804 ACC_Zeitluecke_Abstandswarner 61 "Freifahrt" 62 "nicht_definiert" 63 "keine_Anzeige"; +VAL_ 804 ACC_Abstand_Abstandswarner 509 "Freifahrt" 510 "nicht_definiert" 511 "keine_Anzeige"; +VAL_ 804 ACC_Tempolimit 0 "keine_Anzeige" 1 "5_zulHoechstgeschw" 2 "7_zulHoechstgeschw" 3 "10_zulHoechstgeschw" 4 "15_zulHoechstgeschw" 5 "20_zulHoechstgeschw" 6 "25_zulHoechstgeschw" 7 "30_zulHoechstgeschw" 8 "35_zulHoechstgeschw" 9 "40_zulHoechstgeschw" 10 "45_zulHoechstgeschw" 11 "50_zulHoechstgeschw" 12 "55_zulHoechstgeschw" 13 "60_zulHoechstgeschw" 14 "65_zulHoechstgeschw" 15 "70_zulHoechstgeschw" 16 "75_zulHoechstgeschw" 17 "80_zulHoechstgeschw" 18 "85_zulHoechstgeschw" 19 "90_zulHoechstgeschw" 20 "95_zulHoechstgeschw" 21 "100_zulHoechstgeschw" 22 "110_zulHoechstgeschw" 23 "120_zulHoechstgeschw" 24 "130_zulHoechstgeschw" 25 "140_zulHoechstgeschw" 26 "150_zulHoechstgeschw" 27 "160_zulHoechstgeschw" 28 "200_zulHoechstgeschw" 30 "250_zulHoechstgeschw" 31 "Ende_zulHoechstgeschw"; +VAL_ 804 ACC_Charisma_FahrPr 0 "keine_Funktion" 1 "Programm_1" 2 "Programm_2" 3 "Programm_3" 4 "Programm_4" 5 "Programm_5" 6 "Programm_6" 7 "Programm_7" 8 "Programm_8" 9 "Programm_9" 10 "Programm_10" 11 "Programm_11" 12 "Programm_12" 13 "Programm_13" 14 "Programm_14" 15 "Programm_15"; +VAL_ 804 ACC_Charisma_Status 0 "Init" 1 "verfuegbar" 2 "nicht_verfuegbar" 3 "asynchron_durch_Fahrerwunsch"; +VAL_ 804 ACC_Texte_Abstandswarner 0 "keine_Anzeige" 1 "Systemstoerung" 2 "keine_Sensorsicht" 3 "zurzeit_eingeschraenkt"; +VAL_ 870 Fast_Send_Rate_Active 0 "1 Hz" 1 "50 Hz"; +VAL_ 1720 KBI_Variante_USA 0 "keine USA-Variante" 1 "USA-Variante"; +VAL_ 1720 KBI_Variante 0 "Zeiger Kombiinstrument" 1 "Volldisplay Kombiinstrument"; +VAL_ 1720 KBI_BCmE_aktiv 0 "Anzeige_nicht_aktiv" 1 "Anzeige_aktiv"; +VAL_ 1720 KBI_Sparhinweis_quittiert 0 "nicht_quittiert" 1 "quittiert"; +VAL_ 1720 KBI_Tankfuellstand_Prozent 126 "Init" 127 "Fehler"; +VAL_ 1720 KBI_Nachtanken_erkannt 0 "Geberbetrieb" 1 "Nachtankmodus"; +VAL_ 1720 KBI_Tankinhalt_hochaufl 16382 "Init" 16383 "Fehler"; +VAL_ 1720 KBI_Max_Tankinhalt 254 "Init" 255 "Fehler"; diff --git a/opendbc_repo/opendbc/dbc/vw_pq.dbc b/opendbc_repo/opendbc/dbc/vw_pq.dbc new file mode 100644 index 0000000000..6f14789135 --- /dev/null +++ b/opendbc_repo/opendbc/dbc/vw_pq.dbc @@ -0,0 +1,1676 @@ +VERSION "" + + +NS_ : + NS_DESC_ + CM_ + BA_DEF_ + BA_ + VAL_ + CAT_DEF_ + CAT_ + FILTER + BA_DEF_DEF_ + EV_DATA_ + ENVVAR_DATA_ + SGTYPE_ + SGTYPE_VAL_ + BA_DEF_SGTYPE_ + BA_SGTYPE_ + SIG_TYPE_REF_ + VAL_TABLE_ + SIG_GROUP_ + SIG_VALTYPE_ + SIGTYPE_VALTYPE_ + +BS_: + +BU_: XXX + + +BO_ 1394 ZAS_1: 2 XXX + SG_ Fehlerspeichereintrag__ZAS_ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_ZAS_1_3 : 8|7@1+ (1,0) [0|0] "" XXX + SG_ Frei_ZAS_1_2 : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_15_SV : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_ZAS_1_1 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_P__Parklichtstellung_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_50__Starten_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_X__Startvorgang_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_15__Z_ndung_ein_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ S_Kontakt__Schl_ssel_steckt_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1336 Wischer_1: 2 XXX + SG_ Blockierung_Heckwischer_erkannt : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Wischer_1_2 : 12|3@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag__Wischer_ : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Scheibenwischer_Hec : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Wascher_Heck : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Scheibenwischer_Heck_eingeschal : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Blockierung_Frontwischer_erkann : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Wischer_1_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Waschduesenheizung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Parklage_Frontwischer : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Frontwischer_Schnel : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Frontwischer_Normal : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Wascher_Front : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Frontwischer__eingeschaltet : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1464 WFS_1: 2 XXX + SG_ WFS_Textbits : 8|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_WFS_1_1 : 1|7@1+ (1,0) [0|0] "" XXX + SG_ WFS_LED : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1096 Waehlhebel_1: 4 XXX + SG_ Frei_Waehlhebel_1_1 : 29|3@1+ (1,0) [0|0] "" XXX + SG_ Test_aktiv_Flag : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Waehlhebel_1 : 24|4@1+ (1,0) [0|15] "" XXX + SG_ Waehlhebel_Testergebnis : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Fehler_Waehlhebel : 8|8@1+ (1,0) [0|0] "" XXX + SG_ Waehlhebelposition : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Waehlhebel_Initialisierung : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Shiftlock_Position : 0|3@1+ (1,0) [0|0] "" XXX + +BO_ 1496 Verbauliste_1: 8 XXX + SG_ TV_Tuner : 63|1@1+ (1,0) [0|0] "" XXX + SG_ DSP : 62|1@1+ (1,0) [0|0] "" XXX + SG_ CD_Wechsler : 61|1@1+ (1,0) [0|0] "" XXX + SG_ Spracheingabe : 60|1@1+ (1,0) [0|0] "" XXX + SG_ Telematik : 59|1@1+ (1,0) [0|0] "" XXX + SG_ Navigation : 58|1@1+ (1,0) [0|0] "" XXX + SG_ Telefon : 57|1@1+ (1,0) [0|0] "" XXX + SG_ Radio : 56|1@1+ (1,0) [0|0] "" XXX + SG_ MMI_vorne : 55|1@1+ (1,0) [0|0] "" XXX + SG_ MMI_hinten : 54|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_11 : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Klimabedienteil_HL : 52|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_10 : 50|2@1+ (1,0) [0|0] "" XXX + SG_ Tankgeber : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Assistenzfahrlicht : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Memory_hinter_Fahrer : 47|1@1+ (1,0) [0|0] "" XXX + SG_ Sitzmemory_hinten : 46|1@1+ (1,0) [0|0] "" XXX + SG_ Sitzmemory_Beifahrer : 45|1@1+ (1,0) [0|0] "" XXX + SG_ Anh_ngersteuergeraet : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Energiemanagement : 43|1@1+ (1,0) [0|0] "" XXX + SG_ Wischermodul : 42|1@1+ (1,0) [0|0] "" XXX + SG_ EZS___Kessy__Komfort_ : 41|1@1+ (1,0) [0|0] "" XXX + SG_ Verdecksteuergeraet : 40|1@1+ (1,0) [0|0] "" XXX + SG_ Standheizung : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_9 : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Einparkhilfe : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Klimasteuergeraet_Komfort : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Gateway : 35|1@1+ (1,0) [0|0] "" XXX + SG_ Lenksaeulenmodul : 34|1@1+ (1,0) [0|0] "" XXX + SG_ Reifendruck : 33|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstrument_Komfort : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Dachmodul : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Memory : 30|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_HR : 29|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_HL : 28|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_BT : 27|1@1+ (1,0) [0|0] "" XXX + SG_ TSG_FT : 26|1@1+ (1,0) [0|0] "" XXX + SG_ ZKE : 25|1@1+ (1,0) [0|0] "" XXX + SG_ BSG_Komfort : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Verbauliste_1_8 : 19|5@1+ (1,0) [0|0] "" XXX + SG_ Stabi_Entkopplung : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Waehlhebel : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Batteriemanager : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Daempfer_SG : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Niveauregulierung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ EZS___Kessy__Antrieb_ : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsbooster : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Antrieb : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Einspritzpumpe : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Allrad : 7|1@1+ (1,0) [0|0] "" XXX + SG_ BSG_Antrieb : 6|1@1+ (1,0) [0|0] "" XXX + SG_ ADR : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Climatronic_Antrieb : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ABS : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Getriebesteuergeraet : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Motorsteuergeraet : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1488 Systeminfo_1: 6 XXX + SG_ CAN_Stand_4_1_Antrieb_Daten_Hau : 44|4@1+ (1,0) [0|15] "" XXX + SG_ CAN_Stand_4_1_Antrieb_Daten_Neb : 40|4@1+ (1,0) [0|15] "" XXX + SG_ CAN_Stand_4_1_Komfort_Daten_Hau : 36|4@1+ (1,0) [0|15] "" XXX + SG_ CAN_Stand_4_1_Komfort_Daten_Neb : 32|4@1+ (1,0) [0|15] "" XXX + SG_ Frei_Systeminfo_1_6 : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Viertuerer : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Rechtslenker : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrzeug_Index : 24|4@1+ (1,0) [0|0] "" XXX + SG_ Fahrzeug_Generation : 20|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrzeug_Derivat : 16|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrzeug_Marke_2 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Fahrzeug_Klasse : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Verbauinformation_gueltig : 7|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Infotainment_verbaut : 6|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Infotainment_in_Diagnose : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Sleep_CAN_Infotainment : 4|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Komfort_in_Diagnose : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Sleep_CAN_Komfort : 2|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Antrieb_in_Diagnose : 1|1@1+ (1,0) [0|0] "" XXX + SG_ CAN_Extern_zugeschaltet : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 268 Slave_1: 8 XXX + SG_ Delta_reduziertes_Sollmoment : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Delta_Drosselklappenwinkel : 32|16@1+ (1,0) [0|0] "" XXX + SG_ Frei_Slave_1_1 : 25|7@1+ (1,0) [0|0] "" XXX + SG_ Delta_Zuendwinkelausgabe : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Ubat_Freigabe_DVE__Slave_ : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Drosselklappe_Sollwertbegrenzun : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Einspritzverbot_lernen__Slave_ : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Master_erkannt__Slave_ : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Momentenausgabe : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Getriebe_Moment : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Bremsenbotschaft : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Indiziertes_Istmoment__Slave_ : 0|16@1+ (0.0015259,0) [0|99.998] "%" XXX + SG_ Timeout_Bremsenbotschaft : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1332 Sitz_info: 2 XXX + SG_ Positionserkennung_Beifahrersit : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Beifahrersitz_im_vorderen_Dritt : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Positionserkennung_Fahrersitz_u : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrersitz_im_vorderen_Drittel : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Sitzinfo : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Checksumme_Sitzinfo : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1810 PSG_3: 2 XXX + SG_ Selbsttestergebnis : 0|16@1+ (1,0) [0|0] "" XXX + +BO_ 1298 PSG_2: 8 XXX + SG_ RAM_Inhalt_4 : 48|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Inhalt_3 : 32|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Inhalt_2 : 16|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Inhalt_1 : 0|16@1+ (1,0) [0|0] "" XXX + +BO_ 274 PSG_1: 8 XXX + SG_ Pumpentemperatur__2_1_ : 48|16@1+ (0.0625,0) [0|4096] "K" XXX + SG_ Pumpentemperatur__3_2_2_ : 44|12@1+ (1,0) [0|0] "" XXX + SG_ Zylinderzaehler__3_2_2_ : 43|3@1+ (1,0) [1|8] "Zaehler" XXX + SG_ Ansteuerdauer__3_2_2_ : 32|11@1+ (0.0469,0) [0|96] "NW" XXX + SG_ Nockenwellendrehzahl__3_2_2_ : 20|12@1+ (4,0) [0|16380] "upm" XXX + SG_ Pumpen_Statuswort__3_2_2_ : 0|20@1+ (1,0) [0|0] "" XXX + +BO_ 1300 NOX_1: 8 XXX + SG_ OBD_fuer_NOX : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_NOX1_4 : 53|3@1+ (1,0) [0|0] "" XXX + SG_ IP2 : 52|1@1+ (1,0) [0|0] "" XXX + SG_ IP1 : 51|1@1+ (1,0) [0|0] "" XXX + SG_ IP0 : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Sondenheizung_NOX : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Offsetkorrektur_NOX : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_NOX1_3 : 43|5@1+ (1,0) [0|0] "" XXX + SG_ Sauerstoff_binaer : 32|11@1+ (1,-200) [-200|1847] "mV" XXX + SG_ Frei_NOX1_2 : 27|5@1+ (1,0) [0|0] "" XXX + SG_ Sauerstoff_linear : 16|11@1+ (1,0) [0|2047] "1000/Lambd" XXX + SG_ Frei_NOX1_1 : 11|5@1+ (1,0) [0|0] "" XXX + SG_ NOX_Signal : 0|11@1+ (1,0) [0|2047] "ppm" XXX + +BO_ 1424 Niveau_1: 6 XXX + SG_ Beladungszustand : 40|8@1+ (1,0) [0|253] "Zuladung" XXX + SG_ Fehlerspeichereintrag__Niveau_1 : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Systemstatus__Niveau_1_ : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Reserve_Fahrzeugart : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrzeugart_Niveau : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Textbits__Niveau_1_ : 32|4@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_HL : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_HR : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_VL : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_VR : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Absenkung_Fahrzeug : 27|1@1+ (1,0) [0|0] "" XXX + SG_ Anhebung_Fahrzeug : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Verstellung_aktiv : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Kompressorlauf_in_Kuerze : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Niveau_1_5 : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Taster_Niveau : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Parkniveau : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Zwischenniveau : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Niveaustati : 16|4@1+ (1,0) [0|0] "" XXX + SG_ MSG_Einschraenkung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_Beeinflussung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Warnlampe_Niveau_1 : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Niveau_1_1 : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Niveau_1 : 8|4@1+ (1,0) [0|15] "Zaehler" XXX + SG_ Checksumme_Niveau_1 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1328 Navigation_1: 7 XXX + SG_ Kreuzungstyp : 54|2@1+ (1,0) [0|3] "" XXX + SG_ Entfernung_bis_Kreuzung : 48|6@1+ (5,0) [0|315] "m" XXX + SG_ Entfernung_bis_Kurvenanfang : 40|8@1+ (1,0) [0|255] "m" XXX + SG_ Voarusliegende_Kurvenrichtung : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Vorausliegender_Kurvenverlauf : 32|7@1+ (50,0) [0|6350] "m" XXX + SG_ Fehler_Navigation : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Anzahl_Fahrbahnen__0_ist_unguel : 28|3@1+ (1,0) [1|7] "" XXX + SG_ Strassentyp : 24|4@1+ (1,0) [0|15] "" XXX + SG_ Laenderkennung : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Vorzeichen_Gierrate______ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Gierratenfehler : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Gierrate : 0|14@1+ (0.01,0) [0|100] "deg/sek" XXX + +BO_ 1792 MSG_3: 3 XXX + SG_ MSG_Konfiguration : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Lage_des_OT_Impuls : 0|16@1+ (0.01172,-384) [-384|384] "KW" XXX + +BO_ 1280 MSG_2: 8 XXX + SG_ RAM_Adresse_4 : 48|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Adresse_3 : 32|16@1+ (1,0) [0|0] "" XXX + SG_ RAM_Adresse_2 : 16|16@1+ (1,0) [0|0] "" XXX + SG_ Ram_Adresse_1 : 0|16@1+ (1,0) [0|0] "" XXX + +BO_ 256 MSG_1: 8 XXX + SG_ Kurbelwellendrehzahl__3_2_2_ : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Soll_Foerderbeginn_KW__3_2_2_ : 40|16@1+ (0.01172,-384) [-384|384] "KW" XXX + SG_ Soll_Foerderbeginn_NW__3_2_2_ : 28|12@1+ (0.01172,0) [0|768] "degNW" XXX + SG_ Soll_Voreinspritzung : 16|12@1+ (1,0) [0|0] "" XXX + SG_ Soll_Einspritzmenge : 0|16@1+ (0.03125,0) [0|2047] "mg/H" XXX + +BO_ 1796 Motor_NOX: 8 XXX + SG_ Frei_Motor_NOX_1_2 : 24|40@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_NOX_1_1 : 19|5@1+ (1,0) [0|0] "" XXX + SG_ Heizleistungsanforderung : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Offsetkorrektur_moeglich : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Betriebsbereich : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Abgastemperatur_NOX : 8|8@1+ (5,-40) [-40|1230] "C" XXX + SG_ Abgasdruck_NOX : 0|8@1+ (5,600) [600|1870] "mbar" XXX + +BO_ 900 Motor_Momente: 8 XXX + SG_ Momentenangaben_ungenau__Moment : 35|2@1+ (1,0) [0|0] "" XXX + +BO_ 1408 Motor_Flexia: 8 XXX + SG_ Ansaugsystem m0 : 63|1@1+ (1,0) [0|0] "" XXX + SG_ Hubraum m0 : 56|7@1+ (0.1,0) [0|12.7] "l" XXX + SG_ Steigung_der_Befuellungskennlin m1 : 56|8@1+ (0.001,0) [0|0.255] "l/mm" XXX + SG_ Anzahl_Zylinder m0 : 52|4@1+ (1,0) [0|15] "Vent./Zyl." XXX + SG_ Bewertungsfaktor_Russindex_Turb m1 : 50|6@1+ (0.1,0) [0|6.3] "" XXX + SG_ Anzahl_Ventile m0 : 49|3@1+ (1,0) [0|7] "Vent./Zyl." XXX + SG_ Bewertungsfaktor_Verschleissind m1 : 44|6@1+ (0.1,0) [0|6.3] "" XXX + SG_ Hersteller_Code m1 : 40|4@1+ (1,0) [0|15] "" XXX + SG_ Motorleistung m0 : 40|9@1+ (1,0) [0|512] "KW" XXX + SG_ Max_Drehmoment m0 : 32|8@1+ (10,0) [0|2550] "Nm" XXX + SG_ Normierter_Verbrauch m1 : 32|8@1+ (10,0) [0|2550] "l/Zyl." XXX + SG_ Oelniveauschwelle m1 : 24|8@1+ (0.25,0) [0|63.75] "cm" XXX + SG_ Drehzahl_MaxNorm m0 : 24|8@1+ (100,0) [0|25500] "U/min" XXX + SG_ Verschleissindex : 16|8@1+ (1,0) [0|254] "" XXX + SG_ Russindex : 8|8@1+ (1,0) [0|254] "" XXX + SG_ Verbrennungsart : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_Flexia_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Warm_Up_Cycle : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Driving_Cycle : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Motor_Flexia : 1|3@1+ (1,0) [0|15] "" XXX + SG_ Multiplex_Schalter_Motor_Flexia M : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1416 Motor_7: 8 XXX + SG_ Oltemperatur : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_7_3 : 40|16@1+ (1,0) [0|0] "" XXX + SG_ Ladedruck : 32|8@1+ (0.01,0) [0|2.54] "bar" XXX + SG_ Vorzeichen_Motordrehzahlgradien : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Motordrehzahlgradient : 24|7@1+ (1,0) [0|126] "U/min" XXX + SG_ Hoeheninfo__Motor_7_ : 16|8@1+ (0.00787,0) [0|2] "" XXX + SG_ Klemme_DFM : 8|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ PTC___Gluehstifte_ausgeschaltet : 5|3@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_7_1 : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag__Motor_7_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Statusbit_Geschwindikeitsbegren : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Geschwindigkegrenzung_aktivierb : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Leerlauf_Solldrehzahl_auf_Max_W : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1160 Motor_6: 8 XXX + SG_ Zaehler_Motor_6 : 60|4@1+ (1,0) [0|15] "" XXX + SG_ Frei_Motor_6_4 : 58|2@1+ (1,0) [0|0] "" XXX + SG_ ltemperaturschutz : 57|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_Bremseingriff_Freigabe : 56|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_6_3 : 48|8@1+ (1,0) [0|0] "" XXX + SG_ Ruckmeldung_Momenten : 40|8@1+ (0.39,0) [0|100] "" XXX + SG_ GRA_Sollbeschleunigung : 32|8@1+ (0.024,-3.984) [-3.984|2.112] "m/s2" XXX + SG_ Hoeheninfo__Motor_6_ : 24|8@1+ (0.00787,0) [0|2] "" XXX + SG_ Istmoment_f_r_Getriebe : 16|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Sollmoment_f_r_Getriebe : 8|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Checksumme_Motor_6 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1152 Motor_5: 8 XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Motortext_Bits__4_1_ : 52|4@1+ (1,0) [0|0] "" XXX + SG_ Doppelte_Momente : 51|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_Hauptschalter : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Anlasser_Ausspuren : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Anlasser_Freigabe : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Klimadrucksignal__Motor_5_ : 40|8@1+ (0.2,0) [0|50.8] "bar" XXX + SG_ K_hlerluefteransteuerung : 32|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Verbrauch_Ueberlauf : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Kraftstoffverbrauchssignal : 16|15@1+ (1,0) [0|32767] "ul" XXX + SG_ Klimakompressor_Leistungsreduzi : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Kennfeldkuehlung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Klimakompressor_aus__Motor_5_ : 13|1@1+ (1,0) [0|0] "" XXX + SG_ CAT_Warnung : 12|1@1+ (1,0) [0|0] "" XXX + SG_ OBD_2_Lampe : 11|1@1+ (1,0) [0|0] "" XXX + SG_ E_Gas_Lampe : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Vorgluehlampe__Motor_5_ : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Ladekontroll_Lampe : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Code M : 6|2@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_norm__Verbrauch m3 : 0|6@1+ (20,0) [0|1260] "l/Zyl" XXX + SG_ Multiplex_Info_Motortyp m2 : 0|6@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Drehzahl_MD_Max m1 : 0|6@1+ (100,0) [0|6300] "U/min" XXX + SG_ Multiplex_Info_Max_Drehmoment m0 : 0|6@1+ (10,0) [0|630] "Nm" XXX + +BO_ 896 Motor_3: 8 XXX + SG_ Drosselklappenpoti : 56|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Motor_Wunschdrehzahl : 48|8@1+ (25,0) [0|6350] "U/min" XXX + SG_ Motordrehzahlbeeinflussung : 40|8@1+ (0.392,0) [0|100] "%" XXX + SG_ Kein_Start_Stop : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Kein_E_Gas : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Reserviert_Motor_3_1 : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Vorzeichen_Rad_Wunschmoment : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Rad_Wunschmoment : 24|12@1+ (0.39,0) [0|1597] "MDI" XXX + SG_ Fahrpedal_Rohsignal : 16|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Ansauglufttemperatur : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX + SG_ Fehlerstatus_Ansauglufttemperat : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Motorsteuerger_t_gesperrt : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Drosselklappenwinkel_ungenau : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrpedalwert_ungenau__Motor_3_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Motor_3_1 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Motor_Wunschdrehzahl_Priorit_t : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Uebertemperaturschutz__Motor_3_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Vorgluehmeldung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 648 Motor_2: 8 XXX + SG_ Minimales_Motormoment_bei_Zuend : 56|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Begrenzungsmoment : 48|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Leerlaufsolldrehzahl__Motor_2_ : 40|8@1+ (10,0) [0|2540] "U/min" XXX + SG_ Soll_Geschwindigkeit_bei_GRA_Be : 32|8@1+ (1.28,0) [0|325] "km/h" XXX + SG_ Fahrzeuggeschwindigkeit : 24|8@1+ (1.28,0) [0|325] "km/h" XXX + SG_ GRA_Status : 22|2@1+ (1,0) [0|0] "" XXX + SG_ OBD_2_freeze_frame : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Normalbetrieb : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Klima__4_1_ : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kuhlmitteltempera : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Bremstestschalter : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Bremslichtschalter : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Kuehlmitteltemperatur__Motor_2_ : 8|8@1+ (0.75,-48) [-48|142.5] "" XXX + SG_ Multiplex_Code_Motor_2 M : 6|2@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Motorcode__4_x_ m1 : 0|6@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Getriebecode m2 : 0|6@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Info_Max_Moment__Norm m3 : 0|6@1+ (10,0) [0|630] "Nm" XXX + SG_ Multiplex_Info_CAN_Stand m0 : 0|6@1+ (1,0) [0|0] "" XXX + +BO_ 640 Motor_1: 8 XXX + SG_ Fahrerwunschmoment : 56|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ mechanisches_Motor_Verlustmomen : 48|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Fahrpedalwert_oder_Drosselklapp : 40|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ inneres_Motor_Moment_ohne_exter : 32|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Motordrehzahl : 16|16@1+ (0.25,0) [0|16256] "U/min" XXX + SG_ inneres_Motor_Moment : 8|8@1+ (0.39,0) [0|99] "MDI" XXX + SG_ Momentenangaben_ungenau : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Getriebe_Momentene : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Brems_Momenteneing : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Time_Out_Bremsen_Botschaft : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Kupplungsschalter : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Kickdownschalter : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrpedalwert_ungenau__Motor_1_ M : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Leergasinformation : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 262 Master_3: 8 XXX + SG_ Frei_Master_3_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Motortemperatur_linearisiert : 48|8@1+ (0.75,-48) [-48|143.25] "" XXX + SG_ Indiziertes_Sollmoment_f_r_Vmax : 32|16@1+ (0.0015259,0) [0|100] "%" XXX + SG_ Relative_Momentenanforderung_de : 16|16@1+ (0.003052,0) [0|200] "%" XXX + SG_ Delta_Motormoment_aus_Verlustmo : 0|16@1+ (0.003052,-100) [-100|100] "%" XXX + +BO_ 260 Master_2: 8 XXX + SG_ Ubat_Freigabe_DVE : 45|1@1+ (1,0) [0|0] "" XXX + SG_ DK_Sollwertbegrenzung : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Einspritzverbot_DV_E_lernen : 43|1@1+ (1,0) [0|0] "" XXX + SG_ Master_erkannt : 42|1@1+ (1,0) [0|0] "" XXX + SG_ Vmax_Begrenzung_aktiv : 41|1@1+ (1,0) [0|0] "" XXX + SG_ SA_Verbot_von_FGR : 40|1@1+ (1,0) [0|0] "" XXX + SG_ Pedalwert_Komplement : 24|16@1+ (1,0) [0|0] "" XXX + SG_ Zaehler__Master_2_ : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Normierter_Fahrpedalwinkel : 0|16@1+ (0.001526,0) [0|100] "%" XXX + +BO_ 258 Master_1: 8 XXX + SG_ Stationaere_Solldrehzahl : 56|8@1+ (10,0) [0|2550] "Umin" XXX + SG_ Drehmoment_LLR__I_Anteil_ : 40|16@1+ (0.003052,-100) [-100|100] "%" XXX + SG_ Drehmoment_LLR__PD_Anteil_ : 24|16@1+ (0.003052,-100) [-100|100] "%" XXX + SG_ Drehmoment_LLR__Luftpfad_ : 8|16@1+ (0.003052,-100) [-100|100] "%" XXX + SG_ Frei_Master_1_1 : 4|4@1+ (1,0) [0|0] "" XXX + SG_ LLR_ist_aktiv : 3|1@1+ (1,0) [0|0] "" XXX + SG_ I_Anteil_der_LLR_aktiv : 2|1@1+ (1,0) [0|0] "" XXX + SG_ PD_Anteil_der_LLR_aktiv : 1|1@1+ (1,0) [0|0] "" XXX + SG_ LLR_Freigabe_nach_Start : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1984 LWS_Kalibrierung: 2 XXX + SG_ Frei_LWS_Kalibrierung_1_1 : 15|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Identifier : 8|7@1+ (1,0) [0|0] "" XXX + SG_ Frei_LWS_Kalibrierung_1_2 : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Command_Dode_Word : 0|4@1+ (1,0) [0|0] "" XXX + +BO_ 1986 Lenkwinkel_Init: 4 XXX + SG_ Kodierbytes : 8|24@1+ (1,0) [0|0] "" XXX + SG_ Identiifier_f_r_LWS_Init : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 192 Lenkwinkel_1__RB_: 2 XXX + SG_ Vorzeichen__RB_ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel__RB_ : 5|10@1+ (2.5,-720) [-720|720] "" XXX + SG_ LWS_OK__RB_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Abgleich__RB_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkwinkel_1_1__RB_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ FINE_CHECK__RB_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ COARSE_CHECK__RB_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 196 Lenkwinkel_1__ITT_: 2 XXX + SG_ Vorzeichen__ITT_ : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel__ITT_ : 5|10@1+ (1.5,-768) [-768|766.5] "" XXX + SG_ LWS_OK : 4|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Abgleich__ITT_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ LWS_Initialisierung__ITT_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ FINE_CHECK__ITT_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ COARSE_CHECK__ITT_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 194 Lenkwinkel_1: 8 XXX + SG_ Checksumme_Lenkwinkel_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Kodierdaten : 48|8@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Lenkwinkel_1 : 44|4@1+ (1,0) [0|15] "" XXX + SG_ Status_KL30_Ausfall__z_Zt__nur : 43|1@1+ (1,0) [0|0] "" XXX + SG_ Interner_Status : 41|2@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkwinkel_1_1 : 40|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkwinkel_ID : 32|8@1+ (1,0) [0|0] "" XXX + SG_ Lenkradwinkel_Geschwindigkeit_S : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkradwinkel_Geschwindigkeit : 16|15@1+ (0.04375,0) [0|1433.6] "Grad/Sek" XXX + SG_ Lenkradwinkel_Sign : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkradwinkel : 0|15@1+ (0.04375,0) [0|1433.6] "Grad" XXX + +BO_ 1502 Lenkhilfe_Fehler: 7 XXX + SG_ Werkstattcode : 48|8@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Signal : 45|3@1+ (1,0) [0|7] "" XXX + SG_ Sensorcodierung_Lenkhilfe : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Kennliniencodierung_Lenkhilfe : 40|4@1+ (1,0) [0|15] "Kennlinie" XXX + SG_ Geber_f__Lenkw__Speicher_ausles : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstr__Speicher_auslesen : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Steuerger__Speicher_auslesen : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Steuergeraet_defekt : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_3 : 32|4@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_4 : 30|2@1+ (1,0) [0|0] "" XXX + SG_ Geber_f__Lenkwi__k__CAN_Komm_sp : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Geber_f__Lenkwinkel_k__CAN_Komm : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstr__k__CAN_Kommunik__sp : 27|1@1+ (1,0) [0|0] "" XXX + SG_ Kombiinstrument_k__CAN_Kommunik : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Steuergeraet_k__CAN_Kommunik__S : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Steuergeraet_keine_CAN_Kommunik : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks__nach_Mas : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks_nach_Mass : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks__nach___s : 21|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Spannung_Ks__nach__ : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Temperaturschutz_sp_ : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Temperaturschutz : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Betrieb_unpl__Sig__sp : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfe_Betrieb_unpl__Signal : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_k__Kommunik__sp : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_keine_Kommunik_ : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_defekt_sp_ : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_defekt : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_Unterbrechung_s : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_Unterbrechung : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhilfesensor_Ks_nach_Masse_s : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkhifesensor_Ks_nach_Masse : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_15_zu_klein_sp_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_15_zu_klein : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_5 : 4|2@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_klein_sp_ : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_klein : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_gro__sp_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Spannung_Kl_30_zu_gro_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 976 Lenkhilfe_1: 2 XXX + SG_ Fehlerspeichereintrag__Lenkhilf : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Lenkhilfe_1_2 : 9|6@1+ (1,0) [0|0] "" XXX + SG_ Fehlerlampe_Lenkhilfe : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Lastinformation : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Lastinformation : 0|7@1+ (1,0) [0|127] "A" XXX + +BO_ 1312 Kombi_3: 8 XXX + SG_ Frei_Kombi_3_2 : 60|4@1+ (1,0) [0|0] "" XXX + SG_ Kilometerstand : 40|20@1+ (1,0) [0|1000000] "km" XXX + SG_ Fehlerstatus_Standzeit : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Standzeit : 24|15@1+ (4,0) [0|131068] "sec" XXX + SG_ Frei_Kombi_3_1 : 20|4@1+ (1,0) [0|0] "" XXX + SG_ Schluesselinfo : 16|4@1+ (1,0) [0|15] "" XXX + SG_ Kombi_Multiplex_Code M : 14|2@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Niveauregulie m3 : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Marke m1 : 11|3@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Lenkhilfe m3 : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Dieselpumpe m3 : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Lenkwinkel m3 : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Baureihe m1 : 8|3@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Laendervariante m0 : 8|6@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Allrad m3 : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Bordnetz m3 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_ACC m3 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Airbag m3 : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Generation m1 : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Klima m3 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_ABS m3 : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Verbauliste_Motor m3 : 0|1@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Derivat m1 : 0|4@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Sprachvariante m0 : 0|8@1+ (1,0) [0|0] "" XXX + SG_ Kombi_Multiplex_Reifenumfang m2 : 0|12@1+ (1,0) [0|4095] "mm" XXX + +BO_ 1056 Kombi_2: 8 XXX + SG_ Frei_Kombi_2_2 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kl__58_s : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58s__Kombi_2_ : 48|7@1+ (1,0) [0|100] "%" XXX + SG_ Fehlerstatus_Kl__58_d : 47|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58d__Kombi_2_ : 40|7@1+ (1,0) [0|100] "%" XXX + SG_ Kuehlmitteltemp__4_1__Kombi_2_ : 32|8@1+ (0.75,-48) [-48|142.5] "C" XXX + SG_ Oeltemperatur_4_1 : 24|8@1+ (1,-60) [-60|194] "C" XXX + SG_ Aussentemp__ungefiltert_4_1__Ko : 16|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Aussentemperatur_gefiltert : 8|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Fehlerspeichereintrag__Kombi_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Kombi_2_1 : 4|3@1+ (1,0) [0|0] "" XXX + SG_ Anhaenger_erkannt : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerst__Kuehlmitteltemp__4_1 : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Oeltemperatur_4_1 : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Aussentemp__4_1 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 800 Kombi_1: 8 XXX + SG_ Frei_Kombi_1_3 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Angezeigte_Geschwindigkeit : 46|10@1+ (0.32,0) [0|325] "km/h" XXX + SG_ Blinker_rechts_4_1 : 45|1@1+ (1,0) [0|0] "" XXX + SG_ Blinker_links_4_1 : 44|1@1+ (1,0) [0|0] "" XXX + SG_ Gesetzte_Zeitluecke__Kombi_1_ : 43|1@1+ (1,0) [0|0] "" XXX + SG_ ADR_Summer_abgeschaltet : 42|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Kombi_1_2 : 40|2@1+ (1,0) [0|0] "" XXX + SG_ Geschwindigkeit__Kombi_1_ : 25|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Signalquelle_Geschwindigkeit_4_ : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Tankwarnung : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Tankinhalt : 16|7@1+ (1,0) [0|126] "l" XXX + SG_ Tankstop : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Kombi_1_7 : 12|3@1+ (1,0) [0|0] "" XXX + SG_ Kombi_im_Stellgliedtest : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Ladekontroll_Lampe__Kombi_ : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsinfo : 8|2@1+ (1,0) [0|0] "" XXX + SG_ Vorgluehlampe__Kombi_1_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Tankwarnlampe : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Heissleuchten_Vorwarnung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Kuehlmittelmangel : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Dynamische_Oeldruckwarnung : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Oeldruck : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Tank : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrertuer_4_1 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1504 Klima_1: 8 XXX + SG_ Aussentemp__ungef__Sto_f__4_1 : 56|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Fehlerspeichereintrag__Klima_ : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Klima_1_5 : 50|5@1+ (1,0) [0|0] "" XXX + SG_ AC_Schalter : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Temperatureinheit : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Kuehlerluefteransteuerung__Klim : 40|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Geblaeselast_4_1 : 32|8@1+ (0.4,0) [0|101.6] "%" XXX + SG_ Kompressorlast : 24|8@1+ (0.25,0) [0|63.5] "Nm" XXX + SG_ Klimadrucksignal__Klima_1_ : 16|8@1+ (0.2,0) [0|50.8] "bar" XXX + SG_ Aussentemp__ungef__4_1__Klima_1 : 8|8@1+ (0.5,-50) [-50|77] "C" XXX + SG_ Kaeltemitteldruck_veraltet : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Kompressormoment_veraltet_4_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Keine_Heizleistg_gewuenscht_4_1 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Kompressorzustand__4_1_ : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Frontscheibe : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Heckscheibe : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrerwunsch_Zuheizer : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Drehzahlanhebung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 906 GRA_Neu: 4 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ GRA_Hauptschalt : 8|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Abbrechen : 9|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Down_kurz : 10|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Up_kurz : 11|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Down_lang : 12|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Up_lang : 13|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Fehler_Bed : 14|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Kodierinfo : 15|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Neu_Setzen : 16|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Recall : 17|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Sender : 18|2@1+ (1,0) [0|3] "" XXX + SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX + SG_ GRA_Tip_Down : 24|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Tip_Up : 25|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Zeitluecke : 26|2@1+ (1,0) [0|3] "" XXX + SG_ GRA_Sta_Limiter : 28|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Typ_Hauptschalt : 29|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Sportschalter : 30|1@1+ (1,0) [0|1] "" XXX + SG_ GRA_Fehler_Tip : 31|1@1+ (1,0) [0|1] "" XXX + +BO_ 904 GRA: 3 XXX + SG_ Checksumme_GRA_alt : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_GRA_alt : 15|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR_Bedienteil_Fehler : 14|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR_beschleunigen : 13|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR_verzoegern : 12|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Tipschalter__Wie : 11|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Tipschalter__Set : 10|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Tipschalter__Aus : 9|1@1+ (1,0) [0|0] "" XXX + SG_ GRA_alt__ADR___Hauptschalter : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_GRA_alt : 0|8@1+ (1,0) [0|255] "" XXX + +BO_ 1352 Getriebe_4: 3 XXX + SG_ Testparameter_2 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ Testparameter_1 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ Waehlhebelausleuchtung : 4|4@1+ (1,0) [0|0] "" XXX + SG_ Frei_Getriebe_4_1 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Testfreigabeflag : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Handbremserinnerung_s_Lampe : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Shiftlock_Getriebe_4 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1344 Getriebe_2: 8 XXX + SG_ eingelegte_Fahrstufe : 60|4@1+ (1,0) [0|0] "" XXX + SG_ Ganganzeige_Kombi___Getriebe_Va : 56|4@1+ (1,0) [0|15] "" XXX + SG_ Fehlerlampe_f_r_Kupplung_bei_VL : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Anforderung_Kriechadaption : 54|1@1+ (1,0) [0|0] "" XXX + SG_ ECO_Anzeige__4_1_ : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Shift_Lock_Lampe : 52|1@1+ (1,0) [0|0] "" XXX + SG_ Unterdrueckung_von_Warnungen : 51|1@1+ (1,0) [0|0] "" XXX + SG_ Gong : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Starter_wird_angesteuert : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Hochschaltlampe : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Synchronisationszeit : 40|8@1+ (20,0) [0|5080] "ms" XXX + SG_ invertierte_Synchronisations_Wu : 32|8@1+ (25,0) [0|6350] "U/min" XXX + SG_ Synchronisations_Wunschdrehzahl : 24|8@1+ (25,0) [0|6350] "U/min" XXX + SG_ Gradientenbegrenzung : 16|8@1+ (10,0) [0|2540] "Nm/s" XXX + SG_ Leerlaufsolldrehzahl__Getriebe : 8|8@1+ (10,0) [0|2540] "U/min" XXX + SG_ Zahler_Getriebe_2 : 4|4@1+ (1,0) [0|15] "" XXX + SG_ Zwischengasflag : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Ecomatic__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Schubabschaltunterstuetzung : 1|1@1+ (1,0) [0|0] "" XXX + SG_ LFR_Adaption_Freigabeflag : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1088 Getriebe_1: 8 XXX + SG_ Wandlerverlustmoment : 56|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ Fehlerspeichereintrag__Getriebe : 55|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 51|4@1+ (1,0) [0|15] "" XXX + SG_ Gang_eingelegt : 50|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltabsicht : 49|1@1+ (1,0) [0|0] "" XXX + SG_ Motor_aus : 48|1@1+ (1,0) [0|0] "" XXX + SG_ OBD_Status__Getriebe_1___4_1_ : 46|2@1+ (1,0) [0|0] "" XXX + SG_ Kuehlleistung : 44|2@1+ (1,0) [0|0] "" XXX + SG_ Getriebe_Notlauf : 40|4@1+ (1,0) [0|0] "" XXX + SG_ Fahrwiderstandsindex : 32|8@1+ (0.249,-31.6) [-31.6|31.6] "" XXX + SG_ inneres_Soll_Motormoment : 24|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ Uebertragungsfunktion : 16|8@1+ (0.1,0) [0|25.4] "" XXX + SG_ Waehlhebelposition__Getriebe_1_ : 12|4@1+ (1,0) [0|0] "" XXX + SG_ Zielgang_oder_eingelegter_Gang : 8|4@1+ (1,0) [0|0] "" XXX + SG_ EGS_Anforderung : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Kodierung_im_MSG : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Leerlaufsolldrehzahlanhebung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Wandlerkupplung : 3|2@1+ (1,0) [0|0] "" XXX + SG_ Klimakompressor_aus__Getriebe_1 : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Getriebe_und_Wandlerschu : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltung_aktiv__Getriebe_1_ : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 912 Gate_Komf_1: 8 XXX + SG_ GK1_Sta_RDK_Warn : 0|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Anhaen : 1|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Licht3 : 3|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Tuerkont : 4|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Li_vorn : 5|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SleepAckn : 7|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_CharismaModus m1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ GK1_SamFktNr M : 12|4@1+ (1,0) [0|15] "" XXX + SG_ GK1_Fa_Tuerkont : 16|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_RueckfahrSch : 17|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_ELV_verrieg : 18|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Kessy_2 : 19|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Stdhzg : 20|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SH_Verbau : 21|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_ParkFrontWi : 22|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_KW_Warm : 23|1@1+ (1,0) [0|1] "" XXX + SG_ BCM_Remotestart_Betrieb : 24|1@1+ (1,0) [0|1] "" XXX + SG_ BSK_HL_geoeffnet : 26|1@1+ (1,0) [0|1] "" XXX + SG_ BSK_HR_geoeffnet : 27|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Rueckfahr : 28|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_links : 29|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_rechts : 30|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_mitte : 31|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BLS_ILM : 32|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_EDC_ILM : 33|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Blinker_li : 34|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Blinker_re : 35|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_def_P_verr : 36|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_LS1_Fernlicht : 37|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_Licht2 : 38|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_LSM : 39|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Count_Anhaen : 40|4@1+ (1,0) [0|15] "" XXX + SG_ BSK_BT_geoeffnet : 41|1@1+ (1,0) [0|1] "" XXX + SG_ BSK_HD_Hauptraste : 43|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BLS_AAG : 44|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_EDC_AAG : 45|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Anhaenger : 46|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_BrLi_Anhaen : 47|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Abblendlicht : 48|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Fernlicht : 49|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Wischer_vorn : 50|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Sta_ILM_F_1 : 51|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Abbl_VL_def : 52|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Abbl_VR_def : 53|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Blink_Autob : 54|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Warnblk_Status : 55|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SH_laeuft : 56|1@1+ (1,0) [0|1] "" XXX + SG_ SH1_ein_Wasserpumpe : 57|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Nebel_ein : 58|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Bremslicht : 59|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_Anh_abgesteckt : 60|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_AnhKonLamp : 61|1@1+ (1,0) [0|1] "" XXX + SG_ LDS_Stellung_AFL : 62|1@1+ (1,0) [0|1] "" XXX + SG_ GK1_SH_Zusatzfkt : 63|1@1+ (1,0) [0|1] "" XXX + + +BO_ 1340 Fahrwerk_1: 1 XXX + SG_ Frei_Fahrwerk_1_2 : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Fahrwerk_1_1 : 6|2@1+ (1,0) [0|0] "" XXX + SG_ Einstellung_Fahrwerkdaempfung_4 : 4|3@1+ (1,0) [0|7] "" XXX + SG_ Ansteuererung_Fahrzeugniveau : 0|4@1+ (1,0) [0|15] "" XXX + +BO_ 1472 EPB_1: 8 XXX + SG_ COUNTER : 0|4@1+ (1,0) [0|15] "" XXX + SG_ EP1_Fehler_Sta : 4|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ EP1_Sta_EPB : 6|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Sta_Schalter : 7|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Spannkraft : 8|5@1+ (1,0) [0|30] "Unit_KiloNewto" XXX + SG_ EP1_Schalterinfo : 13|2@1+ (1,0) [0|3] "" XXX + SG_ EP1_Sta_NWS : 15|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Neig_winkel : 16|8@1+ (1,-128) [-128|127] "Unit_PerCentOfForceOfGravi" XXX + SG_ EP1_Verzoegerung : 24|8@1+ (0.048,-7.968) [-7.968|4.224] "Unit_MeterPerSeconSquar" XXX + SG_ EP1_Fehlereintr : 32|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Freigabe_Ver : 33|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_AutoHold_zul : 34|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_AutoHold_aktiv : 35|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_SleepInd : 36|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Status_Kl_15 : 37|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Lampe_AutoP : 38|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Bremslicht : 39|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Warnton1 : 40|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Warnton2 : 41|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_AnfShLock : 42|1@1+ (1,0) [0|1] "" XXX + SG_ EPB_Autoholdlampe : 43|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_QualNeigWi : 44|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_KuppModBer : 45|2@1+ (1,0) [0|3] "" XXX + SG_ EP1_HydrHalten : 47|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Fkt_Lampe : 48|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EP1_Warnton : 49|1@1+ (1,0) [0|1] "" XXX + SG_ EP1_Fehler_BKL : 50|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ EP1_Fehler_gelb : 51|1@1+ (1,0) [0|1] "" XXX + SG_ EP1__Text : 52|4@1+ (1,0) [0|8] "" Vector__XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 1326 Diag_Lenkhilfe: 3 XXX + SG_ Werkstattcode__Diag_ : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Multiplex_Signal__Diag_ : 13|3@1+ (1,0) [0|7] "" XXX + SG_ Befehl_Sensorcodierung_Lenkhilf : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Befehl_Kennliniencodierung_Lenk : 8|4@1+ (1,0) [0|0] "" XXX + SG_ Befehl_Fehlerspeicher_loeschen : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1432 Daempfer_1: 2 XXX + SG_ Frei_Daempfer_1_4 : 12|4@1+ (1,0) [0|0] "" XXX + SG_ Textbits_Daempfer : 8|4@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeicherbit__Daempfer_1_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Systemstatus__Daempfer_1_ : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Daempfer_1_3 : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Status_CDC_Taster : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Daempfer_1_2 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Daempferregelung_4_1 : 0|3@1+ (1,0) [0|7] "" XXX + +BO_ 1392 BSG_Last: 4 XXX + SG_ Klimaanlage_abschalten : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Sitzbelueftung_abschalten : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Wischwasserheizung_abschalten : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Lenkradheizung_abschalten : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Sitze_abschalten : 27|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Aussenspiegel_abschalt : 26|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Frontscheibe_abschalte : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Heizbare_Heckscheibe_abschalten : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Batteriespannung_Bordnetzbatter : 16|8@1+ (0.05,5) [5|17.7] "V" XXX + SG_ Motorhaubenkontakt : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Leuchtweitenregulierung : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag__BSG_Last : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Zustand_der_Starterbatterie : 11|2@1+ (1,0) [0|0] "" XXX + SG_ Zustand_der_Bordnetzbatterie : 9|2@1+ (1,0) [0|0] "" XXX + SG_ LL_Drehzahlanhebung : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_L : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_BSG_Last_1_1 : 4|3@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_50 : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_X : 2|1@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_15 : 1|1@1+ (1,0) [0|0] "" XXX + SG_ ZAS_Klemme_S : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1136 BSG_Kombi: 5 XXX + SG_ Frei_BSG_Kombi_1_3 : 36|4@1+ (1,0) [0|0] "" XXX + SG_ Ruecksitzlehne_HR_verr__4_1 : 35|1@1+ (1,0) [0|0] "" XXX + SG_ Ruecksitzlehne_HL_verr__4_1 : 34|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerlampe_Lenkhilfe_veraltet : 33|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerlampe_Lenkhilfe__BSG_Komb : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kl__58s : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58s__BSG_Kombi_ : 24|7@1+ (1,0) [0|100] "%" XXX + SG_ Fehlerstatus_Kl__58d : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Klemme_58d__BSG_Kombi_ : 16|7@1+ (1,0) [0|100] "%" XXX + SG_ Unterspannung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_BSG_Kombi_1_2 : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Heckdeckel_geoeffnet : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Motorhaube_geoeffnet : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Tuer_hinten_rechts_geoeffnet : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Tuer_hinten_links_geoeffnet : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Beifahrertuer_geoeffnet : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrertuer_geoeffnet : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Lade_Kontrollampe : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_BSG_Kombi_1_1 : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Rueckfahrlicht : 5|1@1+ (1,0) [0|0] "" XXX + SG_ DWA_Akku : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Warnblink_Mode : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Anhaenger_Kontrollampe : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Blinker_rechts_Kontrollampe : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Blinker_links_Kontrollampe : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 424 Bremse_6: 3 XXX + SG_ Checksumme_Bremse_6 : 16|8@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Bremse_6 : 12|4@1+ (1,0) [0|15] "" XXX + SG_ Status_Bremsdruck__Bremse_6__du : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_6_1 : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsdruck__Bremse_6_ : 0|10@1+ (0.3255,-40) [-40|293] "bar" XXX + +BO_ 1192 Bremse_5: 8 XXX + SG_ CHECKSUM : 56|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 52|4@1+ (1,0) [0|15] "" XXX + SG_ Bremslicht_ECD : 51|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsentemperatur_vorn : 48|3@1+ (125,125) [125|1000] "C" XXX + SG_ Frei_Bremse_5_5 : 40|8@1+ (1,0) [0|0] "" XXX + SG_ Offset_Gierrate : 32|8@1+ (0.05,-6.375) [-6.375|6.375] "deg/s" XXX + SG_ Vorzeichen_Bremsdruck : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Bremsdruck_durch_ESP_Sys : 30|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsdruck_ungueltig : 29|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_5_3 : 28|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsdruck : 16|12@1+ (0.1,0) [0|250] "bar" XXX + SG_ Vorzeichen_der_Giergeschwindigk : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Gierrate_ungueltig : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Giergeschwindigkeit : 0|14@1+ (0.01,0) [0|100] "Grad/sec" XXX + +BO_ 672 Bremse_4: 3 XXX + SG_ Frei_Bremse_4_1 : 17|7@1+ (1,0) [0|0] "" XXX + SG_ Einheit_Kupplungssteifigkeit : 16|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_Vorgabewert_hinten_Kupplung : 8|8@1+ (0.7874,0) [0|100] "%" XXX + SG_ ABS_Vorgabewert_mitte_Kupplungs : 0|8@1+ (3,-381) [-381|378] "Nm/min" XXX + +BO_ 1184 Bremse_3: 8 XXX + SG_ Radgeschw__HR_4_1 : 49|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_4 : 48|1@1+ (1,0) [0|0] "" XXX + SG_ Radgeschw__HL_4_1 : 33|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_3 : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Radgeschw__VR_4_1 : 17|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_2 : 16|1@1+ (0.01,0) [0|325] "km/h" XXX + SG_ Radgeschw__VL_4_1 : 1|15@1+ (0.01,0) [0|326] "km/h" XXX + SG_ Frei_Bremse_3_1 : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1440 Bremse_2: 8 XXX + SG_ gemessene_Querbeschleunigung : 63|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_2_2 : 62|1@1+ (1,0) [0|0] "" XXX + SG_ Impulszahl : 56|6@1+ (1,0) [0|63] "" XXX + SG_ Fehlerstatus_Wegimpulse_4_1 : 55|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremse_2_5 : 54|1@1+ (1,0) [0|0] "" XXX + SG_ Warnlampe_DDS : 53|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerspeichereintrag_Bremse : 52|1@1+ (1,0) [0|0] "" XXX + SG_ Wegimpulszaehlerstatus : 51|1@1+ (1,0) [0|0] "" XXX + SG_ Wegimpulse_Vorderachse : 40|11@1+ (1,0) [0|2047] "" XXX + SG_ Zeitstempel : 24|16@1+ (1,0) [0|65535] "tics" XXX + SG_ mittlere_Raddrehzahl__Bremse_2 : 9|15@1+ (0.002,0) [0|65.278] "U/sec" XXX + SG_ Querbeschl__TimerTic M : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Timer m1 : 0|8@1+ (0.04,0) [0|10.2] "usec" XXX + SG_ Querbeschleunigung m0 : 0|8@1+ (0.01,-1.27) [-1.27|1.27] "g" XXX + +BO_ 416 Bremse_1: 8 XXX + SG_ Geschwindigkeitsersatzwert : 63|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_Systemstatus_4_1 : 62|1@1+ (1,0) [0|0] "" XXX + SG_ ESP_Passiv_getastet : 61|1@1+ (1,0) [0|0] "" XXX + SG_ ASR_Steuerger_t : 60|1@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 56|4@1+ (1,0) [0|15] "" XXX + SG_ MSR_Eingriffsmoment : 48|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ ASR_Eingriffsmoment_schnell : 40|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ ASR_Eingriffsmoment_langsam : 32|8@1+ (0.39,0) [0|99.06] "MDI" XXX + SG_ Geschwindigkeit_neu__Bremse_1_ : 17|15@1+ (0.01,0) [0|326.39] "km/h" XXX + SG_ Aktiver_Bremskraftverstaerker : 16|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_in_Diagnose : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Schlechtwegausblen : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Schlechtwegausblendung : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Fahrer_bremst__Bremse_1___4_1_ : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Bremskontroll_Lampe : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Lampe_ASR___ESP : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Lampe_ABS : 8|1@1+ (1,0) [0|0] "" XXX + SG_ EBV_Eingriff : 7|1@1+ (1,0) [0|0] "" XXX + SG_ ASR_Schaltbeeinflussung : 5|2@1+ (1,0) [0|0] "" XXX + SG_ ESP_Eingriff : 4|1@1+ (1,0) [0|0] "" XXX + SG_ EDS_Eingriff : 3|1@1+ (1,0) [0|0] "" XXX + SG_ ABS_Bremsung__4_1_ : 2|1@1+ (1,0) [0|0] "" XXX + SG_ MSR_Anforderung : 1|1@1+ (1,0) [0|0] "" XXX + SG_ ASR_Anforderung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 680 Bremsbooster_1: 3 XXX + SG_ Fehlerspeichereintrag_Booster : 23|1@1+ (1,0) [0|0] "" XXX + SG_ Loseschalter_unplausibel_Boost : 22|1@1+ (1,0) [0|0] "" XXX + SG_ Position_Standby : 21|1@1+ (1,0) [0|0] "" XXX + SG_ ADR_Relais_ge_ffnet : 20|1@1+ (1,0) [0|0] "" XXX + SG_ Status_Bremsbooster_Steuerung : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Bremsbooster_verf_gbar : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Eingriff_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Bremseingriff_Fahrer : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Bremsbooster_1_1 : 12|4@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_Booster_1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Checksumme_Booster_1 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1400 BatMan_1: 1 XXX + SG_ Fehlerspeichereintrag__BatMan_ : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Leistungsrelais : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Messung_Starterleitung : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Zustand_Starterleitung : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Umschaltrelais_Bordnetzbatterie : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Ladung_Starterbatterie : 1|2@1+ (1,0) [0|0] "" XXX + SG_ Startmodus : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 704 Allrad_1: 5 XXX + SG_ Kupplungssteifigkeit_Hinten__Is : 32|8@1+ (0.7874,0) [0|100] "%" XXX + SG_ Fehlerspeichereintrag_Allrad_1 : 31|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Allrad_1_1 : 26|5@1+ (1,0) [0|0] "" XXX + SG_ Schaltung_Vorwarnung : 25|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltung_aktiv__Allrad_1_ : 24|1@1+ (1,0) [0|0] "" XXX + SG_ Ganginfo__PNG_ : 20|4@1+ (1,0) [0|0] "" XXX + SG_ PNG_Anzeige_blinkend : 19|1@1+ (1,0) [0|0] "" XXX + SG_ PNG_Status_4_1 : 16|3@1+ (1,0) [0|0] "" XXX + SG_ Kupplungssteifigkeit_Mitte__Ist : 8|8@1+ (3,-381) [-381|378] "Nm/min" XXX + SG_ Einheit_der_Kupplungssteifigkei : 7|1@1+ (1,0) [0|0] "" XXX + SG_ Geschwindigkeitsbegrenzung : 6|1@1+ (1,0) [0|0] "" XXX + SG_ Allrad_Warnlampe : 5|1@1+ (1,0) [0|0] "" XXX + SG_ Notlauf : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Kupplung_komplett_offen : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Fehlerstatus_Kupplungssteifigke : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Ubertemperaturschutz__Allrad_1_ : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Fehler_Allrad_Kupplung : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 1360 Airbag_2: 2 XXX + SG_ OOP_Beifahrer : 14|2@1+ (1,0) [0|0] "" XXX + SG_ OOP_Fahrer : 12|2@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_hinten_mitte : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_hinten_recht : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_hinten_links : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Belegungserkennung_Beifahrersit : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Checksumme_Airbag_2__reserviert : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 80 Airbag_1: 4 XXX + SG_ CHECKSUM : 24|8@1+ (1,0) [0|0] "" XXX + SG_ COUNTER : 20|4@1+ (1,0) [0|15] "" XXX + SG_ Fehlerspeichereintrag : 19|1@1+ (1,0) [0|0] "" XXX + SG_ Frei_Airbag_1_2 : 18|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_im_Stellgliedtest : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_in_Diagnose : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtwarnung_Beifahrer : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtschalter_Beifahrer : 14|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtwarnung_Fahrer : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Gurtschalter_Fahrer : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_Systemfehler : 11|1@1+ (1,0) [0|0] "" XXX + SG_ Kindersitzerkennung : 10|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_deaktiviert : 9|1@1+ (1,0) [0|0] "" XXX + SG_ Airbag_Lampe : 8|1@1+ (1,0) [0|0] "" XXX + SG_ Crash_Intensitaet : 5|3@1+ (1,0) [0|111] "B" XXX + SG_ Rollover : 4|1@1+ (1,0) [0|0] "" XXX + SG_ Seiten_Crash_Beifahrer : 3|1@1+ (1,0) [0|0] "" XXX + SG_ Seiten_Crash_Fahrer : 2|1@1+ (1,0) [0|0] "" XXX + SG_ Heck_Crash : 1|1@1+ (1,0) [0|0] "" XXX + SG_ Front_Crash : 0|1@1+ (1,0) [0|0] "" XXX + +BO_ 864 ADR_System: 8 XXX + SG_ S_Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ S_Frei_ADR_1_1 : 52|4@1+ (1,0) [0|0] "" XXX + SG_ S_Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX + SG_ S_Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX + SG_ S_Fehlerspeichereintrag_Bremsbo : 46|1@1+ (1,0) [0|0] "" XXX + SG_ S_ADR_Relais_geoeffnet : 45|1@1+ (1,0) [0|0] "" XXX + SG_ S_Bremsbooster_Status : 43|2@1+ (1,0) [0|0] "" XXX + SG_ S_Eingriff_Bremsbooster : 42|1@1+ (1,0) [0|0] "" XXX + SG_ S_Loeseschalter_unplausibel : 41|1@1+ (1,0) [0|0] "" XXX + SG_ S_Bremseingriff_Fahrer : 40|1@1+ (1,0) [0|0] "" XXX + SG_ S_Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX + SG_ S_Ansteuerung_optischer_Fahrerh : 38|1@1+ (1,0) [0|0] "" XXX + SG_ S_Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX + SG_ S_Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX + SG_ S_Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX + SG_ S_Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX + SG_ S_Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX + SG_ S_Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX + SG_ S_Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX + SG_ S_Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX + SG_ S_Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX + SG_ S_Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX + SG_ S_Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ S_Status_ADR_1__S_ : 13|2@1+ (1,0) [0|0] "" XXX + SG_ S_Fehler_ADR_1__S_ : 12|1@1+ (1,0) [0|0] "" XXX + SG_ S_Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ S_Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX + +BO_ 608 ADR_2: 4 XXX + SG_ Frei_ADR_2_2 : 27|5@1+ (1,0) [0|0] "" XXX + SG_ Anforderung_Bremsdruck : 16|11@1+ (0.0625,0) [0|127.9375] "bar" XXX + SG_ Frei_ADR_2_1 : 14|2@1+ (1,0) [0|0] "" XXX + SG_ Relais_Test_Fehler : 13|1@1+ (1,0) [0|0] "" XXX + SG_ Standby : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_ADR_2 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Checksumme_ADR_2 : 0|8@1+ (1,0) [0|0] "" XXX + +BO_ 1324 ADR_1: 8 XXX + SG_ Checksumme_ADR_1 : 56|8@1+ (1,0) [0|0] "" XXX + SG_ Frei_ADR_1_5 : 52|4@1+ (1,0) [0|0] "" XXX + SG_ Zeitluecke_gemessen : 48|4@1+ (1,0) [0|15] "" XXX + SG_ Fehlerspeichereintrag_ADR : 47|1@1+ (1,0) [0|0] "" XXX + SG_ Reserviert_ADR_1_1 : 40|7@1+ (1,0) [0|0] "" XXX + SG_ Anzeige_Sensor_blind : 39|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_optischer_Fahrerhin : 38|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Gong_2 : 37|1@1+ (1,0) [0|0] "" XXX + SG_ Ansteuerung_Gong_1 : 36|1@1+ (1,0) [0|0] "" XXX + SG_ Schaltaufforderung : 34|2@1+ (1,0) [0|0] "" XXX + SG_ Anzeige_Prioritaet : 33|1@1+ (1,0) [0|0] "" XXX + SG_ Anzeige_Zeitluecke : 32|1@1+ (1,0) [0|0] "" XXX + SG_ Wunschgeschwindigkeit : 24|8@1+ (1,0) [0|254] "km/h" XXX + SG_ Objekt_erfasst : 22|2@1+ (1,0) [0|0] "" XXX + SG_ Gesetzte_Zeitluecke__ADR_1_ : 18|4@1+ (1,0) [0|15] "" XXX + SG_ Synchronisation_Bremsbooster : 17|1@1+ (1,0) [0|0] "" XXX + SG_ Momentenanforderung_Freigabe : 16|1@1+ (1,0) [0|0] "" XXX + SG_ Verhinderung_Schubabschaltung : 15|1@1+ (1,0) [0|0] "" XXX + SG_ Status_ADR_1 : 13|2@1+ (1,0) [0|0] "" XXX + SG_ Fehler_ADR_1 : 12|1@1+ (1,0) [0|0] "" XXX + SG_ Zaehler_ADR_1 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Momentenanforderung_ADR : 0|8@1+ (0.39,0) [0|99] "MDI" XXX + +BO_ 1550 Einheiten_1: 2 XXX + SG_ MFA_v_Einheit_02 : 0|1@1+ (1,0) [0|1] "" XXX + +BO_ 872 ACC_System: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ACS_Sta_ADR : 12|2@1+ (1,0) [0|3] "" XXX + SG_ ACS_ADR_Schub : 14|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Schubabsch : 15|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_StSt_Info : 16|2@1+ (1,0) [0|3] "" XXX + SG_ ACS_MomEingriff : 18|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Typ_ACC : 19|2@1+ (1,0) [0|3] "" XXX + SG_ ACS_FreigSollB : 23|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Sollbeschl : 24|11@1+ (0.005,-7.22) [-7.22|3.005] "Unit_MeterPerSeconSquar" XXX + SG_ ACS_Anhaltewunsch : 38|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_Fehler : 39|1@1+ (1,0) [0|1] "" XXX + SG_ ACS_zul_Regelabw : 40|8@1+ (0.005,0) [0|1.265] "Unit_MeterPerSeconSquar" XXX + SG_ ACS_max_AendGrad : 48|8@1+ (0.02,0) [0.02|5.06] "Unit_MeterPerSeconSquar" XXX + +BO_ 1386 ACC_GRA_Anzeige: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ ACA_StaACC : 8|3@1+ (1,0) [0|7] "" XXX + SG_ ACA_ID_StaACC : 11|5@1+ (1,0) [0|31] "" XXX + SG_ ACA_Fahrerhinw : 16|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_AnzDisplay : 17|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Zeitluecke : 18|4@1+ (1,0) [0|15] "" XXX + SG_ ACA_V_Wunsch : 24|8@1+ (1,0) [0|255] "Unit_KiloMeterPerHour" XXX + SG_ ACA_kmh_mph : 32|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Akustik1 : 33|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Akustik2 : 34|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_PrioDisp : 35|2@1+ (1,0) [0|3] "" XXX + SG_ ACA_gemZeitl : 40|4@1+ (1,0) [0|15] "" XXX + SG_ ACA_ACC_Verz : 44|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_StaGRA : 48|3@1+ (1,0) [0|7] "" XXX + SG_ ACA_ID_StaGRA : 51|5@1+ (1,0) [0|31] "" XXX + SG_ ACA_Codierung : 56|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Tachokranz : 57|1@1+ (1,0) [0|1] "" XXX + SG_ ACA_Aend_Zeitluecke : 58|1@1+ (1,0) [0|1] "" XXX + SG_ COUNTER : 60|4@1+ (1,0) [0|15] "" XXX + +BO_ 208 Lenkhilfe_3: 6 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ LH3_BS_Spiegel : 8|4@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 12|4@1+ (1,0) [0|15] "" XXX + SG_ LH3_LM : 16|10@1+ (1,0) [0|1023] "" XXX + SG_ LH3_LMSign : 26|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_LMValid : 27|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_Sta_DSR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ LH3_BLW : 32|12@1+ (0.15,0) [0|615] "" XXX + SG_ LH3_BLWSign : 44|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_BLWValid : 45|1@1+ (1,0) [0|1] "" XXX + SG_ LH3_Lenkungstyp : 46|2@1+ (1,0) [0|3] "" XXX + +BO_ 978 Lenkhilfe_2: 7 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_Geradeaus : 12|1@1+ (1,0) [0|1] "" XXX + SG_ LH2_Sta_Charisma : 13|3@1+ (1,0) [0|7] "" XXX + SG_ LH2_Sta_HCA : 16|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_Ausg_LW1 : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LH2_Ausg_LW1_gue : 21|1@1+ (1,0) [0|1] "" XXX + SG_ LH2_StatEPS_PLA : 24|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_aktLenkeingriff : 32|8@1+ (1,0) [0|255] "" XXX + SG_ LH2_PLA_Err : 48|4@1+ (1,0) [0|15] "" XXX + SG_ LH2_PLA_Abbr : 52|4@1+ (1,0) [0|15] "" XXX + +BO_ 210 HCA_1: 5 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|15] "" XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" XXX + SG_ HCA_Status : 12|4@1+ (1,0) [0|15] "" XXX + SG_ LM_Offset : 16|15@1+ (0.03125,0) [0|300] "cNm" XXX + SG_ LM_OffSign : 31|1@1+ (1,0) [0|1] "" XXX + SG_ Vib_Freq : 32|4@1+ (4,0) [0|60] "Hz" XXX + SG_ Vib_Amp : 36|4@1+ (0.5,0) [0|7.5] "Nm" XXX + +BO_ 644 Motor_Bremse: 6 XXX + SG_ MOB_Standby : 12|1@1+ (1,0) [0|1] "" XXX + SG_ MOB_Freigabe : 14|1@1+ (1,0) [0|1] "" BCM_Gateway,Bremse_MK25AESP,Gateway_separat + SG_ MOB_Anhaltewunsch : 13|1@1+ (1,0) [0|1] "" Bremse_MK25AESP,Getriebe_DQ + SG_ MOB_CHECKSUM : 0|8@1+ (1,0) [0|255] "" Bremse_MK25AESP + SG_ MOB_COUNTER : 8|4@1+ (1,0) [0|15] "" Bremse_MK25AESP + SG_ TSK_v_Begrenzung_aktiv : 15|1@0+ (1,0) [0|1] "" XXX + SG_ TSK_ax_Getriebe_01 : 40|8@1+ (0.048,0) [0|255] "m/s2" XXX + SG_ MOB_Bremsstgr : 16|11@1+ (0.048852,0) [0|100] "Unit_PerCent" Vector__XXX + SG_ MOB_Bremsmom : 27|13@1+ (4,0) [0|32760] "Unit_NewtoMeter" Bremse_MK25AESP + +BO_ 870 AWV: 8 XXX + SG_ CHECKSUM : 0|8@1+ (1,0) [0|255] "" Vector__XXX + SG_ COUNTER : 8|4@1+ (1,0) [0|15] "" Vector__XXX + SG_ AWV_Text : 12|4@1+ (1,0) [0|14] "" Vector__XXX + SG_ AWV_1_Freigabe : 16|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_1_Prefill : 17|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_1_Parameter : 18|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AWV_only : 20|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_CityANB_Auspraegung : 21|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Halten : 22|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_Teilbremsung_Freigabe : 23|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Status : 24|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Fehler : 25|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_SU_Warnzeit : 26|2@1+ (1,0) [0|3] "" Vector__XXX + SG_ AWV_2_SU_Bremsruck : 28|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_SU_Gong : 29|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_SU_Lampe : 30|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Umfeldwarn : 31|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Freigabe : 32|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Ruckprofil : 33|3@1+ (1,0) [0|7] "" Vector__XXX + SG_ AWV_2_Warnton : 36|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Warnsymbol : 37|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Infoton : 38|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Gurtstraffer : 39|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Menueanf : 40|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Vorw_Menueanf : 41|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Status : 42|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_Konfiguration_Vorw_Status : 43|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ AWV_2_Abstandswarnung : 51|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_Zielbremsung_Freigabe : 52|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_CM_Anforderung : 53|1@1+ (1,0) [0|1] "" Vector__XXX + SG_ ANB_Ziel_Teilbrems_Verz_Anf : 54|10@1+ (0.024,-20.016) [0|1023] "Unit_MeterPerSeconSquar" Vector__XXX + +BO_ 1470 LDW_Status: 8 XXX + SG_ LDW_Lernmodus_rechts : 0|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus_links : 2|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Lernmodus : 9|3@1+ (1,0) [0|3] "" XXX + SG_ LDW_Textbits : 12|4@1+ (1,0) [0|15] "" XXX + SG_ LDW_Gong : 16|2@1+ (1,0) [0|3] "" XXX + SG_ LDW_Kameratyp : 18|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lampe_gelb : 19|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Lampe_gruen : 20|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_links : 21|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_SW_Warnung_rechts : 22|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_KD_Fehler : 23|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_DLC : 24|8@1+ (0.01,-1.25) [-1.25|1.25] "" XXX + SG_ LDW_TLC : 32|5@1+ (0.1,0) [0|3] "" XXX + SG_ LDW_Seite_DLCTLC : 37|1@1+ (1,0) [0|1] "" XXX + SG_ LDW_Frueh_Spaet : 38|2@1+ (1,0) [0|3] "" XXX + +BO_ 428 Bremse_8: 8 XXX + SG_ BR8_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX + SG_ BR8_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX + SG_ BR8_Sta_ACC_Anf : 12|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Verz_EPB_akt : 13|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_Br_temp : 14|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_Br_Druck : 15|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_TolAbgl_HL : 16|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX + SG_ BR8_TolAbgl_HR : 24|8@1+ (0.048828125,-6.201171875) [-6.201171875|6.15234375] "Unit_PerCent" XXX + SG_ BR8_Istbeschl : 32|9@1+ (0.02,-7.22) [-7.22|2.98] "Unit_MeterPerSeconSquar" XXX + SG_ BR8_Sta_HW_BLS : 41|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_QB_LBeschl : 42|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_ESC_Mode : 43|2@1+ (1,0) [0|3] "" XXX + SG_ BR8_aktBrSyst : 45|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Fa_bremst : 46|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_StaBrSyst : 47|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Laengsbeschl : 48|10@1+ (0.03125,-16) [-15.96875|15.9375] "Unit_MeterPerSeconSquar" XXX + SG_ BR8_Sta_ADR_BR : 58|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Quattro : 59|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_VerzReg : 60|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Sta_BLS : 61|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Verz_EPB : 62|1@1+ (1,0) [0|1] "" XXX + SG_ BR8_Check_EPB : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 928 Bremse_10: 8 XXX + SG_ B10_Checksumme : 0|8@1+ (1,0) [0|255] "" XXX + SG_ B10_Zaehler : 8|4@1+ (1,0) [0|15] "" XXX + SG_ B10_QB_Wegimp_VL : 12|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Wegimp_VR : 13|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Wegimp_HL : 14|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Wegimp_HR : 15|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Wegimp_VL : 16|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_Wegimp_VR : 26|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_Wegimp_HL : 36|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_Wegimp_HR : 46|10@1+ (1,0) [0|1000] "" XXX + SG_ B10_QB_Fahrtr_VL : 56|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Fahrtr_VR : 57|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Fahrtr_HL : 58|1@1+ (1,0) [0|1] "" XXX + SG_ B10_QB_Fahrtr_HR : 59|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_VL : 60|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_VR : 61|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_HL : 62|1@1+ (1,0) [0|1] "" XXX + SG_ B10_Fahrtr_HR : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 835 RDK_Status: 3 XXX + SG_ RKS_Reifen_VL : 0|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_VR : 1|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_HL : 2|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_HR : 3|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Reifen_RR : 4|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Warnung_2 : 5|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Warnung_1 : 6|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Systemfehler : 7|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Kalibrier_abgew : 8|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Druckdiff_Vorn : 9|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Druckdiff_Hinten : 10|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Befuellung_RR_low : 11|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Funkstoerung : 12|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_System_Aus : 13|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_KD_Fehler : 15|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Lampe : 16|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Ton : 17|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Gong : 18|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_RDK_Blinkbit : 19|1@1+ (1,0) [0|1] "" XXX + SG_ RKS_Teillast : 20|1@1+ (1,0) [0|1] "" XXX + +BO_ 914 Gate_Komf_2: 8 XXX + SG_ GK2_Sta_LSM : 0|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Lichtsensor : 1|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Licht1 : 2|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_VSG : 3|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Schluessel : 4|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Profil : 5|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Clima2 : 6|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_BSG4 : 7|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Sta_Kessy_4 : 8|1@1+ (1,0) [0|1] "" XXX + SG_ BS4_Gleitende_Leuchtw_Anf : 9|1@1+ (1,0) [0|1] "" XXX + SG_ BS4_GLW_Fernlicht_Anf : 10|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Blk_L_Kontrolle : 11|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Blk_R_Kontrolle : 12|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_LS_KomFehler : 14|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_LS_def : 15|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Helligkeit : 16|3@1+ (714.286,0) [0|5000.002] "Unit_Lux" XXX + SG_ GK2_VD_zu_ver : 19|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_VD_entriegelt : 20|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_VD_offen_ver : 21|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Verdeck_Anf : 22|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_VDKD_auf : 23|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Schluessel : 24|4@1+ (1,0) [0|15] "" XXX + SG_ GK2_Hardtop : 28|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_AFL_Schalter : 29|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Nebelschluss : 30|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_EM_LIN_ungueltig : 31|1@1+ (1,0) [0|1] "" XXX + SG_ GK2_Profil : 32|4@1+ (1,0) [0|15] "" XXX + SG_ GK2_Kl_StSt_Info : 36|2@1+ (1,0) [0|3] "" XXX + SG_ GK2_BSG_StSt_Info : 38|2@1+ (1,0) [0|3] "" XXX + SG_ GK2_BEM_P_Generator : 40|8@1+ (50,0) [0|12700] "Unit_Watt" XXX + SG_ GK2_BEM_Abschaltstufen : 48|3@1+ (1,0) [0|7] "" XXX + SG_ GK2_BEM_DFM : 51|5@1+ (3.225,0.025) [0.025|100] "Unit_PerCent" XXX + SG_ GK2_Kessy_StSt_Info : 56|2@1+ (1,0) [0|3] "" XXX + SG_ GK2_BEM_StSt_Info : 58|2@1+ (1,0) [0|3] "" XXX + +BO_ 954 SWA_1: 8 SWA + SG_ SWA_Textbits : 12|4@1+ (1,0) [0|15] "" XXX + SG_ SWA_Gong : 16|2@1+ (1,0) [0|3] "" XXX + SG_ SWA_Sta_passiv : 19|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Sta_aktiv : 20|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_li : 26|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_li : 27|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Infostufe_SWA_re : 42|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_Warnung_SWA_re : 43|1@1+ (1,0) [0|1] "" XXX + SG_ SWA_KD_Fehler : 59|1@1+ (1,0) [0|1] "" XXX + +BO_ 1175 Parkhilfe_01: 8 XXX + SG_ PH_Abschaltursache : 13|3@1+ (1,0) [0|7] "" XXX + SG_ PH_Opt_Anzeige_V_ein : 16|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Opt_Anzeige_H_ein : 17|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Opt_Anz_V_Hindernis : 18|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Opt_Anz_H_Hindernis : 19|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Tongeber_V_aktiv : 20|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Tongeber_H_aktiv : 21|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Tongeber_mute : 22|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Anf_Audioabsenkung : 23|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Frequenz_hinten : 32|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Lautstaerke_hinten : 36|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Frequenz_vorn : 40|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Lautstaerke_vorn : 44|4@1+ (1,0) [0|15] "" XXX + SG_ PH_Trigger_Bildaufschaltung : 48|1@1+ (1,0) [0|1] "" XXX + SG_ PH_StartStopp_Info : 49|2@1+ (1,0) [0|3] "" XXX + SG_ PH_Aufbauten_erk : 51|1@1+ (1,0) [0|1] "" XXX + SG_ PH_BerErk_vorn : 52|2@1+ (1,0) [0|3] "" XXX + SG_ PH_BerErk_hinten : 54|2@1+ (1,0) [0|3] "" XXX + SG_ PH_defekt : 56|1@1+ (1,0) [0|1] "" XXX + SG_ PH_gestoert : 57|1@1+ (1,0) [0|1] "" XXX + SG_ PH_Systemzustand : 58|3@1+ (1,0) [0|7] "" XXX + SG_ PH_Display_Kundenwunsch : 61|2@1+ (1,0) [0|3] "" XXX + SG_ PH_KD_Fehler : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 1463 Bremse_11: 8 XXX + SG_ B11_HydHalten : 13|1@1+ (1,0) [0|1] "" XXX + SG_ B11_Br_StSt_Info : 14|2@1+ (1,0) [0|3] "" XXX + SG_ B11_OBD_Nib_VL : 16|4@1+ (1,0) [0|15] "" XXX + SG_ B11_OBD_Nib_VR : 20|4@1+ (1,0) [0|15] "" XXX + SG_ B11_OBD_Nib_HL : 24|4@1+ (1,0) [0|15] "" XXX + SG_ B11_OBD_Nib_HR : 28|4@1+ (1,0) [0|15] "" XXX + SG_ B11_EPB_Steller_akt : 32|1@1+ (1,0) [0|1] "" XXX + SG_ B11_EPB_Steller_gue : 33|1@1+ (1,0) [0|1] "" XXX + +BO_ 1500 Soll_Verbauliste_neu: 8 XXX + SG_ VL1_Motor_SG : 0|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Getr_SG : 1|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ABS : 2|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Kombi : 3|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_LSM : 4|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Airbag : 5|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Lenkhilfe : 6|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_dyn_LWR : 7|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_res_08 : 8|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Allrad : 9|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ADR : 10|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ADR_getrennt : 11|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_EPB : 12|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_res_13 : 13|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Daempfer : 14|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Quersperre : 15|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_MotorSlave : 16|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_SWA : 17|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_HCA : 18|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_RKA_Plus : 19|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_PLA : 20|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_WFS_KBI : 21|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Kombi_KBI : 22|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Soll_eq_Ist : 23|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_BSG_Komf : 24|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_ZKE : 25|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_FT : 26|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_BT : 27|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_HL : 28|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TSG_HR : 29|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Memory : 30|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Dachmodul_K : 31|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Zentralelektrik_II : 32|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_RDK : 33|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Lenksaeule : 34|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Gateway : 35|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Clima_Komf : 36|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Einparkhilfe : 37|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_PTC_Heizung : 38|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Standheiz : 39|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Verdeck : 40|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_RSE_I : 41|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_res_42 : 42|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_MDI_I : 43|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Anhaenger : 44|1@1+ (1,0) [0|1] "" SWA + SG_ VL1_Memory_BF : 45|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Easy_Entry_VF : 46|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Easy_Entry_VB : 47|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Heckdeckel : 48|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Rearview : 49|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Sonderfzg_SG : 50|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Tastenmodul : 51|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Kompass : 52|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_WFS_K : 53|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_GSM_Pager : 54|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_InfoElektronik : 55|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_DSP : 56|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_DAB : 57|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Telematik : 58|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Navigation : 59|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_TV_Tuner : 60|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Neigungsmodul_I : 61|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Radio : 62|1@1+ (1,0) [0|1] "" XXX + SG_ VL1_Telefon : 63|1@1+ (1,0) [0|1] "" XXX + +BO_ 1490 Ident: 8 XXX + SG_ IDT_Mux M : 0|2@1+ (1,0) [0|2] "" XXX + SG_ IDT_Geheimnis_1 m0 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_4 m1 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_11 m2 : 8|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_Geheimnis_2 m0 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_5 m1 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_12 m2 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_Geheimnis_3 m0 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_6 m1 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_13 m2 : 24|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_Geheimnis_4 m0 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_7 m1 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_14 m2 : 32|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_1 m0 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_8 m1 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_15 m2 : 40|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_2 m0 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_9 m1 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_16 m2 : 48|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_3 m0 : 56|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_10 m1 : 56|8@1+ (1,0) [0|255] "" XXX + SG_ IDT_VIN_17 m2 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 2000 Diagnose_1: 8 XXX + SG_ DI1_VerlernZaehl : 0|8@1+ (1,0) [0|254] "" XXX + SG_ DI1_km_Stand : 8|20@1+ (1,0) [0|1048575] "Unit_KiloMeter" XXX + SG_ DI1_Jahr : 28|7@1+ (1,2000) [2000|2127] "Unit_Year" XXX + SG_ DI1_Monat : 35|4@1+ (1,0) [1|12] "Unit_Month" XXX + SG_ DI1_Tag : 39|5@1+ (1,0) [0|31] "Unit_Day" XXX + SG_ DI1_Stunde : 44|5@1+ (1,0) [0|23] "Unit_Hours" XXX + SG_ DI1_Minute : 49|6@1+ (1,0) [0|59] "Unit_Minut" XXX + SG_ DI1_Sekunde : 55|6@1+ (1,0) [0|59] "Unit_Secon" XXX + SG_ DI1_KM_Stand_alt : 62|1@1+ (1,0) [0|1] "" XXX + SG_ DI1_Zeit_alt : 63|1@1+ (1,0) [0|1] "" XXX + +CM_ SG_ 80 Checksumme_Airbag_1 "Checksum Airbag_1"; +CM_ SG_ 80 Zaehler_Airbag_1 "Counter Airbag_1"; + +CM_ SG_ 210 LM_Offset "centiNewton-meters for ease of calculation without FP math in Panda"; +CM_ SG_ 210 Vib_Amp "Steering wheel haptic, amplitude"; +CM_ SG_ 210 Vib_Freq "Steering wheel haptic, frequency"; + +CM_ SG_ 416 Zaehler_Bremse_1 "Counter Bremse_1"; + +CM_ SG_ 640 inneres_Motor_Moment "Engine Indicated Torque"; +CM_ SG_ 640 Fahrerwunschmoment "Driver Requested Torque"; +CM_ SG_ 640 mechanisches_Motor_Verlustmomen "Mechanical Torque Loss"; +CM_ SG_ 640 Fahrpedalwert_oder_Drosselklapp "Accelerator Pedal or Throttle Position"; +CM_ SG_ 640 Motordrehzahl "Engine Speed"; +CM_ SG_ 640 Momentenangaben_ungenau "Approximate Torque Values"; +CM_ SG_ 640 inneres_Motor_Moment_ohne_exter "Inner torque without external"; + +CM_ SG_ 644 MOB_CHECKSUM "Checksum MOB"; +CM_ SG_ 644 MOB_COUNTER "Counter MOB"; + +CM_ SG_ 648 Minimales_Motormoment_bei_Zuend "Minimum Torque Adjustment"; +CM_ SG_ 648 Begrenzungsmoment "Maximum Inner Torque"; +CM_ SG_ 648 Bremstestschalter "Brake Test Switch"; +CM_ SG_ 648 Soll_Geschwindigkeit_bei_GRA_Be "Desired Vehicle Speed"; +CM_ SG_ 648 Bremslichtschalter "Brake Light Switch"; +CM_ SG_ 648 Leerlaufsolldrehzahl__Motor_2_ "Target Idle Speed"; +CM_ SG_ 648 Fahrzeuggeschwindigkeit "Vehicle Speed"; +CM_ SG_ 648 Kuehlmitteltemperatur__Motor_2_ "Coolant Temperature"; + +CM_ SG_ 896 Drosselklappenpoti "Throttle Position"; +CM_ SG_ 896 Motor_Wunschdrehzahl "Desired engine speed"; +CM_ SG_ 896 Motordrehzahlbeeinflussung "Shift Target Influence"; +CM_ SG_ 896 Fahrpedal_Rohsignal "Accelerator Pedal Position"; +CM_ SG_ 896 Ansauglufttemperatur "Intake Air Temperature"; +CM_ SG_ 896 Kein_E_Gas "ETB flag"; +CM_ SG_ 896 Kein_Start_Stop "Start/stop flag"; +CM_ SG_ 896 Rad_Wunschmoment "Desired wheel torque"; + +CM_ SG_ 912 GK1_Fa_Tuerkont "Status of the driver's door rotary latch"; +CM_ SG_ 912 BSK_HL_geoeffnet "Status of the rear left door rotary latch"; +CM_ SG_ 912 BSK_HR_geoeffnet "Status of the rear right door rotary latch"; +CM_ SG_ 912 BSK_BT_geoeffnet "Status of the passenger door rotary latch"; +CM_ SG_ 912 BSK_HD_Hauptraste "Status of trunk lid main detent"; + +CM_ SG_ 1088 Zaehler_Getriebe_1 "Counter Getriebe_1"; +CM_ SG_ 1088 Waehlhebelposition__Getriebe_1_ "Gear Selector Position"; +CM_ SG_ 1088 inneres_Soll_Motormoment "Desired Inner Torque"; +CM_ SG_ 1088 Gang_eingelegt "Gear Engaged"; +CM_ SG_ 1088 Schaltabsicht "Shift Intent"; +CM_ SG_ 1088 Kuehlleistung "Cooling Power"; +CM_ SG_ 1088 Wandlerverlustmoment "Converter Torque Loss"; +CM_ SG_ 1088 Getriebe_Notlauf "Transmission_Notlauf"; +CM_ SG_ 1088 Zielgang_oder_eingelegter_Gang "target_gear_or_gear_in_engagement"; +CM_ SG_ 1088 Uebertragungsfunktion "transfer function"; +CM_ SG_ 1088 EGS_Anforderung "EGS Requirement"; +CM_ SG_ 1088 Schaltung_aktiv__Getriebe_1_ "Shift Activity"; + +CM_ SG_ 1056 Fehlerstatus_Aussentemp__4_1 "ambient temp error"; +CM_ SG_ 1056 Fehlerstatus_Oeltemperatur_4_1 "oil temp error"; +CM_ SG_ 1056 Fehlerst__Kuehlmitteltemp__4_1 "water temp error"; +CM_ SG_ 1056 Aussentemperatur_gefiltert "outside temp, filtered"; +CM_ SG_ 1056 Oeltemperatur_4_1 "kombi oil temperature"; +CM_ SG_ 1056 Kuehlmitteltemp__4_1__Kombi_2_ "kombi coolant temperature"; + +CM_ SG_ 1096 Zaehler_Waehlhebel_1 "Counter Waehlhebel_1"; + +CM_ SG_ 1152 CHECKSUM "Checksum Motor_5"; +CM_ SG_ 1152 Anlasser_Ausspuren "Starter Disable"; +CM_ SG_ 1152 Anlasser_Freigabe "Starter Release"; +CM_ SG_ 1152 Klimadrucksignal__Motor_5_ "Air conditioning pressure signal"; +CM_ SG_ 1152 Kraftstoffverbrauchssignal "Fuel consumption signal"; +CM_ SG_ 1152 K_hlerluefteransteuerung "Cooling fan control signal"; +CM_ SG_ 1152 Klimakompressor_Leistungsreduzi "Air conditioning compressor power reduction flag"; +CM_ SG_ 1152 Klimakompressor_aus__Motor_5_ "Air conditioning compressor"; +CM_ SG_ 1152 Anlasser_Freigabe "Starter release"; +CM_ SG_ 1152 OBD_2_Lampe "OBD light"; +CM_ SG_ 1152 E_Gas_Lampe "ETB light"; +CM_ SG_ 1152 Ladekontroll_Lampe "Charge light"; +CM_ SG_ 1152 Vorgluehlampe__Motor_5_ "Glow light"; + +CM_ SG_ 1160 Zaehler_Motor_6 "Counter Motor_6"; +CM_ SG_ 1160 Hoeheninfo__Motor_6_ "Altitude Correction"; +CM_ SG_ 1160 Istmoment_f_r_Getriebe "Actual torque for gear"; +CM_ SG_ 1160 Sollmoment_f_r_Getriebe "Target torque for gearbox"; +CM_ SG_ 1160 Checksumme_Motor_6 "Checksum Motor_6"; +CM_ SG_ 1160 GRA_Sollbeschleunigung "GRA target acceleration"; +CM_ SG_ 1160 Ruckmeldung_Momenten "Feedback torque-integral gear intervention"; + +CM_ SG_ 1344 Zahler_Getriebe_2 "Counter Getriebe_2"; +CM_ SG_ 1344 Hochschaltlampe "Upshift Flag"; + +CM_ SG_ 1386 ACA_V_Wunsch "255=unset"; + +CM_ SG_ 1408 Zaehler_Motor_Flexia "Counter Motor_Flexia"; +CM_ SG_ 1408 Verbrennungsart "Type of combustion"; +CM_ SG_ 1408 Max_Drehmoment "Maximum torque"; +CM_ SG_ 1408 Drehzahl_MaxNorm "RPM of maximum torque"; +CM_ SG_ 1408 Hubraum "Displacement"; +CM_ SG_ 1408 Anzahl_Zylinder "Number of cylinders"; +CM_ SG_ 1408 Anzahl_Ventile "Number of valves"; +CM_ SG_ 1408 Ansaugsystem "Induction System"; +CM_ SG_ 1408 Motorleistung "Maximum engine power"; + +CM_ SG_ 1416 Ladedruck "Boost Pressure"; +CM_ SG_ 1416 Motordrehzahlgradient "Engine speed gradient"; +CM_ SG_ 1416 Hoeheninfo__Motor_7_ "Altitude correction factor"; +CM_ SG_ 1416 Oltemperatur "Oil temperature"; + +CM_ SG_ 1470 LDW_Direction "0=right,1=left"; +CM_ SG_ 1470 XX_DLCORTLC1 "Might be DLC or TLC"; +CM_ SG_ 1470 XX_DLCORTLC2 "Might be DLC or TLC, might have wrong size"; + +CM_ SG_ 1550 MFA_v_Signal_02 "0=km/h, 1=mph"; + +VAL_ 870 AWV_Text 0 "kein_Text" 1 "FrontAssist_aus" 2 "FrontAssist_startet" 3 "FrontAssist_Warnung" 4 "FrontAssist_Sens_reinig" 5 "FrontAssist_Failure" 6 "FrontAssist_Demo" 7 "Vorhalt" 8 "Bremsung_wird_gerade_durchgefuehrt" 9 "Sensor_not_verfuegbar" 10 "Sensor_reinigen" 11 "Service_notwendig_Failure" 12 "Funktion_vom_Fahrer_deactivated" 13 "Funktion_vom_Fahrer_activated" 14 "FrontAssist_zur_Zeit_not_verfuegbar__rev_Failure"; +VAL_ 870 AWV_1_Freigabe 0 "nicht_freigegeben" 1 "freigegeben"; +VAL_ 870 AWV_1_Prefill 0 "keine_Prefill_Anf" 1 "Prefill_Anf"; +VAL_ 870 AWV_1_Parameter 0 "Defaultparametersatz" 1 "Par_leicht_erh_Empf" 2 "Par_erh_Empf" 3 "Par_hoechster_Empf"; +VAL_ 870 AWV_only 0 "ACC_und_AWV_verbaut" 1 "AWV_ohne_ACC_verbaut"; +VAL_ 870 AWV_CityANB_Auspraegung 0 "autom_Bremsung_im_ges_vBereich" 1 "autom_Bremsung_im_def_vBereich"; +VAL_ 870 AWV_Halten 0 "keine_Anforderung" 1 "Anforderung_das_Fzg_im_Stillstand_zu_halten"; +VAL_ 870 ANB_Teilbremsung_Freigabe 0 "Teilbremsung_nicht_freigegeben" 1 "Teilbremsung_freigegeben"; +VAL_ 870 AWV_2_Status 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 870 AWV_2_Fehler 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 870 AWV_2_SU_Warnzeit 0 "frueh" 1 "normal" 2 "spaet" 3 "adaptiv"; +VAL_ 870 AWV_2_SU_Bremsruck 0 "Bremsruck_deaktiviert" 1 "Bremsruck_aktiviert"; +VAL_ 870 AWV_2_SU_Gong 0 "Gong_deaktiviert" 1 "Gong_aktiviert"; +VAL_ 870 AWV_2_SU_Lampe 0 "Lampe_deaktiviert" 1 "Lampe_aktiviert"; +VAL_ 870 AWV_2_Umfeldwarn 0 "keine_Warnung" 1 "Warnung"; +VAL_ 870 AWV_2_Freigabe 0 "keine_Ruckfreigabe" 1 "Ruckfreigabe"; +VAL_ 870 AWV_2_Ruckprofil 0 "kein_Ruck" 1 "Ruckprofil_1" 2 "Ruckprofil_2" 3 "Ruckprofil_3" 4 "Ruckprofil_4" 5 "Ruckprofil_5" 6 "not_erlaubt" 7 "not_erlaubt"; +VAL_ 870 AWV_2_Warnton 0 "Aus" 1 "Ein"; +VAL_ 870 AWV_2_Warnsymbol 0 "Aus" 1 "Ein"; +VAL_ 870 AWV_Infoton 0 "Aus" 1 "Ein"; +VAL_ 870 AWV_2_Gurtstraffer 0 "Gurt_not_straffen" 1 "Gurt_straffen"; +VAL_ 870 AWV_Konfiguration_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; +VAL_ 870 AWV_Konfiguration_Vorw_Menueanf 0 "Menue_deaktivieren" 1 "Menue_aktivieren"; +VAL_ 870 AWV_Konfiguration_Status 0 "AWV_inaktiv" 1 "AWV_aktiv"; +VAL_ 870 AWV_Konfiguration_Vorw_Status 0 "AWV_Vorwarnung_inaktiv" 1 "AWV_Vorwarnung_aktiv"; +VAL_ 870 AWV_2_Abstandswarnung 0 "kein_Warnhinweis" 1 "Warnhinweis"; +VAL_ 870 ANB_Zielbremsung_Freigabe 0 "Zielbremsung_nicht_freigegeben" 1 "Zielbremsung_freigegeben"; +VAL_ 870 ANB_CM_Anforderung 0 "keine_Anforderung" 1 "Anforderung_aktiv"; + +VAL_ 872 ACS_Sta_ADR 2 "ADR_passiv" 0 "ADR_nicht_aktiv" 1 "ADR_aktiv" 3 "irrev_Fehler" ; +VAL_ 872 ACS_ADR_Schub 1 "Verz_begr_auf_Schub" 0 "Verz_nicht_begr_auf_Schub" ; +VAL_ 872 ACS_Schubabsch 1 "SA_nicht_zulaessig" 0 "SA_zulaessig" ; +VAL_ 872 ACS_StSt_Info 3 "Systemfehler" 0 "Motorlauf_nn" 1 "Stoppverbot_Motoranlauf_nn" 2 "Motoranlauf_notwendig" ; +VAL_ 872 ACS_MomEingriff 1 "MomEingr_verhindern" 0 "keine_Beeinfl_MomEingr_Mot" ; +VAL_ 872 ACS_Typ_ACC 0 "Basis_ACC" 1 "ACC_mit_FollowToStop" 3 "frei" 2 "frei" ; +VAL_ 872 ACS_FreigSollB 0 "Sollbeschl_nicht_freigeg" 1 "Sollbeschl_freigeg" ; +VAL_ 872 ACS_Sollbeschl 2046 "ADR_nicht_aktiv" 2047 "Fehler" ; +VAL_ 872 ACS_Anhaltewunsch 0 "kein_Haltewunsch" 1 "Fzg_haelt_an" ; +VAL_ 872 ACS_Fehler 1 "Fehlerspeichereintrag" 0 "kein_Fehlerspeichereintrag" ; +VAL_ 872 ACS_zul_Regelabw 254 "ADR_nicht_aktiv" 255 "Fehler" ; +VAL_ 872 ACS_max_AendGrad 254 "Neutralwert" 0 "Neutralwert" 255 "Fehler" ; + +VAL_ 978 LH2_Sta_HCA 0 "disabled" 1 "initializing" 2 "fault" 3 "ready" 4 "rejected" 5 "active"; +VAL_ 1088 Waehlhebelposition__Getriebe_1_ 8 "P" 7 "R" 6 "N" 5 "D" 9 "U" 12 "S" 14 "T" 10 "T" 11 "T"; + +VAL_ 1386 ACA_StaACC 6 "ACC_rev_aus" 0 "Hauptschalter_aus" 4 "ACC_im_Hintergrund" 3 "ACC_aktiv" 1 "Reserve" 2 "ACC_passiv" 7 "ACC_irrev_aus" 5 "frei" ; +VAL_ 1386 ACA_ID_StaACC 0 "keine_Anzeige" ; +VAL_ 1386 ACA_Fahrerhinw 1 "Ein" 0 "Aus" ; +VAL_ 1386 ACA_AnzDisplay 1 "Anzeige_erw" 0 "Anzeige_nicht_erw" ; +VAL_ 1386 ACA_Zeitluecke 3 "Zeitluecke3" 10 "Zeitluecke10" 4 "Zeitluecke4" 14 "Zeitluecke14" 11 "Zeitluecke11" 2 "Zeitluecke2" 13 "Zeitluecke13" 9 "Zeitluecke9" 1 "Zeitluecke1" 8 "Zeitluecke8" 5 "Zeitluecke5" 15 "Zeitluecke15" 0 "nicht_definiert" 12 "Zeitluecke12" 6 "Zeitluecke6" 7 "Zeitluecke7" ; +VAL_ 1386 ACA_V_Wunsch 255 "kein_Wert_im_Speicher" ; +VAL_ 1386 ACA_kmh_mph 0 "km_h" 1 "mph" ; +VAL_ 1386 ACA_Akustik1 0 "kein_Gong" 1 "Gong" ; +VAL_ 1386 ACA_Akustik2 0 "kein_Summer" 1 "Summer" ; +VAL_ 1386 ACA_PrioDisp 1 "mittlere_Prio" 3 "keine_Anzeige_Anf" 0 "hohe_Prio" 2 "niedrige_Prio" ; +VAL_ 1386 ACA_gemZeitl 6 "Zeitluecke6" 2 "Zeitluecke2" 7 "Zeitluecke7" 13 "Zeitluecke13" 11 "Zeitluecke11" 4 "Zeitluecke4" 8 "Zeitluecke8" 12 "Zeitluecke12" 10 "Zeitluecke10" 0 "Kein_Objekt_erfasst" 1 "Zeitluecke1" 3 "Zeitluecke3" 9 "Zeitluecke9" 15 "Zeitluecke15" 14 "Zeitluecke14" 5 "Zeitluecke5" ; +VAL_ 1386 ACA_ACC_Verz 0 "ACC_verzoegert_nicht" 1 "ACC_verzoegert" ; +VAL_ 1386 ACA_StaGRA 3 "GRA_aktiv" 4 "GRA_uebertreten" 2 "GRA_passiv" 0 "Hauptschalter_aus" 6 "frei" 7 "GRA_Fehler" 1 "Reserve" 5 "frei" ; +VAL_ 1386 ACA_ID_StaGRA 0 "keine_Anzeige" ; +VAL_ 1386 ACA_Codierung 0 "ACC" 1 "GRA" ; +VAL_ 1386 ACA_Tachokranz 0 "nicht_beleuchtet" 1 "beleuchtet" ; +VAL_ 1386 ACA_Aend_Zeitluecke 1 "Anzeige_angef" 0 "keine_Anzeige" ; + +VAL_ 1472 EP1_Fehler_Sta 0 "volle_Funktion" 1 "linke_Seite_fehlerhaft" 2 "rechte_Seite_fehlerhaft" 3 "beide_Seiten_fehlerhaft"; +VAL_ 1472 EP1_Sta_EPB 0 "Bremse_geoeffnet" 1 "Bremse_geschlossen"; +VAL_ 1472 EP1_Sta_Schalter 0 "volle_Funktion" 1 "Schalter_ausser_Funktion"; +VAL_ 1472 EP1_Spannkraft 31 "Fehler"; +VAL_ 1472 EP1_Schalterinfo 0 "keine_Fahreranforderung" 1 "Fahreranforderung_oeffnen" 2 "Fahreranforderung_schliessen" 3 "Schalterfehler"; +VAL_ 1472 EP1_Sta_NWS 0 "volle_Funktion" 1 "keine_Funktion"; +VAL_ 1472 EP1_Fehlereintr 0 "kein_Fehlerspeichereintrag" 1 "Fehlerspeichereintrag"; +VAL_ 1472 EP1_Freigabe_Ver 0 "Verzoegerungsanf_nicht_freigegeb" 1 "Verzoegerungsanf_freigegeben"; +VAL_ 1472 EP1_AutoHold_zul 0 "Pers_nicht_zulaessig" 1 "Pers_zulaessig"; +VAL_ 1472 EP1_AutoHold_aktiv 0 "nein" 1 "ja"; +VAL_ 1472 EP1_SleepInd 0 "CAN_wird_benoetigt" 1 "Sleep_bereit"; +VAL_ 1472 EP1_Status_Kl_15 0 "Kl_15_aus" 1 "Kl_15_ein"; +VAL_ 1472 EP1_Lampe_AutoP 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1_Bremslicht 0 "Aus" 1 "Ein"; +VAL_ 1472 EP1_Warnton1 0 "Aus" 1 "Ein"; +VAL_ 1472 EP1_Warnton2 0 "Aus" 1 "Ein"; +VAL_ 1472 EP1_AnfShLock 0 "Aus" 1 "Ein"; +VAL_ 1472 EPB_Autoholdlampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1_QualNeigWi 0 "gueltiger_Wert" 1 "Ersatz_Init_oder_Fehlerwert"; +VAL_ 1472 EP1_KuppModBer 0 "Kuppsensor_aus_Modbereich" 1 "Kupplsensor_im_Modbereich" 2 "Sensorsignal_ungenau" 3 "Sensor_defekt"; +VAL_ 1472 EP1_HydrHalten 0 "Fzg_nicht_hydr_geh" 1 "Fzg_hydr_geh"; +VAL_ 1472 EP1_Fkt_Lampe 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1_Warnton 0 "Warnton_aus" 1 "Warnton_an"; +VAL_ 1472 EP1_Fehler_BKL 0 "BKL_aus" 1 "BKL_an"; +VAL_ 1472 EP1_Fehler_gelb 0 "Lampe_aus" 1 "Lampe_ein"; +VAL_ 1472 EP1__Text 0 "kein_Text" 1 "Text_1" 2 "Text_2" 3 "Text_3" 4 "Text_4" 5 "Text_5" 6 "reserviert" 7 "reserviert" 8 "Text_8"; diff --git a/opendbc_repo/opendbc/safety/__init__.py b/opendbc_repo/opendbc/safety/__init__.py new file mode 100644 index 0000000000..ef90de3c5c --- /dev/null +++ b/opendbc_repo/opendbc/safety/__init__.py @@ -0,0 +1,11 @@ +# constants from panda/python/__init__.py +DLC_TO_LEN = [0, 1, 2, 3, 4, 5, 6, 7, 8, 12, 16, 20, 24, 32, 48, 64] +LEN_TO_DLC = {length: dlc for (dlc, length) in enumerate(DLC_TO_LEN)} + + +class ALTERNATIVE_EXPERIENCE: + DEFAULT = 0 + DISABLE_DISENGAGE_ON_GAS = 1 + DISABLE_STOCK_AEB = 2 + RAISE_LONGITUDINAL_LIMITS_TO_ISO_MAX = 8 + ALLOW_AEB = 16 diff --git a/opendbc_repo/opendbc/safety/board/can.h b/opendbc_repo/opendbc/safety/board/can.h new file mode 100644 index 0000000000..b2fe0ca39f --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/can.h @@ -0,0 +1,4 @@ +#pragma once +#include "can_declarations.h" + +static const unsigned char dlc_to_len[] = {0U, 1U, 2U, 3U, 4U, 5U, 6U, 7U, 8U, 12U, 16U, 20U, 24U, 32U, 48U, 64U}; diff --git a/opendbc_repo/opendbc/safety/board/can_declarations.h b/opendbc_repo/opendbc/safety/board/can_declarations.h new file mode 100644 index 0000000000..186cba1fc2 --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/can_declarations.h @@ -0,0 +1,27 @@ +#pragma once + +#define CANPACKET_HEAD_SIZE 6U + +// TODO: this is always CANFD +#if !defined(STM32F4) + #define CANFD + #define CANPACKET_DATA_SIZE_MAX 64U +#else + #define CANPACKET_DATA_SIZE_MAX 8U +#endif + +typedef struct { + unsigned char fd : 1; + unsigned char bus : 3; + unsigned char data_len_code : 4; // lookup length with dlc_to_len + unsigned char rejected : 1; + unsigned char returned : 1; + unsigned char extended : 1; + unsigned int addr : 29; + unsigned char checksum; + unsigned char data[CANPACKET_DATA_SIZE_MAX]; +} __attribute__((packed, aligned(4))) CANPacket_t; + +#define GET_BUS(msg) ((msg)->bus) +#define GET_LEN(msg) (dlc_to_len[(msg)->data_len_code]) +#define GET_ADDR(msg) ((msg)->addr) diff --git a/opendbc_repo/opendbc/safety/board/drivers/can_common.h b/opendbc_repo/opendbc/safety/board/drivers/can_common.h new file mode 100644 index 0000000000..52a980cf1d --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/drivers/can_common.h @@ -0,0 +1,18 @@ +#include "can_common_declarations.h" + +uint8_t calculate_checksum(const uint8_t *dat, uint32_t len) { + uint8_t checksum = 0U; + for (uint32_t i = 0U; i < len; i++) { + checksum ^= dat[i]; + } + return checksum; +} + +void can_set_checksum(CANPacket_t *packet) { + packet->checksum = 0U; + packet->checksum = calculate_checksum((uint8_t *) packet, CANPACKET_HEAD_SIZE + GET_LEN(packet)); +} + +bool can_check_checksum(CANPacket_t *packet) { + return (calculate_checksum((uint8_t *) packet, CANPACKET_HEAD_SIZE + GET_LEN(packet)) == 0U); +} diff --git a/opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h b/opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h new file mode 100644 index 0000000000..c05df042ef --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/drivers/can_common_declarations.h @@ -0,0 +1,4 @@ +#pragma once + +uint8_t calculate_checksum(const uint8_t *dat, uint32_t len); +void can_set_checksum(CANPacket_t *packet); diff --git a/opendbc_repo/opendbc/safety/board/fake_stm.h b/opendbc_repo/opendbc/safety/board/fake_stm.h new file mode 100644 index 0000000000..8f94e79edc --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/fake_stm.h @@ -0,0 +1,29 @@ +// minimal code to fake a panda for tests +#include +#include +#include + +#include "utils.h" + +#define ALLOW_DEBUG +#define PANDA + +void print(const char *a) { + printf("%s", a); +} + +void puth(unsigned int i) { + printf("%u", i); +} + +typedef struct { + uint32_t CNT; +} TIM_TypeDef; + +TIM_TypeDef timer; +TIM_TypeDef *MICROSECOND_TIMER = &timer; +uint32_t microsecond_timer_get(void); + +uint32_t microsecond_timer_get(void) { + return MICROSECOND_TIMER->CNT; +} diff --git a/opendbc_repo/opendbc/safety/board/faults.h b/opendbc_repo/opendbc/safety/board/faults.h new file mode 100644 index 0000000000..0fc9d2c5cf --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/faults.h @@ -0,0 +1,25 @@ +#include "faults_declarations.h" + +uint8_t fault_status = FAULT_STATUS_NONE; +uint32_t faults = 0U; + +void fault_occurred(uint32_t fault) { + if ((faults & fault) == 0U) { + if ((PERMANENT_FAULTS & fault) != 0U) { + print("Permanent fault occurred: 0x"); puth(fault); print("\n"); + fault_status = FAULT_STATUS_PERMANENT; + } else { + print("Temporary fault occurred: 0x"); puth(fault); print("\n"); + fault_status = FAULT_STATUS_TEMPORARY; + } + } + faults |= fault; +} + +void fault_recovered(uint32_t fault) { + if ((PERMANENT_FAULTS & fault) == 0U) { + faults &= ~fault; + } else { + print("Cannot recover from a permanent fault!\n"); + } +} diff --git a/opendbc_repo/opendbc/safety/board/faults_declarations.h b/opendbc_repo/opendbc/safety/board/faults_declarations.h new file mode 100644 index 0000000000..a023d7e717 --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/faults_declarations.h @@ -0,0 +1,18 @@ +#pragma once + +#define FAULT_STATUS_NONE 0U +#define FAULT_STATUS_TEMPORARY 1U +#define FAULT_STATUS_PERMANENT 2U + +// Fault types, excerpt from cereal.log.PandaState.FaultType for safety tests +#define FAULT_RELAY_MALFUNCTION (1UL << 0) +// ... + +// Permanent faults +#define PERMANENT_FAULTS 0U + +extern uint8_t fault_status; +extern uint32_t faults; + +void fault_occurred(uint32_t fault); +void fault_recovered(uint32_t fault); diff --git a/opendbc_repo/opendbc/safety/board/utils.h b/opendbc_repo/opendbc/safety/board/utils.h new file mode 100644 index 0000000000..f355ce8c2f --- /dev/null +++ b/opendbc_repo/opendbc/safety/board/utils.h @@ -0,0 +1,47 @@ +// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension +#define MIN(a, b) ({ \ + __typeof__ (a) _a = (a); \ + __typeof__ (b) _b = (b); \ + (_a < _b) ? _a : _b; \ +}) + +// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension +#define MAX(a, b) ({ \ + __typeof__ (a) _a = (a); \ + __typeof__ (b) _b = (b); \ + (_a > _b) ? _a : _b; \ +}) + +// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension +#define CLAMP(x, low, high) ({ \ + __typeof__(x) __x = (x); \ + __typeof__(low) __low = (low);\ + __typeof__(high) __high = (high);\ + (__x > __high) ? __high : ((__x < __low) ? __low : __x); \ +}) + +// cppcheck-suppress-macro misra-c2012-1.2; allow __typeof__ extension +#define ABS(a) ({ \ + __typeof__ (a) _a = (a); \ + (_a > 0) ? _a : (-_a); \ +}) + +#ifndef NULL +// this just provides a standard implementation of NULL +// in lieu of including libc in the panda build +// cppcheck-suppress [misra-c2012-21.1] +#define NULL ((void*)0) +#endif + +// STM32 HAL defines this +#ifndef UNUSED +#define UNUSED(x) ((void)(x)) +#endif + +#define COMPILE_TIME_ASSERT(pred) ((void)sizeof(char[1 - (2 * (!(pred) ? 1 : 0))])) + +// compute the time elapsed (in microseconds) from 2 counter samples +// case where ts < ts_last is ok: overflow is properly re-casted into uint32_t +uint32_t get_ts_elapsed(uint32_t ts, uint32_t ts_last) { + return ts - ts_last; +} diff --git a/opendbc_repo/opendbc/safety/main.c b/opendbc_repo/opendbc/safety/main.c new file mode 100644 index 0000000000..3c873f84c2 --- /dev/null +++ b/opendbc_repo/opendbc/safety/main.c @@ -0,0 +1,12 @@ +#include "safety.h" + +// this file is checked by cppcheck + +// Ignore misra-c2012-8.7 as these functions are only called from panda and libsafety +UNUSED(heartbeat_engaged); + +UNUSED(safety_rx_hook); +UNUSED(safety_tx_hook); +UNUSED(safety_fwd_hook); +UNUSED(safety_tick); +UNUSED(set_safety_hooks); diff --git a/opendbc_repo/opendbc/safety/safety.h b/opendbc_repo/opendbc/safety/safety.h new file mode 100644 index 0000000000..fda1bfff03 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety.h @@ -0,0 +1,851 @@ +#pragma once + +#include "safety_declarations.h" +#include "can.h" + +// include the safety policies. +#include "safety/safety_defaults.h" +#include "safety/safety_honda.h" +#include "safety/safety_toyota.h" +#include "safety/safety_tesla.h" +#include "safety/safety_gm.h" +#include "safety/safety_ford.h" +#include "safety/safety_hyundai.h" +#include "safety/safety_chrysler.h" +#include "safety/safety_rivian.h" +#include "safety/safety_subaru.h" +#include "safety/safety_subaru_preglobal.h" +#include "safety/safety_mazda.h" +#include "safety/safety_nissan.h" +#include "safety/safety_volkswagen_mqb.h" +#include "safety/safety_volkswagen_pq.h" +#include "safety/safety_elm327.h" +#include "safety/safety_body.h" + +// CAN-FD only safety modes +#ifdef CANFD +#include "safety/safety_hyundai_canfd.h" +#endif + +// from cereal.car.CarParams.SafetyModel +#define SAFETY_SILENT 0U +#define SAFETY_HONDA_NIDEC 1U +#define SAFETY_TOYOTA 2U +#define SAFETY_ELM327 3U +#define SAFETY_GM 4U +#define SAFETY_HONDA_BOSCH_GIRAFFE 5U +#define SAFETY_FORD 6U +#define SAFETY_HYUNDAI 8U +#define SAFETY_CHRYSLER 9U +#define SAFETY_TESLA 10U +#define SAFETY_SUBARU 11U +#define SAFETY_MAZDA 13U +#define SAFETY_NISSAN 14U +#define SAFETY_VOLKSWAGEN_MQB 15U +#define SAFETY_ALLOUTPUT 17U +#define SAFETY_GM_ASCM 18U +#define SAFETY_NOOUTPUT 19U +#define SAFETY_HONDA_BOSCH 20U +#define SAFETY_VOLKSWAGEN_PQ 21U +#define SAFETY_SUBARU_PREGLOBAL 22U +#define SAFETY_HYUNDAI_LEGACY 23U +#define SAFETY_HYUNDAI_COMMUNITY 24U +#define SAFETY_STELLANTIS 25U +#define SAFETY_FAW 26U +#define SAFETY_BODY 27U +#define SAFETY_HYUNDAI_CANFD 28U +#define SAFETY_RIVIAN 33U +#define SAFETY_VOLKSWAGEN_MEB 34U + +uint32_t GET_BYTES(const CANPacket_t *msg, int start, int len) { + uint32_t ret = 0U; + for (int i = 0; i < len; i++) { + const uint32_t shift = i * 8; + ret |= (((uint32_t)msg->data[start + i]) << shift); + } + return ret; +} + +const int MAX_WRONG_COUNTERS = 5; + +// This can be set by the safety hooks +bool controls_allowed = false; +bool relay_malfunction = false; +bool enable_gas_interceptor = false; +int gas_interceptor_prev = 0; +bool gas_pressed = false; +bool gas_pressed_prev = false; +bool brake_pressed = false; +bool brake_pressed_prev = false; +bool regen_braking = false; +bool regen_braking_prev = false; +bool cruise_engaged_prev = false; +struct sample_t vehicle_speed; +bool vehicle_moving = false; +bool acc_main_on = false; // referred to as "ACC off" in ISO 15622:2018 +int cruise_button_prev = 0; +int cruise_main_prev = 0; +bool safety_rx_checks_invalid = false; + +// for safety modes with torque steering control +int desired_torque_last = 0; // last desired steer torque +int rt_torque_last = 0; // last desired torque for real time check +int valid_steer_req_count = 0; // counter for steer request bit matching non-zero torque +int invalid_steer_req_count = 0; // counter to allow multiple frames of mismatching torque request bit +struct sample_t torque_meas; // last 6 motor torques produced by the eps +struct sample_t torque_driver; // last 6 driver torques measured +uint32_t ts_torque_check_last = 0; +uint32_t ts_steer_req_mismatch_last = 0; // last timestamp steer req was mismatched with torque + +// state for controls_allowed timeout logic +bool heartbeat_engaged = false; // openpilot enabled, passed in heartbeat USB command +uint32_t heartbeat_engaged_mismatches = 0; // count of mismatches between heartbeat_engaged and controls_allowed + +// for safety modes with angle steering control +uint32_t ts_angle_last = 0; +int desired_angle_last = 0; +struct sample_t angle_meas; // last 6 steer angles/curvatures + + +int alternative_experience = 0; + +// time since safety mode has been changed +uint32_t safety_mode_cnt = 0U; + +uint16_t current_safety_mode = SAFETY_SILENT; +uint16_t current_safety_param = 0; +static const safety_hooks *current_hooks = &nooutput_hooks; +safety_config current_safety_config; + +static bool is_msg_valid(RxCheck addr_list[], int index) { + bool valid = true; + if (index != -1) { + if (!addr_list[index].status.valid_checksum || !addr_list[index].status.valid_quality_flag || (addr_list[index].status.wrong_counters >= MAX_WRONG_COUNTERS)) { + valid = false; + controls_allowed = false; + print("controls_allowed(msgvalid) = false\n"); + } + } + return valid; +} + +static int get_addr_check_index(const CANPacket_t *to_push, RxCheck addr_list[], const int len) { + int bus = GET_BUS(to_push); + int addr = GET_ADDR(to_push); + int length = GET_LEN(to_push); + + int index = -1; + for (int i = 0; i < len; i++) { + // if multiple msgs are allowed, determine which one is present on the bus + if (!addr_list[i].status.msg_seen) { + for (uint8_t j = 0U; (j < MAX_ADDR_CHECK_MSGS) && (addr_list[i].msg[j].addr != 0); j++) { + if ((addr == addr_list[i].msg[j].addr) && (bus == addr_list[i].msg[j].bus) && + (length == addr_list[i].msg[j].len)) { + addr_list[i].status.index = j; + addr_list[i].status.msg_seen = true; + break; + } + } + } + + if (addr_list[i].status.msg_seen) { + int idx = addr_list[i].status.index; + if ((addr == addr_list[i].msg[idx].addr) && (bus == addr_list[i].msg[idx].bus) && + (length == addr_list[i].msg[idx].len)) { + index = i; + break; + } + } + } + return index; +} + +static void update_addr_timestamp(RxCheck addr_list[], int index) { + if (index != -1) { + uint32_t ts = microsecond_timer_get(); + addr_list[index].status.last_timestamp = ts; + } +} + +static void update_counter(RxCheck addr_list[], int index, uint8_t counter) { + if (index != -1) { + uint8_t expected_counter = (addr_list[index].status.last_counter + 1U) % (addr_list[index].msg[addr_list[index].status.index].max_counter + 1U); + addr_list[index].status.wrong_counters += (expected_counter == counter) ? -1 : 1; + addr_list[index].status.wrong_counters = CLAMP(addr_list[index].status.wrong_counters, 0, MAX_WRONG_COUNTERS); + addr_list[index].status.last_counter = counter; + } +} + +static bool rx_msg_safety_check(const CANPacket_t *to_push, + const safety_config *cfg, + const safety_hooks *safety_hooks) { + + int index = get_addr_check_index(to_push, cfg->rx_checks, cfg->rx_checks_len); + update_addr_timestamp(cfg->rx_checks, index); + + if (index != -1) { + // checksum check + if ((safety_hooks->get_checksum != NULL) && (safety_hooks->compute_checksum != NULL) && !cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].ignore_checksum) { + uint32_t checksum = safety_hooks->get_checksum(to_push); + uint32_t checksum_comp = safety_hooks->compute_checksum(to_push); + cfg->rx_checks[index].status.valid_checksum = checksum_comp == checksum; + } else { + cfg->rx_checks[index].status.valid_checksum = cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].ignore_checksum; + } + + // counter check + if ((safety_hooks->get_counter != NULL) && (cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].max_counter > 0U)) { + uint8_t counter = safety_hooks->get_counter(to_push); + update_counter(cfg->rx_checks, index, counter); + } else { + cfg->rx_checks[index].status.wrong_counters = cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].ignore_counter ? 0 : MAX_WRONG_COUNTERS; + } + + // quality flag check + if ((safety_hooks->get_quality_flag_valid != NULL) && cfg->rx_checks[index].msg[cfg->rx_checks[index].status.index].quality_flag) { + cfg->rx_checks[index].status.valid_quality_flag = safety_hooks->get_quality_flag_valid(to_push); + } else { + cfg->rx_checks[index].status.valid_quality_flag = true; + } + } + return is_msg_valid(cfg->rx_checks, index); +} + +bool safety_rx_hook(const CANPacket_t *to_push) { + bool controls_allowed_prev = controls_allowed; + + bool valid = rx_msg_safety_check(to_push, ¤t_safety_config, current_hooks); + if (valid) { + current_hooks->rx(to_push); + } + + // reset mismatches on rising edge of controls_allowed to avoid rare race condition + if (controls_allowed && !controls_allowed_prev) { + heartbeat_engaged_mismatches = 0; + } + + return valid; +} + +int _prev_not_allowed_addr = -1; +static bool tx_msg_safety_check(const CANPacket_t *to_send, const CanMsg msg_list[], int len) { + int addr = GET_ADDR(to_send); + int bus = GET_BUS(to_send); + int length = GET_LEN(to_send); + + bool allowed = false; + for (int i = 0; i < len; i++) { + if ((addr == msg_list[i].addr) && (bus == msg_list[i].bus) && (length == msg_list[i].len)) { + allowed = true; + break; + } + } + if (!allowed && _prev_not_allowed_addr != addr && len > 0) { + print("allowed addr = "); + for(int i=0;itx(to_send); + + int addr = GET_ADDR(to_send); + if ((!allowed || !safety_allowed) && (addr!=_prev_error_addr)) { + int bus = GET_BUS(to_send); + int length = GET_LEN(to_send); + print("not allowed:"); + if (!allowed) print("nowallowed,"); + if (!safety_allowed) print("safety_allowed,"); + print("addr = "); + putui((uint32_t)addr); + print(" bus="); + putui((uint32_t)bus); + print(" len="); + putui((uint32_t)length); + print(" ctrl="); + putui((uint32_t)controls_allowed); + print(" main="); + putui((uint32_t)acc_main_on); + print(" rely="); + putui((uint32_t)relay_malfunction); + print("\n"); + _prev_error_addr = addr; + } + + return !relay_malfunction && allowed && safety_allowed; +} + +int safety_fwd_hook(int bus_num, int addr) { + return (relay_malfunction ? -1 : current_hooks->fwd(bus_num, addr)); +} + +bool get_longitudinal_allowed(void) { + return controls_allowed && !gas_pressed_prev; +} + +// Given a CRC-8 poly, generate a static lookup table to use with a fast CRC-8 +// algorithm. Called at init time for safety modes using CRC-8. +void gen_crc_lookup_table_8(uint8_t poly, uint8_t crc_lut[]) { + for (uint16_t i = 0U; i <= 0xFFU; i++) { + uint8_t crc = (uint8_t)i; + for (int j = 0; j < 8; j++) { + if ((crc & 0x80U) != 0U) { + crc = (uint8_t)((crc << 1) ^ poly); + } else { + crc <<= 1; + } + } + crc_lut[i] = crc; + } +} + +#ifdef CANFD +void gen_crc_lookup_table_16(uint16_t poly, uint16_t crc_lut[]) { + for (uint16_t i = 0; i < 256U; i++) { + uint16_t crc = i << 8U; + for (uint16_t j = 0; j < 8U; j++) { + if ((crc & 0x8000U) != 0U) { + crc = (uint16_t)((crc << 1) ^ poly); + } else { + crc <<= 1; + } + } + crc_lut[i] = crc; + } +} +#endif + +// 1Hz safety function called by main. Now just a check for lagging safety messages +void safety_tick(const safety_config *cfg) { + const uint8_t MAX_MISSED_MSGS = 10U; + bool rx_checks_invalid = false; + uint32_t ts = microsecond_timer_get(); + if (cfg != NULL) { + for (int i=0; i < cfg->rx_checks_len; i++) { + uint32_t elapsed_time = get_ts_elapsed(ts, cfg->rx_checks[i].status.last_timestamp); + // lag threshold is max of: 1s and MAX_MISSED_MSGS * expected timestep. + // Quite conservative to not risk false triggers. + // 2s of lag is worse case, since the function is called at 1Hz + uint32_t timestep = 1e6 / cfg->rx_checks[i].msg[cfg->rx_checks[i].status.index].frequency; + bool lagging = elapsed_time > MAX(timestep * MAX_MISSED_MSGS, 1e6); + cfg->rx_checks[i].status.lagging = lagging; + if (lagging) { + controls_allowed = false; + } + + if (lagging || !is_msg_valid(cfg->rx_checks, i)) { + rx_checks_invalid = true; + } + } + } + + safety_rx_checks_invalid = rx_checks_invalid; +} + +static void relay_malfunction_set(void) { + relay_malfunction = true; + fault_occurred(FAULT_RELAY_MALFUNCTION); +} + +void generic_rx_checks(bool stock_ecu_detected) { + // allow 1s of transition timeout after relay changes state before assessing malfunctioning + const uint32_t RELAY_TRNS_TIMEOUT = 1U; + + // exit controls on rising edge of gas press + if (gas_pressed && !gas_pressed_prev && !(alternative_experience & ALT_EXP_DISABLE_DISENGAGE_ON_GAS)) { + controls_allowed = false; + } + gas_pressed_prev = gas_pressed; + + // exit controls on rising edge of brake press + if (brake_pressed && (!brake_pressed_prev || vehicle_moving)) { + controls_allowed = false; + } + brake_pressed_prev = brake_pressed; + + // exit controls on rising edge of regen paddle + if (regen_braking && (!regen_braking_prev || vehicle_moving)) { + controls_allowed = false; + } + regen_braking_prev = regen_braking; + + // check if stock ECU is on bus broken by car harness + if ((safety_mode_cnt > RELAY_TRNS_TIMEOUT) && stock_ecu_detected && !gm_skip_relay_check) { + relay_malfunction_set(); + } +} + +static void relay_malfunction_reset(void) { + relay_malfunction = false; + fault_recovered(FAULT_RELAY_MALFUNCTION); +} + +// resets values and min/max for sample_t struct +static void reset_sample(struct sample_t *sample) { + for (int i = 0; i < MAX_SAMPLE_VALS; i++) { + sample->values[i] = 0; + } + update_sample(sample, 0); +} + +int set_safety_hooks(uint16_t mode, uint16_t param) { + const safety_hook_config safety_hook_registry[] = { + {SAFETY_SILENT, &nooutput_hooks}, + {SAFETY_HONDA_NIDEC, &honda_nidec_hooks}, + {SAFETY_TOYOTA, &toyota_hooks}, + {SAFETY_ELM327, &elm327_hooks}, + {SAFETY_GM, &gm_hooks}, + {SAFETY_HONDA_BOSCH, &honda_bosch_hooks}, + {SAFETY_HYUNDAI, &hyundai_hooks}, + {SAFETY_CHRYSLER, &chrysler_hooks}, + {SAFETY_SUBARU, &subaru_hooks}, + {SAFETY_VOLKSWAGEN_MQB, &volkswagen_mqb_hooks}, + {SAFETY_NISSAN, &nissan_hooks}, + {SAFETY_NOOUTPUT, &nooutput_hooks}, + {SAFETY_HYUNDAI_LEGACY, &hyundai_legacy_hooks}, + {SAFETY_MAZDA, &mazda_hooks}, + {SAFETY_BODY, &body_hooks}, + {SAFETY_FORD, &ford_hooks}, + {SAFETY_RIVIAN, &rivian_hooks}, +#ifdef CANFD + {SAFETY_HYUNDAI_CANFD, &hyundai_canfd_hooks}, +#endif +#ifdef ALLOW_DEBUG + {SAFETY_TESLA, &tesla_hooks}, + {SAFETY_SUBARU_PREGLOBAL, &subaru_preglobal_hooks}, + {SAFETY_VOLKSWAGEN_PQ, &volkswagen_pq_hooks}, + {SAFETY_ALLOUTPUT, &alloutput_hooks}, +#endif + }; + + // reset state set by safety mode + safety_mode_cnt = 0U; + relay_malfunction = false; + enable_gas_interceptor = false; + gas_interceptor_prev = 0; + gas_pressed = false; + gas_pressed_prev = false; + brake_pressed = false; + brake_pressed_prev = false; + regen_braking = false; + regen_braking_prev = false; + cruise_engaged_prev = false; + vehicle_moving = false; + acc_main_on = false; + cruise_button_prev = 0; + desired_torque_last = 0; + rt_torque_last = 0; + ts_angle_last = 0; + desired_angle_last = 0; + ts_torque_check_last = 0; + ts_steer_req_mismatch_last = 0; + valid_steer_req_count = 0; + invalid_steer_req_count = 0; + + // reset samples + reset_sample(&vehicle_speed); + reset_sample(&torque_meas); + reset_sample(&torque_driver); + reset_sample(&angle_meas); + + controls_allowed = false; + relay_malfunction_reset(); + safety_rx_checks_invalid = false; + + current_safety_config.rx_checks = NULL; + current_safety_config.rx_checks_len = 0; + current_safety_config.tx_msgs = NULL; + current_safety_config.tx_msgs_len = 0; + + int set_status = -1; // not set + int hook_config_count = sizeof(safety_hook_registry) / sizeof(safety_hook_config); + for (int i = 0; i < hook_config_count; i++) { + if (safety_hook_registry[i].id == mode) { + current_hooks = safety_hook_registry[i].hooks; + current_safety_mode = mode; + current_safety_param = param; + set_status = 0; // set + } + } + if ((set_status == 0) && (current_hooks->init != NULL)) { + safety_config cfg = current_hooks->init(param); + current_safety_config.rx_checks = cfg.rx_checks; + current_safety_config.rx_checks_len = cfg.rx_checks_len; + current_safety_config.tx_msgs = cfg.tx_msgs; + current_safety_config.tx_msgs_len = cfg.tx_msgs_len; + // reset all dynamic fields in addr struct + for (int j = 0; j < current_safety_config.rx_checks_len; j++) { + current_safety_config.rx_checks[j].status = (RxStatus){0}; + } + } + return set_status; +} + +// convert a trimmed integer to signed 32 bit int +int to_signed(int d, int bits) { + int d_signed = d; + int max_value = (1 << MAX((bits - 1), 0)); + if (d >= max_value) { + d_signed = d - (1 << MAX(bits, 0)); + } + return d_signed; +} + +// given a new sample, update the sample_t struct +void update_sample(struct sample_t *sample, int sample_new) { + for (int i = MAX_SAMPLE_VALS - 1; i > 0; i--) { + sample->values[i] = sample->values[i-1]; + } + sample->values[0] = sample_new; + + // get the minimum and maximum measured samples + sample->min = sample->values[0]; + sample->max = sample->values[0]; + for (int i = 1; i < MAX_SAMPLE_VALS; i++) { + if (sample->values[i] < sample->min) { + sample->min = sample->values[i]; + } + if (sample->values[i] > sample->max) { + sample->max = sample->values[i]; + } + } +} + +static bool max_limit_check(int val, const int MAX_VAL, const int MIN_VAL) { + return (val > MAX_VAL) || (val < MIN_VAL); +} + +// check that commanded torque value isn't too far from measured +static bool dist_to_meas_check(int val, int val_last, struct sample_t *val_meas, + const int MAX_RATE_UP, const int MAX_RATE_DOWN, const int MAX_ERROR) { + + // *** val rate limit check *** + int highest_allowed_rl = MAX(val_last, 0) + MAX_RATE_UP; + int lowest_allowed_rl = MIN(val_last, 0) - MAX_RATE_UP; + + // if we've exceeded the meas val, we must start moving toward 0 + int highest_allowed = MIN(highest_allowed_rl, MAX(val_last - MAX_RATE_DOWN, MAX(val_meas->max, 0) + MAX_ERROR)); + int lowest_allowed = MAX(lowest_allowed_rl, MIN(val_last + MAX_RATE_DOWN, MIN(val_meas->min, 0) - MAX_ERROR)); + + // check for violation + return max_limit_check(val, highest_allowed, lowest_allowed); +} + +// check that commanded value isn't fighting against driver +static bool driver_limit_check(int val, int val_last, const struct sample_t *val_driver, + const int MAX_VAL, const int MAX_RATE_UP, const int MAX_RATE_DOWN, + const int MAX_ALLOWANCE, const int DRIVER_FACTOR) { + + // torque delta/rate limits + int highest_allowed_rl = MAX(val_last, 0) + MAX_RATE_UP; + int lowest_allowed_rl = MIN(val_last, 0) - MAX_RATE_UP; + + // driver + int driver_max_limit = MAX_VAL + (MAX_ALLOWANCE + val_driver->max) * DRIVER_FACTOR; + int driver_min_limit = -MAX_VAL + (-MAX_ALLOWANCE + val_driver->min) * DRIVER_FACTOR; + + // if we've exceeded the applied torque, we must start moving toward 0 + int highest_allowed = MIN(highest_allowed_rl, MAX(val_last - MAX_RATE_DOWN, + MAX(driver_max_limit, 0))); + int lowest_allowed = MAX(lowest_allowed_rl, MIN(val_last + MAX_RATE_DOWN, + MIN(driver_min_limit, 0))); + + // check for violation + return max_limit_check(val, highest_allowed, lowest_allowed); +} + + +// real time check, mainly used for steer torque rate limiter +static bool rt_rate_limit_check(int val, int val_last, const int MAX_RT_DELTA) { + + // *** torque real time rate limit check *** + int highest_val = MAX(val_last, 0) + MAX_RT_DELTA; + int lowest_val = MIN(val_last, 0) - MAX_RT_DELTA; + + // check for violation + return max_limit_check(val, highest_val, lowest_val); +} + + +// interp function that holds extreme values +static float interpolate(struct lookup_t xy, float x) { + + int size = sizeof(xy.x) / sizeof(xy.x[0]); + float ret = xy.y[size - 1]; // default output is last point + + // x is lower than the first point in the x array. Return the first point + if (x <= xy.x[0]) { + ret = xy.y[0]; + + } else { + // find the index such that (xy.x[i] <= x < xy.x[i+1]) and linearly interp + for (int i=0; i < (size - 1); i++) { + if (x < xy.x[i+1]) { + float x0 = xy.x[i]; + float y0 = xy.y[i]; + float dx = xy.x[i+1] - x0; + float dy = xy.y[i+1] - y0; + // dx should not be zero as xy.x is supposed to be monotonic + dx = MAX(dx, 0.0001); + ret = (dy * (x - x0) / dx) + y0; + break; + } + } + } + return ret; +} + +int ROUND(float val) { + return val + ((val > 0.0) ? 0.5 : -0.5); +} + +// Safety checks for longitudinal actuation +bool longitudinal_accel_checks(int desired_accel, const LongitudinalLimits limits) { + if(desired_accel != 0) { + if(!controls_allowed) print("@@@@@@@@ longitudinal_accel_checks... auto controls_allowed enabled...\n"); + controls_allowed = true; + } + //bool accel_valid = get_longitudinal_allowed() && !max_limit_check(desired_accel, limits.max_accel, limits.min_accel); + bool accel_valid = !max_limit_check(desired_accel, limits.max_accel, limits.min_accel); + bool accel_inactive = desired_accel == limits.inactive_accel; + return !(accel_valid || accel_inactive); +} + +bool longitudinal_speed_checks(int desired_speed, const LongitudinalLimits limits) { + return !get_longitudinal_allowed() && (desired_speed != limits.inactive_speed); +} + +bool longitudinal_transmission_rpm_checks(int desired_transmission_rpm, const LongitudinalLimits limits) { + bool transmission_rpm_valid = get_longitudinal_allowed() && !max_limit_check(desired_transmission_rpm, limits.max_transmission_rpm, limits.min_transmission_rpm); + bool transmission_rpm_inactive = desired_transmission_rpm == limits.inactive_transmission_rpm; + return !(transmission_rpm_valid || transmission_rpm_inactive); +} + +bool longitudinal_gas_checks(int desired_gas, const LongitudinalLimits limits) { + bool gas_valid = get_longitudinal_allowed() && !max_limit_check(desired_gas, limits.max_gas, limits.min_gas); + bool gas_inactive = desired_gas == limits.inactive_gas; + return !(gas_valid || gas_inactive); +} + +bool longitudinal_brake_checks(int desired_brake, const LongitudinalLimits limits) { + bool violation = false; + violation |= !get_longitudinal_allowed() && (desired_brake != 0); + violation |= desired_brake > limits.max_brake; + return violation; +} + +bool longitudinal_interceptor_checks(const CANPacket_t *to_send) { + return (!get_longitudinal_allowed() || brake_pressed_prev) && (GET_BYTE(to_send, 0) || GET_BYTE(to_send, 1)); +} + +// Safety checks for torque-based steering commands +bool steer_torque_cmd_checks(int desired_torque, int steer_req, const TorqueSteeringLimits limits) { + bool violation = false; + uint32_t ts = microsecond_timer_get(); + + bool aol_allowed = true; + if (controls_allowed) acc_main_on = controls_allowed; + + if (controls_allowed || aol_allowed) { + // *** global torque limit check *** + violation |= max_limit_check(desired_torque, limits.max_steer, -limits.max_steer); + + // *** torque rate limit check *** + if (limits.type == TorqueDriverLimited) { + violation |= driver_limit_check(desired_torque, desired_torque_last, &torque_driver, + limits.max_steer, limits.max_rate_up, limits.max_rate_down, + limits.driver_torque_allowance, limits.driver_torque_multiplier); + } else { + violation |= dist_to_meas_check(desired_torque, desired_torque_last, &torque_meas, + limits.max_rate_up, limits.max_rate_down, limits.max_torque_error); + } + desired_torque_last = desired_torque; + + // *** torque real time rate limit check *** + violation |= rt_rate_limit_check(desired_torque, rt_torque_last, limits.max_rt_delta); + + // every RT_INTERVAL set the new limits + uint32_t ts_elapsed = get_ts_elapsed(ts, ts_torque_check_last); + if (ts_elapsed > limits.max_rt_interval) { + rt_torque_last = desired_torque; + ts_torque_check_last = ts; + } + } + + // no torque if controls is not allowed + if (!(controls_allowed || aol_allowed) && (desired_torque != 0)) { + violation = true; + } + + // certain safety modes set their steer request bit low for one or more frame at a + // predefined max frequency to avoid steering faults in certain situations + bool steer_req_mismatch = (steer_req == 0) && (desired_torque != 0); + if (!limits.has_steer_req_tolerance) { + if (steer_req_mismatch) { + violation = true; + } + + } else { + if (steer_req_mismatch) { + if (invalid_steer_req_count == 0) { + // disallow torque cut if not enough recent matching steer_req messages + if (valid_steer_req_count < limits.min_valid_request_frames) { + violation = true; + } + + // or we've cut torque too recently in time + uint32_t ts_elapsed = get_ts_elapsed(ts, ts_steer_req_mismatch_last); + if (ts_elapsed < limits.min_valid_request_rt_interval) { + violation = true; + } + } else { + // or we're cutting more frames consecutively than allowed + if (invalid_steer_req_count >= limits.max_invalid_request_frames) { + violation = true; + } + } + + valid_steer_req_count = 0; + ts_steer_req_mismatch_last = ts; + invalid_steer_req_count = MIN(invalid_steer_req_count + 1, limits.max_invalid_request_frames); + } else { + valid_steer_req_count = MIN(valid_steer_req_count + 1, limits.min_valid_request_frames); + invalid_steer_req_count = 0; + } + } + + // reset to 0 if either controls is not allowed or there's a violation + if (violation || !(controls_allowed || aol_allowed)) { + valid_steer_req_count = 0; + invalid_steer_req_count = 0; + desired_torque_last = 0; + rt_torque_last = 0; + ts_torque_check_last = ts; + ts_steer_req_mismatch_last = ts; + } + + return violation; +} + +// Safety checks for angle-based steering commands +bool steer_angle_cmd_checks(int desired_angle, bool steer_control_enabled, const AngleSteeringLimits limits) { + bool violation = false; + + bool aol_allowed = true; + if (controls_allowed) acc_main_on = controls_allowed; + if ((controls_allowed || aol_allowed) && steer_control_enabled) { + // convert floating point angle rate limits to integers in the scale of the desired angle on CAN, + // add 1 to not false trigger the violation. also fudge the speed by 1 m/s so rate limits are + // always slightly above openpilot's in case we read an updated speed in between angle commands + // TODO: this speed fudge can be much lower, look at data to determine the lowest reasonable offset + const float fudged_speed = (vehicle_speed.min / VEHICLE_SPEED_FACTOR) - 1.; + int delta_angle_up = (interpolate(limits.angle_rate_up_lookup, fudged_speed) * limits.angle_deg_to_can) + 1.; + int delta_angle_down = (interpolate(limits.angle_rate_down_lookup, fudged_speed) * limits.angle_deg_to_can) + 1.; + + // allow down limits at zero since small floats from openpilot will be rounded to 0 + // TODO: openpilot should be cognizant of this and not send small floats + int highest_desired_angle = desired_angle_last + ((desired_angle_last > 0) ? delta_angle_up : delta_angle_down); + int lowest_desired_angle = desired_angle_last - ((desired_angle_last >= 0) ? delta_angle_down : delta_angle_up); + + // check that commanded angle value isn't too far from measured, used to limit torque for some safety modes + // ensure we start moving in direction of meas while respecting relaxed rate limits if error is exceeded + if (limits.enforce_angle_error && ((vehicle_speed.values[0] / VEHICLE_SPEED_FACTOR) > limits.angle_error_min_speed)) { + // flipped fudge to avoid false positives + const float fudged_speed_error = (vehicle_speed.max / VEHICLE_SPEED_FACTOR) + 1.; + const int delta_angle_up_relaxed = (interpolate(limits.angle_rate_up_lookup, fudged_speed_error) * limits.angle_deg_to_can) - 1.; + const int delta_angle_down_relaxed = (interpolate(limits.angle_rate_down_lookup, fudged_speed_error) * limits.angle_deg_to_can) - 1.; + + // the minimum and maximum angle allowed based on the measured angle + const int lowest_desired_angle_error = angle_meas.min - limits.max_angle_error - 1; + const int highest_desired_angle_error = angle_meas.max + limits.max_angle_error + 1; + + // the MAX is to allow the desired angle to hit the edge of the bounds and not require going under it + if (desired_angle_last > highest_desired_angle_error) { + const int delta = (desired_angle_last >= 0) ? delta_angle_down_relaxed : delta_angle_up_relaxed; + highest_desired_angle = MAX(desired_angle_last - delta, highest_desired_angle_error); + + } else if (desired_angle_last < lowest_desired_angle_error) { + const int delta = (desired_angle_last <= 0) ? delta_angle_down_relaxed : delta_angle_up_relaxed; + lowest_desired_angle = MIN(desired_angle_last + delta, lowest_desired_angle_error); + + } else { + // already inside error boundary, don't allow commanding outside it + highest_desired_angle = MIN(highest_desired_angle, highest_desired_angle_error); + lowest_desired_angle = MAX(lowest_desired_angle, lowest_desired_angle_error); + } + + // don't enforce above the max steer + // TODO: this should always be done + lowest_desired_angle = CLAMP(lowest_desired_angle, -limits.max_angle, limits.max_angle); + highest_desired_angle = CLAMP(highest_desired_angle, -limits.max_angle, limits.max_angle); + } + + // check not above ISO 11270 lateral accel assuming worst case road roll + if (limits.angle_is_curvature) { + // ISO 11270 + static const float ISO_LATERAL_ACCEL = 3.0; // m/s^2 + + // Limit to average banked road since safety doesn't have the roll + static const float EARTH_G = 9.81; + static const float AVERAGE_ROAD_ROLL = 0.06; // ~3.4 degrees, 6% superelevation + static const float MAX_LATERAL_ACCEL = ISO_LATERAL_ACCEL - (EARTH_G * AVERAGE_ROAD_ROLL); // ~2.4 m/s^2 + + // Allow small tolerance by using minimum speed and rounding curvature up + const float speed_lower = MAX(vehicle_speed.min / VEHICLE_SPEED_FACTOR, 1.0); + const float speed_upper = MAX(vehicle_speed.max / VEHICLE_SPEED_FACTOR, 1.0); + const int max_curvature_upper = (MAX_LATERAL_ACCEL / (speed_lower * speed_lower) * limits.angle_deg_to_can) + 1.; + const int max_curvature_lower = (MAX_LATERAL_ACCEL / (speed_upper * speed_upper) * limits.angle_deg_to_can) - 1.; + + // ensure that the curvature error doesn't try to enforce above this limit + if (desired_angle_last > 0) { + lowest_desired_angle = CLAMP(lowest_desired_angle, -max_curvature_lower, max_curvature_lower); + highest_desired_angle = CLAMP(highest_desired_angle, -max_curvature_upper, max_curvature_upper); + } else { + lowest_desired_angle = CLAMP(lowest_desired_angle, -max_curvature_upper, max_curvature_upper); + highest_desired_angle = CLAMP(highest_desired_angle, -max_curvature_lower, max_curvature_lower); + } + } + + // check for violation; + violation |= max_limit_check(desired_angle, highest_desired_angle, lowest_desired_angle); + } + desired_angle_last = desired_angle; + + // Angle should either be 0 or same as current angle while not steering + if (!steer_control_enabled) { + const int max_inactive_angle = CLAMP(angle_meas.max, -limits.max_angle, limits.max_angle) + 1; + const int min_inactive_angle = CLAMP(angle_meas.min, -limits.max_angle, limits.max_angle) - 1; + violation |= (limits.inactive_angle_is_zero ? (desired_angle != 0) : + max_limit_check(desired_angle, max_inactive_angle, min_inactive_angle)); + } + + // No angle control allowed when controls are not allowed + violation |= !(controls_allowed || aol_allowed) && steer_control_enabled; + + return violation; +} + +void pcm_cruise_check(bool cruise_engaged) { + // Enter controls on rising edge of stock ACC, exit controls if stock ACC disengages + if (!cruise_engaged) { + controls_allowed = false; + //print("controls_allowed(pcm) = false\n"); + } + if (cruise_engaged && !cruise_engaged_prev) { + controls_allowed = true; + } + cruise_engaged_prev = cruise_engaged; +} diff --git a/opendbc_repo/opendbc/safety/safety/safety_body.h b/opendbc_repo/opendbc/safety/safety/safety_body.h new file mode 100644 index 0000000000..79d4b475ac --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_body.h @@ -0,0 +1,50 @@ +#pragma once + +#include "safety_declarations.h" + +static void body_rx_hook(const CANPacket_t *to_push) { + // body is never at standstill + vehicle_moving = true; + + if (GET_ADDR(to_push) == 0x201U) { + controls_allowed = true; + } +} + +static bool body_tx_hook(const CANPacket_t *to_send) { + bool tx = true; + int addr = GET_ADDR(to_send); + int len = GET_LEN(to_send); + + if (!controls_allowed && (addr != 0x1)) { + tx = false; + } + + // Allow going into CAN flashing mode for base & knee even if controls are not allowed + bool flash_msg = ((addr == 0x250) || (addr == 0x350)) && (len == 8); + if (!controls_allowed && (GET_BYTES(to_send, 0, 4) == 0xdeadfaceU) && (GET_BYTES(to_send, 4, 4) == 0x0ab00b1eU) && flash_msg) { + tx = true; + } + + return tx; +} + +static safety_config body_init(uint16_t param) { + static RxCheck body_rx_checks[] = { + {.msg = {{0x201, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + }; + + static const CanMsg BODY_TX_MSGS[] = {{0x250, 0, 8}, {0x250, 0, 6}, {0x251, 0, 5}, // body + {0x350, 0, 8}, {0x350, 0, 6}, {0x351, 0, 5}, // knee + {0x1, 0, 8}}; // CAN flasher + + UNUSED(param); + return BUILD_SAFETY_CFG(body_rx_checks, BODY_TX_MSGS); +} + +const safety_hooks body_hooks = { + .init = body_init, + .rx = body_rx_hook, + .tx = body_tx_hook, + .fwd = default_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_chrysler.h b/opendbc_repo/opendbc/safety/safety/safety_chrysler.h new file mode 100644 index 0000000000..985a8c1084 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_chrysler.h @@ -0,0 +1,304 @@ +#pragma once + +#include "safety_declarations.h" + +typedef struct { + const int EPS_2; + const int ESP_1; + const int ESP_8; + const int ECM_5; + const int DAS_3; + const int DAS_6; + const int LKAS_COMMAND; + const int CRUISE_BUTTONS; +} ChryslerAddrs; + +typedef enum { + CHRYSLER_RAM_DT, + CHRYSLER_RAM_HD, + CHRYSLER_PACIFICA, // plus Jeep +} ChryslerPlatform; +static ChryslerPlatform chrysler_platform; +static const ChryslerAddrs *chrysler_addrs; + +static uint32_t chrysler_get_checksum(const CANPacket_t *to_push) { + int checksum_byte = GET_LEN(to_push) - 1U; + return (uint8_t)(GET_BYTE(to_push, checksum_byte)); +} + +static uint32_t chrysler_compute_checksum(const CANPacket_t *to_push) { + // TODO: clean this up + // http://illmatics.com/Remote%20Car%20Hacking.pdf + uint8_t checksum = 0xFFU; + int len = GET_LEN(to_push); + for (int j = 0; j < (len - 1); j++) { + uint8_t shift = 0x80U; + uint8_t curr = (uint8_t)GET_BYTE(to_push, j); + for (int i=0; i<8; i++) { + uint8_t bit_sum = curr & shift; + uint8_t temp_chk = checksum & 0x80U; + if (bit_sum != 0U) { + bit_sum = 0x1C; + if (temp_chk != 0U) { + bit_sum = 1; + } + checksum = checksum << 1; + temp_chk = checksum | 1U; + bit_sum ^= temp_chk; + } else { + if (temp_chk != 0U) { + bit_sum = 0x1D; + } + checksum = checksum << 1; + bit_sum ^= checksum; + } + checksum = bit_sum; + shift = shift >> 1; + } + } + return (uint8_t)(~checksum); +} + +static uint8_t chrysler_get_counter(const CANPacket_t *to_push) { + return (uint8_t)(GET_BYTE(to_push, 6) >> 4); +} + +static void chrysler_rx_hook(const CANPacket_t *to_push) { + const int bus = GET_BUS(to_push); + const int addr = GET_ADDR(to_push); + + // Measured EPS torque + if ((bus == 0) && (addr == chrysler_addrs->EPS_2)) { + int torque_meas_new = ((GET_BYTE(to_push, 4) & 0x7U) << 8) + GET_BYTE(to_push, 5) - 1024U; + update_sample(&torque_meas, torque_meas_new); + } + + // enter controls on rising edge of ACC, exit controls on ACC off + const int das_3_bus = (chrysler_platform == CHRYSLER_PACIFICA) ? 0 : 2; + if ((bus == das_3_bus) && (addr == chrysler_addrs->DAS_3)) { + bool cruise_engaged = GET_BIT(to_push, 21U); + pcm_cruise_check(cruise_engaged); + } + + // TODO: use the same message for both + // update vehicle moving + if ((chrysler_platform != CHRYSLER_PACIFICA) && (bus == 0) && (addr == chrysler_addrs->ESP_8)) { + vehicle_moving = ((GET_BYTE(to_push, 4) << 8) + GET_BYTE(to_push, 5)) != 0U; + } + if ((chrysler_platform == CHRYSLER_PACIFICA) && (bus == 0) && (addr == 514)) { + int speed_l = (GET_BYTE(to_push, 0) << 4) + (GET_BYTE(to_push, 1) >> 4); + int speed_r = (GET_BYTE(to_push, 2) << 4) + (GET_BYTE(to_push, 3) >> 4); + vehicle_moving = (speed_l != 0) || (speed_r != 0); + } + + // exit controls on rising edge of gas press + if ((bus == 0) && (addr == chrysler_addrs->ECM_5)) { + gas_pressed = GET_BYTE(to_push, 0U) != 0U; + } + + // exit controls on rising edge of brake press + if ((bus == 0) && (addr == chrysler_addrs->ESP_1)) { + brake_pressed = ((GET_BYTE(to_push, 0U) & 0xFU) >> 2U) == 1U; + } + + generic_rx_checks((bus == 0) && (addr == chrysler_addrs->LKAS_COMMAND)); +} + +static bool chrysler_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits CHRYSLER_STEERING_LIMITS = { + .max_steer = 261, + .max_rt_delta = 112, + .max_rt_interval = 250000, + .max_rate_up = 3, + .max_rate_down = 3, + .max_torque_error = 80, + .type = TorqueMotorLimited, + }; + + const TorqueSteeringLimits CHRYSLER_RAM_DT_STEERING_LIMITS = { + .max_steer = 350, + .max_rt_delta = 112, + .max_rt_interval = 250000, + .max_rate_up = 6, + .max_rate_down = 6, + .max_torque_error = 80, + .type = TorqueMotorLimited, + }; + + const TorqueSteeringLimits CHRYSLER_RAM_HD_STEERING_LIMITS = { + .max_steer = 361, + .max_rt_delta = 182, + .max_rt_interval = 250000, + .max_rate_up = 14, + .max_rate_down = 14, + .max_torque_error = 80, + .type = TorqueMotorLimited, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + + // STEERING + if (addr == chrysler_addrs->LKAS_COMMAND) { + int start_byte = (chrysler_platform == CHRYSLER_PACIFICA) ? 0 : 1; + int desired_torque = ((GET_BYTE(to_send, start_byte) & 0x7U) << 8) | GET_BYTE(to_send, start_byte + 1); + desired_torque -= 1024; + + const TorqueSteeringLimits limits = (chrysler_platform == CHRYSLER_PACIFICA) ? CHRYSLER_STEERING_LIMITS : + (chrysler_platform == CHRYSLER_RAM_DT) ? CHRYSLER_RAM_DT_STEERING_LIMITS : CHRYSLER_RAM_HD_STEERING_LIMITS; + + bool steer_req = (chrysler_platform == CHRYSLER_PACIFICA) ? GET_BIT(to_send, 4U) : (GET_BYTE(to_send, 3) & 0x7U) == 2U; + if (steer_torque_cmd_checks(desired_torque, steer_req, limits)) { + tx = false; + } + } + + // FORCE CANCEL: only the cancel button press is allowed + if (addr == chrysler_addrs->CRUISE_BUTTONS) { + const bool is_cancel = GET_BYTE(to_send, 0) == 1U; + const bool is_resume = GET_BYTE(to_send, 0) == 0x10U; + const bool allowed = is_cancel || (is_resume && controls_allowed); + if (!allowed) { + tx = false; + } + } + + return tx; +} + +static int chrysler_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + // forward to camera + if (bus_num == 0) { + bus_fwd = 2; + } + + // forward all messages from camera except LKAS messages + const bool is_lkas = ((addr == chrysler_addrs->LKAS_COMMAND) || (addr == chrysler_addrs->DAS_6)); + if ((bus_num == 2) && !is_lkas){ + bus_fwd = 0; + } + + return bus_fwd; +} + +static safety_config chrysler_init(uint16_t param) { + + const uint32_t CHRYSLER_PARAM_RAM_DT = 1U; // set for Ram DT platform + + // CAN messages for Chrysler/Jeep platforms + static const ChryslerAddrs CHRYSLER_ADDRS = { + .EPS_2 = 0x220, // EPS driver input torque + .ESP_1 = 0x140, // Brake pedal and vehicle speed + .ESP_8 = 0x11C, // Brake pedal and vehicle speed + .ECM_5 = 0x22F, // Throttle position sensor + .DAS_3 = 0x1F4, // ACC engagement states from DASM + .DAS_6 = 0x2A6, // LKAS HUD and auto headlight control from DASM + .LKAS_COMMAND = 0x292, // LKAS controls from DASM + .CRUISE_BUTTONS = 0x23B, // Cruise control buttons + }; + + // CAN messages for the 5th gen RAM DT platform + static const ChryslerAddrs CHRYSLER_RAM_DT_ADDRS = { + .EPS_2 = 0x31, // EPS driver input torque + .ESP_1 = 0x83, // Brake pedal and vehicle speed + .ESP_8 = 0x79, // Brake pedal and vehicle speed + .ECM_5 = 0x9D, // Throttle position sensor + .DAS_3 = 0x99, // ACC engagement states from DASM + .DAS_6 = 0xFA, // LKAS HUD and auto headlight control from DASM + .LKAS_COMMAND = 0xA6, // LKAS controls from DASM + .CRUISE_BUTTONS = 0xB1, // Cruise control buttons + }; + + static RxCheck chrysler_ram_dt_rx_checks[] = { + {.msg = {{CHRYSLER_RAM_DT_ADDRS.EPS_2, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_DT_ADDRS.ESP_1, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_DT_ADDRS.ESP_8, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_DT_ADDRS.ECM_5, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_DT_ADDRS.DAS_3, 2, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + }; + + static RxCheck chrysler_rx_checks[] = { + {.msg = {{CHRYSLER_ADDRS.EPS_2, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_ADDRS.ESP_1, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + //{.msg = {{ESP_8, 0, 8, .max_counter = 15U, .frequency = 50U}}}, + {.msg = {{514, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_ADDRS.ECM_5, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_ADDRS.DAS_3, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + }; + + static const CanMsg CHRYSLER_TX_MSGS[] = { + {CHRYSLER_ADDRS.CRUISE_BUTTONS, 0, 3}, + {CHRYSLER_ADDRS.LKAS_COMMAND, 0, 6}, + {CHRYSLER_ADDRS.DAS_6, 0, 8}, + }; + + static const CanMsg CHRYSLER_RAM_DT_TX_MSGS[] = { + {CHRYSLER_RAM_DT_ADDRS.CRUISE_BUTTONS, 2, 3}, + {CHRYSLER_RAM_DT_ADDRS.LKAS_COMMAND, 0, 8}, + {CHRYSLER_RAM_DT_ADDRS.DAS_6, 0, 8}, + }; + +#ifdef ALLOW_DEBUG + // CAN messages for the 5th gen RAM HD platform + static const ChryslerAddrs CHRYSLER_RAM_HD_ADDRS = { + .EPS_2 = 0x220, // EPS driver input torque + .ESP_1 = 0x140, // Brake pedal and vehicle speed + .ESP_8 = 0x11C, // Brake pedal and vehicle speed + .ECM_5 = 0x22F, // Throttle position sensor + .DAS_3 = 0x1F4, // ACC engagement states from DASM + .DAS_6 = 0x275, // LKAS HUD and auto headlight control from DASM + .LKAS_COMMAND = 0x276, // LKAS controls from DASM + .CRUISE_BUTTONS = 0x23A, // Cruise control buttons + }; + + static RxCheck chrysler_ram_hd_rx_checks[] = { + {.msg = {{CHRYSLER_RAM_HD_ADDRS.EPS_2, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_HD_ADDRS.ESP_1, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_HD_ADDRS.ESP_8, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_HD_ADDRS.ECM_5, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{CHRYSLER_RAM_HD_ADDRS.DAS_3, 2, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + }; + + static const CanMsg CHRYSLER_RAM_HD_TX_MSGS[] = { + {CHRYSLER_RAM_HD_ADDRS.CRUISE_BUTTONS, 2, 3}, + {CHRYSLER_RAM_HD_ADDRS.LKAS_COMMAND, 0, 8}, + {CHRYSLER_RAM_HD_ADDRS.DAS_6, 0, 8}, + }; + + const uint32_t CHRYSLER_PARAM_RAM_HD = 2U; // set for Ram HD platform + bool enable_ram_hd = GET_FLAG(param, CHRYSLER_PARAM_RAM_HD); +#endif + + safety_config ret; + + bool enable_ram_dt = GET_FLAG(param, CHRYSLER_PARAM_RAM_DT); + + if (enable_ram_dt) { + chrysler_platform = CHRYSLER_RAM_DT; + chrysler_addrs = &CHRYSLER_RAM_DT_ADDRS; + ret = BUILD_SAFETY_CFG(chrysler_ram_dt_rx_checks, CHRYSLER_RAM_DT_TX_MSGS); +#ifdef ALLOW_DEBUG + } else if (enable_ram_hd) { + chrysler_platform = CHRYSLER_RAM_HD; + chrysler_addrs = &CHRYSLER_RAM_HD_ADDRS; + ret = BUILD_SAFETY_CFG(chrysler_ram_hd_rx_checks, CHRYSLER_RAM_HD_TX_MSGS); +#endif + } else { + chrysler_platform = CHRYSLER_PACIFICA; + chrysler_addrs = &CHRYSLER_ADDRS; + ret = BUILD_SAFETY_CFG(chrysler_rx_checks, CHRYSLER_TX_MSGS); + } + return ret; +} + +const safety_hooks chrysler_hooks = { + .init = chrysler_init, + .rx = chrysler_rx_hook, + .tx = chrysler_tx_hook, + .fwd = chrysler_fwd_hook, + .get_counter = chrysler_get_counter, + .get_checksum = chrysler_get_checksum, + .compute_checksum = chrysler_compute_checksum, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_defaults.h b/opendbc_repo/opendbc/safety/safety/safety_defaults.h new file mode 100644 index 0000000000..ca7a18c6f0 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_defaults.h @@ -0,0 +1,76 @@ +#pragma once + +#include "safety_declarations.h" + +void default_rx_hook(const CANPacket_t *to_push) { + UNUSED(to_push); +} + +// *** no output safety mode *** + +static safety_config nooutput_init(uint16_t param) { + UNUSED(param); + return (safety_config){NULL, 0, NULL, 0}; +} + +// GCOV_EXCL_START +// Unreachable by design (doesn't define any tx msgs) +static bool nooutput_tx_hook(const CANPacket_t *to_send) { + UNUSED(to_send); + return false; +} +// GCOV_EXCL_STOP + +static int default_fwd_hook(int bus_num, int addr) { + UNUSED(bus_num); + UNUSED(addr); + return -1; +} + +const safety_hooks nooutput_hooks = { + .init = nooutput_init, + .rx = default_rx_hook, + .tx = nooutput_tx_hook, + .fwd = default_fwd_hook, +}; + +// *** all output safety mode *** + +// Enables passthrough mode where relay is open and bus 0 gets forwarded to bus 2 and vice versa +static bool alloutput_passthrough = false; + +static safety_config alloutput_init(uint16_t param) { + // Enables passthrough mode where relay is open and bus 0 gets forwarded to bus 2 and vice versa + const uint16_t ALLOUTPUT_PARAM_PASSTHROUGH = 1; + controls_allowed = true; + alloutput_passthrough = GET_FLAG(param, ALLOUTPUT_PARAM_PASSTHROUGH); + return (safety_config){NULL, 0, NULL, 0}; +} + +static bool alloutput_tx_hook(const CANPacket_t *to_send) { + UNUSED(to_send); + return true; +} + +static int alloutput_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + UNUSED(addr); + + if (alloutput_passthrough) { + if (bus_num == 0) { + bus_fwd = 2; + } + if (bus_num == 2) { + bus_fwd = 0; + } + } + + return bus_fwd; +} + +const safety_hooks alloutput_hooks = { + .init = alloutput_init, + .rx = default_rx_hook, + .tx = alloutput_tx_hook, + .fwd = alloutput_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_elm327.h b/opendbc_repo/opendbc/safety/safety/safety_elm327.h new file mode 100644 index 0000000000..83efd826b9 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_elm327.h @@ -0,0 +1,42 @@ +#pragma once + +#include "safety_declarations.h" +#include "safety_defaults.h" + +static bool elm327_tx_hook(const CANPacket_t *to_send) { + const int GM_CAMERA_DIAG_ADDR = 0x24B; + + bool tx = true; + int addr = GET_ADDR(to_send); + int len = GET_LEN(to_send); + + // All ISO 15765-4 messages must be 8 bytes long + if (len != 8) { + tx = false; + } + + // Check valid 29 bit send addresses for ISO 15765-4 + // Check valid 11 bit send addresses for ISO 15765-4 + if ((addr != 0x18DB33F1) && ((addr & 0x1FFF00FF) != 0x18DA00F1) && + ((addr & 0x1FFFFF00) != 0x600) && ((addr & 0x1FFFFF00) != 0x700) && + (addr != GM_CAMERA_DIAG_ADDR)) { + tx = false; + } + + // GM camera uses non-standard diagnostic address, this has no control message address collisions + if ((addr == GM_CAMERA_DIAG_ADDR) && (len == 8)) { + // Only allow known frame types for ISO 15765-2 + if ((GET_BYTE(to_send, 0) & 0xF0U) > 0x30U) { + tx = false; + } + } + return tx; +} + +// If current_board->has_obd and safety_param == 0, bus 1 is multiplexed to the OBD-II port +const safety_hooks elm327_hooks = { + .init = nooutput_init, + .rx = default_rx_hook, + .tx = elm327_tx_hook, + .fwd = default_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_ford.h b/opendbc_repo/opendbc/safety/safety/safety_ford.h new file mode 100644 index 0000000000..897a90a41e --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_ford.h @@ -0,0 +1,434 @@ +#pragma once + +#include "safety_declarations.h" + +// Safety-relevant CAN messages for Ford vehicles. +#define FORD_EngBrakeData 0x165 // RX from PCM, for driver brake pedal and cruise state +#define FORD_EngVehicleSpThrottle 0x204 // RX from PCM, for driver throttle input +#define FORD_DesiredTorqBrk 0x213 // RX from ABS, for standstill state +#define FORD_BrakeSysFeatures 0x415 // RX from ABS, for vehicle speed +#define FORD_EngVehicleSpThrottle2 0x202 // RX from PCM, for second vehicle speed +#define FORD_Yaw_Data_FD1 0x91 // RX from RCM, for yaw rate +#define FORD_Steering_Data_FD1 0x083 // TX by OP, various driver switches and LKAS/CC buttons +#define FORD_ACCDATA 0x186 // TX by OP, ACC controls +#define FORD_ACCDATA_3 0x18A // TX by OP, ACC/TJA user interface +#define FORD_Lane_Assist_Data1 0x3CA // TX by OP, Lane Keep Assist +#define FORD_LateralMotionControl 0x3D3 // TX by OP, Lateral Control message +#define FORD_LateralMotionControl2 0x3D6 // TX by OP, alternate Lateral Control message +#define FORD_IPMA_Data 0x3D8 // TX by OP, IPMA and LKAS user interface + +// CAN bus numbers. +#define FORD_MAIN_BUS 0U +#define FORD_CAM_BUS 2U + +static uint8_t ford_get_counter(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + uint8_t cnt = 0; + if (addr == FORD_BrakeSysFeatures) { + // Signal: VehVActlBrk_No_Cnt + cnt = (GET_BYTE(to_push, 2) >> 2) & 0xFU; + } else if (addr == FORD_Yaw_Data_FD1) { + // Signal: VehRollYaw_No_Cnt + cnt = GET_BYTE(to_push, 5); + } else { + } + return cnt; +} + +static uint32_t ford_get_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + uint8_t chksum = 0; + if (addr == FORD_BrakeSysFeatures) { + // Signal: VehVActlBrk_No_Cs + chksum = GET_BYTE(to_push, 3); + } else if (addr == FORD_Yaw_Data_FD1) { + // Signal: VehRollYawW_No_Cs + chksum = GET_BYTE(to_push, 4); + } else { + } + return chksum; +} + +static uint32_t ford_compute_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + uint8_t chksum = 0; + if (addr == FORD_BrakeSysFeatures) { + chksum += GET_BYTE(to_push, 0) + GET_BYTE(to_push, 1); // Veh_V_ActlBrk + chksum += GET_BYTE(to_push, 2) >> 6; // VehVActlBrk_D_Qf + chksum += (GET_BYTE(to_push, 2) >> 2) & 0xFU; // VehVActlBrk_No_Cnt + chksum = 0xFFU - chksum; + } else if (addr == FORD_Yaw_Data_FD1) { + chksum += GET_BYTE(to_push, 0) + GET_BYTE(to_push, 1); // VehRol_W_Actl + chksum += GET_BYTE(to_push, 2) + GET_BYTE(to_push, 3); // VehYaw_W_Actl + chksum += GET_BYTE(to_push, 5); // VehRollYaw_No_Cnt + chksum += GET_BYTE(to_push, 6) >> 6; // VehRolWActl_D_Qf + chksum += (GET_BYTE(to_push, 6) >> 4) & 0x3U; // VehYawWActl_D_Qf + chksum = 0xFFU - chksum; + } else { + } + + return chksum; +} + +static bool ford_get_quality_flag_valid(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + bool valid = false; + if (addr == FORD_BrakeSysFeatures) { + valid = (GET_BYTE(to_push, 2) >> 6) == 0x3U; // VehVActlBrk_D_Qf + } else if (addr == FORD_EngVehicleSpThrottle2) { + valid = ((GET_BYTE(to_push, 4) >> 5) & 0x3U) == 0x3U; // VehVActlEng_D_Qf + } else if (addr == FORD_Yaw_Data_FD1) { + valid = ((GET_BYTE(to_push, 6) >> 4) & 0x3U) == 0x3U; // VehYawWActl_D_Qf + } else { + } + return valid; +} + +static bool ford_longitudinal = false; + +#define FORD_INACTIVE_CURVATURE 1000U +#define FORD_INACTIVE_CURVATURE_RATE 4096U +#define FORD_INACTIVE_PATH_OFFSET 512U +#define FORD_INACTIVE_PATH_ANGLE 1000U + +#define FORD_CANFD_INACTIVE_CURVATURE_RATE 1024U + +#define FORD_MAX_SPEED_DELTA 2.0 // m/s + +static bool ford_lkas_msg_check(int addr) { + return (addr == FORD_ACCDATA_3) + || (addr == FORD_Lane_Assist_Data1) + || (addr == FORD_LateralMotionControl) + || (addr == FORD_LateralMotionControl2) + || (addr == FORD_IPMA_Data); +} + +// Curvature rate limits +#define FORD_LIMITS(limit_lateral_acceleration) { \ + .max_angle = 1000, /* 0.02 curvature */ \ + .angle_deg_to_can = 50000, /* 1 / (2e-5) rad to can */ \ + .max_angle_error = 100, /* 0.002 * FORD_STEERING_LIMITS.angle_deg_to_can */ \ + .angle_rate_up_lookup = { \ + {5., 25., 25.}, \ + {0.00045, 0.0001, 0.0001} \ + }, \ + .angle_rate_down_lookup = { \ + {5., 25., 25.}, \ + {0.00045, 0.00015, 0.00015} \ + }, \ + \ + /* no blending at low speed due to lack of torque wind-up and inaccurate current curvature */ \ + .angle_error_min_speed = 10.0, /* m/s */ \ + \ + .angle_is_curvature = (limit_lateral_acceleration), \ + .enforce_angle_error = true, \ + .inactive_angle_is_zero = true, \ +} + +static const AngleSteeringLimits FORD_STEERING_LIMITS = FORD_LIMITS(false); + +static void ford_rx_hook(const CANPacket_t *to_push) { + if (GET_BUS(to_push) == FORD_MAIN_BUS) { + int addr = GET_ADDR(to_push); + + // Update in motion state from standstill signal + if (addr == FORD_DesiredTorqBrk) { + // Signal: VehStop_D_Stat + vehicle_moving = ((GET_BYTE(to_push, 3) >> 3) & 0x3U) != 1U; + } + + // Update vehicle speed + if (addr == FORD_BrakeSysFeatures) { + // Signal: Veh_V_ActlBrk + UPDATE_VEHICLE_SPEED(((GET_BYTE(to_push, 0) << 8) | GET_BYTE(to_push, 1)) * 0.01 / 3.6); + } + + // Check vehicle speed against a second source + if (addr == FORD_EngVehicleSpThrottle2) { + // Disable controls if speeds from ABS and PCM ECUs are too far apart. + // Signal: Veh_V_ActlEng + float filtered_pcm_speed = ((GET_BYTE(to_push, 6) << 8) | GET_BYTE(to_push, 7)) * 0.01 / 3.6; + bool is_invalid_speed = ABS(filtered_pcm_speed - ((float)vehicle_speed.values[0] / VEHICLE_SPEED_FACTOR)) > FORD_MAX_SPEED_DELTA; + if (is_invalid_speed) { + controls_allowed = false; + } + } + + // Update vehicle yaw rate + if (addr == FORD_Yaw_Data_FD1) { + // Signal: VehYaw_W_Actl + // TODO: we should use the speed which results in the closest angle measurement to the desired angle + float ford_yaw_rate = (((GET_BYTE(to_push, 2) << 8U) | GET_BYTE(to_push, 3)) * 0.0002) - 6.5; + float current_curvature = ford_yaw_rate / MAX(vehicle_speed.values[0] / VEHICLE_SPEED_FACTOR, 0.1); + // convert current curvature into units on CAN for comparison with desired curvature + update_sample(&angle_meas, ROUND(current_curvature * FORD_STEERING_LIMITS.angle_deg_to_can)); + } + + // Update gas pedal + if (addr == FORD_EngVehicleSpThrottle) { + // Pedal position: (0.1 * val) in percent + // Signal: ApedPos_Pc_ActlArb + gas_pressed = (((GET_BYTE(to_push, 0) & 0x03U) << 8) | GET_BYTE(to_push, 1)) > 0U; + } + + // Update brake pedal and cruise state + if (addr == FORD_EngBrakeData) { + // Signal: BpedDrvAppl_D_Actl + brake_pressed = ((GET_BYTE(to_push, 0) >> 4) & 0x3U) == 2U; + + // Signal: CcStat_D_Actl + unsigned int cruise_state = GET_BYTE(to_push, 1) & 0x07U; + bool cruise_engaged = (cruise_state == 4U) || (cruise_state == 5U); + pcm_cruise_check(cruise_engaged); + } + + // If steering controls messages are received on the destination bus, it's an indication + // that the relay might be malfunctioning. + bool stock_ecu_detected = ford_lkas_msg_check(addr); + if (ford_longitudinal) { + stock_ecu_detected = stock_ecu_detected || (addr == FORD_ACCDATA); + } + generic_rx_checks(stock_ecu_detected); + } + +} + +static bool ford_tx_hook(const CANPacket_t *to_send) { + const LongitudinalLimits FORD_LONG_LIMITS = { + // acceleration cmd limits (used for brakes) + // Signal: AccBrkTot_A_Rq + .max_accel = 5641, // 1.9999 m/s^s + .min_accel = 4231, // -3.4991 m/s^2 + .inactive_accel = 5128, // -0.0008 m/s^2 + + // gas cmd limits + // Signal: AccPrpl_A_Rq & AccPrpl_A_Pred + .max_gas = 700, // 2.0 m/s^2 + .min_gas = 450, // -0.5 m/s^2 + .inactive_gas = 0, // -5.0 m/s^2 + }; + + bool tx = true; + + int addr = GET_ADDR(to_send); + + // Safety check for ACCDATA accel and brake requests + if (addr == FORD_ACCDATA) { + // Signal: AccPrpl_A_Rq + int gas = ((GET_BYTE(to_send, 6) & 0x3U) << 8) | GET_BYTE(to_send, 7); + // Signal: AccPrpl_A_Pred + int gas_pred = ((GET_BYTE(to_send, 2) & 0x3U) << 8) | GET_BYTE(to_send, 3); + // Signal: AccBrkTot_A_Rq + int accel = ((GET_BYTE(to_send, 0) & 0x1FU) << 8) | GET_BYTE(to_send, 1); + // Signal: CmbbDeny_B_Actl + bool cmbb_deny = GET_BIT(to_send, 37U); + + // Signal: AccBrkPrchg_B_Rq & AccBrkDecel_B_Rq + bool brake_actuation = GET_BIT(to_send, 54U) || GET_BIT(to_send, 55U); + + bool violation = false; + violation |= longitudinal_accel_checks(accel, FORD_LONG_LIMITS); + violation |= longitudinal_gas_checks(gas, FORD_LONG_LIMITS); + violation |= longitudinal_gas_checks(gas_pred, FORD_LONG_LIMITS); + + // Safety check for stock AEB + violation |= cmbb_deny; // do not prevent stock AEB actuation + + violation |= !get_longitudinal_allowed() && brake_actuation; + + if (violation) { + tx = false; + } + } + + // Safety check for Steering_Data_FD1 button signals + // Note: Many other signals in this message are not relevant to safety (e.g. blinkers, wiper switches, high beam) + // which we passthru in OP. + if (addr == FORD_Steering_Data_FD1) { + // Violation if resume button is pressed while controls not allowed, or + // if cancel button is pressed when cruise isn't engaged. + bool violation = false; + violation |= GET_BIT(to_send, 8U) && !cruise_engaged_prev; // Signal: CcAslButtnCnclPress (cancel) + violation |= GET_BIT(to_send, 25U) && !controls_allowed; // Signal: CcAsllButtnResPress (resume) + + if (violation) { + tx = false; + } + } + + // Safety check for Lane_Assist_Data1 action + if (addr == FORD_Lane_Assist_Data1) { + // Do not allow steering using Lane_Assist_Data1 (Lane-Departure Aid). + // This message must be sent for Lane Centering to work, and can include + // values such as the steering angle or lane curvature for debugging, + // but the action (LkaActvStats_D2_Req) must be set to zero. + unsigned int action = GET_BYTE(to_send, 0) >> 5; + if (action != 0U) { + tx = false; + } + } + + // Safety check for LateralMotionControl action + if (addr == FORD_LateralMotionControl) { + // Signal: LatCtl_D_Rq + bool steer_control_enabled = ((GET_BYTE(to_send, 4) >> 2) & 0x7U) != 0U; + unsigned int raw_curvature = (GET_BYTE(to_send, 0) << 3) | (GET_BYTE(to_send, 1) >> 5); + unsigned int raw_curvature_rate = ((GET_BYTE(to_send, 1) & 0x1FU) << 8) | GET_BYTE(to_send, 2); + unsigned int raw_path_angle = (GET_BYTE(to_send, 3) << 3) | (GET_BYTE(to_send, 4) >> 5); + unsigned int raw_path_offset = (GET_BYTE(to_send, 5) << 2) | (GET_BYTE(to_send, 6) >> 6); + + // These signals are not yet tested with the current safety limits + bool violation = (raw_curvature_rate != FORD_INACTIVE_CURVATURE_RATE) || (raw_path_angle != FORD_INACTIVE_PATH_ANGLE) || (raw_path_offset != FORD_INACTIVE_PATH_OFFSET); + + // Check angle error and steer_control_enabled + int desired_curvature = raw_curvature - FORD_INACTIVE_CURVATURE; // /FORD_STEERING_LIMITS.angle_deg_to_can to get real curvature + violation |= steer_angle_cmd_checks(desired_curvature, steer_control_enabled, FORD_STEERING_LIMITS); + + if (violation) { + tx = false; + } + } + + // Safety check for LateralMotionControl2 action + if (addr == FORD_LateralMotionControl2) { + static const AngleSteeringLimits FORD_CANFD_STEERING_LIMITS = FORD_LIMITS(true); + + // Signal: LatCtl_D2_Rq + bool steer_control_enabled = ((GET_BYTE(to_send, 0) >> 4) & 0x7U) != 0U; + unsigned int raw_curvature = (GET_BYTE(to_send, 2) << 3) | (GET_BYTE(to_send, 3) >> 5); + unsigned int raw_curvature_rate = (GET_BYTE(to_send, 6) << 3) | (GET_BYTE(to_send, 7) >> 5); + unsigned int raw_path_angle = ((GET_BYTE(to_send, 3) & 0x1FU) << 6) | (GET_BYTE(to_send, 4) >> 2); + unsigned int raw_path_offset = ((GET_BYTE(to_send, 4) & 0x3U) << 8) | GET_BYTE(to_send, 5); + + // These signals are not yet tested with the current safety limits + bool violation = (raw_curvature_rate != FORD_CANFD_INACTIVE_CURVATURE_RATE) || (raw_path_angle != FORD_INACTIVE_PATH_ANGLE) || (raw_path_offset != FORD_INACTIVE_PATH_OFFSET); + + // Check angle error and steer_control_enabled + int desired_curvature = raw_curvature - FORD_INACTIVE_CURVATURE; // /FORD_STEERING_LIMITS.angle_deg_to_can to get real curvature + violation |= steer_angle_cmd_checks(desired_curvature, steer_control_enabled, FORD_CANFD_STEERING_LIMITS); + + if (violation) { + tx = false; + } + } + + return tx; +} + +static int ford_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + switch (bus_num) { + case FORD_MAIN_BUS: { + // Forward all traffic from bus 0 onward + bus_fwd = FORD_CAM_BUS; + break; + } + case FORD_CAM_BUS: { + if (ford_lkas_msg_check(addr)) { + // Block stock LKAS and UI messages + bus_fwd = -1; + } else if (ford_longitudinal && (addr == FORD_ACCDATA)) { + // Block stock ACC message + bus_fwd = -1; + } else { + // Forward remaining traffic + bus_fwd = FORD_MAIN_BUS; + } + break; + } + default: { + // No other buses should be in use; fallback to do-not-forward + bus_fwd = -1; + break; + } + } + + return bus_fwd; +} + +static safety_config ford_init(uint16_t param) { + bool ford_canfd = false; + + // warning: quality flags are not yet checked in openpilot's CAN parser, + // this may be the cause of blocked messages + static RxCheck ford_rx_checks[] = { + {.msg = {{FORD_BrakeSysFeatures, 0, 8, .max_counter = 15U, .quality_flag=true, .frequency = 50U}, { 0 }, { 0 }}}, + // FORD_EngVehicleSpThrottle2 has a counter that either randomly skips or by 2, likely ECU bug + // Some hybrid models also experience a bug where this checksum mismatches for one or two frames under heavy acceleration with ACC + // It has been confirmed that the Bronco Sport's camera only disallows ACC for bad quality flags, not counters or checksums, so we match that + {.msg = {{FORD_EngVehicleSpThrottle2, 0, 8, .ignore_checksum = true, .ignore_counter = true, .quality_flag=true, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{FORD_Yaw_Data_FD1, 0, 8, .max_counter = 255U, .quality_flag=true, .frequency = 100U}, { 0 }, { 0 }}}, + // These messages have no counter or checksum + {.msg = {{FORD_EngBrakeData, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, + {.msg = {{FORD_EngVehicleSpThrottle, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{FORD_DesiredTorqBrk, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, + }; + + #define FORD_COMMON_TX_MSGS \ + {FORD_Steering_Data_FD1, 0, 8}, \ + {FORD_Steering_Data_FD1, 2, 8}, \ + {FORD_ACCDATA_3, 0, 8}, \ + {FORD_Lane_Assist_Data1, 0, 8}, \ + {FORD_IPMA_Data, 0, 8}, \ + + static const CanMsg FORD_CANFD_LONG_TX_MSGS[] = { + FORD_COMMON_TX_MSGS + {FORD_ACCDATA, 0, 8}, + {FORD_LateralMotionControl2, 0, 8}, + }; + + static const CanMsg FORD_CANFD_STOCK_TX_MSGS[] = { + FORD_COMMON_TX_MSGS + {FORD_LateralMotionControl2, 0, 8}, + }; + + static const CanMsg FORD_STOCK_TX_MSGS[] = { + FORD_COMMON_TX_MSGS + {FORD_LateralMotionControl, 0, 8}, + }; + + static const CanMsg FORD_LONG_TX_MSGS[] = { + FORD_COMMON_TX_MSGS + {FORD_ACCDATA, 0, 8}, + {FORD_LateralMotionControl, 0, 8}, + }; + + const uint16_t FORD_PARAM_CANFD = 2; + ford_canfd = GET_FLAG(param, FORD_PARAM_CANFD); + + ford_longitudinal = false; + +#ifdef ALLOW_DEBUG + const uint16_t FORD_PARAM_LONGITUDINAL = 1; + ford_longitudinal = GET_FLAG(param, FORD_PARAM_LONGITUDINAL); +#endif + + // Longitudinal is the default for CAN, and optional for CAN FD w/ ALLOW_DEBUG + ford_longitudinal = !ford_canfd || ford_longitudinal; + + safety_config ret; + if (ford_canfd) { + ret = ford_longitudinal ? BUILD_SAFETY_CFG(ford_rx_checks, FORD_CANFD_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(ford_rx_checks, FORD_CANFD_STOCK_TX_MSGS); + } else { + ret = ford_longitudinal ? BUILD_SAFETY_CFG(ford_rx_checks, FORD_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(ford_rx_checks, FORD_STOCK_TX_MSGS); + } + return ret; +} + +const safety_hooks ford_hooks = { + .init = ford_init, + .rx = ford_rx_hook, + .tx = ford_tx_hook, + .fwd = ford_fwd_hook, + .get_counter = ford_get_counter, + .get_checksum = ford_get_checksum, + .compute_checksum = ford_compute_checksum, + .get_quality_flag_valid = ford_get_quality_flag_valid, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_gm.h b/opendbc_repo/opendbc/safety/safety/safety_gm.h new file mode 100644 index 0000000000..ebb7dfd854 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_gm.h @@ -0,0 +1,383 @@ +#pragma once + +#include "safety_declarations.h" + +// TODO: do checksum and counter checks. Add correct timestep, 0.1s for now. +#define GM_COMMON_RX_CHECKS \ + {.msg = {{0x184, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ + {.msg = {{0x34A, 0, 5, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ + {.msg = {{0x1E1, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ + {.msg = {{0x1C4, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ + {.msg = {{0xC9, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, \ + +#define GM_ACC_RX_CHECKS \ + {.msg = {{0xBE, 0, 6, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, /* Volt, Silverado, Acadia Denali */ \ + {0xBE, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, /* Bolt EUV */ \ + {0xBE, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}}}, /* Escalade */ \ + +static const LongitudinalLimits *gm_long_limits; + +enum { + GM_BTN_UNPRESS = 1, + GM_BTN_RESUME = 2, + GM_BTN_SET = 3, + GM_BTN_MAIN = 5, + GM_BTN_CANCEL = 6, +}; + +typedef enum { + GM_ASCM, + GM_CAM +} GmHardware; +static GmHardware gm_hw = GM_ASCM; +static bool gm_cam_long = false; +static bool gm_pcm_cruise = false; +static bool gm_has_acc = true; +static bool gm_pedal_long = false; +static bool gm_cc_long = false; +static bool gm_skip_relay_check = false; +static bool gm_force_ascm = false; + +static void gm_rx_hook(const CANPacket_t *to_push) { + + const int GM_STANDSTILL_THRSLD = 10; // 0.311kph + // panda interceptor threshold needs to be equivalent to openpilot threshold to avoid controls mismatches + // If thresholds are mismatched then it is possible for panda to see the gas fall and rise while openpilot is in the pre-enabled state + const int GM_GAS_INTERCEPTOR_THRESHOLD = 550; // (675 + 355) / 2 ratio between offset and gain from dbc file + #define GM_GET_INTERCEPTOR(msg) (((GET_BYTE((msg), 0) << 8) + GET_BYTE((msg), 1) + (GET_BYTE((msg), 2) << 8) + GET_BYTE((msg), 3)) / 2U) // avg between 2 tracks + + + + if (GET_BUS(to_push) == 0U) { + int addr = GET_ADDR(to_push); + + if (addr == 0x184) { + int torque_driver_new = ((GET_BYTE(to_push, 6) & 0x7U) << 8) | GET_BYTE(to_push, 7); + torque_driver_new = to_signed(torque_driver_new, 11); + // update array of samples + update_sample(&torque_driver, torque_driver_new); + } + + // sample rear wheel speeds + if (addr == 0x34A) { + int left_rear_speed = (GET_BYTE(to_push, 0) << 8) | GET_BYTE(to_push, 1); + int right_rear_speed = (GET_BYTE(to_push, 2) << 8) | GET_BYTE(to_push, 3); + vehicle_moving = (left_rear_speed > GM_STANDSTILL_THRSLD) || (right_rear_speed > GM_STANDSTILL_THRSLD); + } + + // ACC steering wheel buttons (GM_CAM is tied to the PCM) + if ((addr == 0x1E1) && (!gm_pcm_cruise || gm_cc_long)) { + int button = (GET_BYTE(to_push, 5) & 0x70U) >> 4; + + // enter controls on falling edge of set or rising edge of resume (avoids fault) + bool set = (button != GM_BTN_SET) && (cruise_button_prev == GM_BTN_SET); + bool res = (button == GM_BTN_RESUME) && (cruise_button_prev != GM_BTN_RESUME); + if (set || res) { + controls_allowed = true; + } + + // exit controls on cancel press + if (button == GM_BTN_CANCEL) { + controls_allowed = false; + } + + cruise_button_prev = button; + } + + // Reference for brake pressed signals: + // https://github.com/commaai/openpilot/blob/master/selfdrive/car/gm/carstate.py + if ((addr == 0xBE) && (gm_hw == GM_ASCM)) { + brake_pressed = GET_BYTE(to_push, 1) >= 10U; + } + if (addr == 0xC9) { + if (gm_hw == GM_CAM) { + brake_pressed = (GET_BYTE(to_push, 5) & 0x01U) != 0U; + } + acc_main_on = (GET_BYTE(to_push, 3) & 0x20U) != 0U; + } + + if (addr == 0x1C4) { + if (!enable_gas_interceptor) { + gas_pressed = GET_BYTE(to_push, 5) != 0U; + } + + // enter controls on rising edge of ACC, exit controls when ACC off + if (gm_pcm_cruise && gm_has_acc) { + bool cruise_engaged = (GET_BYTE(to_push, 1) >> 5) != 0U; + pcm_cruise_check(cruise_engaged); + } + } + + // Cruise check for CC only cars + if ((addr == 0x3D1) && !gm_has_acc) { + bool cruise_engaged = (GET_BYTE(to_push, 4) >> 7) != 0U; + if (gm_cc_long) { + pcm_cruise_check(cruise_engaged); + } else { + cruise_engaged_prev = cruise_engaged; + } + } + + if (addr == 0xBD) { + regen_braking = (GET_BYTE(to_push, 0) >> 4) != 0U; + } + + // Pedal Interceptor + if ((addr == 0x201) && enable_gas_interceptor) { + int gas_interceptor = GM_GET_INTERCEPTOR(to_push); + gas_pressed = gas_interceptor > GM_GAS_INTERCEPTOR_THRESHOLD; + gas_interceptor_prev = gas_interceptor; + // gm_pcm_cruise = false; + } + + bool stock_ecu_detected = (addr == 0x180); // ASCMLKASteeringCmd + + // Check ASCMGasRegenCmd only if we're blocking it + if (!gm_pcm_cruise && (addr == 0x2CB)) { + stock_ecu_detected = true; + } + generic_rx_checks(stock_ecu_detected); + } +} + +static bool gm_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits GM_STEERING_LIMITS = { + .max_steer = 300, + .max_rate_up = 20, + .max_rate_down = 25, + .driver_torque_allowance = 65, + .driver_torque_multiplier = 4, + .max_rt_delta = 128, + .max_rt_interval = 250000, + .type = TorqueDriverLimited, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + + // BRAKE: safety check + if (addr == 0x315) { + int brake = ((GET_BYTE(to_send, 0) & 0xFU) << 8) + GET_BYTE(to_send, 1); + brake = (0x1000 - brake) & 0xFFF; + if (longitudinal_brake_checks(brake, *gm_long_limits)) { + tx = false; + } + } + + // LKA STEER: safety check + if (addr == 0x180) { + int desired_torque = ((GET_BYTE(to_send, 0) & 0x7U) << 8) + GET_BYTE(to_send, 1); + desired_torque = to_signed(desired_torque, 11); + + bool steer_req = GET_BIT(to_send, 3U); + + if (steer_torque_cmd_checks(desired_torque, steer_req, GM_STEERING_LIMITS)) { + //tx = false; + } + } + + // GAS: safety check (interceptor) + if (addr == 0x200) { + if (longitudinal_interceptor_checks(to_send)) { + tx = 0; + } + } + + // GAS/REGEN: safety check + if (addr == 0x2CB) { + bool apply = GET_BIT(to_send, 0U); + if (apply && !controls_allowed) { + controls_allowed = true; + } + // convert float CAN signal to an int for gas checks: 22534 / 0.125 = 180272 + int gas_regen = (((GET_BYTE(to_send, 1) & 0x7U) << 16) | (GET_BYTE(to_send, 2) << 8) | GET_BYTE(to_send, 3)) - 180272U; + + bool violation = false; + // Allow apply bit in pre-enabled and overriding states + violation |= !controls_allowed && apply; + violation |= longitudinal_gas_checks(gas_regen, *gm_long_limits); + + if (violation) { + tx = false; + } + } + + // BUTTONS: used for resume spamming and cruise cancellation with stock longitudinal + if (addr == 0x1E1) { + int button = (GET_BYTE(to_send, 5) >> 4) & 0x7U; + bool allowed_btn = (button == GM_BTN_CANCEL) && cruise_engaged_prev; + + if (!gm_pcm_cruise) { + allowed_btn |= (button == GM_BTN_SET || button == GM_BTN_RESUME || button == GM_BTN_UNPRESS); + } + if (gm_cc_long) { + allowed_btn |= cruise_engaged_prev && (button == GM_BTN_SET || button == GM_BTN_RESUME || button == GM_BTN_UNPRESS); + } + + if (!allowed_btn) { + tx = false; + } + } + + return tx; +} + +static int gm_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + if (gm_hw == GM_CAM) { + if (bus_num == 0) { + // block PSCMStatus; forwarded through openpilot to hide an alert from the camera + bool is_pscm_msg = (addr == 0x184); + if (!is_pscm_msg) { + bus_fwd = 2; + } + } + + if (bus_num == 2) { + // block lkas message and acc messages if gm_cam_long, forward all others + bool is_lkas_msg = (addr == 0x180); + bool is_acc_msg = (addr == 0x315) || (addr == 0x2CB) || (addr == 0x370); + bool block_msg = is_lkas_msg || (is_acc_msg && gm_cam_long); + if (!block_msg) { + bus_fwd = 0; + } + } + } + + return bus_fwd; +} + +static safety_config gm_init(uint16_t param) { + const uint16_t GM_PARAM_HW_CAM = 1; + const uint16_t GM_PARAM_CC_LONG = 4; + const uint16_t GM_PARAM_NO_CAMERA = 8; + const uint16_t GM_PARAM_HW_ASCM_LONG = 16; + const uint16_t GM_PARAM_NO_ACC = 32; + const uint16_t GM_PARAM_PEDAL_LONG = 64; // TODO: this can be inferred + const uint16_t GM_PARAM_EV = 256; + + // common safety checks assume unscaled integer values + static const int GM_GAS_TO_CAN = 8; // 1 / 0.125 + + static const LongitudinalLimits GM_ASCM_LONG_LIMITS = { + .max_gas = 1018 * GM_GAS_TO_CAN, + .min_gas = -650 * GM_GAS_TO_CAN, + .inactive_gas = -650 * GM_GAS_TO_CAN, + .max_brake = 400, + }; + + static const CanMsg GM_ASCM_TX_MSGS[] = {{0x180, 0, 4}, {0x409, 0, 7}, {0x40A, 0, 7}, {0x2CB, 0, 8}, {0x370, 0, 6}, {0x200, 0, 6}, {0x1E1, 0, 7}, {0xBD, 0, 7},// pt bus + {0xA1, 1, 7}, {0x306, 1, 8}, {0x308, 1, 7}, {0x310, 1, 2}, // obs bus + {0x315, 2, 5}}; // ch bus + + + static const LongitudinalLimits GM_CAM_LONG_LIMITS = { + .max_gas = 1346 * GM_GAS_TO_CAN, + .min_gas = -540 * GM_GAS_TO_CAN, + .inactive_gas = -500 * GM_GAS_TO_CAN, + .max_brake = 400, + }; + + static const CanMsg GM_CAM_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x315, 0, 5}, {0x2CB, 0, 8}, {0x370, 0, 6}, {0x200, 0, 6}, {0x1E1, 0, 7}, // pt bus + {0x184, 2, 8}}; // camera bus + + // TODO: do checksum and counter checks. Add correct timestep, 0.1s for now. + static RxCheck gm_rx_checks[] = { + GM_COMMON_RX_CHECKS + GM_ACC_RX_CHECKS + }; + + static RxCheck gm_ev_rx_checks[] = { + GM_COMMON_RX_CHECKS + GM_ACC_RX_CHECKS + {.msg = {{0xBD, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, { 0 }, { 0 }}}, + }; + + static RxCheck gm_no_acc_rx_checks[] = { + GM_COMMON_RX_CHECKS + {.msg = {{0x3D1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // Non-ACC PCM + }; + + static RxCheck gm_no_acc_ev_rx_checks[] = { + GM_COMMON_RX_CHECKS + {.msg = {{0xBD, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, { 0 }, { 0 }}}, + {.msg = {{0x3D1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // Non-ACC PCM + }; + + static RxCheck gm_pedal_rx_checks[] = { + GM_COMMON_RX_CHECKS + {.msg = {{0xBD, 0, 7, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, { 0 }, { 0 }}}, + {.msg = {{0x3D1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // Non-ACC PCM + {.msg = {{0x201, 0, 6, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, // pedal + }; + + static const CanMsg GM_CAM_TX_MSGS[] = {{0x180, 0, 4}, {0x200, 0, 6}, {0x1E1, 0, 7}, // pt bus + {0x1E1, 2, 7}, {0x184, 2, 8}}; // camera bus + + + static const CanMsg GM_CC_LONG_TX_MSGS[] = {{0x180, 0, 4}, {0x1E1, 0, 7}, // pt bus + {0x184, 2, 8}, {0x1E1, 2, 7}}; // camera bus + gm_hw = GET_FLAG(param, GM_PARAM_HW_CAM) ? GM_CAM : GM_ASCM; + gm_force_ascm = GET_FLAG(param, GM_PARAM_HW_ASCM_LONG); + + if ((gm_hw == GM_ASCM) || gm_force_ascm) { + gm_long_limits = &GM_ASCM_LONG_LIMITS; + } else if (gm_hw == GM_CAM) { + gm_long_limits = &GM_CAM_LONG_LIMITS; + } else { + } + +#ifdef ALLOW_DEBUG + const uint16_t GM_PARAM_HW_CAM_LONG = 2; + gm_cam_long = GET_FLAG(param, GM_PARAM_HW_CAM_LONG) && !gm_cc_long; +#endif + gm_pedal_long = GET_FLAG(param, GM_PARAM_PEDAL_LONG); + gm_cc_long = GET_FLAG(param, GM_PARAM_CC_LONG); + gm_pcm_cruise = (gm_hw == GM_CAM) && (!gm_cam_long || gm_cc_long) && !gm_force_ascm && !gm_pedal_long; + gm_skip_relay_check = GET_FLAG(param, GM_PARAM_NO_CAMERA); + gm_has_acc = !GET_FLAG(param, GM_PARAM_NO_ACC); + + const uint16_t GM_PARAM_PEDAL_INTERCEPTOR = 128; + enable_gas_interceptor = GET_FLAG(param, GM_PARAM_PEDAL_INTERCEPTOR); + if (enable_gas_interceptor) { + print("GM Pedal Interceptor Enabled\n"); + } + else print("GM Pedal Interceptor Disabled\n"); + + safety_config ret; + if (gm_hw == GM_CAM) { + if (gm_cc_long) { + ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_CC_LONG_TX_MSGS); + print("GM CC Long\n"); + } else if (gm_cam_long) { + ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_CAM_LONG_TX_MSGS); + print("GM CAM Long\n"); + } else { + ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_CAM_TX_MSGS); + print("GM CAM\n"); + } + } else { + ret = BUILD_SAFETY_CFG(gm_rx_checks, GM_ASCM_TX_MSGS); + } + + const bool gm_ev = GET_FLAG(param, GM_PARAM_EV); + if (enable_gas_interceptor) { + SET_RX_CHECKS(gm_pedal_rx_checks, ret); + } else if (!gm_has_acc && gm_ev) { + SET_RX_CHECKS(gm_no_acc_ev_rx_checks, ret); + } else if (!gm_has_acc && !gm_ev) { + SET_RX_CHECKS(gm_no_acc_rx_checks, ret); + } else if (gm_ev) { + SET_RX_CHECKS(gm_ev_rx_checks, ret); + } else {} + + return ret; +} + +const safety_hooks gm_hooks = { + .init = gm_init, + .rx = gm_rx_hook, + .tx = gm_tx_hook, + .fwd = gm_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_honda.h b/opendbc_repo/opendbc/safety/safety/safety_honda.h new file mode 100644 index 0000000000..f1bb8b793a --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_honda.h @@ -0,0 +1,461 @@ +#pragma once + +#include "safety_declarations.h" + +// All common address checks except SCM_BUTTONS which isn't on one Nidec safety configuration +#define HONDA_COMMON_NO_SCM_FEEDBACK_RX_CHECKS(pt_bus) \ + {.msg = {{0x1A6, (pt_bus), 8, .max_counter = 3U, .frequency = 25U}, /* SCM_BUTTONS */ \ + {0x296, (pt_bus), 4, .max_counter = 3U, .frequency = 25U}, { 0 }}}, \ + {.msg = {{0x158, (pt_bus), 8, .max_counter = 3U, .frequency = 100U}, { 0 }, { 0 }}}, /* ENGINE_DATA */ \ + {.msg = {{0x17C, (pt_bus), 8, .max_counter = 3U, .frequency = 100U}, { 0 }, { 0 }}}, /* POWERTRAIN_DATA */ \ + +#define HONDA_COMMON_RX_CHECKS(pt_bus) \ + HONDA_COMMON_NO_SCM_FEEDBACK_RX_CHECKS(pt_bus) \ + {.msg = {{0x326, (pt_bus), 8, .max_counter = 3U, .frequency = 10U}, { 0 }, { 0 }}}, /* SCM_FEEDBACK */ \ + +// Alternate brake message is used on some Honda Bosch, and Honda Bosch radarless (where PT bus is 0) +#define HONDA_ALT_BRAKE_ADDR_CHECK(pt_bus) \ + {.msg = {{0x1BE, (pt_bus), 3, .max_counter = 3U, .frequency = 50U}, { 0 }, { 0 }}}, /* BRAKE_MODULE */ \ + + +// Nidec and bosch radarless has the powertrain bus on bus 0 +static RxCheck honda_common_rx_checks[] = { + HONDA_COMMON_RX_CHECKS(0) +}; + +enum { + HONDA_BTN_NONE = 0, + HONDA_BTN_MAIN = 1, + HONDA_BTN_CANCEL = 2, + HONDA_BTN_SET = 3, + HONDA_BTN_RESUME = 4, +}; + +static int honda_brake = 0; +static bool honda_brake_switch_prev = false; +static bool honda_alt_brake_msg = false; +static bool honda_fwd_brake = false; +static bool honda_bosch_long = false; +static bool honda_bosch_radarless = false; +typedef enum {HONDA_NIDEC, HONDA_BOSCH} HondaHw; +static HondaHw honda_hw = HONDA_NIDEC; + + +static int honda_get_pt_bus(void) { + return ((honda_hw == HONDA_BOSCH) && !honda_bosch_radarless) ? 1 : 0; +} + +static uint32_t honda_get_checksum(const CANPacket_t *to_push) { + int checksum_byte = GET_LEN(to_push) - 1U; + return (uint8_t)(GET_BYTE(to_push, checksum_byte)) & 0xFU; +} + +static uint32_t honda_compute_checksum(const CANPacket_t *to_push) { + int len = GET_LEN(to_push); + uint8_t checksum = 0U; + unsigned int addr = GET_ADDR(to_push); + while (addr > 0U) { + checksum += (uint8_t)(addr & 0xFU); addr >>= 4; + } + for (int j = 0; j < len; j++) { + uint8_t byte = GET_BYTE(to_push, j); + checksum += (uint8_t)(byte & 0xFU) + (byte >> 4U); + if (j == (len - 1)) { + checksum -= (byte & 0xFU); // remove checksum in message + } + } + return (uint8_t)((8U - checksum) & 0xFU); +} + +static uint8_t honda_get_counter(const CANPacket_t *to_push) { + int counter_byte = GET_LEN(to_push) - 1U; + return (GET_BYTE(to_push, counter_byte) >> 4U) & 0x3U; +} + +static void honda_rx_hook(const CANPacket_t *to_push) { + const bool pcm_cruise = ((honda_hw == HONDA_BOSCH) && !honda_bosch_long) || (honda_hw == HONDA_NIDEC); + int pt_bus = honda_get_pt_bus(); + + int addr = GET_ADDR(to_push); + int bus = GET_BUS(to_push); + + // sample speed + if (addr == 0x158) { + // first 2 bytes + vehicle_moving = GET_BYTE(to_push, 0) | GET_BYTE(to_push, 1); + } + + // check ACC main state + // 0x326 for all Bosch and some Nidec, 0x1A6 for some Nidec + if ((addr == 0x326) || (addr == 0x1A6)) { + acc_main_on = GET_BIT(to_push, ((addr == 0x326) ? 28U : 47U)); + if (!acc_main_on) { + controls_allowed = false; + } + } + + // enter controls when PCM enters cruise state + if (pcm_cruise && (addr == 0x17C)) { + const bool cruise_engaged = GET_BIT(to_push, 38U); + // engage on rising edge + if (cruise_engaged && !cruise_engaged_prev) { + controls_allowed = true; + } + + // Since some Nidec cars can brake down to 0 after the PCM disengages, + // we don't disengage when the PCM does. + if (!cruise_engaged && (honda_hw != HONDA_NIDEC)) { + controls_allowed = false; + } + cruise_engaged_prev = cruise_engaged; + } + + // state machine to enter and exit controls for button enabling + // 0x1A6 for the ILX, 0x296 for the Civic Touring + if (((addr == 0x1A6) || (addr == 0x296)) && (bus == pt_bus)) { + int button = (GET_BYTE(to_push, 0) & 0xE0U) >> 5; + + // enter controls on the falling edge of set or resume + bool set = (button != HONDA_BTN_SET) && (cruise_button_prev == HONDA_BTN_SET); + bool res = (button != HONDA_BTN_RESUME) && (cruise_button_prev == HONDA_BTN_RESUME); + if (acc_main_on && !pcm_cruise && (set || res)) { + controls_allowed = true; + } + + // exit controls once main or cancel are pressed + if ((button == HONDA_BTN_MAIN) || (button == HONDA_BTN_CANCEL)) { + controls_allowed = false; + } + cruise_button_prev = button; + } + + // user brake signal on 0x17C reports applied brake from computer brake on accord + // and crv, which prevents the usual brake safety from working correctly. these + // cars have a signal on 0x1BE which only detects user's brake being applied so + // in these cases, this is used instead. + // most hondas: 0x17C + // accord, crv: 0x1BE + if (honda_alt_brake_msg) { + if (addr == 0x1BE) { + brake_pressed = GET_BIT(to_push, 4U); + } + } else { + if (addr == 0x17C) { + // also if brake switch is 1 for two CAN frames, as brake pressed is delayed + const bool brake_switch = GET_BIT(to_push, 32U); + brake_pressed = (GET_BIT(to_push, 53U)) || (brake_switch && honda_brake_switch_prev); + honda_brake_switch_prev = brake_switch; + } + } + + if (addr == 0x17C) { + gas_pressed = GET_BYTE(to_push, 0) != 0U; + } + + // disable stock Honda AEB in alternative experience + if (!(alternative_experience & ALT_EXP_DISABLE_STOCK_AEB)) { + if ((bus == 2) && (addr == 0x1FA)) { + bool honda_stock_aeb = GET_BIT(to_push, 29U); + int honda_stock_brake = (GET_BYTE(to_push, 0) << 2) | (GET_BYTE(to_push, 1) >> 6); + + // Forward AEB when stock braking is higher than openpilot braking + // only stop forwarding when AEB event is over + if (!honda_stock_aeb) { + honda_fwd_brake = false; + } else if (honda_stock_brake >= honda_brake) { + honda_fwd_brake = true; + } else { + // Leave Honda forward brake as is + } + } + } + + int bus_rdr_car = (honda_hw == HONDA_BOSCH) ? 0 : 2; // radar bus, car side + bool stock_ecu_detected = false; + + // If steering controls messages are received on the destination bus, it's an indication + // that the relay might be malfunctioning + if ((addr == 0xE4) || (addr == 0x194)) { + if (((honda_hw != HONDA_NIDEC) && (bus == bus_rdr_car)) || ((honda_hw == HONDA_NIDEC) && (bus == 0))) { + stock_ecu_detected = true; + } + } + // If Honda Bosch longitudinal mode is selected we need to ensure the radar is turned off + // Verify this by ensuring ACC_CONTROL (0x1DF) is not received on the PT bus + if (honda_bosch_long && !honda_bosch_radarless && (bus == pt_bus) && (addr == 0x1DF)) { + stock_ecu_detected = true; + } + + generic_rx_checks(stock_ecu_detected); + +} + +static bool honda_tx_hook(const CANPacket_t *to_send) { + + const LongitudinalLimits HONDA_BOSCH_LONG_LIMITS = { + .max_accel = 200, // accel is used for brakes + .min_accel = -350, + + .max_gas = 2000, + .inactive_gas = -30000, + }; + + const LongitudinalLimits HONDA_NIDEC_LONG_LIMITS = { + .max_gas = 198, // 0xc6 + .max_brake = 255, + + .inactive_speed = 0, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + int bus = GET_BUS(to_send); + + int bus_pt = honda_get_pt_bus(); + int bus_buttons = (honda_bosch_radarless) ? 2 : bus_pt; // the camera controls ACC on radarless Bosch cars + + // ACC_HUD: safety check (nidec w/o pedal) + if ((addr == 0x30C) && (bus == bus_pt)) { + int pcm_speed = (GET_BYTE(to_send, 0) << 8) | GET_BYTE(to_send, 1); + int pcm_gas = GET_BYTE(to_send, 2); + + bool violation = false; + violation |= longitudinal_speed_checks(pcm_speed, HONDA_NIDEC_LONG_LIMITS); + violation |= longitudinal_gas_checks(pcm_gas, HONDA_NIDEC_LONG_LIMITS); + if (violation) { + tx = false; + } + } + + // BRAKE: safety check (nidec) + if ((addr == 0x1FA) && (bus == bus_pt)) { + honda_brake = (GET_BYTE(to_send, 0) << 2) + ((GET_BYTE(to_send, 1) >> 6) & 0x3U); + if (longitudinal_brake_checks(honda_brake, HONDA_NIDEC_LONG_LIMITS)) { + tx = false; + } + if (honda_fwd_brake) { + tx = false; + } + } + + // BRAKE/GAS: safety check (bosch) + if ((addr == 0x1DF) && (bus == bus_pt)) { + int accel = (GET_BYTE(to_send, 3) << 3) | ((GET_BYTE(to_send, 4) >> 5) & 0x7U); + accel = to_signed(accel, 11); + + int gas = (GET_BYTE(to_send, 0) << 8) | GET_BYTE(to_send, 1); + gas = to_signed(gas, 16); + + bool violation = false; + violation |= longitudinal_accel_checks(accel, HONDA_BOSCH_LONG_LIMITS); + violation |= longitudinal_gas_checks(gas, HONDA_BOSCH_LONG_LIMITS); + if (violation) { + tx = false; + } + } + + // ACCEL: safety check (radarless) + if ((addr == 0x1C8) && (bus == bus_pt)) { + int accel = (GET_BYTE(to_send, 0) << 4) | (GET_BYTE(to_send, 1) >> 4); + accel = to_signed(accel, 12); + + bool violation = false; + violation |= longitudinal_accel_checks(accel, HONDA_BOSCH_LONG_LIMITS); + if (violation) { + tx = false; + } + } + + // STEER: safety check + if ((addr == 0xE4) || (addr == 0x194)) { + if (!controls_allowed) { + bool steer_applied = GET_BYTE(to_send, 0) | GET_BYTE(to_send, 1); + if (steer_applied) { + //tx = false; + } + } + } + + // Bosch supplemental control check + if (addr == 0xE5) { + if ((GET_BYTES(to_send, 0, 4) != 0x10800004U) || ((GET_BYTES(to_send, 4, 4) & 0x00FFFFFFU) != 0x0U)) { + tx = false; + } + } + + // FORCE CANCEL: safety check only relevant when spamming the cancel button in Bosch HW + // ensuring that only the cancel button press is sent (VAL 2) when controls are off. + // This avoids unintended engagements while still allowing resume spam + if ((addr == 0x296) && !controls_allowed && (bus == bus_buttons)) { + if (((GET_BYTE(to_send, 0) >> 5) & 0x7U) != 2U) { + tx = false; + } + } + + // Only tester present ("\x02\x3E\x80\x00\x00\x00\x00\x00") allowed on diagnostics address + if (addr == 0x18DAB0F1) { + if ((GET_BYTES(to_send, 0, 4) != 0x00803E02U) || (GET_BYTES(to_send, 4, 4) != 0x0U)) { + tx = false; + } + } + + return tx; +} + +static safety_config honda_nidec_init(uint16_t param) { + static CanMsg HONDA_N_TX_MSGS[] = {{0xE4, 0, 5}, {0x194, 0, 4}, {0x1FA, 0, 8}, {0x30C, 0, 8}, {0x33D, 0, 5}}; + + const uint16_t HONDA_PARAM_NIDEC_ALT = 4; + + honda_hw = HONDA_NIDEC; + honda_brake = 0; + honda_brake_switch_prev = false; + honda_fwd_brake = false; + honda_alt_brake_msg = false; + honda_bosch_long = false; + honda_bosch_radarless = false; + + safety_config ret; + + bool enable_nidec_alt = GET_FLAG(param, HONDA_PARAM_NIDEC_ALT); + + if (enable_nidec_alt) { + // For Nidecs with main on signal on an alternate msg (missing 0x326) + static RxCheck honda_nidec_alt_rx_checks[] = { + HONDA_COMMON_NO_SCM_FEEDBACK_RX_CHECKS(0) + }; + + SET_RX_CHECKS(honda_nidec_alt_rx_checks, ret); + } else { + SET_RX_CHECKS(honda_common_rx_checks, ret); + } + + SET_TX_MSGS(HONDA_N_TX_MSGS, ret); + + return ret; +} + +static safety_config honda_bosch_init(uint16_t param) { + static CanMsg HONDA_BOSCH_TX_MSGS[] = {{0xE4, 0, 5}, {0xE5, 0, 8}, {0x296, 1, 4}, {0x33D, 0, 5}, {0x33DA, 0, 5}, {0x33DB, 0, 8}}; // Bosch + static CanMsg HONDA_BOSCH_LONG_TX_MSGS[] = {{0xE4, 1, 5}, {0x1DF, 1, 8}, {0x1EF, 1, 8}, {0x1FA, 1, 8}, {0x30C, 1, 8}, {0x33D, 1, 5}, {0x33DA, 1, 5}, {0x33DB, 1, 8}, {0x39F, 1, 8}, {0x18DAB0F1, 1, 8}}; // Bosch w/ gas and brakes + static CanMsg HONDA_RADARLESS_TX_MSGS[] = {{0xE4, 0, 5}, {0x296, 2, 4}, {0x33D, 0, 8}}; // Bosch radarless + static CanMsg HONDA_RADARLESS_LONG_TX_MSGS[] = {{0xE4, 0, 5}, {0x33D, 0, 8}, {0x1C8, 0, 8}, {0x30C, 0, 8}}; // Bosch radarless w/ gas and brakes + + const uint16_t HONDA_PARAM_ALT_BRAKE = 1; + const uint16_t HONDA_PARAM_RADARLESS = 8; + + static RxCheck honda_common_alt_brake_rx_checks[] = { + HONDA_COMMON_RX_CHECKS(0) + HONDA_ALT_BRAKE_ADDR_CHECK(0) + }; + + static RxCheck honda_bosch_alt_brake_rx_checks[] = { + HONDA_COMMON_RX_CHECKS(1) + HONDA_ALT_BRAKE_ADDR_CHECK(1) + }; + + // Bosch has pt on bus 1, verified 0x1A6 does not exist + static RxCheck honda_bosch_rx_checks[] = { + HONDA_COMMON_RX_CHECKS(1) + }; + + honda_hw = HONDA_BOSCH; + honda_brake_switch_prev = false; + honda_bosch_radarless = GET_FLAG(param, HONDA_PARAM_RADARLESS); + // Checking for alternate brake override from safety parameter + honda_alt_brake_msg = GET_FLAG(param, HONDA_PARAM_ALT_BRAKE); + + // radar disabled so allow gas/brakes +#ifdef ALLOW_DEBUG + const uint16_t HONDA_PARAM_BOSCH_LONG = 2; + honda_bosch_long = GET_FLAG(param, HONDA_PARAM_BOSCH_LONG); +#endif + + safety_config ret; + if (honda_bosch_radarless && honda_alt_brake_msg) { + SET_RX_CHECKS(honda_common_alt_brake_rx_checks, ret); + } else if (honda_bosch_radarless) { + SET_RX_CHECKS(honda_common_rx_checks, ret); + } else if (honda_alt_brake_msg) { + SET_RX_CHECKS(honda_bosch_alt_brake_rx_checks, ret); + } else { + SET_RX_CHECKS(honda_bosch_rx_checks, ret); + } + + if (honda_bosch_radarless) { + if (honda_bosch_long) { + SET_TX_MSGS(HONDA_RADARLESS_LONG_TX_MSGS, ret); + } else { + SET_TX_MSGS(HONDA_RADARLESS_TX_MSGS, ret); + } + } else { + if (honda_bosch_long) { + SET_TX_MSGS(HONDA_BOSCH_LONG_TX_MSGS, ret); + } else { + SET_TX_MSGS(HONDA_BOSCH_TX_MSGS, ret); + } + } + return ret; +} + +static int honda_nidec_fwd_hook(int bus_num, int addr) { + // fwd from car to camera. also fwd certain msgs from camera to car + // 0xE4 is steering on all cars except CRV and RDX, 0x194 for CRV and RDX, + // 0x1FA is brake control, 0x30C is acc hud, 0x33D is lkas hud + int bus_fwd = -1; + + if (bus_num == 0) { + bus_fwd = 2; + } + + if (bus_num == 2) { + // block stock lkas messages and stock acc messages (if OP is doing ACC) + bool is_lkas_msg = (addr == 0xE4) || (addr == 0x194) || (addr == 0x33D); + bool is_acc_hud_msg = addr == 0x30C; + bool is_brake_msg = addr == 0x1FA; + bool block_fwd = is_lkas_msg || is_acc_hud_msg || (is_brake_msg && !honda_fwd_brake); + if (!block_fwd) { + bus_fwd = 0; + } + } + + return bus_fwd; +} + +static int honda_bosch_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + if (bus_num == 0) { + bus_fwd = 2; + } + if (bus_num == 2) { + bool is_lkas_msg = (addr == 0xE4) || (addr == 0xE5) || (addr == 0x33D) || (addr == 0x33DA) || (addr == 0x33DB); + bool is_acc_msg = ((addr == 0x1C8) || (addr == 0x30C)) && honda_bosch_radarless && honda_bosch_long; + bool block_msg = is_lkas_msg || is_acc_msg; + if (!block_msg) { + bus_fwd = 0; + } + } + + return bus_fwd; +} + +const safety_hooks honda_nidec_hooks = { + .init = honda_nidec_init, + .rx = honda_rx_hook, + .tx = honda_tx_hook, + .fwd = honda_nidec_fwd_hook, + .get_counter = honda_get_counter, + .get_checksum = honda_get_checksum, + .compute_checksum = honda_compute_checksum, +}; + +const safety_hooks honda_bosch_hooks = { + .init = honda_bosch_init, + .rx = honda_rx_hook, + .tx = honda_tx_hook, + .fwd = honda_bosch_fwd_hook, + .get_counter = honda_get_counter, + .get_checksum = honda_get_checksum, + .compute_checksum = honda_compute_checksum, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_hyundai.h b/opendbc_repo/opendbc/safety/safety/safety_hyundai.h new file mode 100644 index 0000000000..cb16ed9f5d --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_hyundai.h @@ -0,0 +1,522 @@ +#pragma once + +#include "safety_declarations.h" +#include "safety_hyundai_common.h" + +#define HYUNDAI_LIMITS(steer, rate_up, rate_down) { \ + .max_steer = (steer), \ + .max_rate_up = (rate_up), \ + .max_rate_down = (rate_down), \ + .max_rt_delta = 112, \ + .max_rt_interval = 250000, \ + .driver_torque_allowance = 50, \ + .driver_torque_multiplier = 2, \ + .type = TorqueDriverLimited, \ + /* the EPS faults when the steering angle is above a certain threshold for too long. to prevent this, */ \ + /* we allow setting CF_Lkas_ActToi bit to 0 while maintaining the requested torque value for two consecutive frames */ \ + .min_valid_request_frames = 89, \ + .max_invalid_request_frames = 2, \ + .min_valid_request_rt_interval = 810000, /* 810ms; a ~10% buffer on cutting every 90 frames */ \ + .has_steer_req_tolerance = true, \ +} + +extern const LongitudinalLimits HYUNDAI_LONG_LIMITS; +const LongitudinalLimits HYUNDAI_LONG_LIMITS = { + .max_accel = 250, // 1/100 m/s2 + .min_accel = -400, // 1/100 m/s2 +}; + +static const CanMsg HYUNDAI_TX_MSGS[] = { + {0x340, 0, 8}, // LKAS11 Bus 0 + {0x4F1, 0, 4}, // CLU11 Bus 0 + {0x485, 0, 8}, // LFAHDA_MFC Bus 0 + {593, 2, 8}, // MDPS12, Bus 2 + {1056, 0, 8}, // SCC11, Bus 0 + {1057, 0, 8}, // SCC12, Bus 0 + {1290, 0, 8}, // SCC13, Bus 0 + {905, 0, 8}, // SCC14, Bus 0 + {909, 0, 8}, // FCA11 Bus 0 + {1155, 0, 8}, // FCA12 Bus 0 + {1186, 0, 8}, // FRT_RADAR11, Bus 0 + {1265, 2, 4}, // CLU11, Bus 0, 2 + {0x7D0, 0, 8}, // radar UDS TX addr Bus 0 (for radar disable) // 2000 + {0x7b1, 0, 8}, +}; + +#define HYUNDAI_COMMON_RX_CHECKS(legacy) \ + {.msg = {{0x260, 0, 8, .max_counter = 3U, .frequency = 100U}, \ + {0x371, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, \ + {0x91, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}}}, \ + {.msg = {{0x386, 0, 8, .ignore_checksum = (legacy), .ignore_counter = (legacy), .max_counter = (legacy) ? 0U : 15U, .frequency = 100U}, { 0 }, { 0 }}}, \ + {.msg = {{0x394, 0, 8, .ignore_checksum = (legacy), .ignore_counter = (legacy), .max_counter = (legacy) ? 0U : 7U, .frequency = 100U}, { 0 }, { 0 }}}, \ + +#define HYUNDAI_SCC12_ADDR_CHECK(scc_bus) \ + {.msg = {{0x421, (scc_bus), 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ + +static bool hyundai_legacy = false; +static bool hyundai_cruise_buttons_alt = false; + +static uint8_t hyundai_get_counter(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + uint8_t cnt = 0; + if (addr == 0x260) { + cnt = (GET_BYTE(to_push, 7) >> 4) & 0x3U; + } else if (addr == 0x386) { + cnt = ((GET_BYTE(to_push, 3) >> 6) << 2) | (GET_BYTE(to_push, 1) >> 6); + } else if (addr == 0x394) { + cnt = (GET_BYTE(to_push, 1) >> 5) & 0x7U; + } else if (addr == 0x421) { + cnt = GET_BYTE(to_push, 7) & 0xFU; + } else if (addr == 0x4F1) { + cnt = (GET_BYTE(to_push, 3) >> 4) & 0xFU; + } else { + } + return cnt; +} + +static uint32_t hyundai_get_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + uint8_t chksum = 0; + if (addr == 0x260) { + chksum = GET_BYTE(to_push, 7) & 0xFU; + } else if (addr == 0x386) { + chksum = ((GET_BYTE(to_push, 7) >> 6) << 2) | (GET_BYTE(to_push, 5) >> 6); + } else if (addr == 0x394) { + chksum = GET_BYTE(to_push, 6) & 0xFU; + } else if (addr == 0x421) { + chksum = GET_BYTE(to_push, 7) >> 4; + } else { + } + return chksum; +} + +static uint32_t hyundai_compute_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + uint8_t chksum = 0; + if (addr == 0x386) { + // count the bits + for (int i = 0; i < 8; i++) { + uint8_t b = GET_BYTE(to_push, i); + for (int j = 0; j < 8; j++) { + uint8_t bit = 0; + // exclude checksum and counter + if (((i != 1) || (j < 6)) && ((i != 3) || (j < 6)) && ((i != 5) || (j < 6)) && ((i != 7) || (j < 6))) { + bit = (b >> (uint8_t)j) & 1U; + } + chksum += bit; + } + } + chksum = (chksum ^ 9U) & 15U; + } else { + // sum of nibbles + for (int i = 0; i < 8; i++) { + if ((addr == 0x394) && (i == 7)) { + continue; // exclude + } + uint8_t b = GET_BYTE(to_push, i); + if (((addr == 0x260) && (i == 7)) || ((addr == 0x394) && (i == 6)) || ((addr == 0x421) && (i == 7))) { + b &= (addr == 0x421) ? 0x0FU : 0xF0U; // remove checksum + } + chksum += (b % 16U) + (b / 16U); + } + chksum = (16U - (chksum % 16U)) % 16U; + } + + return chksum; +} + +static void hyundai_rx_hook(const CANPacket_t *to_push) { + int bus = GET_BUS(to_push); + int addr = GET_ADDR(to_push); + + // SCC12 is on bus 2 for camera-based SCC cars, bus 0 on all others + if (addr == 0x421) { + if (((bus == 0) && !hyundai_camera_scc) || ((bus == 2) && hyundai_camera_scc)) { + // 2 bits: 13-14 + int cruise_engaged = (GET_BYTES(to_push, 0, 4) >> 13) & 0x3U; + hyundai_common_cruise_state_check(cruise_engaged); + } + } + + if (bus == 0) { + if (addr == 0x251) { + int torque_driver_new = (GET_BYTES(to_push, 0, 2) & 0x7ffU) - 1024U; + // update array of samples + update_sample(&torque_driver, torque_driver_new); + } + + // ACC steering wheel buttons + if (addr == 1007) hyundai_cruise_buttons_alt = true; // CASPER_EV: 1007 + if (addr == 1007) { + int cruise_button = (GET_BYTE(to_push, 7) >> 4) & 0x07U; + bool main_button = GET_BIT(to_push, 58U); + hyundai_common_cruise_buttons_check(cruise_button, main_button); + } + else if (addr == 0x4F1 && !hyundai_cruise_buttons_alt) { + int cruise_button = GET_BYTE(to_push, 0) & 0x7U; + bool main_button = GET_BIT(to_push, 3U); + hyundai_common_cruise_buttons_check(cruise_button, main_button); + } + + // gas press, different for EV, hybrid, and ICE models + if ((addr == 0x371) && hyundai_ev_gas_signal) { + gas_pressed = (((GET_BYTE(to_push, 4) & 0x7FU) << 1) | GET_BYTE(to_push, 3) >> 7) != 0U; + } else if ((addr == 0x371) && hyundai_hybrid_gas_signal) { + gas_pressed = GET_BYTE(to_push, 7) != 0U; + } else if ((addr == 0x91) && hyundai_fcev_gas_signal) { + gas_pressed = GET_BYTE(to_push, 6) != 0U; + } else if ((addr == 0x260) && !hyundai_ev_gas_signal && !hyundai_hybrid_gas_signal) { + gas_pressed = (GET_BYTE(to_push, 7) >> 6) != 0U; + } else { + } + + // sample wheel speed, averaging opposite corners + if (addr == 0x386) { + uint32_t front_left_speed = GET_BYTES(to_push, 0, 2) & 0x3FFFU; + uint32_t rear_right_speed = GET_BYTES(to_push, 6, 2) & 0x3FFFU; + vehicle_moving = (front_left_speed > HYUNDAI_STANDSTILL_THRSLD) || (rear_right_speed > HYUNDAI_STANDSTILL_THRSLD); + } + + if (addr == 0x394) { + brake_pressed = ((GET_BYTE(to_push, 5) >> 5U) & 0x3U) == 0x2U; + } + + bool stock_ecu_detected = (addr == 0x340); + + // If openpilot is controlling longitudinal we need to ensure the radar is turned off + // Enforce by checking we don't see SCC12 + if (hyundai_longitudinal && (addr == 0x421)) { + stock_ecu_detected = true; + } + generic_rx_checks(stock_ecu_detected); + } +} + +uint32_t last_ts_lkas11_from_op = 0; +uint32_t last_ts_scc12_from_op = 0; +uint32_t last_ts_scc13_from_op = 0; +uint32_t last_ts_mdps12_from_op = 0; +uint32_t last_ts_fca11_from_op = 0; +uint32_t last_ts_fca12_from_op = 0; + +static bool hyundai_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits HYUNDAI_STEERING_LIMITS = HYUNDAI_LIMITS(512, 10, 10); + const TorqueSteeringLimits HYUNDAI_STEERING_LIMITS_ALT = HYUNDAI_LIMITS(512, 10, 10); + const TorqueSteeringLimits HYUNDAI_STEERING_LIMITS_ALT_2 = HYUNDAI_LIMITS(170, 2, 3); + + bool tx = true; + int addr = GET_ADDR(to_send); + + // FCA11: Block any potential actuation + if (false && addr == 0x38D) { + int CR_VSM_DecCmd = GET_BYTE(to_send, 1); + bool FCA_CmdAct = GET_BIT(to_send, 20U); + bool CF_VSM_DecCmdAct = GET_BIT(to_send, 31U); + + if ((CR_VSM_DecCmd != 0) || FCA_CmdAct || CF_VSM_DecCmdAct) { + tx = false; + } + } + + // ACCEL: safety check + if (addr == 0x421) { + int cruise_engaged = (GET_BYTES(to_send, 0, 4) >> 13) & 0x3U; + if (cruise_engaged) { + if(!controls_allowed) print("auto engage controls_allowed....\n"); + controls_allowed = true; + } + int desired_accel_raw = (((GET_BYTE(to_send, 4) & 0x7U) << 8) | GET_BYTE(to_send, 3)) - 1023U; + int desired_accel_val = ((GET_BYTE(to_send, 5) << 3) | (GET_BYTE(to_send, 4) >> 5)) - 1023U; + + //int aeb_decel_cmd = GET_BYTE(to_send, 2); + //bool aeb_req = GET_BIT(to_send, 54U); + + bool violation = false; + + violation |= longitudinal_accel_checks(desired_accel_raw, HYUNDAI_LONG_LIMITS); + violation |= longitudinal_accel_checks(desired_accel_val, HYUNDAI_LONG_LIMITS); + //violation |= (aeb_decel_cmd != 0); + //violation |= aeb_req; + + if (violation) { + tx = false; + } + } + + // LKA STEER: safety check + if (addr == 0x340) { + int desired_torque = ((GET_BYTES(to_send, 0, 4) >> 16) & 0x7ffU) - 1024U; + bool steer_req = GET_BIT(to_send, 27U); + + const TorqueSteeringLimits limits = hyundai_alt_limits_2 ? HYUNDAI_STEERING_LIMITS_ALT_2 : + hyundai_alt_limits ? HYUNDAI_STEERING_LIMITS_ALT : HYUNDAI_STEERING_LIMITS; + + if (steer_torque_cmd_checks(desired_torque, steer_req, limits)) { + //tx = false; + } + } + + // UDS: Only tester present ("\x02\x3E\x80\x00\x00\x00\x00\x00") allowed on diagnostics address + if (addr == 0x7D0) { + if ((GET_BYTES(to_send, 0, 4) != 0x00803E02U) || (GET_BYTES(to_send, 4, 4) != 0x0U)) { + tx = false; + } + } + + // BUTTONS: used for resume spamming and cruise cancellation + if ((addr == 0x4F1) && !hyundai_longitudinal) { + int button = GET_BYTE(to_send, 0) & 0x7U; + + bool allowed_resume = (button == 1);// && controls_allowed; + bool allowed_set_decel = (button == 2) && controls_allowed; + bool allowed_cancel = (button == 4) && cruise_engaged_prev; + bool allowed_gap_dist = (button == 3) && controls_allowed; + if (!(allowed_resume || allowed_set_decel || allowed_cancel || allowed_gap_dist)) { + tx = false; + } + } + uint32_t now = microsecond_timer_get(); + if(addr == 832) + last_ts_lkas11_from_op = (tx == 0 ? 0 : now); + else if(addr == 1057) + last_ts_scc12_from_op = (tx == 0 ? 0 : now); + else if(addr == 593) + last_ts_mdps12_from_op = (tx == 0 ? 0 : now); + else if (addr == 909) + last_ts_fca11_from_op = (tx == 0 ? 0 : now); + else if (addr == 1155) + last_ts_fca12_from_op = (tx == 0 ? 0 : now); + else if(addr == 1290) + last_ts_scc13_from_op = (tx == 0 ? 0 : now); + + return tx; +} + +static int hyundai_fwd_hook(int bus_num, int addr) { + + int bus_fwd = -1; + + uint32_t now = microsecond_timer_get(); + + // forward cam to ccan and viceversa, except lkas cmd + if (bus_num == 0) { + bus_fwd = 2; + + if(addr == 593) { + if(now - last_ts_mdps12_from_op < 200000) { + bus_fwd = -1; + } + } + } + + if (bus_num == 2) { + bool is_lkas_msg = addr == 832; + bool is_lfahda_msg = addr == 1157; + bool is_scc_msg = addr == 1056 || addr == 1057 || addr == 905; + bool is_scc13_msg = addr == 1290; + bool is_fca11_msg = addr == 909; + bool is_fca12_msg = addr == 1155; + + bool block_msg = is_lkas_msg || is_lfahda_msg || is_scc_msg || is_scc13_msg || is_fca11_msg || is_fca12_msg; + if (!block_msg) { + bus_fwd = 0; + } + else { + if(is_lkas_msg || is_lfahda_msg) { + if(now - last_ts_lkas11_from_op >= 200000) { + bus_fwd = 0; + } + } + else if (is_scc_msg) { + if (now - last_ts_scc12_from_op >= 400000) + bus_fwd = 0; + } + else if (is_scc13_msg) { + if (now - last_ts_scc13_from_op >= 800000) + bus_fwd = 0; + } + else if (is_fca11_msg) { + if (now - last_ts_fca11_from_op >= 400000) + bus_fwd = 0; + } + else if (is_fca12_msg) { + if (now - last_ts_fca12_from_op >= 400000) + bus_fwd = 0; + } + } + } + + return bus_fwd; +} + +/* case + - legacy(on/off) + camera_scc(allways longitudinal on) + longitudinal(scc off) +*/ +static safety_config hyundai_init_carrot(bool legacy_car) { + static const CanMsg HYUNDAI_LONG_TX_MSGS[] = { + {0x340, 0, 8}, // LKAS11 Bus 0 + {0x4F1, 0, 4}, // CLU11 Bus 0 + {0x485, 0, 8}, // LFAHDA_MFC Bus 0 + {0x420, 0, 8}, // SCC11 Bus 0 + {0x421, 0, 8}, // SCC12 Bus 0 + {0x50A, 0, 8}, // SCC13 Bus 0 + {0x389, 0, 8}, // SCC14 Bus 0 + {0x4A2, 0, 2}, // FRT_RADAR11 Bus 0 + {0x38D, 0, 8}, // FCA11 Bus 0 + {0x483, 0, 8}, // FCA12 Bus 0 + {0x7D0, 0, 8}, // radar UDS TX addr Bus 0 (for radar disable) + }; + + static const CanMsg HYUNDAI_CAMERA_SCC_TX_MSGS[] = { + {0x340, 0, 8}, // LKAS11 Bus 0 + {0x4F1, 2, 4}, // CLU11 Bus 2 + {0x485, 0, 8}, // LFAHDA_MFC Bus 0 + {593, 2, 8}, // MDPS12, Bus 2 + {1056, 0, 8}, // SCC11, Bus 0 + {1057, 0, 8}, // SCC12, Bus 0 + {1290, 0, 8}, // SCC13, Bus 0 + {905, 0, 8}, // SCC14, Bus 0 + {909, 0, 8}, // FCA11 Bus 0 + {1155, 0, 8}, // FCA12 Bus 0 + {1186, 0, 8}, // FRT_RADAR11, Bus 0 + {0x4F1, 0, 4}, // CLU11 Bus 0 + }; + + safety_config ret; + if (hyundai_camera_scc) { + static RxCheck hyundai_cam_scc_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(false) + HYUNDAI_SCC12_ADDR_CHECK(2) + }; + static RxCheck hyundai_cam_scc_rx_checks_legacy[] = { + HYUNDAI_COMMON_RX_CHECKS(true) + HYUNDAI_SCC12_ADDR_CHECK(2) + }; + if(legacy_car) ret = BUILD_SAFETY_CFG(hyundai_cam_scc_rx_checks_legacy, HYUNDAI_CAMERA_SCC_TX_MSGS); + else ret = BUILD_SAFETY_CFG(hyundai_cam_scc_rx_checks, HYUNDAI_CAMERA_SCC_TX_MSGS); + } + else if (hyundai_longitudinal) { + static RxCheck hyundai_long_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(false) + // Use CLU11 (buttons) to manage controls allowed instead of SCC cruise state + {.msg = {{0x4F1, 0, 4, .ignore_checksum = true, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }} +}, + }; + static RxCheck hyundai_long_rx_checks_legacy[] = { + HYUNDAI_COMMON_RX_CHECKS(true) + // Use CLU11 (buttons) to manage controls allowed instead of SCC cruise state + {.msg = {{0x4F1, 0, 4, .ignore_checksum = true, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }} +}, + }; + + if(legacy_car) ret = BUILD_SAFETY_CFG(hyundai_long_rx_checks_legacy, HYUNDAI_LONG_TX_MSGS); + else ret = BUILD_SAFETY_CFG(hyundai_long_rx_checks, HYUNDAI_LONG_TX_MSGS); + } + else { + static RxCheck hyundai_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(false) + HYUNDAI_SCC12_ADDR_CHECK(0) + }; + static RxCheck hyundai_rx_checks_legacy[] = { + HYUNDAI_COMMON_RX_CHECKS(true) + //HYUNDAI_SCC12_ADDR_CHECK(0) + }; + + if(legacy_car) ret = BUILD_SAFETY_CFG(hyundai_rx_checks_legacy, HYUNDAI_TX_MSGS); + else ret = BUILD_SAFETY_CFG(hyundai_rx_checks, HYUNDAI_TX_MSGS); + } + return ret; +} + + +static safety_config hyundai_init(uint16_t param) { + static const CanMsg HYUNDAI_LONG_TX_MSGS[] = { + {0x340, 0, 8}, // LKAS11 Bus 0 + {0x4F1, 0, 4}, // CLU11 Bus 0 + {0x485, 0, 8}, // LFAHDA_MFC Bus 0 + {0x420, 0, 8}, // SCC11 Bus 0 + {0x421, 0, 8}, // SCC12 Bus 0 + {0x50A, 0, 8}, // SCC13 Bus 0 + {0x389, 0, 8}, // SCC14 Bus 0 + {0x4A2, 0, 2}, // FRT_RADAR11 Bus 0 + {0x38D, 0, 8}, // FCA11 Bus 0 + {0x483, 0, 8}, // FCA12 Bus 0 + {0x7D0, 0, 8}, // radar UDS TX addr Bus 0 (for radar disable) + }; + + static const CanMsg HYUNDAI_CAMERA_SCC_TX_MSGS[] = { + {0x340, 0, 8}, // LKAS11 Bus 0 + {0x4F1, 2, 4}, // CLU11 Bus 2 + {0x485, 0, 8}, // LFAHDA_MFC Bus 0 + }; + + hyundai_common_init(param); + hyundai_legacy = false; + return hyundai_init_carrot(hyundai_legacy); + + safety_config ret; + if (hyundai_longitudinal) { + static RxCheck hyundai_long_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(false) + // Use CLU11 (buttons) to manage controls allowed instead of SCC cruise state + {.msg = {{0x4F1, 0, 4, .ignore_checksum = true, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + }; + + ret = BUILD_SAFETY_CFG(hyundai_long_rx_checks, HYUNDAI_LONG_TX_MSGS); + } else if (hyundai_camera_scc) { + static RxCheck hyundai_cam_scc_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(false) + HYUNDAI_SCC12_ADDR_CHECK(2) + }; + + ret = BUILD_SAFETY_CFG(hyundai_cam_scc_rx_checks, HYUNDAI_CAMERA_SCC_TX_MSGS); + } else { + static RxCheck hyundai_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(false) + HYUNDAI_SCC12_ADDR_CHECK(0) + }; + + ret = BUILD_SAFETY_CFG(hyundai_rx_checks, HYUNDAI_TX_MSGS); + } + return ret; +} + +static safety_config hyundai_legacy_init(uint16_t param) { + // older hyundai models have less checks due to missing counters and checksums + static RxCheck hyundai_legacy_rx_checks[] = { + HYUNDAI_COMMON_RX_CHECKS(true) + //HYUNDAI_SCC12_ADDR_CHECK(0) + }; + + hyundai_common_init(param); + hyundai_legacy = true; + + return hyundai_init_carrot(hyundai_legacy); + + hyundai_longitudinal = false; + hyundai_camera_scc = false; + return BUILD_SAFETY_CFG(hyundai_legacy_rx_checks, HYUNDAI_TX_MSGS); +} + +const safety_hooks hyundai_hooks = { + .init = hyundai_init, + .rx = hyundai_rx_hook, + .tx = hyundai_tx_hook, + .fwd = hyundai_fwd_hook, + .get_counter = hyundai_get_counter, + .get_checksum = hyundai_get_checksum, + .compute_checksum = hyundai_compute_checksum, +}; + +const safety_hooks hyundai_legacy_hooks = { + .init = hyundai_legacy_init, + .rx = hyundai_rx_hook, + .tx = hyundai_tx_hook, + .fwd = hyundai_fwd_hook, + .get_counter = hyundai_get_counter, + .get_checksum = hyundai_get_checksum, + .compute_checksum = hyundai_compute_checksum, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h b/opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h new file mode 100644 index 0000000000..bc56c2b596 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_hyundai_canfd.h @@ -0,0 +1,627 @@ +#pragma once + +#include "safety_declarations.h" +#include "safety_hyundai_common.h" + +const TorqueSteeringLimits HYUNDAI_CANFD_STEERING_LIMITS = { + .max_steer = 512, //270, + .max_rt_delta = 112, + .max_rt_interval = 250000, + .max_rate_up = 2, + .max_rate_down = 3, + .driver_torque_allowance = 250, + .driver_torque_multiplier = 2, + .type = TorqueDriverLimited, + + // the EPS faults when the steering angle is above a certain threshold for too long. to prevent this, + // we allow setting torque actuation bit to 0 while maintaining the requested torque value for two consecutive frames + .min_valid_request_frames = 89, + .max_invalid_request_frames = 2, + .min_valid_request_rt_interval = 810000, // 810ms; a ~10% buffer on cutting every 90 frames + .has_steer_req_tolerance = true, +}; + +const CanMsg HYUNDAI_CANFD_HDA2_TX_MSGS[] = { + {0x50, 0, 16}, // LKAS + {0x1CF, 1, 8}, // CRUISE_BUTTON + {0x2A4, 0, 24}, // CAM_0x2A4 +}; + +const CanMsg HYUNDAI_CANFD_HDA2_ALT_STEERING_TX_MSGS[] = { + {0x110, 0, 32}, // LKAS_ALT + {0x1CF, 1, 8}, // CRUISE_BUTTON + {0x362, 0, 32}, // CAM_0x362 + {0x1AA, 1, 16}, // CRUISE_ALT_BUTTONS , carrot +}; + +const CanMsg HYUNDAI_CANFD_HDA2_LONG_TX_MSGS[] = { + {0x50, 0, 16}, // LKAS + {0x1CF, 0, 8}, // CRUISE_BUTTON + {0x1CF, 1, 8}, // CRUISE_BUTTON + {0x1CF, 2, 8}, // CRUISE_BUTTON + {0x1AA, 0, 16}, // CRUISE_ALT_BUTTONS , carrot + {0x1AA, 1, 16}, // CRUISE_ALT_BUTTONS , carrot + {0x1AA, 2, 16}, // CRUISE_ALT_BUTTONS , carrot + {0x2A4, 0, 24}, // CAM_0x2A4 + {0x51, 0, 32}, // ADRV_0x51 + {0x730, 1, 8}, // tester present for ADAS ECU disable + {0x12A, 1, 16}, // LFA + {0x160, 1, 16}, // ADRV_0x160 + {0x1E0, 1, 16}, // LFAHDA_CLUSTER + {0x1A0, 1, 32}, // CRUISE_INFO + {0x1EA, 1, 32}, // ADRV_0x1ea + {0x200, 1, 8}, // ADRV_0x200 + {0x345, 1, 8}, // ADRV_0x345 + {0x1DA, 1, 32}, // ADRV_0x1da + + {0x12A, 0, 16}, // LFA + {0x1E0, 0, 16}, // LFAHDA_CLUSTER + {0x160, 0, 16}, // ADRV_0x160 + {0x1EA, 0, 32}, // ADRV_0x1ea + {0x200, 0, 8}, // ADRV_0x200 + {0x1A0, 0, 32}, // CRUISE_INFO + {0x345, 0, 8}, // ADRV_0x345 + {0x1DA, 0, 32}, // ADRV_0x1da + + {0x362, 0, 32}, // CAM_0x362 + {0x362, 1, 32}, // CAM_0x362 + {0x2a4, 1, 24}, // CAM_0x2a4 + + {0x110, 0, 32}, // LKAS_ALT (272) + {0x110, 1, 32}, // LKAS_ALT (272) + + {0x50, 1, 16}, // + {0x51, 1, 32}, // + + {353, 0, 32}, // ADRV_353 + {354, 0, 32}, // CORNER_RADAR_HIGHWAY + {512, 0, 8}, // ADRV_0x200 + {1187, 2, 8}, // 4A3 + {1204, 2, 8}, // 4B4 + + {203, 0, 24}, // CB + {373, 2, 24}, // TCS(0x175) + {506, 2, 32}, // CLUSTER_SPEED_LIMIT + {234, 2, 24}, // MDPS + {687, 2, 8}, // STEER_TOUCH_2AF + + {0x4BE, 2, 8}, // NEW_MSG_4BE (may be corner radar enabler x) + {0x4B9, 2, 8}, // NEW_MSG_4B9 (may be corner radar enabler) +}; + +const CanMsg HYUNDAI_CANFD_HDA1_TX_MSGS[] = { + {0x12A, 0, 16}, // LFA + {0x1A0, 0, 32}, // CRUISE_INFO + {0x1CF, 2, 8}, // CRUISE_BUTTON + {0x1E0, 0, 16}, // LFAHDA_CLUSTER + {0x160, 0, 16}, // ADRV_0x160 + {0x7D0, 0, 8}, // tester present for radar ECU disable + {0x1AA, 2, 16}, // CRUISE_ALT_BUTTONS , carrot + {203, 0, 24}, // CB + {373, 2, 24}, // TCS(0x175) + + {353, 0, 32}, // ADRV_353 + {354, 0, 32}, // CORNER_RADAR_HIGHWAY + {512, 0, 8}, // ADRV_0x200 + {1187, 2, 8}, // 4A3 + {1204, 2, 8}, // 4B4 + {373, 2, 24}, // TCS(0x175) + {234, 2, 24}, // MDPS + {687, 2, 8}, // STEER_TOUCH_2AF + +}; + + +// *** Addresses checked in rx hook *** +// EV, ICE, HYBRID: ACCELERATOR (0x35), ACCELERATOR_BRAKE_ALT (0x100), ACCELERATOR_ALT (0x105) +#define HYUNDAI_CANFD_COMMON_RX_CHECKS(pt_bus) \ + {.msg = {{0x35, (pt_bus), 32, .max_counter = 0xffU, .frequency = 100U}, \ + {0x100, (pt_bus), 32, .max_counter = 0xffU, .frequency = 100U}, \ + {0x105, (pt_bus), 32, .max_counter = 0xffU, .frequency = 100U}}}, \ + {.msg = {{0x175, (pt_bus), 24, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ + {.msg = {{0xa0, (pt_bus), 24, .max_counter = 0xffU, .frequency = 100U}, { 0 }, { 0 }}}, \ + {.msg = {{0xea, (pt_bus), 24, .max_counter = 0xffU, .frequency = 100U}, { 0 }, { 0 }}}, \ + +#define HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(pt_bus) \ + {.msg = {{0x1cf, (pt_bus), 8, .ignore_checksum = true, .max_counter = 0xfU, .frequency = 50U}, { 0 }, { 0 }}}, \ + +#define HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(pt_bus) \ + {.msg = {{0x1aa, (pt_bus), 16, .ignore_checksum = true, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ + +// SCC_CONTROL (from ADAS unit or camera) +#define HYUNDAI_CANFD_SCC_ADDR_CHECK(scc_bus) \ + {.msg = {{0x1a0, (scc_bus), 32, .max_counter = 0xffU, .frequency = 50U}, { 0 }, { 0 }}}, \ + +//static bool hyundai_canfd_alt_buttons = false; +//static bool hyundai_canfd_hda2_alt_steering = false; + +// *** Non-HDA2 checks *** +// Camera sends SCC messages on HDA1. +// Both button messages exist on some platforms, so we ensure we track the correct one using flag +RxCheck hyundai_canfd_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(2) +}; +RxCheck hyundai_canfd_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(2) +}; + +// Longitudinal checks for HDA1 +RxCheck hyundai_canfd_long_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) +}; +RxCheck hyundai_canfd_long_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) +}; + +// Radar sends SCC messages on these cars instead of camera +RxCheck hyundai_canfd_radar_scc_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(0) +}; +RxCheck hyundai_canfd_radar_scc_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(0) +}; + + +// *** HDA2 checks *** +// E-CAN is on bus 1, ADAS unit sends SCC messages on HDA2. +// Does not use the alt buttons message +RxCheck hyundai_canfd_hda2_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(1) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(1) // TODO: carrot: canival no 0x1cf + HYUNDAI_CANFD_SCC_ADDR_CHECK(1) +}; +RxCheck hyundai_canfd_hda2_rx_checks_scc2[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) // TODO: carrot: canival no 0x1cf + HYUNDAI_CANFD_SCC_ADDR_CHECK(2) +}; +RxCheck hyundai_canfd_hda2_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(1) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(1) + HYUNDAI_CANFD_SCC_ADDR_CHECK(1) +}; +RxCheck hyundai_canfd_hda2_alt_buttons_rx_checks_scc2[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(2) +}; +RxCheck hyundai_canfd_hda2_long_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(1) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(1) // TODO: carrot: canival no 0x1cf +}; +RxCheck hyundai_canfd_hda2_long_rx_checks_scc2[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) +}; +RxCheck hyundai_canfd_hda2_long_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(1) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(1) +}; +RxCheck hyundai_canfd_hda2_long_alt_buttons_rx_checks_scc2[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) +}; + + +const int HYUNDAI_PARAM_CANFD_ALT_BUTTONS = 32; +const int HYUNDAI_PARAM_CANFD_HDA2_ALT_STEERING = 128; +bool hyundai_canfd_alt_buttons = false; +bool hyundai_canfd_hda2_alt_steering = false; + +int canfd_tx_addr[32] = { 80, 81, 272, 282, 298, 352, 353, 354, 442, 485, 416, 437, 506, 474, 480, 490, 512, 676, 866, 837, 1402, 908, 1848, 1187, 1204, 203, 0, }; +int canfd_tx_hz[32] = { 100,100, 100, 100, 100, 50, 20, 20, 20, 20, 50, 20, 10, 1, 20, 20, 20, 20, 10, 5, 10, 5, 10, 5, 10, 100, 0, }; +uint32_t canfd_tx_timeout[32] = { 0, }; +int canfd_tx_addr2[32] = { 0x4a3, 373, 506, 463, 426, 234, 687, 0 }; +int canfd_tx_hz2[32] = { 5, 50, 10, 50, 50, 100, 10, 0 }; +uint32_t canfd_tx_timeout2[32] = { 0, }; +uint32_t canfd_tx_time[32] = { 0, }; +uint32_t canfd_tx_time2[32] = { 0, }; + +int hyundai_canfd_hda2_get_lkas_addr(void) { + return hyundai_canfd_hda2_alt_steering ? 0x110 : 0x50; +} + +static uint8_t hyundai_canfd_get_counter(const CANPacket_t *to_push) { + uint8_t ret = 0; + if (GET_LEN(to_push) == 8U) { + ret = GET_BYTE(to_push, 1) >> 4; + } else { + ret = GET_BYTE(to_push, 2); + } + return ret; +} + +static uint32_t hyundai_canfd_get_checksum(const CANPacket_t *to_push) { + uint32_t chksum = GET_BYTE(to_push, 0) | (GET_BYTE(to_push, 1) << 8); + return chksum; +} + +static void hyundai_canfd_rx_hook(const CANPacket_t *to_push) { + int bus = GET_BUS(to_push); + int addr = GET_ADDR(to_push); + + int pt_bus = hyundai_canfd_hda2 ? 1 : 0; + const int scc_bus = hyundai_camera_scc ? 2 : pt_bus; + + if (hyundai_camera_scc) pt_bus = 0; + + if (bus == pt_bus) { + // driver torque + if (addr == 0xea) { + int torque_driver_new = ((GET_BYTE(to_push, 11) & 0x1fU) << 8U) | GET_BYTE(to_push, 10); + torque_driver_new -= 4095; + update_sample(&torque_driver, torque_driver_new); + } + + // cruise buttons + const int button_addr = hyundai_canfd_alt_buttons ? 0x1aa : 0x1cf; + if (addr == button_addr) { + bool main_button = false; + int cruise_button = 0; + if (addr == 0x1cf) { + cruise_button = GET_BYTE(to_push, 2) & 0x7U; + main_button = GET_BIT(to_push, 19U); + } else { + cruise_button = (GET_BYTE(to_push, 4) >> 4) & 0x7U; + main_button = GET_BIT(to_push, 34U); + } + hyundai_common_cruise_buttons_check(cruise_button, main_button); + } + + // gas press, different for EV, hybrid, and ICE models + if ((addr == 0x35) && hyundai_ev_gas_signal) { + gas_pressed = GET_BYTE(to_push, 5) != 0U; + } else if ((addr == 0x105) && hyundai_hybrid_gas_signal) { + gas_pressed = GET_BIT(to_push, 103U) || (GET_BYTE(to_push, 13) != 0U) || GET_BIT(to_push, 112U); + } else if ((addr == 0x100) && !hyundai_ev_gas_signal && !hyundai_hybrid_gas_signal) { + gas_pressed = GET_BIT(to_push, 176U); + } else { + } + + // brake press + if (addr == 0x175) { + brake_pressed = GET_BIT(to_push, 81U); + } + + // vehicle moving + if (addr == 0xa0) { + uint32_t fl = (GET_BYTES(to_push, 8, 2)) & 0x3FFFU; + uint32_t fr = (GET_BYTES(to_push, 10, 2)) & 0x3FFFU; + uint32_t rl = (GET_BYTES(to_push, 12, 2)) & 0x3FFFU; + uint32_t rr = (GET_BYTES(to_push, 14, 2)) & 0x3FFFU; + vehicle_moving = (fl > HYUNDAI_STANDSTILL_THRSLD) || (fr > HYUNDAI_STANDSTILL_THRSLD) || + (rl > HYUNDAI_STANDSTILL_THRSLD) || (rr > HYUNDAI_STANDSTILL_THRSLD); + + // average of all 4 wheel speeds. Conversion: raw * 0.03125 / 3.6 = m/s + UPDATE_VEHICLE_SPEED((fr + rr + rl + fl) / 4.0 * 0.03125 / 3.6); + } + } + + if (bus == scc_bus) { + // cruise state + if ((addr == 0x1a0) && !hyundai_longitudinal) { + // 1=enabled, 2=driver override + int cruise_status = ((GET_BYTE(to_push, 8) >> 4) & 0x7U); + bool cruise_engaged = (cruise_status == 1) || (cruise_status == 2); + hyundai_common_cruise_state_check(cruise_engaged); + } + } + + const int steer_addr = hyundai_canfd_hda2 ? hyundai_canfd_hda2_get_lkas_addr() : 0x12a; + bool stock_ecu_detected = (addr == steer_addr) && (bus == 0); + if (hyundai_longitudinal) { + // on HDA2, ensure ADRV ECU is still knocked out + // on others, ensure accel msg is blocked from camera + const int stock_scc_bus = hyundai_canfd_hda2 ? 1 : 0; + stock_ecu_detected = stock_ecu_detected || ((addr == 0x1a0) && (bus == stock_scc_bus)); + } + generic_rx_checks(stock_ecu_detected); + +} + +static bool hyundai_canfd_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits HYUNDAI_CANFD_STEERING_LIMITS = { + .max_steer = 512, + .max_rt_delta = 112, + .max_rt_interval = 250000, + .max_rate_up = 10, + .max_rate_down = 10, + .driver_torque_allowance = 250, + .driver_torque_multiplier = 2, + .type = TorqueDriverLimited, + + // the EPS faults when the steering angle is above a certain threshold for too long. to prevent this, + // we allow setting torque actuation bit to 0 while maintaining the requested torque value for two consecutive frames + .min_valid_request_frames = 89, + .max_invalid_request_frames = 2, + .min_valid_request_rt_interval = 810000, // 810ms; a ~10% buffer on cutting every 90 frames + .has_steer_req_tolerance = true, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + + // steering + const int steer_addr = (hyundai_canfd_hda2 && !hyundai_longitudinal) ? hyundai_canfd_hda2_get_lkas_addr() : 0x12a; + if (addr == steer_addr) { + int desired_torque = (((GET_BYTE(to_send, 6) & 0xFU) << 7U) | (GET_BYTE(to_send, 5) >> 1U)) - 1024U; + bool steer_req = GET_BIT(to_send, 52U); + + if (steer_torque_cmd_checks(desired_torque, steer_req, HYUNDAI_CANFD_STEERING_LIMITS)) { + //tx = false; + } + } + +#if 0 + // cruise buttons check + if (addr == 0x1cf) { + int button = GET_BYTE(to_send, 2) & 0x7U; + bool is_cancel = (button == HYUNDAI_BTN_CANCEL); + bool is_resume = (button == HYUNDAI_BTN_RESUME); + bool is_set = (button == HYUNDAI_BTN_SET); + + bool allowed = (is_cancel && cruise_engaged_prev) || (is_resume && controls_allowed) || (is_set && controls_allowed); + if (!allowed) { + tx = false; + } + } +#endif + + // UDS: only tester present ("\x02\x3E\x80\x00\x00\x00\x00\x00") allowed on diagnostics address + if ((addr == 0x730) && hyundai_canfd_hda2) { + if ((GET_BYTES(to_send, 0, 4) != 0x00803E02U) || (GET_BYTES(to_send, 4, 4) != 0x0U)) { + tx = false; + } + } + + // ACCEL: safety check + if (addr == 0x1a0) { + int desired_accel_raw = (((GET_BYTE(to_send, 17) & 0x7U) << 8) | GET_BYTE(to_send, 16)) - 1023U; + int desired_accel_val = ((GET_BYTE(to_send, 18) << 4) | (GET_BYTE(to_send, 17) >> 4)) - 1023U; + + bool violation = false; + + if (hyundai_longitudinal) { + int cruise_status = ((GET_BYTE(to_send, 8) >> 4) & 0x7U); + bool cruise_engaged = (cruise_status == 1) || (cruise_status == 2) || (cruise_status == 4); + if (cruise_engaged) { + if (!controls_allowed) print("automatic controls_allowed enabled....\n"); + controls_allowed = true; + } + violation |= longitudinal_accel_checks(desired_accel_raw, HYUNDAI_LONG_LIMITS); + violation |= longitudinal_accel_checks(desired_accel_val, HYUNDAI_LONG_LIMITS); + if (violation) { + print("long violation"); putui((uint32_t)desired_accel_raw); print(","); putui((uint32_t)desired_accel_val); print("\n"); + } + + } else { + // only used to cancel on here + if ((desired_accel_raw != 0) || (desired_accel_val != 0)) { + violation = true; + print("no long violation\n"); + } + } + + if (violation) { + tx = false; + } + } + + for (int i = 0; canfd_tx_addr[i] > 0; i++) { + if (addr == canfd_tx_addr[i]) canfd_tx_time[i] = (tx) ? microsecond_timer_get() : 0; + } + for (int i = 0; canfd_tx_addr2[i] > 0; i++) { + if (addr == canfd_tx_addr2[i]) canfd_tx_time2[i] = (tx) ? microsecond_timer_get() : 0; + } + + return tx; +} + +int addr_list1[128] = { 0, }; +int addr_list_count1 = 0; +int addr_list2[128] = { 0, }; +int addr_list_count2 = 0; +#define OP_CAN_SEND_TIMEOUT 100000 + +static int hyundai_canfd_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + uint32_t now = microsecond_timer_get(); + + if (bus_num == 0) { + bus_fwd = 2; + for (int i = 0; canfd_tx_addr2[i] > 0; i++) { + if (addr == canfd_tx_addr2[i] && (now - canfd_tx_time2[i]) < canfd_tx_timeout2[i]) { + bus_fwd = -1; + break; + } + } + if(addr == 0x4b9) bus_fwd = -1; // maybe corner rara disabler. + } + if (bus_num == 1) { + int i; + for (i = 0; i < addr_list_count1 && i < 127; i++) { + if (addr_list1[i] == addr) { + break; + } + } + if (i == addr_list_count1 && i!=127) { + addr_list1[addr_list_count1] = addr; + addr_list_count1++; + print("!!!!! bus1_list="); + for (int j = 0; j < addr_list_count1; j++) { putui((uint32_t)addr_list1[j]); print(","); } + print("\n"); + } + } + if (bus_num == 2) { + int i; + for (i = 0; i < addr_list_count2 && i < 127; i++) { + if (addr_list2[i] == addr) { + break; + } + } + if (i == addr_list_count2 && i != 127) { + addr_list2[addr_list_count2] = addr; + addr_list_count2++; + print("@@@@ bus2_list="); + for (int j = 0; j < addr_list_count2; j++) { putui((uint32_t)addr_list2[j]); print(","); } + print("\n"); + } +#if 1 + bus_fwd = 0; + for (int i = 0; canfd_tx_addr[i] > 0; i++) { + if (addr == canfd_tx_addr[i] && (now - canfd_tx_time[i]) < canfd_tx_timeout[i]) { + bus_fwd = -1; + break; + } + } + //if (addr == 353) bus_fwd = -1; + //else if (addr == 354) bus_fwd = -1; + //if (addr == 908) bus_fwd = -1; + //else if (addr == 1402) bus_fwd = -1; + // + // Ʒڵ ڵ .. + //if (addr == 698) bus_fwd = -1; + //if (addr == 1848) bus_fwd = -1; + //if (addr == 1996) bus_fwd = -1; +#else + // LKAS for HDA2, LFA for HDA1 + int hda2_lfa_block_addr = hyundai_canfd_hda2_alt_steering ? 0x362 : 0x2a4; + bool is_lkas_msg = ((addr == hyundai_canfd_hda2_get_lkas_addr()) || (addr == hda2_lfa_block_addr)) && hyundai_canfd_hda2; + bool is_lfa_msg = ((addr == 0x12a) && !hyundai_canfd_hda2); + + // HUD icons + bool is_lfahda_msg = ((addr == 0x1e0) && !hyundai_canfd_hda2); + + // CRUISE_INFO for non-HDA2, we send our own longitudinal commands + bool is_scc_msg = ((addr == 0x1a0) && hyundai_longitudinal && !hyundai_canfd_hda2); + + bool block_msg = is_lkas_msg || is_lfa_msg || is_lfahda_msg || is_scc_msg; + if (!block_msg) { + bus_fwd = 0; + } +#endif + } + + return bus_fwd; +} + +static safety_config hyundai_canfd_init(uint16_t param) { + + for (int i = 0; i < 32; i++) { + if (canfd_tx_addr[i] > 0) canfd_tx_timeout[i] = 1. / canfd_tx_hz[i] * 1000000 + 20000; // add 20ms for safety + if (canfd_tx_addr2[i] > 0) canfd_tx_timeout2[i] = 1. / canfd_tx_hz2[i] * 1000000 + 20000; // add 20ms for safety + } + + hyundai_common_init(param); + + gen_crc_lookup_table_16(0x1021, hyundai_canfd_crc_lut); + hyundai_canfd_alt_buttons = GET_FLAG(param, HYUNDAI_PARAM_CANFD_ALT_BUTTONS); + hyundai_canfd_hda2_alt_steering = GET_FLAG(param, HYUNDAI_PARAM_CANFD_HDA2_ALT_STEERING); + + // no long for radar-SCC HDA1 yet + //if (!hyundai_canfd_hda2 && !hyundai_camera_scc) { + // hyundai_longitudinal = false; + //} + safety_config ret; + if (hyundai_longitudinal) { + if (hyundai_canfd_hda2) { + print("hyundai safety canfd_hda2 long-"); + if(hyundai_camera_scc) print("camera_scc \n"); + else print("no camera_scc \n"); + if (hyundai_canfd_alt_buttons) { // carrot : for CANIVAL 4TH HDA2 + print("hyundai safety canfd_hda2 long_alt_buttons\n"); + if (hyundai_camera_scc) ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_alt_buttons_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + else ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + } + else { + if (hyundai_camera_scc) ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + else ret = BUILD_SAFETY_CFG(hyundai_canfd_hda2_long_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + } + } else { + if(hyundai_canfd_alt_buttons) print("hyundai safety canfd_hda1 long alt_buttons\n"); + else print("hyundai safety canfd_hda1 long general_buttons\n"); + + ret = hyundai_canfd_alt_buttons ? BUILD_SAFETY_CFG(hyundai_canfd_long_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_long_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS); + } + } else { + print("hyundai safety canfd_hda2 stock"); + if (hyundai_camera_scc) print("camera_scc \n"); + else print("no camera_scc \n"); + if (hyundai_canfd_hda2 && hyundai_camera_scc) { + if (hyundai_canfd_alt_buttons) { // carrot : for CANIVAL 4TH HDA2 + ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + } + else { + ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks_scc2, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + } + }else if (hyundai_canfd_hda2) { + if (hyundai_canfd_alt_buttons) { // carrot : for CANIVAL 4TH HDA2 + ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_hda2_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + } + else { + ret = hyundai_canfd_hda2_alt_steering ? BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_hda2_rx_checks, HYUNDAI_CANFD_HDA2_LONG_TX_MSGS); + } + } else if (!hyundai_camera_scc) { + static RxCheck hyundai_canfd_radar_scc_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(0) + }; + + // Radar sends SCC messages on these cars instead of camera + static RxCheck hyundai_canfd_radar_scc_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(0) + }; + + ret = hyundai_canfd_alt_buttons ? BUILD_SAFETY_CFG(hyundai_canfd_radar_scc_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_radar_scc_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS); + } else { + // *** Non-HDA2 checks *** + static RxCheck hyundai_canfd_alt_buttons_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_ALT_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(2) + }; + + // Camera sends SCC messages on HDA1. + // Both button messages exist on some platforms, so we ensure we track the correct one using flag + static RxCheck hyundai_canfd_rx_checks[] = { + HYUNDAI_CANFD_COMMON_RX_CHECKS(0) + HYUNDAI_CANFD_BUTTONS_ADDR_CHECK(0) + HYUNDAI_CANFD_SCC_ADDR_CHECK(2) + }; + + ret = hyundai_canfd_alt_buttons ? BUILD_SAFETY_CFG(hyundai_canfd_alt_buttons_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS) : \ + BUILD_SAFETY_CFG(hyundai_canfd_rx_checks, HYUNDAI_CANFD_HDA1_TX_MSGS); + } + } + + return ret; +} + +const safety_hooks hyundai_canfd_hooks = { + .init = hyundai_canfd_init, + .rx = hyundai_canfd_rx_hook, + .tx = hyundai_canfd_tx_hook, + .fwd = hyundai_canfd_fwd_hook, + .get_counter = hyundai_canfd_get_counter, + .get_checksum = hyundai_canfd_get_checksum, + .compute_checksum = hyundai_common_canfd_compute_checksum, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h b/opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h new file mode 100644 index 0000000000..34a48db20e --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_hyundai_common.h @@ -0,0 +1,148 @@ +#pragma once + +#include "safety_declarations.h" + +extern uint16_t hyundai_canfd_crc_lut[256]; +uint16_t hyundai_canfd_crc_lut[256]; + +static const uint8_t HYUNDAI_PREV_BUTTON_SAMPLES = 8; // roughly 160 ms + // +extern const uint32_t HYUNDAI_STANDSTILL_THRSLD; +const uint32_t HYUNDAI_STANDSTILL_THRSLD = 12; // 0.375 kph + +enum { + HYUNDAI_BTN_NONE = 0, + HYUNDAI_BTN_RESUME = 1, + HYUNDAI_BTN_SET = 2, + HYUNDAI_BTN_CANCEL = 4, +}; + +// common state +extern bool hyundai_ev_gas_signal; +bool hyundai_ev_gas_signal = false; + +extern bool hyundai_hybrid_gas_signal; +bool hyundai_hybrid_gas_signal = false; + +extern bool hyundai_longitudinal; +bool hyundai_longitudinal = false; + +extern bool hyundai_camera_scc; +bool hyundai_camera_scc = false; + +extern bool hyundai_canfd_hda2; +bool hyundai_canfd_hda2 = false; + +extern bool hyundai_alt_limits; +bool hyundai_alt_limits = false; + +extern bool hyundai_fcev_gas_signal; +bool hyundai_fcev_gas_signal = false; + +extern bool hyundai_alt_limits_2; +bool hyundai_alt_limits_2 = false; + +static uint8_t hyundai_last_button_interaction; // button messages since the user pressed an enable button + +void hyundai_common_init(uint16_t param) { + const int HYUNDAI_PARAM_EV_GAS = 1; + const int HYUNDAI_PARAM_HYBRID_GAS = 2; + const int HYUNDAI_PARAM_CAMERA_SCC = 8; + const int HYUNDAI_PARAM_CANFD_HDA2 = 16; + const int HYUNDAI_PARAM_ALT_LIMITS = 64; // TODO: shift this down with the rest of the common flags + const int HYUNDAI_PARAM_FCEV_GAS = 256; + const int HYUNDAI_PARAM_ALT_LIMITS_2 = 512; + + hyundai_ev_gas_signal = GET_FLAG(param, HYUNDAI_PARAM_EV_GAS); + hyundai_hybrid_gas_signal = !hyundai_ev_gas_signal && GET_FLAG(param, HYUNDAI_PARAM_HYBRID_GAS); + hyundai_camera_scc = GET_FLAG(param, HYUNDAI_PARAM_CAMERA_SCC); + hyundai_canfd_hda2 = GET_FLAG(param, HYUNDAI_PARAM_CANFD_HDA2); + hyundai_alt_limits = GET_FLAG(param, HYUNDAI_PARAM_ALT_LIMITS); + hyundai_fcev_gas_signal = GET_FLAG(param, HYUNDAI_PARAM_FCEV_GAS); + hyundai_alt_limits_2 = GET_FLAG(param, HYUNDAI_PARAM_ALT_LIMITS_2); + + hyundai_last_button_interaction = HYUNDAI_PREV_BUTTON_SAMPLES; + +#ifdef ALLOW_DEBUG + const int HYUNDAI_PARAM_LONGITUDINAL = 4; + hyundai_longitudinal = GET_FLAG(param, HYUNDAI_PARAM_LONGITUDINAL); +#else + hyundai_longitudinal = false; +#endif +} + +void hyundai_common_cruise_state_check(const bool cruise_engaged) { + // some newer HKG models can re-enable after spamming cancel button, + // so keep track of user button presses to deny engagement if no interaction + + // enter controls on rising edge of ACC and recent user button press, exit controls when ACC off + if (!hyundai_longitudinal) { + hyundai_last_button_interaction = 0U; // carrot + //if (cruise_engaged && !cruise_engaged_prev && (hyundai_last_button_interaction < HYUNDAI_PREV_BUTTON_SAMPLES)) { + if (cruise_engaged) { + controls_allowed = true; + } + + if (!cruise_engaged) { + if(controls_allowed) print("controls_allowed1 = false\n"); + controls_allowed = false; + + } + cruise_engaged_prev = cruise_engaged; + } +} + +void hyundai_common_cruise_buttons_check(const int cruise_button, const bool main_button) { + if(main_button && main_button != cruise_main_prev) { + acc_main_on = !acc_main_on; + } + cruise_main_prev = main_button; + if ((cruise_button == HYUNDAI_BTN_RESUME) || (cruise_button == HYUNDAI_BTN_SET) || (cruise_button == HYUNDAI_BTN_CANCEL) || + (main_button)) { + hyundai_last_button_interaction = 0U; + } else { + hyundai_last_button_interaction = MIN(hyundai_last_button_interaction + 1U, HYUNDAI_PREV_BUTTON_SAMPLES); + } + + if (hyundai_longitudinal) { + // enter controls on falling edge of resume or set + bool set = (cruise_button != HYUNDAI_BTN_SET) && (cruise_button_prev == HYUNDAI_BTN_SET); + bool res = (cruise_button != HYUNDAI_BTN_RESUME) && (cruise_button_prev == HYUNDAI_BTN_RESUME); + if (set || res) { + controls_allowed = true; + } + + // exit controls on cancel press + if (cruise_button == HYUNDAI_BTN_CANCEL) { + controls_allowed = false; + print("controls_allowed2 = false\n"); + } + + cruise_button_prev = cruise_button; + } +} + +uint32_t hyundai_common_canfd_compute_checksum(const CANPacket_t *to_push) { + int len = GET_LEN(to_push); + uint32_t address = GET_ADDR(to_push); + + uint16_t crc = 0; + + for (int i = 2; i < len; i++) { + crc = (crc << 8U) ^ hyundai_canfd_crc_lut[(crc >> 8U) ^ GET_BYTE(to_push, i)]; + } + + // Add address to crc + crc = (crc << 8U) ^ hyundai_canfd_crc_lut[(crc >> 8U) ^ ((address >> 0U) & 0xFFU)]; + crc = (crc << 8U) ^ hyundai_canfd_crc_lut[(crc >> 8U) ^ ((address >> 8U) & 0xFFU)]; + + if (len == 24) { + crc ^= 0x819dU; + } else if (len == 32) { + crc ^= 0x9f5bU; + } else { + + } + + return crc; +} diff --git a/opendbc_repo/opendbc/safety/safety/safety_mazda.h b/opendbc_repo/opendbc/safety/safety/safety_mazda.h new file mode 100644 index 0000000000..43857192d5 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_mazda.h @@ -0,0 +1,131 @@ +#pragma once + +#include "safety_declarations.h" + +// CAN msgs we care about +#define MAZDA_LKAS 0x243 +#define MAZDA_LKAS_HUD 0x440 +#define MAZDA_CRZ_CTRL 0x21c +#define MAZDA_CRZ_BTNS 0x09d +#define MAZDA_STEER_TORQUE 0x240 +#define MAZDA_ENGINE_DATA 0x202 +#define MAZDA_PEDALS 0x165 + +// CAN bus numbers +#define MAZDA_MAIN 0 +#define MAZDA_CAM 2 + +// track msgs coming from OP so that we know what CAM msgs to drop and what to forward +static void mazda_rx_hook(const CANPacket_t *to_push) { + if ((int)GET_BUS(to_push) == MAZDA_MAIN) { + int addr = GET_ADDR(to_push); + + if (addr == MAZDA_ENGINE_DATA) { + // sample speed: scale by 0.01 to get kph + int speed = (GET_BYTE(to_push, 2) << 8) | GET_BYTE(to_push, 3); + vehicle_moving = speed > 10; // moving when speed > 0.1 kph + } + + if (addr == MAZDA_STEER_TORQUE) { + int torque_driver_new = GET_BYTE(to_push, 0) - 127U; + // update array of samples + update_sample(&torque_driver, torque_driver_new); + } + + // enter controls on rising edge of ACC, exit controls on ACC off + if (addr == MAZDA_CRZ_CTRL) { + bool cruise_engaged = GET_BYTE(to_push, 0) & 0x8U; + pcm_cruise_check(cruise_engaged); + } + + if (addr == MAZDA_ENGINE_DATA) { + gas_pressed = (GET_BYTE(to_push, 4) || (GET_BYTE(to_push, 5) & 0xF0U)); + } + + if (addr == MAZDA_PEDALS) { + brake_pressed = (GET_BYTE(to_push, 0) & 0x10U); + } + + generic_rx_checks((addr == MAZDA_LKAS)); + } +} + +static bool mazda_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits MAZDA_STEERING_LIMITS = { + .max_steer = 800, + .max_rate_up = 10, + .max_rate_down = 25, + .max_rt_delta = 300, + .max_rt_interval = 250000, + .driver_torque_multiplier = 1, + .driver_torque_allowance = 15, + .type = TorqueDriverLimited, + }; + + bool tx = true; + int bus = GET_BUS(to_send); + // Check if msg is sent on the main BUS + if (bus == MAZDA_MAIN) { + int addr = GET_ADDR(to_send); + + // steer cmd checks + if (addr == MAZDA_LKAS) { + int desired_torque = (((GET_BYTE(to_send, 0) & 0x0FU) << 8) | GET_BYTE(to_send, 1)) - 2048U; + + if (steer_torque_cmd_checks(desired_torque, -1, MAZDA_STEERING_LIMITS)) { + tx = false; + } + } + + // cruise buttons check + if (addr == MAZDA_CRZ_BTNS) { + // allow resume spamming while controls allowed, but + // only allow cancel while contrls not allowed + bool cancel_cmd = (GET_BYTE(to_send, 0) == 0x1U); + if (!controls_allowed && !cancel_cmd) { + //tx = false; + } + } + } + + return tx; +} + +static int mazda_fwd_hook(int bus, int addr) { + int bus_fwd = -1; + + if (bus == MAZDA_MAIN) { + bus_fwd = MAZDA_CAM; + } else if (bus == MAZDA_CAM) { + bool block = (addr == MAZDA_LKAS) || (addr == MAZDA_LKAS_HUD); + if (!block) { + bus_fwd = MAZDA_MAIN; + } + } else { + // don't fwd + } + + return bus_fwd; +} + +static safety_config mazda_init(uint16_t param) { + static const CanMsg MAZDA_TX_MSGS[] = {{MAZDA_LKAS, 0, 8}, {MAZDA_CRZ_BTNS, 0, 8}, {MAZDA_LKAS_HUD, 0, 8}}; + + static RxCheck mazda_rx_checks[] = { + {.msg = {{MAZDA_CRZ_CTRL, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MAZDA_CRZ_BTNS, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, + {.msg = {{MAZDA_STEER_TORQUE, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 83U}, { 0 }, { 0 }}}, + {.msg = {{MAZDA_ENGINE_DATA, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MAZDA_PEDALS, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, + }; + + UNUSED(param); + return BUILD_SAFETY_CFG(mazda_rx_checks, MAZDA_TX_MSGS); +} + +const safety_hooks mazda_hooks = { + .init = mazda_init, + .rx = mazda_rx_hook, + .tx = mazda_tx_hook, + .fwd = mazda_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_nissan.h b/opendbc_repo/opendbc/safety/safety/safety_nissan.h new file mode 100644 index 0000000000..78a051df18 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_nissan.h @@ -0,0 +1,164 @@ +#pragma once + +#include "safety_declarations.h" + +static bool nissan_alt_eps = false; + +static void nissan_rx_hook(const CANPacket_t *to_push) { + int bus = GET_BUS(to_push); + int addr = GET_ADDR(to_push); + + if (bus == (nissan_alt_eps ? 1 : 0)) { + if (addr == 0x2) { + // Current steering angle + // Factor -0.1, little endian + int angle_meas_new = (GET_BYTES(to_push, 0, 4) & 0xFFFFU); + // Multiply by -10 to match scale of LKAS angle + angle_meas_new = to_signed(angle_meas_new, 16) * -10; + + // update array of samples + update_sample(&angle_meas, angle_meas_new); + } + + if (addr == 0x285) { + // Get current speed and standstill + uint16_t right_rear = (GET_BYTE(to_push, 0) << 8) | (GET_BYTE(to_push, 1)); + uint16_t left_rear = (GET_BYTE(to_push, 2) << 8) | (GET_BYTE(to_push, 3)); + vehicle_moving = (right_rear | left_rear) != 0U; + UPDATE_VEHICLE_SPEED((right_rear + left_rear) / 2.0 * 0.005 / 3.6); + } + + // X-Trail 0x15c, Leaf 0x239 + if ((addr == 0x15c) || (addr == 0x239)) { + if (addr == 0x15c){ + gas_pressed = ((GET_BYTE(to_push, 5) << 2) | ((GET_BYTE(to_push, 6) >> 6) & 0x3U)) > 3U; + } else { + gas_pressed = GET_BYTE(to_push, 0) > 3U; + } + } + + // X-trail 0x454, Leaf 0x239 + if ((addr == 0x454) || (addr == 0x239)) { + if (addr == 0x454){ + brake_pressed = (GET_BYTE(to_push, 2) & 0x80U) != 0U; + } else { + brake_pressed = ((GET_BYTE(to_push, 4) >> 5) & 1U) != 0U; + } + } + } + + // Handle cruise enabled + if ((addr == 0x30f) && (bus == (nissan_alt_eps ? 1 : 2))) { + bool cruise_engaged = (GET_BYTE(to_push, 0) >> 3) & 1U; + pcm_cruise_check(cruise_engaged); + } + + generic_rx_checks((addr == 0x169) && (bus == 0)); +} + + +static bool nissan_tx_hook(const CANPacket_t *to_send) { + const AngleSteeringLimits NISSAN_STEERING_LIMITS = { + .max_angle = 60000, // 600 deg, reasonable limit + .angle_deg_to_can = 100, + .angle_rate_up_lookup = { + {0., 5., 15.}, + {5., .8, .15} + }, + .angle_rate_down_lookup = { + {0., 5., 15.}, + {5., 3.5, .4} + }, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + bool violation = false; + + // steer cmd checks + if (addr == 0x169) { + int desired_angle = ((GET_BYTE(to_send, 0) << 10) | (GET_BYTE(to_send, 1) << 2) | ((GET_BYTE(to_send, 2) >> 6) & 0x3U)); + bool lka_active = (GET_BYTE(to_send, 6) >> 4) & 1U; + + // Factor is -0.01, offset is 1310. Flip to correct sign, but keep units in CAN scale + desired_angle = -desired_angle + (1310.0f * NISSAN_STEERING_LIMITS.angle_deg_to_can); + + if (steer_angle_cmd_checks(desired_angle, lka_active, NISSAN_STEERING_LIMITS)) { + violation = true; + } + } + + // acc button check, only allow cancel button to be sent + if (addr == 0x20b) { + // Violation of any button other than cancel is pressed + violation |= ((GET_BYTE(to_send, 1) & 0x3dU) > 0U); + } + + if (violation) { + tx = false; + } + + return tx; +} + + +static int nissan_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + if (bus_num == 0) { + bool block_msg = (addr == 0x280); // CANCEL_MSG + if (!block_msg) { + bus_fwd = 2; // ADAS + } + } + + if (bus_num == 2) { + // 0x169 is LKAS, 0x2b1 LKAS_HUD, 0x4cc LKAS_HUD_INFO_MSG + bool block_msg = ((addr == 0x169) || (addr == 0x2b1) || (addr == 0x4cc)); + if (!block_msg) { + bus_fwd = 0; // V-CAN + } + } + + return bus_fwd; +} + +static safety_config nissan_init(uint16_t param) { + static const CanMsg NISSAN_TX_MSGS[] = { + {0x169, 0, 8}, // LKAS + {0x2b1, 0, 8}, // PROPILOT_HUD + {0x4cc, 0, 8}, // PROPILOT_HUD_INFO_MSG + {0x20b, 2, 6}, // CRUISE_THROTTLE (X-Trail) + {0x20b, 1, 6}, // CRUISE_THROTTLE (Altima) + {0x280, 2, 8} // CANCEL_MSG (Leaf) + }; + + // Signals duplicated below due to the fact that these messages can come in on either CAN bus, depending on car model. + static RxCheck nissan_rx_checks[] = { + {.msg = {{0x2, 0, 5, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, + {0x2, 1, 5, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }}}, // STEER_ANGLE_SENSOR + {.msg = {{0x285, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, + {0x285, 1, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }}}, // WHEEL_SPEEDS_REAR + {.msg = {{0x30f, 2, 3, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, + {0x30f, 1, 3, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }}}, // CRUISE_STATE + {.msg = {{0x15c, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, + {0x15c, 1, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, + {0x239, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}}}, // GAS_PEDAL + {.msg = {{0x454, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, + {0x454, 1, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, + {0x1cc, 0, 4, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}}}, // DOORS_LIGHTS / BRAKE + }; + + // EPS Location. false = V-CAN, true = C-CAN + const int NISSAN_PARAM_ALT_EPS_BUS = 1; + + nissan_alt_eps = GET_FLAG(param, NISSAN_PARAM_ALT_EPS_BUS); + return BUILD_SAFETY_CFG(nissan_rx_checks, NISSAN_TX_MSGS); +} + +const safety_hooks nissan_hooks = { + .init = nissan_init, + .rx = nissan_rx_hook, + .tx = nissan_tx_hook, + .fwd = nissan_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_rivian.h b/opendbc_repo/opendbc/safety/safety/safety_rivian.h new file mode 100644 index 0000000000..9f1f908b85 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_rivian.h @@ -0,0 +1,162 @@ +#pragma once + +#include "safety_declarations.h" + +static bool rivian_longitudinal = false; + +static void rivian_rx_hook(const CANPacket_t *to_push) { + int bus = GET_BUS(to_push); + int addr = GET_ADDR(to_push); + + if (bus == 0) { + // Vehicle speed + if (addr == 0x208) { + vehicle_moving = GET_BYTE(to_push, 6) | GET_BYTE(to_push, 7); + } + + // Driver torque + if (addr == 0x380) { + int torque_driver_new = (((GET_BYTE(to_push, 2) << 4) | (GET_BYTE(to_push, 3) >> 4))) - 2050U; + update_sample(&torque_driver, torque_driver_new); + } + + // Gas pressed + if (addr == 0x150) { + gas_pressed = GET_BYTE(to_push, 3) | (GET_BYTE(to_push, 4) & 0xC0U); + } + + // Brake pressed + if (addr == 0x38f) { + brake_pressed = GET_BIT(to_push, 23U); + } + + generic_rx_checks(addr == 0x120); // ACM_lkaHbaCmd + if (rivian_longitudinal) { + generic_rx_checks(addr == 0x160); // ACM_longitudinalRequest + } + } + + if (bus == 2) { + // Cruise state + if (addr == 0x100) { + const int feature_status = GET_BYTE(to_push, 2) >> 5U; + pcm_cruise_check(feature_status == 1); + } + } +} + +static bool rivian_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits RIVIAN_STEERING_LIMITS = { + .max_steer = 250, + .max_rate_up = 3, + .max_rate_down = 5, + .max_rt_delta = 125, + .max_rt_interval = 250000, + .driver_torque_multiplier = 2, + .driver_torque_allowance = 100, + .type = TorqueDriverLimited, + }; + + const LongitudinalLimits RIVIAN_LONG_LIMITS = { + .max_accel = 200, + .min_accel = -350, + .inactive_accel = 0, + }; + + bool tx = true; + int bus = GET_BUS(to_send); + + if (bus == 0) { + int addr = GET_ADDR(to_send); + + // Steering control + if (addr == 0x120) { + int desired_torque = ((GET_BYTE(to_send, 2) << 3U) | (GET_BYTE(to_send, 3) >> 5U)) - 1024U; + bool steer_req = GET_BIT(to_send, 28U); + + if (steer_torque_cmd_checks(desired_torque, steer_req, RIVIAN_STEERING_LIMITS)) { + tx = false; + } + } + + // Longitudinal control + if (addr == 0x160) { + int raw_accel = ((GET_BYTE(to_send, 2) << 3) | (GET_BYTE(to_send, 3) >> 5)) - 1024U; + if (longitudinal_accel_checks(raw_accel, RIVIAN_LONG_LIMITS)) { + tx = false; + } + } + } + + return tx; +} + +static int rivian_fwd_hook(int bus, int addr) { + int bus_fwd = -1; + bool block_msg = false; + + if (bus == 0) { + // SCCM_WheelTouch: for hiding hold wheel alert + if (addr == 0x321) { + block_msg = true; + } + + // VDM_AdasSts: for canceling stock ACC + if ((addr == 0x162) && !rivian_longitudinal) { + block_msg = true; + } + + if (!block_msg) { + bus_fwd = 2; + } + } + + if (bus == 2) { + // ACM_lkaHbaCmd: lateral control message + if (addr == 0x120) { + block_msg = true; + } + + // ACM_longitudinalRequest: longitudinal control message + if (rivian_longitudinal && (addr == 0x160)) { + block_msg = true; + } + + if (!block_msg) { + bus_fwd = 0; + } + } + + return bus_fwd; +} + +static safety_config rivian_init(uint16_t param) { + // 0x120 = ACM_lkaHbaCmd, 0x321 = SCCM_WheelTouch, 0x162 = VDM_AdasSts + static const CanMsg RIVIAN_TX_MSGS[] = {{0x120, 0, 8}, {0x321, 2, 7}, {0x162, 2, 8}}; + // 0x160 = ACM_longitudinalRequest + static const CanMsg RIVIAN_LONG_TX_MSGS[] = {{0x120, 0, 8}, {0x321, 2, 7}, {0x160, 0, 5}}; + + static RxCheck rivian_rx_checks[] = { + {.msg = {{0x208, 0, 8, .frequency = 50U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // ESP_Status (speed) + {.msg = {{0x380, 0, 5, .frequency = 100U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // EPAS_SystemStatus (driver torque) + {.msg = {{0x150, 0, 7, .frequency = 50U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // VDM_PropStatus (gas pedal) + {.msg = {{0x38f, 0, 6, .frequency = 50U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // iBESP2 (brakes) + {.msg = {{0x100, 2, 8, .frequency = 100U, .ignore_checksum = true, .ignore_counter = true}, { 0 }, { 0 }}}, // ACM_Status (cruise state) + }; + + UNUSED(param); + #ifdef ALLOW_DEBUG + const int FLAG_RIVIAN_LONG_CONTROL = 1; + rivian_longitudinal = GET_FLAG(param, FLAG_RIVIAN_LONG_CONTROL); + #endif + + return rivian_longitudinal ? BUILD_SAFETY_CFG(rivian_rx_checks, RIVIAN_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(rivian_rx_checks, RIVIAN_TX_MSGS); +} + +const safety_hooks rivian_hooks = { + .init = rivian_init, + .rx = rivian_rx_hook, + .tx = rivian_tx_hook, + .fwd = rivian_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_subaru.h b/opendbc_repo/opendbc/safety/safety/safety_subaru.h new file mode 100644 index 0000000000..3185270b1e --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_subaru.h @@ -0,0 +1,293 @@ +#pragma once + +#include "safety_declarations.h" + +#define SUBARU_STEERING_LIMITS_GENERATOR(steer_max, rate_up, rate_down) \ + { \ + .max_steer = (steer_max), \ + .max_rt_delta = 940, \ + .max_rt_interval = 250000, \ + .max_rate_up = (rate_up), \ + .max_rate_down = (rate_down), \ + .driver_torque_multiplier = 50, \ + .driver_torque_allowance = 60, \ + .type = TorqueDriverLimited, \ + /* the EPS will temporary fault if the steering rate is too high, so we cut the \ + the steering torque every 7 frames for 1 frame if the steering rate is high */ \ + .min_valid_request_frames = 7, \ + .max_invalid_request_frames = 1, \ + .min_valid_request_rt_interval = 144000, /* 10% tolerance */ \ + .has_steer_req_tolerance = true, \ + } + +#define MSG_SUBARU_Brake_Status 0x13c +#define MSG_SUBARU_CruiseControl 0x240 +#define MSG_SUBARU_Throttle 0x40 +#define MSG_SUBARU_Steering_Torque 0x119 +#define MSG_SUBARU_Wheel_Speeds 0x13a + +#define MSG_SUBARU_ES_LKAS 0x122 +#define MSG_SUBARU_ES_Brake 0x220 +#define MSG_SUBARU_ES_Distance 0x221 +#define MSG_SUBARU_ES_Status 0x222 +#define MSG_SUBARU_ES_DashStatus 0x321 +#define MSG_SUBARU_ES_LKAS_State 0x322 +#define MSG_SUBARU_ES_Infotainment 0x323 + +#define MSG_SUBARU_ES_UDS_Request 0x787 + +#define MSG_SUBARU_ES_HighBeamAssist 0x121 +#define MSG_SUBARU_ES_STATIC_1 0x22a +#define MSG_SUBARU_ES_STATIC_2 0x325 + +#define SUBARU_MAIN_BUS 0 +#define SUBARU_ALT_BUS 1 +#define SUBARU_CAM_BUS 2 + +#define SUBARU_COMMON_TX_MSGS(alt_bus, lkas_msg) \ + {lkas_msg, SUBARU_MAIN_BUS, 8}, \ + {MSG_SUBARU_ES_Distance, alt_bus, 8}, \ + {MSG_SUBARU_ES_DashStatus, SUBARU_MAIN_BUS, 8}, \ + {MSG_SUBARU_ES_LKAS_State, SUBARU_MAIN_BUS, 8}, \ + {MSG_SUBARU_ES_Infotainment, SUBARU_MAIN_BUS, 8}, \ + +#define SUBARU_COMMON_LONG_TX_MSGS(alt_bus) \ + {MSG_SUBARU_ES_Brake, alt_bus, 8}, \ + {MSG_SUBARU_ES_Status, alt_bus, 8}, \ + +#define SUBARU_GEN2_LONG_ADDITIONAL_TX_MSGS() \ + {MSG_SUBARU_ES_UDS_Request, SUBARU_CAM_BUS, 8}, \ + {MSG_SUBARU_ES_HighBeamAssist, SUBARU_MAIN_BUS, 8}, \ + {MSG_SUBARU_ES_STATIC_1, SUBARU_MAIN_BUS, 8}, \ + {MSG_SUBARU_ES_STATIC_2, SUBARU_MAIN_BUS, 8}, \ + +#define SUBARU_COMMON_RX_CHECKS(alt_bus) \ + {.msg = {{MSG_SUBARU_Throttle, SUBARU_MAIN_BUS, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, \ + {.msg = {{MSG_SUBARU_Steering_Torque, SUBARU_MAIN_BUS, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ + {.msg = {{MSG_SUBARU_Wheel_Speeds, alt_bus, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ + {.msg = {{MSG_SUBARU_Brake_Status, alt_bus, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, \ + {.msg = {{MSG_SUBARU_CruiseControl, alt_bus, 8, .max_counter = 15U, .frequency = 20U}, { 0 }, { 0 }}}, \ + +static bool subaru_gen2 = false; +static bool subaru_longitudinal = false; + +static uint32_t subaru_get_checksum(const CANPacket_t *to_push) { + return (uint8_t)GET_BYTE(to_push, 0); +} + +static uint8_t subaru_get_counter(const CANPacket_t *to_push) { + return (uint8_t)(GET_BYTE(to_push, 1) & 0xFU); +} + +static uint32_t subaru_compute_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + int len = GET_LEN(to_push); + uint8_t checksum = (uint8_t)(addr) + (uint8_t)((unsigned int)(addr) >> 8U); + for (int i = 1; i < len; i++) { + checksum += (uint8_t)GET_BYTE(to_push, i); + } + return checksum; +} + +static void subaru_rx_hook(const CANPacket_t *to_push) { + const int bus = GET_BUS(to_push); + const int alt_main_bus = subaru_gen2 ? SUBARU_ALT_BUS : SUBARU_MAIN_BUS; + + int addr = GET_ADDR(to_push); + if ((addr == MSG_SUBARU_Steering_Torque) && (bus == SUBARU_MAIN_BUS)) { + int torque_driver_new; + torque_driver_new = ((GET_BYTES(to_push, 0, 4) >> 16) & 0x7FFU); + torque_driver_new = -1 * to_signed(torque_driver_new, 11); + update_sample(&torque_driver, torque_driver_new); + + int angle_meas_new = (GET_BYTES(to_push, 4, 2) & 0xFFFFU); + // convert Steering_Torque -> Steering_Angle to centidegrees, to match the ES_LKAS_ANGLE angle request units + angle_meas_new = ROUND(to_signed(angle_meas_new, 16) * -2.17); + update_sample(&angle_meas, angle_meas_new); + } + + // enter controls on rising edge of ACC, exit controls on ACC off + if ((addr == MSG_SUBARU_CruiseControl) && (bus == alt_main_bus)) { + bool cruise_engaged = GET_BIT(to_push, 41U); + pcm_cruise_check(cruise_engaged); + } + + // update vehicle moving with any non-zero wheel speed + if ((addr == MSG_SUBARU_Wheel_Speeds) && (bus == alt_main_bus)) { + uint32_t fr = (GET_BYTES(to_push, 1, 3) >> 4) & 0x1FFFU; + uint32_t rr = (GET_BYTES(to_push, 3, 3) >> 1) & 0x1FFFU; + uint32_t rl = (GET_BYTES(to_push, 4, 3) >> 6) & 0x1FFFU; + uint32_t fl = (GET_BYTES(to_push, 6, 2) >> 3) & 0x1FFFU; + + vehicle_moving = (fr > 0U) || (rr > 0U) || (rl > 0U) || (fl > 0U); + + UPDATE_VEHICLE_SPEED((fr + rr + rl + fl) / 4.0 * 0.057 / 3.6); + } + + if ((addr == MSG_SUBARU_Brake_Status) && (bus == alt_main_bus)) { + brake_pressed = GET_BIT(to_push, 62U); + } + + if ((addr == MSG_SUBARU_Throttle) && (bus == SUBARU_MAIN_BUS)) { + gas_pressed = GET_BYTE(to_push, 4) != 0U; + } + + generic_rx_checks((addr == MSG_SUBARU_ES_LKAS) && (bus == SUBARU_MAIN_BUS)); +} + +static bool subaru_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits SUBARU_STEERING_LIMITS = SUBARU_STEERING_LIMITS_GENERATOR(2047, 50, 70); + const TorqueSteeringLimits SUBARU_GEN2_STEERING_LIMITS = SUBARU_STEERING_LIMITS_GENERATOR(1000, 40, 40); + + const LongitudinalLimits SUBARU_LONG_LIMITS = { + .min_gas = 808, // appears to be engine braking + .max_gas = 3400, // approx 2 m/s^2 when maxing cruise_rpm and cruise_throttle + .inactive_gas = 1818, // this is zero acceleration + .max_brake = 600, // approx -3.5 m/s^2 + + .min_transmission_rpm = 0, + .max_transmission_rpm = 3600, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + bool violation = false; + + // steer cmd checks + if (addr == MSG_SUBARU_ES_LKAS) { + int desired_torque = ((GET_BYTES(to_send, 0, 4) >> 16) & 0x1FFFU); + desired_torque = -1 * to_signed(desired_torque, 13); + + bool steer_req = GET_BIT(to_send, 29U); + + const TorqueSteeringLimits limits = subaru_gen2 ? SUBARU_GEN2_STEERING_LIMITS : SUBARU_STEERING_LIMITS; + violation |= steer_torque_cmd_checks(desired_torque, steer_req, limits); + } + + // check es_brake brake_pressure limits + if (addr == MSG_SUBARU_ES_Brake) { + int es_brake_pressure = GET_BYTES(to_send, 2, 2); + violation |= longitudinal_brake_checks(es_brake_pressure, SUBARU_LONG_LIMITS); + } + + // check es_distance cruise_throttle limits + if (addr == MSG_SUBARU_ES_Distance) { + int cruise_throttle = (GET_BYTES(to_send, 2, 2) & 0x1FFFU); + bool cruise_cancel = GET_BIT(to_send, 56U); + + if (subaru_longitudinal) { + violation |= longitudinal_gas_checks(cruise_throttle, SUBARU_LONG_LIMITS); + } else { + // If openpilot is not controlling long, only allow ES_Distance for cruise cancel requests, + // (when Cruise_Cancel is true, and Cruise_Throttle is inactive) + violation |= (cruise_throttle != SUBARU_LONG_LIMITS.inactive_gas); + violation |= (!cruise_cancel); + } + } + + // check es_status transmission_rpm limits + if (addr == MSG_SUBARU_ES_Status) { + int transmission_rpm = (GET_BYTES(to_send, 2, 2) & 0x1FFFU); + violation |= longitudinal_transmission_rpm_checks(transmission_rpm, SUBARU_LONG_LIMITS); + } + + if (addr == MSG_SUBARU_ES_UDS_Request) { + // tester present ('\x02\x3E\x80\x00\x00\x00\x00\x00') is allowed for gen2 longitudinal to keep eyesight disabled + bool is_tester_present = (GET_BYTES(to_send, 0, 4) == 0x00803E02U) && (GET_BYTES(to_send, 4, 4) == 0x0U); + + // reading ES button data by identifier (b'\x03\x22\x11\x30\x00\x00\x00\x00') is also allowed (DID 0x1130) + bool is_button_rdbi = (GET_BYTES(to_send, 0, 4) == 0x30112203U) && (GET_BYTES(to_send, 4, 4) == 0x0U); + + violation |= !(is_tester_present || is_button_rdbi); + } + + if (violation){ + tx = false; + } + return tx; +} + +static int subaru_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + if (bus_num == SUBARU_MAIN_BUS) { + bus_fwd = SUBARU_CAM_BUS; // to the eyesight camera + } + + if (bus_num == SUBARU_CAM_BUS) { + // Global platform + bool block_lkas = ((addr == MSG_SUBARU_ES_LKAS) || + (addr == MSG_SUBARU_ES_DashStatus) || + (addr == MSG_SUBARU_ES_LKAS_State) || + (addr == MSG_SUBARU_ES_Infotainment)); + + bool block_long = ((addr == MSG_SUBARU_ES_Brake) || + (addr == MSG_SUBARU_ES_Distance) || + (addr == MSG_SUBARU_ES_Status)); + + bool block_msg = block_lkas || (subaru_longitudinal && block_long); + if (!block_msg) { + bus_fwd = SUBARU_MAIN_BUS; // Main CAN + } + } + + return bus_fwd; +} + +static safety_config subaru_init(uint16_t param) { + static const CanMsg SUBARU_TX_MSGS[] = { + SUBARU_COMMON_TX_MSGS(SUBARU_MAIN_BUS, MSG_SUBARU_ES_LKAS) + }; + + static const CanMsg SUBARU_LONG_TX_MSGS[] = { + SUBARU_COMMON_TX_MSGS(SUBARU_MAIN_BUS, MSG_SUBARU_ES_LKAS) + SUBARU_COMMON_LONG_TX_MSGS(SUBARU_MAIN_BUS) + }; + + static const CanMsg SUBARU_GEN2_TX_MSGS[] = { + SUBARU_COMMON_TX_MSGS(SUBARU_ALT_BUS, MSG_SUBARU_ES_LKAS) + }; + + static const CanMsg SUBARU_GEN2_LONG_TX_MSGS[] = { + SUBARU_COMMON_TX_MSGS(SUBARU_ALT_BUS, MSG_SUBARU_ES_LKAS) + SUBARU_COMMON_LONG_TX_MSGS(SUBARU_ALT_BUS) + SUBARU_GEN2_LONG_ADDITIONAL_TX_MSGS() + }; + + static RxCheck subaru_rx_checks[] = { + SUBARU_COMMON_RX_CHECKS(SUBARU_MAIN_BUS) + }; + + static RxCheck subaru_gen2_rx_checks[] = { + SUBARU_COMMON_RX_CHECKS(SUBARU_ALT_BUS) + }; + + const uint16_t SUBARU_PARAM_GEN2 = 1; + + subaru_gen2 = GET_FLAG(param, SUBARU_PARAM_GEN2); + +#ifdef ALLOW_DEBUG + const uint16_t SUBARU_PARAM_LONGITUDINAL = 2; + subaru_longitudinal = GET_FLAG(param, SUBARU_PARAM_LONGITUDINAL); +#endif + + safety_config ret; + if (subaru_gen2) { + ret = subaru_longitudinal ? BUILD_SAFETY_CFG(subaru_gen2_rx_checks, SUBARU_GEN2_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(subaru_gen2_rx_checks, SUBARU_GEN2_TX_MSGS); + } else { + ret = subaru_longitudinal ? BUILD_SAFETY_CFG(subaru_rx_checks, SUBARU_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(subaru_rx_checks, SUBARU_TX_MSGS); + } + return ret; +} + +const safety_hooks subaru_hooks = { + .init = subaru_init, + .rx = subaru_rx_hook, + .tx = subaru_tx_hook, + .fwd = subaru_fwd_hook, + .get_counter = subaru_get_counter, + .get_checksum = subaru_get_checksum, + .compute_checksum = subaru_compute_checksum, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h b/opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h new file mode 100644 index 0000000000..da5bbb82ec --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_subaru_preglobal.h @@ -0,0 +1,129 @@ +#pragma once + +#include "safety_declarations.h" + +// Preglobal platform +// 0x161 is ES_CruiseThrottle +// 0x164 is ES_LKAS + +#define MSG_SUBARU_PG_CruiseControl 0x144 +#define MSG_SUBARU_PG_Throttle 0x140 +#define MSG_SUBARU_PG_Wheel_Speeds 0xD4 +#define MSG_SUBARU_PG_Brake_Pedal 0xD1 +#define MSG_SUBARU_PG_ES_LKAS 0x164 +#define MSG_SUBARU_PG_ES_Distance 0x161 +#define MSG_SUBARU_PG_Steering_Torque 0x371 + +#define SUBARU_PG_MAIN_BUS 0 +#define SUBARU_PG_CAM_BUS 2 + +static bool subaru_pg_reversed_driver_torque = false; + +static void subaru_preglobal_rx_hook(const CANPacket_t *to_push) { + const int bus = GET_BUS(to_push); + + if (bus == SUBARU_PG_MAIN_BUS) { + int addr = GET_ADDR(to_push); + if (addr == MSG_SUBARU_PG_Steering_Torque) { + int torque_driver_new; + torque_driver_new = (GET_BYTE(to_push, 3) >> 5) + (GET_BYTE(to_push, 4) << 3); + torque_driver_new = to_signed(torque_driver_new, 11); + torque_driver_new = subaru_pg_reversed_driver_torque ? -torque_driver_new : torque_driver_new; + update_sample(&torque_driver, torque_driver_new); + } + + // enter controls on rising edge of ACC, exit controls on ACC off + if (addr == MSG_SUBARU_PG_CruiseControl) { + bool cruise_engaged = GET_BIT(to_push, 49U); + pcm_cruise_check(cruise_engaged); + } + + // update vehicle moving with any non-zero wheel speed + if (addr == MSG_SUBARU_PG_Wheel_Speeds) { + vehicle_moving = ((GET_BYTES(to_push, 0, 4) >> 12) != 0U) || (GET_BYTES(to_push, 4, 4) != 0U); + } + + if (addr == MSG_SUBARU_PG_Brake_Pedal) { + brake_pressed = ((GET_BYTES(to_push, 0, 4) >> 16) & 0xFFU) > 0U; + } + + if (addr == MSG_SUBARU_PG_Throttle) { + gas_pressed = GET_BYTE(to_push, 0) != 0U; + } + + generic_rx_checks((addr == MSG_SUBARU_PG_ES_LKAS)); + } +} + +static bool subaru_preglobal_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits SUBARU_PG_STEERING_LIMITS = { + .max_steer = 2047, + .max_rt_delta = 940, + .max_rt_interval = 250000, + .max_rate_up = 50, + .max_rate_down = 70, + .driver_torque_multiplier = 10, + .driver_torque_allowance = 75, + .type = TorqueDriverLimited, + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + + // steer cmd checks + if (addr == MSG_SUBARU_PG_ES_LKAS) { + int desired_torque = ((GET_BYTES(to_send, 0, 4) >> 8) & 0x1FFFU); + desired_torque = -1 * to_signed(desired_torque, 13); + + bool steer_req = GET_BIT(to_send, 24U); + + if (steer_torque_cmd_checks(desired_torque, steer_req, SUBARU_PG_STEERING_LIMITS)) { + tx = false; + } + + } + return tx; +} + +static int subaru_preglobal_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + if (bus_num == SUBARU_PG_MAIN_BUS) { + bus_fwd = SUBARU_PG_CAM_BUS; // Camera CAN + } + + if (bus_num == SUBARU_PG_CAM_BUS) { + bool block_msg = ((addr == MSG_SUBARU_PG_ES_Distance) || (addr == MSG_SUBARU_PG_ES_LKAS)); + if (!block_msg) { + bus_fwd = SUBARU_PG_MAIN_BUS; // Main CAN + } + } + + return bus_fwd; +} + +static safety_config subaru_preglobal_init(uint16_t param) { + static const CanMsg SUBARU_PG_TX_MSGS[] = { + {MSG_SUBARU_PG_ES_Distance, SUBARU_PG_MAIN_BUS, 8}, + {MSG_SUBARU_PG_ES_LKAS, SUBARU_PG_MAIN_BUS, 8} + }; + + // TODO: do checksum and counter checks after adding the signals to the outback dbc file + static RxCheck subaru_preglobal_rx_checks[] = { + {.msg = {{MSG_SUBARU_PG_Throttle, SUBARU_PG_MAIN_BUS, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MSG_SUBARU_PG_Steering_Torque, SUBARU_PG_MAIN_BUS, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MSG_SUBARU_PG_CruiseControl, SUBARU_PG_MAIN_BUS, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 20U}, { 0 }, { 0 }}}, + }; + + const int SUBARU_PG_PARAM_REVERSED_DRIVER_TORQUE = 4; + + subaru_pg_reversed_driver_torque = GET_FLAG(param, SUBARU_PG_PARAM_REVERSED_DRIVER_TORQUE); + return BUILD_SAFETY_CFG(subaru_preglobal_rx_checks, SUBARU_PG_TX_MSGS); +} + +const safety_hooks subaru_preglobal_hooks = { + .init = subaru_preglobal_init, + .rx = subaru_preglobal_rx_hook, + .tx = subaru_preglobal_tx_hook, + .fwd = subaru_preglobal_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_tesla.h b/opendbc_repo/opendbc/safety/safety/safety_tesla.h new file mode 100644 index 0000000000..611a4edeb4 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_tesla.h @@ -0,0 +1,214 @@ +#pragma once + +#include "safety_declarations.h" + +static bool tesla_longitudinal = false; +static bool tesla_stock_aeb = false; + +static void tesla_rx_hook(const CANPacket_t *to_push) { + int bus = GET_BUS(to_push); + int addr = GET_ADDR(to_push); + + if (bus == 0) { + // Steering angle: (0.1 * val) - 819.2 in deg. + if (addr == 0x370) { + // Store it 1/10 deg to match steering request + int angle_meas_new = (((GET_BYTE(to_push, 4) & 0x3FU) << 8) | GET_BYTE(to_push, 5)) - 8192U; + update_sample(&angle_meas, angle_meas_new); + } + + // Vehicle speed + if (addr == 0x257) { + // Vehicle speed: ((val * 0.08) - 40) / MS_TO_KPH + float speed = ((((GET_BYTE(to_push, 2) << 4) | (GET_BYTE(to_push, 1) >> 4)) * 0.08) - 40) / 3.6; + UPDATE_VEHICLE_SPEED(speed); + } + + // Gas pressed + if (addr == 0x118) { + gas_pressed = (GET_BYTE(to_push, 4) != 0U); + } + + // Brake pressed + if (addr == 0x39d) { + brake_pressed = (GET_BYTE(to_push, 2) & 0x03U) == 2U; + } + + // Cruise state + if (addr == 0x286) { + int cruise_state = (GET_BYTE(to_push, 1) >> 4) & 0x07U; + bool cruise_engaged = (cruise_state == 2) || // ENABLED + (cruise_state == 3) || // STANDSTILL + (cruise_state == 4) || // OVERRIDE + (cruise_state == 6) || // PRE_FAULT + (cruise_state == 7); // PRE_CANCEL + + vehicle_moving = cruise_state != 3; // STANDSTILL + pcm_cruise_check(cruise_engaged); + } + } + + if (bus == 2) { + if (tesla_longitudinal && (addr == 0x2b9)) { + // "AEB_ACTIVE" + tesla_stock_aeb = (GET_BYTE(to_push, 2) & 0x03U) == 1U; + } + } + + generic_rx_checks((addr == 0x488) && (bus == 0)); // DAS_steeringControl + generic_rx_checks((addr == 0x27d) && (bus == 0)); // APS_eacMonitor + + if (tesla_longitudinal) { + generic_rx_checks((addr == 0x2b9) && (bus == 0)); + } +} + + +static bool tesla_tx_hook(const CANPacket_t *to_send) { + const AngleSteeringLimits TESLA_STEERING_LIMITS = { + .max_angle = 3600, // 360 deg, EPAS faults above this + .angle_deg_to_can = 10, + .angle_rate_up_lookup = { + {0., 5., 25.}, + {2.5, 1.5, 0.2} + }, + .angle_rate_down_lookup = { + {0., 5., 25.}, + {5., 2.0, 0.3} + }, + }; + + const LongitudinalLimits TESLA_LONG_LIMITS = { + .max_accel = 425, // 2 m/s^2 + .min_accel = 288, // -3.48 m/s^2 + .inactive_accel = 375, // 0. m/s^2 + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + bool violation = false; + + // Steering control: (0.1 * val) - 1638.35 in deg. + if (addr == 0x488) { + // We use 1/10 deg as a unit here + int raw_angle_can = ((GET_BYTE(to_send, 0) & 0x7FU) << 8) | GET_BYTE(to_send, 1); + int desired_angle = raw_angle_can - 16384; + int steer_control_type = GET_BYTE(to_send, 2) >> 6; + bool steer_control_enabled = (steer_control_type != 0) && // NONE + (steer_control_type != 3); // DISABLED + + if (steer_angle_cmd_checks(desired_angle, steer_control_enabled, TESLA_STEERING_LIMITS)) { + violation = true; + } + } + + // DAS_control: longitudinal control message + if (addr == 0x2b9) { + // No AEB events may be sent by openpilot + int aeb_event = GET_BYTE(to_send, 2) & 0x03U; + if (aeb_event != 0) { + violation = true; + } + + int raw_accel_max = ((GET_BYTE(to_send, 6) & 0x1FU) << 4) | (GET_BYTE(to_send, 5) >> 4); + int raw_accel_min = ((GET_BYTE(to_send, 5) & 0x0FU) << 5) | (GET_BYTE(to_send, 4) >> 3); + int acc_state = GET_BYTE(to_send, 1) >> 4; + + if (tesla_longitudinal) { + // Don't send messages when the stock AEB system is active + if (tesla_stock_aeb) { + violation = true; + } + + // Prevent both acceleration from being negative, as this could cause the car to reverse after coming to standstill + if ((raw_accel_max < TESLA_LONG_LIMITS.inactive_accel) && (raw_accel_min < TESLA_LONG_LIMITS.inactive_accel)) { + violation = true; + } + + // Don't allow any acceleration limits above the safety limits + violation |= longitudinal_accel_checks(raw_accel_max, TESLA_LONG_LIMITS); + violation |= longitudinal_accel_checks(raw_accel_min, TESLA_LONG_LIMITS); + } else { + // does allowing cancel here disrupt stock AEB? TODO: find out and add safety or remove comment + // Can only send cancel longitudinal messages when not controlling longitudinal + if (acc_state != 13) { // ACC_CANCEL_GENERIC_SILENT + violation = true; + } + + // No actuation is allowed when not controlling longitudinal + if ((raw_accel_max != TESLA_LONG_LIMITS.inactive_accel) || (raw_accel_min != TESLA_LONG_LIMITS.inactive_accel)) { + violation = true; + } + } + } + + if (violation) { + tx = false; + } + + return tx; +} + +static int tesla_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + if (bus_num == 0) { + // Party to autopilot + bus_fwd = 2; + } + + if (bus_num == 2) { + bool block_msg = false; + // DAS_steeringControl, APS_eacMonitor + if ((addr == 0x488) || (addr == 0x27d)) { + block_msg = true; + } + + // DAS_control + if (tesla_longitudinal && (addr == 0x2b9) && !tesla_stock_aeb) { + block_msg = true; + } + + if (!block_msg) { + bus_fwd = 0; + } + } + + return bus_fwd; +} + +static safety_config tesla_init(uint16_t param) { + + static const CanMsg TESLA_M3_Y_TX_MSGS[] = { + {0x488, 0, 4}, // DAS_steeringControl + {0x2b9, 0, 8}, // DAS_control + {0x27D, 0, 3}, // APS_eacMonitor + }; + + UNUSED(param); +#ifdef ALLOW_DEBUG + const int TESLA_FLAG_LONGITUDINAL_CONTROL = 1; + tesla_longitudinal = GET_FLAG(param, TESLA_FLAG_LONGITUDINAL_CONTROL); +#endif + + tesla_stock_aeb = false; + + static RxCheck tesla_model3_y_rx_checks[] = { + {.msg = {{0x2b9, 2, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 25U}, { 0 }, { 0 }}}, // DAS_control + {.msg = {{0x257, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 50U}, { 0 }, { 0 }}}, // DI_speed (speed in kph) + {.msg = {{0x370, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 100U}, { 0 }, { 0 }}}, // EPAS3S_internalSAS (steering angle) + {.msg = {{0x118, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 100U}, { 0 }, { 0 }}}, // DI_systemStatus (gas pedal) + {.msg = {{0x39d, 0, 5, .ignore_checksum = true, .ignore_counter = true,.frequency = 25U}, { 0 }, { 0 }}}, // IBST_status (brakes) + {.msg = {{0x286, 0, 8, .ignore_checksum = true, .ignore_counter = true,.frequency = 10U}, { 0 }, { 0 }}}, // DI_state (acc state) + {.msg = {{0x311, 0, 7, .ignore_checksum = true, .ignore_counter = true,.frequency = 10U}, { 0 }, { 0 }}}, // UI_warning (blinkers, buckle switch & doors) + }; + + return BUILD_SAFETY_CFG(tesla_model3_y_rx_checks, TESLA_M3_Y_TX_MSGS); +} + +const safety_hooks tesla_hooks = { + .init = tesla_init, + .rx = tesla_rx_hook, + .tx = tesla_tx_hook, + .fwd = tesla_fwd_hook, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_toyota.h b/opendbc_repo/opendbc/safety/safety/safety_toyota.h new file mode 100644 index 0000000000..4326ca32ef --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_toyota.h @@ -0,0 +1,414 @@ +#pragma once + +#include "safety_declarations.h" + +// Stock longitudinal +#define TOYOTA_BASE_TX_MSGS \ + {0x191, 0, 8}, {0x412, 0, 8}, {0x343, 0, 8}, {0x1D2, 0, 8}, /* LKAS + LTA + ACC & PCM cancel cmds */ \ + +#define TOYOTA_COMMON_TX_MSGS \ + TOYOTA_BASE_TX_MSGS \ + {0x2E4, 0, 5}, \ + +#define TOYOTA_COMMON_SECOC_TX_MSGS \ + TOYOTA_BASE_TX_MSGS \ + {0x2E4, 0, 8}, {0x131, 0, 8}, \ + +#define TOYOTA_COMMON_LONG_TX_MSGS \ + TOYOTA_COMMON_TX_MSGS \ + {0x283, 0, 7}, {0x2E6, 0, 8}, {0x2E7, 0, 8}, {0x33E, 0, 7}, {0x344, 0, 8}, {0x365, 0, 7}, {0x366, 0, 7}, {0x4CB, 0, 8}, /* DSU bus 0 */ \ + {0x128, 1, 6}, {0x141, 1, 4}, {0x160, 1, 8}, {0x161, 1, 7}, {0x470, 1, 4}, /* DSU bus 1 */ \ + {0x411, 0, 8}, /* PCS_HUD */ \ + {0x750, 0, 8}, /* radar diagnostic address */ \ + +#define TOYOTA_COMMON_RX_CHECKS(lta) \ + {.msg = {{ 0xaa, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 83U}, { 0 }, { 0 }}}, \ + {.msg = {{0x260, 0, 8, .ignore_counter = true, .quality_flag = (lta), .frequency = 50U}, { 0 }, { 0 }}}, \ + {.msg = {{0x1D2, 0, 8, .ignore_counter = true, .frequency = 33U}, \ + {0x176, 0, 8, .ignore_counter = true, .frequency = 32U}, { 0 }}}, \ + {.msg = {{0x101, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, \ + {0x224, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}, \ + {0x226, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 40U}}}, \ + +static bool toyota_secoc = false; +static bool toyota_alt_brake = false; +static bool toyota_stock_longitudinal = false; +static bool toyota_lta = false; +static int toyota_dbc_eps_torque_factor = 100; // conversion factor for STEER_TORQUE_EPS in %: see dbc file + +static uint32_t toyota_compute_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + int len = GET_LEN(to_push); + uint8_t checksum = (uint8_t)(addr) + (uint8_t)((unsigned int)(addr) >> 8U) + (uint8_t)(len); + for (int i = 0; i < (len - 1); i++) { + checksum += (uint8_t)GET_BYTE(to_push, i); + } + return checksum; +} + +static uint32_t toyota_get_checksum(const CANPacket_t *to_push) { + int checksum_byte = GET_LEN(to_push) - 1U; + return (uint8_t)(GET_BYTE(to_push, checksum_byte)); +} + +static bool toyota_get_quality_flag_valid(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + bool valid = false; + if (addr == 0x260) { + valid = !GET_BIT(to_push, 3U); // STEER_ANGLE_INITIALIZING + } + return valid; +} + +static void toyota_rx_hook(const CANPacket_t *to_push) { + if (GET_BUS(to_push) == 0U) { + int addr = GET_ADDR(to_push); + + // get eps motor torque (0.66 factor in dbc) + if (addr == 0x260) { + int torque_meas_new = (GET_BYTE(to_push, 5) << 8) | GET_BYTE(to_push, 6); + torque_meas_new = to_signed(torque_meas_new, 16); + + // scale by dbc_factor + torque_meas_new = (torque_meas_new * toyota_dbc_eps_torque_factor) / 100; + + // update array of sample + update_sample(&torque_meas, torque_meas_new); + + // increase torque_meas by 1 to be conservative on rounding + torque_meas.min--; + torque_meas.max++; + + // driver torque for angle limiting + int torque_driver_new = (GET_BYTE(to_push, 1) << 8) | GET_BYTE(to_push, 2); + torque_driver_new = to_signed(torque_driver_new, 16); + update_sample(&torque_driver, torque_driver_new); + + // LTA request angle should match current angle while inactive, clipped to max accepted angle. + // note that angle can be relative to init angle on some TSS2 platforms, LTA has the same offset + bool steer_angle_initializing = GET_BIT(to_push, 3U); + if (!steer_angle_initializing) { + int angle_meas_new = (GET_BYTE(to_push, 3) << 8U) | GET_BYTE(to_push, 4); + angle_meas_new = to_signed(angle_meas_new, 16); + update_sample(&angle_meas, angle_meas_new); + } + } + + // enter controls on rising edge of ACC, exit controls on ACC off + // exit controls on rising edge of gas press, if not alternative experience + // exit controls on rising edge of brake press + if (toyota_secoc) { + if (addr == 0x176) { + bool cruise_engaged = GET_BIT(to_push, 5U); // PCM_CRUISE.CRUISE_ACTIVE + pcm_cruise_check(cruise_engaged); + } + if (addr == 0x116) { + gas_pressed = GET_BYTE(to_push, 1) != 0U; // GAS_PEDAL.GAS_PEDAL_USER + } + if (addr == 0x101) { + brake_pressed = GET_BIT(to_push, 3U); // BRAKE_MODULE.BRAKE_PRESSED (toyota_rav4_prime_generated.dbc) + } + } else { + if (addr == 0x1D2) { + bool cruise_engaged = GET_BIT(to_push, 5U); // PCM_CRUISE.CRUISE_ACTIVE + pcm_cruise_check(cruise_engaged); + gas_pressed = !GET_BIT(to_push, 4U); // PCM_CRUISE.GAS_RELEASED + } + if (!toyota_alt_brake && (addr == 0x226)) { + brake_pressed = GET_BIT(to_push, 37U); // BRAKE_MODULE.BRAKE_PRESSED (toyota_nodsu_pt_generated.dbc) + } + if (toyota_alt_brake && (addr == 0x224)) { + brake_pressed = GET_BIT(to_push, 5U); // BRAKE_MODULE.BRAKE_PRESSED (toyota_new_mc_pt_generated.dbc) + } + } + + // sample speed + if (addr == 0xaa) { + int speed = 0; + // sum 4 wheel speeds. conversion: raw * 0.01 - 67.67 + for (uint8_t i = 0U; i < 8U; i += 2U) { + int wheel_speed = (GET_BYTE(to_push, i) << 8U) | GET_BYTE(to_push, (i + 1U)); + speed += wheel_speed - 6767; + } + // check that all wheel speeds are at zero value + vehicle_moving = speed != 0; + + UPDATE_VEHICLE_SPEED(speed / 4.0 * 0.01 / 3.6); + } + + bool stock_ecu_detected = addr == 0x2E4; // STEERING_LKA + if (!toyota_stock_longitudinal && (addr == 0x343)) { + stock_ecu_detected = true; // ACC_CONTROL + } + generic_rx_checks(stock_ecu_detected); + } +} + +static bool toyota_tx_hook(const CANPacket_t *to_send) { + const TorqueSteeringLimits TOYOTA_TORQUE_STEERING_LIMITS = { + .max_steer = 1500, + .max_rate_up = 15, // ramp up slow + .max_rate_down = 25, // ramp down fast + .max_torque_error = 350, // max torque cmd in excess of motor torque + .max_rt_delta = 450, // the real time limit is 1800/sec, a 20% buffer + .max_rt_interval = 250000, + .type = TorqueMotorLimited, + + // the EPS faults when the steering angle rate is above a certain threshold for too long. to prevent this, + // we allow setting STEER_REQUEST bit to 0 while maintaining the requested torque value for a single frame + .min_valid_request_frames = 18, + .max_invalid_request_frames = 1, + .min_valid_request_rt_interval = 170000, // 170ms; a ~10% buffer on cutting every 19 frames + .has_steer_req_tolerance = true, + }; + + static const AngleSteeringLimits TOYOTA_ANGLE_STEERING_LIMITS = { + // LTA angle limits + // factor for STEER_TORQUE_SENSOR->STEER_ANGLE and STEERING_LTA->STEER_ANGLE_CMD (1 / 0.0573) + .max_angle = 1657, // EPS only accepts up to 94.9461 + .angle_deg_to_can = 17.452007, + .angle_rate_up_lookup = { + {5., 25., 25.}, + {0.3, 0.15, 0.15} + }, + .angle_rate_down_lookup = { + {5., 25., 25.}, + {0.36, 0.26, 0.26} + }, + }; + + const int TOYOTA_LTA_MAX_MEAS_TORQUE = 1500; + const int TOYOTA_LTA_MAX_DRIVER_TORQUE = 150; + + // longitudinal limits + const LongitudinalLimits TOYOTA_LONG_LIMITS = { + .max_accel = 2000, // 2.0 m/s2 + .min_accel = -3500, // -3.5 m/s2 + }; + + bool tx = true; + int addr = GET_ADDR(to_send); + int bus = GET_BUS(to_send); + + // Check if msg is sent on BUS 0 + if (bus == 0) { + // ACCEL: safety check on byte 1-2 + if (addr == 0x343) { + int desired_accel = (GET_BYTE(to_send, 0) << 8) | GET_BYTE(to_send, 1); + desired_accel = to_signed(desired_accel, 16); + + bool violation = false; + violation |= longitudinal_accel_checks(desired_accel, TOYOTA_LONG_LIMITS); + + // only ACC messages that cancel are allowed when openpilot is not controlling longitudinal + if (toyota_stock_longitudinal) { + bool cancel_req = GET_BIT(to_send, 24U); + if (!cancel_req) { + violation = true; + } + if (desired_accel != TOYOTA_LONG_LIMITS.inactive_accel) { + violation = true; + } + } + + if (violation) { + tx = false; + } + } + + // AEB: block all actuation. only used when DSU is unplugged + if (addr == 0x283) { + // only allow the checksum, which is the last byte + bool block = (GET_BYTES(to_send, 0, 4) != 0U) || (GET_BYTE(to_send, 4) != 0U) || (GET_BYTE(to_send, 5) != 0U); + if (block) { + tx = false; + } + } + + // STEERING_LTA angle steering check + if (addr == 0x191) { + // check the STEER_REQUEST, STEER_REQUEST_2, TORQUE_WIND_DOWN, STEER_ANGLE_CMD signals + bool lta_request = GET_BIT(to_send, 0U); + bool lta_request2 = GET_BIT(to_send, 25U); + int torque_wind_down = GET_BYTE(to_send, 5); + int lta_angle = (GET_BYTE(to_send, 1) << 8) | GET_BYTE(to_send, 2); + lta_angle = to_signed(lta_angle, 16); + + bool steer_control_enabled = lta_request || lta_request2; + if (!toyota_lta) { + // using torque (LKA), block LTA msgs with actuation requests + if (steer_control_enabled || (lta_angle != 0) || (torque_wind_down != 0)) { + tx = false; + } + } else { + // check angle rate limits and inactive angle + if (steer_angle_cmd_checks(lta_angle, steer_control_enabled, TOYOTA_ANGLE_STEERING_LIMITS)) { + tx = false; + } + + if (lta_request != lta_request2) { + tx = false; + } + + // TORQUE_WIND_DOWN is gated on steer request + if (!steer_control_enabled && (torque_wind_down != 0)) { + tx = false; + } + + // TORQUE_WIND_DOWN can only be no or full torque + if ((torque_wind_down != 0) && (torque_wind_down != 100)) { + tx = false; + } + + // check if we should wind down torque + int driver_torque = MIN(ABS(torque_driver.min), ABS(torque_driver.max)); + if ((driver_torque > TOYOTA_LTA_MAX_DRIVER_TORQUE) && (torque_wind_down != 0)) { + tx = false; + } + + int eps_torque = MIN(ABS(torque_meas.min), ABS(torque_meas.max)); + if ((eps_torque > TOYOTA_LTA_MAX_MEAS_TORQUE) && (torque_wind_down != 0)) { + tx = false; + } + } + } + + // STEERING_LTA_2 angle steering check (SecOC) + if (toyota_secoc && (addr == 0x131)) { + // SecOC cars block any form of LTA actuation for now + bool lta_request = GET_BIT(to_send, 3U); // STEERING_LTA_2.STEER_REQUEST + bool lta_request2 = GET_BIT(to_send, 0U); // STEERING_LTA_2.STEER_REQUEST_2 + int lta_angle_msb = GET_BYTE(to_send, 2); // STEERING_LTA_2.STEER_ANGLE_CMD (MSB) + int lta_angle_lsb = GET_BYTE(to_send, 3); // STEERING_LTA_2.STEER_ANGLE_CMD (LSB) + + bool actuation = lta_request || lta_request2 || (lta_angle_msb != 0) || (lta_angle_lsb != 0); + if (actuation) { + tx = false; + } + } + + // STEER: safety check on bytes 2-3 + if (addr == 0x2E4) { + int desired_torque = (GET_BYTE(to_send, 1) << 8) | GET_BYTE(to_send, 2); + desired_torque = to_signed(desired_torque, 16); + bool steer_req = GET_BIT(to_send, 0U); + // When using LTA (angle control), assert no actuation on LKA message + if (!toyota_lta) { + if (steer_torque_cmd_checks(desired_torque, steer_req, TOYOTA_TORQUE_STEERING_LIMITS)) { + tx = false; + } + } else { + if ((desired_torque != 0) || steer_req) { + tx = false; + } + } + } + } + + // UDS: Only tester present ("\x0F\x02\x3E\x00\x00\x00\x00\x00") allowed on diagnostics address + if (addr == 0x750) { + // this address is sub-addressed. only allow tester present to radar (0xF) + bool invalid_uds_msg = (GET_BYTES(to_send, 0, 4) != 0x003E020FU) || (GET_BYTES(to_send, 4, 4) != 0x0U); + if (invalid_uds_msg) { + tx = 0; + } + } + + return tx; +} + +static safety_config toyota_init(uint16_t param) { + static const CanMsg TOYOTA_TX_MSGS[] = { + TOYOTA_COMMON_TX_MSGS + }; + + static const CanMsg TOYOTA_SECOC_TX_MSGS[] = { + TOYOTA_COMMON_SECOC_TX_MSGS + }; + + static const CanMsg TOYOTA_LONG_TX_MSGS[] = { + TOYOTA_COMMON_LONG_TX_MSGS + }; + + // safety param flags + // first byte is for EPS factor, second is for flags + const uint32_t TOYOTA_PARAM_OFFSET = 8U; + const uint32_t TOYOTA_EPS_FACTOR = (1UL << TOYOTA_PARAM_OFFSET) - 1U; + const uint32_t TOYOTA_PARAM_ALT_BRAKE = 1UL << TOYOTA_PARAM_OFFSET; + const uint32_t TOYOTA_PARAM_STOCK_LONGITUDINAL = 2UL << TOYOTA_PARAM_OFFSET; + const uint32_t TOYOTA_PARAM_LTA = 4UL << TOYOTA_PARAM_OFFSET; + +#ifdef ALLOW_DEBUG + const uint32_t TOYOTA_PARAM_SECOC = 8UL << TOYOTA_PARAM_OFFSET; + toyota_secoc = GET_FLAG(param, TOYOTA_PARAM_SECOC); +#endif + + toyota_alt_brake = GET_FLAG(param, TOYOTA_PARAM_ALT_BRAKE); + toyota_stock_longitudinal = GET_FLAG(param, TOYOTA_PARAM_STOCK_LONGITUDINAL); + toyota_lta = GET_FLAG(param, TOYOTA_PARAM_LTA); + toyota_dbc_eps_torque_factor = param & TOYOTA_EPS_FACTOR; + + safety_config ret; + if (toyota_stock_longitudinal) { + if (toyota_secoc) { + SET_TX_MSGS(TOYOTA_SECOC_TX_MSGS, ret); + } else { + SET_TX_MSGS(TOYOTA_TX_MSGS, ret); + } + } else { + SET_TX_MSGS(TOYOTA_LONG_TX_MSGS, ret); + } + + if (toyota_lta) { + // Check the quality flag for angle measurement when using LTA, since it's not set on TSS-P cars + static RxCheck toyota_lta_rx_checks[] = { + TOYOTA_COMMON_RX_CHECKS(true) + }; + + SET_RX_CHECKS(toyota_lta_rx_checks, ret); + } else { + static RxCheck toyota_lka_rx_checks[] = { + TOYOTA_COMMON_RX_CHECKS(false) + }; + + SET_RX_CHECKS(toyota_lka_rx_checks, ret); + } + + return ret; +} + +static int toyota_fwd_hook(int bus_num, int addr) { + + int bus_fwd = -1; + + if (bus_num == 0) { + bus_fwd = 2; + } + + if (bus_num == 2) { + // block stock lkas messages and stock acc messages (if OP is doing ACC) + // in TSS2, 0x191 is LTA which we need to block to avoid controls collision + bool is_lkas_msg = ((addr == 0x2E4) || (addr == 0x412) || (addr == 0x191)); + // on SecOC cars 0x131 is also LTA + is_lkas_msg |= toyota_secoc && (addr == 0x131); + // in TSS2 the camera does ACC as well, so filter 0x343 + bool is_acc_msg = (addr == 0x343); + bool block_msg = is_lkas_msg || (is_acc_msg && !toyota_stock_longitudinal); + if (!block_msg) { + bus_fwd = 0; + } + } + + return bus_fwd; +} + +const safety_hooks toyota_hooks = { + .init = toyota_init, + .rx = toyota_rx_hook, + .tx = toyota_tx_hook, + .fwd = toyota_fwd_hook, + .get_checksum = toyota_get_checksum, + .compute_checksum = toyota_compute_checksum, + .get_quality_flag_valid = toyota_get_quality_flag_valid, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h new file mode 100644 index 0000000000..1285bb883e --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_common.h @@ -0,0 +1,71 @@ +#pragma once + +extern const uint16_t FLAG_VOLKSWAGEN_LONG_CONTROL; +const uint16_t FLAG_VOLKSWAGEN_LONG_CONTROL = 1; + +static uint8_t volkswagen_crc8_lut_8h2f[256]; // Static lookup table for CRC8 poly 0x2F, aka 8H2F/AUTOSAR + +extern bool volkswagen_longitudinal; +bool volkswagen_longitudinal = false; + +extern bool volkswagen_set_button_prev; +bool volkswagen_set_button_prev = false; + +extern bool volkswagen_resume_button_prev; +bool volkswagen_resume_button_prev = false; + + +#define MSG_LH_EPS_03 0x09F // RX from EPS, for driver steering torque +#define MSG_ESP_19 0x0B2 // RX from ABS, for wheel speeds +#define MSG_ESP_05 0x106 // RX from ABS, for brake switch state +#define MSG_TSK_06 0x120 // RX from ECU, for ACC status from drivetrain coordinator +#define MSG_MOTOR_20 0x121 // RX from ECU, for driver throttle input +#define MSG_ACC_06 0x122 // TX by OP, ACC control instructions to the drivetrain coordinator +#define MSG_HCA_01 0x126 // TX by OP, Heading Control Assist steering torque +#define MSG_GRA_ACC_01 0x12B // TX by OP, ACC control buttons for cancel/resume +#define MSG_ACC_07 0x12E // TX by OP, ACC control instructions to the drivetrain coordinator +#define MSG_ACC_02 0x30C // TX by OP, ACC HUD data to the instrument cluster +#define MSG_LDW_02 0x397 // TX by OP, Lane line recognition and text alerts +#define MSG_MOTOR_14 0x3BE // RX from ECU, for brake switch status + + +static uint32_t volkswagen_mqb_meb_get_checksum(const CANPacket_t *to_push) { + return (uint8_t)GET_BYTE(to_push, 0); +} + +static uint8_t volkswagen_mqb_meb_get_counter(const CANPacket_t *to_push) { + // MQB/MEB message counters are consistently found at LSB 8. + return (uint8_t)GET_BYTE(to_push, 1) & 0xFU; +} + +static uint32_t volkswagen_mqb_meb_compute_crc(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + int len = GET_LEN(to_push); + + // This is CRC-8H2F/AUTOSAR with a twist. See the OpenDBC implementation + // of this algorithm for a version with explanatory comments. + + uint8_t crc = 0xFFU; + for (int i = 1; i < len; i++) { + crc ^= (uint8_t)GET_BYTE(to_push, i); + crc = volkswagen_crc8_lut_8h2f[crc]; + } + + uint8_t counter = volkswagen_mqb_meb_get_counter(to_push); + if (addr == MSG_LH_EPS_03) { + crc ^= (uint8_t[]){0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5,0xF5}[counter]; + } else if (addr == MSG_ESP_05) { + crc ^= (uint8_t[]){0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07,0x07}[counter]; + } else if (addr == MSG_TSK_06) { + crc ^= (uint8_t[]){0xC4,0xE2,0x4F,0xE4,0xF8,0x2F,0x56,0x81,0x9F,0xE5,0x83,0x44,0x05,0x3F,0x97,0xDF}[counter]; + } else if (addr == MSG_MOTOR_20) { + crc ^= (uint8_t[]){0xE9,0x65,0xAE,0x6B,0x7B,0x35,0xE5,0x5F,0x4E,0xC7,0x86,0xA2,0xBB,0xDD,0xEB,0xB4}[counter]; + } else if (addr == MSG_GRA_ACC_01) { + crc ^= (uint8_t[]){0x6A,0x38,0xB4,0x27,0x22,0xEF,0xE1,0xBB,0xF8,0x80,0x84,0x49,0xC7,0x9E,0x1E,0x2B}[counter]; + } else { + // Undefined CAN message, CRC check expected to fail + } + crc = volkswagen_crc8_lut_8h2f[crc]; + + return (uint8_t)(crc ^ 0xFFU); +} diff --git a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h new file mode 100644 index 0000000000..be13c6fd9c --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_mqb.h @@ -0,0 +1,248 @@ +#pragma once + +#include "safety_declarations.h" +#include "safety_volkswagen_common.h" + +static bool volkswagen_mqb_brake_pedal_switch = false; +static bool volkswagen_mqb_brake_pressure_detected = false; + + +static safety_config volkswagen_mqb_init(uint16_t param) { + // Transmit of GRA_ACC_01 is allowed on bus 0 and 2 to keep compatibility with gateway and camera integration + static const CanMsg VOLKSWAGEN_MQB_STOCK_TX_MSGS[] = {{MSG_HCA_01, 0, 8}, {MSG_GRA_ACC_01, 0, 8}, {MSG_GRA_ACC_01, 2, 8}, + {MSG_LDW_02, 0, 8}, {MSG_LH_EPS_03, 2, 8}}; + + static const CanMsg VOLKSWAGEN_MQB_LONG_TX_MSGS[] = {{MSG_HCA_01, 0, 8}, {MSG_LDW_02, 0, 8}, {MSG_LH_EPS_03, 2, 8}, + {MSG_ACC_02, 0, 8}, {MSG_ACC_06, 0, 8}, {MSG_ACC_07, 0, 8}}; + + static RxCheck volkswagen_mqb_rx_checks[] = { + {.msg = {{MSG_ESP_19, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MSG_LH_EPS_03, 0, 8, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MSG_ESP_05, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MSG_TSK_06, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MSG_MOTOR_20, 0, 8, .max_counter = 15U, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MSG_MOTOR_14, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 10U}, { 0 }, { 0 }}}, + {.msg = {{MSG_GRA_ACC_01, 0, 8, .max_counter = 15U, .frequency = 33U}, { 0 }, { 0 }}}, + }; + + UNUSED(param); + + volkswagen_set_button_prev = false; + volkswagen_resume_button_prev = false; + volkswagen_mqb_brake_pedal_switch = false; + volkswagen_mqb_brake_pressure_detected = false; + +#ifdef ALLOW_DEBUG + volkswagen_longitudinal = GET_FLAG(param, FLAG_VOLKSWAGEN_LONG_CONTROL); +#endif + gen_crc_lookup_table_8(0x2F, volkswagen_crc8_lut_8h2f); + return volkswagen_longitudinal ? BUILD_SAFETY_CFG(volkswagen_mqb_rx_checks, VOLKSWAGEN_MQB_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(volkswagen_mqb_rx_checks, VOLKSWAGEN_MQB_STOCK_TX_MSGS); +} + +static void volkswagen_mqb_rx_hook(const CANPacket_t *to_push) { + if (GET_BUS(to_push) == 0U) { + int addr = GET_ADDR(to_push); + + // Update in-motion state by sampling wheel speeds + if (addr == MSG_ESP_19) { + // sum 4 wheel speeds + int speed = 0; + for (uint8_t i = 0U; i < 8U; i += 2U) { + int wheel_speed = GET_BYTE(to_push, i) | (GET_BYTE(to_push, i + 1U) << 8); + speed += wheel_speed; + } + // Check all wheel speeds for any movement + vehicle_moving = speed > 0; + } + + // Update driver input torque samples + // Signal: LH_EPS_03.EPS_Lenkmoment (absolute torque) + // Signal: LH_EPS_03.EPS_VZ_Lenkmoment (direction) + if (addr == MSG_LH_EPS_03) { + int torque_driver_new = GET_BYTE(to_push, 5) | ((GET_BYTE(to_push, 6) & 0x1FU) << 8); + int sign = (GET_BYTE(to_push, 6) & 0x80U) >> 7; + if (sign == 1) { + torque_driver_new *= -1; + } + update_sample(&torque_driver, torque_driver_new); + } + + if (addr == MSG_TSK_06) { + // When using stock ACC, enter controls on rising edge of stock ACC engage, exit on disengage + // Always exit controls on main switch off + // Signal: TSK_06.TSK_Status + int acc_status = (GET_BYTE(to_push, 3) & 0x7U); + bool cruise_engaged = (acc_status == 3) || (acc_status == 4) || (acc_status == 5); + acc_main_on = cruise_engaged || (acc_status == 2); + + if (!volkswagen_longitudinal) { + pcm_cruise_check(cruise_engaged); + } + + if (!acc_main_on) { + controls_allowed = false; + } + } + + if (addr == MSG_GRA_ACC_01) { + // If using openpilot longitudinal, enter controls on falling edge of Set or Resume with main switch on + // Signal: GRA_ACC_01.GRA_Tip_Setzen + // Signal: GRA_ACC_01.GRA_Tip_Wiederaufnahme + if (volkswagen_longitudinal) { + bool set_button = GET_BIT(to_push, 16U); + bool resume_button = GET_BIT(to_push, 19U); + if ((volkswagen_set_button_prev && !set_button) || (volkswagen_resume_button_prev && !resume_button)) { + controls_allowed = acc_main_on; + } + volkswagen_set_button_prev = set_button; + volkswagen_resume_button_prev = resume_button; + } + // Always exit controls on rising edge of Cancel + // Signal: GRA_ACC_01.GRA_Abbrechen + if (GET_BIT(to_push, 13U)) { + controls_allowed = false; + } + } + + // Signal: Motor_20.MO_Fahrpedalrohwert_01 + if (addr == MSG_MOTOR_20) { + gas_pressed = ((GET_BYTES(to_push, 0, 4) >> 12) & 0xFFU) != 0U; + } + + // Signal: Motor_14.MO_Fahrer_bremst (ECU detected brake pedal switch F63) + if (addr == MSG_MOTOR_14) { + volkswagen_mqb_brake_pedal_switch = (GET_BYTE(to_push, 3) & 0x10U) >> 4; + } + + // Signal: ESP_05.ESP_Fahrer_bremst (ESP detected driver brake pressure above platform specified threshold) + if (addr == MSG_ESP_05) { + volkswagen_mqb_brake_pressure_detected = (GET_BYTE(to_push, 3) & 0x4U) >> 2; + } + + brake_pressed = volkswagen_mqb_brake_pedal_switch || volkswagen_mqb_brake_pressure_detected; + + generic_rx_checks((addr == MSG_HCA_01)); + } +} + +static bool volkswagen_mqb_tx_hook(const CANPacket_t *to_send) { + // lateral limits + const TorqueSteeringLimits VOLKSWAGEN_MQB_STEERING_LIMITS = { + .max_steer = 300, // 3.0 Nm (EPS side max of 3.0Nm with fault if violated) + .max_rt_delta = 75, // 4 max rate up * 50Hz send rate * 250000 RT interval / 1000000 = 50 ; 50 * 1.5 for safety pad = 75 + .max_rt_interval = 250000, // 250ms between real time checks + .max_rate_up = 4, // 2.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) + .max_rate_down = 10, // 5.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) + .driver_torque_allowance = 80, + .driver_torque_multiplier = 3, + .type = TorqueDriverLimited, + }; + + // longitudinal limits + // acceleration in m/s2 * 1000 to avoid floating point math + const LongitudinalLimits VOLKSWAGEN_MQB_LONG_LIMITS = { + .max_accel = 2000, + .min_accel = -3500, + .inactive_accel = 3010, // VW sends one increment above the max range when inactive + }; + + int addr = GET_ADDR(to_send); + bool tx = true; + + // Safety check for HCA_01 Heading Control Assist torque + // Signal: HCA_01.HCA_01_LM_Offset (absolute torque) + // Signal: HCA_01.HCA_01_LM_OffSign (direction) + if (addr == MSG_HCA_01) { + int desired_torque = GET_BYTE(to_send, 2) | ((GET_BYTE(to_send, 3) & 0x1U) << 8); + bool sign = GET_BIT(to_send, 31U); + if (sign) { + desired_torque *= -1; + } + + bool steer_req = GET_BIT(to_send, 30U); + + if (steer_torque_cmd_checks(desired_torque, steer_req, VOLKSWAGEN_MQB_STEERING_LIMITS)) { + tx = false; + } + } + + // Safety check for both ACC_06 and ACC_07 acceleration requests + // To avoid floating point math, scale upward and compare to pre-scaled safety m/s2 boundaries + if ((addr == MSG_ACC_06) || (addr == MSG_ACC_07)) { + bool violation = false; + int desired_accel = 0; + + if (addr == MSG_ACC_06) { + // Signal: ACC_06.ACC_Sollbeschleunigung_02 (acceleration in m/s2, scale 0.005, offset -7.22) + desired_accel = ((((GET_BYTE(to_send, 4) & 0x7U) << 8) | GET_BYTE(to_send, 3)) * 5U) - 7220U; + } else { + // Signal: ACC_07.ACC_Folgebeschl (acceleration in m/s2, scale 0.03, offset -4.6) + int secondary_accel = (GET_BYTE(to_send, 4) * 30U) - 4600U; + violation |= (secondary_accel != 3020); // enforce always inactive (one increment above max range) at this time + // Signal: ACC_07.ACC_Sollbeschleunigung_02 (acceleration in m/s2, scale 0.005, offset -7.22) + desired_accel = (((GET_BYTE(to_send, 7) << 3) | ((GET_BYTE(to_send, 6) & 0xE0U) >> 5)) * 5U) - 7220U; + } + + violation |= longitudinal_accel_checks(desired_accel, VOLKSWAGEN_MQB_LONG_LIMITS); + + if (violation) { + tx = false; + } + } + + // FORCE CANCEL: ensuring that only the cancel button press is sent when controls are off. + // This avoids unintended engagements while still allowing resume spam + if ((addr == MSG_GRA_ACC_01) && !controls_allowed) { + // disallow resume and set: bits 16 and 19 + if ((GET_BYTE(to_send, 2) & 0x9U) != 0U) { + tx = false; + } + } + + return tx; +} + +static int volkswagen_mqb_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + switch (bus_num) { + case 0: + if (addr == MSG_LH_EPS_03) { + // openpilot needs to replace apparent driver steering input torque to pacify VW Emergency Assist + bus_fwd = -1; + } else { + // Forward all remaining traffic from Extended CAN onward + bus_fwd = 2; + } + break; + case 2: + if ((addr == MSG_HCA_01) || (addr == MSG_LDW_02)) { + // openpilot takes over LKAS steering control and related HUD messages from the camera + bus_fwd = -1; + } else if (volkswagen_longitudinal && ((addr == MSG_ACC_02) || (addr == MSG_ACC_06) || (addr == MSG_ACC_07))) { + // openpilot takes over acceleration/braking control and related HUD messages from the stock ACC radar + bus_fwd = -1; + } else { + // Forward all remaining traffic from Extended CAN devices to J533 gateway + bus_fwd = 0; + } + break; + default: + // No other buses should be in use; fallback to do-not-forward + bus_fwd = -1; + break; + } + + return bus_fwd; +} + +const safety_hooks volkswagen_mqb_hooks = { + .init = volkswagen_mqb_init, + .rx = volkswagen_mqb_rx_hook, + .tx = volkswagen_mqb_tx_hook, + .fwd = volkswagen_mqb_fwd_hook, + .get_counter = volkswagen_mqb_meb_get_counter, + .get_checksum = volkswagen_mqb_meb_get_checksum, + .compute_checksum = volkswagen_mqb_meb_compute_crc, +}; diff --git a/opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h new file mode 100644 index 0000000000..672edba781 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety/safety_volkswagen_pq.h @@ -0,0 +1,259 @@ +#pragma once + +#include "safety_declarations.h" +#include "safety_volkswagen_common.h" + +#define MSG_LENKHILFE_3 0x0D0 // RX from EPS, for steering angle and driver steering torque +#define MSG_HCA_1 0x0D2 // TX by OP, Heading Control Assist steering torque +#define MSG_BREMSE_1 0x1A0 // RX from ABS, for ego speed +#define MSG_MOTOR_2 0x288 // RX from ECU, for CC state and brake switch state +#define MSG_ACC_SYSTEM 0x368 // TX by OP, longitudinal acceleration controls +#define MSG_MOTOR_3 0x380 // RX from ECU, for driver throttle input +#define MSG_GRA_NEU 0x38A // TX by OP, ACC control buttons for cancel/resume +#define MSG_MOTOR_5 0x480 // RX from ECU, for ACC main switch state +#define MSG_ACC_GRA_ANZEIGE 0x56A // TX by OP, ACC HUD +#define MSG_LDW_1 0x5BE // TX by OP, Lane line recognition and text alerts + +static uint32_t volkswagen_pq_get_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + + return (uint32_t)GET_BYTE(to_push, (addr == MSG_MOTOR_5) ? 7 : 0); +} + +static uint8_t volkswagen_pq_get_counter(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + uint8_t counter = 0U; + + if (addr == MSG_LENKHILFE_3) { + counter = (uint8_t)(GET_BYTE(to_push, 1) & 0xF0U) >> 4; + } else if (addr == MSG_GRA_NEU) { + counter = (uint8_t)(GET_BYTE(to_push, 2) & 0xF0U) >> 4; + } else { + } + + return counter; +} + +static uint32_t volkswagen_pq_compute_checksum(const CANPacket_t *to_push) { + int addr = GET_ADDR(to_push); + int len = GET_LEN(to_push); + uint8_t checksum = 0U; + int checksum_byte = (addr == MSG_MOTOR_5) ? 7 : 0; + + // Simple XOR over the payload, except for the byte where the checksum lives. + for (int i = 0; i < len; i++) { + if (i != checksum_byte) { + checksum ^= (uint8_t)GET_BYTE(to_push, i); + } + } + + return checksum; +} + +static safety_config volkswagen_pq_init(uint16_t param) { + // Transmit of GRA_Neu is allowed on bus 0 and 2 to keep compatibility with gateway and camera integration + static const CanMsg VOLKSWAGEN_PQ_STOCK_TX_MSGS[] = {{MSG_HCA_1, 0, 5}, {MSG_LDW_1, 0, 8}, + {MSG_GRA_NEU, 0, 4}, {MSG_GRA_NEU, 2, 4}}; + + static const CanMsg VOLKSWAGEN_PQ_LONG_TX_MSGS[] = {{MSG_HCA_1, 0, 5}, {MSG_LDW_1, 0, 8}, + {MSG_ACC_SYSTEM, 0, 8}, {MSG_ACC_GRA_ANZEIGE, 0, 8}}; + + static RxCheck volkswagen_pq_rx_checks[] = { + {.msg = {{MSG_LENKHILFE_3, 0, 6, .max_counter = 15U, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MSG_BREMSE_1, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MSG_MOTOR_2, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MSG_MOTOR_3, 0, 8, .ignore_checksum = true, .ignore_counter = true, .frequency = 100U}, { 0 }, { 0 }}}, + {.msg = {{MSG_MOTOR_5, 0, 8, .ignore_counter = true, .frequency = 50U}, { 0 }, { 0 }}}, + {.msg = {{MSG_GRA_NEU, 0, 4, .max_counter = 15U, .frequency = 30U}, { 0 }, { 0 }}}, + }; + + UNUSED(param); + + volkswagen_set_button_prev = false; + volkswagen_resume_button_prev = false; + +#ifdef ALLOW_DEBUG + volkswagen_longitudinal = GET_FLAG(param, FLAG_VOLKSWAGEN_LONG_CONTROL); +#endif + return volkswagen_longitudinal ? BUILD_SAFETY_CFG(volkswagen_pq_rx_checks, VOLKSWAGEN_PQ_LONG_TX_MSGS) : \ + BUILD_SAFETY_CFG(volkswagen_pq_rx_checks, VOLKSWAGEN_PQ_STOCK_TX_MSGS); +} + +static void volkswagen_pq_rx_hook(const CANPacket_t *to_push) { + if (GET_BUS(to_push) == 0U) { + int addr = GET_ADDR(to_push); + + // Update in-motion state from speed value. + // Signal: Bremse_1.Geschwindigkeit_neu__Bremse_1_ + if (addr == MSG_BREMSE_1) { + int speed = ((GET_BYTE(to_push, 2) & 0xFEU) >> 1) | (GET_BYTE(to_push, 3) << 7); + vehicle_moving = speed > 0; + } + + // Update driver input torque samples + // Signal: Lenkhilfe_3.LH3_LM (absolute torque) + // Signal: Lenkhilfe_3.LH3_LMSign (direction) + if (addr == MSG_LENKHILFE_3) { + int torque_driver_new = GET_BYTE(to_push, 2) | ((GET_BYTE(to_push, 3) & 0x3U) << 8); + int sign = (GET_BYTE(to_push, 3) & 0x4U) >> 2; + if (sign == 1) { + torque_driver_new *= -1; + } + update_sample(&torque_driver, torque_driver_new); + } + + if (volkswagen_longitudinal) { + if (addr == MSG_MOTOR_5) { + // ACC main switch on is a prerequisite to enter controls, exit controls immediately on main switch off + // Signal: Motor_5.GRA_Hauptschalter + acc_main_on = GET_BIT(to_push, 50U); + if (!acc_main_on) { + controls_allowed = false; + } + } + + if (addr == MSG_GRA_NEU) { + // If ACC main switch is on, enter controls on falling edge of Set or Resume + // Signal: GRA_Neu.GRA_Neu_Setzen + // Signal: GRA_Neu.GRA_Neu_Recall + bool set_button = GET_BIT(to_push, 16U); + bool resume_button = GET_BIT(to_push, 17U); + if ((volkswagen_set_button_prev && !set_button) || (volkswagen_resume_button_prev && !resume_button)) { + controls_allowed = acc_main_on; + } + volkswagen_set_button_prev = set_button; + volkswagen_resume_button_prev = resume_button; + // Exit controls on rising edge of Cancel, override Set/Resume if present simultaneously + // Signal: GRA_ACC_01.GRA_Abbrechen + if (GET_BIT(to_push, 9U)) { + controls_allowed = false; + } + } + } else { + if (addr == MSG_MOTOR_2) { + // Enter controls on rising edge of stock ACC, exit controls if stock ACC disengages + // Signal: Motor_2.GRA_Status + int acc_status = (GET_BYTE(to_push, 2) & 0xC0U) >> 6; + bool cruise_engaged = (acc_status == 1) || (acc_status == 2); + pcm_cruise_check(cruise_engaged); + } + } + + // Signal: Motor_3.Fahrpedal_Rohsignal + if (addr == MSG_MOTOR_3) { + gas_pressed = (GET_BYTE(to_push, 2)); + } + + // Signal: Motor_2.Bremslichtschalter + if (addr == MSG_MOTOR_2) { + brake_pressed = (GET_BYTE(to_push, 2) & 0x1U); + } + + generic_rx_checks((addr == MSG_HCA_1)); + } +} + +static bool volkswagen_pq_tx_hook(const CANPacket_t *to_send) { + // lateral limits + const TorqueSteeringLimits VOLKSWAGEN_PQ_STEERING_LIMITS = { + .max_steer = 300, // 3.0 Nm (EPS side max of 3.0Nm with fault if violated) + .max_rt_delta = 113, // 6 max rate up * 50Hz send rate * 250000 RT interval / 1000000 = 75 ; 125 * 1.5 for safety pad = 113 + .max_rt_interval = 250000, // 250ms between real time checks + .max_rate_up = 6, // 3.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) + .max_rate_down = 10, // 5.0 Nm/s RoC limit (EPS rack has own soft-limit of 5.0 Nm/s) + .driver_torque_multiplier = 3, + .driver_torque_allowance = 80, + .type = TorqueDriverLimited, + }; + + // longitudinal limits + // acceleration in m/s2 * 1000 to avoid floating point math + const LongitudinalLimits VOLKSWAGEN_PQ_LONG_LIMITS = { + .max_accel = 2000, + .min_accel = -3500, + .inactive_accel = 3010, // VW sends one increment above the max range when inactive + }; + + int addr = GET_ADDR(to_send); + bool tx = true; + + // Safety check for HCA_1 Heading Control Assist torque + // Signal: HCA_1.LM_Offset (absolute torque) + // Signal: HCA_1.LM_Offsign (direction) + if (addr == MSG_HCA_1) { + int desired_torque = GET_BYTE(to_send, 2) | ((GET_BYTE(to_send, 3) & 0x7FU) << 8); + desired_torque = desired_torque / 32; // DBC scale from PQ network to centi-Nm + int sign = (GET_BYTE(to_send, 3) & 0x80U) >> 7; + if (sign == 1) { + desired_torque *= -1; + } + + uint32_t hca_status = ((GET_BYTE(to_send, 1) >> 4) & 0xFU); + bool steer_req = ((hca_status == 5U) || (hca_status == 7U)); + + if (steer_torque_cmd_checks(desired_torque, steer_req, VOLKSWAGEN_PQ_STEERING_LIMITS)) { + tx = false; + } + } + + // Safety check for acceleration commands + // To avoid floating point math, scale upward and compare to pre-scaled safety m/s2 boundaries + if (addr == MSG_ACC_SYSTEM) { + // Signal: ACC_System.ACS_Sollbeschl (acceleration in m/s2, scale 0.005, offset -7.22) + int desired_accel = ((((GET_BYTE(to_send, 4) & 0x7U) << 8) | GET_BYTE(to_send, 3)) * 5U) - 7220U; + + if (longitudinal_accel_checks(desired_accel, VOLKSWAGEN_PQ_LONG_LIMITS)) { + tx = false; + } + } + + // FORCE CANCEL: ensuring that only the cancel button press is sent when controls are off. + // This avoids unintended engagements while still allowing resume spam + if ((addr == MSG_GRA_NEU) && !controls_allowed) { + // Signal: GRA_Neu.GRA_Neu_Setzen + // Signal: GRA_Neu.GRA_Neu_Recall + if (GET_BIT(to_send, 16U) || GET_BIT(to_send, 17U)) { + tx = false; + } + } + + return tx; +} + +static int volkswagen_pq_fwd_hook(int bus_num, int addr) { + int bus_fwd = -1; + + switch (bus_num) { + case 0: + // Forward all traffic from the Extended CAN onward + bus_fwd = 2; + break; + case 2: + if ((addr == MSG_HCA_1) || (addr == MSG_LDW_1)) { + // openpilot takes over LKAS steering control and related HUD messages from the camera + bus_fwd = -1; + } else if (volkswagen_longitudinal && ((addr == MSG_ACC_SYSTEM) || (addr == MSG_ACC_GRA_ANZEIGE))) { + // openpilot takes over acceleration/braking control and related HUD messages from the stock ACC radar + } else { + // Forward all remaining traffic from Extended CAN devices to J533 gateway + bus_fwd = 0; + } + break; + default: + // No other buses should be in use; fallback to do-not-forward + bus_fwd = -1; + break; + } + + return bus_fwd; +} + +const safety_hooks volkswagen_pq_hooks = { + .init = volkswagen_pq_init, + .rx = volkswagen_pq_rx_hook, + .tx = volkswagen_pq_tx_hook, + .fwd = volkswagen_pq_fwd_hook, + .get_counter = volkswagen_pq_get_counter, + .get_checksum = volkswagen_pq_get_checksum, + .compute_checksum = volkswagen_pq_compute_checksum, +}; diff --git a/opendbc_repo/opendbc/safety/safety_declarations.h b/opendbc_repo/opendbc/safety/safety_declarations.h new file mode 100644 index 0000000000..b9939343c8 --- /dev/null +++ b/opendbc_repo/opendbc/safety/safety_declarations.h @@ -0,0 +1,294 @@ +#pragma once + +#include +#include + +#define GET_BIT(msg, b) ((bool)!!(((msg)->data[((b) / 8U)] >> ((b) % 8U)) & 0x1U)) +#define GET_BYTE(msg, b) ((msg)->data[(b)]) +#define GET_FLAG(value, mask) (((__typeof__(mask))(value) & (mask)) == (mask)) // cppcheck-suppress misra-c2012-1.2; allow __typeof__ + +#define BUILD_SAFETY_CFG(rx, tx) ((safety_config){(rx), (sizeof((rx)) / sizeof((rx)[0])), \ + (tx), (sizeof((tx)) / sizeof((tx)[0]))}) +#define SET_RX_CHECKS(rx, config) \ + do { \ + (config).rx_checks = (rx); \ + (config).rx_checks_len = sizeof((rx)) / sizeof((rx)[0]); \ + } while (0); + +#define SET_TX_MSGS(tx, config) \ + do { \ + (config).tx_msgs = (tx); \ + (config).tx_msgs_len = sizeof((tx)) / sizeof((tx)[0]); \ + } while(0); + +#define UPDATE_VEHICLE_SPEED(val_ms) (update_sample(&vehicle_speed, ROUND((val_ms) * VEHICLE_SPEED_FACTOR))) + +uint32_t GET_BYTES(const CANPacket_t *msg, int start, int len); + +extern const int MAX_WRONG_COUNTERS; +#define MAX_ADDR_CHECK_MSGS 3U +#define MAX_SAMPLE_VALS 6 +// used to represent floating point vehicle speed in a sample_t +#define VEHICLE_SPEED_FACTOR 1000.0 + + +// sample struct that keeps 6 samples in memory +struct sample_t { + int values[MAX_SAMPLE_VALS]; + int min; + int max; +}; + +// safety code requires floats +struct lookup_t { + float x[3]; + float y[3]; +}; + +typedef struct { + int addr; + int bus; + int len; +} CanMsg; + +typedef enum { + TorqueMotorLimited, // torque steering command, limited by EPS output torque + TorqueDriverLimited, // torque steering command, limited by driver's input torque +} SteeringControlType; + +typedef struct { + // torque cmd limits + const int max_steer; + const int max_rate_up; + const int max_rate_down; + const int max_rt_delta; + const uint32_t max_rt_interval; + + const SteeringControlType type; + + // driver torque limits + const int driver_torque_allowance; + const int driver_torque_multiplier; + + // motor torque limits + const int max_torque_error; + + // safety around steer req bit + const int min_valid_request_frames; + const int max_invalid_request_frames; + const uint32_t min_valid_request_rt_interval; + const bool has_steer_req_tolerance; +} TorqueSteeringLimits; + +typedef struct { + // angle cmd limits (also used by curvature control cars) + const int max_angle; + + const float angle_deg_to_can; + const struct lookup_t angle_rate_up_lookup; + const struct lookup_t angle_rate_down_lookup; + const int max_angle_error; // used to limit error between meas and cmd while enabled + const float angle_error_min_speed; // minimum speed to start limiting angle error + + const bool angle_is_curvature; // if true, we can apply max lateral acceleration limits + const bool enforce_angle_error; // enables max_angle_error check + const bool inactive_angle_is_zero; // if false, enforces angle near meas when disabled (default) +} AngleSteeringLimits; + +typedef struct { + // acceleration cmd limits + const int max_accel; + const int min_accel; + const int inactive_accel; + + // gas & brake cmd limits + // inactive and min gas are 0 on most safety modes + const int max_gas; + const int min_gas; + const int inactive_gas; + const int max_brake; + + // transmission rpm limits + const int max_transmission_rpm; + const int min_transmission_rpm; + const int inactive_transmission_rpm; + + // speed cmd limits + const int inactive_speed; +} LongitudinalLimits; + +typedef struct { + const int addr; + const int bus; + const int len; + const bool ignore_checksum; // checksum check is not performed when set to true + const bool ignore_counter; // counter check is not performed when set to true + const uint8_t max_counter; // maximum value of the counter. 0 means that the counter check is skipped + const bool quality_flag; // true is quality flag check is performed + const uint32_t frequency; // expected frequency of the message [Hz] +} CanMsgCheck; + +typedef struct { + // dynamic flags, reset on safety mode init + bool msg_seen; + int index; // if multiple messages are allowed to be checked, this stores the index of the first one seen. only msg[msg_index] will be used + bool valid_checksum; // true if and only if checksum check is passed + int wrong_counters; // counter of wrong counters, saturated between 0 and MAX_WRONG_COUNTERS + bool valid_quality_flag; // true if the message's quality/health/status signals are valid + uint8_t last_counter; // last counter value + uint32_t last_timestamp; // micro-s + bool lagging; // true if and only if the time between updates is excessive +} RxStatus; + +// params and flags about checksum, counter and frequency checks for each monitored address +typedef struct { + const CanMsgCheck msg[MAX_ADDR_CHECK_MSGS]; // check either messages (e.g. honda steer) + RxStatus status; +} RxCheck; + +typedef struct { + RxCheck *rx_checks; + int rx_checks_len; + const CanMsg *tx_msgs; + int tx_msgs_len; +} safety_config; + +typedef uint32_t (*get_checksum_t)(const CANPacket_t *to_push); +typedef uint32_t (*compute_checksum_t)(const CANPacket_t *to_push); +typedef uint8_t (*get_counter_t)(const CANPacket_t *to_push); +typedef bool (*get_quality_flag_valid_t)(const CANPacket_t *to_push); + +typedef safety_config (*safety_hook_init)(uint16_t param); +typedef void (*rx_hook)(const CANPacket_t *to_push); +typedef bool (*tx_hook)(const CANPacket_t *to_send); +typedef int (*fwd_hook)(int bus_num, int addr); + +typedef struct { + safety_hook_init init; + rx_hook rx; + tx_hook tx; + fwd_hook fwd; + get_checksum_t get_checksum; + compute_checksum_t compute_checksum; + get_counter_t get_counter; + get_quality_flag_valid_t get_quality_flag_valid; +} safety_hooks; + +bool safety_rx_hook(const CANPacket_t *to_push); +bool safety_tx_hook(CANPacket_t *to_send); +uint32_t get_ts_elapsed(uint32_t ts, uint32_t ts_last); +int to_signed(int d, int bits); +void update_sample(struct sample_t *sample, int sample_new); +bool get_longitudinal_allowed(void); +int ROUND(float val); +void gen_crc_lookup_table_8(uint8_t poly, uint8_t crc_lut[]); +#ifdef CANFD +void gen_crc_lookup_table_16(uint16_t poly, uint16_t crc_lut[]); +#endif +void generic_rx_checks(bool stock_ecu_detected); +bool steer_torque_cmd_checks(int desired_torque, int steer_req, const TorqueSteeringLimits limits); +bool steer_angle_cmd_checks(int desired_angle, bool steer_control_enabled, const AngleSteeringLimits limits); +bool longitudinal_accel_checks(int desired_accel, const LongitudinalLimits limits); +bool longitudinal_speed_checks(int desired_speed, const LongitudinalLimits limits); +bool longitudinal_gas_checks(int desired_gas, const LongitudinalLimits limits); +bool longitudinal_transmission_rpm_checks(int desired_transmission_rpm, const LongitudinalLimits limits); +bool longitudinal_brake_checks(int desired_brake, const LongitudinalLimits limits); +bool longitudinal_interceptor_checks(const CANPacket_t *to_send); +void pcm_cruise_check(bool cruise_engaged); + +void safety_tick(const safety_config *safety_config); + +// This can be set by the safety hooks +extern bool controls_allowed; +extern bool relay_malfunction; +extern bool enable_gas_interceptor; +extern int gas_interceptor_prev; +extern bool gas_pressed; +extern bool gas_pressed_prev; +extern bool brake_pressed; +extern bool brake_pressed_prev; +extern bool regen_braking; +extern bool regen_braking_prev; +extern bool cruise_engaged_prev; +extern struct sample_t vehicle_speed; +extern bool vehicle_moving; +extern bool acc_main_on; // referred to as "ACC off" in ISO 15622:2018 +extern int cruise_button_prev; +extern int cruise_main_prev; +extern bool safety_rx_checks_invalid; + +// for safety modes with torque steering control +extern int desired_torque_last; // last desired steer torque +extern int rt_torque_last; // last desired torque for real time check +extern int valid_steer_req_count; // counter for steer request bit matching non-zero torque +extern int invalid_steer_req_count; // counter to allow multiple frames of mismatching torque request bit +extern struct sample_t torque_meas; // last 6 motor torques produced by the eps +extern struct sample_t torque_driver; // last 6 driver torques measured +extern uint32_t ts_torque_check_last; +extern uint32_t ts_steer_req_mismatch_last; // last timestamp steer req was mismatched with torque + +// state for controls_allowed timeout logic +extern bool heartbeat_engaged; // openpilot enabled, passed in heartbeat USB command +extern uint32_t heartbeat_engaged_mismatches; // count of mismatches between heartbeat_engaged and controls_allowed + +// for safety modes with angle steering control +extern uint32_t ts_angle_last; +extern int desired_angle_last; +extern struct sample_t angle_meas; // last 6 steer angles/curvatures + +// This can be set with a USB command +// It enables features that allow alternative experiences, like not disengaging on gas press +// It is only either 0 or 1 on mainline comma.ai openpilot + +#define ALT_EXP_DISABLE_DISENGAGE_ON_GAS 1 + +// If using this flag, make sure to communicate to your users that a stock safety feature is now disabled. +#define ALT_EXP_DISABLE_STOCK_AEB 2 + +// If using this flag, be aware that harder braking is more likely to lead to rear endings, +// and that alone this flag doesn't make braking compliant because there's also a time element. +// Setting this flag is used for allowing the full -5.0 to +4.0 m/s^2 at lower speeds +// See ISO 15622:2018 for more information. +#define ALT_EXP_RAISE_LONGITUDINAL_LIMITS_TO_ISO_MAX 8 + +// This flag allows AEB to be commanded from openpilot. +#define ALT_EXP_ALLOW_AEB 16 + +extern int alternative_experience; + +// time since safety mode has been changed +extern uint32_t safety_mode_cnt; + +typedef struct { + uint16_t id; + const safety_hooks *hooks; +} safety_hook_config; + +extern uint16_t current_safety_mode; +extern uint16_t current_safety_param; +extern safety_config current_safety_config; + +int safety_fwd_hook(int bus_num, int addr); +int set_safety_hooks(uint16_t mode, uint16_t param); + +extern const safety_hooks body_hooks; +extern const safety_hooks chrysler_hooks; +extern const safety_hooks elm327_hooks; +extern const safety_hooks nooutput_hooks; +extern const safety_hooks alloutput_hooks; +extern const safety_hooks ford_hooks; +extern const safety_hooks gm_hooks; +extern const safety_hooks honda_nidec_hooks; +extern const safety_hooks honda_bosch_hooks; +extern const safety_hooks hyundai_canfd_hooks; +extern const safety_hooks hyundai_hooks; +extern const safety_hooks hyundai_legacy_hooks; +extern const safety_hooks mazda_hooks; +extern const safety_hooks nissan_hooks; +extern const safety_hooks subaru_hooks; +extern const safety_hooks subaru_preglobal_hooks; +extern const safety_hooks tesla_hooks; +extern const safety_hooks toyota_hooks; +extern const safety_hooks volkswagen_mqb_hooks; +extern const safety_hooks volkswagen_pq_hooks; +extern const safety_hooks rivian_hooks; diff --git a/opendbc_repo/opendbc/safety/tests/__init__.py b/opendbc_repo/opendbc/safety/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/safety/tests/common.py b/opendbc_repo/opendbc/safety/tests/common.py new file mode 100644 index 0000000000..9fded87af0 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/common.py @@ -0,0 +1,993 @@ +import os +import abc +import unittest +import importlib +import numpy as np +from collections.abc import Callable + +from opendbc.can.packer import CANPacker # pylint: disable=import-error +from opendbc.safety import ALTERNATIVE_EXPERIENCE +from opendbc.safety.tests.libsafety import libsafety_py + +MAX_WRONG_COUNTERS = 5 +MAX_SAMPLE_VALS = 6 + +MessageFunction = Callable[[float], libsafety_py.CANPacket] + +def sign_of(a): + return 1 if a > 0 else -1 + + +def make_msg(bus, addr, length=8, dat=None): + if dat is None: + dat = b'\x00' * length + return libsafety_py.make_CANPacket(addr, bus, dat) + + +class CANPackerPanda(CANPacker): + def make_can_msg_panda(self, name_or_addr, bus, values, fix_checksum=None): + msg = self.make_can_msg(name_or_addr, bus, values) + if fix_checksum is not None: + msg = fix_checksum(msg) + addr, dat, bus = msg + return libsafety_py.make_CANPacket(addr, bus, dat) + + +def add_regen_tests(cls): + """Dynamically adds regen tests for all user brake tests.""" + + # only rx/user brake tests, not brake command + found_tests = [func for func in dir(cls) if func.startswith("test_") and "user_brake" in func] + assert len(found_tests) >= 3, "Failed to detect known brake tests" + + for test in found_tests: + def _make_regen_test(brake_func): + def _regen_test(self): + # only for safety modes with a regen message + if self._user_regen_msg(0) is None: + raise unittest.SkipTest("Safety mode implements no _user_regen_msg") + + getattr(self, brake_func)(self._user_regen_msg, self.safety.get_regen_braking_prev) + return _regen_test + + setattr(cls, test.replace("brake", "regen"), _make_regen_test(test)) + + return cls + + +class PandaSafetyTestBase(unittest.TestCase): + safety: libsafety_py.Panda + + @classmethod + def setUpClass(cls): + if cls.__name__ == "PandaSafetyTestBase": + cls.safety = None + raise unittest.SkipTest + + def _reset_safety_hooks(self): + self.safety.set_safety_hooks(self.safety.get_current_safety_mode(), + self.safety.get_current_safety_param()) + + def _rx(self, msg): + return self.safety.safety_rx_hook(msg) + + def _tx(self, msg): + return self.safety.safety_tx_hook(msg) + + def _generic_limit_safety_check(self, msg_function: MessageFunction, min_allowed_value: float, max_allowed_value: float, + min_possible_value: float, max_possible_value: float, test_delta: float = 1, inactive_value: float = 0, + msg_allowed = True, additional_setup: Callable[[float], None] | None = None): + """ + Enforces that a signal within a message is only allowed to be sent within a specific range, min_allowed_value -> max_allowed_value. + Tests the range of min_possible_value -> max_possible_value with a delta of test_delta. + Message is also only allowed to be sent when controls_allowed is true, unless the value is equal to inactive_value. + Message is never allowed if msg_allowed is false, for example when stock longitudinal is enabled and you are sending acceleration requests. + additional_setup is used for extra setup before each _tx, ex: for setting the previous torque for rate limits + """ + + # Ensure that we at least test the allowed_value range + self.assertGreater(max_possible_value, max_allowed_value) + self.assertLessEqual(min_possible_value, min_allowed_value) + + for controls_allowed in [False, True]: + # enforce we don't skip over 0 or inactive + for v in np.concatenate((np.arange(min_possible_value, max_possible_value, test_delta), np.array([0, inactive_value]))): + v = round(v, 2) # floats might not hit exact boundary conditions without rounding + self.safety.set_controls_allowed(controls_allowed) + if additional_setup is not None: + additional_setup(v) + should_tx = controls_allowed and min_allowed_value <= v <= max_allowed_value + should_tx = (should_tx or v == inactive_value) and msg_allowed + self.assertEqual(self._tx(msg_function(v)), should_tx, (controls_allowed, should_tx, v)) + + def _common_measurement_test(self, msg_func: Callable, min_value: float, max_value: float, factor: float, + meas_min_func: Callable[[], int], meas_max_func: Callable[[], int]): + """Tests accurate measurement parsing, and that the struct is reset on safety mode init""" + for val in np.arange(min_value, max_value, 0.5): + for i in range(MAX_SAMPLE_VALS): + self.assertTrue(self._rx(msg_func(val + i * 0.1))) + + # assert close by one decimal place + self.assertAlmostEqual(meas_min_func() / factor, val, delta=0.1) + self.assertAlmostEqual(meas_max_func() / factor - 0.5, val, delta=0.1) + + # ensure sample_t is reset on safety init + self._reset_safety_hooks() + self.assertEqual(meas_min_func(), 0) + self.assertEqual(meas_max_func(), 0) + + +class LongitudinalAccelSafetyTest(PandaSafetyTestBase, abc.ABC): + + LONGITUDINAL = True + MAX_ACCEL: float = 2.0 + MIN_ACCEL: float = -3.5 + INACTIVE_ACCEL: float = 0.0 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "LongitudinalAccelSafetyTest": + cls.safety = None + raise unittest.SkipTest + + @abc.abstractmethod + def _accel_msg(self, accel: float): + pass + + def test_accel_limits_correct(self): + self.assertGreater(self.MAX_ACCEL, 0) + self.assertLess(self.MIN_ACCEL, 0) + + def test_accel_actuation_limits(self): + limits = ((self.MIN_ACCEL, self.MAX_ACCEL, ALTERNATIVE_EXPERIENCE.DEFAULT), + (self.MIN_ACCEL, self.MAX_ACCEL, ALTERNATIVE_EXPERIENCE.RAISE_LONGITUDINAL_LIMITS_TO_ISO_MAX)) + + for min_accel, max_accel, alternative_experience in limits: + # enforce we don't skip over 0 or inactive accel + for accel in np.concatenate((np.arange(min_accel - 1, max_accel + 1, 0.05), [0, self.INACTIVE_ACCEL])): + accel = round(accel, 2) # floats might not hit exact boundary conditions without rounding + for controls_allowed in [True, False]: + self.safety.set_controls_allowed(controls_allowed) + self.safety.set_alternative_experience(alternative_experience) + if self.LONGITUDINAL: + should_tx = controls_allowed and min_accel <= accel <= max_accel + should_tx = should_tx or accel == self.INACTIVE_ACCEL + else: + should_tx = False + self.assertEqual(should_tx, self._tx(self._accel_msg(accel))) + + +class LongitudinalGasBrakeSafetyTest(PandaSafetyTestBase, abc.ABC): + + MIN_BRAKE: int = 0 + MAX_BRAKE: int | None = None + MAX_POSSIBLE_BRAKE: int | None = None + + MIN_GAS: int = 0 + MAX_GAS: int | None = None + INACTIVE_GAS = 0 + MAX_POSSIBLE_GAS: int | None = None + + def test_gas_brake_limits_correct(self): + self.assertIsNotNone(self.MAX_POSSIBLE_BRAKE) + self.assertIsNotNone(self.MAX_POSSIBLE_GAS) + + self.assertGreater(self.MAX_BRAKE, self.MIN_BRAKE) + self.assertGreater(self.MAX_GAS, self.MIN_GAS) + + @abc.abstractmethod + def _send_gas_msg(self, gas: int): + pass + + @abc.abstractmethod + def _send_brake_msg(self, brake: int): + pass + + def test_brake_safety_check(self): + self._generic_limit_safety_check(self._send_brake_msg, self.MIN_BRAKE, self.MAX_BRAKE, 0, self.MAX_POSSIBLE_BRAKE, 1) + + def test_gas_safety_check(self): + self._generic_limit_safety_check(self._send_gas_msg, self.MIN_GAS, self.MAX_GAS, 0, self.MAX_POSSIBLE_GAS, 1, self.INACTIVE_GAS) + + +class TorqueSteeringSafetyTestBase(PandaSafetyTestBase, abc.ABC): + + MAX_RATE_UP = 0 + MAX_RATE_DOWN = 0 + MAX_TORQUE = 0 + MAX_RT_DELTA = 0 + RT_INTERVAL = 0 + + NO_STEER_REQ_BIT = False + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TorqueSteeringSafetyTestBase": + cls.safety = None + raise unittest.SkipTest + + @abc.abstractmethod + def _torque_cmd_msg(self, torque, steer_req=1): + pass + + def _set_prev_torque(self, t): + self.safety.set_desired_torque_last(t) + self.safety.set_rt_torque_last(t) + + def test_steer_safety_check(self): + for enabled in [0, 1]: + for t in range(int(-self.MAX_TORQUE * 1.5), int(self.MAX_TORQUE * 1.5)): + self.safety.set_controls_allowed(enabled) + self._set_prev_torque(t) + if abs(t) > self.MAX_TORQUE or (not enabled and abs(t) > 0): + self.assertFalse(self._tx(self._torque_cmd_msg(t))) + else: + self.assertTrue(self._tx(self._torque_cmd_msg(t))) + + def test_non_realtime_limit_up(self): + self.safety.set_controls_allowed(True) + + self._set_prev_torque(0) + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_RATE_UP))) + self._set_prev_torque(0) + self.assertTrue(self._tx(self._torque_cmd_msg(-self.MAX_RATE_UP))) + + self._set_prev_torque(0) + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_RATE_UP + 1))) + self.safety.set_controls_allowed(True) + self._set_prev_torque(0) + self.assertFalse(self._tx(self._torque_cmd_msg(-self.MAX_RATE_UP - 1))) + + def test_steer_req_bit(self): + """Asserts all torque safety modes check the steering request bit""" + if self.NO_STEER_REQ_BIT: + raise unittest.SkipTest("No steering request bit") + + self.safety.set_controls_allowed(True) + self._set_prev_torque(self.MAX_TORQUE) + + # Send torque successfully, then only drop the request bit and ensure it stays blocked + for _ in range(10): + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, 1))) + + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, 0))) + for _ in range(10): + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, 1))) + + +class SteerRequestCutSafetyTest(TorqueSteeringSafetyTestBase, abc.ABC): + + @classmethod + def setUpClass(cls): + if cls.__name__ == "SteerRequestCutSafetyTest": + cls.safety = None + raise unittest.SkipTest + + # Safety around steering request bit mismatch tolerance + MIN_VALID_STEERING_FRAMES: int + MAX_INVALID_STEERING_FRAMES: int + MIN_VALID_STEERING_RT_INTERVAL: int + + def test_steer_req_bit_frames(self): + """ + Certain safety modes implement some tolerance on their steer request bits matching the + requested torque to avoid a steering fault or lockout and maintain torque. This tests: + - We can't cut torque for more than one frame + - We can't cut torque until at least the minimum number of matching steer_req messages + - We can always recover from violations if steer_req=1 + """ + + for min_valid_steer_frames in range(self.MIN_VALID_STEERING_FRAMES * 2): + # Reset match count and rt timer to allow cut (valid_steer_req_count, ts_steer_req_mismatch_last) + self.safety.init_tests() + self.safety.set_timer(self.MIN_VALID_STEERING_RT_INTERVAL) + + # Allow torque cut + self.safety.set_controls_allowed(True) + self._set_prev_torque(self.MAX_TORQUE) + for _ in range(min_valid_steer_frames): + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) + + # should tx if we've sent enough valid frames, and we're not cutting torque for too many frames consecutively + should_tx = min_valid_steer_frames >= self.MIN_VALID_STEERING_FRAMES + for idx in range(self.MAX_INVALID_STEERING_FRAMES * 2): + tx = self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0)) + self.assertEqual(should_tx and idx < self.MAX_INVALID_STEERING_FRAMES, tx) + + # Keep blocking after one steer_req mismatch + for _ in range(100): + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) + + # Make sure we can recover + self.assertTrue(self._tx(self._torque_cmd_msg(0, steer_req=1))) + self._set_prev_torque(self.MAX_TORQUE) + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) + + def test_steer_req_bit_multi_invalid(self): + """ + For safety modes allowing multiple consecutive invalid frames, this ensures that once a valid frame + is sent after an invalid frame (even without sending the max number of allowed invalid frames), + all counters are reset. + """ + for max_invalid_steer_frames in range(1, self.MAX_INVALID_STEERING_FRAMES * 2): + self.safety.init_tests() + self.safety.set_timer(self.MIN_VALID_STEERING_RT_INTERVAL) + + # Allow torque cut + self.safety.set_controls_allowed(True) + self._set_prev_torque(self.MAX_TORQUE) + for _ in range(self.MIN_VALID_STEERING_FRAMES): + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) + + # Send partial amount of allowed invalid frames + for idx in range(max_invalid_steer_frames): + should_tx = idx < self.MAX_INVALID_STEERING_FRAMES + self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) + + # Send one valid frame, and subsequent invalid should now be blocked + self._set_prev_torque(self.MAX_TORQUE) + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) + for _ in range(self.MIN_VALID_STEERING_FRAMES + 1): + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) + + def test_steer_req_bit_realtime(self): + """ + Realtime safety for cutting steer request bit. This tests: + - That we allow messages with mismatching steer request bit if time from last is >= MIN_VALID_STEERING_RT_INTERVAL + - That frame mismatch safety does not interfere with this test + """ + for rt_us in np.arange(self.MIN_VALID_STEERING_RT_INTERVAL - 50000, self.MIN_VALID_STEERING_RT_INTERVAL + 50000, 10000): + # Reset match count and rt timer (valid_steer_req_count, ts_steer_req_mismatch_last) + self.safety.init_tests() + + # Make sure valid_steer_req_count doesn't affect this test + self.safety.set_controls_allowed(True) + self._set_prev_torque(self.MAX_TORQUE) + for _ in range(self.MIN_VALID_STEERING_FRAMES): + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) + + # Normally, sending MIN_VALID_STEERING_FRAMES valid frames should always allow + self.safety.set_timer(max(rt_us, 0)) + should_tx = rt_us >= self.MIN_VALID_STEERING_RT_INTERVAL + for _ in range(self.MAX_INVALID_STEERING_FRAMES): + self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) + + # Keep blocking after one steer_req mismatch + for _ in range(100): + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=0))) + + # Make sure we can recover + self.assertTrue(self._tx(self._torque_cmd_msg(0, steer_req=1))) + self._set_prev_torque(self.MAX_TORQUE) + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE, steer_req=1))) + + +class DriverTorqueSteeringSafetyTest(TorqueSteeringSafetyTestBase, abc.ABC): + + DRIVER_TORQUE_ALLOWANCE = 0 + DRIVER_TORQUE_FACTOR = 0 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "DriverTorqueSteeringSafetyTest": + cls.safety = None + raise unittest.SkipTest + + @abc.abstractmethod + def _torque_driver_msg(self, torque): + pass + + def _reset_torque_driver_measurement(self, torque): + for _ in range(MAX_SAMPLE_VALS): + self._rx(self._torque_driver_msg(torque)) + + def test_non_realtime_limit_up(self): + self._reset_torque_driver_measurement(0) + super().test_non_realtime_limit_up() + + def test_against_torque_driver(self): + # Tests down limits and driver torque blending + self.safety.set_controls_allowed(True) + + # Cannot stay at MAX_TORQUE if above DRIVER_TORQUE_ALLOWANCE + for sign in [-1, 1]: + for driver_torque in np.arange(0, self.DRIVER_TORQUE_ALLOWANCE * 2, 1): + self._reset_torque_driver_measurement(-driver_torque * sign) + self._set_prev_torque(self.MAX_TORQUE * sign) + should_tx = abs(driver_torque) <= self.DRIVER_TORQUE_ALLOWANCE + self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(self.MAX_TORQUE * sign))) + + # arbitrary high driver torque to ensure max steer torque is allowed + max_driver_torque = int(self.MAX_TORQUE / self.DRIVER_TORQUE_FACTOR + self.DRIVER_TORQUE_ALLOWANCE + 1) + + # spot check some individual cases + for sign in [-1, 1]: + # Ensure we wind down factor units for every unit above allowance + driver_torque = (self.DRIVER_TORQUE_ALLOWANCE + 10) * sign + torque_desired = (self.MAX_TORQUE - 10 * self.DRIVER_TORQUE_FACTOR) * sign + delta = 1 * sign + self._set_prev_torque(torque_desired) + self._reset_torque_driver_measurement(-driver_torque) + self.assertTrue(self._tx(self._torque_cmd_msg(torque_desired))) + self._set_prev_torque(torque_desired + delta) + self._reset_torque_driver_measurement(-driver_torque) + self.assertFalse(self._tx(self._torque_cmd_msg(torque_desired + delta))) + + # If we're well past the allowance, minimum wind down is MAX_RATE_DOWN + self._set_prev_torque(self.MAX_TORQUE * sign) + self._reset_torque_driver_measurement(-max_driver_torque * sign) + self.assertTrue(self._tx(self._torque_cmd_msg((self.MAX_TORQUE - self.MAX_RATE_DOWN) * sign))) + self._set_prev_torque(self.MAX_TORQUE * sign) + self._reset_torque_driver_measurement(-max_driver_torque * sign) + self.assertTrue(self._tx(self._torque_cmd_msg(0))) + self._set_prev_torque(self.MAX_TORQUE * sign) + self._reset_torque_driver_measurement(-max_driver_torque * sign) + self.assertFalse(self._tx(self._torque_cmd_msg((self.MAX_TORQUE - self.MAX_RATE_DOWN + 1) * sign))) + + def test_realtime_limits(self): + self.safety.set_controls_allowed(True) + + for sign in [-1, 1]: + self.safety.init_tests() + self._set_prev_torque(0) + self._reset_torque_driver_measurement(0) + for t in np.arange(0, self.MAX_RT_DELTA, 1): + t *= sign + self.assertTrue(self._tx(self._torque_cmd_msg(t))) + self.assertFalse(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) + + self._set_prev_torque(0) + for t in np.arange(0, self.MAX_RT_DELTA, 1): + t *= sign + self.assertTrue(self._tx(self._torque_cmd_msg(t))) + + # Increase timer to update rt_torque_last + self.safety.set_timer(self.RT_INTERVAL + 1) + self.assertTrue(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA - 1)))) + self.assertTrue(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) + + def test_reset_driver_torque_measurements(self): + # Tests that the driver torque measurement sample_t is reset on safety mode init + for t in np.linspace(-self.MAX_TORQUE, self.MAX_TORQUE, MAX_SAMPLE_VALS): + self.assertTrue(self._rx(self._torque_driver_msg(t))) + + self.assertNotEqual(self.safety.get_torque_driver_min(), 0) + self.assertNotEqual(self.safety.get_torque_driver_max(), 0) + + self._reset_safety_hooks() + self.assertEqual(self.safety.get_torque_driver_min(), 0) + self.assertEqual(self.safety.get_torque_driver_max(), 0) + + +class MotorTorqueSteeringSafetyTest(TorqueSteeringSafetyTestBase, abc.ABC): + + MAX_TORQUE_ERROR = 0 + TORQUE_MEAS_TOLERANCE = 0 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "MotorTorqueSteeringSafetyTest": + cls.safety = None + raise unittest.SkipTest + + @abc.abstractmethod + def _torque_meas_msg(self, torque): + pass + + def _set_prev_torque(self, t): + super()._set_prev_torque(t) + self.safety.set_torque_meas(t, t) + + def test_torque_absolute_limits(self): + for controls_allowed in [True, False]: + for torque in np.arange(-self.MAX_TORQUE - 1000, self.MAX_TORQUE + 1000, self.MAX_RATE_UP): + self.safety.set_controls_allowed(controls_allowed) + self.safety.set_rt_torque_last(torque) + self.safety.set_torque_meas(torque, torque) + self.safety.set_desired_torque_last(torque - self.MAX_RATE_UP) + + if controls_allowed: + send = (-self.MAX_TORQUE <= torque <= self.MAX_TORQUE) + else: + send = torque == 0 + + self.assertEqual(send, self._tx(self._torque_cmd_msg(torque))) + + def test_non_realtime_limit_down(self): + self.safety.set_controls_allowed(True) + + torque_meas = self.MAX_TORQUE - self.MAX_TORQUE_ERROR - 50 + + self.safety.set_rt_torque_last(self.MAX_TORQUE) + self.safety.set_torque_meas(torque_meas, torque_meas) + self.safety.set_desired_torque_last(self.MAX_TORQUE) + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_TORQUE - self.MAX_RATE_DOWN))) + + self.safety.set_rt_torque_last(self.MAX_TORQUE) + self.safety.set_torque_meas(torque_meas, torque_meas) + self.safety.set_desired_torque_last(self.MAX_TORQUE) + self.assertFalse(self._tx(self._torque_cmd_msg(self.MAX_TORQUE - self.MAX_RATE_DOWN + 1))) + + def test_exceed_torque_sensor(self): + self.safety.set_controls_allowed(True) + + for sign in [-1, 1]: + self._set_prev_torque(0) + for t in np.arange(0, self.MAX_TORQUE_ERROR + 2, 2): # step needs to be smaller than MAX_TORQUE_ERROR + t *= sign + self.assertTrue(self._tx(self._torque_cmd_msg(t))) + + self.assertFalse(self._tx(self._torque_cmd_msg(sign * (self.MAX_TORQUE_ERROR + 2)))) + + def test_realtime_limit_up(self): + self.safety.set_controls_allowed(True) + + for sign in [-1, 1]: + self.safety.init_tests() + self._set_prev_torque(0) + for t in np.arange(0, self.MAX_RT_DELTA + 1, 1): + t *= sign + self.safety.set_torque_meas(t, t) + self.assertTrue(self._tx(self._torque_cmd_msg(t))) + self.assertFalse(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) + + self._set_prev_torque(0) + for t in np.arange(0, self.MAX_RT_DELTA + 1, 1): + t *= sign + self.safety.set_torque_meas(t, t) + self.assertTrue(self._tx(self._torque_cmd_msg(t))) + + # Increase timer to update rt_torque_last + self.safety.set_timer(self.RT_INTERVAL + 1) + self.assertTrue(self._tx(self._torque_cmd_msg(sign * self.MAX_RT_DELTA))) + self.assertTrue(self._tx(self._torque_cmd_msg(sign * (self.MAX_RT_DELTA + 1)))) + + def test_torque_measurements(self): + trq = 50 + for t in [trq, -trq, 0, 0, 0, 0]: + self._rx(self._torque_meas_msg(t)) + + max_range = range(trq, trq + self.TORQUE_MEAS_TOLERANCE + 1) + min_range = range(-(trq + self.TORQUE_MEAS_TOLERANCE), -trq + 1) + self.assertTrue(self.safety.get_torque_meas_min() in min_range) + self.assertTrue(self.safety.get_torque_meas_max() in max_range) + + max_range = range(self.TORQUE_MEAS_TOLERANCE + 1) + min_range = range(-(trq + self.TORQUE_MEAS_TOLERANCE), -trq + 1) + self._rx(self._torque_meas_msg(0)) + self.assertTrue(self.safety.get_torque_meas_min() in min_range) + self.assertTrue(self.safety.get_torque_meas_max() in max_range) + + max_range = range(self.TORQUE_MEAS_TOLERANCE + 1) + min_range = range(-self.TORQUE_MEAS_TOLERANCE, 0 + 1) + self._rx(self._torque_meas_msg(0)) + self.assertTrue(self.safety.get_torque_meas_min() in min_range) + self.assertTrue(self.safety.get_torque_meas_max() in max_range) + + def test_reset_torque_measurements(self): + # Tests that the torque measurement sample_t is reset on safety mode init + for t in np.linspace(-self.MAX_TORQUE, self.MAX_TORQUE, MAX_SAMPLE_VALS): + self.assertTrue(self._rx(self._torque_meas_msg(t))) + + self.assertNotEqual(self.safety.get_torque_meas_min(), 0) + self.assertNotEqual(self.safety.get_torque_meas_max(), 0) + + self._reset_safety_hooks() + self.assertEqual(self.safety.get_torque_meas_min(), 0) + self.assertEqual(self.safety.get_torque_meas_max(), 0) + + +class AngleSteeringSafetyTest(PandaSafetyTestBase): + + STEER_ANGLE_MAX: float = 300 + DEG_TO_CAN: float + ANGLE_RATE_BP: list[float] + ANGLE_RATE_UP: list[float] # windup limit + ANGLE_RATE_DOWN: list[float] # unwind limit + + @classmethod + def setUpClass(cls): + if cls.__name__ == "AngleSteeringSafetyTest": + cls.safety = None + raise unittest.SkipTest + + @abc.abstractmethod + def _speed_msg(self, speed): + pass + + @abc.abstractmethod + def _angle_cmd_msg(self, angle: float, enabled: bool): + pass + + @abc.abstractmethod + def _angle_meas_msg(self, angle: float): + pass + + def _set_prev_desired_angle(self, t): + t = round(t * self.DEG_TO_CAN) + self.safety.set_desired_angle_last(t) + + def _reset_angle_measurement(self, angle): + for _ in range(MAX_SAMPLE_VALS): + self._rx(self._angle_meas_msg(angle)) + + def _reset_speed_measurement(self, speed): + for _ in range(MAX_SAMPLE_VALS): + self._rx(self._speed_msg(speed)) + + def test_vehicle_speed_measurements(self): + # TODO: lower tolerance on these tests + self._common_measurement_test(self._speed_msg, 0, 80, 1, self.safety.get_vehicle_speed_min, self.safety.get_vehicle_speed_max) + + def test_steering_angle_measurements(self): + self._common_measurement_test(self._angle_meas_msg, -self.STEER_ANGLE_MAX, self.STEER_ANGLE_MAX, self.DEG_TO_CAN, + self.safety.get_angle_meas_min, self.safety.get_angle_meas_max) + + def test_angle_cmd_when_enabled(self): + # when controls are allowed, angle cmd rate limit is enforced + speeds = [0., 1., 5., 10., 15., 50.] + angles = np.concatenate((np.arange(-self.STEER_ANGLE_MAX * 2, self.STEER_ANGLE_MAX * 2, 5), [0])) + for a in angles: + for s in speeds: + max_delta_up = np.interp(s, self.ANGLE_RATE_BP, self.ANGLE_RATE_UP) + max_delta_down = np.interp(s, self.ANGLE_RATE_BP, self.ANGLE_RATE_DOWN) + + # first test against false positives + self._reset_angle_measurement(a) + self._reset_speed_measurement(s) + + self._set_prev_desired_angle(a) + self.safety.set_controls_allowed(1) + + # Stay within limits + # Up + self.assertTrue(self._tx(self._angle_cmd_msg(a + sign_of(a) * max_delta_up, True))) + self.assertTrue(self.safety.get_controls_allowed()) + + # Don't change + self.assertTrue(self._tx(self._angle_cmd_msg(a, True))) + self.assertTrue(self.safety.get_controls_allowed()) + + # Down + self.assertTrue(self._tx(self._angle_cmd_msg(a - sign_of(a) * max_delta_down, True))) + self.assertTrue(self.safety.get_controls_allowed()) + + # Inject too high rates + # Up + self.assertFalse(self._tx(self._angle_cmd_msg(a + sign_of(a) * (max_delta_up + 1.1), True))) + + # Don't change + self.safety.set_controls_allowed(1) + self._set_prev_desired_angle(a) + self.assertTrue(self.safety.get_controls_allowed()) + self.assertTrue(self._tx(self._angle_cmd_msg(a, True))) + self.assertTrue(self.safety.get_controls_allowed()) + + # Down + self.assertFalse(self._tx(self._angle_cmd_msg(a - sign_of(a) * (max_delta_down + 1.1), True))) + + # Check desired steer should be the same as steer angle when controls are off + self.safety.set_controls_allowed(0) + should_tx = abs(a) <= abs(self.STEER_ANGLE_MAX) + self.assertEqual(should_tx, self._tx(self._angle_cmd_msg(a, False))) + + def test_angle_cmd_when_disabled(self): + # Tests that only angles close to the meas are allowed while + # steer actuation bit is 0, regardless of controls allowed. + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + + for steer_control_enabled in (True, False): + for angle_meas in np.arange(-90, 91, 10): + self._reset_angle_measurement(angle_meas) + + for angle_cmd in np.arange(-90, 91, 10): + self._set_prev_desired_angle(angle_cmd) + + # controls_allowed is checked if actuation bit is 1, else the angle must be close to meas (inactive) + should_tx = controls_allowed if steer_control_enabled else angle_cmd == angle_meas + self.assertEqual(should_tx, self._tx(self._angle_cmd_msg(angle_cmd, steer_control_enabled))) + + +class PandaSafetyTest(PandaSafetyTestBase): + TX_MSGS: list[list[int]] | None = None + SCANNED_ADDRS = [*range(0x800), # Entire 11-bit CAN address space + *range(0x18DA00F1, 0x18DB00F1, 0x100), # 29-bit UDS physical addressing + *range(0x18DB00F1, 0x18DC00F1, 0x100), # 29-bit UDS functional addressing + *range(0x3300, 0x3400)] # Honda + FWD_BLACKLISTED_ADDRS: dict[int, list[int]] = {} # {bus: [addr]} + FWD_BUS_LOOKUP: dict[int, int] = {0: 2, 2: 0} + + @classmethod + def setUpClass(cls): + if cls.__name__ == "PandaSafetyTest" or cls.__name__.endswith('Base'): + cls.safety = None + raise unittest.SkipTest + + # ***** standard tests for all safety modes ***** + + def test_tx_msg_in_scanned_range(self): + # the relay malfunction, fwd hook, and spam can tests don't exhaustively + # scan the entire 29-bit address space, only some known important ranges + # make sure SCANNED_ADDRS stays up to date with car port TX_MSGS; new + # model ports should expand the range if needed + for msg in self.TX_MSGS: + self.assertTrue(msg[0] in self.SCANNED_ADDRS, f"{msg[0]=:#x}") + + def test_fwd_hook(self): + # some safety modes don't forward anything, while others blacklist msgs + for bus in range(3): + for addr in self.SCANNED_ADDRS: + # assume len 8 + fwd_bus = self.FWD_BUS_LOOKUP.get(bus, -1) + if bus in self.FWD_BLACKLISTED_ADDRS and addr in self.FWD_BLACKLISTED_ADDRS[bus]: + fwd_bus = -1 + self.assertEqual(fwd_bus, self.safety.safety_fwd_hook(bus, addr), f"{addr=:#x} from {bus=} to {fwd_bus=}") + + def test_spam_can_buses(self): + for bus in range(4): + for addr in self.SCANNED_ADDRS: + if [addr, bus] not in self.TX_MSGS: + self.assertFalse(self._tx(make_msg(bus, addr, 8)), f"allowed TX {addr=} {bus=}") + + def test_default_controls_not_allowed(self): + self.assertFalse(self.safety.get_controls_allowed()) + + def test_manually_enable_controls_allowed(self): + self.safety.set_controls_allowed(1) + self.assertTrue(self.safety.get_controls_allowed()) + self.safety.set_controls_allowed(0) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_tx_hook_on_wrong_safety_mode(self): + files = os.listdir(os.path.dirname(os.path.realpath(__file__))) + test_files = [f for f in files if f.startswith("test_") and f.endswith(".py")] + + current_test = self.__class__.__name__ + + all_tx = [] + for tf in test_files: + test = importlib.import_module("opendbc.safety.tests."+tf[:-3]) + for attr in dir(test): + if attr.startswith("Test") and attr != current_test: + tc = getattr(test, attr) + tx = tc.TX_MSGS + if tx is not None and not attr.endswith('Base'): + # No point in comparing different Tesla safety modes + if 'Tesla' in attr and 'Tesla' in current_test: + continue + # No point in comparing to ALLOUTPUT which allows all messages + if attr.startswith('TestAllOutput'): + continue + if attr.startswith('TestToyota') and current_test.startswith('TestToyota'): + continue + if attr.startswith('TestSubaruGen') and current_test.startswith('TestSubaruGen'): + continue + if attr.startswith('TestSubaruPreglobal') and current_test.startswith('TestSubaruPreglobal'): + continue + if {attr, current_test}.issubset({'TestVolkswagenPqSafety', 'TestVolkswagenPqStockSafety', 'TestVolkswagenPqLongSafety'}): + continue + if {attr, current_test}.issubset({'TestGmCameraSafety', 'TestGmCameraLongitudinalSafety'}): + continue + if attr.startswith('TestFord') and current_test.startswith('TestFord'): + continue + if attr.startswith('TestHyundaiCanfd') and current_test.startswith('TestHyundaiCanfd'): + continue + if {attr, current_test}.issubset({'TestVolkswagenMqbSafety', 'TestVolkswagenMqbStockSafety', 'TestVolkswagenMqbLongSafety'}): + continue + + # overlapping TX addrs, but they're not actuating messages for either car + if attr == 'TestHyundaiCanfdLKASteeringLongEV' and current_test.startswith('TestToyota'): + tx = list(filter(lambda m: m[0] not in [0x160, ], tx)) + + # Volkswagen MQB longitudinal actuating message overlaps with the Subaru lateral actuating message + if attr == 'TestVolkswagenMqbLongSafety' and current_test.startswith('TestSubaru'): + tx = list(filter(lambda m: m[0] not in [0x122, ], tx)) + + # Volkswagen MQB and Honda Nidec ACC HUD messages overlap + if attr == 'TestVolkswagenMqbLongSafety' and current_test.startswith('TestHondaNidec'): + tx = list(filter(lambda m: m[0] not in [0x30c, ], tx)) + + # Volkswagen MQB and Honda Bosch Radarless ACC HUD messages overlap + if attr == 'TestVolkswagenMqbLongSafety' and current_test.startswith('TestHondaBoschRadarless'): + tx = list(filter(lambda m: m[0] not in [0x30c, ], tx)) + + # TODO: Temporary, should be fixed in panda firmware, safety_honda.h + if attr.startswith('TestHonda'): + # exceptions for common msgs across different hondas + tx = list(filter(lambda m: m[0] not in [0x1FA, 0x30C, 0x33D, 0x33DB], tx)) + + if attr.startswith('TestHyundaiLongitudinal'): + # exceptions for common msgs across different Hyundai CAN platforms + tx = list(filter(lambda m: m[0] not in [0x420, 0x50A, 0x389, 0x4A2], tx)) + all_tx.append([[m[0], m[1], attr] for m in tx]) + + # make sure we got all the msgs + self.assertTrue(len(all_tx) >= len(test_files)-1) + + for tx_msgs in all_tx: + for addr, bus, test_name in tx_msgs: + msg = make_msg(bus, addr) + self.safety.set_controls_allowed(1) + # TODO: this should be blocked + if current_test in ["TestNissanSafety", "TestNissanSafetyAltEpsBus", "TestNissanLeafSafety"] and [addr, bus] in self.TX_MSGS: + continue + self.assertFalse(self._tx(msg), f"transmit of {addr=:#x} {bus=} from {test_name} during {current_test} was allowed") + + +@add_regen_tests +class PandaCarSafetyTest(PandaSafetyTest): + STANDSTILL_THRESHOLD: float = 0.0 + GAS_PRESSED_THRESHOLD = 0 + RELAY_MALFUNCTION_ADDRS: dict[int, tuple[int, ...]] | None = None + + @classmethod + def setUpClass(cls): + if cls.__name__ == "PandaCarSafetyTest" or cls.__name__.endswith('Base'): + cls.safety = None + raise unittest.SkipTest + + @abc.abstractmethod + def _user_brake_msg(self, brake): + pass + + def _user_regen_msg(self, regen): + pass + + @abc.abstractmethod + def _speed_msg(self, speed): + pass + + # Safety modes can override if vehicle_moving is driven by a different message + def _vehicle_moving_msg(self, speed: float): + return self._speed_msg(speed) + + @abc.abstractmethod + def _user_gas_msg(self, gas): + pass + + @abc.abstractmethod + def _pcm_status_msg(self, enable): + pass + + # ***** standard tests for all car-specific safety modes ***** + + def test_relay_malfunction(self): + # each car has an addr that is used to detect relay malfunction + # if that addr is seen on specified bus, triggers the relay malfunction + # protection logic: both tx_hook and fwd_hook are expected to return failure + self.assertFalse(self.safety.get_relay_malfunction()) + for bus in range(3): + for addr in self.SCANNED_ADDRS: + self.safety.set_relay_malfunction(False) + self._rx(make_msg(bus, addr, 8)) + should_relay_malfunction = addr in self.RELAY_MALFUNCTION_ADDRS.get(bus, ()) + self.assertEqual(should_relay_malfunction, self.safety.get_relay_malfunction(), (bus, addr)) + + # test relay malfunction protection logic + self.safety.set_relay_malfunction(True) + for bus in range(3): + for addr in self.SCANNED_ADDRS: + self.assertFalse(self._tx(make_msg(bus, addr, 8))) + self.assertEqual(-1, self.safety.safety_fwd_hook(bus, addr)) + + def test_prev_gas(self): + self.assertFalse(self.safety.get_gas_pressed_prev()) + for pressed in [self.GAS_PRESSED_THRESHOLD + 1, 0]: + self._rx(self._user_gas_msg(pressed)) + self.assertEqual(bool(pressed), self.safety.get_gas_pressed_prev()) + + def test_allow_engage_with_gas_pressed(self): + self._rx(self._user_gas_msg(1)) + self.safety.set_controls_allowed(True) + self._rx(self._user_gas_msg(1)) + self.assertTrue(self.safety.get_controls_allowed()) + self._rx(self._user_gas_msg(1)) + self.assertTrue(self.safety.get_controls_allowed()) + + def test_disengage_on_gas(self): + self._rx(self._user_gas_msg(0)) + self.safety.set_controls_allowed(True) + self._rx(self._user_gas_msg(self.GAS_PRESSED_THRESHOLD + 1)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_alternative_experience_no_disengage_on_gas(self): + self._rx(self._user_gas_msg(0)) + self.safety.set_controls_allowed(True) + self.safety.set_alternative_experience(ALTERNATIVE_EXPERIENCE.DISABLE_DISENGAGE_ON_GAS) + self._rx(self._user_gas_msg(self.GAS_PRESSED_THRESHOLD + 1)) + # Test we allow lateral, but not longitudinal + self.assertTrue(self.safety.get_controls_allowed()) + self.assertFalse(self.safety.get_longitudinal_allowed()) + # Make sure we can re-gain longitudinal actuation + self._rx(self._user_gas_msg(0)) + self.assertTrue(self.safety.get_longitudinal_allowed()) + + def test_prev_user_brake(self, _user_brake_msg=None, get_brake_pressed_prev=None): + if _user_brake_msg is None: + _user_brake_msg = self._user_brake_msg + get_brake_pressed_prev = self.safety.get_brake_pressed_prev + + self.assertFalse(get_brake_pressed_prev()) + for pressed in [True, False]: + self._rx(_user_brake_msg(not pressed)) + self.assertEqual(not pressed, get_brake_pressed_prev()) + self._rx(_user_brake_msg(pressed)) + self.assertEqual(pressed, get_brake_pressed_prev()) + + def test_enable_control_allowed_from_cruise(self): + self._rx(self._pcm_status_msg(False)) + self.assertFalse(self.safety.get_controls_allowed()) + self._rx(self._pcm_status_msg(True)) + self.assertTrue(self.safety.get_controls_allowed()) + + def test_disable_control_allowed_from_cruise(self): + self.safety.set_controls_allowed(1) + self._rx(self._pcm_status_msg(False)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_cruise_engaged_prev(self): + for engaged in [True, False]: + self._rx(self._pcm_status_msg(engaged)) + self.assertEqual(engaged, self.safety.get_cruise_engaged_prev()) + self._rx(self._pcm_status_msg(not engaged)) + self.assertEqual(not engaged, self.safety.get_cruise_engaged_prev()) + + def test_allow_user_brake_at_zero_speed(self, _user_brake_msg=None, get_brake_pressed_prev=None): + if _user_brake_msg is None: + _user_brake_msg = self._user_brake_msg + + # Brake was already pressed + self._rx(self._vehicle_moving_msg(0)) + self._rx(_user_brake_msg(1)) + self.safety.set_controls_allowed(1) + self._rx(_user_brake_msg(1)) + self.assertTrue(self.safety.get_controls_allowed()) + self.assertTrue(self.safety.get_longitudinal_allowed()) + self._rx(_user_brake_msg(0)) + self.assertTrue(self.safety.get_controls_allowed()) + self.assertTrue(self.safety.get_longitudinal_allowed()) + # rising edge of brake should disengage + self._rx(_user_brake_msg(1)) + self.assertFalse(self.safety.get_controls_allowed()) + self.assertFalse(self.safety.get_longitudinal_allowed()) + self._rx(_user_brake_msg(0)) # reset no brakes + + def test_not_allow_user_brake_when_moving(self, _user_brake_msg=None, get_brake_pressed_prev=None): + if _user_brake_msg is None: + _user_brake_msg = self._user_brake_msg + + # Brake was already pressed + self._rx(_user_brake_msg(1)) + self.safety.set_controls_allowed(1) + self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD)) + self._rx(_user_brake_msg(1)) + self.assertTrue(self.safety.get_controls_allowed()) + self.assertTrue(self.safety.get_longitudinal_allowed()) + self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD + 1)) + self._rx(_user_brake_msg(1)) + self.assertFalse(self.safety.get_controls_allowed()) + self.assertFalse(self.safety.get_longitudinal_allowed()) + self._rx(self._vehicle_moving_msg(0)) + + def test_vehicle_moving(self): + self.assertFalse(self.safety.get_vehicle_moving()) + + # not moving + self._rx(self._vehicle_moving_msg(0)) + self.assertFalse(self.safety.get_vehicle_moving()) + + # speed is at threshold + self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD)) + self.assertFalse(self.safety.get_vehicle_moving()) + + # past threshold + self._rx(self._vehicle_moving_msg(self.STANDSTILL_THRESHOLD + 1)) + self.assertTrue(self.safety.get_vehicle_moving()) + + def test_safety_tick(self): + self.safety.set_timer(int(2e6)) + self.safety.set_controls_allowed(True) + self.safety.safety_tick_current_safety_config() + self.assertFalse(self.safety.get_controls_allowed()) + self.assertFalse(self.safety.safety_config_valid()) diff --git a/opendbc_repo/opendbc/safety/tests/hyundai_common.py b/opendbc_repo/opendbc/safety/tests/hyundai_common.py new file mode 100644 index 0000000000..354c781e91 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/hyundai_common.py @@ -0,0 +1,155 @@ +import unittest + +import opendbc.safety.tests.common as common +from opendbc.safety.tests.libsafety import libsafety_py +from opendbc.safety.tests.common import make_msg + + +class Buttons: + NONE = 0 + RESUME = 1 + SET = 2 + CANCEL = 4 + + +PREV_BUTTON_SAMPLES = 8 +ENABLE_BUTTONS = (Buttons.RESUME, Buttons.SET, Buttons.CANCEL) + + +class HyundaiButtonBase: + # pylint: disable=no-member,abstract-method + BUTTONS_TX_BUS = 0 # tx on this bus, rx on 0 + SCC_BUS = 0 # rx on this bus + + def test_button_sends(self): + """ + Only RES and CANCEL buttons are allowed + - RES allowed while controls allowed + - CANCEL allowed while cruise is enabled + """ + self.safety.set_controls_allowed(0) + self.assertFalse(self._tx(self._button_msg(Buttons.RESUME, bus=self.BUTTONS_TX_BUS))) + self.assertFalse(self._tx(self._button_msg(Buttons.SET, bus=self.BUTTONS_TX_BUS))) + + self.safety.set_controls_allowed(1) + self.assertTrue(self._tx(self._button_msg(Buttons.RESUME, bus=self.BUTTONS_TX_BUS))) + self.assertFalse(self._tx(self._button_msg(Buttons.SET, bus=self.BUTTONS_TX_BUS))) + + for enabled in (True, False): + self._rx(self._pcm_status_msg(enabled)) + self.assertEqual(enabled, self._tx(self._button_msg(Buttons.CANCEL, bus=self.BUTTONS_TX_BUS))) + + def test_enable_control_allowed_from_cruise(self): + """ + Hyundai non-longitudinal only enables on PCM rising edge and recent button press. Tests PCM enabling with: + - disallowed: No buttons + - disallowed: Buttons that don't enable cruise + - allowed: Buttons that do enable cruise + - allowed: Main button with all above combinations + """ + for main_button in (0, 1): + for btn in range(8): + for _ in range(PREV_BUTTON_SAMPLES): # reset + self._rx(self._button_msg(Buttons.NONE)) + + self._rx(self._pcm_status_msg(False)) + self.assertFalse(self.safety.get_controls_allowed()) + self._rx(self._button_msg(btn, main_button=main_button)) + self._rx(self._pcm_status_msg(True)) + controls_allowed = btn in ENABLE_BUTTONS or main_button + self.assertEqual(controls_allowed, self.safety.get_controls_allowed()) + + def test_sampling_cruise_buttons(self): + """ + Test that we allow controls on recent button press, but not as button leaves sliding window + """ + self._rx(self._button_msg(Buttons.SET)) + for i in range(2 * PREV_BUTTON_SAMPLES): + self._rx(self._pcm_status_msg(False)) + self.assertFalse(self.safety.get_controls_allowed()) + self._rx(self._pcm_status_msg(True)) + controls_allowed = i < PREV_BUTTON_SAMPLES + self.assertEqual(controls_allowed, self.safety.get_controls_allowed()) + self._rx(self._button_msg(Buttons.NONE)) + + +class HyundaiLongitudinalBase(common.LongitudinalAccelSafetyTest): + # pylint: disable=no-member,abstract-method + + DISABLED_ECU_UDS_MSG: tuple[int, int] + DISABLED_ECU_ACTUATION_MSG: tuple[int, int] + + @classmethod + def setUpClass(cls): + if cls.__name__ == "HyundaiLongitudinalBase": + cls.safety = None + raise unittest.SkipTest + + # override these tests from PandaCarSafetyTest, hyundai longitudinal uses button enable + def test_disable_control_allowed_from_cruise(self): + pass + + def test_enable_control_allowed_from_cruise(self): + pass + + def test_sampling_cruise_buttons(self): + pass + + def test_cruise_engaged_prev(self): + pass + + def test_button_sends(self): + pass + + def _pcm_status_msg(self, enable): + raise Exception + + def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): + raise NotImplementedError + + def test_set_resume_buttons(self): + """ + SET and RESUME enter controls allowed on their falling edge. + """ + for btn_prev in range(8): + for btn_cur in range(8): + self._rx(self._button_msg(Buttons.NONE)) + self.safety.set_controls_allowed(0) + for _ in range(10): + self._rx(self._button_msg(btn_prev)) + self.assertFalse(self.safety.get_controls_allowed()) + + # should enter controls allowed on falling edge and not transitioning to cancel + should_enable = btn_cur != btn_prev and \ + btn_cur != Buttons.CANCEL and \ + btn_prev in (Buttons.RESUME, Buttons.SET) + + self._rx(self._button_msg(btn_cur)) + self.assertEqual(should_enable, self.safety.get_controls_allowed()) + + def test_cancel_button(self): + self.safety.set_controls_allowed(1) + self._rx(self._button_msg(Buttons.CANCEL)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_tester_present_allowed(self, ecu_disable: bool = True): + """ + Ensure tester present diagnostic message is allowed to keep ECU knocked out + for longitudinal control. + """ + + addr, bus = self.DISABLED_ECU_UDS_MSG + for should_tx, msg in ((True, b"\x02\x3E\x80\x00\x00\x00\x00\x00"), + (False, b"\x03\xAA\xAA\x00\x00\x00\x00\x00")): + tester_present = libsafety_py.make_CANPacket(addr, bus, msg) + self.assertEqual(should_tx and ecu_disable, self._tx(tester_present)) + + def test_disabled_ecu_alive(self): + """ + If the ECU knockout failed, make sure the relay malfunction is shown + """ + + addr, bus = self.DISABLED_ECU_ACTUATION_MSG + self.assertFalse(self.safety.get_relay_malfunction()) + self._rx(make_msg(bus, addr, 8)) + self.assertTrue(self.safety.get_relay_malfunction()) diff --git a/opendbc_repo/opendbc/safety/tests/install_mull.sh b/opendbc_repo/opendbc/safety/tests/install_mull.sh new file mode 100755 index 0000000000..75b1042ec3 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/install_mull.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash +set -e + +DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" +cd $DIR + +if ! command -v "mull-runner-17" > /dev/null 2>&1; then + sudo apt-get update && sudo apt-get install -y curl clang-17 + curl -1sLf 'https://dl.cloudsmith.io/public/mull-project/mull-stable/setup.deb.sh' | sudo -E bash + sudo apt-get update && sudo apt-get install -y mull-17 +fi diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/SConscript b/opendbc_repo/opendbc/safety/tests/libsafety/SConscript new file mode 100644 index 0000000000..0582e5c256 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/libsafety/SConscript @@ -0,0 +1,56 @@ +import platform + +CC = 'gcc' +system = platform.system() +if system == 'Darwin': + # gcc installed by homebrew has version suffix (e.g. gcc-12) in order to be + # distinguishable from system one - which acts as a symlink to clang + CC += '-13' + +env = Environment( + CC=CC, + CFLAGS=[ + '-Wall', + '-Werror', + '-nostdlib', + '-fno-builtin', + '-std=gnu11', + '-Wfatal-errors', + '-Wno-pointer-to-int-cast', + ], + CPPPATH=[".", "../../board/", "../../"], +) +if system == "Darwin": + env.PrependENVPath('PATH', '/opt/homebrew/bin') + +if GetOption('mutation'): + env['CC'] = 'clang-17' + flags = [ + '-fprofile-instr-generate', + '-fcoverage-mapping', + '-fpass-plugin=/usr/lib/mull-ir-frontend-17', + '-g', + '-grecord-command-line', + ] + env['CFLAGS'] += flags + env['LINKFLAGS'] += flags + +if GetOption('ubsan'): + flags = [ + "-fsanitize=undefined", + "-fno-sanitize-recover=undefined", + ] + env['CFLAGS'] += flags + env['LINKFLAGS'] += flags + +safety = env.SharedObject("safety.os", "safety.c") +libsafety = env.SharedLibrary("libsafety.so", [safety]) + +if GetOption('coverage'): + env.Append( + CFLAGS=["-fprofile-arcs", "-ftest-coverage", "-fprofile-abs-path",], + LIBS=["gcov"], + ) + # GCC note file is generated by compiler, ensure we build it, and allow scons to clean it up + AlwaysBuild(safety) + env.SideEffect("safety.gcno", safety) diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/__init__.py b/opendbc_repo/opendbc/safety/tests/libsafety/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py b/opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py new file mode 100644 index 0000000000..e851c6bca8 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/libsafety/libsafety_py.py @@ -0,0 +1,75 @@ +import os +from cffi import FFI +from typing import Protocol + +from opendbc.safety import LEN_TO_DLC +from opendbc.safety.tests.libsafety.safety_helpers import PandaSafety, setup_safety_helpers + +libsafety_dir = os.path.dirname(os.path.abspath(__file__)) +libsafety_fn = os.path.join(libsafety_dir, "libsafety.so") + +ffi = FFI() + +ffi.cdef(""" +typedef struct { + unsigned char fd : 1; + unsigned char bus : 3; + unsigned char data_len_code : 4; + unsigned char rejected : 1; + unsigned char returned : 1; + unsigned char extended : 1; + unsigned int addr : 29; + unsigned char checksum; + unsigned char data[64]; +} CANPacket_t; +""", packed=True) + +ffi.cdef(""" +bool safety_rx_hook(CANPacket_t *to_send); +bool safety_tx_hook(CANPacket_t *to_push); +int safety_fwd_hook(int bus_num, int addr); +int set_safety_hooks(uint16_t mode, uint16_t param); +""") + +ffi.cdef(""" +void can_set_checksum(CANPacket_t *packet); +""") + +setup_safety_helpers(ffi) + +class CANPacket: + reserved: int + bus: int + data_len_code: int + rejected: int + returned: int + extended: int + addr: int + data: list[int] + +class Panda(PandaSafety, Protocol): + # CAN + def can_set_checksum(self, p: CANPacket) -> None: ... + + # safety + def safety_rx_hook(self, to_send: CANPacket) -> int: ... + def safety_tx_hook(self, to_push: CANPacket) -> int: ... + def safety_fwd_hook(self, bus_num: int, addr: int) -> int: ... + def set_safety_hooks(self, mode: int, param: int) -> int: ... + + +libsafety: Panda = ffi.dlopen(libsafety_fn) + + +# helpers + +def make_CANPacket(addr: int, bus: int, dat): + ret = ffi.new('CANPacket_t *') + ret[0].extended = 1 if addr >= 0x800 else 0 + ret[0].addr = addr + ret[0].data_len_code = LEN_TO_DLC[len(dat)] + ret[0].bus = bus + ret[0].data = bytes(dat) + libsafety.can_set_checksum(ret) + + return ret diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/safety.c b/opendbc_repo/opendbc/safety/tests/libsafety/safety.c new file mode 100644 index 0000000000..bdb63596b1 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/libsafety/safety.c @@ -0,0 +1,13 @@ +#include + +#include "fake_stm.h" +#include "can.h" + +//int safety_tx_hook(CANPacket_t *to_send) { return 1; } + +#include "faults.h" +#include "safety.h" +#include "drivers/can_common.h" + +// libsafety stuff +#include "safety_helpers.h" diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h b/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h new file mode 100644 index 0000000000..84e7eb736b --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.h @@ -0,0 +1,183 @@ +void safety_tick_current_safety_config() { + safety_tick(¤t_safety_config); +} + +bool safety_config_valid() { + if (current_safety_config.rx_checks_len <= 0) { + printf("missing RX checks\n"); + return false; + } + + for (int i = 0; i < current_safety_config.rx_checks_len; i++) { + const RxCheck addr = current_safety_config.rx_checks[i]; + bool valid = addr.status.msg_seen && !addr.status.lagging && addr.status.valid_checksum && (addr.status.wrong_counters < MAX_WRONG_COUNTERS) && addr.status.valid_quality_flag; + if (!valid) { + // printf("i %d seen %d lagging %d valid checksum %d wrong counters %d valid quality flag %d\n", i, addr.status.msg_seen, addr.status.lagging, addr.status.valid_checksum, addr.status.wrong_counters, addr.status.valid_quality_flag); + return false; + } + } + return true; +} + +void set_controls_allowed(bool c){ + controls_allowed = c; +} + +void set_alternative_experience(int mode){ + alternative_experience = mode; +} + +void set_relay_malfunction(bool c){ + relay_malfunction = c; +} + +bool get_controls_allowed(void){ + return controls_allowed; +} + +int get_alternative_experience(void){ + return alternative_experience; +} + +bool get_relay_malfunction(void){ + return relay_malfunction; +} + +bool get_gas_pressed_prev(void){ + return gas_pressed_prev; +} + +void set_gas_pressed_prev(bool c){ + gas_pressed_prev = c; +} + +bool get_brake_pressed_prev(void){ + return brake_pressed_prev; +} + +bool get_regen_braking_prev(void){ + return regen_braking_prev; +} + +bool get_cruise_engaged_prev(void){ + return cruise_engaged_prev; +} + +void set_cruise_engaged_prev(bool engaged){ + cruise_engaged_prev = engaged; +} + +bool get_vehicle_moving(void){ + return vehicle_moving; +} + +bool get_acc_main_on(void){ + return acc_main_on; +} + +float get_vehicle_speed_min(void){ + return vehicle_speed.min / VEHICLE_SPEED_FACTOR; +} + +float get_vehicle_speed_max(void){ + return vehicle_speed.max / VEHICLE_SPEED_FACTOR; +} + +int get_current_safety_mode(void){ + return current_safety_mode; +} + +int get_current_safety_param(void){ + return current_safety_param; +} + +void set_timer(uint32_t t){ + timer.CNT = t; +} + +void set_torque_meas(int min, int max){ + torque_meas.min = min; + torque_meas.max = max; +} + +int get_torque_meas_min(void){ + return torque_meas.min; +} + +int get_torque_meas_max(void){ + return torque_meas.max; +} + +void set_torque_driver(int min, int max){ + torque_driver.min = min; + torque_driver.max = max; +} + +int get_torque_driver_min(void){ + return torque_driver.min; +} + +int get_torque_driver_max(void){ + return torque_driver.max; +} + +void set_rt_torque_last(int t){ + rt_torque_last = t; +} + +void set_desired_torque_last(int t){ + desired_torque_last = t; +} + +void set_desired_angle_last(int t){ + desired_angle_last = t; +} + +int get_desired_angle_last(void){ + return desired_angle_last; +} + +void set_angle_meas(int min, int max){ + angle_meas.min = min; + angle_meas.max = max; +} + +int get_angle_meas_min(void){ + return angle_meas.min; +} + +int get_angle_meas_max(void){ + return angle_meas.max; +} + + +// ***** car specific helpers ***** + +void set_honda_alt_brake_msg(bool c){ + honda_alt_brake_msg = c; +} + +void set_honda_bosch_long(bool c){ + honda_bosch_long = c; +} + +int get_honda_hw(void) { + return honda_hw; +} + +void set_honda_fwd_brake(bool c){ + honda_fwd_brake = c; +} + +bool get_honda_fwd_brake(void){ + return honda_fwd_brake; +} + +void init_tests(void){ + safety_mode_cnt = 2U; // avoid ignoring relay_malfunction logic + alternative_experience = 0; + set_timer(0); + ts_steer_req_mismatch_last = 0; + valid_steer_req_count = 0; + invalid_steer_req_count = 0; +} diff --git a/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py b/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py new file mode 100644 index 0000000000..cd116fb59a --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/libsafety/safety_helpers.py @@ -0,0 +1,102 @@ +# panda safety helpers, from safety_helpers.c +from typing import Protocol + +def setup_safety_helpers(ffi): + ffi.cdef(""" + void set_controls_allowed(bool c); + bool get_controls_allowed(void); + bool get_longitudinal_allowed(void); + void set_alternative_experience(int mode); + int get_alternative_experience(void); + void set_relay_malfunction(bool c); + bool get_relay_malfunction(void); + bool get_gas_pressed_prev(void); + void set_gas_pressed_prev(bool); + bool get_brake_pressed_prev(void); + bool get_regen_braking_prev(void); + bool get_acc_main_on(void); + float get_vehicle_speed_min(void); + float get_vehicle_speed_max(void); + int get_current_safety_mode(void); + int get_current_safety_param(void); + + void set_torque_meas(int min, int max); + int get_torque_meas_min(void); + int get_torque_meas_max(void); + void set_torque_driver(int min, int max); + int get_torque_driver_min(void); + int get_torque_driver_max(void); + void set_desired_torque_last(int t); + void set_rt_torque_last(int t); + void set_desired_angle_last(int t); + int get_desired_angle_last(); + void set_angle_meas(int min, int max); + int get_angle_meas_min(void); + int get_angle_meas_max(void); + + bool get_cruise_engaged_prev(void); + void set_cruise_engaged_prev(bool engaged); + bool get_vehicle_moving(void); + void set_timer(uint32_t t); + + void safety_tick_current_safety_config(); + bool safety_config_valid(); + + void init_tests(void); + + void set_honda_fwd_brake(bool c); + bool get_honda_fwd_brake(void); + void set_honda_alt_brake_msg(bool c); + void set_honda_bosch_long(bool c); + int get_honda_hw(void); + """) + +class PandaSafety(Protocol): + def set_controls_allowed(self, c: bool) -> None: ... + def get_controls_allowed(self) -> bool: ... + def get_longitudinal_allowed(self) -> bool: ... + def set_alternative_experience(self, mode: int) -> None: ... + def get_alternative_experience(self) -> int: ... + def set_relay_malfunction(self, c: bool) -> None: ... + def get_relay_malfunction(self) -> bool: ... + def get_gas_pressed_prev(self) -> bool: ... + def set_gas_pressed_prev(self, c: bool) -> None: ... + def get_brake_pressed_prev(self) -> bool: ... + def get_regen_braking_prev(self) -> bool: ... + def get_acc_main_on(self) -> bool: ... + def get_vehicle_speed_min(self) -> int: ... + def get_vehicle_speed_max(self) -> int: ... + def get_current_safety_mode(self) -> int: ... + def get_current_safety_param(self) -> int: ... + + def set_torque_meas(self, min: int, max: int) -> None: ... # noqa: A002 + def get_torque_meas_min(self) -> int: ... + def get_torque_meas_max(self) -> int: ... + def set_torque_driver(self, min: int, max: int) -> None: ... # noqa: A002 + def get_torque_driver_min(self) -> int: ... + def get_torque_driver_max(self) -> int: ... + def set_desired_torque_last(self, t: int) -> None: ... + def set_rt_torque_last(self, t: int) -> None: ... + def set_desired_angle_last(self, t: int) -> None: ... + def get_desired_angle_last(self) -> int: ... + def set_angle_meas(self, min: int, max: int) -> None: ... # noqa: A002 + def get_angle_meas_min(self) -> int: ... + def get_angle_meas_max(self) -> int: ... + + def get_cruise_engaged_prev(self) -> bool: ... + def set_cruise_engaged_prev(self, enabled: bool) -> None: ... + def get_vehicle_moving(self) -> bool: ... + def set_timer(self, t: int) -> None: ... + + def safety_tick_current_safety_config(self) -> None: ... + def safety_config_valid(self) -> bool: ... + + def init_tests(self) -> None: ... + + def set_honda_fwd_brake(self, c: bool) -> None: ... + def get_honda_fwd_brake(self) -> bool: ... + def set_honda_alt_brake_msg(self, c: bool) -> None: ... + def set_honda_bosch_long(self, c: bool) -> None: ... + def get_honda_hw(self) -> int: ... + + diff --git a/opendbc_repo/opendbc/safety/tests/misra/.gitignore b/opendbc_repo/opendbc/safety/tests/misra/.gitignore new file mode 100644 index 0000000000..fc9ac228cb --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/.gitignore @@ -0,0 +1,5 @@ +*.pdf +*.txt +.output.log +new_table +cppcheck/ diff --git a/opendbc_repo/opendbc/safety/tests/misra/checkers.txt b/opendbc_repo/opendbc/safety/tests/misra/checkers.txt new file mode 100644 index 0000000000..4e6f517e8c --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/checkers.txt @@ -0,0 +1,911 @@ +Cppcheck checkers list from test_misra.sh: + + + + + +TEST variant options: +--enable=all --disable=unusedFunction -DPANDA --addon=misra -DSTM32F4 -DSTM32F413xx /opendbc/safety/main.c + + +Critical errors +--------------- +No critical errors encountered. +Note: There might still have been non-critical bailouts which might lead to false negatives. + + +Open source checkers +-------------------- +Yes Check64BitPortability::pointerassignment +Yes CheckAssert::assertWithSideEffects +Yes CheckAutoVariables::assignFunctionArg +Yes CheckAutoVariables::autoVariables +Yes CheckAutoVariables::checkVarLifetime +No CheckBool::checkAssignBoolToFloat require:style,c++ +Yes CheckBool::checkAssignBoolToPointer +No CheckBool::checkBitwiseOnBoolean require:style,inconclusive +Yes CheckBool::checkComparisonOfBoolExpressionWithInt +No CheckBool::checkComparisonOfBoolWithBool require:style,c++ +No CheckBool::checkComparisonOfBoolWithInt require:warning,c++ +No CheckBool::checkComparisonOfFuncReturningBool require:style,c++ +Yes CheckBool::checkIncrementBoolean +Yes CheckBool::pointerArithBool +Yes CheckBool::returnValueOfFunctionReturningBool +No CheckBoost::checkBoostForeachModification +Yes CheckBufferOverrun::analyseWholeProgram +Yes CheckBufferOverrun::argumentSize +Yes CheckBufferOverrun::arrayIndex +Yes CheckBufferOverrun::arrayIndexThenCheck +Yes CheckBufferOverrun::bufferOverflow +Yes CheckBufferOverrun::negativeArraySize +Yes CheckBufferOverrun::objectIndex +Yes CheckBufferOverrun::pointerArithmetic +No CheckBufferOverrun::stringNotZeroTerminated require:warning,inconclusive +Yes CheckClass::analyseWholeProgram +No CheckClass::checkConst require:style,inconclusive +No CheckClass::checkConstructors require:style,warning +No CheckClass::checkCopyConstructors require:warning +No CheckClass::checkDuplInheritedMembers require:warning +No CheckClass::checkExplicitConstructors require:style +No CheckClass::checkMemset +No CheckClass::checkMissingOverride require:style,c++03 +No CheckClass::checkReturnByReference require:performance +No CheckClass::checkSelfInitialization +No CheckClass::checkThisUseAfterFree require:warning +No CheckClass::checkUnsafeClassRefMember require:warning,safeChecks +No CheckClass::checkUselessOverride require:style +No CheckClass::checkVirtualFunctionCallInConstructor require:warning +No CheckClass::initializationListUsage require:performance +No CheckClass::initializerListOrder require:style,inconclusive +No CheckClass::operatorEqRetRefThis require:style +No CheckClass::operatorEqToSelf require:warning +No CheckClass::privateFunctions require:style +No CheckClass::thisSubtraction require:warning +No CheckClass::virtualDestructor +Yes CheckCondition::alwaysTrueFalse +Yes CheckCondition::assignIf +Yes CheckCondition::checkAssignmentInCondition +Yes CheckCondition::checkBadBitmaskCheck +Yes CheckCondition::checkCompareValueOutOfTypeRange +Yes CheckCondition::checkDuplicateConditionalAssign +Yes CheckCondition::checkIncorrectLogicOperator +Yes CheckCondition::checkInvalidTestForOverflow +Yes CheckCondition::checkModuloAlwaysTrueFalse +Yes CheckCondition::checkPointerAdditionResultNotNull +Yes CheckCondition::clarifyCondition +Yes CheckCondition::comparison +Yes CheckCondition::duplicateCondition +Yes CheckCondition::multiCondition +Yes CheckCondition::multiCondition2 +No CheckExceptionSafety::checkCatchExceptionByValue require:style +No CheckExceptionSafety::checkRethrowCopy require:style +No CheckExceptionSafety::deallocThrow require:warning +No CheckExceptionSafety::destructors require:warning +No CheckExceptionSafety::nothrowThrows +No CheckExceptionSafety::rethrowNoCurrentException +No CheckExceptionSafety::unhandledExceptionSpecification require:style,inconclusive +Yes CheckFunctions::checkIgnoredReturnValue +Yes CheckFunctions::checkMathFunctions +Yes CheckFunctions::checkMissingReturn +Yes CheckFunctions::checkProhibitedFunctions +Yes CheckFunctions::invalidFunctionUsage +Yes CheckFunctions::memsetInvalid2ndParam +Yes CheckFunctions::memsetZeroBytes +No CheckFunctions::returnLocalStdMove require:performance,c++11 +Yes CheckFunctions::useStandardLibrary +No CheckIO::checkCoutCerrMisusage require:c +Yes CheckIO::checkFileUsage +Yes CheckIO::checkWrongPrintfScanfArguments +Yes CheckIO::invalidScanf +Yes CheckLeakAutoVar::check +No CheckMemoryLeakInClass::check +Yes CheckMemoryLeakInFunction::checkReallocUsage +Yes CheckMemoryLeakNoVar::check +No CheckMemoryLeakNoVar::checkForUnsafeArgAlloc +Yes CheckMemoryLeakStructMember::check +Yes CheckNullPointer::analyseWholeProgram +Yes CheckNullPointer::arithmetic +Yes CheckNullPointer::nullConstantDereference +Yes CheckNullPointer::nullPointer +No CheckOther::checkAccessOfMovedVariable require:c++11,warning +Yes CheckOther::checkCastIntToCharAndBack +Yes CheckOther::checkCharVariable +Yes CheckOther::checkComparePointers +Yes CheckOther::checkComparisonFunctionIsAlwaysTrueOrFalse +Yes CheckOther::checkConstPointer +No CheckOther::checkConstVariable require:style,c++ +No CheckOther::checkDuplicateBranch require:style,inconclusive +Yes CheckOther::checkDuplicateExpression +Yes CheckOther::checkEvaluationOrder +Yes CheckOther::checkFuncArgNamesDifferent +No CheckOther::checkIncompleteArrayFill require:warning,portability,inconclusive +Yes CheckOther::checkIncompleteStatement +No CheckOther::checkInterlockedDecrement require:windows-platform +Yes CheckOther::checkInvalidFree +Yes CheckOther::checkKnownArgument +Yes CheckOther::checkKnownPointerToBool +No CheckOther::checkMisusedScopedObject require:style,c++ +Yes CheckOther::checkModuloOfOne +Yes CheckOther::checkNanInArithmeticExpression +Yes CheckOther::checkNegativeBitwiseShift +Yes CheckOther::checkOverlappingWrite +No CheckOther::checkPassByReference require:performance,c++ +Yes CheckOther::checkRedundantAssignment +No CheckOther::checkRedundantCopy require:c++,performance,inconclusive +Yes CheckOther::checkRedundantPointerOp +Yes CheckOther::checkShadowVariables +Yes CheckOther::checkSignOfUnsignedVariable +No CheckOther::checkSuspiciousCaseInSwitch require:warning,inconclusive +No CheckOther::checkSuspiciousSemicolon require:warning,inconclusive +Yes CheckOther::checkUnreachableCode +Yes CheckOther::checkUnusedLabel +Yes CheckOther::checkVarFuncNullUB +Yes CheckOther::checkVariableScope +Yes CheckOther::checkZeroDivision +Yes CheckOther::clarifyCalculation +Yes CheckOther::clarifyStatement +Yes CheckOther::invalidPointerCast +Yes CheckOther::redundantBitwiseOperationInSwitch +Yes CheckOther::suspiciousFloatingPointCast +No CheckOther::warningOldStylePointerCast require:style,c++ +No CheckPostfixOperator::postfixOperator require:performance +Yes CheckSizeof::checkSizeofForArrayParameter +Yes CheckSizeof::checkSizeofForNumericParameter +Yes CheckSizeof::checkSizeofForPointerSize +Yes CheckSizeof::sizeofCalculation +Yes CheckSizeof::sizeofFunction +Yes CheckSizeof::sizeofVoid +Yes CheckSizeof::sizeofsizeof +No CheckSizeof::suspiciousSizeofCalculation require:warning,inconclusive +No CheckStl::checkDereferenceInvalidIterator require:warning +No CheckStl::checkDereferenceInvalidIterator2 +No CheckStl::checkFindInsert require:performance +No CheckStl::checkMutexes require:warning +No CheckStl::erase +No CheckStl::eraseIteratorOutOfBounds +No CheckStl::if_find require:warning,performance +No CheckStl::invalidContainer +No CheckStl::iterators +No CheckStl::knownEmptyContainer require:style +No CheckStl::misMatchingContainerIterator +No CheckStl::misMatchingContainers +No CheckStl::missingComparison require:warning +No CheckStl::negativeIndex +No CheckStl::outOfBounds +No CheckStl::outOfBoundsIndexExpression +No CheckStl::redundantCondition require:style +No CheckStl::size require:performance,c++03 +No CheckStl::stlBoundaries +No CheckStl::stlOutOfBounds +No CheckStl::string_c_str +No CheckStl::useStlAlgorithm require:style +No CheckStl::uselessCalls require:performance,warning +Yes CheckString::checkAlwaysTrueOrFalseStringCompare +Yes CheckString::checkIncorrectStringCompare +Yes CheckString::checkSuspiciousStringCompare +Yes CheckString::overlappingStrcmp +Yes CheckString::sprintfOverlappingData +Yes CheckString::strPlusChar +Yes CheckString::stringLiteralWrite +Yes CheckType::checkFloatToIntegerOverflow +Yes CheckType::checkIntegerOverflow +Yes CheckType::checkLongCast +Yes CheckType::checkSignConversion +Yes CheckType::checkTooBigBitwiseShift +Yes CheckUninitVar::check +Yes CheckUninitVar::valueFlowUninit +No CheckUnusedFunctions::check require:unusedFunction +Yes CheckUnusedVar::checkFunctionVariableUsage +Yes CheckUnusedVar::checkStructMemberUsage +Yes CheckVaarg::va_list_usage +Yes CheckVaarg::va_start_argument + + +Premium checkers +---------------- +Not available, Cppcheck Premium is not used + + +Autosar +------- +Not available, Cppcheck Premium is not used + + +Cert C +------ +Not available, Cppcheck Premium is not used + + +Cert C++ +-------- +Not available, Cppcheck Premium is not used + + +Misra C 2012 +------------ +No Misra C 2012: Dir 1.1 +No Misra C 2012: Dir 2.1 +No Misra C 2012: Dir 3.1 +No Misra C 2012: Dir 4.1 +No Misra C 2012: Dir 4.2 +No Misra C 2012: Dir 4.3 +No Misra C 2012: Dir 4.4 +No Misra C 2012: Dir 4.5 +No Misra C 2012: Dir 4.6 amendment:3 +No Misra C 2012: Dir 4.7 +No Misra C 2012: Dir 4.8 +No Misra C 2012: Dir 4.9 amendment:3 +No Misra C 2012: Dir 4.10 +No Misra C 2012: Dir 4.11 amendment:3 +No Misra C 2012: Dir 4.12 +No Misra C 2012: Dir 4.13 +No Misra C 2012: Dir 4.14 amendment:2 +No Misra C 2012: Dir 4.15 amendment:3 +No Misra C 2012: Dir 5.1 amendment:4 +No Misra C 2012: Dir 5.2 amendment:4 +No Misra C 2012: Dir 5.3 amendment:4 +Yes Misra C 2012: 1.1 +Yes Misra C 2012: 1.2 +Yes Misra C 2012: 1.3 +Yes Misra C 2012: 1.4 amendment:2 +No Misra C 2012: 1.5 amendment:3 require:premium +Yes Misra C 2012: 2.1 +Yes Misra C 2012: 2.2 +Yes Misra C 2012: 2.3 +Yes Misra C 2012: 2.4 +Yes Misra C 2012: 2.5 +Yes Misra C 2012: 2.6 +Yes Misra C 2012: 2.7 +Yes Misra C 2012: 2.8 +Yes Misra C 2012: 3.1 +Yes Misra C 2012: 3.2 +Yes Misra C 2012: 4.1 +Yes Misra C 2012: 4.2 +Yes Misra C 2012: 5.1 +Yes Misra C 2012: 5.2 +Yes Misra C 2012: 5.3 +Yes Misra C 2012: 5.4 +Yes Misra C 2012: 5.5 +Yes Misra C 2012: 5.6 +Yes Misra C 2012: 5.7 +Yes Misra C 2012: 5.8 +Yes Misra C 2012: 5.9 +Yes Misra C 2012: 6.1 +Yes Misra C 2012: 6.2 +No Misra C 2012: 6.3 +Yes Misra C 2012: 7.1 +Yes Misra C 2012: 7.2 +Yes Misra C 2012: 7.3 +Yes Misra C 2012: 7.4 +No Misra C 2012: 7.5 +No Misra C 2012: 7.6 +Yes Misra C 2012: 8.1 +Yes Misra C 2012: 8.2 +No Misra C 2012: 8.3 +Yes Misra C 2012: 8.4 +Yes Misra C 2012: 8.5 +Yes Misra C 2012: 8.6 +Yes Misra C 2012: 8.7 +Yes Misra C 2012: 8.8 +Yes Misra C 2012: 8.9 +Yes Misra C 2012: 8.10 +Yes Misra C 2012: 8.11 +Yes Misra C 2012: 8.12 +Yes Misra C 2012: 8.13 +Yes Misra C 2012: 8.14 +No Misra C 2012: 8.15 +No Misra C 2012: 8.16 +No Misra C 2012: 8.17 +Yes Misra C 2012: 9.1 +Yes Misra C 2012: 9.2 +Yes Misra C 2012: 9.3 +Yes Misra C 2012: 9.4 +Yes Misra C 2012: 9.5 +No Misra C 2012: 9.6 +No Misra C 2012: 9.7 +Yes Misra C 2012: 10.1 +Yes Misra C 2012: 10.2 +Yes Misra C 2012: 10.3 +Yes Misra C 2012: 10.4 +Yes Misra C 2012: 10.5 +Yes Misra C 2012: 10.6 +Yes Misra C 2012: 10.7 +Yes Misra C 2012: 10.8 +Yes Misra C 2012: 11.1 +Yes Misra C 2012: 11.2 +Yes Misra C 2012: 11.3 +Yes Misra C 2012: 11.4 +Yes Misra C 2012: 11.5 +Yes Misra C 2012: 11.6 +Yes Misra C 2012: 11.7 +Yes Misra C 2012: 11.8 +Yes Misra C 2012: 11.9 +No Misra C 2012: 11.10 +Yes Misra C 2012: 12.1 +Yes Misra C 2012: 12.2 +Yes Misra C 2012: 12.3 +Yes Misra C 2012: 12.4 +Yes Misra C 2012: 12.5 amendment:1 +No Misra C 2012: 12.6 amendment:4 require:premium +Yes Misra C 2012: 13.1 +No Misra C 2012: 13.2 +Yes Misra C 2012: 13.3 +Yes Misra C 2012: 13.4 +Yes Misra C 2012: 13.5 +Yes Misra C 2012: 13.6 +Yes Misra C 2012: 14.1 +Yes Misra C 2012: 14.2 +Yes Misra C 2012: 14.3 +Yes Misra C 2012: 14.4 +Yes Misra C 2012: 15.1 +Yes Misra C 2012: 15.2 +Yes Misra C 2012: 15.3 +Yes Misra C 2012: 15.4 +Yes Misra C 2012: 15.5 +Yes Misra C 2012: 15.6 +Yes Misra C 2012: 15.7 +Yes Misra C 2012: 16.1 +Yes Misra C 2012: 16.2 +Yes Misra C 2012: 16.3 +Yes Misra C 2012: 16.4 +Yes Misra C 2012: 16.5 +Yes Misra C 2012: 16.6 +Yes Misra C 2012: 16.7 +Yes Misra C 2012: 17.1 +Yes Misra C 2012: 17.2 +Yes Misra C 2012: 17.3 +No Misra C 2012: 17.4 +Yes Misra C 2012: 17.5 +Yes Misra C 2012: 17.6 +Yes Misra C 2012: 17.7 +Yes Misra C 2012: 17.8 +No Misra C 2012: 17.9 +No Misra C 2012: 17.10 +No Misra C 2012: 17.11 +No Misra C 2012: 17.12 +No Misra C 2012: 17.13 +Yes Misra C 2012: 18.1 +Yes Misra C 2012: 18.2 +Yes Misra C 2012: 18.3 +Yes Misra C 2012: 18.4 +Yes Misra C 2012: 18.5 +Yes Misra C 2012: 18.6 +Yes Misra C 2012: 18.7 +Yes Misra C 2012: 18.8 +No Misra C 2012: 18.9 +No Misra C 2012: 18.10 +Yes Misra C 2012: 19.1 +Yes Misra C 2012: 19.2 +Yes Misra C 2012: 20.1 +Yes Misra C 2012: 20.2 +Yes Misra C 2012: 20.3 +Yes Misra C 2012: 20.4 +Yes Misra C 2012: 20.5 +Yes Misra C 2012: 20.6 +Yes Misra C 2012: 20.7 +Yes Misra C 2012: 20.8 +Yes Misra C 2012: 20.9 +Yes Misra C 2012: 20.10 +Yes Misra C 2012: 20.11 +Yes Misra C 2012: 20.12 +Yes Misra C 2012: 20.13 +Yes Misra C 2012: 20.14 +Yes Misra C 2012: 21.1 +Yes Misra C 2012: 21.2 +Yes Misra C 2012: 21.3 +Yes Misra C 2012: 21.4 +Yes Misra C 2012: 21.5 +Yes Misra C 2012: 21.6 +Yes Misra C 2012: 21.7 +Yes Misra C 2012: 21.8 +Yes Misra C 2012: 21.9 +Yes Misra C 2012: 21.10 +Yes Misra C 2012: 21.11 +Yes Misra C 2012: 21.12 +Yes Misra C 2012: 21.13 amendment:1 +Yes Misra C 2012: 21.14 amendment:1 +Yes Misra C 2012: 21.15 amendment:1 +Yes Misra C 2012: 21.16 amendment:1 +Yes Misra C 2012: 21.17 amendment:1 +Yes Misra C 2012: 21.18 amendment:1 +Yes Misra C 2012: 21.19 amendment:1 +Yes Misra C 2012: 21.20 amendment:1 +Yes Misra C 2012: 21.21 amendment:3 +No Misra C 2012: 21.22 amendment:3 require:premium +No Misra C 2012: 21.23 amendment:3 require:premium +No Misra C 2012: 21.24 amendment:3 require:premium +No Misra C 2012: 21.25 amendment:4 require:premium +No Misra C 2012: 21.26 amendment:4 require:premium +Yes Misra C 2012: 22.1 +Yes Misra C 2012: 22.2 +Yes Misra C 2012: 22.3 +Yes Misra C 2012: 22.4 +Yes Misra C 2012: 22.5 +Yes Misra C 2012: 22.6 +Yes Misra C 2012: 22.7 amendment:1 +Yes Misra C 2012: 22.8 amendment:1 +Yes Misra C 2012: 22.9 amendment:1 +Yes Misra C 2012: 22.10 amendment:1 +No Misra C 2012: 22.11 amendment:4 require:premium +No Misra C 2012: 22.12 amendment:4 require:premium +No Misra C 2012: 22.13 amendment:4 require:premium +No Misra C 2012: 22.14 amendment:4 require:premium +No Misra C 2012: 22.15 amendment:4 require:premium +No Misra C 2012: 22.16 amendment:4 require:premium +No Misra C 2012: 22.17 amendment:4 require:premium +No Misra C 2012: 22.18 amendment:4 require:premium +No Misra C 2012: 22.19 amendment:4 require:premium +No Misra C 2012: 22.20 amendment:4 require:premium +No Misra C 2012: 23.1 amendment:3 require:premium +No Misra C 2012: 23.2 amendment:3 require:premium +No Misra C 2012: 23.3 amendment:3 require:premium +No Misra C 2012: 23.4 amendment:3 require:premium +No Misra C 2012: 23.5 amendment:3 require:premium +No Misra C 2012: 23.6 amendment:3 require:premium +No Misra C 2012: 23.7 amendment:3 require:premium +No Misra C 2012: 23.8 amendment:3 require:premium + + +Misra C++ 2008 +-------------- +Not available, Cppcheck Premium is not used + + +Misra C++ 2023 +-------------- +Not available, Cppcheck Premium is not used + + + + + +TEST variant options: +--enable=all --disable=unusedFunction -DPANDA --addon=misra -DSTM32H7 -DSTM32H725xx /opendbc/safety/main.c + + +Critical errors +--------------- +No critical errors encountered. +Note: There might still have been non-critical bailouts which might lead to false negatives. + + +Open source checkers +-------------------- +Yes Check64BitPortability::pointerassignment +Yes CheckAssert::assertWithSideEffects +Yes CheckAutoVariables::assignFunctionArg +Yes CheckAutoVariables::autoVariables +Yes CheckAutoVariables::checkVarLifetime +No CheckBool::checkAssignBoolToFloat require:style,c++ +Yes CheckBool::checkAssignBoolToPointer +No CheckBool::checkBitwiseOnBoolean require:style,inconclusive +Yes CheckBool::checkComparisonOfBoolExpressionWithInt +No CheckBool::checkComparisonOfBoolWithBool require:style,c++ +No CheckBool::checkComparisonOfBoolWithInt require:warning,c++ +No CheckBool::checkComparisonOfFuncReturningBool require:style,c++ +Yes CheckBool::checkIncrementBoolean +Yes CheckBool::pointerArithBool +Yes CheckBool::returnValueOfFunctionReturningBool +No CheckBoost::checkBoostForeachModification +Yes CheckBufferOverrun::analyseWholeProgram +Yes CheckBufferOverrun::argumentSize +Yes CheckBufferOverrun::arrayIndex +Yes CheckBufferOverrun::arrayIndexThenCheck +Yes CheckBufferOverrun::bufferOverflow +Yes CheckBufferOverrun::negativeArraySize +Yes CheckBufferOverrun::objectIndex +Yes CheckBufferOverrun::pointerArithmetic +No CheckBufferOverrun::stringNotZeroTerminated require:warning,inconclusive +Yes CheckClass::analyseWholeProgram +No CheckClass::checkConst require:style,inconclusive +No CheckClass::checkConstructors require:style,warning +No CheckClass::checkCopyConstructors require:warning +No CheckClass::checkDuplInheritedMembers require:warning +No CheckClass::checkExplicitConstructors require:style +No CheckClass::checkMemset +No CheckClass::checkMissingOverride require:style,c++03 +No CheckClass::checkReturnByReference require:performance +No CheckClass::checkSelfInitialization +No CheckClass::checkThisUseAfterFree require:warning +No CheckClass::checkUnsafeClassRefMember require:warning,safeChecks +No CheckClass::checkUselessOverride require:style +No CheckClass::checkVirtualFunctionCallInConstructor require:warning +No CheckClass::initializationListUsage require:performance +No CheckClass::initializerListOrder require:style,inconclusive +No CheckClass::operatorEqRetRefThis require:style +No CheckClass::operatorEqToSelf require:warning +No CheckClass::privateFunctions require:style +No CheckClass::thisSubtraction require:warning +No CheckClass::virtualDestructor +Yes CheckCondition::alwaysTrueFalse +Yes CheckCondition::assignIf +Yes CheckCondition::checkAssignmentInCondition +Yes CheckCondition::checkBadBitmaskCheck +Yes CheckCondition::checkCompareValueOutOfTypeRange +Yes CheckCondition::checkDuplicateConditionalAssign +Yes CheckCondition::checkIncorrectLogicOperator +Yes CheckCondition::checkInvalidTestForOverflow +Yes CheckCondition::checkModuloAlwaysTrueFalse +Yes CheckCondition::checkPointerAdditionResultNotNull +Yes CheckCondition::clarifyCondition +Yes CheckCondition::comparison +Yes CheckCondition::duplicateCondition +Yes CheckCondition::multiCondition +Yes CheckCondition::multiCondition2 +No CheckExceptionSafety::checkCatchExceptionByValue require:style +No CheckExceptionSafety::checkRethrowCopy require:style +No CheckExceptionSafety::deallocThrow require:warning +No CheckExceptionSafety::destructors require:warning +No CheckExceptionSafety::nothrowThrows +No CheckExceptionSafety::rethrowNoCurrentException +No CheckExceptionSafety::unhandledExceptionSpecification require:style,inconclusive +Yes CheckFunctions::checkIgnoredReturnValue +Yes CheckFunctions::checkMathFunctions +Yes CheckFunctions::checkMissingReturn +Yes CheckFunctions::checkProhibitedFunctions +Yes CheckFunctions::invalidFunctionUsage +Yes CheckFunctions::memsetInvalid2ndParam +Yes CheckFunctions::memsetZeroBytes +No CheckFunctions::returnLocalStdMove require:performance,c++11 +Yes CheckFunctions::useStandardLibrary +No CheckIO::checkCoutCerrMisusage require:c +Yes CheckIO::checkFileUsage +Yes CheckIO::checkWrongPrintfScanfArguments +Yes CheckIO::invalidScanf +Yes CheckLeakAutoVar::check +No CheckMemoryLeakInClass::check +Yes CheckMemoryLeakInFunction::checkReallocUsage +Yes CheckMemoryLeakNoVar::check +No CheckMemoryLeakNoVar::checkForUnsafeArgAlloc +Yes CheckMemoryLeakStructMember::check +Yes CheckNullPointer::analyseWholeProgram +Yes CheckNullPointer::arithmetic +Yes CheckNullPointer::nullConstantDereference +Yes CheckNullPointer::nullPointer +No CheckOther::checkAccessOfMovedVariable require:c++11,warning +Yes CheckOther::checkCastIntToCharAndBack +Yes CheckOther::checkCharVariable +Yes CheckOther::checkComparePointers +Yes CheckOther::checkComparisonFunctionIsAlwaysTrueOrFalse +Yes CheckOther::checkConstPointer +No CheckOther::checkConstVariable require:style,c++ +No CheckOther::checkDuplicateBranch require:style,inconclusive +Yes CheckOther::checkDuplicateExpression +Yes CheckOther::checkEvaluationOrder +Yes CheckOther::checkFuncArgNamesDifferent +No CheckOther::checkIncompleteArrayFill require:warning,portability,inconclusive +Yes CheckOther::checkIncompleteStatement +No CheckOther::checkInterlockedDecrement require:windows-platform +Yes CheckOther::checkInvalidFree +Yes CheckOther::checkKnownArgument +Yes CheckOther::checkKnownPointerToBool +No CheckOther::checkMisusedScopedObject require:style,c++ +Yes CheckOther::checkModuloOfOne +Yes CheckOther::checkNanInArithmeticExpression +Yes CheckOther::checkNegativeBitwiseShift +Yes CheckOther::checkOverlappingWrite +No CheckOther::checkPassByReference require:performance,c++ +Yes CheckOther::checkRedundantAssignment +No CheckOther::checkRedundantCopy require:c++,performance,inconclusive +Yes CheckOther::checkRedundantPointerOp +Yes CheckOther::checkShadowVariables +Yes CheckOther::checkSignOfUnsignedVariable +No CheckOther::checkSuspiciousCaseInSwitch require:warning,inconclusive +No CheckOther::checkSuspiciousSemicolon require:warning,inconclusive +Yes CheckOther::checkUnreachableCode +Yes CheckOther::checkUnusedLabel +Yes CheckOther::checkVarFuncNullUB +Yes CheckOther::checkVariableScope +Yes CheckOther::checkZeroDivision +Yes CheckOther::clarifyCalculation +Yes CheckOther::clarifyStatement +Yes CheckOther::invalidPointerCast +Yes CheckOther::redundantBitwiseOperationInSwitch +Yes CheckOther::suspiciousFloatingPointCast +No CheckOther::warningOldStylePointerCast require:style,c++ +No CheckPostfixOperator::postfixOperator require:performance +Yes CheckSizeof::checkSizeofForArrayParameter +Yes CheckSizeof::checkSizeofForNumericParameter +Yes CheckSizeof::checkSizeofForPointerSize +Yes CheckSizeof::sizeofCalculation +Yes CheckSizeof::sizeofFunction +Yes CheckSizeof::sizeofVoid +Yes CheckSizeof::sizeofsizeof +No CheckSizeof::suspiciousSizeofCalculation require:warning,inconclusive +No CheckStl::checkDereferenceInvalidIterator require:warning +No CheckStl::checkDereferenceInvalidIterator2 +No CheckStl::checkFindInsert require:performance +No CheckStl::checkMutexes require:warning +No CheckStl::erase +No CheckStl::eraseIteratorOutOfBounds +No CheckStl::if_find require:warning,performance +No CheckStl::invalidContainer +No CheckStl::iterators +No CheckStl::knownEmptyContainer require:style +No CheckStl::misMatchingContainerIterator +No CheckStl::misMatchingContainers +No CheckStl::missingComparison require:warning +No CheckStl::negativeIndex +No CheckStl::outOfBounds +No CheckStl::outOfBoundsIndexExpression +No CheckStl::redundantCondition require:style +No CheckStl::size require:performance,c++03 +No CheckStl::stlBoundaries +No CheckStl::stlOutOfBounds +No CheckStl::string_c_str +No CheckStl::useStlAlgorithm require:style +No CheckStl::uselessCalls require:performance,warning +Yes CheckString::checkAlwaysTrueOrFalseStringCompare +Yes CheckString::checkIncorrectStringCompare +Yes CheckString::checkSuspiciousStringCompare +Yes CheckString::overlappingStrcmp +Yes CheckString::sprintfOverlappingData +Yes CheckString::strPlusChar +Yes CheckString::stringLiteralWrite +Yes CheckType::checkFloatToIntegerOverflow +Yes CheckType::checkIntegerOverflow +Yes CheckType::checkLongCast +Yes CheckType::checkSignConversion +Yes CheckType::checkTooBigBitwiseShift +Yes CheckUninitVar::check +Yes CheckUninitVar::valueFlowUninit +No CheckUnusedFunctions::check require:unusedFunction +Yes CheckUnusedVar::checkFunctionVariableUsage +Yes CheckUnusedVar::checkStructMemberUsage +Yes CheckVaarg::va_list_usage +Yes CheckVaarg::va_start_argument + + +Premium checkers +---------------- +Not available, Cppcheck Premium is not used + + +Autosar +------- +Not available, Cppcheck Premium is not used + + +Cert C +------ +Not available, Cppcheck Premium is not used + + +Cert C++ +-------- +Not available, Cppcheck Premium is not used + + +Misra C 2012 +------------ +No Misra C 2012: Dir 1.1 +No Misra C 2012: Dir 2.1 +No Misra C 2012: Dir 3.1 +No Misra C 2012: Dir 4.1 +No Misra C 2012: Dir 4.2 +No Misra C 2012: Dir 4.3 +No Misra C 2012: Dir 4.4 +No Misra C 2012: Dir 4.5 +No Misra C 2012: Dir 4.6 amendment:3 +No Misra C 2012: Dir 4.7 +No Misra C 2012: Dir 4.8 +No Misra C 2012: Dir 4.9 amendment:3 +No Misra C 2012: Dir 4.10 +No Misra C 2012: Dir 4.11 amendment:3 +No Misra C 2012: Dir 4.12 +No Misra C 2012: Dir 4.13 +No Misra C 2012: Dir 4.14 amendment:2 +No Misra C 2012: Dir 4.15 amendment:3 +No Misra C 2012: Dir 5.1 amendment:4 +No Misra C 2012: Dir 5.2 amendment:4 +No Misra C 2012: Dir 5.3 amendment:4 +Yes Misra C 2012: 1.1 +Yes Misra C 2012: 1.2 +Yes Misra C 2012: 1.3 +Yes Misra C 2012: 1.4 amendment:2 +No Misra C 2012: 1.5 amendment:3 require:premium +Yes Misra C 2012: 2.1 +Yes Misra C 2012: 2.2 +Yes Misra C 2012: 2.3 +Yes Misra C 2012: 2.4 +Yes Misra C 2012: 2.5 +Yes Misra C 2012: 2.6 +Yes Misra C 2012: 2.7 +Yes Misra C 2012: 2.8 +Yes Misra C 2012: 3.1 +Yes Misra C 2012: 3.2 +Yes Misra C 2012: 4.1 +Yes Misra C 2012: 4.2 +Yes Misra C 2012: 5.1 +Yes Misra C 2012: 5.2 +Yes Misra C 2012: 5.3 +Yes Misra C 2012: 5.4 +Yes Misra C 2012: 5.5 +Yes Misra C 2012: 5.6 +Yes Misra C 2012: 5.7 +Yes Misra C 2012: 5.8 +Yes Misra C 2012: 5.9 +Yes Misra C 2012: 6.1 +Yes Misra C 2012: 6.2 +No Misra C 2012: 6.3 +Yes Misra C 2012: 7.1 +Yes Misra C 2012: 7.2 +Yes Misra C 2012: 7.3 +Yes Misra C 2012: 7.4 +No Misra C 2012: 7.5 +No Misra C 2012: 7.6 +Yes Misra C 2012: 8.1 +Yes Misra C 2012: 8.2 +No Misra C 2012: 8.3 +Yes Misra C 2012: 8.4 +Yes Misra C 2012: 8.5 +Yes Misra C 2012: 8.6 +Yes Misra C 2012: 8.7 +Yes Misra C 2012: 8.8 +Yes Misra C 2012: 8.9 +Yes Misra C 2012: 8.10 +Yes Misra C 2012: 8.11 +Yes Misra C 2012: 8.12 +Yes Misra C 2012: 8.13 +Yes Misra C 2012: 8.14 +No Misra C 2012: 8.15 +No Misra C 2012: 8.16 +No Misra C 2012: 8.17 +Yes Misra C 2012: 9.1 +Yes Misra C 2012: 9.2 +Yes Misra C 2012: 9.3 +Yes Misra C 2012: 9.4 +Yes Misra C 2012: 9.5 +No Misra C 2012: 9.6 +No Misra C 2012: 9.7 +Yes Misra C 2012: 10.1 +Yes Misra C 2012: 10.2 +Yes Misra C 2012: 10.3 +Yes Misra C 2012: 10.4 +Yes Misra C 2012: 10.5 +Yes Misra C 2012: 10.6 +Yes Misra C 2012: 10.7 +Yes Misra C 2012: 10.8 +Yes Misra C 2012: 11.1 +Yes Misra C 2012: 11.2 +Yes Misra C 2012: 11.3 +Yes Misra C 2012: 11.4 +Yes Misra C 2012: 11.5 +Yes Misra C 2012: 11.6 +Yes Misra C 2012: 11.7 +Yes Misra C 2012: 11.8 +Yes Misra C 2012: 11.9 +No Misra C 2012: 11.10 +Yes Misra C 2012: 12.1 +Yes Misra C 2012: 12.2 +Yes Misra C 2012: 12.3 +Yes Misra C 2012: 12.4 +Yes Misra C 2012: 12.5 amendment:1 +No Misra C 2012: 12.6 amendment:4 require:premium +Yes Misra C 2012: 13.1 +No Misra C 2012: 13.2 +Yes Misra C 2012: 13.3 +Yes Misra C 2012: 13.4 +Yes Misra C 2012: 13.5 +Yes Misra C 2012: 13.6 +Yes Misra C 2012: 14.1 +Yes Misra C 2012: 14.2 +Yes Misra C 2012: 14.3 +Yes Misra C 2012: 14.4 +Yes Misra C 2012: 15.1 +Yes Misra C 2012: 15.2 +Yes Misra C 2012: 15.3 +Yes Misra C 2012: 15.4 +Yes Misra C 2012: 15.5 +Yes Misra C 2012: 15.6 +Yes Misra C 2012: 15.7 +Yes Misra C 2012: 16.1 +Yes Misra C 2012: 16.2 +Yes Misra C 2012: 16.3 +Yes Misra C 2012: 16.4 +Yes Misra C 2012: 16.5 +Yes Misra C 2012: 16.6 +Yes Misra C 2012: 16.7 +Yes Misra C 2012: 17.1 +Yes Misra C 2012: 17.2 +Yes Misra C 2012: 17.3 +No Misra C 2012: 17.4 +Yes Misra C 2012: 17.5 +Yes Misra C 2012: 17.6 +Yes Misra C 2012: 17.7 +Yes Misra C 2012: 17.8 +No Misra C 2012: 17.9 +No Misra C 2012: 17.10 +No Misra C 2012: 17.11 +No Misra C 2012: 17.12 +No Misra C 2012: 17.13 +Yes Misra C 2012: 18.1 +Yes Misra C 2012: 18.2 +Yes Misra C 2012: 18.3 +Yes Misra C 2012: 18.4 +Yes Misra C 2012: 18.5 +Yes Misra C 2012: 18.6 +Yes Misra C 2012: 18.7 +Yes Misra C 2012: 18.8 +No Misra C 2012: 18.9 +No Misra C 2012: 18.10 +Yes Misra C 2012: 19.1 +Yes Misra C 2012: 19.2 +Yes Misra C 2012: 20.1 +Yes Misra C 2012: 20.2 +Yes Misra C 2012: 20.3 +Yes Misra C 2012: 20.4 +Yes Misra C 2012: 20.5 +Yes Misra C 2012: 20.6 +Yes Misra C 2012: 20.7 +Yes Misra C 2012: 20.8 +Yes Misra C 2012: 20.9 +Yes Misra C 2012: 20.10 +Yes Misra C 2012: 20.11 +Yes Misra C 2012: 20.12 +Yes Misra C 2012: 20.13 +Yes Misra C 2012: 20.14 +Yes Misra C 2012: 21.1 +Yes Misra C 2012: 21.2 +Yes Misra C 2012: 21.3 +Yes Misra C 2012: 21.4 +Yes Misra C 2012: 21.5 +Yes Misra C 2012: 21.6 +Yes Misra C 2012: 21.7 +Yes Misra C 2012: 21.8 +Yes Misra C 2012: 21.9 +Yes Misra C 2012: 21.10 +Yes Misra C 2012: 21.11 +Yes Misra C 2012: 21.12 +Yes Misra C 2012: 21.13 amendment:1 +Yes Misra C 2012: 21.14 amendment:1 +Yes Misra C 2012: 21.15 amendment:1 +Yes Misra C 2012: 21.16 amendment:1 +Yes Misra C 2012: 21.17 amendment:1 +Yes Misra C 2012: 21.18 amendment:1 +Yes Misra C 2012: 21.19 amendment:1 +Yes Misra C 2012: 21.20 amendment:1 +Yes Misra C 2012: 21.21 amendment:3 +No Misra C 2012: 21.22 amendment:3 require:premium +No Misra C 2012: 21.23 amendment:3 require:premium +No Misra C 2012: 21.24 amendment:3 require:premium +No Misra C 2012: 21.25 amendment:4 require:premium +No Misra C 2012: 21.26 amendment:4 require:premium +Yes Misra C 2012: 22.1 +Yes Misra C 2012: 22.2 +Yes Misra C 2012: 22.3 +Yes Misra C 2012: 22.4 +Yes Misra C 2012: 22.5 +Yes Misra C 2012: 22.6 +Yes Misra C 2012: 22.7 amendment:1 +Yes Misra C 2012: 22.8 amendment:1 +Yes Misra C 2012: 22.9 amendment:1 +Yes Misra C 2012: 22.10 amendment:1 +No Misra C 2012: 22.11 amendment:4 require:premium +No Misra C 2012: 22.12 amendment:4 require:premium +No Misra C 2012: 22.13 amendment:4 require:premium +No Misra C 2012: 22.14 amendment:4 require:premium +No Misra C 2012: 22.15 amendment:4 require:premium +No Misra C 2012: 22.16 amendment:4 require:premium +No Misra C 2012: 22.17 amendment:4 require:premium +No Misra C 2012: 22.18 amendment:4 require:premium +No Misra C 2012: 22.19 amendment:4 require:premium +No Misra C 2012: 22.20 amendment:4 require:premium +No Misra C 2012: 23.1 amendment:3 require:premium +No Misra C 2012: 23.2 amendment:3 require:premium +No Misra C 2012: 23.3 amendment:3 require:premium +No Misra C 2012: 23.4 amendment:3 require:premium +No Misra C 2012: 23.5 amendment:3 require:premium +No Misra C 2012: 23.6 amendment:3 require:premium +No Misra C 2012: 23.7 amendment:3 require:premium +No Misra C 2012: 23.8 amendment:3 require:premium + + +Misra C++ 2008 +-------------- +Not available, Cppcheck Premium is not used + + +Misra C++ 2023 +-------------- +Not available, Cppcheck Premium is not used diff --git a/opendbc_repo/opendbc/safety/tests/misra/coverage_table b/opendbc_repo/opendbc/safety/tests/misra/coverage_table new file mode 100644 index 0000000000..0395aba0d6 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/coverage_table @@ -0,0 +1,156 @@ +1.1 +1.2 X (Addon) +1.3 X (Cppcheck) +2.1 X (Cppcheck) +2.2 X (Addon) +2.3 X (Addon) +2.4 X (Addon) +2.5 X (Addon) +2.6 X (Cppcheck) +2.7 X (Addon) +3.1 X (Addon) +3.2 X (Addon) +4.1 X (Addon) +4.2 X (Addon) +5.1 X (Addon) +5.2 X (Addon) +5.3 X (Cppcheck) +5.4 X (Addon) +5.5 X (Addon) +5.6 X (Addon) +5.7 X (Addon) +5.8 X (Addon) +5.9 X (Addon) +6.1 X (Addon) +6.2 X (Addon) +7.1 X (Addon) +7.2 X (Addon) +7.3 X (Addon) +7.4 X (Addon) +8.1 X (Addon) +8.2 X (Addon) +8.3 X (Cppcheck) +8.4 X (Addon) +8.5 X (Addon) +8.6 X (Addon) +8.7 X (Addon) +8.8 X (Addon) +8.9 X (Addon) +8.10 X (Addon) +8.11 X (Addon) +8.12 X (Addon) +8.13 X (Cppcheck) +8.14 X (Addon) +9.1 X (Cppcheck) +9.2 X (Addon) +9.3 X (Addon) +9.4 X (Addon) +9.5 X (Addon) +10.1 X (Addon) +10.2 X (Addon) +10.3 X (Addon) +10.4 X (Addon) +10.5 X (Addon) +10.6 X (Addon) +10.7 X (Addon) +10.8 X (Addon) +11.1 X (Addon) +11.2 X (Addon) +11.3 X (Addon) +11.4 X (Addon) +11.5 X (Addon) +11.6 X (Addon) +11.7 X (Addon) +11.8 X (Addon) +11.9 X (Addon) +12.1 X (Addon) +12.2 X (Addon) +12.3 X (Addon) +12.4 X (Addon) +13.1 X (Addon) +13.2 X (Cppcheck) +13.3 X (Addon) +13.4 X (Addon) +13.5 X (Addon) +13.6 X (Addon) +14.1 X (Addon) +14.2 X (Addon) +14.3 X (Cppcheck) +14.4 X (Addon) +15.1 X (Addon) +15.2 X (Addon) +15.3 X (Addon) +15.4 X (Addon) +15.5 X (Addon) +15.6 X (Addon) +15.7 X (Addon) +16.1 X (Addon) +16.2 X (Addon) +16.3 X (Addon) +16.4 X (Addon) +16.5 X (Addon) +16.6 X (Addon) +16.7 X (Addon) +17.1 X (Addon) +17.2 X (Addon) +17.3 X (Addon) +17.4 X (Cppcheck) +17.5 X (Cppcheck) +17.6 X (Addon) +17.7 X (Addon) +17.8 X (Addon) +18.1 X (Cppcheck) +18.2 X (Cppcheck) +18.3 X (Cppcheck) +18.4 X (Addon) +18.5 X (Addon) +18.6 X (Cppcheck) +18.7 X (Addon) +18.8 X (Addon) +19.1 X (Cppcheck) +19.2 X (Addon) +20.1 X (Addon) +20.2 X (Addon) +20.3 X (Addon) +20.4 X (Addon) +20.5 X (Addon) +20.6 X (Cppcheck) +20.7 X (Addon) +20.8 X (Addon) +20.9 X (Addon) +20.10 X (Addon) +20.11 X (Addon) +20.12 X (Addon) +20.13 X (Addon) +20.14 X (Addon) +21.1 X (Addon) +21.2 X (Addon) +21.3 X (Addon) +21.4 X (Addon) +21.5 X (Addon) +21.6 X (Addon) +21.7 X (Addon) +21.8 X (Addon) +21.9 X (Addon) +21.10 X (Addon) +21.11 X (Addon) +21.12 X (Addon) +21.13 X (Cppcheck) +21.14 X (Addon) +21.15 X (Addon) +21.16 X (Addon) +21.17 X (Cppcheck) +21.18 X (Cppcheck) +21.19 X (Addon) +21.20 X (Addon) +21.21 X (Addon) +22.1 X (Cppcheck) +22.2 X (Cppcheck) +22.3 X (Cppcheck) +22.4 X (Cppcheck) +22.5 X (Addon) +22.6 X (Cppcheck) +22.7 X (Addon) +22.8 X (Addon) +22.9 X (Addon) +22.10 X (Addon) diff --git a/opendbc_repo/opendbc/safety/tests/misra/install.sh b/opendbc_repo/opendbc/safety/tests/misra/install.sh new file mode 100755 index 0000000000..9c8fd385c8 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/install.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash +set -e + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +: "${CPPCHECK_DIR:=$DIR/cppcheck/}" + +if [ ! -d "$CPPCHECK_DIR" ]; then + git clone https://github.com/danmar/cppcheck.git $CPPCHECK_DIR +fi + +cd $CPPCHECK_DIR + +VERS="2.16.0" +git fetch --all --tags --force +git checkout $VERS + +#make clean +make MATCHCOMPILTER=yes CXXFLAGS="-O2" -j8 diff --git a/opendbc_repo/opendbc/safety/tests/misra/suppressions.txt b/opendbc_repo/opendbc/safety/tests/misra/suppressions.txt new file mode 100644 index 0000000000..4800a270bc --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/suppressions.txt @@ -0,0 +1,21 @@ +# Advisory: casting from void pointer to type pointer is ok. Done by STM libraries as well +misra-c2012-11.4 +# Advisory: casting from void pointer to type pointer is ok. Done by STM libraries as well +misra-c2012-11.5 +# Advisory: as stated in the Misra document, use of goto statements in accordance to 15.2 and 15.3 is ok +misra-c2012-15.1 +# Advisory: union types can be used +misra-c2012-19.2 +# Advisory: The # and ## preprocessor operators should not be used +misra-c2012-20.10 + +# needed since not all of these suppressions are applicable to all builds +unmatchedSuppression + +# All interrupt handlers are defined, including ones we don't use +unusedFunction:*/interrupt_handlers*.h + +# all of the below suppressions are from new checks introduced after updating +# cppcheck from 2.5 -> 2.13. they are listed here to separate the update from +# fixing the violations and all are intended to be removed soon after +misra-c2012-2.5 # unused macros. a few legit, rest aren't common between F4/H7 builds. should we do this in the unusedFunction pass? diff --git a/opendbc_repo/opendbc/safety/tests/misra/test_misra.sh b/opendbc_repo/opendbc/safety/tests/misra/test_misra.sh new file mode 100755 index 0000000000..0ff97d712f --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/test_misra.sh @@ -0,0 +1,86 @@ +#!/usr/bin/env bash +set -e + +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd $DIR + +source ../../../../setup.sh + +GREEN="\e[1;32m" +YELLOW="\e[1;33m" +RED="\e[1;31m" +NC='\033[0m' + +: "${CPPCHECK_DIR:=$DIR/cppcheck/}" + +# install cppcheck if missing +if [ -z "${SKIP_CPPCHECK_INSTALL}" ]; then + $DIR/install.sh +fi + +# ensure checked in coverage table is up to date +if [ -z "$SKIP_TABLES_DIFF" ]; then + python3 $CPPCHECK_DIR/addons/misra.py -generate-table > coverage_table + if ! git diff --quiet coverage_table; then + echo -e "${YELLOW}MISRA coverage table doesn't match. Update and commit:${NC}" + exit 3 + fi +fi + +cd $BASEDIR +if [ -z "${SKIP_BUILD}" ]; then + scons -j8 +fi + +CHECKLIST=$DIR/checkers.txt +echo "Cppcheck checkers list from test_misra.sh:" > $CHECKLIST + +cppcheck() { + # get all gcc defines: arm-none-eabi-gcc -dM -E - < /dev/null + COMMON_DEFINES="-D__GNUC__=9 -UCMSIS_NVIC_VIRTUAL -UCMSIS_VECTAB_VIRTUAL" + + # note that cppcheck build cache results in inconsistent results as of v2.13.0 + OUTPUT=$DIR/.output.log + + echo -e "\n\n\n\n\nTEST variant options:" >> $CHECKLIST + echo -e ""${@//$BASEDIR/}"\n\n" >> $CHECKLIST # (absolute path removed) + + $CPPCHECK_DIR/cppcheck --inline-suppr -I $BASEDIR/opendbc/safety/ \ + -I $BASEDIR/opendbc/safety/safety/ -I $BASEDIR/opendbc/safety/board/ \ + -I "$(arm-none-eabi-gcc -print-file-name=include)" \ + --suppressions-list=$DIR/suppressions.txt --suppress=*:*inc/* \ + --suppress=*:*include/* --error-exitcode=2 --check-level=exhaustive --safety \ + --platform=arm32-wchar_t4 $COMMON_DEFINES --checkers-report=$CHECKLIST.tmp \ + --std=c11 "$@" 2>&1 | tee $OUTPUT + + cat $CHECKLIST.tmp >> $CHECKLIST + rm $CHECKLIST.tmp + # cppcheck bug: some MISRA errors won't result in the error exit code, + # so check the output (https://trac.cppcheck.net/ticket/12440#no1) + if grep -e "misra violation" -e "error" -e "style: " $OUTPUT > /dev/null; then + printf "${RED}** FAILED: MISRA violations found!${NC}\n" + exit 1 + fi +} + +PANDA_OPTS="--enable=all --disable=unusedFunction -DPANDA --addon=misra" + +printf "\n${GREEN}** PANDA F4 CODE **${NC}\n" +cppcheck $PANDA_OPTS -DSTM32F4 -DSTM32F413xx $BASEDIR/opendbc/safety/main.c + +printf "\n${GREEN}** PANDA H7 CODE **${NC}\n" +cppcheck $PANDA_OPTS -DSTM32H7 -DSTM32H725xx $BASEDIR/opendbc/safety/main.c + +# unused needs to run globally +#printf "\n${GREEN}** UNUSED ALL CODE **${NC}\n" +#cppcheck --enable=unusedFunction --quiet $BASEDIR/opendbc/safety/board/ + +printf "\n${GREEN}Success!${NC} took $SECONDS seconds\n" + + +# ensure list of checkers is up to date +cd $DIR +if [ -z "$SKIP_TABLES_DIFF" ] && ! git diff --quiet $CHECKLIST; then + echo -e "\n${YELLOW}WARNING: Cppcheck checkers.txt report has changed. Review and commit...${NC}" + exit 4 +fi diff --git a/opendbc_repo/opendbc/safety/tests/misra/test_mutation.py b/opendbc_repo/opendbc/safety/tests/misra/test_mutation.py new file mode 100755 index 0000000000..1caf51a864 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/misra/test_mutation.py @@ -0,0 +1,69 @@ +#!/usr/bin/env python3 +import os +import glob +import pytest +import shutil +import subprocess +import tempfile +import random + +HERE = os.path.abspath(os.path.dirname(__file__)) +ROOT = os.path.join(HERE, "../../../../") + +IGNORED_PATHS = ( + 'opendbc/safety/tests/', + 'opendbc/safety/board/', +) + +mutations = [ + # default + (None, None, False), + # general safety + ("opendbc/safety/safety/safety_toyota.h", "s/is_lkas_msg =.*;/is_lkas_msg = addr == 1 || addr == 2;/g", True), +] + +patterns = [ + # misra-c2012-13.3 + "$a void test(int tmp) { int tmp2 = tmp++ + 2; if (tmp2) {;}}", + # misra-c2012-13.4 + "$a int test(int x, int y) { return (x=2) && (y=2); }", + # misra-c2012-13.5 + "$a void test(int tmp) { if (true && tmp++) {;} }", + # misra-c2012-13.6 + "$a void test(int tmp) { if (sizeof(tmp++)) {;} }", + # misra-c2012-14.1 + "$a void test(float len) { for (float j = 0; j < len; j++) {;} }", + # misra-c2012-14.4 + "$a void test(int len) { if (len - 8) {;} }", + # misra-c2012-16.4 + r"$a void test(int temp) {switch (temp) { case 1: ; }}\n", + # misra-c2012-17.8 + "$a void test(int cnt) { for (cnt=0;;cnt++) {;} }", + # misra-c2012-20.4 + r"$a #define auto 1\n", + # misra-c2012-20.5 + r"$a #define TEST 1\n#undef TEST\n", +] + +all_files = glob.glob('opendbc/safety/**', root_dir=ROOT, recursive=True) +files = [f for f in all_files if f.endswith(('.c', '.h')) and not f.startswith(IGNORED_PATHS)] +assert len(files) > 20, files + +for p in patterns: + mutations.append((random.choice(files), p, True)) + +@pytest.mark.parametrize("fn, patch, should_fail", mutations) +def test_misra_mutation(fn, patch, should_fail): + with tempfile.TemporaryDirectory() as tmp: + shutil.copytree(ROOT, tmp, dirs_exist_ok=True) + shutil.rmtree(os.path.join(tmp, '.venv'), ignore_errors=True) + + # apply patch + if fn is not None: + r = os.system(f"cd {tmp} && sed -i '{patch}' {fn}") + assert r == 0 + + # run test + r = subprocess.run("SKIP_TABLES_DIFF=1 SKIP_BUILD=1 opendbc/safety/tests/misra/test_misra.sh", cwd=tmp, shell=True) + failed = r.returncode != 0 + assert failed == should_fail diff --git a/opendbc_repo/opendbc/safety/tests/mutation.sh b/opendbc_repo/opendbc/safety/tests/mutation.sh new file mode 100755 index 0000000000..67bd396110 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/mutation.sh @@ -0,0 +1,16 @@ +#!/usr/bin/env bash +set -e + +DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" +cd $DIR + +$DIR/install_mull.sh + +GIT_REF="${GIT_REF:-origin/master}" +GIT_ROOT=$(git rev-parse --show-toplevel) +MULL_OPS="mutators: [cxx_increment, cxx_decrement, cxx_comparison, cxx_boundary, cxx_bitwise_assignment, cxx_bitwise, cxx_arithmetic_assignment, cxx_arithmetic, cxx_remove_negation]" +echo -e "$MULL_OPS" > $GIT_ROOT/mull.yml +scons --mutation -j$(nproc) -D +echo -e "timeout: 10000\ngitDiffRef: $GIT_REF\ngitProjectRoot: $GIT_ROOT" >> $GIT_ROOT/mull.yml + +mull-runner-17 --ld-search-path /lib/x86_64-linux-gnu/ ./libsafety/libsafety.so -test-program=pytest -- -n8 diff --git a/opendbc_repo/opendbc/safety/tests/safety_replay/__init__.py b/opendbc_repo/opendbc/safety/tests/safety_replay/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py b/opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py new file mode 100644 index 0000000000..c56a15270f --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/safety_replay/helpers.py @@ -0,0 +1,98 @@ +from opendbc.car.ford.values import FordSafetyFlags +from opendbc.car.toyota.values import ToyotaSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py + +def to_signed(d, bits): + ret = d + if d >= (1 << (bits - 1)): + ret = d - (1 << bits) + return ret + +def is_steering_msg(mode, param, addr): + ret = False + if mode in (CarParams.SafetyModel.hondaNidec, CarParams.SafetyModel.hondaBosch): + ret = (addr == 0xE4) or (addr == 0x194) or (addr == 0x33D) or (addr == 0x33DA) or (addr == 0x33DB) + elif mode == CarParams.SafetyModel.toyota: + ret = addr == (0x191 if param & ToyotaSafetyFlags.LTA else 0x2E4) + elif mode == CarParams.SafetyModel.gm: + ret = addr == 384 + elif mode == CarParams.SafetyModel.hyundai: + ret = addr == 832 + elif mode == CarParams.SafetyModel.hyundaiCanfd: + # TODO: other params + ret = addr == 0x50 + elif mode == CarParams.SafetyModel.chrysler: + ret = addr == 0x292 + elif mode == CarParams.SafetyModel.subaru: + ret = addr == 0x122 + elif mode == CarParams.SafetyModel.ford: + ret = addr == 0x3d6 if param & FordSafetyFlags.CANFD else addr == 0x3d3 + elif mode == CarParams.SafetyModel.nissan: + ret = addr == 0x169 + elif mode == CarParams.SafetyModel.rivian: + ret = addr == 0x120 + return ret + +def get_steer_value(mode, param, to_send): + # TODO: use CANParser + torque, angle = 0, 0 + if mode in (CarParams.SafetyModel.hondaNidec, CarParams.SafetyModel.hondaBosch): + torque = (to_send.data[0] << 8) | to_send.data[1] + torque = to_signed(torque, 16) + elif mode == CarParams.SafetyModel.toyota: + if param & ToyotaSafetyFlags.LTA: + angle = (to_send.data[1] << 8) | to_send.data[2] + angle = to_signed(angle, 16) + else: + torque = (to_send.data[1] << 8) | (to_send.data[2]) + torque = to_signed(torque, 16) + elif mode == CarParams.SafetyModel.gm: + torque = ((to_send.data[0] & 0x7) << 8) | to_send.data[1] + torque = to_signed(torque, 11) + elif mode == CarParams.SafetyModel.hyundai: + torque = (((to_send.data[3] & 0x7) << 8) | to_send.data[2]) - 1024 + elif mode == CarParams.SafetyModel.hyundaiCanfd: + torque = ((to_send.data[5] >> 1) | (to_send.data[6] & 0xF) << 7) - 1024 + elif mode == CarParams.SafetyModel.chrysler: + torque = (((to_send.data[0] & 0x7) << 8) | to_send.data[1]) - 1024 + elif mode == CarParams.SafetyModel.subaru: + torque = ((to_send.data[3] & 0x1F) << 8) | to_send.data[2] + torque = -to_signed(torque, 13) + elif mode == CarParams.SafetyModel.ford: + if param & FordSafetyFlags.CANFD: + angle = ((to_send.data[2] << 3) | (to_send.data[3] >> 5)) - 1000 + else: + angle = ((to_send.data[0] << 3) | (to_send.data[1] >> 5)) - 1000 + elif mode == CarParams.SafetyModel.nissan: + angle = (to_send.data[0] << 10) | (to_send.data[1] << 2) | (to_send.data[2] >> 6) + angle = -angle + (1310 * 100) + elif mode == CarParams.SafetyModel.rivian: + torque = ((to_send.data[2] << 3) | (to_send.data[3] >> 5)) - 1024 + return torque, angle + +def package_can_msg(msg): + return libsafety_py.make_CANPacket(msg.address, msg.src % 4, msg.dat) + +def init_segment(safety, msgs, mode, param): + sendcan = (msg for msg in msgs if msg.which() == 'sendcan') + steering_msgs = (can for msg in sendcan for can in msg.sendcan if is_steering_msg(mode, param, can.address)) + + msg = next(steering_msgs, None) + if msg is None: + print("no steering msgs found!") + return + + to_send = package_can_msg(msg) + torque, angle = get_steer_value(mode, param, to_send) + if torque != 0: + safety.set_controls_allowed(1) + safety.set_desired_torque_last(torque) + safety.set_rt_torque_last(torque) + safety.set_torque_meas(torque, torque) + safety.set_torque_driver(torque, torque) + elif angle != 0: + safety.set_controls_allowed(1) + safety.set_desired_angle_last(angle) + safety.set_angle_meas(angle, angle) + assert safety.safety_tx_hook(to_send), "failed to initialize panda safety for segment" diff --git a/opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py b/opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py new file mode 100755 index 0000000000..36e958c7a9 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/safety_replay/replay_drive.py @@ -0,0 +1,96 @@ +#!/usr/bin/env python3 +import argparse +from collections import Counter +from tqdm import tqdm + +from opendbc.car.carlog import carlog +from opendbc.safety.tests.libsafety import libsafety_py +from opendbc.safety.tests.safety_replay.helpers import package_can_msg, init_segment + +# replay a drive to check for safety violations +def replay_drive(msgs, safety_mode, param, alternative_experience): + safety = libsafety_py.libsafety + msgs.sort(key=lambda m: m.logMonoTime) + + err = safety.set_safety_hooks(safety_mode, param) + assert err == 0, "invalid safety mode: %d" % safety_mode + safety.set_alternative_experience(alternative_experience) + + init_segment(safety, msgs, safety_mode, param) + + rx_tot, rx_invalid, tx_tot, tx_blocked, tx_controls, tx_controls_blocked = 0, 0, 0, 0, 0, 0 + safety_tick_rx_invalid = False + blocked_addrs = Counter() + invalid_addrs = set() + + can_msgs = [m for m in msgs if m.which() in ('can', 'sendcan')] + start_t = can_msgs[0].logMonoTime + end_t = can_msgs[-1].logMonoTime + for msg in tqdm(can_msgs): + safety.set_timer((msg.logMonoTime // 1000) % 0xFFFFFFFF) + + # skip start and end of route, warm up/down period + if msg.logMonoTime - start_t > 1e9 and end_t - msg.logMonoTime > 1e9: + safety.safety_tick_current_safety_config() + safety_tick_rx_invalid |= not safety.safety_config_valid() or safety_tick_rx_invalid + + if msg.which() == 'sendcan': + for canmsg in msg.sendcan: + to_send = package_can_msg(canmsg) + sent = safety.safety_tx_hook(to_send) + if not sent: + tx_blocked += 1 + tx_controls_blocked += safety.get_controls_allowed() + blocked_addrs[canmsg.address] += 1 + + carlog.debug("blocked bus %d msg %d at %f" % (canmsg.src, canmsg.address, (msg.logMonoTime - start_t) / 1e9)) + tx_controls += safety.get_controls_allowed() + tx_tot += 1 + elif msg.which() == 'can': + # ignore msgs we sent + for canmsg in filter(lambda m: m.src < 128, msg.can): + to_push = package_can_msg(canmsg) + recv = safety.safety_rx_hook(to_push) + if not recv: + rx_invalid += 1 + invalid_addrs.add(canmsg.address) + rx_tot += 1 + + print("\nRX") + print("total rx msgs:", rx_tot) + print("invalid rx msgs:", rx_invalid) + print("safety tick rx invalid:", safety_tick_rx_invalid) + print("invalid addrs:", invalid_addrs) + print("\nTX") + print("total openpilot msgs:", tx_tot) + print("total msgs with controls allowed:", tx_controls) + print("blocked msgs:", tx_blocked) + print("blocked with controls allowed:", tx_controls_blocked) + print("blocked addrs:", blocked_addrs) + + return tx_controls_blocked == 0 and rx_invalid == 0 and not safety_tick_rx_invalid + +if __name__ == "__main__": + from openpilot.tools.lib.logreader import LogReader + + parser = argparse.ArgumentParser(description="Replay CAN messages from a route or segment through a safety mode", + formatter_class=argparse.ArgumentDefaultsHelpFormatter) + parser.add_argument("route_or_segment_name", nargs='+') + parser.add_argument("--mode", type=int, help="Override the safety mode from the log") + parser.add_argument("--param", type=int, help="Override the safety param from the log") + parser.add_argument("--alternative-experience", type=int, help="Override the alternative experience from the log") + args = parser.parse_args() + + lr = LogReader(args.route_or_segment_name[0]) + + if None in (args.mode, args.param, args.alternative_experience): + CP = lr.first('carParams') + if args.mode is None: + args.mode = CP.safetyConfigs[-1].safetyModel.raw + if args.param is None: + args.param = CP.safetyConfigs[-1].safetyParam + if args.alternative_experience is None: + args.alternative_experience = CP.alternativeExperience + + print(f"replaying {args.route_or_segment_name[0]} with safety mode {args.mode}, param {args.param}, alternative experience {args.alternative_experience}") + replay_drive(list(lr), args.mode, args.param, args.alternative_experience) diff --git a/opendbc_repo/opendbc/safety/tests/test.sh b/opendbc_repo/opendbc/safety/tests/test.sh new file mode 100755 index 0000000000..af695bb7fa --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test.sh @@ -0,0 +1,34 @@ +#!/usr/bin/env bash +set -e + +DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" +cd $DIR + +source ../../../setup.sh + +# reset coverage data and generate gcc note file +rm -f ./libsafety/*.gcda +if [ "$1" == "--ubsan" ]; then + scons -j$(nproc) -D --coverage --ubsan +else + scons -j$(nproc) -D --coverage +fi + +# run safety tests and generate coverage data +pytest -n8 + +# generate and open report +if [ "$1" == "--report" ]; then + mkdir -p coverage-out + gcovr -r ../ --html-nested coverage-out/index.html + sensible-browser coverage-out/index.html +fi + +# test coverage +GCOV="gcovr -r ../ --fail-under-line=100 -e ^libsafety -e ^../board" +if ! GCOV_OUTPUT="$($GCOV)"; then + echo -e "FAILED:\n$GCOV_OUTPUT" + exit 1 +else + echo "SUCCESS: All checked files have 100% coverage!" +fi diff --git a/opendbc_repo/opendbc/safety/tests/test_body.py b/opendbc_repo/opendbc/safety/tests/test_body.py new file mode 100755 index 0000000000..91b68187d2 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_body.py @@ -0,0 +1,70 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.structs import CarParams +import opendbc.safety.tests.common as common +from opendbc.safety.tests.libsafety import libsafety_py +from opendbc.safety.tests.common import CANPackerPanda + + +class TestBody(common.PandaSafetyTest): + TX_MSGS = [[0x250, 0], [0x251, 0], [0x350, 0], [0x351, 0], + [0x1, 0], [0x1, 1], [0x1, 2], [0x1, 3]] + FWD_BUS_LOOKUP = {} + + def setUp(self): + self.packer = CANPackerPanda("comma_body") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.body, 0) + self.safety.init_tests() + + def _motors_data_msg(self, speed_l, speed_r): + values = {"SPEED_L": speed_l, "SPEED_R": speed_r} + return self.packer.make_can_msg_panda("MOTORS_DATA", 0, values) + + def _torque_cmd_msg(self, torque_l, torque_r): + values = {"TORQUE_L": torque_l, "TORQUE_R": torque_r} + return self.packer.make_can_msg_panda("TORQUE_CMD", 0, values) + + def _knee_torque_cmd_msg(self, torque_l, torque_r): + values = {"TORQUE_L": torque_l, "TORQUE_R": torque_r} + return self.packer.make_can_msg_panda("KNEE_TORQUE_CMD", 0, values) + + def _max_motor_rpm_cmd_msg(self, max_rpm_l, max_rpm_r): + values = {"MAX_RPM_L": max_rpm_l, "MAX_RPM_R": max_rpm_r} + return self.packer.make_can_msg_panda("MAX_MOTOR_RPM_CMD", 0, values) + + def test_rx_hook(self): + self.assertFalse(self.safety.get_controls_allowed()) + self.assertFalse(self.safety.get_vehicle_moving()) + + # controls allowed when we get MOTORS_DATA message + self.assertTrue(self._rx(self._torque_cmd_msg(0, 0))) + self.assertTrue(self.safety.get_vehicle_moving()) # always moving + self.assertFalse(self.safety.get_controls_allowed()) + + self.assertTrue(self._rx(self._motors_data_msg(0, 0))) + self.assertTrue(self.safety.get_vehicle_moving()) # always moving + self.assertTrue(self.safety.get_controls_allowed()) + + def test_tx_hook(self): + self.assertFalse(self._tx(self._torque_cmd_msg(0, 0))) + self.assertFalse(self._tx(self._knee_torque_cmd_msg(0, 0))) + self.safety.set_controls_allowed(True) + self.assertTrue(self._tx(self._torque_cmd_msg(0, 0))) + self.assertTrue(self._tx(self._knee_torque_cmd_msg(0, 0))) + + def test_can_flasher(self): + # CAN flasher always allowed + self.safety.set_controls_allowed(False) + self.assertTrue(self._tx(common.make_msg(0, 0x1, 8))) + + # 0xdeadfaceU enters CAN flashing mode for base & knee + for addr in (0x250, 0x350): + self.assertTrue(self._tx(common.make_msg(0, addr, dat=b'\xce\xfa\xad\xde\x1e\x0b\xb0\x0a'))) + self.assertFalse(self._tx(common.make_msg(0, addr, dat=b'\xce\xfa\xad\xde\x1e\x0b\xb0'))) # not correct data/len + self.assertFalse(self._tx(common.make_msg(0, addr + 1, dat=b'\xce\xfa\xad\xde\x1e\x0b\xb0\x0a'))) # wrong address + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_chrysler.py b/opendbc_repo/opendbc/safety/tests/test_chrysler.py new file mode 100755 index 0000000000..854c2f5f73 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_chrysler.py @@ -0,0 +1,125 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.chrysler.values import ChryslerSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + + +class TestChryslerSafety(common.PandaCarSafetyTest, common.MotorTorqueSteeringSafetyTest): + TX_MSGS = [[0x23B, 0], [0x292, 0], [0x2A6, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0x292,)} + FWD_BLACKLISTED_ADDRS = {2: [0x292, 0x2A6]} + + MAX_RATE_UP = 3 + MAX_RATE_DOWN = 3 + MAX_TORQUE = 261 + MAX_RT_DELTA = 112 + RT_INTERVAL = 250000 + MAX_TORQUE_ERROR = 80 + + LKAS_ACTIVE_VALUE = 1 + + DAS_BUS = 0 + + def setUp(self): + self.packer = CANPackerPanda("chrysler_pacifica_2017_hybrid_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.chrysler, 0) + self.safety.init_tests() + + def _button_msg(self, cancel=False, resume=False): + values = {"ACC_Cancel": cancel, "ACC_Resume": resume} + return self.packer.make_can_msg_panda("CRUISE_BUTTONS", self.DAS_BUS, values) + + def _pcm_status_msg(self, enable): + values = {"ACC_ACTIVE": enable} + return self.packer.make_can_msg_panda("DAS_3", self.DAS_BUS, values) + + def _speed_msg(self, speed): + values = {"SPEED_LEFT": speed, "SPEED_RIGHT": speed} + return self.packer.make_can_msg_panda("SPEED_1", 0, values) + + def _user_gas_msg(self, gas): + values = {"Accelerator_Position": gas} + return self.packer.make_can_msg_panda("ECM_5", 0, values) + + def _user_brake_msg(self, brake): + values = {"Brake_Pedal_State": 1 if brake else 0} + return self.packer.make_can_msg_panda("ESP_1", 0, values) + + def _torque_meas_msg(self, torque): + values = {"EPS_TORQUE_MOTOR": torque} + return self.packer.make_can_msg_panda("EPS_2", 0, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"STEERING_TORQUE": torque, "LKAS_CONTROL_BIT": self.LKAS_ACTIVE_VALUE if steer_req else 0} + return self.packer.make_can_msg_panda("LKAS_COMMAND", 0, values) + + def test_buttons(self): + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + + # resume only while controls allowed + self.assertEqual(controls_allowed, self._tx(self._button_msg(resume=True))) + + # can always cancel + self.assertTrue(self._tx(self._button_msg(cancel=True))) + + # only one button at a time + self.assertFalse(self._tx(self._button_msg(cancel=True, resume=True))) + self.assertFalse(self._tx(self._button_msg(cancel=False, resume=False))) + + +class TestChryslerRamDTSafety(TestChryslerSafety): + TX_MSGS = [[0xB1, 2], [0xA6, 0], [0xFA, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0xA6,)} + FWD_BLACKLISTED_ADDRS = {2: [0xA6, 0xFA]} + + MAX_RATE_UP = 6 + MAX_RATE_DOWN = 6 + MAX_TORQUE = 350 + + DAS_BUS = 2 + + LKAS_ACTIVE_VALUE = 2 + + def setUp(self): + self.packer = CANPackerPanda("chrysler_ram_dt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.chrysler, ChryslerSafetyFlags.RAM_DT) + self.safety.init_tests() + + def _speed_msg(self, speed): + values = {"Vehicle_Speed": speed} + return self.packer.make_can_msg_panda("ESP_8", 0, values) + +class TestChryslerRamHDSafety(TestChryslerSafety): + TX_MSGS = [[0x275, 0], [0x276, 0], [0x23A, 2]] + RELAY_MALFUNCTION_ADDRS = {0: (0x276,)} + FWD_BLACKLISTED_ADDRS = {2: [0x275, 0x276]} + + MAX_TORQUE = 361 + MAX_RATE_UP = 14 + MAX_RATE_DOWN = 14 + MAX_RT_DELTA = 182 + + DAS_BUS = 2 + + LKAS_ACTIVE_VALUE = 2 + + def setUp(self): + self.packer = CANPackerPanda("chrysler_ram_hd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.chrysler, ChryslerSafetyFlags.RAM_HD) + self.safety.init_tests() + + def _speed_msg(self, speed): + values = {"Vehicle_Speed": speed} + return self.packer.make_can_msg_panda("ESP_8", 0, values) + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_defaults.py b/opendbc_repo/opendbc/safety/tests/test_defaults.py new file mode 100755 index 0000000000..e44a1cd0a4 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_defaults.py @@ -0,0 +1,74 @@ +#!/usr/bin/env python3 +import unittest + +import opendbc.safety.tests.common as common +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py + + +class TestDefaultRxHookBase(common.PandaSafetyTest): + FWD_BUS_LOOKUP = {} + + def test_rx_hook(self): + # default rx hook allows all msgs + for bus in range(4): + for addr in self.SCANNED_ADDRS: + self.assertTrue(self._rx(common.make_msg(bus, addr, 8)), f"failed RX {addr=}") + + +class TestNoOutput(TestDefaultRxHookBase): + TX_MSGS = [] + + def setUp(self): + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.noOutput, 0) + self.safety.init_tests() + + +class TestSilent(TestNoOutput): + """SILENT uses same hooks as NOOUTPUT""" + + def setUp(self): + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.silent, 0) + self.safety.init_tests() + + +class TestAllOutput(TestDefaultRxHookBase): + # Allow all messages + TX_MSGS = [[addr, bus] for addr in common.PandaSafetyTest.SCANNED_ADDRS + for bus in range(4)] + + def setUp(self): + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.allOutput, 0) + self.safety.init_tests() + + def test_spam_can_buses(self): + # asserts tx allowed for all scanned addrs + for bus in range(4): + for addr in self.SCANNED_ADDRS: + should_tx = [addr, bus] in self.TX_MSGS + self.assertEqual(should_tx, self._tx(common.make_msg(bus, addr, 8)), f"allowed TX {addr=} {bus=}") + + def test_default_controls_not_allowed(self): + # controls always allowed + self.assertTrue(self.safety.get_controls_allowed()) + + def test_tx_hook_on_wrong_safety_mode(self): + # No point, since we allow all messages + pass + + +class TestAllOutputPassthrough(TestAllOutput): + FWD_BLACKLISTED_ADDRS = {} + FWD_BUS_LOOKUP = {0: 2, 2: 0} + + def setUp(self): + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.allOutput, 1) + self.safety.init_tests() + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_elm327.py b/opendbc_repo/opendbc/safety/tests/test_elm327.py new file mode 100755 index 0000000000..a499a051c4 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_elm327.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python3 +import unittest + +import opendbc.safety.tests.common as common +from opendbc.car.structs import CarParams +from opendbc.safety import DLC_TO_LEN +from opendbc.safety.tests.libsafety import libsafety_py +from opendbc.safety.tests.test_defaults import TestDefaultRxHookBase + +GM_CAMERA_DIAG_ADDR = 0x24B + + +class TestElm327(TestDefaultRxHookBase): + TX_MSGS = [[addr, bus] for addr in [GM_CAMERA_DIAG_ADDR, *range(0x600, 0x800), + *range(0x18DA00F1, 0x18DB00F1, 0x100), # 29-bit UDS physical addressing + *[0x18DB33F1], # 29-bit UDS functional address + ] for bus in range(4)] + FWD_BUS_LOOKUP = {} + + def setUp(self): + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.elm327, 0) + self.safety.init_tests() + + def test_tx_hook(self): + # ensure we can transmit arbitrary data on allowed addresses + for bus in range(4): + for addr in self.SCANNED_ADDRS: + should_tx = [addr, bus] in self.TX_MSGS + self.assertEqual(should_tx, self._tx(common.make_msg(bus, addr, 8))) + + # ELM only allows 8 byte UDS/KWP messages under ISO 15765-4 + for msg_len in DLC_TO_LEN: + should_tx = msg_len == 8 + self.assertEqual(should_tx, self._tx(common.make_msg(0, 0x700, msg_len))) + + # TODO: perform this check for all addresses + # 4 to 15 are reserved ISO-TP frame types (https://en.wikipedia.org/wiki/ISO_15765-2) + for byte in range(0xff): + should_tx = (byte >> 4) <= 3 + self.assertEqual(should_tx, self._tx(common.make_msg(0, GM_CAMERA_DIAG_ADDR, dat=bytes([byte] * 8)))) + + def test_tx_hook_on_wrong_safety_mode(self): + # No point, since we allow many diagnostic addresses + pass + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_ford.py b/opendbc_repo/opendbc/safety/tests/test_ford.py new file mode 100755 index 0000000000..744112fd66 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_ford.py @@ -0,0 +1,514 @@ +#!/usr/bin/env python3 +import numpy as np +import random +import unittest + +import opendbc.safety.tests.common as common +from opendbc.car.ford.carcontroller import MAX_LATERAL_ACCEL +from opendbc.car.ford.values import FordSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +from opendbc.safety.tests.common import CANPackerPanda + +MSG_EngBrakeData = 0x165 # RX from PCM, for driver brake pedal and cruise state +MSG_EngVehicleSpThrottle = 0x204 # RX from PCM, for driver throttle input +MSG_BrakeSysFeatures = 0x415 # RX from ABS, for vehicle speed +MSG_EngVehicleSpThrottle2 = 0x202 # RX from PCM, for second vehicle speed +MSG_Yaw_Data_FD1 = 0x91 # RX from RCM, for yaw rate +MSG_Steering_Data_FD1 = 0x083 # TX by OP, various driver switches and LKAS/CC buttons +MSG_ACCDATA = 0x186 # TX by OP, ACC controls +MSG_ACCDATA_3 = 0x18A # TX by OP, ACC/TJA user interface +MSG_Lane_Assist_Data1 = 0x3CA # TX by OP, Lane Keep Assist +MSG_LateralMotionControl = 0x3D3 # TX by OP, Lateral Control message +MSG_LateralMotionControl2 = 0x3D6 # TX by OP, alternate Lateral Control message +MSG_IPMA_Data = 0x3D8 # TX by OP, IPMA and LKAS user interface + + +def checksum(msg): + addr, dat, bus = msg + ret = bytearray(dat) + + if addr == MSG_Yaw_Data_FD1: + chksum = dat[0] + dat[1] # VehRol_W_Actl + chksum += dat[2] + dat[3] # VehYaw_W_Actl + chksum += dat[5] # VehRollYaw_No_Cnt + chksum += dat[6] >> 6 # VehRolWActl_D_Qf + chksum += (dat[6] >> 4) & 0x3 # VehYawWActl_D_Qf + chksum = 0xff - (chksum & 0xff) + ret[4] = chksum + + elif addr == MSG_BrakeSysFeatures: + chksum = dat[0] + dat[1] # Veh_V_ActlBrk + chksum += (dat[2] >> 2) & 0xf # VehVActlBrk_No_Cnt + chksum += dat[2] >> 6 # VehVActlBrk_D_Qf + chksum = 0xff - (chksum & 0xff) + ret[3] = chksum + + elif addr == MSG_EngVehicleSpThrottle2: + chksum = (dat[2] >> 3) & 0xf # VehVActlEng_No_Cnt + chksum += (dat[4] >> 5) & 0x3 # VehVActlEng_D_Qf + chksum += dat[6] + dat[7] # Veh_V_ActlEng + chksum = 0xff - (chksum & 0xff) + ret[1] = chksum + + return addr, ret, bus + + +class Buttons: + CANCEL = 0 + RESUME = 1 + TJA_TOGGLE = 2 + + +# Ford safety has four different configurations tested here: +# * CAN with openpilot longitudinal +# * CAN FD with stock longitudinal +# * CAN FD with openpilot longitudinal + +class TestFordSafetyBase(common.PandaCarSafetyTest): + STANDSTILL_THRESHOLD = 1 + RELAY_MALFUNCTION_ADDRS = {0: (MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, + MSG_LateralMotionControl2, MSG_IPMA_Data)} + + FWD_BLACKLISTED_ADDRS = {2: [MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, + MSG_LateralMotionControl2, MSG_IPMA_Data]} + + # Max allowed delta between car speeds + MAX_SPEED_DELTA = 2.0 # m/s + + STEER_MESSAGE = 0 + + # Curvature control limits + DEG_TO_CAN = 50000 # 1 / (2e-5) rad to can + MAX_CURVATURE = 0.02 + MAX_CURVATURE_ERROR = 0.002 + CURVATURE_ERROR_MIN_SPEED = 10.0 # m/s + + ANGLE_RATE_BP = [5., 25., 25.] + ANGLE_RATE_UP = [0.00045, 0.0001, 0.0001] # windup limit + ANGLE_RATE_DOWN = [0.00045, 0.00015, 0.00015] # unwind limit + + cnt_speed = 0 + cnt_speed_2 = 0 + cnt_yaw_rate = 0 + + packer: CANPackerPanda + safety: libsafety_py.Panda + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestFordSafetyBase": + raise unittest.SkipTest + + def get_canfd_curvature_limits(self, speed): + # Round it in accordance with the safety + curvature_accel_limit = MAX_LATERAL_ACCEL / (max(speed, 1) ** 2) + curvature_accel_limit_lower = int(curvature_accel_limit * self.DEG_TO_CAN - 1) / self.DEG_TO_CAN + curvature_accel_limit_upper = int(curvature_accel_limit * self.DEG_TO_CAN + 1) / self.DEG_TO_CAN + return curvature_accel_limit_lower, curvature_accel_limit_upper + + def _set_prev_desired_angle(self, t): + t = round(t * self.DEG_TO_CAN) + self.safety.set_desired_angle_last(t) + + def _reset_curvature_measurement(self, curvature, speed): + for _ in range(6): + self._rx(self._speed_msg(speed)) + self._rx(self._yaw_rate_msg(curvature, speed)) + + # Driver brake pedal + def _user_brake_msg(self, brake: bool): + # brake pedal and cruise state share same message, so we have to send + # the other signal too + enable = self.safety.get_controls_allowed() + values = { + "BpedDrvAppl_D_Actl": 2 if brake else 1, + "CcStat_D_Actl": 5 if enable else 0, + } + return self.packer.make_can_msg_panda("EngBrakeData", 0, values) + + # ABS vehicle speed + def _speed_msg(self, speed: float, quality_flag=True): + values = {"Veh_V_ActlBrk": speed * 3.6, "VehVActlBrk_D_Qf": 3 if quality_flag else 0, "VehVActlBrk_No_Cnt": self.cnt_speed % 16} + self.__class__.cnt_speed += 1 + return self.packer.make_can_msg_panda("BrakeSysFeatures", 0, values, fix_checksum=checksum) + + # PCM vehicle speed + def _speed_msg_2(self, speed: float, quality_flag=True): + values = {"Veh_V_ActlEng": speed * 3.6, "VehVActlEng_D_Qf": 3 if quality_flag else 0, "VehVActlEng_No_Cnt": self.cnt_speed_2 % 16} + self.__class__.cnt_speed_2 += 1 + return self.packer.make_can_msg_panda("EngVehicleSpThrottle2", 0, values, fix_checksum=checksum) + + # Standstill state + def _vehicle_moving_msg(self, speed: float): + values = {"VehStop_D_Stat": 1 if speed <= self.STANDSTILL_THRESHOLD else random.choice((0, 2, 3))} + return self.packer.make_can_msg_panda("DesiredTorqBrk", 0, values) + + # Current curvature + def _yaw_rate_msg(self, curvature: float, speed: float, quality_flag=True): + values = {"VehYaw_W_Actl": curvature * speed, "VehYawWActl_D_Qf": 3 if quality_flag else 0, + "VehRollYaw_No_Cnt": self.cnt_yaw_rate % 256} + self.__class__.cnt_yaw_rate += 1 + return self.packer.make_can_msg_panda("Yaw_Data_FD1", 0, values, fix_checksum=checksum) + + # Drive throttle input + def _user_gas_msg(self, gas: float): + values = {"ApedPos_Pc_ActlArb": gas} + return self.packer.make_can_msg_panda("EngVehicleSpThrottle", 0, values) + + # Cruise status + def _pcm_status_msg(self, enable: bool): + # brake pedal and cruise state share same message, so we have to send + # the other signal too + brake = self.safety.get_brake_pressed_prev() + values = { + "BpedDrvAppl_D_Actl": 2 if brake else 1, + "CcStat_D_Actl": 5 if enable else 0, + } + return self.packer.make_can_msg_panda("EngBrakeData", 0, values) + + # LKAS command + def _lkas_command_msg(self, action: int): + values = { + "LkaActvStats_D2_Req": action, + } + return self.packer.make_can_msg_panda("Lane_Assist_Data1", 0, values) + + # LCA command + def _lat_ctl_msg(self, enabled: bool, path_offset: float, path_angle: float, curvature: float, curvature_rate: float): + if self.STEER_MESSAGE == MSG_LateralMotionControl: + values = { + "LatCtl_D_Rq": 1 if enabled else 0, + "LatCtlPathOffst_L_Actl": path_offset, # Path offset [-5.12|5.11] meter + "LatCtlPath_An_Actl": path_angle, # Path angle [-0.5|0.5235] radians + "LatCtlCurv_NoRate_Actl": curvature_rate, # Curvature rate [-0.001024|0.00102375] 1/meter^2 + "LatCtlCurv_No_Actl": curvature, # Curvature [-0.02|0.02094] 1/meter + } + return self.packer.make_can_msg_panda("LateralMotionControl", 0, values) + elif self.STEER_MESSAGE == MSG_LateralMotionControl2: + values = { + "LatCtl_D2_Rq": 1 if enabled else 0, + "LatCtlPathOffst_L_Actl": path_offset, # Path offset [-5.12|5.11] meter + "LatCtlPath_An_Actl": path_angle, # Path angle [-0.5|0.5235] radians + "LatCtlCrv_NoRate2_Actl": curvature_rate, # Curvature rate [-0.001024|0.001023] 1/meter^2 + "LatCtlCurv_No_Actl": curvature, # Curvature [-0.02|0.02094] 1/meter + } + return self.packer.make_can_msg_panda("LateralMotionControl2", 0, values) + + # Cruise control buttons + def _acc_button_msg(self, button: int, bus: int): + values = { + "CcAslButtnCnclPress": 1 if button == Buttons.CANCEL else 0, + "CcAsllButtnResPress": 1 if button == Buttons.RESUME else 0, + "TjaButtnOnOffPress": 1 if button == Buttons.TJA_TOGGLE else 0, + } + return self.packer.make_can_msg_panda("Steering_Data_FD1", bus, values) + + def test_rx_hook(self): + # checksum, counter, and quality flag checks + for quality_flag in [True, False]: + for msg in ["speed", "speed_2", "yaw"]: + self.safety.set_controls_allowed(True) + # send multiple times to verify counter checks + for _ in range(10): + if msg == "speed": + to_push = self._speed_msg(0, quality_flag=quality_flag) + elif msg == "speed_2": + to_push = self._speed_msg_2(0, quality_flag=quality_flag) + elif msg == "yaw": + to_push = self._yaw_rate_msg(0, 0, quality_flag=quality_flag) + + self.assertEqual(quality_flag, self._rx(to_push)) + self.assertEqual(quality_flag, self.safety.get_controls_allowed()) + + # Mess with checksum to make it fail, checksum is not checked for 2nd speed + to_push[0].data[3] = 0 # Speed checksum & half of yaw signal + should_rx = msg == "speed_2" and quality_flag + self.assertEqual(should_rx, self._rx(to_push)) + self.assertEqual(should_rx, self.safety.get_controls_allowed()) + + def test_rx_hook_speed_mismatch(self): + # Ford relies on speed for driver curvature limiting, so it checks two sources + for speed in np.arange(0, 40, 0.5): + for speed_delta in np.arange(-5, 5, 0.1): + speed_2 = round(max(speed + speed_delta, 0), 1) + # Set controls allowed in between rx since first message can reset it + self._rx(self._speed_msg(speed)) + self.safety.set_controls_allowed(True) + self._rx(self._speed_msg_2(speed_2)) + + within_delta = abs(speed - speed_2) <= self.MAX_SPEED_DELTA + self.assertEqual(self.safety.get_controls_allowed(), within_delta) + + def test_angle_measurements(self): + """Tests rx hook correctly parses the curvature measurement from the vehicle speed and yaw rate""" + for speed in np.arange(0.5, 40, 0.5): + for curvature in np.arange(0, self.MAX_CURVATURE * 2, 2e-3): + self._rx(self._speed_msg(speed)) + for c in (curvature, -curvature, 0, 0, 0, 0): + self._rx(self._yaw_rate_msg(c, speed)) + + self.assertEqual(self.safety.get_angle_meas_min(), round(-curvature * self.DEG_TO_CAN)) + self.assertEqual(self.safety.get_angle_meas_max(), round(curvature * self.DEG_TO_CAN)) + + self._rx(self._yaw_rate_msg(0, speed)) + self.assertEqual(self.safety.get_angle_meas_min(), round(-curvature * self.DEG_TO_CAN)) + self.assertEqual(self.safety.get_angle_meas_max(), 0) + + self._rx(self._yaw_rate_msg(0, speed)) + self.assertEqual(self.safety.get_angle_meas_min(), 0) + self.assertEqual(self.safety.get_angle_meas_max(), 0) + + def test_max_lateral_acceleration(self): + # Ford CAN FD can achieve a higher max lateral acceleration than CAN so we limit curvature based on speed + for speed in np.arange(0, 40, 0.5): + # Clip so we test curvature limiting at low speed due to low max curvature + _, curvature_accel_limit_upper = self.get_canfd_curvature_limits(speed) + curvature_accel_limit_upper = np.clip(curvature_accel_limit_upper, -self.MAX_CURVATURE, self.MAX_CURVATURE) + + for sign in (-1, 1): + # Test above and below the lateral by 20%, max is clipped since + # max curvature at low speed is higher than the signal max + for curvature in np.arange(curvature_accel_limit_upper * 0.8, min(curvature_accel_limit_upper * 1.2, self.MAX_CURVATURE), 1 / self.DEG_TO_CAN): + curvature = sign * round(curvature * self.DEG_TO_CAN) / self.DEG_TO_CAN # fix np rounding errors + self.safety.set_controls_allowed(True) + self._set_prev_desired_angle(curvature) + self._reset_curvature_measurement(curvature, speed) + + should_tx = abs(curvature) <= curvature_accel_limit_upper + self.assertEqual(should_tx, self._tx(self._lat_ctl_msg(True, 0, 0, curvature, 0))) + + def test_steer_allowed(self): + path_offsets = np.arange(-5.12, 5.11, 2.5).round() + path_angles = np.arange(-0.5, 0.5235, 0.25).round(1) + curvature_rates = np.arange(-0.001024, 0.00102375, 0.001).round(3) + curvatures = np.arange(-0.02, 0.02094, 0.01).round(2) + + for speed in (self.CURVATURE_ERROR_MIN_SPEED - 1, + self.CURVATURE_ERROR_MIN_SPEED + 1): + _, curvature_accel_limit_upper = self.get_canfd_curvature_limits(speed) + for controls_allowed in (True, False): + for steer_control_enabled in (True, False): + for path_offset in path_offsets: + for path_angle in path_angles: + for curvature_rate in curvature_rates: + for curvature in curvatures: + self.safety.set_controls_allowed(controls_allowed) + self._set_prev_desired_angle(curvature) + self._reset_curvature_measurement(curvature, speed) + + should_tx = path_offset == 0 and path_angle == 0 and curvature_rate == 0 + # when request bit is 0, only allow curvature of 0 since the signal range + # is not large enough to enforce it tracking measured + should_tx = should_tx and (controls_allowed if steer_control_enabled else curvature == 0) + + # Only CAN FD has the max lateral acceleration limit + if self.STEER_MESSAGE == MSG_LateralMotionControl2: + should_tx = should_tx and abs(curvature) <= curvature_accel_limit_upper + + with self.subTest(controls_allowed=controls_allowed, steer_control_enabled=steer_control_enabled, + path_offset=path_offset, path_angle=path_angle, curvature_rate=curvature_rate, + curvature=curvature): + self.assertEqual(should_tx, self._tx(self._lat_ctl_msg(steer_control_enabled, path_offset, path_angle, curvature, curvature_rate))) + + def test_curvature_rate_limits(self): + """ + When the curvature error is exceeded, commanded curvature must start moving towards meas respecting rate limits. + Since panda allows higher rate limits to avoid false positives, we need to allow a lower rate to move towards meas. + """ + self.safety.set_controls_allowed(True) + # safety fudges the speed (1 m/s) and rate limits (1 CAN unit) to avoid false positives + small_curvature = 1 / self.DEG_TO_CAN # significant small amount of curvature to cross boundary + + for speed in np.arange(0, 40, 0.5): + curvature_accel_limit_lower, curvature_accel_limit_upper = self.get_canfd_curvature_limits(speed) + limit_command = speed > self.CURVATURE_ERROR_MIN_SPEED + # ensure our limits match the safety's rounded limits + max_delta_up = int(np.interp(speed - 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_UP) * self.DEG_TO_CAN + 1) / self.DEG_TO_CAN + max_delta_up_lower = int(np.interp(speed + 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_UP) * self.DEG_TO_CAN - 1) / self.DEG_TO_CAN + + max_delta_down = int(np.interp(speed - 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_DOWN) * self.DEG_TO_CAN + 1 + 1e-3) / self.DEG_TO_CAN + max_delta_down_lower = int(np.interp(speed + 1, self.ANGLE_RATE_BP, self.ANGLE_RATE_DOWN) * self.DEG_TO_CAN - 1 + 1e-3) / self.DEG_TO_CAN + + up_cases = (self.MAX_CURVATURE_ERROR * 2, [ + (not limit_command, 0, 0), + (not limit_command, 0, max_delta_up_lower - small_curvature), + (True, 1e-9, max_delta_down), # TODO: safety should not allow down limits at 0 + (not limit_command, 1e-9, max_delta_up_lower), # TODO: safety should not allow down limits at 0 + (True, 0, max_delta_up_lower), + (True, 0, max_delta_up), + (False, 0, max_delta_up + small_curvature), + # stay at boundary limit + (True, self.MAX_CURVATURE_ERROR - small_curvature, self.MAX_CURVATURE_ERROR - small_curvature), + # 1 unit below boundary limit + (not limit_command, self.MAX_CURVATURE_ERROR - small_curvature * 2, self.MAX_CURVATURE_ERROR - small_curvature * 2), + # shouldn't allow command to move outside the boundary limit if last was inside + (not limit_command, self.MAX_CURVATURE_ERROR - small_curvature, self.MAX_CURVATURE_ERROR - small_curvature * 2), + ]) + + down_cases = (self.MAX_CURVATURE - self.MAX_CURVATURE_ERROR * 2, [ + (not limit_command, self.MAX_CURVATURE, self.MAX_CURVATURE), + (not limit_command, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down_lower + small_curvature), + (True, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down_lower), + (True, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down), + (False, self.MAX_CURVATURE, self.MAX_CURVATURE - max_delta_down - small_curvature), + ]) + + for sign in (-1, 1): + for angle_meas, cases in (up_cases, down_cases): + self._reset_curvature_measurement(sign * angle_meas, speed) + for should_tx, initial_curvature, desired_curvature in cases: + + # Only CAN FD has the max lateral acceleration limit + if self.STEER_MESSAGE == MSG_LateralMotionControl2: + if should_tx: + # can not send if the curvature is above the max lateral acceleration + should_tx = should_tx and abs(desired_curvature) <= curvature_accel_limit_upper + else: + # if desired curvature violates driver curvature error, it can only send if + # the curvature is being limited by max lateral acceleration + should_tx = should_tx or curvature_accel_limit_lower <= abs(desired_curvature) <= curvature_accel_limit_upper + + # small curvature ensures we're using up limits. at 0, safety allows down limits to allow to account for rounding errors + curvature_offset = small_curvature if initial_curvature == 0 else 0 + self._set_prev_desired_angle(sign * (curvature_offset + initial_curvature)) + self.assertEqual(should_tx, self._tx(self._lat_ctl_msg(True, 0, 0, sign * (curvature_offset + desired_curvature), 0))) + + def test_prevent_lkas_action(self): + self.safety.set_controls_allowed(1) + self.assertFalse(self._tx(self._lkas_command_msg(1))) + + self.safety.set_controls_allowed(0) + self.assertFalse(self._tx(self._lkas_command_msg(1))) + + def test_acc_buttons(self): + for allowed in (0, 1): + self.safety.set_controls_allowed(allowed) + for enabled in (True, False): + self._rx(self._pcm_status_msg(enabled)) + self.assertTrue(self._tx(self._acc_button_msg(Buttons.TJA_TOGGLE, 2))) + + for allowed in (0, 1): + self.safety.set_controls_allowed(allowed) + for bus in (0, 2): + self.assertEqual(allowed, self._tx(self._acc_button_msg(Buttons.RESUME, bus))) + + for enabled in (True, False): + self._rx(self._pcm_status_msg(enabled)) + for bus in (0, 2): + self.assertEqual(enabled, self._tx(self._acc_button_msg(Buttons.CANCEL, bus))) + + +class TestFordCANFDStockSafety(TestFordSafetyBase): + STEER_MESSAGE = MSG_LateralMotionControl2 + + TX_MSGS = [ + [MSG_Steering_Data_FD1, 0], [MSG_Steering_Data_FD1, 2], [MSG_ACCDATA_3, 0], [MSG_Lane_Assist_Data1, 0], + [MSG_LateralMotionControl2, 0], [MSG_IPMA_Data, 0], + ] + + def setUp(self): + self.packer = CANPackerPanda("ford_lincoln_base_pt") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.ford, FordSafetyFlags.CANFD) + self.safety.init_tests() + + +class TestFordLongitudinalSafetyBase(TestFordSafetyBase): + RELAY_MALFUNCTION_ADDRS = {0: (MSG_ACCDATA, MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, + MSG_LateralMotionControl2, MSG_IPMA_Data)} + + FWD_BLACKLISTED_ADDRS = {2: [MSG_ACCDATA, MSG_ACCDATA_3, MSG_Lane_Assist_Data1, MSG_LateralMotionControl, + MSG_LateralMotionControl2, MSG_IPMA_Data]} + + MAX_ACCEL = 2.0 # accel is used for brakes, but openpilot can set positive values + MIN_ACCEL = -3.5 + INACTIVE_ACCEL = 0.0 + + MAX_GAS = 2.0 + MIN_GAS = -0.5 + INACTIVE_GAS = -5.0 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestFordLongitudinalSafetyBase": + raise unittest.SkipTest + + # ACC command + def _acc_command_msg(self, gas: float, brake: float, brake_actuation: bool, cmbb_deny: bool = False): + values = { + "AccPrpl_A_Rq": gas, # [-5|5.23] m/s^2 + "AccPrpl_A_Pred": gas, # [-5|5.23] m/s^2 + "AccBrkTot_A_Rq": brake, # [-20|11.9449] m/s^2 + "AccBrkPrchg_B_Rq": 1 if brake_actuation else 0, # Pre-charge brake request: 0=No, 1=Yes + "AccBrkDecel_B_Rq": 1 if brake_actuation else 0, # Deceleration request: 0=Inactive, 1=Active + "CmbbDeny_B_Actl": 1 if cmbb_deny else 0, # [0|1] deny AEB actuation + } + return self.packer.make_can_msg_panda("ACCDATA", 0, values) + + def test_stock_aeb(self): + # Test that CmbbDeny_B_Actl is never 1, it prevents the ABS module from actuating AEB requests from ACCDATA_2 + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + for cmbb_deny in (True, False): + should_tx = not cmbb_deny + self.assertEqual(should_tx, self._tx(self._acc_command_msg(self.INACTIVE_GAS, self.INACTIVE_ACCEL, controls_allowed, cmbb_deny))) + should_tx = controls_allowed and not cmbb_deny + self.assertEqual(should_tx, self._tx(self._acc_command_msg(self.MAX_GAS, self.MAX_ACCEL, controls_allowed, cmbb_deny))) + + def test_gas_safety_check(self): + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + for gas in np.concatenate((np.arange(self.MIN_GAS - 2, self.MAX_GAS + 2, 0.05), [self.INACTIVE_GAS])): + gas = round(gas, 2) # floats might not hit exact boundary conditions without rounding + should_tx = (controls_allowed and self.MIN_GAS <= gas <= self.MAX_GAS) or gas == self.INACTIVE_GAS + self.assertEqual(should_tx, self._tx(self._acc_command_msg(gas, self.INACTIVE_ACCEL, controls_allowed))) + + def test_brake_safety_check(self): + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + for brake_actuation in (True, False): + for brake in np.arange(self.MIN_ACCEL - 2, self.MAX_ACCEL + 2, 0.05): + brake = round(brake, 2) # floats might not hit exact boundary conditions without rounding + should_tx = (controls_allowed and self.MIN_ACCEL <= brake <= self.MAX_ACCEL) or brake == self.INACTIVE_ACCEL + should_tx = should_tx and (controls_allowed or not brake_actuation) + self.assertEqual(should_tx, self._tx(self._acc_command_msg(self.INACTIVE_GAS, brake, brake_actuation))) + + +class TestFordLongitudinalSafety(TestFordLongitudinalSafetyBase): + STEER_MESSAGE = MSG_LateralMotionControl + + TX_MSGS = [ + [MSG_Steering_Data_FD1, 0], [MSG_Steering_Data_FD1, 2], [MSG_ACCDATA, 0], [MSG_ACCDATA_3, 0], [MSG_Lane_Assist_Data1, 0], + [MSG_LateralMotionControl, 0], [MSG_IPMA_Data, 0], + ] + + def setUp(self): + self.packer = CANPackerPanda("ford_lincoln_base_pt") + self.safety = libsafety_py.libsafety + # Make sure we enforce long safety even without long flag for CAN + self.safety.set_safety_hooks(CarParams.SafetyModel.ford, 0) + self.safety.init_tests() + + def test_max_lateral_acceleration(self): + # CAN does not limit curvature from lateral acceleration + pass + + +class TestFordCANFDLongitudinalSafety(TestFordLongitudinalSafetyBase): + STEER_MESSAGE = MSG_LateralMotionControl2 + + TX_MSGS = [ + [MSG_Steering_Data_FD1, 0], [MSG_Steering_Data_FD1, 2], [MSG_ACCDATA, 0], [MSG_ACCDATA_3, 0], [MSG_Lane_Assist_Data1, 0], + [MSG_LateralMotionControl2, 0], [MSG_IPMA_Data, 0], + ] + + def setUp(self): + self.packer = CANPackerPanda("ford_lincoln_base_pt") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.ford, FordSafetyFlags.LONG_CONTROL | FordSafetyFlags.CANFD) + self.safety.init_tests() + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_gm.py b/opendbc_repo/opendbc/safety/tests/test_gm.py new file mode 100755 index 0000000000..988be81a9c --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_gm.py @@ -0,0 +1,228 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.gm.values import GMSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + + +class Buttons: + UNPRESS = 1 + RES_ACCEL = 2 + DECEL_SET = 3 + CANCEL = 6 + + +class GmLongitudinalBase(common.PandaCarSafetyTest, common.LongitudinalGasBrakeSafetyTest): + # pylint: disable=no-member,abstract-method + + RELAY_MALFUNCTION_ADDRS = {0: (0x180, 0x2CB)} # ASCMLKASteeringCmd, ASCMGasRegenCmd + + MAX_POSSIBLE_BRAKE = 2 ** 12 + MAX_BRAKE = 400 + + MAX_POSSIBLE_GAS = 2 ** 12 + + PCM_CRUISE = False # openpilot can control the PCM state if longitudinal + + def _send_brake_msg(self, brake): + values = {"FrictionBrakeCmd": -brake} + return self.packer_chassis.make_can_msg_panda("EBCMFrictionBrakeCmd", self.BRAKE_BUS, values) + + def _send_gas_msg(self, gas): + values = {"GasRegenCmd": gas} + return self.packer.make_can_msg_panda("ASCMGasRegenCmd", 0, values) + + # override these tests from PandaCarSafetyTest, GM longitudinal uses button enable + def _pcm_status_msg(self, enable): + raise NotImplementedError + + def test_disable_control_allowed_from_cruise(self): + pass + + def test_enable_control_allowed_from_cruise(self): + pass + + def test_cruise_engaged_prev(self): + pass + + def test_set_resume_buttons(self): + """ + SET and RESUME enter controls allowed on their falling and rising edges, respectively. + """ + for btn_prev in range(8): + for btn_cur in range(8): + with self.subTest(btn_prev=btn_prev, btn_cur=btn_cur): + self._rx(self._button_msg(btn_prev)) + self.safety.set_controls_allowed(0) + for _ in range(10): + self._rx(self._button_msg(btn_cur)) + + should_enable = btn_cur != Buttons.DECEL_SET and btn_prev == Buttons.DECEL_SET + should_enable = should_enable or (btn_cur == Buttons.RES_ACCEL and btn_prev != Buttons.RES_ACCEL) + should_enable = should_enable and btn_cur != Buttons.CANCEL + self.assertEqual(should_enable, self.safety.get_controls_allowed()) + + def test_cancel_button(self): + self.safety.set_controls_allowed(1) + self._rx(self._button_msg(Buttons.CANCEL)) + self.assertFalse(self.safety.get_controls_allowed()) + + +class TestGmSafetyBase(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): + STANDSTILL_THRESHOLD = 10 * 0.0311 + # Ensures ASCM is off on ASCM cars, and relay is not malfunctioning for camera-ACC cars + RELAY_MALFUNCTION_ADDRS = {0: (0x180,)} # ASCMLKASteeringCmd + BUTTONS_BUS = 0 # rx or tx + BRAKE_BUS = 0 # tx only + + MAX_RATE_UP = 10 + MAX_RATE_DOWN = 15 + MAX_TORQUE = 300 + MAX_RT_DELTA = 128 + RT_INTERVAL = 250000 + DRIVER_TORQUE_ALLOWANCE = 65 + DRIVER_TORQUE_FACTOR = 4 + + PCM_CRUISE = True # openpilot is tied to the PCM state if not longitudinal + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestGmSafetyBase": + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def setUp(self): + self.packer = CANPackerPanda("gm_global_a_powertrain_generated") + self.packer_chassis = CANPackerPanda("gm_global_a_chassis") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.gm, 0) + self.safety.init_tests() + + def _pcm_status_msg(self, enable): + if self.PCM_CRUISE: + values = {"CruiseState": enable} + return self.packer.make_can_msg_panda("AcceleratorPedal2", 0, values) + else: + raise NotImplementedError + + def _speed_msg(self, speed): + values = {"%sWheelSpd" % s: speed for s in ["RL", "RR"]} + return self.packer.make_can_msg_panda("EBCMWheelSpdRear", 0, values) + + def _user_brake_msg(self, brake): + # GM safety has a brake threshold of 8 + values = {"BrakePedalPos": 8 if brake else 0} + return self.packer.make_can_msg_panda("ECMAcceleratorPos", 0, values) + + def _user_regen_msg(self, regen): + values = {"RegenPaddle": 2 if regen else 0} + return self.packer.make_can_msg_panda("EBCMRegenPaddle", 0, values) + + def _user_gas_msg(self, gas): + values = {"AcceleratorPedal2": 1 if gas else 0} + if self.PCM_CRUISE: + # Fill CruiseState with expected value if the safety mode reads cruise state from gas msg + values["CruiseState"] = self.safety.get_controls_allowed() + return self.packer.make_can_msg_panda("AcceleratorPedal2", 0, values) + + def _torque_driver_msg(self, torque): + # Safety tests assume driver torque is an int, use DBC factor + values = {"LKADriverAppldTrq": torque * 0.01} + return self.packer.make_can_msg_panda("PSCMStatus", 0, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"LKASteeringCmd": torque, "LKASteeringCmdActive": steer_req} + return self.packer.make_can_msg_panda("ASCMLKASteeringCmd", 0, values) + + def _button_msg(self, buttons): + values = {"ACCButtons": buttons} + return self.packer.make_can_msg_panda("ASCMSteeringButton", self.BUTTONS_BUS, values) + + +class TestGmAscmSafety(GmLongitudinalBase, TestGmSafetyBase): + TX_MSGS = [[0x180, 0], [0x409, 0], [0x40A, 0], [0x2CB, 0], [0x370, 0], # pt bus + [0xA1, 1], [0x306, 1], [0x308, 1], [0x310, 1], # obs bus + [0x315, 2]] # ch bus + FWD_BLACKLISTED_ADDRS: dict[int, list[int]] = {} + FWD_BUS_LOOKUP: dict[int, int] = {} + BRAKE_BUS = 2 + + MAX_GAS = 3072 + MIN_GAS = 1404 # maximum regen + INACTIVE_GAS = 1404 + + def setUp(self): + self.packer = CANPackerPanda("gm_global_a_powertrain_generated") + self.packer_chassis = CANPackerPanda("gm_global_a_chassis") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.gm, 0) + self.safety.init_tests() + + +class TestGmCameraSafetyBase(TestGmSafetyBase): + + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestGmCameraSafetyBase": + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def _user_brake_msg(self, brake): + values = {"BrakePressed": brake} + return self.packer.make_can_msg_panda("ECMEngineStatus", 0, values) + + +class TestGmCameraSafety(TestGmCameraSafetyBase): + TX_MSGS = [[0x180, 0], # pt bus + [0x184, 2]] # camera bus + FWD_BLACKLISTED_ADDRS = {2: [0x180], 0: [0x184]} # block LKAS message and PSCMStatus + BUTTONS_BUS = 2 # tx only + + def setUp(self): + self.packer = CANPackerPanda("gm_global_a_powertrain_generated") + self.packer_chassis = CANPackerPanda("gm_global_a_chassis") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.gm, GMSafetyFlags.HW_CAM) + self.safety.init_tests() + + def test_buttons(self): + # Only CANCEL button is allowed while cruise is enabled + self.safety.set_controls_allowed(0) + for btn in range(8): + self.assertFalse(self._tx(self._button_msg(btn))) + + self.safety.set_controls_allowed(1) + for btn in range(8): + self.assertFalse(self._tx(self._button_msg(btn))) + + for enabled in (True, False): + self._rx(self._pcm_status_msg(enabled)) + self.assertEqual(enabled, self._tx(self._button_msg(Buttons.CANCEL))) + + +class TestGmCameraLongitudinalSafety(GmLongitudinalBase, TestGmCameraSafetyBase): + TX_MSGS = [[0x180, 0], [0x315, 0], [0x2CB, 0], [0x370, 0], # pt bus + [0x184, 2]] # camera bus + FWD_BLACKLISTED_ADDRS = {2: [0x180, 0x2CB, 0x370, 0x315], 0: [0x184]} # block LKAS, ACC messages and PSCMStatus + BUTTONS_BUS = 0 # rx only + + MAX_GAS = 3400 + MIN_GAS = 1514 # maximum regen + INACTIVE_GAS = 1554 + + def setUp(self): + self.packer = CANPackerPanda("gm_global_a_powertrain_generated") + self.packer_chassis = CANPackerPanda("gm_global_a_chassis") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.gm, GMSafetyFlags.HW_CAM | GMSafetyFlags.HW_CAM_LONG) + self.safety.init_tests() + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_honda.py b/opendbc_repo/opendbc/safety/tests/test_honda.py new file mode 100755 index 0000000000..7585ce2e2a --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_honda.py @@ -0,0 +1,573 @@ +#!/usr/bin/env python3 +import unittest +import numpy as np + +from opendbc.car.honda.values import HondaSafetyFlags +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.car.structs import CarParams +from opendbc.safety.tests.common import CANPackerPanda, MAX_WRONG_COUNTERS + +HONDA_N_COMMON_TX_MSGS = [[0xE4, 0], [0x194, 0], [0x1FA, 0], [0x30C, 0], [0x33D, 0]] + +class Btn: + NONE = 0 + MAIN = 1 + CANCEL = 2 + SET = 3 + RESUME = 4 + +HONDA_NIDEC = 0 +HONDA_BOSCH = 1 + + +# Honda safety has several different configurations tested here: +# * Nidec +# * normal (PCM-enable) +# * alt SCM messages (PCM-enable) +# * Bosch +# * Bosch with Longitudinal Support +# * Bosch Radarless +# * Bosch Radarless with Longitudinal Support + + +class HondaButtonEnableBase(common.PandaCarSafetyTest): + # pylint: disable=no-member,abstract-method + + # override these inherited tests since we're using button enable + def test_disable_control_allowed_from_cruise(self): + pass + + def test_enable_control_allowed_from_cruise(self): + pass + + def test_cruise_engaged_prev(self): + pass + + def test_buttons_with_main_off(self): + for btn in (Btn.SET, Btn.RESUME, Btn.CANCEL): + self.safety.set_controls_allowed(1) + self._rx(self._acc_state_msg(False)) + self._rx(self._button_msg(btn, main_on=False)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_set_resume_buttons(self): + """ + Both SET and RES should enter controls allowed on their falling edge. + """ + for main_on in (True, False): + self._rx(self._acc_state_msg(main_on)) + for btn_prev in range(8): + for btn_cur in range(8): + self._rx(self._button_msg(Btn.NONE)) + self.safety.set_controls_allowed(0) + for _ in range(10): + self._rx(self._button_msg(btn_prev)) + self.assertFalse(self.safety.get_controls_allowed()) + + # should enter controls allowed on falling edge and not transitioning to cancel or main + should_enable = (main_on and + btn_cur != btn_prev and + btn_prev in (Btn.RESUME, Btn.SET) and + btn_cur not in (Btn.CANCEL, Btn.MAIN)) + + self._rx(self._button_msg(btn_cur, main_on=main_on)) + self.assertEqual(should_enable, self.safety.get_controls_allowed(), msg=f"{main_on=} {btn_prev=} {btn_cur=}") + + def test_main_cancel_buttons(self): + """ + Both MAIN and CANCEL should exit controls immediately. + """ + for btn in (Btn.MAIN, Btn.CANCEL): + self.safety.set_controls_allowed(1) + self._rx(self._button_msg(btn, main_on=True)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_disengage_on_main(self): + self.safety.set_controls_allowed(1) + self._rx(self._acc_state_msg(True)) + self.assertTrue(self.safety.get_controls_allowed()) + self._rx(self._acc_state_msg(False)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_rx_hook(self): + + # TODO: move this test to common + # checksum checks + for msg in ["btn", "gas", "speed"]: + self.safety.set_controls_allowed(1) + if msg == "btn": + to_push = self._button_msg(Btn.SET) + if msg == "gas": + to_push = self._user_gas_msg(0) + if msg == "speed": + to_push = self._speed_msg(0) + self.assertTrue(self._rx(to_push)) + if msg != "btn": + to_push[0].data[4] = 0 # invalidate checksum + to_push[0].data[5] = 0 + to_push[0].data[6] = 0 + to_push[0].data[7] = 0 + self.assertFalse(self._rx(to_push)) + self.assertFalse(self.safety.get_controls_allowed()) + + # counter + # reset wrong_counters to zero by sending valid messages + for i in range(MAX_WRONG_COUNTERS + 1): + self.__class__.cnt_speed += 1 + self.__class__.cnt_button += 1 + self.__class__.cnt_powertrain_data += 1 + if i < MAX_WRONG_COUNTERS: + self.safety.set_controls_allowed(1) + self._rx(self._button_msg(Btn.SET)) + self._rx(self._speed_msg(0)) + self._rx(self._user_gas_msg(0)) + else: + self.assertFalse(self._rx(self._button_msg(Btn.SET))) + self.assertFalse(self._rx(self._speed_msg(0))) + self.assertFalse(self._rx(self._user_gas_msg(0))) + self.assertFalse(self.safety.get_controls_allowed()) + + # restore counters for future tests with a couple of good messages + for _ in range(2): + self.safety.set_controls_allowed(1) + self._rx(self._button_msg(Btn.SET, main_on=True)) + self._rx(self._speed_msg(0)) + self._rx(self._user_gas_msg(0)) + self._rx(self._button_msg(Btn.SET, main_on=True)) + self.assertTrue(self.safety.get_controls_allowed()) + + +class HondaPcmEnableBase(common.PandaCarSafetyTest): + # pylint: disable=no-member,abstract-method + + def test_buttons(self): + """ + Buttons should only cancel in this configuration, + since our state is tied to the PCM's cruise state. + """ + for controls_allowed in (True, False): + for main_on in (True, False): + # not a valid state + if controls_allowed and not main_on: + continue + + for btn in (Btn.SET, Btn.RESUME, Btn.CANCEL): + self.safety.set_controls_allowed(controls_allowed) + self._rx(self._acc_state_msg(main_on)) + + # btn + none for falling edge + self._rx(self._button_msg(btn, main_on=main_on)) + self._rx(self._button_msg(Btn.NONE, main_on=main_on)) + + if btn == Btn.CANCEL: + self.assertFalse(self.safety.get_controls_allowed()) + else: + self.assertEqual(controls_allowed, self.safety.get_controls_allowed()) + + +class HondaBase(common.PandaCarSafetyTest): + MAX_BRAKE = 255 + PT_BUS: int | None = None # must be set when inherited + STEER_BUS: int | None = None # must be set when inherited + BUTTONS_BUS: int | None = None # must be set when inherited, tx on this bus, rx on PT_BUS + + RELAY_MALFUNCTION_ADDRS = {0: (0xE4, 0x194)} # STEERING_CONTROL + + cnt_speed = 0 + cnt_button = 0 + cnt_brake = 0 + cnt_powertrain_data = 0 + cnt_acc_state = 0 + + @classmethod + def setUpClass(cls): + if cls.__name__.endswith("Base"): + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def _powertrain_data_msg(self, cruise_on=None, brake_pressed=None, gas_pressed=None): + # preserve the state + if cruise_on is None: + # or'd with controls allowed since the tests use it to "enable" cruise + cruise_on = self.safety.get_cruise_engaged_prev() or self.safety.get_controls_allowed() + if brake_pressed is None: + brake_pressed = self.safety.get_brake_pressed_prev() + if gas_pressed is None: + gas_pressed = self.safety.get_gas_pressed_prev() + + values = { + "ACC_STATUS": cruise_on, + "BRAKE_PRESSED": brake_pressed, + "PEDAL_GAS": gas_pressed, + "COUNTER": self.cnt_powertrain_data % 4 + } + self.__class__.cnt_powertrain_data += 1 + return self.packer.make_can_msg_panda("POWERTRAIN_DATA", self.PT_BUS, values) + + def _pcm_status_msg(self, enable): + return self._powertrain_data_msg(cruise_on=enable) + + def _speed_msg(self, speed): + values = {"XMISSION_SPEED": speed, "COUNTER": self.cnt_speed % 4} + self.__class__.cnt_speed += 1 + return self.packer.make_can_msg_panda("ENGINE_DATA", self.PT_BUS, values) + + def _acc_state_msg(self, main_on): + values = {"MAIN_ON": main_on, "COUNTER": self.cnt_acc_state % 4} + self.__class__.cnt_acc_state += 1 + return self.packer.make_can_msg_panda("SCM_FEEDBACK", self.PT_BUS, values) + + def _button_msg(self, buttons, main_on=False, bus=None): + bus = self.PT_BUS if bus is None else bus + values = {"CRUISE_BUTTONS": buttons, "COUNTER": self.cnt_button % 4} + self.__class__.cnt_button += 1 + return self.packer.make_can_msg_panda("SCM_BUTTONS", bus, values) + + def _user_brake_msg(self, brake): + return self._powertrain_data_msg(brake_pressed=brake) + + def _user_gas_msg(self, gas): + return self._powertrain_data_msg(gas_pressed=gas) + + def _send_steer_msg(self, steer): + values = {"STEER_TORQUE": steer} + return self.packer.make_can_msg_panda("STEERING_CONTROL", self.STEER_BUS, values) + + def _send_brake_msg(self, brake): + # must be implemented when inherited + raise NotImplementedError + + def test_disengage_on_brake(self): + self.safety.set_controls_allowed(1) + self._rx(self._user_brake_msg(1)) + self.assertFalse(self.safety.get_controls_allowed()) + + def test_steer_safety_check(self): + self.safety.set_controls_allowed(0) + self.assertTrue(self._tx(self._send_steer_msg(0x0000))) + self.assertFalse(self._tx(self._send_steer_msg(0x1000))) + + +# ********************* Honda Nidec ********************** + + +class TestHondaNidecSafetyBase(HondaBase): + TX_MSGS = HONDA_N_COMMON_TX_MSGS + FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0x194, 0x33D, 0x30C]} + + PT_BUS = 0 + STEER_BUS = 0 + BUTTONS_BUS = 0 + + MAX_GAS = 198 + + def setUp(self): + self.packer = CANPackerPanda("honda_civic_touring_2016_can_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaNidec, 0) + self.safety.init_tests() + + def _send_brake_msg(self, brake, aeb_req=0, bus=0): + values = {"COMPUTER_BRAKE": brake, "AEB_REQ_1": aeb_req} + return self.packer.make_can_msg_panda("BRAKE_COMMAND", bus, values) + + def _rx_brake_msg(self, brake, aeb_req=0): + return self._send_brake_msg(brake, aeb_req, bus=2) + + def _send_acc_hud_msg(self, pcm_gas, pcm_speed): + # Used to control ACC on Nidec without pedal + values = {"PCM_GAS": pcm_gas, "PCM_SPEED": pcm_speed} + return self.packer.make_can_msg_panda("ACC_HUD", 0, values) + + def test_acc_hud_safety_check(self): + for controls_allowed in [True, False]: + self.safety.set_controls_allowed(controls_allowed) + for pcm_gas in range(255): + for pcm_speed in range(100): + send = (controls_allowed and pcm_gas <= self.MAX_GAS) or (pcm_gas == 0 and pcm_speed == 0) + self.assertEqual(send, self._tx(self._send_acc_hud_msg(pcm_gas, pcm_speed))) + + def test_fwd_hook(self): + # normal operation, not forwarding AEB + self.FWD_BLACKLISTED_ADDRS[2].append(0x1FA) + self.safety.set_honda_fwd_brake(False) + super().test_fwd_hook() + + # forwarding AEB brake signal + self.FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0x194, 0x33D, 0x30C]} + self.safety.set_honda_fwd_brake(True) + super().test_fwd_hook() + + def test_honda_fwd_brake_latching(self): + # Shouldn't fwd stock Honda requesting brake without AEB + self.assertTrue(self._rx(self._rx_brake_msg(self.MAX_BRAKE, aeb_req=0))) + self.assertFalse(self.safety.get_honda_fwd_brake()) + + # Now allow controls and request some brake + openpilot_brake = round(self.MAX_BRAKE / 2.0) + self.safety.set_controls_allowed(True) + self.assertTrue(self._tx(self._send_brake_msg(openpilot_brake))) + + # Still shouldn't fwd stock Honda brake until it's more than openpilot's + for stock_honda_brake in range(self.MAX_BRAKE + 1): + self.assertTrue(self._rx(self._rx_brake_msg(stock_honda_brake, aeb_req=1))) + should_fwd_brake = stock_honda_brake >= openpilot_brake + self.assertEqual(should_fwd_brake, self.safety.get_honda_fwd_brake()) + + # Shouldn't stop fwding until AEB event is over + for stock_honda_brake in range(self.MAX_BRAKE + 1)[::-1]: + self.assertTrue(self._rx(self._rx_brake_msg(stock_honda_brake, aeb_req=1))) + self.assertTrue(self.safety.get_honda_fwd_brake()) + + self.assertTrue(self._rx(self._rx_brake_msg(0, aeb_req=0))) + self.assertFalse(self.safety.get_honda_fwd_brake()) + + def test_brake_safety_check(self): + for fwd_brake in [False, True]: + self.safety.set_honda_fwd_brake(fwd_brake) + for brake in np.arange(0, self.MAX_BRAKE + 10, 1): + for controls_allowed in [True, False]: + self.safety.set_controls_allowed(controls_allowed) + if fwd_brake: + send = False # block openpilot brake msg when fwd'ing stock msg + elif controls_allowed: + send = self.MAX_BRAKE >= brake >= 0 + else: + send = brake == 0 + self.assertEqual(send, self._tx(self._send_brake_msg(brake))) + + +class TestHondaNidecPcmSafety(HondaPcmEnableBase, TestHondaNidecSafetyBase): + """ + Covers the Honda Nidec safety mode + """ + + # Nidec doesn't disengage on falling edge of cruise. See comment in safety_honda.h + def test_disable_control_allowed_from_cruise(self): + pass + + +class TestHondaNidecPcmAltSafety(TestHondaNidecPcmSafety): + """ + Covers the Honda Nidec safety mode with alt SCM messages + """ + def setUp(self): + self.packer = CANPackerPanda("acura_ilx_2016_can_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaNidec, HondaSafetyFlags.NIDEC_ALT) + self.safety.init_tests() + + def _acc_state_msg(self, main_on): + values = {"MAIN_ON": main_on, "COUNTER": self.cnt_acc_state % 4} + self.__class__.cnt_acc_state += 1 + return self.packer.make_can_msg_panda("SCM_BUTTONS", self.PT_BUS, values) + + def _button_msg(self, buttons, main_on=False, bus=None): + bus = self.PT_BUS if bus is None else bus + values = {"CRUISE_BUTTONS": buttons, "MAIN_ON": main_on, "COUNTER": self.cnt_button % 4} + self.__class__.cnt_button += 1 + return self.packer.make_can_msg_panda("SCM_BUTTONS", bus, values) + + +# ********************* Honda Bosch ********************** + + +class TestHondaBoschSafetyBase(HondaBase): + PT_BUS = 1 + STEER_BUS = 0 + BUTTONS_BUS = 1 + + TX_MSGS = [[0xE4, 0], [0xE5, 0], [0x296, 1], [0x33D, 0], [0x33DA, 0], [0x33DB, 0]] + FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB]} + + def setUp(self): + self.packer = CANPackerPanda("honda_accord_2018_can_generated") + self.safety = libsafety_py.libsafety + + def _alt_brake_msg(self, brake): + values = {"BRAKE_PRESSED": brake, "COUNTER": self.cnt_brake % 4} + self.__class__.cnt_brake += 1 + return self.packer.make_can_msg_panda("BRAKE_MODULE", self.PT_BUS, values) + + def _send_brake_msg(self, brake): + pass + + def test_alt_disengage_on_brake(self): + self.safety.set_honda_alt_brake_msg(1) + self.safety.set_controls_allowed(1) + self._rx(self._alt_brake_msg(1)) + self.assertFalse(self.safety.get_controls_allowed()) + + self.safety.set_honda_alt_brake_msg(0) + self.safety.set_controls_allowed(1) + self._rx(self._alt_brake_msg(1)) + self.assertTrue(self.safety.get_controls_allowed()) + + def test_spam_cancel_safety_check(self): + self.safety.set_controls_allowed(0) + self.assertTrue(self._tx(self._button_msg(Btn.CANCEL, bus=self.BUTTONS_BUS))) + self.assertFalse(self._tx(self._button_msg(Btn.RESUME, bus=self.BUTTONS_BUS))) + self.assertFalse(self._tx(self._button_msg(Btn.SET, bus=self.BUTTONS_BUS))) + # do not block resume if we are engaged already + self.safety.set_controls_allowed(1) + self.assertTrue(self._tx(self._button_msg(Btn.RESUME, bus=self.BUTTONS_BUS))) + + +class TestHondaBoschAltBrakeSafetyBase(TestHondaBoschSafetyBase): + """ + Base Bosch safety test class with an alternate brake message + """ + def setUp(self): + super().setUp() + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.ALT_BRAKE) + self.safety.init_tests() + + def _user_brake_msg(self, brake): + return self._alt_brake_msg(brake) + + def test_alt_brake_rx_hook(self): + self.safety.set_honda_alt_brake_msg(1) + self.safety.set_controls_allowed(1) + to_push = self._alt_brake_msg(0) + self.assertTrue(self._rx(to_push)) + to_push[0].data[2] = to_push[0].data[2] & 0xF0 # invalidate checksum + self.assertFalse(self._rx(to_push)) + self.assertFalse(self.safety.get_controls_allowed()) + + +class TestHondaBoschSafety(HondaPcmEnableBase, TestHondaBoschSafetyBase): + """ + Covers the Honda Bosch safety mode with stock longitudinal + """ + def setUp(self): + super().setUp() + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, 0) + self.safety.init_tests() + + +class TestHondaBoschAltBrakeSafety(HondaPcmEnableBase, TestHondaBoschAltBrakeSafetyBase): + """ + Covers the Honda Bosch safety mode with stock longitudinal and an alternate brake message + """ + + +class TestHondaBoschLongSafety(HondaButtonEnableBase, TestHondaBoschSafetyBase): + """ + Covers the Honda Bosch safety mode with longitudinal control + """ + NO_GAS = -30000 + MAX_GAS = 2000 + MAX_ACCEL = 2.0 # accel is used for brakes, but openpilot can set positive values + MIN_ACCEL = -3.5 + + STEER_BUS = 1 + TX_MSGS = [[0xE4, 1], [0x1DF, 1], [0x1EF, 1], [0x1FA, 1], [0x30C, 1], [0x33D, 1], [0x33DA, 1], [0x33DB, 1], [0x39F, 1], [0x18DAB0F1, 1]] + FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB]} + # 0x1DF is to test that radar is disabled + RELAY_MALFUNCTION_ADDRS = {0: (0xE4, 0x194), 1: (0x1DF,)} # STEERING_CONTROL, ACC_CONTROL + + def setUp(self): + super().setUp() + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.BOSCH_LONG) + self.safety.init_tests() + + def _send_gas_brake_msg(self, gas, accel): + values = { + "GAS_COMMAND": gas, + "ACCEL_COMMAND": accel, + "BRAKE_REQUEST": accel < 0, + } + return self.packer.make_can_msg_panda("ACC_CONTROL", self.PT_BUS, values) + + # Longitudinal doesn't need to send buttons + def test_spam_cancel_safety_check(self): + pass + + def test_diagnostics(self): + tester_present = libsafety_py.make_CANPacket(0x18DAB0F1, self.PT_BUS, b"\x02\x3E\x80\x00\x00\x00\x00\x00") + self.assertTrue(self._tx(tester_present)) + + not_tester_present = libsafety_py.make_CANPacket(0x18DAB0F1, self.PT_BUS, b"\x03\xAA\xAA\x00\x00\x00\x00\x00") + self.assertFalse(self._tx(not_tester_present)) + + def test_gas_safety_check(self): + for controls_allowed in [True, False]: + for gas in np.arange(self.NO_GAS, self.MAX_GAS + 2000, 100): + accel = 0 if gas < 0 else gas / 1000 + self.safety.set_controls_allowed(controls_allowed) + send = (controls_allowed and 0 <= gas <= self.MAX_GAS) or gas == self.NO_GAS + self.assertEqual(send, self._tx(self._send_gas_brake_msg(gas, accel)), (controls_allowed, gas, accel)) + + def test_brake_safety_check(self): + for controls_allowed in [True, False]: + for accel in np.arange(self.MIN_ACCEL - 1, self.MAX_ACCEL + 1, 0.01): + accel = round(accel, 2) # floats might not hit exact boundary conditions without rounding + self.safety.set_controls_allowed(controls_allowed) + send = self.MIN_ACCEL <= accel <= self.MAX_ACCEL if controls_allowed else accel == 0 + self.assertEqual(send, self._tx(self._send_gas_brake_msg(self.NO_GAS, accel)), (controls_allowed, accel)) + + +class TestHondaBoschRadarlessSafetyBase(TestHondaBoschSafetyBase): + """Base class for radarless Honda Bosch""" + PT_BUS = 0 + STEER_BUS = 0 + BUTTONS_BUS = 2 # camera controls ACC, need to send buttons on bus 2 + + TX_MSGS = [[0xE4, 0], [0x296, 2], [0x33D, 0]] + FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB]} + + def setUp(self): + self.packer = CANPackerPanda("honda_civic_ex_2022_can_generated") + self.safety = libsafety_py.libsafety + + +class TestHondaBoschRadarlessSafety(HondaPcmEnableBase, TestHondaBoschRadarlessSafetyBase): + """ + Covers the Honda Bosch Radarless safety mode with stock longitudinal + """ + + def setUp(self): + super().setUp() + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.RADARLESS) + self.safety.init_tests() + + +class TestHondaBoschRadarlessAltBrakeSafety(HondaPcmEnableBase, TestHondaBoschRadarlessSafetyBase, TestHondaBoschAltBrakeSafetyBase): + """ + Covers the Honda Bosch Radarless safety mode with stock longitudinal and an alternate brake message + """ + + def setUp(self): + super().setUp() + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.RADARLESS | HondaSafetyFlags.ALT_BRAKE) + self.safety.init_tests() + + +class TestHondaBoschRadarlessLongSafety(common.LongitudinalAccelSafetyTest, HondaButtonEnableBase, + TestHondaBoschRadarlessSafetyBase): + """ + Covers the Honda Bosch Radarless safety mode with longitudinal control + """ + TX_MSGS = [[0xE4, 0], [0x33D, 0], [0x1C8, 0], [0x30C, 0]] + FWD_BLACKLISTED_ADDRS = {2: [0xE4, 0xE5, 0x33D, 0x33DA, 0x33DB, 0x1C8, 0x30C]} + + def setUp(self): + super().setUp() + self.safety.set_safety_hooks(CarParams.SafetyModel.hondaBosch, HondaSafetyFlags.RADARLESS | HondaSafetyFlags.BOSCH_LONG) + self.safety.init_tests() + + def _accel_msg(self, accel): + values = { + "ACCEL_COMMAND": accel, + } + return self.packer.make_can_msg_panda("ACC_CONTROL", self.PT_BUS, values) + + # Longitudinal doesn't need to send buttons + def test_spam_cancel_safety_check(self): + pass + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_hyundai.py b/opendbc_repo/opendbc/safety/tests/test_hyundai.py new file mode 100755 index 0000000000..e35962108a --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_hyundai.py @@ -0,0 +1,273 @@ +#!/usr/bin/env python3 +import random +import unittest + +from opendbc.car.hyundai.values import HyundaiSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda +from opendbc.safety.tests.hyundai_common import HyundaiButtonBase, HyundaiLongitudinalBase + + +# 4 bit checkusm used in some hyundai messages +# lives outside the can packer because we never send this msg +def checksum(msg): + addr, dat, bus = msg + + chksum = 0 + if addr == 0x386: + for i, b in enumerate(dat): + for j in range(8): + # exclude checksum and counter bits + if (i != 1 or j < 6) and (i != 3 or j < 6) and (i != 5 or j < 6) and (i != 7 or j < 6): + bit = (b >> j) & 1 + else: + bit = 0 + chksum += bit + chksum = (chksum ^ 9) & 0xF + ret = bytearray(dat) + ret[5] |= (chksum & 0x3) << 6 + ret[7] |= (chksum & 0xc) << 4 + else: + for i, b in enumerate(dat): + if addr in [0x260, 0x421] and i == 7: + b &= 0x0F if addr == 0x421 else 0xF0 + elif addr == 0x394 and i == 6: + b &= 0xF0 + elif addr == 0x394 and i == 7: + continue + chksum += sum(divmod(b, 16)) + chksum = (16 - chksum) % 16 + ret = bytearray(dat) + ret[6 if addr == 0x394 else 7] |= chksum << (4 if addr == 0x421 else 0) + + return addr, ret, bus + + +class TestHyundaiSafety(HyundaiButtonBase, common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): + TX_MSGS = [[0x340, 0], [0x4F1, 0], [0x485, 0]] + STANDSTILL_THRESHOLD = 12 # 0.375 kph + RELAY_MALFUNCTION_ADDRS = {0: (0x340,)} # LKAS11 + FWD_BLACKLISTED_ADDRS = {2: [0x340, 0x485]} + + MAX_RATE_UP = 3 + MAX_RATE_DOWN = 7 + MAX_TORQUE = 384 + MAX_RT_DELTA = 112 + RT_INTERVAL = 250000 + DRIVER_TORQUE_ALLOWANCE = 50 + DRIVER_TORQUE_FACTOR = 2 + + # Safety around steering req bit + MIN_VALID_STEERING_FRAMES = 89 + MAX_INVALID_STEERING_FRAMES = 2 + MIN_VALID_STEERING_RT_INTERVAL = 810000 # a ~10% buffer, can send steer up to 110Hz + + cnt_gas = 0 + cnt_speed = 0 + cnt_brake = 0 + cnt_cruise = 0 + cnt_button = 0 + + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, 0) + self.safety.init_tests() + + def _button_msg(self, buttons, main_button=0, bus=0): + values = {"CF_Clu_CruiseSwState": buttons, "CF_Clu_CruiseSwMain": main_button, "CF_Clu_AliveCnt1": self.cnt_button} + self.__class__.cnt_button += 1 + return self.packer.make_can_msg_panda("CLU11", bus, values) + + def _user_gas_msg(self, gas): + values = {"CF_Ems_AclAct": gas, "AliveCounter": self.cnt_gas % 4} + self.__class__.cnt_gas += 1 + return self.packer.make_can_msg_panda("EMS16", 0, values, fix_checksum=checksum) + + def _user_brake_msg(self, brake): + values = {"DriverOverride": 2 if brake else random.choice((0, 1, 3)), + "AliveCounterTCS": self.cnt_brake % 8} + self.__class__.cnt_brake += 1 + return self.packer.make_can_msg_panda("TCS13", 0, values, fix_checksum=checksum) + + def _speed_msg(self, speed): + # panda safety doesn't scale, so undo the scaling + values = {"WHL_SPD_%s" % s: speed * 0.03125 for s in ["FL", "FR", "RL", "RR"]} + values["WHL_SPD_AliveCounter_LSB"] = (self.cnt_speed % 16) & 0x3 + values["WHL_SPD_AliveCounter_MSB"] = (self.cnt_speed % 16) >> 2 + self.__class__.cnt_speed += 1 + return self.packer.make_can_msg_panda("WHL_SPD11", 0, values, fix_checksum=checksum) + + def _pcm_status_msg(self, enable): + values = {"ACCMode": enable, "CR_VSM_Alive": self.cnt_cruise % 16} + self.__class__.cnt_cruise += 1 + return self.packer.make_can_msg_panda("SCC12", self.SCC_BUS, values, fix_checksum=checksum) + + def _torque_driver_msg(self, torque): + values = {"CR_Mdps_StrColTq": torque} + return self.packer.make_can_msg_panda("MDPS12", 0, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"CR_Lkas_StrToqReq": torque, "CF_Lkas_ActToi": steer_req} + return self.packer.make_can_msg_panda("LKAS11", 0, values) + + +class TestHyundaiSafetyAltLimits(TestHyundaiSafety): + MAX_RATE_UP = 2 + MAX_RATE_DOWN = 3 + MAX_TORQUE = 270 + + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.ALT_LIMITS) + self.safety.init_tests() + + +class TestHyundaiSafetyAltLimits2(TestHyundaiSafety): + MAX_RATE_UP = 2 + MAX_RATE_DOWN = 3 + MAX_TORQUE = 170 + + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.ALT_LIMITS_2) + self.safety.init_tests() + + +class TestHyundaiSafetyCameraSCC(TestHyundaiSafety): + BUTTONS_TX_BUS = 2 # tx on 2, rx on 0 + SCC_BUS = 2 # rx on 2 + + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.CAMERA_SCC) + self.safety.init_tests() + + +class TestHyundaiSafetyFCEV(TestHyundaiSafety): + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.FCEV_GAS) + self.safety.init_tests() + + def _user_gas_msg(self, gas): + values = {"ACCELERATOR_PEDAL": gas} + return self.packer.make_can_msg_panda("FCEV_ACCELERATOR", 0, values) + + +class TestHyundaiLegacySafety(TestHyundaiSafety): + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiLegacy, 0) + self.safety.init_tests() + + +class TestHyundaiLegacySafetyEV(TestHyundaiSafety): + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiLegacy, 1) + self.safety.init_tests() + + def _user_gas_msg(self, gas): + values = {"Accel_Pedal_Pos": gas} + return self.packer.make_can_msg_panda("E_EMS11", 0, values, fix_checksum=checksum) + + +class TestHyundaiLegacySafetyHEV(TestHyundaiSafety): + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiLegacy, 2) + self.safety.init_tests() + + def _user_gas_msg(self, gas): + values = {"CR_Vcu_AccPedDep_Pos": gas} + return self.packer.make_can_msg_panda("E_EMS11", 0, values, fix_checksum=checksum) + +class TestHyundaiLongitudinalSafety(HyundaiLongitudinalBase, TestHyundaiSafety): + TX_MSGS = [[0x340, 0], [0x4F1, 0], [0x485, 0], [0x420, 0], [0x421, 0], [0x50A, 0], [0x389, 0], [0x4A2, 0], [0x38D, 0], [0x483, 0], [0x7D0, 0]] + + RELAY_MALFUNCTION_ADDRS = {0: (0x340, 0x421)} # LKAS11, SCC12 + + DISABLED_ECU_UDS_MSG = (0x7D0, 0) + DISABLED_ECU_ACTUATION_MSG = (0x421, 0) + + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.LONG) + self.safety.init_tests() + + def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): + values = { + "aReqRaw": accel, + "aReqValue": accel, + "AEB_CmdAct": int(aeb_req), + "CR_VSM_DecCmd": aeb_decel, + } + return self.packer.make_can_msg_panda("SCC12", self.SCC_BUS, values) + + def _fca11_msg(self, idx=0, vsm_aeb_req=False, fca_aeb_req=False, aeb_decel=0): + values = { + "CR_FCA_Alive": idx % 0xF, + "FCA_Status": 2, + "CR_VSM_DecCmd": aeb_decel, + "CF_VSM_DecCmdAct": int(vsm_aeb_req), + "FCA_CmdAct": int(fca_aeb_req), + } + return self.packer.make_can_msg_panda("FCA11", 0, values) + + def test_no_aeb_fca11(self): + self.assertTrue(self._tx(self._fca11_msg())) + self.assertFalse(self._tx(self._fca11_msg(vsm_aeb_req=True))) + self.assertFalse(self._tx(self._fca11_msg(fca_aeb_req=True))) + self.assertFalse(self._tx(self._fca11_msg(aeb_decel=1.0))) + + def test_no_aeb_scc12(self): + self.assertTrue(self._tx(self._accel_msg(0))) + self.assertFalse(self._tx(self._accel_msg(0, aeb_req=True))) + self.assertFalse(self._tx(self._accel_msg(0, aeb_decel=1.0))) + + +class TestHyundaiLongitudinalSafetyCameraSCC(HyundaiLongitudinalBase, TestHyundaiSafety): + TX_MSGS = [[0x340, 0], [0x4F1, 2], [0x485, 0], [0x420, 0], [0x421, 0], [0x50A, 0], [0x389, 0], [0x4A2, 0]] + + FWD_BLACKLISTED_ADDRS = {2: [0x340, 0x485, 0x420, 0x421, 0x50A, 0x389]} + + def setUp(self): + self.packer = CANPackerPanda("hyundai_kia_generic") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundai, HyundaiSafetyFlags.LONG | HyundaiSafetyFlags.CAMERA_SCC) + self.safety.init_tests() + + def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): + values = { + "aReqRaw": accel, + "aReqValue": accel, + "AEB_CmdAct": int(aeb_req), + "CR_VSM_DecCmd": aeb_decel, + } + return self.packer.make_can_msg_panda("SCC12", self.SCC_BUS, values) + + def test_no_aeb_scc12(self): + self.assertTrue(self._tx(self._accel_msg(0))) + self.assertFalse(self._tx(self._accel_msg(0, aeb_req=True))) + self.assertFalse(self._tx(self._accel_msg(0, aeb_decel=1.0))) + + def test_tester_present_allowed(self): + pass + + def test_disabled_ecu_alive(self): + pass + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py b/opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py new file mode 100755 index 0000000000..7b6fdd8bbf --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_hyundai_canfd.py @@ -0,0 +1,286 @@ +#!/usr/bin/env python3 +from parameterized import parameterized_class +import unittest + +from opendbc.car.hyundai.values import HyundaiSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda +from opendbc.safety.tests.hyundai_common import HyundaiButtonBase, HyundaiLongitudinalBase + + +class TestHyundaiCanfdBase(HyundaiButtonBase, common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): + + TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0]] + STANDSTILL_THRESHOLD = 12 # 0.375 kph + FWD_BLACKLISTED_ADDRS = {2: [0x50, 0x2a4]} + + MAX_RATE_UP = 2 + MAX_RATE_DOWN = 3 + MAX_TORQUE = 270 + + MAX_RT_DELTA = 112 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 250 + DRIVER_TORQUE_FACTOR = 2 + + # Safety around steering req bit + MIN_VALID_STEERING_FRAMES = 89 + MAX_INVALID_STEERING_FRAMES = 2 + MIN_VALID_STEERING_RT_INTERVAL = 810000 # a ~10% buffer, can send steer up to 110Hz + + PT_BUS = 0 + SCC_BUS = 2 + STEER_BUS = 0 + STEER_MSG = "" + GAS_MSG = ("", "") + BUTTONS_TX_BUS = 1 + + @classmethod + def setUpClass(cls): + super().setUpClass() + if cls.__name__ == "TestHyundaiCanfdBase": + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def _torque_driver_msg(self, torque): + values = {"STEERING_COL_TORQUE": torque} + return self.packer.make_can_msg_panda("MDPS", self.PT_BUS, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"TORQUE_REQUEST": torque, "STEER_REQ": steer_req} + return self.packer.make_can_msg_panda(self.STEER_MSG, self.STEER_BUS, values) + + def _speed_msg(self, speed): + values = {f"WHL_Spd{pos}Val": speed * 0.03125 for pos in ["FL", "FR", "RL", "RR"]} + return self.packer.make_can_msg_panda("WHEEL_SPEEDS", self.PT_BUS, values) + + def _user_brake_msg(self, brake): + values = {"DriverBraking": brake} + return self.packer.make_can_msg_panda("TCS", self.PT_BUS, values) + + def _user_gas_msg(self, gas): + values = {self.GAS_MSG[1]: gas} + return self.packer.make_can_msg_panda(self.GAS_MSG[0], self.PT_BUS, values) + + def _pcm_status_msg(self, enable): + values = {"ACCMode": 1 if enable else 0} + return self.packer.make_can_msg_panda("SCC_CONTROL", self.SCC_BUS, values) + + def _button_msg(self, buttons, main_button=0, bus=None): + if bus is None: + bus = self.PT_BUS + values = { + "CRUISE_BUTTONS": buttons, + "ADAPTIVE_CRUISE_MAIN_BTN": main_button, + } + return self.packer.make_can_msg_panda("CRUISE_BUTTONS", bus, values) + + +class TestHyundaiCanfdLFASteeringBase(TestHyundaiCanfdBase): + + TX_MSGS = [[0x12A, 0], [0x1A0, 1], [0x1CF, 0], [0x1E0, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0x12A,)} # LFA + FWD_BLACKLISTED_ADDRS = {2: [0x12A, 0x1E0]} + + STEER_MSG = "LFA" + BUTTONS_TX_BUS = 2 + SAFETY_PARAM: int + + @classmethod + def setUpClass(cls): + super().setUpClass() + if cls.__name__ in ("TestHyundaiCanfdLFASteering", "TestHyundaiCanfdLFASteeringAltButtons"): + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def setUp(self): + self.packer = CANPackerPanda("hyundai_canfd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, self.SAFETY_PARAM) + self.safety.init_tests() + + +@parameterized_class([ + # Radar SCC + {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 0, "SAFETY_PARAM": 0}, + {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS}, + {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS}, + # Camera SCC + {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.CAMERA_SCC}, + {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS | + HyundaiSafetyFlags.CAMERA_SCC}, + {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS | + HyundaiSafetyFlags.CAMERA_SCC}, +]) +class TestHyundaiCanfdLFASteering(TestHyundaiCanfdLFASteeringBase): + pass + + +@parameterized_class([ + # Radar SCC + {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 0, "SAFETY_PARAM": 0}, + {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS}, + {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS}, + # Camera SCC + {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.CAMERA_SCC}, + {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS | + HyundaiSafetyFlags.CAMERA_SCC}, + {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS | + HyundaiSafetyFlags.CAMERA_SCC}, +]) +class TestHyundaiCanfdLFASteeringAltButtons(TestHyundaiCanfdLFASteeringBase): + + SAFETY_PARAM: int + + def setUp(self): + self.packer = CANPackerPanda("hyundai_canfd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_ALT_BUTTONS | self.SAFETY_PARAM) + self.safety.init_tests() + + def _button_msg(self, buttons, main_button=0, bus=1): + values = { + "CRUISE_BUTTONS": buttons, + "ADAPTIVE_CRUISE_MAIN_BTN": main_button, + } + return self.packer.make_can_msg_panda("CRUISE_BUTTONS_ALT", self.PT_BUS, values) + + def _acc_cancel_msg(self, cancel, accel=0): + values = {"ACCMode": 4 if cancel else 0, "aReqRaw": accel, "aReqValue": accel} + return self.packer.make_can_msg_panda("SCC_CONTROL", self.PT_BUS, values) + + def test_button_sends(self): + """ + No button send allowed with alt buttons. + """ + for enabled in (True, False): + for btn in range(8): + self.safety.set_controls_allowed(enabled) + self.assertFalse(self._tx(self._button_msg(btn))) + + def test_acc_cancel(self): + # FIXME: the CANFD_ALT_BUTTONS cars are the only ones that use SCC_CONTROL to cancel, why can't we use buttons? + for enabled in (True, False): + self.safety.set_controls_allowed(enabled) + self.assertTrue(self._tx(self._acc_cancel_msg(True))) + self.assertFalse(self._tx(self._acc_cancel_msg(True, accel=1))) + self.assertFalse(self._tx(self._acc_cancel_msg(False))) + + +class TestHyundaiCanfdLKASteeringEV(TestHyundaiCanfdBase): + + TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0x50,)} # LKAS + FWD_BLACKLISTED_ADDRS = {2: [0x50, 0x2a4]} + + PT_BUS = 1 + SCC_BUS = 1 + STEER_MSG = "LKAS" + GAS_MSG = ("ACCELERATOR", "ACCELERATOR_PEDAL") + + def setUp(self): + self.packer = CANPackerPanda("hyundai_canfd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | HyundaiSafetyFlags.EV_GAS) + self.safety.init_tests() + + +# TODO: Handle ICE and HEV configurations once we see cars that use the new messages +class TestHyundaiCanfdLKASteeringAltEV(TestHyundaiCanfdBase): + + TX_MSGS = [[0x110, 0], [0x1CF, 1], [0x362, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0x110,)} # LKAS_ALT + FWD_BLACKLISTED_ADDRS = {2: [0x110, 0x362]} + + PT_BUS = 1 + SCC_BUS = 1 + STEER_MSG = "LKAS_ALT" + GAS_MSG = ("ACCELERATOR", "ACCELERATOR_PEDAL") + + def setUp(self): + self.packer = CANPackerPanda("hyundai_canfd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | HyundaiSafetyFlags.EV_GAS | + HyundaiSafetyFlags.CANFD_LKA_STEERING_ALT) + self.safety.init_tests() + + +class TestHyundaiCanfdLKASteeringLongEV(HyundaiLongitudinalBase, TestHyundaiCanfdLKASteeringEV): + + TX_MSGS = [[0x50, 0], [0x1CF, 1], [0x2A4, 0], [0x51, 0], [0x730, 1], [0x12a, 1], [0x160, 1], + [0x1e0, 1], [0x1a0, 1], [0x1ea, 1], [0x200, 1], [0x345, 1], [0x1da, 1]] + + RELAY_MALFUNCTION_ADDRS = {0: (0x50,), 1: (0x1a0,)} # LKAS, SCC_CONTROL + + DISABLED_ECU_UDS_MSG = (0x730, 1) + DISABLED_ECU_ACTUATION_MSG = (0x1a0, 1) + + STEER_MSG = "LFA" + GAS_MSG = ("ACCELERATOR", "ACCELERATOR_PEDAL") + STEER_BUS = 1 + + def setUp(self): + self.packer = CANPackerPanda("hyundai_canfd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.CANFD_LKA_STEERING | + HyundaiSafetyFlags.LONG | HyundaiSafetyFlags.EV_GAS) + self.safety.init_tests() + + def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): + values = { + "aReqRaw": accel, + "aReqValue": accel, + } + return self.packer.make_can_msg_panda("SCC_CONTROL", 1, values) + + +# Tests longitudinal for ICE, hybrid, EV cars with LFA steering +@parameterized_class([ + # Radar SCC + {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 0, "SAFETY_PARAM": 0}, + {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS}, + {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 0, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS}, + # Camera SCC + {"GAS_MSG": ("ACCELERATOR_BRAKE_ALT", "ACCELERATOR_PEDAL_PRESSED"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.CAMERA_SCC}, + {"GAS_MSG": ("ACCELERATOR", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.EV_GAS | HyundaiSafetyFlags.CAMERA_SCC}, + {"GAS_MSG": ("ACCELERATOR_ALT", "ACCELERATOR_PEDAL"), "SCC_BUS": 2, "SAFETY_PARAM": HyundaiSafetyFlags.HYBRID_GAS | HyundaiSafetyFlags.CAMERA_SCC}, +]) +class TestHyundaiCanfdLFASteeringLong(HyundaiLongitudinalBase, TestHyundaiCanfdLFASteeringBase): + + FWD_BLACKLISTED_ADDRS = {2: [0x12a, 0x1e0, 0x1a0, 0x160]} + + RELAY_MALFUNCTION_ADDRS = {0: (0x12A, 0x1a0)} # LFA, SCC_CONTROL + + DISABLED_ECU_UDS_MSG = (0x7D0, 0) + DISABLED_ECU_ACTUATION_MSG = (0x1a0, 0) + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestHyundaiCanfdLFASteeringLong": + cls.safety = None + raise unittest.SkipTest + + def setUp(self): + self.packer = CANPackerPanda("hyundai_canfd_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.hyundaiCanfd, HyundaiSafetyFlags.LONG | self.SAFETY_PARAM) + self.safety.init_tests() + + def _accel_msg(self, accel, aeb_req=False, aeb_decel=0): + values = { + "aReqRaw": accel, + "aReqValue": accel, + } + return self.packer.make_can_msg_panda("SCC_CONTROL", 0, values) + + def test_tester_present_allowed(self, ecu_disable: bool = True): + super().test_tester_present_allowed(ecu_disable=not self.SAFETY_PARAM & HyundaiSafetyFlags.CAMERA_SCC) + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_mazda.py b/opendbc_repo/opendbc/safety/tests/test_mazda.py new file mode 100755 index 0000000000..e60248d2d1 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_mazda.py @@ -0,0 +1,86 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + + +class TestMazdaSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): + + TX_MSGS = [[0x243, 0], [0x09d, 0], [0x440, 0]] + STANDSTILL_THRESHOLD = .1 + RELAY_MALFUNCTION_ADDRS = {0: (0x243,)} + FWD_BLACKLISTED_ADDRS = {2: [0x243, 0x440]} + + MAX_RATE_UP = 10 + MAX_RATE_DOWN = 25 + MAX_TORQUE = 800 + + MAX_RT_DELTA = 300 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 15 + DRIVER_TORQUE_FACTOR = 1 + + # Mazda actually does not set any bit when requesting torque + NO_STEER_REQ_BIT = True + + def setUp(self): + self.packer = CANPackerPanda("mazda_2017") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.mazda, 0) + self.safety.init_tests() + + def _torque_meas_msg(self, torque): + values = {"STEER_TORQUE_MOTOR": torque} + return self.packer.make_can_msg_panda("STEER_TORQUE", 0, values) + + def _torque_driver_msg(self, torque): + values = {"STEER_TORQUE_SENSOR": torque} + return self.packer.make_can_msg_panda("STEER_TORQUE", 0, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"LKAS_REQUEST": torque} + return self.packer.make_can_msg_panda("CAM_LKAS", 0, values) + + def _speed_msg(self, speed): + values = {"SPEED": speed} + return self.packer.make_can_msg_panda("ENGINE_DATA", 0, values) + + def _user_brake_msg(self, brake): + values = {"BRAKE_ON": brake} + return self.packer.make_can_msg_panda("PEDALS", 0, values) + + def _user_gas_msg(self, gas): + values = {"PEDAL_GAS": gas} + return self.packer.make_can_msg_panda("ENGINE_DATA", 0, values) + + def _pcm_status_msg(self, enable): + values = {"CRZ_ACTIVE": enable} + return self.packer.make_can_msg_panda("CRZ_CTRL", 0, values) + + def _button_msg(self, resume=False, cancel=False): + values = { + "CAN_OFF": cancel, + "CAN_OFF_INV": (cancel + 1) % 2, + "RES": resume, + "RES_INV": (resume + 1) % 2, + } + return self.packer.make_can_msg_panda("CRZ_BTNS", 0, values) + + def test_buttons(self): + # only cancel allows while controls not allowed + self.safety.set_controls_allowed(0) + self.assertTrue(self._tx(self._button_msg(cancel=True))) + self.assertFalse(self._tx(self._button_msg(resume=True))) + + # do not block resume if we are engaged already + self.safety.set_controls_allowed(1) + self.assertTrue(self._tx(self._button_msg(cancel=True))) + self.assertTrue(self._tx(self._button_msg(resume=True))) + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_nissan.py b/opendbc_repo/opendbc/safety/tests/test_nissan.py new file mode 100755 index 0000000000..22f556f4dc --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_nissan.py @@ -0,0 +1,118 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.nissan.values import NissanSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + + +class TestNissanSafety(common.PandaCarSafetyTest, common.AngleSteeringSafetyTest): + + TX_MSGS = [[0x169, 0], [0x2b1, 0], [0x4cc, 0], [0x20b, 2], [0x280, 2]] + GAS_PRESSED_THRESHOLD = 3 + RELAY_MALFUNCTION_ADDRS = {0: (0x169,)} + FWD_BLACKLISTED_ADDRS = {0: [0x280], 2: [0x169, 0x2b1, 0x4cc]} + + EPS_BUS = 0 + CRUISE_BUS = 2 + + # Angle control limits + STEER_ANGLE_MAX = 600 # deg, reasonable limit + DEG_TO_CAN = 100 + + ANGLE_RATE_BP = [0., 5., 15.] + ANGLE_RATE_UP = [5., .8, .15] # windup limit + ANGLE_RATE_DOWN = [5., 3.5, .4] # unwind limit + + def setUp(self): + self.packer = CANPackerPanda("nissan_x_trail_2017_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.nissan, 0) + self.safety.init_tests() + + def _angle_cmd_msg(self, angle: float, enabled: bool): + values = {"DESIRED_ANGLE": angle, "LKA_ACTIVE": 1 if enabled else 0} + return self.packer.make_can_msg_panda("LKAS", 0, values) + + def _angle_meas_msg(self, angle: float): + values = {"STEER_ANGLE": angle} + return self.packer.make_can_msg_panda("STEER_ANGLE_SENSOR", self.EPS_BUS, values) + + def _pcm_status_msg(self, enable): + values = {"CRUISE_ENABLED": enable} + return self.packer.make_can_msg_panda("CRUISE_STATE", self.CRUISE_BUS, values) + + def _speed_msg(self, speed): + values = {"WHEEL_SPEED_%s" % s: speed * 3.6 for s in ["RR", "RL"]} + return self.packer.make_can_msg_panda("WHEEL_SPEEDS_REAR", self.EPS_BUS, values) + + def _user_brake_msg(self, brake): + values = {"USER_BRAKE_PRESSED": brake} + return self.packer.make_can_msg_panda("DOORS_LIGHTS", self.EPS_BUS, values) + + def _user_gas_msg(self, gas): + values = {"GAS_PEDAL": gas} + return self.packer.make_can_msg_panda("GAS_PEDAL", self.EPS_BUS, values) + + def _acc_button_cmd(self, cancel=0, propilot=0, flw_dist=0, _set=0, res=0): + no_button = not any([cancel, propilot, flw_dist, _set, res]) + values = {"CANCEL_BUTTON": cancel, "PROPILOT_BUTTON": propilot, + "FOLLOW_DISTANCE_BUTTON": flw_dist, "SET_BUTTON": _set, + "RES_BUTTON": res, "NO_BUTTON_PRESSED": no_button} + return self.packer.make_can_msg_panda("CRUISE_THROTTLE", 2, values) + + def test_acc_buttons(self): + btns = [ + ("cancel", True), + ("propilot", False), + ("flw_dist", False), + ("_set", False), + ("res", False), + (None, False), + ] + for controls_allowed in (True, False): + for btn, should_tx in btns: + self.safety.set_controls_allowed(controls_allowed) + args = {} if btn is None else {btn: 1} + tx = self._tx(self._acc_button_cmd(**args)) + self.assertEqual(tx, should_tx) + + +class TestNissanSafetyAltEpsBus(TestNissanSafety): + """Altima uses different buses""" + + EPS_BUS = 1 + CRUISE_BUS = 1 + + def setUp(self): + self.packer = CANPackerPanda("nissan_x_trail_2017_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.nissan, NissanSafetyFlags.ALT_EPS_BUS) + self.safety.init_tests() + + +class TestNissanLeafSafety(TestNissanSafety): + + def setUp(self): + self.packer = CANPackerPanda("nissan_leaf_2018_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.nissan, 0) + self.safety.init_tests() + + def _user_brake_msg(self, brake): + values = {"USER_BRAKE_PRESSED": brake} + return self.packer.make_can_msg_panda("CRUISE_THROTTLE", 0, values) + + def _user_gas_msg(self, gas): + values = {"GAS_PEDAL": gas} + return self.packer.make_can_msg_panda("CRUISE_THROTTLE", 0, values) + + # TODO: leaf should use its own safety param + def test_acc_buttons(self): + pass + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_rivian.py b/opendbc_repo/opendbc/safety/tests/test_rivian.py new file mode 100755 index 0000000000..7dc4072415 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_rivian.py @@ -0,0 +1,109 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda +from opendbc.car.rivian.values import RivianSafetyFlags + + +class TestRivianSafetyBase(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest, common.LongitudinalAccelSafetyTest): + + TX_MSGS = [[0x120, 0], [0x321, 2], [0x162, 2]] + RELAY_MALFUNCTION_ADDRS = {0: (0x120,)} + FWD_BLACKLISTED_ADDRS = {0: [0x321, 0x162], 2: [0x120]} + + MAX_TORQUE = 250 + MAX_RATE_UP = 3 + MAX_RATE_DOWN = 5 + + MAX_RT_DELTA = 125 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 100 + DRIVER_TORQUE_FACTOR = 2 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestRivianSafetyBase": + raise unittest.SkipTest + + def _torque_driver_msg(self, torque): + values = {"EPAS_TorsionBarTorque": torque / 100.0} + return self.packer.make_can_msg_panda("EPAS_SystemStatus", 0, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"ACM_lkaStrToqReq": torque, "ACM_lkaActToi": steer_req} + return self.packer.make_can_msg_panda("ACM_lkaHbaCmd", 0, values) + + def _speed_msg(self, speed): + values = {"ESP_Status": speed * 3.6} + return self.packer.make_can_msg_panda("ESP_Vehicle_Speed", 0, values) + + def _user_brake_msg(self, brake): + values = {"iBESP2_BrakePedalApplied": brake} + return self.packer.make_can_msg_panda("iBESP2", 0, values) + + def _user_gas_msg(self, gas): + values = {"VDM_AcceleratorPedalPosition": gas} + return self.packer.make_can_msg_panda("VDM_PropStatus", 0, values) + + def _pcm_status_msg(self, enable): + values = {"ACM_FeatureStatus": enable, "ACM_Unkown1": 1} + return self.packer.make_can_msg_panda("ACM_Status", 2, values) + + def _vehicle_moving_msg(self, speed: float): + values = {"ESP_Vehicle_Speed": speed} + return self.packer.make_can_msg_panda("ESP_Status", 0, values) + + def _accel_msg(self, accel: float): + values = {"ACM_AccelerationRequest": accel} + return self.packer.make_can_msg_panda("ACM_longitudinalRequest", 0, values) + + def test_wheel_touch(self): + # For hiding hold wheel alert on engage + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + values = { + "SCCM_WheelTouch_HandsOn": 1 if controls_allowed else 0, + "SCCM_WheelTouch_CapacitiveValue": 100 if controls_allowed else 0, + "SETME_X52": 100, + } + self.assertTrue(self._tx(self.packer.make_can_msg_panda("SCCM_WheelTouch", 2, values))) + + +class TestRivianStockSafety(TestRivianSafetyBase): + + LONGITUDINAL = False + + def setUp(self): + self.packer = CANPackerPanda("rivian_primary_actuator") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.rivian, 0) + self.safety.init_tests() + + def test_adas_status(self): + # For canceling stock ACC + for controls_allowed in (True, False): + self.safety.set_controls_allowed(controls_allowed) + for interface_status in range(4): + values = {"VDM_AdasInterfaceStatus": interface_status} + self.assertTrue(self._tx(self.packer.make_can_msg_panda("VDM_AdasSts", 2, values))) + + +class TestRivianLongitudinalSafety(TestRivianSafetyBase): + + TX_MSGS = [[0x120, 0], [0x321, 2], [0x160, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0x120, 0x160)} + FWD_BLACKLISTED_ADDRS = {0: [0x321], 2: [0x120, 0x160]} + + def setUp(self): + self.packer = CANPackerPanda("rivian_primary_actuator") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.rivian, RivianSafetyFlags.LONG_CONTROL) + self.safety.init_tests() + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_subaru.py b/opendbc_repo/opendbc/safety/tests/test_subaru.py new file mode 100755 index 0000000000..8727732400 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_subaru.py @@ -0,0 +1,228 @@ +#!/usr/bin/env python3 +import enum +import unittest + +from opendbc.car.subaru.values import SubaruSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda +from functools import partial + +class SubaruMsg(enum.IntEnum): + Brake_Status = 0x13c + CruiseControl = 0x240 + Throttle = 0x40 + Steering_Torque = 0x119 + Wheel_Speeds = 0x13a + ES_LKAS = 0x122 + ES_LKAS_ANGLE = 0x124 + ES_Brake = 0x220 + ES_Distance = 0x221 + ES_Status = 0x222 + ES_DashStatus = 0x321 + ES_LKAS_State = 0x322 + ES_Infotainment = 0x323 + ES_UDS_Request = 0x787 + ES_HighBeamAssist = 0x121 + ES_STATIC_1 = 0x22a + ES_STATIC_2 = 0x325 + + +SUBARU_MAIN_BUS = 0 +SUBARU_ALT_BUS = 1 +SUBARU_CAM_BUS = 2 + + +def lkas_tx_msgs(alt_bus, lkas_msg=SubaruMsg.ES_LKAS): + return [[lkas_msg, SUBARU_MAIN_BUS], + [SubaruMsg.ES_Distance, alt_bus], + [SubaruMsg.ES_DashStatus, SUBARU_MAIN_BUS], + [SubaruMsg.ES_LKAS_State, SUBARU_MAIN_BUS], + [SubaruMsg.ES_Infotainment, SUBARU_MAIN_BUS]] + +def long_tx_msgs(alt_bus): + return [[SubaruMsg.ES_Brake, alt_bus], + [SubaruMsg.ES_Status, alt_bus]] + +def gen2_long_additional_tx_msgs(): + return [[SubaruMsg.ES_UDS_Request, SUBARU_CAM_BUS], + [SubaruMsg.ES_HighBeamAssist, SUBARU_MAIN_BUS], + [SubaruMsg.ES_STATIC_1, SUBARU_MAIN_BUS], + [SubaruMsg.ES_STATIC_2, SUBARU_MAIN_BUS]] + +def fwd_blacklisted_addr(lkas_msg=SubaruMsg.ES_LKAS): + return {SUBARU_CAM_BUS: [lkas_msg, SubaruMsg.ES_DashStatus, SubaruMsg.ES_LKAS_State, SubaruMsg.ES_Infotainment]} + +class TestSubaruSafetyBase(common.PandaCarSafetyTest): + FLAGS = 0 + RELAY_MALFUNCTION_ADDRS = {SUBARU_MAIN_BUS: (SubaruMsg.ES_LKAS,)} + FWD_BLACKLISTED_ADDRS = fwd_blacklisted_addr() + + MAX_RT_DELTA = 940 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 60 + DRIVER_TORQUE_FACTOR = 50 + + ALT_MAIN_BUS = SUBARU_MAIN_BUS + ALT_CAM_BUS = SUBARU_CAM_BUS + + DEG_TO_CAN = 100 + + INACTIVE_GAS = 1818 + + def setUp(self): + self.packer = CANPackerPanda("subaru_global_2017_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.subaru, self.FLAGS) + self.safety.init_tests() + + def _set_prev_torque(self, t): + self.safety.set_desired_torque_last(t) + self.safety.set_rt_torque_last(t) + + def _torque_driver_msg(self, torque): + values = {"Steer_Torque_Sensor": torque} + return self.packer.make_can_msg_panda("Steering_Torque", 0, values) + + def _speed_msg(self, speed): + values = {s: speed for s in ["FR", "FL", "RR", "RL"]} + return self.packer.make_can_msg_panda("Wheel_Speeds", self.ALT_MAIN_BUS, values) + + def _angle_meas_msg(self, angle): + values = {"Steering_Angle": angle} + return self.packer.make_can_msg_panda("Steering_Torque", 0, values) + + def _user_brake_msg(self, brake): + values = {"Brake": brake} + return self.packer.make_can_msg_panda("Brake_Status", self.ALT_MAIN_BUS, values) + + def _user_gas_msg(self, gas): + values = {"Throttle_Pedal": gas} + return self.packer.make_can_msg_panda("Throttle", 0, values) + + def _pcm_status_msg(self, enable): + values = {"Cruise_Activated": enable} + return self.packer.make_can_msg_panda("CruiseControl", self.ALT_MAIN_BUS, values) + + +class TestSubaruStockLongitudinalSafetyBase(TestSubaruSafetyBase): + def _cancel_msg(self, cancel, cruise_throttle=0): + values = {"Cruise_Cancel": cancel, "Cruise_Throttle": cruise_throttle} + return self.packer.make_can_msg_panda("ES_Distance", self.ALT_MAIN_BUS, values) + + def test_cancel_message(self): + # test that we can only send the cancel message (ES_Distance) with inactive throttle (1818) and Cruise_Cancel=1 + for cancel in [True, False]: + self._generic_limit_safety_check(partial(self._cancel_msg, cancel), self.INACTIVE_GAS, self.INACTIVE_GAS, 0, 2**12, 1, self.INACTIVE_GAS, cancel) + + +class TestSubaruLongitudinalSafetyBase(TestSubaruSafetyBase, common.LongitudinalGasBrakeSafetyTest): + MIN_GAS = 808 + MAX_GAS = 3400 + INACTIVE_GAS = 1818 + MAX_POSSIBLE_GAS = 2**13 + + MIN_BRAKE = 0 + MAX_BRAKE = 600 + MAX_POSSIBLE_BRAKE = 2**16 + + MIN_RPM = 0 + MAX_RPM = 3600 + MAX_POSSIBLE_RPM = 2**13 + + FWD_BLACKLISTED_ADDRS = {2: [SubaruMsg.ES_LKAS, SubaruMsg.ES_Brake, SubaruMsg.ES_Distance, + SubaruMsg.ES_Status, SubaruMsg.ES_DashStatus, + SubaruMsg.ES_LKAS_State, SubaruMsg.ES_Infotainment]} + + def test_rpm_safety_check(self): + self._generic_limit_safety_check(self._send_rpm_msg, self.MIN_RPM, self.MAX_RPM, 0, self.MAX_POSSIBLE_RPM, 1) + + def _send_brake_msg(self, brake): + values = {"Brake_Pressure": brake} + return self.packer.make_can_msg_panda("ES_Brake", self.ALT_MAIN_BUS, values) + + def _send_gas_msg(self, gas): + values = {"Cruise_Throttle": gas} + return self.packer.make_can_msg_panda("ES_Distance", self.ALT_MAIN_BUS, values) + + def _send_rpm_msg(self, rpm): + values = {"Cruise_RPM": rpm} + return self.packer.make_can_msg_panda("ES_Status", self.ALT_MAIN_BUS, values) + + +class TestSubaruTorqueSafetyBase(TestSubaruSafetyBase, common.DriverTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): + MAX_RATE_UP = 50 + MAX_RATE_DOWN = 70 + MAX_TORQUE = 2047 + + # Safety around steering req bit + MIN_VALID_STEERING_FRAMES = 7 + MAX_INVALID_STEERING_FRAMES = 1 + MIN_VALID_STEERING_RT_INTERVAL = 144000 + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"LKAS_Output": torque, "LKAS_Request": steer_req} + return self.packer.make_can_msg_panda("ES_LKAS", SUBARU_MAIN_BUS, values) + + +class TestSubaruGen1TorqueStockLongitudinalSafety(TestSubaruStockLongitudinalSafetyBase, TestSubaruTorqueSafetyBase): + FLAGS = 0 + TX_MSGS = lkas_tx_msgs(SUBARU_MAIN_BUS) + + +class TestSubaruGen2TorqueSafetyBase(TestSubaruTorqueSafetyBase): + ALT_MAIN_BUS = SUBARU_ALT_BUS + ALT_CAM_BUS = SUBARU_ALT_BUS + + MAX_RATE_UP = 40 + MAX_RATE_DOWN = 40 + MAX_TORQUE = 1000 + + +class TestSubaruGen2TorqueStockLongitudinalSafety(TestSubaruStockLongitudinalSafetyBase, TestSubaruGen2TorqueSafetyBase): + FLAGS = SubaruSafetyFlags.GEN2 + TX_MSGS = lkas_tx_msgs(SUBARU_ALT_BUS) + + +class TestSubaruGen1LongitudinalSafety(TestSubaruLongitudinalSafetyBase, TestSubaruTorqueSafetyBase): + FLAGS = SubaruSafetyFlags.LONG + TX_MSGS = lkas_tx_msgs(SUBARU_MAIN_BUS) + long_tx_msgs(SUBARU_MAIN_BUS) + + +class TestSubaruGen2LongitudinalSafety(TestSubaruLongitudinalSafetyBase, TestSubaruGen2TorqueSafetyBase): + FLAGS = SubaruSafetyFlags.LONG | SubaruSafetyFlags.GEN2 + TX_MSGS = lkas_tx_msgs(SUBARU_ALT_BUS) + long_tx_msgs(SUBARU_ALT_BUS) + gen2_long_additional_tx_msgs() + + def _rdbi_msg(self, did: int): + return b'\x03\x22' + did.to_bytes(2) + b'\x00\x00\x00\x00' + + def _es_uds_msg(self, msg: bytes): + return libsafety_py.make_CANPacket(SubaruMsg.ES_UDS_Request, 2, msg) + + def test_es_uds_message(self): + tester_present = b'\x02\x3E\x80\x00\x00\x00\x00\x00' + not_tester_present = b"\x03\xAA\xAA\x00\x00\x00\x00\x00" + + button_did = 0x1130 + + # Tester present is allowed for gen2 long to keep eyesight disabled + self.assertTrue(self._tx(self._es_uds_msg(tester_present))) + + # Non-Tester present is not allowed + self.assertFalse(self._tx(self._es_uds_msg(not_tester_present))) + + # Only button_did is allowed to be read via UDS + for did in range(0xFFFF): + should_tx = (did == button_did) + self.assertEqual(self._tx(self._es_uds_msg(self._rdbi_msg(did))), should_tx) + + # any other msg is not allowed + for sid in range(0xFF): + msg = b'\x03' + sid.to_bytes(1) + b'\x00' * 6 + self.assertFalse(self._tx(self._es_uds_msg(msg))) + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py b/opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py new file mode 100755 index 0000000000..b2f482bf57 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_subaru_preglobal.py @@ -0,0 +1,70 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.structs import CarParams +from opendbc.car.subaru.values import SubaruSafetyFlags +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + + +class TestSubaruPreglobalSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): + FLAGS = 0 + DBC = "subaru_outback_2015_generated" + TX_MSGS = [[0x161, 0], [0x164, 0]] + RELAY_MALFUNCTION_ADDRS = {0: (0x164,)} + FWD_BLACKLISTED_ADDRS = {2: [0x161, 0x164]} + + MAX_RATE_UP = 50 + MAX_RATE_DOWN = 70 + MAX_TORQUE = 2047 + + MAX_RT_DELTA = 940 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 75 + DRIVER_TORQUE_FACTOR = 10 + + def setUp(self): + self.packer = CANPackerPanda(self.DBC) + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.subaruPreglobal, self.FLAGS) + self.safety.init_tests() + + def _set_prev_torque(self, t): + self.safety.set_desired_torque_last(t) + self.safety.set_rt_torque_last(t) + + def _torque_driver_msg(self, torque): + values = {"Steer_Torque_Sensor": torque} + return self.packer.make_can_msg_panda("Steering_Torque", 0, values) + + def _speed_msg(self, speed): + # subaru safety doesn't use the scaled value, so undo the scaling + values = {s: speed*0.0592 for s in ["FR", "FL", "RR", "RL"]} + return self.packer.make_can_msg_panda("Wheel_Speeds", 0, values) + + def _user_brake_msg(self, brake): + values = {"Brake_Pedal": brake} + return self.packer.make_can_msg_panda("Brake_Pedal", 0, values) + + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"LKAS_Command": torque, "LKAS_Active": steer_req} + return self.packer.make_can_msg_panda("ES_LKAS", 0, values) + + def _user_gas_msg(self, gas): + values = {"Throttle_Pedal": gas} + return self.packer.make_can_msg_panda("Throttle", 0, values) + + def _pcm_status_msg(self, enable): + values = {"Cruise_Activated": enable} + return self.packer.make_can_msg_panda("CruiseControl", 0, values) + + +class TestSubaruPreglobalReversedDriverTorqueSafety(TestSubaruPreglobalSafety): + FLAGS = SubaruSafetyFlags.PREGLOBAL_REVERSED_DRIVER_TORQUE + DBC = "subaru_outback_2019_generated" + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_tesla.py b/opendbc_repo/opendbc/safety/tests/test_tesla.py new file mode 100755 index 0000000000..654a815bfb --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_tesla.py @@ -0,0 +1,174 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.tesla.values import TeslaSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.can.can_define import CANDefine +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + +MSG_DAS_steeringControl = 0x488 +MSG_APS_eacMonitor = 0x27d +MSG_DAS_Control = 0x2b9 + + +class TestTeslaSafetyBase(common.PandaCarSafetyTest, common.AngleSteeringSafetyTest, common.LongitudinalAccelSafetyTest): + RELAY_MALFUNCTION_ADDRS = {0: (MSG_DAS_steeringControl, MSG_APS_eacMonitor)} + FWD_BLACKLISTED_ADDRS = {2: [MSG_DAS_steeringControl, MSG_APS_eacMonitor]} + TX_MSGS = [[MSG_DAS_steeringControl, 0], [MSG_APS_eacMonitor, 0], [MSG_DAS_Control, 0]] + + STANDSTILL_THRESHOLD = 0.1 + GAS_PRESSED_THRESHOLD = 3 + + # Angle control limits + STEER_ANGLE_MAX = 360 # deg + DEG_TO_CAN = 10 + + ANGLE_RATE_BP = [0., 5., 25.] + ANGLE_RATE_UP = [2.5, 1.5, 0.2] # windup limit + ANGLE_RATE_DOWN = [5., 2.0, 0.3] # unwind limit + + # Long control limits + MAX_ACCEL = 2.0 + MIN_ACCEL = -3.48 + INACTIVE_ACCEL = 0.0 + + packer: CANPackerPanda + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestTeslaSafetyBase": + raise unittest.SkipTest + + def setUp(self): + self.packer = CANPackerPanda("tesla_model3_party") + self.define = CANDefine("tesla_model3_party") + self.acc_states = {d: v for v, d in self.define.dv["DAS_control"]["DAS_accState"].items()} + + def _angle_cmd_msg(self, angle: float, enabled: bool): + values = {"DAS_steeringAngleRequest": angle, "DAS_steeringControlType": 1 if enabled else 0} + return self.packer.make_can_msg_panda("DAS_steeringControl", 0, values) + + def _angle_meas_msg(self, angle: float): + values = {"EPAS3S_internalSAS": angle} + return self.packer.make_can_msg_panda("EPAS3S_sysStatus", 0, values) + + def _user_brake_msg(self, brake): + values = {"IBST_driverBrakeApply": 2 if brake else 1} + return self.packer.make_can_msg_panda("IBST_status", 0, values) + + def _speed_msg(self, speed): + values = {"DI_vehicleSpeed": speed * 3.6} + return self.packer.make_can_msg_panda("DI_speed", 0, values) + + def _vehicle_moving_msg(self, speed: float): + values = {"DI_cruiseState": 3 if speed <= self.STANDSTILL_THRESHOLD else 2} + return self.packer.make_can_msg_panda("DI_state", 0, values) + + def _user_gas_msg(self, gas): + values = {"DI_accelPedalPos": gas} + return self.packer.make_can_msg_panda("DI_systemStatus", 0, values) + + def _pcm_status_msg(self, enable): + values = {"DI_cruiseState": 2 if enable else 0} + return self.packer.make_can_msg_panda("DI_state", 0, values) + + def _long_control_msg(self, set_speed, acc_state=0, jerk_limits=(0, 0), accel_limits=(0, 0), aeb_event=0, bus=0): + values = { + "DAS_setSpeed": set_speed, + "DAS_accState": acc_state, + "DAS_aebEvent": aeb_event, + "DAS_jerkMin": jerk_limits[0], + "DAS_jerkMax": jerk_limits[1], + "DAS_accelMin": accel_limits[0], + "DAS_accelMax": accel_limits[1], + } + return self.packer.make_can_msg_panda("DAS_control", bus, values) + + def _accel_msg(self, accel: float): + # For common.LongitudinalAccelSafetyTest + return self._long_control_msg(10, accel_limits=(accel, max(accel, 0))) + + def test_vehicle_speed_measurements(self): + # OVERRIDDEN: 79.1667 is the max speed in m/s + self._common_measurement_test(self._speed_msg, 0, 285 / 3.6, 1, + self.safety.get_vehicle_speed_min, self.safety.get_vehicle_speed_max) + + +class TestTeslaStockSafety(TestTeslaSafetyBase): + + LONGITUDINAL = False + + def setUp(self): + super().setUp() + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.tesla, 0) + self.safety.init_tests() + + def test_cancel(self): + for acc_state in range(16): + self.safety.set_controls_allowed(True) + should_tx = acc_state == self.acc_states["ACC_CANCEL_GENERIC_SILENT"] + self.assertFalse(self._tx(self._long_control_msg(0, acc_state=acc_state, accel_limits=(self.MIN_ACCEL, self.MAX_ACCEL)))) + self.assertEqual(should_tx, self._tx(self._long_control_msg(0, acc_state=acc_state))) + + def test_no_aeb(self): + for aeb_event in range(4): + self.assertEqual(self._tx(self._long_control_msg(10, acc_state=self.acc_states["ACC_CANCEL_GENERIC_SILENT"], aeb_event=aeb_event)), aeb_event == 0) + + +class TestTeslaLongitudinalSafety(TestTeslaSafetyBase): + RELAY_MALFUNCTION_ADDRS = {0: (MSG_DAS_steeringControl, MSG_APS_eacMonitor, MSG_DAS_Control)} + FWD_BLACKLISTED_ADDRS = {2: [MSG_DAS_steeringControl, MSG_APS_eacMonitor, MSG_DAS_Control]} + + def setUp(self): + super().setUp() + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.tesla, TeslaSafetyFlags.LONG_CONTROL) + self.safety.init_tests() + + def test_no_aeb(self): + for aeb_event in range(4): + self.assertEqual(self._tx(self._long_control_msg(10, aeb_event=aeb_event)), aeb_event == 0) + + def test_stock_aeb_passthrough(self): + no_aeb_msg = self._long_control_msg(10, aeb_event=0) + no_aeb_msg_cam = self._long_control_msg(10, aeb_event=0, bus=2) + aeb_msg_cam = self._long_control_msg(10, aeb_event=1, bus=2) + + # stock system sends no AEB -> no forwarding, and OP is allowed to TX + self.assertEqual(1, self._rx(no_aeb_msg_cam)) + self.assertEqual(-1, self.safety.safety_fwd_hook(2, no_aeb_msg_cam.addr)) + self.assertTrue(self._tx(no_aeb_msg)) + + # stock system sends AEB -> forwarding, and OP is not allowed to TX + self.assertEqual(1, self._rx(aeb_msg_cam)) + self.assertEqual(0, self.safety.safety_fwd_hook(2, aeb_msg_cam.addr)) + self.assertFalse(self._tx(no_aeb_msg)) + + def test_prevent_reverse(self): + # Note: Tesla can reverse while at a standstill if both accel_min and accel_max are negative. + self.safety.set_controls_allowed(True) + + # accel_min and accel_max are positive + self.assertTrue(self._tx(self._long_control_msg(set_speed=10, accel_limits=(1.1, 0.8)))) + self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(1.1, 0.8)))) + + # accel_min and accel_max are both zero + self.assertTrue(self._tx(self._long_control_msg(set_speed=10, accel_limits=(0, 0)))) + self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(0, 0)))) + + # accel_min and accel_max have opposing signs + self.assertTrue(self._tx(self._long_control_msg(set_speed=10, accel_limits=(-0.8, 1.3)))) + self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(0.8, -1.3)))) + self.assertTrue(self._tx(self._long_control_msg(set_speed=0, accel_limits=(0, -1.3)))) + + # accel_min and accel_max are negative + self.assertFalse(self._tx(self._long_control_msg(set_speed=10, accel_limits=(-1.1, -0.6)))) + self.assertFalse(self._tx(self._long_control_msg(set_speed=0, accel_limits=(-0.6, -1.1)))) + self.assertFalse(self._tx(self._long_control_msg(set_speed=0, accel_limits=(-0.1, -0.1)))) + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_toyota.py b/opendbc_repo/opendbc/safety/tests/test_toyota.py new file mode 100755 index 0000000000..035c4dc09a --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_toyota.py @@ -0,0 +1,356 @@ +#!/usr/bin/env python3 +import numpy as np +import random +import unittest +import itertools + +from opendbc.car.toyota.values import ToyotaSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + +TOYOTA_COMMON_TX_MSGS = [[0x2E4, 0], [0x191, 0], [0x412, 0], [0x343, 0], [0x1D2, 0]] # LKAS + LTA + ACC & PCM cancel cmds +TOYOTA_SECOC_TX_MSGS = [[0x131, 0]] + TOYOTA_COMMON_TX_MSGS +TOYOTA_COMMON_LONG_TX_MSGS = [[0x283, 0], [0x2E6, 0], [0x2E7, 0], [0x33E, 0], [0x344, 0], [0x365, 0], [0x366, 0], [0x4CB, 0], # DSU bus 0 + [0x128, 1], [0x141, 1], [0x160, 1], [0x161, 1], [0x470, 1], # DSU bus 1 + [0x411, 0], # PCS_HUD + [0x750, 0]] # radar diagnostic address + + +class TestToyotaSafetyBase(common.PandaCarSafetyTest, common.LongitudinalAccelSafetyTest): + + TX_MSGS = TOYOTA_COMMON_TX_MSGS + TOYOTA_COMMON_LONG_TX_MSGS + RELAY_MALFUNCTION_ADDRS = {0: (0x2E4, 0x343)} + FWD_BLACKLISTED_ADDRS = {2: [0x2E4, 0x412, 0x191, 0x343]} + EPS_SCALE = 73 + + packer: CANPackerPanda + safety: libsafety_py.Panda + + @classmethod + def setUpClass(cls): + if cls.__name__.endswith("Base"): + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def _torque_meas_msg(self, torque: int, driver_torque: int | None = None): + values = {"STEER_TORQUE_EPS": (torque / self.EPS_SCALE) * 100.} + if driver_torque is not None: + values["STEER_TORQUE_DRIVER"] = driver_torque + return self.packer.make_can_msg_panda("STEER_TORQUE_SENSOR", 0, values) + + # Both torque and angle safety modes test with each other's steering commands + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"STEER_TORQUE_CMD": torque, "STEER_REQUEST": steer_req} + return self.packer.make_can_msg_panda("STEERING_LKA", 0, values) + + def _angle_meas_msg(self, angle: float, steer_angle_initializing: bool = False): + # This creates a steering torque angle message. Not set on all platforms, + # relative to init angle on some older TSS2 platforms. Only to be used with LTA + values = {"STEER_ANGLE": angle, "STEER_ANGLE_INITIALIZING": int(steer_angle_initializing)} + return self.packer.make_can_msg_panda("STEER_TORQUE_SENSOR", 0, values) + + def _angle_cmd_msg(self, angle: float, enabled: bool): + return self._lta_msg(int(enabled), int(enabled), angle, torque_wind_down=100 if enabled else 0) + + def _lta_msg(self, req, req2, angle_cmd, torque_wind_down=100): + values = {"STEER_REQUEST": req, "STEER_REQUEST_2": req2, "STEER_ANGLE_CMD": angle_cmd, "TORQUE_WIND_DOWN": torque_wind_down} + return self.packer.make_can_msg_panda("STEERING_LTA", 0, values) + + def _accel_msg(self, accel, cancel_req=0): + values = {"ACCEL_CMD": accel, "CANCEL_REQ": cancel_req} + return self.packer.make_can_msg_panda("ACC_CONTROL", 0, values) + + def _speed_msg(self, speed): + values = {("WHEEL_SPEED_%s" % n): speed * 3.6 for n in ["FR", "FL", "RR", "RL"]} + return self.packer.make_can_msg_panda("WHEEL_SPEEDS", 0, values) + + def _user_brake_msg(self, brake): + values = {"BRAKE_PRESSED": brake} + return self.packer.make_can_msg_panda("BRAKE_MODULE", 0, values) + + def _user_gas_msg(self, gas): + cruise_active = self.safety.get_controls_allowed() + values = {"GAS_RELEASED": not gas, "CRUISE_ACTIVE": cruise_active} + return self.packer.make_can_msg_panda("PCM_CRUISE", 0, values) + + def _pcm_status_msg(self, enable): + values = {"CRUISE_ACTIVE": enable} + return self.packer.make_can_msg_panda("PCM_CRUISE", 0, values) + + def test_diagnostics(self, stock_longitudinal: bool = False): + for should_tx, msg in ((False, b"\x6D\x02\x3E\x00\x00\x00\x00\x00"), # fwdCamera tester present + (False, b"\x0F\x03\xAA\xAA\x00\x00\x00\x00"), # non-tester present + (True, b"\x0F\x02\x3E\x00\x00\x00\x00\x00")): + tester_present = libsafety_py.make_CANPacket(0x750, 0, msg) + self.assertEqual(should_tx and not stock_longitudinal, self._tx(tester_present)) + + def test_block_aeb(self, stock_longitudinal: bool = False): + for controls_allowed in (True, False): + for bad in (True, False): + for _ in range(10): + self.safety.set_controls_allowed(controls_allowed) + dat = [random.randint(1, 255) for _ in range(7)] + if not bad: + dat = [0]*6 + dat[-1:] + msg = libsafety_py.make_CANPacket(0x283, 0, bytes(dat)) + self.assertEqual(not bad and not stock_longitudinal, self._tx(msg)) + + # Only allow LTA msgs with no actuation + def test_lta_steer_cmd(self): + for engaged, req, req2, torque_wind_down, angle in itertools.product([True, False], + [0, 1], [0, 1], + [0, 50, 100], + np.linspace(-20, 20, 5)): + self.safety.set_controls_allowed(engaged) + + should_tx = not req and not req2 and angle == 0 and torque_wind_down == 0 + self.assertEqual(should_tx, self._tx(self._lta_msg(req, req2, angle, torque_wind_down)), + f"{req=} {req2=} {angle=} {torque_wind_down=}") + + def test_rx_hook(self): + # checksum checks + for msg in ["trq", "pcm"]: + self.safety.set_controls_allowed(1) + if msg == "trq": + to_push = self._torque_meas_msg(0) + if msg == "pcm": + to_push = self._pcm_status_msg(True) + self.assertTrue(self._rx(to_push)) + to_push[0].data[4] = 0 + to_push[0].data[5] = 0 + to_push[0].data[6] = 0 + to_push[0].data[7] = 0 + self.assertFalse(self._rx(to_push)) + self.assertFalse(self.safety.get_controls_allowed()) + + +class TestToyotaSafetyTorque(TestToyotaSafetyBase, common.MotorTorqueSteeringSafetyTest, common.SteerRequestCutSafetyTest): + + MAX_RATE_UP = 15 + MAX_RATE_DOWN = 25 + MAX_TORQUE = 1500 + MAX_RT_DELTA = 450 + RT_INTERVAL = 250000 + MAX_TORQUE_ERROR = 350 + TORQUE_MEAS_TOLERANCE = 1 # toyota safety adds one to be conservative for rounding + + # Safety around steering req bit + MIN_VALID_STEERING_FRAMES = 18 + MAX_INVALID_STEERING_FRAMES = 1 + MIN_VALID_STEERING_RT_INTERVAL = 170000 # a ~10% buffer, can send steer up to 110Hz + + def setUp(self): + self.packer = CANPackerPanda("toyota_nodsu_pt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE) + self.safety.init_tests() + + +class TestToyotaSafetyAngle(TestToyotaSafetyBase, common.AngleSteeringSafetyTest): + + # Angle control limits + STEER_ANGLE_MAX = 94.9461 # deg + DEG_TO_CAN = 17.452007 # 1 / 0.0573 deg to can + + ANGLE_RATE_BP = [5., 25., 25.] + ANGLE_RATE_UP = [0.3, 0.15, 0.15] # windup limit + ANGLE_RATE_DOWN = [0.36, 0.26, 0.26] # unwind limit + + MAX_LTA_ANGLE = 94.9461 # PCS faults if commanding above this, deg + MAX_MEAS_TORQUE = 1500 # max allowed measured EPS torque before wind down + MAX_LTA_DRIVER_TORQUE = 150 # max allowed driver torque before wind down + + def setUp(self): + self.packer = CANPackerPanda("toyota_nodsu_pt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE | ToyotaSafetyFlags.LTA) + self.safety.init_tests() + + # Only allow LKA msgs with no actuation + def test_lka_steer_cmd(self): + for engaged, steer_req, torque in itertools.product([True, False], + [0, 1], + np.linspace(-1500, 1500, 7)): + self.safety.set_controls_allowed(engaged) + torque = int(torque) + self.safety.set_rt_torque_last(torque) + self.safety.set_torque_meas(torque, torque) + self.safety.set_desired_torque_last(torque) + + should_tx = not steer_req and torque == 0 + self.assertEqual(should_tx, self._tx(self._torque_cmd_msg(torque, steer_req))) + + def test_lta_steer_cmd(self): + """ + Tests the LTA steering command message + controls_allowed: + * STEER_REQUEST and STEER_REQUEST_2 do not mismatch + * TORQUE_WIND_DOWN is only set to 0 or 100 when STEER_REQUEST and STEER_REQUEST_2 are both 1 + * Full torque messages are blocked if either EPS torque or driver torque is above the threshold + + not controls_allowed: + * STEER_REQUEST, STEER_REQUEST_2, and TORQUE_WIND_DOWN are all 0 + """ + for controls_allowed in (True, False): + for angle in np.arange(-90, 90, 1): + self.safety.set_controls_allowed(controls_allowed) + self._reset_angle_measurement(angle) + self._set_prev_desired_angle(angle) + + self.assertTrue(self._tx(self._lta_msg(0, 0, angle, 0))) + if controls_allowed: + # Test the two steer request bits and TORQUE_WIND_DOWN torque wind down signal + for req, req2, torque_wind_down in itertools.product([0, 1], [0, 1], [0, 50, 100]): + mismatch = not (req or req2) and torque_wind_down != 0 + should_tx = req == req2 and (torque_wind_down in (0, 100)) and not mismatch + self.assertEqual(should_tx, self._tx(self._lta_msg(req, req2, angle, torque_wind_down))) + + # Test max EPS torque and driver override thresholds + cases = itertools.product( + (0, self.MAX_MEAS_TORQUE - 1, self.MAX_MEAS_TORQUE, self.MAX_MEAS_TORQUE + 1, self.MAX_MEAS_TORQUE * 2), + (0, self.MAX_LTA_DRIVER_TORQUE - 1, self.MAX_LTA_DRIVER_TORQUE, self.MAX_LTA_DRIVER_TORQUE + 1, self.MAX_LTA_DRIVER_TORQUE * 2) + ) + + for eps_torque, driver_torque in cases: + for sign in (-1, 1): + for _ in range(6): + self._rx(self._torque_meas_msg(sign * eps_torque, sign * driver_torque)) + + # Toyota adds 1 to EPS torque since it is rounded after EPS factor + should_tx = (eps_torque - 1) <= self.MAX_MEAS_TORQUE and driver_torque <= self.MAX_LTA_DRIVER_TORQUE + self.assertEqual(should_tx, self._tx(self._lta_msg(1, 1, angle, 100))) + self.assertTrue(self._tx(self._lta_msg(1, 1, angle, 0))) # should tx if we wind down torque + + else: + # Controls not allowed + for req, req2, torque_wind_down in itertools.product([0, 1], [0, 1], [0, 50, 100]): + should_tx = not (req or req2) and torque_wind_down == 0 + self.assertEqual(should_tx, self._tx(self._lta_msg(req, req2, angle, torque_wind_down))) + + def test_angle_measurements(self): + """ + * Tests angle meas quality flag dictates whether angle measurement is parsed, and if rx is valid + * Tests rx hook correctly clips the angle measurement, since it is to be compared to LTA cmd when inactive + """ + for steer_angle_initializing in (True, False): + for angle in np.arange(0, self.STEER_ANGLE_MAX * 2, 1): + # If init flag is set, do not rx or parse any angle measurements + for a in (angle, -angle, 0, 0, 0, 0): + self.assertEqual(not steer_angle_initializing, + self._rx(self._angle_meas_msg(a, steer_angle_initializing))) + + final_angle = 0 if steer_angle_initializing else round(angle * self.DEG_TO_CAN) + self.assertEqual(self.safety.get_angle_meas_min(), -final_angle) + self.assertEqual(self.safety.get_angle_meas_max(), final_angle) + + self._rx(self._angle_meas_msg(0)) + self.assertEqual(self.safety.get_angle_meas_min(), -final_angle) + self.assertEqual(self.safety.get_angle_meas_max(), 0) + + self._rx(self._angle_meas_msg(0)) + self.assertEqual(self.safety.get_angle_meas_min(), 0) + self.assertEqual(self.safety.get_angle_meas_max(), 0) + + +class TestToyotaAltBrakeSafety(TestToyotaSafetyTorque): + + def setUp(self): + self.packer = CANPackerPanda("toyota_new_mc_pt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE | ToyotaSafetyFlags.ALT_BRAKE) + self.safety.init_tests() + + def _user_brake_msg(self, brake): + values = {"BRAKE_PRESSED": brake} + return self.packer.make_can_msg_panda("BRAKE_MODULE", 0, values) + + # No LTA message in the DBC + def test_lta_steer_cmd(self): + pass + + +class TestToyotaStockLongitudinalBase(TestToyotaSafetyBase): + + TX_MSGS = TOYOTA_COMMON_TX_MSGS + # Base addresses minus ACC_CONTROL (0x343) + RELAY_MALFUNCTION_ADDRS = {0: (0x2E4,)} + FWD_BLACKLISTED_ADDRS = {2: [0x2E4, 0x412, 0x191]} + + LONGITUDINAL = False + + def test_diagnostics(self, stock_longitudinal: bool = True): + super().test_diagnostics(stock_longitudinal=stock_longitudinal) + + def test_block_aeb(self, stock_longitudinal: bool = True): + super().test_block_aeb(stock_longitudinal=stock_longitudinal) + + def test_acc_cancel(self): + """ + Regardless of controls allowed, never allow ACC_CONTROL if cancel bit isn't set + """ + for controls_allowed in [True, False]: + self.safety.set_controls_allowed(controls_allowed) + for accel in np.arange(self.MIN_ACCEL - 1, self.MAX_ACCEL + 1, 0.1): + self.assertFalse(self._tx(self._accel_msg(accel))) + should_tx = np.isclose(accel, 0, atol=0.0001) + self.assertEqual(should_tx, self._tx(self._accel_msg(accel, cancel_req=1))) + + +class TestToyotaStockLongitudinalTorque(TestToyotaStockLongitudinalBase, TestToyotaSafetyTorque): + + def setUp(self): + self.packer = CANPackerPanda("toyota_nodsu_pt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, self.EPS_SCALE | ToyotaSafetyFlags.STOCK_LONGITUDINAL) + self.safety.init_tests() + + +class TestToyotaStockLongitudinalAngle(TestToyotaStockLongitudinalBase, TestToyotaSafetyAngle): + + def setUp(self): + self.packer = CANPackerPanda("toyota_nodsu_pt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, + self.EPS_SCALE | ToyotaSafetyFlags.STOCK_LONGITUDINAL | ToyotaSafetyFlags.LTA) + self.safety.init_tests() + + +class TestToyotaSecOcSafety(TestToyotaStockLongitudinalBase): + + TX_MSGS = TOYOTA_SECOC_TX_MSGS + RELAY_MALFUNCTION_ADDRS = {0: (0x2E4,)} + FWD_BLACKLISTED_ADDRS = {2: [0x2E4, 0x412, 0x191, 0x131]} + + def setUp(self): + self.packer = CANPackerPanda("toyota_secoc_pt_generated") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.toyota, + self.EPS_SCALE | ToyotaSafetyFlags.STOCK_LONGITUDINAL | ToyotaSafetyFlags.SECOC) + self.safety.init_tests() + + # This platform also has alternate brake and PCM messages, but same naming in the DBC, so same packers work + + def _user_gas_msg(self, gas): + values = {"GAS_PEDAL_USER": gas} + return self.packer.make_can_msg_panda("GAS_PEDAL", 0, values) + + # This platform sends both STEERING_LTA (same as other Toyota) and STEERING_LTA_2 (SecOC signed) + # STEERING_LTA is checked for no-actuation by the base class, STEERING_LTA_2 is checked for no-actuation below + + def _lta_2_msg(self, req, req2, angle_cmd, torque_wind_down=100): + values = {"STEER_REQUEST": req, "STEER_REQUEST_2": req2, "STEER_ANGLE_CMD": angle_cmd} + return self.packer.make_can_msg_panda("STEERING_LTA_2", 0, values) + + def test_lta_2_steer_cmd(self): + for engaged, req, req2, angle in itertools.product([True, False], [0, 1], [0, 1], np.linspace(-20, 20, 5)): + self.safety.set_controls_allowed(engaged) + + should_tx = not req and not req2 and angle == 0 + self.assertEqual(should_tx, self._tx(self._lta_2_msg(req, req2, angle)), f"{req=} {req2=} {angle=}") + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py b/opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py new file mode 100755 index 0000000000..1d66fbd745 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_volkswagen_mqb.py @@ -0,0 +1,223 @@ +#!/usr/bin/env python3 +import unittest +import numpy as np +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda +from opendbc.car.volkswagen.values import VolkswagenSafetyFlags + +MAX_ACCEL = 2.0 +MIN_ACCEL = -3.5 + +MSG_ESP_19 = 0xB2 # RX from ABS, for wheel speeds +MSG_LH_EPS_03 = 0x9F # RX from EPS, for driver steering torque +MSG_ESP_05 = 0x106 # RX from ABS, for brake light state +MSG_TSK_06 = 0x120 # RX from ECU, for ACC status from drivetrain coordinator +MSG_MOTOR_20 = 0x121 # RX from ECU, for driver throttle input +MSG_ACC_06 = 0x122 # TX by OP, ACC control instructions to the drivetrain coordinator +MSG_HCA_01 = 0x126 # TX by OP, Heading Control Assist steering torque +MSG_GRA_ACC_01 = 0x12B # TX by OP, ACC control buttons for cancel/resume +MSG_ACC_07 = 0x12E # TX by OP, ACC control instructions to the drivetrain coordinator +MSG_ACC_02 = 0x30C # TX by OP, ACC HUD data to the instrument cluster +MSG_LDW_02 = 0x397 # TX by OP, Lane line recognition and text alerts + + +class TestVolkswagenMqbSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): + RELAY_MALFUNCTION_ADDRS = {0: (MSG_HCA_01,)} + + MAX_RATE_UP = 4 + MAX_RATE_DOWN = 10 + MAX_TORQUE = 300 + MAX_RT_DELTA = 75 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 80 + DRIVER_TORQUE_FACTOR = 3 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestVolkswagenMqbSafety": + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + # Wheel speeds _esp_19_msg + def _speed_msg(self, speed): + values = {"ESP_%s_Radgeschw_02" % s: speed for s in ["HL", "HR", "VL", "VR"]} + return self.packer.make_can_msg_panda("ESP_19", 0, values) + + # Driver brake pressure over threshold + def _esp_05_msg(self, brake): + values = {"ESP_Fahrer_bremst": brake} + return self.packer.make_can_msg_panda("ESP_05", 0, values) + + # Brake pedal switch + def _motor_14_msg(self, brake): + values = {"MO_Fahrer_bremst": brake} + return self.packer.make_can_msg_panda("Motor_14", 0, values) + + def _user_brake_msg(self, brake): + return self._motor_14_msg(brake) + + # Driver throttle input + def _user_gas_msg(self, gas): + values = {"MO_Fahrpedalrohwert_01": gas} + return self.packer.make_can_msg_panda("Motor_20", 0, values) + + # ACC engagement status + def _tsk_status_msg(self, enable, main_switch=True): + if main_switch: + tsk_status = 3 if enable else 2 + else: + tsk_status = 0 + values = {"TSK_Status": tsk_status} + return self.packer.make_can_msg_panda("TSK_06", 0, values) + + def _pcm_status_msg(self, enable): + return self._tsk_status_msg(enable) + + # Driver steering input torque + def _torque_driver_msg(self, torque): + values = {"EPS_Lenkmoment": abs(torque), "EPS_VZ_Lenkmoment": torque < 0} + return self.packer.make_can_msg_panda("LH_EPS_03", 0, values) + + # openpilot steering output torque + def _torque_cmd_msg(self, torque, steer_req=1): + values = {"HCA_01_LM_Offset": abs(torque), "HCA_01_LM_OffSign": torque < 0, "HCA_01_Sendestatus": steer_req} + return self.packer.make_can_msg_panda("HCA_01", 0, values) + + # Cruise control buttons + def _gra_acc_01_msg(self, cancel=0, resume=0, _set=0, bus=2): + values = {"GRA_Abbrechen": cancel, "GRA_Tip_Setzen": _set, "GRA_Tip_Wiederaufnahme": resume} + return self.packer.make_can_msg_panda("GRA_ACC_01", bus, values) + + # Acceleration request to drivetrain coordinator + def _acc_06_msg(self, accel): + values = {"ACC_Sollbeschleunigung_02": accel} + return self.packer.make_can_msg_panda("ACC_06", 0, values) + + # Acceleration request to drivetrain coordinator + def _acc_07_msg(self, accel, secondary_accel=3.02): + values = {"ACC_Sollbeschleunigung_02": accel, "ACC_Folgebeschl": secondary_accel} + return self.packer.make_can_msg_panda("ACC_07", 0, values) + + # Verify brake_pressed is true if either the switch or pressure threshold signals are true + def test_redundant_brake_signals(self): + test_combinations = [(True, True, True), (True, True, False), (True, False, True), (False, False, False)] + for brake_pressed, motor_14_signal, esp_05_signal in test_combinations: + self._rx(self._motor_14_msg(False)) + self._rx(self._esp_05_msg(False)) + self.assertFalse(self.safety.get_brake_pressed_prev()) + self._rx(self._motor_14_msg(motor_14_signal)) + self._rx(self._esp_05_msg(esp_05_signal)) + self.assertEqual(brake_pressed, self.safety.get_brake_pressed_prev(), + f"expected {brake_pressed=} with {motor_14_signal=} and {esp_05_signal=}") + + def test_torque_measurements(self): + # TODO: make this test work with all cars + self._rx(self._torque_driver_msg(50)) + self._rx(self._torque_driver_msg(-50)) + self._rx(self._torque_driver_msg(0)) + self._rx(self._torque_driver_msg(0)) + self._rx(self._torque_driver_msg(0)) + self._rx(self._torque_driver_msg(0)) + + self.assertEqual(-50, self.safety.get_torque_driver_min()) + self.assertEqual(50, self.safety.get_torque_driver_max()) + + self._rx(self._torque_driver_msg(0)) + self.assertEqual(0, self.safety.get_torque_driver_max()) + self.assertEqual(-50, self.safety.get_torque_driver_min()) + + self._rx(self._torque_driver_msg(0)) + self.assertEqual(0, self.safety.get_torque_driver_max()) + self.assertEqual(0, self.safety.get_torque_driver_min()) + + +class TestVolkswagenMqbStockSafety(TestVolkswagenMqbSafety): + TX_MSGS = [[MSG_HCA_01, 0], [MSG_LDW_02, 0], [MSG_LH_EPS_03, 2], [MSG_GRA_ACC_01, 0], [MSG_GRA_ACC_01, 2]] + FWD_BLACKLISTED_ADDRS = {0: [MSG_LH_EPS_03], 2: [MSG_HCA_01, MSG_LDW_02]} + + def setUp(self): + self.packer = CANPackerPanda("vw_mqb_2010") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagen, 0) + self.safety.init_tests() + + def test_spam_cancel_safety_check(self): + self.safety.set_controls_allowed(0) + self.assertTrue(self._tx(self._gra_acc_01_msg(cancel=1))) + self.assertFalse(self._tx(self._gra_acc_01_msg(resume=1))) + self.assertFalse(self._tx(self._gra_acc_01_msg(_set=1))) + # do not block resume if we are engaged already + self.safety.set_controls_allowed(1) + self.assertTrue(self._tx(self._gra_acc_01_msg(resume=1))) + + +class TestVolkswagenMqbLongSafety(TestVolkswagenMqbSafety): + TX_MSGS = [[MSG_HCA_01, 0], [MSG_LDW_02, 0], [MSG_LH_EPS_03, 2], [MSG_ACC_02, 0], [MSG_ACC_06, 0], [MSG_ACC_07, 0]] + FWD_BLACKLISTED_ADDRS = {0: [MSG_LH_EPS_03], 2: [MSG_HCA_01, MSG_LDW_02, MSG_ACC_02, MSG_ACC_06, MSG_ACC_07]} + INACTIVE_ACCEL = 3.01 + + def setUp(self): + self.packer = CANPackerPanda("vw_mqb_2010") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagen, VolkswagenSafetyFlags.LONG_CONTROL) + self.safety.init_tests() + + # stock cruise controls are entirely bypassed under openpilot longitudinal control + def test_disable_control_allowed_from_cruise(self): + pass + + def test_enable_control_allowed_from_cruise(self): + pass + + def test_cruise_engaged_prev(self): + pass + + def test_set_and_resume_buttons(self): + for button in ["set", "resume"]: + # ACC main switch must be on, engage on falling edge + self.safety.set_controls_allowed(0) + self._rx(self._tsk_status_msg(False, main_switch=False)) + self._rx(self._gra_acc_01_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) + self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} with main switch off") + self._rx(self._tsk_status_msg(False, main_switch=True)) + self._rx(self._gra_acc_01_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) + self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} rising edge") + self._rx(self._gra_acc_01_msg(bus=0)) + self.assertTrue(self.safety.get_controls_allowed(), f"controls not allowed on {button} falling edge") + + def test_cancel_button(self): + # Disable on rising edge of cancel button + self._rx(self._tsk_status_msg(False, main_switch=True)) + self.safety.set_controls_allowed(1) + self._rx(self._gra_acc_01_msg(cancel=True, bus=0)) + self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after cancel") + + def test_main_switch(self): + # Disable as soon as main switch turns off + self._rx(self._tsk_status_msg(False, main_switch=True)) + self.safety.set_controls_allowed(1) + self._rx(self._tsk_status_msg(False, main_switch=False)) + self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after ACC main switch off") + + def test_accel_safety_check(self): + for controls_allowed in [True, False]: + # enforce we don't skip over 0 or inactive accel + for accel in np.concatenate((np.arange(MIN_ACCEL - 2, MAX_ACCEL + 2, 0.03), [0, self.INACTIVE_ACCEL])): + accel = round(accel, 2) # floats might not hit exact boundary conditions without rounding + is_inactive_accel = accel == self.INACTIVE_ACCEL + send = (controls_allowed and MIN_ACCEL <= accel <= MAX_ACCEL) or is_inactive_accel + self.safety.set_controls_allowed(controls_allowed) + # primary accel request used by ECU + self.assertEqual(send, self._tx(self._acc_06_msg(accel)), (controls_allowed, accel)) + # additional accel request used by ABS/ESP + self.assertEqual(send, self._tx(self._acc_07_msg(accel)), (controls_allowed, accel)) + # ensure the optional secondary accel field remains inactive for now + self.assertEqual(is_inactive_accel, self._tx(self._acc_07_msg(accel, secondary_accel=accel)), (controls_allowed, accel)) + + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py b/opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py new file mode 100755 index 0000000000..72d0876426 --- /dev/null +++ b/opendbc_repo/opendbc/safety/tests/test_volkswagen_pq.py @@ -0,0 +1,198 @@ +#!/usr/bin/env python3 +import unittest + +from opendbc.car.volkswagen.values import VolkswagenSafetyFlags +from opendbc.car.structs import CarParams +from opendbc.safety.tests.libsafety import libsafety_py +import opendbc.safety.tests.common as common +from opendbc.safety.tests.common import CANPackerPanda + +MSG_LENKHILFE_3 = 0x0D0 # RX from EPS, for steering angle and driver steering torque +MSG_HCA_1 = 0x0D2 # TX by OP, Heading Control Assist steering torque +MSG_BREMSE_1 = 0x1A0 # RX from ABS, for ego speed +MSG_MOTOR_2 = 0x288 # RX from ECU, for CC state and brake switch state +MSG_ACC_SYSTEM = 0x368 # TX by OP, longitudinal acceleration controls +MSG_MOTOR_3 = 0x380 # RX from ECU, for driver throttle input +MSG_GRA_NEU = 0x38A # TX by OP, ACC control buttons for cancel/resume +MSG_MOTOR_5 = 0x480 # RX from ECU, for ACC main switch state +MSG_ACC_GRA_ANZEIGE = 0x56A # TX by OP, ACC HUD +MSG_LDW_1 = 0x5BE # TX by OP, Lane line recognition and text alerts + + +class TestVolkswagenPqSafety(common.PandaCarSafetyTest, common.DriverTorqueSteeringSafetyTest): + cruise_engaged = False + + RELAY_MALFUNCTION_ADDRS = {0: (MSG_HCA_1,)} + + MAX_RATE_UP = 6 + MAX_RATE_DOWN = 10 + MAX_TORQUE = 300 + MAX_RT_DELTA = 113 + RT_INTERVAL = 250000 + + DRIVER_TORQUE_ALLOWANCE = 80 + DRIVER_TORQUE_FACTOR = 3 + + @classmethod + def setUpClass(cls): + if cls.__name__ == "TestVolkswagenPqSafety": + cls.packer = None + cls.safety = None + raise unittest.SkipTest + + def _set_prev_torque(self, t): + self.safety.set_desired_torque_last(t) + self.safety.set_rt_torque_last(t) + + # Ego speed (Bremse_1) + def _speed_msg(self, speed): + values = {"Geschwindigkeit_neu__Bremse_1_": speed} + return self.packer.make_can_msg_panda("Bremse_1", 0, values) + + # Brake light switch (shared message Motor_2) + def _user_brake_msg(self, brake): + # since this signal is used for engagement status, preserve current state + return self._motor_2_msg(brake_pressed=brake, cruise_engaged=self.safety.get_controls_allowed()) + + # ACC engaged status (shared message Motor_2) + def _pcm_status_msg(self, enable): + self.__class__.cruise_engaged = enable + return self._motor_2_msg(cruise_engaged=enable) + + # Acceleration request to drivetrain coordinator + def _accel_msg(self, accel): + values = {"ACS_Sollbeschl": accel} + return self.packer.make_can_msg_panda("ACC_System", 0, values) + + # Driver steering input torque + def _torque_driver_msg(self, torque): + values = {"LH3_LM": abs(torque), "LH3_LMSign": torque < 0} + return self.packer.make_can_msg_panda("Lenkhilfe_3", 0, values) + + # openpilot steering output torque + def _torque_cmd_msg(self, torque, steer_req=1, hca_status=5): + values = {"LM_Offset": abs(torque), "LM_OffSign": torque < 0, "HCA_Status": hca_status if steer_req else 3} + return self.packer.make_can_msg_panda("HCA_1", 0, values) + + # ACC engagement and brake light switch status + # Called indirectly for compatibility with common.py tests + def _motor_2_msg(self, brake_pressed=False, cruise_engaged=False): + values = {"Bremslichtschalter": brake_pressed, + "GRA_Status": cruise_engaged} + return self.packer.make_can_msg_panda("Motor_2", 0, values) + + # ACC main switch status + def _motor_5_msg(self, main_switch=False): + values = {"GRA_Hauptschalter": main_switch} + return self.packer.make_can_msg_panda("Motor_5", 0, values) + + # Driver throttle input (Motor_3) + def _user_gas_msg(self, gas): + values = {"Fahrpedal_Rohsignal": gas} + return self.packer.make_can_msg_panda("Motor_3", 0, values) + + # Cruise control buttons (GRA_Neu) + def _button_msg(self, _set=False, resume=False, cancel=False, bus=2): + values = {"GRA_Neu_Setzen": _set, "GRA_Recall": resume, "GRA_Abbrechen": cancel} + return self.packer.make_can_msg_panda("GRA_Neu", bus, values) + + def test_torque_measurements(self): + # TODO: make this test work with all cars + self._rx(self._torque_driver_msg(50)) + self._rx(self._torque_driver_msg(-50)) + self._rx(self._torque_driver_msg(0)) + self._rx(self._torque_driver_msg(0)) + self._rx(self._torque_driver_msg(0)) + self._rx(self._torque_driver_msg(0)) + + self.assertEqual(-50, self.safety.get_torque_driver_min()) + self.assertEqual(50, self.safety.get_torque_driver_max()) + + self._rx(self._torque_driver_msg(0)) + self.assertEqual(0, self.safety.get_torque_driver_max()) + self.assertEqual(-50, self.safety.get_torque_driver_min()) + + self._rx(self._torque_driver_msg(0)) + self.assertEqual(0, self.safety.get_torque_driver_max()) + self.assertEqual(0, self.safety.get_torque_driver_min()) + + +class TestVolkswagenPqStockSafety(TestVolkswagenPqSafety): + # Transmit of GRA_Neu is allowed on bus 0 and 2 to keep compatibility with gateway and camera integration + TX_MSGS = [[MSG_HCA_1, 0], [MSG_GRA_NEU, 0], [MSG_GRA_NEU, 2], [MSG_LDW_1, 0]] + FWD_BLACKLISTED_ADDRS = {2: [MSG_HCA_1, MSG_LDW_1]} + + def setUp(self): + self.packer = CANPackerPanda("vw_golf_mk4") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagenPq, 0) + self.safety.init_tests() + + def test_spam_cancel_safety_check(self): + self.safety.set_controls_allowed(0) + self.assertTrue(self._tx(self._button_msg(cancel=True))) + self.assertFalse(self._tx(self._button_msg(resume=True))) + self.assertFalse(self._tx(self._button_msg(_set=True))) + # do not block resume if we are engaged already + self.safety.set_controls_allowed(1) + self.assertTrue(self._tx(self._button_msg(resume=True))) + + +class TestVolkswagenPqLongSafety(TestVolkswagenPqSafety, common.LongitudinalAccelSafetyTest): + TX_MSGS = [[MSG_HCA_1, 0], [MSG_LDW_1, 0], [MSG_ACC_SYSTEM, 0], [MSG_ACC_GRA_ANZEIGE, 0]] + FWD_BLACKLISTED_ADDRS = {2: [MSG_HCA_1, MSG_LDW_1, MSG_ACC_SYSTEM, MSG_ACC_GRA_ANZEIGE]} + INACTIVE_ACCEL = 3.01 + + def setUp(self): + self.packer = CANPackerPanda("vw_golf_mk4") + self.safety = libsafety_py.libsafety + self.safety.set_safety_hooks(CarParams.SafetyModel.volkswagenPq, VolkswagenSafetyFlags.LONG_CONTROL) + self.safety.init_tests() + + # stock cruise controls are entirely bypassed under openpilot longitudinal control + def test_disable_control_allowed_from_cruise(self): + pass + + def test_enable_control_allowed_from_cruise(self): + pass + + def test_cruise_engaged_prev(self): + pass + + def test_set_and_resume_buttons(self): + for button in ["set", "resume"]: + # ACC main switch must be on, engage on falling edge + self.safety.set_controls_allowed(0) + self._rx(self._motor_5_msg(main_switch=False)) + self._rx(self._button_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) + self._rx(self._button_msg(bus=0)) + self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} with main switch off") + self._rx(self._motor_5_msg(main_switch=True)) + self._rx(self._button_msg(_set=(button == "set"), resume=(button == "resume"), bus=0)) + self.assertFalse(self.safety.get_controls_allowed(), f"controls allowed on {button} rising edge") + self._rx(self._button_msg(bus=0)) + self.assertTrue(self.safety.get_controls_allowed(), f"controls not allowed on {button} falling edge") + + def test_cancel_button(self): + # Disable on rising edge of cancel button + self._rx(self._motor_5_msg(main_switch=True)) + self.safety.set_controls_allowed(1) + self._rx(self._button_msg(cancel=True, bus=0)) + self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after cancel") + + def test_main_switch(self): + # Disable as soon as main switch turns off + self._rx(self._motor_5_msg(main_switch=True)) + self.safety.set_controls_allowed(1) + self._rx(self._motor_5_msg(main_switch=False)) + self.assertFalse(self.safety.get_controls_allowed(), "controls allowed after ACC main switch off") + + def test_torque_cmd_enable_variants(self): + # The EPS rack accepts either 5 or 7 for an enabled status, with different low speed tuning behavior + self.safety.set_controls_allowed(1) + for enabled_status in (5, 7): + self.assertTrue(self._tx(self._torque_cmd_msg(self.MAX_RATE_UP, steer_req=1, hca_status=enabled_status)), + f"torque cmd rejected with {enabled_status=}") + +if __name__ == "__main__": + unittest.main() diff --git a/opendbc_repo/pyproject.toml b/opendbc_repo/pyproject.toml new file mode 100644 index 0000000000..119cdfe262 --- /dev/null +++ b/opendbc_repo/pyproject.toml @@ -0,0 +1,124 @@ +[project] +name = "opendbc" +version = "0.2.1" +description = "CAN bus databases and tools" +license = { file = "LICENSE" } +authors = [{ name = "Vehicle Researcher", email = "user@comma.ai" }] +readme = "README.md" +requires-python = ">=3.9,<3.13" # pycapnp doesn't work with 3.13 + +urls = { "homepage" = "https://github.com/commaai/opendbc" } + +dependencies = [ + "scons", + "numpy", + "crcmod", + "tqdm", + "pycapnp", + "pycryptodome", +] + +[project.optional-dependencies] +testing = [ + "cffi", + "gcovr", + "pytest", + "pytest-coverage", + "pytest-mock", + "pytest-randomly", + "pytest-xdist", + "pytest-subtests", + "hypothesis==6.47.*", + "parameterized>=0.8,<0.9", + + # static analysis + "ruff", + "ty", + "lefthook", + "cpplint", + "codespell", +] +docs = [ + "Jinja2", + "natsort", +] +examples = [ + "inputs", + "matplotlib", +] + +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" + +[tool.pytest.ini_options] +addopts = "-Werror --strict-config --strict-markers --durations=10 -n auto" +python_files = "test_*.py" +testpaths = [ + "opendbc" +] + +[tool.codespell] +quiet-level = 3 +ignore-words-list = "alo,ba,bu,deque,hda,grey,arange" +builtin = "clear,rare,informal,code,names,en-GB_to_en-US" +check-hidden = true + +[tool.mypy] +# helpful warnings +warn_redundant_casts=true +warn_unreachable=true +warn_unused_ignores=true + +# restrict dynamic typing +warn_return_any=true + +# allow implicit optionals for default args +implicit_optional = true + +explicit_package_bases=true + +# https://beta.ruff.rs/docs/configuration/#using-pyprojecttoml +[tool.ruff] +line-length = 160 +indent-width = 2 +target-version="py311" + +[tool.ruff.lint] +select = [ + "E", "F", "W", "PIE", "C4", "ISC", "A", "B", + "NPY", # numpy + "UP", # pyupgrade + "TRY203", "TRY400", "TRY401", # try/excepts + "RUF008", "RUF100", + "TID251", + "PLR1704", + "INP001", +] +ignore = [ + "W292", + "E741", + "E402", + "C408", + "ISC003", + "B027", + "B024", + "UP031", + "NPY002", # new numpy random syntax is worse + "C420", +] +flake8-implicit-str-concat.allow-multiline=false + +[tool.ruff.lint.per-file-ignores] +"site_scons/*" = ["ALL"] + +[tool.ruff.lint.flake8-tidy-imports.banned-api] +"pytest.main".msg = "pytest.main requires special handling that is easy to mess up!" +# TODO: re-enable when all tests are converted to pytest +#"unittest".msg = "Use pytest" + +[tool.setuptools] +include-package-data = true + +[tool.setuptools.package-data] +"opendbc.safety" = ["*.h", "board/*.h", "board/drivers/*.h", "modes/*.h"] diff --git a/opendbc_repo/setup.sh b/opendbc_repo/setup.sh new file mode 100755 index 0000000000..29c5bf2cd1 --- /dev/null +++ b/opendbc_repo/setup.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -e + +BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" + +# TODO: why doesn't uv do this? +export PYTHONPATH=$BASEDIR + +# *** dependencies install *** +if ! command -v uv &>/dev/null; then + echo "'uv' is not installed. Installing 'uv'..." + curl -LsSf https://astral.sh/uv/install.sh | sh +fi + +export UV_PROJECT_ENVIRONMENT="$BASEDIR/.venv" +uv sync --all-extras +source "$PYTHONPATH/.venv/bin/activate" + +$BASEDIR/opendbc/safety/tests/misra/install.sh diff --git a/opendbc_repo/site_scons/site_tools/cython.py b/opendbc_repo/site_scons/site_tools/cython.py new file mode 100644 index 0000000000..c291475533 --- /dev/null +++ b/opendbc_repo/site_scons/site_tools/cython.py @@ -0,0 +1,72 @@ +import re +import SCons +from SCons.Action import Action +from SCons.Scanner import Scanner + +pyx_from_import_re = re.compile(r'^from\s+(\S+)\s+cimport', re.M) +pyx_import_re = re.compile(r'^cimport\s+(\S+)', re.M) +cdef_import_re = re.compile(r'^cdef extern from\s+.(\S+).:', re.M) + + +def pyx_scan(node, env, path, arg=None): + contents = node.get_text_contents() + + # from cimport ... + matches = pyx_from_import_re.findall(contents) + # cimport + matches += pyx_import_re.findall(contents) + + # Modules can be either .pxd or .pyx files + files = [m.replace('.', '/') + '.pxd' for m in matches] + files += [m.replace('.', '/') + '.pyx' for m in matches] + + # cdef extern from + files += cdef_import_re.findall(contents) + + # Handle relative imports + cur_dir = str(node.get_dir()) + files = [cur_dir + f if f.startswith('/') else f for f in files] + + # Filter out non-existing files (probably system imports) + files = [f for f in files if env.File(f).exists()] + return env.File(files) + + +pyxscanner = Scanner(function=pyx_scan, skeys=['.pyx', '.pxd'], recursive=True) +cythonAction = Action("$CYTHONCOM") + + +def create_builder(env): + try: + cython = env['BUILDERS']['Cython'] + except KeyError: + cython = SCons.Builder.Builder( + action=cythonAction, + emitter={}, + suffix=cython_suffix_emitter, + single_source=1 + ) + env.Append(SCANNERS=pyxscanner) + env['BUILDERS']['Cython'] = cython + return cython + +def cython_suffix_emitter(env, source): + return "$CYTHONCFILESUFFIX" + +def generate(env): + env["CYTHON"] = "cythonize" + env["CYTHONCOM"] = "$CYTHON $CYTHONFLAGS $SOURCE" + env["CYTHONCFILESUFFIX"] = ".cpp" + + c_file, _ = SCons.Tool.createCFileBuilders(env) + + c_file.suffix['.pyx'] = cython_suffix_emitter + c_file.add_action('.pyx', cythonAction) + + c_file.suffix['.py'] = cython_suffix_emitter + c_file.add_action('.py', cythonAction) + + create_builder(env) + +def exists(env): + return True diff --git a/opendbc_repo/test.sh b/opendbc_repo/test.sh new file mode 100755 index 0000000000..d91afb0356 --- /dev/null +++ b/opendbc_repo/test.sh @@ -0,0 +1,18 @@ +#!/bin/bash +set -e + +DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null && pwd)" +cd $DIR + +source ./setup.sh + +# *** build *** +scons -j8 + +# *** lint + test *** +lefthook run test + +# *** all done *** +GREEN='\033[0;32m' +NC='\033[0m' +printf "\n${GREEN}All good!${NC} Finished build, lint, and test in ${SECONDS}s\n" diff --git a/selfdrive/car/bmw/__init__.py b/selfdrive/car/bmw/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/selfdrive/car/bmw/bmwcan.py b/selfdrive/car/bmw/bmwcan.py new file mode 100644 index 0000000000..03458e7ee5 --- /dev/null +++ b/selfdrive/car/bmw/bmwcan.py @@ -0,0 +1,75 @@ +from enum import Enum +from opendbc.can.packer import CANPacker +from openpilot.selfdrive.car.bmw.values import CanBus + +class SteeringModes(Enum): + Off = 0 + TorqueControl = 1 + AngleControl = 2 + SoftOff = 3 + +class CruiseStalk(Enum): + plus1 = "plus1" + plus5 = "plus5" + minus1 = "minus1" + minus5 = "minus5" + cancel = "cancel" + resume = "resume" + cancel_lever_up = "cancel_lever_up" + +# *** StepperServoCAN *** +def create_steer_command(frame: int, mode: SteeringModes, steer_tq: float = 0, steer_delta: float = 0): + """Creates a CAN message for the actuator STEERING_COMMAND""" + packer = CANPacker('ocelot_controls') + values = { + "COUNTER": frame % 16, + "STEER_MODE": mode.value, + "STEER_ANGLE": steer_delta, + "STEER_TORQUE": steer_tq, + } + msg = packer.make_can_msg("STEERING_COMMAND", 0, values) + addr = msg[0] + dat = msg[1] + values["CHECKSUM"] = calc_checksum_8bit(dat, addr) + + return packer.make_can_msg("STEERING_COMMAND", CanBus.SERVO_CAN, values) + + +def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 + checksum = msg_id + for byte in work_data: #checksum is stripped from the dat + checksum += byte #add up all the bytes + + checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes + checksum &= 0xFF #throw away anything in upper Byte + + checksum = (checksum & 0xF) + (checksum >> 4) #add first and second nibble + checksum &= 0xF #throw away anything in upper nibble + return checksum + +def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf + checksum = msg_id + for byte in work_data: #checksum is stripped from the data + checksum += byte #add up all the bytes + + checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes + checksum &= 0xFF #throw away anything in upper Byte + return checksum + +def calc_checksum_cruise(work_data: bytearray):# 0x194 this checksum is special - initialized with 0 + return calc_checksum_8bit(work_data, 0) + + +def create_accel_command(packer, action: CruiseStalk, bus: int, cnt): + values = { + "setMe_0xFC": 0xFC, + "requests_0xF": 0xF, + "Counter_0x194": cnt % 0xF # counts from 0 to 14 + } + values[action.value] = 1 + + dat = packer.make_can_msg("CruiseControlStalk", bus, values)[1] + values["Checksum_0x194"] = calc_checksum_cruise(dat) + + return packer.make_can_msg("CruiseControlStalk", bus, values) + diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py new file mode 100644 index 0000000000..77745af43b --- /dev/null +++ b/selfdrive/car/bmw/carcontroller.py @@ -0,0 +1,193 @@ +from cereal import car +from openpilot.selfdrive.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis +from openpilot.selfdrive.car.bmw import bmwcan +from openpilot.selfdrive.car.bmw.bmwcan import SteeringModes, CruiseStalk +from openpilot.selfdrive.car.bmw.values import CarControllerParams, CanBus, BmwFlags +from openpilot.selfdrive.car.interfaces import CarControllerBase +from opendbc.can.packer import CANPacker +from openpilot.selfdrive.car.conversions import Conversions as CV + +VisualAlert = car.CarControl.HUDControl.VisualAlert + +# DO NOT CHANGE: Cruise control step size +CC_STEP = 1 # cruise single click jump - always 1 - interpreted as km or miles depending on DSC or DME set units +CRUISE_STALK_IDLE_TICK_STOCK = 0.2 # stock cruise stalk CAN frequency when stalk is not pressed is 5Hz +CRUISE_STALK_HOLD_TICK_STOCK = 0.05 # stock cruise stalk CAN frequency when stalk is pressed is 20Hz + +CRUISE_STALK_SINGLE_TICK = CRUISE_STALK_IDLE_TICK_STOCK # we will send also at 5Hz in between stock messages to emulate single presses +CRUISE_STALK_HOLD_TICK = 0.01 # emulate held stalk, 100Hz makes stock messages be ignored + +CRUISE_SPEED_HYST_GAP = CC_STEP * 0.6 # between >0.5 and <1 to avoid cruise speed toggling. More than 0.5 to add some phase lead +ACCEL_HYST_GAP = 0.05 # m/s^2 + +ACCEL_HOLD_MEDIUM = 0.4 +DECEL_HOLD_MEDIUM = -0.6 +ACCEL_HOLD_STRONG = 1.2 +DECEL_HOLD_STRONG = -1.2 + +class CarController(CarControllerBase): + def __init__(self, dbc_name, CP): + super().__init__(dbc_name, CP) + self.flags = CP.flags + self.min_cruise_speed = CP.minEnableSpeed + self.cruise_units = None + + self.cruise_cancel = False # local cruise control cancel + self.cruise_enabled_prev = False + # redundant safety check with the board + self.apply_steer_last = 0 + self.last_cruise_rx_timestamp = 0 # stock cruise buttons + self.last_cruise_tx_timestamp = 0 # openpilot commands + self.tx_cruise_stalk_counter_last = 0 + self.rx_cruise_stalk_counter_last = -1 + self.cruise_speed_with_hyst = 0 + self.accel_with_hyst = 0 + self.accel_with_hyst_last = 0 + self.calc_desired_speed = 0 + + self.cruise_bus = CanBus.PT_CAN + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + self.cruise_bus = CanBus.F_CAN + + + self.packer = CANPacker(dbc_name) + + + def update(self, CC, CS, now_nanos): + + actuators = CC.actuators + can_sends = [] + + self.cruise_units = (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + + + # *** hysteresis - trend is your friend *** + # avoids cruise speed toggling and biases next request toward the direction of the previous one + self.cruise_speed_with_hyst = apply_hysteresis(CS.out.cruiseState.speed, self.cruise_speed_with_hyst, CRUISE_SPEED_HYST_GAP / self.cruise_units) + if not CS.out.cruiseState.enabled: + self.cruise_speed_with_hyst = CS.out.vEgoCluster + + # acceleration target hysteresis - avoids entering / leaving hold stalk emulation to frequently, etc + self.accel_with_hyst = apply_hysteresis(actuators.accel, self.accel_with_hyst, ACCEL_HYST_GAP) + + + # *** desired speed model *** + # detect filtered acceleration sign change and reset speed calc on change + accel_zero_cross = self.accel_with_hyst * self.accel_with_hyst_last < 0 + self.accel_with_hyst_last = self.accel_with_hyst + if accel_zero_cross or not CC.enabled or CS.out.gasPressed: + self.calc_desired_speed = CS.out.vEgoCluster + self.calc_desired_speed = self.calc_desired_speed + actuators.accel * DT_CTRL + speed_err_req = (self.calc_desired_speed - self.cruise_speed_with_hyst) * self.cruise_units + speed_err_act = self.calc_desired_speed - CS.out.vEgoCluster + + # detect incoming CruiseControlStalk message by observing counter change (message arrives at only 5Hz when nothing pressed) + if CS.cruise_stalk_counter != self.rx_cruise_stalk_counter_last: + self.tx_cruise_stalk_counter_last = CS.cruise_stalk_counter + # stock message was sent some time in between control samples: + self.last_cruise_rx_timestamp = now_nanos + self.rx_cruise_stalk_counter_last = CS.cruise_stalk_counter + + + + + + # *** send cruise control stalk message at different rates and manage counters *** + def cruise_cmd(cmd, hold=False): + time_since_cruise_sent = (now_nanos - self.last_cruise_tx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency + time_since_cruise_received = (now_nanos - self.last_cruise_rx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency + # send single cmd with an effective rate slower than held stalk rate + if not hold: + send = time_since_cruise_sent > CRUISE_STALK_SINGLE_TICK \ + and time_since_cruise_received > CRUISE_STALK_HOLD_TICK_STOCK/2 - DT_CTRL \ + and time_since_cruise_received < CRUISE_STALK_IDLE_TICK_STOCK/2 + DT_CTRL + else: + # use faster rate to emulate held stalk. Time first message such that subsequent one will nullify stock message: + send = hold and time_since_cruise_sent > CRUISE_STALK_HOLD_TICK + if send: + tx_cruise_stalk_counter = self.tx_cruise_stalk_counter_last + 1 + # avoid counter clash with a potential upcoming message from stock cruise + if tx_cruise_stalk_counter == CS.cruise_stalk_counter + 1: + # avoid clashing with upcoming stock message + # sometimes upcoming stock message is overshadowed by us, so also avoid clashing with one after that + tx_cruise_stalk_counter = tx_cruise_stalk_counter + 2 + tx_cruise_stalk_counter = tx_cruise_stalk_counter % 0xF + can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) + self.tx_cruise_stalk_counter_last = tx_cruise_stalk_counter + self.last_cruise_tx_timestamp = now_nanos + + # *** cruise control cancel signal *** + # CC.cruiseControl.cancel can't be used because it is always false because pcmCruise = False because we need OP speed tracker + # CC.enabled appears after cruiseState.enabled, so we need to check rising edge to prevent instantaneous cancel after cruise is enabled + # This is because CC.enabled comes from controld and CS.out.cruiseState.enabled is from card threads + if not CC.enabled and self.cruise_enabled_prev: + self.cruise_cancel = True + # if we need to go below cruise speed, request cancel and coast while steering turns off softly + if (CS.out.cruiseState.speedCluster - self.min_cruise_speed) < 0.1 and actuators.accel < -0.1 \ + and speed_err_act < -1 and CS.out.vEgoCluster - self.min_cruise_speed < 0.4: + self.cruise_cancel = True + # keep requesting cancel until the cruise is disabled + if not CS.out.cruiseState.enabled: + self.cruise_cancel = False + + cruise_stalk_human_pressing = CS.cruise_stalk_resume or CS.cruise_stalk_cancel or CS.cruise_stalk_speed != 0 + + if not cruise_stalk_human_pressing and CS.out.cruiseState.enabled: + if self.cruise_cancel: + cruise_cmd(CruiseStalk.cancel) + print("cancel") + elif CC.enabled: + if (self.accel_with_hyst > ACCEL_HOLD_STRONG or (self.accel_with_hyst > ACCEL_HOLD_MEDIUM and speed_err_act > 3.0)) \ + and not speed_err_req < -10*CV.KPH_TO_MS*self.cruise_units: + cruise_cmd(CruiseStalk.plus5, hold=True) # produces up to 1.2 m/s2 + elif (self.accel_with_hyst < DECEL_HOLD_STRONG or (self.accel_with_hyst < DECEL_HOLD_MEDIUM and speed_err_act < -3.0)) \ + and not speed_err_req > 10*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus5, hold=True) # produces down to -1.4 m/s2 + elif (self.accel_with_hyst > ACCEL_HOLD_MEDIUM or speed_err_act > 2.0) \ + and not speed_err_req < -5*CV.KPH_TO_MS*self.cruise_units: + cruise_cmd(CruiseStalk.plus1, hold=True) # produces up to 0.8 m/s2 + elif (self.accel_with_hyst < DECEL_HOLD_MEDIUM or speed_err_act < -2.0) \ + and not speed_err_req > 5*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus1, hold=True) # produces down to -0.8 m/s2 + elif speed_err_req > max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and (self.accel_with_hyst > 0.0 or CS.out.gasPressed): + cruise_cmd(CruiseStalk.plus1) + elif speed_err_req < -max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and self.accel_with_hyst < 0.0 and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus1) + + + + if self.flags & BmwFlags.STEPPER_SERVO_CAN: + steer_error = not CC.latActive and CC.enabled + if not steer_error: # don't send steer CAN tx if steering is unavailable + # *** apply steering torque *** + if CC.enabled: + new_steer = actuators.steer * CarControllerParams.STEER_MAX + # explicitly clip torque before sending on CAN + apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, + CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, + CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) + apply_steer = CS.out.steeringTorqueEps + else: + apply_steer = 0 + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) + self.apply_steer_last = apply_steer + + # debug + if CC.enabled and (self.frame % 10) == 0: #slow print + frame_number = self.frame + print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + + self.cruise_enabled_prev = CC.enabled + + new_actuators = actuators.as_builder() + new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX + new_actuators.steerOutputCan = self.apply_steer_last + + new_actuators.speed = self.calc_desired_speed + new_actuators.accel = speed_err_req + + self.frame += 1 + return new_actuators, can_sends diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py new file mode 100644 index 0000000000..433ee72bb5 --- /dev/null +++ b/selfdrive/car/bmw/carstate.py @@ -0,0 +1,189 @@ +from cereal import car +from opendbc.can.can_define import CANDefine +from opendbc.can.parser import CANParser +from openpilot.selfdrive.car.conversions import Conversions as CV +from openpilot.selfdrive.car.interfaces import CarStateBase +from openpilot.selfdrive.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint]['pt']) + self.shifter_values = can_define.dv["TransmissionDataDisplay"]['ShiftLeverPosition'] + self.steer_angle_delta = 0. + self.gas_kickdown = False + + self.cluster_min_speed = CruiseSettings.CLUSTER_OFFSET + + self.is_metric = None + self.cruise_stalk_speed = 0 + self.cruise_stalk_resume = False + self.cruise_stalk_cancel = False + self.cruise_stalk_cancel_up = False + self.cruise_stalk_cancel_dn = False + self.cruise_stalk_counter = 0 + self.prev_cruise_stalk_speed = 0 + self.prev_cruise_stalk_resume = self.cruise_stalk_resume + self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel + + self.right_blinker_pressed = False + self.left_blinker_pressed = False + self.other_buttons = False + self.prev_gas_pressed = False + self.dtc_mode = False + + def update(self, cp_PT, cp_F, cp_aux): + # set these prev states at the beginning because they are used outside the update() + self.prev_cruise_stalk_speed = self.cruise_stalk_speed + self.prev_cruise_stalk_resume = self.cruise_stalk_resume + self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel + + ret = car.CarState.new_message() + + ret.doorOpen = False # not any([cp.vl["SEATS_DOORS"]['DOOR_OPEN_FL'], cp.vl["SEATS_DOORS"]['DOOR_OPEN_FR'] + ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] + + ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 + ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 + ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] + # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop + ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 + self.gas_kickdown = cp_PT.vl['AccPedal']["KickDownPressed"] != 0 #BMW has kickdown button at the bottom of the pedal + + ret.wheelSpeeds = self.get_wheel_speeds( + cp_PT.vl["WheelSpeeds"]["Wheel_FL"], + cp_PT.vl["WheelSpeeds"]["Wheel_FR"], + cp_PT.vl["WheelSpeeds"]["Wheel_RL"], + cp_PT.vl["WheelSpeeds"]["Wheel_RR"], + ) + ret.vEgoRaw = cp_PT.vl['Speed']["VehicleSpeed"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.vEgoCluster = ret.vEgo + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS + ret.standstill = not cp_PT.vl['Speed']["MovingForward"] and not cp_PT.vl['Speed']["MovingReverse"] + ret.yawRate = cp_PT.vl['Speed']["YawRate"] * CV.DEG_TO_RAD + ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] + can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + blinker_on = cp_PT.vl["TurnSignals"]['TurnSignalActive'] != 0 and cp_PT.vl["TurnSignals"]['TurnSignalIdle'] == 0 + ret.leftBlinker = blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] !=0 # blinking + ret.rightBlinker = blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] !=0 # blinking + self.right_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] != 0 + self.left_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] != 0 + + self.dtc_mode = cp_PT.vl['StatusDSC_KCAN']['DTC_on'] != 0 # drifty traction control ;) + + # other buttons help determine driver is paying attention in case the face is not visible + self.other_buttons = \ + cp_PT.vl["SteeringButtons"]['Volume_DOWN'] !=0 or cp_PT.vl["SteeringButtons"]['Volume_UP'] !=0 or \ + cp_PT.vl["SteeringButtons"]['Previous_down'] !=0 or cp_PT.vl["SteeringButtons"]['Next_up'] !=0 or \ + cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or \ + self.prev_gas_pressed and not ret.gasPressed # treat gas pedal tap as a button - button events indicate driver engagement - useful if face not visible + + # E-series doesn't have torque sensor + # use Voice button or gas pedal to fake steeringPressed to confirm a lane change + ret.steeringPressed = cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or ret.gasPressed + if ret.steeringPressed and ret.leftBlinker: + ret.steeringTorque = 1 + elif ret.steeringPressed and ret.rightBlinker: + ret.steeringTorque = -1 + else: + ret.steeringTorque = 0 + + ret.espDisabled = cp_PT.vl['StatusDSC_KCAN']['DSC_full_off'] != 0 + ret.cruiseState.available = not ret.espDisabled #cruise not available when DSC fully off + ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch + + # Read openpilot engagement signal from CAN address 0x100 byte 0 + openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] + + cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] + if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC + ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 + # DCC implies that cruise control is done on F-CAN + # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages + cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] + elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 + + # Override enabled state with external engagement signal from 0x100 byte 0 + if openpilot_engage_signal != 0: + ret.cruiseState.enabled = True + + ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False + if cruise_control_stal_msg['plus1'] != 0: + self.cruise_stalk_speed = 1 + elif cruise_control_stal_msg['minus1'] != 0: + self.cruise_stalk_speed = -1 + elif cruise_control_stal_msg['plus5'] != 0: + self.cruise_stalk_speed = 5 + elif cruise_control_stal_msg['minus5'] != 0: + self.cruise_stalk_speed = -5 + else: + self.cruise_stalk_speed = 0 + self.cruise_stalk_resume = cruise_control_stal_msg['resume'] != 0 + self.cruise_stalk_cancel = cruise_control_stal_msg['cancel'] != 0 + self.cruise_stalk_cancel_up = cruise_control_stal_msg['cancel_lever_up'] != 0 + self.cruise_stalk_counter = cruise_control_stal_msg['Counter_0x194'] + self.cruise_stalk_cancel_dn = self.cruise_stalk_cancel and not self.cruise_stalk_cancel_up + + + ret.genericToggle = self.dtc_mode + + if self.CP.flags & BmwFlags.STEPPER_SERVO_CAN: + ret.steeringTorqueEps = cp_aux.vl['STEERING_STATUS']['STEERING_TORQUE'] + self.steer_angle_delta = cp_aux.vl['STEERING_STATUS']['STEERING_ANGLE'] + ret.steerFaultTemporary = int(cp_aux.vl['STEERING_STATUS']['CONTROL_STATUS']) & 0x4 != 0 + + self.prev_gas_pressed = ret.gasPressed + return ret + + @staticmethod + def get_can_parser(CP): #PT-CAN + messages = [ # message, frequency + ("EngineAndBrake", 100), + ("TransmissionDataDisplay", 5), + ("AccPedal", 100), + ("Speed", 50), + ("SteeringWheelAngle", 100), + ("TurnSignals", 0), + ("SteeringButtons", 0), + ("WheelSpeeds", 50), # 100 on F-CAN + ("CruiseControlStalk", 5), + ("StatusDSC_KCAN", 50), + ("Status_contact_handbrake", 0), + ("TerminalStatus", 10), + ("OpenpilotEngage", 10), + ] + + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages.append(("DynamicCruiseControlStatus", 5)) + if CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + messages.append(("CruiseControlStatus", 5)) + + return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.PT_CAN) # 0: PT-CAN + + @staticmethod # $540 vehicle option could use just PT_CAN, but $544 requires sending and receiving cruise commands on F-CAN. Use F-can. Works for both options + def get_F_can_parser(CP): + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages = [ # message, frequency + ("SteeringWheelAngle_DSC", 100), + ("CruiseControlStalk", 5), + ] + else: + messages = [] + + return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.F_CAN) + + @staticmethod + def get_actuator_can_parser(CP): + if CP.flags & BmwFlags.STEPPER_SERVO_CAN: + messages = [ # message, frequency + ("STEERING_STATUS", 100), + ] + else: + messages = [] + return CANParser('ocelot_controls', messages, CanBus.SERVO_CAN) diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py new file mode 100644 index 0000000000..c5e34bc8a6 --- /dev/null +++ b/selfdrive/car/bmw/fingerprints.py @@ -0,0 +1,35 @@ +from openpilot.selfdrive.car.bmw.values import CAR + +BMW_E8x_E9x_common_per_bus = { + "PT-CAN": { + 256: 8, 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, + 209: 8,212: 8, 266: 6, 304: 5, 309: 2, 373: 3, 404: 4, 408: 5, 414: 8, 416: 8, 418: 8, 422: 8, 436: 8, 437: 7, 438: 7, 464: 8, 466: 6, 470: 2, 481: 6, + 502: 2, 514: 2, 538: 3, 550: 5, 570: 4, 578: 5, 594: 2, 678: 2, 690: 8, 691: 5, 704: 3, 719: 2, 722: 3, 753: 3, 758: 2, 760: 8, 762: 5, 764: 7, 784: 7, + 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, + 1152: 8, 1170: 8, 1175: 8, 1176: 8, 1193: 8, 1246: 8, 1408: 8, 1426: 8, 1432: 8, 1449: 8, 1472: 8, 1494: 8, 1504: 8, 1506: 8, 1517: 8, 1522: 8, 1528: 8 + }, + "STEPPER_SERVO_CAN": { + 559: 8 + } +} + +# Minimal fingerprint with just 0x200 (512 decimal) for car recognition +BMW_MINIMAL_FINGERPRINT = { + 512: 8, # 0x200 - all bytes FF for recognition +} + +BMW_E8x_E9x_common = {k: v for d in BMW_E8x_E9x_common_per_bus.values() for k, v in d.items()} # flatten + +FINGERPRINTS = { + CAR.BMW_E82: [ + BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition + {**BMW_E8x_E9x_common, 899: 4}, + {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 + ], + CAR.BMW_E90: [ + BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition + {**BMW_E8x_E9x_common, 899: 4}, + {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 + {**BMW_E8x_E9x_common}, # Full fingerprint for testing + ], +} diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py new file mode 100755 index 0000000000..9abf0382f2 --- /dev/null +++ b/selfdrive/car/bmw/interface.py @@ -0,0 +1,173 @@ +#!/usr/bin/env python3 +from cereal import car +from openpilot.selfdrive.car import create_button_events +from openpilot.selfdrive.car.helpers import interp +from openpilot.selfdrive.car.conversions import Conversions as CV +from openpilot.selfdrive.car import get_safety_config +from openpilot.selfdrive.car.bmw.values import CanBus, BmwFlags, CarControllerParams +from openpilot.selfdrive.car.interfaces import CarInterfaceBase + +ButtonType = car.CarState.ButtonEvent.Type +EventName = car.CarEvent.EventName +TransmissionType = car.CarParams.TransmissionType +GearShifter = car.CarState.GearShifter + +# certain driver intervention can be distinguished from maximum estimated wheel turning force +def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): + # when steering released (or lost steps), what angle will it return to + # if we are above that angle, we can detect things + release_angle = steer_friction_torque / (max(v_ego, 1) ** 2 * centering_coeff) + + override = False + margin_value = 1 + if abs(steer_cmd) > release_angle: # for higher angles we steering will not move outward by itself with stepper on + if steer_cmd > 0: + override |= steer_act - steer_cmd > margin_value # driver overrode from right to more right + override |= steer_act < 0 # releaseAngle -3 # driver overrode from right to opposite direction + else: + override |= steer_act - steer_cmd < -margin_value # driver overrode from left to more left + override |= steer_act > 0 # -releaseAngle +3 # driver overrode from left to opposite direction + # else: + # override |= abs(steerAct) > releaseAngle + marginVal # driver overrode to an angle where steering will not go by itself + return override + + +class CarInterface(CarInterfaceBase): + def __init__(self, CP, CarController, CarState): + super().__init__(CP, CarController, CarState) + + self.cp_F = self.CS.get_F_can_parser(CP) + self.can_parsers.append(self.cp_F) + self.cp_aux = self.CS.get_actuator_can_parser(CP) + self.can_parsers.append(self.cp_aux) + + @staticmethod + # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 + def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + return hold_torque # todo add speed component + + @staticmethod + def get_steer_feedforward(desired_angle, v_ego): + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + return hold_torque # todo add speed component + + def get_steer_feedforward_function(self): + if self.CP.flags & BmwFlags.SERVOTRONIC: + return self.get_steer_feedforward_servotronic + else: + return self.get_steer_feedforward + + @staticmethod + def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): + if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status + ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value + + ret.openpilotLongitudinalControl = False + ret.radarUnavailable = True + ret.pcmCruise = False # openpilot handles engagement via cruise stalk + + ret.autoResumeSng = False + if 0x200 in fingerprint[CanBus.PT_CAN]: # Enigne controls speed and reports cruise control status + ret.flags |= BmwFlags.NORMAL_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests + elif 0x193 in fingerprint[CanBus.PT_CAN]: # either DSC or LDM reports cruise control status + if 0x0D5 not in fingerprint[CanBus.PT_CAN]: # DSC itself applies brakes + ret.flags |= BmwFlags.DYNAMIC_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests on F-CAN + else: # LDM sends brake commands + ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_ACC.value # openpilot will switch between OP and LDM + ret.autoResumeSng = True #! hopefully + else: # DSC/DME not sending cruise status and LDM not present - openpilot will be the only requester + ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_LDM.value + ret.autoResumeSng = True #! hopefully + + if 0xb8 in fingerprint[CanBus.PT_CAN] or 0xb5 in fingerprint[CanBus.PT_CAN]: # transmission: engine torque requests + ret.transmissionType = TransmissionType.automatic + else: + ret.transmissionType = TransmissionType.manual + + # Detect all wheel drive BMW E90 XI + if 0xbc in fingerprint[CanBus.PT_CAN]: # XI has a transfer case + ret.steerRatio = 18.5 # XI has slower steering rack + + if ret.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: # DCC imperial has higher threshold + ret.minEnableSpeed = 0. * CV.KPH_TO_MS # if self.CS.is_metric else 20. * CV.MPH_TO_MS + if ret.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + ret.minEnableSpeed = 0. * CV.KPH_TO_MS + + ret.brand = "bmw" + ret.carName = "bmw" + ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] + + ret.steerControlType = car.CarParams.SteerControlType.torque + ret.steerActuatorDelay = 0.4 + ret.steerLimitTimer = 0.4 + + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 0.23 #live parameters + ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters + ret.lateralTuning.torque.useSteeringAngle = False + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? + + ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [.1] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [0.] + + ret.centerToFront = ret.wheelbase * 0.44 + + ret.startAccel = 0.0 + print("Controller: " + ret.lateralTuning.which()) + + # has_servotronic = False + # for fw in car_fw: # todo check JBBF firmware for $216A + # if fw.ecu == "eps" and b"," in fw.fwVersion: + # has_servotronic = True + + return ret + + def _update(self, c): + # ******************* do can recv ******************* + ret = self.CS.update(self.cp, self.cp_F, self.cp_aux) + + # events + events = self.create_common_events(ret, pcm_enable=False) + + # *** cruise control units detection *** + # when cruise is enabled the car sets cruiseState.speed = vEgo, so we can detect the ratio + # with resume this wouldn't work, but op will not engage on first resume anyway + if self.CS.is_metric is None and c.enabled and ret.vEgo > 0: + # note, when is_metric is None, cruiseState.speed is already scaled by CV.MPH_TO_MS by default + speed_ratio = ret.cruiseState.speed / ret.vEgo # 1 if imperial, 1.6 if metric + if 0.8 < speed_ratio < 1.2: + self.CS.is_metric = False + elif 0.8 * CV.MPH_TO_KPH < speed_ratio < 1.2 * CV.MPH_TO_KPH: + self.CS.is_metric = True + else: + events.add(EventName.accFaulted) + + + ret.buttonEvents = [ + *create_button_events(self.CS.cruise_stalk_speed > 0, self.CS.prev_cruise_stalk_speed > 0, {1: ButtonType.accelCruise}), + *create_button_events(self.CS.cruise_stalk_speed < 0, self.CS.prev_cruise_stalk_speed < 0, {1: ButtonType.decelCruise}), + *create_button_events(self.CS.cruise_stalk_cancel, self.CS.prev_cruise_stalk_cancel, {1: ButtonType.cancel}), + *create_button_events(self.CS.other_buttons, not self.CS.other_buttons, {1: ButtonType.altButton1}), + *create_button_events(self.CS.cruise_stalk_resume, self.CS.prev_cruise_stalk_resume, { + 1: ButtonType.resumeCruise if not c.enabled else ButtonType.gapAdjustCruise}) # repurpose resume button to adjust driver personality when engaged + ] + + if ret.vEgoCluster < self.CP.minEnableSpeed: + events.add(EventName.belowEngageSpeed) + if c.actuators.accel > 0.2: + events.add(EventName.speedTooLow) # can't restart cruise anymore + + ret.events = events.to_msg() + + return ret diff --git a/selfdrive/car/bmw/radar_interface.py b/selfdrive/car/bmw/radar_interface.py new file mode 100644 index 0000000000..e654bd61fd --- /dev/null +++ b/selfdrive/car/bmw/radar_interface.py @@ -0,0 +1,4 @@ +from openpilot.selfdrive.car.interfaces import RadarInterfaceBase + +class RadarInterface(RadarInterfaceBase): + pass diff --git a/selfdrive/car/bmw/tests/__init__.py b/selfdrive/car/bmw/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/selfdrive/car/bmw/tests/test_bmw.py b/selfdrive/car/bmw/tests/test_bmw.py new file mode 100644 index 0000000000..dcbe8c239d --- /dev/null +++ b/selfdrive/car/bmw/tests/test_bmw.py @@ -0,0 +1,37 @@ +from parameterized import parameterized + +from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS + +N55_ENGINE_MSG = {899: 4} +N52_ENGINE_MSG = {899: 2} +CRUISE_STATUS_MSG = {0x200: 8} +DYNAMIC_CRUISE_STATUS_MSG = {0x193: 8} +STEPPER_MSG = {0x22F: 8} + + + + +class TestBMWFingerprint: + @parameterized.expand(FINGERPRINTS.items()) + def test_can_fingerprints(self, car_model, fingerprints): + assert len(fingerprints) > 0 + + assert all(len(finger) for finger in fingerprints) + + for car_config in ((STEPPER_MSG, N55_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), + (STEPPER_MSG, N52_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), + (N55_ENGINE_MSG, CRUISE_STATUS_MSG, DYNAMIC_CRUISE_STATUS_MSG), + ): + failed_fingers = {} + for i, finger in enumerate(fingerprints): + failed_addrs = [] + for msg in (car_config): + for addr, length in msg.items(): + found_length = finger.get(addr) + if found_length != length: + failed_addrs.append((addr, length, found_length)) + if failed_addrs: + failed_fingers[i] = failed_addrs + + if len(failed_fingers) == len(fingerprints): + raise AssertionError(f"All {len(fingerprints)} fingerprints failed: {failed_fingers}") diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py new file mode 100644 index 0000000000..9ba58da8bb --- /dev/null +++ b/selfdrive/car/bmw/values.py @@ -0,0 +1,91 @@ +from dataclasses import dataclass, field +from enum import Enum, IntFlag +from cereal import car +from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG +from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column +from opendbc.car.conversions import Conversions as CV + +# Steer torque limits +class CarControllerParams: #controls running @ 100hz + STEER_STEP = 1 # 100Hz + STEER_MAX = 12 # Nm + STEER_DELTA_UP = 10 / 100 # 10Nm/s + STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit + STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor + + # STEER_BACKLASH = 1 #deg + def __init__(self, CP): + pass + +class BmwFlags(IntFlag): + # Detected Flags + STEPPER_SERVO_CAN = 2 ** 0 + NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 + DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 + ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported + ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 + ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 + SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query + +class CruiseSettings: + CLUSTER_OFFSET = 2 # kph + +class CanBus: + PT_CAN = 0 + SERVO_CAN = 0 # required for steering + F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging + K_CAN = 0 # not used - only logging + + +class Footnote(Enum): + StepperServoCAN = CarFootnote( + "Requires StepperServoCAN", + Column.FSR_STEERING) + DCC = CarFootnote( + "Minimum speed with CC or DCC is 30 kph", + Column.FSR_LONGITUDINAL) + CC = CarFootnote( + "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", + Column.PACKAGE) + ACC = CarFootnote( + "ACC is required. Also LDM module to take over when OP is off.", + Column.AUTO_RESUME) + DIY = CarFootnote( + "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", + Column.HARDWARE) + +@dataclass +class BmwCarDocs(CarDocs): + package: str = "Cruise Control - VO540, VO544, VO541" + footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) + + def init_make(self, CP: car.CarParams): + self.car_parts = CarParts.common([CarHarness.custom]) + +@dataclass +class BmwPlatformConfig(PlatformConfig): + dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) + + +class CAR(Platforms): + BMW_E82 = BmwPlatformConfig( + [BmwCarDocs("BMW E82 2004-13")], + CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + BMW_E90 = BmwPlatformConfig( + [BmwCarDocs("BMW E90 2005-11")], + CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) + ) + + +DBC = CAR.create_dbc_map() + + +if __name__ == '__main__': + cars = [] + for platform in CAR: + for doc in platform.config.car_docs: + cars.append(doc.name) + cars.sort() + for c in cars: + print(c) From 4629b60170dc34328f5054e35960cad80d4bb640 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:22:49 +0100 Subject: [PATCH 024/155] fix --- opendbc_repo/opendbc/car/bmw/bmwcan.py | 75 +++++++ opendbc_repo/opendbc/car/bmw/carcontroller.py | 193 ++++++++++++++++++ opendbc_repo/opendbc/car/bmw/carstate.py | 189 +++++++++++++++++ opendbc_repo/opendbc/car/bmw/fingerprints.py | 35 ++++ opendbc_repo/opendbc/car/bmw/interface.py | 173 ++++++++++++++++ .../opendbc/car/bmw/radar_interface.py | 4 + .../opendbc/car/bmw/tests/__init__.py | 0 .../opendbc/car/bmw/tests/test_bmw.py | 37 ++++ opendbc_repo/opendbc/car/bmw/values.py | 2 +- opendbc_repo/opendbc/car/car_helpers.py | 11 +- opendbc_repo/opendbc/car/fingerprints.py | 8 +- 11 files changed, 710 insertions(+), 17 deletions(-) create mode 100644 opendbc_repo/opendbc/car/bmw/bmwcan.py create mode 100644 opendbc_repo/opendbc/car/bmw/carcontroller.py create mode 100644 opendbc_repo/opendbc/car/bmw/carstate.py create mode 100644 opendbc_repo/opendbc/car/bmw/fingerprints.py create mode 100755 opendbc_repo/opendbc/car/bmw/interface.py create mode 100644 opendbc_repo/opendbc/car/bmw/radar_interface.py create mode 100644 opendbc_repo/opendbc/car/bmw/tests/__init__.py create mode 100644 opendbc_repo/opendbc/car/bmw/tests/test_bmw.py diff --git a/opendbc_repo/opendbc/car/bmw/bmwcan.py b/opendbc_repo/opendbc/car/bmw/bmwcan.py new file mode 100644 index 0000000000..91969c1f8e --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/bmwcan.py @@ -0,0 +1,75 @@ +from enum import Enum +from opendbc.can.packer import CANPacker +from opendbc.car.bmw.values import CanBus + +class SteeringModes(Enum): + Off = 0 + TorqueControl = 1 + AngleControl = 2 + SoftOff = 3 + +class CruiseStalk(Enum): + plus1 = "plus1" + plus5 = "plus5" + minus1 = "minus1" + minus5 = "minus5" + cancel = "cancel" + resume = "resume" + cancel_lever_up = "cancel_lever_up" + +# *** StepperServoCAN *** +def create_steer_command(frame: int, mode: SteeringModes, steer_tq: float = 0, steer_delta: float = 0): + """Creates a CAN message for the actuator STEERING_COMMAND""" + packer = CANPacker('ocelot_controls') + values = { + "COUNTER": frame % 16, + "STEER_MODE": mode.value, + "STEER_ANGLE": steer_delta, + "STEER_TORQUE": steer_tq, + } + msg = packer.make_can_msg("STEERING_COMMAND", 0, values) + addr = msg[0] + dat = msg[1] + values["CHECKSUM"] = calc_checksum_8bit(dat, addr) + + return packer.make_can_msg("STEERING_COMMAND", CanBus.SERVO_CAN, values) + + +def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 + checksum = msg_id + for byte in work_data: #checksum is stripped from the dat + checksum += byte #add up all the bytes + + checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes + checksum &= 0xFF #throw away anything in upper Byte + + checksum = (checksum & 0xF) + (checksum >> 4) #add first and second nibble + checksum &= 0xF #throw away anything in upper nibble + return checksum + +def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf + checksum = msg_id + for byte in work_data: #checksum is stripped from the data + checksum += byte #add up all the bytes + + checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes + checksum &= 0xFF #throw away anything in upper Byte + return checksum + +def calc_checksum_cruise(work_data: bytearray):# 0x194 this checksum is special - initialized with 0 + return calc_checksum_8bit(work_data, 0) + + +def create_accel_command(packer, action: CruiseStalk, bus: int, cnt): + values = { + "setMe_0xFC": 0xFC, + "requests_0xF": 0xF, + "Counter_0x194": cnt % 0xF # counts from 0 to 14 + } + values[action.value] = 1 + + dat = packer.make_can_msg("CruiseControlStalk", bus, values)[1] + values["Checksum_0x194"] = calc_checksum_cruise(dat) + + return packer.make_can_msg("CruiseControlStalk", bus, values) + diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py new file mode 100644 index 0000000000..bca4ef8059 --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -0,0 +1,193 @@ +from cereal import car +from opendbc.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis +from opendbc.car.bmw import bmwcan +from opendbc.car.bmw.bmwcan import SteeringModes, CruiseStalk +from opendbc.car.bmw.values import CarControllerParams, CanBus, BmwFlags +from opendbc.car.interfaces import CarControllerBase +from opendbc.can.packer import CANPacker +from opendbc.car.common.conversions import Conversions as CV + +VisualAlert = car.CarControl.HUDControl.VisualAlert + +# DO NOT CHANGE: Cruise control step size +CC_STEP = 1 # cruise single click jump - always 1 - interpreted as km or miles depending on DSC or DME set units +CRUISE_STALK_IDLE_TICK_STOCK = 0.2 # stock cruise stalk CAN frequency when stalk is not pressed is 5Hz +CRUISE_STALK_HOLD_TICK_STOCK = 0.05 # stock cruise stalk CAN frequency when stalk is pressed is 20Hz + +CRUISE_STALK_SINGLE_TICK = CRUISE_STALK_IDLE_TICK_STOCK # we will send also at 5Hz in between stock messages to emulate single presses +CRUISE_STALK_HOLD_TICK = 0.01 # emulate held stalk, 100Hz makes stock messages be ignored + +CRUISE_SPEED_HYST_GAP = CC_STEP * 0.6 # between >0.5 and <1 to avoid cruise speed toggling. More than 0.5 to add some phase lead +ACCEL_HYST_GAP = 0.05 # m/s^2 + +ACCEL_HOLD_MEDIUM = 0.4 +DECEL_HOLD_MEDIUM = -0.6 +ACCEL_HOLD_STRONG = 1.2 +DECEL_HOLD_STRONG = -1.2 + +class CarController(CarControllerBase): + def __init__(self, dbc_name, CP): + super().__init__(dbc_name, CP) + self.flags = CP.flags + self.min_cruise_speed = CP.minEnableSpeed + self.cruise_units = None + + self.cruise_cancel = False # local cruise control cancel + self.cruise_enabled_prev = False + # redundant safety check with the board + self.apply_steer_last = 0 + self.last_cruise_rx_timestamp = 0 # stock cruise buttons + self.last_cruise_tx_timestamp = 0 # openpilot commands + self.tx_cruise_stalk_counter_last = 0 + self.rx_cruise_stalk_counter_last = -1 + self.cruise_speed_with_hyst = 0 + self.accel_with_hyst = 0 + self.accel_with_hyst_last = 0 + self.calc_desired_speed = 0 + + self.cruise_bus = CanBus.PT_CAN + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + self.cruise_bus = CanBus.F_CAN + + + self.packer = CANPacker(dbc_name) + + + def update(self, CC, CS, now_nanos): + + actuators = CC.actuators + can_sends = [] + + self.cruise_units = (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) + + + # *** hysteresis - trend is your friend *** + # avoids cruise speed toggling and biases next request toward the direction of the previous one + self.cruise_speed_with_hyst = apply_hysteresis(CS.out.cruiseState.speed, self.cruise_speed_with_hyst, CRUISE_SPEED_HYST_GAP / self.cruise_units) + if not CS.out.cruiseState.enabled: + self.cruise_speed_with_hyst = CS.out.vEgoCluster + + # acceleration target hysteresis - avoids entering / leaving hold stalk emulation to frequently, etc + self.accel_with_hyst = apply_hysteresis(actuators.accel, self.accel_with_hyst, ACCEL_HYST_GAP) + + + # *** desired speed model *** + # detect filtered acceleration sign change and reset speed calc on change + accel_zero_cross = self.accel_with_hyst * self.accel_with_hyst_last < 0 + self.accel_with_hyst_last = self.accel_with_hyst + if accel_zero_cross or not CC.enabled or CS.out.gasPressed: + self.calc_desired_speed = CS.out.vEgoCluster + self.calc_desired_speed = self.calc_desired_speed + actuators.accel * DT_CTRL + speed_err_req = (self.calc_desired_speed - self.cruise_speed_with_hyst) * self.cruise_units + speed_err_act = self.calc_desired_speed - CS.out.vEgoCluster + + # detect incoming CruiseControlStalk message by observing counter change (message arrives at only 5Hz when nothing pressed) + if CS.cruise_stalk_counter != self.rx_cruise_stalk_counter_last: + self.tx_cruise_stalk_counter_last = CS.cruise_stalk_counter + # stock message was sent some time in between control samples: + self.last_cruise_rx_timestamp = now_nanos + self.rx_cruise_stalk_counter_last = CS.cruise_stalk_counter + + + + + + # *** send cruise control stalk message at different rates and manage counters *** + def cruise_cmd(cmd, hold=False): + time_since_cruise_sent = (now_nanos - self.last_cruise_tx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency + time_since_cruise_received = (now_nanos - self.last_cruise_rx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency + # send single cmd with an effective rate slower than held stalk rate + if not hold: + send = time_since_cruise_sent > CRUISE_STALK_SINGLE_TICK \ + and time_since_cruise_received > CRUISE_STALK_HOLD_TICK_STOCK/2 - DT_CTRL \ + and time_since_cruise_received < CRUISE_STALK_IDLE_TICK_STOCK/2 + DT_CTRL + else: + # use faster rate to emulate held stalk. Time first message such that subsequent one will nullify stock message: + send = hold and time_since_cruise_sent > CRUISE_STALK_HOLD_TICK + if send: + tx_cruise_stalk_counter = self.tx_cruise_stalk_counter_last + 1 + # avoid counter clash with a potential upcoming message from stock cruise + if tx_cruise_stalk_counter == CS.cruise_stalk_counter + 1: + # avoid clashing with upcoming stock message + # sometimes upcoming stock message is overshadowed by us, so also avoid clashing with one after that + tx_cruise_stalk_counter = tx_cruise_stalk_counter + 2 + tx_cruise_stalk_counter = tx_cruise_stalk_counter % 0xF + can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) + self.tx_cruise_stalk_counter_last = tx_cruise_stalk_counter + self.last_cruise_tx_timestamp = now_nanos + + # *** cruise control cancel signal *** + # CC.cruiseControl.cancel can't be used because it is always false because pcmCruise = False because we need OP speed tracker + # CC.enabled appears after cruiseState.enabled, so we need to check rising edge to prevent instantaneous cancel after cruise is enabled + # This is because CC.enabled comes from controld and CS.out.cruiseState.enabled is from card threads + if not CC.enabled and self.cruise_enabled_prev: + self.cruise_cancel = True + # if we need to go below cruise speed, request cancel and coast while steering turns off softly + if (CS.out.cruiseState.speedCluster - self.min_cruise_speed) < 0.1 and actuators.accel < -0.1 \ + and speed_err_act < -1 and CS.out.vEgoCluster - self.min_cruise_speed < 0.4: + self.cruise_cancel = True + # keep requesting cancel until the cruise is disabled + if not CS.out.cruiseState.enabled: + self.cruise_cancel = False + + cruise_stalk_human_pressing = CS.cruise_stalk_resume or CS.cruise_stalk_cancel or CS.cruise_stalk_speed != 0 + + if not cruise_stalk_human_pressing and CS.out.cruiseState.enabled: + if self.cruise_cancel: + cruise_cmd(CruiseStalk.cancel) + print("cancel") + elif CC.enabled: + if (self.accel_with_hyst > ACCEL_HOLD_STRONG or (self.accel_with_hyst > ACCEL_HOLD_MEDIUM and speed_err_act > 3.0)) \ + and not speed_err_req < -10*CV.KPH_TO_MS*self.cruise_units: + cruise_cmd(CruiseStalk.plus5, hold=True) # produces up to 1.2 m/s2 + elif (self.accel_with_hyst < DECEL_HOLD_STRONG or (self.accel_with_hyst < DECEL_HOLD_MEDIUM and speed_err_act < -3.0)) \ + and not speed_err_req > 10*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus5, hold=True) # produces down to -1.4 m/s2 + elif (self.accel_with_hyst > ACCEL_HOLD_MEDIUM or speed_err_act > 2.0) \ + and not speed_err_req < -5*CV.KPH_TO_MS*self.cruise_units: + cruise_cmd(CruiseStalk.plus1, hold=True) # produces up to 0.8 m/s2 + elif (self.accel_with_hyst < DECEL_HOLD_MEDIUM or speed_err_act < -2.0) \ + and not speed_err_req > 5*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus1, hold=True) # produces down to -0.8 m/s2 + elif speed_err_req > max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and (self.accel_with_hyst > 0.0 or CS.out.gasPressed): + cruise_cmd(CruiseStalk.plus1) + elif speed_err_req < -max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and self.accel_with_hyst < 0.0 and not CS.out.gasPressed: + cruise_cmd(CruiseStalk.minus1) + + + + if self.flags & BmwFlags.STEPPER_SERVO_CAN: + steer_error = not CC.latActive and CC.enabled + if not steer_error: # don't send steer CAN tx if steering is unavailable + # *** apply steering torque *** + if CC.enabled: + new_steer = actuators.steer * CarControllerParams.STEER_MAX + # explicitly clip torque before sending on CAN + apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, + CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, + CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) + apply_steer = CS.out.steeringTorqueEps + else: + apply_steer = 0 + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) + self.apply_steer_last = apply_steer + + # debug + if CC.enabled and (self.frame % 10) == 0: #slow print + frame_number = self.frame + print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + + self.cruise_enabled_prev = CC.enabled + + new_actuators = actuators.as_builder() + new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX + new_actuators.steerOutputCan = self.apply_steer_last + + new_actuators.speed = self.calc_desired_speed + new_actuators.accel = speed_err_req + + self.frame += 1 + return new_actuators, can_sends diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py new file mode 100644 index 0000000000..cfd0af4224 --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -0,0 +1,189 @@ +from cereal import car +from opendbc.can.can_define import CANDefine +from opendbc.can.parser import CANParser +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.interfaces import CarStateBase +from opendbc.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings + +class CarState(CarStateBase): + def __init__(self, CP): + super().__init__(CP) + can_define = CANDefine(DBC[CP.carFingerprint]['pt']) + self.shifter_values = can_define.dv["TransmissionDataDisplay"]['ShiftLeverPosition'] + self.steer_angle_delta = 0. + self.gas_kickdown = False + + self.cluster_min_speed = CruiseSettings.CLUSTER_OFFSET + + self.is_metric = None + self.cruise_stalk_speed = 0 + self.cruise_stalk_resume = False + self.cruise_stalk_cancel = False + self.cruise_stalk_cancel_up = False + self.cruise_stalk_cancel_dn = False + self.cruise_stalk_counter = 0 + self.prev_cruise_stalk_speed = 0 + self.prev_cruise_stalk_resume = self.cruise_stalk_resume + self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel + + self.right_blinker_pressed = False + self.left_blinker_pressed = False + self.other_buttons = False + self.prev_gas_pressed = False + self.dtc_mode = False + + def update(self, cp_PT, cp_F, cp_aux): + # set these prev states at the beginning because they are used outside the update() + self.prev_cruise_stalk_speed = self.cruise_stalk_speed + self.prev_cruise_stalk_resume = self.cruise_stalk_resume + self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel + + ret = car.CarState.new_message() + + ret.doorOpen = False # not any([cp.vl["SEATS_DOORS"]['DOOR_OPEN_FL'], cp.vl["SEATS_DOORS"]['DOOR_OPEN_FR'] + ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] + + ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 + ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 + ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] + # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop + ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 + self.gas_kickdown = cp_PT.vl['AccPedal']["KickDownPressed"] != 0 #BMW has kickdown button at the bottom of the pedal + + ret.wheelSpeeds = self.get_wheel_speeds( + cp_PT.vl["WheelSpeeds"]["Wheel_FL"], + cp_PT.vl["WheelSpeeds"]["Wheel_FR"], + cp_PT.vl["WheelSpeeds"]["Wheel_RL"], + cp_PT.vl["WheelSpeeds"]["Wheel_RR"], + ) + ret.vEgoRaw = cp_PT.vl['Speed']["VehicleSpeed"] * CV.KPH_TO_MS + ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) + ret.vEgoCluster = ret.vEgo + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS + ret.standstill = not cp_PT.vl['Speed']["MovingForward"] and not cp_PT.vl['Speed']["MovingReverse"] + ret.yawRate = cp_PT.vl['Speed']["YawRate"] * CV.DEG_TO_RAD + ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] + can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) + ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) + blinker_on = cp_PT.vl["TurnSignals"]['TurnSignalActive'] != 0 and cp_PT.vl["TurnSignals"]['TurnSignalIdle'] == 0 + ret.leftBlinker = blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] !=0 # blinking + ret.rightBlinker = blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] !=0 # blinking + self.right_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] != 0 + self.left_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] != 0 + + self.dtc_mode = cp_PT.vl['StatusDSC_KCAN']['DTC_on'] != 0 # drifty traction control ;) + + # other buttons help determine driver is paying attention in case the face is not visible + self.other_buttons = \ + cp_PT.vl["SteeringButtons"]['Volume_DOWN'] !=0 or cp_PT.vl["SteeringButtons"]['Volume_UP'] !=0 or \ + cp_PT.vl["SteeringButtons"]['Previous_down'] !=0 or cp_PT.vl["SteeringButtons"]['Next_up'] !=0 or \ + cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or \ + self.prev_gas_pressed and not ret.gasPressed # treat gas pedal tap as a button - button events indicate driver engagement - useful if face not visible + + # E-series doesn't have torque sensor + # use Voice button or gas pedal to fake steeringPressed to confirm a lane change + ret.steeringPressed = cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or ret.gasPressed + if ret.steeringPressed and ret.leftBlinker: + ret.steeringTorque = 1 + elif ret.steeringPressed and ret.rightBlinker: + ret.steeringTorque = -1 + else: + ret.steeringTorque = 0 + + ret.espDisabled = cp_PT.vl['StatusDSC_KCAN']['DSC_full_off'] != 0 + ret.cruiseState.available = not ret.espDisabled #cruise not available when DSC fully off + ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch + + # Read openpilot engagement signal from CAN address 0x100 byte 0 + openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] + + cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] + if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC + ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 + # DCC implies that cruise control is done on F-CAN + # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages + cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] + elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) + ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 + + # Override enabled state with external engagement signal from 0x100 byte 0 + if openpilot_engage_signal != 0: + ret.cruiseState.enabled = True + + ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False + if cruise_control_stal_msg['plus1'] != 0: + self.cruise_stalk_speed = 1 + elif cruise_control_stal_msg['minus1'] != 0: + self.cruise_stalk_speed = -1 + elif cruise_control_stal_msg['plus5'] != 0: + self.cruise_stalk_speed = 5 + elif cruise_control_stal_msg['minus5'] != 0: + self.cruise_stalk_speed = -5 + else: + self.cruise_stalk_speed = 0 + self.cruise_stalk_resume = cruise_control_stal_msg['resume'] != 0 + self.cruise_stalk_cancel = cruise_control_stal_msg['cancel'] != 0 + self.cruise_stalk_cancel_up = cruise_control_stal_msg['cancel_lever_up'] != 0 + self.cruise_stalk_counter = cruise_control_stal_msg['Counter_0x194'] + self.cruise_stalk_cancel_dn = self.cruise_stalk_cancel and not self.cruise_stalk_cancel_up + + + ret.genericToggle = self.dtc_mode + + if self.CP.flags & BmwFlags.STEPPER_SERVO_CAN: + ret.steeringTorqueEps = cp_aux.vl['STEERING_STATUS']['STEERING_TORQUE'] + self.steer_angle_delta = cp_aux.vl['STEERING_STATUS']['STEERING_ANGLE'] + ret.steerFaultTemporary = int(cp_aux.vl['STEERING_STATUS']['CONTROL_STATUS']) & 0x4 != 0 + + self.prev_gas_pressed = ret.gasPressed + return ret + + @staticmethod + def get_can_parser(CP): #PT-CAN + messages = [ # message, frequency + ("EngineAndBrake", 100), + ("TransmissionDataDisplay", 5), + ("AccPedal", 100), + ("Speed", 50), + ("SteeringWheelAngle", 100), + ("TurnSignals", 0), + ("SteeringButtons", 0), + ("WheelSpeeds", 50), # 100 on F-CAN + ("CruiseControlStalk", 5), + ("StatusDSC_KCAN", 50), + ("Status_contact_handbrake", 0), + ("TerminalStatus", 10), + ("OpenpilotEngage", 10), + ] + + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages.append(("DynamicCruiseControlStatus", 5)) + if CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + messages.append(("CruiseControlStatus", 5)) + + return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.PT_CAN) # 0: PT-CAN + + @staticmethod # $540 vehicle option could use just PT_CAN, but $544 requires sending and receiving cruise commands on F-CAN. Use F-can. Works for both options + def get_F_can_parser(CP): + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages = [ # message, frequency + ("SteeringWheelAngle_DSC", 100), + ("CruiseControlStalk", 5), + ] + else: + messages = [] + + return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.F_CAN) + + @staticmethod + def get_actuator_can_parser(CP): + if CP.flags & BmwFlags.STEPPER_SERVO_CAN: + messages = [ # message, frequency + ("STEERING_STATUS", 100), + ] + else: + messages = [] + return CANParser('ocelot_controls', messages, CanBus.SERVO_CAN) diff --git a/opendbc_repo/opendbc/car/bmw/fingerprints.py b/opendbc_repo/opendbc/car/bmw/fingerprints.py new file mode 100644 index 0000000000..9cc35df895 --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/fingerprints.py @@ -0,0 +1,35 @@ +from opendbc.car.bmw.values import CAR + +BMW_E8x_E9x_common_per_bus = { + "PT-CAN": { + 256: 8, 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, + 209: 8,212: 8, 266: 6, 304: 5, 309: 2, 373: 3, 404: 4, 408: 5, 414: 8, 416: 8, 418: 8, 422: 8, 436: 8, 437: 7, 438: 7, 464: 8, 466: 6, 470: 2, 481: 6, + 502: 2, 514: 2, 538: 3, 550: 5, 570: 4, 578: 5, 594: 2, 678: 2, 690: 8, 691: 5, 704: 3, 719: 2, 722: 3, 753: 3, 758: 2, 760: 8, 762: 5, 764: 7, 784: 7, + 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, + 1152: 8, 1170: 8, 1175: 8, 1176: 8, 1193: 8, 1246: 8, 1408: 8, 1426: 8, 1432: 8, 1449: 8, 1472: 8, 1494: 8, 1504: 8, 1506: 8, 1517: 8, 1522: 8, 1528: 8 + }, + "STEPPER_SERVO_CAN": { + 559: 8 + } +} + +# Minimal fingerprint with just 0x200 (512 decimal) for car recognition +BMW_MINIMAL_FINGERPRINT = { + 512: 8, # 0x200 - all bytes FF for recognition +} + +BMW_E8x_E9x_common = {k: v for d in BMW_E8x_E9x_common_per_bus.values() for k, v in d.items()} # flatten + +FINGERPRINTS = { + CAR.BMW_E82: [ + BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition + {**BMW_E8x_E9x_common, 899: 4}, + {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 + ], + CAR.BMW_E90: [ + BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition + {**BMW_E8x_E9x_common, 899: 4}, + {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 + {**BMW_E8x_E9x_common}, # Full fingerprint for testing + ], +} diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py new file mode 100755 index 0000000000..2948807ff9 --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -0,0 +1,173 @@ +#!/usr/bin/env python3 +from cereal import car +from opendbc.car import create_button_events +from opendbc.car.helpers import interp +from opendbc.car.common.conversions import Conversions as CV +from opendbc.car import get_safety_config +from opendbc.car.bmw.values import CanBus, BmwFlags, CarControllerParams +from opendbc.car.interfaces import CarInterfaceBase + +ButtonType = car.CarState.ButtonEvent.Type +EventName = car.CarEvent.EventName +TransmissionType = car.CarParams.TransmissionType +GearShifter = car.CarState.GearShifter + +# certain driver intervention can be distinguished from maximum estimated wheel turning force +def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): + # when steering released (or lost steps), what angle will it return to + # if we are above that angle, we can detect things + release_angle = steer_friction_torque / (max(v_ego, 1) ** 2 * centering_coeff) + + override = False + margin_value = 1 + if abs(steer_cmd) > release_angle: # for higher angles we steering will not move outward by itself with stepper on + if steer_cmd > 0: + override |= steer_act - steer_cmd > margin_value # driver overrode from right to more right + override |= steer_act < 0 # releaseAngle -3 # driver overrode from right to opposite direction + else: + override |= steer_act - steer_cmd < -margin_value # driver overrode from left to more left + override |= steer_act > 0 # -releaseAngle +3 # driver overrode from left to opposite direction + # else: + # override |= abs(steerAct) > releaseAngle + marginVal # driver overrode to an angle where steering will not go by itself + return override + + +class CarInterface(CarInterfaceBase): + def __init__(self, CP, CarController, CarState): + super().__init__(CP, CarController, CarState) + + self.cp_F = self.CS.get_F_can_parser(CP) + self.can_parsers.append(self.cp_F) + self.cp_aux = self.CS.get_actuator_can_parser(CP) + self.can_parsers.append(self.cp_aux) + + @staticmethod + # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 + def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + return hold_torque # todo add speed component + + @staticmethod + def get_steer_feedforward(desired_angle, v_ego): + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + return hold_torque # todo add speed component + + def get_steer_feedforward_function(self): + if self.CP.flags & BmwFlags.SERVOTRONIC: + return self.get_steer_feedforward_servotronic + else: + return self.get_steer_feedforward + + @staticmethod + def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): + if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status + ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value + + ret.openpilotLongitudinalControl = False + ret.radarUnavailable = True + ret.pcmCruise = False # openpilot handles engagement via cruise stalk + + ret.autoResumeSng = False + if 0x200 in fingerprint[CanBus.PT_CAN]: # Enigne controls speed and reports cruise control status + ret.flags |= BmwFlags.NORMAL_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests + elif 0x193 in fingerprint[CanBus.PT_CAN]: # either DSC or LDM reports cruise control status + if 0x0D5 not in fingerprint[CanBus.PT_CAN]: # DSC itself applies brakes + ret.flags |= BmwFlags.DYNAMIC_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests on F-CAN + else: # LDM sends brake commands + ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_ACC.value # openpilot will switch between OP and LDM + ret.autoResumeSng = True #! hopefully + else: # DSC/DME not sending cruise status and LDM not present - openpilot will be the only requester + ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_LDM.value + ret.autoResumeSng = True #! hopefully + + if 0xb8 in fingerprint[CanBus.PT_CAN] or 0xb5 in fingerprint[CanBus.PT_CAN]: # transmission: engine torque requests + ret.transmissionType = TransmissionType.automatic + else: + ret.transmissionType = TransmissionType.manual + + # Detect all wheel drive BMW E90 XI + if 0xbc in fingerprint[CanBus.PT_CAN]: # XI has a transfer case + ret.steerRatio = 18.5 # XI has slower steering rack + + if ret.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: # DCC imperial has higher threshold + ret.minEnableSpeed = 0. * CV.KPH_TO_MS # if self.CS.is_metric else 20. * CV.MPH_TO_MS + if ret.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + ret.minEnableSpeed = 0. * CV.KPH_TO_MS + + ret.brand = "bmw" + ret.carName = "bmw" + ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] + + ret.steerControlType = car.CarParams.SteerControlType.torque + ret.steerActuatorDelay = 0.4 + ret.steerLimitTimer = 0.4 + + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 0.23 #live parameters + ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters + ret.lateralTuning.torque.useSteeringAngle = False + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? + + ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay + ret.longitudinalTuning.kpBP = [0.] + ret.longitudinalTuning.kpV = [.1] + ret.longitudinalTuning.kiBP = [0.] + ret.longitudinalTuning.kiV = [0.] + + ret.centerToFront = ret.wheelbase * 0.44 + + ret.startAccel = 0.0 + print("Controller: " + ret.lateralTuning.which()) + + # has_servotronic = False + # for fw in car_fw: # todo check JBBF firmware for $216A + # if fw.ecu == "eps" and b"," in fw.fwVersion: + # has_servotronic = True + + return ret + + def _update(self, c): + # ******************* do can recv ******************* + ret = self.CS.update(self.cp, self.cp_F, self.cp_aux) + + # events + events = self.create_common_events(ret, pcm_enable=False) + + # *** cruise control units detection *** + # when cruise is enabled the car sets cruiseState.speed = vEgo, so we can detect the ratio + # with resume this wouldn't work, but op will not engage on first resume anyway + if self.CS.is_metric is None and c.enabled and ret.vEgo > 0: + # note, when is_metric is None, cruiseState.speed is already scaled by CV.MPH_TO_MS by default + speed_ratio = ret.cruiseState.speed / ret.vEgo # 1 if imperial, 1.6 if metric + if 0.8 < speed_ratio < 1.2: + self.CS.is_metric = False + elif 0.8 * CV.MPH_TO_KPH < speed_ratio < 1.2 * CV.MPH_TO_KPH: + self.CS.is_metric = True + else: + events.add(EventName.accFaulted) + + + ret.buttonEvents = [ + *create_button_events(self.CS.cruise_stalk_speed > 0, self.CS.prev_cruise_stalk_speed > 0, {1: ButtonType.accelCruise}), + *create_button_events(self.CS.cruise_stalk_speed < 0, self.CS.prev_cruise_stalk_speed < 0, {1: ButtonType.decelCruise}), + *create_button_events(self.CS.cruise_stalk_cancel, self.CS.prev_cruise_stalk_cancel, {1: ButtonType.cancel}), + *create_button_events(self.CS.other_buttons, not self.CS.other_buttons, {1: ButtonType.altButton1}), + *create_button_events(self.CS.cruise_stalk_resume, self.CS.prev_cruise_stalk_resume, { + 1: ButtonType.resumeCruise if not c.enabled else ButtonType.gapAdjustCruise}) # repurpose resume button to adjust driver personality when engaged + ] + + if ret.vEgoCluster < self.CP.minEnableSpeed: + events.add(EventName.belowEngageSpeed) + if c.actuators.accel > 0.2: + events.add(EventName.speedTooLow) # can't restart cruise anymore + + ret.events = events.to_msg() + + return ret diff --git a/opendbc_repo/opendbc/car/bmw/radar_interface.py b/opendbc_repo/opendbc/car/bmw/radar_interface.py new file mode 100644 index 0000000000..6e552bf618 --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/radar_interface.py @@ -0,0 +1,4 @@ +from opendbc.car.interfaces import RadarInterfaceBase + +class RadarInterface(RadarInterfaceBase): + pass diff --git a/opendbc_repo/opendbc/car/bmw/tests/__init__.py b/opendbc_repo/opendbc/car/bmw/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/opendbc_repo/opendbc/car/bmw/tests/test_bmw.py b/opendbc_repo/opendbc/car/bmw/tests/test_bmw.py new file mode 100644 index 0000000000..dcbe8c239d --- /dev/null +++ b/opendbc_repo/opendbc/car/bmw/tests/test_bmw.py @@ -0,0 +1,37 @@ +from parameterized import parameterized + +from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS + +N55_ENGINE_MSG = {899: 4} +N52_ENGINE_MSG = {899: 2} +CRUISE_STATUS_MSG = {0x200: 8} +DYNAMIC_CRUISE_STATUS_MSG = {0x193: 8} +STEPPER_MSG = {0x22F: 8} + + + + +class TestBMWFingerprint: + @parameterized.expand(FINGERPRINTS.items()) + def test_can_fingerprints(self, car_model, fingerprints): + assert len(fingerprints) > 0 + + assert all(len(finger) for finger in fingerprints) + + for car_config in ((STEPPER_MSG, N55_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), + (STEPPER_MSG, N52_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), + (N55_ENGINE_MSG, CRUISE_STATUS_MSG, DYNAMIC_CRUISE_STATUS_MSG), + ): + failed_fingers = {} + for i, finger in enumerate(fingerprints): + failed_addrs = [] + for msg in (car_config): + for addr, length in msg.items(): + found_length = finger.get(addr) + if found_length != length: + failed_addrs.append((addr, length, found_length)) + if failed_addrs: + failed_fingers[i] = failed_addrs + + if len(failed_fingers) == len(fingerprints): + raise AssertionError(f"All {len(fingerprints)} fingerprints failed: {failed_fingers}") diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index d672e7e8c2..9ba58da8bb 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -3,7 +3,7 @@ from cereal import car from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.common.conversions import Conversions as CV +from opendbc.car.conversions import Conversions as CV # Steer torque limits class CarControllerParams: #controls running @ 100hz diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index a846a743ea..7b640656c4 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -20,11 +20,7 @@ def load_interfaces(brand_names): ret = {} for brand_name in brand_names: - # BMW is in selfdrive, not opendbc - if brand_name == 'bmw': - path = f'openpilot.selfdrive.car.{brand_name}' - else: - path = f'opendbc.car.{brand_name}' + path = f'opendbc.car.{brand_name}' try: CarInterface = __import__(path + '.interface', fromlist=['CarInterface']).CarInterface for model_name in brand_names[brand_name]: @@ -179,10 +175,7 @@ def find_car(name: str): from opendbc.car.gm.values import CAR as GM from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.mazda.values import CAR as MAZDA - try: - from openpilot.selfdrive.car.bmw.values import CAR as BMW - except ImportError: - BMW = [] + from opendbc.car.bmw.values import CAR as BMW for platform in GM: for doc in platform.config.car_docs: if name == doc.name: diff --git a/opendbc_repo/opendbc/car/fingerprints.py b/opendbc_repo/opendbc/car/fingerprints.py index a3d5227b25..6725fc7877 100644 --- a/opendbc_repo/opendbc/car/fingerprints.py +++ b/opendbc_repo/opendbc/car/fingerprints.py @@ -11,17 +11,11 @@ from opendbc.car.subaru.values import CAR as SUBARU from opendbc.car.toyota.values import CAR as TOYOTA from opendbc.car.volkswagen.values import CAR as VW +from opendbc.car.bmw.values import CAR as BMW FW_VERSIONS = get_interface_attr('FW_VERSIONS', combine_brands=True, ignore_none=True) _FINGERPRINTS = get_interface_attr('FINGERPRINTS', combine_brands=True, ignore_none=True) -# Add BMW fingerprints from selfdrive (not in opendbc yet) -try: - from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS as BMW_FINGERPRINTS - _FINGERPRINTS.update(BMW_FINGERPRINTS) -except ImportError: - pass - _DEBUG_ADDRESS = {1880: 8} # reserved for debug purposes From 808eb98943a27661bf8b6f108e0f98dd4214254a Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:24:41 +0100 Subject: [PATCH 025/155] fix --- opendbc_repo/opendbc/car/bmw/values.py | 2 +- opendbc_repo/opendbc/car/car_helpers.py | 55 ++++--------------------- 2 files changed, 9 insertions(+), 48 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index 9ba58da8bb..d672e7e8c2 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -3,7 +3,7 @@ from cereal import car from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.conversions import Conversions as CV +from opendbc.car.common.conversions import Conversions as CV # Steer torque limits class CarControllerParams: #controls running @ 100hz diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index 7b640656c4..6d2a91d62b 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -156,53 +156,14 @@ def fingerprint(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_mu def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multiplexing: ObdCallback, alpha_long_allowed: bool, is_release: bool, num_pandas: int = 1, cached_params: CarParamsT | None = None): - candidate, fingerprints, vin, car_fw, source, exact_match = fingerprint(can_recv, can_send, set_obd_multiplexing, num_pandas, cached_params) - - if candidate is None: - carlog.error({"event": "car doesn't match any fingerprints", "fingerprints": repr(fingerprints)}) - candidate = "MOCK" - - # Force BMW car selection if not already set - selected_car = Params().get("CarSelected3") - if not selected_car: - # Default to BMW E90 on first boot - Params().put("CarSelected3", "BMW_E90") - selected_car = b"BMW_E90" - - if selected_car: - def find_car(name: str): - from opendbc.car.hyundai.values import CAR as HYUNDAI - from opendbc.car.gm.values import CAR as GM - from opendbc.car.toyota.values import CAR as TOYOTA - from opendbc.car.mazda.values import CAR as MAZDA - from opendbc.car.bmw.values import CAR as BMW - for platform in GM: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in TOYOTA: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in HYUNDAI: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in MAZDA: - for doc in platform.config.car_docs: - if name == doc.name: - return platform - for platform in BMW: - # Check both platform name and doc names - if name == str(platform): - return platform - for doc in platform.config.car_docs: - if name == doc.name: - return platform - return None - found_car = find_car(selected_car.decode() if isinstance(selected_car, bytes) else selected_car) - if found_car is not None: - candidate = found_car + # Force BMW - skip fingerprinting + from opendbc.car.bmw.values import CAR as BMW + candidate = BMW.BMW_E90 + fingerprints = {} + vin = "" + car_fw = [] + source = "forced" + exact_match = False print(f"SelectedCar = {candidate}") Params().put("CarName", str(candidate)) From 172d2b53855005c4ed9a6001eeaabd4dc939b3f4 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:26:29 +0100 Subject: [PATCH 026/155] fix --- opendbc_repo/opendbc/car/car_helpers.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index 6d2a91d62b..452678e130 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -158,6 +158,8 @@ def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multip is_release: bool, num_pandas: int = 1, cached_params: CarParamsT | None = None): # Force BMW - skip fingerprinting from opendbc.car.bmw.values import CAR as BMW + from opendbc.car.bmw.interface import CarInterface as BMWCarInterface + candidate = BMW.BMW_E90 fingerprints = {} vin = "" @@ -169,7 +171,9 @@ def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multip Params().put("CarName", str(candidate)) Params().put("FingerPrints", str(fingerprints)) - CarInterface = interfaces[candidate] + + # Use BMW interface directly + CarInterface = BMWCarInterface CP: CarParams = CarInterface.get_params(candidate, fingerprints, car_fw, alpha_long_allowed, is_release, docs=False) CP.carVin = vin CP.carFw = car_fw From 17d6a18f5a6da905a41d7efd811be3bf66fdcf68 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:28:32 +0100 Subject: [PATCH 027/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 2948807ff9..89a45d4e28 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 +import numpy as np from cereal import car from opendbc.car import create_button_events -from opendbc.car.helpers import interp from opendbc.car.common.conversions import Conversions as CV from opendbc.car import get_safety_config from opendbc.car.bmw.values import CanBus, BmwFlags, CarControllerParams @@ -46,7 +46,7 @@ def __init__(self, CP, CarController, CarState): def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + hold_torque = np.interp(desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component @staticmethod From 5394c6c9a9ec02633e0e140097ff51c1eaad1e98 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:31:35 +0100 Subject: [PATCH 028/155] fix --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 4 ++-- opendbc_repo/opendbc/car/bmw/carstate.py | 2 +- opendbc_repo/opendbc/car/bmw/interface.py | 15 ++++++++------- opendbc_repo/opendbc/car/bmw/values.py | 2 +- 4 files changed, 12 insertions(+), 11 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index bca4ef8059..3804d1bde6 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -1,4 +1,4 @@ -from cereal import car +from cereal import car as car_capnp from opendbc.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis from opendbc.car.bmw import bmwcan from opendbc.car.bmw.bmwcan import SteeringModes, CruiseStalk @@ -7,7 +7,7 @@ from opendbc.can.packer import CANPacker from opendbc.car.common.conversions import Conversions as CV -VisualAlert = car.CarControl.HUDControl.VisualAlert +VisualAlert = car_capnp.CarControl.HUDControl.VisualAlert # DO NOT CHANGE: Cruise control step size CC_STEP = 1 # cruise single click jump - always 1 - interpreted as km or miles depending on DSC or DME set units diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index cfd0af4224..a88152d9ae 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -1,4 +1,4 @@ -from cereal import car +from cereal import car as car_capnp from opendbc.can.can_define import CANDefine from opendbc.can.parser import CANParser from opendbc.car.common.conversions import Conversions as CV diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 89a45d4e28..cc9d4d69a5 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -1,16 +1,17 @@ #!/usr/bin/env python3 import numpy as np -from cereal import car +import cereal.messaging as messaging +from cereal import car as car_capnp from opendbc.car import create_button_events from opendbc.car.common.conversions import Conversions as CV from opendbc.car import get_safety_config from opendbc.car.bmw.values import CanBus, BmwFlags, CarControllerParams from opendbc.car.interfaces import CarInterfaceBase -ButtonType = car.CarState.ButtonEvent.Type -EventName = car.CarEvent.EventName -TransmissionType = car.CarParams.TransmissionType -GearShifter = car.CarState.GearShifter +ButtonType = car_capnp.CarState.ButtonEvent.Type +EventName = car_capnp.CarEvent.EventName +TransmissionType = car_capnp.CarParams.TransmissionType +GearShifter = car_capnp.CarState.GearShifter # certain driver intervention can be distinguished from maximum estimated wheel turning force def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): @@ -100,9 +101,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.brand = "bmw" ret.carName = "bmw" - ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] + ret.safetyConfigs = [get_safety_config(car_capnp.CarParams.SafetyModel.bmw)] - ret.steerControlType = car.CarParams.SteerControlType.torque + ret.steerControlType = car_capnp.CarParams.SteerControlType.torque ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index d672e7e8c2..3789ae41e6 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -1,6 +1,6 @@ from dataclasses import dataclass, field from enum import Enum, IntFlag -from cereal import car +from cereal import car as car_capnp from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column from opendbc.car.common.conversions import Conversions as CV From 1f1de135b28029f3c64f5edf77673d8cafb50e4b Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:31:48 +0100 Subject: [PATCH 029/155] fix --- opendbc_repo/opendbc/car/bmw/values.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index 3789ae41e6..cbdc6c57e4 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -59,7 +59,7 @@ class BmwCarDocs(CarDocs): package: str = "Cruise Control - VO540, VO544, VO541" footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) - def init_make(self, CP: car.CarParams): + def init_make(self, CP: car_capnp.CarParams): self.car_parts = CarParts.common([CarHarness.custom]) @dataclass From 6762a89b86403e4bad29d341e9f99fd811d83843 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:33:19 +0100 Subject: [PATCH 030/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index cc9d4d69a5..342841d4fd 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -1,17 +1,16 @@ #!/usr/bin/env python3 import numpy as np import cereal.messaging as messaging -from cereal import car as car_capnp -from opendbc.car import create_button_events +from opendbc.car import create_button_events, structs from opendbc.car.common.conversions import Conversions as CV from opendbc.car import get_safety_config from opendbc.car.bmw.values import CanBus, BmwFlags, CarControllerParams from opendbc.car.interfaces import CarInterfaceBase -ButtonType = car_capnp.CarState.ButtonEvent.Type -EventName = car_capnp.CarEvent.EventName -TransmissionType = car_capnp.CarParams.TransmissionType -GearShifter = car_capnp.CarState.GearShifter +ButtonType = structs.CarState.ButtonEvent.Type +EventName = structs.CarEvent.EventName +TransmissionType = structs.CarParams.TransmissionType +GearShifter = structs.CarState.GearShifter # certain driver intervention can be distinguished from maximum estimated wheel turning force def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): @@ -101,9 +100,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.brand = "bmw" ret.carName = "bmw" - ret.safetyConfigs = [get_safety_config(car_capnp.CarParams.SafetyModel.bmw)] + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.bmw)] - ret.steerControlType = car_capnp.CarParams.SteerControlType.torque + ret.steerControlType = structs.CarParams.SteerControlType.torque ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 From 4d6bfede60b39057f3559a91509c9eb05b63a155 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:35:34 +0100 Subject: [PATCH 031/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 342841d4fd..95e4466f29 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -1,6 +1,6 @@ #!/usr/bin/env python3 import numpy as np -import cereal.messaging as messaging +from cereal import log from opendbc.car import create_button_events, structs from opendbc.car.common.conversions import Conversions as CV from opendbc.car import get_safety_config @@ -8,7 +8,7 @@ from opendbc.car.interfaces import CarInterfaceBase ButtonType = structs.CarState.ButtonEvent.Type -EventName = structs.CarEvent.EventName +EventName = log.OnroadEvent.EventName TransmissionType = structs.CarParams.TransmissionType GearShifter = structs.CarState.GearShifter From 87d74a3174d17a2be31d88ae0c7713be0fad7d35 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:37:31 +0100 Subject: [PATCH 032/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 95e4466f29..34d9418e44 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -63,7 +63,7 @@ def get_steer_feedforward_function(self): return self.get_steer_feedforward @staticmethod - def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): + def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_release, docs): if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value From 7f1f4b669c8802109f9593c74d30bb7fff8f61d9 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:39:12 +0100 Subject: [PATCH 033/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 34d9418e44..ecd1fb9443 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -64,7 +64,11 @@ def get_steer_feedforward_function(self): @staticmethod def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_release, docs): - if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status + # Handle empty fingerprint (when forcing BMW) + if not fingerprint: + fingerprint = {CanBus.PT_CAN: {}, CanBus.SERVO_CAN: {}, CanBus.F_CAN: {}} + + if 0x22F in fingerprint.get(CanBus.SERVO_CAN, {}): # Enigne controls speed and reports cruise control status ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value ret.openpilotLongitudinalControl = False @@ -72,10 +76,10 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.pcmCruise = False # openpilot handles engagement via cruise stalk ret.autoResumeSng = False - if 0x200 in fingerprint[CanBus.PT_CAN]: # Enigne controls speed and reports cruise control status + if 0x200 in fingerprint.get(CanBus.PT_CAN, {}): # Enigne controls speed and reports cruise control status ret.flags |= BmwFlags.NORMAL_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests - elif 0x193 in fingerprint[CanBus.PT_CAN]: # either DSC or LDM reports cruise control status - if 0x0D5 not in fingerprint[CanBus.PT_CAN]: # DSC itself applies brakes + elif 0x193 in fingerprint.get(CanBus.PT_CAN, {}): # either DSC or LDM reports cruise control status + if 0x0D5 not in fingerprint.get(CanBus.PT_CAN, {}): # DSC itself applies brakes ret.flags |= BmwFlags.DYNAMIC_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests on F-CAN else: # LDM sends brake commands ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_ACC.value # openpilot will switch between OP and LDM From 30bbf6482830592916c2cc3b5d2b3032c383b48a Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:40:33 +0100 Subject: [PATCH 034/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 1 - 1 file changed, 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index ecd1fb9443..6f6d43056e 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -103,7 +103,6 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.minEnableSpeed = 0. * CV.KPH_TO_MS ret.brand = "bmw" - ret.carName = "bmw" ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.bmw)] ret.steerControlType = structs.CarParams.SteerControlType.torque From b9bf6e758b77b774b16786b3aaf992b8e891f8ac Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:43:52 +0100 Subject: [PATCH 035/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 6f6d43056e..ac414ebfa0 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -53,7 +53,7 @@ def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for stee def get_steer_feedforward(desired_angle, v_ego): angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = interp(desired_angle, angle_bp, hold_torque_v) + hold_torque = np.interp(desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component def get_steer_feedforward_function(self): @@ -88,13 +88,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_LDM.value ret.autoResumeSng = True #! hopefully - if 0xb8 in fingerprint[CanBus.PT_CAN] or 0xb5 in fingerprint[CanBus.PT_CAN]: # transmission: engine torque requests + if 0xb8 in fingerprint.get(CanBus.PT_CAN, {}) or 0xb5 in fingerprint.get(CanBus.PT_CAN, {}): # transmission: engine torque requests ret.transmissionType = TransmissionType.automatic else: ret.transmissionType = TransmissionType.manual # Detect all wheel drive BMW E90 XI - if 0xbc in fingerprint[CanBus.PT_CAN]: # XI has a transfer case + if 0xbc in fingerprint.get(CanBus.PT_CAN, {}): # XI has a transfer case ret.steerRatio = 18.5 # XI has slower steering rack if ret.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: # DCC imperial has higher threshold From 304594a9b503329d76053c213c72686c99e9cd7c Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:45:42 +0100 Subject: [PATCH 036/155] fix --- opendbc_repo/opendbc/car/car_helpers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/car_helpers.py b/opendbc_repo/opendbc/car/car_helpers.py index 452678e130..3b4db0097f 100644 --- a/opendbc_repo/opendbc/car/car_helpers.py +++ b/opendbc_repo/opendbc/car/car_helpers.py @@ -164,7 +164,7 @@ def get_car(can_recv: CanRecvCallable, can_send: CanSendCallable, set_obd_multip fingerprints = {} vin = "" car_fw = [] - source = "forced" + source = "fixed" exact_match = False print(f"SelectedCar = {candidate}") From 5882aec12fde17a6d1196ff513a911ba35825751 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:47:25 +0100 Subject: [PATCH 037/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index ac414ebfa0..1a8a87e45a 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -33,8 +33,8 @@ def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_ class CarInterface(CarInterfaceBase): - def __init__(self, CP, CarController, CarState): - super().__init__(CP, CarController, CarState) + def __init__(self, CP): + super().__init__(CP) self.cp_F = self.CS.get_F_can_parser(CP) self.can_parsers.append(self.cp_F) From f5346174cc191115a38652bf12cd1a76c2746523 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:49:54 +0100 Subject: [PATCH 038/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 1a8a87e45a..69c65f9906 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -4,6 +4,8 @@ from opendbc.car import create_button_events, structs from opendbc.car.common.conversions import Conversions as CV from opendbc.car import get_safety_config +from opendbc.car.bmw.carstate import CarState +from opendbc.car.bmw.carcontroller import CarController from opendbc.car.bmw.values import CanBus, BmwFlags, CarControllerParams from opendbc.car.interfaces import CarInterfaceBase From c0434ee11b7987ff7af898484f8654eeff9a96b5 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:51:15 +0100 Subject: [PATCH 039/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index a88152d9ae..c50ed0fa87 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -1,6 +1,5 @@ from cereal import car as car_capnp -from opendbc.can.can_define import CANDefine -from opendbc.can.parser import CANParser +from opendbc.can import CANDefine, CANParser from opendbc.car.common.conversions import Conversions as CV from opendbc.car.interfaces import CarStateBase from opendbc.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings From 159ac6bca65671945ea799519db33edeeaab1ed8 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:52:36 +0100 Subject: [PATCH 040/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 69c65f9906..70bf581535 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -35,6 +35,9 @@ def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_ class CarInterface(CarInterfaceBase): + CarState = CarState + CarController = CarController + def __init__(self, CP): super().__init__(CP) From 1ffc0cb82ddd93df0064fc28b73bb07337c49446 Mon Sep 17 00:00:00 2001 From: akkount Date: Wed, 28 Jan 2026 23:57:02 +0100 Subject: [PATCH 041/155] fix --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 3804d1bde6..7dfcfeb8d1 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -26,8 +26,8 @@ DECEL_HOLD_STRONG = -1.2 class CarController(CarControllerBase): - def __init__(self, dbc_name, CP): - super().__init__(dbc_name, CP) + def __init__(self, dbc_names, CP): + super().__init__(dbc_names, CP) self.flags = CP.flags self.min_cruise_speed = CP.minEnableSpeed self.cruise_units = None @@ -50,7 +50,7 @@ def __init__(self, dbc_name, CP): self.cruise_bus = CanBus.F_CAN - self.packer = CANPacker(dbc_name) + self.packer = CANPacker(dbc_names[CanBus.PT_CAN]) def update(self, CC, CS, now_nanos): From f2065e1b137f06e362a80fec6b38d308cf55a6bb Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:02:04 +0100 Subject: [PATCH 042/155] fix --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 4 +-- opendbc_repo/opendbc/car/bmw/carstate.py | 28 +++++++++++++++++++ 2 files changed, 30 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 7dfcfeb8d1..e5cf4f33df 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -1,5 +1,5 @@ from cereal import car as car_capnp -from opendbc.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis +from opendbc.car import Bus, DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis from opendbc.car.bmw import bmwcan from opendbc.car.bmw.bmwcan import SteeringModes, CruiseStalk from opendbc.car.bmw.values import CarControllerParams, CanBus, BmwFlags @@ -50,7 +50,7 @@ def __init__(self, dbc_names, CP): self.cruise_bus = CanBus.F_CAN - self.packer = CANPacker(dbc_names[CanBus.PT_CAN]) + self.packer = CANPacker(dbc_names[Bus.pt]) def update(self, CC, CS, now_nanos): diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index c50ed0fa87..b4ab992b30 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -1,5 +1,6 @@ from cereal import car as car_capnp from opendbc.can import CANDefine, CANParser +from opendbc.car import Bus from opendbc.car.common.conversions import Conversions as CV from opendbc.car.interfaces import CarStateBase from opendbc.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings @@ -140,6 +141,33 @@ def update(self, cp_PT, cp_F, cp_aux): self.prev_gas_pressed = ret.gasPressed return ret + @staticmethod + def get_can_parsers(CP): + messages = [ # message, frequency + ("EngineAndBrake", 100), + ("TransmissionDataDisplay", 5), + ("AccPedal", 100), + ("Speed", 50), + ("SteeringWheelAngle", 100), + ("TurnSignals", 0), + ("SteeringButtons", 0), + ("WheelSpeeds", 50), # 100 on F-CAN + ("CruiseControlStalk", 5), + ("StatusDSC_KCAN", 50), + ("Status_contact_handbrake", 0), + ("TerminalStatus", 10), + ("OpenpilotEngage", 10), + ] + + if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: + messages.append(("DynamicCruiseControlStatus", 5)) + if CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: + messages.append(("CruiseControlStatus", 5)) + + return { + Bus.pt: CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.PT_CAN), + } + @staticmethod def get_can_parser(CP): #PT-CAN messages = [ # message, frequency From ed655d164109423058512dc8a207cb492fdcfedf Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:04:10 +0100 Subject: [PATCH 043/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index b4ab992b30..9a90627200 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -96,14 +96,14 @@ def update(self, cp_PT, cp_F, cp_aux): # Read openpilot engagement signal from CAN address 0x100 byte 0 openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] + cruise_control_stal_msg = cp_PT.vl["CruiseControl"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 # DCC implies that cruise control is done on F-CAN # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages - cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] + cruise_control_stal_msg = cp_F.vl["CruiseControl"] elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) @@ -152,7 +152,7 @@ def get_can_parsers(CP): ("TurnSignals", 0), ("SteeringButtons", 0), ("WheelSpeeds", 50), # 100 on F-CAN - ("CruiseControlStalk", 5), + ("CruiseControl", 5), ("StatusDSC_KCAN", 50), ("Status_contact_handbrake", 0), ("TerminalStatus", 10), @@ -179,7 +179,7 @@ def get_can_parser(CP): #PT-CAN ("TurnSignals", 0), ("SteeringButtons", 0), ("WheelSpeeds", 50), # 100 on F-CAN - ("CruiseControlStalk", 5), + ("CruiseControl", 5), ("StatusDSC_KCAN", 50), ("Status_contact_handbrake", 0), ("TerminalStatus", 10), @@ -198,7 +198,7 @@ def get_F_can_parser(CP): if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: messages = [ # message, frequency ("SteeringWheelAngle_DSC", 100), - ("CruiseControlStalk", 5), + ("CruiseControl", 5), ] else: messages = [] From cac36190823ab687fe54c2128e43dd17e96753ba Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:06:12 +0100 Subject: [PATCH 044/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 5 ++++- opendbc_repo/opendbc/car/bmw/interface.py | 7 +++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 9a90627200..b4ca1d9e00 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -32,7 +32,10 @@ def __init__(self, CP): self.prev_gas_pressed = False self.dtc_mode = False - def update(self, cp_PT, cp_F, cp_aux): + def update(self, can_parsers): + cp_PT = can_parsers[Bus.pt] + cp_F = can_parsers.get(Bus.cam) + cp_aux = can_parsers.get(Bus.adas) # set these prev states at the beginning because they are used outside the update() self.prev_cruise_stalk_speed = self.cruise_stalk_speed self.prev_cruise_stalk_resume = self.cruise_stalk_resume diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 70bf581535..6ea8d9b54e 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -41,10 +41,9 @@ class CarInterface(CarInterfaceBase): def __init__(self, CP): super().__init__(CP) - self.cp_F = self.CS.get_F_can_parser(CP) - self.can_parsers.append(self.cp_F) - self.cp_aux = self.CS.get_actuator_can_parser(CP) - self.can_parsers.append(self.cp_aux) + # Add additional F-CAN and auxiliary parsers to the dictionary + self.can_parsers[Bus.cam] = self.CS.get_F_can_parser(CP) + self.can_parsers[Bus.adas] = self.CS.get_actuator_can_parser(CP) @staticmethod # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 From a9678ea6ce40b0850f702e13ca16e4a9ff5dc80a Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:07:37 +0100 Subject: [PATCH 045/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 6ea8d9b54e..76e636ac18 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 import numpy as np from cereal import log -from opendbc.car import create_button_events, structs +from opendbc.car import Bus, create_button_events, structs from opendbc.car.common.conversions import Conversions as CV from opendbc.car import get_safety_config from opendbc.car.bmw.carstate import CarState From 809033fe8c8f27eb271fe0f5eb495d4b2c9e8c84 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:09:13 +0100 Subject: [PATCH 046/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index b4ca1d9e00..c3c223b3bb 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -1,6 +1,6 @@ from cereal import car as car_capnp from opendbc.can import CANDefine, CANParser -from opendbc.car import Bus +from opendbc.car import Bus, structs from opendbc.car.common.conversions import Conversions as CV from opendbc.car.interfaces import CarStateBase from opendbc.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings @@ -41,7 +41,7 @@ def update(self, can_parsers): self.prev_cruise_stalk_resume = self.cruise_stalk_resume self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel - ret = car.CarState.new_message() + ret = structs.CarState() ret.doorOpen = False # not any([cp.vl["SEATS_DOORS"]['DOOR_OPEN_FL'], cp.vl["SEATS_DOORS"]['DOOR_OPEN_FR'] ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] From 3fc08760a42205b08c64071ef805c3289b72cdab Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:10:39 +0100 Subject: [PATCH 047/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index c3c223b3bb..a7233378a1 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -47,7 +47,7 @@ def update(self, can_parsers): ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 - ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 + ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_push"] != 0 ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 From ee66833c8aad3e49ff25ded1f1501672ef886baf Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:13:19 +0100 Subject: [PATCH 048/155] fix --- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 734 ++++++++++++----------- 1 file changed, 380 insertions(+), 354 deletions(-) diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index b891250554..ff8d052747 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -1,6 +1,5 @@ VERSION "" - NS_ : NS_DESC_ CM_ @@ -33,347 +32,146 @@ NS_ : BS_: -BU_: EON XXX RDC SZL VGSG JBBF RFK FLA RAD1 CAS CID AHM HKL HUD EKP DWA DSC SM_BF GWS VDM DDE1 ACI CCC DSC SM_FA CTM LDM RSE MRSZ VDA EDCK ZBE EGS ACC_Sensor Kombi IHKA ARS ACSM FZD PGS NVC AFS DME FRMFA EMF FKA VSW EPS PDC DKG EHC Diagnosetool_PT_CAN Diagnosetool_K_CAN_System Vector__XXX +BU_: EON RDC SZL VGSG JBBF RFK FLA RAD1 CAS CID AHM HKL HUD EKP DWA DSC SM_BF GWS VDM DDE1 ACI CCC SM_FA CTM LDM RSE MRSZ VDA EDCK ZBE EGS ACC Kombi IHKA ARS ACSM FZD PGS NVC AFS DME FRMFA EMF FKA VSW EPS PDC DKG SMG EHC SZM KGM Diagnosetool_PT_CAN Diagnosetool_K_CAN_System Vector__XXX XXX +CM_ "Source "; +CM_ "Tool32 reference https://www.bimmerforums.com/forum/showthread.php?2298830-E90-Can-bus-project-(E60-E65-E87-)&p=29628499#post29628499" +CM_ "License MIT"; -BO_ 170 AccPedal: 8 DME - SG_ KickDownPressed : 53|1@0+ (1,0) [0|3] "" XXX - SG_ CruisePedalActive : 54|1@0+ (1,0) [0|1] "" XXX - SG_ CruisePedalInactive : 55|1@0+ (1,0) [0|1] "" XXX - SG_ ThrottlelPressed : 50|1@0+ (1,0) [0|1] "" XXX - SG_ AcceleratorPedalPressed : 52|1@0+ (1,0) [0|7] "" XXX - SG_ AcceleratorPedalPercentage : 16|16@1+ (0.04,0) [0|100] "" XXX - SG_ Counter_170 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ EngineSpeed : 32|16@1+ (0.25,0) [0|8000] "rpm" XXX - SG_ Checksum_170 : 0|8@1- (1,0) [0|65535] "" XXX - -BO_ 256 OpenpilotEngage: 8 XXX - SG_ OpenpilotEnabled : 0|8@1+ (1,0) [0|255] "" EON - -BO_ 404 CruiseControl: 4 SZL - SG_ plus1mph_request : 16|1@0+ (1,0) [0|1] "" XXX - SG_ minus1mph_request : 18|1@0+ (1,0) [0|1] "" XXX - SG_ Cancel_request_up_stalk : 23|1@0+ (1,0) [0|1] "" XXX - SG_ Cancel_request_up_or_down_stalk : 20|1@0+ (1,0) [0|1] "" XXX - SG_ Resume_request : 22|1@0+ (1,0) [0|1] "" XXX - SG_ setMe_0xFC : 31|8@0+ (1,0) [0|255] "" XXX - SG_ plus5mph_request : 17|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ minus5mph_request : 19|1@0+ (1,0) [0|0] "" Vector__XXX - SG_ requests_0xF : 15|4@0+ (1,0) [0|15] "" XXX - SG_ Counter_404 : 11|4@0+ (1,0) [0|15] "" XXX - SG_ Checksum_404 : 7|8@0+ (1,0) [0|15] "" XXX +BO_ 128 SYNC: 5 XXX + SG_ State1 : 16|8@1+ (1,0) [0|255] "" XXX + SG_ State2 : 24|4@1+ (1,0) [0|15] "" XXX + SG_ Counter_128 : 28|4@1+ (1,0) [0|15] "" XXX -BO_ 512 CruiseControlStatus: 8 DME - SG_ CruiseControlInactiveFlag : 12|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseCoontrolActiveFlag : 13|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseControlSetpointSpeed : 7|8@0+ (0.25,0) [0|255] "mph" XXX +BO_ 133 Synchronization_SC_VDA: 8 DSC BO_ 168 EngineAndBrake: 8 DME - SG_ Checksum_EngineAndBrake : 0|8@1+ (1,0) [0|0] "" XXX - SG_ BrakePressed : 61|1@0+ (1,0) [0|1] "" XXX - SG_ Brake_active2 : 62|1@0+ (1,0) [0|1] "" XXX - SG_ ST_RCPT_ENG_DSC : 52|2@1+ (1,0) [0|0] "" XXX - SG_ ST_RCPT_ENG_ARS : 50|2@1+ (1,0) [0|0] "" XXX - SG_ ST_RCPT_ENG_ACC : 48|2@1+ (1,0) [0|0] "" XXX - SG_ ST_RCPT_ENG_EGS : 54|2@1+ (1,0) [0|0] "" XXX - SG_ ST_DMEA_SWO : 44|2@1+ (1,0) [0|0] "" XXX + SG_ Checksum_0xa8 : 0|8@1+ (1,0) [0|0] "" XXX + SG_ Counter_0xa8 : 8|4@1+ (1,0) [0|15] "" XXX SG_ EngineTorque : 12|12@1- (0.03125,0) [-1024|1023] "" XXX - SG_ ALIV_TORQ_1_DME : 8|4@1+ (1,0) [0|15] "" XXX SG_ EngineTorqueWoInterv : 24|16@1- (0.03125,0) [-1024|1023.96875] "" XXX + SG_ ST_DMEA_SWO : 44|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_ACC : 48|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_ARS : 50|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_DSC : 52|2@1+ (1,0) [0|0] "" XXX + SG_ ST_RCPT_ENG_EGS : 54|2@1+ (1,0) [0|0] "" XXX + SG_ BrakePressed : 61|1@0+ (1,0) [0|1] "" XXX + SG_ BrakeActive : 62|1@0+ (1,0) [0|1] "" XXX -BO_ 470 SteeringButtons: 2 SZL - SG_ Volume_DOWN : 2|1@0+ (1,0) [0|1] "" XXX - SG_ Volume_UP : 3|1@0+ (1,0) [0|1] "" XXX - SG_ VoiceControl : 8|1@0+ (1,0) [0|1] "" XXX - SG_ Telephone : 0|1@0+ (1,0) [0|1] "" XXX - SG_ Next_up : 5|1@0+ (1,0) [0|1] "" XXX - SG_ Previous_down : 4|1@0+ (1,0) [0|1] "" XXX +BO_ 169 Torque2: 8 DME + SG_ Checksum_0xa9 : 0|8@1+ (1,0) [0|0] "" Vector__XXX + SG_ Counter_0xa9 : 8|4@1+ (1,0) [0|0] "" XXX + SG_ ST_SW_LEV_RPM : 12|2@1+ (1,0) [0|0] "" XXX + SG_ ST_INFS : 14|2@1+ (1,0) [0|0] "" XXX + SG_ TORQ_AVL_MIN : 16|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ TORQ_AVL_MAX : 28|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ TORQ_AVL_SPAR_NEG : 40|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX + SG_ TORQ_AVL_SPAR_POS : 52|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX -BO_ 403 DynamicCruiseControlStatus: 8 DSC - SG_ Counter_403 : 7|8@0+ (1,0) [0|255] "" XXX - SG_ CruiseActive : 43|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseSpeedChangeRequest : 48|1@0+ (1,0) [0|1] "" XXX - SG_ CruiseControlSetpointSpeed : 15|8@0+ (1,-2) [0|255] "kph/mph" XXX +BO_ 170 AccPedal: 8 DME + SG_ Checksum_0xaa : 0|8@1- (1,0) [0|65535] "" XXX + SG_ Counter_0xaa : 8|4@1+ (1,0) [0|15] "" XXX + SG_ AcceleratorPedalPercentage : 16|16@1+ (0.04,0) [0|100] "" XXX + SG_ EngineSpeed : 32|16@1+ (0.25,0) [0|8000] "rpm" XXX + SG_ ThrottlelActive : 50|1@0+ (1,0) [0|1] "" XXX + SG_ AcceleratorPedalPressed : 52|1@0+ (1,0) [0|7] "" XXX + SG_ KickDownPressed : 53|1@0+ (1,0) [0|3] "" XXX + SG_ CruisePedalActive : 54|1@0+ (1,0) [0|1] "" XXX + SG_ CruisePedalInactive : 55|1@0+ (1,0) [0|1] "" XXX -BO_ 201 SteeringWheelAngle_DSC: 8 SZL - SG_ Counter_201 : 20|4@1+ (1,0) [0|15] "" DSC - SG_ SteeringPositionComplementLow : 24|11@1- (1,0) [0|1] "" DSC - SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "deg" DSC +BO_ 172 WheelTorqueDrivetrain2: 8 DME -BO_ 206 WheelSpeeds: 8 DSC - SG_ Wheel_FL : 0|16@1- (0.0625,0) [0|255] "kph" XXX - SG_ Wheel_FR : 16|16@1- (0.0625,0) [0|255] "kph" XXX - SG_ Wheel_RL : 32|16@1- (0.0625,0) [0|255] "kph" XXX - SG_ Wheel_RR : 48|16@1- (0.0625,0) [0|255] "kph" XXX +BO_ 173 Delay_request_ACC: 8 LDM -BO_ 884 WheelToleranceAdjustment: 8 DSC +BO_ 177 Torque_request_steering: 8 DSC -BO_ 678 WiperSwitch: 8 SZL - SG_ AutoWipersOn : 0|1@1+ (1,0) [0|3] "" XXX +BO_ 179 Control_steering_assist: 8 AFS -BO_ 304 TerminalStatus: 8 CAS - SG_ AccOn : 23|1@1+ (1,0) [0|255] "" XXX - SG_ IgnitionOff : 22|1@1+ (1,0) [0|3] "" XXX - SG_ Counter_304 : 32|4@1+ (1,0) [0|15] "" XXX - SG_ Checksum_304 : 36|4@1+ (1,0) [0|255] "" XXX +BO_ 180 WheelTorqueDriveTrain1: 8 DME -BO_ 169 Torque2: 8 DME - SG_ TORQ_AVL_SPAR_POS : 52|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ TORQ_AVL_SPAR_NEG : 40|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ TORQ_AVL_MAX : 28|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ TORQ_AVL_MIN : 16|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX - SG_ ST_INFS : 14|2@1+ (1,0) [0|0] "" XXX - SG_ ST_SW_LEV_RPM : 12|2@1+ (1,0) [0|0] "" XXX - SG_ ALIV_TORQ_2_DME : 8|4@1+ (1,0) [0|0] "" XXX - SG_ CHKSM_TORQ_2_DME : 0|8@1+ (1,0) [0|0] "" Vector__XXX +BO_ 181 Torque_request_EGS: 8 EGS + SG_ Checksum_Torque_request_EGS : 0|8@1+ (1,0) [0|0] "" XXX + SG_ Gearbox_temperature : 56|8@1+ (1,0) [0|0] "C" XXX -BO_ 184 TorqueTransmisionRequest: 8 LDM - SG_ Checksum_184 : 0|8@1+ (1,0) [0|15] "" XXX - SG_ Counter_184 : 8|4@1+ (1,0) [0|15] "" XXX +BO_ 182 DynamicCruiseControlTorqueDemand: 5 DSC + SG_ Checksum_0xb6 : 0|8@1+ (1,0) [0|255] "" XXX + SG_ Counter_0xb6 : 8|4@1+ (1,0) [0|14] "" XXX + SG_ TORQ_TAR_DSC : 12|12@1- (0.5,0) [0|1000] "" XXX -BO_ 196 SteeringWheelAngle: 7 DSC - SG_ SteeringSpeed : 24|16@1- (0.0428316886,0) [0|255] "degree/s" XXX - SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "degree" XXX +BO_ 183 Torque_request_ACC: 8 LDM -BO_ 180 WheelTorqueDriveTrain1: 8 DME +BO_ 184 Torque_request_DCT: 8 DKG + SG_ Checksum_0xb8 : 0|8@1+ (1,0) [0|255] "" XXX + SG_ Counter_0xb8 : 8|4@1+ (1,0) [0|15] "" XXX -BO_ 182 DynamicCruiseControlTorqueDemand: 8 DSC - SG_ TORQ_TAR_DSC : 12|12@1- (0.5,0) [0|1000] "" XXX - SG_ Counter_182 : 8|4@1+ (1,0) [0|14] "" XXX - SG_ Checksum_182 : 0|8@1+ (1,0) [0|15] "" XXX +BO_ 185 Torque_request_AFS: 8 AFS BO_ 186 TransmissionData: 8 EGS - SG_ Counter_186 : 48|4@1+ (1,0) [0|14] "" XXX - SG_ Shifting : 4|1@1+ (1,0) [0|15] "" XXX - SG_ OutputShaftSpeed : 24|16@1- (0.125,0) [0|255] "rpm" XXX + SG_ GearTar : 0|4@1+ (1,-4) [0|0] "" XXX + SG_ Shifting : 4|1@1+ (1,0) [0|1] "" XXX SG_ GearRatio : 8|8@1+ (0.05,0) [0|255] "" XXX - SG_ GearTar : 0|4@1+ (1,-4) [0|255] "" XXX - SG_ Checksum_186 : 40|8@1+ (1,0) [0|15] "" XXX - -BO_ 191 RequestedWheelTorqueDriveTrain: 8 LDM - SG_ Checksum_191 : 0|8@1+ (1,0) [0|19] "" XXX - SG_ Counter_191 : 8|4@1- (1,0) [0|255] "" XXX - SG_ TorqueReq : 16|12@1- (0.5,350) [-1024|1023.96875] "" XXX + SG_ OutputShaftSpeed : 24|16@1- (0.125,0) [0|0] "rpm" XXX + SG_ Checksum_0xba : 40|8@1+ (1,0) [0|255] "" XXX + SG_ Counter_0xba : 48|4@1+ (1,0) [0|14] "" XXX -BO_ 414 StatusDSC_KCAN: 8 DSC - SG_ BrakePressure : 48|8@1- (1,0) [0|255] "" XXX - SG_ BrakeStates : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Checksum_414 : 56|8@1+ (1,0) [0|15] "" XXX - SG_ Counter_414 : 20|4@1+ (1,0) [0|15] "" XXX - SG_ DTC_on : 12|1@1+ (1,0) [0|3] "" XXX - SG_ DSC_full_off : 8|4@1+ (1,0) [0|15] "" XXX - -BO_ 416 Speed: 8 DSC - SG_ AccX : 28|12@1- (1,0) [0|15] "" XXX - SG_ YawRate : 40|12@1- (1,0) [0|255] "" XXX - SG_ VehicleSpeed : 0|12@1- (0.103,0) [0|255] "kph" XXX - SG_ MovingReverse : 13|1@1+ (1,0) [0|3] "" XXX - SG_ AccY : 16|12@1- (1,0) [0|255] "" XXX - SG_ Counter_416 : 52|4@1+ (1,0) [0|14] "" XXX - SG_ Checksum_416 : 56|8@1+ (1,0) [0|15] "" XXX - SG_ MovingForward : 12|1@1+ (1,0) [0|15] "" XXX - -BO_ 418 TransimissionData2: 8 EGS - SG_ ManualMode : 50|1@0+ (1,0) [0|255] "" XXX - SG_ Counter_418 : 28|4@1+ (1,0) [0|14] "" XXX - SG_ Checksum_418 : 56|8@1+ (1,0) [0|15] "" XXX - -BO_ 690 WheelPressure_KCAN: 8 DSC +BO_ 187 Target_torque_request: 8 DSC -BO_ 691 AccelerationData: 8 DSC +BO_ 188 Status_target_torque_conversion: 8 VGSG -BO_ 402 GearSelectorSwitch_1: 4 XXX - SG_ Counter_402 : 24|4@1+ (1,0) [0|14] "" XXX +BO_ 189 Torque_request_SSG: 8 SMG -BO_ 408 GearSelectorSwitch: 8 GWS - SG_ ParkButtonSecond : 26|2@1+ (1,0) [0|3] "" XXX - SG_ SideButton : 28|2@1+ (1,0) [0|3] "" XXX - SG_ SportButtonPressed : 34|2@1+ (1,0) [0|255] "" XXX - SG_ M3_button : 36|2@1+ (1,0) [0|3] "" XXX - SG_ SideButtonXOR11 : 30|2@1+ (1,0) [0|3] "" XXX - SG_ param1XOR11 : 22|2@1+ (1,0) [0|3] "" XXX - SG_ m3ShifterPositionXOR1111 : 8|4@1+ (1,0) [0|15] "" XXX - SG_ always11 : 38|2@1+ (1,0) [0|3] "" XXX - SG_ m3ShifterPosition : 4|4@1+ (1,0) [0|15] "" XXX - SG_ param1 : 20|2@1+ (1,0) [0|3] "" XXX - SG_ param5 : 32|2@1+ (1,0) [0|3] "" XXX - SG_ Counter_408 : 0|4@1+ (1,0) [0|14] "" XXX - SG_ ParkButtonFirst : 24|2@1+ (1,0) [0|3] "" XXX - SG_ ShifterPositionXOR1111 : 16|4@1+ (1,0) [0|15] "" XXX - SG_ ShifterPosition : 12|4@1+ (1,0) [0|0] "" Vector__XXX +BO_ 190 Alive_Counter: 8 ARS -BO_ 422 DistanceRoute: 8 DSC +BO_ 191 RequestedWheelTorqueDriveTrain: 5 LDM + SG_ Checksum_0xbf : 0|8@1+ (1,0) [0|255] "" DME + SG_ Counter_0xbf : 8|4@1- (1,0) [0|15] "" DME + SG_ TorqueReq : 16|12@1- (0.5,350) [-1024|1023.96875] "" DME -BO_ 436 InstrumentClusterStatus_KOMBI: 8 CCC - SG_ HandbrakeActive : 41|1@1+ (1,0) [0|3] "" XXX +BO_ 192 Alive_Central_Gateway: 8 JBBF -BO_ 464 EngineData: 8 DME - SG_ RPM_IDLG_TAR : 56|8@1+ (5,0) [0|1270] "1/min" XXX - SG_ CTR_SLCK : 48|2@1+ (1,0) [0|0] "" XXX - SG_ IJV_FU : 32|16@1+ (1,-48) [0|0] "C" XXX - SG_ AIP_ENG : 24|8@1+ (2,598) [600|1106] "hPa" XXX - SG_ ST_SW_WAUP : 22|2@1+ (1,0) [0|0] "" XXX - SG_ ST_ENG_RUN : 20|2@1+ (1,0) [0|0] "" XXX - SG_ Counter_464 : 16|4@1+ (1,0) [0|14] "" XXX - SG_ TEMP_EOI : 8|8@1+ (1,-48) [0|0] "C" XXX - SG_ TEMP_ENG : 0|8@1+ (1,-48) [0|0] "C" XXX +BO_ 193 Alive_counter_telephone: 8 CCC -BO_ 945 TransmissionData3: 8 DKG - SG_ Checksum_946 : 0|8@1+ (1,0) [0|19] "" XXX - SG_ Counter_945 : 8|4@1+ (1,0) [0|14] "" XXX +BO_ 196 SteeringWheelAngle: 7 DSC + SG_ SteeringPosition : 0|16@1- (0.04395,0) [-600|600] "deg" XXX + SG_ SteeringSpeed : 24|16@1- (0.04395,0) [0|0] "deg/s" XXX BO_ 200 SteeringWheelAngle_slow: 6 SZL - SG_ SteeringPosition : 0|16@1- (0.0428316886,0) [-600|600] "degree" XXX - SG_ SteeringSpeed : 24|16@1- (0.0428316886,0) [-65535|65535] "degree/s" XXX - SG_ Counter_200 : 20|4@1+ (1,0) [0|15] "" XXX - -BO_ 466 TransmissionDataDisplay: 8 EGS - SG_ ShiftLeverMode : 32|2@1+ (1,0) [0|3] "" XXX - SG_ GearAct : 12|4@1+ (1,-4) [0|15] "" XXX - SG_ Counter_466 : 28|4@1+ (1,0) [0|14] "" XXX - SG_ ShiftLeverPosition : 0|4@1+ (1,0) [0|8] "" XXX - SG_ xFF : 40|8@1+ (1,0) [0|255] "" XXX - SG_ ShiftLeverPositionXOR : 4|4@1+ (1,0) [0|0] "" Vector__XXX - SG_ SportButtonState : 26|1@1+ (1,0) [0|1] "" XXX - -BO_ 437 HeatFlow_LoadTorqueClimate: 8 IHKA - -BO_ 1152 NetworkManagment1: 8 XXX - -BO_ 1170 NetworkManagment2: 8 XXX - -BO_ 1175 NetworkManagment3: 8 XXX - -BO_ 1176 NetworkManagment4: 8 XXX - -BO_ 1193 NetworkManagment5: 8 XXX - -BO_ 1246 GWS_ShiftLeverHeartbeat: 8 XXX - SG_ IgnOff : 12|1@0+ (1,0) [0|3] "" XXX - -BO_ 438 HeatFlowEngine: 8 DME - -BO_ 784 AmbientTemperature_RelativeTime: 8 Kombi - -BO_ 821 ElectricFuelPumpStatus: 8 EKP - -BO_ 1007 EngineOBD_data: 8 DME - -BO_ 1432 ServicesDKG: 8 XXX - -BO_ 309 CrashDisconnectControl: 8 ACSM - -BO_ 502 TurnSignals: 2 FRMFA - SG_ TurnSignalIdle : 9|1@0+ (1,0) [0|1] "" XXX - SG_ TurnSignalActive : 8|1@0+ (1,0) [0|1] "" XXX - SG_ RightTurn : 5|1@0+ (1,0) [0|1] "" XXX - SG_ LeftTurn : 4|1@1+ (1,0) [0|1] "" XXX - SG_ HoldActivated : 0|1@1+ (1,0) [0|1] "" XXX - -BO_ 514 Dimming: 8 FRMFA - -BO_ 538 LampStatus: 8 FRMFA - -BO_ 550 RainSensorWiperSpeed: 8 FZD + SG_ SteeringPosition : 0|16@1- (0.04395,0) [-600|600] "deg" XXX + SG_ Counter_0xc8 : 20|4@1+ (1,0) [0|15] "" XXX + SG_ SteeringSpeed : 24|16@1- (0.04395,0) [-65535|65535] "deg/s" XXX -BO_ 578 ClimateFrontStatus: 8 IHKA - -BO_ 704 LCD_lighting: 8 Kombi - -BO_ 758 LightControl: 8 FRMFA - -BO_ 760 Time_Date: 8 Kombi - -BO_ 762 OccupancySeatBeltContact: 8 ACSM - SG_ NEW_SIGNAL_1 : 8|8@1+ (1,0) [0|255] "" XXX - SG_ NEW_SIGNAL_2 : 0|8@1+ (1,0) [0|15] "" XXX - -BO_ 764 TrunkStatus: 8 CAS - -BO_ 797 TirePressureStatus: 8 DSC - -BO_ 816 Range_Mileage: 8 Kombi - -BO_ 823 StatusFuelControl: 8 DME - -BO_ 897 EngineOilLevel: 8 DME - -BO_ 940 RunOnTimeTerminal30: 8 JBBF - -BO_ 947 PowerManagmentConsumptionControl: 8 DME - -BO_ 948 PowerBatteryVoltage: 8 DME - SG_ BatteryVoltage : 7|24@0+ (0.001,0) [0|65535] "" XXX - -BO_ 958 PowerRunningTime: 8 CAS - -BO_ 1408 ServicesKGM: 8 XXX - -BO_ 1426 ServicesDME: 8 XXX - -BO_ 1449 ServicesDSC: 8 XXX +BO_ 201 SteeringWheelAngle_DSC: 8 SZL + SG_ SteeringPosition : 0|16@1- (0.04395,0) [-600|600] "deg" DSC + SG_ Counter_0xc9 : 20|4@1+ (1,0) [0|15] "" DSC + SG_ SteeringPositionComplementLow : 24|11@1- (1,0) [0|1] "" DSC -BO_ 1504 ServicesKOMBI: 8 XXX +BO_ 205 Accelerometer2: 8 XXX + SG_ YawRate : 0|16@1- (1,0) [0|0] "" XXX + SG_ Checksum_0xcd : 16|16@1- (1,0) [0|65535] "" XXX + SG_ LateralAcceleration : 32|16@1- (1,0) [0|0] "" XXX + SG_ Counter_0xcd : 52|4@1+ (1,0) [0|15] "" XXX -BO_ 1522 ServicesKBM: 8 XXX +BO_ 206 WheelSpeeds: 8 DSC + SG_ Wheel_FL : 0|16@1- (0.0625,0) [0|0] "kph" XXX + SG_ Wheel_FR : 16|16@1- (0.0625,0) [0|0] "kph" XXX + SG_ Wheel_RL : 32|16@1- (0.0625,0) [0|0] "kph" XXX + SG_ Wheel_RR : 48|16@1- (0.0625,0) [0|0] "kph" XXX BO_ 209 Accelerometer1: 8 XXX - SG_ Counter_209 : 52|4@1+ (1,0) [0|255] "" XXX + SG_ YawRate : 0|16@1- (1,0) [0|0] "" XXX SG_ Unknown : 16|16@1- (1,0) [0|65535] "" XXX - SG_ YawRate : 0|16@1- (1,0) [0|7] "" XXX SG_ PitchRate : 32|16@1- (1,0) [0|65535] "" XXX - SG_ CRC8_209 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 172 WheelTorqueDrivetrain2: 8 DME - -BO_ 128 SYNC: 5 XXX - SG_ State2 : 24|4@1+ (1,0) [0|15] "" XXX - SG_ State1 : 16|8@1+ (1,0) [0|255] "" XXX - SG_ Counter_128 : 28|4@1+ (1,0) [0|15] "" XXX - -BO_ 320 Unknown140: 2 XXX - SG_ State : 7|8@0+ (1,0) [0|255] "" XXX + SG_ Counter_0xd1 : 52|4@1+ (1,0) [0|15] "" XXX + SG_ Checksum_0xd1 : 56|8@1+ (1,0) [0|255] "" XXX BO_ 212 Unknown_d4: 8 XXX SG_ State1 : 40|8@1+ (1,0) [0|255] "" XXX - SG_ Counter_212 : 52|4@1+ (1,0) [0|255] "" XXX - SG_ Checksum_212 : 56|8@1+ (1,0) [0|255] "" XXX - -BO_ 205 Accelerometer2: 8 XXX - SG_ Counter_205 : 52|4@1+ (1,0) [0|255] "" XXX - SG_ LateralAcceleration : 32|16@1- (1,0) [0|255] "" XXX - SG_ YawRate : 0|16@1- (1,0) [0|255] "" XXX - SG_ CRC8_205 : 16|16@1- (1,0) [0|65535] "" XXX - -BO_ 790 OperationPushButtonDTC: 2 JBBF - SG_ setMe_0x3FFF : 2|14@1+ (1,0) [0|63] "" DSC - SG_ DTC_pressed : 0|1@1+ (1,0) [0|3] "" DSC - -BO_ 1577 Unknown_629: 8 XXX - -BO_ 133 Synchronization_SC_VDA: 8 DSC + SG_ Counter_0xd4 : 52|4@1+ (1,0) [0|15] "" XXX + SG_ Checksum_0xd4 : 56|8@1+ (1,0) [0|255] "" XXX -BO_ 173 Delay_request_ACC: 8 LDM - -BO_ 177 Torque_request_steering: 8 DSC - -BO_ 181 Torque_request_EGS: 8 EGS - SG_ Checksum_Torque_request_EGS : 0|8@1+ (1,0) [0|0] "" XXX - SG_ Gearbox_temperature : 56|8@1+ (1,0) [0|0] "C" XXX - -BO_ 183 Torque_request_ACC: 8 LDM - -BO_ 187 Target_torque_request: 8 DSC - -BO_ 188 Status_target_torque_conversion: 8 VGSG - -BO_ 190 Alive_Counter: 8 ARS - -BO_ 192 Alive_Central_Gateway: 8 JBBF - -BO_ 193 Alive_counter_telephone: 8 CCC - -BO_ 213 Request_wheel_torque_brake: 8 DSC +BO_ 213 Request_wheel_torque_brake: 8 LDM + SG_ Checksum_0xd5 : 0|8@1+ (1,0) [0|255] "" DSC + SG_ Counter_0xd5 : 8|4@1- (1,0) [0|15] "" DSC BO_ 215 Alive_Counter_Security: 8 ACSM @@ -419,13 +217,38 @@ BO_ 298 Sensor_data_ROSE: 8 ASCM BO_ 300 input_data_ROSE: 8 DSC +BO_ 304 TerminalStatus: 5 CAS + SG_ ST_KL_R : 1|2@0+ (1,0) [0|3] "" XXX + SG_ ST_KL_15 : 3|2@0+ (1,0) [0|1] "" XXX + SG_ ST_KL_50 : 5|2@0+ (1,0) [0|3] "" XXX + SG_ ST_KEY_VLD : 7|2@0+ (1,0) [0|3] "" XXX + SG_ NO_KEY : 11|4@0+ (1,0) [0|15] "" XXX + SG_ IgnitionOff : 22|1@1+ (1,0) [0|3] "" XXX + SG_ AccOn : 23|1@1+ (1,0) [0|255] "" XXX + SG_ ST_KL15_HW : 31|2@0+ (1,0) [0|3] "" XXX + SG_ Counter_0x130 : 32|4@1+ (1,0) [0|15] "" XXX + SG_ Checksum_0x130 : 36|4@1+ (1,0) [0|255] "" XXX + +BO_ 309 CrashDisconnectControl: 8 ACSM + +BO_ 320 Unknown140: 2 XXX + SG_ State : 7|8@0+ (1,0) [0|255] "" XXX + BO_ 336 Request_1_ACC: 8 LDM + SG_ Checksum_0x150 : 0|8@1+ (1,0) [0|255] "" ACC + SG_ Counter_0x150 : 8|4@1- (1,0) [0|15] "" ACC BO_ 339 Request_2_ACC: 8 LDM + SG_ Checksum_0x153 : 0|8@1+ (1,0) [0|255] "" ACC + SG_ Counter_0x153 : 8|4@1- (1,0) [0|15] "" ACC -BO_ 345 Object_data_ACC: 8 ACC_Sensor +BO_ 345 Object_data_ACC: 8 ACC + SG_ Checksum_0x159 : 0|8@1+ (1,0) [0|255] "" LDM + SG_ Counter_0x159 : 8|4@1- (1,0) [0|15] "" LDM -BO_ 348 Status_ACC: 8 ACC_Sensor +BO_ 348 Status_ACC: 8 ACC + SG_ Checksum_0x15c : 0|8@1+ (1,0) [0|255] "" LDM + SG_ Counter_0x15c : 8|4@1- (1,0) [0|15] "" LDM BO_ 351 Requirement_angle_FFP: 8 LDM @@ -433,20 +256,93 @@ BO_ 357 CLU_Status_VDA: 8 VDA BO_ 370 Acknowledgment_request_Kombination: 8 CCC -BO_ 373 Display_motor_data: 8 DME +BO_ 373 Display_motor_data: 3 DME + SG_ Counter_0x175 : 3|4@0+ (1,0) [0|15] "" XXX BO_ 400 display_ACC: 8 LDM +BO_ 402 GearSelectorSwitch_1: 4 XXX + SG_ Counter_0x192 : 24|4@1+ (1,0) [0|14] "" XXX + +BO_ 403 DynamicCruiseControlStatus: 8 DSC + SG_ Checksum_0x193 : 0|4@1+ (1,0) [0|15] "" XXX + SG_ Counter_0x193 : 7|4@0+ (1,0) [0|15] "" XXX + SG_ CruiseControlSetpointSpeed : 15|8@0+ (1,-2) [0|255] "kph/mph" XXX + SG_ CruiseActive : 43|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseSpeedChangeRequest : 48|1@0+ (1,0) [0|1] "" XXX + +BO_ 404 CruiseControlStalk: 4 SZL + SG_ Checksum_0x194 : 7|8@0+ (1,0) [0|255] "" XXX + SG_ Counter_0x194 : 11|4@0+ (1,0) [0|14] "" XXX + SG_ requests_0xF : 15|4@0+ (1,0) [0|15] "" XXX + SG_ plus1 : 16|1@0+ (1,0) [0|1] "" XXX + SG_ plus5 : 17|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ minus1 : 18|1@0+ (1,0) [0|1] "" XXX + SG_ minus5 : 19|1@0+ (1,0) [0|1] "" Vector__XXX + SG_ cancel : 20|1@0+ (1,0) [0|1] "" XXX + SG_ resume : 22|1@0+ (1,0) [0|1] "" XXX + SG_ cancel_lever_up : 23|1@0+ (1,0) [0|1] "" XXX + SG_ setMe_0xFC : 31|8@0+ (1,0) [255|255] "" XXX + BO_ 405 Operation_push_button_MSA: 8 IHKA +BO_ 408 GearSelectorSwitch: 5 GWS + SG_ Counter_0x198 : 0|4@1+ (1,0) [0|14] "" XXX + SG_ m3ShifterPosition : 4|4@1+ (1,0) [0|15] "" XXX + SG_ m3ShifterPositionXOR1111 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ ShifterPosition : 12|4@1+ (1,0) [0|0] "" Vector__XXX + SG_ ShifterPositionXOR1111 : 16|4@1+ (1,0) [0|15] "" XXX + SG_ param1 : 20|2@1+ (1,0) [0|3] "" XXX + SG_ param1XOR11 : 22|2@1+ (1,0) [0|3] "" XXX + SG_ ParkButtonFirst : 24|2@1+ (1,0) [0|3] "" XXX + SG_ ParkButtonSecond : 26|2@1+ (1,0) [0|3] "" XXX + SG_ SideButton : 28|2@1+ (1,0) [0|3] "" XXX + SG_ SideButtonXOR11 : 30|2@1+ (1,0) [0|3] "" XXX + SG_ param5 : 32|2@1+ (1,0) [0|3] "" XXX + SG_ SportButtonPressed : 34|2@1+ (1,0) [0|255] "" XXX + SG_ M3_button : 36|2@1+ (1,0) [0|3] "" XXX + SG_ always11 : 38|2@1+ (1,0) [0|3] "" XXX + +BO_ 414 StatusDSC_KCAN: 8 DSC + SG_ DSC_full_off : 8|4@1+ (1,0) [0|1] "" XXX + SG_ DTC_on : 12|1@1+ (1,0) [0|1] "" XXX + SG_ Counter_0x19e : 20|4@1+ (1,0) [0|15] "" XXX + SG_ BrakeStates : 40|8@1+ (1,0) [0|255] "" XXX + SG_ BrakePressure : 48|8@1- (1,0) [0|0] "" XXX + SG_ Checksum_0x19e : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 416 Speed: 8 DSC + SG_ VehicleSpeed : 0|12@1- (0.103,0) [0|0] "kph" XXX + SG_ MovingForward : 12|1@1+ (1,0) [0|1] "" XXX + SG_ MovingReverse : 13|1@1+ (1,0) [0|1] "" XXX + SG_ LongAcc : 16|12@1- (0.025,0) [0|0] "m/s^2" XXX + SG_ LatlAcc : 28|12@1- (0.025,0) [0|0] "m/s^2" XXX + SG_ YawRate : 40|12@1- (0.05,0) [0|0] "deg/s" XXX + SG_ Counter_0x1a0 : 52|4@1+ (1,0) [0|14] "" XXX + SG_ Checksum_0x1a0 : 56|8@1+ (1,0) [0|255] "" XXX + +BO_ 418 TransimissionData2: 8 EGS + SG_ Counter_0x1a2 : 28|4@1+ (1,0) [0|14] "" XXX + SG_ ManualMode : 50|1@0+ (1,0) [0|1] "" XXX + SG_ Checksum_0x1a2 : 56|8@1+ (1,0) [0|255] "" XXX + BO_ 419 Raw_data_longitudinal_acceleration: 8 DSC +BO_ 422 DistanceRoute: 8 DSC + BO_ 423 actuation_request_EMF: 8 DSC BO_ 426 Effect_ErgoCommander: 8 CCC BO_ 428 Status_ARS_module: 8 ARS +BO_ 436 InstrumentClusterStatus_KOMBI: 8 CCC + SG_ HandbrakeActive : 41|1@1+ (1,0) [0|1] "" XXX + +BO_ 437 HeatFlow_LoadTorqueClimate: 7 IHKA + +BO_ 438 HeatFlowEngine: 7 DME + BO_ 440 Operation_ErgoCommander: 8 ZBE BO_ 450 Distance_message_PDC: 8 PDC @@ -455,6 +351,34 @@ BO_ 451 Distance_message_2_PDC: 8 PDC BO_ 454 Acoustic_message_PDC: 8 PDC +BO_ 464 EngineData: 8 DME + SG_ TEMP_ENG : 0|8@1+ (1,-48) [0|0] "C" XXX + SG_ TEMP_EOI : 8|8@1+ (1,-48) [0|0] "C" XXX + SG_ Counter_0x1d0 : 16|4@1+ (1,0) [0|14] "" XXX + SG_ ST_ENG_RUN : 20|2@1+ (1,0) [0|0] "" XXX + SG_ ST_SW_WAUP : 22|2@1+ (1,0) [0|0] "" XXX + SG_ AIP_ENG : 24|8@1+ (2,598) [600|1106] "hPa" XXX + SG_ IJV_FU : 32|16@1+ (1,-48) [0|0] "C" XXX + SG_ CTR_SLCK : 48|2@1+ (1,0) [0|0] "" XXX + SG_ RPM_IDLG_TAR : 56|8@1+ (5,0) [0|1270] "1/min" XXX + +BO_ 466 TransmissionDataDisplay: 6 EGS + SG_ ShiftLeverPosition : 0|4@1+ (1,0) [0|8] "" XXX + SG_ ShiftLeverPositionXOR : 4|4@1+ (1,0) [0|0] "" Vector__XXX + SG_ GearAct : 12|4@1+ (1,-4) [0|15] "" XXX + SG_ SportButtonState : 26|1@1+ (1,0) [0|1] "" XXX + SG_ Counter_0x1d2 : 28|4@1+ (1,0) [0|14] "" XXX + SG_ ShiftLeverMode : 32|2@1+ (1,0) [0|3] "" XXX + SG_ xFF : 40|8@1+ (1,0) [0|255] "" XXX + +BO_ 470 SteeringButtons: 2 SZL + SG_ Telephone : 0|1@0+ (1,0) [0|1] "" XXX + SG_ Volume_DOWN : 2|1@0+ (1,0) [0|1] "" XXX + SG_ Volume_UP : 3|1@0+ (1,0) [0|1] "" XXX + SG_ Previous_down : 4|1@0+ (1,0) [0|1] "" XXX + SG_ Next_up : 5|1@0+ (1,0) [0|1] "" XXX + SG_ VoiceControl : 8|1@0+ (1,0) [0|1] "" XXX + BO_ 472 Operation_air_conditioning_air_distribution_FA: 8 CCC BO_ 473 Operation_pushbutton_MDrive: 8 SZL @@ -481,9 +405,22 @@ BO_ 491 Operation_active_seat_FA: 8 IHKA BO_ 492 Operation_active_seat_BF: 8 IHKA +BO_ 493 Operation_backrest_adjust_FA: 8 SZM + BO_ 494 Steering_column_switch_operation: 8 FRMFA -BO_ 499 Operation_seat_memory_FA: 8 XXX +BO_ 495 Operation_backrest_adjust_BF: 8 SZM + +BO_ 498 Operation_seat_memory_BF: 8 SZM + +BO_ 499 Operation_seat_memory_FA: 8 SZM + +BO_ 502 TurnSignals: 2 FRMFA + SG_ HoldActivated : 0|1@1+ (1,0) [0|1] "" XXX + SG_ LeftTurn : 4|1@1+ (1,0) [0|1] "" XXX + SG_ RightTurn : 5|1@0+ (1,0) [0|1] "" XXX + SG_ TurnSignalActive : 8|1@0+ (1,0) [0|1] "" XXX + SG_ TurnSignalIdle : 9|1@0+ (1,0) [0|1] "" XXX BO_ 504 Operation_SHD_MDS: 8 FZD @@ -495,8 +432,15 @@ BO_ 509 Status_request_EMF_KCAN: 8 EMF BO_ 510 Crash: 8 ACSM +BO_ 512 CruiseControlStatus: 8 DME + SG_ CruiseControlSetpointSpeed : 7|8@0+ (0.25,0) [0|0] "mph" XXX + SG_ CruiseControlInactiveFlag : 12|1@0+ (1,0) [0|1] "" XXX + SG_ CruiseCoontrolActiveFlag : 13|1@0+ (1,0) [0|1] "" XXX + BO_ 513 Status_EMF_KCAN: 8 EMF +BO_ 514 Dimming: 2 FRMFA + BO_ 517 Acoustic_request_Kombi: 8 Kombi BO_ 518 Control_Display_Shiftlights: 8 DME @@ -513,20 +457,22 @@ BO_ 529 Status_HUD: 8 HUD BO_ 530 Height_levels_air_spring: 8 EHC +BO_ 538 LampStatus: 8 FRMFA + BO_ 540 Operation_NightVision: 8 CCC BO_ 542 Status_NightVision: 8 NVC BO_ 548 Operation_push_button_NSW: 8 FRMFA +BO_ 550 RainSensorWiperSpeed: 5 FZD + BO_ 552 Operation_special_function: 8 CCC BO_ 554 Status_BFS: 8 JBBF BO_ 556 Operation_push_button_NSL: 8 FRMFA -BO_ 558 Status_BFSH: 8 XXX - BO_ 562 Status_FAS: 8 JBBF BO_ 566 Status_FASH: 8 XXX @@ -539,6 +485,8 @@ BO_ 573 Request_display_climate: 8 IHKA BO_ 574 Status_Klima_Fond: 8 FKA +BO_ 578 ClimateFrontStatus: 8 IHKA + BO_ 582 Status_air_conditioning_front_control_unit: 8 IHKA BO_ 584 Status_rear_view_camera: 8 RFK @@ -557,6 +505,10 @@ BO_ 600 Status_Transmission_Passive_Access: 8 PGS BO_ 604 Operation_of_climate_additional_programs: 8 CCC +BO_ 619 Operation_blinds_BF: 8 KGM + +BO_ 620 Operation_blinds_FA: 8 KGM + BO_ 621 Operation_blinds_MK: 8 IHKA BO_ 622 Control_FH_SHD_central_comfort: 8 CAS @@ -593,6 +545,16 @@ BO_ 674 Operation_of_climate_stand_functions: 8 CCC BO_ 676 Operation_personalization: 8 Kombi +BO_ 678 WiperSwitch: 2 SZL + SG_ AutoWipersOn : 0|1@1+ (1,0) [0|3] "" XXX + +BO_ 690 WheelPressure_KCAN: 8 DSC + +BO_ 691 AccelerationData: 5 DSC + SG_ Checksum_0x2b3 : 7|8@0+ (1,0) [0|15] "" XXX + SG_ Counter_0x2b3 : 8|4@1+ (1,0) [0|15] "" XXX + SG_ Deceleration : 12|8@1- (1,0) [0|255] "" XXX + BO_ 692 DWA_Alarm: 8 DWA BO_ 694 Control_horn_DWA: 8 DWA @@ -609,6 +571,8 @@ BO_ 702 Switch_status_display: 8 VSW BO_ 703 Water_valve_control: 8 IHKA +BO_ 704 LCD_lighting: 3 Kombi + BO_ 706 Temperatur_Ist_Fond: 8 FKA BO_ 711 Display_Kombination_extended: 8 DME @@ -651,14 +615,24 @@ BO_ 750 Status_climate_additional_programs: 8 IHKA BO_ 752 Status_air_condition_functions: 8 IHKA -BO_ 753 Status_driver_detection: 8 MRSZ +BO_ 753 Status_driver_detection: 3 MRSZ BO_ 755 Display_switching_instruction: 8 DME BO_ 756 Air_conditioning_control_SH_ZH_auxiliary_water_pump: 8 IHKA +BO_ 758 LightControl: 2 FRMFA + BO_ 759 Units: 8 Kombi +BO_ 760 Time_Date: 8 Kombi + +BO_ 762 OccupancySeatBeltContact: 5 ACSM + SG_ NEW_SIGNAL_2 : 0|8@1+ (1,0) [0|15] "" XXX + SG_ NEW_SIGNAL_1 : 8|8@1+ (1,0) [0|255] "" XXX + +BO_ 764 TrunkStatus: 8 CAS + BO_ 768 Status_RSE: 8 RSE BO_ 772 Status_Gang: 8 EGS @@ -671,6 +645,8 @@ BO_ 775 Operation_button_flap_convertible_top: 8 IHKA BO_ 776 Status_MSA: 8 DME +BO_ 784 AmbientTemperature_RelativeTime: 8 Kombi + BO_ 785 Refill_quantity: 8 Kombi BO_ 786 Service_Call_Teleservice: 8 Kombi @@ -681,6 +657,10 @@ BO_ 788 Status_driving_light: 8 FZD BO_ 789 Vehicle_mode: 8 JBBF +BO_ 790 OperationPushButtonDTC: 2 JBBF + SG_ DTC_pressed : 0|1@1+ (1,0) [0|3] "" DSC + SG_ setMe_0x3FFF : 2|14@1+ (1,0) [0|63] "" DSC + BO_ 791 Operation_button_parking_aids: 8 IHKA BO_ 792 Status_antennas_Passive_Access: 8 PGS @@ -693,6 +673,8 @@ BO_ 795 Operation_of_tailgate_interior_button: 8 IHKA BO_ 796 Status_tire_pressure: 8 RDC +BO_ 797 TirePressureStatus: 2 DSC + BO_ 801 Operation_button_camera_BF: 8 IHKA BO_ 802 Damper_current: 8 EDCK @@ -701,16 +683,24 @@ BO_ 806 Status_damper_program: 8 VDM BO_ 808 Relativzeit: 8 Kombi +BO_ 810 Control_ALC: 8 XXX + BO_ 813 Display_HDC: 8 DSC BO_ 814 Status_climate_internal_control_info: 8 IHKA +BO_ 816 Range_Mileage: 8 Kombi + BO_ 817 Programming_of_step_cruise_control: 8 CCC -BO_ 818 Driver_display_speed_range: 8 DME +BO_ 818 Driver_display_speed_range: 2 DME + +BO_ 821 ElectricFuelPumpStatus: 8 EKP BO_ 822 Display_check_control_message_role: 8 Kombi +BO_ 823 StatusFuelControl: 2 DME + BO_ 824 Control_display_check_control_message: 8 Kombi BO_ 825 Status_display_climate: 8 CCC @@ -723,12 +713,15 @@ BO_ 830 Status_Monitor_Fond_2: 8 CID BO_ 841 Raw_data_level_tank: 8 JBBF -BO_ 843 Seat_back_lock_status_FA: 8 SM_FA +BO_ 843 Status_seat_back_lock_FA: 8 SM_FA BO_ 845 Status_seat_back_lock_BF: 8 SM_BF -BO_ 847 Status_contact_handbrake: 8 JBBF - SG_ Handbrake_push : 0|2@1+ (1,0) [0|3] "" XXX +BO_ 846 Navi_sys_info: 8 CCC + +BO_ 847 Status_contact_handbrake: 2 JBBF + SG_ Handbrake__pushed_down : 0|1@0+ (1,0) [0|1] "" XXX + SG_ Handbrake_pulled_up : 1|1@1+ (1,0) [0|3] "" XXX BO_ 858 Appointment_Condition_Based_Service: 8 CCC @@ -750,9 +743,11 @@ BO_ 871 Control_display_of_demand_oriented_service: 8 Kombi BO_ 877 Setting_the_driving_dynamics_switch: 8 JBBF +BO_ 884 WheelToleranceAdjustment: 5 DSC + BO_ 886 Status_wear_lamella: 8 VGSG -BO_ 893 Status_DKG: 8 DKG +BO_ 893 Status_DKG: 2 DKG BO_ 894 Temperatur_Bremse: 8 DSC @@ -760,9 +755,11 @@ BO_ 895 Range_of_diesel_exhaust_gas_additive: 8 DDE1 BO_ 896 chassis_number: 8 CAS +BO_ 897 EngineOilLevel: 2 DME + BO_ 898 Electronic_engine_oil_dipstick_M: 8 DME -BO_ 899 Motor_data_2: 8 DME +BO_ 899 Motor_data_2: 4 DME BO_ 904 Vehicle_type: 8 CAS @@ -790,8 +787,19 @@ BO_ 937 Status_motor_control_CKM: 8 DME BO_ 939 Status_Shiftlights_CKM: 8 Kombi +BO_ 940 RunOnTimeTerminal30: 2 JBBF + BO_ 944 Status_gear_reverse: 8 FRMFA +BO_ 945 TransmissionData3: 6 DKG + SG_ Checksum_0x3b1 : 0|8@1+ (1,0) [0|19] "" XXX + SG_ Counter_0x3b1 : 8|4@1+ (1,0) [0|14] "" XXX + +BO_ 947 PowerManagmentConsumptionControl: 6 DME + +BO_ 948 PowerBatteryVoltage: 8 DME + SG_ BatteryVoltage : 7|24@0+ (0.001,0) [0|65535] "" XXX + BO_ 949 Status_water_valve: 8 JBBF BO_ 950 Position_window_lifter_FAT: 8 FRMFA @@ -808,6 +816,8 @@ BO_ 956 Position_window_lifter_security_vehicle: 8 XXX BO_ 957 Status_consumer_shutdown: 8 FRMFA +BO_ 958 PowerRunningTime: 2 CAS + BO_ 959 Position_window_rear_window: 8 CTM BO_ 960 Configuration_FAS: 8 SM_FA @@ -856,61 +866,77 @@ BO_ 995 Status_tailgate_CKM: 8 HKL BO_ 996 Configuration_rear_view_camera_CKM: 8 CCC +BO_ 1007 EngineOBD_data: 3 DME +BO_ 1152 NetworkManagment1: 8 XXX +BO_ 1170 NetworkManagment2: 8 XXX -CM_ SG_ 170 ThrottlelPressed "Active when accelerator pedal pressed or cruise control: drives"; -CM_ SG_ 170 AcceleratorPedalPressed "Active only when driver actually presses the pedal"; -CM_ SG_ 170 AcceleratorPedalPercentage "ToDo Factor to be adjusted"; -CM_ SG_ 404 plus1mph_request "Appears when +1mph/kph stalk is depressed"; -CM_ SG_ 404 minus1mph_request "Appears when -1mph/kph stalk is depressed"; -CM_ SG_ 404 Cancel_request_up_stalk "Appears when cancel stalk (up) is depressed"; -CM_ SG_ 404 Cancel_request_up_or_down_stalk "Appears when cancel stalk (up or down) is depressed"; -CM_ SG_ 404 Resume_request "It appears when resume stalk button is depressed"; -CM_ SG_ 404 Counter_404 "Message is sent at higher rate when cruise stalk is pressed"; +BO_ 1175 NetworkManagment3: 8 XXX -CM_ SG_ 168 BrakePressed "Brake when driver presses the brake or hill hold"; -CM_ SG_ 168 EngineTorque "Engine torque without inertia - combustion torque"; -CM_ SG_ 168 EngineTorqueWoInterv "Engine torque without inertia and without shift intervention"; -CM_ SG_ 168 ALIV_TORQ_1_DME "Counter TORQ_1"; +BO_ 1176 NetworkManagment4: 8 XXX -CM_ SG_ 169 ALIV_TORQ_2_DME "Counter TORQ_2"; +BO_ 1193 NetworkManagment5: 8 XXX -CM_ SG_ 182 TORQ_TAR_DSC "torque target DSC"; +BO_ 1246 GWS_ShiftLeverHeartbeat: 8 XXX + SG_ IgnOff : 12|1@0+ (1,0) [0|3] "" XXX -CM_ SG_ 403 CruiseControlSetpointSpeed "Speed target - unit depends on locale"; -CM_ SG_ 186 GearTar "Values corresponds to forward gears. TBD Add enums for park, reverse"; -CM_ SG_ 466 GearAct "TransmissionDataDisplay"; -CM_ SG_ 414 DSC_full_off "0x4 enabling, 0xA enabled. TBD"; +BO_ 1408 ServicesKGM: 8 XXX + +BO_ 1426 ServicesDME: 8 XXX + +BO_ 1432 ServicesDKG: 8 XXX -CM_ SG_ 416 YawRate "Lateral Acceleration"; +BO_ 1449 ServicesDSC: 8 XXX +BO_ 1504 ServicesKOMBI: 8 XXX + +BO_ 1522 ServicesKBM: 8 XXX + +BO_ 1577 Unknown_629: 8 XXX + +CM_ SG_ 168 Counter_0xa8 "Counter TORQ_1"; +CM_ SG_ 168 EngineTorque "Engine torque without inertia - combustion torque"; +CM_ SG_ 168 EngineTorqueWoInterv "Engine torque without inertia and without shift intervention"; +CM_ SG_ 168 BrakePressed "Brake when driver presses the brake or hill hold"; +CM_ SG_ 170 AcceleratorPedalPercentage "ToDo Factor to be adjusted"; +CM_ SG_ 170 ThrottlelActive "Active in cruise control when engine braking"; +CM_ SG_ 170 AcceleratorPedalPressed "Active only when driver actually presses the pedal"; +CM_ SG_ 182 TORQ_TAR_DSC "torque target DSC"; +CM_ SG_ 186 GearTar "Values corresponds to forward gears. TBD Add enums for park, reverse"; +CM_ SG_ 403 CruiseControlSetpointSpeed "Speed target - unit depends on locale"; +CM_ SG_ 404 Counter_0x194 "Message is sent at higher rate when cruise stalk is pressed"; +CM_ SG_ 404 plus1 "Appears when +1mph/kph stalk is depressed"; +CM_ SG_ 404 minus1 "Appears when -1mph/kph stalk is depressed"; +CM_ SG_ 404 cancel "Appears when cancel stalk (up or down) is depressed"; +CM_ SG_ 404 resume "It appears when resume stalk button is depressed"; +CM_ SG_ 404 cancel_lever_up "Appears when cancel stalk (up) is depressed"; +CM_ SG_ 408 ShifterPosition "0001 = N|R, 0010 = R, 0011 = N|D, 0100 = D, 0101 = -1, 0110 = +1, 0111 = ManualMode, 1000 = inBetween,"; +CM_ SG_ 408 param1 "can not be 0x03. Always 0 in 135i."; +CM_ SG_ 408 ParkButtonFirst "0x1 = pressed"; CM_ SG_ 408 ParkButtonSecond "Redundant buton. 0x1 = pressed;"; CM_ SG_ 408 SideButton "0x1 = pressed;"; -CM_ SG_ 408 SportButtonPressed "0x1 = pressed;"; -CM_ SG_ 408 M3_button "M3 POWER (?)"; CM_ SG_ 408 SideButtonXOR11 "Complement value"; -CM_ SG_ 408 param1 "can not be 0x03. Always 0 in 135i."; CM_ SG_ 408 param5 "Always 0 in 135i."; -CM_ SG_ 408 ParkButtonFirst "0x1 = pressed"; -CM_ SG_ 408 ShifterPosition "0001 = N|R, 0010 = R, 0011 = N|D, 0100 = D, 0101 = -1, 0110 = +1, 0111 = ManualMode, 1000 = inBetween,"; - +CM_ SG_ 408 SportButtonPressed "0x1 = pressed;"; +CM_ SG_ 408 M3_button "M3 POWER (?)"; +CM_ SG_ 414 DSC_full_off "0x4 enabling, 0xA enabled. TBD"; +CM_ SG_ 416 LongAcc "Longitudinal acceleration"; +CM_ SG_ 416 LatlAcc "Lateral acceleration"; +CM_ SG_ 466 GearAct "TransmissionDataDisplay"; +CM_ SG_ 466 SportButtonState "Only selected powertrains. Makes throttle, overboost, suspension, steering, shiftpoints more aggressive"; CM_ SG_ 466 ShiftLeverMode "On the dashboard, there are displayed: D1...D7 in Normal. S1...S6 in Sport. M1..M7 in Manual"; - -CM_ SG_ 502 TurnSignalIdle "Turn signal off"; -CM_ SG_ 502 TurnSignalActive "Turn signal on or transitioning"; -CM_ SG_ 502 RightTurn "Indicates right blinker or when steering returning right clears left blinker"; -CM_ SG_ 502 LeftTurn "Indicates left blinker or when steering returning left clears right blinker"; CM_ SG_ 502 HoldActivated "Spikes down if blinker cleared with timeout or turn. Stays off if blinker cleared with stalk"; - -CM_ SG_ 790 setMe_0x3FFF "All ones"; +CM_ SG_ 502 LeftTurn "Indicates left blinker or when steering returning left clears right blinker"; +CM_ SG_ 502 RightTurn "Indicates right blinker or when steering returning right clears left blinker"; +CM_ SG_ 502 TurnSignalActive "Turn signal on or transitioning"; +CM_ SG_ 502 TurnSignalIdle "Turn signal off"; +CM_ SG_ 691 Deceleration "Filtered deceleration. Opposite to AccY signal"; CM_ SG_ 790 DTC_pressed "Traction control off. Message transmitted when pressed. Few presses may be required followed by off."; - -VAL_ 408 ShifterPosition 1 "D" 2 "S" 3 "N" 4 "R" 5 "P" ; - -VAL_ 464 ST_SW_WAUP 3 "signal invalid" 2 "EGS forced switching active" 1 "engine warm" 0 "warming up" ; -VAL_ 464 ST_ENG_RUN 3 "signal invalid" 2 "engine running" 1 "engine starting" 0 "engine off" ; -VAL_ 464 CTR_SLCK 3 "signal invalid" 2 "requirement Shiftlock" 1 "no requirement Shiftlock" 0 "not allowed" ; - -VAL_ 466 ShiftLeverMode 0 "Normal" 1 "Sport" 2 "Manual" ; -VAL_ 466 ShiftLeverPosition 0 "Off" 1 "P" 2 "R" 4 "N" 8 "D" ; +CM_ SG_ 790 setMe_0x3FFF "All ones"; +VAL_ 408 ShifterPosition 1 "D" 2 "S" 3 "N" 4 "R" 5 "P"; +VAL_ 464 ST_ENG_RUN 3 "signal invalid" 2 "engine running" 1 "engine starting" 0 "engine off"; +VAL_ 464 ST_SW_WAUP 3 "signal invalid" 2 "EGS forced switching active" 1 "engine warm" 0 "warming up"; +VAL_ 464 CTR_SLCK 3 "signal invalid" 2 "requirement Shiftlock" 1 "no requirement Shiftlock" 0 "not allowed"; +VAL_ 466 ShiftLeverPosition 0 "Off" 1 "P" 2 "R" 4 "N" 8 "D"; +VAL_ 466 ShiftLeverMode 0 "Normal" 1 "Sport" 2 "Manual"; \ No newline at end of file From 9201fd089c368f0511469ea6b6e3e50c91c1389b Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:16:00 +0100 Subject: [PATCH 049/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index a7233378a1..b0f970a302 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -47,7 +47,7 @@ def update(self, can_parsers): ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 - ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_push"] != 0 + ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 @@ -99,14 +99,14 @@ def update(self, can_parsers): # Read openpilot engagement signal from CAN address 0x100 byte 0 openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - cruise_control_stal_msg = cp_PT.vl["CruiseControl"] + cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 # DCC implies that cruise control is done on F-CAN # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages - cruise_control_stal_msg = cp_F.vl["CruiseControl"] + cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) @@ -155,7 +155,7 @@ def get_can_parsers(CP): ("TurnSignals", 0), ("SteeringButtons", 0), ("WheelSpeeds", 50), # 100 on F-CAN - ("CruiseControl", 5), + ("CruiseControlStalk", 5), ("StatusDSC_KCAN", 50), ("Status_contact_handbrake", 0), ("TerminalStatus", 10), @@ -182,7 +182,7 @@ def get_can_parser(CP): #PT-CAN ("TurnSignals", 0), ("SteeringButtons", 0), ("WheelSpeeds", 50), # 100 on F-CAN - ("CruiseControl", 5), + ("CruiseControlStalk", 5), ("StatusDSC_KCAN", 50), ("Status_contact_handbrake", 0), ("TerminalStatus", 10), @@ -201,7 +201,7 @@ def get_F_can_parser(CP): if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: messages = [ # message, frequency ("SteeringWheelAngle_DSC", 100), - ("CruiseControl", 5), + ("CruiseControlStalk", 5), ] else: messages = [] From e35f697158d6f4bd5659c94ff37d06e99365ad0a Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:18:26 +0100 Subject: [PATCH 050/155] fix --- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index ff8d052747..7836958bc1 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -68,6 +68,9 @@ BO_ 169 Torque2: 8 DME SG_ TORQ_AVL_SPAR_NEG : 40|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX SG_ TORQ_AVL_SPAR_POS : 52|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX +BO_ 256 OpenpilotEngage: 8 XXX + SG_ OpenpilotEnabled : 0|8@1+ (1,0) [0|255] "" XXX + BO_ 170 AccPedal: 8 DME SG_ Checksum_0xaa : 0|8@1- (1,0) [0|65535] "" XXX SG_ Counter_0xaa : 8|4@1+ (1,0) [0|15] "" XXX From 8dfaa715f5348e7e47f2a538b8194eca2ddde9f5 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:20:20 +0100 Subject: [PATCH 051/155] fix --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index e5cf4f33df..24cf76ead7 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -183,8 +183,8 @@ def cruise_cmd(cmd, hold=False): self.cruise_enabled_prev = CC.enabled new_actuators = actuators.as_builder() - new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX - new_actuators.steerOutputCan = self.apply_steer_last + new_actuators.torque = self.apply_steer_last / CarControllerParams.STEER_MAX + new_actuators.torqueOutputCan = self.apply_steer_last new_actuators.speed = self.calc_desired_speed new_actuators.accel = speed_err_req From ccb9401b2b058ed7fc2ad498d4acf7c376d392e1 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:27:19 +0100 Subject: [PATCH 052/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index b0f970a302..1eb3b48986 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -152,7 +152,6 @@ def get_can_parsers(CP): ("AccPedal", 100), ("Speed", 50), ("SteeringWheelAngle", 100), - ("TurnSignals", 0), ("SteeringButtons", 0), ("WheelSpeeds", 50), # 100 on F-CAN ("CruiseControlStalk", 5), @@ -179,7 +178,6 @@ def get_can_parser(CP): #PT-CAN ("AccPedal", 100), ("Speed", 50), ("SteeringWheelAngle", 100), - ("TurnSignals", 0), ("SteeringButtons", 0), ("WheelSpeeds", 50), # 100 on F-CAN ("CruiseControlStalk", 5), From f9884043a9fbe250c52678dd594ee41da4bb5cb5 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:35:47 +0100 Subject: [PATCH 053/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 1eb3b48986..3eb41f9da5 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -47,7 +47,7 @@ def update(self, can_parsers): ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 - ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 + ret.parkingBrake = False # Status_contact_handbrake not available ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 @@ -156,7 +156,6 @@ def get_can_parsers(CP): ("WheelSpeeds", 50), # 100 on F-CAN ("CruiseControlStalk", 5), ("StatusDSC_KCAN", 50), - ("Status_contact_handbrake", 0), ("TerminalStatus", 10), ("OpenpilotEngage", 10), ] @@ -182,7 +181,6 @@ def get_can_parser(CP): #PT-CAN ("WheelSpeeds", 50), # 100 on F-CAN ("CruiseControlStalk", 5), ("StatusDSC_KCAN", 50), - ("Status_contact_handbrake", 0), ("TerminalStatus", 10), ("OpenpilotEngage", 10), ] From 843554fb27cb6053aec2b43b3e25d9dde9b194c4 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:38:27 +0100 Subject: [PATCH 054/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 3eb41f9da5..3b3ddb88ec 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -67,11 +67,11 @@ def update(self, can_parsers): ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - blinker_on = cp_PT.vl["TurnSignals"]['TurnSignalActive'] != 0 and cp_PT.vl["TurnSignals"]['TurnSignalIdle'] == 0 - ret.leftBlinker = blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] !=0 # blinking - ret.rightBlinker = blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] !=0 # blinking - self.right_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] != 0 - self.left_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] != 0 + # TurnSignals not available on bus 0 + ret.leftBlinker = False + ret.rightBlinker = False + self.right_blinker_pressed = False + self.left_blinker_pressed = False self.dtc_mode = cp_PT.vl['StatusDSC_KCAN']['DTC_on'] != 0 # drifty traction control ;) From 04636f9dfc8bb2e037d0762df9644d980c9e8935 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:42:54 +0100 Subject: [PATCH 055/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- panda/board/main.c | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 76e636ac18..7ca6bb8f3f 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -107,7 +107,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.minEnableSpeed = 0. * CV.KPH_TO_MS ret.brand = "bmw" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.bmw)] + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque ret.steerActuatorDelay = 0.4 diff --git a/panda/board/main.c b/panda/board/main.c index 9770f8368f..158fd1cde3 100644 --- a/panda/board/main.c +++ b/panda/board/main.c @@ -253,9 +253,10 @@ static void tick_handler(void) { // clear heartbeat engaged state heartbeat_engaged = false; - if (current_safety_mode != SAFETY_SILENT) { - set_safety_mode(SAFETY_SILENT, 0U); - } + // BMW: Keep panda always active, never go to SILENT mode + // if (current_safety_mode != SAFETY_SILENT) { + // set_safety_mode(SAFETY_SILENT, 0U); + // } if (power_save_status != POWER_SAVE_STATUS_ENABLED) { set_power_save_state(POWER_SAVE_STATUS_ENABLED); From 327a3c8e970d7d474f0b564b38dafa5964e0221c Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:46:43 +0100 Subject: [PATCH 056/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- panda/board/main.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 7ca6bb8f3f..c1a6d21ee2 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -107,7 +107,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.minEnableSpeed = 0. * CV.KPH_TO_MS ret.brand = "bmw" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.noOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque ret.steerActuatorDelay = 0.4 diff --git a/panda/board/main.c b/panda/board/main.c index 158fd1cde3..731adbfa47 100644 --- a/panda/board/main.c +++ b/panda/board/main.c @@ -337,8 +337,8 @@ int main(void) { fan_init(); } - // init to SILENT and can silent - set_safety_mode(SAFETY_SILENT, 0U); + // init to NOOUTPUT (allows CAN output, doesn't fall back to SILENT) + set_safety_mode(SAFETY_NOOUTPUT, 0U); // enable CAN TXs enable_can_transceivers(true); From 13d2adf77fad46d78869920f08fdfb013e92e84b Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:48:45 +0100 Subject: [PATCH 057/155] fix --- selfdrive/car/bmw/values.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py index 9ba58da8bb..d672e7e8c2 100644 --- a/selfdrive/car/bmw/values.py +++ b/selfdrive/car/bmw/values.py @@ -3,7 +3,7 @@ from cereal import car from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.conversions import Conversions as CV +from opendbc.car.common.conversions import Conversions as CV # Steer torque limits class CarControllerParams: #controls running @ 100hz From af2c821cda454bc870a464f03d50994e6f8663fd Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:50:54 +0100 Subject: [PATCH 058/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 4 ++-- selfdrive/car/bmw/carstate.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 3b3ddb88ec..3d2cedb09d 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -92,8 +92,8 @@ def update(self, can_parsers): else: ret.steeringTorque = 0 - ret.espDisabled = cp_PT.vl['StatusDSC_KCAN']['DSC_full_off'] != 0 - ret.cruiseState.available = not ret.espDisabled #cruise not available when DSC fully off + ret.espDisabled = False # Disabled ESP check + ret.cruiseState.available = True # Always available ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch # Read openpilot engagement signal from CAN address 0x100 byte 0 diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py index 433ee72bb5..0bac52a4be 100644 --- a/selfdrive/car/bmw/carstate.py +++ b/selfdrive/car/bmw/carstate.py @@ -89,8 +89,8 @@ def update(self, cp_PT, cp_F, cp_aux): else: ret.steeringTorque = 0 - ret.espDisabled = cp_PT.vl['StatusDSC_KCAN']['DSC_full_off'] != 0 - ret.cruiseState.available = not ret.espDisabled #cruise not available when DSC fully off + ret.espDisabled = False # Disabled ESP check + ret.cruiseState.available = True # Always available ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch # Read openpilot engagement signal from CAN address 0x100 byte 0 From 19c6de13fefb9eda63c0f28bb43f52c92f979c1f Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:56:42 +0100 Subject: [PATCH 059/155] angle, may revert --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 23 +++++++------------ opendbc_repo/opendbc/car/bmw/interface.py | 6 ++--- selfdrive/car/bmw/carcontroller.py | 23 +++++++------------ selfdrive/car/bmw/interface.py | 6 ++--- 4 files changed, 22 insertions(+), 36 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 24cf76ead7..4d28b9d751 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -159,32 +159,25 @@ def cruise_cmd(cmd, hold=False): if self.flags & BmwFlags.STEPPER_SERVO_CAN: steer_error = not CC.latActive and CC.enabled if not steer_error: # don't send steer CAN tx if steering is unavailable - # *** apply steering torque *** + # *** apply steering angle *** if CC.enabled: - new_steer = actuators.steer * CarControllerParams.STEER_MAX - # explicitly clip torque before sending on CAN - apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, - CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, - CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) - elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) - apply_steer = CS.out.steeringTorqueEps + apply_angle = actuators.steeringAngleDeg + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.AngleControl, steer_delta=apply_angle)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff)) else: - apply_steer = 0 can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) - self.apply_steer_last = apply_steer + self.apply_steer_last = apply_angle if CC.enabled else 0 # debug if CC.enabled and (self.frame % 10) == 0: #slow print frame_number = self.frame - print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + print(f"Steering angle req: {actuators.steeringAngleDeg}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") self.cruise_enabled_prev = CC.enabled new_actuators = actuators.as_builder() - new_actuators.torque = self.apply_steer_last / CarControllerParams.STEER_MAX - new_actuators.torqueOutputCan = self.apply_steer_last + new_actuators.steeringAngleDeg = self.apply_steer_last new_actuators.speed = self.calc_desired_speed new_actuators.accel = speed_err_req diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index c1a6d21ee2..7110d8ae61 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -109,11 +109,11 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.brand = "bmw" ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.noOutput)] - ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 + ret.steerControlType = structs.CarParams.SteerControlType.angle + ret.steerActuatorDelay = 0.1 ret.steerLimitTimer = 0.4 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + CarInterfaceBase.configure_angle_tune(candidate, ret.lateralTuning, 1, False) ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py index 77745af43b..2d144885e7 100644 --- a/selfdrive/car/bmw/carcontroller.py +++ b/selfdrive/car/bmw/carcontroller.py @@ -159,32 +159,25 @@ def cruise_cmd(cmd, hold=False): if self.flags & BmwFlags.STEPPER_SERVO_CAN: steer_error = not CC.latActive and CC.enabled if not steer_error: # don't send steer CAN tx if steering is unavailable - # *** apply steering torque *** + # *** apply steering angle *** if CC.enabled: - new_steer = actuators.steer * CarControllerParams.STEER_MAX - # explicitly clip torque before sending on CAN - apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, - CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, - CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) - elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) - apply_steer = CS.out.steeringTorqueEps + apply_angle = actuators.steeringAngleDeg + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.AngleControl, steer_delta=apply_angle)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff)) else: - apply_steer = 0 can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) - self.apply_steer_last = apply_steer + self.apply_steer_last = apply_angle if CC.enabled else 0 # debug if CC.enabled and (self.frame % 10) == 0: #slow print frame_number = self.frame - print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + print(f"Steering angle req: {actuators.steeringAngleDeg}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") self.cruise_enabled_prev = CC.enabled new_actuators = actuators.as_builder() - new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX - new_actuators.steerOutputCan = self.apply_steer_last + new_actuators.steeringAngleDeg = self.apply_steer_last new_actuators.speed = self.calc_desired_speed new_actuators.accel = speed_err_req diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 9abf0382f2..769a4ca168 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -102,11 +102,11 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.carName = "bmw" ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] - ret.steerControlType = car.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 + ret.steerControlType = car.CarParams.SteerControlType.angle + ret.steerActuatorDelay = 0.1 ret.steerLimitTimer = 0.4 - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) + CarInterfaceBase.configure_angle_tune(candidate, ret.lateralTuning, 1, False) ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX From 95769dee7cff91c65ce8959e7fb6ae3988e42586 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 00:58:22 +0100 Subject: [PATCH 060/155] Revert "angle, may revert" This reverts commit 19c6de13fefb9eda63c0f28bb43f52c92f979c1f. --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 23 ++++++++++++------- opendbc_repo/opendbc/car/bmw/interface.py | 6 ++--- selfdrive/car/bmw/carcontroller.py | 23 ++++++++++++------- selfdrive/car/bmw/interface.py | 6 ++--- 4 files changed, 36 insertions(+), 22 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 4d28b9d751..24cf76ead7 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -159,25 +159,32 @@ def cruise_cmd(cmd, hold=False): if self.flags & BmwFlags.STEPPER_SERVO_CAN: steer_error = not CC.latActive and CC.enabled if not steer_error: # don't send steer CAN tx if steering is unavailable - # *** apply steering angle *** + # *** apply steering torque *** if CC.enabled: - apply_angle = actuators.steeringAngleDeg - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.AngleControl, steer_delta=apply_angle)) - elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed: - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff)) + new_steer = actuators.steer * CarControllerParams.STEER_MAX + # explicitly clip torque before sending on CAN + apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, + CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, + CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) + apply_steer = CS.out.steeringTorqueEps else: + apply_steer = 0 can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) - self.apply_steer_last = apply_angle if CC.enabled else 0 + self.apply_steer_last = apply_steer # debug if CC.enabled and (self.frame % 10) == 0: #slow print frame_number = self.frame - print(f"Steering angle req: {actuators.steeringAngleDeg}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") self.cruise_enabled_prev = CC.enabled new_actuators = actuators.as_builder() - new_actuators.steeringAngleDeg = self.apply_steer_last + new_actuators.torque = self.apply_steer_last / CarControllerParams.STEER_MAX + new_actuators.torqueOutputCan = self.apply_steer_last new_actuators.speed = self.calc_desired_speed new_actuators.accel = speed_err_req diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 7110d8ae61..c1a6d21ee2 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -109,11 +109,11 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.brand = "bmw" ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.noOutput)] - ret.steerControlType = structs.CarParams.SteerControlType.angle - ret.steerActuatorDelay = 0.1 + ret.steerControlType = structs.CarParams.SteerControlType.torque + ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 - CarInterfaceBase.configure_angle_tune(candidate, ret.lateralTuning, 1, False) + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py index 2d144885e7..77745af43b 100644 --- a/selfdrive/car/bmw/carcontroller.py +++ b/selfdrive/car/bmw/carcontroller.py @@ -159,25 +159,32 @@ def cruise_cmd(cmd, hold=False): if self.flags & BmwFlags.STEPPER_SERVO_CAN: steer_error = not CC.latActive and CC.enabled if not steer_error: # don't send steer CAN tx if steering is unavailable - # *** apply steering angle *** + # *** apply steering torque *** if CC.enabled: - apply_angle = actuators.steeringAngleDeg - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.AngleControl, steer_delta=apply_angle)) - elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed: - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff)) + new_steer = actuators.steer * CarControllerParams.STEER_MAX + # explicitly clip torque before sending on CAN + apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, + CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, + CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) + elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: + can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) + apply_steer = CS.out.steeringTorqueEps else: + apply_steer = 0 can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) - self.apply_steer_last = apply_angle if CC.enabled else 0 + self.apply_steer_last = apply_steer # debug if CC.enabled and (self.frame % 10) == 0: #slow print frame_number = self.frame - print(f"Steering angle req: {actuators.steeringAngleDeg}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") self.cruise_enabled_prev = CC.enabled new_actuators = actuators.as_builder() - new_actuators.steeringAngleDeg = self.apply_steer_last + new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX + new_actuators.steerOutputCan = self.apply_steer_last new_actuators.speed = self.calc_desired_speed new_actuators.accel = speed_err_req diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 769a4ca168..9abf0382f2 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -102,11 +102,11 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.carName = "bmw" ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] - ret.steerControlType = car.CarParams.SteerControlType.angle - ret.steerActuatorDelay = 0.1 + ret.steerControlType = car.CarParams.SteerControlType.torque + ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 - CarInterfaceBase.configure_angle_tune(candidate, ret.lateralTuning, 1, False) + CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX From 3a6bae412d1cfc1c0b88006ae395f1fcd407f59f Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:02:47 +0100 Subject: [PATCH 061/155] fix --- selfdrive/controls/lib/latcontrol_torque.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_torque.py b/selfdrive/controls/lib/latcontrol_torque.py index a3532669c4..04aa6d4a13 100644 --- a/selfdrive/controls/lib/latcontrol_torque.py +++ b/selfdrive/controls/lib/latcontrol_torque.py @@ -181,9 +181,10 @@ def update(self, active, CS, VM, params, steer_limited_by_controls, desired_curv actual_curvature_rate = -VM.calc_curvature(math.radians(CS.steeringRateDeg), CS.vEgo, 0.0) actual_lateral_jerk = actual_curvature_rate * CS.vEgo ** 2 else: - actual_curvature_llk = CC.angularVelocity[2] / CS.vEgo #llk.angularVelocityCalibrated.value[2] / CS.vEgo - actual_curvature = np.interp(CS.vEgo, [2.0, 5.0], [actual_curvature_vm, actual_curvature_llk]) - curvature_deadzone = 0.0 + if len(CC.angularVelocity) >= 2: + actual_curvature_llk = CC.angularVelocity[2] / CS.vEgo + else: + actual_curvature_llk = 0 desired_lateral_accel = desired_curvature * CS.vEgo ** 2 # desired rate is the desired rate of change in the setpoint, not the absolute desired curvature @@ -194,7 +195,7 @@ def update(self, active, CS, VM, params, steer_limited_by_controls, desired_curv low_speed_factor = np.interp(CS.vEgo, LOW_SPEED_X, LOW_SPEED_Y)**2 setpoint = desired_lateral_accel + low_speed_factor * desired_curvature measurement = actual_lateral_accel + low_speed_factor * actual_curvature - + lateral_jerk_setpoint = 0 lateral_jerk_measurement = 0 lookahead_lateral_jerk = 0 From c244d8219538418e9068cdba23cdef3304eed260 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:09:24 +0100 Subject: [PATCH 062/155] fix --- selfdrive/controls/lib/latcontrol_torque.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_torque.py b/selfdrive/controls/lib/latcontrol_torque.py index 04aa6d4a13..22a66eb68b 100644 --- a/selfdrive/controls/lib/latcontrol_torque.py +++ b/selfdrive/controls/lib/latcontrol_torque.py @@ -181,10 +181,12 @@ def update(self, active, CS, VM, params, steer_limited_by_controls, desired_curv actual_curvature_rate = -VM.calc_curvature(math.radians(CS.steeringRateDeg), CS.vEgo, 0.0) actual_lateral_jerk = actual_curvature_rate * CS.vEgo ** 2 else: - if len(CC.angularVelocity) >= 2: - actual_curvature_llk = CC.angularVelocity[2] / CS.vEgo - else: + if len(CC.angularVelocity) >= 2: actual_curvature_llk = 0 + else: + actual_curvature_llk = CC.angularVelocity[2] / CS.vEgo #llk.angularVelocityCalibrated.value[2] / CS.vEgo + actual_curvature = np.interp(CS.vEgo, [2.0, 5.0], [actual_curvature_vm, actual_curvature_llk]) + curvature_deadzone = 0.0 desired_lateral_accel = desired_curvature * CS.vEgo ** 2 # desired rate is the desired rate of change in the setpoint, not the absolute desired curvature From 6df4163222cfd1e61ca67368f066a5ca34741f83 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:12:00 +0100 Subject: [PATCH 063/155] fix --- selfdrive/controls/lib/latcontrol_torque.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/selfdrive/controls/lib/latcontrol_torque.py b/selfdrive/controls/lib/latcontrol_torque.py index 22a66eb68b..ce1b0a6430 100644 --- a/selfdrive/controls/lib/latcontrol_torque.py +++ b/selfdrive/controls/lib/latcontrol_torque.py @@ -181,10 +181,10 @@ def update(self, active, CS, VM, params, steer_limited_by_controls, desired_curv actual_curvature_rate = -VM.calc_curvature(math.radians(CS.steeringRateDeg), CS.vEgo, 0.0) actual_lateral_jerk = actual_curvature_rate * CS.vEgo ** 2 else: - if len(CC.angularVelocity) >= 2: + if len(CC.angularVelocity) >= 3: + actual_curvature_llk = CC.angularVelocity[2] / CS.vEgo + else: actual_curvature_llk = 0 - else: - actual_curvature_llk = CC.angularVelocity[2] / CS.vEgo #llk.angularVelocityCalibrated.value[2] / CS.vEgo actual_curvature = np.interp(CS.vEgo, [2.0, 5.0], [actual_curvature_vm, actual_curvature_llk]) curvature_deadzone = 0.0 desired_lateral_accel = desired_curvature * CS.vEgo ** 2 From 20b049b27a6a2c2553fa41305d4f5ed81e0fc04c Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:15:59 +0100 Subject: [PATCH 064/155] fix --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 2 +- selfdrive/car/bmw/carcontroller.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 24cf76ead7..d6d60b93d0 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -178,7 +178,7 @@ def cruise_cmd(cmd, hold=False): # debug if CC.enabled and (self.frame % 10) == 0: #slow print frame_number = self.frame - print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + print(f"Steering torque req: {actuators.torque}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") self.cruise_enabled_prev = CC.enabled diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py index 77745af43b..2b049ca37c 100644 --- a/selfdrive/car/bmw/carcontroller.py +++ b/selfdrive/car/bmw/carcontroller.py @@ -178,7 +178,7 @@ def cruise_cmd(cmd, hold=False): # debug if CC.enabled and (self.frame % 10) == 0: #slow print frame_number = self.frame - print(f"Steering req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") + print(f"Steering torque req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") self.cruise_enabled_prev = CC.enabled From 85c27ba303caa265aa2106d0d7e6e23429a9bd6f Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:19:27 +0100 Subject: [PATCH 065/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- selfdrive/car/bmw/interface.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index c1a6d21ee2..9abf8d8c35 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -114,9 +114,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 10.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.23 #live parameters ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 9abf0382f2..ef13db1b4d 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -107,9 +107,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 10.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.23 #live parameters ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False From 151b3fba3ce20c8c21a2e7a98651570b04ac7248 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:24:56 +0100 Subject: [PATCH 066/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 9abf8d8c35..b570bc0187 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -71,8 +71,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea # Handle empty fingerprint (when forcing BMW) if not fingerprint: fingerprint = {CanBus.PT_CAN: {}, CanBus.SERVO_CAN: {}, CanBus.F_CAN: {}} + ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value # Always enable when forcing - if 0x22F in fingerprint.get(CanBus.SERVO_CAN, {}): # Enigne controls speed and reports cruise control status + if 0x22F in fingerprint.get(CanBus.SERVO_CAN, {}): ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value ret.openpilotLongitudinalControl = False From e3b688df04101b9701eabee6ba97064a908f56ce Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:26:45 +0100 Subject: [PATCH 067/155] fix --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index d6d60b93d0..ed74eabd83 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -161,7 +161,7 @@ def cruise_cmd(cmd, hold=False): if not steer_error: # don't send steer CAN tx if steering is unavailable # *** apply steering torque *** if CC.enabled: - new_steer = actuators.steer * CarControllerParams.STEER_MAX + new_steer = actuators.torque * CarControllerParams.STEER_MAX # explicitly clip torque before sending on CAN apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, From 046e3000c7bc554070c9658ec7aef2619b73b7b5 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:30:11 +0100 Subject: [PATCH 068/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index b570bc0187..6f6a37cd97 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -108,7 +108,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.minEnableSpeed = 0. * CV.KPH_TO_MS ret.brand = "bmw" - ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.noOutput)] + ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque ret.steerActuatorDelay = 0.4 From 8502e08b129c1cc4fe523230a6166f0cb688b470 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:32:04 +0100 Subject: [PATCH 069/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- selfdrive/car/bmw/interface.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 6f6a37cd97..ca70d683ee 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 10.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.23 #live parameters ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index ef13db1b4d..9abf0382f2 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -107,9 +107,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 10.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.23 #live parameters ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False From 802b84b3f435d9d16a6d5d6c8de3771f5efc42ef Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:34:15 +0100 Subject: [PATCH 070/155] fix --- selfdrive/selfdrived/selfdrived.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/selfdrive/selfdrived/selfdrived.py b/selfdrive/selfdrived/selfdrived.py index db50f7b940..83f20568d8 100755 --- a/selfdrive/selfdrived/selfdrived.py +++ b/selfdrive/selfdrived/selfdrived.py @@ -286,7 +286,8 @@ def update_events(self, CS): safety_mismatch = False #carrot # safety mismatch allows some time for pandad to set the safety mode and publish it back from panda - if (safety_mismatch and self.sm.frame*DT_CTRL > 10.) or pandaState.safetyRxChecksInvalid or self.mismatch_counter >= 200: + # BMW: Disable safety mismatch check entirely + if False and ((safety_mismatch and self.sm.frame*DT_CTRL > 10.) or pandaState.safetyRxChecksInvalid or self.mismatch_counter >= 200): self.events.add(EventName.controlsMismatch) if log.PandaState.FaultType.relayMalfunction in pandaState.faults: From 015c0d3cfcfa66dc8d78dec47e19fec1e5d383ee Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:36:59 +0100 Subject: [PATCH 071/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 12 ++++++------ selfdrive/car/bmw/interface.py | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index ca70d683ee..3ae0863c05 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,14 +111,14 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 - ret.steerLimitTimer = 0.4 + ret.steerActuatorDelay = 0.6 + ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.23 #live parameters + ret.lateralTuning.torque.kp = 0.8 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.2 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 0.35 ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 9abf0382f2..158adc62c9 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -103,14 +103,14 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] ret.steerControlType = car.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 - ret.steerLimitTimer = 0.4 + ret.steerActuatorDelay = 0.6 + ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.23 #live parameters + ret.lateralTuning.torque.kp = 0.8 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.2 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 0.35 ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 57351464403cad3196e4a574151353185139bdf8 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:38:24 +0100 Subject: [PATCH 072/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- selfdrive/car/bmw/interface.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 3ae0863c05..702d0fbe63 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 0.8 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.2 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.35 ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 158adc62c9..08e264e346 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -109,7 +109,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 0.8 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.2 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.35 ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False From 6e2fab6b5b3833f0cb2ef0827bc6f83f894a2524 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:42:12 +0100 Subject: [PATCH 073/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- selfdrive/car/bmw/interface.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 702d0fbe63..8cb24aa9ff 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,10 +115,10 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.8 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.2 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 0.3 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.05 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.35 + ret.lateralTuning.torque.friction = 0.45 ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py index 08e264e346..8fc7964845 100755 --- a/selfdrive/car/bmw/interface.py +++ b/selfdrive/car/bmw/interface.py @@ -107,10 +107,10 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.8 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.2 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 0.3 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.05 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.35 + ret.lateralTuning.torque.friction = 0.45 ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 39a76efe5d84293aae73b4a379803ed6f706c670 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:47:19 +0100 Subject: [PATCH 074/155] ui --- selfdrive/ui/qt/onroad/hud.cc | 9 +++++++++ selfdrive/ui/qt/onroad/hud.h | 1 + 2 files changed, 10 insertions(+) diff --git a/selfdrive/ui/qt/onroad/hud.cc b/selfdrive/ui/qt/onroad/hud.cc index 4cfa3d0e3c..654bcbc193 100644 --- a/selfdrive/ui/qt/onroad/hud.cc +++ b/selfdrive/ui/qt/onroad/hud.cc @@ -17,12 +17,16 @@ void HudRenderer::updateState(const UIState &s) { is_cruise_set = false; set_speed = SET_SPEED_NA; speed = 0.0; + steering_angle = 0.0; return; } const auto &controls_state = sm["controlsState"].getControlsState(); const auto &car_state = sm["carState"].getCarState(); + // Get steering angle + steering_angle = car_state.getSteeringAngleDeg(); + // Handle older routes where vCruiseCluster is not set set_speed = car_state.getVCruiseCluster() == 0.0 ? controls_state.getVCruiseDEPRECATED() : car_state.getVCruiseCluster(); is_cruise_set = set_speed > 0 && set_speed != SET_SPEED_NA; @@ -47,6 +51,11 @@ void HudRenderer::draw(QPainter &p, const QRect &surface_rect) { bg.setColorAt(1, QColor::fromRgbF(0, 0, 0, 0)); p.fillRect(0, 0, surface_rect.width(), UI_HEADER_HEIGHT, bg); + // Draw steering angle on top left + p.setFont(InterFont(50, QFont::Bold)); + p.setPen(QColor(255, 255, 255, 255)); + QString steerStr = QString("Steer: %1°").arg(QString::number(steering_angle, 'f', 1)); + p.drawText(QRect(20, 20, 400, 80), Qt::AlignLeft | Qt::AlignVCenter, steerStr); if (is_cruise_available) { drawSetSpeed(p, surface_rect); diff --git a/selfdrive/ui/qt/onroad/hud.h b/selfdrive/ui/qt/onroad/hud.h index b2ac379dbe..1dd261c60b 100644 --- a/selfdrive/ui/qt/onroad/hud.h +++ b/selfdrive/ui/qt/onroad/hud.h @@ -18,6 +18,7 @@ class HudRenderer : public QObject { float speed = 0; float set_speed = 0; + float steering_angle = 0; bool is_cruise_set = false; bool is_cruise_available = true; bool is_metric = false; From 688bcdb4af235648e0a537a56f94e74e6b033c08 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:50:09 +0100 Subject: [PATCH 075/155] ui --- selfdrive/ui/carrot.cc | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/selfdrive/ui/carrot.cc b/selfdrive/ui/carrot.cc index 0468adefbe..cf6d689f07 100644 --- a/selfdrive/ui/carrot.cc +++ b/selfdrive/ui/carrot.cc @@ -224,8 +224,8 @@ static inline void fill_rect(NVGcontext* vg, const Rect1& r, const NVGcolor* col if (stroke_width > 0) { nvgStrokeWidth(vg, stroke_width); if (stroke_color) nvgStrokeColor(vg, *stroke_color); - else nvgStrokeColor(vg, nvgRGB(0, 0, 0)); - nvgStroke(vg); + else nvgStrokeColor(vg, nvgRGB(0, 0, 0)); + nvgStroke(vg); } } @@ -817,7 +817,7 @@ class PathEndDrawer : ModelDrawer { ui_draw_line2(s, px, py, 7, &pcolor, nullptr, 3.0f); } if (isLeadDetected()) { - NVGcolor radar_stroke = COLOR_BLUE; + NVGcolor radar_stroke = COLOR_BLUE; if (lead_two_status > 0) { radar_stroke = COLOR_OCHRE; int path_width2 = lead_two_xr - lead_two_xl; @@ -1214,7 +1214,7 @@ class TurnInfoDrawer : ModelDrawer { return -1; } const auto carrot_man = sm["carrotMan"].getCarrotMan(); - + active_carrot = carrot_man.getActiveCarrot(); if (active_carrot > 1) { @@ -1238,7 +1238,7 @@ class TurnInfoDrawer : ModelDrawer { szSdiDescr = QString::fromStdString(carrot_man.getSzSdiDescr()); szPosRoadName = QString::fromStdString(carrot_man.getSzPosRoadName()); szTBTMainText = QString::fromStdString(carrot_man.getSzTBTMainText()); - + } else { //xTurnInfo = -1; @@ -2028,7 +2028,7 @@ class DrawCarrot : public QObject { int max_z = lane_lines[2].getZ().size(); float z_offset = 0.0; foreach(const QString & pair, pairs) { - QStringList xy = pair.split(","); // ","로 x와 y 구분 + QStringList xy = pair.split(","); // ","로 x와 y 구분 if (xy.size() == 3) { //printf("coords = x: %.1f, y: %.1f, d:%.1f\n", xy[0].toFloat(), xy[1].toFloat(), xy[2].toFloat()); float x = xy[0].toFloat(); @@ -2301,7 +2301,17 @@ class DrawCarrot : public QObject { void drawHud(UIState* s) { int show_device_state = params.getInt("ShowDeviceState"); blink_timer = (blink_timer + 1) % 16; - disp_timer = (disp_timer + 1) % 64; + disp_timer = (disp_timer + 1) % 64; + nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); + + // Draw steering angle at top left + const SubMaster& sm = *(s->sm); + auto carState = sm["carState"].getCarState(); + float steering_angle = carState.getSteeringAngleDeg(); + char steer_str[64]; + sprintf(steer_str, "Steer: %.1f°", steering_angle); + nvgTextAlign(s->vg, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); + ui_draw_text(s, 20, 20, steer_str, 50, COLOR_WHITE, BOLD, 2.0f, 0.0f); nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); int x = 140;// 120; @@ -2849,7 +2859,7 @@ void ui_draw(UIState *s, ModelRenderer* model_renderer, int w, int h) { int path_x = drawPathEnd.getPathX(); int path_y = drawPathEnd.getPathY(); drawDesire.draw(s, path_x, path_y - 135); - + drawPlot.draw(s); From 470414fdf21e38bac44190b4432da915d42cebdd Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:53:33 +0100 Subject: [PATCH 076/155] ui --- selfdrive/ui/carrot.cc | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/selfdrive/ui/carrot.cc b/selfdrive/ui/carrot.cc index cf6d689f07..dc756e6907 100644 --- a/selfdrive/ui/carrot.cc +++ b/selfdrive/ui/carrot.cc @@ -2304,16 +2304,6 @@ class DrawCarrot : public QObject { disp_timer = (disp_timer + 1) % 64; nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); - // Draw steering angle at top left - const SubMaster& sm = *(s->sm); - auto carState = sm["carState"].getCarState(); - float steering_angle = carState.getSteeringAngleDeg(); - char steer_str[64]; - sprintf(steer_str, "Steer: %.1f°", steering_angle); - nvgTextAlign(s->vg, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); - ui_draw_text(s, 20, 20, steer_str, 50, COLOR_WHITE, BOLD, 2.0f, 0.0f); - nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); - int x = 140;// 120; int y = s->fb_h - 500;// 300;// 410; @@ -2441,6 +2431,15 @@ class DrawCarrot : public QObject { dy = by + 60; //const SubMaster& sm = *(s->sm); auto carState = sm["carState"].getCarState(); + + // Draw steering angle at top left + float steering_angle = carState.getSteeringAngleDeg(); + char steer_str[64]; + sprintf(steer_str, "Steer: %.1f°", steering_angle); + nvgTextAlign(s->vg, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); + ui_draw_text(s, 20, 20, steer_str, 50, COLOR_WHITE, BOLD, 2.0f, 0.0f); + nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); + if (carState.getGearShifter() == cereal::CarState::GearShifter::UNKNOWN) strcpy(gear_str, "U"); else if (carState.getGearShifter() == cereal::CarState::GearShifter::PARK) strcpy(gear_str, "P"); else if (carState.getGearShifter() == cereal::CarState::GearShifter::DRIVE) { From e00fb44cadf944d17733daefa068c6a9a7b20e01 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 01:58:27 +0100 Subject: [PATCH 077/155] fix --- selfdrive/car/bmw/carstate.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py index 0bac52a4be..8576f2a293 100644 --- a/selfdrive/car/bmw/carstate.py +++ b/selfdrive/car/bmw/carstate.py @@ -96,16 +96,17 @@ def update(self, cp_PT, cp_F, cp_aux): # Read openpilot engagement signal from CAN address 0x100 byte 0 openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] + # Always read steering angle from message 196 (0xC4) on PT-CAN + ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 # DCC implies that cruise control is done on F-CAN # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 From d783b5bcd65cba15e39f7d31c5d966df637c763e Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 02:01:53 +0100 Subject: [PATCH 078/155] fix --- selfdrive/car/bmw/carstate.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py index 8576f2a293..cc4007ae01 100644 --- a/selfdrive/car/bmw/carstate.py +++ b/selfdrive/car/bmw/carstate.py @@ -96,8 +96,10 @@ def update(self, cp_PT, cp_F, cp_aux): # Read openpilot engagement signal from CAN address 0x100 byte 0 openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - # Always read steering angle from message 196 (0xC4) on PT-CAN - ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + # Read steering angle from message 0xC4 (196) bytes 0-1 on PT-CAN + # Bytes 0-1: 16-bit signed little-endian, scale: 0.04395 + steering_raw = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + ret.steeringAngleDeg = steering_raw cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: From a187b15f0bed12f1af944527d172ffab43ac45aa Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 02:03:41 +0100 Subject: [PATCH 079/155] fix --- selfdrive/car/bmw/carstate.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py index cc4007ae01..84fa07d8dc 100644 --- a/selfdrive/car/bmw/carstate.py +++ b/selfdrive/car/bmw/carstate.py @@ -97,9 +97,17 @@ def update(self, cp_PT, cp_F, cp_aux): openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] # Read steering angle from message 0xC4 (196) bytes 0-1 on PT-CAN - # Bytes 0-1: 16-bit signed little-endian, scale: 0.04395 - steering_raw = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] - ret.steeringAngleDeg = steering_raw + # Manually parse bytes 0-1: 16-bit signed little-endian + if 196 in cp_PT.vl_all and len(cp_PT.vl_all[196]["SteeringWheelAngle"]) > 0: + msg_data = cp_PT.vl_all[196]["SteeringWheelAngle"][0] # Get latest message + if len(msg_data) >= 2: + # Parse bytes 0-1 as signed 16-bit little-endian + raw_value = int.from_bytes([msg_data[0], msg_data[1]], byteorder='little', signed=True) + ret.steeringAngleDeg = raw_value * 0.04395 + else: + ret.steeringAngleDeg = 0.0 + else: + ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: From c9cf5830071f5706726b6d577025a8b72834d20c Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 02:05:06 +0100 Subject: [PATCH 080/155] fix --- selfdrive/car/bmw/carstate.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py index 84fa07d8dc..3cddff2b52 100644 --- a/selfdrive/car/bmw/carstate.py +++ b/selfdrive/car/bmw/carstate.py @@ -96,18 +96,17 @@ def update(self, cp_PT, cp_F, cp_aux): # Read openpilot engagement signal from CAN address 0x100 byte 0 openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - # Read steering angle from message 0xC4 (196) bytes 0-1 on PT-CAN - # Manually parse bytes 0-1: 16-bit signed little-endian - if 196 in cp_PT.vl_all and len(cp_PT.vl_all[196]["SteeringWheelAngle"]) > 0: - msg_data = cp_PT.vl_all[196]["SteeringWheelAngle"][0] # Get latest message - if len(msg_data) >= 2: - # Parse bytes 0-1 as signed 16-bit little-endian - raw_value = int.from_bytes([msg_data[0], msg_data[1]], byteorder='little', signed=True) - ret.steeringAngleDeg = raw_value * 0.04395 - else: - ret.steeringAngleDeg = 0.0 - else: - ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + # Debug: Check if message is being received and print raw values + try: + steering_raw = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] + steering_speed = cp_PT.vl['SteeringWheelAngle']['SteeringSpeed'] + ret.steeringAngleDeg = steering_raw + # Print debug info every 50 frames (2x per second at 100Hz) + if self.frame % 50 == 0: + print(f"Steering: raw={steering_raw:.2f}, speed={steering_speed:.2f}, frame={self.frame}") + except Exception as e: + print(f"Error reading steering angle: {e}") + ret.steeringAngleDeg = 0.0 cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: From e814db7b54bbe0305fe17f8437f1f9fcd4954b5a Mon Sep 17 00:00:00 2001 From: devimauz Date: Thu, 29 Jan 2026 02:59:29 +0100 Subject: [PATCH 081/155] fix --- BMW_INTEGRATION.md | 62 ------- opendbc_repo/opendbc/car/bmw/carstate.py | 4 +- selfdrive/car/bmw/__init__.py | 0 selfdrive/car/bmw/bmwcan.py | 75 --------- selfdrive/car/bmw/carcontroller.py | 193 ---------------------- selfdrive/car/bmw/carstate.py | 199 ----------------------- selfdrive/car/bmw/fingerprints.py | 35 ---- selfdrive/car/bmw/interface.py | 173 -------------------- selfdrive/car/bmw/radar_interface.py | 4 - selfdrive/car/bmw/tests/__init__.py | 0 selfdrive/car/bmw/tests/test_bmw.py | 37 ----- selfdrive/car/bmw/values.py | 91 ----------- 12 files changed, 1 insertion(+), 872 deletions(-) delete mode 100644 BMW_INTEGRATION.md delete mode 100644 selfdrive/car/bmw/__init__.py delete mode 100644 selfdrive/car/bmw/bmwcan.py delete mode 100644 selfdrive/car/bmw/carcontroller.py delete mode 100644 selfdrive/car/bmw/carstate.py delete mode 100644 selfdrive/car/bmw/fingerprints.py delete mode 100755 selfdrive/car/bmw/interface.py delete mode 100644 selfdrive/car/bmw/radar_interface.py delete mode 100644 selfdrive/car/bmw/tests/__init__.py delete mode 100644 selfdrive/car/bmw/tests/test_bmw.py delete mode 100644 selfdrive/car/bmw/values.py diff --git a/BMW_INTEGRATION.md b/BMW_INTEGRATION.md deleted file mode 100644 index 738044ab7a..0000000000 --- a/BMW_INTEGRATION.md +++ /dev/null @@ -1,62 +0,0 @@ -# BMW Integration - Force Car Recognition - -## Problem -Openpilot shows "dashcam mode for car unrecognized" because it cannot fingerprint the BMW. - -## Solution - -### Method 1: Force BMW Car Selection (Recommended) - -Run this on your device to force openpilot to recognize your car as BMW: - -```bash -cd /data/openpilot -python3 force_bmw.py -``` - -Then reboot the device. - -### Method 2: Set Parameter Manually - -If the script doesn't work, you can set the parameter manually: - -```bash -# For BMW E90: -python3 -c "from openpilot.common.params import Params; Params().put('CarSelected2', 'BMW_E90')" - -# For BMW E82: -python3 -c "from openpilot.common.params import Params; Params().put('CarSelected2', 'BMW_E82')" -``` - -Then reboot the device. - -### Method 3: Environment Variable - -Set the FINGERPRINT environment variable before starting openpilot: - -```bash -export FINGERPRINT="BMW_E90" # or BMW_E82 -``` - -## Verify - -After setting, verify it's working: - -```bash -python3 -c "from openpilot.common.params import Params; print(Params().get('CarSelected2'))" -``` - -## Changes Made - -1. **Added 0x100 CAN message**: Reads byte 0 from address 0x100 for openpilot engagement -2. **Updated fingerprints**: Added BMW E90 fingerprints including the new 0x100 message -3. **Updated carstate.py**: Reads OpenpilotEnabled signal and uses it to control engagement -4. **Added ocelot_controls.dbc**: DBC file for steering/brake control - -## Files Modified - -- `selfdrive/car/bmw/carstate.py` - Added 0x100 message handling -- `selfdrive/car/bmw/fingerprints.py` - Added BMW_E90 fingerprints with 0x100 -- `opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc` - Added OpenpilotEngage message definition -- `opendbc_repo/opendbc/dbc/ocelot_controls.dbc` - Added from BMW-E8x-E9x repo -- `force_bmw.py` - Helper script to force car selection diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 3d2cedb09d..fe9fac3ea3 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -64,7 +64,7 @@ def update(self, can_parsers): ret.vEgoCluster = ret.vEgo + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS ret.standstill = not cp_PT.vl['Speed']["MovingForward"] and not cp_PT.vl['Speed']["MovingReverse"] ret.yawRate = cp_PT.vl['Speed']["YawRate"] * CV.DEG_TO_RAD - ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] + ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) # TurnSignals not available on bus 0 @@ -101,14 +101,12 @@ def update(self, can_parsers): cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - ret.steeringAngleDeg = cp_F.vl['SteeringWheelAngle_DSC']['SteeringPosition'] # slightly quicker on F-CAN TODO find the factor and put in DBC ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 # DCC implies that cruise control is done on F-CAN # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.steeringAngleDeg = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 diff --git a/selfdrive/car/bmw/__init__.py b/selfdrive/car/bmw/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/selfdrive/car/bmw/bmwcan.py b/selfdrive/car/bmw/bmwcan.py deleted file mode 100644 index 03458e7ee5..0000000000 --- a/selfdrive/car/bmw/bmwcan.py +++ /dev/null @@ -1,75 +0,0 @@ -from enum import Enum -from opendbc.can.packer import CANPacker -from openpilot.selfdrive.car.bmw.values import CanBus - -class SteeringModes(Enum): - Off = 0 - TorqueControl = 1 - AngleControl = 2 - SoftOff = 3 - -class CruiseStalk(Enum): - plus1 = "plus1" - plus5 = "plus5" - minus1 = "minus1" - minus5 = "minus5" - cancel = "cancel" - resume = "resume" - cancel_lever_up = "cancel_lever_up" - -# *** StepperServoCAN *** -def create_steer_command(frame: int, mode: SteeringModes, steer_tq: float = 0, steer_delta: float = 0): - """Creates a CAN message for the actuator STEERING_COMMAND""" - packer = CANPacker('ocelot_controls') - values = { - "COUNTER": frame % 16, - "STEER_MODE": mode.value, - "STEER_ANGLE": steer_delta, - "STEER_TORQUE": steer_tq, - } - msg = packer.make_can_msg("STEERING_COMMAND", 0, values) - addr = msg[0] - dat = msg[1] - values["CHECKSUM"] = calc_checksum_8bit(dat, addr) - - return packer.make_can_msg("STEERING_COMMAND", CanBus.SERVO_CAN, values) - - -def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 - checksum = msg_id - for byte in work_data: #checksum is stripped from the dat - checksum += byte #add up all the bytes - - checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes - checksum &= 0xFF #throw away anything in upper Byte - - checksum = (checksum & 0xF) + (checksum >> 4) #add first and second nibble - checksum &= 0xF #throw away anything in upper nibble - return checksum - -def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf - checksum = msg_id - for byte in work_data: #checksum is stripped from the data - checksum += byte #add up all the bytes - - checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes - checksum &= 0xFF #throw away anything in upper Byte - return checksum - -def calc_checksum_cruise(work_data: bytearray):# 0x194 this checksum is special - initialized with 0 - return calc_checksum_8bit(work_data, 0) - - -def create_accel_command(packer, action: CruiseStalk, bus: int, cnt): - values = { - "setMe_0xFC": 0xFC, - "requests_0xF": 0xF, - "Counter_0x194": cnt % 0xF # counts from 0 to 14 - } - values[action.value] = 1 - - dat = packer.make_can_msg("CruiseControlStalk", bus, values)[1] - values["Checksum_0x194"] = calc_checksum_cruise(dat) - - return packer.make_can_msg("CruiseControlStalk", bus, values) - diff --git a/selfdrive/car/bmw/carcontroller.py b/selfdrive/car/bmw/carcontroller.py deleted file mode 100644 index 2b049ca37c..0000000000 --- a/selfdrive/car/bmw/carcontroller.py +++ /dev/null @@ -1,193 +0,0 @@ -from cereal import car -from openpilot.selfdrive.car import DT_CTRL, apply_dist_to_meas_limits, apply_hysteresis -from openpilot.selfdrive.car.bmw import bmwcan -from openpilot.selfdrive.car.bmw.bmwcan import SteeringModes, CruiseStalk -from openpilot.selfdrive.car.bmw.values import CarControllerParams, CanBus, BmwFlags -from openpilot.selfdrive.car.interfaces import CarControllerBase -from opendbc.can.packer import CANPacker -from openpilot.selfdrive.car.conversions import Conversions as CV - -VisualAlert = car.CarControl.HUDControl.VisualAlert - -# DO NOT CHANGE: Cruise control step size -CC_STEP = 1 # cruise single click jump - always 1 - interpreted as km or miles depending on DSC or DME set units -CRUISE_STALK_IDLE_TICK_STOCK = 0.2 # stock cruise stalk CAN frequency when stalk is not pressed is 5Hz -CRUISE_STALK_HOLD_TICK_STOCK = 0.05 # stock cruise stalk CAN frequency when stalk is pressed is 20Hz - -CRUISE_STALK_SINGLE_TICK = CRUISE_STALK_IDLE_TICK_STOCK # we will send also at 5Hz in between stock messages to emulate single presses -CRUISE_STALK_HOLD_TICK = 0.01 # emulate held stalk, 100Hz makes stock messages be ignored - -CRUISE_SPEED_HYST_GAP = CC_STEP * 0.6 # between >0.5 and <1 to avoid cruise speed toggling. More than 0.5 to add some phase lead -ACCEL_HYST_GAP = 0.05 # m/s^2 - -ACCEL_HOLD_MEDIUM = 0.4 -DECEL_HOLD_MEDIUM = -0.6 -ACCEL_HOLD_STRONG = 1.2 -DECEL_HOLD_STRONG = -1.2 - -class CarController(CarControllerBase): - def __init__(self, dbc_name, CP): - super().__init__(dbc_name, CP) - self.flags = CP.flags - self.min_cruise_speed = CP.minEnableSpeed - self.cruise_units = None - - self.cruise_cancel = False # local cruise control cancel - self.cruise_enabled_prev = False - # redundant safety check with the board - self.apply_steer_last = 0 - self.last_cruise_rx_timestamp = 0 # stock cruise buttons - self.last_cruise_tx_timestamp = 0 # openpilot commands - self.tx_cruise_stalk_counter_last = 0 - self.rx_cruise_stalk_counter_last = -1 - self.cruise_speed_with_hyst = 0 - self.accel_with_hyst = 0 - self.accel_with_hyst_last = 0 - self.calc_desired_speed = 0 - - self.cruise_bus = CanBus.PT_CAN - if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - self.cruise_bus = CanBus.F_CAN - - - self.packer = CANPacker(dbc_name) - - - def update(self, CC, CS, now_nanos): - - actuators = CC.actuators - can_sends = [] - - self.cruise_units = (CV.MS_TO_KPH if CS.is_metric else CV.MS_TO_MPH) - - - # *** hysteresis - trend is your friend *** - # avoids cruise speed toggling and biases next request toward the direction of the previous one - self.cruise_speed_with_hyst = apply_hysteresis(CS.out.cruiseState.speed, self.cruise_speed_with_hyst, CRUISE_SPEED_HYST_GAP / self.cruise_units) - if not CS.out.cruiseState.enabled: - self.cruise_speed_with_hyst = CS.out.vEgoCluster - - # acceleration target hysteresis - avoids entering / leaving hold stalk emulation to frequently, etc - self.accel_with_hyst = apply_hysteresis(actuators.accel, self.accel_with_hyst, ACCEL_HYST_GAP) - - - # *** desired speed model *** - # detect filtered acceleration sign change and reset speed calc on change - accel_zero_cross = self.accel_with_hyst * self.accel_with_hyst_last < 0 - self.accel_with_hyst_last = self.accel_with_hyst - if accel_zero_cross or not CC.enabled or CS.out.gasPressed: - self.calc_desired_speed = CS.out.vEgoCluster - self.calc_desired_speed = self.calc_desired_speed + actuators.accel * DT_CTRL - speed_err_req = (self.calc_desired_speed - self.cruise_speed_with_hyst) * self.cruise_units - speed_err_act = self.calc_desired_speed - CS.out.vEgoCluster - - # detect incoming CruiseControlStalk message by observing counter change (message arrives at only 5Hz when nothing pressed) - if CS.cruise_stalk_counter != self.rx_cruise_stalk_counter_last: - self.tx_cruise_stalk_counter_last = CS.cruise_stalk_counter - # stock message was sent some time in between control samples: - self.last_cruise_rx_timestamp = now_nanos - self.rx_cruise_stalk_counter_last = CS.cruise_stalk_counter - - - - - - # *** send cruise control stalk message at different rates and manage counters *** - def cruise_cmd(cmd, hold=False): - time_since_cruise_sent = (now_nanos - self.last_cruise_tx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency - time_since_cruise_received = (now_nanos - self.last_cruise_rx_timestamp) / 1e9 + DT_CTRL / 10 # add half task sample time to account for latency - # send single cmd with an effective rate slower than held stalk rate - if not hold: - send = time_since_cruise_sent > CRUISE_STALK_SINGLE_TICK \ - and time_since_cruise_received > CRUISE_STALK_HOLD_TICK_STOCK/2 - DT_CTRL \ - and time_since_cruise_received < CRUISE_STALK_IDLE_TICK_STOCK/2 + DT_CTRL - else: - # use faster rate to emulate held stalk. Time first message such that subsequent one will nullify stock message: - send = hold and time_since_cruise_sent > CRUISE_STALK_HOLD_TICK - if send: - tx_cruise_stalk_counter = self.tx_cruise_stalk_counter_last + 1 - # avoid counter clash with a potential upcoming message from stock cruise - if tx_cruise_stalk_counter == CS.cruise_stalk_counter + 1: - # avoid clashing with upcoming stock message - # sometimes upcoming stock message is overshadowed by us, so also avoid clashing with one after that - tx_cruise_stalk_counter = tx_cruise_stalk_counter + 2 - tx_cruise_stalk_counter = tx_cruise_stalk_counter % 0xF - can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) - self.tx_cruise_stalk_counter_last = tx_cruise_stalk_counter - self.last_cruise_tx_timestamp = now_nanos - - # *** cruise control cancel signal *** - # CC.cruiseControl.cancel can't be used because it is always false because pcmCruise = False because we need OP speed tracker - # CC.enabled appears after cruiseState.enabled, so we need to check rising edge to prevent instantaneous cancel after cruise is enabled - # This is because CC.enabled comes from controld and CS.out.cruiseState.enabled is from card threads - if not CC.enabled and self.cruise_enabled_prev: - self.cruise_cancel = True - # if we need to go below cruise speed, request cancel and coast while steering turns off softly - if (CS.out.cruiseState.speedCluster - self.min_cruise_speed) < 0.1 and actuators.accel < -0.1 \ - and speed_err_act < -1 and CS.out.vEgoCluster - self.min_cruise_speed < 0.4: - self.cruise_cancel = True - # keep requesting cancel until the cruise is disabled - if not CS.out.cruiseState.enabled: - self.cruise_cancel = False - - cruise_stalk_human_pressing = CS.cruise_stalk_resume or CS.cruise_stalk_cancel or CS.cruise_stalk_speed != 0 - - if not cruise_stalk_human_pressing and CS.out.cruiseState.enabled: - if self.cruise_cancel: - cruise_cmd(CruiseStalk.cancel) - print("cancel") - elif CC.enabled: - if (self.accel_with_hyst > ACCEL_HOLD_STRONG or (self.accel_with_hyst > ACCEL_HOLD_MEDIUM and speed_err_act > 3.0)) \ - and not speed_err_req < -10*CV.KPH_TO_MS*self.cruise_units: - cruise_cmd(CruiseStalk.plus5, hold=True) # produces up to 1.2 m/s2 - elif (self.accel_with_hyst < DECEL_HOLD_STRONG or (self.accel_with_hyst < DECEL_HOLD_MEDIUM and speed_err_act < -3.0)) \ - and not speed_err_req > 10*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: - cruise_cmd(CruiseStalk.minus5, hold=True) # produces down to -1.4 m/s2 - elif (self.accel_with_hyst > ACCEL_HOLD_MEDIUM or speed_err_act > 2.0) \ - and not speed_err_req < -5*CV.KPH_TO_MS*self.cruise_units: - cruise_cmd(CruiseStalk.plus1, hold=True) # produces up to 0.8 m/s2 - elif (self.accel_with_hyst < DECEL_HOLD_MEDIUM or speed_err_act < -2.0) \ - and not speed_err_req > 5*CV.KPH_TO_MS*self.cruise_units and not CS.out.gasPressed: - cruise_cmd(CruiseStalk.minus1, hold=True) # produces down to -0.8 m/s2 - elif speed_err_req > max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and (self.accel_with_hyst > 0.0 or CS.out.gasPressed): - cruise_cmd(CruiseStalk.plus1) - elif speed_err_req < -max(CC_STEP/2, 0.9*CV.KPH_TO_MS*self.cruise_units) and self.accel_with_hyst < 0.0 and not CS.out.gasPressed: - cruise_cmd(CruiseStalk.minus1) - - - - if self.flags & BmwFlags.STEPPER_SERVO_CAN: - steer_error = not CC.latActive and CC.enabled - if not steer_error: # don't send steer CAN tx if steering is unavailable - # *** apply steering torque *** - if CC.enabled: - new_steer = actuators.steer * CarControllerParams.STEER_MAX - # explicitly clip torque before sending on CAN - apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, - CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, - CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) - elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) - apply_steer = CS.out.steeringTorqueEps - else: - apply_steer = 0 - can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.Off)) - self.apply_steer_last = apply_steer - - # debug - if CC.enabled and (self.frame % 10) == 0: #slow print - frame_number = self.frame - print(f"Steering torque req: {actuators.steer}, Speed: {CS.out.vEgoCluster}, Frame number: {frame_number}") - - self.cruise_enabled_prev = CC.enabled - - new_actuators = actuators.as_builder() - new_actuators.steer = self.apply_steer_last / CarControllerParams.STEER_MAX - new_actuators.steerOutputCan = self.apply_steer_last - - new_actuators.speed = self.calc_desired_speed - new_actuators.accel = speed_err_req - - self.frame += 1 - return new_actuators, can_sends diff --git a/selfdrive/car/bmw/carstate.py b/selfdrive/car/bmw/carstate.py deleted file mode 100644 index 3cddff2b52..0000000000 --- a/selfdrive/car/bmw/carstate.py +++ /dev/null @@ -1,199 +0,0 @@ -from cereal import car -from opendbc.can.can_define import CANDefine -from opendbc.can.parser import CANParser -from openpilot.selfdrive.car.conversions import Conversions as CV -from openpilot.selfdrive.car.interfaces import CarStateBase -from openpilot.selfdrive.car.bmw.values import DBC, CanBus, BmwFlags, CruiseSettings - -class CarState(CarStateBase): - def __init__(self, CP): - super().__init__(CP) - can_define = CANDefine(DBC[CP.carFingerprint]['pt']) - self.shifter_values = can_define.dv["TransmissionDataDisplay"]['ShiftLeverPosition'] - self.steer_angle_delta = 0. - self.gas_kickdown = False - - self.cluster_min_speed = CruiseSettings.CLUSTER_OFFSET - - self.is_metric = None - self.cruise_stalk_speed = 0 - self.cruise_stalk_resume = False - self.cruise_stalk_cancel = False - self.cruise_stalk_cancel_up = False - self.cruise_stalk_cancel_dn = False - self.cruise_stalk_counter = 0 - self.prev_cruise_stalk_speed = 0 - self.prev_cruise_stalk_resume = self.cruise_stalk_resume - self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel - - self.right_blinker_pressed = False - self.left_blinker_pressed = False - self.other_buttons = False - self.prev_gas_pressed = False - self.dtc_mode = False - - def update(self, cp_PT, cp_F, cp_aux): - # set these prev states at the beginning because they are used outside the update() - self.prev_cruise_stalk_speed = self.cruise_stalk_speed - self.prev_cruise_stalk_resume = self.cruise_stalk_resume - self.prev_cruise_stalk_cancel = self.cruise_stalk_cancel - - ret = car.CarState.new_message() - - ret.doorOpen = False # not any([cp.vl["SEATS_DOORS"]['DOOR_OPEN_FL'], cp.vl["SEATS_DOORS"]['DOOR_OPEN_FR'] - ret.seatbeltUnlatched = False # not cp.vl["SEATS_DOORS"]['SEATBELT_DRIVER_UNLATCHED'] - - ret.brakePressed = cp_PT.vl["EngineAndBrake"]['BrakePressed'] != 0 - ret.parkingBrake = cp_PT.vl["Status_contact_handbrake"]["Handbrake_pulled_up"] != 0 - ret.gas = cp_PT.vl['AccPedal']["AcceleratorPedalPercentage"] - # on some cars, when cruise is engaged, half pressed pedal becomes "KickDownPressed", even without pressing kickdown end stop - ret.gasPressed = cp_PT.vl['AccPedal']["AcceleratorPedalPressed"] != 0 or cp_PT.vl['AccPedal']["KickDownPressed"] != 0 - self.gas_kickdown = cp_PT.vl['AccPedal']["KickDownPressed"] != 0 #BMW has kickdown button at the bottom of the pedal - - ret.wheelSpeeds = self.get_wheel_speeds( - cp_PT.vl["WheelSpeeds"]["Wheel_FL"], - cp_PT.vl["WheelSpeeds"]["Wheel_FR"], - cp_PT.vl["WheelSpeeds"]["Wheel_RL"], - cp_PT.vl["WheelSpeeds"]["Wheel_RR"], - ) - ret.vEgoRaw = cp_PT.vl['Speed']["VehicleSpeed"] * CV.KPH_TO_MS - ret.vEgo, ret.aEgo = self.update_speed_kf(ret.vEgoRaw) - ret.vEgoCluster = ret.vEgo + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS - ret.standstill = not cp_PT.vl['Speed']["MovingForward"] and not cp_PT.vl['Speed']["MovingReverse"] - ret.yawRate = cp_PT.vl['Speed']["YawRate"] * CV.DEG_TO_RAD - ret.steeringRateDeg = cp_PT.vl["SteeringWheelAngle"]['SteeringSpeed'] - can_gear = int(cp_PT.vl["TransmissionDataDisplay"]['ShiftLeverPosition']) - ret.gearShifter = self.parse_gear_shifter(self.shifter_values.get(can_gear, None)) - blinker_on = cp_PT.vl["TurnSignals"]['TurnSignalActive'] != 0 and cp_PT.vl["TurnSignals"]['TurnSignalIdle'] == 0 - ret.leftBlinker = blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] !=0 # blinking - ret.rightBlinker = blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] !=0 # blinking - self.right_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['RightTurn'] != 0 - self.left_blinker_pressed = not blinker_on and cp_PT.vl["TurnSignals"]['LeftTurn'] != 0 - - self.dtc_mode = cp_PT.vl['StatusDSC_KCAN']['DTC_on'] != 0 # drifty traction control ;) - - # other buttons help determine driver is paying attention in case the face is not visible - self.other_buttons = \ - cp_PT.vl["SteeringButtons"]['Volume_DOWN'] !=0 or cp_PT.vl["SteeringButtons"]['Volume_UP'] !=0 or \ - cp_PT.vl["SteeringButtons"]['Previous_down'] !=0 or cp_PT.vl["SteeringButtons"]['Next_up'] !=0 or \ - cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or \ - self.prev_gas_pressed and not ret.gasPressed # treat gas pedal tap as a button - button events indicate driver engagement - useful if face not visible - - # E-series doesn't have torque sensor - # use Voice button or gas pedal to fake steeringPressed to confirm a lane change - ret.steeringPressed = cp_PT.vl["SteeringButtons"]['VoiceControl'] !=0 or ret.gasPressed - if ret.steeringPressed and ret.leftBlinker: - ret.steeringTorque = 1 - elif ret.steeringPressed and ret.rightBlinker: - ret.steeringTorque = -1 - else: - ret.steeringTorque = 0 - - ret.espDisabled = False # Disabled ESP check - ret.cruiseState.available = True # Always available - ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch - - # Read openpilot engagement signal from CAN address 0x100 byte 0 - openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - - # Debug: Check if message is being received and print raw values - try: - steering_raw = cp_PT.vl['SteeringWheelAngle']['SteeringPosition'] - steering_speed = cp_PT.vl['SteeringWheelAngle']['SteeringSpeed'] - ret.steeringAngleDeg = steering_raw - # Print debug info every 50 frames (2x per second at 100Hz) - if self.frame % 50 == 0: - print(f"Steering: raw={steering_raw:.2f}, speed={steering_speed:.2f}, frame={self.frame}") - except Exception as e: - print(f"Error reading steering angle: {e}") - ret.steeringAngleDeg = 0.0 - - cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] - if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 - # DCC implies that cruise control is done on F-CAN - # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages - cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] - elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 - - # Override enabled state with external engagement signal from 0x100 byte 0 - if openpilot_engage_signal != 0: - ret.cruiseState.enabled = True - - ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False - if cruise_control_stal_msg['plus1'] != 0: - self.cruise_stalk_speed = 1 - elif cruise_control_stal_msg['minus1'] != 0: - self.cruise_stalk_speed = -1 - elif cruise_control_stal_msg['plus5'] != 0: - self.cruise_stalk_speed = 5 - elif cruise_control_stal_msg['minus5'] != 0: - self.cruise_stalk_speed = -5 - else: - self.cruise_stalk_speed = 0 - self.cruise_stalk_resume = cruise_control_stal_msg['resume'] != 0 - self.cruise_stalk_cancel = cruise_control_stal_msg['cancel'] != 0 - self.cruise_stalk_cancel_up = cruise_control_stal_msg['cancel_lever_up'] != 0 - self.cruise_stalk_counter = cruise_control_stal_msg['Counter_0x194'] - self.cruise_stalk_cancel_dn = self.cruise_stalk_cancel and not self.cruise_stalk_cancel_up - - - ret.genericToggle = self.dtc_mode - - if self.CP.flags & BmwFlags.STEPPER_SERVO_CAN: - ret.steeringTorqueEps = cp_aux.vl['STEERING_STATUS']['STEERING_TORQUE'] - self.steer_angle_delta = cp_aux.vl['STEERING_STATUS']['STEERING_ANGLE'] - ret.steerFaultTemporary = int(cp_aux.vl['STEERING_STATUS']['CONTROL_STATUS']) & 0x4 != 0 - - self.prev_gas_pressed = ret.gasPressed - return ret - - @staticmethod - def get_can_parser(CP): #PT-CAN - messages = [ # message, frequency - ("EngineAndBrake", 100), - ("TransmissionDataDisplay", 5), - ("AccPedal", 100), - ("Speed", 50), - ("SteeringWheelAngle", 100), - ("TurnSignals", 0), - ("SteeringButtons", 0), - ("WheelSpeeds", 50), # 100 on F-CAN - ("CruiseControlStalk", 5), - ("StatusDSC_KCAN", 50), - ("Status_contact_handbrake", 0), - ("TerminalStatus", 10), - ("OpenpilotEngage", 10), - ] - - if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - messages.append(("DynamicCruiseControlStatus", 5)) - if CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - messages.append(("CruiseControlStatus", 5)) - - return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.PT_CAN) # 0: PT-CAN - - @staticmethod # $540 vehicle option could use just PT_CAN, but $544 requires sending and receiving cruise commands on F-CAN. Use F-can. Works for both options - def get_F_can_parser(CP): - if CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - messages = [ # message, frequency - ("SteeringWheelAngle_DSC", 100), - ("CruiseControlStalk", 5), - ] - else: - messages = [] - - return CANParser(DBC[CP.carFingerprint]['pt'], messages, CanBus.F_CAN) - - @staticmethod - def get_actuator_can_parser(CP): - if CP.flags & BmwFlags.STEPPER_SERVO_CAN: - messages = [ # message, frequency - ("STEERING_STATUS", 100), - ] - else: - messages = [] - return CANParser('ocelot_controls', messages, CanBus.SERVO_CAN) diff --git a/selfdrive/car/bmw/fingerprints.py b/selfdrive/car/bmw/fingerprints.py deleted file mode 100644 index c5e34bc8a6..0000000000 --- a/selfdrive/car/bmw/fingerprints.py +++ /dev/null @@ -1,35 +0,0 @@ -from openpilot.selfdrive.car.bmw.values import CAR - -BMW_E8x_E9x_common_per_bus = { - "PT-CAN": { - 256: 8, 512: 8, 128: 5, 168: 8, 169: 8, 170: 8, 172: 8, 180: 8, 181: 8, 182: 5, 184: 8, 185: 8, 186: 8, 189:8, 191: 5, 196: 7, 200: 6, 201: 8, 205: 8, 206: 8, - 209: 8,212: 8, 266: 6, 304: 5, 309: 2, 373: 3, 404: 4, 408: 5, 414: 8, 416: 8, 418: 8, 422: 8, 436: 8, 437: 7, 438: 7, 464: 8, 466: 6, 470: 2, 481: 6, - 502: 2, 514: 2, 538: 3, 550: 5, 570: 4, 578: 5, 594: 2, 678: 2, 690: 8, 691: 5, 704: 3, 719: 2, 722: 3, 753: 3, 758: 2, 760: 8, 762: 5, 764: 7, 784: 7, - 785: 2, 797: 2, 816: 8, 818: 2, 821: 8, 823: 2, 847: 2, 884: 5, 893: 2, 896: 7, 897: 2, 904: 7, 940: 2, 945: 6, 947: 6, 948: 8, 953: 3, 958: 2, 1007: 3, - 1152: 8, 1170: 8, 1175: 8, 1176: 8, 1193: 8, 1246: 8, 1408: 8, 1426: 8, 1432: 8, 1449: 8, 1472: 8, 1494: 8, 1504: 8, 1506: 8, 1517: 8, 1522: 8, 1528: 8 - }, - "STEPPER_SERVO_CAN": { - 559: 8 - } -} - -# Minimal fingerprint with just 0x200 (512 decimal) for car recognition -BMW_MINIMAL_FINGERPRINT = { - 512: 8, # 0x200 - all bytes FF for recognition -} - -BMW_E8x_E9x_common = {k: v for d in BMW_E8x_E9x_common_per_bus.values() for k, v in d.items()} # flatten - -FINGERPRINTS = { - CAR.BMW_E82: [ - BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition - {**BMW_E8x_E9x_common, 899: 4}, - {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 - ], - CAR.BMW_E90: [ - BMW_MINIMAL_FINGERPRINT, # Minimal fingerprint for quick recognition - {**BMW_E8x_E9x_common, 899: 4}, - {**BMW_E8x_E9x_common, 899: 2}, # N52 has shorter msg id 899 - {**BMW_E8x_E9x_common}, # Full fingerprint for testing - ], -} diff --git a/selfdrive/car/bmw/interface.py b/selfdrive/car/bmw/interface.py deleted file mode 100755 index 8fc7964845..0000000000 --- a/selfdrive/car/bmw/interface.py +++ /dev/null @@ -1,173 +0,0 @@ -#!/usr/bin/env python3 -from cereal import car -from openpilot.selfdrive.car import create_button_events -from openpilot.selfdrive.car.helpers import interp -from openpilot.selfdrive.car.conversions import Conversions as CV -from openpilot.selfdrive.car import get_safety_config -from openpilot.selfdrive.car.bmw.values import CanBus, BmwFlags, CarControllerParams -from openpilot.selfdrive.car.interfaces import CarInterfaceBase - -ButtonType = car.CarState.ButtonEvent.Type -EventName = car.CarEvent.EventName -TransmissionType = car.CarParams.TransmissionType -GearShifter = car.CarState.GearShifter - -# certain driver intervention can be distinguished from maximum estimated wheel turning force -def detect_stepper_override(steer_cmd, steer_act, v_ego, centering_coeff, steer_friction_torque): - # when steering released (or lost steps), what angle will it return to - # if we are above that angle, we can detect things - release_angle = steer_friction_torque / (max(v_ego, 1) ** 2 * centering_coeff) - - override = False - margin_value = 1 - if abs(steer_cmd) > release_angle: # for higher angles we steering will not move outward by itself with stepper on - if steer_cmd > 0: - override |= steer_act - steer_cmd > margin_value # driver overrode from right to more right - override |= steer_act < 0 # releaseAngle -3 # driver overrode from right to opposite direction - else: - override |= steer_act - steer_cmd < -margin_value # driver overrode from left to more left - override |= steer_act > 0 # -releaseAngle +3 # driver overrode from left to opposite direction - # else: - # override |= abs(steerAct) > releaseAngle + marginVal # driver overrode to an angle where steering will not go by itself - return override - - -class CarInterface(CarInterfaceBase): - def __init__(self, CP, CarController, CarState): - super().__init__(CP, CarController, CarState) - - self.cp_F = self.CS.get_F_can_parser(CP) - self.can_parsers.append(self.cp_F) - self.cp_aux = self.CS.get_actuator_can_parser(CP) - self.can_parsers.append(self.cp_aux) - - @staticmethod - # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 - def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = interp(desired_angle, angle_bp, hold_torque_v) - return hold_torque # todo add speed component - - @staticmethod - def get_steer_feedforward(desired_angle, v_ego): - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = interp(desired_angle, angle_bp, hold_torque_v) - return hold_torque # todo add speed component - - def get_steer_feedforward_function(self): - if self.CP.flags & BmwFlags.SERVOTRONIC: - return self.get_steer_feedforward_servotronic - else: - return self.get_steer_feedforward - - @staticmethod - def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, docs): - if 0x22F in fingerprint[CanBus.SERVO_CAN]: # Enigne controls speed and reports cruise control status - ret.flags |= BmwFlags.STEPPER_SERVO_CAN.value - - ret.openpilotLongitudinalControl = False - ret.radarUnavailable = True - ret.pcmCruise = False # openpilot handles engagement via cruise stalk - - ret.autoResumeSng = False - if 0x200 in fingerprint[CanBus.PT_CAN]: # Enigne controls speed and reports cruise control status - ret.flags |= BmwFlags.NORMAL_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests - elif 0x193 in fingerprint[CanBus.PT_CAN]: # either DSC or LDM reports cruise control status - if 0x0D5 not in fingerprint[CanBus.PT_CAN]: # DSC itself applies brakes - ret.flags |= BmwFlags.DYNAMIC_CRUISE_CONTROL.value # openpilot will inject cruise stalk +/- requests on F-CAN - else: # LDM sends brake commands - ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_ACC.value # openpilot will switch between OP and LDM - ret.autoResumeSng = True #! hopefully - else: # DSC/DME not sending cruise status and LDM not present - openpilot will be the only requester - ret.flags |= BmwFlags.ACTIVE_CRUISE_CONTROL_NO_LDM.value - ret.autoResumeSng = True #! hopefully - - if 0xb8 in fingerprint[CanBus.PT_CAN] or 0xb5 in fingerprint[CanBus.PT_CAN]: # transmission: engine torque requests - ret.transmissionType = TransmissionType.automatic - else: - ret.transmissionType = TransmissionType.manual - - # Detect all wheel drive BMW E90 XI - if 0xbc in fingerprint[CanBus.PT_CAN]: # XI has a transfer case - ret.steerRatio = 18.5 # XI has slower steering rack - - if ret.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: # DCC imperial has higher threshold - ret.minEnableSpeed = 0. * CV.KPH_TO_MS # if self.CS.is_metric else 20. * CV.MPH_TO_MS - if ret.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.minEnableSpeed = 0. * CV.KPH_TO_MS - - ret.brand = "bmw" - ret.carName = "bmw" - ret.safetyConfigs = [get_safety_config(car.CarParams.SafetyModel.bmw)] - - ret.steerControlType = car.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.6 - ret.steerLimitTimer = 0.6 - - CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.3 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.05 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.45 - ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters - ret.lateralTuning.torque.useSteeringAngle = False - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? - - ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay - ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [.1] - ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [0.] - - ret.centerToFront = ret.wheelbase * 0.44 - - ret.startAccel = 0.0 - print("Controller: " + ret.lateralTuning.which()) - - # has_servotronic = False - # for fw in car_fw: # todo check JBBF firmware for $216A - # if fw.ecu == "eps" and b"," in fw.fwVersion: - # has_servotronic = True - - return ret - - def _update(self, c): - # ******************* do can recv ******************* - ret = self.CS.update(self.cp, self.cp_F, self.cp_aux) - - # events - events = self.create_common_events(ret, pcm_enable=False) - - # *** cruise control units detection *** - # when cruise is enabled the car sets cruiseState.speed = vEgo, so we can detect the ratio - # with resume this wouldn't work, but op will not engage on first resume anyway - if self.CS.is_metric is None and c.enabled and ret.vEgo > 0: - # note, when is_metric is None, cruiseState.speed is already scaled by CV.MPH_TO_MS by default - speed_ratio = ret.cruiseState.speed / ret.vEgo # 1 if imperial, 1.6 if metric - if 0.8 < speed_ratio < 1.2: - self.CS.is_metric = False - elif 0.8 * CV.MPH_TO_KPH < speed_ratio < 1.2 * CV.MPH_TO_KPH: - self.CS.is_metric = True - else: - events.add(EventName.accFaulted) - - - ret.buttonEvents = [ - *create_button_events(self.CS.cruise_stalk_speed > 0, self.CS.prev_cruise_stalk_speed > 0, {1: ButtonType.accelCruise}), - *create_button_events(self.CS.cruise_stalk_speed < 0, self.CS.prev_cruise_stalk_speed < 0, {1: ButtonType.decelCruise}), - *create_button_events(self.CS.cruise_stalk_cancel, self.CS.prev_cruise_stalk_cancel, {1: ButtonType.cancel}), - *create_button_events(self.CS.other_buttons, not self.CS.other_buttons, {1: ButtonType.altButton1}), - *create_button_events(self.CS.cruise_stalk_resume, self.CS.prev_cruise_stalk_resume, { - 1: ButtonType.resumeCruise if not c.enabled else ButtonType.gapAdjustCruise}) # repurpose resume button to adjust driver personality when engaged - ] - - if ret.vEgoCluster < self.CP.minEnableSpeed: - events.add(EventName.belowEngageSpeed) - if c.actuators.accel > 0.2: - events.add(EventName.speedTooLow) # can't restart cruise anymore - - ret.events = events.to_msg() - - return ret diff --git a/selfdrive/car/bmw/radar_interface.py b/selfdrive/car/bmw/radar_interface.py deleted file mode 100644 index e654bd61fd..0000000000 --- a/selfdrive/car/bmw/radar_interface.py +++ /dev/null @@ -1,4 +0,0 @@ -from openpilot.selfdrive.car.interfaces import RadarInterfaceBase - -class RadarInterface(RadarInterfaceBase): - pass diff --git a/selfdrive/car/bmw/tests/__init__.py b/selfdrive/car/bmw/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/selfdrive/car/bmw/tests/test_bmw.py b/selfdrive/car/bmw/tests/test_bmw.py deleted file mode 100644 index dcbe8c239d..0000000000 --- a/selfdrive/car/bmw/tests/test_bmw.py +++ /dev/null @@ -1,37 +0,0 @@ -from parameterized import parameterized - -from openpilot.selfdrive.car.bmw.fingerprints import FINGERPRINTS - -N55_ENGINE_MSG = {899: 4} -N52_ENGINE_MSG = {899: 2} -CRUISE_STATUS_MSG = {0x200: 8} -DYNAMIC_CRUISE_STATUS_MSG = {0x193: 8} -STEPPER_MSG = {0x22F: 8} - - - - -class TestBMWFingerprint: - @parameterized.expand(FINGERPRINTS.items()) - def test_can_fingerprints(self, car_model, fingerprints): - assert len(fingerprints) > 0 - - assert all(len(finger) for finger in fingerprints) - - for car_config in ((STEPPER_MSG, N55_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), - (STEPPER_MSG, N52_ENGINE_MSG, DYNAMIC_CRUISE_STATUS_MSG), - (N55_ENGINE_MSG, CRUISE_STATUS_MSG, DYNAMIC_CRUISE_STATUS_MSG), - ): - failed_fingers = {} - for i, finger in enumerate(fingerprints): - failed_addrs = [] - for msg in (car_config): - for addr, length in msg.items(): - found_length = finger.get(addr) - if found_length != length: - failed_addrs.append((addr, length, found_length)) - if failed_addrs: - failed_fingers[i] = failed_addrs - - if len(failed_fingers) == len(fingerprints): - raise AssertionError(f"All {len(fingerprints)} fingerprints failed: {failed_fingers}") diff --git a/selfdrive/car/bmw/values.py b/selfdrive/car/bmw/values.py deleted file mode 100644 index d672e7e8c2..0000000000 --- a/selfdrive/car/bmw/values.py +++ /dev/null @@ -1,91 +0,0 @@ -from dataclasses import dataclass, field -from enum import Enum, IntFlag -from cereal import car -from opendbc.car import Platforms, CarSpecs, PlatformConfig, DbcDict, STD_CARGO_KG -from opendbc.car.docs_definitions import CarFootnote, CarHarness, CarDocs, CarParts, Column -from opendbc.car.common.conversions import Conversions as CV - -# Steer torque limits -class CarControllerParams: #controls running @ 100hz - STEER_STEP = 1 # 100Hz - STEER_MAX = 12 # Nm - STEER_DELTA_UP = 10 / 100 # 10Nm/s - STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit - STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor - - # STEER_BACKLASH = 1 #deg - def __init__(self, CP): - pass - -class BmwFlags(IntFlag): - # Detected Flags - STEPPER_SERVO_CAN = 2 ** 0 - NORMAL_CRUISE_CONTROL = 2 ** 1 # CC $540 - DYNAMIC_CRUISE_CONTROL = 2 ** 2 # DCC $544 - ACTIVE_CRUISE_CONTROL = 2 ** 3 # ACC $541 - LDM and ACC sensor - #! not supported - ACTIVE_CRUISE_CONTROL_NO_ACC = 2 ** 4 # no ACC module - DSC, DME, KOMBI coded to $541, LDM coded to $544 - ACTIVE_CRUISE_CONTROL_NO_LDM = 2 ** 5 # no LDM/ACC - DSC, DME, KOMBI coded to $541 - SERVOTRONIC = 2 ** 6 # ServoTonic $216A - TODO: needs firmware query - -class CruiseSettings: - CLUSTER_OFFSET = 2 # kph - -class CanBus: - PT_CAN = 0 - SERVO_CAN = 0 # required for steering - F_CAN = 0 # required for DYNAMIC_CRUISE_CONTROL or optional for logging - K_CAN = 0 # not used - only logging - - -class Footnote(Enum): - StepperServoCAN = CarFootnote( - "Requires StepperServoCAN", - Column.FSR_STEERING) - DCC = CarFootnote( - "Minimum speed with CC or DCC is 30 kph", - Column.FSR_LONGITUDINAL) - CC = CarFootnote( - "Normal cruise control should work but was not tested in a while. Code in DCC instead or provide a fix", - Column.PACKAGE) - ACC = CarFootnote( - "ACC is required. Also LDM module to take over when OP is off.", - Column.AUTO_RESUME) - DIY = CarFootnote( - "For CC and DCC only a diy USB-C and a resistor is required or a harness box DIY connector", - Column.HARDWARE) - -@dataclass -class BmwCarDocs(CarDocs): - package: str = "Cruise Control - VO540, VO544, VO541" - footnotes: list[Enum] = field(default_factory=lambda: [Footnote.StepperServoCAN, Footnote.DCC, Footnote.CC, Footnote.ACC, Footnote.DIY]) - - def init_make(self, CP: car.CarParams): - self.car_parts = CarParts.common([CarHarness.custom]) - -@dataclass -class BmwPlatformConfig(PlatformConfig): - dbc_dict: DbcDict = field(default_factory=lambda: {'pt': 'bmw_e9x_e8x'}) - - -class CAR(Platforms): - BMW_E82 = BmwPlatformConfig( - [BmwCarDocs("BMW E82 2004-13")], - CarSpecs(mass=3145. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.66, steerRatio=16.00, tireStiffnessFactor=0.8) - ) - BMW_E90 = BmwPlatformConfig( - [BmwCarDocs("BMW E90 2005-11")], - CarSpecs(mass=3300. * CV.LB_TO_KG + STD_CARGO_KG, wheelbase=2.76, steerRatio=16.00, tireStiffnessFactor=0.8) - ) - - -DBC = CAR.create_dbc_map() - - -if __name__ == '__main__': - cars = [] - for platform in CAR: - for doc in platform.config.car_docs: - cars.append(doc.name) - cars.sort() - for c in cars: - print(c) From 20df5883a9762ef09d737925278a0b460affdd96 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 15:35:43 +0100 Subject: [PATCH 082/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 8cb24aa9ff..bc9c2e146e 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,19 +115,19 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.3 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.05 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.45 - ret.lateralTuning.torque.latAccelFactor = 1.41 #live parameters + ret.lateralTuning.torque.kp = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 0.01 + ret.lateralTuning.torque.latAccelFactor = 2.5 ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] - ret.longitudinalTuning.kpV = [.1] + ret.longitudinalTuning.kpV = [1.0] ret.longitudinalTuning.kiBP = [0.] - ret.longitudinalTuning.kiV = [0.] + ret.longitudinalTuning.kiV = [0.1] ret.centerToFront = ret.wheelbase * 0.44 From b4af4d15240713302bfbb5299d1847b79585884f Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 15:42:42 +0100 Subject: [PATCH 083/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index bc9c2e146e..86e0c2c453 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,14 +111,14 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.6 + ret.steerActuatorDelay = 0.1 ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.01 + ret.lateralTuning.torque.kp = 2.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 2.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 2.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 2.5 ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 93aeaf7db2c1c87fc3b4b187f3b13990ab762ddc Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 15:44:46 +0100 Subject: [PATCH 084/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 86e0c2c453..111a5e1c3e 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -120,8 +120,8 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kf = 2.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 2.5 - ret.lateralTuning.torque.useSteeringAngle = False - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? + ret.lateralTuning.torque.useSteeringAngle = True + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 2.5 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 4eabac1fee861e814460c3abc05db97080861091 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:00:14 +0100 Subject: [PATCH 085/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 111a5e1c3e..13bb40c85d 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -78,7 +78,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.openpilotLongitudinalControl = False ret.radarUnavailable = True - ret.pcmCruise = False # openpilot handles engagement via cruise stalk + ret.pcmCruise = True # openpilot handles engagement via cruise stalk ret.autoResumeSng = False if 0x200 in fingerprint.get(CanBus.PT_CAN, {}): # Enigne controls speed and reports cruise control status @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 2.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 2.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 2.5 ret.lateralTuning.torque.useSteeringAngle = True From c246e15150f5ebd9dca496df9d372cd08519a461 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:01:22 +0100 Subject: [PATCH 086/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 13bb40c85d..120f9c2418 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 1 - ret.lateralTuning.torque.latAccelFactor = 2.5 + ret.lateralTuning.torque.friction = 0.1 + ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 2.5 # backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From a0363dea825c1b90df22f90559bc8a78b4f26582 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:03:44 +0100 Subject: [PATCH 087/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 120f9c2418..949f6567e4 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -50,14 +50,14 @@ def __init__(self, CP): def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = np.interp(desired_angle, angle_bp, hold_torque_v) + hold_torque = np.interp(-desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component @staticmethod def get_steer_feedforward(desired_angle, v_ego): angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = np.interp(desired_angle, angle_bp, hold_torque_v) + hold_torque = np.interp(-desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component def get_steer_feedforward_function(self): From 1605f86a5acba6e20fda00c8980dbc1467a1916a Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:09:27 +0100 Subject: [PATCH 088/155] fix --- opendbc_repo/opendbc/car/bmw/bmwcan.py | 7 ++----- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/bmwcan.py b/opendbc_repo/opendbc/car/bmw/bmwcan.py index 91969c1f8e..ff64a125f5 100644 --- a/opendbc_repo/opendbc/car/bmw/bmwcan.py +++ b/opendbc_repo/opendbc/car/bmw/bmwcan.py @@ -49,8 +49,7 @@ def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf checksum = msg_id - for byte in work_data: #checksum is stripped from the data - checksum += byte #add up all the bytes + #add up all the bytes checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes checksum &= 0xFF #throw away anything in upper Byte @@ -62,9 +61,7 @@ def calc_checksum_cruise(work_data: bytearray):# 0x194 this checksum is special def create_accel_command(packer, action: CruiseStalk, bus: int, cnt): values = { - "setMe_0xFC": 0xFC, - "requests_0xF": 0xF, - "Counter_0x194": cnt % 0xF # counts from 0 to 14 + } values[action.value] = 1 diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 949f6567e4..4ff47f64c6 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -118,9 +118,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.1 + ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 - ret.lateralTuning.torque.useSteeringAngle = True + ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay From 14e3a045a6331b1070f660a7f105e012b4508cc7 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:14:24 +0100 Subject: [PATCH 089/155] fix --- opendbc_repo/opendbc/car/bmw/bmwcan.py | 3 ++- opendbc_repo/opendbc/car/bmw/carcontroller.py | 2 +- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/bmwcan.py b/opendbc_repo/opendbc/car/bmw/bmwcan.py index ff64a125f5..bf0a9f2e9f 100644 --- a/opendbc_repo/opendbc/car/bmw/bmwcan.py +++ b/opendbc_repo/opendbc/car/bmw/bmwcan.py @@ -49,7 +49,8 @@ def calc_checksum_4bit(work_data: bytearray, msg_id: int): # 0x130 def calc_checksum_8bit(work_data: bytearray, msg_id: int): # 0xb8 0x1a0 0x19e 0xaa 0xbf checksum = msg_id - #add up all the bytes + for byte in work_data: #checksum is stripped from the data + checksum += byte #add up all the bytes checksum = (checksum & 0xFF) + (checksum >> 8) #add upper and lower Bytes checksum &= 0xFF #throw away anything in upper Byte diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index ed74eabd83..5283d02efe 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -112,7 +112,7 @@ def cruise_cmd(cmd, hold=False): # sometimes upcoming stock message is overshadowed by us, so also avoid clashing with one after that tx_cruise_stalk_counter = tx_cruise_stalk_counter + 2 tx_cruise_stalk_counter = tx_cruise_stalk_counter % 0xF - can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) + #can_sends.append(bmwcan.create_accel_command(self.packer, cmd, self.cruise_bus, tx_cruise_stalk_counter)) self.tx_cruise_stalk_counter_last = tx_cruise_stalk_counter self.last_cruise_tx_timestamp = now_nanos diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 4ff47f64c6..32134e65b8 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -120,7 +120,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 - ret.lateralTuning.torque.useSteeringAngle = False + ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay From 66258a502b3719537552293df784940dfa18fe94 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:14:34 +0100 Subject: [PATCH 090/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 32134e65b8..4ff47f64c6 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -120,7 +120,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 - ret.lateralTuning.torque.useSteeringAngle = True + ret.lateralTuning.torque.useSteeringAngle = False ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay From c5a4a2b0a4c2f2a05d74995d45cd9ac21ded691f Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:23:31 +0100 Subject: [PATCH 091/155] fix --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 4ff47f64c6..3a9718cbf6 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,12 +115,12 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 - ret.lateralTuning.torque.useSteeringAngle = False + ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay From 91027f2e8cf999146b74f0aaf230a09837106723 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:36:58 +0100 Subject: [PATCH 092/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 7 ------- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index fe9fac3ea3..fbe29a336d 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -96,9 +96,6 @@ def update(self, can_parsers): ret.cruiseState.available = True # Always available ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch - # Read openpilot engagement signal from CAN address 0x100 byte 0 - openpilot_engage_signal = cp_PT.vl["OpenpilotEngage"]["OpenpilotEnabled"] - cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) @@ -110,10 +107,6 @@ def update(self, can_parsers): ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 - # Override enabled state with external engagement signal from 0x100 byte 0 - if openpilot_engage_signal != 0: - ret.cruiseState.enabled = True - ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False if cruise_control_stal_msg['plus1'] != 0: self.cruise_stalk_speed = 1 diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 3a9718cbf6..fa84bf97bd 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -78,7 +78,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.openpilotLongitudinalControl = False ret.radarUnavailable = True - ret.pcmCruise = True # openpilot handles engagement via cruise stalk + ret.pcmCruise = False # openpilot handles engagement via cruise stalk ret.autoResumeSng = False if 0x200 in fingerprint.get(CanBus.PT_CAN, {}): # Enigne controls speed and reports cruise control status From e5dba972f464f67b8ac73e1ef658c7b6520962c6 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:44:58 +0100 Subject: [PATCH 093/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 1 + 1 file changed, 1 insertion(+) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index fbe29a336d..7798a0f395 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -106,6 +106,7 @@ def update(self, can_parsers): elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 + # When pcmCruise = False, don't read enabled state from car - let openpilot manage it via button events ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False if cruise_control_stal_msg['plus1'] != 0: From 818a81b62bc30fe45ed9224ca2014f38c5f6e7d7 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:48:39 +0100 Subject: [PATCH 094/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 7798a0f395..5f6820f14e 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -99,14 +99,13 @@ def update(self, can_parsers): cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseActive'] != 0 + # Don't read enabled state - let openpilot manage engagement via button events # DCC implies that cruise control is done on F-CAN # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - ret.cruiseState.enabled = cp_PT.vl["CruiseControlStatus"]['CruiseCoontrolActiveFlag'] != 0 - # When pcmCruise = False, don't read enabled state from car - let openpilot manage it via button events + # Don't read enabled state - let openpilot manage engagement via button events ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False if cruise_control_stal_msg['plus1'] != 0: From c71cc7640290c3aa190f67f92db4b0ea313e2c3c Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 16:51:20 +0100 Subject: [PATCH 095/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 5f6820f14e..83e9dfefa7 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -97,6 +97,8 @@ def update(self, can_parsers): ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] + + # Read cruise speed from car if available, otherwise use current vehicle speed if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) # Don't read enabled state - let openpilot manage engagement via button events @@ -106,6 +108,9 @@ def update(self, can_parsers): elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) # Don't read enabled state - let openpilot manage engagement via button events + else: + # No cruise control system detected, use current vehicle speed as default + ret.cruiseState.speed = ret.vEgo ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False if cruise_control_stal_msg['plus1'] != 0: From c22d0c842bc35facecce73f49d616f35009a152a Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 20:58:33 +0100 Subject: [PATCH 096/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 16 ++++++---------- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 3 ++- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 83e9dfefa7..9942ccfb95 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -96,21 +96,17 @@ def update(self, can_parsers): ret.cruiseState.available = True # Always available ret.cruiseState.nonAdaptive = False # bmw doesn't have a switch - cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] + # Read openpilot engage status from 0x100 byte 0 + ret.cruiseState.enabled = cp_PT.vl["OpenpilotEngage"]['OpenpilotEngageStatus'] != 0 + + # Read cruise control speed from 0x100 byte 1 + ret.cruiseState.speed = cp_PT.vl["OpenpilotEngage"]['CruiseControlSpeed'] * CV.KPH_TO_MS - # Read cruise speed from car if available, otherwise use current vehicle speed + cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: - ret.cruiseState.speed = cp_PT.vl["DynamicCruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - # Don't read enabled state - let openpilot manage engagement via button events # DCC implies that cruise control is done on F-CAN # If we are sending on F-can, we also need to read on F-can to differentiate our messages from car messages cruise_control_stal_msg = cp_F.vl["CruiseControlStalk"] - elif self.CP.flags & BmwFlags.NORMAL_CRUISE_CONTROL: - ret.cruiseState.speed = cp_PT.vl["CruiseControlStatus"]['CruiseControlSetpointSpeed'] * (CV.KPH_TO_MS if self.is_metric else CV.MPH_TO_MS) - # Don't read enabled state - let openpilot manage engagement via button events - else: - # No cruise control system detected, use current vehicle speed as default - ret.cruiseState.speed = ret.vEgo ret.cruiseState.speedCluster = ret.cruiseState.speed + CruiseSettings.CLUSTER_OFFSET * CV.KPH_TO_MS #For logging. Doesn't do anything with pcmCruise = False if cruise_control_stal_msg['plus1'] != 0: diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index 7836958bc1..3412390d00 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -69,7 +69,8 @@ BO_ 169 Torque2: 8 DME SG_ TORQ_AVL_SPAR_POS : 52|12@1- (0.5,0) [-1023.5|1023.5] "Nm" XXX BO_ 256 OpenpilotEngage: 8 XXX - SG_ OpenpilotEnabled : 0|8@1+ (1,0) [0|255] "" XXX + SG_ OpenpilotEngageStatus : 0|8@1+ (1,0) [0|255] "" XXX + SG_ CruiseControlSpeed : 8|8@1+ (1,0) [0|255] "kph" XXX BO_ 170 AccPedal: 8 DME SG_ Checksum_0xaa : 0|8@1- (1,0) [0|65535] "" XXX From 38a9b6f7193a5b7adcb759d5c1a88ba94e5b4023 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 21:09:54 +0100 Subject: [PATCH 097/155] fix --- opendbc_repo/opendbc/car/bmw/carstate.py | 4 ++-- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carstate.py b/opendbc_repo/opendbc/car/bmw/carstate.py index 9942ccfb95..81fd3f237d 100644 --- a/opendbc_repo/opendbc/car/bmw/carstate.py +++ b/opendbc_repo/opendbc/car/bmw/carstate.py @@ -99,8 +99,8 @@ def update(self, can_parsers): # Read openpilot engage status from 0x100 byte 0 ret.cruiseState.enabled = cp_PT.vl["OpenpilotEngage"]['OpenpilotEngageStatus'] != 0 - # Read cruise control speed from 0x100 byte 1 - ret.cruiseState.speed = cp_PT.vl["OpenpilotEngage"]['CruiseControlSpeed'] * CV.KPH_TO_MS + # Read cruise control set speed from 0x100 byte 1 (u8) + ret.cruiseState.speed = cp_PT.vl["OpenpilotEngage"]['SET_SPEED'] * CV.KPH_TO_MS cruise_control_stal_msg = cp_PT.vl["CruiseControlStalk"] if self.CP.flags & BmwFlags.DYNAMIC_CRUISE_CONTROL: diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index 3412390d00..b7d27876ad 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -70,7 +70,7 @@ BO_ 169 Torque2: 8 DME BO_ 256 OpenpilotEngage: 8 XXX SG_ OpenpilotEngageStatus : 0|8@1+ (1,0) [0|255] "" XXX - SG_ CruiseControlSpeed : 8|8@1+ (1,0) [0|255] "kph" XXX + SG_ SET_SPEED : 8|8@1+ (1,0) [0|255] "kph" XXX BO_ 170 AccPedal: 8 DME SG_ Checksum_0xaa : 0|8@1- (1,0) [0|65535] "" XXX From 9e239679114c9a2b9a2a0088a076c7175a263790 Mon Sep 17 00:00:00 2001 From: akkount Date: Thu, 29 Jan 2026 21:13:06 +0100 Subject: [PATCH 098/155] fix --- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index b7d27876ad..2529f2803c 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -70,7 +70,7 @@ BO_ 169 Torque2: 8 DME BO_ 256 OpenpilotEngage: 8 XXX SG_ OpenpilotEngageStatus : 0|8@1+ (1,0) [0|255] "" XXX - SG_ SET_SPEED : 8|8@1+ (1,0) [0|255] "kph" XXX + SG_ SET_SPEED : 15|8@0+ (1,0) [0|255] "kph" XXX BO_ 170 AccPedal: 8 DME SG_ Checksum_0xaa : 0|8@1- (1,0) [0|65535] "" XXX From 852a6dfe7cce4a7f2d9257d2ef0d8b19077a6dc5 Mon Sep 17 00:00:00 2001 From: devimauz Date: Fri, 30 Jan 2026 00:31:27 +0100 Subject: [PATCH 099/155] ui fix --- selfdrive/ui/carrot.cc | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/selfdrive/ui/carrot.cc b/selfdrive/ui/carrot.cc index dc756e6907..e8654eb73f 100644 --- a/selfdrive/ui/carrot.cc +++ b/selfdrive/ui/carrot.cc @@ -2434,10 +2434,45 @@ class DrawCarrot : public QObject { // Draw steering angle at top left float steering_angle = carState.getSteeringAngleDeg(); + float steering_torque = carState.getSteeringTorqueEps(); + bool steer_fault = carState.getSteerFaultTemporary(); + + nvgTextAlign(s->vg, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); + char steer_str[64]; sprintf(steer_str, "Steer: %.1f°", steering_angle); - nvgTextAlign(s->vg, NVG_ALIGN_LEFT | NVG_ALIGN_TOP); ui_draw_text(s, 20, 20, steer_str, 50, COLOR_WHITE, BOLD, 2.0f, 0.0f); + + // Draw canstepper status + char canstepper_str[64]; + sprintf(canstepper_str, "CanStepper: %s", steer_fault ? "FAULT" : "OK"); + NVGcolor canstepper_color = steer_fault ? COLOR_RED : COLOR_GREEN; + ui_draw_text(s, 20, 75, canstepper_str, 40, canstepper_color, BOLD, 2.0f, 0.0f); + + // Draw stepper motor torque + char torque_str[64]; + sprintf(torque_str, "Motor Torque: %.2f Nm", steering_torque); + ui_draw_text(s, 20, 120, torque_str, 35, COLOR_WHITE, REGULAR, 2.0f, 0.0f); + + // Draw stepper servo status bits + int control_status_bits = (int)carState.getSteerFaultTemporary() ? 1 : 0; + char status_bits_str[128]; + sprintf(status_bits_str, "Status: TorqueCtrl=%d FeedBack=%d SoftOff=%d CloseLoop=%d", + (control_status_bits >> 0) & 1, + (control_status_bits >> 1) & 1, + (control_status_bits >> 2) & 1, + (control_status_bits >> 3) & 1); + ui_draw_text(s, 20, 160, status_bits_str, 30, COLOR_WHITE, REGULAR, 2.0f, 0.0f); + + // Draw commanded steering angle + if (sm.alive("carControl")) { + auto car_control = sm["carControl"].getCarControl(); + float commanded_steer = car_control.getSteeringAngleDeg(); + char cmd_steer_str[64]; + sprintf(cmd_steer_str, "Cmd Steer: %.1f°", commanded_steer); + ui_draw_text(s, 20, 200, cmd_steer_str, 35, COLOR_YELLOW, REGULAR, 2.0f, 0.0f); + } + nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); if (carState.getGearShifter() == cereal::CarState::GearShifter::UNKNOWN) strcpy(gear_str, "U"); From 564810128d3551c346eb7547f5cbec9e531bc53e Mon Sep 17 00:00:00 2001 From: devimauz Date: Fri, 30 Jan 2026 16:27:13 +0100 Subject: [PATCH 100/155] ui fix --- selfdrive/ui/carrot.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/selfdrive/ui/carrot.cc b/selfdrive/ui/carrot.cc index e8654eb73f..8187f27c2d 100644 --- a/selfdrive/ui/carrot.cc +++ b/selfdrive/ui/carrot.cc @@ -2452,7 +2452,7 @@ class DrawCarrot : public QObject { // Draw stepper motor torque char torque_str[64]; sprintf(torque_str, "Motor Torque: %.2f Nm", steering_torque); - ui_draw_text(s, 20, 120, torque_str, 35, COLOR_WHITE, REGULAR, 2.0f, 0.0f); + ui_draw_text(s, 20, 120, torque_str, 35, COLOR_WHITE, BOLD, 2.0f, 0.0f); // Draw stepper servo status bits int control_status_bits = (int)carState.getSteerFaultTemporary() ? 1 : 0; @@ -2462,7 +2462,7 @@ class DrawCarrot : public QObject { (control_status_bits >> 1) & 1, (control_status_bits >> 2) & 1, (control_status_bits >> 3) & 1); - ui_draw_text(s, 20, 160, status_bits_str, 30, COLOR_WHITE, REGULAR, 2.0f, 0.0f); + ui_draw_text(s, 20, 160, status_bits_str, 30, COLOR_WHITE, BOLD, 2.0f, 0.0f); // Draw commanded steering angle if (sm.alive("carControl")) { @@ -2470,7 +2470,7 @@ class DrawCarrot : public QObject { float commanded_steer = car_control.getSteeringAngleDeg(); char cmd_steer_str[64]; sprintf(cmd_steer_str, "Cmd Steer: %.1f°", commanded_steer); - ui_draw_text(s, 20, 200, cmd_steer_str, 35, COLOR_YELLOW, REGULAR, 2.0f, 0.0f); + ui_draw_text(s, 20, 200, cmd_steer_str, 35, COLOR_YELLOW, BOLD, 2.0f, 0.0f); } nvgTextAlign(s->vg, NVG_ALIGN_CENTER | NVG_ALIGN_BOTTOM); From eda189202ad2a3d83dd7f3a4d16cfd9171164085 Mon Sep 17 00:00:00 2001 From: devimauz Date: Fri, 30 Jan 2026 17:19:58 +0100 Subject: [PATCH 101/155] ui fix --- selfdrive/ui/carrot.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/selfdrive/ui/carrot.cc b/selfdrive/ui/carrot.cc index 8187f27c2d..bcf86247c7 100644 --- a/selfdrive/ui/carrot.cc +++ b/selfdrive/ui/carrot.cc @@ -2467,7 +2467,8 @@ class DrawCarrot : public QObject { // Draw commanded steering angle if (sm.alive("carControl")) { auto car_control = sm["carControl"].getCarControl(); - float commanded_steer = car_control.getSteeringAngleDeg(); + auto actuators = car_control.getActuators(); + float commanded_steer = actuators.getSteeringAngleDeg(); char cmd_steer_str[64]; sprintf(cmd_steer_str, "Cmd Steer: %.1f°", commanded_steer); ui_draw_text(s, 20, 200, cmd_steer_str, 35, COLOR_YELLOW, BOLD, 2.0f, 0.0f); From c688d9414e96669ec291967ab1a3669e6f0d19c6 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 18:37:08 +0100 Subject: [PATCH 102/155] pids --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index fa84bf97bd..1a435a0150 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,8 +115,8 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 From b593396e75f3adf57d58c26f25808a47b1bf3569 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 18:42:18 +0100 Subject: [PATCH 103/155] pids --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 1a435a0150..50dece8ee0 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True From 8d8ee9261a9687504354645b02c4dab07f1fece2 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 18:46:09 +0100 Subject: [PATCH 104/155] pids --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 50dece8ee0..2fec2cb290 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -116,8 +116,8 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.001 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True From 542b5a6945577e5147aab796554524516702c985 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 19:35:43 +0100 Subject: [PATCH 105/155] test --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 2fec2cb290..c518ba31e5 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -57,7 +57,7 @@ def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for stee def get_steer_feedforward(desired_angle, v_ego): angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = np.interp(-desired_angle, angle_bp, hold_torque_v) + hold_torque = np.interp(-desired_angle, -angle_bp, -hold_torque_v) return hold_torque # todo add speed component def get_steer_feedforward_function(self): From 6e7dcbb97354893269796ffcc46fcc4969aa542c Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 19:41:22 +0100 Subject: [PATCH 106/155] dd --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index c518ba31e5..e121ef7f62 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -121,7 +121,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 3 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From be08597a183639cfb16914805b97b7922bafe2a6 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 21:31:29 +0100 Subject: [PATCH 107/155] test --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index e121ef7f62..1a8e8dcc7b 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -48,15 +48,15 @@ def __init__(self, CP): @staticmethod # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, 0, 0, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, 0, 0, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm hold_torque = np.interp(-desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component @staticmethod def get_steer_feedforward(desired_angle, v_ego): - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + angle_bp = [-40.0, -6.0, -4.0, -3.0, 0, 0, 0, 0, 0, 0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, 0, 0, 0, 0, 0, 0, 2.25, 2.5, 2.85, 6] # Nm hold_torque = np.interp(-desired_angle, -angle_bp, -hold_torque_v) return hold_torque # todo add speed component @@ -121,7 +121,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 3 # backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From af22d10e969c38a80c3c705855a2ca3def0bd702 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 21:38:46 +0100 Subject: [PATCH 108/155] bad rack --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 1a8e8dcc7b..9057d4e675 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -118,7 +118,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.001 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 1 + ret.lateralTuning.torque.friction = 0 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? From 6494ab76c5917e26ce50c5bef7b704ce572ac2a7 Mon Sep 17 00:00:00 2001 From: akkount Date: Fri, 30 Jan 2026 21:41:46 +0100 Subject: [PATCH 109/155] revetr --- opendbc_repo/opendbc/car/bmw/interface.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 9057d4e675..f6e08e7fbc 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -48,15 +48,15 @@ def __init__(self, CP): @staticmethod # servotronic is a bit more lighter in general and especially at low speeds https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-13#post-117705 def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 - angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, 0, 0, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, 0, 0, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm hold_torque = np.interp(-desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component @staticmethod def get_steer_feedforward(desired_angle, v_ego): - angle_bp = [-40.0, -6.0, -4.0, -3.0, 0, 0, 0, 0, 0, 0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, 0, 0, 0, 0, 0, 0, 2.25, 2.5, 2.85, 6] # Nm + angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm hold_torque = np.interp(-desired_angle, -angle_bp, -hold_torque_v) return hold_torque # todo add speed component @@ -118,10 +118,10 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.001 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0 + ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 3bd0acf1a37c7eaa70dc18b9da0bad233ff16928 Mon Sep 17 00:00:00 2001 From: devimauz Date: Sat, 31 Jan 2026 16:06:41 +0100 Subject: [PATCH 110/155] torque filter --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 5283d02efe..926387ce5e 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -162,10 +162,14 @@ def cruise_cmd(cmd, hold=False): # *** apply steering torque *** if CC.enabled: new_steer = actuators.torque * CarControllerParams.STEER_MAX - # explicitly clip torque before sending on CAN - apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, - CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, - CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) + # Filter out small steering commands under 2 Nm + if abs(new_steer) < 2.0: # 2 Nm threshold + apply_steer = 0 + else: + # explicitly clip torque before sending on CAN + apply_steer = apply_dist_to_meas_limits(new_steer, self.apply_steer_last, CS.out.steeringTorqueEps, + CarControllerParams.STEER_DELTA_UP, CarControllerParams.STEER_DELTA_DOWN, + CarControllerParams.STEER_ERROR_MAX, CarControllerParams.STEER_MAX) can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.TorqueControl, apply_steer)) elif not CS.cruise_stalk_cancel and not CS.out.brakePressed and not CS.out.gasPressed and self.apply_steer_last != 0: can_sends.append(bmwcan.create_steer_command(self.frame, SteeringModes.SoftOff, self.apply_steer_last)) From aed2b377b596431737e77a4f45431f47b189ed69 Mon Sep 17 00:00:00 2001 From: akkount Date: Sat, 31 Jan 2026 19:35:56 +0100 Subject: [PATCH 111/155] filter --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 926387ce5e..26631233ba 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -162,8 +162,8 @@ def cruise_cmd(cmd, hold=False): # *** apply steering torque *** if CC.enabled: new_steer = actuators.torque * CarControllerParams.STEER_MAX - # Filter out small steering commands under 2 Nm - if abs(new_steer) < 2.0: # 2 Nm threshold + # Filter out small steering commands under 0.5 Nm + if abs(new_steer) < 0.5: # 0.5 Nm threshold apply_steer = 0 else: # explicitly clip torque before sending on CAN From 9d58eacf0f4637393afea95a2642540433f9a6ef Mon Sep 17 00:00:00 2001 From: akkount Date: Sat, 31 Jan 2026 19:47:33 +0100 Subject: [PATCH 112/155] ff --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 26631233ba..7f79af3d15 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -163,7 +163,7 @@ def cruise_cmd(cmd, hold=False): if CC.enabled: new_steer = actuators.torque * CarControllerParams.STEER_MAX # Filter out small steering commands under 0.5 Nm - if abs(new_steer) < 0.5: # 0.5 Nm threshold + if abs(new_steer) < 0.98: # 0.5 Nm threshold apply_steer = 0 else: # explicitly clip torque before sending on CAN From 6f0609981aeb795548fd37ab9a65ca2e89165ca2 Mon Sep 17 00:00:00 2001 From: akkount Date: Sat, 31 Jan 2026 19:50:08 +0100 Subject: [PATCH 113/155] ff --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 7f79af3d15..4e8077e6b3 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -163,7 +163,7 @@ def cruise_cmd(cmd, hold=False): if CC.enabled: new_steer = actuators.torque * CarControllerParams.STEER_MAX # Filter out small steering commands under 0.5 Nm - if abs(new_steer) < 0.98: # 0.5 Nm threshold + if abs(new_steer) < 0.30: # 0.5 Nm threshold apply_steer = 0 else: # explicitly clip torque before sending on CAN From f3d303be64fa1fff17bc64ddeacc27e8dd93aa74 Mon Sep 17 00:00:00 2001 From: akkount Date: Sat, 31 Jan 2026 19:54:47 +0100 Subject: [PATCH 114/155] ff --- opendbc_repo/opendbc/car/bmw/carcontroller.py | 2 +- opendbc_repo/opendbc/car/bmw/interface.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/carcontroller.py b/opendbc_repo/opendbc/car/bmw/carcontroller.py index 4e8077e6b3..e39291344d 100644 --- a/opendbc_repo/opendbc/car/bmw/carcontroller.py +++ b/opendbc_repo/opendbc/car/bmw/carcontroller.py @@ -163,7 +163,7 @@ def cruise_cmd(cmd, hold=False): if CC.enabled: new_steer = actuators.torque * CarControllerParams.STEER_MAX # Filter out small steering commands under 0.5 Nm - if abs(new_steer) < 0.30: # 0.5 Nm threshold + if abs(new_steer) < 0.0: # 0.5 Nm threshold apply_steer = 0 else: # explicitly clip torque before sending on CAN diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index f6e08e7fbc..d9634e3bbf 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.6 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.001 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 40# backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 7536040fdd068ab970fc24e94d1cda81b2e18962 Mon Sep 17 00:00:00 2001 From: akkount Date: Sat, 31 Jan 2026 19:58:39 +0100 Subject: [PATCH 115/155] ff --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index d9634e3bbf..4ef02cd723 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -118,7 +118,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 1 + ret.lateralTuning.torque.friction = 0.1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 40# backlash of stepper? From 0191fde48d72f834dde82aa725673b8ff0958089 Mon Sep 17 00:00:00 2001 From: devimauz Date: Sat, 31 Jan 2026 23:20:46 +0100 Subject: [PATCH 116/155] back to original values --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 4ef02cd723..9330ad14f4 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,13 +111,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.1 - ret.steerLimitTimer = 0.6 + ret.steerActuatorDelay = 0.4 + ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.1 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 0.01 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.friction = 0.1 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True From b1cb0f9024cd92883816430d6357beb2dd13dab4 Mon Sep 17 00:00:00 2001 From: akkount Date: Sun, 1 Feb 2026 03:55:30 +0100 Subject: [PATCH 117/155] ff --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 4ef02cd723..41b23b2029 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -56,7 +56,7 @@ def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for stee @staticmethod def get_steer_feedforward(desired_angle, v_ego): angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm + hold_torque_v = [-6, -2.85, -2.5, -2.25, -1, -0.65, -0.1, 0.1, 0.65, 1, 2.25, 2.5, 2.85, 6] # Nm hold_torque = np.interp(-desired_angle, -angle_bp, -hold_torque_v) return hold_torque # todo add speed component From 8a9780be52fc8bc4de4fd6920952108e87031453 Mon Sep 17 00:00:00 2001 From: akkount Date: Sun, 1 Feb 2026 04:07:19 +0100 Subject: [PATCH 118/155] ff --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 07eed39094..3dee33eab6 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -56,7 +56,7 @@ def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for stee @staticmethod def get_steer_feedforward(desired_angle, v_ego): angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, -1, -0.65, -0.1, 0.1, 0.65, 1, 2.25, 2.5, 2.85, 6] # Nm + hold_torque_v = [-6, -2.85, -2.5, -2.25, 0, 0, 0, 0, 0.65, 0, 2.25, 2.5, 2.85, 6] # Nm hold_torque = np.interp(-desired_angle, -angle_bp, -hold_torque_v) return hold_torque # todo add speed component From a6e580be52bf1df04cc3f10f542f6aaa2dfb6a25 Mon Sep 17 00:00:00 2001 From: akkount Date: Sun, 1 Feb 2026 04:13:21 +0100 Subject: [PATCH 119/155] ff --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 3dee33eab6..de5bd54ee9 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -50,14 +50,14 @@ def __init__(self, CP): def get_steer_feedforward_servotronic(desired_angle, v_ego): # accounts for steering rack ratio and/or caster nonlinearities https://www.spoolstreet.com/threads/servotronic-on-a-335i.1400/page-15#post-131271 angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = np.interp(-desired_angle, angle_bp, hold_torque_v) + hold_torque = np.interp(desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component @staticmethod def get_steer_feedforward(desired_angle, v_ego): angle_bp = [-40.0, -6.0, -4.0, -3.0, -2.0, -1.0, -0.5, 0.5, 1.0, 2.0, 3.0, 4.0, 6.0, 40.0] # deg - hold_torque_v = [-6, -2.85, -2.5, -2.25, 0, 0, 0, 0, 0.65, 0, 2.25, 2.5, 2.85, 6] # Nm - hold_torque = np.interp(-desired_angle, -angle_bp, -hold_torque_v) + hold_torque_v = [-6, -2.85, -2.5, -2.25, -2, -1.65, -1, 1, 1.65, 2, 2.25, 2.5, 2.85, 6] # N + hold_torque = np.interp(desired_angle, angle_bp, hold_torque_v) return hold_torque # todo add speed component def get_steer_feedforward_function(self): From 5292f2423e39bc0b3d95935cfdbd1b8a929b6412 Mon Sep 17 00:00:00 2001 From: akkount Date: Sun, 8 Feb 2026 14:24:18 +0100 Subject: [PATCH 120/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index de5bd54ee9..ea10b19ad8 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 1.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.1 + ret.lateralTuning.torque.friction = 0.15 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 40# backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 8874e9063c8204654f60b9e5eaf82a3306c89265 Mon Sep 17 00:00:00 2001 From: akkount Date: Sun, 8 Feb 2026 16:45:30 +0100 Subject: [PATCH 121/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index ea10b19ad8..ed0d7d8a7a 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,14 +111,14 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 + ret.steerActuatorDelay = 0.15 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 3.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 1.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 2.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.friction = 0.15 + ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? From 39349e6aa9348536176ae024a72bd603051f02bc Mon Sep 17 00:00:00 2001 From: akkount Date: Sun, 8 Feb 2026 16:47:53 +0100 Subject: [PATCH 122/155] fan fix --- system/hardware/fan_controller.py | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/system/hardware/fan_controller.py b/system/hardware/fan_controller.py index 7d5bec0509..03d63146a7 100755 --- a/system/hardware/fan_controller.py +++ b/system/hardware/fan_controller.py @@ -18,20 +18,18 @@ def __init__(self) -> None: cloudlog.info("Setting up TICI fan handler") self.last_ignition = False - self.controller = PIDController(k_p=0, k_i=4e-3, k_f=1, rate=(1 / DT_HW)) def update(self, cur_temp: float, ignition: bool) -> int: - self.controller.neg_limit = -(100 if ignition else 30) - self.controller.pos_limit = -(30 if ignition else 0) - - if ignition != self.last_ignition: - self.controller.reset() - - error = 75 - cur_temp - fan_pwr_out = -int(self.controller.update( - error=error, - feedforward=np.interp(cur_temp, [60.0, 100.0], [0, -100]) - )) + if cur_temp < 70.0: + fan_pwr_out = 0 + elif cur_temp > 85.0: + fan_pwr_out = 100 + else: + # 70°C → 20%, 85°C → 80%, target 75°C + fan_pwr_out = int(np.interp(cur_temp, [70.0, 85.0], [20, 80])) + + if not ignition: + fan_pwr_out = min(fan_pwr_out, 30) self.last_ignition = ignition return fan_pwr_out From a0957cf0300e1783714d98c6ef32683343243472 Mon Sep 17 00:00:00 2001 From: devimauz Date: Sun, 8 Feb 2026 23:39:45 +0100 Subject: [PATCH 123/155] remove steermax --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index ed0d7d8a7a..585d526387 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 2.0 + ret.lateralTuning.torque.ki = 0.5 + ret.lateralTuning.torque.kf = 5.0 ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True From 1250094f8f66cd3681eb51294795b118d89f4239 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:28:00 +0100 Subject: [PATCH 124/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 585d526387..5c972d579a 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,7 +115,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.0 + ret.lateralTuning.torque.kp = 0.5 ret.lateralTuning.torque.ki = 0.5 ret.lateralTuning.torque.kf = 5.0 ret.lateralTuning.torque.friction = 0.2 From 182617b3182208923e4498a2af0264d67e22a86d Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:30:28 +0100 Subject: [PATCH 125/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 5c972d579a..00f47fa226 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.5 + ret.lateralTuning.torque.kp = 5 ret.lateralTuning.torque.ki = 0.5 - ret.lateralTuning.torque.kf = 5.0 + ret.lateralTuning.torque.kf = 0.5 ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index 2529f2803c..5114ad812c 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -316,7 +316,7 @@ BO_ 414 StatusDSC_KCAN: 8 DSC SG_ Checksum_0x19e : 56|8@1+ (1,0) [0|255] "" XXX BO_ 416 Speed: 8 DSC - SG_ VehicleSpeed : 0|12@1- (0.103,0) [0|0] "kph" XXX + SG_ VehicleSpeed : 0|12@1- (0.16,0) [0|0] "kph" XXX SG_ MovingForward : 12|1@1+ (1,0) [0|1] "" XXX SG_ MovingReverse : 13|1@1+ (1,0) [0|1] "" XXX SG_ LongAcc : 16|12@1- (0.025,0) [0|0] "m/s^2" XXX From d27723ee8589c93c843e3baa932f3e349f3eaa32 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:35:36 +0100 Subject: [PATCH 126/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 00f47fa226..10ca094710 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 5 + ret.lateralTuning.torque.kp = 3.0 ret.lateralTuning.torque.ki = 0.5 - ret.lateralTuning.torque.kf = 0.5 - ret.lateralTuning.torque.friction = 0.2 + ret.lateralTuning.torque.kf = 0.3 + ret.lateralTuning.torque.friction = 0.4 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 1.0 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From f2236e3a0ad9ddb1656f295e7968e5ce2b48bff8 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:37:08 +0100 Subject: [PATCH 127/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 10ca094710..e0fe9d02b2 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 3.0 - ret.lateralTuning.torque.ki = 0.5 + ret.lateralTuning.torque.kp = 1.5 + ret.lateralTuning.torque.ki = 0.2 ret.lateralTuning.torque.kf = 0.3 - ret.lateralTuning.torque.friction = 0.4 + ret.lateralTuning.torque.friction = 0.6 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 1.0 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 2.0 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 2b0e2972f39f39948b423b103486077aec9dcd42 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:38:28 +0100 Subject: [PATCH 128/155] test --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index e0fe9d02b2..5735d8879c 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -119,7 +119,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.ki = 0.2 ret.lateralTuning.torque.kf = 0.3 ret.lateralTuning.torque.friction = 0.6 - ret.lateralTuning.torque.latAccelFactor = 1.5 + ret.lateralTuning.torque.latAccelFactor = 15 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 2.0 # backlash of stepper From cbb7db52dac2fc706bbce6d4967d6177877f0048 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:41:11 +0100 Subject: [PATCH 129/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 5735d8879c..af4953f31a 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 - ret.lateralTuning.torque.ki = 0.2 - ret.lateralTuning.torque.kf = 0.3 + ret.lateralTuning.torque.kp = 2.5 + ret.lateralTuning.torque.ki = 0.5 + ret.lateralTuning.torque.kf = 1.3 ret.lateralTuning.torque.friction = 0.6 - ret.lateralTuning.torque.latAccelFactor = 15 + ret.lateralTuning.torque.latAccelFactor = 30 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 2.0 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 0eb4c4cc1377b8c6eb6ed3cb53c08a5efa504958 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:43:10 +0100 Subject: [PATCH 130/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index af4953f31a..9479c19070 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,14 +111,14 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.15 + ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.5 - ret.lateralTuning.torque.ki = 0.5 - ret.lateralTuning.torque.kf = 1.3 - ret.lateralTuning.torque.friction = 0.6 + ret.lateralTuning.torque.kp = 1.5 + ret.lateralTuning.torque.ki = 0.4 + ret.lateralTuning.torque.kf = 0.6 + ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 30 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper From dc0356ef8301bdaf8f43c90091ea5293522d18d7 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:45:33 +0100 Subject: [PATCH 131/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 9479c19070..fcec19969b 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 - ret.lateralTuning.torque.ki = 0.4 + ret.lateralTuning.torque.kp = 2.5 + ret.lateralTuning.torque.ki = 0.8 ret.lateralTuning.torque.kf = 0.6 ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 30 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.5 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 1328e6205cf1ba088aeef87af064f44b92fd17dc Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:47:55 +0100 Subject: [PATCH 132/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index fcec19969b..c3ddb8c30d 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -119,7 +119,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.lateralTuning.torque.ki = 0.8 ret.lateralTuning.torque.kf = 0.6 ret.lateralTuning.torque.friction = 0.2 - ret.lateralTuning.torque.latAccelFactor = 30 + ret.lateralTuning.torque.latAccelFactor = 20 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.5 # backlash of stepper From ee0831e80fcd3a14debb69d2c975aae27506b75f Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:50:43 +0100 Subject: [PATCH 133/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index c3ddb8c30d..1844298976 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.5 - ret.lateralTuning.torque.ki = 0.8 - ret.lateralTuning.torque.kf = 0.6 + ret.lateralTuning.torque.kp = 4.0 + ret.lateralTuning.torque.ki = 1.0 + ret.lateralTuning.torque.kf = 1.0 ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 20 ret.lateralTuning.torque.useSteeringAngle = True From cd8648a0f2af1b3f9c2ff4418c6a9278d4255b87 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:54:53 +0100 Subject: [PATCH 134/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 1844298976..ff9e8d1dd0 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,7 +111,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 + ret.steerActuatorDelay = 0.6 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) From fac52bab052446d24891ad22647823f79a1d6d7f Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 01:59:33 +0100 Subject: [PATCH 135/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index ff9e8d1dd0..7b1485735b 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,15 +111,15 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.6 + ret.steerActuatorDelay = 0.8 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 4.0 + ret.lateralTuning.torque.kp = 2.0 ret.lateralTuning.torque.ki = 1.0 ret.lateralTuning.torque.kf = 1.0 ret.lateralTuning.torque.friction = 0.2 - ret.lateralTuning.torque.latAccelFactor = 20 + ret.lateralTuning.torque.latAccelFactor = 4.0 ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.5 # backlash of stepper From a9ba26d7e458cf5a6a54372fbb5d84185953d934 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:01:08 +0100 Subject: [PATCH 136/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 7b1485735b..2364b2d2bd 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,13 +115,13 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.0 - ret.lateralTuning.torque.ki = 1.0 - ret.lateralTuning.torque.kf = 1.0 - ret.lateralTuning.torque.friction = 0.2 - ret.lateralTuning.torque.latAccelFactor = 4.0 + ret.lateralTuning.torque.kp = 1.0 + ret.lateralTuning.torque.ki = 0.5 + ret.lateralTuning.torque.kf = 0.5 + ret.lateralTuning.torque.friction = 0.3 + ret.lateralTuning.torque.latAccelFactor = 2.0 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.5 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 1.0 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From d44121acb066ab441a79cc7ed660928b9a1dc119 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:04:06 +0100 Subject: [PATCH 137/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 2364b2d2bd..2f798aabbe 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,17 +111,17 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.8 + ret.steerActuatorDelay = 1.2 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.0 - ret.lateralTuning.torque.ki = 0.5 - ret.lateralTuning.torque.kf = 0.5 - ret.lateralTuning.torque.friction = 0.3 - ret.lateralTuning.torque.latAccelFactor = 2.0 + ret.lateralTuning.torque.kp = 4.0 + ret.lateralTuning.torque.ki = 1.0 + ret.lateralTuning.torque.kf = 1.0 + ret.lateralTuning.torque.friction = 0.2 + ret.lateralTuning.torque.latAccelFactor = 20 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 1.0 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.5 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 50c9a491c90e6e12fa95d0329c253c737e9e370d Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:06:18 +0100 Subject: [PATCH 138/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- opendbc_repo/opendbc/car/bmw/values.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 2f798aabbe..1844298976 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,7 +111,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 1.2 + ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index cbdc6c57e4..437d7d5ab9 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -9,7 +9,7 @@ class CarControllerParams: #controls running @ 100hz STEER_STEP = 1 # 100Hz STEER_MAX = 12 # Nm - STEER_DELTA_UP = 10 / 100 # 10Nm/s + STEER_DELTA_UP = 1 / 100 # 10Nm/s STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor From c253aff5319d15a20fb8b7f3ca34f9903e9753a8 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:07:50 +0100 Subject: [PATCH 139/155] tune --- opendbc_repo/opendbc/car/bmw/values.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index 437d7d5ab9..f3a755a90a 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -9,7 +9,7 @@ class CarControllerParams: #controls running @ 100hz STEER_STEP = 1 # 100Hz STEER_MAX = 12 # Nm - STEER_DELTA_UP = 1 / 100 # 10Nm/s + STEER_DELTA_UP = 4 / 100 # 10Nm/s STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor From 647b9849eaaad5082bb7d3c71f0a91bd036e4f7c Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:10:37 +0100 Subject: [PATCH 140/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 1844298976..5c972d579a 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,17 +111,17 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 + ret.steerActuatorDelay = 0.15 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 4.0 - ret.lateralTuning.torque.ki = 1.0 - ret.lateralTuning.torque.kf = 1.0 + ret.lateralTuning.torque.kp = 0.5 + ret.lateralTuning.torque.ki = 0.5 + ret.lateralTuning.torque.kf = 5.0 ret.lateralTuning.torque.friction = 0.2 - ret.lateralTuning.torque.latAccelFactor = 20 + ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.5 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From e08f10121b8896710de36a27c8903f33bc19ec13 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:13:24 +0100 Subject: [PATCH 141/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 5c972d579a..91266f8f61 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,17 +111,17 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.15 + ret.steerActuatorDelay = 0.2 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 0.5 - ret.lateralTuning.torque.ki = 0.5 - ret.lateralTuning.torque.kf = 5.0 + ret.lateralTuning.torque.kp = 2.0 + ret.lateralTuning.torque.ki = 1.0 + ret.lateralTuning.torque.kf = 1.0 ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0# backlash of stepper? + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] From 14485de9e01d8c78b118fde4fd79771491e957d5 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:16:13 +0100 Subject: [PATCH 142/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 91266f8f61..899ce7e09c 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 2.0 - ret.lateralTuning.torque.ki = 1.0 - ret.lateralTuning.torque.kf = 1.0 + ret.lateralTuning.torque.kp = 1.0 + ret.lateralTuning.torque.ki = 0.5 + ret.lateralTuning.torque.kf = 0.5 ret.lateralTuning.torque.friction = 0.2 ret.lateralTuning.torque.latAccelFactor = 1.5 ret.lateralTuning.torque.useSteeringAngle = True From 990799bef4539895b52b4a8c45a58c3b89cbf85b Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:20:51 +0100 Subject: [PATCH 143/155] test --- opendbc_repo/opendbc/car/bmw/interface.py | 12 +++++------- opendbc_repo/opendbc/car/bmw/values.py | 4 ++-- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 899ce7e09c..bdfd4ba6e1 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,17 +111,15 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.2 + ret.steerActuatorDelay = 0.4 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.0 - ret.lateralTuning.torque.ki = 0.5 - ret.lateralTuning.torque.kf = 0.5 - ret.lateralTuning.torque.friction = 0.2 - ret.lateralTuning.torque.latAccelFactor = 1.5 + ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True - ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0 # backlash of stepper + ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? ret.longitudinalActuatorDelay = 1.0 #s, Gas/Brake actuator delay ret.longitudinalTuning.kpBP = [0.] diff --git a/opendbc_repo/opendbc/car/bmw/values.py b/opendbc_repo/opendbc/car/bmw/values.py index f3a755a90a..62e68f4fca 100644 --- a/opendbc_repo/opendbc/car/bmw/values.py +++ b/opendbc_repo/opendbc/car/bmw/values.py @@ -9,8 +9,8 @@ class CarControllerParams: #controls running @ 100hz STEER_STEP = 1 # 100Hz STEER_MAX = 12 # Nm - STEER_DELTA_UP = 4 / 100 # 10Nm/s - STEER_DELTA_DOWN = 1000 / 100 # 10Nm/sample - no limit + STEER_DELTA_UP = 0.1 # Nm/10ms + STEER_DELTA_DOWN = 1.0 # Nm/10ms STEER_ERROR_MAX = 999 # max delta between torque cmd and torque motor # STEER_BACKLASH = 1 #deg From 32762751272f8824adcbb39ea78822f24d8a4378 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:25:02 +0100 Subject: [PATCH 144/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index bdfd4ba6e1..5d0ae97cd0 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,8 +115,8 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 0.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 3.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 1.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 6605534f0c681465da31c750fa4e697659674ccf Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:31:14 +0100 Subject: [PATCH 145/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 5d0ae97cd0..b74b186c6b 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 3.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 1.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 1.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 3.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 8bcf910f21f3d7a1f70fdcde8c5d2182d66e5eea Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:32:36 +0100 Subject: [PATCH 146/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index b74b186c6b..f346e5f46e 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 3.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 1.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 10.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From bab9f152c07e17b270cdca026601d270ffcd08b9 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:34:10 +0100 Subject: [PATCH 147/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index f346e5f46e..47a34694b4 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 3.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 1.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 10.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 6.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 88f0e1e7191c4c394fb5dc16a0d93ec7c2d5f350 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:36:46 +0100 Subject: [PATCH 148/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 47a34694b4..adbd8ee45e 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 3.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 1.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 6.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 6.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 2.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From f8f2cf883bd440b213f1dffe5291948ef827cd80 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:39:21 +0100 Subject: [PATCH 149/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index adbd8ee45e..b6dcfc0ba3 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,9 +115,9 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 6.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 2.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 5.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 10.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 4.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 8.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 028f298f5e16efb54cdb03cb55858a7475bc83b2 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:42:43 +0100 Subject: [PATCH 150/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index b6dcfc0ba3..9bcfdfea38 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 10.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 4.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 8.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 4.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 2cf25977c6e78955b99a5b006e09afc61054ab09 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:43:58 +0100 Subject: [PATCH 151/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 9bcfdfea38..eadf17db36 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 10.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 4.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 4.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 1.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 7ea62d790c269270492661b499ac665a25cdd764 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:46:44 +0100 Subject: [PATCH 152/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index eadf17db36..b959789178 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 10.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 4.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 1.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 1.7 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From 9abedbeb9e336b4f81a518f85512d5795b04f252 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:49:47 +0100 Subject: [PATCH 153/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index b959789178..1f2bd8d02c 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -115,8 +115,8 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 10.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 4.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 8.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 3.0 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 1.7 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From f8b892184d74afa93c73d4a218c862726773cbef Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 02:53:58 +0100 Subject: [PATCH 154/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index 1f2bd8d02c..b4488e2b2a 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -111,12 +111,12 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea ret.safetyConfigs = [get_safety_config(structs.CarParams.SafetyModel.allOutput)] ret.steerControlType = structs.CarParams.SteerControlType.torque - ret.steerActuatorDelay = 0.4 + ret.steerActuatorDelay = 0.2 ret.steerLimitTimer = 0.4 CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) - ret.lateralTuning.torque.kp = 8.0 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.ki = 3.0 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kp = 8.5 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.ki = 3.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.kf = 1.7 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? From eb9720623995efa8932a772563c9d73af61f4725 Mon Sep 17 00:00:00 2001 From: akkount Date: Mon, 9 Feb 2026 17:47:49 +0100 Subject: [PATCH 155/155] tune --- opendbc_repo/opendbc/car/bmw/interface.py | 2 +- opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/opendbc_repo/opendbc/car/bmw/interface.py b/opendbc_repo/opendbc/car/bmw/interface.py index b4488e2b2a..004354db6b 100755 --- a/opendbc_repo/opendbc/car/bmw/interface.py +++ b/opendbc_repo/opendbc/car/bmw/interface.py @@ -117,7 +117,7 @@ def _get_params(ret, candidate, fingerprint, car_fw, experimental_long, is_relea CarInterfaceBase.configure_torque_tune(candidate, ret.lateralTuning) ret.lateralTuning.torque.kp = 8.5 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.ki = 3.5 / CarControllerParams.STEER_MAX - ret.lateralTuning.torque.kf = 1.7 / CarControllerParams.STEER_MAX + ret.lateralTuning.torque.kf = 2.1 / CarControllerParams.STEER_MAX ret.lateralTuning.torque.useSteeringAngle = True ret.lateralTuning.torque.steeringAngleDeadzoneDeg = 0.0 # backlash of stepper? diff --git a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc index 5114ad812c..2529f2803c 100644 --- a/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc +++ b/opendbc_repo/opendbc/dbc/bmw_e9x_e8x.dbc @@ -316,7 +316,7 @@ BO_ 414 StatusDSC_KCAN: 8 DSC SG_ Checksum_0x19e : 56|8@1+ (1,0) [0|255] "" XXX BO_ 416 Speed: 8 DSC - SG_ VehicleSpeed : 0|12@1- (0.16,0) [0|0] "kph" XXX + SG_ VehicleSpeed : 0|12@1- (0.103,0) [0|0] "kph" XXX SG_ MovingForward : 12|1@1+ (1,0) [0|1] "" XXX SG_ MovingReverse : 13|1@1+ (1,0) [0|1] "" XXX SG_ LongAcc : 16|12@1- (0.025,0) [0|0] "m/s^2" XXX